-
          [ROSA Cluster (4.12+)](https://mobb.ninja/docs/rosa/sts/)\n\n> **Warning:**\n>
          This is only tested on ROSA, but may work on other Kubernetes and OpenShift
          variants.  It requires\n> an AWS STS-enabled cluster.  Additionally, OpenShift
          versions 4.12+ are recommended, as they \n> enable [CRD CEL validation](https://kubernetes.io/blog/2022/09/23/crd-validation-rules-beta/).
          \ Versions\n> prior to 4.12 provide a lower version of Kubernetes that does
          not enable this feature.  They may \n> work, but provide no input validation
          when submitting custom resources to the cluster.\n\nBefore installing this
          operator, there are a couple secrets that must be created.\n\n1. OCM Token:
          used to authenticate against the OCM API.  The controller will not start
          without\nthis token as it used for all calls into OCM.\n2. AWS Credentials:
          uses an assume role to a role created in the instructions below in order\nto
          access AWS resources.  This is needed for cluster creation.  See \n[Create
          AWS IAM Policies and Roles](#create-aws-iam-policies-and-roles) for more
          details.\n\n> **Note:**\n> Certain custom resources have their own specific
          prerequisites.  Please use `oc explain` \n> or read the docs [here](https://github.com/rh-mobb/ocm-operator/tree/main/docs)
          for more details.\n\n### Create OCM Token Secret\n\n1. Create a namespace
          where you wish to install the operator:\n\n```bash\noc new-project ocm-operator\n```\n\n2.
          Create a secret containing the OCM_TOKEN.  This token can be obtained form
          \nhttps://console.redhat.com/openshift/token and is used by the operator
          to authenticate \nagainst the OCM API.  This token must exist in the same
          namespace that the operator \nis running and be named `ocm-token`.  It also
          expects the key to be called `OCM_TOKEN` \nas the operator is expecting
          this value as an environment variable.\n\n```bash\noc create secret generic
          ocm-token \\\n  --namespace=ocm-operator \\\n  --from-literal=OCM_TOKEN=${MY_OCM_TOKEN}\n```\n\n###
          Create AWS IAM Policies and Roles\n\nThe operator will need to elevate privileges
          in order to perform things like \ncreating the operator-roles for the clusters.
          \ Because of this, the operator \nmust have a specific role created to allow
          it these permissions.\n\n**NOTE:** please understand what you are doing
          if you deviate from the known good \npolicies.  If errors or more stringent
          security lockdowns are found, please submit a PR \nso that we can get this
          fixed.\n\n1. Set `ACCOUNT_ID` environment variable to define your AWS account
          ID:\n\n```bash\nexport ACCOUNT_ID=111111111111\n```\n\n2. Create the permissions
          boundary.  Because the operator needs to create policies and \nroles, the
          boundary ensures that the operator is not allowed to create additional\npermissions
          outside of the defined boundary.  The sample permission set is located \nat
          `test/aws/boundary.json` in this repository:\n\n```bash\nboundary=$(curl
          -s \"https://raw.githubusercontent.com/rh-mobb/ocm-operator/main/test/aws/boundary.json\")\naws
          iam create-policy \\\n  --policy-name \"OCMOperatorBoundary\" \\\n  --policy-document
          \"$boundary\"\n```\n\n3. Create the policy.  This policy sets what the operator
          is allowed to do.  For any \n`iam` permission, the boundary created above
          is used.  The sample permission set is \nlocated at `test/aws/iam_policy.json`
          in this repository:\n\n```bash\npolicy=$(curl -s \"https://raw.githubusercontent.com/rh-mobb/ocm-operator/main/test/aws/iam_policy.json\")\naws
          iam create-policy \\\n  --policy-name \"OCMOperator\" \\\n  --policy-document
          \"$policy\"\n```\n\n4. Create the role using a trust policy and attach the
          previously created role.  The trust \npolicy is located at `test/aws/trust_policy.json`
          in this repository.  Please note that \nthe trust policy requires an OIDC
          configuration.  The OIDC configuration refers to \n**where the operator
          is running, NOT what it is provisioning**:\n\n```bash\ntrust_policy=$(curl
          -s \"https://raw.githubusercontent.com/rh-mobb/ocm-operator/main/test/aws/trust_policy.json\")\naws
          iam create-role \\\n    --role-name OCMOperator \\\n    --assume-role-policy-document
          \"$trust_policy\"\naws iam attach-role-policy \\\n    --role-name OCMOperator
          \\\n    --policy-arn arn:aws:iam::$ACCOUNT_ID:policy/OCMOperator\n```\n\n5.
          Finally, create the secret containing the assume role credentials.  The
          previous steps allow \nthe operator to assume the role you created in the
          previous step with the permissions created \nvia the previous policies.\n\n```bash\ncat
          <<EOF > /tmp/credentials\n[default]\nrole_arn = arn:aws:iam::$ACCOUNT_ID:role/OCMOperator\nweb_identity_token_file
          = /var/run/secrets/openshift/serviceaccount/token\nEOF\n\noc create secret
          generic aws-credentials \\\n  --namespace=ocm-operator \\\n  --from-file=credentials=/tmp/credentials\n```\n\n##
          Install the Operator\n\n```bash\ncat <<EOF | oc apply -f -\napiVersion:
          operators.coreos.com/v1alpha1\nkind: Subscription\nmetadata:\n  name: ocm-operator\n
          \ namespace: ocm-operator\nspec:\n  channel: v0.1\n  installPlanApproval:
          Automatic\n  name: ocm-operator\n  source: community-operators\n  sourceNamespace:
          ocm-operator\n  startingCSV: ocm-operator.v0.1.0\nEOF\n```\n\n## Provision
          Resources\n\nOnce the operator is available and running, you can provision
          any of the \nresources that it manages.  Also note that documentation is
          always available \nonce the operator is installed as well by using the `oc
          explain` command.  For \nexample, `oc explain rosacluster.spec.clusterName`
          will give you detailed documentation \nabout what the field does.\n\nSee
          the following documentation for details:\n\n* [ROSA Clusters](https://github.com/rh-mobb/ocm-operator/blob/main/docs/clusters.md)\n*
          [Machine Pools](https://github.com/rh-mobb/ocm-operator/blob/main/docs/machinepools.md)\n*
          [Identity Providers](https://github.com/rh-mobb/ocm-operator/blob/main/docs/identityproviders.md)\n"
        displayName: OpenShift Cluster Manager Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ocm
        - rosa
        - redhat
        - machinepool
        - mobb
        links:
        - name: OCM Machine Pool Operator
          url: https://github.com/rh-mobb/ocm-operator
        maintainers:
        - email: dscott@redhat.com
          name: Dustin Scott
        maturity: alpha
        provider:
          name: Managed OpenShift Black Belt
          url: https://github.com/rh-mobb/ocm-operator
        relatedImages:
        - quay.io/openshift-community-operators/ocm-operator@sha256:ca6a3b24ca4ecfcab52ee0402e007d6f14b23fa7f3408d740923806989b170e4
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/mobb/ocm-operator:v0.1.0
        version: 0.1.0
      entries:
      - name: ocm-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ocm-operator
    provider:
      name: Managed OpenShift Black Belt
      url: https://github.com/rh-mobb/ocm-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cincinnati-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: update-service-operator.v5.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "updateservice.operator.openshift.io/v1",
                "kind": "UpdateService",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          description: Creates and maintains an OpenShift Update Service instance
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-update-service
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: UpdateService is the Schema for the updateservices API.
            displayName: Update Service
            kind: UpdateService
            name: updateservices.updateservice.operator.openshift.io
            version: v1
        description: |-
          # Use Case
          Running an Update Service instance in a cluster is appealing for offline OpenShift
          clusters or for admins that want to provide their own graph data instead of
          using [https://github.com/openshift/cincinnati-graph-data](https://github.com/openshift/cincinnati-graph-data/).

          # About Update Service
          Update Service uses **Cincinnati** which is an update protocol designed to facilitate
          automatic updates. It describes a particular method for representing transitions between
          releases of a project and allowing a client to perform automatic updates between these
          releases.

          ## Components
          A **Graph Builder** iterates over the release payloads hosted by the
          storage component and builds a DAG of the releases. It is responsible for
          verifying that the graph described by the releases is acyclic and connected.

          A **Policy Engine** is in charge of altering a client's view of the graph
          by applying a set of filters which are defined within the particular Policy
          Engine instance. Both the input to and the output from Policy Engines is a
          graph, allowing multiple Policy Engines to be chained together. The first
          Policy Engine in a chain will fetch its graph from the Graph Builder and the
          last Policy Engine in a chain will serve the modified graph to the client.

          An **Update Service client** is the end consumer of the release payloads. The
          client periodically queries the Policy Engine for updates and applys them if
          available.

          # Query OpenShift's Update Service Endpoint
          $ curl --silent --header 'Accept:application/json' 'https://api.openshift.com/api/upgrades_info/v1/graph?arch=amd64&channel=stable-4.2' | jq '. as $graph | $graph.nodes | map(.version == "4.2.13") | index(true) as $orig | $graph.edges | map(select(.[0] == $orig)[1]) | map($graph.nodes[.])'
        displayName: OpenShift Update Service
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Update Service
        - UpdateService
        - update-service
        - OSUS
        - Cincinnati
        - version
        - upgrade
        links:
        - name: Update Service Operator
          url: https://github.com/openshift/cincinnati-operator
        - name: OpenShift Update Service
          url: https://github.com/openshift/cincinnati
        - name: OpenShift Graph Data
          url: https://github.com/openshift/cincinnati-graph-data
        maintainers:
        - email: aos-team-ota@redhat.com
          name: OpenShift Update Service maintainers
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8@sha256:a9468a662babb272917df92bc9c827535b4b37883edb440b6d2d7c32ffb2145e
        - registry.redhat.io/openshift-update-service/cincinnati-operator-bundle@sha256:50e9c88ca31182c54f9c4bc6682642a5115fa280044e6c125f99626c69d999ad
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8-operator@sha256:759f4de107a5b429933c5e44046ffb4ed75c674aea75440513a6df8fa93a83a3
        version: 5.0.3
      entries:
      - name: update-service-operator.v5.0.3
        version: 5.0.3
      - name: update-service-operator.v5.0.2
        version: 5.0.2
      - name: update-service-operator.v5.0.1
        version: 5.0.1
      - name: update-service-operator.v5.0.0
        version: 5.0.0
      - name: update-service-operator.v4.9.1
        version: 4.9.1
      - name: update-service-operator.v4.9.0
        version: 4.9.0
      name: v1
    defaultChannel: v1
    packageName: cincinnati-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: kubernetes-nmstate-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubernetes-nmstate-operator.4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nmstate.io/v1",
                "kind": "NMState",
                "metadata": {
                  "name": "nmstate"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:b18c8571422372834e54a388f7b826c6b647b24bad46063484adaa5758a8b31d
          createdAt: "2025-08-20T05:45:09Z"
          description: |
            Kubernetes NMState is a declaritive means of configuring NetworkManager.
          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: "true"
          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.skipRange: '>=4.3.0 <4.20.0-202512081147'
          operatorframework.io/suggested-namespace: openshift-nmstate
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/kubernetes-nmstate
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an NMState deployment.
            displayName: NMState
            kind: NMState
            name: nmstates.nmstate.io
            version: v1
        description: A Kubernetes Operator to install Kubernetes NMState
        displayName: Kubernetes NMState Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - nmstate
        - networking
        - NetworkManager
        links:
        - name: Kubernetes Nmstate Operator
          url: https://github.com/nmstate/kubernetes-nmstate
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: GA
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/nmstate-console-plugin-rhel9@sha256:fb2ec4f44752bf8fa661ae34b1b2bda8a34e06468ea7b072dc46a670c95d3729
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:e3a542bff2590c0936aa112dd3e51486101b2b76e1b4a4cc56db83a80d6647f2
        - registry.redhat.io/openshift4/kubernetes-nmstate-operator-bundle@sha256:c6d75810e8565ff5ec92b0429eb2936a381b88d3ba33d918c0b0e39399958c0c
        - registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:b18c8571422372834e54a388f7b826c6b647b24bad46063484adaa5758a8b31d
        version: 4.20.0-202512081147
      entries:
      - name: kubernetes-nmstate-operator.4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: kubernetes-nmstate-operator.4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: kubernetes-nmstate-operator.4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: kubernetes-nmstate-operator.4.20.0-202511110624
        version: 4.20.0-202511110624
      - name: kubernetes-nmstate-operator.4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: kubernetes-nmstate-operator.4.20.0-202510220756
        version: 4.20.0-202510220756
      - name: kubernetes-nmstate-operator.4.20.0-202510151915
        version: 4.20.0-202510151915
      name: stable
    defaultChannel: stable
    packageName: kubernetes-nmstate-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HPE Ezmeral
      provider-url: ""
    name: hpe-ezmeral-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hpe-ezmeral-csi-operator.v1.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ezmeral.hpe.com/v1",
                "kind": "HPEEzmeralCSIDriver",
                "metadata": {
                  "name": "hpeezmeralcsidriver"
                },
                "spec": {
                  "controllerImage": "registry.connect.redhat.com/maprtech/csi-kdfprovisioner@sha256:89a397c26960ba05542ac069e3a47059bced2bc958cfff4aa0f1eb081fab5d42",
                  "nodeImage": "registry.connect.redhat.com/maprtech/csi-kdfplugin@sha256:480b6fb8b2501caa76013c94feac91bef7f9b5ae6ad0b286ec621fd6a9ce4bef",
                  "pullPolicy": "Always"
                }
              },
              {
                "apiVersion": "ezmeral.hpe.com/v1",
                "kind": "HPEEzmeralNFSCSIDriver",
                "metadata": {
                  "name": "hpeezmeralnfscsidriver"
                },
                "spec": {
                  "controllerImage": "registry.connect.redhat.com/maprtech/csi-kdfprovisioner@sha256:89a397c26960ba05542ac069e3a47059bced2bc958cfff4aa0f1eb081fab5d42",
                  "nodeImage": "registry.connect.redhat.com/maprtech/csi-nfsplugin@sha256:35c275363a6949fed56b8ddfe3886ed42a6267fb07271494d8367abbd4d8c822",
                  "pullPolicy": "Always"
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/maprtech/hpe-ezmeral-csi-operator@sha256:82f52179dcd59a1e16f249bcd21f7aae22c09e84f24b479a923fef2adee45c7f
          createdAt: "2022-03-17T12:56:12Z"
          description: A Container Storage Interface (CSI) driver for HPE Ezmeral
            Data Fabric platform. The CSI driver allows you to use HPE Ezmeral Data
            Fabric with your preferred container orchestrator.
          repository: https://github.com/mapr/mapr-csi
          support: HPE Ezmeral Data Fabric
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HPE Ezmeral CSI Driver (FUSE)
            displayName: HPEEzmeralCSIDriver
            kind: HPEEzmeralCSIDriver
            name: hpeezmeralcsidrivers.ezmeral.hpe.com
            version: v1
          - description: HPE Ezmeral CSI Driver (NFS)
            displayName: HPEEzmeralNFSCSIDriver
            kind: HPEEzmeralNFSCSIDriver
            name: hpeezmeralnfscsidrivers.ezmeral.hpe.com
            version: v1
        description: |
          The HPE Ezmeral CSI Operator for Kubernetes packages, deploys, manages, upgrades the HPE Ezmeral CSI Driver on Kubernetes and OpenShift for dynamic provisioning of persistent volumes on HPE Ezmeral Data Fabric platform.
          The HPE Ezmeral CSI Driver for Kubernetes leverages HPE Ezmeral Data Fabric platform to provide scalable and persistent storage for stateful applications. Please refer to our CSI driver [documentation](https://docs.datafabric.hpe.com/home/CSIdriver/csi_overview.html) for full list of supported CSI features.
          ## Installation
          Refer to the HPE Ezmeral CSI Operator for Kubernetes [documentation](https://docs.datafabric.hpe.com/home/CSIdriver/csi_installing_operator.html)
        displayName: HPE Ezmeral Data Fabric CSI Operator for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - HPE
        - HPE Ezmeral
        - HPE Ezmeral Data Fabric
        - Storage
        - FileSystem
        - BlockVolume
        links:
        - name: Documentation
          url: https://docs.datafabric.hpe.com/home/CSIdriver/csi_overview.html
        maintainers:
        - email: ezmeral-csi-support@hpe.com
          name: HPE Ezmeral Data Fabric
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: HPE Ezmeral
        relatedImages:
        - registry.connect.redhat.com/maprtech/csi-kdfprovisioner@sha256:89a397c26960ba05542ac069e3a47059bced2bc958cfff4aa0f1eb081fab5d42
        - registry.connect.redhat.com/maprtech/csi-nfsplugin@sha256:35c275363a6949fed56b8ddfe3886ed42a6267fb07271494d8367abbd4d8c822
        - registry.connect.redhat.com/maprtech/hpe-ezmeral-csi-operator-bundle@sha256:b23ef079d0bcbeaa227a0d759c900c103f97310ad2e00a566a74b100f95a37ff
        - registry.connect.redhat.com/maprtech/hpe-ezmeral-csi-operator@sha256:82f52179dcd59a1e16f249bcd21f7aae22c09e84f24b479a923fef2adee45c7f
        - registry.connect.redhat.com/maprtech/csi-kdfplugin@sha256:480b6fb8b2501caa76013c94feac91bef7f9b5ae6ad0b286ec621fd6a9ce4bef
        version: 1.0.9
      entries:
      - name: hpe-ezmeral-csi-operator.v1.0.9
        version: 1.0.9
      name: stable
    defaultChannel: stable
    packageName: hpe-ezmeral-csi-operator
    provider:
      name: HPE Ezmeral
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: boxboat-github-practice
      provider-url: https://github.com/boxboat-github-practice
    name: github-arc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: github-arc-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "github-practice.boxboat.com/v1alpha1",
                "kind": "ActionsRunnerController",
                "metadata": {
                  "name": "arc-sample"
                },
                "spec": {
                  "authSecret": {
                    "name": "ghauth"
                  },
                  "createRunnerNamespaces": true,
                  "openshift": true,
                  "runnerNamespaces": [
                    "test1",
                    "test2"
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery, OpenShift Optional
          containerImage: ghcr.io/boxboat-github-practice/github-arc-operator:1.1.0
          createdAt: "2023-03-03T20:49:16Z"
          description: Operator for deploying the github actions runner controller
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/boxboat-github-practice/github-arc-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActionsRunnerController is the schema for the ActionsRunnerController
              API
            displayName: Actions Runner Controller
            kind: ActionsRunnerController
            name: actionsrunnercontrollers.github-practice.boxboat.com
            version: v1alpha1
        description: helm based operator for github actions runner controller
        displayName: github-arc-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - github
        - actions
        - boxboat
        - ibm
        - self-hosted
        - runners
        links:
        - name: Github Arc Operator
          url: https://github.com/boxboat-github-practice/github-arc-operator
        - name: Actions Runner Controller
          url: https://github.com/actions/actions-runner-controller
        - name: Boxboat
          url: https://boxboat.com/
        maintainers:
        - email: Michael.McMullen@ibm.com
          name: mbmcmullen27
        maturity: alpha
        provider:
          name: boxboat-github-practice
          url: https://github.com/boxboat-github-practice
        relatedImages:
        - ghcr.io/boxboat-github-practice/github-arc-operator:1.1.0
        - quay.io/openshift-community-operators/github-arc-operator@sha256:d8d97d19cea466c4c240097b79bfb7de90312d937ad4db63f9e90901686e54da
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        version: 1.1.0
      entries:
      - name: github-arc-operator.v1.1.0
        version: 1.1.0
      - name: github-arc-operator.v1.0.4
        version: 1.0.4
      name: alpha
    defaultChannel: alpha
    packageName: github-arc-operator
    provider:
      name: boxboat-github-practice
      url: https://github.com/boxboat-github-practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataStax
      provider-url: ""
    name: cass-operator-community
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cass-operator.v1.23.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cassandra.datastax.com/v1beta1",
                "kind": "CassandraDatacenter",
                "metadata": {
                  "name": "dc1"
                },
                "spec": {
                  "clusterName": "development",
                  "config": {
                    "cassandra-yaml": {
                      "authenticator": "PasswordAuthenticator",
                      "authorizer": "CassandraAuthorizer",
                      "num_tokens": 16,
                      "role_manager": "CassandraRoleManager"
                    },
                    "jvm-server-options": {
                      "initial_heap_size": "1G",
                      "max_heap_size": "1G"
                    }
                  },
                  "managementApiAuth": {
                    "insecure": {}
                  },
                  "podTemplateSpec": {
                    "spec": {
                      "containers": [
                        {
                          "name": "cassandra"
                        }
                      ],
                      "securityContext": {}
                    }
                  },
                  "racks": [
                    {
                      "name": "rack1"
                    },
                    {
                      "name": "rack2"
                    },
                    {
                      "name": "rack3"
                    }
                  ],
                  "resources": {
                    "requests": {
                      "cpu": "1000m",
                      "memory": "2Gi"
                    }
                  },
                  "serverType": "cassandra",
                  "serverVersion": "4.1.2",
                  "size": 3,
                  "storageConfig": {
                    "cassandraDataVolumeClaimSpec": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "10Gi"
                        }
                      },
                      "storageClassName": "server-storage"
                    }
                  }
                }
              },
              {
                "apiVersion": "control.k8ssandra.io/v1alpha1",
                "kind": "CassandraTask",
                "metadata": {
                  "name": "example-cleanup"
                },
                "spec": {
                  "datacenter": {
                    "name": "dc2",
                    "namespace": "cass-operator"
                  },
                  "jobs": [
                    {
                      "command": "cleanup",
                      "name": "cleanup-run"
                    }
                  ]
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database,Big Data,OpenShift Optional
          certified: "true"
          containerImage: cr.k8ssandra.io/k8ssandra/cass-operator:v1.23.2
          createdAt: "2025-03-20"
          description: |
            Simple provisioning, turn-key operations, and automated remediation of Apache Cassandra clusters
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/k8ssandra/cass-operator
          support: DataStax
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CassandraDatacenter is the Schema for the cassandradatacenters
              API
            displayName: Cassandra Datacenter
            kind: CassandraDatacenter
            name: cassandradatacenters.cassandra.datastax.com
            version: v1beta1
          - description: CassandraTask is the Schema for the cassandrajobs API
            displayName: Cassandra Task
            kind: CassandraTask
            name: cassandratasks.control.k8ssandra.io
            version: v1alpha1
        description: "## Apache Cassandra\n\nThe Apache Cassandra database is the
          right choice when you need scalability and\nhigh availability without compromising
          performance. Linear scalability and\nproven fault-tolerance on commodity
          hardware or cloud infrastructure make it the\nperfect platform for mission-critical
          data. Cassandra's support for replicating\nacross multiple datacenters is
          best-in-class, providing lower latency for your\nusers and the peace of
          mind of knowing that you can survive regional outages.\n\n## DataStax Enterprise\n\nThe
          most advanced distribution of Apache Cassandra™ on the market, with the\nenterprise
          functionality needed for serious production systems and backed up and\nsupported
          by the best distributed-experts in the world. It's one platform for\nall
          types of applications anywhere, any cloud, any model: key-value, graph,\ntabular,
          JSON.\n\nDataStax Enterprise is a fully integrated and optimized database,
          with graph,\nanalytics, and search included, all with a unified security
          model. Simply put,\nit's the only database capable of meeting today's demanding
          requirements\n\n## Operator Details\n\n`cass-operator` is designed as a
          modular operator for Apache Cassandra and\nderived  distributions. Apache
          Cassandra is a distributed database consisting of\nmultiple nodes working
          in concert to store data and process queries along a\nnumber of fault domains.
          `cass-operator` has the deployment of a Cassandra\ncluster around the logical
          domain of a datacenter with the `CassandraDatacenter`\ncustom resource.\n
          \   \nUpon submission of one of these resources it handles provisioning
          the underlying\nstateful sets (analogous to C\\* logical racks), services,
          and configuration.\nAdditionally through monitoring pod state via Kubernetes
          callbacks it handles day to day\noperations such as restarting failed processes,
          scaling clusters up, and deploying\nconfiguration changes in a rolling,
          non-disruptive, fashion.\n    \nThis operator is designed to be `Namespace`
          scoped. A single Kubernetes cluster may\nbe running multiple instances of
          this operator, in separate namespaces, to support\na number of C\\* clusters
          and environments. Configuration is simple with the usage of\nYAML based
          overrides in the Custom Resource paired with an `init` container.\n    \nIn
          C\\* clusters ordering and timing of certain operations are important to
          keep the system\nevenly distributed. `cass-operator` takes advantage of
          a sidecar process within the\nmain container to handle the orchestration
          of starting our main C* process."
        displayName: DataStax Kubernetes Operator for Apache Cassandra
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - k8ssandra
        - cass-operator
        - DataStax Enterprise
        - Apache Cassandra
        - DSE
        - C*
        - Cassandra
        links:
        - name: DataStax
          url: https://datastax.com
        - name: Operator GitHub Repo
          url: https://github.com/k8ssandra/cass-operator
        - name: Config Builder GitHub Repo
          url: https://github.com/datastax/cass-config-builder
        - name: Documentation [1]
          url: https://github.com/k8ssandra/cass-operator/tree/master/docs/user
        - name: Documentation [2]
          url: https://docs.datastax.com/en/cass-operator/doc/cass-operator/cassOperatorTOC.html
        maintainers:
        - email: cass-operator@datastax.com
          name: DataStax Operator Team
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: DataStax
        relatedImages:
        - cr.k8ssandra.io/k8ssandra/cass-operator:v1.23.2
        - quay.io/community-operator-pipeline-prod/cass-operator-community@sha256:428effade29fcb3e8981e84f7df945f9bc49fe1a9b56217573db8b387706c26b
        version: 1.23.2
      entries:
      - name: cass-operator.v1.23.2
        version: 1.23.2
      - name: cass-operator.v1.23.1
        version: 1.23.1
      - name: cass-operator.v1.23.0
        version: 1.23.0
      - name: cass-operator.v1.21.1
        version: 1.21.1
      - name: cass-operator.v1.19.1
        version: 1.19.1
      - name: cass-operator.v1.17.1
        version: 1.17.1
      - name: cass-operator.v1.16.0
        version: 1.16.0
      - name: cass-operator.v1.14.0
        version: 1.14.0
      - name: cass-operator.v1.13.0
        version: 1.13.0
      - name: cass-operator.v1.10.4
        version: 1.10.4
      - name: cass-operator.v1.10.1
        version: 1.10.1
      name: stable
    defaultChannel: stable
    packageName: cass-operator-community
    provider:
      name: DataStax
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: marin3r
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: marin3r.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyConfig",
                "metadata": {
                  "name": "envoyconfig-example",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "nodeID": "example",
                  "resources": [
                    {
                      "type": "cluster",
                      "value": {
                        "connect_timeout": "0.01s",
                        "dns_lookup_family": "V4_ONLY",
                        "lb_policy": "ROUND_ROBIN",
                        "load_assignment": {
                          "cluster_name": "example",
                          "endpoints": [
                            {
                              "lb_endpoints": [
                                {
                                  "endpoint": {
                                    "address": {
                                      "socket_address": {
                                        "address": "example",
                                        "port_value": 8080
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        },
                        "name": "example",
                        "type": "STRICT_DNS"
                      }
                    },
                    {
                      "type": "route",
                      "value": {
                        "name": "local",
                        "virtual_hosts": [
                          {
                            "domains": [
                              "*"
                            ],
                            "name": "all",
                            "routes": [
                              {
                                "match": {
                                  "prefix": "/"
                                },
                                "route": {
                                  "cluster": "example"
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "listener",
                      "value": {
                        "address": {
                          "socket_address": {
                            "address": "0.0.0.0",
                            "port_value": 8443
                          }
                        },
                        "filter_chains": [
                          {
                            "filters": [
                              {
                                "name": "envoy.filters.network.http_connection_manager",
                                "typed_config": {
                                  "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager",
                                  "access_log": [
                                    {
                                      "name": "envoy.access_loggers.file",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog",
                                        "path": "/dev/stdout"
                                      }
                                    }
                                  ],
                                  "http_filters": [
                                    {
                                      "name": "envoy.filters.http.router",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router"
                                      }
                                    }
                                  ],
                                  "rds": {
                                    "config_source": {
                                      "ads": {},
                                      "resource_api_version": "V3"
                                    },
                                    "route_config_name": "local"
                                  },
                                  "stat_prefix": "https"
                                }
                              }
                            ],
                            "transport_socket": {
                              "name": "envoy.transport_sockets.tls",
                              "typed_config": {
                                "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext",
                                "common_tls_context": {
                                  "tls_certificate_sds_secret_configs": [
                                    {
                                      "name": "example.default.svc",
                                      "sds_config": {
                                        "ads": {},
                                        "resource_api_version": "V3"
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          }
                        ],
                        "name": "https"
                      }
                    },
                    {
                      "blueprint": "tlsCertificate",
                      "generateFromTlsSecret": "example.default.svc",
                      "type": "secret"
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "DiscoveryService",
                "metadata": {
                  "name": "discoveryservice-example",
                  "namespace": "my-namespace"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyDeployment",
                "metadata": {
                  "name": "envoydeployment-sample",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "discoveryServiceRef": "discoveryservice-example",
                  "envoyConfigRef": "envoyconfig-example",
                  "ports": [
                    {
                      "name": "https",
                      "port": 8443
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking
          certified: "false"
          containerImage: quay.io/3scale/marin3r
          createdAt: "2024-08-05T16:08:25Z"
          description: Lighweight, CRD based Envoy control plane for Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["envoyconfigrevisions.marin3r.3scale.net","discoveryservicecertificates.operator.marin3r.3scale.net"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/3scale-ops/marin3r
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DiscoveryServiceCertificate is an internal resource used
              to create certificates. This resource is used by the DiscoveryService
              controller to create the required certificates for the different components.
              Direct use of DiscoveryServiceCertificate objects is discouraged.
            displayName: DiscoveryServiceCertificate
            kind: DiscoveryServiceCertificate
            name: discoveryservicecertificates.operator.marin3r.3scale.net
            version: v1alpha1
          - description: DiscoveryService represents an envoy discovery service server.
              Only one instance per namespace is currently supported.
            displayName: DiscoveryService
            kind: DiscoveryService
            name: discoveryservices.operator.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfigRevision is an internal resource that stores a
              specific version of an EnvoyConfig resource. EnvoyConfigRevisions are
              automatically created and deleted by the EnvoyConfig controller and
              are not intended to be directly used. Use EnvoyConfig objects instead.
            displayName: EnvoyConfigRevision
            kind: EnvoyConfigRevision
            name: envoyconfigrevisions.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfig holds the configuration for a given envoy nodeID.
              The spec of an EnvoyConfig object holds the Envoy resources that conform
              the desired configuration for the given nodeID and that the discovery
              service will send to any envoy client that identifies itself with that
              nodeID.
            displayName: EnvoyConfig
            kind: EnvoyConfig
            name: envoyconfigs.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyDeployment is a resource to deploy and manage a Kubernetes
              Deployment of Envoy Pods.
            displayName: EnvoyDeployment
            kind: EnvoyDeployment
            name: envoydeployments.operator.marin3r.3scale.net
            version: v1alpha1
        description: |
          MARIN3R implements a control plane to deploy, configure and operate a fleet of envoy instances within a Kubernetes cluster.
          It operates a group of gateways and Pod sidecar containers to provide general purpose functionality required to operate production systems.

          Features:

          * Deploy and manage an Envoy xDS server using the DiscoveryService custom resource.
          * Inject Envoy sidecar containers based on Pod annotations.
          * Deploy Envoy as a Kubernetes Deployment using the EnvoyDeployment custom resource.
          * Dynamic Envoy configuration and re-configuration using the EnvoyConfig custom resource.
          * Use Kubernetes Secrets as certificate sources.
          * Syntactic validation of Envoy configurations.
          * Lifecycle management of Envoy containers (graceful shutdown and connection draining).
          * Self-healing.

          Check the [docs](https://github.com/3scale-ops/marin3r#readme) for more information.

          ## License
          MARIN3R is licensed under the [Apache 2.0 license](https://github.com/3scale/prometheus-exporter-operator/blob/master/LICENSE)
        displayName: MARIN3R
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - envoy
        - discovery
        - controlplane
        - proxy
        - sidecar
        - xds
        - network
        - gateway
        links:
        - name: GitHub
          url: https://github.com/3scale-ops/marin3r
        maintainers:
        - email: 3scale-operations+marin3r@redhat.com
          name: 3scale Operations Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/marin3r:v0.13.1
        - quay.io/community-operator-pipeline-prod/marin3r@sha256:68875b0da5165c5fc0d39b5c079a3706b57879f444dba77f4ed04f4db4f1c664
        version: 0.13.1
      entries:
      - name: marin3r.v0.13.1
        version: 0.13.1
      - name: marin3r.v0.12.3
        version: 0.12.3
      - name: marin3r.v0.11.1
        version: 0.11.1
      - name: marin3r.v0.10.0
        version: 0.10.0
      name: alpha
    - currentCSV: marin3r.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyConfig",
                "metadata": {
                  "name": "envoyconfig-example",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "nodeID": "example",
                  "resources": [
                    {
                      "type": "cluster",
                      "value": {
                        "connect_timeout": "0.01s",
                        "dns_lookup_family": "V4_ONLY",
                        "lb_policy": "ROUND_ROBIN",
                        "load_assignment": {
                          "cluster_name": "example",
                          "endpoints": [
                            {
                              "lb_endpoints": [
                                {
                                  "endpoint": {
                                    "address": {
                                      "socket_address": {
                                        "address": "example",
                                        "port_value": 8080
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        },
                        "name": "example",
                        "type": "STRICT_DNS"
                      }
                    },
                    {
                      "type": "route",
                      "value": {
                        "name": "local",
                        "virtual_hosts": [
                          {
                            "domains": [
                              "*"
                            ],
                            "name": "all",
                            "routes": [
                              {
                                "match": {
                                  "prefix": "/"
                                },
                                "route": {
                                  "cluster": "example"
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "listener",
                      "value": {
                        "address": {
                          "socket_address": {
                            "address": "0.0.0.0",
                            "port_value": 8443
                          }
                        },
                        "filter_chains": [
                          {
                            "filters": [
                              {
                                "name": "envoy.filters.network.http_connection_manager",
                                "typed_config": {
                                  "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager",
                                  "access_log": [
                                    {
                                      "name": "envoy.access_loggers.file",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog",
                                        "path": "/dev/stdout"
                                      }
                                    }
                                  ],
                                  "http_filters": [
                                    {
                                      "name": "envoy.filters.http.router",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router"
                                      }
                                    }
                                  ],
                                  "rds": {
                                    "config_source": {
                                      "ads": {},
                                      "resource_api_version": "V3"
                                    },
                                    "route_config_name": "local"
                                  },
                                  "stat_prefix": "https"
                                }
                              }
                            ],
                            "transport_socket": {
                              "name": "envoy.transport_sockets.tls",
                              "typed_config": {
                                "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext",
                                "common_tls_context": {
                                  "tls_certificate_sds_secret_configs": [
                                    {
                                      "name": "example.default.svc",
                                      "sds_config": {
                                        "ads": {},
                                        "resource_api_version": "V3"
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          }
                        ],
                        "name": "https"
                      }
                    },
                    {
                      "blueprint": "tlsCertificate",
                      "generateFromTlsSecret": "example.default.svc",
                      "type": "secret"
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "DiscoveryService",
                "metadata": {
                  "name": "discoveryservice-example",
                  "namespace": "my-namespace"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyDeployment",
                "metadata": {
                  "name": "envoydeployment-sample",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "discoveryServiceRef": "discoveryservice-example",
                  "envoyConfigRef": "envoyconfig-example",
                  "ports": [
                    {
                      "name": "https",
                      "port": 8443
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking
          certified: "false"
          containerImage: quay.io/3scale/marin3r
          createdAt: "2024-08-05T16:08:25Z"
          description: Lighweight, CRD based Envoy control plane for Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["envoyconfigrevisions.marin3r.3scale.net","discoveryservicecertificates.operator.marin3r.3scale.net"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/3scale-ops/marin3r
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DiscoveryServiceCertificate is an internal resource used
              to create certificates. This resource is used by the DiscoveryService
              controller to create the required certificates for the different components.
              Direct use of DiscoveryServiceCertificate objects is discouraged.
            displayName: DiscoveryServiceCertificate
            kind: DiscoveryServiceCertificate
            name: discoveryservicecertificates.operator.marin3r.3scale.net
            version: v1alpha1
          - description: DiscoveryService represents an envoy discovery service server.
              Only one instance per namespace is currently supported.
            displayName: DiscoveryService
            kind: DiscoveryService
            name: discoveryservices.operator.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfigRevision is an internal resource that stores a
              specific version of an EnvoyConfig resource. EnvoyConfigRevisions are
              automatically created and deleted by the EnvoyConfig controller and
              are not intended to be directly used. Use EnvoyConfig objects instead.
            displayName: EnvoyConfigRevision
            kind: EnvoyConfigRevision
            name: envoyconfigrevisions.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfig holds the configuration for a given envoy nodeID.
              The spec of an EnvoyConfig object holds the Envoy resources that conform
              the desired configuration for the given nodeID and that the discovery
              service will send to any envoy client that identifies itself with that
              nodeID.
            displayName: EnvoyConfig
            kind: EnvoyConfig
            name: envoyconfigs.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyDeployment is a resource to deploy and manage a Kubernetes
              Deployment of Envoy Pods.
            displayName: EnvoyDeployment
            kind: EnvoyDeployment
            name: envoydeployments.operator.marin3r.3scale.net
            version: v1alpha1
        description: |
          MARIN3R implements a control plane to deploy, configure and operate a fleet of envoy instances within a Kubernetes cluster.
          It operates a group of gateways and Pod sidecar containers to provide general purpose functionality required to operate production systems.

          Features:

          * Deploy and manage an Envoy xDS server using the DiscoveryService custom resource.
          * Inject Envoy sidecar containers based on Pod annotations.
          * Deploy Envoy as a Kubernetes Deployment using the EnvoyDeployment custom resource.
          * Dynamic Envoy configuration and re-configuration using the EnvoyConfig custom resource.
          * Use Kubernetes Secrets as certificate sources.
          * Syntactic validation of Envoy configurations.
          * Lifecycle management of Envoy containers (graceful shutdown and connection draining).
          * Self-healing.

          Check the [docs](https://github.com/3scale-ops/marin3r#readme) for more information.

          ## License
          MARIN3R is licensed under the [Apache 2.0 license](https://github.com/3scale/prometheus-exporter-operator/blob/master/LICENSE)
        displayName: MARIN3R
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - envoy
        - discovery
        - controlplane
        - proxy
        - sidecar
        - xds
        - network
        - gateway
        links:
        - name: GitHub
          url: https://github.com/3scale-ops/marin3r
        maintainers:
        - email: 3scale-operations+marin3r@redhat.com
          name: 3scale Operations Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/marin3r:v0.13.1
        - quay.io/community-operator-pipeline-prod/marin3r@sha256:68875b0da5165c5fc0d39b5c079a3706b57879f444dba77f4ed04f4db4f1c664
        version: 0.13.1
      entries:
      - name: marin3r.v0.13.1
        version: 0.13.1
      - name: marin3r.v0.12.3
        version: 0.12.3
      - name: marin3r.v0.11.1
        version: 0.11.1
      - name: marin3r.v0.10.0
        version: 0.10.0
      name: stable
    defaultChannel: stable
    packageName: marin3r
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: kubeturbo
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubeturbo-operator.v8.6.5-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.6.5
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - turbonomic/kubeturbo-operator:8.6.5
        - quay.io/openshift-community-operators/kubeturbo@sha256:0739d5035590cece6d2a573aa1e799b0b0cab8b548a41cc2488cf465486cf4a5
        version: 8.6.5-beta.1
      entries:
      - name: kubeturbo-operator.v8.6.5-beta.1
        version: 8.6.5-beta.1
      - name: kubeturbo-operator.v8.6.0
        version: 8.6.0
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: beta
    - currentCSV: kubeturbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.6
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/kubeturbo@sha256:f7c7a998ce5b4590c80ae301c6e1bd81bb577a54059a8b375c5468aad1f2bf6f
        - turbonomic/kubeturbo-operator:8.6
        version: 8.6.0
      entries:
      - name: kubeturbo-operator.v8.6.0
        version: 8.6.0
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: stable
    - currentCSV: kubeturbo-operator.v8.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.4
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/kubeturbo@sha256:3028579f4909be6b8dcd970e778bc88d0576c76e55b98c886738b8f601cdf4c1
        - turbonomic/kubeturbo-operator:8.4
        version: 8.4.0
      entries:
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: v8.4.0
    - currentCSV: kubeturbo-operator.v8.5.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.5
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - turbonomic/kubeturbo-operator:8.5
        - quay.io/openshift-community-operators/kubeturbo@sha256:e50343879b4c3c4002c5e7ff67f4664df441cf5f239f59fa98b7fddd75516d41
        version: 8.5.0
      entries:
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: v8.5.0
    - currentCSV: kubeturbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.6
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/kubeturbo@sha256:f7c7a998ce5b4590c80ae301c6e1bd81bb577a54059a8b375c5468aad1f2bf6f
        - turbonomic/kubeturbo-operator:8.6
        version: 8.6.0
      entries:
      - name: kubeturbo-operator.v8.6.0
        version: 8.6.0
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: v8.6.0
    defaultChannel: stable
    packageName: kubeturbo
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/lws-operator
    name: leader-worker-set
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: leader-worker-set.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "LeaderWorkerSetOperator",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed",
                  "operatorLogLevel": "Normal"
                }
              }
            ]
          capabilities: Basic Install
          categories: Openshift Optional
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-04-14T08:12:51Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-lws-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          repository: https://github.com/openshift/lws-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: LeaderWorkerSetOperator
            name: leaderworkersetoperators.operator.openshift.io
            version: v1
        description: "Leader Worker Set Operator is based on the [LWS](https://lws.sigs.k8s.io/docs/)
          open source project.\nLeader Worker Set: An API for deploying a group of
          pods as a unit of replication. \nIt aims to address common deployment patterns
          of AI/ML inference workloads, \nespecially multi-host inference workloads
          where the LLM will be sharded and run across multiple devices on multiple
          nodes.\n"
        displayName: Leader Worker Set Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - leader-worker-set
        links:
        - name: Leader Worker Set
          url: https://lws.sigs.k8s.io/docs/overview/
        - name: Operand Source Code
          url: https://github.com/openshift/kubernetes-sigs-lws
        - name: Operator Source Code
          url: https://github.com/openshift/lws-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: Red Hat
          url: https://github.com/openshift/lws-operator
        relatedImages:
        - registry.redhat.io/leader-worker-set/lws-operator-bundle@sha256:f641cf3b2d6659e26eb0ae49c67a3416152a2fbc2f26f490889a2bd169b9ea06
        - registry.redhat.io/leader-worker-set/lws-rhel9-operator@sha256:c202bfa15626262ff22682b64ac57539d28dd35f5960c490f5afea75cef34309
        - registry.redhat.io/leader-worker-set/lws-rhel9@sha256:affb303b1173c273231bb50fef07310b0e220d2f08bfc0aa5912d0825e3e0d4f
        version: 1.0.0
      entries:
      - name: leader-worker-set.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    defaultChannel: stable-v1.0
    packageName: leader-worker-set
    provider:
      name: Red Hat
      url: https://github.com/openshift/lws-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-businessautomation: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: businessautomation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: businessautomation-operator.7.13.5-17
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"app.kiegroup.org/v2","kind":"KieApp","metadata":{"name":"rhpam-trial"},"spec":{"environment":"rhpam-trial"}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/rhpam-7/rhpam-rhel8-operator@sha256:3b4f420def9e5d2c768d5209264bd5f9af6d6a37b22ef9a988a167ff7d9959cf
          createdAt: "2025-09-29 14:49:42"
          description: Deploys and manages Red Hat Process Automation Manager and
            Red Hat Decision Manager environments.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Process Automation
            Manager", "Red Hat Decision Manager"]'
          repository: https://github.com/kiegroup/kie-cloud-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A project prescription running an RHPAM/RHDM environment.
            displayName: KieApp
            kind: KieApp
            name: kieapps.app.kiegroup.org
            version: v2
        description: |-
          Deploys and manages Red Hat Process Automation Manager and Red Hat Decision Manager environments.

          * **Red Hat Process Automation Manager** is a platform for developing containerized microservices and applications that automate business decisions and processes. It includes business process management (BPM), business rules management (BRM), and business resource optimization and complex event processing (CEP) technologies. It also includes a user experience platform to create engaging user interfaces for process and decision services with minimal coding.

          [See more](https://www.redhat.com/en/products/process-automation).
        displayName: Business Automation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kieapp
        - pam
        - decision
        - kie
        - cloud
        - bpm
        - process
        - automation
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-process-automation-manager
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_process_automation_manager/7.13/#category-deploying-red-hat-process-automation-manager-on-openshift
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:3e5d34d689309eaa346b27ed9f0f517199d82eb9410d1bcc5e99dea367e9e242
        - registry.redhat.io/openshift4/ose-cli@sha256:310339cb93bca052f20d897f3fabdd608983e910af19ec18d1c1c67833ee3cb7
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:a3e44e81b1fe4bcbd3c1e1d7dcbd6c4fc24d9eb2458d503675d431b973b9d080
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:4ba07c476202c61c9a2b59414afd6113a55c5c8d73cc4d56281943c81f73fe6b
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:d1e5461db8983a13f98259152dc3cfa2aa677c29f799104190e5cefa83cf97b5
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:4ee8b93e87cb8012b46324a35e3806c6f7a72d6b27292cf5180dcf0f5da6810f
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:bd5c6586b4859dec23ad9530ee98bab33497ab251d544f863fc0af01cbd45101
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef9165b4497da980bd33c935a638179f7e1969dc227668b21cb79b94ecd10e51
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:32912270eba0f2464da88f315bde8bf1ef5bbded814db156811d7a415a458f86
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:7cf8ca0c015621c90d8fc62629ef8711571d5292e2d5ae12a0f541cdd9bd49b9
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:3a901b54a9d35d38b5aca275df2160e3190a874e139fcb606b9969b38284b3dc
        - registry.redhat.io/rhpam-7/rhpam-operator-bundle@sha256:b18c746b4270819be88665dedae34c7635df44d492e989f433515dee0d992384
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:012b24f6713f98358ac044a8b5936502af22370a032cb7fbf17edacbc5e165b7
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:4edac282119898ab1395030eecaee584990064e88fc8e65fb999f19ea2ef3f8b
        - registry.redhat.io/rhpam-7/rhpam-rhel8-operator@sha256:3b4f420def9e5d2c768d5209264bd5f9af6d6a37b22ef9a988a167ff7d9959cf
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:228c6ab5b83e215a98f6eb76250feb2ae3096fd21398c44e5b2701257c9c3493
        - registry.redhat.io/rhscl/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:3fbef82d1c5da8da1606d1a2d5dcfd20000da574737eb32b772d4f0123b179cb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:dc24aa382e02c4ac058d4b824a21f0e90a6259d6d817d0341b2a41809b5daa78
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:a94739f0e52ae43bd73f3218482daf0199b6eda367a2e510ecb7b64fb7ba9942
        version: 7.13.5-17
      entries:
      - name: businessautomation-operator.7.13.5-17
        version: 7.13.5-17
      - name: businessautomation-operator.7.13.5-16
        version: 7.13.5-16
      - name: businessautomation-operator.7.13.5-15
        version: 7.13.5-15
      - name: businessautomation-operator.7.13.5-14
        version: 7.13.5-14
      - name: businessautomation-operator.7.13.5-13
        version: 7.13.5-13
      - name: businessautomation-operator.7.13.5-12
        version: 7.13.5-12
      - name: businessautomation-operator.7.13.5-11
        version: 7.13.5-11
      - name: businessautomation-operator.7.13.5-10
        version: 7.13.5-10
      - name: businessautomation-operator.7.13.5-9
        version: 7.13.5-9
      - name: businessautomation-operator.7.13.5-8
        version: 7.13.5-8
      - name: businessautomation-operator.7.13.5-7
        version: 7.13.5-7
      - name: businessautomation-operator.7.13.5-6
        version: 7.13.5-6
      - name: businessautomation-operator.7.13.5-5
        version: 7.13.5-5
      - name: businessautomation-operator.7.13.5-4
        version: 7.13.5-4
      - name: businessautomation-operator.7.13.5-3
        version: 7.13.5-3
      - name: businessautomation-operator.7.13.5-2
        version: 7.13.5-2
      - name: businessautomation-operator.7.13.5-1
        version: 7.13.5-1
      - name: businessautomation-operator.7.13.4-4
        version: 7.13.4-4
      - name: businessautomation-operator.7.13.4-3
        version: 7.13.4-3
      - name: businessautomation-operator.7.13.4-2
        version: 7.13.4-2
      - name: businessautomation-operator.7.13.4-1
        version: 7.13.4-1
      - name: businessautomation-operator.7.13.3-5
        version: 7.13.3-5
      - name: businessautomation-operator.7.13.3-4
        version: 7.13.3-4
      - name: businessautomation-operator.7.13.3-3
        version: 7.13.3-3
      - name: businessautomation-operator.7.13.3-2
        version: 7.13.3-2
      - name: businessautomation-operator.7.13.3-1
        version: 7.13.3-1
      - name: businessautomation-operator.7.13.2-3
        version: 7.13.2-3
      - name: businessautomation-operator.7.13.2-2
        version: 7.13.2-2
      - name: businessautomation-operator.7.13.2-1
        version: 7.13.2-1
      - name: businessautomation-operator.7.13.1-2
        version: 7.13.1-2
      - name: businessautomation-operator.7.13.1-1
        version: 7.13.1-1
      - name: businessautomation-operator.7.13.0-1
        version: 7.13.0-1
      - name: businessautomation-operator.7.12.1-4
        version: 7.12.1-4
      - name: businessautomation-operator.7.12.1-3
        version: 7.12.1-3
      - name: businessautomation-operator.7.12.1-2
        version: 7.12.1-2
      - name: businessautomation-operator.7.12.1-1
        version: 7.12.1-1
      - name: businessautomation-operator.7.12.0-2
        version: 7.12.0-2
      - name: businessautomation-operator.7.12.0-1
        version: 7.12.0-1
      - name: businessautomation-operator.7.11.1-3
        version: 7.11.1-3
      - name: businessautomation-operator.7.11.1-2
        version: 7.11.1-2
      - name: businessautomation-operator.7.11.1-1
        version: 7.11.1-1
      - name: businessautomation-operator.7.11.0-2
        version: 7.11.0-2
      - name: businessautomation-operator.7.11.0-1
        version: 7.11.0-1
      - name: businessautomation-operator.7.10.1-2
        version: 7.10.1-2
      - name: businessautomation-operator.7.10.1-1
        version: 7.10.1-1
      - name: businessautomation-operator.7.10.0-2
        version: 7.10.0-2
      - name: businessautomation-operator.7.10.0-1
        version: 7.10.0-1
      - name: businessautomation-operator.7.9.1-1
        version: 7.9.1-1
      - name: businessautomation-operator.7.9.0
        version: 7.9.0
      - name: businessautomation-operator.7.9.0-2
        version: 7.9.0-2
      - name: businessautomation-operator.7.8.1
        version: 7.8.1
      - name: businessautomation-operator.7.8.0
        version: 7.8.0
      - name: businessautomation-operator.1.4.1
        version: 1.4.1
      - name: businessautomation-operator.1.4.0
        version: 1.4.0
      - name: businessautomation-operator.1.3.0
        version: 1.3.0
      - name: businessautomation-operator.1.2.1
        version: 1.2.1
      - name: businessautomation-operator.1.2.0
        version: 1.2.0
      name: stable
    defaultChannel: stable
    packageName: businessautomation-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-commons-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: commons-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/commons-operator@sha256:b06a873ea5d18482fbe431031e5cb5b156669a89e7d6844edefe673dc13e6bc4
          description: Stackable Commons Operator
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/commons-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for AuthenticationClassSpec via
              `CustomResource`
            displayName: authenticationclasses.authentication.stackable.tech
            kind: AuthenticationClass
            name: authenticationclasses.authentication.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for ConnectionSpec via `CustomResource`
            displayName: s3connections.s3.stackable.tech
            kind: S3Connection
            name: s3connections.s3.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for BucketSpec via `CustomResource`
            displayName: s3buckets.s3.stackable.tech
            kind: S3Bucket
            name: s3buckets.s3.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Commons Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - commons
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/commons-operator@sha256:b06a873ea5d18482fbe431031e5cb5b156669a89e7d6844edefe673dc13e6bc4
        - registry.connect.redhat.com/stackable/stackable-commons-operator@sha256:2a9de3ee2f44c74604a516a2f4ad7525315ea37b3b7193505c68e065821a9b06
        version: 25.11.0
      entries:
      - name: commons-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-commons-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: GitLab, Inc.
      provider-url: https://gitlab.com
    name: gitlab-runner-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-runner-operator.v1.43.3
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta2",
                "kind": "Runner",
                "metadata": {
                  "name": "gitlab-runner-example",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "gitlabUrl": "https://gitlab.example.com",
                  "token": "runner-token-secret",
                  "tags": "kubernetes,example",
                  "concurrent": 10,
                  "imagePullPolicy": "IfNotPresent"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery, Developer Tools
          containerImage: registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
          createdAt: "2025-11-28T23:15:09Z"
          description: GitLab Runner operator manages lifecycle of GitLab Runner instances
          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: "true"
          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.skipRange: '>=1.11.0 <1.43.3'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: none
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
          support: GitLab, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Runner is the open source project used to run your jobs and
              send the results back to GitLab
            displayName: GitLab Runner
            kind: Runner
            name: runners.apps.gitlab.com
            version: v1beta2
        description: |-
          GitLab Runner is the lightweight, highly-scalable agent that runs your build jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.

              The GitLab Runner operator manages the lifecycle of GitLab Runner in Kubernetes or Openshift clusters. The operator aims to automate the tasks needed to run your CI/CD jobs in your container orchestration platform.

              ## Prerequisites

                For Kubernetes cluster, install cert-manager:

                ```shell
                kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.7.1/cert-manager.yaml
                ```

              ## GitLab Runner version

              This version of **GitLab Runner Operator** ships with **GitLab Runner v18.6.3**.

              To use a different version of **GitLab Runner** change the [`runnerImage` and `helperImage` properties](https://docs.gitlab.com/runner/configuration/configuring_runner_operator.html#operator-properties).

              ## Usage

               To link a GitLab Runner instance to a self-hosted GitLab instance or the hosted [GitLab](https://gitlab.com), you first need to:

               1. Create a secret containing the `runner-token` from your GitLab project.

                ```
                cat > gitlab-runner-secret.yml << EOF
                apiVersion: v1
                kind: Secret
                metadata:
                  name: gitlab-runner-secret
                type: Opaque
                # Only one of the following fields must be set. The Operator will fail to register Runner if both are provided.
                # # NOTE: runner-registration-token is deprecated and will be removed in GitLab 18.0. You should use runner-token instead.
                stringData:
                  runner-token: REPLACE_ME # your project runner token
                  # runner-registration-token: "" # your project runner secret
                EOF
                ```

                ```
                oc apply -f gitlab-runner-secret.yml
                ```

               2. Create the Custom Resource Definition (CRD) file and include the following information. The tags value must be openshift for the job to run.

                 ```
                 cat > gitlab-runner.yml << EOF
                 apiVersion: apps.gitlab.com/v1beta2
                 kind: Runner
                 metadata:
                   name: gitlab-runner
                 spec:
                   gitlabUrl: https://gitlab.example.com
                   buildImage: alpine
                   token: gitlab-runner-secret
                   tags: openshift
                 EOF
                 ```

                ```
                oc apply -f gitlab-runner.yml
                ```

              ## Full documentation

              Visit [Install GitLab Runner Operator](https://docs.gitlab.com/runner/install/operator.html)
        displayName: GitLab Runner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GitLab
        - CI/CD
        - DevOps
        - SAST
        - DAST
        links:
        - name: Gitlab Runner Operator
          url: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
        - name: GitLab Docs
          url: https://docs.gitlab.com
        - name: GitLab Runner
          url: https://docs.gitlab.com/runner/
        - name: GitLab CI/CD
          url: https://docs.gitlab.com/ee/ci/quick_start/
        maintainers:
        - email: support@gitlab.com
          name: Georgi N. Georgiev
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: GitLab, Inc.
          url: https://gitlab.com
        relatedImages:
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/openshift4/ose-kube-rbac-proxy@sha256:bb84ead437042603254efcb703442be8500a9450b10bbcaaee81b48a6ed869ea
        - quay.io/community-operator-pipeline-prod/gitlab-runner-operator@sha256:3b051d097c14fa948cbc7356ca60e1a7fb3ca3e4ce4aeea19a5d8c5b0ffb8c5d
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-helper-ocp@sha256:9c1723a09b7255e8ab13954375e263965de1955d9f1fdc5e64d7610c7495e614
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-ocp@sha256:de78dc586ebc1c1ea6e4be7b8a21e949bc24860051e3eab93f3468751a04ca0a
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
        version: 1.43.3
      entries:
      - name: gitlab-runner-operator.v1.43.3
        version: 1.43.3
      - name: gitlab-runner-operator.v1.43.2
        version: 1.43.2
      - name: gitlab-runner-operator.v1.43.1
        version: 1.43.1
      - name: gitlab-runner-operator.v1.43.0
        version: 1.43.0
      name: stable
    defaultChannel: stable
    packageName: gitlab-runner-operator
    provider:
      name: GitLab, Inc.
      url: https://gitlab.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OnGres
      provider-url: https://ongres.com
    name: stackgres-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stackgres.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - registry.connect.redhat.com/ongres/stackgres-certified-1@sha256:faa7a5d70521507defdbde77666970420dbd8c6241a7144ba1f2e18624256498
        version: 1.18.3
      entries:
      - name: stackgres.v1.18.3
        version: 1.18.3
      - name: stackgres.v1.18.2
        version: 1.18.2
      - name: stackgres.v1.18.1
        version: 1.18.1
      name: candidate
    - currentCSV: stackgres.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - registry.connect.redhat.com/ongres/stackgres-certified-1@sha256:faa7a5d70521507defdbde77666970420dbd8c6241a7144ba1f2e18624256498
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        version: 1.18.3
      entries:
      - name: stackgres.v1.18.3
        version: 1.18.3
      - name: stackgres.v1.18.2
        version: 1.18.2
      - name: stackgres.v1.18.1
        version: 1.18.1
      name: fast
    - currentCSV: stackgres.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - registry.connect.redhat.com/ongres/stackgres-certified-1@sha256:faa7a5d70521507defdbde77666970420dbd8c6241a7144ba1f2e18624256498
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        version: 1.18.3
      entries:
      - name: stackgres.v1.18.3
        version: 1.18.3
      - name: stackgres.v1.18.2
        version: 1.18.2
      - name: stackgres.v1.18.1
        version: 1.18.1
      name: stable
    defaultChannel: stable
    packageName: stackgres-certified
    provider:
      name: OnGres
      url: https://ongres.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-glue-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-glue-controller.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/glue-controller:0.3.0
          createdAt: "2025-11-29T04:47:04Z"
          description: AWS Glue controller is a service controller for managing Glue
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Job represents the state of an AWS glue Job resource.
            displayName: Job
            kind: Job
            name: jobs.glue.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Glue resources in AWS from within your Kubernetes cluster.

          **About Amazon Glue**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Glue
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - glue
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Glue Developer Resources
          url: https://aws.amazon.com/Glue/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: glue maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-glue-controller@sha256:cd4c331b8a043a636f00c854514d1e4f4baff330787d94a8f114e69ab125a227
        - public.ecr.aws/aws-controllers-k8s/glue-controller:0.3.0
        version: 0.3.0
      entries:
      - name: ack-glue-controller.v0.3.0
        version: 0.3.0
      - name: ack-glue-controller.v0.2.2
        version: 0.2.2
      - name: ack-glue-controller.v0.2.1
        version: 0.2.1
      - name: ack-glue-controller.v0.2.0
        version: 0.2.0
      - name: ack-glue-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-glue-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Cisco
      provider-url: ""
    name: aci-containers-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aci-containers-operator.v1.0.11
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"aci.ctrl/v1alpha1","kind":"AciContainersOperator","metadata":{"name":"acicnioperator","namespace":"aci-containers-system"},"spec":{}}]'
          capabilities: Seamless Upgrades
          categories: Networking
          certified: "false"
          containerImage: quay.io/noiro/aci-containers-operator@sha256:73ceb1c96e68c2bd1c85feb495371b460329450d27e73818e76af1916dd412d6
          createdAt: "2025-11-12T12:00:00Z"
          description: The Cisco Application Centric Infrastructure (ACI) Containers
            Operator brings the ACI CNI Plugin and Policy model to Kubernetes clusters.
          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"
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://github.com/noironetworks/aci-containers/blob/master/README.md
          repository: https://github.com/noironetworks/aci-containers
          support: acisupport@cisco.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Aci Containers Operator
            displayName: AciContainersOperator
            kind: AciContainersOperator
            name: acicontainersoperators.aci.ctrl
            version: v1alpha1
        description: |
          ## ACI CNI Plugin

          The Cisco Application Centric Infrastructure (ACI) CNI plugin brings the ACI Networking and Policy model to Kubernetes clusters that reside on-prem or in the cloud. It is fully open source and relies on the Opflex Protocol to program Open vSwitch instances running on the Kubernetes nodes. It provides IP address management, L2/L3 networking, load balancing, and security functions for container workloads.

          The Cisco ACI CNI plugin for the Red Hat OpenShift Container Platform provides a single, programmable network infrastructure that eliminates bottlenecks between OpenShift workloads and the rest of the infrastructure while providing enterprise-grade security and offers flexible micro segmentation possibilities.

          Unified Networking - By extending the integrated overlay of the ACI fabric to OpenShift workloads, Pod and Service endpoints are managed as native ACI network resources at the same level as Bare Metal or Virtual Machines.

          No Egress Router Required - Applications running in OpenShift Pods that need high-bandwidth, low-latency traffic for data transfers external to the cluster suffer the bottleneck imposed by the egress router implementation. Pods can easily connect with other fabric or non-fabric endpoints leveraging the combined hardware and software distributed routing and switching provided by ACI and the ACI CNI plugin.

          Simplified Operations and Enhanced Visibility - Whether policies and networking are defined by the devops or fabric or security admins, the APIC becomes the single source of truth for operations and security governance. Kubernetes workload visibility is provided to Network Operators within their familiar Cisco tools.

          Hardware-assisted Load Balancing - Ingress connections to LoadBalancer-type services using ACI’s Policy Based Redirect technology moves load balancing into the fabric's hardware.

          Granular Security - Security can be implemented by using native NetworkPolicy or by using ACI EPGs and contracts, or both models complementing each other. Network policy of container workloads becomes a shared responsibility while ensuring global compliance and tenant constraints are enforced.
        displayName: Cisco ACI Containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cisco
        - aci
        links:
        - name: Cisco ACI Homepage
          url: https://www.cisco.com/c/en/us/td/docs/switches/datacenter/aci/apic/sw/kb/b_Kubernetes_Integration_with_ACI.html
        maintainers:
        - email: abhishs9@cisco.com
          name: 'Abhishek Sharma '
        - email: sumitnaiksatam@gmail.com
          name: Sumit Naiksatam
        - email: vlella@cisco.com
          name: Vishal Lella
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Cisco
        relatedImages:
        - registry.connect.redhat.com/noiro/aci-operator-bundle@sha256:07ff4b08266ebe5b5f897689a1253afc17805b2ba3e5c7de7b71358709466883
        - quay.io/noiro/acc-provision-operator@sha256:f4d1bff9c15e1ecbc8fec870c191669d3e75e2552d0070bd14908328f0924023
        - quay.io/noiro/aci-containers-operator@sha256:73ceb1c96e68c2bd1c85feb495371b460329450d27e73818e76af1916dd412d6
        version: 1.0.11
      entries:
      - name: aci-containers-operator.v1.0.11
        version: 1.0.11
      name: stable
    defaultChannel: stable
    packageName: aci-containers-operator
    provider:
      name: Cisco
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Harness Inc.
      provider-url: https://harness.io
    name: harness-gitops-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: harness-gitops-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "gitops.harness.io/v1alpha1",
                "kind": "GitopsAgent",
                "metadata": {
                  "annotations": {
                    "containerImage": "harness/gitops-agent-controller@sha256:e4342fb1599538d2b6145e644f1e302b2783a48347c53a1da7ec8e2454df5fde",
                    "createdAt": "2025-07-31T12:11:18Z"
                  },
                  "name": "gitops-agent-sample"
                },
                "spec": {
                  "identity": {
                    "accountIdentifier": "accountIdentifier",
                    "agentIdentifier": "agentIdentifier",
                    "agentName": "agentName"
                  },
                  "replicas": 1,
                  "secrets": {
                    "agentSecret": "agentSecret"
                  },
                  "target": {
                    "http": "https://app.harness.io/gitops/",
                    "protocol": "HTTP1"
                  },
                  "upgrade": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: harness/gitops-agent-controller@sha256:e4342fb1599538d2b6145e644f1e302b2783a48347c53a1da7ec8e2454df5fde
          createdAt: "2025-07-31T06:41:18Z"
          description: Harness operator to manage and provision GitOps Agent
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: Not required
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Harness Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Schema for the Gitops Agents API
            displayName: Gitops Agent
            kind: GitopsAgent
            name: gitopsagents.gitops.harness.io
            version: v1alpha1
        description: |-
          ## Overview
          Harness Gitops Operator manages the full lifecycle for [Gitops Agent](https://developer.harness.io/docs/continuous-delivery/gitops/connect-and-manage/install-a-harness-git-ops-agent/)

          The operator aims to provide the following:

            * Easy configuration and installation of Harness GitOps Agent.
            * Provide seamless upgrades for Harness GitOps Agent.
            * Monitoring and autorecovery for GitOps Agent.

          ## Usage
          Deploy gitops-agent in namespace where operator is installed with basic setup.

          ### Prerequisites:
            * Go to your Harness account and create a new gitops agent
            * Copy account, org and project identifiers
            * Retrieve the agent secret key

          ```
          apiVersion: gitops.harness.io/v1alpha1
          kind: GitopsAgent
          metadata:
            name: gitops-agent-sample
          spec:
            identity:
              accountIdentifier: accountIdentifier
              agentIdentifier: agentIdentifier
              agentName: agentName
            secrets:
              agentSecret: agentSecret
            target:
              http: https://app.harness.io/gitops/
              protocol: HTTP1
            replicas: 1
            upgrade:
              enabled: true
          ```
          **Note:** Gitops Agent require an active ArgoCD instance running in the same namespace where agent is installed.

          See [Harness Documentation](https://developer.harness.io/) for more information.
        displayName: Harness GitOps Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - harness
        - agent
        - cd
        - argocd
        - kubernetes
        links:
        - name: Harness Gitops Operator
          url: https://harness-gitops-operator.domain
        maintainers:
        - email: alexandru.bosii@harness.io
          name: Alexandru Bosii
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Harness Inc.
          url: https://harness.io
        relatedImages:
        - docker.io/harness/gitops-agent@sha256:c9f57338be294d32a73a4cbecf90dfff50f5d36a699f3ec32d962dcb64d8d085
        - harness/gitops-agent-controller@sha256:e4342fb1599538d2b6145e644f1e302b2783a48347c53a1da7ec8e2454df5fde
        - registry.connect.redhat.com/harness/gitops-operator@sha256:f97cdc2245b7133a04235c55540d3a87165e080b1d5b9572a663731f6ccbe597
        version: 0.3.0
      entries:
      - name: harness-gitops-operator.v0.3.0
        version: 0.3.0
      name: alpha
    defaultChannel: alpha
    packageName: harness-gitops-operator
    provider:
      name: Harness Inc.
      url: https://harness.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-secret-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: secret-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          description: Stackable Secret Operator
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/secret-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          This is a Kubernetes operator to provide secret functionality to other Stackable operators. The Stackable Secret Operator
          is part of the Stackable Data Platform, a curated selection of the best open source data apps like Kafka, Druid, Trino or Spark, all
          working together seamlessly. Based on Kubernetes, it runs everywhere - on prem or in the cloud.

          You can install the operator using [stackablectl or helm](https://docs.stackable.tech/home/stable/secret-operator/installation.html).

          NOTE: Make sure you install this operator in a namespace called "stackable-operators". Failing to do so will result in a broken installation.
        displayName: Stackable Secret Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secret
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/secret-operator@sha256:832b8c0b4900c51337ce9d1b631e3aea9bf221bcdbcf7b585b0fedaae77b5c87
        - quay.io/stackable/sig-storage/csi-node-driver-registrar@sha256:ab4a3289015f7de39c4dc987fa6183bcb157294a841c88fa842332ce66b068d8
        - quay.io/stackable/sig-storage/csi-provisioner@sha256:142e0b069dcc100671c91d66d8c973d56ea330b4e11ab79e5eb4fea5c79c6ecb
        - registry.connect.redhat.com/stackable/secret-operator@sha256:9e7955fccd149247741beb9eb6d30f519f262a847a8ba8310c8863a334cd4fee
        version: 25.11.0
      entries:
      - name: secret-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-secret-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: rebellions
      provider-url: https://rebellions.ai/
    name: rbln-npu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rbln-npu-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rebellions.ai/v1beta1",
                "kind": "RBLNClusterPolicy",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "rbln-npu-operator"
                  },
                  "name": "rbln-cluster-policy"
                },
                "spec": {
                  "daemonsets": {},
                  "devicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "rebellions/rbln-metrics-exporter",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "name": "rbln",
                  "npuFeatureDiscovery": {
                    "enabled": true,
                    "image": "rebellions/rbln-npu-feature-discovery",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM_PT",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest",
                    "vfioChecker": {
                      "image": "rebellions/rbln-vfio-manager",
                      "version": "latest"
                    }
                  },
                  "vfioManager": {
                    "enabled": true,
                    "image": "rebellions/rbln-vfio-manager",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "version": "latest"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
          createdAt: "2025-09-10T02:09:06Z"
          description: Deploy and manage Rebellions NPU in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Rebellions
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RBLNClusterPolicy is the Schema for the RBLNClusterPolicys
              API
            displayName: RBLNCluster Policy
            kind: RBLNClusterPolicy
            name: rblnclusterpolicies.rebellions.ai
            version: v1beta1
        description: RBLN Operator automates the deployment and management of RBLN
          NPU drivers, device plugins, CRDs, firmware updates, and health monitoring
          for seamless integration into Kubernetes.
        displayName: RBLN operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rebellions
        - ai
        - AI
        - NPU
        - AI acceleration
        - ML inference
        links:
        - name: Rbln K8s Operator
          url: https://rbln-npu-operator.domain
        maintainers:
        - email: heesu.sung@rebellions.ai
          name: heesu.sung
        - email: mskim@rebellions.ai
          name: minsik.kim
        maturity: stable
        minKubeVersion: 1.30.0
        provider:
          name: rebellions
          url: https://rebellions.ai/
        relatedImages:
        - docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
        - docker.io/rebellions/rbln-vfio-manager@sha256:308baaa997eda83db530c1631e2ce097df79d2efda818ee85b330a0934113048
        - registry.connect.redhat.com/rebellions/rbln-npu-operator-bundle@sha256:f9283bccc4acc424f6abd9bea9d0f64ce7c8940aebccbfc8effcf4d87457b310
        - docker.io/rebellions/k8s-device-plugin@sha256:05ef97d5cb3678f33b833c57a3de1e417a8e4f58c098c8ffc7bc85682a820f86
        - docker.io/rebellions/rbln-metrics-exporter@sha256:f696d75b40e948cad25a1bc14c43e256463acb55477a7787b1be4e7086908240
        - docker.io/rebellions/rbln-npu-feature-discovery@sha256:02ea11356b04e05d2dbbdd7b60286aec239e846e4beb26fdf515f61535b3e885
        version: 0.0.3
      entries:
      - name: rbln-npu-operator.v0.0.3
        version: 0.0.3
      name: candidate
    - currentCSV: rbln-npu-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rebellions.ai/v1beta1",
                "kind": "RBLNClusterPolicy",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "rbln-npu-operator"
                  },
                  "name": "rbln-cluster-policy"
                },
                "spec": {
                  "daemonsets": {},
                  "devicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "rebellions/rbln-metrics-exporter",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "name": "rbln",
                  "npuFeatureDiscovery": {
                    "enabled": true,
                    "image": "rebellions/rbln-npu-feature-discovery",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM_PT",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest",
                    "vfioChecker": {
                      "image": "rebellions/rbln-vfio-manager",
                      "version": "latest"
                    }
                  },
                  "vfioManager": {
                    "enabled": true,
                    "image": "rebellions/rbln-vfio-manager",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "version": "latest"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
          createdAt: "2025-09-10T02:09:06Z"
          description: Deploy and manage Rebellions NPU in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Rebellions
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RBLNClusterPolicy is the Schema for the RBLNClusterPolicys
              API
            displayName: RBLNCluster Policy
            kind: RBLNClusterPolicy
            name: rblnclusterpolicies.rebellions.ai
            version: v1beta1
        description: RBLN Operator automates the deployment and management of RBLN
          NPU drivers, device plugins, CRDs, firmware updates, and health monitoring
          for seamless integration into Kubernetes.
        displayName: RBLN operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rebellions
        - ai
        - AI
        - NPU
        - AI acceleration
        - ML inference
        links:
        - name: Rbln K8s Operator
          url: https://rbln-npu-operator.domain
        maintainers:
        - email: heesu.sung@rebellions.ai
          name: heesu.sung
        - email: mskim@rebellions.ai
          name: minsik.kim
        maturity: stable
        minKubeVersion: 1.30.0
        provider:
          name: rebellions
          url: https://rebellions.ai/
        relatedImages:
        - registry.connect.redhat.com/rebellions/rbln-npu-operator-bundle@sha256:f9283bccc4acc424f6abd9bea9d0f64ce7c8940aebccbfc8effcf4d87457b310
        - docker.io/rebellions/k8s-device-plugin@sha256:05ef97d5cb3678f33b833c57a3de1e417a8e4f58c098c8ffc7bc85682a820f86
        - docker.io/rebellions/rbln-metrics-exporter@sha256:f696d75b40e948cad25a1bc14c43e256463acb55477a7787b1be4e7086908240
        - docker.io/rebellions/rbln-npu-feature-discovery@sha256:02ea11356b04e05d2dbbdd7b60286aec239e846e4beb26fdf515f61535b3e885
        - docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
        - docker.io/rebellions/rbln-vfio-manager@sha256:308baaa997eda83db530c1631e2ce097df79d2efda818ee85b330a0934113048
        version: 0.0.3
      entries:
      - name: rbln-npu-operator.v0.0.3
        version: 0.0.3
      name: fast
    - currentCSV: rbln-npu-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rebellions.ai/v1beta1",
                "kind": "RBLNClusterPolicy",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "rbln-npu-operator"
                  },
                  "name": "rbln-cluster-policy"
                },
                "spec": {
                  "daemonsets": {},
                  "devicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "rebellions/rbln-metrics-exporter",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "name": "rbln",
                  "npuFeatureDiscovery": {
                    "enabled": true,
                    "image": "rebellions/rbln-npu-feature-discovery",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM_PT",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest",
                    "vfioChecker": {
                      "image": "rebellions/rbln-vfio-manager",
                      "version": "latest"
                    }
                  },
                  "vfioManager": {
                    "enabled": true,
                    "image": "rebellions/rbln-vfio-manager",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "version": "latest"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
          createdAt: "2025-09-10T02:09:06Z"
          description: Deploy and manage Rebellions NPU in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Rebellions
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RBLNClusterPolicy is the Schema for the RBLNClusterPolicys
              API
            displayName: RBLNCluster Policy
            kind: RBLNClusterPolicy
            name: rblnclusterpolicies.rebellions.ai
            version: v1beta1
        description: RBLN Operator automates the deployment and management of RBLN
          NPU drivers, device plugins, CRDs, firmware updates, and health monitoring
          for seamless integration into Kubernetes.
        displayName: RBLN operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rebellions
        - ai
        - AI
        - NPU
        - AI acceleration
        - ML inference
        links:
        - name: Rbln K8s Operator
          url: https://rbln-npu-operator.domain
        maintainers:
        - email: heesu.sung@rebellions.ai
          name: heesu.sung
        - email: mskim@rebellions.ai
          name: minsik.kim
        maturity: stable
        minKubeVersion: 1.30.0
        provider:
          name: rebellions
          url: https://rebellions.ai/
        relatedImages:
        - docker.io/rebellions/rbln-metrics-exporter@sha256:f696d75b40e948cad25a1bc14c43e256463acb55477a7787b1be4e7086908240
        - docker.io/rebellions/rbln-npu-feature-discovery@sha256:02ea11356b04e05d2dbbdd7b60286aec239e846e4beb26fdf515f61535b3e885
        - docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
        - docker.io/rebellions/rbln-vfio-manager@sha256:308baaa997eda83db530c1631e2ce097df79d2efda818ee85b330a0934113048
        - registry.connect.redhat.com/rebellions/rbln-npu-operator-bundle@sha256:f9283bccc4acc424f6abd9bea9d0f64ce7c8940aebccbfc8effcf4d87457b310
        - docker.io/rebellions/k8s-device-plugin@sha256:05ef97d5cb3678f33b833c57a3de1e417a8e4f58c098c8ffc7bc85682a820f86
        version: 0.0.3
      entries:
      - name: rbln-npu-operator.v0.0.3
        version: 0.0.3
      name: stable
    defaultChannel: stable
    packageName: rbln-npu-operator
    provider:
      name: rebellions
      url: https://rebellions.ai/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Portworx by PureStorage
      provider-url: ""
    name: portworx-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: portworx-operator.v25.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageCluster",
                "metadata": {
                  "name": "portworx",
                  "namespace": "test-operator",
                  "annotations": {
                    "portworx.io/is-openshift": "true"
                  }
                },
                "spec": {}
              },
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageNode",
                "metadata": {
                  "name": "example",
                  "namespace": "test-operator"
                },
                "spec": {}
              }
            ]
          capabilities: Auto Pilot
          categories: Storage
          certified: "true"
          console.openshift.io/plugins: '["portworx"]'
          containerImage: registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
          createdAt: "2026-01-06T19:58:49Z"
          description: Cloud native storage solution for production workloads
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "core.libopenstorage.org/v1",
              "kind": "StorageCluster",
              "metadata": {
                "name": "portworx",
                "annotations": {
                  "portworx.io/is-openshift": "true"
                }
              }
            }
          support: Portworx, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Storage Cluster installs Portworx in the cluster. It has
              all the necessary configurations to setup and update a Portworx cluster.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.core.libopenstorage.org
            version: v1
          - description: Do not create Storage Node as it is internally created by
              the operator. It represents the status of a Portworx node.
            displayName: Storage Node
            kind: StorageNode
            name: storagenodes.core.libopenstorage.org
            version: v1
        description: |
          Portworx-Enterprise is the most widely-used and reliable cloud-native
          storage solution for production workloads and provides high-availability,
          data protection and security for containerized applications.

          Portworx Enterprise enables you to migrate entire applications, including
          data, between clusters in a single data center or cloud, or between clouds,
          with a single kubectl command.

          The cloud native storage and data management platform that enterprises trust
          to manage data in containers now has an operator which simplifies the install,
          configuration, upgrades and manages the Portworx Enterprise cluster lifecycle.

          Learn more about the Portworx Enterprise
          [the data platform for Kubernetes](https://portworx.com/products/introduction)

          To learn more about the platform features, please visit our
          [product features page](https://portworx.com/products/features)

          ### About Portworx

          Portworx is the solution for running stateful containers in production,
          designed with DevOps in mind. With Portworx, users can manage any database
          or stateful service on any infrastructure using any container scheduler,
          including Kubernetes, Mesosphere DC/OS, and Docker Swarm. Portworx solves
          the five most common problems DevOps teams encounter when running stateful
          services in production: persistence, high availability, data automation,
          security, and support for multiple data stores and infrastructure.

          ### How to install StorageCluster

          To customize your cluster's configuration (specification), use the
          [Spec Generator](https://central.portworx.com/) from PX-Central.

          ### Prerequisite

          Ensure ports 17001-17020 on worker nodes are reachable from master and other worker nodes.

          ### Tutorials

          * [Portworx Enterprise on Openshift](https://portworx.com/openshift)

          * [Stateful applications on Kubernetes](https://docs.portworx.com/portworx-enterprise/concepts/kubernetes-storage-101/applications)

          * [Portworx Enterprise on Kubernetes](https://docs.portworx.com/portworx-install-with-kubernetes)

          * [Kafka on Kubernetes](https://portworx.com/kafka-kubernetes)

          * [Elastisearch on Kubernetes](https://portworx.com/elasticsearch-kubernetes)

          * [PostgreSQL on Kubernetes](https://portworx.com/postgres-kubernetes/)

          * [MongoDB on Kubernetes](https://portworx.com/mongodb-kubernetes/)

          * [Cassandra on Kubernetes](https://portworx.com/cassandra-kubernetes/)

          * [Kubernetes backup and recovery](https://portworx.com/kubernetes-backup/)

          * [Disaster Recovery for Kubernetes](https://portworx.com/kubernetes-disaster-recovery/)

          ### Uninstall

          Deleting the StorageCluster object for Portworx cluster does not stop Portworx
          service running on the nodes, to avoid application downtime.

          To uninstall Portworx completely without wiping the data, you should add the
          following delete strategy to the StorageCluster spec:
          ```
          spec:
            deleteStrategy:
              type: Uninstall
          ```
          **Caution:** To uninstall Portworx and **wipe all the data**, you should use the following
          delete strategy:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndWipe
          ```
          **Note:** Starting with Operator version 25.5.0 and Portworx version 3.5.0, you can also use the following delete strategy
          to uninstall Portworx, **wipe all the data**, and **delete the drives**:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndDelete
          ```
        displayName: Portworx Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - portworx
        - persistent storage
        - storage
        - cloud native
        - open source
        links:
        - name: Product Features
          url: https://portworx.com/products/features
        - name: Documentation
          url: https://docs.portworx.com/portworx-enterprise/platform/openshift
        - name: Support
          url: https://docs.portworx.com/portworx-enterprise/support/contact-support
        - name: Source Code
          url: https://github.com/libopenstorage/operator
        maintainers:
        - email: support@portworx.com
          name: Portworx
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Portworx by PureStorage
        relatedImages:
        - registry.connect.redhat.com/portworx/portworx-certified-bundle@sha256:6864d81f92272c5a9b865211b745170a3ecacfe43d8bd597e91b84e1a3774fa8
        - registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
        version: 25.5.1
      entries:
      - name: portworx-operator.v25.5.1
        version: 25.5.1
      - name: portworx-operator.v25.5.0
        version: 25.5.0
      - name: portworx-operator.v25.4.0
        version: 25.4.0
      - name: portworx-operator.v25.3.1
        version: 25.3.1
      - name: portworx-operator.v25.3.0
        version: 25.3.0
      - name: portworx-operator.v25.2.2
        version: 25.2.2
      - name: portworx-operator.v25.2.1
        version: 25.2.1
      - name: portworx-operator.v25.2.0
        version: 25.2.0
      - name: portworx-operator.v24.2.4
        version: 24.2.4
      - name: portworx-operator.v24.2.3
        version: 24.2.3
      - name: portworx-operator.v24.2.2
        version: 24.2.2
      - name: portworx-operator.v24.2.1
        version: 24.2.1
      - name: portworx-operator.v24.2.0
        version: 24.2.0
      - name: portworx-operator.v24.1.3
        version: 24.1.3
      - name: portworx-operator.v24.1.2
        version: 24.1.2
      - name: portworx-operator.v24.1.1
        version: 24.1.1
      - name: portworx-operator.v24.1.0
        version: 24.1.0
      - name: portworx-operator.v23.10.5
        version: 23.10.5
      - name: portworx-operator.v23.10.4
        version: 23.10.4
      - name: portworx-operator.v23.10.3
        version: 23.10.3
      - name: portworx-operator.v23.10.2
        version: 23.10.2
      - name: portworx-operator.v23.10.1
        version: 23.10.1
      - name: portworx-operator.v23.7.0
        version: 23.7.0
      - name: portworx-operator.v23.5.1
        version: 23.5.1
      - name: portworx-operator.v23.5.0
        version: 23.5.0
      - name: portworx-operator.v23.4.0
        version: 23.4.0
      - name: portworx-operator.v23.3.1
        version: 23.3.1
      - name: portworx-operator.v23.3.0
        version: 23.3.0
      - name: portworx-operator.v1.10.5
        version: 1.10.5
      - name: portworx-operator.v1.10.4
        version: 1.10.4
      - name: portworx-operator.v1.10.3
        version: 1.10.3
      - name: portworx-operator.v1.10.2
        version: 1.10.2
      - name: portworx-operator.v1.10.1
        version: 1.10.1
      - name: portworx-operator.v1.10.0
        version: 1.10.0
      - name: portworx-operator.v1.9.1
        version: 1.9.1
      - name: portworx-operator.v1.9.0
        version: 1.9.0
      - name: portworx-operator.v1.8.1
        version: 1.8.1
      - name: portworx-operator.v1.8.0
        version: 1.8.0
      - name: portworx-operator.v1.7.1
        version: 1.7.1
      - name: portworx-operator.v1.6.1
        version: 1.6.1
      name: alpha
    - currentCSV: portworx-operator.v25.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageCluster",
                "metadata": {
                  "name": "portworx",
                  "namespace": "test-operator",
                  "annotations": {
                    "portworx.io/is-openshift": "true"
                  }
                },
                "spec": {}
              },
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageNode",
                "metadata": {
                  "name": "example",
                  "namespace": "test-operator"
                },
                "spec": {}
              }
            ]
          capabilities: Auto Pilot
          categories: Storage
          certified: "true"
          console.openshift.io/plugins: '["portworx"]'
          containerImage: registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
          createdAt: "2026-01-06T19:58:49Z"
          description: Cloud native storage solution for production workloads
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "core.libopenstorage.org/v1",
              "kind": "StorageCluster",
              "metadata": {
                "name": "portworx",
                "annotations": {
                  "portworx.io/is-openshift": "true"
                }
              }
            }
          support: Portworx, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Storage Cluster installs Portworx in the cluster. It has
              all the necessary configurations to setup and update a Portworx cluster.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.core.libopenstorage.org
            version: v1
          - description: Do not create Storage Node as it is internally created by
              the operator. It represents the status of a Portworx node.
            displayName: Storage Node
            kind: StorageNode
            name: storagenodes.core.libopenstorage.org
            version: v1
        description: |
          Portworx-Enterprise is the most widely-used and reliable cloud-native
          storage solution for production workloads and provides high-availability,
          data protection and security for containerized applications.

          Portworx Enterprise enables you to migrate entire applications, including
          data, between clusters in a single data center or cloud, or between clouds,
          with a single kubectl command.

          The cloud native storage and data management platform that enterprises trust
          to manage data in containers now has an operator which simplifies the install,
          configuration, upgrades and manages the Portworx Enterprise cluster lifecycle.

          Learn more about the Portworx Enterprise
          [the data platform for Kubernetes](https://portworx.com/products/introduction)

          To learn more about the platform features, please visit our
          [product features page](https://portworx.com/products/features)

          ### About Portworx

          Portworx is the solution for running stateful containers in production,
          designed with DevOps in mind. With Portworx, users can manage any database
          or stateful service on any infrastructure using any container scheduler,
          including Kubernetes, Mesosphere DC/OS, and Docker Swarm. Portworx solves
          the five most common problems DevOps teams encounter when running stateful
          services in production: persistence, high availability, data automation,
          security, and support for multiple data stores and infrastructure.

          ### How to install StorageCluster

          To customize your cluster's configuration (specification), use the
          [Spec Generator](https://central.portworx.com/) from PX-Central.

          ### Prerequisite

          Ensure ports 17001-17020 on worker nodes are reachable from master and other worker nodes.

          ### Tutorials

          * [Portworx Enterprise on Openshift](https://portworx.com/openshift)

          * [Stateful applications on Kubernetes](https://docs.portworx.com/portworx-enterprise/concepts/kubernetes-storage-101/applications)

          * [Portworx Enterprise on Kubernetes](https://docs.portworx.com/portworx-install-with-kubernetes)

          * [Kafka on Kubernetes](https://portworx.com/kafka-kubernetes)

          * [Elastisearch on Kubernetes](https://portworx.com/elasticsearch-kubernetes)

          * [PostgreSQL on Kubernetes](https://portworx.com/postgres-kubernetes/)

          * [MongoDB on Kubernetes](https://portworx.com/mongodb-kubernetes/)

          * [Cassandra on Kubernetes](https://portworx.com/cassandra-kubernetes/)

          * [Kubernetes backup and recovery](https://portworx.com/kubernetes-backup/)

          * [Disaster Recovery for Kubernetes](https://portworx.com/kubernetes-disaster-recovery/)

          ### Uninstall

          Deleting the StorageCluster object for Portworx cluster does not stop Portworx
          service running on the nodes, to avoid application downtime.

          To uninstall Portworx completely without wiping the data, you should add the
          following delete strategy to the StorageCluster spec:
          ```
          spec:
            deleteStrategy:
              type: Uninstall
          ```
          **Caution:** To uninstall Portworx and **wipe all the data**, you should use the following
          delete strategy:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndWipe
          ```
          **Note:** Starting with Operator version 25.5.0 and Portworx version 3.5.0, you can also use the following delete strategy
          to uninstall Portworx, **wipe all the data**, and **delete the drives**:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndDelete
          ```
        displayName: Portworx Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - portworx
        - persistent storage
        - storage
        - cloud native
        - open source
        links:
        - name: Product Features
          url: https://portworx.com/products/features
        - name: Documentation
          url: https://docs.portworx.com/portworx-enterprise/platform/openshift
        - name: Support
          url: https://docs.portworx.com/portworx-enterprise/support/contact-support
        - name: Source Code
          url: https://github.com/libopenstorage/operator
        maintainers:
        - email: support@portworx.com
          name: Portworx
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Portworx by PureStorage
        relatedImages:
        - registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
        - registry.connect.redhat.com/portworx/portworx-certified-bundle@sha256:6864d81f92272c5a9b865211b745170a3ecacfe43d8bd597e91b84e1a3774fa8
        version: 25.5.1
      entries:
      - name: portworx-operator.v25.5.1
        version: 25.5.1
      - name: portworx-operator.v25.5.0
        version: 25.5.0
      - name: portworx-operator.v25.4.0
        version: 25.4.0
      - name: portworx-operator.v25.3.1
        version: 25.3.1
      - name: portworx-operator.v25.3.0
        version: 25.3.0
      - name: portworx-operator.v25.2.2
        version: 25.2.2
      - name: portworx-operator.v25.2.1
        version: 25.2.1
      - name: portworx-operator.v25.2.0
        version: 25.2.0
      - name: portworx-operator.v24.2.4
        version: 24.2.4
      - name: portworx-operator.v24.2.3
        version: 24.2.3
      - name: portworx-operator.v24.2.2
        version: 24.2.2
      - name: portworx-operator.v24.2.1
        version: 24.2.1
      - name: portworx-operator.v24.2.0
        version: 24.2.0
      - name: portworx-operator.v24.1.3
        version: 24.1.3
      - name: portworx-operator.v24.1.2
        version: 24.1.2
      - name: portworx-operator.v24.1.1
        version: 24.1.1
      - name: portworx-operator.v24.1.0
        version: 24.1.0
      - name: portworx-operator.v23.10.5
        version: 23.10.5
      - name: portworx-operator.v23.10.4
        version: 23.10.4
      - name: portworx-operator.v23.10.3
        version: 23.10.3
      - name: portworx-operator.v23.10.2
        version: 23.10.2
      - name: portworx-operator.v23.10.1
        version: 23.10.1
      - name: portworx-operator.v23.7.0
        version: 23.7.0
      - name: portworx-operator.v23.5.1
        version: 23.5.1
      - name: portworx-operator.v23.5.0
        version: 23.5.0
      - name: portworx-operator.v23.4.0
        version: 23.4.0
      - name: portworx-operator.v23.3.1
        version: 23.3.1
      - name: portworx-operator.v23.3.0
        version: 23.3.0
      - name: portworx-operator.v1.10.5
        version: 1.10.5
      - name: portworx-operator.v1.10.4
        version: 1.10.4
      - name: portworx-operator.v1.10.3
        version: 1.10.3
      - name: portworx-operator.v1.10.2
        version: 1.10.2
      - name: portworx-operator.v1.10.1
        version: 1.10.1
      - name: portworx-operator.v1.10.0
        version: 1.10.0
      - name: portworx-operator.v1.9.1
        version: 1.9.1
      - name: portworx-operator.v1.9.0
        version: 1.9.0
      - name: portworx-operator.v1.8.1
        version: 1.8.1
      - name: portworx-operator.v1.8.0
        version: 1.8.0
      - name: portworx-operator.v1.7.1
        version: 1.7.1
      - name: portworx-operator.v1.6.1
        version: 1.6.1
      name: stable
    defaultChannel: stable
    packageName: portworx-certified
    provider:
      name: Portworx by PureStorage
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: koku-metrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: koku-metrics-operator.v4.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
                "kind": "CostManagementMetricsConfig",
                "metadata": {
                  "name": "costmanagementmetricscfg-sample-v1beta1"
                },
                "spec": {
                  "authentication": {
                    "type": "token"
                  },
                  "packaging": {
                    "max_reports_to_store": 30,
                    "max_size_MB": 100
                  },
                  "prometheus_config": {
                    "collect_previous_data": true,
                    "context_timeout": 120,
                    "disable_metrics_collection_cost_management": false,
                    "disable_metrics_collection_resource_optimization": false
                  },
                  "source": {
                    "check_cycle": 1440,
                    "create_source": false,
                    "name": ""
                  },
                  "upload": {
                    "upload_cycle": 360,
                    "upload_toggle": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
          createdAt: "2025-10-29T15:49:19Z"
          description: A Golang-based OpenShift Operator that generates and uploads
            OpenShift usage metrics to cost management.
          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: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
              "kind": "CostManagementMetricsConfig",
              "metadata": {
                "name": "costmanagementmetricscfg-sample-v1beta1"
              },
              "spec": {
                "authentication": {
                  "token_url": "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token",
                  "type": "token"
                },
                "api_url": "https://console.redhat.com/",
                "packaging": {
                  "max_reports_to_store": 30,
                  "max_size_MB": 100
                },
                "upload": {
                  "ingress_path": "/api/ingress/v1/upload",
                  "upload_cycle": 360,
                  "upload_toggle": true,
                  "validate_cert": true
                },
                "prometheus_config": {
                  "collect_previous_data": true,
                  "context_timeout": 120,
                  "disable_metrics_collection_cost_management": false,
                  "disable_metrics_collection_resource_optimization": false,
                  "service_address": "https://thanos-querier.openshift-monitoring.svc:9091",
                  "skip_tls_verification": false
                },
                "source": {
                  "check_cycle": 1440,
                  "create_source": false,
                  "name": "",
                  "sources_path": "/api/sources/v1.0/"
                }
              }
            }
          operatorframework.io/suggested-namespace: koku-metrics-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/project-koku/koku-metrics-operator
          support: Cost Management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CostManagementMetricsConfig is the Schema for the costmanagementmetricsconfig
              API
            displayName: Cost Management Metrics Config
            kind: CostManagementMetricsConfig
            name: costmanagementmetricsconfigs.costmanagement-metrics-cfg.openshift.io
            version: v1beta1
        description: |
          # Koku Metrics Operator
          ## Introduction
          The `koku-metrics-operator` is a component of the [cost managment](https://access.redhat.com/documentation/en-us/cost_management_service) service for Openshift. The operator runs on the latest supported versions of Openshift. This operator obtains OpenShift usage data by querying Prometheus every hour to create metric reports that it uploads to Cost Management at [console.redhat.com](https://console.redhat.com) to be processed. For more information, reach out to <costmanagement@redhat.com>.

          This operator is capable of functioning within a disconnected/restricted network (aka air-gapped mode). In this mode, the operator will store the packaged reports for manual retrieval instead of being uploaded to Cost Management. Documentation for installing an operator within a restricted network can be found [here](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html).

          ## Features and Capabilities
          #### Metrics collection:
          The Koku Metrics Operator (`koku-metrics-operator`) collects the metrics required for Cost Management by:
          * Querying Prometheus to gather the necessary metrics for Cost Management.
          * Writing the results of Prometheus queries to CSV report files.
          * Packaging the CSV report files into tarballs.

          #### Additional Capabilities:
          * Resource Optimization metrics collection.
          * The operator can be configured to gather all previous data within the configured retention period or a maximum of 90 days. The default data collection period is the 14 previous days. This setting is only applicable to newly created KokuMetricsConfigs.
          * The operator can be configured to automatically upload the packaged reports to Cost Management through Red Hat Insights Ingress service.
          * The operator can create an integration in console.redhat.com. An integration is required for Cost Management to process the uploaded packages.
          * PersistentVolumeClaim (PVC) configuration: The KokuMetricsConfig CR can accept a PVC definition and the operator will create and mount the PVC. If one is not provided, a default PVC will be created.
          * Restricted network installation: this operator can function on a restricted network. In this mode, the operator stores the packaged reports for manual retrieval.

          ## New in v4.3.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for cost management.

          ## New in v4.2.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for resource optimization.
          * (Bugfix) Fixed custom CA certificate validation and configuration issues.
          * (Bugfix) Fixed issue where ROS queries were missing workload metadata for namespaces labeled only with the legacy `insights_cost_management_optimizations` label.

          ## New in v4.1.0:
          * Enabled gathering and reporting namespace metrics to provide more granular data for resource optimization.
          * Updated CSV report filenames to be more descriptive, replacing the previous generic UID-based names with content-reflective names.
          * Introduced a new generic label, `cost_management_optimizations`, for resource optimization while ensuring backward compatibility with the older `insights_cost_management_optimizations` label.

          ## New in v4.0.0:
          * **Virtual Machine Metrics:** Adds capabilities for collecting metrics and generating reports for running virtual machines within your OpenShift environment.
          * **Progress towards FIPS 140 Compliance:** The operator is using the Go Cryptographic Module v1.0.0 to progress toward FIPS 140 compliance. Although this module is not validated at the time of this release, the operator aims to meet stricter security standards when the module does successfully achieve FIPS validation.
          * **API Name Change:** The Custom Resource Definition (CRD) for configuring the upstream `Koku Metrics Operator` was renamed from `KokuMetricsConfig` to `CostManagementMetricsConfig`.

          ### NOTE:
            * The API name change impacts only users of the upstream (community) Koku Metrics Operator.
            * The downstream (Red Hat-supported) Cost Management Metrics Operator is not impacted by this change and users should continue using their existing configurations.

          **Important Upgrade Instructions:**

            If you are upgrading the upstream Koku Metrics Operator to version 4.0.0 or higher, you must manually migrate your configuration. The operator will no longer recognize existing `KokuMetricsConfig` resources.

            To successfully upgrade and retain your operator's configuration, complete the following steps. You can use the provided `oc` commands replacing the angle brackets (`< >`) with your specific values:

            1. Backup existing configuration (recommended):

               Before you upgrade, retrieve the details of your current `KokuMetricsConfig` instance to help you recreate it with the new API name.

               ```
               oc get kokumetricsconfig -n koku-metrics-operator <your-config-name> -o yaml > koku-metrics-config-backup.yaml
               ```

            2. Delete the previous `KokuMetricsConfig` instance (recommended):

                After the operator is upgraded to `version 4.0.0`, delete any existing `KokuMetricsConfig` resources.

                ```
                oc delete kokumetricsconfig -n koku-metrics-operator <your-config-name>
                ```

            3. Create the new `CostManagementMetricsConfig` instance:

                Using the information from your backup (or a new configuration), create a new `CostManagementMetricsConfig` instance. Adjust the spec section based on your specific needs. For more information about configurations, [refer to the configurable parameters](#configurable-parameters).

            4. Apply your new configuration:

                ```
                oc apply -f <your-costmanagementmetricsconfig-file>.yaml -n koku-metrics-operator
                ```

          ## New in v3.3.2:
          * Leader election settings are now configurable via environment variables. These variables can be modified in the operator [Subscription](https://github.com/operator-framework/operator-lifecycle-manager/blob/5a01f50258003e248bd5630df0837fe0bb0f1cb7/doc/design/subscription-config.md). The values should be specified as durations in seconds in the format `<number-of-seconds>s`. The default values for `LEADER_ELECTION_LEASE_DURATION`, `LEADER_ELECTION_RENEW_DEADLINE`, and `LEADER_ELECTION_RETRY_PERIOD` are '60s', '30s', and '5s', respectively.

            ```
            kind: Subscription
            metadata:
            ...
            spec:
              ...
              config:
                env:
                - name: LEADER_ELECTION_LEASE_DURATION
                  value: "60s"
                - name: LEADER_ELECTION_RENEW_DEADLINE
                  value: "30s"
                - name: LEADER_ELECTION_RETRY_PERIOD
                  value: "5s"
            ```

          ## New in v3.3.1:
          * Optimize memory usage when reading CSV files.

          ## New in v3.3.0:
          * Storage reports now contain `node`, `csi_driver`, and `csi_volume_handle` fields.
          * The PVC capacity is now populated using the `kube_persistentvolume_capacity_bytes` metric instead of `kubelet_volume_stats_capacity_bytes`.
          * To receive resource optimization recommendations for your namespaces, you must now first enable each namespace. To enable a namespace, label it with `insights_cost_management_optimizations='true'`. In the CLI, run:
            ```
              oc label namespace NAMESPACE insights_cost_management_optimizations="true" --overwrite=true
            ```
          * __DEPRECATION NOTICE__: Basic authentication is deprecated and will not be supported beyond December 31, 2024. If the default token authentication method cannot be used, you must switch to [service account](https://console.redhat.com/iam/service-accounts) authentication ([more on creating a service account](https://access.redhat.com/articles/7036194)). Once you have created your service account, follow [this documentation](https://access.redhat.com/documentation/en-us/cost_management_service/1-latest/html-single/integrating_openshift_container_platform_data_into_cost_management/index#service-account-authentication_adding-an-ocp-int) on how to configure your operator to use service account authentication. Service-accounts must also be used if manually uploading payloads to console.redhat.com.

          ## New in v3.2.1:
          * The minimum supported configuration for `upload_cycle` is now 60 (minutes).
          * (Bugfix) many-to-many matching not allowed query fix.
          * (Bugfix) Sequentially collect data during initial install.

          ## New in v3.2.0:
          * Support for amd64, arm64, ppc64le, s390x architectures.
          * add liveness and readiness probes to controller Pod.
          * update pod security settings so that the controller Pod can run in Restricted mode [more info](https://sdk.operatorframework.io/docs/best-practices/pod-security-standards/).

          ## New in v3.1.0:
          * Add service-account authentication type.
          * __Deprecation Notice:__ Basic authentication is deprecated and will be removed in a future version of the operator.

          ## New in v3.0.0:
          * Daily report generation: Operator versions prior to v3.0.0 generated sequential reports. Now, reports are generated starting at 0:00 UTC. Any payloads generated throughout a given day will contain all data starting from 0:00 UTC. Once the next day starts, the previous day's reports are packaged, and the new report again starts at 0:00 UTC for the current day.
          * Failed query retry: In an attempt to prevent missing data, the operator will retry queries from the last successful query time, up to 5 times.

          ## New in v2.0.0:
          * Adds metrics and report generation for resource optimization. This feature will collect additional usage metrics and create a new report in the payload. These metrics are enabled by default, but can be disabled by setting `disable_metrics_collection_resource_optimization` to `true`.
          * Collect all available Prometheus data upon CR creation. This feature only applies to newly created KokuMetricsConfigs. The operator will check the monitoring stack configuration in the `openshift-monitoring` namespace. The operator will use the `retention` period set in the `cluster-monitoring-config` ConfigMap if defined, up to a maximum of 90 days. Otherwise it will fall back to collecting 14 days of data, if available. This data collection may be disabled by setting `collect_previous_data` to `false`. Turning this feature off results in the operator collecting metrics from the time the KokuMetricsConfig is created, forward.

          ## Limitations and Pre-Requisites
          #### Limitations (Potential for metrics data loss)
          * An integration **must** exist in console.redhat.com for an uploaded payload to be processed by Cost Management. The operator sends the payload to the Red Hat Insights Ingress service which usually returns successfully, but the operator does not currently confirm with Cost Management that the payload was processed. After Ingress accepts the uploaded payload, it is deleted from the operator. If the data within the payload is not processed, a gap will be introduced in the usage metrics. Data may be recollected by deleting the `KokuMetricsConfig`, creating a new `KokuMetricsConfig`, and setting `collect_previous_data: true`. This re-collection of data will gather all data stored in Prometheus, up to 90 days.

          **Note** The following limitations are specific to operators configured to run in a restricted network:
          * The `koku-metrics-operator` will not be able to generate new reports if the PVC storage is full. If this occurs, the reports must be manually deleted from the PVC so that the operator can function as normal.
          * The default report retention is 30 reports (about one week's worth of data). The reports must be manually downloaded and uploaded to console.redhat.com every week, or they will be deleted and the data will be lost.

          #### Storage configuration prerequisite
          The operator will attempt to create and use the following PVC when installed:

                volume_claim_template:
                  apiVersion: v1
                  kind: PersistentVolumeClaim
                  metadata:
                    name: koku-metrics-operator-data
                  spec:
                    accessModes:
                      - ReadWriteOnce
                    resources:
                      requests:
                        storage: 10Gi

          If a different PVC should be utilized, a valid PVC should be specified in the KokuMetricsConfig CR as described in the appropriate section below. The PVC to be used may exist already, or the operator will attempt to create it.

          To use the default specification, the follow assumptions must be met:
          1. A default StorageClass is defined.
          2. Dynamic provisioning for that default StorageClass is enabled.

          If these assumptions are not met, the operator will not deploy correctly. In these cases, storage must be manually configured. After configuring storage, a valid PVC template should be supplied in the `volume_claim_template` spec of the KokuMetricsConfig CR.

          ## Configurable parameters:
            * `authentication`:
              * `type: token` -> The authentication method for connecting to `console.redhat.com`. The default and preferred method is `token`. `basic` (deprecated) and `service-account` authentication methods are used when the openshift-config pull-secret does not contain a token for `console.redhat.com`.
              * `secret_name` -> The Secret used by the operator when the authentication type is `basic` (deprecated) or `service-account`. This parameter is required **only if** the authentication type is `basic` (deprecated) or `service-account`.
            * `packaging`:
              * `max_reports_to_store: 30` -> The number of reports to store when configured in air-gapped mode. The default is 30, with a minimum of 1 and no maximum. When the operator is not configured in air-gapped mode, this parameter has no effect. Reports are removed as soon as they are uploaded.
              * `max_size: 100` -> The maximum size for packaged files in Megabytes prior to compression. The default is 100, with a minimum of 1 and maximum of 100.
            * `prometheus_config`:
              * `collect_previous_data: true` -> Toggle for collecting all available data in Prometheus **upon KokuMetricsConfig creation** (This parameter will start to appear in KokuMetricsConfigs that were created prior to v2.0.0 but will not have any effect unless the KokuMetricsConfig is deleted and recreated). The default is `true`. The operator will first look for a `retention` period in the `cluster-monitoring-config` ConfigMap in the `openshift-monitoring` namespace and gather data over this time period up to a maximum of 90 days. If this configuration is not set, the default is 14 days. (New in v2.0.0)
              * `disable_metrics_collection_cost_management: false` -> Toggle for disabling the collection of metrics for Cost Management. The default is false. (New in v2.0.0)
              * `disable_metrics_collection_resource_optimization: false` -> Toggle for disabling the collection of metrics for Resource Optimization. The default is false. (New in v2.0.0)
              * `context_timeout: 120` -> The time in seconds before Prometheus queries timeout due to exceeding context timeout. The default is 120, with a minimum of 10 and maximum of 180.
            * `source`:
              * `name: ''` -> The name of the integration the operator will create in `console.redhat.com`. If the name value is empty, the default intergration name is the **cluster id**.
              * `create_source: false` -> Toggle for whether or not the operator will create the integration in `console.redhat.com`. The default is False. This parameter should be switched to True when an integration does not already exist in `console.redhat.com` for this cluster.
              * `check_cycle: 1440` -> The time in minutes to wait between checking if an integration exists for this cluster. The default is 1440 minutes (24 hrs).
            * `upload`:
              * `upload_cycle: 360` -> The time in minutes between payload uploads. The default is 360 (6 hours), minimum is 60 (1 hour).
              * `upload_toggle: true` -> Toggle to turn upload on or off -> true means upload, false means do not upload (false == air-gapped mode). The default is `true`.
              * `upload_wait` -> The amount of time (in seconds) to pause before uploading a payload. The default is a random number between 0 and 35. This is used to decrease service load, but may be set to `0` if desired.
            * `volume_claim_template` -> see the "Storage configuration prerequisite" section above.

          ## Configure the koku-metrics-operator
          **Note** There are separate instructions for configuring the `koku-metrics-operator` to run in a restricted network.
          ##### Configure authentication
          The default authentication for the operator is `token`. No further steps are required to configure token authentication. If `basic` (deprecated) or `service-account` is the preferred authentication method, a Secret which holds the credentials must be created:
          1. On the left navigation pane, select `Workloads` -> `Secrets` -> select Project: `koku-metrics-operator` -> `Create` -> `Key/Value Secret`
          2. Give the Secret a name and add 2 keys (all lowercase) for the respective authentication type. The values for these keys correspond to console.redhat.com credentials:
              * basic auth (deprecated): `username` and `password`
              * service-account auth: `client_id` and `client_secret`

          3. Select `Create`.
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. For `basic` (deprecated) or `service-account` authentication, edit the following values in the spec:
              * Replace `authentication: type:` with `basic` or `service-account`.
              * Add the `secret_name` field under `authentication`, and set it equal to the name of the authentication Secret that was created above. The spec should look similar to the following:

                  * for basic auth type (deprecated)
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: basic
                  ```

                  * for service-account auth type
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: service-account
                  ```

          3. To configure the koku-metrics-operator to create a cost management integration, edit the following values in the `source` field:
              * Replace the `name` field value with the preferred name of the integration to be created.
              * Replace the `create_source` field value with `true`.

              **Note:** if the integration already exists, replace the empty string value of the `name` field with the existing name, and leave `create_source` as false. This will allow the operator to confirm that the integration exists.

          4. If not specified, the operator will create a default PersistentVolumeClaim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec:

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          5. Select `Create`.

          # Restricted Network Usage (disconnected/air-gapped mode)
          ## Installation
          To install the `koku-metrics-operator` in a restricted network, follow the [olm documentation](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html). The operator is found in the `community-operators` Catalog in the `registry.redhat.io/redhat/community-operator-index:latest` Index. If pruning the index before pushing to the mirrored registry, keep the `koku-metrics-operator` package.

          Within a restricted network, the operator queries prometheus to gather the necessary usage metrics, writes the query results to CSV files, and packages the reports for storage in the PVC. These reports then need to be manually downloaded from the cluster and uploaded to [console.redhat.com](https://console.redhat.com).

          ## Configure the koku-metrics-operator for a restricted network
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. Specify the desired storage. If not specified, the operator will create a default Persistent Volume Claim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec (below is only a template. Any _valid_ `PersistentVolumeClaim` may be defined here):

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      storageClassName: <insert-class-name>
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          3. (Optional) Specify the desired report retention. The operator will retain 30 reports by default. This corresponds to approximately one week's worth of data if using the default packaging cycle. To modify the number of retained reports:
              * Change the `packaging` spec field `max_reports_to_store` to the desired number of reports to retain. Once this max number is reached, the operator will start removing the oldest packages remaining on the PVC:

                ```
                  packaging:
                    max_size_MB: 100
                    max_reports_to_store: 30
                ```

              **Note:** The number of retained reports directly affects the frequency that reports must be manually downloaded from the PVC. Take caution in setting this to a higher number of reports, as the operator cannot write data to the PVC if the storage is full.
          4. To configure the operator to perform in a restricted network, set the `upload_toggle` to `false`:

            ```
              upload:
                upload_cycle: 360
                upload_toggle: false
            ```

          5. Select `Create`.

          ## Download reports from the Operator & clean up the PVC
          If the `koku-metrics-operator` is configured to run in a restricted network, the metric reports will not automatically upload to cost managment. Instead, they need to be manually copied from the PVC for upload to [console.redhat.com](https://console.redhat.com). The default configuration saves one week of reports which means the process of downloading and uploading reports should be repeated weekly to prevent loss of metrics data. To download the reports, complete the following steps:
          1. Create the following Pod, ensuring the `claimName` matches the PVC containing the report data:

            ```
              kind: Pod
              apiVersion: v1
              metadata:
                name: volume-shell
                namespace: koku-metrics-operator
                labels:
                  app: koku-metrics-operator
              spec:
                volumes:
                - name: koku-metrics-operator-reports
                  persistentVolumeClaim:
                    claimName: koku-metrics-operator-data
                containers:
                - name: volume-shell
                  image: busybox
                  command: ['sleep', 'infinity']
                  volumeMounts:
                  - name: koku-metrics-operator-reports
                    mountPath: /tmp/koku-metrics-operator-reports
            ```

          2. Use rsync to copy all of the files ready for upload from the PVC to a local folder:

            ```
            $ oc rsync volume-shell:/tmp/koku-metrics-operator-reports/upload local/path/to/save/folder
            ```

          3. Once confirming that the files have been successfully copied, use rsh to connect to the pod and delete the contents of the upload folder so that they are no longer in storage:

            ```
            $ oc rsh volume-shell
            $ rm /tmp/koku-metrics-operator-reports/upload/*
            ```

          4. (Optional) Delete the pod that was used to connect to the PVC:

            ```
            $ oc delete -f volume-shell.yaml
            ```

          ## Create an Integration
          In a restricted network, the `koku-metrics-operator` cannot automatically create an integration. This process must be done manually. In the console.redhat.com platform, open the [Integrations menu](https://console.redhat.com/settings/integrations/) to begin adding an OpenShift integration to Cost Management:

          Prerequisites:
          * The cluster identifier which can be found in the KokuMetricsConfig CR, the cluster Overview page, or the cluster Help > About.

          Creating an integration:
          1. Navigate to the Integrations menu
          2. Select the `Red Hat` tab
          3. Create a new `Red Hat Openshift Container Platform` integration:
              * give the integration a unique name
              * add the Cost Management application
              * add the cluster identifier
          4. In the Source wizard, review the details and click `Finish` to create the source.

          ## Upload the reports to cost managment
          Uploading reports to cost managment is done through curl:

              $ curl -vvvv -F "file=@FILE_NAME.tar.gz;type=application/vnd.redhat.hccm.tar+tgz" https://console.redhat.com/api/ingress/v1/upload -H "Authorization: Bearer ${ACCESS_TOKEN}"

          where `FILE_NAME` is the name of the report to upload. The `ACCESS_TOKEN` is acquired using a service account. See documentation on [creating and managing a service account](https://docs.redhat.com/en/documentation/red_hat_customer_portal/1/html/creating_and_managing_service_accounts).
        displayName: Koku Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cost
        - management
        - usage
        - monitor
        links:
        - name: Koku Metrics Operator source code repository
          url: https://github.com/project-koku/koku-metrics-operator
        maintainers:
        - email: costmanagement@redhat.com
          name: costmanagement
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/koku-metrics-operator:4.3.0
        - quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
        version: 4.3.0
      entries:
      - name: koku-metrics-operator.v4.3.0
        version: 4.3.0
      - name: koku-metrics-operator.v4.2.0
        version: 4.2.0
      - name: koku-metrics-operator.v4.1.0
        version: 4.1.0
      - name: koku-metrics-operator.v4.0.0
        version: 4.0.0
      - name: koku-metrics-operator.v3.3.2
        version: 3.3.2
      - name: koku-metrics-operator.v3.3.1
        version: 3.3.1
      - name: koku-metrics-operator.v3.3.0
        version: 3.3.0
      - name: koku-metrics-operator.v3.2.1
        version: 3.2.1
      - name: koku-metrics-operator.v3.2.0
        version: 3.2.0
      - name: koku-metrics-operator.v3.1.0
        version: 3.1.0
      - name: koku-metrics-operator.v3.0.1
        version: 3.0.1
      - name: koku-metrics-operator.v3.0.0
        version: 3.0.0
      - name: koku-metrics-operator.v2.0.0
        version: 2.0.0
      - name: koku-metrics-operator.v1.2.0
        version: 1.2.0
      - name: koku-metrics-operator.v1.1.9
        version: 1.1.9
      - name: koku-metrics-operator.v1.1.8
        version: 1.1.8
      - name: koku-metrics-operator.v1.1.7
        version: 1.1.7
      - name: koku-metrics-operator.v1.1.6
        version: 1.1.6
      - name: koku-metrics-operator.v1.1.5
        version: 1.1.5
      - name: koku-metrics-operator.v1.1.4
        version: 1.1.4
      - name: koku-metrics-operator.v1.1.3
        version: 1.1.3
      - name: koku-metrics-operator.v1.1.2
        version: 1.1.2
      - name: koku-metrics-operator.v1.1.1
        version: 1.1.1
      - name: koku-metrics-operator.v0.9.8
        version: 0.9.8
      - name: koku-metrics-operator.v0.9.7
        version: 0.9.7
      - name: koku-metrics-operator.v0.9.6
        version: 0.9.6
      - name: koku-metrics-operator.v0.9.5
        version: 0.9.5
      - name: koku-metrics-operator.v0.9.4
        version: 0.9.4
      - name: koku-metrics-operator.v0.9.3
        version: 0.9.3
      - name: koku-metrics-operator.v0.9.2
        version: 0.9.2
      - name: koku-metrics-operator.v0.9.1
        version: 0.9.1
      - name: koku-metrics-operator.v0.9.0
        version: 0.9.0
      name: alpha
    - currentCSV: koku-metrics-operator.v4.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
                "kind": "CostManagementMetricsConfig",
                "metadata": {
                  "name": "costmanagementmetricscfg-sample-v1beta1"
                },
                "spec": {
                  "authentication": {
                    "type": "token"
                  },
                  "packaging": {
                    "max_reports_to_store": 30,
                    "max_size_MB": 100
                  },
                  "prometheus_config": {
                    "collect_previous_data": true,
                    "context_timeout": 120,
                    "disable_metrics_collection_cost_management": false,
                    "disable_metrics_collection_resource_optimization": false
                  },
                  "source": {
                    "check_cycle": 1440,
                    "create_source": false,
                    "name": ""
                  },
                  "upload": {
                    "upload_cycle": 360,
                    "upload_toggle": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
          createdAt: "2025-10-29T15:49:19Z"
          description: A Golang-based OpenShift Operator that generates and uploads
            OpenShift usage metrics to cost management.
          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: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
              "kind": "CostManagementMetricsConfig",
              "metadata": {
                "name": "costmanagementmetricscfg-sample-v1beta1"
              },
              "spec": {
                "authentication": {
                  "token_url": "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token",
                  "type": "token"
                },
                "api_url": "https://console.redhat.com/",
                "packaging": {
                  "max_reports_to_store": 30,
                  "max_size_MB": 100
                },
                "upload": {
                  "ingress_path": "/api/ingress/v1/upload",
                  "upload_cycle": 360,
                  "upload_toggle": true,
                  "validate_cert": true
                },
                "prometheus_config": {
                  "collect_previous_data": true,
                  "context_timeout": 120,
                  "disable_metrics_collection_cost_management": false,
                  "disable_metrics_collection_resource_optimization": false,
                  "service_address": "https://thanos-querier.openshift-monitoring.svc:9091",
                  "skip_tls_verification": false
                },
                "source": {
                  "check_cycle": 1440,
                  "create_source": false,
                  "name": "",
                  "sources_path": "/api/sources/v1.0/"
                }
              }
            }
          operatorframework.io/suggested-namespace: koku-metrics-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/project-koku/koku-metrics-operator
          support: Cost Management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CostManagementMetricsConfig is the Schema for the costmanagementmetricsconfig
              API
            displayName: Cost Management Metrics Config
            kind: CostManagementMetricsConfig
            name: costmanagementmetricsconfigs.costmanagement-metrics-cfg.openshift.io
            version: v1beta1
        description: |
          # Koku Metrics Operator
          ## Introduction
          The `koku-metrics-operator` is a component of the [cost managment](https://access.redhat.com/documentation/en-us/cost_management_service) service for Openshift. The operator runs on the latest supported versions of Openshift. This operator obtains OpenShift usage data by querying Prometheus every hour to create metric reports that it uploads to Cost Management at [console.redhat.com](https://console.redhat.com) to be processed. For more information, reach out to <costmanagement@redhat.com>.

          This operator is capable of functioning within a disconnected/restricted network (aka air-gapped mode). In this mode, the operator will store the packaged reports for manual retrieval instead of being uploaded to Cost Management. Documentation for installing an operator within a restricted network can be found [here](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html).

          ## Features and Capabilities
          #### Metrics collection:
          The Koku Metrics Operator (`koku-metrics-operator`) collects the metrics required for Cost Management by:
          * Querying Prometheus to gather the necessary metrics for Cost Management.
          * Writing the results of Prometheus queries to CSV report files.
          * Packaging the CSV report files into tarballs.

          #### Additional Capabilities:
          * Resource Optimization metrics collection.
          * The operator can be configured to gather all previous data within the configured retention period or a maximum of 90 days. The default data collection period is the 14 previous days. This setting is only applicable to newly created KokuMetricsConfigs.
          * The operator can be configured to automatically upload the packaged reports to Cost Management through Red Hat Insights Ingress service.
          * The operator can create an integration in console.redhat.com. An integration is required for Cost Management to process the uploaded packages.
          * PersistentVolumeClaim (PVC) configuration: The KokuMetricsConfig CR can accept a PVC definition and the operator will create and mount the PVC. If one is not provided, a default PVC will be created.
          * Restricted network installation: this operator can function on a restricted network. In this mode, the operator stores the packaged reports for manual retrieval.

          ## New in v4.3.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for cost management.

          ## New in v4.2.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for resource optimization.
          * (Bugfix) Fixed custom CA certificate validation and configuration issues.
          * (Bugfix) Fixed issue where ROS queries were missing workload metadata for namespaces labeled only with the legacy `insights_cost_management_optimizations` label.

          ## New in v4.1.0:
          * Enabled gathering and reporting namespace metrics to provide more granular data for resource optimization.
          * Updated CSV report filenames to be more descriptive, replacing the previous generic UID-based names with content-reflective names.
          * Introduced a new generic label, `cost_management_optimizations`, for resource optimization while ensuring backward compatibility with the older `insights_cost_management_optimizations` label.

          ## New in v4.0.0:
          * **Virtual Machine Metrics:** Adds capabilities for collecting metrics and generating reports for running virtual machines within your OpenShift environment.
          * **Progress towards FIPS 140 Compliance:** The operator is using the Go Cryptographic Module v1.0.0 to progress toward FIPS 140 compliance. Although this module is not validated at the time of this release, the operator aims to meet stricter security standards when the module does successfully achieve FIPS validation.
          * **API Name Change:** The Custom Resource Definition (CRD) for configuring the upstream `Koku Metrics Operator` was renamed from `KokuMetricsConfig` to `CostManagementMetricsConfig`.

          ### NOTE:
            * The API name change impacts only users of the upstream (community) Koku Metrics Operator.
            * The downstream (Red Hat-supported) Cost Management Metrics Operator is not impacted by this change and users should continue using their existing configurations.

          **Important Upgrade Instructions:**

            If you are upgrading the upstream Koku Metrics Operator to version 4.0.0 or higher, you must manually migrate your configuration. The operator will no longer recognize existing `KokuMetricsConfig` resources.

            To successfully upgrade and retain your operator's configuration, complete the following steps. You can use the provided `oc` commands replacing the angle brackets (`< >`) with your specific values:

            1. Backup existing configuration (recommended):

               Before you upgrade, retrieve the details of your current `KokuMetricsConfig` instance to help you recreate it with the new API name.

               ```
               oc get kokumetricsconfig -n koku-metrics-operator <your-config-name> -o yaml > koku-metrics-config-backup.yaml
               ```

            2. Delete the previous `KokuMetricsConfig` instance (recommended):

                After the operator is upgraded to `version 4.0.0`, delete any existing `KokuMetricsConfig` resources.

                ```
                oc delete kokumetricsconfig -n koku-metrics-operator <your-config-name>
                ```

            3. Create the new `CostManagementMetricsConfig` instance:

                Using the information from your backup (or a new configuration), create a new `CostManagementMetricsConfig` instance. Adjust the spec section based on your specific needs. For more information about configurations, [refer to the configurable parameters](#configurable-parameters).

            4. Apply your new configuration:

                ```
                oc apply -f <your-costmanagementmetricsconfig-file>.yaml -n koku-metrics-operator
                ```

          ## New in v3.3.2:
          * Leader election settings are now configurable via environment variables. These variables can be modified in the operator [Subscription](https://github.com/operator-framework/operator-lifecycle-manager/blob/5a01f50258003e248bd5630df0837fe0bb0f1cb7/doc/design/subscription-config.md). The values should be specified as durations in seconds in the format `<number-of-seconds>s`. The default values for `LEADER_ELECTION_LEASE_DURATION`, `LEADER_ELECTION_RENEW_DEADLINE`, and `LEADER_ELECTION_RETRY_PERIOD` are '60s', '30s', and '5s', respectively.

            ```
            kind: Subscription
            metadata:
            ...
            spec:
              ...
              config:
                env:
                - name: LEADER_ELECTION_LEASE_DURATION
                  value: "60s"
                - name: LEADER_ELECTION_RENEW_DEADLINE
                  value: "30s"
                - name: LEADER_ELECTION_RETRY_PERIOD
                  value: "5s"
            ```

          ## New in v3.3.1:
          * Optimize memory usage when reading CSV files.

          ## New in v3.3.0:
          * Storage reports now contain `node`, `csi_driver`, and `csi_volume_handle` fields.
          * The PVC capacity is now populated using the `kube_persistentvolume_capacity_bytes` metric instead of `kubelet_volume_stats_capacity_bytes`.
          * To receive resource optimization recommendations for your namespaces, you must now first enable each namespace. To enable a namespace, label it with `insights_cost_management_optimizations='true'`. In the CLI, run:
            ```
              oc label namespace NAMESPACE insights_cost_management_optimizations="true" --overwrite=true
            ```
          * __DEPRECATION NOTICE__: Basic authentication is deprecated and will not be supported beyond December 31, 2024. If the default token authentication method cannot be used, you must switch to [service account](https://console.redhat.com/iam/service-accounts) authentication ([more on creating a service account](https://access.redhat.com/articles/7036194)). Once you have created your service account, follow [this documentation](https://access.redhat.com/documentation/en-us/cost_management_service/1-latest/html-single/integrating_openshift_container_platform_data_into_cost_management/index#service-account-authentication_adding-an-ocp-int) on how to configure your operator to use service account authentication. Service-accounts must also be used if manually uploading payloads to console.redhat.com.

          ## New in v3.2.1:
          * The minimum supported configuration for `upload_cycle` is now 60 (minutes).
          * (Bugfix) many-to-many matching not allowed query fix.
          * (Bugfix) Sequentially collect data during initial install.

          ## New in v3.2.0:
          * Support for amd64, arm64, ppc64le, s390x architectures.
          * add liveness and readiness probes to controller Pod.
          * update pod security settings so that the controller Pod can run in Restricted mode [more info](https://sdk.operatorframework.io/docs/best-practices/pod-security-standards/).

          ## New in v3.1.0:
          * Add service-account authentication type.
          * __Deprecation Notice:__ Basic authentication is deprecated and will be removed in a future version of the operator.

          ## New in v3.0.0:
          * Daily report generation: Operator versions prior to v3.0.0 generated sequential reports. Now, reports are generated starting at 0:00 UTC. Any payloads generated throughout a given day will contain all data starting from 0:00 UTC. Once the next day starts, the previous day's reports are packaged, and the new report again starts at 0:00 UTC for the current day.
          * Failed query retry: In an attempt to prevent missing data, the operator will retry queries from the last successful query time, up to 5 times.

          ## New in v2.0.0:
          * Adds metrics and report generation for resource optimization. This feature will collect additional usage metrics and create a new report in the payload. These metrics are enabled by default, but can be disabled by setting `disable_metrics_collection_resource_optimization` to `true`.
          * Collect all available Prometheus data upon CR creation. This feature only applies to newly created KokuMetricsConfigs. The operator will check the monitoring stack configuration in the `openshift-monitoring` namespace. The operator will use the `retention` period set in the `cluster-monitoring-config` ConfigMap if defined, up to a maximum of 90 days. Otherwise it will fall back to collecting 14 days of data, if available. This data collection may be disabled by setting `collect_previous_data` to `false`. Turning this feature off results in the operator collecting metrics from the time the KokuMetricsConfig is created, forward.

          ## Limitations and Pre-Requisites
          #### Limitations (Potential for metrics data loss)
          * An integration **must** exist in console.redhat.com for an uploaded payload to be processed by Cost Management. The operator sends the payload to the Red Hat Insights Ingress service which usually returns successfully, but the operator does not currently confirm with Cost Management that the payload was processed. After Ingress accepts the uploaded payload, it is deleted from the operator. If the data within the payload is not processed, a gap will be introduced in the usage metrics. Data may be recollected by deleting the `KokuMetricsConfig`, creating a new `KokuMetricsConfig`, and setting `collect_previous_data: true`. This re-collection of data will gather all data stored in Prometheus, up to 90 days.

          **Note** The following limitations are specific to operators configured to run in a restricted network:
          * The `koku-metrics-operator` will not be able to generate new reports if the PVC storage is full. If this occurs, the reports must be manually deleted from the PVC so that the operator can function as normal.
          * The default report retention is 30 reports (about one week's worth of data). The reports must be manually downloaded and uploaded to console.redhat.com every week, or they will be deleted and the data will be lost.

          #### Storage configuration prerequisite
          The operator will attempt to create and use the following PVC when installed:

                volume_claim_template:
                  apiVersion: v1
                  kind: PersistentVolumeClaim
                  metadata:
                    name: koku-metrics-operator-data
                  spec:
                    accessModes:
                      - ReadWriteOnce
                    resources:
                      requests:
                        storage: 10Gi

          If a different PVC should be utilized, a valid PVC should be specified in the KokuMetricsConfig CR as described in the appropriate section below. The PVC to be used may exist already, or the operator will attempt to create it.

          To use the default specification, the follow assumptions must be met:
          1. A default StorageClass is defined.
          2. Dynamic provisioning for that default StorageClass is enabled.

          If these assumptions are not met, the operator will not deploy correctly. In these cases, storage must be manually configured. After configuring storage, a valid PVC template should be supplied in the `volume_claim_template` spec of the KokuMetricsConfig CR.

          ## Configurable parameters:
            * `authentication`:
              * `type: token` -> The authentication method for connecting to `console.redhat.com`. The default and preferred method is `token`. `basic` (deprecated) and `service-account` authentication methods are used when the openshift-config pull-secret does not contain a token for `console.redhat.com`.
              * `secret_name` -> The Secret used by the operator when the authentication type is `basic` (deprecated) or `service-account`. This parameter is required **only if** the authentication type is `basic` (deprecated) or `service-account`.
            * `packaging`:
              * `max_reports_to_store: 30` -> The number of reports to store when configured in air-gapped mode. The default is 30, with a minimum of 1 and no maximum. When the operator is not configured in air-gapped mode, this parameter has no effect. Reports are removed as soon as they are uploaded.
              * `max_size: 100` -> The maximum size for packaged files in Megabytes prior to compression. The default is 100, with a minimum of 1 and maximum of 100.
            * `prometheus_config`:
              * `collect_previous_data: true` -> Toggle for collecting all available data in Prometheus **upon KokuMetricsConfig creation** (This parameter will start to appear in KokuMetricsConfigs that were created prior to v2.0.0 but will not have any effect unless the KokuMetricsConfig is deleted and recreated). The default is `true`. The operator will first look for a `retention` period in the `cluster-monitoring-config` ConfigMap in the `openshift-monitoring` namespace and gather data over this time period up to a maximum of 90 days. If this configuration is not set, the default is 14 days. (New in v2.0.0)
              * `disable_metrics_collection_cost_management: false` -> Toggle for disabling the collection of metrics for Cost Management. The default is false. (New in v2.0.0)
              * `disable_metrics_collection_resource_optimization: false` -> Toggle for disabling the collection of metrics for Resource Optimization. The default is false. (New in v2.0.0)
              * `context_timeout: 120` -> The time in seconds before Prometheus queries timeout due to exceeding context timeout. The default is 120, with a minimum of 10 and maximum of 180.
            * `source`:
              * `name: ''` -> The name of the integration the operator will create in `console.redhat.com`. If the name value is empty, the default intergration name is the **cluster id**.
              * `create_source: false` -> Toggle for whether or not the operator will create the integration in `console.redhat.com`. The default is False. This parameter should be switched to True when an integration does not already exist in `console.redhat.com` for this cluster.
              * `check_cycle: 1440` -> The time in minutes to wait between checking if an integration exists for this cluster. The default is 1440 minutes (24 hrs).
            * `upload`:
              * `upload_cycle: 360` -> The time in minutes between payload uploads. The default is 360 (6 hours), minimum is 60 (1 hour).
              * `upload_toggle: true` -> Toggle to turn upload on or off -> true means upload, false means do not upload (false == air-gapped mode). The default is `true`.
              * `upload_wait` -> The amount of time (in seconds) to pause before uploading a payload. The default is a random number between 0 and 35. This is used to decrease service load, but may be set to `0` if desired.
            * `volume_claim_template` -> see the "Storage configuration prerequisite" section above.

          ## Configure the koku-metrics-operator
          **Note** There are separate instructions for configuring the `koku-metrics-operator` to run in a restricted network.
          ##### Configure authentication
          The default authentication for the operator is `token`. No further steps are required to configure token authentication. If `basic` (deprecated) or `service-account` is the preferred authentication method, a Secret which holds the credentials must be created:
          1. On the left navigation pane, select `Workloads` -> `Secrets` -> select Project: `koku-metrics-operator` -> `Create` -> `Key/Value Secret`
          2. Give the Secret a name and add 2 keys (all lowercase) for the respective authentication type. The values for these keys correspond to console.redhat.com credentials:
              * basic auth (deprecated): `username` and `password`
              * service-account auth: `client_id` and `client_secret`

          3. Select `Create`.
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. For `basic` (deprecated) or `service-account` authentication, edit the following values in the spec:
              * Replace `authentication: type:` with `basic` or `service-account`.
              * Add the `secret_name` field under `authentication`, and set it equal to the name of the authentication Secret that was created above. The spec should look similar to the following:

                  * for basic auth type (deprecated)
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: basic
                  ```

                  * for service-account auth type
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: service-account
                  ```

          3. To configure the koku-metrics-operator to create a cost management integration, edit the following values in the `source` field:
              * Replace the `name` field value with the preferred name of the integration to be created.
              * Replace the `create_source` field value with `true`.

              **Note:** if the integration already exists, replace the empty string value of the `name` field with the existing name, and leave `create_source` as false. This will allow the operator to confirm that the integration exists.

          4. If not specified, the operator will create a default PersistentVolumeClaim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec:

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          5. Select `Create`.

          # Restricted Network Usage (disconnected/air-gapped mode)
          ## Installation
          To install the `koku-metrics-operator` in a restricted network, follow the [olm documentation](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html). The operator is found in the `community-operators` Catalog in the `registry.redhat.io/redhat/community-operator-index:latest` Index. If pruning the index before pushing to the mirrored registry, keep the `koku-metrics-operator` package.

          Within a restricted network, the operator queries prometheus to gather the necessary usage metrics, writes the query results to CSV files, and packages the reports for storage in the PVC. These reports then need to be manually downloaded from the cluster and uploaded to [console.redhat.com](https://console.redhat.com).

          ## Configure the koku-metrics-operator for a restricted network
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. Specify the desired storage. If not specified, the operator will create a default Persistent Volume Claim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec (below is only a template. Any _valid_ `PersistentVolumeClaim` may be defined here):

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      storageClassName: <insert-class-name>
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          3. (Optional) Specify the desired report retention. The operator will retain 30 reports by default. This corresponds to approximately one week's worth of data if using the default packaging cycle. To modify the number of retained reports:
              * Change the `packaging` spec field `max_reports_to_store` to the desired number of reports to retain. Once this max number is reached, the operator will start removing the oldest packages remaining on the PVC:

                ```
                  packaging:
                    max_size_MB: 100
                    max_reports_to_store: 30
                ```

              **Note:** The number of retained reports directly affects the frequency that reports must be manually downloaded from the PVC. Take caution in setting this to a higher number of reports, as the operator cannot write data to the PVC if the storage is full.
          4. To configure the operator to perform in a restricted network, set the `upload_toggle` to `false`:

            ```
              upload:
                upload_cycle: 360
                upload_toggle: false
            ```

          5. Select `Create`.

          ## Download reports from the Operator & clean up the PVC
          If the `koku-metrics-operator` is configured to run in a restricted network, the metric reports will not automatically upload to cost managment. Instead, they need to be manually copied from the PVC for upload to [console.redhat.com](https://console.redhat.com). The default configuration saves one week of reports which means the process of downloading and uploading reports should be repeated weekly to prevent loss of metrics data. To download the reports, complete the following steps:
          1. Create the following Pod, ensuring the `claimName` matches the PVC containing the report data:

            ```
              kind: Pod
              apiVersion: v1
              metadata:
                name: volume-shell
                namespace: koku-metrics-operator
                labels:
                  app: koku-metrics-operator
              spec:
                volumes:
                - name: koku-metrics-operator-reports
                  persistentVolumeClaim:
                    claimName: koku-metrics-operator-data
                containers:
                - name: volume-shell
                  image: busybox
                  command: ['sleep', 'infinity']
                  volumeMounts:
                  - name: koku-metrics-operator-reports
                    mountPath: /tmp/koku-metrics-operator-reports
            ```

          2. Use rsync to copy all of the files ready for upload from the PVC to a local folder:

            ```
            $ oc rsync volume-shell:/tmp/koku-metrics-operator-reports/upload local/path/to/save/folder
            ```

          3. Once confirming that the files have been successfully copied, use rsh to connect to the pod and delete the contents of the upload folder so that they are no longer in storage:

            ```
            $ oc rsh volume-shell
            $ rm /tmp/koku-metrics-operator-reports/upload/*
            ```

          4. (Optional) Delete the pod that was used to connect to the PVC:

            ```
            $ oc delete -f volume-shell.yaml
            ```

          ## Create an Integration
          In a restricted network, the `koku-metrics-operator` cannot automatically create an integration. This process must be done manually. In the console.redhat.com platform, open the [Integrations menu](https://console.redhat.com/settings/integrations/) to begin adding an OpenShift integration to Cost Management:

          Prerequisites:
          * The cluster identifier which can be found in the KokuMetricsConfig CR, the cluster Overview page, or the cluster Help > About.

          Creating an integration:
          1. Navigate to the Integrations menu
          2. Select the `Red Hat` tab
          3. Create a new `Red Hat Openshift Container Platform` integration:
              * give the integration a unique name
              * add the Cost Management application
              * add the cluster identifier
          4. In the Source wizard, review the details and click `Finish` to create the source.

          ## Upload the reports to cost managment
          Uploading reports to cost managment is done through curl:

              $ curl -vvvv -F "file=@FILE_NAME.tar.gz;type=application/vnd.redhat.hccm.tar+tgz" https://console.redhat.com/api/ingress/v1/upload -H "Authorization: Bearer ${ACCESS_TOKEN}"

          where `FILE_NAME` is the name of the report to upload. The `ACCESS_TOKEN` is acquired using a service account. See documentation on [creating and managing a service account](https://docs.redhat.com/en/documentation/red_hat_customer_portal/1/html/creating_and_managing_service_accounts).
        displayName: Koku Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cost
        - management
        - usage
        - monitor
        links:
        - name: Koku Metrics Operator source code repository
          url: https://github.com/project-koku/koku-metrics-operator
        maintainers:
        - email: costmanagement@redhat.com
          name: costmanagement
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
        - quay.io/community-operator-pipeline-prod/koku-metrics-operator:4.3.0
        version: 4.3.0
      entries:
      - name: koku-metrics-operator.v4.3.0
        version: 4.3.0
      - name: koku-metrics-operator.v4.2.0
        version: 4.2.0
      - name: koku-metrics-operator.v4.1.0
        version: 4.1.0
      - name: koku-metrics-operator.v4.0.0
        version: 4.0.0
      - name: koku-metrics-operator.v3.3.2
        version: 3.3.2
      - name: koku-metrics-operator.v3.3.1
        version: 3.3.1
      - name: koku-metrics-operator.v3.3.0
        version: 3.3.0
      - name: koku-metrics-operator.v3.2.1
        version: 3.2.1
      - name: koku-metrics-operator.v3.2.0
        version: 3.2.0
      - name: koku-metrics-operator.v3.1.0
        version: 3.1.0
      - name: koku-metrics-operator.v3.0.1
        version: 3.0.1
      - name: koku-metrics-operator.v3.0.0
        version: 3.0.0
      - name: koku-metrics-operator.v2.0.0
        version: 2.0.0
      - name: koku-metrics-operator.v1.2.0
        version: 1.2.0
      - name: koku-metrics-operator.v1.1.9
        version: 1.1.9
      - name: koku-metrics-operator.v1.1.8
        version: 1.1.8
      - name: koku-metrics-operator.v1.1.7
        version: 1.1.7
      - name: koku-metrics-operator.v1.1.6
        version: 1.1.6
      - name: koku-metrics-operator.v1.1.5
        version: 1.1.5
      - name: koku-metrics-operator.v1.1.4
        version: 1.1.4
      - name: koku-metrics-operator.v1.1.3
        version: 1.1.3
      - name: koku-metrics-operator.v1.1.2
        version: 1.1.2
      - name: koku-metrics-operator.v1.1.1
        version: 1.1.1
      - name: koku-metrics-operator.v0.9.8
        version: 0.9.8
      - name: koku-metrics-operator.v0.9.7
        version: 0.9.7
      - name: koku-metrics-operator.v0.9.6
        version: 0.9.6
      - name: koku-metrics-operator.v0.9.5
        version: 0.9.5
      - name: koku-metrics-operator.v0.9.4
        version: 0.9.4
      - name: koku-metrics-operator.v0.9.3
        version: 0.9.3
      - name: koku-metrics-operator.v0.9.2
        version: 0.9.2
      - name: koku-metrics-operator.v0.9.1
        version: 0.9.1
      - name: koku-metrics-operator.v0.9.0
        version: 0.9.0
      name: beta
    defaultChannel: beta
    packageName: koku-metrics-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: quay-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: quay-operator.v3.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:d73321dfa6dcced943405fae45c2ccf841663e0ab57e8be8cc1ddba251b7ce08
          createdAt: 2021-11-02 11:11 UTC
          description: Opinionated deployment of Red Hat Quay on Kubernetes.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:2a471300f70d3995ab7e9fcc3df35c5513e73fcc1d140fb4d651a1c3eae949eb
        - registry.redhat.io/quay/quay-operator-bundle@sha256:b793aef88881aa75d47a22377d8932efc0b497bb01b2f3f376d64891d1dace54
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:d73321dfa6dcced943405fae45c2ccf841663e0ab57e8be8cc1ddba251b7ce08
        - registry.redhat.io/quay/quay-rhel8@sha256:ed8c4249d376b4226e35bf088ffe5bf688bf68b059718c5e218aa1184fe048d0
        - registry.redhat.io/rhel8/postgresql-10@sha256:b2695e9af379624621bef9ec785f0cb618bfdabae98c5f17eea82ff5f8d2d5cb
        - registry.redhat.io/rhel8/redis-5@sha256:8d7e66927ce4b3050ca15ab4df4dbaeb593cb855e16fb0a6f5dde950e9db7db9
        - registry.redhat.io/quay/clair-rhel8@sha256:af5e2fd1543365b365b1a6cce00b86e44fe5e66cde6491e9b113324c21f629c8
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:0e6bef51caf479074925115fa11621c41bcada375cc1925d0511a73084b93543
        version: 3.4.7
      entries:
      - name: quay-operator.v3.4.7
        version: 3.4.7
      name: quay-v3.4
    - currentCSV: quay-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:1f5e4cc9ec2d9b8b89d82f1a698acfa1ac2764ca4ebc5c85b3417da7730b5867
          createdAt: 2021-09-09 20:09 UTC
          description: Opinionated deployment of Red Hat Quay on Kubernetes.
          olm.skipRange: '>=3.4.x <3.5.7'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.5.7
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:7fe408a1e428b2d0660cb578c1dcd4b961f838e37166fe7b21b2bed70d288594
        - registry.redhat.io/quay/quay-operator-bundle@sha256:722cf3c05eb5663a737cb1385b971b6d1f0c8b2595d5ac425f7b100c25e2fd26
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:1f5e4cc9ec2d9b8b89d82f1a698acfa1ac2764ca4ebc5c85b3417da7730b5867
        - registry.redhat.io/quay/quay-rhel8@sha256:c599892160ac20c744d833603d9375923af7aec1edfd86982b7513e02fb6d463
        - registry.redhat.io/rhel8/postgresql-10@sha256:a723bb3a7a5046527b9a5b628ddfb211c526e3814cc4242262c4f8a016f38edd
        - registry.redhat.io/rhel8/redis-5@sha256:7916760ff03af5ca230df5e96b2bf353fbf1829386de1c063c05f623837be7f7
        - registry.redhat.io/quay/clair-rhel8@sha256:d242bd9d37f95b2a5a8267b3f1eba02c671d46121712baae43466c86d1da89f9
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:5d72577ccfd63c6d9ad712b376b604c40d2d3ecb53e391e2ee0d18caa6e0225a
        version: 3.5.7
      entries:
      - name: quay-operator.v3.5.7
        version: 3.5.7
      name: quay-v3.5
    - currentCSV: quay-operator.v3.10.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:3dd66f1963715d3e38540c8020c3c18cddd0019f342cceff22aa6412844e06da
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.7.x <3.10.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.10.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-rhel8@sha256:9837d3583892538c03a1918510c507be46290ea4045ba22de8cfd416a50a787d
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:3dd66f1963715d3e38540c8020c3c18cddd0019f342cceff22aa6412844e06da
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/quay/clair-rhel8@sha256:3967b2027cc8ee045da7c6a214c959f8651fb873bd60b81cd78f167e57ba95a5
        - registry.redhat.io/quay/quay-operator-bundle@sha256:91ce9e64184afb90b00360c64f5ba37d30130ab0344b2439b93db15f2b35b74d
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:56c4668b72768c2b7017215f547039b4783498efd89d17dc3fdc7d0444cc8ad9
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:907dd22eb16925813711a70a3d0df30963a3d1d0c060ca9b4f071ec101f14b87
        version: 3.10.17
      entries:
      - name: quay-operator.v3.10.17
        version: 3.10.17
      - name: quay-operator.v3.10.16
        version: 3.10.16
      - name: quay-operator.v3.10.15
        version: 3.10.15
      - name: quay-operator.v3.10.14
        version: 3.10.14
      - name: quay-operator.v3.10.13
        version: 3.10.13
      - name: quay-operator.v3.10.12
        version: 3.10.12
      - name: quay-operator.v3.10.11
        version: 3.10.11
      - name: quay-operator.v3.10.10
        version: 3.10.10
      - name: quay-operator.v3.10.9
        version: 3.10.9
      - name: quay-operator.v3.10.8
        version: 3.10.8
      - name: quay-operator.v3.10.7
        version: 3.10.7
      - name: quay-operator.v3.10.6
        version: 3.10.6
      - name: quay-operator.v3.10.5
        version: 3.10.5
      - name: quay-operator.v3.10.4
        version: 3.10.4
      - name: quay-operator.v3.10.3
        version: 3.10.3
      - name: quay-operator.v3.10.2
        version: 3.10.2
      - name: quay-operator.v3.10.1
        version: 3.10.1
      - name: quay-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: quay-operator.v3.11.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:cb3a41caa3a572b7981d424be2a32b8e881127cc03b557ee0a36ab13f430b897
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.8.x <3.11.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: v3.11.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures ODF for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For production deployment of
          Red Hat OpenShift Data Foundation, please refer to the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-rhel8@sha256:7230fa1d4970e877cb6de8716e99a9bd43302c0ff23b4501f2aa806a8d496d9b
        - registry.redhat.io/rhel8/postgresql-13@sha256:35d86936c539007a78a89869a14b87b76788fe117df442a670f63936b978ed5b
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:11b8c9d64c42f0f0c7b2df491bba859d0410666a8ef1d2fd41eb77e4ad9d2dc8
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:cb3a41caa3a572b7981d424be2a32b8e881127cc03b557ee0a36ab13f430b897
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/clair-rhel8@sha256:3746677ef1cb0ddd4f237ab598b14cf0bc76dcce080ffde127b5bba87ffe6693
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:1a083cd72502609427428ed22fb60846613ddb41a4613496c5cddc797b382d3a
        - registry.redhat.io/quay/quay-operator-bundle@sha256:f19ae051041c46fe7587f903a9c6221bcbe8be2c4cc0235739f7592eb93ae164
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        version: 3.11.13
      entries:
      - name: quay-operator.v3.11.13
        version: 3.11.13
      - name: quay-operator.v3.11.12
        version: 3.11.12
      - name: quay-operator.v3.11.11
        version: 3.11.11
      - name: quay-operator.v3.11.10
        version: 3.11.10
      - name: quay-operator.v3.11.9
        version: 3.11.9
      - name: quay-operator.v3.11.8
        version: 3.11.8
      - name: quay-operator.v3.11.7
        version: 3.11.7
      - name: quay-operator.v3.11.6
        version: 3.11.6
      - name: quay-operator.v3.11.5
        version: 3.11.5
      - name: quay-operator.v3.11.4
        version: 3.11.4
      - name: quay-operator.v3.11.3
        version: 3.11.3
      - name: quay-operator.v3.11.2
        version: 3.11.2
      - name: quay-operator.v3.11.1
        version: 3.11.1
      - name: quay-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: quay-operator.v3.12.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:48417bfa200db498b71a750dd147c1c11405ea4b61ad41d32731923b56a0bc43
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.9.x <3.12.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.12.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:48417bfa200db498b71a750dd147c1c11405ea4b61ad41d32731923b56a0bc43
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/quay/clair-rhel8@sha256:8879a32314409b2367d8cdc0d7076667dab8a72df1b2f06ed6078ba022adb082
        - registry.redhat.io/quay/quay-operator-bundle@sha256:1c915a6f813564b9bf8062ea5c6a83097a8dd78a38fda0171fae9cc8d81299c7
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:206d249da9c156fc7b76eacc40759b3accb82dce85aa2bb2bbd7a33af52ee104
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:b3a950f2c8a123b9bcba240db407608dab6a4fb00cb9fcc6e083e07144928390
        - registry.redhat.io/quay/quay-rhel8@sha256:1076d78eba4bef63cf45ab04c1dff52f0407ab9e16fb4729bee7c1ab642f59b7
        version: 3.12.13
      entries:
      - name: quay-operator.v3.12.13
        version: 3.12.13
      - name: quay-operator.v3.12.12
        version: 3.12.12
      - name: quay-operator.v3.12.11
        version: 3.12.11
      - name: quay-operator.v3.12.10
        version: 3.12.10
      - name: quay-operator.v3.12.9
        version: 3.12.9
      - name: quay-operator.v3.12.8
        version: 3.12.8
      - name: quay-operator.v3.12.7
        version: 3.12.7
      - name: quay-operator.v3.12.6
        version: 3.12.6
      - name: quay-operator.v3.12.5
        version: 3.12.5
      - name: quay-operator.v3.12.4
        version: 3.12.4
      - name: quay-operator.v3.12.3
        version: 3.12.3
      - name: quay-operator.v3.12.2
        version: 3.12.2
      - name: quay-operator.v3.12.1
        version: 3.12.1
      - name: quay-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: quay-operator.v3.13.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:9fe5f2672eef5f780797c1fa1eeaca531dcf71a9d565e80c2698d9b51244c187
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.10.x <3.13.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.13.10
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/quay/quay-operator-bundle@sha256:e3bda08789b2ba41154d080a5f013ee0e2406d60f8414e63be451a6439555cc1
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:9fe5f2672eef5f780797c1fa1eeaca531dcf71a9d565e80c2698d9b51244c187
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:b3f7fa8d48a772171dfb9eb893bc8e51985147c7f44fb8b1351325dbbf59810a
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:92ffbfe625489fe0b00e32a144f76935a4c36d1835af42d9b45bc3904760b085
        - registry.redhat.io/quay/clair-rhel8@sha256:3af5c1b75dedb37fb8c7cc3500882f7145314d44735b0957dad7d588a0cbf825
        - registry.redhat.io/quay/quay-rhel8@sha256:f112ecb55942c8785c4aa20162b74bac904634a87bdc8b9755873ef19eccd6df
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        version: 3.13.10
      entries:
      - name: quay-operator.v3.13.10
        version: 3.13.10
      - name: quay-operator.v3.13.9
        version: 3.13.9
      - name: quay-operator.v3.13.8
        version: 3.13.8
      - name: quay-operator.v3.13.7
        version: 3.13.7
      - name: quay-operator.v3.13.6
        version: 3.13.6
      - name: quay-operator.v3.13.5
        version: 3.13.5
      - name: quay-operator.v3.13.4
        version: 3.13.4
      - name: quay-operator.v3.13.3
        version: 3.13.3
      - name: quay-operator.v3.13.2
        version: 3.13.2
      - name: quay-operator.v3.13.1
        version: 3.13.1
      - name: quay-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: quay-operator.v3.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:8ebc1f0511f7d394ceaa39a4c993e955c560dc04588072cb3f8c8fab8c85e32b
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.11.x <3.14.5'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: v3.14.5
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures ODF for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For production deployment of
          Red Hat OpenShift Data Foundation, please refer to the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-operator-bundle@sha256:f16c0a135dd7380e2a489f963b38bd76a63a973f482d06ece8d3656aff223703
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:8ebc1f0511f7d394ceaa39a4c993e955c560dc04588072cb3f8c8fab8c85e32b
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        - registry.redhat.io/quay/quay-rhel8@sha256:33e984892650d315065313fcb5f8808e145aadec5a287219c7031d85b713235e
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/clair-rhel8@sha256:e11e8a819d17bd14c67f093b5303b4958855e731f89ce67dcca70fcb7b77f45a
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:43ef8adddbf9b007b6e2396f53bd6a5475150d28c2f4254f031a0fe6c7de5826
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:a12a0918f6dea114b0aae231d7119a4acfd0cd297074d895f4ecf190d2aec43a
        version: 3.14.5
      entries:
      - name: quay-operator.v3.14.5
        version: 3.14.5
      - name: quay-operator.v3.14.4
        version: 3.14.4
      - name: quay-operator.v3.14.3
        version: 3.14.3
      - name: quay-operator.v3.14.2
        version: 3.14.2
      - name: quay-operator.v3.14.1
        version: 3.14.1
      - name: quay-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: quay-operator.v3.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:05fb981d9848281b97b3683093f752b1c1dc5ced439a2b4ba18b26ff8e11231e
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.12.x <3.15.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: v3.15.2
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures ODF for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For production deployment of
          Red Hat OpenShift Data Foundation, please refer to the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-rhel8@sha256:aa8c9f7b6ce57441ca1fe9dbaaefaf2bb83fd44aa367647b663bb822bf890362
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        - registry.redhat.io/quay/clair-rhel8@sha256:861be31d30142bae125cd059bb716d79b28694e9c4336333c68adf4a3823b61d
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:956f3110f944d880bc27bb6df9472d0804cd75f5dcf4ed11bcf721e9d1d4542b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:873a3daf1dadf2438eb96e151072326c31ba34ed48cac041614b604413d5f8e7
        - registry.redhat.io/quay/quay-operator-bundle@sha256:b499eebed32c0261db414e307f96f8aef9e743035544c80c048526e7ba4fbdc2
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:05fb981d9848281b97b3683093f752b1c1dc5ced439a2b4ba18b26ff8e11231e
        version: 3.15.2
      entries:
      - name: quay-operator.v3.15.2
        version: 3.15.2
      - name: quay-operator.v3.15.1
        version: 3.15.1
      - name: quay-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: quay-operator.v3.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel9@sha256:16616e52f128f4a9b8511e7d9288bb1fcdd4e096a5a9b58400badbd0fad21476
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.13.x <3.16.0'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.16.0
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-15@sha256:90ec347a35ab8a5d530c8d09f5347b13cc71df04f3b994bfa8b1a409b1171d59
        - registry.redhat.io/rhel9/redis-6@sha256:686620b9acef6dfc3fc5e8221ca4d7a00c1fb102319352e7871fb9bc0ea127e3
        - registry.redhat.io/quay/clair-rhel9@sha256:b9a5096fef74999c34dfb721ca1b5e47623cfa21b48213f60a5b889894d4874e
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:adc9eb1500491144a259fd95c14237be15fa92478523bf33769a708b301d66cb
        - registry.redhat.io/rhel9/postgresql-13@sha256:5105fc7494c8e9886204951ea6eed0a04dcc638ea65a2e1c15df5ebf99aae356
        - registry.redhat.io/rhel8/postgresql-13@sha256:3e3e87ba0081e6f2d00b7a0f44f1b7fe6465c3c8176503c5f967237a949fd9d7
        - registry.redhat.io/quay/quay-rhel9@sha256:c855425208f7f33a550d216328965fdcb3abebc3ee28fc0854bf62c58ce07266
        - registry.redhat.io/rhel8/postgresql-10@sha256:0b9dcbac4969cc755505ee152369f23ac891a0e4030e9e2519cae25e32416500
        - registry.redhat.io/quay/quay-builder-rhel9@sha256:d3803200676de5a10f81539d3cb65e3d1cfad4fdfe7171284cab758bfc1bdd6a
        - registry.redhat.io/quay/quay-operator-bundle@sha256:000771d05a6151960a085bce375f090d706c48328009000437dbc5a8711c9ac8
        - registry.redhat.io/quay/quay-operator-rhel9@sha256:16616e52f128f4a9b8511e7d9288bb1fcdd4e096a5a9b58400badbd0fad21476
        version: 3.16.0
      entries:
      - name: quay-operator.v3.16.0
        version: 3.16.0
      name: stable-3.16
    - currentCSV: quay-operator.v3.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:7a6e592d7f5f760b4451f9c974dbb96f56b1d3de92f039adcbf284f78ba13a02
          createdAt: 2021-10-12 22:10 UTC
          description: Opinionated deployment of Red Hat on Kubernetes.
          olm.skipRange: '>=3.3.x <3.6.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.6.10
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:75df6b8e6bef14844a08f7d994470fa6ec4ffa66d4b15faaa0a3ba373f612fbb
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:ec36241f0a9a2983b1894cd8501898e6b70379af51a81b1e09b0ba0e9b54b33f
        - registry.redhat.io/quay/quay-operator-bundle@sha256:55a5e6297109aea029bd40fac09a9fbc10c28a8c5558f9afc9b9b86c5dc7a4d4
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:7a6e592d7f5f760b4451f9c974dbb96f56b1d3de92f039adcbf284f78ba13a02
        - registry.redhat.io/quay/quay-rhel8@sha256:e75e4d084eba9bb65b9cc72e38294af314d49316b12a0beb75db808dc057830b
        - registry.redhat.io/rhel8/postgresql-10@sha256:4b912c80085b88a03309aeb7907efcc29dd3342fa3952b6ea067afb1914bfe53
        - registry.redhat.io/rhel8/redis-6@sha256:d7c7852338717308cbb59e9303e1ea35cc8e5c01ceb2818569be20c15f3f943d
        - registry.redhat.io/quay/clair-rhel8@sha256:cbafddd1eb50c1c0f9159ffafd86f44a8c0b976194903c96c6f144bfe62e749d
        version: 3.6.10
      entries:
      - name: quay-operator.v3.6.10
        version: 3.6.10
      - name: quay-operator.v3.6.9
        version: 3.6.9
      - name: quay-operator.v3.6.8
        version: 3.6.8
      - name: quay-operator.v3.6.7
        version: 3.6.7
      - name: quay-operator.v3.6.6
        version: 3.6.6
      - name: quay-operator.v3.6.5
        version: 3.6.5
      - name: quay-operator.v3.6.4
        version: 3.6.4
      - name: quay-operator.v3.6.2
        version: 3.6.2
      - name: quay-operator.v3.6.1
        version: 3.6.1
      - name: quay-operator.v3.6.0
        version: 3.6.0
      name: stable-3.6
    - currentCSV: quay-operator.v3.7.14
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:a8283c2be661e07c5f2f2e5b683c520846bcb91d580d9a3a0aa27ce994ddfff6
          createdAt: 2021-04-23 10:04 UTC
          description: Opinionated deployment of Red Hat on Kubernetes.
          olm.skipRange: '>=3.4.x <3.7.14'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: v3.7.14
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/clair-rhel8@sha256:d676af83e96740220e6f18721c98817ba071fd023a62ebdc3815424e94838083
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:04ac405c152bffb43b33fb2e7f45df8b3940eb21e055ebf6aa17bd81ebdeeab4
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:c54c77e09c95dc7d80d7b31e796857c8d06f2f733426629b53d3298206d23b20
        - registry.redhat.io/quay/quay-operator-bundle@sha256:e3f63ea56de7ca5388a20c17ac63e16f07935ab09bcdcd38a86639c9d59c8a7d
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:a8283c2be661e07c5f2f2e5b683c520846bcb91d580d9a3a0aa27ce994ddfff6
        - registry.redhat.io/quay/quay-rhel8@sha256:7bc9e115e9bace07505ffd225242cab83d5eb6d50358188d18fd9161bdf1a5a6
        - registry.redhat.io/rhel8/postgresql-10@sha256:a52ad402458ec8ef3f275972c6ebed05ad64398f884404b9bb8e3010c5c95291
        - registry.redhat.io/rhel8/redis-6@sha256:b15335d88b240bd6bbedeb7fe26f0a1de2f6c330af9758b0fb2edab7ca69f6df
        version: 3.7.14
      entries:
      - name: quay-operator.v3.7.14
        version: 3.7.14
      - name: quay-operator.v3.7.13
        version: 3.7.13
      - name: quay-operator.v3.7.12
        version: 3.7.12
      - name: quay-operator.v3.7.11
        version: 3.7.11
      - name: quay-operator.v3.7.10
        version: 3.7.10
      name: stable-3.7
    - currentCSV: quay-operator.v3.8.15
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:abec0fa7ee641c8e424e995b5fe07b98e522ad1eb92c3b90426f69941f33eb2e
          createdAt: 2021-04-23 10:04 UTC
          description: Opinionated deployment of Red Hat on Kubernetes.
          olm.skipRange: '>=3.5.x <3.8.15'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: v3.8.15
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-operator-bundle@sha256:53fcddadaa31a5f7d74c38f0bbd0d80b4c09796a580ef8494f60ff82fb6fe6c1
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:abec0fa7ee641c8e424e995b5fe07b98e522ad1eb92c3b90426f69941f33eb2e
        - registry.redhat.io/quay/quay-rhel8@sha256:de2b65506f99eebb5eaafca6bb42b4ebec08e9479dd0d50aa1286f197e42d6de
        - registry.redhat.io/rhel8/postgresql-10@sha256:b7fa644277d5e406b642685ff2ace1b1de7aea2e2a1421b3cbcda7d60405f44d
        - registry.redhat.io/rhel8/redis-6@sha256:444200241cb9186cd97d564d7acf077d83fc997a8ee5ee7fdae41b604895085c
        - registry.redhat.io/quay/clair-rhel8@sha256:b327fcfd7472cdb9d83a564904976b26b285fa576dc0a76e5590990ec77fd871
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:3c047c7b22fb42557bd3a9b9c9ac333f0df7d5e4a4d333a2b02a4313f57085be
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:7e4e57071439d671971b0de46b597cf6cff8ef3879ab711125a6ae7ecb9c6d29
        version: 3.8.15
      entries:
      - name: quay-operator.v3.8.15
        version: 3.8.15
      - name: quay-operator.v3.8.14
        version: 3.8.14
      - name: quay-operator.v3.8.13
        version: 3.8.13
      - name: quay-operator.v3.8.12
        version: 3.8.12
      - name: quay-operator.v3.8.11
        version: 3.8.11
      - name: quay-operator.v3.8.10
        version: 3.8.10
      - name: quay-operator.v3.8.9
        version: 3.8.9
      - name: quay-operator.v3.8.8
        version: 3.8.8
      - name: quay-operator.v3.8.7
        version: 3.8.7
      - name: quay-operator.v3.8.6
        version: 3.8.6
      - name: quay-operator.v3.8.5
        version: 3.8.5
      - name: quay-operator.v3.8.4
        version: 3.8.4
      - name: quay-operator.v3.8.3
        version: 3.8.3
      - name: quay-operator.v3.8.2
        version: 3.8.2
      - name: quay-operator.v3.8.1
        version: 3.8.1
      - name: quay-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: quay-operator.v3.9.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:81809b56de4139a26a6064239430f29744d8eb9bc07ee3260516d65b09ab86e0
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.9.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:571d88c0dc93c9194a5242b02101b7d77871d2d9496307df7dcb9dac971ab444
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:94f7e4f69cf8bad09b00ffb85bcf621f87df000e8a6077ba49fca88997a163fa
        - registry.redhat.io/quay/quay-operator-bundle@sha256:3c1f25918b505ec71eaf93d2a0b963d209e36d847e7fc48469f9d40b534344ae
        - registry.redhat.io/quay/quay-rhel8@sha256:f713bd016f375427a0a348e58639622cf21560c05d1b82653f2c47493fcba186
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:81809b56de4139a26a6064239430f29744d8eb9bc07ee3260516d65b09ab86e0
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/clair-rhel8@sha256:f4bb5da4f6ea525d620c94180548603e1686de8b85b9c92c0a8c59840a1f69da
        version: 3.9.17
      entries:
      - name: quay-operator.v3.9.17
        version: 3.9.17
      - name: quay-operator.v3.9.16
        version: 3.9.16
      - name: quay-operator.v3.9.15
        version: 3.9.15
      - name: quay-operator.v3.9.14
        version: 3.9.14
      - name: quay-operator.v3.9.13
        version: 3.9.13
      - name: quay-operator.v3.9.12
        version: 3.9.12
      - name: quay-operator.v3.9.11
        version: 3.9.11
      - name: quay-operator.v3.9.10
        version: 3.9.10
      - name: quay-operator.v3.9.9
        version: 3.9.9
      - name: quay-operator.v3.9.8
        version: 3.9.8
      - name: quay-operator.v3.9.7
        version: 3.9.7
      - name: quay-operator.v3.9.6
        version: 3.9.6
      - name: quay-operator.v3.9.5
        version: 3.9.5
      - name: quay-operator.v3.9.4
        version: 3.9.4
      - name: quay-operator.v3.9.3
        version: 3.9.3
      - name: quay-operator.v3.9.2
        version: 3.9.2
      - name: quay-operator.v3.9.1
        version: 3.9.1
      - name: quay-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.16
    packageName: quay-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: eventing-kogito
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eventing-kogito.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kogito.knative.dev/v1alpha1",
                "kind": "KogitoSource",
                "metadata": {
                  "name": "kogito-order-processing"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "eventing.knative.dev/v1",
                      "kind": "Broker",
                      "name": "default"
                    }
                  },
                  "subject": {
                    "apiVersion": "serving.knative.dev/v1",
                    "kind": "Service",
                    "name": "serverless-workflow-order-processing"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: gcr.io/knative-releases/knative.dev/eventing-kogito/cmd/controller:v1.2.0
          createdAt: "2021-08-25T12:00:00Z"
          olm.targetNamespaces: knative-kogito
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/knative-sandbox/eventing-kogito
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoSource is the representation of a Knative Eventing
              Source for a Kogito custom Service.
            displayName: Kogito Source
            kind: KogitoSource
            name: kogitosources.kogito.knative.dev
            version: v1alpha1
        description: |-
          Knative Eventing Source for Kogito Services. This controller will enable easy configuration of any Kogito custom Service
          with the Knative Eventing platform. Please find more information about using this source in the [Official Kogito Documentation](https://docs.jboss.org/kogito/release/latest/html_single/#_kogito_knative_eventing_add_on)

          **Note:** The admission webhooks are not installed via OLM at this time. Because of that, please ensure that you create the `KogitoSource` objects with the subbject and sink information with the appropriate namespace.
        displayName: Kogito Knative Eventing Source
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless workflow
        - kogito
        - knative
        - dmn
        - bpmn
        - eventing
        - cloudevents
        - messaging
        links:
        - name: Source Repository
          url: https://github.com/knative-sandbox/eventing-kogito
        - name: Kogito Knative Add-On Documentation
          url: https://docs.jboss.org/kogito/release/latest/html_single/#_kogito_knative_eventing_add_on
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - gcr.io/knative-releases/knative.dev/eventing-kogito/cmd/controller:v1.2.0
        - quay.io/openshift-community-operators/eventing-kogito@sha256:abe8d5803d2d96ebbb9fe4cda0feaa0217e92def6a669404362bcf741d934690
        version: 1.2.0
      entries:
      - name: eventing-kogito.v1.2.0
        version: 1.2.0
      - name: eventing-kogito.v1.1.0
        version: 1.1.0
      name: alpha
    defaultChannel: alpha
    packageName: eventing-kogito
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: k8gb.io
      provider-url: https://github.com/k8gb-io/k8gb
    name: k8gb
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: k8gb.v0.11.4
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"k8gb.absa.oss/v1beta1","kind":"Gslb","metadata":{"name":"test-gslb-failover","namespace":"test-gslb"},"spec":{"ingress":{"rules":[{"host":"failover.test.k8gb.io","http":{"paths":[{"backend":{"service":{"name":"frontend-podinfo","port":{"name":"http"}}},"path":"/"}]}}]},"strategy":{"primaryGeoTag":"eu-west-1","type":"failover"}}}]'
          capabilities: Seamless Upgrades
          categories: Networking
          certified: "false"
          containerImage: docker.io/absaoss/k8gb:v0.11.4
          createdAt: "2021-09-24 12:00:00"
          description: A cloud native Kubernetes Global Balancer
          operatorframework.io/suggested-namespace: k8gb
          operators.operatorframework.io.bundle.channels.v1: alpha
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: k8gb
          operators.operatorframework.io/builder: operator-sdk-v1.12.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/k8gb-io/k8gb
          support: cncf-k8gb-maintainers@lists.cncf.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gslb resource for global load balancing strategy configuration
            displayName: Gslb
            kind: Gslb
            name: gslbs.k8gb.absa.oss
            version: v1beta1
          - description: Using ExternalDNS it synchronizes exposed Kubernetes Services
              and Ingresses with DNS providers
            displayName: DNSEndpoint
            kind: DNSEndpoint
            name: dnsendpoints.externaldns.k8s.io
            version: v1alpha1
        description: |
          **A cloud native Kubernetes Global Balancer**

          A Global Service Load Balancing solution with a focus on having cloud native qualities and work natively in a Kubernetes context.

          Key Differentiators:
           - Load balancing is based on timeproof DNS protocol which is perfect for global scope and extremely reliable
           - No dedicated management cluster and no single point of failure
           - Kubernetes native application health checks utilizing status of Liveness and Readiness probes for load balancing decisions
           - Configuration with a single Kubernetes CRD of `Gslb` kind

          Operator needs to be configured by setting couple of environment variables. This can be done by modifying
          the subscription yaml in the web ui or via kubectl. Here is an example of changing the `EDGE_DNS_ZONE`:

          ```yaml
          kind: Subscription
            ...
          spec:
            ...
            config:
              env:
              - name: CLUSTER_GEO_TAG
                value: us
              - name: EDGE_DNS_ZONE
                value: mycloud.example.com
                ...
           ```
           For more deployment variables see [helm code](https://github.com/k8gb-io/k8gb/blob/v0.8.3/chart/k8gb/templates/operator.yaml#L53:L68).

           For more information see [k8gb.io](https://k8gb.io).
        displayName: k8gb
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gslb
        - dns-lb
        - kuberneters-global-balancer
        - kubernetes-operator
        - balancer
        - multi-cluster
        links:
        - name: Home
          url: https://www.k8gb.io/
        - name: Source
          url: https://github.com/k8gb-io/k8gb
        maintainers:
        - email: dinar.valeev@absa.africa
          name: Dinar Valeev
        - email: jiri.kremser@gmail.com
          name: Jiri Kremser
        - email: kuritka@gmail.com
          name: Michal Kuritka
        - email: timofey.ilinykh@absa.africa
          name: Timofey Ilinykh
        - email: yury.tsarev@absa.africa
          name: Yury Tsarev
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: k8gb.io
          url: https://github.com/k8gb-io/k8gb
        relatedImages:
        - quay.io/openshift-community-operators/k8gb@sha256:9743f957b00e5ad344fed0c062d616d8222990139ac4afbf14871fd9813f0ef0
        - absaoss/k8s_crd:v0.0.11
        - docker.io/absaoss/k8gb:v0.11.4
        version: 0.11.4
      entries:
      - name: k8gb.v0.11.4
        version: 0.11.4
      name: alpha
    defaultChannel: alpha
    packageName: k8gb
    provider:
      name: k8gb.io
      url: https://github.com/k8gb-io/k8gb
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: global-load-balancer-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: global-load-balancer-operator.v1.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSRecord",
                "metadata": {
                  "name": "hello-global-record"
                },
                "spec": {
                  "endpoints": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    }
                  ],
                  "globalZoneRef": {
                    "name": "external-dns-zone"
                  },
                  "loadBalancingPolicy": "Multivalue",
                  "name": "hello.my.base.domain",
                  "ttl": 60
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSRecord",
                "metadata": {
                  "name": "route53-geoproximity-global-record-with-healthcheck"
                },
                "spec": {
                  "endpoints": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    }
                  ],
                  "globalZoneRef": {
                    "name": "route53-global-dns-zone"
                  },
                  "healthCheck": {
                    "failureThreshold": 3,
                    "httpGet": {
                      "host": "geoproximity-hc.${global_base_domain}",
                      "path": "/healthz",
                      "port": 80,
                      "scheme": "HTTP"
                    },
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 2
                  },
                  "loadBalancingPolicy": "Geoproximity",
                  "name": "geoproximity-hc.my.base.domain",
                  "ttl": 60
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSZone",
                "metadata": {
                  "name": "external-dns-zone"
                },
                "spec": {
                  "domain": "myglobalzone.mybasedomain.io",
                  "provider": {
                    "externalDNS": {
                      "annotations": {
                        "type": "global"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSZone",
                "metadata": {
                  "name": "route53-global-dns-zone"
                },
                "spec": {
                  "domain": "myglobalzone.mybasedomain.io",
                  "provider": {
                    "route53": {
                      "credentialsSecretRef": {
                        "name": "route53-global-zone-credentials",
                        "namespace": "mynamespace"
                      },
                      "zoneID": "Z083892239ROKNEP70BDY"
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalRouteDiscovery",
                "metadata": {
                  "name": "external-dns-globalroutediscovery"
                },
                "spec": {
                  "clusters": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3"
                    }
                  ],
                  "defaultLoadBalancingPolicy": "Multivalue",
                  "defaultTTL": 30,
                  "globalZoneRef": {
                    "name": "external-dns-zone"
                  },
                  "routeSelector": {
                    "matchLabels": {
                      "route-type": "global"
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalRouteDiscovery",
                "metadata": {
                  "name": "route53-globalroutediscovery"
                },
                "spec": {
                  "clusters": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3"
                    }
                  ],
                  "defaultLoadBalancingPolicy": "Multivalue",
                  "defaultTTL": 30,
                  "globalZoneRef": {
                    "name": "route53-global-dns-zone"
                  },
                  "routeSelector": {
                    "matchLabels": {
                      "route-type": "global"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking, Cloud Provider
          certified: "false"
          containerImage: quay.io/redhat-cop/global-load-balancer-operator@sha256:c0b6ac9b03571a74a56b28302d720e8aa4442233f7867d05ed365e022f7cb8f5
          createdAt: "2021-12-02T17:33:23Z"
          description: This operator creates automation around a DNS to operate as
            a global load balancer for a set of OpenShift clusters.
          operatorframework.io/suggested-namespace: global-load-balancer-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/global-load-balancer-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DNSEndpoint
            name: dnsendpoints.externaldns.k8s.io
            version: v1alpha1
          - description: GlobalDNSRecord is the Schema for the globaldnsrecords API
            displayName: Global DNSRecord
            kind: GlobalDNSRecord
            name: globaldnsrecords.redhatcop.redhat.io
            version: v1alpha1
          - description: GlobalDNSZone is the Schema for the globaldnszones API
            displayName: Global DNSZone
            kind: GlobalDNSZone
            name: globaldnszones.redhatcop.redhat.io
            version: v1alpha1
          - description: GlobalRouteDiscovery is the Schema for the globalroutediscoveries
              API
            displayName: Global Route Discovery
            kind: GlobalRouteDiscovery
            name: globalroutediscoveries.redhatcop.redhat.io
            version: v1alpha1
        description: "The global-load-balancer-operator implements automation to program
          a DNS service to act as global load balancer for applications deployed to
          multiple OpenShift clusters.\nThis operator is designed to be deployed to
          a control cluster which will watch the load balanced clusters (controlled
          clusters).\nThere are two main concepts (APIs) provided by this operator:\n\n1.
          GlobalDNSZone\n2. GlobalDNSRecord\n\n## GlobalDNSZone\n\nThe `GlobalDNSZone`
          CR allows you to configure a zone which will contain global load balanced
          records and the provider used to populate it.\nHere is an example of GlobalDNSZone:\n\n```yaml\napiVersion:
          redhatcop.redhat.io/v1alpha1\nkind: GlobalDNSZone\nmetadata:\n  name: external-dns-zone\nspec:\n
          \ # Add fields here\n  domain: global.myzone.io\n  provider:\n    externalDNS:\n
          \     annotations:\n        type: global\n```\n\nHere is a table summarizing
          the supported providers and their capabilities:\n\n| Provider  | Supports
          Health Checks  | Supports Multivalue LB | Supports Latency LB  | Supports
          GeoProximity LB  |\n|:--:|:--:|:---:|:---:|:---:|\n| External-dns  | no
          \ | yes | no  | no  |\n| Route53  | yes | yes(*)  | yes(*)  | yes(*)  |\n\n(*)
          only if all controlled clusters run on AWS.\n\n## GlobalDNSRecord\n\nThe
          `GlobalDNSRecord` CR allows you to specify the intention to create a global
          dns record. Here is an example\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          GlobalDNSRecord\nmetadata:\n  name: hello-global-record\nspec:\n  name:
          hello.global.myzone.io\n  endpoints:\n  - clusterName: cluster1\n    clusterCredentialRef:\n
          \     name: kubeconfig\n      namespace: cluster1\n    loadBalancerServiceRef:\n
          \     name: router-default\n      namespace: openshift-ingress\n  - clusterName:
          cluster2\n    clusterCredentialRef:\n      name: kubeconfig\n      namespace:
          cluster2\n    loadBalancerServiceRef:\n      name: router-default\n      namespace:
          openshift-ingress\n  - clusterName: cluster3\n    clusterCredentialRef:\n
          \     name: kubeconfig\n      namespace: cluster3\n    loadBalancerServiceRef:\n
          \     name: router-default\n      namespace: openshift-ingress\n  ttl: 60\n
          \ loadBalancingPolicy: Multivalue\n  globalZoneRef:\n    name: external-dns-zone\n
          \ healthCheck:\n    failureThreshold: 3\n    httpGet:\n      host: hello.global.myzone.io\n
          \     httpHeaders:\n        - name: ciao\n          value: hello\n      path:
          /readyz\n      port: 80\n      scheme: HTTP\n    periodSeconds: 10\n    successThreshold:
          1\n    timeoutSeconds: 1     \n```\n\nThe list of endpoints identifies the
          set of `LoadBalancer` type of services to watch on the remote clusters (at
          the moment only LoadBalancer services are supported). These are the `LoadBalancer`
          services created by the [ingress controller](https://docs.openshift.com/container-platform/4.5/networking/ingress-operator.html)
          on which the routers rely. Each entry of this list requires a reference
          to the loadbalancer service on the remote cluster and a reference to a local
          secret containing the credential to connect to the remote cluster.\n\nThis
          secret must contain one entry called `kubeconfig` with a kubeconfig file
          with a default context pointing to the remote cluster. The account used
          by the kubeconfig file (presumably a service account) will require at a
          minimum cluster-level permissions as described in this [cluster role](./docs/scripts/remote-account-cluster-role.yaml).\n\nThe
          `globalZoneRef` field refers to a local (same namespace) `GlobalZone` CR.
          The DNS record represented by this `GlobalDNSRecord`, will be created in
          the referenced zone.\n\n`ttl` is the TTL of the crated DNS record.\n\n`loadBalancingPolicy`
          is the load balancing policy for this global record. It must match one of
          the policy supported by the provider of the referenced `GlobalZone`.\n\nFinally,
          `healthcheck` represent a [probe](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/#probe-v1-core)
          to be used to test the health of a record. This field will be ignored if
          the provider does not support health checks.\n\n## External DNS Provider\n\nThe
          [external-dns](https://github.com/kubernetes-sigs/external-dns) provider
          delegates to external-dns the creation of the actual DNS records by creating
          a `DNSEndpoint` object.\nThe `DNSEndpoint` object will be created in the
          same namespace as the `GlobalDNSRecord` and will be owned by it.\nThe `DNSEdnpoint`
          object will have the same labels as the `GlobalDNSRecord` and the annotations
          specified in the GlobalDNSZone configuration.\nExternal-dns should be configured
          to watch for DNSEnpoints at the cluster level and to point to the desired
          provider.\nDetails on configuration can be found at the external-dns git
          repository.\nThe External-dns should be used as a fall back option when
          other options are not available as it does not support health checks and
          advanced load balancing policies.\n\n## AWS Route53 provider\n\nAWS Route53
          provider uses the Route53 service as a global loadbalancer and offers advanced
          routing capabilities via [route53 traffic policies](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/traffic-flow.html)
          (note that traffic policies will trigger an expense).\nThe following routing
          polices are currently supported:\n\n1. [Multivalue](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-multivalue)\n2.
          [Geoproximity](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-geoproximity)\n3.
          [Latency](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-latency)\n\nAWS
          Route53 provider at the moment requires that all the controlled clusters
          run in AWS.\n\nIf health checks are defined, a route53 health check originating
          from any reason (you have to ensure connectivity) will be created for each
          of the endpoint. Because the endpoint represent s a shared ELB (shared with
          other apps, that is) and the health check is app specific, we cannot use
          the ELB health check, so the route53 endpoint is created with one of the
          two IP exposed by the ELB. This is suboptimal, but it works in most situations.\n\n##
          Global Route Auto Discovery\n\nThe aboev examples showed how to create global
          DNS records. This can be good in some situations, but most of the times
          in an openshift deployment global DNS records will point to routes that
          are intended to be global.\nThe global-load-balancer operator can auto-discover
          these routes and automatically create the corresponding `GloablDNSRecord`.
          The `GlobalRouteDiscovery` CRD is used to configure the discovery process,
          here is an example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          GlobalRouteDiscovery\nmetadata:\n  name: route53-globalroutediscovery\nspec:\n
          \ clusters:\n  - clusterName: cluster1\n    clusterCredentialRef:\n      name:
          ${cluster1_secret_name}\n      namespace: cluster1\n...\n  routeSelector:\n
          \   matchLabels:\n      route-type: global\n  defaultLoadBalancingPolicy:
          Multivalue\n  defaultTTL: 30 \n  globalZoneRef:\n    name: route53-global-dns-zone\n```\n\nThis
          global discovery route will discover routes in the provided list of cluster.
          Only the routes that match the route selector will be considered global.
          \nThe default load balancing policy and default TTL can be expressed in
          the `GlobalRouteDiscovery` CR. However with the following annotations, it's
          possible to configure route-specific values:\n\n* `global-load-balancer-operator.redhat-cop.io/load-balancing-policy`
          to set the load balancing policy\n* `global-load-balancer-operator.redhat-cop.io/ttl`
          to set the TTL\n\nThe globalZoneRef refers to the global zone to be used
          for the created `GlobalDNSRecords`.\n\nHealth checks will also be automatically
          discovered. If the pods behind the route expose a readiness check of httpGet
          kind, that configuration will be used to create the GlobalDNSRecord health
          check.\nWhen more than one container is present in the pod, by default the
          first container will be examined for health check. This behavior can be
          overridden with the this annotation on the route: `global-load-balancer-operator.redhat-cop.io/container-probe`
          where the value will container the name of the container with teh correct
          readiness probe.\n\nIf routes with the same namespace and name exists in
          multiple cluster, the following conditions must be met:\n\n* all host names
          must be the same\n* all load balancing policy must be the same\n* all TTLs
          must be the same\n* all discovered readiness checks must be the same\n\n##
          Examples\n\nThese examples are intended to help you setting up working configuration
          with each of the providers\n\n### Cluster Set up\n\nTwo approaches for cluster
          setup are provided\n\n1. [One cluster, three ingress-gateways.](https://github.com/redhat-cop/global-load-balancer-operator/docs/one-cluster-three-ingress-gateways.md)
          This approach is intended for development purposes and has the objective
          to keep resource consumption at the minimum.\n2. [Control cluster and three
          controlled clusters in different regions.](https://github.com/redhat-cop/global-load-balancer-operator/docs/three-clusters.md).
          This approach represents a more realistic set-up albeit it consumes more
          resources.\n\nYou can also set up the cluster on your own, at the end the
          following conditions must be met:\n\nThree namespace `cluster1` `cluster2`
          `cluster3` are created.\nthe following environment variables are initialized
          for each cluster:\n\n1. <cluster>_secret_name. Pointing to a secret in each
          of the cluster namespaces containing a valid kubeconfig fot that cluster\n2.
          <cluster>_service_name.  Pointing to the name of the loadbalancer service
          to be used for that cluster.\n3. <cluster>_service_namespace. Pointing to
          the namespace of the loadbalancer service to be used for that cluster.\n\nHere
          are examples for the supported provider:\n\n1. [Setting up external-dns
          as provider](https://github.com/redhat-cop/global-load-balancer-operator/docs/external-dns-provider.md)\n2.
          [Setting up route53 as a provider](https://github.com/redhat-cop/global-load-balancer-operator/docs/aws-route53-provider.md)\n"
        displayName: Global Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Networking
        - Cloud Provider
        - Global Load Balancing
        - GLB
        - GTM
        - route53
        - DNS
        links:
        - name: GigHub Repository
          url: https://github.com/redhat-cop/global-load-balancer-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/global-load-balancer-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/global-load-balancer-operator@sha256:50771c320c8b7faea144f765535e89979f9f81e61d34c8dd2e86139fa68e222e
        - quay.io/redhat-cop/global-load-balancer-operator@sha256:c0b6ac9b03571a74a56b28302d720e8aa4442233f7867d05ed365e022f7cb8f5
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.4.2
      entries:
      - name: global-load-balancer-operator.v1.4.2
        version: 1.4.2
      - name: global-load-balancer-operator.v1.4.1
        version: 1.4.1
      - name: global-load-balancer-operator.v1.4.0
        version: 1.4.0
      - name: global-load-balancer-operator.v1.3.0
        version: 1.3.0
      - name: global-load-balancer-operator.v1.2.0
        version: 1.2.0
      - name: global-load-balancer-operator.v1.1.0
        version: 1.1.0
      - name: global-load-balancer-operator.v1.0.7
        version: 1.0.7
      - name: global-load-balancer-operator.v1.0.6
        version: 1.0.6
      - name: global-load-balancer-operator.v1.0.5
        version: 1.0.5
      - name: global-load-balancer-operator.v1.0.4
        version: 1.0.4
      - name: global-load-balancer-operator.v1.0.3
        version: 1.0.3
      - name: global-load-balancer-operator.v1.0.2
        version: 1.0.2
      - name: global-load-balancer-operator.v1.0.1
        version: 1.0.1
      - name: global-load-balancer-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: global-load-balancer-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: cli-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cli-manager-operator.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "CliManager",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-cli-manager-operator"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed",
                  "operatorLogLevel": "Normal"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-11-24"
          description: "The CLI Manager is a comprehensive tool designed to simplify
            the management of \nOpenShift CLI plugins within the OpenShift environment.
            \nModeled after the popular krew plugin manager, it offers seamless integration,
            \neasy installation, and efficient handling of a wide array of plugins,
            \nenhancing your OpenShift command-line experience.\n"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-cli-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          repository: https://github.com/openshift/cli-manager-operator
          skipRange: '>=0.1.1 <0.2.0'
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: CLI Manager
            kind: CliManager
            name: climanagers.operator.openshift.io
            version: v1
          - displayName: CLI Plugin
            kind: Plugin
            name: plugins.config.openshift.io
            version: v1alpha1
        description: "The CLI Manager is a comprehensive tool designed to simplify
          the management of \nOpenShift CLI plugins within the OpenShift environment.
          \nModeled after the popular krew plugin manager, it offers seamless integration,
          \neasy installation, and efficient handling of a wide array of plugins,
          \nenhancing your OpenShift command-line experience.\n"
        displayName: CLI Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cli-manager-operator
        - cli-manager
        links:
        - name: Source Code
          url: https://github.com/openshift/cli-manager
        - name: Source Code
          url: https://github.com/openshift/cli-manager-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/cli-manager/cli-manager-operator-bundle@sha256:f84f5609ed0c329c810bb85d66f24e2be6b0ae421c9870048d6af6079f01abed
        - registry.redhat.io/cli-manager/cli-manager-rhel9-operator@sha256:e68b034798ebb1cfa7e17c055dbeec8c8aa46afa7d1291a7a2dbecbb691f71ba
        - registry.redhat.io/cli-manager/cli-manager-rhel9@sha256:4185a2d8f361b3bafbf677e35229c2b58245d3a52dae44d67b5990b62ceffb94
        version: 0.2.0
      entries:
      - name: cli-manager-operator.v0.2.0
        version: 0.2.0
      - name: cli-manager-operator.v0.1.1
        version: 0.1.1
      name: tech-preview
    defaultChannel: tech-preview
    packageName: cli-manager
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Odigos
      provider-url: https://odigos.io
    name: odigos-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odigos-operator.v1.8.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.odigos.io/v1alpha1",
                "kind": "Odigos",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "odigos-operator"
                  },
                  "name": "odigos-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Logging & Tracing
          containerImage: registry.connect.redhat.com/odigos/odigos-certified-operator-ubi9@sha256:3045bd830d1f614e04e7d0444bbee2aac6bf0f7c7eb5a1f4e418888d3a383d2b
          createdAt: "2025-10-23T21:01:56Z"
          description: Odigos enables automatic distributed tracing with OpenTelemetry
            and eBPF.
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: Odigos Enterprise subscription
            (for enterprise features)
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Odigos
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Odigos is the Schema for the odigos API
            displayName: Odigos
            kind: Odigos
            name: odigos.operator.odigos.io
            version: v1alpha1
        description: |-
          The Odigos Operator provides options for installing and configuring Odigos.

          Upon creation of an Odigos resource, the Odigos Operator installs the following Odigos components:

          - Instrumentor
          - Odiglet
          - Autoscaler
          - Scheduler
          - Frontend UI

          With Odigos installed, follow the Odigos docs at docs.odigos.io for instructions on instrumenting applications and configuring destinations.
        displayName: Odigos Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - OpenTelemetry
        - eBPF
        - tracing
        - observability
        - distributed tracing
        - otel
        - monitoring
        links:
        - name: Odigos
          url: https://odigos.io
        - name: Odigos Documentation
          url: https://docs.odigos.io
        - name: Odigos on Github
          url: https://github.com/odigos-io/odigos
        maintainers:
        - email: mike@odigos.io
          name: Mike Dame
        maturity: alpha
        minKubeVersion: 1.20.15
        provider:
          name: Odigos
          url: https://odigos.io
        relatedImages:
        - registry.connect.redhat.com/odigos/odigos-enterprise-instrumentor-ubi9@sha256:825989f7c215ead4ad1ef4a08a4f08c2ac92bcb9e6119498fcd197e239615cf6
        - registry.connect.redhat.com/odigos/odigos-enterprise-odiglet-ubi9@sha256:7b4405c8b46c19ec2120863d68684aae036623e4bc118d0b76b28d7ed547b7a9
        - registry.connect.redhat.com/odigos/odigos-odiglet-ubi9@sha256:707a17cf290f1f4959525b51b4c3f3bec5ab84ebbc7ab3744f99698866c85587
        - registry.connect.redhat.com/odigos/odigos-instrumentor-ubi9@sha256:cc72a55962322f911d2c4fa5bd9a0cb976e600883c43846d5550a10d60d93a83
        - registry.connect.redhat.com/odigos/operator-bundle@sha256:4c478ef3756f061bcb682bcbb39aa1abcad768ed50230629c1a1ccea77ab3ff1
        - registry.connect.redhat.com/odigos/odigos-scheduler-ubi9@sha256:df9474ea9f0e789ce94fb212c710163959b6d02f8cc90ecdf88339d645703418
        - registry.connect.redhat.com/odigos/odigos-ui-ubi9@sha256:d825f32fd723ba969a3dc101731e006e7323d9bd9a85d9ceeaec5027f4dadcc0
        - registry.connect.redhat.com/odigos/odigos-autoscaler-ubi9@sha256:1ee37adda9ee8bc52491ffd1c60ae0e1d99ba232fcf7af81fdeef79646069bab
        - registry.connect.redhat.com/odigos/odigos-certified-operator-ubi9@sha256:3045bd830d1f614e04e7d0444bbee2aac6bf0f7c7eb5a1f4e418888d3a383d2b
        - registry.connect.redhat.com/odigos/odigos-collector-ubi9@sha256:d8660623961e54d90150df87a89459fb164724f16a3b151c0cd7bbbeaa773aae
        version: 1.8.4
      entries:
      - name: odigos-operator.v1.8.4
        version: 1.8.4
      name: alpha
    defaultChannel: alpha
    packageName: odigos-operator
    provider:
      name: Odigos
      url: https://odigos.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NdmSpc project
      provider-url: ""
    name: ndmspc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ndmspc-operator.v0.20250209.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.ndmspc.io/v1alpha1",
                "kind": "NdmSpcConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ndmspc-operator",
                    "app.kubernetes.io/instance": "ndmspcconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ndmspcconfig",
                    "app.kubernetes.io/part-of": "ndmspc-operator"
                  },
                  "name": "ndmspc-sample"
                },
                "spec": {
                  "executor": {
                    "image": "registry.gitlab.com/ndmspc/api:v0.20240215.2",
                    "name": "executor"
                  },
                  "executors": 1,
                  "ingressclasstype": "nginx",
                  "ingressenabled": true,
                  "ingresshostdomain": "127.0.0.1.sslip.io",
                  "ingressnostname": "ndmspc",
                  "ingressssltraefik": false,
                  "naf": {
                    "image": "registry.gitlab.com/ndmspc/naf:v0.20250129.0",
                    "name": "naf"
                  },
                  "ndmvr": {
                    "image": "registry.gitlab.com/ndmspc/ndmvr/shared:v0.20230320.0",
                    "name": "ndmvr"
                  },
                  "salsa": {
                    "image": "registry.gitlab.com/ndmspc/user/ndmspc:v0.20240412.0"
                  },
                  "storage": {
                    "image": "registry.gitlab.com/ndmspc/storage-server:v0.20250205.0",
                    "mongodb": {
                      "image": "docker.io/library/mongo:latest",
                      "password": "admin",
                      "port": 27017,
                      "username": "admin"
                    },
                    "name": "storage",
                    "port": 8080
                  },
                  "webapp": {
                    "image": "registry.gitlab.com/ndmspc/react-ndmspc:v0.20240412.0",
                    "name": ""
                  },
                  "webappcontainerport": 8080,
                  "webapps": 1,
                  "worker": {
                    "resources": {
                      "limits": {
                        "cpu": "200m",
                        "memory": "2Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "1Gi"
                      }
                    }
                  },
                  "workers": 2,
                  "workerslots": 1,
                  "zmq2ws": {
                    "image": "registry.gitlab.com/ndmspc/zmq2ws:v1.20231012.0",
                    "name": "zmq2ws"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: registry.gitlab.com/ndmspc/ndmspc-operator:0.20250209.0
          createdAt: "2025-02-09T12:49:06Z"
          description: The NdmSpc operator automates the deployment and management
            of Ndmspc suite on Kubernetes cluster.
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://gitlab.com/ndmspc/ndmspc-operator
          support: NDMSPC Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NdmSpc configuration
            displayName: NdmSpc Config
            kind: NdmSpcConfig
            name: ndmspcconfigs.apps.ndmspc.io
            version: v1alpha1
        description: "The NdmSpc operator automates the deployment and management
          of Ndmspc suite on Kubernetes cluster. This operator allows user to deploy
          SALSA cluster with ZMQ2WS and job executor service and specify custom webapp
          page.\n\n### Capabilities\n\n- SALSA cluster\n- ZMQ2WS api service\n- Job
          executor service \n- Custom WebApp page\n"
        displayName: NdmSpc operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ndmspc
        links:
        - name: Ndmspc Operator
          url: https://ndmspc.gitlab.io/docs
        maintainers:
        - email: ndmspc@gmail.com
          name: NdmSpc Support
        maturity: alpha
        provider:
          name: NdmSpc project
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/ndmspc-operator@sha256:b1f47ce0cd6930d902dc3538a1a87140dbe9257dd50773a518fc2350185f90cc
        - registry.gitlab.com/ndmspc/ndmspc-operator:0.20250209.0
        version: 0.20250209.0
      entries:
      - name: ndmspc-operator.v0.20250209.0
        version: 0.20250209.0
      - name: ndmspc-operator.v0.20250131.0
        version: 0.20250131.0
      - name: ndmspc-operator.v0.20240412.0
        version: 0.20240412.0
      - name: ndmspc-operator.v0.11.6
        version: 0.11.6
      - name: ndmspc-operator.v0.11.4
        version: 0.11.4
      - name: ndmspc-operator.v0.11.3
        version: 0.11.3
      - name: ndmspc-operator.v0.11.2
        version: 0.11.2
      - name: ndmspc-operator.v0.11.1
        version: 0.11.1
      - name: ndmspc-operator.v0.10.2
        version: 0.10.2
      - name: ndmspc-operator.v0.10.1
        version: 0.10.1
      - name: ndmspc-operator.v0.10.0
        version: 0.10.0
      - name: ndmspc-operator.v0.9.0
        version: 0.9.0
      - name: ndmspc-operator.v0.7.4
        version: 0.7.4
      - name: ndmspc-operator.v0.7.1
        version: 0.7.1
      - name: ndmspc-operator.v0.6.0
        version: 0.6.0
      - name: ndmspc-operator.v0.5.0
        version: 0.5.0
      name: alpha
    defaultChannel: alpha
    packageName: ndmspc-operator
    provider:
      name: NdmSpc project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: K4all
      provider-url: https://github.com/gpillon/kubevirt-wol
    name: kubevirt-wol
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubevirt-wol.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kubevirt-wol"
                  },
                  "name": "default"
                },
                "spec": {
                  "agent": {
                    "imagePullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "All",
                  "namespaceSelectors": [
                    "default"
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "explicit-example"
                },
                "spec": {
                  "agent": {
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 600,
                  "discoveryMode": "Explicit",
                  "explicitMappings": [
                    {
                      "macAddress": "52:54:00:12:34:56",
                      "namespace": "default",
                      "vmName": "my-vm-1"
                    },
                    {
                      "macAddress": "52:54:00:ab:cd:ef",
                      "namespace": "production",
                      "vmName": "my-vm-2"
                    }
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "labelselector-example"
                },
                "spec": {
                  "agent": {
                    "nodeSelector": {
                      "node-role.kubernetes.io/worker": ""
                    },
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "LabelSelector",
                  "namespaceSelectors": [
                    "production"
                  ],
                  "vmSelector": {
                    "matchLabels": {
                      "wol.pillon.org/enabled": "true"
                    }
                  },
                  "wolPorts": [
                    9,
                    7
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: OpenShift Optional
          containerImage: quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
          createdAt: "2025-10-27T02:37:07Z"
          description: |
            A Kubernetes Operator that enables Wake-on-LAN functionality for KubeVirt VirtualMachines. This operator listens for WOL magic packets on the network and automatically starts the corresponding VirtualMachines in your Kubernetes cluster.
          operatorframework.io/suggested-namespace: kubevirt-wol-system
          operatorframework.io/suggested-namespace-template: |
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "kubevirt-wol-system",
                "annotations": {
                  "openshift.io/node-selector": ""
                },
                "labels": {
                  "openshift.io/cluster-monitoring": "true"
                }
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["servicemonitors.monitoring.coreos.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/gpillon/kubevirt-wol
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WolConfig is the Schema for the Wake-on-LAN configurations
              API
            displayName: Wol Config
            kind: WolConfig
            name: wolconfigs.wol.pillon.org
            version: v1beta1
        description: "A Kubernetes Operator that enables Wake-on-LAN functionality
          for KubeVirt VirtualMachines.\n\n**Installation**: This operator must be
          installed in the `kubevirt-wol-system` namespace.\n\n**Prerequisites**:
          \n- **Required**: KubeVirt must be installed in your cluster.\n- **Optional**:
          Prometheus Operator (for ServiceMonitor-based metrics collection). The operator
          works without it, but metrics will not be automatically scraped.\n\n**Features**:\n-
          Automatically starts VirtualMachines when WOL magic packets are received\n-
          Supports multiple WOL ports (default: UDP 9)\n- Three discovery modes: All
          VMs, Label Selector, or Explicit MAC mappings\n- Dynamic agent deployment
          per WolConfig\n- Automatic cleanup via OwnerReference\n- Prometheus metrics
          integration (ServiceMonitor optional)\n\n**Post-Installation (OpenShift)**:
          To enable metrics collection in OpenShift cluster monitoring, run:\n```\noc
          label namespace <operator-namespace> openshift.io/cluster-monitoring=true\n```\nReplace
          `<operator-namespace>` with the namespace where the operator is installed
          (e.g., `kubevirt-wol-system`).\n\nAfter labeling the namespace, the operator
          metrics will appear in OpenShift Console → Observe → Targets.\n\n**Note
          on Metrics**: If Prometheus Operator is not installed, the ServiceMonitor
          resource will not be reconciled, but the operator will continue to function
          normally. Metrics are still available at the `/metrics` endpoint.\n\n**Usage**:
          After installation, create a WolConfig resource to configure Wake-on-LAN
          for your KubeVirt VirtualMachines.\n\n**Documentation**: https://github.com/gpillon/kubevirt-wol\n"
        displayName: Kubevirt Wake on Lan
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubevirt
        - wol
        - wake on lan
        - wake
        links:
        - name: Kubevirt Wol
          url: https://github.com/gpillon/kubevirt-wol
        maintainers:
        - email: gpillon@redhat.com
          name: Giorgio Pillon
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: K4all
          url: https://github.com/gpillon/kubevirt-wol
        relatedImages:
        - quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
        - quay.io/community-operator-pipeline-prod/kubevirt-wol:0.0.2
        version: 0.0.2
      entries:
      - name: kubevirt-wol.v0.0.2
        version: 0.0.2
      name: candidate-v0
    - currentCSV: kubevirt-wol.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kubevirt-wol"
                  },
                  "name": "default"
                },
                "spec": {
                  "agent": {
                    "imagePullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "All",
                  "namespaceSelectors": [
                    "default"
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "explicit-example"
                },
                "spec": {
                  "agent": {
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 600,
                  "discoveryMode": "Explicit",
                  "explicitMappings": [
                    {
                      "macAddress": "52:54:00:12:34:56",
                      "namespace": "default",
                      "vmName": "my-vm-1"
                    },
                    {
                      "macAddress": "52:54:00:ab:cd:ef",
                      "namespace": "production",
                      "vmName": "my-vm-2"
                    }
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "labelselector-example"
                },
                "spec": {
                  "agent": {
                    "nodeSelector": {
                      "node-role.kubernetes.io/worker": ""
                    },
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "LabelSelector",
                  "namespaceSelectors": [
                    "production"
                  ],
                  "vmSelector": {
                    "matchLabels": {
                      "wol.pillon.org/enabled": "true"
                    }
                  },
                  "wolPorts": [
                    9,
                    7
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: OpenShift Optional
          containerImage: quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
          createdAt: "2025-10-27T02:37:07Z"
          description: |
            A Kubernetes Operator that enables Wake-on-LAN functionality for KubeVirt VirtualMachines. This operator listens for WOL magic packets on the network and automatically starts the corresponding VirtualMachines in your Kubernetes cluster.
          operatorframework.io/suggested-namespace: kubevirt-wol-system
          operatorframework.io/suggested-namespace-template: |
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "kubevirt-wol-system",
                "annotations": {
                  "openshift.io/node-selector": ""
                },
                "labels": {
                  "openshift.io/cluster-monitoring": "true"
                }
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["servicemonitors.monitoring.coreos.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/gpillon/kubevirt-wol
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WolConfig is the Schema for the Wake-on-LAN configurations
              API
            displayName: Wol Config
            kind: WolConfig
            name: wolconfigs.wol.pillon.org
            version: v1beta1
        description: "A Kubernetes Operator that enables Wake-on-LAN functionality
          for KubeVirt VirtualMachines.\n\n**Installation**: This operator must be
          installed in the `kubevirt-wol-system` namespace.\n\n**Prerequisites**:
          \n- **Required**: KubeVirt must be installed in your cluster.\n- **Optional**:
          Prometheus Operator (for ServiceMonitor-based metrics collection). The operator
          works without it, but metrics will not be automatically scraped.\n\n**Features**:\n-
          Automatically starts VirtualMachines when WOL magic packets are received\n-
          Supports multiple WOL ports (default: UDP 9)\n- Three discovery modes: All
          VMs, Label Selector, or Explicit MAC mappings\n- Dynamic agent deployment
          per WolConfig\n- Automatic cleanup via OwnerReference\n- Prometheus metrics
          integration (ServiceMonitor optional)\n\n**Post-Installation (OpenShift)**:
          To enable metrics collection in OpenShift cluster monitoring, run:\n```\noc
          label namespace <operator-namespace> openshift.io/cluster-monitoring=true\n```\nReplace
          `<operator-namespace>` with the namespace where the operator is installed
          (e.g., `kubevirt-wol-system`).\n\nAfter labeling the namespace, the operator
          metrics will appear in OpenShift Console → Observe → Targets.\n\n**Note
          on Metrics**: If Prometheus Operator is not installed, the ServiceMonitor
          resource will not be reconciled, but the operator will continue to function
          normally. Metrics are still available at the `/metrics` endpoint.\n\n**Usage**:
          After installation, create a WolConfig resource to configure Wake-on-LAN
          for your KubeVirt VirtualMachines.\n\n**Documentation**: https://github.com/gpillon/kubevirt-wol\n"
        displayName: Kubevirt Wake on Lan
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubevirt
        - wol
        - wake on lan
        - wake
        links:
        - name: Kubevirt Wol
          url: https://github.com/gpillon/kubevirt-wol
        maintainers:
        - email: gpillon@redhat.com
          name: Giorgio Pillon
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: K4all
          url: https://github.com/gpillon/kubevirt-wol
        relatedImages:
        - quay.io/community-operator-pipeline-prod/kubevirt-wol:0.0.2
        - quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
        version: 0.0.2
      entries:
      - name: kubevirt-wol.v0.0.2
        version: 0.0.2
      name: fast-v0
    - currentCSV: kubevirt-wol.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kubevirt-wol"
                  },
                  "name": "default"
                },
                "spec": {
                  "agent": {
                    "imagePullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "All",
                  "namespaceSelectors": [
                    "default"
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "explicit-example"
                },
                "spec": {
                  "agent": {
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 600,
                  "discoveryMode": "Explicit",
                  "explicitMappings": [
                    {
                      "macAddress": "52:54:00:12:34:56",
                      "namespace": "default",
                      "vmName": "my-vm-1"
                    },
                    {
                      "macAddress": "52:54:00:ab:cd:ef",
                      "namespace": "production",
                      "vmName": "my-vm-2"
                    }
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "labelselector-example"
                },
                "spec": {
                  "agent": {
                    "nodeSelector": {
                      "node-role.kubernetes.io/worker": ""
                    },
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "LabelSelector",
                  "namespaceSelectors": [
                    "production"
                  ],
                  "vmSelector": {
                    "matchLabels": {
                      "wol.pillon.org/enabled": "true"
                    }
                  },
                  "wolPorts": [
                    9,
                    7
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: OpenShift Optional
          containerImage: quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
          createdAt: "2025-10-27T02:37:07Z"
          description: |
            A Kubernetes Operator that enables Wake-on-LAN functionality for KubeVirt VirtualMachines. This operator listens for WOL magic packets on the network and automatically starts the corresponding VirtualMachines in your Kubernetes cluster.
          operatorframework.io/suggested-namespace: kubevirt-wol-system
          operatorframework.io/suggested-namespace-template: |
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "kubevirt-wol-system",
                "annotations": {
                  "openshift.io/node-selector": ""
                },
                "labels": {
                  "openshift.io/cluster-monitoring": "true"
                }
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["servicemonitors.monitoring.coreos.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/gpillon/kubevirt-wol
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WolConfig is the Schema for the Wake-on-LAN configurations
              API
            displayName: Wol Config
            kind: WolConfig
            name: wolconfigs.wol.pillon.org
            version: v1beta1
        description: "A Kubernetes Operator that enables Wake-on-LAN functionality
          for KubeVirt VirtualMachines.\n\n**Installation**: This operator must be
          installed in the `kubevirt-wol-system` namespace.\n\n**Prerequisites**:
          \n- **Required**: KubeVirt must be installed in your cluster.\n- **Optional**:
          Prometheus Operator (for ServiceMonitor-based metrics collection). The operator
          works without it, but metrics will not be automatically scraped.\n\n**Features**:\n-
          Automatically starts VirtualMachines when WOL magic packets are received\n-
          Supports multiple WOL ports (default: UDP 9)\n- Three discovery modes: All
          VMs, Label Selector, or Explicit MAC mappings\n- Dynamic agent deployment
          per WolConfig\n- Automatic cleanup via OwnerReference\n- Prometheus metrics
          integration (ServiceMonitor optional)\n\n**Post-Installation (OpenShift)**:
          To enable metrics collection in OpenShift cluster monitoring, run:\n```\noc
          label namespace <operator-namespace> openshift.io/cluster-monitoring=true\n```\nReplace
          `<operator-namespace>` with the namespace where the operator is installed
          (e.g., `kubevirt-wol-system`).\n\nAfter labeling the namespace, the operator
          metrics will appear in OpenShift Console → Observe → Targets.\n\n**Note
          on Metrics**: If Prometheus Operator is not installed, the ServiceMonitor
          resource will not be reconciled, but the operator will continue to function
          normally. Metrics are still available at the `/metrics` endpoint.\n\n**Usage**:
          After installation, create a WolConfig resource to configure Wake-on-LAN
          for your KubeVirt VirtualMachines.\n\n**Documentation**: https://github.com/gpillon/kubevirt-wol\n"
        displayName: Kubevirt Wake on Lan
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubevirt
        - wol
        - wake on lan
        - wake
        links:
        - name: Kubevirt Wol
          url: https://github.com/gpillon/kubevirt-wol
        maintainers:
        - email: gpillon@redhat.com
          name: Giorgio Pillon
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: K4all
          url: https://github.com/gpillon/kubevirt-wol
        relatedImages:
        - quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
        - quay.io/community-operator-pipeline-prod/kubevirt-wol:0.0.2
        version: 0.0.2
      entries:
      - name: kubevirt-wol.v0.0.2
        version: 0.0.2
      name: stable-v0
    defaultChannel: stable-v0
    packageName: kubevirt-wol
    provider:
      name: K4all
      url: https://github.com/gpillon/kubevirt-wol
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: self-node-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: self-node-remediation.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediation",
                "metadata": {
                  "name": "selfnoderemediation-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationConfig",
                "metadata": {
                  "name": "self-node-remediation-config",
                  "namespace": "self-node-remediation"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationTemplate",
                "metadata": {
                  "name": "selfnoderemediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: registry.redhat.io/workload-availability/self-node-remediation-rhel9-operator@sha256:f13f5b22014e8819be39f45e476aef4a67e3645f9d20ad67b10fae9325ae473a
          createdAt: "2025-11-13 13:22:41"
          description: Self Node Remediation Operator for remediate itself in case
            of a failure.
          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: "true"
          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.skipRange: '>=0.10.0 <0.11.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/self-node-remediation
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SelfNodeRemediationConfig is the Schema for the selfnoderemediationconfigs
              API in which a user can configure the self node remediation agents
            displayName: Self Node Remediation Config
            kind: SelfNodeRemediationConfig
            name: selfnoderemediationconfigs.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediation is the Schema for the selfnoderemediations
              API
            displayName: Self Node Remediation
            kind: SelfNodeRemediation
            name: selfnoderemediations.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediationTemplate is the Schema for the selfnoderemediationtemplates
              API
            displayName: Self Node Remediation Template
            kind: SelfNodeRemediationTemplate
            name: selfnoderemediationtemplates.self-node-remediation.medik8s.io
            version: v1alpha1
        description: This self node remediation operator is using an alternate mechanism
          for a node in a cluster to detect its health status and take actions to
          remediate itself in case of a failure. While not all remediation events
          can result in the node returning to a healthy state, the operator does allow
          surviving parts of the cluster to assume the node has reached a safe state
          so that it’s workloads can be automatically recovered. A prerequisite for
          the Self Node Remediation operator is a functioning health detection system
          that implements the external remediation API, such as Node Health Check
          Operator or Machine Health Check Controller (in OCP or Cluster-API based
          clusters). Once a node/machine is unhealthy, the detection system will create
          the SelfNodeRemediation CR, which triggers the Self Node Remediation Operator.
          For this the configuration of the health detection system needs to refer
          to a SelfNodeRemediationTemplate CR. Such a template is created by default
          in the operator's namespace, for usage in other namespaces it needs to be
          created manually. The Node Health Check Operator is configured to use Self
          Node Remediation by default.
        displayName: Self Node Remediation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - fencing
        - remediation
        - auto-healing
        - recovery
        - high-availability
        - baremetal
        - SNR
        links:
        - name: Self Node Remediation
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance/about-remediation-fencing-maintenance
        - name: Source Code
          url: https://github.com/medik8s/self-node-remediation
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/self-node-remediation-rhel9-operator@sha256:f13f5b22014e8819be39f45e476aef4a67e3645f9d20ad67b10fae9325ae473a
        - registry.redhat.io/workload-availability/self-node-remediation-operator-bundle@sha256:3bf8ef27f9a7f50c7e9fa066cabe8927efc8a3a890783bd9b60156b4ef417a77
        version: 0.11.0
      entries:
      - name: self-node-remediation.v0.11.0
        version: 0.11.0
      - name: self-node-remediation.v0.10.2
        version: 0.10.2
      - name: self-node-remediation.v0.10.1
        version: 0.10.1
      - name: self-node-remediation.v0.10.0
        version: 0.10.0
      name: stable
    defaultChannel: stable
    packageName: self-node-remediation
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: openshift-external-secrets-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: external-secrets-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secret-cluster"
                },
                "spec": {
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "gcp-secret"
                        },
                        "secretKey": "key"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    },
                    "target": {
                      "creationPolicy": "Owner",
                      "name": "gcp-secret-k8s"
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "app.kubernetes.io/managed-by": "external-secrets-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-cluster-secretstore"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds",
                            "namespace": "external-secrets"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-secret",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "gcp-secret",
                        "property": "Key"
                      },
                      "secretKey": "Key"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secretstore"
                  },
                  "target": {
                    "creationPolicy": "Owner",
                    "name": "k8s-secret"
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "SecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/disable-maintenance-checks": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secretstore",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "PushSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "pushsecret-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "config": {
                    "gcp": {
                      "projectID": "openshift-sample-project",
                      "secret": {
                        "name": "test",
                        "replicationPolicy": "automatic",
                        "version": "latest"
                      }
                    }
                  },
                  "secretStoreRefs": [
                    {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    }
                  ],
                  "selector": {
                    "secret": {
                      "name": "gcp-secret-k8s"
                    }
                  }
                }
              },
              {
                "apiVersion": "generators.external-secrets.io/v1alpha1",
                "kind": "Password",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "password-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "excludeLowercase": false,
                  "excludeNumbers": false,
                  "excludeUppercase": false,
                  "includeSymbols": true,
                  "length": 20
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsConfig",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsManager",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
          createdAt: 2025-11-03T08:48:11
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.0
          operator.openshift.io/uninstall-message: The External Secrets Operator for
            Red Hat OpenShift will be removed from external-secrets-operator namespace.
            If your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/external_secrets_operator/external-secrets-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: external-secrets-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/external-secrets-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ACRAccessToken returns an Azure Container Registry token that can be used for pushing/pulling images.
              Note: by default it will return an ACR Refresh Token with full access (depending on the identity).
              This can be scoped down to the repository level using .spec.scope. In case scope is defined it will return an ACR Access Token.

              See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
            displayName: ACRAccessToken
            kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterExternalSecret is the Schema for the clusterexternalsecrets
              API.
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1
          - description: ClusterGenerator represents a cluster-wide generator which
              can be referenced as part of `generatorRef` fields.
            displayName: ClusterGenerator
            kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterPushSecret is the Schema for the clusterpushsecrets
              API.
            displayName: ClusterPushSecret
            kind: ClusterPushSecret
            name: clusterpushsecrets.external-secrets.io
            version: v1alpha1
          - description: ClusterSecretStore represents a secure external location
              for storing secrets, which can be referenced as part of `storeRef` fields.
            displayName: ClusterSecretStore
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1
          - description: |-
              ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token. The authorization
              token is valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded and
              used in a Docker login command to authenticate to a registry. For more information, see Registry authentication
              (https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth)
              in the Amazon Elastic Container Registry User Guide.
            displayName: ECRAuthorizationToken
            kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: ExternalSecret is the Schema for the external-secrets API.
            displayName: ExternalSecret
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1
          - description: |-
              ExternalSecretsConfig describes configuration and information about the managed external-secrets deployment.
              The name must be `cluster` as ExternalSecretsConfig is a singleton, allowing only one instance per cluster.

              When an ExternalSecretsConfig is created, the controller installs the external-secrets and keeps it in the desired state.
            displayName: ExternalSecretsConfig
            kind: ExternalSecretsConfig
            name: externalsecretsconfigs.operator.openshift.io
            version: v1alpha1
          - description: |-
              ExternalSecretsManager describes configuration and information about the deployments managed by
              the operator. The name must be `cluster` to make ExternalSecretsManager a singleton that is, to
              allow only one instance of ExternalSecretsManager per cluster.

              ExternalSecretsManager is mainly for configuring the global options and enabling the features, which
              serves as a common/centralized config for managing multiple controllers of the operator. The object
              will be created during the operator installation.
            displayName: ExternalSecretsManager
            kind: ExternalSecretsManager
            name: externalsecretsmanagers.operator.openshift.io
            version: v1alpha1
          - description: GCRAccessToken generates a GCP access token that can be used
              to authenticate with GCR.
            displayName: GCRAccessToken
            kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: GeneratorState is the Schema for the generatorstates API.
            displayName: GeneratorState
            kind: GeneratorState
            name: generatorstates.generators.external-secrets.io
            version: v1alpha1
          - description: GithubAccessToken generates a ghs_ access token
            displayName: GithubAccessToken
            kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Grafana is the Schema for the grafanas API.
            displayName: Grafana
            kind: Grafana
            name: grafanas.generators.external-secrets.io
            version: v1alpha1
          - description: MFA generates a new TOTP token that is compliant with RFC
              6238.
            displayName: MFA
            kind: MFA
            name: mfas.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Password generates a random password based on the configuration parameters in spec. You can specify the length,
              character set and other attributes.
            displayName: Password
            kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - description: PushSecret is the Schema for the pushsecrets API.
            displayName: PushSecret
            kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: QuayAccessToken generates a Quay OAuth token for pulling/pushing
              images.
            displayName: QuayAccessToken
            kind: QuayAccessToken
            name: quayaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: SecretStore represents a secure external location for storing
              secrets, which can be referenced as part of `storeRef` fields.
            displayName: SecretStore
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1
          - description: SSHKey generates SSH key pairs.
            displayName: SSHKey
            kind: SSHKey
            name: sshkeys.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              STSSessionToken uses the GetSessionToken API to retrieve an authorization token. The authorization token is
              valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded.
              For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
            displayName: STSSessionToken
            kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - description: UUID generates a version 1 UUID (for example, 6ba7b810-9dad-11d1-80b4-00c04fd430c8).
            displayName: UUID
            kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - description: VaultDynamicSecret is the Schema for the vaultdynamicsecrets
              API.
            displayName: VaultDynamicSecret
            kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Webhook connects to a third party API server to handle the secrets generation configuration parameters in spec. You
              can specify the server, the token, and additional body parameters. See documentation for the full API specification
              for requests and responses.
            displayName: Webhook
            kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: External Secrets Operator for Red Hat OpenShift deploys and manages
          `external-secrets` application in OpenShift clusters. `external-secrets`
          provides an uniform interface to fetch secrets stored in external providers
          like  AWS Secrets Manager, HashiCorp Vault, Google Secrets Manager, Azure
          Key Vault, IBM Cloud Secrets Manager to name a few, stores them as secrets
          in OpenShift. It provides APIs to define authentication and the details
          of the secret to fetch.
        displayName: External Secrets Operator for Red Hat OpenShift
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - secrets
        - external-secrets
        - external-secrets-operator
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/security_and_compliance/external-secrets-operator-for-red-hat-openshift
        - name: External Secrets Operator
          url: https://github.com/openshift/external-secrets-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/external-secrets-operator/bitwarden-sdk-server-rhel9@sha256:0e00fb4b8fc3815e55e9c593766cfa85a34671b8401eabc488b48b66b5d1b374
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-bundle@sha256:8c59a65dda3545cf009585f154e62bd19dce02c95214b76ae164f51999ad760c
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
        - registry.redhat.io/external-secrets-operator/external-secrets-rhel9@sha256:a594323b4d3ad6a739246f3767231ad2d57ca94bb1d035610d52a525b420b452
        version: 1.0.0
      entries:
      - name: external-secrets-operator.v1.0.0
        version: 1.0.0
      name: stable-v1
    - currentCSV: external-secrets-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secret-cluster"
                },
                "spec": {
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "gcp-secret"
                        },
                        "secretKey": "key"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    },
                    "target": {
                      "creationPolicy": "Owner",
                      "name": "gcp-secret-k8s"
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "app.kubernetes.io/managed-by": "external-secrets-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-cluster-secretstore"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds",
                            "namespace": "external-secrets"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-secret",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "gcp-secret",
                        "property": "Key"
                      },
                      "secretKey": "Key"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secretstore"
                  },
                  "target": {
                    "creationPolicy": "Owner",
                    "name": "k8s-secret"
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "SecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/disable-maintenance-checks": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secretstore",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "PushSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "pushsecret-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "config": {
                    "gcp": {
                      "projectID": "openshift-sample-project",
                      "secret": {
                        "name": "test",
                        "replicationPolicy": "automatic",
                        "version": "latest"
                      }
                    }
                  },
                  "secretStoreRefs": [
                    {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    }
                  ],
                  "selector": {
                    "secret": {
                      "name": "gcp-secret-k8s"
                    }
                  }
                }
              },
              {
                "apiVersion": "generators.external-secrets.io/v1alpha1",
                "kind": "Password",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "password-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "excludeLowercase": false,
                  "excludeNumbers": false,
                  "excludeUppercase": false,
                  "includeSymbols": true,
                  "length": 20
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsConfig",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsManager",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
          createdAt: 2025-11-03T08:48:11
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.0
          operator.openshift.io/uninstall-message: The External Secrets Operator for
            Red Hat OpenShift will be removed from external-secrets-operator namespace.
            If your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/external_secrets_operator/external-secrets-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: external-secrets-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/external-secrets-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ACRAccessToken returns an Azure Container Registry token that can be used for pushing/pulling images.
              Note: by default it will return an ACR Refresh Token with full access (depending on the identity).
              This can be scoped down to the repository level using .spec.scope. In case scope is defined it will return an ACR Access Token.

              See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
            displayName: ACRAccessToken
            kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterExternalSecret is the Schema for the clusterexternalsecrets
              API.
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1
          - description: ClusterGenerator represents a cluster-wide generator which
              can be referenced as part of `generatorRef` fields.
            displayName: ClusterGenerator
            kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterPushSecret is the Schema for the clusterpushsecrets
              API.
            displayName: ClusterPushSecret
            kind: ClusterPushSecret
            name: clusterpushsecrets.external-secrets.io
            version: v1alpha1
          - description: ClusterSecretStore represents a secure external location
              for storing secrets, which can be referenced as part of `storeRef` fields.
            displayName: ClusterSecretStore
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1
          - description: |-
              ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token. The authorization
              token is valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded and
              used in a Docker login command to authenticate to a registry. For more information, see Registry authentication
              (https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth)
              in the Amazon Elastic Container Registry User Guide.
            displayName: ECRAuthorizationToken
            kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: ExternalSecret is the Schema for the external-secrets API.
            displayName: ExternalSecret
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1
          - description: |-
              ExternalSecretsConfig describes configuration and information about the managed external-secrets deployment.
              The name must be `cluster` as ExternalSecretsConfig is a singleton, allowing only one instance per cluster.

              When an ExternalSecretsConfig is created, the controller installs the external-secrets and keeps it in the desired state.
            displayName: ExternalSecretsConfig
            kind: ExternalSecretsConfig
            name: externalsecretsconfigs.operator.openshift.io
            version: v1alpha1
          - description: |-
              ExternalSecretsManager describes configuration and information about the deployments managed by
              the operator. The name must be `cluster` to make ExternalSecretsManager a singleton that is, to
              allow only one instance of ExternalSecretsManager per cluster.

              ExternalSecretsManager is mainly for configuring the global options and enabling the features, which
              serves as a common/centralized config for managing multiple controllers of the operator. The object
              will be created during the operator installation.
            displayName: ExternalSecretsManager
            kind: ExternalSecretsManager
            name: externalsecretsmanagers.operator.openshift.io
            version: v1alpha1
          - description: GCRAccessToken generates a GCP access token that can be used
              to authenticate with GCR.
            displayName: GCRAccessToken
            kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: GeneratorState is the Schema for the generatorstates API.
            displayName: GeneratorState
            kind: GeneratorState
            name: generatorstates.generators.external-secrets.io
            version: v1alpha1
          - description: GithubAccessToken generates a ghs_ access token
            displayName: GithubAccessToken
            kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Grafana is the Schema for the grafanas API.
            displayName: Grafana
            kind: Grafana
            name: grafanas.generators.external-secrets.io
            version: v1alpha1
          - description: MFA generates a new TOTP token that is compliant with RFC
              6238.
            displayName: MFA
            kind: MFA
            name: mfas.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Password generates a random password based on the configuration parameters in spec. You can specify the length,
              character set and other attributes.
            displayName: Password
            kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - description: PushSecret is the Schema for the pushsecrets API.
            displayName: PushSecret
            kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: QuayAccessToken generates a Quay OAuth token for pulling/pushing
              images.
            displayName: QuayAccessToken
            kind: QuayAccessToken
            name: quayaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: SecretStore represents a secure external location for storing
              secrets, which can be referenced as part of `storeRef` fields.
            displayName: SecretStore
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1
          - description: SSHKey generates SSH key pairs.
            displayName: SSHKey
            kind: SSHKey
            name: sshkeys.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              STSSessionToken uses the GetSessionToken API to retrieve an authorization token. The authorization token is
              valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded.
              For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
            displayName: STSSessionToken
            kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - description: UUID generates a version 1 UUID (for example, 6ba7b810-9dad-11d1-80b4-00c04fd430c8).
            displayName: UUID
            kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - description: VaultDynamicSecret is the Schema for the vaultdynamicsecrets
              API.
            displayName: VaultDynamicSecret
            kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Webhook connects to a third party API server to handle the secrets generation configuration parameters in spec. You
              can specify the server, the token, and additional body parameters. See documentation for the full API specification
              for requests and responses.
            displayName: Webhook
            kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: External Secrets Operator for Red Hat OpenShift deploys and manages
          `external-secrets` application in OpenShift clusters. `external-secrets`
          provides an uniform interface to fetch secrets stored in external providers
          like  AWS Secrets Manager, HashiCorp Vault, Google Secrets Manager, Azure
          Key Vault, IBM Cloud Secrets Manager to name a few, stores them as secrets
          in OpenShift. It provides APIs to define authentication and the details
          of the secret to fetch.
        displayName: External Secrets Operator for Red Hat OpenShift
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - secrets
        - external-secrets
        - external-secrets-operator
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/security_and_compliance/external-secrets-operator-for-red-hat-openshift
        - name: External Secrets Operator
          url: https://github.com/openshift/external-secrets-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/external-secrets-operator/bitwarden-sdk-server-rhel9@sha256:0e00fb4b8fc3815e55e9c593766cfa85a34671b8401eabc488b48b66b5d1b374
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-bundle@sha256:8c59a65dda3545cf009585f154e62bd19dce02c95214b76ae164f51999ad760c
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
        - registry.redhat.io/external-secrets-operator/external-secrets-rhel9@sha256:a594323b4d3ad6a739246f3767231ad2d57ca94bb1d035610d52a525b420b452
        version: 1.0.0
      entries:
      - name: external-secrets-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    defaultChannel: stable-v1
    packageName: openshift-external-secrets-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NetScaler
      provider-url: https://netscaler.com
    name: netscaler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: netscaler-operator.v3.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCloudController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalercloudcontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "azure": {
                    "clientsecret": "",
                    "image": "quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb",
                    "location": "",
                    "pullPolicy": "IfNotPresent",
                    "resourcegroupname": "",
                    "resources": {},
                    "subnetname": "",
                    "subscriptionid": "",
                    "tenantid": "",
                    "vnetname": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCpxWithIngressController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalercpxwithingresscontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "admSettings": {
                    "admIP": "",
                    "bandWidth": 1000,
                    "bandWidthLicense": false,
                    "cpxCores": 1,
                    "licenseEdition": "PLATINUM",
                    "licenseServerIP": "",
                    "licenseServerPort": 27000,
                    "licensingMode": "pool",
                    "loginSecret": "",
                    "platform": false,
                    "vCPULicense": false
                  },
                  "affinity": {},
                  "analyticsConfig": {
                    "distributedTracing": {
                      "enable": false,
                      "samplingRate": 100
                    },
                    "endpoint": {
                      "metrics": {
                        "service": ""
                      },
                      "transactions": {
                        "service": ""
                      }
                    },
                    "required": false,
                    "timeseries": {
                      "auditLogs": {
                        "enable": false
                      },
                      "events": {
                        "enable": false
                      },
                      "metrics": {
                        "enable": false,
                        "enableNativeScrape": false,
                        "exportFrequency": 30,
                        "mode": "avro",
                        "schemaFile": "schema.json"
                      },
                      "port": 5563
                    },
                    "transactions": {
                      "enable": false,
                      "port": 5557
                    }
                  },
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {}
                  },
                  "extraVolumes": [],
                  "imagePullSecrets": [],
                  "ingressController": {
                    "defaultSSLCertSecret": "",
                    "defaultSSLSNICertSecret": "",
                    "disableAPIServerCertVerify": false,
                    "disableOpenshiftRoutes": true,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "k8s",
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "ingressClass": [],
                    "ipam": false,
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "logProxy": "",
                    "namespaceLabels": "",
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "profileHttpFrontend": {},
                    "profileSslFrontend": {},
                    "profileTcpFrontend": {},
                    "pullPolicy": "IfNotPresent",
                    "rbacRole": false,
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 50,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "128m",
                        "memory": "500Mi"
                      }
                    },
                    "routeLabels": "",
                    "setAsDefaultIngressClass": false,
                    "updateIngressStatus": true
                  },
                  "netscalerCpx": {
                    "bgpSettings": {
                      "bgpConfig": [
                        {
                          "bgpRouter": {
                            "localAS": 100,
                            "neighbor": [
                              {
                                "ASOriginationInterval": 10,
                                "address": "",
                                "advertisementInterval": 10,
                                "remoteAS": 100
                              }
                            ]
                          }
                        }
                      ],
                      "bgpPort": 179
                    },
                    "cpxBgpRouter": false,
                    "cpxCommands": [],
                    "cpxLicenseAggregator": "",
                    "cpxShellCommands": [],
                    "daemonSet": false,
                    "enableLivenessProbe": true,
                    "enableStartupProbe": true,
                    "extraVolumeMounts": [],
                    "hostname": "",
                    "image": "quay.io/netscaler/netscaler-cpx@sha256:c7fca5069cf2306f915b6f9aeac59a9f921a0093681768ab81e7fb4fef84f970",
                    "ingressIP": "",
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    },
                    "mgmtHttpPort": 9080,
                    "mgmtHttpsPort": 9443,
                    "nitroReadTimeout": 20,
                    "nsConfigDnsRec": false,
                    "nsCookieVersion": 0,
                    "nsDnsNameserver": "",
                    "nsEnableLabels": true,
                    "nsGateway": "192.168.1.1",
                    "nsHttp2ServerSide": "OFF",
                    "nsIP": "192.168.1.2",
                    "nsLbHashAlgo": {
                      "hashAlgorithm": "default",
                      "hashFingers": 500,
                      "required": false
                    },
                    "nsProtocol": "HTTP",
                    "nsSvcLbDnsRec": false,
                    "prometheusCredentialSecret": "",
                    "pullPolicy": "IfNotPresent",
                    "service": {
                      "annotations": {},
                      "spec": {}
                    },
                    "startupProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    }
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "replicaCount": 1,
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCpxWithK8sGatewayController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalercpxwithk8sgatewaycontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "admSettings": {
                    "admIP": "",
                    "bandWidth": 1000,
                    "bandWidthLicense": false,
                    "cpxCores": 1,
                    "licenseEdition": "PLATINUM",
                    "licenseServerIP": "",
                    "licenseServerPort": 27000,
                    "licensingMode": "pool",
                    "loginSecret": "",
                    "platform": false,
                    "vCPULicense": false
                  },
                  "affinity": {},
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {}
                  },
                  "extraVolumes": [],
                  "gatewayController": {
                    "certBundle": false,
                    "disableAPIServerCertVerify": false,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "k8s",
                    "extraVolumeMounts": [],
                    "gatewayControllerName": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "namespaceLabels": "",
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "pullPolicy": "IfNotPresent",
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 50,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "128m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "imagePullSecrets": [],
                  "netscalerCpx": {
                    "cpxCommands": [],
                    "cpxLicenseAggregator": "",
                    "cpxShellCommands": [],
                    "enableLivenessProbe": true,
                    "enableStartupProbe": true,
                    "extraVolumeMounts": [],
                    "hostname": "",
                    "image": "quay.io/netscaler/netscaler-cpx@sha256:c7fca5069cf2306f915b6f9aeac59a9f921a0093681768ab81e7fb4fef84f970",
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    },
                    "mgmtHttpPort": 9080,
                    "mgmtHttpsPort": 9443,
                    "nitroReadTimeout": 20,
                    "nsIP": "192.168.1.2",
                    "nsProtocol": "HTTP",
                    "pullPolicy": "IfNotPresent",
                    "resources": {},
                    "service": {
                      "annotations": {},
                      "spec": {}
                    },
                    "startupProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    }
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "replicaCount": 1,
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerGslbController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalergslbcontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "gslbController": {
                    "disableAPIServerCertVerify": false,
                    "entityPrefix": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "kubernetesURL": "",
                    "localCluster": "",
                    "localRegion": "",
                    "logLevel": "INFO",
                    "openshift": true,
                    "pullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "32m",
                        "memory": "128Mi"
                      }
                    },
                    "siteData": [
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteMask": "",
                        "siteName": "",
                        "sitePublicIp": "",
                        "siteRegion": ""
                      },
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteMask": "",
                        "siteName": "",
                        "sitePublicIp": "",
                        "siteRegion": ""
                      }
                    ]
                  },
                  "imagePullSecrets": [],
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "localSiteSelection": false,
                    "nitroReadTimeout": 20,
                    "nsIP": "",
                    "nsPort": 443,
                    "nsProtocol": "HTTPS"
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerIngressController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscaleringresscontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "analyticsConfig": {
                    "distributedTracing": {
                      "enable": false,
                      "samplingRate": 100
                    },
                    "endpoint": {
                      "metrics": {
                        "service": ""
                      },
                      "transactions": {
                        "service": ""
                      }
                    },
                    "required": false,
                    "timeseries": {
                      "auditLogs": {
                        "enable": false
                      },
                      "events": {
                        "enable": false
                      },
                      "metrics": {
                        "enable": false,
                        "enableNativeScrape": false,
                        "exportFrequency": 50,
                        "mode": "avro",
                        "schemaFile": "schema.json"
                      },
                      "port": 50002
                    },
                    "transactions": {
                      "enable": false,
                      "port": 50005
                    }
                  },
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {},
                    "serviceMonitorExtraLabels": {}
                  },
                  "extraVolumes": [],
                  "hostAliases": [],
                  "imagePullSecrets": [],
                  "ingressController": {
                    "certBundle": false,
                    "clusterName": "",
                    "defaultSSLCertSecret": "",
                    "defaultSSLSNICertSecret": "",
                    "disableAPIServerCertVerify": false,
                    "disableOpenshiftRoutes": true,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "",
                    "extraVolumeMounts": [],
                    "ignoreNodeExternalIP": false,
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "ingressClass": [],
                    "ipam": false,
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "logProxy": "",
                    "multiClusterPrefix": "",
                    "namespaceLabels": "",
                    "nodeLabels": "",
                    "nodeWatch": false,
                    "nsValidateCert": {},
                    "nsncPbr": false,
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "podIPsforServiceGroupMembers": false,
                    "profileHttpFrontend": {},
                    "profileSslFrontend": {},
                    "profileTcpFrontend": {},
                    "pullPolicy": "IfNotPresent",
                    "rbacRole": false,
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "32m",
                        "memory": "128Mi"
                      }
                    },
                    "routeLabels": "",
                    "serviceClass": [],
                    "setAsDefaultIngressClass": false,
                    "updateIngressStatus": true
                  },
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "nitroReadTimeout": 20,
                    "nsConfigDnsRec": false,
                    "nsCookieVersion": 0,
                    "nsDnsNameserver": "",
                    "nsHttp2ServerSide": "OFF",
                    "nsIP": "",
                    "nsLbHashAlgo": {
                      "hashAlgorithm": "default",
                      "hashFingers": 256,
                      "required": false
                    },
                    "nsPort": 443,
                    "nsProtocol": "HTTPS",
                    "nsSNIPs": [],
                    "nsSvcLbDnsRec": false,
                    "nsVIP": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerIpamController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscaleripamcontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "clusterName": "",
                  "image": "quay.io/netscaler/netscaler-ipam-controller@sha256:7c25b59a2e1df0e4f5615a779a9bea939c60a3eca065cb6c2295daf0d03831d8",
                  "localIPAM": {
                    "vipRange": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "reuseIngressVIP": true,
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerK8sGatewayController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalerk8sgatewaycontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {},
                    "serviceMonitorExtraLabels": {}
                  },
                  "extraVolumes": [],
                  "gatewayController": {
                    "certBundle": false,
                    "clusterName": "",
                    "disableAPIServerCertVerify": false,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "",
                    "extraVolumeMounts": [],
                    "gatewayControllerName": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "nodeWatch": false,
                    "nsValidateCert": {},
                    "nsncPbr": false,
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "podIPsforServiceGroupMembers": false,
                    "pullPolicy": "IfNotPresent",
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "32m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "hostAliases": [],
                  "imagePullSecrets": [],
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "nitroReadTimeout": 20,
                    "nsIP": "",
                    "nsPort": 443,
                    "nsProtocol": "HTTPS",
                    "nsSNIPs": [],
                    "nsVIP": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerObservabilityExporter",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalerobservabilityexporter-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "elasticsearch": {
                    "enabled": false,
                    "server": "http://elasticsearch:9200"
                  },
                  "headless": false,
                  "image": "quay.io/netscaler/netscaler-observability-exporter@sha256:626e3a954c67bbb910477352dc740aaab21ff1c1cfb03354becf50beab17d4a4",
                  "jsonTransRateLimiting": {
                    "enabled": false,
                    "limit": 100,
                    "queueLimit": 1000,
                    "window": 5
                  },
                  "kafka": {
                    "auditLogs": "no",
                    "broker": "",
                    "dataFormat": "AVRO",
                    "enabled": false,
                    "events": "no",
                    "topic": "HTTP"
                  },
                  "nodePortRequired": false,
                  "nodeSelector": {},
                  "nsoeLogLevel": "INFO",
                  "nstracing": {
                    "enabled": false,
                    "server": "zipkin:9411/api/v1/spans"
                  },
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "replicas": 1,
                  "resources": {},
                  "splunk": {
                    "authToken": "",
                    "enabled": false,
                    "indexPrefix": "adc_nsoe",
                    "server": "http://splunk:8088"
                  },
                  "timeseries": {
                    "enabled": false
                  },
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-operator@sha256:912813b608a51be599ef01ea340ad09238d7ab76fbfa4e83ee8128fa2348bf5b
          createdAt: "2025-08-25T17:13:12Z"
          description: This is an operator to install Cloud Native portfolio provided
            by NetScaler
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler Kubernetes Gateway Controller for NetScaler
              VPX/MPX/SDX.
            displayName: Netscaler K8s Gateway Controller
            kind: NetscalerK8sGatewayController
            name: netscalerk8sgatewaycontrollers.netscaler.com
            version: v1
          - description: To Install NetScaler CPX with Kubernetes Gateway Controller.
            displayName: Netscaler CPX With K8s Gateway Controller
            kind: NetscalerCpxWithK8sGatewayController
            name: netscalercpxwithk8sgatewaycontrollers.netscaler.com
            version: v1
          - description: To install NetScaler Ingress Controller for NetScaler VPX/MPX/SDX.
            displayName: Netscaler Ingress Controller
            kind: NetscalerIngressController
            name: netscaleringresscontrollers.netscaler.com
            version: v1
          - description: To install NetScaler CPX with Ingress Controller.
            displayName: Netscaler CPX With Ingress Controller
            kind: NetscalerCpxWithIngressController
            name: netscalercpxwithingresscontrollers.netscaler.com
            version: v1
          - description: To install NetScaler GSLB Controller for NetScaler VPX/MPX/SDX.
            displayName: Netscaler GSLB Controller
            kind: NetscalerGslbController
            name: netscalergslbcontrollers.netscaler.com
            version: v1
          - description: To install NetScaler IPAM Controller for NetScaler CPX/VPX/MPX/SDX.
            displayName: Netscaler IPAM Controller
            kind: NetscalerIpamController
            name: netscaleripamcontrollers.netscaler.com
            version: v1
          - description: To install NetScaler Observability Exporter for NetScaler.
            displayName: Netscaler Observability Exporter
            kind: NetscalerObservabilityExporter
            name: netscalerobservabilityexporters.netscaler.com
            version: v1
          - description: To install NetScaler Cloud Controller for NetScaler VPX/MPX/SDX
              with Azure Redhat OpenShift in Azure.
            displayName: Netscaler Cloud Controller
            kind: NetscalerCloudController
            name: netscalercloudcontrollers.netscaler.com
            version: v1
        description: |
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster. Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Kubernetes Gateway Controller](https://docs.netscaler.com/en-us/netscaler-kubernetes-gateway-controller/getting-started#how-to-deploy-netscaler-kubernetes-gateway-controller-in-a-kubernetes-cluster)
          2. [NetScaler CPX with Kubernetes Gateway Controller](https://docs.netscaler.com/en-us/netscaler-kubernetes-gateway-controller/getting-started#how-to-deploy-netscaler-cpx-with-netscaler-kubernetes-gateway-controller-in-a-kubernetes-cluster)
          3. [NetScaler Ingress Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/unified-ingress-deployment)
          4. [NetScaler CPX with Ingress Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/two-tier-deployment)
          5. [NetScaler GSLB Controller ](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/gslb/gslb)
          6. [NetScaler IPAM Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/ipam-installation.html)
          7. [NetScaler Observability Exporter](https://docs.netscaler.com/en-us/netscaler-observability-exporter/deploy-coe)
          8. [NetScaler Cloud Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-cloud-controller)

          ### Installation
          Refer [installation instructions](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-operator-openshift).

          This operator version contains:
          1. NetScaler Ingress Controller version [3.3.2](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v3.3.2)
          2. NetScaler CPX version [14.1-47.48](https://docs.netscaler.com/en-us/updates?product=NetScaler%2520ADC%2520%28includes%2520NetScaler%2520Gateway%29&version=14.1&build=47.48)
          3. NetScaler GSLB Controller version [3.3.2](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v3.3.2)
          4. NetScaler Observability Exporter version [1.10.001](https://github.com/citrix/citrix-helm-charts/releases/tag/nsoe-v1.10.001)
          5. NetScaler Metrics Exporter [1.6.0](https://github.com/netscaler/netscaler-k8s-ingress-controller/releases/tag/me_1.6.0)
          6. NetScaler IPAM Controller [2.1.2](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v2.3.15)
          7. NetScaler Kubernetes Gateway Controller version [1.3.0](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsk8sgwctr-1.3.0)
          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin).

          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: NetScaler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GatewayAPI
        - Gateway
        - Ingress
        - NetScaler
        - ADC
        - Kubernetes
        - OpenShift
        - Citrix
        - Controller
        - Observability
        - Metrices
        links:
        - name: Netscaler Operator
          url: https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-operator-openshift
        maintainers:
        - email: priyanka.sharma@citrix.com
          name: Priyanka Sharma
        - email: arijit.ray@citrix.com
          name: Arijit Ray
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: NetScaler
          url: https://netscaler.com
        relatedImages:
        - quay.io/netscaler/netscaler-observability-exporter@sha256:626e3a954c67bbb910477352dc740aaab21ff1c1cfb03354becf50beab17d4a4
        - registry.connect.redhat.com/citrix/netscaler-operator@sha256:912813b608a51be599ef01ea340ad09238d7ab76fbfa4e83ee8128fa2348bf5b
        - registry.connect.redhat.com/citrix/netscaler-bundle@sha256:d8453ba9d5284e359f34c185618c35ef5a417bb6d96b99a85fa1b50f0c67f7b6
        - quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20
        - quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb
        - quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:89f44c45373da73a51b0b9a02de7efe519dc2d5343b65fe382526cccc92f8f5c
        - quay.io/netscaler/netscaler-cpx@sha256:c7fca5069cf2306f915b6f9aeac59a9f921a0093681768ab81e7fb4fef84f970
        - quay.io/netscaler/netscaler-ipam-controller@sha256:7c25b59a2e1df0e4f5615a779a9bea939c60a3eca065cb6c2295daf0d03831d8
        version: 3.3.0
      entries:
      - name: netscaler-operator.v3.3.0
        version: 3.3.0
      - name: netscaler-operator.v3.2.0
        version: 3.2.0
      - name: netscaler-operator.v3.1.2
        version: 3.1.2
      - name: netscaler-operator.v3.1.1
        version: 3.1.1
      - name: netscaler-operator.v3.0.1
        version: 3.0.1
      name: stable
    - currentCSV: netscaler-operator.v3.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCloudController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "netscaler-operator",
                    "app.kubernetes.io/instance": "nscc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscalercloudcontroller",
                    "app.kubernetes.io/part-of": "netscaler-operator"
                  },
                  "name": "nscc"
                },
                "spec": {
                  "azure": {
                    "clientsecret": "",
                    "image": "quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb",
                    "location": "",
                    "pullPolicy": "IfNotPresent",
                    "resourcegroupname": "",
                    "resources": {},
                    "subnetname": "",
                    "subscriptionid": "",
                    "tenantid": "",
                    "vnetname": ""
                  }
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerGslbController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "netscaler-operator",
                    "app.kubernetes.io/instance": "nsgc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscalergslbcontroller",
                    "app.kubernetes.io/part-of": "netscaler-operator"
                  },
                  "name": "nsgc"
                },
                "spec": {
                  "gslbController": {
                    "acceptLicense": "Yes",
                    "cleanupGSLBSiteConfig": false,
                    "disableAPIServerCertVerify": false,
                    "entityPrefix": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:88114c518ecceb54b000f38bfc330efe184bfeb5b5df0ee308950cf29e7a777f",
                    "imagePullSecrets": [],
                    "kubernetesURL": "",
                    "localCluster": "",
                    "localRegion": "",
                    "logLevel": "Debug",
                    "openshift": true,
                    "pullPolicy": "IfNotPresent",
                    "siteData": [
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteName": "",
                        "siteRegion": ""
                      },
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteName": "",
                        "siteRegion": ""
                      }
                    ]
                  },
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "nitroReadTimeout": 20,
                    "nsIP": "",
                    "nsPort": 443,
                    "nsProtocol": "HTTPS"
                  },
                  "resources": {
                    "limits": {},
                    "requests": {
                      "cpu": "32m",
                      "memory": "128Mi"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-operator@sha256:3f71f9a46d7b29e3da98a301965f635c03a022b5535b586d7d5c699341f68193
          createdAt: "2024-07-31T06:33:49Z"
          description: This is an operator to install Cloud Native portfolio provided
            by NetScaler
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler Cloud Controller for NetScaler VPX/MPX/SDX
              with Azure Redhat OpenShift in Azure.
            displayName: Netscaler Cloud Controller
            kind: NetscalerCloudController
            name: netscalercloudcontrollers.netscaler.com
            version: v1
          - description: To install NetScaler GSLB Controller for NetScaler VPX/MPX/SDX.
            displayName: Netscaler GSLB Controller
            kind: NetscalerGslbController
            name: netscalergslbcontrollers.netscaler.com
            version: v1
        description: |-
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster. Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Cloud Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-cloud-controller)
          2. [NetScaler GSLB Controller ](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/gslb-openshift-operator)

          ### Installation
          Refer [installation instructions](https://github.com/netscaler/netscaler-k8s-ingress-controller/blob/master/docs/deploy/deploy-ns-operator.md).

          This operator version contains:
          1. NetScaler Cloud Controller version [1.2.0](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-cloud-controller)
          2. NetScaler GSLB Controller version [1.43.7](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v1.43.7)

          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin).

          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: NetScaler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Ingress
        - NetScaler
        links:
        - name: Netscaler Operator
          url: https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/gslb-openshift-operator
        maintainers:
        - email: priyanka.sharma@cloud.com
          name: Priyanka Sharma
        - email: arijit.ray@cloud.com
          name: Arijit Ray
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: NetScaler
          url: https://netscaler.com
        relatedImages:
        - quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb
        - quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:88114c518ecceb54b000f38bfc330efe184bfeb5b5df0ee308950cf29e7a777f
        - registry.connect.redhat.com/citrix/netscaler-bundle@sha256:b405d6148aa680bf31bdc6185c1702916c3219983d8482f27d89ed2f93659aa7
        - registry.connect.redhat.com/citrix/netscaler-operator@sha256:3f71f9a46d7b29e3da98a301965f635c03a022b5535b586d7d5c699341f68193
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:23405618050a4ceea8ea0c748cc7d9d16dbb80f10e4c39f7e82014a3ac80cec9
        version: 3.0.1
      entries:
      - name: netscaler-operator.v3.0.1
        version: 3.0.1
      name: tech-preview
    defaultChannel: stable
    packageName: netscaler-operator
    provider:
      name: NetScaler
      url: https://netscaler.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/instance: ibm-spectrum-scale-csi-operator
      app.kubernetes.io/managed-by: ibm-spectrum-scale-csi-operator
      app.kubernetes.io/name: ibm-spectrum-scale-csi-operator
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: ibm-spectrum-scale-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-spectrum-scale-csi-operator.v2.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "CSIScaleOperator",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "ibm-spectrum-scale-csi-operator",
                    "app.kubernetes.io/managed-by": "ibm-spectrum-scale-csi-operator",
                    "app.kubernetes.io/name": "ibm-spectrum-scale-csi-operator",
                    "release": "ibm-spectrum-scale-csi-operator"
                  },
                  "name": "ibm-spectrum-scale-csi",
                  "namespace": "ibm-spectrum-scale-csi-driver"
                },
                "spec": {
                  "attacherNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "clusters": [
                    {
                      "id": "\u003cPrimary Cluster ID\u003e",
                      "primary": {
                        "primaryFs": "\u003c Primary Filesystem \u003e"
                      },
                      "restApi": [
                        {
                          "guiHost": "\u003c Primary cluster GUI IP/Hostname \u003e"
                        }
                      ],
                      "secrets": "secret1",
                      "secureSslMode": false
                    }
                  ],
                  "pluginNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "provisionerNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "resizerNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "snapshotterNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ]
                },
                "status": {}
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/ibm-spectrum-scale/ibm-spectrum-scale-csi-operator@sha256:b62ad588fbc338090f405740fd8bceaf59b3267cdb532c60ae965643ccae4d5d
          createdAt: Thu May 5 04:42:15 IST 2022
          description: An operator for deploying and managing the IBM Spectrum Scale
            CSI Driver.
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/IBM/ibm-spectrum-scale-csi/
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CSIScaleOperator is the Schema for the csiscaleoperators
              API
            displayName: IBM CSI Spectrum Scale Driver
            kind: CSIScaleOperator
            name: csiscaleoperators.csi.ibm.com
            version: v1
        description: |
          The IBM Spectrum Scale CSI Operator for Kubernetes installs, manages,
          upgrades the IBM Spectrum Scale CSI Driver on OpenShift and Kubernetes
          for provisioning of persistent volumes on IBM Spectrum Scale.

          ### Documentation Documentation for IBM Spectrum Scale CSI Driver and Operator can be found at [IBM Documentation](https://www.ibm.com/docs/en/spectrum-scale-csi).

          ### Getting help
          IBM Spectrum Scale CSI driver is part of the IBM Spectrum Scale offering.
          Please follow the [IBM support procedure](https://www.ibm.com/mysupport/s/?language=en_US) for any issues with the driver.

          For non-urgent issues, suggestions, recommendations feel free to open an
          issue in [github](https://github.com/IBM/ibm-spectrum-scale-csi). Issues will be addressed as team availability permits.

          **Note:** Custom Resource example represents the minimum settings needed to run
          the operator. If your environment needs more advanced settings (e.g. remote clusters,
          node mapping, image pull secret, Taint and Toleration etc.) please refer to  the sample [Custom Resource](https://raw.githubusercontent.com/IBM/ibm-spectrum-scale-csi/v2.6.0/operator/config/samples/csiscaleoperators.csi.ibm.com_cr.yaml).
        displayName: IBM Spectrum Scale CSI Plugin Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - GPFS
        - Spectrum Scale
        - CSI Driver
        links:
        - name: IBM CSI Spectrum Scale Documentation
          url: https://www.ibm.com/docs/en/spectrum-scale-csi
        - name: CSI Developer Documentation
          url: https://kubernetes-csi.github.io/docs/
        maintainers:
        - email: madhu.punjabi@in.ibm.com
          name: Madhu Thorat
        - email: amdabhad@in.ibm.com
          name: Amol Dabhade
        - email: Nitish.Kumar4@ibm.com
          name: Nitish Kumar
        maturity: alpha
        provider:
          name: IBM
        relatedImages:
        - quay.io/ibm-spectrum-scale/ibm-spectrum-scale-csi-operator@sha256:b62ad588fbc338090f405740fd8bceaf59b3267cdb532c60ae965643ccae4d5d
        - quay.io/openshift-community-operators/ibm-spectrum-scale-csi-operator@sha256:01d24dfa0d6b6146230459f8f7e74f2749d7fff3c4d75c40de386e014f9367d6
        version: 2.6.0
      entries:
      - name: ibm-spectrum-scale-csi-operator.v2.6.0
        version: 2.6.0
      - name: ibm-spectrum-scale-csi-operator.v2.5.1
        version: 2.5.1
      - name: ibm-spectrum-scale-csi-operator.v2.5.0
        version: 2.5.0
      - name: ibm-spectrum-scale-csi-operator.v2.4.0
        version: 2.4.0
      - name: ibm-spectrum-scale-csi-operator.v2.3.1
        version: 2.3.1
      - name: ibm-spectrum-scale-csi-operator.v2.3.0
        version: 2.3.0
      name: stable
    defaultChannel: stable
    packageName: ibm-spectrum-scale-csi-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-acmpca-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-acmpca-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acmpca.services.k8s.aws/v1alpha1",
                "kind": "CertificateAuthority",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/acmpca-controller:1.2.0
          createdAt: "2025-11-29T03:33:40Z"
          description: AWS ACM PCA controller is a service controller for managing
            ACM PCA resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CertificateAuthority represents the state of an AWS acmpca
              CertificateAuthority resource.
            displayName: CertificateAuthority
            kind: CertificateAuthority
            name: certificateauthorities.acmpca.services.k8s.aws
            version: v1alpha1
          - description: CertificateAuthorityActivation represents the state of an
              AWS acmpca CertificateAuthorityActivation resource.
            displayName: CertificateAuthorityActivation
            kind: CertificateAuthorityActivation
            name: certificateauthorityactivations.acmpca.services.k8s.aws
            version: v1alpha1
          - description: Certificate represents the state of an AWS acmpca Certificate
              resource.
            displayName: Certificate
            kind: Certificate
            name: certificates.acmpca.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon ACM PCA resources in AWS from within your Kubernetes cluster.

          **About Amazon ACM PCA**

          AWS Private CA enables creation of private certificate authority (CA) hierarchies, including root and subordinate CAs, without the investment and maintenance costs of operating an on-premises CA. Your private CAs can issue end-entity X.509 certificates useful in scenarios including:
          - Creating encrypted TLS communication channels
          - Authenticating users, computers, API endpoints, and IoT devices
          - Cryptographically signing code
          - Implementing Online Certificate Status Protocol (OCSP) for obtaining certificate revocation status

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ACM PCA
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acmpca
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ACM PCA Developer Resources
          url: https://aws.amazon.com/private-ca/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: acmpca maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/acmpca-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-acmpca-controller@sha256:b413bc9c33cfa7364da019f3d192bb9fd7fbb6e52701284f093679ebdb839caf
        version: 1.2.0
      entries:
      - name: ack-acmpca-controller.v1.2.0
        version: 1.2.0
      - name: ack-acmpca-controller.v1.1.2
        version: 1.1.2
      - name: ack-acmpca-controller.v1.1.1
        version: 1.1.1
      - name: ack-acmpca-controller.v1.1.0
        version: 1.1.0
      - name: ack-acmpca-controller.v1.0.10
        version: 1.0.10
      - name: ack-acmpca-controller.v1.0.9
        version: 1.0.9
      - name: ack-acmpca-controller.v1.0.8
        version: 1.0.8
      - name: ack-acmpca-controller.v1.0.7
        version: 1.0.7
      - name: ack-acmpca-controller.v1.0.6
        version: 1.0.6
      - name: ack-acmpca-controller.v1.0.5
        version: 1.0.5
      - name: ack-acmpca-controller.v1.0.4
        version: 1.0.4
      - name: ack-acmpca-controller.v1.0.3
        version: 1.0.3
      - name: ack-acmpca-controller.v1.0.2
        version: 1.0.2
      - name: ack-acmpca-controller.v1.0.1
        version: 1.0.1
      - name: ack-acmpca-controller.v1.0.0
        version: 1.0.0
      - name: ack-acmpca-controller.v0.0.20
        version: 0.0.20
      - name: ack-acmpca-controller.v0.0.16
        version: 0.0.16
      - name: ack-acmpca-controller.v0.0.15
        version: 0.0.15
      - name: ack-acmpca-controller.v0.0.14
        version: 0.0.14
      - name: ack-acmpca-controller.v0.0.13
        version: 0.0.13
      - name: ack-acmpca-controller.v0.0.12
        version: 0.0.12
      - name: ack-acmpca-controller.v0.0.11
        version: 0.0.11
      - name: ack-acmpca-controller.v0.0.10
        version: 0.0.10
      - name: ack-acmpca-controller.v0.0.9
        version: 0.0.9
      - name: ack-acmpca-controller.v0.0.8
        version: 0.0.8
      - name: ack-acmpca-controller.v0.0.5
        version: 0.0.5
      - name: ack-acmpca-controller.v0.0.4
        version: 0.0.4
      - name: ack-acmpca-controller.v0.0.3
        version: 0.0.3
      - name: ack-acmpca-controller.v0.0.2
        version: 0.0.2
      - name: ack-acmpca-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-acmpca-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/kuadrant-operator
    name: kuadrant-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kuadrant-operator.v0.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "AuthPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "authScheme": {
                    "identity": [
                      {
                        "apiKey": {
                          "allNamespaces": true,
                          "selector": {
                            "matchLabels": {
                              "app": "toystore"
                            }
                          }
                        },
                        "credentials": {
                          "in": "authorization_header",
                          "keySelector": "APIKEY"
                        },
                        "name": "friends"
                      }
                    ],
                    "response": [
                      {
                        "json": {
                          "properties": [
                            {
                              "name": "userID",
                              "valueFrom": {
                                "authJSON": "auth.identity.metadata.annotations.secret\\.kuadrant\\.io/user-id"
                              }
                            }
                          ]
                        },
                        "name": "rate-limit-apikey",
                        "wrapper": "envoyDynamicMetadata",
                        "wrapperKey": "ext_auth_data"
                      }
                    ]
                  },
                  "rules": null,
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "Kuadrant",
                "metadata": {
                  "name": "kuadrant-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "RateLimitPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "rateLimits": [
                    {
                      "configurations": [
                        {
                          "actions": [
                            {
                              "metadata": {
                                "default_value": "no-user",
                                "descriptor_key": "userID",
                                "metadata_key": {
                                  "key": "envoy.filters.http.ext_authz",
                                  "path": [
                                    {
                                      "segment": {
                                        "key": "ext_auth_data"
                                      }
                                    },
                                    {
                                      "segment": {
                                        "key": "userID"
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          ]
                        }
                      ],
                      "limits": [
                        {
                          "conditions": [],
                          "maxValue": 2,
                          "seconds": 10,
                          "variables": [
                            "userID"
                          ]
                        }
                      ]
                    }
                  ],
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/kuadrant-operator:v0.3.1
          createdAt: "2023-06-01T12:24:17Z"
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/kuadrant-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Enable AuthN and AuthZ based access control on workloads
            displayName: AuthPolicy
            kind: AuthPolicy
            name: authpolicies.kuadrant.io
            version: v1beta1
          - description: Kuadrant is the Schema for the kuadrants API
            displayName: Kuadrant
            kind: Kuadrant
            name: kuadrants.kuadrant.io
            version: v1beta1
          - description: Enable access control on workloads based on HTTP rate limiting
            displayName: RateLimitPolicy
            kind: RateLimitPolicy
            name: ratelimitpolicies.kuadrant.io
            version: v1beta1
        description: A Kubernetes Operator to manage the lifecycle of the Kuadrant
          system
        displayName: Kuadrant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - api-management
        - Kuadrant
        - kubernetes
        - openshift
        - cloud-service-protection
        - rate-limiting
        - authentication
        - authorization
        links:
        - name: Kuadrant Operator
          url: https://github.com/Kuadrant/kuadrant-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/kuadrant-operator
        relatedImages:
        - oci://quay.io/kuadrant/wasm-shim:v0.2.0
        - quay.io/kuadrant/kuadrant-operator:v0.3.1
        - quay.io/openshift-community-operators/kuadrant-operator@sha256:398c9230878feb756ad393d7de5675a7370c883a18acf73483a660e9303d807c
        version: 0.3.1
      entries:
      - name: kuadrant-operator.v0.3.1
        version: 0.3.1
      - name: kuadrant-operator.v0.3.0
        version: 0.3.0
      - name: kuadrant-operator.v0.2.1
        version: 0.2.1
      - name: kuadrant-operator.v0.2.0
        version: 0.2.0
      name: alpha
    - currentCSV: kuadrant-operator.v0.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSPolicy",
                "metadata": {
                  "name": "dnspolicy-sample"
                },
                "spec": {
                  "healthCheck": {
                    "endpoint": "/",
                    "protocol": "HTTP"
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "TLSPolicy",
                "metadata": {
                  "name": "tlspolicy-sample"
                },
                "spec": {
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "self-signed-ca"
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "Kuadrant",
                "metadata": {
                  "name": "kuadrant-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "kuadrant.io/v1beta2",
                "kind": "AuthPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "rules": {
                    "authentication": {
                      "apikey": {
                        "apiKey": {
                          "selector": {}
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta2",
                "kind": "RateLimitPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "limits": {
                    "toys": {
                      "rates": [
                        {
                          "duration": 1,
                          "limit": 50,
                          "unit": "minute"
                        }
                      ]
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/kuadrant-operator:v0.11.0
          createdAt: "2024-10-02T20:30:45Z"
          description: '[DEPRECATED] Follow https://docs.kuadrant.io instead'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/kuadrant-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AuthPolicy enables authentication and authorization for service
              workloads in a Gateway API network
            displayName: AuthPolicy
            kind: AuthPolicy
            name: authpolicies.kuadrant.io
            version: v1beta2
          - description: DNSPolicy configures how North-South based traffic should
              be balanced and reach the gateways
            displayName: DNSPolicy
            kind: DNSPolicy
            name: dnspolicies.kuadrant.io
            version: v1alpha1
          - description: Kuadrant configures installations of Kuadrant Service Protection
              components
            displayName: Kuadrant
            kind: Kuadrant
            name: kuadrants.kuadrant.io
            version: v1beta1
          - description: RateLimitPolicy enables rate limiting for service workloads
              in a Gateway API network
            displayName: RateLimitPolicy
            kind: RateLimitPolicy
            name: ratelimitpolicies.kuadrant.io
            version: v1beta2
          - description: TLSPolicy provides tls for gateway listeners by managing
              the lifecycle of tls certificates
            displayName: TLSPolicy
            kind: TLSPolicy
            name: tlspolicies.kuadrant.io
            version: v1alpha1
        description: |-
          ## Deprecated
          This Kuadrant community operator is deprecated, Follow https://docs.kuadrant.io instead.
        displayName: '[DEPRECATED] Kuadrant Operator'
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - api-management
        - Kuadrant
        - kubernetes
        - openshift
        - cloud-service-protection
        - rate-limiting
        - authentication
        - authorization
        links:
        - name: Kuadrant Operator
          url: https://github.com/Kuadrant/kuadrant-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/kuadrant-operator
        relatedImages:
        - oci://quay.io/kuadrant/wasm-shim:v0.6.0
        - quay.io/community-operator-pipeline-prod/kuadrant-operator@sha256:f21456392af3b37ae48d77dc7f19fa23c6946269555bb1280978b29420bbf31e
        - quay.io/kuadrant/kuadrant-operator:v0.11.0
        version: 0.11.1
      entries:
      - name: kuadrant-operator.v0.11.1
        version: 0.11.1
      - name: kuadrant-operator.v0.11.0
        version: 0.11.0
      - name: kuadrant-operator.v0.10.0
        version: 0.10.0
      - name: kuadrant-operator.v0.7.2
        version: 0.7.2
      - name: kuadrant-operator.v0.4.1
        version: 0.4.1
      - name: kuadrant-operator.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: kuadrant-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/kuadrant-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EnterpriseDB Corporation
      provider-url: ""
    name: edb-hcp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: edb-hcp-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edbpgai.edb.com/v1alpha1",
                "kind": "HybridControlPlane",
                "metadata": {
                  "name": "placeholder"
                },
                "spec": {
                  "beaconAgent": {
                    "applianceProviderEnabled": true,
                    "beaconDBConnected": true,
                    "beaconServerAddress": "upm-beacon-server-ingestion.upm-beacon.svc.cluster.local:8080",
                    "inCluster": true,
                    "location": "devspatcher",
                    "logLevel": "debug",
                    "plaintext": true,
                    "providers": [
                      "appliance"
                    ],
                    "provisioning": {
                      "imageDiscovery": true,
                      "imagesetDiscoveryAuthenticationType": "token",
                      "imagesetDiscoveryContainerRegistryURL": "placeholder",
                      "loadBalancersEnabled": true,
                      "nodePortDomain": "nodeportdomain.com",
                      "openshift": true,
                      "provider": "aws"
                    },
                    "tlsInsecure": false,
                    "transparentDataEncryptionMethods": [
                      "passphrase",
                      "hashicorp_vault"
                    ]
                  },
                  "beaconServer": {
                    "logLevel": "debug"
                  },
                  "componentsParameters": {
                    "edb-migration-portal": {
                      "enable_pdb": "false"
                    },
                    "transporter-data-operator": {
                      "fips_enabled": "false"
                    },
                    "transporter-dp-agent": {
                      "rw_service_url": "placeholder"
                    },
                    "transporter-rw-service": {
                      "domain_name": "placeholder"
                    },
                    "upm-api-pnxt-metric": {
                      "log_level": "info",
                      "tsdb_host": "thanos-query.monitoring.svc.cluster.local",
                      "tsdb_port": "9090"
                    },
                    "upm-api-pnxt-pd": {
                      "log_level": "info"
                    },
                    "upm-beaco-ff-base": {
                      "aes_key_rotation_interval": "2160h",
                      "usage_generator_interval": "24h"
                    },
                    "upm-beaco-usages": {
                      "usage_generator_interval": "24h"
                    },
                    "upm-beacon": {
                      "beacon_db_hibernation": "\"off\"",
                      "beacon_location_id": "devspatcher",
                      "beacon_server_replicas": "1",
                      "external_metrics_replicas": "1",
                      "image_discovery_credentials_secret_name": "placeholder",
                      "server_host": "placeholder"
                    },
                    "upm-istio": {
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288"
                    },
                    "upm-istio-gateway": {
                      "cookie_aeskey": "rzkutHl8NJNztPMEJYykZouHslNiA7xmIXH+58ISUVo=",
                      "enable_server_session": "true",
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288",
                      "openshift_console_domain_name": "placeholder"
                    },
                    "upm-prometheus": {
                      "cpu": "200m",
                      "memory": "6Gi",
                      "prometheus_retention_size": "15GB",
                      "prometheus_storage_size": "20Gi"
                    },
                    "upm-thanos": {
                      "memcached_cpu": "500m",
                      "memcached_memory": "2Gi",
                      "query_frontend_cpu": "200m",
                      "query_frontend_memory": "128Mi"
                    },
                    "upm-trust-manager": {
                      "cert_manager_namespace": "cert-manager"
                    }
                  },
                  "flavour": "placeholder",
                  "globalParameters": {
                    "default_ingress_domain": "placeholder",
                    "internal_backup_folder": "a7462dbc7106",
                    "internal_db_backup_compression": "gzip",
                    "internal_db_backup_retention": "30d",
                    "portal_certificate_secret": "beaco-istio-gw-cert",
                    "portal_domain_name": "placeholder",
                    "portal_port": "443",
                    "session_duration_seconds": "86400",
                    "storage_class": "placeholder"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "placeholder",
                      "namespace": "default"
                    }
                  ],
                  "imageRegistry": "placeholder",
                  "pgai": {
                    "portal": {
                      "authentication": {
                        "clientSecret": "edb-postgres-ai-secret",
                        "idpConnectors": [],
                        "staticPasswords": [
                          {
                            "email": "owner@mycompany.com",
                            "hash": "$2y$10/yXkob4KWJDqpiwudBqC",
                            "userID": "c5998173-a605-449a-a9a5-4a9c33e26df7",
                            "username": "Owner MyCompany"
                          },
                          {
                            "email": "admin@mycompany.com",
                            "hash": "$2y$10/yYwtXRrOagYO2jNtwVzGQPPEfDvX0QllV8NXbku",
                            "userID": "b7e2c2e2-2e7a-4c7b-9e2a-7e6b8c1f2a3d",
                            "username": "Admin MyCompany"
                          }
                        ]
                      }
                    }
                  },
                  "source": {
                    "useLocalKustomizations": true
                  },
                  "version": "placeholder"
                }
              }
            ]
          capabilities: Basic Install
          categories: Database,AI/Machine Learning
          containerImage: docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
          createdAt: "2025-12-16T03:00:39Z"
          description: Unify transactional, analytical, and AI workloads and bring
            cloud agility to your hybrid data infrastructure.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/EnterpriseDB/edb-hcp-operator
          support: techsupport@enterprisedb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HybridControlPlane is the Schema for the hybridcontrolplanes
              API
            displayName: Hybrid Control Plane
            kind: HybridControlPlane
            name: hybridcontrolplanes.edbpgai.edb.com
            version: v1alpha1
        description: |
          EDB Postgres AI is a sovereign data and AI platform that brings analytics and AI closer to core operational data and enables cloud agility in private environments.
          Unify your structured and unstructured data in one multi-model data platform with centralized management and observability to:
          - Accelerate enterprise-grade transactional databases
          - Enable rapid analytics and powerful lakehouse integrations
          - Automate AI pipelines and semantic search for faster GenAI development
          Using EDB’s unmatched Postgres expertise, EDB Postgres AI automates database operations, ensuring expert-level execution across deployments – boosting operational efficiency by up to 30% and accelerating innovation.
        displayName: EDB Postgres AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Postgres
        - Database
        - DBaaS
        - EDB Postgres AI
        links:
        - name: EDB Postgres AI Software Deployment
          url: https://www.enterprisedb.com/products/software-deployment
        maintainers:
        - email: techsupport@enterprisedb.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/edb-hcp-operator@sha256:1fb27bf4a51cb903b59a1c24d9a0233148a258426bbb0b7a101e12f6f64b28f8
        - docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
        version: 1.3.3
      entries:
      - name: edb-hcp-operator.v1.3.3
        version: 1.3.3
      name: alpha
    - currentCSV: edb-hcp-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edbpgai.edb.com/v1alpha1",
                "kind": "HybridControlPlane",
                "metadata": {
                  "name": "placeholder"
                },
                "spec": {
                  "beaconAgent": {
                    "applianceProviderEnabled": true,
                    "beaconDBConnected": true,
                    "beaconServerAddress": "upm-beacon-server-ingestion.upm-beacon.svc.cluster.local:8080",
                    "inCluster": true,
                    "location": "devspatcher",
                    "logLevel": "debug",
                    "plaintext": true,
                    "providers": [
                      "appliance"
                    ],
                    "provisioning": {
                      "imageDiscovery": true,
                      "imagesetDiscoveryAuthenticationType": "token",
                      "imagesetDiscoveryContainerRegistryURL": "placeholder",
                      "loadBalancersEnabled": true,
                      "nodePortDomain": "nodeportdomain.com",
                      "openshift": true,
                      "provider": "aws"
                    },
                    "tlsInsecure": false,
                    "transparentDataEncryptionMethods": [
                      "passphrase",
                      "hashicorp_vault"
                    ]
                  },
                  "beaconServer": {
                    "logLevel": "debug"
                  },
                  "componentsParameters": {
                    "edb-migration-portal": {
                      "enable_pdb": "false"
                    },
                    "transporter-data-operator": {
                      "fips_enabled": "false"
                    },
                    "transporter-dp-agent": {
                      "rw_service_url": "placeholder"
                    },
                    "transporter-rw-service": {
                      "domain_name": "placeholder"
                    },
                    "upm-api-pnxt-metric": {
                      "log_level": "info",
                      "tsdb_host": "thanos-query.monitoring.svc.cluster.local",
                      "tsdb_port": "9090"
                    },
                    "upm-api-pnxt-pd": {
                      "log_level": "info"
                    },
                    "upm-beaco-ff-base": {
                      "aes_key_rotation_interval": "2160h",
                      "usage_generator_interval": "24h"
                    },
                    "upm-beaco-usages": {
                      "usage_generator_interval": "24h"
                    },
                    "upm-beacon": {
                      "beacon_db_hibernation": "\"off\"",
                      "beacon_location_id": "devspatcher",
                      "beacon_server_replicas": "1",
                      "external_metrics_replicas": "1",
                      "image_discovery_credentials_secret_name": "placeholder",
                      "server_host": "placeholder"
                    },
                    "upm-istio": {
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288"
                    },
                    "upm-istio-gateway": {
                      "cookie_aeskey": "rzkutHl8NJNztPMEJYykZouHslNiA7xmIXH+58ISUVo=",
                      "enable_server_session": "true",
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288",
                      "openshift_console_domain_name": "placeholder"
                    },
                    "upm-prometheus": {
                      "cpu": "200m",
                      "memory": "6Gi",
                      "prometheus_retention_size": "15GB",
                      "prometheus_storage_size": "20Gi"
                    },
                    "upm-thanos": {
                      "memcached_cpu": "500m",
                      "memcached_memory": "2Gi",
                      "query_frontend_cpu": "200m",
                      "query_frontend_memory": "128Mi"
                    },
                    "upm-trust-manager": {
                      "cert_manager_namespace": "cert-manager"
                    }
                  },
                  "flavour": "placeholder",
                  "globalParameters": {
                    "default_ingress_domain": "placeholder",
                    "internal_backup_folder": "a7462dbc7106",
                    "internal_db_backup_compression": "gzip",
                    "internal_db_backup_retention": "30d",
                    "portal_certificate_secret": "beaco-istio-gw-cert",
                    "portal_domain_name": "placeholder",
                    "portal_port": "443",
                    "session_duration_seconds": "86400",
                    "storage_class": "placeholder"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "placeholder",
                      "namespace": "default"
                    }
                  ],
                  "imageRegistry": "placeholder",
                  "pgai": {
                    "portal": {
                      "authentication": {
                        "clientSecret": "edb-postgres-ai-secret",
                        "idpConnectors": [],
                        "staticPasswords": [
                          {
                            "email": "owner@mycompany.com",
                            "hash": "$2y$10/yXkob4KWJDqpiwudBqC",
                            "userID": "c5998173-a605-449a-a9a5-4a9c33e26df7",
                            "username": "Owner MyCompany"
                          },
                          {
                            "email": "admin@mycompany.com",
                            "hash": "$2y$10/yYwtXRrOagYO2jNtwVzGQPPEfDvX0QllV8NXbku",
                            "userID": "b7e2c2e2-2e7a-4c7b-9e2a-7e6b8c1f2a3d",
                            "username": "Admin MyCompany"
                          }
                        ]
                      }
                    }
                  },
                  "source": {
                    "useLocalKustomizations": true
                  },
                  "version": "placeholder"
                }
              }
            ]
          capabilities: Basic Install
          categories: Database,AI/Machine Learning
          containerImage: docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
          createdAt: "2025-12-16T03:00:39Z"
          description: Unify transactional, analytical, and AI workloads and bring
            cloud agility to your hybrid data infrastructure.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/EnterpriseDB/edb-hcp-operator
          support: techsupport@enterprisedb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HybridControlPlane is the Schema for the hybridcontrolplanes
              API
            displayName: Hybrid Control Plane
            kind: HybridControlPlane
            name: hybridcontrolplanes.edbpgai.edb.com
            version: v1alpha1
        description: |
          EDB Postgres AI is a sovereign data and AI platform that brings analytics and AI closer to core operational data and enables cloud agility in private environments.
          Unify your structured and unstructured data in one multi-model data platform with centralized management and observability to:
          - Accelerate enterprise-grade transactional databases
          - Enable rapid analytics and powerful lakehouse integrations
          - Automate AI pipelines and semantic search for faster GenAI development
          Using EDB’s unmatched Postgres expertise, EDB Postgres AI automates database operations, ensuring expert-level execution across deployments – boosting operational efficiency by up to 30% and accelerating innovation.
        displayName: EDB Postgres AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Postgres
        - Database
        - DBaaS
        - EDB Postgres AI
        links:
        - name: EDB Postgres AI Software Deployment
          url: https://www.enterprisedb.com/products/software-deployment
        maintainers:
        - email: techsupport@enterprisedb.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/edb-hcp-operator@sha256:1fb27bf4a51cb903b59a1c24d9a0233148a258426bbb0b7a101e12f6f64b28f8
        - docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
        version: 1.3.3
      entries:
      - name: edb-hcp-operator.v1.3.3
        version: 1.3.3
      name: lts-v1.3
    defaultChannel: alpha
    packageName: edb-hcp-operator
    provider:
      name: EnterpriseDB Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sfn-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sfn-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sfn.services.k8s.aws/v1alpha1",
                "kind": "Activity",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sfn.services.k8s.aws/v1alpha1",
                "kind": "StateMachine",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sfn-controller:1.2.0
          createdAt: "2025-11-29T04:38:13Z"
          description: AWS Step Functions controller is a service controller for managing
            Step Functions resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Activity represents the state of an AWS sfn Activity resource.
            displayName: Activity
            kind: Activity
            name: activities.sfn.services.k8s.aws
            version: v1alpha1
          - description: StateMachine represents the state of an AWS sfn StateMachine
              resource.
            displayName: StateMachine
            kind: StateMachine
            name: statemachines.sfn.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Step Functions resources in AWS from within your Kubernetes cluster.

          **About Amazon Step FUnctions**

          Step Functions is a serverless orchestration service that lets you combine AWS Lambda functions and other AWS services to build business-critical applications. Through Step Functions' graphical console, you see your application’s workflow as a series of event-driven steps.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Step Functions
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sfn
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Step Functions Developer Resources
          url: https://aws.amazon.com/step-functions/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: step functions maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sfn-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-sfn-controller@sha256:dfcfbf98f6d237c3a2b87efe63ead08237b9c53ce45ad4469a007de66ea2e9b8
        version: 1.2.0
      entries:
      - name: ack-sfn-controller.v1.2.0
        version: 1.2.0
      - name: ack-sfn-controller.v1.1.2
        version: 1.1.2
      - name: ack-sfn-controller.v1.1.1
        version: 1.1.1
      - name: ack-sfn-controller.v1.1.0
        version: 1.1.0
      - name: ack-sfn-controller.v1.0.29
        version: 1.0.29
      - name: ack-sfn-controller.v1.0.28
        version: 1.0.28
      - name: ack-sfn-controller.v1.0.27
        version: 1.0.27
      - name: ack-sfn-controller.v1.0.26
        version: 1.0.26
      - name: ack-sfn-controller.v1.0.25
        version: 1.0.25
      - name: ack-sfn-controller.v1.0.24
        version: 1.0.24
      - name: ack-sfn-controller.v1.0.23
        version: 1.0.23
      - name: ack-sfn-controller.v1.0.22
        version: 1.0.22
      - name: ack-sfn-controller.v1.0.21
        version: 1.0.21
      - name: ack-sfn-controller.v1.0.20
        version: 1.0.20
      - name: ack-sfn-controller.v1.0.19
        version: 1.0.19
      - name: ack-sfn-controller.v1.0.18
        version: 1.0.18
      - name: ack-sfn-controller.v1.0.17
        version: 1.0.17
      - name: ack-sfn-controller.v1.0.16
        version: 1.0.16
      - name: ack-sfn-controller.v1.0.15
        version: 1.0.15
      - name: ack-sfn-controller.v1.0.14
        version: 1.0.14
      - name: ack-sfn-controller.v1.0.13
        version: 1.0.13
      - name: ack-sfn-controller.v1.0.11
        version: 1.0.11
      - name: ack-sfn-controller.v1.0.10
        version: 1.0.10
      - name: ack-sfn-controller.v1.0.9
        version: 1.0.9
      - name: ack-sfn-controller.v1.0.8
        version: 1.0.8
      - name: ack-sfn-controller.v1.0.6
        version: 1.0.6
      - name: ack-sfn-controller.v1.0.5
        version: 1.0.5
      - name: ack-sfn-controller.v1.0.2
        version: 1.0.2
      - name: ack-sfn-controller.v1.0.1
        version: 1.0.1
      - name: ack-sfn-controller.v1.0.0
        version: 1.0.0
      - name: ack-sfn-controller.v0.1.3
        version: 0.1.3
      - name: ack-sfn-controller.v0.1.2
        version: 0.1.2
      - name: ack-sfn-controller.v0.1.1
        version: 0.1.1
      - name: ack-sfn-controller.v0.1.0
        version: 0.1.0
      - name: ack-sfn-controller.v0.0.19
        version: 0.0.19
      - name: ack-sfn-controller.v0.0.18
        version: 0.0.18
      - name: ack-sfn-controller.v0.0.17
        version: 0.0.17
      - name: ack-sfn-controller.v0.0.16
        version: 0.0.16
      - name: ack-sfn-controller.v0.0.15
        version: 0.0.15
      - name: ack-sfn-controller.v0.0.14
        version: 0.0.14
      - name: ack-sfn-controller.v0.0.13
        version: 0.0.13
      - name: ack-sfn-controller.v0.0.12
        version: 0.0.12
      - name: ack-sfn-controller.v0.0.11
        version: 0.0.11
      - name: ack-sfn-controller.v0.0.10
        version: 0.0.10
      - name: ack-sfn-controller.v0.0.9
        version: 0.0.9
      - name: ack-sfn-controller.v0.0.8
        version: 0.0.8
      - name: ack-sfn-controller.v0.0.7
        version: 0.0.7
      - name: ack-sfn-controller.v0.0.6
        version: 0.0.6
      - name: ack-sfn-controller.v0.0.5
        version: 0.0.5
      name: alpha
    defaultChannel: alpha
    packageName: ack-sfn-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ses-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ses-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ses-controller:1.2.0
          createdAt: "2025-11-29T04:02:30Z"
          description: AWS SES controller is a service controller for managing SES
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConfigurationSet represents the state of an AWS ses ConfigurationSet
              resource.
            displayName: ConfigurationSet
            kind: ConfigurationSet
            name: configurationsets.ses.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Simple Email Service (SES) resources in AWS from within your Kubernetes cluster.

          **About Amazon SES**

          Amazon Simple Email Service (SES) is an email platform that provides an easy, cost-effective way for you to send and receive email using your own email addresses and domains.
          For example, you can send marketing emails such as special offers, transactional emails such as order confirmations, and other types of correspondence such as newsletters. When you use Amazon SES to receive mail, you can develop software solutions such as email autoresponders, email unsubscribe systems, and applications that generate customer support tickets from incoming emails.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SES
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ses
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SES Developer Resources
          url: https://aws.amazon.com/ses/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ses maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ses-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ses-controller@sha256:b083d3578565f7503e887ea1207031a9fe776c4341d8aeb977b88d4b2e841bbc
        version: 1.2.0
      entries:
      - name: ack-ses-controller.v1.2.0
        version: 1.2.0
      - name: ack-ses-controller.v1.1.2
        version: 1.1.2
      - name: ack-ses-controller.v1.1.1
        version: 1.1.1
      - name: ack-ses-controller.v1.1.0
        version: 1.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-ses-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/confidential-containers
    name: trustee-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trustee-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Security
          containerImage: registry.redhat.io/build-of-trustee/trustee-rhel9-operator@sha256:04a30e2c2f9010a38a20270fdbac09445bb28d46a67126d0b74396ae492ccea2
          createdAt: "2024-06-07T10:06:06Z"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: trustee-operator-system
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/trustee-operator
          support: Confidential Containers Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KbsConfig is the Schema for the kbsconfigs API
            displayName: Kbs Config
            kind: KbsConfig
            name: kbsconfigs.confidentialcontainers.org
            version: v1alpha1
          - kind: TrusteeConfig
            name: trusteeconfigs.confidentialcontainers.org
            version: v1alpha1
        description: Remote attestation operator for confidential containers
        displayName: Red Hat build of Trustee
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trustee
        - Confidential Computing
        - Attestation
        links:
        - name: Red Hat build of Trustee
          url: https://github.com/openshift/trustee-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
          url: https://github.com/confidential-containers
        relatedImages:
        - registry.redhat.io/build-of-trustee/trustee-rhel9@sha256:da30d5c78cba2fa4b595487c500ffefededea4ff2f4e9ee4d8bdb7b13d8aba40
        - registry.redhat.io/build-of-trustee/trustee-operator-bundle@sha256:2f72205cf81cd26e0c4d7b159e72f567e84e69596aaff92bbf52bdfd2d7b9dd4
        - registry.redhat.io/build-of-trustee/trustee-rhel9-operator@sha256:04a30e2c2f9010a38a20270fdbac09445bb28d46a67126d0b74396ae492ccea2
        version: 1.0.0
      entries:
      - name: trustee-operator.v1.0.0
        version: 1.0.0
      - name: trustee-operator.v0.4.2
        version: 0.4.2
      - name: trustee-operator.v0.4.1
        version: 0.4.1
      - name: trustee-operator.v0.4.0
        version: 0.4.0
      - name: trustee-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: trustee-operator
    provider:
      name: Red Hat
      url: https://github.com/confidential-containers
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: eap
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eap-operator.v3.2.8
      currentCSVDesc:
        annotations:
          capabilities: Seamless Upgrades
          categories: Application Runtime
          certified: "false"
          containerImage: registry.redhat.io/jboss-eap/eap-rhel9-operator@sha256:8d10a86d97696603ef612672a65240679a06f8f4dee25f82d1bf5f69132760b1
          createdAt: "2025-07-10T14:38:00Z"
          description: Operator that creates and manages Java applications running
            on JBoss EAP.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat JBoss Enterprise Application
            Platform", "Red Hat Runtimes", "Red Hat Integration", "Red Hat Process
            Automation"]'
          repository: https://github.com/wildfly/wildfly-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An application running on EAP application runtime.
            displayName: WildFlyServer
            kind: WildFlyServer
            name: wildflyservers.wildfly.org
            version: v1alpha1
        description: "# Red Hat JBoss Enterprise Application Platform (JBoss EAP)\n\nRed
          Hat® JBoss® Enterprise Application Platform (JBoss EAP) delivers enterprise-grade
          security, performance, and scalability in any environment.  Some features
          of JBoss EAP are:\n\n**Optimized for cloud and containers**: with simplified
          deployment and full Jakarta EE performance for applications in any environment.\n\n**Lightweight,
          flexible architecture**: which is well-suited for microservices and traditional
          applications.\n\n**Support and standardize microservices development**:
          With the JBoss Enterprise Application Platform expansion pack that supports
          Eclipse MicroProfile application programming interfaces (APIs).\n\n# JBoss
          EAP Operator\nOperators are software components that extend the Kubernetes
          API to customize how to manage applications and their components.\n\nThe
          JBoss EAP Operator facilitates the deployment and management of JBoss EAP
          on container orchestration platforms such as Red Hat OpenShift. The operator
          acts as an automated management tool, simplifying the process of provisioning,
          scaling, and updating JBoss EAP applications.\n\n# JBoss EAP Operator capabilities\nThe
          JBoss EAP Operator deploys and manages multiple instances of the JBoss EAP
          Java application in a Red Hat OpenShift cluster. \n\n**Simplifies management**:
          Creates, configures, manages, and seamlessly upgrades instances of complex
          stateful applications. No more manual configuration, making management a
          breeze.\n\n**Efficient scaling**: Effortlessly scales the instances of your
          JBoss EAP Java application based on demand.\n\n**Faster updates**: Seamlessly
          updates, enabling you to roll out new operator features and bug fixes without
          downtime\n\n**Safe transaction recovery**: Provides safe transaction recovery
          in your application cluster by verifying all transactions are completed
          before scaling down the replicas and marking a pod as clean for termination.\n\n#
          Operator installation and configuration\nLet's walk through the steps to
          install the JBoss EAP Operator on your OpenShift Cluster and deploy your
          first example application:\n\n**Step 1: Install JBoss EAP from OperatorHub**\n1.
          Click Install in the JBoss EAP operator window.\n2. In the Install Operator
          window, for Installation mode, select All namespaces on the cluster The
          operator is available in openshift-operators namespace.\n\n**Step 2: Build
          an application image**\n\nThe JBoss EAP Operator deploys an application
          image. If you do not have your JBoss EAP application image built yet, you
          can use the following example to build the image using Helm Charts.\n\n1.
          In the main navigation, click the dropdown menu (perspective switcher) and
          select Developer.\n2. Click Add > Helm Chart.\n3. Search for \"JBoss EAP
          8\" (Provided by Red Hat) and create a new Helm Chart release.\n4. On the
          Release name text box, type “eap-application”. \n5. Switch to the YAML view
          and replace the existing code with the following:\n\n    ```\n    build:\n
          \     uri: https://github.com/jboss-eap-up-and-running/eap8-getting-started\n
          \   deploy:\n      enabled: false\n    ```\n\n6. Click Create to build the
          application image.\n\n    The application image is created with the name
          eap-application:latest.\n\n**Step 3: Deploy your application with JBoss
          EAP Operator**\n\n1. In the main navigation, click the dropdown menu (perspective
          switcher) and select Developer.\n2. Click Add > Operator Backed > WildFlyServer
          > Create.\n3. Switch to the YAML view and replace the existing code with
          the following:\n\n    ```\n    apiVersion: wildfly.org/v1alpha1\n    kind:
          WildFlyServer\n    metadata:\n      name: eap-application\n    spec:\n      applicationImage:
          eap-application:latest\n      replicas: 1\n    ```\n\n 4. Click Create to
          deploy the application with JBoss EAP Operator.\n"
        displayName: JBoss EAP
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eap
        - java
        - open source
        - application runtime
        links:
        - name: JBoss EAP Homepage
          url: https://www.redhat.com/en/technologies/jboss-middleware/application-platform
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/
        - name: Blog
          url: https://developers.redhat.com/blog/
        - name: Quickstart
          url: https://github.com/jboss-developer/jboss-eap-quickstarts
        - name: Red Hat Customer Portal
          url: https://access.redhat.com/support
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat, Inc.
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/jboss-eap/eap-operator-bundle@sha256:5bbe10f6e33106ee9ef33626e91d3283f7ff03d37a00c094d2004ad0b6323721
        - registry.redhat.io/jboss-eap/eap-rhel9-operator@sha256:8d10a86d97696603ef612672a65240679a06f8f4dee25f82d1bf5f69132760b1
        version: 3.2.8
      entries:
      - name: eap-operator.v3.2.8
        version: 3.2.8
      - name: eap-operator.v3.2.7
        version: 3.2.7
      - name: eap-operator.v3.2.6
        version: 3.2.6
      - name: eap-operator.v3.2.5
        version: 3.2.5
      - name: eap-operator.v3.2.4
        version: 3.2.4
      - name: eap-operator.v3.2.3
        version: 3.2.3
      - name: eap-operator.v3.2.2
        version: 3.2.2
      - name: eap-operator.v3.2.1
        version: 3.2.1
      - name: eap-operator.v3.2.0
        version: 3.2.0
      - name: eap-operator.v3.1.9
        version: 3.1.9
      - name: eap-operator.v3.1.8
        version: 3.1.8
      - name: eap-operator.v3.1.7
        version: 3.1.7
      - name: eap-operator.v3.1.6
        version: 3.1.6
      - name: eap-operator.v3.1.5
        version: 3.1.5
      - name: eap-operator.v3.1.4
        version: 3.1.4
      - name: eap-operator.v3.1.3
        version: 3.1.3
      - name: eap-operator.v3.1.2
        version: 3.1.2
      - name: eap-operator.v3.1.1
        version: 3.1.1
      - name: eap-operator.v3.1.0
        version: 3.1.0
      - name: eap-operator.v3.0.2
        version: 3.0.2
      - name: eap-operator.v3.0.1
        version: 3.0.1
      - name: eap-operator.v3.0.0
        version: 3.0.0
      - name: eap-operator.v2.4.3
        version: 2.4.3
      - name: eap-operator.v2.4.2
        version: 2.4.2
      - name: eap-operator.v2.4.1
        version: 2.4.1
      - name: eap-operator.v2.4.0
        version: 2.4.0
      - name: eap-operator.v2.3.10
        version: 2.3.10
      - name: eap-operator.v2.3.9
        version: 2.3.9
      - name: eap-operator.v2.3.8
        version: 2.3.8
      - name: eap-operator.v2.3.7
        version: 2.3.7
      - name: eap-operator.v2.3.6
        version: 2.3.6
      - name: eap-operator.v2.3.5
        version: 2.3.5
      - name: eap-operator.v2.3.4
        version: 2.3.4
      - name: eap-operator.v2.3.3
        version: 2.3.3
      - name: eap-operator.v2.3.2
        version: 2.3.2
      - name: eap-operator.v2.3.1
        version: 2.3.1
      - name: eap-operator.v2.3.0
        version: 2.3.0
      - name: eap-operator.v2.2.2
        version: 2.2.2
      - name: eap-operator.v2.2.1
        version: 2.2.1
      - name: eap-operator.v2.2.0
        version: 2.2.0
      name: stable
    defaultChannel: stable
    packageName: eap
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: gatekeeper-operator-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gatekeeper-operator-product.v3.15.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:8b43248aed06563e06f7a0347ff1c45fa5892e3a9adb2b5c363962a0b152eff0
          createdAt: 13 Mar 2025, 17:07
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: <3.15.4
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: Gatekeeper allows administrators to detect and reject non-compliant
          commits to an infrastructure-as-code system's source-of-truth. This strengthens
          compliance efforts and prevents a bad state from slowing down the organization.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:96b77663961daea3a336b97e34e9412281bfb2727854dc970a69edd029b9af85
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:8b43248aed06563e06f7a0347ff1c45fa5892e3a9adb2b5c363962a0b152eff0
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:29690144667b3753a7e76095e136d6fc42325270e7b9f22f97dfd411439e9f54
        version: 3.15.4
      entries:
      - name: gatekeeper-operator-product.v3.15.4
        version: 3.15.4
      - name: gatekeeper-operator-product.v3.15.3
        version: 3.15.3
      - name: gatekeeper-operator-product.v3.15.2
        version: 3.15.2
      - name: gatekeeper-operator-product.v3.15.1
        version: 3.15.1
      - name: gatekeeper-operator-product.v3.15.1-0.1725401534.p
        version: 3.15.1+0.1725401534.p
      - name: gatekeeper-operator-product.v3.15.1-0.1726639477.p
        version: 3.15.1+0.1726639477.p
      - name: gatekeeper-operator-product.v3.15.1-0.1727189912.p
        version: 3.15.1+0.1727189912.p
      name: "3.15"
    - currentCSV: gatekeeper-operator-product.v3.17.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3c027ec78398df0a8fc09eb79e222a9508b4f18154d1e1b477d4f156181ae51a
          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: "true"
          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.skipRange: <3.17.3
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:5170255ecd45b9bb7a70abec0f6eeb0518bbc2871de759e468dd61a80261c0ad
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:e44078fc6073a79168ed52922b370773b451d69bf335aeb91d26a1462df21a9b
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3c027ec78398df0a8fc09eb79e222a9508b4f18154d1e1b477d4f156181ae51a
        version: 3.17.3
      entries:
      - name: gatekeeper-operator-product.v3.17.3
        version: 3.17.3
      - name: gatekeeper-operator-product.v3.17.2
        version: 3.17.2
      - name: gatekeeper-operator-product.v3.17.1
        version: 3.17.1
      - name: gatekeeper-operator-product.v3.17.0
        version: 3.17.0
      name: "3.17"
    - currentCSV: gatekeeper-operator-product.v3.18.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:0803b7219ceff7aa676488eeba58607a19c9c18a2bb8eae8b3b16cfec411cb6e
          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: "true"
          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.skipRange: <3.18.1
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:9a3f5b6c403fb84c9cb93c9d7cf902c80990196983607c8ca568d4b558938e17
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:49726cb2702441305e8047b24054575170fb595cfe5ebf815cdbfdaa957b02f4
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:0803b7219ceff7aa676488eeba58607a19c9c18a2bb8eae8b3b16cfec411cb6e
        version: 3.18.1
      entries:
      - name: gatekeeper-operator-product.v3.18.1
        version: 3.18.1
      - name: gatekeeper-operator-product.v3.18.0
        version: 3.18.0
      name: "3.18"
    - currentCSV: gatekeeper-operator-product.v3.19.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:583d63090eccf767cd3a1cc153a995c6102e02a49aee1579edc7645e2aca1202
          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: "true"
          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.skipRange: <3.19.1
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:68fe21212c54efd1c7a1e6f68e554722ac7cb8ffc3f5d48d608ebcc0ac8be921
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:60ee347425c6cfb36f0e1e834b33cbb3d77aa2d6c89ac513216d0b9fc55d4b52
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:583d63090eccf767cd3a1cc153a995c6102e02a49aee1579edc7645e2aca1202
        version: 3.19.1
      entries:
      - name: gatekeeper-operator-product.v3.19.1
        version: 3.19.1
      - name: gatekeeper-operator-product.v3.19.0
        version: 3.19.0
      name: "3.19"
    - currentCSV: gatekeeper-operator-product.v3.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
          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: "true"
          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.skipRange: <3.20.0
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Gatekeeper is the schema for the gatekeepers API. Gatekeeper contains configurations for the Gatekeeper operator,
              which deploys Open Policy Agent Gatekeeper, a policy engine that enforces policies through admission controller
              webhooks.
              See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:54da5a712ccab9d9cae230e8bdb97f292d9959b6589a8c58c6f41f13c5b7ee12
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:29417852e3e69233d1e7205a982023c14b98eac7f3f5ad0fc93a4e46d6197520
        version: 3.20.0
      entries:
      - name: gatekeeper-operator-product.v3.20.0
        version: 3.20.0
      name: "3.20"
    - currentCSV: gatekeeper-operator-product.v3.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
          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: "true"
          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.skipRange: <3.20.0
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Gatekeeper is the schema for the gatekeepers API. Gatekeeper contains configurations for the Gatekeeper operator,
              which deploys Open Policy Agent Gatekeeper, a policy engine that enforces policies through admission controller
              webhooks.
              See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:29417852e3e69233d1e7205a982023c14b98eac7f3f5ad0fc93a4e46d6197520
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:54da5a712ccab9d9cae230e8bdb97f292d9959b6589a8c58c6f41f13c5b7ee12
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
        version: 3.20.0
      entries:
      - name: gatekeeper-operator-product.v3.20.0
        version: 3.20.0
      - name: gatekeeper-operator-product.v3.19.1
        version: 3.19.1
      - name: gatekeeper-operator-product.v3.19.0
        version: 3.19.0
      - name: gatekeeper-operator-product.v3.18.0
        version: 3.18.0
      - name: gatekeeper-operator-product.v3.17.2
        version: 3.17.2
      - name: gatekeeper-operator-product.v3.17.1
        version: 3.17.1
      - name: gatekeeper-operator-product.v3.17.0
        version: 3.17.0
      - name: gatekeeper-operator-product.v3.15.1
        version: 3.15.1
      - name: gatekeeper-operator-product.v3.15.1-0.1725401534.p
        version: 3.15.1+0.1725401534.p
      - name: gatekeeper-operator-product.v3.15.1-0.1726639477.p
        version: 3.15.1+0.1726639477.p
      - name: gatekeeper-operator-product.v3.15.1-0.1727189912.p
        version: 3.15.1+0.1727189912.p
      name: stable
    defaultChannel: stable
    packageName: gatekeeper-operator-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Argo CD Community
      provider-url: ""
    name: argocd-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: argocd-operator.v0.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd-sample"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCDExport",
                "metadata": {
                  "name": "argocdexport-sample"
                },
                "spec": {
                  "argocd": "argocd-sample"
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd-sample"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "NamespaceManagement",
                "metadata": {
                  "name": "namespacemanagement-sample"
                },
                "spec": {
                  "managedBy": "argocd-ns"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/argoprojlabs/argocd-operator@sha256:0c697bdd14d2432c481db757507f5ea506b2aa97c944e50d72664dbb4fba047a
          createdAt: "2025-12-16T12:52:16Z"
          description: Argo CD is a declarative, GitOps continuous delivery tool for
            Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/argoproj-labs/argocd-operator
          support: Argo CD
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: An ApplicationSet is a group or set of Application resources.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: ArgoCDExport is the Schema for the argocdexports API
            displayName: Argo CDExport
            kind: ArgoCDExport
            name: argocdexports.argoproj.io
            version: v1alpha1
          - description: ArgoCD is the Schema for the argocds API
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: ArgoCD is the Schema for the argocds API
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: NamespaceManagement is the Schema for the namespacemanagements
              API
            displayName: Namespace Management
            kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfiguration is the Schema for the notificationsconfiguration
              API
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
        description: |
          ## Overview

          The Argo CD Operator manages the full lifecycle for [Argo CD](https://argoproj.github.io/argo-cd/) and it's
          components. The operator's goal is to automate the tasks required when operating an Argo CD cluster.

          Beyond installation, the operator helps to automate the process of upgrading, backing up and restoring as needed and
          remove the human as much as possible. In addition, the operator aims to provide deep insights into the Argo CD
          environment by configuring Prometheus and Grafana to aggregate, visualize and expose the metrics already exported by
          Argo CD.

          The operator aims to provide the following, and is a work in progress.

          * Easy configuration and installation of the Argo CD components with sane defaults to get up and running quickly.
          * Provide seamless upgrades to the Argo CD components.
          * Ability to back up and restore an Argo CD cluster from a point in time or on a recurring schedule.
          * Aggregate and expose the metrics for Argo CD and the operator itself using Prometheus and Grafana.
          * Autoscale the Argo CD components as necessary to handle variability in demand.

          ## Usage

          Deploy a basic Argo CD cluster by creating a new ArgoCD resource in the namespace where the operator is installed.

          ```
          apiVersion: argoproj.io/v1alpha1
          kind: ArgoCD
          metadata:
            name: example-argocd
          spec: {}
          ```

          ## Backup

          Backup the cluster above by creating a new ArgoCDExport resource in the namespace where the operator is installed.

          ```
          apiVersion: argoproj.io/v1alpha1
          kind: ArgoCDExport
          metadata:
            name: example-argocdexport
          spec:
            argocd: example-argocd
          ```

          See the [documentation](https://argocd-operator.readthedocs.io) and examples on
          [GitHub](https://github.com/argoproj-labs/argocd-operator) for more information.
        displayName: Argo CD
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - kubernetes
        links:
        - name: Argo CD Project
          url: https://argoproj.github.io/argo-cd/
        - name: Operator Documentation
          url: https://argocd-operator.readthedocs.io
        - name: Operator Source Code
          url: https://github.com/argoproj-labs/argocd-operator
        maintainers:
        - email: sghadi@redhat.com
          name: Siddhesh Ghadi
        maturity: alpha
        provider:
          name: Argo CD Community
        relatedImages:
        - quay.io/argoprojlabs/argocd-operator@sha256:0c697bdd14d2432c481db757507f5ea506b2aa97c944e50d72664dbb4fba047a
        - quay.io/community-operator-pipeline-prod/argocd-operator@sha256:dd18636316791e08e295b07cbcf8ce41d9c6a280f1008c70f2fecf6b6214c732
        version: 0.16.0
      entries:
      - name: argocd-operator.v0.16.0
        version: 0.16.0
      - name: argocd-operator.v0.15.0
        version: 0.15.0
      - name: argocd-operator.v0.14.1
        version: 0.14.1
      - name: argocd-operator.v0.14.0
        version: 0.14.0
      - name: argocd-operator.v0.13.0
        version: 0.13.0
      - name: argocd-operator.v0.12.0
        version: 0.12.0
      - name: argocd-operator.v0.11.0
        version: 0.11.0
      - name: argocd-operator.v0.10.1
        version: 0.10.1
      - name: argocd-operator.v0.10.0
        version: 0.10.0
      - name: argocd-operator.v0.9.1
        version: 0.9.1
      - name: argocd-operator.v0.9.0
        version: 0.9.0
      - name: argocd-operator.v0.8.0
        version: 0.8.0
      - name: argocd-operator.v0.7.0
        version: 0.7.0
      - name: argocd-operator.v0.5.0
        version: 0.5.0
      - name: argocd-operator.v0.4.0
        version: 0.4.0
      - name: argocd-operator.v0.3.0
        version: 0.3.0
      - name: argocd-operator.v0.2.1
        version: 0.2.1
      - name: argocd-operator.v0.2.0
        version: 0.2.0
      - name: argocd-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: argocd-operator
    provider:
      name: Argo CD Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: redhat-oadp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: oadp-operator.v1.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "DataProtectionApplication",
                "metadata": {
                  "name": "velero-sample"
                },
                "spec": {
                  "backupLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-east-1"
                        },
                        "credential": {
                          "key": "cloud",
                          "name": "cloud-credentials"
                        },
                        "default": true,
                        "objectStorage": {
                          "bucket": "my-bucket-name",
                          "prefix": "velero"
                        },
                        "provider": "aws"
                      }
                    }
                  ],
                  "configuration": {
                    "nodeAgent": {
                      "enable": true,
                      "uploaderType": "kopia"
                    },
                    "velero": {
                      "defaultPlugins": [
                        "openshift",
                        "aws",
                        "kubevirt",
                        "hypershift"
                      ],
                      "disableFsBackup": false
                    }
                  },
                  "snapshotLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-west-2"
                        },
                        "provider": "aws"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "DataProtectionTest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "oadp-operator"
                  },
                  "name": "dataprotectiontest-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminBackup",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-operator",
                    "app.kubernetes.io/instance": "nonadminbackup-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminbackup",
                    "app.kubernetes.io/part-of": "oadp-operator"
                  },
                  "name": "nonadminbackup-sample"
                },
                "spec": {
                  "backupSpec": {}
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminBackupStorageLocation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-nac",
                    "app.kubernetes.io/instance": "nonadminbackupstoragelocation-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminbackupstoragelocation",
                    "app.kubernetes.io/part-of": "oadp-nac"
                  },
                  "name": "nonadminbackupstoragelocation-sample"
                },
                "spec": {
                  "backupStorageLocationSpec": {
                    "config": {
                      "checksumAlgorithm": "",
                      "region": "eu-central-1"
                    },
                    "credential": {
                      "key": "default",
                      "name": "cloud-credentials"
                    },
                    "objectStorage": {
                      "bucket": "my-bucket",
                      "prefix": "nac-test"
                    },
                    "provider": "aws"
                  }
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminBackupStorageLocationRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-nac",
                    "app.kubernetes.io/instance": "nonadminbackupstoragelocationrequest-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminbackupstoragelocationrequest",
                    "app.kubernetes.io/part-of": "oadp-nac"
                  },
                  "name": "nonadminbackupstoragelocationrequest-sample"
                },
                "spec": {
                  "approvalDecision": "pending"
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminDownloadRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "oadp-nac"
                  },
                  "name": "nonadmindownloadrequest-sample"
                },
                "spec": {
                  "target": {
                    "kind": "BackupLog",
                    "name": "non-admin-backup-name"
                  }
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminRestore",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-nac",
                    "app.kubernetes.io/instance": "nonadminrestore-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminrestore",
                    "app.kubernetes.io/part-of": "oadp-nac"
                  },
                  "name": "nonadminrestore-sample"
                },
                "spec": {
                  "restoreSpec": {
                    "backupName": "nonadminbackup-sample"
                  }
                }
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "BackupStorageLocation",
                "metadata": {
                  "name": "backupstoragelocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DeleteBackupRequest",
                "metadata": {
                  "name": "deletebackuprequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DownloadRequest",
                "metadata": {
                  "name": "downloadrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeBackup",
                "metadata": {
                  "name": "podvolumebackup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeRestore",
                "metadata": {
                  "name": "podvolumerestore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Schedule",
                "metadata": {
                  "name": "schedule",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "ServerStatusRequest",
                "metadata": {
                  "name": "serverstatusrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "VolumeSnapshotLocation",
                "metadata": {
                  "name": "volumesnapshotlocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: |
            Cloud Provider,Developer Tools,Modernization & Migration,OpenShift Optional,Storage
          certified: "false"
          containerImage: registry.redhat.io/oadp/oadp-rhel9-operator@sha256:08676a3f8eaa6851d3dd16fea051220eda9518f8669b327bc99d24facf5b226c
          createdAt: "2025-09-19T14:11:12Z"
          description: OADP (OpenShift API for Data Protection) operator sets up and
            installs Data Protection Applications on the OpenShift platform.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.4.0 <1.5.3'
          operatorframework.io/suggested-namespace: openshift-adp
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/oadp/oadp-mustgather-rhel9@sha256:ee04dce0b5be78b40debfa96c20d6c851f4486e026db539fc27eec369bc329d6
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/oadp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A backup repository is an indicator of a connection from
              the restic/kopia server to the backupstoragelocation.
            displayName: BackupRepository
            kind: BackupRepository
            name: backuprepositories.velero.io
            version: v1
          - description: Backup is a Velero resource that represents the capture of
              Kubernetes cluster state at a point in time (API objects and associated
              volume state).
            displayName: Backup
            kind: Backup
            name: backups.velero.io
            version: v1
          - description: BackupStorageLocation represents an object storage location
              (such as Amazon S3 Bucket) where Velero stores backup objects.
            displayName: BackupStorageLocation
            kind: BackupStorageLocation
            name: backupstoragelocations.velero.io
            version: v1
          - description: The CloudStorage API automates the creation of a bucket for
              object storage.
            displayName: Cloud Storage
            kind: CloudStorage
            name: cloudstorages.oadp.openshift.io
            version: v1alpha1
          - description: DataDownload represents a data download of a volume snapshot.
              There is one DataDownload created per volume to be restored.
            displayName: DataDownload
            kind: DataDownload
            name: datadownloads.velero.io
            version: v2alpha1
          - description: DataProtectionApplication represents configuration to install
              a data protection application to safely backup and restore, perform
              disaster recovery and migrate Kubernetes cluster resources and persistent
              volumes.
            displayName: Data Protection Application
            kind: DataProtectionApplication
            name: dataprotectionapplications.oadp.openshift.io
            version: v1alpha1
          - description: DataProtectionTest is the Schema for the dataprotectiontests
              API
            displayName: Data Protection Test
            kind: DataProtectionTest
            name: dataprotectiontests.oadp.openshift.io
            version: v1alpha1
          - description: DataUpload acts as the protocol between data mover plugins
              and data mover controller for the datamover backup operation
            displayName: DataUpload
            kind: DataUpload
            name: datauploads.velero.io
            version: v2alpha1
          - description: DeleteBackupRequest is a request to delete one or more backups.
            displayName: DeleteBackupRequest
            kind: DeleteBackupRequest
            name: deletebackuprequests.velero.io
            version: v1
          - description: DownloadRequest is a request to download an artifact from
              object storage such as a backup log file.
            displayName: DownloadRequest
            kind: DownloadRequest
            name: downloadrequests.velero.io
            version: v1
          - description: NonAdminBackup is the Schema for the nonadminbackups API
            displayName: Non Admin Backup
            kind: NonAdminBackup
            name: nonadminbackups.oadp.openshift.io
            version: v1alpha1
          - description: NonAdminBackupStorageLocationRequest is the Schema for the
              nonadminbackupstoragelocationrequests API
            displayName: Non Admin BackupStorageLocationRequest
            kind: NonAdminBackupStorageLocationRequest
            name: nonadminbackupstoragelocationrequests.oadp.openshift.io
            version: v1alpha1
          - description: NonAdminBackupStorageLocation is the Schema for the nonadminbackupstoragelocations
              API
            displayName: Non Admin BackupStorageLocation
            kind: NonAdminBackupStorageLocation
            name: nonadminbackupstoragelocations.oadp.openshift.io
            version: v1alpha1
          - kind: NonAdminDownloadRequest
            name: nonadmindownloadrequests.oadp.openshift.io
            version: v1alpha1
          - description: NonAdminRestore is the Schema for the nonadminrestores API
            displayName: Non Admin Restore
            kind: NonAdminRestore
            name: nonadminrestores.oadp.openshift.io
            version: v1alpha1
          - description: A velero pod volume backup is a restic backup of persistent
              volumes attached to a running pod.
            displayName: PodVolumeBackup
            kind: PodVolumeBackup
            name: podvolumebackups.velero.io
            version: v1
          - description: A velero pod volume restore is a restic restore of persistent
              volumes attached to a running pod.
            displayName: PodVolumeRestore
            kind: PodVolumeRestore
            name: podvolumerestores.velero.io
            version: v1
          - description: Restore is a Velero resource that represents the application
              of resources from a Velero backup to a target Kubernetes cluster.
            displayName: Restore
            kind: Restore
            name: restores.velero.io
            version: v1
          - description: Schedule is a Velero resource that represents a pre-scheduled
              or periodic Backup that should be run.
            displayName: Schedule
            kind: Schedule
            name: schedules.velero.io
            version: v1
          - description: ServerStatusRequest is a request to access current status
              information about the Velero server.
            displayName: ServerStatusRequest
            kind: ServerStatusRequest
            name: serverstatusrequests.velero.io
            version: v1
          - description: VolumeSnapshotLocation is a location where Velero stores
              volume snapshots.
            displayName: VolumeSnapshotLocation
            kind: VolumeSnapshotLocation
            name: volumesnapshotlocations.velero.io
            version: v1
        description: |
          **OpenShift API for Data Protection (OADP)** operator sets up and installs
          Velero on the OpenShift platform, allowing users to backup and restore
          applications.

          Backup and restore Kubernetes resources and internal images, at the
          granularity of a namespace, using a version of Velero appropriate for
          the installed version of OADP.

          OADP backs up Kubernetes objects and internal images by saving them as
          an archive file on object storage. OADP backs up persistent volumes
          (PVs) by creating snapshots with the native cloud snapshot API or with
          the Container Storage Interface (CSI). For cloud providers that do not
          support snapshots, OADP backs up resources and PV data with Restic or Kopia.

          * [Installing OADP for application backup and restore][install-doc]

          * [Installing OADP on a ROSA cluster and using STS, please follow the Getting Started Steps 1-3 in order to obtain the role ARN needed for using the standardized STS configuration flow via OLM][rosa-sts-doc]

          * [Frequently Asked Questions][faq-doc]

          [install-doc]: https://docs.openshift.com/container-platform/latest/backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.html
          [rosa-sts-doc]: https://mobb.ninja/docs/misc/oadp/rosa-sts/
          [faq-doc]: https://access.redhat.com/articles/5456281
        displayName: OADP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - disaster backup
        - disaster recovery
        - disaster restore
        - disaster
        - backup
        - restore
        - backup automation
        - recovery
        - data protection
        - data management
        - data
        - protection
        - management
        - application resilience
        - resilience
        - velero
        - openshift
        - oadp
        - cloud-native
        - replication
        - kopia
        - restic
        - network file system
        - nfs
        - simple cloud storage
        - s3
        - minio
        - cloud storage
        - data foundation
        - ceph
        - csi
        - container storage interface
        links:
        - name: OADP Operator
          url: https://github.com/openshift/oadp-operator
        maintainers:
        - email: oadp-maintainers@redhat.com
          name: OADP Operator maintainers
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/oadp/oadp-velero-plugin-for-gcp-rhel9@sha256:f1ebdaac4359d96d524ac1bf36f5b0b3bcf7d1bbb7299bf8d6daa55dc2bd2c17
        - registry.redhat.io/oadp/oadp-operator-bundle@sha256:d998d58f1170bc7ee9d9c81f4bbba50ac1f65e8fe60fe81cd74166beff6f93c4
        - registry.redhat.io/oadp/oadp-non-admin-rhel9@sha256:71fe65fdaf632c8f51db7c5ca1692f0fec79304e68114a91541b38f4207e70db
        - registry.redhat.io/oadp/oadp-velero-plugin-for-legacy-aws-rhel9@sha256:50262b769de92249219dddb3a1ffc37cf187cd8e76a1f912459e8f1bb86f4c84
        - registry.redhat.io/oadp/oadp-velero-plugin-for-microsoft-azure-rhel9@sha256:c2dabbda67d47c43c323d7790da7e091fb9715d2e166ebfc14e2e026745d4b6f
        - registry.redhat.io/oadp/oadp-velero-plugin-rhel9@sha256:9b888c75a1ddf274b1f0aa053ddbbc9acc3270417712456ffa29ef81a883b38a
        - registry.redhat.io/oadp/oadp-velero-rhel9@sha256:dd5897b1579599cfa8d8a03a1c8d3cf68e3927c4ba5dee4e33c2a2d4c9e6ed89
        - registry.redhat.io/oadp/oadp-rhel9-operator@sha256:08676a3f8eaa6851d3dd16fea051220eda9518f8669b327bc99d24facf5b226c
        - registry.redhat.io/oadp/oadp-velero-plugin-for-aws-rhel9@sha256:2a099649d3d7101a0b6dff9f6372bc76903ba6ecb6578dbeef8a8b3853f48026
        - registry.redhat.io/oadp/oadp-kubevirt-velero-plugin-rhel9@sha256:77d6057b1783872ec65d7d6a88d8a1212c38aacc982c7efd46ed2eb77b5e9e70
        - registry.redhat.io/oadp/oadp-hypershift-velero-plugin-rhel9@sha256:f8798364f94bb1bf4db264b0439c5a280b40cafa408c47b4160d9cc9c5d87e53
        - registry.redhat.io/oadp/oadp-mustgather-rhel9@sha256:ee04dce0b5be78b40debfa96c20d6c851f4486e026db539fc27eec369bc329d6
        version: 1.5.3
      entries:
      - name: oadp-operator.v1.5.3
        version: 1.5.3
      - name: oadp-operator.v1.5.2
        version: 1.5.2
      - name: oadp-operator.v1.5.1
        version: 1.5.1
      - name: oadp-operator.v1.5.0
        version: 1.5.0
      name: stable
    defaultChannel: stable
    packageName: redhat-oadp-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: container-security-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: container-security-operator.v3.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "secscan.quay.redhat.com/v1alpha1",
                "kind": "ImageManifestVuln",
                "metadata": {
                  "selfLink": "/apis/secscan.quay.redhat.com/v1alpha1/namespaces/openshift-cluster-version/imagemanifestvulns/sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18",
                  "resourceVersion": "14565395",
                  "name": "sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18",
                  "uid": "3f16a188-e69a-406c-aa06-df340195409c",
                  "creationTimestamp": "2021-03-17T12:07:16Z",
                  "generation": 2,
                  "managedFields": [
                    {
                      "apiVersion": "secscan.quay.redhat.com/v1alpha1",
                      "fieldsType": "FieldsV1",
                      "fieldsV1": {
                        "f:metadata": {
                          "f:labels": {
                            ".": {},
                            "f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6": {}
                          }
                        },
                        "f:spec": {
                          ".": {},
                          "f:features": {},
                          "f:image": {},
                          "f:manifest": {}
                        },
                        "f:status": {
                          ".": {},
                          "f:affectedPods": {
                            ".": {},
                            "f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6": {}
                          },
                          "f:fixableCount": {},
                          "f:highCount": {},
                          "f:highestSeverity": {},
                          "f:lastUpdate": {},
                          "f:lowCount": {},
                          "f:mediumCount": {}
                        }
                      },
                      "manager": "security-labeller",
                      "operation": "Update",
                      "time": "2021-03-17T13:07:20Z"
                    }
                  ],
                  "namespace": "openshift-cluster-version",
                  "labels": {
                    "openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6": "true"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:447e05859134a0455ca55f8aae16c8a27ce06af4c18c191b41f6339df553f1bf
          createdAt: 2021-11-02 11:11 UTC
          description: Identify image vulnerabilities in Kubernetes pods
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Quay Container Security Operator (CSO) brings Quay and Clair
          metadata to Kubernetes / OpenShift. Starting with vulnerability information
          the scope will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Quay Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Quay Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:246712ce23cdd590ff83d84e9800b4ed761886ed5bab9f9cda4125a5d930e7e5
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:447e05859134a0455ca55f8aae16c8a27ce06af4c18c191b41f6339df553f1bf
        version: 3.4.7
      entries:
      - name: container-security-operator.v3.4.7
        version: 3.4.7
      name: quay-v3.4
    - currentCSV: container-security-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"secscan.quay.redhat.com/v1alpha1\",\n
            \   \"kind\": \"ImageManifestVuln\",\n    \"metadata\": {\n      \"selfLink\":
            \"/apis/secscan.quay.redhat.com/v1alpha1/namespaces/openshift-cluster-version/imagemanifestvulns/sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18\",\n
            \     \"resourceVersion\": \"14565395\",\n      \"name\": \"sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18\",\n
            \     \"uid\": \"3f16a188-e69a-406c-aa06-df340195409c\",\n      \"creationTimestamp\":
            \"2021-03-17T12:07:16Z\",\n      \"generation\": 2,\n      \"managedFields\":
            [\n        {\n          \"apiVersion\": \"secscan.quay.redhat.com/v1alpha1\",\n
            \         \"fieldsType\": \"FieldsV1\",\n          \"fieldsV1\": {\n            \"f:metadata\":
            {\n              \"f:labels\": {\n                \".\": {},\n                \"f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6\":
            {}\n              }\n            },\n            \"f:spec\": {\n              \".\":
            {},\n              \"f:features\": {},\n              \"f:image\": {},\n
            \             \"f:manifest\": {}\n            },\n            \"f:status\":
            {\n              \".\": {},\n              \"f:affectedPods\": {\n                \".\":
            {},\n                \"f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6\":
            {}\n              },\n              \"f:fixableCount\": {},\n              \"f:highCount\":
            {},\n              \"f:highestSeverity\": {},\n              \"f:lastUpdate\":
            {},\n              \"f:lowCount\": {},\n              \"f:mediumCount\":
            {}\n            }\n          },\n          \"manager\": \"security-labeller\",\n
            \         \"operation\": \"Update\",\n          \"time\": \"2021-03-17T13:07:20Z\"\n
            \       }\n      ],\n      \"namespace\": \"openshift-cluster-version\",\n
            \     \"labels\": {\n        \"openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6\":
            \"true\"\n      }\n    },\n    \"spec\": {\n      \"features\": [\n        {\n
            \         \"name\": \"musl\",\n          \"namespaceName\": \"alpine:v3.14\",\n
            \         \"version\": \"1.2.2-r3\",\n          \"versionformat\": \"dpkg\",\n
            \         \"vulnerabilities\": [\n            {\n              \"fixedby\":
            \"1.2.2_pre2-r0\",\n              \"link\": \"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-28928\",\n
            \             \"metadata\": \"{\\\"NVD\\\": {\\\"CVSSv3\\\": {\\\"Vectors\\\":
            \\\"CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\\\", \\\"ImpactScore\\\":
            3.6, \\\"Score\\\": 5.5, \\\"ExploitabilityScore\\\": 1.8}, \\\"CVSSv2\\\":
            {\\\"Score\\\": 2.1, \\\"PublishedDateTime\\\": \\\"2020-11-24T18:15Z\\\",
            \\\"Vectors\\\": \\\"AV:L/AC:L/Au:N/C:N/I:N/A:P\\\"}}}\",\n              \"name\":
            \"CVE-2020-28928\",\n              \"namespaceName\": \"alpine:v3.14\",\n
            \             \"severity\": \"Low\"\n            }\n          ]\n        }\n
            \     ],\n      \"image\": \"quay.io/harishg/pruned-redhat-operators-index\",\n
            \     \"manifest\": \"sha256:19631c86642609254777ff59fc9e128aa5d0a94a7dbb504ef1fcfb2bbc6e486e\"\n
            \   }\n  }\n]    "
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:6b3581e62550d6a615d36eee6eaf4c89b9c35ba53cab8433bd93c68393a9d115
          createdAt: 2021-09-10 23:09 UTC
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.4.x <3.5.7'
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Quay Container Security Operator (CSO) brings Quay and Clair
          metadata to Kubernetes / OpenShift. Starting with vulnerability information
          the scope will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Quay Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Quay Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:68e766235bdcd8f3335e2ab6e09942d98b183b3e498abb65acab6481664d46ed
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:6b3581e62550d6a615d36eee6eaf4c89b9c35ba53cab8433bd93c68393a9d115
        version: 3.5.7
      entries:
      - name: container-security-operator.v3.5.7
        version: 3.5.7
      name: quay-v3.5
    - currentCSV: container-security-operator.v3.10.17
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:dfda85e3a3fc7900999028ea3df53635774ed11a1a90103edb3a86e0d028cb5d
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.7.x <3.10.17'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.10.17
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:b82090e9203982de62d995c18eed37838b8ebbb092195a7f58d02526fd04523e
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:dfda85e3a3fc7900999028ea3df53635774ed11a1a90103edb3a86e0d028cb5d
        version: 3.10.17
      entries:
      - name: container-security-operator.v3.10.17
        version: 3.10.17
      - name: container-security-operator.v3.10.16
        version: 3.10.16
      - name: container-security-operator.v3.10.15
        version: 3.10.15
      - name: container-security-operator.v3.10.14
        version: 3.10.14
      - name: container-security-operator.v3.10.13
        version: 3.10.13
      - name: container-security-operator.v3.10.12
        version: 3.10.12
      - name: container-security-operator.v3.10.11
        version: 3.10.11
      - name: container-security-operator.v3.10.10
        version: 3.10.10
      - name: container-security-operator.v3.10.9
        version: 3.10.9
      - name: container-security-operator.v3.10.8
        version: 3.10.8
      - name: container-security-operator.v3.10.7
        version: 3.10.7
      - name: container-security-operator.v3.10.6
        version: 3.10.6
      - name: container-security-operator.v3.10.5
        version: 3.10.5
      - name: container-security-operator.v3.10.4
        version: 3.10.4
      - name: container-security-operator.v3.10.3
        version: 3.10.3
      - name: container-security-operator.v3.10.2
        version: 3.10.2
      - name: container-security-operator.v3.10.1
        version: 3.10.1
      - name: container-security-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: container-security-operator.v3.11.13
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:3914389fd53c371627921298c5dc3564999d92bc720f27a240f74c034ebbf5ec
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.8.x <3.11.13'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.11.13
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:56db2fd54dbe982dde6a4558b664b19a676a8ac99bfbc8082d097cd6d71a03ea
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:3914389fd53c371627921298c5dc3564999d92bc720f27a240f74c034ebbf5ec
        version: 3.11.13
      entries:
      - name: container-security-operator.v3.11.13
        version: 3.11.13
      - name: container-security-operator.v3.11.12
        version: 3.11.12
      - name: container-security-operator.v3.11.11
        version: 3.11.11
      - name: container-security-operator.v3.11.10
        version: 3.11.10
      - name: container-security-operator.v3.11.9
        version: 3.11.9
      - name: container-security-operator.v3.11.8
        version: 3.11.8
      - name: container-security-operator.v3.11.7
        version: 3.11.7
      - name: container-security-operator.v3.11.6
        version: 3.11.6
      - name: container-security-operator.v3.11.5
        version: 3.11.5
      - name: container-security-operator.v3.11.4
        version: 3.11.4
      - name: container-security-operator.v3.11.3
        version: 3.11.3
      - name: container-security-operator.v3.11.2
        version: 3.11.2
      - name: container-security-operator.v3.11.1
        version: 3.11.1
      - name: container-security-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: container-security-operator.v3.12.13
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:e1e71444c0a0ac4672b56f2b3b84784958f86a72f9fcc53081c1dda3c3a22e88
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.9.x <3.12.13'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.12.13
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:53c387293b92691eb66ea73b1d29781cf275f01b4254c38e21620c0502987272
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:e1e71444c0a0ac4672b56f2b3b84784958f86a72f9fcc53081c1dda3c3a22e88
        version: 3.12.13
      entries:
      - name: container-security-operator.v3.12.13
        version: 3.12.13
      - name: container-security-operator.v3.12.12
        version: 3.12.12
      - name: container-security-operator.v3.12.11
        version: 3.12.11
      - name: container-security-operator.v3.12.10
        version: 3.12.10
      - name: container-security-operator.v3.12.9
        version: 3.12.9
      - name: container-security-operator.v3.12.8
        version: 3.12.8
      - name: container-security-operator.v3.12.7
        version: 3.12.7
      - name: container-security-operator.v3.12.6
        version: 3.12.6
      - name: container-security-operator.v3.12.5
        version: 3.12.5
      - name: container-security-operator.v3.12.4
        version: 3.12.4
      - name: container-security-operator.v3.12.3
        version: 3.12.3
      - name: container-security-operator.v3.12.2
        version: 3.12.2
      - name: container-security-operator.v3.12.1
        version: 3.12.1
      - name: container-security-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: container-security-operator.v3.13.10
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:953ded5fec3ac732a9c96f86ad5928457e58e86546aaa51488c524a4688011f3
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.10.x <3.13.10'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.13.10
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:953ded5fec3ac732a9c96f86ad5928457e58e86546aaa51488c524a4688011f3
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:c0a8c5f5454426844c43f8732ed512ab30b5d4bd3e799fa3f133670d0ea431d5
        version: 3.13.10
      entries:
      - name: container-security-operator.v3.13.10
        version: 3.13.10
      - name: container-security-operator.v3.13.9
        version: 3.13.9
      - name: container-security-operator.v3.13.8
        version: 3.13.8
      - name: container-security-operator.v3.13.7
        version: 3.13.7
      - name: container-security-operator.v3.13.6
        version: 3.13.6
      - name: container-security-operator.v3.13.5
        version: 3.13.5
      - name: container-security-operator.v3.13.4
        version: 3.13.4
      - name: container-security-operator.v3.13.3
        version: 3.13.3
      - name: container-security-operator.v3.13.2
        version: 3.13.2
      - name: container-security-operator.v3.13.1
        version: 3.13.1
      - name: container-security-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: container-security-operator.v3.14.5
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:c42487ccf098df3ec6dbeb5d409346bdd30e92781cf3ffea5fdb6dd0b196d0cf
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.11.x <3.14.5'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.14.5
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:c42487ccf098df3ec6dbeb5d409346bdd30e92781cf3ffea5fdb6dd0b196d0cf
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:46f8c0ea6e383b742ab9cdaed1c8f624c2cf405bb1ce39c0ea6977940d52de07
        version: 3.14.5
      entries:
      - name: container-security-operator.v3.14.5
        version: 3.14.5
      - name: container-security-operator.v3.14.4
        version: 3.14.4
      - name: container-security-operator.v3.14.3
        version: 3.14.3
      - name: container-security-operator.v3.14.2
        version: 3.14.2
      - name: container-security-operator.v3.14.1
        version: 3.14.1
      - name: container-security-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: container-security-operator.v3.15.2
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:81e929ec095f791a83310ee7fcda239d5c348ba69a3cf5adcf1b3a77c349ce77
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.12.x <3.15.2'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.15.2
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:e4ea95a86e77aa64da0b1800f00c2e0e598776cde7cfc7bb9941a60bac207ed9
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:81e929ec095f791a83310ee7fcda239d5c348ba69a3cf5adcf1b3a77c349ce77
        version: 3.15.2
      entries:
      - name: container-security-operator.v3.15.2
        version: 3.15.2
      - name: container-security-operator.v3.15.1
        version: 3.15.1
      - name: container-security-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: container-security-operator.v3.16.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel9@sha256:7eb56ea92c1db547702ef9e540b3dd8dcf5bcbfc866540c09652d9eaaf07e52f
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.13.x <3.16.0'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.16.0
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:e052fc307cfc1246983df50cd95970754d6cf955d0f9b56f8c384cd8f1c08be7
        - registry.redhat.io/quay/quay-container-security-operator-rhel9@sha256:7eb56ea92c1db547702ef9e540b3dd8dcf5bcbfc866540c09652d9eaaf07e52f
        version: 3.16.0
      entries:
      - name: container-security-operator.v3.16.0
        version: 3.16.0
      name: stable-3.16
    - currentCSV: container-security-operator.v3.6.10
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:641b80df8d7102d49a5dfd5b99245669f60393880a6f1bc8ba8450b88a640d96
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.3.x <3.6.10'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.6.10
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:aca3d91b7b9f8c1e8a1e0d045c42ba5f27444e0c1c0bc4a87c697b428c2fff78
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:641b80df8d7102d49a5dfd5b99245669f60393880a6f1bc8ba8450b88a640d96
        version: 3.6.10
      entries:
      - name: container-security-operator.v3.6.10
        version: 3.6.10
      - name: container-security-operator.v3.6.9
        version: 3.6.9
      - name: container-security-operator.v3.6.8
        version: 3.6.8
      - name: container-security-operator.v3.6.7
        version: 3.6.7
      - name: container-security-operator.v3.6.6
        version: 3.6.6
      - name: container-security-operator.v3.6.5
        version: 3.6.5
      - name: container-security-operator.v3.6.4
        version: 3.6.4
      - name: container-security-operator.v3.6.2
        version: 3.6.2
      - name: container-security-operator.v3.6.1
        version: 3.6.1
      - name: container-security-operator.v3.6.0
        version: 3.6.0
      name: stable-3.6
    - currentCSV: container-security-operator.v3.7.14
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:10736a06beb503b4eb73260a87a2cde9bd83353374ee0ac9e8dd0a6260cf2665
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.4.x <3.7.14'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.7.14
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:5af7a32da67d39e7a011672de333792e63604cbfee997c19a495fc759d2fd739
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:10736a06beb503b4eb73260a87a2cde9bd83353374ee0ac9e8dd0a6260cf2665
        version: 3.7.14
      entries:
      - name: container-security-operator.v3.7.14
        version: 3.7.14
      - name: container-security-operator.v3.7.13
        version: 3.7.13
      - name: container-security-operator.v3.7.12
        version: 3.7.12
      - name: container-security-operator.v3.7.11
        version: 3.7.11
      - name: container-security-operator.v3.7.10
        version: 3.7.10
      - name: container-security-operator.v3.7.9
        version: 3.7.9
      - name: container-security-operator.v3.7.8
        version: 3.7.8
      - name: container-security-operator.v3.7.7
        version: 3.7.7
      - name: container-security-operator.v3.7.6
        version: 3.7.6
      - name: container-security-operator.v3.7.5
        version: 3.7.5
      - name: container-security-operator.v3.7.4
        version: 3.7.4
      - name: container-security-operator.v3.7.3
        version: 3.7.3
      - name: container-security-operator.v3.7.2
        version: 3.7.2
      - name: container-security-operator.v3.7.1
        version: 3.7.1
      - name: container-security-operator.v3.7.0
        version: 3.7.0
      name: stable-3.7
    - currentCSV: container-security-operator.v3.8.15
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:108bd033543beb7cce077130c96f992c202f7a258229c239795f8f19e5fae5e5
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.5.x <3.8.15'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.8.15
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:74f0cf91e2feb60fe794f71b9f56fa8afc60e53379a0aef104701dd6692272e5
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:108bd033543beb7cce077130c96f992c202f7a258229c239795f8f19e5fae5e5
        version: 3.8.15
      entries:
      - name: container-security-operator.v3.8.15
        version: 3.8.15
      - name: container-security-operator.v3.8.14
        version: 3.8.14
      - name: container-security-operator.v3.8.13
        version: 3.8.13
      - name: container-security-operator.v3.8.12
        version: 3.8.12
      - name: container-security-operator.v3.8.11
        version: 3.8.11
      - name: container-security-operator.v3.8.10
        version: 3.8.10
      - name: container-security-operator.v3.8.9
        version: 3.8.9
      - name: container-security-operator.v3.8.8
        version: 3.8.8
      - name: container-security-operator.v3.8.7
        version: 3.8.7
      - name: container-security-operator.v3.8.6
        version: 3.8.6
      - name: container-security-operator.v3.8.5
        version: 3.8.5
      - name: container-security-operator.v3.8.4
        version: 3.8.4
      - name: container-security-operator.v3.8.3
        version: 3.8.3
      - name: container-security-operator.v3.8.2
        version: 3.8.2
      - name: container-security-operator.v3.8.1
        version: 3.8.1
      - name: container-security-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: container-security-operator.v3.9.17
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:42777c988fba76e80157675e5219246994552b7a685319ab67f4cb59c29f3d1f
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.9.17
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:00dc04b86ae7fd7dd37e9234ed2b4a1d0f0403993c153e197ac8b96233e95048
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:42777c988fba76e80157675e5219246994552b7a685319ab67f4cb59c29f3d1f
        version: 3.9.17
      entries:
      - name: container-security-operator.v3.9.17
        version: 3.9.17
      - name: container-security-operator.v3.9.16
        version: 3.9.16
      - name: container-security-operator.v3.9.15
        version: 3.9.15
      - name: container-security-operator.v3.9.14
        version: 3.9.14
      - name: container-security-operator.v3.9.13
        version: 3.9.13
      - name: container-security-operator.v3.9.12
        version: 3.9.12
      - name: container-security-operator.v3.9.11
        version: 3.9.11
      - name: container-security-operator.v3.9.10
        version: 3.9.10
      - name: container-security-operator.v3.9.9
        version: 3.9.9
      - name: container-security-operator.v3.9.8
        version: 3.9.8
      - name: container-security-operator.v3.9.7
        version: 3.9.7
      - name: container-security-operator.v3.9.6
        version: 3.9.6
      - name: container-security-operator.v3.9.5
        version: 3.9.5
      - name: container-security-operator.v3.9.4
        version: 3.9.4
      - name: container-security-operator.v3.9.3
        version: 3.9.3
      - name: container-security-operator.v3.9.2
        version: 3.9.2
      - name: container-security-operator.v3.9.1
        version: 3.9.1
      - name: container-security-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.16
    packageName: container-security-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CodeFlare
      provider-url: https://github.com/project-codeflare
    name: codeflare-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: codeflare-operator.v1.16.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: AI/Machine Learning, Big Data
          containerImage: quay.io/project-codeflare/codeflare-operator:v1.16.0
          createdAt: "2025-06-16T10:53:51Z"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/project-codeflare/codeflare-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AppWrapper
            name: appwrappers.workload.codeflare.dev
            version: v1beta2
        description: CodeFlare allows you to scale complex pipelines anywhere
        displayName: CodeFlare Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Pipelines
        - Scaling
        - App
        - Jobs
        links:
        - name: Codeflare Operator
          url: https://codeflare.dev/
        maintainers:
        - email: aasthana@redhat.com
          name: Anish Asthana
        - email: kpostlet@redhat.com
          name: Kevin Postlethwait
        - email: meyceoz@redhat.com
          name: Mustafa Eyceoz
        maturity: alpha
        provider:
          name: CodeFlare
          url: https://github.com/project-codeflare
        relatedImages:
        - quay.io/project-codeflare/codeflare-operator:v1.16.0
        - quay.io/community-operator-pipeline-prod/codeflare-operator@sha256:3dbd2b65d7841cc97c37db59ae8aff9991c4d0f0324c4391afd41c4de20c232a
        version: 1.16.0
      entries:
      - name: codeflare-operator.v1.16.0
        version: 1.16.0
      - name: codeflare-operator.v1.15.0
        version: 1.15.0
      - name: codeflare-operator.v1.14.0
        version: 1.14.0
      - name: codeflare-operator.v1.13.0
        version: 1.13.0
      - name: codeflare-operator.v1.12.0
        version: 1.12.0
      - name: codeflare-operator.v1.11.0
        version: 1.11.0
      - name: codeflare-operator.v1.10.0
        version: 1.10.0
      - name: codeflare-operator.v1.9.0
        version: 1.9.0
      - name: codeflare-operator.v1.8.0
        version: 1.8.0
      - name: codeflare-operator.v1.7.0
        version: 1.7.0
      - name: codeflare-operator.v1.6.0
        version: 1.6.0
      - name: codeflare-operator.v1.5.0
        version: 1.5.0
      - name: codeflare-operator.v1.4.4
        version: 1.4.4
      - name: codeflare-operator.v1.4.3
        version: 1.4.3
      - name: codeflare-operator.v1.4.2
        version: 1.4.2
      - name: codeflare-operator.v1.4.1
        version: 1.4.1
      - name: codeflare-operator.v1.4.0
        version: 1.4.0
      - name: codeflare-operator.v1.3.1
        version: 1.3.1
      - name: codeflare-operator.v1.3.0
        version: 1.3.0
      - name: codeflare-operator.v1.2.0
        version: 1.2.0
      - name: codeflare-operator.v1.1.0
        version: 1.1.0
      - name: codeflare-operator.v1.0.1
        version: 1.0.1
      - name: codeflare-operator.v1.0.0
        version: 1.0.0
      - name: codeflare-operator.v1.0.0-rc.4
        version: 1.0.0-rc.4
      - name: codeflare-operator.v1.0.0-rc.3
        version: 1.0.0-rc.3
      - name: codeflare-operator.v1.0.0-rc.2
        version: 1.0.0-rc.2
      - name: codeflare-operator.v1.0.0-rc.1
        version: 1.0.0-rc.1
      - name: codeflare-operator.v0.2.3
        version: 0.2.3
      - name: codeflare-operator.v0.2.2
        version: 0.2.2
      - name: codeflare-operator.v0.2.1
        version: 0.2.1
      - name: codeflare-operator.v0.2.0
        version: 0.2.0
      - name: codeflare-operator.v0.1.0
        version: 0.1.0
      - name: codeflare-operator.v0.0.6
        version: 0.0.6
      - name: codeflare-operator.v0.0.5
        version: 0.0.5
      - name: codeflare-operator.v0.0.4
        version: 0.0.4
      - name: codeflare-operator.v0.0.3
        version: 0.0.3
      - name: codeflare-operator.v0.0.2
        version: 0.0.2
      - name: codeflare-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: codeflare-operator
    provider:
      name: CodeFlare
      url: https://github.com/project-codeflare
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Infinidat
      provider-url: https://infinidat.com
    name: infinibox-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infinibox-operator-certified.v2.24.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csidriver.infinidat.com/v1alpha1",
                "kind": "InfiniboxCsiDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infinibox-operator-certified",
                    "app.kubernetes.io/instance": "infiniboxcsidriver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infiniboxcsidriver",
                    "app.kubernetes.io/part-of": "infinibox-operator-certified"
                  },
                  "name": "infiniboxcsidriver-sample"
                },
                "spec": {
                  "Ibox_Creds": [
                    {
                      "SecretName": "infinibox-creds",
                      "hostname": "ibox0000",
                      "inbound_secret": "0.0000000000000",
                      "inbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonout",
                      "outbound_secret": "0.0000000000001",
                      "outbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonin",
                      "password": "my-pool-admin-passwd",
                      "username": "my-pool-admin"
                    }
                  ],
                  "Infinibox_Protocol_Secrets": [
                    {
                      "SecretName": "infinibox-protocol-secret",
                      "iscsi": {
                        "network_space": "default_iscsi_space",
                        "useCHAP": "none"
                      },
                      "nfs": {
                        "network_space": "default_nas_space",
                        "nfs_export_permissions": ""
                      },
                      "nvme": {
                        "network_space": "default_nvme_space"
                      },
                      "preferred_auto_order": "fc,nvme,iscsi",
                      "storage_protocol": "fc"
                    }
                  ],
                  "autoUpdate": false,
                  "cleanupNFSPerms": false,
                  "controllerserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "controllerservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "createEvents": true,
                  "csiDriverName": "infinibox-csi-driver",
                  "csiDriverVersion": "v2.24.0",
                  "e2etesting": false,
                  "iboxHostNamingConvention": "",
                  "images": {
                    "attachersidecar": "registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d",
                    "attachersidecar_pull_policy": "IfNotPresent",
                    "csidriver": "registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec",
                    "csidriver_pull_policy": "Always",
                    "livenesssidecar": "registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f",
                    "livenesssidecar_pull_policy": "IfNotPresent",
                    "provisionersidecar": "registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327",
                    "provisionersidecar_pull_policy": "IfNotPresent",
                    "registrarsidecar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a",
                    "registrarsidecar_pull_policy": "IfNotPresent",
                    "resizersidecar": "registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d",
                    "resizersidecar_pull_policy": "IfNotPresent",
                    "snapshottersidecar": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d",
                    "snapshottersidecar_pull_policy": "IfNotPresent"
                  },
                  "instanceCount": 1,
                  "logLevel": "debug",
                  "nodeSelector": {
                    "kubernetes.io/os": "linux"
                  },
                  "nodeserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "nodeservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "protocolSecret": "",
                  "removeDomainName": false,
                  "replicaCount": 1,
                  "skipCredentialsCreation": false,
                  "volumeNamePrefix": "ibox"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
          createdAt: "2025-11-25T20:05:02Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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.skipRange: <2.24.0
          operatorframework.io/suggested-namespace: infinidat-csi
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/Infinidat/infinibox-csi-driver
          support: Infinidat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Iboxreplica
            name: iboxreplicas.csidriver.infinidat.com
            version: v1
          - kind: InfiniboxCsiDriver
            name: infiniboxcsidrivers.csidriver.infinidat.com
            version: v1alpha1
        description: "Infinidat InfiniBox Container Storage Interface (CSI) Driver
          is a\n    CNCF-compliant Kubernetes integration for InfiniBox storage systems,
          offering\n    advanced enterprise functionality for petabyte-scale Kubernetes
          deployments including\n    Red Hat OpenShift.\n \n## Features and Benefits\n
          \ \n* **Multi-protocol flexibility** - manage\n    Kubernetes Persistent
          Volumes attached via block and file protocols,\n    including Fibre Channel,
          iSCSI, and NFS, with all Kubernetes PV access modes\n    \n* **Multi-petabyte
          scalability** - support hundreds of thousands of PVs per InfiniBox\n    system
          and control multiple InfiniBox arrays within a single Kubernetes cluster\n
          \   \\ \n* **Advanced enterprise features** - manage native InfiniBox snapshots
          and\n    clones, including restoring from snapshots, and import PVs created
          outside of\n    InfiniBox CSI Driver\n  \n## Required Parameters\n  \n*
          `hostname` - IP address\n    or hostname of the InfiniBox management interface\n*
          `username` / `password` -\n    InfiniBox credentials\n* `SecretName` - secret
          name, to be used in the StorageClass\n    to define a specific InfiniBox
          for persistent volumes\n\n## Optional Parameters\n*\n    `inbound_user`
          / `inbound_secret` / `outbound_user` / `outbound_secret` - credentials \n
          \   for iSCSI CHAP authentication\n\n    \n## Installation Instructions\n
          \n1. Create *infinidat-csi* namespace to install operator into.\n    \n2.
          Delete the following *clusterrolebindings*, if they exist, before installing
          operator\n     * infinidat-csi-operator-infinidat-csi-attacher\n     * infinidat-csi-operator-infinidat-csi-controller
          \                    \n     * infinidat-csi-operator-infinidat-csi-driver
          \                    \n     * infinidat-csi-operator-infinidat-csi-node
          \                              \n     * infinidat-csi-operator-infinidat-csi-provisioner
          \                       \n     * infinidat-csi-operator-infinidat-csi-resizer
          \          \n     * infinidat-csi-operator-infinidat-csi-snapshotter \n
          \   \n3. Install Infinidat Infinibox CSI Driver - Operator (this) into the
          *infinidat-csi* namespace.\n    \n4. Apply the following Security Context
          Constraints to the created service accounts in the *infinidat-csi* \n    namespace\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    \n5. Recreate or edit any existing storage classes, pointing to the
          new namespace\n\n     \n6. If you choose a different namespace other than
          *infinidat-csi* you will need to edit the clusterrolebindings listed above
          to specify your custom namespace\n\n     \n7. Install an instance of Infinidat
          Driver into the *infinidat-csi* namespace"
        displayName: InfiniBox CSI Driver - Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - csi
        - nas
        - san
        - storage
        - infinidat
        - infinibox
        links:
        - name: Infinidat
          url: https://infinidat.com
        maintainers:
        - email: info@infinidat.com
          name: Infinidat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Infinidat
          url: https://infinidat.com
        relatedImages:
        - registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d
        - registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified@sha256:a6a63241d55cdb63e3072fd7e663f08eca9a46e64d73ff7159eafd48f92c2db0
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d
        - registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327
        - registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified-bundle@sha256:0eb6e7e06e18d83e4ddbd4fee4db440c5eb3552821954c1485b280f47ce4a743
        version: 2.24.0
      entries:
      - name: infinibox-operator-certified.v2.24.0
        version: 2.24.0
      name: alpha
    - currentCSV: infinibox-operator-certified.v2.24.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csidriver.infinidat.com/v1alpha1",
                "kind": "InfiniboxCsiDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infinibox-operator-certified",
                    "app.kubernetes.io/instance": "infiniboxcsidriver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infiniboxcsidriver",
                    "app.kubernetes.io/part-of": "infinibox-operator-certified"
                  },
                  "name": "infiniboxcsidriver-sample"
                },
                "spec": {
                  "Ibox_Creds": [
                    {
                      "SecretName": "infinibox-creds",
                      "hostname": "ibox0000",
                      "inbound_secret": "0.0000000000000",
                      "inbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonout",
                      "outbound_secret": "0.0000000000001",
                      "outbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonin",
                      "password": "my-pool-admin-passwd",
                      "username": "my-pool-admin"
                    }
                  ],
                  "Infinibox_Protocol_Secrets": [
                    {
                      "SecretName": "infinibox-protocol-secret",
                      "iscsi": {
                        "network_space": "default_iscsi_space",
                        "useCHAP": "none"
                      },
                      "nfs": {
                        "network_space": "default_nas_space",
                        "nfs_export_permissions": ""
                      },
                      "nvme": {
                        "network_space": "default_nvme_space"
                      },
                      "preferred_auto_order": "fc,nvme,iscsi",
                      "storage_protocol": "fc"
                    }
                  ],
                  "autoUpdate": false,
                  "cleanupNFSPerms": false,
                  "controllerserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "controllerservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "createEvents": true,
                  "csiDriverName": "infinibox-csi-driver",
                  "csiDriverVersion": "v2.24.0",
                  "e2etesting": false,
                  "iboxHostNamingConvention": "",
                  "images": {
                    "attachersidecar": "registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d",
                    "attachersidecar_pull_policy": "IfNotPresent",
                    "csidriver": "registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec",
                    "csidriver_pull_policy": "Always",
                    "livenesssidecar": "registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f",
                    "livenesssidecar_pull_policy": "IfNotPresent",
                    "provisionersidecar": "registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327",
                    "provisionersidecar_pull_policy": "IfNotPresent",
                    "registrarsidecar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a",
                    "registrarsidecar_pull_policy": "IfNotPresent",
                    "resizersidecar": "registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d",
                    "resizersidecar_pull_policy": "IfNotPresent",
                    "snapshottersidecar": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d",
                    "snapshottersidecar_pull_policy": "IfNotPresent"
                  },
                  "instanceCount": 1,
                  "logLevel": "debug",
                  "nodeSelector": {
                    "kubernetes.io/os": "linux"
                  },
                  "nodeserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "nodeservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "protocolSecret": "",
                  "removeDomainName": false,
                  "replicaCount": 1,
                  "skipCredentialsCreation": false,
                  "volumeNamePrefix": "ibox"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
          createdAt: "2025-11-25T20:05:02Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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.skipRange: <2.24.0
          operatorframework.io/suggested-namespace: infinidat-csi
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/Infinidat/infinibox-csi-driver
          support: Infinidat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Iboxreplica
            name: iboxreplicas.csidriver.infinidat.com
            version: v1
          - kind: InfiniboxCsiDriver
            name: infiniboxcsidrivers.csidriver.infinidat.com
            version: v1alpha1
        description: "Infinidat InfiniBox Container Storage Interface (CSI) Driver
          is a\n    CNCF-compliant Kubernetes integration for InfiniBox storage systems,
          offering\n    advanced enterprise functionality for petabyte-scale Kubernetes
          deployments including\n    Red Hat OpenShift.\n \n## Features and Benefits\n
          \ \n* **Multi-protocol flexibility** - manage\n    Kubernetes Persistent
          Volumes attached via block and file protocols,\n    including Fibre Channel,
          iSCSI, and NFS, with all Kubernetes PV access modes\n    \n* **Multi-petabyte
          scalability** - support hundreds of thousands of PVs per InfiniBox\n    system
          and control multiple InfiniBox arrays within a single Kubernetes cluster\n
          \   \\ \n* **Advanced enterprise features** - manage native InfiniBox snapshots
          and\n    clones, including restoring from snapshots, and import PVs created
          outside of\n    InfiniBox CSI Driver\n  \n## Required Parameters\n  \n*
          `hostname` - IP address\n    or hostname of the InfiniBox management interface\n*
          `username` / `password` -\n    InfiniBox credentials\n* `SecretName` - secret
          name, to be used in the StorageClass\n    to define a specific InfiniBox
          for persistent volumes\n\n## Optional Parameters\n*\n    `inbound_user`
          / `inbound_secret` / `outbound_user` / `outbound_secret` - credentials \n
          \   for iSCSI CHAP authentication\n\n    \n## Installation Instructions\n
          \n1. Create *infinidat-csi* namespace to install operator into.\n    \n2.
          Delete the following *clusterrolebindings*, if they exist, before installing
          operator\n     * infinidat-csi-operator-infinidat-csi-attacher\n     * infinidat-csi-operator-infinidat-csi-controller
          \                    \n     * infinidat-csi-operator-infinidat-csi-driver
          \                    \n     * infinidat-csi-operator-infinidat-csi-node
          \                              \n     * infinidat-csi-operator-infinidat-csi-provisioner
          \                       \n     * infinidat-csi-operator-infinidat-csi-resizer
          \          \n     * infinidat-csi-operator-infinidat-csi-snapshotter \n
          \   \n3. Install Infinidat Infinibox CSI Driver - Operator (this) into the
          *infinidat-csi* namespace.\n    \n4. Apply the following Security Context
          Constraints to the created service accounts in the *infinidat-csi* \n    namespace\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    \n5. Recreate or edit any existing storage classes, pointing to the
          new namespace\n\n     \n6. If you choose a different namespace other than
          *infinidat-csi* you will need to edit the clusterrolebindings listed above
          to specify your custom namespace\n\n     \n7. Install an instance of Infinidat
          Driver into the *infinidat-csi* namespace"
        displayName: InfiniBox CSI Driver - Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - csi
        - nas
        - san
        - storage
        - infinidat
        - infinibox
        links:
        - name: Infinidat
          url: https://infinidat.com
        maintainers:
        - email: info@infinidat.com
          name: Infinidat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Infinidat
          url: https://infinidat.com
        relatedImages:
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified-bundle@sha256:0eb6e7e06e18d83e4ddbd4fee4db440c5eb3552821954c1485b280f47ce4a743
        - registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d
        - registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified@sha256:a6a63241d55cdb63e3072fd7e663f08eca9a46e64d73ff7159eafd48f92c2db0
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a
        - registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f
        - registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
        version: 2.24.0
      entries:
      - name: infinibox-operator-certified.v2.24.0
        version: 2.24.0
      name: stable
    defaultChannel: stable
    packageName: infinibox-operator-certified
    provider:
      name: Infinidat
      url: https://infinidat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/instance: ibm-data-reporter-operator
      app.kubernetes.io/managed-by: ibm-data-reporter-operator
      app.kubernetes.io/name: ibm-data-reporter-operator
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Marketplace
      provider-url: ""
    name: ibm-data-reporter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-data-reporter-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "DataReporterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ibm-data-reporter-operator",
                    "app.kubernetes.io/instance": "datareporterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datareporterconfig",
                    "app.kubernetes.io/part-of": "ibm-data-reporter-operator"
                  },
                  "name": "datareporterconfig"
                },
                "spec": {
                  "userConfig": [
                    {
                      "metadata": {
                        "ameta1": "ametadata1",
                        "bmeta1": "bmetadata1",
                        "cmeta1": "cmetadata1",
                        "dmeta1": "dmetadata1"
                      },
                      "userName": "system:serviceaccount:redhat-marketplace:ibm-data-reporter-operator-api"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
          createdAt: ""
          description: The IBM Data Reporter Operator accepts events and transforms
            them into reports submitted to the Data Service of the IBM Metrics Operator.
          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: "true"
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReporterConfig is the Schema for the datareporterconfigs
              API
            displayName: Data Reporter Config
            kind: DataReporterConfig
            name: datareporterconfigs.marketplace.redhat.com
            version: v1alpha1
          required:
          - description: MarketplaceConfig is configuration manager for our Red Hat
              Marketplace controllers By installing this product you accept the license
              terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
        description: "# IBM Data Reporter Operator\n\n# Introduction\n\nThe IBM Data
          Reporter Operator accepts events and transforms them into reports submitted
          to the IBM Metrics Operator Data Service.\n\n# Details\n\nThe IBM Data Reporter
          Operator deploys a service that provides an endpoint to which callers can
          send raw json event data. The event data is transformed into a report and
          is sent to the IBM Metrics Operator's Data Service. The IBM Metrics Operator
          Data Service periodically uploads the reports to IBM Software Central. It
          can also filter, transform and forward events to alternate endpoints.\n\n##
          Prerequisites\n\n- OpenShift Container Platform, major version 4 with any
          available supported minor version\n- Install IBM Metrics Operator\n  - IBM
          Data Reporter Operator prerequisties the IBM Metrics Operator's Data Service\n
          \ - Register the Cluster by creating a `redhat-marketplace-pull-secret`,
          as per the instructions\n  - Once `rhm-data-service` has started IBM Data
          Reporter Operator will accept requests\n\n## SecurityContextConstraints
          Requirements\n\n- The operator runs under Red Hat restricted SCC\n\n## Kyverno
          Policies\n\nThe IBM Data Reporter Operator makes a best effort to comply
          with the Kyverno policies defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Data Reporter Operator is not replicated\n  - Service uptime is not
          considered critial, and can be rescheduled\n\n## Resources Required\n\n-
          The operator requires at least 85 Mi memory.\n\n## Limitations\n\n- Only
          runs on amd64, s390x and ppc64le architectures\n\n## Installing\n\n- A user
          with the cluster administrator role.\n- Install this operator in the same
          namespace as the IBM Metrics Operator\n  - default namespace: `ibm-software-central`\n\n##
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n# Configuration\n\nOptional:\n- Configure the
          Custom Resource Definition `DataReporterConfig` named `datareporterconfig`
          as per the following sample\n  - Configuration that can not be reconciled
          successfully will be reported on the DataReporterConfig Status\n  - jsonPath
          expressions are handled by: https://github.com/ohler55/ojg\n    - jsonPath
          comparison: https://cburgmer.github.io/json-path-comparison/\n  - Transformer
          type currently supported is `kazaam`\n    - https://github.com/willie68/kazaam\n\nSample
          DataReporterConfig:\n```YAML\napiVersion: marketplace.redhat.com/v1alpha1\nkind:
          DataReporterConfig\nmetadata:\n  name: datareporterconfig\nspec:\n  # true:
          report generated for 1 event and provide return code from data-service,
          confirming delivery\n  # false: events will be accumulated before building
          report, and immediately return 200, delivery unfconfirmed\n  confirmDelivery:
          false\n  dataFilters:   # dataFilters matches the first dataFilter selector,
          applies transforms and forwards to data-service and destinations\n  - altDestinations:
          \  # List of desintations to transform and foward events to\n    - authorization:
          \  # optional endpoint if an authorization token must first be requested
          \n        authDestHeader: Authorization   # http header key to be appended
          to destination request\n        authDestHeaderPrefix: 'Bearer '   # optional
          prefix for constructing destination request http header value\n        bodyData:
          \  # body data to send to authorization request, often an apiKey\n          secretKeyRef:\n
          \           name: auth-body-data-secret\n            key: bodydata\n        header:
          \  # secret map to use for authorization request headers\n          secret:\n
          \           name: auth-header-map-secret\n        tokenExpr: $.token   #
          optionally extract the returned body data using a jsonPath expression\n
          \       url: https://127.0.0.1:8443/api/2.0/accounts/my_account_id/apikeys/token
          \  # the url to make an authorization request to\n      header:   # secret
          map to use for destination request headers\n        secret:\n          name:
          dest-header-map-secret\n      transformer:   # The transformer to apply
          to event data for this destination\n        configMapKeyRef:\n          key:
          kazaam.json\n          name: kazaam-configmap\n        type: kazaam\n      url:
          https://127.0.0.1:8443/metering/api/1.0/usage   # the url to send the event
          to\n      urlSuffixExpr: $.properties.productId   # optional jsonPath expression
          on the event to extract and set a suffix to the url path\n    manifestType:
          dataReporter   # override manifestType of report sent to data-service\n
          \   selector:   # Matches against event data and a user. Empty selector
          matches all.\n      matchExpressions:   # jsonPath expression must return
          a result for all expressions to match (AND)\n      - $[?($.event == \"Account
          Contractual Usage\")]\n      - $.properties.productId\n      - $[?($.properties.source
          != null)]\n      - $[?($.properties.unit == \"AppPoints\")]\n      - $[?($.properties.quantity
          >= 0)]\n      - $[?($.timestamp != null)]\n      matchUsers:   # must match
          one of these users (OR). Omitting users matches any user\n      - system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n
          \   transformer:   # The transformer to apply to the event for data-service\n
          \     configMapKeyRef:\n        key: kazaam.json\n        name: kazaam-configmap\n
          \     type: kazaam\n  tlsConfig:   # TLS configuration for requests outbound
          to destinations\n    caCerts:\n    - name: tls-ca-certificates\n      key:
          ca.crt\n    certificates:\n    - clientCert:\n        secretKeyRef:\n          name:
          tls-ca-certificates\n          key: tls.crt\n      clientKey:\n        secretKeyRef:\n
          \         name: tls-ca-certificates\n          key: tls.key\n    cipherSuites:
          \n    - TLS_AES_128_GCM_SHA256\n    - TLS_AES_256_GCM_SHA384\n    - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256\n    - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384\n    insecureSkipVerify: false\n
          \   minVersion: VersionTLS12\n  userConfig:   # Optional metadata to apply
          to report sent to data-service for a specific user\n  - metadata:\n      ameta1:
          ametadata1\n      bmeta1: bmetadata1\n      cmeta1: cmetadata1\n      dmeta1:
          dmetadata1\n    userName: system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n```\n\nSample
          Header Secrets:\n```YAML\napiVersion: v1\nstringData:\n  accept: | \n    */*\nkind:
          Secret\nmetadata:\n  name: dest-header-map-secret\ntype: Opaque\n---\napiVersion:
          v1\nstringData:\n  accept: application/json\n  Content-Type: application/json\nkind:
          Secret\nmetadata:\n  name: auth-header-map-secret\ntype: Opaque\n```\n\nSample
          Authentication Body Secret:\n```YAML\napiVersion: v1\nstringData:\n  bodydata:
          |\n    {\"apikey\": \"myapikey\"}\nkind: Secret\nmetadata:\n  name: auth-body-data-secret\ntype:
          Opaque\n```\n\nSample TLS Secret:\n```YAML\napiVersion: v1\ndata:\n  ca.crt:
          LS0t...\n  tls.key: LS0t...\n  tls.crt: LS0t...\nkind: Secret\nmetadata:\n
          \ name: tls-ca-certificates\n```\n\nSample Kazaam ConfigMap:\n```YAML\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: kazaam-configmap\ndata:\n  kazaam.json:
          |\n    [\n        {\n            \"operation\": \"timestamp\",\n            \"spec\":
          {\n                \"timestamp\": {\n                \"inputFormat\": \"2006-01-02T15:04:05.999999+00:00\",\n
          \               \"outputFormat\": \"$unixmilli\"\n                }\n            }\n
          \       },\n        {\n            \"operation\": \"shift\",\n            \"spec\":
          {\n                \"instances[0].instanceId\": \"properties.source\",\n
          \               \"instances[0].startTime\": \"timestamp\",\n                \"instances[0].endTime\":
          \"timestamp\",\n                \"instances[0].metricUsage[0].metricId\":
          \"properties.unit\",\n                \"instances[0].metricUsage[0].quantity\":
          \"properties.quantity\"\n            }\n        },\n        {\n            \"operation\":
          \"default\",\n            \"spec\": {\n                \"meteringModel\":
          \"point-in-time\",\n                \"meteringPlan\": \"contract\"\n            }\n
          \       }\n    ]\n```\n\n### API Service User Configuration\n\n- The ClusterRole
          for api access is `clusterrole/ibm-data-reporter-operator-api`\n- The default
          ServiceAccount provided as an api user is `system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api`\n
          \ - The default ClusterRoleBinding for this user is `clusterrolebinding/ibm-data-reporter-operator-api`\n\nOptional:\n\n-
          To create an additional ServiceAccount and ClusterRoleBinding for api access\n\n```SHELL\nNAMESPACE=$(oc
          config view --minify -o jsonpath='{..namespace}') && \\\noc create serviceaccount
          my-api-service-account && \\\noc create clusterrolebinding ibm-data-reporter-operator-api
          --clusterrole=ibm-data-reporter-operator-api --serviceaccount=${NAMESPACE}:my-api-service-account\n```\n\n-
          Update datareporterconfig to attach metadata to reports associated with
          this user\n\n## API Service Usage\n\n- Get Token & Host\n\n```SHELL\noc
          project ibm-software-central\nexport DRTOKEN=$(oc create token ibm-data-reporter-operator-api
          --namespace ibm-software-central --duration 1h)\nexport DRHOST=$(oc get
          route ibm-data-reporter --template='{{ .spec.host }}')\n```\n\n- Get the
          Status\n\n```SHELL\ncurl -k -H \"Authorization: Bearer ${DRTOKEN}\" https://${DRHOST}/v1/status
          \n```\n\n- Post an Event\n\n```SHELL\ncurl -k -H \"Authorization: Bearer
          ${DRTOKEN}\" -X POST -d '{\"event\":\"myevent\"}' https://${DRHOST}/v1/event\n```\n\n##
          Storage\n\n- The operator temporarily stores events in pod memory, and writes
          to the IBM Metrics Operator data-service, which requires a PersistentVolume\n\n##
          License\n\nCopyright IBM Corporation 2023. All Rights Reserved.\n\nLicensed
          under the Apache License, Version 2.0 (the \"License\");\nyou may not use
          this file except in compliance with the License.\nYou may obtain a copy
          of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless
          required by applicable law or agreed to in writing, software\ndistributed
          under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES
          OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for
          the specific language governing permissions and\nlimitations under the License.\n"
        displayName: IBM Data Reporter Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
        - registry.connect.redhat.com/rh-marketplace/ibm-data-reporter-operator-bundle@sha256:20ee4c5cb1e904dfcbaf678a3a258840ea3d19350f812257944db361ab92009d
        version: 2.23.1
      entries:
      - name: ibm-data-reporter-operator.v2.23.1
        version: 2.23.1
      name: beta
    - currentCSV: ibm-data-reporter-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "DataReporterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ibm-data-reporter-operator",
                    "app.kubernetes.io/instance": "datareporterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datareporterconfig",
                    "app.kubernetes.io/part-of": "ibm-data-reporter-operator"
                  },
                  "name": "datareporterconfig"
                },
                "spec": {
                  "userConfig": [
                    {
                      "metadata": {
                        "ameta1": "ametadata1",
                        "bmeta1": "bmetadata1",
                        "cmeta1": "cmetadata1",
                        "dmeta1": "dmetadata1"
                      },
                      "userName": "system:serviceaccount:redhat-marketplace:ibm-data-reporter-operator-api"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
          createdAt: ""
          description: The IBM Data Reporter Operator accepts events and transforms
            them into reports submitted to the Data Service of the IBM Metrics Operator.
          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: "true"
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReporterConfig is the Schema for the datareporterconfigs
              API
            displayName: Data Reporter Config
            kind: DataReporterConfig
            name: datareporterconfigs.marketplace.redhat.com
            version: v1alpha1
          required:
          - description: MarketplaceConfig is configuration manager for our Red Hat
              Marketplace controllers By installing this product you accept the license
              terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
        description: "# IBM Data Reporter Operator\n\n# Introduction\n\nThe IBM Data
          Reporter Operator accepts events and transforms them into reports submitted
          to the IBM Metrics Operator Data Service.\n\n# Details\n\nThe IBM Data Reporter
          Operator deploys a service that provides an endpoint to which callers can
          send raw json event data. The event data is transformed into a report and
          is sent to the IBM Metrics Operator's Data Service. The IBM Metrics Operator
          Data Service periodically uploads the reports to IBM Software Central. It
          can also filter, transform and forward events to alternate endpoints.\n\n##
          Prerequisites\n\n- OpenShift Container Platform, major version 4 with any
          available supported minor version\n- Install IBM Metrics Operator\n  - IBM
          Data Reporter Operator prerequisties the IBM Metrics Operator's Data Service\n
          \ - Register the Cluster by creating a `redhat-marketplace-pull-secret`,
          as per the instructions\n  - Once `rhm-data-service` has started IBM Data
          Reporter Operator will accept requests\n\n## SecurityContextConstraints
          Requirements\n\n- The operator runs under Red Hat restricted SCC\n\n## Kyverno
          Policies\n\nThe IBM Data Reporter Operator makes a best effort to comply
          with the Kyverno policies defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Data Reporter Operator is not replicated\n  - Service uptime is not
          considered critial, and can be rescheduled\n\n## Resources Required\n\n-
          The operator requires at least 85 Mi memory.\n\n## Limitations\n\n- Only
          runs on amd64, s390x and ppc64le architectures\n\n## Installing\n\n- A user
          with the cluster administrator role.\n- Install this operator in the same
          namespace as the IBM Metrics Operator\n  - default namespace: `ibm-software-central`\n\n##
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n# Configuration\n\nOptional:\n- Configure the
          Custom Resource Definition `DataReporterConfig` named `datareporterconfig`
          as per the following sample\n  - Configuration that can not be reconciled
          successfully will be reported on the DataReporterConfig Status\n  - jsonPath
          expressions are handled by: https://github.com/ohler55/ojg\n    - jsonPath
          comparison: https://cburgmer.github.io/json-path-comparison/\n  - Transformer
          type currently supported is `kazaam`\n    - https://github.com/willie68/kazaam\n\nSample
          DataReporterConfig:\n```YAML\napiVersion: marketplace.redhat.com/v1alpha1\nkind:
          DataReporterConfig\nmetadata:\n  name: datareporterconfig\nspec:\n  # true:
          report generated for 1 event and provide return code from data-service,
          confirming delivery\n  # false: events will be accumulated before building
          report, and immediately return 200, delivery unfconfirmed\n  confirmDelivery:
          false\n  dataFilters:   # dataFilters matches the first dataFilter selector,
          applies transforms and forwards to data-service and destinations\n  - altDestinations:
          \  # List of desintations to transform and foward events to\n    - authorization:
          \  # optional endpoint if an authorization token must first be requested
          \n        authDestHeader: Authorization   # http header key to be appended
          to destination request\n        authDestHeaderPrefix: 'Bearer '   # optional
          prefix for constructing destination request http header value\n        bodyData:
          \  # body data to send to authorization request, often an apiKey\n          secretKeyRef:\n
          \           name: auth-body-data-secret\n            key: bodydata\n        header:
          \  # secret map to use for authorization request headers\n          secret:\n
          \           name: auth-header-map-secret\n        tokenExpr: $.token   #
          optionally extract the returned body data using a jsonPath expression\n
          \       url: https://127.0.0.1:8443/api/2.0/accounts/my_account_id/apikeys/token
          \  # the url to make an authorization request to\n      header:   # secret
          map to use for destination request headers\n        secret:\n          name:
          dest-header-map-secret\n      transformer:   # The transformer to apply
          to event data for this destination\n        configMapKeyRef:\n          key:
          kazaam.json\n          name: kazaam-configmap\n        type: kazaam\n      url:
          https://127.0.0.1:8443/metering/api/1.0/usage   # the url to send the event
          to\n      urlSuffixExpr: $.properties.productId   # optional jsonPath expression
          on the event to extract and set a suffix to the url path\n    manifestType:
          dataReporter   # override manifestType of report sent to data-service\n
          \   selector:   # Matches against event data and a user. Empty selector
          matches all.\n      matchExpressions:   # jsonPath expression must return
          a result for all expressions to match (AND)\n      - $[?($.event == \"Account
          Contractual Usage\")]\n      - $.properties.productId\n      - $[?($.properties.source
          != null)]\n      - $[?($.properties.unit == \"AppPoints\")]\n      - $[?($.properties.quantity
          >= 0)]\n      - $[?($.timestamp != null)]\n      matchUsers:   # must match
          one of these users (OR). Omitting users matches any user\n      - system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n
          \   transformer:   # The transformer to apply to the event for data-service\n
          \     configMapKeyRef:\n        key: kazaam.json\n        name: kazaam-configmap\n
          \     type: kazaam\n  tlsConfig:   # TLS configuration for requests outbound
          to destinations\n    caCerts:\n    - name: tls-ca-certificates\n      key:
          ca.crt\n    certificates:\n    - clientCert:\n        secretKeyRef:\n          name:
          tls-ca-certificates\n          key: tls.crt\n      clientKey:\n        secretKeyRef:\n
          \         name: tls-ca-certificates\n          key: tls.key\n    cipherSuites:
          \n    - TLS_AES_128_GCM_SHA256\n    - TLS_AES_256_GCM_SHA384\n    - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256\n    - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384\n    insecureSkipVerify: false\n
          \   minVersion: VersionTLS12\n  userConfig:   # Optional metadata to apply
          to report sent to data-service for a specific user\n  - metadata:\n      ameta1:
          ametadata1\n      bmeta1: bmetadata1\n      cmeta1: cmetadata1\n      dmeta1:
          dmetadata1\n    userName: system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n```\n\nSample
          Header Secrets:\n```YAML\napiVersion: v1\nstringData:\n  accept: | \n    */*\nkind:
          Secret\nmetadata:\n  name: dest-header-map-secret\ntype: Opaque\n---\napiVersion:
          v1\nstringData:\n  accept: application/json\n  Content-Type: application/json\nkind:
          Secret\nmetadata:\n  name: auth-header-map-secret\ntype: Opaque\n```\n\nSample
          Authentication Body Secret:\n```YAML\napiVersion: v1\nstringData:\n  bodydata:
          |\n    {\"apikey\": \"myapikey\"}\nkind: Secret\nmetadata:\n  name: auth-body-data-secret\ntype:
          Opaque\n```\n\nSample TLS Secret:\n```YAML\napiVersion: v1\ndata:\n  ca.crt:
          LS0t...\n  tls.key: LS0t...\n  tls.crt: LS0t...\nkind: Secret\nmetadata:\n
          \ name: tls-ca-certificates\n```\n\nSample Kazaam ConfigMap:\n```YAML\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: kazaam-configmap\ndata:\n  kazaam.json:
          |\n    [\n        {\n            \"operation\": \"timestamp\",\n            \"spec\":
          {\n                \"timestamp\": {\n                \"inputFormat\": \"2006-01-02T15:04:05.999999+00:00\",\n
          \               \"outputFormat\": \"$unixmilli\"\n                }\n            }\n
          \       },\n        {\n            \"operation\": \"shift\",\n            \"spec\":
          {\n                \"instances[0].instanceId\": \"properties.source\",\n
          \               \"instances[0].startTime\": \"timestamp\",\n                \"instances[0].endTime\":
          \"timestamp\",\n                \"instances[0].metricUsage[0].metricId\":
          \"properties.unit\",\n                \"instances[0].metricUsage[0].quantity\":
          \"properties.quantity\"\n            }\n        },\n        {\n            \"operation\":
          \"default\",\n            \"spec\": {\n                \"meteringModel\":
          \"point-in-time\",\n                \"meteringPlan\": \"contract\"\n            }\n
          \       }\n    ]\n```\n\n### API Service User Configuration\n\n- The ClusterRole
          for api access is `clusterrole/ibm-data-reporter-operator-api`\n- The default
          ServiceAccount provided as an api user is `system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api`\n
          \ - The default ClusterRoleBinding for this user is `clusterrolebinding/ibm-data-reporter-operator-api`\n\nOptional:\n\n-
          To create an additional ServiceAccount and ClusterRoleBinding for api access\n\n```SHELL\nNAMESPACE=$(oc
          config view --minify -o jsonpath='{..namespace}') && \\\noc create serviceaccount
          my-api-service-account && \\\noc create clusterrolebinding ibm-data-reporter-operator-api
          --clusterrole=ibm-data-reporter-operator-api --serviceaccount=${NAMESPACE}:my-api-service-account\n```\n\n-
          Update datareporterconfig to attach metadata to reports associated with
          this user\n\n## API Service Usage\n\n- Get Token & Host\n\n```SHELL\noc
          project ibm-software-central\nexport DRTOKEN=$(oc create token ibm-data-reporter-operator-api
          --namespace ibm-software-central --duration 1h)\nexport DRHOST=$(oc get
          route ibm-data-reporter --template='{{ .spec.host }}')\n```\n\n- Get the
          Status\n\n```SHELL\ncurl -k -H \"Authorization: Bearer ${DRTOKEN}\" https://${DRHOST}/v1/status
          \n```\n\n- Post an Event\n\n```SHELL\ncurl -k -H \"Authorization: Bearer
          ${DRTOKEN}\" -X POST -d '{\"event\":\"myevent\"}' https://${DRHOST}/v1/event\n```\n\n##
          Storage\n\n- The operator temporarily stores events in pod memory, and writes
          to the IBM Metrics Operator data-service, which requires a PersistentVolume\n\n##
          License\n\nCopyright IBM Corporation 2023. All Rights Reserved.\n\nLicensed
          under the Apache License, Version 2.0 (the \"License\");\nyou may not use
          this file except in compliance with the License.\nYou may obtain a copy
          of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless
          required by applicable law or agreed to in writing, software\ndistributed
          under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES
          OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for
          the specific language governing permissions and\nlimitations under the License.\n"
        displayName: IBM Data Reporter Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
        - registry.connect.redhat.com/rh-marketplace/ibm-data-reporter-operator-bundle@sha256:20ee4c5cb1e904dfcbaf678a3a258840ea3d19350f812257944db361ab92009d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 2.23.1
      entries:
      - name: ibm-data-reporter-operator.v2.23.1
        version: 2.23.1
      name: stable
    defaultChannel: stable
    packageName: ibm-data-reporter-operator
    provider:
      name: Red Hat Marketplace
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: hyperfoil-bundle
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hyperfoil-operator.v0.26.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hyperfoil.io/v1alpha2",
                "kind": "Hyperfoil",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "hyperfoil-operator",
                    "app.kubernetes.io/instance": "hyperfoil-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hyperfoil",
                    "app.kubernetes.io/part-of": "hyperfoil-operator"
                  },
                  "name": "hyperfoil-sample"
                },
                "spec": {
                  "version": "latest"
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: quay.io/hyperfoil/hyperfoil-operator:0.26.0
          createdAt: "2024-06-11T17:39:20Z"
          description: Microservice-oriented distributed benchmark framework.
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/Hyperfoil/hyperfoil-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Hyperfoil is the Schema for the hyperfoils API
            displayName: Hyperfoil
            kind: Hyperfoil
            name: hyperfoils.hyperfoil.io
            version: v1alpha2
        description: |
          Hyperfoil is a modern benchmark framework oriented promising
          accurate results with more flexibility and distributed architecture.

          See more on [hyperfoil.io](http://hyperfoil.io).

          Hyperfoil is licensed under Apache License 2.0
        displayName: Hyperfoil
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hyperfoil
        - benchmark
        - test
        - load
        - driver
        links:
        - name: Website
          url: http://hyperfoil.io
        - name: GitHub
          url: http://github.com/Hyperfoil
        maintainers:
        - email: rvansa@redhat.com
          name: Radim Vansa
        - email: spederse@redhat.com
          name: Ståle W. Pedersen
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/hyperfoil-bundle@sha256:1d3625d12d95deb4f48660459fd0fc8b250b52b46d68136927d0f12465aaadf1
        - quay.io/hyperfoil/hyperfoil-operator:0.26.0
        version: 0.26.0
      entries:
      - name: hyperfoil-operator.v0.26.0
        version: 0.26.0
      - name: hyperfoil-operator.v0.24.2
        version: 0.24.2
      - name: hyperfoil-operator.v0.21.0
        version: 0.21.0
      - name: hyperfoil-operator.v0.15.1
        version: 0.15.1
      - name: hyperfoil-operator.v0.15.0
        version: 0.15.0
      name: alpha
    defaultChannel: alpha
    packageName: hyperfoil-bundle
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio
      provider-url: ""
    name: apicurio-registry-3
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-registry-3.v3.1.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry3",
                "metadata": {
                  "name": "simple"
                },
                "spec": {
                  "app": {
                    "ingress": {
                      "host": "simple-app.apps.cluster.example"
                    }
                  },
                  "ui": {
                    "ingress": {
                      "host": "simple-ui.apps.cluster.example"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/apicurio/apicurio-registry-3-operator:3.1.6
          createdAt: "2025-12-19T17:56:46Z"
          description: Deploy and manage Apicurio Registry 3 on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/Apicurio/apicurio-registry/tree/main/operator
          support: Apicurio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry3 represents an instance of Apicurio Registry
              version 3.
            displayName: Apicurio Registry 3
            kind: ApicurioRegistry3
            name: apicurioregistries3.registry.apicur.io
            version: v1
        description: |
          ## Apicurio Registry 3

          Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Allows you manage event schemas and API designs using the Apicurio Registry web console, REST API, Maven plug-in, or Java client
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL, MySQL, SQL Server, in-memory
          - Compatible with Confluent APIs
          - Runs on a lightweight Quarkus platform

          ## Apicurio Registry 3 Operator

          Provides a quick and easy way to deploy and manage Apicurio Registry 3 on Kubernetes.

          **Features**
          - Supports installation and configuration of Apicurio Registry 3
          - Perform a rolling upgrade of Apicurio Registry 3

          ## Prerequisites

          This operator does not deploy storage for Apicurio Registry 3. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Apicurio Registry 3 and Apicurio Registry 3 Operator are licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry/blob/main/LICENSE)
        displayName: Apicurio Registry 3
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Apicurio
        relatedImages:
        - quay.io/apicurio/apicurio-registry-3-operator:3.1.6
        - quay.io/community-operator-pipeline-prod/apicurio-registry-3@sha256:af92f5c91bf76a3956049875e81699d67b5e7f3fc1c25ece91073c9322e953cd
        version: 3.1.6
      entries:
      - name: apicurio-registry-3.v3.1.6
        version: 3.1.6
      - name: apicurio-registry-3.v3.1.4
        version: 3.1.4
      - name: apicurio-registry-3.v3.1.3
        version: 3.1.3
      - name: apicurio-registry-3.v3.1.1
        version: 3.1.1
      - name: apicurio-registry-3.v3.1.0
        version: 3.1.0
      - name: apicurio-registry-3.v3.0.15
        version: 3.0.15
      - name: apicurio-registry-3.v3.0.14
        version: 3.0.14
      - name: apicurio-registry-3.v3.0.12
        version: 3.0.12
      - name: apicurio-registry-3.v3.0.9
        version: 3.0.9
      - name: apicurio-registry-3.v3.0.8
        version: 3.0.8
      - name: apicurio-registry-3.v3.0.7
        version: 3.0.7
      name: 3.x
    defaultChannel: 3.x
    packageName: apicurio-registry-3
    provider:
      name: Apicurio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Microcks.io
      provider-url: ""
    name: microcks
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: microcks-operator.v1.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "microcks.github.io/v1alpha1",
                "kind": "MicrocksInstall",
                "metadata": {
                  "name": "my-microcksinstall"
                },
                "spec": {
                  "name": "my-microcksinstall",
                  "version": "1.10.0",
                  "microcks": {
                    "replicas": 1
                  },
                  "postman": {
                    "replicas": 1
                  },
                  "keycloak": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "1Gi"
                  },
                  "mongodb": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "2Gi"
                  }
                }
              },
              {
                "apiVersion": "microcks.github.io/v1alpha1",
                "kind": "MicrocksInstall",
                "metadata": {
                  "name": "my-microcksinstall-minikube"
                },
                "spec": {
                  "name": "my-microcksinstall-minikube",
                  "version": "1.10.0",
                  "microcks": {
                    "replicas": 2,
                    "url": "microcks.192.168.99.100.nip.io"
                  },
                  "postman": {
                    "replicas": 2
                  },
                  "keycloak": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "1Gi",
                    "url": "keycloak.192.168.99.100.nip.io"
                  },
                  "mongodb": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "2Gi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/microcks/microcks-ansible-operator:1.10.0
          createdAt: "2024-08-01T09:14:55Z"
          description: Open Source mocking and testing platform for API and microservices
          repository: https://github.com/microcks/microcks-ansible-operator
          support: microcks.github.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Microcks installation
            displayName: MicrocksInstall
            kind: MicrocksInstall
            name: microcksinstalls.microcks.github.io
            version: v1alpha1
        description: |
          Microcks is an Open source tool for API and microservices mocking and testing. It provides a platform for referencing, deploying mocks and allow contract-testing of your APIs. It can also be considered as a Service Virtualization solution because it will allow you to provide fake API or Service implementation before development being actually done. It supports Async APIs, REST APIs, gRPC, GraphQL and SOAP WebServices. It perfectly integrates into an iterative, contract-first delivery process.
          Microcks tries not reinventing the wheel and let you capitalize on already known tools of standards. It supports [AsyncAPI Specifications](https://asyncapi.com), [OpenAPI Specification](https://www.openapis.org/) `3.x`, [gRPC Protobuf](https://grpc.io/), [GraphQL Schema](https://graphql.org) out-of-the-box and can also relies on popular tools like [SoapUI](http://www.soapui.com) or [Postman](http://www.getpostman.io) to edit your API request / response samples as well as your test scripts.
          ### Operator features
          * **Create/Destroy**: Easily launch Microcks installations (`MicrocksInstall` custom resource) for your Kubernetes namespace
          ### MicrocksInstall options
          * **keycloak** component can be deployed as part of the install or you can reuse an existing instance. You can reference an existing `Secret` for providing TLS certificates for securing the `Ingress`,
          * **mongodb** component can be deployed as part of the install or you can reuse an existing instance, You can reference an existing `Secret` for providing connection credentials,
          * **features** component allow to activate optional features like the mocking of AsyncAPIs. In case you turn `features.async.enabled` to `true` and `features.async.kafka.install` to `true`, you must have the [Strimzi Operator](https://operatorhub.io/operator/strimzi-kafka-operator) already installed on your cluster/namespace.
          ### Documentation
          Documentation to the current _master_ branch as well as all releases can be found on our [GitHub](https://github.com/microcks/microcks-ansible-operator).
          ### License
          Microcks is licensed under the [Apache License, Version 2.0](https://github.com/microcks/microcks/blob/master/LICENSE).
        displayName: Microcks Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mock
        - test
        - API
        - microservice
        links:
        - name: Product Page
          url: https://microcks.io
        - name: Microcks Operator Source Code
          url: https://github.com/microcks/microcks-ansible-operator
        maintainers:
        - email: laurent.broudoux@gmail.com
          name: lbroudoux
        maturity: alpha
        provider:
          name: Microcks.io
        relatedImages:
        - quay.io/community-operator-pipeline-prod/microcks@sha256:1313bb08037e57cde02d9d48c4d8c9663eed08651a3c29f872b5ef85ac764112
        - quay.io/microcks/microcks-ansible-operator:1.10.0
        version: 1.10.0
      entries:
      - name: microcks-operator.v1.10.0
        version: 1.10.0
      - name: microcks-operator.v1.9.0
        version: 1.9.0
      - name: microcks-operator.v1.8.1
        version: 1.8.1
      - name: microcks-operator.v1.8.0
        version: 1.8.0
      - name: microcks-operator.v1.7.1
        version: 1.7.1
      - name: microcks-operator.v1.7.0
        version: 1.7.0
      - name: microcks-operator.v1.6.1
        version: 1.6.1
      - name: microcks-operator.v1.6.0
        version: 1.6.0
      - name: microcks-operator.v1.5.2
        version: 1.5.2
      - name: microcks-operator.v1.5.1
        version: 1.5.1
      - name: microcks-operator.v1.5.0
        version: 1.5.0
      - name: microcks-operator.v1.4.1
        version: 1.4.1
      name: stable
    defaultChannel: stable
    packageName: microcks
    provider:
      name: Microcks.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Konveyor
      provider-url: https://konveyor.io
    name: move2kube-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: move2kube-operator.v0.3.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "move2kube.konveyor.io/v1alpha1",
                "kind": "Move2Kube",
                "metadata": {
                  "name": "move2kube-sample"
                },
                "spec": {
                  "deployment": {
                    "api": {
                      "cpu": "300m",
                      "imageTag": "",
                      "initContainer": false,
                      "memory": "1Gi",
                      "privilegedPods": false,
                      "replicas": 1
                    },
                    "authServer": {
                      "cpu": "300m",
                      "enable": false,
                      "memory": "1Gi",
                      "replicas": 1
                    },
                    "database": {
                      "cpu": "300m",
                      "enable": false,
                      "memory": "1Gi",
                      "replicas": 1,
                      "startEmpty": true
                    }
                  },
                  "ingress": {
                    "enable": true,
                    "host": "mydomain.com",
                    "preferRoute": false,
                    "tlsSecretName": ""
                  },
                  "persistentVolumeClaim": {
                    "createNew": true,
                    "enable": false,
                    "name": "",
                    "readWriteMany": true,
                    "storageClassName": "",
                    "storageSize": "1Gi"
                  },
                  "secret": {
                    "api": {
                      "configYAML": "",
                      "createNew": true,
                      "enable": false,
                      "name": ""
                    },
                    "authServer": {
                      "adminPassword": "password",
                      "adminUsername": "admin",
                      "createNew": true,
                      "databasePassword": "password",
                      "databaseUsername": "auth-server",
                      "name": "",
                      "realmJSON": "",
                      "standaloneHAXML": ""
                    }
                  },
                  "securityContextContraints": {
                    "enable": false
                  },
                  "serviceAccount": {
                    "createNew": true,
                    "enable": false,
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          containerImage: quay.io/konveyor/move2kube-operator:v0.3.10
          createdAt: "2023-09-25T02:56:15Z"
          description: Konveyor Move2Kube is an open source tool that helps migrate
            your app to run on Kubernetes/Openshift.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/move2kube-operator
          support: https://github.com/konveyor/move2kube-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Move2Kube
            name: move2kubes.move2kube.konveyor.io
            version: v1alpha1
        description: |
          Konveyor Move2Kube is a tool that uses source files such as Docker Compose files or Cloud Foundry manifest files, and even source code, to generate Kubernetes deployment files including object yaml, Helm charts, and operators.

          This operator can be used to start an instance of the Move2Kube UI.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Move2Kube CR.

          By default the operator installs a StatefulSet that brings up a Pod that serves the UI.
          See https://move2kube.konveyor.io/tutorials/ui for a tutorial on how to use the UI.

          Data persistence can be enabled by setting the `persistentVolumeClaim.enable` field to `true` in the CR `spec`. https://github.com/konveyor/move2kube-operator/blob/0e79476bcd873d3272164a47af31b00590dacfb1/helm-charts/move2kube/values.yaml#L26

          ### Documentation

          See https://move2kube.konveyor.io/ for more details.

          ### Getting help

          If you encounter any issues while using this operator, you can create an issue on our [Github repo](https://github.com/konveyor/move2kube-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing

          You can contribute by making PRs to our Github repo https://github.com/konveyor/move2kube-operator
        displayName: Konveyor Move2Kube
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - modernization
        - replatform
        - move2kube
        - konveyor
        - migration
        links:
        - name: Documentation
          url: https://move2kube.konveyor.io/
        - name: Move2Kube Operator
          url: https://github.com/konveyor/move2kube-operator
        maintainers:
        - email: harikrishmenon@gmail.com
          name: Harikrishnan Balagopal
        - email: seshapad@in.ibm.com
          name: Padmanabha V Seshadri
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://konveyor.io
        relatedImages:
        - quay.io/konveyor/move2kube-operator:v0.3.10
        - quay.io/openshift-community-operators/move2kube-operator@sha256:cdf288be5ea779e03900af9b57c4d922b8760b88da4fcbf88437f8031d679aef
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 0.3.10
      entries:
      - name: move2kube-operator.v0.3.10
        version: 0.3.10
      - name: move2kube-operator.v0.3.10-rc.0
        version: 0.3.10-rc.0
      - name: move2kube-operator.v0.3.9
        version: 0.3.9
      - name: move2kube-operator.v0.3.8
        version: 0.3.8
      name: alpha
    - currentCSV: move2kube-operator.v0.3.15-rc.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "move2kube.konveyor.io/v1alpha1",
                "kind": "Move2Kube",
                "metadata": {
                  "name": "move2kube-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          containerImage: quay.io/konveyor/move2kube-operator:v0.3.15-rc.0
          createdAt: "2024-10-18T16:10:56Z"
          description: Konveyor Move2Kube is an open source tool that helps migrate
            your app to run on Kubernetes/Openshift.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/move2kube-operator
          support: https://github.com/konveyor/move2kube-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Move2Kube
            name: move2kubes.move2kube.konveyor.io
            version: v1alpha1
        description: |
          Konveyor Move2Kube is a tool that uses source files such as Docker Compose files or Cloud Foundry manifest files, and even source code, to generate Kubernetes deployment files including object yaml, Helm charts, and operators.

          This operator can be used to start an instance of the Move2Kube UI.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Move2Kube CR.

          By default the operator installs a StatefulSet that brings up a Pod that serves the UI.
          See https://move2kube.konveyor.io/tutorials/ui for a tutorial on how to use the UI.

          Data persistence can be enabled by setting the `persistentVolumeClaim.enable` field to `true` in the CR `spec`. https://github.com/konveyor/move2kube-operator/blob/0e79476bcd873d3272164a47af31b00590dacfb1/helm-charts/move2kube/values.yaml#L26

          ### Documentation

          See https://move2kube.konveyor.io/ for more details.

          ### Getting help

          If you encounter any issues while using this operator, you can create an issue on our [Github repo](https://github.com/konveyor/move2kube-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing

          You can contribute by making PRs to our Github repo https://github.com/konveyor/move2kube-operator
        displayName: Konveyor Move2Kube
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - modernization
        - replatform
        - move2kube
        - konveyor
        - migration
        links:
        - name: Documentation
          url: https://move2kube.konveyor.io/
        - name: Move2Kube Operator
          url: https://github.com/konveyor/move2kube-operator
        maintainers:
        - email: harikrishmenon@gmail.com
          name: Harikrishnan Balagopal
        - email: seshapad@in.ibm.com
          name: Padmanabha V Seshadri
        maturity: alpha
        minKubeVersion: 1.13.0
        provider:
          name: Konveyor
          url: https://konveyor.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/move2kube-operator@sha256:236a53d6fad949285b6abafcdd1a4541a7748f952c0c96fa2e71500079579ba4
        - quay.io/konveyor/move2kube-operator:v0.3.15-rc.0
        version: 0.3.15-rc.0
      entries:
      - name: move2kube-operator.v0.3.15-rc.0
        version: 0.3.15-rc.0
      - name: move2kube-operator.v0.3.14-rc.0
        version: 0.3.14-rc.0
      - name: move2kube-operator.v0.3.13-rc.0
        version: 0.3.13-rc.0
      - name: move2kube-operator.v0.3.11-rc.0
        version: 0.3.11-rc.0
      name: prerelease
    - currentCSV: move2kube-operator.v0.3.15
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "move2kube.konveyor.io/v1alpha1",
                "kind": "Move2Kube",
                "metadata": {
                  "name": "move2kube-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          containerImage: quay.io/konveyor/move2kube-operator:v0.3.15
          createdAt: "2025-03-07T06:09:48Z"
          description: Konveyor Move2Kube is an open source tool that helps migrate
            your app to run on Kubernetes/Openshift.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/move2kube-operator
          support: https://github.com/konveyor/move2kube-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Move2Kube
            name: move2kubes.move2kube.konveyor.io
            version: v1alpha1
        description: |
          Konveyor Move2Kube is a tool that uses source files such as Docker Compose files or Cloud Foundry manifest files, and even source code, to generate Kubernetes deployment files including object yaml, Helm charts, and operators.

          This operator can be used to start an instance of the Move2Kube UI.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Move2Kube CR.

          By default the operator installs a StatefulSet that brings up a Pod that serves the UI.
          See https://move2kube.konveyor.io/tutorials/ui for a tutorial on how to use the UI.

          Data persistence can be enabled by setting the `persistentVolumeClaim.enable` field to `true` in the CR `spec`. https://github.com/konveyor/move2kube-operator/blob/0e79476bcd873d3272164a47af31b00590dacfb1/helm-charts/move2kube/values.yaml#L26

          ### Documentation

          See https://move2kube.konveyor.io/ for more details.

          ### Getting help

          If you encounter any issues while using this operator, you can create an issue on our [Github repo](https://github.com/konveyor/move2kube-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing

          You can contribute by making PRs to our Github repo https://github.com/konveyor/move2kube-operator
        displayName: Konveyor Move2Kube
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - modernization
        - replatform
        - move2kube
        - konveyor
        - migration
        links:
        - name: Documentation
          url: https://move2kube.konveyor.io/
        - name: Move2Kube Operator
          url: https://github.com/konveyor/move2kube-operator
        maintainers:
        - email: harikrishmenon@gmail.com
          name: Harikrishnan Balagopal
        - email: seshapad@in.ibm.com
          name: Padmanabha V Seshadri
        maturity: alpha
        minKubeVersion: 1.13.0
        provider:
          name: Konveyor
          url: https://konveyor.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/move2kube-operator@sha256:38d03dacca046dda3ba08c39943ec2e7db33f1c7bb897e84fe1308a0982c63f1
        - quay.io/konveyor/move2kube-operator:v0.3.15
        version: 0.3.15
      entries:
      - name: move2kube-operator.v0.3.15
        version: 0.3.15
      - name: move2kube-operator.v0.3.14
        version: 0.3.14
      - name: move2kube-operator.v0.3.13
        version: 0.3.13
      - name: move2kube-operator.v0.3.11
        version: 0.3.11
      name: stable
    defaultChannel: stable
    packageName: move2kube-operator
    provider:
      name: Konveyor
      url: https://konveyor.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/try-flink-kubernetes-operator/quick-start/
    name: flink-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: flink-kubernetes-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"flink.apache.org/v1beta1",
                "kind":"FlinkDeployment",
                "metadata":{
                    "name":"basic-example"
                },
                "spec":{
                    "image":"flink:1.16",
                    "flinkVersion":"v1_16",
                    "flinkConfiguration":{
                        "taskmanager.numberOfTaskSlots":"2"
                    },
                    "serviceAccount":"flink",
                    "jobManager":{
                        "resource":{
                            "memory":"2048m",
                            "cpu":1
                        }
                    },
                    "taskManager":{
                        "resource":{
                            "memory":"2048m",
                            "cpu":1
                        }
                    },
                    "job":{
                        "jarURI":"local:///opt/flink/examples/streaming/StateMachineExample.jar",
                        "parallelism":2,
                        "upgradeMode":"stateless"
                    }
                }
              },
              {
                "apiVersion":"flink.apache.org/v1beta1",
                "kind":"FlinkSessionJob",
                "metadata":{
                  "name":"basic-session-job-example2"
                },
                "spec":{
                  "deploymentName":"basic-session-cluster",
                  "job":{
                      "jarURI":"https://repo1.maven.org/maven2/org/apache/flink/flink-examples-streaming_2.12/1.16.1/flink-examples-streaming_2.12-1.16.1.jar",
                      "parallelism":2,
                      "upgradeMode":"stateless",
                      "entryClass":"org.apache.flink.streaming.examples.statemachine.StateMachineExample"
                  }
                }
              },
              {
                "apiVersion": "flink.apache.org/v1beta1",
                "kind": "FlinkStateSnapshot",
                "metadata": {
                  "name": "example-savepoint"
                },
                "spec": {
                  "savepoint": {
                    "alreadyExists": true,
                    "disposeOnDelete": false,
                    "path": "/flink-data/savepoints/savepoint-98682a-21931bf10c39"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "basic-example": {
                "description": "Example flink deployment"
              },
              "basic-session-job-example2": {
                "description": "Example flink session job"
              }
            }
          capabilities: Deep Insights
          categories: Big Data, Streaming & Messaging
          containerImage: ghcr.io/apache/flink-kubernetes-operator:1.13.0
          createdAt: "2025-10-22 22:07:29"
          description: Flink Kubernetes Operator manages the complete deployment lifecycle
            of Apache Flink applications.
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/apache/flink-kubernetes-operator.git
          support: Apache Software Foundation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The FlinkDeployment CR defines Flink Application and Session
              cluster deployments
            displayName: Flink Deployment
            kind: FlinkDeployment
            name: flinkdeployments.flink.apache.org
            version: v1beta1
          - description: The FlinkSessionJob CR defines the session job on the Session
              cluster and each Session cluster can run multiple FlinkSessionJob.
            displayName: Flink Session Job
            kind: FlinkSessionJob
            name: flinksessionjobs.flink.apache.org
            version: v1beta1
          - description: The FlinkStateSnapshots CR is used to describe savepoint
              or checkpoint for a Flink job.
            displayName: Flink State Snapshot
            kind: FlinkStateSnapshot
            name: flinkstatesnapshots.flink.apache.org
            version: v1beta1
        description: |-
          Flink Kubernetes Operator acts as a control plane to manage the complete deployment lifecycle of Apache Flink applications.
          ## Installation
          This operator can be installed from [OperatorHub.io](https://operatorhub.io/operator/flink-kubernetes-operator).

          By default, the Flink operator monitors and run Flink applications in the same namespace as the operator.
          To run Flink jobs in another namespace, users are responsible for setting up the RBAC in that namespace.

          For example, users need to do the following for each additional namespace that runs the Flink applications:

          1. Switch to the namespace by running:

              ```sh
              kubectl config set-context --current --namespace=CHANGEIT
              ```

          2. Create the service account, role, and role binding in the namespace using the commands below:

              ```sh
              kubectl apply -f - <<EOF
              apiVersion: v1
              kind: ServiceAccount
              metadata:
                labels:
                  app.kubernetes.io/name: flink-kubernetes-operator
                  app.kubernetes.io/version: 1.13.0
                name: flink
              ---
              apiVersion: rbac.authorization.k8s.io/v1
              kind: Role
              metadata:
                labels:
                  app.kubernetes.io/name: flink-kubernetes-operator
                  app.kubernetes.io/version: 1.13.0
                name: flink
              rules:
              - apiGroups:
                - ""
                resources:
                - pods
                - configmaps
                verbs:
                - '*'
              - apiGroups:
                - apps
                resources:
                - deployments
                - deployments/finalizers
                verbs:
                - '*'
              ---
              apiVersion: rbac.authorization.k8s.io/v1
              kind: RoleBinding
              metadata:
                labels:
                  app.kubernetes.io/name: flink-kubernetes-operator
                  app.kubernetes.io/version: 1.13.0
                name: flink-role-binding
              roleRef:
                apiGroup: rbac.authorization.k8s.io
                kind: Role
                name: flink
              subjects:
              - kind: ServiceAccount
                name: flink
              EOF
              ```

          3. Proceed deploying Flink applications using the the Custom Resource Definition below.

              ```sh
              kubectl create -f https://raw.githubusercontent.com/apache/flink-kubernetes-operator/release-1.13.0/examples/basic.yaml
              ```

          See [Flink custom resources](https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/custom-resource/overview/#overview) for more detail.
        displayName: Flink Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - flink
        - streaming
        links:
        - name: Website
          url: https://flink.apache.org/
        - name: Documentation
          url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/
        - name: Mailing list
          url: https://lists.apache.org/list.html?dev@flink.apache.org
        - name: Slack
          url: https://apache-flink.slack.com/join/shared_invite/zt-1llkzbgyt-K2nNGGg88rfsDGLkT09Qzg#/shared-invite/email
        - name: GitHub
          url: https://github.com/apache/flink-kubernetes-operator
        maintainers:
        - email: mbalassi@apache.org
          name: Marton Balassi
        - email: htchang@us.ibm.com
          name: Ted Chang
        - email: jbusche@us.ibm.com
          name: James Busche
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Community
          url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/try-flink-kubernetes-operator/quick-start/
        relatedImages:
        - ghcr.io/apache/flink-kubernetes-operator:1.13.0
        - quay.io/community-operator-pipeline-prod/flink-kubernetes-operator@sha256:3a177f2a9c91e7a6b212ecadc116c2a598c8c834106c6af0f6754a3e4f2a6d9a
        version: 1.13.0
      entries:
      - name: flink-kubernetes-operator.v1.13.0
        version: 1.13.0
      - name: flink-kubernetes-operator.v1.12.0
        version: 1.12.0
      - name: flink-kubernetes-operator.v1.11.0
        version: 1.11.0
      - name: flink-kubernetes-operator.v1.6.0
        version: 1.6.0
      - name: flink-kubernetes-operator.v1.5.0
        version: 1.5.0
      - name: flink-kubernetes-operator.v1.4.0
        version: 1.4.0
      - name: flink-kubernetes-operator.v1.3.1
        version: 1.3.1
      - name: flink-kubernetes-operator.v1.3.0
        version: 1.3.0
      name: alpha
    defaultChannel: alpha
    packageName: flink-kubernetes-operator
    provider:
      name: Community
      url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/try-flink-kubernetes-operator/quick-start/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Oracle
      provider-url: https://www.oracle.com/cloud/
    name: oci-ccm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: oci-ccm-operator.v0.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ccm.oraclecloud.com/v1alpha1",
                "kind": "OCICloudManager",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oci-ccm-operator",
                    "app.kubernetes.io/instance": "ocicloudmanager",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ocicloudmanager",
                    "app.kubernetes.io/part-of": "oci-ccm-operator"
                  },
                  "name": "ocicloudmanager"
                },
                "spec": {
                  "compartment": "CompartmentId",
                  "driverNamespace": "kube-system",
                  "loadBalancer": {
                    "securityList": "SecurityListId",
                    "securityListManagementMode": "Frontend",
                    "subnet": "SubnetId"
                  },
                  "vcn": "VcnId"
                }
              },
              {
                "apiVersion": "ccm.oraclecloud.com/v1alpha1",
                "kind": "OCICsiDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oci-ccm-operator",
                    "app.kubernetes.io/instance": "ocicsidriver",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ocicsidriver",
                    "app.kubernetes.io/part-of": "oci-ccm-operator"
                  },
                  "name": "ocicsidriver"
                },
                "spec": {
                  "compartment": "CompartmentId",
                  "driverNamespace": "kube-system",
                  "vcn": "VcnId"
                }
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider, Storage
          containerImage: phx.ocir.io/ax1eoqvpvbtg/oci-ccm-operator:0.0.9
          createdAt: "2023-07-28T23:42:18Z"
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          support: Oracle
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: OCICloudManager
            name: ocicloudmanagers.ccm.oraclecloud.com
            version: v1alpha1
          - kind: OCICsiDriver
            name: ocicsidrivers.ccm.oraclecloud.com
            version: v1alpha1
        description: OCI Kubernetes Cloud Controller Manager implementation (or out-of-tree
          cloud-provider) for Oracle Cloud Infrastructure (OCI).
        displayName: oci-ccm-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OCI
        - CCM
        - OpenShift
        - Kubernetes
        links:
        - name: Oracle
          url: https://www.oracle.com/cloud/
        - name: OCI Cloud Controller Manager (CCM)
          url: https://github.com/oracle/oci-cloud-controller-manager
        maintainers:
        - email: david.d.campbell@oracle.com
          name: David Campbell
        - email: alex.blinov@oracle.com
          name: Alex Blinov
        maturity: alpha
        provider:
          name: Oracle
          url: https://www.oracle.com/cloud/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - phx.ocir.io/ax1eoqvpvbtg/oci-ccm-operator:0.0.9
        - quay.io/openshift-community-operators/oci-ccm-operator@sha256:eaf63c6f9ee9e9c3562d6ced4cff091c1e401daa826ee3a92b321a5cc8f13da2
        version: 0.0.9
      entries:
      - name: oci-ccm-operator.v0.0.9
        version: 0.0.9
      name: alpha
    defaultChannel: alpha
    packageName: oci-ccm-operator
    provider:
      name: Oracle
      url: https://www.oracle.com/cloud/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Opstree Solutions
      provider-url: ""
    name: logging-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: logging-operator.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"logging.logging.opstreelabs.in/v1beta1","kind":"Elasticsearch","metadata":{"name":"elasticsearch"},"spec":{"esClusterName":"prod","esVersion":"7.17.0","esSecurity":{"autoGeneratePassword":true,"tlsEnabled":true}}},{"apiVersion":"logging.logging.opstreelabs.in/v1beta1","kind":"Fluentd","metadata":{"name":"fluentd"},"spec":{"esCluster":{"host":"elasticsearch-master"},"esSecurity":{"tlsEnabled":true,"existingSecret":"elasticsearch-password"},"indexNameStrategy":"namespace_name"}},{"apiVersion":"logging.logging.opstreelabs.in/v1beta1","kind":"Kibana","metadata":{"name":"kibana"},"spec":{"replicas":1,"esCluster":{"host":"https://elasticsearch-master:9200","esVersion":"7.16.0","clusterName":"elasticsearch"},"esSecurity":{"tlsEnabled":true,"existingSecret":"elasticsearch-password"}}}]'
          capabilities: Seamless Upgrades
          categories: Database,  Monitoring, Big Data
          certified: "false"
          containerImage: quay.io/opstree/logging-operator:v0.4.0
          createdAt: 04-07-2022
          description: A golang-based operator to create and manage EFK (Elasticsearch,
            Fluentd, and Kibana) stack on Kubernetes.
          k8sMaxVersion: ""
          k8sMinVersion: ""
          repository: https://github.com/ot-container-kit/logging-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Elasticsearch
            displayName: Elasticsearch
            kind: Elasticsearch
            name: elasticsearches.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Index Life Cycle
            displayName: IndexLifeCycle
            kind: IndexLifeCycle
            name: indexlifecycles.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Index Template
            displayName: IndexTemplate
            kind: IndexTemplate
            name: indextemplates.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Fluentd
            displayName: Fluentd
            kind: Fluentd
            name: fluentds.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Kibana
            displayName: Kibana
            kind: Kibana
            name: kibanas.logging.logging.opstreelabs.in
            version: v1beta1
        description: |2+

          Logging Operator is an operator created in Golang to set up and manage EFK(Elasticsearch, Fluentd, and Kibana) cluster inside Kubernetes and Openshift environment. This operator is capable of setting up each individual component of EFK cluster separately.
          ### Supported Features
          - Setup of elasticsearch cluster with different nodes type:- master, data, ingestion, and client.
          - Customizable configuration for elasticsearch, fluentd stack.
          - Setup of fluentd as light-weight log-shipper as Daemonset.
          - Kibana will be set up as visualization tool for elastic stack.
          - Seamless upgrades of elasticsearch, fluentd, and kibana.
          - Security best practices support for complete stack such as TLS, elastic security.
          - Kubernetes resources objects support like:- resources, securityContext, affinity, tolerations, etc.
          - Elasticsearch plugins and keystore seamless support with operator
          ### Documentation
          **[Documentation](https://ot-logging-operator.netlify.app/)**
          ### Getting Help
          This project is managed by OpsTree Solutions. If you have any queries or suggestions, mail us at opensource@opstree.com.
          ### Contributing
          You can contribute to this project by:-
          * Raising Bugs and Feature Requests
          * Fixing issue by opening a Pull Request
          * Improving Documentation
          ### License
          MongoDB Operator is licensed under [Apache License, Version 2.0](https://github.com/OT-CONTAINER-KIT/logging-operator/blob/master/LICENSE)

        displayName: Logging Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Operator
        - Elasticsearch
        - Fluentd
        - Kibana
        - Opstree
        - Logging
        - Monitoring
        - Cloud Native
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://ot-logging-operator.netlify.app/
        - name: Buildpiper
          url: https://buildpiper.io
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep
        maturity: beta
        minKubeVersion: 1.17.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/opstree/logging-operator:v0.4.0
        - quay.io/openshift-community-operators/logging-operator@sha256:d3ce3322f7f25c7b8bfabdd6e9fd32b833239fc39592240e0ccff3a13757fb17
        version: 0.4.0
      entries:
      - name: logging-operator.v0.4.0
        version: 0.4.0
      - name: logging-operator.v0.3.0
        version: 0.3.0
      name: beta
    defaultChannel: beta
    packageName: logging-operator
    provider:
      name: Opstree Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NetApp, Inc.
      provider-url: https://www.netapp.com/
    name: trident-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trident-operator.v25.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "trident.netapp.io/v1",
                "kind": "TridentOrchestrator",
                "metadata": {
                  "name": "trident"
                },
                "spec": {
                  "IPv6": false,
                  "debug": true,
                  "nodePrep": [],
                  "imagePullSecrets": [],
                  "imageRegistry": "",
                  "namespace": "trident",
                  "silenceAutosupport": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: docker.io/netapp/trident-operator:25.10.0
          createdAt: "2025-11-18"
          description: Trident Operator, to manage NetApp Trident installations
          operatorhub.io/ui-metadata-max-k8s-version: "1.34"
          repository: https://github.com/netapp/trident
          support: NetApp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Used to deploy Astra Trident.
            displayName: Trident Orchestrator
            kind: TridentOrchestrator
            name: tridentorchestrators.trident.netapp.io
            version: v1
        description: |
          NetApp Trident is an open source storage provisioner and orchestrator maintained by NetApp. It enables you to create storage volumes for containerized applications managed by Docker and Kubernetes. For full release information, including patch release changes, see https://docs.netapp.com/us-en/trident/trident-rn.html.
        displayName: NetApp Trident
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - NetApp
        - ONTAP
        - Trident
        - storage
        - performance
        - open source
        - Astra
        - Cloud Native
        - AWS
        - Azure
        - GCP
        - Cloud Volumes
        links:
        - name: GitHub Repository
          url: https://github.com/NetApp/trident
        - name: Trident documentation
          url: https://docs.netapp.com/us-en/trident/index.html
        - name: Support policy
          url: https://mysupport.netapp.com/site/info/version-support
        - name: Release Notes
          url: https://docs.netapp.com/us-en/trident/trident-rn.html
        maintainers:
        - email: ng-astra-product@netapp.com
          name: NetApp
        provider:
          name: NetApp, Inc.
          url: https://www.netapp.com/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/trident-operator:25.10.0
        - docker.io/netapp/trident-operator:25.10.0
        version: 25.10.0
      entries:
      - name: trident-operator.v25.10.0
        version: 25.10.0
      name: stable
    defaultChannel: stable
    packageName: trident-operator
    provider:
      name: NetApp, Inc.
      url: https://www.netapp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: secrets-store-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: secrets-store-csi-driver-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-secrets-store-csi-driver-rhel9-operator@sha256:36cb66f68975490405a76e742b0f9d347106f0921fcc68d1254765178c898de6
          createdAt: "2023-06-12T00:00:00Z"
          description: Install and configure Secrets Store CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.13.0-0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/secrets-store-csi-driver-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SecretProviderClass is the Schema for the secretproviderclasses
              API
            displayName: Secret Provider Class
            kind: SecretProviderClass
            name: secretproviderclasses.secrets-store.csi.x-k8s.io
            version: v1
          - description: SecretProviderClassPodStatus is the Schema for the secretproviderclassespodstatus
              API
            displayName: Secret Provider Class Pod Status
            kind: SecretProviderClassPodStatus
            name: secretproviderclasspodstatuses.secrets-store.csi.x-k8s.io
            version: v1
        description: |
          Operator that installs and configures the CSI driver for Secrets Store.
        displayName: Secrets Store CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        links:
        - name: Documentation
          url: https://github.com/openshift/secrets-store-csi-driver-operator
        - name: Source Repository
          url: https://github.com/openshift/secrets-store-csi-driver-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-secrets-store-csi-driver-operator-bundle@sha256:a4cfd15e063019d925ccd4893a87cf29c83f372c93578bd5fa2e4de06c47ae0a
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-secrets-store-csi-driver-rhel9-operator@sha256:36cb66f68975490405a76e742b0f9d347106f0921fcc68d1254765178c898de6
        - registry.redhat.io/openshift4/ose-secrets-store-csi-driver-rhel9@sha256:f3bf81a36c97fd7acbe1e3213c64e03ddb7643b17466f3afce5b06a29b7e6ea0
        version: 4.20.0-202512090918
      entries:
      - name: secrets-store-csi-driver-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: secrets-store-csi-driver-operator.v4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: secrets-store-csi-driver-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: secrets-store-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: secrets-store-csi-driver-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: secrets-store-csi-driver-operator.v4.20.0-202510212154
        version: 4.20.0-202510212154
      - name: secrets-store-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: secrets-store-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://your.domain
    name: amq-streams-proxy
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-streams-proxy.v3.0.1-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
          createdAt: "2025-11-11T15:24:48Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.0.1-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        version: 3.0.1-4
      entries:
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: alpha
    - currentCSV: amq-streams-proxy.v3.0.1-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
          createdAt: "2025-11-11T15:24:48Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.0.1-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        version: 3.0.1-4
      entries:
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: amq-streams-3.0.x
    - currentCSV: amq-streams-proxy.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
          createdAt: "2025-12-04T15:59:50Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:308597d82823daf94b0526c93ba7c689b63bcc6a76f53e55a8cc2e8cfa17ad13
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:2d5710829cedc5afc10fd3e021013a2b61ee38262d45ed4bc6375b820aa781f6
        version: 3.1.0-6
      entries:
      - name: amq-streams-proxy.v3.1.0-6
        version: 3.1.0-6
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: amq-streams-3.1.x
    - currentCSV: amq-streams-proxy.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
          createdAt: "2025-12-04T15:59:50Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:2d5710829cedc5afc10fd3e021013a2b61ee38262d45ed4bc6375b820aa781f6
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:308597d82823daf94b0526c93ba7c689b63bcc6a76f53e55a8cc2e8cfa17ad13
        version: 3.1.0-6
      entries:
      - name: amq-streams-proxy.v3.1.0-6
        version: 3.1.0-6
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: amq-streams-3.x
    - currentCSV: amq-streams-proxy.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
          createdAt: "2025-12-04T15:59:50Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:308597d82823daf94b0526c93ba7c689b63bcc6a76f53e55a8cc2e8cfa17ad13
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:2d5710829cedc5afc10fd3e021013a2b61ee38262d45ed4bc6375b820aa781f6
        version: 3.1.0-6
      entries:
      - name: amq-streams-proxy.v3.1.0-6
        version: 3.1.0-6
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: stable
    defaultChannel: stable
    packageName: amq-streams-proxy
    provider:
      name: Red Hat
      url: https://your.domain
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Sonatype
      provider-url: ""
    name: nexus-repository-ha-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nexus-repository-ha-operator-certified.v3.84.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonatype.com/v1alpha1",
                "kind": "NexusRepo",
                "metadata": {
                  "name": "nexusrepo-sample"
                },
                "spec": {
                  "ingress": {
                    "additionalRules": null,
                    "annotations": null,
                    "defaultRule": false,
                    "dockerIngress": {
                      "annotations": null,
                      "enabled": false,
                      "host": "example.com",
                      "name": "nexus-docker-ingress"
                    },
                    "dockerSubdomain": false,
                    "enabled": false,
                    "host": "example.com",
                    "name": "nexus-ingress",
                    "tls": {
                      "enabled": false,
                      "secretName": "tlsSecretName"
                    }
                  },
                  "license": {
                    "fileContentsBase64": "your_license_file_contents_in_base_64",
                    "secretName": "nexus-repo-license"
                  },
                  "secret": {
                    "nexusSecret": {
                      "enabled" : false,
                      "name": "nexus-secret.json",
                      "nexusSecretsKeyId": "super_secret_key_id",
                      "secretKeyfileContentsBase64": "secretKeyfileContentsBase64",
                      "mountPath": "/var/nexus-repo-secrets"
                    }
                  },
                  "nexusData": {
                    "pvc": {
                      "accessMode": "ReadWriteOnce",
                      "size": "2Gi"
                    },
                    "storageClass": {
                      "enabled": false,
                      "name": "nexusrepo-storage",
                      "parameters": {},
                      "provisioner": "provisioner",
                      "reclaimPolicy": "Retain",
                      "volumeBindingMode": "WaitForFirstConsumer"
                    },
                    "volumeClaimTemplate": {
                      "enabled": false
                    }
                  },
                  "service": {
                    "docker": {
                      "enabled": false,
                      "name": "nexus-repo-docker-service",
                      "port": 9090,
                      "protocol": "TCP",
                      "targetPort": 9090,
                      "type": "NodePort"
                    },
                    "nexus": {
                      "enabled": false,
                      "name": "nexus-repo-service",
                      "port": 80,
                      "protocol": "TCP",
                      "targetPort": 8081,
                      "type": "NodePort"
                    }
                  },
                  "statefulset": {
                    "container": {
                      "containerPort": 8081,
                      "env": {
                        "clustered": false,
                        "install4jAddVmParams": "-Xms2703m -Xmx2703m",
                        "jdbcUrl": null,
                        "nexusInitialPassword": "nexusabc",
                        "password": "nexus",
                        "user": "nexus",
                        "zeroDowntimeEnabled": false
                      },
                      "imageName": "registry.connect.redhat.com/sonatype/nexus-repository-manager@sha256:fbad488ff2e368845473a11b4955992fe826a94811da3abf5cc3c6a33ff3974f",
                      "pullPolicy": "IfNotPresent",
                      "resources": {
                        "limits": {
                          "cpu": 4,
                          "memory": "8Gi"
                        },
                        "requests": {
                          "cpu": 4,
                          "memory": "8Gi"
                        }
                      },
                      "terminationGracePeriod": 120
                    },
                    "imagePullSecrets": {},
                    "livenessProbe": {
                      "failureThreshold": 6,
                      "initialDelaySeconds": 240,
                      "path": "/",
                      "periodSeconds": 60
                    },
                    "name": "nexusrepo-statefulset",
                    "readinessProbe": {
                      "failureThreshold": 6,
                      "initialDelaySeconds": 240,
                      "path": "/",
                      "periodSeconds": 60
                    },
                    "replicaCount": 1
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.connect.redhat.com/sonatype/nexus-repository-ha-operator-certified@sha256:99f30aa5ba8469d96de3efe69d1b21e73ff022172fc79144bba496d1119ec8a2
          createdAt: "2023-08-14"
          description: |-
            Nexus Repository is the central source of control to efficiently manage all binaries
            and build artifacts across your DevOps pipeline.
          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.replaces: 3.80.0-2
          olm.skipRange: <3.84.0-1
          repository: https://github.com/sonatype/operator-nexus-repository
          support: Sonatype
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Nexus Repository
            displayName: NexusRepo
            kind: NexusRepo
            name: nexusrepos.sonatype.com
            version: v1alpha1
        description: |-
          Nexus Repository is the central source of control to efficiently manage all binaries
          and build artifacts across your DevOps pipeline.
          The flow of open source and third-party components into and through an organization
          creates a complex software supply chain.
          Nexus Repository delivers speed, efficiency, and quality to the governance
          and management of all dependencies, libraries, and applications for your DevOps teams.

          ## Core Capabilities

          * **Dependency Management**:
            Improves reliability with repeatable, fast access to secure dependencies
          * **Developer Productivity**:
            Streamline developer workflows by enabling the sharing of components and applications across teams
          * **Supply Chain Performance**:
            Improve speed-to-market and reduced build times with release advanced staging and component tagging
          * **CI/CD Integrations**:
            Increase DevOps scalability with integrations to the most popular build and deployment tools

          Version control systems and package registries do not scale when managing proprietary,
          open source, and third-party components.
          Organizations need a central binary and build artifact repository to manage dependencies
          across the entire software supply chain.

          ## Limitations

          ## Controlling Automatic vs Manual Update

          If you use the default configuration for the Nexus Repository Operator installation,
          please notice that on any new operator release, the corresponding deployments are
          also updated without user intervention, resulting in unscheduled downtime.

          If you want to avoid this unscheduled downtime, we recommend installing the operator
          into **its own namespace** with **manual approval** for updates.

          ## Usage
          By default, the example Custom Resource starts up a single instance of Nexus Repository in non-Pro mode using an H2 database.

          ### Connect to a PostgreSQL database
          We strongly recommend using Nexus Repository with a PostgreSQL database. To connect a Nexus Repository instance to a PostgreSQL database, do as follows:
          * Update the `license.fileContentsBase64` parameter with a base 64 representation of your Nexus Repository Pro license.
          * Set the `statefulset.container.env.jdbcUrl` parameter to your database url.
          * Set the `statefulset.container.env.user` parameter to your database user name.
          * Set the `statefulset.container.env.password` parameter to your database password.

          ### High Availability (HA) mode
          To start Nexus Repository in HA mode, you must edit the Custom Resource YAML as follows:

          * Update the `license.fileContentsBase64` parameter with a base 64 representation of your Nexus Repository Pro license.
          * Set the `statefulset.container.env.jdbcUrl` parameter to your database url.
          * Set the `statefulset.container.env.user` parameter to your database user name.
          * Set the `statefulset.container.env.password` parameter to your database password.
          * Set the `statefulset.container.env.clustered` parameter to true.
          * Set the `statefulset.replicaCount` parameter to the number of Nexus Repository pods you require in your HA cluster
          * You must use a persistent volume as described in the 'Storage' section below.

          ### Storage
          The default configuration uses an emptyDir volume for storing Nexus Repository logs. However, we strongly recommend that
          you configure dynamic provisioning of persistent storage based on your deployment environment as explained below.

          #### Cloud deployments (AWS/Azure)
          * Ensure the appropriate Container Storage Interface (CSI) driver(s) are installed for your chosen OpenShift cloud deployment.
            Please, refer to OpenShift documentation for details on configuring CSI drivers.
          Note: if you're using Red Hat OpenShift on AWS (ROSA), CSI drivers for dynamically provisioning EBS volumes are installed
          by default; you should see associated storage classes for them in your cluster web console.

          #### On premise deployments
          1. Attach separate disks (i.e. separate from the root disk) to your worker nodes.
          2. Install the Local Storage Operator. Please refer to Open Shift persistent storage documentation:
             https://docs.openshift.com/container-platform/4.13/storage/persistent_storage/persistent_storage_local/persistent-storage-local.html
          and the Local Storage Operator documentation: https://github.com/openshift/local-storage-operator.
          3. Use the Local Storage Operator to automatically create persistent volumes for your chosen storage class name as documented here:
             https://docs.openshift.com/container-platform/4.13/storage/persistent_storage/persistent_storage_local/persistent-storage-local.html
          4. Specify the storage class name from step 3 as the value of the `nexusData.storageClass.name` property and also set `nexusData.volumeClaimTemplate.enabled` to true.

          #### Configuring the operator for dynamic persistent volume provisioning
          * Set the `nexusData.storageClass.name` parameter to a storage class name. This could be one of the default storage classes
            automatically created in your OpenShift cluster (e.g., if you're using ROSA) or one that you would like the operator to create.
          * If you would like to create a dedicated storage class (i.e., you don't want to use the default), then in addition to
            specifying a value for `nexusData.storageClass.name`, you must also set `nexusData.storageClass.enabled` parameter to `true`.
          * Set the `nexusData.volumeClaimTemplate.enabled` parameter to `true`.

          ### Additional configuration
          * Once the operator has created the server instance and it is running, you can further configure Nexus Repository via the NexusRepo custom resource:

          | Parameter                                                   | Description                         | Default                                 |
          | ----------------------------------------------------------- | ----------------------------------  | ----------------------------------------|
          | `statefulset.name`                                          |  The suffix for the statefulset's service name    | nexusrepo-statefulset     |
          | `statefulset.replicaCount`                                  |  The desired number of Nexus Repository pods    | 3                           |
          | `statefulset.container.imageName`                           |  The Nexus repository image registry url    |
          | | | registry.connect.redhat.com/sonatype/nexus-repository-manager:<app version>-ubi-1|
          | `statefulset.container.resources.requests.cpu`              |  The minimum cpu the Nexus repository pod can request    | 4 |
          | `statefulset.container.resources.requests.memory`           |  The minimum memory the Nexus repository pod can request    | 8Gi|
          | `statefulset.container.resources.limits.cpu`                |  The maximum cpu the Nexus repository pod may get.    | 4|
          | `statefulset.container.resources.limits.memory`             |  The maximum memory the Nexus repository pod may get.  | 8Gi|
          | `statefulset.container.containerPort`                       |  The Nexus Repository container's HTTP port  | 8081|
          | `statefulset.container.pullPolicy`                          |  The Nexus Repository docker image pull policy  | IfNotPresent|
          | `statefulset.container.terminationGracePeriod`              |  The time given for the pod to gracefully shut down  | 120 seconds|
          | `statefulset.container.env.clustered`                       |  Controls whether Nexus Repository should start in clustered mode  | False|
          | `statefulset.container.env.install4jAddVmParams`            |  Xmx and Xms settings for JVM  | -Xms2703m -Xmx2703m|
          | `statefulset.container.env.user`                            |  The database user name | nexus (can be overridden via Kubernetes secret. See above)|
          | `statefulset.container.env.password`                        |  The database password  | nexus (can be overridden via Kubernetes secret. See above)|
          | `statefulset.container.env.jdbcUrl`                         |  The database url |
          | | | jdbc:postgresql://your_database_server:5432/nexus (must be overridden via Kubernetes |
          | | | secret object which feeds into env variable variables defined in the operator.yaml . See above)|
          | `statefulset.container.env.nexusInitialPassword`            |  The initial admin password for Nexus Repository UI. This is for first time |
          | | installs only. Subsequent installs/restarts on the same node ignores this setting | nexusabc|
          | `statefulset.livenessProbe.initialDelaySeconds`             |  The initial delay before the Nexus Repository application is pinged for a |
          | | response i.e. to determine whether the application is still alive | 240|
          | `statefulset.livenessProbe.path`                            |  The path to ping the application | |
          | `statefulset.livenessProbe.periodSeconds`                   |  The interval for checking that the application is still alive i.e. responsive, not deadlocked etc | 60|
          | `statefulset.livenessProbe.failureThreshold`                |  The maximum number of times the application ping can fail before the |
          | | application is considered unresponsive. Kubernetes will attempt to restart the application's pod in this case | 6|
          | `statefulset.readinessProbe.initialDelaySeconds`            |  The initial delay before the Nexus Repository application is checked |
          | | whether it is ready to receive traffic | 240|
          | `statefulset.readinessProbe.path`                           |  The path where the Nexus Repository application is checked for traffic readiness | |
          | `statefulset.readinessProbe.periodSeconds`                  |  The interval for checking the Nexus Repository application for traffic readiness | 60|
          | `statefulset.readinessProbe.failureThreshold`               |  The maximum number of times to check the Nexus Repository application for traffic readiness | 6|
          | `statefulset.imagePullSecrets`                              |  The pull secret for private image registries | {}|
          | `ingress.name`                                              |  The name of an Ingress object which listens for requests to Nexus Repository on port 80 | nexus-ingress|
          | `ingress.enabled`                                           |  Whether or not to create the Ingress | false|
          | `ingress.host`                                              |  Ingress host | "example.com"|
          | `ingress.defaultRule`                                       |  Whether or not to add a default rule for the Nexus Repository |
          | | Ingress which forwards traffic to a Service object  | false|
          | `ingress.additionalRules`                                   |  Additional rules to add to the ingress | null|
          | `ingress.tls.enabled`                                       |  Whether or not TLS should be enabled for the Ingress | false|
          | `ingress.tls.secretName`                                    | The name of a Secret object in which to store the TLS secret | tlsSecretName|
          | `ingress.dockerSubdomain`                                   |  Whether or not to add rules for docker subdomains | false|
          | `ingress.annotations`                                       |  Annotations for the Ingress object | null |
          | `license.fileContentsBase64`                                |  Your Base64 encoded Nexus Repository license | your_license_file_contents_in_base_64 |
          | `license.secretName`                                        |  The name of a secret object in which to store your |
          | | Base64-encoded Nexus Repository license | nexus-repo-license|
          | `ingress.dockerIngress.name`                                |  The name of an Ingress object which listens for requests to an |
          | | existing docker repository in Nexus Repository | nexus-docker-ingress|
          | `ingress.dockerIngress.enabled`                             |  Whether or not to create an Ingress for a docker repository | false|
          | `ingress.dockerIngress.host`                                |  The docker Ingress's host | "example.com"|
          | `ingress.dockerIngress.annotations`                         |  Annotations for the docker Ingress object | null |
          | `nexusData.pvc.size`                                        |  The volume size to request for storing Nexus logs | 2Gi |
          | `nexusData.pvc.accessMode`                                  |  The persistent volume claim access mode | ReadWriteOnce |
          | `nexusData.storageClass.name`                               |  The name of the storage class to use for dynamically requesting that |
          | | storage be provisioned when using dynamic provisioning or to randomly select a pre-created persisted volume when using the Local Storage Operator. | nexusrepo-storage |
          | `nexusData.storageClass.reclaimPolicy`                      |  The reclaim policy for persistent volume's created by the storage class | Retain |
          | `nexusData.storageClass.enabled`                            |  Whether or not a storage class object should be created. | false |
          | `nexusData.storageClass.volumeBindingMode`                  |  It controls when volume binding and dynamic provisioning should occur | WaitForFirstConsumer |
          | `nexusData.storageClass.provisioner`                        |  The name of the volume provisioner | provisioner |
          | `nexusData.storageClass.parameters`                         |  The additional parameters for the storage class | {} |
          | `nexusData.volumeClaimTemplate.enabled`                           |  Whether or not volume should be requested using a claim template. |
          | | You should set this property to true when using dynamic volume provisioning (cloud deployments) |
          | | or if you're using Local Storage Operator to automatically create persistent volumes for locally attached disks (i.e. not root disk) | false |
          | `license.secretName | A name for the Kubernetes secret object which stores the base64 representation of your |
          | | Nexus Repository license specified via `license.fileContentsBase64` is stored | nexus-repo-license |
          | `license.fileContentsBase64 | A base64 representation of your Nexus Repository license | your_license_file_contents_in_base_64 |
          | `service.nexus.name`                                              |  The name of a kubernetes Service Object which allows access to |
          | | Nexus Repository's main HTTP port | nexus-repo-service |
          | `service.nexus.enabled`                                           |  Whether or not to create the Service object | false|
          | `service.nexus.type`                                              |  The type of the Kubernetes Service | "NodePort"|
          | `service.nexus.protocol`                                       |  The protocol  | TCP |
          | `service.nexus.port`                                   |  The port to listen for incoming requests | 80|
          | `service.nexus.targetPort`                                   |  The port to forward requests to | 8081 |
          | `service.docker.name`                                              |  The name of a kubernetes Service Object which allows access to a |
          | | docker repository within Nexus Repository | nexus-repo-docker-service |
          | `service.docker.enabled`                                           |  Whether or not to create a Kubernetes Service object for a given |
          | | docker repository within Nexus Repository | false |
          | `service.docker.type`                                              |  The type of the Kubernetes Service | "NodePort"|
          | `service.docker.protocol`                                       |  The protocol  | TCP |
          | `service.docker.port`                                   |  The port to listen for incoming requests | 9090 |
          | `service.docker.targetPort`                                   |  The port to forward requests to | 9090 |
        displayName: Nexus Repository HA Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - repository
        - sonatype
        links:
        - name: Nexus Repository Manager
          url: https://www.sonatype.com/product-nexus-repository
        maintainers:
        - email: support@sonatype.com
          name: Sonatype
        maturity: stable
        provider:
          name: Sonatype
        relatedImages:
        - registry.connect.redhat.com/sonatype/nexus-repository-ha-operator-bundle@sha256:3e7ab287f64398b2aa434d9cfd5d99e2e9cf2d40c2e9fa1b1418537807b7aeea
        - registry.connect.redhat.com/sonatype/nexus-repository-ha-operator-certified@sha256:99f30aa5ba8469d96de3efe69d1b21e73ff022172fc79144bba496d1119ec8a2
        - registry.connect.redhat.com/sonatype/nexus-repository-manager@sha256:fbad488ff2e368845473a11b4955992fe826a94811da3abf5cc3c6a33ff3974f
        version: 3.84.0-1
      entries:
      - name: nexus-repository-ha-operator-certified.v3.84.0-1
        version: 3.84.0-1
      name: stable
    defaultChannel: stable
    packageName: nexus-repository-ha-operator-certified
    provider:
      name: Sonatype
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://redhat.com
    name: pelorus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pelorus-operator.v0.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.pelorus.dora-metrics.io/v1alpha1",
                "kind": "Pelorus",
                "metadata": {
                  "name": "pelorus-sample"
                },
                "spec": {
                  "exporters": {
                    "global": {},
                    "instances": [
                      {
                        "app_name": "deploytime-exporter",
                        "exporter_type": "deploytime"
                      },
                      {
                        "app_name": "failuretime-exporter",
                        "enabled": false,
                        "exporter_type": "failure"
                      },
                      {
                        "app_name": "committime-exporter",
                        "exporter_type": "committime"
                      },
                      {
                        "app_name": "webhook-exporter",
                        "exporter_type": "webhook"
                      }
                    ]
                  },
                  "federate_openshift_monitoring": {
                    "enabled": false
                  },
                  "openshift_prometheus_basic_auth_pass": "changeme",
                  "openshift_prometheus_htpasswd_auth": "internal:{SHA}+pvrmeQCmtWmYVOZ57uuITVghrM=",
                  "prometheus_retention": "1y",
                  "prometheus_retention_size": "1GB",
                  "prometheus_storage": false,
                  "prometheus_storage_pvc_capacity": "2Gi",
                  "prometheus_storage_pvc_storageclass": "gp2"
                }
              }
            ]
          capabilities: Basic Install
          categories: |
            Modernization & Migration,Developer Tools,Monitoring,Integration & Delivery
          containerImage: quay.io/pelorus/pelorus-operator:0.0.9
          createdAt: "2024-05-27T20:04:01Z"
          description: |
            Tool that helps IT organizations measure their impact on the overall performance of their organization
          operatorframework.io/suggested-namespace: pelorus
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/dora-metrics/pelorus/
          support: Pelorus Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Pelorus is the Schema for pelorus API to adopt instance to
              the requested workflow
            displayName: Pelorus
            kind: Pelorus
            name: peloruses.charts.pelorus.dora-metrics.io
            version: v1alpha1
        description: |
          Pelorus is a tool that helps IT organizations measure their impact on the overall performance of their organization. It does this by gathering metrics about team and organizational behaviors over time in some key areas of IT that have been shown to impact the value they deliver to the organization as a whole. Some of the key outcomes Pelorus can focus on are:

          - Software Delivery Performance
          - Product Quality and Sustainability
          - Customer experience

          For more background on the project you can read [@trevorquinn](https://github.com/trevorquinn)'s blog post on [Metrics Driven Transformation](https://www.openshift.com/blog/exploring-a-metrics-driven-approach-to-transformation).

          ## Software Delivery Performance as an outcome

          Currently, Pelorus functionality can capture proven metrics that measure Software Delivery Performance -- a significant outcome that IT organizations aim to deliver.

          Pelorus is a Grafana dashboard that can easily be deployed to an OpenShift cluster, and provides an organizational-level view of the [four critical measures of software delivery performance](https://blog.openshift.com/exploring-a-metrics-driven-approach-to-transformation/).

          ## Software Delivery Metrics Dashboard

          A short video describing each of metrics provided by Pelorus is available [here](https://www.youtube.com/watch?v=7-iB_KhUaQg).

          ## Demo

          [YouTube Video](https://www.youtube.com/watch?v=VPCOIfDcgso) with the Pelorus in action recorded during online Konveyor Community event.

          ## Documentation

          Pelorus documentation is available at [pelorus.readthedocs.io](https://pelorus.readthedocs.io/en/latest/).

          ## Contributing to Pelorus

          If you are interested in contributing to the Pelorus project, please review our Contribution guide which can be found in the [contribution guide](https://github.com/dora-metrics/pelorus/blob/master/CONTRIBUTING.md)

          ## Statement of Support

          Our support policy can be found in the [Upstream Support statement](https://github.com/dora-metrics/pelorus/blob/master/docs/UpstreamSupport.md)

          ## Code of Conduct
          Refer to dora-metrics's Code of Conduct [here](https://github.com/dora-metrics/pelorus/blob/master/CODE_OF_CONDUCT.md).

          ## License

          This repository is licensed under the terms of [Apache-2.0 License](https://raw.githubusercontent.com/dora-metrics/pelorus/master/LICENSE).
        displayName: Pelorus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pelorus-operator
        - dora
        - dora metrics
        - pelorus
        - metrics
        - transformation
        - devops
        links:
        - name: Pelorus Docs
          url: https://pelorus.readthedocs.io/en/latest/
        - name: Pelorus Getting Started
          url: https://pelorus.readthedocs.io/en/latest/GettingStarted/Overview/
        - name: Pelorus GIT repository
          url: https://github.com/dora-metrics/pelorus/
        maintainers:
        - email: kgranger@redhat.com
          name: Kevin Granger
        - email: whayutin@redhat.com
          name: Wesley Hayutin
        - email: mpryc@redhat.com
          name: Michal Pryc
        - email: msouzaol@redhat.com
          name: Mateus Souza Oliveira
        - email: esauer@redhat.com
          name: Eric Sauer
        maturity: alpha
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - quay.io/pelorus/pelorus-operator:0.0.9
        - quay.io/community-operator-pipeline-prod/pelorus-operator@sha256:f54c42a30675897a971cac278d5d8ea24edf3121570264c07cde04f11cc4e7a8
        version: 0.0.9
      entries:
      - name: pelorus-operator.v0.0.9
        version: 0.0.9
      - name: pelorus-operator.v0.0.8
        version: 0.0.8
      - name: pelorus-operator.v0.0.7
        version: 0.0.7
      - name: pelorus-operator.v0.0.6
        version: 0.0.6
      - name: pelorus-operator.v0.0.5
        version: 0.0.5
      - name: pelorus-operator.v0.0.4
        version: 0.0.4
      - name: pelorus-operator.v0.0.3
        version: 0.0.3
      - name: pelorus-operator.v0.0.2
        version: 0.0.2
      - name: pelorus-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: pelorus-operator
    provider:
      name: Red Hat
      url: https://redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-opensearchserverless-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-opensearchserverless-controller.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/opensearchserverless-controller:0.3.0
          createdAt: "2025-11-29T03:24:52Z"
          description: AWS OpenSearchServerless controller is a service controller
            for managing OpenSearchServerless resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Collection represents the state of an AWS opensearchserverless
              Collection resource.
            displayName: Collection
            kind: Collection
            name: collections.opensearchserverless.services.k8s.aws
            version: v1alpha1
          - description: SecurityPolicy represents the state of an AWS opensearchserverless
              SecurityPolicy resource.
            displayName: SecurityPolicy
            kind: SecurityPolicy
            name: securitypolicies.opensearchserverless.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon OpenSearchServerless resources in AWS from within your Kubernetes cluster.

          **About Amazon OpenSearchServerless**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon OpenSearchServerless
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opensearchserverless
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon OpenSearchServerless Developer Resources
          url: https://aws.amazon.com/OpenSearchServerless/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: opensearchserverless maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/opensearchserverless-controller:0.3.0
        - quay.io/community-operator-pipeline-prod/ack-opensearchserverless-controller@sha256:f04fb9b1d65e4582edffdbbee0cde8853660138ebee9e5b87d66bf3615dd0eb8
        version: 0.3.0
      entries:
      - name: ack-opensearchserverless-controller.v0.3.0
        version: 0.3.0
      - name: ack-opensearchserverless-controller.v0.2.2
        version: 0.2.2
      - name: ack-opensearchserverless-controller.v0.2.1
        version: 0.2.1
      - name: ack-opensearchserverless-controller.v0.2.0
        version: 0.2.0
      - name: ack-opensearchserverless-controller.v0.1.2
        version: 0.1.2
      - name: ack-opensearchserverless-controller.v0.1.1
        version: 0.1.1
      - name: ack-opensearchserverless-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-opensearchserverless-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: ""
    name: integrity-shield-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: integrity-shield-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": true,
                    "image": "quay.io/open-cluster-management/integrity-shield-observer",
                    "imagePullPolicy": "Always",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "provenanece": true,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "resultDetailConfigKey": "config.yaml",
                    "resultDetailConfigName": "verify-resource-result",
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  resp.status_code == 200\n  result := json.unmarshal(resp.raw_body)\n  result.allow == false\n  not is_detect_mode\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"tls_insecure_skip_verify\": true\n  })\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "requestHandlerConfig": "defaultConstraintAction:\n  audit:\n    inform: true\n  admissionControl:\n    enforce: false\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/open-cluster-management/integrity-shield-api",
                    "imagePullPolicy": "Always",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/open-cluster-management/integrity-shield-operator:0.3.0
          createdAt: "2021-10-14T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.

          [K8s Integrity Shield](https://github.com/open-cluster-management/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.

          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Detect (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster

          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).

          ## Preparations before installation

          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).


          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.

          If you want to change the settings such as default run mode (detection/enforcement) or audit interval,  please check [here](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).

          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-7b7f768bf7-fhrpg                           1/1     Running   0          20s
          integrity-shield-observer-5bc66f75f7-tn8fw                      1/1     Running   0          25s
          integrity-shield-operator-controller-manager-65b7fb58f7-j25zd   2/2     Running   0          3h5m
          ```

          After installation, you can protect Kubernetes resources by following this [document](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).

          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:

          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)

          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/open-cluster-management/integrity-shield
        - name: Operator Documentation
          url: https://github.com/open-cluster-management/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/open-cluster-management/integrity-shield-operator:0.3.0
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:11edce56874ff1ee666752ec5fa521f3f6ae78c52cf1f289ceb97a86e6c083aa
        version: 0.3.0
      entries:
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.0
    - currentCSV: integrity-shield-operator.v0.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": true,
                    "image": "quay.io/open-cluster-management/integrity-shield-observer",
                    "imagePullPolicy": "Always",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "resultDetailConfigKey": "config.yaml",
                    "resultDetailConfigName": "verify-resource-result",
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  resp.status_code == 200\n  result := json.unmarshal(resp.raw_body)\n  result.allow == false\n  not is_detect_mode\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"tls_insecure_skip_verify\": true\n  })\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "requestHandlerConfig": "defaultConstraintAction:\n  mode: detect\n  admissionOnly: false\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  - kind: ConfigMap\n    name: openshift-service-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/open-cluster-management/integrity-shield-api",
                    "imagePullPolicy": "Always",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/open-cluster-management/integrity-shield-operator:0.3.1
          createdAt: "2021-10-22T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.

          [K8s Integrity Shield](https://github.com/open-cluster-management/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.

          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Detect (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster

          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).

          ## Preparations before installation

          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).


          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.

          If you want to change the settings such as default run mode (detection/enforcement) or audit interval,  please check [here](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).

          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-7b7f768bf7-fhrpg                           1/1     Running   0          20s
          integrity-shield-observer-5bc66f75f7-tn8fw                      1/1     Running   0          25s
          integrity-shield-operator-controller-manager-65b7fb58f7-j25zd   2/2     Running   0          3h5m
          ```

          After installation, you can protect Kubernetes resources by following this [document](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).

          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:

          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)

          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/open-cluster-management/integrity-shield
        - name: Operator Documentation
          url: https://github.com/open-cluster-management/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/open-cluster-management/integrity-shield-operator:0.3.1
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:5e4c319ce871a0dcbab7fff23325e6233c9dbcb2592fdeb1a9ba7c57ac2a63b2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.3.1
      entries:
      - name: integrity-shield-operator.v0.3.1
        version: 0.3.1
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.1
    - currentCSV: integrity-shield-operator.v0.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": true,
                    "image": "quay.io/stolostron/integrity-shield-observer",
                    "imagePullPolicy": "IfNotPresent",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "resultDetailConfigKey": "config.yaml",
                    "resultDetailConfigName": "verify-resource-result",
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  should_be_denied(resp)\n  not is_detect_mode\n  result := get_result(resp)\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"timeout\": \"2500ms\",\n    \"raise_error\": false,\n    \"tls_ca_cert\": REPLACE_WITH_CA_CERT\n  })\n}\n\n# get decision result from API response\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  not is_null(raw_body)\n  result := json.unmarshal(raw_body)\n}\n# if error, return it as result\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  is_null(raw_body)\n  error_msg := object.get(resp, \"error\", \"\")\n  result := {\"http_error\":error_msg}\n}\n\n# if API response is null, deny\nshould_be_denied(resp) {\n  is_null(resp)\n}\n\n# if API response has status_code other than 200, deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  resp.status_code != 200\n}\n\n# if decision result is \"allow == false\" or not set, then deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  result := get_result(resp)\n  allow := object.get(result, \"allow\", false)\n  allow == false\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "reporter": {
                    "image": "quay.io/stolostron/integrity-shield-reporter",
                    "imagePullPolicy": "IfNotPresent",
                    "intervalSeconds": "10",
                    "name": "integrity-shield-reporter",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "requestHandlerConfig": "defaultConstraintAction:\n  mode: inform\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\ndecisionReporterConfig:\n  enabled: true\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  - kind: ConfigMap\n    name: openshift-service-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/stolostron/integrity-shield-api",
                    "imagePullPolicy": "IfNotPresent",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/stolostron/integrity-shield-operator:0.3.2
          createdAt: "2022-01-25T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.15.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.
          [K8s Integrity Shield](https://github.com/stolostron/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.
          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Inform (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster
          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).
          ## Preparations before installation
          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).
          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.
          If you want to change the settings such as default run mode (inform/enforce) or audit interval,  please check [here](https://github.com/stolostron/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).
          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-5799f69896-zbcjs                           2/2     Running   0          88s
          integrity-shield-observer-757f58f7d7-7pf5h                      1/1     Running   0          55s
          integrity-shield-operator-controller-manager-6f94d7d684-dg5bt   2/2     Running   0          4m27s
          ```
          After installation, you can protect Kubernetes resources by following this [document](https://github.com/stolostron/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).
          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:
          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)
          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/stolostron/integrity-shield
        - name: Operator Documentation
          url: https://github.com/stolostron/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:d86bb21fdeec35b1fc9789023a558750da76e036e0790dcfce97dcd137dcb6fb
        - quay.io/stolostron/integrity-shield-operator:0.3.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.3.2
      entries:
      - name: integrity-shield-operator.v0.3.2
        version: 0.3.2
      - name: integrity-shield-operator.v0.3.1
        version: 0.3.1
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.2
    - currentCSV: integrity-shield-operator.v0.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": false,
                    "image": "quay.io/stolostron/integrity-shield-observer",
                    "imagePullPolicy": "IfNotPresent",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  should_be_denied(resp)\n  not is_detect_mode\n  result := get_result(resp)\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"timeout\": \"2500ms\",\n    \"raise_error\": false,\n    \"tls_ca_cert\": REPLACE_WITH_CA_CERT\n  })\n}\n\n# get decision result from API response\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  not is_null(raw_body)\n  result := json.unmarshal(raw_body)\n}\n# if error, return it as result\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  is_null(raw_body)\n  error_msg := object.get(resp, \"error\", \"\")\n  result := {\"http_error\":error_msg}\n}\n\n# if API response is null, deny\nshould_be_denied(resp) {\n  is_null(resp)\n}\n\n# if API response has status_code other than 200, deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  resp.status_code != 200\n}\n\n# if decision result is \"allow == false\" or not set, then deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  result := get_result(resp)\n  allow := object.get(result, \"allow\", false)\n  allow == false\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "reporter": {
                    "image": "quay.io/stolostron/integrity-shield-reporter",
                    "imagePullPolicy": "IfNotPresent",
                    "intervalSeconds": "10",
                    "name": "integrity-shield-reporter",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "requestHandlerConfig": "defaultConstraintAction:\n  mode: inform\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\ndecisionReporterConfig:\n  enabled: true\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  - kind: ConfigMap\n    name: openshift-service-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/stolostron/integrity-shield-api",
                    "imagePullPolicy": "IfNotPresent",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/stolostron/integrity-shield-operator:0.3.3
          createdAt: "2022-03-18T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.15.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.
          [K8s Integrity Shield](https://github.com/stolostron/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.
          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Inform (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster
          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).
          ## Preparations before installation
          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).
          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.
          If you want to change the settings such as default run mode (inform/enforce) or audit interval,  please check [here](https://github.com/stolostron/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).
          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-5799f69896-zbcjs                           2/2     Running   0          88s
          integrity-shield-observer-757f58f7d7-7pf5h                      1/1     Running   0          55s
          integrity-shield-operator-controller-manager-6f94d7d684-dg5bt   2/2     Running   0          4m27s
          ```
          After installation, you can protect Kubernetes resources by following this [document](https://github.com/stolostron/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).
          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:
          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)
          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/stolostron/integrity-shield
        - name: Operator Documentation
          url: https://github.com/stolostron/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:7d94521a5cbdd34f8307653a3e1b596ec86415b2165fabdbabc8ed8bed35473d
        - quay.io/stolostron/integrity-shield-operator:0.3.3
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.3.3
      entries:
      - name: integrity-shield-operator.v0.3.3
        version: 0.3.3
      - name: integrity-shield-operator.v0.3.2
        version: 0.3.2
      - name: integrity-shield-operator.v0.3.1
        version: 0.3.1
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.3
    defaultChannel: alpha-0.3.3
    packageName: integrity-shield-operator
    provider:
      name: Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhacs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhacs-operator.v3.74.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
          createdAt: "2024-02-06T23:06:13.271846+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.73.0 < 3.74.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2c0840f4573373a19eb8c9a26501138ef0e76efbd508fd69a6260e78194d86c8
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:71b9fdcaf4cc761b1499be8e6ccff6c463cc6b9856e9deb1f93baad45ea59eb0
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:a108e9a7967001e0bdfed7124b01e9a3dbf1dec308444762973030aec57e1d5a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:74624389ac3261ed699b1f64e5717353da68895709d30a011bc8813b61a4a249
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:22bf00e1457b4a9e63901892aa4375a1d4a9d1b2c067c1f054d918a24b222b10
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:264102d4bca7d9bd384dc04e5bbff1a7b43343ea8e59cc79047cdda50a3f299f
        version: 3.74.9
      deprecation:
        message: The `latest` channel is no longer supported. Use the `stable` channel.
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.9
        version: 3.74.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.8
        version: 3.74.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.7
        version: 3.74.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.6
        version: 3.74.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.5
        version: 3.74.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.4
        version: 3.74.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.3
        version: 3.74.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.2
        version: 3.74.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.1
        version: 3.74.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.0
        version: 3.74.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.5
        version: 3.73.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.4
        version: 3.73.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.3
        version: 3.73.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.2
        version: 3.73.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.1
        version: 3.73.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.0
        version: 3.73.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: latest
    - currentCSV: rhacs-operator.v3.62.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:56905c2e7df0e29ca2b6301cd81b4f9bbe02b483374708f7f7da219a4b29428d
          createdAt: "2021-08-13T17:10:01.410173+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.61.0 < 3.62.1'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.5.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main page before deploying, or consult the RHACS
              documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create an cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead. If you want to deploy Secured Cluster Service in another namespace, additionally pass the `-n <namespace>` flag.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e30f7835cf52dbce9afdbaf55e5a93d8baf9c4b3a3ae488d1d42c1adba7f46af
        - registry.redhat.io/rh-acs/collector@sha256:558c0dabdc52efaee7bc889ef397ac2ac30f7c54562c2cc0070d0ef991a8b31b
        - registry.redhat.io/rh-acs/collector@sha256:98cfab15684506f1d0978eb701e8de478d91fc5bda3013ffd3b436aa95f07cc0
        - registry.redhat.io/rh-acs/main@sha256:9932304bb62b084ee1ae7e75bb21d6dfb737260c851f2d8daf05082f79230c66
        - registry.redhat.io/rh-acs/scanner-db@sha256:ff877f503e08ecca0ce7a7d8db760b2e4004e8e8ae2f27fb9b9c00a05b58c93a
        - registry.redhat.io/rh-acs/scanner@sha256:266a575c2547a3223890e8b73db0f14d69dc5a22217c7e4e3dc79644e6ab0258
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:7fd7595e6a61352088f9a3a345be03a6c0b9caa0bbc5ddd8c61ba1d38b2c3b8e
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:56905c2e7df0e29ca2b6301cd81b4f9bbe02b483374708f7f7da219a4b29428d
        version: 3.62.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.62
    - currentCSV: rhacs-operator.v3.63.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:d79bac8f5cab0711ffa8e35ea7290b59ee0554b990e4a919f4b0bc0aa93578fc
          createdAt: "2021-07-26T22:02:58.261433+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.62.0 < 3.63.0'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.5.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:2d9da26bac816af608979a034a8cdc24b51e04f0807e177fc114f55c0e633650
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:d79bac8f5cab0711ffa8e35ea7290b59ee0554b990e4a919f4b0bc0aa93578fc
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2f322231af2402ac09788e96ca836c209797f8c36a8589f0739ca18678d206e4
        - registry.redhat.io/rh-acs/collector@sha256:0332b5accbaf819911082087b8f689400332cc40e30e74e8839f9555d42bf8f0
        - registry.redhat.io/rh-acs/collector@sha256:6d67c6231d74e5de4f382abd445493796a04a0ed7dfda0695b699a1e56e34dd2
        - registry.redhat.io/rh-acs/main@sha256:839f642faa364e3e4c330e965a7e50728a00fd349a388cb514ca64439659ee78
        - registry.redhat.io/rh-acs/scanner-db@sha256:3a3cce6b39bd878eb369800ea9cd1c4f4549fce486754b5106e88d361da93713
        - registry.redhat.io/rh-acs/scanner@sha256:6152a6f5f76b3a14eda37f5adac1007a4e4b6df933dfec282c25efb3bc0116fb
        version: 3.63.0
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.63
    - currentCSV: rhacs-operator.v3.64.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fa478167f2f738f244bed6a06450679be73f8464c40f86acde4ffd390505692b
          createdAt: "2021-09-22T05:10:01.286657+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.63.0 < 3.64.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0cacd00c0a147cc8295138565ef2dc2ddbd9ad1fb25f6be817719a75ea4c6448
        - registry.redhat.io/rh-acs/collector@sha256:2b3a8bd3af62516a6714fe612e5fdc0433b91d873182e290d3ddc2b32ce291f0
        - registry.redhat.io/rh-acs/collector@sha256:3eb099da081cf208d46be5ccfa7b5e9ac0e2cad49f127fa4db91e49e3f26db42
        - registry.redhat.io/rh-acs/main@sha256:6aeb2223124540ac217c38b016dea99d770ab897dde4906a821d8776d91ea03d
        - registry.redhat.io/rh-acs/scanner-db@sha256:67e81bf896267b7acab8cb6755cde552173de4f0881c38eaca8e491bd926cc53
        - registry.redhat.io/rh-acs/scanner@sha256:8b7121bce8f9c7133d29245ebb265a4b8f9831a66a57f11b2d68b9b8b5cf79cc
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:5187b04f8010a274d6bc017fc82f1b00d886124e520c1b7de8b4da8cd2f37bc0
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fa478167f2f738f244bed6a06450679be73f8464c40f86acde4ffd390505692b
        version: 3.64.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.64
    - currentCSV: rhacs-operator.v3.65.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:229c7e5f967c70dfbc3cf638d521267ea6acf875b055499dfd30cb19c0b1f69c
          createdAt: "2021-09-21T13:26:28.711610+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.64.0 < 3.65.1'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rh-acs/collector@sha256:2b3a8bd3af62516a6714fe612e5fdc0433b91d873182e290d3ddc2b32ce291f0
        - registry.redhat.io/rh-acs/collector@sha256:3eb099da081cf208d46be5ccfa7b5e9ac0e2cad49f127fa4db91e49e3f26db42
        - registry.redhat.io/rh-acs/main@sha256:e672ef9a1239065f8cf0f331757861fea082e971a9e9760d1e65795f399cbde1
        - registry.redhat.io/rh-acs/scanner-db@sha256:20f258500ac2ba4e626df92dbcd193cf7ab8687ac251591be2442b8a46871835
        - registry.redhat.io/rh-acs/scanner@sha256:bfe9b2205bfca6aebed14827b4bda098bfad574e67ffa967ad339543062200fe
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:d3bf33899ca8b199ca8782978618ca343164e43fd0ae2ac6a0cfbf697efa6428
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:229c7e5f967c70dfbc3cf638d521267ea6acf875b055499dfd30cb19c0b1f69c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0cacd00c0a147cc8295138565ef2dc2ddbd9ad1fb25f6be817719a75ea4c6448
        version: 3.65.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.65
    - currentCSV: rhacs-operator.v3.66.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:10cdb0ff3e67b65737cde420536494bd84c2b7ccf65192bbed2eb43eaed66a41
          createdAt: "2021-10-20T16:38:38.091764+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.65.0 < 3.66.1'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:bd74f0b95ff2881faf6eb4520feecd067b69a759f09bbfecd467447ce2a2a25e
        - registry.redhat.io/rh-acs/collector@sha256:5673c27554a71502e06e08945a4424c6ce5da27f489854f3aa452e6d31240aee
        - registry.redhat.io/rh-acs/collector@sha256:d93e13ee1d1cc4b7f82e644a7d43e560aac42bd1e06d25b476cea9a4338bf9ce
        - registry.redhat.io/rh-acs/main@sha256:97230c01e76d90c7fe35ffeaa591be3d9175f350a8fd88599aded09a1edf930c
        - registry.redhat.io/rh-acs/scanner-db@sha256:490b0bf49161e4bc6de2504726aaf360e0ca9a214aea6b886fff13153bdb263d
        - registry.redhat.io/rh-acs/scanner@sha256:323ee86d6a9cbeb32270c659c1154f3a62c36535c6ea894e4e29e93eb1f4a84f
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6536ee795e8aaeab9321ee4820e55933195983a768ba24fab40508d03e50a6e4
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:10cdb0ff3e67b65737cde420536494bd84c2b7ccf65192bbed2eb43eaed66a41
        version: 3.66.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.66
    - currentCSV: rhacs-operator.v3.67.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:893ebcb2d0c96647e56bce3b16fe32851df59cd71f2c0fc8f6e66ca3a669bb70
          createdAt: "2021-12-16T12:54:10.117625+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.66.0 < 3.67.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:893ebcb2d0c96647e56bce3b16fe32851df59cd71f2c0fc8f6e66ca3a669bb70
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:86e5fa1fa294987114be200890c2e516501e424aee0fb98ece25c95e7716295b
        - registry.redhat.io/rh-acs/collector@sha256:57c2dfa3dbc8368076291fbc627baa01dcb5ebc50f838e02ce7ac38a128d027b
        - registry.redhat.io/rh-acs/collector@sha256:e4648723ccbd43fa5acf005d9734bfc06d41e19e1be0bde839880e28fa361e16
        - registry.redhat.io/rh-acs/main@sha256:8db7630d094b661411ebb3f35248848d3147c735677d0922f7a04de9a41eacc9
        - registry.redhat.io/rh-acs/scanner-db@sha256:6f8d47277732eb56317d576c2d06fb1f539d46d16520e6ca34abec290392cef9
        - registry.redhat.io/rh-acs/scanner@sha256:2860ed271da6064149bb53568c5ad60e129918d55a2f244f9ade4a0bea4c4933
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:ad88773ab141f45fe24c61e83ec736aab27f652fb82ca2a85fee6f885568c5b9
        version: 3.67.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.67
    - currentCSV: rhacs-operator.v3.68.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:195a694dc96096166fe82e81ecb3ceb493f96cfb5029112e576e44ab39b56abd
          createdAt: "2022-06-15T22:13:22.427644+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.67.0 < 3.68.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b5fc3dcaa72bbc8dea005189c940e1cf2d00c94a6cf7676cf0e1790e1191d45c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c9d0a5a2871c24c0b1058e419f2b090429363a319856397855412fd2c0037395
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:081f2198ad70bfb2ec66153b50b48b950b9a5550ba996de413c5a2aff4052783
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9b9b9146d9683d6da0ff2abbc8ea82b96d945b7a8c3740d72d8c018fb2b04fba
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0bb76363a3a25916dd4493e177e9b2d36eac9633473b07fe0fffb853fd072da3
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:105d10bd50a6062c998ed107dea388dd78f0caddb0b57713c8692b1d07042774
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:f0d2f5f11c2a96d34d6b4baf249cbf821fe064eade73c3f95c22f3c6981ac4d1
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:711293438bab35b17d2e1f162e7f74f667a6e16dd32e45122f917b6817fefb4e
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6a10a4859527946f61f497ff84b80f973cb7be5982d428423836b5aca81a1f5d
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:195a694dc96096166fe82e81ecb3ceb493f96cfb5029112e576e44ab39b56abd
        version: 3.68.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.68
    - currentCSV: rhacs-operator.v3.69.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9b2beceb255124855ba1b352d16009b2f2cd422901a19c311f0783dab1fcc3a0
          createdAt: "2022-06-21T09:07:40.705944+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.68.0 < 3.69.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:77f5db63e17b140a8d6b84e3822fd77463035be9c0c832b55b4977696da13ccc
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:867613178d491f416e57975843817251490c5fbca2fc69d8b55b169bea675279
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:cf5629823f2dd583495bcbbcf3b83b4f29f855ace3c388f5cb7b24a6d34ed267
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:da6dd486a20fdba61ea12d2c77ea299d9795a9f22d9057d65ff992b1f5896e07
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:f167e928740d1c614e26948ea58f49e569f6a4fddc438cd0abe52f60538432d0
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b254746ed3faa1f1cbcafdf1343a1957bf0214311b36f4e892be3000cc2aecf3
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:8db5206532e95a7ad7cb23f389155d41757aaf5f445ddce92b008a06627d3fd5
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:2afb2823edc6f3434e18db60ee37381b5b79f51234c1a261b6d0f8ed74cc8b63
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:297e7f863106c6b41f882bbd5b691a12c797c24d832473a04e604d4639e4a68e
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9b2beceb255124855ba1b352d16009b2f2cd422901a19c311f0783dab1fcc3a0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9ae03669cfdc0f4fe56b021d911edb17159c07757720ae30a1f22d7f7a897c07
        version: 3.69.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.69
    - currentCSV: rhacs-operator.v3.70.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fb903bf9e110ba03e9c63977ebaf707e6884dd8fd413bcd6b793a0ed795cdd0e
          createdAt: "2022-06-20T12:30:26.999648+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.69.0 < 3.70.1'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fb903bf9e110ba03e9c63977ebaf707e6884dd8fd413bcd6b793a0ed795cdd0e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:df8cfdaa40b50ff2f2670d97c2115b47ae4bea443ae2831caaa468dd62f3c75f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:d2e827a209840b7197960c8115720972237532eb9cf9d6fee7a36107053408ce
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ee55a233d2a8fd77d89ec2c69f357721c7debead6470a9f494b3cd6a001829c4
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:e71f2f2347dd46dec790405b1bb98d54a348a4583949f142f5703be9a790f96e
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6c32b86ed8bc18e384706eb6188406e66910bf34c8869bd155a60c3525d0fea7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:3d7c8b77671740e324ee6c309a84bbaa4d925e6750979fe4e46c561bc79f1b4d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9b35ae6df2c19935783735d213483f3fcecead2f49f873a4f7844ef9fb5c7f1a
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:6b14e850cda9a54618847858292ea669abff599a40692e27fed0e337c4a60526
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:dfeb239931f7a33ade5c829a102cabc01f5c348e1aa35a7ddc24757cfd549629
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:b47c96af1c9ffe4d8728da510a93efe21adc221225fe2b822cfcace6c6672ba2
        version: 3.70.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.70
    - currentCSV: rhacs-operator.v3.71.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:469b6c1592226eb9a521131ef758a33e6a6ac7c96bc67fcc903cea30469c125e
          createdAt: "2022-12-07T08:31:36.777654+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.70.0 < 3.71.3'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:9bc25e81c21cda6d8b535d8ac67c1286fe57a1596001850e730f8f73bf371111
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:e282a8e5e606003ea344d44ac5ee7699563848f7160eeae183aa58ad740e0e94
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:c3ec88cd99908894d0e67153779062f90ac1b007980d66040a79b2be13798a10
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:df7b41999b542a477848823a1d0e7e5c29ae1b00fbac035007a5a1f33fac139f
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:4d8bac9b3857af6ba351c7768f70ef30ef7cb99ae4df60cb226b5a793353a052
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:7f279bb6e0f34a5208d8711ba4d7b62c78f08b683815ce33f6aa28c23c4246da
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:469b6c1592226eb9a521131ef758a33e6a6ac7c96bc67fcc903cea30469c125e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:f16f92e074f7125b88e9e2033c7c12b44421145b93d040034fa4688626869af1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4a0dc8c337299d7f6440ff75c2d5219d3ab68183f4f117f008ef065757dd5d4b
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:cb2d0f470968c2b725b0d176d423cc1866fd56893344d077d28f2c16581d3614
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e001b9f844a6c298dd74f1ab683f3dbbf0ad66044cec419c373ef4f97d47be73
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5fdfd3690af60bd5ecf04741cd1f73259491da501700b066120976960567f0db
        version: 3.71.3
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.71
    - currentCSV: rhacs-operator.v3.72.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3ff61e1cc77b66a22c8a8c0ab306f0e122cd74e762005285aede23ebb6c2f6a2
          createdAt: "2023-02-28T17:02:08.443613+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.71.0 < 3.72.4'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:cb5df858e0c5cae8f77b285e23daeb83062bd72570c90ed5ea3ce4a02d2f5f08
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3ff61e1cc77b66a22c8a8c0ab306f0e122cd74e762005285aede23ebb6c2f6a2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:0b69595405e4e598183bbf4197ac5b7593724fa6162413f225aa01a542af18c9
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:cd475a6c2356d63cfe736a11114de7fedfbd8fdcfecc56224a00b6c819103be6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:622f30b7f591194d86a5bf95deede0225e66f7b624db197f6289a5fbbbe887a9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:648b14e4158da2a85eedb46b3456fb502d680d52d375ad34bf45b4b94f8b2ef6
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:878ed77d07d3f40f049a594af44376797305786a2a264dae3d0c50401643bfa5
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:42e5f6c4ba789f124ac3ebe7b6d1a607ede8e763a35888c97ccbd0259bec4a1c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:575b6c3e2914751df1668ffff83cbda187ce6e56f32214414cdf036b7a62bbd8
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:c07fae3616cbc681e4d31839abea6623b4bf4dade93273201c8db7ba0d635aad
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d56a00b3e20e60b7169f5c35d03fa6a1bd3b9980dd3ebc9d89d759e1d6d20ad2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:cd0c205ee44eddcdf99b84e80fcf4403851d956efc50532b9d12013bafe44988
        version: 3.72.4
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.72
    - currentCSV: rhacs-operator.v3.73.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a8486b66f977a639d77ef110492e5ecdde47be8acaefbaa1cbb5417085c56839
          createdAt: "2023-05-26T21:27:04.033276+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.72.0 < 3.73.5'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:648b14e4158da2a85eedb46b3456fb502d680d52d375ad34bf45b4b94f8b2ef6
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dce5db4f162dd40c09cad114cb802cd6d7c72d0c6986581f2e74c977493f75b0
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:5df359156b01505ce43e5f14c3b08722856bdb86f3d0d9b4fba785a2e580f346
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:459a8d91beff91638872d377a8b82c279ad2905ce3f4ad4bfc00f6822418ac57
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e6687c12d070069f655c17832d94c619c18274a259ccc59715036f9908e162f7
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e4a27d3ffb173c87728fb637ca7fde92a9e78ea9ee3edcecccc2a5e3d3748b8c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e2c89f735969d438f75a89ff63c404a8ec4361a03fde48e880fee73006b9c669
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:082bd6f4b40209e0591be001dea358f328cd86a08691cdceb7f71ea59d861d9d
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:4d0ead8969f120a629104a92a454842bb7103aec137deb6c8209b7db9c48a1b2
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:ee2a9e4ab74f5a554d1e4ff148833a53bdaab70ac1e2668cc9ee2fceca290ba9
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a8486b66f977a639d77ef110492e5ecdde47be8acaefbaa1cbb5417085c56839
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7bf9415aa4b0746d11ca5a59d4179bc382a0fac4ded969f0c4294171fde27d58
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:c020a80ff82bf4d9b5cec3eeac5de9990de76041e22c444e664a20e15c46ce3b
        version: 3.73.5
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.5
        version: 3.73.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.4
        version: 3.73.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.3
        version: 3.73.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.2
        version: 3.73.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.1
        version: 3.73.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.0
        version: 3.73.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.73
    - currentCSV: rhacs-operator.v3.74.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
          createdAt: "2024-02-06T23:06:13.271846+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.73.0 < 3.74.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:22bf00e1457b4a9e63901892aa4375a1d4a9d1b2c067c1f054d918a24b222b10
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2c0840f4573373a19eb8c9a26501138ef0e76efbd508fd69a6260e78194d86c8
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:264102d4bca7d9bd384dc04e5bbff1a7b43343ea8e59cc79047cdda50a3f299f
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:71b9fdcaf4cc761b1499be8e6ccff6c463cc6b9856e9deb1f93baad45ea59eb0
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:74624389ac3261ed699b1f64e5717353da68895709d30a011bc8813b61a4a249
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:a108e9a7967001e0bdfed7124b01e9a3dbf1dec308444762973030aec57e1d5a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        version: 3.74.9
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.9
        version: 3.74.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.8
        version: 3.74.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.7
        version: 3.74.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.6
        version: 3.74.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.5
        version: 3.74.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.4
        version: 3.74.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.3
        version: 3.74.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.2
        version: 3.74.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.1
        version: 3.74.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.0
        version: 3.74.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.5
        version: 3.73.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.4
        version: 3.73.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.3
        version: 3.73.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.2
        version: 3.73.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.1
        version: 3.73.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.0
        version: 3.73.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.74
    - currentCSV: rhacs-operator.v4.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9bf3a3e0fd573f91f03794eaf5291364a90392e5e7d4b5d4ed550ef4600ab826
          createdAt: "2023-10-20T07:04:50.531740+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.74.0 < 4.0.5'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:c39621837cbc8419d187a43a9575ec8cb4021c58ea1b56f215003d7264eb5d03
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:139d80d398e7e5cfc85839e3039a3630b48c7ae6650d755754430fccd94d6a27
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:4c848eb7465e928251e05d32ffbc93cd14e7bb77972d22b8721bd6eaa4a93d2f
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:0aedd8e865f72ffa8b79fd2bab48974caec3eea3e3a6f77c89fe6dacb8947057
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:a0d9cd31d953aaf7e84f5a39f405c5aa2ea62e68d6c728a936ca1ffc4dc1b93e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:09e79b5db8977520f9951cc43c339c8e40b4659d7da513347d5a88b2500f809d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:3250d89e78de852a2627593f29469f0b3ff639ea3644b4b7d6d057d0c1ad3659
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:5a492b856e0b6d9fdb020b556d13186ef5e7095b0c736a2031500c9c00dad0c1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:08f537cba262605a0eb0a510b6faf78e3ba26465f636d03cc1f7a6ed6b40d355
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:eee1aa054d4d15b23be293f31d3ea659e0ffc1d05174ef89a6c977dd3d4377cc
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9bf3a3e0fd573f91f03794eaf5291364a90392e5e7d4b5d4ed550ef4600ab826
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:cfa10bb6b461f302674f185b26c8d6efaaeba7f3f65d2cf05ae1f069aa2710d3
        version: 4.0.5
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.0
    - currentCSV: rhacs-operator.v4.1.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:8ffb6f0ff1bf016c3919c1eefc6c3db3d4a8fbe0e79919f72b4c281afe6d4b1c
          createdAt: "2024-01-13T18:55:22.011709+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 4.0.0 < 4.1.6'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:8ffb6f0ff1bf016c3919c1eefc6c3db3d4a8fbe0e79919f72b4c281afe6d4b1c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:a8ad0e76ce4cae9f9b36aecf125c4ed56fc2d776fe3df113d41bfc1c2f8b3602
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:01b9f9798d3ecbefe3da1ac2ac782e8e8b930e7eeceb82fe3473b5bfc1ccd40a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:364c107c34694ca33ac724de78db3e41ee55f9098d9ade0775a51b11f1533065
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:8760d6dc68c86f0c5b53d8f0bfada0df012f80bc8e0023ba3522fe6829a05a41
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:762ad216e79be0837e98873202b0072c7fd399925ee94bde57cc61c68cbd5f4e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:7ac504b7824d17bd7ac55b1e59c26be308506f315a0ab0d8c45d3b4934c0a16c
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:8547b76cf0533dfe6da2aafbbd063021bad4ff78b32b2dfed4a7607496e0a904
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:2ec62f3da93a1346ad215744257820377ccf4ead84e7471c52e348a31a431d3c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:bdbe08ef2d01b114702780fab76905e6eb1851684692ffa0a4c84604bda3ddb3
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:34694b9f4fe7fffc0c547be4e311579b5bb0c1fa92d8257bf6d1581ffd655c46
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b26133843687cc50e2c52d6067d8b3369b5cb28dfbfd15dd4b6062096673195a
        version: 4.1.6
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.1
    - currentCSV: rhacs-operator.v4.2.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4253eca84cbb0c5fc033507ddc2deef235b054c0ba944fa271ebbba21545b872
          createdAt: "2024-03-13T14:51:55.084122+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.1.0 < 4.2.5'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:2f326cabf03f780a3e6120995d5442641764641f62430d82e05edbe21b30c7b2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:59f1862c8ce188906499f08201ae05deeb47bd4fc5eab4be0386ca44ec065da8
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:ff27f03064633d6d08f8383649069e39c868def4aeca8f2622750397e049d0ec
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4253eca84cbb0c5fc033507ddc2deef235b054c0ba944fa271ebbba21545b872
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:12db245af3b8475c9b5680bb0035c566109819e05cfe62bd1dfdfb5d6ed25bea
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e2b07cb7d690477d78a2b8e1875545998d4bdb946f80dd0533a14187da99dbbf
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b82f7f654235688fc07fb037422a73e1106e27024d39a68ef7fac1422b69496d
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:3858ab936d4626a11bbf895d41bad181364ee5df3312f6dd29ebeb9b7d31ec77
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:e79a5e5681ebfe2d6349e2763ee0c1fa521b20319846958e402d23229b1f257b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:4b35f5f39865238a8e95d3cba7ebb5f15ccfbf6a2563c34f57d91a0b5c927066
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b5a15f2985b114bf9bc24a0d9942db5d0cb818e60fd15a2f9094aa00904cce77
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:08aebe6e8275d3314b6756d522ec568ccdfb9c52df98c9822f187f6c5a3af19c
        version: 4.2.5
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.2
    - currentCSV: rhacs-operator.v4.3.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:266cbbc270efafa26d5d15f3e333c96eaedee3b47854ff337ae1c572d34901ce
          createdAt: "2024-06-06T22:31:19.365878+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.2.0 < 4.3.8'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:30f9384244819da013358325cec364bb210b3b33b4cf9680698531fe50562aac
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:2c35cb6f518393d002edd2bf5f714c1d053cd0fab55f6152a2f35676e4979202
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:b0c9b3858fc0547dcb4eb3065dedd5bbcf1e1f6707a8ab812ed06882d4f6d6ad
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c36a557c9dc2ae4479c432933a9a4dbef38f2be53360a68a5b6befb614d01dac
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:5092c3fbb4a38c06a2f42d125dc718ef0e1005f304ad8046afdd2a5e7ccbc580
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:266cbbc270efafa26d5d15f3e333c96eaedee3b47854ff337ae1c572d34901ce
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:bdf9785bff51194636c6e8a518448c6d12a297bd31c4bb2e79d07084409c18b4
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:9fba889021a876ab627ff8c496e4b6c46c221c61142cd0c76daf33c89762e2c1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:2bb643651c8d51525223df3b2b675947174bbe9f1eaea8688e1fa83044cfa41f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b7eb17fbcf6c4a6e4205ad66f1ffd9b10a4634f6ef5045d407c266566b1f255d
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:10d0cc82b6eddd089f3a7af37b872c33248513d0b4d3f094b6f62c01f4460825
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6b55a25eb3a611c648d9be883828834592229c16f4166fd28ef40a25fc667061
        version: 4.3.8
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.3
    - currentCSV: rhacs-operator.v4.4.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:2b87569d7f4ef5e06c989b273c378e007c6d87b26eec41774ac1fc67dcd9e4e4
          createdAt: "2025-02-10T19:50:13.597164+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.3.0 < 4.4.8'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:69c12230a785619c765e3749a7d56f76dce9ce4f530c20e8a9387b99eb65627b
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:2b87569d7f4ef5e06c989b273c378e007c6d87b26eec41774ac1fc67dcd9e4e4
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:467d069ee957aea07882b83b60ae9fcc62ccca159f5d643aac13e531ccf7df88
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:763e7568704971cb4656727dc223374de13e82b4304dd3f5387ddc0f4e42b8b6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:0df4e95c7406aee7812d145cdd4d8c61cec32857fd2079dbc4244954a9d8288a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:183c75920ab8e7cb947cb966f1543e39b6fdb5e1bb0caa1b0cf5f89671f0328f
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:123c0108bd7a190dd2accfd21786600f787147f040e57fb5f840861e2caa441d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:65707fdad55767ff5598a8d3679fd0779a37f59501e58971b81bebcb23f1f9fc
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:76f9dc2e2ee5595c36530d97dec216e2dbefada2fe0747e3f6a3a725b75722ab
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:ba6e25a413c79131b966a097f72c36478933ea52deb55a62acda7011a96b3983
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:664a5dc40dc1fa06c47a11e13b0ab5e0612a981d7b69bcfb29422abf3d1a13b2
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:39cfd01236e905034f6645a73063427436c14e351e0e0bc735e73e62aa5a1c3c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:d6b4f8caf342b105c8df14c5c9180cb36123e08d34756ee8fe4f2f76c34f8064
        version: 4.4.8
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.4
    - currentCSV: rhacs-operator.v4.5.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a7dfbe3590668f91fe6694335b5a35b2fca07b4735348cc5202921755d2f654d
          createdAt: "2025-04-09T22:51:15.157672+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.4.0 < 4.5.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:d928600f75461465598a10de8df2495a275fd5232a92b078f609d1f5774eb778
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ed33e7396357f1db03a065573c020846a5872b12a21284439770686689222434
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:c2656b794ec4236e36f48f71bf26bdedd9de27fc4acef39deba2bdcfcddab03b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:5109b304eb9458f97af85c2ba63e08f51672fa3f9406226b7f357b86b5828dc0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:1817cf8d2c08b04391792321702ef53d16a4b1ca06459c00c9c053128f534358
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:5914548f6ce2160e92c5d96580ffba23cdf1ae940c1f73f3f6424d15c6e97c37
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:fde78d34ecd2944c7c16b4e823c76b3667bf6c5b468e9991128ecc4272ec0e2e
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a7dfbe3590668f91fe6694335b5a35b2fca07b4735348cc5202921755d2f654d
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0ff948b5517df3773cae2df02b708c348d8707409899b1de4108588e31601c0c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:cc4b329cc795752ecbb178d2e4efc152bde54b04181334eb5bd70304c3354cad
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dc7f23341c8b209f1846f29f889d00ef232fb58da9d5b4bd561f3933093b2786
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:41351e88688d23a443ad4f141caf0433b2c2789e6a1a85b4f5b36abeb5656bb1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:f07cba0738897e0e7ae74971be0470ce2a855657f133a6e1cdd8a7092f6151b0
        version: 4.5.9
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.5
    - currentCSV: rhacs-operator.v4.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:c4d434e1ff052508e5594d2b95dafa8726fd8adf5317754774c013a46de224d8
          createdAt: "2025-09-26T09:24:28.046251+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.5.0 < 4.6.10'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:90c47c6f95571cfcca04aa4e05a18befad75c1b44a6f3a055fcdfdab749d29c5
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:19db8c5d2425dcf18ae63b025f946fc46adaec0578e9505415cb585797069e95
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:16b61ca1b9ee4e0821e7fc82fe4def75ed22950e502730f5704ec4fe63bb2e59
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b630d53ad0b862151be7e14f0483ca5adac570216deae66f60e75af87a4dfd46
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:c4d434e1ff052508e5594d2b95dafa8726fd8adf5317754774c013a46de224d8
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:65793c05aec8085a53fab8bcf33a85192c17b46c91a7d86e0a457d1e3a113878
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:713e61d3c8b55de1edc9d7834d3e8576718e1327665f94a6b58178fa7496c0cc
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:8fad8ab2efdcbc99d9efa736a90cca6f236f0a9d45fdb355ae0b6b4dc42d77f0
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6d6b2696a12d49cf3403e338a0e028187473b6f43ef2b0bd72c7701200ac8e2e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:6da59c5b82625894f6efa3fa0bc5ea0378edd4f95cf42dee772e9c8a565dba81
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:ffe41363dc00b05b0daa0c6d16efb30e534086aa4e3d7ccc599c86d33813138c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:899da9c23000bb821bc9d544ebb56bcda4f3245ceee5b1b9c12d09f580b4b9a1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:b5cd08349931669055f03d21331499ef2ea04597f8a90fb201615d43000271bc
        version: 4.6.10
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.6
    - currentCSV: rhacs-operator.v4.7.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:414b03b9830f755e459127f3f926e275b5049eba0f199dd9e4975974800979e8
          createdAt: "2025-12-15T14:49:31.922833+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.6.0 < 4.7.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e7106f927313f2e0a08c85cf1ecfd1338d222f02dcac6c40846858a7e0c9c32b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:4e48a0441240e9531e1490079e19edd65526b726b87bc5613b3cc62e3f59c1be
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b6f7cc10247ab111a4aea231858b4f6fd17bfd4e4b4e4bd62873567ab875fb2e
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:ee14e7361bf64117af506a99906b3ae43a2b34c78f6e80a924a4419b047beadd
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:6981a243b8e6f095cbcabae3056012e9c60914ac42cd795c4163f4fce64a6aef
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:b3b498320cfcbf06da095f2427814d7f157ccec870383085be733ad7b6e6ccba
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:b55eae54dd5bc1bc58e9d52722a5830f8ee73bd59cdd0190147df8145f5ccedf
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8b24cb309fb5dad63d92605093b7e1cb659d9c0c1f31f6d5a223746f25dc5e23
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:414b03b9830f755e459127f3f926e275b5049eba0f199dd9e4975974800979e8
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:19b84b221ab9ce59fd0c8fbb4a713ee66304fd92822cebbcde0d77496ca82b0a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:7e1371e5e0b53983ca615309f44f6e4c124874ca1ae8a0fd4a59a470eb6a15df
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d45d0e810330d7c95c2e4dc2f1bc5c5613f06ec09b4061f2874c8837c73379b9
        version: 4.7.9
      entries:
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.7
    - currentCSV: rhacs-operator.v4.8.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa
          createdAt: "2025-12-17T14:22:57.176442+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.7.0 < 4.8.7'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8322bb5c9649b552aaaa62ba52067028a828c9dcb16c7580ec235e6b48b75e53
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:a58c6e952333169b21ffefdbd1acd3fff9c8d8dfac28795ee290756ca4394f5a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:fe1732a51218d60b1c5f6fa96357c0d50ce48ae6802da91ff594f7ef184effe9
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:3325c985bbe99f6717dae2dbcb6aedaadfa7eb5f403b109628356485a97f6cf7
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:82dc5edf423b3f9c377c9d2c80d1d19eaf15684872dc41d4baa9efddf082f350
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:440e0ac120a2a7e8dfcad6b53bb120667e293492d9bbcbe9d1ca0a6ed7b2dd62
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5e84e22ba7e21b8ec3e55283a53ea73a14f2bfd41eea5a80ca7a95360f799c52
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:24481e3ee1dab49893e7f5891e97e3287ec6f35105b6e927ce0acc7da24a6982
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:23150ab7d7d79cf1f5bc70f4f8e32da76ff06af123c395fb46b0be9e6ded7e1f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:fc03a63aada7586517d68c279fe59415b1fc0b3756ee87c5110f19c90712e903
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:142732544a7553f4eb203b314b3bdc76e5102d7ef3080f1fe36e8ddadffb9ca9
        version: 4.8.7
      entries:
      - name: rhacs-operator.v4.8.7
        version: 4.8.7
      - name: rhacs-operator.v4.8.6
        version: 4.8.6
      - name: rhacs-operator.v4.8.5
        version: 4.8.5
      - name: rhacs-operator.v4.8.4
        version: 4.8.4
      - name: rhacs-operator.v4.8.3
        version: 4.8.3
      - name: rhacs-operator.v4.8.2
        version: 4.8.2
      - name: rhacs-operator.v4.8.1
        version: 4.8.1
      - name: rhacs-operator.v4.8.0
        version: 4.8.0
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.8
    - currentCSV: rhacs-operator.v4.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
          createdAt: "2025-12-15T11:46:09.678434+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.8.0 < 4.9.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:4118ac0a9af4d6c38fcdde1236a963a47a41eb465d15a9a0bf90b30679a2b2f1
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e48f539bbe3b874be10dcc31ea61b074854a00d1bbccbbd3ec72b185345ba55e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        version: 4.9.2
      entries:
      - name: rhacs-operator.v4.9.2
        version: 4.9.2
      - name: rhacs-operator.v4.9.1
        version: 4.9.1
      - name: rhacs-operator.v4.9.0
        version: 4.9.0
      - name: rhacs-operator.v4.8.7
        version: 4.8.7
      - name: rhacs-operator.v4.8.6
        version: 4.8.6
      - name: rhacs-operator.v4.8.5
        version: 4.8.5
      - name: rhacs-operator.v4.8.4
        version: 4.8.4
      - name: rhacs-operator.v4.8.3
        version: 4.8.3
      - name: rhacs-operator.v4.8.2
        version: 4.8.2
      - name: rhacs-operator.v4.8.1
        version: 4.8.1
      - name: rhacs-operator.v4.8.0
        version: 4.8.0
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.9
    - currentCSV: rhacs-operator.v4.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
          createdAt: "2025-12-15T11:46:09.678434+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.8.0 < 4.9.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:4118ac0a9af4d6c38fcdde1236a963a47a41eb465d15a9a0bf90b30679a2b2f1
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e48f539bbe3b874be10dcc31ea61b074854a00d1bbccbbd3ec72b185345ba55e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        version: 4.9.2
      entries:
      - name: rhacs-operator.v4.9.2
        version: 4.9.2
      - name: rhacs-operator.v4.9.1
        version: 4.9.1
      - name: rhacs-operator.v4.9.0
        version: 4.9.0
      - name: rhacs-operator.v4.8.7
        version: 4.8.7
      - name: rhacs-operator.v4.8.6
        version: 4.8.6
      - name: rhacs-operator.v4.8.5
        version: 4.8.5
      - name: rhacs-operator.v4.8.4
        version: 4.8.4
      - name: rhacs-operator.v4.8.3
        version: 4.8.3
      - name: rhacs-operator.v4.8.2
        version: 4.8.2
      - name: rhacs-operator.v4.8.1
        version: 4.8.1
      - name: rhacs-operator.v4.8.0
        version: 4.8.0
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: stable
    defaultChannel: stable
    packageName: rhacs-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Datadog
      provider-url: ""
    name: datadog-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datadog-operator.v1.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadog"
                },
                "spec": {
                  "agent": {
                    "apm": {
                      "enabled": false
                    },
                    "log": {
                      "enabled": false,
                      "logsConfigContainerCollectAll": false
                    },
                    "process": {
                      "enabled": true,
                      "processCollection": false
                    },
                    "security": {
                      "compliance": {
                        "enabled": false
                      },
                      "runtime": {
                        "enabled": false
                      }
                    },
                    "systemProbe": {
                      "bpfDebugEnabled": false
                    }
                  },
                  "clusterAgent": {
                    "config": {
                      "admissionController": {
                        "enabled": false
                      },
                      "clusterChecksEnabled": false,
                      "externalMetrics": {
                        "enabled": false
                      }
                    },
                    "replicas": 2
                  },
                  "clusterChecksRunner": {
                    "replicas": 2
                  },
                  "clusterName": "\u003cCLUSTER_NAME\u003e",
                  "credentials": {
                    "apiKey": "\u003cDATADOG_API_KEY\u003e",
                    "appKey": "\u003cDATADOG_APP_KEY\u003e",
                    "token": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e"
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: registry.connect.redhat.com/datadog/operator@sha256:e1fb36e82b5438e3efd5768425651beadeb80e8698e0e0ca475d2a2e23386090
          description: Datadog provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with Datadog Operator.
          olm.skipRange: <1.0.4
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/DataDog/datadog-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgent Deployment with Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v1alpha1
          - description: DatadogAgent Deployment with the Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v2alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
        description: Datadog provides a modern monitoring and analytics platform.
          Gather metrics, logs and traces for full observability of your Kubernetes
          cluster with Datadog Operator.
        displayName: Datadog Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - registry.connect.redhat.com/datadog/operator-bundle@sha256:48b37460dd7245cf661009267c3353962f0f195efd6a3007c9cc70b51b91a9e3
        - registry.connect.redhat.com/datadog/operator@sha256:e1fb36e82b5438e3efd5768425651beadeb80e8698e0e0ca475d2a2e23386090
        version: 1.0.4
      entries:
      - name: datadog-operator.v1.0.4
        version: 1.0.4
      name: alpha
    - currentCSV: datadog-operator.v1.21.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgentProfile",
                "metadata": {
                  "name": "datadogagentprofile-sample"
                },
                "spec": {
                  "config": {
                    "override": {
                      "nodeAgent": {
                        "containers": {
                          "agent": {
                            "resources": {
                              "requests": {
                                "cpu": "256m"
                              }
                            }
                          }
                        }
                      }
                    }
                  },
                  "profileAffinity": {
                    "profileNodeAffinity": [
                      {
                        "key": "kubernetes.io/os",
                        "operator": "In",
                        "values": [
                          "linux"
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogDashboard",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "datadog-operator",
                    "app.kubernetes.io/instance": "datadogdashboard-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datadogdashboard",
                    "app.kubernetes.io/part-of": "datadog-operator"
                  },
                  "name": "datadogdashboard-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogGenericResource",
                "metadata": {
                  "name": "datadoggenericresource-notebook-sample"
                },
                "spec": {
                  "jsonSpec": "{\n  \"data\": {\n    \"attributes\": {\n      \"cells\": [\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"text\": \"## Some test markdown\\n\\n```js\\nvar x, y;\\nx = 5;\\ny = 6;\\n```\",\n              \"type\": \"markdown\"\n            }\n          },\n          \"type\": \"notebook_cells\"\n        },\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"requests\": [\n                {\n                  \"display_type\": \"line\",\n                  \"q\": \"avg:system.load.1{*}\",\n                  \"style\": {\n                    \"line_type\": \"solid\",\n                    \"line_width\": \"normal\",\n                    \"palette\": \"dog_classic\"\n                  }\n                }\n              ],\n              \"show_legend\": true,\n              \"type\": \"timeseries\",\n              \"yaxis\": {\n                \"scale\": \"linear\"\n              }\n            },\n            \"graph_size\": \"m\",\n            \"split_by\": {\n              \"keys\": [],\n              \"tags\": []\n            },\n            \"time\": null\n          },\n          \"type\": \"notebook_cells\"\n        }\n      ],\n      \"name\": \"Example-Notebook\",\n      \"status\": \"published\",\n      \"time\": {\n        \"live_span\": \"1h\"\n      }\n    },\n    \"type\": \"notebooks\"\n  }\n}",
                  "type": "notebook"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogPodAutoscaler",
                "metadata": {
                  "name": "datadogpodautoscaler-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogSLO",
                "metadata": {
                  "name": "datadogslo-sample"
                },
                "spec": {
                  "description": "This is an example metric SLO from datadog-operator",
                  "name": "datadogslo-sample",
                  "query": {
                    "denominator": "sum:requests.total{service:example,env:prod}.as_count()",
                    "numerator": "sum:requests.success{service:example,env:prod}.as_count()"
                  },
                  "tags": [
                    "service:example",
                    "env:prod"
                  ],
                  "targetThreshold": "99.9",
                  "timeframe": "7d",
                  "type": "metric"
                }
              },
              {
                "apiVersion": "datadoghq.com/v2alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadogagent-sample"
                },
                "spec": {
                  "features": {
                    "admissionController": {
                      "enabled": false
                    },
                    "apm": {
                      "enabled": false
                    },
                    "clusterChecks": {
                      "enabled": true,
                      "useClusterChecksRunners": true
                    },
                    "liveProcessCollection": {
                      "enabled": false
                    },
                    "logCollection": {
                      "containerCollectAll": true,
                      "enabled": true
                    }
                  },
                  "global": {
                    "clusterAgentToken": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e",
                    "clusterName": "\u003cCLUSTER_NAME\u003e",
                    "credentials": {
                      "apiKey": "\u003cDATADOG_API_KEY\u003e",
                      "appKey": "\u003cDATADOG_APP_KEY\u003e"
                    },
                    "criSocketPath": "/var/run/crio/crio.sock",
                    "kubelet": {
                      "tlsVerify": false
                    }
                  },
                  "override": {
                    "clusterAgent": {
                      "containers": {
                        "cluster-agent": {
                          "securityContext": {
                            "readOnlyRootFilesystem": false
                          }
                        }
                      },
                      "replicas": 2,
                      "serviceAccountName": "datadog-agent-scc"
                    },
                    "clusterChecksRunner": {
                      "replicas": 2
                    },
                    "nodeAgent": {
                      "hostNetwork": true,
                      "securityContext": {
                        "runAsUser": 0,
                        "seLinuxOptions": {
                          "level": "s0",
                          "role": "system_r",
                          "type": "spc_t",
                          "user": "system_u"
                        }
                      },
                      "serviceAccountName": "datadog-agent-scc"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: registry.connect.redhat.com/datadog/operator@sha256:4dc5129abae9b2ee0a82336f9aa943cf25e392488ddf829415b2d3e205c9f03a
          createdAt: "2025-12-16 22:23:39"
          description: |-
            Datadog provides a modern monitoring and analytics platform. Gather metrics, logs and traces for full observability of your Kubernetes cluster with Datadog Operator.

            **WARNING**: Starting from version `1.21.0`, the Datadog Operator DatadogAgent controller only watches by default the namespace where it is installed. This means your `DatadogAgent` custom resource must be created in the same namespace as the Operator. This can be changed by removing the `DD_AGENT_WATCH_NAMESPACE` environment variable from the Datadog Operator deployment inside the ClusterServiceVersion YAML.
          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.skipRange: '>=1.7.0 <1.21.0'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/DataDog/datadog-operator
          support: Datadog, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgentInternal is the Schema for the datadogagentinternals
              API
            displayName: Datadog Agent Internal
            kind: DatadogAgentInternal
            name: datadogagentinternals.datadoghq.com
            version: v1alpha1
          - description: DatadogAgentProfile is the Schema for the datadogagentprofiles
              API
            displayName: Datadog Agent Profile
            kind: DatadogAgentProfile
            name: datadogagentprofiles.datadoghq.com
            version: v1alpha1
          - description: DatadogAgent Deployment with the Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v2alpha1
          - description: DatadogDashboard is the Schema for the datadogdashboards
              API
            displayName: Datadog Dashboard
            kind: DatadogDashboard
            name: datadogdashboards.datadoghq.com
            version: v1alpha1
          - kind: DatadogGenericResource
            name: datadoggenericresources.datadoghq.com
            version: v1alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha2
          - description: DatadogSLO allows a user to define and manage datadog SLOs
              from Kubernetes cluster.
            displayName: Datadog SLO
            kind: DatadogSLO
            name: datadogslos.datadoghq.com
            version: v1alpha1
        description: |-
          Datadog provides a modern monitoring and analytics platform. Gather metrics, logs and traces for full observability of your Kubernetes cluster with Datadog Operator.

          **WARNING**: Starting from version `1.21.0`, the Datadog Operator DatadogAgent controller only watches by default the namespace where it is installed. This means your `DatadogAgent` custom resource must be created in the same namespace as the Operator. This can be changed by removing the `DD_AGENT_WATCH_NAMESPACE` environment variable from the Datadog Operator deployment inside the ClusterServiceVersion YAML.
        displayName: Datadog Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - registry.connect.redhat.com/datadog/operator-bundle@sha256:2456e6a9fc773f515eafb5e6c3d11aa7c65e07f6cf8324d32630895d4800009e
        - registry.connect.redhat.com/datadog/operator@sha256:4dc5129abae9b2ee0a82336f9aa943cf25e392488ddf829415b2d3e205c9f03a
        version: 1.21.0
      entries:
      - name: datadog-operator.v1.21.0
        version: 1.21.0
      - name: datadog-operator.v1.20.0
        version: 1.20.0
      - name: datadog-operator.v1.19.1
        version: 1.19.1
      - name: datadog-operator.v1.18.0
        version: 1.18.0
      - name: datadog-operator.v1.17.0
        version: 1.17.0
      - name: datadog-operator.v1.16.0
        version: 1.16.0
      - name: datadog-operator.v1.15.1
        version: 1.15.1
      - name: datadog-operator.v1.14.0
        version: 1.14.0
      - name: datadog-operator.v1.13.0
        version: 1.13.0
      - name: datadog-operator.v1.12.1
        version: 1.12.1
      - name: datadog-operator.v1.11.1
        version: 1.11.1
      - name: datadog-operator.v1.10.0
        version: 1.10.0
      - name: datadog-operator.v1.9.0
        version: 1.9.0
      - name: datadog-operator.v1.8.0
        version: 1.8.0
      - name: datadog-operator.v1.7.0
        version: 1.7.0
      - name: datadog-operator.v1.6.0
        version: 1.6.0
      - name: datadog-operator.v1.5.0
        version: 1.5.0
      - name: datadog-operator.v1.4.0
        version: 1.4.0
      - name: datadog-operator.v1.3.0
        version: 1.3.0
      - name: datadog-operator.v1.2.1
        version: 1.2.1
      name: stable
    defaultChannel: stable
    packageName: datadog-operator-certified
    provider:
      name: Datadog
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cryostat-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cryostat-operator.v4.1.0-13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.cryostat.io/v1beta2",
                "kind": "Cryostat",
                "metadata": {
                  "name": "cryostat-sample"
                },
                "spec": {
                  "enableCertManager": true,
                  "eventTemplates": [],
                  "networkPolicies": {},
                  "reportOptions": {
                    "replicas": 0
                  },
                  "trustedCertSecrets": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring, Developer Tools
          containerImage: registry.redhat.io/cryostat/cryostat-rhel9-operator@sha256:d2ce6200997cf6b4894b556d8d149212df3408cd63004aa85d91beb853bac153
          createdAt: "2025-12-17T19:33:36Z"
          description: JVM monitoring and profiling tool
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=2.0.0 <4.1.0'
          olm.substitutesFor: cryostat-operator.v4.1.0
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "operator.cryostat.io/v1beta2",
              "kind": "Cryostat",
              "metadata": {
                "name": "cryostat-sample"
              },
              "spec": {
                "enableCertManager": true,
                "reportOptions": {
                  "replicas": 0
                }
              }
            }
          operators.openshift.io/valid-subscription: '["Red Hat build of OpenJDK"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/cryostatio/cryostat-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cryostat allows you to install Cryostat for a single namespace,
              or multiple namespaces. It contains configuration options for controlling
              the Deployment of the Cryostat application and its related components.
              A Cryostat instance must be created to instruct the operator to deploy
              the Cryostat application.
            displayName: Cryostat
            kind: Cryostat
            name: cryostats.operator.cryostat.io
            version: v1beta2
          - description: Cryostat allows you to install Cryostat for a single namespace.
              It contains configuration options for controlling the Deployment of
              the Cryostat application and its related components. A Cryostat instance
              must be created to instruct the operator to deploy the Cryostat application.
            displayName: Cryostat
            kind: Cryostat
            name: cryostats.operator.cryostat.io
            version: v1beta1
        description: |
          The Red Hat build of Cryostat provides a cloud-based solution for interacting with the JDK Flight Recorder already present in OpenJDK 11+ JVMs. With Cryostat, users can remotely start, stop, retrieve, and even analyze JFR event data, providing the capability to easily take advantage of Flight Recorder's extremely low runtime cost and overhead and the flexibility to monitor applications and analyze recording data without transferring data outside of the cluster the application runs within.
          ##Prerequisites
          Cryostat requires [cert-manager](https://cert-manager.io/) to run. If not already installed in your cluster, please [install](https://cert-manager.io/docs/installation/) it using your preferred method.
          When running on Kubernetes, the operator also requires [Ingress configurations](https://github.com/cryostatio/cryostat-operator/blob/v4.0.0/docs/config.md#network-options) for each of its services to make them available outside of the cluster. The user is responsible for providing the hostnames for each Ingress.
        displayName: Red Hat build of Cryostat
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - flightrecorder
        - java
        - jdk
        - jfr
        - jmc
        - missioncontrol
        - monitoring
        - profiling
        - diagnostic
        links:
        - name: Upstream Project
          url: https://github.com/cryostatio/cryostat
        - name: Website
          url: https://cryostat.io/
        maintainers:
        - email: cryostat-development@googlegroups.com
          name: The Cryostat Authors
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/ubi9/nginx-124@sha256:f3a04b52db496c383a00252832d8809baff203145a53c35cbb71c3ab45cd8a10
        - registry.redhat.io/cryostat/cryostat-agent-init-rhel9@sha256:94ebd8d92359c1cfa18f9d3ffb08df02af53253c8b51d578b89c644806bbbdc4
        - registry.redhat.io/cryostat/cryostat-grafana-dashboard-rhel9@sha256:6fa1ef9bc8477162deda942ba4ca3f79b87928ad93ebefd4cb25eeeae0a0b33b
        - registry.redhat.io/cryostat/cryostat-rhel9-operator@sha256:d2ce6200997cf6b4894b556d8d149212df3408cd63004aa85d91beb853bac153
        - registry.redhat.io/cryostat/cryostat-rhel9@sha256:e66a567ab95fee5dc4cbee0917a46bd45010d691d9e12c553c82275711cf6705
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-rhel9-operator@sha256:a4e12329119133ab09754489d29110f13f1793b01e30b5d19b9ab0b9525b7360
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:5555fb6b7e8907a52f54fd93a19105e36fded2407c344d938dbdc0723b03baed
        - registry.redhat.io/cryostat/cryostat-db-rhel9@sha256:1715bf1197a9a95f8f54ab02ca167448c1390b385c901645b062d066f0ca5459
        - registry.redhat.io/cryostat/cryostat-operator-bundle@sha256:b634b9e8b54b89b9dc2119961b63d0288fdad007a1c48cc12b05595ad97fee83
        - registry.redhat.io/cryostat/cryostat-reports-rhel9@sha256:f7ac0c925c4728e482efc5f553c63a08e2dd453927e5eae606f83731d889c6a1
        - registry.redhat.io/cryostat/cryostat-openshift-console-plugin-rhel9@sha256:d64f56fcaa6c764edb1bb43c8a71af43c27aba56e36c8bac812c40a725a53ddc
        - registry.redhat.io/cryostat/cryostat-storage-rhel9@sha256:89bb337dd42d319e1fee74ac7650f30594461b7c56caa8c52f2628372e19ee3d
        - registry.redhat.io/cryostat/jfr-datasource-rhel9@sha256:b6c08667d49f70c3ba26a09a62a6224bf8c5d579be1988c0caca5212fe7d3d7a
        version: 4.1.0+13
      entries:
      - name: cryostat-operator.v4.1.0-13
        version: 4.1.0+13
      - name: cryostat-operator.v4.1.0
        version: 4.1.0
      - name: cryostat-operator.v4.0.3-3
        version: 4.0.3+3
      - name: cryostat-operator.v4.0.3
        version: 4.0.3
      - name: cryostat-operator.v4.0.2-4
        version: 4.0.2+4
      - name: cryostat-operator.v4.0.2
        version: 4.0.2
      - name: cryostat-operator.v4.0.1
        version: 4.0.1
      - name: cryostat-operator.v4.0.1-5
        version: 4.0.1+5
      - name: cryostat-operator.v4.0.1-4
        version: 4.0.1+4
      - name: cryostat-operator.v4.0.1-3
        version: 4.0.1+3
      - name: cryostat-operator.v4.0.1-2
        version: 4.0.1+2
      - name: cryostat-operator.v4.0.0-9
        version: 4.0.0+9
      - name: cryostat-operator.v4.0.0
        version: 4.0.0
      - name: cryostat-operator.v4.0.0-11
        version: 4.0.0+11
      - name: cryostat-operator.v4.0.0-10
        version: 4.0.0+10
      - name: cryostat-operator.v3.0.1-7
        version: 3.0.1+7
      - name: cryostat-operator.v3.0.1-9
        version: 3.0.1+9
      - name: cryostat-operator.v3.0.1-8
        version: 3.0.1+8
      - name: cryostat-operator.v3.0.1
        version: 3.0.1
      - name: cryostat-operator.v3.0.1-6
        version: 3.0.1+6
      - name: cryostat-operator.v3.0.1-5
        version: 3.0.1+5
      - name: cryostat-operator.v3.0.1-3
        version: 3.0.1+3
      - name: cryostat-operator.v3.0.1-13
        version: 3.0.1+13
      - name: cryostat-operator.v3.0.1-12
        version: 3.0.1+12
      - name: cryostat-operator.v3.0.1-11
        version: 3.0.1+11
      - name: cryostat-operator.v3.0.1-10
        version: 3.0.1+10
      - name: cryostat-operator.v3.0.0-6
        version: 3.0.0+6
      - name: cryostat-operator.v3.0.0-8
        version: 3.0.0+8
      - name: cryostat-operator.v3.0.0-12
        version: 3.0.0+12
      - name: cryostat-operator.v3.0.0
        version: 3.0.0
      - name: cryostat-operator.v2.4.0
        version: 2.4.0
      - name: cryostat-operator.v2.4.0-8
        version: 2.4.0+8
      - name: cryostat-operator.v2.4.0-7
        version: 2.4.0+7
      - name: cryostat-operator.v2.4.0-6
        version: 2.4.0+6
      - name: cryostat-operator.v2.4.0-4
        version: 2.4.0+4
      - name: cryostat-operator.v2.4.0-3
        version: 2.4.0+3
      - name: cryostat-operator.v2.3.1-6
        version: 2.3.1+6
      - name: cryostat-operator.v2.3.1-8
        version: 2.3.1+8
      - name: cryostat-operator.v2.3.1-9
        version: 2.3.1+9
      - name: cryostat-operator.v2.3.1
        version: 2.3.1
      - name: cryostat-operator.v2.3.0
        version: 2.3.0
      - name: cryostat-operator.v2.3.0-6
        version: 2.3.0+6
      - name: cryostat-operator.v2.2.1-14
        version: 2.2.1+14
      - name: cryostat-operator.v2.2.1-8
        version: 2.2.1+8
      - name: cryostat-operator.v2.2.1-5
        version: 2.2.1+5
      - name: cryostat-operator.v2.2.1-13
        version: 2.2.1+13
      - name: cryostat-operator.v2.2.1-12
        version: 2.2.1+12
      - name: cryostat-operator.v2.2.1-10
        version: 2.2.1+10
      - name: cryostat-operator.v2.2.1
        version: 2.2.1
      - name: cryostat-operator.v2.2.0
        version: 2.2.0
      - name: cryostat-operator.v2.1.1-2.1659469835.p
        version: 2.1.1+2.1659469835.p
      - name: cryostat-operator.v2.1.1-2.1655334614.p
        version: 2.1.1+2.1655334614.p
      - name: cryostat-operator.v2.1.1
        version: 2.1.1
      - name: cryostat-operator.v2.1.0
        version: 2.1.0
      name: stable
    defaultChannel: stable
    packageName: cryostat-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-spark-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: spark-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/spark-k8s-operator@sha256:3fa6f5fc9c9a7fa217bfcdc03aed1896e52edbc60b8173404eb102a4e099a83b
          description: Stackable Operator for Apache Spark
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/spark-k8s-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for SparkApplicationSpec via
              `CustomResource`
            displayName: sparkapplications.spark.stackable.tech
            kind: SparkApplication
            name: sparkapplications.spark.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for SparkHistoryServerSpec via
              `CustomResource`
            displayName: sparkhistoryservers.spark.stackable.tech
            kind: SparkHistoryServer
            name: sparkhistoryservers.spark.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for SparkConnectServerSpec via
              `CustomResource`
            displayName: sparkconnectservers.spark.stackable.tech
            kind: SparkConnectServer
            name: sparkconnectservers.spark.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Spark
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - spark-k8s
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/spark-k8s-operator@sha256:3fa6f5fc9c9a7fa217bfcdc03aed1896e52edbc60b8173404eb102a4e099a83b
        - registry.connect.redhat.com/stackable/stackable-apache-spark-k8s-operator@sha256:211d435f78730b3fa265df3f6a1a9c4649b060f1bad2b1709c935740deb94057
        version: 25.11.0
      entries:
      - name: spark-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-spark-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-kafka-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-kafka-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/kafka-controller:1.3.0
          createdAt: "2025-11-29T05:27:24Z"
          description: AWS Kafka controller is a service controller for managing Kafka
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster represents the state of an AWS kafka Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.kafka.services.k8s.aws
            version: v1alpha1
          - description: Configuration represents the state of an AWS kafka Configuration
              resource.
            displayName: Configuration
            kind: Configuration
            name: configurations.kafka.services.k8s.aws
            version: v1alpha1
          - description: ServerlessCluster represents the state of an AWS kafka ServerlessCluster
              resource.
            displayName: ServerlessCluster
            kind: ServerlessCluster
            name: serverlessclusters.kafka.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Kafka resources in AWS from within your Kubernetes cluster.

          **About Amazon Kafka**

          Amazon Managed Streaming for Apache Kafka (Amazon MSK) is a fully managed AWS streaming data service makes it easy for you to build and run applications that use Apache Kafka to process streaming data without needing to become an expert in operating Apache Kafka clusters. Amazon MSK manages the provisioning, configuration, and maintenance of Apache Kafka clusters and Apache ZooKeeper nodes for you. Amazon MSK also shows key Apache Kafka performance metrics in the AWS Console.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Kafka Developer Resources
          url: https://aws.amazon.com/msk/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: kafka maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/kafka-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-kafka-controller@sha256:adf201fadd82f900d371ba5dd17dca2cc205cf2e8f796af191cf45c73a1745b3
        version: 1.3.0
      entries:
      - name: ack-kafka-controller.v1.3.0
        version: 1.3.0
      - name: ack-kafka-controller.v1.2.2
        version: 1.2.2
      - name: ack-kafka-controller.v1.2.1
        version: 1.2.1
      - name: ack-kafka-controller.v1.2.0
        version: 1.2.0
      - name: ack-kafka-controller.v1.1.3
        version: 1.1.3
      - name: ack-kafka-controller.v1.1.2
        version: 1.1.2
      - name: ack-kafka-controller.v1.1.1
        version: 1.1.1
      - name: ack-kafka-controller.v1.1.0
        version: 1.1.0
      - name: ack-kafka-controller.v1.0.14
        version: 1.0.14
      - name: ack-kafka-controller.v1.0.13
        version: 1.0.13
      - name: ack-kafka-controller.v1.0.12
        version: 1.0.12
      - name: ack-kafka-controller.v1.0.11
        version: 1.0.11
      - name: ack-kafka-controller.v1.0.10
        version: 1.0.10
      - name: ack-kafka-controller.v1.0.8
        version: 1.0.8
      - name: ack-kafka-controller.v1.0.7
        version: 1.0.7
      - name: ack-kafka-controller.v1.0.6
        version: 1.0.6
      - name: ack-kafka-controller.v1.0.5
        version: 1.0.5
      - name: ack-kafka-controller.v1.0.4
        version: 1.0.4
      - name: ack-kafka-controller.v1.0.3
        version: 1.0.3
      - name: ack-kafka-controller.v1.0.2
        version: 1.0.2
      - name: ack-kafka-controller.v1.0.1
        version: 1.0.1
      - name: ack-kafka-controller.v1.0.0
        version: 1.0.0
      - name: ack-kafka-controller.v0.0.14
        version: 0.0.14
      - name: ack-kafka-controller.v0.0.12
        version: 0.0.12
      - name: ack-kafka-controller.v0.0.11
        version: 0.0.11
      - name: ack-kafka-controller.v0.0.10
        version: 0.0.10
      - name: ack-kafka-controller.v0.0.9
        version: 0.0.9
      - name: ack-kafka-controller.v0.0.8
        version: 0.0.8
      - name: ack-kafka-controller.v0.0.7
        version: 0.0.7
      - name: ack-kafka-controller.v0.0.6
        version: 0.0.6
      - name: ack-kafka-controller.v0.0.5
        version: 0.0.5
      - name: ack-kafka-controller.v0.0.4
        version: 0.0.4
      - name: ack-kafka-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-kafka-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: gitwebhook-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitwebhook-operator.v0.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GitWebhook",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "gitwebhook-operator",
                    "app.kubernetes.io/instance": "gitwebhook-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "gitwebhook",
                    "app.kubernetes.io/part-of": "gitwebhook-operator"
                  },
                  "name": "gitwebhook-sample"
                },
                "spec": null
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/redhat-cop/gitwebhook-operator@sha256:2810d75eebb24069dbbedf6a82285136c6f16b4cc58b59f1b0fbdc38560cf8a8
          createdAt: "2024-05-10T18:17:13Z"
          description: An operator to create git webhooks declaratively
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: gitwebhook-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/gitwebhook-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitWebhook is the Schema for the gitwebhooks API
            displayName: Git Webhook
            kind: GitWebhook
            name: gitwebhooks.redhatcop.redhat.io
            version: v1alpha1
        description: "This operator automates the setting up of git webhooks. Its
          main purpose is to stream line the configuration of operators such as Tekton
          or ArgoCD which rely on git webhooks for some of their functionalities.\n\n##
          The GitWebhook CRD\n \nA CRD is provided by this operator to create a git
          web hook, here is an example for github\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          GitWebhook\nmetadata:\n  name: gitwebhook-github\nspec:\n  gitHub:\n    gitServerCredentials:\n
          \     name: github-pat\n  repositoryOwner: ${repo_owner}\n  ownerType: user\n
          \ repositoryName: ${repo_name}\n  webhookURL: https://hellowebhook.com\n
          \ insecureSSL: false\n  webhookSecret:\n    name: webhook-secret\n  events:\n
          \   - push  \n  contentType: json\n  active: true  \n```    \n\nhere is
          an explanation of each field:\n\n- `gihub` specifies how to connect to the
          git api server. It also requires a local reference to a secret (in the same
          namespace) containing a key `token` with a valid github token to be used
          to authenticate. A similar `gitLab` section exists when connecting to gitlab.
          Only one of `gitLab` or `gitHub` can be defined. \n- `repositoryOwner` and
          `repositoryName` identify the repository for which we want to receive events.\n-
          `ownerType` can have two values: `user` and `organization` and identifies
          the kind of owner.\n- `webhookURL` is the URL for to be called.\n - `insecureSSL`
          defines whether the target URL certificate should be validated (default
          `false`). \n- `webhookSecret` defines a local reference to a secret containing
          the `secret` key. The value is a shared secret between the webhook caller
          and the received for farther validation or identification of the caller.\n-
          `events` is the list of the repo-level events that the webhook should generate.
          The list of valid events for github can be found [here](https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads).
          The list of valid events for gitlab can be found [here](https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html).\n
          - `contentType` defines the format of the webhook payload (default `json`)
          (github).\n - `active` whether the webhook should be turned on (default
          `true`) (github).\n - `pushEventBranchFilter` a regular expression to filter
          from which branches push events should be generated (gitlab only).\n\n##
          Security Considerations\n\nThis operator does not own credentials for the
          git server, but instead always allocate a new connection based on the credentials
          referenced in the CR and every reconcile cycle. As a result there is no
          risk of security escalation or credential leaking between tenants of a cluster
          using this operator. On the other hand it is the responsibility of the namespace
          owners or the platform owner to ensure that valid git credentials are always
          available in the namespace where the GitWebhook CRs need to defined.\n\n##
          Current support\n\nCurrently this operator support creating repo-level webhooks
          for github and gitlab. Potentially this operator could be extended to support
          org-level webhook or other git systems. Contributions are welcome.  "
        displayName: GitWebhook operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - webhook
        - github
        - gitlab
        links:
        - name: GitWbehook Operator
          url: https://github.com/redhat-cop/gitwebhook-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/gitwebhook-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d99a8d144816b951a67648c12c0b988936ccd25cf3754f3cd85ab8c01592248f
        - quay.io/community-operator-pipeline-prod/gitwebhook-operator@sha256:2d33e4f4f4b607ee2006481efc7ad9341049085ef988777d23e586f7406a5109
        - quay.io/redhat-cop/gitwebhook-operator@sha256:2810d75eebb24069dbbedf6a82285136c6f16b4cc58b59f1b0fbdc38560cf8a8
        version: 0.1.2
      entries:
      - name: gitwebhook-operator.v0.1.2
        version: 0.1.2
      - name: gitwebhook-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: gitwebhook-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-route53-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-route53-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/route53-controller:1.2.0
          createdAt: "2025-11-29T03:54:20Z"
          description: AWS Route53 controller is a service controller for managing
            Route53 resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HealthCheck represents the state of an AWS route53 HealthCheck
              resource.
            displayName: HealthCheck
            kind: HealthCheck
            name: healthchecks.route53.services.k8s.aws
            version: v1alpha1
          - description: HostedZone represents the state of an AWS route53 HostedZone
              resource.
            displayName: HostedZone
            kind: HostedZone
            name: hostedzones.route53.services.k8s.aws
            version: v1alpha1
          - description: RecordSet represents the state of an AWS route53 RecordSet
              resource.
            displayName: RecordSet
            kind: RecordSet
            name: recordsets.route53.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Route53 resources in AWS from within your Kubernetes cluster.

          **About Amazon Route53**

          Amazon Route 53 is a highly available and scalable Domain Name System (DNS) web service. You can use Route 53 to perform three main functions in any combination: domain registration, DNS routing, and health checking.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Route53
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - route53
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Route53 Developer Resources
          url: https://docs.aws.amazon.com/route53/index.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: eks maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/route53-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-route53-controller@sha256:a584b4a23fc60948a8d6425922a484459daaa711766190bd85ae500c1407dbd1
        version: 1.2.0
      entries:
      - name: ack-route53-controller.v1.2.0
        version: 1.2.0
      - name: ack-route53-controller.v1.1.2
        version: 1.1.2
      - name: ack-route53-controller.v1.1.1
        version: 1.1.1
      - name: ack-route53-controller.v1.1.0
        version: 1.1.0
      - name: ack-route53-controller.v1.0.6
        version: 1.0.6
      - name: ack-route53-controller.v1.0.5
        version: 1.0.5
      - name: ack-route53-controller.v1.0.3
        version: 1.0.3
      - name: ack-route53-controller.v1.0.2
        version: 1.0.2
      - name: ack-route53-controller.v0.1.0
        version: 0.1.0
      - name: ack-route53-controller.v0.0.28
        version: 0.0.28
      - name: ack-route53-controller.v0.0.27
        version: 0.0.27
      - name: ack-route53-controller.v0.0.26
        version: 0.0.26
      - name: ack-route53-controller.v0.0.25
        version: 0.0.25
      - name: ack-route53-controller.v0.0.24
        version: 0.0.24
      - name: ack-route53-controller.v0.0.23
        version: 0.0.23
      - name: ack-route53-controller.v0.0.22
        version: 0.0.22
      - name: ack-route53-controller.v0.0.20
        version: 0.0.20
      - name: ack-route53-controller.v0.0.19
        version: 0.0.19
      - name: ack-route53-controller.v0.0.18
        version: 0.0.18
      - name: ack-route53-controller.v0.0.17
        version: 0.0.17
      - name: ack-route53-controller.v0.0.16
        version: 0.0.16
      - name: ack-route53-controller.v0.0.15
        version: 0.0.15
      - name: ack-route53-controller.v0.0.14
        version: 0.0.14
      - name: ack-route53-controller.v0.0.13
        version: 0.0.13
      - name: ack-route53-controller.v0.0.9
        version: 0.0.9
      - name: ack-route53-controller.v0.0.6
        version: 0.0.6
      - name: ack-route53-controller.v0.0.4
        version: 0.0.4
      - name: ack-route53-controller.v0.0.3
        version: 0.0.3
      - name: ack-route53-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-route53-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Silicom Ltd.
      provider-url: http://www.silicom-usa.com
    name: silicom-sts-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: silicom-sts-operator.v0.0.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "gm-1",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    }
                  ],
                  "mode": "T-GM.8275.1",
                  "namespace": "openshift-operators",
                  "nodeSelector": {
                    "sts.silicom.com/config": "gm-1"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "bc-1"
                },
                "spec": {
                  "aprLevel": 0,
                  "domainNumber": 24,
                  "esmcMode": 1,
                  "forwardable": 0,
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Slave",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "holdoff": 500,
                      "ipv4": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    }
                  ],
                  "mode": "T-TBC.8275.1",
                  "mode10MHz": 2,
                  "modePPS": 2,
                  "namespace": "openshift-operators",
                  "nodeSelector": {
                    "sts.silicom.com/config": "bc-1"
                  },
                  "phyLedsCtl": 0,
                  "priority2": 128,
                  "src10MHz": 1,
                  "srcPPS": 1,
                  "syncOption": 1,
                  "synceCpu": 10,
                  "synceRecClkPort": 0,
                  "tracePtpMsg": -1,
                  "twoStep": 0
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsNode",
                "metadata": {
                  "name": "worker2"
                },
                "spec": null,
                "status": {
                  "ethInterfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "pciAddr": "02:00.0",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "pciAddr": "02:00.1",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "pciAddr": "02:00.2",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f3",
                      "ethPort": 3,
                      "pciAddr": "02:00.3",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f4",
                      "ethPort": 4,
                      "pciAddr": "02:00.4",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f5",
                      "ethPort": 5,
                      "pciAddr": "02:00.5",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f6",
                      "ethPort": 6,
                      "pciAddr": "02:00.6",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f7",
                      "ethPort": 7,
                      "pciAddr": "02:00.7",
                      "status": "down"
                    }
                  ],
                  "gpsStatus": {
                    "active": 0,
                    "device": "",
                    "lat": "",
                    "lon": "",
                    "mode": 0,
                    "time": "2021-12-01T09:57:10.968Z"
                  },
                  "tsyncStatus": {
                    "mode": "PTP Master Mode",
                    "status": "Normal Status",
                    "time": "Wed, 01 Dec 2021 09:57:10 UTC"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsOperatorConfig",
                "metadata": {
                  "name": "sts-operator-config",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "images": null,
                  "sro": null
                }
              }
            ]
          capabilities: Basic Install
          categories: Drivers and plugins
          certified: "false"
          containerImage: quay.io/silicom/sts-operator:0.0.6
          createdAt: 2021-11-17T10:21:24 CET
          description: |
            This Operator is a Kubernetes custom controller whose goal
            is to serve the installation and lifecycle management of
            Silicom STS device plugins for Kubernetes.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io.bundle.channels.v1: alpha
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/silicomdk/sts-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StsConfig is the Schema for the stsconfigs API
            displayName: Sts Config
            kind: StsConfig
            name: stsconfigs.sts.silicom.com
            version: v1alpha1
          - description: StsNode is the Schema for the stsnodes API
            displayName: Sts Node
            kind: StsNode
            name: stsnodes.sts.silicom.com
            version: v1alpha1
          - description: StsOperatorConfig is the Schema for the stsoperatorconfigs
              API
            displayName: Sts Operator Config
            kind: StsOperatorConfig
            name: stsoperatorconfigs.sts.silicom.com
            version: v1alpha1
        description: |
          Silicom STS line card for 4G and 5G NIC enable real-time data transmission
          with high timing accuracy at the lowest cost to power 5G DRAN and CRAN edge
          deployments.

          * Support 1588/PTP over IPv4 / IPV6, IEEE1588v2
          * Support SyncE /ITU-T G.8262
          * T-BC/T-TSC Boundary Clock and TSC Slave Clock /G.8273.2
          * T-GM Grand Master /G.8273.1 per G.8275.1 PTP Profile
          * PRTC Primary Reference Time Clock Class B/G.8272
          * T-TC Transparent Clock /G.8273.3
          * 1588 Software Stack and Servo Software in x86
          * [Silicom STS2 Card](https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/p410g8ts81-timesync-server-adapter)

          ### Prequisites:
          * [NFD Operator](https://operatorhub.io/operator/nfd-operator "NFD operator needed for the discovery of STS cards").
          * [SRO Operator](https://github.com/openshift/special-resource-operator)
        displayName: Silicom STS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sts
        - silicom
        - ptp
        links:
        - name: GitHub Repository
          url: https://github.com/silicomDK/sts-operator
        - name: Github SRO Helm Charts
          url: https://github.com/silicomDK/sts2-charts
        - name: Silicom Ltd.
          url: http://www.silicom-usa.com
        maintainers:
        - email: rmr@silicom.dk
          name: Ryan M. Raasch
        maturity: beta
        provider:
          name: Silicom Ltd.
          url: http://www.silicom-usa.com
        relatedImages:
        - quay.io/silicom/ice-driver-src@sha256:ca728f648769d31501cdedda92554bcfa890754405b0b06d41629cea47707da8
        - quay.io/silicom/tsyncd@sha256:78be78ec8939f025f9a8b899693ab77b3990116d1c7ffb2115c620b7c3382d9d
        - quay.io/silicom/gpsd@sha256:649e8a6c524920e1c564d8f797b8d64235b2527aa923f94bc9c7a0b7aba8ae7f
        - quay.io/silicom/sts-operator:0.0.6
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/silicom-sts-operator@sha256:5d4e4e62b03888bcbf6336934f2ddf5c5cb3d91bc8482a3aa1697e09625c6865
        - quay.io/silicom/grpc-tsyncd@sha256:aac7233423439e352d8eb39cef63e479c30c2f80b063c84ffc8797cc5a045117
        - quay.io/silicom/phc2sys@sha256:0f3b63a3059b7d6158a916814281097f0d418b99a5fac9e8e5fd9bae58fb0b74
        - quay.io/silicom/sts-plugin@sha256:44339fd400d46d9dddb02c2da47c6f9f96ad2605a5c6de8a7dce2f8c3da3bb57
        - quay.io/silicom/tsync_extts@sha256:be6a5950a5fdc6fdf8015767901856bf173d01bdc803be7141e4f9795ab1478a
        version: 0.0.6
      entries:
      - name: silicom-sts-operator.v0.0.6
        version: 0.0.6
      - name: silicom-sts-operator.v0.0.5
        version: 0.0.5
      - name: silicom-sts-operator.v0.0.4
        version: 0.0.4
      - name: silicom-sts-operator.v0.0.3
        version: 0.0.3
      - name: silicom-sts-operator.v0.0.2
        version: 0.0.2
      - name: silicom-sts-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: silicom-sts-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "gm-1",
                  "namespace": "sts-silicom"
                },
                "spec": {
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    }
                  ],
                  "mode": "T-GM.8275.1",
                  "namespace": "sts-silicom",
                  "nodeSelector": {
                    "sts.silicom.com/config": "gm-1"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "bc-1"
                },
                "spec": {
                  "aprLevel": 0,
                  "domainNumber": 24,
                  "esmcMode": 1,
                  "forwardable": 0,
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Slave",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "holdoff": 500,
                      "ipv4": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    }
                  ],
                  "mode": "T-TBC.8275.1",
                  "mode10MHz": 2,
                  "modePPS": 2,
                  "namespace": "sts-silicom",
                  "nodeSelector": {
                    "sts.silicom.com/config": "bc-1"
                  },
                  "phyLedsCtl": 0,
                  "priority2": 128,
                  "src10MHz": 1,
                  "srcPPS": 1,
                  "syncOption": 1,
                  "synceCpu": 10,
                  "synceRecClkPort": 0,
                  "tracePtpMsg": -1,
                  "twoStep": 0
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsNode",
                "metadata": {
                  "name": "worker2"
                },
                "spec": null,
                "status": {
                  "ethInterfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "pciAddr": "02:00.0",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "pciAddr": "02:00.1",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "pciAddr": "02:00.2",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f3",
                      "ethPort": 3,
                      "pciAddr": "02:00.3",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f4",
                      "ethPort": 4,
                      "pciAddr": "02:00.4",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f5",
                      "ethPort": 5,
                      "pciAddr": "02:00.5",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f6",
                      "ethPort": 6,
                      "pciAddr": "02:00.6",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f7",
                      "ethPort": 7,
                      "pciAddr": "02:00.7",
                      "status": "down"
                    }
                  ],
                  "gpsStatus": {
                    "active": 0,
                    "device": "",
                    "lat": "",
                    "lon": "",
                    "mode": 0,
                    "time": "2021-12-01T09:57:10.968Z"
                  },
                  "tsyncStatus": {
                    "mode": "PTP Master Mode",
                    "status": "Normal Status",
                    "time": "Wed, 01 Dec 2021 09:57:10 UTC"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsOperatorConfig",
                "metadata": {
                  "name": "sts-operator-config"
                },
                "spec": {
                  "gpsSvcPort": 2947,
                  "grpcSvcPort": 50051,
                  "images": {
                    "gpsd": "quay.io/silicom/gpsd:3.23.1",
                    "grpcTsyncd": "quay.io/silicom/grpc-tsyncd:2.1.0.0",
                    "phcs2Sys": "quay.io/silicom/phcs2sys:3.1.1",
                    "stsPlugin": "quay.io/silicom/sts-plugin:0.0.2",
                    "ts2Phcs": "quay.io/silicom/ts2phcs:1.0.0",
                    "tsyncd": "quay.io/silicom/tsyncd:2.1.0.0"
                  },
                  "namespace": "sts-silicom",
                  "sro": {
                    "chart": {
                      "name": "ice-special-resource",
                      "repository": {
                        "name": "ice-special-resource",
                        "url": "http://ice-driver-src"
                      },
                      "version": "0.0.1"
                    },
                    "iceVersion": "1.7.16",
                    "namespace": "openshift-operators",
                    "srcImage": "quay.io/silicom/ice-driver-src:1.7.16",
                    "srcSvcPort": 3000
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Drivers and plugins
          certified: "false"
          containerImage: quay.io/silicom/sts-operator:0.0.2
          createdAt: 2021-11-17T10:21:24 CET
          description: This Operator is a Kubernetes custom controller whose goal
            is to serve the installation and lifecycle management of Silicom STS device
            plugins for Kubernetes.
          operators.operatorframework.io.bundle.channels.v1: stable,development
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/silicomdk/sts-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StsConfig is the Schema for the stsconfigs API
            displayName: Sts Config
            kind: StsConfig
            name: stsconfigs.sts.silicom.com
            version: v1alpha1
          - description: StsNode is the Schema for the stsnodes API
            displayName: Sts Node
            kind: StsNode
            name: stsnodes.sts.silicom.com
            version: v1alpha1
          - description: StsOperatorConfig is the Schema for the stsoperatorconfigs
              API
            displayName: Sts Operator Config
            kind: StsOperatorConfig
            name: stsoperatorconfigs.sts.silicom.com
            version: v1alpha1
        description: |
          Silicom STS line card for 4G and 5G NIC enable real-time data transmission
          with high timing accuracy at the lowest cost to power 5G DRAN and CRAN edge
          deployments.

          * Support 1588/PTP over IPv4 / IPV6, IEEE1588v2
          * Support SyncE /ITU-T G.8262
          * T-BC/T-TSC Boundary Clock and TSC Slave Clock /G.8273.2
          * T-GM Grand Master /G.8273.1 per G.8275.1 PTP Profile
          * PRTC Primary Reference Time Clock Class B/G.8272
          * T-TC Transparent Clock /G.8273.3
          * 1588 Software Stack and Servo Software in x86
          * [Silicom STS2 Card](https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/p410g8ts81-timesync-server-adapter)

          ### Prequisites:
          * [NFD Operator](https://operatorhub.io/operator/nfd-operator "NFD operator needed for the discovery of STS cards").
          * [SRO Operator](https://github.com/openshift/special-resource-operator)
        displayName: Silicom STS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sts
        - silicom
        - ptp
        links:
        - name: GitHub Repository
          url: https://github.com/silicomDK/sts-operator
        - name: Github SRO Helm Charts
          url: https://github.com/silicomDK/sts2-charts
        - name: Silicom Ltd.
          url: http://www.silicom-usa.com
        maintainers:
        - email: rmr@silicom.dk
          name: Ryan M. Raasch
        maturity: beta
        provider:
          name: Silicom Ltd.
          url: http://www.silicom-usa.com
        relatedImages:
        - quay.io/silicom/sts-operator:0.0.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/silicom-sts-operator@sha256:df0939534c6aaa988714e64728ecdb387ff7dc4b32a5d97d56703ab143787171
        version: 0.0.2
      entries:
      - name: silicom-sts-operator.v0.0.2
        version: 0.0.2
      - name: silicom-sts-operator.v0.0.1
        version: 0.0.1
      name: beta
    defaultChannel: alpha
    packageName: silicom-sts-operator
    provider:
      name: Silicom Ltd.
      url: http://www.silicom-usa.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Alvearie
      provider-url: https://alvearie.github.io
    name: alvearie-imaging-ingestion
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: imaging-ingestion-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomEventBridge",
                "metadata": {
                  "name": "events"
                },
                "spec": {
                  "dicomEventDrivenIngestionName": "core",
                  "eventBridge": {},
                  "imagePullPolicy": "Always",
                  "natsSecure": true,
                  "natsSubjectRoot": "events",
                  "natsTokenSecret": "nats-events-secure-bound-token",
                  "natsUrl": "jetstream.imaging-ingestion.svc.cluster.local:4222",
                  "role": "hub"
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomEventDrivenIngestion",
                "metadata": {
                  "name": "core"
                },
                "spec": {
                  "databaseConfigName": "db-config",
                  "databaseSecretName": "db-secret",
                  "eventProcessor": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  },
                  "imagePullPolicy": "Always"
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomInstanceBinding",
                "metadata": {
                  "name": "stow"
                },
                "spec": {
                  "bindingConfigName": "instance-binding-config",
                  "bindingSecretName": "instance-binding-secret",
                  "dicomEventDrivenIngestionName": "core",
                  "imagePullPolicy": "Always",
                  "instanceBinding": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  }
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomStudyBinding",
                "metadata": {
                  "name": "fhir"
                },
                "spec": {
                  "bindingConfigName": "study-binding-config",
                  "bindingSecretName": "study-binding-secret",
                  "dicomEventDrivenIngestionName": "core",
                  "imagePullPolicy": "Always",
                  "studyBinding": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  }
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomwebIngestionService",
                "metadata": {
                  "name": "ingestion"
                },
                "spec": {
                  "bucketConfigName": "imaging-ingestion",
                  "bucketSecretName": "imaging-ingestion",
                  "dicomEventDrivenIngestionName": "core",
                  "imagePullPolicy": "Always",
                  "providerName": "provider",
                  "stowService": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  },
                  "wadoService": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  }
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DimseIngestionService",
                "metadata": {
                  "name": "ingestion"
                },
                "spec": {
                  "applicationEntityTitle": "DICOM-INGEST",
                  "bucketConfigName": "imaging-ingestion",
                  "bucketSecretName": "imaging-ingestion",
                  "dicomEventDrivenIngestionName": "core",
                  "dimseService": {},
                  "imagePullPolicy": "Always",
                  "natsSecure": true,
                  "natsSubjectRoot": "DIMSE",
                  "natsTokenSecret": "ingestion-nats-secure-bound-token",
                  "natsUrl": "nats-secure.imaging-ingestion.svc.cluster.local:4222",
                  "providerName": "provider"
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DimseProxy",
                "metadata": {
                  "name": "ingestion"
                },
                "spec": {
                  "applicationEntityTitle": "DCM4CHEE",
                  "imagePullPolicy": "Always",
                  "natsSecure": true,
                  "natsSubjectRoot": "DIMSE",
                  "natsTokenSecret": "ingestion-nats-secure-bound-token",
                  "natsUrl": "nats-secure.imaging-ingestion.svc.cluster.local:4222",
                  "proxy": {},
                  "targetDimseHost": "arc.dcm4chee.svc.cluster.local",
                  "targetDimsePort": 11112
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: alvearie/imaging-ingestion-operator:0.0.3
          createdAt: "2021-04-08T15:29:55Z"
          description: The Alvearie Imaging Ingestion provides a collection of components
            for extending enterprise medical imaging informatics systems to Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Alvearie/imaging-ingestion
          support: alvearie.slack.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DicomEventBridge is the Schema for the dicomeventbridges
              API
            displayName: Dicom Event Bridge
            kind: DicomEventBridge
            name: dicomeventbridges.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Event driven manifest of all DICOM data across all associated
              S3 buckets
            displayName: Dicom Event Driven Ingestion
            kind: DicomEventDrivenIngestion
            name: dicomeventdriveningestions.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Fan-out notification of DICOM instance data (STOW-RS)
            displayName: Dicom Instance Binding
            kind: DicomInstanceBinding
            name: dicominstancebindings.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Fan-out notification of DICOM studies (FHIRv4 ImagingStudy)
            displayName: Dicom Study Binding
            kind: DicomStudyBinding
            name: dicomstudybindings.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Provides DICOMweb WADO-RS and STOW-RS access to a S3 bucket
            displayName: Dicomweb Ingestion Service
            kind: DicomwebIngestionService
            name: dicomwebingestionservices.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Provides a proxied DIMSE Application Entity (AE) in the cluster
              for C-STORE operations to a storage space
            displayName: Dimse Ingestion Service
            kind: DimseIngestionService
            name: dimseingestionservices.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Provides a bidirectional proxied DIMSE Application Entity
              (AE) in the cluster
            displayName: Dimse Proxy
            kind: DimseProxy
            name: dimseproxies.imaging-ingestion.alvearie.org
            version: v1alpha1
        description: |
          The Alvearie Imaging Ingestion provides a collection of components for extending enterprise medical imaging informatics systems to Kubernetes.

          ## About this Operator
          This operator enables standards-based medical imaging application interfaces such as DICOM Message Service Element (DIMSE) and DICOMweb.
          The API's provided allow for extending enterprise imaging systems to the cloud with custom, fit for purpose deployments.
          This is possible at speed, low cost, and little or zero integration effort.or extending enterprise medical imaging informatics systems to a modern cloud.


          Some potential usages:

          - Perform lightweight secure bridging of DICOM from the enterprise imaging zone to a cloud availability zone.
          - Utilize S3 buckets for segregating DICOM data to be used for clinical or scientific purposes.
          - Fan-out DICOM data to a number of different DICOM subscribers
          - Generate FHIRv4 *ImagingStudy* resources from ingested content and publish to a FHIRv4 based patient logitudinal record.
          - Distribute imaging study arrival and update notifications to imaging study subscribers


          ## Prerequisites

          - [Knative](https://operatorhub.io/operator/knative-operator)
          - ProgresSQL such as [Crunchy](https://operatorhub.io/operator/postgresql)
          - S3 storage such as [MinIO](https://operatorhub.io/operator/minio-operator)
          - [NATS operator](https://github.com/nats-io/nats-operator/) (Optional:  only required for DIMSE Proxy component)



          ## Documentation

          Visit the [official github repository](https://github.com/Alvearie/imaging-ingestion) for documentation and examples.
        displayName: Alvearie Imaging Ingestion Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - dicom
        - medical imaging
        - fhir
        - dimse-c
        - dimse
        - imaging study
        links:
        - name: Alvearie Imaging Ingestion Operator
          url: https://github.com/Alvearie/imaging-ingestion
        maintainers:
        - email: rduggan@ca.ibm.com
          name: Richard Duggan
        - email: jjacob@us.ibm.com
          name: Jeesmon Jacob
        maturity: alpha
        provider:
          name: Alvearie
          url: https://alvearie.github.io
        relatedImages:
        - quay.io/openshift-community-operators/alvearie-imaging-ingestion@sha256:f65cc3cb83b1c75385970ce70c6a84b15b143e682ad0d1784148f1643df0991e
        - alvearie/imaging-ingestion-operator:0.0.3
        version: 0.0.3
      entries:
      - name: imaging-ingestion-operator.v0.0.3
        version: 0.0.3
      - name: imaging-ingestion-operator.v0.0.2
        version: 0.0.2
      - name: imaging-ingestion-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: alvearie-imaging-ingestion
    provider:
      name: Alvearie
      url: https://alvearie.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Grafana Loki SIG Operator
      provider-url: ""
    name: loki-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: loki-operator.v0.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in namespace example-namespace has an error rate above 5% for more than 10 minutes.",
                            "summary": "High error rate detected"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "warning"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in pod {{ $labels.pod }} is leaking HTTP basic auth credentials in logs.",
                            "summary": "HTTP credentials leaked in logs"
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({kubernetes_namespace_name=\"example-namespace\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "application"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          containerImage: docker.io/grafana/loki-operator:0.9.0
          createdAt: "2025-12-03T16:22:02Z"
          description: The Community Loki Operator provides Kubernetes native deployment
            and management of Loki and related logging components.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/grafana/loki/tree/main/operator
          support: Grafana Loki SIG Operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |-
          The Community Loki Operator provides Kubernetes native deployment and management of Loki and related logging components.
          The purpose of this project is to simplify and automate the configuration of a Loki based logging stack for Kubernetes clusters.

          ### Operator features

          The Loki Operator includes, but is not limited to, the following features:

          * Kubernetes Custom Resources: Use Kubernetes custom resources to deploy and manage Loki, Alerting rules, Recording rules, and related components.
          * Simplified Deployment Configuration: Configure the fundamentals of Loki like tenants, limits, replication factor and storage from a native Kubernetes resource.

          ### Feature Gates

          The Loki Operator Bundle provides a set of feature gates that enable/disable specific feature depending on the target Kubernetes distribution. The following feature gates are enabled by default:
          * `serviceMonitors`: Enables creating a Prometheus-Operator managed ServiceMonitor resource per LokiStack component.
          * `serviceMonitorTlsEndpoints`: Enables TLS for the ServiceMonitor endpoints.
          * `lokiStackAlerts`: Enables creating PrometheusRules for common Loki alerts.
          * `httpEncryption`: Enables TLS encryption for all HTTP LokiStack services.
          * `grpcEncryption`: Enables TLS encryption for all GRPC LokiStack services.
          * `builtInCertManagement`: Enables the built-in facility for generating and rotating TLS client and serving certificates for all LokiStack services and internal clients
          * `lokiStackGateway`: Enables reconciling the reverse-proxy lokistack-gateway component for multi-tenant authentication/authorization traffic control to Loki.
          * `runtimeSeccompProfile`: Enables the restricted seccomp profile on all Lokistack components.
          * `defaultNodeAffinity`: Enable the operator will set a default node affinity on all pods. This will limit scheduling of the pods to Nodes with Linux.
          * `lokiStackWebhook`: Enables the LokiStack CR validation and conversion webhooks.
          * `alertingRuleWebhook`: Enables the AlertingRule CR validation webhook.
          * `recordingRuleWebhook`: Enables the RecordingRule CR validation webhook.
          * `rulerConfigWebhook`: Enables the RulerConfig CR validation webhook.

          In addition it enables the following OpenShift-only related feature gates:
          * `servingCertsService`: Enables OpenShift ServiceCA annotations on the lokistack-gateway service only.
          * `ruleExtendedValidation`: Enables extended validation of AlertingRule and RecordingRule to enforce tenancy in an OpenShift context.
          * `clusterTLSPolicy`: Enables usage of TLS policies set in the API Server.
          * `clusterProxy`: Enables usage of the proxy variables set in the proxy resource.

          ### Before you start

          1. Ensure that the appropriate object storage solution, that will be used by Loki, is avaliable and configured.
        displayName: Community Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Documentation
          url: https://loki-operator.dev/
        maintainers:
        - email: loki-operator-team@googlegroups.com
          name: Grafana Loki SIG Operator
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Grafana Loki SIG Operator
        relatedImages:
        - quay.io/openshift/origin-kube-rbac-proxy:latest
        - docker.io/grafana/loki-operator:0.9.0
        - docker.io/grafana/loki:3.5.5
        - quay.io/community-operator-pipeline-prod/loki-operator@sha256:763afcdec279cb851cbc8cfbc4d662c31775d85e9fef47c4e149a8905063b450
        - quay.io/observatorium/api:latest
        - quay.io/observatorium/opa-openshift:latest
        version: 0.9.0
      entries:
      - name: loki-operator.v0.9.0
        version: 0.9.0
      - name: loki-operator.v0.8.0
        version: 0.8.0
      - name: loki-operator.v0.7.1
        version: 0.7.1
      - name: loki-operator.v0.7.0
        version: 0.7.0
      - name: loki-operator.v0.6.2
        version: 0.6.2
      - name: loki-operator.v0.6.1
        version: 0.6.1
      - name: loki-operator.v0.6.0
        version: 0.6.0
      - name: loki-operator.v0.5.0
        version: 0.5.0
      - name: loki-operator.v0.4.0
        version: 0.4.0
      - name: loki-operator.v0.3.0
        version: 0.3.0
      - name: loki-operator.v0.2.0
        version: 0.2.0
      - name: loki-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: loki-operator
    provider:
      name: Grafana Loki SIG Operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: ""
    name: support-log-gather-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: support-log-gather-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Monitoring, Application Runtime
          containerImage: registry.redhat.io/openshift4/ose-support-log-gather-rhel9-operator@sha256:f79ab86a84357ab3b14a7f889de7c8b849c28d8816e9f9226373f410b4e04ab8
          createdAt: "2020-07-31T16:12:36Z"
          description: Operator to enable CEE to collect must-gathers from OSDv4 clusters
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.20.0-0 <4.20.0-202512090918'
          operatorframework.io/suggested-namespace: must-gather-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/must-gather-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a must-gather diagnostic collection job
            displayName: Must Gather
            kind: MustGather
            name: mustgathers.operator.openshift.io
            version: v1alpha1
        description: |
          An operator that collects logs in Red Hat OpenShift and sends them to Red Hat Support for troubleshooting.

          ## Features

          * Automated must-gather collection
          * Secure collection and storage
        displayName: support log gather
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - monitoring
        - diagnostics
        - must-gather
        - support
        links:
        - name: Documentation
          url: https://github.com/openshift/must-gather-operator
        - name: Source Repository
          url: https://github.com/openshift/must-gather-operator
        maintainers:
        - email: aos-staff@redhat.com
          name: Red Hat
        maturity: tech-preview
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat, Inc
        relatedImages:
        - registry.redhat.io/openshift4/ose-support-log-gather-rhel9-operator@sha256:f79ab86a84357ab3b14a7f889de7c8b849c28d8816e9f9226373f410b4e04ab8
        - registry.redhat.io/openshift4/ose-support-log-gather-operator-bundle@sha256:ac657aaa7cece6a5ab76778385ce11497f8a985dce68b3c4aec1bad37ab05618
        - registry.redhat.io/openshift4/ose-must-gather-rhel9@sha256:a1376ed9e13b8ff171b967369a9ecf2dd0cf1188f34d456bc475023a86c87292
        version: 4.20.0-202512090918
      entries:
      - name: support-log-gather-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: support-log-gather-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: support-log-gather-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: support-log-gather-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: support-log-gather-operator.v4.20.0-202511041656
        version: 4.20.0-202511041656
      - name: support-log-gather-operator.v4.20.0-202510271425
        version: 4.20.0-202510271425
      - name: support-log-gather-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: tech-preview
    defaultChannel: tech-preview
    packageName: support-log-gather-operator
    provider:
      name: Red Hat, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-listener-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: listener-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          description: Stackable Listener Operator
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/listener-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Listener Class
            displayName: Listener Class
            kind: ListenerClass
            name: listenerclasses.listeners.stackable.tech
            version: v1alpha1
          - description: Represents a Listener
            displayName: Listener
            kind: Listener
            name: listeners.listeners.stackable.tech
            version: v1alpha1
          - description: Represents PodListeners of a Pod
            displayName: PodListeners
            kind: PodListeners
            name: podlisteners.listeners.stackable.tech
            version: v1alpha1
        description: |-
          This is an operator for Kubernetes that provisions network listeners according to the cluster policy, and injects connection parameters into Pods.
          The Stackable Listener Operator is part of the Stackable Data Platform, a curated selection of the best open source data apps like Kafka, Druid, Trino or
          Spark, all working together seamlessly. Based on Kubernetes, it runs everywhere – on prem or in the cloud.

          See it in action in one of our [demos](https://stackable.tech/en/demos/) or follow this
          [usage overview](https://docs.stackable.tech/home/stable/listener-operator/usage.html).

          NOTE: Make sure you install this operator in a namespace called "stackable-operators". Failing to do so will result in a broken installation.
        displayName: Stackable Listener Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - listener
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/listener-operator@sha256:59091117b89b6bbb2c8c19668f539464b965f1d2bfb7e3811677ebe943f90eca
        - quay.io/stackable/sig-storage/csi-node-driver-registrar@sha256:ab4a3289015f7de39c4dc987fa6183bcb157294a841c88fa842332ce66b068d8
        - quay.io/stackable/sig-storage/csi-provisioner@sha256:142e0b069dcc100671c91d66d8c973d56ea330b4e11ab79e5eb4fea5c79c6ecb
        - registry.connect.redhat.com/stackable/listener-operator@sha256:f775b29c3ea2c4d0d8f1a140e3827400c1eeeb9874cd0e0dbf50987fb41cc5c1
        version: 25.11.0
      entries:
      - name: listener-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-listener-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Jooho Lee
      provider-url: https://github.com/jooho/nfs-provisioner-operator
    name: nfs-provisioner-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nfs-provisioner-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cache.jhouse.com/v1alpha1",
                "kind": "NFSProvisioner",
                "metadata": {
                  "name": "nfsprovisioner-sample"
                },
                "spec": {
                  "nfsImageConfiguration": {
                    "image": "k8s.gcr.io/sig-storage/nfs-provisioner@sha256:e943bb77c7df05ebdc8c7888b2db289b13bf9f012d6a3a5a74f14d4d5743d439",
                    "imagePullPolicy": "IfNotPresent"
                  },
                  "scForNFS": "nfs",
                  "scForNFSPvc": "local-sc",
                  "storageSize": "1G"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "false"
          containerImage: quay.io/jooholee/nfs-provisioner-operator@sha256:d9c013967421ec72644a588a155975bf856a856f1ef38ba71dfea306fdb47acd
          createdAt: "2025-08-08T20:23:50Z"
          description: Create and manage NFS Server and Provisioner
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/jooho/nfs-provisioner-operator
          support: NFS
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NFSProvisioner is the Schema for the nfsprovisioners API
            displayName: NFS Provisioner App
            kind: NFSProvisioner
            name: nfsprovisioners.cache.jhouse.com
            version: v1alpha1
        description: "This operator deploy NFS server with local storage and also
          provide provisioner for storageClass.\n### Core Capabilities\n* **NFS Server:**
          Deployed\n* **NFS Provisioner:** Help customers to create PV using StorageClass\n*
          **StorageClass:** Dynamically create PV for requested PVC\n### NFS Provisioner
          Operator Features\n* NFS Server can use localStorage PVC or HostPath on
          the node\n### Must-Gather \n> isv-cli must-gather --image=quay.io/jooholee/nfs-provisioner-operator-must-gather:0.0.1\n"
        displayName: NFS Provisioner Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nfs
        - storage
        links:
        - name: Nfs Provisioner Operator
          url: https://github.com/jooho/nfs-provisioner-operator
        maintainers:
        - email: ljhiyh@gmail.com
          name: Jooho
        maturity: alpha
        provider:
          name: Jooho Lee
          url: https://github.com/jooho/nfs-provisioner-operator
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:e10d1d982dd653db74ca87a1d1ad017bc5ef1aeb651bdea089debf16485b080b
        - quay.io/community-operator-pipeline-prod/nfs-provisioner-operator@sha256:d7ef0fa3b5a1a6094b6fd60c6197a52cb14766865b3549806de100bb3522821a
        - quay.io/jooholee/nfs-provisioner-operator@sha256:d9c013967421ec72644a588a155975bf856a856f1ef38ba71dfea306fdb47acd
        version: 0.0.8
      entries:
      - name: nfs-provisioner-operator.v0.0.8
        version: 0.0.8
      - name: nfs-provisioner-operator.v0.0.7
        version: 0.0.7
      - name: nfs-provisioner-operator.v0.0.6
        version: 0.0.6
      - name: nfs-provisioner-operator.v0.0.5
        version: 0.0.5
      - name: nfs-provisioner-operator.v0.0.4
        version: 0.0.4
      name: alpha
    defaultChannel: alpha
    packageName: nfs-provisioner-operator
    provider:
      name: Jooho Lee
      url: https://github.com/jooho/nfs-provisioner-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat CCIT
      provider-url: ""
    name: reportportal-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: reportportal-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rp5.reportportal.io/v1",
                "kind": "ReportPortal",
                "metadata": {
                  "name": "reportportal-sample"
                },
                "spec": {
                  "accesskey": "AKIAIOSFODNN7EXAMPLE",
                  "analyzer_image": "quay.io/waynesun09/service-auto-analyzer:5.3.5",
                  "api_image": "quay.io/waynesun09/service-api:5.3.5-rootless",
                  "api_replicas": 1,
                  "app_domain": "apps.test-example.com",
                  "bucket_prefix": null,
                  "default_bucket_name": null,
                  "enable_pg_restic_backup": "yes",
                  "es_backup_schedule": "@daily",
                  "es_s3_backup_dir": "s3_backup",
                  "es_snapshot_bucket": "es-snapshot-123123",
                  "gateway_replicas": 1,
                  "index_image": "quay.io/waynesun09/service-index:5.0.10",
                  "index_replicas": 1,
                  "integration_salt_path": null,
                  "migration_image": "quay.io/waynesun09/migrations:5.3.5",
                  "pg_restic_password": "rp_user",
                  "pg_restic_s3_bucket_init": "yes",
                  "pg_s3_bucket_name": "pgbackup-123123",
                  "s3_enabled": false,
                  "s3_endpoint": null,
                  "secretkey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
                  "uat_image": "quay.io/waynesun09/service-authorization:5.3.5",
                  "ui_image": "quay.io/waynesun09/service-ui:5.3.5",
                  "ui_replicas": 1
                }
              },
              {
                "apiVersion": "rp5.reportportal.io/v1",
                "kind": "ReportPortalRestore",
                "metadata": {
                  "name": "reportportalrestore-sample"
                },
                "spec": {
                  "accesskey": "AKIAIOSFODNN7EXAMPLE",
                  "bucket_prefix": null,
                  "es_restore": "yes",
                  "es_restore_date": "2020-08-07",
                  "es_s3_backup_dir": "s3_backup",
                  "es_snapshot_bucket": "es-snapshot-123123",
                  "pg_recovery": "yes",
                  "pg_recovery_target_time": "2020-08-07 00:00:00",
                  "pg_restic_password": "rp_user",
                  "pg_s3_bucket_name": "pgbackup-123123",
                  "s3_endpoint": null,
                  "secretkey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
                }
              },
              {
                "apiVersion": "rp5.reportportal.io/v1",
                "kind": "ServiceApiServiceMonitor",
                "metadata": {
                  "name": "serviceapiservicemonitor-sample"
                },
                "spec": {
                  "bearer_token_secret_key": "token",
                  "bearer_token_secret_name": "rp-user-auth"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/waynesun09/rp5-operator:v0.0.8
          createdAt: "2021-04-22 14:39:00"
          operators.operatorframework.io/builder: operator-sdk-v1.7.1+git
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/waynesun09/reportportal-operator
          support: waynesun09
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ReportPortal Restore from s3 backup
            kind: ReportPortalRestore
            name: reportportalrestores.rp5.reportportal.io
            version: v1
          - description: ReportPortal v5 Deployment with ReportPortal Operator
            kind: ReportPortal
            name: reportportals.rp5.reportportal.io
            version: v1
          - description: ReportPortal service-api ServiceMonitor for metrics
            kind: ServiceApiServiceMonitor
            name: serviceapiservicemonitors.rp5.reportportal.io
            version: v1
        description: |-
          ReportPortal is a test automation analytics platform. ReportPortal Operator support instantiating the ReportPortal services and required dependencies.

          What services are included:

              - Report Portal v5.3
              - PostgreSQL
              - Elasticsearch
              - RabbitMQ
              - Minio

          The Operator also support data backup & restore and metrics monitoring.

          ## Install

          Install the Operator to a namespace, then create ReportPortal v5 instance under Provided APIs on the UI, all Report Portal v5 services and dependencies will be installed.

          ## Data backup and restore

          The Report Portal v5 data backup and restore in the operator include two parts, PostgreSQL database data and Elasticsearch index data.

          The Operator support automatically data backup and restore for both.

          ### PostgreSQL database WAL archiving and recovery

          The Operator supports PostgreSQL WAL archiving and recovery point-in-time via Minio S3 using restic.

          #### WAL archiving

          When deploy Report Portal v5 instance, make sure `enable_pg_restic_backup` option is set as `yes`, then the WAL archiving will be enabled when initiate the database, the WAL archive data will be automatically backup to S3 storage via Minio using restic command.

          Parameter `pg_restic_s3_bucket_init` is for init the bucket if not exist, `pg_s3_bucket_name` is the bucket name and `pg_restic_password` is the restic password for encryption.

          #### WAL recovery

          WAL archive recovery will download all WAL archive files to the Postgres container and restore point-in-time.

          To restore PostgreSQL database point-in-time, on Operator UI select `ReportPortalRestore` under Provided APIs to create ReportPortalRestore operand.

          After the ReportPortalRestore operand created, the PG WAL restore will get started, as restore time will base on the database size, the process will last in minutes, hours or days.

          **Note:** Current Postgres container liveless probe timeout is set as one hour in the postgresql statefulset, it might cause restore fail if restore time is longer than one hour, so it might need be adjusted to be longer.

          ### Elasticsearch snapshot and restore

          The operator supports elasticsearch snapshot and restore with data saved in S3 bucket via Minio, the elasticsearch container have installed the s3 repository plugin.

          #### Snapshot

          When deploy Report Portal v5 instance, make sure following elasticsearch parameters are set:

              es_s3_backup_dir: s3_backup
              es_snapshot_bucket: es-snapshot-123123
              es_backup_schedule: '@daily'

          #### Restore

          Elasticsearch restore support restore to certain date as default snapshot schedule is daily.

          To restore elasticsearch from snapshot, on Operator UI select `ReportPortalRestore` under Provided APIs to create ReportPortalRestore operand.

          The backup dir and bucket name should be same as when create the RP instance, `es_restore` need set to `yes` to enable the restore and `es_restore_date` is the restore target date.

          The restore time will also be depend on the snapshot size.

          ## Metrics

          The operator by default have enabled metrics, the default ansible operator port 8080 is used for the operator container.

          All Report Portal v5 depended services, rabbitmq, minio, postgresql and elasticsearch have metrics enabled in this operator.

          The Report Portal gatway service have metrics enabled.

          By default several ServiceMonitors have been defined when create ReportPortal v5 operand:

              $ oc get servicemonitor
              NAME                    AGE
              elasticsearch-metrics   1d21h
              gateway-metrics         1d21h
              minio-metrics           1d21h
              postgres-metrics        1d21h
              rabbitmq-metrics        1d21h

          To export Report Portal v5 service-api metrics with ServiceMonitor, create a `secret` with RP user api token. The api access token could be found with login to Report Portal -> Click user icon -> Profile.

          Then select `ServiceApiServiceMonitor` under provided APIs to Create Instance on operator UI.

          Input the secret name and key name that have been created, and click create, a api-metrics servicemonitor will be created.

          To check the metrics, if [user workload monitoring](https://docs.openshift.com/container-platform/4.5/monitoring/monitoring-your-own-services.html) is enabled on the cluster, click to Monitoring on OpenShift UI and navigate to Metrics, where you could query the metrics.

          You could also deploy Promethues Operator in the current project and query via it.

          ## Doc

          More detail with installation, data backup & restore and metrics could be found at https://github.com/waynesun09/reportportal-operator#reportportal-operator
        displayName: reportportal-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - reportportal
        - failure analysis
        - test automation
        links:
        - name: Documentation
          url: https://github.com/waynesun09/reportportal-operator/blob/master/README.md
        - name: ReportPortal.io
          url: https://reportportal.io
        maintainers:
        - email: gsun@redhat.com
          name: Wayne Sun
        maturity: alpha
        provider:
          name: Red Hat CCIT
        relatedImages:
        - quay.io/openshift-community-operators/reportportal-operator@sha256:67a7ffaf6a303b92541170f266d7b2871f5c2fe73f6b6c9a2b7b33dbc4555fa5
        - quay.io/waynesun09/rp5-operator:v0.0.8
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.7.0
        version: 0.0.8
      entries:
      - name: reportportal-operator.v0.0.8
        version: 0.0.8
      name: alpha
    defaultChannel: alpha
    packageName: reportportal-operator
    provider:
      name: Red Hat CCIT
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/stolostron/multicluster-global-hub
    name: multicluster-global-hub-operator-rh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-global-hub-operator-rh.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "global-hub.open-cluster-management.io/v1alpha1",
                "kind": "ManagedClusterMigration",
                "metadata": {
                  "name": "migration-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha1",
                "kind": "MulticlusterGlobalHubAgent",
                "metadata": {
                  "name": "multiclusterglobalhubagent"
                },
                "spec": {
                  "transportConfigSecretName": "transport-config"
                }
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha4",
                "kind": "MulticlusterGlobalHub",
                "metadata": {
                  "name": "multiclusterglobalhub"
                },
                "spec": {
                  "dataLayer": {
                    "postgres": {
                      "retention": "18m"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/multicluster-globalhub/multicluster-globalhub-rhel9-operator@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
          createdAt: "2025-08-27T07:10:21Z"
          description: Manages the installation and upgrade of the Multicluster Global
            Hub.
          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: "true"
          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.skipRange: '>=1.5.0 <1.6.0'
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1alpha4",
            "kind":"MulticlusterGlobalHub","metadata":{"name":"multiclusterglobalhub","namespace":"multicluster-global-hub"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-global-hub
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/multicluster-global-hub
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterMigration is a global hub resource that allows
              you to migrate managed clusters from one hub to another
            displayName: Managed Cluster Migration
            kind: ManagedClusterMigration
            name: managedclustermigrations.global-hub.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHubAgent is the Schema for the multiclusterglobalhubagents
              API
            displayName: Multicluster Global Hub Agent
            kind: MulticlusterGlobalHubAgent
            name: multiclusterglobalhubagents.operator.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHub defines the configuration for an instance
              of the multiCluster global hub
            displayName: Multicluster Global Hub
            kind: MulticlusterGlobalHub
            name: multiclusterglobalhubs.operator.open-cluster-management.io
            version: v1alpha4
        description: |
          The Multicluster Global Hub Operator contains the components of multicluster global hub. The Operator deploys all of the required components for global multicluster management. The components include `multicluster-global-hub-manager` and `multicluster-global-hub-grafana` in the global hub cluster and `multicluster-global-hub-agent` in the managed hub clusters.
          The Operator also deploys the strimzi kafka and crunchy postgres if you do not bring your own kafka and postgres.

          ## Prerequisites
          - Red Hat Advanced Cluster Management for Kubernetes needs to be installed. You can find the support matrix in the official document.

          ## How to Install
          Install the Multicluster Global Hub Operator by following the instructions that are displayed after you select the Install button.
          A pod will be created in `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                             READY   STATUS    RESTARTS   AGE
          multicluster-global-hub-operator-5ccbbc878d-98fdp                1/1     Running   0          19s
          ```
          The operator is now providing new Custom Resources Definitions: `multiclusterglobalhubs.operator.open-cluster-management.io`

          ## Using the Multicluster Global Hub Operator
          After installed the operator, create an instance of the MulticlusterGlobalHub resource to instantiate the Multicluster Global Hub.
          Once an instance of the MulticlusterGlobalHub is created, the following pods are created in the `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                    READY   STATUS    RESTARTS   AGE
          amq-streams-cluster-operator-v2.6.0-2-f49bf7559-569mw   1/1     Running   0          22m
          kafka-entity-operator-68dcd446f4-pg257                  3/3     Running   0          19m
          kafka-kafka-0                                           1/1     Running   0          20m
          kafka-kafka-1                                           1/1     Running   0          20m
          kafka-kafka-2                                           1/1     Running   0          20m
          multicluster-global-hub-grafana-5b7cfb6876-5rcnn        2/2     Running   0          19m
          multicluster-global-hub-grafana-5b7cfb6876-wq99v        2/2     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-hzfvw        1/1     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-wbkzl        1/1     Running   0          19m
          multicluster-global-hub-operator-768bd5bd4f-59xjd       1/1     Running   0          22m
          multicluster-global-hub-postgresql-0                    2/2     Running   0          22m
          ```
          ## Documentation
          For documentation about installing and using the Multicluster GlobalHub Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [Multicluser GlobalHub Documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html-single/multicluster_global_hub/index#doc-wrapper) in the Red Hat Advanced Cluster Management
          documentation.

          ## Support & Troubleshooting
          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: Multicluster Global Hub Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multicluster-global-hub
        - multiple-hubs
        links:
        - name: Multicluster Global Hub Operator
          url: https://github.com/stolostron/multicluster-global-hub
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: release-1.6
        provider:
          name: Red Hat, Inc
          url: https://github.com/stolostron/multicluster-global-hub
        relatedImages:
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-rhel9-operator@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
        - registry.redhat.io/rhel9/postgresql-16@sha256:2161182c88022f38d6d9b8b467c0d59156edcededc908d383b80caa4eedf57f9
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-operator-bundle@sha256:3ffc6685a430008618dbee9b15ec04980eacd783b0c77d130e70bf9766bfdae8
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-agent-rhel9@sha256:903aea3e61d68f13d60c33f98bc9fa220eb8426ccedb43948015b6dfd50e8cf0
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-grafana-rhel9@sha256:870866e86ce870ad8d97ee060483e3c9042076f4ec987d4769e09d8daddd963d
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-manager-rhel9@sha256:98273949e754fc81aa9240b507ab13e12fe2e9ecb6dafe601756567af18a077c
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-postgres-exporter-rhel9@sha256:2a68afbc8b4208e8aa16e7f0a8266246a16a2e97d4d6f930318888fc1e0c7306
        version: 1.6.0
      entries:
      - name: multicluster-global-hub-operator-rh.v1.6.0
        version: 1.6.0
      name: release-1.6
    defaultChannel: release-1.6
    packageName: multicluster-global-hub-operator-rh
    provider:
      name: Red Hat, Inc
      url: https://github.com/stolostron/multicluster-global-hub
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: topology-aware-lifecycle-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: topology-aware-lifecycle-manager.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ran.openshift.io/v1alpha1",
                "kind": "ClusterGroupUpgrade",
                "metadata": {
                  "name": "ClusterGroupUpgrade-sample"
                },
                "spec": {
                  "preCaching": true
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
          description: The topology aware lifecycle manager is an operator that facilitates
            platform upgrades of group of clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-operators",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/topology-aware-lifecycle-manager
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterGroupUpgrade is the Schema for the ClusterGroupUpgrades
              API
            displayName: Cluster Group Upgrade
            kind: ClusterGroupUpgrade
            name: clustergroupupgrades.ran.openshift.io
            version: v1alpha1
          - description: ImageBasedGroupUpgrade is the schema for upgrading a group
              of clusters using IBU
            displayName: Image-Based Group Upgrade
            kind: ImageBasedGroupUpgrade
            name: imagebasedgroupupgrades.lcm.openshift.io
            version: v1alpha1
          - description: PreCachingConfig is the Schema for the precachingconfigs
              API
            displayName: Pre-caching Config
            kind: PreCachingConfig
            name: precachingconfigs.ran.openshift.io
            version: v1alpha1
        description: |-
          Topology Aware Lifecycle Manager is an operator that facilitates
          platform and operator upgrades of group of clusters
        displayName: Topology Aware Lifecycle Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acm lifecyclemanagement upgrades cluster
        links:
        - name: Cluster Group Upgrades Operator
          url: https://topology-aware-lifecycle-manager.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-operator-bundle@sha256:46f2823c799f69a666161c73d63c1ad131757d1b83e28b09d0f205fd9626193b
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-aztp-rhel9@sha256:19b4c01406bffca93469847e207dcc372b0238a20184923a33932d510c0f1d99
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-precache-rhel9@sha256:982467d05ff6af795ede34430c571ef5a6a7f4005990eb7538be340fd412b6f2
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-recovery-rhel9@sha256:761ba005141e46a6e32ab1a8b58d348507a28bcad5c571cafd5389463a595475
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
        version: 4.20.0
      entries:
      - name: topology-aware-lifecycle-manager.v4.20.0
        version: 4.20.0
      name: "4.20"
    - currentCSV: topology-aware-lifecycle-manager.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ran.openshift.io/v1alpha1",
                "kind": "ClusterGroupUpgrade",
                "metadata": {
                  "name": "ClusterGroupUpgrade-sample"
                },
                "spec": {
                  "preCaching": true
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
          description: The topology aware lifecycle manager is an operator that facilitates
            platform upgrades of group of clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-operators",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/topology-aware-lifecycle-manager
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterGroupUpgrade is the Schema for the ClusterGroupUpgrades
              API
            displayName: Cluster Group Upgrade
            kind: ClusterGroupUpgrade
            name: clustergroupupgrades.ran.openshift.io
            version: v1alpha1
          - description: ImageBasedGroupUpgrade is the schema for upgrading a group
              of clusters using IBU
            displayName: Image-Based Group Upgrade
            kind: ImageBasedGroupUpgrade
            name: imagebasedgroupupgrades.lcm.openshift.io
            version: v1alpha1
          - description: PreCachingConfig is the Schema for the precachingconfigs
              API
            displayName: Pre-caching Config
            kind: PreCachingConfig
            name: precachingconfigs.ran.openshift.io
            version: v1alpha1
        description: |-
          Topology Aware Lifecycle Manager is an operator that facilitates
          platform and operator upgrades of group of clusters
        displayName: Topology Aware Lifecycle Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acm lifecyclemanagement upgrades cluster
        links:
        - name: Cluster Group Upgrades Operator
          url: https://topology-aware-lifecycle-manager.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-operator-bundle@sha256:46f2823c799f69a666161c73d63c1ad131757d1b83e28b09d0f205fd9626193b
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-aztp-rhel9@sha256:19b4c01406bffca93469847e207dcc372b0238a20184923a33932d510c0f1d99
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-precache-rhel9@sha256:982467d05ff6af795ede34430c571ef5a6a7f4005990eb7538be340fd412b6f2
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-recovery-rhel9@sha256:761ba005141e46a6e32ab1a8b58d348507a28bcad5c571cafd5389463a595475
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
        version: 4.20.0
      entries:
      - name: topology-aware-lifecycle-manager.v4.20.0
        version: 4.20.0
      name: stable
    defaultChannel: stable
    packageName: topology-aware-lifecycle-manager
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: rhods-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.24.0
        version: 2.24.0
      - name: rhods-operator.2.23.0
        version: 2.23.0
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.21.0
        version: 2.21.0
      - name: rhods-operator.2.20.0
        version: 2.20.0
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.18.0
        version: 2.18.0
      - name: rhods-operator.2.17.0
        version: 2.17.0
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.15.0
        version: 2.15.0
      - name: rhods-operator.2.14.0
        version: 2.14.0
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: alpha
    - currentCSV: rhods-operator.2.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Basic Install
          categories: AI/Machine Learning, Big Data
          containerImage: registry.redhat.io/rhods/odh-rhel8-operator@sha256:a4d7f020509b9720063e87e1c2f19af04e4c9b4986b199be4dc617831b971434
          createdAt: "2023-11-21T08:37:00Z"
          description: Operator for deployment and management of Red Hat OpenShift
            Data Science
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:08c90a8f133b4cdb1477a742bc44be4d8fc4e88153b8bc2a2a148cbdf19f4e7d
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:6a56010de933f172b195a1a575855d37b70a4968be8edb35157f6ca193969ad2
          olm.skipRange: '>=1.33.0 <2.4.0'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "rhods",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "rhods",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Removed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Removed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus", "OpenShift Data Science"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:eb96f4b753606528750b3c28f7f9256582f81fa030450b05afdef684634903be
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift Data Science
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift Data Science (RHODS) is a complete platform for the entire lifecycle of your AI/ML projects. It is the flagship product of OpenShift AI.

          When using RHODS, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. RHODS can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.


          ### Components
          * RHODS dashboard
          * Curated Notebook Images (incl CUDA, PyTorch, Tensorflow)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines. (including Elyra notebook interface, and based on standard OpenShift Pipelines)
          * Model Serving using ModelMesh (and Kserve) with a provided OpenVino Model Serving Runtime
          * Ability to use other runtimes for serving
          * Model Monitoring
        displayName: Red Hat OpenShift Data Science
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift Data Science
        - RHODS
        - rhods
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift Data Science
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-data-science
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhods/odh-notebook-controller-rhel8@sha256:753994fce63802f1e1121990a5c1dd722216446abee54cc1a7c50ab195134414
        - registry.redhat.io/rhods/odh-modelmesh-serving-controller-rhel8@sha256:d94395fb251e45aaa73d09bc6106a2947c16b90d87fc3b64bfe4f2f600be5841
        - registry.redhat.io/rhods/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:c5758102609821a6fdabec0277e03c4c728f82176093d1ade0570aba5f3cd8f9
        - registry.redhat.io/rhods/odh-dashboard-rhel8@sha256:b98171c5543815abf7c095fba92796ceed9ea44bd8b78db143d2815c6bcfdcf6
        - registry.redhat.io/rhods/odh-modelmesh-runtime-adapter-rhel8@sha256:08478a1647d0413783bcbcd966a73b444b580464de46efedb39504420f22053e
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:eb96f4b753606528750b3c28f7f9256582f81fa030450b05afdef684634903be
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhods/odh-kf-notebook-controller-rhel8@sha256:cd0ab8d70559be6074fbaf1caa1d50f8eb75e1bff1a22d6d69380f19190df0b6
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhods/odh-rhel8-operator@sha256:a4d7f020509b9720063e87e1c2f19af04e4c9b4986b199be4dc617831b971434
        - registry.redhat.io/rhods/odh-ml-pipelines-persistenceagent-rhel8@sha256:857a8eb444375505ccb34a11cce69c1794ceabbfb00df06933d7f12cd187319b
        - registry.redhat.io/rhods/odh-operator-bundle@sha256:b637a02d23bd8364cc8914421049eb60169c163ac70bff2f33591df1a1193002
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhods/odh-modelmesh-rhel8@sha256:3827221f84d3aa22440d6b364b990a4ec0666dfb5963f174f7ed518b3650d223
        - registry.redhat.io/rhods/odh-trustyai-service-rhel8@sha256:fe17d6e07ebaa088f274dd8b5e83892dacc11cb336065b06582a3c055095dba5
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhods/odh-model-controller-rhel8@sha256:fde989817cd1a6ec8eb408a7f6c73e28ba043ab2d88035586b1b7e55fb3405cb
        - registry.redhat.io/rhods/odh-trustyai-service-operator-rhel8@sha256:68471555d0b2bb8150ebfae8d4f3d1dbdff9c5b961ff2305ef23ab7514cbbea1
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhods/odh-ml-pipelines-artifact-manager-rhel8@sha256:76c67d7015a2db6965219db6533e0cddb5b7cf699c88df3ef81155f9c192a3cc
        - registry.redhat.io/rhods/odh-ml-pipelines-cache-rhel8@sha256:33aae32e3d348d382906f6e926281852f54006a94d7bdac188bb33debadec059
        - registry.redhat.io/rhods/odh-ml-pipelines-api-server-rhel8@sha256:be57f237df156474a709667fa4fb4aa142118e3459963fed56648c1cb2e38cd6
        - registry.redhat.io/rhods/odh-data-science-pipelines-operator-controller-rhel8@sha256:250db47cb873207cfb75c7e8a2f0de08b75b056a72db73362d2d79c08cb7b185
        - registry.redhat.io/rhods/odh-kuberay-operator-controller-rhel8@sha256:bfc805aa1689a4bd6f7e617acf9eb1c2c307624dd49956e9e7442afac328151a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhods/odh-codeflare-operator-rhel8@sha256:2841fd3051a50a1b0d9e3caafa20a8084b5c472d49393b372828960dbf156674
        - registry.redhat.io/ubi8/ubi-micro@sha256:6a56010de933f172b195a1a575855d37b70a4968be8edb35157f6ca193969ad2
        - registry.redhat.io/rhel8/mariadb-103@sha256:08c90a8f133b4cdb1477a742bc44be4d8fc4e88153b8bc2a2a148cbdf19f4e7d
        - registry.redhat.io/rhods/odh-mm-rest-proxy-rhel8@sha256:8d989f54009484d7f43fe79d7c37757418fc3c15cd4d7e80a2076677a9645bdf
        version: 2.4.0
      entries:
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: beta
    - currentCSV: rhods-operator.2.21.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:7d0b8d69b6defb5f232da066573b0067ec810a8ccfb2f3cb91d472d2979ab7a7
          createdAt: "2025-09-24T14:42:33Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",  "workbenches.components.platform.opendatahub.io",
            "monitorings.services.platform.opendatahub.io","modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.21
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e9612ec99daa171c403b5ddf37788526e5375b83987e5de9b1ebe519198607b4
        - registry.redhat.io/rhel9/mariadb-105@sha256:c390b12f5c2c3ea7cd897b59eba7127ce22f474130cd8c1bbbbaadae870baca4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:85202cb75250a1ba2691d65b52b306fd77566660dd29cdf56bf8962e8bb4939c
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:1b7befcd29c9c8f783bdd3c5654b0412ea45cd88cd18eb5f8f5a411f1323c6bd
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:4c57dcf4df09fe0d03578cc8b9a3ca2ea485b6af0ca0203bfb85e640058b7daf
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:cb47e165935f0d9d3c88088689c37e68a69519357a20d3c52ab6f71240dab507
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:a936d87646843edea2a84eb429bb44eb730bf3e04e8900fecef66721426dba89
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:dc0db686b7688f98b5f8595661022cdffa5d26a078289cc7aed528f0ee1d08a4
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:80fd53a580ce7bc4d02023d38a04912e84c2cd50679fc5ea034afba935623157
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:e68492a6a75cb83be0a968b832c1478b97f14e661376328085fd5416a08cbc31
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:a88696cff8cd2cc2e295c9ec082b7f25f61dfc9ac12f1c208529ff7036d5af29
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:04859c878ffcc8c42550a98be625ac52212f9b79a6fd5b3baeafb3592926cbe9
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:c3e283c0536266195dd461042ca0036ed98cc33650d806be132db4fba45239e4
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:2b4136569e10ad7d47c82bedf55c1705a833dc67c8f833656996bfe1fddbef3e
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:687c8eeed55f021ecaab1307f0e88b5b16d91f72d63b3d7168d7bbee90e8947b
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6a388ee3cbe3813ac955d319f0ab65a81da321d982c9881c6c81fe135311fe1d
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:152b425725228953f43b57a4a034a6725993a5ca556af328ae5e06aa3f1acbfc
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:4c192208c618b49f31cf31c9de1a33c622ce3f120204c2eec8ff7c439ea6785c
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:5c0d56f434298f6e8bf6cf7061cd1ae6df9915225cbf04b010b6b59a64775cc9
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:2a16c353fd13dc1f3f5c4266f1b9786a8e7a100dc05f2d554bdaef082271063f
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:1b5452b87b36de2b62febc777efdc6233a168ffcc09e2067e482cc444463a57d
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:7da004e158006dcbdcf0c3b78c40411b82c9d56ebf54b1c30c245b6550b8ee7d
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:003fdc6cd1821d620e1ce4050ee608e2d2a32f2b08c8fa9c147e2e14418a8d91
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:fc98ed817a4e9ab84e2a66063987304f0cdbe6e5620a58a7f25cccd61b34ebf9
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:cfaf4eb86ddb9c717340ab17fa4b83323e5b40977ac70265376c87329a3f6f20
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/ubi9/toolbox@sha256:7656f815a0d13ed37f56d11635559a87a3d00840253755c71b644b858f67d556
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2638e3a90bbb242dd2483fefe9fc8b472f334c510d0139b9b7c875c30dab7984
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:52e1ba8ebf4d55c64c94c9076185c5612b537e6e5ed4944fcd6ea87ccb9cd182
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:fe6593bc73e77d315d82b7921bb1975c19fda1e7630ef5b30b69f5901ce30178
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:239f226328e5ac77d6dee498217d55103a6d562f4829e38abf65ba55fda0aca2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:5f581957e4f8deebf6104a394272e6fbb1c54d813bf069e95875d865eac209ad
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:9c2d6ce05775ac34ee5695b3367d12bf2a9c14e318a9544d00a56653ea5f2007
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:7d0b8d69b6defb5f232da066573b0067ec810a8ccfb2f3cb91d472d2979ab7a7
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        version: 2.21.1
      entries:
      - name: rhods-operator.2.21.1
        version: 2.21.1
      - name: rhods-operator.2.21.0
        version: 2.21.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: embedded
    - currentCSV: rhods-operator.2.16.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
          createdAt: "2025-09-24T13:27:25Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.16
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        version: 2.16.3
      entries:
      - name: rhods-operator.2.16.3
        version: 2.16.3
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.8.5
        version: 2.8.5
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: eus-2.16
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.16.3
        version: 2.16.3
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.8.5
        version: 2.8.5
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: eus-2.25
    - currentCSV: rhods-operator.2.8.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              },
              {
                "apiVersion": "features.opendatahub.io/v1",
                "kind": "FeatureTracker",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "default-feature",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-feature"
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:3b9e8a71ba795a2ea91f4129253ccb4be3a79c7c1c6a87082f96ccc67eabbbac
          createdAt: "2024-11-07T07:17:25Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.8.0 <2.8.5'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Removed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "SelfSigned"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Removed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.


          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines. (including Elyra notebook interface, and based on standard OpenShift Pipelines)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:13b850a5a3f8776c6c8db887c666d88df72901895b5ef1be9a8bd372cc02fcb8
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:038ce76571217d6c624d614652e8b96ef6484562cf52ec1be88392b8ef8a3bbd
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:9aa5a93831992588766ac8594ae3c4dc7111d08a90fdbc8751c40484339e46d4
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c48474563d98df32e7243e33302428ea8836be5e1a2e30d20b4d796a62cbf6b
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:61a506fbf263cd72951ac8bd151127e0c74fc74f0a05f7aaecaa54fde47ee490
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:3b9e8a71ba795a2ea91f4129253ccb4be3a79c7c1c6a87082f96ccc67eabbbac
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:2f6db789ceb3f90f9c9911c6392e62d0a8e4d61be68a7f7cbd781f47faab6389
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:df34e9d2d121a3def2dbb86f108b3fb6948bc7ba7cb44c70801dfd2e81d3fbb1
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:8ffc5da798e783c65d5be7f344219b2951d8c2233d6494a4ae2bb5c86eccd699
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:34d177abb56b948eaf9ce6fa62e37427ddee9fcecca48e752d09f72c69847a46
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:81ae2b95f2da740cb5264b9ba8b85f0f58bb4ab80d6431f66d52848ed0c21afb
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:4b1b9f05a94713292a7a2f6782fe1d3eea6f36214c36b38f402aa91a554ab18a
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:45498198fadfbc1457bf2a6084ae7ea515d454d86d148783aae3abdaca6e999d
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:d87e4b1cba72eb4f50b3f2d59863799929c22ca37b01a1ff4828a9ce0be31f25
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:60507a3dddbd88560fd85204699147facd2b6371fb25e0bf6701dad02c0b4dd4
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:13dff890ec67fa56864c244a40fc404e9eac05f33573dd16d088b37f9340ec41
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:eeb8bdc94e7fa2b454fedf72eb75756052f8bfb9d92b116a8267a5584e2528c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:1a1074263ae26e4c8b0e3863228c35e50133169f377ece6c47b58a12e0fcf453
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:28ec01e514c15cae145499840597d1be1b750123bb6014de2ecc3ef0d60fa134
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:1dbf09cb1624c9f961f8ac8e371c97aa7c3fbfcad4c4d02ab4fad0eb86d2aa95
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f9c474d454d0b006e06859601ec9a64b5e5c91e9a47bfab6ad6d8cce5aa6b89d
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        version: 2.8.5
      entries:
      - name: rhods-operator.2.8.5
        version: 2.8.5
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: eus-2.8
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.24.0
        version: 2.24.0
      - name: rhods-operator.2.23.0
        version: 2.23.0
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.21.0
        version: 2.21.0
      - name: rhods-operator.2.20.0
        version: 2.20.0
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.18.0
        version: 2.18.0
      - name: rhods-operator.2.17.0
        version: 2.17.0
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.15.0
        version: 2.15.0
      - name: rhods-operator.2.14.0
        version: 2.14.0
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: fast
    - currentCSV: rhods-operator.3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v2",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "datasciencecluster"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "aipipelines": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      }
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v2",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "dscinitialization"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:ce85b1b02706459a31fb64d1cbbd8130f5cd1707e21a85b4fe9e95bbd109c19c
          createdAt: "2025-11-10T09:43:22Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v2",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster"
                }
              },
              "spec": {
                "components": {
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "aipipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed"
                  },
                  "llamastackoperator": {
                    "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Removed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "dashboards.components.platform.opendatahub.io", "datasciencepipelines.components.platform.opendatahub.io",
            "kserves.components.platform.opendatahub.io", "kueues.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io",
            "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v2
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v2
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: GatewayConfig is the Schema for the gatewayconfigs API
            displayName: Gateway Config
            kind: GatewayConfig
            name: gatewayconfigs.services.platform.opendatahub.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (including PyTorch, TensorFlow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPUs, AMD GPUs, and Intel Gaudi AI accelerators)
          * AI Pipelines (including Elyra notebook interface)
          * Model Serving using Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/3.0
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:45ae3dbe4cd8c5ea8a5ba767bb95c540d618b6e8250dcb1dcbac01e3ec805245
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:95177d662c1ca6d86b77f2a9427945e4d65e8236b7adf15f3d35025063afe94f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:b87eb195a423337071aa318c28452d12070041168d41fb41e3ae3207619a3f16
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:4000a91132d67503a4691e76a7079f9140e3c8091fb1a59ad235446f96cb1a34
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:84a7c26966f563e970e5398cd0396df2b4fae3b680f14b38a59bfa34b3c3a2e6
        - registry.redhat.io/rhoai/odh-trustyai-ragas-lls-provider-dsp-rhel9@sha256:c1694891f19be1fe1abd431505549dc02021c389e640e77877bbb7921b42aa5b
        - registry.redhat.io/rhoai/odh-mod-arch-gen-ai-rhel9@sha256:459e5abcc3d5403ef25f53eb4c6cba75c88371c84dbf02d8cb67f478fbe624aa
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:4a035bb354c4a0e4040c277b2f1a1ffdc7e61f6f505c5fa5d032d22f50c4fa29
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:bd7352755c52f16dcfd7403f120f65dce7742dfacc393fc6bbecf359faac47c9
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:dd37de4ca53ce242a0f67a70d19eebf157679098a3417e9ffdf8e24378f6bdcc
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:de67ebe1de42971f1cb99df039044a6c79471802dedf666282e349c579f79c3a
        - registry.redhat.io/rhoai/odh-maas-api-rhel9@sha256:29165b6056073e3f040a8d4eab023dcc522281888f7e6db0aecd447762761115
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:bafee27b0842d196eb305963cc9b3f29d31cdf2c014af88b5965a8d908cc6f9a
        - registry.redhat.io/rhoai/odh-training-cuda128-torch28-py312-rhel9@sha256:851f2b31fa418d2eb172ddfa6010851bd5d4f0844d16b2b42a408f2c0b985b86
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:70e900e40845e82ef9ff4ac888afa6a6e835b019ad69aae7297d111e087520a3
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:78b6e29c66a425b9f097cba92240f96d32f756d379b779ed37ef51e8625364b5
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:c8c0e4bd524abd8295ccec00e7eacf6aefedd1e67d345e09088bc87e10f6827f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:4326604a5f2f5ac398f5bccf5259ab166fb21dbd273eb233ca558a22c1163312
        - registry.redhat.io/ubi9/toolbox@sha256:668ae64b30c95862377fc2414e48714f1aceff9d23a1d8c4141e3e83a4d4fc2a
        - registry.redhat.io/rhoai/odh-training-rocm64-torch28-py312-rhel9@sha256:501794be7653f12539fc420394c5ecfa2986109ef71785534e6e068212d07c25
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:9a6f0917e40d82684148d25c96e2a5b4a8a24dd3202734dfd7450f55d9e8b9c0
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:c90ccd4d3167d2092c451af95a773fea19821e4b8bf8fa754bf0b1b632a7f51e
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:4afc7a50800be57c57170b6ec2345fe0a9fab1eb4ae179025f6fae230bc05894
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:a59bb87677721dbadaa3e88e29d47470d0afa2c1b52c652caa77f74466beb698
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:ce85b1b02706459a31fb64d1cbbd8130f5cd1707e21a85b4fe9e95bbd109c19c
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:0bda59ab4c3db060b7221c630f6241cac086e3853470a07726289b87299f4da9
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:3d63cfa35ecee611a9075ea21060f75b0926f9b018622f52282b9f375b5ef968
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:ad756c01ec99a99cc7d93401c41b8d92ca96fb1ab7c5262919d818f2be4f3768
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:eaa42ee5a963696339c318b511a330b2b6fc9e1eb173d2d47f9cb757f6eb3da9
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:84a1b58dfdd85eac95478c681affb502d2402a14bf2879aad36f1d17dfd08f39
        - registry.redhat.io/rhaiis/vllm-rocm-rhel9@sha256:8624e2a5086cf1303b59154a817f60a3476d6ca48899261a2e477eb9e99ae781
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:13ec5c9b96a9ca8c0a1fcc0568cf6f893478742d28d3b1381f073b9bdafb3320
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:8d17607ba6e4b859ed724acd1cdf54e7dfff6989fd23dfd7b77faf55efcf883b
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:4f250fd17c023c43ca64ade19c84afbc77e72e66548573c2f987d10e6aed3821
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:5f7a974163856d07985b5da257688aad036427d3724194050782e58eab0cff1a
        - registry.redhat.io/rhoai/odh-kube-auth-proxy-rhel9@sha256:657bc0b43fe2da3211d80dc5085f57dccb451c30b1a254b87b4876745c414d36
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:b03cd2977bcb3d3a44795eb17e7fbc7dc842ab277fae441031ff921bdd7f56d4
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:3617ae4fba7499bf17ef591df2e787b353d6ec7962bbcf14c4c8b3edf045f314
        - registry.redhat.io/rhel9/mariadb-105@sha256:a376c86dc5b288516604d46bfb6025972e962b2be5a00e70d5d479ae465e0bcf
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:f5b70a687fef130c35bdeb108d7aab4a0eadf6182d379b6c517e9d1157713108
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:7e7aa488af45e4a038664881c7da3a9016fc9f9c7952efa35dfdc77971fcd5d3
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:6bf37b3786398e1d9b7004d5b08e0b4c58a5dcf453c02a9fb260bdfe9c32161e
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:b6304ccf7e8064bfdbacdfe998bbda099d6cfc36a9cd92b77e4126609ac34f4f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:daf66fb7ec41191aa15f32638fe79f4a76c7d158b705e0f761f5b77e1f91336c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:c00d908ff5d82c0b04ade151be9a5a97843606dd9fff731c849717ff79a3a596
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:eb68797b15eb5d748f2658ca41c7aafc5b9ca38882c56b87a22d5c9a3b5e2948
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:aaf677584e83ed6a93586afbe1c9b698430593e346c8cd00fb8485ba4350241d
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:4fe3183daa06c1605c47168db6f96a6dbd2b72df8ea99ef755372d7271299c3c
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:5f5f75d959ad8507704821add365539dab7401a7496bcc7cf2357c6cf32df3c4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:20b705332935cd372f06b86e36c521873b39c7660b077b90d39b7bd37700c679
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:59f75020cf630e2c7aeb1ca7692745c8e11e4ff46cc29fe7779213f7b56d1e71
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:c852573614458adaf8d0e4f8f3f675c036c3daa1ea8251c7601b2d4c22b3e7de
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:d5d3f661e1ab392b1e977f871a1cd95f60e4d7509f7c79d714a4bee10aa48293
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:fd83ee0ec98d0bfcd7f8567b2f802f08a3a8fe74eba2a74ae560f90c1c72bee5
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:ee6b2596c10ca608cc0897a84336871591bf701a08bf90f345d2232277cc0c3f
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:6a151dde578c2fbd7377864cd5d04268853e49046be62cccc1d298e444c73f0a
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8c99d5e93a469b2aa7f7ad4810f17114bd032392135607945669d92182e37fab
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:1431c04ecb88387a9e15566ba8105d19c7fbceecf65eb5731fe69cccbeb09cf5
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:2efaad91d9b7c997bdc41e6120d46620dd9890eb6bd6baca7124aa00f66fc972
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:1318b9f8de94db57dffb87447b34bf660eae0792915b4aa64375a0ba0f13ad85
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:03db3dd3eb3290b048853a8d943fa1a5099727ff0d1934eeb0a7177bdf0031e4
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:40e552687ecb12803db16edafb0cd93e39edd9269d1471a7ee1d011b43da1fa2
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:ed78d0c5946a2cc75c8bc2db6dbad5d757102acfa9defcd3f4a30829aa47d9d1
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:d79f02050b0cb8847c5f83c0a76ab47bc79a2fdaa2c18ab6ee6b3d94ef9bc7ba
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1552b758539ee09050b1923cf214d6d88543d51d7ca230d6880818ecf287c10b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:647df7a0f1d33fa04e39f1d38f918236e9983409a07fd9de21b085fc847f0854
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:3e08c969736bfa9a44f6c7811a4d1428c03fa80b52e0b6391aefba3c36758751
        - registry.redhat.io/rhoai/odh-model-performance-data-rhel9@sha256:eda8a51f260ea4e061b528ed2ef6f631a8680e5623ba5ef528698e71d34b3a58
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:a9546158ae141cc3c590732d578af95ac599965b3cfd47fa440e461658940125
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:65f00fbf16f2b8ec98765b854f395cee16d69f2f58d0fe81fc1ebeb3817fd326
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:d11ee73c3dab3bedb39a6da9c29b5221a307d9f69297a12df3489f04cf35506a
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:bfab4c5965e44d4428eb5a3d3ce85a81a163e15093d981a9fc474cd8f9fd64c2
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:9479d6829ab86ce510ca9c25e3fc69dff86553467672dd7f5cb356000e128916
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:77cac4adb89bce424db492657eb9023ac9574fd32096c3bc68b960020fade08c
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:c16cfc8521eccd9b494151ffa98dde6b7faa5e349da611d6091038a8590dc447
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:450b2b76c53f17163cdf91b03d35c296b8d7298d9cbb7b792fd2eabeaab794c2
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:e45e6925ad930d9195d906fc922cb956621c98533cc9ad1916c510e8a79c0904
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:3094dd9e7dd9fcc161fdfe983557edc9d773b2c07e727c0bbb0e37ac16a39d93
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:0224a782de0b062a91d9b0188a59f8fb169db2b7e21bed7624826d3fff7b7da4
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:a50f7e2e8891acbbebf64a2acab98ae64e21cea7a5b5ea4b63a148f4fed91b1f
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:726bdac8c5791695a5b0a43654fd482ffb7eda2fb384dcca42a73cce923a411f
        version: 3.0.0
      entries:
      - name: rhods-operator.3.0.0
        version: 3.0.0
      name: fast-3.x
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.22.2
        version: 2.22.2
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable
    - currentCSV: rhods-operator.2.10.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:8643f7ee8afacfe6ae08cbbf81da76ca97032dc3ce3da4fddf16e330e9e33a08
          createdAt: "2024-11-14T21:18:22Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.10.0 <2.10.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "SelfSigned"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:0ff5664c2eaadf3d3073b3d7fb711da47fb78d21f67710d8b8aad5452cb0355d
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:fdc2bc06b0dfa79ebc6451ac3793b5e8d9f165171633831dafe46ebc18c10c35
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:65db5e8cb2fa46d020ed4837d4479d133b52167c373e65f81cb590eec5391af2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:12741379ab24d2286b5fae77f4383fb65713af7b3356fb43d8254ea85d4b0ee3
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:214ca0608fcbc0fd585bf01768d28c7ba17082d1043349ec8445afd663095383
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:52e8deeeeaa21b17370a5d5cd644745da745b6e1cee8c6295d6df75c8d2aec04
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:a9c6e3afdf605465766fa93334cc0f6bb5e46a5fdfd7ec64d648e2ed72b05ccf
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:220cad7a22d40998063c6b4fb2f63e69330e64ca7118490a6680b05fc99b7733
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:8643f7ee8afacfe6ae08cbbf81da76ca97032dc3ce3da4fddf16e330e9e33a08
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:7df2f8bc2c5c0f4f347d009b62a058b5107413a2abd789f6010eb4d6c9e4f8ee
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:267d6795bf53f9a1955d73445776a428dd042af0cd3cb8bb5b91692a1bc1e5d2
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:5d15175f934017c04d6a6057200ff55b2172a1f4bcbeb0f2cd9e9e545631d93f
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:24238abd46633709feb75f2a3e41cf6c9e8528d2c0e4be2fac6f56de44e3fb9b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8911afbb65c8c4f10c3597624485be54b9103e87a5020b718b35ec3df2c9bf00
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:d9b55e8f25b81050380b4aab040243dc18a7432c48912c9b660c97dcc5eea008
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:2007da5abf840712cd2edb50462b2d8d571a0193c3ae1550d4a279eddf2b335f
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:f4d7d3ba4a0d3322bc9f327e095e9ec56073758f6dcd8da8c7bb185cf952ead5
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:d2514bf4b4b2d9abc19facac3f1a55405eb3ad0d9e9203e8816bfcfa08c9a6c5
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:0af6a91553f40ea40e86d85edc204658af3e5a45e8ab94cdb6b767e545df59b9
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:932e83fe9c9b54934767a7c5af683b2ab08bd2b4f0524c191f1c766dc64d9c3d
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:9f7b1cb8623de8b0550b0ba124d3b50f5e960ed011b33a3262c6346dbe2dff95
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:807ec05e9e107afc969e718d0c2c980959e2fd462e777a5ff63e55156ea150a4
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:4876f14ca9cff0e2b998a56f2f56d0775edf3963de610f4b810b4d94fb12d719
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:d709f65e1194bc877fa4f9ec681b598467703d94139d57b58c24490d3a59fb82
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:232ebac25084db056fdde49477b5c1e6a03a0228fea3758bcf6234b3d0eaa582
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:cba9f25ac6bb2734bb990a622b515c838b881edb688bf44ff196ebe7684ab74b
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:4da77afafde99b15fd357a4ab6609644bf6330a1d9c0c03e64726ed1b9633230
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a1d590d0e2b3fae9ecbd843a664dab083061e797f66a9f0a021b0c2c487d7e45
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:8fed8f58732bff512289fff738d0a94be67286c41b24eaf5928bbcb30d88c88a
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:a4b9553fde02d9c67a9c98f063eaf82fb1d2689f4b1269e57bf5f12c8d4adecf
        version: 2.10.2
      entries:
      - name: rhods-operator.2.10.2
        version: 2.10.2
      - name: rhods-operator.2.10.1
        version: 2.10.1
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.10
    - currentCSV: rhods-operator.2.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:28b5fff602ad6fb36d462e1905f453509ec22fc251a1e0cf64fedba86ff420d7
          createdAt: "2024-10-17T10:53:18Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.13.0 <2.13.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:363a35c332fc80b068157951d5e50e6b7209947649cc64803ffc02726e7581ab
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:cf3779c64bbaef1988886ed629c516e7d6ef7bdc73b9c95ad4c087b62e75750d
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:c2bd493e9345eccd124bbe0440e45cce8cf57588827d8eb9533f8bbadaa3ebbe
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:688389195aebf3f43e74e40d591d2fd5f9ae41994d8ac2db661f292f6eda012a
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:030c53690fe25e15bc9907f51c3f04fab39b4d085ff2098d26316ba32cc8b09f
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:fb630d6f5817512733b8ea05f7147121928917a24ac8d98239f43d920880c359
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:6b2c0d1dd40e2c276684e17818b14375bc778e6c88df0bdc3cc24bfc9294804f
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:7c895490d49beb6bd724f47ad1b17ce501650557b0889314799c4072632f2b99
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:bf25fce160dd7b8cce11e68a501006e4fa81a7858645038cdefdbba03df7ecdb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:8883bf71abf39b4a6985940c287eb6ac7dc137d491264805d48bb112b65bd008
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:a55f73d72ad2b07f01c49949cdb00969bfe4789375b3d7cdf9814b969fcc808d
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e1c19bbcd4c010ef2bd4f760eb24b2c96cdb82b4e025361a433e6a241eb23cf5
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:71abac4fb3d613edef7f3ba117a73bbeea61f341d6182e8310360a76576c789e
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:5d6354e65106460ab9285b42124faf288298387a8b16317565bd591f009c39a6
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c2ee4136ee0014d1ef395b5e3bcab125c846f5e258ece3631d912f431c8d208
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:2566b73e98b783871fb500bb1a8cc4e3d58a513c1bb18abfb525da0818e6138b
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:850901511bde065cf73e4c18d787dc10b6e91ca6139fc3ba68da28c41dd28236
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a3048eaa8924ce3571c6e78014438183fae70d9e8c833a7c07774c675104e3d4
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8c19c7fa535f36bdce3b73cf3300e321909d44954cbc63a8aef6321c5f2fa693
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:9ccdd7fe8223057a2234a3a2eb3b492e7b69e6ce714cc26a805fe2dd82935195
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:74e6cfa0bc481588cb8dc61c206ad567fbd2b28f43c2a86bee4a8e0eff55447c
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:7d085942e4da73c2ff4885c62f10b904dc70fd08e819e62f925eb1b4ddfa1554
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:fd4ce524acc1769475079c7231f5ea79ac29551c513855ef34e5694d2c9fbbd3
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:59e9cc9cd57ba48ca7e87ae1e797a902f826bb890cb198ccf549f76ea581ba6e
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:cd6b535d95eb1b44fe261a5336270fd898b966f431c14e173944484381c26d25
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:28b5fff602ad6fb36d462e1905f453509ec22fc251a1e0cf64fedba86ff420d7
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a37529eff3656a570d796083404e5a3f63603afecfe9e738da1a243c0cb3d7c2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8faab013568ee023968a5ec5b3a79977d7ddae3deafff6328e6fd56a27198e24
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f5b17f44c5ab72d6cf658f72f24f15e06a5ac9be1790336f7228ab8e7cfc15c3
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:77bca19180f30ef08f4d1598ac6c365e190bb7909ac4a1fb35d9ba9ba8d6ff7a
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        version: 2.13.1
      entries:
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.13
    - currentCSV: rhods-operator.2.16.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
          createdAt: "2025-09-24T13:27:25Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.16
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        version: 2.16.3
      entries:
      - name: rhods-operator.2.16.3
        version: 2.16.3
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.16
    - currentCSV: rhods-operator.2.19.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:c605e5fdb3d66302781146347df6da5a91dee97e4f8f5d9ac33f105b8cdee383
          createdAt: "2025-09-24T13:27:42Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:b30d60cd458133430d4c92bf84911e03cecd02f60e88a58d1c6c003543cf833a
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:f0ee0d27bb784e289f7d88cc8ee0e085ca70e88a5d126562105542f259a1ac01
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",  "workbenches.components.platform.opendatahub.io",
            "monitorings.services.platform.opendatahub.io","modelcontrollers.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:8ce44de8c683f198bf24ba36cd17e89708153d11f5b42c0a27e77f8fdb233551
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.19
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:6ad35cf5c4c62ed5ad4e192afe8cebead9796cb24a964401c76ff8656c47742f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:b24c25dfdcefb4ec26e7f311c00798df108f7685def2b1762b7624fdfb160ebf
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:af4721d61dfb61c75488a1bd6a5f62b23e20d7b7586a9cf51ba062ece2837715
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f49483df1d342d8e39f9a8085920aad79313a475df02a2292a136ecb784402b5
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:a6e02e1876fd5382ba4921dd65650b2d747666feb96c839f34e99d2972dfc323
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:b20ee16b776871d7c49b23f2bc91726812998561129f5dbd14eddbfe57964c93
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:8ce44de8c683f198bf24ba36cd17e89708153d11f5b42c0a27e77f8fdb233551
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:4e8f6c6ca0ed516b8310af0332637683b5bfc8f2946eb935c647698dffbbcc79
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:de0e4b7fb822101198817e83cd7e9f4f7406e75ec91d07a833a27a417cffe66b
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:53ac36baa374159b9065c718a9ede821bbb61d9ebe9502b2243e0a9f7aca0d16
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:71cd15f0b1acba3a48ebedff037bf8a846b426c18363a4de8896a376b6b7b3d5
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:bbef4839f24facce111d21aca43898dcf4e6cf57adb16200e3f1590bd5f89eae
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:b6039c3c33a5dc345ceb8e757437bb13023d2bf85cc2b4c10b9ab3887e78e0c0
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:87685c5cab105d876ff0d14b0e24d8dc2a1ff5b55bebe36028c5f3376b2a5271
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:c605e5fdb3d66302781146347df6da5a91dee97e4f8f5d9ac33f105b8cdee383
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8a6732ac3ca60f13dcb1fd8f186d2fc5dc601b9b5981a58f039af9e237f20044
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:baefbe4e7dd5aa74c71cb81da4a7a2b888a02d3eb1398ec4419bd8003b77f0c2
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:520ed21b80e5487b3a0a13b7e5c7d791d4dd28e0b6799d57abb65d53fca5a03f
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:49c02285fcef6949892cecca20eeee49d03a9bb4d17bb9ceff7c7a0dbbb8ab40
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:c8c23c07038f59db848dea0d4247b62840dbe58e1c581dc0722fb9d7f9be3b75
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:876ca7ce7b0b975688fb4a77d6cd1a6f87cf9eb40c2a9a5b84d8cffdc80eeebd
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:b30d60cd458133430d4c92bf84911e03cecd02f60e88a58d1c6c003543cf833a
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:c1c97b6beb759d3f6f2dd53c4258e4ccbb3bf35cf11873bd446b135defaa69d6
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:bf6231bfdbe52b597d86e03e4730ec105ebe7a639fcd529268b7c0423f2a890c
        - registry.redhat.io/rhel8/mariadb-103@sha256:f0ee0d27bb784e289f7d88cc8ee0e085ca70e88a5d126562105542f259a1ac01
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:d24e277f468b0a48f38801e8e0bcfeb8264c3f7c128073ddaa17934b8572cc3c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:6f01ac7cc62ab961b9c8a630a558338a61f6d7902301c4a1ad337495ac7ce85a
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel8@sha256:6166f525948a018c41d735014d97fdfa52024f7be31e18976d85d1a0d88901a0
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:6275a19ef06114b33d79833a94ef10cc8203368eee98e5d415e73d20cae1db85
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:4313cae03c041d461bc276abc23d706b582b5d16feab316796ca43478b9dc705
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:d47514cbceb3cc96e9d33b7db6fc1df60893e5c4118bf6086cdd27f04c472773
        version: 2.19.3
      entries:
      - name: rhods-operator.2.19.3
        version: 2.19.3
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.19
    - currentCSV: rhods-operator.2.22.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9292ff588ed93a002187b070b644c16de2696c0490c1c2c4d29a56e217963436
          createdAt: "2025-09-25T11:28:22Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",  "workbenches.components.platform.opendatahub.io",
            "monitorings.services.platform.opendatahub.io","modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io",
            "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.22
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:6234e15f001122ab222481321153fb0eba7f4d86bf3dfd64edf3f6cecbe7d62f
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:7b3d7787ba95156de9c284ad78f2d63a0d3bcb525f4d8d11ebf0203d4c5c1fe0
        - registry.redhat.io/ubi9/toolbox@sha256:ea4ce8cb8f59cf1b0709f1606d7cab074c3806d4016964eedc0555410cb5dfeb
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:2065b96bd6f0a830eab66e36217a927448cfc5a7dabf2a5e7d907aa6c40657a4
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:9104cbc2d595933f0a2acb7313e41ed69905e76a9fae6bd9820e7717b56a632b
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:d59ed40de694bc0e0564bab159a5b586cffa0721b6d761fb2d81dd42e6225d1c
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:cb5be3dd7098f4c8d66f9e85ad04656460df6102652deddc6cccb884a12be733
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:abe1f9dd11c7313fdd55b678be511a5cdc3546654a68e2b53d42c1013fec8d00
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:d7c4ac937add511460a36375d9b6b3c475a3a9a7cc96c00df2fbad6219aee0e9
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:5914f71e37c815ce2567826896e051303bdef52fae1acf8d02e672fc24c7eb9d
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:f9965177de24f3165ec4c001c14cf1e2c2c01ffe847839af837c442e3c96beae
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:ccba67a6a5aa3403e0018f29dcdfef483220dea8065d8b572e80c653ca992add
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:b2ca229bb4c4dbf04b96766b8af8d9f55f2edef59ec4110de0d20f8c857e7d27
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:2b3aace0d80474470e71c2c8291b25738e096109229fe6d5d3e06e9885ee58b6
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:e6fbe6723b4801f6854303b3fd7d4a4a36727bdd28dc28002b7de4929739ccc0
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:27415b1c763cf89b79391f0b039936c3e078a078bda4420f13bf10ef9be31d5e
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:2f3f305c97e50057781553416fb4026cde306ead0fbe0213627b9b5bbcc8a0c3
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:32c9511846077ef6035eb19be7653f6a78e0f207eb420ab93b18f742ab5779b6
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:b2c2ea9d35edbcd16e1ae559c88a453129b877fc049ab7a7cd6c2ebb8f0bcb59
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhel9/mariadb-105@sha256:5e77b33ce04c1eafc2e8840586ad6a5b51148dea8a46dda151071e28858331f0
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:7fd540586a1ca111370100a473923b3dc6cec4255e9e4f3654bfbabd9158a2bb
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:13f3679ab289eea9de54fe129a7c83f6c8ec5d26b61b430637a7c4cfcd31a74a
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9292ff588ed93a002187b070b644c16de2696c0490c1c2c4d29a56e217963436
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:1709fa3c79aad4ba7eb9be8299949396092c8e20210124e0c0936385bc04e839
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:a44d32a18b1e906c1411cafc82102881573fcd04e040a4e2ba6bd1bd617b70fa
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:5d79f0bcca0a213b53aee6d88834e503d343821596b857b13d3a6362de8ebeab
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:2f1a0a0803b2f5118b167e9d9c2e86660add5f79ee6f47044f63b0e8abe0b75f
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e87a96c8a61042e83b8db0194adf3fd84c3a311b1f3793345a35bfd0e7ea56d9
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:2fe9473cd1d6c445d2ca7cc357ee4bb009aa1838f9cb69ea418296b2a044816b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:bd6d1599b4ff9eb890be9808014715b28ca19247222d65f40df024db4dd3525a
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:74d4e0174655cf6f6273857325a1e714a1531c5a06ad38bf139bee9c7d8f5f19
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:e3b90530c6e38f6940d7f9408e9fa2c81eb06a857ec2b0bab5d006b1e9a63a4f
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:463e9be9c4409ba1e5a42713bd65844a023e7a3e9032d4e862edbaa5fe35300a
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        version: 2.22.2
      entries:
      - name: rhods-operator.2.22.2
        version: 2.22.2
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.22
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.22.2
        version: 2.22.2
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.25
    - currentCSV: rhods-operator.2.8.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              },
              {
                "apiVersion": "features.opendatahub.io/v1",
                "kind": "FeatureTracker",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "default-feature",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-feature"
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:b3563e201bf2720f60e73c0b04cb70566ea52eda7d09a28753f3a1487993c2e8
          createdAt: "2024-08-01T06:23:03Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.8.0 <2.8.4'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Removed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "SelfSigned"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Removed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.


          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines. (including Elyra notebook interface, and based on standard OpenShift Pipelines)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:68e1331f13dfaf6641a1e7d54f4cf29c0ef42663abc98b6dc69167892d2d8adb
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:df2edcaf4402b11ce24439263956e3b0cc43efbac2fdf152afacb1a398dcc59a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:5f39b11f0cd6db2d7d6e51ee666c030e2643aee92a090b49656c1e7dfd8a5430
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:eb4da3a645b53acfd6ce8758c043ae19b4126e62bcca09165114a141c2c8d014
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:889f046b255b13d99801108588d3abf577611b828657b5240a18ea21f0e3cbbe
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:92d9e4b53d580df6cc1f14a849b477749a1306941a2e8f9d1b6160f4911c3cff
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:9c90873fbd5af8fac8efc3c7c27fba742a06fad2d47f336319dd05d2b116867b
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:ab8792fcd16b1aa0065444ba54335cb3e747379740c3ec2d56beb46ff80cb044
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:1c49888ba2e9449c04d5588040c099290fce4793c2ba8874c1037316e550d6e1
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:06a6d5cbbe80d49bca9e4db9929571a69e35ae7951fcae84dcd6460f7ddf622c
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:987c768c0688431a53e48a80591f2a41e074994169f9e691b28b89528d8e736f
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:9799003449bfb61ae8f59efd2a611b0da3bccadd9b20cc1519f6c9279d085337
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:b6ecb3858c201498024e3bfc4a93e630699be4b1fdc3a65fd2d70e4b375eb9c2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:080377d42d782bf525b4072384d0cf8409b48019b3748ca7c855f340bcb94251
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:b3563e201bf2720f60e73c0b04cb70566ea52eda7d09a28753f3a1487993c2e8
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:91525fac5fadece75fbdafc40b94445fb92c88cfc8c2f06b596f8c6377e59c9e
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:cb711fcb32b5ca0f34c4e3c67624bc4e035de4247617d988a9e841fd58c1c911
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:0b8665e8978deb73be2cc65830f08a74a5a48f3e3ee7b2b817f7bbacba257d22
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:850b78a201effcafe33705dcd2670f1c470d8b46ba6e307032403627b55a7cfe
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:90833e85e0de3d7de870074c8b04319cd11b913b9652af6a5727aae41a91458c
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:1a6e29214e06a2665baadbed598ba758d6141bfa522984eb05f05a80558a403c
        version: 2.8.4
      entries:
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.8
    defaultChannel: stable
    packageName: rhods-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: prometurbo
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometurbo-operator.v8.7.1-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.7.1-SNAPSHOT
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/prometurbo@sha256:ef65de2143df2c93aa73f099fa66d39e3239c30a9d547ed7bf258da0a19e8e35
        - turbonomic/prometurbo-operator:8.7.1-SNAPSHOT
        version: 8.7.1-beta.1
      entries:
      - name: prometurbo-operator.v8.7.1-beta.1
        version: 8.7.1-beta.1
      name: beta
    - currentCSV: prometurbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.6
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - turbonomic/prometurbo-operator:8.6
        - quay.io/openshift-community-operators/prometurbo@sha256:cb8b13fece10b8217b79e63584f8df4975721f2cec82aada2cf6c266d72dbf75
        version: 8.6.0
      entries:
      - name: prometurbo-operator.v8.6.0
        version: 8.6.0
      - name: prometurbo-operator.v8.5.0
        version: 8.5.0
      name: stable
    - currentCSV: prometurbo-operator.v8.5.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.5
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/prometurbo@sha256:83444ab464bce4fb5021a2fca6d4d6ff72b40e90a6cfc9c5ac6c74357c775ad5
        - turbonomic/prometurbo-operator:8.5
        version: 8.5.0
      entries:
      - name: prometurbo-operator.v8.5.0
        version: 8.5.0
      name: v8.5.0
    - currentCSV: prometurbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.6
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/prometurbo@sha256:cb8b13fece10b8217b79e63584f8df4975721f2cec82aada2cf6c266d72dbf75
        - turbonomic/prometurbo-operator:8.6
        version: 8.6.0
      entries:
      - name: prometurbo-operator.v8.6.0
        version: 8.6.0
      - name: prometurbo-operator.v8.5.0
        version: 8.5.0
      name: v8.6.0
    defaultChannel: stable
    packageName: prometurbo
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/version: 5.8.6
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Crunchy Data
      provider-url: https://www.crunchydata.com/
    name: crunchy-postgres-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: postgresoperator.v5.8.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "CrunchyBridgeCluster",
                "metadata": {
                  "name": "example-crunchybridgecluster"
                },
                "spec": {
                  "clusterName": "example-bridge-cluster",
                  "isHa": false,
                  "majorVersion": 16,
                  "plan": "standard-4",
                  "provider": "aws",
                  "region": "us-west-2",
                  "secret": "crunchy-bridge-api-key",
                  "storage": "10Gi"
                }
              },
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "PGAdmin",
                "metadata": {
                  "name": "example-pgadmin",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "dataVolumeClaimSpec": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "1Gi"
                      }
                    }
                  },
                  "serverGroups": [
                    {
                      "name": "Crunchy Postgres for Kubernetes",
                      "postgresClusterSelector": {}
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "PGUpgrade",
                "metadata": {
                  "name": "example-upgrade"
                },
                "spec": {
                  "fromPostgresVersion": 16,
                  "postgresClusterName": "example",
                  "toPostgresVersion": 17
                }
              },
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "PostgresCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "backups": {
                    "pgbackrest": {
                      "repos": [
                        {
                          "name": "repo1",
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "instances": [
                    {
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      },
                      "replicas": 1
                    }
                  ],
                  "postgresVersion": 16
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: registry.connect.redhat.com/crunchydata/postgres-operator@sha256:c92df32b32c8d3b4ecdee0ad5f0f408bf33c906e9be7188a03a02db1bed61aaa
          createdAt: 2019-12-31 19:40Z
          description: Production Postgres Made Easy
          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"
          repository: https://github.com/CrunchyData/postgres-operator
          support: crunchydata.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGAdmin is the Schema for the PGAdmin API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          [Crunchy Postgres for Kubernetes](https://www.crunchydata.com/products/crunchy-postgresql-for-kubernetes), is the leading Kubernetes native
          Postgres solution. Built on PGO, the Postgres Operator from Crunchy Data, Crunchy Postgres for Kubernetes gives you a declarative Postgres
          solution that automatically manages your PostgreSQL clusters.

          Designed for your GitOps workflows, it is [easy to get started](https://access.crunchydata.com/documentation/postgres-operator/latest/quickstart)
          with Crunchy Postgres for Kubernetes. Within a few moments, you can have a production grade Postgres cluster complete with high availability, disaster
          recovery, and monitoring, all over secure TLS communications. Even better, Crunchy Postgres for Kubernetes lets you easily customize your Postgres
          cluster to tailor it to your workload!

          With conveniences like cloning Postgres clusters to using rolling updates to roll out disruptive changes with minimal downtime, Crunchy Postgres
          for Kubernetes is ready to support your Postgres data at every stage of your release pipeline. Built for resiliency and uptime, Crunchy Postgres
          for Kubernetes will keep your Postgres cluster in a desired state so you do not need to worry about it.

          Crunchy Postgres for Kubernetes is developed with many years of production experience in automating Postgres management on Kubernetes, providing
          a seamless cloud native Postgres solution to keep your data always available.

          Crunchy Postgres for Kubernetes is made available to users without an active Crunchy Data subscription in connection with Crunchy Data's
          [Developer Program](https://www.crunchydata.com/developers/terms-of-use).
          For more information, please contact us at [info@crunchydata.com](mailto:info@crunchydata.com).

          - **PostgreSQL Cluster Provisioning**: [Create, Scale, & Delete PostgreSQL clusters with ease][provisioning],
            while fully customizing your Pods and PostgreSQL configuration!
          - **High-Availability**: Safe, automated failover backed by a [distributed consensus based high-availability solution][high-availability].
            Uses [Pod Anti-Affinity][k8s-anti-affinity] to help resiliency; you can configure how aggressive this can be!
            Failed primaries automatically heal, allowing for faster recovery time. You can even create regularly scheduled
            backups as well and set your backup retention policy
          - **Disaster Recovery**: [Backups][backups] and [restores][disaster-recovery] leverage the open source [pgBackRest][] utility and
            [includes support for full, incremental, and differential backups as well as efficient delta restores][backups].
            Set how long you want your backups retained for. Works great with very large databases!
          - **Monitoring**: [Track the health of your PostgreSQL clusters][monitoring] using the open source [pgMonitor][] library and OpenTelemetry.
          - **Clone**: [Create new clusters from your existing clusters or backups][clone] with efficient data cloning.
          - **TLS**: All connections are over [TLS][tls]. You can also [bring your own TLS infrastructure][tls] if you do not want to use the provided defaults.
          - **Connection Pooling**: Advanced [connection pooling][pool] support using [pgBouncer][].
          - **Affinity and Tolerations**: Have your PostgreSQL clusters deployed to [Kubernetes Nodes][k8s-nodes] of your preference.
            Set your [pod anti-affinity][k8s-anti-affinity], node affinity, Pod tolerations and more rules to customize your deployment topology!
          - **PostgreSQL Major Version Upgrades**: Perform a [PostgreSQL major version upgrade][major-version-upgrade] declaratively.
          - **Database Administration**: Easily deploy [pgAdmin4][pgadmin] to administer your PostgresClusters' databases.
            The automatic discovery of PostgresClusters ensures that you are able to seamlessly access any databases within your environment from the pgAdmin4 GUI.
          - **Full Customizability**: Crunchy PostgreSQL for Kubernetes makes it easy to get your own PostgreSQL-as-a-Service up and running
            and fully customize your deployments, including:
              - Choose the resources for your Postgres cluster: [container resources and storage size][resize-cluster]. [Resize at any time][resize-cluster] with minimal disruption.
              - Use your own container image repository, including support `imagePullSecrets` and private repositories
              - [Customize your PostgreSQL configuration][customize-cluster]

          and much more!

          [backups]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/backups-disaster-recovery
          [clone]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/backups-disaster-recovery/disaster-recovery
          [customize-cluster]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/day-two/customize-cluster
          [disaster-recovery]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/backups-disaster-recovery/disaster-recovery
          [high-availability]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/day-two/high-availability
          [major-version-upgrade]: https://access.crunchydata.com/documentation/postgres-operator/v5/guides/major-postgres-version-upgrade/
          [monitoring]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/day-two/monitoring
          [pool]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/basic-setup/connection-pooling
          [provisioning]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/basic-setup/create-cluster
          [resize-cluster]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/cluster-management/resize-cluster
          [tls]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/day-two/customize-cluster#customize-tls

          [k8s-anti-affinity]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#inter-pod-affinity-and-anti-affinity
          [k8s-nodes]: https://kubernetes.io/docs/concepts/architecture/nodes/

          [pgAdmin]: https://www.pgadmin.org/
          [pgBackRest]: https://www.pgbackrest.org
          [pgBouncer]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/basic-setup/connection-pooling
          [pgMonitor]: https://github.com/CrunchyData/pgmonitor

          ## Post-Installation

          ### Tutorial

          Want to [learn more about the PostgreSQL Operator][tutorial]? Browse through the [tutorial][] to learn more about what you can do,
          [join the Discord server][discord] for community support, or check out the [PGO GitHub repo][ghrepo] to learn more
          about the open source Postgres Operator project that powers Crunchy Postgres for Kubernetes.

          [tutorial]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials
          [discord]: https://discord.gg/a7vWKG8Ec9
          [ghrepo]: https://github.com/CrunchyData/postgres-operator
        displayName: Crunchy Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - crunchy data
        links:
        - name: Crunchy Data
          url: https://www.crunchydata.com/
        - name: Documentation
          url: https://access.crunchydata.com/documentation/postgres-operator/v5/
        maintainers:
        - email: info@crunchydata.com
          name: Crunchy Data
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Crunchy Data
          url: https://www.crunchydata.com/
        relatedImages:
        - registry.connect.redhat.com/crunchydata/postgres-operator@sha256:c92df32b32c8d3b4ecdee0ad5f0f408bf33c906e9be7188a03a02db1bed61aaa
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:f3977ebceb725e0abd789776e27ed74026c98c2e41fc8b19bb57015fe40f77c5
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:4412a85a0c795e72142fc28b90aef513175f4bc55911a189733daaddaa7111f2
        - registry.connect.redhat.com/crunchydata/postgres-operator-bundle@sha256:8c02e461c615d8963a62e9279fd808ee7fa633443b44facde9f588a61c771819
        - registry.connect.redhat.com/crunchydata/crunchy-pgbouncer@sha256:22414de1b9fea7d88bb753ea67a0f3634427f87590a405fa5eaddefe5b101176
        - registry.connect.redhat.com/crunchydata/crunchy-pgbackrest@sha256:35ec028bae6c112d9bba20f5a9e8dcf4c2610cc11728d23a1bdfbc0357676bfc
        - registry.connect.redhat.com/crunchydata/crunchy-upgrade@sha256:c953467c06f4c94aef0daca6266b2b46e5f369b5b4db256b77098c56d1099008
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:26784e2511af35de6969acea943706664e333aee928bcbb86eaec0bafb3a465b
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:eced136169980e95d8f002e2f95cef44e4132a70d06e3399f236241d3899af76
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:c1d6337497b1eca5ec48fbbb213e837522627210e8a0d6675980de5c41cb29d4
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:d28a2eb25b47ca13350e525fdc72969883913ca429595a4131d7f41a1aa4e0ce
        - registry.connect.redhat.com/crunchydata/crunchy-pgadmin4@sha256:501cdc79d624fd1d3a2efbbfcafb9aac876e65d2e4fc3f61431259fc35c42f4c
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:5ae16b986731fd9545bc6485f20d913429d38155f86e4eec629a511014a192f9
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:c388de55a1762a218299c555fda6a451ffc1df6b12b80b6873e4cd3107b12530
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-exporter@sha256:b455b35086cbac3fc365a5fe32399ca023b292351447659200215988869b60f0
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:a9b8a9c5bf512078b215c63da65a2daf7511bc0e00d00513d966269220ec4583
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:bdebb3134cf0c07105ca873805e739846750cde03eb865682195eb58b6517dce
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:2083776ac27ddb96bc9e4ca5db2ed92c60b1b24277af7975fd86aaca37060dce
        version: 5.8.6
      entries:
      - name: postgresoperator.v5.8.6
        version: 5.8.6
      - name: postgresoperator.v5.8.5
        version: 5.8.5
      - name: postgresoperator.v5.8.4
        version: 5.8.4
      - name: postgresoperator.v5.8.3
        version: 5.8.3
      - name: postgresoperator.v5.8.2
        version: 5.8.2
      - name: postgresoperator.v5.8.1
        version: 5.8.1
      - name: postgresoperator.v5.8.0
        version: 5.8.0
      - name: postgresoperator.v5.7.4
        version: 5.7.4
      - name: postgresoperator.v5.7.3
        version: 5.7.3
      - name: postgresoperator.v5.7.2
        version: 5.7.2
      - name: postgresoperator.v5.7.1
        version: 5.7.1
      - name: postgresoperator.v5.7.0
        version: 5.7.0
      - name: postgresoperator.v5.6.1
        version: 5.6.1
      - name: postgresoperator.v5.6.0
        version: 5.6.0
      - name: postgresoperator.v5.5.2
        version: 5.5.2
      - name: postgresoperator.v5.5.1
        version: 5.5.1
      - name: postgresoperator.v5.5.0
        version: 5.5.0
      - name: postgresoperator.v5.4.4
        version: 5.4.4
      - name: postgresoperator.v5.4.3
        version: 5.4.3
      - name: postgresoperator.v5.4.2
        version: 5.4.2
      - name: postgresoperator.v5.4.1
        version: 5.4.1
      - name: postgresoperator.v5.4.0
        version: 5.4.0
      - name: postgresoperator.v5.3.0
        version: 5.3.0
      - name: postgresoperator.v5.2.0
        version: 5.2.0
      - name: postgresoperator.v5.1.3
        version: 5.1.3
      - name: postgresoperator.v5.1.2
        version: 5.1.2
      - name: postgresoperator.v5.1.1
        version: 5.1.1
      - name: postgresoperator.v5.1.0
        version: 5.1.0
      name: v5
    defaultChannel: v5
    packageName: crunchy-postgres-operator
    provider:
      name: Crunchy Data
      url: https://www.crunchydata.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Saison Technology Co., Ltd.
      provider-url: https://www.hulft.com/
    name: hulft
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hulft.v10.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hulft.saison-technology.com/v1",
                "kind": "Hulft",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "hulft",
                    "app.kubernetes.io/instance": "sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hulft",
                    "app.kubernetes.io/part-of": "hulft"
                  },
                  "name": "sample",
                  "namespace": "user-apps"
                },
                "spec": {
                  "applicationName": "hulft-apps",
                  "control": {
                    "allowExternalAccess": true,
                    "replicas": {
                      "max": 1,
                      "min": 1
                    }
                  },
                  "db": {
                    "authorizationSecret": "secret-hulft-db-authorization",
                    "connectionRetryCount": 30,
                    "hostname": "database.example.com",
                    "name": "hulft",
                    "port": 3306,
                    "tablePrefix": "hulft"
                  },
                  "licenseSecret": "secret-hulft-license",
                  "resourceIdentifier": "sample",
                  "transfer": {
                    "control": {
                      "retryCount": 10,
                      "retryInterval": 10000,
                      "timeout": 60000
                    },
                    "gracefulShutdownWait": 3600,
                    "observe": {
                      "websocket": {
                        "allowExternalAccess": false
                      }
                    },
                    "replicas": {
                      "max": 5,
                      "min": 1
                    },
                    "s3": {
                      "defaultRegion": "ap-northeast-1"
                    },
                    "websocket": {
                      "allowExternalAccess": false
                    }
                  }
                },
                "status": {
                  "applicationName": "hulft-apps",
                  "control": {
                    "allowExternalAccess": true,
                    "apiClientTlsSecret": "secret-hulft-sample-transfer-control-server-tls",
                    "consoleLoginSecret": "secret-hulft-sample-console-login",
                    "consoleTlsSecret": "secret-hulft-sample-control-console-tls",
                    "hostname": "",
                    "httpPort": 30080,
                    "httpsPort": 30443,
                    "replicas": {
                      "max": 1,
                      "min": 1
                    },
                    "samlSecret": ""
                  },
                  "db": {
                    "authorizationSecret": "secret-hulft-db-authorization",
                    "connectionRetryCount": 30,
                    "encryptionKeySecret": "secret-hulft-sample-db-encryption-key",
                    "hostname": "database.example.com",
                    "name": "hulft",
                    "port": 3306,
                    "tablePrefix": "hulft"
                  },
                  "licenseSecret": "secret-hulft-license",
                  "resourceIdentifier": "sample",
                  "transfer": {
                    "control": {
                      "clientTlsSecret": "secret-hulft-sample-control-console-tls",
                      "port": 30443,
                      "retryCount": 10,
                      "retryInterval": 10000,
                      "serverTlsSecret": "secret-hulft-sample-transfer-control-server-tls",
                      "timeout": 60000
                    },
                    "gracefulShutdownWait": 3600,
                    "hostname": "hulft-sample-transfer-wss-ci.apps.openshift.example.com",
                    "hulft": {
                      "port": 30000
                    },
                    "observe": {
                      "port": 31000,
                      "websocket": {
                        "allowExternalAccess": true,
                        "port": 33443,
                        "serverTlsSecret": "secret-hulft-sample-transfer-observe-wss-server-tls"
                      }
                    },
                    "replicas": {
                      "max": 5,
                      "min": 1
                    },
                    "s3": {
                      "authenticationSecret": "",
                      "defaultRegion": "ap-northeast-1"
                    },
                    "websocket": {
                      "allowExternalAccess": true,
                      "clientTlsSecret": "",
                      "port": 31443,
                      "serverTlsSecret": "secret-hulft-sample-transfer-wss-server-tls"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/saison-technology/hulft-operator@sha256:8ee0a29d0ce96f4ec230f387467b241dccbb2bd350cd642b275ef5f5d3b64972
          createdAt: "2025-10-09T04:43:01Z"
          description: HULFT10 for Container Platform is file integration middleware
            that provides transfer functions for the data accumulated in your IT system
            during the daily operations of your business, such as sales data, customer
            information, and various logs. File transfer from/to on-premises HULFT
            is also available.
          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: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/valid-subscription: To use HULFT10 for Container
            Platform, you must purchase the product and have a key issued. Please
            refer to [Start Up Guide](https://www.hulft.com/help/ja-jp/HULFT-V10/CONP-SUGOS)
            for the deployment procedure.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Saison Technology Co., Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Hulft is the Schema for the hulfts API
            displayName: Hulft
            kind: Hulft
            name: hulfts.hulft.saison-technology.com
            version: v1
        description: |
          HULFT10 for Container Platform is file integration middleware that provides transfer functions for the data accumulated in your IT system during the daily operations of your business, such as sales data, customer information, and various logs. File transfer from/to on-premises HULFT is also available.
          To use HULFT10 for Container Platform, you must purchase the product and have a key issued. Please refer to [Start Up Guide](https://www.hulft.com/help/ja-jp/HULFT-V10/CONP-SUGOS) for the deployment procedure.
        displayName: HULFT10 for Container Platform
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backup & Recovery
        - Storage
        - Migration
        links:
        - name: Product page
          url: https://www.hulft.com/software/hulft-10
        - name: Product manual
          url: https://www.hulft.com/help/ja-jp/HULFT-V10/index.htm
        maintainers:
        - email: salessupport_mp@hulft.com
          name: Saison Technology Co., Ltd.
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Saison Technology Co., Ltd.
          url: https://www.hulft.com/
        relatedImages:
        - registry.connect.redhat.com/saison-technology/hulft-operator@sha256:8ee0a29d0ce96f4ec230f387467b241dccbb2bd350cd642b275ef5f5d3b64972
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.connect.redhat.com/saison-technology/hulft-bundle@sha256:8f0b469b347670a729ba629b3b0da57d51981644bd894b3afc3d911041ccde6a
        version: 10.5.0
      entries:
      - name: hulft.v10.5.0
        version: 10.5.0
      - name: hulft.v10.4.0
        version: 10.4.0
      - name: hulft.v10.3.0
        version: 10.3.0
      name: stable
    defaultChannel: stable
    packageName: hulft
    provider:
      name: Saison Technology Co., Ltd.
      url: https://www.hulft.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hazelcast, Inc
      provider-url: ""
    name: hazelcast-platform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hazelcast-platform-operator.v5.15.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "cache-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "CronHotBackup",
                "metadata": {
                  "name": "cronhotbackup-sample"
                },
                "spec": {
                  "hotBackupTemplate": {
                    "metadata": {
                      "labels": {
                        "cron-hotbackup": "true"
                      }
                    },
                    "spec": {
                      "hazelcastResourceName": "hazelcast"
                    }
                  },
                  "schedule": "*/30 * * * *"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Flow",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hazelcast-platform-operator"
                  },
                  "name": "flow"
                },
                "spec": {
                  "database": {
                    "host": "flow-postgresql",
                    "secretName": "flow-db-secret"
                  },
                  "env": [
                    {
                      "name": "OPTIONS",
                      "value": "--flow.analytics.persistRemoteCallResponses=true --flow.analytics.persistResults=false --flow.config.custom.managementCenterUrl=http://34.140.160.158/mc\n"
                    }
                  ],
                  "externalConnectivity": {
                    "ingress": {
                      "annotations": {
                        "kubernetes.io/ingress.class": "nginx",
                        "nginx.ingress.kubernetes.io/enable-opentelemetry": "true",
                        "nginx.ingress.kubernetes.io/ssl-redirect": "false"
                      },
                      "hostname": "",
                      "ingressClassName": "nginx",
                      "path": "/"
                    }
                  },
                  "imagePullSecrets": [
                    {
                      "name": "hazelcast-cloud-hazelcast-connect-demo-pull-secret"
                    }
                  ],
                  "licenseKeySecretName": "flow-mc-license-key",
                  "repository": "quay.io/hazelcast_cloud/hazelcast-flow-internal",
                  "size": 3,
                  "version": "next"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast"
                },
                "spec": {
                  "clusterSize": 3,
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast-sample"
                },
                "spec": {
                  "clusterSize": 3,
                  "jet": {
                    "bucketConfig": {
                      "bucketURI": "gs://operator-user-code/jetJobs",
                      "secretName": "br-secret-gcp"
                    },
                    "enabled": true,
                    "resourceUploadEnabled": true
                  },
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HazelcastEndpoint",
                "metadata": {
                  "name": "hazelcastendpoint-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "port": 5701,
                  "type": "Discovery"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HotBackup",
                "metadata": {
                  "name": "hot-backup"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-longrun"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-longrun-2.0.0.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-1.0.2.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJobSnapshot",
                "metadata": {
                  "name": "jetjobsnapshot-sample"
                },
                "spec": {
                  "cancelJob": false,
                  "jetJobResourceName": "jet-job"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ManagementCenter",
                "metadata": {
                  "name": "managementcenter"
                },
                "spec": {
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "hazelcastClusters": [
                    {
                      "address": "hazelcast",
                      "name": "dev"
                    }
                  ],
                  "licenseKeySecretName": "hazelcast-license-key",
                  "persistence": {
                    "enabled": true,
                    "size": "10Gi"
                  },
                  "repository": "hazelcast/management-center"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Map",
                "metadata": {
                  "name": "map"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "MultiMap",
                "metadata": {
                  "name": "multimap-sample"
                },
                "spec": {
                  "backupCount": 3,
                  "binary": true,
                  "collectionType": "LIST",
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Queue",
                "metadata": {
                  "name": "queue-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ReplicatedMap",
                "metadata": {
                  "name": "replicatedmap-sample"
                },
                "spec": {
                  "asyncFillup": true,
                  "hazelcastResourceName": "hazelcast",
                  "inMemoryFormat": "OBJECT"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Topic",
                "metadata": {
                  "name": "topic-sample"
                },
                "spec": {
                  "globalOrderingEnabled": true,
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "UserCodeNamespace",
                "metadata": {
                  "name": "ucn-sample"
                },
                "spec": {
                  "bucketConfig": {
                    "bucketURI": "gs://operator-user-code/userCodeNamespace",
                    "secretName": "br-secret-gcp"
                  },
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "VectorCollection",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hazelcast-platform-operator"
                  },
                  "name": "vectorcollection-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "indexes": [
                    {
                      "dimension": 10,
                      "efConstruction": 256,
                      "maxDegree": 32,
                      "metric": "Dot",
                      "useDeduplication": false
                    }
                  ]
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanReplication",
                "metadata": {
                  "name": "wanreplication-sample"
                },
                "spec": {
                  "endpoints": "35.192.33.252",
                  "resources": [
                    {
                      "kind": "Map",
                      "name": "map-sample"
                    },
                    {
                      "kind": "Hazelcast",
                      "name": "hz-sample"
                    }
                  ],
                  "targetClusterName": "dev"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanSync",
                "metadata": {
                  "name": "wansync-sample"
                },
                "spec": {
                  "wanReplicationResourceName": "wan-replication-sample"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: docker.io/hazelcast/hazelcast-platform-operator@sha256:59328a4ea7a4e2110e0750364db792cf266f1e7231e3bb321e3de09d535dab23
          createdAt: "2025-03-13T11:59:59Z"
          description: Install Hazelcast clusters in Kubernetes environments.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/hazelcast/hazelcast-platform-operator/
          support: Hazelcast, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.hazelcast.com
            version: v1alpha1
          - description: CronHotBackup is the Schema for the cronhotbackups API
            displayName: Cron Hot Backup
            kind: CronHotBackup
            name: cronhotbackups.hazelcast.com
            version: v1alpha1
          - description: Flow is the Schema for the flows API
            displayName: Flow
            kind: Flow
            name: flows.hazelcast.com
            version: v1alpha1
          - description: HazelcastEndpoint is the Schema for the hazelcastendpoints
              API
            displayName: Hazelcast Endpoint
            kind: HazelcastEndpoint
            name: hazelcastendpoints.hazelcast.com
            version: v1alpha1
          - description: Hazelcast is the Schema for the hazelcasts API
            displayName: Hazelcast
            kind: Hazelcast
            name: hazelcasts.hazelcast.com
            version: v1alpha1
          - description: HotBackup is the Schema for the hot backup API
            displayName: Hot Backup
            kind: HotBackup
            name: hotbackups.hazelcast.com
            version: v1alpha1
          - description: JetJob is the Schema for the jetjobs API
            displayName: Jet Job
            kind: JetJob
            name: jetjobs.hazelcast.com
            version: v1alpha1
          - description: JetJobSnapshot is the Schema for the jetjobsnapshots API
            displayName: Jet Job Snapshot
            kind: JetJobSnapshot
            name: jetjobsnapshots.hazelcast.com
            version: v1alpha1
          - description: ManagementCenter is the Schema for the managementcenters
              API
            displayName: Management Center
            kind: ManagementCenter
            name: managementcenters.hazelcast.com
            version: v1alpha1
          - description: Map is the Schema for the maps API
            displayName: Map
            kind: Map
            name: maps.hazelcast.com
            version: v1alpha1
          - description: MultiMap is the Schema for the multimaps API
            displayName: Multi Map
            kind: MultiMap
            name: multimaps.hazelcast.com
            version: v1alpha1
          - description: Queue is the Schema for the queues API
            displayName: Queue
            kind: Queue
            name: queues.hazelcast.com
            version: v1alpha1
          - description: ReplicatedMap is the Schema for the replicatedmaps API
            displayName: Replicated Map
            kind: ReplicatedMap
            name: replicatedmaps.hazelcast.com
            version: v1alpha1
          - description: Topic is the Schema for the topics API
            displayName: Topic
            kind: Topic
            name: topics.hazelcast.com
            version: v1alpha1
          - description: UserCodeNamespace is the Schema for the usercodenamespaces
              API
            displayName: User Code Namespace
            kind: UserCodeNamespace
            name: usercodenamespaces.hazelcast.com
            version: v1alpha1
          - description: VectorCollection is the Schema for the vectorcollections
              API
            displayName: Vector Collection
            kind: VectorCollection
            name: vectorcollections.hazelcast.com
            version: v1alpha1
          - description: WanReplication is the Schema for the wanreplications API
            displayName: Wan Replication
            kind: WanReplication
            name: wanreplications.hazelcast.com
            version: v1alpha1
          - description: WanSync is the Schema for the wansyncs API
            displayName: Wan Sync
            kind: WanSync
            name: wansyncs.hazelcast.com
            version: v1alpha1
        description: |
          Easily deploy Hazelcast clusters and Management Center into Kubernetes environments and manage their lifecycles.

          ## Before You Start

          If you are planning to create Hazelcast Platform Enterprise clusters, you need to [create a secret](https://docs.hazelcast.com/operator/latest/get-started#step-2-start-the-hazelcast-cluster) for the license. You can request a trial license key from [here](https://trialrequest.hazelcast.com).

          For Hazelcast Platform clusters, you can simply continue.

          ## Documentation

          1. [Get started](https://docs.hazelcast.com/operator/latest/get-started) with the Operator
          2. [Connect to the cluster from outside Kubernetes](https://guides.hazelcast.org/hazelcast-platform-operator-expose-externally)
          3. [Restore a Cluster from Cloud Storage with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-external-backup-restore)
          4. [Replicate Data between Two Hazelcast Clusters with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-wan-replication)

          ## Features

          Hazelcast Platform Operator supports the features below:

          * Custom resource for Hazelcast Platform (Enterprise) and Management Center
          * Observe status of Hazelcast clusters and Management Center instances
          * High Availability Mode configuration to create clusters that are resilient to node and zone failures
          * Support for TLS connections between members using self-signed certificates
          * Scale up and down Hazelcast clusters
          * Expose Hazelcast cluster to external clients ([Smart & Unisocket](https://docs.hazelcast.com/hazelcast/latest/clients/java#java-client-operation-modes))
          * Backup Hazelcast persistence data to cloud storage with the possibility of scheduling it and restoring the data accordingly
          * WAN Replication feature when you need to synchronize multiple Hazelcast clusters, which are connected by WANs
          * Full and Delta WAN Sync support
          * Tiered Storage support for Hazelcast and Map CRs
          * CP Subsystem configuration support for Hazelcast CR
          * User Code Deployment feature, which allows you to deploy custom and domain classes from cloud storages and URLs to Hazelcast members
          * The User Code Namespaces feature allows you to deploy custom and domain classes at runtime without a members restart
          * Support the configuration of advanced networking options
          * Support Multi-namespace configuration
          * ExecutorService and EntryProcessor support
          * Support several data structures like Map, Topic, MultiMap, ReplicatedMap, Queue and Cache which can be created dynamically via specific Custom Resources
          * MapStore, Near Cache and off-heap memory (HD memory and native memory) support for the Map CR
          * Native Memory support for the Cache CR
          * Support Jet configuration and Jet Job submission using the JetJob CR
          * Support for exporting the snapshots of JetJob CRs using JetJobSnapshot CR
          * Support for custom configurations using ConfigMap
        displayName: Hazelcast Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hazelcast
        - keyvalue
        - in-memory
        - database
        - caching
        links:
        - name: Documentation
          url: https://docs.hazelcast.com/operator/latest/
        - name: Source Code
          url: https://github.com/hazelcast/hazelcast-platform-operator
        maintainers:
        - email: cloudnative@hazelcast.com
          name: Hazelcast Cloud Native Team
        maturity: alpha
        minKubeVersion: 1.22.7
        provider:
          name: Hazelcast, Inc
        relatedImages:
        - docker.io/hazelcast/hazelcast-platform-operator@sha256:59328a4ea7a4e2110e0750364db792cf266f1e7231e3bb321e3de09d535dab23
        - registry.connect.redhat.com/hazelcast/hazelcast-platform-operator-bundle@sha256:0aabd3e7f5f993c1288450678d55e8f7b36c8b30894e5d844521a474aa6b2714
        version: 5.15.0
      entries:
      - name: hazelcast-platform-operator.v5.15.0
        version: 5.15.0
      name: alpha
    defaultChannel: alpha
    packageName: hazelcast-platform-operator
    provider:
      name: Hazelcast, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MuleSoft
      provider-url: anypoint.mulesoft.com
    name: runtime-fabric-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runtime-fabric-operator.v3.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rtf.operators.mulesoft.com/v1",
                "kind": "RuntimeFabric",
                "metadata": {
                  "name": "runtime-fabric"
                },
                "spec": {
                  "activationData": null,
                  "agent": {
                    "replicas": 1,
                    "app": {
                      "resources": {
                        "limits": {
                          "cpu": "1000m",
                          "memory": "500Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "200Mi"
                        }
                      }
                    },
                    "rtfd": {
                      "resources": {
                        "limits": {
                          "cpu": "200m",
                          "memory": "300Mi"
                        },
                        "requests": {
                          "cpu": "150m",
                          "memory": "200Mi"
                        }
                      },
                      "watch": {
                        "enabled": true,
                        "components": {
                          "deployments": {
                            "enabled": true
                          },
                          "ingress": {
                            "enabled": true
                          },
                          "secrets": {
                            "enabled": true
                          },
                          "persistencegateways": {
                            "enabled": true
                          },
                          "nodes": {
                            "enabled": true
                          },
                          "jobs": {
                            "enabled": true
                          },
                          "routes": {
                            "enabled": true
                          }
                        }
                      },
                      "anypointController": {
                        "enabled": false
                      }
                    }
                  },
                  "resource-cache": {
                    "replicas": 1,
                    "nginx": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "250Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      }
                    },
                    "fetcher": {
                      "resources": {
                        "limits": {
                          "cpu": "50m",
                          "memory": "100Mi"
                        },
                        "requests": {
                          "cpu": "50m",
                          "memory": "50Mi"
                        }
                      }
                    }
                  },
                  "mule-clusterip-service": {
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "500Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "global": {
                    "cluster": {
                      "flavor": "byok",
                      "type": "openshift"
                    },
                    "containerLogPaths": [
                      "/var/lib/docker/containers",
                      "/var/log/containers",
                      "/var/log/pods"
                    ],
                    "core": {
                      "affinity": {},
                      "tolerations": [],
                      "topologySpreadConstraints": [
                        {
                          "maxSkew": 1,
                          "topologyKey": "topology.kubernetes.io/zone",
                          "whenUnsatisfiable": "ScheduleAnyway"
                        }
                      ]
                    },
                    "worker": {
                      "affinity": {},
                      "tolerations": []
                    },
                    "deployment": {
                      "nodeSelector": ""
                    },
                    "image": {
                      "provider": "aws",
                      "pullSecretName": "rtf-pull-secret",
                      "rtfRegistry": "rtf-runtime-registry.kprod.msap.io",
                      "repositoryNamespace": "mulesoft"
                    },
                    "service": {
                      "clusterIp": null
                    },
                    "authorizedNamespaces": false,
                    "fipsEnabled": false,
                    "crds": {
                      "install": true,
                      "keep": true,
                      "flex": {
                        "enabled": false
                      }
                    },
                    "nodeWatcherEnabled": true,
                    "nodeReconciliation": true,
                    "deploymentRateLimitPerSecond": 1
                  },
                  "muleLicense": null,
                  "proxy": {
                    "http_no_proxy": null,
                    "http_proxy": null,
                    "monitoring_proxy": null
                  },
                  "customLog4jEnabled": false
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
          createdAt: "2025-12-09T02:04:18Z"
          description: Runtime Fabric Operator Application from Mulesoft
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/mulesoft/rtf-ocp-operator
          support: MuleSoft
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Runtime Fabric Operator from Mulesoft
              **Activation data**
              Used to install Runtime Fabric on a Kubernetes service. Copy this value from the Runtime Fabric setup page in Runtime Manager.
              **Registry URL**
              The registry from which to retrieve the images needed to install and run Runtime Fabric. If you're using a local registry, specify the URL here.
                * Default registry URLs:
                    - US control plane: rtf-runtime-registry.kprod.msap.io
                    - EU control plane: rtf-runtime-registry.kprod-eu.msap.io
              **Registry pull secret**
              Used to retrieve images from the registry. Change this value only if you did so during the operator installation.
              **Mule license key**
              Your company’s Mule license key. The key is not required during install, but it is required to deploy applications to Runtime Fabric. Must be Base64 encoded.
            displayName: Runtime Fabric
            kind: RuntimeFabric
            name: runtimefabrics.rtf.operators.mulesoft.com
            version: v1
        description: |-
          Anypoint Runtime Fabric is a container service that you install in your existing Red Hat OpenShift cluster that enables you to run Mule applications, composite APIs, and API gateways across any environment with centralized management via Anypoint Platform.
          Capabilities of Runtime Fabric include:
          * Isolation between applications by running a separate Mule runtime server per application.
          * Ability to run multiple versions of Mule runtime server on the same set of resources.
          * Scaling applications across multiple replicas.
          * Automated application fail-over.
          * Application management with Anypoint Runtime Manager.
          Runtime Fabric supports the following Red Hat OpenShift deployment options:
          * Red Hat OpenShift Service on AWS
          * Microsoft Azure Red Hat OpenShift
          * Red Hat OpenShift Dedicated
          * Red Hat OpenShift on IBM Cloud
          * Self-managed Red Hat OpenShift editions (Performance Plus, OCP, Kubernetes engine)
          Runtime Fabric supports Red Hat OpenShift versions 4.17 to 4.20.
        displayName: Runtime Fabric Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - agent
        - rtf
        - runtime
        - fabric
        - mulesoft
        links:
        - name: Runtime Fabric Operator
          url: https://catalog.redhat.com/software/container-stacks/detail/62901512fefb1b137ba23946
        - name: Documentation
          url: https://docs.mulesoft.com/release-notes/runtime-fabric/runtime-fabric
        maintainers:
        - email: support@mulesoft.com
          name: Mulesoft
        maturity: stable
        provider:
          name: MuleSoft
          url: anypoint.mulesoft.com
        relatedImages:
        - quay.io/rtf/kube-rbac-proxy@sha256:a2523c532c0c3d51a5396a901d7ded23e402a9a1492c783aae27af6d0c1d2ec5
        - quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
        - registry.connect.redhat.com/rtf/runtime-fabric-operator@sha256:32476ca3c4943ac8b22ebacec7685402775d562576fbdd53e01ab42803967049
        version: 3.0.1
      entries:
      - name: runtime-fabric-operator.v3.0.1
        version: 3.0.1
      - name: runtime-fabric-operator.v2.11.50
        version: 2.11.50
      name: alpha
    - currentCSV: runtime-fabric-operator.v3.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rtf.operators.mulesoft.com/v1",
                "kind": "RuntimeFabric",
                "metadata": {
                  "name": "runtime-fabric"
                },
                "spec": {
                  "activationData": null,
                  "agent": {
                    "replicas": 1,
                    "app": {
                      "resources": {
                        "limits": {
                          "cpu": "1000m",
                          "memory": "500Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "200Mi"
                        }
                      }
                    },
                    "rtfd": {
                      "resources": {
                        "limits": {
                          "cpu": "200m",
                          "memory": "300Mi"
                        },
                        "requests": {
                          "cpu": "150m",
                          "memory": "200Mi"
                        }
                      },
                      "watch": {
                        "enabled": true,
                        "components": {
                          "deployments": {
                            "enabled": true
                          },
                          "ingress": {
                            "enabled": true
                          },
                          "secrets": {
                            "enabled": true
                          },
                          "persistencegateways": {
                            "enabled": true
                          },
                          "nodes": {
                            "enabled": true
                          },
                          "jobs": {
                            "enabled": true
                          },
                          "routes": {
                            "enabled": true
                          }
                        }
                      },
                      "anypointController": {
                        "enabled": false
                      }
                    }
                  },
                  "resource-cache": {
                    "replicas": 1,
                    "nginx": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "250Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      }
                    },
                    "fetcher": {
                      "resources": {
                        "limits": {
                          "cpu": "50m",
                          "memory": "100Mi"
                        },
                        "requests": {
                          "cpu": "50m",
                          "memory": "50Mi"
                        }
                      }
                    }
                  },
                  "mule-clusterip-service": {
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "500Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "global": {
                    "cluster": {
                      "flavor": "byok",
                      "type": "openshift"
                    },
                    "containerLogPaths": [
                      "/var/lib/docker/containers",
                      "/var/log/containers",
                      "/var/log/pods"
                    ],
                    "core": {
                      "affinity": {},
                      "tolerations": [],
                      "topologySpreadConstraints": [
                        {
                          "maxSkew": 1,
                          "topologyKey": "topology.kubernetes.io/zone",
                          "whenUnsatisfiable": "ScheduleAnyway"
                        }
                      ]
                    },
                    "worker": {
                      "affinity": {},
                      "tolerations": []
                    },
                    "deployment": {
                      "nodeSelector": ""
                    },
                    "image": {
                      "provider": "aws",
                      "pullSecretName": "rtf-pull-secret",
                      "rtfRegistry": "rtf-runtime-registry.kprod.msap.io",
                      "repositoryNamespace": "mulesoft"
                    },
                    "service": {
                      "clusterIp": null
                    },
                    "authorizedNamespaces": false,
                    "fipsEnabled": false,
                    "crds": {
                      "install": true,
                      "keep": true,
                      "flex": {
                        "enabled": false
                      }
                    },
                    "nodeWatcherEnabled": true,
                    "nodeReconciliation": true,
                    "deploymentRateLimitPerSecond": 1
                  },
                  "muleLicense": null,
                  "proxy": {
                    "http_no_proxy": null,
                    "http_proxy": null,
                    "monitoring_proxy": null
                  },
                  "customLog4jEnabled": false
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
          createdAt: "2025-12-09T02:04:18Z"
          description: Runtime Fabric Operator Application from Mulesoft
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/mulesoft/rtf-ocp-operator
          support: MuleSoft
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Runtime Fabric Operator from Mulesoft
              **Activation data**
              Used to install Runtime Fabric on a Kubernetes service. Copy this value from the Runtime Fabric setup page in Runtime Manager.
              **Registry URL**
              The registry from which to retrieve the images needed to install and run Runtime Fabric. If you're using a local registry, specify the URL here.
                * Default registry URLs:
                    - US control plane: rtf-runtime-registry.kprod.msap.io
                    - EU control plane: rtf-runtime-registry.kprod-eu.msap.io
              **Registry pull secret**
              Used to retrieve images from the registry. Change this value only if you did so during the operator installation.
              **Mule license key**
              Your company’s Mule license key. The key is not required during install, but it is required to deploy applications to Runtime Fabric. Must be Base64 encoded.
            displayName: Runtime Fabric
            kind: RuntimeFabric
            name: runtimefabrics.rtf.operators.mulesoft.com
            version: v1
        description: |-
          Anypoint Runtime Fabric is a container service that you install in your existing Red Hat OpenShift cluster that enables you to run Mule applications, composite APIs, and API gateways across any environment with centralized management via Anypoint Platform.
          Capabilities of Runtime Fabric include:
          * Isolation between applications by running a separate Mule runtime server per application.
          * Ability to run multiple versions of Mule runtime server on the same set of resources.
          * Scaling applications across multiple replicas.
          * Automated application fail-over.
          * Application management with Anypoint Runtime Manager.
          Runtime Fabric supports the following Red Hat OpenShift deployment options:
          * Red Hat OpenShift Service on AWS
          * Microsoft Azure Red Hat OpenShift
          * Red Hat OpenShift Dedicated
          * Red Hat OpenShift on IBM Cloud
          * Self-managed Red Hat OpenShift editions (Performance Plus, OCP, Kubernetes engine)
          Runtime Fabric supports Red Hat OpenShift versions 4.17 to 4.20.
        displayName: Runtime Fabric Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - agent
        - rtf
        - runtime
        - fabric
        - mulesoft
        links:
        - name: Runtime Fabric Operator
          url: https://catalog.redhat.com/software/container-stacks/detail/62901512fefb1b137ba23946
        - name: Documentation
          url: https://docs.mulesoft.com/release-notes/runtime-fabric/runtime-fabric
        maintainers:
        - email: support@mulesoft.com
          name: Mulesoft
        maturity: stable
        provider:
          name: MuleSoft
          url: anypoint.mulesoft.com
        relatedImages:
        - quay.io/rtf/kube-rbac-proxy@sha256:a2523c532c0c3d51a5396a901d7ded23e402a9a1492c783aae27af6d0c1d2ec5
        - quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
        - registry.connect.redhat.com/rtf/runtime-fabric-operator@sha256:32476ca3c4943ac8b22ebacec7685402775d562576fbdd53e01ab42803967049
        version: 3.0.1
      entries:
      - name: runtime-fabric-operator.v3.0.1
        version: 3.0.1
      - name: runtime-fabric-operator.v2.11.50
        version: 2.11.50
      name: stable
    defaultChannel: stable
    packageName: runtime-fabric-operator
    provider:
      name: MuleSoft
      url: anypoint.mulesoft.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: https://stakater.com
    name: tenant-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tenant-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-03-19T13:30:50Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.2.1
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.tenantoperator.stakater.com
            version: v1beta1
          - description: TemplateGroupInstance is the Schema for the templategroupinstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:fb7bc294096fa78f199d909f6ff8f7fcbcd771c3dc19f3f767d77dd13a2081a9
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:a899d60b31efd5cf2358efcd48737b1c4f4a0356ab6c0abe7a5f62ea825a52cd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:a35b96eacb4e46114b39354f66429f8f05df09c55c98c9416b4ffa2768310ef7
        version: 1.2.1
      entries:
      - name: tenant-operator.v1.2.1
        version: 1.2.1
      name: release-1.2
    - currentCSV: tenant-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-06-11T15:25:04Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.3.0
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.tenantoperator.stakater.com
            version: v1beta1
          - description: TemplateGroupInstance is the Schema for the templategroupinstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:10e4bdca44a1a0cdef27b415765238249f81ae6ba53f94f992e37d350bc9f800
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:e88aa5b008ece406bca35ec22fdc87c842544049d613d4d81c8bc5dd2fb50812
        version: 1.3.0
      entries:
      - name: tenant-operator.v1.3.0
        version: 1.3.0
      name: release-1.3
    - currentCSV: tenant-operator.v1.4.2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-09-08T08:14:28Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.4.2
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.tenantoperator.stakater.com
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:3e8aa02c71fc99e5eeabfce39c8fc24a9f9e8e826a58f9ff59c8b7c0e9c14e0d
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:7ee14c0974d1eda849d2c199a56786b0ae777ef6569085be917449f1998b1158
        version: 1.4.2
      entries:
      - name: tenant-operator.v1.4.2
        version: 1.4.2
      name: release-1.4
    - currentCSV: tenant-operator.v1.5.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-11-11T08:34:12Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.5.1
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:8f840a8aef0827b7e66c743477c5380fbe47597e91c7c600eeb7fea5475f5676
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:9f8d67e1b9401483714cfe1bb61504cdfae8efeab9c0e730a3983330c8095c16
        version: 1.5.1
      entries:
      - name: tenant-operator.v1.5.1
        version: 1.5.1
      name: release-1.5
    defaultChannel: release-1.5
    packageName: tenant-operator
    provider:
      name: Stakater
      url: https://stakater.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: EnterpriseDB Corporation
      provider-url: ""
    name: pg4k-pgd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pg4k-pgd.v1.2.0-rc1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg-global-cluster:1.2.0-rc1@sha256:bff3aac2979b8cb9eeb0f1a107aa10400ff55564079d6879a8a9758ba20c4ace
          createdAt: "2025-12-18T07:38:31Z"
          description: EDB Postgres Distributed for Kubernetes is an operator designed
            to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both
            in a single Kubernetes cluster or across multiple ones.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: EnterpriseDB Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A cluster-wide catalog of PGD Group operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: A catalog of PGD Group operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: Object to clean up a PGD Group
            displayName: PGD Group Cleanup
            kind: PGDGroupCleanup
            name: pgdgroupcleanups.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: A group of Postgres Clusters
            displayName: PGD Group
            kind: PGDGroup
            name: pgdgroups.pgd.k8s.enterprisedb.io
            version: v1beta1
        description: |
          EDB Postgres Distributed for Kubernetes is an operator designed to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both in a single Kubernetes cluster or across multiple ones.

          EDB Postgres Distributed is an extension for PostgreSQL that provides multi-master replication and data distribution with advanced conflict management, data-loss protection, and throughput up to 5X faster than native logical replication. It enables distributed PostgreSQL clusters with high availability up to five 9s.

          This operator requires access to the EDB private repositories.
        displayName: EDB Postgres Distributed for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - distributed
        - postgres
        - database
        - sql
        - cloud
        - native
        - edb
        - enterprisedb
        - cnp
        - pg4k
        - pgd
        links:
        - name: 'Documentation: EDB Postgres Distributed v5'
          url: https://www.enterprisedb.com/docs/pgd/latest/
        - name: 'Documentation: EDB Postgres Distributed for Kubernetes'
          url: https://www.enterprisedb.com/docs/postgres_distributed_for_kubernetes/latest/
        maintainers:
        - email: sales@enterprisedb.com
          name: Sales
        - email: support@enterprisedb.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg-global-cluster@sha256:bff3aac2979b8cb9eeb0f1a107aa10400ff55564079d6879a8a9758ba20c4ace
        - registry.connect.redhat.com/enterprisedb/pg4k-pgd@sha256:8cf1cadef453cd8dd0a0bfaa3e3dd6a0d741f86ad42fbb9ac574420445274ab5
        version: 1.2.0-rc1
      entries:
      - name: pg4k-pgd.v1.2.0-rc1
        version: 1.2.0-rc1
      name: candidate
    - currentCSV: pg4k-pgd.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgd.k8s.enterprisedb.io/v1beta1",
                "kind": "PGDGroup",
                "metadata": {
                  "name": "region-a"
                },
                "spec": {
                  "backup": null,
                  "cnp": {
                    "storage": {
                      "size": "1Gi"
                    },
                    "walStorage": {
                      "size": "1Gi"
                    }
                  },
                  "connectivity": {
                    "dns": {
                      "additional": [
                        {
                          "domain": "alternate.domain"
                        },
                        {
                          "domain": "my.domain",
                          "hostSuffix": "-dc1"
                        }
                      ]
                    },
                    "tls": {
                      "clientCert": {
                        "caCertSecret": "client-ca-key-pair",
                        "certManager": {
                          "spec": {
                            "issuerRef": {
                              "group": "cert-manager.io",
                              "kind": "Issuer",
                              "name": "client-ca-issuer"
                            }
                          }
                        }
                      },
                      "mode": "verify-ca",
                      "serverCert": {
                        "caCertSecret": "server-ca-key-pair",
                        "certManager": {
                          "spec": {
                            "issuerRef": {
                              "group": "cert-manager.io",
                              "kind": "Issuer",
                              "name": "server-ca-issuer"
                            }
                          }
                        }
                      }
                    }
                  },
                  "instances": 2,
                  "pgd": {
                    "parentGroup": {
                      "create": true,
                      "name": "world"
                    }
                  },
                  "proxyInstances": 2,
                  "witness": {
                    "storage": {
                      "size": "1Gi"
                    },
                    "walStorage": {
                      "size": "1Gi"
                    }
                  },
                  "witnessInstances": 1
                }
              },
              {
                "apiVersion": "pgd.k8s.enterprisedb.io/v1beta1",
                "kind": "PGDGroupCleanup",
                "metadata": {
                  "name": "region-b-cleanup"
                },
                "spec": {
                  "executor": "region-a",
                  "target": "region-b"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s_enterprise_pgd/pg4k-pgd-openshift@sha256:5127d913011619d61fd06b27be3c709df2236a4b5c0254fa58632698d58b50fb
          createdAt: "2025-09-26T01:49:29Z"
          description: EDB Postgres Distributed for Kubernetes is an operator designed
            to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both
            in a single Kubernetes cluster or across multiple ones.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: EnterpriseDB Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterImageCatalog
            name: clusterimagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - kind: ImageCatalog
            name: imagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: Object to clean up a PGD Group
            displayName: PGD Group Cleanup
            kind: PGDGroupCleanup
            name: pgdgroupcleanups.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: A group of Postgres Clusters
            displayName: PGD Group
            kind: PGDGroup
            name: pgdgroups.pgd.k8s.enterprisedb.io
            version: v1beta1
        description: |
          EDB Postgres Distributed for Kubernetes is an operator designed to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both in a single Kubernetes cluster or across multiple ones.

          EDB Postgres Distributed is an extension for PostgreSQL that provides multi-master replication and data distribution with advanced conflict management, data-loss protection, and throughput up to 5X faster than native logical replication. It enables distributed PostgreSQL clusters with high availability up to five 9s.

          This operator requires access to the EDB private repositories.
        displayName: EDB Postgres Distributed for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - distributed
        - postgres
        - database
        - sql
        - cloud
        - native
        - edb
        - enterprisedb
        - cnp
        - pg4k
        - pgd
        links:
        - name: 'Documentation: EDB Postgres Distributed v5'
          url: https://www.enterprisedb.com/docs/pgd/latest/
        - name: 'Documentation: EDB Postgres Distributed for Kubernetes'
          url: https://www.enterprisedb.com/docs/postgres_distributed_for_kubernetes/latest/
        maintainers:
        - email: sales@enterprisedb.com
          name: Sales
        - email: support@enterprisedb.com
          name: Support
        maturity: alpha
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - docker.enterprisedb.com/k8s_enterprise_pgd/pg4k-pgd-openshift@sha256:5127d913011619d61fd06b27be3c709df2236a4b5c0254fa58632698d58b50fb
        - registry.connect.redhat.com/enterprisedb/pg4k-pgd@sha256:fb206b95690e9604c41715369c69125a906b866dc35cfc5c63638ce7a4337fa2
        version: 1.1.3
      entries:
      - name: pg4k-pgd.v1.1.3
        version: 1.1.3
      - name: pg4k-pgd.v1.1.2
        version: 1.1.2
      - name: pg4k-pgd.v1.1.1
        version: 1.1.1
      - name: pg4k-pgd.v1.1.0
        version: 1.1.0
      - name: pg4k-pgd.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: stable
    packageName: pg4k-pgd
    provider:
      name: EnterpriseDB Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ApeCloud
      provider-url: https://apecloud.com
    name: kubeblocks
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubeblocks.v1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.io/apecloud/kubeblocks@sha256:44c546d7a0b3894f7a144aaf27e2690c76e3310cd8907c37b23bc2eb28a9763f
          createdAt: "2025-10-31T02:47:13Z"
          description: KubeBlocks is an open-source control plane that runs and manages
            databases, message queues and other stateful applications on K8s.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/apecloud/kubeblocks
          support: ApeCloud
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ActionSet
            name: actionsets.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: Addon
            name: addons.extensions.kubeblocks.io
            version: v1alpha1
          - kind: BackupPolicy
            name: backuppolicies.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: BackupPolicyTemplate
            name: backuppolicytemplates.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: BackupRepo
            name: backuprepos.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: Backup
            name: backups.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: BackupSchedule
            name: backupschedules.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: ClusterDefinition
            name: clusterdefinitions.apps.kubeblocks.io
            version: v1
          - kind: Cluster
            name: clusters.apps.kubeblocks.io
            version: v1
          - kind: ComponentDefinition
            name: componentdefinitions.apps.kubeblocks.io
            version: v1
          - kind: ComponentParameter
            name: componentparameters.parameters.kubeblocks.io
            version: v1alpha1
          - kind: Component
            name: components.apps.kubeblocks.io
            version: v1
          - kind: ComponentVersion
            name: componentversions.apps.kubeblocks.io
            version: v1
          - kind: ConfigConstraint
            name: configconstraints.apps.kubeblocks.io
            version: v1beta1
          - kind: InstanceSet
            name: instancesets.workloads.kubeblocks.io
            version: v1
          - kind: NodeCountScaler
            name: nodecountscalers.experimental.kubeblocks.io
            version: v1alpha1
          - kind: OpsDefinition
            name: opsdefinitions.operations.kubeblocks.io
            version: v1alpha1
          - kind: OpsRequest
            name: opsrequests.operations.kubeblocks.io
            version: v1alpha1
          - kind: ParamConfigRenderer
            name: paramconfigrenderers.parameters.kubeblocks.io
            version: v1alpha1
          - kind: Parameter
            name: parameters.parameters.kubeblocks.io
            version: v1alpha1
          - kind: ParametersDefinition
            name: parametersdefinitions.parameters.kubeblocks.io
            version: v1alpha1
          - kind: ReconciliationTrace
            name: reconciliationtraces.trace.kubeblocks.io
            version: v1
          - kind: Restore
            name: restores.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: ServiceDescriptor
            name: servicedescriptors.apps.kubeblocks.io
            version: v1
          - kind: ShardingDefinition
            name: shardingdefinitions.apps.kubeblocks.io
            version: v1
          - kind: SidecarDefinition
            name: sidecardefinitions.apps.kubeblocks.io
            version: v1
          - kind: StorageProvider
            name: storageproviders.dataprotection.kubeblocks.io
            version: v1alpha1
        description: KubeBlocks is an open-source control plane that runs and manages
          databases, message queues and other stateful applications on K8s.
        displayName: KubeBlocks
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubeblocks
        - database
        - mysql
        - postgresql
        - redis
        - mongodb
        - kafka
        - sql
        links:
        - name: Documentation
          url: https://kubeblocks.io
        - name: GitHub
          url: https://github.com/apecloud/kubeblocks
        - name: Slack Community
          url: https://kubeblocks.slack.com
        maintainers:
        - email: kubeblocks@apecloud.com
          name: KubeBlocks Team
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: ApeCloud
          url: https://apecloud.com
        relatedImages:
        - docker.io/apecloud/kubeblocks@sha256:44c546d7a0b3894f7a144aaf27e2690c76e3310cd8907c37b23bc2eb28a9763f
        - registry.connect.redhat.com/apecloud/kubeblocks@sha256:84d3657b75820b61750dcb91137e88d3f3c64c0e8fcf137ec271555bfaf62f15
        version: 1.0.1
      entries:
      - name: kubeblocks.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: stable
    packageName: kubeblocks
    provider:
      name: ApeCloud
      url: https://apecloud.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: ""
    name: mto-dependencies-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mto-dependencies-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "Dex",
                "metadata": {
                  "name": "dex-sample"
                },
                "spec": {
                  "affinity": {},
                  "autoscaling": {
                    "enabled": false,
                    "maxReplicas": 100,
                    "minReplicas": 1,
                    "targetCPUUtilizationPercentage": 80
                  },
                  "commonLabels": {},
                  "config": {},
                  "configSecret": {
                    "create": true,
                    "name": ""
                  },
                  "deploymentAnnotations": {},
                  "deploymentLabels": {},
                  "env": {},
                  "envFrom": [],
                  "envVars": [],
                  "fullnameOverride": "",
                  "grpc": {
                    "enabled": false
                  },
                  "hostAliases": [],
                  "https": {
                    "enabled": false
                  },
                  "image": {
                    "digest": "",
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/dexidp/dex",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "ingress": {
                    "annotations": {},
                    "className": "",
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "chart-example.local",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": []
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "egressRules": [],
                    "enabled": false
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podDisruptionBudget": {
                    "enabled": false,
                    "maxUnavailable": null,
                    "minAvailable": null
                  },
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": "",
                  "rbac": {
                    "create": true,
                    "createClusterScoped": true
                  },
                  "replicaCount": 1,
                  "resources": {},
                  "revisionHistoryLimit": 10,
                  "securityContext": {},
                  "service": {
                    "annotations": {},
                    "clusterIP": "",
                    "loadBalancerIP": "",
                    "ports": {
                      "grpc": {
                        "nodePort": null,
                        "port": 5557
                      },
                      "http": {
                        "nodePort": null,
                        "port": 5556
                      },
                      "https": {
                        "nodePort": null,
                        "port": 5554
                      }
                    },
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": ""
                  },
                  "serviceMonitor": {
                    "annotations": {},
                    "bearerTokenFile": null,
                    "enabled": false,
                    "honorLabels": false,
                    "interval": null,
                    "labels": {},
                    "metricRelabelings": [],
                    "namespace": "",
                    "path": "/metrics",
                    "relabelings": [],
                    "scheme": "",
                    "scrapeTimeout": null,
                    "tlsConfig": {}
                  },
                  "strategy": {},
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "volumeMounts": [],
                  "volumes": []
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "DexConfigOperator",
                "metadata": {
                  "name": "dexconfigoperator-sample"
                },
                "spec": {
                  "controllerManager": {
                    "manager": {
                      "args": [
                        "--metrics-bind-address=:8443",
                        "--leader-elect",
                        "--health-probe-bind-address=:8081"
                      ],
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        }
                      },
                      "env": {
                        "dexNamespace": "dex"
                      },
                      "image": {
                        "repository": "ghcr.io/stakater/public/dex-config-operator",
                        "tag": "v0.0.1"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "128Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "64Mi"
                        }
                      }
                    },
                    "podSecurityContext": {
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "replicas": 1,
                    "serviceAccount": {
                      "annotations": {}
                    }
                  },
                  "kubernetesClusterDomain": "cluster.local",
                  "metricsService": {
                    "ports": [
                      {
                        "name": "https",
                        "port": 8443,
                        "protocol": "TCP",
                        "targetPort": 8443
                      }
                    ],
                    "type": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "FinOpsOperator",
                "metadata": {
                  "name": "finopsoperator-sample"
                },
                "spec": {
                  "controllerManager": {
                    "manager": {
                      "args": [
                        "--metrics-bind-address=:8443",
                        "--leader-elect",
                        "--health-probe-bind-address=:8081"
                      ],
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        }
                      },
                      "env": {
                        "opencostDeploymentName": "finops-operator-opencost",
                        "opencostDeploymentNamespace": "finops-operator-system",
                        "operatorImage": "registrypath/to/finops-operator:v0.1.14"
                      },
                      "image": {
                        "repository": "ghcr.io/stakater/finops-operator",
                        "tag": "v0.1.14"
                      }
                    },
                    "podSecurityContext": {
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "replicas": 1,
                    "serviceAccount": {
                      "annotations": {}
                    }
                  },
                  "finops-gateway": {
                    "finopsGatewayContainer": {
                      "env": {
                        "enableAuth": "true",
                        "mtoGatewayUrl": "https://mto-zain-gateway.apps.xy1462m7s.stakater.cloud",
                        "port": "8080"
                      }
                    },
                    "gateway": {
                      "finopsGatewayContainer": {
                        "containerSecurityContext": {},
                        "env": {
                          "enableAuth": "false",
                          "mtoGatewayUrl": "",
                          "port": "8080"
                        },
                        "image": {
                          "repository": "ghcr.io/stakater/finops-gateway",
                          "tag": "v0.1.12"
                        }
                      },
                      "nodeSelector": {},
                      "replicas": 1,
                      "tolerations": [],
                      "topologySpreadConstraints": []
                    },
                    "global": {},
                    "imagePullSecrets": [],
                    "kubernetesClusterDomain": "cluster.local",
                    "service": {
                      "ports": [
                        {
                          "name": "http",
                          "port": 8080,
                          "targetPort": 8080
                        }
                      ],
                      "type": "ClusterIP"
                    }
                  },
                  "kubernetesClusterDomain": "cluster.local",
                  "metricsService": {
                    "ports": [
                      {
                        "name": "https",
                        "port": 8443,
                        "protocol": "TCP",
                        "targetPort": 8443
                      }
                    ],
                    "type": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "KubeStateMetrics",
                "metadata": {
                  "name": "kubestatemetrics-sample"
                },
                "spec": {
                  "affinity": {},
                  "annotations": {},
                  "automountServiceAccountToken": true,
                  "autosharding": {
                    "enabled": false
                  },
                  "collectors": [
                    "certificatesigningrequests",
                    "configmaps",
                    "cronjobs",
                    "daemonsets",
                    "deployments",
                    "endpoints",
                    "horizontalpodautoscalers",
                    "ingresses",
                    "jobs",
                    "leases",
                    "limitranges",
                    "mutatingwebhookconfigurations",
                    "namespaces",
                    "networkpolicies",
                    "nodes",
                    "persistentvolumeclaims",
                    "persistentvolumes",
                    "poddisruptionbudgets",
                    "pods",
                    "replicasets",
                    "replicationcontrollers",
                    "resourcequotas",
                    "secrets",
                    "services",
                    "statefulsets",
                    "storageclasses",
                    "validatingwebhookconfigurations",
                    "volumeattachments"
                  ],
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "readOnlyRootFilesystem": true
                  },
                  "containers": [],
                  "customLabels": {},
                  "customResourceState": {
                    "config": {},
                    "create": true,
                    "enabled": false,
                    "key": "config.yaml",
                    "name": ""
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "ClusterFirst",
                  "env": [],
                  "extraArgs": [],
                  "extraManifests": [],
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": ""
                  },
                  "hostNetwork": false,
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "registry": "registry.k8s.io",
                    "repository": "kube-state-metrics/kube-state-metrics",
                    "sha": "",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "initContainers": [],
                  "kubeRBACProxy": {
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true
                    },
                    "enabled": false,
                    "extraArgs": [],
                    "ignoreProbePaths": true,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "registry": "quay.io",
                      "repository": "brancz/kube-rbac-proxy",
                      "sha": "",
                      "tag": "v0.19.1"
                    },
                    "proxyEndpointsPort": 8888,
                    "resources": {},
                    "volumeMounts": []
                  },
                  "kubeconfig": {
                    "enabled": false,
                    "secret": null
                  },
                  "labels": {},
                  "livenessProbe": {
                    "failureThreshold": 3,
                    "httpGet": {
                      "httpHeaders": [],
                      "scheme": "http"
                    },
                    "initialDelaySeconds": 5,
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 5
                  },
                  "metricAllowlist": [],
                  "metricAnnotationsAllowList": [],
                  "metricDenylist": [],
                  "metricLabelsAllowlist": [],
                  "namespaceOverride": "",
                  "namespaces": "",
                  "namespacesDenylist": "",
                  "networkPolicy": {
                    "enabled": false,
                    "flavor": "kubernetes"
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podDisruptionBudget": {},
                  "podLabels": {},
                  "prometheus": {
                    "monitor": {
                      "additionalLabels": {},
                      "annotations": {},
                      "enabled": false,
                      "http": {
                        "bearerTokenFile": "",
                        "bearerTokenSecret": {},
                        "enableHttp2": false,
                        "honorLabels": false,
                        "interval": "",
                        "metricRelabelings": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "scheme": "",
                        "scrapeTimeout": "",
                        "tlsConfig": {}
                      },
                      "jobLabel": "",
                      "labelLimit": 0,
                      "labelNameLengthLimit": 0,
                      "labelValueLengthLimit": 0,
                      "metrics": {
                        "bearerTokenFile": "",
                        "bearerTokenSecret": {},
                        "enableHttp2": false,
                        "honorLabels": false,
                        "interval": "",
                        "metricRelabelings": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "scheme": "",
                        "scrapeTimeout": "",
                        "tlsConfig": {}
                      },
                      "namespace": "",
                      "namespaceSelector": [],
                      "podTargetLabels": [],
                      "sampleLimit": 0,
                      "selectorOverride": {},
                      "targetLabels": [],
                      "targetLimit": 0
                    },
                    "scrapeconfig": {
                      "additionalLabels": {},
                      "annotations": {},
                      "enableHttp2": false,
                      "enabled": false,
                      "honorLabels": true,
                      "jobName": "kube-state-metrics",
                      "labelLimit": 0,
                      "labelNameLengthLimit": 0,
                      "labelValueLengthLimit": 0,
                      "metricRelabelings": [],
                      "proxyUrl": "",
                      "relabelings": [],
                      "sampleLimit": 0,
                      "scheme": "",
                      "scrapeInterval": "",
                      "scrapeTimeout": "",
                      "staticConfigLabels": {},
                      "targetLimit": 0,
                      "tlsConfig": {}
                    }
                  },
                  "prometheusScrape": true,
                  "rbac": {
                    "create": true,
                    "extraRules": [],
                    "useClusterRole": true
                  },
                  "readinessProbe": {
                    "failureThreshold": 3,
                    "httpGet": {
                      "httpHeaders": [],
                      "scheme": "http"
                    },
                    "initialDelaySeconds": 5,
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 5
                  },
                  "releaseLabel": false,
                  "releaseNamespace": false,
                  "replicas": 1,
                  "resources": {},
                  "revisionHistoryLimit": 10,
                  "securityContext": {
                    "enabled": true,
                    "fsGroup": 65534,
                    "runAsGroup": 65534,
                    "runAsNonRoot": true,
                    "runAsUser": 65534,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "selectorOverride": {},
                  "selfMonitor": {
                    "enabled": false
                  },
                  "service": {
                    "annotations": {},
                    "clusterIP": "",
                    "ipDualStack": {
                      "enabled": false,
                      "ipFamilies": [
                        "IPv6",
                        "IPv4"
                      ],
                      "ipFamilyPolicy": "PreferDualStack"
                    },
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePort": 0,
                    "port": 8080,
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "imagePullSecrets": [],
                    "name": null
                  },
                  "startupProbe": {
                    "enabled": false,
                    "failureThreshold": 3,
                    "httpGet": {
                      "httpHeaders": [],
                      "scheme": "http"
                    },
                    "initialDelaySeconds": 0,
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 5
                  },
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "verticalPodAutoscaler": {
                    "controlledResources": [],
                    "enabled": false,
                    "maxAllowed": {},
                    "minAllowed": {}
                  },
                  "volumeMounts": [],
                  "volumes": []
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "OpenCost",
                "metadata": {
                  "name": "opencost-sample"
                },
                "spec": {
                  "annotations": {},
                  "clusterName": "cluster.local",
                  "extraVolumes": [],
                  "fullnameOverride": "",
                  "imagePullSecrets": [],
                  "loglevel": "info",
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicies": {
                    "enabled": false,
                    "extraEgress": [],
                    "prometheus": {
                      "labels": {
                        "app.kubernetes.io/name": "prometheus"
                      },
                      "namespace": "prometheus-system",
                      "port": 9090
                    }
                  },
                  "opencost": {
                    "affinity": {},
                    "carbonCost": {
                      "enabled": false
                    },
                    "cloudCost": {
                      "enabled": false,
                      "monthToDateInterval": 6,
                      "queryWindowDays": 7,
                      "refreshRateHours": 6,
                      "runWindowDays": 3
                    },
                    "cloudIntegrationSecret": "",
                    "customPricing": {
                      "configPath": "/tmp/custom-config",
                      "configmapName": "custom-pricing-model",
                      "costModel": {
                        "CPU": 1.25,
                        "GPU": 0.95,
                        "RAM": 0.5,
                        "description": "Modified pricing configuration.",
                        "internetNetworkEgress": 0.12,
                        "regionNetworkEgress": 0.01,
                        "spotCPU": 0.006655,
                        "spotRAM": 0.000892,
                        "storage": 0.25,
                        "zoneNetworkEgress": 0.01
                      },
                      "createConfigmap": true,
                      "enabled": false,
                      "provider": "custom"
                    },
                    "exporter": {
                      "apiIngress": {
                        "annotations": {},
                        "enabled": false,
                        "hosts": [
                          {
                            "host": "example.local",
                            "paths": [
                              {
                                "path": "/",
                                "pathType": "Prefix"
                              }
                            ]
                          }
                        ],
                        "ingressClassName": "",
                        "servicePort": "http",
                        "tls": []
                      },
                      "apiPort": 9003,
                      "aws": {
                        "access_key_id": "",
                        "secret_access_key": ""
                      },
                      "cloudProviderApiKey": "",
                      "collectorDataSource": {
                        "enabled": false,
                        "networkPort": 3001,
                        "retention10m": 36,
                        "retention1d": 15,
                        "retention1h": 49,
                        "scrapeInterval": "30s"
                      },
                      "command": [],
                      "csv_path": "",
                      "defaultClusterId": "default-cluster",
                      "env": [],
                      "extraArgs": [],
                      "extraEnv": {},
                      "extraVolumeMounts": [],
                      "image": {
                        "fullImageName": null,
                        "pullPolicy": "IfNotPresent",
                        "registry": "ghcr.io",
                        "repository": "opencost/opencost",
                        "tag": "1.117.3@sha256:09fae89c4544ec2a891e2902e88ce3137d7032c6edbe0fd97441aaee7bdbea54"
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 10,
                        "path": "/healthz",
                        "periodSeconds": 20
                      },
                      "persistence": {
                        "accessMode": "",
                        "annotations": {},
                        "enabled": false,
                        "mountPath": "/mnt/export",
                        "size": "",
                        "storageClass": ""
                      },
                      "prometheusDataSource": {
                        "queryResolutionSeconds": 300
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 10,
                        "path": "/healthz",
                        "periodSeconds": 10
                      },
                      "replicas": 1,
                      "resources": {
                        "limits": {
                          "memory": "1Gi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "55Mi"
                        }
                      },
                      "securityContext": {},
                      "startupProbe": {
                        "enabled": true,
                        "failureThreshold": 30,
                        "initialDelaySeconds": 10,
                        "path": "/healthz",
                        "periodSeconds": 5
                      }
                    },
                    "extraContainers": [],
                    "metrics": {
                      "config": {
                        "configmapName": "custom-metrics",
                        "disabledMetrics": [],
                        "enabled": false
                      },
                      "kubeStateMetrics": {
                        "emitKsmV1Metrics": null,
                        "emitKsmV1MetricsOnly": null,
                        "emitNamespaceAnnotations": null,
                        "emitPodAnnotations": null
                      },
                      "serviceMonitor": {
                        "additionalLabels": {},
                        "enabled": false,
                        "extraEndpoints": [],
                        "honorLabels": true,
                        "metricRelabelings": [],
                        "namespace": "",
                        "relabelings": [],
                        "scheme": "http",
                        "scrapeInterval": "30s",
                        "scrapeTimeout": "10s",
                        "tlsConfig": {}
                      }
                    },
                    "nodeSelector": {},
                    "platforms": {
                      "openshift": {
                        "createMonitoringClusterRoleBinding": false,
                        "createMonitoringResourceReaderRoleBinding": false,
                        "enablePromAccess": false,
                        "enableSCC": false,
                        "enabled": false,
                        "monitoringServiceAccountName": "prometheus-k8s",
                        "monitoringServiceAccountNamespace": "openshift-monitoring"
                      }
                    },
                    "prometheus": {
                      "amp": {
                        "enabled": false,
                        "workspaceId": ""
                      },
                      "bearer_token": "",
                      "bearer_token_key": "DB_BEARER_TOKEN",
                      "existingSecretName": null,
                      "external": {
                        "enabled": false,
                        "url": "https://prometheus.example.com/prometheus"
                      },
                      "insecureSkipVerify": false,
                      "internal": {
                        "enabled": true,
                        "namespaceName": "prometheus-system",
                        "path": "",
                        "port": 80,
                        "scheme": "http",
                        "serviceName": "prometheus-server"
                      },
                      "kubeRBACProxy": false,
                      "password": "",
                      "password_key": "DB_BASIC_AUTH_PW",
                      "secret_name": null,
                      "thanos": {
                        "enabled": false,
                        "external": {
                          "enabled": false,
                          "url": "https://thanos-query.example.com/thanos"
                        },
                        "internal": {
                          "enabled": true,
                          "namespaceName": "opencost",
                          "port": 10901,
                          "scheme": "http",
                          "serviceName": "my-thanos-query"
                        },
                        "maxSourceResolution": "",
                        "queryOffset": ""
                      },
                      "username": "",
                      "username_key": "DB_BASIC_AUTH_USERNAME"
                    },
                    "retention1d": 15,
                    "retention1h": 49,
                    "sigV4Proxy": {
                      "extraEnv": null,
                      "host": "aps-workspaces.us-west-2.amazonaws.com",
                      "image": "public.ecr.aws/aws-observability/aws-sigv4-proxy@sha256:2768495a4e331852aa4f206ad728f5e65b2c8680715ae984d1580ca1029f8438",
                      "imagePullPolicy": "IfNotPresent",
                      "name": "aps",
                      "port": 8005,
                      "region": "us-west-2",
                      "resources": {},
                      "securityContext": {}
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "ui": {
                      "enabled": true,
                      "extraEnv": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "fullImageName": null,
                        "pullPolicy": "IfNotPresent",
                        "registry": "ghcr.io",
                        "repository": "opencost/opencost-ui",
                        "tag": "1.117.3@sha256:727b95405e8c749ddbaa3bd97b93d9c0e246faeb9be9d370dd93ae6b31cdb0c2"
                      },
                      "ingress": {
                        "annotations": {},
                        "enabled": false,
                        "hosts": [
                          {
                            "host": "example.local",
                            "paths": [
                              "/"
                            ]
                          }
                        ],
                        "ingressClassName": "",
                        "servicePort": "http-ui",
                        "tls": []
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 30,
                        "path": "/healthz",
                        "periodSeconds": 10
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 30,
                        "path": "/healthz",
                        "periodSeconds": 10
                      },
                      "resources": {
                        "limits": {
                          "memory": "1Gi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "55Mi"
                        }
                      },
                      "route": {
                        "annotations": {},
                        "enabled": false,
                        "host": "example.local",
                        "path": null,
                        "targetPort": "http-ui",
                        "tls": []
                      },
                      "securityContext": {},
                      "uiPath": "/",
                      "uiPort": 9090,
                      "useDefaultFqdn": false,
                      "useIPv6": true
                    }
                  },
                  "pdb": {
                    "enabled": false,
                    "maxUnavailable": null,
                    "minAvailable": null
                  },
                  "plugins": {
                    "configs": null,
                    "enabled": false,
                    "folder": "/opt/opencost/plugin",
                    "install": {
                      "enabled": true,
                      "fullImageName": "curlimages/curl:latest",
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "runAsUser": 1000,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      }
                    }
                  },
                  "podAnnotations": {},
                  "podAutomountServiceAccountToken": true,
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": null,
                  "rbac": {
                    "enabled": true
                  },
                  "secretAnnotations": {},
                  "service": {
                    "annotations": {},
                    "enabled": true,
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerSourceRanges": [],
                    "nodePort": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "updateStrategy": {
                    "rollingUpdate": {
                      "maxSurge": 1,
                      "maxUnavailable": 1
                    },
                    "type": "RollingUpdate"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "Postgres",
                "metadata": {
                  "name": "postgres-sample"
                },
                "spec": {
                  "architecture": "standalone",
                  "audit": {
                    "clientMinMessages": "error",
                    "logConnections": false,
                    "logDisconnections": false,
                    "logHostname": false,
                    "logLinePrefix": "",
                    "logTimezone": "",
                    "pgAuditLog": "",
                    "pgAuditLogCatalog": "off"
                  },
                  "auth": {
                    "database": "",
                    "enablePostgresUser": true,
                    "existingSecret": "",
                    "password": "",
                    "postgresPassword": "",
                    "replicationPassword": "",
                    "replicationUsername": "repl_user",
                    "secretKeys": {
                      "adminPasswordKey": "postgres-password",
                      "replicationPasswordKey": "replication-password",
                      "userPasswordKey": "password"
                    },
                    "usePasswordFiles": true,
                    "username": ""
                  },
                  "backup": {
                    "cronjob": {
                      "annotations": {},
                      "command": [
                        "/bin/bash",
                        "-c",
                        "PGPASSWORD=\"${PGPASSWORD:-$(\u003c \"$PGPASSWORD_FILE\")}\" pg_dumpall --clean --if-exists --load-via-partition-root --quote-all-identifiers --no-password --file=\"${PGDUMP_DIR}/pg_dumpall-$(date '+%Y-%m-%d-%H-%M').pgdump\""
                      ],
                      "concurrencyPolicy": "Allow",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "privileged": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 1001,
                        "runAsNonRoot": true,
                        "runAsUser": 1001,
                        "seLinuxOptions": {},
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "failedJobsHistoryLimit": 1,
                      "labels": {},
                      "networkPolicy": {
                        "enabled": true
                      },
                      "nodeSelector": {},
                      "podSecurityContext": {
                        "enabled": true,
                        "fsGroup": 1001,
                        "fsGroupChangePolicy": "Always",
                        "supplementalGroups": [],
                        "sysctls": []
                      },
                      "resources": {},
                      "resourcesPreset": "nano",
                      "restartPolicy": "OnFailure",
                      "schedule": "@daily",
                      "startingDeadlineSeconds": "",
                      "storage": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "enabled": true,
                        "existingClaim": "",
                        "mountPath": "/backup/pgdump",
                        "resourcePolicy": "",
                        "size": "8Gi",
                        "storageClass": "",
                        "subPath": "",
                        "volumeClaimTemplates": {
                          "selector": {}
                        }
                      },
                      "successfulJobsHistoryLimit": 3,
                      "timeZone": "",
                      "tolerations": [],
                      "ttlSecondsAfterFinished": ""
                    },
                    "enabled": false
                  },
                  "clusterDomain": "cluster.local",
                  "common": {
                    "exampleValue": "common-chart",
                    "global": {
                      "compatibility": {
                        "openshift": {
                          "adaptSecurityContext": "auto"
                        }
                      },
                      "defaultStorageClass": "",
                      "imagePullSecrets": [],
                      "imageRegistry": "",
                      "postgresql": {
                        "auth": {
                          "database": "",
                          "existingSecret": "",
                          "password": "",
                          "postgresPassword": "",
                          "secretKeys": {
                            "adminPasswordKey": "",
                            "replicationPasswordKey": "",
                            "userPasswordKey": ""
                          },
                          "username": ""
                        },
                        "fullnameOverride": "",
                        "service": {
                          "ports": {
                            "postgresql": ""
                          }
                        }
                      },
                      "security": {
                        "allowInsecureImages": false
                      },
                      "storageClass": ""
                    }
                  },
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "containerPorts": {
                    "postgresql": 5432
                  },
                  "diagnosticMode": {
                    "args": [
                      "infinity"
                    ],
                    "command": [
                      "sleep"
                    ],
                    "enabled": false
                  },
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "global": {
                    "compatibility": {
                      "openshift": {
                        "adaptSecurityContext": "auto"
                      }
                    },
                    "defaultStorageClass": "",
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "auth": {
                        "database": "",
                        "existingSecret": "",
                        "password": "",
                        "postgresPassword": "",
                        "secretKeys": {
                          "adminPasswordKey": "",
                          "replicationPasswordKey": "",
                          "userPasswordKey": ""
                        },
                        "username": ""
                      },
                      "fullnameOverride": "",
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "security": {
                      "allowInsecureImages": false
                    },
                    "storageClass": ""
                  },
                  "image": {
                    "debug": false,
                    "digest": "",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "bitnami/postgresql",
                    "tag": "17.6.0-debian-12-r4"
                  },
                  "kubeVersion": "",
                  "ldap": {
                    "basedn": "",
                    "binddn": "",
                    "bindpw": "",
                    "enabled": false,
                    "port": "",
                    "prefix": "",
                    "scheme": "",
                    "searchAttribute": "",
                    "searchFilter": "",
                    "server": "",
                    "suffix": "",
                    "tls": {
                      "enabled": false
                    },
                    "uri": ""
                  },
                  "metrics": {
                    "collectors": {},
                    "containerPorts": {
                      "metrics": 9187
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customMetrics": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "enabled": false,
                    "extraEnvVars": [],
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/postgres-exporter",
                      "tag": "0.17.1-debian-12-r16"
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "prometheusRule": {
                      "enabled": false,
                      "labels": {},
                      "namespace": "",
                      "rules": []
                    },
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {},
                    "resourcesPreset": "nano",
                    "service": {
                      "annotations": {
                        "prometheus.io/port": "{{ .Values.metrics.service.ports.metrics }}",
                        "prometheus.io/scrape": "true"
                      },
                      "clusterIP": "",
                      "ports": {
                        "metrics": 9187
                      },
                      "sessionAffinity": "None"
                    },
                    "serviceMonitor": {
                      "enabled": false,
                      "honorLabels": false,
                      "interval": "",
                      "jobLabel": "",
                      "labels": {},
                      "metricRelabelings": [],
                      "namespace": "",
                      "relabelings": [],
                      "scrapeTimeout": "",
                      "selector": {}
                    },
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 15,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    }
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "passwordUpdateJob": {
                    "annotations": {},
                    "args": [],
                    "automountServiceAccountToken": false,
                    "backoffLimit": 10,
                    "command": [],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "enabled": false,
                    "extraCommands": "",
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "initContainers": [],
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 1001,
                      "fsGroupChangePolicy": "Always",
                      "supplementalGroups": [],
                      "sysctls": []
                    },
                    "previousPasswords": {
                      "existingSecret": "",
                      "password": "",
                      "postgresPassword": "",
                      "replicationPassword": ""
                    },
                    "resources": {},
                    "resourcesPreset": "micro"
                  },
                  "postgresqlDataDir": "/bitnami/postgresql/data",
                  "postgresqlSharedPreloadLibraries": "pgaudit",
                  "primary": {
                    "affinity": {},
                    "annotations": {},
                    "args": [],
                    "automountServiceAccountToken": false,
                    "command": [],
                    "configuration": "",
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "existingConfigmap": "",
                    "existingExtendedConfigmap": "",
                    "extendedConfiguration": "",
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraPodSpec": {},
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "hostIPC": false,
                    "hostNetwork": false,
                    "initContainers": [],
                    "initdb": {
                      "args": "",
                      "password": "",
                      "postgresqlWalDir": "",
                      "scripts": {},
                      "scriptsConfigMap": "",
                      "scriptsSecret": "",
                      "user": ""
                    },
                    "labels": {},
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "name": "primary",
                    "networkPolicy": {
                      "allowExternal": true,
                      "allowExternalEgress": true,
                      "enabled": true,
                      "extraEgress": [],
                      "extraIngress": [],
                      "ingressNSMatchLabels": {},
                      "ingressNSPodMatchLabels": {}
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "pdb": {
                      "create": true,
                      "maxUnavailable": "",
                      "minAvailable": ""
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "dataSource": {},
                      "enabled": true,
                      "existingClaim": "",
                      "labels": {},
                      "mountPath": "/bitnami/postgresql",
                      "selector": {},
                      "size": "8Gi",
                      "storageClass": "",
                      "subPath": "",
                      "volumeName": "data"
                    },
                    "persistentVolumeClaimRetentionPolicy": {
                      "enabled": false,
                      "whenDeleted": "Retain",
                      "whenScaled": "Retain"
                    },
                    "pgHbaConfiguration": "",
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {},
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 1001,
                      "fsGroupChangePolicy": "Always",
                      "supplementalGroups": [],
                      "sysctls": []
                    },
                    "preInitDb": {
                      "scripts": {},
                      "scriptsConfigMap": "",
                      "scriptsSecret": ""
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {},
                    "resourcesPreset": "nano",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "headless": {
                        "annotations": {}
                      },
                      "labels": {},
                      "loadBalancerClass": "",
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "postgresql": ""
                      },
                      "ports": {
                        "postgresql": 5432
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "standby": {
                      "enabled": false,
                      "primaryHost": "",
                      "primaryPort": ""
                    },
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 15,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "terminationGracePeriodSeconds": "",
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "rollingUpdate": {},
                      "type": "RollingUpdate"
                    }
                  },
                  "psp": {
                    "create": false
                  },
                  "rbac": {
                    "create": false,
                    "rules": []
                  },
                  "readReplicas": {
                    "affinity": {},
                    "annotations": {},
                    "args": [],
                    "automountServiceAccountToken": false,
                    "command": [],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "extendedConfiguration": "",
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraPodSpec": {},
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "hostIPC": false,
                    "hostNetwork": false,
                    "initContainers": [],
                    "labels": {},
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "name": "read",
                    "networkPolicy": {
                      "allowExternal": true,
                      "allowExternalEgress": true,
                      "enabled": true,
                      "extraEgress": [],
                      "extraIngress": [],
                      "ingressNSMatchLabels": {},
                      "ingressNSPodMatchLabels": {}
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "pdb": {
                      "create": true,
                      "maxUnavailable": "",
                      "minAvailable": ""
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "dataSource": {},
                      "enabled": true,
                      "existingClaim": "",
                      "labels": {},
                      "mountPath": "/bitnami/postgresql",
                      "selector": {},
                      "size": "8Gi",
                      "storageClass": "",
                      "subPath": ""
                    },
                    "persistentVolumeClaimRetentionPolicy": {
                      "enabled": false,
                      "whenDeleted": "Retain",
                      "whenScaled": "Retain"
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {},
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 1001,
                      "fsGroupChangePolicy": "Always",
                      "supplementalGroups": [],
                      "sysctls": []
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "nano",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "headless": {
                        "annotations": {}
                      },
                      "labels": {},
                      "loadBalancerClass": "",
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "postgresql": ""
                      },
                      "ports": {
                        "postgresql": 5432
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 15,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "terminationGracePeriodSeconds": "",
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "rollingUpdate": {},
                      "type": "RollingUpdate"
                    }
                  },
                  "replication": {
                    "applicationName": "my_application",
                    "numSynchronousReplicas": 0,
                    "synchronousCommit": "off"
                  },
                  "secretAnnotations": {},
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": false,
                    "create": true,
                    "name": ""
                  },
                  "serviceBindings": {
                    "enabled": false
                  },
                  "shmVolume": {
                    "enabled": true,
                    "sizeLimit": ""
                  },
                  "tls": {
                    "autoGenerated": false,
                    "certCAFilename": "",
                    "certFilename": "",
                    "certKeyFilename": "",
                    "certificatesSecret": "",
                    "crlFilename": "",
                    "enabled": false,
                    "preferServerCiphers": true
                  },
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r51"
                    },
                    "resources": {},
                    "resourcesPreset": "nano"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "Prometheus",
                "metadata": {
                  "name": "prometheus-sample"
                },
                "spec": {
                  "alertRelabelConfigs": {},
                  "alertmanager": {
                    "additionalPeers": [],
                    "affinity": {},
                    "automountServiceAccountToken": true,
                    "baseURL": "",
                    "command": [],
                    "config": {
                      "enabled": true,
                      "global": {},
                      "receivers": [
                        {
                          "name": "default-receiver"
                        }
                      ],
                      "route": {
                        "group_interval": "5m",
                        "group_wait": "10s",
                        "receiver": "default-receiver",
                        "repeat_interval": "3h"
                      },
                      "templates": [
                        "/etc/alertmanager/*.tmpl"
                      ]
                    },
                    "configAnnotations": {},
                    "configmapReload": {
                      "enabled": false,
                      "extraArgs": {},
                      "extraEnv": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                        "tag": "v0.85.0"
                      },
                      "livenessProbe": {},
                      "name": "configmap-reload",
                      "readinessProbe": {},
                      "resources": {},
                      "securityContext": {}
                    },
                    "containerPortName": "http",
                    "dnsConfig": {},
                    "enabled": true,
                    "extraArgs": {},
                    "extraContainers": [],
                    "extraEnv": [],
                    "extraInitContainers": [],
                    "extraPodConfigs": {},
                    "extraSecretMounts": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {},
                    "hostAliases": [],
                    "hostUsers": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "quay.io/prometheus/alertmanager",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "ingress": {
                      "annotations": {},
                      "className": "",
                      "enabled": false,
                      "hosts": [
                        {
                          "host": "alertmanager.domain.com",
                          "paths": [
                            {
                              "path": "/",
                              "pathType": "ImplementationSpecific"
                            }
                          ]
                        }
                      ],
                      "labels": {},
                      "tls": []
                    },
                    "ingressPerReplica": {
                      "annotations": {},
                      "className": "",
                      "enabled": false,
                      "hostDomain": "domain.com",
                      "hostPrefix": "alertmanager",
                      "labels": {},
                      "pathType": "ImplementationSpecific",
                      "paths": [
                        "/"
                      ],
                      "tlsSecretName": "",
                      "tlsSecretPerReplica": {
                        "enabled": false,
                        "prefix": "alertmanager"
                      }
                    },
                    "livenessProbe": {
                      "httpGet": {
                        "path": "/",
                        "port": "http"
                      }
                    },
                    "minReadySeconds": 0,
                    "nameOverride": "",
                    "namespaceOverride": "",
                    "nodeSelector": {},
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "emptyDir": {},
                      "enabled": true,
                      "labels": {},
                      "size": "2Gi"
                    },
                    "podAnnotations": {},
                    "podAntiAffinity": "",
                    "podAntiAffinityTopologyKey": "kubernetes.io/hostname",
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "podSecurityContext": {
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "httpGet": {
                        "path": "/",
                        "port": "http"
                      }
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "revisionHistoryLimit": 10,
                    "schedulerName": "",
                    "securityContext": {
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "annotations": {},
                      "clusterPort": 9094,
                      "extraPorts": [],
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "labels": {},
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "port": 9093,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "servicePerReplica": {
                      "annotations": {},
                      "enabled": false,
                      "externalTrafficPolicy": "Cluster",
                      "loadBalancerSourceRanges": [],
                      "type": "ClusterIP"
                    },
                    "statefulSet": {
                      "annotations": {}
                    },
                    "templates": {},
                    "testFramework": {
                      "annotations": {
                        "helm.sh/hook": "test-success"
                      },
                      "enabled": false
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "verticalPodAutoscaler": {
                      "enabled": false
                    }
                  },
                  "commonMetaLabels": {},
                  "configmapReload": {
                    "env": [],
                    "prometheus": {
                      "containerPort": 8080,
                      "containerPortName": "metrics",
                      "containerSecurityContext": {},
                      "enabled": true,
                      "extraArgs": {},
                      "extraConfigmapMounts": [],
                      "extraVolumeDirs": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                        "tag": "v0.85.0"
                      },
                      "livenessProbe": {
                        "httpGet": {
                          "path": "/healthz",
                          "port": "metrics",
                          "scheme": "HTTP"
                        },
                        "initialDelaySeconds": 2,
                        "periodSeconds": 10
                      },
                      "name": "configmap-reload",
                      "readinessProbe": {
                        "httpGet": {
                          "path": "/healthz",
                          "port": "metrics",
                          "scheme": "HTTP"
                        },
                        "periodSeconds": 10
                      },
                      "resources": {},
                      "startupProbe": {
                        "enabled": false,
                        "httpGet": {
                          "path": "/healthz",
                          "port": "metrics",
                          "scheme": "HTTP"
                        },
                        "periodSeconds": 10
                      }
                    },
                    "reloadUrl": ""
                  },
                  "extraManifests": [],
                  "extraScrapeConfigs": "",
                  "forceNamespace": "",
                  "imagePullSecrets": [],
                  "kube-state-metrics": {
                    "affinity": {},
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "autosharding": {
                      "enabled": false
                    },
                    "collectors": [
                      "certificatesigningrequests",
                      "configmaps",
                      "cronjobs",
                      "daemonsets",
                      "deployments",
                      "endpoints",
                      "horizontalpodautoscalers",
                      "ingresses",
                      "jobs",
                      "leases",
                      "limitranges",
                      "mutatingwebhookconfigurations",
                      "namespaces",
                      "networkpolicies",
                      "nodes",
                      "persistentvolumeclaims",
                      "persistentvolumes",
                      "poddisruptionbudgets",
                      "pods",
                      "replicasets",
                      "replicationcontrollers",
                      "resourcequotas",
                      "secrets",
                      "services",
                      "statefulsets",
                      "storageclasses",
                      "validatingwebhookconfigurations",
                      "volumeattachments"
                    ],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true
                    },
                    "containers": [],
                    "customLabels": {},
                    "customResourceState": {
                      "config": {},
                      "create": true,
                      "enabled": false,
                      "key": "config.yaml",
                      "name": ""
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "ClusterFirst",
                    "enabled": true,
                    "env": [],
                    "extraArgs": [],
                    "extraManifests": [],
                    "global": {
                      "imagePullSecrets": [],
                      "imageRegistry": ""
                    },
                    "hostNetwork": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "registry": "registry.k8s.io",
                      "repository": "kube-state-metrics/kube-state-metrics",
                      "sha": "",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "initContainers": [],
                    "kubeRBACProxy": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "readOnlyRootFilesystem": true
                      },
                      "enabled": false,
                      "extraArgs": [],
                      "ignoreProbePaths": true,
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "registry": "quay.io",
                        "repository": "brancz/kube-rbac-proxy",
                        "sha": "",
                        "tag": "v0.19.1"
                      },
                      "proxyEndpointsPort": 8888,
                      "resources": {},
                      "volumeMounts": []
                    },
                    "kubeconfig": {
                      "enabled": false,
                      "secret": null
                    },
                    "labels": {},
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "metricAllowlist": [],
                    "metricAnnotationsAllowList": [],
                    "metricDenylist": [],
                    "metricLabelsAllowlist": [],
                    "namespaceOverride": "",
                    "namespaces": "",
                    "namespacesDenylist": "",
                    "networkPolicy": {
                      "enabled": false,
                      "flavor": "kubernetes"
                    },
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "prometheus": {
                      "monitor": {
                        "additionalLabels": {},
                        "annotations": {},
                        "enabled": false,
                        "http": {
                          "bearerTokenFile": "",
                          "bearerTokenSecret": {},
                          "enableHttp2": false,
                          "honorLabels": false,
                          "interval": "",
                          "metricRelabelings": [],
                          "proxyUrl": "",
                          "relabelings": [],
                          "scheme": "",
                          "scrapeTimeout": "",
                          "tlsConfig": {}
                        },
                        "jobLabel": "",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metrics": {
                          "bearerTokenFile": "",
                          "bearerTokenSecret": {},
                          "enableHttp2": false,
                          "honorLabels": false,
                          "interval": "",
                          "metricRelabelings": [],
                          "proxyUrl": "",
                          "relabelings": [],
                          "scheme": "",
                          "scrapeTimeout": "",
                          "tlsConfig": {}
                        },
                        "namespace": "",
                        "namespaceSelector": [],
                        "podTargetLabels": [],
                        "sampleLimit": 0,
                        "selectorOverride": {},
                        "targetLabels": [],
                        "targetLimit": 0
                      },
                      "scrapeconfig": {
                        "additionalLabels": {},
                        "annotations": {},
                        "enableHttp2": false,
                        "enabled": false,
                        "honorLabels": true,
                        "jobName": "kube-state-metrics",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metricRelabelings": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "sampleLimit": 0,
                        "scheme": "",
                        "scrapeInterval": "",
                        "scrapeTimeout": "",
                        "staticConfigLabels": {},
                        "targetLimit": 0,
                        "tlsConfig": {}
                      }
                    },
                    "prometheusScrape": true,
                    "rbac": {
                      "create": true,
                      "extraRules": [],
                      "useClusterRole": true
                    },
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "releaseLabel": false,
                    "releaseNamespace": false,
                    "replicas": 1,
                    "resources": {},
                    "revisionHistoryLimit": 10,
                    "securityContext": {
                      "enabled": true,
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "selectorOverride": {},
                    "selfMonitor": {
                      "enabled": false
                    },
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePort": 0,
                      "port": 8080,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "automountServiceAccountToken": true,
                      "create": true,
                      "imagePullSecrets": [],
                      "name": null
                    },
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 0,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "verticalPodAutoscaler": {
                      "controlledResources": [],
                      "enabled": false,
                      "maxAllowed": {},
                      "minAllowed": {}
                    },
                    "volumeMounts": [],
                    "volumes": []
                  },
                  "networkPolicy": {
                    "enabled": false
                  },
                  "prometheus-node-exporter": {
                    "affinity": {},
                    "commonLabels": {},
                    "configmaps": [],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "readOnlyRootFilesystem": true
                    },
                    "daemonsetAnnotations": {},
                    "dnsConfig": {},
                    "enabled": true,
                    "endpoints": [],
                    "env": {},
                    "extraArgs": [],
                    "extraHostVolumeMounts": [],
                    "extraInitContainers": [],
                    "extraManifests": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {
                      "imagePullSecrets": [],
                      "imageRegistry": ""
                    },
                    "hostIPC": false,
                    "hostNetwork": true,
                    "hostPID": true,
                    "hostProcFsMount": {
                      "mountPropagation": ""
                    },
                    "hostRootFsMount": {
                      "enabled": true,
                      "mountPropagation": "HostToContainer"
                    },
                    "hostSysFsMount": {
                      "mountPropagation": ""
                    },
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "registry": "quay.io",
                      "repository": "prometheus/node-exporter",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "kubeRBACProxy": {
                      "containerSecurityContext": {},
                      "enableHostPort": false,
                      "enableProxyEndpointsHostPort": false,
                      "enabled": false,
                      "env": {},
                      "extraArgs": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "registry": "quay.io",
                        "repository": "brancz/kube-rbac-proxy",
                        "sha": "",
                        "tag": "v0.20.0"
                      },
                      "port": 8100,
                      "portName": "http",
                      "proxyEndpointsPort": 8888,
                      "resources": {},
                      "tls": {
                        "enabled": false,
                        "tlsClientAuth": false
                      }
                    },
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 0,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "nameOverride": "",
                    "namespaceOverride": "",
                    "networkPolicy": {
                      "enabled": false
                    },
                    "nodeSelector": {
                      "kubernetes.io/os": "linux"
                    },
                    "podAnnotations": {
                      "cluster-autoscaler.kubernetes.io/safe-to-evict": "true"
                    },
                    "podLabels": {},
                    "prometheus": {
                      "monitor": {
                        "additionalLabels": {},
                        "apiVersion": "",
                        "attachMetadata": {
                          "node": false
                        },
                        "basicAuth": {},
                        "bearerTokenFile": null,
                        "enabled": false,
                        "interval": "",
                        "jobLabel": "",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metricRelabelings": [],
                        "namespace": "",
                        "podTargetLabels": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "sampleLimit": 0,
                        "scheme": "http",
                        "scrapeTimeout": "10s",
                        "selectorOverride": {},
                        "targetLabels": [],
                        "targetLimit": 0,
                        "tlsConfig": {}
                      },
                      "podMonitor": {
                        "additionalLabels": {},
                        "apiVersion": "",
                        "attachMetadata": {
                          "node": false
                        },
                        "authorization": {},
                        "basicAuth": {},
                        "bearerTokenSecret": {},
                        "enableHttp2": "",
                        "enabled": false,
                        "filterRunning": "",
                        "followRedirects": "",
                        "honorLabels": true,
                        "honorTimestamps": true,
                        "interval": "",
                        "jobLabel": "",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metricRelabelings": [],
                        "namespace": "",
                        "oauth2": {},
                        "params": {},
                        "path": "/metrics",
                        "podTargetLabels": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "sampleLimit": 0,
                        "scheme": "http",
                        "scrapeTimeout": "",
                        "selectorOverride": {},
                        "targetLimit": 0,
                        "tlsConfig": {}
                      }
                    },
                    "rbac": {
                      "create": true,
                      "pspEnabled": false
                    },
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 0,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "releaseLabel": false,
                    "resources": {},
                    "restartPolicy": null,
                    "revisionHistoryLimit": 10,
                    "secrets": [],
                    "securityContext": {
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "annotations": {
                        "prometheus.io/scrape": "true"
                      },
                      "clusterIP": "",
                      "enabled": true,
                      "externalTrafficPolicy": "",
                      "internalTrafficPolicy": "",
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "labels": {},
                      "listenOnAllInterfaces": true,
                      "nodePort": null,
                      "port": 9100,
                      "portName": "metrics",
                      "servicePort": "",
                      "targetPort": 9100,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "automountServiceAccountToken": false,
                      "create": true,
                      "imagePullSecrets": [],
                      "name": null
                    },
                    "sidecarHostVolumeMounts": [],
                    "sidecarVolumeMount": [],
                    "sidecars": [],
                    "terminationGracePeriodSeconds": null,
                    "terminationMessageParams": {
                      "enabled": false,
                      "terminationMessagePath": "/dev/termination-log",
                      "terminationMessagePolicy": "File"
                    },
                    "tlsSecret": {
                      "caItem": "",
                      "certItem": "tls.crt",
                      "enabled": false,
                      "keyItem": "tls.key",
                      "secretName": "prometheus-node-exporter-tls",
                      "volumeName": "prometheus-node-exporter-tls"
                    },
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "operator": "Exists"
                      }
                    ],
                    "updateStrategy": {
                      "rollingUpdate": {
                        "maxUnavailable": 1
                      },
                      "type": "RollingUpdate"
                    },
                    "version": "",
                    "verticalPodAutoscaler": {
                      "controlledResources": [],
                      "enabled": false,
                      "maxAllowed": {},
                      "minAllowed": {}
                    }
                  },
                  "prometheus-pushgateway": {
                    "affinity": {},
                    "automountServiceAccountToken": true,
                    "containerSecurityContext": {},
                    "deploymentAnnotations": {},
                    "enabled": true,
                    "extraArgs": [],
                    "extraContainers": [],
                    "extraInitContainers": [],
                    "extraManifests": [],
                    "extraVars": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {
                      "imagePullSecrets": [],
                      "imageRegistry": ""
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "registry": "",
                      "repository": "quay.io/prometheus/pushgateway",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "ingress": {
                      "className": "",
                      "enabled": false,
                      "extraPaths": [],
                      "path": "/",
                      "pathType": "ImplementationSpecific"
                    },
                    "lifecycle": {},
                    "liveness": {
                      "enabled": true,
                      "probe": {
                        "httpGet": {
                          "path": "/-/healthy",
                          "port": 9091
                        },
                        "initialDelaySeconds": 10,
                        "timeoutSeconds": 10
                      }
                    },
                    "nameOverride": "",
                    "namespaceOverride": "",
                    "networkPolicy": {},
                    "nodeSelector": {},
                    "persistentVolume": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "enabled": false,
                      "existingClaim": "",
                      "mountPath": "/data",
                      "size": "2Gi",
                      "subPath": ""
                    },
                    "persistentVolumeLabels": {},
                    "podAnnotations": {},
                    "podAntiAffinity": "",
                    "podAntiAffinityTopologyKey": "kubernetes.io/hostname",
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "priorityClassName": null,
                    "readiness": {
                      "enabled": true,
                      "probe": {
                        "httpGet": {
                          "path": "/-/ready",
                          "port": 9091
                        },
                        "initialDelaySeconds": 10,
                        "timeoutSeconds": 10
                      }
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "runAsStatefulSet": false,
                    "securityContext": {
                      "fsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "clusterIP": "",
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "port": 9091,
                      "portName": "http",
                      "targetPort": 9091,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "create": true,
                      "name": null
                    },
                    "serviceAccountLabels": {},
                    "serviceAnnotations": {
                      "prometheus.io/probe": "pushgateway"
                    },
                    "serviceLabels": {},
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "basicAuth": {},
                      "bearerTokenFile": "",
                      "enabled": false,
                      "honorLabels": true,
                      "interval": "",
                      "metricRelabelings": [],
                      "namespace": "monitoring",
                      "relabelings": [],
                      "scheme": "",
                      "scrapeTimeout": "",
                      "telemetryPath": "/metrics",
                      "tlsConfig": {}
                    },
                    "strategy": {
                      "type": "Recreate"
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "webConfiguration": {}
                  },
                  "rbac": {
                    "create": true
                  },
                  "ruleFiles": {},
                  "scrapeConfigFiles": [],
                  "server": {
                    "affinity": {},
                    "alertmanagers": [],
                    "baseURL": "",
                    "clusterRoleNameOverride": "",
                    "command": [],
                    "configFromSecret": "",
                    "configMapAnnotations": {},
                    "configMapOverrideName": "",
                    "configPath": "/etc/config/prometheus.yml",
                    "containerSecurityContext": {},
                    "daemonSet": {
                      "annotations": {},
                      "enabled": false,
                      "labels": {}
                    },
                    "defaultFlagsOverride": [],
                    "deploymentAnnotations": {},
                    "dnsConfig": {},
                    "dnsPolicy": "ClusterFirst",
                    "emptyDir": {
                      "medium": "",
                      "sizeLimit": ""
                    },
                    "enableServiceLinks": true,
                    "env": [],
                    "exemplars": {},
                    "extraArgs": {},
                    "extraConfigmapLabels": {},
                    "extraConfigmapMounts": [],
                    "extraFlags": [
                      "web.enable-lifecycle"
                    ],
                    "extraHostPathMounts": [],
                    "extraInitContainers": [],
                    "extraSecretMounts": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {
                      "evaluation_interval": "1m",
                      "scrape_interval": "1m",
                      "scrape_timeout": "10s"
                    },
                    "hostAliases": [],
                    "hostNetwork": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "repository": "quay.io/prometheus/prometheus",
                      "tag": ""
                    },
                    "ingress": {
                      "annotations": {},
                      "enabled": false,
                      "extraLabels": {},
                      "extraPaths": [],
                      "hosts": [],
                      "ingressClassName": "",
                      "path": "/",
                      "pathType": "Prefix",
                      "tls": []
                    },
                    "livenessProbeFailureThreshold": 3,
                    "livenessProbeInitialDelay": 30,
                    "livenessProbePeriodSeconds": 15,
                    "livenessProbeSuccessThreshold": 1,
                    "livenessProbeTimeout": 10,
                    "name": "server",
                    "nodeSelector": {},
                    "otlp": {},
                    "persistentVolume": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "enabled": true,
                      "existingClaim": "",
                      "labels": {},
                      "mountPath": "/data",
                      "size": "8Gi",
                      "statefulSetNameOverride": "",
                      "subPath": ""
                    },
                    "podAnnotations": {},
                    "podAntiAffinity": "",
                    "podAntiAffinityTopologyKey": "kubernetes.io/hostname",
                    "podDisruptionBudget": {
                      "enabled": false
                    },
                    "podLabels": {},
                    "portName": "",
                    "prefixURL": "",
                    "priorityClassName": "",
                    "probeHeaders": [],
                    "probeScheme": "HTTP",
                    "readinessProbeFailureThreshold": 3,
                    "readinessProbeInitialDelay": 30,
                    "readinessProbePeriodSeconds": 5,
                    "readinessProbeSuccessThreshold": 1,
                    "readinessProbeTimeout": 4,
                    "releaseNamespace": false,
                    "remoteRead": [],
                    "remoteWrite": [],
                    "replicaCount": 1,
                    "resources": {},
                    "retention": "15d",
                    "retentionSize": "",
                    "revisionHistoryLimit": 10,
                    "route": {
                      "main": {
                        "additionalRules": [],
                        "annotations": {},
                        "apiVersion": "",
                        "enabled": false,
                        "filters": [],
                        "hostnames": [],
                        "httpsRedirect": false,
                        "kind": "",
                        "labels": {},
                        "matches": [
                          {
                            "path": {
                              "type": "PathPrefix",
                              "value": "/"
                            }
                          }
                        ],
                        "parentRefs": []
                      }
                    },
                    "runtimeClassName": "",
                    "securityContext": {
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "additionalPorts": [],
                      "annotations": {},
                      "clusterIP": "",
                      "enabled": true,
                      "externalIPs": [],
                      "externalTrafficPolicy": "",
                      "gRPC": {
                        "enabled": false,
                        "servicePort": 10901
                      },
                      "labels": {},
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "servicePort": 80,
                      "sessionAffinity": "None",
                      "statefulsetReplica": {
                        "enabled": false,
                        "replica": 0
                      },
                      "type": "ClusterIP"
                    },
                    "sidecarContainers": {},
                    "sidecarTemplateValues": {},
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 30,
                      "periodSeconds": 5,
                      "timeoutSeconds": 10
                    },
                    "statefulSet": {
                      "annotations": {},
                      "enabled": false,
                      "headless": {
                        "annotations": {},
                        "gRPC": {
                          "enabled": false,
                          "servicePort": 10901
                        },
                        "labels": {},
                        "servicePort": 80
                      },
                      "labels": {},
                      "podManagementPolicy": "OrderedReady",
                      "pvcDeleteOnStsDelete": false,
                      "pvcDeleteOnStsScale": false
                    },
                    "storagePath": "",
                    "strategy": {
                      "type": "Recreate"
                    },
                    "tcpSocketProbeEnabled": false,
                    "terminationGracePeriodSeconds": 300,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "tsdb": {},
                    "verticalAutoscaler": {
                      "enabled": false
                    }
                  },
                  "serverFiles": {
                    "alerting_rules.yml": {},
                    "alerts": {},
                    "prometheus.yml": {
                      "rule_files": [
                        "/etc/config/recording_rules.yml",
                        "/etc/config/alerting_rules.yml",
                        "/etc/config/rules",
                        "/etc/config/alerts"
                      ],
                      "scrape_configs": [
                        {
                          "job_name": "prometheus",
                          "static_configs": [
                            {
                              "targets": [
                                "localhost:9090"
                              ]
                            }
                          ]
                        },
                        {
                          "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                          "job_name": "kubernetes-apiservers",
                          "kubernetes_sd_configs": [
                            {
                              "role": "endpoints"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": "default;kubernetes;https",
                              "source_labels": [
                                "__meta_kubernetes_namespace",
                                "__meta_kubernetes_service_name",
                                "__meta_kubernetes_endpoint_port_name"
                              ]
                            }
                          ],
                          "scheme": "https",
                          "tls_config": {
                            "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
                          }
                        },
                        {
                          "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                          "job_name": "kubernetes-nodes",
                          "kubernetes_sd_configs": [
                            {
                              "role": "node"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_node_label_(.+)"
                            },
                            {
                              "replacement": "kubernetes.default.svc:443",
                              "target_label": "__address__"
                            },
                            {
                              "regex": "(.+)",
                              "replacement": "/api/v1/nodes/$1/proxy/metrics",
                              "source_labels": [
                                "__meta_kubernetes_node_name"
                              ],
                              "target_label": "__metrics_path__"
                            }
                          ],
                          "scheme": "https",
                          "tls_config": {
                            "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
                          }
                        },
                        {
                          "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                          "job_name": "kubernetes-nodes-cadvisor",
                          "kubernetes_sd_configs": [
                            {
                              "role": "node"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_node_label_(.+)"
                            },
                            {
                              "replacement": "kubernetes.default.svc:443",
                              "target_label": "__address__"
                            },
                            {
                              "regex": "(.+)",
                              "replacement": "/api/v1/nodes/$1/proxy/metrics/cadvisor",
                              "source_labels": [
                                "__meta_kubernetes_node_name"
                              ],
                              "target_label": "__metrics_path__"
                            }
                          ],
                          "scheme": "https",
                          "tls_config": {
                            "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
                          }
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-service-endpoints",
                          "kubernetes_sd_configs": [
                            {
                              "role": "endpoints"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scrape"
                              ]
                            },
                            {
                              "action": "drop",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+?)(?::\\d+)?;(\\d+)",
                              "replacement": "$1:$2",
                              "source_labels": [
                                "__address__",
                                "__meta_kubernetes_service_annotation_prometheus_io_port"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_service_name"
                              ],
                              "target_label": "service"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-service-endpoints-slow",
                          "kubernetes_sd_configs": [
                            {
                              "role": "endpoints"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+?)(?::\\d+)?;(\\d+)",
                              "replacement": "$1:$2",
                              "source_labels": [
                                "__address__",
                                "__meta_kubernetes_service_annotation_prometheus_io_port"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_service_name"
                              ],
                              "target_label": "service"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ],
                          "scrape_interval": "5m",
                          "scrape_timeout": "30s"
                        },
                        {
                          "honor_labels": true,
                          "job_name": "prometheus-pushgateway",
                          "kubernetes_sd_configs": [
                            {
                              "role": "service"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": "pushgateway",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_probe"
                              ]
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-services",
                          "kubernetes_sd_configs": [
                            {
                              "role": "service"
                            }
                          ],
                          "metrics_path": "/probe",
                          "params": {
                            "module": [
                              "http_2xx"
                            ]
                          },
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_probe"
                              ]
                            },
                            {
                              "source_labels": [
                                "__address__"
                              ],
                              "target_label": "__param_target"
                            },
                            {
                              "replacement": "blackbox",
                              "target_label": "__address__"
                            },
                            {
                              "source_labels": [
                                "__param_target"
                              ],
                              "target_label": "instance"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_label_(.+)"
                            },
                            {
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "source_labels": [
                                "__meta_kubernetes_service_name"
                              ],
                              "target_label": "service"
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-pods",
                          "kubernetes_sd_configs": [
                            {
                              "role": "pod"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scrape"
                              ]
                            },
                            {
                              "action": "drop",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);(([A-Fa-f0-9]{1,4}::?){1,7}[A-Fa-f0-9]{1,4})",
                              "replacement": "[$2]:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);((([0-9]+?)(\\.|$)){4})",
                              "replacement": "$2:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_name"
                              ],
                              "target_label": "pod"
                            },
                            {
                              "action": "drop",
                              "regex": "Pending|Succeeded|Failed|Completed",
                              "source_labels": [
                                "__meta_kubernetes_pod_phase"
                              ]
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-pods-slow",
                          "kubernetes_sd_configs": [
                            {
                              "role": "pod"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);(([A-Fa-f0-9]{1,4}::?){1,7}[A-Fa-f0-9]{1,4})",
                              "replacement": "[$2]:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);((([0-9]+?)(\\.|$)){4})",
                              "replacement": "$2:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_name"
                              ],
                              "target_label": "pod"
                            },
                            {
                              "action": "drop",
                              "regex": "Pending|Succeeded|Failed|Completed",
                              "source_labels": [
                                "__meta_kubernetes_pod_phase"
                              ]
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ],
                          "scrape_interval": "5m",
                          "scrape_timeout": "30s"
                        }
                      ]
                    },
                    "recording_rules.yml": {},
                    "rules": {}
                  },
                  "serviceAccounts": {
                    "server": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-12-18T14:29:21Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.0.2
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DexConfigOperator
            name: dexconfigoperators.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: Dex
            name: dexes.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: FinOpsOperator
            name: finopsoperators.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: KubeStateMetrics
            name: kubestatemetrics.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: OpenCost
            name: opencosts.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: Postgres
            name: postgres.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: Prometheus
            name: prometheuses.dependencies.tenantoperator.stakater.com
            version: v1alpha1
        description: MTO Dependencies Operator packages the charts required by MTO
        displayName: MTO Dependencies Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - Kubernetes
        - OpenShift
        - Helm
        links:
        - name: MTO Dependencies Operator
          url: https://mto-dependencies-operator.domain
        maturity: alpha
        provider:
          name: Stakater
        relatedImages:
        - registry.connect.redhat.com/stakater/mto-dependencies-operator@sha256:d83ff33721b852eb6849638586f84f863654978d3df316ed4d0a24ba3732fdaf
        - public.ecr.aws/aws-observability/aws-sigv4-proxy@sha256:2768495a4e331852aa4f206ad728f5e65b2c8680715ae984d1580ca1029f8438
        - registry.connect.redhat.com/stakater/mto-dependencies-operator-bundle@sha256:963008c21ebbfb4b35a399a4681260aa16f3e403d9f2d5d556e01f39265c2213
        version: 0.0.2
      entries:
      - name: mto-dependencies-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: mto-dependencies-operator
    provider:
      name: Stakater
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ClusterPulse
      provider-url: ""
    name: clusterpulse
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clusterpulse.v0.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.clusterpulse.io/v1alpha1",
                "kind": "ClusterPulse",
                "metadata": {
                  "name": "clusterpulse-prod"
                },
                "spec": {
                  "api": {
                    "enabled": true,
                    "imagePullPolicy": "Always",
                    "logging": {
                      "json": true,
                      "level": "INFO"
                    },
                    "oauth": {
                      "enabled": true,
                      "headerEmail": "X-Forwarded-Email",
                      "headerUser": "X-Forwarded-User"
                    },
                    "rbac": {
                      "auditEnabled": true,
                      "cacheTTL": 0,
                      "defaultDeny": true,
                      "enabled": true,
                      "groupSyncInterval": 300
                    },
                    "replicas": 3,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    },
                    "security": {
                      "allowedOrigins": [
                        "*"
                      ],
                      "sessionExpireMinutes": 1440,
                      "trustedHosts": [
                        "*"
                      ]
                    },
                    "server": {
                      "host": "0.0.0.0",
                      "port": 8080,
                      "reload": false,
                      "workers": 1
                    }
                  },
                  "clusterEngine": {
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    },
                    "timing": {
                      "cacheTTL": "600",
                      "fullScanInterval": "300",
                      "reconciliationInterval": "30"
                    }
                  },
                  "frontend": {
                    "config": {
                      "enableAnonymousAccess": false,
                      "features": {
                        "devTools": false,
                        "mockData": false,
                        "nodeDetails": true,
                        "operatorDetails": true,
                        "registryStatus": true
                      },
                      "refreshInterval": 30000,
                      "theme": {
                        "defaultTheme": "auto"
                      }
                    },
                    "enabled": true,
                    "oauth": {
                      "enabled": true,
                      "image": "quay.io/openshift/origin-oauth-proxy:4.17"
                    },
                    "replicas": 3,
                    "route": {
                      "enabled": true,
                      "tls": {
                        "termination": "reencrypt"
                      }
                    }
                  },
                  "policyEngine": {
                    "batch": {
                      "cacheClearBatchSize": 500,
                      "redisPipelineBatchSize": 1000,
                      "redisScanBatchSize": 100
                    },
                    "cache": {
                      "groupCacheTTL": 300,
                      "policyCacheTTL": 300
                    },
                    "enabled": true,
                    "limits": {
                      "maxPoliciesPerUser": 100,
                      "policyValidationInterval": 300
                    },
                    "logging": {
                      "level": "INFO"
                    },
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "redis": {
                    "enabled": true,
                    "global": {
                      "compatibility": {
                        "openshift": {
                          "adaptSecurityContext": "force"
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "clusterpulse.io/v1alpha1",
                "kind": "ClusterConnection",
                "metadata": {
                  "name": "example-cluster"
                },
                "spec": {
                  "credentialsRef": {
                    "name": "cluster-credentials"
                  },
                  "displayName": "Example Production Cluster",
                  "endpoint": "https://api.example.openshift.com:6443",
                  "monitoring": {
                    "interval": 30,
                    "timeout": 10
                  }
                }
              },
              {
                "apiVersion": "clusterpulse.io/v1alpha1",
                "kind": "MonitorAccessPolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "access": {
                    "effect": "Allow",
                    "enabled": true
                  },
                  "identity": {
                    "priority": 100,
                    "subjects": {
                      "groups": [
                        "default-group"
                      ],
                      "users": [
                        "default-user"
                      ]
                    }
                  },
                  "operations": {
                    "audit": {
                      "logAccess": false,
                      "requireReason": false
                    }
                  },
                  "scope": {
                    "clusters": {
                      "default": "none",
                      "rules": [
                        {
                          "permissions": {
                            "view": true,
                            "viewAuditInfo": true,
                            "viewCosts": true,
                            "viewMetadata": true,
                            "viewMetrics": true,
                            "viewSecrets": true,
                            "viewSensitive": true
                          },
                          "resources": {
                            "namespaces": {
                              "visibility": "all"
                            },
                            "nodes": {
                              "filters": {
                                "hideMasters": false
                              },
                              "visibility": "all"
                            },
                            "operators": {
                              "visibility": "none"
                            },
                            "pods": {
                              "visibility": "all"
                            }
                          },
                          "selector": {
                            "matchPattern": ".*"
                          }
                        }
                      ]
                    }
                  }
                }
              },
              {
                "apiVersion": "clusterpulse.io/v1alpha1",
                "kind": "RegistryConnection",
                "metadata": {
                  "name": "dockerhub",
                  "namespace": "clusterpulse"
                },
                "spec": {
                  "displayName": "Docker Hub",
                  "endpoint": "https://registry-1.docker.io",
                  "healthCheckPaths": [
                    "/v2/"
                  ],
                  "insecure": false,
                  "labels": {
                    "environment": "production",
                    "provider": "dockerhub"
                  },
                  "monitoring": {
                    "checkCatalog": false,
                    "interval": 60,
                    "maxCatalogEntries": 100,
                    "timeout": 10
                  },
                  "skipTLSVerify": false
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: docker.io/clusterpulse/clusterpulse-operator:0.2.1
          createdAt: "2025-11-06T18:07:25Z"
          description: Provides OpenShift cluster health monitoring
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/ClusterPulse/operator
          support: None
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Defines a connection to a monitored Kubernetes/OpenShift
              cluster
            displayName: Cluster Connection
            kind: ClusterConnection
            name: clusterconnections.clusterpulse.io
            version: v1alpha1
          - description: Manages the deployment and configuration of ClusterPulse
              monitoring platform
            displayName: ClusterPulse Instance
            kind: ClusterPulse
            name: clusterpulses.charts.clusterpulse.io
            version: v1alpha1
          - description: Defines fine-grained access control policies for cluster
              monitoring
            displayName: Monitor Access Policy
            kind: MonitorAccessPolicy
            name: monitoraccesspolicies.clusterpulse.io
            version: v1alpha1
          - description: Defines a connection to a container registry for monitoring
            displayName: Registry Connection
            kind: RegistryConnection
            name: registryconnections.clusterpulse.io
            version: v1alpha1
        description: |
          ## About ClusterPulse
          ClusterPulse is a comprehensive multi-cluster monitoring and management platform designed for OpenShift environments. It provides centralized visibility, policy-based access control, and real-time monitoring across multiple clusters through a unified dashboard. For more information, visit [https://github.com/ClusterPulse/operator](https://github.com/ClusterPulse/operator).

          ## Features and Capabilities
          - **Multi-Cluster Monitoring**: Connect and monitor multiple OpenShift/Kubernetes clusters from a single interface
          - **Policy-Based Access Control**: Fine-grained access policies using MonitorAccessPolicy CRDs
          - **Real-Time Metrics**: Live cluster health, node status, and resource utilization tracking
          - **Registry Monitoring**: Monitor connected container registries
          - **OAuth Integration**: Seamless OpenShift OAuth integration for authentication
          - **Redis-Backed Storage**: Scalable data storage using Redis for metrics and state
        displayName: ClusterPulse
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - clusterpulse
        links:
        - name: ClusterPulse
          url: https://github.com/ClusterPulse/operator
        maintainers:
        - email: asmoore@redhat.com
          name: Asa Moore
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: ClusterPulse
        relatedImages:
        - docker.io/clusterpulse/clusterpulse-operator:0.2.1
        - quay.io/community-operator-pipeline-prod/clusterpulse:0.2.1
        version: 0.2.1
      entries:
      - name: clusterpulse.v0.2.1
        version: 0.2.1
      - name: clusterpulse.v0.2.0
        version: 0.2.0
      - name: clusterpulse.v0.1.1
        version: 0.1.1
      name: fast-v0
    defaultChannel: fast-v0
    packageName: clusterpulse
    provider:
      name: ClusterPulse
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-apigateway-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-apigateway-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "Resource",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "RestAPI",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "Stage",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "VPCLink",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/apigateway-controller:1.4.0
          createdAt: "2025-11-29T04:47:28Z"
          description: AWS API Gateway controller is a service controller for managing
            API Gateway resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIIntegrationResponse represents the state of an AWS apigateway
              APIIntegrationResponse resource.
            displayName: APIIntegrationResponse
            kind: APIIntegrationResponse
            name: apiintegrationresponses.apigateway.services.k8s.aws
            version: v1alpha1
          - description: APIKey represents the state of an AWS apigateway APIKey resource.
            displayName: APIKey
            kind: APIKey
            name: apikeys.apigateway.services.k8s.aws
            version: v1alpha1
          - description: APIMethodResponse represents the state of an AWS apigateway
              APIMethodResponse resource.
            displayName: APIMethodResponse
            kind: APIMethodResponse
            name: apimethodresponses.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Authorizer represents the state of an AWS apigateway Authorizer
              resource.
            displayName: Authorizer
            kind: Authorizer
            name: authorizers.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Deployment represents the state of an AWS apigateway Deployment
              resource.
            displayName: Deployment
            kind: Deployment
            name: deployments.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Integration represents the state of an AWS apigateway Integration
              resource.
            displayName: Integration
            kind: Integration
            name: integrations.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Method represents the state of an AWS apigateway Method resource.
            displayName: Method
            kind: Method
            name: methods.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Resource represents the state of an AWS apigateway Resource
              resource.
            displayName: Resource
            kind: Resource
            name: resources.apigateway.services.k8s.aws
            version: v1alpha1
          - description: RestAPI represents the state of an AWS apigateway RestAPI
              resource.
            displayName: RestAPI
            kind: RestAPI
            name: restapis.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Stage represents the state of an AWS apigateway Stage resource.
            displayName: Stage
            kind: Stage
            name: stages.apigateway.services.k8s.aws
            version: v1alpha1
          - description: VPCLink represents the state of an AWS apigateway VPCLink
              resource.
            displayName: VPCLink
            kind: VPCLink
            name: vpclinks.apigateway.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon API Gateway resources in AWS from within your Kubernetes cluster.

          **About Amazon API Gateway**

          Amazon API Gateway is an AWS service for creating, publishing, maintaining, monitoring, and securing REST, HTTP, and WebSocket APIs at any scale. API developers can create APIs that access AWS or other web services, as well as data stored in the AWS Cloud. As an API Gateway API developer, you can create APIs for use in your own client applications. Or you can make your APIs available to third-party app developers.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon API Gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apigateway
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon API Gateway Developer Resources
          url: https://aws.amazon.com/api-gateway/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: apigateway maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/apigateway-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-apigateway-controller@sha256:89027e21575cdcac32288b71085977492290e54a3e061b63b6ee6d4bf60cfd6c
        version: 1.4.0
      entries:
      - name: ack-apigateway-controller.v1.4.0
        version: 1.4.0
      - name: ack-apigateway-controller.v1.3.2
        version: 1.3.2
      - name: ack-apigateway-controller.v1.3.1
        version: 1.3.1
      - name: ack-apigateway-controller.v1.3.0
        version: 1.3.0
      - name: ack-apigateway-controller.v1.2.5
        version: 1.2.5
      - name: ack-apigateway-controller.v1.2.4
        version: 1.2.4
      - name: ack-apigateway-controller.v1.2.3
        version: 1.2.3
      - name: ack-apigateway-controller.v1.2.2
        version: 1.2.2
      - name: ack-apigateway-controller.v1.2.1
        version: 1.2.1
      - name: ack-apigateway-controller.v1.1.0
        version: 1.1.0
      - name: ack-apigateway-controller.v1.0.6
        version: 1.0.6
      - name: ack-apigateway-controller.v1.0.5
        version: 1.0.5
      - name: ack-apigateway-controller.v1.0.4
        version: 1.0.4
      - name: ack-apigateway-controller.v1.0.2
        version: 1.0.2
      - name: ack-apigateway-controller.v1.0.1
        version: 1.0.1
      - name: ack-apigateway-controller.v1.0.0
        version: 1.0.0
      - name: ack-apigateway-controller.v0.0.3
        version: 0.0.3
      - name: ack-apigateway-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-apigateway-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: servicemeshoperator3
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: servicemeshoperator3.v3.0.0-tp.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.24.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.24.1"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh-tech-preview/istio-rhel9-operator@sha256:f5dfe495ba92ecb880485b66cfafbf6451f8142b8e0d5fd7f29db94171c51336
          createdAt: "2024-12-12T10:28:38Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1alpha1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1alpha1
          - description: IstioRevisionTag references a Istio or IstioRevision object
              and serves as an alias for sidecar injection.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1alpha1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-proxyv2-rhel9@sha256:c21481d6dae58b82dac93b1b47b9d9f53a30617fa9d930a0b5d075620cffa74b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0848d89e9f94be04f17beeee75807d7fd11102737e6483ee674f2cf3ae28f213
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-must-gather-rhel9@sha256:e3978aecaafe2678355e21a7303f8620f53d8b774f6592f10527c15bae957224
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-operator-bundle@sha256:f596dc9323da89f5e45e71192f0fa698b7bb29b8205eaa0fc1659d68fa7401f4
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-proxyv2-rhel9@sha256:cbd6bc47341ab8618609f89d063552e17232541c727429855c01deab73e4d06c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-rhel9-operator@sha256:f5dfe495ba92ecb880485b66cfafbf6451f8142b8e0d5fd7f29db94171c51336
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-must-gather-rhel9@sha256:2bf3704ba8d5945973ccf6bd13418457e929836352acf0ea6a47976ffa246616
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-pilot-rhel9@sha256:376f64eab0ebeb06035983a60d1e7647c5d41354f31a49cb34f4deb7b6708e3e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-pilot-rhel9@sha256:ea9372fabe06cd8e65ea7b4567ce3c8fbddd9d673dc34a12743fd95c548059d1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-cni-rhel9@sha256:d0ab36246c556249b6d67346eb0c72ebd22483a6502caa0fc75112a8d327b053
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-cni-rhel9@sha256:f16cd8a29ddcbb3de77cbfcf7e1da78e42cc0c1c502132d477a01c52689cdf23
        version: 3.0.0-tp.2
      entries:
      - name: servicemeshoperator3.v3.0.0-tp.2
        version: 3.0.0-tp.2
      - name: servicemeshoperator3.v3.0.0-tp.1
        version: 3.0.0-tp.1
      name: candidates
    - currentCSV: servicemeshoperator3.v3.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
          createdAt: "2025-11-26T08:45:22Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        version: 3.2.1
      entries:
      - name: servicemeshoperator3.v3.2.1
        version: 3.2.1
      - name: servicemeshoperator3.v3.2.0
        version: 3.2.0
      - name: servicemeshoperator3.v3.1.4
        version: 3.1.4
      - name: servicemeshoperator3.v3.1.3
        version: 3.1.3
      - name: servicemeshoperator3.v3.1.2
        version: 3.1.2
      - name: servicemeshoperator3.v3.1.1
        version: 3.1.1
      - name: servicemeshoperator3.v3.1.0
        version: 3.1.0
      - name: servicemeshoperator3.v3.0.7
        version: 3.0.7
      - name: servicemeshoperator3.v3.0.6
        version: 3.0.6
      - name: servicemeshoperator3.v3.0.5
        version: 3.0.5
      - name: servicemeshoperator3.v3.0.4
        version: 3.0.4
      - name: servicemeshoperator3.v3.0.3
        version: 3.0.3
      - name: servicemeshoperator3.v3.0.2
        version: 3.0.2
      - name: servicemeshoperator3.v3.0.1
        version: 3.0.1
      - name: servicemeshoperator3.v3.0.0
        version: 3.0.0
      name: stable
    - currentCSV: servicemeshoperator3.v3.0.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.24.6"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.24.6"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:e9d8d0b3b0602ffc570843ce78e5445a4fb540b57a2d066460fe77f1ace57ebd
          createdAt: "2025-10-24T06:24:59Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:6cdd4499ffcf0843dc9cf68a15654a995514e3f97418e6aa06bc50271305dcac
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:e9d8d0b3b0602ffc570843ce78e5445a4fb540b57a2d066460fe77f1ace57ebd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        version: 3.0.7
      entries:
      - name: servicemeshoperator3.v3.0.7
        version: 3.0.7
      - name: servicemeshoperator3.v3.0.6
        version: 3.0.6
      - name: servicemeshoperator3.v3.0.5
        version: 3.0.5
      - name: servicemeshoperator3.v3.0.4
        version: 3.0.4
      - name: servicemeshoperator3.v3.0.3
        version: 3.0.3
      - name: servicemeshoperator3.v3.0.2
        version: 3.0.2
      - name: servicemeshoperator3.v3.0.1
        version: 3.0.1
      - name: servicemeshoperator3.v3.0.0
        version: 3.0.0
      name: stable-3.0
    - currentCSV: servicemeshoperator3.v3.1.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.26.6"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.26.6"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:a60cff87a152304bc961ce7af4cc3f650998652640ef8599c50aeae2a3c15391
          createdAt: "2025-10-24T11:25:36Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:459720a287d839ad70886879d8089d821a2f98dcc32a5db5732ecf18a05b3fa6
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:a60cff87a152304bc961ce7af4cc3f650998652640ef8599c50aeae2a3c15391
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        version: 3.1.4
      entries:
      - name: servicemeshoperator3.v3.1.4
        version: 3.1.4
      - name: servicemeshoperator3.v3.1.3
        version: 3.1.3
      - name: servicemeshoperator3.v3.1.2
        version: 3.1.2
      - name: servicemeshoperator3.v3.1.1
        version: 3.1.1
      - name: servicemeshoperator3.v3.1.0
        version: 3.1.0
      name: stable-3.1
    - currentCSV: servicemeshoperator3.v3.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
          createdAt: "2025-11-26T08:45:22Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        version: 3.2.1
      entries:
      - name: servicemeshoperator3.v3.2.1
        version: 3.2.1
      - name: servicemeshoperator3.v3.2.0
        version: 3.2.0
      name: stable-3.2
    defaultChannel: stable
    packageName: servicemeshoperator3
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Thales Group
      provider-url: https://cpl.thalesgroup.com/data-protection
    name: cte-k8s-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cte-k8s-operator.v1.7.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cte-k8s-operator.csi.cte.cpl.thalesgroup.com/v1",
                "kind": "CteK8sOperator",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cte-k8s-operator"
                  },
                  "name": "ctek8soperator-sample"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-25T21:01:30Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CteK8sOperator is the Schema for the ctek8soperators API
            displayName: Cte K8s Operator
            kind: CteK8sOperator
            name: ctek8soperators.cte-k8s-operator.csi.cte.cpl.thalesgroup.com
            version: v1
        description: |-
          # Kubernetes Operator to deploy CTE for Kubernetes on an OCP/K8s Cluster.
          This Operator deploys CTE for Kubernetes on the OCP/K8s Cluster.

          ## About this operator

          It is a GO based operator that manages the deployment, upgrade and
          deletion of the CTE for Kubernetes on all the nodes of the Cluster on
          which it is installed.

          ## Prerequisites

          Applicable only on OCP cluster
            For an OCP cluster the operator requires a SecurityContextConstraints (SCC)
            to be created before installation. To create the SecurityContextConstraints
            you can use a definition provided by the deployment scripts at
            https://github.com/thalescpl-io/ciphertrust-transparent-encryption-kubernetes

            Look for cte-csi-scc.yaml file in deploy/kubernetes/X.Y.Z/operator-deploy/
            Where X.Y.Z is the last released version of the deploy scripts.

          For more information refer to the guide at:
            https://thalesdocs.com/ctp/cte-con/cte-k8s/latest/cte-4-k8s/index.html
        displayName: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Encryption
        - Data Protection
        - Security
        - Kubernetes
        - Openshift
        links:
        - name: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          url: https://cpl.thalesgroup.com/encryption/ciphertrust-transparent-data-encryption-kubernetes
        maintainers:
        - email: technical.support.DIS@thalesgroup.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Thales Group
          url: https://cpl.thalesgroup.com/data-protection
        relatedImages:
        - registry.connect.redhat.com/thalescpl/ciphertrust-transparent-encryption-kubernetes-operator-bundle@sha256:129f3a9f1fe96aafbfa68eb1524bf912ebc4167ed276e87a88fad30b60a5b3fc
        - docker.io/thalesciphertrust/ciphertrust-transparent-encryption-kubernetes-operator@sha256:d30ff765703db69846f0302cb06aa5315641796d56342a9be4549fb171414871
        version: 1.7.8
      entries:
      - name: cte-k8s-operator.v1.7.8
        version: 1.7.8
      name: candidate
    - currentCSV: cte-k8s-operator.v1.7.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cte-k8s-operator.csi.cte.cpl.thalesgroup.com/v1",
                "kind": "CteK8sOperator",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cte-k8s-operator"
                  },
                  "name": "ctek8soperator-sample"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-25T21:01:30Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CteK8sOperator is the Schema for the ctek8soperators API
            displayName: Cte K8s Operator
            kind: CteK8sOperator
            name: ctek8soperators.cte-k8s-operator.csi.cte.cpl.thalesgroup.com
            version: v1
        description: |-
          # Kubernetes Operator to deploy CTE for Kubernetes on an OCP/K8s Cluster.
          This Operator deploys CTE for Kubernetes on the OCP/K8s Cluster.

          ## About this operator

          It is a GO based operator that manages the deployment, upgrade and
          deletion of the CTE for Kubernetes on all the nodes of the Cluster on
          which it is installed.

          ## Prerequisites

          Applicable only on OCP cluster
            For an OCP cluster the operator requires a SecurityContextConstraints (SCC)
            to be created before installation. To create the SecurityContextConstraints
            you can use a definition provided by the deployment scripts at
            https://github.com/thalescpl-io/ciphertrust-transparent-encryption-kubernetes

            Look for cte-csi-scc.yaml file in deploy/kubernetes/X.Y.Z/operator-deploy/
            Where X.Y.Z is the last released version of the deploy scripts.

          For more information refer to the guide at:
            https://thalesdocs.com/ctp/cte-con/cte-k8s/latest/cte-4-k8s/index.html
        displayName: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Encryption
        - Data Protection
        - Security
        - Kubernetes
        - Openshift
        links:
        - name: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          url: https://cpl.thalesgroup.com/encryption/ciphertrust-transparent-data-encryption-kubernetes
        maintainers:
        - email: technical.support.DIS@thalesgroup.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Thales Group
          url: https://cpl.thalesgroup.com/data-protection
        relatedImages:
        - docker.io/thalesciphertrust/ciphertrust-transparent-encryption-kubernetes-operator@sha256:d30ff765703db69846f0302cb06aa5315641796d56342a9be4549fb171414871
        - registry.connect.redhat.com/thalescpl/ciphertrust-transparent-encryption-kubernetes-operator-bundle@sha256:129f3a9f1fe96aafbfa68eb1524bf912ebc4167ed276e87a88fad30b60a5b3fc
        version: 1.7.8
      entries:
      - name: cte-k8s-operator.v1.7.8
        version: 1.7.8
      name: stable
    defaultChannel: stable
    packageName: cte-k8s-operator
    provider:
      name: Thales Group
      url: https://cpl.thalesgroup.com/data-protection
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ssm-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ssm-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ssm-controller:1.2.0
          createdAt: "2025-11-29T04:01:51Z"
          description: AWS SSM controller is a service controller for managing SSM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Document represents the state of an AWS ssm Document resource.
            displayName: Document
            kind: Document
            name: documents.ssm.services.k8s.aws
            version: v1alpha1
          - description: PatchBaseline represents the state of an AWS ssm PatchBaseline
              resource.
            displayName: PatchBaseline
            kind: PatchBaseline
            name: patchbaselines.ssm.services.k8s.aws
            version: v1alpha1
          - description: ResourceDataSync represents the state of an AWS ssm ResourceDataSync
              resource.
            displayName: ResourceDataSync
            kind: ResourceDataSync
            name: resourcedatasyncs.ssm.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon SSM resources in AWS from within your Kubernetes cluster.

          **About Amazon SSM**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon SSM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ssm
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SSM Developer Resources
          url: https://aws.amazon.com/SSM/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ssm maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ssm-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ssm-controller@sha256:0566dc14268fb3a49628364838fe8fd3548facbf97b1fea3dc23e8282ba9400f
        version: 1.2.0
      entries:
      - name: ack-ssm-controller.v1.2.0
        version: 1.2.0
      - name: ack-ssm-controller.v1.1.2
        version: 1.1.2
      - name: ack-ssm-controller.v1.1.1
        version: 1.1.1
      - name: ack-ssm-controller.v1.1.0
        version: 1.1.0
      - name: ack-ssm-controller.v1.0.12
        version: 1.0.12
      - name: ack-ssm-controller.v1.0.10
        version: 1.0.10
      - name: ack-ssm-controller.v1.0.9
        version: 1.0.9
      - name: ack-ssm-controller.v1.0.8
        version: 1.0.8
      - name: ack-ssm-controller.v1.0.7
        version: 1.0.7
      - name: ack-ssm-controller.v1.0.6
        version: 1.0.6
      - name: ack-ssm-controller.v1.0.5
        version: 1.0.5
      - name: ack-ssm-controller.v1.0.4
        version: 1.0.4
      - name: ack-ssm-controller.v1.0.3
        version: 1.0.3
      - name: ack-ssm-controller.v1.0.2
        version: 1.0.2
      - name: ack-ssm-controller.v1.0.1
        version: 1.0.1
      - name: ack-ssm-controller.v1.0.0
        version: 1.0.0
      - name: ack-ssm-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-ssm-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: istio-workspace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: istio-workspace-operator.v0.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "workspace.maistra.io/v1alpha1",
                "kind": "Session",
                "metadata": {
                  "name": "session-sample"
                },
                "spec": {
                  "ref": [
                    {
                      "args": {
                        "image": "quay.io/maistra-dev/istio-workspace-test:latest"
                      },
                      "name": "ratings-v1",
                      "strategy": "prepared-image"
                    }
                  ],
                  "route": {
                    "name": "x-workspace-route",
                    "type": "header",
                    "value": "feature-x"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: quay.io/maistra/istio-workspace:v0.5.3
          createdAt: "2022-11-16T13:50:35Z"
          description: Safely develop and test on any Kubernetes cluster without affecting
            others.
          operators.operatorframework.io/builder: operator-sdk-v1.22.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/maistra/istio-workspace
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Session controls the creation of the specialized hidden routes.
            displayName: Session
            kind: Session
            name: sessions.workspace.maistra.io
            version: v1alpha1
        description: "Istio Workspace enables developers to:\n\n * run one or more
          services locally during development but make it appear like it would be
          developed in the actual cluster\n   * this way you can use your favourite
          development tools\n   * have instant feedback loop\n   * don't make your
          machine overheating trying to run the whole cluster locally\n * safely preview
          incoming changes in pull requests without affecting regular users \n * have
          confidence in testing or troubleshooting your services directly in the cluster\n\nIstio
          Workspace supports testing on multi-user environment in an unobtrusive way.\nIt
          doesn’t really matter if it is QE cluster or actual production. We give
          you confidence that your changes won’t blow up the cluster, and your users
          won’t even notice a glitch.\n\nYou will need [Kubernetes](https://k8s.io)
          or [Openshift](https://openshift.com) cluster with  [Istio](https://istio.io/)
          installed. \n\nYou can read more about our vision on [Red Hat Developer’s
          blog](https://developers.redhat.com/blog/2020/07/14/developing-and-testing-on-production-with-kubernetes-and-istio-workspace/)
          or ...\n\n## See it in action!\n\n[![https://youtu.be/XTNVadUzMCc](https://img.youtube.com/vi/XTNVadUzMCc/hqdefault.jpg)](https://youtu.be/XTNVadUzMCc)\n\nWatch
          demo: [\"How to develop on production: An introduction to Istio-Workspaces\"](https://youtu.be/XTNVadUzMCc).\n\n##
          Documentation\n\nMore details can be found on our [documentation page](https://istio-workspace-docs.netlify.com/).\n"
        displayName: Istio Workspace
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - telepresence
        links:
        - name: Istio Workspace Documentation
          url: https://istio-workspace-docs.netlify.com/
        - name: How to install CLI tool
          url: https://github.com/maistra/istio-workspace#install-in-two-easy-steps
        maintainers:
        - email: aslak@redhat.com
          name: Aslak Knutsen
        - email: bartosz@redhat.com
          name: Bartosz Majsak
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/istio-workspace-operator@sha256:7a581f048aee64701b23f1a0e94d77f2e6932ee8229fd46b1635d8df6994e174
        - quay.io/maistra/istio-workspace:v0.5.3
        version: 0.5.3
      entries:
      - name: istio-workspace-operator.v0.5.3
        version: 0.5.3
      - name: istio-workspace-operator.v0.5.2
        version: 0.5.2
      - name: istio-workspace-operator.v0.5.1
        version: 0.5.1
      - name: istio-workspace-operator.v0.5.0
        version: 0.5.0
      - name: istio-workspace-operator.v0.4.0
        version: 0.4.0
      - name: istio-workspace-operator.v0.3.0
        version: 0.3.0
      - name: istio-workspace-operator.v0.2.0
        version: 0.2.0
      - name: istio-workspace-operator.v0.1.0
        version: 0.1.0
      - name: istio-workspace-operator.v0.0.10
        version: 0.0.10
      - name: istio-workspace-operator.v0.0.9
        version: 0.0.9
      - name: istio-workspace-operator.v0.0.8
        version: 0.0.8
      - name: istio-workspace-operator.v0.0.7
        version: 0.0.7
      - name: istio-workspace-operator.v0.0.6
        version: 0.0.6
      name: alpha
    defaultChannel: alpha
    packageName: istio-workspace-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: resource-locker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: resource-locker-operator.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "ResourceLocker",
                "metadata": {
                  "name": "combined"
                },
                "spec": {
                  "patches": [
                    {
                      "id": "patch1",
                      "patchTemplate": "metadata:\n  annotations:\n    {{ (index . 0).metadata.name }}: {{ (index . 1).metadata.name }}\n",
                      "patchType": "application/strategic-merge-patch+json",
                      "sourceObjectRefs": [
                        {
                          "apiVersion": "v1",
                          "kind": "Namespace",
                          "name": "resource-locker-test"
                        },
                        {
                          "apiVersion": "v1",
                          "kind": "ServiceAccount",
                          "name": "default",
                          "namespace": "resource-locker-test"
                        }
                      ],
                      "targetObjectRef": {
                        "apiVersion": "v1",
                        "kind": "ServiceAccount",
                        "name": "test",
                        "namespace": "resource-locker-test"
                      }
                    },
                    {
                      "id": "patch2",
                      "patchTemplate": "metadata:\n  annotations:\n    {{ (index . 0) }}: {{ (index . 1) }}\n",
                      "patchType": "application/strategic-merge-patch+json",
                      "sourceObjectRefs": [
                        {
                          "apiVersion": "v1",
                          "fieldPath": "$.metadata.uid",
                          "kind": "Namespace",
                          "name": "resource-locker-test"
                        },
                        {
                          "apiVersion": "v1",
                          "fieldPath": "$.metadata.uid",
                          "kind": "ServiceAccount",
                          "name": "default",
                          "namespace": "resource-locker-test"
                        }
                      ],
                      "targetObjectRef": {
                        "apiVersion": "v1",
                        "kind": "ServiceAccount",
                        "name": "test",
                        "namespace": "resource-locker-test"
                      }
                    }
                  ],
                  "resources": [
                    {
                      "object": {
                        "apiVersion": "networking.k8s.io/v1",
                        "kind": "NetworkPolicy",
                        "metadata": {
                          "name": "allow-from-same-namespace",
                          "namespace": "resource-locker-test"
                        },
                        "spec": {
                          "ingress": [
                            {
                              "from": [
                                {
                                  "podSelector": {}
                                }
                              ]
                            }
                          ],
                          "podSelector": {}
                        }
                      }
                    },
                    {
                      "object": {
                        "apiVersion": "networking.k8s.io/v1",
                        "kind": "NetworkPolicy",
                        "metadata": {
                          "name": "allow-from-default-namespace",
                          "namespace": "resource-locker-test"
                        },
                        "spec": {
                          "ingress": [
                            {
                              "from": [
                                {
                                  "namespaceSelector": {
                                    "matchLabels": {
                                      "name": "default"
                                    }
                                  }
                                }
                              ]
                            }
                          ],
                          "podSelector": {}
                        }
                      }
                    }
                  ],
                  "serviceAccountRef": {
                    "name": "default"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/resource-locker-operator@sha256:2176db02f561c24012c5179495c89c3819500dff21e89a62052d465eb3314b44
          createdAt: "2021-11-30T19:38:40Z"
          description: This operator provides a facility to lock resources and / or
            patches into the state described by its custom resource preventing any
            drifts.
          operatorframework.io/suggested-namespace: resource-locker-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/resource-locker-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ResourceLocker Represents the intetion to create and enforce
              a set of resources and/or patches.
            displayName: Resource Locker
            kind: ResourceLocker
            name: resourcelockers.redhatcop.redhat.io
            version: v1alpha1
        description: |
          The resource locker operator allows you to specify a set of configurations that the operator will "keep in place" (lock) preventing any drifts.
          Two types of configurations may be specified:
          * Resources. This will instruct the operator to create and enforce the specified resource. In this case the operator "owns" the created resources.
          * Patches to resources. This will instruct the operator to patch- and enforce the change on- a pre-existing resource. In this case the operator does not "own" the resource.
          Locked resources are defined with the `ResourceLocker` CRD. Here is the high-level structure of this CRD:
          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: ResourceLocker
          metadata:
            name: test-simple-resource
          spec:
            resources:
            - object:
                apiVersion: v1
            ...
            patches:
            - targetObjectRef:
              ...
              patchTemplate: |
                metadata:
                  annotations:
                    ciao: hello
            ...
            serviceAccountRef:
              name: default
          ```
          It contains:
          * `resources`: representing an array of resources
          * `patches`: representing an array of patches
          * `serviceAccountRef`: a reference to a service account defined in the same namespace as the ResourceLocker CR, that will be used to create the resources and apply the patches. If not specified the service account will be defaulted to: `default`
          For each ResourceLocker a manager is dynamically allocated. For each resource and patch a controller with the needed watches is created and associated with the previously created manager.
          **Note**: creating a `ResourceLocker` CR will not work without due preparation (of the service account in particular). Follow these [instructions](https://github.com/redhat-cop/resource-locker-operator/blob/master/EXAMPLES.md) for a step by step walkthrough of the needed prerequisites to make this operator work.
        displayName: Resource Locker Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - resource_management
        - enforcing
        - patches
        - gitops
        links:
        - name: Resource Locker Operator
          url: https://github.com/redhat-cop/resource-locker-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/resource-locker-operator:latest
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/resource-locker-operator@sha256:9cc08639be2af4b72a9b816420d87dfa290a168fb83edc947a04b3e06cdb675b
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/resource-locker-operator@sha256:2176db02f561c24012c5179495c89c3819500dff21e89a62052d465eb3314b44
        version: 1.1.3
      entries:
      - name: resource-locker-operator.v1.1.3
        version: 1.1.3
      - name: resource-locker-operator.v1.1.2
        version: 1.1.2
      - name: resource-locker-operator.v1.1.1
        version: 1.1.1
      - name: resource-locker-operator.v1.1.0
        version: 1.1.0
      - name: resource-locker-operator.v1.0.9
        version: 1.0.9
      name: alpha
    defaultChannel: alpha
    packageName: resource-locker-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: SAP LinuxLab - Red Hat
      provider-url: https://github.com/sap-linuxlab
    name: sap-data-intelligence-observer-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: observer-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sdi.sap-redhat.io/v1alpha1",
                "kind": "SDIObserver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "observer-operator",
                    "app.kubernetes.io/instance": "sdiobserver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sdiobserver",
                    "app.kubernetes.io/part-of": "observer-operator"
                  },
                  "name": "sdiobserver-sample"
                },
                "spec": {
                  "manageSDINodeConfig": true,
                  "sdiNamespace": "sdi",
                  "sdiVSystemRoute": {
                    "managementState": "Managed"
                  },
                  "slcbNamespace": "sap-slcbridge",
                  "slcbRoute": {
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: quay.io/redhat-sap-cop/sdi-observer-operator:0.1.5
          description: Configure and enable SAP Data Intelligence to run on OpenShift
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SDIObserver is the Schema for the sdiobservers API
            displayName: SDIObserver
            kind: SDIObserver
            name: sdiobservers.sdi.sap-redhat.io
            version: v1alpha1
        description: Operator for monitoring SAP Data Intelligence (SDI) namespace
          and modifying objects in there that enable running of SDI on top of OpenShift.
          The observer shall be run in a dedicated namespace. It must be deployed
          before the SDI installation is started. This is the prerequisite for the
          successful installation of the SDI on OpenShift. Please refer to https://access.redhat.com/articles/5100521
          for detailed information.
        displayName: SAP Data Intelligence 3 - Observer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sdi
        - sap data intelligence
        links:
        - name: SAP Data Intelligence 3 - Observer Operator
          url: https://github.com/redhat-sap/sap-data-intelligence/tree/master/observer-operator
        maintainers:
        - email: mjiao@redhat.com
          name: Manjun Jiao
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: SAP LinuxLab - Red Hat
          url: https://github.com/sap-linuxlab
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/openshift-community-operators/sap-data-intelligence-observer-operator@sha256:5217360266f62fc8ba087fbc730074c14aacf62dbd124fdc3aa46650d51a243b
        - quay.io/redhat-sap-cop/sdi-observer-operator:0.1.5
        version: 0.0.3
      entries:
      - name: observer-operator.v0.0.3
        version: 0.0.3
      name: alpha
    - currentCSV: observer-operator.v1.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sdi.sap-redhat.io/v1alpha1",
                "kind": "SDIObserver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/part-of": "observer-operator"
                  },
                  "name": "sdiobserver-sample",
                  "namespace": "sdi-observer"
                },
                "spec": {
                  "manageSDINodeConfig": true,
                  "sdiNamespace": "sdi",
                  "sdiVSystemRoute": {
                    "managementState": "Managed"
                  },
                  "slcbNamespace": "sap-slcbridge",
                  "slcbRoute": {
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: quay.io/redhat-sap-cop/sdi-observer-operator:0.1.32
          createdAt: "20240726"
          description: Configure and enable SAP Data Intelligence 3 to run on OpenShift
            4
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/mjiao/sap-data-intelligence/tree/master/observer-operator
          support: RedHat-SAPLinuxLab
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SDIObserver is the Schema for the sdiobservers API
            displayName: SDIObserver
            kind: SDIObserver
            name: sdiobservers.sdi.sap-redhat.io
            version: v1alpha1
        description: Operator for monitoring SAP Data Intelligence (SDI) namespace
          and modifying objects in there that enable running of SDI on top of OpenShift.
          It must be deployed before the SDI installation is started. This is the
          prerequisite for the successful installation of the SDI on OpenShift. Please
          refer to https://access.redhat.com/articles/7042265#ocp-install-sdi-observer-operator
          for detailed information.
        displayName: SAP Data Intelligence 3 - Observer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sdi
        - sap data intelligence
        links:
        - name: SAP Data Intelligence 3 - Observer Operator
          url: https://github.com/redhat-sap/sap-data-intelligence/tree/master/observer-operator
        maintainers:
        - email: mjiao@redhat.com
          name: Manjun Jiao
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: SAP LinuxLab - Red Hat
          url: https://github.com/sap-linuxlab
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/community-operator-pipeline-prod/sap-data-intelligence-observer-operator@sha256:79aa33cb7e4b570fc9c962fc6bd59708c7e28e81e2b188608780fa085db91442
        - quay.io/redhat-sap-cop/sdi-observer-operator:0.1.32
        version: 1.0.9
      entries:
      - name: observer-operator.v1.0.9
        version: 1.0.9
      - name: observer-operator.v1.0.8
        version: 1.0.8
      - name: observer-operator.v1.0.7
        version: 1.0.7
      - name: observer-operator.v1.0.6
        version: 1.0.6
      - name: observer-operator.v1.0.5
        version: 1.0.5
      - name: observer-operator.v1.0.4
        version: 1.0.4
      - name: observer-operator.v1.0.3
        version: 1.0.3
      - name: observer-operator.v1.0.2
        version: 1.0.2
      - name: observer-operator.v1.0.1
        version: 1.0.1
      - name: observer-operator.v0.0.3
        version: 0.0.3
      name: stable
    defaultChannel: stable
    packageName: sap-data-intelligence-observer-operator
    provider:
      name: SAP LinuxLab - Red Hat
      url: https://github.com/sap-linuxlab
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-pipelines-operator-rh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-pipelines-operator-rh.v1.20.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    },
                    {
                      "name": "legacyPipelineRbac",
                      "value": "true"
                    },
                    {
                      "name": "createCABundleConfigMaps",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPruner",
                "metadata": {
                  "name": "pruner"
                },
                "spec": {
                  "disabled": true,
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.19.0 <1.20.2'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev","tektonpruners.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pruner
            displayName: Tekton Pruner
            kind: TektonPruner
            name: tektonpruners.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v1.3.2
          - Tekton Triggers: v0.33.0
          - Pipelines as Code: v0.37.4
          - Tekton Chains: v0.25.1
          - Tekton Hub (tech-preview): v1.22.7
          - Tekton Results (tech-preview): v0.16.0
          - Manual Approval Gate (tech-preview): v0.6.0
          - Tekton Pruner (tech-preview): v0.2.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.20/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:cbff2c3468f239276802e0a3a98301386ae7a98b183c4ec5b83f4b30ccde56cf
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:a6da589eb9c40c62e06c64f3d34578053328bef388325e8927872cd75c4ebe29
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:d941644bf6672ce0e6151f6ae7f775ba173795baf4a79eb8bba1d2b67ea359d5
        - registry.redhat.io/ubi9/openjdk-17@sha256:555c8bcd2596637befd1a6da4aa949c5a2640cf66e09c2dfb932afe37e39095e
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:0e9d28f1ef4f3348349489bf813c20e249a10d2735c409dccf8067e082ef0b4d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:cba1718306397fc60e1d6d468c92ea133188229f57a76f9b00eb8edd22cec5c3
        version: 1.20.2
      entries:
      - name: openshift-pipelines-operator-rh.v1.20.2
        version: 1.20.2
      - name: openshift-pipelines-operator-rh.v1.20.1
        version: 1.20.1
      - name: openshift-pipelines-operator-rh.v1.20.0
        version: 1.20.0
      - name: openshift-pipelines-operator-rh.v1.19.3
        version: 1.19.3
      - name: openshift-pipelines-operator-rh.v1.19.2
        version: 1.19.2
      - name: openshift-pipelines-operator-rh.v1.19.1
        version: 1.19.1
      - name: openshift-pipelines-operator-rh.v1.19.0
        version: 1.19.0
      - name: openshift-pipelines-operator-rh.v1.18.1
        version: 1.18.1
      - name: openshift-pipelines-operator-rh.v1.18.0
        version: 1.18.0
      - name: openshift-pipelines-operator-rh.v1.17.1
        version: 1.17.1
      - name: openshift-pipelines-operator-rh.v1.17.0
        version: 1.17.0
      - name: openshift-pipelines-operator-rh.v1.16.0
        version: 1.16.0
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: latest
    - currentCSV: openshift-pipelines-operator-rh.v1.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "clusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "communityClusterTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "db_user": "result",
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.13.0 <1.14.5'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              ClusterTasks, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.56.4
          - Tekton Triggers: v0.26.2
          - Pipelines as Code: v0.24.6
          - Tekton Chains: v0.20.1
          - Tekton Hub (tech-preview): v1.16.0
          - Tekton Results (tech-preview): v0.9.2

          ## Getting Started
          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/container-platform/4.15/cicd/pipelines/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)
          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:8709d35b571c163ed6f3e24b6e653e7dce8ee80f0440795e50e69f0ecfadf304
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:9d1436c1569dfb8dcab5c0ed2d675fb4f8024fb3ef85707393d1091cb5203749
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:0c9d398a73708b5877467547ac6fb1e9ccdb65159c454d31628e93a59da47f3c
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:3cfa3e3ad23f04e75417c2c0fd88c6b0f2b69361bc6947cbdffc594ecbee6d28
        - registry.redhat.io/rhel8/postgresql-13@sha256:3903d562425dd564986123280dc076548fb3d24c74138dcd857652f53052e0a7
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:38944f69b37bedb05903dc14c58415dba21873d2dd9a0fd2084cbf7afd4d5fde
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:8f0704328fef0e6031088290fe47e1f7625c4825ebd2e4edd9546279f87c5fb3
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:a69dc4520666b54d621f1aa8098c1457b2d5d2db125d612ad028ddea1a4e53fb
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:cf566538843704d03a05142639d58e8cb074aaf4bcdd03c0585574c3bc960496
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:21214c77e4a525e6eb0a8bd0e77bb7ede120ec2030dd198fe00ff1cd79a58239
        - registry.redhat.io/rhel8/skopeo@sha256:e297b84ba6f1d5eb2c37e2c3b31c9a9a4c39f9590e7d7c32388165245bde4835
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e53cec5cde1f23ab17082e3326e3328468dba3ec6c0462f06d030e0b1dfbd8aa
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:9f26e5a8d063f791d355481b54f02f4394e4092c20606e5bfcc604c669b995ec
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:bba6ba57778ecf3f5421a2eed5fa0d1192a53e5640413ffa83e6553296db13ea
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:e72a7f6fb660ad48e275a70cd43c085df4b87405e5e8c85d8665b421551c4d71
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:ffcf1b0e3215b8e2525be0836d7c727e639b64900954a804ab2a58f9bc747943
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:bf94a5e27a3a662a4a35ddbca377e4c311b8bda45748d7c4cb5549ac46d4f4a0
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a52bd29991a8a54853c938725162ee832f95f053b149b657bc24358f9aa0a1f4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:34a3c32c391ff5f810f0c84ff3ff5a729c1a12245f4edc66b4b22bbf30ab1600
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:a180db14ad8840a766a3cfec7faf94ef909a079276be904b4d1064f8aa8c0ae4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:d60baacc52945bb442bb8b78fe8848f4a4f6e7e9a2818062631d174db5f31c67
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:bd524c790588652e11fe8ba07ea8df0a2d483840c9a84fb35f3dd3e8157233a5
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:2077cdcb34dcd57972f71b403cad02ea715e19a7096e95dfac228168e49acb15
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:09f162c742dce25deac02bdb5395a7fb714f171f924471c96f24680f95ddc975
        - registry.redhat.io/ubi8/ubi-minimal@sha256:6825946f10e8c81586fa7815c4f06016af05cfc231d921ec9699402a6655d201
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:f3467d9f19c40b5c70659f0d22750e603dd7cd11cdcc0b81310a5d2abfbffb2e
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:20195b44af8e0b2238148003aacb2b278a9c3468893b3967da45e7ae1c3b2e9b
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:7a460bc5609afb2865e20f04b5c0e86ccba3c9a31a09ac14d799556d4b816356
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:f7b19ce26be742c4aaa458d37bc5ad373b5b29b20aaa7d308349687d3cbd8838
        version: 1.14.5
      entries:
      - name: openshift-pipelines-operator-rh.v1.14.5
        version: 1.14.5
      - name: openshift-pipelines-operator-rh.v1.14.4
        version: 1.14.4
      - name: openshift-pipelines-operator-rh.v1.14.3
        version: 1.14.3
      name: pipelines-1.14
    - currentCSV: openshift-pipelines-operator-rh.v1.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "clusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "communityClusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "db_user": "result",
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          createdAt: "2024-10-21T06:27:28Z"
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.14.0 <1.15.2'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              ClusterTasks, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.59.4
          - Tekton Triggers: v0.27.0
          - Pipelines as Code: v0.27.2
          - Tekton Chains: v0.20.1
          - Tekton Hub (tech-preview): v1.17.0
          - Tekton Results (tech-preview): v0.10.0
          - Manual Approval Gate (tech-preview): v0.2.2

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.15/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:1bc3273f138cd3a48610df28c87d05fda126d8cc29d2780a0c4738ea9bd3e85d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:8723ee8cf1f41a85fdfe2699b014df105db50be7c995371dafea698ade65c91c
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:c45a22f5660fe2228eb55d50f061fca7854e52af7c6600f62f8bcae93c15edb1
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:d92d48d42e42082a29d61a0f8b8ba7dcfd5e8ef0a8f66ded0bedce24fc81be33
        - registry.redhat.io/rhel8/buildah@sha256:aac6629389db17e99894c5bee0da01d4c8065d11d8c6f6e1602f9484290baa70
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:e73c1fbaa426e3fc8acda26a38abd1d25de1f933893479269375af40da53dc5f
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:46a680ca7416fc85ecc2d5c7fff84a45b493d02f10c087d3088992e6475f0ee9
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:4ccbc6bb8fadc5ffba0ff8b0206031b51db1c4acd7c0d8bbd050bc73975d4a2e
        - registry.redhat.io/rhel8/skopeo@sha256:29465586e92ed04d2878dcdeda2d508c7e8e7539762e10296b52d631929960aa
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:3e80a493aac65370228ff32643e0fb8418f6fb576934e804fa1c65b38cc3d203
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:fcf8b863aa41a702afef381a087f4daff7dcad1e34b03d2c0b0192bd5365cb71
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:14f4e749cdc026dfb19a53748a4eb64b875d7dc7626fc0b30edef364f3dd612c
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:962780950d1ef7ebbf285ee7fc7c2d8fc9af1b9cbec6c29dffecc133c8933afd
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:c2193380a48239c024d9dfdbeb45cf2c7f462ecb8ce23fa53c5fdfc162bdab58
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:b3642afe8e487884ee62dd6f0d22b84627552afeaa61a3f56eada858795f1d5b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:8a593c1144709c9aeffbeb68d0b4b08368f528e7bb6f595884b2474bcfbcafcd
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:98bf4813124dc9ada33da9530678e239c7953a1302a6cf9dee2277c276fb5758
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:91c836b13d3b9d4dafd4198148172f3f42122f9b38bb8be53c26f5b3ed9cf045
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:e3a11aee5518641ad453ce310b159c52d827f443f99eb61a4f5427699c1ab16a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:9b6bd5c8a5da471bb05b4bda7a4ae3a86b9b1d9128971aa6ce6f4874bb6dfa0d
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:f6232daffac97d841801ca3b356383ae73dd3f74ca6d635475283865737b7862
        - registry.redhat.io/ubi8/openjdk-17@sha256:e8cc2e476282b75d89c73057bfa713db22d72bdb2808d62d981a84c33beb2575
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/ubi8/ubi-minimal@sha256:f729a7f5685ea823e87ffd68aff988f2b8ff8d52126ade4e6de7c68088f28ebd
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:fbf4e6f210ca31b8864f84731b5f5554fffc404d172c0207fb3d5c93b09c6c13
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:ed20e74c11ce0ca33bd832bf29d6311985affd67bda05f8cee045d8732d235f8
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:2f76b11f048e51d0e33f997c5fbe0f9bf4096a4a9cd97d5d6d8084fc10722c03
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:b37a8c805b43eef99b2e7df017622965eca79f0f8f4b1f05917fc2313dbdf40d
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:017455cc1c5ceaaa1034f197d0a98645aff6d83fc71a4a5cb9961c3f283dc239
        - registry.redhat.io/rhel8/postgresql-13@sha256:a92a579f1aef66ac188d24fd489c456a1a3e311d95dcce652da6b81e28fbf725
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:3445ab65ae506460e44f304df03c249ce7283c5fb7cc2d75b660d43cccab70a8
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:702899060437993a77a038c36284b99358caea038c44ca5a94f892233bf85b99
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:f7fe262df4d73aa598d63ef4d463bbe84009e784d0bd2801de1131e6ee0f3ca7
        version: 1.15.2
      entries:
      - name: openshift-pipelines-operator-rh.v1.15.2
        version: 1.15.2
      - name: openshift-pipelines-operator-rh.v1.15.1
        version: 1.15.1
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: pipelines-1.15
    - currentCSV: openshift-pipelines-operator-rh.v1.16.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "clusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "communityClusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.16.0 <1.16.3'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              ClusterTasks, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.62.8
          - Tekton Triggers: v0.29.2
          - Pipelines as Code: v0.28.2
          - Tekton Chains: v0.22.3
          - Tekton Hub (tech-preview): v1.18.1
          - Tekton Results (tech-preview): v0.12.3
          - Manual Approval Gate (tech-preview): v0.3.1

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.16/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:a5a7b2be50f211d4d9d555b2a2e2302096c139ff5011d984cc386f1530007f16
        - registry.redhat.io/ubi8/openjdk-17@sha256:632e78989471859ca4ed1148b951a911f7e3b6e6516482be20967c4171612c55
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:de0d59029c02e5e9e6d607375b9b0ab573807f6531128f13d2579067767e8a3a
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:a1dfff15c9eed4dbefb484c76383073287de6f5429c878254d374a56ec7099ce
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:42ab9dedc88f3892e0712e7868cd21fb62e955f442aad6e837638fd38dd916f0
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:fc935150749190a1a978b7b59769cfa2a9e50577064959ba619d601057bd3355
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:945c1675422507e67eca06f246aca9e42aebcb2c874f74a284b5e5037f073082
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:a3dc7856ede01459cf74c9d17687c0c0ac5a404a6891266b12e19373218d728e
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:c2ca6ed42b7d7dc5d06be481e0f3b5da6c9219999a6f81401d434c0d1cbd9bdb
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:9a230bc21f8ef9ad37398922498ace9e6b13f21adcde2b00f418543919a9fa11
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:783174ac82d0d823f886d5fd1d89baf8cf467c13d651ee689a90a2c1c84c54b8
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:ea97b4d3d0882e9a3f5a98c6af3c147fa96de92e40710edf380b58442d5a623c
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:752baa0d02ea097bab1d014b623b8161ae67317cf2f56d264bcd5d0a270b096b
        - registry.redhat.io/rhel8/skopeo@sha256:1dcb4189c92da21ee58b3ca5433615e0208194c8412f7f1fb45fa491179aaf9b
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a27f43b86d2bc10c60de233be4e223b549d11c3aa7de390e485a79ac3fb4c533
        - registry.redhat.io/rhel8/postgresql-13@sha256:a308263f5d1071be8ac5c13fd84b40609988ca30ed56c22a8bc6769e107ce09b
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:8505951c0c40957eb65d551bc742e82642edf65385b6ca67bcf075036c42270d
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:914fe1fa1d806cd31a755905ffaf0803995f494fcd86690bc9b487dcd2a5b6ca
        - registry.redhat.io/ubi8/ubi-minimal@sha256:a47c89f02b39a98290f88204ed3d162845db0a0c464b319c2596cfd1e94b444e
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:aeff39254bc40092974781fe847a295a1c60f226f3f9ae2b7f2cc9259229c3e2
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:9e9c168af3b24b4f084fecf3bbf07f66bce0fc717641ccaaf07496b0a8498925
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:665f689731ca03f753c3c2dc4d4ae3f6bb001c498e54a6ef7b5d92ff00f2e0bd
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:6acc31f179b08658976cddcb9ef42f377edb29933d1d83a2ecebfd455bb68571
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:c701cca096953103ae21d8b0a4b76c39769f7458532fd868c798a5af2987439f
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:fba741840f20e079c720d4bc4a1df64d78785798300d0958709732299ea321e5
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:eedb4553f0be74f81910dbd1bebed0a4a07eaf4dc47ff0551a8ea52725127b6c
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:1658226f40a3f10d9f6c7776cba14a80644af4a56452d9617e85854daa671223
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:b6845e614c60e924061a52cdc091d0437a4dcd2d67d89158af2efdc930469b3a
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:4037f8eea26c4a4827d127f99a40992109a19efae30ce9d14a75283d69efe919
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:ab01a135f735a75b2b1efa184e1d205b60982c7a93ac48fb48b8eed66b54601a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a6c5e95bf9b42ed8d6e20139499daf70a633ab35eb76cca3eda9fd380f396602
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:23eb0e3b25d61d0f4fabea8dd954bd3956e3b7fec634e32d00c6a108e88330f9
        - registry.redhat.io/rhel8/buildah@sha256:5c7cd7c9a3d49e8905fc98693f6da605aeafae36bde5622dc78e12f31db3cd59
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:6b9964bd9be63c5e32d56cf7519c1b7eb65303e04bace7526873d4de73142eec
        version: 1.16.3
      entries:
      - name: openshift-pipelines-operator-rh.v1.16.3
        version: 1.16.3
      - name: openshift-pipelines-operator-rh.v1.16.2
        version: 1.16.2
      - name: openshift-pipelines-operator-rh.v1.16.1
        version: 1.16.1
      - name: openshift-pipelines-operator-rh.v1.16.0
        version: 1.16.0
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: pipelines-1.16
    - currentCSV: openshift-pipelines-operator-rh.v1.17.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.17.0 <1.17.1'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.4
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.65.6
          - Tekton Triggers: v0.30.1
          - Pipelines as Code: v0.29.1
          - Tekton Chains: v0.23.1
          - Tekton Hub (tech-preview): v1.19.2
          - Tekton Results (tech-preview): v0.13.3
          - Manual Approval Gate (tech-preview): v0.4.1

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.17/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:bcdd6f5a185d4969def2f806403fcd08527bfcc9f4ac0706b38bc358d1d64778
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:e784efdbe32daa310e7d3c7d4645613814573d12ee1dbbf74aad68cfa28761b5
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:cf4e3a23de646038e18a170f1edf49fa75bb72d49e9308511b680e24c795f1b0
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:56337f8ceb6f2cce84090f9fee17bdc9eb87dc4e61c36c6353014c0f99cf6273
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:7c22937c957b4f405bc014f4b8210f88c1e5acbc7fb59a29c9ee8837d4e0249b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:fa2bec9b5cb68fccf9dd331881ff225abf6704973ee3b283e2b5f294aafe3ac2
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:d854cdf80b03566e138d1530e0200e7d9a349524d37ce0244f8ba97f6af3156e
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a34bd66f9eb15cb09f7342d7561f23697039a8521fbe76d0f5104d19bed0a05a
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:58343c719d9c4d536424a55e280cc3f67c2bff6f0e0b1b56678f555d5c12f381
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:bf9071d0e144632a0acd90ddb4d2e1ecd435e1904e22233a1e1978cbe3a0206b
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:934563cc735bc0c3421ce444efdcb3bbb38c1a42a2abcf49294af30e7f5cab8e
        - registry.redhat.io/rhel8/skopeo@sha256:7fd65200b4847fc84fba0466519b87f915e28c0e9bc90d3022beecfebffd4af8
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:a4f1c5397fdedd9c820f51e0c09d6b464f2821740c86ab61772aed14cbb33ae8
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:37109f6de75dda750496f6668164d0dceaf9db5278e8c034708436f39de3276e
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:245e5f77eef067b48f7262de04485b4ab5f195736dc128d2c574f32bb05d3b2d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:d2b4ad8837421df74485f6752832de75e6543940d8c32fa18811d7878cf4e7b8
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:4cf8548faf20fa56d4ec698975bb90bed4474661170cc51b6892a144d0407497
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:b614e12432bac989bf789ac84ec0a2bf55f5cab9ecd863432c7d11e4e176def0
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e9352d062e933f23277e81333b42fd86ee767e9fd273c8d4528ede410b6d7afb
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:b44ee90952a1556b9db646795d415d3cec2d1de7e01356438b53ba44c09988db
        - registry.redhat.io/rhel8/postgresql-13@sha256:757d8dd6f243717d820846da7144a49913f28f223b74ec305b2215f54720f8a0
        - registry.redhat.io/ubi8/ubi-minimal@sha256:c12e67af6a7e15113d76bc72f10bef2045c026c71ec8b7124c8a075458188a83
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:0e4eb22c1f8e35014fac62a820895d6934312278d71a23bc8b4e1f5e200b6bd9
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:ac3087bf9f4d494518fb19e3d95fe0f942fefa69ff9f8b2a82fe2d59c2bbfbf4
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:de9337e8fa647d59727a7bc4477c613607975a493283037b5c81ec908da21902
        - registry.redhat.io/ubi8/openjdk-17@sha256:e5fc9e34382da41b10d4ea566639d31707493abff9e8de81f5accfd66876409e
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:8ba6e6deab70190b55ef2dda957a8df89e34bdb03f0671ff2f52c97c8da6081d
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:0e7798c138004f4e462a80939fb22b5065016dd15574224be6c8a58d9d5129dd
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:41ec6db921812fd1e80b05d51c224ddbce63bf0c57f02ccf07461d2202e97b90
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:aad40e98859844aedf0c719d7305baeb42c055872fb735c54c378edc014d6e31
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:108160e0298da3379d4277cfa865c073c28fc3b25f5ba3155e427db5b50ebb46
        - registry.redhat.io/rhel8/buildah@sha256:6d2dcb651ba680cf4ec74331f8349dec43d071d420625a1703370acc8d984e9e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:6fe1b45c6ee81bc55062ac6a6972accf5546c69f78db97f53c9b8975426c35eb
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:115c28f9574540ec42be6e3afb93ea62f4d6e54c7367e86e746ace712548130e
        version: 1.17.1
      entries:
      - name: openshift-pipelines-operator-rh.v1.17.1
        version: 1.17.1
      - name: openshift-pipelines-operator-rh.v1.17.0
        version: 1.17.0
      - name: openshift-pipelines-operator-rh.v1.16.0
        version: 1.16.0
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: pipelines-1.17
    - currentCSV: openshift-pipelines-operator-rh.v1.18.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.17.0 <1.18.1'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.68.1
          - Tekton Triggers: v0.31.0
          - Pipelines as Code: v0.33.2
          - Tekton Chains: v0.24.0
          - Tekton Hub (tech-preview): v1.20.1
          - Tekton Results: v0.14.0
          - Manual Approval Gate (tech-preview): v0.5.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.18/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:dbc462cb50385dec3a220b5d0caed0e0211c166182026f86e3c51a1351ba0de4
        - registry.redhat.io/rhel9/buildah@sha256:6886997da8c92214e99e3e8da47a0f08239172d2544b4edae058d5cb018effab
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3964c3248dfb1006ea9a46295baf7f8cfa71952d6b9863b52f87e8f3d7863b1e
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:409c14649d8e7007d4b72b6feffb71dabd26322bf2a7c77f5307f2546fdfe81b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:8ae0ca6411e4fcd5c0605344bc6930cf122ffd80e71199509d58423a8b41de1d
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:d055d2b35a663aef3e1aafdbed0b12957867c0670c946ebae66e9c44a768bda2
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:20e19c02efdecf94a7b16483047e5db81c50dc2a0aa59d4895067e6c7769efcc
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:e4d49cf6a2fb8b3585ecfe3b3da3e9de090fb99de3dee2da0601b1f6b071173c
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:c20ab6fa719506bca942669ea84b113335b05df3ed275257b88be234cade7c8d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c90a9c3a20f088241980b76986ba4f43b0243fd6d94a826fa7b5888e01c13093
        - registry.redhat.io/rhel9/postgresql-13@sha256:ecd5a5583db922c517c735797db3fca587c0ef0b410e7dd494ace2267d89cf05
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:86ea94b12e8923035e3e4f39b6a53b3ab32c5f77d7eea170aa9b34aecc6f8577
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:72901cf4e091fe5f6a577144fdffaea8570712e9887a8bd715d5ae5bc346ff1d
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:e6a7738cdb0e8aa9e1af381273b1c18ec1414b08a66fc851f6e11e5aa7a6706f
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:cbd89c531953a43b8055bda72f7696be80f57fd1d782567a91d82e0fbcb3d26d
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:80d441ec5d07c5059277a3a9173a35dfc0b8372d6e4d7823514131a94bae3fd7
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:1b57b64657eca0002145100bae262a19f02eb40068e07994df467e28a1618f90
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:eaad37453a5ebef51c28d4a068f56e9f394e710c72bb86342cd2189001420836
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:b9675b22bc8759903472c1eb0e03f90c75460f02799d894294c161641cad9414
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:2ba6782af0d7e5c4d623de31814f43f4f7c3c38d09b57705021957d334067f87
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:e2b4c3b505c4b5aa36f8a5e661389b0de4e799c74c2c7f16a065e5522b438e89
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:8fec8e7a8b3e5182c67104de4e3abe32593b682c4a8986d1e9ab835dafb95ff4
        - registry.redhat.io/ubi9/ubi-minimal@sha256:ac61c96b93894b9169221e87718733354dd3765dd4a62b275893c7ff0d876869
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:fcd5fd10de7334bd59a8da4997f91008ced95c6cde40d56d50f3b3e32c0f19e1
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:cd28c2c90dd340324b0d8709640cd7636f28286114b0023649b6e21be13e03c2
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d72842a7c6a1e50a68576c93f60047afec801cf83db64d7d3e34b25bf3c753ec
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:e27a30d471dda4983a5b8192709d283a9d082558f3caf31b30db2214e418b017
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:16d799503674641d4690822edc9c399c61429ccd31621d295eee4a4d1ef1c076
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:fa5c456fc91319c55fac9a011dc7bb32ef85db293c73d74436e903b76ceb4349
        - registry.redhat.io/rhel9/skopeo@sha256:d077e35100d6d7b3795f8e3594293dbf8b65c6bc18b909aa555fe56f048b356a
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:36a4c6a3273f2371ab5e679f1955221c286ea753e29e6ab8da7c983681a68f02
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:96f5e1922fb9d6dc17e271576dda9bd032bd6dcc04e7496fb15a2f6b5871cd67
        - registry.redhat.io/ubi9/openjdk-17@sha256:5d619e202695acf76a5f32c07ace6709f5ee5d3999bf977e1bf95ad34197f44a
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:b550a8bc2a87d07a5b22a3ec3fb83efd8eb26ca6e80d404f2e453cc9b8434da7
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:e63d956a0534f2e726301e00e877c4fe2f34ca4559e59d2df7567c04ded311a3
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:0a60ce46c05256c74f770901e0bb79ad89e88ba882b643c1ff7b2a1738463acc
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:6abc903c784bb455e1f2fde45a48afe775239668e1d0dbc1b3cc6afca3c0b477
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:8b4bf043e0fb237553503d63b129c432600bb4e65b2096b246b257b404b42be9
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:776d34b0ea2e35c11ad4050e6b40cf4b40c84dbe0d5f3e6ad669c494a210ea8e
        version: 1.18.1
      entries:
      - name: openshift-pipelines-operator-rh.v1.18.1
        version: 1.18.1
      - name: openshift-pipelines-operator-rh.v1.18.0
        version: 1.18.0
      name: pipelines-1.18
    - currentCSV: openshift-pipelines-operator-rh.v1.19.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPruner",
                "metadata": {
                  "name": "pruner"
                },
                "spec": {
                  "disabled": true,
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.18.0 <1.19.4'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev","tektonpruners.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pruner
            displayName: Tekton Pruner
            kind: TektonPruner
            name: tektonpruners.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v1.0.0
          - Tekton Triggers: v0.32.0
          - Pipelines as Code: v0.35.4
          - Tekton Chains: v0.25.1
          - Tekton Hub (tech-preview): v1.21.1
          - Tekton Results (tech-preview): v0.15.3
          - Manual Approval Gate (tech-preview): v0.6.0
          - Tekton Pruner (tech-preview): v0.1.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.19/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:408a3bf7a43068cbf2ef9af04faf3df161ac39e53446f47d9fcd083499a9e2a5
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:bb5bd9f505d0eb6ce6573b09898c2ad49f1d3602c36b380058b489d9383ba60d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:5bfbde45a37d8b16cf0ab0be8f636c35a1d9041d6c8f7f611fc24a551eb890eb
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:4f606f7cb607007573f1023408329bdbfbfd979dc6bb50ac4af0ae20a33bcbee
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:ddbab8d6b9d1239451bf695276c8ddfe00e78cbb9ff4fc6562a9a5a2924b6082
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:1fef4759b410625fc797a8ecd166c20ad09312abfccc1cb941e946cfdccd2da4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:49cb3cca3f9102384c96e93108d09969df22c3858b1933ecff9fbe1d41aed981
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:66588ef48047d6589b7c810398ca16032125174d7cd9eaf1d6ddebbbf82147b4
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:95816d1f338341800c6947491d31d6ad826e56e821ad3ada78718df9f2dcd103
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:67334d9a2a0bee4cfd62d3e3c26608df4f802adf8970981260e4051b4fb3d055
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:ae34ed4ead57a26e1f65dcf433908ad75c5bcc243fcb2fdc3b4c211171c40480
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:40a099a9073bcc2f8da442d8225be03c8636e456c548c93e1a8366677e845830
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:1141200c99c69bbfbce4f7994b7d8b9eca36f5cc395acdf866233b3cc35be61b
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:b49089d2f582a7a9b954a75a48c590849e79628305b37c43a0c5ff795019635b
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:a802bd8ea9104e77b6318bc3c05269c32c6435a696f62084da83f68b9426294a
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:41d669fbe8bb48481890fb9fb52de9d4cac98cb74e6a6b284d046a8d21b06e58
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:2d6640e6b91896ff455ab8e2246f166a3cdd9c53dfca00b3919f646f54a11f9f
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:84450e886c5ce68f4f594982fab6140faebef5774339226b0be8d7e70b963fcf
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:e1b99c7a287125dc265c536e5aecbe9eb4e9981ff030d28b9b127fb546a45944
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:aab3b001f60510c73cf475b2c218a7aa921cbca99b855d28862c42e83d610ab0
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3e2343b6121790f18b8d8868d8492af0b0541252f50e290f585f467c61660574
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:cc5265e2e163446554453d4f5db1cc733758b450c7550db7b7caf9ede474aeca
        - registry.redhat.io/ubi9/openjdk-17@sha256:cdbd64ba1b7826d09bc180fa19aa6fbc09ddb5bff5e02b7e1351353bbabebb78
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:38a58fd012558192cd779ff8ac2ef3f02b8e82e2a1bcbbb9d53822c9d8890afd
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:6a947bae0c64ffcf7c2f9d71b5f18d858e017ce6122b2499c555850fe7fe1fde
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:f151dda38d7fafe2d72e2cb064d074921c6b535543f29cfcf66405ba65e38ed5
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:6a18f8d771900aa480560d1809c789d5243c4f6d9087185c610d9b8834d78625
        - registry.redhat.io/ubi9/ubi-minimal@sha256:14f14e03d68f7fd5f2b18a13478b6b127c341b346c86b6e0b886ed2b7573b8e0
        - registry.redhat.io/rhel9/skopeo@sha256:993f799d58c48151ecae7a84e63860f6c0039e8e18efed5ad67e7752f4b7e408
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:a585790aa11f5152c8a55ef36f74f731a34b2eecccd3250e5ef3cec8ec398409
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:d21cc7e094aa46ba7f6ea717a3d7927da489024a46a6c1224c0b3c5834dcb7a6
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:655a73b61984fbafe9194629705f51ff149d43a768a5a1c103045582eba8f2ec
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:d49f6cfcd815f93d0f1fad8a569bc8e52ffd86ba909530e95fdee19b0a1ca784
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:7eaab4455c1e416e4e0ba5f3e0e60c5a46aea23a939968e15eb6a953680a5f2c
        - registry.redhat.io/rhel9/buildah@sha256:a6e04c061b8d261dba85d01dcb64d3f7dba8c0b9765e03f05ec79850a248d75a
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:a68bc519e86f1316bf2c536aab16ebfab329cb51b07cd02d3021bc8332c4c97c
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:cb5958fdc6661e23f9957d53877a6f401af5a2f64a1305ae21579048846f1f70
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:18bb4f4139d8b9f041ec5d38e5350d72290715f8ef235543365ca4b353bfa8c4
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:498238810108939ead8df1158c6ac892ad5f0bfad57fd2a893b5ce53853504d1
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:e74f92e066f47a3eab9467f2253c3b85bc34fa41e2443e033b5e3470849b0d16
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        version: 1.19.4
      entries:
      - name: openshift-pipelines-operator-rh.v1.19.4
        version: 1.19.4
      - name: openshift-pipelines-operator-rh.v1.19.3
        version: 1.19.3
      - name: openshift-pipelines-operator-rh.v1.19.2
        version: 1.19.2
      - name: openshift-pipelines-operator-rh.v1.19.1
        version: 1.19.1
      - name: openshift-pipelines-operator-rh.v1.19.0
        version: 1.19.0
      name: pipelines-1.19
    - currentCSV: openshift-pipelines-operator-rh.v1.20.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    },
                    {
                      "name": "legacyPipelineRbac",
                      "value": "true"
                    },
                    {
                      "name": "createCABundleConfigMaps",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPruner",
                "metadata": {
                  "name": "pruner"
                },
                "spec": {
                  "disabled": true,
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.19.0 <1.20.2'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev","tektonpruners.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pruner
            displayName: Tekton Pruner
            kind: TektonPruner
            name: tektonpruners.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v1.3.2
          - Tekton Triggers: v0.33.0
          - Pipelines as Code: v0.37.4
          - Tekton Chains: v0.25.1
          - Tekton Hub (tech-preview): v1.22.7
          - Tekton Results (tech-preview): v0.16.0
          - Manual Approval Gate (tech-preview): v0.6.0
          - Tekton Pruner (tech-preview): v0.2.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.20/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:d941644bf6672ce0e6151f6ae7f775ba173795baf4a79eb8bba1d2b67ea359d5
        - registry.redhat.io/ubi9/openjdk-17@sha256:555c8bcd2596637befd1a6da4aa949c5a2640cf66e09c2dfb932afe37e39095e
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:0e9d28f1ef4f3348349489bf813c20e249a10d2735c409dccf8067e082ef0b4d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:cbff2c3468f239276802e0a3a98301386ae7a98b183c4ec5b83f4b30ccde56cf
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:cba1718306397fc60e1d6d468c92ea133188229f57a76f9b00eb8edd22cec5c3
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:a6da589eb9c40c62e06c64f3d34578053328bef388325e8927872cd75c4ebe29
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        version: 1.20.2
      entries:
      - name: openshift-pipelines-operator-rh.v1.20.2
        version: 1.20.2
      - name: openshift-pipelines-operator-rh.v1.20.1
        version: 1.20.1
      - name: openshift-pipelines-operator-rh.v1.20.0
        version: 1.20.0
      name: pipelines-1.20
    defaultChannel: latest
    packageName: openshift-pipelines-operator-rh
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: ScaleOps
      provider-url: https://scaleops.com
    name: scaleops-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: scaleops-operator.v1.26.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "analysis.scaleops.sh/v1",
                "kind": "ScaleOps",
                "metadata": {
                  "name": "scaleops",
                  "namespace": "scaleops-system"
                },
                "spec": {
                  "scaleopsToken": "${SCALEOPS_TOKEN}"
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
          createdAt: "2026-01-06T18:53:17Z"
          description: |-
            ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

            ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

            Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

            Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

            Contact [us](mailto:team@scaleops.com) to start your free trial today
          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: "true"
          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.skipRange: <1.26.11
          operators.openshift.io/valid-subscription: Contact ScaleOps for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://scaleops.com
          support: ScaleOps Support support@scaleops.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: This will install an instance of the ScaleOps Platform on
              your cluster
            displayName: ScaleOps Platform
            kind: ScaleOps
            name: scaleops.analysis.scaleops.sh
            version: v1
        description: |-
          ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

          ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

          Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

          Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

          Contact [us](mailto:team@scaleops.com) to start your free trial today
        displayName: ScaleOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vertical scaling
        - horizontal scaling
        - node optimization
        - application runtime
        links:
        - name: ScaleOps
          url: https://scaleops.com
        maintainers:
        - email: support@scaleops.com
          name: ScaleOps
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ScaleOps
          url: https://scaleops.com
        relatedImages:
        - registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
        - registry.connect.redhat.com/scaleops-sh/scaleops-gpu@sha256:350e8df5a36e8f47e0055a703331c29da3c8fa9679a629a1dffb620d4414bf4e
        - registry.connect.redhat.com/scaleops-sh/scaleops-operator-bundle@sha256:d5e4258cb2319901e62d3a15b9a6304495ab6170797244793a6df374d6d35321
        - registry.connect.redhat.com/scaleops-sh/scaleops-sh@sha256:e2f3b6e44e5050b9acd255cfdc4b9563ae5449ce547f30ec37c97f4c5083dcf7
        version: 1.26.11
      entries:
      - name: scaleops-operator.v1.26.11
        version: 1.26.11
      - name: scaleops-operator.v1.26.10
        version: 1.26.10
      - name: scaleops-operator.v1.26.9
        version: 1.26.9
      - name: scaleops-operator.v1.26.8
        version: 1.26.8
      name: stable-v1
    - currentCSV: scaleops-operator.v1.26.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "analysis.scaleops.sh/v1",
                "kind": "ScaleOps",
                "metadata": {
                  "name": "scaleops",
                  "namespace": "scaleops-system"
                },
                "spec": {
                  "scaleopsToken": "${SCALEOPS_TOKEN}"
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
          createdAt: "2026-01-06T18:53:17Z"
          description: |-
            ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

            ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

            Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

            Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

            Contact [us](mailto:team@scaleops.com) to start your free trial today
          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: "true"
          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.skipRange: <1.26.11
          operators.openshift.io/valid-subscription: Contact ScaleOps for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://scaleops.com
          support: ScaleOps Support support@scaleops.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: This will install an instance of the ScaleOps Platform on
              your cluster
            displayName: ScaleOps Platform
            kind: ScaleOps
            name: scaleops.analysis.scaleops.sh
            version: v1
        description: |-
          ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

          ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

          Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

          Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

          Contact [us](mailto:team@scaleops.com) to start your free trial today
        displayName: ScaleOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vertical scaling
        - horizontal scaling
        - node optimization
        - application runtime
        links:
        - name: ScaleOps
          url: https://scaleops.com
        maintainers:
        - email: support@scaleops.com
          name: ScaleOps
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ScaleOps
          url: https://scaleops.com
        relatedImages:
        - registry.connect.redhat.com/scaleops-sh/scaleops-gpu@sha256:350e8df5a36e8f47e0055a703331c29da3c8fa9679a629a1dffb620d4414bf4e
        - registry.connect.redhat.com/scaleops-sh/scaleops-operator-bundle@sha256:d5e4258cb2319901e62d3a15b9a6304495ab6170797244793a6df374d6d35321
        - registry.connect.redhat.com/scaleops-sh/scaleops-sh@sha256:e2f3b6e44e5050b9acd255cfdc4b9563ae5449ce547f30ec37c97f4c5083dcf7
        - registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
        version: 1.26.11
      entries:
      - name: scaleops-operator.v1.26.11
        version: 1.26.11
      - name: scaleops-operator.v1.26.10
        version: 1.26.10
      - name: scaleops-operator.v1.26.9
        version: 1.26.9
      - name: scaleops-operator.v1.26.8
        version: 1.26.8
      name: stable-v1.26
    defaultChannel: stable-v1.26
    packageName: scaleops-operator
    provider:
      name: ScaleOps
      url: https://scaleops.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      pod-security.kubernetes.io/audit: privileged
      pod-security.kubernetes.io/enforce: privileged
      pod-security.kubernetes.io/warn: privileged
      provider: NVIDIA Corporation
      provider-url: ""
    name: gpu-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gpu-operator-certified.v25.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "cdi": {
                    "enabled": true
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "kernelModuleType": "auto",
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "secretName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": []
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "secretName": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
          createdAt: Wed Dec 3 14:12:01 PST 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <25.10.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:5c4e61f7ba83d7a64ff2523d447c209ce5bde1ddc79acaf1f32f19620b4912d6
        - nvcr.io/nvidia/driver@sha256:ef9856ae8491b376364df1f0cad388bcf9983bd2b6c78000523c13536cf828c3
        - nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
        - nvcr.io/nvidia/cuda@sha256:d19fe621624c4eb6ac931b8558daa3ecc0c3f07f1e2a52e0267e083d22dceade
        - nvcr.io/nvidia/k8s-device-plugin@sha256:50ac011ab941ab0140d52f56aa0e2fdc553bca96836ab3b26be394fc823fd9e7
        - nvcr.io/nvidia/driver@sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:119de9a331a47203858b99901f44d0c4a8052961b4e60327f4b100d0ab8c9df0
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:10acae5f724b07faa6e6c7716f3342d3cf2306a2c22971825e1a23753c21e8c3
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:7c0ac4430bb0a5868b7404a0e06c47e02b0375b61aadd614385ad0bc2d43815a
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:c549346eb993fda62e9bf665aabaacc88abc06b0b24e69635427d4d71c2d5ed4
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:098c01e11589e08ede9ffb3002d1c3dff424f0f0c5d1bfcbfd54a359073f16dd
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:ef2a0ef6bbf9c43529da3730974de9d51b8436c2314a68e718d437e6ab7c4b58
        - nvcr.io/nvidia/driver@sha256:35359117c5cdf786694d2fdba2ba038e7f673c5d0243c9ed4dc6cdaf6e675e4a
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:8e0803d2f29776cd4cc0501381a20a0b04b2da507a794d66a15894c57beaadb5
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:99187d6b023689f50cf065c77b96ba5aacfa26a618854608a1e31da5e826b765
        version: 25.10.1
      entries:
      - name: gpu-operator-certified.v25.10.1
        version: 25.10.1
      - name: gpu-operator-certified.v25.10.0
        version: 25.10.0
      - name: gpu-operator-certified.v25.3.4
        version: 25.3.4
      - name: gpu-operator-certified.v25.3.3
        version: 25.3.3
      - name: gpu-operator-certified.v25.3.2
        version: 25.3.2
      - name: gpu-operator-certified.v25.3.1
        version: 25.3.1
      - name: gpu-operator-certified.v25.3.0
        version: 25.3.0
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: stable
    - currentCSV: gpu-operator-certified.v1.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "dcgmExporter": {
                    "config": {
                      "name": ""
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                  },
                  "devicePlugin": {
                  },
                  "driver": {
                    "enabled": true,
                    "use_ocp_driver_toolkit": true,
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "gfd": {
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "operator": {
                    "defaultRuntime": "crio",
                    "deployGFD": true,
                    "initContainer": {
                    }
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:c7f9074c1a7f58947c807f23f2eece3a8b04e11175127919156f8e864821d45a
          createdAt: Mon Apr 18 10:06:40 PDT 2022
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=v1.9.0 <v1.10.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://coreos.com/blog/introducing-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:5b16056257acc51b517d9cdb1da3218693cefc214af93789e6e214fd2b4cacf1
        - nvcr.io/nvidia/gpu-operator@sha256:c7f9074c1a7f58947c807f23f2eece3a8b04e11175127919156f8e864821d45a
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:67c48a8370c34f68b46eb57339e87d01c04198368a0423553fab7565c862c4df
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:60b1d25ebb3aada94985e359bb059d4491bf0148ac75d51b68a461670659e429
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:ac13256c295126b854a07421c45de0721e7a57974b38b3e66eb1fdc3a4e29f2e
        - nvcr.io/nvidia/driver@sha256:f99b66855e92451a59a722355dd52bf97eb985cc8a647172273de8178aeaa93c
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:9abb063e6b74085728fead5ed5bbe3bd7b3f57de60e87f6b964bba2d46f1bc67
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:24d804e8f005d7aeca8343aa13e5f92295d8642a4c47cb24e3ac86a22543bc37
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:e8f06ce53415e8572f633b2169289d973993cb1e49d4dcc686ac134194d88f33
        - nvcr.io/nvidia/cuda@sha256:7f0f7dc8c993a86865d4d9f9b0e36d113ea15603d5d5279d2879fa2bc21c8236
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:c2e3d0fe41a0d227dbb70caec03c780cc76317515e5ab3875f31d50c63f41c66
        - nvcr.io/nvidia/k8s-device-plugin@sha256:aa95c16106280e36a5e32d2fe4c66e8b70f5a114860c6f4ed5b1a4085c63601b
        version: 1.10.1
      entries:
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v1.10
    - currentCSV: gpu-operator-certified.v1.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    },
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "dcgmExporter": {
                    "config": {
                      "name": ""
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                  },
                  "devicePlugin": {
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": true
                  },
                  "vgpuDeviceManager": {
                    "enabled": true,
                    "config": {
                      "name": "vgpu-devices-config",
                      "default": "default"
                      }
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:53180f81fb7e1e4bcd49a556bc6285c2262abbab8083b29d2688b02d4200dd2d
          createdAt: Thu Aug  4 11:57:56 PDT 2022
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=v1.9.0 <v1.11.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/driver@sha256:b8799e7397fae5a27446737443091eed05b918816f53c400a48be71125ee22e8
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:b90a519e9f30fbc013e1806bc081268724e9e80b4035c67c167ab3b43a37704a
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:3128cd81b56975643c1c88c6ceff6d72e918a67ec2d6a5a606b6e04753c5b0ce
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:3804e2b03c44d25dd410e3882b7fb6d1fde41f55110d7702af47136b042a63ff
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:2d6e86db0e2b0db64c00566938e1851e25d4bb1019b1e7b696e2b199cba33397
        - nvcr.io/nvidia/driver@sha256:cf8ce04907d0e8decf90a8dccfa6134af9c39509d2f8a21c355ed71223acacdb
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:e88e610d09f1a7528ab32cb54259aee340eba2b2bf66b92a28157626daadc82d
        - nvcr.io/nvidia/gpu-operator@sha256:53180f81fb7e1e4bcd49a556bc6285c2262abbab8083b29d2688b02d4200dd2d
        - nvcr.io/nvidia/driver@sha256:6e2902d73c54cf57bec94edf166d206cfeb0b948b5aab70800ccbe025064b3a1
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:16ee5b1a8d9217f761c40a06c7ae598cbc893fbc35d99ff9b84fa886ea6b9b37
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:f48e8b430248a9cadf716a9211bb0050d4a663d1f1386ea107e72917f82e5b5f
        - nvcr.io/nvidia/cuda@sha256:4400b56f81095b24fc9dde93ad7ad7d0ca6a7e9736c4c7f1d4e2bcbf0afbe45c
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:39127d04c9faff3f22068dcf463ed48d02be684cd18e3f14db843bddbdd783a7
        - nvcr.io/nvidia/k8s-device-plugin@sha256:7a0ccbcbe8d379bfc441e06504eb45d0d433a37e2a9e6dde83d13347296ebe81
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:10d825ccbfcf87f8c74f841fa89ae345f2d381fb47a5b2b31f61b72ebbbb0915
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:8490d555131a57a11311561667ea9ec8cf554a399d2492a6f9e6677c01ec4b9a
        - nvcr.io/nvidia/driver@sha256:8c9fabc1cd773e9526eb7e8526084f065f6cca9d0fd8dc2a672a0bb717f1cc60
        version: 1.11.1
      entries:
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v1.11
    - currentCSV: gpu-operator-certified.v22.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:54d5846c0291db621931a8544c9cb6437512470a93278ca9130ba73f2e2f0055
          createdAt: Mon Jan 30 15:43:24 PST 2023
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=1.9.0 <22.9.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:efb88937f73434994d1bbadc87b492a1df047aa9f8d6e9f5ec3b09536e6e7691
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:50c2a2b998e467c82716efa79fe136aa6f7ea95fd23576cf384d251bb9628640
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:9177a0ae30798b42d0387f6a20cd3ce3cd1799a91b7866bf812368764b05b1af
        - nvcr.io/nvidia/driver@sha256:f250d1e4989fd4821e81bad9227eeeaa531ca8810f3a40e996f1ca2af7945f96
        - nvcr.io/nvidia/driver@sha256:268c26781c46b36fe691638e807eb5c3a2cd077029ddb095ac75264adac04925
        - nvcr.io/nvidia/driver@sha256:c5a62bc2a6cce339798e4b7cf9cec47e289c2d30b40f451ba8c9e958a68e3e55
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:bec9f026d9b3d9404c78d6091817a359015c6a7aa411735b34138c1518853b5d
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:0d47dad29d2ef445b301c5c64717758eed43a606345b79f97bce2e64b40a91a8
        - nvcr.io/nvidia/gpu-operator@sha256:54d5846c0291db621931a8544c9cb6437512470a93278ca9130ba73f2e2f0055
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:9a00cdfdddb73327ef8e8e0fa60e50926a388d380c551bba6a3d3012be40401d
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:c3cf59dd5d6160eba5d816ade2e81b35ebb10f4884df67971f6ace36f8e6efc1
        - nvcr.io/nvidia/driver@sha256:f2ca4612f3418e0e3963be8c3771ffe463cdc1fc1b810437a3aad9d76bb6499d
        - nvcr.io/nvidia/k8s-device-plugin@sha256:9c17d3a907eb77eb8f7b4f3faf52d8352e4252af92003f828083f80d629bd2c3
        - nvcr.io/nvidia/driver@sha256:b860ef04cc6cd8c481810fa19bef7221071f5a3862640b2ad6c2704728dc77c8
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:808529c14a8873324096fbd1622fb895c4dc7f60c1cf9e3ded646f9a81d7b496
        - nvcr.io/nvidia/cuda@sha256:5f2a2d8977f2c59abe88394f05cc3c044194554f90994d8554b0e1117ab5900d
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:00f1476548fbed9ee01961443a73bf65396c2e8bb2b84426f949dd56cb4d14cd
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:64d757b4c80b910e64647a84a1d592fab2ea3313ff6dce30c25c3a08e180bd74
        version: 22.9.2
      entries:
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v22.9
    - currentCSV: gpu-operator-certified.v23.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:08ca33f491195b7ba867be1e6642b5ff8aff6a4b0b7cfc0ec87619252ccfddc7
          createdAt: Mon May 22 15:22:15 PDT 2023
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=1.9.0 <23.3.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:0d47dad29d2ef445b301c5c64717758eed43a606345b79f97bce2e64b40a91a8
        - nvcr.io/nvidia/gpu-operator@sha256:08ca33f491195b7ba867be1e6642b5ff8aff6a4b0b7cfc0ec87619252ccfddc7
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:f10170b076badda8f669af8b0f7b47eb5470abaf35a67dda9c4e182d66138177
        - nvcr.io/nvidia/k8s-device-plugin@sha256:80871275fbcf888d4683c58638c7a75b3c46091040cafc6210a8c93513adb146
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:2d7e32e3d30c2415b4eb0b48ff4ce5a4ccabaf69ede0486305ed51d26cab7713
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:5489125ceae5864280e4d6a9ab52ab0f650b3179349a7298c4a204feb60b661a
        - nvcr.io/nvidia/cuda@sha256:62d845b4bd6de4be65f0b6daaae6831c29d4529955f99db5d26f5f7179106285
        - nvcr.io/nvidia/driver@sha256:3df118f2330e95db3c76173cca35e542b2da120ec0bb8f6aff83c4c96c0c2daf
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:708291528f26c70c561745967a1200edcb2f984687f749a49a2860fee580423f
        - nvcr.io/nvidia/driver@sha256:917f92c589c3124dba54f66f89c44b93b0beaf418f01d0da6a546e1670fdf3a9
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:03e43d6b1460cadb33509d5ee07a5e27603ab89d7ec35f67d8a51bb78745b463
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:21dfc9c56b5f8bce73e60361d6e83759c3fa14dc6afc2d5ebdf1b891a936daf6
        - nvcr.io/nvidia/driver@sha256:73b8928a1b1fb650d2ca8d6451a7d7c551fd0509f7511c2fd5bfdcef83ae4f5d
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:cab21c93987a5c884075efe0fb4a8abaa1997e1696cbc773ba69889f42f8329b
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:8f03f74076b5aa6672a5d75a398fa7515fcde57fdb1cf8079e015b3366efd3b5
        - nvcr.io/nvidia/driver@sha256:8ff0ee88fe6c4ff031ef642593f93625bfd9a48fe7be8a79a5c2736117e36941
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:84ce86490d0d313ed6517f2ac3a271e1179d7478d86c772da3846727d7feddc3
        version: 23.3.2
      entries:
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v23.3
    - currentCSV: gpu-operator-certified.v23.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:d2e0f8bd86e8e9f2ff3514e113657658584ca4a2d0b82dac2e47364cc0b30648
          createdAt: Thu Aug 31 12:22:44 PDT 2023
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=1.9.0 <23.6.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:878a6162a4fa0b61dae02c7cfc13ba4d28bb06f92fd62d0c521633ab507d675a
        - nvcr.io/nvidia/driver@sha256:3382e254056f28831767bc6729bc2594353a5ff2a28fe9f2d94396c597bb23d8
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:bb845160b32fd12eb3fae3e830d2e6a7780bc7405e0d8c5b816242d48be9daa8
        - nvcr.io/nvidia/driver@sha256:b4517810f2884f345b4f2323e83e41d28f54cdc6e2caf0690bb7ed4f3947dbcc
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:a229beba8540549c234a046e975bf4bf8c50d521dfe551af56f6e042b25ec017
        - nvcr.io/nvidia/cuda@sha256:64c0ff5fd4a27d4b1d46378634f7a7398c75f87c18c70c988dde18910d461560
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:0379c59b43e11861837787a0da22e70b528718373bb10de9e8b7752849bd4e7a
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:9484110986c80ab83bc404066ca4b7be115124ec04ca16bce775403e92bfd890
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:bf06c8ad380a36e5014607bd3ab05b80e8e5e7e77d23d0dd89fe53a5564152fa
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:00a91252be8e62da6f28cdf1ec3721f2e945ae296938b0b925ef9db2bf6dcc8b
        - nvcr.io/nvidia/driver@sha256:bbdc4415fe2e71eeea1b8a6e50ee562e11704dabb46db1db4aea807102886a35
        - nvcr.io/nvidia/k8s-device-plugin@sha256:f1617c3fe54fd9f6d4a00358e5da1a9fa9e8963a4ef6b3ed06f47d4971ddff4b
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:d1c636cc17155c4764d331e050f9bf3ec9f39f6ec6ec14e972179b185ea9f5b8
        - nvcr.io/nvidia/gpu-operator@sha256:d2e0f8bd86e8e9f2ff3514e113657658584ca4a2d0b82dac2e47364cc0b30648
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:60086c33226bbe7f04b611c20d308fed5825226f8a0a5635bc58d8ed55cc08a5
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:b30f5c64791dc5406b57eaf51ac40195dc1051a18cd1f38fd0a43c65f1d6dba9
        version: 23.6.1
      entries:
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v23.6
    - currentCSV: gpu-operator-certified.v23.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:7481a3697783dcdca9ae78e7b548a6900e86ea33ab49ec14f0ba55db2fdb1a2e",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:3988b3b570cf65b0d338cb29bd24b0b9bf1885e1563fbb398ef23cba0b59e6bb
          createdAt: Wed Mar 6 16:43:36 PDT 2024
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <23.9.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:387021553dfb16aab633228d42f63f04fa932b4f46add07527f296dfe97e5148
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:5339c41013727fa5dd3ae5bc1d51eb90e02e5baa85d4039b1efdde30baeae1ae
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:8d1ec78f2b1ddb7f0c47453d0427231190747bda411733a7dd0c8f5196f09e9c
        - nvcr.io/nvidia/gpu-operator@sha256:3988b3b570cf65b0d338cb29bd24b0b9bf1885e1563fbb398ef23cba0b59e6bb
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:a67d8e92861a2dce5649105c07561e4422e9fe4ba81a6525dc0d70a7ef85f9c0
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:925f4a47710e4318ed457930f5406174c1f6d28b1bf6b1bc310687fec0fde712
        - nvcr.io/nvidia/cuda@sha256:714547d54e5fe4191019a1e5f1daffc7fab7481b619b79c378541dafc76c9e5d
        - nvcr.io/nvidia/k8s-device-plugin@sha256:bb81ae8d034d1e1c6a342091a5f1dda5884dd43ab47e96624487a133d1edd4b3
        - nvcr.io/nvidia/driver@sha256:7481a3697783dcdca9ae78e7b548a6900e86ea33ab49ec14f0ba55db2fdb1a2e
        - nvcr.io/nvidia/driver@sha256:56c79482582cdfbc58d3134e8672637c5bf05f328880f76898f526143d04c6af
        - nvcr.io/nvidia/driver@sha256:abda1ac56371d55917b96ff330109980f468e133c9d5705da0ef87429f14ccd7
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:59a3875e7a37eb370385e654184efa3a1b193c9ea352165818496b19cbe14aa4
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:9aefef081c3ab1123556374d2b15d0429f3990af2fbaccc3c9827801e1042703
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:6a05d6a1923fda756aed0dddf7ed23a83c30cf1e6c519fc39dd70c0309ec8257
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:27c44f4720a4abf780217bd5e7903e4a008ebdbcf71238c4f106a0c22654776c
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:011fb450af3fa2e8fe5d28d590e4c653631447bc23d149591ced3d89089c4f2c
        version: 23.9.2
      entries:
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v23.9
    - currentCSV: gpu-operator-certified.v24.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:96f25c67e5b1072d5981080e12d65ec37eb9ef2fc0494499416aa801b0a34da3",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:041e75a3df84039c2dbbd4b9d67763bd212138822dbb6dbc0008858c1c6eff8d
          createdAt: Tue Apr 30 14:18:26 PDT 2024
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <24.3.0'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:1532fc1351ca44f863feaaf54ba8810be7a62396f98dd292ccaf975fde31ce5b
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:d8774d6afd37110199512636172823ae8749e5ea2e13760f57c255a74f47018c
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:f0e4e14a3081417be8e6a5d855fb0cb69e1b63bc54a74f17e6d7084abe275588
        - nvcr.io/nvidia/gpu-operator@sha256:041e75a3df84039c2dbbd4b9d67763bd212138822dbb6dbc0008858c1c6eff8d
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:0c77725de8c42d248ed825453efd2e005f4900f4be384fd23084f6b721ddd0e0
        - nvcr.io/nvidia/driver@sha256:56c79482582cdfbc58d3134e8672637c5bf05f328880f76898f526143d04c6af
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:7798eb9b9424e09959fc808596f87bdb68ac5740174123c6646dee2166d3e7d2
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:ecb867c5787e44f1889b257e6c03b07748689a7b293c8f1affb1d4cb449b235c
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:2cc2119d20515f8ca7a61a0f3932578d69a45bcdea49e6c320a89c56f105e7d9
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:2edc1d4ed555830e70010c82558936198f5faa86fc29ecf5698219145102cfcc
        - nvcr.io/nvidia/driver@sha256:96f25c67e5b1072d5981080e12d65ec37eb9ef2fc0494499416aa801b0a34da3
        - nvcr.io/nvidia/driver@sha256:a836ccbe21da735aee1c39b81060ed5e2fdb4ffa339874baaf4634f1e9259f74
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:1ae0b923bc57f47bab046b50c50110f6914bbaffbfef704df34b3fe332db2e31
        - nvcr.io/nvidia/k8s-device-plugin@sha256:80674b19898ecf9ed6949e39674da769d6feeeb01bea54b914ef9ff502834f49
        - nvcr.io/nvidia/cuda@sha256:ae0623ec8634b6c88f815b88037763def160cbbac15013b77ddef257fc276c9a
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:2442fd2ec0ee29746abbced727c53741f017e8f3f615321c1ec42c1c3ffa0b12
        version: 24.3.0
      entries:
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v24.3
    - currentCSV: gpu-operator-certified.v24.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:858de27c152669f5a3cf4287406405b16dd5bb70c0373324eb735511997bb415",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:8e0969cffc030a89c4acd68e64d41dd54e3bce8a794106b178d4dbd636a07f1c
          createdAt: Wed Sep 25 08:25:16 PDT 2024
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <24.6.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/driver@sha256:858de27c152669f5a3cf4287406405b16dd5bb70c0373324eb735511997bb415
        - nvcr.io/nvidia/driver@sha256:07e11f85d54d49ec9648fb06e148b8d832ee1f9c3549a915eee853c9ef2949c2
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:fa72cc3e0b09510d71a097b92ee101e057f1c11e1cb363172bd26b2d94272417
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:15dab1273345df4a5844c4c761d064dbc4b592101251dc39174e597137123027
        - nvcr.io/nvidia/k8s-device-plugin@sha256:7ad2c9f71fe06f9f7745ac8635f46740fbdff4f11edd468addfab81afcdfa534
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:969147c01d63be5d1fe458f32f1cc0c7408cf3062531db91408e2fc57b4d8a67
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:7bcc188703f2fac630f7a4ff8960e6733ac3a29adf6a946533b796d9a27b8acf
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:33de74eb590f071403c17b6c210c02963245851971168bc0c07c06c100a9f376
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:ae63fac9a4057a7646f0cf0ee0566e8928529adde05c4c0a017cda0599e381b2
        - nvcr.io/nvidia/driver@sha256:a6d12fb5753f267dda25dfd38910f972bc632c006a24107fa50e20bba3642d7c
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:781fb47e264d9e0fbc8da5bd046e5e678316c866bc36ddd4b56d4eb0de682d5b
        - nvcr.io/nvidia/cuda@sha256:de5b598bca89850567c4c104411d66bb52f47c9179199e6a3be6829b7ac586a2
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:96380b95396b7f29d2ed2ec8ef1ad5a8bcf9f55051db723295dc0a20db845331
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:21f4c8b88716e8e6f732f9fb4c2efaef937c227491a8631c5e55036f80f39a4d
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:740abc3ff657545c10effd5354f09af525200ed9a1b7623f0c2e8c7bd9e4a4e2
        - nvcr.io/nvidia/gpu-operator@sha256:8e0969cffc030a89c4acd68e64d41dd54e3bce8a794106b178d4dbd636a07f1c
        version: 24.6.2
      entries:
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v24.6
    - currentCSV: gpu-operator-certified.v24.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:6fe74322562c726c8fade184d8c45ebae3da7b1ea0a21f0ff9dc42c66c65e692",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:92f5262bb4934e0ea29eb10ec0ad4fc293164f2f2f94d48a935922791abbfdac
          createdAt: Mon Jan 27 16:10:52 PST 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <24.9.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/driver@sha256:d55b57938866e538acc3a71ca32f8cf87e71c591abd4a34695ee428e7ec2fa73
        - nvcr.io/nvidia/gpu-operator@sha256:92f5262bb4934e0ea29eb10ec0ad4fc293164f2f2f94d48a935922791abbfdac
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:857f7669ae5ce2a43a3b5691fa970085098321ef8e90a896fa8dda3dee5b1d2b
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:b072c5793be65eee556eaff1b9cbbd115a1ef29982be95b2959adfcb4bc72382
        - nvcr.io/nvidia/driver@sha256:6fe74322562c726c8fade184d8c45ebae3da7b1ea0a21f0ff9dc42c66c65e692
        - nvcr.io/nvidia/k8s-device-plugin@sha256:7089559ce6153018806857f5049085bae15b3bf6f1c8bd19d8b12f707d087dea
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:34eab99d7992a57c35803ec5e0afd538d16e997341e951fef4c4019afb08793e
        - nvcr.io/nvidia/driver@sha256:38b66a8d44cab9e2c62da9e101f32cd9dbcb5e02d8e57b47671284d374ca3695
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:b897e25e03133513f9afdb5abe38cbf0f2ac0556c27518d9d80e792eb07ecf28
        - nvcr.io/nvidia/cuda@sha256:b3b340847db9abd0c39703278f5638d3e65e1369e9a526a19b3138d5a6563527
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:40830d3561c14743f484d45b498141f9e86b1308e16fae3978110783927264ab
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:d934033f9ff89087d555850eb1da150eaaa27b11e5ad21db1b874b8bc0b8d35b
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:e8398b2451996e5c64fc3855e7a3c93b667a85f69c0e259049d3b0012c21545d
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:4ffa1cd2a6497eb647a89ed259dcfb007554737b9d80f69bc173a2c3cd72a1da
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:7edd7a0413dcb39b6e3bcefaf06812f3293c8e480ca10783e821a561ed686200
        - nvcr.io/nvidia/driver@sha256:026f8f2d29b7058ecaaa5b98666e28e1b3646b73e7d7cda3dc8026d47a929152
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:cf39d78ced7fb5727a9668ee2cd44b14bb7a23a95b83d5464b7d755740e02121
        version: 24.9.2
      entries:
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v24.9
    - currentCSV: gpu-operator-certified.v25.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "cdi": {
                    "enabled": true
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "kernelModuleType": "auto",
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "secretName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": []
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "secretName": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
          createdAt: Wed Dec 3 14:12:01 PST 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <25.10.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:c549346eb993fda62e9bf665aabaacc88abc06b0b24e69635427d4d71c2d5ed4
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:119de9a331a47203858b99901f44d0c4a8052961b4e60327f4b100d0ab8c9df0
        - nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:99187d6b023689f50cf065c77b96ba5aacfa26a618854608a1e31da5e826b765
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:10acae5f724b07faa6e6c7716f3342d3cf2306a2c22971825e1a23753c21e8c3
        - nvcr.io/nvidia/driver@sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:7c0ac4430bb0a5868b7404a0e06c47e02b0375b61aadd614385ad0bc2d43815a
        - nvcr.io/nvidia/driver@sha256:35359117c5cdf786694d2fdba2ba038e7f673c5d0243c9ed4dc6cdaf6e675e4a
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:ef2a0ef6bbf9c43529da3730974de9d51b8436c2314a68e718d437e6ab7c4b58
        - nvcr.io/nvidia/driver@sha256:ef9856ae8491b376364df1f0cad388bcf9983bd2b6c78000523c13536cf828c3
        - nvcr.io/nvidia/cuda@sha256:d19fe621624c4eb6ac931b8558daa3ecc0c3f07f1e2a52e0267e083d22dceade
        - nvcr.io/nvidia/k8s-device-plugin@sha256:50ac011ab941ab0140d52f56aa0e2fdc553bca96836ab3b26be394fc823fd9e7
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:098c01e11589e08ede9ffb3002d1c3dff424f0f0c5d1bfcbfd54a359073f16dd
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:8e0803d2f29776cd4cc0501381a20a0b04b2da507a794d66a15894c57beaadb5
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:5c4e61f7ba83d7a64ff2523d447c209ce5bde1ddc79acaf1f32f19620b4912d6
        version: 25.10.1
      entries:
      - name: gpu-operator-certified.v25.10.1
        version: 25.10.1
      - name: gpu-operator-certified.v25.10.0
        version: 25.10.0
      - name: gpu-operator-certified.v25.3.4
        version: 25.3.4
      - name: gpu-operator-certified.v25.3.3
        version: 25.3.3
      - name: gpu-operator-certified.v25.3.2
        version: 25.3.2
      - name: gpu-operator-certified.v25.3.1
        version: 25.3.1
      - name: gpu-operator-certified.v25.3.0
        version: 25.3.0
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v25.10
    - currentCSV: gpu-operator-certified.v25.3.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "kernelModuleType": "auto",
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": []
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:b6250c461c6226d5fb1383e3e8331e7e0bf07f9ed88a36988bbe5f6cc754d735",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:2e86875d61c030a9bd348a18bde8c4caa3d0c430a1aac642086b9cb1b3e3b015
          createdAt: Thu Sep 18 18:11:36 PDT 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <25.3.4'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:3191cc0684e92d655e72fe9faf3da95fe6b8a6c2eb4ad396f75ba9b98c021aaf
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:5c4e61f7ba83d7a64ff2523d447c209ce5bde1ddc79acaf1f32f19620b4912d6
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:66c3d68ca2b35d47b5562300a10ff8711b953ba3a15df7dbc409d81613ebe5d0
        - nvcr.io/nvidia/driver@sha256:b6250c461c6226d5fb1383e3e8331e7e0bf07f9ed88a36988bbe5f6cc754d735
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:6bb786c41fa7b1a6238c023566fdeaeeea3ba842a8daec015a7bd85a8037b249
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:cbd83ff041c3e6e9a5d76dc2cfa1894893c5e2f92583b16df9c418232cbce78c
        - nvcr.io/nvidia/driver@sha256:44422f10e899d3419fbd611a02fc1c6127e071a2067bd36e3debb043bf251de0
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:b689dfb7806ae51b0072620b47c26114f05477e8ad9725892ee10366e5d93d8d
        - nvcr.io/nvidia/cuda@sha256:d19fe621624c4eb6ac931b8558daa3ecc0c3f07f1e2a52e0267e083d22dceade
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:51c8f71d3b3c08ae4eb4853697e3f8e6f11e435e666e08210178e6a1faf8028f
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:c22dc67465c33d2f17932931229e61a6e7d9e32c5ed2ecefe8d10e873ffedfeb
        - nvcr.io/nvidia/driver@sha256:43aa99352e1dc47e9218f36340ae6328a6282ed1e7e9a61b4204475e980230ef
        - nvcr.io/nvidia/gpu-operator@sha256:2e86875d61c030a9bd348a18bde8c4caa3d0c430a1aac642086b9cb1b3e3b015
        - nvcr.io/nvidia/k8s-device-plugin@sha256:3c54348fe5a57e5700e7d8068e7531d2ef2d5f3ccb70c8f6bac0953432527abd
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:119de9a331a47203858b99901f44d0c4a8052961b4e60327f4b100d0ab8c9df0
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:619e7bf48168d76a7e087c3bf6190fda9b10449c9839309fa4f9ed5b8a9e8804
        version: 25.3.4
      entries:
      - name: gpu-operator-certified.v25.3.4
        version: 25.3.4
      - name: gpu-operator-certified.v25.3.3
        version: 25.3.3
      - name: gpu-operator-certified.v25.3.2
        version: 25.3.2
      - name: gpu-operator-certified.v25.3.1
        version: 25.3.1
      - name: gpu-operator-certified.v25.3.0
        version: 25.3.0
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v25.3
    defaultChannel: v25.10
    packageName: gpu-operator-certified
    provider:
      name: NVIDIA Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-codeartifact-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-codeartifact-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/codeartifact-controller:1.2.0
          createdAt: "2025-11-29T03:28:11Z"
          description: AWS codeartifact controller is a service controller for managing
            codeartifact resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Domain represents the state of an AWS codeartifact Domain
              resource.
            displayName: Domain
            kind: Domain
            name: domains.codeartifact.services.k8s.aws
            version: v1alpha1
          - description: PackageGroup represents the state of an AWS codeartifact
              PackageGroup resource.
            displayName: PackageGroup
            kind: PackageGroup
            name: packagegroups.codeartifact.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon codeartifact resources in AWS from within your Kubernetes cluster.

          **About Amazon codeartifact**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon codeartifact
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - codeartifact
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon codeartifact Developer Resources
          url: https://aws.amazon.com/codeartifact/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: codeartifact maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/codeartifact-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-codeartifact-controller@sha256:03a84cfae8ceb70bc1aa31ea6ceb53c2a8b26dc23ef403d5f5f96b7c169af6a7
        version: 1.2.0
      entries:
      - name: ack-codeartifact-controller.v1.2.0
        version: 1.2.0
      - name: ack-codeartifact-controller.v1.1.2
        version: 1.1.2
      - name: ack-codeartifact-controller.v1.1.1
        version: 1.1.1
      - name: ack-codeartifact-controller.v1.1.0
        version: 1.1.0
      - name: ack-codeartifact-controller.v1.0.13
        version: 1.0.13
      - name: ack-codeartifact-controller.v1.0.11
        version: 1.0.11
      name: alpha
    defaultChannel: alpha
    packageName: ack-codeartifact-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: akaris
      provider-url: https://github.com/andreaskaris/sosreport-operator
    name: sosreport-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sosreport-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "support.openshift.io/v1alpha1",
                "kind": "Sosreport",
                "metadata": {
                  "name": "sosreport-sample"
                },
                "spec": {
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Sosreport is the Schema for the sosreports API
            displayName: Sosreport
            kind: Sosreport
            name: sosreports.support.openshift.io
            version: v1alpha1
        description: Operator that facilitates the generation of sosreports
        displayName: sosreport-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sosreport
        - debugging
        - troubleshooting
        links:
        - name: Sosreport Operator
          url: https://github.com/andreaskaris/sosreport-operator
        maintainers:
        - email: ak.karis@gmail.com
          name: Andreas Karis
        maturity: alpha
        provider:
          name: akaris
          url: https://github.com/andreaskaris/sosreport-operator
        relatedImages:
        - quay.io/akaris/sosreport-operator:0.0.2
        - quay.io/openshift-community-operators/sosreport-operator@sha256:f0d28a3e2ac2e1cbd0c307797b728ad89ac33375135d72054a7b765e274e4bea
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        version: 0.0.2
      entries:
      - name: sosreport-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: sosreport-operator
    provider:
      name: akaris
      url: https://github.com/andreaskaris/sosreport-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sqs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sqs-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sqs.services.k8s.aws/v1alpha1",
                "kind": "Queue",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sqs-controller:1.4.0
          createdAt: "2025-12-29T20:15:44Z"
          description: AWS SQS controller is a service controller for managing SQS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Queue represents the state of an AWS sqs Queue resource.
            displayName: Queue
            kind: Queue
            name: queues.sqs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Simple Queue Service (SQS) resources in AWS from within your Kubernetes cluster.

          **About Amazon SQS**

          Amazon Simple Queue Service (Amazon SQS) offers a secure, durable, and available hosted queue that lets you integrate and decouple distributed software systems and components. Amazon SQS offers common constructs such as [dead-letter queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html) and [cost allocation tags](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html). It provides a generic web services API that you can access using any programming language that the AWS SDK supports.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SQS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sqs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SQS Developer Resources
          url: https://aws.amazon.com/sqs/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: sqs maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sqs-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-sqs-controller@sha256:e34521a92b8763e3bc2cda081cf59b640960403280f33cd53b52f27d385a98e2
        version: 1.4.0
      entries:
      - name: ack-sqs-controller.v1.4.0
        version: 1.4.0
      - name: ack-sqs-controller.v1.3.1
        version: 1.3.1
      - name: ack-sqs-controller.v1.3.0
        version: 1.3.0
      - name: ack-sqs-controller.v1.2.2
        version: 1.2.2
      - name: ack-sqs-controller.v1.2.1
        version: 1.2.1
      - name: ack-sqs-controller.v1.2.0
        version: 1.2.0
      - name: ack-sqs-controller.v1.1.16
        version: 1.1.16
      - name: ack-sqs-controller.v1.1.14
        version: 1.1.14
      - name: ack-sqs-controller.v1.1.13
        version: 1.1.13
      - name: ack-sqs-controller.v1.1.12
        version: 1.1.12
      - name: ack-sqs-controller.v1.1.11
        version: 1.1.11
      - name: ack-sqs-controller.v1.1.10
        version: 1.1.10
      - name: ack-sqs-controller.v1.1.9
        version: 1.1.9
      - name: ack-sqs-controller.v1.1.8
        version: 1.1.8
      - name: ack-sqs-controller.v1.1.7
        version: 1.1.7
      - name: ack-sqs-controller.v1.1.6
        version: 1.1.6
      - name: ack-sqs-controller.v1.1.5
        version: 1.1.5
      - name: ack-sqs-controller.v1.1.4
        version: 1.1.4
      - name: ack-sqs-controller.v1.1.3
        version: 1.1.3
      - name: ack-sqs-controller.v1.1.2
        version: 1.1.2
      - name: ack-sqs-controller.v1.1.1
        version: 1.1.1
      - name: ack-sqs-controller.v1.1.0
        version: 1.1.0
      - name: ack-sqs-controller.v1.0.17
        version: 1.0.17
      - name: ack-sqs-controller.v1.0.16
        version: 1.0.16
      - name: ack-sqs-controller.v1.0.15
        version: 1.0.15
      - name: ack-sqs-controller.v1.0.14
        version: 1.0.14
      - name: ack-sqs-controller.v1.0.13
        version: 1.0.13
      - name: ack-sqs-controller.v1.0.12
        version: 1.0.12
      - name: ack-sqs-controller.v1.0.10
        version: 1.0.10
      - name: ack-sqs-controller.v1.0.7
        version: 1.0.7
      - name: ack-sqs-controller.v1.0.5
        version: 1.0.5
      - name: ack-sqs-controller.v1.0.3
        version: 1.0.3
      - name: ack-sqs-controller.v1.0.2
        version: 1.0.2
      - name: ack-sqs-controller.v1.0.1
        version: 1.0.1
      - name: ack-sqs-controller.v1.0.0
        version: 1.0.0
      - name: ack-sqs-controller.v0.0.7
        version: 0.0.7
      - name: ack-sqs-controller.v0.0.6
        version: 0.0.6
      - name: ack-sqs-controller.v0.0.5
        version: 0.0.5
      - name: ack-sqs-controller.v0.0.4
        version: 0.0.4
      - name: ack-sqs-controller.v0.0.2
        version: 0.0.2
      - name: ack-sqs-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-sqs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Apache Software Foundation
      provider-url: ""
    name: camel-k
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: camel-k-operator.v2.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.0.1
          createdAt: "2023-09-04T12:32:38Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
          - kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - quay.io/openshift-community-operators/camel-k@sha256:d96f1b35ef30d6701f2a52b5e660dbd5378ec82a933afd38d2eb603c9ca084fd
        - docker.io/apache/camel-k:2.0.1
        version: 2.0.1
      entries:
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: candidate
    - currentCSV: camel-k-operator.v2.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "setBody": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationProfile",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "debug"
                },
                "spec": {
                  "traits": {
                    "logging": {
                      "level": "DEBUG"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example-source"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "setBody": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "timer-to-log-example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "log-sink"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world",
                      "period": 2000
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "timer-source"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.9.0
          createdAt: "2025-12-23T11:28:00Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: IntegrationProfile is the Schema for the integrationprofiles
              API
            displayName: Integration Profile
            kind: IntegrationProfile
            name: integrationprofiles.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Pipe is the Schema for the pipes API
            displayName: Pipe
            kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers:
          the easiest way to build and manage your Camel applications on Kubernetes.

          ## Installation

          You may need to specify the container registry where to store the container images created for the Camel applications.
          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          spec:
            build:
              registry:
                address: docker.io/my-org
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step when using Openshift cluster.

          ## Running an Integration

          Run a Camel application on the cluster by creating a sample `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            annotations:
              camel.apache.org/operator.id: camel-k
            name: test
          spec:
            flows:
            - from:
                parameters:
                  period: "1000"
                steps:
                - setBody:
                    simple: Hello Camel from ${routeId}
                - log: ${body}
                uri: timer:yaml
          ```
          Log the result of the running application:
          ```
          kubectl wait --for=condition=ready integration test --timeout=180s
          kubectl logs deployment/test -f
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:2.9.0
        - quay.io/community-operator-pipeline-prod/camel-k@sha256:4c8f4494ede7ef0f6d3564356928e9642571e14eb95ba20d8264325bc4d8c576
        version: 2.9.0
      entries:
      - name: camel-k-operator.v2.9.0
        version: 2.9.0
      - name: camel-k-operator.v2.8.0
        version: 2.8.0
      - name: camel-k-operator.v2.7.0
        version: 2.7.0
      - name: camel-k-operator.v2.6.0
        version: 2.6.0
      - name: camel-k-operator.v2.5.1
        version: 2.5.1
      - name: camel-k-operator.v2.5.0
        version: 2.5.0
      - name: camel-k-operator.v2.4.0
        version: 2.4.0
      - name: camel-k-operator.v2.3.3
        version: 2.3.3
      - name: camel-k-operator.v2.3.2
        version: 2.3.2
      - name: camel-k-operator.v2.3.1
        version: 2.3.1
      - name: camel-k-operator.v2.3.0
        version: 2.3.0
      - name: camel-k-operator.v2.2.0
        version: 2.2.0
      - name: camel-k-operator.v2.1.0
        version: 2.1.0
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: latest
    - currentCSV: camel-k-operator.v1.12.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.12.0
          createdAt: "2023-02-27T09:01:55Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.12.0
        - quay.io/openshift-community-operators/camel-k@sha256:60a9e4b05e7eb17ebfe58dd55db96ab2c68580d9282117f74f21869cb63e4a73
        version: 1.12.0
      entries:
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable
    - currentCSV: camel-k-operator.v1.10.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.10.4
          createdAt: "2023-01-28T13:49:05Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.10.4
        - quay.io/openshift-community-operators/camel-k@sha256:1461576c2e06c2ee8d84fd40836184566a346ed596b99cb81fe6a08d0ad99096
        version: 1.10.4
      entries:
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.10
    - currentCSV: camel-k-operator.v1.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.11.1
          createdAt: "2023-01-30T08:45:04Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.11.1
        - quay.io/openshift-community-operators/camel-k@sha256:2b8369f729c18384f45a458e88c9f551eb00f26792b40dbf286e6ea2837e9400
        version: 1.11.1
      entries:
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.11
    - currentCSV: camel-k-operator.v1.12.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.12.1
          createdAt: "2023-06-12T08:46:58Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.12.1
        - quay.io/openshift-community-operators/camel-k@sha256:6154ff0f72c9c49f1b7ea0edbe93e0a3b04f6e63abbd851d0e6706796050d672
        version: 1.12.1
      entries:
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.12
    - currentCSV: camel-k-operator.v1.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.5.1
          createdAt: "2021-08-31T09:03:41Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - quay.io/openshift-community-operators/camel-k@sha256:21ce00e81ce495c142cbe9611f494cfb26b52b3c09a507bee0572c1e1e3333d7
        - docker.io/apache/camel-k:1.5.1
        version: 1.5.1
      entries:
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.5
    - currentCSV: camel-k-operator.v1.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.6.1
          createdAt: "2021-10-27T21:06:20Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.6.1
        - quay.io/openshift-community-operators/camel-k@sha256:26df9d918e942f7fc637212df87a114b5edd52570da18cc212b3499354cdb993
        version: 1.6.1
      entries:
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.6
    - currentCSV: camel-k-operator.v1.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.7.0
          createdAt: "2021-11-16T10:54:12Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.8.1+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.7.0
        - quay.io/openshift-community-operators/camel-k@sha256:11dac0881f5ed66b5d42b2d69b13aba31cd56e6b32157cb3ce977be197189b79
        version: 1.7.0
      entries:
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.7
    - currentCSV: camel-k-operator.v1.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.8.2
          createdAt: "2022-03-07T07:13:19Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.8.2
        - quay.io/openshift-community-operators/camel-k@sha256:cba8cde86a870b31f7dae9a554f4c496ed81731f91a8e64cd62b0caa88efaa38
        version: 1.8.2
      entries:
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.8
    - currentCSV: camel-k-operator.v1.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.9.2
          createdAt: "2022-05-23T09:05:22Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.9.2
        - quay.io/openshift-community-operators/camel-k@sha256:06d31bb777b37f8f7c8981efc24ca26a2f9c56a1c579243d0c7bdddb34c76a98
        version: 1.9.2
      entries:
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.9
    - currentCSV: camel-k-operator.v2.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.0.1
          createdAt: "2023-09-04T12:32:38Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
          - kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:2.0.1
        - quay.io/openshift-community-operators/camel-k@sha256:d96f1b35ef30d6701f2a52b5e660dbd5378ec82a933afd38d2eb603c9ca084fd
        version: 2.0.1
      entries:
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-2.0
    - currentCSV: camel-k-operator.v2.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "setBody": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationProfile",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "debug"
                },
                "spec": {
                  "traits": {
                    "logging": {
                      "level": "DEBUG"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example-source"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "setBody": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "timer-to-log-example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "log-sink"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world",
                      "period": 2000
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "timer-source"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.9.0
          createdAt: "2025-12-23T11:28:00Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: IntegrationProfile is the Schema for the integrationprofiles
              API
            displayName: Integration Profile
            kind: IntegrationProfile
            name: integrationprofiles.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Pipe is the Schema for the pipes API
            displayName: Pipe
            kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers:
          the easiest way to build and manage your Camel applications on Kubernetes.

          ## Installation

          You may need to specify the container registry where to store the container images created for the Camel applications.
          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          spec:
            build:
              registry:
                address: docker.io/my-org
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step when using Openshift cluster.

          ## Running an Integration

          Run a Camel application on the cluster by creating a sample `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            annotations:
              camel.apache.org/operator.id: camel-k
            name: test
          spec:
            flows:
            - from:
                parameters:
                  period: "1000"
                steps:
                - setBody:
                    simple: Hello Camel from ${routeId}
                - log: ${body}
                uri: timer:yaml
          ```
          Log the result of the running application:
          ```
          kubectl wait --for=condition=ready integration test --timeout=180s
          kubectl logs deployment/test -f
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:2.9.0
        - quay.io/community-operator-pipeline-prod/camel-k@sha256:4c8f4494ede7ef0f6d3564356928e9642571e14eb95ba20d8264325bc4d8c576
        version: 2.9.0
      entries:
      - name: camel-k-operator.v2.9.0
        version: 2.9.0
      - name: camel-k-operator.v2.8.0
        version: 2.8.0
      - name: camel-k-operator.v2.7.0
        version: 2.7.0
      - name: camel-k-operator.v2.6.0
        version: 2.6.0
      - name: camel-k-operator.v2.5.1
        version: 2.5.1
      - name: camel-k-operator.v2.5.0
        version: 2.5.0
      - name: camel-k-operator.v2.4.0
        version: 2.4.0
      - name: camel-k-operator.v2.3.3
        version: 2.3.3
      - name: camel-k-operator.v2.3.2
        version: 2.3.2
      - name: camel-k-operator.v2.3.1
        version: 2.3.1
      - name: camel-k-operator.v2.3.0
        version: 2.3.0
      - name: camel-k-operator.v2.2.0
        version: 2.2.0
      - name: camel-k-operator.v2.1.0
        version: 2.1.0
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-v2
    defaultChannel: stable-v2
    packageName: camel-k
    provider:
      name: The Apache Software Foundation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: openshift-secondary-scheduler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: secondaryscheduleroperator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "SecondaryScheduler",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-secondary-scheduler-operator"
                },
                "spec": {
                  "managementState": "Managed",
                  "schedulerConfig": "secondary-scheduler-config"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/openshift-secondary-scheduler-operator/secondary-scheduler-rhel9-operator@sha256:65253da24ed65e7da75d3b523c459617ce5fc71259673569b05970d2c6e9e65e
          createdAt: 2025/08/24
          description: Runs a secondary scheduler in an OpenShift cluster.
          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: "true"
          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.skipRange: '>=1.4.0 <1.5.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-secondary-scheduler-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/secondary-scheduler-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SecondaryScheduler is the schema for the secondaryschedulers
              API
            displayName: Secondary Scheduler
            kind: SecondaryScheduler
            name: secondaryschedulers.operator.openshift.io
            version: v1
        description: |
          The Secondary Scheduler Operator provides the ability to use a customized scheduler image that was developed using the scheduler plugin framework as a secondary scheduler in OpenShift.

          ## Secondary Scheduler Configuration

          Once the Secondary Scheduler Operator is installed, you can configure the plugins to run for your secondary scheduler.

          The configuration of the secondary scheduler is defined through a config map that wraps the KubeSchedulerConfiguration YAML file in "config.yaml".

          ## Additional Parameters

          Additionally, the following parameters can be configured:

          * `schedulerConfig` - Set the config map configuration for the secondary scheduler.
          * `schedulerImage` - Set the default operand image for the secondary scheduler.
        displayName: Secondary Scheduler Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - secondary
        - scheduling
        - workload
        links:
        - name: Source Code
          url: https://github.com/openshift/secondary-scheduler-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.33.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-secondary-scheduler-operator/secondary-scheduler-rhel9-operator@sha256:65253da24ed65e7da75d3b523c459617ce5fc71259673569b05970d2c6e9e65e
        - registry.redhat.io/openshift-secondary-scheduler-operator/secondary-scheduler-operator-bundle@sha256:a3667f085cb4f043f342d2470471e016fd50ddd4aed83ec88365a01709bc5732
        version: 1.5.0
      entries:
      - name: secondaryscheduleroperator.v1.5.0
        version: 1.5.0
      - name: secondaryscheduleroperator.v1.4.1
        version: 1.4.1
      - name: secondaryscheduleroperator.v1.4.0
        version: 1.4.0
      - name: secondaryscheduleroperator.v1.3.1
        version: 1.3.1
      - name: secondaryscheduleroperator.v1.3.0
        version: 1.3.0
      - name: secondaryscheduleroperator.v1.2.2
        version: 1.2.2
      - name: secondaryscheduleroperator.v1.2.1
        version: 1.2.1
      - name: secondaryscheduleroperator.v1.2.0
        version: 1.2.0
      - name: secondaryscheduleroperator.v1.1.4
        version: 1.1.4
      - name: secondaryscheduleroperator.v1.1.3
        version: 1.1.3
      - name: secondaryscheduleroperator.v1.1.2
        version: 1.1.2
      - name: secondaryscheduleroperator.v1.1.1
        version: 1.1.1
      - name: secondaryscheduleroperator.v1.1.0
        version: 1.1.0
      name: stable
    defaultChannel: stable
    packageName: openshift-secondary-scheduler-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: local-storage-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: local-storage-operator.v4.20.0-202511252120
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "local.storage.openshift.io/v1",
                "kind": "LocalVolume",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "nodeSelector": {
                    "nodeSelectorTerms": [
                      {
                        "matchExpressions": [
                          {
                            "key": "kubernetes.io/hostname",
                            "operator": "In",
                            "values": [
                              "worker-0",
                              "worker-1"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "storageClassDevices": [
                    {
                      "devicePaths": [
                        "/dev/disk/by-id/ata-crucial"
                      ],
                      "fsType": "ext4",
                      "storageClassName": "foobar",
                      "volumeMode": "Filesystem"
                    }
                  ]
                }
              },
              {
                "apiVersion": "local.storage.openshift.io/v1alpha1",
                "kind": "LocalVolumeSet",
                "metadata": {
                  "name": "example-localvolumeset"
                },
                "spec": {
                  "deviceInclusionSpec": {
                    "deviceMechanicalProperties": [
                      "Rotational",
                      "NonRotational"
                    ],
                    "deviceTypes": [
                      "disk"
                    ],
                    "maxSize": "100G",
                    "minSize": "10G"
                  },
                  "maxDeviceCount": 10,
                  "nodeSelector": {
                    "nodeSelectorTerms": [
                      {
                        "matchExpressions": [
                          {
                            "key": "kubernetes.io/hostname",
                            "operator": "In",
                            "values": [
                              "worker-0",
                              "worker-1"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "storageClassName": "example-storageclass",
                  "volumeMode": "Block"
                }
              },
              {
                "apiVersion": "local.storage.openshift.io/v1alpha1",
                "kind": "LocalVolumeDiscovery",
                "metadata": {
                  "name": "auto-discover-devices"
                },
                "spec": {
                  "nodeSelector": {
                    "nodeSelectorTerms": [
                      {
                        "matchExpressions": [
                          {
                            "key": "kubernetes.io/hostname",
                            "operator": "In",
                            "values": [
                              "worker-0",
                              "worker-1"
                            ]
                          }
                        ]
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-local-storage-rhel9-operator@sha256:5c4a51b66e2208caf77f72b7b78019ae6806c7d5aef6969c76ebd7b6c1335149
          createdAt: "2019-08-14T00:00:00Z"
          description: Configure and use local storage volumes.
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type":"olm.maxOpenShiftVersion","value":"4.21"}]'
          olm.skipRange: '>=4.3.0 <4.20.0-202511252120'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-local-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["localvolumediscoveryresults.local.storage.openshift.io"]'
          repository: https://github.com/openshift/local-storage-operator
          support: Red Hat
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Manage local storage volumes for OpenShift
            displayName: Local Volume
            kind: LocalVolume
            name: localvolumes.local.storage.openshift.io
            version: v1
          - description: A Local Volume set allows you to filter a set of storage
              volumes, group them and create a dedicated storage class to consume
              storage from the set of volumes.
            displayName: Local Volume Set
            kind: LocalVolumeSet
            name: localvolumesets.local.storage.openshift.io
            version: v1alpha1
          - description: Discover list of potentially usable disks on the chosen set
              of nodes
            displayName: Local Volume Discovery
            kind: LocalVolumeDiscovery
            name: localvolumediscoveries.local.storage.openshift.io
            version: v1alpha1
          - description: Disc inventory of available disks from selected nodes
            displayName: Local Volume Discovery Result
            kind: LocalVolumeDiscoveryResult
            name: localvolumediscoveryresults.local.storage.openshift.io
            version: v1alpha1
        description: |
          Operator that configures local storage volumes for use in Kubernetes and OpenShift. OpenShift 4.2 and above are the only supported OpenShift versions.
        displayName: Local Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        - local storage
        links:
        - name: Documentation
          url: https://github.com/openshift/local-storage-operator/tree/main/docs
        - name: Source Repository
          url: https://github.com/openshift/local-storage-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:5d7478a62742900e39d7b007dde5375cd06c6076ced6dab69d805f5fcce3f342
        - registry.redhat.io/openshift4/ose-local-storage-diskmaker-rhel9@sha256:11fb666a558fd9bf3afac21146fd229e1bc207d1670d9bb1c2299d8c57b5800e
        - registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel9@sha256:f1343acbe5e8cd47a3ca5a52407356e9403a6ca9cc1a2c81e09aadc5f0619aa2
        - registry.redhat.io/openshift4/ose-local-storage-rhel9-operator@sha256:5c4a51b66e2208caf77f72b7b78019ae6806c7d5aef6969c76ebd7b6c1335149
        - registry.redhat.io/openshift4/ose-local-storage-operator-bundle@sha256:7f14582c0d63f02a3ad9201d8c90c762de2f131d62ce3a3b201f7e8ffdfa3153
        version: 4.20.0-202511252120
      entries:
      - name: local-storage-operator.v4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: local-storage-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: local-storage-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: local-storage-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: local-storage-operator.v4.20.0-202510212154
        version: 4.20.0-202510212154
      - name: local-storage-operator.v4.20.0-202509262224
        version: 4.20.0-202509262224
      name: stable
    defaultChannel: stable
    packageName: local-storage-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Craig Trought
      provider-url: ""
    name: prometheus
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometheusoperator.0.56.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "Prometheus",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "replicas": 2,
                  "serviceAccountName": "prometheus-k8s",
                  "serviceMonitorSelector": {},
                  "ruleSelector": {},
                  "podMonitorSelector": {},
                  "probeSelector": {},
                  "alerting": {
                    "alertmanagers": [
                      {
                        "namespace": "monitoring",
                        "name": "alertmanager-main",
                        "port": "web"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "ServiceMonitor",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "selector": {
                    "matchLabels": {
                      "operated-prometheus": "true"
                    }
                  },
                  "endpoints": [
                    {
                      "port": "web",
                      "interval": "30s"
                    }
                  ]
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "PodMonitor",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "selector": {
                    "matchLabels": {
                      "app": "prometheus"
                    }
                  },
                  "podMetricsEndpoints": [
                    {
                      "port": "web",
                      "interval": "30s"
                    }
                  ]
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "Alertmanager",
                "metadata": {
                  "name": "alertmanager-main"
                },
                "spec": {
                  "replicas": 3,
                  "alertmanagerConfigSelector": {}
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "PrometheusRule",
                "metadata": {
                  "name": "prometheus-example-rules"
                },
                "spec": {
                  "groups": [
                    {
                      "name": "./example.rules",
                      "rules": [
                        {
                          "alert": "ExampleAlert",
                          "expr": "vector(1)"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1alpha1",
                "kind": "AlertmanagerConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "receivers": [
                    {
                      "name": "example"
                    }
                  ],
                  "route": {
                    "receiver": "example"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/prometheus-operator/prometheus-operator:v0.56.3
          createdAt: "2022-05-24T9:40:00Z"
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          repository: https://github.com/prometheus-operator/prometheus-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A running Prometheus instance
            displayName: Prometheus
            kind: Prometheus
            name: prometheuses.monitoring.coreos.com
            version: v1
          - description: A Prometheus Rule configures groups of sequentially evaluated
              recording and alerting rules.
            displayName: Prometheus Rule
            kind: PrometheusRule
            name: prometheusrules.monitoring.coreos.com
            version: v1
          - description: Configures prometheus to monitor a particular k8s service
            displayName: Service Monitor
            kind: ServiceMonitor
            name: servicemonitors.monitoring.coreos.com
            version: v1
          - description: Configures prometheus to monitor a particular pod
            displayName: Pod Monitor
            kind: PodMonitor
            name: podmonitors.monitoring.coreos.com
            version: v1
          - description: Configures an Alertmanager for the namespace
            displayName: Alertmanager
            kind: Alertmanager
            name: alertmanagers.monitoring.coreos.com
            version: v1
          - description: Configures subsections of Alertmanager configuration specific
              to each namespace
            displayName: AlertmanagerConfig
            kind: AlertmanagerConfig
            name: alertmanagerconfigs.monitoring.coreos.com
            version: v1alpha1
          - description: Defines how groups of ingresses and static targets should
              be monitored.
            displayName: Probe
            kind: Probe
            name: probes.monitoring.coreos.com
            version: v1
          - description: Allows recording and alerting rules to be processed across
              multiple Prometheus instances.
            displayName: ThanosRuler
            kind: ThanosRuler
            name: thanosrulers.monitoring.coreos.com
            version: v1
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: k8s@trought.ca
          name: Craig Trought
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Craig Trought
        relatedImages:
        - quay.io/prometheus-operator/prometheus-operator:v0.56.3
        - quay.io/openshift-community-operators/prometheus@sha256:1de089becfcceb3747b3a3ce310c1612861b03446906cab5e981071db10709a9
        version: 0.56.3
      entries:
      - name: prometheusoperator.0.56.3
        version: 0.56.3
      - name: prometheusoperator.0.47.0
        version: 0.47.0
      name: beta
    defaultChannel: beta
    packageName: prometheus
    provider:
      name: Craig Trought
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-dynamodb-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-dynamodb-controller.v1.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dynamodb.services.k8s.aws/v1alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "dynamodb.services.k8s.aws/v1alpha1",
                "kind": "GlobalTable",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "dynamodb.services.k8s.aws/v1alpha1",
                "kind": "Table",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/dynamodb-controller:1.7.0
          createdAt: "2025-11-29T03:42:45Z"
          description: AWS DynamoDB controller is a service controller for managing
            DynamoDB resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup represents the state of an AWS dynamodb Backup resource.
            displayName: Backup
            kind: Backup
            name: backups.dynamodb.services.k8s.aws
            version: v1alpha1
          - description: GlobalTable represents the state of an AWS dynamodb GlobalTable
              resource.
            displayName: GlobalTable
            kind: GlobalTable
            name: globaltables.dynamodb.services.k8s.aws
            version: v1alpha1
          - description: Table represents the state of an AWS dynamodb Table resource.
            displayName: Table
            kind: Table
            name: tables.dynamodb.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon DynamoDB resources in AWS from within your Kubernetes cluster.

          **About Amazon DynamoDB**

          Amazon DynamoDB is a fully managed NoSQL database service that provides fast and predictable performance with seamless scalability. DynamoDB lets you offload the administrative burdens of operating and scaling a distributed database so that you don't have to worry about hardware provisioning, setup and configuration, replication, software patching, or cluster scaling. DynamoDB also offers encryption at rest, which eliminates the operational burden and complexity involved in protecting sensitive data. For more information, see [DynamoDB Encryption at Rest](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/EncryptionAtRest.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon DynamoDB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dynamodb
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon DynamoDB Developer Resources
          url: https://aws.amazon.com/dynamodb/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: dynamodb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-dynamodb-controller@sha256:974e2c7cbe0b9de1106f9a7b95c2d0a38d67114af19e95d729d0231cb6052a21
        - public.ecr.aws/aws-controllers-k8s/dynamodb-controller:1.7.0
        version: 1.7.0
      entries:
      - name: ack-dynamodb-controller.v1.7.0
        version: 1.7.0
      - name: ack-dynamodb-controller.v1.6.1
        version: 1.6.1
      - name: ack-dynamodb-controller.v1.6.0
        version: 1.6.0
      - name: ack-dynamodb-controller.v1.5.2
        version: 1.5.2
      - name: ack-dynamodb-controller.v1.5.1
        version: 1.5.1
      - name: ack-dynamodb-controller.v1.5.0
        version: 1.5.0
      - name: ack-dynamodb-controller.v1.4.10
        version: 1.4.10
      - name: ack-dynamodb-controller.v1.4.9
        version: 1.4.9
      - name: ack-dynamodb-controller.v1.4.7
        version: 1.4.7
      - name: ack-dynamodb-controller.v1.4.6
        version: 1.4.6
      - name: ack-dynamodb-controller.v1.4.5
        version: 1.4.5
      - name: ack-dynamodb-controller.v1.4.4
        version: 1.4.4
      - name: ack-dynamodb-controller.v1.4.3
        version: 1.4.3
      - name: ack-dynamodb-controller.v1.4.2
        version: 1.4.2
      - name: ack-dynamodb-controller.v1.4.1
        version: 1.4.1
      - name: ack-dynamodb-controller.v1.3.0
        version: 1.3.0
      - name: ack-dynamodb-controller.v1.2.23
        version: 1.2.23
      - name: ack-dynamodb-controller.v1.2.22
        version: 1.2.22
      - name: ack-dynamodb-controller.v1.2.21
        version: 1.2.21
      - name: ack-dynamodb-controller.v1.2.20
        version: 1.2.20
      - name: ack-dynamodb-controller.v1.2.15
        version: 1.2.15
      - name: ack-dynamodb-controller.v1.2.14
        version: 1.2.14
      - name: ack-dynamodb-controller.v1.2.13
        version: 1.2.13
      - name: ack-dynamodb-controller.v1.2.12
        version: 1.2.12
      - name: ack-dynamodb-controller.v1.2.11
        version: 1.2.11
      - name: ack-dynamodb-controller.v1.2.9
        version: 1.2.9
      - name: ack-dynamodb-controller.v1.2.8
        version: 1.2.8
      - name: ack-dynamodb-controller.v1.2.6
        version: 1.2.6
      - name: ack-dynamodb-controller.v1.2.5
        version: 1.2.5
      - name: ack-dynamodb-controller.v1.2.4
        version: 1.2.4
      - name: ack-dynamodb-controller.v1.2.2
        version: 1.2.2
      - name: ack-dynamodb-controller.v1.2.1
        version: 1.2.1
      - name: ack-dynamodb-controller.v1.2.0
        version: 1.2.0
      - name: ack-dynamodb-controller.v1.1.1
        version: 1.1.1
      - name: ack-dynamodb-controller.v1.1.0
        version: 1.1.0
      - name: ack-dynamodb-controller.v1.0.3
        version: 1.0.3
      - name: ack-dynamodb-controller.v1.0.2
        version: 1.0.2
      - name: ack-dynamodb-controller.v1.0.1
        version: 1.0.1
      - name: ack-dynamodb-controller.v1.0.0
        version: 1.0.0
      - name: ack-dynamodb-controller.v0.1.10
        version: 0.1.10
      - name: ack-dynamodb-controller.v0.1.9
        version: 0.1.9
      - name: ack-dynamodb-controller.v0.1.8
        version: 0.1.8
      - name: ack-dynamodb-controller.v0.1.7
        version: 0.1.7
      - name: ack-dynamodb-controller.v0.1.6
        version: 0.1.6
      - name: ack-dynamodb-controller.v0.1.5
        version: 0.1.5
      - name: ack-dynamodb-controller.v0.1.4
        version: 0.1.4
      - name: ack-dynamodb-controller.v0.1.3
        version: 0.1.3
      - name: ack-dynamodb-controller.v0.1.1
        version: 0.1.1
      - name: ack-dynamodb-controller.v0.1.0
        version: 0.1.0
      - name: ack-dynamodb-controller.v0.0.20
        version: 0.0.20
      - name: ack-dynamodb-controller.v0.0.19
        version: 0.0.19
      - name: ack-dynamodb-controller.v0.0.18
        version: 0.0.18
      - name: ack-dynamodb-controller.v0.0.17
        version: 0.0.17
      - name: ack-dynamodb-controller.v0.0.16
        version: 0.0.16
      - name: ack-dynamodb-controller.v0.0.15
        version: 0.0.15
      - name: ack-dynamodb-controller.v0.0.14
        version: 0.0.14
      - name: ack-dynamodb-controller.v0.0.13
        version: 0.0.13
      - name: ack-dynamodb-controller.v0.0.12
        version: 0.0.12
      - name: ack-dynamodb-controller.v0.0.11
        version: 0.0.11
      - name: ack-dynamodb-controller.v0.0.10
        version: 0.0.10
      - name: ack-dynamodb-controller.v0.0.9
        version: 0.0.9
      - name: ack-dynamodb-controller.v0.0.8
        version: 0.0.8
      name: alpha
    defaultChannel: alpha
    packageName: ack-dynamodb-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: networkservicemesh.io
      provider-url: networkservicemesh.io
    name: nsm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nsm-operator.v1.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nsm.networkservicemesh.io/v1alpha1",
                "kind": "NSM",
                "metadata": {
                  "name": "nsm-sample",
                  "namespace": "nsm"
                },
                "spec": {
                  "forwarders": [
                    {
                      "image": "ghcr.io/networkservicemesh/cmd-forwarder-vpp:v1.8.0",
                      "type": "vpp"
                    }
                  ],
                  "nsmLogLevel": "TRACE",
                  "nsmPullPolicy": "IfNotPresent",
                  "registry": {
                    "image": "ghcr.io/networkservicemesh/cmd-registry-memory:v1.8.0",
                    "type": "memory"
                  },
                  "version": "v1.8.0",
                  "webhook": {
                    "image": "ghcr.io/networkservicemesh/admission-webhook-k8s:v1.8.0"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: quay.io/acmenezes/nsm-operator:v1.8.0
          createdAt: "2023-03-02T19:36:46Z"
          operatorframework.io/suggested-namespace: nsm
          operators.operatorframework.io/builder: operator-sdk-v1.26.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/networkservicemesh/nsm-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NetworkServiceEndpoint
            name: networkserviceendpoints.networkservicemesh.io
            version: v1
          - kind: NetworkService
            name: networkservices.networkservicemesh.io
            version: v1
          - kind: NSM
            name: nsms.nsm.networkservicemesh.io
            version: v1alpha1
        description: |-
          The Network Service Mesh Operator manages and install network service meshes.

          Check networkservicemesh.io

          Install requirements:

          Before installing the operator it's necessary to have installed [spire](https://github.com/spiffe/spire)

          We have a ready to install yaml file for spire [here](https://github.com/networkservicemesh/nsm-operator/blob/master/config/spire/spire.yaml)
        displayName: nsm-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network
        - service mesh
        links:
        - name: Nsm Operator
          url: https://nsm-operator.domain
        maintainers:
        - email: adcmenezes@gmail.com
          name: Alexandre Menezes
        maturity: alpha
        provider:
          name: networkservicemesh.io
          url: networkservicemesh.io
        relatedImages:
        - quay.io/openshift-community-operators/nsm-operator@sha256:330a930f885dacf65537beb600fe7f428e02687e83778e47dcda3dc2df15ae24
        - quay.io/acmenezes/nsm-operator:v1.8.0
        version: 1.8.0
      entries:
      - name: nsm-operator.v1.8.0
        version: 1.8.0
      name: alpha
    defaultChannel: alpha
    packageName: nsm-operator
    provider:
      name: networkservicemesh.io
      url: networkservicemesh.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com
    name: ibm-security-verify-access-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-security-verify-access-operator.v25.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ibm.com/v1",
                "kind": "IBMSecurityVerifyAccess",
                "metadata": {
                  "name": "ivia-sample"
                },
                "spec": {
                  "image": "icr.io/ivia/ivia-wrp@sha256:c2dd5ec2b362136896e47ccbd0f3ee033af945fc2794ddaf075da603e4d4d7b2",
                  "instance": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: icr.io/isva/verify-access-operator@sha256:ca1d7be14b4dd313d4675f18541b2cc670ea0a0adf3ec87e347e5e20a86bc39c
          createdAt: "2025-05-01T01:27:17Z"
          description: The IBM Verify Identity Access Operator manages the lifecycle
            of IBM Verify Identity Access worker containers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM-Security/verify-access-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBMSecurityVerifyAccess is the Schema for the ibmsecurityverifyaccesses
              API.
            displayName: IBMSecurity Verify Access
            kind: IBMSecurityVerifyAccess
            name: ibmsecurityverifyaccesses.ibm.com
            version: v1
        description: |+
          In a world of highly fragmented access management environments, [IBM Verify Identity Access](https://www.ibm.com/au-en/products/verify-access) helps you simplify your users' access while more securely adopting web, mobile and cloud technologies. This solution helps you strike a balance between usability and security through the use of risk-based access, single sign-on, integrated access management control, identity federation and its mobile multi-factor authentication capability, IBM Verify. Take back control of your access management with IBM Verify Identity Access.

          The IBM Verify Identity Access operator provides lifecycle management of the lightweight containers which are used to protect an environment, namely:
          * [Web Reverse Proxy](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-web-reverse-proxy)
          * [Runtime](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-runtime)
          * [Distributed Session Cache](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-distributed-session-cache)

          The operator will manage the deployment of these lightweight IBM Verify Identity Access worker containers, and also control the rolling restart of these containers when a configuration snapshot is updated.

          See the project [Readme](https://github.com/IBM-Security/verify-access-operator/blob/master/README.md) for further information and details.

        displayName: IBM Verify Identity Access Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - identity and access
        - security
        links:
        - name: Verify Identity Access Product Information
          url: https://www.ibm.com/au-en/products/verify-access
        - name: Verify Identity Access Documentation
          url: https://www.ibm.com/docs/en/sva
        maintainers:
        - email: isamdev@au1.ibm.com
          name: Verify Identity Access Development Team
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: IBM
          url: https://www.ibm.com
        relatedImages:
        - registry.connect.redhat.com/ibm/verify-access-operator@sha256:6e37f565564de371b5797895f3e96e0efd4f592d7d3e899ea8507438bdb60e78
        - icr.io/isva/verify-access-operator@sha256:ca1d7be14b4dd313d4675f18541b2cc670ea0a0adf3ec87e347e5e20a86bc39c
        - icr.io/ivia/ivia-wrp@sha256:c2dd5ec2b362136896e47ccbd0f3ee033af945fc2794ddaf075da603e4d4d7b2
        version: 25.4.0
      entries:
      - name: ibm-security-verify-access-operator.v25.4.0
        version: 25.4.0
      - name: ibm-security-verify-access-operator.v24.12.0
        version: 24.12.0
      name: stable
    defaultChannel: stable
    packageName: ibm-security-verify-access-operator
    provider:
      name: IBM
      url: https://www.ibm.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HPE
      provider-url: ""
    name: hpe-filex-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hpe-filex-csi-operator.v2.6.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "storage.hpe.com/v1",
                "kind": "HPEGreenLakeFileCSIDriver",
                "metadata": {
                  "name": "hpegreenlakefilecsidriver-sample"
                },
                "spec": {
                  "controller": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  },
                  "disableNodeConformance": false,
                  "imagePullPolicy": "IfNotPresent",
                  "images": {
                    "csiAttacher": "registry.k8s.io/sig-storage/csi-attacher@sha256:a399393ff5bd156277c56bae0c08389b1a1b95b7fd6ea44a316ce55e0dd559d7",
                    "csiControllerDriver": "quay.io/hpestorage/filex-csi-driver@sha256:b7f960bbf47277f6469889aba79d4c9866712130e28f32fc48f2ef3a5ca99ef7",
                    "csiNodeDriver": "quay.io/hpestorage/filex-csi-driver@sha256:b7f960bbf47277f6469889aba79d4c9866712130e28f32fc48f2ef3a5ca99ef7",
                    "csiNodeDriverRegistrar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a",
                    "csiNodeInit": "quay.io/hpestorage/filex-csi-init@sha256:2d867eefb2331490c30b8ff4d9ebe50090ec94f72d9431b0738e7dfba838fbbe",
                    "csiProvisioner": "registry.k8s.io/sig-storage/csi-provisioner@sha256:e5900dc98b0d02f317ea9572f3824983c47a2fb5d5fe2b160aedf1b99c14c9e4",
                    "csiResizer": "registry.k8s.io/sig-storage/csi-resizer@sha256:ab774734705a906561e15b67f6a96538f3ad520335d636f793aaafe87a3b5200",
                    "csiSnapshotter": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d"
                  },
                  "kubeletRootDir": "/var/lib/kubelet",
                  "node": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/hpestorage/filex-csi-driver-operator@sha256:90a269dcbbcbdef9c69cf46242454de641fd009c6d7daf3f9b04deec4a2301e5
          createdAt: "2025-12-16T18:39:19Z"
          description: A Container Storage Interface (CSI) driver for HPE GreenLake
            File Storage.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=1.0.0 <2.6.4'
          operatorframework.io/suggested-namespace: hpe-storage
          operatorhub.io/ui-metadata-max-k8s-version: "1.34"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/hpe-storage/co-deployments
          support: HPE
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HPE GreenLake File Storage CSI Driver
            displayName: HPEGreenLakeFileCSIDriver
            kind: HPEGreenLakeFileCSIDriver
            name: hpegreenlakefilecsidrivers.storage.hpe.com
            version: v1
        description: |
          The HPE GreenLake File Storage CSI Operator deploys the  HPE GreenLake File Storage CSI Driver on OpenShift for dynamic  provisioning of persistent volumes.
          Please refer to our CSI driver [documentation](https://scod.hpedev.io/filex_csi_driver/index.html) for supported HPE platforms and full list of supported CSI features.
          ## Installation
          Refer to the HPE GreenLake File Storage CSI Operator [documentation](https://scod.hpedev.io/filex_csi_driver/deployment.html#operator).
        displayName: HPE GreenLake File Storage CSI Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - HPE
        - HPE CSI
        - HPE Storage
        - CSI
        links:
        - name: Documentation
          url: https://scod.hpedev.io/filex_csi_driver/index.html
        maintainers:
        - email: dev-hi-containers@hpe.com
          name: HPE Storage Containers Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: HPE
        relatedImages:
        - registry.connect.redhat.com/hpestorage/filex-csi-driver-operator-bundle-ocp@sha256:fa96e762f81868adbd5b6fc8668928f7b7a90f631485da7ce0b2b081af4b0520
        - registry.k8s.io/sig-storage/csi-attacher@sha256:a399393ff5bd156277c56bae0c08389b1a1b95b7fd6ea44a316ce55e0dd559d7
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:e5900dc98b0d02f317ea9572f3824983c47a2fb5d5fe2b160aedf1b99c14c9e4
        - registry.connect.redhat.com/hpestorage/filex-csi-driver-operator@sha256:90a269dcbbcbdef9c69cf46242454de641fd009c6d7daf3f9b04deec4a2301e5
        - registry.k8s.io/sig-storage/csi-resizer@sha256:ab774734705a906561e15b67f6a96538f3ad520335d636f793aaafe87a3b5200
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d
        - quay.io/hpestorage/filex-csi-driver@sha256:b7f960bbf47277f6469889aba79d4c9866712130e28f32fc48f2ef3a5ca99ef7
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a
        - quay.io/hpestorage/filex-csi-init@sha256:2d867eefb2331490c30b8ff4d9ebe50090ec94f72d9431b0738e7dfba838fbbe
        version: 2.6.4
      entries:
      - name: hpe-filex-csi-operator.v2.6.4
        version: 2.6.4
      name: stable
    defaultChannel: stable
    packageName: hpe-filex-csi-operator
    provider:
      name: HPE
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cognitoidentityprovider-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cognitoidentityprovider-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cognitoidentityprovider-controller:1.2.0
          createdAt: "2025-11-29T03:40:53Z"
          description: AWS Cognito Identity Provider controller is a service controller
            for managing Cognito Identity Provider resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: UserPool represents the state of an AWS cognitoidentityprovider
              UserPool resource.
            displayName: UserPool
            kind: UserPool
            name: userpools.cognitoidentityprovider.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Cognito Identity Provider resources in AWS from within your Kubernetes cluster.

          **About Amazon Cognito Identity Provider**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Cognito Identity Provider
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cognitoidentityprovider
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Cognito Identity Provider Developer Resources
          url: https://aws.amazon.com/Cognito Identity Provider/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cognitoidentityprovider maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-cognitoidentityprovider-controller@sha256:be19b3ce74cca998e3dc7e5c14b09846883456161d1c41479acd17e9c7bf3f91
        - public.ecr.aws/aws-controllers-k8s/cognitoidentityprovider-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-cognitoidentityprovider-controller.v1.2.0
        version: 1.2.0
      - name: ack-cognitoidentityprovider-controller.v1.1.2
        version: 1.1.2
      - name: ack-cognitoidentityprovider-controller.v1.1.1
        version: 1.1.1
      - name: ack-cognitoidentityprovider-controller.v1.1.0
        version: 1.1.0
      - name: ack-cognitoidentityprovider-controller.v1.0.12
        version: 1.0.12
      name: alpha
    defaultChannel: alpha
    packageName: ack-cognitoidentityprovider-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Ricardo Maraschini
      provider-url: https://github.com/ricardomaraschini/tagger
    name: tagger
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tagger.v2.1.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tagger.dev/v1beta1",
                "kind": "Tag",
                "metadata": {
                  "name": "nginx"
                },
                "spec": {
                  "from": "docker.io/library/nginx:latest",
                  "generation": 0,
                  "mirror": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools
          containerImage: quay.io/tagger/operator:v2.1.17
          createdAt: "2021-08-02T00:00:00Z"
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/ricardomaraschini/tagger
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tag is a Container Image representation as a Custom Resource.
            displayName: Tag
            kind: Tag
            name: tags.tagger.dev
            version: v1beta1
        description: |-
          A Container Image Orchestrator. Adds mirroring and Container Image manipulation capabilities
          to a Kubernetes cluster.

          Keeping track of all Container Images in use in a Kubernetes cluster is a complicated task.
          Container Images may come from numerous different Image Registries. In some cases, controlling
          how a stable version of a given Container Image looks escapes the user's authority. To add to
          this, Container Runtimes rely on remote registries (from the cluster's point of view) when
          obtaining Container Images, potentially making the process of pulling their blobs (manifests,
          config, and layers) slower.

          The notion of indexing Container Image versions by Tags is helpful. Still, it does not provide
          users with the right confidence to always use the intended Container Image – today's "latest"
          tag might not be tomorrow's "latest" tag. In addition to that, these Image Registries allow
          access to Container Images by their Manifest content's hash (i.e., usually sha256), which gives
          users the confidence at a cost in semantics.

          When releasing a new version of an application to Push and to Deploy are split into two
          distinct steps. Both the pusher and the puller need access to the same Image Registry, adding
          complexity.  Credentials are one example of the concerns. Other factors may pop up when
          running, for instance, in an air-gapped environment, where the cluster may not reach external
          Image Registries.

          Tagger aims to overcome these caveats by providing an image management abstraction layer. For
          instance, by providing a direct mapping between a Container Image tag (e.g., "latest") and its
          correspondent Manifest content's hash, users can then refer to the Container Image by its tag
          – and be sure to use that specific version. More than that, when allied with an Internal Image
          Registry, Tagger can also automatically mirror Container Images into the cluster.

          While using Tagger, Deployments can refer to Container Images by an arbitrarily defined name,
          such as "my-app", and Tagger will make sure that they use the right Container Image through its
          internal "tag to Manifest content's hash" mapping.

          For each new "release" of a given Container Image, Tagger creates a new Generation for it,
          making it easy to roll back to previously pushed "releases" of the same Container Image in case
          of problems.

          When integrated with an Internal Registry, Tagger allows users to push or pull Images directly
          without requiring an external Image Registry. It works as a layer between the user and the
          Internal Registry. Every time a new "release" of Container Images is pushed, all Deployments
          are updated automatically. Users don't need to know about the Internal Registry existence, if
          they are logged-in to the Kubernetes cluster, they can obtain old or provide new "Generations"
          for a Container Image.

          In summary, Tagger mirrors remote Container Images into a Kubernetes cluster indexing them in
          different Generations (allowing easy navigation through these multiple Generations), provides
          an interface allowing users to pull and push images directly to the Kubernetes cluster and
          provides full integration with Kubernetes Deployments (automatic triggers new rollouts on
          Container Image changes).

          By default Tagger won't be able to mirror until you provide it with a mirror registry config.
          After install you can configure the mirror by editing the Secret mirror-registry-config in the
          operator namespace. Follow below an example of a valid mirror-registry-config secret (you gonna
          have to provide your own address, username, password, etc).

          ```yaml
          apiVersion: v1
          kind: Secret
          metadata:
            name: mirror-registry-config
          data:
            address: cmVnaXN0cnkuaW8=
            username: YWRtaW4=
            password: d2hhdCB3ZXJlIHlvdSB0aGlua2luZz8K
            token: YW4gb3B0aW9uYWwgdG9rZW4gZm9yIHRva2VuIGJhc2VkIGF1dGg=
            insecure: dHJ1ZQ==
          ```

          To make pushing an pulling images easier you should go ahead and grab the `kubectl` plugin
          available [here](https://github.com/ricardomaraschini/tagger/releases). You can download a
          full version of the README with usage examples and configuration options
          [here](https://github.com/ricardomaraschini/tagger/releases/download/v2.1.17/README.pdf).
        displayName: Tagger
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tagger
        - mirroring
        - image
        links:
        - name: Documentation
          url: https://github.com/ricardomaraschini/tagger/releases/download/v2.1.17/README.pdf
        - name: Plugin (kubectl)
          url: https://github.com/ricardomaraschini/tagger/releases/tag/v2.1.17
        maintainers:
        - email: rmarasch@redhat.com
          name: Ricardo Maraschini
        maturity: alpha
        provider:
          name: Ricardo Maraschini
          url: https://github.com/ricardomaraschini/tagger
        relatedImages:
        - quay.io/openshift-community-operators/tagger@sha256:a528169d305dbc2bc69794437665e4f940ea708dfd957c58d69bc79316b68612
        - quay.io/tagger/operator:v2.1.17
        version: 2.1.17
      entries:
      - name: tagger.v2.1.17
        version: 2.1.17
      name: alpha
    defaultChannel: alpha
    packageName: tagger
    provider:
      name: Ricardo Maraschini
      url: https://github.com/ricardomaraschini/tagger
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: mtc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mtc-operator.v1.7.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigrationController",
                  "metadata": {
                    "name": "migration-controller",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "azure_resource_group": "",
                    "cluster_name": "host",
                    "migration_velero": true,
                    "migration_controller": true,
                    "migration_ui": true,
                    "migration_log_reader": true,
                    "olm_managed": true,
                    "restic_timeout": "1h",
                    "mig_pv_limit": "100",
                    "mig_pod_limit": "100",
                    "mig_namespace_limit": "10"
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageMigration",
                  "metadata": {
                    "name": "directimagemigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageStreamMigration",
                  "metadata": {
                    "name": "directimagestreammigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigAnalytic",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "plan": {
                      "name": "foo",
                      "namespace": "openshift-migration"
                    },
                    "analyzeK8SResources": true,
                    "analyzeImageCount": true,
                    "analyzePVCapacity": true
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigCluster",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectVolumeMigration",
                  "metadata": {
                    "name": "direct",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                      "kind": "DirectVolumeMigrationProgress",
                      "metadata": {
                        "name": "direct-progress",
                        "namespace": "openshift-migration"
                      },
                      "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigPlan",
                  "metadata": {
                    "name": "migplan",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigMigration",
                  "metadata": {
                    "name": "migmigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigStorage",
                  "metadata": {
                    "name": "migstorage",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:d8232366bb3abee6454fcbff6842ec4deaa60cde762f3868eae6218c888cbfe7
          createdAt: "2024-09-04T17:53:42Z"
          description: Facilitates migration of container workloads from OpenShift
            3.x to OpenShift 4.x
          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.skipRange: '>=1.5.0 <1.7.17'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-migration
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:b95a14eda5ae107ba3747995f1ea74a6422f9e5c20d685505e954ca7630b810d
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/mig-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: a request to migrate PVCs from a set of namespaces directly
              to a target
            displayName: DirectVolumeMigration
            kind: DirectVolumeMigration
            name: directvolumemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate watch the progress of rsync pod migrating
              a PVC to a target
            displayName: DirectVolumeMigrationProgress
            kind: DirectVolumeMigrationProgress
            name: directvolumemigrationprogresses.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a set of namespaces
              directly to a target
            displayName: DirectImageMigration
            kind: DirectImageMigration
            name: directimagemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a single imagestream
              directly to a target
            displayName: DirectImageStreamMigration
            kind: DirectImageStreamMigration
            name: directimagestreammigrations.migration.openshift.io
            version: v1alpha1
          - description: A request to Analyze a MigPlan and its namespaces
            displayName: MigAnalytic
            kind: MigAnalytic
            name: miganalytics.migration.openshift.io
            version: v1alpha1
          - description: A cluster defined for migration
            displayName: MigCluster
            kind: MigCluster
            name: migclusters.migration.openshift.io
            version: v1alpha1
          - description: A migration process
            displayName: MigMigration
            kind: MigMigration
            name: migmigrations.migration.openshift.io
            version: v1alpha1
          - description: A migration plan
            displayName: MigPlan
            kind: MigPlan
            name: migplans.migration.openshift.io
            version: v1alpha1
          - description: A migration contoller deployment
            displayName: MigrationController
            kind: MigrationController
            name: migrationcontrollers.migration.openshift.io
            version: v1alpha1
          - description: A migration hook
            displayName: MigHook
            kind: MigHook
            name: mighooks.migration.openshift.io
            version: v1alpha1
          - description: A migration storage location
            displayName: MigStorage
            kind: MigStorage
            name: migstorages.migration.openshift.io
            version: v1alpha1
        description: |-
          The Migration Toolkit for Containers Operator enables installation of the application migration tool components.

          After you have installed the Operator, you can install components by creating a MigrationController CR.

          By default, the Operator installs the following components on an OpenShift Container Platform 4 target cluster:

          * velero and restic, to back up data on the source cluster and restore it on the target cluster
          * mig-controller, to coordinate the backup and restore processes
          * mig-ui, the web console for managing migrations

          If you experience any issues or have feature requests, please file an [issue](https://github.com/konveyor/mig-operator/issues)

          For more information, see the [OpenShift Container Platform Migration Guide](https://docs.openshift.com/container-platform/latest/migration_toolkit_for_containers/about-mtc.html).
        displayName: Migration Toolkit for Containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - crane
        - mtc
        links:
        - name: Migrations
          url: https://github.com/konveyor/mig-controller
        - name: Documentation
          url: https://docs.openshift.com/container-platform/latest/migration_toolkit_for_containers/about-mtc.html
        - name: Crane Operator
          url: https://github.com/konveyor/mig-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhmtc/openshift-migration-ui-rhel8@sha256:1b8008a16a0f53c09ecc5a219964194689a1aeb01acee8313aa49a9c26259429
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-aws-rhel8@sha256:c001dc96a1478a58f30461ab018e40bede13a78f3cdce869a70dcb8b9bba22b1
        - registry.redhat.io/rhmtc/openshift-velero-plugin-rhel8@sha256:92a3162c705537147005a065cdddbb410e1863d80c08d8b0f27b7ff5588500cd
        - registry.redhat.io/rhmtc/openshift-migration-velero-restic-restore-helper-rhel8@sha256:b137e1345038c9e566767f24cce60c03ec278f5a2efc28fa08e0bd8bfa016486
        - registry.redhat.io/rhmtc/openshift-migration-velero-rhel8@sha256:07cafb83ba90378c1fa60338cf951a9d7145ec245710637e90fdb508875dcc45
        - registry.redhat.io/rhmtc/openshift-migration-controller-rhel8@sha256:dc10544e1bb24883f38373a0445944745282e5a69ed1744f428f98871a7a39c9
        - registry.redhat.io/rhmtc/openshift-migration-log-reader-rhel8@sha256:8fbfffb0bc3adfb4d72961dad381e1daba414bf4a7084f03b5208f6be4191ceb
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:d8232366bb3abee6454fcbff6842ec4deaa60cde762f3868eae6218c888cbfe7
        - registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:b95a14eda5ae107ba3747995f1ea74a6422f9e5c20d685505e954ca7630b810d
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-gcp-rhel8@sha256:035855c3d4b32a29232846d73dc398e81f941fd90a03e33241ca06f6e80b2204
        - registry.redhat.io/rhmtc/openshift-migration-hook-runner-rhel8@sha256:a539064234088a4ee13b8a9666ca9507208fe38189ee9b8b673a38a58aa75599
        - registry.redhat.io/rhmtc/openshift-migration-registry-rhel8@sha256:31b3658dd79c18111c21e99aea52cc198f8e95b458a1a4f8d2bfc4d21e9bdacb
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:f86e96edb0418811df328debdee93b4a51cf7f651134ee35e9c50b9dbfc29fd8
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-microsoft-azure-rhel8@sha256:084f1e54ef0d7f457d5a7cfc57b567ad8d85237c12f707c82f7a30a54e3652ba
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:1d86075469312e84f3d16379efcd6130ec9e8b23a1343e3945f071d82beff6e3
        version: 1.7.17
      entries:
      - name: mtc-operator.v1.7.17
        version: 1.7.17
      - name: mtc-operator.v1.7.16
        version: 1.7.16
      - name: mtc-operator.v1.7.15
        version: 1.7.15
      - name: mtc-operator.v1.7.13
        version: 1.7.13
      - name: mtc-operator.v1.7.12
        version: 1.7.12
      - name: mtc-operator.v1.7.11
        version: 1.7.11
      - name: mtc-operator.v1.7.10
        version: 1.7.10
      - name: mtc-operator.v1.7.9
        version: 1.7.9
      - name: mtc-operator.v1.7.8
        version: 1.7.8
      - name: mtc-operator.v1.7.7
        version: 1.7.7
      - name: mtc-operator.v1.7.6
        version: 1.7.6
      - name: mtc-operator.v1.7.5
        version: 1.7.5
      - name: mtc-operator.v1.7.4
        version: 1.7.4
      - name: mtc-operator.v1.7.3
        version: 1.7.3
      - name: mtc-operator.v1.7.2
        version: 1.7.2
      - name: mtc-operator.v1.7.1
        version: 1.7.1
      - name: mtc-operator.v1.7.0
        version: 1.7.0
      name: release-v1.7
    - currentCSV: mtc-operator.v1.8.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigrationController",
                  "metadata": {
                    "name": "migration-controller",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "azure_resource_group": "",
                    "cluster_name": "host",
                    "migration_velero": true,
                    "migration_controller": true,
                    "migration_ui": true,
                    "migration_log_reader": true,
                    "restic_timeout": "1h",
                    "mig_pv_limit": "100",
                    "mig_pod_limit": "100",
                    "mig_namespace_limit": "10"
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageMigration",
                  "metadata": {
                    "name": "directimagemigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageStreamMigration",
                  "metadata": {
                    "name": "directimagestreammigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigAnalytic",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "plan": {
                      "name": "foo",
                      "namespace": "openshift-migration"
                    },
                    "analyzeK8SResources": true,
                    "analyzeImageCount": true,
                    "analyzePVCapacity": true
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigCluster",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectVolumeMigration",
                  "metadata": {
                    "name": "direct",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                      "kind": "DirectVolumeMigrationProgress",
                      "metadata": {
                        "name": "direct-progress",
                        "namespace": "openshift-migration"
                      },
                      "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigPlan",
                  "metadata": {
                    "name": "migplan",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigMigration",
                  "metadata": {
                    "name": "migmigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigStorage",
                  "metadata": {
                    "name": "migstorage",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration, OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:886c3a3f417f48a1ac20d901f4eedca7271548e3d03c72f54fd172e8c025d45c
          createdAt: "2019-07-25T10:21:00+00:00"
          description: Facilitates migration of container workloads from OpenShift
            3.x to OpenShift 4.x
          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: "true"
          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.skipRange: '>=0.0.0 <1.8.11'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-migration
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/mig-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: a request to migrate PVCs from a set of namespaces directly
              to a target
            displayName: DirectVolumeMigration
            kind: DirectVolumeMigration
            name: directvolumemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate watch the progress of rsync pod migrating
              a PVC to a target
            displayName: DirectVolumeMigrationProgress
            kind: DirectVolumeMigrationProgress
            name: directvolumemigrationprogresses.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a set of namespaces
              directly to a target
            displayName: DirectImageMigration
            kind: DirectImageMigration
            name: directimagemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a single imagestream
              directly to a target
            displayName: DirectImageStreamMigration
            kind: DirectImageStreamMigration
            name: directimagestreammigrations.migration.openshift.io
            version: v1alpha1
          - description: A request to Analyze a MigPlan and its namespaces
            displayName: MigAnalytic
            kind: MigAnalytic
            name: miganalytics.migration.openshift.io
            version: v1alpha1
          - description: A cluster defined for migration
            displayName: MigCluster
            kind: MigCluster
            name: migclusters.migration.openshift.io
            version: v1alpha1
          - description: A migration process
            displayName: MigMigration
            kind: MigMigration
            name: migmigrations.migration.openshift.io
            version: v1alpha1
          - description: A migration plan
            displayName: MigPlan
            kind: MigPlan
            name: migplans.migration.openshift.io
            version: v1alpha1
          - description: A migration contoller deployment
            displayName: MigrationController
            kind: MigrationController
            name: migrationcontrollers.migration.openshift.io
            version: v1alpha1
          - description: A migration hook
            displayName: MigHook
            kind: MigHook
            name: mighooks.migration.openshift.io
            version: v1alpha1
          - description: A migration storage location
            displayName: MigStorage
            kind: MigStorage
            name: migstorages.migration.openshift.io
            version: v1alpha1
        description: |
          The Migration Toolkit for Containers Operator enables installation of the application migration tool components.

          After you have installed the Operator, you can install components by creating a MigrationController CR.

          By default, the Operator installs the following components on an OpenShift Container Platform 4 target cluster:

          * velero and restic, to back up data on the source cluster and restore it on the target cluster
          * mig-controller, to coordinate the backup and restore processes
          * mig-ui, the web console for managing migrations

          If you experience any issues or have feature requests, please file an [issue](https://github.com/konveyor/mig-operator/issues)

          For more information, see the [OpenShift Container Platform Migration Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.4/html-single/migration/index).
        displayName: Migration Toolkit for Containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        links:
        - name: Migrations
          url: https://github.com/konveyor/mig-controller
        - name: Documentation
          url: https://github.com/konveyor/mig-operator
        - name: Migration Toolkit for Containers Operator
          url: https://github.com/konveyor/mig-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-mtc-rhel8@sha256:93aeafa4df87367cc6326048489a0d7642b9ba13091c6ae4a3d04d45a7e6871c
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:da5bea3530580d60fe593f03927ce2c561155fa914961aa4152fac8fde3b40a7
        - registry.redhat.io/rhmtc/openshift-migration-hook-runner-rhel8@sha256:dff69cdcc2e20a608562e6ab14700e00125473adbd0486c1af456a9839f8b58a
        - registry.redhat.io/rhmtc/openshift-migration-registry-rhel8@sha256:bd436fd06b62f3434a7aa3e38f92f20def19e5a816eb81010f83049efab6beff
        - registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:9b7b4fbde975ee49c20442b7b410b900f60aa2856856f89ba20d4700716bf49d
        - registry.redhat.io/rhmtc/openshift-migration-openvpn-rhel8@sha256:ab050267fa89bdc400ea9ba8434acd11a0cced415e5d52512adc2db713bcdd2c
        - registry.redhat.io/rhmtc/openshift-migration-controller-rhel8@sha256:84492722125eab381eeed49aaed92b44c763b8f06cb2e2859031f486df4437de
        - registry.redhat.io/rhmtc/openshift-migration-log-reader-rhel8@sha256:6d8c28c61ae5cfd2b870226f150248efa1f7ea4c538c5740587cf3f046ebd5d0
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:886c3a3f417f48a1ac20d901f4eedca7271548e3d03c72f54fd172e8c025d45c
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:977e9f27271b53d72c53e38f44d01cb1fb7e8ce57ec715b8e7efa3ed66d91118
        - registry.redhat.io/rhmtc/openshift-migration-ui-rhel8@sha256:55c9af6872d429051c9467678387d4a23095e95bd254c9ea0f0d0580c132a13c
        version: 1.8.11
      entries:
      - name: mtc-operator.v1.8.11
        version: 1.8.11
      - name: mtc-operator.v1.8.10
        version: 1.8.10
      - name: mtc-operator.v1.8.9
        version: 1.8.9
      - name: mtc-operator.v1.8.6
        version: 1.8.6
      - name: mtc-operator.v1.8.5
        version: 1.8.5
      - name: mtc-operator.v1.8.4
        version: 1.8.4
      - name: mtc-operator.v1.8.3
        version: 1.8.3
      - name: mtc-operator.v1.8.0
        version: 1.8.0
      name: release-v1.8
    defaultChannel: release-v1.8
    packageName: mtc-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: cluster-kube-descheduler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clusterkubedescheduleroperator.4.13.0-202309181427
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "KubeDescheduler",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-kube-descheduler-operator"
                },
                "spec": {
                  "deschedulingIntervalSeconds": 3600,
                  "managementState": "Managed",
                  "mode": "Predictive",
                  "profiles": ["AffinityAndTaints"]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-cluster-kube-descheduler-operator@sha256:ba0b71ff2a30a069b4a8a8f3c1e0898aaadc6db112e4cc12aff7c77ced7a0405
          createdAt: 2021/10/13
          description: An operator to run descheduler in Openshift cluster.
          olm.skipRange: '>=4.10.0 <4.13.0-202309181427'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/cluster-kube-descheduler-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubeDescheduler is the Schema for the deschedulers API
            displayName: Kube Descheduler
            kind: KubeDescheduler
            name: kubedeschedulers.operator.openshift.io
            version: v1
        description: |
          The Kube Descheduler Operator provides the ability to evict a running pod so that the pod can be rescheduled onto a more suitable node.

          There are several situations where descheduling can benefit your cluster:

          * Nodes are underutilized or overutilized.
          * Pod and node affinity requirements, such as taints or labels, have changed and the original scheduling decisions are no longer appropriate for certain nodes.
          * Node failure requires pods to be moved.
          * New nodes are added to clusters.

          ## Descheduler Profiles

          Once the operator is installed, you can configure one or more profiles to identify pods to evict. The scheduler will schedule the replacement of the evicted pods.

          The following profiles are available:

          * AffinityAndTaints
          * TopologyAndDuplicates
          * SoftTopologyAndDuplicates
          * LifecycleAndUtilization
          * EvictPodsWithPVC
          * EvictPodsWithLocalStorage

          These profiles are documented in detail in the [descheduler operator README](https://github.com/openshift/cluster-kube-descheduler-operator#profiles).

          ## Additional Parameters

          In addition to the profiles, the following parameters can be configured:

          * `deschedulingIntervalSeconds` - Set the number of seconds between descheduler runs. A value of `0` in this field runs the descheduler once and exits.
          * `profileCustomizations` - Allows certain profile parameters to be tweaked, such as `podLifetime` (see [README](https://github.com/openshift/cluster-kube-descheduler-operator#profile-customizations) for more info).
        displayName: Kube Descheduler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - scheduling
        - descheduler
        - workload
        links:
        - name: Source Code
          url: https://github.com/openshift/cluster-kube-descheduler-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-cluster-kube-descheduler-operator-bundle@sha256:b473fba287414d3ccb09aaabc64f463af2c912c322ca2c41723020b216d98d14
        - registry.redhat.io/openshift4/ose-cluster-kube-descheduler-operator@sha256:ba0b71ff2a30a069b4a8a8f3c1e0898aaadc6db112e4cc12aff7c77ced7a0405
        - registry.redhat.io/openshift4/ose-descheduler@sha256:45dc69ad93ab50bdf9ce1bb79f6d98f849e320db68af30475b10b7f5497a1b13
        version: 4.13.0-202309181427
      entries:
      - name: clusterkubedescheduleroperator.4.13.0-202309181427
        version: 4.13.0-202309181427
      name: "4.13"
    - currentCSV: clusterkubedescheduleroperator.v5.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "KubeDescheduler",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-kube-descheduler-operator"
                },
                "spec": {
                  "deschedulingIntervalSeconds": 3600,
                  "managementState": "Managed",
                  "mode": "Predictive",
                  "profiles": ["AffinityAndTaints"]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/kube-descheduler-operator/kube-descheduler-rhel9-operator@sha256:a4280076232eb36193781d6b25561fba909061efd03a02c114512506f6c3c775
          createdAt: 2025/12/04
          description: An operator to run descheduler in Openshift cluster.
          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: "true"
          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.skipRange: '>=5.2.0 <5.3.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-kube-descheduler-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/cluster-kube-descheduler-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubeDescheduler is the Schema for the deschedulers API
            displayName: Kube Descheduler
            kind: KubeDescheduler
            name: kubedeschedulers.operator.openshift.io
            version: v1
        description: |
          The Kube Descheduler Operator provides the ability to evict a running pod so that the pod can be rescheduled onto a more suitable node.

          There are several situations where descheduling can benefit your cluster:

          * Nodes are underutilized or overutilized.
          * Pod and node affinity requirements, such as taints or labels, have changed and the original scheduling decisions are no longer appropriate for certain nodes.
          * Node failure requires pods to be moved.
          * New nodes are added to clusters.

          ## Descheduler Profiles

          Once the operator is installed, you can configure one or more profiles to identify pods to evict. The scheduler will schedule the replacement of the evicted pods.

          The following profiles are available:

          * AffinityAndTaints
          * TopologyAndDuplicates
          * SoftTopologyAndDuplicates
          * LifecycleAndUtilization
          * LongLifecycle
          * CompactAndScale
          * EvictPodsWithPVC
          * EvictPodsWithLocalStorage

          These profiles are documented in detail in the [descheduler operator README](https://github.com/openshift/cluster-kube-descheduler-operator#profiles).

          ## Additional Parameters

          In addition to the profiles, the following parameters can be configured:

          * `deschedulingIntervalSeconds` - Set the number of seconds between descheduler runs. A value of `0` in this field runs the descheduler once and exits.
          * `mode` - Configures the descheduler to either evict pods or to simulate the eviction.
          * `profileCustomizations` - Allows certain profile parameters to be tweaked, such as `podLifetime` (see [README](https://github.com/openshift/cluster-kube-descheduler-operator#profile-customizations) for more info).
          * `evictionLimits` - Restricts the number of evictions during each descheduling run.
        displayName: Kube Descheduler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - scheduling
        - descheduler
        - workload
        links:
        - name: Source Code
          url: https://github.com/openshift/cluster-kube-descheduler-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.33.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/kube-descheduler-operator/descheduler-rhel9@sha256:e9019ca15608d3d48a68b97283ca07db1260bb92bd81a500f7d987a485cd7a1e
        - registry.redhat.io/kube-descheduler-operator/kube-descheduler-rhel9-operator@sha256:a4280076232eb36193781d6b25561fba909061efd03a02c114512506f6c3c775
        - registry.redhat.io/kube-descheduler-operator/kube-descheduler-operator-bundle@sha256:c0ebb8c7fbaa325fef3d530da8bee7ea8773aa082c9b16f174c41ca4465ced24
        version: 5.3.1
      entries:
      - name: clusterkubedescheduleroperator.v5.3.1
        version: 5.3.1
      - name: clusterkubedescheduleroperator.v5.3.0
        version: 5.3.0
      - name: clusterkubedescheduleroperator.v5.2.1
        version: 5.2.1
      - name: clusterkubedescheduleroperator.v5.2.0
        version: 5.2.0
      - name: clusterkubedescheduleroperator.v5.1.4
        version: 5.1.4
      - name: clusterkubedescheduleroperator.v5.1.3
        version: 5.1.3
      - name: clusterkubedescheduleroperator.v5.1.2
        version: 5.1.2
      - name: clusterkubedescheduleroperator.v5.1.1
        version: 5.1.1
      - name: clusterkubedescheduleroperator.v5.1.0
        version: 5.1.0
      - name: clusterkubedescheduleroperator.v5.0.1
        version: 5.0.1
      - name: clusterkubedescheduleroperator.4.14.0-202311021650
        version: 4.14.0-202311021650
      - name: clusterkubedescheduleroperator.4.14.0-202310201027
        version: 4.14.0-202310201027
      name: stable
    defaultChannel: stable
    packageName: cluster-kube-descheduler-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-zookeeper-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: zookeeper-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/zookeeper-operator@sha256:8186ceb867021df47c8affafa4648fa52a55e2ba10c15be14561520aabddd94c
          description: Stackable Operator for Apache ZooKeeper
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/zookeeper-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for ZookeeperClusterSpec via
              `CustomResource`
            displayName: zookeeperclusters.zookeeper.stackable.tech
            kind: ZookeeperCluster
            name: zookeeperclusters.zookeeper.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for ZookeeperZnodeSpec via `CustomResource`
            displayName: zookeeperznodes.zookeeper.stackable.tech
            kind: ZookeeperZnode
            name: zookeeperznodes.zookeeper.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache ZooKeeper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - zookeeper
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/zookeeper-operator@sha256:8186ceb867021df47c8affafa4648fa52a55e2ba10c15be14561520aabddd94c
        - registry.connect.redhat.com/stackable/stackable-apache-zookeeper-operator@sha256:a2d289bf7c2c8efec5ce5afc79a0a2971fe9a525e0b0b68c2cd2b44e7852d8db
        version: 25.11.0
      entries:
      - name: zookeeper-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-zookeeper-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app: kube-green
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: kube-green Community
      provider-url: https://kube-green.dev
    name: kube-green
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kube-green.v0.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kube-green.com/v1alpha1",
                "kind": "SleepInfo",
                "metadata": {
                  "labels": {
                    "app": "kube-green"
                  },
                  "name": "sleepinfo-sample"
                },
                "spec": {
                  "excludeRef": [
                    {
                      "apiVersion": "apps/v1",
                      "kind": "Deployment",
                      "name": "api-gateway"
                    }
                  ],
                  "sleepAt": "20:00",
                  "suspendCronJobs": true,
                  "timeZone": "Europe/Rome",
                  "wakeUpAt": "08:00",
                  "weekdays": "1-5"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          containerImage: docker.io/kubegreen/kube-green:0.5.2
          createdAt: "2023-10-07T15:15:08Z"
          description: Suspend your pods when no-one's using them to save energy and
            restore when necessary
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kube-green/kube-green
          support: kube-green Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SleepInfo is the Schema for the sleepinfos API
            displayName: SleepInfo
            kind: SleepInfo
            name: sleepinfos.kube-green.com
            version: v1alpha1
        description: |
          ## About this Operator

          [kube-green](https://kube-green.dev) shuts down (some of) your resources when you don't need them, reducing the consumption of resources of the cluster.

          Install this operator and apply the SleepInfo CRD to stop your dev namespaces from running during weekends, nights or when it is not necessary.
          See the [docs](https://kube-green.dev/docs/getting-started/) for more information.
          This operator is responsible to suspend and restart pods at specific times, defined by the SleepInfo CRD.

          An example of SleepInfo:

          ```yaml
          apiVersion: kube-green.com/v1alpha1
          kind: SleepInfo
          metadata:
            name: working-hours
          spec:
            weekdays: "1-5"
            sleepAt: "20:00"
            wakeUpAt: "08:00"
            timeZone: "Europe/Rome"
          ```

          This configuration stop pods everyday from monday to friday at 20:00 and restore them at 8:00.
          In this way, your cluster nodes could downscale, producing less CO2 and saving money.
        displayName: kube-green
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - green
        - green software
        - resources
        - downscale
        - autoscale
        - climate change
        links:
        - name: Homepage
          url: https://kube-green.dev
        - name: Source Code
          url: https://github.com/kube-green/kube-green
        maintainers:
        - email: bianchidavide12+kubegreen@gmail.com
          name: Davide
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: kube-green Community
          url: https://kube-green.dev
        relatedImages:
        - docker.io/kubegreen/kube-green:0.5.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.14.1
        - quay.io/openshift-community-operators/kube-green@sha256:e0c9f5ecdef1f7172af098f20cce17afebbedf02c0e0bd516d4d6aae736d1b27
        version: 0.5.2
      entries:
      - name: kube-green.v0.5.2
        version: 0.5.2
      - name: kube-green.v0.5.1
        version: 0.5.1
      - name: kube-green.v0.5.0
        version: 0.5.0
      - name: kube-green.v0.4.1
        version: 0.4.1
      - name: kube-green.v0.4.0
        version: 0.4.0
      - name: kube-green.v0.3.1
        version: 0.3.1
      - name: kube-green.v0.3.0
        version: 0.3.0
      name: alpha
    defaultChannel: alpha
    packageName: kube-green
    provider:
      name: kube-green Community
      url: https://kube-green.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhods-prometheus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhods-prometheus-operator.4.10.0
      currentCSVDesc:
        annotations:
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:370f2fa849f8045964e30c3a4d34be022f419d243b0cf37c2c81ea19faaab4a8
          createdAt: 21-04-15T23:43:00Z
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          repository: https://github.com/prometheus-operator/prometheus-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:370f2fa849f8045964e30c3a4d34be022f419d243b0cf37c2c81ea19faaab4a8
        - registry.redhat.io/rhods/odh-prometheus-bundle-rhel8@sha256:d3767059a2f45ca57f31df1dccb2849e19ca2d3ec697ae5de84dbc6d8eae497c
        version: 4.10.0
      entries:
      - name: rhods-prometheus-operator.4.10.0
        version: 4.10.0
      name: beta
    defaultChannel: beta
    packageName: rhods-prometheus-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: www.redhat.com
    name: compliance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: compliance-operator.v0.1.32
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan"
                },
                "spec": {
                  "content": "ssg-rhcos4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan"
                },
                "spec": {
                  "content": "ssg-ocp4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate",
                  "scanType": "Platform"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceSuite",
                "metadata": {
                  "name": "example-compliancesuite"
                },
                "spec": {
                  "autoApplyRemediations": false,
                  "scans": [
                    {
                      "content": "ssg-rhcos4-ds.xml",
                      "contentImage": "registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c",
                      "name": "workers-scan",
                      "nodeSelector": {
                        "node-role.kubernetes.io/worker": ""
                      },
                      "profile": "xccdf_org.ssgproject.content_profile_moderate"
                    },
                    {
                      "content": "ssg-ocp4-ds.xml",
                      "contentImage": "registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c",
                      "name": "platform-scan",
                      "profile": "xccdf_org.ssgproject.content_profile_moderate",
                      "scanType": "Platform"
                    }
                  ],
                  "schedule": "0 1 * * *"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ProfileBundle",
                "metadata": {
                  "name": "ocp4"
                },
                "spec": {
                  "contentFile": "ssg-ocp4-ds.xml",
                  "contentImage": "registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "autoApplyRemediations": false,
                "debug": true,
                "kind": "ScanSetting",
                "metadata": {
                  "name": "my-companys-constraints"
                },
                "rawResultStorage": {
                  "rotation": 10,
                  "size": "2Gi"
                },
                "roles": [
                  "worker",
                  "master"
                ],
                "schedule": "0 1 * * *"
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ScanSettingBinding",
                "metadata": {
                  "name": "nist-moderate"
                },
                "profiles": [
                  {
                    "apiGroup": "compliance.openshift.io/v1alpha1",
                    "kind": "Profile",
                    "name": "rhcos4-moderate"
                  }
                ],
                "settingsRef": {
                  "apiGroup": "compliance.openshift.io/v1alpha1",
                  "kind": "ScanSetting",
                  "name": "default"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "TailoredProfile",
                "metadata": {
                  "name": "example-tailoredprofile"
                },
                "spec": {
                  "disableRules": [
                    {
                      "name": "ocp4-file-permissions-node-config",
                      "rationale": "This breaks X application."
                    },
                    {
                      "name": "ocp4-account-disable-post-pw-expiration",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-accounts-no-uid-except-zero",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chown",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmodat",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchown",
                      "rationale": "testing this"
                    }
                  ],
                  "extends": "ocp4-moderate",
                  "setValues": [
                    {
                      "name": "ocp4-var-selinux-state",
                      "rationale": "trolling dwalsh",
                      "value": "permissive"
                    }
                  ],
                  "title": "My little profile"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.17 <0.1.32'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-compliance
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          repository: https://github.com/openshift/compliance-operator
          support: Red Hat Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ComplianceCheckResult represent a result of a single compliance
              "test"
            kind: ComplianceCheckResult
            name: compliancecheckresults.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceRemediation represents a remediation that can be
              applied to the cluster to fix the found issues.
            kind: ComplianceRemediation
            name: complianceremediations.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceScan represents a scan with a certain configuration
              that will be applied to objects of a certain entity in the host. These
              could be nodes that apply to a certain nodeSelector, or the cluster
              itself.
            kind: ComplianceScan
            name: compliancescans.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceSuite represents a set of scans that will be applied
              to the cluster. These should help deployers achieve a certain compliance
              target.
            kind: ComplianceSuite
            name: compliancesuites.compliance.openshift.io
            version: v1alpha1
          - description: ProfileBundle is the Schema for the profilebundles API
            kind: ProfileBundle
            name: profilebundles.compliance.openshift.io
            version: v1alpha1
          - description: Profile is the Schema for the profiles API
            kind: Profile
            name: profiles.compliance.openshift.io
            version: v1alpha1
          - description: Rule is the Schema for the rules API
            kind: Rule
            name: rules.compliance.openshift.io
            version: v1alpha1
          - description: ScanSettingBinding is the Schema for the scansettingbindings
              API
            kind: ScanSettingBinding
            name: scansettingbindings.compliance.openshift.io
            version: v1alpha1
          - description: ScanSetting is the Schema for the scansettings API
            kind: ScanSetting
            name: scansettings.compliance.openshift.io
            version: v1alpha1
          - description: TailoredProfile is the Schema for the tailoredprofiles API
            kind: TailoredProfile
            name: tailoredprofiles.compliance.openshift.io
            version: v1alpha1
          - description: Variable describes a tunable in the XCCDF profile
            kind: Variable
            name: variables.compliance.openshift.io
            version: v1alpha1
        description: An operator which runs OpenSCAP and allows you to keep your cluster
          compliant with the security benchmark you need.
        displayName: Compliance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - security
        - compliance
        - openscap
        - audit
        links:
        - name: Compliance Operator upstream repo
          url: https://github.com/openshift/compliance-operator
        - name: Compliance Operator documentation
          url: https://docs.openshift.com/container-platform/4.7/security/compliance_operator/compliance-operator-understanding.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/compliance-rhel8-operator-metadata@sha256:1c06868bce1f5d7145ef658bfcc284c44011aa24a17166aa124547b38f2259e4
        - registry.redhat.io/openshift4/compliance-rhel8-operator@sha256:ed68a0574ddeaf7d676403cd843f28cb586894f35dbb3ca5e06a5264bd42f030
        - registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c
        - registry.redhat.io/openshift4/compliance-openscap-rhel8@sha256:867c6d4205653d8a954d234cbaf470313009eb983d4f455fb45f49c4a7764422
        version: 0.1.32
      entries:
      - name: compliance-operator.v0.1.32
        version: 0.1.32
      name: "4.7"
    - currentCSV: compliance-operator.v0.1.61
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-node"
                },
                "spec": {
                  "content": "ssg-rhcos4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-platform"
                },
                "spec": {
                  "content": "ssg-ocp4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate",
                  "scanType": "Platform"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceSuite",
                "metadata": {
                  "name": "example-compliancesuite"
                },
                "spec": {
                  "autoApplyRemediations": false,
                  "scans": [
                    {
                      "content": "ssg-rhcos4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b",
                      "name": "workers-scan",
                      "nodeSelector": {
                        "node-role.kubernetes.io/worker": ""
                      },
                      "profile": "xccdf_org.ssgproject.content_profile_moderate"
                    },
                    {
                      "content": "ssg-ocp4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b",
                      "name": "platform-scan",
                      "profile": "xccdf_org.ssgproject.content_profile_moderate",
                      "scanType": "Platform"
                    }
                  ],
                  "schedule": "0 1 * * *"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ProfileBundle",
                "metadata": {
                  "name": "ocp4"
                },
                "spec": {
                  "contentFile": "ssg-ocp4-ds.xml",
                  "contentImage": "registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "autoApplyRemediations": false,
                "debug": true,
                "kind": "ScanSetting",
                "metadata": {
                  "name": "my-companys-constraints"
                },
                "rawResultStorage": {
                  "rotation": 10,
                  "size": "2Gi"
                },
                "roles": [
                  "worker",
                  "master"
                ],
                "schedule": "0 1 * * *"
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ScanSettingBinding",
                "metadata": {
                  "name": "nist-moderate"
                },
                "profiles": [
                  {
                    "apiGroup": "compliance.openshift.io/v1alpha1",
                    "kind": "Profile",
                    "name": "rhcos4-moderate"
                  }
                ],
                "settingsRef": {
                  "apiGroup": "compliance.openshift.io/v1alpha1",
                  "kind": "ScanSetting",
                  "name": "default"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "TailoredProfile",
                "metadata": {
                  "name": "example-tailoredprofile"
                },
                "spec": {
                  "description": "Example of a tailoredProfile that extends OCP4 FedRAMP Moderate",
                  "disableRules": [
                    {
                      "name": "ocp4-file-permissions-node-config",
                      "rationale": "This breaks X application."
                    },
                    {
                      "name": "ocp4-account-disable-post-pw-expiration",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-accounts-no-uid-except-zero",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chown",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmodat",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchown",
                      "rationale": "testing this"
                    }
                  ],
                  "extends": "ocp4-moderate",
                  "setValues": [
                    {
                      "name": "ocp4-var-selinux-state",
                      "rationale": "trolling dwalsh",
                      "value": "permissive"
                    }
                  ],
                  "title": "My little profile"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.17 <0.1.61'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-compliance
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/compliance-operator
          support: Red Hat Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ComplianceCheckResult represent a result of a single compliance
              "test"
            kind: ComplianceCheckResult
            name: compliancecheckresults.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceRemediation represents a remediation that can be
              applied to the cluster to fix the found issues.
            displayName: Compliance Remediation
            kind: ComplianceRemediation
            name: complianceremediations.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceScan represents a scan with a certain configuration
              that will be applied to objects of a certain entity in the host. These
              could be nodes that apply to a certain nodeSelector, or the cluster
              itself.
            displayName: Compliance Scan
            kind: ComplianceScan
            name: compliancescans.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceSuite represents a set of scans that will be applied
              to the cluster. These should help deployers achieve a certain compliance
              target.
            displayName: Compliance Suite
            kind: ComplianceSuite
            name: compliancesuites.compliance.openshift.io
            version: v1alpha1
          - description: ProfileBundle is the Schema for the profilebundles API
            displayName: Profile Bundle
            kind: ProfileBundle
            name: profilebundles.compliance.openshift.io
            version: v1alpha1
          - description: Profile is the Schema for the profiles API
            kind: Profile
            name: profiles.compliance.openshift.io
            version: v1alpha1
          - description: Rule is the Schema for the rules API
            kind: Rule
            name: rules.compliance.openshift.io
            version: v1alpha1
          - description: ScanSettingBinding is the Schema for the scansettingbindings
              API
            displayName: Scan Setting Binding
            kind: ScanSettingBinding
            name: scansettingbindings.compliance.openshift.io
            version: v1alpha1
          - description: ScanSetting is the Schema for the scansettings API
            kind: ScanSetting
            name: scansettings.compliance.openshift.io
            version: v1alpha1
          - description: TailoredProfile is the Schema for the tailoredprofiles API
            displayName: Tailored Profile
            kind: TailoredProfile
            name: tailoredprofiles.compliance.openshift.io
            version: v1alpha1
          - description: Variable describes a tunable in the XCCDF profile
            kind: Variable
            name: variables.compliance.openshift.io
            version: v1alpha1
        description: An operator which runs OpenSCAP and allows you to keep your cluster
          compliant with the security benchmark you need.
        displayName: Compliance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - compliance
        - openscap
        - audit
        links:
        - name: Compliance Operator upstream repo
          url: https://github.com/openshift/compliance-operator
        - name: Compliance Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/compliance_operator/compliance-operator-understanding.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b
        - registry.redhat.io/compliance/openshift-compliance-openscap-rhel8@sha256:83ad3113964ec48c5cf28315d923adb6edb95e45960e2756665d617dcd9b2e47
        - registry.redhat.io/compliance/openshift-compliance-operator-bundle@sha256:8a2194d8d26dff03ec53ac0ab93c62c268e48675079a88db18bb14a977a391be
        - registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:5578e2225365ac1c15e4c189c5c7a8d14fd3fd26189414b36028f7f0879bb1dc
        version: 0.1.61
      entries:
      - name: compliance-operator.v0.1.61
        version: 0.1.61
      name: release-0.1
    - currentCSV: compliance-operator.v1.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-node"
                },
                "spec": {
                  "content": "ssg-rhcos4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-platform"
                },
                "spec": {
                  "content": "ssg-ocp4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate",
                  "scanType": "Platform"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceSuite",
                "metadata": {
                  "name": "example-compliancesuite"
                },
                "spec": {
                  "autoApplyRemediations": false,
                  "scans": [
                    {
                      "content": "ssg-rhcos4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77",
                      "name": "workers-scan",
                      "nodeSelector": {
                        "node-role.kubernetes.io/worker": ""
                      },
                      "profile": "xccdf_org.ssgproject.content_profile_moderate"
                    },
                    {
                      "content": "ssg-ocp4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77",
                      "name": "platform-scan",
                      "profile": "xccdf_org.ssgproject.content_profile_moderate",
                      "scanType": "Platform"
                    }
                  ],
                  "schedule": "0 1 * * *"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ProfileBundle",
                "metadata": {
                  "name": "ocp4"
                },
                "spec": {
                  "contentFile": "ssg-ocp4-ds.xml",
                  "contentImage": "registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "autoApplyRemediations": false,
                "debug": true,
                "kind": "ScanSetting",
                "metadata": {
                  "name": "my-companys-constraints"
                },
                "rawResultStorage": {
                  "rotation": 10,
                  "size": "2Gi"
                },
                "roles": [
                  "worker",
                  "master"
                ],
                "schedule": "0 1 * * *"
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ScanSettingBinding",
                "metadata": {
                  "name": "nist-moderate"
                },
                "profiles": [
                  {
                    "apiGroup": "compliance.openshift.io/v1alpha1",
                    "kind": "Profile",
                    "name": "rhcos4-moderate"
                  }
                ],
                "settingsRef": {
                  "apiGroup": "compliance.openshift.io/v1alpha1",
                  "kind": "ScanSetting",
                  "name": "default"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "TailoredProfile",
                "metadata": {
                  "name": "example-tailoredprofile"
                },
                "spec": {
                  "description": "Example of a tailoredProfile that extends OCP4 FedRAMP Moderate",
                  "disableRules": [
                    {
                      "name": "ocp4-file-permissions-node-config",
                      "rationale": "This breaks X application."
                    },
                    {
                      "name": "ocp4-account-disable-post-pw-expiration",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-accounts-no-uid-except-zero",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chown",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmodat",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchown",
                      "rationale": "testing this"
                    }
                  ],
                  "extends": "ocp4-moderate",
                  "setValues": [
                    {
                      "name": "ocp4-var-selinux-state",
                      "rationale": "trolling dwalsh",
                      "value": "permissive"
                    }
                  ],
                  "title": "My little profile"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          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: "true"
          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"
          must-gather-image: registry.redhat.io/compliance/openshift-compliance-must-gather-rhel8@sha256:83ea492a55fb2f2bc423ce7d1ccd31644de8ce492e9d273da47a93413fc9282a
          olm.skipRange: '>=0.1.17 <1.8.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-compliance
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ComplianceAsCode/compliance-operator
          support: Red Hat Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ComplianceCheckResult represent a result of a single compliance
              "test"
            kind: ComplianceCheckResult
            name: compliancecheckresults.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceRemediation represents a remediation that can be
              applied to the cluster to fix the found issues.
            displayName: Compliance Remediation
            kind: ComplianceRemediation
            name: complianceremediations.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceScan represents a scan with a certain configuration
              that will be applied to objects of a certain entity in the host. These
              could be nodes that apply to a certain nodeSelector, or the cluster
              itself.
            displayName: Compliance Scan
            kind: ComplianceScan
            name: compliancescans.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceSuite represents a set of scans that will be applied
              to the cluster. These should help deployers achieve a certain compliance
              target.
            displayName: Compliance Suite
            kind: ComplianceSuite
            name: compliancesuites.compliance.openshift.io
            version: v1alpha1
          - description: CustomRule represents a rule that can be used with TailoredProfiles
              to execute arbitrary checks against the cluster.
            displayName: Custom Rule
            kind: CustomRule
            name: customrules.compliance.openshift.io
            version: v1alpha1
          - description: ProfileBundle is the Schema for the profilebundles API
            displayName: Profile Bundle
            kind: ProfileBundle
            name: profilebundles.compliance.openshift.io
            version: v1alpha1
          - description: Profile is the Schema for the profiles API
            kind: Profile
            name: profiles.compliance.openshift.io
            version: v1alpha1
          - description: Rule is the Schema for the rules API
            kind: Rule
            name: rules.compliance.openshift.io
            version: v1alpha1
          - description: ScanSettingBinding is the Schema for the scansettingbindings
              API
            displayName: Scan Setting Binding
            kind: ScanSettingBinding
            name: scansettingbindings.compliance.openshift.io
            version: v1alpha1
          - description: ScanSetting is the Schema for the scansettings API
            kind: ScanSetting
            name: scansettings.compliance.openshift.io
            version: v1alpha1
          - description: TailoredProfile is the Schema for the tailoredprofiles API
            displayName: Tailored Profile
            kind: TailoredProfile
            name: tailoredprofiles.compliance.openshift.io
            version: v1alpha1
          - description: Variable describes a tunable in the XCCDF profile
            kind: Variable
            name: variables.compliance.openshift.io
            version: v1alpha1
        description: An operator which runs OpenSCAP and allows you to keep your cluster
          compliant with the security benchmark you need.
        displayName: Compliance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - compliance
        - openscap
        - audit
        links:
        - name: Compliance Operator upstream repository
          url: https://github.com/ComplianceAsCode/compliance-operator
        - name: Compliance Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/compliance_operator/co-overview.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/compliance/openshift-compliance-operator-bundle@sha256:0bc0b7a20ce3c6303a45a699f44d2b90597b6a62846e89a5bca285b3228a9a52
        - registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:7b84f08a7f0a808bd92c9540dd5b976b8aa20ed426ce2d646131123e13df60c2
        - registry.redhat.io/compliance/openshift-compliance-must-gather-rhel8@sha256:83ea492a55fb2f2bc423ce7d1ccd31644de8ce492e9d273da47a93413fc9282a
        - registry.redhat.io/compliance/openshift-compliance-openscap-rhel8@sha256:26cbd3cedf1b49bf26d638014ca2fb2196e5a2ed915234721b4ac8679e399011
        - registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77
        version: 1.8.0
      entries:
      - name: compliance-operator.v1.8.0
        version: 1.8.0
      - name: compliance-operator.v1.7.1
        version: 1.7.1
      - name: compliance-operator.v1.7.0
        version: 1.7.0
      - name: compliance-operator.v1.6.2
        version: 1.6.2
      - name: compliance-operator.v1.6.1
        version: 1.6.1
      - name: compliance-operator.v1.6.0
        version: 1.6.0
      - name: compliance-operator.v1.5.1
        version: 1.5.1
      - name: compliance-operator.v1.5.0
        version: 1.5.0
      - name: compliance-operator.v1.4.1
        version: 1.4.1
      - name: compliance-operator.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: compliance-operator
    provider:
      name: Red Hat Inc.
      url: www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-organizations-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-organizations-controller.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "organizations.services.k8s.aws/v1alpha1",
                "kind": "OrganizationalUnit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/organizations-controller:1.2.1
          createdAt: "2025-12-03T21:49:08Z"
          description: AWS Organizations controller is a service controller for managing
            Organizations resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Account represents the state of an AWS organizations Account
              resource.
            displayName: Account
            kind: Account
            name: accounts.organizations.services.k8s.aws
            version: v1alpha1
          - description: OrganizationalUnit represents the state of an AWS organizations
              OrganizationalUnit resource.
            displayName: OrganizationalUnit
            kind: OrganizationalUnit
            name: organizationalunits.organizations.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Organizations resources in AWS from within your Kubernetes cluster.

          **About Amazon Organizations**

          With AWS Organizations you can perform account management activities at scale by consolidating multiple AWS accounts into a single organization. Consolidating accounts simplifies how you use other AWS services. You can leverage the multi-account management services available in AWS Organizations with select AWS services to perform tasks on all accounts that are members of your organization.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Organizations
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - organizations
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Organizations Developer Resources
          url: https://aws.amazon.com/organizations/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: organizations maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-organizations-controller@sha256:e3df4e6f7406e6d94dff44f05b84a1423b446f865b1ef7e5311516b58646291e
        - public.ecr.aws/aws-controllers-k8s/organizations-controller:1.2.1
        version: 1.2.1
      entries:
      - name: ack-organizations-controller.v1.2.1
        version: 1.2.1
      - name: ack-organizations-controller.v1.2.0
        version: 1.2.0
      - name: ack-organizations-controller.v1.1.2
        version: 1.1.2
      - name: ack-organizations-controller.v1.1.1
        version: 1.1.1
      - name: ack-organizations-controller.v1.0.13
        version: 1.0.13
      - name: ack-organizations-controller.v1.0.11
        version: 1.0.11
      - name: ack-organizations-controller.v1.0.10
        version: 1.0.10
      - name: ack-organizations-controller.v1.0.9
        version: 1.0.9
      - name: ack-organizations-controller.v1.0.8
        version: 1.0.8
      - name: ack-organizations-controller.v1.0.7
        version: 1.0.7
      - name: ack-organizations-controller.v1.0.6
        version: 1.0.6
      - name: ack-organizations-controller.v1.0.5
        version: 1.0.5
      - name: ack-organizations-controller.v1.0.4
        version: 1.0.4
      - name: ack-organizations-controller.v1.0.1
        version: 1.0.1
      - name: ack-organizations-controller.v1.0.0
        version: 1.0.0
      - name: ack-organizations-controller.v0.0.10
        version: 0.0.10
      - name: ack-organizations-controller.v0.0.9
        version: 0.0.9
      - name: ack-organizations-controller.v0.0.8
        version: 0.0.8
      - name: ack-organizations-controller.v0.0.7
        version: 0.0.7
      - name: ack-organizations-controller.v0.0.6
        version: 0.0.6
      name: alpha
    defaultChannel: alpha
    packageName: ack-organizations-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Palo Alto Networks
      provider-url: ""
    name: pcc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pcc-operator.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pcc.paloaltonetworks.com/v1alpha1",
                "kind": "Console",
                "metadata": {
                  "name": "pcc-console",
                  "namespace": "twistlock"
                },
                "spec": {
                  "consoleConfig": {
                    "serviceType": "ClusterIP"
                  },
                  "namespace": "twistlock",
                  "version": "21_08_520"
                }
              },
              {
                "apiVersion": "pcc.paloaltonetworks.com/v1alpha1",
                "kind": "ConsoleDefender",
                "metadata": {
                  "name": "pcc-consoledefender",
                  "namespace": "twistlock"
                },
                "spec": {
                  "consoleConfig": {
                    "serviceType": "ClusterIP"
                  },
                  "defenderConfig": {
                    "docker": false
                  },
                  "namespace": "twistlock",
                  "version": "21_08_520"
                }
              },
              {
                "apiVersion": "pcc.paloaltonetworks.com/v1alpha1",
                "kind": "Defender",
                "metadata": {
                  "name": "pcc-defender",
                  "namespace": "twistlock"
                },
                "spec": {
                  "defenderConfig": {
                    "clusterAddress": "twistlock-console.example.com",
                    "consoleAddress": "https://twistlock-console.example.com:8083",
                    "docker": false
                  },
                  "namespace": "twistlock",
                  "version": "21_08_520"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: quay.io/prismacloud/pcc-operator@sha256:b8fcfbd6c51286c874e00db1bd35523386cec406fa4050ef44c0a887730cf9b8
          createdAt: "2021-11-15"
          description: Deploy Prisma Cloud Compute for cloud-native security in your
            clusters
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator
          support: pcc-integrations@paloaltonetworks.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Install the Prisma Cloud Compute Console and Defenders
            displayName: Console and Defenders
            kind: ConsoleDefender
            name: consoledefenders.pcc.paloaltonetworks.com
            version: v1alpha1
          - description: Install the Prisma Cloud Compute Console
            displayName: Console
            kind: Console
            name: consoles.pcc.paloaltonetworks.com
            version: v1alpha1
          - description: Install Prisma Cloud Compute Defenders
            displayName: Defenders
            kind: Defender
            name: defenders.pcc.paloaltonetworks.com
            version: v1alpha1
        description: |
          ## Features
          - Deploy Console
              - Create initial local administrator user
              - Add license
          - Deploy Defenders
          - Support for offline deployments
          - Upgrade Console
          - Upgrade Defenders

          ## Installation
          See the [Prisma Cloud Compute Operator documentation](https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator) for installation guides.

          ## Support
          This operator is available "as is," and should be seen as community-supported; however, Palo Alto Networks will continue contributing whenever possible.
          Palo Alto Networks does not provide technical support or help with using or troubleshooting the operator through normal support channels.
          We encourage you to open GitHub [issues](https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator/issues) and [pull requests](https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator/pulls) to track bugs and feature requests.

          ## Other links
          [Prisma Cloud Compute product documentation](https://docs.paloaltonetworks.com/prisma/prisma-cloud/prisma-cloud-admin-compute.html)

          [Prisma Cloud Compute API documentation](https://prisma.pan.dev/api/cloud/cwpp)
        displayName: Prisma Cloud Compute Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - palo
        - palo alto
        - palo alto networks
        - paloalto
        - twistlock
        - compute
        - prisma
        - prisma cloud
        - prisma cloud compute
        - security
        - image
        - images
        - container
        - containers
        - docker
        - podman
        - vulnerability
        - vulnerabilities
        - compliance
        - runtime
        - scan
        - scanning
        - monitor
        - monitoring
        - alert
        - alerting
        links:
        - name: Prisma Cloud
          url: https://www.paloaltonetworks.com/prisma/cloud
        maintainers:
        - email: pcc-integrations@paloaltonetworks.com
          name: Wyatt Gill
        maturity: alpha
        provider:
          name: Palo Alto Networks
        relatedImages:
        - quay.io/openshift-community-operators/pcc-operator@sha256:e99a466ddb52ad44c435ccf952754d685744fb5b7b7e4cf77dd542e530e4f968
        - quay.io/prismacloud/pcc-operator@sha256:b8fcfbd6c51286c874e00db1bd35523386cec406fa4050ef44c0a887730cf9b8
        version: 0.2.0
      entries:
      - name: pcc-operator.v0.2.0
        version: 0.2.0
      name: stable
    defaultChannel: stable
    packageName: pcc-operator
    provider:
      name: Palo Alto Networks
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: security-profiles-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: security-profiles-operator.v0.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "AppArmorProfile",
                "metadata": {
                  "annotations": {
                    "description": "Block writing to any files in the disk."
                  },
                  "name": "test-profile"
                },
                "spec": {
                  "abstract": {
                    "filesystem": {
                      "readOnlyPaths": [],
                      "readWritePaths": [],
                      "writeOnlyPaths": []
                    }
                  }
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "SecurityProfilesOperatorDaemon",
                "metadata": {
                  "name": "spod",
                  "namespace": "security-profiles-operator"
                },
                "spec": {
                  "enableAppArmor": false,
                  "enableLogEnricher": false,
                  "enableSelinux": false
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "ProfileRecording",
                "metadata": {
                  "name": "test-recording"
                },
                "spec": {
                  "kind": "SeccompProfile",
                  "podSelector": {
                    "matchLabels": {
                      "app": "alpine"
                    }
                  },
                  "recorder": "bpf"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "ProfileBinding",
                "metadata": {
                  "name": "profile-binding"
                },
                "spec": {
                  "image": "nginx:1.19.1",
                  "profileRef": {
                    "kind": "SeccompProfile",
                    "name": "profile-allow-unsafe"
                  }
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha2",
                "kind": "RawSelinuxProfile",
                "metadata": {
                  "name": "errorlogger"
                },
                "spec": {
                  "policy": "(blockinherit container)\n(allow process var_log_t ( dir ( open read getattr lock search ioctl add_name remove_name write ))) \n(allow process var_log_t ( file ( getattr read write append ioctl lock map open create  ))) \n(allow process var_log_t ( sock_file ( getattr read write append open  ))) \n"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "Blocks all syscalls."
                  },
                  "name": "profile-block-all"
                },
                "spec": {
                  "defaultAction": "SCMP_ACT_ERRNO"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "UNSAFE: Allows all syscalls whilst logging their use. Similar to running as unconfined in terms of enforcement."
                  },
                  "name": "profile-complain-unsafe"
                },
                "spec": {
                  "defaultAction": "SCMP_ACT_LOG"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "UNSAFE: Allows all syscalls. Similar to running as unconfined as it provides no enforcement."
                  },
                  "name": "profile-allow-unsafe"
                },
                "spec": {
                  "defaultAction": "SCMP_ACT_ALLOW"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "Enables complain mode whilst blocking high-risk syscalls. Some essential syscalls are allowed to decrease log noise."
                  },
                  "name": "profile-complain-block-high-risk"
                },
                "spec": {
                  "architectures": [
                    "SCMP_ARCH_X86_64",
                    "SCMP_ARCH_PPC64LE"
                  ],
                  "defaultAction": "SCMP_ACT_LOG",
                  "syscalls": [
                    {
                      "action": "SCMP_ACT_ALLOW",
                      "names": [
                        "exit",
                        "exit_group",
                        "futex",
                        "nanosleep"
                      ]
                    },
                    {
                      "action": "SCMP_ACT_ERRNO",
                      "names": [
                        "acct",
                        "add_key",
                        "bpf",
                        "clock_adjtime",
                        "clock_settime",
                        "create_module",
                        "delete_module",
                        "finit_module",
                        "get_kernel_syms",
                        "get_mempolicy",
                        "init_module",
                        "ioperm",
                        "iopl",
                        "kcmp",
                        "kexec_file_load",
                        "kexec_load",
                        "keyctl",
                        "lookup_dcookie",
                        "mbind",
                        "mount",
                        "move_pages",
                        "name_to_handle_at",
                        "nfsservctl",
                        "open_by_handle_at",
                        "perf_event_open",
                        "personality",
                        "pivot_root",
                        "process_vm_readv",
                        "process_vm_writev",
                        "ptrace",
                        "query_module",
                        "quotactl",
                        "reboot",
                        "request_key",
                        "set_mempolicy",
                        "setns",
                        "settimeofday",
                        "stime",
                        "swapoff",
                        "swapon",
                        "_sysctl",
                        "sysfs",
                        "umount2",
                        "umount",
                        "unshare",
                        "uselib",
                        "userfaultfd",
                        "ustat",
                        "vm86old",
                        "vm86"
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha2",
                "kind": "SelinuxProfile",
                "metadata": {
                  "name": "errorlogger"
                },
                "spec": {
                  "allow": {
                    "var_log_t": {
                      "dir": [
                        "open",
                        "read",
                        "getattr",
                        "lock",
                        "search",
                        "ioctl",
                        "add_name",
                        "remove_name",
                        "write"
                      ],
                      "file": [
                        "getattr",
                        "read",
                        "write",
                        "append",
                        "ioctl",
                        "lock",
                        "map",
                        "open",
                        "create"
                      ],
                      "sock_file": [
                        "getattr",
                        "read",
                        "write",
                        "append",
                        "open"
                      ]
                    }
                  },
                  "inherit": [
                    {
                      "name": "container"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          createdAt: "2025-02-25T13:34:54Z"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.4.1 <0.9.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-security-profiles
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ProfileBinding is the Schema for the profilebindings API.
            displayName: Profile Binding
            kind: ProfileBinding
            name: profilebindings.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - description: ProfileRecording is the Schema for the profilerecordings
              API.
            displayName: Profile Recording
            kind: ProfileRecording
            name: profilerecordings.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - description: SeccompProfile is a cluster level specification for a seccomp
              profile. See https://github.com/opencontainers/runtime-spec/blob/master/config-linux.md#seccomp
            displayName: Seccomp Profile
            kind: SeccompProfile
            name: seccompprofiles.security-profiles-operator.x-k8s.io
            version: v1beta1
          - description: SecurityProfileNodeStatus is a per-node status of a security
              profile
            displayName: Security Profile Node Status
            kind: SecurityProfileNodeStatus
            name: securityprofilenodestatuses.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - description: SecurityProfilesOperatorDaemon is the Schema to configure
              the spod deployment.
            displayName: Security Profiles Operator Daemon
            kind: SecurityProfilesOperatorDaemon
            name: securityprofilesoperatordaemons.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - kind: RawSelinuxProfile
            name: rawselinuxprofiles.security-profiles-operator.x-k8s.io
            version: v1alpha2
          - description: SelinuxProfile is the Schema for the selinuxprofiles API.
            displayName: Selinux Profile
            kind: SelinuxProfile
            name: selinuxprofiles.security-profiles-operator.x-k8s.io
            version: v1alpha2
          - description: AppArmorProfile is a cluster level specification for an AppArmor
              profile.
            displayName: App Armor Profile
            kind: AppArmorProfile
            name: apparmorprofiles.security-profiles-operator.x-k8s.io
            version: v1alpha1
        description: SPO is an operator which aims to make it easier for users to
          use SELinux, seccomp and AppArmor in Kubernetes clusters
        displayName: Security Profiles Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - selinux
        - seccomp
        - apparmor
        - ebpf
        links:
        - name: Security Profiles Operator
          url: https://github.com/openshift/security-profiles-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat support
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/compliance/openshift-security-profiles-operator-bundle@sha256:bd5bdc7085f3e9ce8494488f29b4d83a29796c47d536106cd6e14a7b67ab07ee
        - registry.redhat.io/compliance/openshift-security-profiles-rhel8-operator@sha256:828274d71c65ef820e6a8b652e3f102624d09a0609fb00bae7b32dc62ff37fd1
        - registry.redhat.io/compliance/openshift-selinuxd-rhel8@sha256:81273ff149482109417064b40d333edb131481c05547e4ffa6485475460a48ba
        - registry.redhat.io/compliance/openshift-selinuxd-rhel9@sha256:3278d69814a8d0d1e31dcdef454c24828aadbb468a3d5d3e15910c76481765bd
        version: 0.9.0
      entries:
      - name: security-profiles-operator.v0.9.0
        version: 0.9.0
      - name: security-profiles-operator.v0.8.6
        version: 0.8.6
      - name: security-profiles-operator.v0.8.5
        version: 0.8.5
      - name: security-profiles-operator.v0.8.4
        version: 0.8.4
      - name: security-profiles-operator.v0.8.2
        version: 0.8.2
      name: release-alpha-rhel-8
    defaultChannel: release-alpha-rhel-8
    packageName: security-profiles-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: recipe
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: recipe.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "Recipe",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "recipe",
                    "app.kubernetes.io/instance": "recipe-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "recipe",
                    "app.kubernetes.io/part-of": "recipe"
                  },
                  "name": "recipe-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          createdAt: "2025-12-18T08:02:13Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Recipe is the Schema for the recipes API
            displayName: Recipe
            kind: Recipe
            name: recipes.ramendr.openshift.io
            version: v1alpha1
        description: |
          Recipe describes a workflow used for capturing or recovering Kubernetes resources. This can be referred to by a Ramen DRPlacementControl object when kubeObjectProtection is enabled.
        displayName: Recipe
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - recipe
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/recipe
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-recipe-operator-bundle@sha256:29523317a9edd364fdff7d028726cb77ff8bcb700be280b6fd8ae367697c8b97
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        version: 4.19.9-rhodf
      entries:
      - name: recipe.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: recipe.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: recipe.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: recipe.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: recipe.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: recipe.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: recipe.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: recipe.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: recipe.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: recipe.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: recipe.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "Recipe",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "recipe",
                    "app.kubernetes.io/instance": "recipe-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "recipe",
                    "app.kubernetes.io/part-of": "recipe"
                  },
                  "name": "recipe-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:51:27Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Recipe is the Schema for the recipes API
            displayName: Recipe
            kind: Recipe
            name: recipes.ramendr.openshift.io
            version: v1alpha1
        description: |
          Recipe describes a workflow used for capturing or recovering Kubernetes resources. This can be referred to by a Ramen DRPlacementControl object when kubeObjectProtection is enabled.
        displayName: Recipe
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - recipe
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/recipe
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-recipe-operator-bundle@sha256:45b85ff810e9c08233127aaa78e2f7ce77a01f6e4638bc65f88c87d4ffbb7cf9
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        version: 4.20.4-rhodf
      entries:
      - name: recipe.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: recipe.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: recipe.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: recipe.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: recipe.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: recipe
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hitachi
      provider-url: ""
    name: hnas-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hnas-csi-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.csi.hitachi.com/v1",
                "kind": "HNAS",
                "metadata": {
                  "name": "hnas",
                  "namespace": "kube-system"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Storage
          containerImage: registry.hitachivantara.com/fpgroup-docker-public/hnas-csi-operator@sha256:9d3f9f10fc7172ee9cebbd9ee318906756d7e96909f2e66e0534e98bb53e0a7b
          createdAt: "2025-07-30T15:12:23Z"
          description: An operator for managing Hitachi NAS CSI driver
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HNAS is the Schema for the hnas API
            displayName: HNAS
            kind: HNAS
            name: hnas.charts.csi.hitachi.com
            version: v1
        description: |-
          The Hitachi NAS CSI driver operator deploys the Hitachi NAS CSI driver on Kubernetes and OpenShift environments.  The driver can be used to create and manage persistent storage hosted on Hitachi NAS products, including those in the Hitachi VSP One File 3x range and the HNAS range of products.

          For the complete documentation, go to our [Product Documentation site](https://docs.hitachivantara.com/home) and refer to the Hitachi NAS CSI Driver User Guide - MK-92HNAS091.  The guide covers prerequisites for the NAS system and covers the driver functionality and all configuration options available for the driver.
        displayName: Hitachi NAS CSI Driver Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hitachi
        - Storage
        - Container Storage Interface
        - CSI
        - NAS
        links:
        - name: Product Documentation
          url: https://docs.hitachivantara.com/home
        maturity: stable
        minKubeVersion: 1.28.0
        provider:
          name: Hitachi
        relatedImages:
        - registry.connect.redhat.com/hitachi/hnas-csi-operator-bundle@sha256:79e6ba3db78aa55a9f3839a172843d284d91e9cdaae9cb2c8e7e705f3d03115d
        - registry.hitachivantara.com/fpgroup-docker-public/hnas-csi-driver@sha256:6b6f6816c9f4e608e93e7fbc0347255415426a0ff0c9a53b7750e5ba54d91262
        - registry.k8s.io/sig-storage/csi-resizer@sha256:ab774734705a906561e15b67f6a96538f3ad520335d636f793aaafe87a3b5200
        - registry.k8s.io/sig-storage/csi-attacher@sha256:a399393ff5bd156277c56bae0c08389b1a1b95b7fd6ea44a316ce55e0dd559d7
        - registry.hitachivantara.com/fpgroup-docker-public/hnas-csi-operator@sha256:9d3f9f10fc7172ee9cebbd9ee318906756d7e96909f2e66e0534e98bb53e0a7b
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:d7138bcc3aa5f267403d45ad4292c95397e421ea17a0035888850f424c7de25d
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d5e46da8aff7d73d6f00c761dae94472bcda6e78f4f17b3802dc89d44de0111b
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:dd788d79cf4c1b8edee6d9b80b8a1ebfc51a38a365c5be656986b129be9ac784
        - registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f
        version: 1.0.0
      entries:
      - name: hnas-csi-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: hnas-csi-operator
    provider:
      name: Hitachi
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-recyclebin-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-recyclebin-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "recyclebin.services.k8s.aws/v1alpha1",
                "kind": "Rule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/recyclebin-controller:1.2.0
          createdAt: "2025-11-29T04:03:10Z"
          description: AWS Recycle Bin controller is a service controller for managing
            Recycle Bin resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Rule represents the state of an AWS recyclebin Rule resource.
            displayName: Rule
            kind: Rule
            name: rules.recyclebin.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Recycle Bin resources in AWS from within your Kubernetes cluster.

          **About Amazon Recycle Bin**

          Recycle Bin is a data recovery feature that enables you to restore accidentally deleted Amazon EBS snapshots and EBS-backed AMIs. When using Recycle Bin, if your resources are deleted, they are retained in the Recycle Bin for a time period that you specify before being permanently deleted.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Recycle Bin
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - recyclebin
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Recycle Bin Developer Resources
          url: https://docs.aws.amazon.com/ebs/latest/userguide/recycle-bin.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: recyclebin maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/recyclebin-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-recyclebin-controller@sha256:1444a27bbf0d726d65f6e5e513e47828ad4259751a8bb0695ecc72dafe5eaac7
        version: 1.2.0
      entries:
      - name: ack-recyclebin-controller.v1.2.0
        version: 1.2.0
      - name: ack-recyclebin-controller.v1.1.2
        version: 1.1.2
      - name: ack-recyclebin-controller.v1.1.1
        version: 1.1.1
      - name: ack-recyclebin-controller.v1.1.0
        version: 1.1.0
      - name: ack-recyclebin-controller.v1.0.13
        version: 1.0.13
      - name: ack-recyclebin-controller.v1.0.12
        version: 1.0.12
      - name: ack-recyclebin-controller.v1.0.11
        version: 1.0.11
      - name: ack-recyclebin-controller.v1.0.10
        version: 1.0.10
      - name: ack-recyclebin-controller.v1.0.9
        version: 1.0.9
      - name: ack-recyclebin-controller.v1.0.8
        version: 1.0.8
      - name: ack-recyclebin-controller.v1.0.7
        version: 1.0.7
      - name: ack-recyclebin-controller.v1.0.6
        version: 1.0.6
      - name: ack-recyclebin-controller.v1.0.5
        version: 1.0.5
      - name: ack-recyclebin-controller.v1.0.2
        version: 1.0.2
      - name: ack-recyclebin-controller.v1.0.1
        version: 1.0.1
      - name: ack-recyclebin-controller.v1.0.0
        version: 1.0.0
      - name: ack-recyclebin-controller.v0.0.3
        version: 0.0.3
      - name: ack-recyclebin-controller.v0.0.2
        version: 0.0.2
      - name: ack-recyclebin-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-recyclebin-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Carlos Eduardo de Paula
      provider-url: ""
    name: lbconfig-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lbconfig-operator.v0.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lb.lbconfig.carlosedp.com/v1",
                "kind": "ExternalLoadBalancer",
                "metadata": {
                  "name": "externalloadbalancer-infra-sample",
                  "namespace": "lbconfig-operator-system"
                },
                "spec": {
                  "monitor": {
                    "monitortype": "http",
                    "path": "/healthz",
                    "port": 1936
                  },
                  "ports": [
                    80,
                    443
                  ],
                  "provider": {
                    "creds": "f5-creds",
                    "host": "https://192.168.1.35",
                    "partition": "Common",
                    "port": 443,
                    "validatecerts": false,
                    "vendor": "F5_BigIP"
                  },
                  "type": "infra",
                  "vip": "192.168.1.45"
                }
              },
              {
                "apiVersion": "lb.lbconfig.carlosedp.com/v1",
                "kind": "ExternalLoadBalancer",
                "metadata": {
                  "name": "externalloadbalancer-infra-sample-shard",
                  "namespace": "lbconfig-operator-system"
                },
                "spec": {
                  "monitor": {
                    "monitortype": "http",
                    "path": "/healthz",
                    "port": 1936
                  },
                  "nodelabels": {
                    "kubernetes.io/region": "DC1",
                    "node-role.kubernetes.io/infra": ""
                  },
                  "ports": [
                    80,
                    443
                  ],
                  "provider": {
                    "creds": "f5-creds",
                    "host": "https://192.168.1.35",
                    "partition": "Common",
                    "port": 443,
                    "validatecerts": false,
                    "vendor": "F5_BigIP"
                  },
                  "type": "infra",
                  "vip": "192.168.1.46"
                }
              },
              {
                "apiVersion": "lb.lbconfig.carlosedp.com/v1",
                "kind": "ExternalLoadBalancer",
                "metadata": {
                  "name": "externalloadbalancer-master-sample",
                  "namespace": "lbconfig-operator-system"
                },
                "spec": {
                  "monitor": {
                    "monitortype": "https",
                    "path": "/healthz",
                    "port": 6443
                  },
                  "ports": [
                    6443
                  ],
                  "provider": {
                    "creds": "netscaler-creds",
                    "host": "https://192.168.1.36",
                    "port": 443,
                    "validatecerts": false,
                    "vendor": "Citrix_ADC"
                  },
                  "type": "master",
                  "vip": "192.168.1.40"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Networking
          certified: "false"
          containerImage: quay.io/carlosedp/lbconfig-operator:v0.5.1
          createdAt: "2025-01-09T15:45:28Z"
          description: Manage External Load Balancers allowing creation/update for
            VIPs and Servers dynamically via API.
          k8sMaxVersion: ""
          k8sMinVersion: ""
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/carlosedp/lbconfig-operator
          support: https://github.com/carlosedp/lbconfig-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalLoadBalancer is the Schema for the externalloadbalancers
              API
            displayName: ExternalLoadBalancer Instance
            kind: ExternalLoadBalancer
            name: externalloadbalancers.lb.lbconfig.carlosedp.com
            version: v1
          required:
          - description: ExternalLoadBalancer represents a configured instance of
              an external Load-Balancer for a specific group of nodes of the cluster.
              The Instance has a VIP and ports to be balanced to the cluster nodes
              based on a set of node labels.
            displayName: External Load-Balancer Configuration Instance
            kind: ExternalLoadBalancer
            name: externalloadbalancers.lb.lbconfig.carlosedp.com
            version: v1
        description: |
          ## About the Operator

          The LBConfig Operator, manages the configuration of External Load Balancer instances (on third-party equipment via it's API) and creates VIPs and IP Pools with Monitors for a set of OpenShift or Kubernetes nodes like Master-nodes (Control-Plane), Infra nodes (where the Routers or Ingress controllers are located) or based on it's roles and/or labels.

          The operator dynamically handles creating, updating or deleting the IPs of the pools in the Load Balancer based on the Node IPs for each role or label. On every change of the operator configuration (CRDs) or addition/change/removal or cluster Nodes, the operator updates the Load Balancer properly.

          ## Main Use Cases

          The main users for this operator is enterprise deployments or clusters composed of multiple nodes having an external load-balancer providing the balancing and high-availability to access the cluster in both API and Application levels.

          ### Create ExternalLoadBalancer Instances

          Create the instances for each Load Balancer instance you need (for example one for Master Nodes and another for the Infra Nodes). **If installing on OpenShift or Kubernetes with OLM (or in a different namespace), adjust the sample YAMLs to match the created namespace**.

          **The provider `vendor` field can be (case-insensitive):**

          * **`F5_BigIP`** - Tested on F5 BigIP version 15
          * **`Citrix_ADC`** - Tested on Citrix ADC (Netscaler) version 13
          * **`HAProxy`** - HAProxy with Dataplane API. ([Docs](./docs/haproxy/))
          * **`Dummy`** - Dummy backend used for testing to only print log messages on operations

          Create the secret holding the Load Balancer API user and password:

          ```sh
          oc create secret generic f5-creds --from-literal=username=admin --from-literal=password=admin123 --namespace lbconfig-operator-system
          ```

          #### Sample CRDs and Available Fields

          Master Nodes using a Citrix ADC LB:

          ```yaml
          apiVersion: lb.lbconfig.carlosedp.com/v1
          kind: ExternalLoadBalancer
          metadata:
            name: externalloadbalancer-master-sample
            namespace: lbconfig-operator-system
          spec:
            vip: "192.168.1.40"
            type: "master"
            ports:
              - 6443
            monitor:
              path: "/healthz"
              port: 6443
              monitortype: "https"
            provider:
              vendor: Citrix_ADC
              host: "https://192.168.1.36"
              port: 443
              creds: netscaler-creds
              validatecerts: false
          ```

          Infra Nodes using a F5 BigIP LB:

          ```yaml
          apiVersion: lb.lbconfig.carlosedp.com/v1
          kind: ExternalLoadBalancer
          metadata:
            name: externalloadbalancer-infra-sample
            namespace: lbconfig-operator-system
          spec:
            vip: "192.168.1.45"
            type: "infra"
            ports:
              - 80
              - 443
            monitor:
              path: "/healthz"
              port: 1936
              monitortype: http
            provider:
              vendor: F5_BigIP
              host: "https://192.168.1.35"
              port: 443
              creds: f5-creds
              partition: "Common"
              validatecerts: false
          ```

          To choose the nodes which will be part of the server pool, you can set either `type` or `nodelabels` fields. The yaml field `type: "master"` or `type: "infra"` selects nodes with the role label `"node-role.kubernetes.io/master"` and `"node-role.kubernetes.io/infra"` respectively. If the field `nodelabels` array is used instead, the operator will use nodes which match all labels.

          Clusters with sharded routers or using arbitrary labels to determine where the Ingress Controllers run can be configured like:

          ```yaml
          spec:
            vip: "10.0.0.6"
            ports:
              - 80
            nodelabels:
              "node.kubernetes.io/ingress-controller": "production"
              "kubernetes.io/region": "DC1"
            ...
          ```

          ## Getting Help

          This project fully open-source and is hosted at [GitHub](https://github.com/carlosedp/lbconfig-operator). Always check the project page and issues for the latest updates and/or solutions to problems encountered. If a problem is detected, please fill an issue. Feature request and improvement issues are welcome.

          Some fields inside `providers` are optional and depend on the used backend. Check the [API docs](https://pkg.go.dev/github.com/carlosedp/lbconfig-operator/api/lb.lbconfig.carlosedp.com/v1?utm_source=gopls#Provider) which fields are backend-specific.

          ## Disclaimers

          * The operator does not check if the requested configuration (names, IPs) already exists and/or conflicts with existing configuration in the Load Balancer. The user is responsible for these checks before deployment;
          * I am not responsible if the operator changes/deletes existing configuration on the Load Balancer if existing names are already configured.
          * The operator creates the entries(Pools, VIPs, Monitors) in the provided Load Balancer with the `name` of the instance configured in the CustomResource prefixed with the type. Eg. For a CR with name `externalloadbalancer-master-sample`, the operator creates a server pool named `Pool-externalloadbalancer-master-sample-6443` (suffixed with the port), a monitor named `Monitor-externalloadbalancer-master-sample` and a VIP named `VIP-externalloadbalancer-master-sample-6443` (suffixed with the port).
        displayName: External Load-Balancer Configuration Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - 'load-balance '
        - infrastructure
        links:
        - name: GitHub
          url: https://github.com/carlosedp/lbconfig-operator
        - name: Documentation
          url: https://github.com/carlosedp/lbconfig-operator/docs
        - name: Issues
          url: https://github.com/carlosedp/lbconfig-operator/issues
        maintainers:
        - email: carlosedp@gmail.com
          name: Carlos Eduardo de Paula
        maturity: beta
        minKubeVersion: 1.18.0
        provider:
          name: Carlos Eduardo de Paula
        relatedImages:
        - quay.io/community-operator-pipeline-prod/lbconfig-operator@sha256:b0bb724a5d9905633962a3e8267e75d371f754bce866a29cba3ac0d0c671ebff
        - quay.io/carlosedp/kube-rbac-proxy:v0.15.0
        - quay.io/carlosedp/lbconfig-operator:v0.5.1
        version: 0.5.1
      entries:
      - name: lbconfig-operator.v0.5.1
        version: 0.5.1
      - name: lbconfig-operator.v0.5.0
        version: 0.5.0
      - name: lbconfig-operator.v0.4.1
        version: 0.4.1
      - name: lbconfig-operator.v0.4.0
        version: 0.4.0
      - name: lbconfig-operator.v0.2.0
        version: 0.2.0
      name: beta
    defaultChannel: beta
    packageName: lbconfig-operator
    provider:
      name: Carlos Eduardo de Paula
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Sigstore Authors
      provider-url: https://sigstore.dev
    name: sigstore-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sigstore-helm-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "helm.sigstore.dev/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "name": "rekor"
                },
                "spec": {
                  "server": {
                    "ingress": {
                      "hostname": "rekor.example.com"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          containerImage: ghcr.io/sigstore/sigstore-helm-operator@sha256:d9c6eb162b97a1aa1ad3bf515db65d01a96e55b6f8bcd646864d3e64a3ee2b9e
          createdAt: "2021-09-01T21:20:28Z"
          description: Helm Charts for Sigstore Project.
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/sigstore/sigstore-helm-operator
          support: The Sigstore Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Rekor
            name: rekors.helm.sigstore.dev
            version: v1alpha1
        description: |-
          Helm Charts for the sigstore project

          ## Charts

          The following charts are available:

          * [Rekor](https://github.com/sigstore/helm-charts/tree/main/charts/rekor)
        displayName: sigstore
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        links:
        - name: Sigstore Helm Operator
          url: https://github.com/sabre1041/sigstore-helm-operator
        maintainers:
        - email: ablock@redhat.com
          name: Andrew Block
        maturity: alpha
        provider:
          name: The Sigstore Authors
          url: https://sigstore.dev
        relatedImages:
        - ghcr.io/sigstore/sigstore-helm-operator@sha256:d9c6eb162b97a1aa1ad3bf515db65d01a96e55b6f8bcd646864d3e64a3ee2b9e
        - quay.io/coreos/kube-rbac-proxy@sha256:e10d1d982dd653db74ca87a1d1ad017bc5ef1aeb651bdea089debf16485b080b
        - quay.io/openshift-community-operators/sigstore-helm-operator@sha256:ff4e548a8a003bd23e5076362bafb2e22f77b8445c5e3585d99cd5ce26fcaf56
        version: 0.0.1
      entries:
      - name: sigstore-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: sigstore-helm-operator
    provider:
      name: The Sigstore Authors
      url: https://sigstore.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ember-csi-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ember-csi-community-operator.v0.9.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ember-csi.io/v1alpha1",
                "kind": "EmberStorageBackend",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "config": {
                    "envVars": {
                      "X_CSI_PERSISTENCE_CONFIG": {
                        "storage": "crd"
                      },
                      "X_CSI_DEBUG_MODE": "",
                      "X_CSI_DEFAULT_MOUNT_FS": "ext4",
                      "X_CSI_EMBER_CONFIG": {
                        "grpc_workers": 30,
                        "disable_logs": false,
                        "plugin_name": "",
                        "slow_operations": true,
                        "disabled": [],
                        "enable_probe": false,
                        "debug": false,
                        "user_id": "ember_csi.io",
                        "project_id": "ember_csi.io"
                      },
                      "X_CSI_BACKEND_CONFIG": {
                        "enable_unsupported_driver": false,
                        "driver": "ACCESSIscsi",
                        "name": "",
                        "driver__ACCESSIscsi__vrts_lun_sparse": true,
                        "driver__ACCESSIscsi__vrts_target_config": "/etc/cinder/vrts_target.xml",
                        "driver__AS13000__as13000_ipsan_pools__transform_csv": "Pool0",
                        "driver__AS13000__as13000_meta_pool": "",
                        "driver__AS13000__as13000_token_available_time": 3300,
                        "driver__Acs5000ISCSI__acs5000_copy_interval": 5,
                        "driver__Acs5000ISCSI__acs5000_target": 0,
                        "driver__Acs5000ISCSI__acs5000_volpool_name__transform_csv": "pool01",
                        "driver__DPLFC__dpl_pool": "",
                        "driver__DPLFC__dpl_port": 8357,
                        "driver__DPLISCSI__dpl_pool": "",
                        "driver__DPLISCSI__dpl_port": 8357,
                        "driver__DSWARE__dsware_rest_url": "",
                        "driver__DSWARE__dsware_storage_pools": "",
                        "driver__DSWARE__manager_ips__transform_csv_kvs": "",
                        "driver__Datera__backend_availability_zone": "",
                        "driver__Datera__chap_password": "",
                        "driver__Datera__chap_username": "",
                        "driver__Datera__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__Datera__driver_client_cert": "",
                        "driver__Datera__driver_client_cert_key": "",
                        "driver__Datera__driver_data_namespace": "",
                        "driver__Datera__driver_ssl_cert_path": "",
                        "driver__Datera__driver_ssl_cert_verify": false,
                        "driver__Datera__driver_use_ssl": false,
                        "driver__Datera__filter_function": "",
                        "driver__Datera__goodness_function": "",
                        "driver__Datera__iscsi_iotype": "fileio",
                        "driver__Datera__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__Datera__iscsi_target_flags": "",
                        "driver__Datera__iscsi_write_cache": "on",
                        "driver__Datera__num_shell_tries": 3,
                        "driver__Datera__num_volume_device_scan_tries": 3,
                        "driver__Datera__report_discard_supported": false,
                        "driver__Datera__storage_protocol": "iscsi",
                        "driver__Datera__target_helper": "tgtadm",
                        "driver__Datera__target_ip_address": "$my_ip",
                        "driver__Datera__target_port": 3260,
                        "driver__Datera__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__Datera__target_protocol": "iscsi",
                        "driver__Datera__trace_flags__transform_csv": "",
                        "driver__Datera__use_chap_auth": false,
                        "driver__Datera__volume_backend_name": "",
                        "driver__Datera__volume_clear": "zero",
                        "driver__Datera__volume_clear_ionice": "",
                        "driver__Datera__volume_clear_size": 0,
                        "driver__Datera__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__Datera__volume_copy_bps_limit": 0,
                        "driver__Datera__volume_dd_blocksize": "1M",
                        "driver__Datera__volumes_dir": "$state_path/volumes",
                        "driver__FJDXFC__cinder_eternus_config_file": "/etc/cinder/cinder_fujitsu_eternus_dx.xml",
                        "driver__FJDXISCSI__cinder_eternus_config_file": "/etc/cinder/cinder_fujitsu_eternus_dx.xml",
                        "driver__FlashSystemFC__flashsystem_connection_protocol": "FC",
                        "driver__FlashSystemFC__flashsystem_multihostmap_enabled": true,
                        "driver__FlashSystemISCSI__flashsystem_connection_protocol": "FC",
                        "driver__FlashSystemISCSI__flashsystem_multihostmap_enabled": true,
                        "driver__GPFS__gpfs_images_dir": "",
                        "driver__GPFS__gpfs_images_share_mode__transform_empty_none": "",
                        "driver__GPFS__gpfs_max_clone_depth": 0,
                        "driver__GPFS__gpfs_mount_point_base": "",
                        "driver__GPFS__gpfs_sparse_volumes": true,
                        "driver__GPFS__gpfs_storage_pool": "system",
                        "driver__GPFSRemote__gpfs_hosts__transform_csv": "",
                        "driver__GPFSRemote__gpfs_hosts_key_file": "$state_path/ssh_known_hosts",
                        "driver__GPFSRemote__gpfs_images_dir": "",
                        "driver__GPFSRemote__gpfs_images_share_mode__transform_empty_none": "",
                        "driver__GPFSRemote__gpfs_max_clone_depth": 0,
                        "driver__GPFSRemote__gpfs_mount_point_base": "",
                        "driver__GPFSRemote__gpfs_private_key": "",
                        "driver__GPFSRemote__gpfs_sparse_volumes": true,
                        "driver__GPFSRemote__gpfs_ssh_port": 22,
                        "driver__GPFSRemote__gpfs_storage_pool": "system",
                        "driver__GPFSRemote__gpfs_strict_host_key_policy": false,
                        "driver__GPFSRemote__gpfs_user_login": "root",
                        "driver__GPFSRemote__gpfs_user_password": "",
                        "driver__HBSDFC__backend_availability_zone": "",
                        "driver__HBSDFC__chap_password": "",
                        "driver__HBSDFC__chap_username": "",
                        "driver__HBSDFC__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__HBSDFC__driver_client_cert": "",
                        "driver__HBSDFC__driver_client_cert_key": "",
                        "driver__HBSDFC__driver_data_namespace": "",
                        "driver__HBSDFC__driver_ssl_cert_path": "",
                        "driver__HBSDFC__driver_ssl_cert_verify": false,
                        "driver__HBSDFC__driver_use_ssl": false,
                        "driver__HBSDFC__filter_function": "",
                        "driver__HBSDFC__goodness_function": "",
                        "driver__HBSDFC__iscsi_iotype": "fileio",
                        "driver__HBSDFC__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__HBSDFC__iscsi_target_flags": "",
                        "driver__HBSDFC__iscsi_write_cache": "on",
                        "driver__HBSDFC__num_shell_tries": 3,
                        "driver__HBSDFC__num_volume_device_scan_tries": 3,
                        "driver__HBSDFC__report_discard_supported": false,
                        "driver__HBSDFC__storage_protocol": "iscsi",
                        "driver__HBSDFC__target_helper": "tgtadm",
                        "driver__HBSDFC__target_ip_address": "$my_ip",
                        "driver__HBSDFC__target_port": 3260,
                        "driver__HBSDFC__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__HBSDFC__target_protocol": "iscsi",
                        "driver__HBSDFC__trace_flags__transform_csv": "",
                        "driver__HBSDFC__use_chap_auth": false,
                        "driver__HBSDFC__volume_backend_name": "",
                        "driver__HBSDFC__volume_clear": "zero",
                        "driver__HBSDFC__volume_clear_ionice": "",
                        "driver__HBSDFC__volume_clear_size": 0,
                        "driver__HBSDFC__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__HBSDFC__volume_copy_bps_limit": 0,
                        "driver__HBSDFC__volume_dd_blocksize": "1M",
                        "driver__HBSDFC__volumes_dir": "$state_path/volumes",
                        "driver__HBSDISCSI__backend_availability_zone": "",
                        "driver__HBSDISCSI__chap_password": "",
                        "driver__HBSDISCSI__chap_username": "",
                        "driver__HBSDISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__HBSDISCSI__driver_client_cert": "",
                        "driver__HBSDISCSI__driver_client_cert_key": "",
                        "driver__HBSDISCSI__driver_data_namespace": "",
                        "driver__HBSDISCSI__driver_ssl_cert_path": "",
                        "driver__HBSDISCSI__driver_ssl_cert_verify": false,
                        "driver__HBSDISCSI__driver_use_ssl": false,
                        "driver__HBSDISCSI__filter_function": "",
                        "driver__HBSDISCSI__goodness_function": "",
                        "driver__HBSDISCSI__iscsi_iotype": "fileio",
                        "driver__HBSDISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__HBSDISCSI__iscsi_target_flags": "",
                        "driver__HBSDISCSI__iscsi_write_cache": "on",
                        "driver__HBSDISCSI__num_shell_tries": 3,
                        "driver__HBSDISCSI__num_volume_device_scan_tries": 3,
                        "driver__HBSDISCSI__report_discard_supported": false,
                        "driver__HBSDISCSI__storage_protocol": "iscsi",
                        "driver__HBSDISCSI__target_helper": "tgtadm",
                        "driver__HBSDISCSI__target_ip_address": "$my_ip",
                        "driver__HBSDISCSI__target_port": 3260,
                        "driver__HBSDISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__HBSDISCSI__target_protocol": "iscsi",
                        "driver__HBSDISCSI__trace_flags__transform_csv": "",
                        "driver__HBSDISCSI__use_chap_auth": false,
                        "driver__HBSDISCSI__volume_backend_name": "",
                        "driver__HBSDISCSI__volume_clear": "zero",
                        "driver__HBSDISCSI__volume_clear_ionice": "",
                        "driver__HBSDISCSI__volume_clear_size": 0,
                        "driver__HBSDISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__HBSDISCSI__volume_copy_bps_limit": 0,
                        "driver__HBSDISCSI__volume_dd_blocksize": "1M",
                        "driver__HBSDISCSI__volumes_dir": "$state_path/volumes",
                        "driver__HPE3PARFC__hpe3par_api_url": "",
                        "driver__HPE3PARFC__hpe3par_cpg__transform_csv": "OpenStack",
                        "driver__HPE3PARFC__hpe3par_cpg_snap": "",
                        "driver__HPE3PARFC__hpe3par_debug": false,
                        "driver__HPE3PARFC__hpe3par_iscsi_chap_enabled": false,
                        "driver__HPE3PARFC__hpe3par_iscsi_ips__transform_csv": "",
                        "driver__HPE3PARFC__hpe3par_password": "",
                        "driver__HPE3PARFC__hpe3par_snapshot_expiration": "",
                        "driver__HPE3PARFC__hpe3par_snapshot_retention": "",
                        "driver__HPE3PARFC__hpe3par_target_nsp": "",
                        "driver__HPE3PARFC__hpe3par_username": "",
                        "driver__HPE3PARFC__san_ip": "",
                        "driver__HPE3PARFC__san_login": "admin",
                        "driver__HPE3PARFC__san_password": "",
                        "driver__HPE3PARFC__san_private_key": "",
                        "driver__HPE3PARFC__san_ssh_port": 22,
                        "driver__HPE3PARFC__ssh_conn_timeout": 30,
                        "driver__HPE3PARFC__target_ip_address": "$my_ip",
                        "driver__HPE3PARFC__target_port": 3260,
                        "driver__HPE3PARFC__unique_fqdn_network": true,
                        "driver__HPE3PARISCSI__hpe3par_api_url": "",
                        "driver__HPE3PARISCSI__hpe3par_cpg__transform_csv": "OpenStack",
                        "driver__HPE3PARISCSI__hpe3par_cpg_snap": "",
                        "driver__HPE3PARISCSI__hpe3par_debug": false,
                        "driver__HPE3PARISCSI__hpe3par_iscsi_chap_enabled": false,
                        "driver__HPE3PARISCSI__hpe3par_iscsi_ips__transform_csv": "",
                        "driver__HPE3PARISCSI__hpe3par_password": "",
                        "driver__HPE3PARISCSI__hpe3par_snapshot_expiration": "",
                        "driver__HPE3PARISCSI__hpe3par_snapshot_retention": "",
                        "driver__HPE3PARISCSI__hpe3par_target_nsp": "",
                        "driver__HPE3PARISCSI__hpe3par_username": "",
                        "driver__HPE3PARISCSI__san_ip": "",
                        "driver__HPE3PARISCSI__san_login": "admin",
                        "driver__HPE3PARISCSI__san_password": "",
                        "driver__HPE3PARISCSI__san_private_key": "",
                        "driver__HPE3PARISCSI__san_ssh_port": 22,
                        "driver__HPE3PARISCSI__ssh_conn_timeout": 30,
                        "driver__HPE3PARISCSI__target_ip_address": "$my_ip",
                        "driver__HPE3PARISCSI__target_port": 3260,
                        "driver__HPE3PARISCSI__unique_fqdn_network": true,
                        "driver__HPMSAFC__driver_ssl_cert_path": "",
                        "driver__HPMSAFC__driver_ssl_cert_verify": false,
                        "driver__HPMSAFC__driver_use_ssl": false,
                        "driver__HPMSAFC__hpmsa_pool_name": "A",
                        "driver__HPMSAFC__hpmsa_pool_type": "virtual",
                        "driver__HPMSAFC__san_ip": "",
                        "driver__HPMSAFC__san_login": "admin",
                        "driver__HPMSAFC__san_password": "",
                        "driver__HPMSAISCSI__driver_ssl_cert_path": "",
                        "driver__HPMSAISCSI__driver_ssl_cert_verify": false,
                        "driver__HPMSAISCSI__driver_use_ssl": false,
                        "driver__HPMSAISCSI__hpmsa_iscsi_ips__transform_csv": "",
                        "driver__HPMSAISCSI__hpmsa_pool_name": "A",
                        "driver__HPMSAISCSI__hpmsa_pool_type": "virtual",
                        "driver__HPMSAISCSI__san_ip": "",
                        "driver__HPMSAISCSI__san_login": "admin",
                        "driver__HPMSAISCSI__san_password": "",
                        "driver__HuaweiFC__cinder_huawei_conf_file": "/etc/cinder/cinder_huawei_conf.xml",
                        "driver__HuaweiFC__hypermetro_devices": "",
                        "driver__HuaweiFC__metro_domain_name": "",
                        "driver__HuaweiFC__metro_san_address": "",
                        "driver__HuaweiFC__metro_san_password": "",
                        "driver__HuaweiFC__metro_san_user": "",
                        "driver__HuaweiFC__metro_storage_pools": "",
                        "driver__HuaweiISCSI__cinder_huawei_conf_file": "/etc/cinder/cinder_huawei_conf.xml",
                        "driver__HuaweiISCSI__hypermetro_devices": "",
                        "driver__HuaweiISCSI__metro_domain_name": "",
                        "driver__HuaweiISCSI__metro_san_address": "",
                        "driver__HuaweiISCSI__metro_san_password": "",
                        "driver__HuaweiISCSI__metro_san_user": "",
                        "driver__HuaweiISCSI__metro_storage_pools": "",
                        "driver__IBMStorage__chap": "disabled",
                        "driver__IBMStorage__connection_type": "iscsi",
                        "driver__IBMStorage__management_ips": "",
                        "driver__IBMStorage__proxy": "cinder.volume.drivers.ibm.ibm_storage.proxy.IBMStorageProxy",
                        "driver__InStorageMCSFC__instorage_mcs_allow_tenant_qos": false,
                        "driver__InStorageMCSFC__instorage_mcs_localcopy_rate": 50,
                        "driver__InStorageMCSFC__instorage_mcs_localcopy_timeout": 120,
                        "driver__InStorageMCSFC__instorage_mcs_vol_autoexpand": true,
                        "driver__InStorageMCSFC__instorage_mcs_vol_compression": false,
                        "driver__InStorageMCSFC__instorage_mcs_vol_grainsize": 256,
                        "driver__InStorageMCSFC__instorage_mcs_vol_intier": true,
                        "driver__InStorageMCSFC__instorage_mcs_vol_iogrp": "0",
                        "driver__InStorageMCSFC__instorage_mcs_vol_rsize": 2,
                        "driver__InStorageMCSFC__instorage_mcs_vol_warning": 0,
                        "driver__InStorageMCSFC__instorage_mcs_volpool_name__transform_csv": "volpool",
                        "driver__InStorageMCSFC__instorage_san_secondary_ip": "",
                        "driver__InStorageMCSISCSI__instorage_mcs_allow_tenant_qos": false,
                        "driver__InStorageMCSISCSI__instorage_mcs_localcopy_rate": 50,
                        "driver__InStorageMCSISCSI__instorage_mcs_localcopy_timeout": 120,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_autoexpand": true,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_compression": false,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_grainsize": 256,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_intier": true,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_iogrp": "0",
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_rsize": 2,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_warning": 0,
                        "driver__InStorageMCSISCSI__instorage_mcs_volpool_name__transform_csv": "volpool",
                        "driver__InStorageMCSISCSI__instorage_san_secondary_ip": "",
                        "driver__InfiniboxVolume__chap_password": "",
                        "driver__InfiniboxVolume__chap_username": "",
                        "driver__InfiniboxVolume__infinidat_iscsi_netspaces__transform_csv": "",
                        "driver__InfiniboxVolume__infinidat_pool_name": "",
                        "driver__InfiniboxVolume__infinidat_storage_protocol": "fc",
                        "driver__InfiniboxVolume__infinidat_use_compression": false,
                        "driver__InfiniboxVolume__num_volume_device_scan_tries": 3,
                        "driver__InfiniboxVolume__san_ip": "",
                        "driver__InfiniboxVolume__san_login": "admin",
                        "driver__InfiniboxVolume__san_password": "",
                        "driver__InfiniboxVolume__san_thin_provision": true,
                        "driver__InfiniboxVolume__use_chap_auth": false,
                        "driver__InfiniboxVolume__volume_dd_blocksize": "1M",
                        "driver__InfortrendCLIFC__infortrend_cli_cache": false,
                        "driver__InfortrendCLIFC__infortrend_cli_max_retries": 5,
                        "driver__InfortrendCLIFC__infortrend_cli_path": "/opt/bin/Infortrend/raidcmd_ESDS10.jar",
                        "driver__InfortrendCLIFC__infortrend_cli_timeout": 60,
                        "driver__InfortrendCLIFC__infortrend_iqn_prefix": "iqn.2002-10.com.infortrend",
                        "driver__InfortrendCLIFC__infortrend_pools_name__transform_csv": "",
                        "driver__InfortrendCLIFC__infortrend_slots_a_channels_id__transform_csv": "",
                        "driver__InfortrendCLIFC__infortrend_slots_b_channels_id__transform_csv": "",
                        "driver__InfortrendCLIFC__java_path": "/usr/bin/java",
                        "driver__InfortrendCLIISCSI__infortrend_cli_cache": false,
                        "driver__InfortrendCLIISCSI__infortrend_cli_max_retries": 5,
                        "driver__InfortrendCLIISCSI__infortrend_cli_path": "/opt/bin/Infortrend/raidcmd_ESDS10.jar",
                        "driver__InfortrendCLIISCSI__infortrend_cli_timeout": 60,
                        "driver__InfortrendCLIISCSI__infortrend_iqn_prefix": "iqn.2002-10.com.infortrend",
                        "driver__InfortrendCLIISCSI__infortrend_pools_name__transform_csv": "",
                        "driver__InfortrendCLIISCSI__infortrend_slots_a_channels_id__transform_csv": "",
                        "driver__InfortrendCLIISCSI__infortrend_slots_b_channels_id__transform_csv": "",
                        "driver__InfortrendCLIISCSI__java_path": "/usr/bin/java",
                        "driver__JovianISCSI__backend_availability_zone": "",
                        "driver__JovianISCSI__chap_password": "",
                        "driver__JovianISCSI__chap_username": "",
                        "driver__JovianISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__JovianISCSI__driver_client_cert": "",
                        "driver__JovianISCSI__driver_client_cert_key": "",
                        "driver__JovianISCSI__driver_data_namespace": "",
                        "driver__JovianISCSI__driver_ssl_cert_path": "",
                        "driver__JovianISCSI__driver_ssl_cert_verify": false,
                        "driver__JovianISCSI__driver_use_ssl": false,
                        "driver__JovianISCSI__filter_function": "",
                        "driver__JovianISCSI__goodness_function": "",
                        "driver__JovianISCSI__iscsi_iotype": "fileio",
                        "driver__JovianISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__JovianISCSI__iscsi_target_flags": "",
                        "driver__JovianISCSI__iscsi_write_cache": "on",
                        "driver__JovianISCSI__num_shell_tries": 3,
                        "driver__JovianISCSI__num_volume_device_scan_tries": 3,
                        "driver__JovianISCSI__report_discard_supported": false,
                        "driver__JovianISCSI__storage_protocol": "iscsi",
                        "driver__JovianISCSI__target_helper": "tgtadm",
                        "driver__JovianISCSI__target_ip_address": "$my_ip",
                        "driver__JovianISCSI__target_port": 3260,
                        "driver__JovianISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__JovianISCSI__target_protocol": "iscsi",
                        "driver__JovianISCSI__trace_flags__transform_csv": "",
                        "driver__JovianISCSI__use_chap_auth": false,
                        "driver__JovianISCSI__volume_backend_name": "",
                        "driver__JovianISCSI__volume_clear": "zero",
                        "driver__JovianISCSI__volume_clear_ionice": "",
                        "driver__JovianISCSI__volume_clear_size": 0,
                        "driver__JovianISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__JovianISCSI__volume_copy_bps_limit": 0,
                        "driver__JovianISCSI__volume_dd_blocksize": "1M",
                        "driver__JovianISCSI__volumes_dir": "$state_path/volumes",
                        "driver__KaminarioISCSI__disable_discovery": false,
                        "driver__KaminarioISCSI__san_ip": "",
                        "driver__KaminarioISCSI__san_login": "admin",
                        "driver__KaminarioISCSI__san_password": "",
                        "driver__KaminarioISCSI__unique_fqdn_network": true,
                        "driver__KaminarioISCSI__volume_dd_blocksize": "1M",
                        "driver__LVMVolume__iscsi_iotype": "fileio",
                        "driver__LVMVolume__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__LVMVolume__iscsi_target_flags": "",
                        "driver__LVMVolume__iscsi_write_cache": "on",
                        "driver__LVMVolume__lvm_conf_file": "/etc/cinder/lvm.conf",
                        "driver__LVMVolume__lvm_mirrors": 0,
                        "driver__LVMVolume__lvm_suppress_fd_warnings": false,
                        "driver__LVMVolume__lvm_type": "auto",
                        "driver__LVMVolume__nvmet_port_id": 1,
                        "driver__LVMVolume__scst_target_driver": "iscsi",
                        "driver__LVMVolume__scst_target_iqn_name": "",
                        "driver__LVMVolume__spdk_max_queue_depth": 64,
                        "driver__LVMVolume__spdk_rpc_ip": "",
                        "driver__LVMVolume__spdk_rpc_password": "",
                        "driver__LVMVolume__spdk_rpc_port": 8000,
                        "driver__LVMVolume__spdk_rpc_username": "",
                        "driver__LVMVolume__target_helper": "tgtadm",
                        "driver__LVMVolume__target_ip_address": "$my_ip",
                        "driver__LVMVolume__target_port": 3260,
                        "driver__LVMVolume__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__LVMVolume__target_protocol": "iscsi",
                        "driver__LVMVolume__volume_clear": "zero",
                        "driver__LVMVolume__volume_clear_size": 0,
                        "driver__LVMVolume__volume_dd_blocksize": "1M",
                        "driver__LVMVolume__volume_group": "cinder-volumes",
                        "driver__LVMVolume__volumes_dir": "$state_path/volumes",
                        "driver__LenovoFC__lenovo_pool_name": "A",
                        "driver__LenovoFC__lenovo_pool_type": "virtual",
                        "driver__LenovoISCSI__lenovo_iscsi_ips__transform_csv": "",
                        "driver__LenovoISCSI__lenovo_pool_name": "A",
                        "driver__LenovoISCSI__lenovo_pool_type": "virtual",
                        "driver__LinstorDrbd__linstor_autoplace_count": 0,
                        "driver__LinstorDrbd__linstor_controller_diskless": true,
                        "driver__LinstorDrbd__linstor_default_blocksize": 4096,
                        "driver__LinstorDrbd__linstor_default_storage_pool_name": "DfltStorPool",
                        "driver__LinstorDrbd__linstor_default_uri": "linstor://localhost",
                        "driver__LinstorDrbd__linstor_default_volume_group_name": "drbd-vg",
                        "driver__LinstorDrbd__linstor_volume_downsize_factor__transform_string_float": "4096",
                        "driver__LinstorIscsi__linstor_autoplace_count": 0,
                        "driver__LinstorIscsi__linstor_controller_diskless": true,
                        "driver__LinstorIscsi__linstor_default_blocksize": 4096,
                        "driver__LinstorIscsi__linstor_default_storage_pool_name": "DfltStorPool",
                        "driver__LinstorIscsi__linstor_default_uri": "linstor://localhost",
                        "driver__LinstorIscsi__linstor_default_volume_group_name": "drbd-vg",
                        "driver__LinstorIscsi__linstor_volume_downsize_factor__transform_string_float": "4096",
                        "driver__MStorageFC__nec_actual_free_capacity": false,
                        "driver__MStorageFC__nec_auto_accesscontrol": true,
                        "driver__MStorageFC__nec_backend_max_ld_count": 1024,
                        "driver__MStorageFC__nec_backup_ldname_format": "LX:%s",
                        "driver__MStorageFC__nec_backup_pools__transform_csv": "",
                        "driver__MStorageFC__nec_cv_ldname_format": "LX:__ControlVolume_%xh",
                        "driver__MStorageFC__nec_diskarray_name": "",
                        "driver__MStorageFC__nec_ismcli_fip": "",
                        "driver__MStorageFC__nec_ismcli_password": "",
                        "driver__MStorageFC__nec_ismcli_privkey": "",
                        "driver__MStorageFC__nec_ismcli_user": "",
                        "driver__MStorageFC__nec_ismview_alloptimize": false,
                        "driver__MStorageFC__nec_ismview_dir": "/tmp/nec/cinder",
                        "driver__MStorageFC__nec_ldname_format": "LX:%s",
                        "driver__MStorageFC__nec_ldset": "",
                        "driver__MStorageFC__nec_pools__transform_csv": "",
                        "driver__MStorageFC__nec_queryconfig_view": false,
                        "driver__MStorageFC__nec_ssh_pool_port_number": 22,
                        "driver__MStorageFC__nec_unpairthread_timeout": 3600,
                        "driver__MStorageISCSI__nec_actual_free_capacity": false,
                        "driver__MStorageISCSI__nec_auto_accesscontrol": true,
                        "driver__MStorageISCSI__nec_backend_max_ld_count": 1024,
                        "driver__MStorageISCSI__nec_backup_ldname_format": "LX:%s",
                        "driver__MStorageISCSI__nec_backup_pools__transform_csv": "",
                        "driver__MStorageISCSI__nec_cv_ldname_format": "LX:__ControlVolume_%xh",
                        "driver__MStorageISCSI__nec_diskarray_name": "",
                        "driver__MStorageISCSI__nec_ismcli_fip": "",
                        "driver__MStorageISCSI__nec_ismcli_password": "",
                        "driver__MStorageISCSI__nec_ismcli_privkey": "",
                        "driver__MStorageISCSI__nec_ismcli_user": "",
                        "driver__MStorageISCSI__nec_ismview_alloptimize": false,
                        "driver__MStorageISCSI__nec_ismview_dir": "/tmp/nec/cinder",
                        "driver__MStorageISCSI__nec_ldname_format": "LX:%s",
                        "driver__MStorageISCSI__nec_ldset": "",
                        "driver__MStorageISCSI__nec_pools__transform_csv": "",
                        "driver__MStorageISCSI__nec_queryconfig_view": false,
                        "driver__MStorageISCSI__nec_ssh_pool_port_number": 22,
                        "driver__MStorageISCSI__nec_unpairthread_timeout": 3600,
                        "driver__MacroSANFC__backend_availability_zone": "",
                        "driver__MacroSANFC__chap_password": "",
                        "driver__MacroSANFC__chap_username": "",
                        "driver__MacroSANFC__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__MacroSANFC__driver_client_cert": "",
                        "driver__MacroSANFC__driver_client_cert_key": "",
                        "driver__MacroSANFC__driver_data_namespace": "",
                        "driver__MacroSANFC__driver_ssl_cert_path": "",
                        "driver__MacroSANFC__driver_ssl_cert_verify": false,
                        "driver__MacroSANFC__driver_use_ssl": false,
                        "driver__MacroSANFC__filter_function": "",
                        "driver__MacroSANFC__goodness_function": "",
                        "driver__MacroSANFC__iscsi_iotype": "fileio",
                        "driver__MacroSANFC__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__MacroSANFC__iscsi_target_flags": "",
                        "driver__MacroSANFC__iscsi_write_cache": "on",
                        "driver__MacroSANFC__num_shell_tries": 3,
                        "driver__MacroSANFC__num_volume_device_scan_tries": 3,
                        "driver__MacroSANFC__report_discard_supported": false,
                        "driver__MacroSANFC__storage_protocol": "iscsi",
                        "driver__MacroSANFC__target_helper": "tgtadm",
                        "driver__MacroSANFC__target_ip_address": "$my_ip",
                        "driver__MacroSANFC__target_port": 3260,
                        "driver__MacroSANFC__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__MacroSANFC__target_protocol": "iscsi",
                        "driver__MacroSANFC__trace_flags__transform_csv": "",
                        "driver__MacroSANFC__use_chap_auth": false,
                        "driver__MacroSANFC__volume_backend_name": "",
                        "driver__MacroSANFC__volume_clear": "zero",
                        "driver__MacroSANFC__volume_clear_ionice": "",
                        "driver__MacroSANFC__volume_clear_size": 0,
                        "driver__MacroSANFC__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__MacroSANFC__volume_copy_bps_limit": 0,
                        "driver__MacroSANFC__volume_dd_blocksize": "1M",
                        "driver__MacroSANFC__volumes_dir": "$state_path/volumes",
                        "driver__MacroSANISCSI__backend_availability_zone": "",
                        "driver__MacroSANISCSI__chap_password": "",
                        "driver__MacroSANISCSI__chap_username": "",
                        "driver__MacroSANISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__MacroSANISCSI__driver_client_cert": "",
                        "driver__MacroSANISCSI__driver_client_cert_key": "",
                        "driver__MacroSANISCSI__driver_data_namespace": "",
                        "driver__MacroSANISCSI__driver_ssl_cert_path": "",
                        "driver__MacroSANISCSI__driver_ssl_cert_verify": false,
                        "driver__MacroSANISCSI__driver_use_ssl": false,
                        "driver__MacroSANISCSI__filter_function": "",
                        "driver__MacroSANISCSI__goodness_function": "",
                        "driver__MacroSANISCSI__iscsi_iotype": "fileio",
                        "driver__MacroSANISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__MacroSANISCSI__iscsi_target_flags": "",
                        "driver__MacroSANISCSI__iscsi_write_cache": "on",
                        "driver__MacroSANISCSI__num_shell_tries": 3,
                        "driver__MacroSANISCSI__num_volume_device_scan_tries": 3,
                        "driver__MacroSANISCSI__report_discard_supported": false,
                        "driver__MacroSANISCSI__storage_protocol": "iscsi",
                        "driver__MacroSANISCSI__target_helper": "tgtadm",
                        "driver__MacroSANISCSI__target_ip_address": "$my_ip",
                        "driver__MacroSANISCSI__target_port": 3260,
                        "driver__MacroSANISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__MacroSANISCSI__target_protocol": "iscsi",
                        "driver__MacroSANISCSI__trace_flags__transform_csv": "",
                        "driver__MacroSANISCSI__use_chap_auth": false,
                        "driver__MacroSANISCSI__volume_backend_name": "",
                        "driver__MacroSANISCSI__volume_clear": "zero",
                        "driver__MacroSANISCSI__volume_clear_ionice": "",
                        "driver__MacroSANISCSI__volume_clear_size": 0,
                        "driver__MacroSANISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__MacroSANISCSI__volume_copy_bps_limit": 0,
                        "driver__MacroSANISCSI__volume_dd_blocksize": "1M",
                        "driver__MacroSANISCSI__volumes_dir": "$state_path/volumes",
                        "driver__NetAppCmodeFibreChannel__netapp_vserver": "",
                        "driver__NetAppCmodeISCSI__netapp_vserver": "",
                        "driver__NexentaISCSI__nexenta_blocksize": 4096,
                        "driver__NexentaISCSI__nexenta_dataset_compression": "on",
                        "driver__NexentaISCSI__nexenta_dataset_dedup": "off",
                        "driver__NexentaISCSI__nexenta_dataset_description": "",
                        "driver__NexentaISCSI__nexenta_folder": "",
                        "driver__NexentaISCSI__nexenta_group_snapshot_template": "group-snapshot-%s",
                        "driver__NexentaISCSI__nexenta_host": "",
                        "driver__NexentaISCSI__nexenta_host_group_prefix": "cinder",
                        "driver__NexentaISCSI__nexenta_iscsi_target_host_group": "all",
                        "driver__NexentaISCSI__nexenta_iscsi_target_portal_groups": "",
                        "driver__NexentaISCSI__nexenta_iscsi_target_portal_port": 3260,
                        "driver__NexentaISCSI__nexenta_iscsi_target_portals": "",
                        "driver__NexentaISCSI__nexenta_lu_writebackcache_disabled": false,
                        "driver__NexentaISCSI__nexenta_luns_per_target": 100,
                        "driver__NexentaISCSI__nexenta_ns5_blocksize": 32,
                        "driver__NexentaISCSI__nexenta_origin_snapshot_template": "origin-snapshot-%s",
                        "driver__NexentaISCSI__nexenta_rest_backoff_factor__transform_string_float": "0.5",
                        "driver__NexentaISCSI__nexenta_rest_connect_timeout__transform_string_float": "30",
                        "driver__NexentaISCSI__nexenta_rest_protocol": "auto",
                        "driver__NexentaISCSI__nexenta_rest_read_timeout__transform_string_float": "300",
                        "driver__NexentaISCSI__nexenta_rest_retry_count": 3,
                        "driver__NexentaISCSI__nexenta_sparse": false,
                        "driver__NexentaISCSI__nexenta_target_group_prefix": "cinder",
                        "driver__NexentaISCSI__nexenta_target_prefix": "iqn.1986-03.com.sun:02:cinder",
                        "driver__NexentaISCSI__nexenta_use_https": true,
                        "driver__NexentaISCSI__nexenta_volume": "cinder",
                        "driver__NexentaISCSI__nexenta_volume_group": "iscsi",
                        "driver__NimbleFC__nimble_pool_name": "default",
                        "driver__NimbleFC__nimble_subnet_label": "*",
                        "driver__NimbleFC__nimble_verify_cert_path": "",
                        "driver__NimbleFC__nimble_verify_certificate": false,
                        "driver__NimbleISCSI__nimble_pool_name": "default",
                        "driver__NimbleISCSI__nimble_subnet_label": "*",
                        "driver__NimbleISCSI__nimble_verify_cert_path": "",
                        "driver__NimbleISCSI__nimble_verify_certificate": false,
                        "driver__PVMEFC__driver_ssl_cert_path": "",
                        "driver__PVMEFC__driver_ssl_cert_verify": false,
                        "driver__PVMEFC__driver_use_ssl": false,
                        "driver__PVMEFC__pvme_pool_name": "A",
                        "driver__PVMEFC__san_ip": "",
                        "driver__PVMEFC__san_login": "admin",
                        "driver__PVMEFC__san_password": "",
                        "driver__PVMEISCSI__driver_ssl_cert_path": "",
                        "driver__PVMEISCSI__driver_ssl_cert_verify": false,
                        "driver__PVMEISCSI__driver_use_ssl": false,
                        "driver__PVMEISCSI__pvme_iscsi_ips__transform_csv": "",
                        "driver__PVMEISCSI__pvme_pool_name": "A",
                        "driver__PVMEISCSI__san_ip": "",
                        "driver__PVMEISCSI__san_login": "admin",
                        "driver__PVMEISCSI__san_password": "",
                        "driver__PowerFlex__powerflex_allow_migration_during_rebuild": false,
                        "driver__PowerFlex__powerflex_allow_non_padded_volumes": false,
                        "driver__PowerFlex__powerflex_max_over_subscription_ratio__transform_string_float": "10.0",
                        "driver__PowerFlex__powerflex_rest_server_port": 443,
                        "driver__PowerFlex__powerflex_round_volume_capacity": true,
                        "driver__PowerFlex__powerflex_server_api_version": "",
                        "driver__PowerFlex__powerflex_storage_pools": "",
                        "driver__PowerFlex__powerflex_unmap_volume_before_deletion": false,
                        "driver__PowerMaxFC__driver_ssl_cert_verify": false,
                        "driver__PowerMaxFC__initiator_check": false,
                        "driver__PowerMaxFC__interval": 3,
                        "driver__PowerMaxFC__load_balance": false,
                        "driver__PowerMaxFC__load_balance_real_time": false,
                        "driver__PowerMaxFC__load_data_format": "Avg",
                        "driver__PowerMaxFC__load_look_back": 60,
                        "driver__PowerMaxFC__load_look_back_real_time": 1,
                        "driver__PowerMaxFC__port_group_load_metric": "PercentBusy",
                        "driver__PowerMaxFC__port_load_metric": "PercentBusy",
                        "driver__PowerMaxFC__powermax_array": "",
                        "driver__PowerMaxFC__powermax_array_tag_list__transform_csv": "",
                        "driver__PowerMaxFC__powermax_port_group_name_template": "portGroupName",
                        "driver__PowerMaxFC__powermax_port_groups__transform_csv": "",
                        "driver__PowerMaxFC__powermax_service_level": "",
                        "driver__PowerMaxFC__powermax_short_host_name_template": "shortHostName",
                        "driver__PowerMaxFC__powermax_snapvx_unlink_limit": 3,
                        "driver__PowerMaxFC__powermax_srp": "",
                        "driver__PowerMaxFC__retries": 200,
                        "driver__PowerMaxFC__san_ip": "",
                        "driver__PowerMaxFC__san_login": "admin",
                        "driver__PowerMaxFC__san_password": "",
                        "driver__PowerMaxFC__u4p_failover_autofailback": true,
                        "driver__PowerMaxFC__u4p_failover_backoff_factor": 1,
                        "driver__PowerMaxFC__u4p_failover_retries": 3,
                        "driver__PowerMaxFC__u4p_failover_target__transform_csv_kvs": "",
                        "driver__PowerMaxFC__u4p_failover_timeout": 20,
                        "driver__PowerMaxFC__vmax_workload": "",
                        "driver__PowerMaxISCSI__chap_password": "",
                        "driver__PowerMaxISCSI__chap_username": "",
                        "driver__PowerMaxISCSI__driver_ssl_cert_verify": false,
                        "driver__PowerMaxISCSI__initiator_check": false,
                        "driver__PowerMaxISCSI__interval": 3,
                        "driver__PowerMaxISCSI__load_balance": false,
                        "driver__PowerMaxISCSI__load_balance_real_time": false,
                        "driver__PowerMaxISCSI__load_data_format": "Avg",
                        "driver__PowerMaxISCSI__load_look_back": 60,
                        "driver__PowerMaxISCSI__load_look_back_real_time": 1,
                        "driver__PowerMaxISCSI__port_group_load_metric": "PercentBusy",
                        "driver__PowerMaxISCSI__port_load_metric": "PercentBusy",
                        "driver__PowerMaxISCSI__powermax_array": "",
                        "driver__PowerMaxISCSI__powermax_array_tag_list__transform_csv": "",
                        "driver__PowerMaxISCSI__powermax_port_group_name_template": "portGroupName",
                        "driver__PowerMaxISCSI__powermax_port_groups__transform_csv": "",
                        "driver__PowerMaxISCSI__powermax_service_level": "",
                        "driver__PowerMaxISCSI__powermax_short_host_name_template": "shortHostName",
                        "driver__PowerMaxISCSI__powermax_snapvx_unlink_limit": 3,
                        "driver__PowerMaxISCSI__powermax_srp": "",
                        "driver__PowerMaxISCSI__retries": 200,
                        "driver__PowerMaxISCSI__san_ip": "",
                        "driver__PowerMaxISCSI__san_login": "admin",
                        "driver__PowerMaxISCSI__san_password": "",
                        "driver__PowerMaxISCSI__u4p_failover_autofailback": true,
                        "driver__PowerMaxISCSI__u4p_failover_backoff_factor": 1,
                        "driver__PowerMaxISCSI__u4p_failover_retries": 3,
                        "driver__PowerMaxISCSI__u4p_failover_target__transform_csv_kvs": "",
                        "driver__PowerMaxISCSI__u4p_failover_timeout": 20,
                        "driver__PowerMaxISCSI__use_chap_auth": false,
                        "driver__PowerMaxISCSI__vmax_workload": "",
                        "driver__PowerStore__powerstore_appliances__transform_csv": "",
                        "driver__PowerStore__powerstore_ports__transform_csv": "",
                        "driver__PureFC__driver_ssl_cert_path": "",
                        "driver__PureFC__driver_ssl_cert_verify": false,
                        "driver__PureFC__pure_api_token": "",
                        "driver__PureFC__pure_automatic_max_oversubscription_ratio": true,
                        "driver__PureFC__pure_eradicate_on_delete": false,
                        "driver__PureFC__pure_host_personality__transform_empty_none": "",
                        "driver__PureFC__pure_iscsi_cidr": "0.0.0.0/0",
                        "driver__PureFC__pure_replica_interval_default": 3600,
                        "driver__PureFC__pure_replica_retention_long_term_default": 7,
                        "driver__PureFC__pure_replica_retention_long_term_per_day_default": 3,
                        "driver__PureFC__pure_replica_retention_short_term_default": 14400,
                        "driver__PureFC__pure_replication_pg_name": "cinder-group",
                        "driver__PureFC__pure_replication_pod_name": "cinder-pod",
                        "driver__PureFC__san_ip": "",
                        "driver__PureFC__use_chap_auth": false,
                        "driver__PureISCSI__driver_ssl_cert_path": "",
                        "driver__PureISCSI__driver_ssl_cert_verify": false,
                        "driver__PureISCSI__pure_api_token": "",
                        "driver__PureISCSI__pure_automatic_max_oversubscription_ratio": true,
                        "driver__PureISCSI__pure_eradicate_on_delete": false,
                        "driver__PureISCSI__pure_host_personality__transform_empty_none": "",
                        "driver__PureISCSI__pure_iscsi_cidr": "0.0.0.0/0",
                        "driver__PureISCSI__pure_replica_interval_default": 3600,
                        "driver__PureISCSI__pure_replica_retention_long_term_default": 7,
                        "driver__PureISCSI__pure_replica_retention_long_term_per_day_default": 3,
                        "driver__PureISCSI__pure_replica_retention_short_term_default": 14400,
                        "driver__PureISCSI__pure_replication_pg_name": "cinder-group",
                        "driver__PureISCSI__pure_replication_pod_name": "cinder-pod",
                        "driver__PureISCSI__san_ip": "",
                        "driver__PureISCSI__use_chap_auth": false,
                        "driver__QnapISCSI__chap_password": "",
                        "driver__QnapISCSI__chap_username": "",
                        "driver__QnapISCSI__driver_ssl_cert_verify": false,
                        "driver__QnapISCSI__qnap_management_url": "",
                        "driver__QnapISCSI__qnap_poolname": "",
                        "driver__QnapISCSI__qnap_storage_protocol": "iscsi",
                        "driver__QnapISCSI__san_login": "admin",
                        "driver__QnapISCSI__san_password": "",
                        "driver__QnapISCSI__target_ip_address": "$my_ip",
                        "driver__QnapISCSI__use_chap_auth": false,
                        "driver__Quobyte__quobyte_client_cfg": "",
                        "driver__Quobyte__quobyte_mount_point_base": "$state_path/mnt",
                        "driver__Quobyte__quobyte_overlay_volumes": false,
                        "driver__Quobyte__quobyte_qcow2_volumes": true,
                        "driver__Quobyte__quobyte_sparsed_volumes": true,
                        "driver__Quobyte__quobyte_volume_from_snapshot_cache": false,
                        "driver__Quobyte__quobyte_volume_url": "",
                        "driver__RBD__deferred_deletion_delay": 0,
                        "driver__RBD__deferred_deletion_purge_interval": 60,
                        "driver__RBD__enable_deferred_deletion": false,
                        "driver__RBD__rados_connect_timeout": -1,
                        "driver__RBD__rados_connection_interval": 5,
                        "driver__RBD__rados_connection_retries": 3,
                        "driver__RBD__rbd_ceph_conf": "",
                        "driver__RBD__rbd_cluster_name": "ceph",
                        "driver__RBD__rbd_exclusive_cinder_pool": false,
                        "driver__RBD__rbd_flatten_volume_from_snapshot": false,
                        "driver__RBD__rbd_keyring_conf": "",
                        "driver__RBD__rbd_max_clone_depth": 5,
                        "driver__RBD__rbd_pool": "rbd",
                        "driver__RBD__rbd_secret_uuid": "",
                        "driver__RBD__rbd_store_chunk_size": 4,
                        "driver__RBD__rbd_user": "",
                        "driver__RBD__report_dynamic_total_capacity": true,
                        "driver__RBD__volume_dd_blocksize": "1M",
                        "driver__RBDISCSI__deferred_deletion_delay": 0,
                        "driver__RBDISCSI__deferred_deletion_purge_interval": 60,
                        "driver__RBDISCSI__driver_ssl_cert_verify": false,
                        "driver__RBDISCSI__enable_deferred_deletion": false,
                        "driver__RBDISCSI__rados_connect_timeout": -1,
                        "driver__RBDISCSI__rados_connection_interval": 5,
                        "driver__RBDISCSI__rados_connection_retries": 3,
                        "driver__RBDISCSI__rbd_ceph_conf": "",
                        "driver__RBDISCSI__rbd_cluster_name": "ceph",
                        "driver__RBDISCSI__rbd_exclusive_cinder_pool": false,
                        "driver__RBDISCSI__rbd_flatten_volume_from_snapshot": false,
                        "driver__RBDISCSI__rbd_iscsi_api_debug": false,
                        "driver__RBDISCSI__rbd_iscsi_api_password": "",
                        "driver__RBDISCSI__rbd_iscsi_api_url": "",
                        "driver__RBDISCSI__rbd_iscsi_api_user": "",
                        "driver__RBDISCSI__rbd_iscsi_target_iqn": "",
                        "driver__RBDISCSI__rbd_max_clone_depth": 5,
                        "driver__RBDISCSI__rbd_pool": "rbd",
                        "driver__RBDISCSI__rbd_secret_uuid": "",
                        "driver__RBDISCSI__rbd_store_chunk_size": 4,
                        "driver__RBDISCSI__rbd_user": "",
                        "driver__RBDISCSI__report_dynamic_total_capacity": true,
                        "driver__RBDISCSI__suppress_requests_ssl_warnings": false,
                        "driver__RBDISCSI__volume_dd_blocksize": "1M",
                        "driver__RSD__podm_password": "",
                        "driver__RSD__podm_url": "",
                        "driver__RSD__podm_username": "",
                        "driver__SCFC__dell_api_async_rest_timeout": 15,
                        "driver__SCFC__dell_api_sync_rest_timeout": 30,
                        "driver__SCFC__dell_sc_api_port": 3033,
                        "driver__SCFC__dell_sc_server_folder": "openstack",
                        "driver__SCFC__dell_sc_ssn": 64702,
                        "driver__SCFC__dell_sc_verify_cert": false,
                        "driver__SCFC__dell_sc_volume_folder": "openstack",
                        "driver__SCFC__dell_server_os": "Red Hat Linux 6.x",
                        "driver__SCFC__excluded_domain_ips__transform_csv": "",
                        "driver__SCFC__included_domain_ips__transform_csv": "",
                        "driver__SCFC__secondary_san_ip": "",
                        "driver__SCFC__secondary_san_login": "Admin",
                        "driver__SCFC__secondary_san_password": "",
                        "driver__SCFC__secondary_sc_api_port": 3033,
                        "driver__SCISCSI__dell_api_async_rest_timeout": 15,
                        "driver__SCISCSI__dell_api_sync_rest_timeout": 30,
                        "driver__SCISCSI__dell_sc_api_port": 3033,
                        "driver__SCISCSI__dell_sc_server_folder": "openstack",
                        "driver__SCISCSI__dell_sc_ssn": 64702,
                        "driver__SCISCSI__dell_sc_verify_cert": false,
                        "driver__SCISCSI__dell_sc_volume_folder": "openstack",
                        "driver__SCISCSI__dell_server_os": "Red Hat Linux 6.x",
                        "driver__SCISCSI__excluded_domain_ips__transform_csv": "",
                        "driver__SCISCSI__included_domain_ips__transform_csv": "",
                        "driver__SCISCSI__secondary_san_ip": "",
                        "driver__SCISCSI__secondary_san_login": "Admin",
                        "driver__SCISCSI__secondary_san_password": "",
                        "driver__SCISCSI__secondary_sc_api_port": 3033,
                        "driver__SdsISCSI__backend_availability_zone": "",
                        "driver__SdsISCSI__chap_password": "",
                        "driver__SdsISCSI__chap_username": "",
                        "driver__SdsISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__SdsISCSI__driver_client_cert": "",
                        "driver__SdsISCSI__driver_client_cert_key": "",
                        "driver__SdsISCSI__driver_data_namespace": "",
                        "driver__SdsISCSI__driver_ssl_cert_path": "",
                        "driver__SdsISCSI__driver_ssl_cert_verify": false,
                        "driver__SdsISCSI__driver_use_ssl": false,
                        "driver__SdsISCSI__filter_function": "",
                        "driver__SdsISCSI__goodness_function": "",
                        "driver__SdsISCSI__iscsi_iotype": "fileio",
                        "driver__SdsISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__SdsISCSI__iscsi_target_flags": "",
                        "driver__SdsISCSI__iscsi_write_cache": "on",
                        "driver__SdsISCSI__num_shell_tries": 3,
                        "driver__SdsISCSI__num_volume_device_scan_tries": 3,
                        "driver__SdsISCSI__report_discard_supported": false,
                        "driver__SdsISCSI__storage_protocol": "iscsi",
                        "driver__SdsISCSI__target_helper": "tgtadm",
                        "driver__SdsISCSI__target_ip_address": "$my_ip",
                        "driver__SdsISCSI__target_port": 3260,
                        "driver__SdsISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__SdsISCSI__target_protocol": "iscsi",
                        "driver__SdsISCSI__trace_flags__transform_csv": "",
                        "driver__SdsISCSI__use_chap_auth": false,
                        "driver__SdsISCSI__volume_backend_name": "",
                        "driver__SdsISCSI__volume_clear": "zero",
                        "driver__SdsISCSI__volume_clear_ionice": "",
                        "driver__SdsISCSI__volume_clear_size": 0,
                        "driver__SdsISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__SdsISCSI__volume_copy_bps_limit": 0,
                        "driver__SdsISCSI__volume_dd_blocksize": "1M",
                        "driver__SdsISCSI__volumes_dir": "$state_path/volumes",
                        "driver__SolidFire__driver_ssl_cert_verify": false,
                        "driver__SolidFire__san_ip": "",
                        "driver__SolidFire__san_login": "admin",
                        "driver__SolidFire__san_password": "",
                        "driver__SolidFire__sf_account_prefix": "",
                        "driver__SolidFire__sf_allow_tenant_qos": false,
                        "driver__SolidFire__sf_api_port": 443,
                        "driver__SolidFire__sf_api_request_timeout": 30,
                        "driver__SolidFire__sf_cluster_pairing_timeout": 60,
                        "driver__SolidFire__sf_emulate_512": true,
                        "driver__SolidFire__sf_enable_vag": false,
                        "driver__SolidFire__sf_provisioning_calc": "maxProvisionedSpace",
                        "driver__SolidFire__sf_svip": "",
                        "driver__SolidFire__sf_volume_clone_timeout": 600,
                        "driver__SolidFire__sf_volume_create_timeout": 60,
                        "driver__SolidFire__sf_volume_pairing_timeout": 3600,
                        "driver__SolidFire__sf_volume_prefix": "UUID-",
                        "driver__StorPool__storpool_replication": 3,
                        "driver__StorPool__storpool_template": "",
                        "driver__StorwizeSVCFC__cycle_period_seconds": 300,
                        "driver__StorwizeSVCFC__storwize_peer_pool": "",
                        "driver__StorwizeSVCFC__storwize_preferred_host_site__transform_csv_kvs": "",
                        "driver__StorwizeSVCFC__storwize_san_secondary_ip": "",
                        "driver__StorwizeSVCFC__storwize_svc_allow_tenant_qos": false,
                        "driver__StorwizeSVCFC__storwize_svc_flashcopy_rate": 50,
                        "driver__StorwizeSVCFC__storwize_svc_flashcopy_timeout": 120,
                        "driver__StorwizeSVCFC__storwize_svc_mirror_pool": "",
                        "driver__StorwizeSVCFC__storwize_svc_multipath_enabled": false,
                        "driver__StorwizeSVCFC__storwize_svc_retain_aux_volume": false,
                        "driver__StorwizeSVCFC__storwize_svc_stretched_cluster_partner": "",
                        "driver__StorwizeSVCFC__storwize_svc_vol_autoexpand": true,
                        "driver__StorwizeSVCFC__storwize_svc_vol_compression": false,
                        "driver__StorwizeSVCFC__storwize_svc_vol_easytier": true,
                        "driver__StorwizeSVCFC__storwize_svc_vol_grainsize": 256,
                        "driver__StorwizeSVCFC__storwize_svc_vol_iogrp": "0",
                        "driver__StorwizeSVCFC__storwize_svc_vol_nofmtdisk": false,
                        "driver__StorwizeSVCFC__storwize_svc_vol_rsize": 2,
                        "driver__StorwizeSVCFC__storwize_svc_vol_warning": 0,
                        "driver__StorwizeSVCFC__storwize_svc_volpool_name__transform_csv": "volpool",
                        "driver__StorwizeSVCISCSI__cycle_period_seconds": 300,
                        "driver__StorwizeSVCISCSI__storwize_peer_pool": "",
                        "driver__StorwizeSVCISCSI__storwize_preferred_host_site__transform_csv_kvs": "",
                        "driver__StorwizeSVCISCSI__storwize_san_secondary_ip": "",
                        "driver__StorwizeSVCISCSI__storwize_svc_allow_tenant_qos": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_flashcopy_rate": 50,
                        "driver__StorwizeSVCISCSI__storwize_svc_flashcopy_timeout": 120,
                        "driver__StorwizeSVCISCSI__storwize_svc_iscsi_chap_enabled": true,
                        "driver__StorwizeSVCISCSI__storwize_svc_mirror_pool": "",
                        "driver__StorwizeSVCISCSI__storwize_svc_retain_aux_volume": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_stretched_cluster_partner": "",
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_autoexpand": true,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_compression": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_easytier": true,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_grainsize": 256,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_iogrp": "0",
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_nofmtdisk": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_rsize": 2,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_warning": 0,
                        "driver__StorwizeSVCISCSI__storwize_svc_volpool_name__transform_csv": "volpool",
                        "driver__SynoISCSI__chap_password": "",
                        "driver__SynoISCSI__chap_username": "",
                        "driver__SynoISCSI__driver_use_ssl": false,
                        "driver__SynoISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__SynoISCSI__synology_admin_port": 5000,
                        "driver__SynoISCSI__synology_device_id": "",
                        "driver__SynoISCSI__synology_one_time_pass": "",
                        "driver__SynoISCSI__synology_password": "",
                        "driver__SynoISCSI__synology_pool_name": "",
                        "driver__SynoISCSI__synology_ssl_verify": true,
                        "driver__SynoISCSI__synology_username": "admin",
                        "driver__SynoISCSI__target_ip_address": "$my_ip",
                        "driver__SynoISCSI__target_port": 3260,
                        "driver__SynoISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__SynoISCSI__target_protocol": "iscsi",
                        "driver__SynoISCSI__use_chap_auth": false,
                        "driver__Unity__remove_empty_host": false,
                        "driver__Unity__unity_io_ports__transform_csv": "",
                        "driver__Unity__unity_storage_pool_names__transform_csv": "",
                        "driver__VNX__default_timeout": 31536000,
                        "driver__VNX__destroy_empty_storage_group": false,
                        "driver__VNX__force_delete_lun_in_storagegroup": true,
                        "driver__VNX__ignore_pool_full_threshold": false,
                        "driver__VNX__initiator_auto_deregistration": false,
                        "driver__VNX__initiator_auto_registration": false,
                        "driver__VNX__io_port_list__transform_csv": "",
                        "driver__VNX__iscsi_initiators": "",
                        "driver__VNX__max_luns_per_storage_group": 255,
                        "driver__VNX__naviseccli_path": "",
                        "driver__VNX__storage_vnx_authentication_type": "global",
                        "driver__VNX__storage_vnx_pool_names__transform_csv": "",
                        "driver__VNX__storage_vnx_security_file_dir": "",
                        "driver__VNX__vnx_async_migrate": true,
                        "driver__VZStorage__vzstorage_default_volume_format": "raw",
                        "driver__VZStorage__vzstorage_mount_options__transform_csv": "",
                        "driver__VZStorage__vzstorage_mount_point_base": "$state_path/mnt",
                        "driver__VZStorage__vzstorage_shares_config": "/etc/cinder/vzstorage_shares",
                        "driver__VZStorage__vzstorage_sparsed_volumes": true,
                        "driver__VZStorage__vzstorage_used_ratio__transform_string_float": "0.95",
                        "driver__WindowsISCSI__windows_iscsi_lun_path": "C:\\iSCSIVirtualDisks",
                        "driver__WindowsSmbfs__smbfs_default_volume_format": "vhd",
                        "driver__WindowsSmbfs__smbfs_mount_point_base": "C:\\OpenStack\\_mnt",
                        "driver__WindowsSmbfs__smbfs_pool_mappings__transform_csv_kvs": "",
                        "driver__WindowsSmbfs__smbfs_shares_config": "C:\\OpenStack\\smbfs_shares.txt",
                        "driver__XtremIOFC__driver_ssl_cert_path": "",
                        "driver__XtremIOFC__driver_ssl_cert_verify": false,
                        "driver__XtremIOFC__san_ip": "",
                        "driver__XtremIOFC__san_login": "admin",
                        "driver__XtremIOFC__san_password": "",
                        "driver__XtremIOFC__xtremio_array_busy_retry_count": 5,
                        "driver__XtremIOFC__xtremio_array_busy_retry_interval": 5,
                        "driver__XtremIOFC__xtremio_clean_unused_ig": false,
                        "driver__XtremIOFC__xtremio_cluster_name": "",
                        "driver__XtremIOISCSI__driver_ssl_cert_path": "",
                        "driver__XtremIOISCSI__driver_ssl_cert_verify": false,
                        "driver__XtremIOISCSI__san_ip": "",
                        "driver__XtremIOISCSI__san_login": "admin",
                        "driver__XtremIOISCSI__san_password": "",
                        "driver__XtremIOISCSI__xtremio_array_busy_retry_count": 5,
                        "driver__XtremIOISCSI__xtremio_array_busy_retry_interval": 5,
                        "driver__XtremIOISCSI__xtremio_clean_unused_ig": false,
                        "driver__XtremIOISCSI__xtremio_cluster_name": "",
                        "driver__ZadaraVPSAISCSI__zadara_access_key": "",
                        "driver__ZadaraVPSAISCSI__zadara_default_snap_policy": false,
                        "driver__ZadaraVPSAISCSI__zadara_ssl_cert_verify": true,
                        "driver__ZadaraVPSAISCSI__zadara_use_iser": true,
                        "driver__ZadaraVPSAISCSI__zadara_vol_encrypt": false,
                        "driver__ZadaraVPSAISCSI__zadara_vol_name_template": "OS_%s",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_host": "",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_poolname": "",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_port": "",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_use_ssl": false
                      }
                    },
                    "sysFiles": {
                      "name": ""
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/embercsi/ember-csi-operator:latest
          createdAt: 2021-02-22:17:47:00
          description: Multi-vendor CSI plugin supporting 80+ storage drivers
          repository: https://github.com/embercsi/ember-csi-operator
          support: http://readthedocs.org/projects/ember-csi/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an Ember CSI storage backend
            displayName: Storage Backends
            kind: EmberStorageBackend
            name: embercsis.ember-csi.io
            version: v1alpha1
        description: |
          Ember-CSI is a multi-vendor CSI plugin driver supporting
          over 80 storage drivers in a single plugin to provide block and mount
          storage to container orchestration systems.

          The operator adds support for management of multiple Ember CSI instances
          within a cluster and simplifies storage backend deployments.

          ### Supported drivers
          Ember-CSI includes a good number of storage drivers, but due to limitation on hardware availability only a small number of them have been validated at one point or another. In alphabetical order they are:

          * HPE3PARFC
          * HPE3PARISCSI
          * KaminarioISCSI
          * LVMVolume
          * PowerMaxFC
          * PowerMaxISCSI
          * PureFC
          * PureISCSI
          * QnapISCSI
          * RBD
          * SolidFire
          * SynoISCSI
          * XtremIOFC
          * XtremIOISCSI

          ### Getting started
          Please have a look at our quick start documentation on how to get started:
          [github.com/embercsi/ember-csi-operator#quick-start](https://github.com/embercsi/ember-csi-operator#quick-start).
          We recommend to use the user friendly "Edit Form" when creating a new
          EmberStorageBackend. You'll find the link in the upper right corner of the
          editor.

          ### Documentation
          Documentation on Ember CSI itself can be found at [docs.ember-csi.io](http://docs.ember-csi.io/).

          ### Getting help
          Please contact us if you encounter any issues while using Ember CSI.
          Get in touch through the #ember-csi channel on Freenode, also accessible through
          [Kiwi IRC](https://kiwiirc.com/nextclient/irc.freenode.net/ember-csi).

          You can also create an issue on the [Github project](https://github.com/embercsi/ember-csi-operator)
          for bugs, enhancements, or other requests.
        displayName: Ember CSI Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Ember-CSI
        - CSI
        links:
        - name: Learn more about the project
          url: http://ember-csi.io/
        - name: Documentation
          url: http://readthedocs.org/projects/ember-csi/
        - name: Ember-CSI Source Code
          url: https://github.com/embercsi/ember-csi
        - name: Ember-CSI Operator Source Code
          url: https://github.com/embercsi/ember-csi-operator
        maintainers:
        - email: geguileo@redhat.com
          name: Gorka Eguileor
        - email: cschwede@redhat.com
          name: Christian Schwede
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/ember-csi-community-operator@sha256:5dce9b3018cfb300cd651c7980353cedc6617383d5c525e6a4a39ffb8e105774
        - quay.io/embercsi/ember-csi-operator:latest
        version: 0.9.9
      entries:
      - name: ember-csi-community-operator.v0.9.9
        version: 0.9.9
      - name: ember-csi-community-operator.v0.9.8
        version: 0.9.8
      - name: ember-csi-community-operator.v0.9.7
        version: 0.9.7
      name: beta
    defaultChannel: beta
    packageName: ember-csi-community-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NVIDIA
      provider-url: ""
    name: nim-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nim-operator-certified.v3.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMCache",
                "metadata": {
                  "name": "meta-llama3-8b-instruct",
                  "namespace": "nim-service"
                },
                "spec": {
                  "source": {
                    "ngc": {
                      "modelPuller": "nvcr.io/nim/meta/llama-3.1-8b-instruct@sha256:088a7f400286291e9c1512e326596f4caedd2ed7aa30b909d78cbd3727b55ee8",
                      "pullSecret": "ngc-secret",
                      "authSecret": "ngc-api-secret",
                      "model": {
                        "lora": false,
                        "precision": "fp16",
                        "engine": "tensorrt_llm",
                        "qosProfile": "throughput",
                        "gpus": [
                          {
                            "product": "a100",
                            "ids": []
                          }
                        ]
                      }
                    }
                  },
                  "storage": {
                    "pvc": {
                      "create": true,
                      "storageClass": "local-path",
                      "size": "50Gi",
                      "volumeAccessMode": "ReadWriteOnce"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMService",
                "metadata": {
                  "name": "meta-llama3-8b-instruct",
                  "namespace": "nim-service"
                },
                "spec": {
                  "image": {
                    "repository": "nvcr.io/nim/meta/llama-3.1-8b-instruct",
                    "tag": "1.3.3",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [
                      "ngc-secret"
                    ]
                  },
                  "authSecret": "ngc-api-secret",
                  "storage": {
                    "nimCache": {
                      "name": "meta-llama3-8b-instruct",
                      "profile": ""
                    }
                  },
                  "scale": {
                    "enabled": false,
                    "hpa": {
                      "minReplicas": 1,
                      "maxReplicas": 10
                    }
                  },
                  "resources": {
                    "limits": {
                      "nvidia.com/gpu": 1
                    }
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMPipeline",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "k8s-nim-operator",
                    "app.kubernetes.io/managed-by": "k8s-nim-operator"
                  },
                  "name": "nimpipeline-sample"
                },
                "spec": {
                  "services": [
                    {
                      "name": "meta-llama3-8b-instruct",
                      "enabled": true,
                      "spec": {
                        "image": {
                          "repository": "nvcr.io/nim/meta/llama-3.1-8b-instruct",
                          "tag": "1.3.3",
                          "pullPolicy": "IfNotPresent",
                          "pullSecrets": [
                            "ngc-secret"
                          ]
                        },
                        "authSecret": "ngc-api-secret",
                        "storage": {
                          "nimCache": {
                            "name": "meta-llama3-8b-instruct",
                            "profile": ""
                          }
                        },
                        "replicas": 1,
                        "resources": {
                          "limits": {
                            "nvidia.com/gpu": 1
                          }
                        },
                        "expose": {
                          "service": {
                            "type": "ClusterIP",
                            "port": 8000
                          }
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMBuild",
                "metadata": {
                  "name": "meta-llama3-8b-instruct",
                  "namespace": "nim-service"
                },
                "spec": {
                  "nimCache": {
                    "name": "meta-llama3-8b-instruct",
                    "profile": "7cc8597690a35aba19a3636f35e7f1c7e7dbc005fe88ce9394cad4a4adeed414"
                  },
                  "image": {
                    "repository": "nvcr.io/nim/meta/llama-3.1-8b-instruct",
                    "tag": "1.3.3",
                    "pullSecrets": [
                     "ngc-secret"
                    ]
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoCustomizer",
                "metadata": {
                  "name": "nemocustomizer-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "scheduler": {
                    "type": "volcano"
                  },
                  "wandb": {
                    "secretName": "wandb-secret",
                    "apiKeyKey": "apiKey",
                    "encryptionKey": "encryptionKey"
                  },
                  "otel": {
                    "enabled": true,
                    "exporterOtlpEndpoint": "http://customizer-otel-opentelemetry-collector.nemo.svc.cluster.local:4317"
                  },
                  "databaseConfig": {
                    "credentials": {
                      "user": "ncsuser",
                      "secretName": "customizer-pg-existing-secret",
                      "passwordKey": "password"
                    },
                    "host": "customizer-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "databaseName": "ncsdb"
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/customizer-api",
                    "tag": "25.08",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "entitystore": {
                    "endpoint": "http://nemoentitystore-sample.nemo.svc.cluster.local:8000"
                  },
                  "datastore": {
                    "endpoint": "http://nemodatastore-sample.nemo.svc.cluster.local:8000"
                  },
                  "mlflow": {
                    "endpoint": "http://mlflow-tracking.nemo.svc.cluster.local:80"
                  },
                  "nemoDatastoreTools": {
                    "image": "nvcr.io/nvidia/nemo-microservices/nds-v2-huggingface-cli@sha256:7958e5244217de8af0ed723dfe7ea8e291b3afbb2a0aa73f5c27b218a1149b11"
                  },
                  "modelDownloadJobs": {
                    "image": "nvcr.io/nvidia/nemo-microservices/customizer-api@sha256:c590fa19121af2aac0379933deace3991f27c3ef88a8043560d6e3a172273b0b",
                    "ngcAPISecret": {
                      "name": "ngc-api-secret",
                      "key": "NGC_API_KEY"
                    },
                    "securityContext": {
                      "fsGroup": 1000,
                      "runAsNonRoot": true,
                      "runAsUser": 1000,
                      "runAsGroup": 1000
                    },
                    "ttlSecondsAfterFinished": 600,
                    "pollIntervalSeconds": 15
                  },
                  "modelConfig": {
                    "name": "nemo-model-config"
                  },
                  "trainingConfig": {
                    "configMap": {
                      "name": "nemo-training-config"
                    },
                    "modelPVC": {
                      "create": true,
                      "name": "finetuning-ms-models-pvc",
                      "storageClass": "",
                      "volumeAccessMode": "ReadWriteOnce",
                      "size": 50
                    },
                    "workspacePVC": {
                      "storageClass": "local-path",
                      "volumeAccessMode": "ReadWriteOnce",
                      "size": 10,
                      "mountPath": "/pvc/workspace"
                    },
                    "image": {
                      "repository": "nvcr.io/nvidia/nemo-microservices/customizer",
                      "tag": "25.06"
                    },
                    "env": [
                      { "name": "LOG_LEVEL", "value": "INFO" }
                    ],
                    "networkConfig": [
                      { "name": "NCCL_IB_SL", "value": "0" },
                      { "name": "NCCL_IB_TC", "value": "41" },
                      { "name": "NCCL_IB_QPS_PER_CONNECTION", "value": "4" },
                      { "name": "UCX_TLS", "value": "TCP" },
                      { "name": "UCX_NET_DEVICES", "value": "eth0" },
                      { "name": "HCOLL_ENABLE_MCAST_ALL", "value": "0" },
                      { "name": "NCCL_IB_GID_INDEX", "value": "3" }
                    ],
                    "ttlSecondsAfterFinished": 3600,
                    "timeout": 3600,
                    "tolerations": [
                      {
                        "key": "nvidia.com/gpu",
                        "operator": "Exists",
                        "effect": "NoSchedule"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoGuardrail",
                "metadata": {
                  "name": "nemoguardrails-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "configStore": {
                    "pvc": {
                      "name": "pvc-guardrail-config",
                      "create": true,
                      "storageClass": "",
                      "volumeAccessMode": "ReadWriteOnce",
                      "size": "1Gi"
                    }
                  },
                  "nimEndpoint": {
                    "baseURL": "http://meta-llama3-1b-instruct.nemo.svc.cluster.local:8000/v1"
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/guardrails",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "metrics": {
                    "serviceMonitor": {}
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "ephemeral-storage": "10Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoEvaluator",
                "metadata": {
                  "name": "nemoevaluator-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "evaluationImages": {
                    "bigcodeEvalHarness": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-bigcode@sha256:62f74c32d1ed07925ddb906de8975025bf63d73e82e7faefb840339aaf21a9dc",
                    "lmEvalHarness": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-lm-eval-harness@sha256:58e7c3da7f1edfed2ff508fa8abab7660366c2c17bb55d17aa68159d6e16be6d",
                    "similarityMetrics": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-custom-eval@sha256:eb51edf668481d1f5d2b100c850958dadf184fd8779433e45da40fa2a35ec4b9",
                    "llmAsJudge": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-llm-as-a-judge@sha256:188916fce714453d48ff20d95e1ca09fc5520ccb6e9e8da7493948697e919055",
                    "mtBench": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-llm-as-a-judge@sha256:188916fce714453d48ff20d95e1ca09fc5520ccb6e9e8da7493948697e919055",
                    "retriever": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-retriever@sha256:cb99fb3ea5b4e9989832679d4c6028573c28b99e43744e008ac5c9748b7dd250",
                    "rag": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-rag@sha256:b5e35cf277185e0901a4bbba35780b3673be71ae2c5e8efcdbab7710a8a6f783",
                    "bfcl": "nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-bfcl@sha256:95f45f66140d481d544b36b16bc3de7ad5e090d76225fd73ed70461b9bd9907c",
                    "agenticEval": "nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-agentic-eval@sha256:b38bbc5e61df0930204efa096cf4f40db4655b92d03741190513b019d67fc7dc"
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/evaluator",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "argoWorkflows": {
                    "endpoint": "https://argo-workflows-server.nemo.svc.cluster.local:2746",
                    "serviceAccount": "argo-workflows-executor"
                  },
                  "vectorDB": {
                    "endpoint": "http://milvus.nemo.svc.cluster.local:19530"
                  },
                  "datastore": {
                    "endpoint": "http://nemodatastore-sample.nemo.svc.cluster.local:8000/v1/hf"
                  },
                  "entitystore": {
                    "endpoint": "http://nemoentitystore-sample.nemo.svc.cluster.local:8000"
                  },
                  "databaseConfig": {
                    "host": "evaluator-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "databaseName": "evaldb",
                    "credentials": {
                      "user": "evaluser",
                      "secretName": "evaluator-pg-existing-secret",
                      "passwordKey": "password"
                    }
                  },
                  "otel": {
                    "enabled": true,
                    "exporterOtlpEndpoint": "http://evaluator-otel-opentelemetry-collector.nemo.svc.cluster.local:4317"
                  },
                  "replicas": 1
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoEntitystore",
                "metadata": {
                  "name": "nemoentitystore-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/entity-store",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "databaseConfig": {
                    "databaseName": "nesdb",
                    "host": "entity-store-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "credentials": {
                      "user": "nesuser",
                      "secretName": "entity-store-pg-existing-secret",
                      "passwordKey": "password"
                    }
                  },
                  "datastore": {
                    "endpoint": "http://nemodatastore-sample.nemo.svc.cluster.local:8000"
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoDatastore",
                "metadata": {
                  "name": "nemodatastore-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "secrets": {
                    "datastoreConfigSecret": "nemo-ms-nemo-datastore",
                    "datastoreInitSecret": "nemo-ms-nemo-datastore-init",
                    "datastoreInlineConfigSecret": "nemo-ms-nemo-datastore-inline-config",
                    "giteaAdminSecret": "gitea-admin-credentials",
                    "lfsJwtSecret": "nemo-ms-nemo-datastore--lfs-jwt"
                  },
                  "databaseConfig": {
                    "credentials": {
                      "user": "ndsuser",
                      "secretName": "datastore-pg-existing-secret",
                      "passwordKey": "password"
                    },
                    "host": "datastore-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "databaseName": "ndsdb"
                  },
                  "pvc": {
                    "name": "pvc-shared-data",
                    "create": true,
                    "storageClass": "",
                    "volumeAccessMode": "ReadWriteOnce",
                    "size": "10Gi"
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/datastore",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "replicas": 1,
                  "resources": {
                    "requests": {
                      "memory": "256Mi",
                      "cpu": "500m"
                    },
                    "limits": {
                      "memory": "512Mi",
                      "cpu": "1"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          certified: "true"
          containerImage: nvcr.io/nvidia/cloud-native/k8s-nim-operator@sha256:fadaed25df7d447d9141dc69a25c90a18f7799d47ca6e231805eff5b4e6c4907
          createdAt: Tue Sep  9 12:58:18 PDT 2025
          description: An Operator for deployment and maintenance of NVIDIA NIMs and
            NeMo microservices in a Kubernetes environment
          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: "true"
          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"
          k8sMinVersion: 1.26.0
          repository: github.com/NVIDIA/k8s-nim-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NIM Cache
            displayName: NIMCache
            kind: NIMCache
            name: nimcaches.apps.nvidia.com
            version: v1alpha1
          - description: NIM Service
            displayName: NIMService
            kind: NIMService
            name: nimservices.apps.nvidia.com
            version: v1alpha1
          - description: NIM Pipeline
            displayName: NIMPipeline
            kind: NIMPipeline
            name: nimpipelines.apps.nvidia.com
            version: v1alpha1
          - description: NIM Build
            displayName: NIMBuild
            kind: NIMBuild
            name: nimbuilds.apps.nvidia.com
            version: v1alpha1
          - description: NEMO guardrail Service
            displayName: NemoGuardrail
            kind: NemoGuardrail
            name: nemoguardrails.apps.nvidia.com
            version: v1alpha1
          - description: NEMO datastore Service
            displayName: NemoDatastore
            kind: NemoDatastore
            name: nemodatastores.apps.nvidia.com
            version: v1alpha1
          - description: NEMO Eval Service
            displayName: NemoEvaluator
            kind: NemoEvaluator
            name: nemoevaluators.apps.nvidia.com
            version: v1alpha1
          - description: NEMO Customizer Service
            displayName: NemoCustomizer
            kind: NemoCustomizer
            name: nemocustomizers.apps.nvidia.com
            version: v1alpha1
          - description: NEMO Entitystore Service
            displayName: NemoEntitystore
            kind: NemoEntitystore
            name: nemoentitystores.apps.nvidia.com
            version: v1alpha1
        description: |-
          ## NVIDIA NIM Operator
          The NVIDIA NIM Operator enables Kubernetes cluster administrators to operate the software components and services necessary to run NVIDIA NIMs in various domains such as reasoning, retrieval, speech, and biology. Additionally, it allows the use of NeMo Microservices to fine-tune, evaluate, or apply guardrails to your models.
          The Operator manages the life cycle of the following microservices and the models they use:
          ### NVIDIA NIM models, such as:
          * Reasoning LLMs
          * Retrieval - Embedding, Reranking, etc.
          * Speech
          * Biology
          ### NeMo core microservices:
          * NeMo Customizer
          * NeMo Evaluator
          * NeMo Guardrails
          ### NeMo platform component microservices:
          * NeMo Data Store
          * NeMo Entity Store
        displayName: The NVIDIA NIM Operator for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        links:
        - name: NVIDIA NIM
          url: https://docs.nvidia.com/nim/index.html
        - name: Documentation
          url: https://docs.nvidia.com/nim-operator/latest
        maintainers:
        - email: operator_feedback@nvidia.com
          name: shivamerla
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: NVIDIA
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-nim-operator@sha256:fadaed25df7d447d9141dc69a25c90a18f7799d47ca6e231805eff5b4e6c4907
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-lm-eval-harness@sha256:58e7c3da7f1edfed2ff508fa8abab7660366c2c17bb55d17aa68159d6e16be6d
        - nvcr.io/nim/meta/llama-3.1-8b-instruct@sha256:088a7f400286291e9c1512e326596f4caedd2ed7aa30b909d78cbd3727b55ee8
        - nvcr.io/nvidia/nemo-microservices/customizer-api@sha256:c590fa19121af2aac0379933deace3991f27c3ef88a8043560d6e3a172273b0b
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-custom-eval@sha256:eb51edf668481d1f5d2b100c850958dadf184fd8779433e45da40fa2a35ec4b9
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-llm-as-a-judge@sha256:188916fce714453d48ff20d95e1ca09fc5520ccb6e9e8da7493948697e919055
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-retriever@sha256:cb99fb3ea5b4e9989832679d4c6028573c28b99e43744e008ac5c9748b7dd250
        - nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-agentic-eval@sha256:b38bbc5e61df0930204efa096cf4f40db4655b92d03741190513b019d67fc7dc
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-rag@sha256:b5e35cf277185e0901a4bbba35780b3673be71ae2c5e8efcdbab7710a8a6f783
        - registry.connect.redhat.com/nvidia/nim-operator-bundle@sha256:eda9683cfd147b61ce97088841495ef729004cf649f9c6bb704289ba5670e0d9
        - nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-bfcl@sha256:95f45f66140d481d544b36b16bc3de7ad5e090d76225fd73ed70461b9bd9907c
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-bigcode@sha256:62f74c32d1ed07925ddb906de8975025bf63d73e82e7faefb840339aaf21a9dc
        - nvcr.io/nvidia/nemo-microservices/nds-v2-huggingface-cli@sha256:7958e5244217de8af0ed723dfe7ea8e291b3afbb2a0aa73f5c27b218a1149b11
        version: 3.0.2
      entries:
      - name: nim-operator-certified.v3.0.2
        version: 3.0.2
      - name: nim-operator-certified.v3.0.1
        version: 3.0.1
      - name: nim-operator-certified.v3.0.0
        version: 3.0.0
      - name: nim-operator-certified.v2.0.2
        version: 2.0.2
      - name: nim-operator-certified.v2.0.1
        version: 2.0.1
      - name: nim-operator-certified.v2.0.0
        version: 2.0.0
      - name: nim-operator-certified.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: stable
    packageName: nim-operator-certified
    provider:
      name: NVIDIA
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Jason Skrzypek
      provider-url: https://github.com/shpwrck
    name: openshift-node-upgrade-mutex-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-node-upgrade-mutex-operator.v0.2.66
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "openshift-optional.skrzypek.io/v1alpha1",
                "kind": "MutexRule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "openshift-node-upgrade-mutex-operator",
                    "app.kubernetes.io/instance": "mutexrule-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mutexrule",
                    "app.kubernetes.io/part-of": "openshift-node-upgrade-mutex-operator"
                  },
                  "name": "mutexrule-sample"
                },
                "spec": {
                  "jobName": "example",
                  "jobNamespace": "node-upgrade-mutex-operator",
                  "jobSpec": {
                    "selector": {},
                    "template": {
                      "metadata": {
                        "name": "mutex"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              "20"
                            ],
                            "image": "ubi9/toolbox",
                            "name": "mutex"
                          }
                        ],
                        "restartPolicy": "Never"
                      }
                    }
                  },
                  "type": "kubernetes"
                }
              },
              {
                "apiVersion": "openshift-optional.skrzypek.io/v1alpha1",
                "kind": "MutexRunConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "openshift-node-upgrade-mutex-operator",
                    "app.kubernetes.io/instance": "mutexrunconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mutexrunconfig",
                    "app.kubernetes.io/part-of": "openshift-node-upgrade-mutex-operator"
                  },
                  "name": "mutexrunconfig-sample"
                },
                "spec": {
                  "canary": {
                    "name": "canary-example"
                  },
                  "mutexRules": [
                    {
                      "name": "mutexrule-sample",
                      "namespace": "node-upgrade-mutex-operator"
                    }
                  ],
                  "mutexTargets": [
                    {
                      "name": "mutextarget-sample",
                      "namespace": "node-upgrade-mutex-operator"
                    }
                  ]
                }
              },
              {
                "apiVersion": "openshift-optional.skrzypek.io/v1alpha1",
                "kind": "MutexTarget",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "openshift-node-upgrade-mutex-operator",
                    "app.kubernetes.io/instance": "mutextarget-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mutextarget",
                    "app.kubernetes.io/part-of": "openshift-node-upgrade-mutex-operator"
                  },
                  "name": "mutextarget-sample"
                },
                "spec": {
                  "machineConfigPools": [
                    "worker"
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/jskrzypek/openshift-node-upgrade-mutex-operator
          createdAt: "2025-05-30T17:49:00Z"
          description: |
            This software injects required operations into the worker node upgrade process.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: node-upgrade-mutex-operator
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          provider: Jason Skrzypek
          repository: https://github.com/shpwrck/openshift-upgrade-rollout-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A node mutex rule definition in the form of a kubernetes
              job spec
            displayName: Mutex Rule
            kind: MutexRule
            name: mutexrules.openshift-optional.skrzypek.io
            version: v1alpha1
          - description: Lists of Targets and Rules to apply to them, as well as an
              upgrade facilitating Machine Config Pool
            displayName: Mutex Run Config
            kind: MutexRunConfig
            name: mutexrunconfigs.openshift-optional.skrzypek.io
            version: v1alpha1
          - description: A list of Machine Config Pools to enforce upgrade procedure.
            displayName: Mutex Target
            kind: MutexTarget
            name: mutextargets.openshift-optional.skrzypek.io
            version: v1alpha1
        description: |
          ## Introduction

          This operator injects required operations in the form of a Kubernetes job into the worker node upgrade process using MachineConfigPools. In short, when provided a list of operations (`MutexRules`) and a list of MachineConfigPools (`MutexTargets`) , the OpenShift Node Upgrade Mutex Operator will execute each operation for a given target, enable updates for the given target by modifying it's MachineConfigPool membership, and wait until the node has been upgraded before proceeding onto subsequent operations and targets.

          ## Dependencies

          ### Release Version Label

          In order to confirm the successful upgrade of each target node, the NFD Operator is used to generate a version feature on every worker node. In order to proceed through given targets, each node must have this label
          `'machineconfiguration.openshift.io/release-image-version'` with a key providing the semantic version of this node (e.g. `'4.16.4'`)

          There are several ways to accomplish this, but an example MachineConfig has been provided [here](https://github.com/shpwrck/openshift-node-upgrade-mutex-operator/blob/main/machineconfig.yaml).

          ### Canary Machine Config Pool

          In addition to node labels, a MachineConfigPool that will be used to accomodate targets subject to upgrades must be provided matching the following criteria:
          * selects only worker nodes
          * is not paused

          Applying the example below will create a compatible canary pool:

          ```yaml
          ---
          apiVersion: machineconfiguration.openshift.io/v1
          kind: MachineConfigPool
          metadata:
            name: canary
          spec:
            machineConfigSelector:
              matchLabels:
                machineconfiguration.openshift.io/role: worker
            nodeSelector:
              matchLabels:
                node-role.kubernetes.io/worker: ''
              matchExpressions:
                - key: 'isCanary'
                  operator: Exists
            paused: false
          ```

          ## Usage / Custom Resources Definitions

          #### MutexRule:

          A resource storing a single rule referring to a template for a Kubernetes job to be created.
          This resource **does not** modify existing resources.

          ```yaml
          ---
          apiVersion: openshift-optional.skrzypek.io/v1alpha1
          kind: MutexRule
          metadata:
            name: k8s-example
          spec:
            jobName: "example" # Jobs will be run with this prefix name
            jobNamespace: "node-upgrade-mutex-operator" # Jobs will be run in this namespace
            jobSpec: # Accepts full 'batch/v1' job spec
              selector: {}
              template:
                metadata:
                  name: mutex
                spec:
                  containers:
                  - command:
                    - sleep
                    args:
                    - "30"
                    image: ubi9/toolbox
                    name: mutex
                  restartPolicy: Never
            cleanUpJobSpec: # Accepts full 'batch/v1' job spec (Optional)
              selector: {}
              template:
                metadata:
                  name: mutex
                spec:
                  containers:
                  - command:
                    - sleep
                    args:
                    - "30"
                    image: ubi9/toolbox
                    name: mutex
                  restartPolicy: Never
            type: kubernetes
          ```

          #### MutexTarget:

          A resource storing a set of MachineConfigPools to pause and incrementally upgrade.
          This resource **does not** modify existing resources.

          ```yaml
          ---
          apiVersion: openshift-optional.skrzypek.io/v1alpha1
          kind: MutexTarget
          metadata:
            name: worker-example
          spec:
            machineConfigPools:
              - worker # Name of existing machineconfigpool
          ```

          #### MutexRunConfig:

          A resource that references existing MutexRules and MutexTargets as well as an existing MachineConfigPool that will allow members to be upgraded. Every rule defined in the `mutexRules` list will be added as a mandatory task to every node that is a member of the each MachineConfigPool defined in the `mutexTargets` list.
          This resource **does** modify existing resources.

          ```yaml
          apiVersion: openshift-optional.skrzypek.io/v1alpha1
          kind: MutexRunConfig
          metadata:
            name: example
          spec:
            skipTLSVerify: false # Defaults to false if omitted
            canary:
              name: canary # Name of unpaused machineconfigpool to modify
            mutexRules: # List of existing mutexRules
              - name: k8s-example
                namespace: node-upgrade-mutex-operator
            mutexTargets: # List of existing mutexTargets
              - name: worker-example
                namespace: node-upgrade-mutex-operator
          ```

          ## Procedure

          #### MutexRule

          1. Upon creation/modification, the schema of each K8s rule is validated.
          2. Status is updated to indicate valid or invalid configuration.

          #### MutexTargets

          1. Upon creation/modification, the existence of each target is validated.
          2. Status is updated to indicate valid or invalid configuration.
          3. The nodes assigned to each target are added to the status field `nodes`.

          #### MutexRunConfigs

          1. Upon creation/modification, the existence as well as validation status of each rule, target, and canary pool is confirmed.
          2. If valid, the existence of an upgrade is queried. An upgrade is available if the following is true:
              * The `status.history` of the `cluster` ClusterVersion equals `Completed`
              * The `release-image-version` of any worker node is less than the `spec.desiredUpdate.version` of the `cluster` ClusterVersion.
          3. If an update exists, each target MachineConfigPool has `spec.paused` set to `true`.
          4. If each pool is paused, each node is updated to include a label for each rule with the following format:
              * `mutexrule.openshift-optional.skrzypek.io/{{MutexRule_Name}}.{{MutexRule_Namespace}}`
          5. If labels have been applied, the provided canary pool is modified to exclude nodes with labels provided by step (4).
          6. Assuming steps (2-5) have completed successfully, then the process for running jobs and updating nodes begins. The process per node is as follows:
              * Launch each K8S job sequentially
              * Remove the current node's rule labels
              * Wait until the `release-image-version` of the node matches the `spec.desiredUpdate.version` of the `cluster` ClusterVersion
              * Launch each K8S cleanup job sequentially
          7. If the update succeeds, all machine config pools are unpaused and all match expressions are removed.

          ## Permissions Granted

          In addition to the permissions required to operate the included CRDs, the following access is granted to the operator's service account.

          | Resource | Permissions |
          | :---: | :---: |
          | Jobs | Create & Read |
          | Nodes | Read & Update |
          | ClusterVersion | Read |
          | MachineConfigPools | Read & Update |

          ## Notes

          * This operator was built using the operator-sdk's ansible plugin and therefore has all of the inherited capabilities and restrictions.
          * This operator has undergone minimal testing and should not be run in production environments without acknowledging the risks.
          * This operator is currently alpha and subject to change based on requirements.

          ## Additional Information
          For additional information refer to the [GitHub Repository](https://github.com/shpwrck/openshift-node-upgrade-mutex-operator)
        displayName: OpenShift Node Upgrade Mutex Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - OpenShift Optional
        - Upgrade
        - Mutex
        links:
        - name: Openshift Node Upgrade Mutex Operator
          url: https://github.com/shpwrck/openshift-node-upgrade-mutex-operator
        maintainers:
        - email: jskrzype@redhat.com
          name: Jason Skrzypek
        maturity: alpha
        minKubeVersion: 1.27.0
        provider:
          name: Jason Skrzypek
          url: https://github.com/shpwrck
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d8cc6ffb98190e8dd403bfe67ddcb454e6127d32b87acc237b3e5240f70a20fb
        - quay.io/community-operator-pipeline-prod/openshift-node-upgrade-mutex-operator@sha256:5ac79c9193934440464a595434fe4241e038505d32650843afcad5f5bc2ce8a7
        - quay.io/jskrzypek/openshift-node-upgrade-mutex-operator@sha256:d4c28e8b256c00429d9999595c2386f1a25de597ee8e6c33871bb7b22b84c4af
        version: 0.2.66
      entries:
      - name: openshift-node-upgrade-mutex-operator.v0.2.66
        version: 0.2.66
      - name: openshift-node-upgrade-mutex-operator.v0.2.65
        version: 0.2.65
      - name: openshift-node-upgrade-mutex-operator.v0.2.60
        version: 0.2.60
      - name: openshift-node-upgrade-mutex-operator.v0.2.59
        version: 0.2.59
      - name: openshift-node-upgrade-mutex-operator.v0.2.53
        version: 0.2.53
      - name: openshift-node-upgrade-mutex-operator.v0.2.38
        version: 0.2.38
      - name: openshift-node-upgrade-mutex-operator.v0.2.34
        version: 0.2.34
      - name: openshift-node-upgrade-mutex-operator.v0.2.15
        version: 0.2.15
      - name: openshift-node-upgrade-mutex-operator.v0.2.14
        version: 0.2.14
      - name: openshift-node-upgrade-mutex-operator.v0.1.22
        version: 0.1.22
      name: alpha
    defaultChannel: alpha
    packageName: openshift-node-upgrade-mutex-operator
    provider:
      name: Jason Skrzypek
      url: https://github.com/shpwrck
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: costmanagement-metrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: costmanagement-metrics-operator.4.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
                "kind": "CostManagementMetricsConfig",
                "metadata": {
                  "name": "costmanagementmetricscfg-sample-v1beta1"
                },
                "spec": {
                  "authentication": {
                    "type": "token"
                  },
                  "packaging": {
                    "max_reports_to_store": 30,
                    "max_size_MB": 100
                  },
                  "prometheus_config": {
                    "collect_previous_data": true,
                    "context_timeout": 120,
                    "disable_metrics_collection_cost_management": false,
                    "disable_metrics_collection_resource_optimization": false
                  },
                  "source": {
                    "check_cycle": 1440,
                    "create_source": false,
                    "name": ""
                  },
                  "upload": {
                    "upload_cycle": 360,
                    "upload_toggle": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          certified: "true"
          containerImage: registry.redhat.io/costmanagement/costmanagement-metrics-rhel9-operator@sha256:e4457d0a4c77e95f46637e41044f45049fe03e818db82fabef06bd95c723778b
          createdAt: "2025-11-11T14:26:15Z"
          description: A Golang-based OpenShift Operator that generates and uploads
            OpenShift usage metrics to cost management.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
              "kind": "CostManagementMetricsConfig",
              "metadata": {
                "name": "costmanagementmetricscfg-sample-v1beta1"
              },
              "spec": {
                "authentication": {
                  "token_url": "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token",
                  "type": "token"
                },
                "api_url": "https://console.redhat.com/",
                "packaging": {
                  "max_reports_to_store": 30,
                  "max_size_MB": 100
                },
                "upload": {
                  "ingress_path": "/api/ingress/v1/upload",
                  "upload_cycle": 360,
                  "upload_toggle": true,
                  "validate_cert": true
                },
                "prometheus_config": {
                  "collect_previous_data": true,
                  "context_timeout": 120,
                  "disable_metrics_collection_cost_management": false,
                  "disable_metrics_collection_resource_optimization": false,
                  "service_address": "https://thanos-querier.openshift-monitoring.svc:9091",
                  "skip_tls_verification": false
                },
                "source": {
                  "check_cycle": 1440,
                  "create_source": false,
                  "name": "",
                  "sources_path": "/api/sources/v1.0/"
                }
              }
            }
          operatorframework.io/suggested-namespace: costmanagement-metrics-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/project-koku/koku-metrics-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CostManagementMetricsConfig is the Schema for the costmanagementmetricsconfig
              API
            displayName: Cost Management Metrics Config
            kind: CostManagementMetricsConfig
            name: costmanagementmetricsconfigs.costmanagement-metrics-cfg.openshift.io
            version: v1beta1
        description: |
          # Cost Management Metrics Operator
          ## Introduction
          The `costmanagement-metrics-operator` is a component of the [cost managment](https://access.redhat.com/documentation/en-us/cost_management_service) service for Openshift. The operator runs on the latest supported versions of Openshift. This operator obtains OpenShift usage data by querying Prometheus every hour to create metric reports that it uploads to Cost Management at [console.redhat.com](https://console.redhat.com) to be processed. For more information, reach out to <costmanagement@redhat.com>.

          This operator is capable of functioning within a disconnected/restricted network (aka air-gapped mode). In this mode, the operator will store the packaged reports for manual retrieval instead of being uploaded to Cost Management. Documentation for installing an operator within a restricted network can be found [here](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html).

          ## Features and Capabilities
          #### Metrics collection:
          The Cost Management Metrics Operator (`costmanagement-metrics-operator`) collects the metrics required for Cost Management by:
          * Querying Prometheus to gather the necessary metrics for Cost Management.
          * Writing the results of Prometheus queries to CSV report files.
          * Packaging the CSV report files into tarballs.

          #### Additional Capabilities:
          * Resource Optimization metrics collection.
          * The operator can be configured to gather all previous data within the configured retention period or a maximum of 90 days. The default data collection period is the 14 previous days. This setting is only applicable to newly created CostManagementMetricsConfigs.
          * The operator can be configured to automatically upload the packaged reports to Cost Management through Red Hat Insights Ingress service.
          * The operator can create an integration in console.redhat.com. An integration is required for Cost Management to process the uploaded packages.
          * PersistentVolumeClaim (PVC) configuration: The CostManagementMetricsConfig CR can accept a PVC definition and the operator will create and mount the PVC. If one is not provided, a default PVC will be created.
          * Restricted network installation: this operator can function on a restricted network. In this mode, the operator stores the packaged reports for manual retrieval.

          ## New in v4.3.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for cost management.

          ## New in v4.2.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for resource optimization.
          * (Bugfix) Fixed custom CA certificate validation and configuration issues.
          * (Bugfix) Fixed issue where ROS queries were missing workload metadata for namespaces labeled only with the legacy `insights_cost_management_optimizations` label.

          ## New in v4.1.0:
          * Enabled gathering and reporting namespace metrics to provide more granular data for resource optimization.
          * Updated CSV report filenames to be more descriptive, replacing the previous generic UID-based names with content-reflective names.
          * Introduced a new generic label, `cost_management_optimizations`, for resource optimization while ensuring backward compatibility with the older `insights_cost_management_optimizations` label.

          ## New in v4.0.0:
          * **Virtual Machine Metrics:** Adds capabilities for collecting metrics and generating reports for running virtual machines within your OpenShift environment.
          * **FIPS Compliance:** Supports deployment in high-security environments when run on an OpenShift cluster with FIPS mode enabled.

          ## New in v3.3.2:
          * Leader election settings are now configurable via environment variables. These variables can be modified in the operator [Subscription](https://github.com/operator-framework/operator-lifecycle-manager/blob/5a01f50258003e248bd5630df0837fe0bb0f1cb7/doc/design/subscription-config.md). The values should be specified as durations in seconds in the format `<number-of-seconds>s`. The default values for `LEADER_ELECTION_LEASE_DURATION`, `LEADER_ELECTION_RENEW_DEADLINE`, and `LEADER_ELECTION_RETRY_PERIOD` are '60s', '30s', and '5s', respectively.

            ```
            kind: Subscription
            metadata:
            ...
            spec:
              ...
              config:
                env:
                - name: LEADER_ELECTION_LEASE_DURATION
                  value: "60s"
                - name: LEADER_ELECTION_RENEW_DEADLINE
                  value: "30s"
                - name: LEADER_ELECTION_RETRY_PERIOD
                  value: "5s"
            ```

          ## New in v3.3.1:
          * Optimize memory usage when reading CSV files.

          ## New in v3.3.0:
          * Storage reports now contain `node`, `csi_driver`, and `csi_volume_handle` fields.
          * The PVC capacity is now populated using the `kube_persistentvolume_capacity_bytes` metric instead of `kubelet_volume_stats_capacity_bytes`.
          * To receive resource optimization recommendations for your namespaces, you must now first enable each namespace. To enable a namespace, label it with `insights_cost_management_optimizations='true'`. In the CLI, run:
            ```
              oc label namespace NAMESPACE insights_cost_management_optimizations="true" --overwrite=true
            ```
          * __DEPRECATION NOTICE__: Basic authentication is deprecated and will not be supported beyond December 31, 2024. If the default token authentication method cannot be used, you must switch to [service account](https://console.redhat.com/iam/service-accounts) authentication ([more on creating a service account](https://access.redhat.com/articles/7036194)). Once you have created your service account, follow [this documentation](https://access.redhat.com/documentation/en-us/cost_management_service/1-latest/html-single/integrating_openshift_container_platform_data_into_cost_management/index#service-account-authentication_adding-an-ocp-int) on how to configure your operator to use service account authentication. Service-accounts must also be used if manually uploading payloads to console.redhat.com.

          ## New in v3.2.1:
          * The minimum supported configuration for `upload_cycle` is now 60 (minutes).
          * (Bugfix) many-to-many matching not allowed query fix.
          * (Bugfix) Sequentially collect data during initial install.

          ## New in v3.2.0:
          * Support for amd64, arm64, ppc64le, s390x architectures.
          * add liveness and readiness probes to controller Pod.
          * update pod security settings so that the controller Pod can run in Restricted mode [more info](https://sdk.operatorframework.io/docs/best-practices/pod-security-standards/).

          ## New in v3.1.0:
          * Add service-account authentication type.
          * __Deprecation Notice:__ Basic authentication is deprecated and will be removed in a future version of the operator.

          ## New in v3.0.0:
          * Daily report generation: Operator versions prior to v3.0.0 generated sequential reports. Now, reports are generated starting at 0:00 UTC. Any payloads generated throughout a given day will contain all data starting from 0:00 UTC. Once the next day starts, the previous day's reports are packaged, and the new report again starts at 0:00 UTC for the current day.
          * Failed query retry: In an attempt to prevent missing data, the operator will retry queries from the last successful query time, up to 5 times.

          ## New in v2.0.0:
          * Adds metrics and report generation for resource optimization. This feature will collect additional usage metrics and create a new report in the payload. These metrics are enabled by default, but can be disabled by setting `disable_metrics_collection_resource_optimization` to `true`.
          * Collect all available Prometheus data upon CR creation. This feature only applies to newly created CostManagementMetricsConfigs. The operator will check the monitoring stack configuration in the `openshift-monitoring` namespace. The operator will use the `retention` period set in the `cluster-monitoring-config` ConfigMap if defined, up to a maximum of 90 days. Otherwise it will fall back to collecting 14 days of data, if available. This data collection may be disabled by setting `collect_previous_data` to `false`. Turning this feature off results in the operator collecting metrics from the time the CostManagementMetricsConfig is created, forward.

          ## Limitations and Pre-Requisites
          #### Limitations (Potential for metrics data loss)
          * An integration **must** exist in console.redhat.com for an uploaded payload to be processed by Cost Management. The operator sends the payload to the Red Hat Insights Ingress service which usually returns successfully, but the operator does not currently confirm with Cost Management that the payload was processed. After Ingress accepts the uploaded payload, it is deleted from the operator. If the data within the payload is not processed, a gap will be introduced in the usage metrics. Data may be recollected by deleting the `CostManagementMetricsConfig`, creating a new `CostManagementMetricsConfig`, and setting `collect_previous_data: true`. This re-collection of data will gather all data stored in Prometheus, up to 90 days.

          **Note** The following limitations are specific to operators configured to run in a restricted network:
          * The `costmanagement-metrics-operator` will not be able to generate new reports if the PVC storage is full. If this occurs, the reports must be manually deleted from the PVC so that the operator can function as normal.
          * The default report retention is 30 reports (about one week's worth of data). The reports must be manually downloaded and uploaded to console.redhat.com every week, or they will be deleted and the data will be lost.

          #### Storage configuration prerequisite
          The operator will attempt to create and use the following PVC when installed:

                volume_claim_template:
                  apiVersion: v1
                  kind: PersistentVolumeClaim
                  metadata:
                    name: costmanagement-metrics-operator-data
                  spec:
                    accessModes:
                      - ReadWriteOnce
                    resources:
                      requests:
                        storage: 10Gi

          If a different PVC should be utilized, a valid PVC should be specified in the CostManagementMetricsConfig CR as described in the appropriate section below. The PVC to be used may exist already, or the operator will attempt to create it.

          To use the default specification, the follow assumptions must be met:
          1. A default StorageClass is defined.
          2. Dynamic provisioning for that default StorageClass is enabled.

          If these assumptions are not met, the operator will not deploy correctly. In these cases, storage must be manually configured. After configuring storage, a valid PVC template should be supplied in the `volume_claim_template` spec of the CostManagementMetricsConfig CR.

          ## Configurable parameters:
            * `authentication`:
              * `type: token` -> The authentication method for connecting to `console.redhat.com`. The default and preferred method is `token`. `basic` (deprecated) and `service-account` authentication methods are used when the openshift-config pull-secret does not contain a token for `console.redhat.com`.
              * `secret_name` -> The Secret used by the operator when the authentication type is `basic` (deprecated) or `service-account`. This parameter is required **only if** the authentication type is `basic` (deprecated) or `service-account`.
            * `packaging`:
              * `max_reports_to_store: 30` -> The number of reports to store when configured in air-gapped mode. The default is 30, with a minimum of 1 and no maximum. When the operator is not configured in air-gapped mode, this parameter has no effect. Reports are removed as soon as they are uploaded.
              * `max_size: 100` -> The maximum size for packaged files in Megabytes prior to compression. The default is 100, with a minimum of 1 and maximum of 100.
            * `prometheus_config`:
              * `collect_previous_data: true` -> Toggle for collecting all available data in Prometheus **upon CostManagementMetricsConfig creation** (This parameter will start to appear in CostManagementMetricsConfigs that were created prior to v2.0.0 but will not have any effect unless the CostManagementMetricsConfig is deleted and recreated). The default is `true`. The operator will first look for a `retention` period in the `cluster-monitoring-config` ConfigMap in the `openshift-monitoring` namespace and gather data over this time period up to a maximum of 90 days. If this configuration is not set, the default is 14 days. (New in v2.0.0)
              * `disable_metrics_collection_cost_management: false` -> Toggle for disabling the collection of metrics for Cost Management. The default is false. (New in v2.0.0)
              * `disable_metrics_collection_resource_optimization: false` -> Toggle for disabling the collection of metrics for Resource Optimization. The default is false. (New in v2.0.0)
              * `context_timeout: 120` -> The time in seconds before Prometheus queries timeout due to exceeding context timeout. The default is 120, with a minimum of 10 and maximum of 180.
            * `source`:
              * `name: ''` -> The name of the integration the operator will create in `console.redhat.com`. If the name value is empty, the default intergration name is the **cluster id**.
              * `create_source: false` -> Toggle for whether or not the operator will create the integration in `console.redhat.com`. The default is False. This parameter should be switched to True when an integration does not already exist in `console.redhat.com` for this cluster.
              * `check_cycle: 1440` -> The time in minutes to wait between checking if an integration exists for this cluster. The default is 1440 minutes (24 hrs).
            * `upload`:
              * `upload_cycle: 360` -> The time in minutes between payload uploads. The default is 360 (6 hours), minimum is 60 (1 hour).
              * `upload_toggle: true` -> Toggle to turn upload on or off -> true means upload, false means do not upload (false == air-gapped mode). The default is `true`.
              * `upload_wait` -> The amount of time (in seconds) to pause before uploading a payload. The default is a random number between 0 and 35. This is used to decrease service load, but may be set to `0` if desired.
            * `volume_claim_template` -> see the "Storage configuration prerequisite" section above.

          ## Configure the costmanagement-metrics-operator
          **Note** There are separate instructions for configuring the `costmanagement-metrics-operator` to run in a restricted network.
          ##### Configure authentication
          The default authentication for the operator is `token`. No further steps are required to configure token authentication. If `basic` (deprecated) or `service-account` is the preferred authentication method, a Secret which holds the credentials must be created:
          1. On the left navigation pane, select `Workloads` -> `Secrets` -> select Project: `costmanagement-metrics-operator` -> `Create` -> `Key/Value Secret`
          2. Give the Secret a name and add 2 keys (all lowercase) for the respective authentication type. The values for these keys correspond to console.redhat.com credentials:
              * basic auth (deprecated): `username` and `password`
              * service-account auth: `client_id` and `client_secret`

          3. Select `Create`.
          ##### Create the CostManagementMetricsConfig
          Configure the costmanagement-metrics-operator by creating a `CostManagementMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `costmanagement-metrics-operator` -> `CostManagementMetricsConfig` -> `Create Instance`.
          2. For `basic` (deprecated) or `service-account` authentication, edit the following values in the spec:
              * Replace `authentication: type:` with `basic` or `service-account`.
              * Add the `secret_name` field under `authentication`, and set it equal to the name of the authentication Secret that was created above. The spec should look similar to the following:

                  * for basic auth type (deprecated)
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: basic
                  ```

                  * for service-account auth type
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: service-account
                  ```

          3. To configure the costmanagement-metrics-operator to create a cost management integration, edit the following values in the `source` field:
              * Replace the `name` field value with the preferred name of the integration to be created.
              * Replace the `create_source` field value with `true`.

              **Note:** if the integration already exists, replace the empty string value of the `name` field with the existing name, and leave `create_source` as false. This will allow the operator to confirm that the integration exists.

          4. If not specified, the operator will create a default PersistentVolumeClaim called `costmanagement-metrics-operator-data` with 10Gi of storage. To configure the costmanagement-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec:

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          5. Select `Create`.

          # Restricted Network Usage (disconnected/air-gapped mode)
          ## Installation
          To install the `costmanagement-metrics-operator` in a restricted network, follow the [olm documentation](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html). The operator is found in the `community-operators` Catalog in the `registry.redhat.io/redhat/community-operator-index:latest` Index. If pruning the index before pushing to the mirrored registry, keep the `costmanagement-metrics-operator` package.

          Within a restricted network, the operator queries prometheus to gather the necessary usage metrics, writes the query results to CSV files, and packages the reports for storage in the PVC. These reports then need to be manually downloaded from the cluster and uploaded to [console.redhat.com](https://console.redhat.com).

          ## Configure the costmanagement-metrics-operator for a restricted network
          ##### Create the CostManagementMetricsConfig
          Configure the costmanagement-metrics-operator by creating a `CostManagementMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `costmanagement-metrics-operator` -> `CostManagementMetricsConfig` -> `Create Instance`.
          2. Specify the desired storage. If not specified, the operator will create a default Persistent Volume Claim called `costmanagement-metrics-operator-data` with 10Gi of storage. To configure the costmanagement-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec (below is only a template. Any _valid_ `PersistentVolumeClaim` may be defined here):

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      storageClassName: <insert-class-name>
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          3. (Optional) Specify the desired report retention. The operator will retain 30 reports by default. This corresponds to approximately one week's worth of data if using the default packaging cycle. To modify the number of retained reports:
              * Change the `packaging` spec field `max_reports_to_store` to the desired number of reports to retain. Once this max number is reached, the operator will start removing the oldest packages remaining on the PVC:

                ```
                  packaging:
                    max_size_MB: 100
                    max_reports_to_store: 30
                ```

              **Note:** The number of retained reports directly affects the frequency that reports must be manually downloaded from the PVC. Take caution in setting this to a higher number of reports, as the operator cannot write data to the PVC if the storage is full.
          4. To configure the operator to perform in a restricted network, set the `upload_toggle` to `false`:

            ```
              upload:
                upload_cycle: 360
                upload_toggle: false
            ```

          5. Select `Create`.

          ## Download reports from the Operator & clean up the PVC
          If the `costmanagement-metrics-operator` is configured to run in a restricted network, the metric reports will not automatically upload to cost managment. Instead, they need to be manually copied from the PVC for upload to [console.redhat.com](https://console.redhat.com). The default configuration saves one week of reports which means the process of downloading and uploading reports should be repeated weekly to prevent loss of metrics data. To download the reports, complete the following steps:
          1. Create the following Pod, ensuring the `claimName` matches the PVC containing the report data:

            ```
              kind: Pod
              apiVersion: v1
              metadata:
                name: volume-shell
                namespace: costmanagement-metrics-operator
                labels:
                  app: costmanagement-metrics-operator
              spec:
                volumes:
                - name: costmanagement-metrics-operator-reports
                  persistentVolumeClaim:
                    claimName: costmanagement-metrics-operator-data
                containers:
                - name: volume-shell
                  image: busybox
                  command: ['sleep', 'infinity']
                  volumeMounts:
                  - name: costmanagement-metrics-operator-reports
                    mountPath: /tmp/costmanagement-metrics-operator-reports
            ```

          2. Use rsync to copy all of the files ready for upload from the PVC to a local folder:

            ```
            $ oc rsync volume-shell:/tmp/costmanagement-metrics-operator-reports/upload local/path/to/save/folder
            ```

          3. Once confirming that the files have been successfully copied, use rsh to connect to the pod and delete the contents of the upload folder so that they are no longer in storage:

            ```
            $ oc rsh volume-shell
            $ rm /tmp/costmanagement-metrics-operator-reports/upload/*
            ```

          4. (Optional) Delete the pod that was used to connect to the PVC:

            ```
            $ oc delete -f volume-shell.yaml
            ```

          ## Create an Integration
          In a restricted network, the `costmanagement-metrics-operator` cannot automatically create an integration. This process must be done manually. In the console.redhat.com platform, open the [Integrations menu](https://console.redhat.com/settings/integrations/) to begin adding an OpenShift integration to Cost Management:

          Prerequisites:
          * The cluster identifier which can be found in the CostManagementMetricsConfig CR, the cluster Overview page, or the cluster Help > About.

          Creating an integration:
          1. Navigate to the Integrations menu
          2. Select the `Red Hat` tab
          3. Create a new `Red Hat Openshift Container Platform` integration:
              * give the integration a unique name
              * add the Cost Management application
              * add the cluster identifier
          4. In the Source wizard, review the details and click `Finish` to create the source.

          ## Upload the reports to cost managment
          Uploading reports to cost managment is done through curl:

              $ curl -vvvv -F "file=@FILE_NAME.tar.gz;type=application/vnd.redhat.hccm.tar+tgz" https://console.redhat.com/api/ingress/v1/upload -H "Authorization: Bearer ${ACCESS_TOKEN}"

          where `FILE_NAME` is the name of the report to upload. The `ACCESS_TOKEN` is acquired using a service account. See documentation on [creating and managing a service account](https://docs.redhat.com/en/documentation/red_hat_customer_portal/1/html/creating_and_managing_service_accounts).
        displayName: Cost Management Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cost
        - management
        - usage
        - monitor
        links:
        - name: Cost Management Metrics Operator source code repository
          url: https://github.com/project-koku/koku-metrics-operator
        maintainers:
        - email: costmanagement@redhat.com
          name: costmanagement
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/costmanagement/costmanagement-metrics-operator-bundle@sha256:9cf11bd854c76e2b344c0072ae8487acde31f6fb50e2c47937f95186146f40e6
        - registry.redhat.io/costmanagement/costmanagement-metrics-rhel9-operator@sha256:e4457d0a4c77e95f46637e41044f45049fe03e818db82fabef06bd95c723778b
        version: 4.3.0
      entries:
      - name: costmanagement-metrics-operator.4.3.0
        version: 4.3.0
      - name: costmanagement-metrics-operator.4.2.0
        version: 4.2.0
      - name: costmanagement-metrics-operator.4.1.0
        version: 4.1.0
      - name: costmanagement-metrics-operator.4.0.0
        version: 4.0.0
      - name: costmanagement-metrics-operator.3.3.2
        version: 3.3.2
      - name: costmanagement-metrics-operator.3.3.1
        version: 3.3.1
      - name: costmanagement-metrics-operator.3.3.0
        version: 3.3.0
      - name: costmanagement-metrics-operator.3.2.1
        version: 3.2.1
      - name: costmanagement-metrics-operator.3.2.0
        version: 3.2.0
      - name: costmanagement-metrics-operator.3.1.1
        version: 3.1.1
      - name: costmanagement-metrics-operator.3.1.0
        version: 3.1.0
      - name: costmanagement-metrics-operator.3.0.1
        version: 3.0.1
      - name: costmanagement-metrics-operator.3.0.0
        version: 3.0.0
      - name: costmanagement-metrics-operator.2.0.0
        version: 2.0.0
      - name: costmanagement-metrics-operator.1.2.0
        version: 1.2.0
      - name: costmanagement-metrics-operator.1.1.9
        version: 1.1.9
      - name: costmanagement-metrics-operator.1.1.8
        version: 1.1.8
      - name: costmanagement-metrics-operator.1.1.7
        version: 1.1.7
      - name: costmanagement-metrics-operator.1.1.6
        version: 1.1.6
      - name: costmanagement-metrics-operator.1.1.5
        version: 1.1.5
      - name: costmanagement-metrics-operator.1.1.4
        version: 1.1.4
      - name: costmanagement-metrics-operator.1.1.3
        version: 1.1.3
      - name: costmanagement-metrics-operator.1.1.0
        version: 1.1.0
      - name: costmanagement-metrics-operator.1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: costmanagement-metrics-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Digital.ai
      provider-url: https://digital.ai
    name: digitalai-deploy-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: digitalai-deploy-operator.v25.1.0-beta.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "medium"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": "/login",
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/tmp",
                        "/opt/xebialabs/central-configuration-server/centralConfiguration",
                        "/opt/xebialabs/central-configuration-server/conf",
                        "/opt/xebialabs/central-configuration-server/log"
                      ],
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": "/login",
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "startupProbe": {
                      "enabled": true,
                      "failureThreshold": 12,
                      "initialDelaySeconds": 10,
                      "path": "/login",
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r39"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "quorum",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-daid",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "node-conf_xl-deploy-conf-template": {
                        "content": "# The ${APP_HOME}/node-conf/xl-deploy.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-deploy.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-deploy.conf and this is specified in ${APP_HOME}/conf/xld-wrapper.conf.common\nxl {\n  server.hostname = ${HOSTNAME}${HOSTNAME_SUFFIX}\n  cluster.node {\n    id = ${XL_NODE_NAME}\n    hostname = ${XL_NODE_NAME}\n    clusterPort = 5531\n  }\n}\n",
                        "mode": 432,
                        "path": "node-conf/xl-deploy.conf.template"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvm": {
                      "options": {
                        "networkaddress.cache.ttl": 30
                      }
                    },
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": null,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/xl-deploy-server/artifacts",
                        "/opt/xebialabs/xl-deploy-server/cache",
                        "/opt/xebialabs/xl-deploy-server/centralConfiguration",
                        "/opt/xebialabs/xl-deploy-server/conf",
                        "/opt/xebialabs/xl-deploy-server/driver/jdbc",
                        "/opt/xebialabs/xl-deploy-server/driver/mq",
                        "/opt/xebialabs/xl-deploy-server/export",
                        "/opt/xebialabs/xl-deploy-server/log",
                        "/opt/xebialabs/xl-deploy-server/node-conf",
                        "/opt/xebialabs/xl-deploy-server/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": null,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "startupProbe": {
                      "enabled": true,
                      "failureThreshold": 12,
                      "initialDelaySeconds": 60,
                      "path": null,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r39"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.12.0-debian-12-r12"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "17.2.0-debian-12-r12"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "4.0.7-debian-12-r0"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/deploy-task-engine/cache",
                        "/opt/xebialabs/deploy-task-engine/conf",
                        "/opt/xebialabs/deploy-task-engine/driver/jdbc",
                        "/opt/xebialabs/deploy-task-engine/driver/mq",
                        "/opt/xebialabs/deploy-task-engine/export",
                        "/opt/xebialabs/deploy-task-engine/log",
                        "/opt/xebialabs/deploy-task-engine/node-conf",
                        "/opt/xebialabs/deploy-task-engine/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "startupProbe": {
                      "enabled": true,
                      "failureThreshold": 12,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r39"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabsunsupported/deploy-operator@sha256:ca728924eaa65b4bc0157fca3120e92e8c58225d6ca8d45a1726e3d0f85ab38b '
          createdAt: "2025-04-09T14:58:13Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind: DigitalaiDeploy\nmetadata:\n
          \ name: daid-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  centralConfiguration:\n
          \   replicaCount: 1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  master:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  worker:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          SESSION_XLD\n      haproxy.router.openshift.io/disable_cookies: \"false\"\n
          \     haproxy.router.openshift.io/rewrite-target: /\n    hostname: '<mandatory-deploy-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n
          \       enabled: false\n      containerSecurityContext:\n        enabled:
          false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n    install:
          true\n    persistence:\n      size: 1Gi\n      storageClass: ''\n    replicaCount:
          1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\n####
          Configuration Details\n\nThe sample configuration uses:\n\n- Autogenerated
          limited license\n- Simple administrator initial password\n- Default keystore
          setup\n- Only one replica is set for all pods\n- All Pods are missing resource
          limit setup\n- Default storage class and minimal size for persistent storage\n-
          Embedded PostgreSQL for DB management\n- Embedded RabbitMQ for message queue
          management\n\n### Security Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabsunsupported/deploy-operator@sha256:ca728924eaa65b4bc0157fca3120e92e8c58225d6ca8d45a1726e3d0f85ab38b
        - docker.io/xebialabsunsupported/deploy-task-engine@sha256:5696c93aa10c114be4f84004eaceb09861d21cf03df1c05928ea68d9e89649cf
        - docker.io/xebialabsunsupported/xl-deploy@sha256:38f017fb42661c5d11a322b337d2f3e675f301c2fd9f8942e98613cf8bbd5cc0
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:18e02c701bdf2654811527f6cc26f43e74bce69256040ca301e4f5c498e7c645
        - docker.io/xebialabsunsupported/central-configuration@sha256:b7042b64b3e65ee8868aa4327b7f52257c8ccc4d70a1002d7edf3684cac0fa1b
        version: 25.1.0-beta.5
      entries:
      - name: digitalai-deploy-operator.v25.1.0-beta.5
        version: 25.1.0-beta.5
      name: beta
    - currentCSV: digitalai-deploy-operator.v24.1.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 20,
                      "probesReadinessTimeout": 20
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r16"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "classic",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "ingressClass": "haproxy-daid",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r16"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.0-debian-12-r1"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.10.1-debian-12-r5"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "15.6.0-debian-12-r7"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.13-debian-12-r2"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r16"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator without SCC creation and with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/deploy-operator@sha256:2b3413cd41f2b437e6027c8ae2cff12d1113e0ac1be69fc24840d68a05d3a665 '
          createdAt: "2024-10-16T05:39:21Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind:
          DigitalaiDeploy\nmetadata:\n  name: daid-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  securityContextConstraints:\n
          \   enabled: false\n  centralConfiguration:\n    replicaCount: 1\n    podSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n    volumePermissions:\n
          \     enabled: false\n  master:\n    replicaCount: 1\n    persistence:\n
          \     storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n      runAsUser:
          null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n    volumePermissions:\n
          \     enabled: false\n  worker:\n    replicaCount: 1\n    persistence:\n
          \     storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n      runAsUser:
          null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n    volumePermissions:\n
          \     enabled: false\n  route:\n    enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          SESSION_XLD\n      haproxy.router.openshift.io/disable_cookies: \"false\"\n
          \     haproxy.router.openshift.io/rewrite-target: /\n    hostname: '<mandatory-deploy-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n
          \       enabled: false\n        runAsUser: null\n        runAsGroup: null\n
          \       fsGroup: null\n      containerSecurityContext:\n        enabled:
          false\n        runAsUser: null\n        runAsGroup: null\n      securityContextConstraints:\n
          \       enabled: false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n
          \   install: true\n    persistence:\n      size: 1Gi\n      storageClass:
          ''\n    replicaCount: 1\n    podSecurityContext:\n      enabled: false\n
          \     runAsUser: null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     enabled: false\n      runAsUser: null\n      runAsGroup: null\n    securityContextConstraints:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\nIf
          SCC is required, it must be managed manually. The necessary permissions
          for accessing SecurityContextConstraints must be granted when SCC is enabled;
          otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"daid-doc-digitalai-deploy-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xld-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Embedded PostgreSQL for
          DB management\n- Embedded RabbitMQ for message queue management\n\n### Security
          Configuration Details\n\n- `securityContextConstraints.enabled: false` -
          disables creation of SCCs;\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/central-configuration@sha256:83359e49c66e4fab502cc75663b456eb37d81d7cb512f2c48667f4d6a324e0df
        - docker.io/xebialabs/deploy-operator@sha256:2b3413cd41f2b437e6027c8ae2cff12d1113e0ac1be69fc24840d68a05d3a665
        - docker.io/xebialabs/deploy-task-engine@sha256:8a381fd84483ea919fa7f8bee5cf19d9dec0d1d61cce73ec6b7c56fa504c6c93
        - docker.io/xebialabs/xl-deploy@sha256:77fdf6a3909367b060eba2ef698baddb77e4086d4d977f9c617d1e26a4427472
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:771a9a173e033a3ad8b46f5c00a7036eaa88c8d8d1fbd89217325168998113ea
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:9716402247ed874f19574a0d5125d1035fd198f36081d9129c1d4d4ad2f714a6
        version: 24.1.10
      entries:
      - name: digitalai-deploy-operator.v24.1.10
        version: 24.1.10
      name: stable
    - currentCSV: digitalai-deploy-operator.v24.1.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 20,
                      "probesReadinessTimeout": 20
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r40"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "classic",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "image": {
                        "tag": "v0.14.7"
                      },
                      "ingressClass": "haproxy-daid",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r40"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.2-debian-12-r10"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r0"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "15.6.0-debian-12-r20"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.14-debian-12-r7"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r40"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator without SCC creation and with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/deploy-operator@sha256:c652a6dfc1f3ce2fba528141b88b48b394db55420b12f01bc21e1c8d20ef4b01 '
          createdAt: "2025-04-07T06:31:17Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind:
          DigitalaiDeploy\nmetadata:\n  name: daid-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  securityContextConstraints:\n
          \   enabled: false\n  centralConfiguration:\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n  master:\n    replicaCount:
          1\n    persistence:\n      storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n  worker:\n    replicaCount:
          1\n    persistence:\n      storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n  route:\n    enabled: false\n
          \   annotations:\n      haproxy.router.openshift.io/cookie_name: SESSION_XLD\n
          \     haproxy.router.openshift.io/disable_cookies: \"false\"\n      haproxy.router.openshift.io/rewrite-target:
          /\n    hostname: '<mandatory-deploy-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n        enabled:
          false\n      containerSecurityContext:\n        enabled: false\n      securityContextConstraints:\n
          \       enabled: false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n
          \   install: true\n    persistence:\n      size: 1Gi\n      storageClass:
          ''\n    replicaCount: 1\n    podSecurityContext:\n      enabled: false\n
          \   containerSecurityContext:\n      enabled: false\n    securityContextConstraints:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\nIf
          SCC is required, it must be managed manually. The necessary permissions
          for accessing SecurityContextConstraints must be granted when SCC is enabled;
          otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"daid-doc-digitalai-deploy-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xld-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Embedded PostgreSQL for
          DB management\n- Embedded RabbitMQ for message queue management\n\n### Security
          Configuration Details\n\n- `securityContextConstraints.enabled: false` -
          disables creation of SCCs;\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/central-configuration@sha256:085601dcad8a1bdd996dbc5fd56d3db25cd15e2880d3b7d5e767e20959cc85cf
        - docker.io/xebialabs/deploy-operator@sha256:c652a6dfc1f3ce2fba528141b88b48b394db55420b12f01bc21e1c8d20ef4b01
        - docker.io/xebialabs/deploy-task-engine@sha256:1cb2b3483455268d96a9258f70df7f0f1544efecba83c8f695122c9932d6d13d
        - docker.io/xebialabs/xl-deploy@sha256:8854a2ae9f2f1f7a2a63a5041ae5240c48939c56db0bf4a9fd72867861320667
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:4deec4581f83eb09f53d5744ea2af54b27d8a70b2077e4ef4f47c9326de76803
        version: 24.1.17
      entries:
      - name: digitalai-deploy-operator.v24.1.17
        version: 24.1.17
      - name: digitalai-deploy-operator.v24.1.14
        version: 24.1.14
      - name: digitalai-deploy-operator.v24.1.10
        version: 24.1.10
      name: stable-v24.1
    - currentCSV: digitalai-deploy-operator.v24.3.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "medium"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 20,
                      "probesReadinessTimeout": 20
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/tmp",
                        "/opt/xebialabs/central-configuration-server/centralConfiguration",
                        "/opt/xebialabs/central-configuration-server/conf",
                        "/opt/xebialabs/central-configuration-server/log"
                      ],
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r42"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "classic",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-daid",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "node-conf_xl-deploy-conf-template": {
                        "content": "# The ${APP_HOME}/node-conf/xl-deploy.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-deploy.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-deploy.conf and this is specified in ${APP_HOME}/conf/xld-wrapper.conf.common\nxl {\n  server.hostname = ${HOSTNAME}${HOSTNAME_SUFFIX}\n  cluster.node {\n    id = ${XL_NODE_NAME}\n    hostname = ${XL_NODE_NAME}\n    clusterPort = 5531\n  }\n}\n",
                        "mode": 432,
                        "path": "node-conf/xl-deploy.conf.template"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvm": {
                      "options": {
                        "networkaddress.cache.ttl": 30
                      }
                    },
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/xl-deploy-server/artifacts",
                        "/opt/xebialabs/xl-deploy-server/cache",
                        "/opt/xebialabs/xl-deploy-server/centralConfiguration",
                        "/opt/xebialabs/xl-deploy-server/conf",
                        "/opt/xebialabs/xl-deploy-server/driver/jdbc",
                        "/opt/xebialabs/xl-deploy-server/driver/mq",
                        "/opt/xebialabs/xl-deploy-server/export",
                        "/opt/xebialabs/xl-deploy-server/log",
                        "/opt/xebialabs/xl-deploy-server/node-conf",
                        "/opt/xebialabs/xl-deploy-server/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r42"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r3"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "16.3.0-debian-12-r23"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n{{ if eq .Values.queueType \"quorum\" -}}\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n{{- end }}\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.13.7-debian-12-r5"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "queueType": "classic",
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/deploy-task-engine/cache",
                        "/opt/xebialabs/deploy-task-engine/conf",
                        "/opt/xebialabs/deploy-task-engine/driver/jdbc",
                        "/opt/xebialabs/deploy-task-engine/driver/mq",
                        "/opt/xebialabs/deploy-task-engine/export",
                        "/opt/xebialabs/deploy-task-engine/log",
                        "/opt/xebialabs/deploy-task-engine/node-conf",
                        "/opt/xebialabs/deploy-task-engine/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r42"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/deploy-operator@sha256:2f79f3ed817aa7ecd6a090e72f057ea341b4c1caad9cb83a7de6c102afb5f71d '
          createdAt: "2025-04-08T15:23:42Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind: DigitalaiDeploy\nmetadata:\n
          \ name: daid-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  centralConfiguration:\n
          \   replicaCount: 1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  master:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  worker:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          SESSION_XLD\n      haproxy.router.openshift.io/disable_cookies: \"false\"\n
          \     haproxy.router.openshift.io/rewrite-target: /\n    hostname: '<mandatory-deploy-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n
          \       enabled: false\n      containerSecurityContext:\n        enabled:
          false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n    install:
          true\n    persistence:\n      size: 1Gi\n      storageClass: ''\n    replicaCount:
          1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\n####
          Configuration Details\n\nThe sample configuration uses:\n\n- Autogenerated
          limited license\n- Simple administrator initial password\n- Default keystore
          setup\n- Only one replica is set for all pods\n- All Pods are missing resource
          limit setup\n- Default storage class and minimal size for persistent storage\n-
          Embedded PostgreSQL for DB management\n- Embedded RabbitMQ for message queue
          management\n\n### Security Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/central-configuration@sha256:db9f4109fa84c50d234e4b6efdc1ca9997e10099ddaeaf83edfd27a0db9b4909
        - docker.io/xebialabs/deploy-operator@sha256:2f79f3ed817aa7ecd6a090e72f057ea341b4c1caad9cb83a7de6c102afb5f71d
        - docker.io/xebialabs/deploy-task-engine@sha256:94f9b8aaf73a5963902c4093837bb2990ef27cdf2d0f85c8271113b4edc60c51
        - docker.io/xebialabs/xl-deploy@sha256:0538a992513564a650a8327b82872ec908d9c59491b1f27b0c29725c355a2c47
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:06cd12493818c444a53b629b055dfcb2d7a040d5bb2c0bb266aa8508afa53333
        version: 24.3.6
      entries:
      - name: digitalai-deploy-operator.v24.3.6
        version: 24.3.6
      - name: digitalai-deploy-operator.v24.3.5
        version: 24.3.5
      name: stable-v24.3
    defaultChannel: stable-v24.3
    packageName: digitalai-deploy-operator
    provider:
      name: Digital.ai
      url: https://digital.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: stolostron-engine
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stolostron-engine.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "multicluster.openshift.io/v1", "kind": "MultiClusterEngine",
            "metadata": {"name": "multiclusterengine"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/stolostron/backplane-operator@sha256:2b70bad016999d53d7d27b00f74e8dca3b9edfa8f0c1bf8906cb4ed19abbb0d9
          createdAt: "2025-11-05T18:48:44Z"
          description: Foundational components for central management of multiple
            OpenShift Container Platform and Kubernetes clusters
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.8.0 <0.8.2'
          operatorframework.io/initialization-resource: '{"apiVersion":"multicluster.openshift.io/v1",
            "kind":"MultiClusterEngine","metadata":{"name":"engine"},"spec": {}}'
          operatorframework.io/suggested-namespace: stolostron-engine
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          repository: https://github.com/stolostron/stolostron
          support: Stolostron Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MultiClusterEngine defines the configuration for an instance
              of a multicluster engine, a central point providing the foundational components for managing multiple Kubernetes-based clusters. The deployment of the multicluster engine components is
              determined based on the configuration that is defined in this resource.
            displayName: MultiCluster Engine
            kind: MultiClusterEngine
            name: multiclusterengines.multicluster.openshift.io
            version: v1
        description: 'Stolostron Engine provides the foundational components that
          are necessary for the centralized management of multiple Kubernetes-based
          clusters across data centers, public clouds, and private clouds. You can
          use the engine to create Red Hat OpenShift Container Platform clusters on
          selected providers, or import existing Kubernetes-based clusters. After
          the clusters are managed, you can use the APIs that are provided by the
          engine to distribute configuration based on placement policy. Placement
          policy is a significant part of creating sophisticated multicluster management
          applications because you can select the applicable clusters. '
        displayName: Stolostron Engine
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multiclusterengine
        links:
        - name: Documentation
          url: https://github.com/stolostron/stolostron
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: pre-release
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/stolostron/cluster-proxy-addon@sha256:674abd3cf9b3b953a4103d5c1ced32d65e70e17fc200a63c7cc65bcfb4e662c4
        - quay.io/stolostron/assisted-image-service@sha256:9e89eeca50074fb09989a0f483c5fa5d9ab227c33a9dca54693959c9d70de8f4
        - quay.io/stolostron/cluster-api-aws-controller@sha256:22a57cf5b74d0692025f0b0f57c5f28f8b492ea13295e9101b63f57766ffff38
        - quay.io/community-operator-pipeline-prod/stolostron-engine@sha256:01f5bdd558b429c535e409128dc1132d1a420eae5b61b11ccc903b89604a1516
        - quay.io/stolostron/assisted-service@sha256:b77884b64bfb748936ac8aa3cc9238d385906bbc242d044bd02f7736a459c3cc
        - quay.io/stolostron/registration-operator@sha256:274482973bfc6645da56f3a1fad0f49972dd197282fb067247269a4c196845c2
        - quay.io/stolostron/ip-address-manager@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/multicloud-manager@sha256:2f8f1cb804a3c8ccfd695c873bc77c9e5b8c295f299465b1a10b01ae6fbc79f7
        - quay.io/stolostron/assisted-installer-agent@sha256:a9b31ab5e41986ecf464613d285e9bd7c5518b94e238f6da5c8d8fabd03742a6
        - quay.io/stolostron/discovery-operator@sha256:e6eb524c1208ab40cb0b5201a3ba4135330de91f918a76ccc3ac3693d6851122
        - quay.io/stolostron/ose_cluster_api_rhel9@sha256:5bdd5905d5a6c6a611df6bf0aa0caf22eb768c938b52ae6a733ed5277c6e1c22
        - quay.io/stolostron/backplane-operator@sha256:2b70bad016999d53d7d27b00f74e8dca3b9edfa8f0c1bf8906cb4ed19abbb0d9
        - quay.io/stolostron/hypershift-operator@sha256:cc84043bbe37bfcb5aabc8d31b29523231fb94488d6d8692f5de5acf137c7534
        - quay.io/stolostron/foundation-e2e@sha256:b5502848bee71b7fb9f4b1a54f00ccbdf77a9ecbb5e3e7bfad815057f2c55e2f
        - quay.io/stolostron/cluster-api-provider-azure@sha256:f6e780adc1bf3fe64303fcb8c5d080ab639e62c62d0577a1bbae5b5f5bfa393d
        - quay.io/stolostron/ose_aws_cluster_api_controllers_rhel9@sha256:5bdd5905d5a6c6a611df6bf0aa0caf22eb768c938b52ae6a733ed5277c6e1c22
        - quay.io/stolostron/clusterclaims-controller@sha256:8a3945e3127328e6f20fab5e250f320e27c0f517e564838c7bb83a50b59ac019
        - quay.io/stolostron/helloworld@sha256:a790795409f6e781f506b6a63f39f7d344f01efa30c3de87b1727dc2010d5bbf
        - quay.io/stolostron/backplane-must-gather@sha256:4b7fc3b3e8d9e91e76863074e523a1b15a0be50c08d56babd0a2c944101203d1
        - quay.io/stolostron/discovery-testserver@sha256:fea15ba83dd90d4f7b71fa248319cd902b967e8e140ab7b25090c6459f1b77e1
        - quay.io/stolostron/assisted-service-el8@sha256:0a20fd360929b2845a0e331d994000fa65841091fc3a0ebfa0b77368fa948872
        - quay.io/stolostron/aws-encryption-provider@sha256:83f11e28004fcbb31d7ec6c34ef2d2ec7dd8fc175c5e0135f6ace9894c65bfd0
        - quay.io/stolostron/provider-credential-controller@sha256:b01347aee12c2b443930e9e46e163c09f4848556eae2cd0242d721527bfabe60
        - quay.io/stolostron/cluster-api-provider-openshift-assisted-control-plane@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/console-mce@sha256:12c11381c1fa9c4e60990b4609ffcecd511597cc40fadd264c62637bfdd6b599
        - quay.io/stolostron/addon-manager@sha256:caf5ffd4eca56c5741e638f800964d3da4ff4dd9fd01ac991a78462e6a010220
        - quay.io/stolostron/placement@sha256:770bdc64368310e1b726ed5afdab360e0b826baa6b0f49115eb525a1d5f2bedf
        - quay.io/stolostron/managedcluster-import-controller@sha256:cc01dd7b7161196c7b9159cad19b5cd18a1bde03ad5e48b2ca94321931b5bf7e
        - quay.io/stolostron/discovery-operator-tests@sha256:12617e4bef1b742b061f9a3223fcf8e9458b817467f0d551c421d14e5dab3111
        - quay.io/stolostron/cluster-api@sha256:7a04ac4e5bdaf29498af75b2b7c4ff19cb6223f2076c9373a3a955553243ddda
        - quay.io/stolostron/image-based-install-operator@sha256:e579d282460f48d59ee3078dad8e10930695c4f0f00c83a00b7703c82c273684
        - quay.io/stolostron/managed-serviceaccount@sha256:cefa8932e31bad17ed0c7ee739f024dd94681887c704ca8275c44c710cb4b19a
        - quay.io/stolostron/managed-serviceaccount-e2e@sha256:e983d2cd7f240dbbe47612055185873ffa63e5ac34083732557cdf2c20bc8a1a
        - quay.io/stolostron/helloprow-go@sha256:e055ab3773a248c22dbde9847a3289e8512ccc85c6e9015544fc4f59d14b9cad
        - quay.io/stolostron/work@sha256:7ae1d6b4cca055505a227f7ca8f4438490731de572a5bd73c9d24a63c8a0771d
        - quay.io/stolostron/clusterlifecycle-state-metrics@sha256:f50790d626b67ba32b2e8f47ba75d6895a54a24c7e27ede016f449aca3c05e3f
        - quay.io/stolostron/hypershift-addon-operator@sha256:1e4b94d0aa779fb83ab936c53deb6998d0e711328beb7e75ca987681d5e38095
        - quay.io/stolostron/assisted-installer@sha256:7a775fbcde9e6774769e1272bf4f293cbf0158d8ccddd93083611501b638f242
        - quay.io/stolostron/cluster-api-provider-kubevirt@sha256:44f8bb72b975456d4151a88a560fc525ad6f4da7968a38e94a86b6dd77d3c543
        - quay.io/stolostron/assisted-installer-controller@sha256:2d28d51a93ecfddb0499fb4e398f11b42a5e47db5fc4aa5d1648408016b77dff
        - quay.io/stolostron/apiserver-network-proxy@sha256:dc74c7c67ca851f50b83d7a03f91d028214fd8a941f12edd4411b860dc7b763d
        - quay.io/stolostron/cluster-image-set-controller@sha256:2cea7a3dadb3f58671411ef110de3c276edd99e9ad5f794fb492cdbd89cae676
        - quay.io/stolostron/cluster-proxy@sha256:1fc3e70e679a052d4fe1a50f268e6b3ef5a8fc17102df2edc5e38ba714aa194a
        - quay.io/stolostron/hive@sha256:86ff94d3e7c174ac4d6818183c66791edc7638965dd09e2d41172609c81f451f
        - quay.io/stolostron/hypershift-addon-operator-canary-test@sha256:789b63b893f7efc7a5308d0771d42f38c8eb78db3efbe67ee210ca89ba456841
        - quay.io/stolostron/cluster-api-provider-agent@sha256:e2b52112f6ae5f16b8349cb80b244c739e5ac1bd41872d08379698a04c78a0d8
        - quay.io/stolostron/cluster-curator-controller@sha256:c97ad90fd198b234301b367bc48c2b690562711f3f0ecfa14388169b28f7b424
        - quay.io/stolostron/kube-rbac-proxy-mce@sha256:365124bd4e035bb8b7b6b2c6bbb861f69a25a5217b03e8d120cd717e9fe18822
        - quay.io/stolostron/cluster-api-provider-openshift-assisted-bootstrap@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/backplane-operator-test@sha256:c9032e5453a8a5e293a6360e40bdfc3734f949c1fb6269a78844d0b4e225960b
        - quay.io/stolostron/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        - quay.io/stolostron/ose-baremetal-cluster-api-controllers-rhel9@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/registration@sha256:34f4b9682e163947af8192b95a47534afb16453055a0fb6772bc3b1f4c8bf6b6
        version: 0.8.2
      entries:
      - name: stolostron-engine.v0.8.2
        version: 0.8.2
      - name: stolostron-engine.v0.8.1
        version: 0.8.1
      - name: stolostron-engine.v0.8.0
        version: 0.8.0
      name: community-0.8
    defaultChannel: community-0.8
    packageName: stolostron-engine
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: metallb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: metallb-operator.v4.20.0-202512081818
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRConfiguration",
                "metadata": {
                  "name": "basic",
                  "namespace": "frr-k8s-system"
                },
                "spec": {
                  "bgp": {
                    "routers": [
                      {
                        "asn": 64512,
                        "neighbors": [
                          {
                            "address": "172.30.0.3",
                            "asn": 64512,
                            "port": 180,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            },
                            "toReceive": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          }
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRConfiguration",
                "metadata": {
                  "name": "two-neighs",
                  "namespace": "frr-k8s-system"
                },
                "spec": {
                  "bgp": {
                    "routers": [
                      {
                        "asn": 64512,
                        "neighbors": [
                          {
                            "address": "172.30.0.3",
                            "asn": 4200000000,
                            "ebgpMultiHop": true,
                            "port": 180,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          },
                          {
                            "address": "172.18.0.6",
                            "asn": 4200000000,
                            "port": 179,
                            "toAdvertise": {
                              "allowed": {
                                "prefixes": [
                                  "192.168.2.0/24"
                                ]
                              }
                            }
                          }
                        ],
                        "prefixes": [
                          "192.168.2.0/24",
                          "192.169.2.0/24"
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRConfiguration",
                "metadata": {
                  "name": "two-routers-vrf",
                  "namespace": "frr-k8s-system"
                },
                "spec": {
                  "bgp": {
                    "routers": [
                      {
                        "asn": 64513,
                        "neighbors": [
                          {
                            "address": "172.32.0.3",
                            "asn": 4200000000,
                            "ebgpMultiHop": true,
                            "port": 180,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          }
                        ],
                        "prefixes": [
                          "192.168.2.0/24",
                          "192.169.2.0/24"
                        ]
                      },
                      {
                        "asn": 64515,
                        "neighbors": [
                          {
                            "address": "172.31.0.3",
                            "asn": 4200000000,
                            "port": 179,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          }
                        ],
                        "prefixes": [
                          "192.168.2.0/24",
                          "192.169.2.0/24"
                        ],
                        "vrf": "red"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRNodeState",
                "metadata": {
                  "name": "frr-k8s-worker"
                },
                "status": {
                  "lastConversionResult": "success",
                  "lastReloadResult": "success",
                  "runningConfig": "Building configuration...\n\nCurrent configuration:\n!\nfrr version 9.0.2_git\nfrr defaults traditional\nhostname frr-k8s-worker\nlog file /etc/frr/frr.log informational\nlog timestamp precision 3\nno ipv6 forwarding\nservice integrated-vtysh-config\n!\nip nht resolve-via-default\n!\nipv6 nht resolve-via-default\n!\nend\n"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BFDProfile",
                "metadata": {
                  "name": "bfd-profile-sample",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "receiveInterval": 380,
                  "transmitInterval": 270
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "peers": [
                    "ebgp-single-hop0"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "ipAddressPoolSelectors": [
                    {
                      "matchLabels": {
                        "test": "ipv6"
                      }
                    },
                    {
                      "matchLabels": {
                        "test": "ipv4"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample3",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "aggregationLength": 32,
                  "aggregationLengthV6": 128,
                  "communities": [
                    "65535:65282"
                  ],
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "localPref": 50
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample4",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "aggregationLength": 32,
                  "aggregationLengthV6": 128,
                  "communities": [
                    "NO_ADVERTISE"
                  ],
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "localPref": 50
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample5",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "aggregationLength": 32,
                  "aggregationLengthV6": 128,
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "nodeSelectors": [
                    {
                      "matchLabels": {
                        "kubernetes.io/hostname": "kind-control-plane"
                      }
                    },
                    {
                      "matchLabels": {
                        "kubernetes.io/hostname": "kind-worker"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-beta1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "myASN": 64512,
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "Community",
                "metadata": {
                  "name": "community1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "communities": [
                    {
                      "name": "NO_ADVERTISE",
                      "value": "65535:65282"
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "IPAddressPool",
                "metadata": {
                  "name": "ip-addresspool-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "addresses": [
                    "192.168.10.0/24",
                    "192.168.9.1-192.168.9.5",
                    "fc00:f853:0ccd:e799::/124"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "IPAddressPool",
                "metadata": {
                  "labels": {
                    "test": "ipv4"
                  },
                  "name": "ip-addresspool-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "addresses": [
                    "172.20.0.100/24"
                  ],
                  "autoAssign": false
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "IPAddressPool",
                "metadata": {
                  "labels": {
                    "test": "ipv6"
                  },
                  "name": "ip-addresspool-sample3",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "addresses": [
                    "2002:2:2::1-2002:2:2::100"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "L2Advertisement",
                "metadata": {
                  "name": "l2-adv-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "L2Advertisement",
                "metadata": {
                  "name": "l2-adv-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "nodeSelectors": [
                    {
                      "matchLabels": {
                        "kubernetes.io/hostname": "kind-control-plane"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "MetalLB",
                "metadata": {
                  "name": "metallb",
                  "namespace": "metallb-system"
                },
                "spec": {}
              },
              {
                "apiVersion": "metallb.io/v1beta2",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "myASN": 64512,
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta2",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "bfdProfile": "bfd-profile-sample",
                  "myASN": 64512,
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta2",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-sample3",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "holdTime": "9m0s",
                  "keepaliveTime": "0s",
                  "myASN": 64512,
                  "passwordSecret": {
                    "name": "secretname",
                    "namespace": "metallb-system"
                  },
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3",
                  "peerPort": 180
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/metallb-rhel9-operator@sha256:72b48d051e8794b0a5eb63d92db04547a4ce27de39ec4c63a77ea2fabaf96ff1
          createdAt: "2023-06-06T15:25:00Z"
          description: An operator for deploying MetalLB on a kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.8.0 <4.20.0'
          operatorframework.io/suggested-namespace: metallb-system
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/metallb-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BFDProfile is the Schema for the bfdprofiles API
            kind: BFDProfile
            name: bfdprofiles.metallb.io
            version: v1beta1
          - description: BGPAdvertisement is the Schema for the bgpadvertisements
              API
            kind: BGPAdvertisement
            name: bgpadvertisements.metallb.io
            version: v1beta1
          - description: BGPPeer is the Schema for the bgppeers API
            kind: BGPPeer
            name: bgppeers.metallb.io
            version: v1beta1
          - description: BGPPeer is the Schema for the bgppeers API
            kind: BGPPeer
            name: bgppeers.metallb.io
            version: v1beta2
          - description: Community is the Schema for the communities API
            kind: Community
            name: communities.metallb.io
            version: v1beta1
          - description: FRRConfiguration is the Schema for the frrconfigurations
              API
            kind: FRRConfiguration
            name: frrconfigurations.frrk8s.metallb.io
            version: v1beta1
          - description: FRRNodeState is the Schema for the frrnodestates API
            kind: FRRNodeState
            name: frrnodestates.frrk8s.metallb.io
            version: v1beta1
          - description: IPAddressPool is the Schema for the ipaddresspools API
            kind: IPAddressPool
            name: ipaddresspools.metallb.io
            version: v1beta1
          - description: L2Advertisement is the Schema for the l2advertisements API
            kind: L2Advertisement
            name: l2advertisements.metallb.io
            version: v1beta1
          - description: MetalLB is the Schema for the metallbs API
            displayName: MetalLB
            kind: MetalLB
            name: metallbs.metallb.io
            version: v1beta1
          - kind: ServiceBGPStatus
            name: servicebgpstatuses.metallb.io
            version: v1beta1
          - description: L2ServiceStatus is the Schema for the l2servicestatus API
            kind: ServiceL2Status
            name: servicel2statuses.metallb.io
            version: v1beta1
        description: An operator for deploying MetalLB on a kubernetes cluster.
        displayName: MetalLB Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - metallb-operator
        links:
        - name: MetalLB Operator
          url: https://github.com/openshift/metallb-operator
        maintainers:
        - email: fpaoline@redhat.com
          name: Federico Paolinelli
        - email: obraunsh@redhat.com
          name: Ori Braunshtein
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-metallb-operator-bundle@sha256:f44369457410c34175352a6d9c3939c7931bf42d6099dfa119e3a8f558dcbab0
        - registry.redhat.io/openshift4/frr-rhel9@sha256:9f8df09b73df5d35920e24dcbb3d69df441e9d5434561c0c3e965c90506a333e
        - registry.redhat.io/openshift4/metallb-rhel9-operator@sha256:72b48d051e8794b0a5eb63d92db04547a4ce27de39ec4c63a77ea2fabaf96ff1
        - registry.redhat.io/openshift4/metallb-rhel9@sha256:75864368e099ccfa6117e5c96bdec03a330361f923b521da1cd4b1d59b923121
        version: 4.20.0-202512081818
      entries:
      - name: metallb-operator.v4.20.0-202512081818
        version: 4.20.0-202512081818
      - name: metallb-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: metallb-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: metallb-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: metallb-operator.v4.20.0-202511040554
        version: 4.20.0-202511040554
      - name: metallb-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: metallb-operator.v4.20.0-202509271248
        version: 4.20.0-202509271248
      name: stable
    defaultChannel: stable
    packageName: metallb-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: bamoe-kogito-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bamoe-kogito-operator.8.0.5-3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "ruleunit-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogitoinfra-sample"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "kafka.strimzi.io/v1beta2",
                    "kind": "Kafka",
                    "name": "kogito-kafka"
                  }
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator@sha256:8a99fcd217502b7e850af1e1097de58b6cb19d1e786394811a8e075c4d871279
          description: IBM BAMOE Kogito Operator for deployment and management of
            Kogito services.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["IBM Business Automation Manager
            Open Edition"]'
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/kogito-operator
          support: https://www.ibm.com/mysupport
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.rhpam.kiegroup.org
            version: v1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.rhpam.kiegroup.org
            version: v1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.rhpam.kiegroup.org
            version: v1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.rhpam.kiegroup.org
            version: v1
        description: |-
          IBM BAMOE Kogito Operator is designed for deployment and management of Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Builds a IBM BAMOE Kogito service from a remote git repository and creates a custom image for the given runtime: Red Hat build of Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Deploy IBM BAMOE Kogito service from user provided image.
          * Setup Grafana Dashboard when Grafana Operator is available in cluster.
          * Create Prometheus monitor object when Prometheus operator is available in cluster.

          **IMPORTANT!** IBM BAMOE Kogito Operator may need Grafana and Prometheus Operator to configure monitoring in cases if you do not provide these services beforehand. If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the IBM BAMOE Kogito Operator.
        displayName: IBM BAMOE Kogito Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://ibm.com
        - name: Documentation
          url: https://www.ibm.com/docs/en/ibamoe
        - name: Source
          url: https://github.com/kiegroup/kogito-operator
        maintainers:
        - email: mysphelp@us.ibm.com
          name: IBM
        maturity: beta
        provider:
          name: IBM
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9492c67eaa7ab37df6f5fa623c4aac955b7d7ffaab9ae2e57dea745e82907e40
        - registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator-bundle@sha256:e0e7fc3a69575199a6fcf93985451dd66a5eb7d1ab8caecf059d7d52f3953dc4
        - registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator@sha256:8a99fcd217502b7e850af1e1097de58b6cb19d1e786394811a8e075c4d871279
        version: 8.0.5-3
      entries:
      - name: bamoe-kogito-operator.8.0.5-3
        version: 8.0.5-3
      - name: bamoe-kogito-operator.8.0.5-2
        version: 8.0.5-2
      - name: bamoe-kogito-operator.8.0.5-1
        version: 8.0.5-1
      - name: bamoe-kogito-operator.8.0.4-2
        version: 8.0.4-2
      - name: bamoe-kogito-operator.8.0.4-1
        version: 8.0.4-1
      - name: bamoe-kogito-operator.8.0.3-1
        version: 8.0.3-1
      - name: bamoe-kogito-operator.8.0.2-3
        version: 8.0.2-3
      - name: bamoe-kogito-operator.8.0.2-2
        version: 8.0.2-2
      - name: bamoe-kogito-operator.8.0.2-1
        version: 8.0.2-1
      - name: bamoe-kogito-operator.8.0.1-2
        version: 8.0.1-2
      - name: bamoe-kogito-operator.8.0.1-1
        version: 8.0.1-1
      - name: bamoe-kogito-operator.8.0.0-1
        version: 8.0.0-1
      name: 8.x
    defaultChannel: 8.x
    packageName: bamoe-kogito-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: deployment-validation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: deployment-validation-operator.v0.7.12
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Application Runtime, Monitoring, Security
          certified: "false"
          containerImage: quay.io/deployment-validation-operator/dv-operator:0.7.12
          createdAt: "2025-09-11T00:00:00Z"
          description: The deployment validation operator
          ignore-check.kube-linter.io/minimum-three-replicas: This deployment uses
            1 pod as currently replicating does not replicate metric data causing
            installation issues
          repository: https://github.com/app-sre/deployment-validation-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Deployment Validation Operator (DVO) checks deployments and other resources against a curated collection of best practices.
          These best practices focus mainly on ensuring that the applications are fault-tolerant. DVO reports failed validations via Prometheus metrics.
          If the best-practice check has failed, the metrics will report `1`.
        displayName: Deployment Validation Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: false
          type: MultiNamespace
        keywords:
        - dvo
        links:
        - name: repository
          url: https://github.com/app-sre/deployment-validation-operator
        - name: containerImage
          url: https://quay.io/deployment-validation-operator/dv-operator:0.7.12
        maintainers:
        - email: dvo-owners@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/deployment-validation-operator@sha256:2803298c7cf3eeaffe9da3153142058d94d65ff1dae90efd8819a4cd23e0518f
        - quay.io/deployment-validation-operator/dv-operator:0.7.12
        version: 0.7.12
      entries:
      - name: deployment-validation-operator.v0.7.12
        version: 0.7.12
      - name: deployment-validation-operator.v0.7.9
        version: 0.7.9
      - name: deployment-validation-operator.v0.7.8
        version: 0.7.8
      - name: deployment-validation-operator.v0.7.7
        version: 0.7.7
      - name: deployment-validation-operator.v0.7.6
        version: 0.7.6
      - name: deployment-validation-operator.v0.7.5
        version: 0.7.5
      - name: deployment-validation-operator.v0.7.4
        version: 0.7.4
      - name: deployment-validation-operator.v0.7.3
        version: 0.7.3
      - name: deployment-validation-operator.v0.7.2
        version: 0.7.2
      - name: deployment-validation-operator.v0.7.1
        version: 0.7.1
      - name: deployment-validation-operator.v0.7.0
        version: 0.7.0
      - name: deployment-validation-operator.v0.6.0
        version: 0.6.0
      - name: deployment-validation-operator.v0.5.0
        version: 0.5.0
      - name: deployment-validation-operator.v0.4.0
        version: 0.4.0
      - name: deployment-validation-operator.v0.3.0
        version: 0.3.0
      - name: deployment-validation-operator.v0.2.2
        version: 0.2.2
      name: alpha
    defaultChannel: alpha
    packageName: deployment-validation-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: https://www.redhat.com
    name: sap-commerce-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sap-commerce-operator.v0.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hybris.hybris.org/v1alpha1",
                "kind": "HybrisApp",
                "metadata": {
                  "name": "hybrisapp-sample"
                },
                "spec": {
                  "aJPServicePort": 30000,
                  "apachejvmRouteName": "",
                  "baseImageName": "hybris-base",
                  "baseImageTag": "v0.2",
                  "hybrisANTTaskNames": "",
                  "podHealthyProbePath": "/platform/init",
                  "sourceRepoLocalPropertiesOverride": "",
                  "sourceRepoRef": "main",
                  "sourceRepoURL": "https://github.com/redhat-sap/sap-commerce-app-example.git",
                  "startupProbeFailureThreshold": 100,
                  "startupProbePeriodSecond": 60
                }
              },
              {
                "apiVersion": "hybris.hybris.org/v1alpha1",
                "kind": "HybrisBase",
                "metadata": {
                  "name": "hybrisbase-sample"
                },
                "spec": {
                  "URL": "http://nexus.redhat.com/nexus/service/local/repositories/releases/content/org/hybris/hybris/1.0/hybris-1.0.tar.gz",
                  "buildSourceRepo": "https://github.com/redhat-sap/sap-commerce-operator",
                  "buildSourceRepoBranch": "main",
                  "imageName": "hybris-base",
                  "imageTag": "v0.2",
                  "jdkURL": "https://github.com/SAP/SapMachine/releases/download/sapmachine-11.0.5/sapmachine-jdk-11.0.5-1.x86_64.rpm",
                  "password": "admin123",
                  "username": "admin"
                }
              }
            ]
          capabilities: Basic Install
          categories: Database
          containerImage: quay.io/redhat-sap-cop/hybris-operator:0.0.4
          description: Builds and runs SAP Commerce in OpenShift
          operators.operatorframework.io/builder: operator-sdk-v1.6.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-sap/sap-commerce-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HybrisApp is the Schema for the hybrisapps API
            displayName: Hybris Application
            kind: HybrisApp
            name: hybrisapps.hybris.hybris.org
            version: v1alpha1
          - description: HybrisBase is the Schema for the Hybris Base API
            displayName: Hybris Base
            kind: HybrisBase
            name: hybrisbases.hybris.hybris.org
            version: v1alpha1
        description: |-
          Builds and runs SAP Commerce in OpenShift

          * The operator provides APIs to initialize SAP Commerce with the provided SAP Commerce Server. Though there are no restrictions from the operator on the base package to be used from SAP, the default SAP base image provides a server preconfigured with an application server based on Apache Tomcat. Both HSQLDB and Tomcat are included in the SAP Commerce package, and are designed to be used for testing, development, and demonstration purposes. The custom classes created for various business needs along with an external RDBMS configuration can be used in a HybrisApp creation to execute SAP Commerce in a production setup.

          * The operator also enables the use of SAP Commerce in a clustered model. A SAP Commerce Cluster is a number of individual SAP Commerce installations using a common set of data on one database. A cluster configuration lets you balance the load between the nodes to scale SAP Commerce in a way that is transparent to the user.

          * The clustering offers few communication protocols as options (UDP: both multicast or unicast, or JGroups). In order to support multicast for SAP Commerce clustering the corresponding OpenShift namespace has to be enabled for multicast usage.

          For more details on SAP Commerce consult the product documentation: [https://help.sap.com/viewer/product/SAP_COMMERCE](https://help.sap.com/viewer/product/SAP_COMMERCE)
        displayName: SAP Commerce Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sap-commerce-operator
        links:
        - name: SAP Commerce Operator
          url: https://github.com/redhat-sap/sap-commerce-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat, Inc.
          url: https://www.redhat.com
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/openshift-community-operators/sap-commerce-operator@sha256:9b6a3c9c7a3af1a91578fa06c202d128fc7bfff3ae21300a4382cffb11def17a
        - quay.io/redhat-sap-cop/hybris-operator:0.0.4
        version: 0.0.4
      entries:
      - name: sap-commerce-operator.v0.0.4
        version: 0.0.4
      - name: sap-commerce-operator.v0.0.3
        version: 0.0.3
      - name: sap-commerce-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: sap-commerce-operator
    provider:
      name: Red Hat, Inc.
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-bedrockagent-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-bedrockagent-controller.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bedrockagent.services.k8s.aws/v1alpha1",
                "kind": "Agent",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/bedrockagent-controller:1.1.0
          createdAt: "2025-11-29T03:25:09Z"
          description: AWS Bedrock Agent controller is a service controller for managing
            Bedrock Agent resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Agent represents the state of an AWS bedrockagent Agent resource.
            displayName: Agent
            kind: Agent
            name: agents.bedrockagent.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Bedrock Agent resources in AWS from within your Kubernetes cluster.

          **About Amazon Bedrock Agent**

          Amazon Bedrock is a fully managed service that makes high-performing foundation models (FMs) from leading AI companies and Amazon available for your use through a unified API. You can choose from a wide range of foundation models to find the model that is best suited for your use case. Amazon Bedrock also offers a broad set of capabilities to build generative AI applications with security, privacy, and responsible AI. Using Amazon Bedrock, you can easily experiment with and evaluate top foundation models for your use cases, privately customize them with your data using techniques such as fine-tuning and Retrieval Augmented Generation (RAG), and build agents that execute tasks using your enterprise systems and data sources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Bedrock Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bedrockagent
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Bedrock Agent Developer Resources
          url: https://aws.amazon.com/bedrock/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: bedrock-agent maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-bedrockagent-controller@sha256:21774b163f44769d4f7b430239af17661231bb7a0e53d28d6aa8c1af48641b2a
        - public.ecr.aws/aws-controllers-k8s/bedrockagent-controller:1.1.0
        version: 1.1.0
      entries:
      - name: ack-bedrockagent-controller.v1.1.0
        version: 1.1.0
      - name: ack-bedrockagent-controller.v1.0.0
        version: 1.0.0
      - name: ack-bedrockagent-controller.v0.1.2
        version: 0.1.2
      - name: ack-bedrockagent-controller.v0.1.1
        version: 0.1.1
      - name: ack-bedrockagent-controller.v0.1.0
        version: 0.1.0
      - name: ack-bedrockagent-controller.v0.0.6
        version: 0.0.6
      - name: ack-bedrockagent-controller.v0.0.5
        version: 0.0.5
      - name: ack-bedrockagent-controller.v0.0.4
        version: 0.0.4
      - name: ack-bedrockagent-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-bedrockagent-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Cisco Networking - Compute Solutions
      provider-url: ""
    name: ucs-ci-solutions-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ucs-ci-solutions-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "intersight.cisco.com/v1alpha1",
                "kind": "UCSCISolutions",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ucs-ci-solutions-operator",
                    "app.kubernetes.io/instance": "ucscisolutions-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ucscisolutions",
                    "app.kubernetes.io/part-of": "ucs-ci-solutions-operator"
                  },
                  "name": "ucscisolutions-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: docker.io/pkoppa/ucs-ci-solutions-operator:latest
          createdAt: "2023-07-15T15:19:39Z"
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: UCSCISolutions
            name: ucscisolutions.intersight.cisco.com
            version: v1alpha1
        description: The operator is used to automate the creation of  Pools, Policies
          and Server Profile Templates required to deploy Cisco UCS Converged Infrastructure
          Solution in Intersight.
        displayName: UCS-CI-Solutions-Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ucscisolutions
        - intersight
        - ucs
        - ci
        - flexpod
        - flashstack
        links:
        - name: Ucs Ci Solutions Operator
          url: https://ucs-ci-solutions-operator.domain
        maintainers:
        - email: pkoppa@cisco.com
          name: Paniraj Koppa
        - email: chrobrie@cisco.com
          name: Chris O'Brien
        maturity: alpha
        provider:
          name: Cisco Networking - Compute Solutions
        relatedImages:
        - quay.io/openshift-community-operators/ucs-ci-solutions-operator@sha256:e284253263183eb2cd313f6fb009bb830b9a79a4d4e2481468821c30a9cdce03
        - docker.io/pkoppa/ucs-ci-solutions-operator:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 0.0.1
      entries:
      - name: ucs-ci-solutions-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ucs-ci-solutions-operator
    provider:
      name: Cisco Networking - Compute Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CSI Addons Community
      provider-url: ""
    name: odf-csi-addons-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-csi-addons-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:57:48Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CSIAddonsNode is the Schema for the csiaddonsnode API
            displayName: CSIAddons Node
            kind: CSIAddonsNode
            name: csiaddonsnodes.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationCronJob is the Schema for the encryptionkeyrotationcronjobs
              API
            displayName: EncryptionKeyRotation CronJob
            kind: EncryptionKeyRotationCronJob
            name: encryptionkeyrotationcronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationJob is the Schema for the encryptionkeyrotationjobs
              API
            displayName: EncryptionKeyRotation Job
            kind: EncryptionKeyRotationJob
            name: encryptionkeyrotationjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFenceClass is the Schema for the networkfenceclasses
              API
            displayName: Network Fence Class
            kind: NetworkFenceClass
            name: networkfenceclasses.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFence is the Schema for the networkfences API
            displayName: Network Fence
            kind: NetworkFence
            name: networkfences.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceCronJob is the Schema for the reclaimspacecronjobs
              API
            displayName: Reclaim Space CronJob
            kind: ReclaimSpaceCronJob
            name: reclaimspacecronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceJob is the Schema for the reclaimspacejobs API
            displayName: Reclaim Space Job
            kind: ReclaimSpaceJob
            name: reclaimspacejobs.csiaddons.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationClass is the Schema for the volumegroupreplicationclasses
              API
            displayName: Volume Group Replication Class
            kind: VolumeGroupReplicationClass
            name: volumegroupreplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationContent is the Schema for the volumegroupreplicationcontents
              API
            displayName: Volume Group Replication Content
            kind: VolumeGroupReplicationContent
            name: volumegroupreplicationcontents.replication.storage.openshift.io
            version: v1alpha1
          - kind: VolumeGroupReplication
            name: volumegroupreplications.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplicationClass is the Schema for the volumereplicationclasses
              API
            displayName: Volume Replication Class
            kind: VolumeReplicationClass
            name: volumereplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplication is the Schema for the volumereplications
              API
            displayName: Volume Replication
            kind: VolumeReplication
            name: volumereplications.replication.storage.openshift.io
            version: v1alpha1
        description: CSI Addons provides the CSI Addons Controller that enables advanced
          storage operations for CSI-drivers.
        displayName: CSI Addons
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: CSI Addons
          url: https://csi-addons.github.io
        maintainers:
        - email: csi-addons@redhat.com
          name: CSI Addons Community
        maturity: alpha
        provider:
          name: CSI Addons Community
        relatedImages:
        - registry.redhat.io/odf4/odf-csi-addons-operator-bundle@sha256:35cb92067f1cdf332d48b50cd2948e86ea2f43247eea53b15f7aa138c68a50b6
        - registry.redhat.io/odf4/odf-csi-addons-rhel9-operator@sha256:0e86d4dddc58fca1deed19260dadedc733e6232bff1484a8a28875f8445ed04e
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: odf-csi-addons-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-csi-addons-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-csi-addons-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-csi-addons-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-csi-addons-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-csi-addons-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-csi-addons-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-csi-addons-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-csi-addons-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-csi-addons-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-csi-addons-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:44:37Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CSIAddonsNode is the Schema for the csiaddonsnode API
            displayName: CSIAddons Node
            kind: CSIAddonsNode
            name: csiaddonsnodes.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationCronJob is the Schema for the encryptionkeyrotationcronjobs
              API
            displayName: EncryptionKeyRotation CronJob
            kind: EncryptionKeyRotationCronJob
            name: encryptionkeyrotationcronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationJob is the Schema for the encryptionkeyrotationjobs
              API
            displayName: EncryptionKeyRotation Job
            kind: EncryptionKeyRotationJob
            name: encryptionkeyrotationjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFenceClass is the Schema for the networkfenceclasses
              API
            displayName: Network Fence Class
            kind: NetworkFenceClass
            name: networkfenceclasses.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFence is the Schema for the networkfences API
            displayName: Network Fence
            kind: NetworkFence
            name: networkfences.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceCronJob is the Schema for the reclaimspacecronjobs
              API
            displayName: Reclaim Space CronJob
            kind: ReclaimSpaceCronJob
            name: reclaimspacecronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceJob is the Schema for the reclaimspacejobs API
            displayName: Reclaim Space Job
            kind: ReclaimSpaceJob
            name: reclaimspacejobs.csiaddons.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationClass is the Schema for the volumegroupreplicationclasses
              API
            displayName: Volume Group Replication Class
            kind: VolumeGroupReplicationClass
            name: volumegroupreplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationContent is the Schema for the volumegroupreplicationcontents
              API
            displayName: Volume Group Replication Content
            kind: VolumeGroupReplicationContent
            name: volumegroupreplicationcontents.replication.storage.openshift.io
            version: v1alpha1
          - kind: VolumeGroupReplication
            name: volumegroupreplications.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplicationClass is the Schema for the volumereplicationclasses
              API
            displayName: Volume Replication Class
            kind: VolumeReplicationClass
            name: volumereplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplication is the Schema for the volumereplications
              API
            displayName: Volume Replication
            kind: VolumeReplication
            name: volumereplications.replication.storage.openshift.io
            version: v1alpha1
        description: CSI Addons provides the CSI Addons Controller that enables advanced
          storage operations for CSI-drivers.
        displayName: CSI Addons
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: CSI Addons
          url: https://csi-addons.github.io
        maintainers:
        - email: csi-addons@redhat.com
          name: CSI Addons Community
        maturity: alpha
        provider:
          name: CSI Addons Community
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/odf-csi-addons-operator-bundle@sha256:eec2e2ee2bd6f3a5848db2fe427e348e4b9a12ac23fe245953976b3eaa195e72
        - registry.redhat.io/odf4/odf-csi-addons-rhel9-operator@sha256:6e0480ded3445a2e149eee2e9a3d30f6f51932caf99c4c426c67ca720d1976e6
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        version: 4.20.4-rhodf
      entries:
      - name: odf-csi-addons-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-csi-addons-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-csi-addons-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-csi-addons-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-csi-addons-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-csi-addons-operator
    provider:
      name: CSI Addons Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-cert-manager-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cert-manager-operator.v1.18.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "authorizationURL": "https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/XXXXX",
                  "dnsName": "sample.dns.name",
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "key": "XXX",
                  "solver": {
                    "dns01": {
                      "route53": {
                        "accessKeyID": "XXX",
                        "hostedZoneID": "XXX",
                        "region": "us-east-1",
                        "secretAccessKeySecretRef": {
                          "key": "awsSecretAccessKey",
                          "name": "aws-secret"
                        }
                      }
                    },
                    "selector": {
                      "dnsNames": [
                        "sample.dns.name"
                      ]
                    }
                  },
                  "token": "XXX",
                  "type": "DNS-01",
                  "url": "https://acme-staging-v02.api.letsencrypt.org/acme/chall-v3/XXXXXX/XXXXX",
                  "wildcard": false
                }
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "selfsigned-ca",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "selfsigned-ca.dns.name",
                  "isCA": true,
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "selfsigned-issuer"
                  },
                  "privateKey": {
                    "algorithm": "ECDSA",
                    "size": 256
                  },
                  "secretName": "ca-root-secret"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "tls-cert",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "isCA": false,
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "secretName": "tls-cert"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "groups": [
                    "system:serviceaccounts",
                    "system:serviceaccounts:cert-manager",
                    "system:authenticated"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX",
                  "username": "system:serviceaccount:cert-manager:cert-manager"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "selfsigned-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "ca-issuer",
                  "namespace": "default"
                },
                "spec": {
                  "ca": {
                    "secretName": "ca-root-secret"
                  }
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "letsencrypt-staging",
                  "namespace": "default"
                },
                "spec": {
                  "acme": {
                    "email": "aos-ci-cd@redhat.com",
                    "privateKeySecretRef": {
                      "name": "letsencrypt-staging"
                    },
                    "server": "https://acme-staging-v02.api.letsencrypt.org/directory",
                    "solvers": [
                      {
                        "dns01": {
                          "route53": {
                            "accessKeyID": "ACCESS_KEY_ID",
                            "hostedZoneID": "HOSTED_ZONE_ID",
                            "region": "AWS_REGION",
                            "secretAccessKeySecretRef": {
                              "key": "access-key",
                              "name": "sample-aws-secret"
                            }
                          }
                        },
                        "selector": {
                          "dnsNames": [
                            "sample.dns.name"
                          ]
                        }
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "CertManager",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "IstioCSR",
                "metadata": {
                  "annotations": {
                    "kubernetes.io/description": "Resource behavior is managed through IstioCSR featuregate, which is enabled by default. Please refer to the cert-manager documentation for more information on the istio-csr feature."
                  },
                  "name": "default",
                  "namespace": "istio-csr"
                },
                "spec": {
                  "istioCSRConfig": {
                    "certManager": {
                      "issuerRef": {
                        "group": "cert-manager.io",
                        "kind": "Issuer",
                        "name": "istio-csr-issuer"
                      }
                    },
                    "istio": {
                      "namespace": "istio-system"
                    },
                    "istiodTLSConfig": {
                      "trustDomain": "cluster.local"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
          createdAt: 2025-11-12T08:36:17
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.17.0 <1.18.0'
          operator.openshift.io/uninstall-message: The cert-manager Operator for Red
            Hat OpenShift will be removed from cert-manager-operator namespace. If
            your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/cert-manager-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/cert-manager-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: CertManager is the Schema for the certmanagers API
            displayName: CertManager
            kind: CertManager
            name: certmanagers.operator.openshift.io
            version: v1alpha1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: |-
              IstioCSR describes the configuration and information about the managed istio-csr agent.
              The name must be `default` to make IstioCSR a singleton that is, to allow only one instance of IstioCSR per namespace.

              When an IstioCSR is created, istio-csr agent is deployed in the IstioCSR-created namespace.
            displayName: IstioCSR
            kind: IstioCSR
            name: istiocsrs.operator.openshift.io
            version: v1alpha1
          - description: Order is a type to represent an Order with an ACME server
            displayName: Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          The cert-manager Operator for Red Hat OpenShift provides seamless support for [cert-manager v1.18.3](https://github.com/cert-manager/cert-manager/tree/v1.18.3), which automates certificate management.
          For more information, see the [cert-manager Operator for Red Hat OpenShift documentation](https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/index.html).
        displayName: cert-manager Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cert-manager-operator
        - cert
        - certificates
        - security
        - TLS
        - istio-csr
        links:
        - name: Documentation
          url: https://github.com/openshift/cert-manager-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:acaaea813059d4ac5b2618395bd9113f72ada0a33aaaba91aa94f000e77df407
        - registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
        - registry.redhat.io/cert-manager/jetstack-cert-manager-acmesolver-rhel9@sha256:ba937fc4b9eee31422914352c11a45b90754ba4fbe490ea45249b90afdc4e0a7
        - registry.redhat.io/cert-manager/jetstack-cert-manager-rhel9@sha256:29a0fa1c2f2a6cee62a0468a3883d16d491b4af29130dad6e3e2bb2948f274df
        - registry.redhat.io/cert-manager/cert-manager-istio-csr-rhel9@sha256:af1ac813b8ee414ef215936f05197bc498bccbd540f3e2a93cb522221ba112bc
        version: 1.18.0
      entries:
      - name: cert-manager-operator.v1.18.0
        version: 1.18.0
      - name: cert-manager-operator.v1.17.0
        version: 1.17.0
      name: stable-v1
    - currentCSV: cert-manager-operator.v1.17.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "authorizationURL": "https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/XXXXX",
                  "dnsName": "sample.dns.name",
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "key": "XXX",
                  "solver": {
                    "dns01": {
                      "route53": {
                        "accessKeyID": "XXX",
                        "hostedZoneID": "XXX",
                        "region": "us-east-1",
                        "secretAccessKeySecretRef": {
                          "key": "awsSecretAccessKey",
                          "name": "aws-secret"
                        }
                      }
                    },
                    "selector": {
                      "dnsNames": [
                        "sample.dns.name"
                      ]
                    }
                  },
                  "token": "XXX",
                  "type": "DNS-01",
                  "url": "https://acme-staging-v02.api.letsencrypt.org/acme/chall-v3/XXXXXX/XXXXX",
                  "wildcard": false
                }
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "selfsigned-ca",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "selfsigned-ca.dns.name",
                  "isCA": true,
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "selfsigned-issuer"
                  },
                  "privateKey": {
                    "algorithm": "ECDSA",
                    "size": 256
                  },
                  "secretName": "ca-root-secret"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "tls-cert",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "isCA": false,
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "secretName": "tls-cert"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "groups": [
                    "system:serviceaccounts",
                    "system:serviceaccounts:cert-manager",
                    "system:authenticated"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX",
                  "username": "system:serviceaccount:cert-manager:cert-manager"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "selfsigned-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "ca-issuer",
                  "namespace": "default"
                },
                "spec": {
                  "ca": {
                    "secretName": "ca-root-secret"
                  }
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "letsencrypt-staging",
                  "namespace": "default"
                },
                "spec": {
                  "acme": {
                    "email": "aos-ci-cd@redhat.com",
                    "privateKeySecretRef": {
                      "name": "letsencrypt-staging"
                    },
                    "server": "https://acme-staging-v02.api.letsencrypt.org/directory",
                    "solvers": [
                      {
                        "dns01": {
                          "route53": {
                            "accessKeyID": "ACCESS_KEY_ID",
                            "hostedZoneID": "HOSTED_ZONE_ID",
                            "region": "AWS_REGION",
                            "secretAccessKeySecretRef": {
                              "key": "access-key",
                              "name": "sample-aws-secret"
                            }
                          }
                        },
                        "selector": {
                          "dnsNames": [
                            "sample.dns.name"
                          ]
                        }
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "CertManager",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "IstioCSR",
                "metadata": {
                  "annotations": {
                    "kubernetes.io/description": "Creating this resource requires the istio-csr tech-preview feature to be enabled, which otherwise has no effect. Please refer to the cert-manager documentation for more information on enabling the istio-csr feature. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process"
                  },
                  "name": "default",
                  "namespace": "istio-csr"
                },
                "spec": {
                  "istioCSRConfig": {
                    "certManager": {
                      "issuerRef": {
                        "group": "cert-manager.io",
                        "kind": "Issuer",
                        "name": "istio-csr-issuer"
                      }
                    },
                    "istio": {
                      "namespace": "istio-system"
                    },
                    "istiodTLSConfig": {
                      "trustDomain": "cluster.local"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:4d5e238300ce6f427a1045d51d6b37a4e5c5633985208ebb44f91e7dd53897d9
          createdAt: 2025-08-06T08:21:40
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.16.1 <1.17.0'
          operator.openshift.io/uninstall-message: The cert-manager Operator for Red
            Hat OpenShift will be removed from cert-manager-operator namespace. If
            your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/cert-manager-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/cert-manager-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: CertManager is the Schema for the certmanagers API
            displayName: CertManager
            kind: CertManager
            name: certmanagers.operator.openshift.io
            version: v1alpha1
          - kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - kind: IstioCSR
            name: istiocsrs.operator.openshift.io
            version: v1alpha1
          - kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          The cert-manager Operator for Red Hat OpenShift provides seamless support for [cert-manager v1.17.4](https://github.com/cert-manager/cert-manager/tree/v1.17.4), which automates certificate management.
          For more information, see the [cert-manager Operator for Red Hat OpenShift documentation](https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/index.html).
        displayName: cert-manager Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cert-manager-operator
        - cert
        - certificates
        - security
        - TLS
        links:
        - name: Documentation
          url: https://github.com/openshift/cert-manager-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:4d5e238300ce6f427a1045d51d6b37a4e5c5633985208ebb44f91e7dd53897d9
        - registry.redhat.io/cert-manager/jetstack-cert-manager-acmesolver-rhel9@sha256:4f7c045819c39e176a6090efdaba6ec736edf772d88fc87dd1c6fb33d3b5b26b
        - registry.redhat.io/cert-manager/jetstack-cert-manager-rhel9@sha256:96d51e3a64bf30cbd92836c7cbd82f06edca16eef78ab1432757d34c16628659
        - registry.redhat.io/cert-manager/cert-manager-istio-csr-rhel9@sha256:9ea2c29a384b964cef14f853278821df3cd30320f25afab8823897192f67fc7e
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:cc20a2ab116597b080d303196825d7f5c81c6f30268f7866fb2911706efea210
        version: 1.17.0
      entries:
      - name: cert-manager-operator.v1.17.0
        version: 1.17.0
      name: stable-v1.17
    - currentCSV: cert-manager-operator.v1.18.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "authorizationURL": "https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/XXXXX",
                  "dnsName": "sample.dns.name",
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "key": "XXX",
                  "solver": {
                    "dns01": {
                      "route53": {
                        "accessKeyID": "XXX",
                        "hostedZoneID": "XXX",
                        "region": "us-east-1",
                        "secretAccessKeySecretRef": {
                          "key": "awsSecretAccessKey",
                          "name": "aws-secret"
                        }
                      }
                    },
                    "selector": {
                      "dnsNames": [
                        "sample.dns.name"
                      ]
                    }
                  },
                  "token": "XXX",
                  "type": "DNS-01",
                  "url": "https://acme-staging-v02.api.letsencrypt.org/acme/chall-v3/XXXXXX/XXXXX",
                  "wildcard": false
                }
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "selfsigned-ca",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "selfsigned-ca.dns.name",
                  "isCA": true,
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "selfsigned-issuer"
                  },
                  "privateKey": {
                    "algorithm": "ECDSA",
                    "size": 256
                  },
                  "secretName": "ca-root-secret"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "tls-cert",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "isCA": false,
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "secretName": "tls-cert"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "groups": [
                    "system:serviceaccounts",
                    "system:serviceaccounts:cert-manager",
                    "system:authenticated"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX",
                  "username": "system:serviceaccount:cert-manager:cert-manager"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "selfsigned-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "ca-issuer",
                  "namespace": "default"
                },
                "spec": {
                  "ca": {
                    "secretName": "ca-root-secret"
                  }
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "letsencrypt-staging",
                  "namespace": "default"
                },
                "spec": {
                  "acme": {
                    "email": "aos-ci-cd@redhat.com",
                    "privateKeySecretRef": {
                      "name": "letsencrypt-staging"
                    },
                    "server": "https://acme-staging-v02.api.letsencrypt.org/directory",
                    "solvers": [
                      {
                        "dns01": {
                          "route53": {
                            "accessKeyID": "ACCESS_KEY_ID",
                            "hostedZoneID": "HOSTED_ZONE_ID",
                            "region": "AWS_REGION",
                            "secretAccessKeySecretRef": {
                              "key": "access-key",
                              "name": "sample-aws-secret"
                            }
                          }
                        },
                        "selector": {
                          "dnsNames": [
                            "sample.dns.name"
                          ]
                        }
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "CertManager",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "IstioCSR",
                "metadata": {
                  "annotations": {
                    "kubernetes.io/description": "Resource behavior is managed through IstioCSR featuregate, which is enabled by default. Please refer to the cert-manager documentation for more information on the istio-csr feature."
                  },
                  "name": "default",
                  "namespace": "istio-csr"
                },
                "spec": {
                  "istioCSRConfig": {
                    "certManager": {
                      "issuerRef": {
                        "group": "cert-manager.io",
                        "kind": "Issuer",
                        "name": "istio-csr-issuer"
                      }
                    },
                    "istio": {
                      "namespace": "istio-system"
                    },
                    "istiodTLSConfig": {
                      "trustDomain": "cluster.local"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
          createdAt: 2025-11-12T08:36:17
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.17.0 <1.18.0'
          operator.openshift.io/uninstall-message: The cert-manager Operator for Red
            Hat OpenShift will be removed from cert-manager-operator namespace. If
            your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/cert-manager-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/cert-manager-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: CertManager is the Schema for the certmanagers API
            displayName: CertManager
            kind: CertManager
            name: certmanagers.operator.openshift.io
            version: v1alpha1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: |-
              IstioCSR describes the configuration and information about the managed istio-csr agent.
              The name must be `default` to make IstioCSR a singleton that is, to allow only one instance of IstioCSR per namespace.

              When an IstioCSR is created, istio-csr agent is deployed in the IstioCSR-created namespace.
            displayName: IstioCSR
            kind: IstioCSR
            name: istiocsrs.operator.openshift.io
            version: v1alpha1
          - description: Order is a type to represent an Order with an ACME server
            displayName: Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          The cert-manager Operator for Red Hat OpenShift provides seamless support for [cert-manager v1.18.3](https://github.com/cert-manager/cert-manager/tree/v1.18.3), which automates certificate management.
          For more information, see the [cert-manager Operator for Red Hat OpenShift documentation](https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/index.html).
        displayName: cert-manager Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cert-manager-operator
        - cert
        - certificates
        - security
        - TLS
        - istio-csr
        links:
        - name: Documentation
          url: https://github.com/openshift/cert-manager-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/cert-manager/cert-manager-istio-csr-rhel9@sha256:af1ac813b8ee414ef215936f05197bc498bccbd540f3e2a93cb522221ba112bc
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:acaaea813059d4ac5b2618395bd9113f72ada0a33aaaba91aa94f000e77df407
        - registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
        - registry.redhat.io/cert-manager/jetstack-cert-manager-acmesolver-rhel9@sha256:ba937fc4b9eee31422914352c11a45b90754ba4fbe490ea45249b90afdc4e0a7
        - registry.redhat.io/cert-manager/jetstack-cert-manager-rhel9@sha256:29a0fa1c2f2a6cee62a0468a3883d16d491b4af29130dad6e3e2bb2948f274df
        version: 1.18.0
      entries:
      - name: cert-manager-operator.v1.18.0
        version: 1.18.0
      - name: cert-manager-operator.v1.17.0
        version: 1.17.0
      name: stable-v1.18
    defaultChannel: stable-v1
    packageName: openshift-cert-manager-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cluster-logging
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-logging.v6.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "logging.openshift.io/v1alpha1",
                "kind": "LogFileMetricExporter",
                "metadata": {
                  "name": "instance",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "resources": {
                    "limits": {
                      "cpu": "500m"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "128Mi"
                    }
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master",
                      "operator": "Exists"
                    }
                  ]
                }
              },
              {
                "apiVersion": "observability.openshift.io/v1",
                "kind": "ClusterLogForwarder",
                "metadata": {
                  "name": "logging",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "outputs": [
                    {
                      "lokiStack": {
                        "authentication": {
                          "token": {
                            "from": "serviceAccount"
                          }
                        },
                        "target": {
                          "name": "logging-loki"
                        }
                      },
                      "name": "logging-loki",
                      "tls": {
                        "ca": {
                          "configMapName": "openshift-service-ca.crt",
                          "key": "service-ca.crt"
                        }
                      },
                      "type": "lokiStack"
                    }
                  ],
                  "pipelines": [
                    {
                      "inputRefs": [
                        "application",
                        "infrastructure"
                      ],
                      "name": "logs-to-loki",
                      "outputRefs": [
                        "logging-loki"
                      ]
                    }
                  ],
                  "serviceAccount": {
                    "name": "log-collector"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.16-v4.20
          containerImage: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:80cac88d8ff5b40036e5983f5dacfc08702afe9c7a66b48d1c88bcb149c285b3
          createdAt: "2025-07-29T15:25:15Z"
          description: The Red Hat OpenShift Logging Operator for OCP provides a means
            for configuring and managing log collection and forwarding.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=6.0.0-0 <6.2.7'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "observability.openshift.io/v1",
              "kind": "ClusterLogForwarder",
              "metadata": {
                "name": "logging"
              }
            }
          operatorframework.io/suggested-namespace: openshift-logging
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:80cac88d8ff5b40036e5983f5dacfc08702afe9c7a66b48d1c88bcb149c285b3
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.2
          operators.operatorframework.io.bundle.channels.v1: stable-6.2
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: cluster-logging
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Logging (aos-logging@redhat.com)
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ClusterLogForwarder is an API to configure forwarding logs.


              You configure forwarding by specifying a list of `pipelines`,
              which forward from a set of named inputs to a set of named outputs.
            displayName: Cluster Log Forwarder
            kind: ClusterLogForwarder
            name: clusterlogforwarders.observability.openshift.io
            version: v1
          - description: A Log File Metric Exporter instance. LogFileMetricExporter
              is the Schema for the logFileMetricExporters API
            displayName: Log File Metric Exporter
            kind: LogFileMetricExporter
            name: logfilemetricexporters.logging.openshift.io
            version: v1alpha1
        description: |-
          # Red Hat OpenShift Logging
          The Red Hat OpenShift Logging Operator orchestrates log collection and forwarding to Red Had managed log stores and
          other third-party receivers.

          ##Features
          * **Create/Destroy**: Deploy log collectors and forwarders to support observability of OCP cluster.
          * **Simplified Configuration**: Spec collectors using a simplified API to configure log collection from opinionated sources to one or more third-party receivers.

          ## Prerequisites and Requirements
          ### Red Hat OpenShift Logging Namespace
          It is recommended to deploy the Red Hat OpenShift Logging Operator to the **openshift-logging** namespace. This namespace
          must be explicitly created by a cluster administrator (e.g. `oc create ns openshift-logging`). To enable metrics
          service discovery add namespace label `openshift.io/cluster-monitoring: "true"`.

          For additional installation documentation see [Installing logging](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html-single/logging/index#installing-logging-6-2)
          in the OpenShift product documentation.
        displayName: Red Hat OpenShift Logging
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - observability
        - loki
        - vector
        - otlp
        links:
        - name: Documentation
          url: https://github.com/openshift/cluster-logging-operator/blob/master/README.adoc
        - name: Red Hat OpenShift Logging Operator
          url: https://github.com/openshift/cluster-logging-operator
        - name: Vector
          url: https://vector.dev/
        minKubeVersion: 1.18.3
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:0d2edaf37f5e25155f9a3086e81d40686b102a78c3ae35b07e0c5992d3a7fb40
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:fa2cfa2ed336ce105c8dea5bfe0825407e37ef296193ae162f515213fe43c8d5
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:912e0be15a46e77b2495db1dad335edc4116027c342698cedd8e7718cc15a5c1
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:80cac88d8ff5b40036e5983f5dacfc08702afe9c7a66b48d1c88bcb149c285b3
        version: 6.2.7
      entries:
      - name: cluster-logging.v6.2.7
        version: 6.2.7
      - name: cluster-logging.v6.2.6
        version: 6.2.6
      - name: cluster-logging.v6.2.5
        version: 6.2.5
      - name: cluster-logging.v6.2.4
        version: 6.2.4
      - name: cluster-logging.v6.2.3
        version: 6.2.3
      - name: cluster-logging.v6.2.2
        version: 6.2.2
      - name: cluster-logging.v6.2.1
        version: 6.2.1
      - name: cluster-logging.v6.2.0
        version: 6.2.0
      name: stable-6.2
    - currentCSV: cluster-logging.v6.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "logging.openshift.io/v1alpha1",
                "kind": "LogFileMetricExporter",
                "metadata": {
                  "name": "instance",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "resources": {
                    "limits": {
                      "cpu": "500m"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "128Mi"
                    }
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master",
                      "operator": "Exists"
                    }
                  ]
                }
              },
              {
                "apiVersion": "observability.openshift.io/v1",
                "kind": "ClusterLogForwarder",
                "metadata": {
                  "name": "logging",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "outputs": [
                    {
                      "lokiStack": {
                        "authentication": {
                          "token": {
                            "from": "serviceAccount"
                          }
                        },
                        "target": {
                          "name": "logging-loki"
                        }
                      },
                      "name": "logging-loki",
                      "tls": {
                        "ca": {
                          "configMapName": "openshift-service-ca.crt",
                          "key": "service-ca.crt"
                        }
                      },
                      "type": "lokiStack"
                    }
                  ],
                  "pipelines": [
                    {
                      "inputRefs": [
                        "application",
                        "infrastructure"
                      ],
                      "name": "logs-to-loki",
                      "outputRefs": [
                        "logging-loki"
                      ]
                    }
                  ],
                  "serviceAccount": {
                    "name": "log-collector"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Logging & Tracing, Observability
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.17-v4.20
          containerImage: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:61ced99002f57d20727adc2dbad34b99c1347541b4605c5ec2847db577532dc5
          createdAt: "2025-11-13T11:03:18Z"
          description: The Red Hat OpenShift Logging Operator for OCP provides a means
            for configuring and managing log collection and forwarding.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=6.1.0-0 <6.3.2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "observability.openshift.io/v1",
              "kind": "ClusterLogForwarder",
              "metadata": {
                "name": "logging"
              }
            }
          operatorframework.io/suggested-namespace: openshift-logging
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:61ced99002f57d20727adc2dbad34b99c1347541b4605c5ec2847db577532dc5
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.3
          operators.operatorframework.io.bundle.channels.v1: stable-6.3
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: cluster-logging
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Logging (aos-logging@redhat.com)
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ClusterLogForwarder is an API to configure forwarding logs.

              You configure forwarding by specifying a list of `pipelines`,
              which forward from a set of named inputs to a set of named outputs.
            displayName: Cluster Log Forwarder
            kind: ClusterLogForwarder
            name: clusterlogforwarders.observability.openshift.io
            version: v1
          - description: A Log File Metric Exporter instance. LogFileMetricExporter
              is the Schema for the logFileMetricExporters API
            displayName: Log File Metric Exporter
            kind: LogFileMetricExporter
            name: logfilemetricexporters.logging.openshift.io
            version: v1alpha1
        description: |-
          # Red Hat OpenShift Logging
          The Red Hat OpenShift Logging Operator orchestrates log collection and forwarding to Red Had managed log stores and
          other third-party receivers.

          ##Features
          * **Create/Destroy**: Deploy log collectors and forwarders to support observability of OCP cluster.
          * **Simplified Configuration**: Spec collectors using a simplified API to configure log collection from opinionated sources to one or more third-party receivers.

          ## Prerequisites and Requirements
          ### Red Hat OpenShift Logging Namespace
          It is recommended to deploy the Red Hat OpenShift Logging Operator to the **openshift-logging** namespace. This namespace
          must be explicitly created by a cluster administrator (e.g. `oc create ns openshift-logging`). To enable metrics
          service discovery add namespace label `openshift.io/cluster-monitoring: "true"`.

          For additional installation documentation see [Deploying cluster logging](https://docs.openshift.com/container-platform/latest/logging/cluster-logging-deploying.html)
          in the OpenShift product documentation.
        displayName: Red Hat OpenShift Logging
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - observability
        - loki
        - vector
        - otlp
        links:
        - name: Documentation
          url: https://github.com/openshift/cluster-logging-operator/blob/master/README.adoc
        - name: Red Hat OpenShift Logging Operator
          url: https://github.com/openshift/cluster-logging-operator
        - name: Vector
          url: https://vector.dev/
        minKubeVersion: 1.18.3
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:5eeb9f00760e286b2088fe4384bc0de5b18178fb3811796608ffe98d1100312e
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:56ee655fc9fd5aca984a7c552c00112b7314d2e79117f58c469ef91f3cefe640
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:61ced99002f57d20727adc2dbad34b99c1347541b4605c5ec2847db577532dc5
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:c7bfa11f2cf8403ef437bdcf514fe78823472e578766192f6742322750f1df18
        version: 6.3.2
      entries:
      - name: cluster-logging.v6.3.2
        version: 6.3.2
      - name: cluster-logging.v6.3.1
        version: 6.3.1
      - name: cluster-logging.v6.3.0
        version: 6.3.0
      name: stable-6.3
    - currentCSV: cluster-logging.v6.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "logging.openshift.io/v1alpha1",
                "kind": "LogFileMetricExporter",
                "metadata": {
                  "name": "instance",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "resources": {
                    "limits": {
                      "cpu": "500m"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "128Mi"
                    }
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master",
                      "operator": "Exists"
                    }
                  ]
                }
              },
              {
                "apiVersion": "observability.openshift.io/v1",
                "kind": "ClusterLogForwarder",
                "metadata": {
                  "name": "logging",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "outputs": [
                    {
                      "lokiStack": {
                        "authentication": {
                          "token": {
                            "from": "serviceAccount"
                          }
                        },
                        "target": {
                          "name": "logging-loki"
                        }
                      },
                      "name": "logging-loki",
                      "tls": {
                        "ca": {
                          "configMapName": "openshift-service-ca.crt",
                          "key": "service-ca.crt"
                        }
                      },
                      "type": "lokiStack"
                    }
                  ],
                  "pipelines": [
                    {
                      "inputRefs": [
                        "application",
                        "infrastructure"
                      ],
                      "name": "logs-to-loki",
                      "outputRefs": [
                        "logging-loki"
                      ]
                    }
                  ],
                  "serviceAccount": {
                    "name": "log-collector"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Logging & Tracing, Observability
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.18-v4.21
          containerImage: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
          createdAt: "2025-11-20T15:34:38Z"
          description: The Red Hat OpenShift Logging Operator for OCP provides a means
            for configuring and managing log collection and forwarding.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=6.2.0-0 <6.4.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "observability.openshift.io/v1",
              "kind": "ClusterLogForwarder",
              "metadata": {
                "name": "logging"
              }
            }
          operatorframework.io/suggested-namespace: openshift-logging
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.4
          operators.operatorframework.io.bundle.channels.v1: stable-6.4
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: cluster-logging
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Logging (aos-logging@redhat.com)
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ClusterLogForwarder is an API to configure forwarding logs.

              You configure forwarding by specifying a list of `pipelines`,
              which forward from a set of named inputs to a set of named outputs.
            displayName: Cluster Log Forwarder
            kind: ClusterLogForwarder
            name: clusterlogforwarders.observability.openshift.io
            version: v1
          - description: A Log File Metric Exporter instance. LogFileMetricExporter
              is the Schema for the logFileMetricExporters API
            displayName: Log File Metric Exporter
            kind: LogFileMetricExporter
            name: logfilemetricexporters.logging.openshift.io
            version: v1alpha1
        description: |-
          # Red Hat OpenShift Logging
          The Red Hat OpenShift Logging Operator orchestrates log collection and forwarding to Red Had managed log stores and
          other third-party receivers.

          ##Features
          * **Create/Destroy**: Deploy log collectors and forwarders to support observability of OCP cluster.
          * **Simplified Configuration**: Spec collectors using a simplified API to configure log collection from opinionated sources to one or more third-party receivers.

          ## Prerequisites and Requirements
          ### Red Hat OpenShift Logging Namespace
          It is recommended to deploy the Red Hat OpenShift Logging Operator to the **openshift-logging** namespace. This namespace
          must be explicitly created by a cluster administrator (e.g. `oc create ns openshift-logging`). To enable metrics
          service discovery add namespace label `openshift.io/cluster-monitoring: "true"`.

          For additional installation documentation see [Deploying cluster logging](https://docs.openshift.com/container-platform/latest/logging/cluster-logging-deploying.html)
          in the OpenShift product documentation.
        displayName: Red Hat OpenShift Logging
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - observability
        - loki
        - vector
        - otlp
        links:
        - name: Documentation
          url: https://github.com/openshift/cluster-logging-operator/blob/master/README.adoc
        - name: Red Hat OpenShift Logging Operator
          url: https://github.com/openshift/cluster-logging-operator
        - name: Vector
          url: https://vector.dev/
        minKubeVersion: 1.18.3
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:057e1b87e9b9419d35cff1ee0ee8e19bbf12e6ecf3ff014206b62ca44e70eb07
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:011570d92a596fd2895230b19bc34a25f8befabfed6b7ce2f1e2bbe211391d22
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:022747902d768b6bf95a76c7c0b3aa63af356566b8411448cf64f87fc31a4794
        version: 6.4.1
      entries:
      - name: cluster-logging.v6.4.1
        version: 6.4.1
      - name: cluster-logging.v6.4.0
        version: 6.4.0
      name: stable-6.4
    defaultChannel: stable-6.4
    packageName: cluster-logging
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Konveyor
      provider-url: ""
    name: gitops-primer
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitops-primer.v0.0.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "primer.gitops.io/v1alpha1",
                "kind": "Export",
                "metadata": {
                  "name": "primer"
                },
                "spec": {
                  "method": "download"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/migtools/gitops-primer:v0.0.11
          operatorframework.io/suggested-namespace: gitops-primer-system
          operators.operatorframework.io/builder: operator-sdk-v1.18.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Export is the Schema for the exports API
            displayName: Export
            kind: Export
            name: exports.primer.gitops.io
            version: v1alpha1
        description: Export and normalize Kubernetes YAML files for GitOps
        displayName: gitops-primer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - operator
        links:
        - name: Gitops Primer
          url: https://github.com/migtools/gitops-primer
        maturity: alpha
        provider:
          name: Konveyor
        relatedImages:
        - quay.io/migtools/gitops-primer-webhook:v0.0.11
        - quay.io/migtools/gitops-primer:v0.0.11
        - quay.io/openshift-community-operators/gitops-primer@sha256:97af48469275f1b3a669f8e24a97a80ce9897fc5b12643a4f298b82dbe26e20b
        - quay.io/openshift/origin-oauth-proxy:4.9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6d57bfd91fac9b68eb72d27226bc297472ceb136c996628b845ecc54a48b31cb
        - quay.io/migtools/gitops-primer-downloader:v0.0.11
        - quay.io/migtools/gitops-primer-export:v0.0.11
        version: 0.0.11
      entries:
      - name: gitops-primer.v0.0.11
        version: 0.0.11
      - name: gitops-primer.v0.0.10
        version: 0.0.10
      - name: gitops-primer.v0.0.9
        version: 0.0.9
      - name: gitops-primer.v0.0.8
        version: 0.0.8
      - name: gitops-primer.v0.0.7
        version: 0.0.7
      - name: gitops-primer.v0.0.6
        version: 0.0.6
      - name: gitops-primer.v0.0.5
        version: 0.0.5
      - name: gitops-primer.v0.0.4
        version: 0.0.4
      - name: gitops-primer.v0.0.3
        version: 0.0.3
      - name: gitops-primer.v0.0.2
        version: 0.0.2
      - name: gitops-primer.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: gitops-primer
    provider:
      name: Konveyor
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ecs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ecs-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecs.services.k8s.aws/v1alpha1",
                "kind": "Service",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ecs.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ecs.services.k8s.aws/v1alpha1",
                "kind": "TaskDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ecs-controller:1.2.0
          createdAt: "2025-11-29T03:45:21Z"
          description: AWS ECS controller is a service controller for managing ECS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster represents the state of an AWS ecs Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.ecs.services.k8s.aws
            version: v1alpha1
          - description: Service represents the state of an AWS ecs Service resource.
            displayName: Service
            kind: Service
            name: services.ecs.services.k8s.aws
            version: v1alpha1
          - description: TaskDefinition represents the state of an AWS ecs TaskDefinition
              resource.
            displayName: TaskDefinition
            kind: TaskDefinition
            name: taskdefinitions.ecs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Elastic Container Service (ECS) resources in AWS from within your Kubernetes cluster.

          **About Amazon ECS**

          Amazon Elastic Container Service (Amazon ECS) is a fully managed container orchestration service that helps you easily deploy, manage, and scale containerized applications. As a fully managed service, Amazon ECS comes with AWS configuration and operational best practices built-in. It's integrated with both AWS and third-party tools, such as Amazon Elastic Container Registry and Docker. This integration makes it easier for teams to focus on building the applications, not the environment. You can run and scale your container workloads across AWS Regions in the cloud, and on-premises, without the complexity of managing a control plane.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ECS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ECS Developer Resources
          url: https://aws.amazon.com/ecs/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ecs maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ecs-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ecs-controller@sha256:4626d70cfb1b1ea707836df633e85aba77255150c01fc2e18a6b2a364b626344
        version: 1.2.0
      entries:
      - name: ack-ecs-controller.v1.2.0
        version: 1.2.0
      - name: ack-ecs-controller.v1.1.1
        version: 1.1.1
      - name: ack-ecs-controller.v1.0.15
        version: 1.0.15
      - name: ack-ecs-controller.v1.0.14
        version: 1.0.14
      - name: ack-ecs-controller.v1.0.13
        version: 1.0.13
      - name: ack-ecs-controller.v1.0.12
        version: 1.0.12
      - name: ack-ecs-controller.v1.0.11
        version: 1.0.11
      - name: ack-ecs-controller.v1.0.10
        version: 1.0.10
      - name: ack-ecs-controller.v1.0.9
        version: 1.0.9
      name: alpha
    defaultChannel: alpha
    packageName: ack-ecs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Grafana Labs
      provider-url: https://grafana.com
    name: grafana-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: grafana-operator.v5.21.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "Grafana",
                "metadata": {
                  "labels": {
                    "dashboards": "grafana-a",
                    "folders": "grafana-a"
                  },
                  "name": "grafana-a"
                },
                "spec": {
                  "config": {
                    "auth": {
                      "disable_login_form": "false"
                    },
                    "log": {
                      "mode": "console"
                    },
                    "security": {
                      "admin_password": "start",
                      "admin_user": "root"
                    }
                  }
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaAlertRuleGroup",
                "metadata": {
                  "name": "grafanaalertrulegroup-sample"
                },
                "spec": {
                  "folderRef": "test-folder-from-operator",
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "interval": "5m",
                  "rules": [
                    {
                      "condition": "B",
                      "data": [
                        {
                          "datasourceUid": "grafanacloud-demoinfra-prom",
                          "model": {
                            "datasource": {
                              "type": "prometheus",
                              "uid": "grafanacloud-demoinfra-prom"
                            },
                            "editorMode": "code",
                            "expr": "weather_temp_c{}",
                            "instant": true,
                            "intervalMs": 1000,
                            "legendFormat": "__auto",
                            "maxDataPoints": 43200,
                            "range": false,
                            "refId": "A"
                          },
                          "refId": "A",
                          "relativeTimeRange": {
                            "from": 600
                          }
                        },
                        {
                          "datasourceUid": "__expr__",
                          "model": {
                            "conditions": [
                              {
                                "evaluator": {
                                  "params": [
                                    0
                                  ],
                                  "type": "gt"
                                },
                                "operator": {
                                  "type": "and"
                                },
                                "query": {
                                  "params": [
                                    "C"
                                  ]
                                },
                                "reducer": {
                                  "params": [],
                                  "type": "last"
                                },
                                "type": "query"
                              }
                            ],
                            "datasource": {
                              "type": "__expr__",
                              "uid": "__expr__"
                            },
                            "expression": "A",
                            "intervalMs": 1000,
                            "maxDataPoints": 43200,
                            "refId": "B",
                            "type": "threshold"
                          },
                          "refId": "B",
                          "relativeTimeRange": {
                            "from": 600
                          }
                        }
                      ],
                      "execErrState": "Error",
                      "for": "5m0s",
                      "noDataState": "NoData",
                      "title": "Temperature below freezing",
                      "uid": "4843de5c-4f8a-4af0-9509-23526a04faf8"
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaContactPoint",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "grafana-operator",
                    "app.kubernetes.io/instance": "grafanacontactpoint-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "grafanacontactpoint",
                    "app.kubernetes.io/part-of": "grafana-operator"
                  },
                  "name": "grafanacontactpoint-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "name": "grafanacontactpoint-sample",
                  "settings": {
                    "email": null
                  },
                  "type": "email"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaDashboard",
                "metadata": {
                  "name": "grafanadashboard-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "json": "{\n\n  \"id\": null,\n  \"title\": \"Simple Dashboard\",\n  \"tags\": [],\n  \"style\": \"dark\",\n  \"timezone\": \"browser\",\n  \"editable\": true,\n  \"hideControls\": false,\n  \"graphTooltip\": 1,\n  \"panels\": [],\n  \"time\": {\n    \"from\": \"now-6h\",\n    \"to\": \"now\"\n  },\n  \"timepicker\": {\n    \"time_options\": [],\n    \"refresh_intervals\": []\n  },\n  \"templating\": {\n    \"list\": []\n  },\n  \"annotations\": {\n    \"list\": []\n  },\n  \"refresh\": \"5s\",\n  \"schemaVersion\": 17,\n  \"version\": 0,\n  \"links\": []\n}\n"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaDatasource",
                "metadata": {
                  "name": "grafanadatasource-sample"
                },
                "spec": {
                  "datasource": {
                    "access": "proxy",
                    "isDefault": true,
                    "jsonData": {
                      "timeInterval": "5s",
                      "tlsSkipVerify": true
                    },
                    "name": "prometheus",
                    "type": "prometheus",
                    "url": "http://prometheus-service:9090"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "plugins": [
                    {
                      "name": "grafana-clock-panel",
                      "version": "1.3.0"
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaFolder",
                "metadata": {
                  "name": "grafanafolder-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "title": "Example Folder"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaLibraryPanel",
                "metadata": {
                  "name": "grafana-library-panel-inline-envs"
                },
                "spec": {
                  "envs": [
                    {
                      "name": "CUSTOM_RANGE_ENV",
                      "value": "now - 12h"
                    }
                  ],
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "jsonnet": "local myRange = std.extVar('CUSTOM_RANGE_ENV'); {\n\n  model: {}\n}\n",
                  "plugins": [
                    {
                      "name": "grafana-piechart-panel",
                      "version": "1.3.9"
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaMuteTiming",
                "metadata": {
                  "name": "mutetiming-sample"
                },
                "spec": {
                  "editable": false,
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "name": "mutetiming-sample",
                  "time_intervals": [
                    {
                      "days_of_month": [
                        "1",
                        "15"
                      ],
                      "location": "Asia/Shanghai",
                      "times": [
                        {
                          "end_time": "06:00",
                          "start_time": "00:00"
                        }
                      ],
                      "weekdays": [
                        "saturday"
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaNotificationPolicy",
                "metadata": {
                  "name": "grafananotificationpolicy-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "route": {
                    "group_by": [
                      "grafana_folder",
                      "alertname"
                    ],
                    "receiver": "Grafana Cloud OnCall",
                    "routes": [
                      {
                        "object_matchers": [
                          [
                            "foo",
                            "=",
                            "bar"
                          ]
                        ],
                        "receiver": "grafana-default-email",
                        "routes": [
                          {
                            "object_matchers": [
                              [
                                "severity",
                                "=",
                                "critical"
                              ]
                            ],
                            "receiver": "Grafana Cloud OnCall"
                          }
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaNotificationPolicyRoute",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "grafana-operator",
                    "app.kubernetes.io/instance": "grafananotificationpolicyroute-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "grafananotificationpolicyroute",
                    "app.kubernetes.io/part-of": "grafana-operator"
                  },
                  "name": "grafananotificationpolicyroute-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaNotificationTemplate",
                "metadata": {
                  "name": "test"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "name": "test",
                  "template": "{{ define \"SlackAlert\" }}\n  [{{.Status}}] {{ .Labels.alertname }}\n  {{ .Annotations.AlertValues }}\n{{ end }}\n\n{{ define \"SlackAlertMessage\" }}\n  {{ if gt (len .Alerts.Firing) 0 }}\n    {{ len .Alerts.Firing }} firing:\n    {{ range .Alerts.Firing }} {{ template \"SlackAlert\" . }} {{ end }}\n  {{ end }}\n  {{ if gt (len .Alerts.Resolved) 0 }}\n    {{ len .Alerts.Resolved }} resolved:\n    {{ range .Alerts.Resolved }} {{ template \"SlackAlert\" . }} {{ end }}\n  {{ end }}\n{{ end }}\n\n{{ template \"SlackAlertMessage\" . }}\n"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaServiceAccount",
                "metadata": {
                  "name": "my-service-account"
                },
                "spec": {
                  "instanceName": "my-grafana",
                  "isDisabled": false,
                  "name": "my-service-account",
                  "role": "Admin",
                  "tokens": [
                    {
                      "expires": "2029-12-31T14:00:00+02:00",
                      "name": "my-token-a",
                      "secretName": "thatsfine"
                    },
                    {
                      "name": "my-token-b"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: ghcr.io/grafana/grafana-operator@sha256:0c74f67a26af34701639b858a51306163efd8f292206124d754c9c5e4628aeef
          createdAt: "2025-12-17T14:15:21Z"
          description: Deploys and manages Grafana instances, dashboards and data
            sources
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/grafana/grafana-operator
          support: Grafana Labs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alert rule groups that contain multiple alert rules
            displayName: Grafana Alert Rule Group
            kind: GrafanaAlertRuleGroup
            name: grafanaalertrulegroups.grafana.integreatly.org
            version: v1beta1
          - description: Contact Points
            displayName: Grafana Contact Point
            kind: GrafanaContactPoint
            name: grafanacontactpoints.grafana.integreatly.org
            version: v1beta1
          - description: Dashboards
            displayName: Grafana Dashboard
            kind: GrafanaDashboard
            name: grafanadashboards.grafana.integreatly.org
            version: v1beta1
          - description: Data Sources
            displayName: Grafana Datasource
            kind: GrafanaDatasource
            name: grafanadatasources.grafana.integreatly.org
            version: v1beta1
          - description: Folder for dashboards & alerts
            displayName: Grafana Folder
            kind: GrafanaFolder
            name: grafanafolders.grafana.integreatly.org
            version: v1beta1
          - description: Library Panel for use in dashboards
            displayName: GrafanaLibraryPanel
            kind: GrafanaLibraryPanel
            name: grafanalibrarypanels.grafana.integreatly.org
            version: v1beta1
          - description: Mute Timings that silence alerts
            kind: GrafanaMuteTiming
            name: grafanamutetimings.grafana.integreatly.org
            version: v1beta1
          - description: Notification Policy Tree
            displayName: Grafana Notification policy
            kind: GrafanaNotificationPolicy
            name: grafananotificationpolicies.grafana.integreatly.org
            version: v1beta1
          - description: GrafanaNotificationPolicyRoute is the Schema for the grafananotificationpolicyroutes
              API
            displayName: Grafana Notification Policy Route
            kind: GrafanaNotificationPolicyRoute
            name: grafananotificationpolicyroutes.grafana.integreatly.org
            version: v1beta1
          - description: Templates for use in notifications
            kind: GrafanaNotificationTemplate
            name: grafananotificationtemplates.grafana.integreatly.org
            version: v1beta1
          - description: Grafana Instances
            displayName: Grafana
            kind: Grafana
            name: grafanas.grafana.integreatly.org
            version: v1beta1
          - description: Grafana service accounts
            kind: GrafanaServiceAccount
            name: grafanaserviceaccounts.grafana.integreatly.org
            version: v1beta1
        description: Deploys and manages Grafana instances, dashboards and data sources
        displayName: Grafana Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Grafana
        - Metrics
        - Observability
        links:
        - name: Grafana Operator
          url: https://grafana.github.io/grafana-operator
        maintainers:
        - email: grafana-operator@grafana.com
          name: Grafana-operator maintainers
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Grafana Labs
          url: https://grafana.com
        relatedImages:
        - docker.io/grafana/grafana@sha256:70d9599b186ce287be0d2c5ba9a78acb2e86c1a68c9c41449454d0fc3eeb84e8
        - ghcr.io/grafana/grafana-operator@sha256:0c74f67a26af34701639b858a51306163efd8f292206124d754c9c5e4628aeef
        - quay.io/community-operator-pipeline-prod/grafana-operator@sha256:5ac32543a87b1f34e4ade94ff03a4243420a58a0249c30892fc9cdd5216104f1
        version: 5.21.2
      entries:
      - name: grafana-operator.v5.21.2
        version: 5.21.2
      - name: grafana-operator.v5.21.1
        version: 5.21.1
      - name: grafana-operator.v5.20.0
        version: 5.20.0
      - name: grafana-operator.v5.19.4
        version: 5.19.4
      - name: grafana-operator.v5.18.0
        version: 5.18.0
      - name: grafana-operator.v5.17.1
        version: 5.17.1
      - name: grafana-operator.v5.15.1
        version: 5.15.1
      name: v5
    defaultChannel: v5
    packageName: grafana-operator
    provider:
      name: Grafana Labs
      url: https://grafana.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Flux project
      provider-url: ""
    name: flux
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: flux.v2.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "helm.toolkit.fluxcd.io/v2beta1",
                "kind": "HelmRelease",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "default"
                },
                "spec": {
                    "interval": "5m",
                    "chart": {
                      "spec": {
                          "chart": "podinfo",
                          "version": "4.0.x",
                          "sourceRef": {
                            "kind": "HelmRepository",
                            "name": "podinfo",
                            "namespace": "flux-system"
                          },
                          "interval": "1m"
                      }
                    },
                    "values": {
                      "replicaCount": 2
                    }
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "GitRepository",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "dev"
                },
                "spec": {
                    "interval": "1m",
                    "ref": {
                      "branch": "master"
                    },
                    "url": "https://github.com/stefanprodan/podinfo"
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "HelmRepository",
                "metadata": {
                    "name": "stable",
                    "namespace": "default"
                },
                "spec": {
                    "url": "https://kubernetes-charts.storage.googleapis.com/",
                    "interval": "10m"
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "HelmChart",
                "metadata": {
                    "name": "redis",
                    "namespace": "default"
                },
                "spec": {
                    "chart": "redis",
                    "version": "10.5.7",
                    "sourceRef": {
                      "name": "stable",
                      "kind": "HelmRepository"
                    },
                    "interval": "5m"
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "Bucket",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "default"
                },
                "spec": {
                    "interval": "1m",
                    "provider": "generic",
                    "bucketName": "podinfo",
                    "endpoint": "minio.minio.svc.cluster.local:9000",
                    "insecure": true,
                    "secretRef": {
                      "name": "minio-credentials"
                    }
                }
              },
              {
                "apiVersion": "kustomize.toolkit.fluxcd.io/v1beta2",
                "kind": "Kustomization",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "dev"
                },
                "spec": {
                    "interval": "5m",
                    "path": "./deploy/overlays/dev",
                    "prune": true,
                    "sourceRef": {
                      "kind": "GitRepository",
                      "name": "podinfo"
                    },
                    "timeout": "2m",
                    "wait": true
                }
              },
              {
                "apiVersion": "notification.toolkit.fluxcd.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "default"
                },
                "spec": {
                    "type": "github",
                    "address": "https://github.com/stefanprodan/podinfo",
                    "secretRef": {
                      "name": "api-token"
                    }
                }
              },
              {
                "apiVersion": "notification.toolkit.fluxcd.io/v1beta1",
                "kind": "Alert",
                "metadata": {
                    "name": "webapp",
                    "namespace": "default"
                },
                "spec": {
                    "providerRef": {
                      "name": "on-call-slack"
                    },
                    "eventSeverity": "info",
                    "eventSources": [
                      {
                          "kind": "GitRepository",
                          "name": "webapp"
                      },
                      {
                          "kind": "Bucket",
                          "name": "secrets"
                      },
                      {
                          "kind": "Kustomization",
                          "name": "webapp-backend"
                      },
                      {
                          "kind": "Kustomization",
                          "name": "webapp-frontend"
                      }
                    ]
                }
              },
              {
                "apiVersion": "notification.toolkit.fluxcd.io/v1beta1",
                "kind": "Receiver",
                "metadata": {
                    "name": "github-receiver",
                    "namespace": "default"
                },
                "spec": {
                    "type": "github",
                    "events": [
                      "ping",
                      "push"
                    ],
                    "secretRef": {
                      "name": "webhook-token"
                    },
                    "resources": [
                      {
                          "kind": "GitRepository",
                          "name": "webapp"
                      },
                      {
                          "kind": "HelmRepository",
                          "name": "webapp"
                      }
                    ]
                }
              },
              {
                "apiVersion": "image.toolkit.fluxcd.io/v1beta1",
                "kind": "ImageRepository",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "flux-system"
                },
                "spec": {
                    "image": "ghcr.io/stefanprodan/podinfo",
                    "interval": "1m0s"
                }
              },
              {
                "apiVersion": "image.toolkit.fluxcd.io/v1beta1",
                "kind": "ImagePolicy",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "flux-system"
                },
                "spec": {
                    "imageRepositoryRef": {
                      "name": "podinfo"
                    },
                    "policy": {
                      "semver": {
                          "range": "5.0.x"
                      }
                    }
                }
              },
              {
                "apiVersion": "image.toolkit.fluxcd.io/v1beta1",
                "kind": "ImageUpdateAutomation",
                "metadata": {
                  "name": "flux-system",
                  "namespace": "flux-system"
                },
                "spec": {
                  "interval": "1m0s",
                  "sourceRef": {
                    "kind": "GitRepository",
                    "name": "flux-system"
                  },
                  "git": {
                    "checkout": {
                      "ref": {
                        "branch": "main"
                      }
                    },
                    "commit": {
                      "author": {
                        "email": "fluxcdbot@users.noreply.github.com",
                        "name": "fluxcdbot"
                      },
                      "messageTemplate": "{{range .Updated.Images}}{{println .}}{{end}}"
                    },
                    "push": {
                      "branch": "main"
                    }
                  },
                  "update": {
                    "path": "./clusters/my-cluster",
                    "strategy": "Setters"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: ghcr.io/fluxcd/source-controller:v1.3.0
          description: Flux is a Continuous Delivery solution for Kubernetes.
          operatorframework.io/suggested-namespace: flux-system
          support: The Flux community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alert
            displayName: Alert
            kind: Alert
            name: alerts.notification.toolkit.fluxcd.io
            version: v1beta1
          - description: Alert
            displayName: Alert
            kind: Alert
            name: alerts.notification.toolkit.fluxcd.io
            version: v1beta2
          - description: Alert
            displayName: Alert
            kind: Alert
            name: alerts.notification.toolkit.fluxcd.io
            version: v1beta3
          - description: Bucket
            displayName: Bucket
            kind: Bucket
            name: buckets.source.toolkit.fluxcd.io
            version: v1beta1
          - description: Bucket
            displayName: Bucket
            kind: Bucket
            name: buckets.source.toolkit.fluxcd.io
            version: v1beta2
          - description: GitRepository
            displayName: GitRepository
            kind: GitRepository
            name: gitrepositories.source.toolkit.fluxcd.io
            version: v1
          - description: GitRepository
            displayName: GitRepository
            kind: GitRepository
            name: gitrepositories.source.toolkit.fluxcd.io
            version: v1beta1
          - description: GitRepository
            displayName: GitRepository
            kind: GitRepository
            name: gitrepositories.source.toolkit.fluxcd.io
            version: v1beta2
          - description: HelmChart
            displayName: HelmChart
            kind: HelmChart
            name: helmcharts.source.toolkit.fluxcd.io
            version: v1
          - description: HelmChart
            displayName: HelmChart
            kind: HelmChart
            name: helmcharts.source.toolkit.fluxcd.io
            version: v1beta1
          - description: HelmChart
            displayName: HelmChart
            kind: HelmChart
            name: helmcharts.source.toolkit.fluxcd.io
            version: v1beta2
          - description: HelmRelease
            displayName: HelmRelease
            kind: HelmRelease
            name: helmreleases.helm.toolkit.fluxcd.io
            version: v2
          - description: HelmRelease
            displayName: HelmRelease
            kind: HelmRelease
            name: helmreleases.helm.toolkit.fluxcd.io
            version: v2beta1
          - description: HelmRelease
            displayName: HelmRelease
            kind: HelmRelease
            name: helmreleases.helm.toolkit.fluxcd.io
            version: v2beta2
          - description: HelmRepository
            displayName: HelmRepository
            kind: HelmRepository
            name: helmrepositories.source.toolkit.fluxcd.io
            version: v1
          - description: HelmRepository
            displayName: HelmRepository
            kind: HelmRepository
            name: helmrepositories.source.toolkit.fluxcd.io
            version: v1beta1
          - description: HelmRepository
            displayName: HelmRepository
            kind: HelmRepository
            name: helmrepositories.source.toolkit.fluxcd.io
            version: v1beta2
          - description: ImagePolicy
            displayName: ImagePolicy
            kind: ImagePolicy
            name: imagepolicies.image.toolkit.fluxcd.io
            version: v1beta1
          - description: ImagePolicy
            displayName: ImagePolicy
            kind: ImagePolicy
            name: imagepolicies.image.toolkit.fluxcd.io
            version: v1beta2
          - description: ImageRepository
            displayName: ImageRepository
            kind: ImageRepository
            name: imagerepositories.image.toolkit.fluxcd.io
            version: v1beta1
          - description: ImageRepository
            displayName: ImageRepository
            kind: ImageRepository
            name: imagerepositories.image.toolkit.fluxcd.io
            version: v1beta2
          - description: ImageUpdateAutomation
            displayName: ImageUpdateAutomation
            kind: ImageUpdateAutomation
            name: imageupdateautomations.image.toolkit.fluxcd.io
            version: v1beta1
          - description: ImageUpdateAutomation
            displayName: ImageUpdateAutomation
            kind: ImageUpdateAutomation
            name: imageupdateautomations.image.toolkit.fluxcd.io
            version: v1beta2
          - description: Kustomization
            displayName: Kustomization
            kind: Kustomization
            name: kustomizations.kustomize.toolkit.fluxcd.io
            version: v1
          - description: Kustomization
            displayName: Kustomization
            kind: Kustomization
            name: kustomizations.kustomize.toolkit.fluxcd.io
            version: v1beta1
          - description: Kustomization
            displayName: Kustomization
            kind: Kustomization
            name: kustomizations.kustomize.toolkit.fluxcd.io
            version: v1beta2
          - description: OCIRepository
            displayName: OCIRepository
            kind: OCIRepository
            name: ocirepositories.source.toolkit.fluxcd.io
            version: v1beta2
          - description: Provider
            displayName: Provider
            kind: Provider
            name: providers.notification.toolkit.fluxcd.io
            version: v1beta1
          - description: Provider
            displayName: Provider
            kind: Provider
            name: providers.notification.toolkit.fluxcd.io
            version: v1beta2
          - description: Provider
            displayName: Provider
            kind: Provider
            name: providers.notification.toolkit.fluxcd.io
            version: v1beta3
          - description: Receiver
            displayName: Receiver
            kind: Receiver
            name: receivers.notification.toolkit.fluxcd.io
            version: v1
          - description: Receiver
            displayName: Receiver
            kind: Receiver
            name: receivers.notification.toolkit.fluxcd.io
            version: v1beta1
          - description: Receiver
            displayName: Receiver
            kind: Receiver
            name: receivers.notification.toolkit.fluxcd.io
            version: v1beta2
        description: |-
          [Flux](https://fluxcd.io/) is a Continuous Delivery solution for Kubernetes.
          Flux is constructed with the [GitOps Toolkit](https://toolkit.fluxcd.io/components/), a set of composable APIs and specialized tools for keeping Kubernetes clusters in sync with sources of configuration (like Git & Helm repositories), and automating updates to configuration when there is new code to deploy.

          Flux is a CNCF incubation project made for:

          - **cluster operators** who automate provision and configuration of clusters
          - **platform engineers** who build continuous delivery for developer teams
          - **app developers** who rely on continuous delivery to get their code live

          Features:

          - Source configuration from Git and Helm repositories, and S3-compatible buckets (e.g., Minio)
          - Kustomize and Helm support
          - Event-triggered and periodic reconciliation
          - Integration with Kubernetes RBAC
          - Health assessment (clusters and workloads)
          - Dependency management (infrastructure and workloads)
          - Secrets management (builtin support for Mozilla SOPS and Cloud KMS)
          - Alerting to external systems (webhook senders)
          - External events handling (webhook receivers)
          - Automated container image updates to Git (image scanning and patching)
          - Policy-driven validation (OPA, Kyverno, admission controllers)
          - Seamless integration with Git providers (GitHub, GitLab, Bitbucket)
          - Interoperability with Cluster API (CAPI) providers

          ### Steps to support bootstraping with Flux CLI

          SecComp Profile should be removed as it requires a special privilege to get the access.
          Also, it requires to enforce `runUserAs` to the same UID provided by the images to prevent OpenShift
          to alter the user id expected by our controllers.

          To do so, please specifiy a patch using the following Kustomization file, for example.

          ```yaml
          apiVersion: kustomize.config.k8s.io/v1beta1
          kind: Kustomization
          resources:
            - gotk-components.yaml
            - gotk-sync.yaml
          patches:
            - patch: |
                apiVersion: apps/v1
                kind: Deployment
                metadata:
                  name: all
                spec:
                  template:
                    spec:
                      containers:
                        - name: manager
                          securityContext:
                            runAsUser: 65534
                            seccompProfile:
                              $patch: delete
              target:
                kind: Deployment
                labelSelector: app.kubernetes.io/part-of=flux
          ```

          Then before installing Flux, please also perform the following steps to bind Flux to the `nonroot` SecurityContextConstraint (SCC). This applies to installation via OC's OLM or via Flux CLI.

          ```sh
          # replace default "flux-system" with the project/namespace name for your flux installation
          namespace="flux-system"
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:source-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:kustomize-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:helm-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:notification-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:image-automation-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:image-reflector-controller

          ```

          To see complete steps please refer to this [documentation](https://github.com/fluxcd/website/blob/main/content/en/docs/use-cases/openshift.md).

          If you've already installed Flux, you might need to uninstall it after applying the above pre-requisite steps.

          ### Network Policies

          This version of Flux is shipped without the normally provided network Policies.
          By default all traffic is enabled, and anyone can access the source-controller
          artifacts.

          It is not recommended to run it in production as is.

          Please visit [Flux's policies](https://github.com/fluxcd/flux2/tree/main/manifests/policies)
          to deploy the needed network policies and secure your Flux setup.

          ### Breaking Changes

          - Flux 0.18.x ships with v1beta2 of the kustomize.toolkit.fluxcd.io/Kustomization CRD.
          - Flux 0.25.x is the last Flux release where Kubernetes 1.19 is supported.

          ### Flux on OpenShift Use Cases

          - [The GitOps with Flux + OpenShift](https://www.youtube.com/watch?v=8ybCtNVP5To) talk by Andrew Block (Red Hat) showing how to setup multi-tenacy on OpenShift using Flux.
          - [Flux OpenShift Use Case](https://fluxcd.io/docs/use-cases/openshift/) on FluxCD.io
        displayName: Flux
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - flux
        - gitops
        - cd
        - continuous delivery
        - fluxcd
        - helm
        - kustomize
        links:
        - name: Homepage
          url: https://fluxcd.io/
        - name: Documentation
          url: https://fluxcd.io/docs/
        - name: Slack
          url: https://cloud-native.slack.com/messages/flux
        - name: Mailing List
          url: https://lists.cncf.io/g/cncf-flux-dev
        - name: Source Code
          url: https://github.com/fluxcd/flux2
        maintainers:
        - email: support@weave.works
          name: The Flux maintainers
        maturity: stable
        provider:
          name: The Flux project
        relatedImages:
        - ghcr.io/fluxcd/image-reflector-controller:v0.32.0
        - ghcr.io/fluxcd/kustomize-controller:v1.3.0
        - ghcr.io/fluxcd/notification-controller:v1.3.0
        - ghcr.io/fluxcd/source-controller:v1.3.0
        - quay.io/community-operator-pipeline-prod/flux@sha256:cd94037ff3055ab6ce40b0670f900248a5fd233cc67a2a4f92c1559cf9d2f3ad
        - ghcr.io/fluxcd/helm-controller:v1.0.1
        - ghcr.io/fluxcd/image-automation-controller:v0.38.0
        version: 2.3.0
      entries:
      - name: flux.v2.3.0
        version: 2.3.0
      - name: flux.v2.2.2
        version: 2.2.2
      - name: flux.v2.2.0
        version: 2.2.0
      - name: flux.v2.0.1
        version: 2.0.1
      - name: flux.v0.41.2
        version: 0.41.2
      - name: flux.v0.40.0
        version: 0.40.0
      - name: flux.v0.39.0
        version: 0.39.0
      - name: flux.v0.38.3
        version: 0.38.3
      - name: flux.v0.37.0
        version: 0.37.0
      - name: flux.v0.36.0
        version: 0.36.0
      - name: flux.v0.35.0
        version: 0.35.0
      - name: flux.v0.31.4
        version: 0.31.4
      - name: flux.v0.31.3
        version: 0.31.3
      - name: flux.v0.30.2
        version: 0.30.2
      - name: flux.v0.28.5
        version: 0.28.5
      - name: flux.v0.28.4
        version: 0.28.4
      - name: flux.v0.28.3
        version: 0.28.3
      - name: flux.v0.27.4
        version: 0.27.4
      - name: flux.v0.27.3
        version: 0.27.3
      - name: flux.v0.27.2
        version: 0.27.2
      - name: flux.v0.27.0
        version: 0.27.0
      - name: flux.v0.26.1
        version: 0.26.1
      - name: flux.v0.26.0
        version: 0.26.0
      - name: flux.v0.25.3
        version: 0.25.3
      - name: flux.v0.25.2
        version: 0.25.2
      - name: flux.v0.24.1
        version: 0.24.1
      - name: flux.v0.24.0
        version: 0.24.0
      - name: flux.v0.23.0
        version: 0.23.0
      - name: flux.v0.22.1
        version: 0.22.1
      - name: flux.v0.22.0
        version: 0.22.0
      - name: flux.v0.21.1
        version: 0.21.1
      - name: flux.v0.21.0
        version: 0.21.0
      - name: flux.v0.20.1
        version: 0.20.1
      - name: flux.v0.20.0
        version: 0.20.0
      - name: flux.v0.19.1
        version: 0.19.1
      - name: flux.v0.18.3
        version: 0.18.3
      - name: flux.v0.18.1
        version: 0.18.1
      - name: flux.v0.17.2
        version: 0.17.2
      - name: flux.v0.17.1
        version: 0.17.1
      - name: flux.v0.17.0
        version: 0.17.0
      - name: flux.v0.16.2
        version: 0.16.2
      - name: flux.v0.16.1
        version: 0.16.1
      - name: flux.v0.16.0
        version: 0.16.0
      - name: flux.v0.15.3
        version: 0.15.3
      - name: flux.v0.15.2
        version: 0.15.2
      - name: flux.v0.14.2
        version: 0.14.2
      - name: flux.v0.14.1
        version: 0.14.1
      - name: flux.v0.14.0
        version: 0.14.0
      - name: flux.v0.13.4
        version: 0.13.4
      name: stable
    defaultChannel: stable
    packageName: flux
    provider:
      name: The Flux project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Commvault
      provider-url: ""
    name: hedvig-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hedvig-operator.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\":\"hedvig.io/v1\",\n    \"kind\":\"HedvigDeploy\",\n
            \   \"metadata\": {\n      \"name\": \"testdeploy\",\n      \"namespace\":
            \"hedvig\"\n    },\n    \"spec\": {\n      \"cluster\": {\n        \"name\":
            \"hedvigcl\",\n        \"seeds\": [\n          \"hedvigcl1.hedvig.io\",\n
            \         \"hedvigcl2.hedvig.io\",\n          \"hedvigcl3.hedvig.io\"\n
            \       ]\n      },\n      \"k8s\": {\n        \"name\": \"k8scl\"\n      },\n
            \     \"proxy\": {\n        \"repository\": \"hedvig/hedvig-proxy\",\n
            \       \"tag\": \"v-4.3.1\",\n        \"imagePullPolicy\": \"IfNotPresent\"\n
            \     },\n      \"controller\": {\n        \"repository\": \"hedvig/hedvig-csi-volume-driver\",\n
            \       \"tag\": \"v-2.0\",\n        \"imagePullPolicy\": \"IfNotPresent\"\n
            \     },\n      \"node\": {\n        \"repository\": \"hedvig/hedvig-csi-volume-driver\",\n
            \       \"tag\": \"v-2.0\",\n        \"imagePullPolicy\": \"IfNotPresent\"\n
            \     },\n      \"sidecars\": [\n        {\n          \"name\": \"csi-provisioner\",\n
            \         \"repository\": \"quay.io/k8scsi/csi-provisioner\",\n          \"tag\":
            \"v1.6.0\",\n          \"imagePullPolicy\": \"IfNotPresent\"\n        },\n
            \       {\n          \"name\": \"csi-snapshotter\",\n          \"repository\":
            \"quay.io/k8scsi/csi-snapshotter\",\n          \"tag\": \"v2.1.0\",\n
            \         \"imagePullPolicy\": \"IfNotPresent\"\n        },              \n
            \       {\n          \"name\": \"csi-resizer\",\n          \"repository\":
            \"quay.io/k8scsi/csi-resizer\",\n          \"tag\": \"v0.5.0\",\n          \"imagePullPolicy\":
            \"IfNotPresent\"\n        },              \n        {\n          \"name\":
            \"csi-node-driver-registrar\",\n          \"repository\": \"quay.io/k8scsi/csi-node-driver-registrar\",\n
            \         \"tag\": \"v1.0-canary\",\n          \"imagePullPolicy\": \"IfNotPresent\"\n
            \       }\n      ]\n    }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "false"
          containerImage: hedvig/hedvig-operator:2.0.0-ubi
          createdAt: ""
          description: Hedvig Operator is the official operator to deploy and manage
            Hedvig components in container orchestrators such as Kubernetes and Openshift.
          repository: ""
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Hedvig Deploy
            displayName: HedvigDeploy
            kind: HedvigDeploy
            name: hedvigdeploys.hedvig.io
            version: v1
        description: "The Hedvig Distributed Storage Platform is a software-defined,
          scale-out storage solution. It distributes data simultaneously across multiple
          locations – from on-premises data centers to the cloud – and scales capacity
          on-demand by leveraging the storage of commodity x86/ARM servers. The distributed
          write maximizes availability and protects data from hardware failures ranging
          from a single disk to an entire site, improving disaster recovery planning.\n\nHedvig
          provides a CSI Driver for accelerating your journey into the container ecosystem.
          CSI Driver enables containerized applications to maintain state by dynamically
          provisioning and consuming Hedvig virtual disks as persistent volumes. \n###
          \n\nHedvig Operator deploys the Hedvig Storage Proxy and the Hedvig CSI
          Driver to manage the life cycle of persistent storage in Kubernetes and
          Openshift.\n\n**Supported Container Orchestrators:**\n* Kubernetes 1.16+\n*
          Red Hat OpenShift 4.6+\n\n**Supported Hedvig Releases:**\n* Hedvig 4.0+\nPlease
          refer to the [documentation](https://documentation.commvault.com/commvault/hedvig/others/pdf/Hedvig_Operator_User_Guide.pdf)
          for steps to install and use the operator.\n\n\n\n\n\n"
        displayName: Hedvig Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Storage
        - CSI
        - Hedvig
        - Cloud
        - Block
        - NFS
        - iSCSI
        - Snapshot
        - Volume
        links:
        - name: Documentation
          url: https://documentation.commvault.com/commvault/hedvig/article
        - name: Hedvig CSI User Guide
          url: https://documentation.commvault.com/commvault/hedvig/others/pdf/Hedvig_CSI_User_Guide.pdf
        maintainers:
        - email: ashenoy@commvault.com
          name: Abhijith Shenoy
        maturity: stable
        provider:
          name: Commvault
        relatedImages:
        - hedvig/hedvig-operator:2.0.0-ubi
        - quay.io/openshift-community-operators/hedvig-operator@sha256:81d956c12057f18bf920044a4e39c27c99b2c23afdccc0ff9468f0484e1961d7
        version: 1.0.2
      entries:
      - name: hedvig-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: hedvig-operator
    provider:
      name: Commvault
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: vertical-pod-autoscaler
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vertical-pod-autoscaler.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "autoscaling.k8s.io/v1",
                "kind": "VerticalPodAutoscaler",
                "metadata": {
                  "name": "myapp-vpa"
                },
                "spec": {
                  "resourcePolicy": {
                    "containerPolicies": [
                      {
                        "containerName": "*",
                        "controlledResources": [
                          "cpu",
                          "memory"
                        ],
                        "maxAllowed": {
                          "cpu": 1,
                          "memory": "500Mi"
                        },
                        "minAllowed": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      }
                    ]
                  },
                  "targetRef": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "myapp-deployment"
                  }
                }
              },
              {
                "apiVersion": "autoscaling.openshift.io/v1",
                "kind": "VerticalPodAutoscalerController",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "minReplicas": 2,
                  "podMinCPUMillicores": 25,
                  "podMinMemoryMb": 250,
                  "safetyMarginFraction": 0.15
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          certifiedLevel: Primed
          containerImage: registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9-operator@sha256:c8b4fbae4f814c8f553bb0c41491cd58fe4c524e29689305545f7a811b0a99e7
          createdAt: "2025-07-23T17:03:26Z"
          description: An operator to run the OpenShift Vertical Pod Autoscaler. Vertical
            Pod Autoscaler (VPA) can be configured to monitor a workload's resource
            utilization, and then adjust its CPU and memory limits by updating the
            pod (future) or restarting the pod with updated limits.
          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: "true"
          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"
          healthIndex: B
          olm.skipRange: '>=4.5.0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-vertical-pod-autoscaler
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/vertical-pod-autoscaler-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents VPA checkpoints used by the VPA controllers to
              manage workloads
            displayName: VPA Checkpoint
            kind: VerticalPodAutoscalerCheckpoint
            name: verticalpodautoscalercheckpoints.autoscaling.k8s.io
            version: v1
          - kind: VerticalPodAutoscalerCheckpoint
            name: verticalpodautoscalercheckpoints.autoscaling.k8s.io
            version: v1beta2
          - description: Represents an instance of the set of VPA controllers
            displayName: VPA Controller
            kind: VerticalPodAutoscalerController
            name: verticalpodautoscalercontrollers.autoscaling.openshift.io
            version: v1
          - description: An application whose resources are managed by the VPA
            displayName: VerticalPodAutoscaler
            kind: VerticalPodAutoscaler
            name: verticalpodautoscalers.autoscaling.k8s.io
            version: v1
          - kind: VerticalPodAutoscaler
            name: verticalpodautoscalers.autoscaling.k8s.io
            version: v1beta2
        description: An operator to run the OpenShift Vertical Pod Autoscaler. Vertical
          Pod Autoscaler (VPA) can be configured to monitor a workload's resource
          utilization, and then adjust its CPU and memory limits by updating the pod
          (future) or restarting the pod with updated limits.
        displayName: Vertical Pod Autoscaler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - verticalpodautoscaler
        - vpa
        - autoscaling
        - scaling
        links:
        - name: Vertical Pod Autoscaler Documentation
          url: https://docs.openshift.com/container-platform/latest/nodes/pods/nodes-pods-vertical-autoscaler.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-operator-bundle@sha256:bac746437332ab19a056edfc42148904de392c787a79dd77c2734b2dc34982d0
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9-operator@sha256:c8b4fbae4f814c8f553bb0c41491cd58fe4c524e29689305545f7a811b0a99e7
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9@sha256:8d7407a15dee92f15e8c62ef8a23c02b94bc59d1dd6595f9dd3e05f5a01cf9a3
        version: 4.20.0-202512081147
      entries:
      - name: vertical-pod-autoscaler.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: vertical-pod-autoscaler.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: vertical-pod-autoscaler.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: vertical-pod-autoscaler.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: vertical-pod-autoscaler.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: vertical-pod-autoscaler.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: vertical-pod-autoscaler.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: vertical-pod-autoscaler
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: redhat.com
    name: rh-service-binding-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: service-binding-operator.v0.9.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "service.binding/v1alpha2",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ServiceBinding expresses intent to bind an operator-backed
              service with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: Service Binding for Kubernetes. Describes the connection
              between a Provisioned Service and an Application Projection. Implements
              Service Binding Specifcation for Kubernetes (https://github.com/k8s-service-bindings/spec).
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.service.binding
            version: v1alpha2
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: alpha
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator-metadata@sha256:d9930900b0d2f92ae813246fc322290234ad8bbd165b10e36671b53852228718
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:fe6629401bc8447da95ec55949b5a27e620364bb6e02f86230262699ac8a5d55
        version: 0.9.1
      entries:
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: beta
    - currentCSV: service-binding-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindablekinds-sample"
                }
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:e799bd06043028d214baeeffc683710ad2eed7b83272fc653e3b89f69711319b
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:e799bd06043028d214baeeffc683710ad2eed7b83272fc653e3b89f69711319b
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator-metadata@sha256:87448055a162e215a4d4982a8494fec6e7cc59fe6704494ddfdcfea076a2100c
        version: 0.11.0
      entries:
      - name: service-binding-operator.v0.11.0
        version: 0.11.0
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: candidate
    - currentCSV: service-binding-operator.v0.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "service.binding/v1alpha2",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.service.binding
            version: v1alpha2
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator-metadata@sha256:a7c6f1c9260c79ebbdfb25ea996516ba1e2bcbedf25401e9e6848b955a2d3d78
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:3d7a3648e86848402577dd19c1f8fd130a5556ebdfbc0f663a72f9e141024812
        version: 0.10.0
      entries:
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: preview
    - currentCSV: service-binding-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindable-kinds"
                },
                "spec": {}
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  },
                  "type": "postgres",
                  "workload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: registry.redhat.io/ocp-tools-4/service-binding-rhel8-operator@sha256:9c8fb0c8f9d2f54685561af21e595aa88bf309eaebebdf23fb6997b75d026b18
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.17.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'.
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1alpha3
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1beta1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
          - description: Service Binding implementing community specification (https://github.com/k8s-service-bindings/spec)
              describing the connection between a backing service and an application
              workload.
            displayName: Service Binding (Spec API)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1beta1
        description: |
          The Service Binding Operator manages the data plane for applications and backing services. It enables developers to connect their
          applications to backing services (REST API, databases, event buses and others) with a consistent and predictable
          experience. The operator reads data made available by the control plane of backing services and projects the bindings
          data to applications either as accessible files mounted into the application’s container or environment variables.

          In Kubernetes, each service suggests a different way to access their secrets and developers will consume them in their
          application in a custom way. While this provides a good deal of flexibility, it also creates discrepancies and
          complexity dealing with each specific services, which leads large development teams to lose overall velocity.

          Service Binding Operator removes the error-prone manual configuration of binding information, provides service operators
          a low-touch administrative experience to provision and manage access to services and enriches development lifecycle.

          For additional details refer to the project [documentation](https://redhat-developer.github.io/service-binding-operator).

          Get Started with Service Binding Operator
          * Find out about SBO’s [prerequisites](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/installing-service-binding.html).
          * Refer to the [Quick Start Guide](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/quick-start.html) to see SBO in action in a simple scenario.

          Need Help
          * Raise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)

          Licence
          * Service Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE)

          Service Binding Operator is providing and supporting two different APIs.
          * `binding.operators.coreos.com/v1alpha1`: This API is compliant with the Service Binding specification. It is fully supported and considered as the mature API. It’s the API we recommend in production environments.
          * `servicebinding.io/v1beta1`: This API is the one defined in the Service Binding specification. It is available in Service Binding Operator 1.x.

          We’ll consider supporting only the API from the specification, once the Service Binding specification will be officially GA. Of course, that will be a breaking change and handle in a safe way for you.
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Documentation
          url: https://redhat-developer.github.io/service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4/service-binding-operator-bundle@sha256:9ab3d5eb70c654270fef9e8e9d4e5b68e1ac3c86bd0e0dcd36cc6f8741be1603
        - registry.redhat.io/ocp-tools-4/service-binding-rhel8-operator@sha256:9c8fb0c8f9d2f54685561af21e595aa88bf309eaebebdf23fb6997b75d026b18
        version: 1.3.3
      entries:
      - name: service-binding-operator.v1.3.3
        version: 1.3.3
      - name: service-binding-operator.v1.3.1
        version: 1.3.1
      - name: service-binding-operator.v1.3.0
        version: 1.3.0
      - name: service-binding-operator.v1.2.0
        version: 1.2.0
      - name: service-binding-operator.v1.1.1
        version: 1.1.1
      - name: service-binding-operator.v1.1.0
        version: 1.1.0
      - name: service-binding-operator.v1.0.1
        version: 1.0.1
      - name: service-binding-operator.v1.0.0
        version: 1.0.0
      - name: service-binding-operator.v0.11.0
        version: 0.11.0
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: rh-service-binding-operator
    provider:
      name: Red Hat
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/component: kmm
      app.kubernetes.io/name: kmm
      app.kubernetes.io/part-of: kmm
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: kernel-module-management
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kernel-module-management.v2.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:1022205d712a2ed9d6e76968961c180d4e66a2e0fb991221b0b02ed94ed830d2
          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: "true"
          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.skipRange: '>=0.0.0 <2.0.2'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel-module-management
        - out-of-tree
        - kernel
        - kmm
        - module
        - modules
        - oot
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:25f39f20f325f64676bf8ef14cd8a60cfbdc77116753a89d4bb667ea2a86172c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:62c44057a27abd41cf3daf60b8736da59a82dadb65fa6c32bef65d19bd49ea49
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:192e08b121a04ae69aea60c35199e8f5e3c42305e1ebd024a605a371de4ab472
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:e39a0b57e73d92c5db330ac9b8a184eeb400397f14c05c1ef75c952d91e4f5b2
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:1022205d712a2ed9d6e76968961c180d4e66a2e0fb991221b0b02ed94ed830d2
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:94b4ddc45cb34d4ffe794a51b99c868cb709f90cc4eb8b28284d70c526a0a226
        version: 2.0.2
      entries:
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.0
    - currentCSV: kernel-module-management.v2.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a85037778c53c3766f39efe4c4d2523d01ae7743e5c5693b05bd8b2cbb50b1d8
          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.skipRange: '>=0.0.0 <2.1.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:1a9a19df17b464d1708b2905d03b8726e4480ca1f11aa97a15ff4c049a24ea4b
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:611556d999ea97f9dbb78fec5963baa02de7a26626d7096ba63b177e3bcf9707
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:ea3e5fbf7eaf6bd29031e2876d7e24859779fb4d3d7ef27c26a1d310f137ad17
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:14e100e5853444114029116255ebfb7a54e5ed51503ba969740ad48b5ca80f70
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:5024be9a3190288983e3c42e8a2dbb49aa44cd596237ad9ed0e72de5090dc9b9
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a85037778c53c3766f39efe4c4d2523d01ae7743e5c5693b05bd8b2cbb50b1d8
        version: 2.1.1
      entries:
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.1
    - currentCSV: kernel-module-management.v2.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a224708950f8defb259ef0da49011d361c5c0378404350640600c6e8fbdbd606
          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: "true"
          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.skipRange: '>=0.0.0 <2.2.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:53fddf0b226eb579c71c86112a8d9b6b1d90a1498d6f6985932b16b8be532f35
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:ece58f1e360eccf7d970dca2f9da0c4d99a692648f165f677f11ff080649cf62
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a224708950f8defb259ef0da49011d361c5c0378404350640600c6e8fbdbd606
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:c3dc9ad4ebc68cd85a074b520903a9310e72a90a73bdf4aa7c42b7ed66b7bcba
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:b1d98c0f14448ae8eb80821cbec236150c338674aae2a2b37f8d0ab0d5f1430c
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:ce1d68fd96f5003285f9fbc0c7abd8aa23830dbdd9b76629d38d4d2238e30032
        version: 2.2.1
      entries:
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.2
    - currentCSV: kernel-module-management.v2.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:750dcc75f908cdda86932386fa1a28edaf65d7b5379ef6d0447586a064db906f
          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: "true"
          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.skipRange: '>=0.0.0 <2.3.0'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:6bd423056b555d39337c0e3a9c31e7732e80f34d0c01f0766a6aadb2aff586f8
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:750dcc75f908cdda86932386fa1a28edaf65d7b5379ef6d0447586a064db906f
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:06ac089cc89b303e525fd71d6439b958f34ab944a72209f1cc8cb562ecfd1112
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:c5005b74402f680d11c9ea682a9a0d3f74b6ab0d01d25298d232f910f1a29c34
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:055c2d6e80bd1ec225f0cb2041572ebb28cfd1a4ed82ba47ff0d638d52ded2a8
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:f9fde334af68220943017a7491130e6a82f15e63522f5bb3931aa7d9b00ccc40
        version: 2.3.0
      entries:
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.3
    - currentCSV: kernel-module-management.v2.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator
          createdAt: "2025-06-19T20:27:41Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.4.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:088dde6eb9d239a7a34b6e47a1bc3c3f1f74aabe764744eb9554913181b4e0db
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:8e0a3cfb1cb92d6d3c9ab5a3030593d8df1378c3ce755d598fb77b08ea5793d3
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:38d811a00b88a096d9fa8f650dae132c43db7057aac61c98932494ce94d67fff
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:34bd5c4f17411d5aa71edb1d6482b9a4cffffe4983b0a599db080bb09e1ec4d2
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:fc753a1c47c870199bf3c9a6cb4ef704847d525b3df5cd7628e2cc7dd0bbb2aa
        version: 2.4.1
      entries:
      - name: kernel-module-management.v2.4.1
        version: 2.4.1
      - name: kernel-module-management.v2.4.0
        version: 2.4.0
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.4
    - currentCSV: kernel-module-management.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:29Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BootModuleConfig describes how to load a module during kernel
              initialization
            displayName: Boot Module Config
            kind: BootModuleConfig
            name: bootmoduleconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:f1385af719931a82f572b33e678043ea91edfb5198cf880416c9a1e94455e399
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        version: 2.5.1
      entries:
      - name: kernel-module-management.v2.5.1
        version: 2.5.1
      - name: kernel-module-management.v2.5.0
        version: 2.5.0
      - name: kernel-module-management.v2.4.1
        version: 2.4.1
      - name: kernel-module-management.v2.4.0
        version: 2.4.0
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.5
    - currentCSV: kernel-module-management.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:29Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BootModuleConfig describes how to load a module during kernel
              initialization
            displayName: Boot Module Config
            kind: BootModuleConfig
            name: bootmoduleconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:f1385af719931a82f572b33e678043ea91edfb5198cf880416c9a1e94455e399
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        version: 2.5.1
      entries:
      - name: kernel-module-management.v2.5.1
        version: 2.5.1
      - name: kernel-module-management.v2.5.0
        version: 2.5.0
      - name: kernel-module-management.v2.4.1
        version: 2.4.1
      - name: kernel-module-management.v2.4.0
        version: 2.4.0
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: kernel-module-management
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Cloudera
      provider-url: https://cloudera.com
    name: cloudera-streams-messaging-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cloudera-streams-messaging-kubernetes-operator.1.4.0-b199
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster"
                },
                "spec": {
                  "kafka": {
                    "version": "3.9.0.1.4",
                    "replicas": 3,
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2,
                      "inter.broker.protocol.version": "3.9"
                    },
                    "storage": {
                      "type": "ephemeral"
                    }
                  },
                  "zookeeper": {
                    "replicas": 3,
                    "storage": {
                      "type": "ephemeral"
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "3.9.0.1.4",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: container.repository.cloudera.com/cloudera/kafka-operator@sha256:d6812fed7ddf139dab4d12cab6a0ae292e2d0619303b0ad72f2eef642e5a183a
          createdAt: "2025-07-14 10:09:41"
          description: Run Apache Kafka with Cloudera Streams Messaging - Kubernetes
            Operator
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: A valid license and current subscription
            for Cloudera Streaming - Kubernetes Operator is required. Contact Cloudera
            sales to obtain a license. https://www.cloudera.com/contact-sales.html
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |-
          Cloudera Streams Messaging - Kubernetes Operator brings enterprise-grade Kafka deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of Kafka for enterprise deployments. To learn more about Cloudera Streaming, [read this deep dive blog post](https://blog.cloudera.com/accelerating-deployments-of-streaming-pipelines-announcing-data-in-motion-on-kubernetes/).

          Cloudera Streams Messaging - Kubernetes Operator consists of and ships multiple components including Apache Kafka, Apache ZooKeeper, Cruise Control, Strimzi, and others.

          ## Installation prerequisites

          Installing Cloudera Streams Messaging - Kubernetes Operator requires a valid license as well as Cloudera credentials (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly. The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) where installation artifacts are pulled from.

          ### Obtaining a license

          Contact [Cloudera Sales](https://www.cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets

          Before installation, create  two `Secrets`. One containing your Cloudera credentials, and one containing your license. Cloudera credentials are provided to you together with your license.

          Create a `Secret` containing your Cloudera credentials.
          ```
          oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***] --docker-server=container.repository.cloudera.com
          ```
          Create a `Secret` containing your license.
          ```
          oc create secret generic csm-op-license --from-file=license.txt=[***PATH TO LICENSE FILE***]
          ```

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces where you plan to deploy Kafka or Kafka Connect clusters. Cloudera recommends that you create the `Secret` in all required namespaces before installation if you know what namespaces you will be using to deploy Kafka or Kafka Connect.

          ## Learn more
          To learn more, visit the [Cloudera Streams Messaging - Kubernetes Operator documentation library](https://docs.cloudera.com/csm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Streams Messaging - Kubernetes Operator, visit the following resources:

          * [Strimzi](https://strimzi.io/)
          * [Apache Kafka](https://kafka.apache.org/)
          * [Apache ZooKeeper](https://zookeeper.apache.org/)
          * [Cruise Control](https://github.com/linkedin/cruise-control)
        displayName: Cloudera Streams Messaging - Kubernetes Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Documentation
          url: https://docs.cloudera.com/csm-operator
        - name: Cloudera Community Forum
          url: https://community.cloudera.com/
        - name: Cloudera Stream Processing
          url: https://www.cloudera.com/products/stream-processing.html
        - name: Contact Cloudera
          url: https://www.cloudera.com/contact-sales.html
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/kafka@sha256:aa64e161b9672153a6f6559f9ae9ef88d0e40d6040a80e21bd3dc8ee39df6523
        - container.repository.cloudera.com/cloudera/kafka@sha256:b675e7426a558c4681e53d8e03f278264d7ad555f7c02422017683a29708ac2b
        - container.repository.cloudera.com/cloudera/maven-builder@sha256:9f18203b175193e5079fdc0c2b71c14887641d997f92b4a1c918546f777166df
        - registry.connect.redhat.com/cloudera/cloudera-streams-messaging-kubernetes-operator-bundle@sha256:e7c79d2e6b21ce423d0199316012ccde1ccf16da412da66e4a36c54539aac81d
        - container.repository.cloudera.com/cloudera/kafka-operator@sha256:d6812fed7ddf139dab4d12cab6a0ae292e2d0619303b0ad72f2eef642e5a183a
        version: 1.4.0-b199
      entries:
      - name: cloudera-streams-messaging-kubernetes-operator.1.4.0-b199
        version: 1.4.0-b199
      name: 1.2.x
    - currentCSV: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.0.1.1.5",
                    "metadataVersion": "4.0-IV3",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.0.1.1.5",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
          createdAt: "2025-10-29 10:43:01"
          description: Run Apache Kafka with Cloudera Streams Messaging - Kubernetes
            Operator
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: A valid license and current subscription
            for Cloudera Streaming - Kubernetes Operator is required. Contact Cloudera
            sales to obtain a license. https://www.cloudera.com/contact-sales.html
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |-
          Cloudera Streams Messaging - Kubernetes Operator brings enterprise-grade Kafka deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of Kafka for enterprise deployments. To learn more about Cloudera Streaming, [read this deep dive blog post](https://blog.cloudera.com/accelerating-deployments-of-streaming-pipelines-announcing-data-in-motion-on-kubernetes/).

          Cloudera Streams Messaging - Kubernetes Operator consists of and ships multiple components including Apache Kafka, Cruise Control, Strimzi, and others.

          ## Installation prerequisites

          Installing Cloudera Streams Messaging - Kubernetes Operator requires a valid license as well as Cloudera credentials (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly. The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) where installation artifacts are pulled from.

          ### Obtaining a license

          Contact [Cloudera Sales](https://www.cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets

          Before installation, create  two `Secrets`. One containing your Cloudera credentials, and one containing your license. Cloudera credentials are provided to you together with your license.

          Create a `Secret` containing your Cloudera credentials.
          ```
          oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***] --docker-server=container.repository.cloudera.com
          ```
          Create a `Secret` containing your license.
          ```
          oc create secret generic csm-op-license --from-file=license.txt=[***PATH TO LICENSE FILE***]
          ```

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces where you plan to deploy Kafka or Kafka Connect clusters. Cloudera recommends that you create the `Secret` in all required namespaces before installation if you know what namespaces you will be using to deploy Kafka or Kafka Connect.

          ## Learn more
          To learn more, visit the [Cloudera Streams Messaging - Kubernetes Operator documentation library](https://docs.cloudera.com/csm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Streams Messaging - Kubernetes Operator, visit the following resources:

          * [Strimzi](https://strimzi.io/)
          * [Apache Kafka](https://kafka.apache.org/)
          * [Cruise Control](https://github.com/linkedin/cruise-control)
        displayName: Cloudera Streams Messaging - Kubernetes Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Documentation
          url: https://docs.cloudera.com/csm-operator
        - name: Cloudera Community Forum
          url: https://community.cloudera.com/
        - name: Cloudera Stream Processing
          url: https://www.cloudera.com/products/stream-processing.html
        - name: Contact Cloudera
          url: https://www.cloudera.com/contact-sales.html
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/kafka@sha256:9b03f2dc7a6646c4e4945cc8580d85437991ef7efb7d7460e7d811e8bf823ea5
        - container.repository.cloudera.com/cloudera/kafka@sha256:9e506b1e049c13e2a9143115cee59799702d0204b3bdc82f65426acbc46daecd
        - container.repository.cloudera.com/cloudera/maven-builder@sha256:acfab110978a5bd596da1541a2d414c846ec14c2cbe1343c6f720a86a8b127c4
        - registry.connect.redhat.com/cloudera/cloudera-streams-messaging-kubernetes-operator-bundle@sha256:33e545dac3749f733ff45af7780c24c3d07efebfcfbd07db5abfd3d246a4e24f
        - container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
        version: 1.5.0-b123
      entries:
      - name: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
        version: 1.5.0-b123
      name: 1.5.x
    - currentCSV: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.0.1.1.5",
                    "metadataVersion": "4.0-IV3",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.0.1.1.5",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
          createdAt: "2025-10-29 10:43:01"
          description: Run Apache Kafka with Cloudera Streams Messaging - Kubernetes
            Operator
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: A valid license and current subscription
            for Cloudera Streaming - Kubernetes Operator is required. Contact Cloudera
            sales to obtain a license. https://www.cloudera.com/contact-sales.html
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |-
          Cloudera Streams Messaging - Kubernetes Operator brings enterprise-grade Kafka deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of Kafka for enterprise deployments. To learn more about Cloudera Streaming, [read this deep dive blog post](https://blog.cloudera.com/accelerating-deployments-of-streaming-pipelines-announcing-data-in-motion-on-kubernetes/).

          Cloudera Streams Messaging - Kubernetes Operator consists of and ships multiple components including Apache Kafka, Cruise Control, Strimzi, and others.

          ## Installation prerequisites

          Installing Cloudera Streams Messaging - Kubernetes Operator requires a valid license as well as Cloudera credentials (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly. The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) where installation artifacts are pulled from.

          ### Obtaining a license

          Contact [Cloudera Sales](https://www.cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets

          Before installation, create  two `Secrets`. One containing your Cloudera credentials, and one containing your license. Cloudera credentials are provided to you together with your license.

          Create a `Secret` containing your Cloudera credentials.
          ```
          oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***] --docker-server=container.repository.cloudera.com
          ```
          Create a `Secret` containing your license.
          ```
          oc create secret generic csm-op-license --from-file=license.txt=[***PATH TO LICENSE FILE***]
          ```

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces where you plan to deploy Kafka or Kafka Connect clusters. Cloudera recommends that you create the `Secret` in all required namespaces before installation if you know what namespaces you will be using to deploy Kafka or Kafka Connect.

          ## Learn more
          To learn more, visit the [Cloudera Streams Messaging - Kubernetes Operator documentation library](https://docs.cloudera.com/csm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Streams Messaging - Kubernetes Operator, visit the following resources:

          * [Strimzi](https://strimzi.io/)
          * [Apache Kafka](https://kafka.apache.org/)
          * [Cruise Control](https://github.com/linkedin/cruise-control)
        displayName: Cloudera Streams Messaging - Kubernetes Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Documentation
          url: https://docs.cloudera.com/csm-operator
        - name: Cloudera Community Forum
          url: https://community.cloudera.com/
        - name: Cloudera Stream Processing
          url: https://www.cloudera.com/products/stream-processing.html
        - name: Contact Cloudera
          url: https://www.cloudera.com/contact-sales.html
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/kafka@sha256:9e506b1e049c13e2a9143115cee59799702d0204b3bdc82f65426acbc46daecd
        - container.repository.cloudera.com/cloudera/maven-builder@sha256:acfab110978a5bd596da1541a2d414c846ec14c2cbe1343c6f720a86a8b127c4
        - registry.connect.redhat.com/cloudera/cloudera-streams-messaging-kubernetes-operator-bundle@sha256:33e545dac3749f733ff45af7780c24c3d07efebfcfbd07db5abfd3d246a4e24f
        - container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
        - container.repository.cloudera.com/cloudera/kafka@sha256:9b03f2dc7a6646c4e4945cc8580d85437991ef7efb7d7460e7d811e8bf823ea5
        version: 1.5.0-b123
      entries:
      - name: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
        version: 1.5.0-b123
      name: stable
    defaultChannel: stable
    packageName: cloudera-streams-messaging-kubernetes-operator
    provider:
      name: Cloudera
      url: https://cloudera.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Intel® Corporation
      provider-url: https://intel.com
    name: intel-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: network-operator.v1.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l2"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L2",
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              },
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l3"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L3",
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              },
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l3-metrics"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L3",
                    "networkMetrics": true,
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              },
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l3-pfc-lldpad"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "enableLLDPAD": true,
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L3",
                    "pfcPriorities": "11110000",
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-11-19T08:53:19Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NetworkClusterPolicy is the Schema for the networkclusterpolicies
              API
            displayName: Network Cluster Policy
            kind: NetworkClusterPolicy
            name: networkclusterpolicies.intel.com
            version: v1alpha1
        description: |-
          Intel Network Operator allows automatic configuring and easier use
          of RDMA NICs with Intel AI accelerators in Kubernetes.
        displayName: Intel Network Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gaudi
        - gpu
        - intel
        - rdma
        - scaleout
        links:
        - name: Network Operator
          url: https://github.com/intel/network-operator
        maintainers:
        - email: patrik.flykt@intel.com
          name: Patrik Flykt
        - email: tuomas.katila@intel.com
          name: Tuomas Katila
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Intel® Corporation
          url: https://intel.com
        relatedImages:
        - registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719
        - registry.connect.redhat.com/intel/intel-network-operator-bundle@sha256:817a1cb4c2aa86b0d0268b04a500c238a604f15d54fc2d70b1ca9ca9736e5b2b
        - registry.connect.redhat.com/intel/intel-network-operator@sha256:3ea3d164de467117dfa7c5de3f8a46f130fc96e3d26ca46429b536710a60e4f8
        version: 1.1.1
      entries:
      - name: network-operator.v1.1.1
        version: 1.1.1
      name: alpha
    defaultChannel: alpha
    packageName: intel-network-operator
    provider:
      name: Intel® Corporation
      url: https://intel.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: klusterlet
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: klusterlet.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.open-cluster-management.io/v1",
                "kind": "Klusterlet",
                "metadata": {
                  "name": "klusterlet"
                },
                "spec": {
                  "clusterName": "cluster1",
                  "deployOption": {
                    "mode": "Singleton"
                  },
                  "externalServerURLs": [
                    {
                      "url": "https://localhost"
                    }
                  ],
                  "imagePullSpec": "quay.io/open-cluster-management/registration-operator:v0.13.1",
                  "namespace": "open-cluster-management-agent",
                  "registrationImagePullSpec": "quay.io/open-cluster-management/registration:v0.13.1",
                  "workImagePullSpec": "quay.io/open-cluster-management/work:v0.13.1"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/registration-operator:v0.13.1
          createdAt: "2024-04-10T15:27:49Z"
          description: Manages the installation and upgrade of the Klusterlet.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management-io/ocm
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Klusterlet defines the configurations of agents running on
              the managed cluster
            displayName: Klusterlet
            kind: Klusterlet
            name: klusterlets.operator.open-cluster-management.io
            version: v1
        description: "Note: This operator will stop updating, please use the latest
          operator in OperatorHub.io https://operatorhub.io/operator/klusterlet. \n\nThe
          Klusterlet proivdes the registation to the Hub clusters as a managed cluster.
          This operator supports the installation and upgrade of Klusterlet.\n\n##
          Prerequisites\nYou need a Hub cluster which has installed ClusterManager.\n\n##
          How to Install\n* Install Klusterlet operator by following instructions
          in top right button `Install`.\n* Optional: Create an agent namespace used
          to deploy Klusterlet. The default namespace is `open-cluster-management-agent`.\n*
          Create a secret `bootstrap-hub-kubeconfig` with the kubeconfig file of hub
          cluster in the agent namespace.\n\n  ```\n  $ kubectl create secret generic
          bootstrap-hub-kubeconfig --from-file=kubeconfig=<kubeconfig file of hub
          clsuter> -n <agent namespace>\n  ```\n\n* Create an instance of the Klusterlet
          resource to install the Klusterlet.\n\nThe pods of Klusterlet are created
          in agent namespace.\n\n```\n$ kubectl get pods -n open-cluster-management-agent\n
          \ NAME                                READY   STATUS    RESTARTS   AGE\n
          \ klusterlet-agent-55c6574876-nfxm9   1/1     Running   0          8m38s\n```\n\nThere
          is a ManagedCluster created in the Hub cluster.\n\n```\n$ kubectl get managedclusters.cluster.open-cluster-management.io\nNAME
          \                  HUB ACCEPTED   MANAGED CLUSTER URLS     JOINED   AVAILABLE
          \  AGE\ncluster1               false                                                        27s\n```\n"
        displayName: Klusterlet
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open-cluster-management
        - Klusterlet
        links:
        - name: Registration Operator
          url: https://github.com/open-cluster-management-io/ocm
        maintainers:
        - email: zyin@redhat.com
          name: Zhiwei Yin
        - email: deads@redhat.com
          name: David Eads
        - email: jqiu@redhat.com
          name: Jian Qiu
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/community-operator-pipeline-prod/klusterlet@sha256:9efef9a034c9f12505a0d81bc9697c4a3ab7e3d05d1e7aaa4180490d70ddf6a2
        - quay.io/open-cluster-management/registration-operator:v0.13.1
        version: 0.13.1
      entries:
      - name: klusterlet.v0.13.1
        version: 0.13.1
      - name: klusterlet.v0.13.0
        version: 0.13.0
      - name: klusterlet.v0.12.0
        version: 0.12.0
      - name: klusterlet.v0.11.0
        version: 0.11.0
      - name: klusterlet.v0.10.0
        version: 0.10.0
      - name: klusterlet.v0.9.1
        version: 0.9.1
      - name: klusterlet.v0.8.0
        version: 0.8.0
      - name: klusterlet.v0.7.0
        version: 0.7.0
      - name: klusterlet.v0.6.0
        version: 0.6.0
      - name: klusterlet.v0.5.0
        version: 0.5.0
      - name: klusterlet.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: klusterlet
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Grafana Tempo Operator SIG
      provider-url: ""
    name: tempo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tempo-operator.v0.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoMonolithic",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "jaegerui": {
                    "enabled": true,
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "resources": {
                    "limits": {
                      "cpu": "2",
                      "memory": "2Gi"
                    }
                  },
                  "storage": {
                    "traces": {
                      "backend": "memory"
                    }
                  }
                }
              },
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoStack",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "resources": {
                    "total": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2Gi"
                      }
                    }
                  },
                  "storage": {
                    "secret": {
                      "name": "my-storage-secret",
                      "type": "s3"
                    }
                  },
                  "storageSize": "1Gi",
                  "template": {
                    "queryFrontend": {
                      "jaegerQuery": {
                        "enabled": true,
                        "ingress": {
                          "type": "route"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          containerImage: ghcr.io/grafana/tempo-operator/tempo-operator:v0.19.0
          createdAt: "2025-11-20T16:37:25Z"
          description: Create and manage deployments of Tempo, a high-scale distributed
            tracing backend.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: tempo-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/grafana/tempo-operator
          support: Grafana Tempo Operator SIG
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TempoMonolithic manages a Tempo deployment in monolithic
              mode.
            displayName: TempoMonolithic
            kind: TempoMonolithic
            name: tempomonolithics.tempo.grafana.com
            version: v1alpha1
          - description: TempoStack manages a Tempo deployment in microservices mode.
            displayName: TempoStack
            kind: TempoStack
            name: tempostacks.tempo.grafana.com
            version: v1alpha1
        description: |-
          Tempo is an open source, easy-to-use, and high-scale distributed tracing backend.
          It can ingest common open source tracing protocols including Jaeger, Zipkin, and OpenTelemetry and requires only object storage to operate.
          Please refer to the [Tempo documentation](https://grafana.com/docs/tempo/latest/) for more information about Tempo.

          The Community Tempo Operator can manage Tempo deployments in Microservices mode (`TempoStack` CR) and Monolithic mode (`TempoMonolithic` CR).

          ### Operator features
          * **Resource Limits** - Specify overall resource requests and limits in the `TempoStack` CR; the operator assigns fractions of it to each component
          * **AuthN and AuthZ** - Supports OpenID Control (OIDC) and role-based access control (RBAC)
          * **Managed upgrades** - Updating the operator will automatically update all managed Tempo clusters
          * **Multitenancy** - Multiple tenants can send traces to the same Tempo cluster
          * **mTLS** - Communication between the Tempo components can be secured via mTLS
          * **Jaeger UI** - Traces can be visualized in Jaeger UI and exposed via Ingress or OpenShift Route
          * **Observability** - The operator and `TempoStack` operands expose telemetry (metrics, traces) and integrate with Prometheus `ServiceMonitor` and `PrometheusRule`

          ### Prerequisites
          `TempoStack` requires object storage to store its traces. `TempoMonolithic` can store traces in-memory, in a Persistent Volume and in object storage.
          Please ensure that an object storage solution is available and configured.
        displayName: Community Tempo Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tempo
        - tracing
        - observability
        - monitoring
        - database
        links:
        - name: Tempo Operator
          url: https://github.com/grafana/tempo-operator
        maintainers:
        - email: ruben.vp8510@gmail.com
          name: Ruben Vargas
        - email: p.loffay@gmail.com
          name: Pavol Loffay
        - email: bongartz@klimlive.de
          name: Benedikt Bongartz
        - email: andreas@gerstmayr.me
          name: Andreas Gerstmayr
        - email: iblancas@redhat.com
          name: Israel Blancas Alvarez
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Grafana Tempo Operator SIG
        relatedImages:
        - quay.io/observatorium/api:main-2025-08-25-7489eb0
        - quay.io/observatorium/opa-openshift:main-2025-06-16-ecdeca0
        - quay.io/openshift/origin-oauth-proxy:4.14
        - docker.io/grafana/tempo-query:2.9.0
        - docker.io/grafana/tempo:2.9.0
        - docker.io/jaegertracing/jaeger-query:1.68.0
        - ghcr.io/grafana/tempo-operator/tempo-operator:v0.19.0
        - quay.io/community-operator-pipeline-prod/tempo-operator@sha256:5c33104814fc9a1b1cdfacd5dca1234bfd17881820583ec1fd462a02ce83d272
        version: 0.19.0
      entries:
      - name: tempo-operator.v0.19.0
        version: 0.19.0
      - name: tempo-operator.v0.18.0
        version: 0.18.0
      - name: tempo-operator.v0.17.1
        version: 0.17.1
      - name: tempo-operator.v0.15.3
        version: 0.15.3
      - name: tempo-operator.v0.15.2
        version: 0.15.2
      - name: tempo-operator.v0.15.1
        version: 0.15.1
      - name: tempo-operator.v0.15.0
        version: 0.15.0
      - name: tempo-operator.v0.14.2
        version: 0.14.2
      - name: tempo-operator.v0.14.1
        version: 0.14.1
      - name: tempo-operator.v0.14.0
        version: 0.14.0
      - name: tempo-operator.v0.13.0
        version: 0.13.0
      - name: tempo-operator.v0.12.0
        version: 0.12.0
      - name: tempo-operator.v0.11.1
        version: 0.11.1
      - name: tempo-operator.v0.11.0
        version: 0.11.0
      - name: tempo-operator.v0.10.0
        version: 0.10.0
      - name: tempo-operator.v0.9.0
        version: 0.9.0
      - name: tempo-operator.v0.8.0
        version: 0.8.0
      - name: tempo-operator.v0.7.0
        version: 0.7.0
      - name: tempo-operator.v0.6.0
        version: 0.6.0
      - name: tempo-operator.v0.5.0
        version: 0.5.0
      - name: tempo-operator.v0.4.0
        version: 0.4.0
      - name: tempo-operator.v0.3.0
        version: 0.3.0
      - name: tempo-operator.v0.2.0
        version: 0.2.0
      - name: tempo-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: tempo-operator
    provider:
      name: Grafana Tempo Operator SIG
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: ansible-automation-platform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aap-operator.v2.5.0-0.1764945388
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727257740 <2.5.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation-Controller
              - Automation-Hub
              - EDA
              - Ansible-Lightspeed
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Ansible lightspeed: Deploy and manage the lifecycle of an ansible lightspeed application.
            * Automation gateway - Unify the management of AAP from a central location.
            * Automation controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private automation hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Platform resource operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-20

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console. For example, change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.
          If you originally installed the AAP Operator from the stable-2.4 channel for example, you will want to upgrade to the next minor version by selecting the stable-2.6 channel.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place.

          #### Create the AnsibleAutomationPlatform custom resource

          Once that is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: myaap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8@sha256:64d15cd62d59793fada48ef0ccf776a4de191aaa45e01d693df8e6af2fe99c46
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:a2e2211f218d13fea1c2bd232a87378f3d9f656839e48c72d93f4f8afc3ea702
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8-operator@sha256:8b3006af83b25c2e0e8dbcae1af781263bae4f85b78a1c499cd971fb6e6e62df
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8-operator@sha256:e4a98a6721ef18a6d412c1e9e2f48ab98852e8ff957cf910225d7ca1bc0bbbed
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-rhel8-operator@sha256:5f0649d44f18faa996d7ed880137b38a2abcac2cbdbdb9d937ad52fb0b53d936
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8@sha256:844b455cd0be699589d5cb54f0b153747949d2daa476e3b6b77851c2d64241ab
        - registry.redhat.io/ansible-automation-platform-25/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        version: 2.5.0+0.1764945388
      entries:
      - name: aap-operator.v2.5.0-0.1727240614
        version: 2.5.0+0.1727240614
      - name: aap-operator.v2.5.0-0.1727875185
        version: 2.5.0+0.1727875185
      - name: aap-operator.v2.5.0-0.1728520175
        version: 2.5.0+0.1728520175
      - name: aap-operator.v2.5.0-0.1729741547
        version: 2.5.0+0.1729741547
      - name: aap-operator.v2.5.0-0.1731456196
        version: 2.5.0+0.1731456196
      - name: aap-operator.v2.5.0-0.1733193164
        version: 2.5.0+0.1733193164
      - name: aap-operator.v2.5.0-0.1733969526
        version: 2.5.0+0.1733969526
      - name: aap-operator.v2.5.0-0.1736893446
        version: 2.5.0+0.1736893446
      - name: aap-operator.v2.5.0-0.1737101025
        version: 2.5.0+0.1737101025
      - name: aap-operator.v2.5.0-0.1737675968
        version: 2.5.0+0.1737675968
      - name: aap-operator.v2.5.0-0.1739248042
        version: 2.5.0+0.1739248042
      - name: aap-operator.v2.5.0-0.1740093573
        version: 2.5.0+0.1740093573
      - name: aap-operator.v2.5.0-0.1740773472
        version: 2.5.0+0.1740773472
      - name: aap-operator.v2.5.0-0.1741368605
        version: 2.5.0+0.1741368605
      - name: aap-operator.v2.5.0-0.1742434024
        version: 2.5.0+0.1742434024
      - name: aap-operator.v2.5.0-0.1743660124
        version: 2.5.0+0.1743660124
      - name: aap-operator.v2.5.0-0.1746137767
        version: 2.5.0+0.1746137767
      - name: aap-operator.v2.5.0-0.1747343762
        version: 2.5.0+0.1747343762
      - name: aap-operator.v2.5.0-0.1749074128
        version: 2.5.0+0.1749074128
      - name: aap-operator.v2.5.0-0.1749604727
        version: 2.5.0+0.1749604727
      - name: aap-operator.v2.5.0-0.1750901111
        version: 2.5.0+0.1750901111
      - name: aap-operator.v2.5.0-0.1753900156
        version: 2.5.0+0.1753900156
      - name: aap-operator.v2.5.0-0.1755835086
        version: 2.5.0+0.1755835086
      - name: aap-operator.v2.5.0-0.1758147230
        version: 2.5.0+0.1758147230
      - name: aap-operator.v2.5.0-0.1761050204
        version: 2.5.0+0.1761050204
      - name: aap-operator.v2.5.0-0.1764945388
        version: 2.5.0+0.1764945388
      name: stable-2.5
    - currentCSV: aap-operator.v2.5.0-0.1764945371
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727259094 <2.5.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation-Controller
              - Automation-Hub
              - EDA
              - Ansible-Lightspeed
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Ansible lightspeed: Deploy and manage the lifecycle of an ansible lightspeed application.
            * Automation gateway - Unify the management of AAP from a central location.
            * Automation controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private automation hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Platform resource operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-20

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console. For example, change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.
          If you originally installed the AAP Operator from the stable-2.4 channel for example, you will want to upgrade to the next minor version by selecting the stable-2.6 channel.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place.

          #### Create the AnsibleAutomationPlatform custom resource

          Once that is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: myaap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:fb284b670f3c4c28ac3bcc6a16d20db5ec38165750baf6a03f1d3b7cc316027f
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ansible-automation-platform-25/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - registry.redhat.io/ansible-automation-platform-25/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8@sha256:844b455cd0be699589d5cb54f0b153747949d2daa476e3b6b77851c2d64241ab
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8@sha256:64d15cd62d59793fada48ef0ccf776a4de191aaa45e01d693df8e6af2fe99c46
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-rhel8-operator@sha256:5f0649d44f18faa996d7ed880137b38a2abcac2cbdbdb9d937ad52fb0b53d936
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8-operator@sha256:8b3006af83b25c2e0e8dbcae1af781263bae4f85b78a1c499cd971fb6e6e62df
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8-operator@sha256:e4a98a6721ef18a6d412c1e9e2f48ab98852e8ff957cf910225d7ca1bc0bbbed
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        version: 2.5.0+0.1764945371
      entries:
      - name: aap-operator.v2.5.0-0.1727241223
        version: 2.5.0+0.1727241223
      - name: aap-operator.v2.5.0-0.1727875896
        version: 2.5.0+0.1727875896
      - name: aap-operator.v2.5.0-0.1728520687
        version: 2.5.0+0.1728520687
      - name: aap-operator.v2.5.0-0.1729742145
        version: 2.5.0+0.1729742145
      - name: aap-operator.v2.5.0-0.1731456854
        version: 2.5.0+0.1731456854
      - name: aap-operator.v2.5.0-0.1733193761
        version: 2.5.0+0.1733193761
      - name: aap-operator.v2.5.0-0.1733970210
        version: 2.5.0+0.1733970210
      - name: aap-operator.v2.5.0-0.1736894220
        version: 2.5.0+0.1736894220
      - name: aap-operator.v2.5.0-0.1737101781
        version: 2.5.0+0.1737101781
      - name: aap-operator.v2.5.0-0.1737676792
        version: 2.5.0+0.1737676792
      - name: aap-operator.v2.5.0-0.1739248649
        version: 2.5.0+0.1739248649
      - name: aap-operator.v2.5.0-0.1740094176
        version: 2.5.0+0.1740094176
      - name: aap-operator.v2.5.0-0.1740774104
        version: 2.5.0+0.1740774104
      - name: aap-operator.v2.5.0-0.1741369251
        version: 2.5.0+0.1741369251
      - name: aap-operator.v2.5.0-0.1742434756
        version: 2.5.0+0.1742434756
      - name: aap-operator.v2.5.0-0.1743660958
        version: 2.5.0+0.1743660958
      - name: aap-operator.v2.5.0-0.1746138413
        version: 2.5.0+0.1746138413
      - name: aap-operator.v2.5.0-0.1747345055
        version: 2.5.0+0.1747345055
      - name: aap-operator.v2.5.0-0.1749074612
        version: 2.5.0+0.1749074612
      - name: aap-operator.v2.5.0-0.1749607543
        version: 2.5.0+0.1749607543
      - name: aap-operator.v2.5.0-0.1750901870
        version: 2.5.0+0.1750901870
      - name: aap-operator.v2.5.0-0.1753900674
        version: 2.5.0+0.1753900674
      - name: aap-operator.v2.5.0-0.1755835623
        version: 2.5.0+0.1755835623
      - name: aap-operator.v2.5.0-0.1758147817
        version: 2.5.0+0.1758147817
      - name: aap-operator.v2.5.0-0.1761050855
        version: 2.5.0+0.1761050855
      - name: aap-operator.v2.5.0-0.1764945371
        version: 2.5.0+0.1764945371
      name: stable-2.5-cluster-scoped
    - currentCSV: aap-operator.v2.6.0-0.1764966733
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727257740 <2.6.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation Controller
              - Automation Hub
              - EDA
              - Ansible Lightspeed
              - Ansible MCP Server
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Ansible MCP Server.
            displayName: Ansible MCP Server
            kind: AnsibleMCPServer
            name: ansiblemcpservers.mcpserver.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Automation Gateway - Unify the management of AAP from a central location.
            * Automation Controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private Automation Hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Ansible Lightspeed: Deploy and manage the lifecycle of an Ansible Lightspeed application.
            * Platform Resource Operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner

          ## New in AAP 2.6 and 2.5

          In AAP 2.5, we are introducing a unified experience for all of the services provided in the Ansible Automation Platform. You can now manage content from Hub, rulebooks from EDA and automation jobs from Controller in a single pane.

          Instead of creating individual AutomationController, AutomationHub, and EDA custom resources, you will now instead create a single AnsibleAutomationPlatform custom resource.

          Ansible Lightspeed and it's integration with Watson Code Assistant is now available.  To read more about configuring it, please read https://red.ht/ansible-lightspeed-2x-docs.

          The managed database has been upgraded to PostgreSQL 15.


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-26

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console.

          **For customers on AAP 2.4:** Change the channel directly from `stable-2.4` to `stable-2.6` to upgrade directly to AAP 2.6, which will be released in October.

          **For customers on AAP 2.5:** Change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place. When upgrading from AAP 2.4 to 2.6, your external authentication configuration in Automation Controller will automatically be migrated to the new unified Platform UI.

          **Database:** AAP 2.6 continues to use PostgreSQL 15.

          #### Create the AnsibleAutomationPlatform custom resource (Required for upgrades from 2.4 only)

          **If upgrading from AAP 2.4:** Once the operator upgrade is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created.

          **If upgrading from AAP 2.5:** This step is not required as your AnsibleAutomationPlatform custom resource already exists.

          Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          Next, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda (lightspeed is disabled by default):


          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: aap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/ansible-automation-platform-26/hub-web-rhel9@sha256:285dd1aef3fff0c9e7fc9c61e3144307d8ea890ce21f87795c8e0e203ebf56e9
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-chatbot-rhel9@sha256:64fbb98e583452568482f059127defbca2257155ff920ab10c77aaccd32d6adb
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        - registry.redhat.io/ansible-automation-platform-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:88d59edb37c5c1588e22623e1a0c8c2e8bd793c52f2f8fcbedf8d6c4697874e8
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/ansible-automation-platform-26/gateway-proxy-rhel9@sha256:0cee3b756e3df8b9fa583f198dc4dec3dfe281c8a041455bc1bc5a748f1302d0
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9-operator@sha256:258d532cb566c43aa876d28435323bb7e80061f826c47669eb2d6ef348b996fd
        - registry.redhat.io/ansible-automation-platform-26/mcp-tools-rhel9@sha256:af2a28820846c524bb6828c6d6caf7929cbb198f303fbd8d9d0b940dd8226b9d
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        - registry.redhat.io/ansible-automation-platform-26/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9-operator@sha256:53ae38609933ea51171397af3af40f69165f293c621723f71ba9a48f72003e04
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-ui-rhel9@sha256:195a08ebffae71c3d37414d983dc9291bbe2d33a4a1f2d716654a2f7b67d2026
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9@sha256:3d947d906bc1cc146256877e0b458021bed8496a8e89a7628359c4d92990d2a7
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9@sha256:47942913af0c6782621af11824b6c8725e52864b52f21b164398cbf7a636212d
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9@sha256:d77101384b94a0306ae9b1dbaf8be6e5ee9eeb5c2e57ebe8189a2e2bac9fa9f7
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9-operator@sha256:5cdb95b53c3fe5363d4f74883410a435a2dd3f39e5be7af1130137f582ab4af2
        version: 2.6.0+0.1764966733
      entries:
      - name: aap-operator.v2.6.0-0.1758684783
        version: 2.6.0+0.1758684783
      - name: aap-operator.v2.6.0-0.1759764484
        version: 2.6.0+0.1759764484
      - name: aap-operator.v2.6.0-0.1760139263
        version: 2.6.0+0.1760139263
      - name: aap-operator.v2.6.0-0.1761281301
        version: 2.6.0+0.1761281301
      - name: aap-operator.v2.6.0-0.1762261205
        version: 2.6.0+0.1762261205
      - name: aap-operator.v2.6.0-0.1763137334
        version: 2.6.0+0.1763137334
      - name: aap-operator.v2.6.0-0.1764966733
        version: 2.6.0+0.1764966733
      name: stable-2.6
    - currentCSV: aap-operator.v2.6.0-0.1764966767
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727259094 <2.6.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation Controller
              - Automation Hub
              - EDA
              - Ansible Lightspeed
              - Ansible MCP Server
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Ansible MCP Server.
            displayName: Ansible MCP Server
            kind: AnsibleMCPServer
            name: ansiblemcpservers.mcpserver.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Automation Gateway - Unify the management of AAP from a central location.
            * Automation Controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private Automation Hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Ansible Lightspeed: Deploy and manage the lifecycle of an Ansible Lightspeed application.
            * Platform Resource Operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner

          ## New in AAP 2.6 and 2.5

          In AAP 2.5, we are introducing a unified experience for all of the services provided in the Ansible Automation Platform. You can now manage content from Hub, rulebooks from EDA and automation jobs from Controller in a single pane.

          Instead of creating individual AutomationController, AutomationHub, and EDA custom resources, you will now instead create a single AnsibleAutomationPlatform custom resource.

          Ansible Lightspeed and it's integration with Watson Code Assistant is now available.  To read more about configuring it, please read https://red.ht/ansible-lightspeed-2x-docs.

          The managed database has been upgraded to PostgreSQL 15.


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-26

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console.

          **For customers on AAP 2.4:** Change the channel directly from `stable-2.4` to `stable-2.6` to upgrade directly to AAP 2.6, which will be released in October.

          **For customers on AAP 2.5:** Change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place. When upgrading from AAP 2.4 to 2.6, your external authentication configuration in Automation Controller will automatically be migrated to the new unified Platform UI.

          **Database:** AAP 2.6 continues to use PostgreSQL 15.

          #### Create the AnsibleAutomationPlatform custom resource (Required for upgrades from 2.4 only)

          **If upgrading from AAP 2.4:** Once the operator upgrade is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created.

          **If upgrading from AAP 2.5:** This step is not required as your AnsibleAutomationPlatform custom resource already exists.

          Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          Next, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda (lightspeed is disabled by default):


          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: aap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform-26/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9@sha256:47942913af0c6782621af11824b6c8725e52864b52f21b164398cbf7a636212d
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9-operator@sha256:5cdb95b53c3fe5363d4f74883410a435a2dd3f39e5be7af1130137f582ab4af2
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9-operator@sha256:258d532cb566c43aa876d28435323bb7e80061f826c47669eb2d6ef348b996fd
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-ui-rhel9@sha256:195a08ebffae71c3d37414d983dc9291bbe2d33a4a1f2d716654a2f7b67d2026
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9@sha256:d77101384b94a0306ae9b1dbaf8be6e5ee9eeb5c2e57ebe8189a2e2bac9fa9f7
        - registry.redhat.io/ansible-automation-platform-26/mcp-tools-rhel9@sha256:af2a28820846c524bb6828c6d6caf7929cbb198f303fbd8d9d0b940dd8226b9d
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/ansible-automation-platform-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-chatbot-rhel9@sha256:64fbb98e583452568482f059127defbca2257155ff920ab10c77aaccd32d6adb
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:e52d16eb8343528b0d92860486ca3944e6f49fc9d8a2057c247e387bc3685abe
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9-operator@sha256:53ae38609933ea51171397af3af40f69165f293c621723f71ba9a48f72003e04
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9@sha256:3d947d906bc1cc146256877e0b458021bed8496a8e89a7628359c4d92990d2a7
        - registry.redhat.io/ansible-automation-platform-26/hub-web-rhel9@sha256:285dd1aef3fff0c9e7fc9c61e3144307d8ea890ce21f87795c8e0e203ebf56e9
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/ansible-automation-platform-26/gateway-proxy-rhel9@sha256:0cee3b756e3df8b9fa583f198dc4dec3dfe281c8a041455bc1bc5a748f1302d0
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        version: 2.6.0+0.1764966767
      entries:
      - name: aap-operator.v2.6.0-0.1758685241
        version: 2.6.0+0.1758685241
      - name: aap-operator.v2.6.0-0.1759764962
        version: 2.6.0+0.1759764962
      - name: aap-operator.v2.6.0-0.1760139657
        version: 2.6.0+0.1760139657
      - name: aap-operator.v2.6.0-0.1761281346
        version: 2.6.0+0.1761281346
      - name: aap-operator.v2.6.0-0.1762261209
        version: 2.6.0+0.1762261209
      - name: aap-operator.v2.6.0-0.1763137355
        version: 2.6.0+0.1763137355
      - name: aap-operator.v2.6.0-0.1764966767
        version: 2.6.0+0.1764966767
      name: stable-2.6-cluster-scoped
    defaultChannel: stable-2.6
    packageName: ansible-automation-platform-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Nokia
      provider-url: https://docs.eda.dev
    name: eda-k8s-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eda-openshift-operator.v4.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "config.eda.nokia.com/v1",
                "kind": "ConnectControllerConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "operator"
                  },
                  "name": "connectcontrollerconfig-sample",
                  "namespace": "eda-connect-k8s"
                },
                "spec": {
                  "connectPluginName": "",
                  "controllerImagePullSecret": "",
                  "edaNamespace": "eda",
                  "heartBeat": "",
                  "logLevel": "",
                  "skipTLSVerify": false,
                  "tlsCertificateData": "",
                  "tlsEnabled": true
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:c43a7fa7475db83011cc08b728982511fc0279a259e1aacc8ddde9e15f947725
          createdAt: "2025-06-10T15:47:27Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: eda-connect-k8s
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["connectnetworkattachmentstatuses.connect.eda.nokia.com",
            connectnetworkdefinitions.connect.eda.nokia.com]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConnectNetworkAttachmentStatus is the Schema for the connectnetworkattachmentstatuses
              API
            displayName: Connect NetworkAttachment Status
            kind: ConnectNetworkAttachmentStatus
            name: connectnetworkattachmentstatuses.connect.eda.nokia.com
            version: v1
          - description: ConnectNetworkDefinition is the Schema for the connectnetworkdefinitions
              API
            displayName: Connect Network Definition
            kind: ConnectNetworkDefinition
            name: connectnetworkdefinitions.connect.eda.nokia.com
            version: v1
          - description: ConnectControllerConfig is the Schema for the connectcontrollerconfigs
              API
            displayName: Connect Controller Config
            kind: ConnectControllerConfig
            name: connectcontrollerconfigs.config.eda.nokia.com
            version: v1
        description: "K8s operator to deploy eda connect controller to configure EDA
          Connect.\eb"
        displayName: eda-openshift-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - EDA Connect
        - K8s Controller
        - EDA K8s Controller Operator
        links:
        - name: EDA Connect K8s Controller Operator
          url: https://docs.eda.dev/connect/openshift-plugin/
        maintainers:
        - email: support@nokia.com
          name: nokia
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Nokia
          url: https://docs.eda.dev
        relatedImages:
        - ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:c43a7fa7475db83011cc08b728982511fc0279a259e1aacc8ddde9e15f947725
        - registry.connect.redhat.com/nokia-ni/eda-openshift-operator@sha256:a5645cb55c3e6c22655c6c8606b9bd51a49db44aecc3fe52e0eb80cca83d17c4
        version: 4.0.0
      entries:
      - name: eda-openshift-operator.v4.0.0
        version: 4.0.0
      name: alpha
    - currentCSV: eda-openshift-operator.v5.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "config.eda.nokia.com/v1",
                "kind": "ConnectControllerConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "operator"
                  },
                  "name": "connectcontrollerconfig-sample",
                  "namespace": "eda-connect-k8s"
                },
                "spec": {
                  "connectPluginName": "",
                  "controllerImagePullSecret": "",
                  "edaNamespace": "eda",
                  "heartBeat": "",
                  "logLevel": "",
                  "skipTLSVerify": false,
                  "tlsCertificateData": "",
                  "tlsEnabled": true
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:1a025d30e46cebaf804494dbb6d5140cb0e2fe6c83203177c4829bf0bcd94273
          createdAt: "2025-06-10T15:47:27Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: eda-connect-k8s
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["connectnetworkattachmentstatuses.connect.eda.nokia.com",
            connectnetworkdefinitions.connect.eda.nokia.com]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConnectNetworkAttachmentStatus is the Schema for the connectnetworkattachmentstatuses
              API
            displayName: Connect NetworkAttachment Status
            kind: ConnectNetworkAttachmentStatus
            name: connectnetworkattachmentstatuses.connect.eda.nokia.com
            version: v1
          - description: ConnectNetworkDefinition is the Schema for the connectnetworkdefinitions
              API
            displayName: Connect Network Definition
            kind: ConnectNetworkDefinition
            name: connectnetworkdefinitions.connect.eda.nokia.com
            version: v1
          - description: ConnectControllerConfig is the Schema for the connectcontrollerconfigs
              API
            displayName: Connect Controller Config
            kind: ConnectControllerConfig
            name: connectcontrollerconfigs.config.eda.nokia.com
            version: v1
        description: "K8s operator to deploy eda connect controller to configure EDA
          Connect.\eb"
        displayName: eda-openshift-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - EDA Connect
        - K8s Controller
        - EDA K8s Controller Operator
        links:
        - name: EDA Connect K8s Controller Operator
          url: https://docs.eda.dev/connect/openshift-plugin/
        maintainers:
        - email: support@nokia.com
          name: nokia
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Nokia
          url: https://docs.eda.dev
        relatedImages:
        - ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:1a025d30e46cebaf804494dbb6d5140cb0e2fe6c83203177c4829bf0bcd94273
        - registry.connect.redhat.com/nokia-ni/eda-openshift-operator@sha256:993f64a35cba84eafe2bc365e09770048f611a4e74cc2a4bb143de7675ed3880
        version: 5.0.0
      entries:
      - name: eda-openshift-operator.v5.0.0
        version: 5.0.0
      name: stable
    defaultChannel: alpha
    packageName: eda-k8s-operator
    provider:
      name: Nokia
      url: https://docs.eda.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: kubeturbo-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubeturbo-operator.v8.18.40-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5-beta.1 <8.18.40-beta.1'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBM Turbonomic software automates and simultaneously optimizes
              performance, compliance, and cost in real time. Turbonomic discovers
              and automates resource optimization for the complete application stack.
              Applications are continually resourced to perform while satisfying technical
              and business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
          - kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Optimization for Kubernetes
          IBM Turbonomic software automates and simultaneously optimizes performance, compliance, and cost in real time.
          Turbonomic discovers and automates resource optimization for the complete application stack. Applications are continually resourced to perform while satisfying technical and business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (proactive rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          Turbonomic assures application performance by giving workloads the resources they need when they need them.

          ### How Does It Work?
          Turbonomic uses a client agent called — KubeTurbo — that runs in your cluster to discover, monitor and optimize resource usage within your environment.
          KubeTurbo runs together with the default Kubernetes scheduler and sends data back to the Turbonomic for analysis.
          Turbonomic determines the right actions that drive continuous health for your workloads and your cluster.

          Turbonomic discovers Red Hat OpenShift Virtualization resources through a new or existing target configuration with Red Hat OpenShift. For more information refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=targets-red-hat-openshift-virtualization)

          ### Get Started
          Please follow the [Kubeturbo Documentation Page](https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets) for all deployment options and an overview of typical use cases.

          ### Known Issues
          For known issues refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=notes-known-issues)
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Kubeturbo Documentation Page
          url: https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets
        - name: Kubeturbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
        - name: IBM Turbonomic Application Resource Management
          url: https://www.ibm.com/products/turbonomic
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/kubeturbo-operator@sha256:177745cccc3d52fe82340174f39be9ab39118f661baa0b79e8719f951b13f1fe
        - registry.connect.redhat.com/turbonomic/kubeturbo-operator-bundle@sha256:69e62d414a3fa27a0c06c92b425bdbc4034d9157953668a11be1a4f150a4e9bb
        version: 8.18.40-beta.1
      entries:
      - name: kubeturbo-operator.v8.18.40-beta.1
        version: 8.18.40-beta.1
      name: beta
    - currentCSV: kubeturbo-operator.v8.18.30
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5 <8.18.30'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBM Turbonomic software automates and simultaneously optimizes
              performance, compliance, and cost in real time. Turbonomic discovers
              and automates resource optimization for the complete application stack.
              Applications are continually resourced to perform while satisfying technical
              and business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
          - kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Optimization for Kubernetes
          IBM Turbonomic software automates and simultaneously optimizes performance, compliance, and cost in real time.
          Turbonomic discovers and automates resource optimization for the complete application stack. Applications are continually resourced to perform while satisfying technical and business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (proactive rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          Turbonomic assures application performance by giving workloads the resources they need when they need them.

          ### How Does It Work?
          Turbonomic uses a client agent called — KubeTurbo — that runs in your cluster to discover, monitor and optimize resource usage within your environment.
          KubeTurbo runs together with the default Kubernetes scheduler and sends data back to the Turbonomic for analysis.
          Turbonomic determines the right actions that drive continuous health for your workloads and your cluster.

          Turbonomic discovers Red Hat OpenShift Virtualization resources through a new or existing target configuration with Red Hat OpenShift. For more information refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=targets-red-hat-openshift-virtualization)

          ### Get Started
          Please follow the [Kubeturbo Documentation Page](https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets) for all deployment options and an overview of typical use cases.

          ### Known Issues
          For known issues refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=notes-known-issues)
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Kubeturbo Documentation Page
          url: https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets
        - name: Kubeturbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
        - name: IBM Turbonomic Application Resource Management
          url: https://www.ibm.com/products/turbonomic
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/kubeturbo-operator@sha256:17f2ee1a241c5d84e66d47febf409f08868b6e372b2ba6b420e30f759a94487b
        - registry.connect.redhat.com/turbonomic/kubeturbo-operator-bundle@sha256:337da31b04c4739571e5bd7c4f5bc89c82cb3c2d74341b456f65c5435a24b647
        version: 8.18.30
      entries:
      - name: kubeturbo-operator.v8.18.30
        version: 8.18.30
      name: stable
    defaultChannel: stable
    packageName: kubeturbo-certified
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CrowdStrike
      provider-url: https://crowdStrike.com
    name: falcon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: falcon-operator.v1.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconAdmission",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcon-admission",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falconadmission",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-kac"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "admission_controller"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconContainer",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcon-sidecar-sensor",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falconcontainer",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-container-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "sidecar"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconDeployment",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcondeployment-sample",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falcon-deployment",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-deployment"
                },
                "spec": {
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconImageAnalyzer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "falcon-operator",
                    "app.kubernetes.io/instance": "falconimageanalyzer-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "falconimageanalyzer",
                    "app.kubernetes.io/part-of": "falcon-operator"
                  },
                  "name": "falcon-image-analyzer"
                },
                "spec": {
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconNodeSensor",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcon-node-sensor",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falconnodesensor",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-node-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "daemonset"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security,Monitoring
          containerImage: registry.connect.redhat.com/crowdstrike/falcon-operator@sha256:a31709f0e35564badc0123095952f957d0d639ced1fe000610008222e4d45725
          createdAt: "2025-11-18T23:39:10Z"
          description: Falcon Operator installs CrowdStrike Falcon Sensors on the
            cluster
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: falcon-operator
          operators.openshift.io/valid-subscription: Not required to use this operator
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: registry.connect.redhat.com/crowdstrike/falcon-operator
          support: CrowdStrike
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FalconAdmission is the Schema for the falconadmissions API
            displayName: Falcon Admission
            kind: FalconAdmission
            name: falconadmissions.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconContainer is the Schema for the falconcontainers API
            displayName: Falcon Container
            kind: FalconContainer
            name: falconcontainers.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconDeployment is the Schema for the falcondeployments
              API
            displayName: Falcon Deployment
            kind: FalconDeployment
            name: falcondeployments.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconImageAnalyzer is the Schema for the falconImageAnalyzers
              API
            displayName: Falcon Image Analyzer
            kind: FalconImageAnalyzer
            name: falconimageanalyzers.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconNodeSensor is the Schema for the falconnodesensors
              API
            displayName: Falcon Node Sensor
            kind: FalconNodeSensor
            name: falconnodesensors.falcon.crowdstrike.com
            version: v1alpha1
        description: |-
          The CrowdStrike Falcon Operator installs CrowdStrike Falcon custom resources on a Kubernetes cluster.

          ## About the CrowdStrike Falcon Operator
          The CrowdStrike Falcon Operator deploys CrowdStrike Falcon to the cluster. The operator exposes custom resources that allow you to protect your Kubernetes clusters when deployed.

          ## About Custom Resources

          | Custom Resource                                       | Description                                                      |
          | :--                                             | :--                                                    |
          | [FalconAdmission](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/admission/README.md) | Manages installation of Falcon Admission Controller on the cluster |
          | [FalconImageAnalyzer](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/imageanalyzer/README.md) | Manages installation of Falcon Image Assessment at Runtime on the cluster |
          | [FalconContainer](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/container/README.md) | Manages installation of Falcon Container Sensor on the cluster   |
          | [FalconNodeSensor](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/node/README.md)     | Manages installation of Falcon Linux Sensor on the cluster nodes |
          | [FalconDeployment](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/falcondeployment/README.md)       | Deploys FalconAdmission, FalconImageAnalyzer, FalconContainer, and FalconNodeSensor CRs from a single manifest |

          ## Installation and Deployment

          For installation and deployment of the CrowdStrike Falcon Operator and its Custom Resources, please read the [Installation and Deployment Guide](./docs/install_guide.md) and choose the deployment method that is right for your target environment.

          ## Getting Help
          If you encounter any issues while using the Falcon Operator, you can create an issue on our [Github repo](https://github.com/CrowdStrike/falcon-operator) for bugs, enhancements, or other requests.

          ## Contributing
          You can contribute by:

          * Raising any issues you find using Falcon Operator
          * Fixing issues by opening [Pull Requests](https://github.com/CrowdStrike/falcon-operator/pulls)
          * Improving documentation
          * Talking about the CrowdStrike Falcon Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/CrowdStrike/falcon-operator/issues).

          ## Additional Resources
           - CrowdStrike Container Security: [Product Page](https://www.crowdstrike.com/products/cloud-security/falcon-cloud-workload-protection/container-security/)
           - So You Think Your Containers Are Secure? Four Steps to Ensure a Secure Container Deployment: [Blog Post](https://www.crowdstrike.com/blog/four-steps-to-ensure-a-secure-containter-deployment/)
           - Container Security With CrowdStrike: [Blog Post](https://www.crowdstrike.com/blog/tech-center/container-security/)
           - To learn more about Falcon Container Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/support/documentation/146/falcon-container-sensor-for-linux), [Release Notes](https://falcon.crowdstrike.com/support/news/release-notes-falcon-container-sensor-for-linux)
           - To learn more about Falcon Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/documentation/20/falcon-sensor-for-linux#kubernetes-support)
           - [Developer Documentation](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/developer_guide.md)
        displayName: CrowdStrike Falcon Platform - Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - runtime-protection
        links:
        - name: Falcon Operator
          url: https://github.com/CrowdStrike/falcon-operator
        maintainers:
        - email: integrations@crowdstrike.com
          name: CrowdStrike Solutions Architecture
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: CrowdStrike
          url: https://crowdStrike.com
        relatedImages:
        - registry.connect.redhat.com/crowdstrike/falcon-operator-bundle@sha256:abb34bed5bfc9472c0d9cacb52a7dc5b95cf4081a4667f28ae47b36b07bc0cf8
        - registry.connect.redhat.com/crowdstrike/falcon-operator@sha256:a31709f0e35564badc0123095952f957d0d639ced1fe000610008222e4d45725
        - registry.crowdstrike.com/falcon-container/us-1/release/falcon-sensor@sha256:b9b27660c5924fe99666f638540da51e682c1ad1af0c982f1f8af7b6de1bda20
        - registry.crowdstrike.com/falcon-imageanalyzer/us-1/release/falcon-imageanalyzer@sha256:cd6294a2b62d3b57d18f0528c3b0eda669afd5f393b2bbc582665223329ad8cc
        - registry.crowdstrike.com/falcon-kac/us-1/release/falcon-kac@sha256:14b3a07db24aac43d7397aa1428a8551a15984eba26e79655d66d7a4473cb4a0
        - registry.crowdstrike.com/falcon-sensor/release/falcon-sensor@sha256:b3b575772b6e9ca4dc3cfadac0d3e5c8d752adb3687553d0e52f72eee3229074
        version: 1.9.0
      entries:
      - name: falcon-operator.v1.9.0
        version: 1.9.0
      - name: falcon-operator.v1.8.0
        version: 1.8.0
      - name: falcon-operator.v1.7.0
        version: 1.7.0
      - name: falcon-operator.v1.6.0
        version: 1.6.0
      - name: falcon-operator.v1.5.0
        version: 1.5.0
      - name: falcon-operator.v1.4.0
        version: 1.4.0
      - name: falcon-operator.v1.3.1
        version: 1.3.1
      - name: falcon-operator.v1.3.0
        version: 1.3.0
      - name: falcon-operator.v1.2.0
        version: 1.2.0
      - name: falcon-operator.v1.1.0
        version: 1.1.0
      - name: falcon-operator.v1.0.1
        version: 1.0.1
      - name: falcon-operator.v1.0.0
        version: 1.0.0
      name: certified-1.0
    defaultChannel: certified-1.0
    packageName: falcon-operator
    provider:
      name: CrowdStrike
      url: https://crowdStrike.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sagemaker-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sagemaker-controller.v1.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "App",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "DataQualityJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "Domain",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "Endpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "EndpointConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "FeatureGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "HyperParameterTuningJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "Model",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelBiasJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelExplainabilityJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelPackage",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelPackageGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelQualityJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "MonitoringSchedule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "NotebookInstance",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "NotebookInstanceLifecycleConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ProcessingJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "TrainingJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "TransformJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "UserProfile",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sagemaker-controller:1.7.0
          createdAt: "2025-12-19T22:59:29Z"
          description: ACK service controller for Amazon SageMaker manages SageMaker
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: App represents the state of an AWS sagemaker App resource.
            displayName: App
            kind: App
            name: apps.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: DataQualityJobDefinition represents the state of an AWS sagemaker
              DataQualityJobDefinition resource.
            displayName: DataQualityJobDefinition
            kind: DataQualityJobDefinition
            name: dataqualityjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Domain represents the state of an AWS sagemaker Domain resource.
            displayName: Domain
            kind: Domain
            name: domains.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: EndpointConfig represents the state of an AWS sagemaker EndpointConfig
              resource.
            displayName: EndpointConfig
            kind: EndpointConfig
            name: endpointconfigs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Endpoint represents the state of an AWS sagemaker Endpoint
              resource.
            displayName: Endpoint
            kind: Endpoint
            name: endpoints.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: FeatureGroup represents the state of an AWS sagemaker FeatureGroup
              resource.
            displayName: FeatureGroup
            kind: FeatureGroup
            name: featuregroups.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: HyperParameterTuningJob represents the state of an AWS sagemaker
              HyperParameterTuningJob resource.
            displayName: HyperParameterTuningJob
            kind: HyperParameterTuningJob
            name: hyperparametertuningjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: InferenceComponent represents the state of an AWS sagemaker
              InferenceComponent resource.
            displayName: InferenceComponent
            kind: InferenceComponent
            name: inferencecomponents.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: LabelingJob represents the state of an AWS sagemaker LabelingJob
              resource.
            displayName: LabelingJob
            kind: LabelingJob
            name: labelingjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelBiasJobDefinition represents the state of an AWS sagemaker
              ModelBiasJobDefinition resource.
            displayName: ModelBiasJobDefinition
            kind: ModelBiasJobDefinition
            name: modelbiasjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelExplainabilityJobDefinition represents the state of
              an AWS sagemaker ModelExplainabilityJobDefinition resource.
            displayName: ModelExplainabilityJobDefinition
            kind: ModelExplainabilityJobDefinition
            name: modelexplainabilityjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelPackageGroup represents the state of an AWS sagemaker
              ModelPackageGroup resource.
            displayName: ModelPackageGroup
            kind: ModelPackageGroup
            name: modelpackagegroups.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelPackage represents the state of an AWS sagemaker ModelPackage
              resource.
            displayName: ModelPackage
            kind: ModelPackage
            name: modelpackages.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelQualityJobDefinition represents the state of an AWS
              sagemaker ModelQualityJobDefinition resource.
            displayName: ModelQualityJobDefinition
            kind: ModelQualityJobDefinition
            name: modelqualityjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Model represents the state of an AWS sagemaker Model resource.
            displayName: Model
            kind: Model
            name: models.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: MonitoringSchedule represents the state of an AWS sagemaker
              MonitoringSchedule resource.
            displayName: MonitoringSchedule
            kind: MonitoringSchedule
            name: monitoringschedules.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: NotebookInstanceLifecycleConfig represents the state of an
              AWS sagemaker NotebookInstanceLifecycleConfig resource.
            displayName: NotebookInstanceLifecycleConfig
            kind: NotebookInstanceLifecycleConfig
            name: notebookinstancelifecycleconfigs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: NotebookInstance represents the state of an AWS sagemaker
              NotebookInstance resource.
            displayName: NotebookInstance
            kind: NotebookInstance
            name: notebookinstances.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: PipelineExecution represents the state of an AWS sagemaker
              PipelineExecution resource.
            displayName: PipelineExecution
            kind: PipelineExecution
            name: pipelineexecutions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Pipeline represents the state of an AWS sagemaker Pipeline
              resource.
            displayName: Pipeline
            kind: Pipeline
            name: pipelines.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ProcessingJob represents the state of an AWS sagemaker ProcessingJob
              resource.
            displayName: ProcessingJob
            kind: ProcessingJob
            name: processingjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Project represents the state of an AWS sagemaker Project
              resource.
            displayName: Project
            kind: Project
            name: projects.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Space represents the state of an AWS sagemaker Space resource.
            displayName: Space
            kind: Space
            name: spaces.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: TrainingJob represents the state of an AWS sagemaker TrainingJob
              resource.
            displayName: TrainingJob
            kind: TrainingJob
            name: trainingjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: TransformJob represents the state of an AWS sagemaker TransformJob
              resource.
            displayName: TransformJob
            kind: TransformJob
            name: transformjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: UserProfile represents the state of an AWS sagemaker UserProfile
              resource.
            displayName: UserProfile
            kind: UserProfile
            name: userprofiles.sagemaker.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon SageMaker resources in AWS from within your Kubernetes cluster.

          **About Amazon SageMaker**

          Amazon SageMaker helps data scientists and developers to prepare, build, train, and deploy high-quality machine learning (ML) models quickly by bringing together a broad set of capabilities purpose-built for ML.

          For more information on Amazon SageMaker, visit the [product page](https://aws.amazon.com/sagemaker/).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SageMaker
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sagemaker
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SageMaker Developer Resources
          url: https://aws.amazon.com/sagemaker/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: sagemaker maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sagemaker-controller:1.7.0
        - quay.io/community-operator-pipeline-prod/ack-sagemaker-controller@sha256:535345530777b2e692e264fb1d1c4e2a07c6c4e4c00a8bbe74a2e08a891e7fd7
        version: 1.7.0
      entries:
      - name: ack-sagemaker-controller.v1.7.0
        version: 1.7.0
      - name: ack-sagemaker-controller.v1.6.0
        version: 1.6.0
      - name: ack-sagemaker-controller.v1.5.1
        version: 1.5.1
      - name: ack-sagemaker-controller.v1.5.0
        version: 1.5.0
      - name: ack-sagemaker-controller.v1.4.1
        version: 1.4.1
      - name: ack-sagemaker-controller.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-sagemaker-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-prometheusservice-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-prometheusservice-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "prometheusservice.services.k8s.aws/v1alpha1",
                "kind": "RuleGroupsNamespace",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "prometheusservice.services.k8s.aws/v1alpha1",
                "kind": "Workspace",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/prometheusservice-controller:1.4.0
          createdAt: "2025-11-29T03:54:10Z"
          description: AWS Prometheus controller is a service controller for managing
            Prometheus resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertManagerDefinition represents the state of an AWS prometheusservice
              AlertManagerDefinition resource.
            displayName: AlertManagerDefinition
            kind: AlertManagerDefinition
            name: alertmanagerdefinitions.prometheusservice.services.k8s.aws
            version: v1alpha1
          - description: LoggingConfiguration represents the state of an AWS prometheusservice
              LoggingConfiguration resource.
            displayName: LoggingConfiguration
            kind: LoggingConfiguration
            name: loggingconfigurations.prometheusservice.services.k8s.aws
            version: v1alpha1
          - description: RuleGroupsNamespace represents the state of an AWS prometheusservice
              RuleGroupsNamespace resource.
            displayName: RuleGroupsNamespace
            kind: RuleGroupsNamespace
            name: rulegroupsnamespaces.prometheusservice.services.k8s.aws
            version: v1alpha1
          - description: Workspace represents the state of an AWS prometheusservice
              Workspace resource.
            displayName: Workspace
            kind: Workspace
            name: workspaces.prometheusservice.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Prometheus resources in AWS from within your Kubernetes cluster.

          **About Amazon Managed Service for Prometheus**

          Amazon Managed Service for Prometheus is a serverless, Prometheus-compatible monitoring service for container metrics that makes it easier to securely monitor container environments at scale. With Amazon Managed Service for Prometheus, you can use the same open-source Prometheus data model and query language that you use today to monitor the performance of your containerized workloads, and also enjoy improved scalability, availability, and security without having to manage the underlying infrastructure.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Prometheus
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - prometheusservice
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Prometheus Developer Resources
          url: https://aws.amazon.com/prometheus/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: prometheus maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-prometheusservice-controller@sha256:44f63e161a9f7bb8df06dc31803f9b8b45bc2c9bf2a0d68957f03faace33732f
        - public.ecr.aws/aws-controllers-k8s/prometheusservice-controller:1.4.0
        version: 1.4.0
      entries:
      - name: ack-prometheusservice-controller.v1.4.0
        version: 1.4.0
      - name: ack-prometheusservice-controller.v1.3.2
        version: 1.3.2
      - name: ack-prometheusservice-controller.v1.3.1
        version: 1.3.1
      - name: ack-prometheusservice-controller.v1.3.0
        version: 1.3.0
      - name: ack-prometheusservice-controller.v1.2.27
        version: 1.2.27
      - name: ack-prometheusservice-controller.v1.2.26
        version: 1.2.26
      - name: ack-prometheusservice-controller.v1.2.24
        version: 1.2.24
      - name: ack-prometheusservice-controller.v1.2.23
        version: 1.2.23
      - name: ack-prometheusservice-controller.v1.2.22
        version: 1.2.22
      - name: ack-prometheusservice-controller.v1.2.20
        version: 1.2.20
      - name: ack-prometheusservice-controller.v1.2.19
        version: 1.2.19
      - name: ack-prometheusservice-controller.v1.2.17
        version: 1.2.17
      - name: ack-prometheusservice-controller.v1.2.16
        version: 1.2.16
      - name: ack-prometheusservice-controller.v1.2.15
        version: 1.2.15
      - name: ack-prometheusservice-controller.v1.2.14
        version: 1.2.14
      - name: ack-prometheusservice-controller.v1.2.13
        version: 1.2.13
      - name: ack-prometheusservice-controller.v1.2.12
        version: 1.2.12
      - name: ack-prometheusservice-controller.v1.2.11
        version: 1.2.11
      - name: ack-prometheusservice-controller.v1.2.10
        version: 1.2.10
      - name: ack-prometheusservice-controller.v1.2.9
        version: 1.2.9
      - name: ack-prometheusservice-controller.v1.2.6
        version: 1.2.6
      - name: ack-prometheusservice-controller.v1.2.5
        version: 1.2.5
      - name: ack-prometheusservice-controller.v1.2.4
        version: 1.2.4
      - name: ack-prometheusservice-controller.v1.2.3
        version: 1.2.3
      - name: ack-prometheusservice-controller.v1.2.2
        version: 1.2.2
      - name: ack-prometheusservice-controller.v1.2.1
        version: 1.2.1
      - name: ack-prometheusservice-controller.v1.2.0
        version: 1.2.0
      - name: ack-prometheusservice-controller.v1.1.0
        version: 1.1.0
      - name: ack-prometheusservice-controller.v1.0.0
        version: 1.0.0
      - name: ack-prometheusservice-controller.v0.1.3
        version: 0.1.3
      - name: ack-prometheusservice-controller.v0.1.2
        version: 0.1.2
      - name: ack-prometheusservice-controller.v0.1.1
        version: 0.1.1
      - name: ack-prometheusservice-controller.v0.1.0
        version: 0.1.0
      - name: ack-prometheusservice-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-prometheusservice-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Trustification
      provider-url: ""
    name: trustify-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trustify-operator.v0.1.0-alpha.9
      currentCSVDesc:
        annotations:
          alm-examples: |
            [{
              "apiVersion": "org.trustify/v1alpha1",
              "kind": "Trustify",
              "metadata": {
                "name": "myapp"
              },
              "spec": { }
            }]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          containerImage: ghcr.io/trustification/trustify-operator:v0.1.0-alpha.9
          createdAt: "2025-03-07T11:57:13+00:00"
          description: An Operator for installing and managing Trustify
          repository: https://github.com/trustification/trustify-operator
          support: https://github.com/trustification/trustify-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Trustify instance
            displayName: Trustify
            kind: Trustify
            name: trustifies.org.trustify
            version: v1alpha1
        description: |+
          Trustify is vendor-neutral, thought-leadering, mostly informational collection of resources devoted to making Software Supply Chains easier to create, manage, consume and ultimately... to trust!


          You can use Trustify for:

          - Store and Manage all the SBOM (Software Bill of Materials) files of your company.
          - Understand which are the Vulnerabilities that affect each of your SBOM files
          - Understand exactly which Packages are included/shipped within each SBOM

          Trustify is a project within the [Trustification community](https://trustification.io/).


          ### Install
          Once you have successfully installed the Operator, proceed to deploy components by creating the required CR.

          By default, the Operator installs the following components on a target cluster:

          * Server
          * UI

          ### Documentation
          Documentation can be found on our [website](https://trustification.io/).

          ### Getting help
          If you encounter any issues while using Trustify, you can create an issue on our [Github repo](https://github.com/trustification/trustify/issues), for bugs, enhancements or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find
          * Fixing issues by opening [Pull Requests](https://github.com/trustification/trustify/pulls)

        displayName: Trustify Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trust
        links:
        - name: Website
          url: https://trustification.io/
        - name: Github
          url: https://github.com/trustification/trustify
        maintainers:
        - email: trustification@googlegroups.com
          name: Trustification
        maturity: alpha
        minKubeVersion: 1.23.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        provider:
          name: Trustification
        relatedImages:
        - quay.io/community-operator-pipeline-prod/trustify-operator@sha256:49def1c9612621f90d2398cbe7385488c167cc8ccdcd951f098433eb42cb9ac5
        - ghcr.io/trustification/trustify-operator:v0.1.0-alpha.9
        version: 0.1.0-alpha.9
      entries:
      - name: trustify-operator.v0.1.0-alpha.9
        version: 0.1.0-alpha.9
      - name: trustify-operator.v0.1.0-alpha.8
        version: 0.1.0-alpha.8
      - name: trustify-operator.v0.1.0-alpha.7
        version: 0.1.0-alpha.7
      - name: trustify-operator.v0.1.0-alpha.6
        version: 0.1.0-alpha.6
      - name: trustify-operator.v0.1.0-alpha.5
        version: 0.1.0-alpha.5
      - name: trustify-operator.v0.1.0-alpha.4
        version: 0.1.0-alpha.4
      - name: trustify-operator.v0.1.0-alpha.3
        version: 0.1.0-alpha.3
      - name: trustify-operator.v0.1.0-alpha.2
        version: 0.1.0-alpha.2
      name: alpha
    defaultChannel: alpha
    packageName: trustify-operator
    provider:
      name: Trustification
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://www.redhat.com/
    name: analytics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: analytics-operator.v0.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyData",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalydata-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalydata",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalydata-sample"
                },
                "spec": {
                  "anomalyname": "etcd_object_namespaces",
                  "config": {
                    "max": 100,
                    "min": 60,
                    "query": "max(apiserver_storage_objects{resource=~\"namespaces\"}) by (resource)"
                  },
                  "method": "min_max",
                  "metricdata": {
                    "groupeddata": "{ \"resource\": \"namespaces\" }",
                    "latestvalue": 121,
                    "timestamp": 1695804362
                  }
                }
              },
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyEngine",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalyengine-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalyengine",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalyengine-sample"
                },
                "spec": {
                  "anomalyqueryconfiguration": "etcd_objects_all:\n  method: percentage_change\n  query: max(apiserver_storage_objects{resource!~\"certificatesigningrequests.certificates.k8s.io|installplans.operators.coreos.com|operators.operators.coreos.com|subscriptions.operators.coreos.com|anomalydata.observability-analytics.redhat.com|anomalyengines.observability-analytics.redhat.com\"}) by (resource)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: True\nfailed_pods:\n  method: min_max\n  query: count(kube_pod_status_phase{phase!~\"Succeeded|Pending|Running|Unknown\"}) by (phase, namespace)\n  min: 0\n  max: 10\n  have_multi_result_data: True\nworkload_memory_usage_bytes:\n  method: percentage_change\n  query: sum(container_memory_working_set_bytes{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nworkload_cpu_usage_cores:\n  method: percentage_change\n  query: sum(container_cpu_usage_seconds_total{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nrest_client_requests_total:\n  method: percentage_change\n  query: sum(rest_client_requests_total)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\n",
                  "cronjobconfig": {
                    "anomalyqueries": "etcd_objects_all,failed_pods,workload_memory_usage_bytes,workload_cpu_usage_cores,rest_client_requests_total",
                    "name": "osa-anomaly-detection",
                    "resource": {
                      "cpulimit": "256m",
                      "cpurequest": "128m",
                      "memorylimit": "512Mi",
                      "memoryrequest": "256Mi"
                    },
                    "schedule": "*/5 * * * *"
                  },
                  "namespace": "osa-anomaly-detection",
                  "serviceaccountrolebinding": {
                    "clusterrolename": "cluster-monitoring-view",
                    "name": "osa-in-cluster-thanos-querier"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
          createdAt: "2024-03-12T08:02:25Z"
          description: Deploys and Manages Observability Analytics Operator
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4-alpha
          repository: https://github.com/openshift/analytics-operator
          support: RedHat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnomalyData is the Schema for the anomalydata API
            displayName: Anomaly Data
            kind: AnomalyData
            name: anomalydata.observability-analytics.redhat.com
            version: v1alpha1
          - description: AnomalyEngine is the Schema for the anomalyengines API
            displayName: Anomaly Engine
            kind: AnomalyEngine
            name: anomalyengines.observability-analytics.redhat.com
            version: v1alpha1
        description: "### Introduction\nObservability Analytics for Red Hat OpenShift
          runs OpenShift analytics processes like anomaly detection.\n\n### API Backward
          Compatibility\n**NOTE:** Until the Operator supports **seamless upgrades**,
          a new version of the operator may introduce a change that is **NOT** backward-compatible
          with the previous version. Thus, to upgrade the operator, uninstall the
          already installed version completely (including CRDs) and install the new
          version.\n\n### Installtion Steps for the Anomaly Engine\n Create namespace
          if you would like to install this operator into separate namespace (You
          can utilize existing namespace as well). ```bash kubectl create ns <Namespace>
          ``` Install the Observability Analytics operator to specific `<Namespace>`,
          wait until you see the operator in the **Installed Operator** list. Click
          on the Operator name and go to Operator details.\n\nHere you should see
          a tab called **Anomaly Engine**. Click on it, and then click on the **Create
          AnomalyEngine** button, which will redirect you to a form where you need
          to provide the required inputs for the Anomaly Engine. Once successfully
          created, you should see a cronjob in the given namespace. This cronjob will
          identify anomalies and store them into **anomalydata**.\n\n### How to See
          Anomaly Data Captured by Anomaly Engine?\nWe are storing anomaly data into
          CR.\n ####Option 1:Through `kubectl`` command\nYou can check detected anomalies
          using the following command from your terminal. \n\n```bash\nkubectl get
          anomalydata -n <Namespace>\nkubectl describe anomalydata <NAME of the anomalydata>
          -n <Namespace> \n```\n #### Option 2: From Installed Operator UI Go to installed
          operator and select **Observability Analytics** operator, now go to **Anomaly
          Data** tab where you can able to see the detected anomaly, click on specific
          anomaly and you should be able to see details of the same. ### Documentation\nDocumentation
          around how to test Operator codebase as a developer can be found [here](https://github.com/openshift/analytics-operator#readme)\n\n###
          Contributing\nYou can contribute by:\n  * Raising [issues](https://github.com/openshift/analytics-operator/issues)\n
          \   related to observability-analytics-operator\n  * Fixing issues by opening
          [Pull Requests](https://github.com/openshift/analytics-operator/pulls)\n
          \ * Discussing observability-analytics-operator\n\n### License\nobservability-analytics-operator
          is licensed under the Apache 2.0 license.\n"
        displayName: Observability Analytics
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - observability-analytics-operator
        - analytics-operator
        - analytics
        - anomaly
        links:
        - name: Analytics Operator
          url: https://analytics-operator.domain
        maintainers:
        - email: rzalavad@redhat.com
          name: Raj
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/analytics-operator@sha256:6622e769acf5af500d901409575016013d97e88ff53f0b6db0c9f503e6928b8f
        version: 0.1.1
      entries:
      - name: analytics-operator.v0.1.1
        version: 0.1.1
      - name: analytics-operator.v0.1.0
        version: 0.1.0
      name: alpha
    - currentCSV: analytics-operator.v0.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyData",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalydata-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalydata",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalydata-sample"
                },
                "spec": {
                  "anomalyname": "etcd_object_namespaces",
                  "config": {
                    "max": 100,
                    "min": 60,
                    "query": "max(apiserver_storage_objects{resource=~\"namespaces\"}) by (resource)"
                  },
                  "method": "min_max",
                  "metricdata": {
                    "groupeddata": "{ \"resource\": \"namespaces\" }",
                    "latestvalue": 121,
                    "timestamp": 1695804362
                  }
                }
              },
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyEngine",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalyengine-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalyengine",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalyengine-sample"
                },
                "spec": {
                  "anomalyqueryconfiguration": "etcd_objects_all:\n  method: percentage_change\n  query: max(apiserver_storage_objects{resource!~\"certificatesigningrequests.certificates.k8s.io|installplans.operators.coreos.com|operators.operators.coreos.com|subscriptions.operators.coreos.com|anomalydata.observability-analytics.redhat.com|anomalyengines.observability-analytics.redhat.com\"}) by (resource)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: True\nfailed_pods:\n  method: min_max\n  query: count(kube_pod_status_phase{phase!~\"Succeeded|Pending|Running|Unknown\"}) by (phase, namespace)\n  min: 0\n  max: 10\n  have_multi_result_data: True\nworkload_memory_usage_bytes:\n  method: percentage_change\n  query: sum(container_memory_working_set_bytes{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nworkload_cpu_usage_cores:\n  method: percentage_change\n  query: sum(container_cpu_usage_seconds_total{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nrest_client_requests_total:\n  method: percentage_change\n  query: sum(rest_client_requests_total)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\n",
                  "cronjobconfig": {
                    "anomalyqueries": "etcd_objects_all,failed_pods,workload_memory_usage_bytes,workload_cpu_usage_cores,rest_client_requests_total",
                    "name": "osa-anomaly-detection",
                    "resource": {
                      "cpulimit": "256m",
                      "cpurequest": "128m",
                      "memorylimit": "512Mi",
                      "memoryrequest": "256Mi"
                    },
                    "schedule": "*/5 * * * *"
                  },
                  "namespace": "osa-anomaly-detection",
                  "serviceaccountrolebinding": {
                    "clusterrolename": "cluster-monitoring-view",
                    "name": "osa-in-cluster-thanos-querier"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
          createdAt: "2024-03-12T08:02:25Z"
          description: Deploys and Manages Observability Analytics Operator
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4-alpha
          repository: https://github.com/openshift/analytics-operator
          support: RedHat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnomalyData is the Schema for the anomalydata API
            displayName: Anomaly Data
            kind: AnomalyData
            name: anomalydata.observability-analytics.redhat.com
            version: v1alpha1
          - description: AnomalyEngine is the Schema for the anomalyengines API
            displayName: Anomaly Engine
            kind: AnomalyEngine
            name: anomalyengines.observability-analytics.redhat.com
            version: v1alpha1
        description: "### Introduction\nObservability Analytics for Red Hat OpenShift
          runs OpenShift analytics processes like anomaly detection.\n\n### API Backward
          Compatibility\n**NOTE:** Until the Operator supports **seamless upgrades**,
          a new version of the operator may introduce a change that is **NOT** backward-compatible
          with the previous version. Thus, to upgrade the operator, uninstall the
          already installed version completely (including CRDs) and install the new
          version.\n\n### Installtion Steps for the Anomaly Engine\n Create namespace
          if you would like to install this operator into separate namespace (You
          can utilize existing namespace as well). ```bash kubectl create ns <Namespace>
          ``` Install the Observability Analytics operator to specific `<Namespace>`,
          wait until you see the operator in the **Installed Operator** list. Click
          on the Operator name and go to Operator details.\n\nHere you should see
          a tab called **Anomaly Engine**. Click on it, and then click on the **Create
          AnomalyEngine** button, which will redirect you to a form where you need
          to provide the required inputs for the Anomaly Engine. Once successfully
          created, you should see a cronjob in the given namespace. This cronjob will
          identify anomalies and store them into **anomalydata**.\n\n### How to See
          Anomaly Data Captured by Anomaly Engine?\nWe are storing anomaly data into
          CR.\n ####Option 1:Through `kubectl`` command\nYou can check detected anomalies
          using the following command from your terminal. \n\n```bash\nkubectl get
          anomalydata -n <Namespace>\nkubectl describe anomalydata <NAME of the anomalydata>
          -n <Namespace> \n```\n #### Option 2: From Installed Operator UI Go to installed
          operator and select **Observability Analytics** operator, now go to **Anomaly
          Data** tab where you can able to see the detected anomaly, click on specific
          anomaly and you should be able to see details of the same. ### Documentation\nDocumentation
          around how to test Operator codebase as a developer can be found [here](https://github.com/openshift/analytics-operator#readme)\n\n###
          Contributing\nYou can contribute by:\n  * Raising [issues](https://github.com/openshift/analytics-operator/issues)\n
          \   related to observability-analytics-operator\n  * Fixing issues by opening
          [Pull Requests](https://github.com/openshift/analytics-operator/pulls)\n
          \ * Discussing observability-analytics-operator\n\n### License\nobservability-analytics-operator
          is licensed under the Apache 2.0 license.\n"
        displayName: Observability Analytics
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - observability-analytics-operator
        - analytics-operator
        - analytics
        - anomaly
        links:
        - name: Analytics Operator
          url: https://analytics-operator.domain
        maintainers:
        - email: rzalavad@redhat.com
          name: Raj
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/analytics-operator@sha256:6622e769acf5af500d901409575016013d97e88ff53f0b6db0c9f503e6928b8f
        - quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
        version: 0.1.1
      entries:
      - name: analytics-operator.v0.1.1
        version: 0.1.1
      - name: analytics-operator.v0.1.0
        version: 0.1.0
      name: dev-preview
    defaultChannel: alpha
    packageName: analytics-operator
    provider:
      name: Red Hat Inc.
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: operator-certification-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: operator-certification-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "certification.redhat.com/v1alpha1",
                "kind": "OperatorPipeline",
                "metadata": {
                  "name": "operatorpipeline-sample"
                },
                "spec": {
                  "applyCIPipeline": true,
                  "applyHostedPipeline": false,
                  "applyReleasePipeline": false,
                  "gitHubSecretName": "github-api-token",
                  "kubeconfigSecretName": "kubeconfig",
                  "operatorPipelinesRelease": "main",
                  "pyxisSecretName": "pyxis-api-secret"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-11-11T16:28:07Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.operatorframework.io.bundle.channel.default.v1: alpha
          operators.operatorframework.io.bundle.channels: alpha
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-openshift-ecosystem/operator-certification-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OperatorPipeline is the Schema for the operatorpipelines
              API
            displayName: Operator Pipeline
            kind: OperatorPipeline
            name: operatorpipelines.certification.redhat.com
            version: v1alpha1
        description: |-
          A Kubernetes operator to provision resources for the operator certification pipeline. This operator is installed in all namespaces which can support multi-tenant scenarios. **Note:** This operator should only be used by Red Hat partners attempting to certify their operator(s).


          **Requirements**


          The certification operator requires that you have the following tools installed, functional, and in your path.
          - [Install](https://docs.openshift.com/container-platform/4.8/cli_reference/openshift_cli/getting-started-cli.html#installing-openshift-cli) oc, the OpenShift CLI tool (tested with version 4.7.13)
          - [Install](https://tekton.dev/docs/cli/) tkn, the Tekton CLI tool (tested with version 0.19.1)
          - [Install](https://git-scm.com/downloads) git, the Git CLI tool (tested with 2.32.0)
          - The certification pipeline expects you to have the source files of your Operator bundle


          **Pre - Installation**


          The below steps exist for simplicity and to make the installation clearer. The operator watches all namespaces, so if secrets/configs/etc already exist in another namespace, feel free to use the existing namespace when following the operator installation steps.


          **Create a new namespace where the following secrets will be applied.**
          ```
          oc new-project oco
          ```


          **Add the kubeconfig secret which will be used to deploy the operator under test and run the certification checks.**
          * Open a terminal window
          * Set the `KUBECONFIG` environment variable
          ```
          export KUBECONFIG=/path/to/your/cluster/kubeconfig
          ```
          > *This kubeconfig will be used to deploy the Operator under test and run the certification checks.*
          ```
          oc create secret generic kubeconfig --from-file=kubeconfig=$KUBECONFIG
          ```


          **Configuring steps for submitting the results**
          - Add the github API token to the repo where the PR will be created
          ```
          oc create secret generic github-api-token --from-literal GITHUB_TOKEN=<github token>
          ```
          - Add RedHat Container API access key

            This API access key is specifically related to your unique partner account for Red Hat Connect portal. Instructions to obtain your API key can be found: [here](https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/operator-cert-workflow.md#step-b---get-api-key)
          ```
          oc create secret generic pyxis-api-secret --from-literal pyxis_api_key=< API KEY >
          ```

          - Optional pipeline configurations can be found [here](https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/ci-pipeline.md#optional-configuration)


          **Execute the Pipeline (Development Iterations)**


          A pre-requisite to running a pipeline is that a `workspace-template.yaml` exists in the directory you want to execute the `tkn` commands from.

          To create a workspace-template.yaml
          ```
          cat <<EOF > workspace-template.yaml
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 5Gi
          EOF
          ```

          There are multiple ways to execute the Pipeline which can be found [here](https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/ci-pipeline.md#execute-the-pipeline-development-iterations)
        displayName: Operator Certification Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - certification
        - pipeline
        - openshift
        links:
        - name: Operator Certification CI Pipeline
          url: https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/ci-pipeline.md
        - name: Red Hat OpenShift Pipelines
          url: https://github.com/openshift/tektoncd-operator
        maintainers:
        - email: certification-operator-devel@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.connect.redhat.com/opdev/operator-certification-operator-bundle@sha256:e1c26fed406ff8478dee6c67ba24a5db5320868b78bcc8aa98c124c74ff8fd8a
        - quay.io/opdev/operator-certification-operator@sha256:264a7cf00f3dc47a8e7ae602d720ca9b9df6807eb9f6574efeff8ef0427905b7
        version: 1.4.0
      entries:
      - name: operator-certification-operator.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: alpha
    packageName: operator-certification-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-kubernetes.v1.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "ClusterMongoDBRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-enterprise"
                  },
                  "name": "clustermongodbrole-sample"
                },
                "spec": {
                  "db": "admin",
                  "role": "rootMonitor",
                  "roles": [
                    {
                      "db": "admin",
                      "role": "root"
                    },
                    {
                      "db": "admin",
                      "role": "clusterMonitor"
                    }
                  ]
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "my-replica-set"
                },
                "spec": {
                  "credentials": "my-credentials",
                  "members": 3,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "sample-sharded-cluster"
                },
                "spec": {
                  "configServerCount": 3,
                  "credentials": "my-credentials",
                  "mongodsPerShardCount": 3,
                  "mongosCount": 2,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "shardCount": 1,
                  "type": "ShardedCluster",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBMultiCluster",
                "metadata": {
                  "name": "multi-replica-set"
                },
                "spec": {
                  "clusterSpecList": [
                    {
                      "clusterName": "e2e.cluster1.mongokubernetes.com",
                      "members": 2
                    },
                    {
                      "clusterName": "e2e.cluster2.mongokubernetes.com",
                      "members": 1
                    },
                    {
                      "clusterName": "e2e.cluster3.mongokubernetes.com",
                      "members": 2
                    }
                  ],
                  "credentials": "my-credentials",
                  "duplicateServiceObjects": false,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBOpsManager",
                "metadata": {
                  "name": "ops-manager"
                },
                "spec": {
                  "adminCredentials": "ops-manager-admin",
                  "applicationDatabase": {
                    "members": 3,
                    "podSpec": {
                      "cpu": 1
                    }
                  },
                  "configuration": {
                    "mms.fromEmailAddr": "admin@thecompany.com"
                  },
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "version": "6.0.3"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBUser",
                "metadata": {
                  "name": "my-replica-set-x509-user"
                },
                "spec": {
                  "db": "$external",
                  "mongodbResourceRef": {
                    "name": "my-replica-set"
                  },
                  "roles": [
                    {
                      "db": "admin",
                      "name": "dbOwner"
                    }
                  ],
                  "username": "CN=my-replica-set-x509-user,OU=cloud,O=MongoDB,L=New York,ST=New York,C=US"
                },
                "status": {
                  "phase": "Updated"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/mongodb/mongodb-kubernetes@sha256:22e4ae882cff477adc99cb74bc979cb112d9e0abf37509298a3839fea274ae75
          createdAt: "2025-12-15T08:51:46Z"
          description: The MongoDB Controllers for Kubernetes enable easy deploys
            of MongoDB into Kubernetes clusters, using our management, monitoring
            and backup platforms, Ops Manager and Cloud Manager.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.26.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/mongodb/mongodb-kubernetes
          support: support@mongodb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterMongoDBRole
            name: clustermongodbroles.mongodb.com
            version: v1
          - description: MongoDB Deployment
            displayName: MongoDB Deployment
            kind: MongoDB
            name: mongodb.mongodb.com
            version: v1
          - kind: MongoDBCommunity
            name: mongodbcommunity.mongodbcommunity.mongodb.com
            version: v1
          - description: MongoDB Multi Deployment
            displayName: MongoDB Multi Deployment
            kind: MongoDBMultiCluster
            name: mongodbmulticluster.mongodb.com
            version: v1
          - kind: MongoDBSearch
            name: mongodbsearch.mongodb.com
            version: v1
          - description: MongoDB x509 User
            displayName: MongoDB User
            kind: MongoDBUser
            name: mongodbusers.mongodb.com
            version: v1
          - description: MongoDB Ops Manager
            displayName: MongoDB Ops Manager
            kind: MongoDBOpsManager
            name: opsmanagers.mongodb.com
            version: v1
        description: |
          MongoDB Controllers for Kubernetes (MCK) is an open-source project. It represents a merge of the previous
          MongoDB Community Operator (MCO) and MongoDB Enterprise Kubernetes Operator (MEKO).

          This release brings MongoDB Community and Enterprise editions together under a single, unified operator,
          making it easier to manage, scale, and upgrade your deployments. While the first version simply brings
          the capabilities of both into a single Operator, future changes will build on this to more closely align
          how Community and Enterprise are managed in Kubernetes, to offer an even more seamless and streamlined experience.
          As an open-source project, it now allows for community contributions, helping drive quicker bug fixes and ongoing innovation.
          The MongoDB Controllers for Kubernetes enable easy deploys of MongoDB
          into Kubernetes clusters, using our management, monitoring and backup
          platforms, Ops Manager and Cloud Manager.

          ## Before You Start

          To start using the operator you''ll need an account in MongoDB Cloud Manager or
          a MongoDB Ops Manager deployment.

          * [Create a Secret with your OpsManager API key](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-operator-credentials/#procedure)

          * [Create a ConfigMap with your OpsManager project ID and URL](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-project-using-configmap/)

          By installing this integration, you will be able to deploy MongoDB instances
          with a single simple command.

          ## Required Parameters

          * `opsManager` or `cloudManager` - Enter the name of the ConfigMap containing project information
          * `credentials` - Enter the name of the Secret containing your OpsManager credentials
          * `type` - Enter MongoDB Deployment Types ("Standalone", "ReplicaSet", "ShardedCluster"

          ## Supported MongoDB Deployment Types ##

          * Standalone: An instance of mongod that is running as a single server and
          not as part of a replica set, this is, it does not do any kind of
          replication.

          * Replica Set: A replica set in MongoDB is a group of mongod processes that
          maintain the same data set. Replica sets provide redundancy and high
          availability, and are the basis for all production deployments. This section
          introduces replication in MongoDB as well as the components and architecture
          of replica sets. The section also provides tutorials for common tasks
          related to replica sets.

          * Sharded Cluster: The set of nodes comprising a sharded MongoDB deployment.
          A sharded cluster consists of config servers, shards, and one or more mongos
          routing processes. Sharding is a A database architecture that partitions
          data by key ranges and distributes the data among two or more database
          instances. Sharding enables horizontal scaling.

          ## Requirements for deploying MongoDB OpsManager

          * In order to deploy resources of type MongoDB OpsManager, you will need to
          create a secret containing the [credentials](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/plan-om-resource/#om-rsrc-prereqs)
          for the Global Owner user

          ## Security ##

          The operator can enable TLS for all traffic between servers and also between
          clients and servers. Before enabling `security.tls.enabled` to `true` you
          should create your certificates.  or you can leave the operator to create all
          the certificates for you. The operator ability to create certs is been
          deprecated due to Kubernetes API changes.

          For more information, please read the official MongoDB
          Kubernetes Operator  [docs](https://docs.mongodb.com/kubernetes-operator/stable/).
        displayName: MongoDB Controllers for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mongodb
        - databases
        - nosql
        links:
        - name: Documentation
          url: https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/index.html
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: stable
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/mongodb/mongodb-enterprise-server@sha256:1d418c65d82ccad205b7889be4ba161d3cbfa8b1fb75b21c8fcf02de38fad9ca
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8d7266b405ebb2dd24a9f7c12d3921024f547c3d8c01831e6bcfc1d551d63be1
        - quay.io/mongodb/mongodb-agent@sha256:c5f767543bf99063c9aa43b32e468212617146c3ca9257caf1f23b6db4bd66d4
        - quay.io/mongodb/mongodb-enterprise-server@sha256:11ab324698f919f84a5dab5a964d93fe63f98a48146bb3b86974cba7606d30ec
        - quay.io/mongodb/mongodb-enterprise-server@sha256:85c1d669c073caf9cbaac815e4c8ea2ca18b71deefa03bf84cd6d8b8ebd53e12
        - quay.io/mongodb/mongodb-enterprise-server@sha256:df6081325ea2fe01d1b27d0c70005dec8232aaf51a43d91661b722b8a1761263
        - quay.io/mongodb/mongodb-agent@sha256:f65388a48f65c894759bc9c2e7434e29e45d967d32ca5841b3ab8ff90c4a41a4
        - quay.io/mongodb/mongodb-kubernetes@sha256:22e4ae882cff477adc99cb74bc979cb112d9e0abf37509298a3839fea274ae75
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0fde236fe26d5b20210d6f246aadacd7845874712def516cbe2eec11d79d5181
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:e4f65fc4156cbbc32d18616d9f1cd353935758872f9d809eaf785d645aa637cf
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8d7e5361c2a1604dec3fc671d629806fe6ddc6df524b69a441b86933a4b30093
        - quay.io/mongodb/mongodb-enterprise-server@sha256:523566f44cbb6bbf0cd12b1adae939a883f2254c78dc4b8c9d0098581337b1db
        - quay.io/mongodb/mongodb-enterprise-server@sha256:19925e1297ab652db59c35f53e7b7c8b2b277f8ecdc4215682961aaf2b3e924e
        - quay.io/mongodb/mongodb-agent@sha256:1e93699e4157b5a78a7bca90d9243e586e13413855fbe2bf1e795bfc16c5fefd
        - quay.io/mongodb/mongodb-agent@sha256:8b3b301143c4f3bb25757896a930a10a9ba4852b109dbc5670eedd8ba011e61e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c48631742ad1fec8a9ee745fc3cc9ca1fe7d86ef7fa68ad8e8337c7a4566dc87
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3fe62f3ad52707ccf0e9993c69891e44c569a4b4e1a3244cf60e3b5fdde57bd2
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:ca4aad523f14d68fccb60256f9ce8909c66ebb5b321ee15e5abf9ac5738947f9
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:b7764c316eeacffd3f9ddae62d9fd2a74eb58484d2cfd5021e460095d604764f
        - quay.io/mongodb/mongodb-kubernetes-init-database@sha256:1d3167a886ea108407be1f3d7eaa89c9607ff26fd49badf343bed02d848b6e9c
        - quay.io/mongodb/mongodb-agent@sha256:e131c100978db4c7a0a7be335e9e153af594d77a2dae42bb16672857785a7ef3
        - quay.io/mongodb/mongodb-agent@sha256:adaa6f9364bad38c535fa9f28d7e9b364e19148add50784ae67bed7c289e0a5f
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:a4590af027182305913f0de1a2e37ad8612bd73b8b31f4df11068b80089021ff
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:f71b027fccf649f18f63f8df7a59b1bac421a2cdab6712e0c985a93c08ed970a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa8683500e8d3632c4588bbcdddb4e3186a01f48aefe1b6d95f8860dae8b6c76
        - quay.io/mongodb/mongodb-enterprise-server@sha256:b00ac773623e1bf422b47e6d783263d2d08737865abe9abbe106d86d1ea25165
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:d81eac2129b6ab8346be1749c56ea67f6da64d4ee0fb9f3ff4171ba0f61918eb
        - quay.io/mongodb/mongodb-agent@sha256:a8358ce465adf463d8e73916d7944765d7aaf2b0ed10bd3b8119a87fc9080667
        - quay.io/mongodb/mongodb-agent@sha256:fa30370a75e8e4ac648650ceb39a7a259a754aab8a48d7e2f2801cd1b777e91b
        - quay.io/mongodb/mongodb-enterprise-server@sha256:15e31285c8949a4666f7702df53416b0905d76945a28575a6028a876cc8a6f0f
        - quay.io/mongodb/mongodb-agent@sha256:633ca84d79d393f926d102dd27233df79765e0af69f5dde53288d3fdb10c0304
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:1076466ae62fc41d751b266bbc672619195b523c42118af40c1e6382ea102897
        - quay.io/mongodb/mongodb-enterprise-server@sha256:e7aeedb752dda77cf0e49df3430843b5a2bba64c8404628a983f46640d316808
        - quay.io/mongodb/mongodb-enterprise-server@sha256:37af0913742b6de339c7e664b30f35dcef04506529e4a09a9bbbdd57643f7149
        - quay.io/mongodb/mongodb-enterprise-server@sha256:5c8553e5ba115657fb878c0fe08704af9fd5decec572a87d89d2c8c156ffc9f9
        - quay.io/mongodb/mongodb-agent@sha256:793ae31c0d328fb3df1d3aa526f94e466cc2ed3410dd865548ce38fa3859cbaa
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7885ab6e88214f9289d8babf5189136dde0dd4c84a15a5481ccd3ef512b2e66f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:9bef77e905dadd1e61d0439dd53b21ed1f3606e49affd9ffc4ba8156578e8f0f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d21c65780cadc9d8668d2c28935d492625d6993f13ba562722200a819281cbcc
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f1e72679b2468aed2f3c3106568327911e6594c9ee15f7348e953eaa0d8fd44a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:454b1585c342375dea643b10ead688d0f62347841f5f30059fcd4f92e3297ee9
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:960e10cf184213397b078038879e8a36aec54dc5de928afc459e0fc833ebb94d
        - quay.io/mongodb/mongodb-enterprise-server@sha256:655896bac9e82de8e9729d59a36c3a31f66235f22b93449260a2ccb7709de084
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:5d299820bb903f0cdfdf2626a3c44099d2eaee16188cd8234d2ff3a57259b3a7
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:76500f012df908d247835696a65462b39880b31128f6916e852442b41de26af9
        - quay.io/mongodb/mongodb-enterprise-server@sha256:778f9e29e36d6687cd17dd95ec1f8127d2a732bde1a2dd5821212eb55c1c998a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3add8b68bfbaa42596fe5dbbee4623ba5ff1a826b18bb71301525adf574dcb94
        - quay.io/mongodb/mongodb-enterprise-server@sha256:5145c97d2281aabcd8538ff515c3833aa48acb66b0b739fb1881120c1985d88a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:dfd4277f0c16ed476ac7de51894739e8c8d13a65ea5024b9a97b3dce0f6c6975
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c752a7f0726d21d55f204a359b85fa29cd727a5fe571b37289ae3ea52d6206b0
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:146c4f5dc443f94f54d72808b4e4df93bb904e23589b222d17700166780776b4
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:5e3982493e85ac1e40536758c3145b7c2fff9a7b4be9d053ee41201363a89920
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8445d59d491a6d3890ea9c8b421214bcd0fdcfbc420ed40497a790b79f0bc89e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:fb8397cbcdbf7c33f6ad142492792771127f0d9a8c46388f350b6927405ee590
        - quay.io/mongodb/mongodb-agent@sha256:fc7660f019142dee4e2ec893bd3e1c94759f77264aea1e24d850d9c5489be307
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d323c1bcd14118cc537ac282996ea5a58756d20b6b73f1eec0efa8710d246077
        - quay.io/mongodb/mongodb-enterprise-server@sha256:720056b985c1a16d48b2aecb7a88a15cba3d8186e55b3c6c24729699a85c8232
        - quay.io/mongodb/mongodb-enterprise-server@sha256:67238129df09d33ee4746ff1acb5515d699a29d9f42350eae3f3f69ccb7fbf54
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:85b4e954c9c4bbe1019774bad1e05e9c8dc175648b01d3badf0b64143f182019
        - quay.io/mongodb/mongodb-agent@sha256:1c56e367eff4bd2106dbc3ced496d3fc084d265e4f375a5c91f73d485611daf5
        - quay.io/mongodb/mongodb-enterprise-server@sha256:9a3a6496be0d2d446e6d654eb56386c7726e0cd2d7232f6dcec579923edf0014
        - quay.io/mongodb/mongodb-enterprise-server@sha256:172e338a43df01ee5408d8d1e3cb038d2c55e77761c1a2ac6ed37959d1525140
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:6c475c3180bcfa1d1cdbd41c4aaca4d0eca82404fa1e35547c57c971fa3fe25c
        - quay.io/mongodb/mongodb-enterprise-server@sha256:33a30d11969eb21952681108092fe7f916e25c8e1de43e6a4e40e126025a2bec
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7a93a0276531ff9be4c90bb8fe8d104e0a9e930c29792aafe03cc6a76a9fa89c
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:702f529cb9d8d9042e54263f8bc37b40c062ac2695efc3e7150819779886e323
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:439d6fefb469613432e2d05149dfc96c32b16469d743835d5f402a2ada8be8cc
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:33bbd29b74f95baad522b380d70bcc9f933a3fee57642c37b09376c86179c40f
        - quay.io/mongodb/mongodb-kubernetes-database@sha256:34bca0371c641a44249cc1aa5edb7640a640717ea4cbe6ae392945583178f184
        - quay.io/mongodb/mongodb-agent@sha256:b422829aac63f068aed4a6948fd14cbd3c3bfad6d47ab76523f6839bf20b0203
        - quay.io/mongodb/mongodb-enterprise-server@sha256:a48a4d5c275fd669a27469649fb39ea38c728dbcf9f0a9da4e7cf27a2ce912ed
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:78f11c9cd5e63f2b0e10c67dc1491f4ce1279fa90178c108814725414defab9a
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:fa4aa97767bd19cf3711a74bf21ecb9cbbc25fed6b6b09a2eb241ebd3fbc8f3a
        - quay.io/mongodb/mongodb-kubernetes-init-appdb@sha256:8fd9a9d0ea8e086208a8fe1adae8a37a8d6bdc424e0260b8fb73f1a4a064675c
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:adeab0dc766a27138db7df5f37cbb1da860c14179ef631b2e001e5bb875325e4
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:3bbd3d7fd45d107621e7770f2b4c2a758e148cd472e0ee21719442f71bf6ade0
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:b9ab7147b59b62e40a69c6400f87d0c7faecfa5462bed6e68ca653b00e50b887
        - quay.io/mongodb/mongodb-agent@sha256:f2d1728df506f2a6e8daea0d6b5e12f0c142a11602e274872ac5a4dc0175e135
        - quay.io/mongodb/mongodb-enterprise-server@sha256:a86c4d8a0b9ca3c20cc524809676eb03a944ada43378ec98c107cd72cc64700f
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:09788976bdc1327acbf18cedf8efd5fca2159e43b506faa40e03ee42ad94928a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa300abf739e26350a258f643fa8e57aedacd041055c7b923bd22b21ef554cdb
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f2d9a3264a8814f33143b73c56624572fb80afeab184133d3a901713a31c1a87
        - quay.io/mongodb/mongodb-agent@sha256:62323b0ef76858002abc1ec3fba29f28ff2b914e1050ddac1cb933ba0624b29e
        - quay.io/mongodb/mongodb-agent@sha256:8d88da240cad77b0092849d344cf64e1fedfcc320299158c4310833572ac4a6f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3316015ac0699d66ac73f714e5dc0784738654e0349e80b1e1f4e953b3c88964
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:b8aa1edbc5fb02af312a863bc7db8535a282dfd692a07b1e321e5a1acbfeb6a1
        - quay.io/mongodb/mongodb-enterprise-server@sha256:bfbcfcfc5f0de22e20520b2d96f826638e424adb028a909ccc192013d11f5833
        - registry.connect.redhat.com/mongodb/mongodb-kubernetes-bundle@sha256:11671abdb92a1bc5b1b8ef736f70d9dba78eedb66c79030ebb8f2ddfba4b184f
        - quay.io/mongodb/mongodb-kubernetes-init-ops-manager@sha256:da648073110d0fef7f2cdb5a5a16f363beb9ff80ec1eaab139af65c55a9fd865
        - quay.io/mongodb/mongodb-agent@sha256:0caca86af01da94d5e552cd200a5b110f4aa0a42e68522483b970d37afc576a0
        - quay.io/mongodb/mongodb-enterprise-server@sha256:ef732e3eea91cc86caf2eabedc0c9115ed235a8d204f33e74bbf090a0b0259fb
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d49417ea85ee1ddb84429552a5aac87a82c2843904d8c0300a43b657b7a49e0e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:1a77851485ad3b2566e765b4bb051ff0ddfa48703492cef6c6db021dde84d87f
        - quay.io/mongodb/mongodb-search@sha256:c1e636119aa206ff98cefed37ee4b488d75c6a5e6025dcb71f44275a8f3f546a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c8aec83b76dfecc05b8f5d8f40fd61b24980c0287a07294f75f321c2d42c32b4
        - quay.io/mongodb/mongodb-enterprise-server@sha256:376ad7e5fe42651d946cba5705c0eee44aa636c1b4ff258210e4ce2fe4205b4d
        - quay.io/mongodb/mongodb-agent@sha256:fb0f4825bdbe7972cc2aada5b1687191e156c28a7259de191d40b9fbd0b10367
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:cd869ff7d661059fad7593e30141d74e8cc751295b1579577f7a853396eb5d0b
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d2d8b59c1f39c41951e7878963f8496eb494688720366f8edc7060887cdbe6a0
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:895dbdfb87ddc2e9693671c7108a31ab28e16fec2e5be6d046bdd2e30319eade
        - quay.io/mongodb/mongodb-agent@sha256:640398a92c86cdafc7ac0aba776b484fc7c465a080f8daebb9946813d511f4a2
        - quay.io/mongodb/mongodb-agent@sha256:3e1ddf6a18bf3a4bc94ded15082b6410c297756277782c276274dd3da71d89e9
        version: 1.6.1
      entries:
      - name: mongodb-kubernetes.v1.6.1
        version: 1.6.1
      - name: mongodb-kubernetes.v1.6.0
        version: 1.6.0
      - name: mongodb-kubernetes.v1.5.0
        version: 1.5.0
      - name: mongodb-kubernetes.v1.4.0
        version: 1.4.0
      - name: mongodb-kubernetes.v1.3.0
        version: 1.3.0
      - name: mongodb-kubernetes.v1.2.0
        version: 1.2.0
      - name: mongodb-kubernetes.v1.1.0
        version: 1.1.0
      - name: mongodb-kubernetes.v1.0.1
        version: 1.0.1
      - name: mongodb-kubernetes.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: mongodb-kubernetes
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-hdfs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hdfs-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/hdfs-operator@sha256:baaeabcb9f77b993a1f0229a76e6736dc39a010f7e614e4d41debdaa2309c249
          description: Stackable Operator for Apache Hadoop HDFS
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/hdfs-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for HdfsClusterSpec via `CustomResource`
            displayName: hdfsclusters.hdfs.stackable.tech
            kind: HdfsCluster
            name: hdfsclusters.hdfs.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Hadoop HDFS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hdfs
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/hdfs-operator@sha256:baaeabcb9f77b993a1f0229a76e6736dc39a010f7e614e4d41debdaa2309c249
        - registry.connect.redhat.com/stackable/stackable-apache-hdfs-operator@sha256:393a2f034c0dc1ebf71b87caf58108c974d310fd4bb4526d3114271967465f77
        version: 25.11.0
      entries:
      - name: hdfs-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-hdfs-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-atlas-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-atlas-kubernetes.v2.12.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupCompliancePolicy",
                "metadata": {
                  "name": "my-backup-compliance-policy"
                },
                "spec": {
                  "authorizedEmail": "john.doe@example.com",
                  "authorizedUserFirstName": "John",
                  "authorizedUserLastName": "Doe",
                  "copyProtectionEnabled": false,
                  "encryptionAtRestEnabled": false,
                  "onDemandPolicy": {
                    "retentionUnit": "weeks",
                    "retentionValue": 3
                  },
                  "overwriteBackupPolicies": false,
                  "pointInTimeEnabled": true,
                  "restoreWindowDays": 42,
                  "scheduledPolicyItems": [
                    {
                      "frequencyInterval": 2,
                      "frequencyType": "daily",
                      "retentionUnit": "days",
                      "retentionValue": 7
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupPolicy",
                "metadata": {
                  "name": "atlasbackuppolicy-sample"
                },
                "spec": {
                  "items": [
                    {
                      "frequencyInterval": 6,
                      "frequencyType": "hourly",
                      "retentionUnit": "days",
                      "retentionValue": 2
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "daily",
                      "retentionUnit": "days",
                      "retentionValue": 7
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "weekly",
                      "retentionUnit": "weeks",
                      "retentionValue": 4
                    },
                    {
                      "frequencyInterval": 15,
                      "frequencyType": "monthly",
                      "retentionUnit": "months",
                      "retentionValue": 12
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupSchedule",
                "metadata": {
                  "name": "atlasbackupschedule-sample"
                },
                "spec": {
                  "autoExportEnabled": false,
                  "copySettings": [
                    {
                      "cloudProvider": "AWS",
                      "frequencies": [
                        "WEEKLY"
                      ],
                      "regionName": "US_WEST_1",
                      "shouldCopyOplogs": false
                    }
                  ],
                  "policy": {
                    "name": "atlasbackuppolicy-sample"
                  },
                  "referenceHourOfDay": 10,
                  "referenceMinuteOfHour": 10,
                  "restoreWindowDays": 2,
                  "useOrgAndGroupNamesInExportPrefix": true
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasCustomRole",
                "metadata": {
                  "name": "shard-operator-role"
                },
                "spec": {
                  "projectRef": {
                    "name": "my-project"
                  },
                  "role": {
                    "actions": [
                      {
                        "name": "getShardMap",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      },
                      {
                        "name": "shardingState",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      },
                      {
                        "name": "connPoolStats",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      },
                      {
                        "name": "getLog",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      }
                    ],
                    "inheritedRoles": [
                      {
                        "database": "admin",
                        "name": "operator-role-1"
                      }
                    ],
                    "name": "my-role"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDataFederation",
                "metadata": {
                  "name": "my-data-federation",
                  "namespace": "mongodb-atlas-system"
                },
                "spec": {
                  "name": "my-data-federation",
                  "privateEndpoints": [
                    {
                      "endpointId": "vpce-03f9eeaa764e32454",
                      "provider": "AWS",
                      "type": "DATA_LAKE"
                    }
                  ],
                  "projectRef": {
                    "name": "my-project",
                    "namespace": "mongodb-atlas-system"
                  },
                  "storage": {
                    "databases": [
                      {
                        "collections": [
                          {
                            "dataSources": [
                              {
                                "storeName": "http-test",
                                "urls": [
                                  "https://data.cityofnewyork.us/api/views/vfnx-vebw/rows.csv"
                                ]
                              }
                            ],
                            "name": "test-collection-1"
                          }
                        ],
                        "name": "test-db-1"
                      }
                    ],
                    "stores": [
                      {
                        "name": "http-test",
                        "provider": "http"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDatabaseUser",
                "metadata": {
                  "name": "my-database-user"
                },
                "spec": {
                  "databaseName": "admin",
                  "passwordSecretRef": {
                    "name": "the-user-password"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "roles": [
                    {
                      "databaseName": "admin",
                      "roleName": "readWriteAnyDatabase"
                    }
                  ],
                  "username": "theuser"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDeployment",
                "metadata": {
                  "name": "my-atlas-deployment"
                },
                "spec": {
                  "backupRef": {
                    "name": "atlasbackupschedule-sample"
                  },
                  "deploymentSpec": {
                    "backupEnabled": true,
                    "clusterType": "REPLICASET",
                    "mongoDBMajorVersion": "7.0",
                    "name": "test-deployment",
                    "replicationSpecs": [
                      {
                        "regionConfigs": [
                          {
                            "electableSpecs": {
                              "instanceSize": "M10",
                              "nodeCount": 3
                            },
                            "priority": 7,
                            "providerName": "AWS",
                            "regionName": "US_EAST_1"
                          }
                        ],
                        "zoneName": "Zone 1"
                      }
                    ],
                    "tags": [
                      {
                        "key": "team",
                        "value": "atlas-operator"
                      }
                    ]
                  },
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasFederatedAuth",
                "metadata": {
                  "name": "atlas-default-federated-auth",
                  "namespace": "mongodb-atlas-system"
                },
                "spec": {
                  "connectionSecretRef": {
                    "name": "my-org-secret",
                    "namespace": "mongodb-atlas-system"
                  },
                  "domainAllowList": [
                    "my-org-domain.com"
                  ],
                  "domainRestrictionEnabled": true,
                  "enabled": true,
                  "postAuthRoleGrants": [
                    "ORG_MEMBER"
                  ],
                  "roleMappings": [
                    {
                      "externalGroupName": "org-admin",
                      "roleAssignments": [
                        {
                          "role": "ORG_OWNER"
                        }
                      ]
                    },
                    {
                      "externalGroupName": "dev-team",
                      "roleAssignments": [
                        {
                          "role": "ORG_GROUP_CREATOR"
                        },
                        {
                          "projectName": "dev-project",
                          "role": "GROUP_OWNER"
                        }
                      ]
                    }
                  ],
                  "ssoDebugEnabled": false
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasIPAccessList",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasipaccesslist-sample"
                },
                "spec": {
                  "entries": [
                    {
                      "cidrBlock": "192.168.1.0/24"
                    },
                    {
                      "deleteAfterDate": "2025-01-20T23:59:59+02:00",
                      "ipAddress": "10.0.0.1"
                    }
                  ],
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkContainer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasnetworkcontainer-sample"
                },
                "spec": {
                  "cidrBlock": "10.11.0.0/16",
                  "connectionSecret": {
                    "name": "atlas-connection-secret"
                  },
                  "externalProjectRef": {
                    "projectId": "66e2f2b621571b7e69a89b66"
                  },
                  "provider": "AWS",
                  "region": "US_EAST_1"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkPeering",
                "metadata": {
                  "name": "atlasnetworkpeering-sample"
                },
                "spec": {
                  "atlasCidrBlock": "10.12.0.0/16",
                  "awsConfiguration": {
                    "accepterRegionName": "US_EAST_1",
                    "awsAccountId": "23214235145",
                    "routeTableCidrBlock": "10.11.0.0/16",
                    "vpcId": "vpcid-7123782134"
                  },
                  "containerId": "623412394512350",
                  "containerRegion": "US_EAST_1",
                  "projectRef": {
                    "name": "atlas-project",
                    "namespace": "namespace"
                  },
                  "provider": "AWS"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasPrivateEndpoint",
                "metadata": {
                  "name": "atlasprivateendpoint-sample"
                },
                "spec": {
                  "awsConfiguration": {
                    "id": "vpce-f4k34w51d"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "provider": "AWS",
                  "region": "EU_CENTRAL_1"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasProject",
                "metadata": {
                  "name": "my-project"
                },
                "spec": {
                  "name": "Test Atlas Operator Project",
                  "projectIpAccessList": [
                    {
                      "comment": "IP address for Application Server A",
                      "ipAddress": "192.0.2.15"
                    },
                    {
                      "cidrBlock": "203.0.113.0/24",
                      "comment": "CIDR block for Application Server B - D"
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasSearchIndexConfig",
                "metadata": {
                  "name": "atlassearchindexconfig-sample"
                },
                "spec": {
                  "analyzer": "lucene.standard",
                  "analyzers": [
                    {
                      "name": "test-analyzer",
                      "tokenFilters": [
                        {
                          "asciiFolding": {
                            "originalTokens": "omit"
                          },
                          "type": "asciiFolding"
                        }
                      ],
                      "tokenizer": {
                        "type": "whiteSpace",
                        "whitespace": {
                          "maxTokenLenght": 200
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasStreamConnection",
                "metadata": {
                  "name": "my-streamconnection-kafka"
                },
                "spec": {
                  "kafkaConfig": {
                    "authentication": {
                      "credentials": {
                        "name": "kafka-userpass"
                      },
                      "mechanism": "SCRAM-512"
                    },
                    "bootstrapServers": "kafka.server1:9001,kafka.server2:9002,kafka.server3:9003",
                    "security": {
                      "certificate": {
                        "name": "kafka-cert"
                      },
                      "protocol": "SSL"
                    }
                  },
                  "name": "kafka-config",
                  "type": "Kafka"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasStreamInstance",
                "metadata": {
                  "name": "my-streaminstance-sample"
                },
                "spec": {
                  "clusterConfig": {
                    "provider": "AWS",
                    "region": "VIRGINIA_USA",
                    "tier": "SP30"
                  },
                  "connectionRegistry": [
                    {
                      "name": "my-streamconnection-sample"
                    }
                  ],
                  "name": "my-instance",
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasTeam",
                "metadata": {
                  "name": "atlasteam-sample"
                },
                "spec": {
                  "name": "my-team",
                  "usernames": [
                    "username@mongodb.com"
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasThirdPartyIntegration",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasintegration-sample"
                },
                "spec": {
                  "datadog": {
                    "apiKeySecretRef": {
                      "name": "secret-ref"
                    },
                    "region": "string",
                    "sendCollectionLatencyMetrics": "string",
                    "sendDatabaseMetrics": "string"
                  },
                  "projectRef": {
                    "name": "my-atlas-project"
                  },
                  "type": "DATADOG"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/mongodb/mongodb-atlas-kubernetes-operator:2.12.0
          createdAt: "2025-12-03T08:37:51Z"
          description: The MongoDB Atlas Kubernetes Operator enables easy management
            of Clusters in MongoDB Atlas
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/mongodb/mongodb-atlas-kubernetes
          support: support@mongodb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AtlasBackupCompliancePolicy
            name: atlasbackupcompliancepolicies.atlas.mongodb.com
            version: v1
          - kind: AtlasBackupPolicy
            name: atlasbackuppolicies.atlas.mongodb.com
            version: v1
          - kind: AtlasBackupSchedule
            name: atlasbackupschedules.atlas.mongodb.com
            version: v1
          - kind: AtlasCustomRole
            name: atlascustomroles.atlas.mongodb.com
            version: v1
          - kind: AtlasDatabaseUser
            name: atlasdatabaseusers.atlas.mongodb.com
            version: v1
          - kind: AtlasDataFederation
            name: atlasdatafederations.atlas.mongodb.com
            version: v1
          - kind: AtlasDeployment
            name: atlasdeployments.atlas.mongodb.com
            version: v1
          - kind: AtlasFederatedAuth
            name: atlasfederatedauths.atlas.mongodb.com
            version: v1
          - kind: AtlasIPAccessList
            name: atlasipaccesslists.atlas.mongodb.com
            version: v1
          - kind: AtlasNetworkContainer
            name: atlasnetworkcontainers.atlas.mongodb.com
            version: v1
          - kind: AtlasNetworkPeering
            name: atlasnetworkpeerings.atlas.mongodb.com
            version: v1
          - kind: AtlasOrgSettings
            name: atlasorgsettings.atlas.mongodb.com
            version: v1
          - kind: AtlasPrivateEndpoint
            name: atlasprivateendpoints.atlas.mongodb.com
            version: v1
          - kind: AtlasProject
            name: atlasprojects.atlas.mongodb.com
            version: v1
          - kind: AtlasSearchIndexConfig
            name: atlassearchindexconfigs.atlas.mongodb.com
            version: v1
          - kind: AtlasStreamConnection
            name: atlasstreamconnections.atlas.mongodb.com
            version: v1
          - kind: AtlasStreamInstance
            name: atlasstreaminstances.atlas.mongodb.com
            version: v1
          - kind: AtlasTeam
            name: atlasteams.atlas.mongodb.com
            version: v1
          - kind: AtlasThirdPartyIntegration
            name: atlasthirdpartyintegrations.atlas.mongodb.com
            version: v1
        description: |
          The MongoDB Atlas Operator provides a native integration between the Kubernetes orchestration platform and MongoDB
          Atlas — the only multi-cloud document database service that gives you the versatility you need to build sophisticated
          and resilient applications that can adapt to changing customer demands and market trends.

          The full documentation for the Operator can be found [here](https://docs.atlas.mongodb.com/atlas-operator/)

          ## Getting Started

          ### Supported features

          * Create and configure a project, or connect to an existing one.
          * Deploy, manage, scale, and tear down clusters.
          * Support for serverless instances.
          * Create and edit database users.
          * Manage IP Access Lists, network peering and private endpoints.
          * Configure and control Atlas’s fully managed cloud backup.
          * Configure federated authentication for your Atlas organization
          * Integrate Atlas monitoring with Prometheus.

          ... and more.

          To view the list of custom resources and each CR's schema, visit our [reference](https://www.mongodb.com/docs/atlas/operator/stable/custom-resources/)
          documentation. See the [Quickstart](https://www.mongodb.com/docs/atlas/operator/stable/ak8so-quick-start/) to get
          started with Atlas Kubernetes Operator.
        displayName: MongoDB Atlas Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - MongoDB
        - Atlas
        - Database
        - Replica Set
        - Cluster
        links:
        - name: MongoDB Atlas Kubernetes
          url: https://github.com/mongodb/mongodb-atlas-kubernetes
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: beta
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/community-operator-pipeline-prod/mongodb-atlas-kubernetes@sha256:c4f1a2e3a81fc9d48480264ea236acf93ac12b1b719a83adfa8c9ce62d8b49e6
        - quay.io/mongodb/mongodb-atlas-kubernetes-operator:2.12.0
        version: 2.12.0
      entries:
      - name: mongodb-atlas-kubernetes.v2.12.0
        version: 2.12.0
      - name: mongodb-atlas-kubernetes.v2.11.1
        version: 2.11.1
      - name: mongodb-atlas-kubernetes.v2.11.0
        version: 2.11.0
      - name: mongodb-atlas-kubernetes.v2.10.0
        version: 2.10.0
      - name: mongodb-atlas-kubernetes.v2.9.1
        version: 2.9.1
      - name: mongodb-atlas-kubernetes.v2.9.0
        version: 2.9.0
      - name: mongodb-atlas-kubernetes.v2.8.2
        version: 2.8.2
      - name: mongodb-atlas-kubernetes.v2.8.1
        version: 2.8.1
      - name: mongodb-atlas-kubernetes.v2.8.0
        version: 2.8.0
      - name: mongodb-atlas-kubernetes.v2.7.1
        version: 2.7.1
      - name: mongodb-atlas-kubernetes.v2.7.0
        version: 2.7.0
      - name: mongodb-atlas-kubernetes.v2.6.1
        version: 2.6.1
      - name: mongodb-atlas-kubernetes.v2.6.0
        version: 2.6.0
      - name: mongodb-atlas-kubernetes.v2.5.0
        version: 2.5.0
      - name: mongodb-atlas-kubernetes.v2.4.1
        version: 2.4.1
      - name: mongodb-atlas-kubernetes.v2.4.0
        version: 2.4.0
      - name: mongodb-atlas-kubernetes.v2.3.1
        version: 2.3.1
      - name: mongodb-atlas-kubernetes.v2.3.0
        version: 2.3.0
      - name: mongodb-atlas-kubernetes.v2.2.2
        version: 2.2.2
      - name: mongodb-atlas-kubernetes.v2.2.1
        version: 2.2.1
      - name: mongodb-atlas-kubernetes.v2.2.0
        version: 2.2.0
      - name: mongodb-atlas-kubernetes.v2.1.0
        version: 2.1.0
      - name: mongodb-atlas-kubernetes.v2.0.1
        version: 2.0.1
      - name: mongodb-atlas-kubernetes.v2.0.0
        version: 2.0.0
      - name: mongodb-atlas-kubernetes.v1.9.1
        version: 1.9.1
      - name: mongodb-atlas-kubernetes.v1.9.0
        version: 1.9.0
      - name: mongodb-atlas-kubernetes.v1.8.2
        version: 1.8.2
      - name: mongodb-atlas-kubernetes.v1.8.1
        version: 1.8.1
      - name: mongodb-atlas-kubernetes.v1.8.0
        version: 1.8.0
      - name: mongodb-atlas-kubernetes.v1.7.3
        version: 1.7.3
      - name: mongodb-atlas-kubernetes.v1.7.2
        version: 1.7.2
      - name: mongodb-atlas-kubernetes.v1.7.1
        version: 1.7.1
      - name: mongodb-atlas-kubernetes.v1.7.0
        version: 1.7.0
      name: stable
    defaultChannel: stable
    packageName: mongodb-atlas-kubernetes
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: proactive-node-scaling-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: proactive-node-scaling-operator.v0.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "NodeScalingWatermark",
                "metadata": {
                  "name": "ai-ml"
                },
                "spec": {
                  "nodeSelector": {
                    "machine.openshift.io/cluster-api-machine-type": "ai-ml"
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "workload",
                      "operator": "Equal",
                      "value": "ai-ml"
                    }
                  ],
                  "watermarkPercentage": 20
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "NodeScalingWatermark",
                "metadata": {
                  "name": "us-west-2a"
                },
                "spec": {
                  "nodeSelector": {
                    "topology.kubernetes.io/zone": "us-west-2a"
                  },
                  "watermarkPercentage": 20
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          certified: "false"
          containerImage: quay.io/redhat-cop/proactive-node-scaling-operator@sha256:892303babb45090a6458cd4b1c61a01364012c43ea0bd6ed4d10bdcb8041e2ab
          createdAt: "2022-01-22T14:14:23Z"
          description: This operator provides automation proactively scaling nodes
            before pods get stuck waiting for the cluster autoscaler.
          operatorframework.io/suggested-namespace: proactive-node-scaling-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/proactive-node-scaling-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeScalingWatermark is the Schema for the nodescalingwatermarks
              API
            displayName: Node Scaling Watermark
            kind: NodeScalingWatermark
            name: nodescalingwatermarks.redhatcop.redhat.io
            version: v1alpha1
        description: |
          This operator makes the [cluster autoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler) more proactive. As of now the cluster auto scaler will create new nodes only when a pod is pending because it cannot be allocated due to lack of capacity. This is not a goos user experience as the pending workload has to wait for several minutes as the new node is create and joins the cluster.

          The Proactive Node Scaling Operator improves the user experience by allocating low priority pods that don't do anything. When the cluster is full and a new user pod is created the following happens:

          1. some of the low priority pods are de-scheduled to make room for the user pod, which can then be scheduled. The user workload does not have to wait in this case.

          2. the de-scheduled low priority pods are rescheduled and in doing so the trigger the cluster autoscaler to add new nodes.

          Essentially this operator allows you to trade wasted resources for faster response time.

          In order for this operator to work correctly [pod priorities](https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/) must be defined. The default name for the priority class used by this operator is "proactive-node-autoscaling-pods" and it should have the lowest possible priority, 0. To ensure your regular workloads get a normal priority you should also define a PriorityClass for those with a higher priority than 0 and set globalDefault to true.

          For example:

          ```yaml
          apiVersion: scheduling.k8s.io/v1
          kind: PriorityClass
          metadata:
            name: proactive-node-autoscaling-pods
          value: 0
          globalDefault: false
          description: "This priority class is the priority class used for Proactive Node Scaling Pods."
          ---
          apiVersion: scheduling.k8s.io/v1
          kind: PriorityClass
          metadata:
            name: normal-workload
          value: 1000
          globalDefault: true
          description: "This priority classis the cluster default and should be used for normal workloads."
          ```

          Also for this operator to work the [cluster autoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler) must be active, see OpenShift instructions [here](https://docs.openshift.com/container-platform/4.6/machine_management/applying-autoscaling.html) on how to turn it on.

          To activate the proactive autoscaling, a CR must be defined, here is an example:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: NodeScalingWatermark
          metadata:
            name: us-west-2a
          spec:
            priorityClassName: proactive-node-autoscaling-pods
            watermarkPercentage: 20
            nodeSelector:
              topology.kubernetes.io/zone: us-west-2a
          ```

          The `nodeSelector` selects the nodes observed by this operator, which are also the nodes on which the low priority pods will be scheduled. The nodes observed by the cluster autoscaler should coincide with the nodes selected by this operator CR.

          The `watermarkPercentage` define the percentage of capacity of user workload that will be allocated to low priority pods. So in this example 20% of the user allocated capacity will be allocated via low priority pods. This also means that when the user workload reaches 80% capacity of the nodes selected by this CR (and the autoscaler), the cluster will start to scale.
        displayName: Proactive Node Scaling Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Capacity Management
        - Node Autoscaling
        - Proactive Autoscaling
        - Elastic Capacity
        links:
        - name: Proactive Node Scaling Operator
          url: https://github.com/redhat-cop/proactive-node-scaling-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/proactive-node-scaling-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/proactive-node-scaling-operator@sha256:892303babb45090a6458cd4b1c61a01364012c43ea0bd6ed4d10bdcb8041e2ab
        - quay.io/openshift-community-operators/proactive-node-scaling-operator@sha256:0ae01e9adc67ff7341fa3faf51a67c02206c41342374cab0bb2e6079d84fef4a
        version: 0.4.2
      entries:
      - name: proactive-node-scaling-operator.v0.4.2
        version: 0.4.2
      - name: proactive-node-scaling-operator.v0.4.0
        version: 0.4.0
      - name: proactive-node-scaling-operator.v0.3.10
        version: 0.3.10
      - name: proactive-node-scaling-operator.v0.3.9
        version: 0.3.9
      - name: proactive-node-scaling-operator.v0.3.8
        version: 0.3.8
      - name: proactive-node-scaling-operator.v0.3.7
        version: 0.3.7
      - name: proactive-node-scaling-operator.v0.3.6
        version: 0.3.6
      - name: proactive-node-scaling-operator.v0.3.5
        version: 0.3.5
      - name: proactive-node-scaling-operator.v0.3.4
        version: 0.3.4
      - name: proactive-node-scaling-operator.v0.3.3
        version: 0.3.3
      - name: proactive-node-scaling-operator.v0.3.2
        version: 0.3.2
      - name: proactive-node-scaling-operator.v0.3.1
        version: 0.3.1
      - name: proactive-node-scaling-operator.v0.3.0
        version: 0.3.0
      - name: proactive-node-scaling-operator.v0.2.0
        version: 0.2.0
      - name: proactive-node-scaling-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: proactive-node-scaling-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: group-sync-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: group-sync-operator.v0.0.36
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "azure-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "azure": {
                        "credentialsSecret": {
                          "name": "azure-group-sync",
                          "namespace": "group-sync-operator"
                        }
                      },
                      "name": "azure"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "github-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "github": {
                        "credentialsSecret": {
                          "name": "github-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "organization": "redhat-cop"
                      },
                      "name": "github"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "gitlab-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "gitlab": {
                        "credentialsSecret": {
                          "name": "gitlab-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "url": "https://gitlab.apps.openshift.com"
                      },
                      "name": "gitlab"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "keycloak-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "keycloak": {
                        "credentialsSecret": {
                          "name": "keycloak-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "insecure": true,
                        "realm": "ocp",
                        "url": "https://keycloak.apps.openshift.com"
                      },
                      "name": "keycloak"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "ldap-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "ldap": {
                        "credentialsSecret": {
                          "name": "ldap-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "insecure": true,
                        "rfc2307": {
                          "groupMembershipAttributes": [
                            "member"
                          ],
                          "groupNameAttributes": [
                            "cn"
                          ],
                          "groupUIDAttribute": "dn",
                          "groupsQuery": {
                            "baseDN": "ou=Groups,dc=example,dc=com",
                            "derefAliases": "never",
                            "filter": "(objectClass=groupofnames)",
                            "scope": "sub"
                          },
                          "tolerateMemberNotFoundErrors": true,
                          "tolerateMemberOutOfScopeErrors": true,
                          "userNameAttributes": [
                            "cn"
                          ],
                          "userUIDAttribute": "dn",
                          "usersQuery": {
                            "baseDN": "ou=Users,dc=example,dc=com",
                            "derefAliases": "never",
                            "scope": "sub"
                          }
                        },
                        "url": "ldap://localhost:389"
                      },
                      "name": "ldap"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "okta-sync"
                },
                "spec": {
                  "providers": [
                    {
                      "name": "okta",
                      "okta": {
                        "appId": "okta-sync-app-id",
                        "credentialsSecret": {
                          "name": "okta-api-token",
                          "namespace": "group-sync-operator"
                        },
                        "extractLoginUsername": true,
                        "profileKey": "login",
                        "url": "https://example.okta.com/"
                      }
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/group-sync-operator@sha256:43ef79efc2a77ee5edd4e3123f9dab156a30d3e00fd1fba9f89600b96f0f68d6
          createdAt: "2025-08-12T19:19:21Z"
          description: Synchronize groups and users from external providers
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: group-sync-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/group-sync-operator
          support: Red Hat Community of Practice
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GroupSync is the Schema for the groupsyncs API
            displayName: Group Sync
            kind: GroupSync
            name: groupsyncs.redhatcop.redhat.io
            version: v1alpha1
        description: |
          Synchronizes groups from external providers into OpenShift

          ## Overview

          The OpenShift Container Platform contains functionality to synchronize groups found in external identity providers into the platform. Currently, the functionality that is included in OpenShift to limited to synchronizing LDAP only. This operator is designed to integrate with external providers in order to provide new solutions.

          Group Synchronization is facilitated by creating a `GroupSync` resource. The following describes the high level schema for this resource:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: example-groupsync
          spec:
            providers:
              - <One or more providers to synchronize>
          ```

          ## Authentication

          In most cases, authentication details must be provided in order to communicate with providers. Authentication details are provider specific with regards to the required values. In supported providers, the secret can be referenced in the `credentialsSecret` by name and namespace where it has been created as shown below:

          ```
          credentialsSecret:
            name: <secret_name>
            namespace: <secret_namespace>
          ```

          ## Providers

          Integration with external systems is made possible through a set of pluggable external providers. The following providers are currently supported:

          * [Azure](https://azure.microsoft.com/)
          * [GitHub](https://github.com)
          * [GitLab](https://gitlab.com)
          * [LDAP](https://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol)
          * [Keycloak](https://www.keycloak.org/)/[Red Hat Single Sign On](https://access.redhat.com/products/red-hat-single-sign-on)
          * [Okta](https://www.okta.com/)
          * [IBM Security Verify](https://docs.verify.ibm.com/verify)

          The following sections describe the configuration options available for each provider


          ### Azure

          Groups contained within Azure Active Directory can be synchronized into OpenShift. The following table describes the set of configuration options for the Azure provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `authorityHost` | Azure Active Directory Endpoint | `https://login.microsoftonline.com` | No |
          | `baseGroups` | List of groups to start searching from instead of listing all groups in the directory | | No |
          | `credentialsSecret` | Name of the secret containing authentication details (See below) | | Yes |
          | `filter` | Graph API filter | | No |
          | `groups` | List of groups to filter against | | No |
          | `userNameAttributes` | Fields on a user record to use as the User Name | `userPrincipalName` | No |
          | `prune` | Prune Whether to prune groups that are no longer in Azure | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Azure provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: azure-groupsync
          spec:
            providers:
            - name: azure
              azure:
                credentialsSecret:
                  name: azure-group-sync
                  namespace: group-sync-operator
          ```

          #### Authenticating to Azure

          Authentication to Azure can be performed using Application Registration with access to query group information in Azure Active Directory.

          The App Registration must be granted access to the following Microsoft Graph API's:

          * Group.Read.All
          * GroupMember.Read.All
          * User.Read.All

          A secret must be created in the same namespace that contains the `GroupSync` resource:

          The following keys must be defined in the secret

          * `AZURE_TENANT_ID` - Tenant ID
          * `AZURE_CLIENT_ID` - Client ID
          * `AZURE_CLIENT_SECRET` - Client Secret

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic azure-group-sync --from-literal=AZURE_SUBSCRIPTION_ID=<AZURE_SUBSCRIPTION_ID> --from-literal=AZURE_TENANT_ID=<AZURE_TENANT_ID> --from-literal=AZURE_CLIENT_ID=<AZURE_CLIENT_ID> --from-literal=AZURE_CLIENT_SECRET=<AZURE_CLIENT_SECRET>
          ```

          ### GitHub

          Teams stored within a GitHub organization can be synchronized into OpenShift. The following table describes the set of configuration options for the GitHub provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `caSecret` | Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `organization` | Organization to synchronize against | | Yes |
          | `teams` | List of teams to filter against | | No |
          | `url` | Base URL for the GitHub or GitHub Enterprise host (Must contain a trailing slash) | | No |
          | `prune` | Prune Whether to prune groups that are no longer in GitHub | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Github provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: github-groupsync
          spec:
            providers:
            - name: github
              github:
                organization: ocp
                credentialsSecret:
                  name: github-group-sync
                  namespace: group-sync-operator
          ```

          #### Authenticating to GitHub

          Authentication to GitLab can be performed using a [Token](https://docs.gitlab.com/ee/security/token_overview.html) or a Username and Password (Note: 2FA not supported). A secret must be created in the same namespace that contains the `GroupSync` resource:

          When using an OAuth token, the following token types are supported:

          * Personal Access Token
          * OAuth Token
          * Job Token

          the following key is required:

          * `token` - OAuth token

          Optionally, the `tokenType` key can be specified to indicate the type of token being provided from the following values:

          * OAuth - `oauth`
          * Personal Access Token - `personal`
          * Job Token - `job`

          If no `tokenType` is provided, `oauth` is used by default

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=token=<token>
          ```

          To specify a token type, such as a Personal Access Token, the following command can be executed:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=token=<token> --from-literal=tokenType=personal
          ```

          The following keys are required for username and password:

          * `username` - Username for authenticating with GitHub
          * `password` - Password for authenticating with GitHub

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic github-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          ### GitLab

          Groups stored within a GitLab can be synchronized into OpenShift. The following table describes the set of configuration options for the GitLab provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `ca` | Reference to a resource containing a SSL certificate to use for communication (See below) | | No |
          | `caSecret` | **DEPRECATED** Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `groups` | List of groups to filter against | | No |
          | `prune` | Prune Whether to prune groups that are no longer in GitLab | `false` | No |
          | `scope` | Scope for group synchronization. Options are `one` for one level or `sub` to include subgroups | `sub` | No |
          | `url` | Base URL for the GitLab instance | `https://gitlab.com` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Github provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: gitlab-groupsync
          spec:
            providers:
            - name: gitlab
              gitlab:
                credentialsSecret:
                  name: gitlab-group-sync
                  namespace: group-sync-operator
          ```

          #### Authenticating to GitLab

          Authentication to GitLab can be performed using an OAuth Personal Access Token or a Username and Password (Note: 2FA not supported). A secret must be created in the same namespace that contains the `GroupSync` resource:

          When using an OAuth token, the following key is required:

          * `token` - OAuth token

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=token=<token>
          ```

          The following keys are required for username and password:

          * `username` - Username for authenticating with GitLab
          * `password` - Password for authenticating with GitLab

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          ### LDAP

          Groups stored within an [LDAP](https://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol) server can be synchronized into OpenShift. The LDAP provider implements the included features of the [Syncing LDAP groups](https://docs.openshift.com/container-platform/latest/authentication/ldap-syncing.html) feature and makes use of the libraries from the [OpenShift Command Line](https://docs.openshift.com/container-platform/latest/cli_reference/openshift_cli/getting-started-cli.html) tool to streamline the migration to this operator based implementation.

          The configurations of the three primary schemas (`rfc2307`, `activeDirectory` and `augmentedActiveDirectory`) can be directly migrated as is without any modification.

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `ca` | Reference to a resource containing a SSL certificate to use for communication (See below) | | No |
          | `caSecret` | **DEPRECATED** Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | No |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `groupUIDNameMapping` | User defined name mapping | | No |
          | `rfc2307` | Configuration using the [rfc2307](https://docs.openshift.com/container-platform/latest/authentication/ldap-syncing.html#ldap-syncing-rfc2307_ldap-syncing-groups) schema | | No |
          | `activeDirectory` | Configuration using the [activeDirectory](https://docs.openshift.com/container-platform/4.5/authentication/ldap-syncing.html#ldap-syncing-activedir_ldap-syncing-groups) schema | | No |
          | `augmentedActiveDirectory` | Configuration using the [activeDirectory](https://docs.openshift.com/container-platform/4.5/authentication/ldap-syncing.html#ldap-syncing-augmented-activedir_ldap-syncing-groups) schema | | No |
          | `url` | Connection URL for the LDAP server | `ldap://ldapserver:389` | No |
          | `whitelist` | Explicit list of groups to synchronize |  | No |
          | `blacklist` | Explicit list of groups to not synchronize |  | No |
          | `prune` | Prune Whether to prune groups that are no longer in LDAP | `false` | No |

          The following is an example using the `rfc2307` schema:

          ```
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ldap-groupsync
          spec:
            providers:
            - ldap:
                credentialsSecret:
                  name: ldap-group-sync
                  namespace: group-sync-operator
                insecure: true
                rfc2307:
                  groupMembershipAttributes:
                  - member
                  groupNameAttributes:
                  - cn
                  groupUIDAttribute: dn
                  groupsQuery:
                    baseDN: ou=Groups,dc=example,dc=com
                    derefAliases: never
                    filter: (objectClass=groupofnames)
                    scope: sub
                  tolerateMemberNotFoundErrors: true
                  tolerateMemberOutOfScopeErrors: true
                  userNameAttributes:
                  - cn
                  userUIDAttribute: dn
                  usersQuery:
                    baseDN: ou=Users,dc=example,dc=com
                    derefAliases: never
                    scope: sub
                url: ldap://ldapserver:389
              name: ldap
          ```

          The examples provided in the OpenShift documented referenced previously can be used to construct the schemas for the other LDAP synchronization types.

          #### Authenticating to LDAP

          If authentication is required in order to communicate with the LDAP server, a secret should be created in the same namespace that contains the `GroupSync` resource. The following keys can be defined:

          * `username` - Username (Bind DN) for authenticating with the LDAP server
          * `password` - Password for authenticating with the LDAP server

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic ldap-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          #### Whitelists and Blacklists

          Groups can be explicitly whitelisted or blacklisted in order to control the groups that are eligible to be synchronized into OpenShift. When running LDAP group synchronization using the command line, this configuration is referenced via separate files, but these are instead specified in the `blacklist` and `whitelist` properties as shown below:

          ```
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ldap-groupsync
          spec:
            providers:
            - ldap:
          ...
                whitelist:
                - cn=Online Corporate Banking,ou=Groups,dc=example,dc=com
          ...
              name: ldap
          ```

          ```
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ldap-groupsync
          spec:
            providers:
            - ldap:
          ...
                blacklist:
                - cn=Finance,ou=Groups,dc=example,dc=com
          ...
              name: ldap
          ```

          ### Keycloak

          Groups stored within Keycloak can be synchronized into OpenShift. The following table describes the set of configuration options for the Keycloak provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `ca` | Reference to a resource containing a SSL certificate to use for communication (See below) | | No |
          | `caSecret` | **DEPRECATED** Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
          | `groups` | List of groups to filter against | | No |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `loginRealm` | Realm to authenticate against | `master` | No |
          | `realm` | Realm to synchronize | | Yes |
          | `scope` | Scope for group synchronization. Options are `one` for one level or `sub` to include subgroups | `sub` | No |
          | `url` | Base URL for the Keycloak server. Older versions (<17.0.0) including Red Hat SSO should include the context path `/auth` appended to the hostname  | | Yes |
          | `prune` | Prune Whether to prune groups that are no longer in Keycloak | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Keycloak provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            providers:
            - name: keycloak
              keycloak:
                realm: ocp
                credentialsSecret:
                  name: keycloak-group-sync
                  namespace: group-sync-operator
                url: https://keycloak-keycloak-operator.apps.openshift.com/auth
          ```

          #### Authenticating to Keycloak

          A user with rights to query for Keycloak groups must be available. The following permissions must be associated to the user:

          * Password must be set (Temporary option unselected) on the _Credentials_ tab
          * On the _Role Mappings_ tab, select _master-realm_ or _realm-management_ next to the _Client Roles_ dropdown and then select **Query Groups** and **Query Users**.

          A secret must be created in the same namespace that contains the `GroupSync` resource. It must contain the following keys for the user previously created:

          * `username` - Username for authenticating with Keycloak
          * `password` - Password for authenticating with Keycloak

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic keycloak-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          ### Okta

          [Okta Groups](https://help.okta.com/en/prod/Content/Topics/users-groups-profiles/usgp-main.htm) assigned to [Okta Applications](https://help.okta.com/en/prod/Content/Topics/Apps/Apps_Apps.htm) can be synchronized into OpenShift. The developer docs for the Okta API that the Okta Syncer uses can be found [here](https://developer.okta.com/docs/reference/api/apps/#list-groups-assigned-to-application).
          The following table describes the set of configuration options for the Okta provider:

            | Name | Description | Defaults | Required |
            | ----- | ---------- | -------- | ----- |
            | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
            | `groups` | List of groups to filter against | | No |
            | `url` | Okta organization URL (Must contain a trailing slash) | | Yes |
            | `appId` | Application ID of App Groups are assigned to | | Yes |
            | `extractLoginUsername` | Bool to determine if you should extract username from okta login | | No |
            | `profileKey` | Attribute field on Okta User Profile you would like to use as identity | `login` | No |
            | `groupLimit` | Integer to set the maximum number of groups to retrieve from OKTA per request. | `1000` | No |
            | `prune` | Prune Whether to prune groups that are no longer in OKTA | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with an Okta provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: okta-sync
          spec:
            providers:
              - name: okta
                okta:
                  credentialsSecret:
                    name: okta-api-token
                    namespace: group-sync-operator
                  url: "https://example.okta.com/"
                  appId: okta-sync-app-id
          ```

          #### Authenticating to Okta

          A secret must be created in the same namespace as the group-sync-operator pod. It must contain the following key:

            * `okta-api-token` - Okta API Token for interacting with Okta

          The secret can be created by executing the following command:

            ```shell
            oc create secret generic okta-api-token --from-literal=okta-api-token=<OKTA_API_TOKEN> -n group-sync-operator
            ```

          ### IBM Security Verify

          Groups defined in [IBM Security Verify](https://help.okta.com/en/prod/Content/Topics/users-groups-profiles/usgp-main.htm) (ISV) can be synchronized into OpenShift. Currently only the `userName` field from ISV will be synchronized. The developer docs for the ISV API can be found [here](https://docs.verify.ibm.com/verify/page/api-documentation).
          The following table describes the set of configuration options for the provider:

            | Name | Description | Defaults | Required |
            | ----- | ---------- | -------- | ----- |
            | `credentialsSecret` | Reference to a secret containing authentication details (see below) | `''`  | Yes |
            | `groups` | List of groups to synchronize (see below) | `nil`  | Yes |
            | `tenantUrl` | The ISV tenant URL, for example `https://my-isv.verify.ibm.com`) | `''`  | Yes |

          The following is an example of a minimal configuration that can be applied to integrate with an Okta provider:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ibmsecurityverify-sync
          spec:
              providers:
              - name: ibmsecurityverify
                ibmsecurityverify:
                  credentialsSecret:
                    name: isv-group-sync
                    namespace: group-sync-operator
                  tenantUrl: https://my-isv.verify.ibm.com
                  groups:
                    - name: 'application owners'
                      id: 645001V3V9
                    - name: developer
                      id: 645001V3VA
          ```

          #### Group Objects
          Each group object in the `groups` array must contain an `id` field. The group ID can be retrieved by pulling the group information from the ISV API. Optionally, the object may also contain a `name` which corresponds to the group's display name. When defined, the operator will confirm that the name defined in the YAML matches that received from the API when synchronization occurs; as the group IDs are not human-friendly, using the name can confirm the correct groups are configured. If the names do not match an error will be logged.

          #### Group Names
          The name of each groups created in OpenShift will match the group name in ISV. Any whitespace in the ISV group name will be replaced with a hyphen.

          #### Authenticating to IBM Security Verify

          A secret must be created in the same namespace as the group-sync-operator pod. It must contain the following keys:

          * `clientId` - The API client ID.
          * `clientSecret`- The API client secret.

          See the IBM Security Verify [API documentation](https://docs.verify.ibm.com/verify/docs/api-access) for setting up authentication.

          ### Support for Additional Metadata (Beta)

          Additional metadata based on Keycloak group are also added to the OpenShift groups as Annotations including:

          * Parent/child relationship between groups and their subgroups
          * Group attributes

          ## CA Certificates

          Several providers allow for certificates to be provided in either a _ConfigMap_ or _Secret_ to communicate securely to the target host through the use of a property called `ca`.

          The certificate can be added to a Secret called _keycloak-certs_ using the key `ca.crt` representing the certificate using the following command.

          ```
          oc create secret generic keycloak-certs --from-file=ca.crt=<file>
          ```

          An example of how the CA certificate can be added to the Keycloak provider is shown below:


          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            providers:
            - name: keycloak
              keycloak:
                realm: ocp
                credentialsSecret:
                  name: keycloak-group-sync
                  namespace: group-sync-operator
                caSecret:
                  kind: Secret
                  name: keycloak-certs
                  namespace: group-sync-operator
                  key: ca.crt
                url: https://keycloak-keycloak-operator.apps.openshift.com
          ```

          Alteratively, a _ConfigMap_ can be used instead instead of a _Secret_. This is useful when using the [Certificate injection using Operators](https://docs.openshift.com/container-platform/latest/networking/configuring-a-custom-pki.html#certificate-injection-using-operators_configuring-a-custom-pki) feature.

          The following command can be used to create a _ConfigMap_ containing the certificate:

          ```
          oc create configmap keycloak-certs --from-file=ca.crt=<file>
          ````

          An example of how the CA certificate can be added to the Keycloak provider is shown below:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            providers:
            - name: keycloak
              keycloak:
                realm: ocp
                credentialsSecret:
                  name: keycloak-group-sync
                  namespace: group-sync-operator
                caSecret:
                  kind: ConfigMap
                  name: keycloak-certs
                  namespace: group-sync-operator
                  key: ca.crt
                url: https://keycloak-keycloak-operator.apps.openshift.com
          ```

          ## Scheduled Execution

          A cron style expression can be specified for which a synchronization event will occur. The following specifies that a synchronization should occur nightly at 3AM

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            schedule: "0 3 * * *"
            providers:
            - ...
          ```

          If a schedule is not provided, synchronization will occur only when the object is reconciled by the platform.

          ## Metrics

          Prometheus compatible metrics are exposed by the Operator and can be integrated into OpenShift's default cluster monitoring. To enable OpenShift cluster monitoring, label the namespace the operator is deployed in with the label `openshift.io/cluster-monitoring="true"`.

          ```
          oc label namespace <namespace> openshift.io/cluster-monitoring="true"
          ```
        displayName: Group Sync Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - group
        - user
        - security
        - authorization
        links:
        - name: Group Sync Operator
          url: https://github.com/redhat-cop/group-sync-operator
        maintainers:
        - email: ablock@redhat.com
          name: Andrew Block
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/community-operator-pipeline-prod/group-sync-operator@sha256:fe6fda2de67fc4996d3f388e11faa0130fee19453111c829ba0aaa5be5410d01
        - quay.io/redhat-cop/group-sync-operator@sha256:43ef79efc2a77ee5edd4e3123f9dab156a30d3e00fd1fba9f89600b96f0f68d6
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:b8a174be91f3df75dff9656d4c72de28af51a731008e9e96db5eef3c7af58aac
        version: 0.0.36
      entries:
      - name: group-sync-operator.v0.0.36
        version: 0.0.36
      - name: group-sync-operator.v0.0.35
        version: 0.0.35
      - name: group-sync-operator.v0.0.34
        version: 0.0.34
      - name: group-sync-operator.v0.0.33
        version: 0.0.33
      - name: group-sync-operator.v0.0.32
        version: 0.0.32
      - name: group-sync-operator.v0.0.31
        version: 0.0.31
      - name: group-sync-operator.v0.0.30
        version: 0.0.30
      - name: group-sync-operator.v0.0.29
        version: 0.0.29
      - name: group-sync-operator.v0.0.28
        version: 0.0.28
      - name: group-sync-operator.v0.0.27
        version: 0.0.27
      - name: group-sync-operator.v0.0.26
        version: 0.0.26
      - name: group-sync-operator.v0.0.25
        version: 0.0.25
      - name: group-sync-operator.v0.0.24
        version: 0.0.24
      - name: group-sync-operator.v0.0.23
        version: 0.0.23
      - name: group-sync-operator.v0.0.22
        version: 0.0.22
      - name: group-sync-operator.v0.0.21
        version: 0.0.21
      - name: group-sync-operator.v0.0.20
        version: 0.0.20
      - name: group-sync-operator.v0.0.19
        version: 0.0.19
      - name: group-sync-operator.v0.0.18
        version: 0.0.18
      - name: group-sync-operator.v0.0.17
        version: 0.0.17
      - name: group-sync-operator.v0.0.16
        version: 0.0.16
      - name: group-sync-operator.v0.0.15
        version: 0.0.15
      - name: group-sync-operator.v0.0.14
        version: 0.0.14
      - name: group-sync-operator.v0.0.13
        version: 0.0.13
      name: alpha
    defaultChannel: alpha
    packageName: group-sync-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: geunwookim
      provider-url: ""
    name: ncn-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ncn-operator.v0.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cxl.antline.com/v1",
                "kind": "CXL",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cxl-operator",
                    "app.kubernetes.io/instance": "cxl-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cxl",
                    "app.kubernetes.io/part-of": "cxl-operator"
                  },
                  "name": "cxl-1"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          createdAt: "2024-06-19T01:21:08Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CXL is the Schema for the cxls API
            displayName: CXL
            kind: CXL
            name: cxls.cxl.antline.com
            version: v1
        description: This operator is for ncn extend
        displayName: ncn-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ncn
        - memory
        - extend
        links:
        - name: NCN Operator
          url: https://ncn-operator.domain
        maintainers:
        - email: jwahn@antlinesoft.com
          name: Antline-Soft
        maturity: alpha
        provider:
          name: Antline
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        - quay.io/community-operator-pipeline-prod/ncn-operator@sha256:61685ecb519d17160149a5dc16ae28d6fd96264652a6f19fef861addfa4ec6f4
        - quay.io/rasen708/ncn-operator:v0.2.2
        version: 0.2.2
      entries:
      - name: ncn-operator.v0.2.2
        version: 0.2.2
      - name: ncn-operator.v0.2.1
        version: 0.2.1
      - name: ncn-operator.v0.2.0
        version: 0.2.0
      name: beta
    - currentCSV: ncn-operator.v0.9.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cmmd.gw.com/v1",
                "kind": "CMMD",
                "metadata": {
                  "name": "my-app",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "allocateMode": "auto",
                  "enable": true,
                  "payload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "metadata": {
                      "name": "my-app"
                    },
                    "spec": {
                      "replicas": 1,
                      "selector": {
                        "matchLabels": {
                          "name": "my-app"
                        }
                      },
                      "template": {
                        "metadata": {
                          "labels": {
                            "name": "my-app"
                          }
                        },
                        "spec": {
                          "containers": [
                            {
                              "image": "quay.io/my-account/my-app:latest",
                              "name": "my-app-01"
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "cmmd.gw.com/v1",
                "kind": "Label",
                "metadata": {
                  "labels": {
                    "machineconfiguration.openshift.io/role": "cmmd"
                  },
                  "name": "cmmd-node-label",
                  "namespace": "socmmd"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          console.openshift.io/plugins: '["socmmd-console-plugin"]'
          containerImage: quay.io/rasen708/ncn-operator@sha256:a09963745bd9c1419532d42d91237b7496c7a78e6a1c460a8e714ea1a0ce4d45
          createdAt: "2024-08-01T05:45:38Z"
          description: Provides the ncn extend
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "cmmd.gw.com/v1",
              "kind": "Label",
              "metadata": {
                "name": "cmmd-node-label",
                "namespace": "socmmd",
                "labels": {}
              },
              "spec": {}
            }
          operatorframework.io/suggested-namespace: socmmd-system
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/geunwookim/ncn-operator
          support: geunwookim
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CMMD is the Schema for the cmmds API
            displayName: CMMD
            kind: CMMD
            name: cmmds.cmmd.gw.com
            version: v1
          - description: Label is the Schema for the labels API
            displayName: Node Label
            kind: Label
            name: labels.cmmd.gw.com
            version: v1
        description: This operator is for ncn extend
        displayName: ncn-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ncn
        - memory
        - extend
        links:
        - name: NCN Operator
          url: https://ncn-operator.domain
        maintainers:
        - email: geunwookim@gmail.com
          name: geunwookim
        maturity: betav1
        provider:
          name: geunwookim
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        - quay.io/community-operator-pipeline-prod/ncn-operator@sha256:a99a5ca46c5bd3065905588f4d0e3cdc6409d435abdc02793be88e77c1a8f0f5
        - quay.io/rasen708/ncn-operator@sha256:a09963745bd9c1419532d42d91237b7496c7a78e6a1c460a8e714ea1a0ce4d45
        version: 0.9.8
      entries:
      - name: ncn-operator.v0.9.8
        version: 0.9.8
      - name: ncn-operator.v0.9.2
        version: 0.9.2
      - name: ncn-operator.v0.8.1
        version: 0.8.1
      - name: ncn-operator.v0.5.6
        version: 0.5.6
      - name: ncn-operator.v0.4.3
        version: 0.4.3
      - name: ncn-operator.v0.4.2
        version: 0.4.2
      name: betav1
    defaultChannel: betav1
    packageName: ncn-operator
    provider:
      name: geunwookim
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: must-gather-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: must-gather-operator.v1.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "MustGather",
                "metadata": {
                  "name": "example-mustgather"
                },
                "spec": {
                  "caseID": "02527285",
                  "caseManagementAccountSecretRef": {
                    "name": "case-management-creds"
                  },
                  "serviceAccountRef": {
                    "name": "must-gather-admin"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security, Monitoring
          certified: "false"
          containerImage: quay.io/redhat-cop/must-gather-operator@sha256:aebef122cdb8409f5a5d70d3cdc585e02272704d57e103553a84bc6fc238e646
          createdAt: "2021-12-02T17:13:53Z"
          description: This operator provides a facility to easily upload must-gather
            reports to a Red Hat case.
          operatorframework.io/suggested-namespace: global-load-balancer-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/must-gather-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: MustGather
            name: mustgathers.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The must gather operator helps collecting must gather information on a cluster and uploading it to a case.
          To use the operator a cluster administrator can create the following must gather CR:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: MustGather
          metadata:
            name: example-mustgather
          spec:
            caseID: '02527285'
            caseManagementAccountSecretRef:
              name: case-management-creds
          ```

          this request will collect the standard must gather info and upload it to case `#02527285` using the credentials found in the `caseManagementCreds` secret.

          A more complex example:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: MustGather
          metadata:
            name: full-mustgather
          spec:
            caseID: '02527285'
            caseManagementAccountSecretRef:
              name: case-management-creds
            serviceAccountRef:
              name: must-gather-admin
            mustGatherImages:
            - quay.io/kubevirt/must-gather:latest
            - quay.io/ocs-dev/ocs-must-gather
          ```

          in this example we are using a specific service account (which must have cluster admin permissions as per must-gather requirements) and we are specifying a couple of additional must gather images to be run for the `kubevirt` and `ocs` subsystem. If not specified serviceAccountRef.Name will default to `default`. Also the standard must gather image: `quay.io/openshift/origin-must-gather:latest` is always added by default.
        displayName: Must Gather Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - case_management
        - support
        - must_gather
        links:
        - name: Must Gather Operator
          url: https://github.com/redhat-cop/must-gather-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/must-gather-operator
        maintainers:
        - email: rspazzol@redhat.com'
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/must-gather-operator@sha256:a71e5e25aaa92f03334776fee87316809bf2a46dfb34c497d63b228a194982f2
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/must-gather-operator@sha256:aebef122cdb8409f5a5d70d3cdc585e02272704d57e103553a84bc6fc238e646
        version: 1.1.2
      entries:
      - name: must-gather-operator.v1.1.2
        version: 1.1.2
      - name: must-gather-operator.v1.1.1
        version: 1.1.1
      - name: must-gather-operator.v1.1.0
        version: 1.1.0
      - name: must-gather-operator.v1.0.6
        version: 1.0.6
      - name: must-gather-operator.v1.0.5
        version: 1.0.5
      - name: must-gather-operator.v1.0.4
        version: 1.0.4
      - name: must-gather-operator.v1.0.3
        version: 1.0.3
      - name: must-gather-operator.v1.0.2
        version: 1.0.2
      - name: must-gather-operator.v1.0.1
        version: 1.0.1
      - name: must-gather-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: must-gather-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: t8c-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: t8c-operator.v42.96.0-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"externalDbIP":
            "10.0.2.15","customImageNames": false,"repository": "icr.io/cpopen/turbonomic","tag":"8.18.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-operator@sha256:40791802e2355d7e977c7c039bd6ef1284048fdd2d5122fa72807506adba5d5d
          createdAt: "2023-03-24T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=42.53.0-beta.1 <42.96.0-beta.1'
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints. Turbonomic platform install and configuration
              documentation can be found online here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How do I start?

          Turbonomic platform installation and configuration documentation can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
          Carefully read through the prerequisites before beginning the installation.  Once ready, on the `Details` tab for the Turbonomic Platform Operator, under `Provided APIs`, click `Create instance`.
          For samples of common configurations, refer to sample custom resource YAMLs provided here: https://github.com/turbonomic/t8c-install/tree/master/samples
          Looking to upgrade your current deployment? Refer to documentation here: https://www.ibm.com/docs/en/tarm/latest?topic=version-updating-using-red-hat-openshift-operatorhub

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator-bundle@sha256:839f4ba577ed264f57bff73a7360c8e1ee4eb4c4644f6b7e283c53061cc804e7
        - icr.io/cpopen/t8c-operator@sha256:40791802e2355d7e977c7c039bd6ef1284048fdd2d5122fa72807506adba5d5d
        version: 42.96.0-beta.1
      entries:
      - name: t8c-operator.v42.96.0-beta.1
        version: 42.96.0-beta.1
      name: beta
    - currentCSV: t8c-operator.v42.96.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"externalDbIP":
            "10.0.2.15","customImageNames": false,"repository": "icr.io/cpopen/turbonomic","tag":"8.18.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-operator@sha256:c2d188dde455165c2e9da8c6a8f413dea682021cba62dd990af832d23b03d5ab
          createdAt: "2023-03-24T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=42.53.0 <42.96.0'
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints. Turbonomic platform install and configuration
              documentation can be found online here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How do I start?

          Turbonomic platform installation and configuration documentation can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
          Carefully read through the prerequisites before beginning the installation.  Once ready, on the `Details` tab for the Turbonomic Platform Operator, under `Provided APIs`, click `Create instance`.
          For samples of common configurations, refer to sample custom resource YAMLs provided here: https://github.com/turbonomic/t8c-install/tree/master/samples
          Looking to upgrade your current deployment? Refer to documentation here: https://www.ibm.com/docs/en/tarm/latest?topic=version-updating-using-red-hat-openshift-operatorhub

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/t8c-operator@sha256:c2d188dde455165c2e9da8c6a8f413dea682021cba62dd990af832d23b03d5ab
        - registry.connect.redhat.com/turbonomic/t8c-operator-bundle@sha256:b8c8b56082cf7460e5ec879f8099b1732cc56ac1f3b5321b5c90cccad3db11e2
        version: 42.96.0
      entries:
      - name: t8c-operator.v42.96.0
        version: 42.96.0
      name: stable
    defaultChannel: stable
    packageName: t8c-certified
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operator-kogitocloud: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: kogito-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kogito-operator.v1.44.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "process-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogito-infinispan-infra"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "infinispan.org/v1",
                    "kind": "Infinispan"
                  }
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/kiegroup/kogito-operator:1.44.1
          createdAt: "2019-08-22T13:12:22Z"
          description: Kogito Operator for deployment and management of Kogito services.
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/kogito-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.app.kiegroup.org
            version: v1beta1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.app.kiegroup.org
            version: v1beta1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.app.kiegroup.org
            version: v1beta1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.app.kiegroup.org
            version: v1beta1
        description: |-
          Kogito Operator is designed to deploy Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Creates two kinds of build configuration: Native or JVM. For more information refer to [Native build and deployment](https://docs.jboss.org/kogito/release/latest/html_single/#_native_build_and_deployment) section on our docs
          * Builds a Kogito service from a remote git repository and creates a custom image for the given runtime: Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Installs the [Kogito Data Index Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-data-index-service_kogito-deploying-on-openshift) to enable data index feature for Kogito services.
          * Installs the [Kogito Jobs Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-jobs-service_kogito-deploying-on-openshift) to enable jobs scheduling.

          For Kubernetes deployment of Kogito services, please refer to the section [Deploying Kogito services on Kubernetes](https://docs.jboss.org/kogito/release/latest/html_single/#proc-kogito-deploying-on-kubernetes_kogito-deploying-on-openshift) on our docs.

          **IMPORTANT!** Kogito Operator might need Infinispan Operator and Strimzi to implement persistence and messaging use cases if you do not provide these services beforehand.
          If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the Kogito Operator.
        displayName: Kogito
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://kogito.kie.org/
        - name: Documentation
          url: https://github.com/kiegroup/kogito-operator/blob/main/README.md
        - name: Source
          url: https://github.com/kiegroup/kogito-operator/
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.12.0
        - quay.io/kiegroup/kogito-operator:1.44.1
        - quay.io/openshift-community-operators/kogito-operator@sha256:28cd33562ab56c44d65486984cac7edfbdd1336ced1277f1af7df6c2a8073e3e
        version: 1.44.1
      entries:
      - name: kogito-operator.v1.44.1
        version: 1.44.1
      - name: kogito-operator.v1.43.0
        version: 1.43.0
      - name: kogito-operator.v1.42.0
        version: 1.42.0
      - name: kogito-operator.v1.41.0
        version: 1.41.0
      - name: kogito-operator.v1.40.0
        version: 1.40.0
      - name: kogito-operator.v1.39.0
        version: 1.39.0
      - name: kogito-operator.v1.38.0
        version: 1.38.0
      - name: kogito-operator.v1.37.0
        version: 1.37.0
      - name: kogito-operator.v1.36.0
        version: 1.36.0
      - name: kogito-operator.v1.35.0
        version: 1.35.0
      - name: kogito-operator.v1.34.0
        version: 1.34.0
      - name: kogito-operator.v1.33.0
        version: 1.33.0
      - name: kogito-operator.v1.32.0
        version: 1.32.0
      - name: kogito-operator.v1.31.0
        version: 1.31.0
      - name: kogito-operator.v1.30.0
        version: 1.30.0
      - name: kogito-operator.v1.29.0
        version: 1.29.0
      - name: kogito-operator.v1.28.0
        version: 1.28.0
      - name: kogito-operator.v1.27.0
        version: 1.27.0
      - name: kogito-operator.v1.26.0
        version: 1.26.0
      - name: kogito-operator.v1.25.0
        version: 1.25.0
      - name: kogito-operator.v1.24.0
        version: 1.24.0
      - name: kogito-operator.v1.23.0
        version: 1.23.0
      - name: kogito-operator.v1.22.1
        version: 1.22.1
      - name: kogito-operator.v1.22.0
        version: 1.22.0
      - name: kogito-operator.v1.21.0
        version: 1.21.0
      - name: kogito-operator.v1.20.0
        version: 1.20.0
      - name: kogito-operator.v1.19.0
        version: 1.19.0
      - name: kogito-operator.v1.18.0
        version: 1.18.0
      - name: kogito-operator.v1.17.0
        version: 1.17.0
      - name: kogito-operator.v1.16.1
        version: 1.16.1
      - name: kogito-operator.v1.16.0
        version: 1.16.0
      - name: kogito-operator.v1.15.0
        version: 1.15.0
      - name: kogito-operator.v1.14.0
        version: 1.14.0
      - name: kogito-operator.v1.13.0
        version: 1.13.0
      - name: kogito-operator.v1.12.0
        version: 1.12.0
      - name: kogito-operator.v1.11.1
        version: 1.11.1
      - name: kogito-operator.v1.11.0
        version: 1.11.0
      - name: kogito-operator.v1.10.0
        version: 1.10.0
      - name: kogito-operator.v1.9.1
        version: 1.9.1
      - name: kogito-operator.v1.9.0
        version: 1.9.0
      - name: kogito-operator.v1.8.0
        version: 1.8.0
      - name: kogito-operator.v1.7.0
        version: 1.7.0
      - name: kogito-operator.v1.6.0
        version: 1.6.0
      - name: kogito-operator.v1.5.0
        version: 1.5.0
      - name: kogito-operator.v1.4.0
        version: 1.4.0
      name: 1.x
    - currentCSV: kogito-operator.v1.44.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "process-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogito-infinispan-infra"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "infinispan.org/v1",
                    "kind": "Infinispan"
                  }
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/kiegroup/kogito-operator:1.44.1
          createdAt: "2019-08-22T13:12:22Z"
          description: Kogito Operator for deployment and management of Kogito services.
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/kogito-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.app.kiegroup.org
            version: v1beta1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.app.kiegroup.org
            version: v1beta1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.app.kiegroup.org
            version: v1beta1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.app.kiegroup.org
            version: v1beta1
        description: |-
          Kogito Operator is designed to deploy Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Creates two kinds of build configuration: Native or JVM. For more information refer to [Native build and deployment](https://docs.jboss.org/kogito/release/latest/html_single/#_native_build_and_deployment) section on our docs
          * Builds a Kogito service from a remote git repository and creates a custom image for the given runtime: Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Installs the [Kogito Data Index Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-data-index-service_kogito-deploying-on-openshift) to enable data index feature for Kogito services.
          * Installs the [Kogito Jobs Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-jobs-service_kogito-deploying-on-openshift) to enable jobs scheduling.

          For Kubernetes deployment of Kogito services, please refer to the section [Deploying Kogito services on Kubernetes](https://docs.jboss.org/kogito/release/latest/html_single/#proc-kogito-deploying-on-kubernetes_kogito-deploying-on-openshift) on our docs.

          **IMPORTANT!** Kogito Operator might need Infinispan Operator and Strimzi to implement persistence and messaging use cases if you do not provide these services beforehand.
          If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the Kogito Operator.
        displayName: Kogito
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://kogito.kie.org/
        - name: Documentation
          url: https://github.com/kiegroup/kogito-operator/blob/main/README.md
        - name: Source
          url: https://github.com/kiegroup/kogito-operator/
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.12.0
        - quay.io/kiegroup/kogito-operator:1.44.1
        - quay.io/openshift-community-operators/kogito-operator@sha256:28cd33562ab56c44d65486984cac7edfbdd1336ced1277f1af7df6c2a8073e3e
        version: 1.44.1
      entries:
      - name: kogito-operator.v1.44.1
        version: 1.44.1
      - name: kogito-operator.v1.43.0
        version: 1.43.0
      - name: kogito-operator.v1.42.0
        version: 1.42.0
      - name: kogito-operator.v1.41.0
        version: 1.41.0
      - name: kogito-operator.v1.40.0
        version: 1.40.0
      - name: kogito-operator.v1.39.0
        version: 1.39.0
      - name: kogito-operator.v1.38.0
        version: 1.38.0
      - name: kogito-operator.v1.37.0
        version: 1.37.0
      - name: kogito-operator.v1.36.0
        version: 1.36.0
      - name: kogito-operator.v1.35.0
        version: 1.35.0
      - name: kogito-operator.v1.34.0
        version: 1.34.0
      - name: kogito-operator.v1.33.0
        version: 1.33.0
      - name: kogito-operator.v1.32.0
        version: 1.32.0
      - name: kogito-operator.v1.31.0
        version: 1.31.0
      - name: kogito-operator.v1.30.0
        version: 1.30.0
      - name: kogito-operator.v1.29.0
        version: 1.29.0
      - name: kogito-operator.v1.28.0
        version: 1.28.0
      - name: kogito-operator.v1.27.0
        version: 1.27.0
      - name: kogito-operator.v1.26.0
        version: 1.26.0
      - name: kogito-operator.v1.25.0
        version: 1.25.0
      - name: kogito-operator.v1.24.0
        version: 1.24.0
      - name: kogito-operator.v1.23.0
        version: 1.23.0
      - name: kogito-operator.v1.22.1
        version: 1.22.1
      - name: kogito-operator.v1.22.0
        version: 1.22.0
      - name: kogito-operator.v1.21.0
        version: 1.21.0
      - name: kogito-operator.v1.20.0
        version: 1.20.0
      - name: kogito-operator.v1.19.0
        version: 1.19.0
      - name: kogito-operator.v1.18.0
        version: 1.18.0
      - name: kogito-operator.v1.17.0
        version: 1.17.0
      - name: kogito-operator.v1.16.1
        version: 1.16.1
      - name: kogito-operator.v1.16.0
        version: 1.16.0
      - name: kogito-operator.v1.15.0
        version: 1.15.0
      - name: kogito-operator.v1.14.0
        version: 1.14.0
      - name: kogito-operator.v1.13.0
        version: 1.13.0
      - name: kogito-operator.v1.12.0
        version: 1.12.0
      - name: kogito-operator.v1.11.1
        version: 1.11.1
      - name: kogito-operator.v1.11.0
        version: 1.11.0
      - name: kogito-operator.v1.10.0
        version: 1.10.0
      - name: kogito-operator.v1.9.1
        version: 1.9.1
      - name: kogito-operator.v1.9.0
        version: 1.9.0
      - name: kogito-operator.v1.8.0
        version: 1.8.0
      - name: kogito-operator.v1.7.0
        version: 1.7.0
      - name: kogito-operator.v1.6.0
        version: 1.6.0
      - name: kogito-operator.v1.5.0
        version: 1.5.0
      - name: kogito-operator.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: 1.x
    packageName: kogito-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: model-validation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: model-validation-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ml.sigstore.dev/v1alpha1",
                "kind": "ModelValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "model-validation-operator"
                  },
                  "name": "modelvalidation-sample",
                  "namespace": "model-validation-operator-system"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          containerImage: placeholder
          createdAt: "2025-11-17T11:44:47Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.1-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/model-validation-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ModelValidation is the Schema for the modelvalidations API.
            displayName: Model Validation
            kind: ModelValidation
            name: modelvalidations.ml.sigstore.dev
            version: v1alpha1
        description: Model Validation Operator
        displayName: Model Validation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - model signing
        - signing
        - ai
        links:
        - name: Model Validation Operator
          url: https://github.com/sigstore/model-validation-operator
        maintainers:
        - email: nolear@redhat.com
          name: Nina Bongartz
        - email: ryordan@redhat.com
          name: Rachel Yordan
        - email: ifont@redhat.com
          name: Ivan Font
        - email: asiek@redhat.com
          name: Aleksy Siek
        - email: kconner@redhat.com
          name: Kevin Conner
        maturity: tech-preview
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhtas/model-validation-operator-bundle@sha256:a48214bb858cb4f05c580e0d1e0bd2f246fc8185420d0f6a2a3e39eecabc947f
        - registry.redhat.io/rhtas/model-validation-rhel9-operator@sha256:281c79ee9b27e95a723f478889ea1d7297b152a47e32c58a599b5ea6f046d787
        version: 0.0.2
      entries:
      - name: model-validation-operator.v0.0.2
        version: 0.0.2
      - name: model-validation-operator.v0.0.1
        version: 0.0.1
      name: tech-preview
    defaultChannel: tech-preview
    packageName: model-validation-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: JWS team
      provider-url: ""
    name: jws-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jws-operator.v2.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "web.servers.org/v1alpha1",
                "kind": "WebServer",
                "metadata": {
                  "name": "webserver-example"
                },
                "spec": {
                  "applicationName": "webapp",
                  "replicas": 1,
                  "useInsightsClient": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/jboss-webserver-5/jws5-rhel8-operator@sha256:ba8fb47eba0a1c2aca35ff051f576c7ef3204052965794db7ee234358d029263
          createdAt: "2025-11-19T22:24:40.914776Z"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat JBoss Web Server",
            "Red Hat Runtimes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/web-servers/jws-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Web Server is the schema for the webservers API
            displayName: Web Server
            kind: WebServer
            name: webservers.web.servers.org
            version: v1alpha1
        description: WebServer operator can manage JBoss Web Server images.
        displayName: WebServer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - WebServer
        - JBoss
        links:
        - name: Jws Operator
          url: https://jws-operator.domain
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: JWS team
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        - registry.redhat.io/insights-runtimes-tech-preview/runtimes-inventory-rhel8-operator@sha256:58e01d11c3d30abc5b0ee3795511bd04e39aea21e2853b4f4cc6d1c8a2bd7bb0
        - registry.redhat.io/jboss-webserver-5/jws5-operator-bundle@sha256:bbd477f0b3ea615bb0342a11656be719c61e1f9bccb3235e071d8590944334dd
        - registry.redhat.io/jboss-webserver-5/jws5-rhel8-operator@sha256:ba8fb47eba0a1c2aca35ff051f576c7ef3204052965794db7ee234358d029263
        version: 2.2.1
      entries:
      - name: jws-operator.v2.2.1
        version: 2.2.1
      - name: jws-operator.v2.2.0
        version: 2.2.0
      - name: jws-operator.v2.1.3
        version: 2.1.3
      - name: jws-operator.v2.1.2
        version: 2.1.2
      - name: jws-operator.v2.1.1
        version: 2.1.1
      - name: jws-operator.v2.1.0
        version: 2.1.0
      - name: jws-operator.v2.0.16
        version: 2.0.16
      - name: jws-operator.v2.0.15
        version: 2.0.15
      - name: jws-operator.v2.0.14
        version: 2.0.14
      - name: jws-operator.v2.0.13
        version: 2.0.13
      - name: jws-operator.v2.0.12
        version: 2.0.12
      - name: jws-operator.v2.0.11
        version: 2.0.11
      - name: jws-operator.v2.0.10
        version: 2.0.10
      - name: jws-operator.v2.0.9
        version: 2.0.9
      - name: jws-operator.v2.0.8
        version: 2.0.8
      - name: jws-operator.v2.0.7
        version: 2.0.7
      - name: jws-operator.v2.0.6
        version: 2.0.6
      - name: jws-operator.v2.0.5
        version: 2.0.5
      - name: jws-operator.v2.0.4
        version: 2.0.4
      - name: jws-operator.v2.0.3
        version: 2.0.3
      - name: jws-operator.v2.0.2
        version: 2.0.2
      - name: jws-operator.v2.0.1
        version: 2.0.1
      name: alpha
    defaultChannel: alpha
    packageName: jws-operator
    provider:
      name: JWS team
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Storage
      provider-url: https://github.com/red-hat-storage
    name: odf-external-snapshotter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-external-snapshotter-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:45:38Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: VolumeGroupSnapshotClass
            name: volumegroupsnapshotclasses.groupsnapshot.storage.openshift.io
            version: v1beta1
          - kind: VolumeGroupSnapshotContent
            name: volumegroupsnapshotcontents.groupsnapshot.storage.openshift.io
            version: v1beta1
          - kind: VolumeGroupSnapshot
            name: volumegroupsnapshots.groupsnapshot.storage.openshift.io
            version: v1beta1
        description: Snapshot Controller provides the snapshot controller for managing
          volume group snapshots
        displayName: Snapshot Controller
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - odf-external-snapshotter-operator
        links:
        - name: Snapshot Controller
          url: https://github.com/red-hat-storage/external-snapshotter
        maturity: GA
        provider:
          name: Red Hat Storage
          url: https://github.com/red-hat-storage
        relatedImages:
        - registry.redhat.io/odf4/odf-external-snapshotter-operator-bundle@sha256:6d325fd5eedfac439e75c6d2cfbcf419b3aa1ba8930cc11f49d654b5b06efb4d
        - registry.redhat.io/odf4/odf-external-snapshotter-rhel9-operator@sha256:0303afb90081cbc5a586a0fa9e30b897096b176d435053d9bf45a3c0f37671a9
        version: 4.20.4-rhodf
      entries:
      - name: odf-external-snapshotter-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-external-snapshotter-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-external-snapshotter-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-external-snapshotter-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-external-snapshotter-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-external-snapshotter-operator
    provider:
      name: Red Hat Storage
      url: https://github.com/red-hat-storage
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      operatorframework.io/os.zos: supported
      provider: Red Hat
      provider-url: ""
    name: red-hat-hawtio-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: red-hat-hawtio-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace",
                  "version": 1.12
                }
              },
              {
                "apiVersion": "hawt.io/v2",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24,
                    "internalSSL": true
                  },
                  "healthChecks": {
                    "gatewayLivenessPeriod": 120,
                    "gatewayReadinessPeriod": 30,
                    "onlineLivenessPeriod": 5,
                    "onlineReadinessPeriod": 10
                  },
                  "logging": {
                    "gatewayLogLevel": "info",
                    "maskIPAddresses": "false",
                    "onlineLogLevel": "info"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
          createdAt: "2025-11-24T18:05:50Z"
          description: HawtIO eases the discovery and management of Java applications
            deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HawtIO eases the discovery and management of hawtio-enabled
              applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v2
        description: |
          Red Hat build of HawtIO
          ==============

          HawtIO eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between HawtIO and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#agents-jvm).
        displayName: HawtIO Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: HawtIO Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The HawtIO team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:73867beab7034186a5f41c4799584a3c3f70e1825d7a034a0b2e9c262846e551
        - registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
        version: 1.3.0
      entries:
      - name: red-hat-hawtio-operator.v1.3.0
        version: 1.3.0
      - name: red-hat-hawtio-operator.v1.2.1
        version: 1.2.1
      - name: red-hat-hawtio-operator.v1.2.0
        version: 1.2.0
      - name: red-hat-hawtio-operator.v1.2.0-0.1754874242.p
        version: 1.2.0+0.1754874242.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754338551.p
        version: 1.2.0+0.1754338551.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754317392.p
        version: 1.2.0+0.1754317392.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1753863723.p
        version: 1.2.0+0.1753863723.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752679472.p
        version: 1.2.0+0.1752679472.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752452299.p
        version: 1.2.0+0.1752452299.p
      - name: red-hat-hawtio-operator.v1.1.1
        version: 1.1.1
      - name: red-hat-hawtio-operator.v1.1.0
        version: 1.1.0
      - name: red-hat-hawtio-operator.v1.1.0-0.1742200932.p
        version: 1.1.0+0.1742200932.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1740358952.p
        version: 1.1.0+0.1740358952.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739994212.p
        version: 1.1.0+0.1739994212.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739992853.p
        version: 1.1.0+0.1739992853.p
      - name: red-hat-hawtio-operator.v1.0.3
        version: 1.0.3
      - name: red-hat-hawtio-operator.v1.0.2
        version: 1.0.2
      - name: red-hat-hawtio-operator.v1.0.1
        version: 1.0.1
      - name: red-hat-hawtio-operator.v1.0.0
        version: 1.0.0
      name: latest
    - currentCSV: red-hat-hawtio-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace",
                  "version": 1.12
                }
              },
              {
                "apiVersion": "hawt.io/v2",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24,
                    "internalSSL": true
                  },
                  "healthChecks": {
                    "gatewayLivenessPeriod": 120,
                    "gatewayReadinessPeriod": 30,
                    "onlineLivenessPeriod": 5,
                    "onlineReadinessPeriod": 10
                  },
                  "logging": {
                    "gatewayLogLevel": "info",
                    "maskIPAddresses": "false",
                    "onlineLogLevel": "info"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
          createdAt: "2025-11-24T18:05:50Z"
          description: HawtIO eases the discovery and management of Java applications
            deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HawtIO eases the discovery and management of hawtio-enabled
              applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v2
        description: |
          Red Hat build of HawtIO
          ==============

          HawtIO eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between HawtIO and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#agents-jvm).
        displayName: HawtIO Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: HawtIO Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The HawtIO team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:73867beab7034186a5f41c4799584a3c3f70e1825d7a034a0b2e9c262846e551
        - registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
        version: 1.3.0
      entries:
      - name: red-hat-hawtio-operator.v1.3.0
        version: 1.3.0
      - name: red-hat-hawtio-operator.v1.2.1
        version: 1.2.1
      - name: red-hat-hawtio-operator.v1.2.0
        version: 1.2.0
      - name: red-hat-hawtio-operator.v1.2.0-0.1754874242.p
        version: 1.2.0+0.1754874242.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754338551.p
        version: 1.2.0+0.1754338551.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754317392.p
        version: 1.2.0+0.1754317392.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1753863723.p
        version: 1.2.0+0.1753863723.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752679472.p
        version: 1.2.0+0.1752679472.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752452299.p
        version: 1.2.0+0.1752452299.p
      - name: red-hat-hawtio-operator.v1.1.1
        version: 1.1.1
      - name: red-hat-hawtio-operator.v1.1.0
        version: 1.1.0
      - name: red-hat-hawtio-operator.v1.1.0-0.1742200932.p
        version: 1.1.0+0.1742200932.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1740358952.p
        version: 1.1.0+0.1740358952.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739994212.p
        version: 1.1.0+0.1739994212.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739992853.p
        version: 1.1.0+0.1739992853.p
      - name: red-hat-hawtio-operator.v1.0.3
        version: 1.0.3
      - name: red-hat-hawtio-operator.v1.0.2
        version: 1.0.2
      - name: red-hat-hawtio-operator.v1.0.1
        version: 1.0.1
      - name: red-hat-hawtio-operator.v1.0.0
        version: 1.0.0
      name: stable-v1
    - currentCSV: red-hat-hawtio-operator.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace",
                  "version": 1.12
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/rhbac-4/hawtio-rhel8-operator@sha256:f04d81d24c757db7b678464382ad8c5182b1580e714123a9f4f5fc9fbd9b8c57
          createdAt: "2024-01-30T12:18:50Z"
          description: HawtIO eases the discovery and management of Java applications
            deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HawtIO eases the discovery and management of hawtio-enabled
              applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Red Hat build of HawtIO
          ==============

          HawtIO eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between HawtIO and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#agents-jvm).
        displayName: HawtIO Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: HawtIO Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The HawtIO team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:0ee0bd2449f183277af845e312257b4a1ced4de865831b15e1758a397d8d29eb
        - registry.redhat.io/rhbac-4/hawtio-rhel8-operator@sha256:f04d81d24c757db7b678464382ad8c5182b1580e714123a9f4f5fc9fbd9b8c57
        version: 1.0.3
      entries:
      - name: red-hat-hawtio-operator.v1.0.3
        version: 1.0.3
      - name: red-hat-hawtio-operator.v1.0.2
        version: 1.0.2
      - name: red-hat-hawtio-operator.v1.0.1
        version: 1.0.1
      - name: red-hat-hawtio-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    defaultChannel: stable-v1
    packageName: red-hat-hawtio-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CrowdStrike
      provider-url: https://crowdStrike.com
    name: falcon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: falcon-operator.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconContainer",
                "metadata": {
                  "name": "falcon-sidecar-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "sidecar"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconNodeSensor",
                "metadata": {
                  "name": "falcon-node-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "daemonset"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Security,Monitoring
          containerImage: quay.io/crowdstrike/falcon-operator:0.8.1
          createdAt: "2024-06-06T10:00:00Z"
          description: '[DEPRECATED] Use the CrowdStrike Falcon Operator from the
            certified channel instead'
          operatorframework.io/suggested-namespace: falcon-operator
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/CrowdStrike/falcon-operator
          support: Community Only
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FalconContainer is the Schema for the falconcontainers API
            displayName: Falcon Container
            kind: FalconContainer
            name: falconcontainers.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconNodeSensor is the Schema for the falconnodesensors
              API
            displayName: Falcon Node Sensor
            kind: FalconNodeSensor
            name: falconnodesensors.falcon.crowdstrike.com
            version: v1alpha1
        description: |-
          ## Deprecated
          This CrowdStrike community operator is deprecated, use the CrowdStrike Falcon Operator from the certified channel instead.

          ## About the CrowdStrike Falcon Operator
          The CrowdStrike Falcon Operator deploys CrowdStrike Falcon Workload Protection to the cluster. The operator exposes 2 custom resources that allows you to deploy either the Falcon Container Sensor or Falcon Node Sensor.

          ## About Custom Resources

          | Custom Resource                                       | Description                                                      |
          | :--------                                             | :------------                                                    |
          | [FalconContainer](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/container/README.md) | Manages installation of Falcon Container Sensor on the cluster   |
          | [FalconNodeSensor](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/node/README.md)     | Manages installation of Falcon Linux Sensor on the cluster nodes |

          ## Installation and Deployment

          For installation and deployment of the CrowdStrike Falcon Operator and its Custom Resources, please read the [Installation and Deployment Guide](./docs/install_guide.md) and choose the deployment method that is right for your target environment.

          ## Getting Help
          If you encounter any issues while using the Falcon Operator, you can create an issue on our [Github repo](https://github.com/CrowdStrike/falcon-operator) for bugs, enhancements, or other requests.

          ## Contributing
          You can contribute by:

          * Raising any issues you find using Falcon Operator
          * Fixing issues by opening [Pull Requests](https://github.com/CrowdStrike/falcon-operator/pulls)
          * Improving documentation
          * Talking about the CrowdStrike Falcon Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/CrowdStrike/falcon-operator/issues).

          ## Additional Resources
           - CrowdStrike Container Security: [Product Page](https://www.crowdstrike.com/products/cloud-security/falcon-cloud-workload-protection/container-security/)
           - So You Think Your Containers Are Secure? Four Steps to Ensure a Secure Container Deployment: [Blog Post](https://www.crowdstrike.com/blog/four-steps-to-ensure-a-secure-containter-deployment/)
           - Container Security With CrowdStrike: [Blog Post](https://www.crowdstrike.com/blog/tech-center/container-security/)
           - To learn more about Falcon Container Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/support/documentation/146/falcon-container-sensor-for-linux), [Release Notes](https://falcon.crowdstrike.com/support/news/release-notes-falcon-container-sensor-for-linux)
           - To learn more about Falcon Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/documentation/20/falcon-sensor-for-linux#kubernetes-support)
           - [Developer Documentation](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/developer_guide.md)
        displayName: '[DEPRECATED] CrowdStrike Operator'
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - runtime-protection
        links:
        - name: Falcon Operator
          url: https://github.com/CrowdStrike/falcon-operator
        maintainers:
        - email: integrations@crowdstrike.com
          name: CrowdStrike Solutions Architecture
        maturity: alpha
        minKubeVersion: 1.17.0
        provider:
          name: CrowdStrike
          url: https://crowdStrike.com
        relatedImages:
        - quay.io/crowdstrike/falcon-operator:0.8.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.12.0
        - quay.io/community-operator-pipeline-prod/falcon-operator@sha256:3916adf5083c83838564b1ed039decbadb2efa4ec288699ef0137a66983a3cc4
        version: 0.8.2
      entries:
      - name: falcon-operator.v0.8.2
        version: 0.8.2
      - name: falcon-operator.v0.8.1
        version: 0.8.1
      name: alpha
    defaultChannel: alpha
    packageName: falcon-operator
    provider:
      name: CrowdStrike
      url: https://crowdStrike.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CNCF
      provider-url: ""
    name: jaeger
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jaeger-operator.v1.65.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "jaegertracing.io/v1",
                "kind": "Jaeger",
                "metadata": {
                  "name": "my-jaeger"
                },
                "spec": {
                  "strategy": "allInOne"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing
          certified: "false"
          containerImage: quay.io/jaegertracing/jaeger-operator:1.65.0
          createdAt: "2025-01-22T20:40:19Z"
          description: Provides tracing, monitoring and troubleshooting for microservices-based
            distributed systems
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/jaegertracing/jaeger-operator
          support: Jaeger Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Jaeger is the Schema for the jaegers API
            displayName: Jaeger
            kind: Jaeger
            name: jaegers.jaegertracing.io
            version: v1
        description: |-
          Jaeger, inspired by [Dapper](https://research.google.com/pubs/pub36356.html) and [OpenZipkin](http://zipkin.io/), is a distributed tracing system released as open source by Uber Technologies. It is used for monitoring and troubleshooting microservices-based distributed systems.
          ### Core capabilities
          Jaeger is used for monitoring and troubleshooting microservices-based distributed systems, including:
          * Distributed context propagation
          * Distributed transaction monitoring
          * Root cause analysis
          * Service dependency analysis
          * Performance / latency optimization
          * OpenTracing compatible data model
          * Multiple storage backends: Badger, Cassandra, Elasticsearch, Memory.
          ### Operator features
          * **Multiple modes** - Supports `allInOne`, `production` and `streaming` [modes of deployment](https://www.jaegertracing.io/docs/latest/operator/#deployment-strategies).
          * **Configuration** - The Operator manages [configuration information](https://www.jaegertracing.io/docs/latest/operator/#configuring-the-custom-resource) when installing Jaeger instances.
          * **Storage** - [Configure storage](https://www.jaegertracing.io/docs/latest/operator/#storage-options) used by Jaeger. By default, `memory` is used. Other options include `badger`, `cassandra` or `elasticsearch`. On OpenShift, the operator can delegate creation of an Elasticsearch cluster to the Elasticsearch Operator if deployed.
          * **Agent** - can be deployed as [sidecar](https://www.jaegertracing.io/docs/latest/operator/#auto-injecting-jaeger-agent-sidecars) (default) and/or [daemonset](https://www.jaegertracing.io/docs/latest/operator/#installing-the-agent-as-daemonset).
          * **UI** - Optionally setup ingress (Kubernetes) or secure route (OpenShift) to provide [access to the Jaeger UI](https://www.jaegertracing.io/docs/latest/operator/#accessing-the-jaeger-console-ui).
          ### Before you start
          1. Ensure that the appropriate storage solution, that will be used by the Jaeger instance, is available and configured.
          2. If intending to deploy an Elasticsearch cluster via the Jaeger custom resource, then the Elasticsearch Operator must first be installed.
          ### Troubleshooting
          * https://www.jaegertracing.io/docs/latest/troubleshooting/
        displayName: Community Jaeger Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tracing
        - monitoring
        - troubleshooting
        links:
        - name: Jaeger Operator Source Code
          url: https://github.com/jaegertracing/jaeger-operator
        maintainers:
        - email: jaeger-tracing@googlegroups.com
          name: Jaeger Google Group
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: CNCF
        relatedImages:
        - quay.io/community-operator-pipeline-prod/jaeger@sha256:907dfe1d01f73c8a385da3661ddbe03db31e0b9ad6f5ab2336460402d0d915a0
        - quay.io/jaegertracing/jaeger-operator:1.65.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 1.65.0
      entries:
      - name: jaeger-operator.v1.65.0
        version: 1.65.0
      - name: jaeger-operator.v1.62.0
        version: 1.62.0
      - name: jaeger-operator.v1.61.0
        version: 1.61.0
      - name: jaeger-operator.v1.60.0
        version: 1.60.0
      - name: jaeger-operator.v1.59.0
        version: 1.59.0
      - name: jaeger-operator.v1.57.0
        version: 1.57.0
      - name: jaeger-operator.v1.56.0
        version: 1.56.0
      - name: jaeger-operator.v1.55.0
        version: 1.55.0
      - name: jaeger-operator.v1.53.0
        version: 1.53.0
      - name: jaeger-operator.v1.52.0
        version: 1.52.0
      - name: jaeger-operator.v1.51.0
        version: 1.51.0
      - name: jaeger-operator.v1.49.0
        version: 1.49.0
      - name: jaeger-operator.v1.48.1
        version: 1.48.1
      - name: jaeger-operator.v1.47.0
        version: 1.47.0
      - name: jaeger-operator.v1.46.0
        version: 1.46.0
      - name: jaeger-operator.v1.45.0
        version: 1.45.0
      - name: jaeger-operator.v1.44.0
        version: 1.44.0
      - name: jaeger-operator.v1.43.0
        version: 1.43.0
      - name: jaeger-operator.v1.42.0
        version: 1.42.0
      - name: jaeger-operator.v1.41.1
        version: 1.41.1
      - name: jaeger-operator.v1.41.0
        version: 1.41.0
      - name: jaeger-operator.v1.40.0
        version: 1.40.0
      - name: jaeger-operator.v1.39.0
        version: 1.39.0
      - name: jaeger-operator.v1.38.1
        version: 1.38.1
      - name: jaeger-operator.v1.38.0
        version: 1.38.0
      - name: jaeger-operator.v1.37.0
        version: 1.37.0
      - name: jaeger-operator.v1.36.0
        version: 1.36.0
      - name: jaeger-operator.v1.35.0
        version: 1.35.0
      - name: jaeger-operator.v1.34.1
        version: 1.34.1
      - name: jaeger-operator.v1.34.0
        version: 1.34.0
      - name: jaeger-operator.v1.33.0
        version: 1.33.0
      - name: jaeger-operator.v1.32.0
        version: 1.32.0
      - name: jaeger-operator.v1.31.0
        version: 1.31.0
      - name: jaeger-operator.v1.30.0
        version: 1.30.0
      - name: jaeger-operator.v1.29.1
        version: 1.29.1
      - name: jaeger-operator.v1.25.0
        version: 1.25.0
      - name: jaeger-operator.v1.24.0
        version: 1.24.0
      name: stable
    defaultChannel: stable
    packageName: jaeger
    provider:
      name: CNCF
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: StreamNative
      provider-url: https://streamnative.io
    name: function-mesh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: function-mesh.v0.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "Function",
                "metadata": {
                  "name": "java-function-sample",
                  "namespace": "default"
                },
                "spec": {
                  "autoAck": true,
                  "className": "org.apache.pulsar.functions.api.examples.ExclamationFunction",
                  "clusterName": "test-pulsar",
                  "forwardSourceMessageProperty": true,
                  "input": {
                    "topics": [
                      "persistent://public/default/java-function-input-topic"
                    ],
                    "typeClassName": "java.lang.String"
                  },
                  "java": {
                    "extraDependenciesDir": "random-dir/",
                    "jar": "pulsar-functions-api-examples.jar",
                    "jarLocation": "public/default/nlu-test-java-function"
                  },
                  "logTopic": "persistent://public/default/logging-function-logs",
                  "maxPendingAsyncRequests": 1000,
                  "maxReplicas": 5,
                  "output": {
                    "topic": "persistent://public/default/java-function-output-topic",
                    "typeClassName": "java.lang.String"
                  },
                  "pod": {
                    "annotations": {
                      "managed-function": "true"
                    },
                    "env": [
                      {
                        "name": "EXAMPLE_VARIABLE",
                        "value": "exampleValue"
                      }
                    ],
                    "imagePullSecrets": [
                      {
                        "name": "regcred"
                      }
                    ],
                    "initContainers": [
                      {
                        "command": [
                          "sh",
                          "-c",
                          "echo The app is running! \u0026\u0026 sleep 30"
                        ],
                        "image": "busybox:1.28",
                        "name": "init-function"
                      }
                    ],
                    "labels": {
                      "locaction": "mtv"
                    },
                    "sidecars": [
                      {
                        "command": [
                          "sh",
                          "-c",
                          "echo The app is running! \u0026\u0026 sleep 30000"
                        ],
                        "image": "busybox:1.28",
                        "name": "sidecar-function"
                      }
                    ],
                    "volumes": [
                      {
                        "emptyDir": {},
                        "name": "cache-volume"
                      }
                    ]
                  },
                  "pulsar": {
                    "authSecret": "test-auth",
                    "pulsarConfig": "test-pulsar",
                    "tlsSecret": "test-tls"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "0.2",
                      "memory": "1.1G"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "1G"
                    }
                  },
                  "secretsMap": {
                    "name": {
                      "key": "username",
                      "path": "test-secret"
                    },
                    "pwd": {
                      "key": "password",
                      "path": "test-secret"
                    }
                  },
                  "volumeMounts": [
                    {
                      "mountPath": "/cache",
                      "name": "cache-volume"
                    }
                  ]
                }
              },
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "FunctionMesh",
                "metadata": {
                  "name": "functionmesh-sample"
                },
                "spec": {
                  "functions": [
                    {
                      "autoAck": true,
                      "className": "org.apache.pulsar.functions.api.examples.ExclamationFunction",
                      "clusterName": "test-pulsar",
                      "forwardSourceMessageProperty": true,
                      "input": {
                        "topics": [
                          "persistent://public/default/functionmesh-input-topic"
                        ],
                        "typeClassName": "java.lang.String"
                      },
                      "java": {
                        "jar": "pulsar-functions-api-examples.jar",
                        "jarLocation": "public/default/nlu-test-functionmesh-ex1"
                      },
                      "logTopic": "persistent://public/default/logging-function-log",
                      "maxReplicas": 1,
                      "name": "ex1",
                      "output": {
                        "topic": "persistent://public/default/mid-topic",
                        "typeClassName": "java.lang.String"
                      },
                      "pulsar": {
                        "pulsarConfig": "mesh-test-pulsar"
                      },
                      "replicas": 1,
                      "resources": {
                        "limits": {
                          "cpu": "0.2",
                          "memory": "1.1G"
                        },
                        "requests": {
                          "cpu": "0.1",
                          "memory": "1G"
                        }
                      }
                    },
                    {
                      "autoAck": true,
                      "className": "org.apache.pulsar.functions.api.examples.ExclamationFunction",
                      "clusterName": "test-pulsar",
                      "forwardSourceMessageProperty": true,
                      "input": {
                        "topics": [
                          "persistent://public/default/mid-topic"
                        ],
                        "typeClassName": "java.lang.String"
                      },
                      "java": {
                        "jar": "pulsar-functions-api-examples.jar",
                        "jarLocation": "public/default/nlu-test-functionmesh-ex2"
                      },
                      "logTopic": "persistent://public/default/logging-function-logs",
                      "maxReplicas": 1,
                      "name": "ex2",
                      "output": {
                        "topic": "persistent://public/default/functionmesh-output-topic",
                        "typeClassName": "java.lang.String"
                      },
                      "pulsar": {
                        "pulsarConfig": "mesh-test-pulsar"
                      },
                      "replicas": 1,
                      "resources": {
                        "limits": {
                          "cpu": "0.2",
                          "memory": "1.1G"
                        },
                        "requests": {
                          "cpu": "0.1",
                          "memory": "1G"
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "Sink",
                "metadata": {
                  "name": "sink-sample"
                },
                "spec": {
                  "autoAck": true,
                  "className": "org.apache.pulsar.io.elasticsearch.ElasticSearchSink",
                  "clusterName": "test-pulsar",
                  "image": "streamnative/pulsar-io-elastic-search:2.10.0.0-rc10",
                  "input": {
                    "topics": [
                      "persistent://public/default/input"
                    ],
                    "typeClassName": "[B"
                  },
                  "java": {
                    "jar": "connectors/pulsar-io-elastic-search-2.10.0.0-rc10.nar",
                    "jarLocation": ""
                  },
                  "maxReplicas": 1,
                  "pulsar": {
                    "pulsarConfig": "test-sink"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "0.2",
                      "memory": "1.1G"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "1G"
                    }
                  },
                  "sinkConfig": {
                    "elasticSearchUrl": "http://quickstart-es-http.default.svc.cluster.local:9200",
                    "indexName": "my_index",
                    "password": "wJ757TmoXEd941kXm07Z2GW3",
                    "typeName": "doc",
                    "username": "elastic"
                  }
                }
              },
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "Source",
                "metadata": {
                  "name": "source-sample"
                },
                "spec": {
                  "className": "org.apache.pulsar.io.debezium.mongodb.DebeziumMongoDbSource",
                  "clusterName": "test-pulsar",
                  "forwardSourceMessageProperty": true,
                  "image": "streamnative/pulsar-io-debezium-mongodb:2.10.0.0-rc10",
                  "java": {
                    "jar": "connectors/pulsar-io-debezium-mongodb-2.10.0.0-rc10.nar",
                    "jarLocation": ""
                  },
                  "maxReplicas": 1,
                  "output": {
                    "producerConf": {
                      "maxPendingMessages": 1000,
                      "maxPendingMessagesAcrossPartitions": 50000,
                      "useThreadLocalProducers": true
                    },
                    "topic": "persistent://public/default/destination",
                    "typeClassName": "org.apache.pulsar.common.schema.KeyValue"
                  },
                  "pulsar": {
                    "pulsarConfig": "test-source"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "0.2",
                      "memory": "1.1G"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "1G"
                    }
                  },
                  "sourceConfig": {
                    "database.whitelist": "inventory",
                    "mongodb.hosts": "rs0/mongo-dbz-0.mongo.default.svc.cluster.local:27017,rs0/mongo-dbz-1.mongo.default.svc.cluster.local:27017,rs0/mongo-dbz-2.mongo.default.svc.cluster.local:27017",
                    "mongodb.name": "dbserver1",
                    "mongodb.password": "dbz",
                    "mongodb.task.id": "1",
                    "mongodb.user": "debezium",
                    "pulsar.service.url": "pulsar://test-pulsar-broker.default.svc.cluster.local:6650"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/streamnativeio/function-mesh@sha256:3e13e5cc3ac4d7387ee0adc02cb5183aad6cf2301f76ab230482609c4da1c0b7
          createdAt: "2022-10-27T07:49:28Z"
          description: The Function Mesh Operator manages the Pulsar Functions and
            Connectors deployed on a Kubernetes cluster.
          olm.properties: '[{"type":"olm.maxOpenShiftVersion","value":"4.8"}]'
          olm.skipRange: <0.7.0
          operatorhub.io/ui-metadata-max-k8s-version: "1.21"
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/streamnative/function-mesh
          support: StreamNative
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FunctionMesh is the Schema for the functionmeshes API
            displayName: Mesh
            kind: FunctionMesh
            name: functionmeshes.compute.functionmesh.io
            version: v1alpha1
          - description: Function is the Schema for the functions API
            displayName: Function
            kind: Function
            name: functions.compute.functionmesh.io
            version: v1alpha1
          - description: Sink is the Schema for the sinks API
            displayName: Sink
            kind: Sink
            name: sinks.compute.functionmesh.io
            version: v1alpha1
          - description: Source is the Schema for the sources API
            displayName: Source
            kind: Source
            name: sources.compute.functionmesh.io
            version: v1alpha1
        description: |
          [Function Mesh](https://functionmesh.io/) is a serverless framework purpose-built for stream processing applications. It brings powerful event-streaming capabilities to your applications by orchestrating multiple [Pulsar Functions](http://pulsar.apache.org/docs/en/next/functions-overview/) and [Pulsar IO connectors](http://pulsar.apache.org/docs/en/next/io-overview/) for complex stream processing jobs on Kubernetes.
          Prerequisites:
          - Install cert-manager operator first.
        displayName: Function Mesh Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - pulsar
        - function-mesh
        - serverless
        - pulsar-functions
        - pulsar-io-connectors
        - StreamNative
        links:
        - name: Function Mesh
          url: https://function-mesh.io
        maintainers:
        - email: function-mesh@streamnative.io
          name: Function Mesh
        maturity: alpha
        minKubeVersion: v1.17.0
        provider:
          name: StreamNative
          url: https://streamnative.io
        relatedImages:
        - registry.connect.redhat.com/streamnative/function-mesh-bundle@sha256:e4377187c20a70d768a253bc0794f3152aa6fcee22ddbf2fc88f45756e9681fe
        - docker.cloudsmith.io/streamnative/mirrors/gcr.io/kubebuilder/kube-rbac-proxy@sha256:67ecb332573384515406ebd71816781366b70adb0eb66345e5980e92603373e1
        - quay.io/streamnativeio/function-mesh@sha256:3e13e5cc3ac4d7387ee0adc02cb5183aad6cf2301f76ab230482609c4da1c0b7
        version: 0.7.0
      entries:
      - name: function-mesh.v0.7.0
        version: 0.7.0
      name: alpha
    defaultChannel: alpha
    packageName: function-mesh
    provider:
      name: StreamNative
      url: https://streamnative.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: aiu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aiu-operator.v2.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "aiu.ibm.com/v2",
                "kind": "AiuClusterPolicy",
                "metadata": {
                  "labels": {
                    "operator-version": "2.3.3"
                  },
                  "name": "aiuclusterpolicy"
                },
                "spec": {
                  "devicePlugin": {
                    "configName": "senlib_config.json",
                    "configPath": "/etc/aiu",
                    "image": "aiu-device-plugin",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.1"
                  },
                  "experimentalMode": [
                    "perDeviceAllocation",
                    "topologyAwareAllocation",
                    "externalDeviceReservation"
                  ],
                  "featureDiscovery": {
                    "image": "aiu-feature-discovery",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.0"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "aiu-exporter",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.0"
                  },
                  "podValidator": {
                    "enabled": true,
                    "image": "aiu-webhook-validator",
                    "imagePullPolicy": "Always",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.0"
                  },
                  "scheduler": {
                    "image": "aiu-kube-scheduler-ocp-4.16",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.2"
                  }
                }
              },
              {
                "apiVersion": "aiu.ibm.com/v2",
                "kind": "AiuNodeState",
                "metadata": {
                  "labels": {
                    "operator-version": "2.3.3"
                  },
                  "name": "aiunodestate"
                },
                "spec": {
                  "nodeName": ""
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: icr.io/ibmaiu/release_2025_03/aiu-operator@sha256:2ea8268e94d44581b3490cd4bbbd5525359073129bae42c7f007c05727afe1c3
          createdAt: "2025-04-03T01:19:38Z"
          description: operator for AIU devices
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: use with IBM AIU
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["aiunodestates.aiu.ibm.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AiuClusterPolicy is the Schema for the AIU API
            displayName: AIU Cluster Policy
            kind: AiuClusterPolicy
            name: aiuclusterpolicies.aiu.ibm.com
            version: v2
          - description: AiuNodeState is the Schema for the AiuNodeState API
            displayName: AIU Node State
            kind: AiuNodeState
            name: aiunodestates.aiu.ibm.com
            version: v2
        description: operator for AIU devices
        displayName: AIU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - app
        - operator
        links:
        - name: Aiu Operator
          url: https://aiu-operator.domain
        maintainers:
        - email: tmishina@jp.ibm.com
          name: Takuya Mishina
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: laurentiu.bradin@ibm.com
          name: Laurentiu Bradin
        - email: htchang@us.ibm.com
          name: Ted Chang
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: IBM
        relatedImages:
        - icr.io/ibmaiu/release_2025_03/aiu-operator@sha256:2ea8268e94d44581b3490cd4bbbd5525359073129bae42c7f007c05727afe1c3
        - registry.connect.redhat.com/aiu/aiu-operator-bundle@sha256:0cda4be8f74da7524a72c961c8762927c66e145d82e59af92073a54179bc9936
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fcb3b8ab93dfb5ef2b290e39ea5899dbb5e0c6d430370b8d281e59e74d94d749
        version: 2.3.3
      entries:
      - name: aiu-operator.v2.3.3
        version: 2.3.3
      name: stable-v2.3
    defaultChannel: stable-v2.3
    packageName: aiu-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: authorino-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: authorino-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/authorino-operator:v0.8.0
          createdAt: 2021-12-08T10-00-00Z
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta1
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: The operator to manage instances of Authorino
        displayName: Authorino Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: Authorino Operator
          url: https://github.com/Kuadrant/authorino-operator
        - name: Authorino
          url: https://github.com/Kuadrant/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/kuadrant/authorino-operator:v0.8.0
        - quay.io/openshift-community-operators/authorino-operator@sha256:8fe34f94f87c567401cc2bbbbcc3a3e719364b80a2b17851496f86c85af5c09a
        version: 0.8.0
      entries:
      - name: authorino-operator.v0.8.0
        version: 0.8.0
      - name: authorino-operator.v0.7.0
        version: 0.7.0
      - name: authorino-operator.v0.6.0
        version: 0.6.0
      - name: authorino-operator.v0.5.0
        version: 0.5.0
      - name: authorino-operator.v0.4.1
        version: 0.4.1
      - name: authorino-operator.v0.4.0
        version: 0.4.0
      - name: authorino-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: authorino-operator.v0.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "authorino.kuadrant.io/v1beta2",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "authorino.kuadrant.io/v1beta3",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/authorino-operator:v0.16.0
          createdAt: "2024-11-25T13:22:24Z"
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta2
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta3
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: The operator to manage instances of Authorino
        displayName: Authorino Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: Authorino Operator
          url: https://github.com/Kuadrant/authorino-operator
        - name: Authorino
          url: https://github.com/Kuadrant/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/authorino-operator@sha256:92ad93f27c34f1406fc05a248d04709b0109adf37f2f9424f48fc6a73d9d359e
        - quay.io/kuadrant/authorino-operator:v0.16.0
        - quay.io/kuadrant/authorino:v0.20.0
        version: 0.16.0
      entries:
      - name: authorino-operator.v0.16.0
        version: 0.16.0
      - name: authorino-operator.v0.15.1
        version: 0.15.1
      - name: authorino-operator.v0.15.0
        version: 0.15.0
      - name: authorino-operator.v0.14.0
        version: 0.14.0
      - name: authorino-operator.v0.13.1
        version: 0.13.1
      - name: authorino-operator.v0.13.0
        version: 0.13.0
      - name: authorino-operator.v0.12.0
        version: 0.12.0
      - name: authorino-operator.v0.11.1
        version: 0.11.1
      - name: authorino-operator.v0.10.0
        version: 0.10.0
      - name: authorino-operator.v0.9.0
        version: 0.9.0
      - name: authorino-operator.v0.8.0
        version: 0.8.0
      - name: authorino-operator.v0.7.0
        version: 0.7.0
      - name: authorino-operator.v0.6.0
        version: 0.6.0
      - name: authorino-operator.v0.5.0
        version: 0.5.0
      - name: authorino-operator.v0.4.1
        version: 0.4.1
      - name: authorino-operator.v0.4.0
        version: 0.4.0
      - name: authorino-operator.v0.0.1
        version: 0.0.1
      name: stable
    defaultChannel: stable
    packageName: authorino-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: NVIDIA
      provider-url: https://github.com/Mellanox/maintenance-operator/
    name: nvidia-maintenance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nvidia-maintenance-operator.v0.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "MaintenanceOperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "maintenanceoperatorconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "maintenanceoperatorconfig",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "maintenanceoperatorconfig-sample"
                },
                "spec": {
                  "logLevel": "info",
                  "maxNodeMaintenanceTimeSeconds": 1600,
                  "maxParallelOperations": 1,
                  "maxUnavailable": "30%"
                }
              },
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "nodemaintenance-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nodemaintenance",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "cordon": true,
                  "drainSpec": {
                    "deleteEmptyDir": true,
                    "force": true,
                    "podEvictionFilters": [
                      {
                        "byResourceNameRegex": "nvidia.com/gpu-*"
                      },
                      {
                        "byResourceNameRegex": "nvidia.com/rdma*"
                      }
                    ],
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  },
                  "nodeName": "worker-node-01",
                  "requestorID": "some-cluster-component.vendor.com",
                  "waitForPodCompletion": {
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
          createdAt: "2025-07-13T12:33:06Z"
          description: Node maintenance in K8s cluster in a coordinated manner
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-maintenance-operator
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: NVIDIA
          repository: https://github.com/Mellanox/maintenance-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MaintenanceOperatorConfig is the Schema for the maintenanceoperatorconfigs
              API
            displayName: Maintenance Operator Config
            kind: MaintenanceOperatorConfig
            name: maintenanceoperatorconfigs.maintenance.nvidia.com
            version: v1alpha1
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.maintenance.nvidia.com
            version: v1alpha1
        description: Coordinates And Performs Common Node Preparations For Maintenance
        displayName: NVIDIA Maintenance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - node
        - maintenance
        - drain
        links:
        - name: NVIDIA Maintenance Operator
          url: https://github.com/Mellanox/maintenance-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/maintenance-operator/
        relatedImages:
        - ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-maintenance-operator@sha256:c9867753cd85ead32702783c880d75118549025ec4793805381aa3bc1ba1d221
        version: 0.2.3
      entries:
      - name: nvidia-maintenance-operator.v0.2.3
        version: 0.2.3
      name: stable
    - currentCSV: nvidia-maintenance-operator.v0.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "MaintenanceOperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "maintenanceoperatorconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "maintenanceoperatorconfig",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "maintenanceoperatorconfig-sample"
                },
                "spec": {
                  "logLevel": "info",
                  "maxNodeMaintenanceTimeSeconds": 1600,
                  "maxParallelOperations": 1,
                  "maxUnavailable": "30%"
                }
              },
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "nodemaintenance-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nodemaintenance",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "cordon": true,
                  "drainSpec": {
                    "deleteEmptyDir": true,
                    "force": true,
                    "podEvictionFilters": [
                      {
                        "byResourceNameRegex": "nvidia.com/gpu-*"
                      },
                      {
                        "byResourceNameRegex": "nvidia.com/rdma*"
                      }
                    ],
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  },
                  "nodeName": "worker-node-01",
                  "requestorID": "some-cluster-component.vendor.com",
                  "waitForPodCompletion": {
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
          createdAt: "2025-07-13T12:33:06Z"
          description: Node maintenance in K8s cluster in a coordinated manner
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-maintenance-operator
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: NVIDIA
          repository: https://github.com/Mellanox/maintenance-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MaintenanceOperatorConfig is the Schema for the maintenanceoperatorconfigs
              API
            displayName: Maintenance Operator Config
            kind: MaintenanceOperatorConfig
            name: maintenanceoperatorconfigs.maintenance.nvidia.com
            version: v1alpha1
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.maintenance.nvidia.com
            version: v1alpha1
        description: Coordinates And Performs Common Node Preparations For Maintenance
        displayName: NVIDIA Maintenance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - node
        - maintenance
        - drain
        links:
        - name: NVIDIA Maintenance Operator
          url: https://github.com/Mellanox/maintenance-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/maintenance-operator/
        relatedImages:
        - ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-maintenance-operator@sha256:c9867753cd85ead32702783c880d75118549025ec4793805381aa3bc1ba1d221
        version: 0.2.3
      entries:
      - name: nvidia-maintenance-operator.v0.2.3
        version: 0.2.3
      name: v0.2
    defaultChannel: v0.2
    packageName: nvidia-maintenance-operator
    provider:
      name: NVIDIA
      url: https://github.com/Mellanox/maintenance-operator/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-superset-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: superset-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/superset-operator@sha256:ac73f419137ceb0888c11b371841938b5a4810a4d3ec0a337c852658de9d6031
          description: Stackable Operator for Apache Superset
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/superset-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for SupersetClusterSpec via `CustomResource`
            displayName: supersetclusters.superset.stackable.tech
            kind: SupersetCluster
            name: supersetclusters.superset.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for DruidConnectionSpec via `CustomResource`
            displayName: druidconnections.superset.stackable.tech
            kind: DruidConnection
            name: druidconnections.superset.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Superset
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - superset
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/superset-operator@sha256:ac73f419137ceb0888c11b371841938b5a4810a4d3ec0a337c852658de9d6031
        - registry.connect.redhat.com/stackable/stackable-apache-superset-operator@sha256:55e2b7a946db2dd9b2111784d5d4d664b2d622611a2076ad70363e110d70fde7
        version: 25.11.0
      entries:
      - name: superset-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-superset-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM Quantum
      provider-url: ""
    name: openshift-qiskit-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-qiskit-operator.v0.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "qiskit.ibm.com/v1alpha1",
                "kind": "QiskitPlayground",
                "metadata": {
                  "name": "qiskitplayground-sample"
                },
                "spec": {
                  "image": "qiskit/jupyter:0.1",
                  "imagePullPolicy": "Always",
                  "resources": {
                    "requests": {
                      "memory": "2G",
                      "cpu": "1"
                    },
                    "limits": {
                      "memory": "3G",
                      "cpu": "1.5"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          certified: "false"
          containerImage: docker.io/qiskit/operator:0.1
          createdAt: 2021-004-23 22:25:53
          description: |-
            Launches a developement environment Jupyter notebok development environment for
            developing quantum applications using Qiskit.
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/kubernetes-qiskit-operator
          support: https://github.com/qiskit-community/openshift-quantum-operators/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QiskitPlayground is the Schema for the qiskitplaygrounds
              API
            displayName: Qiskit Playground
            kind: QiskitPlayground
            name: qiskitplaygrounds.qiskit.ibm.com
            version: v1alpha1
        description: |-
          ### Introduction
          Launches a developement Jupiter lab environment with Qiskit.

          QiskitPlayground is a Jupyter notebook with the pre installed qiskit libraries for implementing quantum application development.
          It comes with pre installed python packages for visualising results. QiskitPlayground can run quantum
          applications on simulator or on real quantum machines using IBM Q account.

          ### Documentation
          For detailed installation guide [follow](https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/kubernetes-qiskit-operator)

          ### Contributing
          You can contribute by
            * Raising any [issues](https://github.com/qiskit-community/openshift-quantum-operators/issues) you find using ibm-quantum-operator community operator
            * Fixing issues by opening [Pull Requests](https://github.com/qiskit-community/openshift-quantum-operators/pulls)
            * Talking about openshift-qiskit-operator

          ### License
          kubernetes-qiskit-operator is licensed under the [Apache 2.0 license](https://github.com/qiskit-community/openshift-quantum-operators/blob/master/LICENSE)

          #### Note
          Any api could be changed any time without any notice. That said, your feedback is very important and appreciated to make this project more stable and useful.
        displayName: QiskitPlayground
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Qiskit
        - Open Source
        - Quantum
        links:
        - name: GitHub
          url: https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/kubernetes-qiskit-operator
        maintainers:
        - email: blublinsky@ibm.com
          name: boris
        maturity: alpha
        provider:
          name: IBM Quantum
        relatedImages:
        - docker.io/qiskit/operator:0.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/openshift-qiskit-operator@sha256:633ce4190b02034d70b52d7e624fc9d417ef997607f9710a36e73bbc0963fe4d
        version: 0.2.1
      entries:
      - name: openshift-qiskit-operator.v0.2.1
        version: 0.2.1
      - name: openshift-qiskit-operator.v0.2.0
        version: 0.2.0
      name: alpha
    defaultChannel: alpha
    packageName: openshift-qiskit-operator
    provider:
      name: IBM Quantum
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MayaData
      provider-url: ""
    name: openebs
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openebsoperator.v3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "openebs.io/v1alpha1",
                "kind": "OpenEBSInstallTemplate",
                "metadata": {
                  "name": "oebs",
                  "namespace": "openebs"
                },
                "spec": {
                  "rbac": {
                    "create": true,
                    "pspEnabled": false,
                    "kyvernoEnabled": false
                  },
                  "serviceAccount": {
                    "create": true,
                    "name": "openebs-maya-operator"
                  },
                  "imagePullSecrets": [],
                  "release": {
                    "version": "3.0.0"
                  },
                  "legacy": {
                    "enabled": false
                  },
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": ""
                  },
                  "apiserver": {
                    "enabled": true,
                    "image": "openebs/m-apiserver",
                    "imageTag": "2.12.2",
                    "replicas": 1,
                    "ports": {
                      "externalPort": 5656,
                      "internalPort": 5656
                    },
                    "sparse": {
                      "enabled": "false"
                    },
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "defaultStorageConfig": {
                    "enabled": "true"
                  },
                  "varDirectoryPath": {
                    "baseDir": "/var/openebs"
                  },
                  "provisioner": {
                    "enabled": true,
                    "image": "openebs/openebs-k8s-provisioner",
                    "imageTag": "2.12.2",
                    "replicas": 1,
                    "enableLeaderElection": true,
                    "patchJivaNodeAffinity": "enabled",
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "localprovisioner": {
                    "enabled": true,
                    "image": "openebs/provisioner-localpv",
                    "imageTag": "3.0.0",
                    "replicas": 1,
                    "enableLeaderElection": true,
                    "enableDeviceClass": true,
                    "enableHostpathClass": true,
                    "basePath": "/var/openebs/local",
                    "waitForBDBindTimeoutRetryCount": "12",
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "snapshotOperator": {
                    "enabled": true,
                    "controller": {
                      "image": "openebs/snapshot-controller",
                      "imageTag": "2.12.2",
                      "resources": {}
                    },
                    "provisioner": {
                      "image": "openebs/snapshot-provisioner",
                      "imageTag": "2.12.2",
                      "resources": {}
                    },
                    "replicas": 1,
                    "enableLeaderElection": true,
                    "upgradeStrategy": "Recreate",
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    }
                  },
                  "ndm": {
                    "enabled": true,
                    "image": "openebs/node-disk-manager",
                    "imageTag": "1.7.0",
                    "sparse": {
                      "path": "/var/openebs/sparse",
                      "size": "10737418240",
                      "count": "0"
                    },
                    "filters": {
                      "enableOsDiskExcludeFilter": true,
                      "osDiskExcludePaths": "/,/etc/hosts,/boot",
                      "enableVendorFilter": true,
                      "excludeVendors": "CLOUDBYT,OpenEBS",
                      "enablePathFilter": true,
                      "includePaths": "",
                      "excludePaths": "/dev/loop,/dev/fd0,/dev/sr0,/dev/ram,/dev/dm-,/dev/md,/dev/rbd,/dev/zd"
                    },
                    "probes": {
                      "enableSeachest": false
                    },
                    "nodeSelector": {},
                    "tolerations": [],
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "ndmOperator": {
                    "enabled": true,
                    "image": "openebs/node-disk-operator",
                    "imageTag": "1.7.0",
                    "replicas": 1,
                    "upgradeStrategy": "Recreate",
                    "nodeSelector": {},
                    "tolerations": [],
                    "healthCheck": {
                      "initialDelaySeconds": 15,
                      "periodSeconds": 20
                    },
                    "readinessCheck": {
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10
                    },
                    "resources": {}
                  },
                  "ndmExporter": {
                    "enabled": false,
                    "image": {
                      "registry": null,
                      "repository": "openebs/node-disk-exporter",
                      "pullPolicy": "IfNotPresent",
                      "tag": "1.7.0"
                    },
                    "nodeExporter": {
                      "name": "ndm-node-exporter",
                      "podLabels": {
                        "name": "openebs-ndm-node-exporter"
                      },
                      "metricsPort": 9101
                    },
                    "clusterExporter": {
                      "name": "ndm-cluster-exporter",
                      "podLabels": {
                        "name": "openebs-ndm-cluster-exporter"
                      },
                      "metricsPort": 9100
                    }
                  },
                  "webhook": {
                    "enabled": true,
                    "image": "openebs/admission-server",
                    "imageTag": "2.12.2",
                    "failurePolicy": "Fail",
                    "replicas": 1,
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "hostNetwork": false,
                    "resources": {}
                  },
                  "helper": {
                    "image": "openebs/linux-utils",
                    "helperImageTag": "3.0.0"
                  },
                  "featureGates": {
                    "enabled": true,
                    "GPTBasedUUID": {
                      "enabled": true,
                      "featureGateFlag": "GPTBasedUUID"
                    },
                    "APIService": {
                      "enabled": false,
                      "featureGateFlag": "APIService",
                      "address": "0.0.0.0:9115"
                    },
                    "UseOSDisk": {
                      "enabled": false,
                      "featureGateFlag": "UseOSDisk"
                    },
                    "ChangeDetection": {
                      "enabled": false,
                      "featureGateFlag": "ChangeDetection"
                    }
                  },
                  "crd": {
                    "enableInstall": true
                  },
                  "policies": {
                    "monitoring": {
                      "enabled": true,
                      "image": "openebs/m-exporter",
                      "imageTag": "2.12.2"
                    }
                  },
                  "analytics": {
                    "enabled": true,
                    "pingInterval": "24h"
                  },
                  "jiva": {
                    "image": "openebs/jiva",
                    "imageTag": "2.12.2",
                    "replicas": 3,
                    "defaultStoragePath": "/var/openebs",
                    "enabled": false,
                    "openebsLocalpv": {
                      "enabled": false
                    },
                    "localpv-provisioner": {
                      "openebsNDM": {
                        "enabled": false
                      }
                    }
                  },
                  "cstor": {
                    "pool": {
                      "image": "openebs/cstor-pool",
                      "imageTag": "2.12.2"
                    },
                    "poolMgmt": {
                      "image": "openebs/cstor-pool-mgmt",
                      "imageTag": "2.12.2"
                    },
                    "target": {
                      "image": "openebs/cstor-istgt",
                      "imageTag": "2.12.2"
                    },
                    "volumeMgmt": {
                      "image": "openebs/cstor-volume-mgmt",
                      "imageTag": "2.12.2"
                    },
                    "enabled": false,
                    "openebsNDM": {
                      "enabled": false
                    }
                  },
                  "openebs-ndm": {
                    "enabled": false
                  },
                  "localpv-provisioner": {
                    "enabled": false,
                    "openebsNDM": {
                      "enabled": false
                    }
                  },
                  "zfs-localpv": {
                    "enabled": false
                  },
                  "lvm-localpv": {
                    "enabled": false
                  },
                  "nfs-provisioner": {
                    "enabled": false
                  },
                  "cleanup": {
                    "image": {
                      "registry": "",
                      "repository": "bitnami/kubectl",
                      "tag": "",
                      "imagePullSecrets": []
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: index.docker.io/openebs/helm-operator:v0.0.9
          createdAt: "2021-11-02T02:56:58Z"
          description: Creates and maintains OpenEBS Control Plane deployments
          repository: https://github.com/openebs/helm-operator
          support: https://slack.openebs.io/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a OpenEBS Install Operator
            displayName: OpenEBS Install Template
            kind: OpenEBSInstallTemplate
            name: openebsinstalltemplates.openebs.io
            version: v1alpha1
        description: |
          **OpenEBS** is a leading container attached storage solution that enables the use of containers for mission-critical, persistent workloads and for other stateful workloads such as logging or Prometheus for example.
          OpenEBS itself is deployed as just another container on your host and enables storage services that can be designated on a per pod, application, cluster or container level, including:
          * Data persistence across nodes
          * Synchronization of data across availability zones and cloud providers
          * A common layer whether you are running on the cloud, or your bare metal
          * Integration with Kubernetes, so developer and application intent flows into OpenEBS
          * Management of tiering to and from S3 and other targets.
          ## OpenEBS Operator
          OpenEBS primarily provides container attached block storage (iSCSI volumes) by leveraging/aggregating the storage on the nodes, with the storage controller itself running as a container. Different storage engines (Jiva & cStor) are supported, with tools available to dynamically provision Kubernetes Local PVs. The volumes are dynamically provisioned via PersistentVolumeClaims and are managed by a control plane component called "maya", which also runs as a deployment in the K8s cluster. In addition to maya, a typical OpenEBS installation comprises several other resources, which aid with various functionalities, ranging from snapshotting to disk management. All these components are described briefly below:
          * **Maya-API-Server** - A storage orchestrator which integrates into Kubernetes workflow to help provision
            and manage OpenEBS Jiva & cStor (storage engine) volumes

          * **Dynamic-OpenEBS-Provisioner** - A Kubernetes external storage provisioner that utilizes APIs exposed by maya-apiserver
            to perform provision & delete operations of Jiva & cStor volumes

          * **Dynamic-LocalPV-Provisioner** - A dynamic provisioner for Kubernetes Local PVs
          * **OpenEBS-Snapshot-Operator** - A Kubernetes snapshot controller that creates & restores OpenEBS volume snapshots
          * **Node-Disk-Manager** - A disk management controller which identifies available disks, maintains inventory, and
            dynamically attaches/detaches disks to backend storage pods

          The helm-based OpenEBS Operator eases the setup of all the above mentioned components, with a simple custom resource provided to define the install options, thereby enabling applications to start using the OpenEBS storageclasses in their PVCs. The OpenEBSInstallTemplate CR can be used to specify start-up parameters & also update/overwrite the definitions post install.
          ## Pre-Requisites
          Before installing OpenEBS control plane, perform the following steps to ensure successful deployment of the Node-Disk-Manager & the OpenEBS volume replicas, respectively.
          * Configure the OpenEBS service account on the openshift-operators namespace/project to use the privileged security context constraint.

            **Note**: The serviceaccount name is same as the one specified in the `spec.serviceAccount.name` field of the OpenEBSInstallTemplate CR.


            ```
            oc adm policy add-scc-to-user privileged system:serviceaccount:openshift-operators:openebs-maya-operator
            ```

          * Configure the default service account on the namespace/project in which the volume replicas are deployed to use privileged
            security context constraint.


            ```
            oc adm policy add-scc-to-user privileged system:serviceaccount:openshift-operators:default
            ```

          ## Getting Started
          * Try the quickstart [guide](https://github.com/openebs/helm-operator/blob/master/olm/README.md)
          * To learn how to contribute, please read the [contribution guide](https://github.com/openebs/helm-operator/blob/master/CONTRIBUTING.md)
          * OpenEBS welcomes your feedback and contributions in any form possible. [Join our Community](https://openebs.org/community)

          ## License
          OpenEBS is distributed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt)
        displayName: OpenEBS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OpenEBS
        - ContainerAttachedStorage
        links:
        - name: OpenEBS Website
          url: https://openebs.io
        - name: Operator Source Code
          url: https://github.com/openebs/helm-operator
        - name: Install Instructions
          url: https://github.com/openebs/helm-operator/blob/master/olm/README.md
        maintainers:
        - email: kiran.mova@openebs.io
          name: kmova
        maturity: alpha
        minKubeVersion: 1.12.0
        provider:
          name: MayaData
        relatedImages:
        - index.docker.io/openebs/helm-operator:v0.0.9
        - quay.io/openshift-community-operators/openebs@sha256:ff179bdd6e63b8e2cb1ce3b96d5e03d20c1a2410296fed6fb331bf5bc2e6b14d
        version: 3.0.0
      entries:
      - name: openebsoperator.v3.0.0
        version: 3.0.0
      - name: openebsoperator.v2.12.2
        version: 2.12.2
      name: alpha
    defaultChannel: alpha
    packageName: openebs
    provider:
      name: MayaData
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/multiarch-tuning-operator
    name: multiarch-tuning-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multiarch-tuning-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multiarch.openshift.io/v1beta1",
                "kind": "ClusterPodPlacementConfig",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logVerbosity": "Normal",
                  "namespaceSelector": {
                    "matchExpressions": [
                      {
                        "key": "multiarch.openshift.io/exclude-pod-placement",
                        "operator": "DoesNotExist"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Other
          console.openshift.io/disable-operand-delete: "false"
          containerImage: registry.redhat.io/multiarch-tuning/multiarch-tuning-rhel9-operator@sha256:e17ed141cb3ec0a6c6b87bab5164f5657607d12d7b205a5d451e08f795a34e08
          createdAt: "2025-11-12T04:49:47Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operator.openshift.io/uninstall-message: You must remove all Operands before
            uninstalling the operator.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-multiarch-tuning-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: '["enoexecevents.multiarch.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/multiarch-tuning-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPodPlacementConfig defines the configuration for the
              architecture aware pod placement operand. Users can only deploy a single
              object named "cluster". Creating the object enables the operand.
            displayName: Cluster Pod Placement Config
            kind: ClusterPodPlacementConfig
            name: clusterpodplacementconfigs.multiarch.openshift.io
            version: v1alpha1
          - description: ClusterPodPlacementConfig defines the configuration for the
              architecture aware pod placement operand. Users can only deploy a single
              object named "cluster". Creating the object enables the operand.
            displayName: Cluster Pod Placement Config
            kind: ClusterPodPlacementConfig
            name: clusterpodplacementconfigs.multiarch.openshift.io
            version: v1beta1
          - description: ENoExecEvent is the Schema for the enoexecevents API
            displayName: ENo Exec Event
            kind: ENoExecEvent
            name: enoexecevents.multiarch.openshift.io
            version: v1beta1
        description: |
          The Multiarch Tuning Operator optimizes workload management within multi-architecture clusters and in
          single-architecture clusters transitioning to multi-architecture environments.

          By default, the scheduler does not consider the architecture of a pod's container images
          when determining the placement of new pods onto nodes.

          The Multiarch Tuning Operator introduces the ClusterPodPlacementConfig custom resource to
          enable architecture-aware scheduling, ensuring that pods are assigned to nodes with
          a corresponding architecture for their container images.

          To enable this functionality, you must create a ClusterPodPlacementConfig resource.

          When the ClusterPodPlacementConfig object is created, the Multiarch Tuning Operator deploys the necessary operands
          to support architecture-aware workload scheduling.
        displayName: Multiarch Tuning Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multiarch-tuning-operator
        - pod-placement
        links:
        - name: Multiarch Tuning Operator Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/postinstallation_configuration/configuring-multi-architecture-compute-machines-on-an-openshift-cluster#multiarch-tuning-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
          url: https://github.com/openshift/multiarch-tuning-operator
        relatedImages:
        - registry.redhat.io/multiarch-tuning/multiarch-tuning-operator-bundle@sha256:fe40f5abedd62e8ac2a354ddc7e81e158615682c753ef942bca238dcc3beb4c7
        - registry.redhat.io/multiarch-tuning/multiarch-tuning-rhel9-operator@sha256:e17ed141cb3ec0a6c6b87bab5164f5657607d12d7b205a5d451e08f795a34e08
        version: 1.2.1
      entries:
      - name: multiarch-tuning-operator.v1.2.1
        version: 1.2.1
      - name: multiarch-tuning-operator.v1.2.0
        version: 1.2.0
      - name: multiarch-tuning-operator.v1.1.1
        version: 1.1.1
      - name: multiarch-tuning-operator.v1.1.0
        version: 1.1.0
      - name: multiarch-tuning-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: multiarch-tuning-operator
    provider:
      name: Red Hat
      url: https://github.com/openshift/multiarch-tuning-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Coroot Inc.
      provider-url: https://coroot.com
    name: coroot-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: coroot-operator.1.1.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "coroot.com/v1",
                "kind": "Coroot",
                "metadata": {
                  "name": "coroot",
                  "namespace": "coroot"
                },
                "spec": {
                  "enterpriseEdition": {
                    "licenseKey": "<COROOT_LICENSE_KEY> from https://coroot.com/account"
                  },
                  "ingress": {
                    "host": "coroot.example.com"
                  },
                  "storage": {
                    "size": "50Gi"
                  },
                  "clickhouse": {
                    "replicas": 2,
                    "shards": 2,
                    "storage": {
                      "size": "100Gi"
                    }
                  },
                  "prometheus": {
                    "storage": {
                      "size": "100Gi"
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring, Logging & Tracing
          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"
          repository: https://github.com/coroot/coroot-operator
          support: support@coroot.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Coroot is the Schema for the coroots API
            displayName: Coroot
            kind: Coroot
            name: coroots.coroot.com
            version: v1
        description: An open-source observability platform using eBPF to gather telemetry
          data, providing actionable insights for quick issue detection and resolution
          in Kubernetes and VM environments.
        displayName: Coroot
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - coroot
        - observability
        links:
        - name: Documentation
          url: https://docs.coroot.com
        maintainers:
        - email: support@coroot.com
          name: Coroot Inc.
        maturity: stable
        provider:
          name: Coroot Inc.
          url: https://coroot.com
        relatedImages:
        - ghcr.io/coroot/clickhouse@sha256:afed1054626598371975c948e5b9e4dcaac54e8059b7ad9f0b905ef1c99f2260
        - ghcr.io/coroot/coroot-cluster-agent@sha256:674bcb147354873eaa0ee9c1328ddf758d43adbbe532c9fbbe41ddae7addc114
        - ghcr.io/coroot/coroot-ee@sha256:09b9177ac07c2d26f4bd16050d07bb1e2132431055c32e047563083ee09194a8
        - ghcr.io/coroot/coroot-node-agent@sha256:3d552e98ca2ff8c6e125496857306172ec6f8e134ff13886c7f799abef29d1b8
        - ghcr.io/coroot/coroot-operator@sha256:13f1a4a07877c8fe8230a0bb7282ff47451007c9cf689a995a37d16697b9268a
        - ghcr.io/coroot/kube-state-metrics@sha256:080a85e77b1e530df56f84c8e0ee2523c1f740adea152015367b87edbfac078d
        - ghcr.io/coroot/prometheus@sha256:e7117bd86e1088fc02ac12758bc94dba1029de54a5bc1ee04954569d8b79625d
        - registry.connect.redhat.com/coroot/coroot-operator@sha256:44aa4ea98d468f1d1ced671bd2e2bd5bf79ce467f8c572c2248abdce2b7c5acf
        version: 1.1.5
      entries:
      - name: coroot-operator.1.1.5
        version: 1.1.5
      name: stable
    defaultChannel: stable
    packageName: coroot-operator
    provider:
      name: Coroot Inc.
      url: https://coroot.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Tigera
      provider-url: ""
    name: tigera-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tigera-operator.v1.40.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "calicoNetwork": {
                    "linuxDataplane": "BPF"
                  },
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Basic Install
          categories: Logging & Tracing, Monitoring, Networking, Security
          containerImage: quay.io/tigera/operator@sha256:35f43a5fdc867629b3b8604f7fc8666e2f919778411d86adc6761b18f355e5f3
          createdAt: "2025-11-18T15:35:44.698841063Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          features.operators.openshift.io/valid-subscription: No subscription required
          olm.skipRange: <1.40.2
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift.
        displayName: Tigera Operator v1.38
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tigera-operator
        - networking
        - security
        - monitoring
        links:
        - name: Tigera
          url: https://tigera.io/
        - name: Calico Introduction
          url: https://docs.tigera.io/calico/latest/about/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.tigera.io/calico/latest/getting-started/kubernetes/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
          url: https://tigera.io/
        relatedImages:
        - quay.io/tigera/operator@sha256:35f43a5fdc867629b3b8604f7fc8666e2f919778411d86adc6761b18f355e5f3
        - registry.connect.redhat.com/tigera/operator@sha256:464be134e6e0e4df46c996a08488a477b4456f7b85f6ea5cd2a82f000e8e8888
        version: 1.40.2
      entries:
      - name: tigera-operator.v1.40.2
        version: 1.40.2
      name: alpha
    - currentCSV: tigera-operator.v1.20.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:bd93e66be5cfbc123fe4e8c3f6e8ddf7654217bf26136f06dcf23f28b53063d2
          createdAt: "2021-10-05T20:02:14.564507Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.20.4
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:bd93e66be5cfbc123fe4e8c3f6e8ddf7654217bf26136f06dcf23f28b53063d2
        - registry.connect.redhat.com/tigera/operator@sha256:4d0d814fcfeb628aae8a05cb7a0a416ae85395197950085c907b6cdcf2fb4317
        version: 1.20.4
      entries:
      - name: tigera-operator.v1.20.4
        version: 1.20.4
      - name: tigera-operator.v1.20.3
        version: 1.20.3
      - name: tigera-operator.v1.20.2
        version: 1.20.2
      - name: tigera-operator.v1.20.1
        version: 1.20.1
      name: release-v1.20
    - currentCSV: tigera-operator.v1.23.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:f258275fe3d48c2ae16346a57f628523a6f2fb7b854b6d43b169056e158537f1
          createdAt: "2022-01-12T22:55:57.409244Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.23.4
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - registry.connect.redhat.com/tigera/operator@sha256:b1a8b56ff5e1bb5326e1bde4931303358410da9768f0ebf9c08e2c2d8661d742
        - quay.io/tigera/operator@sha256:f258275fe3d48c2ae16346a57f628523a6f2fb7b854b6d43b169056e158537f1
        version: 1.23.4
      entries:
      - name: tigera-operator.v1.23.4
        version: 1.23.4
      - name: tigera-operator.v1.23.3
        version: 1.23.3
      - name: tigera-operator.v1.23.2
        version: 1.23.2
      - name: tigera-operator.v1.23.1
        version: 1.23.1
      - name: tigera-operator.v1.23.0
        version: 1.23.0
      name: release-v1.23
    - currentCSV: tigera-operator.v1.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:e862708c700df55f99a9c9bb3c453e31f22aef1993d6079d80433eb8da831c94
          createdAt: "2022-02-17T05:39:13.720885Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.25.1
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:e862708c700df55f99a9c9bb3c453e31f22aef1993d6079d80433eb8da831c94
        - registry.connect.redhat.com/tigera/operator@sha256:cb7f3367ff064cd01dc636a43fd89d5f6c4e6a7004cb7c94b1758b2398e36d71
        version: 1.25.1
      entries:
      - name: tigera-operator.v1.25.1
        version: 1.25.1
      name: release-v1.25
    - currentCSV: tigera-operator.v1.28.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:9e8e47045fc67a2b00f9f2fd575fa526d7ddcac50af0b8b6d583b7518ccce120
          createdAt: "2023-05-17T16:13:52.148441156Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.28.13
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:9e8e47045fc67a2b00f9f2fd575fa526d7ddcac50af0b8b6d583b7518ccce120
        - registry.connect.redhat.com/tigera/operator@sha256:de9724b84ca493d3b14c8f801c1049ac4713166b00d9bf3ea0b1986aac5040fa
        version: 1.28.13
      entries:
      - name: tigera-operator.v1.28.13
        version: 1.28.13
      name: release-v1.28
    - currentCSV: tigera-operator.v1.29.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:2a5acd29d8dca6adb318af04dbb15d93d899ed2b28b2ee9aaac09147395efb58
          createdAt: "2023-03-31T20:49:52.518230079Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.29.3
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - registry.connect.redhat.com/tigera/operator@sha256:8e0c026f369f80e8b36d0c94f1fd60f7f53656e57dc5be0b8b12189546874909
        - quay.io/tigera/operator@sha256:2a5acd29d8dca6adb318af04dbb15d93d899ed2b28b2ee9aaac09147395efb58
        version: 1.29.3
      entries:
      - name: tigera-operator.v1.29.3
        version: 1.29.3
      name: release-v1.29
    - currentCSV: tigera-operator.v1.30.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:431f037ff18b5c867d01312e42671effc55602421aeed25dd3f6109f70596b4a
          createdAt: "2023-11-17T00:52:31.263564294Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.30.9
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: APIServer
            name: apiservers.operator.tigera.io
            version: v1
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:431f037ff18b5c867d01312e42671effc55602421aeed25dd3f6109f70596b4a
        - registry.connect.redhat.com/tigera/operator@sha256:1fb1007f7aad744f0e1b0f6a32022c2571ee8558e9db53c85976bbd2a891a6b0
        version: 1.30.9
      entries:
      - name: tigera-operator.v1.30.9
        version: 1.30.9
      name: release-v1.30
    - currentCSV: tigera-operator.v1.32.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:715ac9a30f8a9579e44258af20de354715429e11836b493918e9e1a696e9b028
          createdAt: "2023-12-15T23:45:03.964812504Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.32.3
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:715ac9a30f8a9579e44258af20de354715429e11836b493918e9e1a696e9b028
        - registry.connect.redhat.com/tigera/operator@sha256:42a4d0d0e24752dbb51daebcfca4d4850d04e79578bfb8b41cdc2a2a289df4a2
        version: 1.32.3
      entries:
      - name: tigera-operator.v1.32.3
        version: 1.32.3
      name: release-v1.32
    defaultChannel: release-v1.32
    packageName: tigera-operator
    provider:
      name: Tigera
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: EDB
      provider-url: ""
    name: cloud-native-postgresql
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cloud-native-postgresql.v1.28.0-rc2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:9e48409a60f1499191d285a41c034ed854108804eac2b5252f4f11797965cf1a
          createdAt: "2025-12-05T15:06:17Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:076018f56494a521e44e5fe7c48c3b21eeaf6379606f8dc651ed7a4330d0ce07
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:9e48409a60f1499191d285a41c034ed854108804eac2b5252f4f11797965cf1a
        version: 1.28.0-rc2
      entries:
      - name: cloud-native-postgresql.v1.28.0-rc2
        version: 1.28.0-rc2
      - name: cloud-native-postgresql.v1.28.0-rc1
        version: 1.28.0-rc1
      - name: cloud-native-postgresql.v1.27.0-rc1
        version: 1.27.0-rc1
      - name: cloud-native-postgresql.v1.26.0-rc3
        version: 1.26.0-rc3
      - name: cloud-native-postgresql.v1.26.0-rc2
        version: 1.26.0-rc2
      - name: cloud-native-postgresql.v1.26.0-rc1
        version: 1.26.0-rc1
      name: candidate
    - currentCSV: cloud-native-postgresql.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
          createdAt: "2025-12-16T10:37:27Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:16384249d49258831634aa3535f97906f41ebbf92d2f28bf6645e416ec3da96e
        version: 1.28.0
      entries:
      - name: cloud-native-postgresql.v1.28.0
        version: 1.28.0
      - name: cloud-native-postgresql.v1.27.1
        version: 1.27.1
      - name: cloud-native-postgresql.v1.27.0
        version: 1.27.0
      - name: cloud-native-postgresql.v1.26.1
        version: 1.26.1
      - name: cloud-native-postgresql.v1.26.0
        version: 1.26.0
      - name: cloud-native-postgresql.v1.25.2
        version: 1.25.2
      - name: cloud-native-postgresql.v1.25.1
        version: 1.25.1
      - name: cloud-native-postgresql.v1.25.0
        version: 1.25.0
      name: fast
    - currentCSV: cloud-native-postgresql.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
          createdAt: "2025-12-16T10:37:27Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:16384249d49258831634aa3535f97906f41ebbf92d2f28bf6645e416ec3da96e
        version: 1.28.0
      entries:
      - name: cloud-native-postgresql.v1.28.0
        version: 1.28.0
      - name: cloud-native-postgresql.v1.25.5
        version: 1.25.5
      - name: cloud-native-postgresql.v1.25.4
        version: 1.25.4
      - name: cloud-native-postgresql.v1.25.3
        version: 1.25.3
      - name: cloud-native-postgresql.v1.25.2
        version: 1.25.2
      - name: cloud-native-postgresql.v1.25.1
        version: 1.25.1
      - name: cloud-native-postgresql.v1.25.0
        version: 1.25.0
      name: stable
    - currentCSV: cloud-native-postgresql.v1.25.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": [
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:d2e7f433904cf4f5193d044434b1d6294222047398692697fc5c3f6311997ed3",
                      "major": 15
                    },
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:8f68afde9b1217ad13682bd2adfc0a7cac691cbdb496cc22915f6783012067f9",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": [
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:d2e7f433904cf4f5193d044434b1d6294222047398692697fc5c3f6311997ed3",
                      "major": 15
                    },
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:8f68afde9b1217ad13682bd2adfc0a7cac691cbdb496cc22915f6783012067f9",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: quay.io/enterprisedb/cloud-native-postgresql@sha256:8ceea425bde8f569006e53f631e658b9b20f1093a5ae7088f843c8ac0a2ad235
          createdAt: "2025-10-24T16:12:01Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          Main features:

          * Direct integration with Kubernetes API server for High Availability,
            without requiring an external tool
          * Self-Healing capability, through:
              * failover of the primary instance by promoting the most aligned replica
              * automated recreation of a replica
          * Planned switchover of the primary instance by promoting a selected replica
          * Scale up/down capabilities
          * Definition of an arbitrary number of instances (minimum 1 - one primary server)
          * Definition of the *read-write* service, to connect your applications to the only primary server of the cluster
          * Definition of the *read-only* service, to connect your applications to any of the instances for reading workloads
          * Declarative management of PostgreSQL configuration
          * Declarative management of Postgres roles, users and groups
          * Support for Local Persistent Volumes with PVC templates
          * Reuse of Persistent Volumes storage in Pods
          * Separate volume for WAL files
          * Rolling updates for PostgreSQL minor versions
          * In-place or rolling updates for operator upgrades
          * TLS connections and client certificate authentication
          * Support for custom TLS certificates (including integration with cert-manager)
          * Continuous WAL archiving to an object store (AWS S3 and S3-compatible, Azure Blob Storage, and Google Cloud Storage)
          * Backups on volume snapshots (where supported by the underlying storage classes)
          * Backups on object stores (AWS S3 and S3-compatible, Azure Blob Storage, and Google Cloud Storage)
          * Full recovery and Point-In-Time recovery from an existing backup on volume snapshots or object stores
          * Offline import of existing PostgreSQL databases, including major upgrades of PostgreSQL
          * Fencing of an entire PostgreSQL cluster, or a subset of the instances in a declarative way
          * Hibernation of a PostgreSQL cluster in a declarative way
          * Support for Synchronous Replicas
          * Support for HA physical replication slots at cluster level
          * Backup from a standby
          * Backup retention policies (based on recovery window, only on object stores)
          * Parallel WAL archiving and restore to allow the database to keep up with WAL
            generation on high write systems
          * Support tagging backup files uploaded to an object store to enable optional
            retention management at the object store layer Replica clusters for
          * PostgreSQL deployments across multiple Kubernetes
            clusters, enabling private, public, hybrid, and multi-cloud architectures
          * Connection pooling with PgBouncer
          * Support for node affinity via `nodeSelector`
          * Native customizable exporter of user defined metrics for Prometheus through the `metrics` port (9187)
          * Standard output logging of PostgreSQL error messages in JSON format
          * Automatically set `readOnlyRootFilesystem` security context for pods
          * `cnp` plugin for `kubectl`
          * Simple bind and search+bind LDAP client authentication
          * Multi-arch format container images
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - quay.io/enterprisedb/postgresql@sha256:d2e7f433904cf4f5193d044434b1d6294222047398692697fc5c3f6311997ed3
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:22c35530e81789a83754aaa05de5159153f5e7fa4f25dbd9e5f1bd4f5d088cbb
        - quay.io/enterprisedb/cloud-native-postgresql@sha256:8ceea425bde8f569006e53f631e658b9b20f1093a5ae7088f843c8ac0a2ad235
        - quay.io/enterprisedb/postgresql@sha256:8f68afde9b1217ad13682bd2adfc0a7cac691cbdb496cc22915f6783012067f9
        version: 1.25.4
      entries:
      - name: cloud-native-postgresql.v1.25.4
        version: 1.25.4
      - name: cloud-native-postgresql.v1.25.3
        version: 1.25.3
      - name: cloud-native-postgresql.v1.25.2
        version: 1.25.2
      - name: cloud-native-postgresql.v1.25.1
        version: 1.25.1
      - name: cloud-native-postgresql.v1.25.0
        version: 1.25.0
      name: stable-v1.25
    - currentCSV: cloud-native-postgresql.v1.26.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:d4c22a434ea72e5865fd394b10b485e0c6b0690c27b3a14ebefc1add666de8b5
          createdAt: "2025-12-16T09:08:59Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:14ef013d84432c0901b5eaa7128e186d7dc604b699eb9b1cb3d63ca9d44366af
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:d4c22a434ea72e5865fd394b10b485e0c6b0690c27b3a14ebefc1add666de8b5
        version: 1.26.3
      entries:
      - name: cloud-native-postgresql.v1.26.3
        version: 1.26.3
      - name: cloud-native-postgresql.v1.26.2
        version: 1.26.2
      - name: cloud-native-postgresql.v1.26.1
        version: 1.26.1
      - name: cloud-native-postgresql.v1.26.0
        version: 1.26.0
      name: stable-v1.26
    - currentCSV: cloud-native-postgresql.v1.27.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:5c5753190e5f7e9da7d5a969b0b917c97f2e9aa9f5f208324dbdd5cdb2db2a1d
          createdAt: "2025-12-16T09:52:18Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:5c5753190e5f7e9da7d5a969b0b917c97f2e9aa9f5f208324dbdd5cdb2db2a1d
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:147730fba2efe5e1369ebf61816cdf01ac0a92c67b7e89b89e32e032119447a2
        version: 1.27.2
      entries:
      - name: cloud-native-postgresql.v1.27.2
        version: 1.27.2
      - name: cloud-native-postgresql.v1.27.1
        version: 1.27.1
      - name: cloud-native-postgresql.v1.27.0
        version: 1.27.0
      name: stable-v1.27
    - currentCSV: cloud-native-postgresql.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
          createdAt: "2025-12-16T10:37:27Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:16384249d49258831634aa3535f97906f41ebbf92d2f28bf6645e416ec3da96e
        version: 1.28.0
      entries:
      - name: cloud-native-postgresql.v1.28.0
        version: 1.28.0
      name: stable-v1.28
    defaultChannel: fast
    packageName: cloud-native-postgresql
    provider:
      name: EDB
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: devopstales
      provider-url: devopstales.github.io
    name: community-trivy-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: community-trivy-operator.v2.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "trivy-operator.devopstales.io/v1",
                "kind": "NamespaceScanner",
                "metadata": {
                  "name": "trivy-operator-main-config"
                },
                "spec": {
                  "crontab": "*/5 * * * *",
                  "namespace_selector": "trivy-scan",
                  "clusterWide": "False",
                  "policyreport": "False",
                  "registry": [
                    {
                      "name": "docker.io",
                      "user": "",
                      "password": ""
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: devopstales/trivy-operator:2.4.1
          createdAt: "2022-07-11T15:00:00Z"
          description: Trivy Operator for scheduled imagescans and an Admission Control.
          repository: https://github.com/devopstales/trivy-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Confifuration for trivy-operator.
            displayName: NamespaceScanner
            kind: NamespaceScanner
            name: namespace-scanners.trivy-operator.devopstales.io
            version: v1
          - description: |
              VulnerabilityReport summarizes vulnerabilities in application dependencies and operating system packages
              built into container images.
            displayName: VulnerabilityReport
            kind: VulnerabilityReport
            name: vulnerabilityreports.trivy-operator.devopstales.io
            version: v1
        description: |
          Trivy Operator for scheduled imagescans and an Admission Control.

          ### Add Github token to extend your Github API Rate Limit
          The Operator use Github to download Trivy database. If your Github API Rate Limit Exceeded add your Github token to the operator deployment as GITHUB_TOKEN variable.

          ```yaml
          ...
          env:
          - name: GITHUB_TOKEN
            value: "githubToken"
          ```

          ### Scheduled Image scans
          Default every 5 minutes execute a scan script. It will get image list from all namespaces with the label `trivy-scan=true`, and then scan this images with trivy, finally we will get metrics on `http://[pod-ip]:9115/metrics`

          You can chane the schedule of the image scanning by setting the `crontab` variable in the namespace-scanner object.


          ### Cache Scan results
          From the 2.4 version you can use an external redis to store scanning results and speed up the scanning process.

          ```bash
          ...
          env:
          - name: REDIS_ENABLED
            value: "True"
          - name: REDIS_BACKEND
            value: redis://redis-cache:6379
          ```

          ### Persist Trivy database cache
          To Persist Trivy cache you need to create a pvc and mount to the Deployment under `/home/trivy-operator/trivy-cache`

          ```yaml
          ...
            volumeMounts:
            - name: cache
              mountPath: "/home/trivy-operator/trivy-cache"
          volumes:
          - name: cache
            persistentVolumeClaim:
              claimName: trivy-cache
          ```

          ### Trivy Image Validator
          The admission controller function can be configured as a ValidatingWebhook in a k8s cluster. Kubernetes will send requests to the admission server when a Pod creation is initiated. The admission controller checks the image using trivy if it is in a namespace with the lable `trivy-operator-validation=true`.

          To enable the admission controller you need to set the `clusterWide` variable to `true` in the namespace-scanner object.

          Enable the scheduled scan and the admission controller for a specific namespace:
          ```bash
          kubectl label namespaces test-apps trivy-scan=true
          # or
          kubectl label namespaces test-apps trivy-operator-validation=true
          ```

          You can define policy to the Admission Controller, by adding annotation to the pod trough the deployment:

          ```bash
          spec:
            ...
            template:
              metadata:
                annotations:
                  trivy.security.devopstales.io/medium: "5"
                  trivy.security.devopstales.io/low: "10"
                  trivy.security.devopstales.io/critical: "2"
          ...
          ```

          ### Monitorng
          Trivy operator has a prometheus endpoint wher yo can get the resoults of the namespace scans and the adission controller.

          ```bash
          curl -s http://10.43.179.39:9115/metrics | grep so_vulnerabilities

          # HELP so_vulnerabilities Container vulnerabilities
          # TYPE so_vulnerabilities gauge
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="UNKNOWN"} 0
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="LOW"} 23
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="MEDIUM"} 93
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="HIGH"} 76
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="CRITICAL"} 25
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="UNKNOWN"} 0
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="LOW"} 23
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="MEDIUM"} 88
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="HIGH"} 60
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="CRITICAL"} 8
          ```

          ```bash
          curl -s http://10.43.179.39:9115/metrics | grep ac_vulnerabilities

          # HELP ac_vulnerabilities Admission Controller vulnerabilities
          # TYPE ac_vulnerabilities gauge
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="UNKNOWN"} 0.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="LOW"} 83.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="MEDIUM"} 6.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="HIGH"} 6.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="CRITICAL"} 4.0
          ```

          ### Policy Report reation
          The PolicyReport object is a protopype object probosed by the Kubernetes policy work group. The Policy Report Custom Resource Definition (CRD) can be used as a common way to provide policy results to Kubernetes cluster administrators and users, using native tools.

          Add the PolicyReport CRDs to your cluster (v1alpha2):
          ```bash
          kubectl create -f https://github.com/kubernetes-sigs/wg-policy-prototypes/raw/master/policy-report/crd/v1alpha2/wgpolicyk8s.io_policyreports.yaml
          ```

          You can enable the Policy Report creatin by setting the `policyreport` to `True` in the NamespaceScanner object.

          This objects can be visualized by the Policy Reporter UI. The Policy Reporter UI is a monitoring and Observability Tool for the PolicyReport CRD with an optional UI. It is created by Kyverno. The main goal was a tool to visualize the resoluts of the Kyverno policies, but because it uses the PolicyReports CRD it can visualize the resoults of the trivy-operator scans.
        displayName: Community Trivy Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - trivy
        - security
        links:
        - name: Documentation
          url: https://devopstales.github.io/trivy-operator
        - name: Blog
          url: https://devopstales.github.io
        maintainers:
        - email: devopstales@protonmail.com
          name: devopstales
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: devopstales
          url: devopstales.github.io
        relatedImages:
        - devopstales/trivy-operator:2.4.1
        - quay.io/openshift-community-operators/community-trivy-operator@sha256:e3652e68e1e569d7f40432fd8cbb7bfdc6738a116ecc1011c71a36f7ca5663c6
        version: 2.4.0
      entries:
      - name: community-trivy-operator.v2.4.0
        version: 2.4.0
      - name: community-trivy-operator.v2.3.0
        version: 2.3.0
      - name: community-trivy-operator.v2.2.0
        version: 2.2.0
      - name: community-trivy-operator.v2.1.1
        version: 2.1.1
      name: stable
    defaultChannel: stable
    packageName: community-trivy-operator
    provider:
      name: devopstales
      url: devopstales.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: hive-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hive-operator.v1.2.5060-b061ef0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:b061ef0a98
          createdAt: "2025-12-18T18:32:21Z"
          description: OpenShift cluster provisioning and management at scale.
          operators.operatorframework.io/internal-objects: '["checkpoints.hive.openshift.io","clusterdeprovisions.hive.openshift.io","clusterprovisions.hive.openshift.io","clusterstates.hive.openshift.io","machinepoolnameleases.hive.openshift.io","clustersyncleases.hiveinternal.openshift.io","clustersyncs.hiveinternal.openshift.io","fakeclusterinstalls.hiveinternal.openshift.io"]'
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeploymentCustomization is the Schema for clusterdeploymentcustomizations
              API.
            displayName: ClusterDeploymentCustomization
            kind: ClusterDeploymentCustomization
            name: clusterdeploymentcustomizations.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: |-
              ClusterPool represents a pool of clusters that should be kept ready to be given out to users. Clusters are removed
              from the pool once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: |-
              MachinePoolNameLease is the Schema for the MachinePoolNameLeases API. This resource is mostly empty
              as we're primarily relying on the name to determine if a lease is available.
              Note that not all cloud providers require the use of a lease for naming, at present this
              is only required for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * IBM Cloud
          * Red Hat OpenStack
          * vSphere

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Troubleshooting](https://github.com/openshift/hive/blob/master/docs/troubleshooting.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
              logLevel: debug
              targetNamespace: hive
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hive-operator:1.2.5060-b061ef0
        - quay.io/openshift-hive/hive:b061ef0a98
        version: 1.2.5060-b061ef0
      entries:
      - name: hive-operator.v1.2.5060-b061ef0
        version: 1.2.5060-b061ef0
      - name: hive-operator.v1.2.5017-715614a
        version: 1.2.5017-715614a
      - name: hive-operator.v1.2.5015-acea5e9
        version: 1.2.5015-acea5e9
      - name: hive-operator.v1.2.5011-47d2de1
        version: 1.2.5011-47d2de1
      - name: hive-operator.v1.2.4989-fc3dac7
        version: 1.2.4989-fc3dac7
      - name: hive-operator.v1.2.4975-f84d11f
        version: 1.2.4975-f84d11f
      - name: hive-operator.v1.2.4953-c248a51
        version: 1.2.4953-c248a51
      - name: hive-operator.v1.2.4928-76a65b6
        version: 1.2.4928-76a65b6
      - name: hive-operator.v1.2.4902-4929f16
        version: 1.2.4902-4929f16
      - name: hive-operator.v1.2.4896-a29a238
        version: 1.2.4896-a29a238
      - name: hive-operator.v1.2.4868-45ae912
        version: 1.2.4868-45ae912
      - name: hive-operator.v1.2.4863-e9ad0fa
        version: 1.2.4863-e9ad0fa
      - name: hive-operator.v1.2.4774-87bff59
        version: 1.2.4774-87bff59
      - name: hive-operator.v1.2.4766-6a82857
        version: 1.2.4766-6a82857
      - name: hive-operator.v1.2.4746-d25e0db
        version: 1.2.4746-d25e0db
      - name: hive-operator.v1.2.4738-b19773e
        version: 1.2.4738-b19773e
      - name: hive-operator.v1.2.4731-41f153f
        version: 1.2.4731-41f153f
      - name: hive-operator.v1.2.4703-02f3f00
        version: 1.2.4703-02f3f00
      - name: hive-operator.v1.2.4693-ec3bc72
        version: 1.2.4693-ec3bc72
      - name: hive-operator.v1.2.4686-553c6c2
        version: 1.2.4686-553c6c2
      - name: hive-operator.v1.2.4682-406d6ca
        version: 1.2.4682-406d6ca
      - name: hive-operator.v1.2.4672-af54e2f
        version: 1.2.4672-af54e2f
      - name: hive-operator.v1.2.4668-3ccd44d
        version: 1.2.4668-3ccd44d
      - name: hive-operator.v1.2.4664-00f84cc
        version: 1.2.4664-00f84cc
      - name: hive-operator.v1.2.4658-c13e207
        version: 1.2.4658-c13e207
      - name: hive-operator.v1.2.4654-3268a18
        version: 1.2.4654-3268a18
      - name: hive-operator.v1.2.4650-531d549
        version: 1.2.4650-531d549
      - name: hive-operator.v1.2.4644-365f074
        version: 1.2.4644-365f074
      - name: hive-operator.v1.2.4638-56d6d64
        version: 1.2.4638-56d6d64
      - name: hive-operator.v1.2.4625-389d717
        version: 1.2.4625-389d717
      - name: hive-operator.v1.2.4615-52100dd
        version: 1.2.4615-52100dd
      - name: hive-operator.v1.2.4605-b41ca3f
        version: 1.2.4605-b41ca3f
      - name: hive-operator.v1.2.4584-95efcb7
        version: 1.2.4584-95efcb7
      - name: hive-operator.v1.2.4574-1ec27ad
        version: 1.2.4574-1ec27ad
      - name: hive-operator.v1.2.4568-b3eca52
        version: 1.2.4568-b3eca52
      - name: hive-operator.v1.2.4564-bdf9d08
        version: 1.2.4564-bdf9d08
      - name: hive-operator.v1.2.4552-bf2d689
        version: 1.2.4552-bf2d689
      - name: hive-operator.v1.2.4532-cddd4f9
        version: 1.2.4532-cddd4f9
      - name: hive-operator.v1.2.4511-1fce770
        version: 1.2.4511-1fce770
      - name: hive-operator.v1.2.4500-b1ac27b
        version: 1.2.4500-b1ac27b
      - name: hive-operator.v1.2.4485-47df0d9
        version: 1.2.4485-47df0d9
      - name: hive-operator.v1.2.4469-7be6433
        version: 1.2.4469-7be6433
      - name: hive-operator.v1.2.4463-d7ead60
        version: 1.2.4463-d7ead60
      - name: hive-operator.v1.2.4461-97686bb
        version: 1.2.4461-97686bb
      - name: hive-operator.v1.2.4459-f910c9b
        version: 1.2.4459-f910c9b
      - name: hive-operator.v1.2.4451-83aedb9
        version: 1.2.4451-83aedb9
      - name: hive-operator.v1.2.4446-e11a23b
        version: 1.2.4446-e11a23b
      - name: hive-operator.v1.2.4441-fdbfaf0
        version: 1.2.4441-fdbfaf0
      - name: hive-operator.v1.2.4436-44323bc
        version: 1.2.4436-44323bc
      - name: hive-operator.v1.2.4428-ceaafa8
        version: 1.2.4428-ceaafa8
      - name: hive-operator.v1.2.4426-fb27114
        version: 1.2.4426-fb27114
      - name: hive-operator.v1.2.4420-fe0e302
        version: 1.2.4420-fe0e302
      - name: hive-operator.v1.2.4418-eb5403f
        version: 1.2.4418-eb5403f
      - name: hive-operator.v1.2.4416-fba8d52
        version: 1.2.4416-fba8d52
      - name: hive-operator.v1.2.4408-9c5806a
        version: 1.2.4408-9c5806a
      - name: hive-operator.v1.2.4404-410fed9
        version: 1.2.4404-410fed9
      - name: hive-operator.v1.2.4400-8c54fc9
        version: 1.2.4400-8c54fc9
      - name: hive-operator.v1.2.4386-6f1fd3e
        version: 1.2.4386-6f1fd3e
      - name: hive-operator.v1.2.4382-0e95d5b
        version: 1.2.4382-0e95d5b
      - name: hive-operator.v1.2.4366-df65e7e
        version: 1.2.4366-df65e7e
      - name: hive-operator.v1.2.4360-de169dd
        version: 1.2.4360-de169dd
      - name: hive-operator.v1.2.4355-e5f809f
        version: 1.2.4355-e5f809f
      name: alpha
    - currentCSV: hive-operator.v2.5.3516-a2ed9b3
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:v2.5.3516-a2ed9b3
          createdAt: "2022-06-03T13:24:12Z"
          description: OpenShift cluster provisioning and management at scale.
          operators.operatorframework.io/internal-objects: '["checkpoints.hive.openshift.io","clusterdeprovisions.hive.openshift.io","clusterprovisions.hive.openshift.io","clusterstates.hive.openshift.io","machinepoolnameleases.hive.openshift.io","clustersyncleases.hiveinternal.openshift.io","clustersyncs.hiveinternal.openshift.io","fakeclusterinstalls.hiveinternal.openshift.io"]'
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: ClusterPool represents a pool of clusters that should be
              kept ready to be given out to users. Clusters are removed from the pool
              once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: MachinePoolNameLease is the Schema for the MachinePoolNameLeases
              API. This resource is mostly empty as we're primarily relying on the
              name to determine if a lease is available. Note that not all cloud providers
              require the use of a lease for naming, at present this is only required
              for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * Red Hat OpenStack

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-hive/hive:v2.5.3516-a2ed9b3
        - quay.io/openshift-community-operators/hive-operator@sha256:be43412a2e4bad2cd9d15e4fbabe0292585c5bbbd65da12d519f30f17d2fe594
        version: 2.5.3516-a2ed9b3
      entries:
      - name: hive-operator.v2.5.3516-a2ed9b3
        version: 2.5.3516-a2ed9b3
      - name: hive-operator.v2.5.3514-4052426
        version: 2.5.3514-4052426
      - name: hive-operator.v2.5.3508-6cb94c6
        version: 2.5.3508-6cb94c6
      - name: hive-operator.v2.5.3506-f42617c
        version: 2.5.3506-f42617c
      - name: hive-operator.v2.5.3495-5cfdd44
        version: 2.5.3495-5cfdd44
      - name: hive-operator.v2.5.3491-6feded1
        version: 2.5.3491-6feded1
      - name: hive-operator.v2.5.3489-6dec9c3
        version: 2.5.3489-6dec9c3
      name: mce-2.0
    - currentCSV: hive-operator.v2.3.3039-60b8a9a
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:v2.3.3039-60b8a9a
          createdAt: "2022-08-15T17:23:39Z"
          description: OpenShift cluster provisioning and management at scale.
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: ClusterPool represents a pool of clusters that should be
              kept ready to be given out to users. Clusters are removed from the pool
              once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: MachinePoolNameLease is the Schema for the MachinePoolNameLeases
              API. This resource is mostly empty as we're primarily relying on the
              name to determine if a lease is available. Note that not all cloud providers
              require the use of a lease for naming, at present this is only required
              for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * Red Hat OpenStack

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/hive-operator@sha256:822fd8e65c241cebedd835bfebf67645199561cfdd6148d5afffb8b35e499ae3
        - quay.io/openshift-hive/hive:v2.3.3039-60b8a9a
        version: 2.3.3039-60b8a9a
      entries:
      - name: hive-operator.v2.3.3039-60b8a9a
        version: 2.3.3039-60b8a9a
      name: ocm-2.3
    - currentCSV: hive-operator.v2.4.3231-ba51985
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:v2.4.3231-ba51985
          createdAt: "2022-08-15T11:53:28Z"
          description: OpenShift cluster provisioning and management at scale.
          operators.operatorframework.io/internal-objects: '["checkpoints.hive.openshift.io","clusterdeprovisions.hive.openshift.io","clusterprovisions.hive.openshift.io","clusterstates.hive.openshift.io","machinepoolnameleases.hive.openshift.io","clustersyncleases.hiveinternal.openshift.io","clustersyncs.hiveinternal.openshift.io","fakeclusterinstalls.hiveinternal.openshift.io"]'
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: ClusterPool represents a pool of clusters that should be
              kept ready to be given out to users. Clusters are removed from the pool
              once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: MachinePoolNameLease is the Schema for the MachinePoolNameLeases
              API. This resource is mostly empty as we're primarily relying on the
              name to determine if a lease is available. Note that not all cloud providers
              require the use of a lease for naming, at present this is only required
              for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * Red Hat OpenStack

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/hive-operator@sha256:9a3cb682afc66ad662045b3d8ff214203cc00be60f66f74564820f6dcf99cd69
        - quay.io/openshift-hive/hive:v2.4.3231-ba51985
        version: 2.4.3231-ba51985
      entries:
      - name: hive-operator.v2.4.3231-ba51985
        version: 2.4.3231-ba51985
      - name: hive-operator.v2.4.3227-74831db
        version: 2.4.3227-74831db
      - name: hive-operator.v2.4.3222-d68346c
        version: 2.4.3222-d68346c
      - name: hive-operator.v2.4.3206-b0714a7
        version: 2.4.3206-b0714a7
      - name: hive-operator.v2.4.3203-672cfe7
        version: 2.4.3203-672cfe7
      - name: hive-operator.v2.4.3201-8c50440
        version: 2.4.3201-8c50440
      - name: hive-operator.v2.4.3199-cce4cb9
        version: 2.4.3199-cce4cb9
      - name: hive-operator.v2.4.3197-6c9c8e4
        version: 2.4.3197-6c9c8e4
      - name: hive-operator.v2.4.3194-f82b7d8
        version: 2.4.3194-f82b7d8
      - name: hive-operator.v2.4.3192-fae0111
        version: 2.4.3192-fae0111
      - name: hive-operator.v2.4.3189-026033b
        version: 2.4.3189-026033b
      - name: hive-operator.v2.4.3180-7299056
        version: 2.4.3180-7299056
      - name: hive-operator.v1.2.3179-0756b70e6
        version: 1.2.3179-0756b70e6
      - name: hive-operator.v1.1.16
        version: 1.1.16
      - name: hive-operator.v1.1.15
        version: 1.1.15
      - name: hive-operator.v1.1.14
        version: 1.1.14
      - name: hive-operator.v1.1.13
        version: 1.1.13
      - name: hive-operator.v1.1.12
        version: 1.1.12
      - name: hive-operator.v1.1.11
        version: 1.1.11
      - name: hive-operator.v1.1.10
        version: 1.1.10
      - name: hive-operator.v1.1.9
        version: 1.1.9
      - name: hive-operator.v1.1.8
        version: 1.1.8
      - name: hive-operator.v1.1.7
        version: 1.1.7
      - name: hive-operator.v1.1.6
        version: 1.1.6
      name: ocm-2.4
    defaultChannel: alpha
    packageName: hive-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-nifi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nifi-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/nifi-operator@sha256:bc776bff99d4a9ead08cf1b688715f3f9e676e9f7747a4df121326e46eb1bf9c
          description: Stackable Operator for Apache NiFi
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/nifi-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for NifiClusterSpec via `CustomResource`
            displayName: nificlusters.nifi.stackable.tech
            kind: NifiCluster
            name: nificlusters.nifi.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache NiFi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nifi
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/nifi-operator@sha256:bc776bff99d4a9ead08cf1b688715f3f9e676e9f7747a4df121326e46eb1bf9c
        - registry.connect.redhat.com/stackable/stackable-apache-nifi-operator@sha256:66f83e489da98272e561125e19a92d9b8347fca790e413ca627211a6f487472c
        version: 25.11.0
      entries:
      - name: nifi-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-nifi-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: PingCAP
      provider-url: ""
    name: tidb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tidb-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pingcap.com/v1alpha1",
                "kind": "TidbCluster",
                "metadata": {
                  "name": "basic"
                },
                "spec": {
                  "version": "v5.4.0",
                  "timezone": "UTC",
                  "pvReclaimPolicy": "Delete",
                  "discovery": {},
                  "pd": {
                    "baseImage": "pingcap/pd",
                    "replicas": 1,
                    "requests": {
                      "storage": "1Gi"
                    },
                    "config": {}
                  },
                  "tikv": {
                    "baseImage": "pingcap/tikv",
                    "replicas": 1,
                    "requests": {
                      "storage": "1Gi"
                    },
                    "config": {
                      "storage": {
                        "reserve-space": "0MB"
                      }
                    }
                  },
                  "tidb": {
                    "baseImage": "pingcap/tidb",
                    "replicas": 1,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "config": {}
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: pingcap/tidb-operator:v1.3.1
          createdAt: 2021-2-15T07-18-39Z
          description: TiDB Operator manages TiDB clusters on Kubernetes and automates
            tasks related to operating a TiDB cluster. It makes TiDB a truly cloud-native
            database.
          repository: https://github.com/pingcap/tidb-operator
          support: KanShiori
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup
            displayName: Backup
            kind: Backup
            name: backups.pingcap.com
            version: v1alpha1
          - description: Backup Schedule
            displayName: BackupSchedule
            kind: BackupSchedule
            name: backupschedules.pingcap.com
            version: v1alpha1
          - description: DM Cluster
            displayName: DMCluster
            kind: DMCluster
            name: dmclusters.pingcap.com
            version: v1alpha1
          - description: Restore
            displayName: Restore
            kind: Restore
            name: restores.pingcap.com
            version: v1alpha1
          - description: Tidb Cluster Auto Scaler
            displayName: TidbClusterAutoScaler
            kind: TidbClusterAutoScaler
            name: tidbclusterautoscalers.pingcap.com
            version: v1alpha1
          - description: Tidb Cluster
            displayName: TidbCluster
            kind: TidbCluster
            name: tidbclusters.pingcap.com
            version: v1alpha1
          - description: Tidb Initializer
            displayName: TidbInitializer
            kind: TidbInitializer
            name: tidbinitializers.pingcap.com
            version: v1alpha1
          - description: Tidb Monitor
            displayName: TidbMonitor
            kind: TidbMonitor
            name: tidbmonitors.pingcap.com
            version: v1alpha1
          - description: Tidb NG Monitoring
            displayName: TidbNGMonitoring
            kind: TidbNGMonitoring
            name: tidbngmonitorings.pingcap.com
            version: v1alpha1
        description: |
          ## About the managed application
          TiDB ("Ti" stands for Titanium) is an open-source, distributed, NewSQL database that supports Hybrid Transactional and Analytical Processing (HTAP) workloads. It is MySQL compatible and features horizontal scalability, strong consistency, and high availability. TiDB can be deployed on-premise or in-cloud.
          ## About this Operator

          TiDB Operator manages TiDB clusters on Kubernetes and automates tasks related to operating a TiDB cluster. It makes TiDB a truly cloud-native database.

          ## Features

          * Safely scaling the TiDB cluster

          TiDB Operator empowers TiDB with horizontal scalability on the cloud.

          * Rolling update of the TiDB cluster

          Gracefully perform rolling updates for the TiDB cluster in order, achieving zero-downtime of the TiDB cluster.

          * Multi-tenant support

          Users can deploy and manage multiple TiDB clusters on a single Kubernetes cluster easily.

          * Automatic failover

          TiDB Operator automatically performs failover for your TiDB cluster when node failures occur.

          * Kubernetes package manager support

          By embracing Kubernetes package manager Helm, users can easily deploy TiDB clusters with only one command.

          * Automatically monitoring TiDB cluster at creating

          Automatically deploy Prometheus, Grafana for TiDB cluster monitoring.

          ## Quick Start
          You can follow our [Get Started](https://docs.pingcap.com/tidb-in-kubernetes/stable/get-started) guide to quickly start a testing Kubernetes cluster and play with TiDB Operator on your own machine.

          ## Documentation

          You can see our documentation at PingCAP website for more in-depth installation and instructions for production:

          - [English](https://docs.pingcap.com/tidb-in-kubernetes/stable)
          - [简体中文](https://docs.pingcap.com/zh/tidb-in-kubernetes/stable)

          All the TiDB Operator documentation is maintained in the [docs-tidb-operator repository](https://github.com/pingcap/docs-tidb-operator).

          ## Community

          Feel free to reach out if you have any questions. The maintainers of this project are reachable via:

          - [TiDB Community Slack](https://pingcap.com/tidbslack/) in the [#sig-k8s](https://tidbcommunity.slack.com/archives/CHD0HA3LZ) channel
          - [Filing an issue](https://github.com/pingcap/tidb-operator/issue) against this repo

          Pull Requests are welcome! Check the [issue tracker](https://github.com/pingcap/tidb-operator/issue) for `status/help-wanted` issues if you're unsure where to start.

          If you're planning a new feature, please file an issue or join [#sig-k8s](https://tidbcommunity.slack.com/archives/CHD0HA3LZ) channel to discuss first.
          ## Prerequisites for enabling this Operator
        displayName: TiDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TiDB
        - SQL
        - Database
        links:
        - name: GitHub
          url: https://github.com/pingcap/tidb-operator
        - name: Documentation
          url: https://docs.pingcap.com/tidb-in-kubernetes/stable
        maintainers:
        - email: zhanghailong@pingcap.com
          name: Daniel Zhang
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: PingCAP
        relatedImages:
        - quay.io/openshift-community-operators/tidb-operator@sha256:4f73b39de6129b906b5eb7bb0b7485f3da406cfad8616f81e375cc8ffcb156ed
        - pingcap/tidb-operator:v1.3.1
        version: 1.3.1
      entries:
      - name: tidb-operator.v1.3.1
        version: 1.3.1
      name: stable
    defaultChannel: stable
    packageName: tidb-operator
    provider:
      name: PingCAP
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Upbound Inc.
      provider-url: https://upbound.io
    name: universal-crossplane
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: universal-crossplane.1.5.1-up.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"pkg.crossplane.io/v1",
                "kind":"Configuration",
                "metadata":{
                  "name":"xp-getting-started-with-aws"
                },
                "spec":{
                  "package":"registry.upbound.io/xp/getting-started-with-aws:v1.2.2"
                }
              },
              {
                "apiVersion":"apiextensions.crossplane.io/v1",
                "kind":"CompositeResourceDefinition",
                "metadata":{
                  "name":"compositepostgresqlinstances.database.example.org"
                },
                "spec":{
                  "group":"database.example.org",
                  "names":{
                    "kind":"CompositePostgreSQLInstance",
                    "plural":"compositepostgresqlinstances"
                  },
                  "claimNames":{
                    "kind":"PostgreSQLInstance",
                    "plural":"postgresqlinstances"
                  },
                  "connectionSecretKeys":[
                      "username",
                      "password",
                      "endpoint",
                      "port"
                  ],
                  "versions":[
                    {
                      "name":"v1alpha1",
                      "served":true,
                      "referenceable":true,
                      "schema":{
                        "openAPIV3Schema":{
                          "type":"object",
                          "properties":{
                            "spec":{
                              "type":"object",
                              "properties":{
                                "parameters":{
                                  "type":"object",
                                  "properties":{
                                    "storageGB":{
                                      "type":"integer"
                                    }
                                  },
                                  "required":[
                                      "storageGB"
                                  ]
                                }
                              },
                              "required":[
                                  "parameters"
                              ]
                            }
                          }
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion":"apiextensions.crossplane.io/v1",
                "kind":"Composition",
                "metadata":{
                  "name":"compositepostgresqlinstances.aws.database.example.org",
                  "labels":{
                    "provider":"aws",
                    "guide":"quickstart",
                    "vpc":"default"
                  }
                },
                "spec":{
                  "writeConnectionSecretsToNamespace":"crossplane-system",
                  "compositeTypeRef":{
                    "apiVersion":"database.example.org/v1alpha1",
                    "kind":"CompositePostgreSQLInstance"
                  },
                  "resources":[
                    {
                      "name":"rdsinstance",
                      "base":{
                        "apiVersion":"database.aws.crossplane.io/v1beta1",
                        "kind":"RDSInstance",
                        "spec":{
                          "forProvider":{
                            "region":"us-east-1",
                            "dbInstanceClass":"db.t2.small",
                            "masterUsername":"masteruser",
                            "engine":"postgres",
                            "engineVersion":"9.6",
                            "skipFinalSnapshotBeforeDeletion":true,
                            "publiclyAccessible":true
                          },
                          "writeConnectionSecretToRef":{
                            "namespace":"crossplane-system"
                          }
                        }
                      },
                      "patches":[
                        {
                          "fromFieldPath":"metadata.uid",
                          "toFieldPath":"spec.writeConnectionSecretToRef.name",
                          "transforms":[
                            {
                              "type":"string",
                              "string":{
                                "fmt":"%s-postgresql"
                              }
                            }
                          ]
                        },
                        {
                          "fromFieldPath":"spec.parameters.storageGB",
                          "toFieldPath":"spec.forProvider.allocatedStorage"
                        }
                      ],
                      "connectionDetails":[
                        {
                          "fromConnectionSecretKey":"username"
                        },
                        {
                          "fromConnectionSecretKey":"password"
                        },
                        {
                          "fromConnectionSecretKey":"endpoint"
                        },
                        {
                          "fromConnectionSecretKey":"port"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion":"pkg.crossplane.io/v1",
                "kind":"Provider",
                "metadata":{
                  "name":"provider-aws"
                },
                "spec":{
                  "package":"crossplane/provider-aws:master"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Application Runtime, Cloud Provider, Database, Integration &
            Delivery, Networking, Storage
          com.redhat.component: universal-crossplane
          com.redhat.delivery.backport: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.6
          containerImage: upbound/uxp-bootstrapper
          createdAt: 2021-05-18T00:00:00+0000
          description: Upbound Universal Crossplane (UXP) is Upbound's official enterprise-grade
            distribution of Crossplane.
          io.k8s.display-name: universal-crossplane
          io.openshift.tags: uxp,crossplane,upbound
          maintainer: Upbound Inc. <info@upbound.io>
          name: universal-crossplane
          ocs.tags: v4.6
          operatorframework.io/initialization-resource: |
            apiVersion: v1
            kind: Secret
            metadata:
              name: upbound-control-plane-token
              namespace: upbound-system
            type: Opaque
            data:
              token: "Output of `up cloud controlplane attach | base64` command"
          operatorframework.io/suggested-namespace: upbound-system
          operators.operatorframework.io.bundle.channel.default.v1: stable
          operators.operatorframework.io.bundle.channels.v1: stable
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: universal-crossplane
          operators.operatorframework.io/internal-objects: '["locks.pkg.crossplane.io"]'
          repository: https://github.com/upbound/universal-crossplane
          summary: Upbound Universal Crossplane (UXP) is Upbound's official enterprise-grade
            distribution of Crossplane.
          support: Upbound Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: CompositeResourceDefinition
            kind: CompositeResourceDefinition
            name: compositeresourcedefinitions.apiextensions.crossplane.io
            version: v1
          - displayName: CompositionRevision
            kind: CompositionRevision
            name: compositionrevisions.apiextensions.crossplane.io
            version: v1alpha1
          - displayName: Composition
            kind: Composition
            name: compositions.apiextensions.crossplane.io
            version: v1
          - displayName: ConfigurationRevision
            kind: ConfigurationRevision
            name: configurationrevisions.pkg.crossplane.io
            version: v1
          - displayName: Configuration
            kind: Configuration
            name: configurations.pkg.crossplane.io
            version: v1
          - displayName: ControllerConfig
            kind: ControllerConfig
            name: controllerconfigs.pkg.crossplane.io
            version: v1alpha1
          - displayName: Lock
            kind: Lock
            name: locks.pkg.crossplane.io
            version: v1alpha1
          - displayName: ProviderRevision
            kind: ProviderRevision
            name: providerrevisions.pkg.crossplane.io
            version: v1
          - displayName: Provider
            kind: Provider
            name: providers.pkg.crossplane.io
            version: v1
        description: |
          ## Overview

          Upbound Universal Crossplane (UXP) is [Upbound's][upbound] official
          enterprise-grade distribution of [Crossplane][crossplane]. It's fully compatible
          with upstream Crossplane, open source, capable of connecting to Upbound Cloud
          for real-time dashboard visibility, and maintained by Upbound. It's the easiest
          way for both individual community members and enterprises to build their
          production control planes.

          ## Quick Start

          1. Install the [Upbound CLI][upbound-cli].
              ```console
              curl -sL https://cli.upbound.io | sh
              # Install with Homebrew
              brew install upbound/tap/up
              ```

          2. [Create an Upbound account][create-account] for a free dashboard for UXP.

          3. Connect UXP to Upbound Cloud.
              ```console
              # The name of your new UXP control plane.
              UXP_NAME=mycrossplane

              up cloud login
              up cloud controlplane attach ${UXP_NAME} | up uxp connect -
              ```

          4. Manage your UXP control plane by [signing in][login] to your Upbound account.

          ## Additional Resources

          - The [UXP Documentation][uxp-documentation] provides additional information
            about UXP and resources for developers, like examples.
          - The [developer guide][developer-guide] describes how to build and run UXP
            locally from source.
          - [UXP Slack][uxp-slack] is where you can go to get all of your UXP questions
            answered.

          [upbound]: https://upbound.io
          [crossplane]: https://crossplane.io/
          [upbound-cli]: https://github.com/upbound/up
          [create-account]: https://cloud.upbound.io/register
          [login]: https://cloud.upbound.io/login
          [uxp-documentation]: https://cloud.upbound.io/docs/uxp
          [developer-guide]: https://github.com/upbound/universal-crossplane/blob/main/docs/developer-guide.md
          [uxp-slack]: https://crossplane.slack.com/archives/upbound
        displayName: Upbound Universal Crossplane (UXP)
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - infrastructure
        - services
        - application
        - database
        - cache
        - bucket
        - infra
        - app
        - ops
        - oam
        - gcp
        - azure
        - aws
        - alibaba
        - cloudsql
        - rds
        - s3
        - azuredatabase
        - asparadb
        - gke
        - aks
        - eks
        links:
        - name: GitHub
          url: https://github.com/upbound/universal-crossplane
        - name: Website
          url: https://upbound.io
        - name: Twitter
          url: https://twitter.com/upbound_io
        - name: Slack
          url: https://slack.crossplane.io/
        maintainers:
        - email: info@upbound.io
          name: Upbound Inc.
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Upbound Inc.
          url: https://upbound.io
        relatedImages:
        - upbound/crossplane:v1.5.1-up.1
        - upbound/uxp-bootstrapper:v1.5.1-up.1
        - upbound/xgql:v0.1.5
        - quay.io/openshift-community-operators/universal-crossplane@sha256:b3104adb471083de96d49fa53f663dcf0e3e7ff5e3573bb1422aa6045277bea0
        version: 1.5.1-up.1
      entries:
      - name: universal-crossplane.1.5.1-up.1
        version: 1.5.1-up.1
      - name: universal-crossplane.1.4.3-up.1
        version: 1.4.3-up.1
      - name: universal-crossplane.1.3.3-up.1
        version: 1.3.3-up.1
      - name: universal-crossplane.1.3.1-up.1
        version: 1.3.1-up.1
      - name: universal-crossplane.1.2.3-up.1
        version: 1.2.3-up.1
      - name: universal-crossplane.1.2.2-up.1
        version: 1.2.2-up.1
      - name: universal-crossplane.1.2.1-up.4
        version: 1.2.1-up.4
      - name: universal-crossplane.1.2.1-up.3
        version: 1.2.1-up.3
      name: stable
    defaultChannel: stable
    packageName: universal-crossplane
    provider:
      name: Upbound Inc.
      url: https://upbound.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: oadp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: oadp-operator.v0.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "Velero",
                "metadata": {
                  "name": "example-velero",
                  "namespace":"openshift-adp"
                },
                "spec": {
                  "backupStorageLocations": [
                    {
                      "config": {
                        "profile": "default",
                        "region": "us-east-1"
                      },
                      "name": "default",
                      "objectStorage": {
                        "bucket": "myBucket",
                        "prefix": "velero"
                      },
                      "provider": "aws"
                    }
                  ],
                  "defaultVeleroPlugins": [
                    "aws",
                    "csi",
                    "openshift"
                  ],
                  "veleroFeatureFlags": [
                    "EnableCSI"
                  ],
                  "enableRestic": true,
                  "volumeSnapshotLocations": [
                    {
                      "config": {
                        "profile": "default",
                        "region": "us-west-1"
                      },
                      "name": "default",
                      "provider": "aws"
                    }
                  ]
                }
               },
                {
                  "apiVersion": "velero.io/v1",
                  "kind": "Backup",
                  "metadata": {
                    "name": "backup",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "BackupStorageLocation",
                  "metadata": {
                    "name": "backupstoragelocation",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "DeleteBackupRequest",
                  "metadata": {
                    "name": "deletebackuprequest",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "DownloadRequest",
                  "metadata": {
                    "name": "downloadrequest",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "PodVolumeBackup",
                  "metadata": {
                    "name": "podvolumebackup",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "PodVolumeRestore",
                  "metadata": {
                    "name": "podvolumerestore",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "ResticRepository",
                  "metadata": {
                    "name": "resticrepository",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "Restore",
                  "metadata": {
                    "name": "restore",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "Schedule",
                  "metadata": {
                    "name": "schedule",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "ServerStatusRequest",
                  "metadata": {
                    "name": "serverstatusrequest",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "VolumeSnapshotLocation",
                  "metadata": {
                    "name": "volumesnapshotlocation",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/konveyor/oadp-operator@sha256:ecb8534fbc245e890b9c7766946d01e1a8b4ce9be359c4ada4c95fd908b679b3
          createdAt: "2020-09-08T12:21:00Z"
          description: |-
            OADP (OpenShift API for Data Protection) operator sets up and installs
            Velero on the OpenShift platform.
          olm.skipRange: '>=0.0.0 <0.4.2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-adp
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          repository: https://github.com/openshift/oadp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Velero is a tool to safely backup and restore, perform disaster
              recovery and migrate Kubernetes cluster resources and persistent volumes.
            displayName: Velero
            kind: Velero
            name: veleroes.oadp.openshift.io
            version: v1alpha1
          - description: BackupStorageLocation represents an object storage location
              (Such as Amazon S3 Bucket) where Velero stores backup objects.
            displayName: BackupStorageLocation
            kind: BackupStorageLocation
            name: backupstoragelocations.velero.io
            version: v1
          - description: Backup is a Velero resource that respresents the capture
              of Kubernetes cluster state at a point in time (API objects and associated
              volume state).
            displayName: Backup
            kind: Backup
            name: backups.velero.io
            version: v1
          - description: DeleteBackupRequest is a request to delete one or more backups.
            displayName: DeleteBackupRequest
            kind: DeleteBackupRequest
            name: deletebackuprequests.velero.io
            version: v1
          - description: DownloadRequest is a request to download an artifact from
              object storage such as a backup log file.
            displayName: DownloadRequest
            kind: DownloadRequest
            name: downloadrequests.velero.io
            version: v1
          - description: A velero pod volume backup is a restic backup of persistent
              volumes attached to a running pod.
            displayName: PodVolumeBackup
            kind: PodVolumeBackup
            name: podvolumebackups.velero.io
            version: v1
          - description: A velero pod volume restore is a restic restore of persistent
              volumes attached to a running pod.
            displayName: PodVolumeRestore
            kind: PodVolumeRestore
            name: podvolumerestores.velero.io
            version: v1
          - description: A restic repository is an indicator of a connection from
              the restic server to the backupstoragelocation.
            displayName: ResticRepository
            kind: ResticRepository
            name: resticrepositories.velero.io
            version: v1
          - description: Restore is a Velero resource that represents the application
              of resources from a Velero backup to a target Kubernetes cluster.
            displayName: Restore
            kind: Restore
            name: restores.velero.io
            version: v1
          - description: Schedule is a Velero resource that represents a pre-scheduled
              or periodic Backup that should be run.
            displayName: Schedule
            kind: Schedule
            name: schedules.velero.io
            version: v1
          - description: ServerStatusRequest is a request to access current status
              information about the Velero server.
            displayName: ServerStatusRequest
            kind: ServerStatusRequest
            name: serverstatusrequests.velero.io
            version: v1
          - description: VolumeSnapshotLocation is a location where Velero stores
              volume snapshots.
            displayName: VolumeSnapshotLocation
            kind: VolumeSnapshotLocation
            name: volumesnapshotlocations.velero.io
            version: v1
        description: OADP (OpenShift API for Data Protection) operator sets up and
          installs Velero on the OpenShift platform.
        displayName: OADP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - velero
        - openshift
        - oadp
        links:
        - name: OADP Operator
          url: https://oadp.konveyor.io/
        maintainers:
        - email: dymurray@redhat.com
          name: Dylan Murray
        - email: spampatt@redhat.com
          name: Shubham Dilip Pampattiwar
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/konveyor/velero-plugin-for-microsoft-azure@sha256:62a344e5cf196e55dae92e537648987d758ccc75985bc45e9be6d0646a9e64d0
        - quay.io/konveyor/velero-restic-restore-helper@sha256:c4d12829e42cabe70b662a659875900677dfb415f912f931c3bf4c09a26aed5b
        - quay.io/openshift-community-operators/oadp-operator@sha256:f8c5c6e59f13db8847080ea6d964da6e50e56f7d373bcc4e4278b1a8a80395e4
        - quay.io/konveyor/openshift-velero-plugin@sha256:aec8b4fc66cfcebd5a35ce99d8c985453ebf25c11453d30256089a8b425990b5
        - quay.io/konveyor/velero-plugin-for-gcp@sha256:3300458b1d6c1514dca7d24353ad03bd92db396b2a29f7d3522563160a5f5219
        - quay.io/konveyor/velero@sha256:e7865cc707664eb6ee767e77ccd933420604c2562736b53e16c8043a51df9d86
        - quay.io/konveyor/registry@sha256:b74ab3278b79eb89f99b6970c6aa0f5306221a8495b5496faad6cab2f74ff2cd
        - quay.io/konveyor/velero-plugin-for-aws@sha256:2197c6fef32910747526d33c1462b75cb7940aeace65791d0a5ddaa038480e52
        - quay.io/konveyor/oadp-operator@sha256:ecb8534fbc245e890b9c7766946d01e1a8b4ce9be359c4ada4c95fd908b679b3
        - quay.io/konveyor/velero-plugin-for-csi@sha256:5c2261effc902d8baa16e38265f9ad1fbe5284a3e6abd2bbc97761c161fa92cf
        version: 0.4.2
      entries:
      - name: oadp-operator.v0.4.2
        version: 0.4.2
      - name: oadp-operator.v0.4.1
        version: 0.4.1
      - name: oadp-operator.v0.4.0
        version: 0.4.0
      - name: oadp-operator.v0.3.0
        version: 0.3.0
      name: beta
    - currentCSV: oadp-operator.v0.5.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "DataProtectionApplication",
                "metadata": {
                  "name": "velero-sample"
                },
                "spec": {
                  "backupLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-east-1"
                        },
                        "credential": {
                          "key": "cloud",
                          "name": "cloud-credentials"
                        },
                        "default": true,
                        "objectStorage": {
                          "bucket": "my-bucket-name",
                          "prefix": "velero"
                        },
                        "provider": "aws"
                      }
                    }
                  ],
                  "configuration": {
                    "restic": {
                      "enable": true
                    },
                    "velero": {
                      "defaultPlugins": [
                        "openshift",
                        "aws"
                      ]
                    }
                  },
                  "snapshotLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-west-2"
                        },
                        "provider": "aws"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "BackupStorageLocation",
                "metadata": {
                  "name": "backupstoragelocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DeleteBackupRequest",
                "metadata": {
                  "name": "deletebackuprequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DownloadRequest",
                "metadata": {
                  "name": "downloadrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeBackup",
                "metadata": {
                  "name": "podvolumebackup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeRestore",
                "metadata": {
                  "name": "podvolumerestore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "ResticRepository",
                "metadata": {
                  "name": "resticrepository",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Schedule",
                "metadata": {
                  "name": "schedule",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "ServerStatusRequest",
                "metadata": {
                  "name": "serverstatusrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "VolumeSnapshotLocation",
                "metadata": {
                  "name": "volumesnapshotlocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/konveyor/oadp-operator@sha256:90609044d52173619ea1e63ddef0ef3e7c1c939ac737b64bd427cbed5374dd27
          createdAt: "2020-09-08T12:21:00Z"
          description: |-
            OADP (OpenShift API for Data Protection) operator sets up and installs
            Velero on the OpenShift platform.
          olm.skipRange: '>=0.0.0 <0.5.6'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-adp
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/oadp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is a Velero resource that respresents the capture
              of Kubernetes cluster state at a point in time (API objects and associated
              volume state).
            displayName: Backup
            kind: Backup
            name: backups.velero.io
            version: v1
          - description: BackupStorageLocation represents an object storage location
              (Such as Amazon S3 Bucket) where Velero stores backup objects.
            displayName: BackupStorageLocation
            kind: BackupStorageLocation
            name: backupstoragelocations.velero.io
            version: v1
          - kind: CloudStorage
            name: cloudstorages.oadp.openshift.io
            version: v1alpha1
          - description: DataProtectionApplication represents configuration to install
              a data protection application to safely backup and restore, perform
              disaster recovery and migrate Kubernetes cluster resources and persistent
              volumes.
            displayName: DataProtectionApplication
            kind: DataProtectionApplication
            name: dataprotectionapplications.oadp.openshift.io
            version: v1alpha1
          - description: DeleteBackupRequest is a request to delete one or more backups.
            displayName: DeleteBackupRequest
            kind: DeleteBackupRequest
            name: deletebackuprequests.velero.io
            version: v1
          - description: DownloadRequest is a request to download an artifact from
              object storage such as a backup log file.
            displayName: DownloadRequest
            kind: DownloadRequest
            name: downloadrequests.velero.io
            version: v1
          - description: A velero pod volume backup is a restic backup of persistent
              volumes attached to a running pod.
            displayName: PodVolumeBackup
            kind: PodVolumeBackup
            name: podvolumebackups.velero.io
            version: v1
          - description: A velero pod volume restore is a restic restore of persistent
              volumes attached to a running pod.
            displayName: PodVolumeRestore
            kind: PodVolumeRestore
            name: podvolumerestores.velero.io
            version: v1
          - description: A restic repository is an indicator of a connection from
              the restic server to the backupstoragelocation.
            displayName: ResticRepository
            kind: ResticRepository
            name: resticrepositories.velero.io
            version: v1
          - description: Restore is a Velero resource that represents the application
              of resources from a Velero backup to a target Kubernetes cluster.
            displayName: Restore
            kind: Restore
            name: restores.velero.io
            version: v1
          - description: Schedule is a Velero resource that represents a pre-scheduled
              or periodic Backup that should be run.
            displayName: Schedule
            kind: Schedule
            name: schedules.velero.io
            version: v1
          - description: ServerStatusRequest is a request to access current status
              information about the Velero server.
            displayName: ServerStatusRequest
            kind: ServerStatusRequest
            name: serverstatusrequests.velero.io
            version: v1
          - description: VolumeSnapshotLocation is a location where Velero stores
              volume snapshots.
            displayName: VolumeSnapshotLocation
            kind: VolumeSnapshotLocation
            name: volumesnapshotlocations.velero.io
            version: v1
        description: OADP (OpenShift API for Data Protection) operator sets up and
          installs Data Protection Applications on the OpenShift platform.
        displayName: OADP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - velero
        - openshift
        - oadp
        links:
        - name: OADP Operator
          url: https://oadp.konveyor.io/
        maintainers:
        - email: dymurray@redhat.com
          name: Dylan Murray
        - email: spampatt@redhat.com
          name: Shubham Dilip Pampattiwar
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/konveyor/velero@sha256:0ea5336dcbf0a1fab561697b24da01a0e5b533ee23553fbfd5f8e002f5a31c3e
        - quay.io/konveyor/velero-restic-restore-helper@sha256:c16248d027c09cd5b7360ae38484df88ca1cc01f9e470e3eade95076ee1a6b84
        - quay.io/konveyor/registry@sha256:1be970879206258335357e3cf630138c24b8a5ccab35aae05eccb260e5e8ffb4
        - quay.io/konveyor/velero-plugin-for-csi@sha256:8c36ccfd294dafc415a7f113770cbbd66dbf6ecf8fef3bc4e73adc9878c606b0
        - quay.io/konveyor/velero-plugin-for-microsoft-azure@sha256:2d0089cbe715b482fb42e1acd9add70b975a8575636d8b143e6f90cef317ea13
        - quay.io/openshift-community-operators/oadp-operator@sha256:b7b4d340157513da2ebef6bc7bc262967d0e825e2baa1f2bc2ab2e170457e015
        - quay.io/konveyor/oadp-operator@sha256:90609044d52173619ea1e63ddef0ef3e7c1c939ac737b64bd427cbed5374dd27
        - quay.io/konveyor/openshift-velero-plugin@sha256:221ab0bcd1d95fc166ef7319d187e196b59d2fbf9eefd29d91bd6435d45b5c3c
        - quay.io/konveyor/velero-plugin-for-aws@sha256:1e8bc27d6b60000e1406085d582910cb530af3fb901ef9bc780628df6c766288
        - quay.io/konveyor/velero-plugin-for-gcp@sha256:ee463ed2a8019c560961b118f8a87b587ed302f24fd25480c5d4ddad2557e92f
        version: 0.5.6
      entries:
      - name: oadp-operator.v0.5.6
        version: 0.5.6
      - name: oadp-operator.v0.5.5
        version: 0.5.5
      - name: oadp-operator.v0.5.4
        version: 0.5.4
      - name: oadp-operator.v0.5.3
        version: 0.5.3
      - name: oadp-operator.v0.5.2
        version: 0.5.2
      - name: oadp-operator.v0.5.1
        version: 0.5.1
      - name: oadp-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: oadp-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: quay-bridge-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: quay-bridge-operator.v3.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "my-quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecretName": "<NAMESPACE>/<SECRET>",
                  "quayHostname": "https://<QUAY_URL>",
                  "insecureRegistry": false,
                  "whitelistNamespaces": ["default"]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:501fe9b003b5066b3936def0ef4de05abd1a12e795e718d6c9a62d2c6c804c2e
          createdAt: 2021-11-02 11:11 UTC
          description: Enhance OCP using Red Hat Quay container registry
          repository: https://github.com/redhat-cop/quay-openshift-registry-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a connected Quay instance.
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.redhatcop.redhat.io
            version: v1alpha1
        description: "## Overview\n\nThe OpenShift Container Platform contains an
          in cluster image registry for pushing and pulling images that either produced
          within the cluster or are references from external sources. Quay is a highly
          available, enterprise grade image registry with enhanced role based access
          control (RBAC) features. The goal of this operator is to support replicating
          the features found within OpenShift intgrated image registry with Quay.\n\n##
          Functionality\n\nThe following capabilities are enabled through this operator:\n\n*
          Synchronization of OpenShift namespaces as Quay organizations\n    * Creation
          of Robot accounts for each default namespace service account\n    * Creation
          of Secrets for each created Robot Account\n        * Associate Robot Secret
          to Service Account as Mountable and Image Pull Secret\n    * Synchronization
          of OpenShift ImageStreams as Quay Repositories\n* Automatically rewrite
          new Builds making use of ImageStreams to output to Quay\n* Automatically
          import ImageStream tag once build completes\n\n## Prerequisites\n\nThe following
          requirements must be satisfied prior to setting and configuring the integration
          between OpenShift and Quay:\n\n* A Red Hat Quay environment with a user
          with superuser permissions\n* A Red Hat OpenShift Container Platform environment
          (at least version 4.0) with cluster-admin permissions on an OpenShift cluster
          \n*\tOpenShift Command Line tool (CLI)\n\n## Setup and Configuration\n\nThe
          setup process involves steps within both Quay and OpenShift as described
          below:\n\n### Quay Setup\n\nThe integration between OpenShift and Quay makes
          extensive use of the Quay RESTFul API. To allow for other methods aside
          from user credentials to be used for authenticating against the API, an
          application is required to be created. When an application is created, an
          OAuth token is generated which can be used by the operator in OpenShift.
          Applications are created within a Quay organization. While an existing organization
          can be utilized, it is recommended that a dedicated organization be used.\n\n1.\tLogin
          to Quay as a user with superuser access and select the organization for
          which the external application will be configured within.\n2.\tOn the left
          hand side of the page, select **Applications**\n3.\tCreate a new application
          by selecting the **Create New Application** button and entering a name for
          the application\n4.\tAfter the new application has been created, select
          the application that was created\n5.\tOn the lefthand navigation bar, select
          the **Generate Token** button to create a new OAuth2 token\n6.\tSelect all
          of the checkboxes to grant the necessary access that is needed for the integration\n7.\tReview
          the permissions that will be assigned and then select the **Authorize Application**
          button\n8.\tTake note of the generated Access Token as it will be needed
          in the following section\n\n### OpenShift Setup\n\nTo complete the process
          to begin to integrate OpenShift and Quay, several steps are required. Before
          beginning, ensure that you have the OpenShift Command Line tool installed
          and that you are logged into OpenShift as a cluster administrator. \n\n####
          Create A Secret for the Quay OAuth Token\n\nThe Operator will use the previously
          obtained Access Token to communicate with Quay. Store this token within
          OpenShift as a secret.\n\nExecute the following command to create a secret
          called `quay-integration` with a key called `token` containing the access
          token:\n\n```\n$ oc create secret generic quay-integration --from-literal=token=<access_token>\n```\n\nThis
          token will be referenced in the final section.\n\n#### MutatingWebhookConfiguration
          Support\n\nSupport for dynamic interception of API requests that are performed
          as part of OpenShift’s typical build process is facilitated through a [MutatingWebhookConfiguration](https://docs.openshift.com/container-platform/3.11/architecture/additional_concepts/dynamic_admission_controllers.html).
          A MutatingWebhookConfiguration allows for invoking an API running within
          a project on OpenShift when certain API requests are received. In particular,
          to support Quay’s integration with OpenShift, any new Build requests should
          be intercepted so that the output can be modified to target Quay instead
          of OpenShift’s integrated registry. \n\nKubernetes requires that the webhook
          endpoint is secured via SSL using a certificate that makes use of the certificate
          authority for the cluster. Fortunately, OpenShift provides support for generating
          a certificate signed by the cluster. A script is available in the documentation
          called `webhook-create-signed-cert.sh` that automates the process for requesting
          a new certificate.\n\nFirst, create a `Service` for the Operator's webhook
          endpoint:\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  labels:\n
          \   name: quay-bridge-operator\n  name: quay-bridge-operator\n  namespace:
          openshift-operators\nspec:\n  ports:\n    - name: https\n      port: 443\n
          \     protocol: TCP\n      targetPort: 8443\n  selector:\n    name: quay-bridge-operator\n
          \ sessionAffinity: None\n  type: ClusterIP\n```\n\nExecute the following
          command to request the certificate:\n\n```\n./webhook-create-signed-cert.sh
          --namespace openshift-operators --secret quay-bridge-operator-webhook-certs
          --service quay-bridge-operator\n```\n\nThe result will place the newly created
          private key and certificate within a secret within the secret specified.
          The secret will be mounted into the appropriate located within the operator
          as declared in the Deployment of the Operator. \n\nOnce the secret has been
          created, focus can shift to the `MutatingWebhookConfiguration` (see below).
          The majority of the content should be in place to apply to the cluster.
          The one section that requires configuration is the caBundle property. This
          refers to the Certificate Authority (CA) for the OpenShift environment.
          The OpenShift CA is available as a _ConfigMap_ within the `kube-system`
          namespace.\n\nExecute the following command to retrieve the CA and format
          the result as a single line so that it can be entered into the MutatingWebhookConfiguration
          resource:\n\n```\noc get configmap -n kube-system extension-apiserver-authentication
          -o=jsonpath='{.data.client-ca-file}' | base64 | tr -d '\\n'\n```\n\nReplace
          the `${CA_BUNDLE}` variable in the following `MutatingWebhookConfiguration`
          YAML and create it:\n\n```yaml\napiVersion: admissionregistration.k8s.io/v1\nkind:
          MutatingWebhookConfiguration \nmetadata:\n  name: quay-bridge-operator\nwebhooks:\n
          \ - name: quayintegration.redhatcop.redhat.io\n    clientConfig: \n      service:\n
          \       namespace: openshift-operators\n        name: quay-bridge-operator\n
          \       path: \"/admissionwebhook\"\n      caBundle: \"${CA_BUNDLE}\"\n
          \   rules: \n    - operations:  [ \"CREATE\" ]\n      apiGroups: [ \"build.openshift.io\"
          ]\n      apiVersions: [\"v1\" ]\n      resources: [ \"builds\" ]\n    failurePolicy:
          Fail\n```\n\n_Note: Until the operator is running, new requests for builds
          will fail since the webserver the MutatingWebhookConfiguration invokes is
          not available and a proper is response is required in order for the object
          to be persisted in etcd._\n\n#### Create the QuayIntegration Custom Resource\n\nFinally,
          to complete the integration between OpenShift and Quay, a `QuayIntegration`
          custom resource needs to be created.\n\nThe following is an example of a
          basic definition of a `QuayIntegration` resource associated from the associated
          CRD.\n\n```\napiVersion: redhatcop.redhat.io/v1alpha1\nkind: QuayIntegration\nmetadata:\n
          \ name: example-quayintegration\nspec:\n  clusterID: openshift\n  credentialsSecretName:
          <NAMESPACE>/<SECRET>\n  quayHostname: https://<QUAY_URL>\n```\n\nThe _clusterID_
          is a value which should be unique across the entire ecosystem. This value
          is optional and defaults to `openshift`.\n\nThe _credentialsSecretName_
          is a NamespacedName value of the secret containing the token that was previously
          created.\n\nNote: If Quay is using self signed certificates, the property
          `insecureRegistry: true`\n\nOrganizations within Quay should be created
          for the related namespaces in OpenShift."
        displayName: Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Source Code
          url: https://github.com/redhat-cop/quay-openshift-registry-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:4478b8a78bdde23e0d40476f8ad9e4bf0628fba7603a390e8de7e6a319abc1ec
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:501fe9b003b5066b3936def0ef4de05abd1a12e795e718d6c9a62d2c6c804c2e
        version: 3.4.7
      entries:
      - name: quay-bridge-operator.v3.4.7
        version: 3.4.7
      name: quay-v3.4
    - currentCSV: quay-bridge-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "my-quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecretName": "<NAMESPACE>/<SECRET>",
                  "quayHostname": "https://<QUAY_URL>",
                  "insecureRegistry": false,
                  "whitelistNamespaces": ["default"]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9149df5ffc83dce6593072b7f72805e07e700b84527e45b4b7486b9c38f70731
          createdAt: 2021-09-15 23:09 UTC
          description: Enhance OCP using Red Hat Quay container registry
          olm.skipRange: '>=3.4.x <3.5.7'
          repository: https://github.com/redhat-cop/quay-openshift-registry-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a connected Quay instance.
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.redhatcop.redhat.io
            version: v1alpha1
        description: "## Overview\n\nThe OpenShift Container Platform contains an
          in cluster image registry for pushing and pulling images that either produced
          within the cluster or are references from external sources. Quay is a highly
          available, enterprise grade image registry with enhanced role based access
          control (RBAC) features. The goal of this operator is to support replicating
          the features found within OpenShift intgrated image registry with Quay.\n\n##
          Functionality\n\nThe following capabilities are enabled through this operator:\n\n*
          Synchronization of OpenShift namespaces as Quay organizations\n    * Creation
          of Robot accounts for each default namespace service account\n    * Creation
          of Secrets for each created Robot Account\n        * Associate Robot Secret
          to Service Account as Mountable and Image Pull Secret\n    * Synchronization
          of OpenShift ImageStreams as Quay Repositories\n* Automatically rewrite
          new Builds making use of ImageStreams to output to Quay\n* Automatically
          import ImageStream tag once build completes\n\n## Prerequisites\n\nThe following
          requirements must be satisfied prior to setting and configuring the integration
          between OpenShift and Quay:\n\n* A Red Hat Quay environment with a user
          with superuser permissions\n* A Red Hat OpenShift Container Platform environment
          (at least version 4.0) with cluster-admin permissions on an OpenShift cluster
          \n*\tOpenShift Command Line tool (CLI)\n\n## Setup and Configuration\n\nThe
          setup process involves steps within both Quay and OpenShift as described
          below:\n\n### Quay Setup\n\nThe integration between OpenShift and Quay makes
          extensive use of the Quay RESTFul API. To allow for other methods aside
          from user credentials to be used for authenticating against the API, an
          application is required to be created. When an application is created, an
          OAuth token is generated which can be used by the operator in OpenShift.
          Applications are created within a Quay organization. While an existing organization
          can be utilized, it is recommended that a dedicated organization be used.\n\n1.\tLogin
          to Quay as a user with superuser access and select the organization for
          which the external application will be configured within.\n2.\tOn the left
          hand side of the page, select **Applications**\n3.\tCreate a new application
          by selecting the **Create New Application** button and entering a name for
          the application\n4.\tAfter the new application has been created, select
          the application that was created\n5.\tOn the lefthand navigation bar, select
          the **Generate Token** button to create a new OAuth2 token\n6.\tSelect all
          of the checkboxes to grant the necessary access that is needed for the integration\n7.\tReview
          the permissions that will be assigned and then select the **Authorize Application**
          button\n8.\tTake note of the generated Access Token as it will be needed
          in the following section\n\n### OpenShift Setup\n\nTo complete the process
          to begin to integrate OpenShift and Quay, several steps are required. Before
          beginning, ensure that you have the OpenShift Command Line tool installed
          and that you are logged into OpenShift as a cluster administrator. \n\n####
          Create A Secret for the Quay OAuth Token\n\nThe Operator will use the previously
          obtained Access Token to communicate with Quay. Store this token within
          OpenShift as a secret.\n\nExecute the following command to create a secret
          called `quay-integration` with a key called `token` containing the access
          token:\n\n```\n$ oc create secret generic quay-integration --from-literal=token=<access_token>\n```\n\nThis
          token will be referenced in the final section.\n\n#### MutatingWebhookConfiguration
          Support\n\nSupport for dynamic interception of API requests that are performed
          as part of OpenShift’s typical build process is facilitated through a [MutatingWebhookConfiguration](https://docs.openshift.com/container-platform/3.11/architecture/additional_concepts/dynamic_admission_controllers.html).
          A MutatingWebhookConfiguration allows for invoking an API running within
          a project on OpenShift when certain API requests are received. In particular,
          to support Quay’s integration with OpenShift, any new Build requests should
          be intercepted so that the output can be modified to target Quay instead
          of OpenShift’s integrated registry. \n\nKubernetes requires that the webhook
          endpoint is secured via SSL using a certificate that makes use of the certificate
          authority for the cluster. Fortunately, OpenShift provides support for generating
          a certificate signed by the cluster. A script is available in the documentation
          called `webhook-create-signed-cert.sh` that automates the process for requesting
          a new certificate.\n\nFirst, create a `Service` for the Operator's webhook
          endpoint:\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  labels:\n
          \   name: quay-bridge-operator\n  name: quay-bridge-operator\n  namespace:
          openshift-operators\nspec:\n  ports:\n    - name: https\n      port: 443\n
          \     protocol: TCP\n      targetPort: 8443\n  selector:\n    name: quay-bridge-operator\n
          \ sessionAffinity: None\n  type: ClusterIP\n```\n\nExecute the following
          command to request the certificate:\n\n```\n./webhook-create-signed-cert.sh
          --namespace openshift-operators --secret quay-bridge-operator-webhook-certs
          --service quay-bridge-operator\n```\n\nThe result will place the newly created
          private key and certificate within a secret within the secret specified.
          The secret will be mounted into the appropriate located within the operator
          as declared in the Deployment of the Operator. \n\nOnce the secret has been
          created, focus can shift to the `MutatingWebhookConfiguration` (see below).
          The majority of the content should be in place to apply to the cluster.
          The one section that requires configuration is the caBundle property. This
          refers to the Certificate Authority (CA) for the OpenShift environment.
          The OpenShift CA is available as a _ConfigMap_ within the `kube-system`
          namespace.\n\nExecute the following command to retrieve the CA and format
          the result as a single line so that it can be entered into the MutatingWebhookConfiguration
          resource:\n\n```\noc get configmap -n kube-system extension-apiserver-authentication
          -o=jsonpath='{.data.client-ca-file}' | base64 | tr -d '\\n'\n```\n\nReplace
          the `${CA_BUNDLE}` variable in the following `MutatingWebhookConfiguration`
          YAML and create it:\n\n```yaml\napiVersion: admissionregistration.k8s.io/v1\nkind:
          MutatingWebhookConfiguration \nmetadata:\n  name: quay-bridge-operator\nwebhooks:\n
          \ - name: quayintegration.redhatcop.redhat.io\n    clientConfig: \n      service:\n
          \       namespace: openshift-operators\n        name: quay-bridge-operator\n
          \       path: \"/admissionwebhook\"\n      caBundle: \"${CA_BUNDLE}\"\n
          \   rules: \n    - operations:  [ \"CREATE\" ]\n      apiGroups: [ \"build.openshift.io\"
          ]\n      apiVersions: [\"v1\" ]\n      resources: [ \"builds\" ]\n    failurePolicy:
          Fail\n    sideEffects: None\n    admissionReviewVersions: [v1beta1]\n    matchPolicy:
          Exact\n    timeoutSeconds: 30  \n```\n\n_Note: Until the operator is running,
          new requests for builds will fail since the webserver the MutatingWebhookConfiguration
          invokes is not available and a proper is response is required in order for
          the object to be persisted in etcd._\n\n#### Create the QuayIntegration
          Custom Resource\n\nFinally, to complete the integration between OpenShift
          and Quay, a `QuayIntegration` custom resource needs to be created.\n\nThe
          following is an example of a basic definition of a `QuayIntegration` resource
          associated from the associated CRD.\n\n```\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          QuayIntegration\nmetadata:\n  name: example-quayintegration\nspec:\n  clusterID:
          openshift\n  credentialsSecretName: <NAMESPACE>/<SECRET>\n  quayHostname:
          https://<QUAY_URL>\n```\n\nThe _clusterID_ is a value which should be unique
          across the entire ecosystem. This value is optional and defaults to `openshift`.\n\nThe
          _credentialsSecretName_ is a NamespacedName value of the secret containing
          the token that was previously created.\n\nNote: If Quay is using self signed
          certificates, the property `insecureRegistry: true`\n\nOrganizations within
          Quay should be created for the related namespaces in OpenShift."
        displayName: Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Source Code
          url: https://github.com/redhat-cop/quay-openshift-registry-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:6c2ab763239f6e5a2a72890120bf1f20f6277850cec59a7e11cea2b6a06f12e8
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9149df5ffc83dce6593072b7f72805e07e700b84527e45b4b7486b9c38f70731
        version: 3.5.7
      entries:
      - name: quay-bridge-operator.v3.5.7
        version: 3.5.7
      name: quay-v3.5
    - currentCSV: quay-bridge-operator.v3.10.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:c8dad99f3b281a8ab882d819e6262b86c8bda4d5de759f8095cf58c39a992608
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.7.x <3.10.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.10.17
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:8b475114a5f77f7c041509a30246769a5f9064510724c8fc99ac29164dc3a0bb
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:c8dad99f3b281a8ab882d819e6262b86c8bda4d5de759f8095cf58c39a992608
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        version: 3.10.17
      entries:
      - name: quay-bridge-operator.v3.10.17
        version: 3.10.17
      - name: quay-bridge-operator.v3.10.16
        version: 3.10.16
      - name: quay-bridge-operator.v3.10.15
        version: 3.10.15
      - name: quay-bridge-operator.v3.10.14
        version: 3.10.14
      - name: quay-bridge-operator.v3.10.13
        version: 3.10.13
      - name: quay-bridge-operator.v3.10.12
        version: 3.10.12
      - name: quay-bridge-operator.v3.10.11
        version: 3.10.11
      - name: quay-bridge-operator.v3.10.10
        version: 3.10.10
      - name: quay-bridge-operator.v3.10.9
        version: 3.10.9
      - name: quay-bridge-operator.v3.10.8
        version: 3.10.8
      - name: quay-bridge-operator.v3.10.7
        version: 3.10.7
      - name: quay-bridge-operator.v3.10.6
        version: 3.10.6
      - name: quay-bridge-operator.v3.10.5
        version: 3.10.5
      - name: quay-bridge-operator.v3.10.4
        version: 3.10.4
      - name: quay-bridge-operator.v3.10.3
        version: 3.10.3
      - name: quay-bridge-operator.v3.10.2
        version: 3.10.2
      - name: quay-bridge-operator.v3.10.1
        version: 3.10.1
      - name: quay-bridge-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: quay-bridge-operator.v3.11.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:511f8471db70e8d5fd9d0b547c73f1416bbac6f0fe6cdeb6c59a9ef8bd845ac2
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.8.x <3.11.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.11.13
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:56653df97e4498ecd67b9645d75e44f65c625594e312dbcf0f09937b57d76010
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:2b6b1a0b56cfb348ed4035b13d31501ff5757c101ed21027b330a7852576b891
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:511f8471db70e8d5fd9d0b547c73f1416bbac6f0fe6cdeb6c59a9ef8bd845ac2
        version: 3.11.13
      entries:
      - name: quay-bridge-operator.v3.11.13
        version: 3.11.13
      - name: quay-bridge-operator.v3.11.12
        version: 3.11.12
      - name: quay-bridge-operator.v3.11.11
        version: 3.11.11
      - name: quay-bridge-operator.v3.11.10
        version: 3.11.10
      - name: quay-bridge-operator.v3.11.9
        version: 3.11.9
      - name: quay-bridge-operator.v3.11.8
        version: 3.11.8
      - name: quay-bridge-operator.v3.11.7
        version: 3.11.7
      - name: quay-bridge-operator.v3.11.6
        version: 3.11.6
      - name: quay-bridge-operator.v3.11.5
        version: 3.11.5
      - name: quay-bridge-operator.v3.11.4
        version: 3.11.4
      - name: quay-bridge-operator.v3.11.3
        version: 3.11.3
      - name: quay-bridge-operator.v3.11.2
        version: 3.11.2
      - name: quay-bridge-operator.v3.11.1
        version: 3.11.1
      - name: quay-bridge-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: quay-bridge-operator.v3.12.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:d817c52045a8f5aeb5baebd15843e9bf4a4097fc8d74ff2aa9108442d8fb922e
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.9.x <3.12.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.12.13
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:0a978bbe91e0e0b8bab6862522f8a0aa8e974b778cc36b83f0781081621c8e23
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:d817c52045a8f5aeb5baebd15843e9bf4a4097fc8d74ff2aa9108442d8fb922e
        version: 3.12.13
      entries:
      - name: quay-bridge-operator.v3.12.13
        version: 3.12.13
      - name: quay-bridge-operator.v3.12.12
        version: 3.12.12
      - name: quay-bridge-operator.v3.12.11
        version: 3.12.11
      - name: quay-bridge-operator.v3.12.10
        version: 3.12.10
      - name: quay-bridge-operator.v3.12.9
        version: 3.12.9
      - name: quay-bridge-operator.v3.12.8
        version: 3.12.8
      - name: quay-bridge-operator.v3.12.7
        version: 3.12.7
      - name: quay-bridge-operator.v3.12.6
        version: 3.12.6
      - name: quay-bridge-operator.v3.12.5
        version: 3.12.5
      - name: quay-bridge-operator.v3.12.4
        version: 3.12.4
      - name: quay-bridge-operator.v3.12.3
        version: 3.12.3
      - name: quay-bridge-operator.v3.12.2
        version: 3.12.2
      - name: quay-bridge-operator.v3.12.1
        version: 3.12.1
      - name: quay-bridge-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: quay-bridge-operator.v3.13.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:ae3b4842a685d900754edcb1f4adc0a11c85d0b6c9b70b2b06ba39e8dc0bb021
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.10.x <3.13.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.13.10
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:bd1a02c47b6c32010fe19de6a994577b2c49ed692606d185d4252bb5ba347ecb
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:ae3b4842a685d900754edcb1f4adc0a11c85d0b6c9b70b2b06ba39e8dc0bb021
        version: 3.13.10
      entries:
      - name: quay-bridge-operator.v3.13.10
        version: 3.13.10
      - name: quay-bridge-operator.v3.13.9
        version: 3.13.9
      - name: quay-bridge-operator.v3.13.8
        version: 3.13.8
      - name: quay-bridge-operator.v3.13.7
        version: 3.13.7
      - name: quay-bridge-operator.v3.13.6
        version: 3.13.6
      - name: quay-bridge-operator.v3.13.5
        version: 3.13.5
      - name: quay-bridge-operator.v3.13.4
        version: 3.13.4
      - name: quay-bridge-operator.v3.13.3
        version: 3.13.3
      - name: quay-bridge-operator.v3.13.2
        version: 3.13.2
      - name: quay-bridge-operator.v3.13.1
        version: 3.13.1
      - name: quay-bridge-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: quay-bridge-operator.v3.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b12f0dfb8fdeae3f521e41fcf60ef118bdfd08ad7f68bd87c5494b067b7c7c58
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.11.x <3.14.5'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.14.5
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b12f0dfb8fdeae3f521e41fcf60ef118bdfd08ad7f68bd87c5494b067b7c7c58
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:73d91324ccc995e9a6db525f194bee340c17dd624ce520c767ea8fcf2346f786
        version: 3.14.5
      entries:
      - name: quay-bridge-operator.v3.14.5
        version: 3.14.5
      - name: quay-bridge-operator.v3.14.4
        version: 3.14.4
      - name: quay-bridge-operator.v3.14.3
        version: 3.14.3
      - name: quay-bridge-operator.v3.14.2
        version: 3.14.2
      - name: quay-bridge-operator.v3.14.1
        version: 3.14.1
      - name: quay-bridge-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: quay-bridge-operator.v3.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b2ac4a48c80209d7bebe8b1b2d066571f99a9f47b78604e47a8300d027941b66
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.12.x <3.15.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.15.2
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b2ac4a48c80209d7bebe8b1b2d066571f99a9f47b78604e47a8300d027941b66
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:d29abe14abc67d8836cc6f7656556a0a7fa8f4a8eea3f78e40265b339e7430f5
        version: 3.15.2
      entries:
      - name: quay-bridge-operator.v3.15.2
        version: 3.15.2
      - name: quay-bridge-operator.v3.15.1
        version: 3.15.1
      - name: quay-bridge-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: quay-bridge-operator.v3.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel9@sha256:f37b75957d97126f00126d1a51897b5a54bf063ba868e57d9cff241e732796ff
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.13.x <3.16.0'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.16.0
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:78ff6bc0ebad4768ae769da8bd73d76532ca462ddd70c25680d3bb5b4f2b5fb3
        - registry.redhat.io/quay/quay-bridge-operator-rhel9@sha256:f37b75957d97126f00126d1a51897b5a54bf063ba868e57d9cff241e732796ff
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        version: 3.16.0
      entries:
      - name: quay-bridge-operator.v3.16.0
        version: 3.16.0
      name: stable-3.16
    - currentCSV: quay-bridge-operator.v3.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:0ad7af440c6e00fb578ef40e6d600964324fd94ce7835a28d0ec355b7415093f
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          olm.skipRange: '>=3.3.x <3.6.10'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.6.10
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:99dc6b5af811bb33892c17334dd4e1a7eddc6982d49a793b1789f505e00f49b1
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:f7c4ed28a549fe7414312bd22c2ae140f1f28d30656fb9fb0c8ade05a8f82088
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:0ad7af440c6e00fb578ef40e6d600964324fd94ce7835a28d0ec355b7415093f
        version: 3.6.10
      entries:
      - name: quay-bridge-operator.v3.6.10
        version: 3.6.10
      - name: quay-bridge-operator.v3.6.9
        version: 3.6.9
      - name: quay-bridge-operator.v3.6.8
        version: 3.6.8
      - name: quay-bridge-operator.v3.6.7
        version: 3.6.7
      - name: quay-bridge-operator.v3.6.6
        version: 3.6.6
      - name: quay-bridge-operator.v3.6.5
        version: 3.6.5
      - name: quay-bridge-operator.v3.6.4
        version: 3.6.4
      - name: quay-bridge-operator.v3.6.2
        version: 3.6.2
      - name: quay-bridge-operator.v3.6.1
        version: 3.6.1
      - name: quay-bridge-operator.v3.6.0
        version: 3.6.0
      name: stable-3.6
    - currentCSV: quay-bridge-operator.v3.7.14
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:6a0dd80dc48ad0aaa576b3de78b2b265e29a3c10e4996aa6b8f129592fe20f09
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          olm.skipRange: '>=3.4.x <3.7.14'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.7.14
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:975f287513039b2244894b9031e590f665d48f9af480dfdc4b85d4f96dd4bc37
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:c59956d70416fab0c6d7b3ecd8c9cfa3cf9415f75cfdfe2214f44b0b4aced594
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:6a0dd80dc48ad0aaa576b3de78b2b265e29a3c10e4996aa6b8f129592fe20f09
        version: 3.7.14
      entries:
      - name: quay-bridge-operator.v3.7.14
        version: 3.7.14
      - name: quay-bridge-operator.v3.7.13
        version: 3.7.13
      - name: quay-bridge-operator.v3.7.12
        version: 3.7.12
      - name: quay-bridge-operator.v3.7.11
        version: 3.7.11
      - name: quay-bridge-operator.v3.7.10
        version: 3.7.10
      - name: quay-bridge-operator.v3.7.9
        version: 3.7.9
      - name: quay-bridge-operator.v3.7.8
        version: 3.7.8
      - name: quay-bridge-operator.v3.7.7
        version: 3.7.7
      - name: quay-bridge-operator.v3.7.6
        version: 3.7.6
      - name: quay-bridge-operator.v3.7.5
        version: 3.7.5
      - name: quay-bridge-operator.v3.7.4
        version: 3.7.4
      - name: quay-bridge-operator.v3.7.3
        version: 3.7.3
      - name: quay-bridge-operator.v3.7.2
        version: 3.7.2
      - name: quay-bridge-operator.v3.7.1
        version: 3.7.1
      - name: quay-bridge-operator.v3.7.0
        version: 3.7.0
      name: stable-3.7
    - currentCSV: quay-bridge-operator.v3.8.15
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:f8544a546dd6d209355c3a1cbe35138f6910491fc4584b401634431da4414ec0
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          olm.skipRange: '>=3.5.x <3.8.15'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.8.15
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:975f287513039b2244894b9031e590f665d48f9af480dfdc4b85d4f96dd4bc37
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:7cace73b03bb02202a04b6026eb9f7323610fd0ccd5ba18a6d00fd66577a96b4
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:f8544a546dd6d209355c3a1cbe35138f6910491fc4584b401634431da4414ec0
        version: 3.8.15
      entries:
      - name: quay-bridge-operator.v3.8.15
        version: 3.8.15
      - name: quay-bridge-operator.v3.8.14
        version: 3.8.14
      - name: quay-bridge-operator.v3.8.13
        version: 3.8.13
      - name: quay-bridge-operator.v3.8.12
        version: 3.8.12
      - name: quay-bridge-operator.v3.8.11
        version: 3.8.11
      - name: quay-bridge-operator.v3.8.10
        version: 3.8.10
      - name: quay-bridge-operator.v3.8.9
        version: 3.8.9
      - name: quay-bridge-operator.v3.8.8
        version: 3.8.8
      - name: quay-bridge-operator.v3.8.7
        version: 3.8.7
      - name: quay-bridge-operator.v3.8.6
        version: 3.8.6
      - name: quay-bridge-operator.v3.8.5
        version: 3.8.5
      - name: quay-bridge-operator.v3.8.4
        version: 3.8.4
      - name: quay-bridge-operator.v3.8.3
        version: 3.8.3
      - name: quay-bridge-operator.v3.8.2
        version: 3.8.2
      - name: quay-bridge-operator.v3.8.1
        version: 3.8.1
      - name: quay-bridge-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: quay-bridge-operator.v3.9.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9fb8807bed232f8723b7bff3f8bfed37798e86251f4db9374d64716b1d624857
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.9.17
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:7db467404171294d793ef0fd1a59fd6e5bd20ed8915913a1edf013d18e4c9a78
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9fb8807bed232f8723b7bff3f8bfed37798e86251f4db9374d64716b1d624857
        version: 3.9.17
      entries:
      - name: quay-bridge-operator.v3.9.17
        version: 3.9.17
      - name: quay-bridge-operator.v3.9.16
        version: 3.9.16
      - name: quay-bridge-operator.v3.9.15
        version: 3.9.15
      - name: quay-bridge-operator.v3.9.14
        version: 3.9.14
      - name: quay-bridge-operator.v3.9.13
        version: 3.9.13
      - name: quay-bridge-operator.v3.9.12
        version: 3.9.12
      - name: quay-bridge-operator.v3.9.11
        version: 3.9.11
      - name: quay-bridge-operator.v3.9.10
        version: 3.9.10
      - name: quay-bridge-operator.v3.9.9
        version: 3.9.9
      - name: quay-bridge-operator.v3.9.8
        version: 3.9.8
      - name: quay-bridge-operator.v3.9.7
        version: 3.9.7
      - name: quay-bridge-operator.v3.9.6
        version: 3.9.6
      - name: quay-bridge-operator.v3.9.5
        version: 3.9.5
      - name: quay-bridge-operator.v3.9.4
        version: 3.9.4
      - name: quay-bridge-operator.v3.9.3
        version: 3.9.3
      - name: quay-bridge-operator.v3.9.2
        version: 3.9.2
      - name: quay-bridge-operator.v3.9.1
        version: 3.9.1
      - name: quay-bridge-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.16
    packageName: quay-bridge-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: minhokim
      provider-url: ""
    name: node-discovery-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-discovery-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cache.wunicorns.com/v1alpha1",
                "kind": "NodeDiscovery",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "node-discovery-operator",
                    "app.kubernetes.io/instance": "nodediscovery-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nodediscovery",
                    "app.kubernetes.io/part-of": "node-discovery-operator"
                  },
                  "name": "nodediscovery-sample"
                },
                "spec": {
                  "containers": [
                    {
                      "args": [
                        "tail",
                        "-f",
                        "/dev/null"
                      ],
                      "image": "alicek106/stress",
                      "imagePullPolicy": "IfNotPresent",
                      "name": "stress",
                      "resources": {
                        "limits": {
                          "cpu": "100m",
                          "memory": "1000Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "1000Mi"
                        }
                      },
                      "terminationGracePeriodSeconds": 10
                    }
                  ],
                  "cpus": "0",
                  "enabled": "true",
                  "mems": "0",
                  "nodeName": "worker3"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2024-06-18T01:32:51Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeDiscovery is the Schema for the nodediscoveries API
            displayName: Node Discovery
            kind: NodeDiscovery
            name: nodediscoveries.cache.wunicorns.com
            version: v1alpha1
        description: find cgroup infor and set value.
        displayName: node-discovery-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cgroup
        - cpulist
        - mems
        - cpus
        - numa
        links:
        - name: Node Discovery Operator
          url: https://node-discovery-operator.domain
        maintainers:
        - email: wunicorns1436@gmail.com
          name: minhokim
        maturity: alpha
        provider:
          name: minhokim
        relatedImages:
        - quay.io/caspell/cgroup-discovery@sha256:b437dcde0107124e43a4e2fb8026ec191f44b5e761bedc2c295f47ff489cf343
        - quay.io/community-operator-pipeline-prod/node-discovery-operator@sha256:899baace103c58e7337ae5cd75e3764e6de26966aab7340037c612c26ca7cf87
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0
        version: 0.0.1
      entries:
      - name: node-discovery-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: node-discovery-operator
    provider:
      name: minhokim
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-atlas-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-atlas-kubernetes.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupPolicy",
                "metadata": {
                  "name": "atlasbackuppolicy-sample"
                },
                "spec": {
                  "id": "1",
                  "items": [
                    {
                      "frequencyInterval": 6,
                      "frequencyType": "WEEKLY",
                      "id": "2",
                      "retentionUnit": "DAYS",
                      "retentionValue": 6
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupSchedule",
                "metadata": {
                  "name": "atlasbackupschedule-sample"
                },
                "spec": {
                  "autoExportEnabled": true,
                  "policies": [
                    {
                      "name": "atlas-default-backuppolicy",
                      "namespace": "mongodb-atlas-system"
                    },
                    {
                      "name": "atlas-default-backuppolicy2",
                      "namespace": "mongodb-atlas-system"
                    }
                  ],
                  "referenceHourOfDay": 10,
                  "referenceMinuteOfHour": 10,
                  "restoreWindowDays": 2
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDatabaseUser",
                "metadata": {
                  "name": "my-database-user"
                },
                "spec": {
                  "databaseName": "admin",
                  "passwordSecretRef": {
                    "name": "my-database-user-password"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "roles": [
                    {
                      "databaseName": "admin",
                      "roleName": "readWriteAnyDatabase"
                    }
                  ],
                  "username": "david"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDeployment",
                "metadata": {
                  "name": "my-atlas-cluster"
                },
                "spec": {
                  "deploymentSpec": {
                    "name": "test-cluster",
                    "providerSettings": {
                      "instanceSizeName": "M10",
                      "providerName": "AWS",
                      "regionName": "US_EAST_1"
                    }
                  },
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasProject",
                "metadata": {
                  "name": "my-project"
                },
                "spec": {
                  "name": "Test Atlas Operator Project",
                  "projectIpAccessList": [
                    {
                      "comment": "IP address for Application Server A",
                      "ipAddress": "192.0.2.15"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Database
          containerImage: registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator@sha256:3cfbd700e4771c2c7e75c2c41cf6de57c9ef71ecd286e96a21d2567e43424bc3
          description: The MongoDB Atlas Kubernetes Operator enables easy management
            of Clusters in MongoDB Atlas
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies
              API
            displayName: Atlas Backup Policy
            kind: AtlasBackupPolicy
            name: atlasbackuppolicies.atlas.mongodb.com
            version: v1
          - description: AtlasBackupSchedule is the Schema for the atlasbackupschedules
              API
            displayName: Atlas Backup Schedule
            kind: AtlasBackupSchedule
            name: atlasbackupschedules.atlas.mongodb.com
            version: v1
          - description: AtlasDatabaseUser is the Schema for the Atlas Database User
              API
            displayName: Atlas Database User
            kind: AtlasDatabaseUser
            name: atlasdatabaseusers.atlas.mongodb.com
            version: v1
          - description: AtlasDeployment is the Schema for the atlasclusters API
            displayName: Atlas Deployment
            kind: AtlasDeployment
            name: atlasdeployments.atlas.mongodb.com
            version: v1
          - description: AtlasProject is the Schema for the atlasprojects API
            displayName: Atlas Project
            kind: AtlasProject
            name: atlasprojects.atlas.mongodb.com
            version: v1
        description: |
          The MongoDB Atlas Operator provides a native integration between the Kubernetes orchestration platform and MongoDB Atlas —
          the only multi-cloud document database service that gives you the versatility you need to build sophisticated and resilient applications that can adapt to changing customer demands and market trends.

          > Current Status: *Beta*. The Operator gives users the ability to provision
          > Atlas projects, clusters and database users using Kubernetes Specifications and bind connection information
          > into applications deployed to Kubernetes.

          ## Quick Start guide
          ### Step 1. Deploy Kubernetes operator by clicking Install button.

          ### Step 2. Create Atlas Cluster

          **1.** Create an Atlas API Key Secret
          In order to work with the Atlas Operator you need to provide [authentication information](https://docs.atlas.mongodb.com/configure-api-access)
           to allow the Atlas Operator to communicate with Atlas API. Once you have generated a Public and Private key in Atlas, you can create a Kuberentes Secret with:
          ```
          kubectl create secret generic mongodb-atlas-operator-api-key \
                   --from-literal="orgId=<the_atlas_organization_id>" \
                   --from-literal="publicApiKey=<the_atlas_api_public_key>" \
                   --from-literal="privateApiKey=<the_atlas_api_private_key>" \
                   -n openshift-operators
          ```
          (Note, that you should use the namespace where the Operator was installed - it's `openshift-operators` by default)

          **2.** Create an `AtlasProject` Custom Resource

          The `AtlasProject` CustomResource represents Atlas Projects in our Kubernetes cluster. You need to specify
          `projectIpAccessList` with the IP addresses or CIDR blocks of any hosts that will connect to the Atlas Cluster.
          ```
          apiVersion: atlas.mongodb.com/v1
          kind: AtlasProject
          metadata:
            name: my-project
          spec:
            name: Test Atlas Operator Project
            projectIpAccessList:
              - ipAddress: "192.0.2.15"
                comment: "IP address for Application Server A"
              - ipAddress: "203.0.113.0/24"
                comment: "CIDR block for Application Server B - D"
          ```
          **3.** Create an `AtlasDeployment` Custom Resource.
          The example below is a minimal configuration to create an M10 Atlas cluster in the AWS US East region. For a full list of properties, check
          `atlasclusters.atlas.mongodb.com` [CRD specification](config/crd/bases/atlas.mongodb.com_atlasclusters.yaml)):
          ```
          apiVersion: atlas.mongodb.com/v1
          kind: AtlasDeployment
          metadata:
            name: my-atlas-cluster
          spec:
            name: "Test-cluster"
            projectRef:
              name: my-project
            providerSettings:
              instanceSizeName: M10
              providerName: AWS
              regionName: US_EAST_1
          ```

          **4.** Create a database user password Kubernetes Secret
          The Secret must be created in the same namespace as the `AtlasDeployment` and `AtlasProject` were created.
          ```
          kubectl create secret generic the-user-password --from-literal="password=P@@sword%"
          ```

          **5.** Create an `AtlasDatabaseUser` Custom Resource

          In order to connect to an Atlas Cluster the database user needs to be created. `AtlasDatabaseUser` resource should reference
          the password Kubernetes Secret created in the previous step.
          ```
          apiVersion: atlas.mongodb.com/v1
          kind: AtlasDatabaseUser
          metadata:
            name: my-database-user
          spec:
            roles:
              - roleName: "readWriteAnyDatabase"
                databaseName: "admin"
            projectRef:
              name: my-project
            username: theuser
            passwordSecretRef:
              name: the-user-password
          ```
          **6.** Wait for the `AtlasDatabaseUser` Custom Resource to be ready

          Wait until the AtlasDatabaseUser resource gets to "ready" status (it will wait until the cluster is created that may take around 10 minutes):
          ```
          kubectl get atlasdatabaseusers my-database-user -o=jsonpath='{.status.conditions[?(@.type=="Ready")].status}'
          True
          ```
          ### Step 3. Connect your application to the Atlas Cluster

          The Atlas Operator will create a Kubernetes Secret with the information necessary to connect to the Atlas Cluster created
          in the previous step. An application in the same Kubernetes Cluster can mount and use the Secret:

          ```
          ...
          containers:
                - name: test-app
                  env:
                   - name: "CONNECTION_STRING"
                     valueFrom:
                       secretKeyRef:
                         name: test-atlas-operator-project-test-cluster-theuser
                         key: connectionStringStandardSrv

          ```
        displayName: MongoDB Atlas Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - MongoDB
        - Atlas
        - Database
        - Replica Set
        - Cluster
        links:
        - name: MongoDB Atlas Kubernetes
          url: https://github.com/mongodb/mongodb-atlas-kubernetes
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: beta
        provider:
          name: MongoDB, Inc
        relatedImages:
        - registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator-bundle@sha256:2338eaab863304250b3b1d267e9f2261c48eef1f97c280b7fa0af0ebc3ba208b
        - registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator@sha256:3cfbd700e4771c2c7e75c2c41cf6de57c9ef71ecd286e96a21d2567e43424bc3
        version: 1.0.0
      entries:
      - name: mongodb-atlas-kubernetes.v1.0.0
        version: 1.0.0
      name: beta
    - currentCSV: mongodb-atlas-kubernetes.v2.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupPolicy",
                "metadata": {
                  "name": "atlasbackuppolicy-sample"
                },
                "spec": {
                  "items": [
                    {
                      "frequencyInterval": 6,
                      "frequencyType": "hourly",
                      "retentionUnit": "days",
                      "retentionValue": 2
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "daily",
                      "retentionUnit": "days",
                      "retentionValue": 7
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "weekly",
                      "retentionUnit": "weeks",
                      "retentionValue": 4
                    },
                    {
                      "frequencyInterval": 15,
                      "frequencyType": "monthly",
                      "retentionUnit": "months",
                      "retentionValue": 12
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupSchedule",
                "metadata": {
                  "name": "atlasbackupschedule-sample"
                },
                "spec": {
                  "autoExportEnabled": false,
                  "copySettings": [
                    {
                      "cloudProvider": "AWS",
                      "frequencies": [
                        "WEEKLY"
                      ],
                      "regionName": "US_WEST_1",
                      "shouldCopyOplogs": false
                    }
                  ],
                  "policy": {
                    "name": "atlasbackuppolicy-sample"
                  },
                  "referenceHourOfDay": 10,
                  "referenceMinuteOfHour": 10,
                  "restoreWindowDays": 2,
                  "useOrgAndGroupNamesInExportPrefix": true
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDatabaseUser",
                "metadata": {
                  "name": "my-database-user"
                },
                "spec": {
                  "databaseName": "admin",
                  "passwordSecretRef": {
                    "name": "the-user-password"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "roles": [
                    {
                      "databaseName": "admin",
                      "roleName": "readWriteAnyDatabase"
                    }
                  ],
                  "username": "theuser"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDeployment",
                "metadata": {
                  "name": "my-atlas-deployment"
                },
                "spec": {
                  "backupRef": {
                    "name": "atlasbackupschedule-sample"
                  },
                  "deploymentSpec": {
                    "backupEnabled": true,
                    "clusterType": "REPLICASET",
                    "mongoDBMajorVersion": "7.0",
                    "name": "test-deployment",
                    "replicationSpecs": [
                      {
                        "regionConfigs": [
                          {
                            "electableSpecs": {
                              "instanceSize": "M10",
                              "nodeCount": 3
                            },
                            "priority": 7,
                            "providerName": "AWS",
                            "regionName": "US_EAST_1"
                          }
                        ],
                        "zoneName": "Zone 1"
                      }
                    ],
                    "tags": [
                      {
                        "key": "team",
                        "value": "atlas-operator"
                      }
                    ]
                  },
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasIPAccessList",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasipaccesslist-sample"
                },
                "spec": {
                  "entries": [
                    {
                      "cidrBlock": "192.168.1.0/24"
                    },
                    {
                      "deleteAfterDate": "2025-01-20T23:59:59+02:00",
                      "ipAddress": "10.0.0.1"
                    }
                  ],
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkContainer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasnetworkcontainer-sample"
                },
                "spec": {
                  "cidrBlock": "10.11.0.0/16",
                  "connectionSecret": {
                    "name": "atlas-connection-secret"
                  },
                  "externalProjectRef": {
                    "projectId": "66e2f2b621571b7e69a89b66"
                  },
                  "provider": "AWS",
                  "region": "US_EAST_1"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkPeering",
                "metadata": {
                  "name": "atlasnetworkpeering-sample"
                },
                "spec": {
                  "atlasCidrBlock": "10.12.0.0/16",
                  "awsConfiguration": {
                    "accepterRegionName": "US_EAST_1",
                    "awsAccountId": "23214235145",
                    "routeTableCidrBlock": "10.11.0.0/16",
                    "vpcId": "vpcid-7123782134"
                  },
                  "containerId": "623412394512350",
                  "containerRegion": "US_EAST_1",
                  "projectRef": {
                    "name": "atlas-project",
                    "namespace": "namespace"
                  },
                  "provider": "AWS"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasProject",
                "metadata": {
                  "name": "my-project"
                },
                "spec": {
                  "name": "Test Atlas Operator Project",
                  "projectIpAccessList": [
                    {
                      "comment": "IP address for Application Server A",
                      "ipAddress": "192.0.2.15"
                    },
                    {
                      "cidrBlock": "203.0.113.0/24",
                      "comment": "CIDR block for Application Server B - D"
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasTeam",
                "metadata": {
                  "name": "atlasteam-sample"
                },
                "spec": {
                  "name": "my-team",
                  "usernames": [
                    "username@mongodb.com"
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/mongodb/mongodb-atlas-kubernetes-operator@sha256:97954960c411c7711bd93ab4bdb243b72cee0e6ec9f6a3951ce300b1d9fb895a
          createdAt: "2025-03-06T14:09:19Z"
          description: The MongoDB Atlas Kubernetes Operator enables easy management
            of Clusters in MongoDB Atlas
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AtlasBackupCompliancePolicy
            name: atlasbackupcompliancepolicies.atlas.mongodb.com
            version: v1
          - description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies
              API
            displayName: Atlas Backup Policy
            kind: AtlasBackupPolicy
            name: atlasbackuppolicies.atlas.mongodb.com
            version: v1
          - description: AtlasBackupSchedule is the Schema for the atlasbackupschedules
              API
            displayName: Atlas Backup Schedule
            kind: AtlasBackupSchedule
            name: atlasbackupschedules.atlas.mongodb.com
            version: v1
          - description: AtlasCustomRole is the Schema for the AtlasCustomRole API
            displayName: Atlas Custom Role
            kind: AtlasCustomRole
            name: atlascustomroles.atlas.mongodb.com
            version: v1
          - description: AtlasDatabaseUser is the Schema for the Atlas Database User
              API
            displayName: Atlas Database User
            kind: AtlasDatabaseUser
            name: atlasdatabaseusers.atlas.mongodb.com
            version: v1
          - description: AtlasDataFederation is the Schema for the Atlas Data Federation
              API
            displayName: Atlas Data Federation
            kind: AtlasDataFederation
            name: atlasdatafederations.atlas.mongodb.com
            version: v1
          - description: AtlasDeployment is the Schema for the atlasdeployments API
            displayName: Atlas Deployment
            kind: AtlasDeployment
            name: atlasdeployments.atlas.mongodb.com
            version: v1
          - description: AtlasFederatedAuth is the Schema for the Atlasfederatedauth
              API
            displayName: Atlas Federated Auth
            kind: AtlasFederatedAuth
            name: atlasfederatedauths.atlas.mongodb.com
            version: v1
          - description: AtlasIPAccessList is the Schema for the atlasipaccesslists
              API.
            displayName: Atlas IPAccess List
            kind: AtlasIPAccessList
            name: atlasipaccesslists.atlas.mongodb.com
            version: v1
          - description: AtlasNetworkContainer is the Schema for the AtlasNetworkContainer
              API
            displayName: Atlas Network Container
            kind: AtlasNetworkContainer
            name: atlasnetworkcontainers.atlas.mongodb.com
            version: v1
          - description: AtlasNetworkPeering is the Schema for the AtlasNetworkPeering
              API
            displayName: Atlas Network Peering
            kind: AtlasNetworkPeering
            name: atlasnetworkpeerings.atlas.mongodb.com
            version: v1
          - description: "The AtlasPrivateEndpoint custom resource definition (CRD)
              defines a desired [Private Endpoint](https://www.mongodb.com/docs/atlas/security-private-endpoint/#std-label-private-endpoint-overview)
              configuration for an Atlas project. It allows a private connection between
              your cloud provider and Atlas that doesn't send information through
              a public network. \n You can use private endpoints to create a unidirectional
              connection to Atlas clusters from your virtual network."
            displayName: Atlas Private Endpoint
            kind: AtlasPrivateEndpoint
            name: atlasprivateendpoints.atlas.mongodb.com
            version: v1
          - description: AtlasProject is the Schema for the atlasprojects API
            displayName: Atlas Project
            kind: AtlasProject
            name: atlasprojects.atlas.mongodb.com
            version: v1
          - description: Atlas Search Index Config is the Schema for the Atlas Search
              API
            displayName: Atlas Search Index Config
            kind: AtlasSearchIndexConfig
            name: atlassearchindexconfigs.atlas.mongodb.com
            version: v1
          - description: AtlasStreamConnection is the Schema for the atlasstreamconnections
              API
            displayName: Atlas Stream Connection
            kind: AtlasStreamConnection
            name: atlasstreamconnections.atlas.mongodb.com
            version: v1
          - description: AtlasStreamInstance is the Schema for the atlasstreaminstances
              API
            displayName: Atlas Stream Instance
            kind: AtlasStreamInstance
            name: atlasstreaminstances.atlas.mongodb.com
            version: v1
          - description: AtlasTeam is the Schema for the Atlas Teams API
            displayName: Atlas Team
            kind: AtlasTeam
            name: atlasteams.atlas.mongodb.com
            version: v1
        description: |
          The MongoDB Atlas Operator provides a native integration between the Kubernetes orchestration platform and MongoDB
          Atlas — the only multi-cloud document database service that gives you the versatility you need to build sophisticated
          and resilient applications that can adapt to changing customer demands and market trends.

          The full documentation for the Operator can be found [here](https://docs.atlas.mongodb.com/atlas-operator/)

          ## Getting Started

          ### Supported features

          * Create and configure a project, or connect to an existing one.
          * Deploy, manage, scale, and tear down clusters.
          * Support for serverless instances.
          * Create and edit database users.
          * Manage IP Access Lists, network peering and private endpoints.
          * Configure and control Atlas’s fully managed cloud backup.
          * Configure federated authentication for your Atlas organization
          * Integrate Atlas monitoring with Prometheus.

          ... and more.

          To view the list of custom resources and each CR's schema, visit our [reference](https://www.mongodb.com/docs/atlas/operator/stable/custom-resources/)
          documentation. See the [Quickstart](https://www.mongodb.com/docs/atlas/operator/stable/ak8so-quick-start/) to get
          started with Atlas Kubernetes Operator.
        displayName: MongoDB Atlas Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - MongoDB
        - Atlas
        - Database
        - Replica Set
        - Cluster
        links:
        - name: MongoDB Atlas Kubernetes
          url: https://github.com/mongodb/mongodb-atlas-kubernetes
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: beta
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/mongodb/mongodb-atlas-kubernetes-operator@sha256:97954960c411c7711bd93ab4bdb243b72cee0e6ec9f6a3951ce300b1d9fb895a
        - quay.io/mongodb/mongodb-atlas-kubernetes-operator@sha256:ffc0ee0c96ef18dd034c125c4756c24bc1629f6573bf7faaeb89fd2eaae1d9cc
        - registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator-bundle@sha256:a8043b35ba5742b5c514e73511c1d3ca06ef3c96418b849034e96faba9f96c36
        version: 2.8.0
      entries:
      - name: mongodb-atlas-kubernetes.v2.8.0
        version: 2.8.0
      - name: mongodb-atlas-kubernetes.v2.7.1
        version: 2.7.1
      - name: mongodb-atlas-kubernetes.v2.7.0
        version: 2.7.0
      - name: mongodb-atlas-kubernetes.v2.6.1
        version: 2.6.1
      - name: mongodb-atlas-kubernetes.v2.6.0
        version: 2.6.0
      - name: mongodb-atlas-kubernetes.v2.5.0
        version: 2.5.0
      - name: mongodb-atlas-kubernetes.v2.4.1
        version: 2.4.1
      - name: mongodb-atlas-kubernetes.v2.4.0
        version: 2.4.0
      - name: mongodb-atlas-kubernetes.v2.3.1
        version: 2.3.1
      - name: mongodb-atlas-kubernetes.v2.3.0
        version: 2.3.0
      - name: mongodb-atlas-kubernetes.v2.2.2
        version: 2.2.2
      - name: mongodb-atlas-kubernetes.v2.2.1
        version: 2.2.1
      - name: mongodb-atlas-kubernetes.v2.2.0
        version: 2.2.0
      - name: mongodb-atlas-kubernetes.v2.1.0
        version: 2.1.0
      - name: mongodb-atlas-kubernetes.v2.0.1
        version: 2.0.1
      - name: mongodb-atlas-kubernetes.v2.0.0
        version: 2.0.0
      - name: mongodb-atlas-kubernetes.v1.9.1
        version: 1.9.1
      - name: mongodb-atlas-kubernetes.v1.9.0
        version: 1.9.0
      - name: mongodb-atlas-kubernetes.v1.8.2
        version: 1.8.2
      - name: mongodb-atlas-kubernetes.v1.8.1
        version: 1.8.1
      - name: mongodb-atlas-kubernetes.v1.8.0
        version: 1.8.0
      - name: mongodb-atlas-kubernetes.v1.7.3
        version: 1.7.3
      - name: mongodb-atlas-kubernetes.v1.7.2
        version: 1.7.2
      - name: mongodb-atlas-kubernetes.v1.7.1
        version: 1.7.1
      - name: mongodb-atlas-kubernetes.v1.7.0
        version: 1.7.0
      - name: mongodb-atlas-kubernetes.v1.6.1
        version: 1.6.1
      - name: mongodb-atlas-kubernetes.v1.6.0
        version: 1.6.0
      - name: mongodb-atlas-kubernetes.v1.5.1
        version: 1.5.1
      - name: mongodb-atlas-kubernetes.v1.5.0
        version: 1.5.0
      - name: mongodb-atlas-kubernetes.v1.4.1
        version: 1.4.1
      - name: mongodb-atlas-kubernetes.v1.3.0
        version: 1.3.0
      name: stable
    defaultChannel: stable
    packageName: mongodb-atlas-kubernetes
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: NVIDIA
      provider-url: https://github.com/Mellanox/network-operator/
    name: nvidia-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nvidia-network-operator.v25.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "HostDeviceNetwork",
                "metadata": {
                  "name": "example-hostdevice-network"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.3.225/28\",\n  \"exclude\": [\n   \"192.168.3.229/30\",\n   \"192.168.3.236/32\"\n  ]\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "hostdev"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "IPoIBNetwork",
                "metadata": {
                  "name": "example-ipoibnetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"nv-ipam\",\n  \"poolName\": \"my-pool\"\n}\n",
                  "master": "ibs3f1",
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "MacvlanNetwork",
                "metadata": {
                  "name": "example-macvlannetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.2.225/24\",\n  \"exclude\": [\n   \"192.168.2.229/30\",\n   \"192.168.2.236/32\"\n  ]\n}\n",
                  "master": "ens2f0",
                  "mode": "bridge",
                  "mtu": 1500,
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "NicClusterPolicy",
                "metadata": {
                  "name": "nic-cluster-policy"
                },
                "spec": {
                  "ofedDriver": {
                    "image": "doca-driver",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 30
                    },
                    "readinessProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 30
                    },
                    "repository": "nvcr.io/nvidia/mellanox",
                    "startupProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 20
                    },
                    "terminationGracePeriodSeconds": 300,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": true,
                        "enable": true,
                        "force": true,
                        "podSelector": "",
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1
                    },
                    "version": "doca3.2.0-25.10-1.2.8.0-2"
                  },
                  "rdmaSharedDevicePlugin": {
                    "config": "{\n  \"configList\": [\n    {\n      \"resourceName\": \"rdma_shared_device_a\",\n      \"rdmaHcaMax\": 63,\n      \"selectors\": {\n        \"vendors\": [\"15b3\"]\n      }\n    }\n  ]\n}\n",
                    "image": "k8s-rdma-shared-dev-plugin",
                    "repository": "nvcr.io/nvidia/mellanox",
                    "version": "sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
          createdAt: "2025-12-11T08:10:51Z"
          description: Deploy and manage NVIDIA networking resources in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-network-operator
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: https://github.com/Mellanox/network-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: HostDeviceNetwork
            name: hostdevicenetworks.mellanox.com
            version: v1alpha1
          - kind: IPoIBNetwork
            name: ipoibnetworks.mellanox.com
            version: v1alpha1
          - kind: MacvlanNetwork
            name: macvlannetworks.mellanox.com
            version: v1alpha1
          - kind: NicClusterPolicy
            name: nicclusterpolicies.mellanox.com
            version: v1alpha1
        description: |
          ## NVIDIA Network Operator
          The NVIDIA Network Operator simplifies the provisioning and management of NVIDIA networking resources  in a Kubernetes cluster. The operator automatically installs the required host networking software - bringing together all the needed components to provide high-speed network connectivity. These components include the NVIDIA networking driver, Kubernetes device plugin, CNI plugins, IP address management (IPAM) plugin and others.
          The NVIDIA Network Operator works in conjunction with the NVIDIA GPU Operator to deliver high-throughput, low-latency networking for scale-out, GPU computing clusters.

          The Network Operator uses Node Feature Discovery (NFD) labels in order to properly schedule resources.
          Nodes can be labelled manually or using the NFD Operator. An example of `NodeFeatureDiscovery`
          configuration is available in the documentation.
          The following NFD labels are used:
          `feature.node.kubernetes.io/pci-15b3.present` for nodes containing NVIDIA Networking hardware.
          `feature.node.kubernetes.io/pci-10de.present` for nodes containing NVIDIA GPU hardware.

          The Network Operator is open-source. For more information on contributions and release artifacts, see the [GitHub repo](https://github.com/Mellanox/network-operator/)
        displayName: NVIDIA Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sriov
        - networking
        links:
        - name: Network Operator Documentation
          url: https://docs.nvidia.com/networking/software/cloud-orchestration/index.html
        - name: GitHub repository
          url: https://github.com/Mellanox/network-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/network-operator/
        relatedImages:
        - nvcr.io/nvidia/doca/doca_telemetry@sha256:f0d3c4a00616343e74e465e259a7475d69920a8dbff530117253cb1939e366f6
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:2ba90699f70a848488bf520afd03283e515c73daef431618256920d685957d4c
        - nvcr.io/nvidia/mellanox/network-operator-init-container@sha256:8990b7fabb164d5c369964bca8bd0424acd6227d2cc8f0cbfc23b2e3cc732c8b
        - nvcr.io/nvidia/mellanox/spectrum-x-operator@sha256:d806c8913833596c53344601e77620ce441afe164968b6c6626b6a715031515a
        - nvcr.io/nvidia/mellanox/ipoib-cni@sha256:8567594bb1570383f5b68c9e9ce814bc34dd0f1d8df60a89c44105cf476a8ff0
        - nvcr.io/nvidia/mellanox/nic-feature-discovery@sha256:7573a7a063ee4bfbaa5b8e3517e655da5fa5472e2c9bf96a4d45469718416531
        - nvcr.io/nvidia/mellanox/nvidia-k8s-ipam@sha256:f3618a6bf879057dd3e63ae0bef5bad3fecc5f5548430cf5aa8745287c71e063
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:54606f3cde8fe47e5399347661d58954889a7712f7b35c505b949a313d5f7dfe
        - nvcr.io/nvidia/mellanox/sriov-network-device-plugin@sha256:16230372aa23ae025f7b5fa5ac092bbf58c8040bf66e162f7977469ba7322bcc
        - nvcr.io/nvidia/mellanox/nic-configuration-operator@sha256:25fbecba5fa2c588007c85fbffdedf4b734c36774824da1598ab063e0e9a9685
        - nvcr.io/nvidia/mellanox/ib-kubernetes@sha256:da161f6694fb5134948e8ffc47ebc556c8fdbdb4cb83be1dc6c9a2276b671c03
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:4015c620d07b169462d726dee926616faf0d20b4331a1922bade079efd8427b5
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:c6c0ef891b8dd381c002976b202ffe1c8d7d35710d812dbc3d31151a913b3fd4
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:0f99c9165a5001cca2d5fe11c7fd480f7fc455928c43ebec1fdd2cac3cb811be
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:327f4396b63cc6d6694a3272f48758e3bc415b477919d36f3ff8b5e4b0c322eb
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:bca54e10732c1a617cc9cc2ded9b83372593963559ba72a54c499d39a143fcb0
        - nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:8f6a0c704e40e383079a7d9fd6b06d60af168e3ebf3cb98175f952a3c404a9a8
        - nvcr.io/nvidia/mellanox/nic-configuration-operator-daemon@sha256:efef0cd39324058f23cfeda561d4c23063f260905c35a0a29d5a246bec091341
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-network-operator@sha256:beab52d506ac9133172b18bec91e1fa8e261b2a203669880c1a3ffeaeb30e2b0
        - nvcr.io/nvidia/mellanox/k8s-rdma-shared-dev-plugin@sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e
        version: 25.10.0
      entries:
      - name: nvidia-network-operator.v25.10.0
        version: 25.10.0
      - name: nvidia-network-operator.v25.7.0
        version: 25.7.0
      name: stable
    - currentCSV: nvidia-network-operator.v25.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "HostDeviceNetwork",
                "metadata": {
                  "name": "example-hostdevice-network"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.3.225/28\",\n  \"exclude\": [\n   \"192.168.3.229/30\",\n   \"192.168.3.236/32\"\n  ]\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "hostdev"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "IPoIBNetwork",
                "metadata": {
                  "name": "example-ipoibnetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"nv-ipam\",\n  \"poolName\": \"my-pool\"\n}\n",
                  "master": "ibs3f1",
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "MacvlanNetwork",
                "metadata": {
                  "name": "example-macvlannetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.2.225/24\",\n  \"exclude\": [\n   \"192.168.2.229/30\",\n   \"192.168.2.236/32\"\n  ]\n}\n",
                  "master": "ens2f0",
                  "mode": "bridge",
                  "mtu": 1500,
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "NicClusterPolicy",
                "metadata": {
                  "name": "nic-cluster-policy"
                },
                "spec": {
                  "ofedDriver": {
                    "image": "doca-driver",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 30
                    },
                    "readinessProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 30
                    },
                    "repository": "nvcr.io/nvidia/mellanox",
                    "startupProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 20
                    },
                    "terminationGracePeriodSeconds": 300,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": true,
                        "enable": true,
                        "force": true,
                        "podSelector": "",
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1
                    },
                    "version": "doca3.2.0-25.10-1.2.8.0-2"
                  },
                  "rdmaSharedDevicePlugin": {
                    "config": "{\n  \"configList\": [\n    {\n      \"resourceName\": \"rdma_shared_device_a\",\n      \"rdmaHcaMax\": 63,\n      \"selectors\": {\n        \"vendors\": [\"15b3\"]\n      }\n    }\n  ]\n}\n",
                    "image": "k8s-rdma-shared-dev-plugin",
                    "repository": "nvcr.io/nvidia/mellanox",
                    "version": "sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
          createdAt: "2025-12-11T08:10:51Z"
          description: Deploy and manage NVIDIA networking resources in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-network-operator
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: https://github.com/Mellanox/network-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: HostDeviceNetwork
            name: hostdevicenetworks.mellanox.com
            version: v1alpha1
          - kind: IPoIBNetwork
            name: ipoibnetworks.mellanox.com
            version: v1alpha1
          - kind: MacvlanNetwork
            name: macvlannetworks.mellanox.com
            version: v1alpha1
          - kind: NicClusterPolicy
            name: nicclusterpolicies.mellanox.com
            version: v1alpha1
        description: |
          ## NVIDIA Network Operator
          The NVIDIA Network Operator simplifies the provisioning and management of NVIDIA networking resources  in a Kubernetes cluster. The operator automatically installs the required host networking software - bringing together all the needed components to provide high-speed network connectivity. These components include the NVIDIA networking driver, Kubernetes device plugin, CNI plugins, IP address management (IPAM) plugin and others.
          The NVIDIA Network Operator works in conjunction with the NVIDIA GPU Operator to deliver high-throughput, low-latency networking for scale-out, GPU computing clusters.

          The Network Operator uses Node Feature Discovery (NFD) labels in order to properly schedule resources.
          Nodes can be labelled manually or using the NFD Operator. An example of `NodeFeatureDiscovery`
          configuration is available in the documentation.
          The following NFD labels are used:
          `feature.node.kubernetes.io/pci-15b3.present` for nodes containing NVIDIA Networking hardware.
          `feature.node.kubernetes.io/pci-10de.present` for nodes containing NVIDIA GPU hardware.

          The Network Operator is open-source. For more information on contributions and release artifacts, see the [GitHub repo](https://github.com/Mellanox/network-operator/)
        displayName: NVIDIA Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sriov
        - networking
        links:
        - name: Network Operator Documentation
          url: https://docs.nvidia.com/networking/software/cloud-orchestration/index.html
        - name: GitHub repository
          url: https://github.com/Mellanox/network-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/network-operator/
        relatedImages:
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:0f99c9165a5001cca2d5fe11c7fd480f7fc455928c43ebec1fdd2cac3cb811be
        - nvcr.io/nvidia/mellanox/network-operator-init-container@sha256:8990b7fabb164d5c369964bca8bd0424acd6227d2cc8f0cbfc23b2e3cc732c8b
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:327f4396b63cc6d6694a3272f48758e3bc415b477919d36f3ff8b5e4b0c322eb
        - nvcr.io/nvidia/mellanox/nic-feature-discovery@sha256:7573a7a063ee4bfbaa5b8e3517e655da5fa5472e2c9bf96a4d45469718416531
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:bca54e10732c1a617cc9cc2ded9b83372593963559ba72a54c499d39a143fcb0
        - nvcr.io/nvidia/doca/doca_telemetry@sha256:f0d3c4a00616343e74e465e259a7475d69920a8dbff530117253cb1939e366f6
        - nvcr.io/nvidia/mellanox/nic-configuration-operator@sha256:25fbecba5fa2c588007c85fbffdedf4b734c36774824da1598ab063e0e9a9685
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-network-operator@sha256:beab52d506ac9133172b18bec91e1fa8e261b2a203669880c1a3ffeaeb30e2b0
        - nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
        - nvcr.io/nvidia/mellanox/ib-kubernetes@sha256:da161f6694fb5134948e8ffc47ebc556c8fdbdb4cb83be1dc6c9a2276b671c03
        - nvcr.io/nvidia/mellanox/nic-configuration-operator-daemon@sha256:efef0cd39324058f23cfeda561d4c23063f260905c35a0a29d5a246bec091341
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:54606f3cde8fe47e5399347661d58954889a7712f7b35c505b949a313d5f7dfe
        - nvcr.io/nvidia/mellanox/spectrum-x-operator@sha256:d806c8913833596c53344601e77620ce441afe164968b6c6626b6a715031515a
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:4015c620d07b169462d726dee926616faf0d20b4331a1922bade079efd8427b5
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:2ba90699f70a848488bf520afd03283e515c73daef431618256920d685957d4c
        - nvcr.io/nvidia/mellanox/ipoib-cni@sha256:8567594bb1570383f5b68c9e9ce814bc34dd0f1d8df60a89c44105cf476a8ff0
        - nvcr.io/nvidia/mellanox/nvidia-k8s-ipam@sha256:f3618a6bf879057dd3e63ae0bef5bad3fecc5f5548430cf5aa8745287c71e063
        - nvcr.io/nvidia/mellanox/sriov-network-device-plugin@sha256:16230372aa23ae025f7b5fa5ac092bbf58c8040bf66e162f7977469ba7322bcc
        - nvcr.io/nvidia/mellanox/k8s-rdma-shared-dev-plugin@sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:8f6a0c704e40e383079a7d9fd6b06d60af168e3ebf3cb98175f952a3c404a9a8
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:c6c0ef891b8dd381c002976b202ffe1c8d7d35710d812dbc3d31151a913b3fd4
        version: 25.10.0
      entries:
      - name: nvidia-network-operator.v25.10.0
        version: 25.10.0
      name: v25.10
    - currentCSV: nvidia-network-operator.v25.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "HostDeviceNetwork",
                "metadata": {
                  "name": "example-hostdevice-network"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.3.225/28\",\n  \"exclude\": [\n   \"192.168.3.229/30\",\n   \"192.168.3.236/32\"\n  ]\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "hostdev"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "IPoIBNetwork",
                "metadata": {
                  "name": "example-ipoibnetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.6.225/28\",\n  \"exclude\": [\n   \"192.168.6.229/30\",\n   \"192.168.6.236/32\"\n  ]\n}\n",
                  "master": "ibs3f1",
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "MacvlanNetwork",
                "metadata": {
                  "name": "example-macvlannetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.2.225/24\",\n  \"exclude\": [\n   \"192.168.2.229/30\",\n   \"192.168.2.236/32\"\n  ]\n}\n",
                  "master": "ens2f0",
                  "mode": "bridge",
                  "mtu": 1500,
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "NicClusterPolicy",
                "metadata": {
                  "name": "nic-cluster-policy"
                },
                "spec": {
                  "ofedDriver": {
                    "image": "doca-driver",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 30
                    },
                    "readinessProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 30
                    },
                    "repository": "nvcr.io/nvidia/mellanox",
                    "startupProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 20
                    },
                    "terminationGracePeriodSeconds": 300,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": true,
                        "enable": true,
                        "force": true,
                        "podSelector": "",
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1
                    },
                    "version": "doca3.1.0-25.07-0.9.7.0-0"
                  },
                  "rdmaSharedDevicePlugin": {
                    "config": "{\n  \"configList\": [\n    {\n      \"resourceName\": \"rdma_shared_device_a\",\n      \"rdmaHcaMax\": 63,\n      \"selectors\": {\n        \"vendors\": [\"15b3\"]\n      }\n    }\n  ]\n}\n",
                    "image": "k8s-rdma-shared-dev-plugin",
                    "repository": "nvcr.io/nvidia/mellanox",
                    "version": "sha256:a87096761d155eeb6f470e042d2d167bb466d57e63b4aba957f57d745e15a9b2"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: nvcr.io/nvidia/cloud-native/network-operator@sha256:51270965284cceeda659fb1098e70a888b39664ceade7e9d455fb95ac85914b7
          createdAt: "2025-08-21T19:12:20Z"
          description: Deploy and manage NVIDIA networking resources in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-network-operator
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: https://github.com/Mellanox/network-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: HostDeviceNetwork
            name: hostdevicenetworks.mellanox.com
            version: v1alpha1
          - kind: IPoIBNetwork
            name: ipoibnetworks.mellanox.com
            version: v1alpha1
          - kind: MacvlanNetwork
            name: macvlannetworks.mellanox.com
            version: v1alpha1
          - kind: NicClusterPolicy
            name: nicclusterpolicies.mellanox.com
            version: v1alpha1
        description: |
          ## NVIDIA Network Operator
          The NVIDIA Network Operator simplifies the provisioning and management of NVIDIA networking resources  in a Kubernetes cluster. The operator automatically installs the required host networking software - bringing together all the needed components to provide high-speed network connectivity. These components include the NVIDIA networking driver, Kubernetes device plugin, CNI plugins, IP address management (IPAM) plugin and others.
          The NVIDIA Network Operator works in conjunction with the NVIDIA GPU Operator to deliver high-throughput, low-latency networking for scale-out, GPU computing clusters.

          The Network Operator uses Node Feature Discovery (NFD) labels in order to properly schedule resources.
          Nodes can be labelled manually or using the NFD Operator. An example of `NodeFeatureDiscovery`
          configuration is available in the documentation.
          The following NFD labels are used:
          `feature.node.kubernetes.io/pci-15b3.present` for nodes containing NVIDIA Networking hardware.
          `feature.node.kubernetes.io/pci-10de.present` for nodes containing NVIDIA GPU hardware.

          The Network Operator is open-source. For more information on contributions and release artifacts, see the [GitHub repo](https://github.com/Mellanox/network-operator/)
        displayName: NVIDIA Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sriov
        - networking
        links:
        - name: Network Operator Documentation
          url: https://docs.nvidia.com/networking/software/cloud-orchestration/index.html
        - name: GitHub repository
          url: https://github.com/Mellanox/network-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/network-operator/
        relatedImages:
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:423aea08b4a0f01e2e19b6a709e14347bd08f8274f40002e0224090dfa4904fc
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:30354799264480e1aee057397eef2c52b277bbc6872184e2b7b811f4152b3a67
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:5ad37cd5ae96153e6f87670f437ff5f6e44febe7bb6eaeb1a0f219e28284e53d
        - nvcr.io/nvidia/mellanox/ipoib-cni@sha256:7564ad1142c863e61f1dd84f5714deba9a7c6f6d85efb383ac3a2566eb4f4b71
        - nvcr.io/nvidia/mellanox/nic-configuration-operator-daemon@sha256:b78c15904cecd343fa48374757b3619b5cbdc22059d5ee9731da87e35b94a2e2
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-network-operator@sha256:2cc940711539edd93a23355dcb06365821d140346e1df248386a77667c0f47ea
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:f9d4b8358c68ba28f849ca710bf769c4327a639733c0ff30282ca33a744078f6
        - nvcr.io/nvidia/mellanox/nic-configuration-operator@sha256:03f34f7fde3f65ca7b214b66c6fdbc1250d4f3863f9c02b0fba78e8aa84efca3
        - nvcr.io/nvidia/mellanox/nvidia-k8s-ipam@sha256:3f692273c1598525b9c698c9d9cd463e5ddc55b638c6c031639f38786fc67475
        - nvcr.io/nvidia/mellanox/k8s-rdma-shared-dev-plugin@sha256:a87096761d155eeb6f470e042d2d167bb466d57e63b4aba957f57d745e15a9b2
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:9a831bfdf85f313b1f5749b7c9b2673bb8fff18b4ff768c9242dabaa4468e449
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:d41eea65b102dc5bb5792871ae212b59a65dae492ca109c52138d5626eba1ffd
        - nvcr.io/nvidia/mellanox/nic-feature-discovery@sha256:1330e3a7ea2491bc310bfc4766769389ceb56d050831bf9c145b7bfb6aba36c4
        - nvcr.io/nvidia/cloud-native/network-operator@sha256:51270965284cceeda659fb1098e70a888b39664ceade7e9d455fb95ac85914b7
        - nvcr.io/nvidia/doca/doca_telemetry@sha256:13c2a2d055e501c03c6451413b85476ceafbc2fbffc7443952294c196f3f89f3
        - nvcr.io/nvidia/mellanox/network-operator-init-container@sha256:02ee60ac6ee163acc97706bd4229d268f608a95bcbcb6fccee90ceb1d8a6c62b
        - nvcr.io/nvidia/mellanox/sriov-network-device-plugin@sha256:7508a160f3f124e0b78d2b4d5a52deca6b9f56e226fee957c4d156e425eb101a
        - nvcr.io/nvidia/mellanox/ib-kubernetes@sha256:1fa251979b5f5201af50bc7aa6936829103d742f42bfbf752f20852f5fe44dfb
        version: 25.7.0
      entries:
      - name: nvidia-network-operator.v25.7.0
        version: 25.7.0
      name: v25.7
    defaultChannel: stable
    packageName: nvidia-network-operator
    provider:
      name: NVIDIA
      url: https://github.com/Mellanox/network-operator/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: SynaXG Engineering Team
      provider-url: ""
    name: synaxg-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: synaxg-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "card.synaxg.app.com/v1",
                "kind": "SG3Reset",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "synaxg-operator",
                    "app.kubernetes.io/instance": "sg3reset-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sg3reset",
                    "app.kubernetes.io/part-of": "synaxg-operator"
                  },
                  "name": "sg3reset-sample"
                },
                "spec": {
                  "image": "registry.connect.redhat.com/synaxg/synaxg-reset-utility@sha256:4050d5731a21bbec6e26165b8dc2b7632577ffa376e7eb056aa3245cf9574753",
                  "sg3ResetList": [
                    {
                      "nodeName": "test",
                      "pciList": [
                        {
                          "enable": "false",
                          "pciAddr": "000d:01:00.0"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "card.synaxg.app.com/v1",
                "kind": "SG3Update",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "synaxg-operator",
                    "app.kubernetes.io/instance": "sg3update-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sg3update",
                    "app.kubernetes.io/part-of": "synaxg-operator"
                  },
                  "name": "sg3update-sample"
                },
                "spec": {
                  "image": "registry.connect.redhat.com/synaxg/synaxg-upgrade-utility@sha256:7ffec3249edd2467f2414c2ce4232e8e436278fd1b43a51b66f54b6ea10a60d1",
                  "sg3UpdateList": [
                    {
                      "nodeName": "test",
                      "pciList": [
                        {
                          "enable": "false",
                          "pciAddr": "000d:01:00.0",
                          "sdkImageAddr": "quay.io/synaxgcom/sdk-img@sha256:1ed57013f278e5a858f71f343649652dbd52b6f3cf451374e45b6ac427fa76f9"
                        }
                      ]
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/synaxg/synaxg-operator-utility@sha256:3b22a8022a97cb1ffdb47ffcc9d9d562601f48669aa14fd58cd8ba6128b39bd7
          createdAt: "2025-07-01T03:42:07Z"
          description: SynaXG Operator will work with the SuperMicro Server + SG3
            card  and Openshift Container Platform.The Marvell kernel module “octeon_ep”
            and “octeon_ep_vf” are necessary to the Operator. The Operator can send
            command of “reset” and “update” to SG3 board via the VF channel.As a result,
            users can realize the process of “reset card” and “update firmware” on
            the web GUI, and monitor the executing result.
          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"
          operators.openshift.io/valid-subscription: free text
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: SynaXG
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SG3Reset is the Schema for the sg3resets API
            displayName: SG3 Reset
            kind: SG3Reset
            name: sg3resets.card.synaxg.app.com
            version: v1
          - description: SG3Update is the Schema for the sg3updates API
            displayName: SG3 Update
            kind: SG3Update
            name: sg3updates.card.synaxg.app.com
            version: v1
        description: SynaXG Operator will work with the SuperMicro Server + SG3 card  and
          Openshift Container Platform.The Marvell kernel module “octeon_ep” and “octeon_ep_vf”
          are necessary to the Operator. The Operator can send command of “reset”
          and “update” to SG3 board via the VF channel.As a result, users can realize
          the process of “reset card” and “update firmware” on the web GUI, and monitor
          the executing result.
        displayName: SynaXG vDU card 102X Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vDU
        - 102X
        - SynaXG
        links:
        - name: Synaxg Operator
          url: https://synaxg-operator.domain
        maintainers:
        - email: notice@synaxg.com
          name: Mantosh Malhotra
        maturity: alpha
        provider:
          name: SynaXG Engineering Team
        relatedImages:
        - registry.connect.redhat.com/synaxg/synaxg-operator@sha256:ff3d9ab5506c4487e5b6697ffe960584aadfe9f16408e7976d345c3d93375171
        - registry.connect.redhat.com/synaxg/synaxg-reset-utility@sha256:4050d5731a21bbec6e26165b8dc2b7632577ffa376e7eb056aa3245cf9574753
        - registry.connect.redhat.com/synaxg/synaxg-upgrade-utility@sha256:7ffec3249edd2467f2414c2ce4232e8e436278fd1b43a51b66f54b6ea10a60d1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:38ee3484ba60bb474e7231e9d0718157386716cea7ffd6da6f32ddd551a5243d
        - quay.io/synaxgcom/sdk-img@sha256:1ed57013f278e5a858f71f343649652dbd52b6f3cf451374e45b6ac427fa76f9
        - registry.connect.redhat.com/synaxg/synaxg-operator-utility@sha256:3b22a8022a97cb1ffdb47ffcc9d9d562601f48669aa14fd58cd8ba6128b39bd7
        version: 1.2.0
      entries:
      - name: synaxg-operator.v1.2.0
        version: 1.2.0
      name: alpha
    defaultChannel: alpha
    packageName: synaxg-operator
    provider:
      name: SynaXG Engineering Team
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: application-services-metering-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: application-services-metering-operator.v0.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "applicationservices.redhat.com/v1",
                "kind": "Meter",
                "metadata": {
                  "name": "app-services-metrics-example"
                },
                "spec": {
                  "includeInfrastructure": false,
                  "meterCollectionEnabled": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Application Runtime
          certified: "false"
          containerImage: quay.io/redhat-developer/application-services-metering-operator:0.6.1
          createdAt: "2021-09-28T13:00:00Z"
          description: Collect the core usage of products from the Application Services
            portfolio into a single metric labeled by Runtimes, Integration, and Automation.
          repository: https://github.com/redhat-developer/application-services-metering-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Meter
            displayName: Meter
            kind: Meter
            name: meters.applicationservices.redhat.com
            version: v1
        description: |-
          ## About the managed application

          There is no managed application created with this operator.

          ## About this Operator

          The metering operator watches pods for predetermined labels, across a cluster or namespace(s).
          The label schema for Red Hat Application Services is in the format:

          * `com.company=Red_Hat`
          * `rht.comp=PAM`
          * `rht.comp_ver=7.10`
          * `rht.prod_name=Red_Hat_Process_Automation`
          * `rht.prod_ver=7.11`
          * `rht.subcomp=rhpam-kogito-runtime`
          * `rht.subcomp_t=application`

          It's important not to remove labels as the operator will cease monitoring those pods.

          The operator exposes a metric named: `appsvcs_cpu_usage_cores`
          The metric has a label for product category, these are Runtimes, Integration and Automation.
          There is a prometheus rule using the metric to group by product name, `appsvcs_cores_by_product:sum`.

          The operator utilises the OpenShift Monitoring Stack to provide usage observability via cloud.redhat.com

          ## Prerequisites for enabling this Operator

          None.
        displayName: Application Services Metering Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - metering
        - operator
        links:
        - name: Red Hat Application Services portfolio
          url: https://www.redhat.com/en/products/middleware
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/redhat-developer/application-services-metering-operator:0.6.1
        - quay.io/openshift-community-operators/application-services-metering-operator@sha256:c3600cc8cd789df1f3c8f48bb3b1bc4c9cbf0285b6f6ce06f1d563c52f50915e
        version: 0.6.1
      entries:
      - name: application-services-metering-operator.v0.6.1
        version: 0.6.1
      - name: application-services-metering-operator.v0.6.0
        version: 0.6.0
      name: alpha
    defaultChannel: alpha
    packageName: application-services-metering-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: ""
    name: awss3-operator-registry
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: awss3operator.1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/screeley44/aws-s3-provisioner:v1.0.0
          createdAt: "2019-05-02 16:12:00"
          description: Manage the full lifecycle of installing, configuring and managing
            AWS S3 Provisioner.
          repository: https://github.com/yard-turkey/aws-s3-provisioner
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          required:
          - description: instance of an AWS S3 Bucket
            displayName: Object Bucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
          - description: Request for an AWS S3 Bucket
            displayName: Object Bucket Claim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
        description: |
          AWS S3 Operator will deploy the AWS S3 Provisioner which will dynamically or statically
          provision AWS S3 Bucket storage and access. The operator deploys the ObjectBucket (OB) and ObjectBucketClaim (OBC)
          CustomResourceDefinitions. The OB/OBC model follows the traditional Kubernetes PV/PVC pattern, when an OBC is detected
          the operator will act on the OBC to either provision a brand new S3 Bucket in AWS or gain access to an existing
          S3 Bucket in AWS. The operator produces an OB and ConfigMap and Secret which can then be consumed by application pods.

          **Important Note**: Currently, while in preview, this operator does not
          support automatic upgrades. You must remove the old version of the operator
          manually before installing a new version.
          ## Using AWS S3 Operator

          ### Administrator Creates Secret
          This secret will contain the elevated/admin privileges needed by the provisioner
          to properly access and create S3 Buckets and IAM users and policies. The AWS Access ID
          and AWS Secret Key will be needed for this.
          1. Create the Kubernetes Secret for the Provisioner's Owner Access.
          ```yaml
          apiVersion: v1
          kind: Secret
          metadata:
            name: s3-bucket-owner [1]
            namespace: s3-provisioner [2]
          type: Opaque
          data:
            AWS_ACCESS_KEY_ID: *base64 encoded value* [3]
            AWS_SECRET_ACCESS_KEY: *base64 encoded value* [4]
          ```
          1. Name of the secret, this will be referenced in StorageClass.
          1. Namespace where the Secret will exist.
          1. Your AWS_ACCESS_KEY_ID base64 encoded.
          1. Your AWS_SECRET_ACCESS_KEY base64 encoded.
          ```
           # kubectl create -f creds.yaml
          secret/s3-bucket-owner created
          ```
          ### Administrator Creates StorageClass
          The StorageClass defines the name of the provisioner and holds other properties that are needed to provision a new bucket, including
          the Owner Secret and Namespace, and the AWS Region.
          #### Greenfield Example:
          For Greenfield, a new, dynamic bucket will be generated.
          1. Create the Kubernetes StorageClass for the Provisioner.
          ```yaml
          kind: StorageClass
          apiVersion: storage.k8s.io/v1
          metadata:
            name: s3-buckets [1]
          provisioner: aws-s3.io/bucket [2]
          parameters:
            region: us-west-1 [3]
            secretName: s3-bucket-owner [4]
            secretNamespace: s3-provisioner [5]
          reclaimPolicy: Delete [6]
          ```
          1. Name of the StorageClass, this will be referenced in the User ObjectBucketClaim.
          1. Provisioner name
          1. AWS Region that the StorageClass will serve
          1. Name of the bucket owner Secret created above
          1. Namespace where the Secret will exist
          1. reclaimPolicy (Delete or Retain) indicates if the bucket can be deleted when the OBC is deleted.
          **NOTE:** the absence of the `bucketName` Parameter key in the storage class indicates this is a new bucket and its name is based on the bucket name fields in the OBC.
          ```
           # kubectl create -f storageclass-greenfield.yaml
          storageclass.storage.k8s.io/s3-buckets created
          ```
          #### Brownfield Example:
          For brownfield, the StorageClass defines the name of the provisioner and the name of the existing bucket. It also includes other properties needed by the target
          provisioner, including: the Owner Secret and Namespace, and the AWS Region
          1. Create the Kubernetes StorageClass for the Provisioner.
          ```yaml
          kind: StorageClass
          apiVersion: storage.k8s.io/v1
          metadata:
            name: s3-existing-buckets [1]
          provisioner: aws-s3.io/bucket [2]
          parameters:
            bucketName: my-existing-bucket [3]
            region: us-west-1 [4]
            secretName: s3-bucket-owner [5]
            secretNamespace: s3-provisioner [6]
          ```
          1. Name of the StorageClass, this will be referenced in the User ObjectBucketClaim.
          1. Provisioner name
          1. Name of the existing bucket
          1. AWS Region that the StorageClass will serve
          1. Name of the bucket owner Secret created above
          1. Namespace for that bucket owner secret
          **NOTE:** the storage class's `reclaimPolicy` is ignored for existing buckets.
          ```
           # kubectl create -f storageclass-brownfield.yaml
          storageclass.storage.k8s.io/s3-buckets created
          ```
          ### User Creates ObjectBucketClaim
          An ObjectBucketClaim follows the same concept as a PVC, in that
          it is a request for Object Storage, the user doesn't need to
          concern him/herself with the underlying storage, just that
          they need access to it. The user will work with the cluster/storage
          administrator to get the proper StorageClass needed and will
          then request access via the OBC.
          #### Greenfield Request Example:
          1. Create the ObjectBucketClaim.
          ```yaml
          apiVersion: objectbucket.io/v1alpha1
          kind: ObjectBucketClaim
          metadata:
            name: myobc [1]
            namespace: s3-provisioner [2]
          spec:
            generateBucketName: mybucket [3]
            bucketName: my-awesome-bucket [4]
            storageClassName: s3-buckets [5]
          ```
          1. Name of the OBC
          1. Namespace of the OBC
          1. Name prepended to a random string used to generate a bucket name. It is ignored if bucketName is defined
          1. Name of new bucket which must be unique across all AWS regions, otherwise an error occurs when creating the bucket. If present, this name overrides `generateName`
          1. StorageClass name
          **NOTE:** if both `generateBucketName` and `bucketName` are omitted, and the storage class does _not_ define a bucket name, then a new, random bucket name is generated with no prefix.
          ```
           # kubectl create -f obc-brownfield.yaml
          objectbucketclaim.objectbucket.io/myobc created
          ```
          #### Brownfield Request Example:
          1. Create the ObjectBucketClaim.
          ```yaml
          apiVersion: objectbucket.io/v1alpha1
          kind: ObjectBucketClaim
          metadata:
            name: myobc [1]
            namespace: s3-provisioner [2]
          spec:
            storageClassName: s3-existing-buckets [3]
          ```
          1. Name of the OBC
          1. Namespace of the OBC
          1. StorageClass name
          **NOTE:** in the OBC here there is no reference to the bucket's name. This is defined in the storage class and is not a concern of the user creating the claim to this bucket.  An OBC does have fields for defining a bucket name for greenfield use only.
          ```
           # kubectl create -f obc-brownfield.yaml
          objectbucketclaim.objectbucket.io/myobc created
          ```
          ### Results and Recap
          Let's pause for a moment and digest what just happened.
          After creating the OBC, and assuming the S3 provisioner is running, we now have
          the following Kubernetes resources:
          .  a global ObjectBucket (OB) which contains: bucket endpoint info (including region and bucket name), a reference to the OBC, and a reference to the storage class. Unique to S3, the OB also contains the bucket Amazon Resource Name (ARN).Note: there is always a 1:1 relationship between an OBC and an OB.
          .  a ConfigMap in the same namespace as the OBC, which contains the same endpoint data found in the OB.
          .  a Secret in the same namespace as the OBC, which contains the AWS key-pairs needed to access the bucket.
          And of course, we have a *new* AWS S3 Bucket which you should be able to see via the AWS Console.
          *ObjectBucket*
          ```yaml
           # kubectl get ob obc-s3-provisioner-my-awesome-bucket -o yaml
          apiVersion: objectbucket.io/v1alpha1
          kind: ObjectBucket
          metadata:
            creationTimestamp: "2019-04-03T15:42:22Z"
            generation: 1
            name: obc-s3-provisioner-my-awesome-bucket
            resourceVersion: "15057"
            selfLink: /apis/objectbucket.io/v1alpha1/objectbuckets/obc-s3-provisioner-my-awesome-bucket
            uid: 0bfe8e84-576d-4c4e-984b-f73c4460f736
          spec:
            Connection:
              additionalState:
                ARN: arn:aws:iam::<accountid>:policy/my-awesome-bucket-vSgD5 [1]
                UserName: my-awesome-bucket-vSgD5 [2]
              endpoint:
                additionalConfig: null
                bucketHost: s3-us-west-1.amazonaws.com
                bucketName: my-awesome-bucket [3]
                bucketPort: 443
                region: us-west-1
                ssl: true
                subRegion: ""
            claimRef: null [4]
            reclaimPolicy: null
            storageClassName: s3-buckets [5]
          ```
          1. The AWS Policy created for this user and bucket.
          1. The new user generated by the Provisioner to access this existing bucket.
          1. The bucket name.
          1. The reference to the OBC (not filled in yet).
          1. The reference to the StorageClass used.
          *ConfigMap*
          ```yaml
           # kubectl get cm myobc -n s3-provisioner -o yaml
          apiVersion: v1
          data:
            BUCKET_HOST: s3-us-west-1.amazonaws.com [1]
            BUCKET_NAME: my-awesome-bucket [2]
            BUCKET_PORT: "443"
            BUCKET_REGION: us-west-1
            BUCKET_SSL: "true"
            BUCKET_SUBREGION: ""
          kind: ConfigMap
          metadata:
            creationTimestamp: "2019-04-01T19:11:38Z"
            finalizers:
            - objectbucket.io/finalizer
            name: my-awesome-bucket
            namespace: s3-provisioner
            resourceVersion: "892"
            selfLink: /api/v1/namespaces/s3-provisioner/configmaps/my-awesome-bucket
            uid: 2edcc58a-aff8-4a29-814a-ffbb6439a9cd
          ```
          1. The AWS S3 host.
          1. The name of the new bucket we are gaining access to.
          *Secret*
          ```yaml
           # kubectl get secret my-awesome-bucket -n s3-provisioner -o yaml
          apiVersion: v1
          data:
            AWS_ACCESS_KEY_ID: *the_new_access_id* [1]
            AWS_SECRET_ACCESS_KEY: *the_new_access_key_value* [2]
          kind: Secret
          metadata:
            creationTimestamp: "2019-04-03T15:42:22Z"
            finalizers:
            - objectbucket.io/finalizer
            name: my-awesome-bucket
            namespace: s3-provisioner
            resourceVersion: "15058"
            selfLink: /api/v1/namespaces/s3-provisioner/secrets/screeley-provb-5
            uid: 225c71a5-9d75-4ccc-b41f-bfe91b272a13
          type: Opaque
          ```
          1. The new generated AWS Access Key ID.
          1. The new generated AWS Secret Access Key.
          What happened in AWS? The first thing we do on any OBC request is
          create a new IAM user and generate Access ID and Secret Keys.
          This allows us to also better control ACLs. We also create a policy
          in IAM which we then attach to the user and bucket. We also created a new bucket, called *my-awesome-bucket*.
          When the OBC is deleted all of its Kubernetes and AWS resources will also be deleted, which includes:
          the generated OB, Secret, ConfigMap, IAM user, and policy.
          If the _retainPolicy_ on the StorageClass for this bucket is *"Delete"*, then, in addition to the above cleanup, the physical bucket is also deleted.
          **NOTE:** The actual bucket is only deleted if the Storage Class's _reclaimPolicy_ is "Delete".
          ### User Creates Pod
          Now that we have our bucket and connection/access information, a pod
          can be used to access the bucket. This can be done in several different
          ways, but the key here is that the provisioner has provided the proper
          endpoints and keys to access the bucket. The user then simply references
          the keys.
          1. Create a Sample Pod to Access the Bucket.
          ```yaml
          apiVersion: v1
          kind: Pod
          metadata:
            name: photo1
            labels:
              name: photo1
          spec:
            containers:
            - name: photo1
              image: docker.io/screeley44/photo-gallery:latest
              imagePullPolicy: Always
              envFrom:
              - configMapRef:
                  name: my-awesome-bucket <1>
              - secretRef:
                  name: my-awesome-bucket <2>
              ports:
              - containerPort: 3000
                protocol: TCP
          ```
          1. Name of the generated configmap from the provisioning process
          1. Name of the generated secret from the provisioning process
          *[Note]* Generated ConfigMap and Secret are same name as the OBC!
          Lastly, expose the pod as a service so you can access the url from a browser. In this example,
          I exposed as a LoadBalancer
          ```
            # kubectl expose pod photo1 --type=LoadBalancer --name=photo1 -n your-namespace
          ```
          To access via a url use the EXTERNAL-IP
          ```
            # kubectl get svc photo1
            NAME                         TYPE           CLUSTER-IP       EXTERNAL-IP                                                               PORT(S)          AGE
            photo1                       LoadBalancer   100.66.124.105   a00c53ccb3c5411e9b6550a7c0e50a2a-2010797808.us-east-1.elb.amazonaws.com   3000:32344/TCP   6d
          ```
          **NOTE:** This is just one example of a Pod that can utilize the bucket information,
          there are several ways that these pod applications can be developed and therefore
          the method of getting the actual values needed from the Secrets and ConfigMaps
          will vary greatly, but the idea remains the same, that the pod consumes the generated
          ConfigMap and Secret created by the provisioner.
        displayName: AWS S3 Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - awss3provisioner
        - aws
        - S3
        - provisioner
        - buckets
        links:
        - name: AWS S3 Provisioner
          url: https://github.com/yard-turkey/aws-s3-provisioner
        - name: Provisioner Examples
          url: https://github.com/yard-turkey/aws-s3-provisioner/tree/master/examples
        - name: Operator Documentation
          url: https://github.com/yard-turkey/awss3operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/openshift-community-operators/awss3-operator-registry@sha256:9ab3a2cd00b8704a8bae8e9b75f2a95d0a3e60fa3cb52589db8a4e7641b73027
        - quay.io/screeley44/aws-s3-provisioner:v1.0.0
        version: 1.0.1
      entries:
      - name: awss3operator.1.0.1
        version: 1.0.1
      name: alpha
    defaultChannel: alpha
    packageName: awss3-operator-registry
    provider:
      name: Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: machine-deletion-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: machine-deletion-remediation.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediation",
                "metadata": {
                  "name": "machinedeletionremediation-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediationTemplate",
                "metadata": {
                  "name": "machinedeletionremediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/machine-deletion-remediation-operator:v0.1.0
          createdAt: "2023-05-11 10:46:12"
          description: Machine Deletion Remediation operator for reprovisioning unhealthy
            nodes using the Machine API.
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/machine-deletion-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MachineDeletionRemediation is the Schema for the machinedeletionremediations
              API
            displayName: Machine Deletion Remediation
            kind: MachineDeletionRemediation
            name: machinedeletionremediations.machine-deletion-remediation.medik8s.io
            version: v1alpha1
          - description: MachineDeletionRemediationTemplate is the Schema for the
              machinedeletionremediationtemplates API
            displayName: Machine Deletion Remediation Template
            kind: MachineDeletionRemediationTemplate
            name: machinedeletionremediationtemplates.machine-deletion-remediation.medik8s.io
            version: v1alpha1
        description: |
          Machine Deletion Remediation (MDR) is a remediator designed to reprovision unhealthy
          nodes using the Machine API. MDR can be used together with NodeHealthCheck (NHC),
          which detects the unhealthy Node and creates the Custom Resource for MDR.

          # How it works
          MDR follows the annotation on the Node to the associated Machine object, confirms
          that it has an owning controller (e.g. MachineSetController), that will recreate the
          Machine once deleted, and then proceeds with deleting the Machine.

          # How to use MDR with NHC
          Since NHC comes with Self Node Remediation as the default remediation mechanism,
          it needs to be configured to use MDR with the following steps

          - Create the MDR Template CR
          - Modify NHC's `.spec.remediationTemplate` to use MDR as it's remediator

          see https://github.com/medik8s/machine-deletion-remediation#readme for configuration examples.
        displayName: Machine Deletion Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - machine
        - deletion
        - remediation
        - mdr
        links:
        - name: Machine Deletion Remediation
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/machine-deletion-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/openshift-community-operators/machine-deletion-remediation@sha256:34d1e6cbfaf248a7b28c2a6e6a39f3fe46c183b9c38ac5fbb98eb3f421ba903c
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/medik8s/machine-deletion-remediation-operator:v0.1.0
        version: 0.1.0
      entries:
      - name: machine-deletion-remediation.v0.1.0
        version: 0.1.0
      name: candidate
    - currentCSV: machine-deletion-remediation.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediation",
                "metadata": {
                  "name": "machinedeletionremediation-sample"
                },
                "spec": {},
                "status": {
                  "conditions": [
                    {
                      "reason": "RemediationFinished",
                      "status": false,
                      "type": "Processing"
                    },
                    {
                      "reason": "RemediationFinished",
                      "status": true,
                      "type": "Succeeded"
                    },
                    {
                      "reason": "MachineDeletionOnBareMetalProviderReason",
                      "status": false,
                      "type": "PermanentNodeDeletionExpected"
                    }
                  ]
                }
              },
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediationTemplate",
                "metadata": {
                  "name": "machinedeletionremediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/machine-deletion-remediation-operator:v0.5.0
          createdAt: "2025-11-24 11:43:35"
          description: Machine Deletion Remediation operator for reprovisioning unhealthy
            nodes using the Machine API.
          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.skipRange: '>=0.0.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/machine-deletion-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MachineDeletionRemediation is the Schema for the machinedeletionremediations
              API
            displayName: Machine Deletion Remediation
            kind: MachineDeletionRemediation
            name: machinedeletionremediations.machine-deletion-remediation.medik8s.io
            version: v1alpha1
          - description: MachineDeletionRemediationTemplate is the Schema for the
              machinedeletionremediationtemplates API
            displayName: Machine Deletion Remediation Template
            kind: MachineDeletionRemediationTemplate
            name: machinedeletionremediationtemplates.machine-deletion-remediation.medik8s.io
            version: v1alpha1
        description: |
          Machine Deletion Remediation (MDR) is a remediator designed to reprovision unhealthy
          nodes using the Machine API. MDR can be used together with NodeHealthCheck (NHC),
          which detects the unhealthy Node and creates the Custom Resource for MDR.

          # How it works
          MDR follows the annotation on the Node to the associated Machine object, confirms
          that it has an owning controller (e.g. MachineSetController), that will recreate the
          Machine once deleted, and then proceeds with deleting the Machine.

          # How to use MDR with NHC
          To use MDR as remediation mechanism for NHC, it needs to be configured with the
          following steps:

          - Create the MDR Template CR
          - Modify NHC's `.spec.remediationTemplate` to use MDR as it's remediator

          see https://github.com/medik8s/machine-deletion-remediation#readme for configuration examples.
        displayName: Machine Deletion Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - machine
        - deletion
        - remediation
        - mdr
        links:
        - name: Machine Deletion Remediation
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/machine-deletion-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/machine-deletion-remediation@sha256:2f945457449d5e8861cf62af3e0a487cfcfb039ab62f0c4a44881e7506bba6b5
        - quay.io/medik8s/machine-deletion-remediation-operator:v0.5.0
        version: 0.5.0
      entries:
      - name: machine-deletion-remediation.v0.5.0
        version: 0.5.0
      - name: machine-deletion-remediation.v0.4.0
        version: 0.4.0
      - name: machine-deletion-remediation.v0.3.0
        version: 0.3.0
      - name: machine-deletion-remediation.v0.2.1
        version: 0.2.1
      - name: machine-deletion-remediation.v0.2.0
        version: 0.2.0
      name: stable
    defaultChannel: stable
    packageName: machine-deletion-remediation
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: aws-efs-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-efs-csi-driver-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-aws-efs-csi-driver-rhel9-operator@sha256:f5a64edc71e8472da9b984c6b8d1efbf23faa3ec28814d28eb9204e87afdb072
          createdAt: "2021-07-14T00:00:00Z"
          description: Install and configure AWS EFS CSI driver.
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=4.9.0-0 <4.20.0-202512090918'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/aws-efs-csi-driver-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          AWS EFS CSI Driver Operator provides AWS Elastic File Service (EFS) CSI Driver that enables you to create and mount AWS EFS PersistentVolumes.

          Please follow [AWS EFS CSI Driver Operator documentation](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html) to:

          1. [Install the operator](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html#persistent-storage-csi-olm-operator-install_persistent-storage-csi-aws-efs). This section also covers details about configuring an AWS role in OCP cluster that uses Secure Token Services (STS).

          2. [Install the AWS EFS CSI driver using the operator](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html#persistent-storage-csi-efs-driver-install_persistent-storage-csi-aws-efs)

          3. Finally, [create a StorageClass](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html#storage-create-storage-class_persistent-storage-csi-aws-efs) that enables dynamic provisioning of PersistentVolumes.
        displayName: AWS EFS CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - efs
        links:
        - name: Documentation
          url: https://github.com/openshift/aws-efs-csi-driver-operator
        - name: Source Repository
          url: https://github.com/openshift/aws-efs-csi-driver-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:ec763a4e90cb4b256a7210cd2e30949a7bc8e83ee04a95c649270febcc892210
        - registry.redhat.io/openshift4/ose-aws-efs-csi-driver-operator-bundle@sha256:ca5538fdd21cf27dcbcfdc1168c76ad2c2ba2b8bae97e2d22f07e16a7212259f
        - registry.redhat.io/openshift4/ose-aws-efs-csi-driver-container-rhel9@sha256:583c12b4a5e07fc8af95afef764d6ea9da437d7adbdc910825b3f44e928ca110
        - registry.redhat.io/openshift4/ose-aws-efs-csi-driver-rhel9-operator@sha256:f5a64edc71e8472da9b984c6b8d1efbf23faa3ec28814d28eb9204e87afdb072
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        version: 4.20.0-202512090918
      entries:
      - name: aws-efs-csi-driver-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: aws-efs-csi-driver-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: aws-efs-csi-driver-operator.v4.20.0-202511191615
        version: 4.20.0-202511191615
      - name: aws-efs-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: aws-efs-csi-driver-operator.v4.20.0-202511040554
        version: 4.20.0-202511040554
      - name: aws-efs-csi-driver-operator.v4.20.0-202510212154
        version: 4.20.0-202510212154
      - name: aws-efs-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: aws-efs-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      operatorframework.io/os.zos: supported
      provider: Red Hat
      provider-url: ""
    name: hawtio-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hawtio-operator.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.14.0",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/hawtio/operator:0.5.0
          createdAt: "2022-04-08T00:00:00Z"
          description: Hawtio eases the discovery and management of Java applications
            deployed on OpenShift.
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Hawtio Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Hawtio
          ==============

          The Hawtio console eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between the Hawtio console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Hawtio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Hawtio Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The Hawtio team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - docker.io/hawtio/operator:0.5.0
        - quay.io/openshift-community-operators/hawtio-operator@sha256:38b36745547a08afd10e1620f8243e6f1ce18a3eb8883ec78cd631577177c5ee
        version: 0.5.0
      entries:
      - name: hawtio-operator.v0.5.0
        version: 0.5.0
      - name: hawtio-operator.v0.4.0
        version: 0.4.0
      name: alpha
    - currentCSV: hawtio-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/hawtio/operator:1.2.0
          createdAt: "2024-12-02T17:22:48Z"
          description: Hawtio eases the discovery and management of Java applications
            deployed on OpenShift.
          olm.skipRange: '>=1.0.0 <1.0.2'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Hawtio console that eases the discovery and management
              of hawtio-enabled applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Hawtio
          ==============

          The Hawtio console eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between the Hawtio console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#jvm-agent).
        displayName: Hawtio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Hawtio Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The Hawtio team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hawtio-operator@sha256:306ab7846b4c65dd9cb21d903a6cfc9b6f8f2ad409fffbdd136b30ad5989a255
        - quay.io/hawtio/operator:1.2.0
        version: 1.2.0
      entries:
      - name: hawtio-operator.v1.2.0
        version: 1.2.0
      - name: hawtio-operator.v1.1.1
        version: 1.1.1
      - name: hawtio-operator.v1.1.0
        version: 1.1.0
      - name: hawtio-operator.v1.0.1
        version: 1.0.1
      - name: hawtio-operator.v1.0.0
        version: 1.0.0
      - name: hawtio-operator.v0.5.0
        version: 0.5.0
      - name: hawtio-operator.v0.4.0
        version: 0.4.0
      name: latest
    - currentCSV: hawtio-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/hawtio/operator:1.2.0
          createdAt: "2024-12-02T17:22:48Z"
          description: Hawtio eases the discovery and management of Java applications
            deployed on OpenShift.
          olm.skipRange: '>=1.0.0 <1.0.2'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Hawtio console that eases the discovery and management
              of hawtio-enabled applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Hawtio
          ==============

          The Hawtio console eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between the Hawtio console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#jvm-agent).
        displayName: Hawtio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Hawtio Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The Hawtio team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hawtio-operator@sha256:306ab7846b4c65dd9cb21d903a6cfc9b6f8f2ad409fffbdd136b30ad5989a255
        - quay.io/hawtio/operator:1.2.0
        version: 1.2.0
      entries:
      - name: hawtio-operator.v1.2.0
        version: 1.2.0
      - name: hawtio-operator.v1.1.1
        version: 1.1.1
      - name: hawtio-operator.v1.1.0
        version: 1.1.0
      - name: hawtio-operator.v1.0.1
        version: 1.0.1
      - name: hawtio-operator.v1.0.0
        version: 1.0.0
      - name: hawtio-operator.v0.5.0
        version: 0.5.0
      - name: hawtio-operator.v0.4.0
        version: 0.4.0
      name: stable-v1
    defaultChannel: stable-v1
    packageName: hawtio-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Kurrent, Inc
      provider-url: https://kurrent.io
    name: kurrentdb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kurrentdb-operator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "kubernetes.kurrent.io/v1",
                "kind": "KurrentDB",
                "metadata": {
                  "name": "insecure",
                  "namespace": "kurrent"
                },
                "spec": {
                  "replicas": 1,
                  "image": "registry.connect.redhat.com/kurrent-io/kurrentdb@sha256:4dc9fcb41de27695ba04731e768fb18cde2f1c7882f8787dfce3d32b93520131",
                  "resources": {
                    "requests": {
                      "cpu": "1000m",
                      "memory": "1Gi"
                    }
                  },
                  "storage": {
                    "volumeMode": "Filesystem",
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "512Mi"
                      }
                    }
                  },
                  "volumeSnapshotClassName": "e2e",
                  "network": {
                    "domain": "kurrent.dev",
                    "fqdnTemplate": "{podName}.{domain}",
                    "loadBalancer": {
                      "enabled": true
                    }
                  }
                }
              },
              {
                "apiVersion": "kubernetes.kurrent.io/v1",
                "kind": "KurrentDBBackup",
                "metadata": {
                  "name": "insecure",
                  "namespace": "kurrent"
                },
                "spec": {
                  "clusterName": "insecure"
                }
              },
              {
                "apiVersion": "kubernetes.kurrent.io/v1",
                "kind": "KurrentDBBackupSchedule",
                "metadata": {
                  "name": "my-schedule",
                  "namespace": "kurrent"
                },
                "spec": {
                  "schedule": "* * * * *",
                  "template": {
                    "spec": {
                      "clusterName": "insecure"
                    }
                  },
                  "keep": 10
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database, Streaming & Messaging, OpenShift Optional
          certified: "true"
          containerImage: registry.connect.redhat.com/kurrent-io/kurrentdb-operator@sha256:9e10c1f7055fc5bbe8e4d8289b247389d337a77a27d56232022695405a10b980
          createdAt: "2025-12-23T00:00:00Z"
          description: An operator to seamlessly deploy and manage KurrentDB clusters
            and backups.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: license required, contact us
            at https://www.kurrent.io/contact
          repository: https://github.com/kurrent-io/kurrentdb
          support: support@kurrent.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A declarative representation of a KurrentDB cluster.
            kind: KurrentDB
            name: kurrentdbs.kubernetes.kurrent.io
            version: v1
          - description: A VolumeSnapshot-based backup of a KurrentDB cluster.
            kind: KurrentDBBackup
            name: kurrentdbbackups.kubernetes.kurrent.io
            version: v1
          - description: A schedule for creating and retaining of KurrentDBBackup
              resources.
            kind: KurrentDBBackupSchedule
            name: kurrentdbbackupschedules.kubernetes.kurrent.io
            version: v1
        description: An operator to seamlessly deploy and manage KurrentDB clusters
          and backups.
        displayName: KurrentDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kurrent
        - event sourcing
        - database
        links:
        - name: Website
          url: https://kurrent.io
        - name: Documentation
          url: https://docs.kurrent.io/server/kubernetes-operator
        maintainers:
        - email: support@kurrent.io
          name: Kurrent, Inc
        maturity: stable
        minKubeVersion: 1.30.0
        nativeApis:
        - group: snapshot.storage.k8s.io
          kind: VolumeSnapshot
          version: v1
        - group: snapshot.storage.k8s.io
          kind: VolumeSnapshotClass
          version: v1
        provider:
          name: Kurrent, Inc
          url: https://kurrent.io
        relatedImages:
        - registry.connect.redhat.com/kurrent-io/dns@sha256:07e8771886b4e4ab7393dee7a56c4a6d2c2225ba0aeca25e47199da616c903e4
        - registry.connect.redhat.com/kurrent-io/kurrentdb-operator-bundle@sha256:929fc9043cf20eb2838c3d63598967bcfba264011e1b9a98c9d8a38821926edc
        - registry.connect.redhat.com/kurrent-io/kurrentdb-operator@sha256:9e10c1f7055fc5bbe8e4d8289b247389d337a77a27d56232022695405a10b980
        - registry.connect.redhat.com/kurrent-io/kurrentdb@sha256:4dc9fcb41de27695ba04731e768fb18cde2f1c7882f8787dfce3d32b93520131
        version: 1.5.0
      entries:
      - name: kurrentdb-operator.v1.5.0
        version: 1.5.0
      name: stable
    defaultChannel: stable
    packageName: kurrentdb-operator
    provider:
      name: Kurrent, Inc
      url: https://kurrent.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataStax
      provider-url: ""
    name: cass-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cass-operator.v1.23.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cassandra.datastax.com/v1beta1",
                "kind": "CassandraDatacenter",
                "metadata": {
                  "name": "dc1"
                },
                "spec": {
                  "clusterName": "development",
                  "config": {
                    "cassandra-yaml": {
                      "authenticator": "PasswordAuthenticator",
                      "authorizer": "CassandraAuthorizer",
                      "num_tokens": 16,
                      "role_manager": "CassandraRoleManager"
                    },
                    "jvm-server-options": {
                      "initial_heap_size": "1G",
                      "max_heap_size": "1G"
                    }
                  },
                  "managementApiAuth": {
                    "insecure": {}
                  },
                  "podTemplateSpec": {
                    "spec": {
                      "containers": [
                        {
                          "name": "cassandra"
                        }
                      ],
                      "securityContext": {}
                    }
                  },
                  "racks": [
                    {
                      "name": "rack1"
                    },
                    {
                      "name": "rack2"
                    },
                    {
                      "name": "rack3"
                    }
                  ],
                  "resources": {
                    "requests": {
                      "cpu": "1000m",
                      "memory": "2Gi"
                    }
                  },
                  "serverType": "cassandra",
                  "serverVersion": "4.1.2",
                  "size": 3,
                  "storageConfig": {
                    "cassandraDataVolumeClaimSpec": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "10Gi"
                        }
                      },
                      "storageClassName": "server-storage"
                    }
                  }
                }
              },
              {
                "apiVersion": "control.k8ssandra.io/v1alpha1",
                "kind": "CassandraTask",
                "metadata": {
                  "name": "example-cleanup"
                },
                "spec": {
                  "datacenter": {
                    "name": "dc2",
                    "namespace": "cass-operator"
                  },
                  "jobs": [
                    {
                      "command": "cleanup",
                      "name": "cleanup-run"
                    }
                  ]
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database,Big Data,OpenShift Optional
          certified: "true"
          containerImage: registry.connect.redhat.com/datastax/cass-operator@sha256:6abc6253b50a0d7f6bdd4b394d2bf96320a8845952aeb8f0bbed99863192ec52
          createdAt: "2025-03-20"
          description: |
            Simple provisioning, turn-key operations, and automated remediation of Apache Cassandra clusters
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/k8ssandra/cass-operator
          support: DataStax
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CassandraDatacenter is the Schema for the cassandradatacenters
              API
            displayName: Cassandra Datacenter
            kind: CassandraDatacenter
            name: cassandradatacenters.cassandra.datastax.com
            version: v1beta1
          - description: CassandraTask is the Schema for the cassandrajobs API
            displayName: Cassandra Task
            kind: CassandraTask
            name: cassandratasks.control.k8ssandra.io
            version: v1alpha1
        description: "## Apache Cassandra\n\nThe Apache Cassandra database is the
          right choice when you need scalability and\nhigh availability without compromising
          performance. Linear scalability and\nproven fault-tolerance on commodity
          hardware or cloud infrastructure make it the\nperfect platform for mission-critical
          data. Cassandra's support for replicating\nacross multiple datacenters is
          best-in-class, providing lower latency for your\nusers and the peace of
          mind of knowing that you can survive regional outages.\n\n## DataStax Enterprise\n\nThe
          most advanced distribution of Apache Cassandra™ on the market, with the\nenterprise
          functionality needed for serious production systems and backed up and\nsupported
          by the best distributed-experts in the world. It's one platform for\nall
          types of applications anywhere, any cloud, any model: key-value, graph,\ntabular,
          JSON.\n\nDataStax Enterprise is a fully integrated and optimized database,
          with graph,\nanalytics, and search included, all with a unified security
          model. Simply put,\nit's the only database capable of meeting today's demanding
          requirements\n\n## Operator Details\n\n`cass-operator` is designed as a
          modular operator for Apache Cassandra and\nderived  distributions. Apache
          Cassandra is a distributed database consisting of\nmultiple nodes working
          in concert to store data and process queries along a\nnumber of fault domains.
          `cass-operator` has the deployment of a Cassandra\ncluster around the logical
          domain of a datacenter with the `CassandraDatacenter`\ncustom resource.\n
          \   \nUpon submission of one of these resources it handles provisioning
          the underlying\nstateful sets (analogous to C\\* logical racks), services,
          and configuration.\nAdditionally through monitoring pod state via Kubernetes
          callbacks it handles day to day\noperations such as restarting failed processes,
          scaling clusters up, and deploying\nconfiguration changes in a rolling,
          non-disruptive, fashion.\n    \nThis operator is designed to be `Namespace`
          scoped. A single Kubernetes cluster may\nbe running multiple instances of
          this operator, in separate namespaces, to support\na number of C\\* clusters
          and environments. Configuration is simple with the usage of\nYAML based
          overrides in the Custom Resource paired with an `init` container.\n    \nIn
          C\\* clusters ordering and timing of certain operations are important to
          keep the system\nevenly distributed. `cass-operator` takes advantage of
          a sidecar process within the\nmain container to handle the orchestration
          of starting our main C* process."
        displayName: DataStax Kubernetes Operator for Apache Cassandra
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - k8ssandra
        - cass-operator
        - DataStax Enterprise
        - Apache Cassandra
        - DSE
        - C*
        - Cassandra
        links:
        - name: DataStax
          url: https://datastax.com
        - name: Operator GitHub Repo
          url: https://github.com/k8ssandra/cass-operator
        - name: Config Builder GitHub Repo
          url: https://github.com/datastax/cass-config-builder
        - name: Documentation [1]
          url: https://github.com/k8ssandra/cass-operator/tree/master/docs/user
        - name: Documentation [2]
          url: https://docs.datastax.com/en/cass-operator/doc/cass-operator/cassOperatorTOC.html
        maintainers:
        - email: cass-operator@datastax.com
          name: DataStax Operator Team
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: DataStax
        relatedImages:
        - registry.connect.redhat.com/datastax/cass-operator@sha256:6abc6253b50a0d7f6bdd4b394d2bf96320a8845952aeb8f0bbed99863192ec52
        - registry.connect.redhat.com/datastax/system-logger@sha256:3408620786e6265aa835be56f85aadc48b20060b2038dc21126f614685f77c6b
        - registry.connect.redhat.com/datastax/cass-operator-bundle@sha256:8d130a5f2407931dbc73e45a53610b95ceb04cb507b8f6519f630cada1c0da45
        version: 1.23.2
      entries:
      - name: cass-operator.v1.23.2
        version: 1.23.2
      name: stable
    defaultChannel: stable
    packageName: cass-operator
    provider:
      name: DataStax
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NeuVector
      provider-url: ""
    name: neuvector-certified-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: neuvector-operator.v1.5.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apm.neuvector.com/v1alpha1",
                "kind": "Neuvector",
                "metadata": {
                  "name": "neuvector"
                },
                "spec": {
                  "openshift": true,
                  "tag": "5.4.8",
                  "oem": "",
                  "imagePullSecrets": "",
                  "psp": false,
                  "rbac": true,
                  "serviceAccount": "default",
                  "leastPrivilege": false,
                  "global": {
                    "cattle": {
                      "url": ""
                    }
                  },
                  "bootstrapPassword": "",
                  "autoGenerateCert": true,
                  "defaultValidityPeriod": 365,
                  "internal": {
                    "certmanager": {
                      "enabled": false,
                      "secretname": "neuvector-internal"
                    },
                    "autoGenerateCert": true,
                    "autoRotateCert": true
                  },
                  "controller": {
                    "enabled": true,
                    "annotations": {},
                    "strategy": {
                      "type": "RollingUpdate",
                      "rollingUpdate": {
                        "maxSurge": 1,
                        "maxUnavailable": 0
                      }
                    },
                    "image": "registry.connect.redhat.com/neuvector/controller@sha256:b33ab222ee7a4e81387d7e85739f32ab9999bebeef58a795c513a6db53297108",
                    "imagePullPolicy": "IfNotPresent",
                    "replicas": 3,
                    "disruptionbudget": 0,
                    "schedulerName": "",
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "searchRegistries": "",
                    "env": [],
                    "affinity": {
                      "podAntiAffinity": {
                        "preferredDuringSchedulingIgnoredDuringExecution": [
                          {
                            "weight": 100,
                            "podAffinityTerm": {
                              "labelSelector": {
                                "matchExpressions": [
                                  {
                                    "key": "app",
                                    "operator": "In",
                                    "values": [
                                      "neuvector-controller-pod"
                                    ]
                                  }
                                ]
                              },
                              "topologyKey": "kubernetes.io/hostname"
                            }
                          }
                        ]
                      }
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "nodeSelector": {},
                    "apisvc": {
                      "ctrlServerPort": 10443,
                      "type": "",
                      "annotations": {},
                      "nodePort": "",
                      "route": {
                        "enabled": false,
                        "termination": "passthrough",
                        "host": "",
                        "tls": ""
                      }
                    },
                    "ranchersso": {
                      "enabled": false
                    },
                    "pvc": {
                      "enabled": false,
                      "existingClaim": false,
                      "accessModes": [
                        "ReadWriteMany"
                      ],
                      "storageClass": "",
                      "capacity": ""
                    },
                    "azureFileShare": {
                      "enabled": false,
                      "secretName": "",
                      "shareName": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "federation": {
                      "mastersvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      },
                      "managedsvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      }
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {
                        "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                      },
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "configmap": {
                      "enabled": false,
                      "data": ""
                    },
                    "secret": {
                      "enabled": false,
                      "data": {
                        "userinitcfg.yaml": {
                          "users": [
                            {
                              "Fullname": "admin",
                              "Password": "",
                              "Role": "admin"
                            }
                          ]
                        }
                      }
                    },
                    "certupgrader": {
                      "env": [],
                      "schedule": "",
                      "imagePullPolicy": "IfNotPresent",
                      "timeout": 3600,
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "prime": {
                      "enabled": false,
                      "image": {
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "1.0.9"
                      }
                    }
                  },
                  "enforcer": {
                    "enabled": true,
                    "image": "registry.connect.redhat.com/neuvector/enforcer@sha256:0061096cc49e87bc590933ed0d39db16606395cc6b6d2a45eddaa4fde3b74618",
                    "imagePullPolicy": "IfNotPresent",
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "env": [],
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/master"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/control-plane"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/etcd"
                      }
                    ],
                    "resources": {},
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "manager": {
                    "enabled": true,
                    "image": "registry.connect.redhat.com/neuvector/manager@sha256:624a467c261bd4ee094bdeddfe38f4786ea168bb96daef14155aeed0eac67a04",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "",
                    "env": {
                      "ssl": true,
                      "envs": []
                    },
                    "svc": {
                      "mgrServerPort": 8443,
                      "type": "ClusterIP",
                      "nodePort": "",
                      "loadBalancerIP": "",
                      "annotations": {}
                    },
                    "route": {
                      "enabled": true,
                      "termination": "passthrough",
                      "host": "",
                      "tls": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {},
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "topologySpreadConstraints": [],
                    "affinity": {},
                    "podLabels": {},
                    "podAnnotations": {},
                    "tolerations": [],
                    "nodeSelector": {},
                    "runAsUser": "",
                    "probes": {
                      "enabled": false,
                      "timeout": 1,
                      "periodSeconds": 10,
                      "startupFailureThreshold": 30
                    }
                  },
                  "cve": {
                    "updater": {
                      "enabled": true,
                      "secure": false,
                      "cacert": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                      "image": "registry.access.redhat.com/ubi8",
                      "imagePullPolicy": "IfNotPresent",
                      "schedule": "0 0 * * *",
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "scanner": {
                      "enabled": true,
                      "replicas": 3,
                      "dockerPath": "",
                      "strategy": {
                        "type": "RollingUpdate",
                        "rollingUpdate": {
                          "maxSurge": 1,
                          "maxUnavailable": 0
                        }
                      },
                      "image": "registry.connect.redhat.com/neuvector/scanner@sha256:7b8dd38328db215a27a0266714f10c046df3a2b0d58a56e65ac2020dc4244440",
                      "imagePullPolicy": "Always",
                      "priorityClassName": "",
                      "resources": {},
                      "topologySpreadConstraints": [],
                      "affinity": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "env": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": "",
                      "internal": {
                        "certificate": {
                          "secret": "",
                          "keyFile": "tls.key",
                          "pemFile": "tls.crt",
                          "caFile": "ca.crt"
                        }
                      },
                      "volumes": "",
                      "volumeMounts": ""
                    }
                  },
                  "resources": {},
                  "runtimePath": "",
                  "docker": {
                    "enabled": false,
                    "path": "/var/run/docker.sock"
                  },
                  "k3s": {
                    "enabled": false,
                    "runtimePath": "/run/k3s/containerd/containerd.sock"
                  },
                  "bottlerocket": {
                    "enabled": false,
                    "runtimePath": "/run/dockershim.sock"
                  },
                  "containerd": {
                    "enabled": false,
                    "path": "/var/run/containerd/containerd.sock"
                  },
                  "crio": {
                    "enabled": true,
                    "path": "/var/run/crio/crio.sock"
                  },
                  "admissionwebhook": {
                    "type": "ClusterIP"
                  },
                  "crdwebhooksvc": {
                    "enabled": true
                  },
                  "crdwebhook": {
                    "enabled": true,
                    "type": "ClusterIP"
                  },
                  "lease": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Networking, Security
          certified: "true"
          containerImage: registry.connect.redhat.com/neuvector/neuvector-operator@sha256:1a4f8921501f68b021b6a11698f007db175da9d8e14c7925ae12e14eb276bae9
          createdAt: "2020-12-02 14:19:21"
          description: NeuVector delivers the only cloud-native Kubernetes security
            platform with uncompromising end-to-end protection from DevOps vulnerability
            protection to automated run-time security, and featuring a true Layer
            7 container firewall.
          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"
          repository: https://github.com/neuvector/neuvector-operator
          support: support@neuvector.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Full LifeCycle Container Security Platform
            displayName: Neuvector
            kind: Neuvector
            name: neuvectors.apm.neuvector.com
            version: v1alpha1
        description: |+
          NeuVector delivers the only cloud-native Kubernetes security platform with uncompromising end-to-end protection from DevOps vulnerability protection to automated run-time security, and featuring a true Layer 7 container firewall.

          The NeuVector Operator runs  in the openshift container platform to deploy and manage the NeuVector Security cluster components. The NeuVector operator contains all necessary information to deploy NeuVector using helm charts. You simply need to install the NeuVector operator from the OpenShift embeded operator hub and create NeuVector instance. You can modify the NeuVector installation configuration by modifying yaml while creating the NeuVector instance such as imagePullSecrets, tag version, etc. Please refer to [github link](https://github.com/neuvector/neuvector-helm/tree/master/charts/core) for the values that can be modifed during installation. To upgrade to a newer version of NeuVector, just reapply the NeuVector instance with desired tag , which in turn pulls the specified NeuVector image tags and upgrades as per upgrade plan configured on the helm chart.  NeuVector Operator versions are tied to NeuVector product versions. Version 1.5.4 of the NeuVector Certified Operator deploys version 5.4.8 of NeuVector.

          **Complete below steps to Grant Service Account Access to the Privileged SCC before installation.**

          Create the NeuVector namespace

                   oc new-project  neuvector
          Login as system:admin account

                   oc login -u system:admin

          Privileged SCC is added to Service Account specified in the deploment yaml by Operator version 1.3.6 and above in new deployment. In case of upgrading NeuVector Operator from previous version to 1.3.6, please delete Privileged SCC before upgrading.

                   oc delete rolebinding -nneuvector system:openshift:scc:privileged

          The following info will be added in the Privileged SCC users:

                   - system:serviceaccount:neuvector:default

          In OpenShift 4.6+ use the following to check:

                   oc get rolebinding system:openshift:scc:privileged -n neuvector -o wide
                   system:openshift:scc:privileged   ClusterRole/system:openshift:scc:privileged   9m22s                    neuvector/default


          #Deploying the NeuVector Operator#


          Please refer to the instructions [here](https://github.com/neuvector/neuvector-operator/blob/master/README.md)


        displayName: NeuVector Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Monitoring
        - Networking
        - Security
        links:
        - name: NeuVector Operator
          url: https://github.com/neuvector/neuvector-operator
        maintainers:
        - email: support@neuvector.com
          name: A Full LifeCycle Container Security Platform
        maturity: beta
        provider:
          name: NeuVector
        relatedImages:
        - registry.connect.redhat.com/neuvector/controller@sha256:b33ab222ee7a4e81387d7e85739f32ab9999bebeef58a795c513a6db53297108
        - registry.connect.redhat.com/neuvector/enforcer@sha256:0061096cc49e87bc590933ed0d39db16606395cc6b6d2a45eddaa4fde3b74618
        - registry.connect.redhat.com/neuvector/manager@sha256:624a467c261bd4ee094bdeddfe38f4786ea168bb96daef14155aeed0eac67a04
        - registry.connect.redhat.com/neuvector/neuvector-operator-bundle@sha256:b27397b79fd28f2da9d7f20b5b004dfb3e1a995de092a8a755e5099fb87407cb
        - registry.connect.redhat.com/neuvector/neuvector-operator@sha256:1a4f8921501f68b021b6a11698f007db175da9d8e14c7925ae12e14eb276bae9
        - registry.connect.redhat.com/neuvector/scanner@sha256:7b8dd38328db215a27a0266714f10c046df3a2b0d58a56e65ac2020dc4244440
        - registry.access.redhat.com/ubi8@sha256:a444712276a635c9312d83a4ff7c6ee7f2ce08eeb5bd9ca291b5fdba257a5e63
        version: 1.5.4
      entries:
      - name: neuvector-operator.v1.5.4
        version: 1.5.4
      - name: neuvector-operator.v1.5.3
        version: 1.5.3
      - name: neuvector-operator.v1.5.2
        version: 1.5.2
      - name: neuvector-operator.v1.5.1
        version: 1.5.1
      - name: neuvector-operator.v1.5.0
        version: 1.5.0
      - name: neuvector-operator.v1.4.9
        version: 1.4.9
      - name: neuvector-operator.v1.4.8
        version: 1.4.8
      - name: neuvector-operator.v1.4.7
        version: 1.4.7
      - name: neuvector-operator.v1.4.6
        version: 1.4.6
      - name: neuvector-operator.v1.4.5
        version: 1.4.5
      - name: neuvector-operator.v1.4.4
        version: 1.4.4
      - name: neuvector-operator.v1.4.3
        version: 1.4.3
      - name: neuvector-operator.v1.4.2
        version: 1.4.2
      - name: neuvector-operator.v1.4.1
        version: 1.4.1
      - name: neuvector-operator.v1.4.0
        version: 1.4.0
      - name: neuvector-operator.v1.3.9
        version: 1.3.9
      - name: neuvector-operator.v1.3.8
        version: 1.3.8
      - name: neuvector-operator.v1.3.7
        version: 1.3.7
      - name: neuvector-operator.v1.3.6
        version: 1.3.6
      - name: neuvector-operator.v1.3.5
        version: 1.3.5
      - name: neuvector-operator.v1.3.4
        version: 1.3.4
      - name: neuvector-operator.v1.3.3
        version: 1.3.3
      - name: neuvector-operator.v1.3.2
        version: 1.3.2
      - name: neuvector-operator.v1.3.1
        version: 1.3.1
      - name: neuvector-operator.v1.3.0
        version: 1.3.0
      - name: neuvector-operator.v1.2.9
        version: 1.2.9
      name: beta
    defaultChannel: beta
    packageName: neuvector-certified-operator
    provider:
      name: NeuVector
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Aqua Security, Inc.
      provider-url: ""
    name: aqua
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aqua-operator.v2022.4.18
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaCsp",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "namespace": "aqua",
                    "version": "2022.4",
                    "requirements": true
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry",
                    "dbDiskSize": 10,
                    "databaseSecret": {
                      "key": "db-password",
                      "name": "aqua-database-password"
                    }
                  },
                  "database": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "database",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "gateway": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "gateway",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "server": {
                    "replicas": 1,
                    "service": "LoadBalancer",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "console",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "route": true,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaDatabase",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry",
                    "splitDB": false
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "database",
                      "tag": "<<IMAGE TAG>>"
                    }
                  },
                  "diskSize": 10,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry"
                  },
                  "deploy": {
                    "image": {
                      "repository": "enforcer",
                      "registry": "registry.aquasec.com",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "IfNotPresent"
                    }
                  },
                  "runAsNonRoot": false,
                  "gateway": {
                    "host": "aqua-gateway",
                    "port": 8443
                  },
                  "token": "<<your-token>>"
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaKubeEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "version": "2022.4",
                    "serviceAccount": "aqua-kube-enforcer-sa"
                  },
                  "config": {
                    "gateway_address": "aqua-gateway.aqua:8443",
                    "cluster_name": "aqua-secure",
                    "imagePullSecret": "aqua-registry",
                    "kubebench_image": "docker.io/aquasec/kube-bench:v0.7.1"
                  },
                  "deploy": {
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "tag": "<<KUBE_ENFORCER_TAG>>",
                      "repository": "kube-enforcer",
                      "pullPolicy": "Always"
                    }
                  },
                  "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>",
                  "starboard": {
                    "infra": {
                      "serviceAccount": "starboard-operator"
                    },
                    "config": {
                      "imagePullSecret": "starboard-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    }
                  }
                }
              },
              {
              "apiVersion": "operator.aquasec.com/v1alpha1",
              "kind": "AquaLightning",
              "metadata": {
                "name": "aqua"
              },
              "spec": {
                "global": {
                  "gateway_address": "aqua-gateway.aqua:8443",
                  "cluster_name": "Default-cluster-name"
                },
                "common": {
                  "imagePullSecret": "aqua-registry"
                },
                "kubeEnforcer": {
                  "infra": {
                    "version": "2022.4",
                    "serviceAccount": "aqua-kube-enforcer-sa"
                  },
                  "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>",
                  "allowAnyVersion": null,
                  "deploy": {
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "tag": "2022.4",
                      "repository": "kube-enforcer",
                      "pullPolicy": "Always"
                    }
                  },
                  "starboard": {
                    "infra": {
                      "serviceAccount": "starboard-operator"
                    },
                    "config": {
                      "imagePullSecret": "starboard-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    }
                  },
                  "env": []
                },
                "enforcer": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "deploy": {
                    "image": {
                      "repository": "enforcer",
                      "registry": "registry.aquasec.com",
                      "tag": "2022.4",
                      "pullPolicy": "IfNotPresent"
                    }
                  },
                  "token": "<<ENFORCER_GROUP_TOKEN>>",
                  "env": [],
                  "secret": {
                    "name": null,
                    "key": null
                  },
                  "runAsNonRoot": null,
                  "rhcosVersion": null
                }
              }
            },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaGateway",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "imagePullSecret": "aqua-registry",
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "gateway",
                      "tag": "<<IMAGE TAG>>"
                    }
                  },
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaScanner",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry"
                  },
                  "deploy": {
                    "replicas": 1,
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "scanner",
                      "tag": "<<IMAGE TAG>>"
                    }
                  },
                  "runAsNonRoot": false,
                  "login": {
                    "username": "<<YOUR AQUA USER NAME>>",
                    "password": "<<YOUR AQUA USER PASSWORD>>",
                    "host": "http://aqua-server:8080",
                    "token": ""
                  }
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaServer",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "imagePullSecret": "aqua-registry",
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "LoadBalancer",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "console",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "runAsNonRoot": false
                }
              },
              {
                  "apiVersion": "operator.aquasec.com/v1alpha1",
                  "kind": "AquaCloudConnector",
                  "metadata": {
                    "name": "aqua"
                  },
                  "spec": {
                    "infra": {
                      "serviceAccount": "aqua-sa",
                      "version": "2022.4"
                    },
                    "common": {
                      "imagePullSecret": "aqua-registry"
                    },
                    "deploy": {
                      "image": {
                        "repository": "aqua-cloud-connector",
                        "registry": "registry.aquasec.com",
                        "tag": "<<IMAGE TAG>>"
                      },
                      "replicas": 1
                    },
                    "runAsNonRoot": false,
                    "gateway": {
                      "host": "aqua-gateway",
                      "port": "8443"
                    },
                    "login": {
                      "host": "aqua-gateway:8443",
                      "password": "<<YOUR AQUA USER PASSWORD>>",
                      "token": "<<YOUR AQUA CLOUD CONNECTOR TOKEN>>",
                      "username": "<<YOUR AQUA USER NAME>>"
                    },
                    "tunnels": [
                      {
                        "host": "<account>.azurecr.io",
                        "port": "443"
                      },
                      {
                        "host": "gke.gcr.io",
                        "port": "443"
                      },
                      {
                        "host": "<account>.jfrog.io",
                        "port": "443"
                      },
                      {
                        "host": "1.1.1.1",
                        "port": "443"
                      },
                      {
                        "region": "us-east1",
                        "type": "ecr"
                      }
                    ]
                  }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: docker.io/aquasec/aqua-operator:2022.4.18
          createdAt: "2020-03-25T08:00:00Z"
          description: The Aqua Security Operator runs within a Openshift cluster
            and provides a means to deploy and manage Aqua Security cluster and components.
          operators.operatorframework.io/internal-objects: '["aquastarboards.aquasecurity.github.io","configauditreports.aquasecurity.github.io",
            "clusterconfigauditreports.aquasecurity.github.io"]'
          repository: https://github.com/aquasecurity/aqua-operator
          support: Aqua Security, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Aqua Security CSP Deployment with Aqua Operator
            displayName: AquaCsp
            kind: AquaCsp
            name: aquacsps.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Lightning Enforcers Deployment with Aqua Operator
            displayName: AquaLightningEnforcers
            kind: AquaLightning
            name: aqualightnings.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Database Deployment with Aqua Operator
            displayName: AquaDatabase
            kind: AquaDatabase
            name: aquadatabases.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Enforcer Deployment with Aqua Operator
            displayName: AquaEnforcer
            kind: AquaEnforcer
            name: aquaenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security KubeEnforcer Deployment with Aqua Operator
            displayName: AquaKubeEnforcer
            kind: AquaKubeEnforcer
            name: aquakubeenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Gateway Deployment with Aqua Operator
            displayName: AquaGateway
            kind: AquaGateway
            name: aquagateways.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Scanner Deployment with Aqua Operator
            displayName: AquaScanner
            kind: AquaScanner
            name: aquascanners.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Server Deployment with Aqua Operator
            displayName: AquaServer
            kind: AquaServer
            name: aquaservers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Starboard for kube-enforcer.
            displayName: AquaStarboard
            kind: AquaStarboard
            name: aquastarboards.aquasecurity.github.io
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ClusterConfigAuditReport
            kind: ClusterConfigAuditReport
            name: clusterconfigauditreports.aquasecurity.github.io
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ConfigAuditReport
            kind: ConfigAuditReport
            name: configauditreports.aquasecurity.github.io
            version: v1alpha1
          - description: Aqua Security Cloud Connector Deployment with Aqua Operator
            displayName: AquaCloudConnector
            kind: AquaCloudConnector
            name: aquacloudconnector.operator.aquasec.com
            version: v1alpha1
        description: |-
          The Aqua Security Operator runs within an OpenShift cluster and provides a means to deploy and manage the Aqua Security cluster and components :
          * Server (aka “console”)
          * Database (for production environments we recommend to use an external database and not the Aqua default database)
          * Gateway
          * Enforcer (aka “agent”)
          * KubeEnforcer
          * Scanner
          * CSP (package that contains the Server, Database, and Gateway)
          * LightningEnforcer (package that contains Enforcer and Kube Enforcer)

          Use the Aqua-Operator to
          * Deploy Aqua Security components on OpenShift
          * Scale up Aqua Security components with extra replicas
          * Assign metadata tags to Aqua Security components

          ## Before You Begin Using the Operator CRDs

          Obtain access to the Aqua registry - https://www.aquasec.com/about-us/contact-us/


          ## Instructions and exmaples

          Follow instructions and exmaples
          [here](https://github.com/aquasecurity/aqua-operator/blob/2022.4.0/docs/DeployOpenShiftOperator.md)
        displayName: Aqua Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - aqua-security
        - scanning
        - security
        - runtime-security
        links:
        - name: Aqua Security
          url: https://www.aquasec.com/
        - name: Aqua Operator Github
          url: https://github.com/aquasecurity/aqua-operator
        maintainers:
        - email: support@aquasec.com
          name: Aqua Support, Aqua Security
        maturity: alpha
        provider:
          name: Aqua Security, Inc.
        relatedImages:
        - docker.io/aquasec/aqua-operator:2022.4.18
        - quay.io/community-operator-pipeline-prod/aqua@sha256:ca2b998fb0fa4e80d6f4c3be57041e8e55e43cf0b5f1fee579733fda9ea6a107
        version: 2022.4.18
      entries:
      - name: aqua-operator.v2022.4.18
        version: 2022.4.18
      - name: aqua-operator.v2022.4.17
        version: 2022.4.17
      name: 2022.4.0
    defaultChannel: 2022.4.0
    packageName: aqua
    provider:
      name: Aqua Security, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Syndesis Team
      provider-url: https://github.com/syndesisio/syndesis
    name: syndesis
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: syndesis.v1.12.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta2",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.12
          createdAt: "2021-08-11T12:00:00Z"
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta2
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - quay.io/openshift-community-operators/syndesis@sha256:9e8c08793aebc8857dcd451fa2fde2b3f05b9ff4f3d3cc604f9f752193f58d42
        - quay.io/syndesis/syndesis-operator:1.12
        - centos/postgresql-10-centos7
        version: 1.12.0
      entries:
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: 1.12.x
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - quay.io/syndesis/syndesis-operator:1.13
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: 1.13.x
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        - quay.io/syndesis/syndesis-operator:1.13
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: candidate
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        - quay.io/syndesis/syndesis-operator:1.13
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: latest
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - quay.io/syndesis/syndesis-operator:1.13
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: stable
    defaultChannel: latest
    packageName: syndesis
    provider:
      name: Syndesis Team
      url: https://github.com/syndesisio/syndesis
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      odf.openshift.io/odf-operator: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-console"]'
          containerImage: registry.redhat.io/odf4/odf-rhel9-operator@sha256:0168326fc968fb1be91a5aba0df0117aec7f94b81560e0bd4480609207285265
          createdAt: "2025-12-18T08:00:14Z"
          description: OpenShift Data Foundation provides a common control plane for
            storage solutions on OpenShift Container Platform.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          olm.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/initialization-link: /odf/resource/odf.openshift.io~v1alpha1~StorageSystem/create/~new
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/odf-operator
          support: Red Hat
          vendors.odf.openshift.io/kind: '["storagecluster.ocs.openshift.io/v1", "flashsystemcluster.odf.ibm.com/v1alpha1"]'
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          **Red Hat OpenShift Data Foundation** deploys three operators.

          ### OpenShift Data Foundation
          The OpenShift Data Foundation operator is the primary operator for
          OpenShift Data Foundation. It serves to facilitate the other operators in
          OpenShift Data Foundation by performing administrative tasks outside their
          scope as well as watching and configuring their CustomResources.

          ### Rook
          [Rook][1] deploys and manages Ceph on OpenShift, which provides block,
          file and object storage.

          ### NooBaa operator
          The NooBaa operator deploys and manages the [NooBaa][2] Multi-Cloud Gateway
          on OpenShift, which provides object storage.

          # Core Capabilities
          * **Self-managing service:** No matter which supported storage technologies
          you choose, OpenShift Data Foundation ensures that resources can be
          deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Data Foundation you
          can either build dedicated storage clusters or hyper-converged clusters
          where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Data Foundation:**
          OpenShift Data Foundation integrates Ceph with multiple storage
          presentations including object storage (compatible with S3), block storage,
          and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Data Foundation efficiently
          distributes and replicates your data across your cluster to minimize the
          risk of data loss. With snapshots, cloning, and versioning, no more losing
          sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your
          datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data
          storage for your workloads, using a single namespace.

          # Subscriptions
          OpenShift Data Foundation requires a matching 1:1 ratio with the OpenShift
          subscription used. The Essential subscription is included in the OpenShift
          Platform Plus subscription. Disaster Recovery features, external mode, and
          KMS integration for encryption at rest require a bundle of OpenShift
          Platform Plus with OpenShift Data Foundation Advanced subscription.

          [1]: https://rook.io
          [2]: https://www.noobaa.io
        displayName: OpenShift Data Foundation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-operator-bundle@sha256:692c8c98f5c9d20cdfb2257f36a42ac6407ad122211001c3b539e33644bb7a6b
        - registry.redhat.io/odf4/odf-console-rhel9@sha256:871051f3724f5b783182b1de33350a3902db87eaee486390e3b7cfb64d3057d4
        - registry.redhat.io/odf4/odf-rhel9-operator@sha256:0168326fc968fb1be91a5aba0df0117aec7f94b81560e0bd4480609207285265
        version: 4.19.9-rhodf
      entries:
      - name: odf-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-console"]'
          containerImage: registry.redhat.io/odf4/odf-rhel9-operator@sha256:a6c75f7d1fefdb84653e4bdd29fc7ebe07f819e6cf0bf39ea8d3422dafb786bf
          createdAt: "2025-12-18T07:48:25Z"
          description: OpenShift Data Foundation provides a common control plane for
            storage solutions on OpenShift Container Platform.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/initialization-link: /odf/resource/odf.openshift.io~v1alpha1~StorageSystem/create/~new
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/odf-operator
          support: Red Hat
          vendors.odf.openshift.io/kind: '["storagecluster.ocs.openshift.io/v1", "flashsystemcluster.odf.ibm.com/v1alpha1"]'
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          **Red Hat OpenShift Data Foundation** deploys three operators.

          ### OpenShift Data Foundation
          The OpenShift Data Foundation operator is the primary operator for
          OpenShift Data Foundation. It serves to facilitate the other operators in
          OpenShift Data Foundation by performing administrative tasks outside their
          scope as well as watching and configuring their CustomResources.

          ### Rook
          [Rook][1] deploys and manages Ceph on OpenShift, which provides block,
          file and object storage.

          ### NooBaa operator
          The NooBaa operator deploys and manages the [NooBaa][2] Multi-Cloud Gateway
          on OpenShift, which provides object storage.

          # Core Capabilities
          * **Self-managing service:** No matter which supported storage technologies
          you choose, OpenShift Data Foundation ensures that resources can be
          deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Data Foundation you
          can either build dedicated storage clusters or hyper-converged clusters
          where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Data Foundation:**
          OpenShift Data Foundation integrates Ceph with multiple storage
          presentations including object storage (compatible with S3), block storage,
          and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Data Foundation efficiently
          distributes and replicates your data across your cluster to minimize the
          risk of data loss. With snapshots, cloning, and versioning, no more losing
          sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your
          datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data
          storage for your workloads, using a single namespace.

          # Subscriptions
          OpenShift Data Foundation requires a matching 1:1 ratio with the OpenShift
          subscription used. The Essential subscription is included in the OpenShift
          Platform Plus subscription. Disaster Recovery features, external mode, and
          KMS integration for encryption at rest require a bundle of OpenShift
          Platform Plus with OpenShift Data Foundation Advanced subscription.

          [1]: https://rook.io
          [2]: https://www.noobaa.io
        displayName: OpenShift Data Foundation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-rhel9-operator@sha256:a6c75f7d1fefdb84653e4bdd29fc7ebe07f819e6cf0bf39ea8d3422dafb786bf
        - registry.redhat.io/odf4/odf-operator-bundle@sha256:fd9c08f0a1455f7c20f3ef00983bd2cee495f6fbca7e30e3aac52512d71abe42
        - registry.redhat.io/odf4/odf-console-rhel9@sha256:a4255931341242cacf44202192e8f69805cf359282b1753beb7933ef3b088dd4
        version: 4.20.4-rhodf
      entries:
      - name: odf-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: node-observability-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-observability-operator.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha1",
                "kind": "NodeObservability",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "labels": {
                    "kubernetes.io/hostname": "worker-a"
                  },
                  "type": "crio-kubelet"
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha1",
                "kind": "NodeObservabilityMachineConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "debug": {
                    "enableCrioProfiling": true
                  }
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha1",
                "kind": "NodeObservabilityRun",
                "metadata": {
                  "name": "nodeobservabilityrun-sample",
                  "namespace": "node-observability-operator"
                },
                "spec": {
                  "nodeObservabilityRef": {
                    "name": "cluster"
                  }
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha2",
                "kind": "NodeObservability",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "nodeSelector": {
                    "kubernetes.io/hostname": "worker-a"
                  },
                  "type": "crio-kubelet"
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha2",
                "kind": "NodeObservabilityMachineConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "debug": {
                    "enableCrioProfiling": true
                  },
                  "nodeSelector": {
                    "kubernetes.io/hostname": "worker-a"
                  }
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha2",
                "kind": "NodeObservabilityRun",
                "metadata": {
                  "name": "nodeobservabilityrun-sample",
                  "namespace": "node-observability-operator"
                },
                "spec": {
                  "nodeObservabilityRef": {
                    "name": "cluster"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/noo/node-observability-rhel8-operator@sha256:53ba77f648154ac8aca1ae6c83815078dfde211dba1e42f597e69844e4954c01
          createdAt: 2022-12-05T09:25:09
          olm.skipRange: <0.2.0
          operatorframework.io/suggested-namespace: node-observability-operator
          operators.operatorframework.io/builder: operator-sdk-v1.18.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeObservability prepares a subset of worker nodes (identified
              by a label) for running node observability queries, such as profiling
            displayName: Node Observability
            kind: NodeObservability
            name: nodeobservabilities.nodeobservability.olm.openshift.io
            version: v1alpha1
          - description: NodeObservability prepares a subset of worker nodes (identified
              by a label) for running node observability queries, such as profiling
            displayName: Node Observability
            kind: NodeObservability
            name: nodeobservabilities.nodeobservability.olm.openshift.io
            version: v1alpha2
          - description: NodeObservabilityMachineConfig is the Schema for the nodeobservabilitymachineconfigs
              API
            displayName: Node Observability Machine Config
            kind: NodeObservabilityMachineConfig
            name: nodeobservabilitymachineconfigs.nodeobservability.olm.openshift.io
            version: v1alpha1
          - description: NodeObservabilityMachineConfig is the Schema for the nodeobservabilitymachineconfigs
              API
            displayName: Node Observability Machine Config
            kind: NodeObservabilityMachineConfig
            name: nodeobservabilitymachineconfigs.nodeobservability.olm.openshift.io
            version: v1alpha2
          - description: NodeObservabilityRun is a request to run observability actions
              on the nodes previously selected in NodeObservability resource
            displayName: Node Observability Run
            kind: NodeObservabilityRun
            name: nodeobservabilityruns.nodeobservability.olm.openshift.io
            version: v1alpha1
          - description: NodeObservabilityRun is a request to run observability actions
              on the nodes previously selected in NodeObservability resource
            displayName: Node Observability Run
            kind: NodeObservabilityRun
            name: nodeobservabilityruns.nodeobservability.olm.openshift.io
            version: v1alpha2
        description: |-
          An Operator that will be able to gather debugging/profiling data over
          a custom period of time which would be helpful to troubleshoot and resolve issues
          for OpenShift customers.
        displayName: Node Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - node-observability-operator
        links:
        - name: Source Code
          url: https://github.com/openshift/node-observability-operator
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/noo/node-observability-operator-bundle-rhel8@sha256:0fbbb0b32adadc5746251103d25bba6bd365b2ff60e289e4694061fc92c3ce6e
        - registry.redhat.io/noo/node-observability-rhel8-operator@sha256:53ba77f648154ac8aca1ae6c83815078dfde211dba1e42f597e69844e4954c01
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e3dad360d0351237a16593ca0862652809c41a2127c2f98b9e0a559568efbd10
        - registry.redhat.io/noo/node-observability-agent-rhel8@sha256:a8e60d9f63e2ed0cf1e27309aac54014e3f1efc947b51ca0a99376338d220875
        version: 0.2.0
      entries:
      - name: node-observability-operator.v0.2.0
        version: 0.2.0
      name: alpha
    defaultChannel: alpha
    packageName: node-observability-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Accuknox
      provider-url: https://accuknox.com
    name: kubearmor-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubearmor-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Security
          com.redhat.openshift.versions: v4.12
          createdAt: "2023-05-01T05:17:07Z"
          description: The KubeArmor Operator deloys and manages KubeArmor daemonset
            and its componenets within a cluster.
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.28.0+git
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/kubearmor/KubeArmor
          support: Accuknox
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          The KubeArmor Operator deploys and manages KubeArmor and its components:
          - KubeArmor Daemonset
          - KubeArmor Relay Server
          - KubeArmor Controller to manage CRDs (KubeArmorPolicy, KubeArmorHostPolicy)

          KubeArmor is a cloud-native runtime security enforcement system that restricts the behavior (such as process
          execution, file access, and networking operations) of pods, containers, and nodes (VMs) at the system level.

          KubeArmor leverages Linux security modules (LSMs) such as AppArmor, SELinux, or BPF-LSM to enforce the user-specified policies. KubeArmor generates rich alerts/telemetry events with container/pod/namespace identities by leveraging eBPF.

          ## Documentation

          github: [https://github.com/kubearmor/KubeArmor](https://github.com/kubearmor/KubeArmor)
          website: [https://kubearmor.io/](https://kubearmor.io/)
        displayName: Kubearmor Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubearmor-operator
        - runtime-security
        - security
        - cloud-native
        links:
        - name: Kubearmor
          url: https://kubearmor.io
        maintainers:
        - email: ramakant@accuknox.com
          name: Ramakant Sharma
        maturity: alpha
        provider:
          name: Accuknox
          url: https://www.accuknox.com/
        relatedImages:
        - docker.io/kubearmor/kubearmor-operator@sha256:8c2d56781a2adf78ee58f956e01417f38b6ad2f319feada6470e93f4f9bf0808
        - docker.io/kubearmor/kubearmor-relay-server@sha256:695f9ade3382bcf858077e2a7b9b01e0713071517603778d72f7aca5a6d71323
        - docker.io/kubearmor/kubearmor@sha256:52f7049ecdbfa779663d2cd44ddd7f36aecd8ccd2ca91e69709b628600029f13
        - registry.connect.redhat.com/kubearmor/kubearmor-operator@sha256:411a47151609b7da29974ef3ae3b04f1bb1526f4328fd3e1d9b0165380018049
        - docker.io/kubearmor/kubearmor-controller@sha256:ccec0fb8bb1e91bd48631cc89baf752b842f19c33b50edab08f8b33e57af64d4
        - docker.io/kubearmor/kubearmor-init@sha256:44fa534587972c5f85e3e6f362dd8268e9088a33c5657a21b72a7e8563164fb5
        version: 1.0.0
      entries:
      - name: kubearmor-operator.v1.0.0
        version: 1.0.0
      name: alpha
    - currentCSV: kubearmor-operator.v1.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.kubearmor.com/v1",
                "kind": "KubeArmorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "kubearmorconfig",
                    "app.kubernetes.io/part-of": "kubearmoroperator"
                  },
                    "name": "kubearmorconfig-default",
                    "namespace": "placeholder"
                },
                "spec": {
                  "adapters": {
                    "elasticsearch": {
                      "url": "",
                      "enabled": false,
                      "auth": {
                        "secretName": "elastic-secret",
                        "usernameKey": "username",
                        "passwordKey": "password",
                        "allowInsecureTLS": false,
                        "caCertSecretName": "",
                        "caCertKey": "ca.crt"
                      },
                      "alertsIndex": "kubearmor-alerts"
                    }
                  },
                  "recommendedPolicies": {
                      "enable": true,
                      "matchExpressions": [
                          {
                              "key": "namespace",
                              "operator": "NotIn",
                              "values": [
                                  "kube-system",
                                  "kubearmor",
                                  "openshift-infra",
                                  "openshift-ingress",
                                  "openshift-ingress-canary",
                                  "openshift-ingress-operator",
                                  "openshift-insights",
                                  "openshift-kni-infra",
                                  "openshift-kube-apiserver",
                                  "openshift-kube-apiserver-operator",
                                  "openshift-kube-controller-manager",
                                  "openshift-kube-controller-manager-operator",
                                  "openshift-kube-scheduler",
                                  "openshift-kube-scheduler-operator",
                                  "openshift-kube-storage-version-migrator",
                                  "openshift-kube-storage-version-migrator-operator",
                                  "openshift-logging",
                                  "openshift-machine-api",
                                  "openshift-machine-config-operator",
                                  "openshift-managed-node-metadata-operator",
                                  "openshift-managed-upgrade-operator",
                                  "openshift-marketplace",
                                  "openshift-monitoring",
                                  "openshift-multus",
                                  "openshift-must-gather-operator",
                                  "openshift-network-diagnostics",
                                  "openshift-network-node-identity",
                                  "openshift-network-operator",
                                  "openshift-node",
                                  "openshift-nutanix-infra",
                                  "openshift-oauth-apiserver",
                                  "openshift-observability-operator",
                                  "openshift-ocm-agent-operator",
                                  "openshift-openstack-infra",
                                  "openshift-operator-lifecycle-manager",
                                  "openshift-operators",
                                  "openshift-operators-redhat",
                                  "openshift-osd-metrics",
                                  "openshift-ovirt-infra",
                                  "openshift-ovn-kubernetes",
                                  "openshift-package-operator",
                                  "openshift-rbac-permissions",
                                  "openshift-route-controller-manager",
                                  "openshift-route-monitor-operator",
                                  "openshift-security",
                                  "openshift-service-ca",
                                  "openshift-service-ca-operator",
                                  "openshift-splunk-forwarder-operator",
                                  "openshift-sre-pruning",
                                  "openshift-user-workload-monitoring",
                                  "openshift-validation-webhook",
                                  "openshift-velero",
                                  "openshift-vsphere-infra",
                                  "openshift",
                                  "openshift-addon-operator",
                                  "openshift-apiserver",
                                  "openshift-apiserver-operator",
                                  "openshift-aqua",
                                  "openshift-authentication",
                                  "openshift-authentication-operator",
                                  "openshift-backplane",
                                  "openshift-backplane-cee",
                                  "openshift-backplane-csa",
                                  "openshift-backplane-cse",
                                  "openshift-backplane-csm",
                                  "openshift-backplane-managed-scripts",
                                  "openshift-backplane-mcs-tier-two",
                                  "openshift-backplane-mobb",
                                  "openshift-backplane-srep",
                                  "openshift-backplane-tam",
                                  "openshift-cloud-controller-manager",
                                  "openshift-cloud-controller-manager-operator",
                                  "openshift-cloud-credential-operator",
                                  "openshift-cloud-ingress-operator",
                                  "openshift-cloud-network-config-controller",
                                  "openshift-cloud-platform-infra",
                                  "openshift-cluster-csi-drivers",
                                  "openshift-cluster-machine-approver",
                                  "openshift-cluster-node-tuning-operator",
                                  "openshift-cluster-samples-operator",
                                  "openshift-cluster-storage-operator",
                                  "openshift-cluster-version",
                                  "openshift-codeready-workspaces",
                                  "openshift-config",
                                  "openshift-config-managed",
                                  "openshift-config-operator",
                                  "openshift-console",
                                  "openshift-console-operator",
                                  "openshift-console-user-settings",
                                  "openshift-controller-manager",
                                  "openshift-controller-manager-operator",
                                  "openshift-custom-domains-operator",
                                  "openshift-customer-monitoring",
                                  "openshift-deployment-validation-operator",
                                  "openshift-dns",
                                  "openshift-dns-operator",
                                  "openshift-etcd",
                                  "openshift-etcd-operator",
                                  "openshift-host-network",
                                  "openshift-image-registry"
                              ]
                          }
                      ]
                  },
                  "defaultCapabilitiesPosture": "audit",
                  "defaultFilePosture": "audit",
                  "defaultNetworkPosture": "audit",
                  "defaultVisibility": "process,network",
                  "enableStdOutLogs": false,
                  "enableStdOutAlerts": false,
                  "enableStdOutMsgs": false,
                  "seccompEnabled": false
                }
              }
            ]
          alm-examples-metadata: '{"kubearmorconfig-default":{"description":"Default
            KubeArmorConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Security, Monitoring
          certified: "true"
          com.redhat.openshift.versions: v4.9
          containerImage: docker.io/kubearmor/kubearmor-operator@sha256:d6c6b16e636474568835ded97cecb5ed17bc6004501227f6b6d63522ed57b01c
          createdAt: "2024-03-20T17:43:15Z"
          description: KubeArmor Operator
          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"
          operatorframework.io/suggested-namespace: kubearmor
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kubearmor/KubeArmor/blob/main/pkg/KubeArmorOperator/
          support: Accuknox
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubeArmorConfig is the Schema for the kubearmorconfigs API
            kind: KubeArmorConfig
            name: kubearmorconfigs.operator.kubearmor.com
            version: v1
        description: |2-

          ## Prerequisites

          1. Create a new project for KubeArmor (Recommended)

             ```
             oc new-project kubearmor
             ```

           2. Create [KubeArmor SCC](https://github.com/kubearmor/KubeArmor/blob/main/pkg/KubeArmorOperator/config/rbac/kubearmor-scc.yaml)

             ```
             oc create -f https://raw.githubusercontent.com/kubearmor/KubeArmor/main/pkg/KubeArmorOperator/config/rbac/kubearmor-scc.yaml
             ```

             Note: please change the serviceaccount namespace if you are using some other namespace than the kubearmor.

          KubeArmor is a cloud-native runtime security enforcement system that restricts the behavior
          (such as process execution, file access, and networking operations) of pods, containers,
          and nodes (VMs) at the system level.
          KubeArmor leverages Linux security modules (LSMs) such as AppArmor, SELinux, or BPF-LSM to enforce the
          user-specified policies. KubeArmor generates rich alerts/telemetry events with container/pod/namespace
          identities by leveraging eBPF.

          ## Features and Benefits

          ### Harden Infrastructure

          safeguards vital paths like certificate bundles, enforces security rules based on MITRE, STIGs, and CIS guidelines,
          and restricts access to raw database tables, enhancing overall cluster security.

          ### Least Permissive Access

          controls sensitive asset access through process and network whitelisting,
          reducing security risks and maintaining system integrity.

          ### Application Behavior

          in-depth monitoring of process executions, file system access, service bindings,
          ingress and egress connections, and sensitive system call profiling

          ## Documentation

          github: [https://github.com/kubearmor/KubeArmor](https://github.com/kubearmor/KubeArmor)

          website: [https://kubearmor.io/](https://kubearmor.io/)

          ## Installing the KubeArmor Operator

          The KubeArmor Operator, available through Red Hat's Operator catalog, offers stable update channel.
          **Stable Channel**: This channel provides the latest stable version of KubeArmor along with its patches.

          The KubeArmor operator is responsible for deploying various components of the KubeArmor application, including the KubeArmor
          Daemonset, KubeArmor Controller, KubeArmor Relay Server, and KubeArmor Snitch. The role of KubeArmor Snitch is to gather information
          about the enabled Linux security modules on the host, which is utilized by KubeArmor to enforce runtime security policies.
          Additionally, KubeArmor Snitch collects details about the container runtime socket and storage volume cluster configurations.
          This deployment is executed as a short-term job and necessitates root user privileges. KubeArmor Snitch is certified by RedHat
          as a container with root privileges.

          KubeArmor Operator comes with a custom resource:

          - **KubeArmorConfig** - User will provide the initial configurations of the KubeArmor using KubeArmorConfig CR.

          ### KubeArmorConfig Customization Options:

          | Parameter                                 | Description                                          | Default                                 |
          | ---                                       | ---                                                  | ---                                     |
          | `alertThrottling`                         | Enable throttling for the KubeArmor generated alerts | False                                   |
          | `defaultFilePosture`                      | Default file posture for KubeArmor                   | audit                                   |
          | `defaultNetworkPosture`                   | Default network posture for KubeArmor                | audit                                   |
          | `defaultCapabilitiesPosture`              | Default capabilities posture for KubeArmor           | audit                                   |
          | `defaultVisibility`                       | Default visibility for KubeArmor                     | process,file,network                    |
          | `enableStdOutLogs` |  show stdout logs for relay server | false |
          | `enableStdOutAlerts` |  show stdout alerts for relay server | false |
          | `enableStdOutMsgs` |  show stdout messages for relay server | false |
          | `kubearmorImage.image`                    | Default image for KubeArmor Daemonset                | kubearmor/kubearmor-ubi:stable          |
          | `kubearmorImage.imagePullPolicy`          | Default imagePullPolicy for KubeArmor Daemonset      | Always                                  |
          | `kubearmorInitImage.image`                | Default image for KubeArmor Init Container           | kubearmor/kubearmor-init:stable         |
          | `kubearmorInitImage.imagePullPolicy`      | Default imagePullPolicy for KubeArmor Init Container | Always                                  |
          | `kubearmorRelayImage.image`               | Default image for KubeArmor Relay Server             | kubearmor/kubearmor-relay-server:latest |
          | `kubearmorRelayImage.imagePullPolicy`     | Default imagePullPolicy for KubeArmor Relay Server   | Always                                  |
          | `kubearmorControllerImage.image`          | Default image for KubeArmor Controller               | kubearmor/kubearmor-controller:latest   |
          | `kubearmorControllerImage.imagePullPolicy`| Default imagePullPolicy for KubeArmor Controller     | Always                                  |
          | `maxAlertPerSec`                          | Maximum no of alerts per second to trigger throttling| 10                                      |
          | `recommendedPolicies`                     | Recommended Policies Spec                            | -                                       |
          | `recommendedPolicies.matchExpressions`    | Target Namespaces for recommended policies           | -                                       |
          | `recommendedPolicies.excludePolicy`       | Exclude policies from recommended policies           | -                                       |
          | `seccompEnabled`                          | Deploy KubeArmor Daemon with default seccomp profile | True                                    |
          | `throttleSec`                             | Thottling duration in seconds                        | 30                                      |

          Users are not required to specify the images in the KubearmorConfig custom resource (CR). By default, the operator will utilize the images published with the operator release.

          For detailed information on Default Posture refer [this guide](https://github.com/kubearmor/KubeArmor/blob/main/getting-started/default_posture.md)

          similarly for default visibility refer [this guide](https://github.com/kubearmor/KubeArmor/blob/main/getting-started/kubearmor_visibility.md)

          ## Support

          For Support please join KubeArmor Slack [Here](https://join.slack.com/t/kubearmor/shared_invite/zt-1ltmqdbc6-rSHw~LM6MesZZasmP2hAcA)
        displayName: KubeArmor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - monitoring
        - security
        - alerting
        - runtime-security
        - cloud native
        - container security
        links:
        - name: Website
          url: https://kubearmor.io
        - name: Github
          url: https://github.com/kubearmor/KubeArmor.git
        - name: Slack
          url: https://join.slack.com/t/kubearmor/shared_invite/zt-1ltmqdbc6-rSHw~LM6MesZZasmP2hAcA
        maintainers:
        - email: ramakant@accuknox.com
          name: Ramakant Sharma
        maturity: stable
        provider:
          name: Accuknox
          url: https://accuknox.com
        relatedImages:
        - docker.io/kubearmor/kubearmor-relay-server@sha256:0a1a20ef02bd05eaa4a900948cadee6ae7650b0dde70abe1935608eaa5f931b7
        - docker.io/kubearmor/kubearmor-snitch@sha256:c3d0f45590f9a0ebb50254047f12a7468844bcae7961eccb11f5ef578832c0eb
        - docker.io/kubearmor/kubearmor-ubi@sha256:629e295a2e64953bf95f3f3e842c42ff665ed6e4db32db8e43dcde4befdd3fc2
        - registry.connect.redhat.com/kubearmor/kubearmor-operator@sha256:076c345de449353cc9837c603024ba9d790d26c5a8cebfc97db61ded1482ab78
        - registry.connect.redhat.com/sumologic/kube-rbac-proxy@sha256:1153a4592746b05e019bde4d818d176ff9350c013f84d49829032540de882841
        - docker.io/kubearmor/kubearmor-controller@sha256:2d369138cdbb31468c41e9ce70eda986a16bbeb9dd1192cd8a011c9df8a83857
        - docker.io/kubearmor/kubearmor-init@sha256:e30ee508aa95d273f74a543e1b412b98c1714d04f093b59991c0ec2abaa450be
        - docker.io/kubearmor/kubearmor-operator@sha256:d6c6b16e636474568835ded97cecb5ed17bc6004501227f6b6d63522ed57b01c
        version: 1.5.2
      entries:
      - name: kubearmor-operator.v1.5.2
        version: 1.5.2
      name: stable
    defaultChannel: stable
    packageName: kubearmor-operator-certified
    provider:
      name: Accuknox
      url: https://accuknox.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-opa-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opa-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/opa-operator@sha256:2817d8839c6b7eb18d146b3271c3853f0bcd9c0f086c5ba8d19f20d6b14d06a3
          description: Stackable Operator for the Open Policy Agent
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/opa-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for OpaClusterSpec via `CustomResource`
            displayName: opaclusters.opa.stackable.tech
            kind: OpaCluster
            name: opaclusters.opa.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for the Open Policy Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opa
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - registry.connect.redhat.com/stackable/stackable-opa-operator@sha256:ed811a4798f167a21613371bfc071c9ebde39a1fa2975f113953130a60f1747d
        - quay.io/stackable/opa-operator@sha256:2817d8839c6b7eb18d146b3271c3853f0bcd9c0f086c5ba8d19f20d6b14d06a3
        version: 25.11.0
      entries:
      - name: opa-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-opa-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-bedrock-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-bedrock-controller.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bedrock.services.k8s.aws/v1alpha1",
                "kind": "InferenceProfile",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/bedrock-controller:1.1.0
          createdAt: "2025-11-29T04:47:49Z"
          description: AWS Bedrock controller is a service controller for managing
            Bedrock resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InferenceProfile represents the state of an AWS bedrock InferenceProfile
              resource.
            displayName: InferenceProfile
            kind: InferenceProfile
            name: inferenceprofiles.bedrock.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Bedrock resources in AWS from within your Kubernetes cluster.

          **About Amazon Bedrock**

          Amazon Bedrock is a fully managed service that makes high-performing foundation models (FMs) from leading AI companies and Amazon available for your use through a unified API. You can choose from a wide range of foundation models to find the model that is best suited for your use case. Amazon Bedrock also offers a broad set of capabilities to build generative AI applications with security, privacy, and responsible AI. Using Amazon Bedrock, you can easily experiment with and evaluate top foundation models for your use cases, privately customize them with your data using techniques such as fine-tuning and Retrieval Augmented Generation (RAG), and build agents that execute tasks using your enterprise systems and data sources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Bedrock
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bedrock
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Bedrock Developer Resources
          url: https://aws.amazon.com/bedrock/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: bedrock maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/bedrock-controller:1.1.0
        - quay.io/community-operator-pipeline-prod/ack-bedrock-controller@sha256:9ccb288b811d6e8208ed63359fca8d3108a2966bfca515e10c3685fe8abfc3bf
        version: 1.1.0
      entries:
      - name: ack-bedrock-controller.v1.1.0
        version: 1.1.0
      - name: ack-bedrock-controller.v1.0.1
        version: 1.0.1
      - name: ack-bedrock-controller.v1.0.0
        version: 1.0.0
      - name: ack-bedrock-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-bedrock-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: run-once-duration-override-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runoncedurationoverrideoperator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "RunOnceDurationOverride",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "runOnceDurationOverride": {
                    "spec": {
                      "activeDeadlineSeconds": 3600
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certifiedLevel: "false"
          containerImage: registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9-operator@sha256:4971f8befc2eecff1cfb0a9be7040594203e8e1170aee03d61765bd5b2cd4787
          createdAt: 2025/08/25
          description: An operator to manage the OpenShift RunOnceDurationOverride
            Mutating Admission Webhook Server
          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: "true"
          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.skipRange: '>=1.2.0 <1.3.1'
          operatorframework.io/suggested-namespace: openshift-run-once-duration-override-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/run-once-duration-override-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RunOnceDurationOverride is the schema for the runoncedurationoverrides
              API
            displayName: Run Once Duration Override
            kind: RunOnceDurationOverride
            name: runoncedurationoverrides.operator.openshift.io
            version: v1
        displayName: Run Once Duration Override Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mutating
        - webhook
        - workload
        - run-once
        links:
        - name: Source Code
          url: https://github.com/openshift/run-once-duration-override
        - name: Source Code
          url: https://github.com/openshift/run-once-duration-override-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9@sha256:c3b17e2ff30eab6e64e8fec59da37f05ec65d91d8d76086a9510372b20eb78d6
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-operator-bundle@sha256:783c2df43ece311bcbaaf30f33c081608e996a0f651895ec0509bb73a6a1f590
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9-operator@sha256:4971f8befc2eecff1cfb0a9be7040594203e8e1170aee03d61765bd5b2cd4787
        version: 1.3.1
      entries:
      - name: runoncedurationoverrideoperator.v1.3.1
        version: 1.3.1
      - name: runoncedurationoverrideoperator.v1.3.0
        version: 1.3.0
      - name: runoncedurationoverrideoperator.v1.2.3
        version: 1.2.3
      - name: runoncedurationoverrideoperator.v1.2.2
        version: 1.2.2
      - name: runoncedurationoverrideoperator.v1.2.1
        version: 1.2.1
      - name: runoncedurationoverrideoperator.v1.2.0
        version: 1.2.0
      - name: runoncedurationoverrideoperator.v1.1.2
        version: 1.1.2
      - name: runoncedurationoverrideoperator.v1.1.1
        version: 1.1.1
      - name: runoncedurationoverrideoperator.v1.1.0
        version: 1.1.0
      - name: runoncedurationoverrideoperator.v1.0.2
        version: 1.0.2
      - name: runoncedurationoverrideoperator.v1.0.1
        version: 1.0.1
      - name: runoncedurationoverrideoperator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: run-once-duration-override-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Citrus Framework
      provider-url: ""
    name: yaks
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: yaks-operator.v0.17.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "yaks.citrusframework.org/v1alpha1",
                "kind": "Instance",
                "metadata": {
                  "labels": {
                    "app": "yaks"
                  },
                  "name": "example-instance"
                },
                "spec": {
                  "operator": {
                    "global": true
                  }
                }
              },
              {
                "apiVersion": "yaks.citrusframework.org/v1alpha1",
                "kind": "Test",
                "metadata": {
                  "labels": {
                    "app": "yaks"
                  },
                  "name": "example-test"
                },
                "spec": {
                  "source": {
                    "content": "Feature: hello world\n\n  Scenario: print slogan\n    Given YAKS does Cloud-Native BDD testing\n    Then YAKS rocks!",
                    "language": "feature",
                    "name": "example.feature"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/citrusframework/yaks:0.17.1
          createdAt: "2023-04-26T20:37:31Z"
          description: YAKS is a platform to enable Cloud Native BDD testing on Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["instances.yaks.citrusframework.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/citrusframework/yaks
          support: Citrus Framework
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instance is the Schema for the yaks instance
            displayName: Instance
            kind: Instance
            name: instances.yaks.citrusframework.org
            version: v1alpha1
          - description: Test is the Schema for the tests API
            displayName: Test
            kind: Test
            name: tests.yaks.citrusframework.org
            version: v1alpha1
        description: |
          YAKS
          ====

          YAKS is a platform to enable Cloud Native BDD testing on Kubernetes.

          ## Running a YAKS test

          With the YAKS operator installed, you can run tests by creating a `Test` custom resource on the cluster.

          Tests are defined using [Gherkin](https://cucumber.io/docs/gherkin/) syntax. YAKS provides a set of predefined steps which
          help to connect with different messaging transports (Http REST, JMS, Kafka, Knative eventing) and verify responses with
          assertions on message header and body content.

          The example below defines a simple test resource.

          ```
          apiVersion: yaks.citrusframework.org/v1alpha1
          kind: Test
          metadata:
            name: example
          spec:
            source:
              name: example.feature
              content: |-
                Feature: hello world

                  Scenario: print slogan
                    Given YAKS does Cloud-Native BDD testing
                    Then YAKS rocks!
          ```

          Refer to the [YAKS repository](https://github.com/citrusframework/yaks) for more complex examples.
        displayName: YAKS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - yaks
        - testing
        - microservices
        - knative
        - kafka
        - serverless
        - camel
        - camel-k
        links:
        - name: Project page
          url: https://citrusframework.org/
        - name: YAKS source code repository
          url: https://github.com/citrusframework/yaks
        maintainers:
        - email: cdeppisch@redhat.com
          name: Christoph Deppisch
        - email: nferraro@redhat.com
          name: Nicola Ferraro
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Citrus Framework
        relatedImages:
        - docker.io/citrusframework/yaks:0.17.1
        - quay.io/openshift-community-operators/yaks@sha256:0031de9a68502cb65923c4e17453195663f59e46b1cda37619a857add503c016
        version: 0.17.1
      entries:
      - name: yaks-operator.v0.17.1
        version: 0.17.1
      - name: yaks-operator.v0.17.0
        version: 0.17.0
      - name: yaks-operator.v0.16.0
        version: 0.16.0
      - name: yaks-operator.v0.15.1
        version: 0.15.1
      - name: yaks-operator.v0.15.0
        version: 0.15.0
      - name: yaks-operator.v0.14.3
        version: 0.14.3
      - name: yaks-operator.v0.14.2
        version: 0.14.2
      - name: yaks-operator.v0.14.1
        version: 0.14.1
      - name: yaks-operator.v0.13.0
        version: 0.13.0
      - name: yaks-operator.v0.12.2
        version: 0.12.2
      - name: yaks-operator.v0.11.0
        version: 0.11.0
      - name: yaks-operator.v0.10.0
        version: 0.10.0
      - name: yaks-operator.v0.9.0
        version: 0.9.0
      - name: yaks-operator.v0.8.0
        version: 0.8.0
      - name: yaks-operator.v0.7.0
        version: 0.7.0
      - name: yaks-operator.v0.6.0
        version: 0.6.0
      - name: yaks-operator.v0.5.0
        version: 0.5.0
      - name: yaks-operator.v0.4.0
        version: 0.4.0
      name: alpha
    defaultChannel: alpha
    packageName: yaks
    provider:
      name: Citrus Framework
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: VMware Tanzu
      provider-url: ""
    name: rabbitmq-messaging-topology-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rabbitmq-messaging-topology-operator.v1.18.2
      currentCSVDesc:
        annotations:
          alm-examples: |
            [{"apiVersion":"rabbitmq.com/v1beta1","kind":"Binding","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Exchange","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Federation","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Permission","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Policy","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"OperatorPolicy","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Queue","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"SchemaReplication","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Shovel","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1alpha1","kind":"SuperStream","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"User","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Vhost","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"TopicPermission","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}}]
          capabilities: Full Lifecycle
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/rabbitmqoperator/messaging-topology-operator:1.18.2
          createdAt: 2025-12-10T10:23:39
          description: Kubernetes operator to allow developers to create and manage
            RabbitMQ messaging topologies within a RabbitMQ cluster using a declarative
            Kubernetes API.
          repository: https://github.com/rabbitmq/messaging-topology-operator
          support: VMware Tanzu
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Binding
            displayName: Binding
            kind: Binding
            name: bindings.rabbitmq.com
            version: v1beta1
          - description: Exchange
            displayName: Exchange
            kind: Exchange
            name: exchanges.rabbitmq.com
            version: v1beta1
          - description: Federation
            displayName: Federation
            kind: Federation
            name: federations.rabbitmq.com
            version: v1beta1
          - description: Permission
            displayName: Permission
            kind: Permission
            name: permissions.rabbitmq.com
            version: v1beta1
          - description: TopicPermission
            displayName: TopicPermission
            kind: TopicPermission
            name: topicpermissions.rabbitmq.com
            version: v1beta1
          - description: Policy
            displayName: Policy
            kind: Policy
            name: policies.rabbitmq.com
            version: v1beta1
          - description: OperatorPolicy
            displayName: OperatorPolicy
            kind: OperatorPolicy
            name: operatorpolicies.rabbitmq.com
            version: v1beta1
          - description: Queue
            displayName: Queue
            kind: Queue
            name: queues.rabbitmq.com
            version: v1beta1
          - description: Schema Replication
            displayName: SchemaReplication
            kind: SchemaReplication
            name: schemareplications.rabbitmq.com
            version: v1beta1
          - description: Shovel
            displayName: Shovel
            kind: Shovel
            name: shovels.rabbitmq.com
            version: v1beta1
          - description: Super Stream
            displayName: SuperStream
            kind: SuperStream
            name: superstreams.rabbitmq.com
            version: v1alpha1
          - description: User
            displayName: User
            kind: User
            name: users.rabbitmq.com
            version: v1beta1
          - description: Vhost
            displayName: Vhost
            kind: Vhost
            name: vhosts.rabbitmq.com
            version: v1beta1
          required:
          - description: Rabbitmq Cluster
            displayName: RabbitmqCluster
            kind: RabbitmqCluster
            name: rabbitmqclusters.rabbitmq.com
            version: v1beta1
        description: |
          ## About the managed application
          RabbitMQ is an open-source message-broker software that originally implemented the Advanced Message Queuing Protocol and has since been extended with a plug-in architecture to support Streaming Text Oriented Messaging Protocol, MQ Telemetry Transport, and other protocols.
          ## About this Operator
          Kubernetes operator to allow developers to create and manage RabbitMQ messaging topologies within a RabbitMQ cluster using a declarative Kubernetes API. A Messaging topology is the collection of objects such as exchanges, queues, bindings and policies that provides specific messaging or streaming scenario. This operator is used with RabbitMQ clusters deployed via the RabbitMQ Cluster Kubernetes Operator. This repository contains custom controllers and custom resource definitions (CRDs) enabling a declarative API for RabbitMQ messaging topologies.
          ## Prerequisites for enabling this Operator
          The operator works on top of the RabbitMQ cluster operator.
          Messaging Topology Operator is tested with the latest release of RabbitMQ Cluster Operator. It uses the generated default user secret from RabbitmqCluster (set in rabbitmqcluster.status.binding) to authenticate with RabbitMQ server.
        displayName: rabbitmq-messaging-topology-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rabbitmq
        - messaging
        - amqp
        - amqp10
        - stomp
        - mqtt
        - mqtt5
        - queues
        - streaming
        links:
        - name: GitHub
          url: https://github.com/rabbitmq/messaging-topology-operator
        - name: Documentation
          url: https://www.rabbitmq.com/kubernetes/operator/install-topology-operator.html
        maintainers:
        - email: rabbitmq-users@googlegroups.com
          name: VMware Tanzu
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        provider:
          name: VMware Tanzu
        relatedImages:
        - quay.io/community-operator-pipeline-prod/rabbitmq-messaging-topology-operator@sha256:8b221a9aebcfa2ddb6e1f1220d2ba53a4ca79ba17494b3b2a46092f590867037
        - quay.io/rabbitmqoperator/messaging-topology-operator:1.18.2
        version: 1.18.2
      entries:
      - name: rabbitmq-messaging-topology-operator.v1.18.2
        version: 1.18.2
      - name: rabbitmq-messaging-topology-operator.v1.18.1
        version: 1.18.1
      - name: rabbitmq-messaging-topology-operator.v1.17.4
        version: 1.17.4
      - name: rabbitmq-messaging-topology-operator.v1.16.0
        version: 1.16.0
      - name: rabbitmq-messaging-topology-operator.v1.15.0
        version: 1.15.0
      - name: rabbitmq-messaging-topology-operator.v1.14.2
        version: 1.14.2
      - name: rabbitmq-messaging-topology-operator.v1.14.1
        version: 1.14.1
      - name: rabbitmq-messaging-topology-operator.v1.13.0
        version: 1.13.0
      - name: rabbitmq-messaging-topology-operator.v1.12.2
        version: 1.12.2
      - name: rabbitmq-messaging-topology-operator.v1.12.1
        version: 1.12.1
      name: stable
    defaultChannel: stable
    packageName: rabbitmq-messaging-topology-operator
    provider:
      name: VMware Tanzu
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: odr-hub-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odr-hub-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east"
                },
                "spec": {
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east1"
                },
                "spec": {
                  "cidrs": [
                    "192.168.39.45/32"
                  ],
                  "clusterFence": "ManuallyFenced",
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east1"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPlacementControl",
                "metadata": {
                  "name": "drplacementcontrol-sample",
                  "namespace": "application-namespace"
                },
                "spec": {
                  "drPolicyRef": {
                    "name": "drpolicy-sample"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "excludedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "includedResources": [
                          "*"
                        ]
                      }
                    ]
                  },
                  "placementRef": {
                    "kind": "PlacementRule",
                    "name": "application-placement-rule"
                  },
                  "preferredCluster": "east",
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east",
                    "west"
                  ],
                  "replicationClassSelector": {
                    "matchLabels": {
                      "class": "ramen-replication-class"
                    }
                  },
                  "schedulingInterval": "1h",
                  "volumeSnapshotClassSelector": {
                    "matchLabels": {
                      "class": "ramen-snapshot-class"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "metrodr-drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east1",
                    "east2"
                  ],
                  "replicationClassSelector": {},
                  "schedulingInterval": {},
                  "volumeSnapshotClassSelector": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T08:01:44Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DRCluster is the Schema for the drclusters API
            displayName: DRCluster
            kind: DRCluster
            name: drclusters.ramendr.openshift.io
            version: v1alpha1
          - description: DRPlacementControl is the Schema for the drplacementcontrols
              API
            displayName: DRPlacement Control
            kind: DRPlacementControl
            name: drplacementcontrols.ramendr.openshift.io
            version: v1alpha1
          - description: DRPolicy is the Schema for the drpolicies API
            displayName: DRPolicy
            kind: DRPolicy
            name: drpolicies.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Hub is a disaster-recovery orchestrator for stateful
          applications. It operates from an Advanced Cluster Management (ACM) hub
          cluster to orchestrate the recovery of application state, and scheduling
          of ACM PlacementRule for disaster recovery operations.
        displayName: Openshift DR Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:35498d3e82e157b35b5f2270033ddc88a521453ab90c3b95e2a6a4cdf62c21c4
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: odr-hub-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odr-hub-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odr-hub-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odr-hub-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odr-hub-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odr-hub-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odr-hub-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odr-hub-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odr-hub-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odr-hub-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odr-hub-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east"
                },
                "spec": {
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east1"
                },
                "spec": {
                  "cidrs": [
                    "192.168.39.45/32"
                  ],
                  "clusterFence": "ManuallyFenced",
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east1"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPlacementControl",
                "metadata": {
                  "name": "drplacementcontrol-sample",
                  "namespace": "application-namespace"
                },
                "spec": {
                  "drPolicyRef": {
                    "name": "drpolicy-sample"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "excludedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "includedResources": [
                          "*"
                        ]
                      }
                    ]
                  },
                  "placementRef": {
                    "kind": "PlacementRule",
                    "name": "application-placement-rule"
                  },
                  "preferredCluster": "east",
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east",
                    "west"
                  ],
                  "replicationClassSelector": {
                    "matchLabels": {
                      "class": "ramen-replication-class"
                    }
                  },
                  "schedulingInterval": "1h",
                  "volumeSnapshotClassSelector": {
                    "matchLabels": {
                      "class": "ramen-snapshot-class"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "metrodr-drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east1",
                    "east2"
                  ],
                  "replicationClassSelector": {},
                  "schedulingInterval": {},
                  "volumeSnapshotClassSelector": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:50:45Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DRCluster is the Schema for the drclusters API
            displayName: DRCluster
            kind: DRCluster
            name: drclusters.ramendr.openshift.io
            version: v1alpha1
          - description: DRPlacementControl is the Schema for the drplacementcontrols
              API
            displayName: DRPlacement Control
            kind: DRPlacementControl
            name: drplacementcontrols.ramendr.openshift.io
            version: v1alpha1
          - description: DRPolicy is the Schema for the drpolicies API
            displayName: DRPolicy
            kind: DRPolicy
            name: drpolicies.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Hub is a disaster-recovery orchestrator for stateful
          applications. It operates from an Advanced Cluster Management (ACM) hub
          cluster to orchestrate the recovery of application state, and scheduling
          of ACM PlacementRule for disaster recovery operations.
        displayName: Openshift DR Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:747108b5f119ea96ab3c8f6d7035b1e98aa8df879ed772c94459500b5a715483
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        version: 4.20.4-rhodf
      entries:
      - name: odr-hub-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odr-hub-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odr-hub-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odr-hub-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odr-hub-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odr-hub-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: datagrid
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datagrid-operator.v8.2.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "adminAuth": {
                    "secretName": "basic-auth"
                  },
                  "clusterName": "example-infinispan",
                  "name": "mycache"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC batch-cache"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:1435aa60e8ab4d25c86daae68dcb93d14999f50d7c1e11a3c5726a86d3d30453
          createdAt: "2021-08-24T17:39:44Z"
          description: Create and manage Red Hat Data Grid clusters.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Restore API schema.
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Interoperability:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Data Grid Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
          Red Hat Data Grid is a distributed, in-memory data store that increases application performance and delivers open-source capabilities to handle demanding use cases.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.2/html/data_grid_operator_8.2_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.2
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:1435aa60e8ab4d25c86daae68dcb93d14999f50d7c1e11a3c5726a86d3d30453
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4d8057709958ef60bcabdcec52f05eae8df121fd3f4762c3218abca38130f638
        - registry.redhat.io/datagrid/datagrid-8-openj9-11-rhel8@sha256:c8607d6538a7528e27e6ecb138e0a93a03b3c9fa1f8a9a5aad3fd9f4a6814448
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:a7641fc5f4c7aed4b73d7d98ccb58ef64cf14ab16d72378f56dba3ad4b8714c6
        version: 8.2.8
      entries:
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: 8.2.x
    - currentCSV: datagrid-operator.v8.3.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:4d9d7221b029866837add5f3cb52dd0b7956f57996ce2d8b76344ce2de678716
          createdAt: "2022-11-03T08:40:57Z"
          description: Create and manage Red Hat Data Grid clusters.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Data Grid", "Red Hat
            Runtimes", "Red Hat Integration", "Red Hat Process Automation"]'
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request 1Gi of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.3/html/data_grid_operator_8.3_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.3
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:7dffd170b9b7d021b1615e6d746cbdfcbd819a1306ecdbaf042bcaf2202f7daa
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:4d9d7221b029866837add5f3cb52dd0b7956f57996ce2d8b76344ce2de678716
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        version: 8.3.9
      entries:
      - name: datagrid-operator.v8.3.9
        version: 8.3.9
      - name: datagrid-operator.v8.3.8
        version: 8.3.8
      - name: datagrid-operator.v8.3.7
        version: 8.3.7
      - name: datagrid-operator.v8.3.6
        version: 8.3.6
      - name: datagrid-operator.v8.3.5
        version: 8.3.5
      - name: datagrid-operator.v8.3.4
        version: 8.3.4
      - name: datagrid-operator.v8.3.3
        version: 8.3.3
      - name: datagrid-operator.v8.3.2
        version: 8.3.2
      - name: datagrid-operator.v8.3.1
        version: 8.3.1
      - name: datagrid-operator.v8.3.0
        version: 8.3.0
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: 8.3.x
    - currentCSV: datagrid-operator.v8.4.16
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:e5315682869de72514e3e027bfb02bf0bb64919453ca738c7ecfa1e34634ac2b
          createdAt: 2024-05-30T08:05:19 EDT
          description: Create and manage Red Hat Data Grid clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Data Grid", "Red Hat
            Runtimes", "Red Hat Integration", "Red Hat Process Automation"]'
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request 1Gi of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.4/html/data_grid_operator_8.4_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.4
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9d9e466b7c367d0406406550c74bc790aa68f3f875ea4f652eb28f2e25a05458
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:24cf79efa89bbfa495665b1711a27531b7ab0813695a89b2c38c96c2e792eb24
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:111d1f4ab8f006386102d1bec4cd6a41b446d9ae401a43c821b2f318c8ba74c8
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:e5315682869de72514e3e027bfb02bf0bb64919453ca738c7ecfa1e34634ac2b
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        version: 8.4.16
      entries:
      - name: datagrid-operator.v8.4.16
        version: 8.4.16
      - name: datagrid-operator.v8.4.15
        version: 8.4.15
      - name: datagrid-operator.v8.4.14
        version: 8.4.14
      - name: datagrid-operator.v8.4.13
        version: 8.4.13
      - name: datagrid-operator.v8.4.12
        version: 8.4.12
      - name: datagrid-operator.v8.4.11
        version: 8.4.11
      - name: datagrid-operator.v8.4.10
        version: 8.4.9
      - name: datagrid-operator.v8.4.8
        version: 8.4.8
      - name: datagrid-operator.v8.4.7
        version: 8.4.7
      - name: datagrid-operator.v8.4.6
        version: 8.4.6
      - name: datagrid-operator.v8.4.5
        version: 8.4.5
      - name: datagrid-operator.v8.4.4
        version: 8.4.4
      - name: datagrid-operator.v8.4.3
        version: 8.4.3
      - name: datagrid-operator.v8.4.2
        version: 8.4.2
      - name: datagrid-operator.v8.4.1
        version: 8.4.1
      - name: datagrid-operator.v8.4.0
        version: 8.4.0
      - name: datagrid-operator.v8.3.9
        version: 8.3.9
      - name: datagrid-operator.v8.3.8
        version: 8.3.8
      - name: datagrid-operator.v8.3.7
        version: 8.3.7
      - name: datagrid-operator.v8.3.6
        version: 8.3.6
      - name: datagrid-operator.v8.3.5
        version: 8.3.5
      - name: datagrid-operator.v8.3.4
        version: 8.3.4
      - name: datagrid-operator.v8.3.3
        version: 8.3.3
      - name: datagrid-operator.v8.3.2
        version: 8.3.2
      - name: datagrid-operator.v8.3.1
        version: 8.3.1
      - name: datagrid-operator.v8.3.0
        version: 8.3.0
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: 8.4.x
    - currentCSV: datagrid-operator.v8.5.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create counter --concurrency-level=1 --initial-value=5 --storage=VOLATILE --type=weak batch-counter\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "template": "\u003cdistributed-cache /\u003e"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel9-operator@sha256:d719d778b0848588a7e61d3c3fa689763f51a6533af4cf9e1c738c4ed8fac760
          createdAt: 2025-12-04T06:26:42 UTC
          description: Create and manage Red Hat Data Grid clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Data Grid", "Red Hat
            Runtimes", "Red Hat Integration", "Red Hat Process Automation"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request 1Gi of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.5/html/data_grid_operator_8.5_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.5
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:a711c50e489995fb60e5dec23ce286360743feda5066e4a0861d448aa4f2e903
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:24cf79efa89bbfa495665b1711a27531b7ab0813695a89b2c38c96c2e792eb24
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9d9e466b7c367d0406406550c74bc790aa68f3f875ea4f652eb28f2e25a05458
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:48cf13e71953cea6f62354289f0d8ece7a8a481ee0bb2c76eb9352d438db9ca3
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:f59ae21773dfc207454a709ac5f7aad2be6a6a20ac88da26c379edeed54537b8
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:0d368459c98c5788dd55d2add5b4b7d438b9a8c814ea8aee2222ea956699cbb6
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:11bfe5c8109d26164cff428232b2001ab8df464f14a382661b936543336e2960
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:ad4f91f984b4b898012963d52e6ebcd166ec03e76e26eba3191ecb87f51fb18d
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:9bc0b730570ab55fbeca83075949f4caa96ed5c37637420a59cd4a7db01ea840
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6e1766784b684561666134d41dca5331b80d50e63695fe7b1a1d6d4cdb73f0bd
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:4b9bf39d2ff14bcfbd4628a399093703d87a2b2b9c8e74c3d7cfdff4b5167fa4
        - registry.redhat.io/datagrid/datagrid-8-rhel9-operator@sha256:d719d778b0848588a7e61d3c3fa689763f51a6533af4cf9e1c738c4ed8fac760
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:1d5525d2d575dcc9d90da57afeb5fb310edc28d97d7ba55290db6bd152a34a95
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:c25e3152d6a6b6d5cd86d311bf567e594b9948440785209cd8d7986076a5a10d
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:5656cd188d054551489d45be996266d03e3faa8814b8bfc0f360cf0dceb83cbe
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6b78aaf15558c0522d22ba3003244203e6d39e6fe737c3075e30de8763218358
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:2461b1da4bea1e25b69a7bf8ef2173d905369e5a779134fa5099677da10cd8b4
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:879f3dcc24ffe795472779f777d955666ba4041c17e717d5e165cd7f12d7955a
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        version: 8.5.13
      entries:
      - name: datagrid-operator.v8.5.13
        version: 8.5.13
      - name: datagrid-operator.v8.5.12
        version: 8.5.12
      - name: datagrid-operator.v8.5.11
        version: 8.5.11
      - name: datagrid-operator.v8.5.10
        version: 8.5.10
      - name: datagrid-operator.v8.5.9
        version: 8.5.9
      - name: datagrid-operator.v8.5.8
        version: 8.5.8
      - name: datagrid-operator.v8.5.7
        version: 8.5.7
      - name: datagrid-operator.v8.5.6
        version: 8.5.6
      - name: datagrid-operator.v8.5.5
        version: 8.5.5
      - name: datagrid-operator.v8.5.4
        version: 8.5.4
      - name: datagrid-operator.v8.5.3
        version: 8.5.3
      - name: datagrid-operator.v8.5.2
        version: 8.5.2
      - name: datagrid-operator.v8.5.1
        version: 8.5.1
      - name: datagrid-operator.v8.5.0
        version: 8.5.0
      - name: datagrid-operator.v8.4.16
        version: 8.4.16
      - name: datagrid-operator.v8.4.15
        version: 8.4.15
      - name: datagrid-operator.v8.4.14
        version: 8.4.14
      - name: datagrid-operator.v8.4.13
        version: 8.4.13
      - name: datagrid-operator.v8.4.12
        version: 8.4.12
      - name: datagrid-operator.v8.4.11
        version: 8.4.11
      - name: datagrid-operator.v8.4.10
        version: 8.4.9
      - name: datagrid-operator.v8.4.8
        version: 8.4.8
      - name: datagrid-operator.v8.4.7
        version: 8.4.7
      - name: datagrid-operator.v8.4.6
        version: 8.4.6
      - name: datagrid-operator.v8.4.5
        version: 8.4.5
      - name: datagrid-operator.v8.4.4
        version: 8.4.4
      - name: datagrid-operator.v8.4.3
        version: 8.4.3
      - name: datagrid-operator.v8.4.2
        version: 8.4.2
      - name: datagrid-operator.v8.4.1
        version: 8.4.1
      - name: datagrid-operator.v8.4.0
        version: 8.4.0
      - name: datagrid-operator.v8.3.9
        version: 8.3.9
      - name: datagrid-operator.v8.3.8
        version: 8.3.8
      - name: datagrid-operator.v8.3.7
        version: 8.3.7
      - name: datagrid-operator.v8.3.6
        version: 8.3.6
      - name: datagrid-operator.v8.3.5
        version: 8.3.5
      - name: datagrid-operator.v8.3.4
        version: 8.3.4
      - name: datagrid-operator.v8.3.3
        version: 8.3.3
      - name: datagrid-operator.v8.3.2
        version: 8.3.2
      - name: datagrid-operator.v8.3.1
        version: 8.3.1
      - name: datagrid-operator.v8.3.0
        version: 8.3.0
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: stable
    defaultChannel: stable
    packageName: datagrid
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: fence-agents-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fence-agents-remediation.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediation",
                "metadata": {
                  "name": "worker-1"
                },
                "spec": {
                  "agent": "fence_ipmilan",
                  "nodeSecretNames": {
                    "master-0": "fence-agents-credentials-master0",
                    "master-1": "fence-agents-credentials-master1",
                    "master-2": "fence-agents-credentials-master2",
                    "worker-0": "fence-agents-credentials-worker0",
                    "worker-1": "fence-agents-credentials-worker1",
                    "worker-2": "fence-agents-credentials-worker2"
                  },
                  "nodeparameters": {
                    "--ipport": {
                      "master-0": "6230",
                      "master-1": "6231",
                      "master-2": "6232",
                      "worker-0": "6233",
                      "worker-1": "6234",
                      "worker-2": "6235"
                    }
                  },
                  "remediationStrategy": "ResourceDeletion",
                  "retrycount": 5,
                  "retryinterval": "5s",
                  "sharedSecretName": "fence-agents-credentials-shared",
                  "sharedparameters": {
                    "--action": "reboot",
                    "--ip": "192.168.111.1",
                    "--lanplus": "",
                    "--username": "admin"
                  },
                  "timeout": "60s"
                }
              },
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediationTemplate",
                "metadata": {
                  "name": "fenceagentsremediationtemplate-default"
                },
                "spec": {
                  "template": {
                    "spec": {
                      "agent": "fence_ipmilan",
                      "nodeSecretNames": {
                        "master-0": "fence-agents-credentials-master0",
                        "master-1": "fence-agents-credentials-master1",
                        "master-2": "fence-agents-credentials-master2",
                        "worker-0": "fence-agents-credentials-worker0",
                        "worker-1": "fence-agents-credentials-worker1",
                        "worker-2": "fence-agents-credentials-worker2"
                      },
                      "nodeparameters": {
                        "--ipport": {
                          "master-0": "6230",
                          "master-1": "6231",
                          "master-2": "6232",
                          "worker-0": "6233",
                          "worker-1": "6234",
                          "worker-2": "6235"
                        }
                      },
                      "remediationStrategy": "ResourceDeletion",
                      "retrycount": 5,
                      "retryinterval": "5s",
                      "sharedSecretName": "fence-agents-credentials-shared",
                      "sharedparameters": {
                        "--action": "reboot",
                        "--ip": "192.168.111.1",
                        "--lanplus": "",
                        "--username": "admin"
                      },
                      "timeout": "60s"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/fence-agents-remediation-operator:v0.6.0
          createdAt: "2025-11-24 11:34:19"
          description: Fence Agents Remediation Operator uses well-known agents to
            fence and remediate unhealthy nodes. The remediation includes rebooting
            the unhealthy node using a fence agent, and then evicting workloads from
            the unhealthy node.
          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.skipRange: '>=0.0.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/fence-agents-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FenceAgentsRemediation is the Schema for the fenceagentsremediations
              API
            displayName: Fence Agents Remediation
            kind: FenceAgentsRemediation
            name: fenceagentsremediations.fence-agents-remediation.medik8s.io
            version: v1alpha1
          - description: FenceAgentsRemediationTemplate is the Schema for the fenceagentsremediationtemplates
              API
            displayName: Fence Agents Remediation Template
            kind: FenceAgentsRemediationTemplate
            name: fenceagentsremediationtemplates.fence-agents-remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Fence Agents Remediation (FAR) is a Kubernetes operator that uses well-known agents to fence and remediate unhealthy nodes.
          The remediation includes rebooting the unhealthy node using a fence agent and then evicting workloads from the unhealthy node.

          ### Compatibility
          FAR is one of the remediator operators by [Medik8s](https://www.medik8s.io/remediation/remediation/),
          such as [Self Node Remediation](https://github.com/medik8s/self-node-remediation) and [Machine Deletion Remediation](https://github.com/medik8s/machine-deletion-remediation),
          that were designed to run with the Node HealthCheck Operator [(NHC)](https://github.com/medik8s/node-healthcheck-operator) which detects an unhealthy node and creates remediation CR.
          It is recommended to use FAR with NHC for an easier and smoother experience by fully automating the remediation process, but it can be used as a standalone remediator for the more experienced user.

          ### Advantages
          - Robustness - FAR has direct feedback from the traditional Application Programming Interface (API) call (e.g., IPMI) about the result of the fence action without using the Kubernetes API.
          - Speed - FAR is rapid since it can reboot a node and receive an acknowledgment from the API call while other remediators might need to wait a safe time till they can expect the node to be rebooted.
          - Diversity - FAR includes several fence agents from a large known set of upstream fencing agents for bare metal servers, virtual machines, cloud platforms, etc.
          - Adjustability - FAR allows to set up different parameters for running the API call that remediates the node.
        displayName: Fence Agents Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - fencing
        - auto-healing
        - recovery
        - high-availability
        - fence-agents
        - fence-agents-remediation
        - remediation
        - far
        - baremetal
        links:
        - name: Fence Agents Remediation
          url: https://www.medik8s.io/remediation/fence-agents-remediation/fence-agents-remediation/
        - name: Source Code
          url: https://www.github.com/medik8s/fence-agents-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/fence-agents-remediation@sha256:3c9737485019cac25171816fea587dfe4bba9eb2907af9041bd340c0cf7e6ed3
        - quay.io/medik8s/fence-agents-remediation-operator:v0.6.0
        version: 0.6.0
      entries:
      - name: fence-agents-remediation.v0.6.0
        version: 0.6.0
      - name: fence-agents-remediation.v0.5.0
        version: 0.5.0
      - name: fence-agents-remediation.v0.4.0
        version: 0.4.0
      - name: fence-agents-remediation.v0.3.0
        version: 0.3.0
      - name: fence-agents-remediation.v0.2.1
        version: 0.2.1
      - name: fence-agents-remediation.v0.2.0
        version: 0.2.0
      name: stable
    defaultChannel: stable
    packageName: fence-agents-remediation
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: unsupported
      operatorframework.io/arch.s390x: unsupported
      operatorframework.io/os.linux: supported
      provider: Konveyor
      provider-url: https://www.konveyor.io
    name: konveyor-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: konveyor-operator.v0.9.0-alpha.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:4a46b279981e9dd241b3806c380216a785778a8d5c4a8d061d226246ba881c95
          createdAt: "2025-11-18T00:34:15Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.9.0-alpha.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/postgresql-15-c9s@sha256:ccb8c231bfa69b8981b67613f4438cc84f4ce3f2b269b8dbe91d0577b7b9bba4
        - quay.io/konveyor/tackle2-operator@sha256:4a46b279981e9dd241b3806c380216a785778a8d5c4a8d061d226246ba881c95
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:cacf06f2530fa59113837792220fcf34ff8b780579da063de338015d9ed30bf2
        - quay.io/konveyor/java-external-provider@sha256:fac1f5660cd9fe052581b099fd103c017df2c067c708eb306daa04ec54319ea9
        - quay.io/konveyor/kai-solution-server@sha256:0019fa97e13e1c91cc73aa116a63f979e1feee04324eb6eefcd437aa0b788d9f
        - quay.io/konveyor/tackle2-addon-discovery@sha256:61f52dff8e1f586ef7ba8e38771c057c28a49c6a75c5342819b872954dd4df43
        - quay.io/konveyor/tackle-keycloak-init@sha256:26458527bdb0a00c3512c00d17d33d89a8fb0e6b5f750f40b946bf6442bbb30d
        - quay.io/konveyor/kantra@sha256:233447c01584712a183c058158d73ac9fb600a80250e4fe9d4cbea410d8da129
        - quay.io/konveyor/tackle2-hub@sha256:9e3e0c513e33bb916ad374b1e1a6b6bb01167dd121d25cf88ebd6688d590628d
        - quay.io/konveyor/origin-oauth-proxy@sha256:d46a89fe587f8f55a292d871085584d7ba1910a61979c7e56c5bf7ca680a0a9a
        - quay.io/konveyor/tackle2-addon-platform@sha256:9a731b5da30f2c9e0c9a00a941cf8da59eb7b911e025fef94531156f47bdf7f0
        - quay.io/konveyor/tackle2-ui@sha256:47a8b1ae89ccfc26495ac7c446cbe7635d371f7b87cc139ba0283958f30ec545
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:98176feb3772609445c129f78ec3051cda24eea703b48cc2b55cfb25cd2c0f70
        - quay.io/konveyor/generic-external-provider@sha256:a2f9de8afe702b881ab8ea96a32f78ba39953a02af1f22650bd49c93a371f621
        version: 0.9.0-alpha.1
      entries:
      - name: konveyor-operator.v0.9.0-alpha.1
        version: 0.9.0-alpha.1
      - name: konveyor-operator.v0.8.1-alpha.5
        version: 0.8.1-alpha.5
      - name: konveyor-operator.v0.8.1-alpha.2
        version: 0.8.1-alpha.2
      - name: konveyor-operator.v0.8.0-alpha.4
        version: 0.8.0-alpha.4
      - name: konveyor-operator.v0.8.0-alpha.2
        version: 0.8.0-alpha.2
      - name: konveyor-operator.v0.8.0-alpha.1
        version: 0.8.0-alpha.1
      - name: konveyor-operator.v0.7.0-alpha.2
        version: 0.7.0-alpha.2
      - name: konveyor-operator.v0.7.0-alpha.1
        version: 0.7.0-alpha.1
      - name: konveyor-operator.v0.6.0-alpha.2
        version: 0.6.0-alpha.2
      - name: konveyor-operator.v0.6.0-alpha.1
        version: 0.6.0-alpha.1
      - name: konveyor-operator.v0.5.0-alpha.1
        version: 0.5.0-alpha.1
      - name: konveyor-operator.v0.4.0-alpha.1
        version: 0.4.0-alpha.1
      - name: konveyor-operator.v0.3.0-alpha.6
        version: 0.3.0-alpha.6
      - name: konveyor-operator.v0.3.0-alpha.5
        version: 0.3.0-alpha.5
      - name: konveyor-operator.v0.3.0-alpha.4
        version: 0.3.0-alpha.4
      - name: konveyor-operator.v0.3.0-alpha.3
        version: 0.3.0-alpha.3
      - name: konveyor-operator.v0.3.0-alpha.2
        version: 0.3.0-alpha.2
      - name: konveyor-operator.v0.3.0-alpha.1
        version: 0.3.0-alpha.1
      - name: konveyor-operator.v0.2.0-alpha.3
        version: 0.2.0-alpha.3
      - name: konveyor-operator.v0.2.0-alpha.2
        version: 0.2.0-alpha.2
      - name: konveyor-operator.v0.2.0-alpha.1
        version: 0.2.0-alpha.1
      name: alpha
    - currentCSV: konveyor-operator.v0.8.1-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:1a38f0f8f001985ebdcb3fe7d87a109720cf70384d6e0356f92c445b4de86383
          createdAt: "2025-11-17T21:54:00Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.8.1-beta.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/postgresql-15-c9s@sha256:ccb8c231bfa69b8981b67613f4438cc84f4ce3f2b269b8dbe91d0577b7b9bba4
        - quay.io/konveyor/tackle2-operator@sha256:1a38f0f8f001985ebdcb3fe7d87a109720cf70384d6e0356f92c445b4de86383
        - quay.io/konveyor/tackle2-ui@sha256:d792f07491bc3be53c657655d7e4b19512c29a3bec09d7c60fd27b97587379ee
        - quay.io/konveyor/kai-solution-server@sha256:d2b2eea76e6039b6ce18ef6f556a9312e1a26105e6d44785555213f65c28f914
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:4e09e172df63b05ab5f0de1acc0190d655bbb702c19db7cc16d1c7cb3e1de566
        - quay.io/konveyor/tackle2-addon-discovery@sha256:718e6736a47da8b9a2cd2847e28576d91ce2b62e3206412f4daefcce03d58376
        - quay.io/konveyor/tackle2-hub@sha256:d84629e468e52dd5fd2ce9b32a33fc1aeea18107bbb0ce1525cb0271d6d99476
        - quay.io/konveyor/tackle-keycloak-init@sha256:bf87edaf6dae20f47bd5fd2e3a0030e8f26d53d256fbae650ae1d6d6df708668
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:3d061a070f2b64edcf34280830962a7e10595550d357ad8b3a70b3fb3b66b068
        - quay.io/konveyor/kantra@sha256:5903643763e0f68b56ed1ac9f5579bed287fb6572b2c35776f0089b912ad7c04
        - quay.io/konveyor/tackle2-addon-platform@sha256:19d5344169cfcf748a2938789b79c8ef3283cfb296990236d87d144b72dfda62
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/generic-external-provider@sha256:7248c8c10c058f3e76d6ba2a9483a6d8bb96a729467bb25a079b89753ba7ea83
        - quay.io/konveyor/java-external-provider@sha256:666b513f31757fa44d0bc11d5c7e2c15c8be7f318b12626a85ac501c4b246a8c
        - quay.io/konveyor/origin-oauth-proxy@sha256:d46a89fe587f8f55a292d871085584d7ba1910a61979c7e56c5bf7ca680a0a9a
        version: 0.8.1-beta.1
      entries:
      - name: konveyor-operator.v0.8.1-beta.1
        version: 0.8.1-beta.1
      - name: konveyor-operator.v0.8.0-beta.5
        version: 0.8.0-beta.5
      - name: konveyor-operator.v0.8.0-beta.4
        version: 0.8.0-beta.4
      - name: konveyor-operator.v0.8.0-beta.2
        version: 0.8.0-beta.2
      - name: konveyor-operator.v0.8.0-beta.1
        version: 0.8.0-beta.1
      - name: konveyor-operator.v0.6.0-beta.2
        version: 0.6.0-beta.2
      - name: konveyor-operator.v0.6.0-beta.1
        version: 0.6.0-beta.1
      - name: konveyor-operator.v0.5.0-beta.3
        version: 0.5.0-beta.3
      - name: konveyor-operator.v0.5.0-beta.2
        version: 0.5.0-beta.2
      - name: konveyor-operator.v0.5.0-beta.1
        version: 0.5.0-beta.1
      - name: konveyor-operator.v0.3.0-beta.3
        version: 0.3.0-beta.3
      - name: konveyor-operator.v0.3.0-beta.2
        version: 0.3.0-beta.2
      - name: konveyor-operator.v0.3.0-beta.1.2
        version: 0.3.0-beta.1.2
      - name: konveyor-operator.v0.3.0-beta.1.1
        version: 0.3.0-beta.1.1
      - name: konveyor-operator.v0.3.0-beta.1
        version: 0.3.0-beta.1
      name: beta
    - currentCSV: konveyor-operator.v0.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "move2kube-plan",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "image": "quay.io/konveyor/tackle-addon-move2kube-plan:latest"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:9688d0763d8c7812beee715a061c3c198006448855d7b891d45833f62cf869fb
          createdAt: "2023-05-25T15:23:45Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.1.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)

        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle2-addon-windup@sha256:81f0625cb82eb24ded51c7258f229f57778820c62e3be6ec05fb2b12d2970825
        - quay.io/konveyor/tackle2-addon@sha256:35be344bbd3393f5634f52aafd21e9c3964d1e0ba5011ecad1561600d476bbe9
        - quay.io/konveyor/tackle2-operator@sha256:9688d0763d8c7812beee715a061c3c198006448855d7b891d45833f62cf869fb
        - quay.io/konveyor/postgresql-12-centos7@sha256:1287d947464fbf5275feb31d106d2feb856c6117f0eaec8d947f2e03bd8618c5
        - quay.io/openshift-community-operators/konveyor-operator@sha256:04e63481c5104bd034283d5d4b0567167f62480d2c61154b1d16dbd41c344dfb
        - quay.io/konveyor/tackle-keycloak-init@sha256:b0347e5a608352c4b7bb796b65a67d417e98ba4896db71a487fa26243214cfcf
        - quay.io/konveyor/tackle-pathfinder@sha256:f9c5aa49f1d27f477cdd82c21441ae0287acdcdc9b2b3fcf197884007dc5f7dd
        - quay.io/konveyor/tackle2-hub@sha256:3d15d158ffb6f1fc4ca5aaf29a12173fe344c289773902c9161056bdf69acc92
        - quay.io/konveyor/tackle2-ui@sha256:99650804e65e2b6cb15a37c00189d7f463e4d19a0f866a79e9c09c8420a4d028
        version: 0.1.2
      entries:
      - name: konveyor-operator.v0.1.2
        version: 0.1.2
      - name: konveyor-operator.v0.1.1
        version: 0.1.1
      - name: konveyor-operator.v0.1.0
        version: 0.1.0
      name: konveyor-0.1
    - currentCSV: konveyor-operator.v0.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "move2kube-plan",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "image": "quay.io/konveyor/tackle-addon-move2kube-plan:latest"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:1860bb099ac64d9a2af27692f0671b7240e4d19746fffa9f9ae2356ff2818e10
          createdAt: "2023-07-06T06:17:40Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.2.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)

        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-operator@sha256:1860bb099ac64d9a2af27692f0671b7240e4d19746fffa9f9ae2356ff2818e10
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle-keycloak-init@sha256:ca6c85bdf8417d4be116c2098b8d8ad5ae8b7ab0b636c4cbe4a392aa424e2d47
        - quay.io/konveyor/tackle-pathfinder@sha256:190269b061b2065ca8ba9357bf9b959a2f587a547a44769ae0afd1ac86b4b197
        - quay.io/konveyor/tackle2-addon@sha256:11693e16363bcd98249209d63a29f0c6cfffab3a4071649cbeea2fd276bc2440
        - quay.io/konveyor/tackle2-hub@sha256:d9c4f21f44098a2526474968b6d88094dca8b5eaeb9042716332c9cb67df47cd
        - quay.io/openshift-community-operators/konveyor-operator@sha256:d4c590033b1a2bcd67375465298e5cb6d136fe091abb12b8d009aa683c23ef62
        - quay.io/konveyor/postgresql-12-centos7@sha256:6016530ab1fce71d29421ce9a97b3a89fbbb126b87b1b079c6aadebb7ff5664c
        - quay.io/konveyor/tackle2-ui@sha256:d10c1e717d160c5eb2581649a8dd7cdf4922a74d92db014f72f42a48a3134341
        - quay.io/konveyor/tackle2-addon-windup@sha256:538dfdb134d53a876d126dbd16679638584a606ef2b9e8fbe69ed1f29733c03a
        version: 0.2.1
      entries:
      - name: konveyor-operator.v0.2.1
        version: 0.2.1
      - name: konveyor-operator.v0.2.0
        version: 0.2.0
      name: konveyor-0.2
    - currentCSV: konveyor-operator.v0.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:cd2305373f50ce927393e43f5735915e46c32d6f8a76091ee2808218885bba72
          createdAt: "2024-05-02T22:12:42Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.3.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-operator@sha256:cd2305373f50ce927393e43f5735915e46c32d6f8a76091ee2808218885bba72
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:51bda0c6577c15684583d607a4f0cebef760814102423f4b2025016093a19fc1
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:848db711d9e8a329b689b40003293fce19c43faedd31afd80d9ae9d5c11cda49
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle2-ui@sha256:bbf58d2ea613489f91efae450421afafb9052416b0d7971606e2729e89fd7de6
        - quay.io/konveyor/origin-oauth-proxy@sha256:05f6bd1216b921b1f47a3821f0e22b84ed6b141bb2ada474c12bd9fde613108c
        - quay.io/konveyor/tackle-keycloak-init@sha256:a63702cc0cb36830a7830ed70ca344a9aacc201ba6f3c94806ca2e93160df4dd
        - quay.io/konveyor/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/konveyor/tackle2-hub@sha256:bf8803721d06d1a39251e22892343a013d5ef0fb4c1883c95e1eb55aa683f486
        version: 0.3.2
      entries:
      - name: konveyor-operator.v0.3.2
        version: 0.3.2
      - name: konveyor-operator.v0.3.1
        version: 0.3.1
      - name: konveyor-operator.v0.3.0
        version: 0.3.0
      name: konveyor-0.3
    - currentCSV: konveyor-operator.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:496db8ca859608d04008ac36cf7bdc9cafd7214294d33a9c5646083c361ffcb6
          createdAt: "2024-06-05T03:08:51Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.4.0'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/origin-oauth-proxy@sha256:05f6bd1216b921b1f47a3821f0e22b84ed6b141bb2ada474c12bd9fde613108c
        - quay.io/konveyor/tackle-keycloak-init@sha256:4c7e07b1fce05f7dca47edecc0ba0ce373cc38e48879cc7eed72510d2865a18e
        - quay.io/konveyor/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:e84ea36d206a8c143794e3986940377e77c7618225cad594bdf9a4047d7823dc
        - quay.io/konveyor/tackle2-hub@sha256:b87acd8e2ee4a7edc4369bc375f64e2b98bc479d09556439e2ee4d74b74970a9
        - quay.io/konveyor/tackle2-ui@sha256:cb1255fc5fa4608fc659c3455f3164664b960cc2d9a3b2208967798e3532df78
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:e29f175a799597c84f0663a66767bba24feb78f802516056b35b5beb14d9eb41
        - quay.io/konveyor/tackle2-operator@sha256:496db8ca859608d04008ac36cf7bdc9cafd7214294d33a9c5646083c361ffcb6
        version: 0.4.0
      entries:
      - name: konveyor-operator.v0.4.0
        version: 0.4.0
      name: konveyor-0.4
    - currentCSV: konveyor-operator.v0.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:474d739ed470701b628f1f9e971925ac7fbe0b543f3e36305d932b963b1225fd
          createdAt: "2024-08-27T15:48:02Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.5.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-hub@sha256:faf91ca68e24979642a44fa013b1fb9edfee415eee835ccef9dce2eb418e2909
        - quay.io/konveyor/tackle2-ui@sha256:36f29fe01d3078f0e100b24d1ed126850c5a773f4b0ae922fd4c4487de1ac29d
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:2d58f12044b0951c87c851527240196db148acb9797e6ac49f9474a6e6039d71
        - quay.io/konveyor/generic-external-provider@sha256:334a631538d31efc8d82adae4f52303336800fa3037b5055c72400918d81955c
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle-keycloak-init@sha256:5f652be5914ae6e23537b9fe02ccc9cd638c08de5462d9f58135a405c81f5287
        - quay.io/konveyor/tackle2-operator@sha256:474d739ed470701b628f1f9e971925ac7fbe0b543f3e36305d932b963b1225fd
        - quay.io/konveyor/postgresql-15-c9s@sha256:039ce764cadd03b4cfea954700139b8ceff415a9a0970baa7f2cf60f7f929174
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:2afbe8bea09904e084e026cd0a294fbe1c7b05d0e387f6633b09c5eaf4665e02
        - quay.io/konveyor/tackle2-addon-discovery@sha256:461f960bb1d29e719fb472fe9be9cf3deca17d984687957f54546a09047b0d3c
        - quay.io/konveyor/java-external-provider@sha256:33fb5d24b998f01c481a0a03e3f1bf3f7a6c93f5b662885102a0c966026e3375
        - quay.io/konveyor/origin-oauth-proxy@sha256:1db28585d10c8ccc65a38b5d4977e6566661411f51d44ec1fb8b8a562087d86c
        version: 0.5.3
      entries:
      - name: konveyor-operator.v0.5.3
        version: 0.5.3
      - name: konveyor-operator.v0.5.1
        version: 0.5.1
      - name: konveyor-operator.v0.5.0
        version: 0.5.0
      name: konveyor-0.5
    - currentCSV: konveyor-operator.v0.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:8ee143c473570efd27b6f93332dc272871e11c66cc20f381c3a1e6e5688abf68
          createdAt: "2025-03-05T21:14:52Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.6.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/postgresql-15-c9s@sha256:55f8014c1edafab8f9085228a0d207c4e98820c615be34b935ce98e942d388b1
        - quay.io/konveyor/tackle2-addon-discovery@sha256:3eb6f395c451e2c9a867871b3984a25f9f8e6ddcfe388f37fbd6d46a61a70b1e
        - quay.io/konveyor/tackle-keycloak-init@sha256:a3741269aa15edd2f9fb7df853a03a942d16a88eec114f3e54f82ef63b82adc4
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:0b5cbb322fbe96335522410376c2e8505a8302088c0e454f3e5e7e28ba7c96a6
        - quay.io/konveyor/tackle2-hub@sha256:52a8b9be038fbfbc4e22172a4a8c7191d2b06fd8670e5df2ec442e3ce00d8c8a
        - quay.io/konveyor/tackle2-ui@sha256:12b0eda13a63508b9c13d4f9309bbfbe19d564627cf0de672307af1a6ec993fb
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle2-operator@sha256:8ee143c473570efd27b6f93332dc272871e11c66cc20f381c3a1e6e5688abf68
        - quay.io/konveyor/generic-external-provider@sha256:27c1731859a4a639d2750cff8d1246281f4b0466bb5b069169c3e170c3c19b30
        - quay.io/konveyor/java-external-provider@sha256:15148cde9a6fedef2207fe36f0ac3bd1ecdc6e3ac76f1cbec9eb97ffcf247231
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/origin-oauth-proxy@sha256:1db28585d10c8ccc65a38b5d4977e6566661411f51d44ec1fb8b8a562087d86c
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:7b8bdecbe3b3def1ec810ad53f604c7a71daebcfa7433cbb3a0db937580d087c
        version: 0.6.1
      entries:
      - name: konveyor-operator.v0.6.1
        version: 0.6.1
      - name: konveyor-operator.v0.6.0
        version: 0.6.0
      name: konveyor-0.6
    - currentCSV: konveyor-operator.v0.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:f5870bc26b2a07ddacf00ed5b5f7df7d1068489010a80bcc543686c6c9576fbb
          createdAt: "2025-07-10T15:16:17Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.7.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/tackle-keycloak-init@sha256:dab4cb1229c8a729d14b4cecb4aa3b5c4d48e94c36e84d785c922fc08d120617
        - quay.io/konveyor/tackle2-addon-discovery@sha256:60951801aa539ee59cd43f3c5f42a2ca751ca70e995cbb258b7d55ebb24d8450
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:7ed52ea9b95650241b5c2c01914775e29be23f7ed75fabb6e7c71969f3f0728f
        - quay.io/konveyor/tackle2-operator@sha256:f5870bc26b2a07ddacf00ed5b5f7df7d1068489010a80bcc543686c6c9576fbb
        - quay.io/konveyor/generic-external-provider@sha256:facca8861559a658710ad3aef8b325731595bf944cce1907715d6efd33887072
        - quay.io/konveyor/tackle2-hub@sha256:52f66607f3134a4165ce691c6e9ce992d93927e9591055daafdc1bfc1dd09dd9
        - quay.io/konveyor/tackle2-ui@sha256:f87b04762fd163f40c49f3bcffd473f0c3f80a643576c6a3e2c2b4a14395c09f
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:16c4f165143b8bab7f3eb08c815c2cae0dbf7fffd9ce7a625357be5806c24c5c
        - quay.io/konveyor/origin-oauth-proxy@sha256:2c811da843057119b246784f21dc7eec490669a8569e8295d8e914cdce555b24
        - quay.io/konveyor/postgresql-15-c9s@sha256:41460103a0bab189cd77acb6e741d9c5a6d3506479f7e56df40eb156d9b2cadd
        - quay.io/konveyor/java-external-provider@sha256:a0ef733e9fce3845d02b5360440add85427acad697d2157ef92242dec06bd73b
        version: 0.7.1
      entries:
      - name: konveyor-operator.v0.7.1
        version: 0.7.1
      - name: konveyor-operator.v0.7.0
        version: 0.7.0
      name: konveyor-0.7
    - currentCSV: konveyor-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:68b6672fccdf54c65cc83f4c82db023053d6b61409bea880f58b53ccfea7b1ed
          createdAt: "2025-09-29T20:41:09Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.8.0'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:8c82ad880ca2a2d5cd4b08125feca16d13d014d15f4f77677306086d1067f9aa
        - quay.io/konveyor/tackle2-ui@sha256:f3f7380be65ff1fb3459c37a3d4865354bab685dc836893f78221f16ba579f70
        - quay.io/konveyor/tackle2-addon-discovery@sha256:96a5b37834fbed9506014bcbd909258081fd833ef9e16daa104effd0e3a3c6ea
        - quay.io/konveyor/kantra@sha256:a5b5591a51143574a6ce6678b141b9cd3e14328c6fad773412dde21b442fe364
        - quay.io/konveyor/generic-external-provider@sha256:c7b6618bfff81d73f1b455963107ffdaf19334e6552ce076c009476da3f37f21
        - quay.io/konveyor/tackle-keycloak-init@sha256:c0051b8c3a3c891fe12012623aee775080ecb47af8a4e75b8be8b0b4855d9f2c
        - quay.io/konveyor/tackle2-hub@sha256:b3e6db1ffc195143b8e5d54b60949256e154b0f8b667736512a084e015cdf2a7
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:c28522543b039454d2d97b48198d099ac0b8211cbc58f13468d5f70b9f69b037
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/origin-oauth-proxy@sha256:8988f14db7dde3edcaed0541cecb0b4fd58fab9dbaffb79a6c1c4aee13b9bd73
        - quay.io/konveyor/tackle2-addon-platform@sha256:d0280ade44ba5e15210c07342608576b38e6993af2e479740675a4706cd2c875
        - quay.io/konveyor/java-external-provider@sha256:8eab08a04e98051f89352250d63523a5b591f35a6497f5d69a5a9d556a94abf9
        - quay.io/konveyor/postgresql-15-c9s@sha256:af275f35a307367dcee9a339a6903cf79e3a8a41cabf79fb7cea7015895f0b58
        - quay.io/konveyor/kai-solution-server@sha256:bab6e224c50de5b44cc37ce0297a3b91255efc08c1ad0fccf14fef9e5182775f
        - quay.io/konveyor/tackle2-operator@sha256:68b6672fccdf54c65cc83f4c82db023053d6b61409bea880f58b53ccfea7b1ed
        version: 0.8.0
      entries:
      - name: konveyor-operator.v0.8.0
        version: 0.8.0
      name: konveyor-0.8
    - currentCSV: konveyor-operator.v0.7.0-rc.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
          createdAt: "2025-05-21T17:12:48Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.7.0-rc.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-ui@sha256:afe9141366a23c072286517e9af5436d14fd1df775aaa2fa13c3911764515777
        - quay.io/konveyor/origin-oauth-proxy@sha256:6c2847fd9667938b1d1294d988038e885e43cd9fb378862dae3419ce4f21631f
        - quay.io/konveyor/tackle-keycloak-init@sha256:c3124971dc31be9201de2a6a1f6b2f886adf4c96731188dd5e750798cde3cfe7
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:46150725a2adbde8dfdc2250614d437a50e64bbf0b4562dabc73715a287de67b
        - quay.io/konveyor/tackle2-addon-discovery@sha256:89d2b0f8636897eb4dc1957a74a5b5041c0f3267a747adcf2bc6ca56b17b9937
        - quay.io/konveyor/generic-external-provider@sha256:de55f78939576c110eb6f084a7ca51338fedba699fbb5135f23392783a5d7b95
        - quay.io/konveyor/java-external-provider@sha256:61ab20e37916abfeeadde685336660f0e8bbf519403d1f7100d43c1e42a72fbd
        - quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:fbf82685700aaea953a99e98e0c28b56e54ca6972e390f44c07957aa8df29442
        - quay.io/konveyor/postgresql-15-c9s@sha256:012cd6611aa9d3f4e0a82636d6817f381c19e3b0809199216fbe7fa3396a2ef5
        - quay.io/konveyor/tackle2-hub@sha256:bed834eb5488eef23b0d1e8af194b0646cf74c39c197e0d57acc5aed2299d9f5
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        version: 0.7.0-rc.1
      entries:
      - name: konveyor-operator.v0.7.0-rc.1
        version: 0.7.0-rc.1
      - name: konveyor-operator.v0.6.0-rc.2
        version: 0.6.0-rc.2
      - name: konveyor-operator.v0.6.0-rc.1
        version: 0.6.0-rc.1
      - name: konveyor-operator.v0.5.0-rc.1
        version: 0.5.0-rc.1
      - name: konveyor-operator.v0.3.0-rc.4
        version: 0.3.0-rc.4
      - name: konveyor-operator.v0.3.0-rc.3
        version: 0.3.0-rc.3
      - name: konveyor-operator.v0.3.0-rc.2
        version: 0.3.0-rc.2
      - name: konveyor-operator.v0.3.0-rc.1
        version: 0.3.0-rc.1
      name: rc
    - currentCSV: konveyor-operator.v0.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:33cf01f19a7043bcc5bdb12a3ed6bde7a9094981aa2383554111ebec9b4ba498
          createdAt: "2025-03-26T20:25:41Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.6.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle-keycloak-init@sha256:e32fa48351f410361e8bc100303deeb40d8a66d7eefb0cf7b1bc16e067a9a795
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:734752be111a97e4b7e0030d563c32883f419ad031b2f350cb8e7333f2f37de3
        - quay.io/konveyor/tackle2-ui@sha256:3c568c6047a044095080b6013b643a4041deae7b45936a443d4c4d708a81b945
        - quay.io/konveyor/tackle2-operator@sha256:33cf01f19a7043bcc5bdb12a3ed6bde7a9094981aa2383554111ebec9b4ba498
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/origin-oauth-proxy@sha256:1db28585d10c8ccc65a38b5d4977e6566661411f51d44ec1fb8b8a562087d86c
        - quay.io/konveyor/tackle2-addon-discovery@sha256:1b89266d6bdfa497ba8137e0d33ff53785ac476dd96bf4fd9a185ef0ddf513ce
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:18ba5c587dc613f9c1a8bc9e66081e52f3a37eedeea5e75881e628e9c35ef460
        - quay.io/konveyor/generic-external-provider@sha256:bc1112352f1a2c3172c5e7d5e637b5c5a69bf7d98b78f494fa593e8872e5cfd1
        - quay.io/konveyor/java-external-provider@sha256:fe85689b57125d678df685012b93c8a567fcb9251777cd711e9b82bdb22a734c
        - quay.io/konveyor/tackle2-hub@sha256:0df49087d0c9341c2120a7c3aa2ba7907c056f94e1602ffd0496ca7113c75382
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/postgresql-15-c9s@sha256:7957d3b272b9f4e469bdc0c514ec9e70e8fbdc34a7250b4f4c62f9bb73cbf08d
        version: 0.6.2
      entries:
      - name: konveyor-operator.v0.6.2
        version: 0.6.2
      name: release-0.6
    - currentCSV: konveyor-operator.v0.7.0-rc.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
          createdAt: "2025-05-21T17:12:48Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.7.0-rc.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/origin-oauth-proxy@sha256:6c2847fd9667938b1d1294d988038e885e43cd9fb378862dae3419ce4f21631f
        - quay.io/konveyor/tackle-keycloak-init@sha256:c3124971dc31be9201de2a6a1f6b2f886adf4c96731188dd5e750798cde3cfe7
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:fbf82685700aaea953a99e98e0c28b56e54ca6972e390f44c07957aa8df29442
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/tackle2-ui@sha256:afe9141366a23c072286517e9af5436d14fd1df775aaa2fa13c3911764515777
        - quay.io/konveyor/postgresql-15-c9s@sha256:012cd6611aa9d3f4e0a82636d6817f381c19e3b0809199216fbe7fa3396a2ef5
        - quay.io/konveyor/tackle2-addon-discovery@sha256:89d2b0f8636897eb4dc1957a74a5b5041c0f3267a747adcf2bc6ca56b17b9937
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:46150725a2adbde8dfdc2250614d437a50e64bbf0b4562dabc73715a287de67b
        - quay.io/konveyor/tackle2-hub@sha256:bed834eb5488eef23b0d1e8af194b0646cf74c39c197e0d57acc5aed2299d9f5
        - quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
        - quay.io/konveyor/generic-external-provider@sha256:de55f78939576c110eb6f084a7ca51338fedba699fbb5135f23392783a5d7b95
        - quay.io/konveyor/java-external-provider@sha256:61ab20e37916abfeeadde685336660f0e8bbf519403d1f7100d43c1e42a72fbd
        version: 0.7.0-rc.1
      entries:
      - name: konveyor-operator.v0.7.0-rc.1
        version: 0.7.0-rc.1
      name: release-0.7
    defaultChannel: alpha
    packageName: konveyor-operator
    provider:
      name: Konveyor
      url: https://www.konveyor.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Korrel8r
      provider-url: https://github.com/korrel8r/korrel8r
    name: korrel8r
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: korrel8r.v0.1.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "korrel8r.openshift.io/v1alpha1",
                "kind": "Korrel8r",
                "metadata": {
                  "name": "korrel8r",
                  "namespace": "korrel8r"
                },
                "spec": {
                  "debug": {
                    "verbose": 1
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional,Monitoring,Logging & Tracing
          containerImage: quay.io/korrel8r/operator:0.1.8
          createdAt: "2024-09-27T17:45:00Z"
          description: Correlate cluster resources and observability data.
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "korrel8r.openshift.io/v1alpha1",
              "kind": "Korrel8r",
              "metadata": {
                "name": "korrel8r",
                "namespace": "korrel8r"
              }
            }
          operatorframework.io/suggested-namespace: korrel8r
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/korrel8r/korrel8r
          support: Korrel8r Project
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Korrel8r is a service that correlates observabililty signals
              in the cluster.
            displayName: Korrel8r
            kind: Korrel8r
            name: korrel8rs.korrel8r.openshift.io
            version: v1alpha1
        description: |
          Korrel8r helps navigate from problem symptoms to related resources and signal data that can reveal the cause.
          It can follow relationships between disjointed observability "silos" (logs, metrics, alerts and more) to bring together all the data available to solve a problem.
          This operator allows Korrel8r to be deployed as a cluster service with a REST API.
          It can be used as a back-end for data correlation by the OpenShift console and other tools.
        displayName: Korrel8r
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - signal
        - correlation
        links:
        - name: Documentation
          url: https://korrel8r.github.io/korrel8r
        - name: Source Code and Issues
          url: https://github.com/korrel8r/korrel8r
        maintainers:
        - email: korrel8r@gmail.com
          name: Korrel8r Project
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Korrel8r
          url: https://github.com/korrel8r/korrel8r
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/korrel8r@sha256:f00f8a7e2011bcc97d87fc7f5bb40a19d6b5737d1f5d7f3b2322ec39009c0618
        - quay.io/korrel8r/operator:0.1.8
        version: 0.1.8
      entries:
      - name: korrel8r.v0.1.8
        version: 0.1.8
      - name: korrel8r.v0.1.7
        version: 0.1.7
      - name: korrel8r.v0.1.5
        version: 0.1.5
      - name: korrel8r.v0.1.3
        version: 0.1.3
      - name: korrel8r.v0.1.2
        version: 0.1.2
      - name: korrel8r.v0.0.8
        version: 0.0.8
      name: stable
    defaultChannel: stable
    packageName: korrel8r
    provider:
      name: Korrel8r
      url: https://github.com/korrel8r/korrel8r
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Randoli
      provider-url: https://www.randoli.io
    name: app-insights-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: app-insights-operator.v1.17.9-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "appinsights.randoli/v1beta1",
                "kind": "RandoliAgent",
                "metadata": {
                  "name": "randoli",
                  "namespace": "randoli-agents"
                },
                "spec": {
                  "costManagement": {
                    "opencost": {
                      "exporter": {
                        "image": {
                          "tag": "1.112.1"
                        }
                      }
                    },
                    "vpaOperator": {
                      "enabled": false
                    }
                  },
                  "logs": {
                    "vector": {
                      "agent": {
                        "containerSecurityContext": {
                          "privileged": true
                        }
                      }
                    }
                  },
                  "network": {
                    "standaloneConsole": {
                      "enable": true
                    }
                  },
                  "observability": {
                    "netobserv": {
                      "enabled": false
                    },
                    "otel": {
                      "operator": {
                        "enabled": false
                      }
                    }
                  },
                  "resources": {
                    "limits": {
                      "memory": "2Gi"
                    },
                    "requests": {
                      "cpu": "50m",
                      "memory": "512Mi"
                    }
                  },
                  "securityContext": {
                    "fsGroup": 1001
                  },
                  "tags": {
                    "costManagement": false,
                    "observability": false
                  }
                }
              }
            ]
          categories: Developer Tools
          containerImage: docker.io/randoli/app-insights-operator:1.17.9-1@sha256:80858b56529695f8ee2750a0f1cc1b300a58ff7563af853f61b421573842fef6
          createdAt: "2025-12-15T21:20:19Z"
          description: Randoli Agent connects OpenShift clusters to Randoli Observability
            & Cost Management.
          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.properties: '[]'
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Randoli
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: RandoliAgent
            name: randoliagents.appinsights.randoli
            version: v1beta1
        description: |-
          This operator provides a container-based agent to be installed in your OpenShift clusters for connecting to Randoli Observability & Cost Management platforms

          Randoli Observability is built on the strong foundation provided by OpenShift & OpenTelemetry.

          AI driven capabilities reduces MTTR by 40% - [learn more](https://www.randoli.io/solutions/sre-agent)

          The platform stores & analyzes telemetry locally & ingest only signals, reducing the cost by 50-70% compared to our competitors. - [learn more](https://www.randoli.io)

          Your logs & traces never leave your environment, preserving data security & sovereignty

          ***Analyze logs, traces & metrics locally reduce cost by 50-70%***

          Our innovative approach separates control plane from data plane resulting in significant cost savings.
          You control retention, data security & sovereignty.

          Telemetry Analyzed Locally to Extract Signals
          Retrieve Telemetry On-Demand, During Investigation
          Pay for Signals not Raw Telemetry Ingestion

          ***OpenTelemetry Native***

          Randoli Observability is OpenTelemetry native, providing you with a vendor nuetral approach for instrumenting, collecting & processing of telemetry data.
          This avoid vendor lock-in and puts you in control of your own telemetry data.

          ***AI driven Observability & Incident Management reduces MTTR***

          Reduce your MTTR (Mean Time To Resolution) by 40%
          Our SRE Agent works alongside your team to

          Proactively detect issues
          Execute preapproved Runbooks
          Create Issue Reports & Incident Reports

          ***Real time log monitoring within your environment***

          Automatically detect recurring issues directly from your application logs, with no data ever leaving your environment.

          Local log scanning with zero egress
          Proactive real-time detection of recurring issues
          Complete data privacy within your environment

          ***Gen AI Observability***

          Monitor cost, latency, and reliability of your LLM applications, without adding a separate stack or agent.

          View model-level usage, latency, and token breakdowns
          Trace end-to-end performance across LLM and infrastructure layers
          Track request duration, error rates, and token usage per model
          Works out-of-the-box with OpenAI, Claude, HuggingFace, Llama, and more

          ***Cost Monitoring & Chargeback***

          Cost visiblity & monitoring helps organizations analysize & optimize their costs with actionable insights.
          Cost analytics provides breakdowns by resources, workloads, namespaces & cost-groups helping you understand the make up of your OpenShift cluster costs.
          Efficiency & Right-Sizing insights helps you optimize your workloads to find the right balance between cost savings & performance.
          Cost Alerts helps you understand cost spikes and a breakdown of resources & workloads that contributed to the spike, helping you to take corrective action if need be.
          Attribute OpenShift & shared platform costs as well as application costs to business units.

          **Prerequisites**

          If you are using the Randoli Observability platform, you will need to install the following Operators:
          - Red Hat build of OpenTelemetry Operator
          - Network Observability

          If you are using the Randoli Cost Management platform, you will need to install the following Operator:
          - VerticalPodAutoscaler

          For additional information please use our Openshift installation guide here: [https://docs.insights.randoli.io/agent/kubernetes_agent/openshift](https://docs.insights.randoli.io/agent/kubernetes_agent/openshift)

           **Randoli Observability for Kubernetes**

          [Product Page](https://www.randoli.io/product/kubernetes-observability)

          **Randoli Cost Management for Kubernetes**

          [Product Page](https://www.randoli.io/product/kubernetes-cost-management)
        displayName: Randoli Agent
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - developer tools
        - insights
        - monitoring
        links:
        - name: Randoli Observability for Kubernetes
          url: https://www.randoli.io/product/kubernetes-observability
        - name: Randoli Cost Management for Kubernetes
          url: https://www.randoli.io/product/kubernetes-cost-management
        maintainers:
        - email: contact@randoli.ca
          name: Randoli Inc.
        maturity: beta
        minKubeVersion: 1.24.0
        provider:
          name: Randoli
          url: https://www.randoli.io
        relatedImages:
        - docker.io/randoli/app-insights-operator:1.17.9-1@sha256:80858b56529695f8ee2750a0f1cc1b300a58ff7563af853f61b421573842fef6
        - registry.connect.redhat.com/randoli/app-insights-operator@sha256:1e76d6a502e932161a316e12047485fd2b6ef628caccf043efb81be76ae12ed8
        version: 1.17.9-1
      entries:
      - name: app-insights-operator.v1.17.9-1
        version: 1.17.9-1
      name: stable
    defaultChannel: stable
    packageName: app-insights-operator
    provider:
      name: Randoli
      url: https://www.randoli.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-hbase-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hbase-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/hbase-operator@sha256:ecb52aee1013aef272f7aecedfda9de755f25ed68cda6871acaacde5aac367d7
          description: Stackable Operator for Apache HBase
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/hbase-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for HbaseClusterSpec via `CustomResource`
            displayName: hbaseclusters.hbase.stackable.tech
            kind: HbaseCluster
            name: hbaseclusters.hbase.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache HBase
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hbase
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/hbase-operator@sha256:ecb52aee1013aef272f7aecedfda9de755f25ed68cda6871acaacde5aac367d7
        - registry.connect.redhat.com/stackable/stackable-apache-hbase-operator:25.11.0
        version: 25.11.0
      entries:
      - name: hbase-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-hbase-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: eG Innovations
      provider-url: https://www.eginnovations.com
    name: eginnovations-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eginnovations-operator.v0.0.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eginnovations.com/v1beta1",
                "kind": "EgUniversalAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "eginnovations-operator"
                  },
                  "name": "eguniversalagent",
                  "namespace": "egagent"
                },
                "spec": {
                  "agent": {
                    "env": [
                      {
                        "name": "EG_MANAGER",
                        "value": "Replace with eG Manager IP"
                      },
                      {
                        "name": "EG_MANAGER_PORT",
                        "value": "Replace with eG Manager Port"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "true"
          containerImage: docker.io/eginnovations/universal-agent-operator:0.0.11
          createdAt: "2025-09-11T20:08:00Z"
          description: eG Innovations provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with eG Universal Agent Operator.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/eginnovations/universal-agent-operator
          support: eG Innovations
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EgUniversalAgent is the Schema for the eguniversalagents
              API
            displayName: Eg Universal Agent
            kind: EgUniversalAgent
            name: eguniversalagents.eginnovations.com
            version: v1beta1
        description: |
          eG Innovations’ converged application and infrastructure performance monitoring capabilities provide end-to-end visibility and correlated analytics for every layer, every tier of your IT landscape.

          The eG Enterprise Universal Agent Operator automatically configures a host agent on every Kubernetes worker node. The host agent auto-discovers the worker nodes and application containers running as Pods on each node and tracks their performance and utilization levels. In-depth monitoring of applications running on containers is also provided using the same host agent. No additional agents are required for the containers.

          ### Capabilities
            * Rolls out the egagent pod per node to monitor its pods and the node itself
            * Automatic BTM profiler injection using webhook based injection for deep application monitoring and transection tracing.

          ### Installation
            1. Create the namespace "egagent" for installing eG Agent on OpenShift Cluster.

               <br />``` $ oc create ns egagent ```
            2. Add "egagent" serviceaccount to scc( Security Context Constraints ) of OpenShift Cluster as privileged using below command.

               <br />``` $ oc adm policy add-scc-to-user privileged -z egagent -n egagent ```
            2. Install eG Innovations Universal Agent operator from [OpenShift Container Platform](https://www.openshift.com/) OperatorHub.
            3. Create the eG Universal Agent CRD (Custom Resource Definition)
               a. Click "View YAML Example" and copy the yaml contents and save it to (filename).yaml on your host.
               b. To apply the CRD run the following command

               <br />``` $ oc apply -f (filename).yaml ```

          ### Required Parameters
            * EG\_MANAGER, EG\_MANAGER\_PORT - provide the ip and port of your eG Manager Installation.

          ### Advanced Options
            * Disable Certificate Checking - disable any certificate validation that may interact poorly with proxies within your cluster
            * Image Override - use a copy of the eG Iniversal Agent container image from a registry other that Docker's or Red Hat's
            * Environment variables - define environment variables for the eG Universal Agent container of for APM profiler.
            * Namespace Selectors- select a subset of namesapces to enable instrumentation for applications.

          For complete list of supported parameters and the detailed documentation available in [eG Innovations Docs](https://docs.eginnovations.com)
        displayName: eG Innovations Universal Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Monitoring
        - Tracing
        links:
        - name: eG Innovations Kubernetes Monitoring Overview
          url: https://www.eginnovations.com/documentation/Kubernetes/Introduction-to-Monitoring-Kubernetes.htm
        maintainers:
        - email: devops@eginnovations.com
          name: eG Innovations
        maturity: beta
        minKubeVersion: 1.26.0
        provider:
          name: eG Innovations
          url: https://www.eginnovations.com
        relatedImages:
        - docker.io/eginnovations/universal-agent-operator:0.0.11
        - quay.io/community-operator-pipeline-prod/eginnovations-operator@sha256:19b12c75f7a2dfab027881ed9f0b09d25e3baa936d21f7be3ec1e0177ed9fdf2
        version: 0.0.11
      entries:
      - name: eginnovations-operator.v0.0.11
        version: 0.0.11
      - name: eginnovations-operator.v0.0.10
        version: 0.0.10
      - name: eginnovations-operator.v0.0.9
        version: 0.0.9
      - name: eginnovations-operator.v0.0.8
        version: 0.0.8
      name: beta
    defaultChannel: beta
    packageName: eginnovations-operator
    provider:
      name: eG Innovations
      url: https://www.eginnovations.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Solace Corporation
      provider-url: www.solace.com
    name: pubsubplus-eventbroker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pubsubplus-eventbroker-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pubsubplus.solace.com/v1beta1",
                "kind": "PubSubPlusEventBroker",
                "metadata": {
                  "name": "non-ha-standalone-example"
                },
                "spec": {
                  "redundancy": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "true"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.10
          containerImage: registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator:1.4.0
          createdAt: "2025-07-31T19:48:36Z"
          description: The Solace PubSub+ Event Broker Operator deploys and manages
            the lifecycle of PubSub+ Event Brokers
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
          support: Solace Products
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PubSub+ Event Broker
            displayName: PubSub+ Event Broker
            kind: PubSubPlusEventBroker
            name: pubsubpluseventbrokers.pubsubplus.solace.com
            version: v1beta1
        description: |
          ## Solace PubSub+ Platform
          Solace [PubSub+ Platform](https://solace.com/products/platform/) is a complete event streaming and management platform
          for real-time enterprises. The [PubSub+ Software Event Broker](https://solace.com/products/event-broker/software/) efficiently streams
          event-driven information between applications, IoT devices, and user interfaces running in the cloud, on-premises,
          and in hybrid environments using open APIs and protocols like AMQP, JMS, MQTT, REST and WebSocket.
          It can be installed into a variety of public and private clouds, PaaS, and on-premises environments.
          Event brokers in multiple locations can be linked together in an [Event Mesh](https://solace.com/what-is-an-event-mesh/)
          to dynamically share events across the distributed enterprise.

          ## Solace PubSub+ Event Broker Operator
          Solace Pubsub+ Event Broker Operator automatically deploys and manages PubSub+ Software Event Brokers on Kubernetes and OpenShift environments.

          Features include:
          * Initial deployment configuration: Production-ready HA, non-HA or for developers
          * Rolling update for configuration changes or broker upgrades
          * Prometheus monitoring support

          ## Getting started
          Refer to the [Solace PubSub+ Event Broker Operator Quick Start](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/README.md)
        displayName: Solace PubSub+ Event Broker Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - solace
        - pubsubplus
        - pubsub+
        - pubsub
        - messaging
        - advanced event broker
        - event broker
        - event mesh
        - event streaming
        - data streaming
        - event integration
        - middleware
        links:
        - name: Operator QuickStart
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
        - name: Operator Documentation
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/docs/EventBrokerOperatorUserGuide.md
        - name: Solace.com
          url: https://solace.com
        - name: Understanding Solace Technology
          url: https://solace.com/products/platform/
        - name: Solace PubSub+ Technical Documentation
          url: https://docs.solace.com/
        - name: Solace Developer Portal
          url: https://www.solace.dev/
        - name: Solace Community
          url: https://solace.community/
        maintainers:
        - email: support@solace.com
          name: Solace R&D
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Solace Corporation
          url: www.solace.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/pubsubplus-eventbroker-operator@sha256:2761ebb89dace09a1c1ccad92c28c877f3a6f75a674191ffc3788be7fa549926
        - registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator:1.4.0
        version: 1.4.0
      entries:
      - name: pubsubplus-eventbroker-operator.v1.4.0
        version: 1.4.0
      - name: pubsubplus-eventbroker-operator.v1.3.0
        version: 1.3.0
      - name: pubsubplus-eventbroker-operator.v1.2.0
        version: 1.2.0
      - name: pubsubplus-eventbroker-operator.v1.1.2
        version: 1.1.2
      - name: pubsubplus-eventbroker-operator.v1.1.1
        version: 1.1.1
      - name: pubsubplus-eventbroker-operator.v1.1.0
        version: 1.1.0
      - name: pubsubplus-eventbroker-operator.v1.0.3
        version: 1.0.3
      - name: pubsubplus-eventbroker-operator.v1.0.2
        version: 1.0.2
      - name: pubsubplus-eventbroker-operator.v1.0.1
        version: 1.0.1
      - name: pubsubplus-eventbroker-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: pubsubplus-eventbroker-operator
    provider:
      name: Solace Corporation
      url: www.solace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: 3scale-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: 3scale-operator.v0.10.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ProxyConfigPromote",
                "metadata": {
                  "name": "proxyconfigpromote-sample"
                },
                "spec": {
                  "ProductCRName": "product1-sample",
                  "Production": true
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/3scale-rhel7-operator@sha256:7aeebb760dfda74390723c1013f0dd36c5889fe0870e1093940a82d8ebae3047
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          olm.skipRange: '>=0.9.1 <0.10.5'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: ProxyConfigPromote is the Schema for the proxyconfigpromotes
              API
            displayName: Proxy Config Promote
            kind: ProxyConfigPromote
            name: proxyconfigpromotes.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |-
          The 3scale Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          [3scale API Management](https://www.redhat.com/en/technologies/jboss-middleware/3scale) makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          [3scale api management](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management)
          [Deploying 3scale using the operator](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator)

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator
        maintainers:
        - email: msoriano+3scaleoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:88dc7a289c803248efbe151999707325b1bc0aac2d26827ea1707e46e5c71652
        - registry.redhat.io/3scale-amp2/backend-rhel8@sha256:3d5f1ef4e67f97cc9cf3accf25033e176fc59714236a5ee0f022c9eb8be7a4b1
        - registry.redhat.io/rhel8/mysql-80@sha256:158198936a7f7896e0f94133cd64c8e8902e4f86e670b56b64ff02acfd9c2855
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:6c53e72c31d1a3e13aa3ea835039f30869e465903262545463f790cb36ef5241
        - registry.redhat.io/3scale-amp2/3scale-rhel7-operator-metadata@sha256:771bd8187990f334cce038a647e9c0fe903fa7519994119bc995ccc7cfad8b6f
        - registry.redhat.io/3scale-amp2/system-rhel7@sha256:13685f7ca51ebd1e21036fb08b3c2089a66cedb63683dca39925ec0463215fc6
        - registry.redhat.io/3scale-amp2/zync-rhel8@sha256:d043efa121626ee7fded3e773b0598137bbecf5878af09dfe6b5f28ab7876de6
        - registry.redhat.io/openshift4/ose-cli@sha256:1a8caae40be21f23ba3cb48b75809a73333907033a6041927aa568b5c9290f3c
        - registry.redhat.io/3scale-amp2/3scale-rhel7-operator@sha256:7aeebb760dfda74390723c1013f0dd36c5889fe0870e1093940a82d8ebae3047
        - registry.redhat.io/3scale-amp2/memcached-rhel7@sha256:6195aec4725b71f46a3bc2982300acecafc9c4aabb4ed1bbec06de9775d49694
        - registry.redhat.io/rhscl/redis-5-rhel7@sha256:91781cf512d695339f5a92da8bfae40b42a5585d3b5627d30e6fea08afc932a4
        version: 0.10.5
      entries:
      - name: 3scale-operator.v0.10.5
        version: 0.10.5
      name: threescale-2.13
    - currentCSV: 3scale-operator.v0.11.8-mas
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Application",
                "metadata": {
                  "name": "application-sample"
                },
                "spec": {
                  "accountCR": {
                    "name": "developeraccount-sample"
                  },
                  "applicationPlanName": "plan01",
                  "description": "testing application ",
                  "name": "testApp",
                  "productCR": {
                    "name": "product-sample"
                  },
                  "suspend": false
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ProxyConfigPromote",
                "metadata": {
                  "name": "proxyconfigpromote-sample"
                },
                "spec": {
                  "ProductCRName": "product1-sample",
                  "Production": true
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-mas/3scale-rhel7-operator@sha256:0a6673eae2f0e8d95b919b0243e44d2c0383d13e2e616ac8d3f80742d496d292
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Application is the Schema for the applications API
            displayName: Application
            kind: Application
            name: applications.capabilities.3scale.net
            version: v1beta1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: ProxyConfigPromote is the Schema for the proxyconfigpromotes
              API
            displayName: Proxy Config Promote
            kind: ProxyConfigPromote
            name: proxyconfigpromotes.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |-
          The 3scale Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          [3scale API Management](https://www.redhat.com/en/technologies/jboss-middleware/3scale) makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          [3scale api management](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management)
          [Deploying 3scale using the operator](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator)

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mstoklus@redhat.com
          name: Michal Stokluska
        - email: aucunnin@redhat.com
          name: Austin Cunningham
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-mas/3scale-operator-bundle@sha256:a6c2eff926feb11da27eb9972cb86ee0ef9ca0b013afb6fe6af4f72439d557ef
        - registry.redhat.io/3scale-mas/backend-rhel8@sha256:7d07caf7b6c5a195ba4706e82f3d28c3793afab99b1a6d5a7020547c48534cdc
        - registry.redhat.io/3scale-mas/system-rhel7@sha256:b0fd85a4994502a3a2ae9ba6a7610c38af64b6cc897efac12feb4b115a484f77
        - registry.redhat.io/rhel8/redis-6@sha256:22431acc2c991b6ee6b4de0219366dee6ea745122a49a0175d5fb58ed7d9205f
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:a03a1ae7f01259192b8d7b4ecee6ddfcdc0cd9e2d24a8c2306accb93ee767135
        - registry.redhat.io/3scale-mas/memcached-rhel7@sha256:9c2aba45971c924fd55b2aab50ee8e6861a9defd3808b38ff30316727af31f9a
        - registry.redhat.io/3scale-mas/searchd-rhel7@sha256:1426e4bd4aa0eb28b479900ffc02621203886280d24997cd11818387ff30d9df
        - registry.redhat.io/3scale-mas/zync-rhel9@sha256:419eb09d1b165363d5b90df01c1fa10f1f91f03649a8758620ffa49276685feb
        - registry.redhat.io/openshift4/ose-cli@sha256:1a8caae40be21f23ba3cb48b75809a73333907033a6041927aa568b5c9290f3c
        - registry.redhat.io/rhel8/mysql-80@sha256:7c05e61c0f4f5dad6aeda136e9a1af2f04f4de3c51004e997d4eacae3778da17
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:4f807ee6e885e966853f70e1c40bbc179dc1f994b401ac868b7f2b921f9d17a0
        - registry.redhat.io/3scale-mas/3scale-rhel7-operator@sha256:0a6673eae2f0e8d95b919b0243e44d2c0383d13e2e616ac8d3f80742d496d292
        version: 0.11.8-mas
      entries:
      - name: 3scale-operator.v0.11.8-mas
        version: 0.11.8-mas
      - name: 3scale-operator.v0.11.7-mas
        version: 0.11.7-mas
      - name: 3scale-operator.v0.11.6-mas
        version: 0.11.6-mas
      - name: 3scale-operator.v0.11.5-mas
        version: 0.11.5-mas
      - name: 3scale-operator.v0.11.3-mas
        version: 0.11.3-mas
      - name: 3scale-operator.v0.11.2-mas
        version: 0.11.2-mas
      - name: 3scale-operator.v0.11.1-mas
        version: 0.11.1-mas
      - name: 3scale-operator.v0.11.0-mas
        version: 0.11.0-mas
      - name: 3scale-operator.v0.10.0-mas
        version: 0.10.0-mas
      name: threescale-mas
    defaultChannel: threescale-2.13
    packageName: 3scale-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NetApp, Inc.
      provider-url: https://www.netapp.com/
    name: trident-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trident-operator.v25.10.0-linux-only
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "trident.netapp.io/v1",
                "kind": "TridentOrchestrator",
                "metadata": {
                  "name": "trident"
                },
                "spec": {
                  "IPv6": false,
                  "debug": true,
                  "nodePrep": [],
                  "imagePullSecrets": [],
                  "imageRegistry": "",
                  "namespace": "trident",
                  "silenceAutosupport": false
                }
              }
            ]
          categories: Storage
          containerImage: registry.connect.redhat.com/netapp/trident-operator-image@sha256:5d6eb0ae4a0f68329102cfb7bace94d24c728e8385e19bec360e0acb5f99c799
          createdAt: "2025-12-10"
          description: Trident Operator, to manage NetApp Trident installations
          features.operators.openshift.io/csi: "true"
          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"
          operatorhub.io/ui-metadata-max-k8s-version: "1.34"
          operators.openshift.io/valid-subscription: No subscriptions are required
          repository: https://github.com/netapp/trident
          support: NetApp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Used to deploy NetApp Trident.
            displayName: Trident Orchestrator
            kind: TridentOrchestrator
            name: tridentorchestrators.trident.netapp.io
            version: v1
        description: |
          NetApp Trident is an open source storage provisioner and orchestrator maintained by NetApp. It enables you to create storage volumes for containerized applications managed by Docker and Kubernetes. For full release information, including patch release changes, see https://docs.netapp.com/us-en/trident/trident-rn.html.

          Due to an issue being investigated by Red Hat and NetApp, oc-mirror cannot sync Windows container images that are part of the Trident-certified operator manifest hosted on registry.connect.redhat.com. This new manifest only points to Linux-only container images. Windows users should use the Trident community operator until this issue is addressed.
        displayName: NetApp Trident
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - NetApp
        - ONTAP
        - Trident
        - storage
        - performance
        - open source
        - Astra
        - Cloud Native
        - AWS
        - Azure
        - GCP
        - Cloud Volumes
        links:
        - name: GitHub Repository
          url: https://github.com/NetApp/trident
        - name: Trident documentation
          url: https://docs.netapp.com/us-en/trident/index.html
        - name: Support policy
          url: https://mysupport.netapp.com/site/info/version-support
        - name: Release Notes
          url: https://docs.netapp.com/us-en/trident/trident-rn.html
        maintainers:
        - email: ng-trident-openshift-operator@netapp.com
          name: NetApp
        provider:
          name: NetApp, Inc.
          url: https://www.netapp.com/
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:0c128a8b6be1e921d8a95cdbb101896cae321b6de3290362df0c3467ab598ed8
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:5e7f71f2c0f1f4707812c4fecb08dfef29c2f152b2286a700e6226472a927cec
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:2eac5bcb9f90ed9e7596656f5e3713e22fc77621336b3f7a2a9d54106d835b02
        - registry.connect.redhat.com/netapp/trident-autosupport@sha256:b273f7c1922ab2273c9b99f22383be88b6511fcd77f34299e9ecb1f85081fb2b
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:62eb2f146f84101119b54c6a1c6678d97b44b35cb800299032f0678dc4af582b
        - registry.connect.redhat.com/netapp/trident-operator-image@sha256:5d6eb0ae4a0f68329102cfb7bace94d24c728e8385e19bec360e0acb5f99c799
        - registry.connect.redhat.com/netapp/trident-operator@sha256:71b470e2254906f84b792ce56459f242ea7ac61b71a40d6da665bededd58fdf7
        - registry.connect.redhat.com/netapp/trident@sha256:59331f85ed657b1af9f8b139f08d6eae00be8d7b404784dbb61c5b5eb3f4d808
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:6c98bae9351f5e70ee41a7ae3e13c78bdf01c0113a9ee21825432c2741f5e391
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:210452dfc5a504705a113b3f4e9d615b1a28904db71f41ce804e35950d22bcd8
        version: 25.10.0-linux-only
      entries:
      - name: trident-operator.v25.10.0
        version: 25.10.0
      - name: trident-operator.v25.10.0-linux-only
        version: 25.10.0-linux-only
      name: stable
    defaultChannel: stable
    packageName: trident-operator
    provider:
      name: NetApp, Inc.
      url: https://www.netapp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CNCF
      provider-url: ""
    name: etcd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: etcdoperator.v0.6.1
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          description: etcd is a distributed key value store providing a reliable
            way to store data across a cluster of machines.
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a cluster of etcd nodes.
            displayName: etcd Cluster
            kind: EtcdCluster
            name: etcdclusters.etcd.database.coreos.com
            version: v1beta2
        description: |
          etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. Itâ€™s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader. Your applications can read and write data into etcd.
          A simple use-case is to store database connection details or feature flags within etcd as key value pairs. These values can be watched, allowing your app to reconfigure itself when they change. Advanced uses take advantage of the consistency guarantees to implement database leader elections or do distributed locking across a cluster of workers.

          _The etcd Open Cloud Service is Public Alpha. The goal before Beta is to fully implement backup features._

          ### Reading and writing to etcd

          Communicate with etcd though its command line utility `etcdctl` or with the API using the automatically generated Kubernetes Service.

          [Read the complete guide to using the etcd Open Cloud Service](https://coreos.com/tectonic/docs/latest/alm/etcd-ocs.html)

          ### Supported Features
          **High availability**
          Multiple instances of etcd are networked together and secured. Individual failures or networking issues are transparently handled to keep your cluster up and running.
          **Automated updates**
          Rolling out a new etcd version works like all Kubernetes rolling updates. Simply declare the desired version, and the etcd service starts a safe rolling update to the new version automatically.
          **Backups included**
          Coming soon, the ability to schedule backups to happen on or off cluster.
        displayName: etcd
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - etcd
        - key value
        - database
        - coreos
        - open source
        links:
        - name: Blog
          url: https://coreos.com/etcd
        - name: Documentation
          url: https://coreos.com/operators/etcd/docs/latest/
        - name: etcd Operator Source Code
          url: https://github.com/coreos/etcd-operator
        maintainers:
        - email: support@coreos.com
          name: CoreOS, Inc
        maturity: alpha
        provider:
          name: CoreOS, Inc
        relatedImages:
        - quay.io/coreos/etcd-operator@sha256:bd944a211eaf8f31da5e6d69e8541e7cada8f16a9f7a5a570b22478997819943
        - quay.io/openshift-community-operators/etcd@sha256:e42581eacbc8349f40c6a4ed6d7d82d6168518e15b1a24cba36817205bd8688f
        version: 0.6.1
      entries:
      - name: etcdoperator.v0.6.1
        version: 0.6.1
      name: alpha
    - currentCSV: etcdoperator.v0.9.4-clusterwide
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdCluster",
                "metadata": {
                  "name": "example",
                  "annotations": {
                    "etcd.database.coreos.com/scope": "clusterwide"
                  }
                },
                "spec": {
                  "size": 3,
                  "version": "3.2.13"
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdRestore",
                "metadata": {
                  "name": "example-etcd-cluster-restore"
                },
                "spec": {
                  "etcdCluster": {
                    "name": "example-etcd-cluster"
                  },
                  "backupStorageType": "S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdBackup",
                "metadata": {
                  "name": "example-etcd-cluster-backup"
                },
                "spec": {
                  "etcdEndpoints": ["<etcd-cluster-endpoints>"],
                  "storageType":"S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
          createdAt: "2019-02-28 01:03:00"
          description: Create and maintain highly-available etcd clusters on Kubernetes
          repository: https://github.com/coreos/etcd-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a cluster of etcd nodes.
            displayName: etcd Cluster
            kind: EtcdCluster
            name: etcdclusters.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to backup an etcd cluster.
            displayName: etcd Backup
            kind: EtcdBackup
            name: etcdbackups.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to restore an etcd cluster from a backup.
            displayName: etcd Restore
            kind: EtcdRestore
            name: etcdrestores.etcd.database.coreos.com
            version: v1beta2
        description: |
          The etcd Operater creates and maintains highly-available etcd clusters on Kubernetes, allowing engineers to easily deploy and manage etcd clusters for their applications.

          etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. Itâ€™s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader.


          ### Reading and writing to etcd

          Communicate with etcd though its command line utility `etcdctl` via port forwarding:

              $ kubectl --namespace default port-forward service/example-client 2379:2379
              $ etcdctl --endpoints http://127.0.0.1:2379 get /

          Or directly to the API using the automatically generated Kubernetes Service:

              $ etcdctl --endpoints http://example-client.default.svc:2379 get /

          Be sure to secure your etcd cluster (see Common Configurations) before exposing it outside of the namespace or cluster.


          ### Supported Features

          * **High availability** - Multiple instances of etcd are networked together and secured. Individual failures or networking issues are transparently handled to keep your cluster up and running.

          * **Automated updates** - Rolling out a new etcd version works like all Kubernetes rolling updates. Simply declare the desired version, and the etcd service starts a safe rolling update to the new version automatically.

          * **Backups included** - Create etcd backups and restore them through the etcd Operator.

          ### Common Configurations

          * **Configure TLS** - Specify [static TLS certs](https://github.com/coreos/etcd-operator/blob/master/doc/user/cluster_tls.md) as Kubernetes secrets.

          * **Set Node Selector and Affinity** - [Spread your etcd Pods](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-node-selector-and-anti-affinity-across-nodes) across Nodes and availability zones.

          * **Set Resource Limits** - [Set the Kubernetes limit and request](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-resource-requirement) values for your etcd Pods.

          * **Customize Storage** - [Set a custom StorageClass](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#custom-persistentvolumeclaim-definition) that you would like to use.
        displayName: etcd
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - etcd
        - key value
        - database
        - coreos
        - open source
        links:
        - name: Blog
          url: https://coreos.com/etcd
        - name: Documentation
          url: https://coreos.com/operators/etcd/docs/latest/
        - name: etcd Operator Source Code
          url: https://github.com/coreos/etcd-operator
        maintainers:
        - email: etcd-dev@googlegroups.com
          name: etcd Community
        maturity: alpha
        provider:
          name: CNCF
        relatedImages:
        - quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
        - quay.io/openshift-community-operators/etcd@sha256:1d308347e5e290ac4bb7dd7aab0a1c0659d661153541d81dd30733b52d1fbf83
        version: 0.9.4-clusterwide
      entries:
      - name: etcdoperator.v0.9.4-clusterwide
        version: 0.9.4-clusterwide
      - name: etcdoperator.v0.9.2-clusterwide
        version: 0.9.2-clusterwide
      - name: etcdoperator.v0.9.0
        version: 0.9.0
      name: clusterwide-alpha
    - currentCSV: etcdoperator.v0.9.4
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "size": 3,
                  "version": "3.2.13"
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdRestore",
                "metadata": {
                  "name": "example-etcd-cluster-restore"
                },
                "spec": {
                  "etcdCluster": {
                    "name": "example-etcd-cluster"
                  },
                  "backupStorageType": "S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdBackup",
                "metadata": {
                  "name": "example-etcd-cluster-backup"
                },
                "spec": {
                  "etcdEndpoints": ["<etcd-cluster-endpoints>"],
                  "storageType":"S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
          createdAt: "2019-02-28 01:03:00"
          description: Create and maintain highly-available etcd clusters on Kubernetes
          repository: https://github.com/coreos/etcd-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a cluster of etcd nodes.
            displayName: etcd Cluster
            kind: EtcdCluster
            name: etcdclusters.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to backup an etcd cluster.
            displayName: etcd Backup
            kind: EtcdBackup
            name: etcdbackups.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to restore an etcd cluster from a backup.
            displayName: etcd Restore
            kind: EtcdRestore
            name: etcdrestores.etcd.database.coreos.com
            version: v1beta2
        description: |
          The etcd Operater creates and maintains highly-available etcd clusters on Kubernetes, allowing engineers to easily deploy and manage etcd clusters for their applications.

          etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. Itâ€™s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader.


          ### Reading and writing to etcd

          Communicate with etcd though its command line utility `etcdctl` via port forwarding:

              $ kubectl --namespace default port-forward service/example-client 2379:2379
              $ etcdctl --endpoints http://127.0.0.1:2379 get /

          Or directly to the API using the automatically generated Kubernetes Service:

              $ etcdctl --endpoints http://example-client.default.svc:2379 get /

          Be sure to secure your etcd cluster (see Common Configurations) before exposing it outside of the namespace or cluster.


          ### Supported Features

          * **High availability** - Multiple instances of etcd are networked together and secured. Individual failures or networking issues are transparently handled to keep your cluster up and running.

          * **Automated updates** - Rolling out a new etcd version works like all Kubernetes rolling updates. Simply declare the desired version, and the etcd service starts a safe rolling update to the new version automatically.

          * **Backups included** - Create etcd backups and restore them through the etcd Operator.

          ### Common Configurations

          * **Configure TLS** - Specify [static TLS certs](https://github.com/coreos/etcd-operator/blob/master/doc/user/cluster_tls.md) as Kubernetes secrets.

          * **Set Node Selector and Affinity** - [Spread your etcd Pods](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-node-selector-and-anti-affinity-across-nodes) across Nodes and availability zones.

          * **Set Resource Limits** - [Set the Kubernetes limit and request](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-resource-requirement) values for your etcd Pods.

          * **Customize Storage** - [Set a custom StorageClass](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#custom-persistentvolumeclaim-definition) that you would like to use.
        displayName: etcd
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - etcd
        - key value
        - database
        - coreos
        - open source
        links:
        - name: Blog
          url: https://coreos.com/etcd
        - name: Documentation
          url: https://coreos.com/operators/etcd/docs/latest/
        - name: etcd Operator Source Code
          url: https://github.com/coreos/etcd-operator
        maintainers:
        - email: etcd-dev@googlegroups.com
          name: etcd Community
        maturity: alpha
        provider:
          name: CNCF
        relatedImages:
        - quay.io/openshift-community-operators/etcd@sha256:f1757deff8c4048ae42cb033f3ddd7686dec2968e5a4cd61ff8f74fda69a8a09
        - quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
        version: 0.9.4
      entries:
      - name: etcdoperator.v0.9.4
        version: 0.9.4
      - name: etcdoperator.v0.9.2
        version: 0.9.2
      - name: etcdoperator.v0.9.0
        version: 0.9.0
      name: singlenamespace-alpha
    defaultChannel: singlenamespace-alpha
    packageName: etcd
    provider:
      name: CNCF
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cluster-observability-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-observability-operator.v1.3.1
      currentCSVDesc:
        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:2ecf763b02048d2cf4c17967a7b2cacc7afd6af0e963a39579d876f8f4170e3c
          createdAt: "2025-12-05T12:43:59Z"
          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.skipRange: '>=..0 <1.3.1'
          operatorframework.io/cluster-monitoring: "true"
          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/)
        apiservicedefinitions: {}
        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
          - description: Provides end-to-end observability capabilities with minimal
              configuration. Simplifies deployment and management of observability
              components such as tracing.
            displayName: Observability Installer
            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
        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:
        - registry.redhat.io/cluster-observability-operator/korrel8r-rhel9@sha256:e65c37f04f6d76a0cbfe05edb3cddf6a8f14f859ee35cf3aebea8fcb991d2c19
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-rhel9@sha256:21d4fff670893ba4b7fbc528cd49f8b71c8281cede9ef84f0697065bb6a7fc50
        - registry.redhat.io/cluster-observability-operator/troubleshooting-panel-console-plugin-rhel9@sha256:b4a6eb1cc118a4334b424614959d8b7f361ddd779b3a72690ca49b0a3f26d9b8
        - registry.redhat.io/cluster-observability-operator/cluster-observability-operator-bundle@sha256:a3b8e1f3f8d154095f365ccbb163f2cf3852d6091b1f74773a8b5a2ee5c1cee6
        - registry.redhat.io/cluster-observability-operator/cluster-health-analyzer-rhel9@sha256:48e4e178c6eeaa9d5dd77a591c185a311b4b4a5caadb7199d48463123e31dc9e
        - registry.redhat.io/cluster-observability-operator/perses-rhel9@sha256:e797cdb47beef40b04da7b6d645bca3dc32e6247003c45b56b38efd9e13bf01c
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf4-rhel9@sha256:dc18c8d6a4a9a0a574a57cc5082c8a9b26023bd6d69b9732892d584c1dfe5070
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e7e5f4c5e8ab0ba298ef0295a7137d438a42eb177d9322212cde6ba8f367912a
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-rhel9@sha256:7d662a120305e2528acc7e9142b770b5b6a7f4932ddfcadfa4ac953935124895
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-rhel9@sha256:369729978cecdc13c99ef3d179f8eb8a450a4a0cb70b63c27a55a15d1710ba27
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-prometheus-config-reloader-rhel9@sha256:9a2097bc5b2e02bc1703f64c452ce8fe4bc6775b732db930ff4770b76ae4653a
        - registry.redhat.io/cluster-observability-operator/cluster-observability-rhel9-operator@sha256:2ecf763b02048d2cf4c17967a7b2cacc7afd6af0e963a39579d876f8f4170e3c
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-admission-webhook-rhel9@sha256:42ebc3571195d8c41fd01b8d08e98fe2cc12c1caabea251aecb4442d8eade4ea
        - registry.redhat.io/cluster-observability-operator/prometheus-rhel9@sha256:1b555e21bba7c609111ace4380382a696d9aceeb6e9816bf9023b8f689b6c741
        - registry.redhat.io/cluster-observability-operator/thanos-rhel9@sha256:a223bab813b82d698992490bbb60927f6288a83ba52d539836c250e1471f6d34
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-pf5-rhel9@sha256:12d9dbe297a1c3b9df671f21156992082bc483887d851fafe76e5d17321ff474
        - registry.redhat.io/cluster-observability-operator/alertmanager-rhel9@sha256:dc62889b883f597de91b5389cc52c84c607247d49a807693be2f688e4703dfc3
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf5-rhel9@sha256:75465aabb0aa427a5c531a8fcde463f6d119afbcc618ebcbf6b7ee9bc8aad160
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-pf4-rhel9@sha256:d8c7a61d147f62b204d5c5f16864386025393453c9a81ea327bbd25d7765d611
        - registry.redhat.io/cluster-observability-operator/perses-rhel9-operator@sha256:b5c8526d2ae660fe092dd8a7acf18ec4957d5c265890a222f55396fc2cdaeed8
        - registry.redhat.io/cluster-observability-operator/dashboards-console-plugin-rhel9@sha256:093d2731ac848ed5fd57356b155a19d3bf7b8db96d95b09c5d0095e143f7254f
        version: 1.3.1
      entries:
      - name: cluster-observability-operator.v1.3.1
        version: 1.3.1
      - name: cluster-observability-operator.v1.3.0
        version: 1.3.0
      - name: cluster-observability-operator.v1.2.2
        version: 1.2.2
      - name: cluster-observability-operator.v1.2.1
        version: 1.2.1
      - name: cluster-observability-operator.v1.2.0
        version: 1.2.0
      - name: cluster-observability-operator.v1.1.1
        version: 1.1.1
      - name: cluster-observability-operator.v1.1.0
        version: 1.1.0
      - name: cluster-observability-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: cluster-observability-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: multicluster-engine
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-engine.v2.10.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "multicluster.openshift.io/v1", "kind": "MultiClusterEngine",
            "metadata": {"name": "multiclusterengine"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-12-01T19:26:35Z"
          description: Foundational components for central management of multiple
            OpenShift Container Platform and Kubernetes clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=2.8.0 <2.10.0'
          operatorframework.io/initialization-resource: '{"apiVersion":"multicluster.openshift.io/v1",
            "kind":"MultiClusterEngine","metadata":{"name":"engine"},"spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-engine
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:50eb7b0039c66db781d3905d3d24bcaca9ebe0ab07bdca1bc7bb0c406fb01d8a
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/open-cluster-management/backplane-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MultiClusterEngine defines the configuration for an instance
              of a multicluster engine, a central point providing the foundational components for managing multiple Kubernetes-based clusters. The deployment of the multicluster engine components is
              determined based on the configuration that is defined in this resource.
            displayName: MultiCluster Engine
            kind: MultiClusterEngine
            name: multiclusterengines.multicluster.openshift.io
            version: v1
        description: "Multicluster engine for Kubernetes provides the foundational
          components that are necessary for the centralized management of multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the engine to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can use the APIs that are provided by
          the engine to distribute configuration based on placement policy. Placement
          policy is a significant part of creating sophisticated multicluster management
          applications because you can select the applicable clusters.\n## Installing\nInstall
          the multicluster engine for Kubernetes operator by following instructions
          that display when you click the `Install` button. After installing the operator,
          create an instance of the `MultiClusterEngine` resource to install the engine
          components that provide the management APIs. Note: If you are using the
          engine to manage non-OpenShift Container Platform 4.x clusters, you need
          to create a Kubernetes `Secret` resource that contains your OpenShift Container
          Platform pull secret. Specify this `Secret` in the `MultiClusterEngine`
          resource, as described in the install documentation.\nYou can find additional
          installation guidance in the [documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/clusters/cluster_mce_overview#mce-install-intro). "
        displayName: multicluster engine for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mce
        - multicluster-engine
        - multiclusterengine
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/clusters/index
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/multicluster-engine/cluster-api-provider-kubevirt-rhel9@sha256:9cee55eaa91e073f07000da0db87fcca4f34af6faef16aac79415197c3026e67
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:1cceec46246ea7bef481549dce1ce91880d19a5650c9a6bc0f71f0d4092a6f95
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:762ae8d88d1b9e764adf84d5eaa964e691acbebaabf174ab0111a39b24256aff
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:ac1c6821b6bf2062144f8fc38256e97c16a55019efdff6bc0f2469899508521e
        - registry.redhat.io/multicluster-engine/assisted-installer-rhel9@sha256:aff2c378cd0a3ba36b13572a4749a54836369bcf6814b8423793bb56178b974b
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:d0d9f66e1135e46889d9148a78704a0062baf69c4690c85da37588ccfe4e23dc
        - registry.redhat.io/multicluster-engine/managedcluster-import-controller-rhel9@sha256:a4f11ed7ca7a36516a88d9e179f654174b4654d71b67f2de3255a95f9929a452
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:9b4294ee810cd554905c72fd080c3ead28a82dda81e01210552012e4a8f7dc5c
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:7b3d109adb86a87475afbb76faef4a4131f78ad092d4aa541e1c59bae611acbe
        - registry.redhat.io/rhel8/postgresql-12@sha256:3a187fc5e6c73bdfc63661b98c05b39ee4d0b3a0e1a210c49d188f1004bcb274
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:4de9442def18fff03515edcce7d4c60a756f3b2c225f8931a8ddd254d70b220d
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:78fbb9cbf3a7323a1d235e33323033957ae9e610bd0e26c493b407cfbadde258
        - registry.redhat.io/multicluster-engine/assisted-image-service-rhel9@sha256:6082629342c13caf33bde021724f5d2b9c400f838b74285a3c2d99d68a03b26c
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:d38a886f70d079eed24b9fb57030f535e37524d6f7baf6b1022be1c07cc32ab7
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:262db9468caefa25b66176fb3492c5b310c249ee1035d866b6a1faca30318ae9
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:0b9dbc00f7f579c37197ed3c5fad6e1420034f38418c21a6d83e57761763e715
        - registry.redhat.io/multicluster-engine/hypershift-addon-rhel9-operator@sha256:2b725421986812ce501db94fe0ae5df6ae3e2a8bb31be6aebe24e85cd1ac4703
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:7a0b186fbdb169ba82e3ff4a0beb8a3ac2d1ee555bd37182ee9d92a945093b66
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:20776e91176dd86feb16fb24ebcb087cea368f5778573edbc39df47a1dcbe5af
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:dd7c28e8901e1804e4832b2d3437bf8bc0e4bf7a388a94e6b9e0df07f6eee10f
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:77834bc71542f6c87c1e39c82513bd9c2007017cc4866a2d51be7694a198c950
        - registry.redhat.io/multicluster-engine/clusterlifecycle-state-metrics-rhel9@sha256:d91a68077b6cb5bc2d09cedf5aebb61dd3baae3afdb3291131f579ace7ea813e
        - registry.redhat.io/multicluster-engine/registration-rhel9@sha256:f8c7c001b14cae99e47b3b9e27707200ab17de6cac1f54927056907f068cd03a
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:1b5f810b07f1830f4b71a9c384465806ea74e264770a90cd92cadd53c7d7e1b9
        - registry.redhat.io/multicluster-engine/addon-manager-rhel9@sha256:88be52d369e7862c378fa2c6bb0b5f7801bb68d773744935816411e549d51112
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:eee2a6b322f695529d9953d06ab021f0ea0d69b9a2a2f7c3299b0ede8106c102
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:45217815cc0f2bc24d5b7ac07019af9a0ccb13f8cda14713422b8b699f3723e9
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:243858bae64bf199c479086f71c222b096555339c3461d7d1bfd47cf4e43df14
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:50eb7b0039c66db781d3905d3d24bcaca9ebe0ab07bdca1bc7bb0c406fb01d8a
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:38f65ed06100af8f55530fd79ed5064f3839863caec0f610385abeea0e3c1efb
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:bcaded7338e5171707c02a04216fa1bbaa5b57c8da9af0df91347ad6d84e0d9a
        - registry.redhat.io/multicluster-engine/cluster-api-provider-aws-rhel9@sha256:1e2fe8b42665e7bfc7938ea23a0a8efdb98a6825238f6fc90993926cd8d2317b
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:17a2e3c30f2a59f402723dc553564ec1289b6e2bbcedb9cc353285de9f5e42f4
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:b689ee70b715a65b664a2e31b5ac3b1a70d6a7d2abff28e99013094468c2e32f
        - registry.redhat.io/multicluster-engine/work-rhel9@sha256:753458389b93e2dc76f7d8766345f7bdfb3c3ba23d76e938b04e724418981e73
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:43ed1820a27580f8fa9c80d53590d2b5cd049c925cb57c8c396512bddeed3332
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:5bf1563d90623b6f224278f58ceb79ed7877d88eb3af50826fe8588735535efa
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:db28620adb4c59bc9811dcd5d0a743ce534f24e40165f84af7044a5b9d04b76a
        - registry.redhat.io/multicluster-engine/capoa-bootstrap-rhel9@sha256:1ccf3b85dde18875aa1b98797d4477c7fe725725c5b6d91b4ed21e3e3249ec36
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:e399861c4ecf3c1910dfc7e2da2b234bdc1ae1aba3a006f28285756edb2c9b2f
        version: 2.10.0
      entries:
      - name: multicluster-engine.v2.10.0
        version: 2.10.0
      name: stable-2.10
    - currentCSV: multicluster-engine.v2.9.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "multicluster.openshift.io/v1", "kind": "MultiClusterEngine",
            "metadata": {"name": "multiclusterengine"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-10-30T12:42:03Z"
          description: Foundational components for central management of multiple
            OpenShift Container Platform and Kubernetes clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.8.0 <2.9.1'
          operatorframework.io/initialization-resource: '{"apiVersion":"multicluster.openshift.io/v1",
            "kind":"MultiClusterEngine","metadata":{"name":"engine"},"spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-engine
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:a990e85f8f59435ee886d1176fdd570559036b2597d2cde523c3bb31178bc5ee
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/open-cluster-management/backplane-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MultiClusterEngine defines the configuration for an instance
              of a multicluster engine, a central point providing the foundational components for managing multiple Kubernetes-based clusters. The deployment of the multicluster engine components is
              determined based on the configuration that is defined in this resource.
            displayName: MultiCluster Engine
            kind: MultiClusterEngine
            name: multiclusterengines.multicluster.openshift.io
            version: v1
        description: "Multicluster engine for Kubernetes provides the foundational
          components that are necessary for the centralized management of multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the engine to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can use the APIs that are provided by
          the engine to distribute configuration based on placement policy. Placement
          policy is a significant part of creating sophisticated multicluster management
          applications because you can select the applicable clusters.\n## Installing\nInstall
          the multicluster engine for Kubernetes operator by following instructions
          that display when you click the `Install` button. After installing the operator,
          create an instance of the `MultiClusterEngine` resource to install the engine
          components that provide the management APIs. Note: If you are using the
          engine to manage non-OpenShift Container Platform 4.x clusters, you need
          to create a Kubernetes `Secret` resource that contains your OpenShift Container
          Platform pull secret. Specify this `Secret` in the `MultiClusterEngine`
          resource, as described in the install documentation.\nYou can find additional
          installation guidance in the [documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/clusters/cluster_mce_overview#mce-install-intro). "
        displayName: multicluster engine for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mce
        - multicluster-engine
        - multiclusterengine
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/clusters/index
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:34714647e5ae36f266b3d68b56abbd0a79c8f4e05c4c9076cd0f76dad243763d
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:52faed21cd40448dd4260909e2de026155afc207f1ee26b396a75b6099830525
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:f4c21f87dd7b725f472f51829bbc40261788e0f64c391ab136a3d6d8d9235872
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:358e8a39385d43077c2464d1cf037e3358c8eeb7e84958671acb1e996f070d25
        - registry.redhat.io/multicluster-engine/assisted-service-8-rhel8@sha256:03446585c076f6f9983dd336e1ee47c3955830b94a5e81c5c256d627ba675030
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:cd9f96afaa76332885dd7762906681e32ee7ae8ab268e036b0f9874a10a99d57
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:eee3c75b6eee3f1c0374cbbeff415ba8e28b9556edbc76d2bb01a10246c3bc6c
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:462fd64a59c1915d91d628af10415107b7ab4b03ac322a4c77687064e5f89421
        - registry.redhat.io/multicluster-engine/assisted-image-service-rhel9@sha256:86859614fae3d7f6dccc051ce90b055d1b4b6f313d9b85187bb6dc06e9d59ae2
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:083fbf9b0eb35119bb95652e3f8cc3f38f2ab66b38811f36938d19efb0f09456
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:92bb8f1e74ca9d0938d92f84f85ca047e8abc6be6df54eb6d8cd506f9393f6ba
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:ef9d311b1f5b5b386a6fc224c0fbdd8794c0ccb4e6bff11939c8332f48da8fe9
        - registry.redhat.io/multicluster-engine/registration-rhel9@sha256:b583869a3c3383670427be20a3b01fa5eba42c09fae0c8401063b0461831277c
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:03466cbe5b770e1e7b124109dac09840cdc6ed1bec56de9b42dc7cb8278d7f0d
        - registry.redhat.io/multicluster-engine/capoa-bootstrap-rhel9@sha256:951773131a05b2eb4a39ccf568b23cb633c926546e43227d5f715e73441b0b89
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:e9f7e03889d1151381a65cc41a3fc24e97b7e0169c43c91bb8dff54a6fa7e837
        - registry.redhat.io/rhel8/postgresql-12@sha256:af1ab437b165fa4ee9dfd6ade637d7de5fa556d0b3851fb8edc78afe0e6fa95e
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:61856d12d173d98c9cfa6596cc9b19be38e8f789712dd742dfa613a1d585f53b
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:eb2d84f5038c12c558bbfbc9441c18337051d0ab64264a0574232546fb9fea33
        - registry.redhat.io/multicluster-engine/cluster-api-provider-kubevirt-rhel9@sha256:929bff9558142caae866726792d7406cdfda8c343d88ede0fa5e0054433ccb27
        - registry.redhat.io/multicluster-engine/hypershift-addon-rhel9-operator@sha256:ca2178056cfc338e309462fdd7aa811a653a9513d24959fe0842f56e83c371b0
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:f626f057664e3408ea5fd778e3d2a4e80735ba858d76749a1a2056c65face4ec
        - registry.redhat.io/openshift4/ose-aws-cluster-api-controllers-rhel9@sha256:2f3b87c980d89161d93ba27ae379537ca9b603aed6de7b03e1720885231fe519
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:05b87e707d6e0b2fc4cea9a22ed5b0c23cab8a38ee4cc9e8e5b9f4059e7b2dc0
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:55388553b68ad695bbde73addc43a68fc4523c4477f979ee1e8103b79dbe0bea
        - registry.redhat.io/multicluster-engine/addon-manager-rhel9@sha256:b622c7a3e14a3d80b01c66fffaf5fee108767fef90976d7ae981d79bfdd1bdf0
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:e9b9e2dba46fdced4d9276082956b34f1223dfaf7f6da600efeee5a42317754e
        - registry.redhat.io/multicluster-engine/clusterlifecycle-state-metrics-rhel9@sha256:6028387bdc2e8cb2cc62a22ff242d4c4315ccae94fd93fa9ffd7585b1bb324f2
        - registry.redhat.io/multicluster-engine/managedcluster-import-controller-rhel9@sha256:017152eb0d925805bf2e1ff4e7964935aeb5d25b31db47b26ea1062d7ccc73ca
        - registry.redhat.io/multicluster-engine/work-rhel9@sha256:b1614c7ff4d7b125cac315b459aa819a7f7918f70aeb2f6d6f6c4c17791ca600
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:5b4a878a07934ed035dae0ab1b86eff1166124565226af5739dd8aa16ba90d50
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:e97bb0c19ad0075422f4afadf82e3a5d6bfa24bdcf484777486d0d52c9f294b2
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:147e0635014afe58dd58af3d006095c8069e4746fd753349378435363add304a
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:9556277ac54246d8132dc08c8854992b5c478706ad483e1bf2e16c5e2aa04a04
        - registry.redhat.io/multicluster-engine/assisted-installer-rhel9@sha256:9520707d782b393e2e34061c18b269a1b610143d8b06739984776101b08db322
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:878fb0eb1102cdefdfd7d266869a0a8f7cb19a1b8f0e5741f75755334e67c887
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:7c9fc8014eacde9e9e598823815acd4ea61d5128a84c79bce914fe77ae276aef
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:a990e85f8f59435ee886d1176fdd570559036b2597d2cde523c3bb31178bc5ee
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:0f813721abc29eb84b94b9ec6abbffa64d984bd7b5b76a810ef454a70da8ec93
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:9734a109c7be60f5871132379e8c88c0f92a9a991943de317040ad8550637477
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:d90b77447584cc5e03ea8a7d732a57ffcb09a4d0a0231ec41ff5a67e96a42273
        version: 2.9.1
      entries:
      - name: multicluster-engine.v2.9.1
        version: 2.9.1
      - name: multicluster-engine.v2.9.0
        version: 2.9.0
      name: stable-2.9
    defaultChannel: stable-2.10
    packageName: multicluster-engine
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: 3scale-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: 3scale-community-operator.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/3scale-operator:v0.8.2
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |
          The 3scale community Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          3scale API Management makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/3scale-operator/blob/v0.8.2/doc/operator-user-guide.md).

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Improving [documentation](https://github.com/3scale/3scale-operator/blob/v0.8.2/doc/operator-user-guide.md)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: 3scale API Management
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://github.com/3scale/3scale-operator/blob/v0.8.2/doc/operator-user-guide.md
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/3scale-operator:v0.8.2
        - quay.io/openshift-community-operators/3scale-community-operator@sha256:8197e4a96ac8949d43cda62ac2257a9b1e71f0b54f42283ee4925f88c369f873
        version: 0.8.2
      entries:
      - name: 3scale-community-operator.v0.8.2
        version: 0.8.2
      name: threescale-2.11
    - currentCSV: 3scale-community-operator.v0.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/3scale-operator:v0.9.0
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |
          The 3scale community Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          3scale API Management makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/3scale-operator/blob/v0.9.0/doc/operator-user-guide.md).

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: 3scale API Management
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://github.com/3scale/3scale-operator/blob/v0.9.0/doc/operator-user-guide.md
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/3scale-operator:v0.9.0
        - quay.io/openshift-community-operators/3scale-community-operator@sha256:728074151b245f5e0d65bd8956149f05ba22a1b6438120ebca2d85b0d7d0c837
        version: 0.9.0
      entries:
      - name: 3scale-community-operator.v0.9.0
        version: 0.9.0
      - name: 3scale-community-operator.v0.8.2
        version: 0.8.2
      name: threescale-2.12
    - currentCSV: 3scale-community-operator.v0.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ProxyConfigPromote",
                "metadata": {
                  "name": "proxyconfigpromote-sample"
                },
                "spec": {
                  "ProductCRName": "product1-sample",
                  "Production": true
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/3scale-operator:v0.10.1
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: ProxyConfigPromote is the Schema for the proxyconfigpromotes
              API
            displayName: Proxy Config Promote
            kind: ProxyConfigPromote
            name: proxyconfigpromotes.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |
          The 3scale community Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          3scale API Management makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/3scale-operator/blob/v0.10.1/doc/operator-user-guide.md).

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Improving [documentation](https://github.com/3scale/3scale-operator/blob/master/doc/operator-user-guide.md)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: 3scale API Management
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://github.com/3scale/3scale-operator/blob/v0.10.1/doc/operator-user-guide.md
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mstoklus@redhat.com
          name: Michal Stokluska
        - email: aucunnin@redhat.com
          name: Austin Cunningham
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/3scale-operator:v0.10.1
        - quay.io/openshift-community-operators/3scale-community-operator@sha256:4109698147632b858fe2787964772a1339cdebee72b75b42d9b1c5dbbbecb45c
        version: 0.10.1
      entries:
      - name: 3scale-community-operator.v0.10.1
        version: 0.10.1
      - name: 3scale-community-operator.v0.9.0
        version: 0.9.0
      - name: 3scale-community-operator.v0.8.2
        version: 0.8.2
      name: threescale-2.13
    defaultChannel: threescale-2.13
    packageName: 3scale-community-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: kiali-ossm
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kiali-operator.v2.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "Kiali",
                "metadata": {
                  "name": "kiali"
                },
                "spec": {
                  "version": "default",
                  "istio_namespace": "istio-system",
                  "deployment": {
                    "logger": {
                      "log_level": "info"
                    },
                    "view_only_mode": false
                  }
                }
              },
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "OSSMConsole",
                "metadata": {
                  "name": "ossmconsole"
                },
                "spec": {
                  "version": "default",
                  "kiali": {
                    "serviceName": "",
                    "serviceNamespace": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh-tech-preview/kiali-rhel9-operator@sha256:0612dfa52f2bf39a1d87e640409313585fedc7cfcff6d00e77bb14809d27d646
          createdAt: "2024-12-12T10:44:15Z"
          description: This productized operator provides Kiali and OSSMC. Kiali is
            the Istio observability and management Console. OSSMC is the OpenShift
            Service Mesh Console plugin, powered by Kiali.
          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: "true"
          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.skipRange: '>=1.0.0 <2.1.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/kiali/kiali
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A configuration file for a Kiali installation.
            displayName: Kiali
            kind: Kiali
            name: kialis.kiali.io
            version: v1alpha1
          - description: A configuration file for a OpenShift Service Mesh Console
              installation.
            displayName: OpenShift Service Mesh Console
            kind: OSSMConsole
            name: ossmconsoles.kiali.io
            version: v1alpha1
        description: |-
          ## About the managed application

          A Microservice Architecture breaks up the monolith into many smaller pieces
          that are composed together. Patterns to secure the communication between
          services like fault tolerance (via timeout, retry, circuit breaking, etc.)
          have come up as well as distributed tracing to be able to see where calls
          are going.

          A service mesh can now provide these services on a platform level and frees
          the application writers from those tasks. Routing decisions are done at the
          mesh level.

          Kiali works with OpenShift Service Mesh to visualize the service
          mesh topology, to provide visibility into features like circuit breakers,
          request rates and more. It offers insights about the mesh components at
          different levels, from abstract Applications to Services and Workloads.

          See [https://www.kiali.io](https://www.kiali.io) to read more.

          ### Accessing the UI

          By default, the Kiali operator exposes the Kiali UI as an OpenShift Route.

          If on OpenShift, you can create an OSSMConsole CR to have the operator
          install the OpenShift ServiceMesh Console plugin to the OpenShift Console
          thus providing an interface directly integrated with the OpenShift Console.

          ## About this Operator

          ### Kiali Custom Resource Configuration Settings

          For quick descriptions of all the settings you can configure in the Kiali
          Custom Resource (CR), see
          [the kiali.io docs](https://kiali.io/docs/configuration/kialis.kiali.io/).

          ## Prerequisites for enabling this Operator

          Kiali is a companion tool for OpenShift Service Mesh. So before you install Kiali, you must have
          already installed Service Mesh.
        displayName: Kiali Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - service-mesh
        - observability
        - monitoring
        - istio
        links:
        - name: Installation Guide
          url: https://www.kiali.io/docs/installation
        - name: Features
          url: https://www.kiali.io/docs/features
        - name: Documentation Home
          url: https://www.kiali.io
        - name: Blogs and Articles
          url: https://medium.com/kialiproject
        - name: Server and UI Source Code
          url: https://github.com/kiali/kiali
        - name: Operator Source Code
          url: https://github.com/kiali/kiali-operator
        - name: OpenShift Service Mesh Console Code
          url: https://github.com/kiali/openshift-servicemesh-plugin
        maintainers:
        - email: kiali-dev@googlegroups.com
          name: Kiali Developers Google Group
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-ossmc-rhel9@sha256:99643f294c3f92a6fc82f321cab7c756e4879fefb48fa824f1bf49ff7182658d
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-rhel9-operator@sha256:0612dfa52f2bf39a1d87e640409313585fedc7cfcff6d00e77bb14809d27d646
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-rhel9@sha256:06fde6c696a33d17b0d2f7620ec46422c82277fd17a3fe6d7319de05c732aace
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel8@sha256:e37d76dd7c7a2db79ff1e96afef19b07c3beaa8ebf0c7bd85b808908b8f0ce77
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:27a6aebffa3d049ee48050126e6107db2e07c49e9ce9297175facb6368e1e792
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:66e4d933a9d69158bf87dd45835183bf2308b77c48908ab64496c5d22c816293
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:976a31ca8cf17ac0887b8a586edfcc29eb30175802461b3114758af525e7b800
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-operator-bundle@sha256:f40e7955ac649c383134ab6e77bdd521b75b21ecd9b476436405d0674c7fc855
        version: 2.1.2
      entries:
      - name: kiali-operator.v2.1.2
        version: 2.1.2
      - name: kiali-operator.v1.89.8
        version: 1.89.8
      - name: kiali-operator.v1.89.7
        version: 1.89.7
      - name: kiali-operator.v1.89.6
        version: 1.89.6
      - name: kiali-operator.v1.89.1
        version: 1.89.1
      - name: kiali-operator.v1.73.10
        version: 1.73.10
      - name: kiali-operator.v1.73.8
        version: 1.73.8
      - name: kiali-operator.v1.73.7
        version: 1.73.7
      - name: kiali-operator.v1.73.4
        version: 1.73.4
      - name: kiali-operator.v1.65.11
        version: 1.65.11
      - name: kiali-operator.v1.65.10
        version: 1.65.10
      - name: kiali-operator.v1.65.9
        version: 1.65.9
      - name: kiali-operator.v1.65.8
        version: 1.65.8
      - name: kiali-operator.v1.65.7
        version: 1.65.7
      - name: kiali-operator.v1.65.6
        version: 1.65.6
      - name: kiali-operator.v1.57.7
        version: 1.57.7
      name: candidate
    - currentCSV: kiali-operator.v2.17.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "Kiali",
                "metadata": {
                  "name": "kiali"
                },
                "spec": {
                  "version": "default",
                  "deployment": {
                    "logger": {
                      "log_level": "info"
                    },
                    "view_only_mode": false
                  }
                }
              },
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "OSSMConsole",
                "metadata": {
                  "name": "ossmconsole"
                },
                "spec": {
                  "version": "default",
                  "kiali": {
                    "serviceName": "",
                    "serviceNamespace": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh/kiali-rhel9-operator@sha256:ee89b53ebdd6b92eccd6c4a238a43d57d245ab14e8402a86e5ecd53046d90485
          createdAt: "2025-12-04T11:03:18Z"
          description: This productized operator provides Kiali and OSSMC. Kiali is
            the Istio observability and management Console. OSSMC is the OpenShift
            Service Mesh Console plugin, powered by Kiali.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/kiali/kiali
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A configuration file for a Kiali installation.
            displayName: Kiali
            kind: Kiali
            name: kialis.kiali.io
            version: v1alpha1
          - description: A configuration file for a OpenShift Service Mesh Console
              installation.
            displayName: OpenShift Service Mesh Console
            kind: OSSMConsole
            name: ossmconsoles.kiali.io
            version: v1alpha1
        description: |-
          ## About the managed application

          A Microservice Architecture breaks up the monolith into many smaller pieces
          that are composed together. Patterns to secure the communication between
          services like fault tolerance (via timeout, retry, circuit breaking, etc.)
          have come up as well as distributed tracing to be able to see where calls
          are going.

          A service mesh can now provide these services on a platform level and frees
          the application writers from those tasks. Routing decisions are done at the
          mesh level.

          Kiali works with OpenShift Service Mesh to visualize the service
          mesh topology, to provide visibility into features like circuit breakers,
          request rates and more. It offers insights about the mesh components at
          different levels, from abstract Applications to Services and Workloads.

          See [https://www.kiali.io](https://www.kiali.io) to read more.

          ### Accessing the UI

          By default, the Kiali operator exposes the Kiali UI as an OpenShift Route.

          If on OpenShift, you can create an OSSMConsole CR to have the operator
          install the OpenShift ServiceMesh Console plugin to the OpenShift Console
          thus providing an interface directly integrated with the OpenShift Console.

          ## About this Operator

          ### Kiali Custom Resource Configuration Settings

          For quick descriptions of all the settings you can configure in the Kiali
          Custom Resource (CR), see
          [the kiali.io docs](https://kiali.io/docs/configuration/kialis.kiali.io/).

          ## Prerequisites for enabling this Operator

          Kiali is a companion tool for OpenShift Service Mesh. So before you install Kiali, you must have
          already installed Service Mesh.
        displayName: Kiali Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - service-mesh
        - observability
        - monitoring
        - istio
        links:
        - name: Installation Guide
          url: https://www.kiali.io/docs/installation
        - name: Features
          url: https://www.kiali.io/docs/features
        - name: Documentation Home
          url: https://www.kiali.io
        - name: Blogs and Articles
          url: https://medium.com/kialiproject
        - name: Server and UI Source Code
          url: https://github.com/kiali/kiali
        - name: Operator Source Code
          url: https://github.com/kiali/kiali-operator
        - name: OpenShift Service Mesh Console Code
          url: https://github.com/kiali/openshift-servicemesh-plugin
        maintainers:
        - email: kiali-dev@googlegroups.com
          name: Kiali Developers Google Group
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:5e0f84a7ea17f1969dad842e2b8a7d3d868987e93a8e07ed8c2fab029618b8b6
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:99fd79555e907c2a84d0ffabb07fbce41313f800dbcd73edc6ee39773b5cdd23
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9-operator@sha256:ee89b53ebdd6b92eccd6c4a238a43d57d245ab14e8402a86e5ecd53046d90485
        - registry.redhat.io/openshift-service-mesh/kiali-operator-bundle@sha256:35096e1737e500ad148e9f5ca2a14554a5e1b4f3104782f00e8322352e365833
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel8@sha256:3c562a0583789ef34b25715663a66fc099c418d067e8cabd3c16e149f995d3a7
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:422b7cc5c88030ad25e989b17aa7d198844fd505571f1340c3b6d08704bc96ee
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:9fb4a74a931c8c6a9f8dd0cc844a93fe0b7fff36210fe53fd8cc50b69484d742
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:bde79c700c879bae1bb67434f51b3b202d7072de771cf8d86ee65b5539b9e347
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:ee3ea20acb92c12d1808076f00a179da61e632888e8e59e0e2b8b5caf053246c
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:73c5c6021261336e50b34210f7ca4926511e8f11ff4d29f1305a0236dcc19c5d
        version: 2.17.2
      entries:
      - name: kiali-operator.v2.17.2
        version: 2.17.2
      - name: kiali-operator.v2.17.1
        version: 2.17.1
      - name: kiali-operator.v2.11.4
        version: 2.11.4
      - name: kiali-operator.v2.11.3
        version: 2.11.3
      - name: kiali-operator.v2.11.2
        version: 2.11.2
      - name: kiali-operator.v2.11.1
        version: 2.11.1
      - name: kiali-operator.v2.4.7
        version: 2.4.7
      - name: kiali-operator.v2.4.6
        version: 2.4.6
      - name: kiali-operator.v2.4.5
        version: 2.4.5
      - name: kiali-operator.v2.4.4
        version: 2.4.4
      - name: kiali-operator.v2.4.3
        version: 2.4.3
      - name: kiali-operator.v1.89.10
        version: 1.89.10
      - name: kiali-operator.v1.89.9
        version: 1.89.9
      - name: kiali-operator.v1.89.8
        version: 1.89.8
      - name: kiali-operator.v1.89.7
        version: 1.89.7
      - name: kiali-operator.v1.89.6
        version: 1.89.6
      - name: kiali-operator.v1.89.1
        version: 1.89.1
      - name: kiali-operator.v1.73.10
        version: 1.73.10
      - name: kiali-operator.v1.73.8
        version: 1.73.8
      - name: kiali-operator.v1.73.7
        version: 1.73.7
      - name: kiali-operator.v1.73.4
        version: 1.73.4
      - name: kiali-operator.v1.65.11
        version: 1.65.11
      - name: kiali-operator.v1.65.10
        version: 1.65.10
      - name: kiali-operator.v1.65.9
        version: 1.65.9
      - name: kiali-operator.v1.65.8
        version: 1.65.8
      - name: kiali-operator.v1.65.7
        version: 1.65.7
      - name: kiali-operator.v1.65.6
        version: 1.65.6
      - name: kiali-operator.v1.57.7
        version: 1.57.7
      name: stable
    defaultChannel: stable
    packageName: kiali-ossm
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Debezium Authors
      provider-url: https://debezium.io/
    name: debezium-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: debezium-operator.v2.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.4.2.Final
          createdAt: "2023-12-13T12:20:56Z"
          description: An Operator for installing and managing Debezium
          repository: https://github.com/debezium/debezium-operator
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/debezium/operator:2.4.2.Final
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:1a156d67fd5beb9ffddecab724490acb7143f8141ff3b392c6f519e76c3ad374
        version: 2.4.2
      entries:
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.4.x
    - currentCSV: debezium-operator.v2.5.3-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.5.3.Final
          createdAt: "2024-03-19T08:17:17Z"
          description: An Operator for installing and managing Debezium
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/debezium/operator:2.5.3.Final
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:645fcb18684884aef8ca4d5299f0d053d496c3a5d3f37cadd66c51d38514a680
        version: 2.5.3-final
      entries:
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.5.x
    - currentCSV: debezium-operator.v2.6.1-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.6.1.Final
          createdAt: "2024-04-12T17:18:16Z"
          description: An Operator for installing and managing Debezium
          olm.skipRange: '>2.5.3-final'
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:5a73ce3a8cc8422aeda37fd9ef97f5aecdbf8c69fb6ff488df26342e989b5c57
        - quay.io/debezium/operator:2.6.1.Final
        version: 2.6.1-final
      entries:
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.6.x
    - currentCSV: debezium-operator.v2.7.3-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.7.3.Final
          createdAt: "2024-09-20T10:31:16Z"
          description: An Operator for installing and managing Debezium
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:1dfe9180a9fca4f773c1282dfd0006daa0bb48dfbac87e352661e051107f9033
        - quay.io/debezium/operator:2.7.3.Final
        version: 2.7.3-final
      entries:
      - name: debezium-operator.v2.7.3-final
        version: 2.7.3-final
      - name: debezium-operator.v2.7.0-final
        version: 2.7.0-final
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.7.x
    - currentCSV: debezium-operator.v3.0.0-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:3.0.0.Final
          createdAt: "2024-10-02T09:55:38Z"
          description: An Operator for installing and managing Debezium
          olm.skipRange: '>2.7.3-final'
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:10671f1f6a7bab7b8bf7c8d986321484a7972b727f08947894ba7a6ccef98cd8
        - quay.io/debezium/operator:3.0.0.Final
        version: 3.0.0-final
      entries:
      - name: debezium-operator.v3.0.0-final
        version: 3.0.0-final
      - name: debezium-operator.v2.7.3-final
        version: 2.7.3-final
      - name: debezium-operator.v2.7.0-final
        version: 2.7.0-final
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-3.0.x
    - currentCSV: debezium-operator.v3.0.0-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:3.0.0.Final
          createdAt: "2024-10-02T09:55:38Z"
          description: An Operator for installing and managing Debezium
          olm.skipRange: '>2.7.3-final'
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/debezium/operator:3.0.0.Final
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:10671f1f6a7bab7b8bf7c8d986321484a7972b727f08947894ba7a6ccef98cd8
        version: 3.0.0-final
      entries:
      - name: debezium-operator.v3.0.0-final
        version: 3.0.0-final
      - name: debezium-operator.v2.7.3-final
        version: 2.7.3-final
      - name: debezium-operator.v2.7.0-final
        version: 2.7.0-final
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-latest
    defaultChannel: debezium-latest
    packageName: debezium-operator
    provider:
      name: Debezium Authors
      url: https://debezium.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/component: kmm-hub
      app.kubernetes.io/name: kmm-hub
      app.kubernetes.io/part-of: kmm
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: kernel-module-management-hub
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kernel-module-management-hub.v2.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:888a3acad339cf38a324c718e0cbe1237ca5bf2f4636b01d001752658e4cca1b
          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: "true"
          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.skipRange: '>=0.0.0 <2.0.2'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:888a3acad339cf38a324c718e0cbe1237ca5bf2f4636b01d001752658e4cca1b
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:192e08b121a04ae69aea60c35199e8f5e3c42305e1ebd024a605a371de4ab472
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:94b4ddc45cb34d4ffe794a51b99c868cb709f90cc4eb8b28284d70c526a0a226
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:62c44057a27abd41cf3daf60b8736da59a82dadb65fa6c32bef65d19bd49ea49
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:f182078b0077b6df6d47ddcab0204e963c1475486bd61b8eccb73b46eb8b2995
        version: 2.0.2
      entries:
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.0
    - currentCSV: kernel-module-management-hub.v2.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:d1c1490d4c20dc2ec31effa1af067676c4d264e3b7d4670fc11c2baf8a400001
          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.skipRange: '>=0.0.0 <2.1.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:c8b3505ed491c1bf6a913f161715c8ac483d8d9adf1fd29916ea4edad987cd67
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:d1c1490d4c20dc2ec31effa1af067676c4d264e3b7d4670fc11c2baf8a400001
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:14e100e5853444114029116255ebfb7a54e5ed51503ba969740ad48b5ca80f70
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:1a9a19df17b464d1708b2905d03b8726e4480ca1f11aa97a15ff4c049a24ea4b
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:611556d999ea97f9dbb78fec5963baa02de7a26626d7096ba63b177e3bcf9707
        version: 2.1.1
      entries:
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.1
    - currentCSV: kernel-module-management-hub.v2.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:90c1946b3f577cde0435402b04baa52dc54e5aab3bb84bd834ac026a57453296
          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: "true"
          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.skipRange: '>=0.0.0 <2.2.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:90c1946b3f577cde0435402b04baa52dc54e5aab3bb84bd834ac026a57453296
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:53fddf0b226eb579c71c86112a8d9b6b1d90a1498d6f6985932b16b8be532f35
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:c3dc9ad4ebc68cd85a074b520903a9310e72a90a73bdf4aa7c42b7ed66b7bcba
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:b1d98c0f14448ae8eb80821cbec236150c338674aae2a2b37f8d0ab0d5f1430c
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:af5a13351f960c0938c68604b772f24743c0e997701838a7784c53406471e72a
        version: 2.2.1
      entries:
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.2
    - currentCSV: kernel-module-management-hub.v2.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:f1d8f3c95f621c3faf41867c5dd4bc13fa2b9b291422d6184e6e42f1d1460259
          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: "true"
          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.skipRange: '>=0.0.0 <2.3.0'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:0d9f5293d69eebd91fffd83ae371141e640cab8f9e2d559a83714ce0f94fee08
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:f1d8f3c95f621c3faf41867c5dd4bc13fa2b9b291422d6184e6e42f1d1460259
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:f9fde334af68220943017a7491130e6a82f15e63522f5bb3931aa7d9b00ccc40
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:06ac089cc89b303e525fd71d6439b958f34ab944a72209f1cc8cb562ecfd1112
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:c5005b74402f680d11c9ea682a9a0d3f74b6ab0d01d25298d232f910f1a29c34
        version: 2.3.0
      entries:
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.3
    - currentCSV: kernel-module-management-hub.v2.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm-hub",
                    "app.kubernetes.io/name": "kmm-hub",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator
          createdAt: "2025-06-19T20:27:42Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.4.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:c4dc5f967c59e6371f344aa840fac24d8a17c127c71a2babf67d26cf6526acc5
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:2efb81137ad2981b994c62d460c917749308133a7dcad5b9a2b251e18f3052ec
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:38d811a00b88a096d9fa8f650dae132c43db7057aac61c98932494ce94d67fff
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:34bd5c4f17411d5aa71edb1d6482b9a4cffffe4983b0a599db080bb09e1ec4d2
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:fc753a1c47c870199bf3c9a6cb4ef704847d525b3df5cd7628e2cc7dd0bbb2aa
        version: 2.4.1
      entries:
      - name: kernel-module-management-hub.v2.4.1
        version: 2.4.1
      - name: kernel-module-management-hub.v2.4.0
        version: 2.4.0
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.4
    - currentCSV: kernel-module-management-hub.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm-hub",
                    "app.kubernetes.io/name": "kmm-hub",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:31Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:e0b2a92c81b68732284ee358725ecc3a8e8a7cc9b9801ffda5167da98dd91013
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:66c94d8a0470c470c15ccf880fbb7bd69b368020c93eb0bc7c9bdd84ba6825ed
        version: 2.5.1
      entries:
      - name: kernel-module-management-hub.v2.5.1
        version: 2.5.1
      - name: kernel-module-management-hub.v2.5.0
        version: 2.5.0
      - name: kernel-module-management-hub.v2.4.1
        version: 2.4.1
      - name: kernel-module-management-hub.v2.4.0
        version: 2.4.0
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.5
    - currentCSV: kernel-module-management-hub.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm-hub",
                    "app.kubernetes.io/name": "kmm-hub",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:31Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:66c94d8a0470c470c15ccf880fbb7bd69b368020c93eb0bc7c9bdd84ba6825ed
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:e0b2a92c81b68732284ee358725ecc3a8e8a7cc9b9801ffda5167da98dd91013
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        version: 2.5.1
      entries:
      - name: kernel-module-management-hub.v2.5.1
        version: 2.5.1
      - name: kernel-module-management-hub.v2.5.0
        version: 2.5.0
      - name: kernel-module-management-hub.v2.4.1
        version: 2.4.1
      - name: kernel-module-management-hub.v2.4.0
        version: 2.4.0
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: kernel-module-management-hub
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Splunk Inc.
      provider-url: www.splunk.com
    name: splunk-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: splunk-operator.v3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "IndexerCluster",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "indexercluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "LicenseMaster",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "licensemaster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "MonitoringConsole",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "monitoringconsole-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "SearchHeadCluster",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "searchheadcluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "Standalone",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "standalone-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "ClusterManager",
                "metadata": {
                  "name": "clustermanager-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "IndexerCluster",
                "metadata": {
                  "name": "indexercluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "LicenseManager",
                "metadata": {
                  "name": "licensemanager-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "MonitoringConsole",
                "metadata": {
                  "name": "monitoringconsole-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "SearchHeadCluster",
                "metadata": {
                  "name": "searchheadcluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "Standalone",
                "metadata": {
                  "name": "standalone-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Big Data, Logging & Tracing, Monitoring, Security, AI/Machine
            Learning
          containerImage: splunk/splunk-operator@sha256:ed02561995d46ff8eea143fa78f5da118ee6fdb500832e9a33b42d059a67e229
          createdAt: "2025-09-08T10:17:59Z"
          description: The Splunk Operator for Kubernetes enables you to quickly and
            easily deploy Splunk Enterprise on your choice of private or public cloud
            provider. The Operator simplifies scaling and management of Splunk Enterprise
            by automating administrative workflows using Kubernetes best practices.
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.19"}]'
          olm.skipRange: '>=2.4.0 <3.0.0'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/splunk/splunk-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterManager is the Schema for the cluster manager API
            displayName: Cluster Manager
            kind: ClusterManager
            name: clustermanagers.enterprise.splunk.com
            version: v4
          - description: ClusterMaster is the Schema for the cluster manager API
            displayName: Cluster Master
            kind: ClusterMaster
            name: clustermasters.enterprise.splunk.com
            version: v3
          - kind: ClusterMaster
            name: clustermasters.enterprise.splunk.com
            version: v1
          - kind: ClusterMaster
            name: clustermasters.enterprise.splunk.com
            version: v2
          - description: IndexerCluster is the Schema for a Splunk Enterprise indexer
              cluster
            displayName: Indexer Cluster
            kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v3
          - description: IndexerCluster is the Schema for a Splunk Enterprise indexer
              cluster
            displayName: Indexer Cluster
            kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v4
          - kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v1
          - kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v2
          - description: LicenseManager is the Schema for a Splunk Enterprise license
              manager.
            displayName: License Manager
            kind: LicenseManager
            name: licensemanagers.enterprise.splunk.com
            version: v4
          - description: LicenseMaster is the Schema for a Splunk Enterprise license
              master.
            displayName: License Master
            kind: LicenseMaster
            name: licensemasters.enterprise.splunk.com
            version: v3
          - kind: LicenseMaster
            name: licensemasters.enterprise.splunk.com
            version: v1
          - kind: LicenseMaster
            name: licensemasters.enterprise.splunk.com
            version: v2
          - description: MonitoringConsole is the Schema for the monitoringconsole
              API
            displayName: Monitoring Console
            kind: MonitoringConsole
            name: monitoringconsoles.enterprise.splunk.com
            version: v3
          - description: MonitoringConsole is the Schema for the monitoringconsole
              API
            displayName: Monitoring Console
            kind: MonitoringConsole
            name: monitoringconsoles.enterprise.splunk.com
            version: v4
          - description: SearchHeadCluster is the Schema for a Splunk Enterprise search
              head cluster
            displayName: Search Head Cluster
            kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v3
          - description: SearchHeadCluster is the Schema for a Splunk Enterprise search
              head cluster
            displayName: Search Head Cluster
            kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v4
          - kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v1
          - kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v2
          - description: Standalone is the Schema for a Splunk Enterprise standalone
              instances.
            displayName: Standalone
            kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v3
          - description: Standalone is the Schema for a Splunk Enterprise standalone
              instances.
            displayName: Standalone
            kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v4
          - kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v1
          - kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v2
        description: The Splunk Operator for Kubernetes enables you to quickly and
          easily deploy Splunk Enterprise on your choice of private or public cloud
          provider. The Operator simplifies scaling and management of Splunk Enterprise
          by automating administrative workflows using Kubernetes best practices.
        displayName: Splunk Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Splunk
        - Enterprise
        - Operator
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://github.com/splunk/splunk-operator/tree/main/docs
        maintainers:
        - email: support@splunk.com
          name: Splunk Operator Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Splunk Inc.
          url: www.splunk.com
        relatedImages:
        - registry.connect.redhat.com/splunk/splunk-operator-bundle@sha256:0d128cb47f562351a407c7e0153736fbbc14daba121c1d7422f6ecea8967788e
        - splunk/splunk-operator@sha256:ed02561995d46ff8eea143fa78f5da118ee6fdb500832e9a33b42d059a67e229
        - splunk/splunk@sha256:4a5ce5a7b4e84a87396f0664895095c6510a0f2bf52e8747a373c7357f3ee313
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d4883d7c622683b3319b5e6b3a7edfbf2594c18060131a8bf64504805f875522
        version: 3.0.0
      entries:
      - name: splunk-operator.v3.0.0
        version: 3.0.0
      - name: splunk-operator.v2.8.1
        version: 2.8.1
      - name: splunk-operator.v2.8.0
        version: 2.8.0
      - name: splunk-operator.v2.7.1
        version: 2.7.1
      - name: splunk-operator.v2.7.0
        version: 2.7.0
      name: stable
    defaultChannel: stable
    packageName: splunk-operator
    provider:
      name: Splunk Inc.
      url: www.splunk.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: https://www.percona.com/
    name: percona-postgresql-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-postgresql-operator-certified.v2.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgv2.percona.com/v2",
                "kind": "PerconaPGCluster",
                "metadata": {
                  "name": "cluster1"
                },
                "spec": {
                  "crVersion": "2.8.2",
                  "initContainer" : {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4"
                    },
                  "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227",
                  "imagePullPolicy": "Always",
                  "postgresVersion": 17,
                  "instances": [
                    {
                      "name": "instance1",
                      "replicas": 3,
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/data": "postgres"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      },
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      }
                    }
                  ],
                  "proxy": {
                    "pgBouncer": {
                      "replicas": 3,
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb",
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/role": "pgbouncer"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      }
                    }
                  },
                  "backups": {
                    "pgbackrest": {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27",
                      "repoHost": {
                        "affinity": {
                          "podAntiAffinity": {
                            "preferredDuringSchedulingIgnoredDuringExecution": [
                              {
                                "weight": 1,
                                "podAffinityTerm": {
                                  "labelSelector": {
                                    "matchLabels": {
                                      "postgres-operator.crunchydata.com/data": "pgbackrest"
                                    }
                                  },
                                  "topologyKey": "kubernetes.io/hostname"
                                }
                              }
                            ]
                          }
                        }
                      },
                      "manual": {
                        "repoName": "repo1",
                        "options": [
                          "--type=full"
                        ]
                      },
                      "repos": [
                        {
                          "name": "repo1",
                          "schedules": {
                            "full": "0 0 * * 6"
                          },
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1",
                    "secret": "cluster1-pmm-secret",
                    "serverHost": "monitoring-service"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
          createdAt: "2025-12-24T20:59:08Z"
          description: Percona Operator for PostgreSQL manages the lifecycle of Percona
            PostgreSQL cluster instances.
          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"
          repository: https://github.com/percona/percona-postgresql-operator
          support: percona.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaPGCluster is the CRD that defines a Percona PG Cluster
            displayName: Percona PGCluster
            kind: PerconaPGCluster
            name: perconapgclusters.pgv2.percona.com
            version: v2
          - description: PerconaPGBackup is the CRD that defines a Percona PostgreSQL
              Backup
            displayName: Percona PGBackup
            kind: PerconaPGBackup
            name: perconapgbackups.pgv2.percona.com
            version: v2
          - description: PerconaPGRestore is the CRD that defines a Percona PostgreSQL
              Restore
            displayName: Percona PGRestore
            kind: PerconaPGRestore
            name: perconapgrestores.pgv2.percona.com
            version: v2
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API This Custom Resource requires enabling CrunchyBridgeClusters feature
              gate
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PerconaPGUpgrade is the Schema for the perconapgupgrades
              API
            displayName: Percona PGUpgrade
            kind: PerconaPGUpgrade
            name: perconapgupgrades.pgv2.percona.com
            version: v2
          - description: PGAdmin is the Schema for the pgadmins API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          ## Percona is Cloud Native


          Percona Operator for PostgreSQL automates and simplifies deploying and managing
          open source PostgreSQL clusters on Kubernetes. Percona Operator for PostgreSQL is based on Postgres Operator developed by Crunchy Data.

          Whether you need to get a simple PostgreSQL cluster up and running, need to deploy a high availability,
          fault tolerant cluster in production, or are running your own database-as-a-service, the Operator provides the essential
          features you need to keep your clusters healthy.

          Consult the
          [documentation](https://www.percona.com/doc/kubernetes-operator-for-postgresql/index.html)
          on the Percona Operator for PostgreSQL for complete details on capabilities
          and options.

          ### Supported Features

          * **PostgreSQL Cluster Provisioning**

          Create, Scale, & Delete PostgreSQL clusters with ease, while fully customizing your Pods and PostgreSQL configuration.

          * **High Availability**

              Safe, automated failover backed by a distributed consensus based high-availability solution. Uses Pod Anti-Affinity to help resiliency; you can configure how much
              enforced this can be. Failed primaries automatically heal, allowing for faster recovery time. Support for standby PostgreSQL clusters that work both within and
              across multiple Kubernetes clusters.

          * **Disaster Recovery**

              Backups and restores leverage the open source pgBackRest utility and includes support for full, incremental, and differential backups as well as efficient delta
              restores. Set how long you want your backups retained for. Works great with very large databases!

          * **Communication Security**

              Secure communication between your applications and data servers by enabling TLS for your PostgreSQL servers, including the ability to enforce all of your connections
              to use TLS.

          * **Monitoring**

              Track the health of your PostgreSQL clusters with Percona Monitoring and Management (PMM).

          * **PostgreSQL User Management**

              Quickly add and remove users from your PostgreSQL clusters with powerful commands. Manage password expiration policies or use your preferred PostgreSQL authentication
              scheme.

          * **Updates Management**

              Safely apply PostgreSQL updates with minimal availability impact to your PostgreSQL clusters.

          * **Advanced Replication Support**

              Choose between asynchronous replication and synchronous replication for workloads that are sensitive to losing transactions.

          * **Clone**

              Create new clusters from your existing clusters or backups.

          * **Connection Pooling**

              Use [pgBouncer](https://access.crunchydata.com/documentation/postgres-operator/latest/tutorial/pgbouncer/) for connection pooling

          * **Affinity and Tolerations**

              Have your PostgreSQL clusters deployed to Kubernetes Nodes of your preference with node affinity, or designate which nodes Kubernetes can schedule PostgreSQL instances
              to with Kubernetes  tolerations.

          * **Scheduled Backups**

              Choose the type of backup (full, incremental, differential) and how frequently you want it to occur on each PostgreSQL cluster.

          * **Backup to S3**

              Store your backups in Amazon S3 or any object storage system that supports the S3 protocol. The Operator can backup, restore, and create new clusters from these backups.

          * **Multi-Namespace Support**

              You can control how the Operator leverages Kubernetes Namespaces with several different deployment models:

              * Deploy the Operator and all PostgreSQL clusters to the same namespace
              * Deploy the Operator to one Namespace, and all PostgreSQL clusters to a different Namespace
              * Deploy the Operator to one Namespace, and have your PostgreSQL clusters managed across multiple Namespaces

          * **Full Customizability**

              The Operator not only makes it easy to get PostgreSQL up and running on Kubernetes-enabled platforms, but also allows you to further customize your deployments:

              * Selecting different storage classes for your primary, replica, and backup storage
              * Select your own container resources class for each PostgreSQL cluster deployment; differentiate between resources applied for primary and replica clusters
              * Use your own container image repository, including `imagePullSecrets` and private repositories  support
              * Customize your PostgreSQL configuration
              * Bring your own trusted certificate authority (CA) for use with the Operator API server
              * Override your PostgreSQL configuration for each cluster
              * Use your own custom images, re-define the image for each container separately
        displayName: Percona Operator for PostgreSQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - percona
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-postgresql/index.html
        - name: Github
          url: https://github.com/percona/percona-postgresql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
          url: https://www.percona.com/
        relatedImages:
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:f632d8d344484f5127fb2d7099932ed61659d4e6a365c5e8d5160829a48f2d95
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:9625b4723334fe682dc84473b1ed6062dfccb8ba8aa1151bdf2951014af1eccd
        - registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:20abf8fbdd159fcd4e7a76fc3007adcb4cf13181666c57e92c041479b1dae469
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4325dfd18945f91656624770b66815a987ff7bd71ed50584f701cf70d30b527c
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:dd5d46542699ee7581127e378d50d5ebea8b988cec94af5ca0afc7b1526af03d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7d1f8a886ec7e649cb8d025b54f2d54b3000d8c3c9b1f1faca0c9f7d33df7d4f
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4eaf41681c1af8e5a22c8ddf0fe03cbb39c0e86e8f44db769dea8302d9999378
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8db1cadc211b9fe8dca7b6fbebe0e278673053f0e367d4a14096dee67ff3d6c9
        - registry.connect.redhat.com/percona/percona-postgresql-operator-bundle@sha256:91416d3fbcaf47deec7945948744a4509a3b2ac9609c78390f2f55271ecee7b1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:11bda023af2f45f340bcabb12cc4bcb67b3ba97f8c452d15863ba8d28236150d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7596e1e5c1d2cd6c178e592870e27ca6c47762b7de0c38b6485925ba9d08d612
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4e67a8b906bc0932d14ae69fb922c0de246dad463dff5250dbfe6689887fabec
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7a7bb90523d29acdfc7c05f2d43f725c121b55bdad0d681d0e4794011def43c1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1
        version: 2.8.2
      entries:
      - name: percona-postgresql-operator-certified.v2.8.2
        version: 2.8.2
      - name: percona-postgresql-operator-certified.v2.8.1
        version: 2.8.1
      - name: percona-postgresql-operator-certified.v2.8.0
        version: 2.8.0
      name: stable
    - currentCSV: percona-postgresql-operator-certified.v2.8.2-cw
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgv2.percona.com/v2",
                "kind": "PerconaPGCluster",
                "metadata": {
                  "name": "cluster1"
                },
                "spec": {
                  "crVersion": "2.8.2",
                  "initContainer" : {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4"
                    },
                  "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227",
                  "imagePullPolicy": "Always",
                  "postgresVersion": 17,
                  "instances": [
                    {
                      "name": "instance1",
                      "replicas": 3,
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/data": "postgres"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      },
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      }
                    }
                  ],
                  "proxy": {
                    "pgBouncer": {
                      "replicas": 3,
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb",
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/role": "pgbouncer"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      }
                    }
                  },
                  "backups": {
                    "pgbackrest": {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27",
                      "repoHost": {
                        "affinity": {
                          "podAntiAffinity": {
                            "preferredDuringSchedulingIgnoredDuringExecution": [
                              {
                                "weight": 1,
                                "podAffinityTerm": {
                                  "labelSelector": {
                                    "matchLabels": {
                                      "postgres-operator.crunchydata.com/data": "pgbackrest"
                                    }
                                  },
                                  "topologyKey": "kubernetes.io/hostname"
                                }
                              }
                            ]
                          }
                        }
                      },
                      "manual": {
                        "repoName": "repo1",
                        "options": [
                          "--type=full"
                        ]
                      },
                      "repos": [
                        {
                          "name": "repo1",
                          "schedules": {
                            "full": "0 0 * * 6"
                          },
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1",
                    "secret": "cluster1-pmm-secret",
                    "serverHost": "monitoring-service"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
          createdAt: "2025-12-24T20:59:08Z"
          description: Percona Operator for PostgreSQL manages the lifecycle of Percona
            PostgreSQL cluster instances.
          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"
          repository: https://github.com/percona/percona-postgresql-operator
          support: percona.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaPGCluster is the CRD that defines a Percona PG Cluster
            displayName: Percona PGCluster
            kind: PerconaPGCluster
            name: perconapgclusters.pgv2.percona.com
            version: v2
          - description: PerconaPGBackup is the CRD that defines a Percona PostgreSQL
              Backup
            displayName: Percona PGBackup
            kind: PerconaPGBackup
            name: perconapgbackups.pgv2.percona.com
            version: v2
          - description: PerconaPGRestore is the CRD that defines a Percona PostgreSQL
              Restore
            displayName: Percona PGRestore
            kind: PerconaPGRestore
            name: perconapgrestores.pgv2.percona.com
            version: v2
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API This Custom Resource requires enabling CrunchyBridgeClusters feature
              gate
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PerconaPGUpgrade is the Schema for the perconapgupgrades
              API
            displayName: Percona PGUpgrade
            kind: PerconaPGUpgrade
            name: perconapgupgrades.pgv2.percona.com
            version: v2
          - description: PGAdmin is the Schema for the pgadmins API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          ## Percona is Cloud Native


          Percona Operator for PostgreSQL automates and simplifies deploying and managing
          open source PostgreSQL clusters on Kubernetes. Percona Operator for PostgreSQL is based on Postgres Operator developed by Crunchy Data.

          Whether you need to get a simple PostgreSQL cluster up and running, need to deploy a high availability,
          fault tolerant cluster in production, or are running your own database-as-a-service, the Operator provides the essential
          features you need to keep your clusters healthy.

          Consult the
          [documentation](https://www.percona.com/doc/kubernetes-operator-for-postgresql/index.html)
          on the Percona Operator for PostgreSQL for complete details on capabilities
          and options.

          ### Supported Features

          * **PostgreSQL Cluster Provisioning**

          Create, Scale, & Delete PostgreSQL clusters with ease, while fully customizing your Pods and PostgreSQL configuration.

          * **High Availability**

              Safe, automated failover backed by a distributed consensus based high-availability solution. Uses Pod Anti-Affinity to help resiliency; you can configure how much
              enforced this can be. Failed primaries automatically heal, allowing for faster recovery time. Support for standby PostgreSQL clusters that work both within and
              across multiple Kubernetes clusters.

          * **Disaster Recovery**

              Backups and restores leverage the open source pgBackRest utility and includes support for full, incremental, and differential backups as well as efficient delta
              restores. Set how long you want your backups retained for. Works great with very large databases!

          * **Communication Security**

              Secure communication between your applications and data servers by enabling TLS for your PostgreSQL servers, including the ability to enforce all of your connections
              to use TLS.

          * **Monitoring**

              Track the health of your PostgreSQL clusters with Percona Monitoring and Management (PMM).

          * **PostgreSQL User Management**

              Quickly add and remove users from your PostgreSQL clusters with powerful commands. Manage password expiration policies or use your preferred PostgreSQL authentication
              scheme.

          * **Updates Management**

              Safely apply PostgreSQL updates with minimal availability impact to your PostgreSQL clusters.

          * **Advanced Replication Support**

              Choose between asynchronous replication and synchronous replication for workloads that are sensitive to losing transactions.

          * **Clone**

              Create new clusters from your existing clusters or backups.

          * **Connection Pooling**

              Use [pgBouncer](https://access.crunchydata.com/documentation/postgres-operator/latest/tutorial/pgbouncer/) for connection pooling

          * **Affinity and Tolerations**

              Have your PostgreSQL clusters deployed to Kubernetes Nodes of your preference with node affinity, or designate which nodes Kubernetes can schedule PostgreSQL instances
              to with Kubernetes  tolerations.

          * **Scheduled Backups**

              Choose the type of backup (full, incremental, differential) and how frequently you want it to occur on each PostgreSQL cluster.

          * **Backup to S3**

              Store your backups in Amazon S3 or any object storage system that supports the S3 protocol. The Operator can backup, restore, and create new clusters from these backups.

          * **Multi-Namespace Support**

              You can control how the Operator leverages Kubernetes Namespaces with several different deployment models:

              * Deploy the Operator and all PostgreSQL clusters to the same namespace
              * Deploy the Operator to one Namespace, and all PostgreSQL clusters to a different Namespace
              * Deploy the Operator to one Namespace, and have your PostgreSQL clusters managed across multiple Namespaces

          * **Full Customizability**

              The Operator not only makes it easy to get PostgreSQL up and running on Kubernetes-enabled platforms, but also allows you to further customize your deployments:

              * Selecting different storage classes for your primary, replica, and backup storage
              * Select your own container resources class for each PostgreSQL cluster deployment; differentiate between resources applied for primary and replica clusters
              * Use your own container image repository, including `imagePullSecrets` and private repositories  support
              * Customize your PostgreSQL configuration
              * Bring your own trusted certificate authority (CA) for use with the Operator API server
              * Override your PostgreSQL configuration for each cluster
              * Use your own custom images, re-define the image for each container separately
        displayName: Percona Operator for PostgreSQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - percona
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-postgresql/index.html
        - name: Github
          url: https://github.com/percona/percona-postgresql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
          url: https://www.percona.com/
        relatedImages:
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4325dfd18945f91656624770b66815a987ff7bd71ed50584f701cf70d30b527c
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7d1f8a886ec7e649cb8d025b54f2d54b3000d8c3c9b1f1faca0c9f7d33df7d4f
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:dd5d46542699ee7581127e378d50d5ebea8b988cec94af5ca0afc7b1526af03d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4e67a8b906bc0932d14ae69fb922c0de246dad463dff5250dbfe6689887fabec
        - registry.connect.redhat.com/percona/percona-postgresql-operator-bundle@sha256:426327aea4e178081a84aedf1217abb2785a911d4889a1c9134160ef26c248aa
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:11bda023af2f45f340bcabb12cc4bcb67b3ba97f8c452d15863ba8d28236150d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27
        - registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7a7bb90523d29acdfc7c05f2d43f725c121b55bdad0d681d0e4794011def43c1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8db1cadc211b9fe8dca7b6fbebe0e278673053f0e367d4a14096dee67ff3d6c9
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:9625b4723334fe682dc84473b1ed6062dfccb8ba8aa1151bdf2951014af1eccd
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7596e1e5c1d2cd6c178e592870e27ca6c47762b7de0c38b6485925ba9d08d612
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4eaf41681c1af8e5a22c8ddf0fe03cbb39c0e86e8f44db769dea8302d9999378
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:20abf8fbdd159fcd4e7a76fc3007adcb4cf13181666c57e92c041479b1dae469
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:f632d8d344484f5127fb2d7099932ed61659d4e6a365c5e8d5160829a48f2d95
        version: 2.8.2-cw
      entries:
      - name: percona-postgresql-operator-certified.v2.8.2-cw
        version: 2.8.2-cw
      - name: percona-postgresql-operator-certified.v2.8.1-cw
        version: 2.8.1-cw
      - name: percona-postgresql-operator-certified.v2.8.0-cw
        version: 2.8.0-cw
      name: stable-cw
    defaultChannel: stable
    packageName: percona-postgresql-operator-certified
    provider:
      name: Percona
      url: https://www.percona.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: GitLab Inc
      provider-url: https://about.gitlab.com/
    name: gitlab-operator-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:17:00Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/gitlab-operator-kubernetes@sha256:63811c7853c3ef9ad6e04b1af146db41086b3d947e5d6069f77e9c5c57eb1f84
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: stable
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:17:00Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/gitlab-operator-kubernetes@sha256:63811c7853c3ef9ad6e04b1af146db41086b3d947e5d6069f77e9c5c57eb1f84
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: unstable
    defaultChannel: stable
    packageName: gitlab-operator-kubernetes
    provider:
      name: GitLab Inc
      url: https://about.gitlab.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: netobserv-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: network-observability-operator.v1.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "flows.netobserv.io/v1alpha1",
                "kind": "FlowMetric",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "netobserv-operator",
                    "app.kubernetes.io/instance": "flowmetric-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "flowmetric",
                    "app.kubernetes.io/part-of": "netobserv-operator"
                  },
                  "name": "flowmetric-sample"
                },
                "spec": {
                  "charts": [
                    {
                      "dashboardName": "Main",
                      "queries": [
                        {
                          "legend": "",
                          "promQL": "sum(rate($METRIC[2m]))"
                        }
                      ],
                      "title": "External ingress traffic",
                      "type": "SingleStat",
                      "unit": "Bps"
                    },
                    {
                      "dashboardName": "Main",
                      "queries": [
                        {
                          "legend": "{{DstK8S_Namespace}} / {{DstK8S_OwnerName}}",
                          "promQL": "sum(rate($METRIC{DstK8S_Namespace!=\"\"}[2m])) by (DstK8S_Namespace, DstK8S_OwnerName)"
                        }
                      ],
                      "sectionName": "External",
                      "title": "Top external ingress traffic per workload",
                      "type": "StackArea",
                      "unit": "Bps"
                    }
                  ],
                  "direction": "Ingress",
                  "filters": [
                    {
                      "field": "SrcSubnetLabel",
                      "matchType": "Absence"
                    }
                  ],
                  "labels": [
                    "DstK8S_HostName",
                    "DstK8S_Namespace",
                    "DstK8S_OwnerName",
                    "DstK8S_OwnerType"
                  ],
                  "metricName": "cluster_external_ingress_bytes_total",
                  "type": "Counter",
                  "valueField": "Bytes"
                }
              },
              {
                "apiVersion": "flows.netobserv.io/v1beta2",
                "kind": "FlowCollector",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "agent": {
                    "ebpf": {
                      "cacheActiveTimeout": "5s",
                      "cacheMaxFlows": 100000,
                      "excludeInterfaces": [
                        "lo"
                      ],
                      "imagePullPolicy": "IfNotPresent",
                      "interfaces": [],
                      "kafkaBatchSize": 1048576,
                      "logLevel": "info",
                      "metrics": {
                        "server": {
                          "port": 9400
                        }
                      },
                      "privileged": false,
                      "resources": {
                        "limits": {
                          "memory": "800Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      },
                      "sampling": 50
                    },
                    "type": "eBPF"
                  },
                  "consolePlugin": {
                    "autoscaler": {
                      "maxReplicas": 3,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 50,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 1,
                      "status": "Disabled"
                    },
                    "enable": true,
                    "imagePullPolicy": "IfNotPresent",
                    "logLevel": "info",
                    "portNaming": {
                      "enable": true,
                      "portNames": {
                        "3100": "loki"
                      }
                    },
                    "quickFilters": [
                      {
                        "default": true,
                        "filter": {
                          "flow_layer": "\"app\""
                        },
                        "name": "Applications"
                      },
                      {
                        "filter": {
                          "flow_layer": "\"infra\""
                        },
                        "name": "Infrastructure"
                      },
                      {
                        "default": true,
                        "filter": {
                          "dst_kind": "\"Pod\"",
                          "src_kind": "\"Pod\""
                        },
                        "name": "Pods network"
                      },
                      {
                        "filter": {
                          "dst_kind": "\"Service\""
                        },
                        "name": "Services network"
                      }
                    ],
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "memory": "100Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    }
                  },
                  "deploymentModel": "Direct",
                  "exporters": [],
                  "kafka": {
                    "address": "kafka-cluster-kafka-bootstrap.netobserv",
                    "tls": {
                      "caCert": {
                        "certFile": "ca.crt",
                        "name": "kafka-cluster-cluster-ca-cert",
                        "type": "secret"
                      },
                      "enable": false,
                      "userCert": {
                        "certFile": "user.crt",
                        "certKey": "user.key",
                        "name": "flp-kafka",
                        "type": "secret"
                      }
                    },
                    "topic": "network-flows"
                  },
                  "loki": {
                    "enable": true,
                    "lokiStack": {
                      "name": "loki"
                    },
                    "mode": "Monolithic",
                    "monolithic": {
                      "tenantID": "netobserv",
                      "tls": {
                        "caCert": {
                          "certFile": "service-ca.crt",
                          "name": "loki-gateway-ca-bundle",
                          "type": "configmap"
                        },
                        "enable": false
                      },
                      "url": "http://loki.netobserv.svc:3100/"
                    },
                    "readTimeout": "30s",
                    "writeBatchSize": 10485760,
                    "writeBatchWait": "1s",
                    "writeTimeout": "10s"
                  },
                  "namespace": "netobserv",
                  "networkPolicy": {
                    "additionalNamespaces": [],
                    "enable": true
                  },
                  "processor": {
                    "imagePullPolicy": "IfNotPresent",
                    "kafkaConsumerAutoscaler": null,
                    "kafkaConsumerBatchSize": 10485760,
                    "kafkaConsumerQueueCapacity": 1000,
                    "kafkaConsumerReplicas": 3,
                    "logLevel": "info",
                    "logTypes": "Flows",
                    "metrics": {
                      "disableAlerts": [],
                      "server": {
                        "port": 9401
                      }
                    },
                    "resources": {
                      "limits": {
                        "memory": "800Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "prometheus": {
                    "querier": {
                      "enable": true,
                      "mode": "Auto",
                      "timeout": "30s"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring, Networking, Observability, OpenShift Optional
          console.openshift.io/plugins: '["netobserv-plugin"]'
          containerImage: registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:d4f8f312c04c4c719c0812545382a4945e0afafd69ee3361e00f557dacbd8458
          createdAt: 2025-12-04T13:37:09
          description: Network flows collector and monitoring solution
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: '{"apiVersion":"flows.netobserv.io/v1beta2",
            "kind":"FlowCollector","metadata":{"name":"cluster"},"spec": {}}'
          operatorframework.io/suggested-namespace: openshift-netobserv-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/netobserv/network-observability-operator
          support: NetObserv team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: '`FlowCollector` is the schema for the network flows collection
              API, which pilots and configures the underlying deployments.'
            displayName: Flow Collector
            kind: FlowCollector
            name: flowcollectors.flows.netobserv.io
            version: v1beta2
          - description: '`FlowMetric` is the schema for the custom metrics API, which
              allows to generate more metrics out of flow logs. You can find examples
              here: https://github.com/netobserv/network-observability-operator/tree/main/config/samples/flowmetrics'
            displayName: Flow Metric
            kind: FlowMetric
            name: flowmetrics.flows.netobserv.io
            version: v1alpha1
        description: |
          Network Observability is an OpenShift operator that deploys a monitoring pipeline consisting in:
          - an eBPF agent, that generates network flows from captured packets
          - flowlogs-pipeline, a component that collects, enriches and exports these flows
          - a Console plugin for flows visualization with powerful filtering options, a topology representation and more

          Flow data is then available in multiple ways, each optional:

          - As Cluster Monitoring metrics
          - As raw flow logs stored in Grafana Loki
          - As raw flow logs exported to a collector

          ## Dependencies

          ### Loki

          [Loki](https://grafana.com/oss/loki/), from GrafanaLabs, can optionally be used as the backend to store all collected flows. The Network Observability operator does not install Loki directly, however we provide some guidance to help you there.

          - For a production or production-like environment usage, refer to [the operator documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/network_observability/installing-network-observability-operators).

          - For a quick try that is not suitable for production and not scalable (it deploys a single pod, configures a 10GB storage PVC, with 24 hours of retention), you can simply run the following commands:

          ```
          oc create namespace netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/5410e65b8e05aaabd1244a9524cfedd8ac8c56b5/examples/zero-click-loki/1-storage.yaml) -n netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/5410e65b8e05aaabd1244a9524cfedd8ac8c56b5/examples/zero-click-loki/2-loki.yaml) -n netobserv
          ```

          If you prefer to not use Loki, you must set `spec.loki.enable` to `false` in `FlowCollector`.
          In that case, you can still get the Prometheus metrics or export raw flows to a custom collector. But be aware that some of the Console plugin features will be disabled. For instance, you will not be able to view raw flows there, and the metrics / topology will have a more limited level of details, missing information such as pods or IPs.

          ### Kafka

          [Apache Kafka](https://kafka.apache.org/) can optionally be used for a more resilient and scalable architecture. You can use for example [Strimzi](https://strimzi.io/), an operator-based distribution of Kafka for Kubernetes and OpenShift.

          ### Grafana

          [Grafana](https://grafana.com/oss/grafana/) can optionally be installed for custom dashboards and query capabilities.

          ## Configuration

          The `FlowCollector` resource is used to configure the operator and its managed components. A comprehensive documentation is [available here](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/docs/FlowCollector.md), and a full sample file [there](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/config/samples/flows_v1beta2_flowcollector.yaml).

          To edit configuration in cluster, run:

          ```bash
          oc edit flowcollector cluster
          ```

          As it operates cluster-wide on every node, only a single `FlowCollector` is allowed, and it has to be named `cluster`.

          A couple of settings deserve special attention:

          - Sampling (`spec.agent.ebpf.sampling`): a value of `100` means: one flow every 100 is sampled. `1` means all flows are sampled. The lower it is, the more flows you get, and the more accurate are derived metrics, but the higher amount of resources are consumed. By default, sampling is set to 50 (ie. 1:50). Note that more sampled flows also means more storage needed. We recommend to start with default values and refine empirically, to figure out which setting your cluster can manage.

          - Loki (`spec.loki`): configure here how to reach Loki. The default values match the Loki quick install paths mentioned above, but you might have to configure differently if you used another installation method. Make sure to disable it (`spec.loki.enable`) if you don't want to use Loki.

          - Quick filters (`spec.consolePlugin.quickFilters`): configure preset filters to be displayed in the Console plugin. They offer a way to quickly switch from filters to others, such as showing / hiding pods network, or infrastructure network, or application network, etc. They can be tuned to reflect the different workloads running on your cluster. For a list of available filters, [check this page](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/docs/QuickFilters.md).

          - Kafka (`spec.deploymentModel: KAFKA` and `spec.kafka`): when enabled, integrates the flow collection pipeline with Kafka, by splitting ingestion from transformation (kube enrichment, derived metrics, ...). Kafka can provide better scalability, resiliency and high availability ([view more details](https://www.redhat.com/en/topics/integration/what-is-apache-kafka)). Assumes Kafka is already deployed and a topic is created.

          - Exporters (`spec.exporters`) an optional list of exporters to which to send enriched flows. KAFKA and IPFIX exporters are supported. This allows you to define any custom storage or processing that can read from Kafka or use the IPFIX standard.

          - To enable availability zones awareness, set `spec.processor.addZone` to `true`.

          ## Resource considerations

          The following table outlines examples of resource considerations for clusters with certain workload sizes.
          The examples outlined in the table demonstrate scenarios that are tailored to specific workloads. Consider each example only as a baseline from which adjustments can be made to accommodate your workload needs.


          | Resource recommendations                        | Extra small (10 nodes) | Small (25 nodes)       | Medium (65 nodes) **    | Large (120 nodes) **          |
          | ----------------------------------------------- | ---------------------- | ---------------------- | ----------------------- | ----------------------------- |
          | *Worker Node vCPU and memory*                   | 4 vCPUs\| 16GiB mem *  | 16 vCPUs\| 64GiB mem * | 16 vCPUs\| 64GiB mem  * |16 vCPUs\| 64GiB Mem *         |
          | *LokiStack size*                                | `1x.extra-small`       | `1x.small`             | `1x.small`              | `1x.medium`                   |
          | *Network Observability controller memory limit* | 400Mi (default)        | 400Mi (default)        | 400Mi (default)         | 800Mi                         |
          | *eBPF sampling interval*                        | 50 (default)           | 50 (default)           | 50 (default)            | 50 (default)                  |
          | *eBPF memory limit*                             | 800Mi (default)        | 800Mi (default)        | 2000Mi                  | 800Mi (default)               |
          | *FLP memory limit*                              | 800Mi (default)        | 800Mi (default)        | 800Mi (default)         | 800Mi (default)               |
          | *FLP Kafka partitions*                          | N/A                    | 48                     | 48                      | 48                            |
          | *Kafka consumer replicas*                       | N/A                    | 24                     | 24                      | 24                            |
          | *Kafka brokers*                                 | N/A                    | 3 (default)            | 3 (default)             | 3 (default)                   |

          *. Tested with AWS M6i instances.
          **. In addition to this worker and its controller, 3 infra nodes (size `M6i.12xlarge`) and 1 workload node (size `M6i.8xlarge`) were tested.

          ## Further reading

          Please refer to the documentation on GitHub for more information.

          This documentation includes:

          - An [overview](https://github.com/netobserv/network-observability-operator#openshift-console) of the features, with screenshots
          - More information on [configuring metrics](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/docs/Metrics.md).
          - A [performance](https://github.com/netobserv/network-observability-operator#performance-fine-tuning) section, for fine-tuning
          - A [security](https://github.com/netobserv/network-observability-operator#securing-data-and-communications) section
          - An [F.A.Q.](https://github.com/netobserv/network-observability-operator#faq--troubleshooting) section
        displayName: Network Observability
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network observability
        - ebpf
        - ipfix
        - flow tracing
        - flows
        - topology
        - network
        - observability
        links:
        - name: Project page
          url: https://github.com/netobserv/network-observability-operator
        - name: Issue tracker
          url: https://github.com/netobserv/network-observability-operator/issues
        - name: Discussion board
          url: https://github.com/netobserv/network-observability-operator/discussions
        maintainers:
        - email: jpinsonn@redhat.com
          name: Julien Pinsonneau
        - email: jtakvori@redhat.com
          name: Joel Takvorian
        - email: lberetta@redhat.com
          name: Leandro Beretta
        - email: ljira@redhat.com
          name: Luis Jira
        - email: mmahmoud@redhat.com
          name: Mohamed S. Mahmoud
        - email: ocazade@redhat.com
          name: Olivier Cazade
        - email: stlee@redhat.com
          name: Steven Lee
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:d4f8f312c04c4c719c0812545382a4945e0afafd69ee3361e00f557dacbd8458
        - registry.redhat.io/network-observability/network-observability-operator-bundle@sha256:672475bad5c9d33f2c1ed309a6774394774b6b221f6c7d2ad1685228dd69fc52
        - registry.redhat.io/network-observability/network-observability-console-plugin-compat-rhel9@sha256:7f15b6a86320aa1efb6623f1d75eccc0725d689db3a7d2cb13170a48d31e8159
        - registry.redhat.io/network-observability/network-observability-console-plugin-rhel9@sha256:cf85daa46634b0ef40d2935e3f5c0f55ba70762e6423d9ed084b09bb45503c65
        - registry.redhat.io/network-observability/network-observability-ebpf-agent-rhel9@sha256:4ff0cc14bfd0974cdb4cd90b69549c07d6852355bb32b1894f41eb70844132e4
        - registry.redhat.io/network-observability/network-observability-flowlogs-pipeline-rhel9@sha256:7b9aa110a11f695d113914164afde675039078528eff441b6541010272e31da5
        version: 1.10.1
      entries:
      - name: network-observability-operator.v1.10.1
        version: 1.10.1
      - name: network-observability-operator.v1.10.0
        version: 1.10.0
      - name: network-observability-operator.v1.9.3
        version: 1.9.3
      - name: network-observability-operator.v1.9.2
        version: 1.9.2
      - name: network-observability-operator.v1.9.1
        version: 1.9.1
      - name: network-observability-operator.v1.9.0
        version: 1.9.0
      - name: network-observability-operator.v1.8.1
        version: 1.8.1
      - name: network-observability-operator.v1.8.0
        version: 1.8.0
      - name: network-observability-operator.v1.7.0
        version: 1.7.0
      - name: network-observability-operator.v1.6.2
        version: 1.6.2
      - name: network-observability-operator.v1.6.1
        version: 1.6.1
      - name: network-observability-operator.v1.6.0
        version: 1.6.0
      - name: network-observability-operator.v1.5.0
        version: 1.5.0
      - name: network-observability-operator.v1.4.2
        version: 1.4.2
      - name: network-observability-operator.v1.4.1
        version: 1.4.1
      - name: network-observability-operator.v1.4.0
        version: 1.4.0
      - name: network-observability-operator.v1.3.0
        version: 1.3.0
      - name: network-observability-operator.v1.2.0
        version: 1.2.0
      - name: network-observability-operator.v1.1.0-202302110050
        version: 1.1.0
      - name: network-observability-operator.v1.0.0-202301070345
        version: 1.0.0
      name: stable
    - currentCSV: network-observability-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "flows.netobserv.io/v1alpha1",
                "kind": "FlowCollector",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "agent": {
                    "ebpf": {
                      "cacheActiveTimeout": "5s",
                      "cacheMaxFlows": 100000,
                      "excludeInterfaces": [
                        "lo"
                      ],
                      "imagePullPolicy": "IfNotPresent",
                      "interfaces": [],
                      "kafkaBatchSize": 10485760,
                      "logLevel": "info",
                      "resources": {
                        "limits": {
                          "memory": "800Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      },
                      "sampling": 50
                    },
                    "type": "EBPF"
                  },
                  "consolePlugin": {
                    "autoscaler": {
                      "maxReplicas": 3,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 50,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 1,
                      "status": "DISABLED"
                    },
                    "imagePullPolicy": "IfNotPresent",
                    "logLevel": "info",
                    "port": 9001,
                    "portNaming": {
                      "enable": true,
                      "portNames": {
                        "3100": "loki"
                      }
                    },
                    "quickFilters": [
                      {
                        "default": true,
                        "filter": {
                          "dst_namespace!": "openshift-,netobserv",
                          "src_namespace!": "openshift-,netobserv"
                        },
                        "name": "Applications"
                      },
                      {
                        "filter": {
                          "dst_namespace": "openshift-,netobserv",
                          "src_namespace": "openshift-,netobserv"
                        },
                        "name": "Infrastructure"
                      },
                      {
                        "default": true,
                        "filter": {
                          "dst_kind": "Pod",
                          "src_kind": "Pod"
                        },
                        "name": "Pods network"
                      },
                      {
                        "filter": {
                          "dst_kind": "Service"
                        },
                        "name": "Services network"
                      }
                    ],
                    "register": true
                  },
                  "deploymentModel": "DIRECT",
                  "exporters": [],
                  "kafka": {
                    "address": "kafka-cluster-kafka-bootstrap.netobserv",
                    "tls": {
                      "caCert": {
                        "certFile": "ca.crt",
                        "name": "kafka-cluster-cluster-ca-cert",
                        "type": "secret"
                      },
                      "enable": false,
                      "userCert": {
                        "certFile": "user.crt",
                        "certKey": "user.key",
                        "name": "flp-kafka",
                        "type": "secret"
                      }
                    },
                    "topic": "network-flows"
                  },
                  "loki": {
                    "batchSize": 10485760,
                    "batchWait": "1s",
                    "maxBackoff": "5s",
                    "maxRetries": 2,
                    "minBackoff": "1s",
                    "tls": {
                      "caCert": {
                        "certFile": "service-ca.crt",
                        "name": "loki-gateway-ca-bundle",
                        "type": "configmap"
                      },
                      "enable": false,
                      "insecureSkipVerify": false
                    },
                    "url": "http://loki.netobserv.svc:3100/"
                  },
                  "namespace": "netobserv",
                  "processor": {
                    "dropUnusedFields": true,
                    "imagePullPolicy": "IfNotPresent",
                    "kafkaConsumerAutoscaler": null,
                    "kafkaConsumerBatchSize": 10485760,
                    "kafkaConsumerQueueCapacity": 1000,
                    "kafkaConsumerReplicas": 3,
                    "logLevel": "info",
                    "metrics": {
                      "ignoreTags": [
                        "egress",
                        "packets"
                      ],
                      "server": {
                        "port": 9102
                      }
                    },
                    "port": 2055,
                    "profilePort": 6060,
                    "resources": {
                      "limits": {
                        "memory": "800Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "100Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "flows.netobserv.io/v1beta1",
                "kind": "FlowCollector",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "agent": {
                    "ebpf": {
                      "cacheActiveTimeout": "5s",
                      "cacheMaxFlows": 100000,
                      "excludeInterfaces": [
                        "lo"
                      ],
                      "imagePullPolicy": "IfNotPresent",
                      "interfaces": [],
                      "kafkaBatchSize": 10485760,
                      "logLevel": "info",
                      "resources": {
                        "limits": {
                          "memory": "800Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      },
                      "sampling": 50
                    },
                    "type": "EBPF"
                  },
                  "consolePlugin": {
                    "autoscaler": {
                      "maxReplicas": 3,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 50,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 1,
                      "status": "DISABLED"
                    },
                    "imagePullPolicy": "IfNotPresent",
                    "logLevel": "info",
                    "port": 9001,
                    "portNaming": {
                      "enable": true,
                      "portNames": {
                        "3100": "loki"
                      }
                    },
                    "quickFilters": [
                      {
                        "default": true,
                        "filter": {
                          "dst_namespace!": "openshift-,netobserv",
                          "src_namespace!": "openshift-,netobserv"
                        },
                        "name": "Applications"
                      },
                      {
                        "filter": {
                          "dst_namespace": "openshift-,netobserv",
                          "src_namespace": "openshift-,netobserv"
                        },
                        "name": "Infrastructure"
                      },
                      {
                        "default": true,
                        "filter": {
                          "dst_kind": "Pod",
                          "src_kind": "Pod"
                        },
                        "name": "Pods network"
                      },
                      {
                        "filter": {
                          "dst_kind": "Service"
                        },
                        "name": "Services network"
                      }
                    ],
                    "register": true
                  },
                  "deploymentModel": "DIRECT",
                  "exporters": [],
                  "kafka": {
                    "address": "kafka-cluster-kafka-bootstrap.netobserv",
                    "tls": {
                      "caCert": {
                        "certFile": "ca.crt",
                        "name": "kafka-cluster-cluster-ca-cert",
                        "type": "secret"
                      },
                      "enable": false,
                      "userCert": {
                        "certFile": "user.crt",
                        "certKey": "user.key",
                        "name": "flp-kafka",
                        "type": "secret"
                      }
                    },
                    "topic": "network-flows"
                  },
                  "loki": {
                    "batchSize": 10485760,
                    "batchWait": "1s",
                    "maxBackoff": "5s",
                    "maxRetries": 2,
                    "minBackoff": "1s",
                    "statusTls": {
                      "caCert": {
                        "certFile": "service-ca.crt",
                        "name": "loki-ca-bundle",
                        "type": "configmap"
                      },
                      "enable": false,
                      "insecureSkipVerify": false,
                      "userCert": {
                        "certFile": "tls.crt",
                        "certKey": "tls.key",
                        "name": "loki-query-frontend-http",
                        "type": "secret"
                      }
                    },
                    "tls": {
                      "caCert": {
                        "certFile": "service-ca.crt",
                        "name": "loki-gateway-ca-bundle",
                        "type": "configmap"
                      },
                      "enable": false,
                      "insecureSkipVerify": false
                    },
                    "url": "http://loki.netobserv.svc:3100/"
                  },
                  "namespace": "netobserv",
                  "processor": {
                    "conversationEndTimeout": "10s",
                    "conversationHeartbeatInterval": "30s",
                    "conversationTerminatingTimeout": "5s",
                    "dropUnusedFields": true,
                    "imagePullPolicy": "IfNotPresent",
                    "kafkaConsumerAutoscaler": null,
                    "kafkaConsumerBatchSize": 10485760,
                    "kafkaConsumerQueueCapacity": 1000,
                    "kafkaConsumerReplicas": 3,
                    "logLevel": "info",
                    "logTypes": "FLOWS",
                    "metrics": {
                      "disableAlerts": [],
                      "ignoreTags": [
                        "egress",
                        "packets"
                      ],
                      "server": {
                        "port": 9102
                      }
                    },
                    "port": 2055,
                    "profilePort": 6060,
                    "resources": {
                      "limits": {
                        "memory": "800Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "100Mi"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          console.openshift.io/plugins: '["netobserv-plugin"]'
          containerImage: registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:fd943746840cba26996dabb47b1beb3445571fa43cb1b859fb073e4aa114b376
          createdAt: 2023-06-22T09:31:50
          description: Network flows collector and monitoring solution
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-netobserv-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.3
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/netobserv/network-observability-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FlowCollector is the Schema for the flowcollectors API, which
              pilots and configures netflow collection.
            displayName: Flow Collector
            kind: FlowCollector
            name: flowcollectors.flows.netobserv.io
            version: v1alpha1
          - description: FlowCollector is the schema for the network flows collection
              API, which pilots and configures the underlying deployments.
            displayName: Flow Collector
            kind: FlowCollector
            name: flowcollectors.flows.netobserv.io
            version: v1beta1
        description: |
          Network Observability is an OpenShift operator that deploys a monitoring pipeline to collect and enrich network flows that are produced by the Network Observability eBPF agent.

          The operator provides dashboards, metrics, and keeps flows accessible in a queryable log store, Grafana Loki. When a `FlowCollector` instance is created, new views are available in the Console.

          ## Dependencies

          ### Loki

          [Loki](https://grafana.com/oss/loki/), from GrafanaLabs, is the backend that is used to store all collected flows. The NetObserv Operator does not install Loki directly, however we provide some guidance to help you there.

          For normal usage, we recommend two options:

          - Installing the [Loki Operator](https://docs.openshift.com/container-platform/4.11//logging/cluster-logging-loki.html). We have written [a guide](https://github.com/netobserv/documents/blob/main/loki_operator.md) to help you through those steps. Please note that it requires configuring an object storage. Note also that the Loki Operator can also be used for [OpenShift cluster logging](https://docs.openshift.com/container-platform/4.11/logging/cluster-logging.html). If you do so, you should not share the same `LokiStack` for Logging and NetObserv.

          - Installing using [Grafana's official documentation](https://grafana.com/docs/loki/latest/). Here also we wrote a ["distributed Loki" step by step guide](https://github.com/netobserv/documents/blob/main/loki_distributed.md).

          For a quick try that is not suitable for production and not scalable (it deploys a single pod, configures a 1GB storage PVC, with 24 hours of retention), you can simply run the following commands:

          ```
          oc create namespace netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/252bb624cf0425a1b66f59ce68fb939f246ef77b/examples/zero-click-loki/1-storage.yaml) -n netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/252bb624cf0425a1b66f59ce68fb939f246ef77b/examples/zero-click-loki/2-loki.yaml) -n netobserv
          ```

          ### Kafka

          [Apache Kafka](https://kafka.apache.org/) can optionally be used for a more resilient and scalable architecture. You can use for instance [Strimzi](https://strimzi.io/), an operator-based distribution of Kafka for Kubernetes and OpenShift.

          ### Grafana

          [Grafana](https://grafana.com/oss/grafana/) can optionally be installed for custom dashboards and query capabilities.

          ## Configuration

          The `FlowCollector` resource is used to configure the operator and its managed components. A comprehensive documentation is [available here](https://github.com/netobserv/network-observability-operator/blob/1.0.2/docs/FlowCollector.md), and a full sample file [there](https://github.com/netobserv/network-observability-operator/blob/1.0.2/config/samples/flows_v1beta1_flowcollector.yaml).

          To edit configuration in cluster, run:

          ```bash
          oc edit flowcollector cluster
          ```

          As it operates cluster-wide, only a single `FlowCollector` is allowed, and it has to be named `cluster`.

          A couple of settings deserve special attention:

          - Sampling (`spec.agent.ebpf.sampling`): a value of `100` means: one flow every 100 is sampled. `1` means all flows are sampled. The lower it is, the more flows you get, and the more accurate are derived metrics, but the higher amount of resources are consumed. By default, sampling is set to 50 (ie. 1:50). Note that more sampled flows also means more storage needed. We recommend to start with default values and refine empirically, to figure out which setting your cluster can manage.

          - Loki (`spec.loki`): configure here how to reach Loki. The default values match the Loki quick install paths mentioned above, but you may have to configure differently if you used another installation method.

          - Quick filters (`spec.consolePlugin.quickFilters`): configure preset filters to be displayed in the Console plugin. They offer a way to quickly switch from filters to others, such as showing / hiding pods network, or infrastructure network, or application network, etc. They can be tuned to reflect the different workloads running on your cluster. For a list of available filters, [check this page](https://github.com/netobserv/network-observability-operator/blob/1.0.2/docs/QuickFilters.md).

          - Kafka (`spec.deploymentModel: KAFKA` and `spec.kafka`): when enabled, integrates the flow collection pipeline with Kafka, by splitting ingestion from transformation (kube enrichment, derived metrics, ...). Kafka can provide better scalability, resiliency and high availability ([view more details](https://www.redhat.com/en/topics/integration/what-is-apache-kafka)). Assumes Kafka is already deployed and a topic is created.

          - Exporters (`spec.exporters`, _experimental_) an optional list of exporters to which to send enriched flows. Currently only KAFKA is supported. This allows you to define any custom storage or processing that can read from Kafka. This feature is flagged as _experimental_ as it has not been thoroughly or stress tested yet, so use at your own risk.

          ## Further reading

          Please refer to the documentation on GitHub for more information.

          This documentation includes:

          - An [overview](https://github.com/netobserv/network-observability-operator#openshift-console) of the features, with screenshots
          - A [performance](https://github.com/netobserv/network-observability-operator#performance-fine-tuning) section, for fine-tuning
          - A [security](https://github.com/netobserv/network-observability-operator#securing-data-and-communications) section
          - An [F.A.Q.](https://github.com/netobserv/network-observability-operator#faq--troubleshooting) section
        displayName: Network Observability
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network observability
        - ebpf
        - flow tracing
        - flows
        - topology
        - network
        - observability
        links:
        - name: Project page
          url: https://github.com/netobserv/network-observability-operator
        - name: Issue tracker
          url: https://github.com/netobserv/network-observability-operator/issues
        - name: Discussion board
          url: https://github.com/netobserv/network-observability-operator/discussions
        maintainers:
        - email: jpinsonn@redhat.com
          name: Julien Pinsonneau
        - email: jtakvori@redhat.com
          name: Joel Takvorian
        - email: kmeth@redhat.com
          name: Kalman Meth
        - email: mmahmoud@redhat.com
          name: Mohamed S. Mahmoud
        - email: ocazade@redhat.com
          name: Olivier Cazade
        - email: rschaffe@redhat.com
          name: Ronen Schaffer
        - email: stlee@redhat.com
          name: Steven Lee
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/network-observability/network-observability-flowlogs-pipeline-rhel9@sha256:7c7c42fff63e0599bb943a9e9617b43181360d5a5254b27f368010af275cf0c3
        - registry.redhat.io/network-observability/network-observability-operator-bundle@sha256:b03f4e88ab1fed4744356a584d673fb2fdb15de7e1de7786bdd222b853690670
        - registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:fd943746840cba26996dabb47b1beb3445571fa43cb1b859fb073e4aa114b376
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:37b3c9b2eed351d9d1a39c99045bbc7993ccb819f67f7b390deaa34930f45946
        - registry.redhat.io/network-observability/network-observability-console-plugin-rhel9@sha256:880c0812a2cd4b7194f417e31fbdcee951ce76776fa06e33c5c9cd479a854daa
        - registry.redhat.io/network-observability/network-observability-ebpf-agent-rhel9@sha256:e31acc12d8690c339e13b5dd22d33e707701362bdd31086c9b4c0f48cad62cc3
        version: 1.3.0
      entries:
      - name: network-observability-operator.v1.3.0
        version: 1.3.0
      - name: network-observability-operator.v1.2.0
        version: 1.2.0
      - name: network-observability-operator.v1.1.0-202302110050
        version: 1.1.0
      - name: network-observability-operator.v1.0.0-202301070345
        version: 1.0.0
      name: v1.0.x
    defaultChannel: stable
    packageName: netobserv-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: fuse-console
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fuse-console.v7.10.3-0.1655306919.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "replicas": 1,
                  "version": "1.10",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "100Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:37dc38375f5d553ac1d9f20f66ce005ed9495354b81d7915ae3bd7dd6af132f3
          createdAt: "2020-09-14T10:59:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.10.3'
          olm.substitutesFor: fuse-console.v7.10.3-0.1652362834.p
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.10/html/managing_fuse
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:bbfddd7cb4a6cb7a131a0cef174054890fd39956d63e737c92fe8233ad8f98e4
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:37dc38375f5d553ac1d9f20f66ce005ed9495354b81d7915ae3bd7dd6af132f3
        version: 7.10.3+0.1655306919.p
      entries:
      - name: fuse-console.v7.10.3
        version: 7.10.3
      - name: fuse-console.v7.10.3-0.1652362834.p
        version: 7.10.3+0.1652362834.p
      - name: fuse-console.v7.10.3-0.1655306919.p
        version: 7.10.3+0.1655306919.p
      name: 7.10.x
    - currentCSV: fuse-console.v7.11.1-0.1681224695.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.11",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:518b5ace9178e2aafd7b6f247fd41d9392abd1a7bccb4cb53783531820611193
          createdAt: "2022-09-07T14:03:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.11.1'
          olm.substitutesFor: fuse-console.v7.11.1-0.1675972857.p
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.11/html/managing_fuse_on_openshift
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:5a35593357fbf280561a1d4a64ecc0d5c2044409acff3ce6cb490a4a61462a4e
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:518b5ace9178e2aafd7b6f247fd41d9392abd1a7bccb4cb53783531820611193
        version: 7.11.1+0.1681224695.p
      entries:
      - name: fuse-console.v7.11.1
        version: 7.11.1
      - name: fuse-console.v7.11.1-0.1669922044.p
        version: 7.11.1+0.1669922044.p
      - name: fuse-console.v7.11.1-0.1675972857.p
        version: 7.11.1+0.1675972857.p
      - name: fuse-console.v7.11.1-0.1681224695.p
        version: 7.11.1+0.1681224695.p
      name: 7.11.x
    - currentCSV: fuse-console.v7.12.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.12",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:4e6889bf76d323956e0b594db7381e8162fea6b108f53f9e6dd0b38cf3596c8d
          createdAt: "2022-09-07T14:03:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.12.1'
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.12/html/managing_fuse_on_openshift
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:791ac512370af5cde1e089de3def760e7dbce69badc03137051520ce316d63e2
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:4e6889bf76d323956e0b594db7381e8162fea6b108f53f9e6dd0b38cf3596c8d
        version: 7.12.1
      entries:
      - name: fuse-console.v7.12.1
        version: 7.12.1
      name: 7.12.x
    - currentCSV: fuse-console.v7.13.0-0.1766137500.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.13",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:445cfa19464d1417f051989d9ba63dd7970b70806c92b5f936d77cdef80b57d0
          createdAt: "2022-09-07T14:03:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=7.7.0 <7.13.0'
          olm.substitutesFor: fuse-console.v7.13.0
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.13/html/managing_fuse_on_openshift
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:604011e60b1ea342db34ffe9c4ad5c13f6417667cde611f21c2cd1094552aad3
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:445cfa19464d1417f051989d9ba63dd7970b70806c92b5f936d77cdef80b57d0
        version: 7.13.0+0.1766137500.p
      entries:
      - name: fuse-console.v7.13.0-0.1748960166.p
        version: 7.13.0+0.1748960166.p
      - name: fuse-console.v7.13.0-0.1751291353.p
        version: 7.13.0+0.1751291353.p
      - name: fuse-console.v7.13.0-0.1719822976.p
        version: 7.13.0+0.1719822976.p
      - name: fuse-console.v7.13.0-0.1721224332.p
        version: 7.13.0+0.1721224332.p
      - name: fuse-console.v7.13.0-0.1723709432.p
        version: 7.13.0+0.1723709432.p
      - name: fuse-console.v7.13.0-0.1724659726.p
        version: 7.13.0+0.1724659726.p
      - name: fuse-console.v7.13.0-0.1725026290.p
        version: 7.13.0+0.1725026290.p
      - name: fuse-console.v7.13.0-0.1731460809.p
        version: 7.13.0+0.1731460809.p
      - name: fuse-console.v7.13.0-0.1738056254.p
        version: 7.13.0+0.1738056254.p
      - name: fuse-console.v7.13.0-0.1739885034.p
        version: 7.13.0+0.1739885034.p
      - name: fuse-console.v7.13.0-0.1741875974.p
        version: 7.13.0+0.1741875974.p
      - name: fuse-console.v7.13.0-0.1741884704.p
        version: 7.13.0+0.1741884704.p
      - name: fuse-console.v7.13.0-0.1744281421.p
        version: 7.13.0+0.1744281421.p
      - name: fuse-console.v7.13.0-0.1744737026.p
        version: 7.13.0+0.1744737026.p
      - name: fuse-console.v7.13.0
        version: 7.13.0
      - name: fuse-console.v7.13.0-0.1766137500.p
        version: 7.13.0+0.1766137500.p
      - name: fuse-console.v7.13.0-0.1753778626.p
        version: 7.13.0+0.1753778626.p
      - name: fuse-console.v7.13.0-0.1753702606.p
        version: 7.13.0+0.1753702606.p
      - name: fuse-console.v7.13.0-0.1749640277.p
        version: 7.13.0+0.1749640277.p
      - name: fuse-console.v7.13.0-0.1753785080.p
        version: 7.13.0+0.1753785080.p
      - name: fuse-console.v7.13.0-0.1753860418.p
        version: 7.13.0+0.1753860418.p
      - name: fuse-console.v7.13.0-0.1754303647.p
        version: 7.13.0+0.1754303647.p
      - name: fuse-console.v7.13.0-0.1754559584.p
        version: 7.13.0+0.1754559584.p
      - name: fuse-console.v7.13.0-0.1754567932.p
        version: 7.13.0+0.1754567932.p
      - name: fuse-console.v7.13.0-0.1757604404.p
        version: 7.13.0+0.1757604404.p
      - name: fuse-console.v7.13.0-0.1760430814.p
        version: 7.13.0+0.1760430814.p
      - name: fuse-console.v7.13.0-0.1761246177.p
        version: 7.13.0+0.1761246177.p
      - name: fuse-console.v7.13.0-0.1763465880.p
        version: 7.13.0+0.1763465880.p
      - name: fuse-console.v7.13.0-0.1764232107.p
        version: 7.13.0+0.1764232107.p
      - name: fuse-console.v7.13.0-0.1764853444.p
        version: 7.13.0+0.1764853444.p
      - name: fuse-console.v7.12.1
        version: 7.12.1
      name: 7.13.x
    - currentCSV: fuse-console.v7.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "replicas": 1,
                  "version": "1.9",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "100Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:846d57f3fd9f307a98b0169b6733c26299209d99ed189f219c48f36ba771b198
          createdAt: "2020-09-14T10:59:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.9.0'
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.9/html/managing_fuse
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:ddfdf850c9238a6988889e1840efe3175f03dad2489a5651e21cac62ac44e23e
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:846d57f3fd9f307a98b0169b6733c26299209d99ed189f219c48f36ba771b198
        version: 7.9.0
      entries:
      - name: fuse-console.v7.9.0
        version: 7.9.0
      name: 7.9.x
    defaultChannel: 7.13.x
    packageName: fuse-console
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: sandboxed-containers-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sandboxed-containers-operator.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:051bd7f1dad8cc3251430fee32184be8d64077aba78580184cef0255d267bdcf
          createdAt: 2021-06-07-13:38:06
          olm.skipRange: <1.0.2
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/openshift/sandboxed-containers-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Details
          OpenShift sandboxed containers based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift’s Defense-in-Depth strategy. For more information
          [see](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5).

          # Features & benefits
          - **Isolated Developer Environments & Priviliges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as CAP_ADMIN or CAP_BPF. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select preview-1.0 from the list of available Update Channel options.
            This ensures that you install the version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              openshift-sandboxed-containers-operator namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              openshift-sandboxed-containers-operator causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a KataConfig CRD instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/4.8/sandboxed_containers/understanding-sandboxed-containers.html).
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kernel-isolated containers
        links:
        - name: OpenShift sandboxed containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        provider:
          name: Red Hat
          url: https://www.github.com/openshift/sandboxed-containers-operator
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:051bd7f1dad8cc3251430fee32184be8d64077aba78580184cef0255d267bdcf
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:c6c589d5e47ba9564c66c84fc2bc7e5e046dae1d56a3dc99d7343f01e42e4d31
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-operator-bundle@sha256:2808a0397495982b4ea0001ede078803a043d5c9b0285662b08044fe4c11f243
        version: 1.0.2
      deprecation:
        message: |
          The preview-1.0 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.0.2
        version: 1.0.2
      name: preview-1.0
    - currentCSV: sandboxed-containers-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "false"
          containerImage: registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:b1e824e126c579db0f56d04c3d1796d82ed033110c6bc923de66d95b67099611
          createdAt: "2021-10-08T13:20:20.250789Z"
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/openshift/sandboxed-containers-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          OpenShift sandboxed containers based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift’s Defense-in-Depth strategy. For more information
          [see](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5).

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `preview-1.1` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CRD instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/4.8/sandboxed_containers/understanding-sandboxed-containers.html).
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kernel-isolated containers
        links:
        - name: OpenShift sandboxed containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        provider:
          name: Red Hat
          url: https://www.github.com/openshift/sandboxed-containers-operator
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-operator-bundle@sha256:a91cee14f47824ce49759628d06bf4e48276e67dae00b50123d3233d78531720
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:b1e824e126c579db0f56d04c3d1796d82ed033110c6bc923de66d95b67099611
        version: 1.1.0
      deprecation:
        message: |
          The preview-1.1 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.1.0
        version: 1.1.0
      - name: sandboxed-containers-operator.v1.0.2
        version: 1.0.2
      name: preview-1.1
    - currentCSV: sandboxed-containers-operator.v1.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-04T15:20:34Z"
          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.skipRange: '>=1.1.0 <1.11.1'
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/internal-objects: '["peerpods.confidentialcontainers.org","peerpodconfigs.confidentialcontainers.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/sandboxed-containers-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
          - kind: PeerPod
            name: peerpods.confidentialcontainers.org
            version: v1alpha1
        description: |-
          OpenShift sandboxed containers, based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift's Defense-in-Depth strategy. Click [this link](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5) for
          more information.

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `candidate` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CustomResourceDefinition(CRD) instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the [OpenShift sandboxed containers documentation](https://docs.redhat.com/en/documentation/openshift_sandboxed_containers/).
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sandboxed-containers
        - kata
        links:
        - name: Sandboxed Containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        maintainers:
        - email: support@redhat.com'
          name: '''Red Hat'
        maturity: beta
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-rhel9@sha256:408eaaac58d01892aa2087153eda6f451788c02b8b719dca8e710a8916b2e081
        - registry.redhat.io/openshift-sandboxed-containers/osc-must-gather-rhel9@sha256:e4bb201c368afbc80eced2aea0869d152e026253a14349a01e2088f5dac5e214
        - registry.redhat.io/openshift-sandboxed-containers/osc-pccs@sha256:de64fc7b13aaa7e466e825d62207f77e7c63a4f9da98663c3ab06abc45f2334d
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-webhook-rhel9@sha256:4a533f77a4f1415b8eed0d3f5a4ba9d62edd329bf304f26f23b0c1d886dddb71
        - registry.redhat.io/openshift-sandboxed-containers/osc-podvm-builder-rhel9@sha256:9efde29746c28defaabce25c2f0c6da7567ca7dc7fe97845886d7d9e750ea094
        - registry.redhat.io/openshift-sandboxed-containers/osc-tdx-qgs@sha256:86b23461c4eea073f4535a777374a54e934c37ac8c96c6180030f92ebf970524
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:7b2035904ec464fe32c55ace525f573a491b046b5ef7cd5721d7a67cfc8dae25
        - registry.redhat.io/openshift-sandboxed-containers/osc-podvm-payload-rhel9@sha256:7317c2d8c0ac8e542e39d695851c4add301593d2b52af80c77fd4f996efbe2b8
        - registry.redhat.io/openshift-sandboxed-containers/osc-dm-verity-image@sha256:0eb5efd518128ac6df93fec2e5d24c4c5662d5407e016d1f66579cc9ce4529ea
        - registry.redhat.io/openshift-sandboxed-containers/osc-monitor-rhel9@sha256:3c1434943628c01f102615115e89e384b4d46ccf2fd6c0abd5205917afc4d05a
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel9-operator@sha256:b59db913c24f866a700d7662f3fd2de238b4a71550f2f04673ef3ba62ce35aa6
        - registry.redhat.io/openshift-sandboxed-containers/osc-storage-helper@sha256:c9b31c8acd23c6925d6bf193696817f14a52b0f0fcbd8459023b5d69da93482e
        version: 1.11.1
      entries:
      - name: sandboxed-containers-operator.v1.11.1
        version: 1.11.1
      - name: sandboxed-containers-operator.v1.11.0
        version: 1.11.0
      - name: sandboxed-containers-operator.v1.10.3
        version: 1.10.3
      - name: sandboxed-containers-operator.v1.10.2
        version: 1.10.2
      - name: sandboxed-containers-operator.v1.10.1
        version: 1.10.1
      - name: sandboxed-containers-operator.v1.10.0
        version: 1.10.0
      - name: sandboxed-containers-operator.v1.9.0
        version: 1.9.0
      - name: sandboxed-containers-operator.v1.8.1
        version: 1.8.1
      - name: sandboxed-containers-operator.v1.7.0
        version: 1.7.0
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.6.0
        version: 1.6.0
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.3
        version: 1.5.3
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.2
        version: 1.5.2
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.1
        version: 1.5.1
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.0
        version: 1.5.0
      name: stable
    - currentCSV: sandboxed-containers-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "false"
          containerImage: registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:8f30a9129d817c3f4e404d2c43fb47e196d8c8da3badba4c48f65d440a4d7584
          createdAt: "2021-11-22T14:44:50.817336Z"
          olm.skipRange: '>=1.1.0 <1.2.2'
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/sandboxed-containers-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          OpenShift sandboxed containers, based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift's Defense-in-Depth strategy. Click [this link](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5) for
          more information.

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `stable-1.2` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CustomResourceDefinition(CRD) instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/4.9/sandboxed_containers/understanding-sandboxed-containers.html)
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sandboxed-containers
        - kata
        links:
        - name: Sandboxed Containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        maintainers:
        - email: support@redhat.com'
          name: '''Red Hat'
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:ff2bb666c2696fed365df55de78141a02e372044647b8031e6d06e7583478af4
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:8f30a9129d817c3f4e404d2c43fb47e196d8c8da3badba4c48f65d440a4d7584
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:a660f0b54b9139bed9a3aeef3408001c0d50ba60648364a98a09059b466fbcc1
        version: 1.2.2
      deprecation:
        message: |
          The stable-1.2 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.2.2
        version: 1.2.2
      name: stable-1.2
    - currentCSV: sandboxed-containers-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          olm.skipRange: '>=1.1.0 <1.3.3'
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/sandboxed-containers-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          OpenShift sandboxed containers, based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift's Defense-in-Depth strategy. Click [this link](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5) for
          more information.

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `stable-1.3` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CustomResourceDefinition(CRD) instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/latest/sandboxed_containers/understanding-sandboxed-containers.html)
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sandboxed-containers
        - kata
        links:
        - name: Sandboxed Containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        maintainers:
        - email: support@redhat.com'
          name: '''Red Hat'
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:8da62ba1c19c905bc1b87a6233ead475b047a766dc2acb7569149ac5cfe7f0f1
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:5d2b03721043e5221dfb0cf164cf59eba396ba3aae40a56c53aa3496c625eea0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:cb836456974e510eb4bccbffadbc6d99d5f57c36caec54c767a158ffd8a025d5
        version: 1.3.3
      deprecation:
        message: |
          The stable-1.3 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.3.3
        version: 1.3.3
      name: stable-1.3
    defaultChannel: stable
    packageName: sandboxed-containers-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-enterprise
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-enterprise.v1.33.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "my-replica-set"
                },
                "spec": {
                  "credentials": "my-credentials",
                  "members": 3,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "sample-sharded-cluster"
                },
                "spec": {
                  "configServerCount": 3,
                  "credentials": "my-credentials",
                  "mongodsPerShardCount": 3,
                  "mongosCount": 2,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "shardCount": 1,
                  "type": "ShardedCluster",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBMultiCluster",
                "metadata": {
                  "name": "multi-replica-set"
                },
                "spec": {
                  "clusterSpecList": [
                    {
                      "clusterName": "e2e.cluster1.mongokubernetes.com",
                      "members": 2
                    },
                    {
                      "clusterName": "e2e.cluster2.mongokubernetes.com",
                      "members": 1
                    },
                    {
                      "clusterName": "e2e.cluster3.mongokubernetes.com",
                      "members": 2
                    }
                  ],
                  "credentials": "my-credentials",
                  "duplicateServiceObjects": false,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBOpsManager",
                "metadata": {
                  "name": "ops-manager"
                },
                "spec": {
                  "adminCredentials": "ops-manager-admin",
                  "applicationDatabase": {
                    "members": 3,
                    "podSpec": {
                      "cpu": 1
                    }
                  },
                  "configuration": {
                    "mms.fromEmailAddr": "admin@thecompany.com"
                  },
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "version": "6.0.3"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBUser",
                "metadata": {
                  "name": "my-replica-set-x509-user"
                },
                "spec": {
                  "db": "$external",
                  "mongodbResourceRef": {
                    "name": "my-replica-set"
                  },
                  "roles": [
                    {
                      "db": "admin",
                      "name": "dbOwner"
                    }
                  ],
                  "username": "CN=my-replica-set-x509-user,OU=cloud,O=MongoDB,L=New York,ST=New York,C=US"
                },
                "status": {
                  "phase": "Updated"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/mongodb/mongodb-enterprise-operator-ubi@sha256:6d394a5247cc346c4421bd9b37948c0378970dd3f4fc5d6eaac681f4c9655957
          createdAt: "2025-04-15T11:32:47Z"
          description: The MongoDB Enterprise Kubernetes Operator enables easy deploys
            of MongoDB into Kubernetes clusters, using our management, monitoring
            and backup platforms, Ops Manager and Cloud Manager.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.26.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/mongodb/mongodb-enterprise-kubernetes
          support: support@mongodb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MongoDB Deployment
            displayName: MongoDB Deployment
            kind: MongoDB
            name: mongodb.mongodb.com
            version: v1
          - description: MongoDB Multi Deployment
            displayName: MongoDB Multi Deployment
            kind: MongoDBMultiCluster
            name: mongodbmulticluster.mongodb.com
            version: v1
          - description: MongoDB x509 User
            displayName: MongoDB User
            kind: MongoDBUser
            name: mongodbusers.mongodb.com
            version: v1
          - description: MongoDB Ops Manager
            displayName: MongoDB Ops Manager
            kind: MongoDBOpsManager
            name: opsmanagers.mongodb.com
            version: v1
        description: |
          The MongoDB Enterprise Kubernetes Operator enables easy deploys of MongoDB
          into Kubernetes clusters, using our management, monitoring and backup
          platforms, Ops Manager and Cloud Manager.

          ## Before You Start

          To start using the operator you''ll need an account in MongoDB Cloud Manager or
          a MongoDB Ops Manager deployment.

          * [Create a Secret with your OpsManager API key](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-operator-credentials/#procedure)

          * [Create a ConfigMap with your OpsManager project ID and URL](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-project-using-configmap/)

          By installing this integration, you will be able to deploy MongoDB instances
          with a single simple command.

          ## Required Parameters

          * `opsManager` or `cloudManager` - Enter the name of the ConfigMap containing project information
          * `credentials` - Enter the name of the Secret containing your OpsManager credentials
          * `type` - Enter MongoDB Deployment Types ("Standalone", "ReplicaSet", "ShardedCluster"

          ## Supported MongoDB Deployment Types ##

          * Standalone: An instance of mongod that is running as a single server and
          not as part of a replica set, this is, it does not do any kind of
          replication.

          * Replica Set: A replica set in MongoDB is a group of mongod processes that
          maintain the same data set. Replica sets provide redundancy and high
          availability, and are the basis for all production deployments. This section
          introduces replication in MongoDB as well as the components and architecture
          of replica sets. The section also provides tutorials for common tasks
          related to replica sets.

          * Sharded Cluster: The set of nodes comprising a sharded MongoDB deployment.
          A sharded cluster consists of config servers, shards, and one or more mongos
          routing processes. Sharding is a A database architecture that partitions
          data by key ranges and distributes the data among two or more database
          instances. Sharding enables horizontal scaling.

          ## Requirements for deploying MongoDB OpsManager

          * In order to deploy resources of type MongoDB OpsManager, you will need to
          create a secret containing the [credentials](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/plan-om-resource/#om-rsrc-prereqs)
          for the Global Owner user

          ## Security ##

          The operator can enable TLS for all traffic between servers and also between
          clients and servers. Before enabling `security.tls.enabled` to `true` you
          should create your certificates.  or you can leave the operator to create all
          the certificates for you. The operator ability to create certs is been
          deprecated due to Kubernetes API changes.

          For more information, please read the official MongoDB
          Kubernetes Operator  [docs](https://docs.mongodb.com/kubernetes-operator/stable/).
        displayName: MongoDB Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mongodb
        - databases
        - nosql
        links:
        - name: Documentation
          url: https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/index.html
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: stable
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:d3248506b6bd6b01c5973ab7bdac51ee41efa0ec8dd6211be4cc0b76a53a40c1
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7aa00dca44559318356627e88440765576dd6706187044edd1f21d0d0dcb0bf6
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:83af86f8098e3c81b6e0879eabd582592ef6cbb1d6592f5e175c0794b9df2a0e
        - quay.io/mongodb/mongodb-enterprise-operator-ubi@sha256:6d394a5247cc346c4421bd9b37948c0378970dd3f4fc5d6eaac681f4c9655957
        - quay.io/mongodb/mongodb-enterprise-init-appdb-ubi@sha256:be4295843d92ce0f325b8daaeb3a5490c11772d0348cbd9ea35a6126d038b7fb
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:985f770667e6c4c083e0c4bb79a948b83efa0cdc4ed3012b1dbf72fe48b38986
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0b2d01d543d38feddcc9d351e711df33a0a5187b22d95cdb926f6015ee1093bd
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:7d93aee462c60cacc4e5e66729f5131c5c0fa434e6e6400c8e2ccac4bd5e20ba
        - quay.io/mongodb/mongodb-agent-ubi@sha256:411f85772e7a4b2c76e21d26d320b7743612080bf0cb4c7900d9a626cfeea33b
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8445d59d491a6d3890ea9c8b421214bcd0fdcfbc420ed40497a790b79f0bc89e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:ca2aaf57d70a0b9d743a6533c4e1b88324056197453de540d3352e679a3c9c92
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0ee80032abe873b330537d4b64511ee76c5efb512af95287f28ddeffab13bb6d
        - quay.io/mongodb/mongodb-enterprise-server@sha256:67238129df09d33ee4746ff1acb5515d699a29d9f42350eae3f3f69ccb7fbf54
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8d7e5361c2a1604dec3fc671d629806fe6ddc6df524b69a441b86933a4b30093
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7885ab6e88214f9289d8babf5189136dde0dd4c84a15a5481ccd3ef512b2e66f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:a48a4d5c275fd669a27469649fb39ea38c728dbcf9f0a9da4e7cf27a2ce912ed
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c54eeb910855594ed4bf5dcbbbcc14aa6f733e97313896a8381fb4be6aeac583
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d323c1bcd14118cc537ac282996ea5a58756d20b6b73f1eec0efa8710d246077
        - quay.io/mongodb/mongodb-enterprise-server@sha256:19925e1297ab652db59c35f53e7b7c8b2b277f8ecdc4215682961aaf2b3e924e
        - quay.io/mongodb/mongodb-agent-ubi@sha256:bd868284d9dfcb7c5a20e1160218d0172358384229b556c37e0789af0030eb24
        - quay.io/mongodb/mongodb-enterprise-server@sha256:1d418c65d82ccad205b7889be4ba161d3cbfa8b1fb75b21c8fcf02de38fad9ca
        - quay.io/mongodb/mongodb-enterprise-server@sha256:13186ad45a2ba3ab55ed5c2a008eca494ee3937c8519475379476cc8e6f1d055
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa8683500e8d3632c4588bbcdddb4e3186a01f48aefe1b6d95f8860dae8b6c76
        - quay.io/mongodb/mongodb-agent-ubi@sha256:9d1f21df008b14ca721c9ed0ff905af23e1a56b64cd4eddab4df1e8e9b63df8c
        - quay.io/mongodb/mongodb-enterprise-server@sha256:110a560f5a0ebe1fde1b2c20ae5ff5638682229d1c8656b993bdaf7b71eb94bc
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3add8b68bfbaa42596fe5dbbee4623ba5ff1a826b18bb71301525adf574dcb94
        - quay.io/mongodb/mongodb-agent-ubi@sha256:23d962d038888c6aba5540c8f5d81d7e86c4ccfaa07b9e159825d98676609f8e
        - quay.io/mongodb/mongodb-agent-ubi@sha256:85f883076bc8edc516800704e2290c54b1bee14a9a533df84928c7ce1ae807d2
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:c9a211a2c31b97eed3a25a814198547f2aa3470df93d661ca3700b828100d8de
        - quay.io/mongodb/mongodb-agent-ubi@sha256:6d007271faed24bdf06eb64f2b54e5cdc3e11ce71840a7f586dabe2ee02c640e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:83db493ac6158d654d3ce55619f312d53cfbac258e0faf22e9110ca004e174bd
        - quay.io/mongodb/mongodb-agent-ubi@sha256:8c11348eac180f5faa113db2804817302ec78847472e1891b063744adba4aa60
        - quay.io/mongodb/mongodb-agent-ubi@sha256:0f8d102780a9d2ce54b7453f9575d0e24b15f014cd9b74816b1e6a4090b979b2
        - quay.io/mongodb/mongodb-enterprise-server@sha256:584255582db31d0bb1f9593feb3b675d934d8750766fc98d3a1b3340feae4995
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8f8735d377d214f64961381b5b1ed7cd3c306e6354dbc6b45c51134a25444b93
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f1bae6375f846af6fca7faeeff4aedf9fab41a9d45b515ba74e9fd7336408617
        - quay.io/mongodb/mongodb-agent-ubi@sha256:f5f3b14ee6533b21d89d9ed6d4af47dbdee9e071f909dc686dfcdf6742179e46
        - quay.io/mongodb/mongodb-enterprise-server@sha256:ef732e3eea91cc86caf2eabedc0c9115ed235a8d204f33e74bbf090a0b0259fb
        - registry.connect.redhat.com/mongodb/enterprise-operator-bundle@sha256:23c3c8387eb9377b52327d7193f59eeea5831f4050248b3cbb54cbcd9437fc71
        - quay.io/mongodb/mongodb-agent-ubi@sha256:66b49d9dce414dcd657c3550b26f71964b82edfb67a41a3ce8d2386b04ef07e8
        - quay.io/mongodb/mongodb-agent-ubi@sha256:c96ad084edbdc6a6d907f57795fa38f39199b730328dbc64997d56ea50d55dfc
        - quay.io/mongodb/mongodb-agent-ubi@sha256:bd7edb8d0931dd952524f1f0ef99f61b0f69385d9e61efd034a4f45fd315a40b
        - quay.io/mongodb/mongodb-agent-ubi@sha256:766e6cbeec27f995211aa509ff7f118b6945f3e728141f28f9c4ea0dd2297af5
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d876f57ea45582e84748b02459748e440af443a7eb0882585638973409c08f6a
        - quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi@sha256:6ccc8148c266a9037ea744e8d19875146b1c231909f29a8f01c7ce415ca15936
        - quay.io/mongodb/mongodb-agent-ubi@sha256:36c84115c6c645fd7d65d1004d2507ef3592aa1f07176645b1ee8e8b2a4f5f73
        - quay.io/mongodb/mongodb-agent-ubi@sha256:575a43be4c667f3249f46f1fdcc06dd2e68cacc9eed989da0f6edd7e214d51b7
        - quay.io/mongodb/mongodb-enterprise-server@sha256:15e31285c8949a4666f7702df53416b0905d76945a28575a6028a876cc8a6f0f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:b2bd8eb7f8b96adb874468ff1b0ebae2db4ebe490b6e1da4c9a6c5108f813ff5
        - quay.io/mongodb/mongodb-enterprise-database-ubi@sha256:e2ca129f04ad6bf4e0dbb988badb083187725f28bac01bb7080cc80cad9ac316
        - quay.io/mongodb/mongodb-agent-ubi@sha256:97bb6bb5ecd5a802e8a91e69aa10d8bde0f648b106dc5591d49ee94209822daa
        - quay.io/mongodb/mongodb-enterprise-server@sha256:37af0913742b6de339c7e664b30f35dcef04506529e4a09a9bbbdd57643f7149
        - quay.io/mongodb/mongodb-enterprise-server@sha256:b00ac773623e1bf422b47e6d783263d2d08737865abe9abbe106d86d1ea25165
        - quay.io/mongodb/mongodb-enterprise-server@sha256:9a3a6496be0d2d446e6d654eb56386c7726e0cd2d7232f6dcec579923edf0014
        - quay.io/mongodb/mongodb-enterprise-server@sha256:85c1d669c073caf9cbaac815e4c8ea2ca18b71deefa03bf84cd6d8b8ebd53e12
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f2d9a3264a8814f33143b73c56624572fb80afeab184133d3a901713a31c1a87
        - quay.io/mongodb/mongodb-enterprise-server@sha256:523566f44cbb6bbf0cd12b1adae939a883f2254c78dc4b8c9d0098581337b1db
        - quay.io/mongodb/mongodb-enterprise-server@sha256:33a30d11969eb21952681108092fe7f916e25c8e1de43e6a4e40e126025a2bec
        - quay.io/mongodb/mongodb-enterprise-server@sha256:db63f6d93e03a3e644ef6ef4846ed7d24576c688ffb584226c78e1d1fba38878
        - quay.io/mongodb/mongodb-agent-ubi@sha256:5119a1ceeae6440dbe88b89550a7ae18de8e85c9a2059f467ad66adf7ec5d75f
        - quay.io/mongodb/mongodb-agent-ubi@sha256:2395fe9d38a1a9160f7cb2f400b776ea3fc2e72187d23b6dee7fd1e4fb9ca721
        - quay.io/mongodb/mongodb-agent-ubi@sha256:3b57a03dc17a301fda86c8afed1917c10d9b98947680116399c975ece944f5de
        - quay.io/mongodb/mongodb-enterprise-server@sha256:605dcca06a45e5ea127edb9ff262a1c3ddafdab2f30b6d3a18f73bfb8a6acdb0
        - quay.io/mongodb/mongodb-enterprise-server@sha256:dfd4277f0c16ed476ac7de51894739e8c8d13a65ea5024b9a97b3dce0f6c6975
        - quay.io/mongodb/mongodb-agent-ubi@sha256:2dbaaece4dd48087370e43d9bcf6b0a0312f86cb5dfe916e8725323bd5401992
        - quay.io/mongodb/mongodb-enterprise-server@sha256:cd0cdf1b2a58f4c3b514e602cc1d96543410f631825045bbf65bd3fb84113f1f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:172e338a43df01ee5408d8d1e3cb038d2c55e77761c1a2ac6ed37959d1525140
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:2be0c6c89898b18618932b6a6303aeefdde60f48ec37d5c1fca5b8d04a00fd78
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d49417ea85ee1ddb84429552a5aac87a82c2843904d8c0300a43b657b7a49e0e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:5421e00c0935b7a9ced51a11e935773ef5df4d259f3e1b1930fbf2f1b9d46586
        - quay.io/mongodb/mongodb-agent-ubi@sha256:695074fbbfcadf454230b80fbf1094260e631f6108cefb2050473edaee2a217a
        - quay.io/mongodb/mongodb-agent-ubi@sha256:03763de5018fd5fa14843444d24adfc5e387605970b531801ef2d0916233a010
        - quay.io/mongodb/mongodb-agent-ubi@sha256:8467b1c2924a19929fc101ef2ff8d7e53cb0115a0cdc2e371dc0733bd0262395
        - quay.io/mongodb/mongodb-agent-ubi@sha256:d927afa9d3d569d943518f0a684e19afd4adb0875f55df7c904b9dd019589e5e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:fb8397cbcdbf7c33f6ad142492792771127f0d9a8c46388f350b6927405ee590
        - quay.io/mongodb/mongodb-enterprise-server@sha256:35b263861d6ea66b541abc190ce1aaf4d4e36f128e5d8ba2a5e9fa8e25d84446
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:f64d99a77d6a6b9ed10de9a28b1b8b8155414eca2e561f3fdb04bd66914fb3c5
        - quay.io/mongodb/mongodb-enterprise-server@sha256:655896bac9e82de8e9729d59a36c3a31f66235f22b93449260a2ccb7709de084
        - quay.io/mongodb/mongodb-enterprise-server@sha256:df6081325ea2fe01d1b27d0c70005dec8232aaf51a43d91661b722b8a1761263
        - quay.io/mongodb/mongodb-agent-ubi@sha256:442f5d99d02674099525abaa69daa42cec758ce5554198f978927aa5c49006c8
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa300abf739e26350a258f643fa8e57aedacd041055c7b923bd22b21ef554cdb
        - quay.io/mongodb/mongodb-agent-ubi@sha256:b23cfa639c5a4d20381245772dfe396ec915af3a3046df5d9b10016b900431f5
        - quay.io/mongodb/mongodb-agent-ubi@sha256:b175972792aa1be268d5fb3cf3ad0156f4aecffa323e1b473360fc2a3a8d8891
        - quay.io/mongodb/mongodb-agent-ubi@sha256:ee150e969c0bb786969c7e0a45fb1812766b752aee539072e28648817826433b
        - quay.io/mongodb/mongodb-agent-ubi@sha256:31cfefd2660da3efe1b6d63e39090464c28ae006d6ed1dffb2189a09183b9c61
        - quay.io/mongodb/mongodb-agent-ubi@sha256:6ebe232ed0ea87045792e578ecb11dd46411333ad0ea61383c247704b4a0efe9
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:2127d7f2684ae36b123422f55237055aad02fdb71c4c21a5b8f0b0f6d8baedfc
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:dfec259209995bb040a1eff1fcafb1d6c3fdd145129f12c04a56ec74834b80a6
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c07f20f8e7a5479e43cac7c74fc9f18cb4d4a1bd8b6b46f7dcc6f7ec7525fe28
        - quay.io/mongodb/mongodb-agent-ubi@sha256:7144ac5e5038e92a6d142bf39eba46554c1b5fafeb8ea59f0390896a0d35ed17
        - quay.io/mongodb/mongodb-agent-ubi@sha256:c03e4a7663206f54c5ef39974502816f66d8d64936c19849f0337ea4547e614e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c752a7f0726d21d55f204a359b85fa29cd727a5fe571b37289ae3ea52d6206b0
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0fde236fe26d5b20210d6f246aadacd7845874712def516cbe2eec11d79d5181
        - quay.io/mongodb/mongodb-enterprise-server@sha256:11ab324698f919f84a5dab5a964d93fe63f98a48146bb3b86974cba7606d30ec
        - quay.io/mongodb/mongodb-agent-ubi@sha256:38175af108178d89e4d3359ee2754534e5e9b24e843f12711fc14fe1dead516a
        - quay.io/mongodb/mongodb-enterprise-init-database-ubi@sha256:ab12a330e6b40735ee516168073887a4f37b58694bd10026a451eb9972e55500
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d21c65780cadc9d8668d2c28935d492625d6993f13ba562722200a819281cbcc
        version: 1.33.0
      entries:
      - name: mongodb-enterprise.v1.33.0
        version: 1.33.0
      - name: mongodb-enterprise.v1.32.0
        version: 1.32.0
      - name: mongodb-enterprise.v1.31.0
        version: 1.31.0
      - name: mongodb-enterprise.v1.30.0
        version: 1.30.0
      - name: mongodb-enterprise.v1.29.0
        version: 1.29.0
      - name: mongodb-enterprise.v1.28.0
        version: 1.28.0
      - name: mongodb-enterprise.v1.27.0
        version: 1.27.0
      - name: mongodb-enterprise.v1.26.0
        version: 1.26.0
      - name: mongodb-enterprise.v1.25.0
        version: 1.25.0
      - name: mongodb-enterprise.v1.24.0
        version: 1.24.0
      - name: mongodb-enterprise.v1.23.0
        version: 1.23.0
      - name: mongodb-enterprise.v1.22.0
        version: 1.22.0
      - name: mongodb-enterprise.v1.21.0
        version: 1.21.0
      - name: mongodb-enterprise.v1.20.1
        version: 1.20.1
      - name: mongodb-enterprise.v1.19.1
        version: 1.19.1
      - name: mongodb-enterprise.v1.18.0
        version: 1.18.0
      - name: mongodb-enterprise.v1.17.2
        version: 1.17.2
      - name: mongodb-enterprise.v1.17.1
        version: 1.17.1
      - name: mongodb-enterprise.v1.17.0
        version: 1.17.0
      - name: mongodb-enterprise.v1.16.4
        version: 1.16.4
      - name: mongodb-enterprise.v1.16.3
        version: 1.16.3
      - name: mongodb-enterprise.v1.16.2
        version: 1.16.2
      - name: mongodb-enterprise.v1.16.1
        version: 1.16.1
      name: stable
    defaultChannel: stable
    packageName: mongodb-enterprise
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio
      provider-url: ""
    name: apicurio-api-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-api-controller.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry3",
                "metadata": {
                  "name": "example-registry-with-studio"
                },
                "spec": {
                  "app": {
                    "host": "example-registry-with-studio-app.apps.yourcluster.example"
                  },
                  "studioUi": {
                    "enabled": true,
                    "host": "example-registry-with-studio-studio-ui.apps.yourcluster.example"
                  },
                  "ui": {
                    "host": "example-registry-with-studio-ui.apps.yourcluster.example"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurio-registry-operator:3.0.5
          createdAt: "2024-12-03T11:30:52Z"
          description: Deploy and manage Apicurio API Controller on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/Apicurio/apicurio-registry/tree/main/operator
          support: Apicurio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry3 represents an instance of Apicurio API
              Controller.
            displayName: Apicurio Registry 3
            kind: ApicurioRegistry3
            name: apicurioregistries3.registry.apicur.io
            version: v1
        description: |
          ## Apicurio API Controller

          Apicurio API Controller consists of 2 components:
           - Apicurio Registry 3
           - Apicurio Studio

          Storage options: PostgreSQL, Kafka, MySQL, SQL Server, in-memory.

          ## Apicurio API Controller Operator

          Provides a quick and easy way to deploy and manage Apicurio API Controller on Kubernetes.

          **Features**
          - Supports installation and configuration of Apicurio API Controller
          - Perform a rolling upgrade of Apicurio API Controller

          ## Prerequisites

          This operator does not deploy storage for Apicurio API Controller. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Apicurio API Controller and Apicurio API Controller Operator are licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry/blob/main/LICENSE)
        displayName: Apicurio API Controller
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - API Management
        - Apicurio Registry
        - Apicurio Studio
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Apicurio
        relatedImages:
        - quay.io/apicurio/apicurio-registry-operator:3.0.5
        - quay.io/community-operator-pipeline-prod/apicurio-api-controller@sha256:c783cd6db1ae5a6152848f5e4258e89b37077a177199be905d0cfe451a48e5ef
        version: 0.0.1
      entries:
      - name: apicurio-api-controller.v0.0.1
        version: 0.0.1
      name: 0.x
    defaultChannel: 0.x
    packageName: apicurio-api-controller
    provider:
      name: Apicurio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-custom-metrics-autoscaler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: custom-metrics-autoscaler.v2.17.2-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eventing.keda.sh/v1alpha1",
                "kind": "CloudEventSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "keda",
                    "app.kubernetes.io/instance": "cloudeventsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cloudeventsource",
                    "app.kubernetes.io/part-of": "keda"
                  },
                  "name": "cloudeventsource-sample"
                },
                "spec": {
                  "clusterName": "cluster-sample",
                  "destination": {
                    "http": {
                      "uri": "http://foo.bar"
                    }
                  }
                }
              },
              {
                "apiVersion": "eventing.keda.sh/v1alpha1",
                "kind": "ClusterCloudEventSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "keda",
                    "app.kubernetes.io/instance": "clustercloudeventsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "clustercloudeventsource",
                    "app.kubernetes.io/part-of": "keda"
                  },
                  "name": "clustercloudeventsource-sample"
                },
                "spec": {
                  "clusterName": "clustercluster-sample",
                  "destination": {
                    "http": {
                      "uri": "http://foo.bar"
                    }
                  }
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ClusterTriggerAuthentication",
                "metadata": {
                  "name": "example-clustertriggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "example-secret-parameter"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "KedaController",
                "metadata": {
                  "name": "keda",
                  "namespace": "openshift-keda"
                },
                "spec": {
                  "admissionWebhooks": {
                    "logEncoder": "console",
                    "logLevel": "info"
                  },
                  "metricsServer": {
                    "logLevel": "0"
                  },
                  "operator": {
                    "logEncoder": "console",
                    "logLevel": "info"
                  },
                  "serviceAccount": null,
                  "watchNamespace": ""
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledJob",
                "metadata": {
                  "name": "scaledjob-sample"
                },
                "spec": {
                  "failedJobsHistoryLimit": 5,
                  "jobTargetRef": {
                    "activeDeadlineSeconds": 600,
                    "backoffLimit": 6,
                    "completions": 1,
                    "parallelism": 1,
                    "template": null
                  },
                  "maxReplicaCount": 100,
                  "pollingInterval": 30,
                  "successfulJobsHistoryLimit": 5,
                  "triggers": [
                    {
                      "metadata": {
                        "property": "example-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledObject",
                "metadata": {
                  "name": "example-scaledobject"
                },
                "spec": {
                  "cooldownPeriod": 300,
                  "maxReplicaCount": 100,
                  "minReplicaCount": 0,
                  "pollingInterval": 30,
                  "scaleTargetRef": {
                    "name": "example-deployment"
                  },
                  "triggers": [
                    {
                      "metadata": {
                        "property": "example-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "TriggerAuthentication",
                "metadata": {
                  "name": "example-triggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "example-secret-parameter"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Cloud Provider
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9-operator@sha256:f281ddee3c9d29e2b55afc734fd238d443c21b4b4824e35b50aaf31cf126b819
          createdAt: 07 Oct 2025, 19:50
          description: Custom Metrics Autoscaler Operator, an event-driven autoscaler
            based upon KEDA
          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: "true"
          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.skipRange: '>=2.7.1 <2.17.2-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-keda
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/custom-metrics-autoscaler-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CloudEventSource
            name: cloudeventsources.eventing.keda.sh
            version: v1alpha1
          - kind: ClusterCloudEventSource
            name: clustercloudeventsources.eventing.keda.sh
            version: v1alpha1
          - description: Describes cluster wide authentication parameters
            displayName: ClusterTriggerAuthentication
            kind: ClusterTriggerAuthentication
            name: clustertriggerauthentications.keda.sh
            version: v1alpha1
          - description: |
              Represents an installation of a particular version of KEDA Controller.
            displayName: KedaController
            kind: KedaController
            name: kedacontrollers.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your jobs and what the triggers
            displayName: ScaledJob
            kind: ScaledJob
            name: scaledjobs.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your application and what the
              triggers are
            displayName: ScaledObject
            kind: ScaledObject
            name: scaledobjects.keda.sh
            version: v1alpha1
          - description: Describes authentication parameters
            displayName: TriggerAuthentication
            kind: TriggerAuthentication
            name: triggerauthentications.keda.sh
            version: v1alpha1
        description: |
          ## About the managed application
          Custom Metrics Autoscaler for OpenShift is an event driven autoscaler based upon KEDA.  Custom Metrics Autoscaler can monitor event sources like Kafka, RabbitMQ, or cloud event sources and feed the metrics from those sources into the Kubernetes horizontal pod autoscaler.  With Custom Metrics Autoscaler, you can have event driven and serverless scale of deployments within any Kubernetes cluster.
          ## About this Operator
          The Custom Metrics Autoscaler Operator deploys and manages installation of KEDA Controller in the cluster. Install this operator and follow installation instructions on how to install Custom Metrics Autoscaler in your cluster.

          ## Prerequisites for enabling this Operator
          ## How to install Custom Metrics Autoscaler in the cluster
          The installation of Custom Metrics Autoscaler is triggered by the creation of `KedaController` resource. Please refer to the [KedaController Spec](https://github.com/openshift/custom-metrics-autoscaler-operator/blob/main/README.md#the-kedacontroller-custom-resource) for more details on available options.

          Only a resource named `keda` in the namespace where the operator is installed will trigger the installation, reconfiguration or removal of the KEDA Controller resource.

          There should be only one KEDA Controller in the cluster.

          The operator will behave in this manner whether it is installed with the `AllNamespaces` or `OwnNamespace` install mode. While the operator more closely matches the `OwnNamespace` semantics, `AllNamespaces` is a supported installation mode to allow it to be installed to namespaces with existing `OperatorGroups` which require that installation mode, such as `openshift-operators`.
        displayName: Custom Metrics Autoscaler
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - keda
        - scaling
        - event
        links:
        - name: Custom Metrics Autoscaler Documentation
          url: https://docs.openshift.com/container-platform/latest/nodes/cma/nodes-cma-autoscaling-custom.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9-operator@sha256:f281ddee3c9d29e2b55afc734fd238d443c21b4b4824e35b50aaf31cf126b819
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9@sha256:3216b5b55e1b068d31154cb806fcaf8233663af209d355975b7374157d265f4e
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-operator-bundle@sha256:3682a40a5309c9eb7507082a55164679e3e47e40b5368ffba7727361600ff02b
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-adapter-rhel9@sha256:b9401d749596bbf112e62e6a59b991bf1e156e70bb7e8bb8f81f274a4ad01986
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-admission-webhooks-rhel9@sha256:a562d423b2b1d7b8b12d5497c9d665dcb530c0ec7a63f47122fef9ca4be17826
        version: 2.17.2-2
      entries:
      - name: custom-metrics-autoscaler.v2.17.2-2
        version: 2.17.2-2
      - name: custom-metrics-autoscaler.v2.17.2-1
        version: 2.17.2-1
      - name: custom-metrics-autoscaler.v2.15.1-6
        version: 2.15.1-6
      - name: custom-metrics-autoscaler.v2.15.1-4
        version: 2.15.1-4
      - name: custom-metrics-autoscaler.v2.14.1-467
        version: 2.14.1-467
      - name: custom-metrics-autoscaler.v2.14.1-454
        version: 2.14.1-454
      - name: custom-metrics-autoscaler.v2.13.1-427
        version: 2.13.1-427
      - name: custom-metrics-autoscaler.v2.12.1-394
        version: 2.12.1-394
      - name: custom-metrics-autoscaler.v2.11.2-322
        version: 2.11.2-322
      - name: custom-metrics-autoscaler.v2.11.2-311
        version: 2.11.2-311
      - name: custom-metrics-autoscaler.v2.10.1-267
        version: 2.10.1-267
      name: stable
    defaultChannel: stable
    packageName: openshift-custom-metrics-autoscaler-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Fujitsu
      provider-url: https://www.postgresql.fastware.com/
    name: fujitsu-enterprise-postgres-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fujitsu-enterprise-postgres-operator.v5.1.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPAction",
                "metadata": {
                  "name": "new-fep-action"
                },
                "spec": {
                  "fepAction": {
                    "args": [
                      "new-fep-sts-0",
                      "new-fep-sts-1"
                    ],
                    "type": "reload"
                  },
                  "sysExtraEvent": true,
                  "sysExtraLogging": false,
                  "targetClusterName": "new-fep"
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPExporter",
                "metadata": {
                  "name": "new-fep-exporter"
                },
                "spec": {
                  "fepExporter": {
                    "exporterLogLevel": "error",
                    "fepClusterList": [
                      "new-fep1"
                    ],
                    "image": {
                      "pullPolicy": "IfNotPresent"
                    },
                    "mcSpec": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "700Mi"
                      },
                      "requests": {
                        "cpu": "200m",
                        "memory": "512Mi"
                      }
                    },
                    "restartRequired": false,
                    "sysExtraEvent": true,
                    "sysExtraLogging": false,
                    "userCustomQueries": "usr_example:\n  query: \"SELECT EXTRACT(EPOCH FROM (now() - pg_last_xact_replay_timestamp())) as lag\"\n  master: true\n  metrics:\n    - lag:\n        usage: \"GAUGE\"\n        description: \"Replication lag behind master in seconds\""
                  }
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPLogging",
                "metadata": {
                  "name": "new-fep-logging"
                },
                "spec": {
                  "fepLogging": {
                    "image": {
                      "pullPolicy": "IfNotPresent"
                    },
                    "mcSpec": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "700Mi"
                      },
                      "requests": {
                        "cpu": "200m",
                        "memory": "512Mi"
                      }
                    },
                    "restartRequired": false,
                    "sysExtraEvent": true,
                    "sysExtraLogging": false
                  }
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPPgpool2",
                "metadata": {
                  "name": "new-fep-pgpool2"
                },
                "spec": {
                  "count": 2,
                  "customhba": "local   all         all                               trust\nhost    all         all         127.0.0.1/32          trust\nhost    all         all         ::1/128               trust\n",
                  "customlogsize": "128Mi",
                  "customparams": "listen_addresses = '*'\npcp_listen_addresses = '*'\nnum_init_children = 32\nreserved_connections = 0\nenable_pool_hba = off\nallow_clear_text_frontend_auth = off\nauthentication_timeout = 80\nbackend_weight0 = 1\nbackend_weight1 = 1\nbackend_flag0 = 'ALWAYS_PRIMARY'\nbackend_flag1 = 'DISALLOW_TO_FAILOVER'\nconnection_cache = on\nmax_pool = 4\nlisten_backlog_multiplier = 2\nserialize_accept = off\nchild_life_time = 300\nclient_idle_limit = 0\nchild_max_connections = 0\nconnection_life_time = 0\nreset_query_list = 'ABORT; DISCARD ALL'\nclient_min_messages = info\nlog_min_messages = debug1\nlog_statement = on\nlog_per_node_statement = on\nlog_client_messages = on\nlog_hostname = on\nlog_connections = on\nlog_line_prefix = '%t: pid %p: '\nload_balance_mode = on\nignore_leading_white_space = on\nwhite_function_list = ''\nblack_function_list = 'currval,lastval,nextval,setval'\nblack_query_pattern_list = ''\ndatabase_redirect_preference_list = ''\napp_name_redirect_preference_list = ''\nallow_sql_comments = off\ndisable_load_balance_on_write = 'transaction'\nstatement_level_load_balance = on\nsr_check_period = 0\nsr_check_user = 'postgres'\ndelay_threshold = 0\nlog_standby_delay = 'none'\nssl = on\nssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL'\nssl_prefer_server_ciphers = off\nssl_ecdh_curve = 'prime256v1'\nssl_dh_params_file = ''\nrelcache_expire = 0\nrelcache_size = 256\ncheck_temp_table = catalog\ncheck_unlogged_table = on\nenable_shared_relcache = off\nrelcache_query_target = primary\nwd_port0 = 9000\nfailover_on_backend_error = off\n",
                  "custompcp": "none",
                  "customsslcacert": "none",
                  "customsslcert": "-----BEGIN CERTIFICATE-----\nMIIDTzCCAjegAwIBAgIUYssQ8I74US5g+1+Z7CHuaDgkZnEwDQYJKoZIhvcNAQEL\nBQAwNzEQMA4GA1UECgwHRnVqaXRzdTEjMCEGA1UEAwwaRkVQIFJvb3QgQ0EgZm9y\nIEt1YmVybmV0ZXMwHhcNMjEwMjA2MDM1MjI4WhcNMzEwMjA0MDM1MjI4WjA3MRAw\nDgYDVQQKDAdGdWppdHN1MSMwIQYDVQQDDBpGRVAgUm9vdCBDQSBmb3IgS3ViZXJu\nZXRlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMs97gUF0xkUzCgL\n7MiiDju9ySr/ziwjvcYU7jA9ML+SLmftMs3HtcYbAmSntqI+MDBSR/FAJTOoytuT\npV+mCFcGj2YAjDpliHPeNcUpbryy4YMChF3+MovkIwGCksxo5rhiWhGmoBYpA48P\n4Xe8SPlzqMzhFvNeKzyiUhvjutS2Y1Ss38lsTaurFPx64vQ2PaC54XzdwMptXtpb\ntYmWSzCpJWwxZ6lF3vitdA2w0tnBWNyctAd0+RIM/fvArxiIqseAux9t0uogm5to\nlRIhvekuxOpXBPEqtIYQ4j9XUW2JH8vUDnzPkPvjrq+A3Ug8OyyfGVrW7+VYXozu\nc4aP7P0CAwEAAaNTMFEwHQYDVR0OBBYEFBzCutQ7S74WEhS5V2sNEJBGyLpmMB8G\nA1UdIwQYMBaAFBzCutQ7S74WEhS5V2sNEJBGyLpmMA8GA1UdEwEB/wQFMAMBAf8w\nDQYJKoZIhvcNAQELBQADggEBAMDwD85RAaWEBptFgLzKw+9xEUy1vcZaonAuA1qc\nT342XTueyAugxkC11HwdCGgGS34VyctfMGqj4AW6pA2ez4tLrbOps4DmV4sw8uBL\n8pgRDgfly3ob9FEg2wa0hmrwX9jH5Bt4vySUE2785uPAqaspT2UNtTBxS85BUi1T\nsKId2Rtil6an281Z81wyWVI6Jm2D4MG0mbsiGcTPlCtdg/UljvDYymXlAvd4vNhl\nk9hDa13TgDqJKgKdTIcmZoNQdpEVgFcO0h9AEUy5AuLqxHq60dLfZ6ESGPlMI7Lm\ni4PzYbCnBmOe+7TnHcPSyrnehs66Ik+oifRd82eYS7vKjFw=\n-----END CERTIFICATE-----",
                  "customsslkey": "none",
                  "fepclustername": "new-fep",
                  "imagePullPolicy": "IfNotPresent",
                  "limits": {
                    "cpu": "400m",
                    "memory": "512Mi"
                  },
                  "requests": {
                    "cpu": "200m",
                    "memory": "256Mi"
                  },
                  "serviceport": 9999,
                  "statusport": 9898
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPRestore",
                "metadata": {
                  "name": "new-fep-restore"
                },
                "spec": {
                  "fromFEPcluster": "new-fep",
                  "imagePullPolicy": "IfNotPresent",
                  "mcSpec": {
                    "limits": {
                      "cpu": "200m",
                      "memory": "300Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "200Mi"
                    }
                  },
                  "restoretype": "latest",
                  "sysExtraEvent": true,
                  "sysExtraLogging": false,
                  "toFEPcluster": "new-fep-2"
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v2",
                "kind": "FEPCluster",
                "metadata": {
                  "name": "new-fep"
                },
                "spec": {
                  "fep": {
                    "customAnnotations": {
                      "allDeployments": {}
                    },
                    "forceSsl": true,
                    "image": {
                      "pullPolicy": "IfNotPresent"
                    },
                    "instances": 1,
                    "mcSpec": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "700Mi"
                      },
                      "requests": {
                        "cpu": "200m",
                        "memory": "512Mi"
                      }
                    },
                    "podAntiAffinity": false,
                    "podDisruptionBudget": false,
                    "servicePort": 27500,
                    "syncMode": "off",
                    "sysExtraEvent": true,
                    "sysExtraLogging": false,
                    "usePodName": true
                  },
                  "fepChildCrVal": {
                    "backup": {
                      "image": {
                        "pullPolicy": "IfNotPresent"
                      },
                      "mcSpec": {
                        "limits": {
                          "cpu": 0.2,
                          "memory": "300Mi"
                        },
                        "requests": {
                          "cpu": 0.1,
                          "memory": "200Mi"
                        }
                      },
                      "pgbackrestParams": "# if log volume is not defined, log_directory should be\n# changed to '/database/userdata/data/log'\n[global]\nrepo1-retention-full=7\nrepo1-retention-full-type=time\nlog-path=/database/log/backup\n",
                      "postScript": " ",
                      "preScript": " ",
                      "schedule": {
                        "num": 2
                      },
                      "schedule1": {
                        "schedule": "15 0 * * 0",
                        "type": "full"
                      },
                      "schedule2": {
                        "schedule": "15 0 * * 1-6",
                        "type": "incr"
                      },
                      "schedule3": {
                        "schedule": " ",
                        "type": " "
                      },
                      "schedule4": {
                        "schedule": " ",
                        "type": " "
                      },
                      "schedule5": {
                        "schedule": " ",
                        "type": " "
                      }
                    },
                    "customPgAudit": "# define pg audit custom params here to override defaults.\n# if log volume is not defined, log_directory should be\n# changed to '/database/userdata/data/log'\n[output]\nlogger = 'auditlog'\nlog_directory = '/database/log/audit'\nlog_truncate_on_rotation = on\nlog_filename = 'pgaudit-%a.log'\nlog_rotation_age = 1d\nlog_rotation_size = 0\n[rule]\n",
                    "customPgHba": "# define pg_hba custom rules here to be merged with default rules.\n# TYPE     DATABASE        USER        ADDRESS        METHOD\n",
                    "customPgParams": "# define custom postgresql.conf parameters below to override defaults.\n# Current values are as per default FEP deployment\n# If you add a library to shared_preload_libraries, add it after the default value.\n# fsep_operator_security is available in FEP15 and later container images.\nshared_preload_libraries='pgx_datamasking,pg_prewarm,pg_stat_statements,fsep_operator_security'\nsession_preload_libraries='pg_prewarm'\nmax_prepared_transactions = 100\nmax_worker_processes = 30\nmax_connections = 100\nwork_mem = 1MB\nmaintenance_work_mem = 12MB\nshared_buffers = 128MB\neffective_cache_size = 384MB\ncheckpoint_completion_target = 0.8\n# tcp parameters\ntcp_keepalives_idle = 30\ntcp_keepalives_interval = 10\ntcp_keepalives_count = 3\n# logging parameters in default fep installation\n# if log volume is not defined, log_directory should be\n# changed to '/database/userdata/data/log'\nlog_directory = '/database/log'\nlog_filename = 'logfile-%a.log'\nlog_file_mode = 0600\nlog_truncate_on_rotation = on\nlog_rotation_age = 1d\nlog_rotation_size = 0\nlog_checkpoints = on\nlog_line_prefix = '%e %t [%p]: [%l-1] user=%u,db=%d,app=%a,client=%h'\nlog_lock_waits = on\nlog_autovacuum_min_duration = 60s\nlogging_collector = on\npgaudit.config_file='/opt/app-root/src/pgaudit-cfg/pgaudit.conf'\nlog_replication_commands = on\nlog_min_messages = WARNING\nlog_destination = csvlog\n# wal_archive parameters in default fep installation\narchive_mode = on\narchive_command = 'pgbackrest --stanza=backupstanza --config=/database/userdata/pgbackrest.conf archive-push %p'\nwal_level = replica\nmax_wal_senders = 12\nwal_keep_segments = 64\ntrack_activities = on\ntrack_counts = on\npassword_encryption = 'md5'\n",
                    "storage": {
                      "archivewalVol": {
                        "size": "1Gi"
                      },
                      "backupVol": {
                        "size": "2Gi"
                      },
                      "dataVol": {
                        "size": "2Gi"
                      },
                      "logVol": {
                        "size": "1Gi"
                      },
                      "tablespaceVol": {
                        "size": "512Mi"
                      },
                      "walVol": {
                        "size": "1200Mi"
                      }
                    },
                    "sysUsers": {
                      "pgRewindPassword": "rewind_password",
                      "pgRewindUser": "rewind_user",
                      "pgdb": "mydb",
                      "pgpassword": "mydbpassword",
                      "pgreplpassword": "repluserpwd",
                      "pgrepluser": "repluser",
                      "pguser": "mydbuser",
                      "tdepassphrase": "tde-passphrase"
                    },
                    "systemCertificates": {
                      "cacrt": "-----BEGIN CERTIFICATE-----\nMIIDTzCCAjegAwIBAgIUYssQ8I74US5g+1+Z7CHuaDgkZnEwDQYJKoZIhvcNAQEL\nBQAwNzEQMA4GA1UECgwHRnVqaXRzdTEjMCEGA1UEAwwaRkVQIFJvb3QgQ0EgZm9y\nIEt1YmVybmV0ZXMwHhcNMjEwMjA2MDM1MjI4WhcNMzEwMjA0MDM1MjI4WjA3MRAw\nDgYDVQQKDAdGdWppdHN1MSMwIQYDVQQDDBpGRVAgUm9vdCBDQSBmb3IgS3ViZXJu\nZXRlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMs97gUF0xkUzCgL\n7MiiDju9ySr/ziwjvcYU7jA9ML+SLmftMs3HtcYbAmSntqI+MDBSR/FAJTOoytuT\npV+mCFcGj2YAjDpliHPeNcUpbryy4YMChF3+MovkIwGCksxo5rhiWhGmoBYpA48P\n4Xe8SPlzqMzhFvNeKzyiUhvjutS2Y1Ss38lsTaurFPx64vQ2PaC54XzdwMptXtpb\ntYmWSzCpJWwxZ6lF3vitdA2w0tnBWNyctAd0+RIM/fvArxiIqseAux9t0uogm5to\nlRIhvekuxOpXBPEqtIYQ4j9XUW2JH8vUDnzPkPvjrq+A3Ug8OyyfGVrW7+VYXozu\nc4aP7P0CAwEAAaNTMFEwHQYDVR0OBBYEFBzCutQ7S74WEhS5V2sNEJBGyLpmMB8G\nA1UdIwQYMBaAFBzCutQ7S74WEhS5V2sNEJBGyLpmMA8GA1UdEwEB/wQFMAMBAf8w\nDQYJKoZIhvcNAQELBQADggEBAMDwD85RAaWEBptFgLzKw+9xEUy1vcZaonAuA1qc\nT342XTueyAugxkC11HwdCGgGS34VyctfMGqj4AW6pA2ez4tLrbOps4DmV4sw8uBL\n8pgRDgfly3ob9FEg2wa0hmrwX9jH5Bt4vySUE2785uPAqaspT2UNtTBxS85BUi1T\nsKId2Rtil6an281Z81wyWVI6Jm2D4MG0mbsiGcTPlCtdg/UljvDYymXlAvd4vNhl\nk9hDa13TgDqJKgKdTIcmZoNQdpEVgFcO0h9AEUy5AuLqxHq60dLfZ6ESGPlMI7Lm\ni4PzYbCnBmOe+7TnHcPSyrnehs66Ik+oifRd82eYS7vKjFw=\n-----END CERTIFICATE-----",
                      "crt": "-----BEGIN CERTIFICATE-----\nMIIDUTCCAjmgAwIBAgIRAMocW3qMoHrD6qRvMPppMkMwDQYJKoZIhvcNAQELBQAw\nNzEQMA4GA1UECgwHRnVqaXRzdTEjMCEGA1UEAwwaRkVQIFJvb3QgQ0EgZm9yIEt1\nYmVybmV0ZXMwHhcNMjEwMjA2MDQzMjM2WhcNMjYwMjA1MDQzMjM2WjA/MRAwDgYD\nVQQKEwdGdWppdHN1MSswKQYDVQQDEyJGVUpJVFNVIEVudGVycHJpc2UgUG9zdGdy\nZXMgU2VydmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4AI33yvH\nZws+jta6qpV6wzJqF8odIfTIpCfbrVcUUtLFKJ1I2e4SceTKi6O3C/I1XuvWlpng\n5IO65+fQQLO06z1/AuQT78YUn/Wlm9x1aHVsv4ANB5JWWqDOjrRT3o7nRPGXfila\nbP0rGE2mJJcVR9nExJ3IeaktgT3sb8YlXvtchyYpmjdbfxabTz07ig0+6/cwKoRR\nxOK8Uf7f5euE0cI/490J6r5Rs4lgD8sIQNCUFlTFYvmAH7gcdssSFBt8NPlUATHE\nsoFmlW0DKCJWNhTLOht+s6L/1zwTHLjPG2pdkG6Wdgmu5H2pDml8CDNLDv98Aj7i\n+I5SRKKcVPlnuQIDAQABo1AwTjAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUH\nAwIwDAYDVR0TAQH/BAIwADAfBgNVHSMEGDAWgBQcwrrUO0u+FhIUuVdrDRCQRsi6\nZjANBgkqhkiG9w0BAQsFAAOCAQEAm5dxBoI9pScOCvRAchg4CprdRDSJb9K6yB3O\nnCAxnM47iHeXnY3WlnI388kHu8DU7O4ba1tJbGs3KY9KzioPk43pU12jWkO1onoF\n+mTDjx/Ef1cYWA9r5q/LtgTa6Q2sxV4O2x67QW82aAnaxO34dV5zWCPIvAoovZBV\nHRT+BgCg3r2vD1RGKK2nl1aYJtWhO1SZubam+VttdZ/vbM9oOJctxmImsEtBXjkY\nKteePdQtLL5o03JhyXWyRshCq+HMmKf2KgyY8gvydGcP4eLQdBWcW40LcnVq6UjT\n0kJycJEKngMVademq1ZWHGaiYB7hyT6GhgIcHUJ2cKrPgbEh1Q==\n-----END CERTIFICATE-----",
                      "key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEA4AI33yvHZws+jta6qpV6wzJqF8odIfTIpCfbrVcUUtLFKJ1I\n2e4SceTKi6O3C/I1XuvWlpng5IO65+fQQLO06z1/AuQT78YUn/Wlm9x1aHVsv4AN\nB5JWWqDOjrRT3o7nRPGXfilabP0rGE2mJJcVR9nExJ3IeaktgT3sb8YlXvtchyYp\nmjdbfxabTz07ig0+6/cwKoRRxOK8Uf7f5euE0cI/490J6r5Rs4lgD8sIQNCUFlTF\nYvmAH7gcdssSFBt8NPlUATHEsoFmlW0DKCJWNhTLOht+s6L/1zwTHLjPG2pdkG6W\ndgmu5H2pDml8CDNLDv98Aj7i+I5SRKKcVPlnuQIDAQABAoIBAFPQYKlOzw/+BA0b\nyMIUpdctIMb/54CR/xR0mVw1DbSjigNVPjHUQvB8Y1B2FAITQObgJO06bAv0QdWN\nRb0/v/yYiNJDFjaLjaIAHlO/2+oWrXbFaZqgpVDJhB+e1xaZr2x7XGxm+p925k30\nl6pvIRY+I8JRKvZiV1VZHwL/R3JOtPr++xMZtLVjVOI+f+ySqJ+TZHuAjm49EKxj\ncEmmJ28b7QcziXsvKy00f+zbqLIBKXQdZAFU5eEr1BsDRXdRW+Kf0XIvftuy4BJZ\nvoKT+VGhEvF/qysswL4+6IAO6tpuYnnM0Y2d3sOGoWPkTcQK0MekYKzL/WmtCjNs\n9hodJtECgYEA5EWyhEOf4uOKe5TDp697UCUvXLoOR58FDe/S8XNvScn29jjOkqIg\nOMoqo9xAkJTNTzqn5UUdt1x/pgM2NxlPLFijrc0zQlX3SoOO2ryDd9WNi7YKtN16\nKJqa536WeZu2OEbuAZ+S3GALVy1RPeTNPnUOmKnF06DjDUGzLNCZy10CgYEA+zfw\n952DWuz1U0Z4wvAEqqcgUKXPKrkTXV/iUnjkDkrLYVr0ZofDNTXrdHl+UedFmaOC\ncieZn6DNhcdz5tKtyysGMH3g/qs9PfoGUngvcXsy0Egk04l3x1jc8TTCLqXZXYaQ\nHMsx51n+R58oncPtzYSUOr9qQ6PbC2CstTbFJA0CgYEAjGEsUliAB/jknfEzjXjG\nPdhQUxb8VyE864Az2lah9t/kJzFyIAziAeqZ5GE7t247AGFTBRTHHI8e1Qoemi3P\nWbc9GVIbFs1lIYbcIDpUIyrKPEP8O5QEXtoNLxXTFgAjRGKiVY87spjCAJ+W2ZhO\ne/1it5GYXfgQCYQA2yuBmOUCgYANRkR2YR1axaCk+NlSu6oTdmdPu6M5x7PNQE7O\nOtMaKjua9lppvIzFGAdMDUtueoEEAE7ZR1xnwfB6PDLUpJdIYAqgr1YfPt8qkjaZ\nTv56yZ7CwL0pbF8m6nwqRrZoDp1wwraEvvvxFKFKGY/k3kCHlpTakdjEoDjn3gDi\nRnWeVQKBgCEneMSzucei5LRppRtRaJw/Btll8qlPMlX3W7dxQ3cLwpmLOn0m51Fp\nPIZ44zYK8R6fu4+/sSrlfaIg86Ugeufp6YNxyNROKxUGza5vDIu5OftwWtBeg+UK\nZ8lLWNdX6pp7WMujmF3H1DrkBbauYMUKZ4UxUYtelgHERMePIxwb\n-----END RSA PRIVATE KEY-----"
                    }
                  }
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "false"
          containerImage: quay.io/fujitsu/fujitsu-enterprise-postgres-operator@sha256:6b6ffb32a23a386cc4ea5cf05e92809ebc3774cda1d3df0044ce2d5ee5c3e1a8
          createdAt: "2023-09-12"
          description: OpenShift Operator for Fujitsu Enterprise Postgres
          olm.skipRange: <5.1.7
          operators.operatorframework.io/builder: operator-sdk-v1.25.4-ocp
          operators.operatorframework.io/internal-objects: '["fepautoscales.fep.fujitsu.io","fepconfigs.fep.fujitsu.io","fepusers.fep.fujitsu.io","fepcerts.fep.fujitsu.io","fepvolumes.fep.fujitsu.io","fepbackups.fep.fujitsu.io"]'
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          support: pgtechenquiry@fast.au.fujitsu.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: FEPAction
            name: fepactions.fep.fujitsu.io
            version: v1
          - kind: FEPAutoscale
            name: fepautoscales.fep.fujitsu.io
            version: v1
          - kind: FEPBackup
            name: fepbackups.fep.fujitsu.io
            version: v1
          - kind: FEPCert
            name: fepcerts.fep.fujitsu.io
            version: v1
          - kind: FEPCluster
            name: fepclusters.fep.fujitsu.io
            version: v2
          - kind: FEPConfig
            name: fepconfigs.fep.fujitsu.io
            version: v1
          - kind: FEPExporter
            name: fepexporters.fep.fujitsu.io
            version: v1
          - kind: FEPLogging
            name: feploggings.fep.fujitsu.io
            version: v1
          - kind: FEPPgpool2Cert
            name: feppgpool2certs.fep.fujitsu.io
            version: v1
          - kind: FEPPgpool2
            name: feppgpool2s.fep.fujitsu.io
            version: v1
          - kind: FEPRestore
            name: feprestores.fep.fujitsu.io
            version: v1
          - kind: FEPUpgrade
            name: fepupgrades.fep.fujitsu.io
            version: v1
          - kind: FEPUser
            name: fepusers.fep.fujitsu.io
            version: v1
          - kind: FEPVolume
            name: fepvolumes.fep.fujitsu.io
            version: v1
        description: "Fujitsu Enterprise Postgres 15 delivers an enterprise-grade
          PostgreSQL on OpenShift Container Platform.\n\nThis solution provides the
          flexibility of a hybrid cloud solution while delivering an enhanced distribution
          of PostgreSQL to support enterprise-level workloads and provide improved
          deployment and management, availability, performance, data governance and
          security.  \n\nAvailable as a multi-architecture container built for both
          amd64, s390x and ppc64le.\n\nThe download and Use of the Product is strictly
          subject to the terms of the End User License Agreement with Fujitsu Limited
          found at https://www.fast.fujitsu.com/fujitsu-enterprise-postgres-license-agreements.
          Where the Product that has been embedded as a whole or part into a third
          party program, only Authorised Customers may download and use the Product.\n"
        displayName: Fujitsu Enterprise Postgres Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - Fujitsu
        - fep
        links:
        - name: Fujitsu Enterprise Postgres
          url: https://www.postgresql.fastware.com/
        maintainers:
        - email: pgtechenquiry@au.fujitsu.com
          name: Fujitsu
        maturity: stable
        provider:
          name: Fujitsu
          url: https://www.postgresql.fastware.com/
        relatedImages:
        - quay.io/fujitsu/fujitsu-enterprise-postgres-exporter@sha256:63368e2e057387e7e281afebcea9c491ec4fd90c719f792557667a277ffe1072
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-backup@sha256:4359f12dbccd66a0d7b2ef8b553e8122c64db2c34acb179519bf2f30f1ab0bbe
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-pgpool2@sha256:8bf6989725663cb1f4a4a7ce2f319801ed9386ca99aad09644d93f88390c0f24
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-restore@sha256:ad5e1896216f68c2d7a3aa32cdce75c4ab76b419fe52b019f4e0d77bea1f89fd
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-pgpool2@sha256:a4f059404c649c96bbd692d1c579d937b4eb246b5205565fc88ce11042633e79
        - quay.io/fujitsu/fujitsu-enterprise-postgres-fluentd@sha256:a5f5353fd4a66b99683635a1bb117c0cd566a900f83d52f65536bc7b1d7c7a2f
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-upgrade@sha256:6dae7c8eb44e0014e47b002460869cba213ce465f5e31a3b703e4e8a1272d00c
        - quay.io/fujitsu/fujitsu-enterprise-postgres-cronjob@sha256:7dc349dacb3aea9a836db40e0827155df39756c7fe3a523c05ed46a9c5514f2c
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-server@sha256:75ff0e603f98f9ca515b245e642cc34e463f2db50298c0f1eaf82876657dafec
        - quay.io/fujitsu/fujitsu-enterprise-postgres-operator@sha256:6b6ffb32a23a386cc4ea5cf05e92809ebc3774cda1d3df0044ce2d5ee5c3e1a8
        - quay.io/fujitsu/fujitsu-enterprise-postgres-fluentbit@sha256:7f791b5a0df90fd89b83abb973ec95d5741899c9bb271d452d30bfac185185cb
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-backup@sha256:0051a05af956cbc9b9ae1eb6b0014291fd6210f9127a6d7ec1ec5e73d68a45ff
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-exporter@sha256:1723eb674319ae28f65e3b175cee1317d9474bbde51a50f7bb662add811812a1
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-pgpool2@sha256:942e41d3c42261cffe67bb3202dd688fdd83f26a8c4dfbee9d39c8892be8c051
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-restore@sha256:f35b9a96176d8905860d5ad859b06ce39637fcf562357822f8263ce6ef4f809c
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-upgrade@sha256:3c9a0a27c24ea1a0d862b6e9e38d2cb83575e32df7d7413c07c919ca6da62f11
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-server@sha256:399f60a29543cc609ce8f18d40da90d716bf43e0b0428121009ef11fd9ae2b1f
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-restore@sha256:990539446864b280e5c84aa4cf626d767fd1ca5cfa5fceed3555452138cbadc1
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-server@sha256:a38fea06de9d2f3382fa6ea7500ba393563a001a397582ff0d73c8a2ba216745
        - registry.connect.redhat.com/fujitsu-postgres/fujitsu-enterprise-postgres-operator-bundle@sha256:a277ed7be25798d22310b191bb1e783b7439fc8b78dd0ec30d73ba31d6058f32
        - quay.io/fujitsu/fujitsu-enterprise-postgres-utils@sha256:0643f0bf4c8d5aa7ed898840b1578b627adf90c129f96f21953f28c73dad0c65
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-backup@sha256:0eb3f39f564ac90e2a04191ccdc49badc1ef85296860ed7d1ff98e3ab32996c8
        version: 5.1.7
      entries:
      - name: fujitsu-enterprise-postgres-operator.v5.1.7
        version: 5.1.7
      name: stable
    defaultChannel: stable
    packageName: fujitsu-enterprise-postgres-operator
    provider:
      name: Fujitsu
      url: https://www.postgresql.fastware.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Eclipse Foundation
      provider-url: ""
    name: eclipse-che
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eclipse-che.v7.113.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "org.eclipse.che/v1",
                "kind": "CheCluster",
                "metadata": {
                  "name": "eclipse-che",
                  "namespace": "eclipse-che"
                },
                "spec": {
                  "auth": {
                    "identityProviderURL": "",
                    "oAuthClientName": "",
                    "oAuthSecret": ""
                  },
                  "database": {
                    "externalDb": false
                  },
                  "k8s": {
                    "ingressDomain": null,
                    "tlsSecretName": null
                  },
                  "metrics": {
                    "enable": true
                  },
                  "server": {
                    "externalDevfileRegistries": [
                      {
                        "url": "https://registry.devfile.io"
                      }
                    ],
                    "externalDevfileRegistry": true,
                    "externalPluginRegistry": true,
                    "workspaceNamespaceDefault": "<username>-che"
                  },
                  "storage": {
                    "pvcStrategy": "common"
                  }
                }
              },
              {
                "apiVersion": "org.eclipse.che/v2",
                "kind": "CheCluster",
                "metadata": {
                  "name": "eclipse-che",
                  "namespace": "eclipse-che"
                },
                "spec": {
                  "components": {
                    "devfileRegistry": {
                      "disableInternalRegistry": true,
                      "externalDevfileRegistries": [
                        {
                          "url": "https://registry.devfile.io"
                        }
                      ]
                    },
                    "pluginRegistry": {
                      "disableInternalRegistry": true
                    }
                  },
                  "containerRegistry": {},
                  "devEnvironments": {},
                  "gitServices": {},
                  "networking": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/eclipse/che-operator@sha256:5d52236cfb5dd97b539737092458535d98386c083c17640894465aa065dea06d
          createdAt: "2025-12-19T05:37:01Z"
          description: A Kube-native development solution that delivers portable and
            collaborative developer workspaces.
          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: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/eclipse-che/che-operator
          support: Eclipse Foundation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              The `CheCluster` custom resource allows defining and managing Eclipse Che server installation.
              Based on these settings, the  Operator automatically creates and maintains several ConfigMaps:
              `che`, `plugin-registry` that will contain the appropriate environment variables
              of the various components of the installation. These generated ConfigMaps must NOT be updated manually.
            displayName: Eclipse Che instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v2
          - description: The `CheCluster` custom resource allows defining and managing
              a Che server installation
            displayName: Eclipse Che instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v1
        description: |
          A collaborative Kubernetes-native development solution that delivers OpenShift workspaces and in-browser IDE for rapid cloud application development.
          This operator installs the Plugin and Devfile registries, Dashboard, Gateway and the Eclipse Che server, and configures these services.
          OpenShift OAuth is used directly for authentication. TLS mode is on.

          ## How to Install
          Press the **Install** button, choose the channel and the upgrade strategy, and wait for the **Installed** Operator status.
          When the operator is installed, create a new Custom Resource (CR) of Kind CheCluster (click the **Create New** button).
          The CR spec contains all defaults. You can start using Eclipse Che when the CR status is set to **Available**, and you see a URL to Eclipse Che.

          ## Defaults
          By default, the operator deploys Eclipse Che with:
          * 10Gi storage
          * Auto-generated passwords
          * Bundled Plugin and Devfile registries

          Use `oc edit checluster/eclipse-che -n eclipse-che` to update Eclipse Che default installation options.
          See more in the [Installation guide](https://www.eclipse.org/che/docs/stable/administration-guide/configuring-che/).

          ### Certificates
          Operator uses a default router certificate to secure Eclipse Che routes.
          Follow the [guide](https://www.eclipse.org/che/docs/stable/administration-guide/importing-untrusted-tls-certificates/)
          to import certificates into Eclipse Che.
        displayName: Eclipse Che
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eclipse che
        - workspaces
        - devtools
        - developer
        - ide
        - java
        links:
        - name: Product Page
          url: https://www.eclipse.org/che
        - name: Documentation
          url: https://www.eclipse.org/che/docs
        - name: Operator GitHub Repo
          url: https://github.com/eclipse-che/che-operator
        maintainers:
        - email: abazko@redhat.com
          name: Anatolii Bazko
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Eclipse Foundation
        relatedImages:
        - quay.io/eclipse/che-operator@sha256:5d52236cfb5dd97b539737092458535d98386c083c17640894465aa065dea06d
        - quay.io/brancz/kube-rbac-proxy@sha256:738c854322f56d63ebab75de5210abcdd5e0782ce2d30c0ecd4620f63b24694d
        - quay.io/che-incubator/che-code@sha256:6b4ff425d9fd68f6121def1483ac374aba0cf3e1669d9d2b6628100a128292b4
        - quay.io/che-incubator/che-code-server@sha256:2093baab1a73e9682f5892f80582481abfbef99d744472ee6098e2d82fb2899f
        - quay.io/oauth2-proxy/oauth2-proxy@sha256:dcb6ff8dd21bf3058f6a22c6fa385fa5b897a9cd3914c88a2cc2bb0a85f8065d
        - quay.io/community-operator-pipeline-prod/eclipse-che@sha256:bac399fad1dff8d939d9f5498c30c7e1291733643b912ac3c0c10ca6605f23bb
        - quay.io/eclipse/che-server@sha256:dc3d452108c4f02b9c07717aeb0510652fae25ef1ee3de49e7d5d2069e9cc4e1
        - quay.io/devfile/universal-developer-image@sha256:69ed3c6d08d37134b7b6651fd5b9666a1e5e2f6d602285a8e40512cbb1615f6a
        - quay.io/eclipse/che-plugin-registry@sha256:e941647b1622c586bb9f60b931dbf28a290308757d2e8529eceecae0d80625d6
        - quay.io/che-incubator/configbump@sha256:99253a669c76fe53d05801e1dfaa03095e55e6d49919183e30386811e0e48bbb
        - quay.io/che-incubator/header-rewrite-proxy@sha256:bd7873b8feef35f218f54c6251ea224bea2c8bf202a328230019a0ba2941245d
        - quay.io/eclipse/che-dashboard@sha256:36e4af6d9aeb8c59a1c7c372a3767f59af8785790df2a00aadd6fd3187671fda
        - quay.io/che-incubator/che-idea-dev-server@sha256:ee6a854a7a9af9381551802b6848f82f11b37443552ad347bffe5bd3032e2f12
        - quay.io/che-incubator/che-code-server@sha256:357c95297ce2182ef0a792038ea122075fdeb6c8e835099be09e8d4f105eac2a
        - quay.io/eclipse/che--traefik@sha256:4cf907247939b5d20bf4eff73abd21cb413c339600dde76dbc94a874b2578a27
        - quay.io/eclipse/che-tls-secret-creator@sha256:cbb2fd8ce903d822377f2093af1aa2543672ed8c516d607a7a9dd857379dac5d
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:354fc75eb7a21a934381e93d03ef9d42bc2c8ae8989fdcacecfb39b863b96ced
        - quay.io/openshift/origin-oauth-proxy@sha256:870bfe92a4663720775c0dfe5728ecbb10a17f0644eef5f57276ec135034c6a1
        - quay.io/che-incubator/che-code-sshd@sha256:82a4ef390d7d0bc8ebd0cbb7206707ae3ab68e9936b531c3c716cce46fca404a
        - quay.io/che-incubator/che-code@sha256:69822e636795efde3655c279e045f48a59333cb0fc83a0694cf8b0dec2b875e2
        version: 7.113.0
      entries:
      - name: eclipse-che.v7.113.0
        version: 7.113.0
      - name: eclipse-che.v7.112.0
        version: 7.112.0
      - name: eclipse-che.v7.111.0
        version: 7.111.0
      - name: eclipse-che.v7.110.0
        version: 7.110.0
      - name: eclipse-che.v7.109.0
        version: 7.109.0
      - name: eclipse-che.v7.108.0
        version: 7.108.0
      - name: eclipse-che.v7.106.0
        version: 7.106.0
      - name: eclipse-che.v7.105.0
        version: 7.105.0
      - name: eclipse-che.v7.104.0
        version: 7.104.0
      - name: eclipse-che.v7.103.0
        version: 7.103.0
      - name: eclipse-che.v7.102.0
        version: 7.102.0
      - name: eclipse-che.v7.101.0
        version: 7.101.0
      - name: eclipse-che.v7.100.0
        version: 7.100.0
      - name: eclipse-che.v7.99.0
        version: 7.99.0
      - name: eclipse-che.v7.98.0
        version: 7.98.0
      - name: eclipse-che.v7.97.0
        version: 7.97.0
      - name: eclipse-che.v7.96.0
        version: 7.96.0
      - name: eclipse-che.v7.95.0
        version: 7.95.0
      - name: eclipse-che.v7.94.0
        version: 7.94.0
      - name: eclipse-che.v7.93.0
        version: 7.93.0
      - name: eclipse-che.v7.92.0
        version: 7.92.0
      - name: eclipse-che.v7.91.0
        version: 7.91.0
      - name: eclipse-che.v7.90.0
        version: 7.90.0
      - name: eclipse-che.v7.89.0
        version: 7.89.0
      - name: eclipse-che.v7.88.0
        version: 7.88.0
      - name: eclipse-che.v7.87.0
        version: 7.87.0
      - name: eclipse-che.v7.86.0
        version: 7.86.0
      - name: eclipse-che.v7.85.0
        version: 7.85.0
      - name: eclipse-che.v7.84.0
        version: 7.84.0
      - name: eclipse-che.v7.83.0
        version: 7.83.0
      - name: eclipse-che.v7.82.0
        version: 7.82.0
      - name: eclipse-che.v7.81.0
        version: 7.81.0
      - name: eclipse-che.v7.80.0
        version: 7.80.0
      - name: eclipse-che.v7.79.0
        version: 7.79.0
      - name: eclipse-che.v7.78.0
        version: 7.78.0
      - name: eclipse-che.v7.77.0
        version: 7.77.0
      - name: eclipse-che.v7.76.0
        version: 7.76.0
      - name: eclipse-che.v7.75.0
        version: 7.75.0
      - name: eclipse-che.v7.74.0
        version: 7.74.0
      - name: eclipse-che.v7.73.0
        version: 7.73.0
      - name: eclipse-che.v7.72.0
        version: 7.72.0
      - name: eclipse-che.v7.71.0
        version: 7.71.0
      - name: eclipse-che.v7.70.0
        version: 7.70.0
      - name: eclipse-che.v7.69.0
        version: 7.69.0
      - name: eclipse-che.v7.68.0
        version: 7.68.0
      - name: eclipse-che.v7.67.0
        version: 7.67.0
      - name: eclipse-che.v7.66.0
        version: 7.66.0
      - name: eclipse-che.v7.65.0
        version: 7.65.0
      - name: eclipse-che.v7.64.0
        version: 7.64.0
      - name: eclipse-che.v7.63.0
        version: 7.63.0
      - name: eclipse-che.v7.62.0
        version: 7.62.0
      - name: eclipse-che.v7.61.0
        version: 7.61.0
      - name: eclipse-che.v7.60.1
        version: 7.60.1
      - name: eclipse-che.v7.60.0
        version: 7.60.0
      - name: eclipse-che.v7.59.0
        version: 7.59.0
      - name: eclipse-che.v7.58.0
        version: 7.58.0
      - name: eclipse-che.v7.57.0
        version: 7.57.0
      - name: eclipse-che.v7.56.0
        version: 7.56.0
      - name: eclipse-che.v7.55.0
        version: 7.55.0
      - name: eclipse-che.v7.54.0
        version: 7.54.0
      - name: eclipse-che.v7.53.0
        version: 7.53.0
      - name: eclipse-che.v7.52.0
        version: 7.52.0
      - name: eclipse-che.v7.51.0
        version: 7.51.0
      - name: eclipse-che.v7.50.0
        version: 7.50.0
      - name: eclipse-che.v7.49.0
        version: 7.49.0
      - name: eclipse-che.v7.48.1
        version: 7.48.1
      - name: eclipse-che.v7.47.0
        version: 7.47.0
      - name: eclipse-che.v7.46.0
        version: 7.46.0
      - name: eclipse-che.v7.45.0
        version: 7.45.0
      - name: eclipse-che.v7.44.0
        version: 7.44.0
      - name: eclipse-che.v7.42.0
        version: 7.42.0
      - name: eclipse-che.v7.41.2
        version: 7.41.2
      - name: eclipse-che.v7.41.1
        version: 7.41.1
      - name: eclipse-che.v7.41.0
        version: 7.41.0
      - name: eclipse-che.v7.40.2
        version: 7.40.2
      - name: eclipse-che.v7.40.1
        version: 7.40.1
      name: stable
    defaultChannel: stable
    packageName: eclipse-che
    provider:
      name: Eclipse Foundation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: dapr.io
      provider-url: https://dapr.io
    name: dapr-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dapr-kubernetes-operator.v0.0.12
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.dapr.io/v1alpha1",
                "kind": "DaprControlPlane",
                "metadata": {
                  "name": "dapr-control-plane",
                  "namespace": "dapr-system"
                },
                "spec": {
                  "values": {}
                }
              },
              {
                "apiVersion": "operator.dapr.io/v1alpha1",
                "kind": "DaprCruiseControl",
                "metadata": {
                  "name": "dapr-cruise-control",
                  "namespace": "dapr-system"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.dapr.io/v1alpha1",
                "kind": "DaprInstance",
                "metadata": {
                  "name": "dapr-instance",
                  "namespace": "dapr-system"
                },
                "spec": {
                  "values": {}
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          containerImage: docker.io/daprio/kubernetes-operator@sha256:da599a273943bf28812314a11df1052411237dd1887edf0fe6104c5857f439b0
          createdAt: "2025-10-06T18:47:59Z"
          description: Dapr Control Plane Operator
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/dapr/kubernetes-operator
          support: contact@dapr.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DaprControlPlane is the Schema for the Dapr ControlPlane
              API.
            displayName: DaprControlPlane
            kind: DaprControlPlane
            name: daprcontrolplanes.operator.dapr.io
            version: v1alpha1
          - kind: DaprCruiseControl
            name: daprcruiscontrols.operator.dapr.io
            version: v1alpha1
          - description: DaprInstance is the Schema for the Dapr Instance API.
            displayName: DaprInstance
            kind: DaprInstance
            name: daprinstances.operator.dapr.io
            version: v1alpha1
        description: Dapr Control Plane Operator
        displayName: Dapr Control Plane Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dapr
        links:
        - name: Dapr
          url: https://dapr.io
        - name: Dapr Kubernetes Operator
          url: https://github.com/dapr/kubernetes-operator
        maintainers:
        - email: lburgazzoli@gmail.com
          name: Luca Burgazzoli
        - email: salaboy@gmail.com
          name: Mauricio Salatino
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: dapr.io
          url: https://dapr.io
        relatedImages:
        - docker.io/daprio/kubernetes-operator@sha256:da599a273943bf28812314a11df1052411237dd1887edf0fe6104c5857f439b0
        - quay.io/community-operator-pipeline-prod/dapr-kubernetes-operator@sha256:3c1487eb881cdc825bd53f0f51eb92b180e8dafcae92a62dc616f1402625124b
        version: 0.0.12
      entries:
      - name: dapr-kubernetes-operator.v0.0.12
        version: 0.0.12
      - name: dapr-kubernetes-operator.v0.0.11
        version: 0.0.11
      - name: dapr-kubernetes-operator.v0.0.10
        version: 0.0.10
      - name: dapr-kubernetes-operator.v0.0.9
        version: 0.0.9
      - name: dapr-kubernetes-operator.v0.0.8
        version: 0.0.8
      - name: dapr-kubernetes-operator.v0.0.6
        version: 0.0.6
      - name: dapr-kubernetes-operator.v0.0.5
        version: 0.0.5
      - name: dapr-kubernetes-operator.v0.0.4
        version: 0.0.4
      - name: dapr-kubernetes-operator.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: dapr-kubernetes-operator
    provider:
      name: dapr.io
      url: https://dapr.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: raftt.io
      provider-url: https:///www.raftt.io
    name: raftt-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: raftt-operator.v1.25.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "raftt.io/v1beta1",
                "kind": "Raftt",
                "metadata": {
                  "name": "raftt",
                  "namespace": "raftt"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: quay.io/raftt/raftt-operator@sha256:73edc6d8416ee3815d7e59bb26c33e3d35d97cf1ceadd8fa457041be13e175ca
          createdAt: "2025-04-29T11:31:02Z"
          description: This operator installs and configures a Raftt instance
          features.operators.openshift.io/disconnected: "false"
          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"
          marketplace.openshift.io/remote-workflow: https://marketplace.redhat.com/en-us/operators/raftt-operator/pricing?utm_source=openshift_console
          marketplace.openshift.io/support-workflow: https://marketplace.redhat.com/en-us/operators/raftt-operator/support?utm_source=openshift_console
          operatorframework.io/suggested-namespace: raftt
          operators.openshift.io/valid-subscription: Raftt commercial license
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Raftt systems
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Raftt represents an installation of Raftt cluster controller
              & supporting services
            displayName: Raftt
            kind: Raftt
            name: raftts.raftt.io
            version: v1beta1
        description: |
          Raftt allows fast code iterations and debugging over complex Kubernetes environments.
          Raftt provides a localhost development experience for applications running on Kubernetes.
          You can use Raftt to orchestrate the environments for you, so you get the optimal development experience -
          iterations that take under a second, OOTB debugging of your code as it runs in the cluster, easy introspection, and more.
        displayName: Raftt
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dx
        - development
        - debugging
        links:
        - name: Raftt Operator
          url: https://raftt-operator.domain
        - name: Documentation
          url: https://docs.raftt.io
        maintainers:
        - email: ops@raftt.io
          name: Raftt
        maturity: alpha
        provider:
          name: raftt.io
          url: https:///www.raftt.io
        relatedImages:
        - quay.io/raftt/raftt-operator@sha256:73edc6d8416ee3815d7e59bb26c33e3d35d97cf1ceadd8fa457041be13e175ca
        - registry.connect.redhat.com/raftt/operator-bundle@sha256:7108686c168c35acd996e61a981bdd885b454837cf6823a48a28cdeeebbb0af9
        version: 1.25.2
      entries:
      - name: raftt-operator.v1.25.2
        version: 1.25.2
      name: alpha
    defaultChannel: alpha
    packageName: raftt-operator
    provider:
      name: raftt.io
      url: https:///www.raftt.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio Project
      provider-url: ""
    name: apicurito
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        - quay.io/apicurio/apicurito-operator:1.0.3
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: 1.0.x
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        - quay.io/apicurio/apicurito-operator:1.0.3
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: candidate
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/apicurio/apicurito-operator:1.0.3
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: latest
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/apicurio/apicurito-operator:1.0.3
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: latest
    packageName: apicurito
    provider:
      name: Apicurio Project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: www.redhat.com
    name: dpu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dpu-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "config.openshift.io/v1",
                "kind": "DpuOperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dpu-operator",
                    "app.kubernetes.io/instance": "dpuoperatorconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dpuoperatorconfig",
                    "app.kubernetes.io/part-of": "dpu-operator"
                  },
                  "name": "dpuoperatorconfig-sample"
                },
                "spec": {
                  "mode": "host"
                }
              },
              {
                "apiVersion": "config.openshift.io/v1",
                "kind": "ServiceFunctionChain",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dpu-operator",
                    "app.kubernetes.io/instance": "servicefunctionchain-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "servicefunctionchain",
                    "app.kubernetes.io/part-of": "dpu-operator"
                  },
                  "name": "servicefunctionchain-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-08-12T16:14:09Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-dpu-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DpuOperatorConfig is the Schema for the dpuoperatorconfigs
              API
            displayName: Dpu Operator Config
            kind: DpuOperatorConfig
            name: dpuoperatorconfigs.config.openshift.io
            version: v1
          - description: ServiceFunctionChain is the Schema for the servicefunctionchains
              API
            displayName: Service Function Chain
            kind: ServiceFunctionChain
            name: servicefunctionchains.config.openshift.io
            version: v1
        description: This operator will manage and configure data processing unit
          (DPUs) to be used in accelerating/offloading k8s networking functions
        displayName: DPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dpu
        - dpu-operator
        - ipu
        links:
        - name: Dpu Operator
          url: https://github.com/openshift/dpu-operator
        maintainers:
        - email: wizhao@redhat.com
          name: William Zhao
        - email: bnemeth@redhat.com
          name: Balazs Nemeth
        maturity: alpha
        provider:
          name: Red Hat
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-dpu-rhel9-operator@sha256:82ea8006f9d969c4b6f9e52d75ff81d7129ef0bee37ad7056769b485c0760aa9
        - registry.redhat.io/openshift4/ose-dpu-operator-bundle@sha256:2b968beb8b658b8f16257842d2594f4489116adeb76d5965b7642c982ed9d18c
        - registry.redhat.io/openshift4/ose-dpu-daemon-rhel9@sha256:7421edb9be136cc7102bbe8f263108fde6cce3ed411afecc241d8551ad56961a
        version: 4.20.0-202512081147
      entries:
      - name: dpu-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: dpu-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: dpu-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: dpu-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: dpu-operator.v4.20.0-202511040554
        version: 4.20.0-202511040554
      - name: dpu-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: dpu-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: dpu-operator
    provider:
      name: Red Hat
      url: www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Marketplace
      provider-url: ""
    name: ibm-metrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-metrics-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MarketplaceConfig",
                "metadata": {
                  "name": "marketplaceconfig"
                },
                "spec": {
                  "features": {
                    "deployment": true,
                    "meterDefinitionCatalogServer": false,
                    "registration": true
                  },
                  "installIBMCatalogSource": true,
                  "isDisconnected": false,
                  "license": {
                    "accept": false
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterBase",
                "metadata": {
                  "name": "meterbase"
                },
                "spec": {
                  "enabled": true,
                  "prometheus": {
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      },
                      "requests": {
                        "cpu": "1",
                        "memory": "1G"
                      }
                    },
                    "storage": {
                      "size": "20Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterReport",
                "metadata": {
                  "name": "example-meterreport"
                },
                "spec": {
                  "endTime": "2020-08-05T00:00:00Z",
                  "prometheusService": {
                    "name": "rhm-prometheus-meterbase",
                    "namespace": "openshift-redhat-marketplace",
                    "targetPort": "rbac"
                  },
                  "startTime": "2020-08-04T00:00:00Z"
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "example-meterdefinition-4"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "meterdefinition-sample"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
          createdAt: "2025-12-17T09:32:46Z"
          description: The IBM Metrics Operator provides workload metering and reporting
            for IBM and Red Hat Marketplace customers.
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MarketplaceConfig is configuration manager for our Red Hat Marketplace controllers
              By installing this product you accept the license terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterBase is the resource that sets up Metering for Red Hat Marketplace.
              This is an internal resource not meant to be modified directly.
            displayName: Meter Base
            kind: MeterBase
            name: meterbases.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterDefinition defines the meter workloads used to enable pay for
              use billing.
            displayName: Meter Definition
            kind: MeterDefinition
            name: meterdefinitions.marketplace.redhat.com
            version: v1beta1
          - kind: MeterReport
            name: meterreports.marketplace.redhat.com
            version: v1alpha1
        description: "The IBM Metrics Operator provides workload metering and reporting
          for IBM Software Central and Red Hat Marketplace customers.\n### **Important
          Note**\nA set of instructions for onboarding is provided here. For more
          detailed onboarding instructions or information about what is installed
          please visit [swc.saas.ibm.com](https://swc.saas.ibm.com).\n\nUsage metrics
          may be monitored through [https://swc.saas.ibm.com](https://swc.saas.ibm.com)
          with only IBM Metrics Operator and a Red Hat Marketplace account.\n\n###
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n### Prerequisites\n1. Installations are required
          to [enable monitoring for user-defined projects](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)
          as the Prometheus provider.\n2. Edit the cluster-monitoring-config ConfigMap
          object:\n\n   ```sh\n   $ oc -n openshift-monitoring edit configmap cluster-monitoring-config\n
          \   ```\n\n3. Add enableUserWorkload: true under data/config.yaml:\n  \n
          \   ```sh\n    apiVersion: v1\n    kind: ConfigMap\n    metadata:\n      name:
          cluster-monitoring-config\n        namespace: openshift-monitoring\n    data:\n
          \     config.yaml: |\n        enableUserWorkload: true\n    ```\n\n4. Configure
          the user-workload-monitoring-config ConfigMap object:\n\n    ```sh\n    $
          oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config\n
          \   ```\n\n5. Configure a minimum retention time of 168h and minimum storage
          capacity of 40Gi\n  \n    ```sh\n    apiVersion: v1\n    kind: ConfigMap\n
          \   metadata:\n      name: user-workload-monitoring-config\n      namespace:
          openshift-user-workload-monitoring\n\n    data:\n      config.yaml: |\n
          \       prometheus:\n          retention: 168h\n          volumeClaimTemplate:\n
          \           spec:\n              resources:\n                requests:\n
          \                 storage: 40Gi\n    ```\n\n### Resources Required\n\nMinimum
          system resources required:\n\n| Operator                | Memory (MB) |
          CPU (cores) | Disk (GB) | Nodes |\n| ----------------------- | -----------
          | ----------- | --------- | ----- |\n| **Metrics**   |        750  |     0.25
          \   | 3x1       |    3  |\n| **Deployment** |        250  |     0.25    |
          -         |    1  |\n\n| Prometheus Provider  | Memory (GB) | CPU (cores)
          | Disk (GB) | Nodes |\n| --------- | ----------- | ----------- | ---------
          | ----- |\n| **[Openshift User Workload Monitoring](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)**
          |          1  |     0.1       | 2x40        |   2    |\n\nMultiple nodes
          are required to provide pod scheduling for high availability for IBM Metrics
          Operator Data Service and Prometheus.\n\nThe IBM Metrics Operator automatically
          creates 3 x 1Gi PersistentVolumeClaims to store reports as part of the data
          service, with _ReadWriteOnce_ access mode. Te PersistentVolumeClaims are
          automatically created by the ibm-metrics-operator after creating a `redhat-marketplace-pull-secret`
          and accepting the license in `marketplaceconfig`.\n\n| NAME                                |
          CAPACITY | ACCESS MODES |\n| ----------------------------------- | --------
          | ------------ |\n| rhm-data-service-rhm-data-service-0 | 1Gi | RWO |\n|
          rhm-data-service-rhm-data-service-1 | 1Gi | RWO |\n| rhm-data-service-rhm-data-service-2
          | 1Gi | RWO |\n\n### Supported Storage Providers\n\n- OpenShift Container
          Storage / OpenShift Data Foundation version 4.x, from version 4.2 or higher\n-
          IBM Cloud Block storage and IBM Cloud File storage\n- IBM Storage Suite
          for IBM Cloud Paks:\n  - File storage from IBM Spectrum Fusion/Scale \n
          \ - Block storage from IBM Spectrum Virtualize, FlashSystem or DS8K\n- Portworx
          Storage, version 2.5.5 or above\n- Amazon Elastic File Storage\n- Azure
          Disk Storage (disk.csi.azure.com)\n\n#### Known Problematic Storage Providers\n\n-
          Azure File Storage (file.csi.azure.com)\n\n### Access Modes required\n\n
          - ReadWriteOnce (RWO)\n\n### Provisioning Options supported\n\nChoose one
          of the following options to provision storage for the ibm-metrics-operator
          data-service\n\n#### Dynamic provisioning using a default StorageClass\n
          \  - A StorageClass is defined with a `metadata.annotations: storageclass.kubernetes.io/is-default-class:
          \"true\"`\n   - PersistentVolumes will be provisioned automatically for
          the generated PersistentVolumeClaims\n--- \n#### Manually create each PersistentVolumeClaim
          with a specific StorageClass\n   - Must be performed before creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`. Otherwise, the automatically
          generated PersistentVolumeClaims are immutable.\n```\napiVersion: v1\nkind:
          PersistentVolumeClaim\nmetadata:\n  labels:\n    app: rhm-data-service\n
          \ name: rhm-data-service-rhm-data-service-0\n  namespace: ibm-software-central\nspec:\n
          \ storageClassName: rook-cephfs\n  accessModes:\n  - ReadWriteOnce\n  resources:\n
          \   requests:\n      storage: 1Gi\n```\n---\n#### Manually provision each
          PersistentVolume for the generated PersistentVolumeClaims with a specific
          StorageClass\n  - May be performed before or after creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`.  \n```\napiVersion: v1\nkind:
          PersistentVolume\nmetadata:\n  name: rhm-data-service-rhm-data-service-0\nspec:\n
          \ csi:\n    driver: rook-ceph.cephfs.csi.ceph.com\n    volumeHandle: rhm-data-service-rhm-data-service-0\n
          \ capacity:\n    storage: 1Gi\n  accessModes:\n    - ReadWriteOnce\n  persistentVolumeReclaimPolicy:
          Delete\n  storageClassName: rook-cephfs\n  volumeMode: Filesystem\n  claimRef:\n
          \   kind: PersistentVolumeClaim\n    namespace: ibm-software-central\n    name:
          rhm-data-service-rhm-data-service-0\n```\n\n### Kyverno Policies\n\nThe
          IBM Metrics Operator makes a best effort to comply with the Kyverno policies
          defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Metrics Operator is not replicated\n  - Service uptime is not considered
          critial, and can be rescheduled\n- metric-state is not replicated\n  - Service
          uptime is not considered critial, and can be rescheduled\n\n### Installation\n1.
          Create or get your [pull secret](https://swc.saas.ibm.com/en-us/documentation/clusters#get-pull-secret).\n2.
          Install the IBM Metrics Operator\n3. Create a Kubernetes secret in the installed
          namespace with the name `redhat-marketplace-pull-secret` and key `PULL_SECRET`
          with the value of the pull secret.\n    ```sh\n    # Replace ${PULL_SECRET}
          with your pull secret\n    oc create secret generic redhat-marketplace-pull-secret
          -n ibm-software-central --from-literal=PULL_SECRET=${PULL_SECRET}\n    ```\n4.
          Use of the platform is governed by the:\n\n    [IBM Cloud Services Agreement](https://www.ibm.com/support/customer/csol/terms/?id=Z126-6304_WS&_ga=2.116312197.2046730452.1684328846-812467790.1684328846)
          (or other base agreement between you and IBM such as a [Passport Advantage
          Agreement](https://www.ibm.com/software/passportadvantage/pa_agreements.html?_ga=2.116312197.2046730452.1684328846-812467790.1684328846))
          and the [Service Description for the Red Hat Marketplace](https://www.ibm.com/support/customer/csol/terms/?id=i126-8719&_ga=2.83289621.2046730452.1684328846-812467790.1684328846).\n
          \   \n5. Update MarketplaceConfig to accept the license.\n    ```\n    oc
          patch marketplaceconfig marketplaceconfig -n ibm-software-central --type='merge'
          -p '{\"spec\": {\"license\": {\"accept\": true}}}'\n    ```\n6. Install
          the pull secret as a global pull secret on the cluster.\n\n    These steps
          require `oc`, `jq`, and `base64` to be available on your machine.\n\n    ```sh\n
          \   # Create the docker pull secret file using your pull secret.\n    #
          Store it in a file called entitledregistryconfigjson.\n    oc create secret
          docker-registry entitled-registry --docker-server=registry.marketplace.redhat.com
          --docker-username \"cp\" --docker-password \"${PULL_SECRET}\" --dry-run=client
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > entitledregistryconfigjson\n
          \   # Get the current global secrets on the cluster and store it as a file
          named dockerconfigjson\n    oc get secret pull-secret -n openshift-config
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > dockerconfigjson\n
          \   # Merge the two dockerconfigs together into a file called dockerconfigjson-merged.\n
          \   jq -s '.[0] * .[1]' dockerconfigjson entitledregistryconfigjson > dockerconfigjson-merged\n
          \   # Set the cluster's dockerconfig file to the new merged version.\n    oc
          set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=dockerconfigjson-merged\n
          \   ```\n  7. (Optional) Your IBM product may have installed IBM Metrics
          Operator using an `ibm-entitlement-key` for authentication to IBM Software
          Central. To authorize the automatic creation of an IBM Software Central
          account for the IBM account owning the `ibm-entitlement-key`\n      ```\n
          \     oc patch marketplaceconfig marketplaceconfig -n ibm-software-central
          --type='merge' -p '{\"spec\": {\"authorizeAccountCreation\": true}}'\n      ```\n\n###
          Why is a global pull secret required?\nIn order to successfully install
          the products hosted by the container image registry, you will need to make
          the pull secret available across the cluster. This can be achieved by applying
          the pull as a [global pull secret](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html#images-update-global-pull-secret_using-image-pull-secrets).
          For alternative approaches, please see the official OpenShift [documentation](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html).\n\n\n###
          SecurityContextConstraints requirements\n\nThe Operators and their components
          support running under the OpenShift Container Platform default restricted
          and restricted-v2 security context constraints.\n\n### Installation Namespace
          and ClusterRoleBinding requirements\n\nThe IBM Metrics Operator components
          require specific ClusterRoleBindings.\n- The metric-state component requires
          a ClusterRoleBinding for the the `view` ClusterRole.\n  - Ability to read
          non-sensitive CustomResources. \n  - The `view` ClusterRole dynamically
          adds new CustomResourceDefinitions.\n- The operator & reporter component
          requires a ClusterRoleBinding for the the `cluster-monitoring-view` ClusterRole.\n
          \ - Ability to view Prometheus metrics. \n  - The underlying ClusterRole
          RBAC often updated between OpenShift versions.\n\nDue to limitations of
          Operator Lifecycle Manager (OLM), this ClusterRoleBinding can not be provided
          dynamically for arbitrary installation target namespaces.\n\nA static ClusterRoleBinding
          is included for installation to the default namespace of `ibm-software-central`,
          and namespaces `openshift-redhat-marketplace`,  `redhat-marketplace`, `ibm-common-services`.\n\nTo
          create the ClusterRoleBindings for installation to an alternate namespace\n```\noc
          project INSTALL-NAMESPACE\noc adm policy add-cluster-role-to-user view -z
          ibm-metrics-operator-metric-state\noc adm policy add-cluster-role-to-user
          cluster-monitoring-view -z ibm-metrics-operator-controller-manager,ibm-metrics-operator-reporter\n```\n\n###
          Metric State scoping requirements\nThe metric-state Deployment obtains `get/list/watch`
          access to metered resources via the `view` ClusterRole. For operators deployed
          using Operator Lifecycle Manager (OLM), permissions are added to `clusterrole/view`
          dynamically via a generated and annotated `-view` ClusterRole. If you wish
          to meter an operator, and its Custom Resource Definitions (CRDs) are not
          deployed through OLM, one of two options are required\n1. Add the following
          label to a clusterrole that has get/list/watch access to your CRD: `rbac.authorization.k8s.io/aggregate-to-view:
          \"true\"`, thereby dynamically adding it to `clusterrole/view`\n2. Create
          a ClusterRole that has get/list/watch access to your CRD, and create a ClusterRoleBinding
          for the metric-state ServiceAccount\n\nAttempting to meter a resource with
          a MeterDefinition without the required permissions will log an `AccessDeniedError`
          in metric-state.\n\n### Disaster Recovery\n\nTo plan for disaster recovery,
          note the PhysicalVolumeClaims `rhm-data-service-rhm-data-service-N`. \n-
          In connected environments, MeterReport data upload attempts occur hourly,
          and are then removed from data-service. There is a low risk of losing much
          unreported data.\n- In an airgap environment, MeterReport data must be pulled
          from data-service and uploaded manually using [datactl](https://github.com/redhat-marketplace/datactl/).
          To prevent data loss in a disaster scenario, the data-service volumes should
          be considered in a recovery plan.\n\n### Subscription Config\n\nIt is possible
          to [configure](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md)
          how OLM deploys an Operator via the `config` field in the [Subscription](https://github.com/operator-framework/olm-book/blob/master/docs/subscriptions.md)
          object.\n\nThe IBM Metrics Operator will also read the `config` and append
          it to the operands. The primary use case is to control scheduling using
          [Tolerations](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/)
          and [NodeSelectors](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/).\n\nA
          limitation is that the `config` elements are only appended to the operands.
          The elements in the operands are not removed if the `config` is removed
          from the `Subscripion`. The operand must be modified manually, or deleted
          and recreated by the controller.\n\n### Cluster permission requirements\n\n|API
          group             |Resources              |Verbs                                     |\n|----------------------|-----------------------|------------------------------------------|\n|apps
          \                 |statefulsets           |get;list;watch                            |\n|authentication.k8s.io
          |tokenreviews           |create                                    |\n|authorization.k8s.io
          \ |subjectaccessreviews   |create                                    |\n|config.openshift.io
          \  |clusterversions        |get;list;watch                            |\n|marketplace.redhat.com|meterdefinitions
          \      |get;list;watch;create;update;patch;delete |\n|operators.coreos.com
          \ |clusterserviceversions |get;list;watch                            |\n|operators.coreos.com
          \ |subscriptions          |get;list;watch                            |\n|operators.coreos.com
          \ |operatorgroups         |get;list                                  |\n|storage.k8s.io
          \       |storageclasses         |get;list;watch                            |\n|
          \                     |namespaces             |get;list;watch                            |\n|
          \                     |configmaps             |get;list;watch                            |\n|
          \                     |services               |get;list;watch                            |\n|
          \                     |**clusterrole/view**   |                                          |\n\n\n###
          Documentation\nYou can find our documentation [here.](https://swc.saas.ibm.com/en-us/documentation/)\n\n###
          Getting help\nIf you encounter any issues while using the operators, you
          can create an issue on our [Github\nrepo](https://github.com/redhat-marketplace/redhat-marketplace-operator)
          for bugs, enhancements, or other requests. You can also visit our main page
          and\nreview our [support](https://swc.saas.ibm.com/en-us/support) and [documentation](https://swc.saas.ibm.com/en-us/documentation/).\n\n###
          Readme\nYou can find our readme [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/README.md)\n\n###
          License information\nYou can find our license information [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/LICENSE)\n"
        displayName: IBM Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        - buy
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - registry.connect.redhat.com/rh-marketplace/ibm-metrics-operator-bundle@sha256:a9294ebb6036eca0746bb1ec8d4155727e4dc7ff25060c70bbd10c0604558c37
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
        - quay.io/rh-marketplace/redhat-marketplace-authcheck@sha256:1d48baed94b33491edd62a525c776b3d0866a9255c60ad14ce1aee6735ffe07f
        - quay.io/rh-marketplace/redhat-marketplace-data-service@sha256:9b82b79f9324bb0c394b42e45e5db11854b86d70a40d6b5951ae3af873ab9760
        - quay.io/rh-marketplace/redhat-marketplace-metric-state@sha256:f59cb18b99ccf9c184b0e3cdb941ab90a54262dff177177eaf3e6318dda36213
        - quay.io/rh-marketplace/redhat-marketplace-reporter@sha256:4c46af0f581620fbd0dac4005e31a76f2746eb3b60a881f5fcb13c1547b15c98
        version: 2.23.1
      entries:
      - name: ibm-metrics-operator.v2.23.1
        version: 2.23.1
      name: beta
    - currentCSV: ibm-metrics-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MarketplaceConfig",
                "metadata": {
                  "name": "marketplaceconfig"
                },
                "spec": {
                  "features": {
                    "deployment": true,
                    "meterDefinitionCatalogServer": false,
                    "registration": true
                  },
                  "installIBMCatalogSource": true,
                  "isDisconnected": false,
                  "license": {
                    "accept": false
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterBase",
                "metadata": {
                  "name": "meterbase"
                },
                "spec": {
                  "enabled": true,
                  "prometheus": {
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      },
                      "requests": {
                        "cpu": "1",
                        "memory": "1G"
                      }
                    },
                    "storage": {
                      "size": "20Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterReport",
                "metadata": {
                  "name": "example-meterreport"
                },
                "spec": {
                  "endTime": "2020-08-05T00:00:00Z",
                  "prometheusService": {
                    "name": "rhm-prometheus-meterbase",
                    "namespace": "openshift-redhat-marketplace",
                    "targetPort": "rbac"
                  },
                  "startTime": "2020-08-04T00:00:00Z"
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "example-meterdefinition-4"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "meterdefinition-sample"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
          createdAt: "2025-12-17T09:32:46Z"
          description: The IBM Metrics Operator provides workload metering and reporting
            for IBM and Red Hat Marketplace customers.
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MarketplaceConfig is configuration manager for our Red Hat Marketplace controllers
              By installing this product you accept the license terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterBase is the resource that sets up Metering for Red Hat Marketplace.
              This is an internal resource not meant to be modified directly.
            displayName: Meter Base
            kind: MeterBase
            name: meterbases.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterDefinition defines the meter workloads used to enable pay for
              use billing.
            displayName: Meter Definition
            kind: MeterDefinition
            name: meterdefinitions.marketplace.redhat.com
            version: v1beta1
          - kind: MeterReport
            name: meterreports.marketplace.redhat.com
            version: v1alpha1
        description: "The IBM Metrics Operator provides workload metering and reporting
          for IBM Software Central and Red Hat Marketplace customers.\n### **Important
          Note**\nA set of instructions for onboarding is provided here. For more
          detailed onboarding instructions or information about what is installed
          please visit [swc.saas.ibm.com](https://swc.saas.ibm.com).\n\nUsage metrics
          may be monitored through [https://swc.saas.ibm.com](https://swc.saas.ibm.com)
          with only IBM Metrics Operator and a Red Hat Marketplace account.\n\n###
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n### Prerequisites\n1. Installations are required
          to [enable monitoring for user-defined projects](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)
          as the Prometheus provider.\n2. Edit the cluster-monitoring-config ConfigMap
          object:\n\n   ```sh\n   $ oc -n openshift-monitoring edit configmap cluster-monitoring-config\n
          \   ```\n\n3. Add enableUserWorkload: true under data/config.yaml:\n  \n
          \   ```sh\n    apiVersion: v1\n    kind: ConfigMap\n    metadata:\n      name:
          cluster-monitoring-config\n        namespace: openshift-monitoring\n    data:\n
          \     config.yaml: |\n        enableUserWorkload: true\n    ```\n\n4. Configure
          the user-workload-monitoring-config ConfigMap object:\n\n    ```sh\n    $
          oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config\n
          \   ```\n\n5. Configure a minimum retention time of 168h and minimum storage
          capacity of 40Gi\n  \n    ```sh\n    apiVersion: v1\n    kind: ConfigMap\n
          \   metadata:\n      name: user-workload-monitoring-config\n      namespace:
          openshift-user-workload-monitoring\n\n    data:\n      config.yaml: |\n
          \       prometheus:\n          retention: 168h\n          volumeClaimTemplate:\n
          \           spec:\n              resources:\n                requests:\n
          \                 storage: 40Gi\n    ```\n\n### Resources Required\n\nMinimum
          system resources required:\n\n| Operator                | Memory (MB) |
          CPU (cores) | Disk (GB) | Nodes |\n| ----------------------- | -----------
          | ----------- | --------- | ----- |\n| **Metrics**   |        750  |     0.25
          \   | 3x1       |    3  |\n| **Deployment** |        250  |     0.25    |
          -         |    1  |\n\n| Prometheus Provider  | Memory (GB) | CPU (cores)
          | Disk (GB) | Nodes |\n| --------- | ----------- | ----------- | ---------
          | ----- |\n| **[Openshift User Workload Monitoring](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)**
          |          1  |     0.1       | 2x40        |   2    |\n\nMultiple nodes
          are required to provide pod scheduling for high availability for IBM Metrics
          Operator Data Service and Prometheus.\n\nThe IBM Metrics Operator automatically
          creates 3 x 1Gi PersistentVolumeClaims to store reports as part of the data
          service, with _ReadWriteOnce_ access mode. Te PersistentVolumeClaims are
          automatically created by the ibm-metrics-operator after creating a `redhat-marketplace-pull-secret`
          and accepting the license in `marketplaceconfig`.\n\n| NAME                                |
          CAPACITY | ACCESS MODES |\n| ----------------------------------- | --------
          | ------------ |\n| rhm-data-service-rhm-data-service-0 | 1Gi | RWO |\n|
          rhm-data-service-rhm-data-service-1 | 1Gi | RWO |\n| rhm-data-service-rhm-data-service-2
          | 1Gi | RWO |\n\n### Supported Storage Providers\n\n- OpenShift Container
          Storage / OpenShift Data Foundation version 4.x, from version 4.2 or higher\n-
          IBM Cloud Block storage and IBM Cloud File storage\n- IBM Storage Suite
          for IBM Cloud Paks:\n  - File storage from IBM Spectrum Fusion/Scale \n
          \ - Block storage from IBM Spectrum Virtualize, FlashSystem or DS8K\n- Portworx
          Storage, version 2.5.5 or above\n- Amazon Elastic File Storage\n- Azure
          Disk Storage (disk.csi.azure.com)\n\n#### Known Problematic Storage Providers\n\n-
          Azure File Storage (file.csi.azure.com)\n\n### Access Modes required\n\n
          - ReadWriteOnce (RWO)\n\n### Provisioning Options supported\n\nChoose one
          of the following options to provision storage for the ibm-metrics-operator
          data-service\n\n#### Dynamic provisioning using a default StorageClass\n
          \  - A StorageClass is defined with a `metadata.annotations: storageclass.kubernetes.io/is-default-class:
          \"true\"`\n   - PersistentVolumes will be provisioned automatically for
          the generated PersistentVolumeClaims\n--- \n#### Manually create each PersistentVolumeClaim
          with a specific StorageClass\n   - Must be performed before creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`. Otherwise, the automatically
          generated PersistentVolumeClaims are immutable.\n```\napiVersion: v1\nkind:
          PersistentVolumeClaim\nmetadata:\n  labels:\n    app: rhm-data-service\n
          \ name: rhm-data-service-rhm-data-service-0\n  namespace: ibm-software-central\nspec:\n
          \ storageClassName: rook-cephfs\n  accessModes:\n  - ReadWriteOnce\n  resources:\n
          \   requests:\n      storage: 1Gi\n```\n---\n#### Manually provision each
          PersistentVolume for the generated PersistentVolumeClaims with a specific
          StorageClass\n  - May be performed before or after creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`.  \n```\napiVersion: v1\nkind:
          PersistentVolume\nmetadata:\n  name: rhm-data-service-rhm-data-service-0\nspec:\n
          \ csi:\n    driver: rook-ceph.cephfs.csi.ceph.com\n    volumeHandle: rhm-data-service-rhm-data-service-0\n
          \ capacity:\n    storage: 1Gi\n  accessModes:\n    - ReadWriteOnce\n  persistentVolumeReclaimPolicy:
          Delete\n  storageClassName: rook-cephfs\n  volumeMode: Filesystem\n  claimRef:\n
          \   kind: PersistentVolumeClaim\n    namespace: ibm-software-central\n    name:
          rhm-data-service-rhm-data-service-0\n```\n\n### Kyverno Policies\n\nThe
          IBM Metrics Operator makes a best effort to comply with the Kyverno policies
          defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Metrics Operator is not replicated\n  - Service uptime is not considered
          critial, and can be rescheduled\n- metric-state is not replicated\n  - Service
          uptime is not considered critial, and can be rescheduled\n\n### Installation\n1.
          Create or get your [pull secret](https://swc.saas.ibm.com/en-us/documentation/clusters#get-pull-secret).\n2.
          Install the IBM Metrics Operator\n3. Create a Kubernetes secret in the installed
          namespace with the name `redhat-marketplace-pull-secret` and key `PULL_SECRET`
          with the value of the pull secret.\n    ```sh\n    # Replace ${PULL_SECRET}
          with your pull secret\n    oc create secret generic redhat-marketplace-pull-secret
          -n ibm-software-central --from-literal=PULL_SECRET=${PULL_SECRET}\n    ```\n4.
          Use of the platform is governed by the:\n\n    [IBM Cloud Services Agreement](https://www.ibm.com/support/customer/csol/terms/?id=Z126-6304_WS&_ga=2.116312197.2046730452.1684328846-812467790.1684328846)
          (or other base agreement between you and IBM such as a [Passport Advantage
          Agreement](https://www.ibm.com/software/passportadvantage/pa_agreements.html?_ga=2.116312197.2046730452.1684328846-812467790.1684328846))
          and the [Service Description for the Red Hat Marketplace](https://www.ibm.com/support/customer/csol/terms/?id=i126-8719&_ga=2.83289621.2046730452.1684328846-812467790.1684328846).\n
          \   \n5. Update MarketplaceConfig to accept the license.\n    ```\n    oc
          patch marketplaceconfig marketplaceconfig -n ibm-software-central --type='merge'
          -p '{\"spec\": {\"license\": {\"accept\": true}}}'\n    ```\n6. Install
          the pull secret as a global pull secret on the cluster.\n\n    These steps
          require `oc`, `jq`, and `base64` to be available on your machine.\n\n    ```sh\n
          \   # Create the docker pull secret file using your pull secret.\n    #
          Store it in a file called entitledregistryconfigjson.\n    oc create secret
          docker-registry entitled-registry --docker-server=registry.marketplace.redhat.com
          --docker-username \"cp\" --docker-password \"${PULL_SECRET}\" --dry-run=client
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > entitledregistryconfigjson\n
          \   # Get the current global secrets on the cluster and store it as a file
          named dockerconfigjson\n    oc get secret pull-secret -n openshift-config
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > dockerconfigjson\n
          \   # Merge the two dockerconfigs together into a file called dockerconfigjson-merged.\n
          \   jq -s '.[0] * .[1]' dockerconfigjson entitledregistryconfigjson > dockerconfigjson-merged\n
          \   # Set the cluster's dockerconfig file to the new merged version.\n    oc
          set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=dockerconfigjson-merged\n
          \   ```\n  7. (Optional) Your IBM product may have installed IBM Metrics
          Operator using an `ibm-entitlement-key` for authentication to IBM Software
          Central. To authorize the automatic creation of an IBM Software Central
          account for the IBM account owning the `ibm-entitlement-key`\n      ```\n
          \     oc patch marketplaceconfig marketplaceconfig -n ibm-software-central
          --type='merge' -p '{\"spec\": {\"authorizeAccountCreation\": true}}'\n      ```\n\n###
          Why is a global pull secret required?\nIn order to successfully install
          the products hosted by the container image registry, you will need to make
          the pull secret available across the cluster. This can be achieved by applying
          the pull as a [global pull secret](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html#images-update-global-pull-secret_using-image-pull-secrets).
          For alternative approaches, please see the official OpenShift [documentation](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html).\n\n\n###
          SecurityContextConstraints requirements\n\nThe Operators and their components
          support running under the OpenShift Container Platform default restricted
          and restricted-v2 security context constraints.\n\n### Installation Namespace
          and ClusterRoleBinding requirements\n\nThe IBM Metrics Operator components
          require specific ClusterRoleBindings.\n- The metric-state component requires
          a ClusterRoleBinding for the the `view` ClusterRole.\n  - Ability to read
          non-sensitive CustomResources. \n  - The `view` ClusterRole dynamically
          adds new CustomResourceDefinitions.\n- The operator & reporter component
          requires a ClusterRoleBinding for the the `cluster-monitoring-view` ClusterRole.\n
          \ - Ability to view Prometheus metrics. \n  - The underlying ClusterRole
          RBAC often updated between OpenShift versions.\n\nDue to limitations of
          Operator Lifecycle Manager (OLM), this ClusterRoleBinding can not be provided
          dynamically for arbitrary installation target namespaces.\n\nA static ClusterRoleBinding
          is included for installation to the default namespace of `ibm-software-central`,
          and namespaces `openshift-redhat-marketplace`,  `redhat-marketplace`, `ibm-common-services`.\n\nTo
          create the ClusterRoleBindings for installation to an alternate namespace\n```\noc
          project INSTALL-NAMESPACE\noc adm policy add-cluster-role-to-user view -z
          ibm-metrics-operator-metric-state\noc adm policy add-cluster-role-to-user
          cluster-monitoring-view -z ibm-metrics-operator-controller-manager,ibm-metrics-operator-reporter\n```\n\n###
          Metric State scoping requirements\nThe metric-state Deployment obtains `get/list/watch`
          access to metered resources via the `view` ClusterRole. For operators deployed
          using Operator Lifecycle Manager (OLM), permissions are added to `clusterrole/view`
          dynamically via a generated and annotated `-view` ClusterRole. If you wish
          to meter an operator, and its Custom Resource Definitions (CRDs) are not
          deployed through OLM, one of two options are required\n1. Add the following
          label to a clusterrole that has get/list/watch access to your CRD: `rbac.authorization.k8s.io/aggregate-to-view:
          \"true\"`, thereby dynamically adding it to `clusterrole/view`\n2. Create
          a ClusterRole that has get/list/watch access to your CRD, and create a ClusterRoleBinding
          for the metric-state ServiceAccount\n\nAttempting to meter a resource with
          a MeterDefinition without the required permissions will log an `AccessDeniedError`
          in metric-state.\n\n### Disaster Recovery\n\nTo plan for disaster recovery,
          note the PhysicalVolumeClaims `rhm-data-service-rhm-data-service-N`. \n-
          In connected environments, MeterReport data upload attempts occur hourly,
          and are then removed from data-service. There is a low risk of losing much
          unreported data.\n- In an airgap environment, MeterReport data must be pulled
          from data-service and uploaded manually using [datactl](https://github.com/redhat-marketplace/datactl/).
          To prevent data loss in a disaster scenario, the data-service volumes should
          be considered in a recovery plan.\n\n### Subscription Config\n\nIt is possible
          to [configure](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md)
          how OLM deploys an Operator via the `config` field in the [Subscription](https://github.com/operator-framework/olm-book/blob/master/docs/subscriptions.md)
          object.\n\nThe IBM Metrics Operator will also read the `config` and append
          it to the operands. The primary use case is to control scheduling using
          [Tolerations](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/)
          and [NodeSelectors](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/).\n\nA
          limitation is that the `config` elements are only appended to the operands.
          The elements in the operands are not removed if the `config` is removed
          from the `Subscripion`. The operand must be modified manually, or deleted
          and recreated by the controller.\n\n### Cluster permission requirements\n\n|API
          group             |Resources              |Verbs                                     |\n|----------------------|-----------------------|------------------------------------------|\n|apps
          \                 |statefulsets           |get;list;watch                            |\n|authentication.k8s.io
          |tokenreviews           |create                                    |\n|authorization.k8s.io
          \ |subjectaccessreviews   |create                                    |\n|config.openshift.io
          \  |clusterversions        |get;list;watch                            |\n|marketplace.redhat.com|meterdefinitions
          \      |get;list;watch;create;update;patch;delete |\n|operators.coreos.com
          \ |clusterserviceversions |get;list;watch                            |\n|operators.coreos.com
          \ |subscriptions          |get;list;watch                            |\n|operators.coreos.com
          \ |operatorgroups         |get;list                                  |\n|storage.k8s.io
          \       |storageclasses         |get;list;watch                            |\n|
          \                     |namespaces             |get;list;watch                            |\n|
          \                     |configmaps             |get;list;watch                            |\n|
          \                     |services               |get;list;watch                            |\n|
          \                     |**clusterrole/view**   |                                          |\n\n\n###
          Documentation\nYou can find our documentation [here.](https://swc.saas.ibm.com/en-us/documentation/)\n\n###
          Getting help\nIf you encounter any issues while using the operators, you
          can create an issue on our [Github\nrepo](https://github.com/redhat-marketplace/redhat-marketplace-operator)
          for bugs, enhancements, or other requests. You can also visit our main page
          and\nreview our [support](https://swc.saas.ibm.com/en-us/support) and [documentation](https://swc.saas.ibm.com/en-us/documentation/).\n\n###
          Readme\nYou can find our readme [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/README.md)\n\n###
          License information\nYou can find our license information [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/LICENSE)\n"
        displayName: IBM Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        - buy
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
        - quay.io/rh-marketplace/redhat-marketplace-authcheck@sha256:1d48baed94b33491edd62a525c776b3d0866a9255c60ad14ce1aee6735ffe07f
        - quay.io/rh-marketplace/redhat-marketplace-data-service@sha256:9b82b79f9324bb0c394b42e45e5db11854b86d70a40d6b5951ae3af873ab9760
        - quay.io/rh-marketplace/redhat-marketplace-metric-state@sha256:f59cb18b99ccf9c184b0e3cdb941ab90a54262dff177177eaf3e6318dda36213
        - quay.io/rh-marketplace/redhat-marketplace-reporter@sha256:4c46af0f581620fbd0dac4005e31a76f2746eb3b60a881f5fcb13c1547b15c98
        - registry.connect.redhat.com/rh-marketplace/ibm-metrics-operator-bundle@sha256:a9294ebb6036eca0746bb1ec8d4155727e4dc7ff25060c70bbd10c0604558c37
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 2.23.1
      entries:
      - name: ibm-metrics-operator.v2.23.1
        version: 2.23.1
      name: stable
    defaultChannel: stable
    packageName: ibm-metrics-operator
    provider:
      name: Red Hat Marketplace
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-hive-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hive-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/hive-operator@sha256:747e784c89fcd8cd7b1fd7868d4c768dd971d6859c5f261fe8cb8eaf72f7946b
          description: Stackable Operator for Apache Hive
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/hive-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for HiveClusterSpec via `CustomResource`
            displayName: hiveclusters.hive.stackable.tech
            kind: HiveCluster
            name: hiveclusters.hive.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Hive
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hive
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/hive-operator@sha256:747e784c89fcd8cd7b1fd7868d4c768dd971d6859c5f261fe8cb8eaf72f7946b
        - registry.connect.redhat.com/stackable/stackable-apache-hive-operator@sha256:e5e7f52e18a640ea5a7b11897b9609352c9e7dd1c44ff26d387dae0a2ac4146e
        version: 25.11.0
      entries:
      - name: hive-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-hive-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-acm-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-acm-controller.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acm.services.k8s.aws/v1alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/acm-controller:1.3.1
          createdAt: "2026-01-06T21:08:05Z"
          description: AWS ACM controller is a service controller for managing ACM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Certificate represents the state of an AWS acm Certificate
              resource.
            displayName: Certificate
            kind: Certificate
            name: certificates.acm.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage AWS Certificate Manager (ACM) resources in AWS from within your Kubernetes cluster.

          **About Amazon ACM**

          AWS Certificate Manager (ACM) handles the complexity of creating, storing, and renewing public and private SSL/TLS X.509 certificates and keys that protect your AWS websites and applications. You can provide certificates for your [integrated AWS services](https://docs.aws.amazon.com/acm/latest/userguide/acm-services.html) either by issuing them directly with ACM or by [importing](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) third-party certificates into the ACM management system. ACM certificates can secure singular domain names, multiple specific domain names, wildcard domains, or combinations of these. ACM wildcard certificates can protect an unlimited number of subdomains. You can also [export](https://docs.aws.amazon.com/acm/latest/userguide/export-private.html) ACM certificates signed by AWS Private CA for use anywhere in your internal PKI.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon ACM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acm
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ACM Developer Resources
          url: https://aws.amazon.com/certificate-manager/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: acm maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/acm-controller:1.3.1
        - quay.io/community-operator-pipeline-prod/ack-acm-controller@sha256:24162be9245765e977980ef0868d3ed5b823ef412a14cfefdc7c2fcf36d00036
        version: 1.3.1
      entries:
      - name: ack-acm-controller.v1.3.1
        version: 1.3.1
      - name: ack-acm-controller.v1.3.0
        version: 1.3.0
      - name: ack-acm-controller.v1.2.0
        version: 1.2.0
      - name: ack-acm-controller.v1.1.2
        version: 1.1.2
      - name: ack-acm-controller.v1.1.1
        version: 1.1.1
      - name: ack-acm-controller.v1.1.0
        version: 1.1.0
      - name: ack-acm-controller.v1.0.13
        version: 1.0.13
      - name: ack-acm-controller.v1.0.12
        version: 1.0.12
      - name: ack-acm-controller.v1.0.11
        version: 1.0.11
      - name: ack-acm-controller.v1.0.10
        version: 1.0.10
      - name: ack-acm-controller.v1.0.9
        version: 1.0.9
      - name: ack-acm-controller.v1.0.8
        version: 1.0.8
      - name: ack-acm-controller.v1.0.7
        version: 1.0.7
      - name: ack-acm-controller.v1.0.6
        version: 1.0.6
      - name: ack-acm-controller.v1.0.5
        version: 1.0.5
      - name: ack-acm-controller.v1.0.4
        version: 1.0.4
      - name: ack-acm-controller.v1.0.1
        version: 1.0.1
      - name: ack-acm-controller.v1.0.0
        version: 1.0.0
      - name: ack-acm-controller.v0.0.20
        version: 0.0.20
      - name: ack-acm-controller.v0.0.19
        version: 0.0.19
      - name: ack-acm-controller.v0.0.18
        version: 0.0.18
      - name: ack-acm-controller.v0.0.17
        version: 0.0.17
      - name: ack-acm-controller.v0.0.16
        version: 0.0.16
      - name: ack-acm-controller.v0.0.12
        version: 0.0.12
      - name: ack-acm-controller.v0.0.10
        version: 0.0.10
      - name: ack-acm-controller.v0.0.9
        version: 0.0.9
      - name: ack-acm-controller.v0.0.6
        version: 0.0.6
      - name: ack-acm-controller.v0.0.5
        version: 0.0.5
      - name: ack-acm-controller.v0.0.4
        version: 0.0.4
      - name: ack-acm-controller.v0.0.2
        version: 0.0.2
      - name: ack-acm-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-acm-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: External Secrets
      provider-url: https://external-secrets.io
    name: external-secrets-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: external-secrets-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": "1234"
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "key": "provider-key",
                      "property": "provider-key-property",
                      "version": "provider-key-version"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "name": "hello-world"
                },
                "spec": {
                  "externalSecretName": "hello-world-es",
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "provider-key",
                          "property": "provider-key-property",
                          "version": "provider-key-version"
                        },
                        "secretKey": "secret-key-to-be-managed"
                      }
                    ],
                    "dataFrom": [
                      {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "SecretStore",
                      "name": "secret-store-name"
                    },
                    "target": {
                      "creationPolicy": "Merge",
                      "name": "my-secret",
                      "template": {
                        "data": {
                          "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                        },
                        "metadata": {
                          "annotations": {},
                          "labels": {}
                        },
                        "templateFrom": [
                          {
                            "configMap": {
                              "items": [
                                {
                                  "key": "alertmanager.yaml"
                                }
                              ],
                              "name": "alertmanager"
                            }
                          }
                        ],
                        "type": "kubernetes.io/dockerconfigjson"
                      }
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "cool": "label"
                    }
                  },
                  "refreshTime": "1m"
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": 1234
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "extract": {
                        "conversionStrategy": "Default",
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    },
                    {
                      "find": {
                        "conversionStrategy": "Unicode",
                        "name": {
                          "regexp": ".*foobar.*"
                        },
                        "path": "path-to-filter",
                        "tags": {
                          "foo": "bar"
                        }
                      }
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "deletionPolicy": "Retain",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.external-secrets.io/v1alpha1",
                "kind": "OperatorConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "affinity": {},
                  "certController": {
                    "affinity": {},
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "requeueInterval": "5m",
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  },
                  "concurrent": 1,
                  "controllerClass": "",
                  "crds": {
                    "createClusterExternalSecret": true,
                    "createClusterSecretStore": true
                  },
                  "createOperator": true,
                  "deploymentAnnotations": {},
                  "extraArgs": {},
                  "extraEnv": [],
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/external-secrets/external-secrets",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "installCRDs": false,
                  "leaderElect": false,
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": "",
                  "processClusterExternalSecret": true,
                  "processClusterStore": true,
                  "prometheus": {
                    "enabled": false,
                    "service": {
                      "port": 8080
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 1,
                  "resources": {},
                  "scopedNamespace": "",
                  "scopedRBAC": false,
                  "securityContext": {},
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": ""
                  },
                  "tolerations": [],
                  "webhook": {
                    "affinity": {},
                    "certCheckInterval": "5m",
                    "certDir": "/tmp/certs",
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
          createdAt: "2024-12-03T10:44:19Z"
          description: Operator to configure external-secrets helm-chart based operator
          operatorframework.io/cluster-monitoring: "true"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/external-secrets/external-secrets-helm-operator
          support: external-secrets
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster scoped resource that allows you to manage ExternalSecrets
              across namespaces
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1beta1
          - kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1alpha1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1beta1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1beta1
          - kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1alpha1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1beta1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1beta1
          - kind: Fake
            name: fakes.generators.external-secrets.io
            version: v1alpha1
          - kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Configures external-secrets helm-chart based operator
            displayName: OperatorConfig
            kind: OperatorConfig
            name: operatorconfigs.operator.external-secrets.io
            version: v1alpha1
          - kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1alpha1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1beta1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1beta1
          - kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK (Helm version) to configure **[official external-secrets operator helm chart](https://github.com/external-secrets/external-secrets)**, so it can be installed via OLM without having to do any change on current Helm Charts.

          Before any other resources provided by this Operator can be deployed, it is essential to create an
          OperatorConfig resource.

          The usual Helm Chart file `values.yaml`, like:
          ```yaml
          prometheus:
            enabled: true
            service:
              port: 8080
          resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          need to be encapsulated into a new custom resource called `OperatorConfig`:
          ```yaml
          apiVersion: operator.external-secrets.io/v1alpha1
          kind: OperatorConfig
          metadata:
            name: cluster
          spec:
            prometheus:
              enabled: true
              service:
                port: 8080
            resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          Once the OperatorConfig resource is deployed, the operator will create all helm chart resources, using the custom resource name as a preffix for all resources names, like for example a `Deployment` called `cluster-external-secrets`.

          ## Documentation

          * [Upstream Documentation](https://external-secrets.io)
          * [Helm Operator Install](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/install.md)
          * [Helm Operator Development](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/development.md)
          * [Helm Operator Release](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/release.md)

          ## Contributing

          You can contribute by:

          * Raising any issues you find using External Secrets Operator
          * Fixing issues by opening [Pull Requests](https://github.com/external-secrets/external-secrets-helm-operator/pulls)
          * Submitting a patch or opening a PR
          * Improving documentation
          * Talking about External Secrets Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/external-secrets/external-secrets-helm-operator/issues).

          ## License

          External Secrets Operator is under Apache 2.0 license. See the [LICENSE](LICENSE) file for details.
        displayName: External Secrets Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secrets
        - secrets-manager
        - vault
        - aws
        - azure
        - google
        - ibm
        - akeyless
        - yandex
        - gitlab
        - oracle
        links:
        - name: External Secrets Operator
          url: https://external-secrets.io
        - name: GitHub
          url: https://github.com/external-secrets/external-secrets
        - name: Slack
          url: https://kubernetes.slack.com/messages/external-secrets
        maintainers:
        - email: contact@external-secrets.io
          name: external-secrets community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: External Secrets
          url: https://external-secrets.io
        relatedImages:
        - ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
        - quay.io/community-operator-pipeline-prod/external-secrets-operator@sha256:6fa2ddca55d1d134b0938b47ea8a861de7408fa566ad806b200a379b8500a2a1
        version: 0.11.0
      entries:
      - name: external-secrets-operator.v0.11.0
        version: 0.11.0
      - name: external-secrets-operator.v0.10.7
        version: 0.10.7
      - name: external-secrets-operator.v0.10.6
        version: 0.10.6
      - name: external-secrets-operator.v0.10.5
        version: 0.10.5
      - name: external-secrets-operator.v0.10.4
        version: 0.10.4
      - name: external-secrets-operator.v0.10.3
        version: 0.10.3
      - name: external-secrets-operator.v0.10.2
        version: 0.10.2
      - name: external-secrets-operator.v0.10.1
        version: 0.10.1
      - name: external-secrets-operator.v0.10.0
        version: 0.10.0
      - name: external-secrets-operator.v0.9.20
        version: 0.9.20
      - name: external-secrets-operator.v0.9.19
        version: 0.9.19
      - name: external-secrets-operator.v0.9.18
        version: 0.9.18
      - name: external-secrets-operator.v0.9.17
        version: 0.9.17
      - name: external-secrets-operator.v0.9.16
        version: 0.9.16
      - name: external-secrets-operator.v0.9.15-2
        version: 0.9.15-2
      - name: external-secrets-operator.v0.9.14
        version: 0.9.14
      - name: external-secrets-operator.v0.9.13
        version: 0.9.13
      - name: external-secrets-operator.v0.9.12
        version: 0.9.12
      - name: external-secrets-operator.v0.9.11
        version: 0.9.11
      - name: external-secrets-operator.v0.9.10
        version: 0.9.10
      - name: external-secrets-operator.v0.9.9
        version: 0.9.9
      - name: external-secrets-operator.v0.9.8
        version: 0.9.8
      - name: external-secrets-operator.v0.9.7
        version: 0.9.7
      - name: external-secrets-operator.v0.9.6
        version: 0.9.6
      - name: external-secrets-operator.v0.9.5
        version: 0.9.5
      - name: external-secrets-operator.v0.9.4
        version: 0.9.4
      - name: external-secrets-operator.v0.9.3
        version: 0.9.3
      - name: external-secrets-operator.v0.9.2
        version: 0.9.2
      - name: external-secrets-operator.v0.9.1
        version: 0.9.1
      - name: external-secrets-operator.v0.9.0
        version: 0.9.0
      - name: external-secrets-operator.v0.8.7
        version: 0.8.7
      - name: external-secrets-operator.v0.8.6
        version: 0.8.6
      - name: external-secrets-operator.v0.8.5
        version: 0.8.5
      - name: external-secrets-operator.v0.8.4
        version: 0.8.4
      - name: external-secrets-operator.v0.8.3
        version: 0.8.3
      - name: external-secrets-operator.v0.8.2
        version: 0.8.2
      - name: external-secrets-operator.v0.8.1
        version: 0.8.1
      - name: external-secrets-operator.v0.8.0
        version: 0.8.0
      - name: external-secrets-operator.v0.7.2
        version: 0.7.2
      - name: external-secrets-operator.v0.7.1
        version: 0.7.1
      - name: external-secrets-operator.v0.7.0
        version: 0.7.0
      - name: external-secrets-operator.v0.7.0-rc1
        version: 0.7.0-rc1
      - name: external-secrets-operator.v0.6.1
        version: 0.6.1
      - name: external-secrets-operator.v0.6.0
        version: 0.6.0
      - name: external-secrets-operator.v0.6.0-rc1
        version: 0.6.0-rc1
      - name: external-secrets-operator.v0.5.9
        version: 0.5.9
      - name: external-secrets-operator.v0.5.8
        version: 0.5.8
      - name: external-secrets-operator.v0.5.7
        version: 0.5.7
      - name: external-secrets-operator.v0.5.6
        version: 0.5.6
      - name: external-secrets-operator.v0.5.5
        version: 0.5.5
      - name: external-secrets-operator.v0.5.4
        version: 0.5.4
      - name: external-secrets-operator.v0.5.3
        version: 0.5.3
      - name: external-secrets-operator.v0.5.2
        version: 0.5.2
      - name: external-secrets-operator.v0.5.1
        version: 0.5.1
      - name: external-secrets-operator.v0.5.0
        version: 0.5.0
      - name: external-secrets-operator.v0.4.4
        version: 0.4.4
      - name: external-secrets-operator.v0.4.3
        version: 0.4.3
      - name: external-secrets-operator.v0.4.2
        version: 0.4.2
      - name: external-secrets-operator.v0.4.1
        version: 0.4.1
      - name: external-secrets-operator.v0.3.11
        version: 0.3.11
      - name: external-secrets-operator.v0.3.10
        version: 0.3.10
      - name: external-secrets-operator.v0.3.9
        version: 0.3.9
      - name: external-secrets-operator.v0.3.8
        version: 0.3.8
      name: alpha
    - currentCSV: external-secrets-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": "1234"
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "key": "provider-key",
                      "property": "provider-key-property",
                      "version": "provider-key-version"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "name": "hello-world"
                },
                "spec": {
                  "externalSecretName": "hello-world-es",
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "provider-key",
                          "property": "provider-key-property",
                          "version": "provider-key-version"
                        },
                        "secretKey": "secret-key-to-be-managed"
                      }
                    ],
                    "dataFrom": [
                      {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "SecretStore",
                      "name": "secret-store-name"
                    },
                    "target": {
                      "creationPolicy": "Merge",
                      "name": "my-secret",
                      "template": {
                        "data": {
                          "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                        },
                        "metadata": {
                          "annotations": {},
                          "labels": {}
                        },
                        "templateFrom": [
                          {
                            "configMap": {
                              "items": [
                                {
                                  "key": "alertmanager.yaml"
                                }
                              ],
                              "name": "alertmanager"
                            }
                          }
                        ],
                        "type": "kubernetes.io/dockerconfigjson"
                      }
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "cool": "label"
                    }
                  },
                  "refreshTime": "1m"
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": 1234
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "extract": {
                        "conversionStrategy": "Default",
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    },
                    {
                      "find": {
                        "conversionStrategy": "Unicode",
                        "name": {
                          "regexp": ".*foobar.*"
                        },
                        "path": "path-to-filter",
                        "tags": {
                          "foo": "bar"
                        }
                      }
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "deletionPolicy": "Retain",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.external-secrets.io/v1alpha1",
                "kind": "OperatorConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "affinity": {},
                  "certController": {
                    "affinity": {},
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "requeueInterval": "5m",
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  },
                  "concurrent": 1,
                  "controllerClass": "",
                  "crds": {
                    "createClusterExternalSecret": true,
                    "createClusterSecretStore": true
                  },
                  "createOperator": true,
                  "deploymentAnnotations": {},
                  "extraArgs": {},
                  "extraEnv": [],
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/external-secrets/external-secrets",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "installCRDs": false,
                  "leaderElect": false,
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": "",
                  "processClusterExternalSecret": true,
                  "processClusterStore": true,
                  "prometheus": {
                    "enabled": false,
                    "service": {
                      "port": 8080
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 1,
                  "resources": {},
                  "scopedNamespace": "",
                  "scopedRBAC": false,
                  "securityContext": {},
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": ""
                  },
                  "tolerations": [],
                  "webhook": {
                    "affinity": {},
                    "certCheckInterval": "5m",
                    "certDir": "/tmp/certs",
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
          createdAt: "2024-12-03T10:44:19Z"
          description: Operator to configure external-secrets helm-chart based operator
          operatorframework.io/cluster-monitoring: "true"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/external-secrets/external-secrets-helm-operator
          support: external-secrets
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster scoped resource that allows you to manage ExternalSecrets
              across namespaces
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1beta1
          - kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1alpha1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1beta1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1beta1
          - kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1alpha1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1beta1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1beta1
          - kind: Fake
            name: fakes.generators.external-secrets.io
            version: v1alpha1
          - kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Configures external-secrets helm-chart based operator
            displayName: OperatorConfig
            kind: OperatorConfig
            name: operatorconfigs.operator.external-secrets.io
            version: v1alpha1
          - kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1alpha1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1beta1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1beta1
          - kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK (Helm version) to configure **[official external-secrets operator helm chart](https://github.com/external-secrets/external-secrets)**, so it can be installed via OLM without having to do any change on current Helm Charts.

          Before any other resources provided by this Operator can be deployed, it is essential to create an
          OperatorConfig resource.

          The usual Helm Chart file `values.yaml`, like:
          ```yaml
          prometheus:
            enabled: true
            service:
              port: 8080
          resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          need to be encapsulated into a new custom resource called `OperatorConfig`:
          ```yaml
          apiVersion: operator.external-secrets.io/v1alpha1
          kind: OperatorConfig
          metadata:
            name: cluster
          spec:
            prometheus:
              enabled: true
              service:
                port: 8080
            resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          Once the OperatorConfig resource is deployed, the operator will create all helm chart resources, using the custom resource name as a preffix for all resources names, like for example a `Deployment` called `cluster-external-secrets`.

          ## Documentation

          * [Upstream Documentation](https://external-secrets.io)
          * [Helm Operator Install](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/install.md)
          * [Helm Operator Development](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/development.md)
          * [Helm Operator Release](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/release.md)

          ## Contributing

          You can contribute by:

          * Raising any issues you find using External Secrets Operator
          * Fixing issues by opening [Pull Requests](https://github.com/external-secrets/external-secrets-helm-operator/pulls)
          * Submitting a patch or opening a PR
          * Improving documentation
          * Talking about External Secrets Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/external-secrets/external-secrets-helm-operator/issues).

          ## License

          External Secrets Operator is under Apache 2.0 license. See the [LICENSE](LICENSE) file for details.
        displayName: External Secrets Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secrets
        - secrets-manager
        - vault
        - aws
        - azure
        - google
        - ibm
        - akeyless
        - yandex
        - gitlab
        - oracle
        links:
        - name: External Secrets Operator
          url: https://external-secrets.io
        - name: GitHub
          url: https://github.com/external-secrets/external-secrets
        - name: Slack
          url: https://kubernetes.slack.com/messages/external-secrets
        maintainers:
        - email: contact@external-secrets.io
          name: external-secrets community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: External Secrets
          url: https://external-secrets.io
        relatedImages:
        - ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
        - quay.io/community-operator-pipeline-prod/external-secrets-operator@sha256:6fa2ddca55d1d134b0938b47ea8a861de7408fa566ad806b200a379b8500a2a1
        version: 0.11.0
      entries:
      - name: external-secrets-operator.v0.11.0
        version: 0.11.0
      - name: external-secrets-operator.v0.10.7
        version: 0.10.7
      - name: external-secrets-operator.v0.10.6
        version: 0.10.6
      - name: external-secrets-operator.v0.10.5
        version: 0.10.5
      - name: external-secrets-operator.v0.10.4
        version: 0.10.4
      - name: external-secrets-operator.v0.10.3
        version: 0.10.3
      - name: external-secrets-operator.v0.10.2
        version: 0.10.2
      - name: external-secrets-operator.v0.10.1
        version: 0.10.1
      - name: external-secrets-operator.v0.10.0
        version: 0.10.0
      - name: external-secrets-operator.v0.9.20
        version: 0.9.20
      - name: external-secrets-operator.v0.9.19
        version: 0.9.19
      - name: external-secrets-operator.v0.9.18
        version: 0.9.18
      - name: external-secrets-operator.v0.9.17
        version: 0.9.17
      - name: external-secrets-operator.v0.9.16
        version: 0.9.16
      - name: external-secrets-operator.v0.9.15-2
        version: 0.9.15-2
      - name: external-secrets-operator.v0.9.14
        version: 0.9.14
      - name: external-secrets-operator.v0.9.13
        version: 0.9.13
      - name: external-secrets-operator.v0.9.12
        version: 0.9.12
      - name: external-secrets-operator.v0.9.11
        version: 0.9.11
      - name: external-secrets-operator.v0.9.10
        version: 0.9.10
      - name: external-secrets-operator.v0.9.9
        version: 0.9.9
      - name: external-secrets-operator.v0.9.8
        version: 0.9.8
      - name: external-secrets-operator.v0.9.7
        version: 0.9.7
      - name: external-secrets-operator.v0.9.6
        version: 0.9.6
      - name: external-secrets-operator.v0.9.5
        version: 0.9.5
      - name: external-secrets-operator.v0.9.4
        version: 0.9.4
      - name: external-secrets-operator.v0.9.3
        version: 0.9.3
      - name: external-secrets-operator.v0.9.2
        version: 0.9.2
      - name: external-secrets-operator.v0.9.1
        version: 0.9.1
      - name: external-secrets-operator.v0.9.0
        version: 0.9.0
      - name: external-secrets-operator.v0.8.7
        version: 0.8.7
      - name: external-secrets-operator.v0.8.6
        version: 0.8.6
      - name: external-secrets-operator.v0.8.5
        version: 0.8.5
      - name: external-secrets-operator.v0.8.4
        version: 0.8.4
      - name: external-secrets-operator.v0.8.3
        version: 0.8.3
      - name: external-secrets-operator.v0.8.2
        version: 0.8.2
      - name: external-secrets-operator.v0.8.1
        version: 0.8.1
      - name: external-secrets-operator.v0.8.0
        version: 0.8.0
      - name: external-secrets-operator.v0.7.2
        version: 0.7.2
      - name: external-secrets-operator.v0.7.1
        version: 0.7.1
      - name: external-secrets-operator.v0.7.0
        version: 0.7.0
      - name: external-secrets-operator.v0.7.0-rc1
        version: 0.7.0-rc1
      - name: external-secrets-operator.v0.6.1
        version: 0.6.1
      - name: external-secrets-operator.v0.6.0
        version: 0.6.0
      - name: external-secrets-operator.v0.5.9
        version: 0.5.9
      - name: external-secrets-operator.v0.5.8
        version: 0.5.8
      - name: external-secrets-operator.v0.5.7
        version: 0.5.7
      - name: external-secrets-operator.v0.5.6
        version: 0.5.6
      - name: external-secrets-operator.v0.5.5
        version: 0.5.5
      - name: external-secrets-operator.v0.5.4
        version: 0.5.4
      - name: external-secrets-operator.v0.5.3
        version: 0.5.3
      - name: external-secrets-operator.v0.5.2
        version: 0.5.2
      - name: external-secrets-operator.v0.5.1
        version: 0.5.1
      - name: external-secrets-operator.v0.5.0
        version: 0.5.0
      - name: external-secrets-operator.v0.4.4
        version: 0.4.4
      - name: external-secrets-operator.v0.4.2
        version: 0.4.2
      - name: external-secrets-operator.v0.4.1
        version: 0.4.1
      - name: external-secrets-operator.v0.3.11
        version: 0.3.11
      - name: external-secrets-operator.v0.3.10
        version: 0.3.10
      - name: external-secrets-operator.v0.3.9
        version: 0.3.9
      name: stable
    defaultChannel: alpha
    packageName: external-secrets-operator
    provider:
      name: External Secrets
      url: https://external-secrets.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhsso-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhsso-operator.7.5.1-opr-005
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "example-keycloakrealm"
                },
                "spec": {
                  "realm": {
                    "id": "basic",
                    "realm": "basic",
                    "enabled": true,
                    "displayName": "Basic Realm"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakBackup",
                "metadata": {
                  "name": "example-keycloakbackup"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "client-secret",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  },
                  "client": {
                    "clientId": "client-secret",
                    "secret": "client-secret",
                    "clientAuthenticatorType": "client-secret"
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakUser",
                "metadata": {
                  "name": "example-realm-user",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "user": {
                    "username": "realm_user",
                    "firstName": "John",
                    "lastName": "Doe",
                    "email": "user@example.com",
                    "enabled": true,
                    "emailVerified": false
                  },
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "False"
          containerImage: registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:66577ec32a9a975f304e52b8ab49b9f7602158dcab1ef5d8c28a5d3455491336
          createdAt: "2021-08-09 00:00:00"
          description: An Operator for installing and managing Red Hat Single Sign-On
          olm.skipRange: <7.5.0
          repository: https://github.com/keycloak/keycloak-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Red Hat Single Sign-On Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Realm
            displayName: KeycloakRealm
            kind: KeycloakRealm
            name: keycloakrealms.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Backup
            displayName: KeycloakBackup
            kind: KeycloakBackup
            name: keycloakbackups.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Client
            displayName: KeycloakClient
            kind: KeycloakClient
            name: keycloakclients.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On User
            displayName: KeycloakUser
            kind: KeycloakUser
            name: keycloakusers.keycloak.org
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Red Hat Single Sign-On.

          Red Hat Single Sign-On lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
          * Import Keycloak Clients
          * Import Keycloak Users
          * Create scheduled backups of the database
        displayName: Red Hat Single Sign-On Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://access.redhat.com/products/red-hat-single-sign-on
        - name: Keycloak
          url: https://www.keycloak.org/
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat Customer Service
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:5f0840a69642d13016430151892ec987fd67e711563b1dfb1a57353037c3bf79
        - registry.redhat.io/rh-sso-7/sso7-rhel8-init-container@sha256:614a9b1d7975769e8559e0b8c1578d16f6e3f7fee0778283797f4d62f5fc2100
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator-bundle@sha256:9fcdfa4615b91a5bb919aff71fc4df046365b2ee6d540b5f5f47f9ccaeb9877c
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:66577ec32a9a975f304e52b8ab49b9f7602158dcab1ef5d8c28a5d3455491336
        - registry.redhat.io/rh-sso-7/sso75-openj9-openshift-rhel8@sha256:2d4ea7226f43e7e8e8d3fcef6d425eb5104a15acf07791355033300b80db2901
        version: 7.5.1-opr-005
      entries:
      - name: rhsso-operator.7.5.1-opr-005
        version: 7.5.1-opr-005
      - name: rhsso-operator.7.5.1-opr-004
        version: 7.5.1-opr-004
      - name: rhsso-operator.7.5.1-opr-003
        version: 7.5.1-opr-003
      - name: rhsso-operator.7.5.1-opr-002
        version: 7.5.1-opr-002
      - name: rhsso-operator.7.5.1-opr-001
        version: 7.5.1-opr-001
      - name: rhsso-operator.7.5.0
        version: 7.5.0
      name: alpha
    - currentCSV: rhsso-operator.7.6.12-opr-005
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "example-keycloakrealm"
                },
                "spec": {
                  "realm": {
                    "id": "basic",
                    "realm": "basic",
                    "enabled": true,
                    "displayName": "Basic Realm"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakBackup",
                "metadata": {
                  "name": "example-keycloakbackup"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "client-secret",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  },
                  "client": {
                    "clientId": "client-secret",
                    "secret": "client-secret",
                    "clientAuthenticatorType": "client-secret"
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakUser",
                "metadata": {
                  "name": "example-realm-user",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "user": {
                    "username": "realm_user",
                    "firstName": "John",
                    "lastName": "Doe",
                    "email": "user@example.com",
                    "enabled": true,
                    "emailVerified": false
                  },
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "False"
          containerImage: registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:1d3048c0a324abbd8d47d9dffb42030e9cb4803e263a613451ba1f37424c427b
          createdAt: "2021-08-09 00:00:00"
          description: An Operator for installing and managing Red Hat Single Sign-On
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Red Hat Single Sign-On Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Realm
            displayName: KeycloakRealm
            kind: KeycloakRealm
            name: keycloakrealms.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Backup
            displayName: KeycloakBackup
            kind: KeycloakBackup
            name: keycloakbackups.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Client
            displayName: KeycloakClient
            kind: KeycloakClient
            name: keycloakclients.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On User
            displayName: KeycloakUser
            kind: KeycloakUser
            name: keycloakusers.keycloak.org
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Red Hat Single Sign-On.

          Red Hat Single Sign-On lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
          * Import Keycloak Clients
          * Import Keycloak Users
          * Create scheduled backups of the database
        displayName: Red Hat Single Sign-On Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://access.redhat.com/products/red-hat-single-sign-on
        - name: Keycloak
          url: https://www.keycloak.org/
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat Customer Service
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:1d3048c0a324abbd8d47d9dffb42030e9cb4803e263a613451ba1f37424c427b
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/rh-sso-7/sso7-rhel8-init-container@sha256:2e63f15a19d60447d9dfd11b0d04ba634932a9c43e63773051069cdc1f5ad504
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator-bundle@sha256:c542bd411eff7a4e875b942b23452aeed8e5d60e606f87a73e16f48420fa2400
        version: 7.6.12-opr-005
      entries:
      - name: rhsso-operator.7.6.12-opr-005
        version: 7.6.12-opr-005
      - name: rhsso-operator.7.6.12-opr-004
        version: 7.6.12-opr-004
      - name: rhsso-operator.7.6.12-opr-003
        version: 7.6.12-opr-003
      - name: rhsso-operator.7.6.12-opr-002
        version: 7.6.12-opr-002
      - name: rhsso-operator.7.6.12-opr-001
        version: 7.6.12-opr-001
      - name: rhsso-operator.7.6.11-opr-006
        version: 7.6.11-opr-006
      - name: rhsso-operator.7.6.11-opr-005
        version: 7.6.11-opr-005
      - name: rhsso-operator.7.6.11-opr-004
        version: 7.6.11-opr-004
      - name: rhsso-operator.7.6.11-opr-003
        version: 7.6.11-opr-003
      - name: rhsso-operator.7.6.11-opr-002
        version: 7.6.11-opr-002
      - name: rhsso-operator.7.6.11-opr-001
        version: 7.6.11-opr-001
      - name: rhsso-operator.7.6.10-opr-001
        version: 7.6.10-opr-001
      - name: rhsso-operator.7.6.9-opr-003
        version: 7.6.9-opr-003
      - name: rhsso-operator.7.6.9-opr-002
        version: 7.6.9-opr-002
      - name: rhsso-operator.7.6.9-opr-001
        version: 7.6.9-opr-001
      - name: rhsso-operator.7.6.8-opr-002
        version: 7.6.8-opr-002
      - name: rhsso-operator.7.6.8-opr-001
        version: 7.6.8-opr-001
      - name: rhsso-operator.7.6.7-opr-002
        version: 7.6.7-opr-002
      - name: rhsso-operator.7.6.7-opr-001
        version: 7.6.7-opr-001
      - name: rhsso-operator.7.6.6-opr-004
        version: 7.6.6-opr-004
      - name: rhsso-operator.7.6.6-opr-003
        version: 7.6.6-opr-003
      - name: rhsso-operator.7.6.6-opr-002
        version: 7.6.6-opr-002
      - name: rhsso-operator.7.6.6-opr-001
        version: 7.6.6-opr-001
      - name: rhsso-operator.7.6.5-opr-004
        version: 7.6.5-opr-004
      - name: rhsso-operator.7.6.5-opr-003
        version: 7.6.5-opr-003
      - name: rhsso-operator.7.6.5-opr-002
        version: 7.6.5-opr-002
      - name: rhsso-operator.7.6.5-opr-001
        version: 7.6.5-opr-001
      - name: rhsso-operator.7.6.4-opr-003
        version: 7.6.4-opr-003
      - name: rhsso-operator.7.6.4-opr-002
        version: 7.6.4-opr-002
      - name: rhsso-operator.7.6.4-opr-001
        version: 7.6.4-opr-001
      - name: rhsso-operator.7.6.3-opr-002
        version: 7.6.3-opr-002
      - name: rhsso-operator.7.6.3-opr-001
        version: 7.6.3-opr-001
      - name: rhsso-operator.7.6.2-opr-003
        version: 7.6.2-opr-003
      - name: rhsso-operator.7.6.2-opr-002
        version: 7.6.2-opr-002
      - name: rhsso-operator.7.6.2-opr-001
        version: 7.6.2-opr-001
      - name: rhsso-operator.7.6.1-opr-005
        version: 7.6.1-opr-005
      - name: rhsso-operator.7.6.1-opr-004
        version: 7.6.1-opr-004
      - name: rhsso-operator.7.6.1-opr-003
        version: 7.6.1-opr-003
      - name: rhsso-operator.7.6.1-opr-002
        version: 7.6.1-opr-002
      - name: rhsso-operator.7.6.1-opr-001
        version: 7.6.1-opr-001
      - name: rhsso-operator.7.6.0-opr-005
        version: 7.6.0-opr-005
      - name: rhsso-operator.7.6.0-opr-004
        version: 7.6.0-opr-004
      - name: rhsso-operator.7.6.0-opr-003
        version: 7.6.0-opr-003
      - name: rhsso-operator.7.6.0-opr-002
        version: 7.6.0-opr-002
      - name: rhsso-operator.7.6.0-opr-001
        version: 7.6.0-opr-001
      - name: rhsso-operator.7.5.2-opr-003
        version: 7.5.2-opr-003
      - name: rhsso-operator.7.5.2-opr-002
        version: 7.5.2-opr-002
      - name: rhsso-operator.7.5.2-opr-001
        version: 7.5.2-opr-001
      - name: rhsso-operator.7.5.1-opr-011
        version: 7.5.1-opr-011
      - name: rhsso-operator.7.5.1-opr-010
        version: 7.5.1-opr-010
      - name: rhsso-operator.7.5.1-opr-009
        version: 7.5.1-opr-009
      - name: rhsso-operator.7.5.1-opr-009-0.1646836600.p
        version: 7.5.1-opr-009+0.1646836600.p
      - name: rhsso-operator.7.5.1-opr-008
        version: 7.5.1-opr-008
      - name: rhsso-operator.7.5.1-opr-007
        version: 7.5.1-opr-007
      - name: rhsso-operator.7.5.1-opr-006
        version: 7.5.1-opr-006
      - name: rhsso-operator.7.5.1-opr-005
        version: 7.5.1-opr-005
      - name: rhsso-operator.7.5.1-opr-004
        version: 7.5.1-opr-004
      - name: rhsso-operator.7.5.1-opr-003
        version: 7.5.1-opr-003
      - name: rhsso-operator.7.5.1-opr-002
        version: 7.5.1-opr-002
      - name: rhsso-operator.7.5.1-opr-001
        version: 7.5.1-opr-001
      - name: rhsso-operator.7.5.0
        version: 7.5.0
      name: stable
    defaultChannel: stable
    packageName: rhsso-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: amq7-interconnect-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq7-interconnect-operator.v1.10.20
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"interconnectedcloud.github.io/v1alpha1","kind":"Interconnect","metadata":{"name":"amq-interconnect"},"spec":{"deploymentPlan":{"size":2,"role":"interior","placement":"Any"}}}]'
          capabilities: Basic Install
          categories: Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
          createdAt: "2019-06-28T22:00:00Z"
          description: Layer 7 Networking
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: https://github.com/interconnectedcloud/qdr-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An instance of AMQ Interconnect
            displayName: Red Hat Integration - AMQ Interconnect
            kind: Interconnect
            name: interconnects.interconnectedcloud.github.io
            version: v1alpha1
        description: |2

          AMQ Interconnect is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and IoT/edge deployments. AMQ Interconnect transparently learns the addresses of messaging endpoints (such as clients, servers, and message brokers) and flexibly routes messages between them.

          ### Core Capabilities

          * High throughput, low latency, shortest path message forwarding based on Layer 7 address routing mechanisms

          * `Interior` mode deployments for any arbitrary topology of geographically-distributed and interconnected routers

          * `Edge` mode deployments for extremely large scale device endpoint connectivity

          * Automatic message traffic rerouting when the network topology changes (resiliency without restrictions)

          * Flexible addressing schemes and delivery semantics (anycast, multicast, closest, balanced)

          * Integrated management with full support for the draft AMQP management specification

          * Full-featured security capabilities for authentication, authorization, and policy-based resource access control

          ### Operator Features

          * **Flexible deployment plans** - Configurable deployment plans are available for `interior` and `edge` mode scenarios. These plans include all dependent resources

          * **Placement directives** - Directives are provided to control how the pods should be scheduled

          * **Connectivity configuration defaults** - Configuration defaults are automatically generated for listeners, connectors, and SSL/TLS setup

          * **Exposes the service** - Integrated management of OpenShift Routes for exposed listener services for client, inter-router, and edge communications

          * **Security certificate management** - Certificates are created and managed through integration with AMQ Certificate Manager

          ### Troubleshooting

          After deploying Interconnect, check any of the following to verify that it is operating correctly:

          * The Interconnect instance

          * The Deployment (or DaemonSet) instance

          * An individual pod for the Deployment (or DaemonSet)

          * A Route created for exposed services

          In addition, use `qdstat` commands to verify connectivity. This can be done using `oc exec` against an interconnect pod, for example `oc exec -it <podname> -- qdstat -c`
          to list connections.

          ### Documentation

          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/products/red_hat_amq#interconnect).
        displayName: Red Hat Integration - AMQ Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq#interconnect
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-interconnect-operator-metadata@sha256:d7b2c9cc8181eb372c787bb29323dc2d4cd1bb30ddb9e4bb15081a7a61e516a0
        - registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
        - registry.redhat.io/amq7/amq-interconnect@sha256:31d87473fa684178a694f9ee331d3c80f2653f9533cb65c2a325752166a077e9
        version: 1.10.20
      entries:
      - name: amq7-interconnect-operator.v1.10.20
        version: 1.10.20
      - name: amq7-interconnect-operator.v1.10.19
        version: 1.10.19
      - name: amq7-interconnect-operator.v1.10.18
        version: 1.10.18
      - name: amq7-interconnect-operator.v1.10.17
        version: 1.10.17
      - name: amq7-interconnect-operator.v1.10.16
        version: 1.10.16
      - name: amq7-interconnect-operator.v1.10.15
        version: 1.10.15
      - name: amq7-interconnect-operator.v1.10.14
        version: 1.10.14
      - name: amq7-interconnect-operator.v1.10.13
        version: 1.10.13
      - name: amq7-interconnect-operator.v1.10.12
        version: 1.10.12
      - name: amq7-interconnect-operator.v1.10.11
        version: 1.10.11
      - name: amq7-interconnect-operator.v1.10.10
        version: 1.10.10
      - name: amq7-interconnect-operator.v1.10.9
        version: 1.10.9
      - name: amq7-interconnect-operator.v1.10.8
        version: 1.10.8
      - name: amq7-interconnect-operator.v1.10.7
        version: 1.10.7
      - name: amq7-interconnect-operator.v1.10.6
        version: 1.10.6
      - name: amq7-interconnect-operator.v1.10.5
        version: 1.10.5
      - name: amq7-interconnect-operator.v1.10.4
        version: 1.10.4
      - name: amq7-interconnect-operator.v1.10.3
        version: 1.10.3
      - name: amq7-interconnect-operator.v1.10.2
        version: 1.10.2
      name: 1.10.x
    - currentCSV: amq7-interconnect-operator.v1.10.20
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"interconnectedcloud.github.io/v1alpha1","kind":"Interconnect","metadata":{"name":"amq-interconnect"},"spec":{"deploymentPlan":{"size":2,"role":"interior","placement":"Any"}}}]'
          capabilities: Basic Install
          categories: Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
          createdAt: "2019-06-28T22:00:00Z"
          description: Layer 7 Networking
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: https://github.com/interconnectedcloud/qdr-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An instance of AMQ Interconnect
            displayName: Red Hat Integration - AMQ Interconnect
            kind: Interconnect
            name: interconnects.interconnectedcloud.github.io
            version: v1alpha1
        description: |2

          AMQ Interconnect is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and IoT/edge deployments. AMQ Interconnect transparently learns the addresses of messaging endpoints (such as clients, servers, and message brokers) and flexibly routes messages between them.

          ### Core Capabilities

          * High throughput, low latency, shortest path message forwarding based on Layer 7 address routing mechanisms

          * `Interior` mode deployments for any arbitrary topology of geographically-distributed and interconnected routers

          * `Edge` mode deployments for extremely large scale device endpoint connectivity

          * Automatic message traffic rerouting when the network topology changes (resiliency without restrictions)

          * Flexible addressing schemes and delivery semantics (anycast, multicast, closest, balanced)

          * Integrated management with full support for the draft AMQP management specification

          * Full-featured security capabilities for authentication, authorization, and policy-based resource access control

          ### Operator Features

          * **Flexible deployment plans** - Configurable deployment plans are available for `interior` and `edge` mode scenarios. These plans include all dependent resources

          * **Placement directives** - Directives are provided to control how the pods should be scheduled

          * **Connectivity configuration defaults** - Configuration defaults are automatically generated for listeners, connectors, and SSL/TLS setup

          * **Exposes the service** - Integrated management of OpenShift Routes for exposed listener services for client, inter-router, and edge communications

          * **Security certificate management** - Certificates are created and managed through integration with AMQ Certificate Manager

          ### Troubleshooting

          After deploying Interconnect, check any of the following to verify that it is operating correctly:

          * The Interconnect instance

          * The Deployment (or DaemonSet) instance

          * An individual pod for the Deployment (or DaemonSet)

          * A Route created for exposed services

          In addition, use `qdstat` commands to verify connectivity. This can be done using `oc exec` against an interconnect pod, for example `oc exec -it <podname> -- qdstat -c`
          to list connections.

          ### Documentation

          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/products/red_hat_amq#interconnect).
        displayName: Red Hat Integration - AMQ Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq#interconnect
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-interconnect-operator-metadata@sha256:d7b2c9cc8181eb372c787bb29323dc2d4cd1bb30ddb9e4bb15081a7a61e516a0
        - registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
        - registry.redhat.io/amq7/amq-interconnect@sha256:31d87473fa684178a694f9ee331d3c80f2653f9533cb65c2a325752166a077e9
        version: 1.10.20
      entries:
      - name: amq7-interconnect-operator.v1.10.20
        version: 1.10.20
      - name: amq7-interconnect-operator.v1.10.19
        version: 1.10.19
      - name: amq7-interconnect-operator.v1.10.18
        version: 1.10.18
      - name: amq7-interconnect-operator.v1.10.17
        version: 1.10.17
      - name: amq7-interconnect-operator.v1.10.16
        version: 1.10.16
      - name: amq7-interconnect-operator.v1.10.15
        version: 1.10.15
      - name: amq7-interconnect-operator.v1.10.14
        version: 1.10.14
      - name: amq7-interconnect-operator.v1.10.13
        version: 1.10.13
      - name: amq7-interconnect-operator.v1.10.12
        version: 1.10.12
      - name: amq7-interconnect-operator.v1.10.11
        version: 1.10.11
      - name: amq7-interconnect-operator.v1.10.10
        version: 1.10.10
      - name: amq7-interconnect-operator.v1.10.9
        version: 1.10.9
      - name: amq7-interconnect-operator.v1.10.8
        version: 1.10.8
      - name: amq7-interconnect-operator.v1.10.7
        version: 1.10.7
      - name: amq7-interconnect-operator.v1.10.6
        version: 1.10.6
      - name: amq7-interconnect-operator.v1.10.5
        version: 1.10.5
      - name: amq7-interconnect-operator.v1.10.4
        version: 1.10.4
      - name: amq7-interconnect-operator.v1.10.3
        version: 1.10.3
      - name: amq7-interconnect-operator.v1.10.2
        version: 1.10.2
      name: 1.2.0
    - currentCSV: amq7-interconnect-operator.v1.10.20
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"interconnectedcloud.github.io/v1alpha1","kind":"Interconnect","metadata":{"name":"amq-interconnect"},"spec":{"deploymentPlan":{"size":2,"role":"interior","placement":"Any"}}}]'
          capabilities: Basic Install
          categories: Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
          createdAt: "2019-06-28T22:00:00Z"
          description: Layer 7 Networking
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: https://github.com/interconnectedcloud/qdr-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An instance of AMQ Interconnect
            displayName: Red Hat Integration - AMQ Interconnect
            kind: Interconnect
            name: interconnects.interconnectedcloud.github.io
            version: v1alpha1
        description: |2

          AMQ Interconnect is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and IoT/edge deployments. AMQ Interconnect transparently learns the addresses of messaging endpoints (such as clients, servers, and message brokers) and flexibly routes messages between them.

          ### Core Capabilities

          * High throughput, low latency, shortest path message forwarding based on Layer 7 address routing mechanisms

          * `Interior` mode deployments for any arbitrary topology of geographically-distributed and interconnected routers

          * `Edge` mode deployments for extremely large scale device endpoint connectivity

          * Automatic message traffic rerouting when the network topology changes (resiliency without restrictions)

          * Flexible addressing schemes and delivery semantics (anycast, multicast, closest, balanced)

          * Integrated management with full support for the draft AMQP management specification

          * Full-featured security capabilities for authentication, authorization, and policy-based resource access control

          ### Operator Features

          * **Flexible deployment plans** - Configurable deployment plans are available for `interior` and `edge` mode scenarios. These plans include all dependent resources

          * **Placement directives** - Directives are provided to control how the pods should be scheduled

          * **Connectivity configuration defaults** - Configuration defaults are automatically generated for listeners, connectors, and SSL/TLS setup

          * **Exposes the service** - Integrated management of OpenShift Routes for exposed listener services for client, inter-router, and edge communications

          * **Security certificate management** - Certificates are created and managed through integration with AMQ Certificate Manager

          ### Troubleshooting

          After deploying Interconnect, check any of the following to verify that it is operating correctly:

          * The Interconnect instance

          * The Deployment (or DaemonSet) instance

          * An individual pod for the Deployment (or DaemonSet)

          * A Route created for exposed services

          In addition, use `qdstat` commands to verify connectivity. This can be done using `oc exec` against an interconnect pod, for example `oc exec -it <podname> -- qdstat -c`
          to list connections.

          ### Documentation

          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/products/red_hat_amq#interconnect).
        displayName: Red Hat Integration - AMQ Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq#interconnect
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-interconnect@sha256:31d87473fa684178a694f9ee331d3c80f2653f9533cb65c2a325752166a077e9
        - registry.redhat.io/amq7/amq-interconnect-operator-metadata@sha256:d7b2c9cc8181eb372c787bb29323dc2d4cd1bb30ddb9e4bb15081a7a61e516a0
        - registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
        version: 1.10.20
      entries:
      - name: amq7-interconnect-operator.v1.10.20
        version: 1.10.20
      - name: amq7-interconnect-operator.v1.10.19
        version: 1.10.19
      - name: amq7-interconnect-operator.v1.10.18
        version: 1.10.18
      - name: amq7-interconnect-operator.v1.10.17
        version: 1.10.17
      - name: amq7-interconnect-operator.v1.10.16
        version: 1.10.16
      - name: amq7-interconnect-operator.v1.10.15
        version: 1.10.15
      - name: amq7-interconnect-operator.v1.10.14
        version: 1.10.14
      - name: amq7-interconnect-operator.v1.10.13
        version: 1.10.13
      - name: amq7-interconnect-operator.v1.10.12
        version: 1.10.12
      - name: amq7-interconnect-operator.v1.10.11
        version: 1.10.11
      - name: amq7-interconnect-operator.v1.10.10
        version: 1.10.10
      - name: amq7-interconnect-operator.v1.10.9
        version: 1.10.9
      - name: amq7-interconnect-operator.v1.10.8
        version: 1.10.8
      - name: amq7-interconnect-operator.v1.10.7
        version: 1.10.7
      - name: amq7-interconnect-operator.v1.10.6
        version: 1.10.6
      - name: amq7-interconnect-operator.v1.10.5
        version: 1.10.5
      - name: amq7-interconnect-operator.v1.10.4
        version: 1.10.4
      - name: amq7-interconnect-operator.v1.10.3
        version: 1.10.3
      - name: amq7-interconnect-operator.v1.10.2
        version: 1.10.2
      name: latest
    defaultChannel: 1.10.x
    packageName: amq7-interconnect-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Altair Engineering Inc.
      provider-url: ""
    name: anzo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: anzo-operator.v3.1.300
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "anzo.cambridgesemantics.com/v2",
                "kind": "Anzo",
                "metadata": {
                  "name": "no-persistence"
                },
                "spec": {
                  "jsonActivation": true,
                  "jvmMemory": "4096m",
                  "nodeConfig": {
                    "spec": {
                      "replicas": 1,
                      "selector": {
                        "matchLabels": {
                          "app": "anzo"
                        }
                      },
                      "serviceName": "anzo-no-persistence",
                      "template": {
                        "metadata": {
                          "annotations": {
                            "cluster-autoscaler.kubernetes.io/safe-to-evict": "false"
                          },
                          "labels": {
                            "app": "anzo"
                          }
                        },
                        "spec": {
                          "containers": [
                            {
                              "image": "registry.connect.redhat.com/cambridgesemantics/anzo@sha256:5e5050fed0362b35f0f4c95deb85fc22caf59e387b58efb0d593102e2a793938",
                              "imagePullPolicy": "Always",
                              "name": "anzo",
                              "resources": {
                                "limits": {
                                  "cpu": "2.0",
                                  "memory": "8.0Gi"
                                },
                                "requests": {
                                  "cpu": "2.0",
                                  "memory": "8.0Gi"
                                }
                              }
                            }
                          ],
                          "initContainers": [
                            {
                              "name": "anzo-init",
                              "resources": {
                                "limits": {
                                  "cpu": "0.5",
                                  "memory": "2Gi"
                                },
                                "requests": {
                                  "cpu": "0.5",
                                  "memory": "2Gi"
                                }
                              }
                            }
                          ],
                          "securityContext": {
                            "fsGroup": 1001
                          },
                          "serviceAccountName": "anzo-operator"
                        }
                      }
                    }
                  },
                  "role": "AnzoServer"
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          certified: "true"
          containerImage: registry.connect.redhat.com/cambridgesemantics/anzo-operator@sha256:29dc94eafcd5ce589c6ebfa6549b88d0269bd20f9baf1116b698a78c5992368c
          createdAt: "2025-10-08T06:53:22Z"
          description: kubernetes operator for Altair Graph Studio
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: unknown
          repository: ""
          support: Altair Customer Support
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnzoBackup is the Schema for the anzobackups API
            displayName: Altair Graph Studio Backup
            kind: AnzoBackup
            name: anzobackups.anzobackup.cambridgesemantics.com
            version: v1beta1
          - description: Altair Graph Studio is the Schema for the anzos API
            displayName: Altair Graph Studio Operator
            kind: Anzo
            name: anzos.anzo.cambridgesemantics.com
            version: v2
        description: |-
          The Altair Graph Studio Operator provides the way to install and configure an altair graph studio server and agent setup on Red Hat K8S environment.

          ### Installation
           Refer [installation instructions]( https://github.com/cambridgesemantics/csi-k8s-operator-anzo/blob/v3.1.3/README.md )

          ### Documentation

          You can find our documentation [here.]( https://docs.cambridgesemantics.com/anzo/userdoc/deploy-k8s.htm )

          ### Support

          We offer Support to our customers [here]( https://altair.com/customer-support ) or by emailing the Data Analytics Support team at dasupport@altair.com.
        displayName: Altair Graph Studio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Big Data
        links:
        - name: Altair Graph Studio Operator
          url: https://github.com/cambridgesemantics/csi-k8s-operator-anzo/blob/v3.1.3/README_openshift.md
        maintainers:
        - email: fschwichtenberg@altair.com
          name: Frank Schwichtenberg
        maturity: stable
        provider:
          name: Altair Engineering Inc.
        relatedImages:
        - registry.connect.redhat.com/cambridgesemantics/anzo-operator@sha256:29dc94eafcd5ce589c6ebfa6549b88d0269bd20f9baf1116b698a78c5992368c
        - registry.connect.redhat.com/cambridgesemantics/anzo@sha256:5e5050fed0362b35f0f4c95deb85fc22caf59e387b58efb0d593102e2a793938
        - registry.connect.redhat.com/cambridgesemantics/anzo-operator-bundle@sha256:5a7000171e26cee4028c2bd91b50ad37bccf5e168ac413c19689a9ee914a2219
        version: 3.1.300
      entries:
      - name: anzo-operator.v3.1.300
        version: 3.1.300
      - name: anzo-operator.v3.1.200
        version: 3.1.200
      - name: anzo-operator.v3.1.106
        version: 3.1.106
      - name: anzo-operator.v3.1.105
        version: 3.1.105
      name: stable
    defaultChannel: stable
    packageName: anzo-operator
    provider:
      name: Altair Engineering Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: ""
    name: percona-server-mysql-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-server-mysql-operator-certified.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQL",
              "metadata": {
                "name": "ps-cluster1",
                "finalizers": [
                  "percona.com/delete-mysql-pods-in-order"
                ]
              },
              "spec": {
                "crVersion": "1.0.0",
                "secretsName": "ps-cluster1-secrets",
                "sslSecretName": "ps-cluster1-ssl",
                "updateStrategy": "SmartUpdate",
                "upgradeOptions": {
                  "versionServiceEndpoint": "https://check.percona.com",
                  "apply": "disabled"
                },
                "initContainer" : {
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator@sha256:71850c11e72e87c09e2f423c57963c143f5e3fac9ac7d062119f5e4254f158f7"
                },
                "mysql": {
                  "clusterType": "group-replication",
                  "autoRecovery": true,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:ea97c9df3e362728fc3819c28c841498f5a1765945b9556bc964b218b7d4dc97",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "resources": {
                    "requests": {
                      "memory": "2Gi"
                    },
                    "limits": {
                      "memory": "4Gi"
                    }
                  },
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "exposePrimary": {
                    "enabled": true
                  },
                  "volumeSpec": {
                    "persistentVolumeClaim": {
                      "resources": {
                        "requests": {
                          "storage": "2Gi"
                        }
                      }
                    }
                  },
                  "gracePeriod": 600
                },
                "proxy": {
                  "haproxy": {
                    "enabled": true,
                    "size": 3,
                    "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e64e468ac0ed2036ee164631469cc71821dcb84a6d568883f704d0eacaf84bb4",
                    "imagePullPolicy": "Always",
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "1Gi",
                        "cpu": "600m"
                      }
                    },
                    "gracePeriod": 30,
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    }
                  },
                  "router": {
                    "enabled": false,
                    "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e083c632c118cd4af472d9030a7900401f4b338e069c91996fe33747b77be985",
                    "imagePullPolicy": "Always",
                    "size": 3,
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "256M"
                      },
                      "limits": {
                        "memory": "256M"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "gracePeriod": 30
                  }
                },
                "orchestrator": {
                  "enabled": false,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:a8a70f8882925b0a1a46893376e29af73646117b22e1eeb5a0a89876a907651f",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "gracePeriod": 30,
                  "resources": {
                    "requests": {
                      "memory": "128M"
                    },
                    "limits": {
                      "memory": "256M"
                    }
                  }
                },
                "pmm": {
                  "enabled": false,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:1c59d7188f8404e0294f4bfb3d2c3600107f808a023668a170a6b8036c56619b",
                  "imagePullPolicy": "Always",
                  "resources": {
                    "requests": {
                      "memory": "150M",
                      "cpu": "300m"
                    }
                  },
                  "serverHost": "monitoring-service"
                },
                "backup": {
                  "enabled": true,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:423d64bdb0220c7df34300b88ec10b3706443d8f4c9111d0bd752c9279eebbe3",
                  "imagePullPolicy": "Always",
                  "storages": {
                    "s3-us-west": {
                      "type": "s3",
                      "verifyTLS": true,
                      "s3": {
                        "bucket": "S3-BACKUP-BUCKET-NAME-HERE",
                        "credentialsSecret": "ps-cluster1-s3-credentials",
                        "region": "us-west-2"
                      }
                    }
                  }
                },
                "toolkit": {
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:b7a4a2ca71ebf2b35786ab614221cbefb032fd5dfb5c5a478efcdd23931dd70b",
                  "imagePullPolicy": "Always"
                }
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLBackup",
              "metadata": {
                "name": "backup1",
                "finalizers": [
                  "percona.com/delete-backup"
                ]
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "storageName": "minio"
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLRestore",
              "metadata": {
                "name": "restore1"
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "backupName": "backup1"
              }
            }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: registry.connect.redhat.com/percona/percona-server-mysql-operator@sha256:71850c11e72e87c09e2f423c57963c143f5e3fac9ac7d062119f5e4254f158f7
          createdAt: "2025-11-13T08:00:00.000Z"
          description: Percona Operator for MySQL based on Percona Server for MySQL
            automates the creation and management of highly available, enterprise-ready
            MySQL database clusters on Kubernetes.
          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"
          repository: https://github.com/percona/percona-server-mysql-operator
          support: Percona
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaServerMySQLBackup is the Schema for the perconaservermysqlbackups
              API
            displayName: Percona Server MySQL Backup
            kind: PerconaServerMySQLBackup
            name: perconaservermysqlbackups.ps.percona.com
            version: v1
          - description: PerconaServerMySQLRestore is the Schema for the perconaservermysqlrestores
              API
            displayName: Percona Server MySQL Restore
            kind: PerconaServerMySQLRestore
            name: perconaservermysqlrestores.ps.percona.com
            version: v1
          - description: PerconaServerMySQL is the Schema for the perconaservermysqls
              API
            displayName: Percona Server MySQL
            kind: PerconaServerMySQL
            name: perconaservermysqls.ps.percona.com
            version: v1
        description: |2+

          ## Percona is Cloud Native

          Percona Operator for MySQL based on Percona Server for MySQL follows our best practices for deployment and configuration of highly-available, fault-tolerant MySQL instances in a Kubernetes-based environment on-premises or in the cloud. It provides the following capabilities:
          * Deploy group replication MySQL clusters with HAProxy or MySQL Router
          * Deploy asynchronous replication MySQL clusters with Orchestrator and HAProxy
          * Expose clusters with regular Kubernetes Services
          * Monitor the cluster with Percona Monitoring and Management
          * Customize MySQL configuration
          * Manage system user passwords

        displayName: Percona Operator for MySQL based on Percona Server for MySQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mysql
        - percona
        - database
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-mysql/ps/
        - name: Github
          url: https://github.com/percona/percona-server-mysql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
        relatedImages:
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e083c632c118cd4af472d9030a7900401f4b338e069c91996fe33747b77be985
        - registry.connect.redhat.com/percona/percona-server-mysql-operator@sha256:71850c11e72e87c09e2f423c57963c143f5e3fac9ac7d062119f5e4254f158f7
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:1c59d7188f8404e0294f4bfb3d2c3600107f808a023668a170a6b8036c56619b
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:315efeac572c48cc6f118bba7e0b2545ad396142f60328f2db9620ae0ad57e45
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:b7a4a2ca71ebf2b35786ab614221cbefb032fd5dfb5c5a478efcdd23931dd70b
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e64e468ac0ed2036ee164631469cc71821dcb84a6d568883f704d0eacaf84bb4
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-bundle@sha256:bb3bf3339f0719b37fbdd9d2d6d47aeff1fa063e319bc6aeb24c384cce5cc061
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:3a420b803cd39c7c2a3ff414d45d1858df39599961339f5c02df0681f558ccdd
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@ssha256:967bafa0823c90aa8fa9c25a9012be36b0deef64e255294a09148d77ce6aea68
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:423d64bdb0220c7df34300b88ec10b3706443d8f4c9111d0bd752c9279eebbe3
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:a8a70f8882925b0a1a46893376e29af73646117b22e1eeb5a0a89876a907651f
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:ea97c9df3e362728fc3819c28c841498f5a1765945b9556bc964b218b7d4dc97
        version: 1.0.0
      entries:
      - name: percona-server-mysql-operator-certified.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: percona-server-mysql-operator-certified
    provider:
      name: Percona
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Arctera US LLC
      provider-url: https://www.arctera.io
    name: infoscale-sds-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infoscale-sds-operator.v8.0.230
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "8.0.230"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleStoragePool",
                "metadata": {
                  "name": "infoscalestoragepool-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:f4947eab2b31fccc86b5d5d0d3fd4eb1f7513fd8325e379cc259f5ccd1dfc3e4
          createdAt: "2023-10-26T20:36:59Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          olm.skipRange: <8.0.230
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.22.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleStoragePool is the Schema for the infoscalestoragepools
              API
            displayName: InfoScale Storage Pool
            kind: InfoScaleStoragePool
            name: infoscalestoragepools.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Veritas InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/151215298-151215302-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >

          spec:
            version: "8.0.230"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Veritas recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator-bundle@sha256:12d6ae3f139daf33dbf104499c195d9915470b957f401b5f622cfde92350a6c1
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:f4947eab2b31fccc86b5d5d0d3fd4eb1f7513fd8325e379cc259f5ccd1dfc3e4
        version: 8.0.230
      entries:
      - name: infoscale-sds-operator.v8.0.230
        version: 8.0.230
      - name: infoscale-sds-operator.v8.0.220
        version: 8.0.220
      - name: infoscale-sds-operator.v8.0.110
        version: 8.0.110
      - name: infoscale-sds-operator.v8.0.100
        version: 8.0.100
      name: 8.0.200x
    - currentCSV: infoscale-sds-operator.v8.0.330
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "8.0.330"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:dab501b99373c840c7e8e3ab479fa273b39f9bf8a896f3f1e4e945f4ab81f64e
          createdAt: "2024-06-24T09:03:32Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Veritas InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/151215298-151215302-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >

          spec:
            version: "8.0.330"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Veritas recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator-bundle@sha256:965ec7875eccc6a5fc56c3b8f0da668d826d34580117ba1438a607a9d0d13b73
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:dab501b99373c840c7e8e3ab479fa273b39f9bf8a896f3f1e4e945f4ab81f64e
        version: 8.0.330
      entries:
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: 8.0.300x
    - currentCSV: infoscale-sds-operator.v8.0.410
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "8.0.410"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:43397ed6430691b35c71bc4a4ff4eddcbd685e84cf0a3e3604e19feb4f363d9f
          createdAt: "2024-07-30T09:00:57Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >

          spec:
            version: "8.0.410"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:a51a626126460cbf8e614fd3287bce3419fc5b728788c5cb9b1ab1fa1cf98259
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:43397ed6430691b35c71bc4a4ff4eddcbd685e84cf0a3e3604e19feb4f363d9f
        version: 8.0.410
      entries:
      - name: infoscale-sds-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-sds-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-sds-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: 8.0.400x
    - currentCSV: infoscale-sds-operator.v9.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "9.1.0"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:8c5db3e0553bf9feed1f1728d4a51a28769dd9b002c9d937c6b867e3a3981780
          createdAt: "2025-09-11T19:37:19Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >
            namespace: < Infoscale Cluster Namespace >

          spec:
            version: "9.1.0"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:b7a875f1c540ea0a3c944f956c1b7b0f0b6ba55dcadaee6e9420513a3e979577
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:8c5db3e0553bf9feed1f1728d4a51a28769dd9b002c9d937c6b867e3a3981780
        version: 9.0.1
      entries:
      - name: infoscale-sds-operator.v9.0.1
        version: 9.0.1
      name: beta
    - currentCSV: infoscale-sds-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "9.1.0"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
          createdAt: "2025-09-11T19:37:19Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >
            namespace: < Infoscale Cluster Namespace >

          spec:
            version: "9.1.0"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:3f9cc14ae694c6a51d65fa5e32cfb737654c4c870f01e5522ff9ba5e2ad7f937
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
        version: 9.1.0
      entries:
      - name: infoscale-sds-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-sds-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-sds-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-sds-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: fast
    - currentCSV: infoscale-sds-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "9.1.0"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
          createdAt: "2025-09-11T19:37:19Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >
            namespace: < Infoscale Cluster Namespace >

          spec:
            version: "9.1.0"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:3f9cc14ae694c6a51d65fa5e32cfb737654c4c870f01e5522ff9ba5e2ad7f937
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
        version: 9.1.0
      entries:
      - name: infoscale-sds-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-sds-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-sds-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-sds-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: stable
    defaultChannel: fast
    packageName: infoscale-sds-operator
    provider:
      name: Arctera US LLC
      url: https://www.arctera.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Redis
      provider-url: ""
    name: redis-enterprise-operator-cert
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: redis-enterprise-operator.v8.0.2-6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/services-manager@sha256:1e858656f7ec0fa64cd6b159ae4748b24aac274b5ec4418409a485a6ad38cb9f
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:d751658d4a1b56e54ee404b8ff995f3c4056cb71020a3dfcbb064e86366f4a44
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:65b77d4e8d4d733812dd5de1890f25f3b85dae94b92e6c35f89ab45c2c8ab337
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:750c5f78fd0dedcaecb7aba2bb3afa527622db928fec696733ad07e5fa856f85
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:bbe02b59de239cef008edb84508a2800080423d6aa17e1b2de6c81e3897d5a93
        version: 8.0.2-6.1
      entries:
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.2
    - currentCSV: redis-enterprise-operator.v8.0.2-2.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:8ee164c4aa7e1a6eb2b9a717ba2ef10399962db8d08989b9d28d4a6bb55ed434
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:8487e6a03404387d1d749080fb7e1e5025b1a762a9b617ca1f211e2999bb55d8
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:bd85f2f6dbff84eba2eab6ade2dde9adc07afedfaf2b40471079eb09c3677e8d
        - registry.connect.redhat.com/redislabs/services-manager@sha256:f13145b0998d9267871b7526c12018da4ba4bfc35aa4c56199a022dc96ddcb96
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:2ed588ff843778a111539e0857f7961a5a64393c70a1794a27502b488cffb38c
        version: 8.0.2-2.9
      entries:
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.2-2.9
    - currentCSV: redis-enterprise-operator.v8.0.2-6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:d751658d4a1b56e54ee404b8ff995f3c4056cb71020a3dfcbb064e86366f4a44
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:65b77d4e8d4d733812dd5de1890f25f3b85dae94b92e6c35f89ab45c2c8ab337
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:750c5f78fd0dedcaecb7aba2bb3afa527622db928fec696733ad07e5fa856f85
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:bbe02b59de239cef008edb84508a2800080423d6aa17e1b2de6c81e3897d5a93
        - registry.connect.redhat.com/redislabs/services-manager@sha256:1e858656f7ec0fa64cd6b159ae4748b24aac274b5ec4418409a485a6ad38cb9f
        version: 8.0.2-6.1
      entries:
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.2-6.1
    - currentCSV: redis-enterprise-operator.v8.0.6-8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:10c2630183aaf357bca793dbe239e7011d2527dfa6ff5f15c0278bbc501eaeb4
        - registry.connect.redhat.com/redislabs/services-manager@sha256:8cf316b7c8381387cb092d691a9a5bf098b8604229cabf95994eeb105d962037
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:5540b0c0150e0b1b3979cd0d96ad2853472cd9fafdc03af5835d0e34ec329c82
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:4f070787e98014dfa13587931e73751e616cb56848236346a1cccd31cc0543bf
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:7c9a0c2c41d4104a4e4d319b63cc7188ff1e72ed3f75ec51f8ee1a022ac83e16
        version: 8.0.6-8.0
      entries:
      - name: redis-enterprise-operator.v8.0.6-8.0
        version: 8.0.6-8.0
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.6
    - currentCSV: redis-enterprise-operator.v8.0.6-8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/services-manager@sha256:8cf316b7c8381387cb092d691a9a5bf098b8604229cabf95994eeb105d962037
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:5540b0c0150e0b1b3979cd0d96ad2853472cd9fafdc03af5835d0e34ec329c82
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:4f070787e98014dfa13587931e73751e616cb56848236346a1cccd31cc0543bf
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:7c9a0c2c41d4104a4e4d319b63cc7188ff1e72ed3f75ec51f8ee1a022ac83e16
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:10c2630183aaf357bca793dbe239e7011d2527dfa6ff5f15c0278bbc501eaeb4
        version: 8.0.6-8.0
      entries:
      - name: redis-enterprise-operator.v8.0.6-8.0
        version: 8.0.6-8.0
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.6-8.0
    - currentCSV: redis-enterprise-operator.v8.0.6-8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:5540b0c0150e0b1b3979cd0d96ad2853472cd9fafdc03af5835d0e34ec329c82
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:4f070787e98014dfa13587931e73751e616cb56848236346a1cccd31cc0543bf
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:7c9a0c2c41d4104a4e4d319b63cc7188ff1e72ed3f75ec51f8ee1a022ac83e16
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:10c2630183aaf357bca793dbe239e7011d2527dfa6ff5f15c0278bbc501eaeb4
        - registry.connect.redhat.com/redislabs/services-manager@sha256:8cf316b7c8381387cb092d691a9a5bf098b8604229cabf95994eeb105d962037
        version: 8.0.6-8.0
      entries:
      - name: redis-enterprise-operator.v8.0.6-8.0
        version: 8.0.6-8.0
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: production
    defaultChannel: production
    packageName: redis-enterprise-operator-cert
    provider:
      name: Redis
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Cloudera
      provider-url: https://cloudera.com
    name: cfm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cfm-operator.v2.9.0-b96
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "Nifi",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifi-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifi",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifi-sample"
                },
                "spec": {
                  "hostName": "nifi.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifi-k8s",
                    "tag": "2.8.0-b94-nifi_1.25.0.2.3.13.0-36"
                  },
                  "replicas": 1,
                  "stateManagement": {
                    "clusterProvider": {
                      "class": "org.apache.nifi.kubernetes.state.provider.KubernetesConfigMapStateProvider",
                      "id": "kubernetes-provider"
                    }
                  },
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.8.0-b94"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              },
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "NifiRegistry",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifiregistry-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifiregistry",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifiregistry-sample"
                },
                "spec": {
                  "hostName": "registry.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s",
                    "tag": "2.8.0-b94-nifi_1.25.0.2.3.13.0-36"
                  },
                  "replicas": 1,
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.8.0-b94"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning,Big Data
          com.redhat.openshift.versions: v4.10
          containerImage: container.repository.cloudera.com/cloudera/cfm-operator@sha256:890d81188143ccf9ebe2c2fe5e039cdff3a2df53f7512555673f0468147e991e
          createdAt: "2024-12-06T19:03:24Z"
          description: Cloudera Flow Management - Kubernetes Operator for Apache NiFideploys
            and operates Apache NiFi
          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"
          operators.openshift.io/valid-subscription: A valid Cloudera license is required.
            Contact a Cloudera account team to learn more.
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NifiRegistry is the Schema for the nifiregistries API.
            displayName: Nifi Registry
            kind: NifiRegistry
            name: nifiregistries.cfm.cloudera.com
            version: v1alpha1
          - description: Nifi is the Schema for the nifis API.
            displayName: Nifi
            kind: Nifi
            name: nifis.cfm.cloudera.com
            version: v1alpha1
        description: |-
          Cloudera Flow Management - Kubernetes Operator for Apache NiFi brings enterprise-grade NiFi and NiFi Registry deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of NiFi and NiFi Registry for enterprise deployments.
          To learn more about Cloudera Flow Management - Kubernetes Operator for Apache NiFi read this
          [deep dive blog post](https://community.cloudera.com/t5/Community-Articles/Cloudera-Flow-Management-Operator-A-technical-deep-dive/ta-p/390473).

          Cloudera Flow Management - Kubernetes Operator for Apache NiFi consists of and ships multiple components including Apache NiFi, Apache NiFi Registry,
          and a custom sidecar image for logging aggregation.

          ## Installation prerequisites

          Installing Cloudera Flow Management - Kubernetes Operator for Apache NiFi requires the a valid license as well as Cloudera credentials
          (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly.
          The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) from which installation artifacts are pulled.

          ### Obtaining a license
          Contact [Cloudera sales](https://cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets
          Before installation, create two `Secrets`. One containing your Cloudera credentials and one containing your license. Cloudera credentials are provided to you
          together with your license.

          1. Create a `Secret` containing your Cloudera credentials.
              `oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***]
               --docker-server=container.repository.cloudera.com`

          2. Create a `Secret` containing your license.
              `oc create secret generic cfm-operator-license --from-file=license.txt=[***PATH TO LICENSE FILE***]`

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces in which you
            plan to deploy NiFi clusters or NiFi Registry deployments. Cloudera recommends that you create the `Secret` in all required namespaces before installation
            if you know which namespaces you will be using to deploy NiFi clusters or NiFi Registry deployments.

          ## Learn more
          To learn more, visit the [Cloudera Flow Management - Kubernetes Operator for Apache NiFi documentation library](https://docs.cloudera.com/cfm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Flow Management - Kubernetes Operator for Apache NiFi, visit the following resources:
          * [Apache NiFi](https://nifi.apache.org/)
          * [Apache NiFi Registry](https://nifi.apache.org/registry.html)
        displayName: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nifi
        - nifiregistry
        - cloudera
        - cfm
        links:
        - name: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
          url: https://docs.cloudera.com/cfm-operator
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/cfm-nifi-k8s@sha256:0d700b7eff096dfc362868345826c3a6460fa43a700273b1422e95015b7727ee
        - container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s@sha256:914dcde9ee97894fa6f5deec285e53bf81d196e071a997cabb40fedd52deccc3
        - container.repository.cloudera.com/cloudera/cfm-operator@sha256:890d81188143ccf9ebe2c2fe5e039cdff3a2df53f7512555673f0468147e991e
        - container.repository.cloudera.com/cloudera/cfm-tini@sha256:6493d23e20fca8daf31823403fca3dd9b42da983464fbe788a6863e141e8b66b
        - registry.connect.redhat.com/cloudera/cfm-operator-bundle@sha256:ca70ebce43d451d040aedcec036413f986e620234fd9a56d45983805396db0b5
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:86af06fb3b6c17b22be47118b0a8c797fa7fdd3c00dbe99a2d2a593ca8fc3d63
        version: 2.9.0-b96
      entries:
      - name: cfm-operator.v2.9.0-b96
        version: 2.9.0-b96
      name: alpha
    - currentCSV: cfm-operator.v2.11.0-b57
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "Nifi",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifi-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifi",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifi-sample"
                },
                "spec": {
                  "hostName": "nifi.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifi-k8s",
                    "tag": "2.9.0-b96-nifi_1.27.0.2.3.14.0-14"
                  },
                  "replicas": 1,
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.9.0-b96"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              },
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "NifiRegistry",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifiregistry-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifiregistry",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifiregistry-sample"
                },
                "spec": {
                  "hostName": "registry.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s",
                    "tag": "2.9.0-b96-nifi_1.27.0.2.3.14.0-14"
                  },
                  "replicas": 1,
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.9.0-b96"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              },
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "NifiRegistryBinding",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cfm-operator"
                  },
                  "name": "nifiregistrybinding-sample"
                },
                "spec": null
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning,Big Data
          com.redhat.openshift.versions: v4.10
          containerImage: container.repository.cloudera.com/cloudera/cfm-operator@sha256:88eb0813317d6f7984dffa0ad9aef3a24fb69890682086a1a78f63c1fe6438ff
          createdAt: "2025-10-08T16:02:41Z"
          description: Cloudera Flow Management - Kubernetes Operator for Apache NiFideploys
            and operates Apache NiFi
          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"
          operators.openshift.io/valid-subscription: A valid Cloudera license is required.
            Contact a Cloudera account team to learn more.
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NifiRegistry is the Schema for the nifiregistries API.
            displayName: Nifi Registry
            kind: NifiRegistry
            name: nifiregistries.cfm.cloudera.com
            version: v1alpha1
          - description: NifiRegistryBinding is the Schema for the nifiregistrybindings
              API
            displayName: Nifi Registry Binding
            kind: NifiRegistryBinding
            name: nifiregistrybindings.cfm.cloudera.com
            version: v1alpha1
          - description: Nifi is the Schema for the nifis API.
            displayName: Nifi
            kind: Nifi
            name: nifis.cfm.cloudera.com
            version: v1alpha1
        description: |-
          Cloudera Flow Management - Kubernetes Operator for Apache NiFi brings enterprise-grade NiFi and NiFi Registry deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of NiFi and NiFi Registry for enterprise deployments.
          To learn more about Cloudera Flow Management - Kubernetes Operator for Apache NiFi read this
          [deep dive blog post](https://community.cloudera.com/t5/Community-Articles/Cloudera-Flow-Management-Operator-A-technical-deep-dive/ta-p/390473).

          Cloudera Flow Management - Kubernetes Operator for Apache NiFi consists of and ships multiple components including Apache NiFi, Apache NiFi Registry,
          and a custom sidecar image for logging aggregation.

          ## Installation prerequisites

          Installing Cloudera Flow Management - Kubernetes Operator for Apache NiFi requires the a valid license as well as Cloudera credentials
          (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly.
          The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) from which installation artifacts are pulled.

          ### Obtaining a license
          Contact [Cloudera sales](https://cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets
          Before installation, create two `Secrets`. One containing your Cloudera credentials and one containing your license. Cloudera credentials are provided to you
          together with your license.

          1. Create a `Secret` containing your Cloudera credentials.
              `oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***]
               --docker-server=container.repository.cloudera.com --namespace [***OPERATOR INSTALL NAMESPACE***]`

          2. Create a `Secret` containing your license.
              `oc create secret generic cfm-operator-license --from-file=license.txt=[***PATH TO LICENSE FILE***] --namespace [***OPERATOR INSTALL NAMESPACE***]`

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces in which you
            plan to deploy NiFi clusters or NiFi Registry deployments. Cloudera recommends that you create the `Secret` in all required namespaces before installation
            if you know which namespaces you will be using to deploy NiFi clusters or NiFi Registry deployments.

          ## Learn more
          To learn more, visit the [Cloudera Flow Management - Kubernetes Operator for Apache NiFi documentation library](https://docs.cloudera.com/cfm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Flow Management - Kubernetes Operator for Apache NiFi, visit the following resources:
          * [Apache NiFi](https://nifi.apache.org/)
          * [Apache NiFi Registry](https://nifi.apache.org/registry.html)
        displayName: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nifi
        - nifiregistry
        - cloudera
        - cfm
        links:
        - name: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
          url: https://docs.cloudera.com/cfm-operator
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/cfm-operator@sha256:88eb0813317d6f7984dffa0ad9aef3a24fb69890682086a1a78f63c1fe6438ff
        - container.repository.cloudera.com/cloudera/cfm-tini@sha256:50eee4783b59129b673c72d5e53a44bfd785a298c85577b36624e5e44a890a59
        - registry.connect.redhat.com/cloudera/cfm-operator-bundle@sha256:699e4b3766cd42da370f6d8826b9e906fedfa0cd1b5ed1ca11b2917d661ee272
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:86af06fb3b6c17b22be47118b0a8c797fa7fdd3c00dbe99a2d2a593ca8fc3d63
        - container.repository.cloudera.com/cloudera/cfm-nifi-k8s@sha256:fe8ce86deb7b8e02f6b4f1fa7580853d31e44af82dd197d81f578ed9df759587
        - container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s@sha256:96cf36d77f4231d2429af378879c155336ec80a5b64966602ceb6811684dfe04
        version: 2.11.0-b57
      entries:
      - name: cfm-operator.v2.11.0-b57
        version: 2.11.0-b57
      name: stable
    defaultChannel: stable
    packageName: cfm-operator
    provider:
      name: Cloudera
      url: https://cloudera.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: AppDynamics LLC
      provider-url: https://www.appdynamics.com/
    name: appdynamics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: appdynamics-operator.v24.7.0-861
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cluster.appdynamics.com/v1alpha1",
                "kind": "Clusteragent",
                "metadata": {
                  "name": "k8s-cluster-agent",
                  "namespace": "appdynamics"
                },
                "spec": {
                  "appName": "<app-name>",
                  "controllerUrl": "<appdynamics-controller-url",
                  "account": "<appdynamics-account-name>",
                  "image": "<your-docker-registry>/appdynamics/cluster-agent:tag"
                }
              },
              {
                "apiVersion": "cluster.appdynamics.com/v1alpha1",
                "kind": "InfraViz",
                "metadata": {
                  "name": "appdynamics-infraviz",
                  "namespace": "appdynamics"
                },
                "spec": {
                  "controllerUrl": "<appdynamics-controller-url",
                  "account": "<appdynamics-account-name>",
                  "image": "<your-docker-registry>/appdynamics/machine-agent:latest"
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring,Logging & Tracing
          certified: "false"
          containerImage: registry.connect.redhat.com/appdynamics/cluster-agent-operator@sha256:3c420cce8b626d8f5cf424410527c6a7a17ca3348e903dd8cdfcd74819b8de41
          createdAt: "2023-02-06T14:26:07Z"
          description: AppDynamics Operator to install AppDynamics Cluster Agent &
            AppDynamics Machine Agent for K8s Monitoring for various Cloud Providers
            like EKS, AKS etc.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: appdynamics
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: support@appdynamics.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Clusteragent is the Schema for the clusteragents API
            displayName: Clusteragent
            kind: Clusteragent
            name: clusteragents.cluster.appdynamics.com
            version: v1alpha1
          - description: InfraViz is the Schema for the infravizs API
            displayName: Infra Viz
            kind: InfraViz
            name: infravizs.cluster.appdynamics.com
            version: v1alpha1
        description: |-
          AppDynamics Operator to install AppDynamics Cluster Agent & Machine Agent for K8s Monitoring on various Cloud Providers like EKS, AKS, GCP, Openshift etc.
          **About AppDynamics Operator**
          AppDynamics Operator simplifies the installation and lifecycle management of the AppDynamics ClusterAgent and the AppDynamics Machine Agent for K8s Monitoring on different Cloud Providers like EKS, AKS, GCP, OpenShift etc.
          **Installation Steps**
          Please refer below links for installation guide:
          [Install AppDynamics Cluster Agent](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-the-kubernetes-cli)
          [Install AppDynamics Machine Agent](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-the-kubernetes-cli)
          [Install AppDynamics Cluster Agent Using Helm Charts](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-helm-charts)
          [Install Appdynamics Machine Agent Using Helm Charts](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-helm-charts)
        displayName: AppDynamics Operator for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AppDynamics
        - Operator
        - AppDynamics Cluster Agent
        - AppDynamics Machine Agent
        - AppDynamics K8s Monitoring
        links:
        - name: AppDynamics Kubernetes Monitoring Overview
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent
        - name: AppDynamics Cluster Agent Overview
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/overview-of-cluster-monitoring
        - name: AppDynamics Cluster Agent Requirements
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/cluster-agent-requirements-and-supported-environments
        - name: Install AppDynamics Cluster Agent
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-the-kubernetes-cli
        - name: Install AppDynamics Cluster Agent Using Helm Charts
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-helm-charts
        - name: Install AppDynamics Machine Agent & NetViz Agent
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-the-kubernetes-cli
        - name: Install AppDynamics Machine Agent & NetViz Agent Using Helm Charts
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-helm-charts
        maintainers:
        - email: support@appdynamics.com
          name: AppDynamics
        maturity: alpha
        provider:
          name: AppDynamics LLC
          url: https://www.appdynamics.com/
        relatedImages:
        - registry.connect.redhat.com/appdynamics/cluster-agent-operator@sha256:3c420cce8b626d8f5cf424410527c6a7a17ca3348e903dd8cdfcd74819b8de41
        - registry.connect.redhat.com/appdynamics/cluster-agent-operator-bundle@sha256:b2bc3e161311f8f5d2f5fc967815259697ce30bf94e980214bc05aa0e1529d55
        version: 24.7.0-861
      entries:
      - name: appdynamics-operator.v24.7.0-861
        version: 24.7.0-861
      name: alpha
    defaultChannel: alpha
    packageName: appdynamics-operator
    provider:
      name: AppDynamics LLC
      url: https://www.appdynamics.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: https://www.percona.com/
    name: percona-postgresql-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-postgresql-operator.v2.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgv2.percona.com/v2",
                "kind": "PerconaPGCluster",
                "metadata": {
                  "name": "cluster1"
                },
                "spec": {
                  "crVersion": "2.8.2",
                  "image": "docker.io/percona/percona-distribution-postgresql:17.7-2",
                  "imagePullPolicy": "Always",
                  "postgresVersion": 17,
                  "instances": [
                    {
                      "name": "instance1",
                      "replicas": 3,
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/data": "postgres"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      },
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      }
                    }
                  ],
                  "proxy": {
                    "pgBouncer": {
                      "replicas": 3,
                      "image": "docker.io/percona/percona-pgbouncer:1.25.0-1",
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/role": "pgbouncer"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      }
                    }
                  },
                  "backups": {
                    "pgbackrest": {
                      "image": "docker.io/percona/percona-pgbackrest:2.57.0-1",
                      "repoHost": {
                        "affinity": {
                          "podAntiAffinity": {
                            "preferredDuringSchedulingIgnoredDuringExecution": [
                              {
                                "weight": 1,
                                "podAffinityTerm": {
                                  "labelSelector": {
                                    "matchLabels": {
                                      "postgres-operator.crunchydata.com/data": "pgbackrest"
                                    }
                                  },
                                  "topologyKey": "kubernetes.io/hostname"
                                }
                              }
                            ]
                          }
                        }
                      },
                      "manual": {
                        "repoName": "repo1",
                        "options": [
                          "--type=full"
                        ]
                      },
                      "repos": [
                        {
                          "name": "repo1",
                          "schedules": {
                            "full": "0 0 * * 6"
                          },
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "docker.io/percona/pmm-client:3.5.0",
                    "secret": "cluster1-pmm-secret",
                    "serverHost": "monitoring-service"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: docker.io/percona/percona-postgresql-operator:2.8.2
          createdAt: "2025-12-24T20:59:08Z"
          description: Percona Operator for PostgreSQL manages the lifecycle of Percona
            PostgreSQL cluster instances.
          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.skipRange: <v2.8.2
          repository: https://github.com/percona/percona-postgresql-operator
          support: percona.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaPGCluster is the CRD that defines a Percona PG Cluster
            displayName: Percona PGCluster
            kind: PerconaPGCluster
            name: perconapgclusters.pgv2.percona.com
            version: v2
          - description: PerconaPGBackup is the CRD that defines a Percona PostgreSQL
              Backup
            displayName: Percona PGBackup
            kind: PerconaPGBackup
            name: perconapgbackups.pgv2.percona.com
            version: v2
          - description: PerconaPGRestore is the CRD that defines a Percona PostgreSQL
              Restore
            displayName: Percona PGRestore
            kind: PerconaPGRestore
            name: perconapgrestores.pgv2.percona.com
            version: v2
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API This Custom Resource requires enabling CrunchyBridgeClusters feature
              gate
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PerconaPGUpgrade is the Schema for the perconapgupgrades
              API
            displayName: Percona PGUpgrade
            kind: PerconaPGUpgrade
            name: perconapgupgrades.pgv2.percona.com
            version: v2
          - description: PGAdmin is the Schema for the pgadmins API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          ## Percona is Cloud Native

          Percona Operator for PostgreSQL automates and simplifies deploying and managing
          open source PostgreSQL clusters on Kubernetes. Percona Operator for PostgreSQL is based on Postgres Operator developed by Crunchy Data.

          Whether you need to get a simple PostgreSQL cluster up and running, need to deploy a high availability,
          fault tolerant cluster in production, or are running your own database-as-a-service, the Operator provides the essential
          features you need to keep your clusters healthy.

          Consult the
          [documentation](https://www.percona.com/doc/kubernetes-operator-for-postgresql/index.html)
          on the Percona Operator for PostgreSQL for complete details on capabilities
          and options.

          ### Supported Features

          * **PostgreSQL Cluster Provisioning**

          Create, Scale, & Delete PostgreSQL clusters with ease, while fully customizing your Pods and PostgreSQL configuration.

          * **High Availability**

              Safe, automated failover backed by a distributed consensus based high-availability solution. Uses Pod Anti-Affinity to help resiliency; you can configure how much
              enforced this can be. Failed primaries automatically heal, allowing for faster recovery time. Support for standby PostgreSQL clusters that work both within and
              across multiple Kubernetes clusters.

          * **Disaster Recovery**

              Backups and restores leverage the open source pgBackRest utility and includes support for full, incremental, and differential backups as well as efficient delta
              restores. Set how long you want your backups retained for. Works great with very large databases!

          * **Communication Security**

              Secure communication between your applications and data servers by enabling TLS for your PostgreSQL servers, including the ability to enforce all of your connections
              to use TLS.

          * **Monitoring**

              Track the health of your PostgreSQL clusters with Percona Monitoring and Management (PMM).

          * **PostgreSQL User Management**

              Quickly add and remove users from your PostgreSQL clusters with powerful commands. Manage password expiration policies or use your preferred PostgreSQL authentication
              scheme.

          * **Updates Management**

              Safely apply PostgreSQL updates with minimal availability impact to your PostgreSQL clusters.

          * **Advanced Replication Support**

              Choose between asynchronous replication and synchronous replication for workloads that are sensitive to losing transactions.

          * **Clone**

              Create new clusters from your existing clusters or backups.

          * **Connection Pooling**

              Use [pgBouncer](https://access.crunchydata.com/documentation/postgres-operator/latest/tutorial/pgbouncer/) for connection pooling

          * **Affinity and Tolerations**

              Have your PostgreSQL clusters deployed to Kubernetes Nodes of your preference with node affinity, or designate which nodes Kubernetes can schedule PostgreSQL instances
              to with Kubernetes  tolerations.

          * **Scheduled Backups**

              Choose the type of backup (full, incremental, differential) and how frequently you want it to occur on each PostgreSQL cluster.

          * **Backup to S3**

              Store your backups in Amazon S3 or any object storage system that supports the S3 protocol. The Operator can backup, restore, and create new clusters from these backups.

          * **Multi-Namespace Support**

              You can control how the Operator leverages Kubernetes Namespaces with several different deployment models:

              * Deploy the Operator and all PostgreSQL clusters to the same namespace
              * Deploy the Operator to one Namespace, and all PostgreSQL clusters to a different Namespace
              * Deploy the Operator to one Namespace, and have your PostgreSQL clusters managed across multiple Namespaces

          * **Full Customizability**

              The Operator not only makes it easy to get PostgreSQL up and running on Kubernetes-enabled platforms, but also allows you to further customize your deployments:

              * Selecting different storage classes for your primary, replica, and backup storage
              * Select your own container resources class for each PostgreSQL cluster deployment; differentiate between resources applied for primary and replica clusters
              * Use your own container image repository, including `imagePullSecrets` and private repositories  support
              * Customize your PostgreSQL configuration
              * Bring your own trusted certificate authority (CA) for use with the Operator API server
              * Override your PostgreSQL configuration for each cluster
              * Use your own custom images, re-define the image for each container separately
        displayName: Percona Operator for PostgreSQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - percona
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-postgresql/index.html
        - name: Github
          url: https://github.com/percona/percona-postgresql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
          url: https://www.percona.com/
        relatedImages:
        - docker.io/percona/percona-postgresql-operator:2.8.2
        - quay.io/community-operator-pipeline-prod/percona-postgresql-operator@sha256:338df3b168eb9323d5afcac160a3d2ccf8a1faca16125c80a89251d569627f7c
        version: 2.8.2
      entries:
      - name: percona-postgresql-operator.v2.8.2
        version: 2.8.2
      - name: percona-postgresql-operator.v2.8.1
        version: 2.8.1
      - name: percona-postgresql-operator.v2.8.0
        version: 2.8.0
      name: stable
    defaultChannel: stable
    packageName: percona-postgresql-operator
    provider:
      name: Percona
      url: https://www.percona.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: opdev
      provider-url: opdev.github.io
    name: spark-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: spark-helm-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apachespark.apache.org/v1alpha1",
                "kind": "Spark",
                "metadata": {
                  "annotations": {
                    "helm.sdk.operatorframework.io/install-disable-crds": "true"
                  },
                  "name": "spark-operator"
                },
                "spec": {
                  "affinity": {},
                  "batchScheduler": {
                    "enable": false
                  },
                  "controllerThreads": 10,
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/googlecloudplatform/spark-operator",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "ingressUrlFormat": "",
                  "istio": {
                    "enabled": false
                  },
                  "labelSelectorFilter": "",
                  "leaderElection": {
                    "lockName": "spark-operator-lock",
                    "lockNamespace": ""
                  },
                  "logLevel": 2,
                  "metrics": {
                    "enable": true,
                    "endpoint": "/metrics",
                    "port": 10254,
                    "portName": "metrics",
                    "prefix": ""
                  },
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podLabels": {},
                  "podMonitor": {
                    "enable": false,
                    "jobLabel": "spark-operator-podmonitor",
                    "labels": {},
                    "podMetricsEndpoint": {
                      "interval": "5s",
                      "scheme": "http"
                    }
                  },
                  "podSecurityContext": {},
                  "rbac": {
                    "create": false,
                    "createClusterRole": true,
                    "createRole": true
                  },
                  "replicaCount": 1,
                  "resourceQuotaEnforcement": {
                    "enable": false
                  },
                  "resources": {},
                  "resyncInterval": 30,
                  "securityContext": {},
                  "serviceAccounts": {
                    "spark": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "sparkoperator": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    }
                  },
                  "sparkJobNamespace": "",
                  "tolerations": [],
                  "uiService": {
                    "enable": true
                  },
                  "volumeMounts": [],
                  "volumes": [],
                  "webhook": {
                    "cleanupAnnotations": {
                      "helm.sh/hook": "pre-delete, pre-upgrade",
                      "helm.sh/hook-delete-policy": "hook-succeeded"
                    },
                    "enable": false,
                    "initAnnotations": {
                      "helm.sh/hook": "pre-install, pre-upgrade",
                      "helm.sh/hook-weight": "50"
                    },
                    "namespaceSelector": "",
                    "port": 8080,
                    "timeout": 30
                  }
                }
              },
              {
                "apiVersion": "sparkoperator.k8s.io/v1beta2",
                "kind": "ScheduledSparkApplication",
                "metadata": {
                  "name": "spark-pi-scheduled",
                  "namespace": "spark-operator"
                },
                "spec": {
                  "concurrencyPolicy": "Allow",
                  "schedule": "@every 5m",
                  "template": {
                    "driver": {
                      "coreLimit": "1200m",
                      "cores": 1,
                      "labels": {
                        "version": "3.1.1"
                      },
                      "memory": "512m",
                      "serviceAccount": "spark-operator-spark",
                      "volumeMounts": [
                        {
                          "mountPath": "/tmp",
                          "name": "test-volume"
                        }
                      ]
                    },
                    "executor": {
                      "cores": 1,
                      "instances": 1,
                      "labels": {
                        "version": "3.1.1"
                      },
                      "memory": "512m",
                      "volumeMounts": [
                        {
                          "mountPath": "/tmp",
                          "name": "test-volume"
                        }
                      ]
                    },
                    "image": "gcr.io/spark-operator/spark:v3.1.1",
                    "imagePullPolicy": "Always",
                    "mainApplicationFile": "local:///opt/spark/examples/jars/spark-examples_2.12-3.1.1.jar",
                    "mainClass": "org.apache.spark.examples.SparkPi",
                    "mode": "cluster",
                    "restartPolicy": {
                      "type": "Never"
                    },
                    "sparkVersion": "3.1.1",
                    "type": "Scala",
                    "volumes": [
                      {
                        "hostPath": {
                          "path": "/tmp",
                          "type": "Directory"
                        },
                        "name": "test-volume"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sparkoperator.k8s.io/v1beta2",
                "kind": "SparkApplication",
                "metadata": {
                  "name": "pyspark-pi",
                  "namespace": "spark-operator"
                },
                "spec": {
                  "driver": {
                    "coreLimit": "1200m",
                    "cores": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "serviceAccount": "spark-operator-spark",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "executor": {
                    "cores": 1,
                    "instances": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "image": "gcr.io/spark-operator/spark-py:v3.1.1",
                  "imagePullPolicy": "Always",
                  "mainApplicationFile": "local:///opt/spark/examples/src/main/python/pi.py",
                  "mode": "cluster",
                  "pythonVersion": "3",
                  "restartPolicy": {
                    "onFailureRetries": 3,
                    "onFailureRetryInterval": 10,
                    "onSubmissionFailureRetries": 5,
                    "onSubmissionFailureRetryInterval": 20,
                    "type": "OnFailure"
                  },
                  "sparkVersion": "3.1.1",
                  "type": "Python",
                  "volumes": [
                    {
                      "hostPath": {
                        "path": "/tmp",
                        "type": "Directory"
                      },
                      "name": "test-volume"
                    }
                  ]
                }
              },
              {
                "apiVersion": "sparkoperator.k8s.io/v1beta2",
                "kind": "SparkApplication",
                "metadata": {
                  "name": "spark-pi",
                  "namespace": "spark-operator"
                },
                "spec": {
                  "driver": {
                    "coreLimit": "1200m",
                    "cores": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "serviceAccount": "spark-operator-spark",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "executor": {
                    "cores": 1,
                    "instances": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "image": "gcr.io/spark-operator/spark:v3.1.1",
                  "imagePullPolicy": "Always",
                  "mainApplicationFile": "local:///opt/spark/examples/jars/spark-examples_2.12-3.1.1.jar",
                  "mainClass": "org.apache.spark.examples.SparkPi",
                  "mode": "cluster",
                  "restartPolicy": {
                    "type": "Never"
                  },
                  "sparkVersion": "3.1.1",
                  "type": "Scala",
                  "volumes": [
                    {
                      "hostPath": {
                        "path": "/tmp",
                        "type": "Directory"
                      },
                      "name": "test-volume"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: quay.io/opdev/spark-helm-operator-controller:0.0.2
          createdAt: "2023-07-14T17:57:44Z"
          description: An experimental operator that installs the spark on k8s operator
            from its helm chart.
          operatorframework.io/initialization-resource: "{\n  \"apiVersion\": \"apachespark.apache.org/v1alpha1\",\n
            \ \"kind\": \"Spark\",\n  \"metadata\": {\n    \"name\": \"spark-operator\"\n
            \ },\n  \"spec\": {\n    \"affinity\": {},\n    \"batchScheduler\": {\n
            \     \"enable\": false\n    },\n    \"controllerThreads\": 10,\n    \"fullnameOverride\":
            \"\",\n    \"image\": {\n      \"pullPolicy\": \"IfNotPresent\",\n      \"repository\":
            \"ghcr.io/googlecloudplatform/spark-operator\",\n      \"tag\": \"\"\n
            \   },\n    \"imagePullSecrets\": [],\n    \"ingressUrlFormat\": \"\",\n
            \   \"istio\": {\n      \"enabled\": false\n    },\n    \"labelSelectorFilter\":
            \"\",\n    \"leaderElection\": {\n      \"lockName\": \"spark-operator-lock\",\n
            \     \"lockNamespace\": \"\"\n    },\n    \"logLevel\": 2,\n    \"metrics\":
            {\n      \"enable\": true,\n      \"endpoint\": \"/metrics\",\n      \"port\":
            10254,\n      \"portName\": \"metrics\",\n      \"prefix\": \"\"\n    },\n
            \   \"nameOverride\": \"\",\n    \"nodeSelector\": {},\n    \"podAnnotations\":
            {},\n    \"podLabels\": {},\n    \"podMonitor\": {\n      \"enable\":
            false,\n      \"jobLabel\": \"spark-operator-podmonitor\",\n      \"labels\":
            {},\n      \"podMetricsEndpoint\": {\n        \"interval\": \"5s\",\n
            \       \"scheme\": \"http\"\n      }\n    },\n    \"podSecurityContext\":
            {},\n    \"rbac\": {\n      \"create\": false,\n      \"createClusterRole\":
            true,\n      \"createRole\": true\n    },\n    \"replicaCount\": 1,\n
            \   \"resourceQuotaEnforcement\": {\n      \"enable\": false\n    },\n
            \   \"resources\": {},\n    \"resyncInterval\": 30,\n    \"securityContext\":
            {},\n    \"serviceAccounts\": {\n      \"spark\": {\n        \"annotations\":
            {},\n        \"create\": true,\n        \"name\": \"\"\n      },\n      \"sparkoperator\":
            {\n        \"annotations\": {},\n        \"create\": true,\n        \"name\":
            \"\"\n      }\n    },\n    \"sparkJobNamespace\": \"\",\n    \"tolerations\":
            [],\n    \"uiService\": {\n      \"enable\": true\n    },\n    \"volumeMounts\":
            [],\n    \"volumes\": [],\n    \"webhook\": {\n      \"cleanupAnnotations\":
            {\n        \"helm.sh/hook\": \"pre-delete, pre-upgrade\",\n        \"helm.sh/hook-delete-policy\":
            \"hook-succeeded\"\n      },\n      \"enable\": false,\n      \"initAnnotations\":
            {\n        \"helm.sh/hook\": \"pre-install, pre-upgrade\",\n        \"helm.sh/hook-weight\":
            \"50\"\n      },\n      \"namespaceSelector\": \"\",\n      \"port\":
            8080,\n      \"timeout\": 30\n    }\n  }\n}    "
          operatorframework.io/suggested-namespace: spark-operator
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: hybrid.helm.sdk.operatorframework.io/v1-alpha
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys a scheduled spark application based on the spec provided
            displayName: Scheduled Spark Application
            kind: ScheduledSparkApplication
            name: scheduledsparkapplications.sparkoperator.k8s.io
            version: v1beta2
          - description: Deploys a spark application based on the spec provided
            displayName: Spark Application
            kind: SparkApplication
            name: sparkapplications.sparkoperator.k8s.io
            version: v1beta2
          - description: Deploys the spark operator based on the google cloud platform
              helm chart
            displayName: Spark Operator
            kind: Spark
            name: sparks.apachespark.apache.org
            version: v1alpha1
        description: An experimental helm based operator that wraps the spark on k8s
          helm chart from google cloud platform enabling installation and workload
          management of Apache Spark
        displayName: Spark Helm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - big data
        - map reduce
        - data science
        links:
        - name: Spark Helm Operator
          url: https://github.com/skattoju/spark-helm-operator
        maintainers:
        - email: skattoju@redhat.com
          name: Sid Kattoju
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: opdev
          url: opdev.github.io
        relatedImages:
        - quay.io/openshift-community-operators/spark-helm-operator@sha256:9bd49276e02f2fb28bb1ff116112cd7ebe0aa12bdb9f1e46aae2501fd9e4e755
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/opdev/spark-helm-operator-controller:0.0.2
        version: 0.0.2
      entries:
      - name: spark-helm-operator.v0.0.2
        version: 0.0.2
      - name: spark-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: spark-helm-operator
    provider:
      name: opdev
      url: opdev.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ocs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ocs-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |2-

            [
                {
                    "apiVersion": "ocs.openshift.io/v1",
                    "kind": "StorageCluster",
                    "metadata": {
                        "name": "example-storagecluster",
                        "namespace": "openshift-storage"
                    },
                    "spec": {
                        "manageNodes": false,
                        "monPVCTemplate": {
                            "spec": {
                                "accessModes": [
                                    "ReadWriteOnce"
                                ],
                                "resources": {
                                    "requests": {
                                        "storage": "10Gi"
                                    }
                                },
                                "storageClassName": "gp2-csi"
                            }
                        },
                        "storageDeviceSets": [
                            {
                                "count": 3,
                                "dataPVCTemplate": {
                                    "spec": {
                                        "accessModes": [
                                            "ReadWriteOnce"
                                        ],
                                        "resources": {
                                            "requests": {
                                                "storage": "1Ti"
                                            }
                                        },
                                        "storageClassName": "gp2-csi",
                                        "volumeMode": "Block"
                                    }
                                },
                                "name": "example-deviceset",
                                "placement": {},
                                "portable": true,
                                "resources": {}
                            }
                        ]
                    }
                }
            ]
          capabilities: Deep Insights
          categories: Storage
          containerImage: registry.redhat.io/odf4/ocs-rhel9-operator@sha256:8656bc7d8466b33d3b7910bf567de11199126cef0dd01f1bf4615faa84515921
          description: Red Hat OpenShift Container Storage provides hyperconverged
            storage for applications within an OpenShift cluster.
          external.features.ocs.openshift.io/supported-platforms: '["BareMetal", "None",
            "VSphere", "OpenStack", "oVirt"]'
          external.features.ocs.openshift.io/validation: '{"secrets":["rook-ceph-operator-creds",
            "rook-csi-rbd-node", "rook-csi-rbd-provisioner"], "configMaps": ["rook-ceph-mon-endpoints",
            "rook-ceph-mon"], "storageClasses": ["ceph-rbd"], "cephClusters": ["monitoring-endpoint"]}'
          features.ocs.openshift.io/disabled: '["ss-list", "install-wizard", "block-pool",
            "mcg-resource", "odf-dashboard", "common", "storage-provider", "storage-provisioner",
            "dashboard-resources", "csv-actions", "inventory-item", "alert-actions"]'
          features.ocs.openshift.io/enabled: '["kms", "arbiter", "flexible-scaling",
            "multus", "pool-management", "namespace-store", "mcg-standalone", "taint-nodes",
            "vault-sa-kms", "hpcs-kms"]'
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/initialization-resource: "\n    {\n        \"apiVersion\":
            \"ocs.openshift.io/v1\",\n        \"kind\": \"StorageCluster\",\n        \"metadata\":
            {\n            \"name\": \"example-storagecluster\",\n            \"namespace\":
            \"openshift-storage\"\n        },\n        \"spec\": {\n            \"manageNodes\":
            false,\n            \"monPVCTemplate\": {\n                \"spec\": {\n
            \                   \"accessModes\": [\n                        \"ReadWriteOnce\"\n
            \                   ],\n                    \"resources\": {\n                        \"requests\":
            {\n                            \"storage\": \"10Gi\"\n                        }\n
            \                   },\n                    \"storageClassName\": \"gp2-csi\"\n
            \               }\n            },\n            \"storageDeviceSets\":
            [\n                {\n                    \"count\": 3,\n                    \"dataPVCTemplate\":
            {\n                        \"spec\": {\n                            \"accessModes\":
            [\n                                \"ReadWriteOnce\"\n                            ],\n
            \                           \"resources\": {\n                                \"requests\":
            {\n                                    \"storage\": \"1Ti\"\n                                }\n
            \                           },\n                            \"storageClassName\":
            \"gp2-csi\",\n                            \"volumeMode\": \"Block\"\n
            \                       }\n                    },\n                    \"name\":
            \"example-deviceset\",\n                    \"placement\": {},\n                    \"portable\":
            true,\n                    \"resources\": {}\n                }\n            ]\n
            \       }\n    }\n\t"
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:16f27c8673487f2a3671319fbf01357726e6e416aa8b26300cccd88302400289
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.4
          operators.operatorframework.io/internal-objects: '["ocsinitializations.ocs.openshift.io","storageautoscalers.ocs.openshift.io","storageclusterpeers.ocs.openshift.io","storageconsumers.ocs.openshift.io"]'
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/ocs-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OCSInitialization represents the initial data to be created
              when the operator is installed.
            displayName: OCS Initialization
            kind: OCSInitialization
            name: ocsinitializations.ocs.openshift.io
            version: v1
          - description: StorageAutoScaler represents the automatic storage scaling
              for storage cluster.
            displayName: Storage Auto Scaling
            kind: StorageAutoScaler
            name: storageautoscalers.ocs.openshift.io
            version: v1
          - description: StorageClusterPeer is the Schema for the storageclusterpeers
              API
            displayName: Storage Cluster Peer
            kind: StorageClusterPeer
            name: storageclusterpeers.ocs.openshift.io
            version: v1
          - description: StorageCluster represents a cluster including Ceph Cluster,
              NooBaa and all the storage and compute resources required.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.ocs.openshift.io
            version: v1
          - description: StorageConsumer is the Schema for the storageconsumers API
            displayName: Storage Consumer
            kind: StorageConsumer
            name: storageconsumers.ocs.openshift.io
            version: v1alpha1
        description: |
          **Red Hat OpenShift Container Storage** deploys three operators.

          ### OpenShift Container Storage operator

          The OpenShift Container Storage operator is the primary operator for OpenShift Container Storage. It serves to facilitate the other operators in OpenShift Container Storage by performing administrative tasks outside their scope as well as watching and configuring their CustomResources.

          ### Rook

          [Rook][1] deploys and manages Ceph on OpenShift, which provides block and file storage.

          # Core Capabilities

          * **Self-managing service:** No matter which supported storage technologies you choose, OpenShift Container Storage ensures that resources can be deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Container Storage you can either build dedicated storage clusters or hyper-converged clusters where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Container Storage:** OpenShift Container Storage integrates Ceph with multiple storage presentations including object storage (compatible with S3), block storage, and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Container Storage efficiently distributes and replicates your data across your cluster to minimize the risk of data loss. With snapshots, cloning, and versioning, no more losing sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data storage for your workloads, using a single namespace.

          [1]: https://rook.io
        displayName: OpenShift Container Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        - rook
        - ceph
        - block storage
        - shared filesystem
        - object storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ocs-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/ocs-rhel9-operator@sha256:8656bc7d8466b33d3b7910bf567de11199126cef0dd01f1bf4615faa84515921
        - registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:16f27c8673487f2a3671319fbf01357726e6e416aa8b26300cccd88302400289
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:3538d484f80837f2164f15bcd1edb75fbcb73d72cbd94cd74c87f99da035fd84
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:a0f327daabcd97e59a855450a4ac642e45e8dbffa6a5f006f23525215f1c1a22
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:d5b404530b7d6ca8c7eec484dbcff32544c3ce8727a4d61c703396ae3fded62d
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:ac173cc6724b867a5cd2cec68cb3bab81a431ea11fdbb23810426dff5e531b03
        version: 4.19.9-rhodf
      entries:
      - name: ocs-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: ocs-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: ocs-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: ocs-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: ocs-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: ocs-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: ocs-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: ocs-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: ocs-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: ocs-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: ocs-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |2-

            [
                {
                    "apiVersion": "ocs.openshift.io/v1",
                    "kind": "StorageCluster",
                    "metadata": {
                        "name": "example-storagecluster",
                        "namespace": "openshift-storage"
                    },
                    "spec": {
                        "monPVCTemplate": {
                            "spec": {
                                "accessModes": [
                                    "ReadWriteOnce"
                                ],
                                "resources": {
                                    "requests": {
                                        "storage": "10Gi"
                                    }
                                },
                                "storageClassName": "gp2-csi"
                            }
                        },
                        "storageDeviceSets": [
                            {
                                "count": 3,
                                "dataPVCTemplate": {
                                    "spec": {
                                        "accessModes": [
                                            "ReadWriteOnce"
                                        ],
                                        "resources": {
                                            "requests": {
                                                "storage": "1Ti"
                                            }
                                        },
                                        "storageClassName": "gp2-csi",
                                        "volumeMode": "Block"
                                    }
                                },
                                "name": "example-deviceset",
                                "placement": {},
                                "portable": true,
                                "resources": {}
                            }
                        ]
                    }
                }
            ]
          capabilities: Deep Insights
          categories: Storage
          containerImage: registry.redhat.io/odf4/ocs-rhel9-operator@sha256:a4d564a143f44ec47012ee224d4d2b99db537809c7228c0f5adcb91434b67a44
          createdAt: "2025-12-18T07:42:24Z"
          description: Red Hat OpenShift Container Storage provides hyperconverged
            storage for applications within an OpenShift cluster.
          external.features.ocs.openshift.io/supported-platforms: '["BareMetal", "None",
            "VSphere", "OpenStack", "oVirt"]'
          external.features.ocs.openshift.io/validation: '{"secrets":["rook-ceph-operator-creds",
            "rook-csi-rbd-node", "rook-csi-rbd-provisioner"], "configMaps": ["rook-ceph-mon-endpoints",
            "rook-ceph-mon"], "storageClasses": ["ceph-rbd"], "cephClusters": ["monitoring-endpoint"]}'
          features.ocs.openshift.io/disabled: '["ss-list", "install-wizard", "block-pool",
            "mcg-resource", "odf-dashboard", "common", "storage-provider", "storage-provisioner",
            "dashboard-resources", "csv-actions", "inventory-item", "alert-actions"]'
          features.ocs.openshift.io/enabled: '["kms", "arbiter", "flexible-scaling",
            "multus", "pool-management", "namespace-store", "mcg-standalone", "taint-nodes",
            "vault-sa-kms", "hpcs-kms"]'
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/initialization-resource: "\n    {\n        \"apiVersion\":
            \"ocs.openshift.io/v1\",\n        \"kind\": \"StorageCluster\",\n        \"metadata\":
            {\n            \"name\": \"example-storagecluster\",\n            \"namespace\":
            \"openshift-storage\"\n        },\n        \"spec\": {\n            \"monPVCTemplate\":
            {\n                \"spec\": {\n                    \"accessModes\": [\n
            \                       \"ReadWriteOnce\"\n                    ],\n                    \"resources\":
            {\n                        \"requests\": {\n                            \"storage\":
            \"10Gi\"\n                        }\n                    },\n                    \"storageClassName\":
            \"gp2-csi\"\n                }\n            },\n            \"storageDeviceSets\":
            [\n                {\n                    \"count\": 3,\n                    \"dataPVCTemplate\":
            {\n                        \"spec\": {\n                            \"accessModes\":
            [\n                                \"ReadWriteOnce\"\n                            ],\n
            \                           \"resources\": {\n                                \"requests\":
            {\n                                    \"storage\": \"1Ti\"\n                                }\n
            \                           },\n                            \"storageClassName\":
            \"gp2-csi\",\n                            \"volumeMode\": \"Block\"\n
            \                       }\n                    },\n                    \"name\":
            \"example-deviceset\",\n                    \"placement\": {},\n                    \"portable\":
            true,\n                    \"resources\": {}\n                }\n            ]\n
            \       }\n    }\n\t"
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:7889a3443f24821d3946b734f630a5c34cd5923fe52912661766d170bf3b56c6
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/internal-objects: '["ocsinitializations.ocs.openshift.io","storageautoscalers.ocs.openshift.io","storageclusterpeers.ocs.openshift.io","storageconsumers.ocs.openshift.io"]'
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/ocs-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OCSInitialization represents the initial data to be created
              when the operator is installed.
            displayName: OCS Initialization
            kind: OCSInitialization
            name: ocsinitializations.ocs.openshift.io
            version: v1
          - description: StorageAutoScaler represents the automatic storage scaling
              for storage cluster.
            displayName: Storage Auto Scaling
            kind: StorageAutoScaler
            name: storageautoscalers.ocs.openshift.io
            version: v1
          - description: StorageClusterPeer is the Schema for the storageclusterpeers
              API
            displayName: Storage Cluster Peer
            kind: StorageClusterPeer
            name: storageclusterpeers.ocs.openshift.io
            version: v1
          - description: StorageCluster represents a cluster including Ceph Cluster,
              NooBaa and all the storage and compute resources required.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.ocs.openshift.io
            version: v1
          - description: StorageConsumer is the Schema for the storageconsumers API
            displayName: Storage Consumer
            kind: StorageConsumer
            name: storageconsumers.ocs.openshift.io
            version: v1alpha1
        description: |
          **Red Hat OpenShift Container Storage** deploys three operators.

          ### OpenShift Container Storage operator

          The OpenShift Container Storage operator is the primary operator for OpenShift Container Storage. It serves to facilitate the other operators in OpenShift Container Storage by performing administrative tasks outside their scope as well as watching and configuring their CustomResources.

          ### Rook

          [Rook][1] deploys and manages Ceph on OpenShift, which provides block and file storage.

          # Core Capabilities

          * **Self-managing service:** No matter which supported storage technologies you choose, OpenShift Container Storage ensures that resources can be deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Container Storage you can either build dedicated storage clusters or hyper-converged clusters where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Container Storage:** OpenShift Container Storage integrates Ceph with multiple storage presentations including object storage (compatible with S3), block storage, and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Container Storage efficiently distributes and replicates your data across your cluster to minimize the risk of data loss. With snapshots, cloning, and versioning, no more losing sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data storage for your workloads, using a single namespace.

          [1]: https://rook.io
        displayName: OpenShift Container Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        - rook
        - ceph
        - block storage
        - shared filesystem
        - object storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ocs-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:64537ae6999feb2c7e449d8d5a1cdf5f64450b45934a7dba2b82542a5f6adc20
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:1e1e53d68779e4575ff7958307c61e1341efffc225ccfdc75c2518e8797f0fd7
        - registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:7889a3443f24821d3946b734f630a5c34cd5923fe52912661766d170bf3b56c6
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:0a2285aea9606696c4ea75644f2019bd199c6632de4b7f459f4024d5b3f66048
        - registry.redhat.io/odf4/ocs-rhel9-operator@sha256:a4d564a143f44ec47012ee224d4d2b99db537809c7228c0f5adcb91434b67a44
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
        version: 4.20.4-rhodf
      entries:
      - name: ocs-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: ocs-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: ocs-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: ocs-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: ocs-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: ocs-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Dynatrace LLC
      provider-url: www.dynatrace.com
    name: dynatrace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dynatrace-operator.v1.7.2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          containerImage: registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
          createdAt: 2025-11-17T09:03:01.768309
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.7.2
          operatorframework.io/suggested-namespace: dynatrace
          operators.openshift.io/valid-subscription: '["Dynatrace Platform Subscription
            (DPS)","Dynatrace Classic License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Dynatrace/dynatrace-operator
          support: Dynatrace
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta3
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta4
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta5
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha1
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha2
        description: |
          The Dynatrace Operator supports rollout and lifecycle management of various Dynatrace components in Kubernetes and OpenShift.

          Currently the Dynatrace Operator supports the following capabilities:

          ### OneAgent
            * `classicFullStack` rolls out one OneAgent pod per node to monitor its pods and the node itself
            * `applicationMonitoring` is a webhook based injection mechanism for automatic app-only injection
            * `hostMonitoring` monitors only the hosts, i.e., the nodes, in the cluster without app-only injection
          ### ActiveGate
            * `routing` routes OneAgent traffic through the ActiveGate
            * `kubernetes-monitoring` allows monitoring the Kubernetes API
            * `metrics-ingest` routes enriched metrics through an ActiveGate

          For more information please refer to [our DynaKube Custom Resource examples](https://dt-url.net/dynakube-samples).

          ### Installation
          Once you've installed the Dynatrace Operator, you can create a DynaKube custom resource.

          First, please add a Secret within the Project you've deployed the Dynatrace Operator to, which would contain your API and PaaS tokens. Create tokens of type *Dynatrace API* (`API_TOKEN`) and *Platform as a Service* (`PAAS_TOKEN`) and use their values in the following commands respectively.

          For assistance please refer to [Create user-generated access tokens](https://www.dynatrace.com/support/help/shortlink/token#create-user-generated-access-tokens).

          ``` $ oc -n <project> create secret generic dynakube --from-literal="apiToken=API_TOKEN" --from-literal="paasToken=PAAS_TOKEN" ```

          You may update this Secret at any time to rotate the tokens.

          After creation of the secret add the DynaKube object in the project where the Dynatrace Operator has been deployed, configured to your needs.

          ### Required Parameters
          * `apiUrl` - provide the URL to the API of your Dynatrace environment. In Dynatrace SaaS it will look like `https://<ENVIRONMENTID>.live.dynatrace.com/api` . In Dynatrace Managed like `https://<YourDynatraceServerURL>/e/<ENVIRONMENTID>/api` .

          ### Advanced Options
          * **Disable Certificate Checking** - disable any certificate validation that may interact poorly with proxies with in your cluster
          * **Image Override** - use a copy of the ActiveGate container image from a registry other than Docker's or Red Hat's

          For a complete list of supported parameters please consult the [Operator Deploy Guide](https://www.dynatrace.com/support/help/shortlink/openshift-deploy).

          ### Help
          You can find more about our instructions in our [documentation](https://www.dynatrace.com/support/help/shortlink/openshift-deploy#install-dynatrace-operator).
        displayName: Dynatrace Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - dynatrace
        - oneagent
        - activegate
        - observability
        links:
        - name: Dynatrace Operator
          url: https://github.com/Dynatrace/dynatrace-operator
        - name: OpenShift Monitoring Info
          url: https://www.dynatrace.com/technologies/openshift-monitoring
        maintainers:
        - email: support@dynatrace.com
          name: Dynatrace LLC
        maturity: alpha
        provider:
          name: Dynatrace LLC
          url: www.dynatrace.com
        relatedImages:
        - registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
        - registry.connect.redhat.com/dynatrace/dynatrace-operator-bundle@sha256:7311dca05f1b6131b176ee5410165bee1f8aa01549da2e5c58c3c53bafc36a18
        version: 1.7.2
      entries:
      - name: dynatrace-operator.v1.7.2
        version: 1.7.2
      - name: dynatrace-operator.v1.7.1
        version: 1.7.1
      - name: dynatrace-operator.v1.7.0
        version: 1.7.0
      - name: dynatrace-operator.v1.6.2
        version: 1.6.2
      - name: dynatrace-operator.v1.6.1
        version: 1.6.1
      - name: dynatrace-operator.v1.6.0
        version: 1.6.0
      - name: dynatrace-operator.v1.5.1
        version: 1.5.1
      - name: dynatrace-operator.v1.5.0
        version: 1.5.0
      - name: dynatrace-operator.v1.4.2
        version: 1.4.2
      - name: dynatrace-operator.v1.4.1
        version: 1.4.1
      - name: dynatrace-operator.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: alpha
    packageName: dynatrace-operator
    provider:
      name: Dynatrace LLC
      url: www.dynatrace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-trino-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trino-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/trino-operator@sha256:0aa26778c788e829b7226c51fd3ea384b4e9f23d3c3ef37f05390a9400448322
          description: Stackable Operator for Trino
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/trino-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for TrinoClusterSpec via `CustomResource`
            displayName: trinoclusters.trino.stackable.tech
            kind: TrinoCluster
            name: trinoclusters.trino.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for TrinoCatalogSpec via `CustomResource`
            displayName: trinocatalogs.trino.stackable.tech
            kind: TrinoCatalog
            name: trinocatalogs.trino.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Trino
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - trino
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/trino-operator@sha256:0aa26778c788e829b7226c51fd3ea384b4e9f23d3c3ef37f05390a9400448322
        - registry.connect.redhat.com/stackable/stackable-trino-operator@sha256:448b119ee427df47019b35103dfc5fbc79f52dc06cfdc71a81410593fdde9d7c
        version: 25.11.0
      entries:
      - name: trino-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-trino-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-emrcontainers-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-emrcontainers-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "emrcontainers.services.k8s.aws/v1alpha1",
                "kind": "VirtualCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/emrcontainers-controller:1.3.0
          createdAt: "2025-12-30T22:04:30Z"
          description: AWS EMR on EKS controller is a service controller for managing
            EMR on EKS resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: JobRun represents the state of an AWS emrcontainers JobRun
              resource.
            displayName: JobRun
            kind: JobRun
            name: jobruns.emrcontainers.services.k8s.aws
            version: v1alpha1
          - description: VirtualCluster represents the state of an AWS emrcontainers
              VirtualCluster resource.
            displayName: VirtualCluster
            kind: VirtualCluster
            name: virtualclusters.emrcontainers.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EMR on EKS resources in AWS from within your Kubernetes cluster.

          **About Amazon EMR on EKS**

          Amazon EMR on EKS provides a deployment option for Amazon EMR that allows you to run open-source big data frameworks on Amazon Elastic Kubernetes Service (Amazon EKS). With this deployment option, you can focus on running analytics workloads while Amazon EMR on EKS builds, configures, and manages containers for open-source applications.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EMR on EKS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - emrcontainers
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EMR on EKS Developer Resources
          url: https://docs.aws.amazon.com/emr/latest/EMR-on-EKS-DevelopmentGuide/emr-eks.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: emr on eks maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/emrcontainers-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-emrcontainers-controller@sha256:5b0174f334c167599cd3b4f3f23cd195b15ff246bb757c9c00343925b54b15ce
        version: 1.3.0
      entries:
      - name: ack-emrcontainers-controller.v1.3.0
        version: 1.3.0
      - name: ack-emrcontainers-controller.v1.2.0
        version: 1.2.0
      - name: ack-emrcontainers-controller.v1.1.2
        version: 1.1.2
      - name: ack-emrcontainers-controller.v1.1.1
        version: 1.1.1
      - name: ack-emrcontainers-controller.v1.1.0
        version: 1.1.0
      - name: ack-emrcontainers-controller.v1.0.27
        version: 1.0.27
      - name: ack-emrcontainers-controller.v1.0.25
        version: 1.0.25
      - name: ack-emrcontainers-controller.v1.0.24
        version: 1.0.24
      - name: ack-emrcontainers-controller.v1.0.23
        version: 1.0.23
      - name: ack-emrcontainers-controller.v1.0.22
        version: 1.0.22
      - name: ack-emrcontainers-controller.v1.0.21
        version: 1.0.21
      - name: ack-emrcontainers-controller.v1.0.18
        version: 1.0.18
      - name: ack-emrcontainers-controller.v1.0.16
        version: 1.0.16
      - name: ack-emrcontainers-controller.v1.0.15
        version: 1.0.15
      - name: ack-emrcontainers-controller.v1.0.14
        version: 1.0.14
      - name: ack-emrcontainers-controller.v1.0.13
        version: 1.0.13
      - name: ack-emrcontainers-controller.v1.0.12
        version: 1.0.12
      - name: ack-emrcontainers-controller.v1.0.11
        version: 1.0.11
      - name: ack-emrcontainers-controller.v1.0.9
        version: 1.0.9
      - name: ack-emrcontainers-controller.v1.0.8
        version: 1.0.8
      - name: ack-emrcontainers-controller.v1.0.4
        version: 1.0.4
      - name: ack-emrcontainers-controller.v1.0.3
        version: 1.0.3
      - name: ack-emrcontainers-controller.v1.0.1
        version: 1.0.1
      - name: ack-emrcontainers-controller.v1.0.0
        version: 1.0.0
      - name: ack-emrcontainers-controller.v0.1.2
        version: 0.1.2
      - name: ack-emrcontainers-controller.v0.1.0
        version: 0.1.0
      - name: ack-emrcontainers-controller.v0.0.10
        version: 0.0.10
      - name: ack-emrcontainers-controller.v0.0.9
        version: 0.0.9
      - name: ack-emrcontainers-controller.v0.0.8
        version: 0.0.8
      - name: ack-emrcontainers-controller.v0.0.7
        version: 0.0.7
      - name: ack-emrcontainers-controller.v0.0.6
        version: 0.0.6
      - name: ack-emrcontainers-controller.v0.0.5
        version: 0.0.5
      - name: ack-emrcontainers-controller.v0.0.4
        version: 0.0.4
      - name: ack-emrcontainers-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-emrcontainers-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Protocol Labs
      provider-url: ""
    name: ipfs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ipfs-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cluster.ipfs.io/v1alpha1",
                "kind": "CircuitRelay",
                "metadata": {
                  "name": "circuitrelay-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "cluster.ipfs.io/v1alpha1",
                "kind": "IpfsCluster",
                "metadata": {
                  "name": "ipfscluster-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Storage, Networking, Big Data
          containerImage: quay.io/redhat-et-ipfs/ipfs-operator:v0.0.1
          createdAt: 2022-04-05T15:50:37-0400
          operatorframework.io/suggested-namespace: ipfs-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ipfs-cluster/ipfs-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CircuitRelay is the Schema for the circuitrelays API.
            displayName: Circuit Relay
            kind: CircuitRelay
            name: circuitrelays.cluster.ipfs.io
            version: v1alpha1
          - description: IpfsCluster is the Schema for the ipfs API.
            displayName: Ipfs Cluster
            kind: IpfsCluster
            name: ipfsclusters.cluster.ipfs.io
            version: v1alpha1
        description: "The IPFS Operator enables users to easily create IPFS Cluster
          instances\nwithin their Kubernetes or OpenShift clusters. \n\n### Supported
          Features\n* Horizontal scaling\n* Joining collaborative clusters\n* Controlling
          IPFS node resource usage\n* Specifying reprovider settings  \n\n### Documentation
          \nDocumentation can be found on our [read-the-docs page](https://ipfs-operator.readthedocs.io/en/latest/),
          as well as our [GitHub repository](https://github.com/ipfs-cluster/ipfs-operator).\n\n###
          Getting Help\nIn case you run into issues while using the operator, please
          create an issue in our [GitHub\nrepository](https://github.com/ipfs-cluster/ipfs-operator).\n\n###
          Contributing\nWe welcome contributions of all types and sizes! You can find
          open issues\nin our [GitHub Repository](https://github.com/ipfs-cluster/ipfs-operator/issues),\nas
          well as make your own issue if you feel that something is missing.\n\n###
          License\nIPFS Operator is licensed under the [Apache 2.0 License](https://github.com/ipfs-cluster/ipfs-operator/blob/main/LICENSE)"
        displayName: IPFS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ipfs
        - ipfs cluster
        - decentralized storage
        - peer-to-peer
        - distributed hash table
        - content-addressed
        links:
        - name: IPFS Operator GitHub page
          url: https://github.com/ipfs-cluster/ipfs-operator
        - name: IPFS Cluster
          url: https://ipfscluster.io/
        - name: IPFS
          url: https://ipfs.io/
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Protocol Labs
        relatedImages:
        - quay.io/openshift-community-operators/ipfs-operator@sha256:03a61ef328feb626408d42904cdfb9d45f66e022d5a1e1088a15b74455487743
        - quay.io/redhat-et-ipfs/ipfs-operator:v0.0.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.0.2
      entries:
      - name: ipfs-operator.v0.0.2
        version: 0.0.2
      - name: ipfs-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ipfs-operator
    provider:
      name: Protocol Labs
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: lib-bucket-provisioner
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lib-bucket-provisioner.v2.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Storage,Big Data
          certified: "false"
          containerImage: quay.io/noobaa/pause
          createdAt: "2020-07-01T06:28:48Z"
          description: Library for the dynamic provisioning of object store buckets
            to be used by object store providers.
          repository: https://github.com/kube-object-storage/lib-bucket-provisioner
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          required:
          - description: Claim a bucket just like claiming a PV. Automate you app
              bucket provisioning by creating OBC with your app deployment. A secret
              and configmap (name=claim) will be created with access details for the
              app pods.
            displayName: ObjectBucketClaim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
          - description: Used under-the-hood. Created per ObjectBucketClaim and keeps
              provisioning information
            displayName: ObjectBucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
        description: |
          ### CRD-only Operator

          This operator package is **CRD-only** and the operator is a no-op operator.

          Instead, bucket provisioners using this library are using these CRD's and using CSV [required-crds](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/Documentation/design/building-your-csv.md#required-crds) them so that OLM can install it as a dependency.

          ### Generic Bucket Provisioning

          Kubernetes natively supports dynamic provisioning for many types of file and block storage, but lacks support for object bucket provisioning.

          This repo is a placeholder for an object store bucket provisioning library, very similar to the Kubernetes [sig-storage-lib-external-provisioner](https://github.com/kubernetes-sigs/sig-storage-lib-external-provisioner/blob/master/controller/controller.go) library.

          ### Known Provisioners
          - https://github.com/noobaa/noobaa-operator (NooBaa)
          - https://github.com/rook/rook (Rook-Ceph)
          - https://github.com/yard-turkey/aws-s3-provisioner (AWS-S3)
        displayName: lib-bucket-provisioner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - object
        - bucket
        - storage
        - cloud
        - s3
        links:
        - name: Github
          url: https://github.com/kube-object-storage/lib-bucket-provisioner
        maintainers:
        - email: jcope@redhat.com
          name: Jon Cope
        - email: jvance@redhat.com
          name: Jeff Vance
        - email: gmargali@redhat.com
          name: Guy Margalit
        - email: dzaken@redhat.com
          name: Danny Zaken
        - email: nbecker@redhat.com
          name: Nimrod Becker
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/noobaa/pause
        - quay.io/openshift-community-operators/lib-bucket-provisioner@sha256:132ecc88db79fb8b117a7a7974ca8f704600bac489923d918b78fd00378d5a5f
        version: 2.0.0
      entries:
      - name: lib-bucket-provisioner.v2.0.0
        version: 2.0.0
      name: alpha
    defaultChannel: alpha
    packageName: lib-bucket-provisioner
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: https://github.com/che-incubator/kubernetes-image-puller-operator
    name: kubernetes-imagepuller-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubernetes-imagepuller-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "che.eclipse.org/v1alpha1",
                "kind": "KubernetesImagePuller",
                "metadata": {
                  "name": "image-puller"
                },
                "spec": {
                  "daemonsetName": "k8s-image-puller",
                  "images": "java11-maven=quay.io/eclipse/che-java11-maven:next;che-theia=quay.io/eclipse/che-theia:next"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/eclipse/kubernetes-image-puller-operator:1.1.0
          createdAt: "2024-01-15T16:23:04Z"
          description: Create and manage kubernetes-image-puller instances.
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/che-incubator/kubernetes-image-puller-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubernetesImagePuller is the Schema for the kubernetesimagepullers
              API
            displayName: Kubernetes Image Puller
            kind: KubernetesImagePuller
            name: kubernetesimagepullers.che.eclipse.org
            version: v1alpha1
        description: "## About the managed application\n\nCreate a `KubernetesImagePuller`
          custom resource to automatically configure and run an instance of the [kubernetes-image-puller.](https://github.com/che-incubator/kubernetes-image-puller)\n##
          About this Operator\n\nThe `KubernetesImagePuller` custom resource understands
          the following fields in the `spec`:\n\n1. `configMapName` - The name of
          the `ConfigMap` to create\t\n2. `daemonsetName` - The name of the `DaemonSet`
          to be create.\n3. `deploymentName` - The name of the `kubernetes-image-puller`
          `Deployment` to create.\n4. `images` - A list of key-value pairs separated
          by semicolons of images to pull.  For example: `java=quay.io/eclipse/che-java8-maven:latest;theia=quay.io/eclipse/che-theia:next`\n5.
          `cachingIntervalHours` - The amount of time, in hours, between `DaemonSet`
          health checks.\n6. `cachingMemoryRequest` - The memory request for each
          cached image when the puller is running.\n7. `cachingMemoryLimit` - The
          memory limit for each cached image when the puller is running.\n8. `nodeSelector`
          - Node selector applied to pods created by the `DaemonSet`.\n## Prerequisites
          for enabling this Operator\n\nThe operator requires an existing namespace
          to be installed in.\nCheck the [README](https://github.com/che-incubator/kubernetes-image-puller-operator#installing-the-operator)
          for more details.\n"
        displayName: Kubernetes Image Puller Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - che
        - kubernetes-image-puller
        links:
        - name: Repository
          url: https://github.com/che-incubator/kubernetes-image-puller-operator
        maintainers:
        - email: ibuziuk@redhat.com
          name: Ilya Buziuk
        - email: abazko@redhat.com
          name: Anatolii Bazko
        maturity: stable
        provider:
          name: Red Hat, Inc.
          url: https://github.com/che-incubator/kubernetes-image-puller-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/kubernetes-imagepuller-operator@sha256:a72e3728dcf395667820c10c4c5ccb3f3d040ae5d04f50680e193398d3b72b88
        - quay.io/eclipse/kubernetes-image-puller-operator:1.1.0
        - quay.io/brancz/kube-rbac-proxy:v0.11.0
        version: 1.1.0
      entries:
      - name: kubernetes-imagepuller-operator.v1.1.0
        version: 1.1.0
      - name: kubernetes-imagepuller-operator.v1.0.6
        version: 1.0.6
      - name: kubernetes-imagepuller-operator.v1.0.5
        version: 1.0.5
      - name: kubernetes-imagepuller-operator.v1.0.4
        version: 1.0.4
      - name: kubernetes-imagepuller-operator.v1.0.3
        version: 1.0.3
      - name: kubernetes-imagepuller-operator.v1.0.2
        version: 1.0.2
      - name: kubernetes-imagepuller-operator.v1.0.1
        version: 1.0.1
      - name: kubernetes-imagepuller-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: kubernetes-imagepuller-operator
    provider:
      name: Red Hat, Inc.
      url: https://github.com/che-incubator/kubernetes-image-puller-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudwatchlogs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudwatchlogs-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cloudwatchlogs.services.k8s.aws/v1alpha1",
                "kind": "LogGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudwatchlogs-controller:1.2.0
          createdAt: "2025-11-29T03:46:37Z"
          description: AWS CloudWatch Logs controller is a service controller for
            managing CloudWatch Logs resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: LogGroup represents the state of an AWS cloudwatchlogs LogGroup
              resource.
            displayName: LogGroup
            kind: LogGroup
            name: loggroups.cloudwatchlogs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon CloudWatch Logs resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudWatch Logs**

          You can use Amazon CloudWatch Logs to monitor, store, and access your log files from Amazon Elastic Compute Cloud (Amazon EC2) instances, AWS CloudTrail, Route 53, and other sources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon CloudWatch Logs
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudwatchlogs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudWatch Logs Developer Resources
          url: https://aws.amazon.com/cloudwatch/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudwatch maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/cloudwatchlogs-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-cloudwatchlogs-controller@sha256:97870c245aa628ca61062685d89e93050a9a47b5abcbc11b1c22358e5d5da2f3
        version: 1.2.0
      entries:
      - name: ack-cloudwatchlogs-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudwatchlogs-controller.v1.1.2
        version: 1.1.2
      - name: ack-cloudwatchlogs-controller.v1.1.1
        version: 1.1.1
      - name: ack-cloudwatchlogs-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudwatchlogs-controller.v1.0.14
        version: 1.0.14
      - name: ack-cloudwatchlogs-controller.v1.0.13
        version: 1.0.13
      - name: ack-cloudwatchlogs-controller.v1.0.12
        version: 1.0.12
      - name: ack-cloudwatchlogs-controller.v1.0.11
        version: 1.0.11
      - name: ack-cloudwatchlogs-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudwatchlogs-controller.v1.0.9
        version: 1.0.9
      - name: ack-cloudwatchlogs-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudwatchlogs-controller.v1.0.7
        version: 1.0.7
      - name: ack-cloudwatchlogs-controller.v1.0.6
        version: 1.0.6
      - name: ack-cloudwatchlogs-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudwatchlogs-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudwatchlogs-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudwatchlogs-controller.v0.0.11
        version: 0.0.11
      - name: ack-cloudwatchlogs-controller.v0.0.10
        version: 0.0.10
      - name: ack-cloudwatchlogs-controller.v0.0.9
        version: 0.0.9
      - name: ack-cloudwatchlogs-controller.v0.0.8
        version: 0.0.8
      - name: ack-cloudwatchlogs-controller.v0.0.7
        version: 0.0.7
      - name: ack-cloudwatchlogs-controller.v0.0.4
        version: 0.0.4
      - name: ack-cloudwatchlogs-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudwatchlogs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudwatch-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudwatch-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudwatch-controller:1.4.0
          createdAt: "2025-11-29T03:47:43Z"
          description: AWS CloudWatch controller is a service controller for managing
            CloudWatch resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Dashboard represents the state of an AWS cloudwatch Dashboard
              resource.
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.cloudwatch.services.k8s.aws
            version: v1alpha1
          - description: MetricAlarm represents the state of an AWS cloudwatch MetricAlarm
              resource.
            displayName: MetricAlarm
            kind: MetricAlarm
            name: metricalarms.cloudwatch.services.k8s.aws
            version: v1alpha1
          - description: MetricStream represents the state of an AWS cloudwatch MetricStream
              resource.
            displayName: MetricStream
            kind: MetricStream
            name: metricstreams.cloudwatch.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon CloudWatch resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudWatch**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon CloudWatch
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudwatch
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudWatch Developer Resources
          url: https://aws.amazon.com/CloudWatch/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudwatch maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/cloudwatch-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-cloudwatch-controller@sha256:a4bcbbc9b6fa21797f47a34b93e09674200b98d67cbe9f704905dd0c91d67101
        version: 1.4.0
      entries:
      - name: ack-cloudwatch-controller.v1.4.0
        version: 1.4.0
      - name: ack-cloudwatch-controller.v1.3.1
        version: 1.3.1
      - name: ack-cloudwatch-controller.v1.3.0
        version: 1.3.0
      - name: ack-cloudwatch-controller.v1.2.1
        version: 1.2.1
      - name: ack-cloudwatch-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudwatch-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudwatch-controller.v1.0.13
        version: 1.0.13
      - name: ack-cloudwatch-controller.v1.0.12
        version: 1.0.12
      - name: ack-cloudwatch-controller.v1.0.11
        version: 1.0.11
      - name: ack-cloudwatch-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudwatch-controller.v1.0.9
        version: 1.0.9
      - name: ack-cloudwatch-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudwatch-controller.v1.0.7
        version: 1.0.7
      - name: ack-cloudwatch-controller.v1.0.6
        version: 1.0.6
      - name: ack-cloudwatch-controller.v1.0.5
        version: 1.0.5
      - name: ack-cloudwatch-controller.v1.0.4
        version: 1.0.4
      - name: ack-cloudwatch-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudwatch-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudwatch-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudwatch-controller.v0.0.12
        version: 0.0.12
      - name: ack-cloudwatch-controller.v0.0.11
        version: 0.0.11
      - name: ack-cloudwatch-controller.v0.0.10
        version: 0.0.10
      - name: ack-cloudwatch-controller.v0.0.9
        version: 0.0.9
      - name: ack-cloudwatch-controller.v0.0.8
        version: 0.0.8
      - name: ack-cloudwatch-controller.v0.0.3
        version: 0.0.3
      - name: ack-cloudwatch-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudwatch-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: odr-cluster-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odr-cluster-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRClusterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ramen",
                    "app.kubernetes.io/instance": "drclusterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "drclusterconfig",
                    "app.kubernetes.io/part-of": "ramen"
                  },
                  "name": "drclusterconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "VolumeReplicationGroup",
                "metadata": {
                  "name": "volumereplicationgroup-sample"
                },
                "spec": {
                  "async": {
                    "schedulingInterval": "10m"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ],
                        "name": "cpd"
                      },
                      {
                        "includedResources": [
                          "Deployment"
                        ],
                        "name": "deployments"
                      },
                      {
                        "excludedResources": [
                          ""
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includeClusterResources": true,
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "cpd",
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      },
                      {
                        "backupName": "deployments",
                        "includedResources": [
                          "Deployment"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "excludedResources": [
                          "ConfigMap",
                          "Secret",
                          "Deployment",
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      }
                    ]
                  },
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  },
                  "replicationState": "primary",
                  "s3Profiles": [
                    "s3-profile-of-east",
                    "s3-profile-of-west"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T08:01:01Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DRClusterConfig
            name: drclusterconfigs.ramendr.openshift.io
            version: v1alpha1
          - kind: MaintenanceMode
            name: maintenancemodes.ramendr.openshift.io
            version: v1alpha1
          - kind: ProtectedVolumeReplicationGroupList
            name: protectedvolumereplicationgrouplists.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupDestination
            name: replicationgroupdestinations.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupSource
            name: replicationgroupsources.ramendr.openshift.io
            version: v1alpha1
          - description: VolumeReplicationGroup is the Schema for the volumereplicationgroups
              API
            displayName: Volume Replication Group
            kind: VolumeReplicationGroup
            name: volumereplicationgroups.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Cluster is a disaster-recovery orchestrator for
          stateful applications, that operates from an Advanced Cluster Management
          (ACM) managed cluster and is controlled by Openshift DR Hub operator to
          orchestrate the life-cycle of an application, and its state on the managed
          cluster.
        displayName: Openshift DR Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-cluster-operator-bundle@sha256:08b88eee1cc768f2cebad6f50a42bcb0ac88dcb95b292b71ae9aed5ecefbc45f
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: odr-cluster-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odr-cluster-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odr-cluster-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odr-cluster-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odr-cluster-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odr-cluster-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odr-cluster-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odr-cluster-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odr-cluster-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odr-cluster-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odr-cluster-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRClusterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ramen",
                    "app.kubernetes.io/instance": "drclusterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "drclusterconfig",
                    "app.kubernetes.io/part-of": "ramen"
                  },
                  "name": "drclusterconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "VolumeReplicationGroup",
                "metadata": {
                  "name": "volumereplicationgroup-sample"
                },
                "spec": {
                  "async": {
                    "schedulingInterval": "10m"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ],
                        "name": "cpd"
                      },
                      {
                        "includedResources": [
                          "Deployment"
                        ],
                        "name": "deployments"
                      },
                      {
                        "excludedResources": [
                          ""
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includeClusterResources": true,
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "cpd",
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      },
                      {
                        "backupName": "deployments",
                        "includedResources": [
                          "Deployment"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "excludedResources": [
                          "ConfigMap",
                          "Secret",
                          "Deployment",
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      }
                    ]
                  },
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  },
                  "replicationState": "primary",
                  "s3Profiles": [
                    "s3-profile-of-east",
                    "s3-profile-of-west"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:49:42Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DRClusterConfig
            name: drclusterconfigs.ramendr.openshift.io
            version: v1alpha1
          - kind: MaintenanceMode
            name: maintenancemodes.ramendr.openshift.io
            version: v1alpha1
          - kind: ProtectedVolumeReplicationGroupList
            name: protectedvolumereplicationgrouplists.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupDestination
            name: replicationgroupdestinations.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupSource
            name: replicationgroupsources.ramendr.openshift.io
            version: v1alpha1
          - description: VolumeReplicationGroup is the Schema for the volumereplicationgroups
              API
            displayName: Volume Replication Group
            kind: VolumeReplicationGroup
            name: volumereplicationgroups.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Cluster is a disaster-recovery orchestrator for
          stateful applications, that operates from an Advanced Cluster Management
          (ACM) managed cluster and is controlled by Openshift DR Hub operator to
          orchestrate the life-cycle of an application, and its state on the managed
          cluster.
        displayName: Openshift DR Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-cluster-operator-bundle@sha256:f6047276c48b66bd6e2d34eb38e5f7278963e98355ae1a131f1eb3df7827c7d2
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 4.20.4-rhodf
      entries:
      - name: odr-cluster-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odr-cluster-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odr-cluster-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odr-cluster-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odr-cluster-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odr-cluster-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: JFrog
      provider-url: ""
    name: openshiftartifactoryha-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: artifactory-ha-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.helm.k8s.io/v1",
                "kind": "OpenshiftArtifactoryHa",
                "metadata": {
                  "name": "openshiftartifactoryha"
                },
                "spec": {
                  "artifactory-ha": {
                    "artifactory": {
                      "joinKey": "OVERRIDE",
                      "masterKey": "OVERRIDE",
                      "node": {
                        "replicaCount": 2,
                        "waitForPrimaryStartup": {
                          "enabled": false
                        }
                      }
                    },
                    "databaseUpgradeReady": true,
                    "database": {
                      "driver": "OVERRIDE",
                      "password": "OVERRIDE",
                      "type": "OVERRIDE",
                      "url": "OVERRIDE",
                      "user": "OVERRIDE"
                    },
                    "nginx": {
                      "http": {
                        "externalPort": 80,
                        "internalPort": 8080
                      },
                      "https": {
                        "externalPort": 443,
                        "internalPort": 8443
                      },
                      "service": {
                        "ssloffload": false
                      },
                      "tlsSecretName": "OVERRIDE"
                    },
                    "postgresql": {
                      "enabled": false
                    },
                    "waitForDatabase": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools,Integration & Delivery
          certified: "true"
          containerImage: registry.connect.redhat.com/jfrog/artifactory-operator@sha256:de69bb16052d5ac6fed9882eb65d49446b6fa1cc5ba830dd2a39e882712b1347
          createdAt: 2024-03-23 00:00:00+00:00
          description: JFrog Artifactory Enterprise deploys Artifactory in a high
            availability environment across multiple pods
          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"
          operators.openshift.io/valid-subscription: Not required
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/jfrog/JFrog-Cloud-Installers/tree/openshift4/Openshift4
          support: JFrog
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents Artifactory HA Instances
            displayName: Artifactory HA
            kind: OpenshiftArtifactoryHa
            name: openshiftartifactoryhas.charts.helm.k8s.io
            version: v1
        description: |2+
           ## Breaking change
          Please update to version 1.1.10 of the operator.
          Version 1.1.8 and 1.1.9 have issues. Please skip these versions.
          If you are using operator version < 1.2.0 there is a issue with upgrade where artifactory version is not updated if you update operator version. As workaround you can update the Custom Resource OpenshiftArtifactoryHa which has hardcored image value.After upgrading to version 1.2.0 you can remove the below parameters from your CR so that future upgrade works without workaround. ``` artifactory-ha.artifactory.image.registry artifactory-ha.artifactory.image.repository artifactory-ha.artifactory.image.tag ```
          ## Overview
          Openshift Operator to deploy JFrog Artifactory Enterprise into your Openshift cluster.
          ## Security Context Constraints
          To deploy this helm chart you will need to be a cluster admin w/ access to the anyuid scc and add the operator service account to the anyuid scc.
          ```
          oc adm policy add-scc-to-user anyuid -z artifactory-ha-operator -n openshift-operators
          ```
          Add the service account for the Artifactory chart to deploy successfully:
          ``` oc adm policy add-scc-to-user anyuid -z openshiftartifactoryha-artifactory-ha -n artifactory ```
          ### Usage

          An external DB is required. The operator will not deploy a DB but will require you to specify the configuration values to connect to it.

          Search for JFrog and click JFrog Artifactory Enterprise Operator to install.

          Go to the Installed Operators.

          Wait for the JFrog Artifactory Enterprise Operator to complete the installation.

          Open the Operator and click on the provided API: Artifactory HA.

          Click Create New Instance and provide the following parameters for your DB configuration:

          ```
          DATABASE_TYPE
          DATABASE_DRIVER
          DATABASE_URL
          DATABASE_USER
          DATABASE_PASSWORD
          ```
          Master key and Join key must be supplied. To generate a new key for each run the command below:

          ```
          # Create a key
          export JOIN_KEY=$(openssl rand -hex 32)
          echo ${JOIN_KEY}
          ```

          To use TLS you will need to first create a k8s tls secret to store your .crt and .key file into.
          Then supply the value of this k8s secret into the TLS_SECRET field.
          ``` oc create secret tls my_tls_secret --cert=tls.crt --key=tls.key --namespace=my_namespace ```
          Click Create for Artifactory Enterprise to deploy into OpenShift and connect to it on the external IP exposed by the load balancer.
          ### Create a route
          To expose Artifactory from Openshift we recommend you create a new route in Openshift.
          You can either use the oc command line tool or the Openshift web console to generate a new route.
          Depending upon where you terminate TLS you will need to either specify pass through or edge.
          Command Line (Edge):
          ``` oc create route edge --service=openshiftartifactory-ha --cert=tls.crt --key=tls.key --ca-cert=ca.crt --hostname=www.example.com ```
          Or for more information visit the official Openshift documentation on routes here:
          https://docs.openshift.com/container-platform/4.6/networking/routes/route-configuration.html

        displayName: JFrog Artifactory Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - CI/CD
        - Developers
        - Software
        - Productivity
        - Artifact Repository
        - Repository Manager
        - Docker
        - Maven
        - Git
        - Helm
        - npm
        - go
        - golang
        - kubernetes
        - k8s
        - rpm
        - yum
        links:
        - name: JFrog
          url: https://www.jfrog.com
        - name: JFrog Artifact Repository
          url: https://jfrog.com/artifactory/
        - name: Artifactory Video
          url: https://www.youtube.com/watch?v=r2_A5CPo43U
        maintainers:
        - email: partner-support@jfrog.com
          name: JFrog
        maturity: alpha
        provider:
          name: JFrog
        relatedImages:
        - registry.connect.redhat.com/jfrog/artifactory-operator@sha256:de69bb16052d5ac6fed9882eb65d49446b6fa1cc5ba830dd2a39e882712b1347
        - registry.connect.redhat.com/jfrog/artifactory-pro@sha256:0986ca71419ae628892db11e7ca7da5ac1c60219c144ce9aeb2de6e683a45262
        - registry.redhat.io/rhel8/nginx-120@sha256:87f658744af695273c434fac8246b716728b691a17d5d0c5b89247362e61e45c
        - registry.connect.redhat.com/jfrog/artifactory-operator-bundle@sha256:d7bd0e90aff6e8fc9fbc4119e5f1ec89eba93487b84356e3af95208c1250fe44
        version: 1.3.3
      entries:
      - name: artifactory-ha-operator.v1.3.3
        version: 1.3.3
      name: alpha
    - currentCSV: artifactory-ha-operator.v1.1.18
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.helm.k8s.io/v1",
                "kind": "OpenshiftArtifactoryHa",
                "metadata": {
                  "name": "openshiftartifactoryha"
                },
                "spec": {
                  "artifactory-ha": {
                    "artifactory": {
                      "image": {
                        "registry": "registry.connect.redhat.com",
                        "repository": "jfrog/artifactory-pro",
                        "tag": "7.27.3-1"
                      },
                      "joinKey": "OVERRIDE",
                      "masterKey": "OVERRIDE",
                      "uid": "1000721030",
                      "node": {
                        "replicaCount": 2,
                        "waitForPrimaryStartup": {
                          "enabled": false
                        }
                      }
                    },
                    "databaseUpgradeReady": true,
                    "database": {
                      "driver": "OVERRIDE",
                      "password": "OVERRIDE",
                      "type": "OVERRIDE",
                      "url": "OVERRIDE",
                      "user": "OVERRIDE"
                    },
                    "initContainerImage": "registry.connect.redhat.com/jfrog/init@sha256:164b41720a37f75c6129c8a28d05cc56f821022313d44ff918cce4a2146d93e8",
                    "nginx": {
                      "uid": "1000720104",
                      "gid": "1000720107",
                      "http": {
                        "externalPort": 80,
                        "internalPort": 8080
                      },
                      "https": {
                        "externalPort": 443,
                        "internalPort": 8443
                      },
                      "image": {
                        "registry": "registry.redhat.io",
                        "repository": "rhel8/nginx-116",
                        "tag": "latest"
                      },
                      "service": {
                        "ssloffload": false
                      },
                      "tlsSecretName": "OVERRIDE"
                    },
                    "postgresql": {
                      "enabled": false
                    },
                    "waitForDatabase": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools,Integration & Delivery
          certified: "true"
          containerImage: registry.connect.redhat.com/jfrog/artifactory-operator@sha256:e292553e1b6e792ff19276c7f6565d7ed61dd95289eb176066329954bc93e371
          createdAt: 2020-03-25 00:00:00+00:00
          description: JFrog Artifactory Enterprise deploys Artifactory in a high
            availability environment across multiple pods
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/jfrog/JFrog-Cloud-Installers/tree/openshift4/Openshift4
          support: JFrog
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents Artifactory HA Instances
            displayName: Artifactory HA
            kind: OpenshiftArtifactoryHa
            name: openshiftartifactoryhas.charts.helm.k8s.io
            version: v1
        description: |2+
           ## Breaking change
          Please update to version 1.1.10 of the operator.
          Version 1.1.8 and 1.1.9 have issues. Please skip these versions.

          ## Overview
          Openshift Operator to deploy JFrog Artifactory Enterprise into your Openshift cluster.
          ## Security Context Constraints
          To deploy this helm chart you will need to be a cluster admin w/ access to the anyuid scc and add the operator service account to the anyuid scc.
          ```
          oc adm policy add-scc-to-user anyuid -z artifactory-ha-operator -n openshift-operators
          ```
          Add the service account for the Artifactory chart to deploy successfully:
          ``` oc adm policy add-scc-to-user anyuid -z openshiftartifactoryha-artifactory-ha -n artifactory ```
          ### Usage

          An external DB is required. The operator will not deploy a DB but will require you to specify the configuration values to connect to it.

          Search for JFrog and click JFrog Artifactory Enterprise Operator to install.

          Go to the Installed Operators.

          Wait for the JFrog Artifactory Enterprise Operator to complete the installation.

          Open the Operator and click on the provided API: Artifactory HA.

          Click Create New Instance and provide the following parameters for your DB configuration:

          ```
          DATABASE_TYPE
          DATABASE_DRIVER
          DATABASE_URL
          DATABASE_USER
          DATABASE_PASSWORD
          ```
          Master key and Join key must be supplied. To generate a new key for each run the command below:

          ```
          # Create a key
          export JOIN_KEY=$(openssl rand -hex 32)
          echo ${JOIN_KEY}
          ```

          To use TLS you will need to first create a k8s tls secret to store your .crt and .key file into.
          Then supply the value of this k8s secret into the TLS_SECRET field.
          ``` oc create secret tls my_tls_secret --cert=tls.crt --key=tls.key --namespace=my_namespace ```
          Click Create for Artifactory Enterprise to deploy into OpenShift and connect to it on the external IP exposed by the load balancer.
          ### Create a route
          To expose Artifactory from Openshift we recommend you create a new route in Openshift.
          You can either use the oc command line tool or the Openshift web console to generate a new route.
          Depending upon where you terminate TLS you will need to either specify pass through or edge.
          Command Line (Edge):
          ``` oc create route edge --service=openshiftartifactory-ha --cert=tls.crt --key=tls.key --ca-cert=ca.crt --hostname=www.example.com ```
          Or for more information visit the official Openshift documentation on routes here:
          https://docs.openshift.com/container-platform/4.6/networking/routes/route-configuration.html

        displayName: JFrog Artifactory Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - CI/CD
        - Developers
        - Software
        - Productivity
        - Artifact Repository
        - Repository Manager
        - Docker
        - Maven
        - Git
        - Helm
        - npm
        - go
        - golang
        - kubernetes
        - k8s
        - rpm
        - yum
        links:
        - name: JFrog
          url: https://www.jfrog.com
        - name: JFrog Artifact Repository
          url: https://jfrog.com/artifactory/
        - name: Artifactory Video
          url: https://www.youtube.com/watch?v=r2_A5CPo43U
        maintainers:
        - email: partner-support@jfrog.com
          name: JFrog
        maturity: stable
        provider:
          name: JFrog
        relatedImages:
        - registry.connect.redhat.com/jfrog/init@sha256:164b41720a37f75c6129c8a28d05cc56f821022313d44ff918cce4a2146d93e8
        - registry.redhat.io/rhel8/nginx-116@sha256:d71d368d6094a5777000a8d99164959ccb97fca355e855e24bd92c13a8df04f6
        - registry.connect.redhat.com/jfrog/artifactory-operator-bundle@sha256:fc374491270b9566b0a5c80f3dd665b2227b1e8fb224eada7e5c98c82926ae08
        - registry.connect.redhat.com/jfrog/artifactory-operator@sha256:e292553e1b6e792ff19276c7f6565d7ed61dd95289eb176066329954bc93e371
        - registry.connect.redhat.com/jfrog/artifactory-pro@sha256:7289dde95d1e4d8e161a28cffd9c4a0cc96f92f7536d069ab63ec304a92254fd
        version: 1.1.18
      entries:
      - name: artifactory-ha-operator.v1.1.18
        version: 1.1.18
      name: stable
    defaultChannel: alpha
    packageName: openshiftartifactoryha-operator
    provider:
      name: JFrog
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: service-registry-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: service-registry-operator.v2.0.7-0.1662549961.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-kafkasql"
                },
                "spec": {
                  "configuration": {
                    "kafkasql": {
                      "bootstrapServers": "\u003cservice name\u003e.\u003cnamespace\u003e.svc:9092"
                    },
                    "persistence": "kafkasql"
                  }
                }
              },
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-sql"
                },
                "spec": {
                  "configuration": {
                    "persistence": "sql",
                    "sql": {
                      "dataSource": {
                        "password": "\u003cpassword\u003e",
                        "url": "jdbc:postgresql://\u003cservice name\u003e.\u003cnamespace\u003e.svc:5432/\u003cdatabase name\u003e",
                        "userName": "postgres"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/integration/service-registry-rhel8-operator@sha256:6dfd539951a739ec06fb6620b79c42c6159d4ee148c0d9d336547e786cd4780c
          createdAt: "2022-06-24"
          description: Deploy and manage Red Hat Integration service registry on OpenShift.
          olm.substitutesFor: service-registry-operator.v2.0.7-0.1661784420.p
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: https://github.com/Apicurio/apicurio-registry-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry represents a Red Hat Integration Service
              Registry instance
            displayName: Apicurio Registry
            kind: ApicurioRegistry
            name: apicurioregistries.registry.apicur.io
            version: v1
        description: |
          ## Service Registry
          Service Registry stores and retrieves API designs and event schemas, and gives you control of their evolution.
          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf - Provides a REST API and web UI to manage the artifacts and artifact meta-data - Includes Serializers and Deserializers for Kafka client integration - Configurable rules to control schema validity and evolution (compatibility) - Storage options: Kafka, PostgreSQL - Compatible with Confluent and IBM APIs - Runs on a lightweight Quarkus platform - Includes Maven plugin to integrate with Maven based builds
          ## Service Registry Operator
          Provides a quick and easy way to deploy and manage service registry on OpenShift.
          **Features**
          - Supports installation and configuration of the Registry for all storage options - Easily perform a rolling upgrade of the Registry
          ## Prerequisites
          This operator does not deploy storage for the Registry. Therefore, some storage options require that the chosen persistence service is already set up.
          ## License
          Red Hat Service Registry Operator is licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - Service Registry Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - service
        - service-registry
        links:
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        - name: Twitter
          url: https://twitter.com/Apicurio
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        - email: jsenko+apicurio@redhat.com
          name: Jakub Senko
        - email: ewittman+apicurio@redhat.com
          name: Eric Wittmann
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/integration/service-registry-kafkasql-rhel8@sha256:fc97a2a08b2f77d620ea86ec77bb4f750bfc0109ede3ad1080c2cb694019f8b8
        - registry.redhat.io/integration/service-registry-rhel8-operator-metadata@sha256:a2f0513cd8b96d71855464384cad7f1cd8c39f8d445be1ff1c1b91f22008d16d
        - registry.redhat.io/integration/service-registry-rhel8-operator@sha256:6dfd539951a739ec06fb6620b79c42c6159d4ee148c0d9d336547e786cd4780c
        - registry.redhat.io/integration/service-registry-sql-rhel8@sha256:6c97fa8ead1f6f0323811f8f35a80ae33f0e160f6c58f2bdb31713dbeaa3f014
        version: 2.0.7+0.1662549961.p
      entries:
      - name: service-registry-operator.v2.0.7-0.1662549961.p
        version: 2.0.7+0.1662549961.p
      - name: service-registry-operator.v2.0.7-0.1661784420.p
        version: 2.0.7+0.1661784420.p
      - name: service-registry-operator.v2.0.7
        version: 2.0.7
      - name: service-registry-operator.v2.0.6
        version: 2.0.6
      - name: service-registry-operator.v2.0.5-0.1654503709.p
        version: 2.0.5+0.1654503709.p
      - name: service-registry-operator.v2.0.5-0.1652887585.p
        version: 2.0.5+0.1652887585.p
      - name: service-registry-operator.v2.0.5-0.1646309885.p
        version: 2.0.5+0.1646309885.p
      - name: service-registry-operator.v2.0.5-0.1647938417.p
        version: 2.0.5+0.1647938417.p
      - name: service-registry-operator.v2.0.5-0.1648813064.p
        version: 2.0.5+0.1648813064.p
      - name: service-registry-operator.v2.0.5-0.1651047781.p
        version: 2.0.5+0.1651047781.p
      - name: service-registry-operator.v2.0.5-0.1652429755.p
        version: 2.0.5+0.1652429755.p
      - name: service-registry-operator.v2.0.5
        version: 2.0.5
      - name: service-registry-operator.v2.0.5-0.1655396591.p
        version: 2.0.5+0.1655396591.p
      - name: service-registry-operator.v2.0.4
        version: 2.0.4
      - name: service-registry-operator.v2.0.3
        version: 2.0.3
      - name: service-registry-operator.v2.0.2
        version: 2.0.2
      - name: service-registry-operator.v2.0.1
        version: 2.0.1
      - name: service-registry-operator.v2.0.0
        version: 2.0.0
      name: 2.0.x
    - currentCSV: service-registry-operator.v2.6.13-r2-0.1765811602.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-kafkasql"
                },
                "spec": {
                  "configuration": {
                    "kafkasql": {
                      "bootstrapServers": "\u003cservice name\u003e.\u003cnamespace\u003e.svc:9092"
                    },
                    "persistence": "kafkasql"
                  }
                }
              },
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-sql"
                },
                "spec": {
                  "configuration": {
                    "persistence": "sql",
                    "sql": {
                      "dataSource": {
                        "password": "\u003cpassword\u003e",
                        "url": "jdbc:postgresql://\u003cservice name\u003e.\u003cnamespace\u003e.svc:5432/\u003cdatabase name\u003e",
                        "userName": "postgres"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/apicurio/apicurio-registry-rhel8-operator@sha256:61f00395b51819312dda7abcdaa47190a11a83b1e2b523101be0ba776b1c5b7c
          createdAt: "2025-09-15"
          description: Deploy and manage Red Hat build of Apicurio Registry on OpenShift.
          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: "true"
          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.substitutesFor: service-registry-operator.v2.6.13-r2-0.1763986602.p
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations",
            "Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Apicurio/apicurio-registry-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry represents a Red Hat build of Apicurio Registry
              instance
            displayName: Apicurio Registry
            kind: ApicurioRegistry
            name: apicurioregistries.registry.apicur.io
            version: v1
        description: |
          ## Red Hat build of Apicurio Registry

          Red Hat build of Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Provides a REST API and web UI to manage the artifacts and artifact meta-data
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL
          - Compatible with Confluent and IBM APIs
          - Runs on a lightweight Quarkus platform
          - Includes Maven plugin to integrate with Maven based builds

          ## Red Hat build of Apicurio Registry Operator

          Provides a quick and easy way to deploy and manage Red Hat build of Apicurio Registry on OpenShift.

          **Features**
          - Supports installation and configuration of the Registry for all storage options
          - Easily perform a rolling upgrade of Red Hat build of Apicurio Registry

          ## Prerequisites

          This operator does not deploy storage for Red Hat build of Apicurio Registry. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Red Hat build of Apicurio Registry Operator is licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry-operator/blob/main/LICENSE)
        displayName: Red Hat build of Apicurio Registry
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - service
        - service-registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        - name: Twitter
          url: https://twitter.com/Apicurio
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        - email: jsenko+apicurio@redhat.com
          name: Jakub Senko
        - email: ewittman+apicurio@redhat.com
          name: Eric Wittmann
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/apicurio/apicurio-registry-operator-bundle@sha256:807f6c8f10a0f14789605e0dc64506e7aad7cce7789446da5079a49e79b8721e
        - registry.redhat.io/apicurio/apicurio-registry-rhel8-operator@sha256:61f00395b51819312dda7abcdaa47190a11a83b1e2b523101be0ba776b1c5b7c
        - registry.redhat.io/apicurio/apicurio-registry-sql-rhel8@sha256:0e5b7ed0d9c2aa07896f4d1f12c6ce6937f31a72f8d496b95c9c151121f46758
        - registry.redhat.io/apicurio/apicurio-registry-kafkasql-rhel8@sha256:f8f826084f842293de019ccc9ad0268e4ec0957e0db8fec58b069be2d6fa7cfe
        version: 2.6.13-r2+0.1765811602.p
      entries:
      - name: service-registry-operator.v2.6.13-r2-0.1763986602.p
        version: 2.6.13-r2+0.1763986602.p
      - name: service-registry-operator.v2.6.13-r2-0.1761835940.p
        version: 2.6.13-r2+0.1761835940.p
      - name: service-registry-operator.v2.6.13-r2-0.1765811602.p
        version: 2.6.13-r2+0.1765811602.p
      - name: service-registry-operator.v2.6.13-r2
        version: 2.6.13-r2
      - name: service-registry-operator.v2.6.13-r1
        version: 2.6.13-r1
      - name: service-registry-operator.v2.6.12-r1
        version: 2.6.12-r1
      - name: service-registry-operator.v2.6.11-r1
        version: 2.6.11-r1
      - name: service-registry-operator.v2.6.10
        version: 2.6.10
      - name: service-registry-operator.v2.6.9
        version: 2.6.9
      - name: service-registry-operator.v2.6.8-0.1739457262.p
        version: 2.6.8+0.1739457262.p
      - name: service-registry-operator.v2.6.8
        version: 2.6.8
      - name: service-registry-operator.v2.6.8-0.1740477005.p
        version: 2.6.8+0.1740477005.p
      - name: service-registry-operator.v2.6.6
        version: 2.6.6
      - name: service-registry-operator.v2.6.6-0.1736942038.p
        version: 2.6.6+0.1736942038.p
      - name: service-registry-operator.v2.6.5-0.1731946870.p
        version: 2.6.5+0.1731946870.p
      - name: service-registry-operator.v2.6.5
        version: 2.6.5
      - name: service-registry-operator.v2.6.5-0.1729511936.p
        version: 2.6.5+0.1729511936.p
      - name: service-registry-operator.v2.6.5-0.1730982111.p
        version: 2.6.5+0.1730982111.p
      - name: service-registry-operator.v2.6.3
        version: 2.6.3
      - name: service-registry-operator.v2.6.1
        version: 2.6.1
      - name: service-registry-operator.v2.6.1-0.1724927626.p
        version: 2.6.1+0.1724927626.p
      - name: service-registry-operator.v2.3.5
        version: 2.3.5
      - name: service-registry-operator.v2.3.4-0.1716987426.p
        version: 2.3.4+0.1716987426.p
      - name: service-registry-operator.v2.3.4
        version: 2.3.4
      - name: service-registry-operator.v2.3.3
        version: 2.3.3
      - name: service-registry-operator.v2.3.2
        version: 2.3.2
      - name: service-registry-operator.v2.3.1-0.1706181988.p
        version: 2.3.1+0.1706181988.p
      - name: service-registry-operator.v2.3.1
        version: 2.3.1
      - name: service-registry-operator.v2.3.0
        version: 2.3.0
      - name: service-registry-operator.v2.2.3
        version: 2.2.3
      - name: service-registry-operator.v2.2.3-0.1698369839.p
        version: 2.2.3+0.1698369839.p
      - name: service-registry-operator.v2.2.2-0.1697116886.p
        version: 2.2.2+0.1697116886.p
      - name: service-registry-operator.v2.2.2
        version: 2.2.2
      - name: service-registry-operator.v2.2.1
        version: 2.2.1
      - name: service-registry-operator.v2.2.0
        version: 2.2.0
      - name: service-registry-operator.v2.1.5
        version: 2.1.5
      - name: service-registry-operator.v2.1.4
        version: 2.1.4
      - name: service-registry-operator.v2.1.3
        version: 2.1.3
      - name: service-registry-operator.v2.1.2-0.1676389596.p
        version: 2.1.2+0.1676389596.p
      - name: service-registry-operator.v2.1.2
        version: 2.1.2
      - name: service-registry-operator.v2.1.1
        version: 2.1.1
      - name: service-registry-operator.v2.1.0
        version: 2.1.0
      - name: service-registry-operator.v2.0.7-0.1661784420.p
        version: 2.0.7+0.1661784420.p
      - name: service-registry-operator.v2.0.7-0.1662549961.p
        version: 2.0.7+0.1662549961.p
      - name: service-registry-operator.v2.0.7
        version: 2.0.7
      - name: service-registry-operator.v2.0.6
        version: 2.0.6
      - name: service-registry-operator.v2.0.5-0.1651047781.p
        version: 2.0.5+0.1651047781.p
      - name: service-registry-operator.v2.0.5-0.1647938417.p
        version: 2.0.5+0.1647938417.p
      - name: service-registry-operator.v2.0.5-0.1654503709.p
        version: 2.0.5+0.1654503709.p
      - name: service-registry-operator.v2.0.5-0.1652887585.p
        version: 2.0.5+0.1652887585.p
      - name: service-registry-operator.v2.0.5-0.1652429755.p
        version: 2.0.5+0.1652429755.p
      - name: service-registry-operator.v2.0.5
        version: 2.0.5
      - name: service-registry-operator.v2.0.5-0.1648813064.p
        version: 2.0.5+0.1648813064.p
      - name: service-registry-operator.v2.0.5-0.1655396591.p
        version: 2.0.5+0.1655396591.p
      - name: service-registry-operator.v2.0.5-0.1646309885.p
        version: 2.0.5+0.1646309885.p
      - name: service-registry-operator.v2.0.4
        version: 2.0.4
      - name: service-registry-operator.v2.0.3
        version: 2.0.3
      - name: service-registry-operator.v2.0.2
        version: 2.0.2
      - name: service-registry-operator.v2.0.1
        version: 2.0.1
      - name: service-registry-operator.v2.0.0
        version: 2.0.0
      name: 2.x
    defaultChannel: 2.x
    packageName: service-registry-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: rook-ceph-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rook-ceph-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephCluster",
                "metadata": {
                  "name": "my-rook-ceph",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "cephVersion": {
                    "image": "registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92"
                  },
                  "dataDirHostPath": "/var/lib/rook",
                  "mon": {
                    "count": 3
                  },
                  "dashboard": {
                    "enabled": true
                  },
                  "network": {
                    "hostNetwork": false
                  },
                  "rbdMirroring": {
                    "workers": 0
                  },
                  "storage": {
                    "useAllNodes": true,
                    "useAllDevices": true
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephBlockPool",
                "metadata": {
                  "name": "replicapool",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "failureDomain": "host",
                  "replicated": {
                    "size": 3
                  },
                  "annotations": null
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStore",
                "metadata": {
                  "name": "my-store",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "metadataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "dataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "gateway": {
                    "type": "s3",
                    "sslCertificateRef": null,
                    "port": 8080,
                    "securePort": null,
                    "instances": 1,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStoreUser",
                "metadata": {
                  "name": "my-user",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "store": "my-store",
                  "displayName": "my display name"
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephNFS",
                "metadata": {
                  "name": "my-nfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "rados": {
                    "pool": "myfs-data0",
                    "namespace": "nfs-ns"
                  },
                  "server": {
                    "active": 3,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephClient",
                "metadata": {
                  "name": "cinder",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "caps": {
                    "mon": "profile rbd",
                    "osd": "profile rbd pool=volumes, profile rbd pool=vms, profile rbd-read-only pool=images"
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephFilesystem",
                "metadata": {
                  "name": "myfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "dataPools": [
                    {
                      "compressionMode": "",
                      "crushRoot": "",
                      "deviceClass": "",
                      "erasureCoded": {
                        "algorithm": "",
                        "codingChunks": 0,
                        "dataChunks": 0
                      },
                      "failureDomain": "host",
                      "replicated": {
                        "requireSafeReplicaSize": false,
                        "size": 1,
                        "targetSizeRatio": 0.5
                      }
                    }
                  ],
                  "metadataPool": {
                    "compressionMode": "",
                    "crushRoot": "",
                    "deviceClass": "",
                    "erasureCoded": {
                      "algorithm": "",
                      "codingChunks": 0,
                      "dataChunks": 0
                    },
                    "failureDomain": "",
                    "replicated": {
                      "requireSafeReplicaSize": false,
                      "size": 1,
                      "targetSizeRatio": 0
                    }
                  },
                  "metadataServer": {
                    "activeCount": 1,
                    "activeStandby": true,
                    "placement": {},
                    "resources": {}
                  },
                  "preservePoolsOnDelete": false,
                  "preserveFilesystemOnDelete": false
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephRBDMirror",
                "metadata": {
                  "name": "my-rbd-mirror",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "annotations": null,
                  "count": 1,
                  "placement": {
                    "topologyKey": "kubernetes.io/hostname"
                  },
                  "resources": null
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:3538d484f80837f2164f15bcd1edb75fbcb73d72cbd94cd74c87f99da035fd84
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/red-hat-storage/rook
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Ceph cluster.
            displayName: Ceph Cluster
            kind: CephCluster
            name: cephclusters.ceph.rook.io
            version: v1
          - description: Represents a Ceph Block Pool.
            displayName: Ceph Block Pool
            kind: CephBlockPool
            name: cephblockpools.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store.
            displayName: Ceph Object Store
            kind: CephObjectStore
            name: cephobjectstores.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store User.
            displayName: Ceph Object Store User
            kind: CephObjectStoreUser
            name: cephobjectstoreusers.ceph.rook.io
            version: v1
          - description: Represents a cluster of Ceph NFS ganesha gateways.
            displayName: Ceph NFS
            kind: CephNFS
            name: cephnfses.ceph.rook.io
            version: v1
          - description: Represents a Ceph User.
            displayName: Ceph Client
            kind: CephClient
            name: cephclients.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem.
            displayName: Ceph Filesystem
            kind: CephFilesystem
            name: cephfilesystems.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem Mirror.
            displayName: Ceph Filesystem Mirror
            kind: CephFilesystemMirror
            name: cephfilesystemmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph RBD Mirror.
            displayName: Ceph RBD Mirror
            kind: CephRBDMirror
            name: cephrbdmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Realm.
            displayName: Ceph Object Store Realm
            kind: CephObjectRealm
            name: cephobjectrealms.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone Group.
            displayName: Ceph Object Store Zone Group
            kind: CephObjectZoneGroup
            name: cephobjectzonegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone.
            displayName: Ceph Object Store Zone
            kind: CephObjectZone
            name: cephobjectzones.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Notification.
            displayName: Ceph Bucket Notification
            kind: CephBucketNotification
            name: cephbucketnotifications.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Topic.
            displayName: Ceph Bucket Topic
            kind: CephBucketTopic
            name: cephbuckettopics.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem SubVolumeGroup.
            displayName: Ceph Filesystem SubVolumeGroup
            kind: CephFilesystemSubVolumeGroup
            name: cephfilesystemsubvolumegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph BlockPool Rados Namespace.
            displayName: Ceph BlockPool Rados Namespace
            kind: CephBlockPoolRadosNamespace
            name: cephblockpoolradosnamespaces.ceph.rook.io
            version: v1
          - description: Represents a Ceph COSI Driver.
            displayName: Ceph COSI Driver
            kind: CephCOSIDriver
            name: cephcosidrivers.ceph.rook.io
            version: v1
        description: |2

          The Rook-Ceph storage operator packages, deploys, manages, upgrades and scales Ceph storage for providing persistent storage to infrastructure services (Logging, Metrics, Registry) as well as stateful applications in Kubernetes clusters.

          ## Rook-Ceph Storage Operator

          Rook runs as a cloud-native service in Kubernetes clusters for optimal integration with applications in need of storage, and handles the heavy-lifting behind the scenes such as provisioning and management.
          Rook orchestrates battle-tested open-source storage technology Ceph, which has years of production deployments and runs some of the worlds largest clusters.

          Ceph is a massively scalable, software-defined, cloud native storage platform that offers block, file and object storage services.
          Ceph can be used to back a wide variety of applications including relational databases, NoSQL databases, CI/CD tool-sets, messaging, AI/ML and analytics applications.
          Ceph is a proven storage platform that backs some of the world's largest storage deployments and has a large vibrant open source community backing the project.

          ## Supported features
          * **High Availability and resiliency** - Ceph has no single point of failures (SPOF) and all its components work natively in a highly available fashion
          * **Data Protection** - Ceph periodically scrub for inconsistent objects and repair them if necessary, making sure your replicas are always coherent
          * **Consistent storage platform across hybrid cloud** - Ceph can be deployed anywhere (on-premise or bare metal) and thus offers a similar experience regardless
          * **Block, File & Object storage service** - Ceph can expose your data through several storage interfaces, solving all the application use cases
          * **Scale up/down** - addition and removal of storage is fully covered by the operator.
          * **Dashboard** - The Operator deploys a dashboard for monitoring and introspecting your cluster.

          ## Before you start
          https://rook.io/docs/rook/v1.0/k8s-pre-reqs.html
        displayName: Rook-Ceph
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - rook
        - ceph
        - storage
        - object storage
        - open source
        - block storage
        - shared filesystem
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/rook
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:3101db7b7f493e476ffe2c91083792ded3e2030d431c3be7d7176ad7df185324
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:3538d484f80837f2164f15bcd1edb75fbcb73d72cbd94cd74c87f99da035fd84
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        version: 4.19.9-rhodf
      entries:
      - name: rook-ceph-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: rook-ceph-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: rook-ceph-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: rook-ceph-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: rook-ceph-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: rook-ceph-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: rook-ceph-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: rook-ceph-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: rook-ceph-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: rook-ceph-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: rook-ceph-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephCluster",
                "metadata": {
                  "name": "my-rook-ceph",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "cephVersion": {
                    "image": "registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92"
                  },
                  "dataDirHostPath": "/var/lib/rook",
                  "mon": {
                    "count": 3
                  },
                  "dashboard": {
                    "enabled": true
                  },
                  "network": {
                    "hostNetwork": false
                  },
                  "rbdMirroring": {
                    "workers": 0
                  },
                  "storage": {
                    "useAllNodes": true,
                    "useAllDevices": true
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephBlockPool",
                "metadata": {
                  "name": "replicapool",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "failureDomain": "host",
                  "replicated": {
                    "size": 3
                  },
                  "annotations": null
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStore",
                "metadata": {
                  "name": "my-store",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "metadataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "dataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "gateway": {
                    "type": "s3",
                    "sslCertificateRef": null,
                    "port": 8080,
                    "securePort": null,
                    "instances": 1,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStoreUser",
                "metadata": {
                  "name": "my-user",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "store": "my-store",
                  "displayName": "my display name"
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephNFS",
                "metadata": {
                  "name": "my-nfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "rados": {
                    "pool": "myfs-data0",
                    "namespace": "nfs-ns"
                  },
                  "server": {
                    "active": 3,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephClient",
                "metadata": {
                  "name": "cinder",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "caps": {
                    "mon": "profile rbd",
                    "osd": "profile rbd pool=volumes, profile rbd pool=vms, profile rbd-read-only pool=images"
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephFilesystem",
                "metadata": {
                  "name": "myfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "dataPools": [
                    {
                      "compressionMode": "",
                      "crushRoot": "",
                      "deviceClass": "",
                      "erasureCoded": {
                        "algorithm": "",
                        "codingChunks": 0,
                        "dataChunks": 0
                      },
                      "failureDomain": "host",
                      "replicated": {
                        "requireSafeReplicaSize": false,
                        "size": 1,
                        "targetSizeRatio": 0.5
                      }
                    }
                  ],
                  "metadataPool": {
                    "compressionMode": "",
                    "crushRoot": "",
                    "deviceClass": "",
                    "erasureCoded": {
                      "algorithm": "",
                      "codingChunks": 0,
                      "dataChunks": 0
                    },
                    "failureDomain": "",
                    "replicated": {
                      "requireSafeReplicaSize": false,
                      "size": 1,
                      "targetSizeRatio": 0
                    }
                  },
                  "metadataServer": {
                    "activeCount": 1,
                    "activeStandby": true,
                    "placement": {},
                    "resources": {}
                  },
                  "preservePoolsOnDelete": false,
                  "preserveFilesystemOnDelete": false
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephRBDMirror",
                "metadata": {
                  "name": "my-rbd-mirror",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "annotations": null,
                  "count": 1,
                  "placement": {
                    "topologyKey": "kubernetes.io/hostname"
                  },
                  "resources": null
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/red-hat-storage/rook
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Ceph cluster.
            displayName: Ceph Cluster
            kind: CephCluster
            name: cephclusters.ceph.rook.io
            version: v1
          - description: Represents a Ceph Block Pool.
            displayName: Ceph Block Pool
            kind: CephBlockPool
            name: cephblockpools.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store.
            displayName: Ceph Object Store
            kind: CephObjectStore
            name: cephobjectstores.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store User.
            displayName: Ceph Object Store User
            kind: CephObjectStoreUser
            name: cephobjectstoreusers.ceph.rook.io
            version: v1
          - description: Represents a cluster of Ceph NFS ganesha gateways.
            displayName: Ceph NFS
            kind: CephNFS
            name: cephnfses.ceph.rook.io
            version: v1
          - description: Represents a Ceph User.
            displayName: Ceph Client
            kind: CephClient
            name: cephclients.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem.
            displayName: Ceph Filesystem
            kind: CephFilesystem
            name: cephfilesystems.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem Mirror.
            displayName: Ceph Filesystem Mirror
            kind: CephFilesystemMirror
            name: cephfilesystemmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph RBD Mirror.
            displayName: Ceph RBD Mirror
            kind: CephRBDMirror
            name: cephrbdmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Realm.
            displayName: Ceph Object Store Realm
            kind: CephObjectRealm
            name: cephobjectrealms.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone Group.
            displayName: Ceph Object Store Zone Group
            kind: CephObjectZoneGroup
            name: cephobjectzonegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone.
            displayName: Ceph Object Store Zone
            kind: CephObjectZone
            name: cephobjectzones.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Notification.
            displayName: Ceph Bucket Notification
            kind: CephBucketNotification
            name: cephbucketnotifications.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Topic.
            displayName: Ceph Bucket Topic
            kind: CephBucketTopic
            name: cephbuckettopics.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem SubVolumeGroup.
            displayName: Ceph Filesystem SubVolumeGroup
            kind: CephFilesystemSubVolumeGroup
            name: cephfilesystemsubvolumegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph BlockPool Rados Namespace.
            displayName: Ceph BlockPool Rados Namespace
            kind: CephBlockPoolRadosNamespace
            name: cephblockpoolradosnamespaces.ceph.rook.io
            version: v1
          - description: Represents a Ceph COSI Driver.
            displayName: Ceph COSI Driver
            kind: CephCOSIDriver
            name: cephcosidrivers.ceph.rook.io
            version: v1
        description: |2

          The Rook-Ceph storage operator packages, deploys, manages, upgrades and scales Ceph storage for providing persistent storage to infrastructure services (Logging, Metrics, Registry) as well as stateful applications in Kubernetes clusters.

          ## Rook-Ceph Storage Operator

          Rook runs as a cloud-native service in Kubernetes clusters for optimal integration with applications in need of storage, and handles the heavy-lifting behind the scenes such as provisioning and management.
          Rook orchestrates battle-tested open-source storage technology Ceph, which has years of production deployments and runs some of the worlds largest clusters.

          Ceph is a massively scalable, software-defined, cloud native storage platform that offers block, file and object storage services.
          Ceph can be used to back a wide variety of applications including relational databases, NoSQL databases, CI/CD tool-sets, messaging, AI/ML and analytics applications.
          Ceph is a proven storage platform that backs some of the world's largest storage deployments and has a large vibrant open source community backing the project.

          ## Supported features
          * **High Availability and resiliency** - Ceph has no single point of failures (SPOF) and all its components work natively in a highly available fashion
          * **Data Protection** - Ceph periodically scrub for inconsistent objects and repair them if necessary, making sure your replicas are always coherent
          * **Consistent storage platform across hybrid cloud** - Ceph can be deployed anywhere (on-premise or bare metal) and thus offers a similar experience regardless
          * **Block, File & Object storage service** - Ceph can expose your data through several storage interfaces, solving all the application use cases
          * **Scale up/down** - addition and removal of storage is fully covered by the operator.
          * **Dashboard** - The Operator deploys a dashboard for monitoring and introspecting your cluster.

          ## Before you start
          https://rook.io/docs/rook/v1.0/k8s-pre-reqs.html
        displayName: Rook-Ceph
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - rook
        - ceph
        - storage
        - object storage
        - open source
        - block storage
        - shared filesystem
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/rook
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:7ae5cd1afb0ba1a7e28acb6631b3fe7ec3e23fbba782162baa2df847de61b28e
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:231965a888729ba42bbac8d844d128e18468e5a21916dcd525d43ef028ccea5f
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        version: 4.20.4-rhodf
      entries:
      - name: rook-ceph-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: rook-ceph-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: rook-ceph-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: rook-ceph-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: rook-ceph-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: rook-ceph-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataDirect Networks
      provider-url: https://www.ddn.com
    name: vmstore-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vmstore-csi-driver-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.tintri.com/v1alpha1",
                "kind": "VmstoreCsi",
                "metadata": {
                  "name": "vmstorecsi-sample"
                },
                "spec": {
                  "config": {
                    "debug": true,
                    "vmstore_map": {
                      "vmstore2": {
                        "dataIp": "\u003cdataIp\u003e",
                        "managementAddress": "\u003cmanagementAddress\u003e",
                        "mountPoint": "/tintri-csi",
                        "password": "tintri99",
                        "username": "admin",
                        "vmstoreFS": "/tintri/csi"
                      }
                    }
                  },
                  "csi_snapshotter": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                    "resources": null,
                    "tag": "v5.0.1",
                    "timeout": "120m"
                  },
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "tintri/vmstore-csi-driver",
                    "tag": "v1.0.1"
                  },
                  "priorityClassName": "system-cluster-critical",
                  "provisioner": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                    "resources": null,
                    "tag": "v4.0.1",
                    "timeout": "120m"
                  },
                  "registrar": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                    "resources": null,
                    "tag": "v2.10.1"
                  },
                  "resizer": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-resizer",
                    "resources": null,
                    "tag": "v1.12.0"
                  },
                  "resources": {
                    "limits": {
                      "cpu": "512m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "64Mi"
                    }
                  },
                  "secretName": "vmstore-csi-file-driver-config",
                  "volumeNamePrefix": "pvc-vmstore"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-07-02T23:11:08Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: VmstoreCsi
            name: vmstorecsis.charts.tintri.com
            version: v1alpha1
        description: "A Container Storage Interface (CSI) Driver for Tintri Vmstore
          filesystems. This operator eases the installation\nand management of the
          Vmstore CSI Driver in an OpenShift or other Operator Lifecycle Manager enabled
          cluster.\n\n\n## Prerequisites\nMake sure that the top level folder where
          the CSI volumes will be created exists on VMStore and is shared over NFS.\nFor
          example `tintri/csi`.\n## Usage\n\n### Dynamically provisioned volumes\n\nFor
          dynamic volume provisioning, the administrator needs to set up a _StorageClass_
          in the PV yaml (examples/nginx-dynamic-volume.yaml for this example) pointing
          to the driver.\nFor dynamically provisioned volumes, Kubernetes generates
          volume name automatically (for example `pvc-vmstore-cfc67950-fe3c-11e8-a3ca-005056b857f8`).\n\n```yaml\napiVersion:
          storage.k8s.io/v1\nkind: StorageClass\nmetadata:\n  name: vmstore-csi-file-driver-sc\nprovisioner:
          vmstore.csi.tintri.com\nallowVolumeExpansion: true\n```\n\n#### Example\n\nRun
          Nginx pod with dynamically provisioned volume:\n\n```bash\noc apply -f examples/nginx-dynamic-volume.yaml\n\n#
          to delete this pod:\noc delete -f examples/nginx-dynamic-volume.yaml\n```\n\n###
          Static (pre-provisioned) volumes\n\nThe driver can use already existing
          Vmstore filesystem,\nin this case, _StorageClass_, _PersistentVolume_ and
          _PersistentVolumeClaim_ should be configured.\n\n#### _StorageClass_ configuration\n\n```yaml\napiVersion:
          storage.k8s.io/v1\nkind: StorageClass\nmetadata:\n  name: vmstore-csi-file-driver-sc-nginx-persistent\nprovisioner:
          vmstore.csi.tintri.com\nallowVolumeExpansion: true\nallowedTopologies:\n-
          matchLabelExpressions:\n  - key: topology.vmstore.csi.tintri.com/zone\n
          \   values:\n    - zone-1\nmountOptions:                         # list
          of options for `mount -o ...` command\n#  - noatime                          #\n```\n\n####
          _PersistentVolume_ configuration\n\n```yaml\napiVersion: v1\nkind: PersistentVolume\nmetadata:\n
          \ name: vmstore-csi-file-driver-pv-nginx-persistent\n  labels:\n    name:
          vmstore-csi-file-driver-pv-nginx-persistent\nspec:\n  storageClassName:
          vmstore-csi-file-driver-sc-nginx-persistent\n  accessModes:\n    - ReadWriteOnce\n
          \ capacity:\n    storage: 1Gi\n  csi:\n    driver: vmstore.csi.tintri.com\n
          \   volumeHandle: vmstore1/172.30.230.128:/tintri/csi/vmstorefs-mnt/persistent/volumefile-persistent.img\n```\n\n####
          _PersistentVolumeClaim_ (pointing to created _PersistentVolume_)\n\n```yaml\napiVersion:
          v1\nkind: PersistentVolumeClaim\nmetadata:\n  name: vmstore-csi-file-driver-pvc-nginx-persistent\nspec:\n
          \ storageClassName: vmstore-csi-file-driver-sc-nginx-persistent\n  accessModes:\n
          \   - ReadWriteOnce\n  resources:\n    requests:\n      storage: 1Gi\n  selector:\n
          \   matchLabels:\n      # to create 1-1 relationship for pod - persistent
          volume use unique labels\n      name: vmstore-csi-file-driver-pv-nginx-persistent\n```\n\n###
          Topology configuration\nIn order to configure CSI driver with kubernetes
          topology, use the `zone` parameter in driver config or storageClass parameters.
          Example config file with zones:\n  ```bash\n  vmstore_map:\n    vmstore1:\n
          \     mountPoint: /tintri-csi                            # mountpoint on
          the host where the tintri fs will be mounted\n      dataIp: 172.30.200.37\n
          \     managementAddress: tafzq23.tintri.com\n      vmstoreFS: /tintri/fs01\n
          \     zone: zone-1\n      username: admin\n      password: password\n\n
          \   vmstore2:\n      mountPoint: /tintri-csi                            #
          mountpoint on the host where the tintri fs will be mounted\n      dataIp:
          10.136.40.71\n      managementAddress: tafbm05.tintri.com\n      vmstoreFS:
          /tintri/csi\n      zone: zone-2\n      username: admin\n      password:
          password\n  ```\n\nThis will assign volumes to be created on Vmstore that
          correspond with the zones requested by allowedTopologies values.\n\n\n###
          Defaults/Configuration/Parameter options\n\n| Default  | Config               |
          \ Parameter    |  Desc                             |\n|----------|----------------------|---------------|-----------------------------------|\n|
          \  -      | dataIp               |   dataIp      | Data address used to
          mount Vmstore filesystem |\n| -    | mountPoint       |    -      | Mount
          point inside of the driver container where Vmstore filesystem will be mounted|\n|
          \  -      | username             |      -        | Vmstore API username
          |\n|   -      | password             |      -        | Vmstore API password
          |\n|   -      | zone                 |      -        | Zone to match topology.vmstore.csi.tintri.com/zone
          \           |\n|   -      | vmstoreFS            |   vmstoreFS   | Path
          to filesystem on Vmstore |\n|   -      | managementAddress    |      -        |
          FQDN for Vmstore management operations |\n|   -      | defaultMountOptions
          \ |   mountOptions| Mount options |\n|   0777   | mountPointPermissions|
          \  mountPointPermissions | File permissions to be set on mount point |\n\n####
          Example\n\nRun nginx server using PersistentVolume.\n\n**Note:** Pre-configured
          volume file should exist on the Vmstore:\n`/tintri/csi/vmstorefs-mnt/persistent/volumefile-persistent.img`.\n\n```bash\noc
          apply -f nginx-persistent-volume.yaml\n\n# to delete this pod and volume:\noc
          delete -f nginx-persistent-volume.yaml\n```\n\n## Snapshots\nTo use CSI
          snapshots, the snapshot CRDs along with the csi-snapshotter must be installed.\n```bash\noc
          apply -f deploy/kubernetes/snapshots/\n```\n\nAfter that the snapshot class
          for VMStore CSI must be created\n\n```bash\noc apply -f examples/snapshot-class.yaml\n```\n\nNow
          a snapshot can be created, for example\n```bash\noc apply -f examples/snapshot-from-dynamic.yaml\n```\n\nWe
          can create a volume using the snapshot\n```bash\noc apply -f examples/nginx-from-snapshot.yaml\n```\n\n##
          Troubleshooting\n### Driver logs\nTo collect all driver related logs, you
          can use the `oc logs` command.\nAll in on command:\n```bash\nmkdir vmstore-csi-logs\nfor
          name in $(oc get pod -owide | grep vmstore | awk '{print $1}'); do oc logs
          $name --all-containers > vmstore-csi-logs/$name; done\n```\n\nTo get logs
          from all containers of a single pod \n```bash\noc logs <pod_name> --all-containers\n```\n\nLogs
          from a single container of a pod\n```bash\noc logs <pod_name> -c driver\n```\n\n####
          Driver secret\n```bash\noc get secret vmstore-csi-file-driver-config -o
          json | jq '.data | map_values(@base64d)' > vmstore-csi-logs/vmstore-csi-file-driver-config\n```\n\n####
          PV/PVC/Pod data\n```bash\noc get pvc > vmstore-csi-logs/pvcs\noc get pv
          > vmstore-csi-logs/pvs\noc get pod > vmstore-csi-logs/pods\n```\n\n####
          Extended info about a PV/PVC/Pod:\n```bash\noc describe pvc <pvc_name> >
          vmstore-csi-logs/<pvc_name>\noc describe pv <pv_name> > vmstore-csi-logs/<pv_name>\noc
          describe pod <pod_name> > vmstore-csi-logs/<pod_name>\n```"
        displayName: Vmstore CSI file driver
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - CSI
        - Vmstore
        - storage
        - Tintri
        - DDN
        links:
        - name: DDN vmstore Filesystem
          url: https://www.ddn.com/products/lustre-file-system-vmstore/
        maintainers:
        - email: akhodos@tintri.com
          name: Alexey Khodos
        - email: rrethinam@tintri.com
          name: Ranjith Rethinam
        maturity: alpha
        provider:
          name: DataDirect Networks
          url: https://www.ddn.com
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d4883d7c622683b3319b5e6b3a7edfbf2594c18060131a8bf64504805f875522
        - registry.connect.redhat.com/ddn/vmstore-csi-file-driver-operator@sha256:5aabe66a616dd7639b0638c7743118e585e3af6caca203f42a7187cd681442fd
        - tintri/vmstore-csi-driver-operator-controller@sha256:2cc0f04ed3da09b0af6ae737237d4f54772d04bf888c597361f67f6e6618799f
        version: 1.0.0
      entries:
      - name: vmstore-csi-driver-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: vmstore-csi-driver-operator
    provider:
      name: DataDirect Networks
      url: https://www.ddn.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: prometurbo-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometurbo-operator.v8.18.40-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5-beta.1 <8.18.40-beta.1'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
          - kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.

          ### Get Started
          Please follow [this](https://www.ibm.com/docs/en/tarm/8.15.x?topic=configuration-prometheus) for an overview of Prometurbo and deployment instructions.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/prometurbo
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/prometurbo-operator@sha256:9b6bb8cf444dc44b7709bf95962151d0817c635ce68fce8042122ab3f99bc0ee
        - registry.connect.redhat.com/turbonomic/prometurbo-operator-bundle@sha256:26190af9271c0600c7ec0a3dc4ee23a1290657615379124bcf6b4d389cda90fc
        version: 8.18.40-beta.1
      entries:
      - name: prometurbo-operator.v8.18.40-beta.1
        version: 8.18.40-beta.1
      name: beta
    - currentCSV: prometurbo-operator.v8.18.30
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5 <8.18.30'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
          - kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.

          ### Get Started
          Please follow [this](https://www.ibm.com/docs/en/tarm/8.15.x?topic=configuration-prometheus) for an overview of Prometurbo and deployment instructions.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/prometurbo
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/prometurbo-operator-bundle@sha256:3c90ee4515d44efe835994f44fd883a6a1715826d19068241b91144c83632b45
        - icr.io/cpopen/prometurbo-operator@sha256:59b410c33ebc6e5420ff3f278f364837bae483b3f8a367e31822da8820cae33b
        version: 8.18.30
      entries:
      - name: prometurbo-operator.v8.18.30
        version: 8.18.30
      name: stable
    defaultChannel: stable
    packageName: prometurbo-certified
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/en/products/edge/validated-patterns
    name: patterns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: patterns-operator.v0.0.63
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "gitops.hybrid-cloud-patterns.io/v1alpha1",
                "kind": "Pattern",
                "metadata": {
                  "name": "pattern-sample"
                },
                "spec": {
                  "clusterGroupName": "hub",
                  "gitSpec": {
                    "targetRepo": "https://github.com/validatedpatterns/multicloud-gitops",
                    "targetRevision": "main"
                  },
                  "multiSourceConfig": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/validatedpatterns/patterns-operator:0.0.63
          createdAt: "2025-10-29 13:50:47"
          description: "An operator to deploy and manage architecture patterns from
            https://validatedpatterns.io. \nThis operator collects some Analytics
            like cluster version, cloud type, etc. To disable this\nadd \"ANALYTICS:
            false\" to the environment variables in the subscription."
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/must-gather-image: quay.io/validatedpatterns/must-gather@sha256:ac23dfe8c3b8404f75f4bdf0eb54470acc98bbb5f892de34d2580066e93ee63d
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/validatedpatterns/patterns-operator
          support: validatedpatterns@googlegroups.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Pattern is the Schema for the patterns API
            displayName: Pattern
            kind: Pattern
            name: patterns.gitops.hybrid-cloud-patterns.io
            version: v1alpha1
        description: Deploys and manages architecture patterns from https://validatedpatterns.io
        displayName: Validated Patterns Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Validated
        - Pattern
        - Blueprint
        - Architecture
        links:
        - name: Hybrid Cloud Patterns
          url: https://validatedpatterns.io
        maintainers:
        - email: validatedpatterns@googlegroups.com
          name: patterns-team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/en/products/edge/validated-patterns
        relatedImages:
        - quay.io/community-operator-pipeline-prod/patterns-operator:0.0.63
        - quay.io/validatedpatterns/must-gather@sha256:ac23dfe8c3b8404f75f4bdf0eb54470acc98bbb5f892de34d2580066e93ee63d
        - quay.io/validatedpatterns/patterns-operator@sha256:f1fd6cf65ece516f7e413e6f2f3483982d0831bcea31c0e0aae11ba47c71659c
        version: 0.0.63
      entries:
      - name: patterns-operator.v0.0.63
        version: 0.0.63
      - name: patterns-operator.v0.0.62
        version: 0.0.62
      - name: patterns-operator.v0.0.61
        version: 0.0.61
      - name: patterns-operator.v0.0.60
        version: 0.0.60
      - name: patterns-operator.v0.0.59
        version: 0.0.59
      - name: patterns-operator.v0.0.58
        version: 0.0.58
      - name: patterns-operator.v0.0.57
        version: 0.0.57
      - name: patterns-operator.v0.0.56
        version: 0.0.56
      - name: patterns-operator.v0.0.55
        version: 0.0.55
      - name: patterns-operator.v0.0.54
        version: 0.0.54
      - name: patterns-operator.v0.0.53
        version: 0.0.53
      - name: patterns-operator.v0.0.52
        version: 0.0.52
      - name: patterns-operator.v0.0.51
        version: 0.0.51
      - name: patterns-operator.v0.0.50
        version: 0.0.50
      - name: patterns-operator.v0.0.49
        version: 0.0.49
      - name: patterns-operator.v0.0.48
        version: 0.0.48
      - name: patterns-operator.v0.0.47
        version: 0.0.47
      - name: patterns-operator.v0.0.46
        version: 0.0.46
      - name: patterns-operator.v0.0.45
        version: 0.0.45
      - name: patterns-operator.v0.0.44
        version: 0.0.44
      - name: patterns-operator.v0.0.43
        version: 0.0.43
      - name: patterns-operator.v0.0.42
        version: 0.0.42
      - name: patterns-operator.v0.0.41
        version: 0.0.41
      - name: patterns-operator.v0.0.40
        version: 0.0.40
      - name: patterns-operator.v0.0.39
        version: 0.0.39
      - name: patterns-operator.v0.0.38
        version: 0.0.38
      - name: patterns-operator.v0.0.37
        version: 0.0.37
      - name: patterns-operator.v0.0.36
        version: 0.0.36
      - name: patterns-operator.v0.0.35
        version: 0.0.35
      - name: patterns-operator.v0.0.34
        version: 0.0.34
      - name: patterns-operator.v0.0.33
        version: 0.0.33
      - name: patterns-operator.v0.0.32
        version: 0.0.32
      - name: patterns-operator.v0.0.31
        version: 0.0.31
      - name: patterns-operator.v0.0.30
        version: 0.0.30
      - name: patterns-operator.v0.0.29
        version: 0.0.29
      - name: patterns-operator.v0.0.28
        version: 0.0.28
      - name: patterns-operator.v0.0.27
        version: 0.0.27
      - name: patterns-operator.v0.0.26
        version: 0.0.26
      - name: patterns-operator.v0.0.25
        version: 0.0.25
      - name: patterns-operator.v0.0.24
        version: 0.0.24
      - name: patterns-operator.v0.0.23
        version: 0.0.23
      - name: patterns-operator.v0.0.22
        version: 0.0.22
      - name: patterns-operator.v0.0.21
        version: 0.0.21
      - name: patterns-operator.v0.0.20
        version: 0.0.20
      - name: patterns-operator.v0.0.19
        version: 0.0.19
      - name: patterns-operator.v0.0.18
        version: 0.0.18
      - name: patterns-operator.v0.0.17
        version: 0.0.17
      - name: patterns-operator.v0.0.16
        version: 0.0.16
      - name: patterns-operator.v0.0.15
        version: 0.0.15
      - name: patterns-operator.v0.0.14
        version: 0.0.14
      - name: patterns-operator.v0.0.13
        version: 0.0.13
      - name: patterns-operator.v0.0.12
        version: 0.0.12
      - name: patterns-operator.v0.0.11
        version: 0.0.11
      - name: patterns-operator.v0.0.10
        version: 0.0.10
      - name: patterns-operator.v0.0.9
        version: 0.0.9
      - name: patterns-operator.v0.0.8
        version: 0.0.8
      - name: patterns-operator.v0.0.7
        version: 0.0.7
      - name: patterns-operator.v0.0.6
        version: 0.0.6
      - name: patterns-operator.v0.0.5
        version: 0.0.5
      - name: patterns-operator.v0.0.4
        version: 0.0.4
      - name: patterns-operator.v0.0.3
        version: 0.0.3
      - name: patterns-operator.v0.0.2
        version: 0.0.2
      - name: patterns-operator.v0.0.1
        version: 0.0.1
      name: fast
    defaultChannel: fast
    packageName: patterns-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com/en/products/edge/validated-patterns
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/openshift/lightspeed-service
    name: lightspeed-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lightspeed-operator.v1.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ols.openshift.io/v1alpha1",
                "kind": "OLSConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightspeed-operator",
                    "app.kubernetes.io/instance": "olsconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "olsconfig",
                    "app.kubernetes.io/part-of": "lightspeed-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "llm": {
                    "providers": [
                      {
                        "credentialsSecretRef": {
                          "name": "credentials"
                        },
                        "models": [
                          {
                            "name": "gpt-3.5-turbo-1106"
                          }
                        ],
                        "name": "OpenAI"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-10-10T17:31:05Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-lightspeed
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus", "OpenShift Kubernetes Engine", "OpenShift Virtualization
            Engine"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lightspeed-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Red Hat OpenShift Lightspeed instance. OLSConfig is the Schema
              for the olsconfigs API
            displayName: OLSConfig
            kind: OLSConfig
            name: olsconfigs.ols.openshift.io
            version: v1alpha1
        description: |-
          OpenShift Lightspeed Operator provides generative AI-based virtual assistant which integrates into the OpenShift web console. OpenShift Lightspeed can answer natural language questions related to OpenShift Container Platform.

          To configure the OpenShift Lightspeed Operator, you need a Large Language Model (LLM) . You can host the LLM using RHELAI or RHOAI or use one of the models from the following Software-as-a-Service providers:

          - OpenAI
          - Microsoft Azure OpenAI
          - IBM WatsonX

          For more information, see [About OpenShift Lightspeed](https://docs.redhat.com/en/documentation/red_hat_openshift_lightspeed/1.0tp1/html/about/ols-about-openshift-lightspeed) in the official product documentation.

          Questions, comments, concerns, or just want to talk to the OpenShift Lightspeed team? [Email us](mailto:openshift-lightspeed-contact-requests@redhat.com)!
        displayName: OpenShift Lightspeed Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ai
        - assistant
        - openshift
        - llm
        links:
        - name: Lightspeed Operator
          url: https://github.com/openshift/lightspeed-operator
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/lightspeed-service
        relatedImages:
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/lightspeed-service-api-rhel9@sha256:c9cd5a1a14a310ee25de231208b7ebd7c9dbcd16205caa03b96a379d7988d022
        - registry.redhat.io/openshift-lightspeed/lightspeed-rhel9-operator@sha256:477acc1afc8df694c5d661f0da917b65c58a21ca3f9b115979278a6ae475b9ee
        - registry.redhat.io/openshift-lightspeed/lightspeed-ocp-rag-rhel9@sha256:3b73a841b0388f659f5a6f8f40a2b903e17ee4a7a57f074aa396b9e050cccc97
        - registry.redhat.io/rhel9/postgresql-16@sha256:42f385ac3c9b8913426da7c57e70bc6617cd237aaf697c667f6385a8c0b0118b
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-rhel9@sha256:830d900d133947ff0041bb0f8ad66d77db78483331a73278e47d89eece76eb9a
        - registry.redhat.io/openshift-lightspeed/openshift-mcp-server-rhel9@sha256:d8f0081fcabbdaa9e5aa4fce5ed15e2a3222a277f6ef55f5a05583480d92dda3
        - registry.redhat.io/openshift-lightspeed/lightspeed-operator-bundle@sha256:6ddfddfd63d7b8b1fc59c7d8062562b9c1e0dbfaa7b6126db3c6bdc19342a6d6
        - registry.redhat.io/openshift-lightspeed/lightspeed-to-dataverse-exporter-rhel9@sha256:d4f3fa25a0dc60de849658ee59d900fcdf314984b27f4c07bdfb667f22001053
        version: 1.0.8
      entries:
      - name: lightspeed-operator.v1.0.8
        version: 1.0.8
      name: alpha
    - currentCSV: lightspeed-operator.v1.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ols.openshift.io/v1alpha1",
                "kind": "OLSConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightspeed-operator",
                    "app.kubernetes.io/instance": "olsconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "olsconfig",
                    "app.kubernetes.io/part-of": "lightspeed-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "llm": {
                    "providers": [
                      {
                        "credentialsSecretRef": {
                          "name": "credentials"
                        },
                        "models": [
                          {
                            "name": "gpt-3.5-turbo-1106"
                          }
                        ],
                        "name": "OpenAI"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-10-10T17:31:05Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-lightspeed
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus", "OpenShift Kubernetes Engine", "OpenShift Virtualization
            Engine"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lightspeed-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Red Hat OpenShift Lightspeed instance. OLSConfig is the Schema
              for the olsconfigs API
            displayName: OLSConfig
            kind: OLSConfig
            name: olsconfigs.ols.openshift.io
            version: v1alpha1
        description: |-
          OpenShift Lightspeed Operator provides generative AI-based virtual assistant which integrates into the OpenShift web console. OpenShift Lightspeed can answer natural language questions related to OpenShift Container Platform.

          To configure the OpenShift Lightspeed Operator, you need a Large Language Model (LLM) . You can host the LLM using RHELAI or RHOAI or use one of the models from the following Software-as-a-Service providers:

          - OpenAI
          - Microsoft Azure OpenAI
          - IBM WatsonX

          For more information, see [About OpenShift Lightspeed](https://docs.redhat.com/en/documentation/red_hat_openshift_lightspeed/1.0tp1/html/about/ols-about-openshift-lightspeed) in the official product documentation.

          Questions, comments, concerns, or just want to talk to the OpenShift Lightspeed team? [Email us](mailto:openshift-lightspeed-contact-requests@redhat.com)!
        displayName: OpenShift Lightspeed Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ai
        - assistant
        - openshift
        - llm
        links:
        - name: Lightspeed Operator
          url: https://github.com/openshift/lightspeed-operator
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/lightspeed-service
        relatedImages:
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-rhel9@sha256:830d900d133947ff0041bb0f8ad66d77db78483331a73278e47d89eece76eb9a
        - registry.redhat.io/openshift-lightspeed/lightspeed-rhel9-operator@sha256:477acc1afc8df694c5d661f0da917b65c58a21ca3f9b115979278a6ae475b9ee
        - registry.redhat.io/openshift-lightspeed/lightspeed-to-dataverse-exporter-rhel9@sha256:d4f3fa25a0dc60de849658ee59d900fcdf314984b27f4c07bdfb667f22001053
        - registry.redhat.io/rhel9/postgresql-16@sha256:42f385ac3c9b8913426da7c57e70bc6617cd237aaf697c667f6385a8c0b0118b
        - registry.redhat.io/openshift-lightspeed/lightspeed-operator-bundle@sha256:6ddfddfd63d7b8b1fc59c7d8062562b9c1e0dbfaa7b6126db3c6bdc19342a6d6
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/openshift-mcp-server-rhel9@sha256:d8f0081fcabbdaa9e5aa4fce5ed15e2a3222a277f6ef55f5a05583480d92dda3
        - registry.redhat.io/openshift-lightspeed/lightspeed-ocp-rag-rhel9@sha256:3b73a841b0388f659f5a6f8f40a2b903e17ee4a7a57f074aa396b9e050cccc97
        - registry.redhat.io/openshift-lightspeed/lightspeed-service-api-rhel9@sha256:c9cd5a1a14a310ee25de231208b7ebd7c9dbcd16205caa03b96a379d7988d022
        version: 1.0.8
      entries:
      - name: lightspeed-operator.v1.0.8
        version: 1.0.8
      name: stable
    defaultChannel: stable
    packageName: lightspeed-operator
    provider:
      name: Red Hat, Inc
      url: https://github.com/openshift/lightspeed-service
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: cluster-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-manager.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.open-cluster-management.io/v1",
                "kind": "ClusterManager",
                "metadata": {
                  "name": "cluster-manager"
                },
                "spec": {
                  "addOnManagerImagePullSpec": "quay.io/open-cluster-management/addon-manager:v0.13.1",
                  "deployOption": {
                    "mode": "Default"
                  },
                  "placementImagePullSpec": "quay.io/open-cluster-management/placement:v0.13.1",
                  "registrationConfiguration": {
                    "featureGates": [
                      {
                        "feature": "DefaultClusterSet",
                        "mode": "Enable"
                      }
                    ]
                  },
                  "registrationImagePullSpec": "quay.io/open-cluster-management/registration:v0.13.1",
                  "workImagePullSpec": "quay.io/open-cluster-management/work:v0.13.1"
                }
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1",
                "kind": "ClusterManager",
                "metadata": {
                  "name": "cluster-manager"
                },
                "spec": {
                  "addOnManagerImagePullSpec": "quay.io/open-cluster-management/addon-manager:v0.13.1",
                  "deployOption": {
                    "hosted": {
                      "registrationWebhookConfiguration": {
                        "address": "management-control-plane",
                        "port": 30443
                      },
                      "workWebhookConfiguration": {
                        "address": "management-control-plane",
                        "port": 31443
                      }
                    },
                    "mode": "Hosted"
                  },
                  "placementImagePullSpec": "quay.io/open-cluster-management/placement:v0.13.1",
                  "registrationImagePullSpec": "quay.io/open-cluster-management/registration:v0.13.1",
                  "workImagePullSpec": "quay.io/open-cluster-management/work:v0.13.1"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/registration-operator:v0.13.1
          createdAt: "2024-04-10T15:27:49Z"
          description: Manages the installation and upgrade of the ClusterManager.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management-io/ocm
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterManager defines the configurations of controllers
              running hub that govern registration and work distribution for attached
              Klusterlets
            displayName: ClusterManager
            kind: ClusterManager
            name: clustermanagers.operator.open-cluster-management.io
            version: v1
        description: "Note: This operator will stop updating, please use the latest
          operator in OperatorHub.io https://operatorhub.io/operator/cluster-manager.
          \n\nThe Cluster Manager provides the multicluster hub, which can manage
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. This operator supports the installation and upgrade of ClusterManager.\n\n##
          How to Install\nInstall ClusterManager operator by following instructions
          in top right button `Install`. After installing the operator, create an
          instance of the ClusterManager resource to install the ClusterManager.\n\nThe
          pods of ClusterManager are created in the `open-cluster-management-hub`
          namespace:\n\n```\n$ kubectl get pods -n open-cluster-management-hub\nNAME
          \                                                      READY   STATUS    RESTARTS
          \  AGE\ncluster-manager-addon-manager-controller-7fcc67bfdf-x7hbz  1/1     Running
          \  0          61m\ncluster-manager-placement-controller-dbcfd4975-26jpw
          \      1/1     Running   0          61m\ncluster-manager-registration-controller-7949d97899-wwtg4
          \  1/1     Running   0          61m\ncluster-manager-registration-webhook-7f675bc4bb-v4rhj
          \     1/1     Running   0          61m\ncluster-manager-work-webhook-6c9d65fb95-jh97b
          \             1/1     Running   0          61m\n```\n\nThere is a ManagedCluster
          created in the Hub cluster when the managed cluster is registered to the
          Hub cluster.\n\n```\n$ kubectl get managedclusters.cluster.open-cluster-management.io\nNAME
          \                  HUB ACCEPTED   MANAGED CLUSTER URLS     JOINED   AVAILABLE
          \  AGE\ncluster-dev            true                                    True
          \    True        7h20m\ncluster-test           false          https://127.0.0.1:8443
          \                       7h25m\n```\n"
        displayName: Cluster Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open-cluster-management
        - ClusterManager
        links:
        - name: Registration Operator
          url: https://github.com/open-cluster-management-io/ocm
        maintainers:
        - email: zyin@redhat.com
          name: Zhiwei Yin
        - email: deads@redhat.com
          name: David Eads
        - email: jqiu@redhat.com
          name: Jian Qiu
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cluster-manager@sha256:a4c8a54148538b371e5cea3b2f2d4109f7b6bc4a7f2e5b52a840c9340fbf5e47
        - quay.io/open-cluster-management/registration-operator:v0.13.1
        version: 0.13.1
      entries:
      - name: cluster-manager.v0.13.1
        version: 0.13.1
      - name: cluster-manager.v0.13.0
        version: 0.13.0
      - name: cluster-manager.v0.12.0
        version: 0.12.0
      - name: cluster-manager.v0.11.0
        version: 0.11.0
      - name: cluster-manager.v0.10.0
        version: 0.10.0
      - name: cluster-manager.v0.9.1
        version: 0.9.1
      - name: cluster-manager.v0.8.0
        version: 0.8.0
      - name: cluster-manager.v0.7.0
        version: 0.7.0
      - name: cluster-manager.v0.6.0
        version: 0.6.0
      - name: cluster-manager.v0.5.0
        version: 0.5.0
      - name: cluster-manager.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: cluster-manager
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Ian Boden
      provider-url: ""
    name: eclipse-amlen-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eclipse-amlen-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eclipse.org/v1",
                "kind": "Amlen",
                "metadata": {
                  "name": "amlen-sample"
                },
                "spec": {
                  "_amlen_image_tag": "latest",
                  "_amlen_monitor_image_tag": "latest",
                  "_amlen_name": "amlen-sample",
                  "_amlen_namespace": "osdk-test",
                  "_amlen_persistence": "false",
                  "config": "amlen-config",
                  "device_cert_issuer": {
                    "mode": "automatic",
                    "name": "amlen-selfsigned-issuer"
                  },
                  "ha": {
                    "cert_issuer": {
                      "name": "amlen-selfsigned-issuer"
                    },
                    "enabled": true
                  },
                  "size": 2
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/amlen/operator:v1.0.1a
          createdAt: "2022-11-24T15:31:00Z"
          description: An operator to run the Eclipse Amlen MQTT Broker
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/eclipse/amlen
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Amlen
            name: amlens.eclipse.org
            version: v1
        description: Operator for the eclipse Amlen MQTT Broker\n\n### Supported Feature\n\nCurrently
          supports:\n* Install - simple install process\n* Upgrade - non-disruptive
          upgrade\n*High Availability - can be enabled/disabled via the CRD\n\n###
          Documentation\nThe main Amlen website has links to product documentation,
          forum, blog and the slack channel\nhttp://www.eclipse.org/amlen\n\n### Getting
          help\nThe quickest way to get help is to use the slack channel but the forum
          is monitored as well\n\nIssues can also be added to the github repository
          https://github.com/eclipse/amlen\n\n### License\nEclipse Amlen Operator
          is licensed under the [Eclipse Public License - v 2.0](https://www.eclipse.org/legal/epl-2.0/)
        displayName: eclipse-amlen-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - amlen
        - mqtt
        - broker
        links:
        - name: Eclipse Amlen Operator
          url: https://eclipse.org/amlen
        maintainers:
        - email: ianboden@uk.ibm.com
          name: Ian Boden
        maturity: stable
        provider:
          name: Ian Boden
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/amlen/operator:v1.0.1a
        - quay.io/openshift-community-operators/eclipse-amlen-operator@sha256:bb89e2a7cb1c9172b080c72ad3227017d135fc30076d2a68b4e215fa8fa55846
        version: 1.0.0
      entries:
      - name: eclipse-amlen-operator.v1.0.0
        version: 1.0.0
      - name: eclipse-amlen-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: eclipse-amlen-operator.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eclipse.org/v1",
                "kind": "Amlen",
                "metadata": {
                  "name": "amlen-sample"
                },
                "spec": {
                  "config": "amlen-config",
                  "device_cert_issuer": {
                    "mode": "automatic",
                    "name": "amlen-selfsigned-issuer"
                  },
                  "ha": {
                    "cert_issuer": {
                      "name": "amlen-selfsigned-issuer"
                    },
                    "enabled": true
                  },
                  "ldap": {
                    "cert_issuer": {
                      "name": "amlen-selfsigned-issuer"
                    },
                    "enabled": true
                  },
                  "size": 2
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/amlen/operator:v1.1.3
          createdAt: "2025-05-22T10:00:00Z"
          description: An operator to run the Eclipse Amlen MQTT Broker
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/eclipse-amlen/amlen
          support: Eclipse
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Amlen
            name: amlens.eclipse.org
            version: v1
        description: |-
          Operator for the eclipse Amlen MQTT Broker

          ### Supported Feature

          Currently supports:
          * Install - simple install process
          * Upgrade - non-disruptive upgrade
          * High Availability - can be enabled/disabled via the CRD

          ### Documentation
          The main Amlen website has links to product documentation, forum, blog and the slack channel
          http://www.eclipse.org/amlen

          ### Getting help
          The quickest way to get help is to use the slack channel but the forum is monitored as well
          Issues can also be added to the github repository https://github.com/eclipse-amlen/amlen

          ### License
          Eclipse Amlen Operator is licensed under [Eclipse Public License - v 2.0](https://www.eclipse.org/legal/epl-2.0/)
        displayName: eclipse-amlen-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - amlen
        - mqtt
        - broker
        links:
        - name: Eclipse Amlen Operator
          url: https://eclipse.org/amlen
        maintainers:
        - email: ianboden@uk.ibm.com
          name: Ian Boden
        maturity: stable
        provider:
          name: Eclipse Amlen
          url: https://eclipse.org/amlen
        relatedImages:
        - controller:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/community-operator-pipeline-prod/eclipse-amlen-operator@sha256:5fbfb0bd4f764643cdc1021e99e489514a1f035d85131b13e56b11a3045883c2
        version: 1.1.3
      entries:
      - name: eclipse-amlen-operator.v1.1.3
        version: 1.1.3
      - name: eclipse-amlen-operator.v1.1.0
        version: 1.1.0
      - name: eclipse-amlen-operator.v1.0.2
        version: 1.0.2
      - name: eclipse-amlen-operator.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: alpha
    packageName: eclipse-amlen-operator
    provider:
      name: Ian Boden
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: observability-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: observability-operator.v0.0.28
      currentCSVDesc:
        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: quay.io/rhobs/observability-operator:0.0.28
          createdAt: "2023-11-09T07:43:16Z"
          description: A Go based Kubernetes operator to setup and manage highly available
            Monitoring Stack using Prometheus, Alertmanager and Thanos Querier.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            [
              "prometheuses.monitoring.rhobs", "alertmanagers.monitoring.rhobs",
              "thanosrulers.monitoring.rhobs"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/rhobs/observability-operator
        apiservicedefinitions: {}
        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
          - 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: |2+

          Observability Operator is a Go based Kubernetes operator to setup and manage highly available Monitoring stack using Prometheus, Alertmanager and Thanos Querier.
          ### 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
          ### Documentation
          - **[Documentation](https://github.com/rhobs/observability-operator/tree/main/docs)**
          - **[Developer Docs](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md)**
          ### Contributing
          **[See Contribution Guidelines](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md#contributions)** to contribute to the project by
          - Raising Bugs and Feature Requests
          - Fixing Issues by opening a Pull Request
          - Improving Documentation
          ###  License
          Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)

        displayName: Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - monitoring
        - prometheus
        - thanos
        links:
        - name: Observability Operator
          url: https://rhobs-handbook.netlify.app/products/observability-operator
        - name: GitHub
          url: https://github.com/rhobs/observability-operator
        maintainers:
        - email: jfajersk@redhat.com
          name: Jan Fajerski
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: spasquie@redhat.com
          name: Simon Pasquier
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/observability-operator@sha256:182b95a93db9b95606405c24686cbb96054efb0c2236822569f30b6c27992534
        - quay.io/rhobs/obo-admission-webhook:v0.69.0-rhobs1
        - quay.io/rhobs/obo-prometheus-operator:v0.69.0-rhobs1
        - quay.io/rhobs/observability-operator:0.0.28
        version: 0.0.28
      entries:
      - name: observability-operator.v0.0.28
        version: 0.0.28
      - name: observability-operator.v0.0.25
        version: 0.0.25
      name: candidate
    - currentCSV: observability-operator.v0.0.28
      currentCSVDesc:
        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: quay.io/rhobs/observability-operator:0.0.28
          createdAt: "2023-11-09T07:43:16Z"
          description: A Go based Kubernetes operator to setup and manage highly available
            Monitoring Stack using Prometheus, Alertmanager and Thanos Querier.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            [
              "prometheuses.monitoring.rhobs", "alertmanagers.monitoring.rhobs",
              "thanosrulers.monitoring.rhobs"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/rhobs/observability-operator
        apiservicedefinitions: {}
        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
          - 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: |2+

          Observability Operator is a Go based Kubernetes operator to setup and manage highly available Monitoring stack using Prometheus, Alertmanager and Thanos Querier.
          ### 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
          ### Documentation
          - **[Documentation](https://github.com/rhobs/observability-operator/tree/main/docs)**
          - **[Developer Docs](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md)**
          ### Contributing
          **[See Contribution Guidelines](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md#contributions)** to contribute to the project by
          - Raising Bugs and Feature Requests
          - Fixing Issues by opening a Pull Request
          - Improving Documentation
          ###  License
          Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)

        displayName: Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - monitoring
        - prometheus
        - thanos
        links:
        - name: Observability Operator
          url: https://rhobs-handbook.netlify.app/products/observability-operator
        - name: GitHub
          url: https://github.com/rhobs/observability-operator
        maintainers:
        - email: jfajersk@redhat.com
          name: Jan Fajerski
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: spasquie@redhat.com
          name: Simon Pasquier
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/observability-operator@sha256:182b95a93db9b95606405c24686cbb96054efb0c2236822569f30b6c27992534
        - quay.io/rhobs/obo-admission-webhook:v0.69.0-rhobs1
        - quay.io/rhobs/obo-prometheus-operator:v0.69.0-rhobs1
        - quay.io/rhobs/observability-operator:0.0.28
        version: 0.0.28
      entries:
      - name: observability-operator.v0.0.28
        version: 0.0.28
      - name: observability-operator.v0.0.25
        version: 0.0.25
      - name: observability-operator.v0.0.22
        version: 0.0.22
      name: development
    - currentCSV: observability-operator.v0.0.28
      currentCSVDesc:
        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: quay.io/rhobs/observability-operator:0.0.28
          createdAt: "2023-11-09T07:43:16Z"
          description: A Go based Kubernetes operator to setup and manage highly available
            Monitoring Stack using Prometheus, Alertmanager and Thanos Querier.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            [
              "prometheuses.monitoring.rhobs", "alertmanagers.monitoring.rhobs",
              "thanosrulers.monitoring.rhobs"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/rhobs/observability-operator
        apiservicedefinitions: {}
        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
          - 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: |2+

          Observability Operator is a Go based Kubernetes operator to setup and manage highly available Monitoring stack using Prometheus, Alertmanager and Thanos Querier.
          ### 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
          ### Documentation
          - **[Documentation](https://github.com/rhobs/observability-operator/tree/main/docs)**
          - **[Developer Docs](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md)**
          ### Contributing
          **[See Contribution Guidelines](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md#contributions)** to contribute to the project by
          - Raising Bugs and Feature Requests
          - Fixing Issues by opening a Pull Request
          - Improving Documentation
          ###  License
          Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)

        displayName: Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - monitoring
        - prometheus
        - thanos
        links:
        - name: Observability Operator
          url: https://rhobs-handbook.netlify.app/products/observability-operator
        - name: GitHub
          url: https://github.com/rhobs/observability-operator
        maintainers:
        - email: jfajersk@redhat.com
          name: Jan Fajerski
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: spasquie@redhat.com
          name: Simon Pasquier
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/observability-operator@sha256:182b95a93db9b95606405c24686cbb96054efb0c2236822569f30b6c27992534
        - quay.io/rhobs/obo-admission-webhook:v0.69.0-rhobs1
        - quay.io/rhobs/obo-prometheus-operator:v0.69.0-rhobs1
        - quay.io/rhobs/observability-operator:0.0.28
        version: 0.0.28
      entries:
      - name: observability-operator.v0.0.28
        version: 0.0.28
      - name: observability-operator.v0.0.25
        version: 0.0.25
      name: stable
    defaultChannel: stable
    packageName: observability-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://www.redhat.com/
    name: rhdh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhdh-operator.v1.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha4",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
          createdAt: "2025-11-10T18:16:19Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.8.1'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha4
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.8/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:8b5ec4b6085ecb32ea52c33d97adecc313341681b41d891f5346e9b9f8b8a249
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
        - registry.redhat.io/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:9f870202198dca9d941ebb5321334c45cc2309bb079d2a9e602d8a099f8ffa6f
        version: 1.8.1
      entries:
      - name: rhdh-operator.v1.8.1
        version: 1.8.1
      - name: rhdh-operator.v1.8.0
        version: 1.8.0
      - name: rhdh-operator.v1.7.3
        version: 1.7.3
      - name: rhdh-operator.v1.7.2
        version: 1.7.2
      - name: rhdh-operator.v1.7.1
        version: 1.7.1
      - name: rhdh-operator.v1.7.0
        version: 1.7.0
      - name: rhdh-operator.v1.6.5
        version: 1.6.5
      - name: rhdh-operator.v1.6.4
        version: 1.6.4
      - name: rhdh-operator.v1.6.3
        version: 1.6.3
      - name: rhdh-operator.v1.6.2
        version: 1.6.2
      - name: rhdh-operator.v1.6.1
        version: 1.6.1
      - name: rhdh-operator.v1.6.0
        version: 1.6.0
      - name: rhdh-operator.v1.5.3
        version: 1.5.3
      - name: rhdh-operator.v1.5.2
        version: 1.5.2
      - name: rhdh-operator.v1.5.1
        version: 1.5.1
      - name: rhdh-operator.v1.4.3
        version: 1.4.3
      - name: rhdh-operator.v1.4.2
        version: 1.4.2
      - name: rhdh-operator.v1.4.1
        version: 1.4.1
      - name: rhdh-operator.v1.4.0
        version: 1.4.0
      - name: rhdh-operator.v1.3.5
        version: 1.3.5
      - name: rhdh-operator.v1.3.4
        version: 1.3.4
      - name: rhdh-operator.v1.3.3
        version: 1.3.3
      - name: rhdh-operator.v1.3.1
        version: 1.3.1
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast
    - currentCSV: rhdh-operator.v1.1.2-0.1714688890.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:9bea7eabdea44342248dfd6091a8f5c3b6e65884c916b3c2a073a4a64481aa6f
          createdAt: "2023-03-20T16:11:34Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins, configuration settings, and deployment
            mechanisms, which can help streamline the process of setting up a self-managed
            internal developer portal for adopters who are just starting out.
          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.substitutesFor: rhdh-operator.v1.1.2
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.1.0 <1.2.0'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/janus-idp/operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: asoro@redhat.com
          name: Armel Soro
        - email: gazarenk@redhat.com
          name: Gennady Azarenkov
        - email: jianrzha@redhat.com
          name: Jianrong Zhang
        - email: nboldt@redhat.com
          name: Nick Boldt
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-15@sha256:d5f3d496ecd55688e384cc0627700a97af6924582123bcf00749c375724af3de
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:95ed239eb427c7b1e422ece28c5277b5018efb751c2b472bf502b8216219c047
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:d7ae2456857cab09a9e9acf69c9990ef18deb7f920046b8c2483fbfd0d42bbfc
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a93b382258a34e0b56ef6616a8490e5f44ef1c6aa5d29c0d08d2147ae5b440e6
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:9bea7eabdea44342248dfd6091a8f5c3b6e65884c916b3c2a073a4a64481aa6f
        version: 1.1.2+0.1714688890.p
      entries:
      - name: rhdh-operator.v1.1.2
        version: 1.1.2
      - name: rhdh-operator.v1.1.2-0.1714608881.p
        version: 1.1.2+0.1714608881.p
      - name: rhdh-operator.v1.1.2-0.1714688618.p
        version: 1.1.2+0.1714688618.p
      - name: rhdh-operator.v1.1.2-0.1714688890.p
        version: 1.1.2+0.1714688890.p
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast-1.1
    - currentCSV: rhdh-operator.v1.2.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:c9051a6c339cd40cbc7474a33b32a6b94913af964e12ca5da0c0b7e1c6f444d5
          createdAt: "2024-11-28T17:55:19Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.2.6'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.2/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.2/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: asoro@redhat.com
          name: Armel Soro
        - email: cdaley@redhat.com
          name: Corey Daley
        - email: gazarenk@redhat.com
          name: Gennady Azarenkov
        - email: nboldt@redhat.com
          name: Nick Boldt
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ef29f2b340a6dc52c5014239876d54a54f7c0f0bf4ea917391438a69c94a8532
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:025eb58c69b9cf5992ecf2fccb29a3d36061cbcf62652a1c6878f0c4d767c1fb
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:3170da029869d15a246ad31d0debd4b9c03ba13855fb877a754cfdffb2286b80
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:c9051a6c339cd40cbc7474a33b32a6b94913af964e12ca5da0c0b7e1c6f444d5
        version: 1.2.6
      entries:
      - name: rhdh-operator.v1.2.6
        version: 1.2.6
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast-1.2
    - currentCSV: rhdh-operator.v1.3.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:5ce579edc10bde5c1c400104f7e0d9f86ca277cd565aaf3dd84b8636f5b949a8
          createdAt: "2025-02-10T18:12:52Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.3.5'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.3/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a7ce92f7f4aadca2781c44839bc357615395587bc8b68a735642967cf8694362
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:5ce579edc10bde5c1c400104f7e0d9f86ca277cd565aaf3dd84b8636f5b949a8
        - registry.redhat.io/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:b4934c45ba595b36e65c73b734c58d1517e7f43b7cfc309ca8bc853733582f76
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:c044fed8485a62a5051ac726525da546936be22f268db05491bf81582e0e6194
        version: 1.3.5
      entries:
      - name: rhdh-operator.v1.3.5
        version: 1.3.5
      - name: rhdh-operator.v1.3.4
        version: 1.3.4
      - name: rhdh-operator.v1.3.3
        version: 1.3.3
      - name: rhdh-operator.v1.3.1
        version: 1.3.1
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast-1.3
    - currentCSV: rhdh-operator.v1.4.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:ae5b52c1b35e82f3c564402e367a2a2028e16806867bba0868643089ba7ed223
          createdAt: "2025-04-03T05:42:32Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.4.3'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.4/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:093c6a66d4faa1d980e4319a048db8b2869eba8f13f40f02615d6696257e6719
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:ae5b52c1b35e82f3c564402e367a2a2028e16806867bba0868643089ba7ed223
        version: 1.4.3
      entries:
      - name: rhdh-operator.v1.4.3
        version: 1.4.3
      - name: rhdh-operator.v1.4.2
        version: 1.4.2
      - name: rhdh-operator.v1.4.1
        version: 1.4.1
      - name: rhdh-operator.v1.4.0
        version: 1.4.0
      name: fast-1.4
    - currentCSV: rhdh-operator.v1.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:8fe167cc649a1c53994c376f3cf3eed8c6e318741a0c08e5aaf07cb0b74e7f8a
          createdAt: "2025-06-05T14:31:21Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.5.3'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.5/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:2ad8c87e82df27c2b6ceba94179d1f0a40fe775368663c1b5572611888e0e02b
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:5a19032dda9a0f584b41cbe9e729ed23e6003d90ebbb026eb9e7bb9769d4a4e4
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:8fe167cc649a1c53994c376f3cf3eed8c6e318741a0c08e5aaf07cb0b74e7f8a
        - registry.redhat.io/rhel9/postgresql-15@sha256:74377f5a61dd7e3e0ba5d2fa880b7107025433a026396567c79eac927b4212bc
        version: 1.5.3
      entries:
      - name: rhdh-operator.v1.5.3
        version: 1.5.3
      - name: rhdh-operator.v1.5.2
        version: 1.5.2
      - name: rhdh-operator.v1.5.1
        version: 1.5.1
      name: fast-1.5
    - currentCSV: rhdh-operator.v1.6.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:50f20300c81621221260d03d22b1442750e3f1d2e62f3e511d63925d84c4d1f9
          createdAt: "2025-08-27T18:43:12Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.6.5'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.6/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:50f20300c81621221260d03d22b1442750e3f1d2e62f3e511d63925d84c4d1f9
        - registry.redhat.io/rhel9/postgresql-15@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:177a7308f61a6b1ba21bc0f7bf550a93d4478e52479e2c94a2437f2152e3d8ff
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:3b2cf972e1ced0a46d3559da4eb1a1b32c50457293ede4958a13538a84b45316
        version: 1.6.5
      entries:
      - name: rhdh-operator.v1.6.5
        version: 1.6.5
      - name: rhdh-operator.v1.6.4
        version: 1.6.4
      - name: rhdh-operator.v1.6.3
        version: 1.6.3
      - name: rhdh-operator.v1.6.2
        version: 1.6.2
      - name: rhdh-operator.v1.6.1
        version: 1.6.1
      - name: rhdh-operator.v1.6.0
        version: 1.6.0
      name: fast-1.6
    - currentCSV: rhdh-operator.v1.7.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:6ebf90f0b2419efa5c159b52ee30adde1e7aa7d0ad8486f143d80fe5bd9dd06f
          createdAt: "2025-11-04T05:38:01Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.7.3'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.7/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:b5ffbb3cc1caac4e020abf1d711566aef859b08e479ab181e5b39ce9da7a5b73
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:54c5cd2a4865a372ba9465908f73928382745e04ad446c97b28adde213d13309
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:6ebf90f0b2419efa5c159b52ee30adde1e7aa7d0ad8486f143d80fe5bd9dd06f
        - registry.redhat.io/rhel9/postgresql-15@sha256:990be59eeb55860a62455375fef7795854d78ce15ac3e7568b9bdb4680bfcd97
        version: 1.7.3
      entries:
      - name: rhdh-operator.v1.7.3
        version: 1.7.3
      - name: rhdh-operator.v1.7.2
        version: 1.7.2
      - name: rhdh-operator.v1.7.1
        version: 1.7.1
      - name: rhdh-operator.v1.7.0
        version: 1.7.0
      name: fast-1.7
    - currentCSV: rhdh-operator.v1.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha4",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
          createdAt: "2025-11-10T18:16:19Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.8.1'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha4
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.8/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:9f870202198dca9d941ebb5321334c45cc2309bb079d2a9e602d8a099f8ffa6f
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:8b5ec4b6085ecb32ea52c33d97adecc313341681b41d891f5346e9b9f8b8a249
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
        - registry.redhat.io/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        version: 1.8.1
      entries:
      - name: rhdh-operator.v1.8.1
        version: 1.8.1
      - name: rhdh-operator.v1.8.0
        version: 1.8.0
      name: fast-1.8
    defaultChannel: fast
    packageName: rhdh
    provider:
      name: Red Hat Inc.
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-kinesis-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-kinesis-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kinesis.services.k8s.aws/v1alpha1",
                "kind": "Stream",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/kinesis-controller:1.2.0
          createdAt: "2025-11-29T05:53:34Z"
          description: AWS Kinesis controller is a service controller for managing
            Kinesis resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Stream represents the state of an AWS kinesis Stream resource.
            displayName: Stream
            kind: Stream
            name: streams.kinesis.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Kinesis resources in AWS from within your Kubernetes cluster.

          **About Amazon Kinesis**

          You can use Amazon Kinesis Data Streams to collect and process large streams of data records in real time. You can create data-processing applications, known as Kinesis Data Streams applications. A typical Kinesis Data Streams application reads data from a data stream as data records. These applications can use the Kinesis Client Library, and they can run on Amazon EC2 instances.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Kinesis
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kinesis
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Kinesis Developer Resources
          url: https://aws.amazon.com/kinesis/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: kinesis maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-kinesis-controller@sha256:739135f195f5bb2a2a6ca7095f1a0806e95aeec163b99cea67f72caab6f36358
        - public.ecr.aws/aws-controllers-k8s/kinesis-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-kinesis-controller.v1.2.0
        version: 1.2.0
      - name: ack-kinesis-controller.v1.1.1
        version: 1.1.1
      - name: ack-kinesis-controller.v1.1.0
        version: 1.1.0
      - name: ack-kinesis-controller.v1.0.16
        version: 1.0.16
      - name: ack-kinesis-controller.v1.0.15
        version: 1.0.15
      - name: ack-kinesis-controller.v1.0.14
        version: 1.0.14
      - name: ack-kinesis-controller.v1.0.13
        version: 1.0.13
      - name: ack-kinesis-controller.v1.0.12
        version: 1.0.12
      - name: ack-kinesis-controller.v1.0.11
        version: 1.0.11
      - name: ack-kinesis-controller.v1.0.10
        version: 1.0.10
      - name: ack-kinesis-controller.v1.0.9
        version: 1.0.9
      - name: ack-kinesis-controller.v1.0.8
        version: 1.0.8
      - name: ack-kinesis-controller.v1.0.7
        version: 1.0.7
      - name: ack-kinesis-controller.v1.0.6
        version: 1.0.6
      - name: ack-kinesis-controller.v1.0.5
        version: 1.0.5
      - name: ack-kinesis-controller.v1.0.4
        version: 1.0.4
      - name: ack-kinesis-controller.v1.0.3
        version: 1.0.3
      - name: ack-kinesis-controller.v1.0.2
        version: 1.0.2
      - name: ack-kinesis-controller.v1.0.1
        version: 1.0.1
      - name: ack-kinesis-controller.v1.0.0
        version: 1.0.0
      - name: ack-kinesis-controller.v0.0.19
        version: 0.0.19
      - name: ack-kinesis-controller.v0.0.18
        version: 0.0.18
      - name: ack-kinesis-controller.v0.0.17
        version: 0.0.17
      - name: ack-kinesis-controller.v0.0.16
        version: 0.0.16
      - name: ack-kinesis-controller.v0.0.15
        version: 0.0.15
      - name: ack-kinesis-controller.v0.0.10
        version: 0.0.10
      - name: ack-kinesis-controller.v0.0.9
        version: 0.0.9
      - name: ack-kinesis-controller.v0.0.8
        version: 0.0.8
      - name: ack-kinesis-controller.v0.0.6
        version: 0.0.6
      - name: ack-kinesis-controller.v0.0.5
        version: 0.0.5
      - name: ack-kinesis-controller.v0.0.4
        version: 0.0.4
      - name: ack-kinesis-controller.v0.0.3
        version: 0.0.3
      - name: ack-kinesis-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-kinesis-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Oracle Corporation
      provider-url: https://github.com/oracle/coherence-operator
    name: coherence-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: coherence-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "Coherence",
                "metadata": {
                  "name": "coherence-sample"
                },
                "spec": {
                  "replicas": 3
                }
              },
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "CoherenceJob",
                "metadata": {
                  "name": "coherence-job-sample"
                },
                "spec": {
                  "replicas": 1
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          certified: "false"
          containerImage: container-registry.oracle.com/middleware/coherence-operator:3.5.7
          createdAt: "2025-11-24T17:26:13Z"
          description: '[DEPRECATED] Use the certified Coherence Kubernetes Operator
            instead'
          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: "true"
          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"
          operatorframework.io/arch.amd64: supported
          operatorframework.io/arch.arm64: supported
          operatorframework.io/os.linux: supported
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/oracle/coherence-operator
          support: Oracle Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Coherence is the top level schema for the Coherence API and
              custom resource definition (CRD).
            displayName: Coherence
            kind: Coherence
            name: coherence.coherence.oracle.com
            version: v1
          - description: |-
              CoherenceJob is the top level schema for the CoherenceJob API and custom resource definition (CRD)
              for configuring Coherence Job workloads.
            displayName: Coherence Job
            kind: CoherenceJob
            name: coherencejob.coherence.oracle.com
            version: v1
        description: |
          The Oracle Coherence Kubernetes Operator enables easy management of Coherence clusters in a Kubernetes environment.

          ### Installation Guide & Configuration

          For the complete installation guide and all configuration options please refer to
          [Coherence Operator Documentation](https://oracle.github.io/coherence-operator/docs/latest/#/about/01_overview).
        displayName: Coherence Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Coherence
        - Oracle
        - In Memory Data
        - Caching
        links:
        - name: Coherence Kubernetes Operator
          url: https://oracle.github.io/coherence-operator/docs/latest
        - name: Oracle Coherence
          url: https://coherence.community
        maintainers:
        - email: jonathan.knight@oracle.com
          name: Jonathan Knight
        maturity: mature
        minKubeVersion: 1.26.0
        provider:
          name: Oracle Corporation
          url: https://github.com/oracle/coherence-operator
        relatedImages:
        - container-registry.oracle.com/middleware/coherence-operator:3.5.7
        - quay.io/community-operator-pipeline-prod/coherence-operator:3.5.7
        version: 3.5.7
      entries:
      - name: coherence-operator.v3.5.7
        version: 3.5.7
      - name: coherence-operator.v3.5.6
        version: 3.5.6
      - name: coherence-operator.v3.5.5
        version: 3.5.5
      - name: coherence-operator.v3.5.4
        version: 3.5.4
      - name: coherence-operator.v3.5.2
        version: 3.5.2
      - name: coherence-operator.v3.5.0
        version: 3.5.0
      - name: coherence-operator.v3.4.3
        version: 3.4.3
      name: stable
    defaultChannel: stable
    packageName: coherence-operator
    provider:
      name: Oracle Corporation
      url: https://github.com/oracle/coherence-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-opensearchservice-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-opensearchservice-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "opensearchservice.services.k8s.aws/v1alpha1",
                "kind": "Domain",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/opensearchservice-controller:1.2.0
          createdAt: "2025-11-29T05:41:58Z"
          description: AWS OpenSearch Service controller is a service controller for
            managing OpenSearch Service resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Domain represents the state of an AWS opensearchservice Domain
              resource.
            displayName: Domain
            kind: Domain
            name: domains.opensearchservice.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage OpenSearch Service resources in AWS from within your Kubernetes cluster.

          **About Amazon OpenSearch Service**

          Amazon OpenSearch Service (successor to Amazon Elasticsearch Service) is a managed service that makes it easy to deploy, operate, and scale OpenSearch clusters in the AWS Cloud. Amazon OpenSearch Service supports OpenSearch and legacy Elasticsearch OSS. When you create a cluster, you have the option of which search engine to use. OpenSearch Service offers broad compatibility with Elasticsearch OSS 7.10, the final open source version of the software. For information about what changed with the recent service renaming, and the actions you might need to take, see [Amazon OpenSearch Service - Summary of changes](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/rename.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon OpenSearch Service
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opensearchservice
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon OpenSearch Service Developer Resources
          url: https://aws.amazon.com/opensearch-service/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: opensearch service maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-opensearchservice-controller@sha256:7409b53d11987aa2d46f2bd031a3953a2ffe129769aee87f544c9ff4a4b5173e
        - public.ecr.aws/aws-controllers-k8s/opensearchservice-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-opensearchservice-controller.v1.2.0
        version: 1.2.0
      - name: ack-opensearchservice-controller.v1.1.2
        version: 1.1.2
      - name: ack-opensearchservice-controller.v1.1.1
        version: 1.1.1
      - name: ack-opensearchservice-controller.v1.1.0
        version: 1.1.0
      - name: ack-opensearchservice-controller.v1.0.15
        version: 1.0.15
      - name: ack-opensearchservice-controller.v1.0.12
        version: 1.0.12
      - name: ack-opensearchservice-controller.v1.0.10
        version: 1.0.10
      - name: ack-opensearchservice-controller.v1.0.9
        version: 1.0.9
      - name: ack-opensearchservice-controller.v1.0.8
        version: 1.0.8
      - name: ack-opensearchservice-controller.v1.0.7
        version: 1.0.7
      - name: ack-opensearchservice-controller.v1.0.6
        version: 1.0.6
      - name: ack-opensearchservice-controller.v1.0.5
        version: 1.0.5
      - name: ack-opensearchservice-controller.v1.0.4
        version: 1.0.4
      - name: ack-opensearchservice-controller.v1.0.2
        version: 1.0.2
      - name: ack-opensearchservice-controller.v1.0.1
        version: 1.0.1
      - name: ack-opensearchservice-controller.v1.0.0
        version: 1.0.0
      - name: ack-opensearchservice-controller.v0.0.28
        version: 0.0.28
      - name: ack-opensearchservice-controller.v0.0.27
        version: 0.0.27
      - name: ack-opensearchservice-controller.v0.0.26
        version: 0.0.26
      - name: ack-opensearchservice-controller.v0.0.24
        version: 0.0.24
      - name: ack-opensearchservice-controller.v0.0.23
        version: 0.0.23
      - name: ack-opensearchservice-controller.v0.0.19
        version: 0.0.19
      - name: ack-opensearchservice-controller.v0.0.17
        version: 0.0.17
      - name: ack-opensearchservice-controller.v0.0.15
        version: 0.0.15
      - name: ack-opensearchservice-controller.v0.0.14
        version: 0.0.14
      - name: ack-opensearchservice-controller.v0.0.13
        version: 0.0.13
      - name: ack-opensearchservice-controller.v0.0.12
        version: 0.0.12
      - name: ack-opensearchservice-controller.v0.0.11
        version: 0.0.11
      - name: ack-opensearchservice-controller.v0.0.10
        version: 0.0.10
      - name: ack-opensearchservice-controller.v0.0.9
        version: 0.0.9
      - name: ack-opensearchservice-controller.v0.0.8
        version: 0.0.8
      - name: ack-opensearchservice-controller.v0.0.7
        version: 0.0.7
      - name: ack-opensearchservice-controller.v0.0.6
        version: 0.0.6
      - name: ack-opensearchservice-controller.v0.0.5
        version: 0.0.5
      - name: ack-opensearchservice-controller.v0.0.4
        version: 0.0.4
      name: alpha
    defaultChannel: alpha
    packageName: ack-opensearchservice-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: mariadb-operator
      provider-url: https://github.com/mariadb-operator/mariadb-operator
    name: mariadb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mariadb-operator.v25.10.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "helm.mariadb.mmontes.io/v1alpha1",
                "kind": "MariadbOperator",
                "metadata": {
                  "name": "mariadb-operator"
                },
                "spec": {
                  "affinity": {},
                  "certController": {
                    "affinity": {},
                    "caValidity": "35064h",
                    "certValidity": "8766h",
                    "enabled": true,
                    "extrArgs": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "ha": {
                      "enabled": false,
                      "replicas": 3
                    },
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/mariadb-operator/mariadb-operator",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "lookaheadValidity": "2160h",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podSecurityContext": {},
                    "requeueDuration": "5m",
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "automount": true,
                      "enabled": true,
                      "extraLabels": {},
                      "name": ""
                    },
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "enabled": true,
                      "interval": "30s",
                      "scrapeTimeout": "25s"
                    },
                    "tolerations": []
                  },
                  "clusterName": "cluster.local",
                  "extrArgs": [],
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "fullnameOverride": "",
                  "ha": {
                    "enabled": false,
                    "replicas": 3
                  },
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/mariadb-operator/mariadb-operator",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "logLevel": "INFO",
                  "metrics": {
                    "enabled": false,
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "enabled": true,
                      "interval": "30s",
                      "scrapeTimeout": "25s"
                    }
                  },
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podSecurityContext": {},
                  "rbac": {
                    "enabled": true
                  },
                  "resources": {},
                  "securityContext": {},
                  "serviceAccount": {
                    "annotations": {},
                    "automount": true,
                    "enabled": true,
                    "extraLabels": {},
                    "name": ""
                  },
                  "tolerations": [],
                  "webhook": {
                    "affinity": {},
                    "annotations": {},
                    "cert": {
                      "caPath": "/tmp/k8s-webhook-server/certificate-authority",
                      "certManager": {
                        "duration": "",
                        "enabled": false,
                        "issuerRef": {},
                        "renewBefore": ""
                      },
                      "path": "/tmp/k8s-webhook-server/serving-certs",
                      "secretAnnotations": {}
                    },
                    "extrArgs": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "ha": {
                      "enabled": false,
                      "replicas": 3
                    },
                    "hostNetwork": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/mariadb-operator/mariadb-operator",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podSecurityContext": {},
                    "port": 10250,
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "automount": true,
                      "enabled": true,
                      "extraLabels": {},
                      "name": ""
                    },
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "enabled": true,
                      "interval": "30s",
                      "scrapeTimeout": "25s"
                    },
                    "tolerations": []
                  }
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup"
                },
                "spec": {
                  "args": [
                    "--single-transaction",
                    "--all-databases"
                  ],
                  "logLevel": "info",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "suspend": false
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "backups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Connection",
                "metadata": {
                  "name": "connection"
                },
                "spec": {
                  "database": "mariadb",
                  "healthCheck": {
                    "interval": "10s",
                    "retryInterval": "3s"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "params": {
                    "parseTime": "true"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "secretName": "connection",
                  "secretTemplate": {
                    "annotations": {
                      "k8s.mariadb.com/connection": "sample"
                    },
                    "databaseKey": "database",
                    "hostKey": "host",
                    "key": "dsn",
                    "labels": {
                      "k8s.mariadb.com/connection": "sample"
                    },
                    "passwordKey": "password",
                    "portKey": "port",
                    "usernameKey": "username"
                  },
                  "serviceName": "mariadb",
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Database",
                "metadata": {
                  "name": "data-test"
                },
                "spec": {
                  "characterSet": "utf8",
                  "collate": "utf8_general_ci",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "retryInterval": "5s"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "ExternalMariaDB",
                "metadata": {
                  "name": "external-mariadb"
                },
                "spec": {
                  "connection": {
                    "healthCheck": {
                      "interval": "5s"
                    },
                    "secretName": "external-mariadb"
                  },
                  "host": "mariadb.default.svc.cluster.local",
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "port": 3306,
                  "username": "root"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Grant",
                "metadata": {
                  "name": "grant"
                },
                "spec": {
                  "database": "*",
                  "grantOption": true,
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "privileges": [
                    "SELECT",
                    "INSERT",
                    "UPDATE"
                  ],
                  "requeueInterval": "30s",
                  "retryInterval": "5s",
                  "table": "*",
                  "username": "user"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "MariaDB",
                "metadata": {
                  "name": "mariadb"
                },
                "spec": {
                  "connection": {
                    "secretName": "mariadb-conn",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "database": "mariadb",
                  "galera": {
                    "enabled": true
                  },
                  "metrics": {
                    "enabled": true,
                    "passwordSecretKeyRef": {
                      "generate": true,
                      "key": "password",
                      "name": "mariadb-metrics"
                    }
                  },
                  "myCnf": "[mariadb]\nbind-address=*\ndefault_storage_engine=InnoDB\nbinlog_format=row\ninnodb_autoinc_lock_mode=2\ninnodb_buffer_pool_size=1024M\nmax_allowed_packet=256M\n",
                  "passwordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-password"
                  },
                  "primaryConnection": {
                    "secretName": "mariadb-conn-primary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "primaryService": {
                    "type": "ClusterIP"
                  },
                  "replicas": 3,
                  "rootPasswordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-root"
                  },
                  "secondaryConnection": {
                    "secretName": "mariadb-conn-secondary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "secondaryService": {
                    "type": "ClusterIP"
                  },
                  "service": {
                    "type": "ClusterIP"
                  },
                  "storage": {
                    "size": "1Gi"
                  },
                  "updateStrategy": {
                    "type": "ReplicasFirstPrimaryLast"
                  },
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "MaxScale",
                "metadata": {
                  "name": "maxscale-galera"
                },
                "spec": {
                  "admin": {
                    "guiEnabled": true,
                    "port": 8989
                  },
                  "auth": {
                    "generate": true
                  },
                  "config": {
                    "sync": {
                      "database": "mysql",
                      "interval": "5s",
                      "timeout": "10s"
                    }
                  },
                  "connection": {
                    "port": 3306,
                    "secretName": "mxs-galera-conn"
                  },
                  "guiKubernetesService": {
                    "metadata": {
                      "annotations": {
                        "metallb.universe.tf/loadBalancerIPs": "172.18.0.231"
                      }
                    },
                    "type": "LoadBalancer"
                  },
                  "kubernetesService": {
                    "annotations": {
                      "metallb.universe.tf/loadBalancerIPs": "172.18.0.224"
                    },
                    "type": "LoadBalancer"
                  },
                  "mariaDbRef": {
                    "name": "mariadb-galera"
                  },
                  "monitor": {
                    "cooperativeMonitoring": "majority_of_all",
                    "interval": "2s",
                    "params": {
                      "available_when_donor": "false",
                      "disable_master_failback": "false",
                      "disable_master_role_setting": "false"
                    }
                  },
                  "replicas": 3,
                  "requeueInterval": "10s",
                  "services": [
                    {
                      "listener": {
                        "params": {
                          "connection_metadata": "tx_isolation=auto"
                        },
                        "port": 3306,
                        "protocol": "MariaDBProtocol"
                      },
                      "name": "rw-router",
                      "params": {
                        "master_accept_reads": "true",
                        "max_replication_lag": "3s",
                        "max_slave_connections": "255",
                        "transaction_replay": "true",
                        "transaction_replay_attempts": "10",
                        "transaction_replay_timeout": "5s"
                      },
                      "router": "readwritesplit"
                    },
                    {
                      "listener": {
                        "port": 3307
                      },
                      "name": "rconn-master-router",
                      "params": {
                        "master_accept_reads": "true",
                        "max_replication_lag": "3s",
                        "router_options": "master"
                      },
                      "router": "readconnroute"
                    },
                    {
                      "listener": {
                        "port": 3308
                      },
                      "name": "rconn-slave-router",
                      "params": {
                        "max_replication_lag": "3s",
                        "router_options": "slave"
                      },
                      "router": "readconnroute"
                    }
                  ]
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "PhysicalBackup",
                "metadata": {
                  "name": "physicalbackup"
                },
                "spec": {
                  "compression": "bzip2",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "podAffinity": true,
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "immediate": true,
                    "suspend": false
                  },
                  "serviceAccountName": "backup",
                  "stagingStorage": {
                    "persistentVolumeClaim": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "1Gi"
                        }
                      }
                    }
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "physicalbackups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "region": "us-east-1",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  },
                  "timeout": "1h"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore"
                },
                "spec": {
                  "backupRef": {
                    "name": "backup"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "targetRecoveryTime": "2023-12-19T09:00:00Z"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "SqlJob",
                "metadata": {
                  "name": "03-stars"
                },
                "spec": {
                  "database": "mariadb",
                  "dependsOn": [
                    {
                      "name": "01-users"
                    },
                    {
                      "name": "02-repos"
                    }
                  ],
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "suspend": false
                  },
                  "sql": "CREATE TABLE IF NOT EXISTS stars (\n  id bigint PRIMARY KEY AUTO_INCREMENT,\n  user_id bigint NOT NULL,\n  repo_id bigint NOT NULL,\n  FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,\n  FOREIGN KEY (repo_id) REFERENCES repos(id) ON DELETE CASCADE,\n  UNIQUE KEY (user_id, repo_id)\n);\nINSERT INTO stars(user_id, repo_id) \n  VALUES((SELECT id FROM users ORDER BY RAND() LIMIT 1), (SELECT id FROM repos ORDER BY RAND() LIMIT 1))\n  ON DUPLICATE KEY UPDATE id=id;\nDELETE FROM stars WHERE id = (SELECT id FROM stars ORDER BY RAND() LIMIT 1);\nSELECT r.name AS repo, COUNT(*) AS stars\nFROM stars s\nJOIN repos r\nON s.repo_id = r.id\nGROUP BY r.id\nORDER BY stars DESC;",
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "user"
                },
                "spec": {
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxUserConnections": 20,
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "retryInterval": "5s"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: ghcr.io/mariadb-operator/mariadb-operator-helm:25.10.3
          createdAt: "2025-12-24T12:25:03Z"
          description: Run and operate MariaDB in a cloud native way
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/mariadb-operator/mariadb-operator
          support: mariadb-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Configures a backup
            displayName: Backup
            kind: Backup
            name: backups.k8s.mariadb.com
            version: v1alpha1
          - description: Configures a connection
            displayName: Connection
            kind: Connection
            name: connections.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a logical database
            displayName: Database
            kind: Database
            name: databases.k8s.mariadb.com
            version: v1alpha1
          - description: Configures an external MariaDB resource
            displayName: ExternalMariaDB
            kind: ExternalMariaDB
            name: externalmariadbs.k8s.mariadb.com
            version: v1alpha1
          - description: Grants permissions to an user in a database
            displayName: Grant
            kind: Grant
            name: grants.k8s.mariadb.com
            version: v1alpha1
          - description: Configures MariaDB helm chart based operator
            displayName: MariadbOperator
            kind: MariadbOperator
            name: mariadboperators.helm.mariadb.mmontes.io
            version: v1alpha1
          - description: Provisions a MariaDB instance
            displayName: MariaDB
            kind: MariaDB
            name: mariadbs.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a MaxScale database proxy
            displayName: MaxScale
            kind: MaxScale
            name: maxscales.k8s.mariadb.com
            version: v1alpha1
          - description: Configures a physical backup
            displayName: PhysicalBackup
            kind: PhysicalBackup
            name: physicalbackups.k8s.mariadb.com
            version: v1alpha1
          - description: Restores a backup
            displayName: Restore
            kind: Restore
            name: restores.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a SQL job
            displayName: SqlJob
            kind: SqlJob
            name: sqljobs.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a user
            displayName: User
            kind: User
            name: users.k8s.mariadb.com
            version: v1alpha1
        description: |
          Install [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) via [OLM](https://olm.operatorframework.io/) using the [helm chart](https://artifacthub.io/packages/helm/mariadb-operator/mariadb-operator).

          This helm operator provides provides a 1:1 mapping between the official helm chart and the [`MariadbOperator`](https://github.com/mariadb-operator/mariadb-operator-helm/blob/main/config/samples/helm_v1alpha1_mariadboperator.yaml) CRD, allowing to install [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) via OLM without having to do any change in the helm chart.

          Normally, you would install [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) providing this `values.yaml` to the helm chart:
          ```yaml
          image:
            repository: ghcr.io/mariadb-operator/mariadb-operator
            pullPolicy: IfNotPresent
          logLevel: INFO
          ha:
            enabled: true
          metrics:
            enabled: true
            serviceMonitor:
              enabled: true
          webhook:
            cert:
              certManager:
                enabled: true
          ```

          This helm chart installation is abstracted in the [`MariadbOperator`](https://github.com/mariadb-operator/mariadb-operator-helm/blob/main/config/samples/helm_v1alpha1_mariadboperator.yaml) CRD, which will be reconciled by the helm operator:
          ```yaml
          apiVersion: helm.k8s.mariadb.com/v1alpha1
          kind: MariadbOperator
          metadata:
            name: mariadb-operator
          spec:
            image:
              repository: ghcr.io/mariadb-operator/mariadb-operator
              pullPolicy: IfNotPresent
            logLevel: INFO
            ha:
              enabled: true
            metrics:
              enabled: true
              serviceMonitor:
                enabled: true
            webhook:
              cert:
                certManager:
                  enabled: true
          ```

          Once you have installed the operator, you will able to install a [`MariaDB`](https://github.com/mariadb-operator/mariadb-operator/blob/main/examples/manifests/mariadb_v1alpha1_mariadb.yaml) instance. Refer to the main [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) documentation for getting started with the rest of CRDs.

          ## Documentation
          * [mariadb-operator](https://github.com/mariadb-operator/mariadb-operator/blob/main/README.md)
          * [mariadb-operator-helm](https://github.com/mariadb-operator/mariadb-operator-helm/blob/main/README.md)

          ## Releases
          This operator is automatically published in the following repositories whenever a new version of the [helm chart](https://artifacthub.io/packages/helm/mariadb-operator/mariadb-operator) is released:
          - [k8s-operatorhub/community-operators](https://github.com/k8s-operatorhub/community-operators)
          - [redhat-openshift-ecosystem/community-operators-prod](https://github.com/redhat-openshift-ecosystem/community-operators-prod)

          ## Roadmap
          Take a look at our [roadmap](https://github.com/mariadb-operator/mariadb-operator/blob/main/ROADMAP.md) and feel free to open an issue to suggest new features.

          ## Contributing
          We welcome and encourage contributions to this project! Please check our [contributing](https://github.com/mariadb-operator/mariadb-operator/blob/main/CONTRIBUTING.md) and [development](https://github.com/mariadb-operator/mariadb-operator/blob/main/docs/DEVELOPMENT.md) guides. PRs welcome!

          ## Get in touch
          Join us on Slack: **[MariaDB Community Slack](https://r.mariadb.com/join-community-slack)**.
        displayName: MariaDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mariadb
        - mysql
        - operator
        - mariadb-operator
        - database
        - maxscale
        links:
        - name: GitHub
          url: https://github.com/mariadb-operator/mariadb-operator
        maintainers:
        - email: mariadb-operator@proton.me
          name: mmontes11
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: mariadb-operator
          url: https://github.com/mariadb-operator/mariadb-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/mariadb-operator@sha256:472977c3b911835b41c6e9a7486d0caa7c22e6beb44fb67cb0fb4b64f09084b9
        - ghcr.io/mariadb-operator/mariadb-operator-helm:25.10.3
        version: 25.10.3
      entries:
      - name: mariadb-operator.v25.10.3
        version: 25.10.3
      - name: mariadb-operator.v25.10.2
        version: 25.10.2
      - name: mariadb-operator.v25.10.1
        version: 25.10.1
      - name: mariadb-operator.v25.10.0
        version: 25.10.0
      - name: mariadb-operator.v25.8.4
        version: 25.8.4
      - name: mariadb-operator.v25.8.3
        version: 25.8.3
      - name: mariadb-operator.v25.8.2
        version: 25.8.2
      - name: mariadb-operator.v25.8.1
        version: 25.8.1
      - name: mariadb-operator.v25.8.0
        version: 25.8.0
      - name: mariadb-operator.v0.38.0
        version: 0.38.0
      - name: mariadb-operator.v0.37.1
        version: 0.37.1
      - name: mariadb-operator.v0.37.0
        version: 0.37.0
      - name: mariadb-operator.v0.36.0
        version: 0.36.0
      - name: mariadb-operator.v0.35.1
        version: 0.35.1
      - name: mariadb-operator.v0.35.0
        version: 0.35.0
      - name: mariadb-operator.v0.34.0
        version: 0.34.0
      - name: mariadb-operator.v0.33.0
        version: 0.33.0
      - name: mariadb-operator.v0.32.0
        version: 0.32.0
      - name: mariadb-operator.v0.31.0
        version: 0.31.0
      - name: mariadb-operator.v0.30.0
        version: 0.30.0
      - name: mariadb-operator.v0.29.0
        version: 0.29.0
      - name: mariadb-operator.v0.28.1
        version: 0.28.1
      - name: mariadb-operator.v0.27.0
        version: 0.27.0
      - name: mariadb-operator.v0.26.0
        version: 0.26.0
      - name: mariadb-operator.v0.24.0
        version: 0.24.0
      - name: mariadb-operator.v0.23.1
        version: 0.23.1
      - name: mariadb-operator.v0.23.0
        version: 0.23.0
      - name: mariadb-operator.v0.22.0
        version: 0.22.0
      - name: mariadb-operator.v0.21.0
        version: 0.21.0
      - name: mariadb-operator.v0.20.0
        version: 0.20.0
      - name: mariadb-operator.v0.19.0
        version: 0.19.0
      - name: mariadb-operator.v0.18.0
        version: 0.18.0
      - name: mariadb-operator.v0.17.0
        version: 0.17.0
      - name: mariadb-operator.v0.16.0
        version: 0.16.0
      - name: mariadb-operator.v0.15.1
        version: 0.15.1
      - name: mariadb-operator.v0.15.0
        version: 0.15.0
      - name: mariadb-operator.v0.14.0
        version: 0.14.0
      - name: mariadb-operator.v0.13.0
        version: 0.13.0
      - name: mariadb-operator.v0.11.0
        version: 0.11.0
      - name: mariadb-operator.v0.10.0
        version: 0.10.0
      - name: mariadb-operator.v0.9.1
        version: 0.9.1
      - name: mariadb-operator.v0.9.0
        version: 0.9.0
      - name: mariadb-operator.v0.8.0
        version: 0.8.0
      - name: mariadb-operator.v0.7.1
        version: 0.7.1
      - name: mariadb-operator.v0.7.0
        version: 0.7.0
      - name: mariadb-operator.v0.6.7
        version: 0.6.7
      - name: mariadb-operator.v0.6.6
        version: 0.6.6
      - name: mariadb-operator.v0.6.5
        version: 0.6.5
      - name: mariadb-operator.v0.6.4
        version: 0.6.4
      name: alpha
    defaultChannel: alpha
    packageName: mariadb-operator
    provider:
      name: mariadb-operator
      url: https://github.com/mariadb-operator/mariadb-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: tempo-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tempo-operator.v0.19.0-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoMonolithic",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "jaegerui": {
                    "enabled": true,
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "resources": {
                    "limits": {
                      "cpu": "2",
                      "memory": "2Gi"
                    }
                  },
                  "storage": {
                    "traces": {
                      "backend": "memory"
                    }
                  }
                }
              },
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoStack",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "resources": {
                    "total": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2Gi"
                      }
                    }
                  },
                  "storage": {
                    "secret": {
                      "name": "my-storage-secret",
                      "type": "s3"
                    }
                  },
                  "storageSize": "1Gi",
                  "template": {
                    "queryFrontend": {
                      "jaegerQuery": {
                        "enabled": true,
                        "ingress": {
                          "type": "route"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/rhosdt/tempo-rhel8-operator@sha256:2b2a842990cabc139c7cc4fdeb4c681cc2221e95d49f713a3b9608dadbc51265
          createdAt: 16 Dec 2025, 17:37
          description: Create and manage deployments of Tempo, a high-scale distributed
            tracing backend.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=0.6.0 <0.19.0-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-tempo-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/grafana/tempo-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TempoMonolithic manages a Tempo deployment in monolithic
              mode.
            displayName: TempoMonolithic
            kind: TempoMonolithic
            name: tempomonolithics.tempo.grafana.com
            version: v1alpha1
          - description: TempoStack manages a Tempo deployment in microservices mode.
            displayName: TempoStack
            kind: TempoStack
            name: tempostacks.tempo.grafana.com
            version: v1alpha1
        description: |-
          Red Hat OpenShift distributed tracing platform based on Tempo. Tempo is an open-source, easy-to-use, and highly scalable distributed tracing backend. It provides observability for microservices architectures by allowing developers to track requests as they flow through distributed systems. Tempo is optimized to handle large volumes of trace data and is designed to be highly performant even under heavy loads.
          It can ingest common open source tracing protocols including Jaeger, Zipkin, and OpenTelemetry and requires only object storage to operate.

          The Tempo Operator supports Tempo deployments in Microservices mode (`TempoStack` CR) and Monolithic mode (`TempoMonolithic` CR).

          ### Core capabilities
          Tempo is used for monitoring and troubleshooting microservices-based distributed systems, including:
          * Distributed transaction monitoring
          * Root cause analysis
          * Performance / latency optimization

          ### Operator features
          * **Resource Limits** - Specify overall resource requests and limits in the `TempoStack` CR; the operator assigns fractions of it to each component
          * **AuthN and AuthZ** - Supports OpenID Control (OIDC) and role-based access control (RBAC)
          * **Managed upgrades** - Updating the operator will automatically update all managed Tempo clusters
          * **Multitenancy** - Multiple tenants can send traces to the same Tempo cluster
          * **mTLS** - Communication between the Tempo components can be secured via mTLS
          * **Jaeger UI** - Traces can be visualized in Jaeger UI and exposed via Ingress or OpenShift Route
          * **Observability** - The operator and `TempoStack` operands expose telemetry (metrics, traces) and integrate with Prometheus `ServiceMonitor` and `PrometheusRule`

          ### Before you start
          `TempoStack` requires object storage to store its traces. `TempoMonolithic` can store traces in-memory, in a Persistent Volume and in object storage.
          Please ensure that your system has a compatible object storage solution that is supported, such as OpenShift Data Foundation, Minio, AWS S3, Azure Storage, or Google Cloud Storage.

          ### Examples
          There is a list of examples to help you deploy different configurations in [this GitHub repository](https://github.com/os-observability/redhat-rhosdt-samples).

          ### Support & Troubleshooting
          Tempo Operator is available and supported as part of a Red Hat OpenShift subscription.
          Checking the [Red Hat Documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/distributed_tracing) is recommended when installing, configuring, and managing the Operator and instances.
        displayName: Tempo Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tempo
        - tracing
        - observability
        - monitoring
        - database
        links:
        - name: Tempo Operator
          url: https://github.com/grafana/tempo-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat support
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6bcfa981a7a75c242a16afa6dab36bf6e3b8a1442fa863875919ad551f48eceb
        - registry.redhat.io/rhosdt/tempo-gateway-opa-rhel8@sha256:18b76c6fd9ad82b8c62830f89332f85fa8d68e583f647a48b478fc44793d1261
        - registry.redhat.io/rhosdt/tempo-gateway-rhel8@sha256:b49ff19c40327b90a149edc98a57887f44c88310489dfca33c62b201d1faee58
        - registry.redhat.io/rhosdt/tempo-jaeger-query-rhel8@sha256:2c587b52015b07feea05c7cdb79e20362675bb5073e50eee1114476a9ca405dc
        - registry.redhat.io/rhosdt/tempo-query-rhel8@sha256:3aa486ed176f695af57b2b8d58dc53a070fbcef3ba0f233afdde0656eb55d5f6
        - registry.redhat.io/rhosdt/tempo-rhel8-operator@sha256:2b2a842990cabc139c7cc4fdeb4c681cc2221e95d49f713a3b9608dadbc51265
        - registry.redhat.io/rhosdt/tempo-rhel8@sha256:49c858da31e0bbede4ad67a1b34fac2910a777677ea46d2460b3c11ac51c6bab
        - registry.redhat.io/rhosdt/tempo-operator-bundle@sha256:59faa931ced3fb7d6121c0dd212e0a43e99d6e09d01a8eb0cf77694dabaabdac
        version: 0.19.0-2
      entries:
      - name: tempo-operator.v0.19.0-2
        version: 0.19.0-2
      - name: tempo-operator.v0.19.0-1
        version: 0.19.0-1
      - name: tempo-operator.v0.18.0-2
        version: 0.18.0-2
      - name: tempo-operator.v0.18.0-1
        version: 0.18.0-1
      - name: tempo-operator.v0.16.0-2
        version: 0.16.0-2
      - name: tempo-operator.v0.16.0-1
        version: 0.16.0-1
      - name: tempo-operator.v0.15.4-1
        version: 0.15.4-1
      - name: tempo-operator.v0.15.3-1
        version: 0.15.3-1
      - name: tempo-operator.v0.14.1-2
        version: 0.14.1-2
      - name: tempo-operator.v0.14.1-1
        version: 0.14.1-1
      - name: tempo-operator.v0.13.0-1-0.1730817419.p
        version: 0.13.0-1+0.1730817419.p
      - name: tempo-operator.v0.13.0-1
        version: 0.13.0-1
      - name: tempo-operator.v0.10.0-8
        version: 0.10.0-8
      - name: tempo-operator.v0.10.0-7
        version: 0.10.0-7
      - name: tempo-operator.v0.10.0-6
        version: 0.10.0-6
      - name: tempo-operator.v0.8.0-3
        version: 0.8.0-3
      - name: tempo-operator.v0.8.0-2
        version: 0.8.0-2
      - name: tempo-operator.v0.6.0-2
        version: 0.6.0-2
      - name: tempo-operator.v0.3.1-3
        version: 0.3.1-3
      - name: tempo-operator.v0.1.0-6
        version: 0.1.0-6
      - name: tempo-operator.v0.1.0-6-0.1687199947.p
        version: 0.1.0-6+0.1687199947.p
      name: stable
    defaultChannel: stable
    packageName: tempo-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-elasticache-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-elasticache-controller.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "CacheParameterGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "CacheSubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "ReplicationGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "Snapshot",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "UserGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/elasticache-controller:1.3.1
          createdAt: "2025-12-24T21:35:58Z"
          description: AWS ElastiCache controller is a service controller for managing
            ElastiCache resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CacheCluster represents the state of an AWS elasticache CacheCluster
              resource.
            displayName: CacheCluster
            kind: CacheCluster
            name: cacheclusters.elasticache.services.k8s.aws
            version: v1alpha1
          - description: CacheParameterGroup represents the state of an AWS elasticache
              CacheParameterGroup resource.
            displayName: CacheParameterGroup
            kind: CacheParameterGroup
            name: cacheparametergroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: CacheSubnetGroup represents the state of an AWS elasticache
              CacheSubnetGroup resource.
            displayName: CacheSubnetGroup
            kind: CacheSubnetGroup
            name: cachesubnetgroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: ReplicationGroup represents the state of an AWS elasticache
              ReplicationGroup resource.
            displayName: ReplicationGroup
            kind: ReplicationGroup
            name: replicationgroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: ServerlessCache represents the state of an AWS elasticache
              ServerlessCache resource.
            displayName: ServerlessCache
            kind: ServerlessCache
            name: serverlesscaches.elasticache.services.k8s.aws
            version: v1alpha1
          - description: ServerlessCacheSnapshot represents the state of an AWS elasticache
              ServerlessCacheSnapshot resource.
            displayName: ServerlessCacheSnapshot
            kind: ServerlessCacheSnapshot
            name: serverlesscachesnapshots.elasticache.services.k8s.aws
            version: v1alpha1
          - description: Snapshot represents the state of an AWS elasticache Snapshot
              resource.
            displayName: Snapshot
            kind: Snapshot
            name: snapshots.elasticache.services.k8s.aws
            version: v1alpha1
          - description: UserGroup represents the state of an AWS elasticache UserGroup
              resource.
            displayName: UserGroup
            kind: UserGroup
            name: usergroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: User represents the state of an AWS elasticache User resource.
            displayName: User
            kind: User
            name: users.elasticache.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon ElastiCache resources in AWS from within your Kubernetes cluster.

          **About Amazon ElastiCache**

          Amazon ElastiCache allows you to seamlessly set up, run, and scale popular open-source compatible in-memory data stores in the cloud. Build data-intensive apps or boost the performance of your existing databases by retrieving data from high throughput and low latency in-memory data stores. Amazon ElastiCache is a popular choice for real-time use cases like Caching, Session Stores, Gaming, Geospatial Services, Real-Time Analytics, and Queuing.

          Amazon ElastiCache offers fully managed Redis, voted the most loved database by developers in the Stack Overflow 2020 Developer Survey, and Memcached for your most demanding applications that require sub-millisecond response times.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ElastiCache
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - elasticache
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ElastiCache Developer Resources
          url: https://aws.amazon.com/elasticache/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: elasticache maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/elasticache-controller:1.3.1
        - quay.io/community-operator-pipeline-prod/ack-elasticache-controller@sha256:baece0405590a42b0406416b7475a82618e9d6857f2cf2feae6c9ddc8e484157
        version: 1.3.1
      entries:
      - name: ack-elasticache-controller.v1.3.1
        version: 1.3.1
      - name: ack-elasticache-controller.v1.3.0
        version: 1.3.0
      - name: ack-elasticache-controller.v1.2.4
        version: 1.2.4
      - name: ack-elasticache-controller.v1.2.3
        version: 1.2.3
      - name: ack-elasticache-controller.v1.2.2
        version: 1.2.2
      - name: ack-elasticache-controller.v1.2.1
        version: 1.2.1
      - name: ack-elasticache-controller.v1.2.0
        version: 1.2.0
      - name: ack-elasticache-controller.v1.1.0
        version: 1.1.0
      - name: ack-elasticache-controller.v1.0.7
        version: 1.0.7
      - name: ack-elasticache-controller.v1.0.6
        version: 1.0.6
      - name: ack-elasticache-controller.v1.0.5
        version: 1.0.5
      - name: ack-elasticache-controller.v1.0.4
        version: 1.0.4
      - name: ack-elasticache-controller.v1.0.3
        version: 1.0.3
      - name: ack-elasticache-controller.v1.0.2
        version: 1.0.2
      - name: ack-elasticache-controller.v1.0.1
        version: 1.0.1
      - name: ack-elasticache-controller.v1.0.0
        version: 1.0.0
      - name: ack-elasticache-controller.v0.2.6
        version: 0.2.6
      - name: ack-elasticache-controller.v0.2.5
        version: 0.2.5
      - name: ack-elasticache-controller.v0.2.4
        version: 0.2.4
      - name: ack-elasticache-controller.v0.2.3
        version: 0.2.3
      - name: ack-elasticache-controller.v0.2.2
        version: 0.2.2
      - name: ack-elasticache-controller.v0.2.1
        version: 0.2.1
      - name: ack-elasticache-controller.v0.2.0
        version: 0.2.0
      - name: ack-elasticache-controller.v0.1.1
        version: 0.1.1
      - name: ack-elasticache-controller.v0.1.0
        version: 0.1.0
      - name: ack-elasticache-controller.v0.0.31
        version: 0.0.31
      - name: ack-elasticache-controller.v0.0.30
        version: 0.0.30
      - name: ack-elasticache-controller.v0.0.29
        version: 0.0.29
      - name: ack-elasticache-controller.v0.0.28
        version: 0.0.28
      - name: ack-elasticache-controller.v0.0.27
        version: 0.0.27
      - name: ack-elasticache-controller.v0.0.26
        version: 0.0.26
      - name: ack-elasticache-controller.v0.0.25
        version: 0.0.25
      - name: ack-elasticache-controller.v0.0.24
        version: 0.0.24
      - name: ack-elasticache-controller.v0.0.23
        version: 0.0.23
      - name: ack-elasticache-controller.v0.0.22
        version: 0.0.22
      - name: ack-elasticache-controller.v0.0.21
        version: 0.0.21
      - name: ack-elasticache-controller.v0.0.20
        version: 0.0.20
      - name: ack-elasticache-controller.v0.0.19
        version: 0.0.19
      - name: ack-elasticache-controller.v0.0.18
        version: 0.0.18
      - name: ack-elasticache-controller.v0.0.17
        version: 0.0.17
      - name: ack-elasticache-controller.v0.0.16
        version: 0.0.16
      - name: ack-elasticache-controller.v0.0.15
        version: 0.0.15
      - name: ack-elasticache-controller.v0.0.14
        version: 0.0.14
      - name: ack-elasticache-controller.v0.0.13
        version: 0.0.13
      - name: ack-elasticache-controller.v0.0.12
        version: 0.0.12
      - name: ack-elasticache-controller.v0.0.11
        version: 0.0.11
      - name: ack-elasticache-controller.v0.0.10
        version: 0.0.10
      - name: ack-elasticache-controller.v0.0.9
        version: 0.0.9
      - name: ack-elasticache-controller.v0.0.8
        version: 0.0.8
      name: alpha
    defaultChannel: alpha
    packageName: ack-elasticache-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudtrail-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudtrail-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cloudtrail.services.k8s.aws/v1alpha1",
                "kind": "EventDataStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "cloudtrail.services.k8s.aws/v1alpha1",
                "kind": "Trail",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudtrail-controller:1.2.0
          createdAt: "2025-11-29T04:04:51Z"
          description: AWS CloudTrail controller is a service controller for managing
            CloudTrail resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EventDataStore represents the state of an AWS cloudtrail
              EventDataStore resource.
            displayName: EventDataStore
            kind: EventDataStore
            name: eventdatastores.cloudtrail.services.k8s.aws
            version: v1alpha1
          - description: Trail represents the state of an AWS cloudtrail Trail resource.
            displayName: Trail
            kind: Trail
            name: trails.cloudtrail.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Elastic Compute Cloud (CloudTrail) resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudTrail**

          AWS CloudTrail is an AWS service that helps you enable operational and risk auditing, governance, and compliance of your AWS account. Actions taken by a user, role, or an AWS service are recorded as events in CloudTrail. Events include actions taken in the AWS Management Console, AWS Command Line Interface, and AWS SDKs and APIs.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon CloudTrail
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudtrail
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudTrail Developer Resources
          url: https://aws.amazon.com/cloudtrail/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudtrail maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-cloudtrail-controller@sha256:afee911b61274480b95dfdd96b7266d867c8ec5ad9b38d473d509e32dd279e1b
        - public.ecr.aws/aws-controllers-k8s/cloudtrail-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-cloudtrail-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudtrail-controller.v1.1.1
        version: 1.1.1
      - name: ack-cloudtrail-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudtrail-controller.v1.0.28
        version: 1.0.28
      - name: ack-cloudtrail-controller.v1.0.26
        version: 1.0.26
      - name: ack-cloudtrail-controller.v1.0.25
        version: 1.0.25
      - name: ack-cloudtrail-controller.v1.0.24
        version: 1.0.24
      - name: ack-cloudtrail-controller.v1.0.23
        version: 1.0.23
      - name: ack-cloudtrail-controller.v1.0.22
        version: 1.0.22
      - name: ack-cloudtrail-controller.v1.0.21
        version: 1.0.21
      - name: ack-cloudtrail-controller.v1.0.20
        version: 1.0.20
      - name: ack-cloudtrail-controller.v1.0.19
        version: 1.0.19
      - name: ack-cloudtrail-controller.v1.0.16
        version: 1.0.16
      - name: ack-cloudtrail-controller.v1.0.15
        version: 1.0.15
      - name: ack-cloudtrail-controller.v1.0.14
        version: 1.0.14
      - name: ack-cloudtrail-controller.v1.0.13
        version: 1.0.13
      - name: ack-cloudtrail-controller.v1.0.12
        version: 1.0.12
      - name: ack-cloudtrail-controller.v1.0.11
        version: 1.0.11
      - name: ack-cloudtrail-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudtrail-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudtrail-controller.v1.0.5
        version: 1.0.5
      - name: ack-cloudtrail-controller.v1.0.4
        version: 1.0.4
      - name: ack-cloudtrail-controller.v1.0.3
        version: 1.0.3
      - name: ack-cloudtrail-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudtrail-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudtrail-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudtrail-controller.v0.1.3
        version: 0.1.3
      - name: ack-cloudtrail-controller.v0.1.2
        version: 0.1.2
      - name: ack-cloudtrail-controller.v0.1.1
        version: 0.1.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudtrail-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: cloud-bulldozer
      provider-url: ""
    name: ripsaw
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ripsaw.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery, Cloud Provider
          containerImage: quay.io/cloud-bulldozer/benchmark-operator:latest
          description: '[Benchmark-operator](https://github.com/cloud-bulldozer/ripsaw/)
            is a benchmarking tool to benchmark your kubernetes cluster. The intent
            of this Operator is to deploy common workloads to establish a performance
            baseline of Kubernetes cluster'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/cloud-bulldozer/benchmark-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Benchmark
            name: benchmarks.ripsaw.cloudbulldozer.io
            version: v1alpha1
        description: '[Benchmark-operator](https://github.com/cloud-bulldozer/benchmark-operator/)
          is a benchmarking tool to benchmark your kubernetes cluster. The intent
          of this Operator is to deploy common workloads to establish a performance
          baseline of Kubernetes cluster'
        displayName: benchmark-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - performance
        - benchmark
        links:
        - name: Site
          url: https://github.com/cloud-bulldozer/benchmark-operator
        - name: Documentation
          url: https://github.com/cloud-bulldozer/benchmark-operator/tree/master/docs
        maintainers:
        - email: rsevilla@redhat.com
          name: rsevilla87
        - email: jtaleric@redhat.com
          name: jtaleric
        - email: rzaleski@redhat.com
          name: dry939
        - email: kwhitley@redhat.com
          name: whitleykeith
        maturity: alpha
        provider:
          name: cloud-bulldozer
        relatedImages:
        - quay.io/cloud-bulldozer/benchmark-operator:latest
        - quay.io/openshift-community-operators/ripsaw@sha256:ff8d796d5bd6c8cb0e155b3ced631122397758eb472470223e30352eeddba480
        - k8s.gcr.io/redis:v1
        version: 0.1.0
      entries:
      - name: ripsaw.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ripsaw
    provider:
      name: cloud-bulldozer
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ocs-client-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ocs-client-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-client-console"]'
          containerImage: registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:b2fe175cc0154906ecab7e0a0a4712e76f204db55fc9b4d32fcda27446e5f1be
          createdAt: "2025-12-18T07:54:46Z"
          description: OpenShift Data Foundation client operator enables consumption
            of storage services from a remote centralized OpenShift Data Foundation
            provider cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/red-hat-storage/ocs-client-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StorageClient is the Schema for the storageclients API
            displayName: Storage Client
            kind: StorageClient
            name: storageclients.ocs.openshift.io
            version: v1alpha1
        description: OpenShift Data Foundation client operator enables consumption
          of storage services from a remote centralized OpenShift Data Foundation
          provider cluster.
        displayName: OpenShift Data Foundation Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: OCS Client Operator
          url: https://github.com/red-hat-storage/ocs-client-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/ocs-client-operator-bundle@sha256:8417c655f110b508f858c1ff2a3d0315e0dab9baba9afec846f61c71cb294477
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:de6cd74955a0403d8ff97490a657b941316d69922e901fa3513f1837fb8d981b
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:5ee2a17163eb3a989d45c1ae90175a88b35d2f5ac4dd824f8210626d58627449
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:b2fe175cc0154906ecab7e0a0a4712e76f204db55fc9b4d32fcda27446e5f1be
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:e1d824c160ed39df2024e6cccd2269f0de9a3933986765d9d5d038b2c95e447f
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        version: 4.19.9-rhodf
      entries:
      - name: ocs-client-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: ocs-client-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: ocs-client-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: ocs-client-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: ocs-client-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: ocs-client-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: ocs-client-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: ocs-client-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: ocs-client-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: ocs-client-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: ocs-client-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-client-console"]'
          containerImage: registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:f1553f73f4ce2390424d5f9153851e303564e7c50d769b5710adfe0ec5aca3cd
          createdAt: "2025-12-18T07:41:10Z"
          description: OpenShift Data Foundation client operator enables consumption
            of storage services from a remote centralized OpenShift Data Foundation
            provider cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/red-hat-storage/ocs-client-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StorageClient is the Schema for the storageclients API
            displayName: Storage Client
            kind: StorageClient
            name: storageclients.ocs.openshift.io
            version: v1alpha1
        description: OpenShift Data Foundation client operator enables consumption
          of storage services from a remote centralized OpenShift Data Foundation
          provider cluster.
        displayName: OpenShift Data Foundation Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: OCS Client Operator
          url: https://github.com/red-hat-storage/ocs-client-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        - registry.redhat.io/odf4/odf-external-snapshotter-sidecar-rhel9@sha256:87b5909be13793b80ab8cb916458c8863bdff29a7391630af0707b39080b8ebb
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:5ee2a17163eb3a989d45c1ae90175a88b35d2f5ac4dd824f8210626d58627449
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:7ae5cd1afb0ba1a7e28acb6631b3fe7ec3e23fbba782162baa2df847de61b28e
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:f1553f73f4ce2390424d5f9153851e303564e7c50d769b5710adfe0ec5aca3cd
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        - registry.redhat.io/openshift4/ose-csi-external-snapshot-metadata-rhel9@sha256:da5c73b33774046408736738fac6e4bd82fc0f7c0a6e966e788941e81746fd28
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/odf4/ocs-client-operator-bundle@sha256:a7a7533e91939980298a9b097ae535a40fb179a4f4d26b3194b13c396b845d17
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:e1d824c160ed39df2024e6cccd2269f0de9a3933986765d9d5d038b2c95e447f
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:954212cfe5ee83f95fb844f0b59d2c5230c0a0a0135ab4953f24e29ef4cd0157
        version: 4.20.4-rhodf
      entries:
      - name: ocs-client-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: ocs-client-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: ocs-client-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: ocs-client-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: ocs-client-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: ocs-client-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-wafv2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-wafv2-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wafv2.services.k8s.aws/v1alpha1",
                "kind": "IPSet",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/wafv2-controller:1.2.0
          createdAt: "2025-11-29T05:17:18Z"
          description: AWS WAFV2 controller is a service controller for managing WAFV2
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IPSet represents the state of an AWS wafv2 IPSet resource.
            displayName: IPSet
            kind: IPSet
            name: ipsets.wafv2.services.k8s.aws
            version: v1alpha1
          - description: RuleGroup represents the state of an AWS wafv2 RuleGroup
              resource.
            displayName: RuleGroup
            kind: RuleGroup
            name: rulegroups.wafv2.services.k8s.aws
            version: v1alpha1
          - description: WebACL represents the state of an AWS wafv2 WebACL resource.
            displayName: WebACL
            kind: WebACL
            name: webacls.wafv2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Web Application Firewall (Amazon WAFV2) resources in AWS from within your Kubernetes cluster.

          **About Amazon WAFV2**

          AWS WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to your protected web application resources. You can protect the following resource types:
          - Amazon CloudFront distribution
          - Amazon API Gateway REST API
          - Application Load Balancer
          - AWS AppSync GraphQL API
          - Amazon Cognito user pool
          - AWS App Runner service
          - AWS Verified Access instance

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon WAFV2
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - wafv2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon WAFV2 Developer Resources
          url: https://aws.amazon.com/waf/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: wafv2 maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/wafv2-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-wafv2-controller@sha256:0c0cc3819a4833ca703d36bb86c094f44886b30fd547f638761e5718358085ba
        version: 1.2.0
      entries:
      - name: ack-wafv2-controller.v1.2.0
        version: 1.2.0
      - name: ack-wafv2-controller.v1.1.2
        version: 1.1.2
      - name: ack-wafv2-controller.v1.1.1
        version: 1.1.1
      - name: ack-wafv2-controller.v1.1.0
        version: 1.1.0
      - name: ack-wafv2-controller.v1.0.14
        version: 1.0.14
      - name: ack-wafv2-controller.v1.0.13
        version: 1.0.13
      - name: ack-wafv2-controller.v1.0.12
        version: 1.0.12
      - name: ack-wafv2-controller.v1.0.10
        version: 1.0.10
      - name: ack-wafv2-controller.v1.0.9
        version: 1.0.9
      - name: ack-wafv2-controller.v1.0.8
        version: 1.0.8
      - name: ack-wafv2-controller.v1.0.6
        version: 1.0.6
      - name: ack-wafv2-controller.v1.0.5
        version: 1.0.5
      - name: ack-wafv2-controller.v1.0.4
        version: 1.0.4
      - name: ack-wafv2-controller.v1.0.1
        version: 1.0.1
      - name: ack-wafv2-controller.v1.0.0
        version: 1.0.0
      - name: ack-wafv2-controller.v0.0.4
        version: 0.0.4
      - name: ack-wafv2-controller.v0.0.3
        version: 0.0.3
      - name: ack-wafv2-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-wafv2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/limitador-operator
    name: limitador-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: limitador-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "limitador.kuadrant.io/v1alpha1",
                "kind": "Limitador",
                "metadata": {
                  "name": "limitador-sample"
                },
                "spec": {
                  "limits": [
                    {
                      "conditions": [
                        "get_toy == 'yes'"
                      ],
                      "max_value": 2,
                      "name": "toy_get_route",
                      "namespace": "toystore-app",
                      "seconds": 30,
                      "variables": []
                    }
                  ],
                  "listener": {
                    "grpc": {
                      "port": 8081
                    },
                    "http": {
                      "port": 8080
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/limitador-rhel9-operator@sha256:6092c510b04a4cee253a52c07b77b625e90d863fa9ccd8727eb901bd81b4e071
          createdAt: 07 Oct 2025, 11:32
          description: Enables rate limiting for Gateways and applications in a Gateway
            API network
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kuadrant/limitador-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Limitador is the Schema for the limitadors API
            displayName: Limitador
            kind: Limitador
            name: limitadors.limitador.kuadrant.io
            version: v1alpha1
        description: The Limitador operator installs and maintains limitador instances
        displayName: Limitador
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - rate-limit
        - kuadrant
        links:
        - name: Limitador Operator
          url: https://github.com/Kuadrant/limitador-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: asnaps@redhat.com
          name: Alex Snaps
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/limitador-operator
        relatedImages:
        - registry.redhat.io/rhcl-1/limitador-rhel9@sha256:aff28d76f9cfeefafd6b652e055bb25e1a2bf250e062e3e9b5e54db873f9eeb7
        - registry.redhat.io/rhcl-1/limitador-operator-bundle@sha256:fc0ee45511674e99f3ecd1b807a660e4bcf49af77bf5d66af935d1cb16336bc4
        - registry.redhat.io/rhcl-1/limitador-rhel9-operator@sha256:6092c510b04a4cee253a52c07b77b625e90d863fa9ccd8727eb901bd81b4e071
        version: 1.2.0
      entries:
      - name: limitador-operator.v1.2.0
        version: 1.2.0
      - name: limitador-operator.v1.1.1
        version: 1.1.1
      - name: limitador-operator.v1.1.0
        version: 1.1.0
      - name: limitador-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: limitador-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/limitador-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: openshift
      provider-url: ""
    name: pf-status-relay-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pf-status-relay-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pfstatusrelay.openshift.io/v1alpha1",
                "kind": "PFLACPMonitor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "pf-status-relay-operator"
                  },
                  "name": "pflacpmonitor-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.3.0-0 <4.19.0'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PFLACPMonitor is the Schema for the pflacpmonitors API
            displayName: PFLACPMonitor
            kind: PFLACPMonitor
            name: pflacpmonitors.pfstatusrelay.openshift.io
            version: v1alpha1
        description: It deploys the pf-status-relay application.
        displayName: pf-status-relay-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pf-status-relay
        - sriov
        - lacp
        links:
        - name: Pf Status Relay Operator
          url: https://pf-status-relay-operator.domain
        maintainers:
        - email: marguerr@redhat.com
          name: Marcelo Guerrero
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: openshift
        relatedImages:
        - registry.redhat.io/openshift4/pf-status-relay-rhel9-operator@sha256:d3429e65675d7b1bda2158db44a771c3b55fe6a3f269e08fe6ff9ef224226772
        - registry.redhat.io/openshift4/pf-status-relay-rhel9@sha256:0f7d8c9aa266a124f571ca2e58f0705ec7257e2cc96f353dd5c41a6f9de00f4a
        - registry.redhat.io/openshift4/pf-status-relay-operator-bundle@sha256:14ac9f4b837706b9ff92cf899f395e0c9f3758d2ab5c1f2e094a6ede45b24023
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 4.20.0-202512081147
      entries:
      - name: pf-status-relay-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: pf-status-relay-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: pf-status-relay-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: pf-status-relay-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: pf-status-relay-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: pf-status-relay-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: pf-status-relay-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: pf-status-relay-operator
    provider:
      name: openshift
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: https://stakater.com
    name: template-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: template-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-07-04T00:40:36Z"
          description: Operator to distribute plain kubernetes manifests, helm charts
            and, copy secrets and configmaps to multiple namespaces
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.0.1
          operatorframework.io/suggested-namespace: template-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterTemplateInstance is the Schema for the clustertemplateinstances
              API
            displayName: Cluster Template Instance
            kind: ClusterTemplateInstance
            name: clustertemplateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateGroupInstance is the Schema for the TemplateGroupInstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.templates.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
        description: '"Operator to distribute plain kubernetes manifests, helm charts
          and, copy secrets and configmaps to multiple namespaces"'
        displayName: Template Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - templates
        - secrets
        - configmaps
        - distribution
        - stakater
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/template-operator-bundle@sha256:6ef2956b297795a9d0c83119e71309549975df3ae5652e6a98cef035ace5d51a
        - registry.connect.redhat.com/stakater/template-operator@sha256:ad8312417e4e9621b74d3ad03020516840feef9c4b52c4f0d894dbb6dc6f906a
        version: 0.0.1
      entries:
      - name: template-operator.v0.0.1
        version: 0.0.1
      name: release-0.0
    - currentCSV: template-operator.v0.1.5
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-08-29T06:41:42Z"
          description: Operator to distribute plain kubernetes manifests, helm charts
            and, copy secrets and configmaps to multiple namespaces
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.1.5
          operatorframework.io/suggested-namespace: template-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterTemplateInstance is the Schema for the clustertemplateinstances
              API
            displayName: Cluster Template Instance
            kind: ClusterTemplateInstance
            name: clustertemplateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateGroupInstance is the Schema for the TemplateGroupInstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.templates.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
        description: '"Operator to distribute plain kubernetes manifests, helm charts
          and, copy secrets and configmaps to multiple namespaces"'
        displayName: Template Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - templates
        - secrets
        - configmaps
        - distribution
        - stakater
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/template-operator-bundle@sha256:8831faee6979acfb5bd031b64cbc09fb90e9ea4f48bbff15e9d39ccdf6bf3d95
        - registry.connect.redhat.com/stakater/template-operator@sha256:88f722baf22ac07704503f098f2b0ea7d76815a1ab0552474b1c9ba6639d8142
        version: 0.1.5
      entries:
      - name: template-operator.v0.1.5
        version: 0.1.5
      name: release-0.1
    defaultChannel: release-0.1
    packageName: template-operator
    provider:
      name: Stakater
      url: https://stakater.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: GitLab Inc
      provider-url: https://about.gitlab.com/
    name: gitlab-operator-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:24:14Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - registry.connect.redhat.com/gitlab/gitlab-operator-bundle@sha256:3ce324ad0b7aa2c357a89b134b595e317ec929dcd7f4ff8bf3323fdeea97a8e7
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: stable
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:24:14Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - registry.connect.redhat.com/gitlab/gitlab-operator-bundle@sha256:3ce324ad0b7aa2c357a89b134b595e317ec929dcd7f4ff8bf3323fdeea97a8e7
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: unstable
    defaultChannel: stable
    packageName: gitlab-operator-kubernetes
    provider:
      name: GitLab Inc
      url: https://about.gitlab.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Datadog
      provider-url: ""
    name: datadog-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datadog-operator.v0.8.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadog"
                },
                "spec": {
                  "agent": {
                    "apm": {
                      "enabled": false
                    },
                    "log": {
                      "enabled": false,
                      "logsConfigContainerCollectAll": false
                    },
                    "process": {
                      "enabled": true,
                      "processCollection": false
                    },
                    "security": {
                      "compliance": {
                        "enabled": false
                      },
                      "runtime": {
                        "enabled": false
                      }
                    },
                    "systemProbe": {
                      "bpfDebugEnabled": false
                    }
                  },
                  "clusterAgent": {
                    "config": {
                      "admissionController": {
                        "enabled": false
                      },
                      "clusterChecksEnabled": false,
                      "externalMetrics": {
                        "enabled": false
                      }
                    },
                    "replicas": 2
                  },
                  "clusterChecksRunner": {
                    "replicas": 2
                  },
                  "clusterName": "\u003cCLUSTER_NAME\u003e",
                  "credentials": {
                    "apiKey": "\u003cDATADOG_API_KEY\u003e",
                    "appKey": "\u003cDATADOG_APP_KEY\u003e",
                    "token": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e"
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: gcr.io/datadoghq/operator:0.8.4
          description: Datadog provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with Datadog Operator.
          olm.skipRange: <0.8.4
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/DataDog/datadog-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgent Deployment with Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v1alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
        description: Datadog provides a modern monitoring and analytics platform.
          Gather metrics, logs and traces for full observability of your Kubernetes
          cluster with Datadog Operator.
        displayName: Datadog Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - gcr.io/datadoghq/operator:0.8.4
        - quay.io/openshift-community-operators/datadog-operator@sha256:b1977170e5991e1f08c49037d6f34873c8543d29d3a2c3692ebb1d66734f5b3e
        version: 0.8.4
      entries:
      - name: datadog-operator.v0.8.4
        version: 0.8.4
      - name: datadog-operator.v0.8.2
        version: 0.8.2
      - name: datadog-operator.v0.8.1
        version: 0.8.1
      - name: datadog-operator.v0.8.0
        version: 0.8.0
      name: alpha
    - currentCSV: datadog-operator.v1.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgentProfile",
                "metadata": {
                  "name": "datadogagentprofile-sample"
                },
                "spec": {
                  "config": {
                    "override": {
                      "nodeAgent": {
                        "containers": {
                          "agent": {
                            "resources": {
                              "requests": {
                                "cpu": "256m"
                              }
                            }
                          }
                        }
                      }
                    }
                  },
                  "profileAffinity": {
                    "profileNodeAffinity": [
                      {
                        "key": "kubernetes.io/os",
                        "operator": "In",
                        "values": [
                          "linux"
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogDashboard",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "datadog-operator",
                    "app.kubernetes.io/instance": "datadogdashboard-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datadogdashboard",
                    "app.kubernetes.io/part-of": "datadog-operator"
                  },
                  "name": "datadogdashboard-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogGenericResource",
                "metadata": {
                  "name": "datadoggenericresource-notebook-sample"
                },
                "spec": {
                  "jsonSpec": "{\n  \"data\": {\n    \"attributes\": {\n      \"cells\": [\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"text\": \"## Some test markdown\\n\\n```js\\nvar x, y;\\nx = 5;\\ny = 6;\\n```\",\n              \"type\": \"markdown\"\n            }\n          },\n          \"type\": \"notebook_cells\"\n        },\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"requests\": [\n                {\n                  \"display_type\": \"line\",\n                  \"q\": \"avg:system.load.1{*}\",\n                  \"style\": {\n                    \"line_type\": \"solid\",\n                    \"line_width\": \"normal\",\n                    \"palette\": \"dog_classic\"\n                  }\n                }\n              ],\n              \"show_legend\": true,\n              \"type\": \"timeseries\",\n              \"yaxis\": {\n                \"scale\": \"linear\"\n              }\n            },\n            \"graph_size\": \"m\",\n            \"split_by\": {\n              \"keys\": [],\n              \"tags\": []\n            },\n            \"time\": null\n          },\n          \"type\": \"notebook_cells\"\n        }\n      ],\n      \"name\": \"Example-Notebook\",\n      \"status\": \"published\",\n      \"time\": {\n        \"live_span\": \"1h\"\n      }\n    },\n    \"type\": \"notebooks\"\n  }\n}",
                  "type": "notebook"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogPodAutoscaler",
                "metadata": {
                  "name": "datadogpodautoscaler-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogSLO",
                "metadata": {
                  "name": "datadogslo-sample"
                },
                "spec": {
                  "description": "This is an example metric SLO from datadog-operator",
                  "name": "datadogslo-sample",
                  "query": {
                    "denominator": "sum:requests.total{service:example,env:prod}.as_count()",
                    "numerator": "sum:requests.success{service:example,env:prod}.as_count()"
                  },
                  "tags": [
                    "service:example",
                    "env:prod"
                  ],
                  "targetThreshold": "99.9",
                  "timeframe": "7d",
                  "type": "metric"
                }
              },
              {
                "apiVersion": "datadoghq.com/v2alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadogagent-sample"
                },
                "spec": {
                  "features": {
                    "admissionController": {
                      "enabled": false
                    },
                    "apm": {
                      "enabled": false
                    },
                    "clusterChecks": {
                      "enabled": true,
                      "useClusterChecksRunners": true
                    },
                    "liveProcessCollection": {
                      "enabled": false
                    },
                    "logCollection": {
                      "containerCollectAll": true,
                      "enabled": true
                    }
                  },
                  "global": {
                    "clusterAgentToken": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e",
                    "clusterName": "\u003cCLUSTER_NAME\u003e",
                    "credentials": {
                      "apiKey": "\u003cDATADOG_API_KEY\u003e",
                      "appKey": "\u003cDATADOG_APP_KEY\u003e"
                    },
                    "criSocketPath": "/var/run/crio/crio.sock",
                    "kubelet": {
                      "tlsVerify": false
                    }
                  },
                  "override": {
                    "clusterAgent": {
                      "containers": {
                        "cluster-agent": {
                          "securityContext": {
                            "readOnlyRootFilesystem": false
                          }
                        }
                      },
                      "replicas": 2,
                      "serviceAccountName": "datadog-agent-scc"
                    },
                    "clusterChecksRunner": {
                      "replicas": 2
                    },
                    "nodeAgent": {
                      "hostNetwork": true,
                      "securityContext": {
                        "runAsUser": 0,
                        "seLinuxOptions": {
                          "level": "s0",
                          "role": "system_r",
                          "type": "spc_t",
                          "user": "system_u"
                        }
                      },
                      "serviceAccountName": "datadog-agent-scc"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: gcr.io/datadoghq/operator:1.20.0
          createdAt: "2025-11-11 19:36:47"
          description: Datadog provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with Datadog Operator.
          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.skipRange: '>=1.7.0 <1.20.0'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/DataDog/datadog-operator
          support: Datadog, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgentInternal is the Schema for the datadogagentinternals
              API
            displayName: Datadog Agent Internal
            kind: DatadogAgentInternal
            name: datadogagentinternals.datadoghq.com
            version: v1alpha1
          - description: DatadogAgentProfile is the Schema for the datadogagentprofiles
              API
            displayName: Datadog Agent Profile
            kind: DatadogAgentProfile
            name: datadogagentprofiles.datadoghq.com
            version: v1alpha1
          - description: DatadogAgent Deployment with the Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v2alpha1
          - description: DatadogDashboard is the Schema for the datadogdashboards
              API
            displayName: Datadog Dashboard
            kind: DatadogDashboard
            name: datadogdashboards.datadoghq.com
            version: v1alpha1
          - kind: DatadogGenericResource
            name: datadoggenericresources.datadoghq.com
            version: v1alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha2
          - description: DatadogSLO allows a user to define and manage datadog SLOs
              from Kubernetes cluster.
            displayName: Datadog SLO
            kind: DatadogSLO
            name: datadogslos.datadoghq.com
            version: v1alpha1
        description: Datadog provides a modern monitoring and analytics platform.
          Gather metrics, logs and traces for full observability of your Kubernetes
          cluster with Datadog Operator.
        displayName: Datadog Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - quay.io/community-operator-pipeline-prod/datadog-operator@sha256:e5dd17a7de9ae6bd921ab5b07a1d56c803784920c6b7a24151669ab7d24509ae
        - gcr.io/datadoghq/operator:1.20.0
        version: 1.20.0
      entries:
      - name: datadog-operator.v1.20.0
        version: 1.20.0
      - name: datadog-operator.v1.19.1
        version: 1.19.1
      - name: datadog-operator.v1.18.0
        version: 1.18.0
      - name: datadog-operator.v1.17.0
        version: 1.17.0
      - name: datadog-operator.v1.16.0
        version: 1.16.0
      - name: datadog-operator.v1.15.1
        version: 1.15.1
      - name: datadog-operator.v1.14.0
        version: 1.14.0
      - name: datadog-operator.v1.13.0
        version: 1.13.0
      - name: datadog-operator.v1.12.1
        version: 1.12.1
      - name: datadog-operator.v1.11.1
        version: 1.11.1
      - name: datadog-operator.v1.10.0
        version: 1.10.0
      - name: datadog-operator.v1.9.0
        version: 1.9.0
      - name: datadog-operator.v1.8.0
        version: 1.8.0
      - name: datadog-operator.v1.7.0
        version: 1.7.0
      - name: datadog-operator.v1.6.0
        version: 1.6.0
      - name: datadog-operator.v1.5.0
        version: 1.5.0
      - name: datadog-operator.v1.4.2
        version: 1.4.2
      - name: datadog-operator.v1.4.1
        version: 1.4.1
      - name: datadog-operator.v1.4.0
        version: 1.4.0
      - name: datadog-operator.v1.3.0
        version: 1.3.0
      - name: datadog-operator.v1.2.1
        version: 1.2.1
      - name: datadog-operator.v1.2.0
        version: 1.2.0
      - name: datadog-operator.v1.1.0
        version: 1.1.0
      name: stable
    defaultChannel: stable
    packageName: datadog-operator
    provider:
      name: Datadog
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: fuse-apicurito
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fuse-apicurito.v7.10.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1alpha1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:8d19ad579f874d6b9a08f127c8900906913a5a7c1e69cbe4b5cb0333b8d86152
          createdAt: 2022-02-28 09:35:38 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.10.3'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:4530ed52522a74051aaedabd62b99d5c5274a0ab72eb28d4e75207d9e9d3391b
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:8d19ad579f874d6b9a08f127c8900906913a5a7c1e69cbe4b5cb0333b8d86152
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:8dbeeb8b04c81f41d896f71db90813de57e67493fa85389b63ac23f390785043
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:c02c218ccfbb385ea29af98409995a3d9c26cb0b4c76caf2e0779fa233b5ff8c
        version: 7.10.3
      entries:
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.10.x
    - currentCSV: fuse-apicurito.v7.11.1-0.1687357785.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:2f8d4450187839f0e0c761e5ddcf61b03f5996acfe3d75b60120e76e5b0167c1
          createdAt: 2022-08-31 15:11:41 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.11.2'
          olm.substitutesFor: fuse-apicurito.v7.11.1-0.1682509045.p
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:02e6baf8619cc2b782cbb1f3072e554a7638eaf3fd804abe1ba5f43f692e511b
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:2f8d4450187839f0e0c761e5ddcf61b03f5996acfe3d75b60120e76e5b0167c1
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:df61aafc4023b9068a8636c35eabb0d5fda400f523b64cb1fc5d8c480272c435
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:4c493a2d690d0d7c1684c53d15c06b47d691aeffdde6dd471b6e75fed2fec6a9
        version: 7.11.1+0.1687357785.p
      entries:
      - name: fuse-apicurito.v7.11.1
        version: 7.11.1
      - name: fuse-apicurito.v7.11.1-0.1687357785.p
        version: 7.11.1+0.1687357785.p
      - name: fuse-apicurito.v7.11.1-0.1682509045.p
        version: 7.11.1+0.1682509045.p
      - name: fuse-apicurito.v7.11.1-0.1681224697.p
        version: 7.11.1+0.1681224697.p
      - name: fuse-apicurito.v7.11.1-0.1679272341.p
        version: 7.11.1+0.1679272341.p
      - name: fuse-apicurito.v7.11.1-0.1675972858.p
        version: 7.11.1+0.1675972858.p
      - name: fuse-apicurito.v7.11.1-0.1673364838.p
        version: 7.11.1+0.1673364838.p
      - name: fuse-apicurito.v7.11.0-0.1665994968.p
        version: 7.11.0+0.1665994968.p
      - name: fuse-apicurito.v7.11.0-0.1666805761.p
        version: 7.11.0+0.1666805761.p
      - name: fuse-apicurito.v7.11.0-0.1662457152.p
        version: 7.11.0+0.1662457152.p
      - name: fuse-apicurito.v7.11.0-0.1659517292.p
        version: 7.11.0+0.1659517292.p
      - name: fuse-apicurito.v7.11.0
        version: 7.11.0
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.11.x
    - currentCSV: fuse-apicurito.v7.12.1-0.1706187670.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:7ccefee63165e7eaf9a609e8a9f978a06f27deff69a318fe399a29292ad99106
          createdAt: 2022-08-31 15:11:41 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.12.1'
          olm.substitutesFor: fuse-apicurito.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:df59ef548b82e9d72fecd06aa6b9c569f96485693c8a4ecb8ec278ae92df436f
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:7ccefee63165e7eaf9a609e8a9f978a06f27deff69a318fe399a29292ad99106
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:4cd612283e8136839f1f48a3a220dac7c6c38adf14b61bc03a981e514baefe9b
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:bee0eeaa7898af835f80c5217059d73361daa42197fa6cbbaf416e1ba373eb54
        version: 7.12.1+0.1706187670.p
      entries:
      - name: fuse-apicurito.v7.12.1-0.1706187670.p
        version: 7.12.1+0.1706187670.p
      - name: fuse-apicurito.v7.12.1
        version: 7.12.1
      - name: fuse-apicurito.v7.12.0
        version: 7.12.0
      - name: fuse-apicurito.v7.12.0-0.1697748407.p
        version: 7.12.0+0.1697748407.p
      - name: fuse-apicurito.v7.12.0-0.1697419531.p
        version: 7.12.0+0.1697419531.p
      - name: fuse-apicurito.v7.12.0-0.1694087055.p
        version: 7.12.0+0.1694087055.p
      - name: fuse-apicurito.v7.11.1-0.1675972858.p
        version: 7.11.1+0.1675972858.p
      - name: fuse-apicurito.v7.11.1-0.1682509045.p
        version: 7.11.1+0.1682509045.p
      - name: fuse-apicurito.v7.11.1-0.1687357785.p
        version: 7.11.1+0.1687357785.p
      - name: fuse-apicurito.v7.11.1-0.1681224697.p
        version: 7.11.1+0.1681224697.p
      - name: fuse-apicurito.v7.11.1
        version: 7.11.1
      - name: fuse-apicurito.v7.11.1-0.1673364838.p
        version: 7.11.1+0.1673364838.p
      - name: fuse-apicurito.v7.11.1-0.1679272341.p
        version: 7.11.1+0.1679272341.p
      - name: fuse-apicurito.v7.11.0-0.1666805761.p
        version: 7.11.0+0.1666805761.p
      - name: fuse-apicurito.v7.11.0-0.1662457152.p
        version: 7.11.0+0.1662457152.p
      - name: fuse-apicurito.v7.11.0-0.1665994968.p
        version: 7.11.0+0.1665994968.p
      - name: fuse-apicurito.v7.11.0-0.1659517292.p
        version: 7.11.0+0.1659517292.p
      - name: fuse-apicurito.v7.11.0
        version: 7.11.0
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.12.x
    - currentCSV: fuse-apicurito.v7.13.0-0.1767583497.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:112f86a152a0bd90776881417c43f2b768b4756471fc39d07e3690301d4fd57b
          createdAt: 2022-08-31 15:11:41 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=7.7.0 <7.13.0'
          olm.substitutesFor: fuse-apicurito.v7.13.0-0.1766137200.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:323f7d1fa408dfa958afa2aba0fcfff69cef78073a9b1cd4d70d3908e46fb8f5
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:c828ea828ffa81ac936f445f78ca4465f37fc2fff2161d7d0c562fcfb5ac3a49
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:3c5557eced22a6e3760782a62523b5187321895a57a0b260f8d668a2f2d3e274
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:112f86a152a0bd90776881417c43f2b768b4756471fc39d07e3690301d4fd57b
        version: 7.13.0+0.1767583497.p
      entries:
      - name: fuse-apicurito.v7.13.0-0.1744280419.p
        version: 7.13.0+0.1744280419.p
      - name: fuse-apicurito.v7.13.0-0.1745523192.p
        version: 7.13.0+0.1745523192.p
      - name: fuse-apicurito.v7.13.0-0.1767583497.p
        version: 7.13.0+0.1767583497.p
      - name: fuse-apicurito.v7.13.0-0.1766137200.p
        version: 7.13.0+0.1766137200.p
      - name: fuse-apicurito.v7.13.0-0.1764853445.p
        version: 7.13.0+0.1764853445.p
      - name: fuse-apicurito.v7.13.0-0.1764853165.p
        version: 7.13.0+0.1764853165.p
      - name: fuse-apicurito.v7.13.0-0.1764239907.p
        version: 7.13.0+0.1764239907.p
      - name: fuse-apicurito.v7.13.0-0.1763465460.p
        version: 7.13.0+0.1763465460.p
      - name: fuse-apicurito.v7.13.0-0.1753785079.p
        version: 7.13.0+0.1753785079.p
      - name: fuse-apicurito.v7.13.0-0.1753778936.p
        version: 7.13.0+0.1753778936.p
      - name: fuse-apicurito.v7.13.0-0.1753778625.p
        version: 7.13.0+0.1753778625.p
      - name: fuse-apicurito.v7.13.0-0.1753702605.p
        version: 7.13.0+0.1753702605.p
      - name: fuse-apicurito.v7.13.0-0.1753701210.p
        version: 7.13.0+0.1753701210.p
      - name: fuse-apicurito.v7.13.0-0.1751291353.p
        version: 7.13.0+0.1751291353.p
      - name: fuse-apicurito.v7.13.0-0.1748960166.p
        version: 7.13.0+0.1748960166.p
      - name: fuse-apicurito.v7.13.0-0.1721607497.p
        version: 7.13.0+0.1721607497.p
      - name: fuse-apicurito.v7.13.0-0.1724053718.p
        version: 7.13.0+0.1724053718.p
      - name: fuse-apicurito.v7.13.0-0.1741884705.p
        version: 7.13.0+0.1741884705.p
      - name: fuse-apicurito.v7.13.0-0.1723709434.p
        version: 7.13.0+0.1723709434.p
      - name: fuse-apicurito.v7.13.0-0.1739885035.p
        version: 7.13.0+0.1739885035.p
      - name: fuse-apicurito.v7.13.0-0.1739473863.p
        version: 7.13.0+0.1739473863.p
      - name: fuse-apicurito.v7.13.0-0.1738056248.p
        version: 7.13.0+0.1738056248.p
      - name: fuse-apicurito.v7.13.0-0.1731460815.p
        version: 7.13.0+0.1731460815.p
      - name: fuse-apicurito.v7.13.0
        version: 7.13.0
      - name: fuse-apicurito.v7.13.0-0.1717672390.p
        version: 7.13.0+0.1717672390.p
      - name: fuse-apicurito.v7.13.0-0.1718285973.p
        version: 7.13.0+0.1718285973.p
      - name: fuse-apicurito.v7.13.0-0.1720707249.p
        version: 7.13.0+0.1720707249.p
      - name: fuse-apicurito.v7.13.0-0.1721224330.p
        version: 7.13.0+0.1721224330.p
      - name: fuse-apicurito.v7.13.0-0.1729189341.p
        version: 7.13.0+0.1729189341.p
      - name: fuse-apicurito.v7.13.0-0.1741875975.p
        version: 7.13.0+0.1741875975.p
      - name: fuse-apicurito.v7.13.0-0.1744737027.p
        version: 7.13.0+0.1744737027.p
      - name: fuse-apicurito.v7.13.0-0.1724659732.p
        version: 7.13.0+0.1724659732.p
      - name: fuse-apicurito.v7.13.0-0.1725022690.p
        version: 7.13.0+0.1725022690.p
      - name: fuse-apicurito.v7.13.0-0.1727193594.p
        version: 7.13.0+0.1727193594.p
      - name: fuse-apicurito.v7.13.0-0.1727957847.p
        version: 7.13.0+0.1727957847.p
      - name: fuse-apicurito.v7.12.1
        version: 7.12.1
      - name: fuse-apicurito.v7.12.1-0.1706187670.p
        version: 7.12.1+0.1706187670.p
      - name: fuse-apicurito.v7.12.0
        version: 7.12.0
      - name: fuse-apicurito.v7.12.0-0.1697748407.p
        version: 7.12.0+0.1697748407.p
      - name: fuse-apicurito.v7.12.0-0.1697419531.p
        version: 7.12.0+0.1697419531.p
      - name: fuse-apicurito.v7.12.0-0.1694087055.p
        version: 7.12.0+0.1694087055.p
      - name: fuse-apicurito.v7.11.1-0.1679272341.p
        version: 7.11.1+0.1679272341.p
      - name: fuse-apicurito.v7.11.1-0.1675972858.p
        version: 7.11.1+0.1675972858.p
      - name: fuse-apicurito.v7.11.1-0.1687357785.p
        version: 7.11.1+0.1687357785.p
      - name: fuse-apicurito.v7.11.1-0.1682509045.p
        version: 7.11.1+0.1682509045.p
      - name: fuse-apicurito.v7.11.1-0.1681224697.p
        version: 7.11.1+0.1681224697.p
      - name: fuse-apicurito.v7.11.1-0.1673364838.p
        version: 7.11.1+0.1673364838.p
      - name: fuse-apicurito.v7.11.1
        version: 7.11.1
      - name: fuse-apicurito.v7.11.0-0.1659517292.p
        version: 7.11.0+0.1659517292.p
      - name: fuse-apicurito.v7.11.0-0.1666805761.p
        version: 7.11.0+0.1666805761.p
      - name: fuse-apicurito.v7.11.0-0.1665994968.p
        version: 7.11.0+0.1665994968.p
      - name: fuse-apicurito.v7.11.0-0.1662457152.p
        version: 7.11.0+0.1662457152.p
      - name: fuse-apicurito.v7.11.0
        version: 7.11.0
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.13.x
    - currentCSV: fuse-apicurito.v7.9.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [{
                    "apiVersion": "apicur.io/v1alpha1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
            }]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:05c9676aada2d34a985a59abcf55105a3765d75b0d3764089d2b32e9ca5d367c
          createdAt: "2020-10-06 12:48:47"
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.9.3'
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito Project
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CRD for Apicurito
            displayName: Apicurito CRD
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:8ce258f36d3baab3175b29d5ed6df89588f128d249285bb1e7cb45539933c511
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:05c9676aada2d34a985a59abcf55105a3765d75b0d3764089d2b32e9ca5d367c
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:5535864ce393ae0ae5ee52ed0c7661e0351fb7df2f9235da70608245519530b2
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:dc39b79c360511ff999eba5b2c299db3e08c9c244a0a1f3da8c90c02695e506d
        version: 7.9.3
      entries:
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.9.x
    defaultChannel: fuse-apicurito-7.13.x
    packageName: fuse-apicurito
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MySQL
      provider-url: https://artifacthub.io/packages/helm/mysql-ndb-operator/ndb-operator
    name: ndb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ndb-operator.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "mysql.oracle.com/v1","kind": "NdbCluster","metadata":
            {"name": "example-ndb"},"spec": {"redundancyLevel": 2,"dataNode": {"nodeCount":
            2},"mysqlNode": {"nodeCount":2}}}]'
          capabilities: Seamless Upgrades
          categories: Database
          containerImage: container-registry.oracle.com/mysql/community-ndb-operator:9.1.0-1.6.0
          createdAt: "2024-12-18T15:05:46.000Z"
          description: The MySQL NDB Operator is a Kubernetes operator for managing
            a MySQL NDB Cluster setup inside a Kubernetes Cluster.
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instance of a Ndb Cluster
            displayName: NdbCluster
            kind: NdbCluster
            name: ndbclusters.mysql.oracle.com
            version: v1
        description: |
          ## NdbCluster Custom Resource
          The NdbCluster custom resource is defined with custom fields that map to the configuration of a MySQL Cluster. To deploy a MySQL Cluster inside the K8s Cluster, an NdbCluster object with the desired configuration of the MySQL Cluster has to be created in the K8s Cluster. The NDB Operator watches for any changes made to any NdbCluster objects and will receive an event when the NdbCluster object is created in the K8s Cluster. It will then start deploying the MySQL Cluster, with the specified configuration, inside the K8s Cluster using native Kubernetes workloads and resources. Once the MySQL Cluster is ready, the NdbCluster resource can be further modified to make changes to the MySQL Cluster configuration. The Operator will receive this event as well and will update the configuration of the already running MySQL Cluster.

          The documentation at [NdbCluster-CRD.md](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/NdbCluster-CRD.md) explains the various custom fields of the NdbCluster CRD and the effect they have on the MySQL Cluster configuration. The [examples](https://github.com/mysql/mysql-ndb-operator/tree/main/docs/examples) folder has a few examples of the NdbCluster resource objects which can be used to deploy MySQL Cluster inside the K8s Cluster.
          ## Deploy a simple MySQL Cluster

          The [examples/example-ndb.yaml](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/examples/example-ndb.yaml) file has a NdbCluster object example-ndb that defines a simple MySQL Cluster with 2 data nodes and 2 MySQL Servers. To create this object in the default namespace of the K8s Cluster, run this command from the root of the repo :
          ```
          kubectl apply -f docs/examples/example-ndb.yaml
          ```

          Various NdbCluster status fields report back the actual status of the MySQL Cluster running inside the K8s Cluster. Wait for the MySQL Cluster nodes to be started and become ready using the [UpToDate](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/NdbCluster-CRD.md#ndbclusterconditiontypestring-alias) Condition defined in the NdbCluster object status :
          ```
          kubectl wait --for=condition=UpToDate ndb example-ndb --timeout=10m
          ```
          The MySQL Cluster is ready for transactions once the NdbCluster is UpToDate, i.e. the UpToDate condition becomes true.

          At any point, a brief status of an NdbCluster object can be viewed using kubectl get ndb command.
          ```
          kubectl get ndb example-ndb
          ```

          The output of the command gives a short summary the MySQL Cluster nodes controlled by the respective NdbCluster object.
          ```
          NAME          REPLICA   MANAGEMENT NODES   DATA NODES   MYSQL SERVERS AGE   UP-TO-DATE
          example-ndb   2         Ready:2/2          Ready:2/2    Ready:2/2 3m    True
          ```

          To list all the pods created by the NDB Operator, run :
          ```
          kubectl get pods -l mysql.oracle.com/v1=example-ndb
          ```

          For example-ndb NdbCluster object, two management nodes (*-mgmd-* pods), two multi-threaded data nodes (*-ndbmtd-* pods) and two MySQL Servers (*-mysqld-*) would have been created by the NDB operator :
          ```
          NAME                   READY   STATUS    RESTARTS   AGE
          example-ndb-mgmd-0     1/1     Running   0          3m53s
          example-ndb-mgmd-1     1/1     Running   0          2m5s
          example-ndb-mysqld-0   1/1     Running   0          78s
          example-ndb-mysqld-1   1/1     Running   0          78s
          example-ndb-ndbmtd-0   1/1     Running   0          3m53s
          example-ndb-ndbmtd-1   1/1     Running   0          3m53s
          ```
          If running inside a openshift cluster, pods from statefulset "example-ndb-mysqld" will not start up. By default openshift runs all the pod with "restricted" scc, but the statefulset "example-ndb-mysqld" required higher privilege. Use the below command to check the exact scc required
          ```
          oc get pods example-ndb-mysqld-0 -o yaml | oc adm policy scc-subject-review -f -
          ```
          Create a user account with the scc and set the user to the statefulset "example-ndb-mysqld". Below commands creates an user with "anyuid" and assign it to the statefulset.
          ```
          oc create sa any-uid-user
          oc adm policy add-scc-to-user anyuid -z any-uid-user
          oc set sa sts example-ndb-mysqld any-uid-user
          ```
          ## Connect to the MySQL Cluster

          The NDB Operator, by default, creates few Services to expose the services offered by the MySQL Cluster nodes within the Kubernetes Cluster.
          ```
          kubectl get services -l mysql.oracle.com/v1=example-ndb
          ```

          The above command will generate an output similar to :
          ```
          NAME                 TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S) AGE
          example-ndb-mgmd     ClusterIP   10.100.207.255   <none>        1186/TCP 5m
          example-ndb-mysqld   ClusterIP   10.103.182.157   <none>        3306/TCP 5m
          example-ndb-ndbmtd   ClusterIP   None             <none>        1186/TCP 5m
          ```

          The NDB Operator will also create a root user with a random password on all the MySQL Servers. The root password will be stored in a K8s Secret which can be retrieved from the NdbCluster object status :
          ```
          kubectl get ndb example-ndb -o jsonpath={.status.generatedRootPasswordSecretName}
          ```

          To extract and decode the password from the Secret :
          ```
          base64 -d <<< \
          $(kubectl get secret example-ndb-mysqld-root-password \
          -o jsonpath={.data.password})
          ```

          One can also specify the password and host to be used with the root account via the NdbCluster spec. See the [CRD documentation](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/NdbCluster-CRD.md#ndbmysqldspec) for more details on this.
          ## Access MySQL Cluster from inside K8s

          To connect to the Management and MySQL Servers from within the Kubernetes Cluster, you can use the example-ndb-mgmd and example-ndb-mysqld services as the MySQL Cluster connectstring and MySQL host respectively. You can also use the mgmd and mysqld pods' hostnames to directly connect to that particular pod. The mysql, ndb_mgm clients and any other ndb tools will work as expected.

          A demonstration is available at [connect-from-inside-k8s-demo.md](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/connect-from-inside-k8s-demo.md).
          ## Access MySQL Cluster from outside K8s

          By default, the Management and MySQL services created by the NDB Operator are of type [ClusterIP](https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types) and are accessible only from within the K8s Cluster. To expose them outside the K8s Cluster, the services have to be upgraded into a LoadBalancer type. This can be done by setting the spec.managementNode.enableLoadBalancer and spec.mysqlNode.enableLoadBalancer fields of the NdbCluster resource to true. These options can be enabled when the NdbCluster resource object is created or via an update to the object when the MySQL Cluster is already running.

          Once enabled, the previously ClusterIP type example-ndb-mgmd and example-ndb-mysqld services will be upgraded to LoadBalancer type, and they will be available at the external IP assigned to them by the cloud provider.

          Another way to access these services without enabling the LoadBalancers support is to use the kubectl port-forward command.

          In both ways, only the mysql and ndb_mgm clients work. Any NDB tool which uses the NDBAPI to connect to the MySQL data nodes will not work as expected from outside the K8s Cluster.

          A demonstration is available at [connect-from-outside-k8s-demo.md](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/connect-from-outside-k8s-demo.md).
          ## Updating MySQL Cluster Configuration

          Once a MySQL Cluster has been deployed by the NDB Operator inside the K8s Cluster, its configuration can be updated by updating the spec of the NdbCluster resource object that represents it. The NDB Operator will pick up any changes made to the NdbCluster resource object and will apply the updated configuration to the respective MySQL Cluster. The NDB Operator takes care of updating the MySQL Cluster config file and restarting all the management/data nodes if required. When the update is being handled by the NdbOperator, it will set the UpToDate condition of the NdbCluster resource object to false and will not accept any further updates until it completes the current one.

          The kubectl get ndb example-ndb command will report the UpToDate status of an NdbCluster. It can be used to check if the current update has been completed.
          ```
          $ kubectl get ndb example-ndb
          NAME          REPLICA   MANAGEMENT NODES   DATA NODES   MYSQL SERVERS AGE   UP-TO-DATE
          example-ndb   2         Ready:2/2          Ready:1/2    Ready:2/2 10m   False
          ```

          The UpToDate condition can also be used to wait for the operator to complete the update.
          ```
          kubectl wait --for=condition=UpToDate ndb example-ndb --timeout=10m
          ```

          Once the update is complete, the UpToDate condition will be set back to true by the operator.
          ```
          $ kubectl get ndb example-ndb
          NAME          REPLICA   MANAGEMENT NODES   DATA NODES   MYSQL SERVERS AGE      UP-TO-DATE
          example-ndb   2         Ready:2/2          Ready:2/2    Ready:2/2 10m50s   True
          ```

          ## Delete a MySQL Cluster

          To stop and remove the MySQL Cluster running inside the K8s Cluster, delete the NdbCluster resource object.
          ```
          kubectl delete -f docs/examples/example-ndb.yaml
          ```

          (or)
          ```
          kubectl delete ndb example-ndb
          ```

          This will delete all the data, the pods running the MySQL Cluster nodes and also delete all other associated K8s resources created by the NDB Operator.
        displayName: Ndb Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mysql
        - ndb
        - in-memory
        links:
        - name: Document
          url: https://dev.mysql.com/doc/ndb-operator/en/
        maintainers:
        - email: paulo.p.silva@oracle.com
          name: paulofasilva
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: MySQL
          url: https://artifacthub.io/packages/helm/mysql-ndb-operator/ndb-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ndb-operator@sha256:5f33c2a8181ea8e91844afd1f4042affbd9eb878266b6b2bcc6906f0829ed00b
        - container-registry.oracle.com/mysql/community-ndb-operator:9.1.0-1.6.0
        version: 1.6.0
      entries:
      - name: ndb-operator.v1.6.0
        version: 1.6.0
      name: alpha
    defaultChannel: alpha
    packageName: ndb-operator
    provider:
      name: MySQL
      url: https://artifacthub.io/packages/helm/mysql-ndb-operator/ndb-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: vault-config-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vault-config-operator.v0.8.37
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Audit",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "audit-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "audit",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "audit-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "options": {
                    "enable_list_responses": "true",
                    "file_path": "stdout",
                    "hmac_accessor": "false"
                  },
                  "path": "audit-sample",
                  "type": "file"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AuditRequestHeader",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "auditrequestheader-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "auditrequestheader",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "auditrequestheader-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "hmac": true,
                  "name": "custom-header"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AuthEngineMount",
                "metadata": {
                  "name": "authenginemount-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "kube-authengine-mount-sample",
                  "type": "kubernetes"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureAuthEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azureauthengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azureauthengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azureauthengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "azureCredentials": {
                    "passwordKey": "clientsecret",
                    "secret": {
                      "name": "aad-credentials"
                    },
                    "usernameKey": "clientid"
                  },
                  "clientID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "environment": "AzurePublicCloud",
                  "maxRetries": 3,
                  "maxRetryDelay": 60,
                  "path": "azure/test",
                  "resource": "https://management.azure.com/",
                  "retryDelay": 4,
                  "tenantID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureAuthEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azureauthenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azureauthenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azureauthenginerole-sample"
                },
                "spec": {
                  "BoundResourceGroups": [
                    "resourcegroup1",
                    "resourcegroup2"
                  ],
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "boundGroupIDs": [
                    "group1",
                    "group2"
                  ],
                  "boundLocations": [
                    "location1",
                    "location2"
                  ],
                  "boundScaleSets": [
                    "scaleset1",
                    "scaleset1"
                  ],
                  "boundServicePrincipalIDs": [
                    "sp1",
                    "sp2"
                  ],
                  "boundSubscriptionIDs": [
                    "subscription1",
                    "subscription2"
                  ],
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "name": "dev-role",
                  "path": "azure",
                  "policies": [
                    "policy1",
                    "policy2"
                  ],
                  "tokenBoundCIDRs": [
                    "10.20.102.13",
                    "10.20.102.15"
                  ],
                  "tokenExplicitMaxTTL": "",
                  "tokenMaxTTL": "",
                  "tokenNoDefaultPolicy": false,
                  "tokenNumUses": 0,
                  "tokenPeriod": 0,
                  "tokenPolicies": [
                    "policy1",
                    "policy2"
                  ],
                  "tokenTTL": "",
                  "tokenType": ""
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureSecretEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azuresecretengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azuresecretengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azuresecretengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "azureCredentials": {
                    "passwordKey": "clientsecret",
                    "secret": {
                      "name": "aad-credentials"
                    },
                    "usernameKey": "clientid"
                  },
                  "clientID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "environment": "AzurePublicCloud",
                  "passwordPolicy": "",
                  "path": "azure",
                  "rootPasswordTTL": "128d",
                  "subscriptionID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
                  "tenantID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureSecretEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azuresecretenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azuresecretenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azuresecretenginerole-sample"
                },
                "spec": {
                  "TTL": "",
                  "applicationObjectID": "",
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "azureGroups": "",
                  "azureRoles": "",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "maxTTL": "",
                  "name": "azure-role",
                  "path": "azure",
                  "permanentlyDelete": "",
                  "persistApp": "",
                  "signInAudience": "",
                  "tags": ""
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "CertAuthEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "certauthengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "certauthengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "certauthengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "name": "test",
                  "path": "cert"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "CertAuthEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "certauthenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "certauthenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "certauthenginerole-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "certificate": "-----BEGIN CERTIFICATE-----\nMIIDJTCCAg2gAwIBAgIUF119kmCNlnMwK6yOOpfRs4JGhAAwDQYJKoZIhvcNAQEL\nBQAwFjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjUwMTIxMTM0MjExWhcNMjYw\nMTIxMTM0MjExWjAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBALad4Sx97VyFSfOepJoXUGYljg7hL+z20pVL2/M8\n8HXAQl4qf/i45b//Qz8VogMxdg3Y9J7O/M0n9hxbL18i1gm270VjEFyzjJCyUq0R\n72WMM4Sr3OjQPnVtJoQkWnH7wR3zsWK2N4NuIPdE3Ofb48Olyachffv7xCI+MLIa\n/adcyRggM4Z5f2nBCMcXL8D/eY03qCgd/U1aaPJ0WyJTZHLL4euL0ewKlKtB1JnU\n4MrRa5mbPQ3B+OhxcaD/7BNV6hPXAe2zftEv8LcimhbVoj3XmLJ+om58YIaEMadk\nJj61xnXbf+F/iV41onzwvTPNWCSWiLowDl8P3zkabuS583sCAwEAAaNrMGkwHQYD\nVR0OBBYEFH971CwrqkTvUz2qrUncWMS5ULwKMB8GA1UdIwQYMBaAFH971CwrqkTv\nUz2qrUncWMS5ULwKMA8GA1UdEwEB/wQFMAMBAf8wFgYDVR0RBA8wDYILZXhhbXBs\nZS5jb20wDQYJKoZIhvcNAQELBQADggEBAIQzT113TQC9BqitOCOoDFCJqcM+BHmf\nITEKlEhlqubPvA40lD4wkz67RP2SdQbF1glzZW5sDTxMjpHL+8nhdmo65CJpsQGP\nyMPwnOvx7W5JWQJa1Yt+48JNhgIymDMun+xwDsjNnlBqp0Kr7HkOxPimMPWN4R6B\nydG96puDGBYqxB1ujx5seOGfGvxPBBr3h8kNg054rtIIDrUG2iUTfpNIILJrd8Q2\nshop9//3VcIpUJO7Z1brvK/Hp4DrcKBZVo7vd8n+5uCx3vBA0tjqNAXYtFnSRvDZ\n6XV+rCZecDBFkaLuJ5YgYEK15gGe6lQAez6DTVLXMAKhZ52kceefnwM=\n-----END CERTIFICATE-----\n",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "name": "test-role",
                  "path": "cert/test"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "DatabaseSecretEngineConfig",
                "metadata": {
                  "name": "my-postgresql-database"
                },
                "spec": {
                  "allowedRoles": [
                    "read-only"
                  ],
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "connectionURL": "postgresql://{{username}}:{{password}}@my-postgresql-database.test-vault-config-operator.svc:5432",
                  "path": "test-vault-config-operator/database",
                  "pluginName": "postgresql-database-plugin",
                  "rootCredentials": {
                    "passwordKey": "postgresql-password",
                    "secret": {
                      "name": "postgresql-admin-password"
                    }
                  },
                  "username": "postgres"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "DatabaseSecretEngineRole",
                "metadata": {
                  "name": "read-only"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "creationStatements": [
                    "CREATE ROLE \"{{name}}\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}'; GRANT SELECT ON ALL TABLES IN SCHEMA public TO \"{{name}}\";"
                  ],
                  "dBName": "my-postgresql-database",
                  "defaultTTL": "1h",
                  "maxTTL": "24h",
                  "path": "test-vault-config-operator/database"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "DatabaseSecretEngineStaticRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "databasesecretenginestaticrole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "databasesecretenginestaticrole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "databasesecretenginestaticrole-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "dBName": "db-name",
                  "path": "test-vault-config-operator/database",
                  "rotationPeriod": "24h",
                  "rotationStatements": [
                    "ALTER ROLE \"{{name}}\" WITH PASSWORD '{{password}}';git add"
                  ],
                  "username": "db-user"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GCPAuthEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "gcpauthengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "gcpauthengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "gcpauthengineconfig-sample"
                },
                "spec": {
                  "GCEalias": "role_id",
                  "GCEmetadata": "default",
                  "GCPCredentials": {
                    "passwordKey": "credentials",
                    "secret": {
                      "name": "gcp-serviceaccount-credentials"
                    },
                    "usernameKey": "serviceaccount"
                  },
                  "IAMalias": "default",
                  "IAMmetadata": "default",
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "customEndpoint": {},
                  "path": "azure",
                  "serviceAccount": "vault-sa"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GCPAuthEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "gcpauthenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "gcpauthenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "gcpauthenginerole-sample"
                },
                "spec": {
                  "addGroupAliases": false,
                  "allowGCEInference": false,
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "boundInstanceGroups": [],
                  "boundLabels": [],
                  "boundProjects": {},
                  "boundRegions": [],
                  "boundServiceAccounts": {},
                  "boundZones": [],
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "maxJWTExp": "",
                  "name": "gcp-iam-role",
                  "path": "gcp",
                  "policies": [],
                  "tokenBoundCIDRs": [],
                  "tokenExplicitMaxTTL": "",
                  "tokenMaxTTL": "",
                  "tokenNoDefaultPolicy": false,
                  "tokenNumUses": 0,
                  "tokenPeriod": 0,
                  "tokenPolicies": [],
                  "tokenTTL": "",
                  "tokenType": "",
                  "type": "iam"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GitHubSecretEngineConfig",
                "metadata": {
                  "name": "githubsecretengineconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GitHubSecretEngineRole",
                "metadata": {
                  "name": "githubsecretenginerole-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Group",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "group-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "group",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "group-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "metadata": {
                    "team": "team-abc"
                  },
                  "policies": [
                    "team-abc-access"
                  ],
                  "type": "external"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupAlias",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "groupalias-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "groupalias",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "groupalias-sample"
                },
                "spec": {
                  "authEngineMountPath": "kubernetes",
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "groupName": "group-sample"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "JWTOIDCAuthEngineConfig",
                "metadata": {
                  "name": "azure-oidc-config"
                },
                "spec": {
                  "OIDCClientID": "000000000-0000-0000-0000-000000000",
                  "OIDCCredentials": {
                    "passwordKey": "oidc_client_secret",
                    "secret": {
                      "name": "oidccredentials"
                    },
                    "usernameKey": "oidc_client_id"
                  },
                  "OIDCDiscoveryURL": "https://login.microsoftonline.com/000000000-0000-0000-0000-000000000/v2.0",
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "oidc/azuread-oidc/"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "JWTOIDCAuthEngineRole",
                "metadata": {
                  "name": "azure-oidc-dev-role"
                },
                "spec": {
                  "OIDCScopes": [
                    "https://graph.microsoft.com/.default"
                  ],
                  "allowedRedirectURIs": [
                    "http://localhost:8250/oidc/callback",
                    "http://localhost:8200/ui/vault/auth/oidc/azuread-oidc/oidc/callback"
                  ],
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "groupsClaim": "groups",
                  "name": "dev-role",
                  "path": "oidc-aad/azuread-oidc",
                  "roleType": "oidc",
                  "tokenPolicies": [
                    "dev",
                    "prod"
                  ],
                  "userClaim": "email"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesAuthEngineConfig",
                "metadata": {
                  "name": "kubernetesauthengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "kube-authengine-mount-sample"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesAuthEngineRole",
                "metadata": {
                  "name": "database-engine-admin"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "kubernetes",
                  "policies": [
                    "database-engine-admin"
                  ],
                  "targetNamespaces": {
                    "targetNamespaceSelector": {
                      "matchLabels": {
                        "database-engine-admin": "true"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesSecretEngineConfig",
                "metadata": {
                  "name": "kubernetessecretengineconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesSecretEngineRole",
                "metadata": {
                  "name": "kubernetessecretenginerole-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "LDAPAuthEngineConfig",
                "metadata": {
                  "name": "ldapauthengineconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "LDAPAuthEngineGroup",
                "metadata": {
                  "name": "ldapauthenginegroup-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin",
                    "serviceAccount": {
                      "name": "default"
                    }
                  },
                  "name": "test-group",
                  "path": "ldap/test"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "PKISecretEngineConfig",
                "metadata": {
                  "name": "pkisecretengineconfig-sample"
                },
                "spec": {
                  "TTL": "8760h",
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "commonName": "pki-vault-demo.internal.io",
                  "crlDistributionPoints": [
                    "https://vault-internal.vault.svc:8200/v1/test-vault-config-operator/pki/crl\""
                  ],
                  "issuingCertificates": [
                    "https://vault-internal.vault.svc:8200/v1/test-vault-config-operator/pki/ca"
                  ],
                  "path": "test-vault-config-operator/pki",
                  "privateKeyType": "internal",
                  "type": "root"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "PKISecretEngineRole",
                "metadata": {
                  "name": "pkisecretenginerole-sample"
                },
                "spec": {
                  "allowGlobDomains": true,
                  "allowSubdomains": true,
                  "allowedDomains": [
                    "internal.io",
                    "pki-vault-demo.svc",
                    "example.com"
                  ],
                  "allowedOtherSans": "*",
                  "allowedURISans": [
                    "*-pki-vault-demo.apps.example.com"
                  ],
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "maxTTL": "8760h",
                  "path": "test-vault-config-operator/pki"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "PasswordPolicy",
                "metadata": {
                  "name": "simple-password-policy"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "passwordPolicy": "length = 20\nrule \"charset\" {\n  charset = \"abcdefghijklmnopqrstuvwxyz\"\n}"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Policy",
                "metadata": {
                  "name": "database-engine-admin"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "policy": "# mount database secrets engines\npath \"/sys/mounts/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n  allowed_parameters = {\n    \"type\" = [\"database\"]\n    \"*\"   = []\n  }\n}\n\n# tune database secrets engines\npath \"/sys/mounts/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database/tune\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n}\n\n# Configure database secrets engines\npath \"/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database/config/+\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n}\n\n# Configure database roles\npath \"/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database/roles/+\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n}\n"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuaySecretEngineConfig",
                "metadata": {
                  "name": "quaysecretengineconfig-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuaySecretEngineRole",
                "metadata": {
                  "name": "quaysecretenginerole-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuaySecretEngineStaticRole",
                "metadata": {
                  "name": "quaysecretenginestaticrole-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "RabbitMQSecretEngineConfig",
                "metadata": {
                  "name": "rabbitmqsecretengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "rabbitMQ-engine-admin"
                  },
                  "connectionURI": "https://test.com",
                  "leaseMaxTTL": 86400,
                  "leaseTTL": 86400,
                  "path": "vault-config-operator/rabbitmq"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "RabbitMQSecretEngineRole",
                "metadata": {
                  "name": "rabbitmqsecretenginerole-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "rabbitmq-engine-admin"
                  },
                  "path": "vault-config-operator/rabbitmq",
                  "tags": "administrator",
                  "vhostTopics": [
                    {
                      "topics": [
                        {
                          "permissions": {
                            "configure": ".*",
                            "read": ".*",
                            "write": ".*"
                          },
                          "topicName": "my-topic"
                        },
                        {
                          "permissions": {
                            "read": ".*"
                          },
                          "topicName": "my-read-topic"
                        }
                      ],
                      "vhostName": "/"
                    }
                  ],
                  "vhosts": [
                    {
                      "permissions": {
                        "configure": ".*",
                        "read": ".*",
                        "write": ".*"
                      },
                      "vhostName": "/"
                    },
                    {
                      "permissions": {
                        "read": "my-queue",
                        "write": "my-exchange"
                      },
                      "vhostName": "my-vhost"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "RandomSecret",
                "metadata": {
                  "name": "randomsecret-password"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "secret-writer"
                  },
                  "path": "test-vault-config-operator/kv",
                  "secretFormat": {
                    "passwordPolicyName": "simple-password-policy"
                  },
                  "secretKey": "password"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "SecretEngineMount",
                "metadata": {
                  "name": "database"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "path": "test-vault-config-operator",
                  "type": "database"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "VaultSecret",
                "metadata": {
                  "name": "vaultsecret-sample"
                },
                "spec": {
                  "output": {
                    "annotations": {
                      "refresh": "every-minute"
                    },
                    "labels": {
                      "app": "test-vault-config-operator"
                    },
                    "name": "randomsecret",
                    "stringData": {
                      "anotherpassword": "{{ .anotherrandomsecret.password }}",
                      "password": "{{ .randomsecret.password }}"
                    },
                    "type": "Opaque"
                  },
                  "refreshPeriod": "3m0s",
                  "vaultSecretDefinitions": [
                    {
                      "authentication": {
                        "path": "kubernetes",
                        "role": "secret-reader",
                        "serviceAccount": {
                          "name": "default"
                        }
                      },
                      "name": "randomsecret",
                      "path": "test-vault-config-operator/kv/randomsecret-password"
                    },
                    {
                      "authentication": {
                        "path": "kubernetes",
                        "role": "secret-reader",
                        "serviceAccount": {
                          "name": "default"
                        }
                      },
                      "name": "anotherrandomsecret",
                      "path": "test-vault-config-operator/kv/another-password"
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/vault-config-operator@sha256:ca58fbf75ceb8f09db43c134ec0f99eafb257e8e0dae80f7cb4298f37e12d486
          createdAt: "2026-01-06T13:45:44Z"
          description: This operator provides primitives to declaratively configure
            Hashicorp Vault.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: vault-config-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/vault-config-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AuditRequestHeader is the Schema for the auditrequestheaders
              API
            displayName: Audit Request Header
            kind: AuditRequestHeader
            name: auditrequestheaders.redhatcop.redhat.io
            version: v1alpha1
          - description: Audit is the Schema for the audits API
            displayName: Audit
            kind: Audit
            name: audits.redhatcop.redhat.io
            version: v1alpha1
          - description: AuthEngineMount is the Schema for the authenginemounts API
            displayName: Auth Engine Mount
            kind: AuthEngineMount
            name: authenginemounts.redhatcop.redhat.io
            version: v1alpha1
          - description: AzureAuthEngineConfig is the Schema for the azureauthengineconfigs
              API
            displayName: Azure Auth Engine Config
            kind: AzureAuthEngineConfig
            name: azureauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: AzureAuthEngineRole is the Schema for the azureauthengineroles
              API
            displayName: Azure Auth Engine Role
            kind: AzureAuthEngineRole
            name: azureauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - kind: AzureSecretEngineConfig
            name: azuresecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: AzureSecretEngineRole is the Schema for the azuresecretengineroles
              API
            displayName: Azure Secret Engine Role
            kind: AzureSecretEngineRole
            name: azuresecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: CertAuthEngineConfig is the Schema for the certauthengineconfigs
              API
            displayName: Cert Auth Engine Config
            kind: CertAuthEngineConfig
            name: certauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: CertAuthEngineRole is the Schema for the certauthengineroles
              API
            displayName: Cert Auth Engine Role
            kind: CertAuthEngineRole
            name: certauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: DatabaseSecretEngineConfig is the Schema for the databasesecretengineconfigs
              API
            displayName: Database Secret Engine Config
            kind: DatabaseSecretEngineConfig
            name: databasesecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: DatabaseSecretEngineRole is the Schema for the databasesecretengineroles
              API
            displayName: Database Secret Engine Role
            kind: DatabaseSecretEngineRole
            name: databasesecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: DatabaseSecretEngineStaticRole is the Schema for the databasesecretenginestaticroles
              API
            displayName: Database Secret Engine Static Role
            kind: DatabaseSecretEngineStaticRole
            name: databasesecretenginestaticroles.redhatcop.redhat.io
            version: v1alpha1
          - description: GCPAuthEngineConfig is the Schema for the gcpauthengineconfigs
              API
            displayName: GCPAuth Engine Config
            kind: GCPAuthEngineConfig
            name: gcpauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: GCPAuthEngineRole is the Schema for the gcpauthengineroles
              API
            displayName: GCPAuth Engine Role
            kind: GCPAuthEngineRole
            name: gcpauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: GitHubSecretEngineConfig is the Schema for the githubsecretengineconfigs
              API
            displayName: Git Hub Secret Engine Config
            kind: GitHubSecretEngineConfig
            name: githubsecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: GitHubSecretEngineRole is the Schema for the githubsecretengineroles
              API
            displayName: Git Hub Secret Engine Role
            kind: GitHubSecretEngineRole
            name: githubsecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: GroupAlias is the Schema for the groupaliases API
            displayName: Group Alias
            kind: GroupAlias
            name: groupaliases.redhatcop.redhat.io
            version: v1alpha1
          - description: Group is the Schema for the groups API
            displayName: Group
            kind: Group
            name: groups.redhatcop.redhat.io
            version: v1alpha1
          - description: JWTOIDCAuthEngineConfig is the Schema for the jwtoidcauthengineconfigs
              API
            displayName: JWTOIDCAuth Engine Config
            kind: JWTOIDCAuthEngineConfig
            name: jwtoidcauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: JWTOIDCAuthEngineRole is the Schema for the jwtoidcauthengineroles
              API
            displayName: JWTOIDCAuth Engine Role
            kind: JWTOIDCAuthEngineRole
            name: jwtoidcauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesAuthEngineConfig is the Schema for the kubernetesauthengineconfigs
              API
            displayName: Kubernetes Auth Engine Config
            kind: KubernetesAuthEngineConfig
            name: kubernetesauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesAuthEngineRole can be used to define a KubernetesAuthEngineRole
              for the kube-auth authentication method
            displayName: Kubernetes Auth Engine Role
            kind: KubernetesAuthEngineRole
            name: kubernetesauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesSecretEngineConfig is the Schema for the kubernetessecretengineconfigs
              API
            displayName: Kubernetes Secret Engine Config
            kind: KubernetesSecretEngineConfig
            name: kubernetessecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesSecretEngineRole is the Schema for the kubernetessecretengineroles
              API
            displayName: Kubernetes Secret Engine Role
            kind: KubernetesSecretEngineRole
            name: kubernetessecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: LDAPAuthEngineConfig is the Schema for the ldapauthengineconfigs
              API
            displayName: LDAPAuth Engine Config
            kind: LDAPAuthEngineConfig
            name: ldapauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: LDAPAuthEngineGroup is the Schema for the ldapauthenginegroups
              API
            displayName: LDAPAuth Engine Group
            kind: LDAPAuthEngineGroup
            name: ldapauthenginegroups.redhatcop.redhat.io
            version: v1alpha1
          - description: PasswordPolicy is the Schema for the passwordpolicies API
            displayName: Password Policy
            kind: PasswordPolicy
            name: passwordpolicies.redhatcop.redhat.io
            version: v1alpha1
          - description: PKISecretEngineConfig is the Schema for the pkisecretengineconfigs
              API
            displayName: PKISecret Engine Config
            kind: PKISecretEngineConfig
            name: pkisecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: PKISecretEngineRole is the Schema for the pkisecretengineroles
              API
            displayName: PKISecret Engine Role
            kind: PKISecretEngineRole
            name: pkisecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: Policy is the Schema for the policies API
            displayName: Policy
            kind: Policy
            name: policies.redhatcop.redhat.io
            version: v1alpha1
          - description: QuaySecretEngineConfig is the Schema for the quaysecretengineconfigs
              API
            displayName: Quay Secret Engine Config
            kind: QuaySecretEngineConfig
            name: quaysecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: QuaySecretEngineRole is the Schema for the quaysecretengineroles
              API
            displayName: Quay Secret Engine Role
            kind: QuaySecretEngineRole
            name: quaysecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: QuaySecretEngineStaticRole is the Schema for the quaysecretenginestaticroles
              API
            displayName: Quay Secret Engine Static Role
            kind: QuaySecretEngineStaticRole
            name: quaysecretenginestaticroles.redhatcop.redhat.io
            version: v1alpha1
          - description: RabbitMQSecretEngineConfig is the Schema for the rabbitmqsecretengineconfigs
              API
            displayName: Rabbit MQSecret Engine Config
            kind: RabbitMQSecretEngineConfig
            name: rabbitmqsecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: RabbitMQSecretEngineRole is the Schema for the rabbitmqsecretengineroles
              API
            displayName: Rabbit MQSecret Engine Role
            kind: RabbitMQSecretEngineRole
            name: rabbitmqsecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: RandomSecret is the Schema for the randomsecrets API
            displayName: Random Secret
            kind: RandomSecret
            name: randomsecrets.redhatcop.redhat.io
            version: v1alpha1
          - description: SecretEngineMount is the Schema for the secretenginemounts
              API
            displayName: Secret Engine Mount
            kind: SecretEngineMount
            name: secretenginemounts.redhatcop.redhat.io
            version: v1alpha1
          - description: VaultSecret is the Schema for the vaultsecrets API
            displayName: Vault Secret
            kind: VaultSecret
            name: vaultsecrets.redhatcop.redhat.io
            version: v1alpha1
        description: |
          This operator helps set up Vault Configurations. The main intent is to do so such that subsequently pods can consume the secrets made available.
          There are two main principles through all of the capabilities of this operator:

          1. high-fidelity API. The CRD exposed by this operator reflect field by field the Vault APIs. This is because we don't want to make any assumption on the kinds of configuration workflow that user will set up. That being said the Vault API is very extensive and we are starting with enough API coverage to support, we think, some simple and very common configuration workflows.
          2. attention to security (after all we are integrating with a security tool). To prevent credential leaks we give no permissions to the operator itself against Vault. All APIs exposed by this operator contains enough information to authenticate to Vault using a local service account (local to the namespace where the API exist). In other word for a namespace user to be abel to successfully configure Vault, a service account in that namespace must have been previously given the needed Vault permissions.

          Currently this operator supports the following CRDs:

          1. [Policy](https://github.com/redhat-cop/vault-config-operator#policy) Configures Vault [Policies](https://www.vaultproject.io/docs/concepts/policies)
          2. [KubernetesAuthEngineRole](https://github.com/redhat-cop/vault-config-operator#KubernetesAuthEngineRole) Configures a Vault [Kubernetes Authentication](https://www.vaultproject.io/docs/auth/kubernetes) Role
          3. [SecretEngineMount](https://github.com/redhat-cop/vault-config-operator#SecretEngineMount) Configures a Mount point for a [SecretEngine](https://www.vaultproject.io/docs/secrets)
          4. [DatabaseSecretEngineConfig](https://github.com/redhat-cop/vault-config-operator#DatabaseSecretEngineConfig) Configures a [Database Secret Engine](https://www.vaultproject.io/docs/secrets/databases) Connection
          5. [DatabaseSecretEngineRole](https://github.com/redhat-cop/vault-config-operator#DatabaseSecretEngineRole) Configures a [Database Secret Engine](https://www.vaultproject.io/docs/secrets/databases) Role
          6. [RandomSecret](https://github.com/redhat-cop/vault-config-operator#RandomSecret) Creates a random secret in a vault [kv Secret Engine](https://www.vaultproject.io/docs/secrets/kv) with one password field generated using a [PasswordPolicy](https://www.vaultproject.io/docs/concepts/password-policies)vault-config-operator
        displayName: Vault Config Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - secrets
        - gitops
        - policy
        - credentials
        links:
        - name: Vault Config Operator
          url: https://github.com/redhat-cop/vault-config-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/vault-config-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/redhat-cop/vault-config-operator@sha256:ca58fbf75ceb8f09db43c134ec0f99eafb257e8e0dae80f7cb4298f37e12d486
        - quay.io/community-operator-pipeline-prod/vault-config-operator@sha256:b2dc0c534d0cae9349d3cf2971d65725bad41fc3de8082ba43ec915152e08c8b
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 0.8.37
      entries:
      - name: vault-config-operator.v0.8.37
        version: 0.8.37
      - name: vault-config-operator.v0.8.36
        version: 0.8.36
      - name: vault-config-operator.v0.8.35
        version: 0.8.35
      - name: vault-config-operator.v0.8.34
        version: 0.8.34
      - name: vault-config-operator.v0.8.33
        version: 0.8.33
      - name: vault-config-operator.v0.8.32
        version: 0.8.32
      - name: vault-config-operator.v0.8.31
        version: 0.8.31
      - name: vault-config-operator.v0.8.30
        version: 0.8.30
      - name: vault-config-operator.v0.8.29
        version: 0.8.29
      - name: vault-config-operator.v0.8.28
        version: 0.8.28
      - name: vault-config-operator.v0.8.27
        version: 0.8.27
      - name: vault-config-operator.v0.8.25
        version: 0.8.25
      - name: vault-config-operator.v0.8.24
        version: 0.8.24
      - name: vault-config-operator.v0.8.23
        version: 0.8.23
      - name: vault-config-operator.v0.8.22
        version: 0.8.22
      - name: vault-config-operator.v0.8.21
        version: 0.8.21
      - name: vault-config-operator.v0.8.20
        version: 0.8.20
      - name: vault-config-operator.v0.8.19
        version: 0.8.19
      - name: vault-config-operator.v0.8.18
        version: 0.8.18
      - name: vault-config-operator.v0.8.17
        version: 0.8.17
      - name: vault-config-operator.v0.8.16
        version: 0.8.16
      - name: vault-config-operator.v0.8.15
        version: 0.8.15
      - name: vault-config-operator.v0.8.14
        version: 0.8.14
      - name: vault-config-operator.v0.8.13
        version: 0.8.13
      - name: vault-config-operator.v0.8.12
        version: 0.8.12
      - name: vault-config-operator.v0.8.11
        version: 0.8.11
      - name: vault-config-operator.v0.8.10
        version: 0.8.10
      - name: vault-config-operator.v0.8.9
        version: 0.8.9
      - name: vault-config-operator.v0.8.7
        version: 0.8.7
      - name: vault-config-operator.v0.8.5
        version: 0.8.5
      - name: vault-config-operator.v0.8.4
        version: 0.8.4
      - name: vault-config-operator.v0.8.3
        version: 0.8.3
      - name: vault-config-operator.v0.8.2
        version: 0.8.2
      - name: vault-config-operator.v0.8.0
        version: 0.8.0
      - name: vault-config-operator.v0.7.1
        version: 0.7.1
      - name: vault-config-operator.v0.6.5
        version: 0.6.5
      - name: vault-config-operator.v0.6.4
        version: 0.6.4
      - name: vault-config-operator.v0.6.3
        version: 0.6.3
      - name: vault-config-operator.v0.6.2
        version: 0.6.2
      - name: vault-config-operator.v0.6.1
        version: 0.6.1
      - name: vault-config-operator.v0.6.0
        version: 0.6.0
      - name: vault-config-operator.v0.5.1
        version: 0.5.1
      - name: vault-config-operator.v0.5.0
        version: 0.5.0
      - name: vault-config-operator.v0.4.1
        version: 0.4.1
      - name: vault-config-operator.v0.4.0
        version: 0.4.0
      - name: vault-config-operator.v0.3.1
        version: 0.3.1
      - name: vault-config-operator.v0.3.0
        version: 0.3.0
      - name: vault-config-operator.v0.2.0
        version: 0.2.0
      - name: vault-config-operator.v0.1.2
        version: 0.1.2
      - name: vault-config-operator.v0.1.1
        version: 0.1.1
      - name: vault-config-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: vault-config-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Kepler Operator Contributors
      provider-url: https://sustainable-computing.io/
    name: kepler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kepler-operator.v0.23.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kepler.system.sustainable.computing.io/v1alpha1",
                "kind": "PowerMonitor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "powermonitor",
                    "app.kubernetes.io/name": "powermonitor",
                    "app.kubernetes.io/part-of": "kepler-operator"
                  },
                  "name": "power-monitor"
                },
                "spec": {
                  "kepler": {
                    "config": {
                      "logLevel": "info"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          containerImage: quay.io/sustainable_computing_io/kepler-operator:0.23.0
          createdAt: "2025-11-27T12:36:15Z"
          description: Deploys and Manages Kepler on Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: |-
            [
              "powermonitorinternals.kepler.system.sustainable.computing.io"
            ]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/sustainable-computing-io/kepler-operator
          support: https://github.com/sustainable-computing-io/kepler-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PowerMonitorInternal is the Schema for internal/unsupported
              API
            displayName: PowerMonitorInternal
            kind: PowerMonitorInternal
            name: powermonitorinternals.kepler.system.sustainable.computing.io
            version: v1alpha1
          - description: PowerMonitor is the Schema for the powermonitors API
            displayName: PowerMonitor
            kind: PowerMonitor
            name: powermonitors.kepler.system.sustainable.computing.io
            version: v1alpha1
        description: |-
          Kepler (Kubernetes-based Efficient Power Level Exporter) is a Prometheus exporter that
          measures energy consumption metrics at the container, pod, and node level in Kubernetes clusters.

          ### Prerequisites
          To view the metrics exposed by Kepler, **[User Workload Monitoring](https://docs.redhat.com/documentation/openshift_container_platform/latest/html/monitoring/configuring-user-workload-monitoring)**
          MUST be enabled in your cluster.

          ### Documentation
          * [User Documentation](https://github.com/sustainable-computing-io/kepler-operator/blob/main/README.md)
          * [Developer Guide](https://github.com/sustainable-computing-io/kepler-operator/tree/main/docs/developer)

          ### Contributing
          * [Report Bugs](https://github.com/sustainable-computing-io/kepler-operator/issues/new?template=bug_report.md) - Found a bug? Let us know!
          * [Browse Issues](https://github.com/sustainable-computing-io/kepler-operator/issues) - See what we're working on

          ### License
          Licensed under [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
        displayName: Kepler
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Kepler
        - power
        - energy
        - monitoring
        links:
        - name: Installation Guide
          url: https://sustainable-computing.io/installation/community-operator/
        - name: Kepler Project
          url: https://sustainable-computing.io/
        maintainers:
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: vprashar@redhat.com
          name: Vibhu Prashar
        - email: vimalkum@redhat.com
          name: Vimal Kumar
        - email: kaliu@redhat.com
          name: Kaiyi Liu
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Kepler Operator Contributors
          url: https://sustainable-computing.io/
        relatedImages:
        - quay.io/sustainable_computing_io/kepler:v0.11.3
        - quay.io/brancz/kube-rbac-proxy:v0.19.0
        - quay.io/community-operator-pipeline-prod/kepler-operator:0.23.0
        - quay.io/sustainable_computing_io/kepler-operator:0.23.0
        version: 0.23.0
      entries:
      - name: kepler-operator.v0.23.0
        version: 0.23.0
      - name: kepler-operator.v0.22.0
        version: 0.22.0
      - name: kepler-operator.v0.21.0
        version: 0.21.0
      - name: kepler-operator.v0.20.0
        version: 0.20.0
      name: alpha
    defaultChannel: alpha
    packageName: kepler-operator
    provider:
      name: Kepler Operator Contributors
      url: https://sustainable-computing.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app: enmasse
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: amq-online
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-online.1.7.4-0.1657725339.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "admin.enmasse.io/v1beta1",
                "kind": "StandardInfraConfig",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "broker": {
                    "resources": {
                      "memory": "1Gi",
                      "storage": "5Gi"
                    },
                    "addressFullPolicy": "FAIL"
                  },
                  "router": {
                    "linkCapacity": 50,
                    "resources": {
                      "memory": "512Mi"
                    }
                  }
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta1",
                "kind": "BrokeredInfraConfig",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "broker": {
                    "resources": {
                      "memory": "4Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta2",
                "kind": "AddressPlan",
                "metadata": {
                  "name": "standard-small-queue"
                },
                "spec": {
                  "addressType": "queue",
                  "shortDescription": "Small Queue",
                  "resources": {
                    "router": 0.01,
                    "broker": 0.1
                  }
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta2",
                "kind": "AddressSpacePlan",
                "metadata": {
                  "name": "standard-small"
                },
                "spec": {
                  "addressSpaceType": "standard",
                  "infraConfigRef": "default",
                  "shortDescription": "Small Address Space Plan",
                  "resourceLimits": {
                    "router": 1.0,
                    "broker": 2.0,
                    "aggregate": 2.0
                  },
                  "addressPlans": [
                    "standard-small-queue"
                  ]
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta1",
                "kind": "AuthenticationService",
                "metadata": {
                  "name": "standard-authservice"
                },
                "spec": {
                  "type": "standard",
                  "standard": {
                    "storage": {
                      "claimName": "standard-authservice",
                      "deleteClaim": true,
                      "size": "1Gi",
                      "type": "persistent-claim"
                    }
                  }
                }
              },
              {
                "apiVersion": "enmasse.io/v1beta1",
                "kind": "AddressSpace",
                "metadata": {
                  "name": "myspace"
                },
                "spec": {
                  "plan": "standard-small",
                  "type": "standard"
                }
              },
              {
                "apiVersion": "enmasse.io/v1beta1",
                "kind": "Address",
                "metadata": {
                  "name": "myspace.myqueue"
                },
                "spec": {
                  "address": "myqueue",
                  "plan": "standard-small-queue",
                  "type": "queue"
                }
              },
              {
                "apiVersion": "user.enmasse.io/v1beta1",
                "kind": "MessagingUser",
                "metadata": {
                  "name": "myspace.user"
                },
                "spec": {
                  "authentication": {
                    "password": "ZW5tYXNzZQ==",
                    "type": "password"
                  },
                  "authorization": [
                    {
                      "addresses": [
                        "myqueue"
                      ],
                      "operations": [
                        "send",
                        "recv"
                      ]
                    }
                  ],
                  "username": "user"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator@sha256:2aaf87224a96aa56dc595e96d8e7ec8d138aaf20240afa25a1e805b405941355
          createdAt: "2019-02-19T00:00:00Z"
          description: Red Hat Integration - AMQ Online provides messaging as a managed
            service on OpenShift
          olm.substitutesFor: amq-online.1.7.4
          operators.openshift.io/capability: '["license-required"]'
          operators.openshift.io/valid-licenses: '["Red Hat AMQ", "Red Hat Integration"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: ""
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A messaging user that can connect to an Address Space
            displayName: Messaging User
            kind: MessagingUser
            name: messagingusers.user.enmasse.io
            version: v1beta1
          - description: A resource representing the available schema of plans and
              authentication services
            displayName: AddressSpaceSchema
            kind: AddressSpaceSchema
            name: addressspaceschemas.enmasse.io
            version: v1beta1
          - description: A group of messaging addresses that can be accessed via the
              same endpoint
            displayName: Address Space
            kind: AddressSpace
            name: addressspaces.enmasse.io
            version: v1beta1
          - description: A messaging address that can be used to send/receive messages
              to/from
            displayName: Address
            kind: Address
            name: addresses.enmasse.io
            version: v1beta1
          - description: Infrastructure configuration template for the standard address
              space type
            displayName: Standard Infra Config
            kind: StandardInfraConfig
            name: standardinfraconfigs.admin.enmasse.io
            version: v1beta1
          - description: Infrastructure configuration template for the brokered address
              space type
            displayName: Brokered Infra Config
            kind: BrokeredInfraConfig
            name: brokeredinfraconfigs.admin.enmasse.io
            version: v1beta1
          - description: Plan describing the resource usage of a given address type
            displayName: Address Plan
            kind: AddressPlan
            name: addressplans.admin.enmasse.io
            version: v1beta2
          - description: Plan describing the capabilities and resource limits of a
              given address space type
            displayName: Address Space Plan
            kind: AddressSpacePlan
            name: addressspaceplans.admin.enmasse.io
            version: v1beta2
          - description: Authentication service configuration available to address
              spaces.
            displayName: Authentication Service
            kind: AuthenticationService
            name: authenticationservices.admin.enmasse.io
            version: v1beta1
          - description: Console Service Singleton for deploying global console.
            displayName: Console Service
            kind: ConsoleService
            name: consoleservices.admin.enmasse.io
            version: v1beta1
        description: "**Red Hat Integration - AMQ Online** provides messaging as a
          managed service on OpenShift.\nWith Red Hat Integration - AMQ Online, administrators
          can configure a cloud-native,\nmulti-tenant messaging service either in
          the cloud or on premise.\nDevelopers can provision messaging using the Red
          Hat Integration - AMQ Online Console.\nMultiple development teams can provision
          the brokers and queues from the\nconsole, without requiring each team to
          install, configure, deploy,\nmaintain, or patch any software. \n\n**The
          core capabilities include:**\n\n  * **Built-in authentication and authorization**
          - Use the built-in authentication service or\n    plug in your own authentication
          service for authentication and\n    authorization of messaging clients.\n\n
          \ * **Self-service messaging for applications** - The service administrator
          deploys\n    and manages the messaging infrastructure, while applications
          can request\n    messaging resources regardless of the messaging infrastructure.\n\n
          \ * **Support for a wide variety of messaging patterns** - Choose between\n
          \   JMS-style messaging with strict guarantees, or messaging that supports\n
          \   a larger number of connections and higher throughput.\n\n## Post-installation
          tasks\n\nTo fully use Red Hat Integration - AMQ Online, you need to create
          a few\ninfrastructure components after the installation, including:\n\n
          \ * An authentication service\n  * Infrastructure configuration for the
          standard and brokered address space\n  * Address and address space plans\n
          \ * (Optional) Create RBAC roles to allow users to discover available plans\n
          \ * (Optional) Create RBAC roles to allow users to self-manage addresses
          and\n    address spaces.\n\nFor a complete overview of how to configure
          Red Hat Integration - AMQ Online, see\n[Configuring Red Hat Integration
          - AMQ Online](https://access.redhat.com/documentation/en-us/red_hat_amq/7.7/html/installing_and_managing_amq_online_on_openshift/configuring-messaging).\n\n###
          Quickstart infrastructure configuration\n\nIf you simply want to get started
          quickly, you can import the following\nYAML by saving the content to a file
          and apply it by running the \n`oc apply -f <file>` command. You can also
          split the content (at the `---` marker)\nand import the single YAML document
          using the Web UI: \n\n~~~yaml\n---\napiVersion: admin.enmasse.io/v1beta1\nkind:
          StandardInfraConfig\nmetadata:\n  name: default\n---\napiVersion: admin.enmasse.io/v1beta2\nkind:
          AddressPlan\nmetadata:\n  name: standard-small-queue\nspec:\n  addressType:
          queue\n  resources:\n    router: 0.01\n    broker: 0.1\n---\napiVersion:
          admin.enmasse.io/v1beta2\nkind: AddressSpacePlan\nmetadata:\n  name: standard-small\nspec:\n
          \ addressSpaceType: standard\n  infraConfigRef: default\n  addressPlans:\n
          \ - standard-small-queue\n  resourceLimits:\n    router: 2.0\n    broker:
          3.0\n    aggregate: 4.0\n---\napiVersion: admin.enmasse.io/v1beta1\nkind:
          AuthenticationService\nmetadata:\n  name: standard-authservice\nspec:\n
          \ type: standard\n  standard:\n    storage:\n      claimName: standard-authservice\n
          \     deleteClaim: true\n      size: 1Gi\n      type: persistent-claim\n~~~\n\n###
          Create RBAC roles to allow users to discover available plans\n\nFor users
          to discover the available plans, cluster-wide roles to read the available\nschema
          can be created.  Import the following YAML by saving the content to a file
          and apply it by running the \n`oc apply -f <file>` command. You can also
          split the content (at the `---` marker)\nand import the single YAML document
          using the Web UI: \n\n~~~yaml\n---\napiVersion: rbac.authorization.k8s.io/v1\nkind:
          ClusterRole\nmetadata:\n  name: enmasse.io:schema\n  labels:\n    app: enmasse\nrules:\n
          \ - apiGroups: [ \"enmasse.io\" ]\n    resources: [ \"addressspaceschemas\"
          ]\n    verbs: [ \"get\", \"list\", \"watch\" ]\n---\napiVersion: rbac.authorization.k8s.io/v1\nkind:
          ClusterRoleBinding\nmetadata:\n  name: \"enmasse.io:schema\"\n  labels:\n
          \   app: enmasse\nroleRef:\n  apiGroup: rbac.authorization.k8s.io\n  kind:
          ClusterRole\n  name: enmasse.io:schema\nsubjects:\n- kind: Group\n  name:
          system:authenticated\n~~~\n\n### Creating infrastructure using the Web UI\n\nYou
          must create a new instance of each of the following custom resources. You
          can\nuse the example data directly, which is provided when using the\nWeb
          UI:\n\n  * *Authentication Service* – Create an authentication service.\n
          \ * *Brokered Infra Config* – Create the broker infrastructure configuration.\n
          \ * *Standard Infra Config* – Create the standard infrastructure\n    configuration.\n\nYou
          must also create at least one address space plan and one address plan.\n\n*Note*:
          The name of the address space plan and address plan is required\nlater when
          creating new addresses. Some examples use specific plan\nnames, which might
          not be available in your environment. You can\ncreate those plans, or edit
          the examples to use different plan names.\n\n## Configuration for messaging
          tenants\n\nWhile service administrators perform the infrastructure configuration,
          the following\nresources are for the actual users of the system, the messaging
          tenants.\n\nYou need to create those resources to satisfy your particular
          use case.\n\n  * *Address space* – A container for addresses\n  * *Address*
          – A messaging address (address, topic, queue, and so on)\n  * *Messaging
          user* – Manages access to an address\n"
        displayName: Red Hat Integration - AMQ Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - amq
        - messaging
        - amqp
        - iot
        - mqtt
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/7.7/html/using_amq_online_on_openshift/index
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-broker@sha256:1ec0437bbd82722148fdbb02dc55682b114c311cd6f521a8bc621a8c1cb4b32b
        - registry.redhat.io/amq7/amq-online-1-address-space-controller@sha256:9acc555c8e869aec7d72f53b60320e1a96cc82d748638e0d50970837229fdbee
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator@sha256:2aaf87224a96aa56dc595e96d8e7ec8d138aaf20240afa25a1e805b405941355
        - registry.redhat.io/amq7/amq-online-1-broker-plugin@sha256:2466a336c0d78b196635de3fad636aeff2d9265839f7271b8ef94f3ba97d9bc0
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator-metadata@sha256:d6d0e71f5451e8255edfff87ef28ba7743fe7057efd53b25bbbd01bf9e1d0307
        - registry.redhat.io/amq7/amq-online-1-console-server-rhel7@sha256:1dcb3d0cc7bc6e84f4f96962ff88849511b7a7686a1f5dbd9300c4c2c8c05e2f
        - registry.redhat.io/amq7/amq-online-1-auth-plugin@sha256:68926f434b2f6ce4d9698938bc3c53d514c21c3f76c73b6b4cdf7fcf51f7cb0d
        - registry.redhat.io/amq7/amq-online-1-console-init@sha256:0970804909b82fdc3d4e7d5d88280e41157d743107de8bfa2d1baa1367543176
        - registry.redhat.io/amq7/amq-interconnect@sha256:5ebd4c4a0ed0db2725ae466550c915531b32933c420344cc2083c616da3f326f
        - registry.redhat.io/amq7/amq-online-1-none-auth-service@sha256:a013fb1806c002b408a7753ff943cee24fbcdf8a657eff1e9582c42b5a7b0844
        - registry.redhat.io/amq7/amq-online-1-topic-forwarder@sha256:de33a701339d91a4e9275f7cf65f917ff75368a59b8ab36dd66c90bc306875aa
        - registry.redhat.io/amq7/amq-online-1-standard-controller@sha256:070349af30cec52fa8efc185fc940077a64bb40e3e36310d7cc6e39ce0971436
        - registry.redhat.io/openshift3/oauth-proxy@sha256:59b20f23c03d0012ec5c95c4725892ee64277c22dedc9d0a90a7b6b0bc80fc72
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6d489a7897bd831ec273034f1ff0e223427a40afd01b9835ebb020a8bf9ddc66
        - registry.redhat.io/redhat-sso-7/sso73-openshift@sha256:18d15980f28f0d0c6b8582131a1f062d84463577512875b5391a612c3d7d1096
        - registry.redhat.io/amq7/amq-online-1-agent@sha256:f98ed8ee97ac59d8fdd40ec8b2c063a5afd360a3e183057c186e7a77a32801ee
        version: 1.7.4+0.1657725339.p
      entries:
      - name: amq-online.1.7.4
        version: 1.7.4
      - name: amq-online.1.7.4-0.1657725339.p
        version: 1.7.4+0.1657725339.p
      - name: amq-online.1.7.3
        version: 1.7.3
      - name: amq-online.1.7.2
        version: 1.7.2
      - name: amq-online.1.7.1
        version: 1.7.1
      - name: amq-online.1.7.1-0.1628610187.p
        version: 1.7.1+0.1628610187.p
      - name: amq-online.1.7.0
        version: 1.7.0
      name: stable
    defaultChannel: stable
    packageName: amq-online
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: tang-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tang-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "daemons.redhat.com/v1alpha1",
                "kind": "TangServer",
                "metadata": {
                  "finalizers": [
                    "finalizer.daemons.tangserver.redhat.com"
                  ],
                  "name": "tangserver",
                  "namespace": "nbde"
                },
                "spec": {
                  "healthScript": "/usr/bin/tangd-health-check",
                  "image": "registry.redhat.io/rhel9/tang",
                  "keyPath": "/var/db/tang",
                  "persistentVolumeClaim": "tangserver-pvc",
                  "replicas": 1,
                  "version": "latest"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:f43c96035f43040b3644e37119a3b35fc433f366d4b636459d1b9b02a05b5d3d
          createdAt: 2023-11-23T12:49:40
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TangServer is the Schema for the tangservers API
            displayName: Tang Server
            kind: TangServer
            name: tangservers.daemons.redhat.com
            version: v1alpha1
        description: NBDE Tang Server operator allows Tang Server deployment on OpenShift
        displayName: NBDE Tang Server
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nbde
        - tang
        links:
        - name: Tang Operator
          url: https://github.com/latchset/tang-operator
        maintainers:
        - email: sarroutb@redhat.com
          name: Sergio Arroutbi Braojos
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/nbde-tang-server/tang-operator-bundle@sha256:a77d39ded03271f2deb8b438abd4328a1846ee0d4886cce14d869ba61f84d600
        - registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:f43c96035f43040b3644e37119a3b35fc433f366d4b636459d1b9b02a05b5d3d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:97cade2c1ee468261aec5400728c8d44de387b459134aec7a4c3b5ec5a335d2c
        version: 1.0.0
      entries:
      - name: tang-operator.v1.0.0
        version: 1.0.0
      name: alpha
    - currentCSV: tang-operator.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "daemons.redhat.com/v1alpha1",
                "kind": "TangServer",
                "metadata": {
                  "finalizers": [
                    "finalizer.daemons.tangserver.redhat.com"
                  ],
                  "name": "tangserver",
                  "namespace": "nbde"
                },
                "spec": {
                  "healthScript": "/usr/bin/tangd-health-check",
                  "image": "registry.redhat.io/rhel9/tang",
                  "keyPath": "/var/db/tang",
                  "persistentVolumeClaim": "tangserver-pvc",
                  "replicas": 1,
                  "version": "latest"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:1cb2f794689817282ac570cacb106d75a2751a1926d89d3b83b619e02d869e5e
          createdAt: 2024-12-04T19:01:27
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TangServer is the Schema for the tangservers API
            displayName: Tang Server
            kind: TangServer
            name: tangservers.daemons.redhat.com
            version: v1alpha1
        description: NBDE Tang Server operator allows Tang Server deployment on OpenShift
        displayName: NBDE Tang Server
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nbde
        - tang
        links:
        - name: Tang Operator
          url: https://github.com/latchset/tang-operator
        maintainers:
        - email: sarroutb@redhat.com
          name: Sergio Arroutbi Braojos
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/nbde-tang-server/tang-operator-bundle@sha256:a6f3a3a8aa52de4441ef3249a76dcff1b6b6defba417a9fdbba37eb458adee04
        - registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:1cb2f794689817282ac570cacb106d75a2751a1926d89d3b83b619e02d869e5e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1172e150fff22c5eeab572f26961f3f53fbf896ee76d08c7503cfe2777c55458
        version: 1.0.3
      entries:
      - name: tang-operator.v1.0.3
        version: 1.0.3
      name: stable
    defaultChannel: alpha
    packageName: tang-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: SAP LinuxLab - Red Hat
      provider-url: https://github.com/sap-linuxlab
    name: sap-hana-express-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sap-hana-express-operator.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "db.sap-redhat.io/v1alpha1",
                "kind": "HanaExpress",
                "metadata": {
                  "name": "hanaexpress-sample"
                },
                "spec": {
                  "credential": {
                    "key": "hxepasswd.json",
                    "name": "hxepasswd"
                  },
                  "pvcSize": "1Gi"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/redhat-sap-cop/sap-hanaexpress-operator:0.1.4
          createdAt: "2023-07-16T20:53:02Z"
          description: Manage the lifecycle of SAP Hana Express
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HanaExpress is the Schema for the hanaexpresses API
            displayName: Hana Express
            kind: HanaExpress
            name: hanaexpresses.db.sap-redhat.io
            version: v1alpha1
        description: Operator for managing the lifecycle of SAP Hana Express on Kubernetes
          platform
        displayName: SAP Hana Express Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Database
        - SAP
        links:
        - name: Sap Hana Express Operator
          url: https://github.com/redhat-sap/sap-hana-express-operator
        maintainers:
        - email: mjiao@redhat.com
          name: RedHat@SAPLinuxLab
        maturity: alpha
        provider:
          name: SAP LinuxLab - Red Hat
          url: https://github.com/sap-linuxlab
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/openshift-community-operators/sap-hana-express-operator@sha256:0fa4f29bd7669690be87a08405bed95d3ead2293a125b28149de2b10b02d2cd6
        - quay.io/redhat-sap-cop/sap-hanaexpress-operator:0.1.4
        version: 1.0.2
      entries:
      - name: sap-hana-express-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: sap-hana-express-operator
    provider:
      name: SAP LinuxLab - Red Hat
      url: https://github.com/sap-linuxlab
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/limitador-operator
    name: limitador-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: limitador-operator.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "limitador.kuadrant.io/v1alpha1",
                "kind": "Limitador",
                "metadata": {
                  "name": "limitador-sample"
                },
                "spec": {
                  "limits": [
                    {
                      "conditions": [
                        "get_toy == 'yes'"
                      ],
                      "max_value": 2,
                      "namespace": "toystore-app",
                      "seconds": 30,
                      "variables": []
                    }
                  ],
                  "listener": {
                    "grpc": {
                      "port": 8081
                    },
                    "http": {
                      "port": 8080
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/limitador-operator:v0.5.0
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/limitador-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Limitador
            name: limitadors.limitador.kuadrant.io
            version: v1alpha1
        description: The Limitador operator installs and maintains limitador instances
        displayName: Limitador
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - rate-limit
        links:
        - name: Limitador Operator
          url: https://github.com/Kuadrant/limitador-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: asnaps@redhat.com
          name: Alex Snaps
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/limitador-operator
        relatedImages:
        - quay.io/kuadrant/limitador:v1.2.0
        - quay.io/openshift-community-operators/limitador-operator@sha256:7aa0a4fe55e5e099e2e6e4c2cd44b9bfeba69d8cfade10500ccba3092fb60dd2
        - quay.io/kuadrant/limitador-operator:v0.5.0
        version: 0.5.0
      entries:
      - name: limitador-operator.v0.5.0
        version: 0.5.0
      - name: limitador-operator.v0.4.0
        version: 0.4.0
      - name: limitador-operator.v0.3.0
        version: 0.3.0
      name: alpha
    - currentCSV: limitador-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "limitador.kuadrant.io/v1alpha1",
                "kind": "Limitador",
                "metadata": {
                  "name": "limitador-sample"
                },
                "spec": {
                  "limits": [
                    {
                      "conditions": [
                        "get_toy == 'yes'"
                      ],
                      "max_value": 2,
                      "name": "toy_get_route",
                      "namespace": "toystore-app",
                      "seconds": 30,
                      "variables": []
                    }
                  ],
                  "listener": {
                    "grpc": {
                      "port": 8081
                    },
                    "http": {
                      "port": 8080
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/limitador-operator:v0.11.0
          createdAt: "2024-10-02T10:46:31Z"
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/limitador-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Limitador
            name: limitadors.limitador.kuadrant.io
            version: v1alpha1
        description: The Limitador operator installs and maintains limitador instances
        displayName: Limitador
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - rate-limit
        links:
        - name: Limitador Operator
          url: https://github.com/Kuadrant/limitador-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: asnaps@redhat.com
          name: Alex Snaps
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/limitador-operator
        relatedImages:
        - quay.io/kuadrant/limitador:v1.6.0
        - quay.io/community-operator-pipeline-prod/limitador-operator@sha256:450f9bf43b57b83e9975a1865981af22e28c725193573354d1180f406887664a
        - quay.io/kuadrant/limitador-operator:v0.11.0
        version: 0.11.0
      entries:
      - name: limitador-operator.v0.11.0
        version: 0.11.0
      - name: limitador-operator.v0.10.0
        version: 0.10.0
      - name: limitador-operator.v0.6.0
        version: 0.6.0
      - name: limitador-operator.v0.5.0
        version: 0.5.0
      - name: limitador-operator.v0.4.0
        version: 0.4.0
      - name: limitador-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: limitador-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/limitador-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: apicurio-registry-3
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-registry-3.v3.1.0-r1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry3",
                "metadata": {
                  "name": "simple"
                },
                "spec": {
                  "app": {
                    "ingress": {
                      "host": "simple-app.apps.cluster.example"
                    }
                  },
                  "ui": {
                    "ingress": {
                      "host": "simple-ui.apps.cluster.example"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/apicurio/apicurio-registry-rhel9-operator@sha256:ce7f4559a6942e9f41205fe6da95fdf333ff108bd41961a5bd62879021f30d20
          createdAt: "2025-10-15"
          description: Deploy and manage Red Hat build of Apicurio Registry 3 on OpenShift.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations",
            "Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/Apicurio/apicurio-registry/tree/main/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry3 represents an instance of Red Hat build
              of Apicurio Registry version 3.
            displayName: Apicurio Registry 3
            kind: ApicurioRegistry3
            name: apicurioregistries3.registry.apicur.io
            version: v1
        description: |
          ## Red Hat build of Apicurio Registry 3

          Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Allows you manage event schemas and API designs using the Apicurio Registry web console, REST API, Maven plug-in, or Java client
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL, MySQL\*, SQL Server\*, in-memory\*
          - Compatible with Confluent APIs
          - Runs on a lightweight Quarkus platform

          _Note: Storage options marked with * have not yet been tested by Red Hat for production deployments._

          ## Red Hat build of Apicurio Registry 3 Operator

          Provides a quick and easy way to deploy and manage Red Hat build of Apicurio Registry 3 on OpenShift.

          **Features**
          - Supports installation and configuration of Red Hat build of Apicurio Registry 3
          - Perform a rolling upgrade of Red Hat build of Apicurio Registry 3

          ## Prerequisites

          This operator does not deploy storage for Red Hat build of Apicurio Registry 3. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Red Hat build of Apicurio Registry 3 and Apicurio Registry 3 Operator are licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry/blob/main/LICENSE)
        displayName: Red Hat build of Apicurio Registry 3
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        - email: jsenko+apicurio@redhat.com
          name: Jakub Senko
        - email: ewittman+apicurio@redhat.com
          name: Eric Wittmann
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/apicurio/apicurio-registry-ui-rhel9@sha256:9daa045d14192754950aabb4c0a741f29ff4f0f431cb19c12bd1268ad21de639
        - registry.redhat.io/apicurio/apicurio-registry-3-operator-bundle@sha256:0c29e835e253ff6bc0dfb2a9ca01e94756c8995f3396ddca07dde95c9e16e633
        - registry.redhat.io/apicurio/apicurio-registry-rhel9-operator@sha256:ce7f4559a6942e9f41205fe6da95fdf333ff108bd41961a5bd62879021f30d20
        - registry.redhat.io/apicurio/apicurio-registry-rhel9@sha256:fb3fdbb49017c86c25058c824d833be061cd4f51cfe6b43ab5d7f799f0a87e78
        version: 3.1.0-r1
      entries:
      - name: apicurio-registry-3.v3.1.0-r1
        version: 3.1.0-r1
      - name: apicurio-registry-3.v3.0.15-r1
        version: 3.0.15-r1
      - name: apicurio-registry-3.v3.0.9-r3
        version: 3.0.9-r3
      - name: apicurio-registry-3.v3.0.9-r2
        version: 3.0.9-r2
      - name: apicurio-registry-3.v3.0.9-r1
        version: 3.0.9-r1
      - name: apicurio-registry-3.v3.0.7-r2
        version: 3.0.7-r2
      - name: apicurio-registry-3.v3.0.7-r1
        version: 3.0.7-r1
      - name: apicurio-registry-3.v3.0.6-beta.r1
        version: 3.0.6-beta.r1
      - name: apicurio-registry-3.v3.0.6-beta.r1-0.1740495889.p
        version: 3.0.6-beta.r1+0.1740495889.p
      - name: apicurio-registry-3.v3.0.6-beta
        version: 3.0.6-beta
      name: 3.x
    defaultChannel: 3.x
    packageName: apicurio-registry-3
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/stolostron/multicluster-global-hub
    name: multicluster-global-hub-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-global-hub-operator.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "global-hub.open-cluster-management.io/v1alpha1",
                "kind": "ManagedClusterMigration",
                "metadata": {
                  "name": "migration-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha1",
                "kind": "MulticlusterGlobalHubAgent",
                "metadata": {
                  "name": "multiclusterglobalhubagent"
                },
                "spec": {
                  "transportConfigSecretName": "transport-config"
                }
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha4",
                "kind": "MulticlusterGlobalHub",
                "metadata": {
                  "name": "multiclusterglobalhub"
                },
                "spec": {
                  "dataLayer": {
                    "postgres": {
                      "retention": "18m"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-operator-globalhub-1-6@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
          createdAt: "2025-08-27T07:10:21Z"
          description: Manages the installation and upgrade of the Multicluster Global
            Hub.
          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: "true"
          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"
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1alpha4",
            "kind":"MulticlusterGlobalHub","metadata":{"name":"multiclusterglobalhub","namespace":"multicluster-global-hub"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-global-hub
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/multicluster-global-hub
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterMigration is a global hub resource that allows
              you to migrate managed clusters from one hub to another
            displayName: Managed Cluster Migration
            kind: ManagedClusterMigration
            name: managedclustermigrations.global-hub.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHubAgent is the Schema for the multiclusterglobalhubagents
              API
            displayName: Multicluster Global Hub Agent
            kind: MulticlusterGlobalHubAgent
            name: multiclusterglobalhubagents.operator.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHub defines the configuration for an instance
              of the multiCluster global hub
            displayName: Multicluster Global Hub
            kind: MulticlusterGlobalHub
            name: multiclusterglobalhubs.operator.open-cluster-management.io
            version: v1alpha4
        description: |
          The Multicluster Global Hub Operator contains the components of multicluster global hub. The Operator deploys all of the required components for global multicluster management. The components include `multicluster-global-hub-manager` and `multicluster-global-hub-grafana` in the global hub cluster and `multicluster-global-hub-agent` in the managed hub clusters.
          The Operator also deploys the strimzi kafka and crunchy postgres if you do not bring your own kafka and postgres.

          ## Prerequisites
          - Red Hat Advanced Cluster Management for Kubernetes needs to be installed. You can find the support matrix in the official document.

          ## How to Install
          Install the Multicluster Global Hub Operator by following the instructions that are displayed after you select the Install button.
          A pod will be created in `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                             READY   STATUS    RESTARTS   AGE
          multicluster-global-hub-operator-5ccbbc878d-98fdp                1/1     Running   0          19s
          ```
          The operator is now providing new Custom Resources Definitions: `multiclusterglobalhubs.operator.open-cluster-management.io`

          ## Using the Multicluster Global Hub Operator
          After installed the operator, create an instance of the MulticlusterGlobalHub resource to instantiate the Multicluster Global Hub.
          Once an instance of the MulticlusterGlobalHub is created, the following pods are created in the `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                    READY   STATUS    RESTARTS   AGE
          kafka-entity-operator-68dcd446f4-pg257                  3/3     Running   0          19m
          kafka-kraft-0                                           1/1     Running   0          20m
          kafka-kraft-1                                           1/1     Running   0          20m
          kafka-kraft-2                                           1/1     Running   0          20m
          multicluster-global-hub-grafana-5b7cfb6876-5rcnn        2/2     Running   0          19m
          multicluster-global-hub-grafana-5b7cfb6876-wq99v        2/2     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-hzfvw        1/1     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-wbkzl        1/1     Running   0          19m
          multicluster-global-hub-operator-768bd5bd4f-59xjd       1/1     Running   0          22m
          multicluster-global-hub-postgresql-0                    2/2     Running   0          22m
          strimzi-cluster-operator-v0.43.0-6fff49d5b5-5j22r       1/1     Running   0          22m
          ```
          ## Documentation
          For documentation about installing and using the Multicluster GlobalHub Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [Multicluser GlobalHub Documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html-single/multicluster_global_hub/index#doc-wrapper) in the Red Hat Advanced Cluster Management
          documentation.

          ## Support & Troubleshooting
          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: Multicluster Global Hub Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multicluster-global-hub
        - multiple-hubs
        links:
        - name: Multicluster Global Hub Operator
          url: https://github.com/stolostron/multicluster-global-hub
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: stable
        provider:
          name: Red Hat, Inc
          url: https://github.com/stolostron/multicluster-global-hub
        relatedImages:
        - quay.io/community-operator-pipeline-prod/multicluster-global-hub-operator:1.6.0
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/glo-grafana-globalhub-1-6@sha256:870866e86ce870ad8d97ee060483e3c9042076f4ec987d4769e09d8daddd963d
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-agent-globalhub-1-6@sha256:903aea3e61d68f13d60c33f98bc9fa220eb8426ccedb43948015b6dfd50e8cf0
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-manager-globalhub-1-6@sha256:98273949e754fc81aa9240b507ab13e12fe2e9ecb6dafe601756567af18a077c
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-operator-globalhub-1-6@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/postgres-exporter-globalhub-1-6@sha256:2a68afbc8b4208e8aa16e7f0a8266246a16a2e97d4d6f930318888fc1e0c7306
        - quay.io/stolostron/postgresql-16@sha256:db2f73275f9cc0f2d262fadb8e8a5da72b089f9d22f7c859bb1364d9f9a8b622
        version: 1.6.0
      entries:
      - name: multicluster-global-hub-operator.v1.6.0
        version: 1.6.0
      name: release-1.6
    defaultChannel: release-1.6
    packageName: multicluster-global-hub-operator
    provider:
      name: Red Hat, Inc
      url: https://github.com/stolostron/multicluster-global-hub
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Internal
      provider-url: redhat.com
    name: l5-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: l5-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pets.bestie.com/v1",
                "kind": "Bestie",
                "metadata": {
                  "name": "bestie"
                },
                "spec": {
                  "image": "quay.io/opdev/bestie",
                  "maxReplicas": 10,
                  "size": 3,
                  "version": "1.3"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Application Runtime
          certified: "false"
          containerImage: quay.io/opdev/l5-operator:v0.0.3
          createdAt: "2023-06-27T16:56:10Z"
          description: L5 Operator is a demo operator that aims to demonstrate level
            5 capabilities for web applications.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          relatedImages: quay.io/opdev/bestie@sha256:0e99ada2b1de19043845dd9076789584aeddc2646402e5f0987dd00424be1ee7
          repository: https://github.com/opdev/l5-operator-demo
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Bestie is the Schema for the besties API.
            displayName: Bestie
            kind: Bestie
            name: besties.pets.bestie.com
            version: v1
        description: |
          ## Usage
          The L5 operator is meant to demonstrate a minimum viable prototype of all capability levels outilned in the operator framework. The L5 operator is compatible with both Kubernetes and OpenShift clusters. When running on vanilla kubernetes a few prerequisites need to be kept in mind which may not be available out of the box. These include an ingress controller and a prometheus operator for level 4 capability. The L5 operator also depends on the Crunchy Data PostgreSQL operator. On openshift when installing via the Operator Lifecycle Manager, this will automatically be installed when installing the operator via the embdeded operator hub. The Operator Lifecycle Manager is also available for vanilla kubernetes however it may not be installed out of the box. In this case the Crunchy Data PostgreSQL operator must be installed manually. The Crunchy Data PostgreSQL operator can be installed on vanilla kuberentes using the [instructions provided by Crunchy Data](https://access.crunchydata.com/documentation/postgres-operator/4.7.5/installation/postgres-operator/) More documentation and examples can be found on [github](https://github.com/opdev/l5-operator-demo).
        displayName: L5 Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - l5-operator
        links:
        - name: L5 Operator
          url: https://opdev.github.io/l5-operator-demo/
        maintainers:
        - email: partnereng@redhat.com
          name: OpDev Team
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat Internal
          url: redhat.com
        relatedImages:
        - quay.io/opdev/l5-operator:v0.0.3
        - quay.io/openshift-community-operators/l5-operator@sha256:e4cb13801a80753c99a47f009ca0a29416b3e04afe5314d07d97c2464a6f0d75
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.0.3
      entries:
      - name: l5-operator.v0.0.3
        version: 0.0.3
      - name: l5-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: l5-operator
    provider:
      name: Red Hat Internal
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: fence-agents-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fence-agents-remediation.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediation",
                "metadata": {
                  "name": "worker-1"
                },
                "spec": {
                  "agent": "fence_ipmilan",
                  "nodeSecretNames": {
                    "master-0": "fence-agents-credentials-master0",
                    "master-1": "fence-agents-credentials-master1",
                    "master-2": "fence-agents-credentials-master2",
                    "worker-0": "fence-agents-credentials-worker0",
                    "worker-1": "fence-agents-credentials-worker1",
                    "worker-2": "fence-agents-credentials-worker2"
                  },
                  "nodeparameters": {
                    "--ipport": {
                      "master-0": "6230",
                      "master-1": "6231",
                      "master-2": "6232",
                      "worker-0": "6233",
                      "worker-1": "6234",
                      "worker-2": "6235"
                    }
                  },
                  "remediationStrategy": "ResourceDeletion",
                  "retrycount": 5,
                  "retryinterval": "5s",
                  "sharedSecretName": "fence-agents-credentials-shared",
                  "sharedparameters": {
                    "--action": "reboot",
                    "--ip": "192.168.111.1",
                    "--lanplus": "",
                    "--username": "admin"
                  },
                  "timeout": "60s"
                }
              },
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediationTemplate",
                "metadata": {
                  "name": "fenceagentsremediationtemplate-default"
                },
                "spec": {
                  "template": {
                    "spec": {
                      "agent": "fence_ipmilan",
                      "nodeSecretNames": {
                        "master-0": "fence-agents-credentials-master0",
                        "master-1": "fence-agents-credentials-master1",
                        "master-2": "fence-agents-credentials-master2",
                        "worker-0": "fence-agents-credentials-worker0",
                        "worker-1": "fence-agents-credentials-worker1",
                        "worker-2": "fence-agents-credentials-worker2"
                      },
                      "nodeparameters": {
                        "--ipport": {
                          "master-0": "6230",
                          "master-1": "6231",
                          "master-2": "6232",
                          "worker-0": "6233",
                          "worker-1": "6234",
                          "worker-2": "6235"
                        }
                      },
                      "remediationStrategy": "ResourceDeletion",
                      "retrycount": 5,
                      "retryinterval": "5s",
                      "sharedSecretName": "fence-agents-credentials-shared",
                      "sharedparameters": {
                        "--action": "reboot",
                        "--ip": "192.168.111.1",
                        "--lanplus": "",
                        "--username": "admin"
                      },
                      "timeout": "60s"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: ""
          createdAt: "2025-09-08 09:19:00"
          description: Fence Agents Remediation Operator uses well-known agents to
            fence and remediate unhealthy nodes. The remediation includes rebooting
            the unhealthy node using a fence agent, and then evicting workloads from
            the unhealthy node.
          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: "true"
          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.skipRange: '>=0.5.0 <0.6.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/fence-agents-remediation
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FenceAgentsRemediation is the Schema for the fenceagentsremediations
              API
            displayName: Fence Agents Remediation
            kind: FenceAgentsRemediation
            name: fenceagentsremediations.fence-agents-remediation.medik8s.io
            version: v1alpha1
          - description: FenceAgentsRemediationTemplate is the Schema for the fenceagentsremediationtemplates
              API
            displayName: Fence Agents Remediation Template
            kind: FenceAgentsRemediationTemplate
            name: fenceagentsremediationtemplates.fence-agents-remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Fence Agents Remediation (FAR) is a Kubernetes operator that uses well-known agents to fence and remediate unhealthy nodes.
          The remediation includes rebooting the unhealthy node using a fence agent and then evicting workloads from the unhealthy node.

          ### Compatibility
          FAR is one of the remediator operators by [Medik8s](https://www.medik8s.io/remediation/remediation/),
          such as [Self Node Remediation](https://github.com/medik8s/self-node-remediation) and [Machine Deletion Remediation](https://github.com/medik8s/machine-deletion-remediation),
          that were designed to run with the Node HealthCheck Operator [(NHC)](https://github.com/medik8s/node-healthcheck-operator) which detects an unhealthy node and creates remediation CR.
          It is recommended to use FAR with NHC for an easier and smoother experience by fully automating the remediation process, but it can be used as a standalone remediator for the more experienced user.

          ### Advantages
          - Robustness - FAR has direct feedback from the traditional Application Programming Interface (API) call (e.g., IPMI) about the result of the fence action without using the Kubernetes API.
          - Speed - FAR is rapid since it can reboot a node and receive an acknowledgment from the API call while other remediators might need to wait a safe time till they can expect the node to be rebooted.
          - Diversity - FAR includes several fence agents from a large known set of upstream fencing agents for bare metal servers, virtual machines, cloud platforms, etc.
          - Adjustability - FAR allows to set up different parameters for running the API call that remediates the node.
        displayName: Fence Agents Remediation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - fencing
        - auto-healing
        - recovery
        - high-availability
        - fence-agents
        - fence-agents-remediation
        - remediation
        - far
        - baremetal
        links:
        - name: Fence Agents Remediation
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.8/html/remediation_fencing_and_maintenance/about-remediation-fencing-maintenance
        - name: Source Code
          url: https://www.github.com/medik8s/fence-agents-remediation
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/workload-availability/fence-agents-remediation-operator-bundle@sha256:6c0899610a78d2737c2096552e5146d9d5602b5568fab24b51b409dbffcf1961
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:d37a6d10b0fa07370066a31fdaffe2ea553faf4e4e98be7fcef5ec40d62ffe29
        - registry.redhat.io/workload-availability/fence-agents-remediation-rhel9-operator@sha256:eef1a298718650a22a3da4a07c140ce21b6f287d87af79801610317fa8f63d52
        version: 0.6.0
      entries:
      - name: fence-agents-remediation.v0.6.0
        version: 0.6.0
      - name: fence-agents-remediation.v0.5.1
        version: 0.5.1
      - name: fence-agents-remediation.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: fence-agents-remediation
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: runtimes-inventory-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runtimes-inventory-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          containerImage: registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-rhel9-operator@sha256:a4e12329119133ab09754489d29110f13f1793b01e30b5d19b9ab0b9525b7360
          createdAt: 15 Dec 2025, 21:14
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/RedHatInsights/runtimes-inventory-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: Operator support for Runtimes Inventory
        displayName: Runtimes Inventory Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - insights
        - java
        - runtimes
        - red hat
        links:
        - name: Runtimes Inventory Operator
          url: https://github.com/RedHatInsights/runtimes-inventory-operator
        maintainers:
        - email: ebaron@redhat.com
          name: Elliott Baron
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-agent-init-rhel9@sha256:6aede889f665445ea2f9ad3584f4b7004c6bfda8e6b1b4b3771d56da56347e2e
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-rhel9-operator@sha256:a4e12329119133ab09754489d29110f13f1793b01e30b5d19b9ab0b9525b7360
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-operator-bundle@sha256:b5f0ff2579eaa5f85452b009a2f7735238f87a05c3f7d503218807f0741c1a9f
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        version: 1.0.0
      entries:
      - name: runtimes-inventory-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: runtimes-inventory-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: authorino-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: authorino-operator.v1.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "authorino.kuadrant.io/v1beta2",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "authorino.kuadrant.io/v1beta3",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/authorino-rhel9-operator@sha256:0b60bb9afa31a549d0eac9331f6024e461ab3aed5b1fb2d461dd4db8ddeebeb9
          createdAt: 25 Sep 2025, 09:37
          description: Enables authentication and authorization for Gateways and applications
            in a Gateway API network.
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta2
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta3
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: The operator to manage instances of Authorino
        displayName: Authorino Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: Authorino Operator
          url: https://github.com/Kuadrant/authorino-operator
        - name: Authorino
          url: https://github.com/Kuadrant/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhcl-1/authorino-operator-bundle@sha256:fc75af6e706a8d2e3ca9e4206baa64745a4d2ff7a0ea8bae8e187ea5b79c7e4d
        - registry.redhat.io/rhcl-1/authorino-rhel9-operator@sha256:0b60bb9afa31a549d0eac9331f6024e461ab3aed5b1fb2d461dd4db8ddeebeb9
        - registry.redhat.io/rhcl-1/authorino-rhel9@sha256:be77901b29529646bbec6baf0d1a7c350be0db291b07a845f353181c25d89f78
        version: 1.2.4
      entries:
      - name: authorino-operator.v1.2.4
        version: 1.2.4
      - name: authorino-operator.v1.2.3
        version: 1.2.3
      - name: authorino-operator.v1.2.2
        version: 1.2.2
      - name: authorino-operator.v1.2.1
        version: 1.2.1
      - name: authorino-operator.v1.1.3
        version: 1.1.3
      - name: authorino-operator.v1.1.2
        version: 1.1.2
      - name: authorino-operator.v1.1.1
        version: 1.1.1
      - name: authorino-operator.v1.1.0
        version: 1.1.0
      - name: authorino-operator.v1.0.2
        version: 1.0.2
      name: stable
    - currentCSV: authorino-operator.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "authorino.kuadrant.io/v1beta1",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "hosts": [
                    "my-api.io"
                  ],
                  "identity": [
                    {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "in": "authorization_header",
                        "keySelector": "APIKEY"
                      },
                      "name": "api-key-users"
                    }
                  ]
                }
              },
              {
                "apiVersion": "authorino.kuadrant.io/v1beta2",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/3scale-tech-preview/authorino-rhel9-operator@sha256:eb574781cf39917f8f5d9e5c806f520534601f819ee1ebcbb751832da8938008
          createdAt: "2024-11-08T11:06:33Z"
          description: Authorino
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta1
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta2
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: |-
          [Authorino](https://docs.kuadrant.io/authorino/) is Red Hat's Kubernetes-native lightweight external authorization service for tailor-made Zero Trust API security.

          Install this Red Hat official distribution of [Authorino Operator](https://docs.kuadrant.io/authorino-operator/) to manage instances of Authorino in this cluster.

          The current state of this distribution of the operator is: **_Technical Preview_**.

          The Community version of Authorino Operator, based on upstream public images, is available in [OperatorHub.io](https://operatorhub.io/operator/authorino-operator).

          ## Getting started

          After installing the Operator, request an instance of the external authorization service by creating an `Authorino` custom resource.

          **Minimal example (namespaced)**

          ```yaml
          apiVersion: operator.authorino.kuadrant.io/v1beta1
          kind: Authorino
          metadata:
            name: authorino
          spec:
            listener:
              tls:
                enabled: false
            oidcServer:
              tls:
                enabled: false
          ```

          **Extended example**

          ```yaml
          apiVersion: operator.authorino.kuadrant.io/v1beta1
          kind: Authorino
          metadata:
            name: authorino
          spec:
            clusterWide: true
            authConfigLabelSelectors: environment=production
            secretLabelSelectors: authorino.kuadrant.io/component=authorino,environment=production

            replicas: 2

            evaluatorCacheSize: 2 # mb

            logLevel: info
            logMode: production

            listener:
              ports:
                grpc: 50001
                http: 5001
              tls:
                certSecretRef:
                  name: authorino-server-cert # secret must contain `tls.crt` and `tls.key` entries
              timeout: 2

            oidcServer:
              port: 8083
              tls:
                certSecretRef:
                  name: authorino-oidc-server-cert # secret must contain `tls.crt` and `tls.key` entries

            metrics:
              port: 8080
              deep: true

            healthz:
              port: 8081

            tracing:
              endpoint: rpc://otel-collector.observability.svc.cluster.local:4317
              insecure: true

            volumes:
              items:
                - name: keycloak-tls-cert
                  mountPath: /etc/ssl/certs
                  configMaps:
                    - keycloak-tls-cert
                  items: # details to mount the k8s configmap in the authorino pods
                    - key: keycloak.crt
                      path: keycloak.crt
              defaultMode: 420
          ```

          ### Cluster-wide vs Namespaced

          Namespaced instances only watch auth resources (`AuthConfig` and `Secrets`) created in the same namespace as the Authorino service. Use this mode for dedicated instances that do not require elevated privileges.

          Cluster-wide instances watch resources across the entire cluster (all namespaces.) Deploying and running Authorino in this mode requires elevated privileges.

          ### Multi-tenancy

          Use the `authConfigLabelSelectors` field of the `Authorino` custom resource to narrow the scope of the Authorino instance.

          Only `AuthConfig` custom resources whose labels match the value of this field will be handled by the Authorino instance.

          ## Protect a host

          To protect a host, create an `AuthConfig` custom resource for the host. E.g.:

          ```yaml
          apiVersion: authorino.kuadrant.io/v1beta2
          kind: AuthConfig
          metadata:
            name: my-api-protection
          spec:
            hosts:
            - my-api.io

            authentication:
              "keycloak":
                jwt:
                  issuerUrl: https://keycloak.keycloak.svc.cluster.local:8080/realms/my-realm

            authorization:
              "k8s-rbac":
                kubernetesSubjectAccessReview:
                  user:
                    selector: auth.identity.user.username
                  resourceAttributes:
                    resource:
                      value: my-api
                    verb:
                      selector: request.method
                cache:
                  key:
                    selector: auth.identity.user.username
                  ttl: 30
              "after-2am-only":
                rego: |
                  allow {
                    [hour, _, _] := time.clock(time.now_ns())
                    hour >= 2
                  }
          ```

          Make sure all requests to the host are fisrt checked with the Authorino instance, by configuring an Envoy proxy for external authz:

          ```yaml
          clusters:
          - name: my-api
            …
          - name: authorino
            connect_timeout: 0.25s
            type: STRICT_DNS
            lb_policy: ROUND_ROBIN
            http2_protocol_options: {}
            load_assignment:
              cluster_name: authorino
              endpoints:
              - lb_endpoints:
                - endpoint:
                    address:
                      socket_address:
                        address: authorino-authorino-authorization
                        port_value: 50051
          listeners:
          - filter_chains:
            - filters:
              name: envoy.http_connection_manager
              typed_config:
                "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
                use_remote_address: true
                route_config:
                  name: my-api-config
                  virtual_hosts:
                  - name: my-api-vs
                    domains:
                    - my-api.io
                    routes:
                    - match:
                        prefix: /
                      route:
                        cluster: my-api
                http_filters:
                - name: envoy.filters.http.ext_authz
                  typed_config:
                    "@type": type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz
                    transport_api_version: V3
                    failure_mode_allow: false
                    include_peer_certificate: true
                    grpc_service:
                      envoy_grpc:
                        cluster_name: authorino
                      timeout: 1s
          ```

          ...or, if using Istio, by creating an [`AuthorizationPolicy`](https://istio.io/latest/docs/reference/config/security/authorization-policy/#AuthorizationPolicy) custom resource. Use `action: CUSTOM` in the resource and the Authorino authorization service configured in the mesh extension provider settings.

          ## Features

          **Authentication**

          * JWT validation (with OpenID Connect Discovery)
          * OAuth 2.0 Token Introspection (opaque tokens)
          * Kubernetes TokenReview (ServiceAccount tokens)
          * API key authentication
          * X.509 client certificate authentication
          * Anonymous access
          * Proxy-handled (authentication performed by the proxy)

          **Authorization**

          * Built-in simple pattern matching (e.g. JWT claims, request attributes checking)
          * OPA policies (inline Rego and fetch from external registry)
          * Kubernetes SubjectAccessReview (resource and non-resource attributes)
          * Authzed SpiceDB

          **External metadata**

          * HTTP request
          * OpenID Connect User Info
          * UMA-protected resource attributes

          **Custom responses**

          * Header injection (Festival Wristbands tokens, JSON, plain text)
          * Envoy Dynamic Metadata
          * Custom HTTP response (status code, headers, messages, body, etc)

          **Callbacks**

          * HTTP webhooks

          **Caching**

          * OpenID Connect and User-Managed Access configs
          * JSON Web Keys (JWKs) and JSON Web Key Sets (JWKS)
          * Access tokens
          * External metadata
          * Precompiled Rego policies
          * Policy evaluation

          Check out the full [Feature Specification](https://docs.kuadrant.io/authorino/docs/features/) and how-to guides in the [Kuadrant Docs](https://docs.kuadrant.io) website.
        displayName: Red Hat - Authorino (Technical Preview)
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: GitHub
          url: https://github.com/kuadrant/authorino-operator
        - name: Documentation
          url: https://docs.kuadrant.io/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:3a398158d10018bfac5df291d6998b513cf9a30e5477bcaefddcf66d229627c7
        - registry.redhat.io/3scale-tech-preview/authorino-operator-bundle@sha256:75cb78f7a40d3daedbc11cbbb5505e029328b4120f0de11d4f6423de943e92d8
        - registry.redhat.io/3scale-tech-preview/authorino-rhel9-operator@sha256:eb574781cf39917f8f5d9e5c806f520534601f819ee1ebcbb751832da8938008
        - registry.redhat.io/3scale-tech-preview/authorino-rhel9@sha256:a473dae20e71e3e813ac30ba978f2ab3c5e19d7d39b501ae9103dca892107c87
        version: 1.1.3
      entries:
      - name: authorino-operator.v1.1.3
        version: 1.1.3
      - name: authorino-operator.v1.1.2
        version: 1.1.2
      - name: authorino-operator.v1.1.1
        version: 1.1.1
      - name: authorino-operator.v1.1.0
        version: 1.1.0
      - name: authorino-operator.v1.0.2
        version: 1.0.2
      name: tech-preview-v1
    defaultChannel: stable
    packageName: authorino-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-druid-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: druid-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/druid-operator@sha256:ff1a696b13db48980e86003ba1f439b8996b08e7f5c0f527edd3d3dd4ca858f9
          description: Stackable Operator for Apache Druid
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/druid-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for DruidClusterSpec via `CustomResource`
            displayName: druidclusters.druid.stackable.tech
            kind: DruidCluster
            name: druidclusters.druid.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Druid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - druid
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - registry.connect.redhat.com/stackable/stackable-apache-druid-operator@sha256:2167a293d682cad01573dbfefb91c0a4cf2feb18566922893d3e1f12dee10854
        - quay.io/stackable/druid-operator@sha256:ff1a696b13db48980e86003ba1f439b8996b08e7f5c0f527edd3d3dd4ca858f9
        version: 25.11.0
      entries:
      - name: druid-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-druid-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Vertica
      provider-url: http://www.vertica.com
    name: verticadb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: verticadb-operator.v1.11.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "EventTrigger",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "verticadb-operator",
                    "app.kubernetes.io/instance": "eventtrigger-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "eventtrigger",
                    "app.kubernetes.io/part-of": "verticadb-operator"
                  },
                  "name": "eventtrigger-sample"
                },
                "spec": {
                  "matches": [
                    {
                      "condition": {
                        "status": "True",
                        "type": "DBInitialized"
                      }
                    }
                  ],
                  "references": [
                    {
                      "object": {
                        "apiVersion": "vertica.com/v1beta1",
                        "kind": "VerticaDB",
                        "name": "verticadb-sample"
                      }
                    }
                  ],
                  "template": {
                    "metadata": {
                      "generateName": "create-user-table-"
                    },
                    "spec": {
                      "template": {
                        "spec": {
                          "containers": [
                            {
                              "command": [
                                "/opt/vertica/bin/vsql",
                                "-h",
                                "verticadb-sample-defaultsubcluster",
                                "-c",
                                "CREATE TABLE T1 (C1 INT);"
                              ],
                              "image": "vertica/vertica-k8s:latest",
                              "name": "main"
                            }
                          ],
                          "restartPolicy": "OnFailure"
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaAutoscaler",
                "metadata": {
                  "name": "verticaautoscaler-sample"
                },
                "spec": {
                  "serviceName": "defaultsubcluster",
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaDB",
                "metadata": {
                  "name": "verticadb-sample"
                },
                "spec": {
                  "communal": {
                    "endpoint": "https://s3.amazonaws.com"
                  },
                  "image": "vertica/vertica-k8s:23.3.0-0-minimal",
                  "subclusters": [
                    {
                      "name": "default_subcluster",
                      "size": 3
                    }
                  ]
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          containerImage: docker.io/vertica/verticadb-operator:1.11.2
          createdAt: "2023-08-02T11:29:39Z"
          description: Operator that manages a Vertica Eon Mode database.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/vertica/vertica-kubernetes
          support: Vertica
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EventTrigger is the Schema for the eventtriggers API
            displayName: Event Trigger
            kind: EventTrigger
            name: eventtriggers.vertica.com
            version: v1beta1
          - description: VerticaAutoscaler is a CR that allows you to autoscale one
              or more subclusters in a VerticaDB.
            displayName: Vertica Autoscaler
            kind: VerticaAutoscaler
            name: verticaautoscalers.vertica.com
            version: v1beta1
          - description: VerticaDB is the CR that defines a Vertica Eon mode cluster
              that is managed by the verticadb-operator.
            displayName: Vertica DB
            kind: VerticaDB
            name: verticadbs.vertica.com
            version: v1beta1
        description: |-
          ### What is Vertica?
          Vertica is a unified analytics platform, based on a massively scalable architecture with the broadest set of analytical functions spanning event and time series, pattern matching, geospatial and end-to-end in-database machine learning. Vertica enables you to easily apply these powerful functions to the largest and most demanding analytical workloads, arming you and your customers with predictive business insights faster than any analytics data warehouse in the market. Vertica provides a unified analytics platform across major public clouds and on-premises data centers and integrates data in cloud object storage and HDFS without forcing you to move any of your data.

          ### What does this operator do?
          This operator manages a Vertica Eon Mode database, and automates the following administrative tasks:

          * Installing Vertica
          * Creating and reviving a Vertica database
          * Restarting and rescheduling DOWN pods to maintain quorum
          * Upgrading Vertica to a new version while keeping the database online
          * Subcluster scaling, both manually and automatically with the Horizontal Pod Autoscaler
          * Service management and health monitoring for pods
          * Load balancing for internal and external traffic
          * Expose a metrics endpoint to integrate with Prometheus to monitor the operator's health

          For a brief overview on how to create a cluster, see the [Vertica GitHub repository](https://github.com/vertica/vertica-kubernetes). For an in-depth look at Vertica on Kubernetes, see the [Vertica documentation](https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm).
        displayName: VerticaDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - database
        - vertica
        links:
        - name: Documentation
          url: https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm
        - name: Vertica Container Images
          url: https://hub.docker.com/u/vertica
        maintainers:
        - email: matt.spilchen@vertica.com
          name: Matt Spilchen
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Vertica
          url: http://www.vertica.com
        relatedImages:
        - docker.io/vertica/verticadb-operator:1.11.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/openshift-community-operators/verticadb-operator@sha256:b7691da906474a8ab829966bb3da4a846eaf12909c97bd0d9cb6a1e5e7ff6c03
        version: 1.11.2
      entries:
      - name: verticadb-operator.v1.11.2
        version: 1.11.2
      - name: verticadb-operator.v1.11.1
        version: 1.11.1
      - name: verticadb-operator.v1.11.0
        version: 1.11.0
      - name: verticadb-operator.v1.10.2
        version: 1.10.2
      - name: verticadb-operator.v1.10.1
        version: 1.10.1
      - name: verticadb-operator.v1.10.0
        version: 1.10.0
      - name: verticadb-operator.v1.9.0
        version: 1.9.0
      - name: verticadb-operator.v1.8.0
        version: 1.8.0
      - name: verticadb-operator.v1.7.0
        version: 1.7.0
      - name: verticadb-operator.v1.6.0
        version: 1.6.0
      - name: verticadb-operator.v1.5.0
        version: 1.5.0
      - name: verticadb-operator.v1.4.0
        version: 1.4.0
      - name: verticadb-operator.v1.3.1
        version: 1.3.1
      - name: verticadb-operator.v1.3.0
        version: 1.3.0
      - name: verticadb-operator.v1.2.0
        version: 1.2.0
      name: stable
    - currentCSV: verticadb-operator.v25.4.0-0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vertica.com/v1",
                "kind": "VerticaAutoscaler",
                "metadata": {
                  "name": "verticaautoscaler-sample"
                },
                "spec": {
                  "customAutoscaler": {},
                  "scalingGranularity": "Subcluster",
                  "serviceName": "default-subcluster",
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1",
                "kind": "VerticaDB",
                "metadata": {
                  "name": "verticadb-sample"
                },
                "spec": {
                  "communal": {
                    "endpoint": "https://s3.amazonaws.com"
                  },
                  "image": "opentext/vertica-k8s:24.1.0-0-minimal",
                  "subclusters": [
                    {
                      "name": "default_subcluster",
                      "size": 3
                    }
                  ]
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "EventTrigger",
                "metadata": {
                  "name": "eventtrigger-sample"
                },
                "spec": {
                  "matches": [
                    {
                      "condition": {
                        "status": "True",
                        "type": "DBInitialized"
                      }
                    }
                  ],
                  "references": [
                    {
                      "object": {
                        "apiVersion": "vertica.com/v1beta1",
                        "kind": "VerticaDB",
                        "name": "verticadb-sample"
                      }
                    }
                  ],
                  "template": {
                    "metadata": {
                      "generateName": "create-user-table-"
                    },
                    "spec": {
                      "template": {
                        "spec": {
                          "containers": [
                            {
                              "command": [
                                "/opt/vertica/bin/vsql",
                                "-h",
                                "verticadb-sample-defaultsubcluster",
                                "-c",
                                "CREATE TABLE T1 (C1 INT);"
                              ],
                              "image": "opentext/vertica-k8s:23.4.0-0-minimal",
                              "name": "main"
                            }
                          ],
                          "restartPolicy": "OnFailure"
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaAutoscaler",
                "metadata": {
                  "name": "verticaautoscaler-sample"
                },
                "spec": {
                  "customAutoscaler": {},
                  "scalingGranularity": "Subcluster",
                  "serviceName": "default-subcluster",
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaReplicator",
                "metadata": {
                  "name": "verticareplicator-sample"
                },
                "spec": {
                  "source": {
                    "verticaDB": "sourceDBName"
                  },
                  "target": {
                    "verticaDB": "targetDBName"
                  }
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaRestorePointsQuery",
                "metadata": {
                  "name": "verticarestorepointsquery-sample"
                },
                "spec": {
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaScrutinize",
                "metadata": {
                  "name": "verticascrutinize-sample"
                },
                "spec": {
                  "verticaDBName": "verticadb-sample"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          containerImage: docker.io/opentext/verticadb-operator:25.4.0-0
          createdAt: "2025-10-20T17:45:02Z"
          description: Operator that manages a Vertica Eon Mode database.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/vertica/vertica-kubernetes
          support: Vertica
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EventTrigger is the Schema for the eventtriggers API
            displayName: Event Trigger
            kind: EventTrigger
            name: eventtriggers.vertica.com
            version: v1beta1
          - description: |-
              VerticaAutoscaler is a CR that allows you to autoscale one or more
              subclusters in a VerticaDB.
            displayName: Vertica Autoscaler
            kind: VerticaAutoscaler
            name: verticaautoscalers.vertica.com
            version: v1
          - description: |-
              VerticaAutoscaler is a CR that allows you to autoscale one or more
              subclusters in a VerticaDB.
            displayName: Vertica Autoscaler
            kind: VerticaAutoscaler
            name: verticaautoscalers.vertica.com
            version: v1beta1
          - description: VerticaDB is the CR that defines a Vertica Eon mode cluster
              that is managed by the verticadb-operator.
            displayName: Vertica DB
            kind: VerticaDB
            name: verticadbs.vertica.com
            version: v1
          - description: VerticaReplicator is the Schema for the verticareplicators
              API
            displayName: Vertica Replicator
            kind: VerticaReplicator
            name: verticareplicators.vertica.com
            version: v1beta1
          - description: VerticaRestorePointsQuery is the Schema for the verticarestorepointsqueries
              API
            displayName: Vertica Restore Points Query
            kind: VerticaRestorePointsQuery
            name: verticarestorepointsqueries.vertica.com
            version: v1beta1
          - description: VerticaScrutinize is the schema for verticascrutinize API
            displayName: Vertica Scrutinize
            kind: VerticaScrutinize
            name: verticascrutinizers.vertica.com
            version: v1beta1
        description: |-
          ### What is Vertica?
          Vertica is a unified analytics platform, based on a massively scalable architecture with the broadest set of analytical functions spanning event and time series, pattern matching, geospatial and end-to-end in-database machine learning. Vertica enables you to easily apply these powerful functions to the largest and most demanding analytical workloads, arming you and your customers with predictive business insights faster than any analytics data warehouse in the market. Vertica provides a unified analytics platform across major public clouds and on-premises data centers and integrates data in cloud object storage and HDFS without forcing you to move any of your data.

          ### What does this operator do?
          This operator manages a Vertica Eon Mode database, and automates the following administrative tasks:

          * Installing Vertica
          * Creating and reviving a Vertica database
          * Restarting and rescheduling DOWN pods to maintain quorum
          * Upgrading Vertica to a new version while keeping the database online
          * Subcluster scaling, both manually and automatically with the Horizontal Pod Autoscaler
          * Service management and health monitoring for pods
          * Load balancing for internal and external traffic
          * Expose a metrics endpoint to integrate with Prometheus to monitor the operator's health

          For a brief overview on how to create a cluster, see the [Vertica GitHub repository](https://github.com/vertica/vertica-kubernetes). For an in-depth look at Vertica on Kubernetes, see the [Vertica documentation](https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm).
        displayName: VerticaDB Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - database
        - vertica
        links:
        - name: Documentation
          url: https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm
        - name: Vertica Container Images
          url: https://hub.docker.com/u/vertica
        maintainers:
        - email: cchen8@opentext.com
          name: Cai Chen
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Vertica
          url: http://www.vertica.com
        relatedImages:
        - docker.io/opentext/verticadb-operator:25.4.0-0
        - quay.io/community-operator-pipeline-prod/verticadb-operator@sha256:8dade6084828c98f805bd33d1885e8eb9c8eff3d2fb3283091a6691419d54922
        version: 25.4.0-0
      entries:
      - name: verticadb-operator.v25.4.0-0
        version: 25.4.0-0
      - name: verticadb-operator.v25.3.1-0
        version: 25.3.1-0
      - name: verticadb-operator.v25.3.0-0
        version: 25.3.0-0
      - name: verticadb-operator.v25.2.1-0
        version: 25.2.1-0
      - name: verticadb-operator.v25.2.0-0
        version: 25.2.0-0
      - name: verticadb-operator.v25.1.0-0
        version: 25.1.0-0
      - name: verticadb-operator.v24.4.0-0
        version: 24.4.0-0
      - name: verticadb-operator.v2.2.0
        version: 2.2.0
      - name: verticadb-operator.v2.1.3
        version: 2.1.3
      - name: verticadb-operator.v2.1.2
        version: 2.1.2
      - name: verticadb-operator.v2.1.1
        version: 2.1.1
      - name: verticadb-operator.v2.1.0
        version: 2.1.0
      - name: verticadb-operator.v2.0.2
        version: 2.0.2
      - name: verticadb-operator.v2.0.1
        version: 2.0.1
      - name: verticadb-operator.v2.0.0
        version: 2.0.0
      name: v2-stable
    defaultChannel: v2-stable
    packageName: verticadb-operator
    provider:
      name: Vertica
      url: http://www.vertica.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: dns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dns-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSHealthCheckProbe",
                "metadata": {
                  "name": "$NAME"
                },
                "spec": {
                  "additionalHeadersRef": {
                    "name": "headers"
                  },
                  "address": "192.168.0.16",
                  "allowInsecureCertificate": true,
                  "failureThreshold": 5,
                  "hostname": "test.com",
                  "interval": "60s",
                  "path": "/healthz",
                  "port": 443,
                  "protocol": "HTTPS"
                }
              },
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSRecord",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dns-operator",
                    "app.kubernetes.io/instance": "dnsrecord-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dnsrecord",
                    "app.kubernetes.io/part-of": "dns-operator"
                  },
                  "name": "dnsrecord-sample"
                },
                "spec": {
                  "endpoints": [
                    {
                      "dnsName": "dnsrecord-simple.example.com",
                      "recordTTL": 60,
                      "recordType": "A",
                      "targets": [
                        "52.215.108.61",
                        "52.30.101.221"
                      ]
                    }
                  ],
                  "providerRef": {
                    "name": "dns-provider-creds"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/dns-rhel9-operator@sha256:61e8a471cf20273fe879031eb302a1c7179b5423db4f0a8b9dccefae753ffdf4
          createdAt: 25 Sep 2025, 13:03
          description: Configures how north-south traffic from outside the network
            is balanced and reaches Gateways.
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kuadrant/dns-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DNSHealthCheckProbe is the Schema for the dnshealthcheckprobes
              API
            displayName: DNSHealthCheckProbe
            kind: DNSHealthCheckProbe
            name: dnshealthcheckprobes.kuadrant.io
            version: v1alpha1
          - description: DNSRecord is the Schema for the dnsrecords API
            displayName: DNSRecord
            kind: DNSRecord
            name: dnsrecords.kuadrant.io
            version: v1alpha1
        description: A Kubernetes Operator to manage the lifecycle of DNS resources
        displayName: DNS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dns
        - kuadrant
        links:
        - name: DNS Operator
          url: https://github.com/Kuadrant/dns-operator
        maintainers:
        - email: mnairn@redhat.com
          name: Michael Nairn
        - email: pbrookes@redhat.com
          name: Phil Brookes
        - email: cbrookes@redhat.com
          name: Craig Brookes
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhcl-1/dns-operator-bundle@sha256:0139dbf3b822012c56a0ce2f17b8607c4e08d367ec2fbfb096892bb5e648803e
        - registry.redhat.io/rhcl-1/dns-rhel9-operator@sha256:61e8a471cf20273fe879031eb302a1c7179b5423db4f0a8b9dccefae753ffdf4
        version: 1.2.0
      entries:
      - name: dns-operator.v1.2.0
        version: 1.2.0
      - name: dns-operator.v1.1.1
        version: 1.1.1
      - name: dns-operator.v1.1.0
        version: 1.1.0
      - name: dns-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: dns-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Ab Initio
      provider-url: ""
    name: abinitio-runtime-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: abinitio-runtime-operator.v4.3.3-1
      currentCSVDesc:
        annotations:
          capabilities: Basic Install
          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"
          operatorframework.io/suggested-namespace: abinitio-system
          operators.operatorframework.io/builder: operator-sdk-v1.8.0-ocp
          operators.operatorframework.io/internal-objects: '["cooperatingsystemruntimepoolmetrics.cloud.abinitio.com",
            "cooperatingsystemruntimeprofiles.cloud.abinitio.com"]'
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Defines a *runtime claim*, an interface for reserving a runtime
              object (CoOperatingSystemRuntime) in a runtime pool (CoOperatingSystemRuntimePool)
              in order to launch a job.
            displayName: Co>Operating System Runtime Claim
            kind: CoOperatingSystemRuntimeClaim
            name: cooperatingsystemruntimeclaims.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Pool Metric
            kind: CoOperatingSystemRuntimePoolMetric
            name: cooperatingsystemruntimepoolmetrics.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime pool*, a set of templated runtime objects
              (CoOperatingSystemRuntime) that are available on demand for running
              jobs. A runtime pool's capacity is configurable and can be scheduled
              in response to usage patterns.
            displayName: Co>Operating System Runtime Pool
            kind: CoOperatingSystemRuntimePool
            name: cooperatingsystemruntimepools.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Profile
            kind: CoOperatingSystemRuntimeProfile
            name: cooperatingsystemruntimeprofiles.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime object*, a set of coordinated resources
              used to run a data processing job in parallel across a launcher pod
              and a dynamically scaled set of worker pods. Such a job leverages the
              full power of the Co>Operating System for processing complex enterprise
              data.
            displayName: Co>Operating System Runtime
            kind: CoOperatingSystemRuntime
            name: cooperatingsystemruntimes.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime template*, a reusable specification (CoOperatingSystemRuntimeSpec)
              that can be referenced and overridden by runtime objects as needed,
              making it possible to specify jobs concisely. The runtime objects in
              a runtime pool (CoOperatingSystemRuntimePool) are created from a runtime
              template.
            displayName: Co>Operating System Runtime Template
            kind: CoOperatingSystemRuntimeTemplate
            name: cooperatingsystemruntimetemplates.cloud.abinitio.com
            version: v1
        description: |-
          The Co>Operating System runtime operator brings the power of Ab Initio's Co>Operating
          System to Kubernetes by defining a set of custom API resources for provisioning and
          running data processing jobs.

          The operator is installed along with the following custom resource definitions (CRDs):

          - CoOperatingSystemRuntime
          - CoOperatingSystemRuntimeClaim
          - CoOperatingSystemRuntimePool
          - CoOperatingSystemRuntimeTemplate

          In combination, these resources give you significant flexibility in scheduling, running,
          and monitoring your jobs, which can run in parallel across a dynamically scaled set of
          containers. For reference documentation for these resources, see
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-FOUR-Reference/Co-Operating-System-runtime-operator-API-reference)
          in the Ab Initio Help.

          The following topics describe the basic requirements and procedures for creating custom
          resources for running jobs after you have installed the runtime operator.

          ## Requirements for using custom resources

          The runtime operator is fully configured when you install it in your OpenShift cluster
          through OperatorHub. Importantly, the operator is installed in unrestricted mode,
          which means it can manage the CoOperatingSystemRuntime family of CRDs in any namespace
          in your cluster.

          For creating custom resources in order to run jobs using the operator, you must meet
          the requirements and configure the settings described in the following sections.

          ### Container images for job agents

          To run jobs of kind CoOperatingSystemRuntime, you must have a way to build the following
          OCI container images:

          - A *processing* image with the Co>Operating System server software installed in it.
          - A *sandbox workspace* image with the graphs and other files needed to run your jobs.
          This image is based on the Co>Operating System image and functions as the job's launcher
          agent, which coordinates with a set of worker agents (processing containers) in order to
          run a job in parallel.

          For building and managing these container images, you need the following:

          - A Co>Operating System installation package.
          - Access to a technical repository containing the projects that make up your application.
          - A container-building tool.
          - Access to a private container registry for hosting the images you build. You need pull
          and push access to this registry from your container build context and pull access from
          your OpenShift cluster (for example, via a Kubernetes Secret).

          > WARNING! Never push container images with Ab Initio software to a public registry. Push
          them to a private container registry only.

          The Co>Operating System includes reference Dockerfiles and example scripts for building
          container images. Typically, you build these images as part of your CI/CD pipeline. For
          more information, contact your Ab Initio administrator or Ab Initio Support.

          ### Ab Initio key servers

          The key servers that you use to enable jobs must be reachable from your cluster. You
          specify these key servers via the `AB_HOSTNAME_KEYSERVER_URLS` configuration variable in
          the pod specifications for launcher and worker agents in the CoOperatingSystemRuntime
          resource.

          To discuss the software activation key requirements for jobs that run in Kubernetes,
          contact your key server administrator or Ab Initio Support.

          ### Namespace and role considerations

          The runtime operator is installed with the cluster-wide RBAC roles and role bindings that
          it needs in order to manage custom resources and run jobs.

          You typically use a separate namespace or namespaces for creating and managing custom
          resources to run jobs. Each of these namespaces must be equipped with a service
          account that can list pod limits and get and patch CoOperatingSystemRuntime resources.

          For each namespace in which you intend to create custom resources, create the needed RBAC
          role and role binding by applying the following Role and RoleBinding manifests:

          ```yaml
          apiVersion: rbac.authorization.k8s.io/v1
          kind: Role
          metadata:
            name: cooperatingsystemruntime-role
          rules:
          - apiGroups:
            - ""
            resources:
            - limitranges
            verbs:
            - list
          - apiGroups:
            - cloud.abinitio.com
            resources:
            - cooperatingsystemruntimes
            verbs:
            - get
            - patch
          ---
          apiVersion: rbac.authorization.k8s.io/v1
          kind: RoleBinding
          metadata:
            name: run-cooperatingsystemruntime-rolebinding
          subjects:
          - kind: ServiceAccount
            name: default
          roleRef:
            kind: Role
            name: cooperatingsystemruntime-role
            apiGroup: rbac.authorization.k8s.io
          ```

          One way to do this is to save these manifests to a file and specify a namespace when
          using `oc` to apply them to the cluster. In the following example, the manifests are
          saved to a file named `runtime-rbac.yaml` and the role and role binding are to be created
          for the `default` service account in the `hello-world` namespace:

          ```
          oc -n hello-world apply -f runtime-rbac.yaml
          ```

          To bind the role to a service account other than `default`, simply update the value of
          `subjects[0].name` in the provided RoleBinding manifest.

          ### Dynamic volume provisioning

          The launcher and worker template sections of the CoOperatingSystemRuntime resource
          require you to specify persistent volume claims (PVCs) for job recovery data. To ensure
          that these PVCs can be bound to approriate storage volumes, dynamic volume provisioning
          must be enabled in your cluster.

          Work with your cluster administrator to identify the storage needs of your jobs and to
          ensure that dynamic volume provisioning is enabled so that PVCs can be matched to
          persistent volumes of the right storage class.

          For more information about dynamic storage provisioning, see the
          [OpenShift documentation](https://docs.openshift.com/container-platform/latest/storage/dynamic-provisioning.html).

          ## Quick start and examples

          For an overview of the key concepts associated with running jobs in Kubernetes, see
          ["About running jobs in Kubernetes"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-TWO-Running-jobs-in-Kubernetes/About-running-jobs-in-Kubernetes)
          in the Ab Initio Help.

          As described in this topic, you might begin by creating a CoOperatingSystemRuntime
          manifest that defines the configuration and compute resources needed for a standalone test
          job. You could then use the specification for this job to create a CoOperatingSystemRuntimeTemplate
          resource, which would collect common settings and make it possible to concisely specify
          CoOperatingSystemRuntime jobs.

          You could also use a runtime pool (of kind CoOperatingSystemRuntime) to extend these basic
          resources: such a pool consists of an actively running group of templated runtime objects whose
          pods can be used to run jobs on demand. Finally, for reserving resources in a pool, you could
          create a CoOperatingSystemRuntimeClaim resource.

          For more information about these custom resources, refer to the
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-FOUR-Reference/Co-Operating-System-runtime-operator-API-reference).

          For a set of integrated examples (including complete YAML manifests) that show you how to
          create and use the custom resources, see ["Example manifests for running jobs"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-TWO-Running-jobs-in-Kubernetes/Configuring-and-running-Co-Operating-System-jobs-in-Kubernetes/Example-manifests-for-CoOperatingSystemRuntime-jobs).
        displayName: Co>Operating System Runtime Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - abinitio
        - runtime
        - operator
        links:
        - name: Ab Initio
          url: https://www.abinitio.com/
        maintainers:
        - email: support@abinitio.com
          name: Ab Initio Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Ab Initio
        relatedImages:
        - registry.connect.redhat.com/abinitio/cooperating-system-runtime-operator@sha256:665efa8cc2ba97ad31f219161cdd53e15c1aef16b6c05ac60506be9bbc9ffc9a
        - registry.connect.redhat.com/abinitio/runtime-operator-bundle@sha256:d0bd55bad99bfd1ce09da5ee885a38229829570ebf80e1acc4341dff17a54e64
        version: 4.3.3-1
      entries:
      - name: abinitio-runtime-operator.v4.3.3-1
        version: 4.3.3-1
      - name: abinitio-runtime-operator.v4.3.1-0
        version: 4.3.1-0
      name: release-4.3
    - currentCSV: abinitio-runtime-operator.v4.2.3-0
      currentCSVDesc:
        annotations:
          capabilities: Basic Install
          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"
          operatorframework.io/suggested-namespace: abinitio-system
          operators.operatorframework.io/builder: operator-sdk-v1.8.0-ocp
          operators.operatorframework.io/internal-objects: '["cooperatingsystemruntimepoolmetrics.cloud.abinitio.com",
            "cooperatingsystemruntimeprofiles.cloud.abinitio.com"]'
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Defines a *runtime claim*, an interface for reserving a runtime
              object (CoOperatingSystemRuntime) in a runtime pool (CoOperatingSystemRuntimePool)
              in order to launch a job.
            displayName: Co>Operating System Runtime Claim
            kind: CoOperatingSystemRuntimeClaim
            name: cooperatingsystemruntimeclaims.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Pool Metric
            kind: CoOperatingSystemRuntimePoolMetric
            name: cooperatingsystemruntimepoolmetrics.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime pool*, a set of templated runtime objects
              (CoOperatingSystemRuntime) that are available on demand for running
              jobs. A runtime pool's capacity is configurable and can be scheduled
              in response to usage patterns.
            displayName: Co>Operating System Runtime Pool
            kind: CoOperatingSystemRuntimePool
            name: cooperatingsystemruntimepools.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Profile
            kind: CoOperatingSystemRuntimeProfile
            name: cooperatingsystemruntimeprofiles.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime object*, a set of coordinated resources
              used to run a data processing job in parallel across a launcher pod
              and a dynamically scaled set of worker pods. Such a job leverages the
              full power of the Co>Operating System for processing complex enterprise
              data.
            displayName: Co>Operating System Runtime
            kind: CoOperatingSystemRuntime
            name: cooperatingsystemruntimes.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime template*, a reusable specification (CoOperatingSystemRuntimeSpec)
              that can be referenced and overridden by runtime objects as needed,
              making it possible to specify jobs concisely. The runtime objects in
              a runtime pool (CoOperatingSystemRuntimePool) are created from a runtime
              template.
            displayName: Co>Operating System Runtime Template
            kind: CoOperatingSystemRuntimeTemplate
            name: cooperatingsystemruntimetemplates.cloud.abinitio.com
            version: v1
        description: |-
          The Co>Operating System runtime operator brings the power of Ab Initio's Co>Operating
          System to Kubernetes by defining a set of custom API resources for provisioning and
          running data processing jobs.

          The operator is installed along with the following custom resource definitions (CRDs):

          - CoOperatingSystemRuntime
          - CoOperatingSystemRuntimeClaim
          - CoOperatingSystemRuntimePool
          - CoOperatingSystemRuntimeTemplate

          In combination, these resources give you significant flexibility in scheduling, running,
          and monitoring your jobs, which can run in parallel across a dynamically scaled set of
          containers. For reference documentation for these resources, see
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Co_Operating_System_runtime_operator_API_reference)
          in the Ab Initio Help.

          The following topics describe the basic requirements and procedures for creating custom
          resources for running jobs after you have installed the runtime operator.

          ## Requirements for using custom resources

          The runtime operator is fully configured when you install it in your OpenShift cluster
          through OperatorHub. Importantly, the operator is installed in unrestricted mode,
          which means it can manage the CoOperatingSystemRuntime family of CRDs in any namespace
          in your cluster.

          For creating custom resources in order to run jobs using the operator, you must meet
          the requirements and configure the settings described in the following sections.

          ### Container images for job agents

          To run jobs of kind CoOperatingSystemRuntime, you must have a way to build the following
          OCI container images:

          - A *processing* image with the Co>Operating System server software installed in it.
          - A *sandbox workspace* image with the graphs and other files needed to run your jobs.
          This image is based on the Co>Operating System image and functions as the job's launcher
          agent, which coordinates with a set of worker agents (processing containers) in order to
          run a job in parallel.

          For building and managing these container images, you need the following:

          - A Co>Operating System installation package.
          - Access to a technical repository containing the projects that make up your application.
          - A container-building tool.
          - Access to a private container registry for hosting the images you build. You need pull
          and push access to this registry from your container build context and pull access from
          your OpenShift cluster (for example, via a Kubernetes Secret).

          > WARNING! Never push container images with Ab Initio software to a public registry. Push
          them to a private container registry only.

          The Co>Operating System includes reference Dockerfiles and example scripts for building
          container images. Typically, you build these images as part of your CI/CD pipeline. For
          more information, contact your Ab Initio administrator or Ab Initio Support.

          ### Ab Initio key servers

          The key servers that you use to enable jobs must be reachable from your cluster. You
          specify these key servers via the `AB_HOSTNAME_KEYSERVER_URLS` configuration variable in
          the pod specifications for launcher and worker agents in the CoOperatingSystemRuntime
          resource.

          To discuss the software activation key requirements for jobs that run in Kubernetes,
          contact your key server administrator or Ab Initio Support.

          ### Namespace and role considerations

          The runtime operator is installed with the cluster-wide RBAC roles and role bindings that
          it needs in order to manage custom resources and run jobs.

          You typically use a separate namespace or namespaces for creating and managing custom
          resources to run jobs. Each of these namespaces must be equipped with a service
          account that can list pod limits and get and patch CoOperatingSystemRuntime resources.

          For each namespace in which you intend to create custom resources, create the needed RBAC
          role and role binding by applying the following Role and RoleBinding manifests:

          ```yaml
          apiVersion: rbac.authorization.k8s.io/v1
          kind: Role
          metadata:
            name: cooperatingsystemruntime-role
          rules:
          - apiGroups:
            - ""
            resources:
            - limitranges
            verbs:
            - list
          - apiGroups:
            - cloud.abinitio.com
            resources:
            - cooperatingsystemruntimes
            verbs:
            - get
            - patch
          ---
          apiVersion: rbac.authorization.k8s.io/v1
          kind: RoleBinding
          metadata:
            name: run-cooperatingsystemruntime-rolebinding
          subjects:
          - kind: ServiceAccount
            name: default
          roleRef:
            kind: Role
            name: cooperatingsystemruntime-role
            apiGroup: rbac.authorization.k8s.io
          ```

          One way to do this is to save these manifests to a file and specify a namespace when
          using `oc` to apply them to the cluster. In the following example, the manifests are
          saved to a file named `runtime-rbac.yaml` and the role and role binding are to be created
          for the `default` service account in the `hello-world` namespace:

          ```
          oc -n hello-world apply -f runtime-rbac.yaml
          ```

          To bind the role to a service account other than `default`, simply update the value of
          `subjects[0].name` in the provided RoleBinding manifest.

          ### Dynamic volume provisioning

          The launcher and worker template sections of the CoOperatingSystemRuntime resource
          require you to specify persistent volume claims (PVCs) for job recovery data. To ensure
          that these PVCs can be bound to approriate storage volumes, dynamic volume provisioning
          must be enabled in your cluster.

          Work with your cluster administrator to identify the storage needs of your jobs and to
          ensure that dynamic volume provisioning is enabled so that PVCs can be matched to
          persistent volumes of the right storage class.

          For more information about dynamic storage provisioning, see the
          [OpenShift documentation](https://docs.openshift.com/container-platform/latest/storage/dynamic-provisioning.html).

          ## Quick start and examples

          For an overview of the key concepts associated with running jobs in Kubernetes, see
          ["About running jobs in Kubernetes"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Configuring_and_running_Co_Operating_System_jobs_in_Kubernetes/About_running_jobs_in_Kubernetes)
          in the Ab Initio Help.

          As described in this topic, you might begin by creating a CoOperatingSystemRuntime
          manifest that defines the configuration and compute resources needed for a standalone test
          job. You could then use the specification for this job to create a CoOperatingSystemRuntimeTemplate
          resource, which would collect common settings and make it possible to concisely specify
          CoOperatingSystemRuntime jobs.

          You could also use a runtime pool (of kind CoOperatingSystemRuntime) to extend these basic
          resources: such a pool consists of an actively running group of templated runtime objects whose
          pods can be used to run jobs on demand. Finally, for reserving resources in a pool, you could
          create a CoOperatingSystemRuntimeClaim resource.

          For more information about these custom resources, refer to the
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Co_Operating_System_runtime_operator_API_reference).

          For a set of integrated examples (including complete YAML manifests) that show you how to
          create and use the custom resources, see ["Example manifests for running jobs"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Configuring_and_running_Co_Operating_System_jobs_in_Kubernetes/Creating_custom_resources_for_running_jobs/Example_manifests_for_running_jobs).
        displayName: Co>Operating System Runtime Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - abinitio
        - runtime
        - operator
        links:
        - name: Ab Initio
          url: https://www.abinitio.com/
        maintainers:
        - email: support@abinitio.com
          name: Ab Initio Support
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Ab Initio
        relatedImages:
        - registry.connect.redhat.com/abinitio/cooperating-system-runtime-operator@sha256:ee30210a153e8b3ba09080737216d881cc6a07e1a888e9684be0d17fd4ff791d
        - registry.connect.redhat.com/abinitio/runtime-operator-bundle@sha256:b9ffc18b2d88dfab92583af35b27e0ae36bceac7778cb448ab2ea2eae2ab3e94
        version: 4.2.3-0
      entries:
      - name: abinitio-runtime-operator.v4.2.3-0
        version: 4.2.3-0
      name: stable
    defaultChannel: release-4.3
    packageName: abinitio-runtime-operator
    provider:
      name: Ab Initio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Trilio
      provider-url: https://trilio.io/
    name: tvo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tvo-operator.6.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tvo.trilio.io/v1",
                "kind": "TVOControlPlane",
                "metadata": {
                  "name": "tvocontrolplane-sample"
                },
                "spec": {
                  "crdType": "TVOControlPlane",
                  "common": {
                    "dmapi_workers": "16",
                    "memcached_servers": "",
                    "my_ip": {
                      "host_interface": null
                    },
                    "nova_group_id": "42436",
                    "nova_user_id": "42436",
                    "oslo_enable_proxy_headers_parsing": false,
                    "trustee_role": "creator"
                  },
                  "database": {
                    "common": {
                      "host": "EDIT_DB_HOSTNAME",
                      "root_password": "EDIT_PASSWORD",
                      "root_user_name": "root"
                    },
                    "datamover_api": {
                      "database": "dmapi",
                      "password": "EDIT_PASSWORD",
                      "user": "dmapi"
                    },
                    "wlm_api": {
                      "database": "workloadmgr",
                      "password": "EDIT_PASSWORD",
                      "user": "workloadmgr"
                    }
                  },
                  "helm3_hook": true,
                  "images": {
                    "triliovault_datamover_api": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_datamover_db_sync": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_object_store": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_api": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_cloud_trust": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_cron": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_db_sync": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_scheduler": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_workloads": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1"
                  },
                  "keystone": {
                    "common": {
                      "admin_role_name": "admin",
                      "auth_uri": "",
                      "auth_url": "",
                      "ca_cert": "CERT MULTIPLE LINES\n",
                      "cloud_admin_domain_name": "Default",
                      "cloud_admin_project_name": "admin",
                      "cloud_admin_user_name": "admin",
                      "cloud_admin_user_password": "",
                      "is_self_signed_ssl_cert": true,
                      "keystone_auth_host": "",
                      "keystone_auth_port": "",
                      "keystone_auth_protocol": "",
                      "region_name": "regionOne",
                      "service_project_domain_name": "Default",
                      "service_project_name": "service"
                    },
                    "datamover_api": {
                      "internal_endpoint": "ENDPOINT_PROTOCOL_INTERNAL://ENDPOINT_HOST_INTERNAL:8784/v2",
                      "password": "EDIT_PASSWORD",
                      "public_auth_host": "",
                      "public_endpoint": "ENDPOINT_PROTOCOL_PUBLIC://ENDPOINT_HOST_PUBLIC:8784/v2",
                      "service_desc": "TrilioVault Datamover Api Service",
                      "service_name": "dmapi",
                      "service_type": "datamover",
                      "user": "dmapi"
                    },
                    "identity": null,
                    "keystone_interface": "internal",
                    "wlm_api": {
                      "internal_endpoint": "ENDPOINT_PROTOCOL_INTERNAL://ENDPOINT_HOST_INTERNAL:8781/v1/$(tenant_id)s",
                      "password": "EDIT_PASSWORD",
                      "public_auth_host": "",
                      "public_endpoint": "ENDPOINT_PROTOCOL_PUBLIC://ENDPOINT_HOST_PUBLIC:8781/v1/$(tenant_id)s",
                      "service_desc": "TrilioVault Workloadmgr Api Service",
                      "service_name": "TrilioVaultWLM",
                      "service_type": "workloads",
                      "user": "triliovault"
                    }
                  },
                  "labels": {
                    "datamover_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_cron": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_scheduler": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_workloads": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    }
                  },
                  "pod": {
                    "replicas": {
                      "triliovault_datamover_api": 3,
                      "triliovault_object_store": 3,
                      "triliovault_wlm_api": 3,
                      "triliovault_wlm_cron": 1,
                      "triliovault_wlm_scheduler": 3,
                      "triliovault_wlm_workloads": 3
                    },
                    "security_context": {
                      "triliovault": {
                        "container": {
                          "triliovault_datamover_api": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 0,
                            "runAsUser": 63630
                          },
                          "triliovault_datamover_api_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 63630,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_api": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_cron": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_scheduler": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_workloads": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "wlm_cloud_trust_creation": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 42436
                          }
                        }
                      }
                    }
                  },
                  "rabbitmq": {
                    "common": {
                      "admin_password": "EDIT_PASSWORD",
                      "admin_user": "admin",
                      "driver": "messagingv2",
                      "host": "EDIT_HOST",
                      "port": "5672"
                    },
                    "datamover_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "",
                      "user": "dmapi",
                      "vhost": "dmapi"
                    },
                    "wlm_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "",
                      "user": "workloadmgr",
                      "vhost": "workloadmgr"
                    }
                  },
                  "triliovault_backup_targets": [
                    {
                      "backup_target_name": "S3_BT1",
                      "backup_target_type": "s3",
                      "is_default": true,
                      "s3_access_key": "ACCESSKEY1",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "BUCKET1",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "ENDPOINT_URL1",
                      "s3_region_name": "REGION1",
                      "s3_secret_key": "SECRETKEY1",
                      "s3_self_signed_cert": false,
                      "s3_signature_version": "default",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "amazon_s3"
                    },
                    {
                      "backup_target_name": "S3_BT2",
                      "backup_target_type": "s3",
                      "is_default": true,
                      "s3_access_key": "ACCESSKEY2",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "BUCKET2",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "ENDPOINT_URL2",
                      "s3_region_name": "REGION2",
                      "s3_secret_key": "SECRETKEY2",
                      "s3_self_signed_cert": true,
                      "s3_signature_version": "default",
                      "s3_ssl_ca_cert": "SSL_CERT_LINE_1\n",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "amazon_s3"
                    },
                    {
                      "backup_target_name": "NFS_BT3",
                      "backup_target_type": "nfs",
                      "is_default": false,
                      "nfs_options": "nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10",
                      "nfs_shares": "11.30.1.10:/mnt/share"
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "true"
          containerImage: registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:3d80cad27a1043fb61735e7a6fb156c98b269cfcc68f8b9712713a7d4f6ad6bd
          createdAt: "2025-01-14T11:20:30Z"
          description: Cloud-Native Data Protection for OpenStack
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: trilio-openstack
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trilioData/triliovault-cfg-scripts
          support: Trilio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trilio for OpenStack Control Plane. Includes all control
              plane components like Datamover Api, Trilio object store and Workloadmgr
              services.
            displayName: Trilio for OpenStack Control Plane
            kind: TVOControlPlane
            name: tvocontrolplanes.tvo.trilio.io
            version: v1
          - description: Trilio for OpenStack Backup Target. This CR is responsible
              to add a new backup target.
            displayName: Trilio for OpenStack Backup Target
            kind: TVOBackupTarget
            name: tvobackuptargets.tvo.trilio.io
            version: v1
        description: |-
          Trilio for OpenStack provides scalable, native, agentless, multi-tenant backup and recovery solutions, ensuring seamless protection of workloads with flexible storage options for dynamic cloud environments.

            * OpenStack Backup and Recovery: Recover any OpenStack application quickly in the event of data loss or misconfiguration. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Such as One-Click-Restore to entire project recovery on different clusters.
            * Disaster Recovery: Recover any OpenStack application quickly in the event of a disaster. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Trilio makes OpenStack disaster recovery easy.

            * Migration: A tenant or administrator can capture an application and its data and non-disruptively migrate that exact point-in-time to another OpenStack cloud. The need to migrate OpenStack workloads can be driven by economics, security or test/dev.

            * Network Functions Virtualization backup and recovery: Business critical services like NFV can quickly be configured to any state, assuring the optimal quality of service. Trilio provides recovery from data damage and allows restoration of entire VNFs, selected VNFs, or individual data items using a point-in-time working copy. The platform also allows recovery from a disaster by restoring the OpenStack network topology and populating it with a working copy of the entire NFV.

          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for OpenStack
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OpenStack
        - Backup
        - Recovery
        - RHOSO Backup
        - Disaster Recovery
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/openstack-backup-and-recovery/
        - name: Operator Documentation
          url: https://docs.trilio.io/openstack
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        provider:
          name: Trilio
          url: https://trilio.io/
        relatedImages:
        - registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:3d80cad27a1043fb61735e7a6fb156c98b269cfcc68f8b9712713a7d4f6ad6bd
        - registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1
        - registry.connect.redhat.com/trilio/tvo-operator-rhoso@sha256:50b7f0a5f3fdd98cfb0294d664cc01ffd1e5359be66a3da14f5552e9cb3bae2c
        - registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82
        version: 6.1.1
      entries:
      - name: tvo-operator.6.1.1
        version: 6.1.1
      name: 6.0.x
    - currentCSV: tvo-operator.6.1.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tvo.trilio.io/v1",
                "kind": "TVOControlPlane",
                "metadata": {
                  "name": "tvocontrolplane-sample",
                  "namespace": "trilio-openstack"
                },
                "spec": {
                  "common": {
                    "dmapi_workers": "16",
                    "memcached_servers": "memcached-0.memcached.openstack.svc:11212",
                    "nova_group_id": "42436",
                    "nova_user_id": "42436",
                    "oslo_enable_proxy_headers_parsing": false,
                    "trustee_role": "member"
                  },
                  "crdType": "TVOControlPlane",
                  "database": {
                    "common": {
                      "host": "openstack.openstack.svc",
                      "port": 3306,
                      "root_password": "openstack",
                      "root_user_name": "root"
                    },
                    "datamover_api": {
                      "database": "dmapi",
                      "password": "dsw21aSyH5gHH6XE72k11Y3t3C308jY5rP02ndwJW",
                      "user": "dmapi"
                    },
                    "wlm_api": {
                      "database": "workloadmgr",
                      "password": "dfeeYb72OwUzX5YuRKcVjxXJaELV8YT0jZczIQwys0v",
                      "user": "workloadmgr"
                    }
                  },
                  "helm3_hook": true,
                  "images": {
                    "triliovault_datamover_api": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_datamover_db_sync": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_object_store": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_api": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_cloud_trust": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_cron": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_db_sync": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_scheduler": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_workloads": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd"
                  },
                  "keystone": {
                    "common": {
                      "admin_role_name": "admin",
                      "auth_uri": "https://keystone-internal.openstack.svc:5000/v3",
                      "auth_url": "https://keystone-internal.openstack.svc:5000",
                      "cloud_admin_domain_name": "Default",
                      "cloud_admin_project_name": "admin",
                      "cloud_admin_user_name": "admin",
                      "cloud_admin_user_password": "openstack",
                      "is_self_signed_ssl_cert": true,
                      "keystone_auth_host": "keystone-internal.openstack.svc",
                      "keystone_auth_port": "5000",
                      "keystone_auth_protocol": "https",
                      "region_name": "regionOne",
                      "service_project_domain_name": "Default",
                      "service_project_name": "service"
                    },
                    "datamover_api": {
                      "internal_endpoint": "https://triliovault-datamover-internal.trilio-openstack.svc:8784/v2",
                      "password": "defajgh48zgt88wFzzhwEt3xHGeCOdExYbLGQN2XRm",
                      "public_auth_host": "triliovault-datamover-public-trilio-openstack.apps.trilio.trilio.bos2",
                      "public_endpoint": "https://triliovault-datamover-public-trilio-openstack.apps.trilio.trilio.bos2/v2",
                      "service_desc": "TrilioVault Datamover Api Service",
                      "service_name": "dmapi",
                      "service_type": "datamover",
                      "user": "dmapi"
                    },
                    "keystone_interface": "internal",
                    "wlm_api": {
                      "internal_endpoint": "https://triliovault-wlm-internal.trilio-openstack.svc:8781/v1/$(tenant_id)s",
                      "password": "dsdeJl8axy0gv14fURwUUxy0qUOQbugUUOfXikz6j",
                      "public_auth_host": "triliovault-wlm-public-trilio-openstack.apps.trilio.trilio.bos2",
                      "public_endpoint": "https://triliovault-wlm-public-trilio-openstack.apps.trilio.trilio.bos2/v1/$(tenant_id)s",
                      "service_desc": "TrilioVault Workloadmgr Api Service",
                      "service_name": "TrilioVaultWLM",
                      "service_type": "workloads",
                      "user": "triliovault"
                    }
                  },
                  "labels": {
                    "datamover_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_cron": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_scheduler": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_workloads": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    }
                  },
                  "pod": {
                    "replicas": {
                      "triliovault_datamover_api": 3,
                      "triliovault_object_store": 3,
                      "triliovault_wlm_api": 3,
                      "triliovault_wlm_cron": 1,
                      "triliovault_wlm_scheduler": 3,
                      "triliovault_wlm_workloads": 3
                    },
                    "security_context": {
                      "triliovault": {
                        "container": {
                          "triliovault_datamover_api": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 0,
                            "runAsUser": 63630
                          },
                          "triliovault_datamover_api_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 63630,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_api": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_cron": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_scheduler": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_workloads": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "wlm_cloud_trust_creation": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 42436
                          }
                        }
                      }
                    }
                  },
                  "rabbitmq": {
                    "common": {
                      "admin_password": "EDIT_PASSWORD",
                      "admin_user": "admin",
                      "driver": "messagingv2",
                      "host": "EDIT_HOST",
                      "port": "15671",
                      "ssl": true
                    },
                    "datamover_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "rabbit://dmapi:${PASSWORD}@${RABBITMQ_HOST}:5671/dmapi?ssl=1",
                      "user": "dmapi",
                      "vhost": "dmapi"
                    },
                    "wlm_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "rabbit://workloadmgr:${PASSWORD}@${RABBITMQ_HOST}:5671/workloadmgr?ssl=1",
                      "user": "workloadmgr",
                      "vhost": "workloadmgr"
                    }
                  },
                  "triliovault_backup_targets": [
                    {
                      "backup_target_name": "BT1_S3",
                      "backup_target_type": "s3",
                      "is_default": false,
                      "s3_access_key": "",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "",
                      "s3_region_name": "",
                      "s3_secret_key": "",
                      "s3_self_signed_cert": false,
                      "s3_signature_version": "default",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "amazon_s3"
                    },
                    {
                      "backup_target_name": "BT2_Other_S3",
                      "backup_target_type": "s3",
                      "is_default": true,
                      "s3_access_key": "ACCESSKEY2",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "BUCKET2",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "ENDPOINT_URL2",
                      "s3_region_name": "REGION2",
                      "s3_secret_key": "SECRETKEY2",
                      "s3_self_signed_cert": true,
                      "s3_signature_version": "default",
                      "s3_ssl_ca_cert": "SSL_CERT_LINE_1\nSSL_CERT_LINE_2\nSSL_CERT_LINE_N\n",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "other_s3"
                    },
                    {
                      "backup_target_name": "BT3_NFS",
                      "backup_target_type": "nfs",
                      "is_default": false,
                      "nfs_options": "nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10",
                      "nfs_shares": "192.168.2.3:/nfs/share"
                    }
                  ]
                }
              },
              {
                "apiVersion": "tvo.trilio.io/v1",
                "kind": "TVOBackupTarget",
                "metadata": {
                  "name": "tvobackuptarget-sample",
                  "namespace": "trilio-openstack"
                },
                "spec": {
                  "crdType": "TVOBackupTarget",
                  "images": {
                    "triliovault_wlm_api": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_object_store": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd"
                  },
                  "triliovault_backup_target": {
                    "backup_target_name": "S3_BT4",
                    "backup_target_type": "s3",
                    "is_default": false,
                    "s3_type": "other_s3",
                    "s3_access_key": "",
                    "s3_secret_key": "",
                    "s3_region_name": "",
                    "s3_bucket": "",
                    "s3_endpoint_url": "",
                    "s3_signature_version": "default",
                    "s3_auth_version": "DEFAULT",
                    "s3_bucket_object_lock_enabled": false,
                    "s3_ssl_enabled": true,
                    "s3_ssl_verify": true,
                    "s3_self_signed_cert": true,
                    "s3_ssl_ca_cert": "SSL_CERT_LINE_1\nSSL_CERT_LINE_2\nSSL_CERT_LINE_N",
                    "nfs_shares": "192.168.2.30:/nfs/share",
                    "nfs_options": "nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "true"
          containerImage: registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:1ac93a84ea57a554e84fadf43839016324a432825b50e168702c88af5fcfd4d5
          createdAt: "2025-01-14T11:20:30Z"
          description: Cloud-Native Data Protection for OpenStack
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: tvo-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trilioData/triliovault-cfg-scripts
          support: Trilio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trilio for OpenStack Control Plane. Includes all control
              plane components like Datamover Api, Trilio object store and Workloadmgr
              services.
            displayName: Trilio for OpenStack Control Plane
            kind: TVOControlPlane
            name: tvocontrolplanes.tvo.trilio.io
            version: v1
          - description: Trilio for OpenStack Backup Target. This CR is responsible
              to add a new backup target.
            displayName: Trilio for OpenStack Backup Target
            kind: TVOBackupTarget
            name: tvobackuptargets.tvo.trilio.io
            version: v1
        description: |-
          Trilio for OpenStack provides scalable, native, agentless, multi-tenant backup and recovery solutions, ensuring seamless protection of workloads with flexible storage options for dynamic cloud environments.

            * OpenStack Backup and Recovery: Recover any OpenStack application quickly in the event of data loss or misconfiguration. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Such as One-Click-Restore to entire project recovery on different clusters.
            * Disaster Recovery: Recover any OpenStack application quickly in the event of a disaster. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Trilio makes OpenStack disaster recovery easy.

            * Migration: A tenant or administrator can capture an application and its data and non-disruptively migrate that exact point-in-time to another OpenStack cloud. The need to migrate OpenStack workloads can be driven by economics, security or test/dev.

            * Network Functions Virtualization backup and recovery: Business critical services like NFV can quickly be configured to any state, assuring the optimal quality of service. Trilio provides recovery from data damage and allows restoration of entire VNFs, selected VNFs, or individual data items using a point-in-time working copy. The platform also allows recovery from a disaster by restoring the OpenStack network topology and populating it with a working copy of the entire NFV.

          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for OpenStack
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OpenStack
        - Backup
        - Recovery
        - RHOSO Backup
        - Disaster Recovery
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/openstack-backup-and-recovery/
        - name: Operator Documentation
          url: https://docs.trilio.io/openstack
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        provider:
          name: Trilio
          url: https://trilio.io/
        relatedImages:
        - registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82
        - registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:1ac93a84ea57a554e84fadf43839016324a432825b50e168702c88af5fcfd4d5
        - registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd
        - registry.connect.redhat.com/trilio/tvo-operator-rhoso@sha256:8073e7f803f0922c5b6532fdb99be45b6b2652bcd9d0ed554453d5e81ad1326a
        version: 6.1.10
      entries:
      - name: tvo-operator.6.1.10
        version: 6.1.10
      name: 6.1.x
    defaultChannel: 6.0.x
    packageName: tvo-operator
    provider:
      name: Trilio
      url: https://trilio.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: prometheus-exporter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometheus-exporter-operator.v0.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "monitoring.3scale.net/v1alpha1",
                "kind": "PrometheusExporter",
                "metadata": {
                  "name": "example-memcached"
                },
                "spec": {
                  "dbHost": "your-memcached-host",
                  "dbPort": 11211,
                  "grafanaDashboard": {
                    "label": {
                      "key": "autodiscovery",
                      "value": "enabled"
                    }
                  },
                  "type": "memcached"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/3scale/prometheus-exporter-operator:v0.7.0
          createdAt: "2023-09-07 00:00:00"
          description: Operator to setup 3rd party prometheus exporters, with a collection
            of grafana dashboards
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/3scale-ops/prometheus-exporter-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Configures a prometheus exporter to monitor a memcached instance
            displayName: PrometheusExporter
            kind: PrometheusExporter
            name: prometheusexporters.monitoring.3scale.net
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK to centralize the setup of 3rd party prometheus exporters on **Kubernetes/OpenShift**, with a collection of grafana dashboards.

          By just providing a few parameters like *dbHost* or *dbPort* (operator manage the container image, port, argument, command, volumes... and also prometheus `ServiceMonitor` and `GrafanaDashboard` k8s objects), you can setup different prometheus exporters to monitor:
          * The **internals from different databases**
          * **HTTP/TCP endpoints** (availability, latency, SSL/TLS certificate expiration...)
          * Any available **cloudwatch metric from any AWS Service**
          * Sendgrid email statistics (delivered, bounces, errors, spam...)

          Current prometheus exporters types supported, managed by same prometheus-exporter-operator:
          * memcached
          * redis
          * mysql
          * postgresql
          * sphinx
          * es (elasticsearch)
          * cloudwatch
          * probe (blackbox)
          * sendgrid

          The operator manages the lifecycle of the following objects:
          * Deployment (one per CR)
          * Service (one per CR)
          * ServiceMonitor (optional, one per CR)
          * GrafanaDashboard (optional, one per Namespace)

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale-ops/prometheus-exporter-operator#documentation).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale-ops/prometheus-exporter-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:
          * Raising any issues you find using Prometheus Exporter Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale-ops/prometheus-exporter-operator/pulls)
          * Submitting a patch or opening a PR
          * Improving [documentation](https://github.com/3scale-ops/prometheus-exporter-operator)
          * Talking about Prometheus Exporter Operator
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale-ops/prometheus-exporter-operator/issues).

          ### License
          Prometheus Exporter Operator is licensed under the [Apache 2.0 license](https://github.com/3scale-ops/prometheus-exporter-operator/blob/main/LICENSE)
        displayName: Prometheus Exporter Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - metrics
        - observability
        - prometheus
        - exporter
        - grafana
        - mysql
        - postgresql
        - memcached
        - redis
        - sphinx
        - elasticsearch
        - cloudwatch
        - blackbox
        - sendgrid
        links:
        - name: GitHub
          url: https://github.com/3scale-ops/prometheus-exporter-operator
        maintainers:
        - email: 3scale-operations@redhat.com
          name: 3scale Ops
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - quay.io/3scale/prometheus-exporter-operator:v0.7.0
        - quay.io/openshift-community-operators/prometheus-exporter-operator@sha256:e62276f4c7e583d1fb24997fa970662f1a8d510de0baea159ba796b48cff709b
        version: 0.7.0
      entries:
      - name: prometheus-exporter-operator.v0.7.0
        version: 0.7.0
      - name: prometheus-exporter-operator.v0.3.4
        version: 0.3.4
      name: alpha
    defaultChannel: alpha
    packageName: prometheus-exporter-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: volume-expander-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: volume-expander-operator.v0.3.6
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Storage,Monitoring
          certified: "false"
          containerImage: quay.io/redhat-cop/volume-expander-operator@sha256:e4059a66a9af7c786c8c651abb8a57a55a0e528342e3a59f8c264b40f87d6e25
          createdAt: "2022-05-05T13:25:53Z"
          description: This operator provides automation expanding pod's volumes when
            they are about to run out of space.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: volume-expander-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/volume-expander-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The purpose of the volume-expander-operator is to expand volumes when they are running out of space.
          This is achieved by using the [volume expansion feature](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#expanding-persistent-volumes-claims).

          The operator periodically checks the `kubelet_volume_stats_used_bytes` and `kubelet_volume_stats_capacity_bytes published` by the kubelets to decide when to expand a volume.
          Notice that these metrics are generated only when a volume is mounted to a pod. Also the kubelet takes a minute or two to start generating accurate values for these metrics. The operator accounts for that.

          This operator works based on the following annotations to PersistentVolumeClaim resources:

          | Annotation | Default &nbsp;  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  | Description  |
          | :--- | :--- | :--- |
          | `volume-expander-operator.redhat-cop.io/autoexpand`  | N/A  | if set to "true" enables the volume-expander-operator to watch on this PVC  |
          | `volume-expander-operator.redhat-cop.io/polling-frequency`  | `"30s"` | How frequently to poll the volume metrics. Express this value as a valid golang [Duration](https://golang.org/pkg/time/#ParseDuration)  |
          | `volume-expander-operator.redhat-cop.io/expand-threshold-percent` | `"80"` | the percentage of used storage after which the volume will be expanded. This must be a positive integer. |
          | `volume-expander-operator.redhat-cop.io/expand-by-percent` | `"25"` | the percentage by which the volume will be expanded, relative to the current size. This must be an integer between 0 and 100 |
          | `volume-expander-operator.redhat-cop.io/expand-up-to` | MaxInt64 | the upper bound for this volume to be expanded to. The default value is the largest quantity representable and is intended to be interpreted as infinite. If the default is used it is recommend to ensure the namespace has a quota on the used storage class. |

          Note that not all of the storage driver implementations support volume expansion. It is a responsibility of the user/platform administrator to ensure that storage class and the persistent volume claim meet all the requirements needed for the volume expansion feature to work properly.

          This operator was tested with [OCS](https://www.redhat.com/en/technologies/cloud-computing/openshift-container-storage), but should work with any other storage driver that supports volume expansion.
        displayName: Volume Expander Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - volume
        - storage
        - csi
        - expansion
        links:
        - name: Volume Expander Operator
          url: https://github.com/redhat-cop/volume-expander-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/volume-expander-operator@sha256:e4059a66a9af7c786c8c651abb8a57a55a0e528342e3a59f8c264b40f87d6e25
        - quay.io/openshift-community-operators/volume-expander-operator@sha256:b775df99f891e2cee9c2169e9c948a8d61d65b4cc90f36752b46a56e2d4be602
        version: 0.3.6
      entries:
      - name: volume-expander-operator.v0.3.6
        version: 0.3.6
      - name: volume-expander-operator.v0.3.5
        version: 0.3.5
      - name: volume-expander-operator.v0.3.4
        version: 0.3.4
      - name: volume-expander-operator.v0.3.3
        version: 0.3.3
      - name: volume-expander-operator.v0.3.2
        version: 0.3.2
      - name: volume-expander-operator.v0.3.1
        version: 0.3.1
      - name: volume-expander-operator.v0.3.0
        version: 0.3.0
      - name: volume-expander-operator.v0.2.0
        version: 0.2.0
      - name: volume-expander-operator.v0.1.8
        version: 0.1.8
      - name: volume-expander-operator.v0.1.7
        version: 0.1.7
      - name: volume-expander-operator.v0.1.6
        version: 0.1.6
      - name: volume-expander-operator.v0.1.5
        version: 0.1.5
      - name: volume-expander-operator.v0.1.4
        version: 0.1.4
      - name: volume-expander-operator.v0.1.3
        version: 0.1.3
      - name: volume-expander-operator.v0.1.2
        version: 0.1.2
      - name: volume-expander-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: volume-expander-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc
      provider-url: ""
    name: openshift-gitops-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-gitops-operator.v1.10.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:b0dc693854319ada341e2e3872b34d7db9823b470ed369edfde88d3ae73a40e1
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.8.19\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:2bec31b0c5407ffcecfd8b860d8afb1629eaab31a250f60191f94a824e0a52f4
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:c779ad87a7f71d851c2af818abf16e5151c43d3fd54e64eac2fc7117c00753f5
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:a74e0a1fe3589ebe9f226a2bad20e9a5d5601a0e62c5f3290902f466f55b7160
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:ed530db9b4a29fb591ea208cd0c6b3b83b49537ff5a0a4f501b54ce667f9b303
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:b0dc693854319ada341e2e3872b34d7db9823b470ed369edfde88d3ae73a40e1
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:b5c8a6c7438a45125fc7fd970946f715ab7193b7446d625fae80dde9d1f3f914
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:ece2fee4227ad1becadca47028b78ceaf8717a98ec84e3f1b5188a135c4b093c
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:0905ba3f5cf87780a1e95b6a00ea7cd340d4ed1b5054e4b2c82406270baeaefa
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:d35dff5d59e748ef0404e7e76b0237ea96b2bb19b86fa04a3a34df7a379277b2
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:da5d5061dbc2ec5082cf14b6c600fb5400b83cf91d7ccebfa80680a238d275db
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:4c842f0ea8f0e9b53eb16d94488fc2f4298bd8e4be2f48713be9157da24549e6
        version: 1.10.6
      entries:
      - name: openshift-gitops-operator.v1.10.6
        version: 1.10.6
      - name: openshift-gitops-operator.v1.10.5
        version: 1.10.5
      - name: openshift-gitops-operator.v1.10.4
        version: 1.10.4
      - name: openshift-gitops-operator.v1.10.3
        version: 1.10.3
      - name: openshift-gitops-operator.v1.10.2
        version: 1.10.2
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.10
    - currentCSV: openshift-gitops-operator.v1.11.7-0.1724840231.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d6ad2ee900bf99a3672049cc8ce9c94870d41176501ded1abbc1b229b9553401
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          olm.substitutesFor: openshift-gitops-operator.v1.11.7
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.9.21\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:4d22a7a6cc2f0442889512267ae3d9356f05ff0dfdbbe137c3d8ebebc24818c8
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:0b926fc9eae775425faa1ab9709a36fdac15afe4bfe523720e17ecf5df45bb28
        - registry.redhat.io/rhel8/redis-6@sha256:c4a98010f7dd5faec2047bb9803061704233a8efc930be2a02386ac16d062d86
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:42f809f32f1d43186b849e3cc78063d3ebb2b54c55b2a1b77908af09a5ce044b
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d6ad2ee900bf99a3672049cc8ce9c94870d41176501ded1abbc1b229b9553401
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:c94c2167dc957856682a104b9a6187d3d321dec71ae794acc0dc37794d2cc373
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:31bdff225bd825d02ce0f468b1edc77541ce85b7b9111f14a583c418c984232f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:0df37cf0a0e48efae02a0711c6da61c6165e7856db97097e98d56c8b6a137bb9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:eade50b8321c1b2e0a8ac4dcb34596d43dea0a137b8b97b6eb68c6d469c8b200
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:959de6a95ef8978f66fdbe1033bcaa0ddeff9a376023e5d1d2698c5acb417305
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:7ea96000768b3cf7711150531c4c1c7edff2c45a2f29fe10bd9811ab6b281909
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        version: 1.11.7+0.1724840231.p
      entries:
      - name: openshift-gitops-operator.v1.11.7-0.1724840231.p
        version: 1.11.7+0.1724840231.p
      - name: openshift-gitops-operator.v1.11.7
        version: 1.11.7
      - name: openshift-gitops-operator.v1.11.6
        version: 1.11.6
      - name: openshift-gitops-operator.v1.11.5
        version: 1.11.5
      - name: openshift-gitops-operator.v1.11.4
        version: 1.11.4
      - name: openshift-gitops-operator.v1.11.3
        version: 1.11.3
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.11
    - currentCSV: openshift-gitops-operator.v1.12.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:48dd1254fd3a887aef2eae9239f68637eae18514a50f72ea504414d83dc727b8
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.10.18\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:33bbb88343285a0510670384b87d0226dd6de8aa12c78b68921362c4d6f5a6aa
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:7d82c719b1cef64607d30e8aaa5ab293955771c5b1dbd430e0befc988a43356d
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:80198f65f7e3f9022a34e0342e9423807b855dcb7bda810172eebc9a27afb5c2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:73918f3b3c507fc64006b7a500ecfa9d58151d694852f696c41a4412edffc78e
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:1cf485a889c7586cb4944f000b53c0e97d08f97ba14e580bec57dad7cb13712e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:a1d4e26ea755181818401697f18260b9e876aa441be14830f9142081ee22a24d
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:06a6637c4776f4285bcb295d327ee60b1aed61b7adc5f7ab52898d79281ced70
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9e0fee30842a16d7b8a39d336123c80c5271cb2ceb50759fc7ee51a4ed09ceb3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:dbf3038daf7c797123c511f9a609c3485cb1a5bcae53c614fad17e0a65fa7ee3
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:b5736d1106db29fcdf42328ca20b96382d4339f90b97a07120ea73ee174ea1ad
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:48dd1254fd3a887aef2eae9239f68637eae18514a50f72ea504414d83dc727b8
        - registry.redhat.io/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        version: 1.12.6
      entries:
      - name: openshift-gitops-operator.v1.12.6
        version: 1.12.6
      - name: openshift-gitops-operator.v1.12.5-0.1727371523.p
        version: 1.12.5+0.1727371523.p
      - name: openshift-gitops-operator.v1.12.5
        version: 1.12.5
      - name: openshift-gitops-operator.v1.12.4
        version: 1.12.4
      - name: openshift-gitops-operator.v1.12.3
        version: 1.12.3
      - name: openshift-gitops-operator.v1.12.2
        version: 1.12.2
      - name: openshift-gitops-operator.v1.12.1
        version: 1.12.1
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.12
    - currentCSV: openshift-gitops-operator.v1.13.3-0.1741683398.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d41034bcf5c28bcb8afef08678793d0cc27a4032e2811a0c496c3bd0f10ecc17
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          olm.substitutesFor: openshift-gitops-operator.v1.13.3-0.1738142397.p
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.22.2
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.11.12\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_gitops/
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d4d5724f67859d24c32f0f5735f5af3e325f77db97f58bc7f17ed4b831b7e534
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d41034bcf5c28bcb8afef08678793d0cc27a4032e2811a0c496c3bd0f10ecc17
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:3f2804bc2af437ff1f06c214b48a1a780dfcfab995650d901c03270057eb9f3c
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:f04d565eb5162fd5a9c78cd8443af6a3b184a660277537f1d6d575caa2e85441
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c02dc2c79ee24ce5450ea4e19493ac2a1997eeb5bfd359291642c529826d0cdd
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:b982df02ea7c45a7603d83fe82cac12e1faac303a1b72af6a727512bb97441df
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:06a6637c4776f4285bcb295d327ee60b1aed61b7adc5f7ab52898d79281ced70
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:8a7c3e31ce414e6c6fecf1652343b22c52502902676bf4d7a75bf42bdabfca06
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:a366229e6ee26ebe2d7f765b2a2da6057a29e783835655b5d97545ac563b541a
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:e87515d016565bb69cb2c2ac40432e0127dd2cb20a490ac82019836032ba15e5
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:bde11fa83b7e708677b08ea995041f480b88edfb93e4a62c10380d101c0a349c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        version: 1.13.3+0.1741683398.p
      entries:
      - name: openshift-gitops-operator.v1.13.3-0.1741683398.p
        version: 1.13.3+0.1741683398.p
      - name: openshift-gitops-operator.v1.13.3-0.1738142397.p
        version: 1.13.3+0.1738142397.p
      - name: openshift-gitops-operator.v1.13.3
        version: 1.13.3
      - name: openshift-gitops-operator.v1.13.2
        version: 1.13.2
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.13
    - currentCSV: openshift-gitops-operator.v1.14.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:7cf924af77d9c56e70710b99e080ed8aee162f05ec472f32085a76ef85cf9879
          createdAt: "2025-05-22 12:40:45"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.12.13-1\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_gitops/
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bcf6b3136a5e71803cb518c8763c165bb46ee37ef7bf55503911d7fcb36b3a8f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:7cf924af77d9c56e70710b99e080ed8aee162f05ec472f32085a76ef85cf9879
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:2c45cfc01f9ec7577afc09cadc4c1a6f470836f6a0a7c24d66b791913f89bb05
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8096f824bd96e3148cf4b6936766c888d1fff0af9e9d0be440ae4feb6adc03f2
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:773592dfb9964970f444871a8812e8b74db3f205faaa0bf148defa1a2b87b649
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:42a79aad641e8607fc339e4ce7f9cf1d258be01f863dbc31a94d2c27edb645bd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1ed3b514bf9af6ac0d386e3739874d1d964e667d54e041c2d67edd769b0009fb
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c369df980874aae270ca7bc6455f1ca45467d75d25fe80d7bcb06a7826bdeaa3
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:7358787959af7e7e589edfc043a97d80ebab87536bde365d33be7a600071bf0e
        - registry.redhat.io/rhel8/redis-6@sha256:a9f30ed08abcab0122556a5485fbcf6e0fc03860f19954dcebdbf5e754876a45
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:1112160243f227a5d393eeee165bd4fed0d3f42646a9280cbe9af60ef728aeb2
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:b7d3c882fc25fbbea28951afb197d4d47ace253864889339396e20f0c6897a7f
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:cd4965d91c163160bcf43a02c54ca60b8704281c95de904f904df942bfd83bcd
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:97e32825f59c33cca7d8dba3580095205c20435ccd15b91cf0aff37db9841e0e
        version: 1.14.4
      entries:
      - name: openshift-gitops-operator.v1.14.4
        version: 1.14.4
      - name: openshift-gitops-operator.v1.14.3-0.1746016855.p
        version: 1.14.3+0.1746016855.p
      - name: openshift-gitops-operator.v1.14.3-0.1742836272.p
        version: 1.14.3+0.1742836272.p
      - name: openshift-gitops-operator.v1.14.3
        version: 1.14.3
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.14
    - currentCSV: openshift-gitops-operator.v1.15.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad49a3d14f843bde0d2365093d00ffa6d3b9d59a75c81e0c56710ad37b53bd92
          createdAt: "2024-11-25T03:57:37Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v2.13.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:911733d78ae6f36f642b4d63f044cd102b7eee170508eaf518ac7acf0f339698
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:41717c27915251bda8afeef651b609b8a9ed410e0fa09c4cf8fa7e91d6a94292
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad49a3d14f843bde0d2365093d00ffa6d3b9d59a75c81e0c56710ad37b53bd92
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:56653df97e4498ecd67b9645d75e44f65c625594e312dbcf0f09937b57d76010
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d41454824632475f0e88aa6e0031ec643bd37e1d575df36cd3ee63daf1403281
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:0c7f72546d0d918bfd21aff7157b983ff7c832b269f5efb84d2ed723a09bf612
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:6cec76d7ea70d77923cf4285177e375d34e96e3aecbe77b68cd5ff769e6e540b
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:2dd72760f736ab13e87d6e507e654c390d2d6af3154c6adb85610b5f58085b9c
        - registry.redhat.io/rhel9/redis-7@sha256:2fca0decc49230122f044afb2e7cd8f64921a00141c8c22c2f1402f3564f87f8
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:0b1771f697a700263c5b827dbde56a5c9bab610e9d7df55ef93885a4e54cc0e9
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:a9e2360f00c5c9840a100a6748bd905b8f34169140a33fb0ca4af9cf6db71642
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:5bda26e2c16beebf66dd8f3c3c55d48e2f00db870f2d9d4d44570d9d3b8bddb0
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:4d945dd1a6fc0e8b6cfc16f4359128f1427b094e76efd4ff31325a1839246107
        version: 1.15.4
      entries:
      - name: openshift-gitops-operator.v1.15.4
        version: 1.15.4
      - name: openshift-gitops-operator.v1.15.3
        version: 1.15.3
      - name: openshift-gitops-operator.v1.15.2
        version: 1.15.2
      - name: openshift-gitops-operator.v1.15.1
        version: 1.15.1
      - name: openshift-gitops-operator.v1.15.0-0.1738074324.p
        version: 1.15.0+0.1738074324.p
      - name: openshift-gitops-operator.v1.15.0
        version: 1.15.0
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.15
    - currentCSV: openshift-gitops-operator.v1.16.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:5672066f6a9d79c2ad2b8e44713fa67f384f5e1af803ce92c1bb807e12eb2ab4
          createdAt: "2025-09-30T07:01:55Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:3a58f07c4a562d106ec65fbeac3329fd06035e0da4627199cc984200e8365fac
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v2.14.21\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:3a58f07c4a562d106ec65fbeac3329fd06035e0da4627199cc984200e8365fac
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:1e7fb9262023798711dc58fecf9c57c2fbd260a7f942eef2a9fd2822dbfb0b74
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:636d307f13d82dd8984e362490fb3c8938b05d452e65f44c7c247e7fc4a8be8c
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:1a4d9d6d6c917a161fa3797fedf722a1ba9211eaa4c52cf976bebb629eabe40c
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:1935460f871ad2cc9fe097e1a7e32a67b4b4a3c58aa0412cffc28823f4ffb49f
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:2d361df79b6ea75f15eed2d6726303351298b47b4fee75aa8aac255a19e1ddbf
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:cebe39bdefb8ffc375f3d5f14bee4249f9886678a75fc5c80e43c6daabc5ef16
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:306ddf66c42edbebfdd35199b00edec8e3b01080e320b8d26f4527e89ff81f82
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:5672066f6a9d79c2ad2b8e44713fa67f384f5e1af803ce92c1bb807e12eb2ab4
        version: 1.16.5
      entries:
      - name: openshift-gitops-operator.v1.16.5
        version: 1.16.5
      - name: openshift-gitops-operator.v1.16.4
        version: 1.16.4
      - name: openshift-gitops-operator.v1.16.3
        version: 1.16.3
      - name: openshift-gitops-operator.v1.16.2
        version: 1.16.2
      - name: openshift-gitops-operator.v1.16.1
        version: 1.16.1
      - name: openshift-gitops-operator.v1.16.0-0.1746014725.p
        version: 1.16.0+0.1746014725.p
      - name: openshift-gitops-operator.v1.16.0
        version: 1.16.0
      - name: openshift-gitops-operator.v1.15.1
        version: 1.15.1
      - name: openshift-gitops-operator.v1.15.0
        version: 1.15.0
      - name: openshift-gitops-operator.v1.15.0-0.1738074324.p
        version: 1.15.0+0.1738074324.p
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.16
    - currentCSV: openshift-gitops-operator.v1.17.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad283faec7d54c2d4d255800929963c4e9ba929ddae1e779ff661088d7ceab0d
          createdAt: "2025-12-08T07:34:14Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:acc435158c325019d6c479c7d41107945207518869b434ea5c827c8c9babd00b
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.0.20\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:e1101b02df32a56a9aec80639372248b72963240dc86add446d0d07da65baca7
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:c02ad9e0709fbe52a34d9e8c146c90782cd49e351ce27e74e299cb9762246562
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad283faec7d54c2d4d255800929963c4e9ba929ddae1e779ff661088d7ceab0d
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8ea41862301665deb2eafd16fa19d4d76663cd20829256b575ba7090889cff82
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:d5233a088e71464f08d05f8a1f04efc236684634c89afcb93dbf3ac81a740a82
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bafe22c773f034d4cb4c0498f2f669abff23927378b424a05ba13b196f242710
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:eb6bb1adf263abf1cc4f297f9db8289aff4c8bd73c3f9b8968facc1bdd2ee17a
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:acc435158c325019d6c479c7d41107945207518869b434ea5c827c8c9babd00b
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:56ea8e384f20a903c9b42da1d244f0ec98c77916e4efebb53f876e459761038e
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:724b4f15d0c255cc9c096cb44331ddc2e6456d4909d03ce463478af76b33304e
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        version: 1.17.3
      entries:
      - name: openshift-gitops-operator.v1.17.3
        version: 1.17.3
      - name: openshift-gitops-operator.v1.17.2
        version: 1.17.2
      - name: openshift-gitops-operator.v1.17.1
        version: 1.17.1
      - name: openshift-gitops-operator.v1.17.0
        version: 1.17.0
      name: gitops-1.17
    - currentCSV: openshift-gitops-operator.v1.18.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - \"\"\n  - discovery.k8s.io\n  kinds:\n  - Endpoints\n  - EndpointSlice\n- apiGroups:\n  - apiregistration.k8s.io\n  kinds:\n  - APIService\n- apiGroups:\n  - coordination.k8s.io\n  kinds:\n  - Lease\n- apiGroups:\n  - authentication.k8s.io\n  - authorization.k8s.io\n  kinds:\n  - SelfSubjectReview\n  - TokenReview\n  - LocalSubjectAccessReview\n  - SelfSubjectAccessReview\n  - SelfSubjectRulesReview\n  - SubjectAccessReview\n- apiGroups:\n  - certificates.k8s.io\n  kinds:\n  - CertificateSigningRequest\n- apiGroups:\n  - cert-manager.io\n  kinds:\n  - CertificateRequest\n- apiGroups:\n  - cilium.io\n  kinds:\n  - CiliumIdentity\n  - CiliumEndpoint\n  - CiliumEndpointSlice\n- apiGroups:\n  - kyverno.io\n  - reports.kyverno.io\n  - wgpolicyk8s.io\n  kinds:\n  - PolicyReport\n  - ClusterPolicyReport\n  - EphemeralReport\n  - ClusterEphemeralReport\n  - AdmissionReport\n  - ClusterAdmissionReport\n  - BackgroundScanReport\n  - ClusterBackgroundScanReport\n  - UpdateRequest\n- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun\n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:95aa28b8b04efde78d2e4495d2c58e7f8ebd5b399cb2afda927eb01011d2061e
          createdAt: "2025-11-20T04:44:08Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:93d8de005289f52067f01295aad9ac47a1a618dd2f0865d2d8e2a3130281383d
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.1.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:684edd8ef336440fe06964bd977c0051ffb1b4df00c47ccabed710c48d19bbc3
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:93d8de005289f52067f01295aad9ac47a1a618dd2f0865d2d8e2a3130281383d
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b4d6b30d562e1cacbb1ca461e8c14b95c0d42be1baf876599c446669f2584feb
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c0e231e430daaff0b7a5b06f9b8628a2fe0ea3a82a314d42a364fe7f883f075a
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:337d52feb9a42ad04aa91211f41040db48e2de3a09266a516183882f9f587a6a
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:89263c0ed73f6f3bf6f73d9ed32c459489e1adf2b423ab73926b5343064d88a8
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:d5cf5da89528ed1505c0695183f432f1501b0226ce6402e84b7895ad14620d5d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:d7cec49c3e3ef02a3378ecd94f64a7e94f5ed93b5e7e6ff81f8d758eeabcb7c0
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:772adc241b808829d62631a288cef0b3d9cfb617f00d84aa3893616e48e30885
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:95aa28b8b04efde78d2e4495d2c58e7f8ebd5b399cb2afda927eb01011d2061e
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        version: 1.18.2
      entries:
      - name: openshift-gitops-operator.v1.18.2
        version: 1.18.2
      - name: openshift-gitops-operator.v1.18.1
        version: 1.18.1
      - name: openshift-gitops-operator.v1.18.0
        version: 1.18.0
      name: gitops-1.18
    - currentCSV: openshift-gitops-operator.v1.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - \"\"\n  - discovery.k8s.io\n  kinds:\n  - Endpoints\n  - EndpointSlice\n- apiGroups:\n  - apiregistration.k8s.io\n  kinds:\n  - APIService\n- apiGroups:\n  - coordination.k8s.io\n  kinds:\n  - Lease\n- apiGroups:\n  - authentication.k8s.io\n  - authorization.k8s.io\n  kinds:\n  - SelfSubjectReview\n  - TokenReview\n  - LocalSubjectAccessReview\n  - SelfSubjectAccessReview\n  - SelfSubjectRulesReview\n  - SubjectAccessReview\n- apiGroups:\n  - certificates.k8s.io\n  kinds:\n  - CertificateSigningRequest\n- apiGroups:\n  - cert-manager.io\n  kinds:\n  - CertificateRequest\n- apiGroups:\n  - cilium.io\n  kinds:\n  - CiliumIdentity\n  - CiliumEndpoint\n  - CiliumEndpointSlice\n- apiGroups:\n  - kyverno.io\n  - reports.kyverno.io\n  - wgpolicyk8s.io\n  kinds:\n  - PolicyReport\n  - ClusterPolicyReport\n  - EphemeralReport\n  - ClusterEphemeralReport\n  - AdmissionReport\n  - ClusterAdmissionReport\n  - BackgroundScanReport\n  - ClusterBackgroundScanReport\n  - UpdateRequest\n- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun\n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
          createdAt: "2025-11-20T04:37:10Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.0 <1.19.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: ImageUpdater
            name: imageupdaters.argocd-image-updater.argoproj.io
            version: v1alpha1
          - kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.1.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:5e78b9e6a98218c209af1d85e60c2000172a90f178f32f06f0e3b6bc11f33cce
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:5365dfcdcedde372b9d7cc787107b05f997c7526fd1d473e26f843718a5be92d
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c650147ab5940d7095eaee89ba75956726838595057ab6b216d41d0f09265f30
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8afea9d7876656c931f8050979d6d92c85b01069c7a5f2de46c0f65002663458
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
        version: 1.19.0
      entries:
      - name: openshift-gitops-operator.v1.19.0
        version: 1.19.0
      name: gitops-1.19
    - currentCSV: openshift-gitops-operator.v1.6.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:104cc7564fcc3261faa3fbf9c95720b4434e15103b876c080ed012b244ef1dae
          createdAt: "2021-09-15T22:31:21Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD v2.4.28\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces. \n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc.
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:104cc7564fcc3261faa3fbf9c95720b4434e15103b876c080ed012b244ef1dae
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0cc4fa704e581cd5581c816668183f602fae6ef9ab3c04ce0d99d561287ef140
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:dbcad68b70ab7918e944099aef4177c9bc3378e9ca49499dbb94a175927d3209
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:e9e2f950cda8153cff112e43872b98e4977d3cbdf59713b8de92defef6d34b6d
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:06f1150114d4c0bd236d2a5d4716c9c3e95a9733058297790389d6ba2a1bf264
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b22190de3162d3e03481cae8904ce563912756eea7ac7e7feec0acbbdae5e6f6
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        version: 1.6.6
      entries:
      - name: openshift-gitops-operator.v1.6.6
        version: 1.6.6
      - name: openshift-gitops-operator.v1.6.5
        version: 1.6.5
      - name: openshift-gitops-operator.v1.6.4
        version: 1.6.4
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.6
    - currentCSV: openshift-gitops-operator.v1.7.4-0.1690486082.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:e0967a4058fe5a9bfe7e998a3347529c99536cf3a44de9e40f9632035ff5a2fe
          createdAt: "2021-09-15T22:31:21Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          olm.substitutesFor: openshift-gitops-operator.v1.7.4
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD v2.5.16\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficient privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces. \n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc.
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:f1371d2012796e9aaca105112190ff89ec3d0be95968e05b19db101480f67975
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:c2f39be75173b4cc57498c5845b14c464bf9af92b49716df9661c8135ac2cf7a
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:45789c49d9334e0ed062641313714c101bd0117dc5633316b1ec63e7a6c76c15
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:5c11be8ec9db54331893f2f298aa27006e77b0eaded2d88d0531c77da91a421f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:e0967a4058fe5a9bfe7e998a3347529c99536cf3a44de9e40f9632035ff5a2fe
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c55aadf45397083bec4e42d6c0514ed79169a07fd3d9d75671904df2c0520e52
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:26050fb95978e90e8d00e895032045e77cb236008a0e1417459e1aeca8a48c69
        version: 1.7.4+0.1690486082.p
      entries:
      - name: openshift-gitops-operator.v1.7.4-0.1690486082.p
        version: 1.7.4+0.1690486082.p
      - name: openshift-gitops-operator.v1.7.4
        version: 1.7.4
      - name: openshift-gitops-operator.v1.7.3
        version: 1.7.3
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.7
    - currentCSV: openshift-gitops-operator.v1.8.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:f32df77b3c23d6a833ff887386285ca7a5bd436641f0ec1ffc934c8247fa315f
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          olm.skipRange: ""
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.6.153\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8cc59901689858e06f5c2942f8c975449c17454fa8364da6153d9b5a3538a985
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b2d58f4dc20eb7e17e09af0e8c5de55fa04f9f4f697e10c6be81a7a6a08381b2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:f32df77b3c23d6a833ff887386285ca7a5bd436641f0ec1ffc934c8247fa315f
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0d13c03048b4435d9f5045a6fb7bd4b8808461b26aeca60c0047fa5937e1d45d
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:f77594bc053be144b33ff9603ee9675c7e82946ec0dbfb04d8f942c8d73155da
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:8aa68fddef88921aeeede24a849d3dabbceff01dc03185342c21e6ee58033eaf
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:16d9184345e6d5a19f326a7b52f76d8a59b96763f233c50546ff017a625e5ff5
        version: 1.8.6
      entries:
      - name: openshift-gitops-operator.v1.8.6
        version: 1.8.6
      - name: openshift-gitops-operator.v1.8.5
        version: 1.8.5
      - name: openshift-gitops-operator.v1.8.4-0.1693214052.p
        version: 1.8.4+0.1693214052.p
      - name: openshift-gitops-operator.v1.8.4
        version: 1.8.4
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.8
    - currentCSV: openshift-gitops-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "argo-rollout"
                },
                "spec": null
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:11a6084e11aa32511a34bd6cfb4f4995aec690c1f5ed61861e99f6e42d62afb4
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          olm.skipRange: ""
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.7.16\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:11a6084e11aa32511a34bd6cfb4f4995aec690c1f5ed61861e99f6e42d62afb4
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:3873d1f18b5643e1de2601419410270342650a21428bb26a4cbee20c0c63f98b
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:136d3a936759e112d3ea2e78f7c02bd882b0fd3011f4c452f45c32c43822772d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:43bb961d847477902e66a92edd1539322cac8d5f74706b048a458ad037a0c7a3
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:80f92842fe4cba008a873ad2ab6059a3a24e76e16671d8ece034dbbe666996bc
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:86012145d4b8798dc12f6f4f07a9316a193188aaac865e324b63f4e60e8ec584
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:3d17786e2f4063154b9e3a40b96bf8ec0a14b86395cea5fe7ca18c5b43764478
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:27efa0ab1d9c69047a924bc1dcd2b56108f5f390a6da56afb6ab7a37cb4578e2
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:a568c8c647e2e2d6abdf12138eeef8f8bdde1fdcbf786e9ca8c8f93bc79acaf9
        version: 1.9.4
      entries:
      - name: openshift-gitops-operator.v1.9.4
        version: 1.9.4
      - name: openshift-gitops-operator.v1.9.3
        version: 1.9.3
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.9
    - currentCSV: openshift-gitops-operator.v1.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - \"\"\n  - discovery.k8s.io\n  kinds:\n  - Endpoints\n  - EndpointSlice\n- apiGroups:\n  - apiregistration.k8s.io\n  kinds:\n  - APIService\n- apiGroups:\n  - coordination.k8s.io\n  kinds:\n  - Lease\n- apiGroups:\n  - authentication.k8s.io\n  - authorization.k8s.io\n  kinds:\n  - SelfSubjectReview\n  - TokenReview\n  - LocalSubjectAccessReview\n  - SelfSubjectAccessReview\n  - SelfSubjectRulesReview\n  - SubjectAccessReview\n- apiGroups:\n  - certificates.k8s.io\n  kinds:\n  - CertificateSigningRequest\n- apiGroups:\n  - cert-manager.io\n  kinds:\n  - CertificateRequest\n- apiGroups:\n  - cilium.io\n  kinds:\n  - CiliumIdentity\n  - CiliumEndpoint\n  - CiliumEndpointSlice\n- apiGroups:\n  - kyverno.io\n  - reports.kyverno.io\n  - wgpolicyk8s.io\n  kinds:\n  - PolicyReport\n  - ClusterPolicyReport\n  - EphemeralReport\n  - ClusterEphemeralReport\n  - AdmissionReport\n  - ClusterAdmissionReport\n  - BackgroundScanReport\n  - ClusterBackgroundScanReport\n  - UpdateRequest\n- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun\n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
          createdAt: "2025-11-20T04:37:10Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.0 <1.19.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: ImageUpdater
            name: imageupdaters.argocd-image-updater.argoproj.io
            version: v1alpha1
          - kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.1.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:5e78b9e6a98218c209af1d85e60c2000172a90f178f32f06f0e3b6bc11f33cce
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8afea9d7876656c931f8050979d6d92c85b01069c7a5f2de46c0f65002663458
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:5365dfcdcedde372b9d7cc787107b05f997c7526fd1d473e26f843718a5be92d
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c650147ab5940d7095eaee89ba75956726838595057ab6b216d41d0f09265f30
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        version: 1.19.0
      entries:
      - name: openshift-gitops-operator.v1.19.0
        version: 1.19.0
      - name: openshift-gitops-operator.v1.18.2
        version: 1.18.2
      - name: openshift-gitops-operator.v1.18.1
        version: 1.18.1
      - name: openshift-gitops-operator.v1.18.0
        version: 1.18.0
      - name: openshift-gitops-operator.v1.17.1
        version: 1.17.1
      - name: openshift-gitops-operator.v1.17.0
        version: 1.17.0
      - name: openshift-gitops-operator.v1.16.2
        version: 1.16.2
      - name: openshift-gitops-operator.v1.16.1
        version: 1.16.1
      - name: openshift-gitops-operator.v1.16.0-0.1746014725.p
        version: 1.16.0+0.1746014725.p
      - name: openshift-gitops-operator.v1.16.0
        version: 1.16.0
      - name: openshift-gitops-operator.v1.15.1
        version: 1.15.1
      - name: openshift-gitops-operator.v1.15.0-0.1738074324.p
        version: 1.15.0+0.1738074324.p
      - name: openshift-gitops-operator.v1.15.0
        version: 1.15.0
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: latest
    defaultChannel: latest
    packageName: openshift-gitops-operator
    provider:
      name: Red Hat Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CyberArk
      provider-url: https://www.cyberark.com/
    name: conjur-follower-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: conjur-follower-operator.v2.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "conjur.cyberark.com/v1",
                "kind": "ConjurFollower",
                "metadata": {
                  "labels": {
                    "app": "conjur-follower"
                  },
                  "name": "my-conjur-follower",
                  "namespace": "cyberark-conjur"
                },
                "spec": {
                  "images": {
                    "configurator": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:75fb5de2c111084ffcc3d973e6c63f1adfae78e29f6fd02152419fbca553ce7b",
                    "conjur": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:bee2cd31b3620a31e98f9d21326a2cdcecb36479099b06cc9660e4e83354d940",
                    "failoverRebaser": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:383776c23556a0a327a0bacc843d22c4b1516082ddd0cfb8a8275500f2eb841a",
                    "info": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:a9b109c7f3bfba5553aa4366338fa211896564f8e33856d75b4918acf8429f1e",
                    "nginx": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:b3096c17e7f3b9d723c906619dde293ea084e78c0da48c534335a8eee07b23c7",
                    "postgres": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:680a2044bc0e94fbc9376cd1eed9d067de91657f566c9752654480c939447841",
                    "syslogNg": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:ed53aea1866b1e2262386ac38cb9e1e47cc3f9047ae47f49070e2f506af6ca5a"
                  },
                  "livenessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "master": {
                    "account": "demo",
                    "audience": "https://conjur.host.name/",
                    "authentication": "authn-jwt",
                    "authenticatorID": "my-authenticator-id",
                    "caCertificateFrom": {
                      "configMapKeyRef": {
                        "key": "ca.crt",
                        "name": "conjur-master-ca.crt"
                      }
                    },
                    "hostname": "conjur-master.mycompany.local"
                  },
                  "readinessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          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: "true"
          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.skipRange: '>=2.5.0 <2.5.3'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: CyberArk
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConjurFollower is the Schema for the conjurfollowers API
            displayName: ConjurFollower
            kind: ConjurFollower
            name: conjurfollowers.conjur.cyberark.com
            version: v1
        description: |-
          Use this Operator for managing Conjur Followers in an OpenShift cluster.

          CyberArk products secure your most sensitive and high-value assets—and supporting your Identity Security goals is our top priority. We offer 24/7 service for high priority issues to all customers with resources across ten countries and in all continents.

          CyberArk Conjur makes secrets management simple. Conjur provides a seamless open source interface to securely authenticate, control, and audit non-human access across tools, applications, containers, and cloud environments via robust secrets management.
        displayName: Conjur Enterprise Follower Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - credential
        - cyber
        - cyberark
        - conjur
        - enterprise
        - management
        - password
        - secret
        - secrets management
        - security
        - vault
        links:
        - name: Conjur Secrets Manager Enterprise Documentation
          url: https://docs.cyberark.com/Product-Doc/OnlineHelp/AAM-DAP/Latest/en/Content/Resources/_TopNav/cc_Home.htm
        maintainers:
        - email: conj_maintainers@cyberark.com
          name: Conjur Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:383776c23556a0a327a0bacc843d22c4b1516082ddd0cfb8a8275500f2eb841a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:75fb5de2c111084ffcc3d973e6c63f1adfae78e29f6fd02152419fbca553ce7b
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:ed53aea1866b1e2262386ac38cb9e1e47cc3f9047ae47f49070e2f506af6ca5a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:a9b109c7f3bfba5553aa4366338fa211896564f8e33856d75b4918acf8429f1e
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:b3096c17e7f3b9d723c906619dde293ea084e78c0da48c534335a8eee07b23c7
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:680a2044bc0e94fbc9376cd1eed9d067de91657f566c9752654480c939447841
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:bee2cd31b3620a31e98f9d21326a2cdcecb36479099b06cc9660e4e83354d940
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator-bundle@sha256:60b293c23587072b3376f83afee95b0207228c5c7b80483b025adda572c3551d
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator@sha256:cf46bdb4238cdb1dc51329822da55b7836958be2344d26f9e1819c0aa97fece6
        version: 2.5.3
      entries:
      - name: conjur-follower-operator.v2.5.3
        version: 2.5.3
      name: "2.5"
    - currentCSV: conjur-follower-operator.v2.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "conjur.cyberark.com/v1",
                "kind": "ConjurFollower",
                "metadata": {
                  "labels": {
                    "app": "conjur-follower"
                  },
                  "name": "my-conjur-follower",
                  "namespace": "cyberark-conjur"
                },
                "spec": {
                  "images": {
                    "configurator": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473",
                    "conjur": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e",
                    "ephemeralSecrets": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b",
                    "failoverRebaser": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3",
                    "info": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5",
                    "nginx": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6",
                    "postgres": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46",
                    "syslogNg": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a"
                  },
                  "livenessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "master": {
                    "account": "demo",
                    "audience": "https://conjur.host.name/",
                    "authentication": "authn-jwt",
                    "authenticatorID": "my-authenticator-id",
                    "caCertificateFrom": {
                      "configMapKeyRef": {
                        "key": "ca.crt",
                        "name": "conjur-master-ca.crt"
                      }
                    },
                    "hostname": "conjur-master.mycompany.local"
                  },
                  "readinessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          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: "true"
          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.skipRange: ""
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: CyberArk
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConjurFollower is the Schema for the conjurfollowers API
            displayName: ConjurFollower
            kind: ConjurFollower
            name: conjurfollowers.conjur.cyberark.com
            version: v1
        description: |-
          Use this Operator for managing Conjur Followers in an OpenShift cluster.

          CyberArk products secure your most sensitive and high-value assets—and supporting your Identity Security goals is our top priority. We offer 24/7 service for high priority issues to all customers with resources across ten countries and in all continents.

          CyberArk Conjur makes secrets management simple. Conjur provides a seamless open source interface to securely authenticate, control, and audit non-human access across tools, applications, containers, and cloud environments via robust secrets management.
        displayName: Conjur Enterprise Follower Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - credential
        - cyber
        - cyberark
        - conjur
        - enterprise
        - management
        - password
        - secret
        - secrets management
        - security
        - vault
        links:
        - name: Conjur Secrets Manager Enterprise Documentation
          url: https://docs.cyberark.com/Product-Doc/OnlineHelp/AAM-DAP/Latest/en/Content/Resources/_TopNav/cc_Home.htm
        maintainers:
        - email: conj_maintainers@cyberark.com
          name: Conjur Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator@sha256:69d276feb493b8450c42efeeb56d0a741855004505e1e3776e5a9d382358f7ad
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator-bundle@sha256:bb3beb8cd763b581c9471ff7f38d76ae3bc124587b5c3aa5b3af145641059582
        version: 2.7.1
      entries:
      - name: conjur-follower-operator.v2.7.1
        version: 2.7.1
      - name: conjur-follower-operator.v2.7.0
        version: 2.7.0
      - name: conjur-follower-operator.v2.6.3
        version: 2.6.3
      - name: conjur-follower-operator.v2.6.2
        version: 2.6.2
      - name: conjur-follower-operator.v2.6.1
        version: 2.6.1
      - name: conjur-follower-operator.v2.6.0
        version: 2.6.0
      - name: conjur-follower-operator.v2.5.0
        version: 2.5.0
      - name: conjur-follower-operator.v2.4.4
        version: 2.4.4
      - name: conjur-follower-operator.v2.4.3
        version: 2.4.3
      - name: conjur-follower-operator.v2.4.2
        version: 2.4.2
      - name: conjur-follower-operator.v2.3.5
        version: 2.3.5
      - name: conjur-follower-operator.v2.3.4
        version: 2.3.4
      - name: conjur-follower-operator.v2.3.1-290
        version: 2.3.1
      - name: conjur-follower-operator.v2.3.0
        version: 2.3.0
      - name: conjur-follower-operator.v2.2.4
        version: 2.2.4
      - name: conjur-follower-operator.v2.2.2
        version: 2.2.2
      - name: conjur-follower-operator.v2.2.1
        version: 2.2.1
      name: preview
    - currentCSV: conjur-follower-operator.v2.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "conjur.cyberark.com/v1",
                "kind": "ConjurFollower",
                "metadata": {
                  "labels": {
                    "app": "conjur-follower"
                  },
                  "name": "my-conjur-follower",
                  "namespace": "cyberark-conjur"
                },
                "spec": {
                  "images": {
                    "configurator": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473",
                    "conjur": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e",
                    "ephemeralSecrets": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b",
                    "failoverRebaser": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3",
                    "info": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5",
                    "nginx": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6",
                    "postgres": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46",
                    "syslogNg": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a"
                  },
                  "livenessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "master": {
                    "account": "demo",
                    "audience": "https://conjur.host.name/",
                    "authentication": "authn-jwt",
                    "authenticatorID": "my-authenticator-id",
                    "caCertificateFrom": {
                      "configMapKeyRef": {
                        "key": "ca.crt",
                        "name": "conjur-master-ca.crt"
                      }
                    },
                    "hostname": "conjur-master.mycompany.local"
                  },
                  "readinessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          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: "true"
          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.skipRange: ""
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: CyberArk
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConjurFollower is the Schema for the conjurfollowers API
            displayName: ConjurFollower
            kind: ConjurFollower
            name: conjurfollowers.conjur.cyberark.com
            version: v1
        description: |-
          Use this Operator for managing Conjur Followers in an OpenShift cluster.

          CyberArk products secure your most sensitive and high-value assets—and supporting your Identity Security goals is our top priority. We offer 24/7 service for high priority issues to all customers with resources across ten countries and in all continents.

          CyberArk Conjur makes secrets management simple. Conjur provides a seamless open source interface to securely authenticate, control, and audit non-human access across tools, applications, containers, and cloud environments via robust secrets management.
        displayName: Conjur Enterprise Follower Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - credential
        - cyber
        - cyberark
        - conjur
        - enterprise
        - management
        - password
        - secret
        - secrets management
        - security
        - vault
        links:
        - name: Conjur Secrets Manager Enterprise Documentation
          url: https://docs.cyberark.com/Product-Doc/OnlineHelp/AAM-DAP/Latest/en/Content/Resources/_TopNav/cc_Home.htm
        maintainers:
        - email: conj_maintainers@cyberark.com
          name: Conjur Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator-bundle@sha256:bb3beb8cd763b581c9471ff7f38d76ae3bc124587b5c3aa5b3af145641059582
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator@sha256:69d276feb493b8450c42efeeb56d0a741855004505e1e3776e5a9d382358f7ad
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5
        version: 2.7.1
      entries:
      - name: conjur-follower-operator.v2.7.1
        version: 2.7.1
      - name: conjur-follower-operator.v2.7.0
        version: 2.7.0
      - name: conjur-follower-operator.v2.6.3
        version: 2.6.3
      - name: conjur-follower-operator.v2.6.2
        version: 2.6.2
      - name: conjur-follower-operator.v2.6.1
        version: 2.6.1
      - name: conjur-follower-operator.v2.6.0
        version: 2.6.0
      - name: conjur-follower-operator.v2.5.0
        version: 2.5.0
      - name: conjur-follower-operator.v2.4.4
        version: 2.4.4
      - name: conjur-follower-operator.v2.4.3
        version: 2.4.3
      - name: conjur-follower-operator.v2.4.2
        version: 2.4.2
      - name: conjur-follower-operator.v2.3.5
        version: 2.3.5
      - name: conjur-follower-operator.v2.3.4
        version: 2.3.4
      - name: conjur-follower-operator.v2.3.1-290
        version: 2.3.1
      - name: conjur-follower-operator.v2.3.0
        version: 2.3.0
      - name: conjur-follower-operator.v2.2.4
        version: 2.2.4
      - name: conjur-follower-operator.v2.2.2
        version: 2.2.2
      - name: conjur-follower-operator.v2.2.1
        version: 2.2.1
      name: stable
    defaultChannel: stable
    packageName: conjur-follower-operator
    provider:
      name: CyberArk
      url: https://www.cyberark.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Aerospike
      provider-url: ""
    name: aerospike-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aerospike-kubernetes-operator.v2.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeCluster",
                "metadata": {
                  "name": "aerocluster",
                  "namespace": "aerospike"
                },
                "spec": {
                  "aerospikeConfig": {
                    "namespaces": [
                      {
                        "memory-size": 3000000000,
                        "name": "test",
                        "replication-factor": 2,
                        "storage-engine": {
                          "type": "memory"
                        }
                      }
                    ],
                    "network": {
                      "fabric": {
                        "port": 3001
                      },
                      "heartbeat": {
                        "port": 3002
                      },
                      "service": {
                        "port": 3000
                      }
                    },
                    "service": {
                      "feature-key-file": "/etc/aerospike/secret/features.conf"
                    }
                  },
                  "image": "aerospike/aerospike-server-enterprise:6.3.0.0",
                  "podSpec": {
                    "multiPodPerHost": true
                  },
                  "size": 2,
                  "storage": {
                    "volumes": [
                      {
                        "aerospike": {
                          "path": "/etc/aerospike/secret"
                        },
                        "name": "aerospike-config-secret",
                        "source": {
                          "secret": {
                            "secretName": "aerospike-secret"
                          }
                        }
                      }
                    ]
                  },
                  "validationPolicy": {
                    "skipWorkDirValidate": true,
                    "skipXdrDlogFileValidate": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Database
          containerImage: docker.io/aerospike/aerospike-kubernetes-operator:2.5.0
          createdAt: 2023-05-04T09:32:47UTC
          description: The Aerospike Kubernetes Operator automates the deployment
            and management of Aerospike enterprise clusters on Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/aerospike/aerospike-kubernetes-operator/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AerospikeCluster is the schema for the AerospikeCluster API
            displayName: Aerospike Cluster
            kind: AerospikeCluster
            name: aerospikeclusters.asdb.aerospike.com
            version: v1beta1
        description: |
          The Aerospike Kubernetes Operator automates the deployment and management of Aerospike enterprise clusters on Kubernetes. The operator allows you to deploy multi-node Aerospike clusters, recover automatically from node failures, scale up or down automatically as load changes, ensure nodes are evenly split across racks or zones, automatically update to new versions of Aerospike and manage configuration changes in your clusters.

          ### Capabilities:

           -   Deploy Aerospike clusters
           -   Scale up and down existing Aerospike clusters
           -   Version upgrade and downgrade
           -   Configure persistent storage and resource allocation
           -   Standardize and validate configurations
           -   Cluster security management
        displayName: Aerospike Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Aerospike
        links:
        - name: Documentation
          url: https://docs.aerospike.com/cloud/kubernetes/operator
        - name: Aerospike
          url: https://aerospike.com
        maintainers:
        - email: developers@aerospike.com
          name: Aerospike, Inc.
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Aerospike
        relatedImages:
        - docker.io/aerospike/aerospike-kubernetes-operator:2.5.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/openshift-community-operators/aerospike-kubernetes-operator@sha256:bfa83ff729ef8b3a4ebca27b02e223327d3e1351d8bc78a06c18873d288dfb02
        version: 2.5.0
      entries:
      - name: aerospike-kubernetes-operator.v2.5.0
        version: 2.5.0
      - name: aerospike-kubernetes-operator.v2.4.0
        version: 2.4.0
      - name: aerospike-kubernetes-operator.v2.3.0
        version: 2.3.0
      - name: aerospike-kubernetes-operator.v2.2.1
        version: 2.2.1
      - name: aerospike-kubernetes-operator.v2.2.0
        version: 2.2.0
      - name: aerospike-kubernetes-operator.v2.1.0
        version: 2.1.0
      name: alpha
    - currentCSV: aerospike-kubernetes-operator.v4.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "asdb.aerospike.com/v1",
                "kind": "AerospikeCluster",
                "metadata": {
                  "name": "aerocluster",
                  "namespace": "aerospike"
                },
                "spec": {
                  "aerospikeConfig": {
                    "namespaces": [
                      {
                        "name": "test",
                        "replication-factor": 2,
                        "storage-engine": {
                          "data-size": 1073741824,
                          "type": "memory"
                        }
                      }
                    ],
                    "network": {
                      "fabric": {
                        "port": 3001
                      },
                      "heartbeat": {
                        "port": 3002
                      },
                      "service": {
                        "port": 3000
                      }
                    },
                    "service": {
                      "feature-key-file": "/etc/aerospike/secret/features.conf"
                    }
                  },
                  "image": "aerospike/aerospike-server-enterprise:8.1.0.0",
                  "podSpec": {
                    "multiPodPerHost": true
                  },
                  "size": 2,
                  "storage": {
                    "volumes": [
                      {
                        "aerospike": {
                          "path": "/etc/aerospike/secret"
                        },
                        "name": "aerospike-config-secret",
                        "source": {
                          "secret": {
                            "secretName": "aerospike-secret"
                          }
                        }
                      }
                    ]
                  },
                  "validationPolicy": {
                    "skipWorkDirValidate": true,
                    "skipXdrDlogFileValidate": true
                  }
                }
              },
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeBackup",
                "metadata": {
                  "name": "aerospikebackup",
                  "namespace": "aerospike"
                },
                "spec": {
                  "backupService": {
                    "name": "aerospikebackupservice-sample",
                    "namespace": "aerospike"
                  },
                  "config": {
                    "aerospike-cluster": {
                      "aerospike-aerospikebackup-test-cluster": {
                        "credentials": {
                          "password": "admin123",
                          "user": "admin"
                        },
                        "seed-nodes": [
                          {
                            "host-name": "aerocluster.aerospike.svc.cluster.local",
                            "port": 3000
                          }
                        ]
                      }
                    },
                    "backup-routines": {
                      "aerospike-aerospikebackup-test-routine": {
                        "backup-policy": "test-policy",
                        "incr-interval-cron": "@hourly",
                        "interval-cron": "@daily",
                        "namespaces": [
                          "test"
                        ],
                        "source-cluster": "aerospike-aerospikebackup-test-cluster",
                        "storage": "local"
                      },
                      "aerospike-aerospikebackup-test-routine1": {
                        "backup-policy": "test-policy1",
                        "incr-interval-cron": "@hourly",
                        "interval-cron": "@daily",
                        "namespaces": [
                          "test"
                        ],
                        "source-cluster": "aerospike-aerospikebackup-test-cluster",
                        "storage": "s3Storage"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeBackupService",
                "metadata": {
                  "name": "aerospikebackupservice-sample",
                  "namespace": "aerospike"
                },
                "spec": {
                  "config": {
                    "backup-policies": {
                      "test-policy": {
                        "parallel": 3
                      },
                      "test-policy1": {
                        "parallel": 3
                      }
                    },
                    "service": {
                      "http": {
                        "port": 8081
                      }
                    },
                    "storage": {
                      "local": {
                        "local-storage": {
                          "path": "/tmp/localStorage"
                        }
                      },
                      "s3Storage": {
                        "s3-storage": {
                          "bucket": "aerospike-kubernetes-operator-test",
                          "s3-profile": "default",
                          "s3-region": "us-east-1"
                        }
                      }
                    }
                  },
                  "image": "aerospike/aerospike-backup-service:3.2.0",
                  "secrets": [
                    {
                      "secretName": "aws-secret",
                      "volumeMount": {
                        "mountPath": "/root/.aws/credentials",
                        "name": "aws-secret",
                        "subPath": "credentials"
                      }
                    }
                  ],
                  "service": {
                    "type": "LoadBalancer"
                  }
                }
              },
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeRestore",
                "metadata": {
                  "name": "aerospikerestore-sample",
                  "namespace": "aerospike"
                },
                "spec": {
                  "backupService": {
                    "name": "aerospikebackupservice-sample",
                    "namespace": "aerospike"
                  },
                  "config": {
                    "backup-data-path": "aerospike-aerospikebackup-test-routine/backup/1733506015827/data/test",
                    "destination": {
                      "credentials": {
                        "password": "admin123",
                        "user": "admin"
                      },
                      "label": "destinationCluster",
                      "seed-nodes": [
                        {
                          "host-name": "aerocluster.test.svc.cluster.local",
                          "port": 3000
                        }
                      ]
                    },
                    "policy": {
                      "no-generation": true,
                      "no-indexes": true,
                      "parallel": 3
                    },
                    "source": {
                      "local-storage": {
                        "path": "/tmp/localStorage"
                      }
                    }
                  },
                  "type": "Full"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: docker.io/aerospike/aerospike-kubernetes-operator:4.1.2
          createdAt: "2025-12-04T06:56:33Z"
          description: The Aerospike Kubernetes Operator automates the deployment
            and management of Aerospike enterprise clusters on Kubernetes.
          olm.skipRange: '>=4.0.0 <4.1.2'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/aerospike/aerospike-kubernetes-operator/
          support: Aerospike
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AerospikeBackup is the Schema for the aerospikebackup API
            displayName: Aerospike Backup
            kind: AerospikeBackup
            name: aerospikebackups.asdb.aerospike.com
            version: v1beta1
          - description: AerospikeBackupService is the Schema for the aerospikebackupservices
              API
            displayName: Aerospike Backup Service
            kind: AerospikeBackupService
            name: aerospikebackupservices.asdb.aerospike.com
            version: v1beta1
          - description: AerospikeCluster is the schema for the AerospikeCluster API
            displayName: Aerospike Cluster
            kind: AerospikeCluster
            name: aerospikeclusters.asdb.aerospike.com
            version: v1
          - description: AerospikeRestore is the Schema for the aerospikerestores
              API
            displayName: Aerospike Restore
            kind: AerospikeRestore
            name: aerospikerestores.asdb.aerospike.com
            version: v1beta1
        description: |
          The Aerospike Kubernetes Operator automates the deployment and management of Aerospike enterprise clusters on Kubernetes. The operator allows you to deploy multi-node Aerospike clusters, recover automatically from node failures, scale up or down automatically as load changes, ensure nodes are evenly split across racks or zones, automatically update to new versions of Aerospike and manage configuration changes in your clusters.

          ### Capabilities:

           -   Deploy Aerospike clusters
           -   Scale up and down existing Aerospike clusters
           -   Version upgrade and downgrade
           -   Configure persistent storage and resource allocation
           -   Standardize and validate configurations
           -   Cluster security management
           -   Aerospike cluster monitoring
           -   Backup and restore Aerospike clusters
        displayName: Aerospike Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Aerospike
        links:
        - name: Documentation
          url: https://docs.aerospike.com/cloud/kubernetes/operator
        - name: Aerospike
          url: https://aerospike.com
        maintainers:
        - email: developers@aerospike.com
          name: Aerospike, Inc.
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Aerospike
        relatedImages:
        - docker.io/aerospike/aerospike-kubernetes-operator:4.1.2
        - quay.io/community-operator-pipeline-prod/aerospike-kubernetes-operator@sha256:b01aad90e4fa053a5e419b8fb9a1c49e328c7a30ef8e4b5dec57881fcc2e620e
        version: 4.1.2
      entries:
      - name: aerospike-kubernetes-operator.v4.1.2
        version: 4.1.2
      - name: aerospike-kubernetes-operator.v4.1.1
        version: 4.1.1
      - name: aerospike-kubernetes-operator.v4.1.0
        version: 4.1.0
      - name: aerospike-kubernetes-operator.v4.0.2
        version: 4.0.2
      - name: aerospike-kubernetes-operator.v4.0.1
        version: 4.0.1
      - name: aerospike-kubernetes-operator.v4.0.0
        version: 4.0.0
      - name: aerospike-kubernetes-operator.v3.4.1
        version: 3.4.1
      - name: aerospike-kubernetes-operator.v3.4.0
        version: 3.4.0
      - name: aerospike-kubernetes-operator.v3.3.1
        version: 3.3.1
      - name: aerospike-kubernetes-operator.v3.3.0
        version: 3.3.0
      - name: aerospike-kubernetes-operator.v3.2.2
        version: 3.2.2
      - name: aerospike-kubernetes-operator.v3.2.1
        version: 3.2.1
      - name: aerospike-kubernetes-operator.v3.2.0
        version: 3.2.0
      - name: aerospike-kubernetes-operator.v3.1.0
        version: 3.1.0
      - name: aerospike-kubernetes-operator.v3.0.0
        version: 3.0.0
      name: stable
    defaultChannel: stable
    packageName: aerospike-kubernetes-operator
    provider:
      name: Aerospike
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/cluster-nfd-operator
    name: nfd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nfd.4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nfd.k8s-sigs.io/v1alpha1",
                "kind": "NodeFeatureRule",
                "metadata": {
                  "name": "my-sample-rule-object"
                },
                "spec": {
                  "rules": [
                    {
                      "labels": {
                        "my-sample-feature": "true"
                      },
                      "matchFeatures": [
                        {
                          "feature": "kernel.loadedmodule",
                          "matchExpressions": {
                            "dummy": {
                              "op": "Exists"
                            }
                          }
                        },
                        {
                          "feature": "kernel.config",
                          "matchExpressions": {
                            "X86": {
                              "op": "In",
                              "value": [
                                "y"
                              ]
                            }
                          }
                        }
                      ],
                      "name": "my sample rule"
                    }
                  ]
                }
              },
              {
                "apiVersion": "nfd.openshift.io/v1",
                "kind": "NodeFeatureDiscovery",
                "metadata": {
                  "name": "nfd-instance",
                  "namespace": "openshift-nfd"
                },
                "spec": {
                  "customConfig": {
                    "configData": "#    - name: \"more.kernel.features\"\n#      matchOn:\n#      - loadedKMod: [\"example_kmod3\"]\n#    - name: \"more.features.by.nodename\"\n#      value: customValue\n#      matchOn:\n#      - nodename: [\"special-.*-node-.*\"]\n"
                  },
                  "operand": {
                    "imagePullPolicy": "IfNotPresent",
                    "servicePort": 12000
                  },
                  "workerConfig": {
                    "configData": "core:\n#  labelWhiteList:\n#  noPublish: false\n  sleepInterval: 60s\n#  sources: [all]\n#  klog:\n#    addDirHeader: false\n#    alsologtostderr: false\n#    logBacktraceAt:\n#    logtostderr: true\n#    skipHeaders: false\n#    stderrthreshold: 2\n#    v: 0\n#    vmodule:\n##   NOTE: the following options are not dynamically run-time \n##          configurable and require a nfd-worker restart to take effect\n##          after being changed\n#    logDir:\n#    logFile:\n#    logFileMaxSize: 1800\n#    skipLogHeaders: false\nsources:\n#  cpu:\n#    cpuid:\n##     NOTE: whitelist has priority over blacklist\n#      attributeBlacklist:\n#        - \"BMI1\"\n#        - \"BMI2\"\n#        - \"CLMUL\"\n#        - \"CMOV\"\n#        - \"CX16\"\n#        - \"ERMS\"\n#        - \"F16C\"\n#        - \"HTT\"\n#        - \"LZCNT\"\n#        - \"MMX\"\n#        - \"MMXEXT\"\n#        - \"NX\"\n#        - \"POPCNT\"\n#        - \"RDRAND\"\n#        - \"RDSEED\"\n#        - \"RDTSCP\"\n#        - \"SGX\"\n#        - \"SSE\"\n#        - \"SSE2\"\n#        - \"SSE3\"\n#        - \"SSE4.1\"\n#        - \"SSE4.2\"\n#        - \"SSSE3\"\n#      attributeWhitelist:\n#  kernel:\n#    kconfigFile: \"/path/to/kconfig\"\n#    configOpts:\n#      - \"NO_HZ\"\n#      - \"X86\"\n#      - \"DMI\"\n  pci:\n    deviceClassWhitelist:\n      - \"0200\"\n      - \"03\"\n      - \"12\"\n    deviceLabelFields:\n#      - \"class\"\n      - \"vendor\"\n#      - \"device\"\n#      - \"subsystem_vendor\"\n#      - \"subsystem_device\"\n#  usb:\n#    deviceClassWhitelist:\n#      - \"0e\"\n#      - \"ef\"\n#      - \"fe\"\n#      - \"ff\"\n#    deviceLabelFields:\n#      - \"class\"\n#      - \"vendor\"\n#      - \"device\"\n#  custom:\n#    - name: \"my.kernel.feature\"\n#      matchOn:\n#        - loadedKMod: [\"example_kmod1\", \"example_kmod2\"]\n#    - name: \"my.pci.feature\"\n#      matchOn:\n#        - pciId:\n#            class: [\"0200\"]\n#            vendor: [\"15b3\"]\n#            device: [\"1014\", \"1017\"]\n#        - pciId :\n#            vendor: [\"8086\"]\n#            device: [\"1000\", \"1100\"]\n#    - name: \"my.usb.feature\"\n#      matchOn:\n#        - usbId:\n#          class: [\"ff\"]\n#          vendor: [\"03e7\"]\n#          device: [\"2485\"]\n#        - usbId:\n#          class: [\"fe\"]\n#          vendor: [\"1a6e\"]\n#          device: [\"089a\"]\n#    - name: \"my.combined.feature\"\n#      matchOn:\n#        - pciId:\n#            vendor: [\"15b3\"]\n#            device: [\"1014\", \"1017\"]\n#          loadedKMod : [\"vendor_kmod1\", \"vendor_kmod2\"]\n"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery,OpenShift Optional
          containerImage: registry.redhat.io/openshift4/ose-cluster-nfd-rhel9-operator@sha256:5d03fdb900b6779fb260b186a112eed15ae66d64ce08122bda3d01a3bce316e6
          createdAt: "2025-04-20T11:31:43Z"
          description: |-
            The Node Feature Discovery Operator manages the detection of hardware features and configuration in a Kubernetes cluster by labeling the nodes with hardware-specific information. The Node Feature Discovery (NFD) will label the host with node-specific attributes, like PCI cards, kernel, or OS version, and many more.

            NFD consists  of the following software components:

            The NFD Operator is based on the Operator Framework an open source toolkit to manage Kubernetes native applications, called Operators, in an effective, automated, and scalable way.

            ##NFD-Master
            NFD-Master is the daemon responsible for communication towards the Kubernetes API. That is, it receives labeling requests from the worker and modifies node objects accordingly.

            ##NFD-Worker
            NFD-Worker is a daemon responsible for feature detection. It then communicates the information to nfd-master which does the actual node labeling. One instance of nfd-worker is supposed to be running on each node of the cluster.

            ##NFD-Topology-Updater
            NFD-Topology-Updater is a daemon responsible for examining allocated resources on a worker node to account for resources available to be allocated to new pod on a per-zone basis (where a zone can be a NUMA node). It then communicates the information to nfd-master which does the NodeResourceTopology CR creation corresponding to all the nodes in the cluster. One instance of nfd-topology-updater is supposed to be running on each node of the cluster.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.9.0 <4.20.0-202512081147'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-nfd
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/internal-objects: '["noderesourcetopologies.topology.node.k8s.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: Red Hat
          repository: https://github.com/openshift/cluster-nfd-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |
              The NodeFeatureDiscovery instance is the CustomResource being watched by the NFD-Operator, and holds all the needed information to setup the behaviour of the master and worker pods
            kind: NodeFeatureDiscovery
            name: nodefeaturediscoveries.nfd.openshift.io
            version: v1
          - kind: NodeFeatureGroup
            name: nodefeaturegroups.nfd.k8s-sigs.io
            version: v1alpha1
          - kind: NodeFeatureRule
            name: nodefeaturerules.nfd.k8s-sigs.io
            version: v1alpha1
          - description: |
              NodeFeatureRule resource specifies a configuration for feature-based customization of node objects, such as node labeling.
            kind: NodeFeatureRule
            name: nodefeaturerules.nfd.openshift.io
            version: v1alpha1
          - kind: NodeFeature
            name: nodefeatures.nfd.k8s-sigs.io
            version: v1alpha1
          - kind: NodeFeature
            name: nodefeatures.nfd.openshift.io
            version: v1alpha1
        description: |-
          The Node Feature Discovery Operator manages the detection of hardware features and configuration in a Kubernetes cluster by labeling the nodes with hardware-specific information. The Node Feature Discovery (NFD) will label the host with node-specific attributes, like PCI cards, kernel, or OS version, and many more.

          NFD consists  of the following software components:

          The NFD Operator is based on the Operator Framework an open source toolkit to manage Kubernetes native applications, called Operators, in an effective, automated, and scalable way.

          ##NFD-Master
          NFD-Master is the daemon responsible for communication towards the Kubernetes API. That is, it receives labeling requests from the worker and modifies node objects accordingly.

          ##NFD-Worker
          NFD-Worker is a daemon responsible for feature detection. It then communicates the information to nfd-master which does the actual node labeling. One instance of nfd-worker is supposed to be running on each node of the cluster.

          ##NFD-Topology-Updater
          NFD-Topology-Updater is a daemon responsible for examining allocated resources on a worker node to account for resources available to be allocated to new pod on a per-zone basis (where a zone can be a NUMA node). It then communicates the information to nfd-master which does the NodeResourceTopology CR creation corresponding to all the nodes in the cluster. One instance of nfd-topology-updater is supposed to be running on each node of the cluster.
        displayName: Node Feature Discovery Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - feature-discovery
        - feature-detection
        - node-labels
        links:
        - name: Node Feature Discovery Operator
          url: https://docs.openshift.com/container-platform/4.20/hardware_enablement/psap-node-feature-discovery-operator.html
        - name: Node Feature Discovery Documentation
          url: https://kubernetes-sigs.github.io/node-feature-discovery/stable/get-started/index.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://github.com/openshift/cluster-nfd-operator
        relatedImages:
        - registry.redhat.io/openshift4/ose-cluster-nfd-operator-bundle@sha256:84c08fe3720f5309f468eab26ab5b4a744629d4b3fb941bbbf95c5194a6ea633
        - registry.redhat.io/openshift4/ose-cluster-nfd-rhel9-operator@sha256:5d03fdb900b6779fb260b186a112eed15ae66d64ce08122bda3d01a3bce316e6
        - registry.redhat.io/openshift4/ose-node-feature-discovery-rhel9@sha256:fbd8db340dd4e4cda793b1f0453d42988bb8102d1061388827777bb848b067f2
        version: 4.20.0-202512081147
      entries:
      - name: nfd.4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: nfd.4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: nfd.4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: nfd.4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: nfd.4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: nfd.4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: nfd.4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: nfd
    provider:
      name: Red Hat
      url: https://github.com/openshift/cluster-nfd-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://redhat.com
    name: aws-load-balancer-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-load-balancer-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
          createdAt: 2025-12-16T11:55:37
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.3.0
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:dbad5680cdb7bbe998b569533d1135b9df8a37786ed64893373152a7f16b3e12
        - registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel9@sha256:03106a145ba31ae648092a48016d28d3b41dca737f76efdc82eae4628e4fa905
        version: 1.3.0
      entries:
      - name: aws-load-balancer-operator.v1.3.0
        version: 1.3.0
      - name: aws-load-balancer-operator.v1.2.0
        version: 1.2.0
      - name: aws-load-balancer-operator.v1.1.1
        version: 1.1.1
      - name: aws-load-balancer-operator.v1.1.0
        version: 1.1.0
      name: stable-v1
    - currentCSV: aws-load-balancer-operator.v1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:6e15df39a3d25755a79888f739e1af8b052c3fba57bf8f6b3434ef58fd4288cf
          createdAt: 2024-01-24T09:13:21
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.1
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify management of aws-load-balancer-controller

          ### Prerequisites for installation
          The operator requires AWS credentials in the installation namespace before it can be installed.

          1. Create the operator namespace with the following command:
          ```bash
          oc create namespace aws-load-balancer-operator
          ```
          2. Create the `CredentialsRequest` in the `openshift-cloud-credential-operator`
             namespace with the following command:

          ```
          cat <<EOF | oc create -f -
          apiVersion: cloudcredential.openshift.io/v1
          kind: CredentialsRequest
          metadata:
            name: aws-load-balancer-operator
            namespace: openshift-cloud-credential-operator
          spec:
            providerSpec:
              apiVersion: cloudcredential.openshift.io/v1
              kind: AWSProviderSpec
              statementEntries:
                - action:
                    - ec2:DescribeSubnets
                  effect: Allow
                  resource: "*"
                - action:
                    - ec2:CreateTags
                    - ec2:DeleteTags
                  effect: Allow
                  resource: arn:aws:ec2:*:*:subnet/*
                - action:
                    - ec2:DescribeVpcs
                  effect: Allow
                  resource: "*"
            secretRef:
              name: aws-load-balancer-operator
              namespace: aws-load-balancer-operator
            serviceAccountNames:
              - aws-load-balancer-operator-controller-manager
          EOF
          ```
          3. Ensure the credentials have been correctly provisioned
          ```bash
          oc get secret -n aws-load-balancer-operator aws-load-balancer-operator
          ```

          After this the operator can be installated through the console or through the command line.

          __Note about UPI:__ For UPI based installs, additional documentation can be found in
          [VPC and subnets](https://github.com/openshift/aws-load-balancer-operator/blob/release-1.0/docs/prerequisites.md#vpc-and-subnets)

          __Note about STS:__ For clusters using STS, use the [STS documentation](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#for-sts-clusters) instead.
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:6e15df39a3d25755a79888f739e1af8b052c3fba57bf8f6b3434ef58fd4288cf
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9f9f8f69ab98c1f25cc301572339e0cc5c5b76f2e29ed26e10ac91ad20e0090c
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel8@sha256:73db97d20ee9415e9a8941cc6a36ed81d901d760d9949e95e10c90866ef8bf64
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:59ff4966f4f653e49d42d97bfed6351d3730128db74f666ee4ecacff11790baf
        version: 1.0.1
      deprecation:
        message: |
          The stable-v1.0 channel is no longer supported. Please switch to a supported stable channel to receive the latest updates and support.
      entries:
      - deprecation:
          message: |
            aws-load-balancer-operator.v1.0.1 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: aws-load-balancer-operator.v1.0.1
        version: 1.0.1
      - deprecation:
          message: |
            aws-load-balancer-operator.v1.0.0 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: aws-load-balancer-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    - currentCSV: aws-load-balancer-operator.v1.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:16e9ffed36107527a37713ac5bd34a7bc20f042269a81077429fb5884914c4d0
          createdAt: 2024-01-23T11:21:00
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.1.1
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:01f2ca529d2486f113bcefc9fedce6a6fd07bcb48aaf534394b5b04c353f8853
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:16e9ffed36107527a37713ac5bd34a7bc20f042269a81077429fb5884914c4d0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel8@sha256:2e0b9332a44d8d9c23e19c7accab0813a651f39210257820db508cac28876595
        version: 1.1.1
      entries:
      - name: aws-load-balancer-operator.v1.1.1
        version: 1.1.1
      - name: aws-load-balancer-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: aws-load-balancer-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:53f14e88f05641545b675ff4edbcff6909d752659c02a1babf7491734f347153
          createdAt: 2024-12-20T15:52:44
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.2.0
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4a2324acaea757bae3b01b1aec59f49f4dd79bd1868e69d3418d57c210a6dfd9
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel8@sha256:f0b47b8200f85b557497a4f03d7b186cf415c4137e9cc0361633b67891cf2a24
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:e371c45e259eaf54d79b1bfc6c47b1093d87965a8d6076205d4860047146ed43
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:53f14e88f05641545b675ff4edbcff6909d752659c02a1babf7491734f347153
        version: 1.2.0
      entries:
      - name: aws-load-balancer-operator.v1.2.0
        version: 1.2.0
      - name: aws-load-balancer-operator.v1.1.1
        version: 1.1.1
      - name: aws-load-balancer-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.2
    - currentCSV: aws-load-balancer-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
          createdAt: 2025-12-16T11:55:37
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.3.0
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel9@sha256:03106a145ba31ae648092a48016d28d3b41dca737f76efdc82eae4628e4fa905
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:dbad5680cdb7bbe998b569533d1135b9df8a37786ed64893373152a7f16b3e12
        - registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        version: 1.3.0
      entries:
      - name: aws-load-balancer-operator.v1.3.0
        version: 1.3.0
      name: stable-v1.3
    defaultChannel: stable-v1
    packageName: aws-load-balancer-operator
    provider:
      name: Red Hat Inc.
      url: https://redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: loki-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: loki-operator.v6.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "summary": "High request latency"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "page"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "message": "{{ $labels.job }} is leaking http basic auth credentials."
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({namespace=\"prod\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.16-v4.20
          containerImage: registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:f7fde57f19ef352510cfca9f073ab4f73cd769bd097e1b1d771070d58f682240
          createdAt: "2025-03-06T11:32:52Z"
          description: |
            The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
            ## Prerequisites and Requirements
            ### Loki Operator Namespace
            The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
            ### Memory Considerations
            Loki is a memory intensive application.  The initial
            set of OCP nodes may not be large enough to support the Loki stack.  Additional OCP nodes must be added
            to the OCP cluster if you desire to run with the recommended (or better) memory.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=6.0.0-0 <6.2.7'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators-redhat
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.2
          operators.operatorframework.io.bundle.channels.v1: stable-6.2
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: loki-operator
          operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
          operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io.test.config.v1: tests/scorecard/
          operators.operatorframework.io.test.mediatype.v1: scorecard+v1
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Cluster Logging
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |
          The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
          ## Prerequisites and Requirements
          ### Loki Operator Namespace
          The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
          ### Memory Considerations
          Loki is a memory intensive application.  The initial
          set of OCP nodes may not be large enough to support the Loki cluster.  Additional OCP nodes must be added
          to the OCP cluster if you desire to run with the recommended (or better) memory.
        displayName: Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Loki Operator
          url: https://github.com/grafana/loki
        maintainers:
        - email: team-logging@redhat.com
          name: Red Hat, AOS Logging
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/loki-operator-bundle@sha256:7122d656b12bd9ae0c0db81acf99778d5e7ebe570e203eb1fa87a981cc9aa81e
        - registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:f7fde57f19ef352510cfca9f073ab4f73cd769bd097e1b1d771070d58f682240
        - registry.redhat.io/openshift-logging/lokistack-gateway-rhel9@sha256:574afd46f23637b1685ddb00b647bb71d2e2d527611182fd2826bb818c5eb198
        - registry.redhat.io/openshift-logging/opa-openshift-rhel9@sha256:182dc5ab627d64b5e565a2edb170903ac381fc534b4366fc5ffae088ea0de5e5
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:145e9784b681ac7defa0a1547c03a6db9a587bf9be2820428eee84f58f8f1f24
        - registry.redhat.io/openshift-logging/logging-loki-rhel9@sha256:8c073f8de8288bf63489a400d7f93e96562652832965d33e0515f48d46282459
        version: 6.2.7
      entries:
      - name: loki-operator.v6.2.7
        version: 6.2.7
      - name: loki-operator.v6.2.6
        version: 6.2.6
      - name: loki-operator.v6.2.5
        version: 6.2.5
      - name: loki-operator.v6.2.4
        version: 6.2.4
      - name: loki-operator.v6.2.3
        version: 6.2.3
      - name: loki-operator.v6.2.2
        version: 6.2.2
      - name: loki-operator.v6.2.1
        version: 6.2.1
      - name: loki-operator.v6.2.0
        version: 6.2.0
      name: stable-6.2
    - currentCSV: loki-operator.v6.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "summary": "High request latency"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "page"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "message": "{{ $labels.job }} is leaking http basic auth credentials."
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({namespace=\"prod\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.17-v4.20
          containerImage: registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:bc3216fceafcea24d7d7eaeaab400248431ec43bdaf45ca00201e6c7aea588f6
          createdAt: "2025-06-11T13:21:40Z"
          description: |
            The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
            ## Prerequisites and Requirements
            ### Loki Operator Namespace
            The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
            ### Memory Considerations
            Loki is a memory intensive application.  The initial
            set of OCP nodes may not be large enough to support the Loki stack.  Additional OCP nodes must be added
            to the OCP cluster if you desire to run with the recommended (or better) memory.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=6.1.0-0 <6.3.2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators-redhat
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.3
          operators.operatorframework.io.bundle.channels.v1: stable-6.3
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: loki-operator
          operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
          operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io.test.config.v1: tests/scorecard/
          operators.operatorframework.io.test.mediatype.v1: scorecard+v1
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Cluster Logging
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |
          The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
          ## Prerequisites and Requirements
          ### Loki Operator Namespace
          The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
          ### Memory Considerations
          Loki is a memory intensive application.  The initial
          set of OCP nodes may not be large enough to support the Loki cluster.  Additional OCP nodes must be added
          to the OCP cluster if you desire to run with the recommended (or better) memory.
        displayName: Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Loki Operator
          url: https://github.com/grafana/loki
        maintainers:
        - email: team-logging@redhat.com
          name: Red Hat, AOS Logging
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:145e9784b681ac7defa0a1547c03a6db9a587bf9be2820428eee84f58f8f1f24
        - registry.redhat.io/openshift-logging/logging-loki-rhel9@sha256:d1082544887b6f250b41002104689b4553c2962b82480eb2ea61c10ed1490f27
        - registry.redhat.io/openshift-logging/loki-operator-bundle@sha256:7909874cd7653aae0f55e08d3c63b22a02e324650967acefc5e40545f8c1f1a8
        - registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:bc3216fceafcea24d7d7eaeaab400248431ec43bdaf45ca00201e6c7aea588f6
        - registry.redhat.io/openshift-logging/lokistack-gateway-rhel9@sha256:686249a9891b9e0000ce63ec54b7fc8885fff3975ea94b7d0e53a2dad6ab3ca7
        - registry.redhat.io/openshift-logging/opa-openshift-rhel9@sha256:0d5c3c1eecb920c880644bf667fdfb5a4edb864b2e456b8f6ab8540b6b3b879f
        version: 6.3.2
      entries:
      - name: loki-operator.v6.3.2
        version: 6.3.2
      - name: loki-operator.v6.3.1
        version: 6.3.1
      - name: loki-operator.v6.3.0
        version: 6.3.0
      name: stable-6.3
    - currentCSV: loki-operator.v6.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in namespace example-namespace has an error rate above 5% for more than 10 minutes.",
                            "summary": "High error rate detected"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "warning"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in pod {{ $labels.pod }} is leaking HTTP basic auth credentials in logs.",
                            "summary": "HTTP credentials leaked in logs"
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({kubernetes_namespace_name=\"example-namespace\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "application"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.18-v4.21
          containerImage: registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:73dc60568c8ade290b53e4816c88f227054c4a63efb664857f793d5d59d15586
          createdAt: "2025-11-03T17:23:40Z"
          description: |
            The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
            ## Prerequisites and Requirements
            ### Loki Operator Namespace
            The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
            ### Memory Considerations
            Loki is a memory intensive application.  The initial
            set of OCP nodes may not be large enough to support the Loki stack.  Additional OCP nodes must be added
            to the OCP cluster if you desire to run with the recommended (or better) memory.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=6.2.0-0 <6.4.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators-redhat
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.4
          operators.operatorframework.io.bundle.channels.v1: stable-6.4
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: loki-operator
          operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
          operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io.test.config.v1: tests/scorecard/
          operators.operatorframework.io.test.mediatype.v1: scorecard+v1
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Cluster Logging
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |
          The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
          ## Prerequisites and Requirements
          ### Loki Operator Namespace
          The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
          ### Memory Considerations
          Loki is a memory intensive application.  The initial
          set of OCP nodes may not be large enough to support the Loki cluster.  Additional OCP nodes must be added
          to the OCP cluster if you desire to run with the recommended (or better) memory.
        displayName: Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Loki Operator
          url: https://github.com/grafana/loki
        maintainers:
        - email: team-logging@redhat.com
          name: Red Hat, AOS Logging
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/lokistack-gateway-rhel9@sha256:74d61619b9420655da84bc9939e37f76040b437a70e9c96eeb3267f00dfe88ad
        - registry.redhat.io/openshift-logging/opa-openshift-rhel9@sha256:bd5619a05a193763628b027ee36d68b4eff5caae80b974161acfb8c1d37f7d3e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.19@sha256:145e9784b681ac7defa0a1547c03a6db9a587bf9be2820428eee84f58f8f1f24
        - registry.redhat.io/openshift-logging/logging-loki-rhel9@sha256:2b491fcb180423632d30811515a439a7a7f41023c1cfe4780647f18969b85a1d
        - registry.redhat.io/openshift-logging/loki-operator-bundle@sha256:f671ac595873a42b28b30f5021205372782c352c05b7148246b15eaf7b161196
        - registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:73dc60568c8ade290b53e4816c88f227054c4a63efb664857f793d5d59d15586
        version: 6.4.1
      entries:
      - name: loki-operator.v6.4.1
        version: 6.4.1
      - name: loki-operator.v6.4.0
        version: 6.4.0
      name: stable-6.4
    defaultChannel: stable-6.4
    packageName: loki-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: https://www.turbonomic.com/
    name: t8c-tsc-client-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: t8c-tsc-client-certified.v1.4.3-candidate-20251022123244000
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "TurbonomicClient",
                "metadata": {
                  "name": "turbonomicclient-release"
                },
                "spec": {
                  "global": {
                    "version": "8.16.1"
                  },
                  "probes": {
                    "actionScript": {
                      "enabled": false
                    },
                    "actionStreamKafka": {
                      "enabled": false
                    },
                    "appDynamics": {
                      "enabled": false
                    },
                    "compellent": {
                      "enabled": false
                    },
                    "datadog": {
                      "enabled": false
                    },
                    "dynatrace": {
                      "enabled": false
                    },
                    "flexera": {
                      "enabled": false
                    },
                    "hds": {
                      "enabled": false
                    },
                    "hpe3par": {
                      "enabled": false
                    },
                    "hyperFlex": {
                      "enabled": false
                    },
                    "hyperV": {
                      "enabled": false
                    },
                    "ibmStorageFlashSystem": {
                      "enabled": false
                    },
                    "instana": {
                      "enabled": false
                    },
                    "jvm": {
                      "enabled": false
                    },
                    "mssql": {
                      "enabled": false
                    },
                    "mysql": {
                      "enabled": false
                    },
                    "netApp": {
                      "enabled": false
                    },
                    "newRelic": {
                      "enabled": false
                    },
                    "nutanix": {
                      "enabled": false
                    },
                    "oneView": {
                      "enabled": false
                    },
                    "oracle": {
                      "enabled": false
                    },
                    "powerVM": {
                      "enabled": false
                    },
                    "pure": {
                      "enabled": false
                    },
                    "scaleIO": {
                      "enabled": false
                    },
                    "serviceNow": {
                      "enabled": false
                    },
                    "snmp": {
                      "enabled": false
                    },
                    "terraform": {
                      "enabled": false
                    },
                    "tomcat": {
                      "enabled": false
                    },
                    "ucs": {
                      "enabled": false
                    },
                    "vCenter": {
                      "enabled": false
                    },
                    "vmax": {
                      "enabled": false
                    },
                    "vmm": {
                      "enabled": false
                    },
                    "vplex": {
                      "enabled": false
                    },
                    "webLogic": {
                      "enabled": false
                    },
                    "webSphere": {
                      "enabled": false
                    },
                    "wmi": {
                      "enabled": false
                    },
                    "xtremIO": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "VersionManager",
                "metadata": {
                  "name": "versionmanager-release"
                },
                "spec": {
                  "url": "http://remote-nginx-tunnel:9080/cluster-manager/clusterConfiguration"
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-client-operator@sha256:bd207d0c85f83e590dfa763eada9bbcb173a54c729ba93015485df487a4c3806
          createdAt: "2025-10-22T16:48:12Z"
          description: Turbonomic Secure Connect for Hybrid environment management
          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.skipRange: '>=1.1.0 <1.4.3-candidate-20251022123244000'
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TurbonomicClient is the Schema for the turbonomicclients
              API
            displayName: Turbonomic Client
            kind: TurbonomicClient
            name: turbonomicclients.clients.turbonomic.ibm.com
            version: v1alpha1
          - description: VersionManager is the Schema for the versionmanagers API
            displayName: Version Manager
            kind: VersionManager
            name: versionmanagers.clients.turbonomic.ibm.com
            version: v1alpha1
        description: "### Turbonomic Secure Connect for Hybrid environment management\nTurbonomic
          Workload Automation for Multicloud simultaneously optimizes performance,
          compliance, and cost in real-time. Workloads are precisely resourced, automatically,
          to perform while satisfying business constraints:\n* Continuous placement
          of workload across multiple clouds both on-prem and public clouds providers.\n*
          Continuous scaling for applications and the underlying infrastructure.\n*
          Capability to connect both public cloud and on-prem targets on single saas
          instance\nIt assures application performance by giving workloads the resources
          they need when they need them.\n\n### How do I start?\nTurbonomic documentation
          can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm.\nTo
          setup Turbonomic Secure Connect client, follow the instructions below:\n1.
          Click Install on the landing page\n2. Upon moving to Install Operator page,
          do not modify the default selection for any of the configuration\n3. Select
          the Installed namespace from the drop down or add a new namespace and click
          on create project to create the entered namespace.\n4. Click Install on
          the Install Operator page.\nAt this point operator is installed.\n\nOn the
          Details tab, under Provided APIs: \n1. Click Create instance for the Turbonomic
          Client API. Enable/Disable the probes based on the requirement, and click
          Create.\n2. Click Create instance for the Version Manager API. Do not modify
          the JSON/YAML file, click on Create.\n\n### How does it work?\nTurbonomic
          uses a public APIs already exposed by application and infrastructure instrumentation
          to discover and monitor your environment.\nTurbonomic determines the right
          actions that drive continuous health, including continuous placement and
          continuous scaling for applications and the underlying cluster.\nTurbonomic
          leverages the built-on orchestration provided by the application and infrastructure
          deployment tools and automates the execution of these actions to continiously
          meet the respective service level objective of each application service."
        displayName: Turbonomic Secure Connect Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - turbonomic
        - turbo secure connect
        links:
        - name: T8c Tsc Client Certified
          url: https://t8c-tsc-certified.domain
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        relatedImages:
        - icr.io/cpopen/t8c-client-operator@sha256:bd207d0c85f83e590dfa763eada9bbcb173a54c729ba93015485df487a4c3806
        - registry.connect.redhat.com/turbonomic/t8c-tsc-client-operator-bundle@sha256:14207fa7bc67daab46205107aec44d68d26354980c77bda1289fa968044bb2f2
        version: 1.4.3-candidate-20251022123244000
      entries:
      - name: t8c-tsc-client-certified.v1.4.3-candidate-20251022123244000
        version: 1.4.3-candidate-20251022123244000
      name: candidate
    - currentCSV: t8c-tsc-client-certified.v1.4.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "TurbonomicClient",
                "metadata": {
                  "name": "turbonomicclient-release"
                },
                "spec": {
                  "global": {
                    "version": "8.16.1"
                  },
                  "probes": {
                    "actionScript": {
                      "enabled": false
                    },
                    "actionStreamKafka": {
                      "enabled": false
                    },
                    "appDynamics": {
                      "enabled": false
                    },
                    "compellent": {
                      "enabled": false
                    },
                    "datadog": {
                      "enabled": false
                    },
                    "dynatrace": {
                      "enabled": false
                    },
                    "flexera": {
                      "enabled": false
                    },
                    "hds": {
                      "enabled": false
                    },
                    "hpe3par": {
                      "enabled": false
                    },
                    "hyperFlex": {
                      "enabled": false
                    },
                    "hyperV": {
                      "enabled": false
                    },
                    "ibmStorageFlashSystem": {
                      "enabled": false
                    },
                    "instana": {
                      "enabled": false
                    },
                    "jvm": {
                      "enabled": false
                    },
                    "mssql": {
                      "enabled": false
                    },
                    "mysql": {
                      "enabled": false
                    },
                    "netApp": {
                      "enabled": false
                    },
                    "newRelic": {
                      "enabled": false
                    },
                    "nutanix": {
                      "enabled": false
                    },
                    "oneView": {
                      "enabled": false
                    },
                    "oracle": {
                      "enabled": false
                    },
                    "powerVM": {
                      "enabled": false
                    },
                    "pure": {
                      "enabled": false
                    },
                    "scaleIO": {
                      "enabled": false
                    },
                    "serviceNow": {
                      "enabled": false
                    },
                    "snmp": {
                      "enabled": false
                    },
                    "terraform": {
                      "enabled": false
                    },
                    "tomcat": {
                      "enabled": false
                    },
                    "ucs": {
                      "enabled": false
                    },
                    "vCenter": {
                      "enabled": false
                    },
                    "vmax": {
                      "enabled": false
                    },
                    "vmm": {
                      "enabled": false
                    },
                    "vplex": {
                      "enabled": false
                    },
                    "webLogic": {
                      "enabled": false
                    },
                    "webSphere": {
                      "enabled": false
                    },
                    "wmi": {
                      "enabled": false
                    },
                    "xtremIO": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "VersionManager",
                "metadata": {
                  "name": "versionmanager-release"
                },
                "spec": {
                  "url": "http://remote-nginx-tunnel:9080/cluster-manager/clusterConfiguration"
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-client-operator@sha256:372569f1b26ccdebae386e5a3e5da42722255ab6e604f1c420b922bb35baf716
          createdAt: "2025-10-24T17:03:25Z"
          description: Turbonomic Secure Connect for Hybrid environment management
          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.skipRange: '>=1.1.0 <1.4.3'
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TurbonomicClient is the Schema for the turbonomicclients
              API
            displayName: Turbonomic Client
            kind: TurbonomicClient
            name: turbonomicclients.clients.turbonomic.ibm.com
            version: v1alpha1
          - description: VersionManager is the Schema for the versionmanagers API
            displayName: Version Manager
            kind: VersionManager
            name: versionmanagers.clients.turbonomic.ibm.com
            version: v1alpha1
        description: "### Turbonomic Secure Connect for Hybrid environment management\nTurbonomic
          Workload Automation for Multicloud simultaneously optimizes performance,
          compliance, and cost in real-time. Workloads are precisely resourced, automatically,
          to perform while satisfying business constraints:\n* Continuous placement
          of workload across multiple clouds both on-prem and public clouds providers.\n*
          Continuous scaling for applications and the underlying infrastructure.\n*
          Capability to connect both public cloud and on-prem targets on single saas
          instance\nIt assures application performance by giving workloads the resources
          they need when they need them.\n\n### How do I start?\nTurbonomic documentation
          can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm.\nTo
          setup Turbonomic Secure Connect client, follow the instructions below:\n1.
          Click Install on the landing page\n2. Upon moving to Install Operator page,
          do not modify the default selection for any of the configuration\n3. Select
          the Installed namespace from the drop down or add a new namespace and click
          on create project to create the entered namespace.\n4. Click Install on
          the Install Operator page.\nAt this point operator is installed.\n\nOn the
          Details tab, under Provided APIs: \n1. Click Create instance for the Turbonomic
          Client API. Enable/Disable the probes based on the requirement, and click
          Create.\n2. Click Create instance for the Version Manager API. Do not modify
          the JSON/YAML file, click on Create.\n\n### How does it work?\nTurbonomic
          uses a public APIs already exposed by application and infrastructure instrumentation
          to discover and monitor your environment.\nTurbonomic determines the right
          actions that drive continuous health, including continuous placement and
          continuous scaling for applications and the underlying cluster.\nTurbonomic
          leverages the built-on orchestration provided by the application and infrastructure
          deployment tools and automates the execution of these actions to continiously
          meet the respective service level objective of each application service."
        displayName: Turbonomic Secure Connect Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - turbonomic
        - turbo secure connect
        links:
        - name: T8c Tsc Client Certified
          url: https://t8c-tsc-certified.domain
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        relatedImages:
        - icr.io/cpopen/t8c-client-operator@sha256:372569f1b26ccdebae386e5a3e5da42722255ab6e604f1c420b922bb35baf716
        - registry.connect.redhat.com/turbonomic/t8c-tsc-client-operator-bundle@sha256:164c19fcede19adde16d688ddc3c076bf5240e17ea8ba62203166fde1ae34823
        version: 1.4.3
      entries:
      - name: t8c-tsc-client-certified.v1.4.3
        version: 1.4.3
      name: stable
    defaultChannel: stable
    packageName: t8c-tsc-client-certified
    provider:
      name: Turbonomic, Inc.
      url: https://www.turbonomic.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Digital.ai
      provider-url: https://digital.ai
    name: digitalai-release-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: digitalai-release-operator.v25.1.0-beta.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "small"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "cluster": {
                    "manager": "xlr-legacy",
                    "mode": "full",
                    "name": "xl-release_cluster",
                    "node": {
                      "datacenter": "default"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"${XLR_CLUSTER_NAME}\"\n    manager = \"${XLR_CLUSTER_MANAGER}\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n      {{- if .Values.storage.reportingEngine.downingProviderClass }}\n      cluster {\n        downing-provider-class = {{.Values.storage.reportingEngine.downingProviderClass | quote}}\n      }\n      {{- end }}\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n    {{- if or .Values.storage.reportingEngine.s3.enabled .Values.storage.reportingEngine.cleanupInterval }}\n    engine {\n      {{- if .Values.storage.reportingEngine.cleanupInterval }}\n      cleanUpInterval = \"{{ .Values.storage.reportingEngine.cleanupInterval }}\"\n      {{- end }}\n      {{- if or .Values.storage.reportingEngine.s3.enabled }}\n      type = \"xlr-s3\"\n      s3 {\n        bucket = \"{{ .Values.storage.reportingEngine.s3.bucket | required \"storage.reportingEngine.s3.bucket is required\" }}\"\n        base-key = \"{{ .Values.storage.reportingEngine.s3.baseKey | required \"storage.reportingEngine.s3.baseKey is required\" }}\"\n        region = \"{{ .Values.storage.reportingEngine.s3.region | required \"storage.reportingEngine.s3.region is required\" }}\"\n        {{- if .Values.storage.reportingEngine.s3.endpointUri }}\n        endpoint-uri = \"{{ .Values.storage.reportingEngine.s3.endpointUri }}\"\n        {{- end }}\n      }\n      {{- end }}\n    }\n    {{- end }}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  {{- if or .Values.storage.jobLog.s3.enabled .Values.storage.jobLog.cleanupInterval .Values.storage.jobLog.maxItemsPerCleanup }}\n  job-log {\n    {{- if .Values.storage.jobLog.cleanupInterval }}\n    cleanup-interval = \"{{ .Values.storage.jobLog.cleanupInterval }}\"\n    {{- end }}\n    {{- if .Values.storage.jobLog.maxItemsPerCleanup }}\n    max-items-per-cleanup = \"{{ .Values.storage.jobLog.maxItemsPerCleanup }}\"\n    {{- end }}\n    {{- if or .Values.storage.jobLog.s3.enabled }}\n    type = \"xlr-s3\"\n    s3 {\n      bucket = \"{{ .Values.storage.jobLog.s3.bucket | required \"storage.jobLog.s3.bucket is required\" }}\"\n      base-key = \"{{ .Values.storage.jobLog.s3.baseKey | required \"storage.jobLog.s3.baseKey is required\" }}\"\n      region = \"{{ .Values.storage.jobLog.s3.region | required \"storage.jobLog.s3.region is required\" }}\"\n      {{- if .Values.storage.jobLog.s3.endpointUri }}\n      endpoint-uri = \"{{ .Values.storage.jobLog.s3.endpointUri }}\"\n      {{- end }}\n    }\n    {{- end }}\n  }\n  {{- end }}\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    },
                    "node-conf_xl-release-conf-template": {
                      "content": "# The ${APP_HOME}/node-conf/xl-release.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-release.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-release.conf and this is specified in ${APP_HOME}/conf/xlr-wrapper-linux.conf\nxl {\n  cluster {\n    node {\n      id = ${XL_NODE_NAME}\n      hostname = ${XL_NODE_NAME}\n      datacenter = ${XLR_CLUSTER_DATACENTER}\n      clusterPort = 5531\n    }\n  }\n}\n",
                      "mode": 432,
                      "path": "node-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "readOnlyRootFilesystem": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-dair",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": "cd /tmp; \n/opt/xebialabs/xl-client/xl kube upgrade \\\n  --skip-context-check \\\n  --local-repo /opt/xebialabs/xl-op-blueprints \\\n  --answers /opt/xebialabs/xl-client/generated_answers.yaml\n",
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    }
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "livenessProbe": {
                    "enabled": true,
                    "failureThreshold": 3,
                    "initialDelaySeconds": 10,
                    "path": "s/actuator/health/liveness",
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 20
                  },
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.12.0-debian-12-r12"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "emptyDirPaths": [
                      "/opt/xebialabs/xl-release-server/cache",
                      "/opt/xebialabs/xl-release-server/conf",
                      "/opt/xebialabs/xl-release-server/driver/jdbc",
                      "/opt/xebialabs/xl-release-server/driver/mq",
                      "/opt/xebialabs/xl-release-server/log",
                      "/opt/xebialabs/xl-release-server/node-conf",
                      "/opt/xebialabs/xl-release-server/plugins",
                      "/opt/xebialabs/xl-release-server/work",
                      "/tmp"
                    ],
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "17.2.0-debian-12-r12"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "4.0.7-debian-12-r0"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "readinessProbe": {
                    "enabled": true,
                    "failureThreshold": 3,
                    "initialDelaySeconds": 10,
                    "path": "s/actuator/health/readiness",
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 20
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "startupProbe": {
                    "enabled": true,
                    "failureThreshold": 12,
                    "initialDelaySeconds": 60,
                    "path": "s/actuator/health/readiness",
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 20
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "storage": {
                    "jobLog": {
                      "cleanupInterval": null,
                      "maxItemsPerCleanup": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    },
                    "reportingEngine": {
                      "cleanupInterval": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    }
                  },
                  "terminationGracePeriodSeconds": 450,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r39"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabsunsupported/release-operator@sha256:13ba64f395ea66740d4f424a85ca94c0b018913c1ab672448b31d652b09ece5f '
          createdAt: "2025-04-09T14:48:21Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind: DigitalaiRelease\nmetadata:\n
          \ name: dair-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    enabled: false\n  containerSecurityContext:\n
          \   enabled: false\n  volumePermissions:\n    enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          JSESSIONID\n      haproxy.router.openshift.io/disable_cookies: 'false'\n
          \     haproxy.router.openshift.io/rewrite-target: /\n      haproxy.router.openshift.io/timeout:
          120s\n    hostname: '<mandatory-release-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n        enabled:
          false\n      containerSecurityContext:\n        enabled: false\n    volumePermissions:\n
          \     enabled: false\n  rabbitmq:\n    install: true\n    persistence:\n
          \     size: 1Gi\n      storageClass: ''\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n```\n\n#### Configuration
          Details\n\nThe sample configuration uses:\n\n- Autogenerated limited license\n-
          Simple administrator initial password\n- Default keystore setup\n- Only
          one replica is set for all pods\n- All Pods are missing resource limit setup\n-
          Default storage class and minimal size for persistent storage\n- Release
          pods are using persistence access mode `ReadWriteOnce`, for Release pods
          the requirement is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB
          management\n- Embedded RabbitMQ for message queue management\n\n#### Security
          Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined ranges (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:155a3bf3b1111eb17a78c72c50e36edfcb331b7fb0298692c59f1ef6b7a068ac
        - docker.io/xebialabsunsupported/release-operator@sha256:13ba64f395ea66740d4f424a85ca94c0b018913c1ab672448b31d652b09ece5f
        - docker.io/xebialabsunsupported/xl-release@sha256:7297abc6529aa2cc8d43d4df5caa6fc63eae412ab06e4a59f8da45524b3937f6
        version: 25.1.0-beta.6
      entries:
      - name: digitalai-release-operator.v25.1.0-beta.6
        version: 25.1.0-beta.6
      name: beta
    - currentCSV: digitalai-release-operator.v24.1.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "fsGroup": null,
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "fsGroup": null,
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"xl-release_cluster\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  jvm {\n      override-jvm-options = {{ .Values.jvm.overrideOptions }}\n      networkaddress.cache.ttl = {{ index .Values.jvm.options \"networkaddress.cache.ttl\" }}\n  }\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "ingressClass": "haproxy-dair",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "health": {
                    "enabled": true,
                    "periodScans": 10,
                    "probeFailureThreshold": 12,
                    "probesLivenessTimeout": 60,
                    "probesReadinessTimeout": 60
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-client/xl",
                        "kube",
                        "upgrade",
                        "--skip-context-check",
                        "--local-repo",
                        "/opt/xebialabs/xl-op-blueprints",
                        "--answers",
                        "/opt/xebialabs/xl-client/generated_answers.yaml"
                      ],
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    },
                    "overrideOptions": true
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.0-debian-12-r1"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.10.1-debian-12-r5"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "15.6.0-debian-12-r7"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.13-debian-12-r2"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "terminationGracePeriodSeconds": 200,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r16"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator without SCC creation and with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: docker.io/xebialabs/release-operator@sha256:47d6e31f66fce52c6566240b85fb028890409ad3addeea134120d1afa4814883
          createdAt: "2024-10-16T04:25:19Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind:
          DigitalaiRelease\nmetadata:\n  name: dair-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    runAsUser: null\n    runAsGroup: null\n
          \   fsGroup: null\n  containerSecurityContext:\n    runAsUser: null\n    runAsGroup:
          null\n  securityContextConstraints:\n    enabled: false\n  volumePermissions:\n
          \   enabled: false\n  route:\n    enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          JSESSIONID\n      haproxy.router.openshift.io/disable_cookies: 'false'\n
          \     haproxy.router.openshift.io/rewrite-target: /\n      haproxy.router.openshift.io/timeout:
          120s\n    hostname: '<mandatory-release-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n        enabled:
          false\n        runAsUser: null\n        runAsGroup: null\n        fsGroup:
          null\n      containerSecurityContext:\n        enabled: false\n        runAsUser:
          null\n        runAsGroup: null\n      securityContextConstraints:\n        enabled:
          false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n    install:
          true\n    persistence:\n      size: 1Gi\n      storageClass: ''\n    replicaCount:
          1\n    podSecurityContext:\n      enabled: false\n      runAsUser: null\n
          \     runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     enabled: false\n      runAsUser: null\n      runAsGroup: null\n    securityContextConstraints:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\nIf
          SCC is required, it must be managed manually. The necessary permissions
          for accessing SecurityContextConstraints must be granted when SCC is enabled;
          otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"dair-doc-digitalai-release-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xlr-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Release pods are using
          persistence access mode `ReadWriteOnce`, for Release pods the requirement
          is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB management\n- Embedded
          RabbitMQ for message queue management\n\n#### Security Configuration Details\n\n-
          `securityContextConstraints.enabled: false` - disables creation of SCCs;\n-
          `podSecurityContext/containerSecurityContext` - that disables the use of
          specific UIDs or GIDs, so the IDs can be assigned from the defined ranges
          (for example from restricted SCC);\n- `volumePermissions.enabled: false`
          - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/release-operator@sha256:47d6e31f66fce52c6566240b85fb028890409ad3addeea134120d1afa4814883
        - docker.io/xebialabs/xl-release@sha256:d1b65493ed524d37c60483f44b8bcc877ff398c81d36c7e767f2254dadec98cc
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:771a9a173e033a3ad8b46f5c00a7036eaa88c8d8d1fbd89217325168998113ea
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:a85d4f1c8a686abc0b9032dddda75991216d44dfade214625723d7009be314d3
        version: 24.1.10
      entries:
      - name: digitalai-release-operator.v24.1.10
        version: 24.1.10
      name: stable
    - currentCSV: digitalai-release-operator.v24.1.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"xl-release_cluster\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  jvm {\n      override-jvm-options = {{ .Values.jvm.overrideOptions }}\n      networkaddress.cache.ttl = {{ index .Values.jvm.options \"networkaddress.cache.ttl\" }}\n  }\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "image": {
                        "tag": "v0.14.7"
                      },
                      "ingressClass": "haproxy-dair",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "health": {
                    "enabled": true,
                    "periodScans": 10,
                    "probeFailureThreshold": 12,
                    "probesLivenessTimeout": 60,
                    "probesReadinessTimeout": 60
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-client/xl",
                        "kube",
                        "upgrade",
                        "--skip-context-check",
                        "--local-repo",
                        "/opt/xebialabs/xl-op-blueprints",
                        "--answers",
                        "/opt/xebialabs/xl-client/generated_answers.yaml"
                      ],
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    },
                    "overrideOptions": true
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.2-debian-12-r10"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r0"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "15.6.0-debian-12-r20"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.14-debian-12-r7"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "terminationGracePeriodSeconds": 200,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r40"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator without SCC creation and with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/release-operator@sha256:a190db714dfbba61077d21eb8917831b6b4d039299e2ce2fd3ea3934ff457171 '
          createdAt: "2025-04-07T05:35:54Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind:
          DigitalaiRelease\nmetadata:\n  name: dair-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    enabled: false\n  containerSecurityContext:\n
          \   enabled: false\n  securityContextConstraints:\n    enabled: false\n
          \ volumePermissions:\n    enabled: false\n  route:\n    enabled: false\n
          \   annotations:\n      haproxy.router.openshift.io/cookie_name: JSESSIONID\n
          \     haproxy.router.openshift.io/disable_cookies: 'false'\n      haproxy.router.openshift.io/rewrite-target:
          /\n      haproxy.router.openshift.io/timeout: 120s\n    hostname: '<mandatory-release-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n
          \       enabled: false\n      containerSecurityContext:\n        enabled:
          false\n      securityContextConstraints:\n        enabled: false\n    volumePermissions:\n
          \     enabled: false\n  rabbitmq:\n    install: true\n    persistence:\n
          \     size: 1Gi\n      storageClass: ''\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   securityContextConstraints:\n      enabled: false\n    volumePermissions:\n
          \     enabled: false\n```\n\nIf SCC is required, it must be managed manually.
          The necessary permissions for accessing SecurityContextConstraints must
          be granted when SCC is enabled; otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"dair-doc-digitalai-release-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xlr-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Release pods are using
          persistence access mode `ReadWriteOnce`, for Release pods the requirement
          is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB management\n- Embedded
          RabbitMQ for message queue management\n\n#### Security Configuration Details\n\n-
          `securityContextConstraints.enabled: false` - disables creation of SCCs;\n-
          `podSecurityContext/containerSecurityContext` - that disables the use of
          specific UIDs or GIDs, so the IDs can be assigned from the defined ranges
          (for example from restricted SCC);\n- `volumePermissions.enabled: false`
          - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/xl-release@sha256:c990bfa8c783898536aa78a8cbcff03644de1241a201af4a14835c81c9c654d9
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:7169b97771d93f504de73a3696dbd1d184ba987cb51ae1ab81bf4bef17b42bcf
        - docker.io/xebialabs/release-operator@sha256:a190db714dfbba61077d21eb8917831b6b4d039299e2ce2fd3ea3934ff457171
        version: 24.1.17
      entries:
      - name: digitalai-release-operator.v24.1.17
        version: 24.1.17
      - name: digitalai-release-operator.v24.1.14
        version: 24.1.14
      - name: digitalai-release-operator.v24.1.10
        version: 24.1.10
      name: stable-v24.1
    - currentCSV: digitalai-release-operator.v24.3.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "small"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"xl-release_cluster\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n    {{- if or .Values.storage.reportingEngine.s3.enabled .Values.storage.reportingEngine.cleanupInterval }}\n    engine {\n      {{- if .Values.storage.reportingEngine.cleanupInterval }}\n      cleanUpInterval = \"{{ .Values.storage.reportingEngine.cleanupInterval }}\"\n      {{- end }}\n      {{- if or .Values.storage.reportingEngine.s3.enabled }}\n      type = \"xlr-s3\"\n      s3 {\n        bucket = \"{{ .Values.storage.reportingEngine.s3.bucket | required \"storage.reportingEngine.s3.bucket is required\" }}\"\n        base-key = \"{{ .Values.storage.reportingEngine.s3.baseKey | required \"storage.reportingEngine.s3.baseKey is required\" }}\"\n        region = \"{{ .Values.storage.reportingEngine.s3.region | required \"storage.reportingEngine.s3.region is required\" }}\"\n        {{- if .Values.storage.reportingEngine.s3.endpointUri }}\n        endpoint-uri = \"{{ .Values.storage.reportingEngine.s3.endpointUri }}\"\n        {{- end }}\n      }\n      {{- end }}\n    }\n    {{- end }}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  {{- if or .Values.storage.jobLog.s3.enabled .Values.storage.jobLog.cleanupInterval .Values.storage.jobLog.maxItemsPerCleanup }}\n  job-log {\n    {{- if .Values.storage.jobLog.cleanupInterval }}\n    cleanup-interval = \"{{ .Values.storage.jobLog.cleanupInterval }}\"\n    {{- end }}\n    {{- if .Values.storage.jobLog.maxItemsPerCleanup }}\n    max-items-per-cleanup = \"{{ .Values.storage.jobLog.maxItemsPerCleanup }}\"\n    {{- end }}\n    {{- if or .Values.storage.jobLog.s3.enabled }}\n    type = \"xlr-s3\"\n    s3 {\n      bucket = \"{{ .Values.storage.jobLog.s3.bucket | required \"storage.jobLog.s3.bucket is required\" }}\"\n      base-key = \"{{ .Values.storage.jobLog.s3.baseKey | required \"storage.jobLog.s3.baseKey is required\" }}\"\n      region = \"{{ .Values.storage.jobLog.s3.region | required \"storage.jobLog.s3.region is required\" }}\"\n      {{- if .Values.storage.jobLog.s3.endpointUri }}\n      endpoint-uri = \"{{ .Values.storage.jobLog.s3.endpointUri }}\"\n      {{- end }}\n    }\n    {{- end }}\n  }\n  {{- end }}\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    },
                    "node-conf_xl-release-conf-template": {
                      "content": "# The ${APP_HOME}/node-conf/xl-release.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-release.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-release.conf and this is specified in ${APP_HOME}/conf/xlr-wrapper-linux.conf\nxl {\n  cluster {\n    node {\n      id = ${XL_NODE_NAME}\n      hostname = ${XL_NODE_NAME}\n      clusterPort = 5531\n    }\n  }\n}\n",
                      "mode": 432,
                      "path": "node-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "readOnlyRootFilesystem": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-dair",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "health": {
                    "enabled": true,
                    "periodScans": 10,
                    "probeFailureThreshold": 12,
                    "probesLivenessTimeout": 60,
                    "probesReadinessTimeout": 60
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": "cd /tmp; \n/opt/xebialabs/xl-client/xl kube upgrade \\\n  --skip-context-check \\\n  --local-repo /opt/xebialabs/xl-op-blueprints \\\n  --answers /opt/xebialabs/xl-client/generated_answers.yaml\n",
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    }
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r3"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "emptyDirPaths": [
                      "/opt/xebialabs/xl-release-server/cache",
                      "/opt/xebialabs/xl-release-server/conf",
                      "/opt/xebialabs/xl-release-server/driver/jdbc",
                      "/opt/xebialabs/xl-release-server/driver/mq",
                      "/opt/xebialabs/xl-release-server/log",
                      "/opt/xebialabs/xl-release-server/node-conf",
                      "/opt/xebialabs/xl-release-server/plugins",
                      "/opt/xebialabs/xl-release-server/work",
                      "/tmp"
                    ],
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "16.3.0-debian-12-r23"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n{{ if eq .Values.queueType \"quorum\" -}}\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n{{- end }}\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.13.7-debian-12-r5"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "queueType": "classic",
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "storage": {
                    "jobLog": {
                      "cleanupInterval": null,
                      "maxItemsPerCleanup": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    },
                    "reportingEngine": {
                      "cleanupInterval": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    }
                  },
                  "terminationGracePeriodSeconds": 200,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r42"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/release-operator@sha256:f07c3a505e28db618b8991c7cf8a6b9a9423313be2757bacc776b9e59dfc9f45 '
          createdAt: "2025-04-08T15:13:48Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind: DigitalaiRelease\nmetadata:\n
          \ name: dair-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    enabled: false\n  containerSecurityContext:\n
          \   enabled: false\n  volumePermissions:\n    enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          JSESSIONID\n      haproxy.router.openshift.io/disable_cookies: 'false'\n
          \     haproxy.router.openshift.io/rewrite-target: /\n      haproxy.router.openshift.io/timeout:
          120s\n    hostname: '<mandatory-release-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n        enabled:
          false\n      containerSecurityContext:\n        enabled: false\n    volumePermissions:\n
          \     enabled: false\n  rabbitmq:\n    install: true\n    persistence:\n
          \     size: 1Gi\n      storageClass: ''\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n```\n\n#### Configuration
          Details\n\nThe sample configuration uses:\n\n- Autogenerated limited license\n-
          Simple administrator initial password\n- Default keystore setup\n- Only
          one replica is set for all pods\n- All Pods are missing resource limit setup\n-
          Default storage class and minimal size for persistent storage\n- Release
          pods are using persistence access mode `ReadWriteOnce`, for Release pods
          the requirement is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB
          management\n- Embedded RabbitMQ for message queue management\n\n#### Security
          Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined ranges (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/xl-release@sha256:263fb67b774953a264f03945aa861fe6ed2ceb1ee25828ea11844f946e4619cf
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:49919225644f55e6e752c7e64ce3afb3260d0201962939e0d9bb2b6088a8841b
        - docker.io/xebialabs/release-operator@sha256:f07c3a505e28db618b8991c7cf8a6b9a9423313be2757bacc776b9e59dfc9f45
        version: 24.3.6
      entries:
      - name: digitalai-release-operator.v24.3.6
        version: 24.3.6
      - name: digitalai-release-operator.v24.3.5
        version: 24.3.5
      name: stable-v24.3
    defaultChannel: stable-v24.3
    packageName: digitalai-release-operator
    provider:
      name: Digital.ai
      url: https://digital.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Broadcom
      provider-url: https://www.broadcom.com/
    name: layer7-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: layer7-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "security.brcmlabs.com/v1",
                "kind": "Gateway",
                "metadata": {
                  "name": "ssg"
                },
                "spec": {
                  "app": {
                    "image": "docker.io/caapim/gateway:11.1.3",
                    "management": {
                      "cluster": {
                        "hostname": "gateway.brcmlabs.com",
                        "password": "7layer"
                      },
                      "password": "7layer",
                      "username": "admin"
                    },
                    "replicas": 1,
                    "service": {
                      "ports": [
                        {
                          "name": "https",
                          "port": 8443,
                          "protocol": "TCP",
                          "targetPort": 8443
                        },
                        {
                          "name": "management",
                          "port": 9443,
                          "protocol": "TCP",
                          "targetPort": 9443
                        }
                      ],
                      "type": "LoadBalancer"
                    }
                  },
                  "license": {
                    "accept": false,
                    "secretName": "gateway-license"
                  },
                  "version": "11.1.3"
                },
                "status": {}
              },
              {
                "apiVersion": "security.brcmlabs.com/v1",
                "kind": "Repository",
                "metadata": {
                  "name": "my-repository"
                },
                "spec": {
                  "auth": {},
                  "branch": "main",
                  "enabled": true,
                  "endpoint": "https://github.com/\u003cusername\u003e/\u003crepository\u003e",
                  "type": "git"
                }
              },
              {
                "apiVersion": "security.brcmlabs.com/v1alpha1",
                "kind": "L7Api",
                "metadata": {
                  "name": "l7api-sample"
                },
                "spec": {
                  "deploymentTags": [
                    "ssg",
                    "ssg1"
                  ],
                  "graphmanBundle": "jsongz",
                  "portalPublished": false,
                  "serviceUrl": "/v1/api"
                }
              },
              {
                "apiVersion": "security.brcmlabs.com/v1alpha1",
                "kind": "L7Portal",
                "metadata": {
                  "name": "dev-portal"
                },
                "spec": {
                  "auth": {},
                  "deploymentTags": [
                    "ssg"
                  ],
                  "enabled": true,
                  "endpoint": "dev-ssg.brcmlabs.com",
                  "enrollmentBundle": "",
                  "portalTenant": "portal"
                }
              },
              {
                "apiVersion": "security.brcmlabs.com/v1alpha1",
                "kind": "L7StateStore",
                "metadata": {
                  "name": "state-store-example"
                },
                "spec": {
                  "redis": {
                    "database": 0,
                    "groupName": "l7gw",
                    "masterPassword": "7layer",
                    "standalone": {
                      "host": "redis-standalone",
                      "port": 6379
                    },
                    "storeId": "test",
                    "type": "standalone"
                  },
                  "type": "redis"
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: docker.io/caapim/layer7-operator:v1.2.2
          createdAt: "2025-11-28T13:43:31Z"
          description: The Layer7 Operator covers all aspects of deploying, maintaining
            and upgrading Layer7 API Gateways in Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: layer7-operator-system
          operators.openshift.io/valid-subscription: Layer7 (Broadcom) API Gateway
            license
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/caapim/layer7-operator
          support: Broadcom Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gateway is the Schema for the Gateway Custom Resource
            displayName: Gateway
            kind: Gateway
            name: gateways.security.brcmlabs.com
            version: v1
          - description: L7Api is the Schema for the l7apis API
            displayName: L7 Api
            kind: L7Api
            name: l7apis.security.brcmlabs.com
            version: v1alpha1
          - description: L7Portal is the Schema for the l7portals API
            displayName: L7 Portal
            kind: L7Portal
            name: l7portals.security.brcmlabs.com
            version: v1alpha1
          - description: L7StateStore is the Schema for the l7statestores API
            displayName: L7 State Store
            kind: L7StateStore
            name: l7statestores.security.brcmlabs.com
            version: v1alpha1
          - description: Repository is the Schema for the repositories API
            displayName: Repository
            kind: Repository
            name: repositories.security.brcmlabs.com
            version: v1
        description: |
          The [Layer7 Operator](https://github.com/CAAPIM/layer7-operator) covers all aspects of deploying, maintaining and upgrading Layer7 API Gateways in Kubernetes. The Layer7 Operator is exclusive to Kubernetes and utilizes the Container Gateway with specific emphasis on running in Ephemeral mode (without an external MySQL policy database).

          ## Getting Started
          This [Getting Started](https://github.com/CAAPIM/layer7-operator/wiki/Getting-Started) guide covers a simple introduction to the Layer7 Operator. You can find more documentation [here](https://github.com/CAAPIM/layer7-operator/wiki).
        displayName: Layer7 Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - layer7-operator
        links:
        - name: Layer7 Operator
          url: https://github.com/caapim/layer7-operator
        maintainers:
        - email: gary.vermeulen@broadcom.com
          name: Gary Vermeulen
        maturity: alpha
        provider:
          name: Broadcom
          url: https://www.broadcom.com/
        relatedImages:
        - docker.io/caapim/layer7-operator:v1.2.2
        - quay.io/community-operator-pipeline-prod/layer7-operator:1.2.2
        - docker.io/caapim/gateway:11.1.3
        - docker.io/caapim/graphman-static-init:1.0.4
        version: 1.2.2
      entries:
      - name: layer7-operator.v1.2.2
        version: 1.2.2
      - name: layer7-operator.v1.2.1
        version: 1.2.1
      - name: layer7-operator.v1.2.0
        version: 1.2.0
      name: preview
    defaultChannel: preview
    packageName: layer7-operator
    provider:
      name: Broadcom
      url: https://www.broadcom.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: ibm-block-csi-operator-community
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-block-csi-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "IBMBlockCSI",
                "metadata": {
                  "name": "ibm-block-csi"
                },
                "spec": {
                  "controller": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-controller",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "node": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-node",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "sidecars": [
                    {
                      "name": "csi-node-driver-registrar",
                      "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                      "tag": "v2.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-provisioner",
                      "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                      "tag": "v4.0.1",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-attacher",
                      "repository": "registry.k8s.io/sig-storage/csi-attacher",
                      "tag": "v4.9.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-snapshotter",
                      "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                      "tag": "v8.3.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-resizer",
                      "repository": "registry.k8s.io/sig-storage/csi-resizer",
                      "tag": "v1.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-addons-replicator",
                      "repository": "quay.io/ibmcsiblock/csi-block-volumereplication-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-volume-group",
                      "repository": "quay.io/ibmcsiblock/csi-volume-group-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "livenessprobe",
                      "repository": "registry.k8s.io/sig-storage/livenessprobe",
                      "tag": "v2.16.0",
                      "imagePullPolicy": "IfNotPresent"
                    }
                  ]
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefinition",
                "metadata": {
                  "name": "host-definition"
                },
                "spec": {
                  "hostDefinition": {
                    "nodeName": "node-name"
                  }
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefiner",
                "metadata": {
                  "name": "host-definer"
                },
                "spec": {
                  "hostDefiner": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-host-definer",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage,Cloud Provider
          certified: "true"
          containerImage: quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
          createdAt: "2024-08-27T11:00:00Z"
          description: Run IBM block storage CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.openshift.io/valid-subscription: ""
          repository: https://github.com/IBM/ibm-block-csi-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a block storage CSI driver
            displayName: IBM block storage CSI driver
            kind: IBMBlockCSI
            name: ibmblockcsis.csi.ibm.com
            version: v1
          - description: Represents a Host Definition for IBM block storage
            displayName: IBM block storage Host Definition
            kind: HostDefinition
            name: hostdefinitions.csi.ibm.com
            version: v1
          - description: Represents Host Definer for block storage CSI driver
            displayName: IBM block storage Host Definer
            kind: HostDefiner
            name: hostdefiners.csi.ibm.com
            version: v1
        description: |
          The Container Storage Interface (CSI) Driver for IBM block storage systems enables container orchestrators such as Kubernetes to manage the life cycle of persistent storage.

          This is the official operator to deploy and manage IBM block storage CSI driver.

          For compatibility, prerequisites, release notes, and other user information, see [IBM block storage CSI driver documentation](https://www.ibm.com/docs/en/stg-block-csi-driver).
        displayName: IBM block storage CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - BlockStorage
        - CSI
        links:
        - name: Source Code
          url: https://github.com/IBM/ibm-block-csi-operator
        maintainers:
        - email: csi.block1@il.ibm.com
          name: IBM Block CSI Team
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: IBM
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ibm-block-csi-operator-community@sha256:34f608627ff14d9e24f222306f3a481982a82ecaddfb855dbadcb140bb7283a5
        - quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
        version: 1.13.0
      entries:
      - name: ibm-block-csi-operator.v1.13.0
        version: 1.13.0
      name: stable
    - currentCSV: ibm-block-csi-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "IBMBlockCSI",
                "metadata": {
                  "name": "ibm-block-csi"
                },
                "spec": {
                  "controller": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-controller",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "node": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-node",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "sidecars": [
                    {
                      "name": "csi-node-driver-registrar",
                      "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                      "tag": "v2.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-provisioner",
                      "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                      "tag": "v4.0.1",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-attacher",
                      "repository": "registry.k8s.io/sig-storage/csi-attacher",
                      "tag": "v4.9.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-snapshotter",
                      "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                      "tag": "v8.3.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-resizer",
                      "repository": "registry.k8s.io/sig-storage/csi-resizer",
                      "tag": "v1.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-addons-replicator",
                      "repository": "quay.io/ibmcsiblock/csi-block-volumereplication-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-volume-group",
                      "repository": "quay.io/ibmcsiblock/csi-volume-group-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "livenessprobe",
                      "repository": "registry.k8s.io/sig-storage/livenessprobe",
                      "tag": "v2.16.0",
                      "imagePullPolicy": "IfNotPresent"
                    }
                  ]
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefinition",
                "metadata": {
                  "name": "host-definition"
                },
                "spec": {
                  "hostDefinition": {
                    "nodeName": "node-name"
                  }
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefiner",
                "metadata": {
                  "name": "host-definer"
                },
                "spec": {
                  "hostDefiner": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-host-definer",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage,Cloud Provider
          certified: "true"
          containerImage: quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
          createdAt: "2024-08-27T11:00:00Z"
          description: Run IBM block storage CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.openshift.io/valid-subscription: ""
          repository: https://github.com/IBM/ibm-block-csi-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a block storage CSI driver
            displayName: IBM block storage CSI driver
            kind: IBMBlockCSI
            name: ibmblockcsis.csi.ibm.com
            version: v1
          - description: Represents a Host Definition for IBM block storage
            displayName: IBM block storage Host Definition
            kind: HostDefinition
            name: hostdefinitions.csi.ibm.com
            version: v1
          - description: Represents Host Definer for block storage CSI driver
            displayName: IBM block storage Host Definer
            kind: HostDefiner
            name: hostdefiners.csi.ibm.com
            version: v1
        description: |
          The Container Storage Interface (CSI) Driver for IBM block storage systems enables container orchestrators such as Kubernetes to manage the life cycle of persistent storage.

          This is the official operator to deploy and manage IBM block storage CSI driver.

          For compatibility, prerequisites, release notes, and other user information, see [IBM block storage CSI driver documentation](https://www.ibm.com/docs/en/stg-block-csi-driver).
        displayName: IBM block storage CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - BlockStorage
        - CSI
        links:
        - name: Source Code
          url: https://github.com/IBM/ibm-block-csi-operator
        maintainers:
        - email: csi.block1@il.ibm.com
          name: IBM Block CSI Team
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: IBM
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ibm-block-csi-operator-community@sha256:34f608627ff14d9e24f222306f3a481982a82ecaddfb855dbadcb140bb7283a5
        - quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
        version: 1.13.0
      entries:
      - name: ibm-block-csi-operator.v1.13.0
        version: 1.13.0
      name: stable-v1.13
    - currentCSV: ibm-block-csi-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "IBMBlockCSI",
                "metadata": {
                  "name": "ibm-block-csi"
                },
                "spec": {
                  "controller": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-controller",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "node": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-node",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "sidecars": [
                    {
                      "name": "csi-node-driver-registrar",
                      "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                      "tag": "v2.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-provisioner",
                      "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                      "tag": "v4.0.1",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-attacher",
                      "repository": "registry.k8s.io/sig-storage/csi-attacher",
                      "tag": "v4.9.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-snapshotter",
                      "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                      "tag": "v8.3.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-resizer",
                      "repository": "registry.k8s.io/sig-storage/csi-resizer",
                      "tag": "v1.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-addons-replicator",
                      "repository": "quay.io/ibmcsiblock/csi-block-volumereplication-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-volume-group",
                      "repository": "quay.io/ibmcsiblock/csi-volume-group-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "livenessprobe",
                      "repository": "registry.k8s.io/sig-storage/livenessprobe",
                      "tag": "v2.16.0",
                      "imagePullPolicy": "IfNotPresent"
                    }
                  ]
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefinition",
                "metadata": {
                  "name": "host-definition"
                },
                "spec": {
                  "hostDefinition": {
                    "nodeName": "node-name"
                  }
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefiner",
                "metadata": {
                  "name": "host-definer"
                },
                "spec": {
                  "hostDefiner": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-host-definer",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage,Cloud Provider
          certified: "true"
          containerImage: quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
          createdAt: "2024-08-27T11:00:00Z"
          description: Run IBM block storage CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.openshift.io/valid-subscription: ""
          repository: https://github.com/IBM/ibm-block-csi-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a block storage CSI driver
            displayName: IBM block storage CSI driver
            kind: IBMBlockCSI
            name: ibmblockcsis.csi.ibm.com
            version: v1
          - description: Represents a Host Definition for IBM block storage
            displayName: IBM block storage Host Definition
            kind: HostDefinition
            name: hostdefinitions.csi.ibm.com
            version: v1
          - description: Represents Host Definer for block storage CSI driver
            displayName: IBM block storage Host Definer
            kind: HostDefiner
            name: hostdefiners.csi.ibm.com
            version: v1
        description: |
          The Container Storage Interface (CSI) Driver for IBM block storage systems enables container orchestrators such as Kubernetes to manage the life cycle of persistent storage.

          This is the official operator to deploy and manage IBM block storage CSI driver.

          For compatibility, prerequisites, release notes, and other user information, see [IBM block storage CSI driver documentation](https://www.ibm.com/docs/en/stg-block-csi-driver).
        displayName: IBM block storage CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - BlockStorage
        - CSI
        links:
        - name: Source Code
          url: https://github.com/IBM/ibm-block-csi-operator
        maintainers:
        - email: csi.block1@il.ibm.com
          name: IBM Block CSI Team
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: IBM
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ibm-block-csi-operator-community@sha256:34f608627ff14d9e24f222306f3a481982a82ecaddfb855dbadcb140bb7283a5
        - quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
        version: 1.13.0
      entries:
      - name: ibm-block-csi-operator.v1.13.0
        version: 1.13.0
      name: stable-v1.13.0
    defaultChannel: stable
    packageName: ibm-block-csi-operator-community
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-s3control-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-s3control-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/s3control-controller:1.2.0
          createdAt: "2025-11-29T03:56:06Z"
          description: AWS S3 Control controller is a service controller for managing
            S3 Control resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AccessPoint represents the state of an AWS s3control AccessPoint
              resource.
            displayName: AccessPoint
            kind: AccessPoint
            name: accesspoints.s3control.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon S3 Control resources in AWS from within your Kubernetes cluster.

          **About Amazon S3 Control**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon S3 Control
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - s3control
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon S3 Control Developer Resources
          url: https://aws.amazon.com/S3 Control/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: s3control maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/s3control-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-s3control-controller@sha256:9d6407d14686ee07e5c704e7fa78b09e4f493b2e62b186541fb5d0c22f98364f
        version: 1.2.0
      entries:
      - name: ack-s3control-controller.v1.2.0
        version: 1.2.0
      - name: ack-s3control-controller.v1.1.2
        version: 1.1.2
      - name: ack-s3control-controller.v1.1.1
        version: 1.1.1
      - name: ack-s3control-controller.v1.1.0
        version: 1.1.0
      - name: ack-s3control-controller.v1.0.11
        version: 1.0.11
      - name: ack-s3control-controller.v1.0.10
        version: 1.0.10
      name: alpha
    defaultChannel: alpha
    packageName: ack-s3control-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Intel Corporation
      provider-url: https://builders.intel.com/docs/networkbuilders/intel-vran-dedicated-accelerator-acc100-product-brief.pdf
    name: sriov-fec
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sriov-fec.v2.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecClusterConfig",
                "metadata": {
                  "name": "acc100SampleConfig",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "acceleratorSelector": {
                    "deviceID": "someDevice",
                    "driver": "someDriver",
                    "maxVirtualFunctions": 2,
                    "pciAddress": "somePciAddress",
                    "vendorID": "someVendor"
                  },
                  "drainSkip": false,
                  "nodeSelector": {
                    "expectedLabel1": "valueOfExpectedLabel1",
                    "expectedLabelN": "valueOfExpectedLabelN"
                  },
                  "physicalFunction": {
                    "bbDevConfig": {
                      "acc100": {
                        "downlink4G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 0
                        },
                        "downlink5G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 4
                        },
                        "maxQueueSize": 1024,
                        "numVfBundles": 16,
                        "pfMode": true,
                        "uplink4G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 0
                        },
                        "uplink5G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 4
                        }
                      }
                    },
                    "pfDriver": "pci-pf-stub",
                    "vfAmount": 2,
                    "vfDriver": "vfio-pci"
                  },
                  "priority": 100
                }
              },
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecClusterConfig",
                "metadata": {
                  "name": "n3000SampleConfig",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "acceleratorSelector": {
                    "deviceID": "someDevice",
                    "driver": "someDriver",
                    "maxVirtualFunctions": 2,
                    "pciAddress": "somePciAddress",
                    "vendorID": "someVendor"
                  },
                  "drainSkip": false,
                  "nodeSelector": {
                    "expectedLabel1": "valueOfExpectedLabel1",
                    "expectedLabelN": "valueOfExpectedLabelN"
                  },
                  "physicalFunction": {
                    "bbDevConfig": {
                      "n3000": {
                        "downlink": {
                          "bandwidth": 3,
                          "loadBalance": 128,
                          "queues": {
                            "vf0": 16,
                            "vf1": 16,
                            "vf2": 0,
                            "vf3": 0,
                            "vf4": 0,
                            "vf5": 0,
                            "vf6": 0,
                            "vf7": 0
                          }
                        },
                        "flrTimeout": 610,
                        "networkType": "FPGA_5GNR",
                        "pfMode": true,
                        "uplink": {
                          "bandwidth": 3,
                          "loadBalance": 128,
                          "queues": {
                            "vf0": 16,
                            "vf1": 16,
                            "vf2": 0,
                            "vf3": 0,
                            "vf4": 0,
                            "vf5": 0,
                            "vf6": 0,
                            "vf7": 0
                          }
                        }
                      }
                    },
                    "pfDriver": "pci-pf-stub",
                    "vfAmount": 2,
                    "vfDriver": "vfio-pci"
                  },
                  "priority": 100
                }
              },
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecNodeConfig",
                "metadata": {
                  "name": "acc100-worker",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "drainSkip": false,
                  "physicalFunctions": [
                    {
                      "bbDevConfig": {
                        "acc100": {
                          "downlink4G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 0
                          },
                          "downlink5G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 4
                          },
                          "maxQueueSize": 1024,
                          "numVfBundles": 16,
                          "pfMode": true,
                          "uplink4G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 0
                          },
                          "uplink5G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 4
                          }
                        }
                      },
                      "pci_addr": "somePciAddress",
                      "pf_driver": "pci-pf-stub",
                      "vf_amount": 2,
                      "vf_driver": "vfio-pci"
                    }
                  ]
                }
              },
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecNodeConfig",
                "metadata": {
                  "name": "n3000-worker",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "drainSkip": false,
                  "physicalFunctions": [
                    {
                      "bbDevConfig": {
                        "n3000": {
                          "downlink": {
                            "bandwidth": 3,
                            "loadBalance": 128,
                            "queues": {
                              "vf0": 16,
                              "vf1": 16,
                              "vf2": 0,
                              "vf3": 0,
                              "vf4": 0,
                              "vf5": 0,
                              "vf6": 0,
                              "vf7": 0
                            }
                          },
                          "flrTimeout": 610,
                          "networkType": "FPGA_5GNR",
                          "pfMode": true,
                          "uplink": {
                            "bandwidth": 3,
                            "loadBalance": 128,
                            "queues": {
                              "vf0": 16,
                              "vf1": 16,
                              "vf2": 0,
                              "vf3": 0,
                              "vf4": 0,
                              "vf5": 0,
                              "vf6": 0,
                              "vf7": 0
                            }
                          }
                        }
                      },
                      "pci_addr": "somePciAddress",
                      "pf_driver": "pci-pf-stub",
                      "vf_amount": 2,
                      "vf_driver": "vfio-pci"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/intel/sriov-fec-operator@sha256:adb6a4c2da6399c8ed40c906f790bce13bfcefae3326a047f6a50592b3f5e485
          createdAt: "2025-01-15"
          description: An operator for Intel Wireless FEC Accelerator to orchestrate
            and manage the resources/devices exposed by a range of Intel's vRAN FEC
            acceleration devices/hardware within the OpenShift cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/intel/sriov-fec-operator
          support: Intel Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SriovFecClusterConfig is the Schema for the sriovfecclusterconfigs
              API
            displayName: SriovFecClusterConfig
            kind: SriovFecClusterConfig
            name: sriovfecclusterconfigs.sriovfec.intel.com
            version: v2
          - description: SriovFecNodeConfig is the Schema for the sriovfecnodeconfigs
              API
            displayName: SriovFecNodeConfig
            kind: SriovFecNodeConfig
            name: sriovfecnodeconfigs.sriovfec.intel.com
            version: v2
          - description: SriovVrbClusterConfig is the Schema for the sriovvrbclusterconfigs
              API
            displayName: SriovVrbClusterConfig
            kind: SriovVrbClusterConfig
            name: sriovvrbclusterconfigs.sriovvrb.intel.com
            version: v1
          - description: SriovVrbNodeConfig is the Schema for the sriovvrbnodeconfigs
              API
            displayName: SriovVrbNodeConfig
            kind: SriovVrbNodeConfig
            name: sriovvrbnodeconfigs.sriovvrb.intel.com
            version: v1
        description: The Intel vRAN Boost family of accelerators ACC100/VRB1/VRB2,
          to offload and accelerate the computing-intensive process of forward error
          correction (FEC) and more for 4G/LTE and 5G technology, freeing up processing
          power. It allows the optimization of data plane performance to reduce total
          cost of ownership while maintaining a high degree of flexibility.  The Intel
          vRAN Boost accelerators ACC100/VRB1/VRB2 plays a key role in accelerating
          5G and network functions virtualization (NFV) adoption for ecosystem partners
          such as telecommunications equipment manufacturers (TEMs) virtual network
          functions (VNF) vendors, system integrators and telcos, to bring scalable
          and high-performance solutions to market. The Intel ACC100 includes a variant
          that is design to be Network Equipment Building System (NEBS)-friendly,
          and features a Root-of-Trust device that helps protect systems from FPGA
          host security exploits.
        displayName: SRIOV-FEC Operator for Intel vRAN Boost Accelerators
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ACC100
        - vRAN
        - ORAN
        links:
        - name: SRIOV-FEC source code
          url: https://github.com/intel/sriov-fec-operator
        maturity: alpha
        provider:
          name: Intel Corporation
          url: https://builders.intel.com/docs/networkbuilders/intel-vran-dedicated-accelerator-acc100-product-brief.pdf
        relatedImages:
        - registry.connect.redhat.com/intel/n3000-labeler@sha256:b417cfcedc998a35491784005cc7eee3d9c647b84eac5ca41cb459076870b8f6
        - registry.connect.redhat.com/intel/sriov-fec-daemon@sha256:5b0c60b67bcf5d7b2797deab0d5e3fa079577179f0acc6b0062533584ea0bc23
        - registry.connect.redhat.com/intel/sriov-fec-operator-bundle@sha256:c30849cbf451eb016786bc367e3716389b1d45676ad298c4de6a492c7bb00f4f
        - registry.connect.redhat.com/intel/sriov-fec-operator@sha256:adb6a4c2da6399c8ed40c906f790bce13bfcefae3326a047f6a50592b3f5e485
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1ed3b514bf9af6ac0d386e3739874d1d964e667d54e041c2d67edd769b0009fb
        - registry.redhat.io/openshift4/ose-sriov-network-device-plugin@sha256:d0fcb6e9135d9a19ea26851bcdb4ac72c04bd747706fc5123020460e9dbfc21b
        version: 2.11.1
      entries:
      - name: sriov-fec.v2.11.1
        version: 2.11.1
      - name: sriov-fec.v2.11.0
        version: 2.11.0
      - name: sriov-fec.v2.10.0
        version: 2.10.0
      - name: sriov-fec.v2.9.0
        version: 2.9.0
      - name: sriov-fec.v2.8.0
        version: 2.8.0
      - name: sriov-fec.v2.7.2
        version: 2.7.2
      - name: sriov-fec.v2.7.1
        version: 2.7.1
      name: stable
    defaultChannel: stable
    packageName: sriov-fec
    provider:
      name: Intel Corporation
      url: https://builders.intel.com/docs/networkbuilders/intel-vran-dedicated-accelerator-acc100-product-brief.pdf
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: node-maintenance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-maintenance-operator.v0.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodemaintenance.medik8s.io/v1beta1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "nodeName": "node02",
                  "reason": "Test node maintenance"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/node-maintenance-operator:v0.19.0
          createdAt: "2025-11-24 11:25:52"
          description: Node Maintenance Operator for cordoning and draining nodes.
          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.skipRange: '>=0.12.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-maintenance-operator
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.nodemaintenance.medik8s.io
            version: v1beta1
        description: |
          Node Maintenance Operator (NMO)

          This operator will keep nodes cordoned and drained while a matching NodeMaintenance (nm) custom resource exists.
          This is useful when investigating problems with a machine, or performing an operation on the underlying machine that might result in node failure.
        displayName: Node Maintenance Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - Node-maintenance
        - nmo
        links:
        - name: Node Maintenance Operator
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/node-maintenance-operator
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: beta
        minKubeVersion: 1.23.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/community-operator-pipeline-prod/node-maintenance-operator@sha256:8074aa66432f27565fefdd0e0354c6f1cc0727cbe5a51037a716e0f0c4c1f750
        - quay.io/medik8s/node-maintenance-operator:v0.19.0
        version: 0.19.0
      entries:
      - name: node-maintenance-operator.v0.19.0
        version: 0.19.0
      - name: node-maintenance-operator.v0.18.0
        version: 0.18.0
      - name: node-maintenance-operator.v0.17.0
        version: 0.17.0
      - name: node-maintenance-operator.v0.16.1
        version: 0.16.1
      - name: node-maintenance-operator.v0.16.0
        version: 0.16.0
      - name: node-maintenance-operator.v0.15.0
        version: 0.15.0
      - name: node-maintenance-operator.v0.14.0
        version: 0.14.0
      - name: node-maintenance-operator.v0.13.0
        version: 0.13.0
      - name: node-maintenance-operator.v0.12.1
        version: 0.12.1
      name: stable
    defaultChannel: stable
    packageName: node-maintenance-operator
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Apache Software Foundation
      provider-url: ""
    name: camel-karavan-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: camel-karavan-operator.v3.20.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Karavan",
                "metadata": {
                  "labels": {
                    "app": "karavan"
                  },
                  "name": "karavan"
                },
                "spec": {
                  "instances": 1,
                  "auth": "public",
                  "environment": "dev",
                  "runtimes": "quarkus,spring-boot",
                  "gitPullInterval": "10s"
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          containerImage: ghcr.io/apache/camel-karavan-operator:3.20.1
          repository: https://github.com/apache/camel-karavan
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Karavan
            name: karavans.camel.apache.org
            version: v1
        description: |
          Apache Camel Karavan
          ====================
          Karavan is an Integration Toolkit for Apache Camel, which makes integration easy and fun through the visualization of pipelines,
          integration with runtimes and package, image build and deploy to kubernetes out-of-the-box.

          ## Installation

          1. Install Apache Camel Karavan Operator
          2. Install Tekton operator
          3. Create namespace, ex: `karavan`
          4. Create `Secret` in the namespace, ex:
          ```
          kind: Secret
          apiVersion: v1
          metadata:
            name: karavan
            namespace: karavan
          type: Opaque
          stringData:
            master-password: karavan
            oidc-secret: secret
            oidc-server-url: https://hostname/auth/realms/karavan
            oidc-frontend-url: https://hostname/auth
            git-repository: https://github.com/repository/projects.git
            git-password: password
            git-username: username
            git-branch: main
            image-registry: image-registry.openshift-image-registry.svc:5000
          ```
          5. Create `Karavan` instance in the namespace, ex:
          ```
          apiVersion: camel.apache.org/v1
          kind: Karavan
          metadata:
            name: karavan
            namespace: karavan
          spec:
            instances: 1
            auth: public
            environment: dev
            runtimes: quarkus,spring-boot
            gitPullInterval: 10s
          ```
        displayName: Camel Karavan Operator
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - camel
        - karavan
        - integration
        - microservices
        - low-code
        links:
        - name: Apache Camel Karavan source code repository
          url: https://github.com/apache/camel-karavan
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - ghcr.io/apache/camel-karavan-operator:3.20.1
        - quay.io/openshift-community-operators/camel-karavan-operator@sha256:6dc78ecdf6e1936872626c02d41986d6553c1500002d85692c97e86fa77c129d
        version: 3.20.1
      entries:
      - name: camel-karavan-operator.v3.20.1
        version: 3.20.1
      - name: camel-karavan-operator.v3.20.0
        version: 3.20.0
      - name: camel-karavan-operator.v3.18.5
        version: 3.18.5
      name: alpha
    defaultChannel: alpha
    packageName: camel-karavan-operator
    provider:
      name: The Apache Software Foundation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-efs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-efs-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "efs.services.k8s.aws/v1alpha1",
                "kind": "AccessPoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "efs.services.k8s.aws/v1alpha1",
                "kind": "FileSystem",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "efs.services.k8s.aws/v1alpha1",
                "kind": "MountTarget",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/efs-controller:1.2.0
          createdAt: "2025-11-29T03:26:52Z"
          description: AWS EFS controller is a service controller for managing EFS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AccessPoint represents the state of an AWS efs AccessPoint
              resource.
            displayName: AccessPoint
            kind: AccessPoint
            name: accesspoints.efs.services.k8s.aws
            version: v1alpha1
          - description: FileSystem represents the state of an AWS efs FileSystem
              resource.
            displayName: FileSystem
            kind: FileSystem
            name: filesystems.efs.services.k8s.aws
            version: v1alpha1
          - description: MountTarget represents the state of an AWS efs MountTarget
              resource.
            displayName: MountTarget
            kind: MountTarget
            name: mounttargets.efs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EFS resources in AWS from within your Kubernetes cluster.

          **About Amazon Elastic File System (Amazon EFS)**

          Amazon Elastic File System (Amazon EFS) provides serverless, fully elastic file storage so that you can share file data without provisioning or managing storage capacity and performance. Amazon EFS is built to scale on demand to petabytes without disrupting applications, growing and shrinking automatically as you add and remove files. Because Amazon EFS has a simple web services interface, you can create and configure file systems quickly and easily. The service manages all the file storage infrastructure for you, meaning that you can avoid the complexity of deploying, patching, and maintaining complex file system configurations.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Elastic File System (Amazon
          EFS)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - efs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EFS Developer Resources
          url: https://aws.amazon.com/efs/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: efs maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/efs-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-efs-controller@sha256:6b4bdb765f656e6fef9d1d27889dd0d6ec2a102190a50590e6c4bca65e928808
        version: 1.2.0
      entries:
      - name: ack-efs-controller.v1.2.0
        version: 1.2.0
      - name: ack-efs-controller.v1.1.2
        version: 1.1.2
      - name: ack-efs-controller.v1.1.1
        version: 1.1.1
      - name: ack-efs-controller.v1.1.0
        version: 1.1.0
      - name: ack-efs-controller.v1.0.19
        version: 1.0.19
      - name: ack-efs-controller.v1.0.18
        version: 1.0.18
      - name: ack-efs-controller.v1.0.17
        version: 1.0.17
      - name: ack-efs-controller.v1.0.16
        version: 1.0.16
      - name: ack-efs-controller.v1.0.15
        version: 1.0.15
      - name: ack-efs-controller.v1.0.14
        version: 1.0.14
      - name: ack-efs-controller.v1.0.13
        version: 1.0.13
      - name: ack-efs-controller.v1.0.12
        version: 1.0.12
      - name: ack-efs-controller.v1.0.11
        version: 1.0.11
      - name: ack-efs-controller.v1.0.10
        version: 1.0.10
      - name: ack-efs-controller.v1.0.8
        version: 1.0.8
      - name: ack-efs-controller.v1.0.6
        version: 1.0.6
      - name: ack-efs-controller.v1.0.5
        version: 1.0.5
      - name: ack-efs-controller.v1.0.3
        version: 1.0.3
      - name: ack-efs-controller.v1.0.2
        version: 1.0.2
      - name: ack-efs-controller.v1.0.0
        version: 1.0.0
      - name: ack-efs-controller.v0.0.9
        version: 0.0.9
      - name: ack-efs-controller.v0.0.8
        version: 0.0.8
      - name: ack-efs-controller.v0.0.7
        version: 0.0.7
      - name: ack-efs-controller.v0.0.6
        version: 0.0.6
      - name: ack-efs-controller.v0.0.5
        version: 0.0.5
      - name: ack-efs-controller.v0.0.4
        version: 0.0.4
      name: alpha
    defaultChannel: alpha
    packageName: ack-efs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: The cert-manager maintainers
      provider-url: https://cert-manager.io/
    name: cert-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cert-manager.v1.16.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "example-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "example-clusterissuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "example-certificate"
                },
                "spec": {
                  "dnsNames": [
                    "example.com"
                  ],
                  "issuerRef": {
                    "name": "example-issuer"
                  },
                  "secretName": "example-certificate-tls"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "name": "example-certificaterequest"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "name": "example-order"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "example-challenge"
                },
                "spec": {}
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: quay.io/jetstack/cert-manager-controller:v1.16.5
          createdAt: 2025-05-02T09:11:31
          olm.skipRange: '>=1.16.0 <1.16.5'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/internal-objects: |-
            [
              "challenges.acme.cert-manager.io",
              "orders.acme.cert-manager.io"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/cert-manager/cert-manager
          support: The cert-manager maintainers
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: (Internal) Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: Order is a type to represent an Order with an ACME server
            displayName: (Internal) Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          cert-manager is a Kubernetes add-on to automate the management and issuance of TLS certificates from various issuing sources.
          It will ensure certificates are valid and up to date periodically, and attempt to renew certificates at an appropriate time before expiry.

          cert-manager has the following [built in issuers][]:

          * ACME: sign certificates using Let's Encrypt (or any other [ACME][] compliant signer).
          * Vault: sign certificates using HashiCorp Vault.
          * Venafi: sign certificates using Venafi Cloud or Venafi Trust Protection Platform.
          * SelfSigned: the private key of the certificate will be used to sign the certificate.
          * CA: a private key stored as a Kubernetes Secret will be used to sign the certificate.

          [built in issuers]: https://cert-manager.io/docs/configuration/#supported-issuer-types
          [ACME]: https://datatracker.ietf.org/doc/html/rfc8555

          cert-manager also supports [external issuers][],
          which are out-of-tree components that provide support for other certificate authorities, such as:
          [Google Cloud Certificate Authority](https://github.com/jetstack/google-cas-issuer),
          [AWS Private Certificate Authority](https://github.com/cert-manager/aws-privateca-issuer), and
          [Cloudflare Origin CA](https://github.com/cloudflare/origin-ca-issuer)

          [external issuers]: https://cert-manager.io/docs/configuration/external/

          In order to configure cert-manager to issue certificates, you must first create an Issuer or ClusterIssuer.
          These resources represent a particular signing authority and tell cert-manager how to handle your certificate requests.
          The [Issuer Documentation][] has more detail.

          [configure cert-manager]: https://cert-manager.io/docs/configuration/
          [Issuer Documentation]: https://cert-manager.io/docs/concepts/issuer/

          Once an Issuer has been configured, you can create a Certificate resource,
          which is a definition of a certificate request that is to be honored by an issuer
          and which is to be kept up-to-date.
          This is the usual way that you will interact with cert-manager to request signed certificates.
          The [Certificate Documentation][] has more detail.

          [Certificate Documentation]: https://cert-manager.io/docs/usage/certificate/
        displayName: cert-manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TLS
        - secrets
        - security
        - certificates
        links:
        - name: Documentation
          url: https://cert-manager.io/
        - name: Release Notes
          url: https://cert-manager.io/docs/release-notes
        maintainers:
        - email: cert-manager-maintainers@googlegroups.com
          name: The cert-manager maintainers
        maturity: stable
        minKubeVersion: 1.19.0-0
        provider:
          name: The cert-manager maintainers
          url: https://cert-manager.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cert-manager@sha256:d8037cd7653b257737cec92308042cf71d559c6c2886d07b1879b5e432eeebcd
        - quay.io/jetstack/cert-manager-cainjector:v1.16.5
        - quay.io/jetstack/cert-manager-controller:v1.16.5
        - quay.io/jetstack/cert-manager-webhook:v1.16.5
        version: 1.16.5
      entries:
      - name: cert-manager.v1.16.5
        version: 1.16.5
      - name: cert-manager.v1.16.1
        version: 1.16.1
      - name: cert-manager.v1.16.0-beta.0
        version: 1.16.0-beta.0
      - name: cert-manager.v1.15.2
        version: 1.15.2
      - name: cert-manager.v1.15.0
        version: 1.15.0
      - name: cert-manager.v1.14.2
        version: 1.14.2
      - name: cert-manager.v1.14.2-rc1
        version: 1.14.2-rc1
      - name: cert-manager.v1.14.1-rc1
        version: 1.14.1-rc1
      - name: cert-manager.v1.13.3
        version: 1.13.3
      - name: cert-manager.v1.13.3-rc1
        version: 1.13.3-rc1
      - name: cert-manager.v1.13.1
        version: 1.13.1
      - name: cert-manager.v1.13.1-rc1
        version: 1.13.1-rc1
      - name: cert-manager.v1.12.2
        version: 1.12.2
      - name: cert-manager.v1.12.2-rc1
        version: 1.12.2-rc1
      - name: cert-manager.v1.11.4
        version: 1.11.4
      - name: cert-manager.v1.11.4-rc1
        version: 1.11.4-rc1
      - name: cert-manager.v1.11.3-rc1
        version: 1.11.3-rc1
      - name: cert-manager.v1.11.0
        version: 1.11.0
      - name: cert-manager.v1.11.0-rc1
        version: 1.11.0-rc1
      - name: cert-manager.v1.10.2
        version: 1.10.2
      - name: cert-manager.v1.10.2-rc1
        version: 1.10.2-rc1
      - name: cert-manager.v1.10.1
        version: 1.10.1
      - name: cert-manager.v1.10.1-rc1
        version: 1.10.1-rc1
      - name: cert-manager.v1.10.0
        version: 1.10.0
      - name: cert-manager.v1.10.0-rc1
        version: 1.10.0-rc1
      - name: cert-manager.v1.9.1
        version: 1.9.1
      - name: cert-manager.v1.9.1-rc1
        version: 1.9.1-rc1
      - name: cert-manager.v1.8.2
        version: 1.8.2
      - name: cert-manager.v1.8.2-rc1
        version: 1.8.2-rc1
      - name: cert-manager.v1.8.0
        version: 1.8.0
      - name: cert-manager.v1.8.0-rc1
        version: 1.8.0-rc1
      - name: cert-manager.v1.7.2
        version: 1.7.2
      - name: cert-manager.v1.7.1
        version: 1.7.1
      - name: cert-manager.v1.7.1-rc1
        version: 1.7.1-rc1
      - name: cert-manager.v1.6.2
        version: 1.6.2
      - name: cert-manager.v1.6.2-rc1
        version: 1.6.2-rc1
      name: candidate
    - currentCSV: cert-manager.v1.16.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "example-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "example-clusterissuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "example-certificate"
                },
                "spec": {
                  "dnsNames": [
                    "example.com"
                  ],
                  "issuerRef": {
                    "name": "example-issuer"
                  },
                  "secretName": "example-certificate-tls"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "name": "example-certificaterequest"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "name": "example-order"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "example-challenge"
                },
                "spec": {}
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: quay.io/jetstack/cert-manager-controller:v1.16.5
          createdAt: 2025-05-02T09:11:31
          olm.skipRange: '>=1.16.0 <1.16.5'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/internal-objects: |-
            [
              "challenges.acme.cert-manager.io",
              "orders.acme.cert-manager.io"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/cert-manager/cert-manager
          support: The cert-manager maintainers
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: (Internal) Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: Order is a type to represent an Order with an ACME server
            displayName: (Internal) Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          cert-manager is a Kubernetes add-on to automate the management and issuance of TLS certificates from various issuing sources.
          It will ensure certificates are valid and up to date periodically, and attempt to renew certificates at an appropriate time before expiry.

          cert-manager has the following [built in issuers][]:

          * ACME: sign certificates using Let's Encrypt (or any other [ACME][] compliant signer).
          * Vault: sign certificates using HashiCorp Vault.
          * Venafi: sign certificates using Venafi Cloud or Venafi Trust Protection Platform.
          * SelfSigned: the private key of the certificate will be used to sign the certificate.
          * CA: a private key stored as a Kubernetes Secret will be used to sign the certificate.

          [built in issuers]: https://cert-manager.io/docs/configuration/#supported-issuer-types
          [ACME]: https://datatracker.ietf.org/doc/html/rfc8555

          cert-manager also supports [external issuers][],
          which are out-of-tree components that provide support for other certificate authorities, such as:
          [Google Cloud Certificate Authority](https://github.com/jetstack/google-cas-issuer),
          [AWS Private Certificate Authority](https://github.com/cert-manager/aws-privateca-issuer), and
          [Cloudflare Origin CA](https://github.com/cloudflare/origin-ca-issuer)

          [external issuers]: https://cert-manager.io/docs/configuration/external/

          In order to configure cert-manager to issue certificates, you must first create an Issuer or ClusterIssuer.
          These resources represent a particular signing authority and tell cert-manager how to handle your certificate requests.
          The [Issuer Documentation][] has more detail.

          [configure cert-manager]: https://cert-manager.io/docs/configuration/
          [Issuer Documentation]: https://cert-manager.io/docs/concepts/issuer/

          Once an Issuer has been configured, you can create a Certificate resource,
          which is a definition of a certificate request that is to be honored by an issuer
          and which is to be kept up-to-date.
          This is the usual way that you will interact with cert-manager to request signed certificates.
          The [Certificate Documentation][] has more detail.

          [Certificate Documentation]: https://cert-manager.io/docs/usage/certificate/
        displayName: cert-manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TLS
        - secrets
        - security
        - certificates
        links:
        - name: Documentation
          url: https://cert-manager.io/
        - name: Release Notes
          url: https://cert-manager.io/docs/release-notes
        maintainers:
        - email: cert-manager-maintainers@googlegroups.com
          name: The cert-manager maintainers
        maturity: stable
        minKubeVersion: 1.19.0-0
        provider:
          name: The cert-manager maintainers
          url: https://cert-manager.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cert-manager@sha256:d8037cd7653b257737cec92308042cf71d559c6c2886d07b1879b5e432eeebcd
        - quay.io/jetstack/cert-manager-cainjector:v1.16.5
        - quay.io/jetstack/cert-manager-controller:v1.16.5
        - quay.io/jetstack/cert-manager-webhook:v1.16.5
        version: 1.16.5
      entries:
      - name: cert-manager.v1.16.5
        version: 1.16.5
      - name: cert-manager.v1.16.1
        version: 1.16.1
      - name: cert-manager.v1.15.2
        version: 1.15.2
      - name: cert-manager.v1.15.0
        version: 1.15.0
      - name: cert-manager.v1.14.2
        version: 1.14.2
      - name: cert-manager.v1.13.3
        version: 1.13.3
      - name: cert-manager.v1.13.1
        version: 1.13.1
      - name: cert-manager.v1.13.1-rc1
        version: 1.13.1-rc1
      - name: cert-manager.v1.12.2
        version: 1.12.2
      - name: cert-manager.v1.11.4
        version: 1.11.4
      - name: cert-manager.v1.11.0
        version: 1.11.0
      - name: cert-manager.v1.10.2
        version: 1.10.2
      - name: cert-manager.v1.10.1
        version: 1.10.1
      - name: cert-manager.v1.10.0
        version: 1.10.0
      - name: cert-manager.v1.9.1
        version: 1.9.1
      - name: cert-manager.v1.8.2
        version: 1.8.2
      - name: cert-manager.v1.8.0
        version: 1.8.0
      - name: cert-manager.v1.7.2
        version: 1.7.2
      - name: cert-manager.v1.7.1
        version: 1.7.1
      - name: cert-manager.v1.6.2
        version: 1.6.2
      - name: cert-manager.v1.6.1
        version: 1.6.1
      - name: cert-manager.v1.6.0
        version: 1.6.0
      - name: cert-manager.v1.5.4
        version: 1.5.4
      - name: cert-manager.v1.5.3
        version: 1.5.3
      - name: cert-manager.v1.4.4
        version: 1.4.4
      - name: cert-manager.v1.4.3
        version: 1.4.3
      - name: cert-manager.v1.4.2
        version: 1.4.2
      - name: cert-manager.v1.4.1
        version: 1.4.1
      - name: cert-manager.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: cert-manager
    provider:
      name: The cert-manager maintainers
      url: https://cert-manager.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: project-quay
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: quay-operator.v3.10.0-nightly.20231014
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.10.0-nightly.20231014
          createdAt: 2023-10-14 06:26 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.10.0-nightly.20231014'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.10.0-nightly.20231014
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:add5d14653f57ac1e3254c2d1c70fc9232959f76ee6286fe5cb572696a5a4fd3
        - quay.io/projectquay/quay-operator:3.10.0-nightly.20231014
        version: 3.10.0-nightly.20231014
      entries:
      - name: quay-operator.v3.10.0-nightly.20231014
        version: 3.10.0-nightly.20231014
      - name: quay-operator.v3.10.0-nightly.20231013
        version: 3.10.0-nightly.20231013
      - name: quay-operator.v3.10.0-nightly.20231012
        version: 3.10.0-nightly.20231012
      - name: quay-operator.v3.10.0-nightly.20231011
        version: 3.10.0-nightly.20231011
      - name: quay-operator.v3.10.0-nightly.20231010
        version: 3.10.0-nightly.20231010
      - name: quay-operator.v3.10.0-nightly.20231009
        version: 3.10.0-nightly.20231009
      - name: quay-operator.v3.10.0-nightly.20231008
        version: 3.10.0-nightly.20231008
      - name: quay-operator.v3.10.0-nightly.20231007
        version: 3.10.0-nightly.20231007
      - name: quay-operator.v3.10.0-nightly.20231006
        version: 3.10.0-nightly.20231006
      - name: quay-operator.v3.10.0-nightly.20231005
        version: 3.10.0-nightly.20231005
      - name: quay-operator.v3.10.0-nightly.20231002
        version: 3.10.0-nightly.20231002
      - name: quay-operator.v3.10.0-nightly.20230930
        version: 3.10.0-nightly.20230930
      - name: quay-operator.v3.10.0-nightly.20230929
        version: 3.10.0-nightly.20230929
      - name: quay-operator.v3.10.0-nightly.20230928
        version: 3.10.0-nightly.20230928
      - name: quay-operator.v3.10.0-nightly.20230926
        version: 3.10.0-nightly.20230926
      - name: quay-operator.v3.10.0-nightly.20230925
        version: 3.10.0-nightly.20230925
      - name: quay-operator.v3.10.0-nightly.20230923
        version: 3.10.0-nightly.20230923
      - name: quay-operator.v3.10.0-nightly.20230922
        version: 3.10.0-nightly.20230922
      - name: quay-operator.v3.10.0-nightly.20230921
        version: 3.10.0-nightly.20230921
      - name: quay-operator.v3.10.0-nightly.20230920
        version: 3.10.0-nightly.20230920
      - name: quay-operator.v3.10.0-nightly.20230919
        version: 3.10.0-nightly.20230919
      - name: quay-operator.v3.10.0-nightly.20230918
        version: 3.10.0-nightly.20230918
      - name: quay-operator.v3.10.0-nightly.20230917
        version: 3.10.0-nightly.20230917
      - name: quay-operator.v3.10.0-nightly.20230916
        version: 3.10.0-nightly.20230916
      - name: quay-operator.v3.10.0-nightly.20230915
        version: 3.10.0-nightly.20230915
      - name: quay-operator.v3.10.0-nightly.20230914
        version: 3.10.0-nightly.20230914
      - name: quay-operator.v3.10.0-nightly.20230913
        version: 3.10.0-nightly.20230913
      name: candidate-3.10
    - currentCSV: quay-operator.v3.9.0-nightly.20230812
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.9.0-nightly.20230812
          createdAt: 2023-08-12 06:06 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.9.0-nightly.20230812'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.9.0-nightly.20230812
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:7fc4d97b5ee63085672fc9a562ebdad3d4c00d1b555e06679d1dd9ac945f1bb9
        - quay.io/projectquay/quay-operator:3.9.0-nightly.20230812
        version: 3.9.0-nightly.20230812
      entries:
      - name: quay-operator.v3.9.0-nightly.20230812
        version: 3.9.0-nightly.20230812
      - name: quay-operator.v3.9.0-nightly.20230724
        version: 3.9.0-nightly.20230724
      - name: quay-operator.v3.9.0-nightly.20230723
        version: 3.9.0-nightly.20230723
      - name: quay-operator.v3.9.0-nightly.20230722
        version: 3.9.0-nightly.20230722
      - name: quay-operator.v3.9.0-nightly.20230721
        version: 3.9.0-nightly.20230721
      - name: quay-operator.v3.9.0-nightly.20230720
        version: 3.9.0-nightly.20230720
      - name: quay-operator.v3.9.0-nightly.20230717
        version: 3.9.0-nightly.20230717
      - name: quay-operator.v3.9.0-nightly.20230716
        version: 3.9.0-nightly.20230716
      - name: quay-operator.v3.9.0-nightly.20230715
        version: 3.9.0-nightly.20230715
      - name: quay-operator.v3.9.0-nightly.20230714
        version: 3.9.0-nightly.20230714
      - name: quay-operator.v3.9.0-nightly.20230712
        version: 3.9.0-nightly.20230712
      - name: quay-operator.v3.9.0-nightly.20230711
        version: 3.9.0-nightly.20230711
      name: candidate-3.9
    - currentCSV: quay-operator.v3.7.0-rc.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.7.0-rc.4
          createdAt: 2022-05-17 14:05 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.3.x <3.7.0-rc.4'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.7.0-rc.4
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:05e12cc4caaebb7f185f651f8ca876c442c02d79794e561b743beba0d189fa04
        - quay.io/projectquay/quay-operator:3.7.0-rc.4
        version: 3.7.0-rc.4
      entries:
      - name: quay-operator.v3.7.0-rc.4
        version: 3.7.0-rc.4
      - name: quay-operator.v3.7.0-rc.3
        version: 3.7.0-rc.3
      - name: quay-operator.v3.7.0-rc.2
        version: 3.7.0-rc.2
      - name: quay-operator.v3.7.0-rc.1
        version: 3.7.0-rc.1
      name: preview-3.7
    - currentCSV: quay-operator.v3.8.0-rc.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.8.0-rc.7
          createdAt: 2022-11-29 15:11 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.8.0-rc.7'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.8.0-rc.7
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.8.0-rc.7
        - quay.io/openshift-community-operators/project-quay@sha256:84796005b6e71efa5d783c55b1f72bcc3762944bf32740cb75498bf8b908bffb
        version: 3.8.0-rc.7
      entries:
      - name: quay-operator.v3.8.0-rc.7
        version: 3.8.0-rc.7
      - name: quay-operator.v3.8.0-rc.6
        version: 3.8.0-rc.6
      - name: quay-operator.v3.8.0-rc.5
        version: 3.8.0-rc.5
      - name: quay-operator.v3.8.0-rc.4
        version: 3.8.0-rc.4
      - name: quay-operator.v3.8.0-rc.3
        version: 3.8.0-rc.3
      - name: quay-operator.v3.8.0-rc.2
        version: 3.8.0-rc.2
      - name: quay-operator.v3.8.0-rc.1
        version: 3.8.0-rc.1
      name: preview-3.8
    - currentCSV: quay-operator.v3.10.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.10.17
          createdAt: "2025-12-16T16:07:34Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.10.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.10.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:df1ae4cc8aa9e3c53b7e0b223aab2a9eda1130372348721444f507c22de51e66
        - quay.io/projectquay/quay-operator:3.10.17
        version: 3.10.17
      entries:
      - name: quay-operator.v3.10.17
        version: 3.10.17
      - name: quay-operator.v3.10.16
        version: 3.10.16
      - name: quay-operator.v3.10.15
        version: 3.10.15
      - name: quay-operator.v3.10.14
        version: 3.10.14
      - name: quay-operator.v3.10.13
        version: 3.10.13
      - name: quay-operator.v3.10.12
        version: 3.10.12
      - name: quay-operator.v3.10.11
        version: 3.10.11
      - name: quay-operator.v3.10.10
        version: 3.10.10
      - name: quay-operator.v3.10.9
        version: 3.10.9
      - name: quay-operator.v3.10.8
        version: 3.10.8
      - name: quay-operator.v3.10.7
        version: 3.10.7
      - name: quay-operator.v3.10.6
        version: 3.10.6
      - name: quay-operator.v3.10.5
        version: 3.10.5
      - name: quay-operator.v3.10.4
        version: 3.10.4
      - name: quay-operator.v3.10.3
        version: 3.10.3
      - name: quay-operator.v3.10.2
        version: 3.10.2
      - name: quay-operator.v3.10.1
        version: 3.10.1
      - name: quay-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: quay-operator.v3.11.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.11.13
          createdAt: "2025-09-02T06:02:15Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.11.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.11.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:9d505bf561650eb9785811ba50c920480d85679eac6a611a1c5794544e175934
        - quay.io/projectquay/quay-operator:3.11.13
        version: 3.11.13
      entries:
      - name: quay-operator.v3.11.13
        version: 3.11.13
      - name: quay-operator.v3.11.12
        version: 3.11.12
      - name: quay-operator.v3.11.11
        version: 3.11.11
      - name: quay-operator.v3.11.10
        version: 3.11.10
      - name: quay-operator.v3.11.9
        version: 3.11.9
      - name: quay-operator.v3.11.8
        version: 3.11.8
      - name: quay-operator.v3.11.7
        version: 3.11.7
      - name: quay-operator.v3.11.6
        version: 3.11.6
      - name: quay-operator.v3.11.5
        version: 3.11.5
      - name: quay-operator.v3.11.4
        version: 3.11.4
      - name: quay-operator.v3.11.3
        version: 3.11.3
      - name: quay-operator.v3.11.2
        version: 3.11.2
      - name: quay-operator.v3.11.1
        version: 3.11.1
      - name: quay-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: quay-operator.v3.12.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.12.13
          createdAt: "2025-12-17T02:20:28Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.12.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.12.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.12.13
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:a2d7545e0585785e90f3d5d1b7e2f6f2344b2e12c99014495f99fbc284c20baf
        version: 3.12.13
      entries:
      - name: quay-operator.v3.12.13
        version: 3.12.13
      - name: quay-operator.v3.12.12
        version: 3.12.12
      - name: quay-operator.v3.12.11
        version: 3.12.11
      - name: quay-operator.v3.12.10
        version: 3.12.10
      - name: quay-operator.v3.12.9
        version: 3.12.9
      - name: quay-operator.v3.12.8
        version: 3.12.8
      - name: quay-operator.v3.12.7
        version: 3.12.7
      - name: quay-operator.v3.12.6
        version: 3.12.6
      - name: quay-operator.v3.12.5
        version: 3.12.5
      - name: quay-operator.v3.12.4
        version: 3.12.4
      - name: quay-operator.v3.12.3
        version: 3.12.3
      - name: quay-operator.v3.12.2
        version: 3.12.2
      - name: quay-operator.v3.12.1
        version: 3.12.1
      - name: quay-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: quay-operator.v3.13.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.13.10
          createdAt: "2025-12-17T02:24:00Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.13.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.13.10
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.13.10
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:f3ffc40ee13bc38ccbe8b7cdeed93c6d9eee4b09ac6db237764c98e6abb4f99f
        version: 3.13.10
      entries:
      - name: quay-operator.v3.13.10
        version: 3.13.10
      - name: quay-operator.v3.13.9
        version: 3.13.9
      - name: quay-operator.v3.13.8
        version: 3.13.8
      - name: quay-operator.v3.13.7
        version: 3.13.7
      - name: quay-operator.v3.13.6
        version: 3.13.6
      - name: quay-operator.v3.13.5
        version: 3.13.5
      - name: quay-operator.v3.13.4
        version: 3.13.4
      - name: quay-operator.v3.13.3
        version: 3.13.3
      - name: quay-operator.v3.13.2
        version: 3.13.2
      - name: quay-operator.v3.13.1
        version: 3.13.1
      - name: quay-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: quay-operator.v3.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.14.5
          createdAt: "2025-09-22T14:19:49Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.14.5'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.14.5
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:023b9cc1e4ec2542b8d68b636b21a2e8c4eb143424581c62d16598fddb47da6a
        - quay.io/projectquay/quay-operator:3.14.5
        version: 3.14.5
      entries:
      - name: quay-operator.v3.14.5
        version: 3.14.5
      - name: quay-operator.v3.14.4
        version: 3.14.4
      - name: quay-operator.v3.14.3
        version: 3.14.3
      - name: quay-operator.v3.14.2
        version: 3.14.2
      - name: quay-operator.v3.14.1
        version: 3.14.1
      - name: quay-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: quay-operator.v3.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.15.2
          createdAt: "2025-09-22T13:44:32Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.15.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.15.2
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.15.2
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:3843fd48c57be102576db93e8483a30f8efe8cd46b5e09c704ac0bc5f18553a3
        version: 3.15.2
      entries:
      - name: quay-operator.v3.15.2
        version: 3.15.2
      - name: quay-operator.v3.15.1
        version: 3.15.1
      - name: quay-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: quay-operator.v3.6.2
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"quay.redhat.com/v1\",\n    \"kind\":
            \"QuayRegistry\",\n    \"metadata\": {\n      \"name\": \"example-registry\"\n
            \   },\n    \"spec\": {\n      \"components\": [\n        {\"kind\": \"clair\",
            \"managed\": true},\n        {\"kind\": \"postgres\", \"managed\": true},\n
            \       {\"kind\": \"objectstorage\", \"managed\": true},\n        {\"kind\":
            \"redis\", \"managed\": true},\n        {\"kind\": \"horizontalpodautoscaler\",
            \"managed\": true},\n        {\"kind\": \"route\", \"managed\": true},\n
            \       {\"kind\": \"mirror\", \"managed\": true},\n        {\"kind\":
            \"monitoring\", \"managed\": true},\n        {\"kind\": \"tls\", \"managed\":
            true}\n      ]\n    }\n  }, \n  {\n    \"apiVersion\": \"redhatcop.redhat.io/v1alpha1\",\n
            \   \"kind\": \"QuayEcosystem\",\n    \"metadata\": {\n      \"name\":
            \"example-quayecosystem\"\n    },\n    \"spec\": {}\n  }\n]"
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:v3.6.2
          createdAt: 2021-04-23 10:04 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.5.x <3.6.2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: v3.6.2
          repository: https://github.com/quay/quay-operator
          support: Quay Team
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Project Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        - quay
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:v3.6.2
        - quay.io/openshift-community-operators/project-quay@sha256:55bb4133abc945ce7b75e6c01c6beaf63c19c129fc8fbfb48f1b53b8e28aae97
        version: 3.6.2
      entries:
      - name: quay-operator.v3.6.2
        version: 3.6.2
      name: stable-3.6
    - currentCSV: quay-operator.v3.7.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.7.11
          createdAt: 2023-02-22 10:02 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.3.x <3.7.11'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.7.11
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:43b959fcdcf107b70e4224d80b63d1c123560c3af055109bbcc7d68476546584
        - quay.io/projectquay/quay-operator:3.7.11
        version: 3.7.11
      entries:
      - name: quay-operator.v3.7.11
        version: 3.7.11
      - name: quay-operator.v3.7.10
        version: 3.7.10
      - name: quay-operator.v3.7.9
        version: 3.7.9
      - name: quay-operator.v3.7.8
        version: 3.7.8
      - name: quay-operator.v3.7.7
        version: 3.7.7
      - name: quay-operator.v3.7.6
        version: 3.7.6
      - name: quay-operator.v3.7.5
        version: 3.7.5
      - name: quay-operator.v3.7.4
        version: 3.7.4
      - name: quay-operator.v3.7.3
        version: 3.7.3
      - name: quay-operator.v3.7.2
        version: 3.7.2
      - name: quay-operator.v3.7.1
        version: 3.7.1
      - name: quay-operator.v3.7.0
        version: 3.7.0
      name: stable-3.7
    - currentCSV: quay-operator.v3.8.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.8.13
          createdAt: 2023-10-17 16:13 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.8.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.8.13
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.8.13
        - quay.io/openshift-community-operators/project-quay@sha256:2845843f32b895dee0242e31380b44625e3f8381caee7ecb3258648311c302f7
        version: 3.8.13
      entries:
      - name: quay-operator.v3.8.13
        version: 3.8.13
      - name: quay-operator.v3.8.12
        version: 3.8.12
      - name: quay-operator.v3.8.11
        version: 3.8.11
      - name: quay-operator.v3.8.10
        version: 3.8.10
      - name: quay-operator.v3.8.8
        version: 3.8.8
      - name: quay-operator.v3.8.7
        version: 3.8.7
      - name: quay-operator.v3.8.6
        version: 3.8.6
      - name: quay-operator.v3.8.5
        version: 3.8.5
      - name: quay-operator.v3.8.4
        version: 3.8.4
      - name: quay-operator.v3.8.3
        version: 3.8.3
      - name: quay-operator.v3.8.2
        version: 3.8.2
      - name: quay-operator.v3.8.1
        version: 3.8.1
      - name: quay-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: quay-operator.v3.9.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.9.17
          createdAt: "2025-12-16T16:36:17Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.9.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:3d5f35b0766ce91a1aceb0ccad72adc22c4d1707948b40e4ceaabae921c5486a
        - quay.io/projectquay/quay-operator:3.9.17
        version: 3.9.17
      entries:
      - name: quay-operator.v3.9.17
        version: 3.9.17
      - name: quay-operator.v3.9.16
        version: 3.9.16
      - name: quay-operator.v3.9.15
        version: 3.9.15
      - name: quay-operator.v3.9.14
        version: 3.9.14
      - name: quay-operator.v3.9.13
        version: 3.9.13
      - name: quay-operator.v3.9.12
        version: 3.9.12
      - name: quay-operator.v3.9.11
        version: 3.9.11
      - name: quay-operator.v3.9.10
        version: 3.9.10
      - name: quay-operator.v3.9.9
        version: 3.9.9
      - name: quay-operator.v3.9.6
        version: 3.9.6
      - name: quay-operator.v3.9.5
        version: 3.9.5
      - name: quay-operator.v3.9.4
        version: 3.9.4
      - name: quay-operator.v3.9.3
        version: 3.9.3
      - name: quay-operator.v3.9.2
        version: 3.9.2
      - name: quay-operator.v3.9.1
        version: 3.9.1
      - name: quay-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.15
    packageName: project-quay
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Weights & Biases
      provider-url: https://wandb.ai
    name: wandb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: wandb-operator.v1.21.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.wandb.com/v1",
                "kind": "WeightsAndBiases",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "wandb-operator",
                    "app.kubernetes.io/instance": "weightsandbiases-sample",
                    "app.kubernetes.io/managed-by": "olm",
                    "app.kubernetes.io/name": "weightsandbiases",
                    "app.kubernetes.io/part-of": "wandb-operator"
                  },
                  "name": "weightsandbiases-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning,Developer Tools
          certified: "false"
          containerImage: quay.io/wandb_tools/wandb-k8s-operator:1.21.2
          createdAt: "2024-10-10T14:46:54Z"
          description: Operator for Weights and Biases, enabling seamless integration
            and management of machine learning experiments in Kubernetes environments.
          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"
          operatorframework.io/suggested-namespace: wandb-system
          repository: https://github.com/wandb/operator
          support: WeightsAndBiases
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WeightsAndBiases is a custom resource for managing W&B configurations.
            displayName: Weights And Biases
            kind: WeightsAndBiases
            name: weightsandbiases.apps.wandb.com
            version: v1
        description: |-
          The Weights and Biases Operator simplifies the management of machine learning experiments, tracking, and infrastructure. It integrates with Kubernetes to deploy and manage Weights and Biases instances.
          Features:
          - Experiment Tracking
          - Hyperparameter Tuning
          - Model Management
          - Integration with popular ML frameworks
        displayName: Weights & Biases Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - machine learning
        - experiment tracking
        - ML infrastructure
        - weights and biases
        links:
        - name: Weights & Biases Documentation
          url: https://docs.wandb.ai/
        maintainers:
        - email: abhinav.garg@domain.com
          name: Abhinav Garg
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Weights & Biases
          url: https://wandb.ai
        relatedImages:
        - quay.io/wandb_tools/wandb-k8s-operator:1.21.2
        - quay.io/community-operator-pipeline-prod/wandb-operator@sha256:e6b970a12d5ea0d5531dd88c1707c53c0a490de0145ee869bdfc1dc1218c7b29
        version: 1.21.2
      entries:
      - name: wandb-operator.v1.21.2
        version: 1.21.2
      - name: wandb-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: wandb-operator
    provider:
      name: Weights & Biases
      url: https://wandb.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ec2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ec2-controller.v1.9.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "DHCPOptions",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "ElasticIPAddress",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "Instance",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "InternetGateway",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "NATGateway",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "RouteTable",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "SecurityGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "Subnet",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "TransitGateway",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "VPC",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "VPCEndpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ec2-controller:1.9.1
          createdAt: "2026-01-06T21:44:24Z"
          description: AWS EC2 controller is a service controller for managing EC2
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CapacityReservation represents the state of an AWS ec2 CapacityReservation
              resource.
            displayName: CapacityReservation
            kind: CapacityReservation
            name: capacityreservations.ec2.services.k8s.aws
            version: v1alpha1
          - description: DHCPOptions represents the state of an AWS ec2 DHCPOptions
              resource.
            displayName: DHCPOptions
            kind: DHCPOptions
            name: dhcpoptions.ec2.services.k8s.aws
            version: v1alpha1
          - description: ElasticIPAddress represents the state of an AWS ec2 ElasticIPAddress
              resource.
            displayName: ElasticIPAddress
            kind: ElasticIPAddress
            name: elasticipaddresses.ec2.services.k8s.aws
            version: v1alpha1
          - description: FlowLog represents the state of an AWS ec2 FlowLog resource.
            displayName: FlowLog
            kind: FlowLog
            name: flowlogs.ec2.services.k8s.aws
            version: v1alpha1
          - description: Instance represents the state of an AWS ec2 Instance resource.
            displayName: Instance
            kind: Instance
            name: instances.ec2.services.k8s.aws
            version: v1alpha1
          - description: InternetGateway represents the state of an AWS ec2 InternetGateway
              resource.
            displayName: InternetGateway
            kind: InternetGateway
            name: internetgateways.ec2.services.k8s.aws
            version: v1alpha1
          - description: LaunchTemplate represents the state of an AWS ec2 LaunchTemplate
              resource.
            displayName: LaunchTemplate
            kind: LaunchTemplate
            name: launchtemplates.ec2.services.k8s.aws
            version: v1alpha1
          - description: ManagedPrefixList represents the state of an AWS ec2 ManagedPrefixList
              resource.
            displayName: ManagedPrefixList
            kind: ManagedPrefixList
            name: managedprefixlists.ec2.services.k8s.aws
            version: v1alpha1
          - description: NATGateway represents the state of an AWS ec2 NATGateway
              resource.
            displayName: NATGateway
            kind: NATGateway
            name: natgateways.ec2.services.k8s.aws
            version: v1alpha1
          - description: NetworkACL represents the state of an AWS ec2 NetworkACL
              resource.
            displayName: NetworkACL
            kind: NetworkACL
            name: networkacls.ec2.services.k8s.aws
            version: v1alpha1
          - description: RouteTable represents the state of an AWS ec2 RouteTable
              resource.
            displayName: RouteTable
            kind: RouteTable
            name: routetables.ec2.services.k8s.aws
            version: v1alpha1
          - description: SecurityGroup represents the state of an AWS ec2 SecurityGroup
              resource.
            displayName: SecurityGroup
            kind: SecurityGroup
            name: securitygroups.ec2.services.k8s.aws
            version: v1alpha1
          - description: Subnet represents the state of an AWS ec2 Subnet resource.
            displayName: Subnet
            kind: Subnet
            name: subnets.ec2.services.k8s.aws
            version: v1alpha1
          - description: TransitGateway represents the state of an AWS ec2 TransitGateway
              resource.
            displayName: TransitGateway
            kind: TransitGateway
            name: transitgateways.ec2.services.k8s.aws
            version: v1alpha1
          - description: TransitGatewayVPCAttachment represents the state of an AWS
              ec2 TransitGatewayVPCAttachment resource.
            displayName: TransitGatewayVPCAttachment
            kind: TransitGatewayVPCAttachment
            name: transitgatewayvpcattachments.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPCEndpoint represents the state of an AWS ec2 VPCEndpoint
              resource.
            displayName: VPCEndpoint
            kind: VPCEndpoint
            name: vpcendpoints.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPCEndpointServiceConfiguration represents the state of an
              AWS ec2 VPCEndpointServiceConfiguration resource.
            displayName: VPCEndpointServiceConfiguration
            kind: VPCEndpointServiceConfiguration
            name: vpcendpointserviceconfigurations.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPCPeeringConnection represents the state of an AWS ec2 VPCPeeringConnection
              resource.
            displayName: VPCPeeringConnection
            kind: VPCPeeringConnection
            name: vpcpeeringconnections.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPC represents the state of an AWS ec2 VPC resource.
            displayName: VPC
            kind: VPC
            name: vpcs.ec2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Elastic Compute Cloud (EC2) resources in AWS from within your Kubernetes cluster.

          **About Amazon EC2**

          Amazon Elastic Compute Cloud (Amazon EC2) provides scalable computing capacity in the Amazon Web Services (AWS) Cloud. Using Amazon EC2 eliminates your need to invest in hardware up front, so you can develop and deploy applications faster. You can use Amazon EC2 to launch as many or as few virtual servers as you need, configure security and networking, and manage storage. Amazon EC2 enables you to scale up or down to handle changes in requirements or spikes in popularity, reducing your need to forecast traffic.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EC2
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ec2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EC2 Developer Resources
          url: https://aws.amazon.com/ec2/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ec2 maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ec2-controller:1.9.1
        - quay.io/community-operator-pipeline-prod/ack-ec2-controller@sha256:84bb2fdba33925ac6845422483bdbeb38de6070ac190e9cd15be196dcfa1e770
        version: 1.9.1
      entries:
      - name: ack-ec2-controller.v1.9.1
        version: 1.9.1
      - name: ack-ec2-controller.v1.9.0
        version: 1.9.0
      - name: ack-ec2-controller.v1.8.0
        version: 1.8.0
      - name: ack-ec2-controller.v1.7.1
        version: 1.7.1
      - name: ack-ec2-controller.v1.7.0
        version: 1.7.0
      - name: ack-ec2-controller.v1.6.2
        version: 1.6.2
      - name: ack-ec2-controller.v1.6.1
        version: 1.6.1
      - name: ack-ec2-controller.v1.6.0
        version: 1.6.0
      - name: ack-ec2-controller.v1.4.11
        version: 1.4.11
      - name: ack-ec2-controller.v1.4.10
        version: 1.4.10
      - name: ack-ec2-controller.v1.4.9
        version: 1.4.9
      - name: ack-ec2-controller.v1.4.8
        version: 1.4.8
      - name: ack-ec2-controller.v1.4.7
        version: 1.4.7
      - name: ack-ec2-controller.v1.4.6
        version: 1.4.6
      - name: ack-ec2-controller.v1.4.5
        version: 1.4.5
      - name: ack-ec2-controller.v1.4.4
        version: 1.4.4
      - name: ack-ec2-controller.v1.4.2
        version: 1.4.2
      - name: ack-ec2-controller.v1.4.1
        version: 1.4.1
      - name: ack-ec2-controller.v1.4.0
        version: 1.4.0
      - name: ack-ec2-controller.v1.3.7
        version: 1.3.7
      - name: ack-ec2-controller.v1.3.6
        version: 1.3.6
      - name: ack-ec2-controller.v1.3.5
        version: 1.3.5
      - name: ack-ec2-controller.v1.3.4
        version: 1.3.4
      - name: ack-ec2-controller.v1.3.3
        version: 1.3.3
      - name: ack-ec2-controller.v1.3.1
        version: 1.3.1
      - name: ack-ec2-controller.v1.3.0
        version: 1.3.0
      - name: ack-ec2-controller.v1.2.28
        version: 1.2.28
      - name: ack-ec2-controller.v1.2.27
        version: 1.2.27
      - name: ack-ec2-controller.v1.2.26
        version: 1.2.26
      - name: ack-ec2-controller.v1.2.25
        version: 1.2.25
      - name: ack-ec2-controller.v1.2.24
        version: 1.2.24
      - name: ack-ec2-controller.v1.2.23
        version: 1.2.23
      - name: ack-ec2-controller.v1.2.22
        version: 1.2.22
      - name: ack-ec2-controller.v1.2.21
        version: 1.2.21
      - name: ack-ec2-controller.v1.2.20
        version: 1.2.20
      - name: ack-ec2-controller.v1.2.17
        version: 1.2.17
      - name: ack-ec2-controller.v1.2.16
        version: 1.2.16
      - name: ack-ec2-controller.v1.2.15
        version: 1.2.15
      - name: ack-ec2-controller.v1.2.14
        version: 1.2.14
      - name: ack-ec2-controller.v1.2.13
        version: 1.2.13
      - name: ack-ec2-controller.v1.2.12
        version: 1.2.12
      - name: ack-ec2-controller.v1.2.11
        version: 1.2.11
      - name: ack-ec2-controller.v1.2.10
        version: 1.2.10
      - name: ack-ec2-controller.v1.2.9
        version: 1.2.9
      - name: ack-ec2-controller.v1.2.8
        version: 1.2.8
      - name: ack-ec2-controller.v1.2.7
        version: 1.2.7
      - name: ack-ec2-controller.v1.2.6
        version: 1.2.6
      - name: ack-ec2-controller.v1.2.4
        version: 1.2.4
      - name: ack-ec2-controller.v1.2.1
        version: 1.2.1
      - name: ack-ec2-controller.v1.2.0
        version: 1.2.0
      - name: ack-ec2-controller.v1.1.2
        version: 1.1.2
      - name: ack-ec2-controller.v1.1.1
        version: 1.1.1
      - name: ack-ec2-controller.v1.1.0
        version: 1.1.0
      - name: ack-ec2-controller.v1.0.7
        version: 1.0.7
      - name: ack-ec2-controller.v1.0.6
        version: 1.0.6
      - name: ack-ec2-controller.v1.0.4
        version: 1.0.4
      - name: ack-ec2-controller.v1.0.3
        version: 1.0.3
      - name: ack-ec2-controller.v1.0.2
        version: 1.0.2
      - name: ack-ec2-controller.v1.0.1
        version: 1.0.1
      - name: ack-ec2-controller.v1.0.0
        version: 1.0.0
      - name: ack-ec2-controller.v0.1.1
        version: 0.1.1
      - name: ack-ec2-controller.v0.1.0
        version: 0.1.0
      - name: ack-ec2-controller.v0.0.21
        version: 0.0.21
      - name: ack-ec2-controller.v0.0.20
        version: 0.0.20
      - name: ack-ec2-controller.v0.0.19
        version: 0.0.19
      - name: ack-ec2-controller.v0.0.18
        version: 0.0.18
      - name: ack-ec2-controller.v0.0.17
        version: 0.0.17
      - name: ack-ec2-controller.v0.0.16
        version: 0.0.16
      - name: ack-ec2-controller.v0.0.15
        version: 0.0.15
      - name: ack-ec2-controller.v0.0.14
        version: 0.0.14
      - name: ack-ec2-controller.v0.0.13
        version: 0.0.13
      - name: ack-ec2-controller.v0.0.12
        version: 0.0.12
      - name: ack-ec2-controller.v0.0.11
        version: 0.0.11
      - name: ack-ec2-controller.v0.0.10
        version: 0.0.10
      - name: ack-ec2-controller.v0.0.9
        version: 0.0.9
      - name: ack-ec2-controller.v0.0.8
        version: 0.0.8
      - name: ack-ec2-controller.v0.0.7
        version: 0.0.7
      - name: ack-ec2-controller.v0.0.6
        version: 0.0.6
      - name: ack-ec2-controller.v0.0.5
        version: 0.0.5
      - name: ack-ec2-controller.v0.0.4
        version: 0.0.4
      - name: ack-ec2-controller.v0.0.3
        version: 0.0.3
      - name: ack-ec2-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-ec2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: sailoperator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sailoperator.v1.29.0-nightly-2026-01-05
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.28.1"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:9fea08273c18001666e4d33ae4b951c08bdb6eea24340fab55d0d2ca3613ffcb
          createdAt: "2026-01-05T03:50:08Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.28-latest
          - v1.28.1
          - v1.28.0
          - v1.27-latest
          - v1.27.4
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.7
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0
          - master
          - v1.29-alpha.33f91585

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - quay.io/community-operator-pipeline-prod/sailoperator:1.29.0-nightly-2026-01-05
        - gcr.io/istio-release/pilot@sha256:5109ab9a1e7f1cdc60430e8823957655710dcc4977479b67de3d43bbab18a3f6
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/proxyv2@sha256:8ff7b0d50cea9aa80512b6b9a75afc9021de6dc4d4151ce7946c5e04812a3de2
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/proxyv2@sha256:c68e79b821ba47c63af844422114af6d5cc01cc1fd8f1b0184c42be330afc1d2
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/pilot@sha256:dcc1431b635a2151f891ba17e8911d56f1aa1e4acaff0c543d0036b849cb0369
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/install-cni@sha256:ba4c1ad3c67be6681883162c8543e15b2ea78a79658665a450bce0f475674de5
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/pilot@sha256:43e24609869d90ea7c12c878474e5905b02676e7dd827903be42c15599cde1b7
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/ztunnel@sha256:f562d8dd28e803061ee63853e7e1da07188ec24e734ebf0d95ec2126b41ac392
        - gcr.io/istio-release/install-cni@sha256:a84971fd29ce54181dc4ceee6dbde8032bebd5a72301319a0468e5bc39902080
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/proxyv2@sha256:f95a5e91204afbfad9d33d6f1bc0556a96bf997b18edede6c9e6b86eb07543a1
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/ztunnel@sha256:352baf7040b916b2d3de03388f14a8da0da5fa5e02a2589218261119b39a4594
        - gcr.io/istio-release/install-cni@sha256:81295e43028ab50028f173a7ed2bf3d435201539b6b70f5938079771fe9e4561
        - gcr.io/istio-testing/proxyv2@sha256:0f0666237e310e2049aa328eec13dd40b062689295df2329b0770edd82708946
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/pilot@sha256:d0930e5cf028deeb636364595b4d0a42e05d5745850013bae297b32a9315ab18
        - gcr.io/istio-release/proxyv2@sha256:4c830a386c93683bdf88249e089bc971361c419365663dc35aa1d5ba6be73c19
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - quay.io/sail-dev/sail-operator@sha256:9fea08273c18001666e4d33ae4b951c08bdb6eea24340fab55d0d2ca3613ffcb
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/ztunnel@sha256:5991f9a9202c9a1a59c41efb7e8b89e7a9cfc0dc39f71afe91cdd78c6ecf697c
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/install-cni@sha256:8dda5692bbed6069d837acc084d5b142c325bba2491622a04ec42198c44562b4
        - gcr.io/istio-testing/pilot@sha256:4cce73203bf2a679876f8c3edcf688a59fd25b4fd55f7da72de8850d105ed4fa
        - gcr.io/istio-testing/ztunnel@sha256:79ad54a5b95cabc98ca973d71f5acfa54c850e3f56d2407b5b0436b174e85ea1
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-testing/install-cni@sha256:595ea71bc523b724db6e0a3447b37092b571590d433e508a8ab0d05d096fd48b
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/ztunnel@sha256:836e3f8b34527139523effc176cc138b93e69b4506ccb3dca75460e0ccb96138
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        version: 1.29.0-nightly-2026-01-05
      entries:
      - name: sailoperator.v1.29.0-nightly-2026-01-05
        version: 1.29.0-nightly-2026-01-05
      - name: sailoperator.v1.29.0-nightly-2026-01-04
        version: 1.29.0-nightly-2026-01-04
      - name: sailoperator.v1.29.0-nightly-2026-01-03
        version: 1.29.0-nightly-2026-01-03
      - name: sailoperator.v1.29.0-nightly-2026-01-02
        version: 1.29.0-nightly-2026-01-02
      - name: sailoperator.v1.29.0-nightly-2026-01-01
        version: 1.29.0-nightly-2026-01-01
      - name: sailoperator.v1.29.0-nightly-2025-12-31
        version: 1.29.0-nightly-2025-12-31
      - name: sailoperator.v1.29.0-nightly-2025-12-30
        version: 1.29.0-nightly-2025-12-30
      - name: sailoperator.v1.29.0-nightly-2025-12-29
        version: 1.29.0-nightly-2025-12-29
      - name: sailoperator.v1.29.0-nightly-2025-12-28
        version: 1.29.0-nightly-2025-12-28
      - name: sailoperator.v1.29.0-nightly-2025-12-27
        version: 1.29.0-nightly-2025-12-27
      - name: sailoperator.v1.29.0-nightly-2025-12-26
        version: 1.29.0-nightly-2025-12-26
      - name: sailoperator.v1.29.0-nightly-2025-12-25
        version: 1.29.0-nightly-2025-12-25
      - name: sailoperator.v1.29.0-nightly-2025-12-24
        version: 1.29.0-nightly-2025-12-24
      name: 1.29-nightly
    - currentCSV: sailoperator.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.23.0"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.23.0"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/maistra-dev/sail-operator:0.1-latest
          createdAt: "2024-08-20T11:54:30Z"
          description: Experimental operator for installing Istio service mesh
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1alpha1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1alpha1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1alpha1
          - description: |-
              RemoteIstio represents a remote Istio Service Mesh deployment consisting of one or more
              remote control plane instances (represented by one or more IstioRevision objects).
            displayName: Remote Istio
            kind: RemoteIstio
            name: remoteistios.sailoperator.io
            version: v1alpha1
        description: |-
          This is an experimental operator for installing Istio service mesh.

          This version of the operator supports the following Istio versions:

          - v1.23.0
          - v1.22.4

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - docker.io/istio/pilot:1.23.0
        - docker.io/istio/install-cni:1.23.0
        - docker.io/istio/ztunnel:1.23.0
        - quay.io/community-operator-pipeline-prod/sailoperator@sha256:a5698068f57fb27c6e4b8c385878c4651967ae5f17412c6ea6cf8bd34bfe76a1
        - docker.io/istio/install-cni:1.22.4
        - docker.io/istio/pilot:1.22.4
        - docker.io/istio/proxyv2:1.23.0
        - docker.io/istio/ztunnel:1.22.4
        - quay.io/maistra-dev/sail-operator:0.1-latest
        - docker.io/istio/proxyv2:1.22.4
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.16.0
        version: 0.1.0
      entries:
      - name: sailoperator.v0.1.0
        version: 0.1.0
      - name: sailoperator.v0.1.0-rc.1
        version: 0.1.0-rc.1
      name: candidates
    - currentCSV: sailoperator.v1.28.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
          createdAt: "2025-12-10T15:50:55Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.28-latest
          - v1.28.1
          - v1.28.0
          - v1.27-latest
          - v1.27.4
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.7
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - gcr.io/istio-release/proxyv2@sha256:8ff7b0d50cea9aa80512b6b9a75afc9021de6dc4d4151ce7946c5e04812a3de2
        - quay.io/community-operator-pipeline-prod/sailoperator:1.28.1
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/proxyv2@sha256:4c830a386c93683bdf88249e089bc971361c419365663dc35aa1d5ba6be73c19
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        - gcr.io/istio-release/install-cni@sha256:a84971fd29ce54181dc4ceee6dbde8032bebd5a72301319a0468e5bc39902080
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/install-cni@sha256:8dda5692bbed6069d837acc084d5b142c325bba2491622a04ec42198c44562b4
        - gcr.io/istio-release/pilot@sha256:d0930e5cf028deeb636364595b4d0a42e05d5745850013bae297b32a9315ab18
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/pilot@sha256:dcc1431b635a2151f891ba17e8911d56f1aa1e4acaff0c543d0036b849cb0369
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/ztunnel@sha256:f562d8dd28e803061ee63853e7e1da07188ec24e734ebf0d95ec2126b41ac392
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/pilot@sha256:5109ab9a1e7f1cdc60430e8823957655710dcc4977479b67de3d43bbab18a3f6
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:f95a5e91204afbfad9d33d6f1bc0556a96bf997b18edede6c9e6b86eb07543a1
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/ztunnel@sha256:352baf7040b916b2d3de03388f14a8da0da5fa5e02a2589218261119b39a4594
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/install-cni@sha256:ba4c1ad3c67be6681883162c8543e15b2ea78a79658665a450bce0f475674de5
        - gcr.io/istio-release/proxyv2@sha256:c68e79b821ba47c63af844422114af6d5cc01cc1fd8f1b0184c42be330afc1d2
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/ztunnel@sha256:5991f9a9202c9a1a59c41efb7e8b89e7a9cfc0dc39f71afe91cdd78c6ecf697c
        - gcr.io/istio-release/pilot@sha256:43e24609869d90ea7c12c878474e5905b02676e7dd827903be42c15599cde1b7
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/install-cni@sha256:81295e43028ab50028f173a7ed2bf3d435201539b6b70f5938079771fe9e4561
        - quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/ztunnel@sha256:836e3f8b34527139523effc176cc138b93e69b4506ccb3dca75460e0ccb96138
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        version: 1.28.1
      entries:
      - name: sailoperator.v1.28.1
        version: 1.28.1
      - name: sailoperator.v1.28.0
        version: 1.28.0
      - name: sailoperator.v1.27.3
        version: 1.27.3
      - name: sailoperator.v1.27.2
        version: 1.27.2
      - name: sailoperator.v1.27.1
        version: 1.27.1
      - name: sailoperator.v1.27.0
        version: 1.27.0
      - name: sailoperator.v1.26.3
        version: 1.26.3
      - name: sailoperator.v1.26.2
        version: 1.26.2
      - name: sailoperator.v1.26.1
        version: 1.26.1
      - name: sailoperator.v1.26.0
        version: 1.26.0
      - name: sailoperator.v1.25.2
        version: 1.25.2
      - name: sailoperator.v1.25.1
        version: 1.25.1
      - name: sailoperator.v1.25.0
        version: 1.25.0
      name: stable
    - currentCSV: sailoperator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.24.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.24.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator:1.0-latest
          createdAt: "2025-03-07T10:17:30Z"
          description: Experimental operator for installing Istio service mesh
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          This is an experimental operator for installing Istio service mesh.

          This version of the operator supports the following Istio versions:

          - v1.24-latest
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.23-latest
          - v1.23.5
          - v1.23.4
          - v1.23.3
          - v1.23.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/pilot:1.24.3
        - gcr.io/istio-release/ztunnel:1.24.1
        - gcr.io/istio-release/install-cni:1.23.0
        - gcr.io/istio-release/pilot:1.24.2
        - gcr.io/istio-release/pilot:1.23.4
        - gcr.io/istio-release/proxyv2:1.24.3
        - gcr.io/istio-release/ztunnel:1.23.0
        - gcr.io/istio-release/ztunnel:1.24.3
        - gcr.io/istio-release/proxyv2:1.24.1
        - gcr.io/istio-release/ztunnel:1.23.5
        - gcr.io/istio-release/pilot:1.23.0
        - gcr.io/istio-release/install-cni:1.23.4
        - gcr.io/istio-release/pilot:1.24.1
        - gcr.io/istio-release/proxyv2:1.23.4
        - gcr.io/istio-release/ztunnel:1.23.4
        - gcr.io/istio-release/ztunnel:1.24.2
        - gcr.io/istio-release/install-cni:1.24.2
        - quay.io/community-operator-pipeline-prod/sailoperator@sha256:5416c5fc62c7d9498349ed771bf93bfc0f712ad8da0b8ee109dc49d1e684fa56
        - gcr.io/istio-release/install-cni:1.23.3
        - gcr.io/istio-release/proxyv2:1.23.0
        - gcr.io/istio-release/pilot:1.23.5
        - gcr.io/istio-release/install-cni:1.23.5
        - gcr.io/istio-release/proxyv2:1.23.5
        - gcr.io/istio-release/ztunnel:1.23.3
        - gcr.io/istio-release/install-cni:1.24.3
        - gcr.io/istio-release/pilot:1.23.3
        - gcr.io/istio-release/install-cni:1.24.1
        - quay.io/sail-dev/sail-operator:1.0-latest
        - gcr.io/istio-release/proxyv2:1.23.3
        - gcr.io/istio-release/proxyv2:1.24.2
        version: 1.0.0
      entries:
      - name: sailoperator.v1.0.0
        version: 1.0.0
      name: stable-1.0
    - currentCSV: sailoperator.v1.25.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.25.2"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.25.2"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator:1.25.2
          createdAt: "2025-05-07T19:44:51Z"
          description: Experimental operator for installing Istio service mesh
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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.skipRange: '>=1.0.0 <1.25.2'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          This is an experimental operator for installing Istio service mesh.

          This version of the operator supports the following Istio versions:

          - v1.25-latest
          - v1.25.2
          - v1.25.1
          - v1.24-latest
          - v1.24.4
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.24.0
          - v1.23-latest
          - v1.23.5
          - v1.23.4
          - v1.23.3
          - v1.23.2
          - v1.22-latest
          - v1.22.8
          - v1.22.7
          - v1.22.6
          - v1.22.5
          - v1.21.6

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/ztunnel:1.23.4
        - gcr.io/istio-release/ztunnel:1.24.3
        - gcr.io/istio-release/ztunnel:1.21.6
        - gcr.io/istio-release/ztunnel:1.22.8
        - gcr.io/istio-release/proxyv2:1.24.0
        - gcr.io/istio-release/install-cni:1.21.6
        - gcr.io/istio-release/pilot:1.22.8
        - gcr.io/istio-release/pilot:1.25.1
        - gcr.io/istio-release/proxyv2:1.22.6
        - gcr.io/istio-release/proxyv2:1.22.7
        - gcr.io/istio-release/proxyv2:1.21.6
        - gcr.io/istio-release/ztunnel:1.25.2
        - gcr.io/istio-release/install-cni:1.22.5
        - quay.io/community-operator-pipeline-prod/sailoperator@sha256:9cc4d5a9f46e4d05f8adb5232459002a073c101cc813330325afb6682e2138ae
        - gcr.io/istio-release/pilot:1.25.2
        - gcr.io/istio-release/pilot:1.23.5
        - gcr.io/istio-release/install-cni:1.23.5
        - gcr.io/istio-release/install-cni:1.24.4
        - gcr.io/istio-release/proxyv2:1.23.2
        - gcr.io/istio-release/install-cni:1.25.2
        - gcr.io/istio-release/ztunnel:1.23.3
        - gcr.io/istio-release/install-cni:1.25.1
        - gcr.io/istio-release/proxyv2:1.22.8
        - gcr.io/istio-release/proxyv2:1.25.1
        - gcr.io/istio-release/proxyv2:1.24.3
        - gcr.io/istio-release/proxyv2:1.25.2
        - gcr.io/istio-release/pilot:1.23.2
        - gcr.io/istio-release/pilot:1.24.0
        - gcr.io/istio-release/proxyv2:1.23.4
        - gcr.io/istio-release/install-cni:1.22.8
        - gcr.io/istio-release/ztunnel:1.24.2
        - gcr.io/istio-release/pilot:1.24.4
        - gcr.io/istio-release/install-cni:1.24.0
        - quay.io/sail-dev/sail-operator:1.25.2
        - gcr.io/istio-release/proxyv2:1.24.4
        - gcr.io/istio-release/pilot:1.24.2
        - gcr.io/istio-release/pilot:1.23.4
        - gcr.io/istio-release/install-cni:1.22.7
        - gcr.io/istio-release/proxyv2:1.23.3
        - gcr.io/istio-release/pilot:1.22.5
        - gcr.io/istio-release/proxyv2:1.23.5
        - gcr.io/istio-release/ztunnel:1.23.2
        - gcr.io/istio-release/install-cni:1.24.2
        - gcr.io/istio-release/install-cni:1.24.1
        - gcr.io/istio-release/install-cni:1.23.4
        - gcr.io/istio-release/proxyv2:1.24.2
        - gcr.io/istio-release/ztunnel:1.22.7
        - gcr.io/istio-release/install-cni:1.22.6
        - gcr.io/istio-release/install-cni:1.23.3
        - gcr.io/istio-release/ztunnel:1.24.1
        - gcr.io/istio-release/pilot:1.21.6
        - gcr.io/istio-release/proxyv2:1.22.5
        - gcr.io/istio-release/ztunnel:1.24.4
        - gcr.io/istio-release/install-cni:1.23.2
        - gcr.io/istio-release/ztunnel:1.24.0
        - gcr.io/istio-release/pilot:1.22.7
        - gcr.io/istio-release/ztunnel:1.25.1
        - gcr.io/istio-release/ztunnel:1.22.6
        - gcr.io/istio-release/ztunnel:1.23.5
        - gcr.io/istio-release/proxyv2:1.24.1
        - gcr.io/istio-release/install-cni:1.24.3
        - gcr.io/istio-release/pilot:1.23.3
        - gcr.io/istio-release/pilot:1.24.1
        - gcr.io/istio-release/pilot:1.22.6
        - gcr.io/istio-release/pilot:1.24.3
        - gcr.io/istio-release/ztunnel:1.22.5
        version: 1.25.2
      entries:
      - name: sailoperator.v1.25.2
        version: 1.25.2
      - name: sailoperator.v1.25.1
        version: 1.25.1
      - name: sailoperator.v1.25.0
        version: 1.25.0
      name: stable-1.25
    - currentCSV: sailoperator.v1.26.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.26.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.26.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:d37258646d76a9f708a69fbaa081a0a95908a2b0c8837a14d7ecbfcf505f9bd4
          createdAt: "2025-08-04T06:23:45Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.26-latest
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0
          - v1.25-latest
          - v1.25.3
          - v1.25.2
          - v1.25.1
          - v1.24-latest
          - v1.24.6
          - v1.24.5
          - v1.24.4
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.24.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/proxyv2@sha256:445156b5f4a780242d079a47b7d88199cbbb5959c92358469b721af490eca1ae
        - gcr.io/istio-release/pilot@sha256:e082a6f27001101942d1e2be71764b17ad350ed0d289038020426e7ee603eb56
        - gcr.io/istio-release/pilot@sha256:f0bcb10a51dbb2b9e5552e7f82aa7fcc2ff4dd6d0d7d2224986036b1645b855b
        - gcr.io/istio-release/ztunnel@sha256:0e680a1b33d458e5dfd6f91808c8bd61d00a1103084545ea6a1956c935e7554e
        - gcr.io/istio-release/proxyv2@sha256:d62cc7585450bce8573338c3d147961f4e1df045ffcf5956abea29841cb5aaa4
        - gcr.io/istio-release/install-cni@sha256:3107b1947e755abe698fe2d5c3ed7ba5f228f0b4ff5ff30f484fcc984514b97e
        - gcr.io/istio-release/proxyv2@sha256:49ed9dd2c06383c0a847877a707a3563d0968d83779ad8d13a0c022a48c5c407
        - gcr.io/istio-release/pilot@sha256:32d0f6bd6c1259de78dbc79dfd88cf5f4dc8941613560ff2ca7dbabcf04dfd68
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:ee6565e57319e01b5e45b929335eb9dc3d4b30d531b4652467e6939ae81b41f7
        - gcr.io/istio-release/install-cni@sha256:d28af093e5b7f33e8750364e9077c8b2c464145d1904cae8be48227ec0110b04
        - gcr.io/istio-release/ztunnel@sha256:74ee23f374ea28b3455ad2eca2bea62da95bc2a23b865b7c8c301139046650d5
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/install-cni@sha256:7b12bcfabd92c5756e4b12bf82e373f4abcdd3ccf81ac0b93fe0aa6f8ccce63c
        - gcr.io/istio-release/pilot@sha256:7ccda8c22307ee796cb7ba3f4ce224ef533c3c683c063dcc92fd5a244d8a5c9d
        - gcr.io/istio-release/proxyv2@sha256:91382859f73b1a66ac113631f89ef73dabf9c931d6baf0bd7eb618c0fa958b34
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/install-cni@sha256:313165b70241f65c79b5984797b8e3bc43a264acfeaeda4f33fe3a7f89a2fdb8
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/pilot@sha256:4ad6b0c3839a11622e66323a1296c7fc19dcbbb2c371b2e3edd58bd4f763f19f
        - gcr.io/istio-release/pilot@sha256:c8ac4894f2e667eb439d1c960a47ac7fbc80aad3f0adb98f5fd9330d9c515696
        - gcr.io/istio-release/proxyv2@sha256:2edf332e1c7ddd46466e337d009eda091bcd43f827b6f460175b772addc8055a
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/proxyv2@sha256:a5f2c1804ac4397448149b63a67f6cfd1979d304b99a726667a4859d201c6305
        - quay.io/sail-dev/sail-operator@sha256:d37258646d76a9f708a69fbaa081a0a95908a2b0c8837a14d7ecbfcf505f9bd4
        - gcr.io/istio-release/ztunnel@sha256:ca14b3f869aa998da30c6f8f8d14b2e9cd61a40b78b05196b951cac9613d76d8
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/ztunnel@sha256:2402a1c71dce11c409b6da171d8ae27dff62c539d58aac41817499e1fcd7beb3
        - gcr.io/istio-release/install-cni@sha256:d241cd11295b7c7af6c1c7e22096db886b07ab1945b4b7b2fe3d7f95ef41b277
        - gcr.io/istio-release/install-cni@sha256:1d963aca195f1e06459925431c592cf556112d77b824c61e06555fbc31ee415f
        - gcr.io/istio-release/proxyv2@sha256:640733abb924663df83761e2ec95a2bddca797daf1ca37672ec0b045969cdeb1
        - gcr.io/istio-release/pilot@sha256:93d6b52a61e7e9891fe114e4f7d503b36e8d1566a22e82e5635084a2001eb14a
        - gcr.io/istio-release/ztunnel@sha256:eaae7b8ed53a3f18b0291f08db0e3330d7c958d39919fce9dbc43f3027bf2089
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/proxyv2@sha256:2cd83a25202af6c5aef48b432f7fed50b6de460c795ce7c84f80bf630f51ca4d
        - gcr.io/istio-release/install-cni@sha256:d85b955875b2fbfc2ca8166cf2aa0e4ac3d78dd00f4ec4140a2a22dd17e7deb9
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/pilot@sha256:21b6cdaf12e7eb8bb0ad1d493c32a76e7d34f574a41ece86ded0c79e7191e875
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/ztunnel@sha256:96daeeb4e71a304edbf2ee2d37bc4bd4b88b9da26d7e6cc0c34c94c1cd6e6cca
        - gcr.io/istio-release/ztunnel@sha256:56afd26e9384ff41a0244a8c637a0e3aa8654015b8d32b494df8b5023f213ec7
        - gcr.io/istio-release/ztunnel@sha256:ae90c4e06a4560898dbf414226e3ea879b8d0b10387af27b0c2907e8488fc5d1
        - gcr.io/istio-release/ztunnel@sha256:73b3ad311c9c9a2618e9c2f10259a3bf5414bb4fc6fd407baa6280bdd8d227f0
        - gcr.io/istio-release/pilot@sha256:29cccf38a413fe81a88d02e0bf924ca84a9cf1d6a3c9ece024c0636b1e3cb029
        - gcr.io/istio-release/install-cni@sha256:4b10d810228e553bf34924222b7d62fdfafbce5ed67dc54973d168bda384a4cd
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - quay.io/community-operator-pipeline-prod/sailoperator:1.26.3
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/install-cni@sha256:0f27cb9e3423a3ed8a444dd2137ae05f31a03df2bdd549b21ef8f0f3949e3cef
        - gcr.io/istio-release/ztunnel@sha256:45807d4c512e9a0e4855eb1a2535532319b698302ebbf4d4eaccf462997bb374
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/proxyv2@sha256:534f7589b085450b5b94e6c955f5106892df88d81676f53ac5e06a0cf5ec45da
        - gcr.io/istio-release/pilot@sha256:2961bf88463e475f1e53d82a118405841ecbb9d8a6e0b35c73c77bee53bc0c3e
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - gcr.io/istio-release/install-cni@sha256:a80a96d9e4e859d1568fe1db1b12525db8c26d153e4bb783ba4efb3c5b16f877
        version: 1.26.3
      entries:
      - name: sailoperator.v1.26.3
        version: 1.26.3
      - name: sailoperator.v1.26.2
        version: 1.26.2
      - name: sailoperator.v1.26.1
        version: 1.26.1
      - name: sailoperator.v1.26.0
        version: 1.26.0
      name: stable-1.26
    - currentCSV: sailoperator.v1.27.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:89bae0d643a074d759550ab497aa43af670ce7717db3f6fac50daaa32e61d371
          createdAt: "2025-10-21T10:12:31Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.27-latest
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0
          - v1.25-latest
          - v1.25.5
          - v1.25.4
          - v1.25.3
          - v1.25.2
          - v1.25.1
          - v1.24-latest
          - v1.24.6
          - v1.24.5
          - v1.24.4
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.24.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/ztunnel@sha256:56afd26e9384ff41a0244a8c637a0e3aa8654015b8d32b494df8b5023f213ec7
        - gcr.io/istio-release/ztunnel@sha256:eaae7b8ed53a3f18b0291f08db0e3330d7c958d39919fce9dbc43f3027bf2089
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/install-cni@sha256:313165b70241f65c79b5984797b8e3bc43a264acfeaeda4f33fe3a7f89a2fdb8
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/install-cni@sha256:3107b1947e755abe698fe2d5c3ed7ba5f228f0b4ff5ff30f484fcc984514b97e
        - gcr.io/istio-release/proxyv2@sha256:640733abb924663df83761e2ec95a2bddca797daf1ca37672ec0b045969cdeb1
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/install-cni@sha256:d241cd11295b7c7af6c1c7e22096db886b07ab1945b4b7b2fe3d7f95ef41b277
        - gcr.io/istio-release/pilot@sha256:32d0f6bd6c1259de78dbc79dfd88cf5f4dc8941613560ff2ca7dbabcf04dfd68
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/proxyv2@sha256:ee6565e57319e01b5e45b929335eb9dc3d4b30d531b4652467e6939ae81b41f7
        - gcr.io/istio-release/ztunnel@sha256:2402a1c71dce11c409b6da171d8ae27dff62c539d58aac41817499e1fcd7beb3
        - gcr.io/istio-release/pilot@sha256:e082a6f27001101942d1e2be71764b17ad350ed0d289038020426e7ee603eb56
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/ztunnel@sha256:96daeeb4e71a304edbf2ee2d37bc4bd4b88b9da26d7e6cc0c34c94c1cd6e6cca
        - gcr.io/istio-release/pilot@sha256:0d06b179025862f13150dda22608e0700a74a0127d0a1b66eebcadf18d3d4bd7
        - gcr.io/istio-release/proxyv2@sha256:75e272cbe8dd31fda4c193aedc251ee2e26593f0b7b4f305225f9ad804cc6f0d
        - gcr.io/istio-release/install-cni@sha256:f8043a943106f8638dc67ed9b8cce5ced0a25d0b8c9217281f7c7ff1dbd41c15
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/pilot@sha256:f0bcb10a51dbb2b9e5552e7f82aa7fcc2ff4dd6d0d7d2224986036b1645b855b
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/proxyv2@sha256:a5f2c1804ac4397448149b63a67f6cfd1979d304b99a726667a4859d201c6305
        - gcr.io/istio-release/pilot@sha256:c8ac4894f2e667eb439d1c960a47ac7fbc80aad3f0adb98f5fd9330d9c515696
        - gcr.io/istio-release/proxyv2@sha256:91382859f73b1a66ac113631f89ef73dabf9c931d6baf0bd7eb618c0fa958b34
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/install-cni@sha256:a80a96d9e4e859d1568fe1db1b12525db8c26d153e4bb783ba4efb3c5b16f877
        - gcr.io/istio-release/install-cni@sha256:d28af093e5b7f33e8750364e9077c8b2c464145d1904cae8be48227ec0110b04
        - gcr.io/istio-release/proxyv2@sha256:534f7589b085450b5b94e6c955f5106892df88d81676f53ac5e06a0cf5ec45da
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/proxyv2@sha256:2cd83a25202af6c5aef48b432f7fed50b6de460c795ce7c84f80bf630f51ca4d
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/proxyv2@sha256:445156b5f4a780242d079a47b7d88199cbbb5959c92358469b721af490eca1ae
        - gcr.io/istio-release/proxyv2@sha256:2edf332e1c7ddd46466e337d009eda091bcd43f827b6f460175b772addc8055a
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/pilot@sha256:7ccda8c22307ee796cb7ba3f4ce224ef533c3c683c063dcc92fd5a244d8a5c9d
        - quay.io/sail-dev/sail-operator@sha256:89bae0d643a074d759550ab497aa43af670ce7717db3f6fac50daaa32e61d371
        - gcr.io/istio-release/ztunnel@sha256:73b3ad311c9c9a2618e9c2f10259a3bf5414bb4fc6fd407baa6280bdd8d227f0
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/install-cni@sha256:f6e234ab501fabdd9643f1469f90bf0ff3696caa0f6456652e28c1a608644700
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/ztunnel@sha256:ca14b3f869aa998da30c6f8f8d14b2e9cd61a40b78b05196b951cac9613d76d8
        - gcr.io/istio-release/proxyv2@sha256:ac598d6c98415bfb323b4930ba1423b9c3d17a90c205de1ad2e5f28179275c75
        - gcr.io/istio-release/proxyv2@sha256:49ed9dd2c06383c0a847877a707a3563d0968d83779ad8d13a0c022a48c5c407
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/install-cni@sha256:d85b955875b2fbfc2ca8166cf2aa0e4ac3d78dd00f4ec4140a2a22dd17e7deb9
        - gcr.io/istio-release/pilot@sha256:2961bf88463e475f1e53d82a118405841ecbb9d8a6e0b35c73c77bee53bc0c3e
        - gcr.io/istio-release/ztunnel@sha256:0e680a1b33d458e5dfd6f91808c8bd61d00a1103084545ea6a1956c935e7554e
        - gcr.io/istio-release/install-cni@sha256:1d963aca195f1e06459925431c592cf556112d77b824c61e06555fbc31ee415f
        - gcr.io/istio-release/install-cni@sha256:0f27cb9e3423a3ed8a444dd2137ae05f31a03df2bdd549b21ef8f0f3949e3cef
        - gcr.io/istio-release/pilot@sha256:29cccf38a413fe81a88d02e0bf924ca84a9cf1d6a3c9ece024c0636b1e3cb029
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/install-cni@sha256:4b10d810228e553bf34924222b7d62fdfafbce5ed67dc54973d168bda384a4cd
        - gcr.io/istio-release/pilot@sha256:4ad6b0c3839a11622e66323a1296c7fc19dcbbb2c371b2e3edd58bd4f763f19f
        - gcr.io/istio-release/ztunnel@sha256:45807d4c512e9a0e4855eb1a2535532319b698302ebbf4d4eaccf462997bb374
        - gcr.io/istio-release/pilot@sha256:93d6b52a61e7e9891fe114e4f7d503b36e8d1566a22e82e5635084a2001eb14a
        - gcr.io/istio-release/proxyv2@sha256:d62cc7585450bce8573338c3d147961f4e1df045ffcf5956abea29841cb5aaa4
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/ztunnel@sha256:ae90c4e06a4560898dbf414226e3ea879b8d0b10387af27b0c2907e8488fc5d1
        - gcr.io/istio-release/ztunnel@sha256:74ee23f374ea28b3455ad2eca2bea62da95bc2a23b865b7c8c301139046650d5
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/install-cni@sha256:7b12bcfabd92c5756e4b12bf82e373f4abcdd3ccf81ac0b93fe0aa6f8ccce63c
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/ztunnel@sha256:45e0288894c9beed590bd4caed1dc04a96be7231de3cdd5e2c45f1c08f194503
        - gcr.io/istio-release/ztunnel@sha256:144093bb2d220b7ee402626dc5ea9ed7ddce2675ebe5ab4bf83646b4762484dd
        - gcr.io/istio-release/pilot@sha256:21b6cdaf12e7eb8bb0ad1d493c32a76e7d34f574a41ece86ded0c79e7191e875
        - quay.io/community-operator-pipeline-prod/sailoperator:1.27.3
        - gcr.io/istio-release/pilot@sha256:a6e8f88e35f886a45ae645bce076305d1f66a703f80059b6449026159ef767a8
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        version: 1.27.3
      entries:
      - name: sailoperator.v1.27.3
        version: 1.27.3
      - name: sailoperator.v1.27.2
        version: 1.27.2
      - name: sailoperator.v1.27.1
        version: 1.27.1
      - name: sailoperator.v1.27.0
        version: 1.27.0
      name: stable-1.27
    - currentCSV: sailoperator.v1.28.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
          createdAt: "2025-12-10T15:50:55Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.28-latest
          - v1.28.1
          - v1.28.0
          - v1.27-latest
          - v1.27.4
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.7
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/proxyv2@sha256:8ff7b0d50cea9aa80512b6b9a75afc9021de6dc4d4151ce7946c5e04812a3de2
        - gcr.io/istio-release/proxyv2@sha256:4c830a386c93683bdf88249e089bc971361c419365663dc35aa1d5ba6be73c19
        - quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
        - gcr.io/istio-release/pilot@sha256:dcc1431b635a2151f891ba17e8911d56f1aa1e4acaff0c543d0036b849cb0369
        - gcr.io/istio-release/ztunnel@sha256:5991f9a9202c9a1a59c41efb7e8b89e7a9cfc0dc39f71afe91cdd78c6ecf697c
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/ztunnel@sha256:836e3f8b34527139523effc176cc138b93e69b4506ccb3dca75460e0ccb96138
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/install-cni@sha256:ba4c1ad3c67be6681883162c8543e15b2ea78a79658665a450bce0f475674de5
        - gcr.io/istio-release/proxyv2@sha256:f95a5e91204afbfad9d33d6f1bc0556a96bf997b18edede6c9e6b86eb07543a1
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/ztunnel@sha256:352baf7040b916b2d3de03388f14a8da0da5fa5e02a2589218261119b39a4594
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/install-cni@sha256:81295e43028ab50028f173a7ed2bf3d435201539b6b70f5938079771fe9e4561
        - quay.io/community-operator-pipeline-prod/sailoperator:1.28.1
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/pilot@sha256:5109ab9a1e7f1cdc60430e8823957655710dcc4977479b67de3d43bbab18a3f6
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/install-cni@sha256:8dda5692bbed6069d837acc084d5b142c325bba2491622a04ec42198c44562b4
        - gcr.io/istio-release/ztunnel@sha256:f562d8dd28e803061ee63853e7e1da07188ec24e734ebf0d95ec2126b41ac392
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        - gcr.io/istio-release/pilot@sha256:43e24609869d90ea7c12c878474e5905b02676e7dd827903be42c15599cde1b7
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/install-cni@sha256:a84971fd29ce54181dc4ceee6dbde8032bebd5a72301319a0468e5bc39902080
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/pilot@sha256:d0930e5cf028deeb636364595b4d0a42e05d5745850013bae297b32a9315ab18
        - gcr.io/istio-release/proxyv2@sha256:c68e79b821ba47c63af844422114af6d5cc01cc1fd8f1b0184c42be330afc1d2
        version: 1.28.1
      entries:
      - name: sailoperator.v1.28.1
        version: 1.28.1
      - name: sailoperator.v1.28.0
        version: 1.28.0
      name: stable-1.28
    defaultChannel: stable
    packageName: sailoperator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: ""
    name: ingress-node-firewall
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ingress-node-firewall.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ingressnodefirewall.openshift.io/v1alpha1",
                "kind": "IngressNodeFirewall",
                "metadata": {
                  "name": "ingressnodefirewall-demo2"
                },
                "spec": {
                  "ingress": [
                    {
                      "rules": [
                        {
                          "action": "Deny",
                          "order": 10,
                          "protocolConfig": {
                            "icmp": {
                              "icmpType": 8
                            },
                            "protocol": "ICMP"
                          }
                        },
                        {
                          "action": "Deny",
                          "order": 20,
                          "protocolConfig": {
                            "protocol": "TCP",
                            "tcp": {
                              "ports": "8000-9000"
                            }
                          }
                        }
                      ],
                      "sourceCIDRs": [
                        "172.16.0.0/12"
                      ]
                    },
                    {
                      "rules": [
                        {
                          "action": "Deny",
                          "order": 10,
                          "protocolConfig": {
                            "icmpv6": {
                              "icmpType": 128
                            },
                            "protocol": "ICMPv6"
                          }
                        }
                      ],
                      "sourceCIDRs": [
                        "fc00:f853:ccd:e793::0/64"
                      ]
                    }
                  ],
                  "interfaces": [
                    "eth0"
                  ],
                  "nodeSelector": {
                    "matchLabels": {
                      "do-node-ingress-firewall": "true"
                    }
                  }
                }
              },
              {
                "apiVersion": "ingressnodefirewall.openshift.io/v1alpha1",
                "kind": "IngressNodeFirewallConfig",
                "metadata": {
                  "name": "ingressnodefirewallconfig",
                  "namespace": "ingress-node-firewall-system"
                },
                "spec": {
                  "debug": false,
                  "ebpfProgramManagerMode": false,
                  "nodeSelector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ingress-node-firewall-rhel9-operator@sha256:be9d43da922a7128c25945c296cb7b05f25c91417baf286d22330f43c3fbb9ff
          createdAt: "2025-09-04T08:25:04Z"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.11.0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-ingress-node-firewall
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/ingress-node-firewall
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: IngressNodeFirewallConfig
            name: ingressnodefirewallconfigs.ingressnodefirewall.openshift.io
            version: v1alpha1
          - kind: IngressNodeFirewallNodeState
            name: ingressnodefirewallnodestates.ingressnodefirewall.openshift.io
            version: v1alpha1
          - kind: IngressNodeFirewall
            name: ingressnodefirewalls.ingressnodefirewall.openshift.io
            version: v1alpha1
        description: The Ingress node firewall operator, manages the configuration
          of cluster scoped Ingress Node firewall rules for Kubernetes.
        displayName: Ingress Node Firewall Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ingressnodefirewall
        links:
        - name: Ingress Node Firewall
          url: https://github.com/openshift/ingress-node-firewall
        maintainers:
        - email: mmahmoud@redhat.com
          name: msherif1234
        maturity: alpha
        provider:
          name: Red Hat, Inc
        relatedImages:
        - registry.redhat.io/openshift4/ingress-node-firewall-operator-bundle@sha256:82df35fea3406d71cb5f49f06098ea2946cd3efb4685b662eee0f60d27ecf33c
        - registry.redhat.io/openshift4/ingress-node-firewall-rhel9-operator@sha256:be9d43da922a7128c25945c296cb7b05f25c91417baf286d22330f43c3fbb9ff
        - registry.redhat.io/openshift4/ingress-node-firewall-rhel9@sha256:9d305bfa5f20dcdec7dd826670814ec8a92c7c177b00b9bddaae4c8a1cb31403
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 4.20.0-202512081147
      entries:
      - name: ingress-node-firewall.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: ingress-node-firewall.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: ingress-node-firewall.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: ingress-node-firewall.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: ingress-node-firewall.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: ingress-node-firewall.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: ingress-node-firewall.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: ingress-node-firewall
    provider:
      name: Red Hat, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://skupper.io
    name: skupper-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: skupper-operator.v1.4.8-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:1fd908e80ef21fe7d7051c400cb099f2f3ca51c8cdd698705ef9784d34688911
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:4c9cc9df83baa1ef37cfb429babe5b86a962b8bb096209b3fb74291c67c94000
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:0f6c6faf7fdf7b6d69bc5cc4b0266064d0035e295d0562b957d95c8c81699f2b
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:c665677c639699d6a5ef24aed5a1a3d9c0a5ee25f077a6db42a9fc6247d93132
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:eedde9f2019d4e919612bcc18f427c0d88b4846e773751af231ba0e560d48869
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:65602221cdff7f718d4149f4dead167d05dbbe0cea1eaa8bf4b98be588135583
        version: 1.4.8-rh-1
      entries:
      - name: skupper-operator.v1.4.8-rh-1
        version: 1.4.8-rh-1
      - name: skupper-operator.v1.4.7-rh-3
        version: 1.4.7-rh-3
      - name: skupper-operator.v1.4.7-rh-2
        version: 1.4.7-rh-2
      - name: skupper-operator.v1.4.7-rh-1
        version: 1.4.7-rh-1
      - name: skupper-operator.v1.4.5-rh-4
        version: 1.4.5-rh-4
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: alpha
    - currentCSV: skupper-operator.v1.9.4-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.9.4-rh-1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:97f1a693c36b909b31a8b3141a5ea07b9c369acb98f9f89771de8db09d209fad
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:9abea7559799ec9315c646ac00688582044a2783973efb0caf01f8c401ca4c82
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:b981b42e7ba47169636ab14f3ec092aadfdc374399b5856d77a0cefd5295fca1
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:8010bd9fa41fcd706a84d20bf54c27f59ab1f6c6e1a10881e42e1f71a1c7e237
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:039fcc42f7935dc3a5fea4da1b9b858ae0dabf6855a101543edd5fcea2b57392
        version: 1.9.4-rh-1
      entries:
      - name: skupper-operator.v1.9.4-rh-1
        version: 1.9.4-rh-1
      - name: skupper-operator.v1.9.2-rh-1
        version: 1.9.2-rh-1
      - name: skupper-operator.v1.9.1-rh-1
        version: 1.9.1-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable
    - currentCSV: skupper-operator.v1.9.4-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.9.4-rh-1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:9abea7559799ec9315c646ac00688582044a2783973efb0caf01f8c401ca4c82
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:b981b42e7ba47169636ab14f3ec092aadfdc374399b5856d77a0cefd5295fca1
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:8010bd9fa41fcd706a84d20bf54c27f59ab1f6c6e1a10881e42e1f71a1c7e237
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:039fcc42f7935dc3a5fea4da1b9b858ae0dabf6855a101543edd5fcea2b57392
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:97f1a693c36b909b31a8b3141a5ea07b9c369acb98f9f89771de8db09d209fad
        version: 1.9.4-rh-1
      entries:
      - name: skupper-operator.v1.9.4-rh-1
        version: 1.9.4-rh-1
      - name: skupper-operator.v1.9.2-rh-1
        version: 1.9.2-rh-1
      - name: skupper-operator.v1.9.1-rh-1
        version: 1.9.1-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1
    - currentCSV: skupper-operator.v1.4.8-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:1fd908e80ef21fe7d7051c400cb099f2f3ca51c8cdd698705ef9784d34688911
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:4c9cc9df83baa1ef37cfb429babe5b86a962b8bb096209b3fb74291c67c94000
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:0f6c6faf7fdf7b6d69bc5cc4b0266064d0035e295d0562b957d95c8c81699f2b
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:c665677c639699d6a5ef24aed5a1a3d9c0a5ee25f077a6db42a9fc6247d93132
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:eedde9f2019d4e919612bcc18f427c0d88b4846e773751af231ba0e560d48869
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:65602221cdff7f718d4149f4dead167d05dbbe0cea1eaa8bf4b98be588135583
        version: 1.4.8-rh-1
      entries:
      - name: skupper-operator.v1.4.8-rh-1
        version: 1.4.8-rh-1
      - name: skupper-operator.v1.4.7-rh-3
        version: 1.4.7-rh-3
      - name: skupper-operator.v1.4.7-rh-2
        version: 1.4.7-rh-2
      - name: skupper-operator.v1.4.7-rh-1
        version: 1.4.7-rh-1
      - name: skupper-operator.v1.4.5-rh-4
        version: 1.4.5-rh-4
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.4
    - currentCSV: skupper-operator.v1.5.5-rh-6
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:9e9e1f2288f0218e3ba2abf4bebac9731d7cf9f9c567e0f6de6767b0b66cbee4
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:1de071dabf620265252f3922c632f17f676ba716ce4c3df931a0ccb3871dbb6c
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:9e9e1f2288f0218e3ba2abf4bebac9731d7cf9f9c567e0f6de6767b0b66cbee4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:3e78ec8cdb729a704d5a26e54697f285ba7c0b9afee6160b7ecc703876120dea
        - registry.redhat.io/openshift4/ose-prometheus@sha256:53afaf53975807765fc3777314edd218c789c17680c1f57a8e33a8f9a76f38bf
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:5f8621d0013febcecbed4d7c82db11a4dded99ad8ce6b6d83858b9bdbe79ee5a
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:a5d7c1b2b9db672548126c0873d062a55667d93291fd3e32809d3c9c900c548e
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:aa261c79b421bd49f7b46974a3bb5a790d5a1a73dd8dea4e1d8a4634fb68a51f
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:be9dbcd2a3a1e1e536921390dcfd283fc45dc4423d2705376ef37a9fb53f7cf1
        version: 1.5.5-rh-6
      entries:
      - name: skupper-operator.v1.5.5-rh-6
        version: 1.5.5-rh-6
      - name: skupper-operator.v1.5.5-rh-5
        version: 1.5.5-rh-5
      - name: skupper-operator.v1.5.5-rh-4
        version: 1.5.5-rh-4
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.5
    - currentCSV: skupper-operator.v1.8.7-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:b0d43628b779a101a24e4b271318a34c21f3b71bcba2bf20804f941a93d27455
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.8.7-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:3adeef827eca0382cd410f7c3e99a0fee9b50791cb0e0c6fc130b72a2550684f
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5ea36e96f878577104ab7601e57e7a2a233f11dbdc533454f95e2e14a066d21f
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:56b8fde75a6e7df235c560a0f4b9114398da5ba8b20f75f1ea7338f48ce19506
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:d7d252cff08ba1589afd8707ed349f87d3b6214906a4fb49932bda0a4d19fee4
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:123488f0877c054a348f5b4135e68d77c17523bc4e5ea14dd73168372592f4ce
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:f798745e799515065af099a816057b9c98a741e951d30a0f45ed47ca50e6724e
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:61542c5f0989f51ac5d6c96f5d0e29aca75614b79e7626299c77c5a74636b564
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:b0d43628b779a101a24e4b271318a34c21f3b71bcba2bf20804f941a93d27455
        version: 1.8.7-rh-2
      entries:
      - name: skupper-operator.v1.8.7-rh-2
        version: 1.8.7-rh-2
      - name: skupper-operator.v1.8.7-rh-1
        version: 1.8.7-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.8
    - currentCSV: skupper-operator.v1.9.4-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.9.4-rh-1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:b981b42e7ba47169636ab14f3ec092aadfdc374399b5856d77a0cefd5295fca1
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:8010bd9fa41fcd706a84d20bf54c27f59ab1f6c6e1a10881e42e1f71a1c7e237
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:039fcc42f7935dc3a5fea4da1b9b858ae0dabf6855a101543edd5fcea2b57392
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:97f1a693c36b909b31a8b3141a5ea07b9c369acb98f9f89771de8db09d209fad
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:9abea7559799ec9315c646ac00688582044a2783973efb0caf01f8c401ca4c82
        version: 1.9.4-rh-1
      entries:
      - name: skupper-operator.v1.9.4-rh-1
        version: 1.9.4-rh-1
      - name: skupper-operator.v1.9.2-rh-1
        version: 1.9.2-rh-1
      - name: skupper-operator.v1.9.1-rh-1
        version: 1.9.1-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.9
    - currentCSV: skupper-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessGrant",
                "metadata": {
                  "name": "my-grant"
                },
                "spec": {
                  "expirationWindow": "1h",
                  "redemptionsAllowed": 10
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessToken",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "ca": "-----BEGIN CERTIFICATE-----\nMIIDNzCCAh+ … Q=\n-----END CERTIFICATE-----\n",
                  "code": "L1qCl2mZ7D81gbXp3ax4YT0K",
                  "url": "https://10.107.241.191:9090/86b80f6b-2b02-47ac-bab4-d285bb4f7b9d"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnector",
                "metadata": {
                  "name": "backend",
                  "namespace": "other"
                },
                "spec": {
                  "port": 8080,
                  "selector": "app=backend",
                  "siteNamespace": "west"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnectorBinding",
                "metadata": {
                  "name": "backend",
                  "namespace": "west"
                },
                "spec": {
                  "connectorNamespace": "other",
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "west-certificate"
                },
                "spec": {
                  "client": true
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Connector",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "port": 8080,
                  "routingKey": "backend",
                  "selector": "app=backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Link",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "endpoints": [
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "inter-router",
                      "port": "55671"
                    },
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "edge",
                      "port": "45671"
                    }
                  ],
                  "tlsCredentials": "my-token"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "host": "backend",
                  "port": 8080,
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "RouterAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "SecuredAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Site",
                "metadata": {
                  "name": "west"
                },
                "spec": {
                  "ha": true,
                  "linkAccess": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
          createdAt: "2025-10-21T19:59:28Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessGrant
            name: accessgrants.skupper.io
            version: v2alpha1
          - kind: AccessToken
            name: accesstokens.skupper.io
            version: v2alpha1
          - kind: AttachedConnectorBinding
            name: attachedconnectorbindings.skupper.io
            version: v2alpha1
          - kind: AttachedConnector
            name: attachedconnectors.skupper.io
            version: v2alpha1
          - kind: Certificate
            name: certificates.skupper.io
            version: v2alpha1
          - kind: Connector
            name: connectors.skupper.io
            version: v2alpha1
          - kind: Link
            name: links.skupper.io
            version: v2alpha1
          - kind: Listener
            name: listeners.skupper.io
            version: v2alpha1
          - kind: RouterAccess
            name: routeraccesses.skupper.io
            version: v2alpha1
          - kind: SecuredAccess
            name: securedaccesses.skupper.io
            version: v2alpha1
          - kind: Site
            name: sites.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:912185defb2a16b8cc9070e5decc704f1a0b363858e26c19701655ea34adf35a
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:c0f5768b542346686b8bd0132238f047d644a2ea1a7e3692d6d947f8f977dc93
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:ca6b432e34aa02e67e32f707bf1b4234760afc681a2561c19d85a503ecac00f0
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
        - registry.redhat.io/service-interconnect/skupper-kube-adaptor-rhel9@sha256:80cb17acc05e13c9aa3556d186a7ab8557085039db4105e21f0366d34b2074fe
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:d401f69273344a89767c1f385d74b7b5a4eb3b9552336dd097e06859e40ca4e5
        version: 2.1.2-rh-2
      entries:
      - name: skupper-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-operator.v2.1.1-rh-3
        version: 2.1.1-rh-3
      - name: skupper-operator.v2.0.1-rh-2
        version: 2.0.1-rh-2
      - name: skupper-operator.v2.0.0-rh-11
        version: 2.0.0-rh-11
      name: stable-2
    - currentCSV: skupper-operator.v2.0.1-rh-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessGrant",
                "metadata": {
                  "name": "my-grant"
                },
                "spec": {
                  "expirationWindow": "1h",
                  "redemptionsAllowed": 10
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessToken",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "ca": "-----BEGIN CERTIFICATE-----\nMIIDNzCCAh+ … Q=\n-----END CERTIFICATE-----\n",
                  "code": "L1qCl2mZ7D81gbXp3ax4YT0K",
                  "url": "https://10.107.241.191:9090/86b80f6b-2b02-47ac-bab4-d285bb4f7b9d"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnector",
                "metadata": {
                  "name": "backend",
                  "namespace": "other"
                },
                "spec": {
                  "port": 8080,
                  "selector": "app=backend",
                  "siteNamespace": "west"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnectorBinding",
                "metadata": {
                  "name": "backend",
                  "namespace": "west"
                },
                "spec": {
                  "connectorNamespace": "other",
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "west-certificate"
                },
                "spec": {
                  "client": true
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Connector",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "port": 8080,
                  "routingKey": "backend",
                  "selector": "app=backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Link",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "endpoints": [
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "inter-router",
                      "port": "55671"
                    },
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "edge",
                      "port": "45671"
                    }
                  ],
                  "tlsCredentials": "my-token"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "host": "backend",
                  "port": 8080,
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "RouterAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "SecuredAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Site",
                "metadata": {
                  "name": "west"
                },
                "spec": {
                  "ha": true,
                  "linkAccess": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:b092400308feb51d76d61616a26a76b1ec4f9962719e012187fdf931f0b93f25
          createdAt: "2025-11-28T14:26:01Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>2.0.0-rh-1 <2.0.1-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessGrant
            name: accessgrants.skupper.io
            version: v2alpha1
          - kind: AccessToken
            name: accesstokens.skupper.io
            version: v2alpha1
          - kind: AttachedConnectorBinding
            name: attachedconnectorbindings.skupper.io
            version: v2alpha1
          - kind: AttachedConnector
            name: attachedconnectors.skupper.io
            version: v2alpha1
          - kind: Certificate
            name: certificates.skupper.io
            version: v2alpha1
          - kind: Connector
            name: connectors.skupper.io
            version: v2alpha1
          - kind: Link
            name: links.skupper.io
            version: v2alpha1
          - kind: Listener
            name: listeners.skupper.io
            version: v2alpha1
          - kind: RouterAccess
            name: routeraccesses.skupper.io
            version: v2alpha1
          - kind: SecuredAccess
            name: securedaccesses.skupper.io
            version: v2alpha1
          - kind: Site
            name: sites.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:fe0081a3339698f20c44bdcf33885747f5a44d69aa7dcebc460dea586231b37f
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:96cae6bbe557d0f60cb9364919a7b12ea7c462c5d4c663d2084433393938cf2a
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:b8308c9c9eecf421756643ec0eaeacbacda70dfdbe5ec2c0883578e9db474952
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:b092400308feb51d76d61616a26a76b1ec4f9962719e012187fdf931f0b93f25
        - registry.redhat.io/service-interconnect/skupper-kube-adaptor-rhel9@sha256:215ead3803dc808532748db1105884c577e151a79170fa50bc4249161c335f49
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:c76a55e1687fb53e17e66d2b0e57849d637835147247acf7182b8a9eb4ce1575
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:aec9e002029591c20e94725cf0b09b0ae575139ac0bd0e3805f67e2446d4a702
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:f3430023e46fe5404176fd48b93cc6008836d2454131f09b00c38dacc0147e2b
        version: 2.0.1-rh-4
      entries:
      - name: skupper-operator.v2.0.1-rh-4
        version: 2.0.1-rh-4
      - name: skupper-operator.v2.0.1-rh-2
        version: 2.0.1-rh-2
      - name: skupper-operator.v2.0.0-rh-11
        version: 2.0.0-rh-11
      name: stable-2.0
    - currentCSV: skupper-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessGrant",
                "metadata": {
                  "name": "my-grant"
                },
                "spec": {
                  "expirationWindow": "1h",
                  "redemptionsAllowed": 10
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessToken",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "ca": "-----BEGIN CERTIFICATE-----\nMIIDNzCCAh+ … Q=\n-----END CERTIFICATE-----\n",
                  "code": "L1qCl2mZ7D81gbXp3ax4YT0K",
                  "url": "https://10.107.241.191:9090/86b80f6b-2b02-47ac-bab4-d285bb4f7b9d"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnector",
                "metadata": {
                  "name": "backend",
                  "namespace": "other"
                },
                "spec": {
                  "port": 8080,
                  "selector": "app=backend",
                  "siteNamespace": "west"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnectorBinding",
                "metadata": {
                  "name": "backend",
                  "namespace": "west"
                },
                "spec": {
                  "connectorNamespace": "other",
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "west-certificate"
                },
                "spec": {
                  "client": true
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Connector",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "port": 8080,
                  "routingKey": "backend",
                  "selector": "app=backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Link",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "endpoints": [
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "inter-router",
                      "port": "55671"
                    },
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "edge",
                      "port": "45671"
                    }
                  ],
                  "tlsCredentials": "my-token"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "host": "backend",
                  "port": 8080,
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "RouterAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "SecuredAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Site",
                "metadata": {
                  "name": "west"
                },
                "spec": {
                  "ha": true,
                  "linkAccess": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
          createdAt: "2025-10-21T19:59:28Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessGrant
            name: accessgrants.skupper.io
            version: v2alpha1
          - kind: AccessToken
            name: accesstokens.skupper.io
            version: v2alpha1
          - kind: AttachedConnectorBinding
            name: attachedconnectorbindings.skupper.io
            version: v2alpha1
          - kind: AttachedConnector
            name: attachedconnectors.skupper.io
            version: v2alpha1
          - kind: Certificate
            name: certificates.skupper.io
            version: v2alpha1
          - kind: Connector
            name: connectors.skupper.io
            version: v2alpha1
          - kind: Link
            name: links.skupper.io
            version: v2alpha1
          - kind: Listener
            name: listeners.skupper.io
            version: v2alpha1
          - kind: RouterAccess
            name: routeraccesses.skupper.io
            version: v2alpha1
          - kind: SecuredAccess
            name: securedaccesses.skupper.io
            version: v2alpha1
          - kind: Site
            name: sites.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:ca6b432e34aa02e67e32f707bf1b4234760afc681a2561c19d85a503ecac00f0
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
        - registry.redhat.io/service-interconnect/skupper-kube-adaptor-rhel9@sha256:80cb17acc05e13c9aa3556d186a7ab8557085039db4105e21f0366d34b2074fe
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:d401f69273344a89767c1f385d74b7b5a4eb3b9552336dd097e06859e40ca4e5
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:912185defb2a16b8cc9070e5decc704f1a0b363858e26c19701655ea34adf35a
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:c0f5768b542346686b8bd0132238f047d644a2ea1a7e3692d6d947f8f977dc93
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        version: 2.1.2-rh-2
      entries:
      - name: skupper-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-operator.v2.1.1-rh-3
        version: 2.1.1-rh-3
      - name: skupper-operator.v2.0.1-rh-2
        version: 2.0.1-rh-2
      - name: skupper-operator.v2.0.0-rh-11
        version: 2.0.0-rh-11
      name: stable-2.1
    defaultChannel: stable-2
    packageName: skupper-operator
    provider:
      name: Red Hat
      url: https://skupper.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: eG Innovations
      provider-url: https://www.eginnovations.com
    name: eginnovations-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eginnovations-operator.v0.0.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eginnovations.com/v1beta1",
                "kind": "EgUniversalAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "eginnovations-operator"
                  },
                  "name": "eguniversalagent",
                  "namespace": "egagent"
                },
                "spec": {
                  "agent": {
                    "env": [
                      {
                        "name": "EG_MANAGER",
                        "value": "Replace with eG Manager IP"
                      },
                      {
                        "name": "EG_MANAGER_PORT",
                        "value": "Replace with eG Manager Port"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "true"
          containerImage: docker.io/eginnovations/universal-agent-operator@sha256:b8e3e26dca1b94fabfd79496feb36f3f2de4434331ef9ca810125892a936dca7
          createdAt: "2025-09-11T20:08:00Z"
          description: eG Innovations provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with eG Universal Agent Operator.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/eginnovations/universal-agent-operator
          support: eG Innovations
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EgUniversalAgent is the Schema for the eguniversalagents
              API
            displayName: Eg Universal Agent
            kind: EgUniversalAgent
            name: eguniversalagents.eginnovations.com
            version: v1beta1
        description: |
          eG Innovations’ converged application and infrastructure performance monitoring capabilities provide end-to-end visibility and correlated analytics for every layer, every tier of your IT landscape.

          The eG Enterprise Universal Agent Operator automatically configures a host agent on every Kubernetes worker node. The host agent auto-discovers the worker nodes and application containers running as Pods on each node and tracks their performance and utilization levels. In-depth monitoring of applications running on containers is also provided using the same host agent. No additional agents are required for the containers.

          ### Capabilities
            * Rolls out the egagent pod per node to monitor its pods and the node itself
            * Automatic BTM profiler injection using webhook based injection for deep application monitoring and transection tracing.

          ### Installation
            1. Create the namespace "egagent" for installing eG Agent on OpenShift Cluster.

               <br />``` $ oc create ns egagent ```
            2. Add "egagent" serviceaccount to scc( Security Context Constraints ) of OpenShift Cluster as privileged using below command.

               <br />``` $ oc adm policy add-scc-to-user privileged -z egagent -n egagent ```
            2. Install eG Innovations Universal Agent operator from [OpenShift Container Platform](https://www.openshift.com/) OperatorHub.
            3. Create the eG Universal Agent CRD (Custom Resource Definition)
               a. Click "View YAML Example" and copy the yaml contents and save it to (filename).yaml on your host.
               b. To apply the CRD run the following command

               <br />``` $ oc apply -f (filename).yaml ```

          ### Required Parameters
            * EG\_MANAGER, EG\_MANAGER\_PORT - provide the ip and port of your eG Manager Installation.

          ### Advanced Options
            * Disable Certificate Checking - disable any certificate validation that may interact poorly with proxies within your cluster
            * Image Override - use a copy of the eG Iniversal Agent container image from a registry other that Docker's or Red Hat's
            * Environment variables - define environment variables for the eG Universal Agent container of for APM profiler.
            * Namespace Selectors- select a subset of namesapces to enable instrumentation for applications.

          For complete list of supported parameters and the detailed documentation available in [eG Innovations Docs](https://docs.eginnovations.com)
        displayName: eG Innovations Universal Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Monitoring
        - Tracing
        links:
        - name: eG Innovations Kubernetes Monitoring Overview
          url: https://www.eginnovations.com/documentation/Kubernetes/Introduction-to-Monitoring-Kubernetes.htm
        maintainers:
        - email: devops@eginnovations.com
          name: eG Innovations
        maturity: beta
        minKubeVersion: 1.26.0
        provider:
          name: eG Innovations
          url: https://www.eginnovations.com
        relatedImages:
        - docker.io/eginnovations/universal-agent-operator@sha256:b8e3e26dca1b94fabfd79496feb36f3f2de4434331ef9ca810125892a936dca7
        - registry.connect.redhat.com/eginnovations/universal-agent-operator@sha256:65f851074e0e1db57a62b559c0f10f9d30543011727aec3b832f9a35468139e9
        version: 0.0.11
      entries:
      - name: eginnovations-operator.v0.0.11
        version: 0.0.11
      name: beta
    defaultChannel: beta
    packageName: eginnovations-operator
    provider:
      name: eG Innovations
      url: https://www.eginnovations.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Aqua Security, Inc.
      provider-url: ""
    name: aqua-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aqua-operator.2022.4.860
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaCsp",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "namespace": "aqua",
                    "version": "2022.4",
                    "requirements": true
                  },
                  "common": {
                    "dbDiskSize": 10,
                    "databaseSecret": {
                      "key": "db-password",
                      "name": "aqua-database-password"
                    }
                  },
                  "database": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  },
                  "gateway": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  },
                  "server": {
                    "replicas": 1,
                    "service": "LoadBalancer"
                  },
                  "route": true,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaDatabase",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "splitDB": false
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  },
                  "diskSize": 10,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "runAsNonRoot": false,
                  "gateway": {
                    "host": "aqua-gateway",
                    "port": 8443
                  },
                  "token": "<<your-token>>"
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaKubeEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "version": "2022.4",
                    "serviceAccount": "aqua-kube-enforcer-sa"
                  },
                  "config": {
                    "gateway_address": "aqua-gateway.aqua:8443",
                    "cluster_name": "aqua-secure",
                    "imagePullSecret": "aqua-registry"
                  },
                  "deploy": {
                    "service": "ClusterIP"
                  },
                  "starboard": {
                    "infra": {
                      "serviceAccount": "starboard-operator"
                    },
                    "config": {
                      "imagePullSecret": "aqua-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    }
                  },
                  "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>"
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaGateway",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  }
                },
                "runAsNonRoot": false
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaScanner",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "deploy": {
                    "replicas": 1
                  },
                  "env": [],
                  "runAsNonRoot": false,
                  "login": {
                    "username": "<<YOUR AQUA USER NAME>>",
                    "password": "<<YOUR AQUA USER PASSWORD>>",
                    "host": "http://aqua-server:8080"
                  }
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaServer",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "LoadBalancer"
                  }
                },
                "runAsNonRoot": false
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaLightning",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "global": {
                    "gateway_address": "aqua-gateway.aqua:8443",
                    "cluster_name": "Default-cluster-name"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry"
                  },
                  "kubeEnforcer": {
                    "infra": {
                      "serviceAccount": "aqua-kube-enforcer-sa"
                    },
                    "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>",
                    "deploy": {
                      "service": "ClusterIP"
                    },
                    "starboard": {
                      "infra": {
                        "serviceAccount": "aqua-kube-enforcer-sa"
                      },
                      "config": {
                        "imagePullSecret": "aqua-registry"
                      },
                      "deploy": {
                        "replicas": 1
                      }
                    },
                    "env": []
                  },
                  "enforcer": {
                    "infra": {
                      "serviceAccount": "aqua-sa",
                      "version": "2022.4"
                    },
                    "deploy": null,
                    "token": "<<ENFORCER_GROUP_TOKEN>>",
                    "env": [
                    ],
                    "secret": {
                      "name": null,
                      "key": null
                    },
                    "runAsNonRoot": null,
                    "rhcosVersion": null
                  }
                }
              },
            {
                  "apiVersion": "operator.aquasec.com/v1alpha1",
                  "kind": "AquaCloudConnector",
                  "metadata": {
                    "name": "aqua"
                  },
                  "spec": {
                    "infra": {
                      "serviceAccount": "aqua-sa",
                      "version": "2022.4"
                    },
                    "common": {
                      "imagePullSecret": "aqua-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    },
                    "runAsNonRoot": false,
                    "gateway": {
                      "host": "aqua-gateway",
                      "port": "8443"
                    },
                    "login": {
                      "host": "aqua-gateway:8443",
                      "password": "<<YOUR AQUA USER PASSWORD>>",
                      "token": "<<YOUR AQUA CLOUD CONNECTOR TOKEN>>",
                      "username": "<<YOUR AQUA USER NAME>>"
                    },
                    "tunnels": [
                      {
                        "host": "<account>.azurecr.io",
                        "port": "443"
                      },
                      {
                        "host": "gke.gcr.io",
                        "port": "443"
                      },
                      {
                        "host": "<account>.jfrog.io",
                        "port": "443"
                      },
                      {
                        "host": "1.1.1.1",
                        "port": "443"
                      },
                      {
                        "region": "us-east1",
                        "type": "ecr"
                      }
                    ]
                  }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "true"
          containerImage: registry.connect.redhat.com/aquasec/aquasec@sha256:4f80ed26014ffc3f08e078a8be96072fa211297000e306816f600e0a6d1d8fb1
          createdAt: ""
          description: The Aqua Security Operator runs within a Openshift cluster
            and provides a means to deploy and manage Aqua Security cluster and components.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=1.0.2 <2022.4.860'
          operators.operatorframework.io/internal-objects: '["aquastarboards.aquasecurity.github.io","configauditreports.aquasecurity.github.io",
            "clusterconfigauditreports.aquasecurity.github.io"]'
          repository: https://github.com/aquasecurity/aqua-operator
          support: Aqua Security, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Aqua Security CSP Deployment with Aqua Operator
            displayName: AquaCsp
            kind: AquaCsp
            name: aquacsps.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Lightning Enforcers Deployment with Aqua Operator
            displayName: AquaLightningEnforcers
            kind: AquaLightning
            name: aqualightnings.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Database Deployment with Aqua Operator
            displayName: AquaDatabase
            kind: AquaDatabase
            name: aquadatabases.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Enforcer Deployment with Aqua Operator
            displayName: AquaEnforcer
            kind: AquaEnforcer
            name: aquaenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security KubeEnforcer Deployment with Aqua Operator
            displayName: AquaKubeEnforcer
            kind: AquaKubeEnforcer
            name: aquakubeenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Gateway Deployment with Aqua Operator
            displayName: AquaGateway
            kind: AquaGateway
            name: aquagateways.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Scanner Deployment with Aqua Operator
            displayName: AquaScanner
            kind: AquaScanner
            name: aquascanners.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Server Deployment with Aqua Operator
            displayName: AquaServer
            kind: AquaServer
            name: aquaservers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Starboard for kube-enforcer.
            displayName: AquaStarboard
            kind: AquaStarboard
            name: aquastarboards.aquasecurity.github.io
            version: v1alpha1
          - description: Aqua Cloud Connector Deployment with Aqua Operator
            displayName: AquaCloudConnector
            kind: AquaCloudConnector
            name: aquacloudconnectors.operator.aquasec.com
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ClusterConfigAuditReport
            kind: ClusterConfigAuditReport
            name: clusterconfigauditreports.aquasecurity.github.io
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ConfigAuditReport
            kind: ConfigAuditReport
            name: configauditreports.aquasecurity.github.io
            version: v1alpha1
        description: |-
          The Aqua Security Operator runs within an OpenShift cluster and provides a means to deploy and manage the Aqua Security cluster and components :
          * Server (aka “console”)
          * Database (for production environments we recommend to use an external database and not the Aqua default database)
          * Gateway
          * Enforcer (aka “agent”)
          * KubeEnforcer
          * Scanner
          * CSP (package that contains the Server, Database, and Gateway)
          * LightningEnforcer (package that contains Enforcer and Kube Enforcer) - Do not deploy using Certified Operator.
          * AquaCloudConnector.

          Use the Aqua-Operator to
          * Deploy Aqua Security components on OpenShift
          * Scale up Aqua Security components with extra replicas
          * Assign metadata tags to Aqua Security components

          The Aqua Operator provides a few [Custom Resources](https://github.com/aquasecurity/aqua-operator/tree/master/config/crd) for managing the Aqua CSP platform.

          ## Prerequisites
          There are only 4 prerequisites:
          1. Verify that the OpenShift version is officially supported [Verify Here](https://docs.aquasec.com/saas/workload-protection/product-information/system-requirements/)
          2. Make sure you have a license and to obtain one, please contact Aqua Security at [Contact Us](mailto:cloudsales@aquasec.com).
          3. Create a new project for aqua

              ```oc new-project aqua```

          4. Create the secret for Aqua Database password. If you are using an External Database, make sure you use those credentials.
          NOTE: This step is optional and you can specify the Database password when creating the CRs.

              ```oc create secret generic aqua-database-password --from-literal=db-password=<password> -n aqua```

          Please note that for the certified operator, the Docker registry secret is NOT needed. For the Red Hat certified operator, the Aqua application images are stored in the Red Hat Connect registry and will be automatically pulled by the Aqua operator.

          ## Choosing the right channel

          Channels are a flexible publishing mechanism that offers you different Aqua versions to deploy, at any point. These channels map to their respective Aqua versions, describing the maturity based on where they are in their lifecycle:
          * 4.6: This maps to the older version of Aqua 4.6.0
          * 5.0: This maps to the Aqua version 5.0.0
          * 5.3: This maps to the Aqua version 5.3.0
          * 6.0: This maps to the Aqua version 6.0.0
          * 6.2: This maps to the Aqua version 6.2.0
          * 6.5: This maps to the Aqua version 6.5.0
          * 2022.4: This is the latest and greatest version of Aqua (default)

          ## Deploying the Aqua Operator

          Aqua Operator follows an easy push button deployment that installs the operator in its own aqua namespace.
          Please refer to the instructions [here](https://github.com/aquasecurity/aqua-operator/blob/2022.4.0/docs/DeployOpenShiftOperator.md).

          ## Configuring the Aqua Operator

          Operators leverage CRDs as a configuration mechanism for the application. Aqua offers a number of CRDs that can be tweaked and configured as per your needs. Please refer to this [link](https://github.com/aquasecurity/aqua-operator/blob/6.2.0/docs/DeployOpenShiftOperator.md#aquacsp-crds) for Custom Resource examples for popular scenarios.

          ## Support

          For support please contact support@aquasec.com.
        displayName: Aqua Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - aqua-security
        - scanning
        - security
        - runtime-security
        links:
        - name: Aqua Security
          url: https://www.aquasec.com/
        - name: Aqua Operator Github
          url: https://github.com/aquasecurity/aqua-operator
        maintainers:
        - email: support@aquasec.com
          name: Aqua Support, Aqua Security
        maturity: alpha
        provider:
          name: Aqua Security, Inc.
        relatedImages:
        - registry.connect.redhat.com/aquasec/aquasec@sha256:4f80ed26014ffc3f08e078a8be96072fa211297000e306816f600e0a6d1d8fb1
        - registry.connect.redhat.com/aquasec/kube-bench@sha256:ee897dfaaa5db7d71c619f8df77f35407d522cd3de998d6b9d7ab7045fc18398
        - registry.connect.redhat.com/aquasec/console@sha256:94bc4ba34a0821bd1e563a3120757907aeab9bd927896dc88c7bef8f63e809fb
        - registry.connect.redhat.com/aquasec/gateway@sha256:224d105b6377b95132b817836e6ac958f50f8263c253131c7502a80d00acfb1c
        - registry.connect.redhat.com/aquasec/kube-enforcer@sha256:f4e6bfd885c0cb7d725cbf202a2c12f91822582594e3d08b930a7bd6a17b3bfd
        - registry.connect.redhat.com/aquasec/scanner@sha256:29a6c291b749e648151402e9dc1673cfc6bee8506a8a9fa0f502ff74b67fc32f
        - registry.connect.redhat.com/aquasec/aquasec-operator-bundle@sha256:ee3bb301dd248c9d367e90c5c8f8b9ce7fa1b21b59394f56a9b6b3ad6bdc2f70
        - registry.connect.redhat.com/aquasec/cloud-connector@sha256:f9da1936ac5e4b8e4537dca69f920c682fb9fac98d091680e01d2122f2b0f85f
        - registry.connect.redhat.com/aquasec/starboard@sha256:e57d0b89c3118d0b552eb59b1b4ada090597620d45d966a71da495f7841ad411
        - registry.connect.redhat.com/aquasec/database@sha256:c91ae82b0179c3ec4e156835a9f23b66767ba15514ff33fb268b35d8f04d6fde
        - registry.connect.redhat.com/aquasec/enforcer@sha256:22fa84ded89046e349ea31ce5dd4b1b269df797bf72e91d50ab47de0530f7cb1
        version: 2022.4.860
      entries:
      - name: aqua-operator.2022.4.860
        version: 2022.4.860
      - name: aqua-operator.2022.4.848
        version: 2022.4.848
      - name: aqua-operator.2022.4.836
        version: 2022.4.836
      - name: aqua-operator.2022.4.829
        version: 2022.4.829
      - name: aqua-operator.2022.4.818
        version: 2022.4.818
      - name: aqua-operator.2022.4.805
        version: 2022.4.805
      - name: aqua-operator.2022.4.760
        version: 2022.4.760
      - name: aqua-operator.2022.4.759
        version: 2022.4.759
      - name: aqua-operator.2022.4.720
        version: 2022.4.720
      - name: aqua-operator.2022.4.683
        version: 2022.4.683
      - name: aqua-operator.2022.4.662
        version: 2022.4.662
      - name: aqua-operator.2022.4.588
        version: 2022.4.588
      - name: aqua-operator.2022.4.587
        version: 2022.4.587
      - name: aqua-operator.2022.4.519
        version: 2022.4.519
      - name: aqua-operator.2022.4.518
        version: 2022.4.518
      name: "2022.4"
    defaultChannel: "2022.4"
    packageName: aqua-operator-certified
    provider:
      name: Aqua Security, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Fossul Framework
      provider-url: https://github.com/fossul/fossul
    name: fossul-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fossul-operator.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"fossul.io/v1\",\n    \"kind\":
            \"Backup\",\n    \"metadata\": {\n      \"name\": \"mariadb-sample\"\n
            \   },\n    \"spec\": {\n      \"deployment_name\": \"mariadb\",\n      \"policy\":
            \"daily\"\n    }\n  },\n  {\n    \"apiVersion\": \"fossul.io/v1\",\n    \"kind\":
            \"Restore\",\n    \"metadata\": {\n      \"name\": \"mariadb-sample\"\n
            \   },\n    \"spec\": {\n      \"deployment_name\": \"mariadb\",\n      \"policy\":
            \"daily\",\n      \"workflow_id\": \"xxxx\"\n    }\n  },        \n  {\n
            \   \"apiVersion\": \"fossul.io/v1\",\n    \"kind\": \"BackupConfig\",\n
            \   \"metadata\": {\n      \"name\": \"mariadb-sample\"\n    },\n    \"spec\":
            {\n      \"container_platform\": \"openshift\",\n      \"operator_controlled\":
            true,\n      \"auto_discovery\": false,\n      \"deployment_name\": \"mariadb\",\n
            \     \"deployment_type\": \"DeploymentConfig\",\n      \"job_retention\":
            50,\n      \"overwrite_pcv_on_restore\": true,\n      \"policies\": [\n
            \       {\n          \"policy\": \"hourly\",\n          \"retentionNumber\":
            3\n        },\n        {\n          \"policy\": \"daily\",\n          \"retentionNumber\":
            10\n        }\n      ],\n      \"pvc_deletion_timeout\": 300,\n      \"restore_to_new_pvc\":
            false,\n      \"snapshot_timeout\": 180,\n      \"storage_plugin\": \"csi.so\",\n
            \     \"app_plugin\": \"mariadb.so\"\n    }\n  },\n  {\n    \"apiVersion\":
            \"fossul.io/v1\",\n    \"kind\": \"BackupSchedule\",\n    \"metadata\":
            {\n      \"name\": \"mariadb-sample\"\n    },\n    \"spec\": {\n      \"cron_schedule\":
            \"59 23 * * *\",\n      \"deployment_name\": \"mariadb\",\n      \"policy\":
            \"daily\"\n\n    }\n  },\n  {\n    \"apiVersion\": \"fossul.io/v1\",\n
            \   \"kind\": \"Fossul\",\n    \"metadata\": {\n      \"name\": \"fossul-sample\"\n
            \   },\n    \"spec\": {\n      \"enable_routes\": false,\n      \"enable_virtualmachines\":
            false,\n      \"container_platform\": \"openshift\"\n    }\n  }\n]"
          capabilities: Full Lifecycle
          categories: Storage
          certified: "false"
          containerImage: quay.io/fossul/fossul-operator:v0.6.0
          createdAt: "2022-01-25T20:09:00Z"
          description: Fossul is a application centric container native backup and
            restore framework for databases or applications
          operators.operatorframework.io/builder: operator-sdk-v1.10.1-ocp
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/fossul/fossul
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Manages application backup configurations
            kind: BackupConfig
            name: backupconfigs.fossul.io
            version: v1
          - description: Manages application backups
            kind: Backup
            name: backups.fossul.io
            version: v1
          - description: Manages application restores
            kind: Restore
            name: restores.fossul.io
            version: v1
          - description: Manages application backup scheduling
            kind: BackupSchedule
            name: backupschedules.fossul.io
            version: v1
          - description: Manages deployment of the Fossul Framework
            kind: Fossul
            name: fossuls.fossul.io
            version: v1
        description: "## Fossul Framework\nApplication backup and restore framework
          for container native applications on Kubernetes and OpenShift. Fossul provides
          application centric backup and recovery enabling integration with the application
          creating an application consistent backup. Since there are many applications
          and providers for storage or archive Fossul enables plugins that allow proper
          integration. Fossul provides plugins for postgresql, mariadb, mysql and
          mongo as well as plugin to integrate with CSI snapshots. Plugins can be
          written in any language. The Fossul operator deploys Fossul via the Fossul
          custom resource and additionally provides BackupConfig, Backup, BackupSchedule
          and Restore custom resources. Each user can configure and manage their own
          backups with simple custom resources that can be part of CI/CD or source
          control. Users can also opt to manage backups through Fossul CLI/API instead
          of the custom resources provided by the operator.\n\n## Installation\nIt
          is recommended to install the operator into the openshift-operators namespace
          which is the default location for operators. Once the operator is installed
          create a new project called ```fossul``` and create the Fossul custom resource
          under the fossul namespace. This will deploy the Fossul Framework. You can
          choose another namespace for the Fossul Framework but then also need to
          provide the optional 'fossul_namespace' parameter with the spec for all
          the additional custom resources. This is required so the Fossul operator
          can communicate with Fossul.\n\nOnce Fossul is deployed you can manage backups
          either through custom resources provided by the operator or the Fossul CLI/API.
          If using the customer resources, first create a BackupConfig custom resource
          for every application you want to backup. Once that is done, you can optionally
          create a backup by simply creating a Backup custom resource. You can also
          create a BackupSchedule custom resource using cron syntax which will schedule
          your backup to occur on a regular interval or do so via a Kubernetes job.
          Finally if a backup has been created you can perform a restore through a
          custom resource as well, providing the workflow id from the completed backup.
          If you are creating backups through the custom resource the workflow id
          will be appended to the spec once the backup completes. If you are using
          the Fossul CLI/API to create backups you will need to get the workflow id
          through the Fossul CLI/API directly using the backupList action.\n\nFor
          users of the cli, a cli pod is deployed with credentials and if desired
          you can create or manage backups from within that pod. To use the API you
          need the credentials stored in the fossul secret. The cli has already been
          pre-configured with these credentials. The API can also be optionally exposed
          via routes and API documentation is under ```/api/v1/index.html```.\n\n##
          Quick Setup\nWhen creating Fossul custom resources generally you will only
          need to update the ```deployment_name``` and ```deployment_type``` (DeploymentConfig,
          Deployment or VirtualMachine). All custom resources must be created in the
          namespace where the database or application exists. \n\n### Deploy Fossul
          in fossul namespace\n```$ oc new-project fossul```\n<pre>\n$ vi fossul.yaml\nkind:
          Fossul\napiVersion: fossul.io/v1\nmetadata:\n  name: fossul-sample\n  namespace:
          fossul\nspec: {}\n</pre>\n```$ oc create -f fossul.yaml```\n\n### Deploy
          Mariadb Database\nMake sure you create all Fossul custom resources in the
          same namespace as the database, application or virtual machine\n\n### Create
          MariaDB Fossul BackupConfig\nCreates a backup configuration for MariaDB
          or MySQL databases\n\n```$ vi backupconfig.yaml```\n<pre>\nkind: BackupConfig\napiVersion:
          fossul.io/v1\nmetadata:\n  name: mariadb-sample\n  namespace: databases\nspec:\n
          \ container_platform: openshift\n  operator_controlled: true\n  auto_discovery:
          false\n  deployment_name: mariadb\n  deployment_type: DeploymentConfig\n
          \ job_retention: 50\n  overwrite_pcv_on_restore: true\n  policies:\n    -
          policy: hourly\n      retentionNumber: 3\n    - policy: daily\n      retentionNumber:
          10\n  pvc_deletion_timeout: 300\n  restore_to_new_pvc: false\n  snapshot_timeout:
          180\n  storage_plugin: csi.so\n  app_plugin: mariadb.so \n</pre>\n```$ oc
          create -f backupconfig.yaml```\n\n### Create PostgreSQL Fossul BackupConfig\nCreates
          a backup config for PostgreSQL databases, you need to ensure the user defined
          in secret has backup permissions\n\n```$ vi backupconfig.yaml```\n<pre>\nkind:
          BackupConfig\napiVersion: fossul.io/v1\nmetadata:\n  name: postgresql-sample\n
          \ namespace: databases\nspec:\n  container_platform: openshift\n  operator_controlled:
          true    \n  auto_discovery: false\n  deployment_name: postgresql \n  deployment_type:
          DeploymentConfig\n  job_retention: 50\n  overwrite_pcv_on_restore: true\n
          \ policies:\n    - policy: hourly\n      retentionNumber: 3\n    - policy:
          daily\n      retentionNumber: 10\n  pvc_deletion_timeout: 300\n  restore_to_new_pvc:
          false\n  snapshot_timeout: 180\n  storage_plugin: csi.so\n  app_plugin:
          postgres.so \n</pre>\n```$ oc create -f backupconfig.yaml```\n\n### Create
          Kubevirt Fossul BackupConfig\nCreates a backup configuration for virtual
          machines\n\n```$ vi backupconfig.yaml```\n<pre>\nkind: BackupConfig\napiVersion:
          fossul.io/v1\nmetadata:\n  name: rhel8-vm-sample\n  namespace: virtualmachines\nspec:\n
          \ container_platform: openshift\n  operator_controlled: true    \n  auto_discovery:
          false\n  deployment_name: rhel8-vm\n  deployment_type: VirtualMachine\n
          \ job_retention: 50\n  overwrite_pcv_on_restore: true\n  policies:\n    -
          policy: hourly\n      retentionNumber: 3\n    - policy: daily\n      retentionNumber:
          10\n  pvc_deletion_timeout: 300\n  restore_to_new_pvc: false\n  snapshot_timeout:
          180\n  storage_plugin: csi.so\n  app_plugin: kubevirt.so \n</pre>\n```$
          oc create -f backupconfig.yaml```\n\n### Create Tar Fossul BackupConfig\nCreates
          a backup config using tar to backup folders and files where csi snapshots
          are not desired\n\n```$ vi backupconfig.yaml```\n<pre>\nkind: BackupConfig\napiVersion:
          fossul.io/v1\nmetadata:\n  name: tar-sample\n  namespace: databases\nspec:\n
          \ container_platform: openshift\n  operator_controlled: true    \n  auto_discovery:
          false\n  deployment_name: anyname\n  job_retention: 50\n  policies:\n    -
          policy: hourly\n      retentionNumber: 3\n    - policy: daily\n      retentionNumber:
          10\n  backup_source_paths: /opt/app-root/src/test\n  storage_plugin: tar.so\n</pre>\n```$
          oc create -f backupconfig.yaml```\n\n### Create BackupSchedule\nA backup
          can be scheduled per policy, defined by backup configuration using cron
          syntax\n\n```$ vi backupschedule.yaml```\n<pre>\nkind: BackupSchedule\napiVersion:
          fossul.io/v1\nmetadata:\n  name: mariadb-sample\n  namespace: databases\nspec:\n
          \ cron_schedule: '59 23 * * *'\n  deployment_name: mariadb\n  policy: daily\n</pre>\n```$
          oc create -f backupschedule.yaml```\n\n### Create Backup\nA backup will
          be created according to policy and deleted either manually or as defined
          in retention policy\n\n```$ vi backup.yaml```\n<pre>\nkind: Backup\napiVersion:
          fossul.io/v1\nmetadata:\n  name: mariadb-sample\n  namespace: databases\nspec:\n
          \ deployment_name: mariadb\n  policy: daily\n</pre>\n```$ oc create -f backup.yaml```\n\n###
          Perform Restore\nA restore requires a workflow_id located in the backup
          spec, upon a successful restore the custom resource will deleted automatically\n\n```$
          vi restore.yaml```\n<pre>\nkind: Restore\napiVersion: fossul.io/v1\nmetadata:\n
          \ name: mariadb-sample\n  namespace: databases\nspec:\n  deployment_name:
          mariadb\n  policy: daily\n  workflow_id: xxxx\n</pre>\n```$ oc create -f
          restore.yaml```\n"
        displayName: Fossul Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - application
        - consistent
        links:
        - name: Fossul Framework Community
          url: https://github.com/fossul/fossul
        maintainers:
        - email: ktenzer@redhat.com
          name: Keith Tenzer
        maturity: alpha
        provider:
          name: Fossul Framework
          url: https://github.com/fossul/fossul
        relatedImages:
        - quay.io/openshift-community-operators/fossul-operator@sha256:95c043ddc818f44a303e27508e0acdcbbcb3d9b1329712c85a8e3fd4cb647e9a
        - quay.io/fossul/fossul-operator:v0.6.0
        version: 0.6.0
      entries:
      - name: fossul-operator.v0.6.0
        version: 0.6.0
      - name: fossul-operator.v0.5.0
        version: 0.5.0
      - name: fossul-operator.v0.4.0
        version: 0.4.0
      - name: fossul-operator.v0.3.0
        version: 0.3.0
      - name: fossul-operator.v0.2.0
        version: 0.2.0
      - name: fossul-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: fossul-operator
    provider:
      name: Fossul Framework
      url: https://github.com/fossul/fossul
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: NGINX Inc
      provider-url: ""
    name: nginx-ingress-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nginx-ingress-operator.v3.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.nginx.org/v1alpha1",
                "kind": "NginxIngress",
                "metadata": {
                  "name": "nginxingress-sample"
                },
                "spec": {
                  "controller": {
                    "affinity": {},
                    "annotations": {},
                    "appprotect": {
                      "enable": false
                    },
                    "appprotectdos": {
                      "debug": false,
                      "enable": false,
                      "maxDaemons": 0,
                      "maxWorkers": 0,
                      "memory": 0
                    },
                    "autoscaling": {
                      "annotations": {},
                      "behavior": {},
                      "enabled": false,
                      "maxReplicas": 3,
                      "minReplicas": 1,
                      "targetCPUUtilizationPercentage": 50,
                      "targetMemoryUtilizationPercentage": 50
                    },
                    "config": {
                      "annotations": {},
                      "entries": {}
                    },
                    "containerPort": {
                      "http": 80,
                      "https": 443
                    },
                    "customConfigMap": "",
                    "customPorts": [],
                    "defaultHTTPListenerPort": 80,
                    "defaultHTTPSListenerPort": 443,
                    "defaultTLS": {
                      "cert": "",
                      "key": "",
                      "secret": ""
                    },
                    "disableIPV6": false,
                    "dnsPolicy": "ClusterFirst",
                    "enableCertManager": false,
                    "enableCustomResources": true,
                    "enableExternalDNS": false,
                    "enableLatencyMetrics": false,
                    "enableOIDC": false,
                    "enableSSLDynamicReload": true,
                    "enableSnippets": false,
                    "enableTLSPassthrough": false,
                    "env": [],
                    "extraContainers": [],
                    "globalConfiguration": {
                      "create": false,
                      "spec": {}
                    },
                    "healthStatus": false,
                    "healthStatusURI": "/nginx-health",
                    "hostNetwork": false,
                    "hostPort": {
                      "enable": false,
                      "http": 80,
                      "https": 443
                    },
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "nginx/nginx-ingress",
                      "tag": "5.3.1-ubi"
                    },
                    "ingressClass": {
                      "create": true,
                      "name": "nginx",
                      "setAsDefaultIngress": false
                    },
                    "initContainerResources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "initContainers": [],
                    "kind": "deployment",
                    "lifecycle": {},
                    "logFormat": "glog",
                    "logLevel": "info",
                    "mgmt": {
                      "licenseTokenSecretName": "license-token"
                    },
                    "minReadySeconds": 0,
                    "name": "controller",
                    "nginxDebug": false,
                    "nginxReloadTimeout": 60000,
                    "nginxStatus": {
                      "allowCidrs": "127.0.0.1",
                      "enable": true,
                      "port": 8080
                    },
                    "nginxplus": false,
                    "pod": {
                      "annotations": {},
                      "extraLabels": {}
                    },
                    "podDisruptionBudget": {
                      "annotations": {},
                      "enabled": false
                    },
                    "readOnlyRootFilesystem": false,
                    "readyStatus": {
                      "enable": true,
                      "initialDelaySeconds": 0,
                      "port": 8081
                    },
                    "replicaCount": 1,
                    "reportIngressStatus": {
                      "annotations": {},
                      "enable": true,
                      "enableLeaderElection": true,
                      "ingressLink": "",
                      "leaderElectionLockName": "nginx-ingress-leader"
                    },
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "selectorLabels": {},
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "create": true,
                      "customPorts": [],
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraLabels": {},
                      "httpPort": {
                        "enable": true,
                        "port": 80,
                        "targetPort": 80
                      },
                      "httpsPort": {
                        "enable": true,
                        "port": 443,
                        "targetPort": 443
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "type": "LoadBalancer"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "imagePullSecretName": "",
                      "imagePullSecretsNames": []
                    },
                    "shareProcessNamespace": false,
                    "strategy": {},
                    "terminationGracePeriodSeconds": 30,
                    "tlsPassthroughPort": 443,
                    "tolerations": [],
                    "volumeMounts": [],
                    "volumes": [],
                    "watchNamespace": "",
                    "watchNamespaceLabel": "",
                    "watchSecretNamespace": "",
                    "wildcardTLS": {
                      "cert": "",
                      "key": "",
                      "secret": ""
                    }
                  },
                  "nginxServiceMesh": {
                    "enable": false,
                    "enableEgress": false
                  },
                  "prometheus": {
                    "create": true,
                    "port": 9113,
                    "scheme": "http",
                    "secret": "",
                    "service": {
                      "create": false,
                      "labels": {
                        "service": "nginx-ingress-prometheus-service"
                      }
                    },
                    "serviceMonitor": {
                      "create": false,
                      "endpoints": [
                        {
                          "port": "prometheus"
                        }
                      ],
                      "labels": {},
                      "selectorMatchLabels": {
                        "service": "nginx-ingress-prometheus-service"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "serviceInsight": {
                    "create": false,
                    "port": 9114,
                    "scheme": "http",
                    "secret": ""
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Networking
          certified: "true"
          containerImage: quay.io/nginx/nginx-ingress-operator@sha256:d304c31f6bad9b06eda91a4a685f41348680da3c43fb26dfbae0e508b4e0be64
          createdAt: "2025-12-17T16:13:02Z"
          description: The NGINX Ingress Operator is a Kubernetes/OpenShift component
            which deploys and manages one or more NGINX/NGINX Plus Ingress Controllers
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: nginx-ingress
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/nginx/nginx-ingress-helm-operator
          support: NGINX Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The `NginxIngress` Custom Resource is the definition of a
              deployment of the Ingress Controller.
            displayName: Nginx Ingress Controller
            kind: NginxIngress
            name: nginxingresses.charts.nginx.org
            version: v1alpha1
        description: The NGINX Ingress Operator is a Kubernetes/OpenShift component
          which deploys and manages one or more NGINX/NGINX Plus Ingress Controllers
        displayName: Nginx Ingress Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nginx
        - ingress-controller
        - ingress
        - controller
        - kubernetes
        - openshift
        links:
        - name: Nginx Ingress Operator
          url: https://github.com/nginx/nginx-ingress-helm-operator
        maintainers:
        - email: kubernetes@nginx.com
          name: NGINX Inc
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: NGINX Inc
        relatedImages:
        - registry.connect.redhat.com/nginx/nginx-ingress-operator-bundle@sha256:d7572b2333b06a085849f284b9abc800b2bc2d3ce040747813e65193f52b9578
        - quay.io/brancz/kube-rbac-proxy@sha256:f5fbfec6a2b28726763880345f231d293fabb016f7abf6ad725c884bb0508edd
        - quay.io/nginx/nginx-ingress-operator@sha256:d304c31f6bad9b06eda91a4a685f41348680da3c43fb26dfbae0e508b4e0be64
        version: 3.4.1
      entries:
      - name: nginx-ingress-operator.v3.4.1
        version: 3.4.1
      - name: nginx-ingress-operator.v3.4.0
        version: 3.4.0
      - name: nginx-ingress-operator.v3.3.1
        version: 3.3.1
      name: alpha
    defaultChannel: alpha
    packageName: nginx-ingress-operator
    provider:
      name: NGINX Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stackwatch
      provider-url: www.kubecost.com
    name: kubecost
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubecost.v2.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.kubecost.com/v1alpha1",
                "kind": "CostAnalyzer",
                "metadata": {
                  "name": "costanalyzer-sample"
                },
                "spec": {
                  "global": {
                    "prometheus": {
                      "enabled": true,
                      "fqdn": "http://cost-analyzer-prometheus-server.default.svc"
                    },
                    "grafana": {
                      "enabled": false,
                      "domainName": "cost-analyzer-grafana.default.svc",
                      "scheme": "http",
                      "proxy": false
                    },
                    "gcpstore": {
                      "enabled": false
                    },
                    "gmp": {
                      "enabled": false,
                      "prometheusServerEndpoint": "http://localhost:8085/",
                      "gmpProxy": {
                        "enabled": false,
                        "image": "gke.gcr.io/prometheus-engine/frontend:v0.4.1-gke.0",
                        "imagePullPolicy": "Always",
                        "name": "gmp-proxy",
                        "port": 8085,
                        "projectId": "YOUR_PROJECT_ID"
                      }
                    },
                    "amp": {
                      "enabled": false,
                      "prometheusServerEndpoint": "http://localhost:8005/workspaces/<workspaceId>/",
                      "remoteWriteService": "https://aps-workspaces.us-west-2.amazonaws.com/workspaces/<workspaceId>/api/v1/remote_write",
                      "sigv4": {
                        "region": "us-west-2"
                      }
                    },
                    "mimirProxy": {
                      "enabled": false,
                      "name": "mimir-proxy",
                      "image": "nginxinc/nginx-unprivileged",
                      "port": 8085,
                      "mimirEndpoint": "$mimir_endpoint",
                      "orgIdentifier": "$your_tenant_ID"
                    },
                    "notifications": {
                      "alertmanager": {
                        "enabled": false,
                        "fqdn": "http://cost-analyzer-prometheus-server.default.svc"
                      }
                    },
                    "savedReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Example Saved Report 0",
                          "window": "today",
                          "aggregateBy": "namespace",
                          "chartDisplay": "category",
                          "idle": "separate",
                          "rate": "cumulative",
                          "accumulate": false,
                          "filters": [
                            {
                              "key": "cluster",
                              "operator": ":",
                              "value": "dev"
                            }
                          ]
                        },
                        {
                          "title": "Example Saved Report 1",
                          "window": "month",
                          "aggregateBy": "controllerKind",
                          "chartDisplay": "category",
                          "idle": "share",
                          "rate": "monthly",
                          "accumulate": false,
                          "filters": [
                            {
                              "key": "namespace",
                              "operator": "!:",
                              "value": "kubecost"
                            }
                          ]
                        },
                        {
                          "title": "Example Saved Report 2",
                          "window": "2020-11-11T00:00:00Z,2020-12-09T23:59:59Z",
                          "aggregateBy": "service",
                          "chartDisplay": "category",
                          "idle": "hide",
                          "rate": "daily",
                          "accumulate": true,
                          "filters": []
                        }
                      ]
                    },
                    "assetReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Example Asset Report 0",
                          "window": "today",
                          "aggregateBy": "type",
                          "accumulate": false,
                          "filters": [
                            {
                              "property": "cluster",
                              "value": "cluster-one"
                            }
                          ]
                        }
                      ]
                    },
                    "advancedReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Example Advanced Report 0",
                          "window": "7d",
                          "aggregateBy": "namespace",
                          "filters": [
                            {
                              "key": "cluster",
                              "operator": ":",
                              "value": "dev"
                            }
                          ],
                          "cloudBreakdown": "service",
                          "cloudJoin": "label:kubernetes_namespace"
                        }
                      ]
                    },
                    "cloudCostReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Cloud Cost Report 0",
                          "window": "today",
                          "aggregateBy": "service",
                          "accumulate": false
                        }
                      ]
                    },
                    "podAnnotations": {},
                    "additionalLabels": {},
                    "securityContext": {
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      },
                      "fsGroup": 1001,
                      "runAsGroup": 1001,
                      "runAsUser": 1001,
                      "fsGroupChangePolicy": "OnRootMismatch"
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "platforms": {
                      "openshift": {
                        "enabled": true,
                        "route": {
                          "enabled": false,
                          "annotations": {}
                        },
                        "scc": {
                          "nodeExporter": false,
                          "networkCosts": false
                        },
                        "securityContext": {
                          "runAsNonRoot": true,
                          "seccompProfile": {
                            "type": "RuntimeDefault"
                          }
                        }
                      },
                      "cicd": {
                        "enabled": true,
                        "skipSanityChecks": true
                      }
                    }
                  },
                  "upgrade": {
                    "toV2": false
                  },
                  "kubecostToken": null,
                  "pricingCsv": {
                    "enabled": false,
                    "location": {
                      "provider": "AWS",
                      "region": "us-east-1",
                      "URI": "s3://kc-csv-test/pricing_schema.csv",
                      "csvAccessCredentials": "pricing-schema-access-secret"
                    }
                  },
                  "saml": {
                    "enabled": false,
                    "rbac": {
                      "enabled": false
                    }
                  },
                  "oidc": {
                    "enabled": false,
                    "clientID": "",
                    "clientSecret": "",
                    "existingCustomSecret": {
                      "enabled": false,
                      "name": ""
                    },
                    "skipOnlineTokenValidation": false,
                    "rbac": {
                      "enabled": false
                    }
                  },
                  "systemProxy": {
                    "enabled": false,
                    "httpProxyUrl": "",
                    "httpsProxyUrl": "",
                    "noProxy": ""
                  },
                  "kubecostFrontend": {
                    "enabled": true,
                    "deployMethod": "singlepod",
                    "haReplicas": 2,
                    "image": "gcr.io/kubecost1/frontend",
                    "imagePullPolicy": "Always",
                    "resources": {
                      "requests": {
                        "cpu": "10m",
                        "memory": "55Mi"
                      }
                    },
                    "deploymentStrategy": {},
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 1,
                      "periodSeconds": 5,
                      "failureThreshold": 6
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 1,
                      "periodSeconds": 5,
                      "failureThreshold": 6
                    },
                    "ipv6": {
                      "enabled": true
                    },
                    "useDefaultFqdn": false
                  },
                  "kubecostMetrics": {
                    "exporter": {
                      "enabled": false,
                      "port": 9005,
                      "prometheusScrape": true,
                      "resources": {},
                      "tolerations": [],
                      "affinity": {},
                      "service": {
                        "annotations": {}
                      },
                      "serviceMonitor": {
                        "enabled": false,
                        "additionalLabels": {},
                        "metricRelabelings": [],
                        "relabelings": []
                      },
                      "priorityClassName": "",
                      "additionalLabels": {},
                      "nodeSelector": {},
                      "extraArgs": []
                    }
                  },
                  "sigV4Proxy": {
                    "image": "public.ecr.aws/aws-observability/aws-sigv4-proxy:latest",
                    "imagePullPolicy": "Always",
                    "name": "aps",
                    "port": 8005,
                    "region": "us-west-2",
                    "host": "aps-workspaces.us-west-2.amazonaws.com",
                    "extraEnv": null,
                    "resources": {}
                  },
                  "kubecostModel": {
                    "image": "gcr.io/kubecost1/cost-model",
                    "imagePullPolicy": "Always",
                    "outOfClusterPromMetricsEnabled": false,
                    "warmCache": false,
                    "etl": true,
                    "etlFileStoreEnabled": true,
                    "etlDailyStoreDurationDays": 91,
                    "etlHourlyStoreDurationHours": 49,
                    "etlWeeklyStoreDurationWeeks": 53,
                    "etlReadOnlyMode": false,
                    "plugins": {
                      "enabled": false,
                      "install": {
                        "enabled": false,
                        "fullImageName": "curlimages/curl:latest",
                        "securityContext": {
                          "allowPrivilegeEscalation": false,
                          "seccompProfile": {
                            "type": "RuntimeDefault"
                          },
                          "capabilities": {
                            "drop": [
                              "ALL"
                            ]
                          },
                          "readOnlyRootFilesystem": true,
                          "runAsNonRoot": true,
                          "runAsUser": 1001
                        }
                      },
                      "folder": "/opt/opencost/plugin",
                      "enabledPlugins": [],
                      "configSecret": "kubecost-plugin-secret"
                    },
                    "cloudCost": {
                      "labelList": {
                        "IsIncludeList": false,
                        "labels": ""
                      },
                      "topNItems": 1000
                    },
                    "allocation": null,
                    "containerStatsEnabled": true,
                    "maxQueryConcurrency": 5,
                    "resources": {
                      "requests": {
                        "cpu": "200m",
                        "memory": "55Mi"
                      }
                    },
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "extraArgs": [],
                    "ingress": {
                      "enabled": false,
                      "labels": null,
                      "annotations": null,
                      "paths": [
                        "/"
                      ],
                      "pathType": "ImplementationSpecific",
                      "hosts": [
                        "cost-analyzer-model.local"
                      ],
                      "tls": []
                    },
                    "utcOffset": "+00:00",
                    "extraPorts": []
                  },
                  "etlUtils": {
                    "enabled": false,
                    "fullImageName": null,
                    "resources": {},
                    "env": {},
                    "nodeSelector": {},
                    "tolerations": {},
                    "affinity": {}
                  },
                  "ingress": {
                    "enabled": false,
                    "labels": null,
                    "annotations": null,
                    "paths": [
                      "/"
                    ],
                    "pathType": "ImplementationSpecific",
                    "hosts": [
                      "cost-analyzer.local"
                    ],
                    "tls": []
                  },
                  "nodeSelector": {},
                  "tolerations": [],
                  "affinity": {},
                  "topologySpreadConstraints": [],
                  "priority": {
                    "enabled": false,
                    "name": ""
                  },
                  "networkPolicy": {
                    "enabled": false,
                    "denyEgress": true,
                    "sameNamespace": true,
                    "costAnalyzer": {
                      "enabled": false,
                      "annotations": {},
                      "additionalLabels": {}
                    }
                  },
                  "extraVolumes": [],
                  "extraVolumeMounts": [],
                  "persistentVolume": {
                    "size": "32Gi",
                    "dbSize": "32.0Gi",
                    "enabled": true,
                    "labels": {},
                    "annotations": {},
                    "dbPVEnabled": false
                  },
                  "service": {
                    "type": "ClusterIP",
                    "port": 9090,
                    "targetPort": 9090,
                    "nodePort": {},
                    "labels": {},
                    "annotations": {},
                    "sessionAffinity": {
                      "enabled": false,
                      "timeoutSeconds": 10800
                    }
                  },
                  "prometheus": {
                    "rbac": {
                      "create": true
                    },
                    "serviceAccounts": {
                      "alertmanager": {
                        "create": true,
                        "name": null
                      },
                      "nodeExporter": {
                        "create": true,
                        "name": null
                      },
                      "pushgateway": {
                        "create": true,
                        "name": null
                      },
                      "server": {
                        "create": true,
                        "name": null,
                        "annotations": {}
                      }
                    },
                    "imagePullSecrets": null,
                    "extraScrapeConfigs": "- job_name: kubecost\n  honor_labels: true\n  scrape_interval: 1m\n  scrape_timeout: 60s\n  metrics_path: /metrics\n  scheme: http\n  dns_sd_configs:\n  - names:\n    - {{ template \"cost-analyzer.serviceName\" . }}\n    type: 'A'\n    port: 9003\n- job_name: kubecost-networking\n  kubernetes_sd_configs:\n    - role: pod\n  relabel_configs:\n  # Scrape only the the targets matching the following metadata\n    - source_labels: [__meta_kubernetes_pod_label_app_kubernetes_io_instance]\n      action: keep\n      regex:  kubecost\n    - source_labels: [__meta_kubernetes_pod_label_app_kubernetes_io_name]\n      action: keep\n      regex:  network-costs\n",
                    "server": {
                      "enabled": true,
                      "name": "server",
                      "sidecarContainers": null,
                      "strategy": {
                        "type": "Recreate",
                        "rollingUpdate": null
                      },
                      "image": {
                        "repository": "quay.io/prometheus/prometheus",
                        "tag": "v2.50.1",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "prefixURL": "",
                      "baseURL": "",
                      "env": [],
                      "extraFlags": [
                        "web.enable-lifecycle"
                      ],
                      "configPath": "/etc/config/prometheus.yml",
                      "global": {
                        "scrape_interval": "1m",
                        "scrape_timeout": "60s",
                        "evaluation_interval": "1m",
                        "external_labels": {
                          "cluster_id": "cluster-one"
                        }
                      },
                      "remoteWrite": {},
                      "remoteRead": {},
                      "extraArgs": {
                        "query.max-concurrency": 1,
                        "query.max-samples": 100000000
                      },
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "extraHostPathMounts": [],
                      "extraConfigmapMounts": [],
                      "extraSecretMounts": [],
                      "configMapOverrideName": "",
                      "ingress": {
                        "enabled": false,
                        "annotations": {},
                        "extraLabels": {},
                        "hosts": [],
                        "pathType": "Prefix",
                        "extraPaths": [],
                        "tls": []
                      },
                      "tolerations": [],
                      "nodeSelector": {},
                      "affinity": {},
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "persistentVolume": {
                        "enabled": true,
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "existingClaim": "",
                        "mountPath": "/data",
                        "size": "32Gi",
                        "subPath": ""
                      },
                      "emptyDir": {
                        "sizeLimit": ""
                      },
                      "podAnnotations": {},
                      "deploymentAnnotations": {},
                      "podLabels": {},
                      "alertmanagers": [],
                      "replicaCount": 1,
                      "statefulSet": {
                        "enabled": false,
                        "annotations": {},
                        "labels": {},
                        "podManagementPolicy": "OrderedReady",
                        "headless": {
                          "annotations": {},
                          "labels": {},
                          "servicePort": 80
                        }
                      },
                      "readinessProbeInitialDelay": 5,
                      "readinessProbeTimeout": 3,
                      "readinessProbeFailureThreshold": 3,
                      "readinessProbeSuccessThreshold": 1,
                      "livenessProbeInitialDelay": 5,
                      "livenessProbeTimeout": 3,
                      "livenessProbeFailureThreshold": 3,
                      "livenessProbeSuccessThreshold": 1,
                      "resources": {},
                      "verticalAutoscaler": {
                        "enabled": false
                      },
                      "securityContext": {},
                      "containerSecurityContext": {},
                      "service": {
                        "annotations": {},
                        "labels": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 80,
                        "sessionAffinity": "None",
                        "type": "ClusterIP",
                        "gRPC": {
                          "enabled": false,
                          "servicePort": 10901
                        },
                        "statefulsetReplica": {
                          "enabled": false,
                          "replica": 0
                        }
                      },
                      "terminationGracePeriodSeconds": 300,
                      "retention": "97h"
                    },
                    "alertmanager": {
                      "enabled": false,
                      "strategy": {
                        "type": "Recreate",
                        "rollingUpdate": null
                      },
                      "name": "alertmanager",
                      "image": {
                        "repository": "quay.io/prometheus/alertmanager",
                        "tag": "v0.27.0",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "extraArgs": {},
                      "prefixURL": "",
                      "baseURL": "http://localhost:9093",
                      "extraEnv": {},
                      "extraSecretMounts": [],
                      "configMapOverrideName": "",
                      "configFromSecret": "",
                      "configFileName": "alertmanager.yml",
                      "ingress": {
                        "enabled": false,
                        "annotations": {},
                        "extraLabels": {},
                        "hosts": [],
                        "extraPaths": [],
                        "tls": []
                      },
                      "tolerations": [],
                      "nodeSelector": {},
                      "affinity": {},
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "persistentVolume": {
                        "enabled": true,
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "existingClaim": "",
                        "mountPath": "/data",
                        "size": "2Gi",
                        "subPath": ""
                      },
                      "podAnnotations": {},
                      "podLabels": {},
                      "replicaCount": 1,
                      "statefulSet": {
                        "enabled": false,
                        "podManagementPolicy": "OrderedReady",
                        "headless": {
                          "annotations": {},
                          "labels": {},
                          "servicePort": 80
                        }
                      },
                      "resources": {},
                      "securityContext": {
                        "runAsUser": 1001,
                        "runAsNonRoot": true,
                        "runAsGroup": 1001,
                        "fsGroup": 1001
                      },
                      "service": {
                        "annotations": {},
                        "labels": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 80,
                        "sessionAffinity": "None",
                        "type": "ClusterIP"
                      }
                    },
                    "alertmanagerFiles": {
                      "alertmanager.yml": {
                        "global": {},
                        "receivers": [
                          {
                            "name": "default-receiver"
                          }
                        ],
                        "route": {
                          "group_wait": "10s",
                          "group_interval": "5m",
                          "receiver": "default-receiver",
                          "repeat_interval": "3h"
                        }
                      }
                    },
                    "configmapReload": {
                      "prometheus": {
                        "enabled": false,
                        "name": "configmap-reload",
                        "image": {
                          "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                          "tag": "v0.72.0",
                          "pullPolicy": "IfNotPresent"
                        },
                        "extraArgs": {},
                        "extraVolumeDirs": [],
                        "extraConfigmapMounts": [],
                        "resources": {},
                        "containerSecurityContext": {}
                      },
                      "alertmanager": {
                        "enabled": false,
                        "name": "configmap-reload",
                        "image": {
                          "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                          "tag": "v0.72.0",
                          "pullPolicy": "IfNotPresent"
                        },
                        "extraArgs": {},
                        "extraVolumeDirs": [],
                        "extraConfigmapMounts": [],
                        "resources": {}
                      }
                    },
                    "nodeExporter": {
                      "enabled": false,
                      "hostNetwork": true,
                      "hostPID": true,
                      "dnsPolicy": "ClusterFirstWithHostNet",
                      "name": "node-exporter",
                      "image": {
                        "repository": "prom/node-exporter",
                        "tag": "v1.7.0",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      },
                      "extraArgs": {},
                      "extraHostPathMounts": [],
                      "extraConfigmapMounts": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "deploymentAnnotations": {},
                      "pod": {
                        "labels": {}
                      },
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "resources": {},
                      "securityContext": {},
                      "service": {
                        "annotations": {
                          "prometheus.io/scrape": "true"
                        },
                        "labels": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "hostPort": 9100,
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 9100,
                        "type": "ClusterIP"
                      }
                    },
                    "pushgateway": {
                      "enabled": false,
                      "name": "pushgateway",
                      "image": {
                        "repository": "prom/pushgateway",
                        "tag": "v1.6.2",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "extraArgs": {},
                      "ingress": {
                        "enabled": false,
                        "annotations": {},
                        "hosts": [],
                        "extraPaths": [],
                        "tls": []
                      },
                      "tolerations": [],
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "replicaCount": 1,
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "resources": {},
                      "securityContext": {
                        "runAsUser": 1001,
                        "runAsNonRoot": true
                      },
                      "service": {
                        "annotations": {
                          "prometheus.io/probe": "pushgateway"
                        },
                        "labels": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 9091,
                        "type": "ClusterIP"
                      },
                      "strategy": {
                        "type": "Recreate",
                        "rollingUpdate": null
                      },
                      "persistentVolume": {
                        "enabled": true,
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "existingClaim": "",
                        "mountPath": "/data",
                        "size": "2Gi",
                        "subPath": ""
                      }
                    },
                    "serverFiles": {
                      "alerting_rules.yml": {},
                      "alerts": {},
                      "recording_rules.yml": {},
                      "prometheus.yml": {
                        "rule_files": [
                          "/etc/config/recording_rules.yml",
                          "/etc/config/alerting_rules.yml",
                          "/etc/config/rules",
                          "/etc/config/alerts"
                        ],
                        "scrape_configs": [
                          {
                            "job_name": "prometheus",
                            "static_configs": [
                              {
                                "targets": [
                                  "localhost:9090"
                                ]
                              }
                            ]
                          },
                          {
                            "job_name": "kubernetes-nodes-cadvisor",
                            "scheme": "https",
                            "tls_config": {
                              "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                              "insecure_skip_verify": true
                            },
                            "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                            "kubernetes_sd_configs": [
                              {
                                "role": "node"
                              }
                            ],
                            "relabel_configs": [
                              {
                                "action": "labelmap",
                                "regex": "__meta_kubernetes_node_label_(.+)"
                              },
                              {
                                "target_label": "__address__",
                                "replacement": "kubernetes.default.svc:443"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_node_name"
                                ],
                                "regex": "(.+)",
                                "target_label": "__metrics_path__",
                                "replacement": "/api/v1/nodes/$1/proxy/metrics/cadvisor"
                              }
                            ],
                            "metric_relabel_configs": [
                              {
                                "source_labels": [
                                  "__name__"
                                ],
                                "regex": "(container_cpu_usage_seconds_total|container_memory_working_set_bytes|container_network_receive_errors_total|container_network_transmit_errors_total|container_network_receive_packets_dropped_total|container_network_transmit_packets_dropped_total|container_memory_usage_bytes|container_cpu_cfs_throttled_periods_total|container_cpu_cfs_periods_total|container_fs_usage_bytes|container_fs_limit_bytes|container_cpu_cfs_periods_total|container_fs_inodes_free|container_fs_inodes_total|container_fs_usage_bytes|container_fs_limit_bytes|container_cpu_cfs_throttled_periods_total|container_cpu_cfs_periods_total|container_network_receive_bytes_total|container_network_transmit_bytes_total|container_fs_inodes_free|container_fs_inodes_total|container_fs_usage_bytes|container_fs_limit_bytes|container_spec_cpu_shares|container_spec_memory_limit_bytes|container_network_receive_bytes_total|container_network_transmit_bytes_total|container_fs_reads_bytes_total|container_network_receive_bytes_total|container_fs_writes_bytes_total|container_fs_reads_bytes_total|cadvisor_version_info|kubecost_pv_info)",
                                "action": "keep"
                              },
                              {
                                "source_labels": [
                                  "container"
                                ],
                                "target_label": "container_name",
                                "regex": "(.+)",
                                "action": "replace"
                              },
                              {
                                "source_labels": [
                                  "pod"
                                ],
                                "target_label": "pod_name",
                                "regex": "(.+)",
                                "action": "replace"
                              }
                            ]
                          },
                          {
                            "job_name": "kubernetes-nodes",
                            "scheme": "https",
                            "tls_config": {
                              "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                              "insecure_skip_verify": true
                            },
                            "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                            "kubernetes_sd_configs": [
                              {
                                "role": "node"
                              }
                            ],
                            "relabel_configs": [
                              {
                                "action": "labelmap",
                                "regex": "__meta_kubernetes_node_label_(.+)"
                              },
                              {
                                "target_label": "__address__",
                                "replacement": "kubernetes.default.svc:443"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_node_name"
                                ],
                                "regex": "(.+)",
                                "target_label": "__metrics_path__",
                                "replacement": "/api/v1/nodes/$1/proxy/metrics"
                              }
                            ],
                            "metric_relabel_configs": [
                              {
                                "source_labels": [
                                  "__name__"
                                ],
                                "regex": "(kubelet_volume_stats_used_bytes)",
                                "action": "keep"
                              }
                            ]
                          },
                          {
                            "job_name": "kubernetes-service-endpoints",
                            "kubernetes_sd_configs": [
                              {
                                "role": "endpoints"
                              }
                            ],
                            "relabel_configs": [
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_annotation_prometheus_io_scrape"
                                ],
                                "action": "keep",
                                "regex": true
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_endpoints_name"
                                ],
                                "action": "keep",
                                "regex": "(.*node-exporter|kubecost-network-costs)"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_annotation_prometheus_io_scheme"
                                ],
                                "action": "replace",
                                "target_label": "__scheme__",
                                "regex": "(https?)"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_annotation_prometheus_io_path"
                                ],
                                "action": "replace",
                                "target_label": "__metrics_path__",
                                "regex": "(.+)"
                              },
                              {
                                "source_labels": [
                                  "__address__",
                                  "__meta_kubernetes_service_annotation_prometheus_io_port"
                                ],
                                "action": "replace",
                                "target_label": "__address__",
                                "regex": "([^:]+)(?::\\d+)?;(\\d+)",
                                "replacement": "$1:$2"
                              },
                              {
                                "action": "labelmap",
                                "regex": "__meta_kubernetes_service_label_(.+)"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_namespace"
                                ],
                                "action": "replace",
                                "target_label": "kubernetes_namespace"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_name"
                                ],
                                "action": "replace",
                                "target_label": "kubernetes_name"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_pod_node_name"
                                ],
                                "action": "replace",
                                "target_label": "kubernetes_node"
                              }
                            ],
                            "metric_relabel_configs": [
                              {
                                "source_labels": [
                                  "__name__"
                                ],
                                "regex": "(container_cpu_allocation|container_cpu_usage_seconds_total|container_fs_limit_bytes|container_fs_writes_bytes_total|container_gpu_allocation|container_memory_allocation_bytes|container_memory_usage_bytes|container_memory_working_set_bytes|container_network_receive_bytes_total|container_network_transmit_bytes_total|DCGM_FI_DEV_GPU_UTIL|deployment_match_labels|kube_daemonset_status_desired_number_scheduled|kube_daemonset_status_number_ready|kube_deployment_spec_replicas|kube_deployment_status_replicas|kube_deployment_status_replicas_available|kube_job_status_failed|kube_namespace_annotations|kube_namespace_labels|kube_node_info|kube_node_labels|kube_node_status_allocatable|kube_node_status_allocatable_cpu_cores|kube_node_status_allocatable_memory_bytes|kube_node_status_capacity|kube_node_status_capacity_cpu_cores|kube_node_status_capacity_memory_bytes|kube_node_status_condition|kube_persistentvolume_capacity_bytes|kube_persistentvolume_status_phase|kube_persistentvolumeclaim_info|kube_persistentvolumeclaim_resource_requests_storage_bytes|kube_pod_container_info|kube_pod_container_resource_limits|kube_pod_container_resource_limits_cpu_cores|kube_pod_container_resource_limits_memory_bytes|kube_pod_container_resource_requests|kube_pod_container_resource_requests_cpu_cores|kube_pod_container_resource_requests_memory_bytes|kube_pod_container_status_restarts_total|kube_pod_container_status_running|kube_pod_container_status_terminated_reason|kube_pod_labels|kube_pod_owner|kube_pod_status_phase|kube_replicaset_owner|kube_statefulset_replicas|kube_statefulset_status_replicas|kubecost_cluster_info|kubecost_cluster_management_cost|kubecost_cluster_memory_working_set_bytes|kubecost_load_balancer_cost|kubecost_network_internet_egress_cost|kubecost_network_region_egress_cost|kubecost_network_zone_egress_cost|kubecost_node_is_spot|kubecost_pod_network_egress_bytes_total|node_cpu_hourly_cost|node_cpu_seconds_total|node_disk_reads_completed|node_disk_reads_completed_total|node_disk_writes_completed|node_disk_writes_completed_total|node_filesystem_device_error|node_gpu_count|node_gpu_hourly_cost|node_memory_Buffers_bytes|node_memory_Cached_bytes|node_memory_MemAvailable_bytes|node_memory_MemFree_bytes|node_memory_MemTotal_bytes|node_network_transmit_bytes_total|node_ram_hourly_cost|node_total_hourly_cost|pod_pvc_allocation|pv_hourly_cost|service_selector_labels|statefulSet_match_labels|kubecost_pv_info|up)",
                                "action": "keep"
                              }
                            ]
                          }
                        ]
                      },
                      "rules": {
                        "groups": [
                          {
                            "name": "CPU",
                            "rules": [
                              {
                                "expr": "sum(rate(container_cpu_usage_seconds_total{container!=\"\"}[5m]))",
                                "record": "cluster:cpu_usage:rate5m"
                              },
                              {
                                "expr": "rate(container_cpu_usage_seconds_total{container!=\"\"}[5m])",
                                "record": "cluster:cpu_usage_nosum:rate5m"
                              },
                              {
                                "expr": "avg(irate(container_cpu_usage_seconds_total{container!=\"POD\", container!=\"\"}[5m])) by (container,pod,namespace)",
                                "record": "kubecost_container_cpu_usage_irate"
                              },
                              {
                                "expr": "sum(container_memory_working_set_bytes{container!=\"POD\",container!=\"\"}) by (container,pod,namespace)",
                                "record": "kubecost_container_memory_working_set_bytes"
                              },
                              {
                                "expr": "sum(container_memory_working_set_bytes{container!=\"POD\",container!=\"\"})",
                                "record": "kubecost_cluster_memory_working_set_bytes"
                              }
                            ]
                          },
                          {
                            "name": "Savings",
                            "rules": [
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind!=\"DaemonSet\"}) by (pod) * sum(container_cpu_allocation) by (pod))",
                                "record": "kubecost_savings_cpu_allocation",
                                "labels": {
                                  "daemonset": "false"
                                }
                              },
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind=\"DaemonSet\"}) by (pod) * sum(container_cpu_allocation) by (pod)) / sum(kube_node_info)",
                                "record": "kubecost_savings_cpu_allocation",
                                "labels": {
                                  "daemonset": "true"
                                }
                              },
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind!=\"DaemonSet\"}) by (pod) * sum(container_memory_allocation_bytes) by (pod))",
                                "record": "kubecost_savings_memory_allocation_bytes",
                                "labels": {
                                  "daemonset": "false"
                                }
                              },
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind=\"DaemonSet\"}) by (pod) * sum(container_memory_allocation_bytes) by (pod)) / sum(kube_node_info)",
                                "record": "kubecost_savings_memory_allocation_bytes",
                                "labels": {
                                  "daemonset": "true"
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    "alertRelabelConfigs": null,
                    "networkPolicy": {
                      "enabled": false
                    }
                  },
                  "networkCosts": {
                    "enabled": false,
                    "image": {
                      "repository": "gcr.io/kubecost1/kubecost-network-costs",
                      "tag": "v0.17.3"
                    },
                    "imagePullPolicy": "Always",
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "prometheusScrape": false,
                    "trafficLogging": true,
                    "logLevel": "info",
                    "port": 3001,
                    "resources": {
                      "limits": {
                        "cpu": "500m"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "20Mi"
                      }
                    },
                    "extraArgs": [],
                    "config": {
                      "destinations": {
                        "in-zone": [
                          "127.0.0.0/8",
                          "169.254.0.0/16",
                          "10.0.0.0/8",
                          "172.16.0.0/12",
                          "192.168.0.0/16"
                        ],
                        "in-region": [],
                        "cross-region": [],
                        "internet": [],
                        "direct-classification": []
                      },
                      "services": {
                        "google-cloud-services": false,
                        "amazon-web-services": false,
                        "azure-cloud-services": false
                      }
                    },
                    "tolerations": [],
                    "affinity": {},
                    "service": {
                      "annotations": {},
                      "labels": {}
                    },
                    "priorityClassName": "",
                    "podMonitor": {
                      "enabled": false,
                      "additionalLabels": {}
                    },
                    "additionalLabels": {},
                    "nodeSelector": {},
                    "annotations": {},
                    "healthCheckProbes": {},
                    "additionalSecurityContext": {}
                  },
                  "kubecostDeployment": {
                    "replicas": 1,
                    "labels": {},
                    "annotations": {}
                  },
                  "forecasting": {
                    "enabled": true,
                    "fullImageName": "gcr.io/kubecost1/kubecost-modeling:v0.1.6",
                    "resources": {
                      "requests": {
                        "cpu": "200m",
                        "memory": "300Mi"
                      },
                      "limits": {
                        "cpu": "1500m",
                        "memory": "1Gi"
                      }
                    },
                    "env": {
                      "GUNICORN_CMD_ARGS": "--log-level info -t 1200"
                    },
                    "priority": {
                      "enabled": false,
                      "name": ""
                    },
                    "nodeSelector": {},
                    "tolerations": {},
                    "affinity": {},
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    }
                  },
                  "kubecostAggregator": {
                    "deployMethod": "singlepod",
                    "enabled": false,
                    "replicas": 1,
                    "stagingEmptyDirSizeLimit": "2Gi",
                    "numDBCopyPartitions": 25,
                    "env": {
                      "LOG_LEVEL": "info",
                      "DB_READ_THREADS": "1",
                      "DB_WRITE_THREADS": "1",
                      "DB_CONCURRENT_INGESTION_COUNT": "3"
                    },
                    "persistentConfigsStorage": {
                      "storageClass": "",
                      "storageRequest": "1Gi"
                    },
                    "aggregatorDbStorage": {
                      "storageClass": "",
                      "storageRequest": "128Gi"
                    },
                    "resources": {},
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "cloudCost": {
                      "enabled": false,
                      "resources": {},
                      "readinessProbe": {
                        "enabled": true,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 10,
                        "failureThreshold": 200
                      }
                    },
                    "jaeger": {
                      "enabled": false,
                      "image": "jaegertracing/all-in-one",
                      "imageVersion": "latest"
                    }
                  },
                  "diagnostics": {
                    "enabled": true,
                    "primary": {
                      "enabled": false,
                      "retention": "7d",
                      "readonly": false
                    },
                    "pollingInterval": "300s",
                    "keepDiagnosticHistory": false,
                    "collectHelmValues": false,
                    "deployment": {
                      "enabled": false,
                      "resources": {
                        "requests": {
                          "cpu": "10m",
                          "memory": "20Mi"
                        }
                      },
                      "env": {},
                      "labels": {},
                      "securityContext": {},
                      "containerSecurityContext": {},
                      "nodeSelector": {},
                      "tolerations": {},
                      "affinity": {}
                    }
                  },
                  "clusterController": {
                    "enabled": false,
                    "image": {
                      "repository": "gcr.io/kubecost1/cluster-controller",
                      "tag": "v0.16.0"
                    },
                    "imagePullPolicy": "Always",
                    "priorityClassName": "",
                    "tolerations": [],
                    "actionConfigs": {
                      "clusterTurndown": [],
                      "namespaceTurndown": null,
                      "clusterRightsize": null,
                      "containerRightsize": null
                    },
                    "kubescaler": {
                      "defaultResizeAll": false
                    },
                    "namespaceTurndown": {
                      "rbac": {
                        "enabled": true
                      }
                    }
                  },
                  "reporting": {
                    "logCollection": true,
                    "productAnalytics": true,
                    "errorReporting": true,
                    "valuesReporting": true
                  },
                  "serviceMonitor": {
                    "enabled": false,
                    "additionalLabels": {},
                    "metricRelabelings": [],
                    "relabelings": [],
                    "networkCosts": {
                      "enabled": false,
                      "scrapeTimeout": "10s",
                      "additionalLabels": {},
                      "metricRelabelings": [],
                      "relabelings": []
                    }
                  },
                  "prometheusRule": {
                    "enabled": false,
                    "additionalLabels": {}
                  },
                  "supportNFS": false,
                  "initChownDataImage": "busybox",
                  "initChownData": {
                    "resources": {}
                  },
                  "grafana": {
                    "rbac": {
                      "create": true
                    },
                    "serviceAccount": {
                      "create": true,
                      "name": ""
                    },
                    "replicas": 1,
                    "deploymentStrategy": "RollingUpdate",
                    "readinessProbe": {
                      "httpGet": {
                        "path": "/api/health",
                        "port": 3000
                      }
                    },
                    "livenessProbe": {
                      "httpGet": {
                        "path": "/api/health",
                        "port": 3000
                      },
                      "initialDelaySeconds": 60,
                      "timeoutSeconds": 30,
                      "failureThreshold": 10
                    },
                    "image": {
                      "repository": "grafana/grafana",
                      "tag": "10.3.4",
                      "pullPolicy": "IfNotPresent"
                    },
                    "securityContext": {},
                    "priorityClassName": "",
                    "downloadDashboardsImage": {
                      "repository": "curlimages/curl",
                      "tag": "latest",
                      "pullPolicy": "IfNotPresent"
                    },
                    "podAnnotations": {},
                    "annotations": {},
                    "service": {
                      "type": "ClusterIP",
                      "port": 80,
                      "annotations": {},
                      "labels": {}
                    },
                    "ingress": {
                      "enabled": false,
                      "annotations": {},
                      "labels": {},
                      "path": "/",
                      "pathType": "Prefix",
                      "hosts": [
                        "chart-example.local"
                      ],
                      "tls": []
                    },
                    "resources": {},
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "persistence": {
                      "enabled": false
                    },
                    "adminUser": "admin",
                    "adminPassword": "strongpassword",
                    "env": {},
                    "envFromSecret": "",
                    "extraSecretMounts": [],
                    "plugins": [],
                    "dashboardProviders": {},
                    "dashboards": {},
                    "dashboardsConfigMaps": {},
                    "ldap": {
                      "existingSecret": "",
                      "config": ""
                    },
                    "smtp": {
                      "existingSecret": ""
                    },
                    "sidecar": {
                      "image": {
                        "repository": "kiwigrid/k8s-sidecar",
                        "tag": "1.26.0",
                        "pullPolicy": "IfNotPresent"
                      },
                      "resources": {},
                      "dashboards": {
                        "enabled": true,
                        "label": "grafana_dashboard",
                        "labelValue": "1",
                        "annotations": {},
                        "error_throttle_sleep": 0,
                        "folder": "/tmp/dashboards"
                      },
                      "datasources": {
                        "enabled": false,
                        "error_throttle_sleep": 0,
                        "label": "grafana_datasource"
                      }
                    },
                    "grafana.ini": {
                      "server": {
                        "serve_from_sub_path": false,
                        "root_url": "%(protocol)s://%(domain)s:%(http_port)s/grafana"
                      },
                      "paths": {
                        "data": "/var/lib/grafana/data",
                        "logs": "/var/log/grafana",
                        "plugins": "/var/lib/grafana/plugins",
                        "provisioning": "/etc/grafana/provisioning"
                      },
                      "analytics": {
                        "check_for_updates": true
                      },
                      "log": {
                        "mode": "console"
                      },
                      "grafana_net": {
                        "url": "https://grafana.net"
                      },
                      "auth.anonymous": {
                        "enabled": true,
                        "org_role": "Editor",
                        "org_name": "Main Org."
                      }
                    }
                  },
                  "serviceAccount": {
                    "create": true,
                    "annotations": {}
                  },
                  "awsstore": {
                    "useAwsStore": false,
                    "imageNameAndVersion": "gcr.io/kubecost1/awsstore:latest",
                    "createServiceAccount": false,
                    "priorityClassName": "",
                    "nodeSelector": {},
                    "annotations": {}
                  },
                  "federatedETL": {
                    "agentOnly": false,
                    "federatedCluster": false,
                    "redirectS3Backup": false,
                    "useMultiClusterDB": false
                  },
                  "kubecostAdmissionController": {
                    "enabled": false,
                    "secretName": "webhook-server-tls",
                    "caBundle": "${CA_BUNDLE}"
                  },
                  "costEventsAudit": {
                    "enabled": false
                  },
                  "extraObjects": []
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: gcr.io/kubecost1/operator/kubecost-operator-controller:v2.2.4
          createdAt: "2024-05-19T20:46:35Z"
          description: An operator that deploys Kubecost 2.2.4 via the Helm chart.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Stackwatch
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The CostAnalyzer API describes a deployment of Kubecost and
              its dependencies.
            displayName: CostAnalyzer
            kind: CostAnalyzer
            name: costanalyzers.charts.kubecost.com
            version: v1alpha1
        description: |-
          Kubecost provides real-time cost visibility and insights for teams using Kubernetes, helping you continuously reduce your cloud costs.

          This OpenShift operator deploys Kubecost from the official Helm chart.

          Kubecost allows you to:

          * See allocated spend across all native Kubernetes concepts, so you can provide your teams with transparent, accurate cost data reconciled with your actual cloud bill.
          * Join in-cluster costs like CPU and memory with out-of-cluster spend from cloud infrastructure services for complete cost visibility—all services from AWS, GCP, and Microsoft Azure are supported.
          * Gain insights you can use to save 30-50% or more on your infrastructure spend, without exposing your private information—your data never gets shared externally, even with us.
          * Have real-time alerts and recurring reports, empowering teams to take control of their Kubernetes-enabled infrastructure, stay within budgeted limits, and address monitoring interruptions immediately.

          Visit the Kubecost website for more details including features, pricing, documentation, and more at www.kubecost.com.
        displayName: Kubecost
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubecost
        - cost
        - kubernetes
        links:
        - name: Kubecost
          url: https://www.kubecost.com
        maintainers:
        - email: czoller@kubecost.com
          name: Chip Zoller
        maturity: alpha
        provider:
          name: Stackwatch
          url: www.kubecost.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/kubecost@sha256:ff1e00f5a04e49fe9daf06db6b60c2ca14692efd098a38ecd622ef6bc5de8dd5
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - gcr.io/kubecost1/operator/kubecost-operator-controller:v2.2.4
        version: 2.2.4
      entries:
      - name: kubecost.v2.2.4
        version: 2.2.4
      - name: kubecost.v2.1.0
        version: 2.1.0
      - name: kubecost-operator.v1.107.1
        version: 1.107.1
      - name: kubecost-operator.v1.106.2
        version: 1.106.2
      - name: kubecost-operator.v1.106.0
        version: 1.106.0
      - name: kubecost.v1.99.0
        version: 1.99.0
      - name: kubecost.v1.97.0
        version: 1.97.0
      name: alpha
    defaultChannel: alpha
    packageName: kubecost
    provider:
      name: Stackwatch
      url: www.kubecost.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Net AI
      provider-url: https://netai.tech
    name: netai-demo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: netai-demo-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "deployments.netai.tech/v1alpha1",
                "kind": "AntennaDeployment",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netai-demo-operator"
                  },
                  "name": "antennadeployment-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, Networking
          com.redhat.openshift.versions: v4.18
          containerImage: ghcr.io/net-ai-tech/netai-demo-operator@sha256:fae0da9ec2f7a9fd6cfe0ec3e9dfb3b10bf6feaa964b81f081088297649c8bcb
          createdAt: "2025-07-09T11:33:08Z"
          description: Net AI Operator that uses EnergAIze engine forecasts to scale
            Red Hat OpenShift resources.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Net AI
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AntennaDeployment is the Schema for the antennadeployments
              API
            displayName: Antenna Deployment
            kind: AntennaDeployment
            name: antennadeployments.deployments.netai.tech
            version: v1alpha1
          - description: Demo is the Schema for the Demo API
            displayName: Demo
            kind: Demo
            name: demos.deployments.netai.tech
            version: v1alpha1
        description: POC Operator that uses saved EnergAize forecasts to manage OpenShift
          Custom Resources
        displayName: netai-demo-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - energaize
        - scaling
        - scale
        - manage
        - forecast
        - cells
        - 5g
        - networking
        - net
        - ai
        - network
        - telecommunication
        - xapp
        links:
        - name: Netai Demo Operator
          url: https://netai-demo-operator.domain
        maturity: alpha
        minKubeVersion: 1.27.0
        provider:
          name: Net AI
          url: https://netai.tech
        relatedImages:
        - registry.access.redhat.com/ubi8/ubi@sha256:68fecea0d255ee253acbf0c860eaebb7017ef5ef007c25bee9eeffd29ce85b29
        - registry.connect.redhat.com/net-ai/demo-operator-bundle@sha256:b1a30de1e984da0487a7d042bd940876bedb5a2f43dd73c7895e684a3a35d81e
        - ghcr.io/net-ai-tech/netai-demo-operator-bundle@sha256:0783aba7b039a569b49de2a61ef6dc6ff1d1f301d93c26d623b7f652321871c5
        - ghcr.io/net-ai-tech/netai-demo-operator@sha256:fae0da9ec2f7a9fd6cfe0ec3e9dfb3b10bf6feaa964b81f081088297649c8bcb
        version: 0.0.1
      entries:
      - name: netai-demo-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: netai-demo-operator
    provider:
      name: Net AI
      url: https://netai.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-athena-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-athena-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "athena.services.k8s.aws/v1alpha1",
                "kind": "WorkGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/athena-controller:1.2.0
          createdAt: "2025-11-29T04:51:07Z"
          description: AWS Athena controller is a service controller for managing
            Athena resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PreparedStatement represents the state of an AWS athena PreparedStatement
              resource.
            displayName: PreparedStatement
            kind: PreparedStatement
            name: preparedstatements.athena.services.k8s.aws
            version: v1alpha1
          - description: WorkGroup represents the state of an AWS athena WorkGroup
              resource.
            displayName: WorkGroup
            kind: WorkGroup
            name: workgroups.athena.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Athena resources in AWS from within your Kubernetes cluster.

          **About Amazon Athena**

          Amazon Athena is an interactive query service that makes it easy to analyze data directly in Amazon Simple Storage Service (Amazon S3) using standard SQL. With a few actions in the AWS Management Console, you can point Athena at your data stored in Amazon S3 and begin using standard SQL to run ad-hoc queries and get results in seconds.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Athena
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - athena
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Athena Developer Resources
          url: https://aws.amazon.com/athena/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: athena maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/athena-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-athena-controller@sha256:391d422e57dcc2960e2d89d83f6a58f0d9dfa6eac69634b751cb7c2bdf185fe9
        version: 1.2.0
      entries:
      - name: ack-athena-controller.v1.2.0
        version: 1.2.0
      - name: ack-athena-controller.v1.1.2
        version: 1.1.2
      - name: ack-athena-controller.v1.1.1
        version: 1.1.1
      - name: ack-athena-controller.v1.1.0
        version: 1.1.0
      - name: ack-athena-controller.v1.0.14
        version: 1.0.14
      - name: ack-athena-controller.v1.0.13
        version: 1.0.13
      - name: ack-athena-controller.v1.0.12
        version: 1.0.12
      - name: ack-athena-controller.v1.0.11
        version: 1.0.11
      - name: ack-athena-controller.v1.0.10
        version: 1.0.10
      - name: ack-athena-controller.v1.0.9
        version: 1.0.9
      - name: ack-athena-controller.v1.0.8
        version: 1.0.8
      - name: ack-athena-controller.v1.0.7
        version: 1.0.7
      - name: ack-athena-controller.v1.0.6
        version: 1.0.6
      - name: ack-athena-controller.v1.0.5
        version: 1.0.5
      - name: ack-athena-controller.v1.0.4
        version: 1.0.4
      - name: ack-athena-controller.v1.0.1
        version: 1.0.1
      - name: ack-athena-controller.v1.0.0
        version: 1.0.0
      - name: ack-athena-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-athena-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: opdev
      provider-url: opdev.github.io
    name: airflow-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: airflow-helm-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "workflow.apache.org/v1alpha1",
                "kind": "AirFlow",
                "metadata": {
                  "name": "airflow-helm"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: quay.io/opdev/airflow-helm-operator:0.0.1
          createdAt: "2023-06-28T16:57:21Z"
          description: An experimental operator that installs Apache Airflow.
          operatorframework.io/suggested-namespace: airflow-helm
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: hybrid.helm.sdk.operatorframework.io/v1-alpha
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys Apache Airflow based on the official helm chart in
              openshift
            kind: AirFlow
            name: airflows.workflow.apache.org
            version: v1alpha1
        description: Deploys Apache Airflow based on the official helm chart with
          openshift specific modifications applied by default
        displayName: Airflow Helm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - airflow
        - data
        - batch
        - scheduler
        - data workflow
        links:
        - name: Airflow Helm Operator
          url: https://airflow-helm-operator.domain
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: opdev
          url: opdev.github.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/opdev/airflow-helm-operator:0.0.1
        - quay.io/openshift-community-operators/airflow-helm-operator@sha256:b3d05d2e2b4ff8ae64e4fc0338fcfa1ffdc345c6fdda8eaefed4e9108750fe58
        version: 0.0.1
      entries:
      - name: airflow-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: airflow-helm-operator
    provider:
      name: opdev
      url: opdev.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataTrucker.IO
      provider-url: https://www.datatrucker.io/
    name: datatrucker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datatrucker-operator.v2.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datatrucker.datatrucker.io/v1",
                "kind": "DatatruckerConfig",
                "metadata": {
                  "name": "datatruckerconfig-sample"
                },
                "spec": {
                  "API": {
                    "crypto": {
                      "CredentailEncryption": {
                        "Algorithm": "aes-256-cbc",
                        "IV": "eThWmZq4t7w!z$C\u0026",
                        "Key": "JaNdRgUkXp2s5u8x/A?D(G+KbPeShVmY"
                      },
                      "JWT": {
                        "authorization_keys": {
                          "private_key": "privateJWT.key",
                          "public_key": "publicJWT.key"
                        },
                        "signOptions": {
                          "algorithm": "RS256",
                          "expiresIn": "60m",
                          "issuer": "datatrucker"
                        },
                        "verify": {
                          "issuer": "datatrucker"
                        }
                      },
                      "keycloak": {
                        "client_id": "nodejs",
                        "client_secret": "7c5542ae-7264-420d-bf5f-766f4ab39ad3",
                        "jwt_publickey_verifier": "keycloak.key",
                        "realm": "TestRealm",
                        "url": "http://localhost:30015"
                      },
                      "passwordHash": {
                        "Algorithm": "sha256",
                        "SaltLength": 16
                      }
                    },
                    "cryptokeys": {
                      "keycloakkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUF4ZnhGY1gxb3RmTUN6SWlkZ09tMndZakZWZXZHN1BQT1h5dTNrTEFuTWtTVkUxUXl4TzJ4SFFvSGcydDFVcUU4SVNXeTN3ZkZTbERzdU1VK0J1VVkvaWI5L04vSlpBV3k5MGRET0YxREdIeGVwM21HMVBTUllMQWFGQ0I3NTVsbWZjL1dna3VzZFdLdmxOTmZuNkd6S1J6OXBmV3RNUnhWWkFrejhmNlVUeG0zWE02Q0tOMUludThubEcxU3ZzaFc5cmt3Lyt6UmVvOFVCV2pPcTh5RjdPV0tnS0ZZZlhENFREa090OWFxN3RaaSsxaExYOE5iV2xxRnJZYmhJcFZINXlLSko3ZTA5cUVIRkVEelg5QXJzVVNHamNjbFFFYTl1dmJxU2d4Rzc3RUZVbk82aDZxUkNnU3lNNnVYdk9qcWlIMHp4RTNmRHB4R2NhY2pvTW1EMlFJREFRQUIKLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0t",
                      "privateJWTkey": "LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQ0KTUlJRW9RSUJBQUtDQVFCVWd1ZDN1OFlXcUJCWWtYZ3M2K25pMS84bnM5YjRGNkZudzA4RDRKdGRlalg5L1ZaMg0KWFdOamJ1ekMxUkRHMnVseFM4QjZIdTZYeEhYWU9XU2ZzOEY0UHZ2eC9TUWdmRWtWUlNDL1pQN3pzM1ZETllaMA0Kc1JScDNSZzUza29qUG80T3o2azFaeGprbFRFZEpMWUtqYlZud3U1M3A3MTFsVTJkV3B4R3VEeGYxVTJuUWgrWA0KaUhKZkhyUmxTZVA1aVhYQkpxd21VTDFkK25lTU5BOXlGakR0MnNZMG5iSDRySDVxbk1VRk4xMEpsZ3V4NFdiUw0KaGFUNklNN3h1dUVHbDRDckVENmdTejBNNGF1UVk4ekZxQWxJNlFWUTlML28zQnBCRmxYUUMwWmowb3lwQVFKLw0KQ1VLaU9FcEhLRHgram02RU9KOE1aejlMQ01yTmdLME5KSWlaQWdNQkFBRUNnZ0VBRTBMMnNLSjZob1Z0bkZJag0KZXRHV01CNmN5QmJFSXkxM215ZTNwYUdXcDVxSUhjaVU0VXR0c0tjQ2pYRjBibTVNa0liOGFwa01Oa2tQdHVWMQ0KMnJSa254eHozZmFkT2s0NWRnQ1ljeWI0dU9DcEZGVnB2TVR6YXlGNk9RNUNCWUJuYmxiRU1TaTdVclh5U0xzcQ0KUm9OLzJoTml1S0RobktBWDNZcGVYZnYxdnIyaWIrMGtiRDVvMVZLcnB6SlJ5emlsWHFwQWJwNDQ4RExFZHVGeA0KTnJKc0tWb1dXMVhmS1FvR2VDMXZqNFJudzdhWkNyU1BjMEhvMUdKb29xSXlrNjRXZnhGWjhpVElsWDJMU1gzbQ0KQm1pN1ZXZnVJK0QvUXRtWEVpN05oTE1jUmExVXB4QkdiK1ZPZXlucEVyMEpxM3VZSmlva1VIZzloOGIzSDM1Yg0KK0lJaEFRS0JnUUNtbzUrRUNpOEJUcFRHdlpqQXBtdmxGZ055NkpWd0RvVHJLSGdCcHJHVHpsVGt6Q0tLYzJhTw0KTTMvQmVIVUQ1NVFqcTdUM094eGgzQUk3cG9kT0tCWS84eXgzenlYUExQUmVCMlR0eTNVQjE5YU5CclhNUGQ5RQ0KTG5hbUQ0SmZQeTV0WHpWWEloWVB0UzBiNjdGbjZnZFl4MlNBbGFYYWFjejU4eURLZnlZL3VRS0JnUUNCMUxNYg0KTFZNTU1Pd1U4R2xsVVB1V0Q5VnBsMnlURytCN2Nnd0ZiYTlrWVlVSFQ4TmlvaUdxQzlLZWxqeklKNnlUdyt3aA0KQisvNGNJU1o5Y0JDNHB0VnRlTWJwUkg3UTQwK20xU3M1SmQzU1VFcDBMOW5VbmdVNDhrMzlpSTV5aEgxU3JTRw0KREtBamVka2Rjb3hNVWFwUHB6cVprOVNKdGVHckVsTHY5WmcvNFFLQmdHcExQTmt3MWNMenFSc01uWDlscUxVOA0KVVg3ZXRWUUJMdkFCcEdzSk5ZU2V2TEFsTm5NeUlWemJwTVo0Vzh2ZDBEVGd0bEp0dGpFRjhiYXpCdVBuMWlsOA0KcUFUVWNiMnhZejhIWUczK3RlZ3pFWHhycDFOY3RDbjlxVmxMMDFHR0w4czhTLzRFbENYNDM0bEwwcUlDT2lWNw0KS3JTS3dIeU51RjVIbzhjSFRCS2hBb0dBVjhVRVpENEs0N1g3RTlqSFY3QWN0UUQxUkpJUzI0ekFBSlJFSGpOZA0KbkIzMVFkRWhoSCtaQkkxRGtPUitLTTN4ZEYvQ05UNVpjM29WbXNPeGUwWVl2eVBjYWViNU5nVWY2cEExK1QvOA0KU2E4ak4zS2d3dWZVdUVLWjJKUXo1UjkvYm5WWGZ6dnYwcXZnSkhFNCthdEgyTnR6MlRsQU9PelZwOElXZ1pSbA0KbmVFQ2dZQXpVS0RLS1ZKaXBYdC9TRC8xd2ZzWElCazFxYWpmdENHOFVTcFlGWGp5VzVYMlZ5bTlVTldmVEdJcA0KQlJkVldXamdFbWhyOU5Da1UrVEU4WEVjTXJNRnhWbXBEeTQ4YmxsQWltWFJtOEhNMlhKODQ4TlArTG5GdEtHdA0KTWswT3JuUHdPYitualZGcXdWUllNQ0QzeFN0Z2RnZUppUHFYcWd3SDhjR0M0OGVmZ0E9PQ0KLS0tLS1FTkQgUlNBIFBSSVZBVEUgS0VZLS0tLS0=",
                      "publicJWTkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJVEFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUTRBTUlJQkNRS0NBUUJVZ3VkM3U4WVdxQkJZa1hnczYrbmkNCjEvOG5zOWI0RjZGbncwOEQ0SnRkZWpYOS9WWjJYV05qYnV6QzFSREcydWx4UzhCNkh1Nlh4SFhZT1dTZnM4RjQNClB2dngvU1FnZkVrVlJTQy9aUDd6czNWRE5ZWjBzUlJwM1JnNTNrb2pQbzRPejZrMVp4amtsVEVkSkxZS2piVm4NCnd1NTNwNzExbFUyZFdweEd1RHhmMVUyblFoK1hpSEpmSHJSbFNlUDVpWFhCSnF3bVVMMWQrbmVNTkE5eUZqRHQNCjJzWTBuYkg0ckg1cW5NVUZOMTBKbGd1eDRXYlNoYVQ2SU03eHV1RUdsNENyRUQ2Z1N6ME00YXVRWTh6RnFBbEkNCjZRVlE5TC9vM0JwQkZsWFFDMFpqMG95cEFRSi9DVUtpT0VwSEtEeCtqbTZFT0o4TVp6OUxDTXJOZ0swTkpJaVoNCkFnTUJBQUU9DQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0=",
                      "truckerapicrt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUQxVENDQXIyZ0F3SUJBZ0lVUFVzZ2NYVXZRYWtuQldjeUFDeEw2dmt3b204d0RRWUpLb1pJaHZjTkFRRUwKQlFBd2RqRUxNQWtHQTFVRUJoTUNRMEV4Q3pBSkJnTlZCQWdNQWs5T01ROHdEUVlEVlFRSERBWk5hV3gwYjI0eApGekFWQmdOVkJBb01Ea1JoZEdGVWNuVmphMlZ5TGtsUE1SUXdFZ1lEVlFRTERBdEZibWRwYm1WbGNtbHVaekVhCk1CZ0dBMVVFQXd3UlJHRjBZVlJ5ZFdOclpYSlNiMjkwUTBFd0hoY05NakF4TURFeU1UWXlOalV5V2hjTk1qTXcKTVRFMU1UWXlOalV5V2pCM01Rc3dDUVlEVlFRR0V3SkRRVEVMTUFrR0ExVUVDQXdDVDA0eER6QU5CZ05WQkFjTQpCazFwYkhSdmJqRVhNQlVHQTFVRUNnd09SR0YwWVZSeWRXTnJaWEl1U1U4eEZEQVNCZ05WQkFzTUMwVnVaMmx1ClpXVnlhVzVuTVJzd0dRWURWUVFEREJKa1lYUmhkSEoxWTJ0bGNpMWhjR2t1YVc4d2dnRWlNQTBHQ1NxR1NJYjMKRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEakM4ZmVCVEg4L3NnejFQcTJQYU9QQjc5YWtyeUZvWVpGV292bQpWOXNvMmJNRHp4NVBZSFJydVFGYmJQRzlVVlc2QWZpSHdEb1p2Z3NTVXpyS3ZyR1RlYjluNUhSVlVOMTl0NExTCjdtUFppNzFRbGE4bVR3QmdvTnE4TFppcnZUdzV0S2I4K3NmcFJxQUlUQkVsRmxVUEZISzllcDl2eFdvaHhwdGgKS1dPVkwvV2ZtWldhWXlRdjlLNDBkWUJpRWpGcTFKZVB4MDlnUFdHM2pOT1VYTTZQUVlMaHJDUXFFcy9VME9GWQpwVFRHUmNXZEx4TFVFZVNkcHJKK1ZEc3lEK1lVeUFRR2phYk14VmVTVlRUN1FGbFBjLzc3OVZsRkdXMC8xWVVaCmpqakNsSkFLUWZOTHg5bG85cWJERVBZL3grZmhnRnYyWUVaSTNTdGVyZWUvVDJoWEFnTUJBQUdqV2pCWU1COEcKQTFVZEl3UVlNQmFBRkNJVy9JYkZIUUNBeEdxZC9FVFpXbVhGeGMvQ01Ba0dBMVVkRXdRQ01BQXdDd1lEVlIwUApCQVFEQWdUd01CMEdBMVVkRVFRV01CU0NFbVJoZEdGMGNuVmphMlZ5TFdGd2FTNXBiekFOQmdrcWhraUc5dzBCCkFRc0ZBQU9DQVFFQUxrMlJDbnVweDA5Wmx0SmN3M1pUaFIveUZGNS9KVlVsWkdHTnc3MlAwQmR6SEloQncrVk4KRkNucGFPMjJ0WGF1NlJVeTVNUWhwc3JrbFNKYVdJT25jOUg0Uk0vbGh3YWsyRXN0MkFhdUFwNUdYSVFJMDVBeAo3NmtDZXEyMnUyalNXRWpFS1hGRnRiZXVDZnFpWlpqNWFLcGF1YlZWRG4ydEZTWjJRMFRib2RRN2dpTFdNUTBLCk5ycVgwQWNSU2J0ZnRSNjBhdGQ1YW41aFNXY0dyZUg5ZHdFUVRvVVNFblg2RFRZSURoeElsZStjQ2V5VjVSWk8KVS9hck5RZ0lFY3ZrZUM1d1lZaFFFL1FUN3lNb1lNajFnckxmOTZSZkRhbEVFNE1seUtDWm9wYWNJWUdzSmhuKwpLMWFISEQvbGZxTC9zbnNtY3pXdHlLUncxTDF1WkxPcjJnPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=",
                      "truckerapikey": "LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb3dJQkFBS0NBUUVBNHd2SDNnVXgvUDdJTTlUNnRqMmpqd2UvV3BLOGhhR0dSVnFMNWxmYktObXpBODhlClQyQjBhN2tCVzJ6eHZWRlZ1Z0g0aDhBNkdiNExFbE02eXI2eGszbS9aK1IwVlZEZGZiZUMwdTVqMll1OVVKV3YKSms4QVlLRGF2QzJZcTcwOE9iU20vUHJINlVhZ0NFd1JKUlpWRHhSeXZYcWZiOFZxSWNhYllTbGpsUy8xbjVtVgptbU1rTC9TdU5IV0FZaEl4YXRTWGo4ZFBZRDFodDR6VGxGek9qMEdDNGF3a0toTFAxTkRoV0tVMHhrWEZuUzhTCjFCSGtuYWF5ZmxRN01nL21GTWdFQm8ybXpNVlhrbFUwKzBCWlQzUCsrL1ZaUlJsdFA5V0ZHWTQ0d3BTUUNrSHoKUzhmWmFQYW13eEQyUDhmbjRZQmI5bUJHU04wclhxM252MDlvVndJREFRQUJBb0lCQUZSbFo2aiswMk1RcmdpZQpUWWQ2aUJhOXNZS1FjdVZWY2x6TFdKK0ozdHhqZCtpZGo4Mi9zK2JyQVRjajJ3UWRmTGxFekVaaHpQY09ybnprClZVRlIreDR2cmxlSEV6czNjTzJ2VGtEci9rKzZZdWZXakNHNFVoS1pHRlhFdVRCMWlqS0ZGV0dLTXM5aXdrL3oKUHBoRG9lQ1dJRVNRbFQxdDY1S2NpZHRuRUM0K3oxaURxR21ZZEVEa2xEZFFIVHorRGpseS80VzV2MFpVQWN2Vwo1Unkvd0JldmNURlBXQy9uZGFrN3hGUnVrU2xNZUlhTWhvTlllOU5uVCt2Nmh5VVh1MXp6cG45UEFJRTVpQWpOCnBsZkFEZitwakwrZFJDbW9sWW1LR3NQVjEzSmtCY1p2cEVoUWgrUmJnaWFwczJLc2plQ0NmTmtST0hndHc0MU0KeGxOTU1Ha0NnWUVBOHM1akpuZ2FMblIvTzZtakZEb0wvd1p2UWdnT1h3Z1RBN2tsQ0trbjBYM0xJS0hhaTZESgpyOVRGQktMdkhUazVFK1Y4NkhIZ29VMUFQQnYyMWJpaHhuQXhUYm8wSHZMdG5QOXU3YnZJejFNOWMyd2ZlWUgzCmliMG1FNkV0Y2wvNnVIUHdMVlZtRGh5bllneEZpeTRRRXp1ZHZwaFIvSnlPazQvUytQUzh2ZXNDZ1lFQTcySW8KWDlkY0xvUmYzSk0vRTF1SXhrRGRLZm1VakN6Mk1NN3pyRkpNUERobTFSUlJhQjdidHNxUzl4Mm5KeTI5amtoSQpndTR0Y2s5STdncm9WRXY0cEtkU0lOVzVNVUg0MXJPckxTbFBobCtMaTM5QXNrTERFVXVQbkFmYko3YWZibFFHCjNFWE1Ka1d2WFQxRG90aE11MUpUMTFPMjhmYlBmb3R3YVRucXFFVUNnWUE1RnArblh0dkJDbkVUNVJuTDJxNFIKWTBEcmhKdGthckNWMG9WTG1RSWN0bmY1RHpVa1dVU3lpOU5hK0xoQjViOXUxeWxjT2RJMytzTGNuektWSTVrZAo0Q2tuZmwxYzNYOVN4NWdjVzJlbW40cTJSYmpNeCtzY3ZwVmlUaVl5V3pESEI3Tno1VDFlbWd3YytJZXRac0l1CjAzaU9aSi82UmhFYnp0Z3E0dGd4eXdLQmdCanhwSDFnSm9YZVcxTFRzUlhtU3RsRnR3WUJzTDN1alhUR2k5T2YKKzd1bXNPaHhKbzV2OExzYVhyZ0xTZmltSm9ObCt0QlIyMEIzRElWcGM0NGRJSHFmeU1vTkd6QUx6TThxaDZLOApGRUpQUUc0M3cxa1A1ZDJ1ZnZkbVJpcmNONzY2V01DcE1UMm5zejlHKy81REJiUGJQMHRIdU45N3RXRmRURWhhCnRaMzFBb0dCQU5xZnVycEV4ZHozdXRNUm91RnJjTmVkV2s4VlVpVVZIV1hZMjhNNWQvRjcxMExIOTZuOW12V08Kc1cwcDFjcXBJMEsyQko2WlYwNVpybnlyRHBsVVpVdVpSQWxGR3hYR1dLU2trQzlmWm90SkFOWDBkR29KSitqTwpEYUNLNGxlcXdOMHNPRE1YZFErMlFPaUtlSUxkNU5KcDNUSW1YV1Z0RFlXUkRwOW9iSUdlCi0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg=="
                    },
                    "jobsServer": {
                      "ajv": {
                        "customOptions": {
                          "allErrors": true,
                          "coerceTypes": true,
                          "jsPropertySyntax": true,
                          "keepErrors": false,
                          "singleError": true
                        }
                      },
                      "bind": "0.0.0.0",
                      "compression": {
                        "threshold": 2048
                      },
                      "fastify": {
                        "ignoreTrailingSlash": true,
                        "logger": {
                          "level": "debug"
                        }
                      },
                      "helmet": {
                        "framegaurd": {
                          "action": "deny"
                        }
                      },
                      "jobResponseErrors": true,
                      "keycloak": true,
                      "pluginsEnable": {
                        "DB": true,
                        "FileSFTP": true,
                        "IOTKafka": true,
                        "IOTProxy": false,
                        "IOTRedis": true,
                        "Login": false,
                        "ScriptJS": true,
                        "ScriptSSH": true,
                        "ScriptShell": true,
                        "UtilEcho": true,
                        "UtilFuzzy": true,
                        "UtilSentiment": true,
                        "credentials": false,
                        "jobs": true,
                        "resources": false,
                        "statuschecks": true,
                        "ui": false,
                        "usermanagement": false
                      },
                      "port": "8080",
                      "protocol": {
                        "http2": false,
                        "httpsconfig": {
                          "allowHTTP1": true,
                          "cert": "truckerapi.crt",
                          "key": "truckerapi.key"
                        },
                        "type": "http"
                      },
                      "requestLog": false,
                      "serverID": "ServerHandler",
                      "writableResource": false
                    },
                    "loginServer": {
                      "ajv": {
                        "customOptions": {
                          "allErrors": true,
                          "coerceTypes": true,
                          "jsPropertySyntax": true,
                          "keepErrors": false,
                          "singleError": true
                        }
                      },
                      "bind": "0.0.0.0",
                      "compression": {
                        "threshold": 2048
                      },
                      "fastify": {
                        "ignoreTrailingSlash": true,
                        "logger": {
                          "level": "info"
                        }
                      },
                      "helmet": {
                        "framegaurd": {
                          "action": "deny"
                        }
                      },
                      "jobResponseErrors": true,
                      "keycloak": true,
                      "pluginsEnable": {
                        "DB": false,
                        "FileSFTP": false,
                        "IOTKafka": false,
                        "IOTProxy": false,
                        "IOTRedis": false,
                        "Login": true,
                        "ScriptJS": false,
                        "ScriptSSH": false,
                        "ScriptShell": false,
                        "UtilEcho": false,
                        "UtilFuzzy": false,
                        "UtilSentiment": false,
                        "credentials": false,
                        "jobs": false,
                        "resources": false,
                        "statuschecks": true,
                        "ui": false,
                        "usermanagement": false
                      },
                      "port": "8080",
                      "protocol": {
                        "http2": false,
                        "httpsconfig": {
                          "allowHTTP1": true,
                          "cert": "truckerapi.crt",
                          "key": "truckerapi.key"
                        },
                        "type": "http"
                      },
                      "requestLog": false,
                      "serverID": "ServerHandler",
                      "writableResource": false
                    },
                    "managementServer": {
                      "ajv": {
                        "customOptions": {
                          "allErrors": true,
                          "coerceTypes": true,
                          "jsPropertySyntax": true,
                          "keepErrors": false,
                          "singleError": true
                        }
                      },
                      "bind": "0.0.0.0",
                      "compression": {
                        "threshold": 2048
                      },
                      "fastify": {
                        "ignoreTrailingSlash": true,
                        "logger": {
                          "level": "debug"
                        }
                      },
                      "helmet": {
                        "framegaurd": {
                          "action": "deny"
                        }
                      },
                      "jobResponseErrors": true,
                      "keycloak": true,
                      "pluginsEnable": {
                        "DB": false,
                        "FileSFTP": false,
                        "IOTKafka": false,
                        "IOTProxy": false,
                        "IOTRedis": false,
                        "Login": true,
                        "ScriptJS": false,
                        "ScriptSSH": false,
                        "ScriptShell": false,
                        "UtilEcho": false,
                        "UtilFuzzy": false,
                        "UtilSentiment": false,
                        "credentials": true,
                        "jobs": false,
                        "resources": false,
                        "statuschecks": true,
                        "ui": true,
                        "usermanagement": true
                      },
                      "port": "8080",
                      "protocol": {
                        "http2": false,
                        "httpsconfig": {
                          "allowHTTP1": true,
                          "cert": "truckerapi.crt",
                          "key": "truckerapi.key"
                        },
                        "type": "http"
                      },
                      "requestLog": false,
                      "serverID": "ServerHandler",
                      "writableResource": false
                    },
                    "name": "API",
                    "resource": {
                      "Cache": {
                        "Creds": false,
                        "CredsFlush": 10,
                        "Resource": false,
                        "ResourceFlush": 10
                      },
                      "Templates": {
                        "Scripts": "scripts",
                        "Shell": "shell",
                        "keys": "keys",
                        "resourcedefinitions": "resourcedefinitions"
                      }
                    }
                  },
                  "DB": {
                    "databasename": "userdb",
                    "hostname": "db",
                    "password": "password",
                    "port": 5432,
                    "type": "pg",
                    "user": "testuser"
                  },
                  "TempDB": {
                    "enabled": false,
                    "pvc": "samplepvc"
                  }
                }
              },
              {
                "apiVersion": "datatrucker.datatrucker.io/v1",
                "kind": "DatatruckerFlow",
                "metadata": {
                  "name": "datatruckerflow-sample"
                },
                "spec": {
                  "API": {
                    "Image": {
                      "imageName": "datatrucker-server/datatrucker-api",
                      "imageNameUI": "datatruckerio/datatrucker-ui",
                      "repository": "registry.gitlab.com/datatruckerio",
                      "tagName": "latest"
                    },
                    "name": "api"
                  },
                  "DatatruckerConfig": "datatruckerconfig-sample",
                  "JobDefinitions": [
                    {
                      "name": "echoapi",
                      "restmethod": "GET",
                      "tenant": "Admin",
                      "type": "Util-Echo",
                      "validations": {
                        "properties": {
                          "voila": {
                            "enum": [
                              "true",
                              "false"
                            ],
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    }
                  ],
                  "Keys": {
                    "configmap": "placeholder"
                  },
                  "Replicas": 1,
                  "Resources": {
                    "limits": {
                      "cpu": "500m",
                      "memory": "256Mi"
                    },
                    "requests": {
                      "cpu": "250m",
                      "memory": "256Mi"
                    }
                  },
                  "Scripts": {
                    "configmap": "placeholder"
                  },
                  "Type": "Job"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/datatruckerio/datatrucker-operator:2.0.0
          createdAt: "2021-09-08 01:01:01"
          operators.operatorframework.io/builder: operator-sdk-v1.10.1-ocp
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: hhttps://gitlab.com/datatruckerio/datatrucker-server.git
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              - creates secrets to hold server configs
              - create tempDB for protoypting
              - create configs for seperating Login, management and Jobs endpoints
              - Create crypto configs
            displayName: Datatrucker Config
            kind: DatatruckerConfig
            name: datatruckerconfigs.datatrucker.datatrucker.io
            version: v1
          - description: '- creates an API as per Job Definitions'
            displayName: Datatrucker Flow
            kind: DatatruckerFlow
            name: datatruckerflows.datatrucker.datatrucker.io
            version: v1
        description: "## DataTrucker.IO\n\nDataTrucker.IO is a simple no-code / less-code
          API Backend\n\n### What does it do ?\n\nDatatrucker.IO is a product capable
          of reading simple json/yaml configs and building th code necessary for converting
          it into an API.\nAlong with building the code, it will also host the code
          base on a nodejs server , i.e. it will immediately make it available for
          consumption.\n\n### What does it offload from a developer ?\n\nDataTrucker
          is capable of removing the most common activities which a developer needs
          to do on every new project A few of such common activities are\n\n- Creating
          an API endpoint with a specified business logic (using simple plugins)\n-
          Applying standard RBAC\n- Applying Authorization logic\n- Applying hardening
          on endpoints\n- Log management\n- Connecting to variety of systems\n- Modularizing
          business logic\n- The best of doing it with little to no code\n\n### watch
          the quick elevator pitch to understand datatrucker.io\n\n https://youtu.be/DKLFDqhjs5M\n "
        displayName: DataTrucker.IO
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - datatrucker
        - operator
        - nocode
        - apibuilder
        links:
        - name: Website
          url: https://www.datatrucker.io/
        - name: Git Repo
          url: https://gitlab.com/datatruckerio/datatrucker-server.git
        maintainers:
        - email: gauravshankar.can@gmail.com
          name: Gaurav Shankar
        maturity: alpha
        provider:
          name: DataTrucker.IO
          url: https://www.datatrucker.io/
        relatedImages:
        - docker.io/datatruckerio/datatrucker-operator:2.0.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/openshift-community-operators/datatrucker-operator@sha256:4ab1d683d95d3eeba944b977594aff2e3b3e7203f56598b2fb2f7cff75354be3
        version: 2.0.0
      entries:
      - name: datatrucker-operator.v2.0.0
        version: 2.0.0
      - name: datatrucker-operator.v1.3.2
        version: 1.3.2
      - name: datatrucker-operator.v1.3.1
        version: 1.3.1
      - name: datatrucker-operator.v1.3.0
        version: 1.3.0
      name: alpha
    defaultChannel: alpha
    packageName: datatrucker-operator
    provider:
      name: DataTrucker.IO
      url: https://www.datatrucker.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: ""
    name: percona-server-mysql-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-server-mysql-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQL",
              "metadata": {
                "name": "ps-cluster1",
                "finalizers": [
                  "percona.com/delete-mysql-pods-in-order"
                ]
              },
              "spec": {
                "crVersion": "1.0.0",
                "secretsName": "ps-cluster1-secrets",
                "sslSecretName": "ps-cluster1-ssl",
                "updateStrategy": "SmartUpdate",
                "upgradeOptions": {
                  "versionServiceEndpoint": "https://check.percona.com",
                  "apply": "disabled"
                },
                "mysql": {
                  "clusterType": "group-replication",
                  "autoRecovery": true,
                  "image": "docker.io/percona/percona-server:8.4.6-6.1",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "resources": {
                    "requests": {
                      "memory": "2Gi"
                    },
                    "limits": {
                      "memory": "4Gi"
                    }
                  },
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "exposePrimary": {
                    "enabled": true
                  },
                  "volumeSpec": {
                    "persistentVolumeClaim": {
                      "resources": {
                        "requests": {
                          "storage": "2Gi"
                        }
                      }
                    }
                  },
                  "gracePeriod": 600
                },
                "proxy": {
                  "haproxy": {
                    "enabled": true,
                    "size": 3,
                    "image": "docker.io/percona/haproxy:2.8.15",
                    "imagePullPolicy": "Always",
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "1Gi",
                        "cpu": "600m"
                      }
                    },
                    "gracePeriod": 30,
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    }
                  },
                  "router": {
                    "enabled": false,
                    "image": "docker.io/percona/percona-mysql-router:8.4.6",
                    "imagePullPolicy": "Always",
                    "size": 3,
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "256M"
                      },
                      "limits": {
                        "memory": "256M"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "gracePeriod": 30
                  }
                },
                "orchestrator": {
                  "enabled": false,
                  "image": "docker.io/percona/percona-orchestrator:3.2.6-18",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "gracePeriod": 30,
                  "resources": {
                    "requests": {
                      "memory": "128M"
                    },
                    "limits": {
                      "memory": "256M"
                    }
                  }
                },
                "pmm": {
                  "enabled": false,
                  "image": "docker.io/percona/pmm-client:3.4.1",
                  "imagePullPolicy": "Always",
                  "resources": {
                    "requests": {
                      "memory": "150M",
                      "cpu": "300m"
                    }
                  },
                  "serverHost": "monitoring-service"
                },
                "backup": {
                  "enabled": true,
                  "image": "docker.io/percona/percona-xtrabackup:8.4.0-4.1",
                  "imagePullPolicy": "Always",
                  "storages": {
                    "s3-us-west": {
                      "type": "s3",
                      "verifyTLS": true,
                      "s3": {
                        "bucket": "S3-BACKUP-BUCKET-NAME-HERE",
                        "credentialsSecret": "ps-cluster1-s3-credentials",
                        "region": "us-west-2"
                      }
                    }
                  }
                },
                "toolkit": {
                  "image": "docker.io/percona/percona-toolkit:3.7.0-2",
                  "imagePullPolicy": "Always"
                }
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLBackup",
              "metadata": {
                "name": "backup1",
                "finalizers": [
                  "percona.com/delete-backup"
                ]
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "storageName": "minio"
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLRestore",
              "metadata": {
                "name": "restore1"
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "backupName": "backup1"
              }
            }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: docker.io/percona/percona-server-mysql-operator:1.0.0
          createdAt: "2025-11-13T08:00:00.000Z"
          description: Percona Operator for MySQL based on Percona Server for MySQL
            automates the creation and management of highly available, enterprise-ready
            MySQL database clusters on Kubernetes.
          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"
          repository: https://github.com/percona/percona-server-mysql-operator
          support: Percona
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaServerMySQLBackup is the Schema for the perconaservermysqlbackups
              API
            displayName: Percona Server MySQL Backup
            kind: PerconaServerMySQLBackup
            name: perconaservermysqlbackups.ps.percona.com
            version: v1
          - description: PerconaServerMySQLRestore is the Schema for the perconaservermysqlrestores
              API
            displayName: Percona Server MySQL Restore
            kind: PerconaServerMySQLRestore
            name: perconaservermysqlrestores.ps.percona.com
            version: v1
          - description: PerconaServerMySQL is the Schema for the perconaservermysqls
              API
            displayName: Percona Server MySQL
            kind: PerconaServerMySQL
            name: perconaservermysqls.ps.percona.com
            version: v1
        description: |2+

          ## Percona is Cloud Native

          Percona Operator for MySQL based on Percona Server for MySQL follows our best practices for deployment and configuration of highly-available, fault-tolerant MySQL instances in a Kubernetes-based environment on-premises or in the cloud. It provides the following capabilities:
          * Deploy group replication MySQL clusters with HAProxy or MySQL Router
          * Deploy asynchronous replication MySQL clusters with Orchestrator and HAProxy
          * Expose clusters with regular Kubernetes Services
          * Monitor the cluster with Percona Monitoring and Management
          * Customize MySQL configuration
          * Manage system user passwords

        displayName: Percona Operator for MySQL based on Percona Server for MySQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mysql
        - percona
        - database
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-mysql/ps/
        - name: Github
          url: https://github.com/percona/percona-server-mysql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
        relatedImages:
        - quay.io/community-operator-pipeline-prod/percona-server-mysql-operator@sha256:b0e67a16cd6ba5e3e6ec109316b013ca01ede4149661ba48ef549f80b17a0504
        - docker.io/percona/percona-server-mysql-operator:1.0.0
        version: 1.0.0
      entries:
      - name: percona-server-mysql-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: percona-server-mysql-operator
    provider:
      name: Percona
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Foundation Model Stack
      provider-url: ""
    name: multi-nic-cni-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multi-nic-cni-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nic-cni-operator-multi-nicd",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.3.1",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nicd"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.3.1",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "multi-nic-cni-operator-highspeed",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "highspeed"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-node-1",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "node-1"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3-192.168.0.0-26"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "ipvlanl3"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.3.1
          createdAt: "2025-11-04T05:18:29Z"
          operators.operatorframework.io/builder: operator-sdk-v1.41.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CIDR is the Schema for the cidrs API
            displayName: CIDR
            kind: CIDR
            name: cidrs.multinic.fms.io
            version: v1
          - description: Config is the Schema for the configs API
            displayName: Config
            kind: Config
            name: configs.multinic.fms.io
            version: v1
          - description: DeviceClass is the Schema for the deviceclasses API
            displayName: Device Class
            kind: DeviceClass
            name: deviceclasses.multinic.fms.io
            version: v1
          - description: HostInterface is the Schema for the hostinterfaces API
            displayName: Host Interface
            kind: HostInterface
            name: hostinterfaces.multinic.fms.io
            version: v1
          - description: IPPool is the Schema for the ippools API
            displayName: IPPool
            kind: IPPool
            name: ippools.multinic.fms.io
            version: v1
          - description: MultiNicNetwork is the Schema for the multinicnetworks API
            displayName: Multi Nic Network
            kind: MultiNicNetwork
            name: multinicnetworks.multinic.fms.io
            version: v1
        description: "Multi-NIC CNI Operator helps to attaching secondary network
          interfaces that is linked to \ndifferent network interfaces on host (NIC)
          to pod provides benefits of network segmentation \nand top-up network bandwidth
          in the containerization system.\n\nMulti-NIC CNI is the CNI plugin operating
          on top of Multus CNI. \nHowever, instead of defining and handling each secondary
          network interface one by one, \nthis CNI automatically discovers all available
          secondary interfaces and handles them as a NIC pool. \nWith this manner,
          it can provide the following benefits.\n\ni) Common secondary network definition:
          User can manage only one network definition for \n   multiple secondary
          interfaces with a common CNI main plugin such as ipvlan, macvlan, and sr-iov.\n\nii)
          Common NAT-bypassing network solution: All secondary NICs on each host can
          be assigned \n    with non-conflict CIDR and non-conflict L3 routing configuration
          that can omit an overlay networking overhead. \n    Particularyly, the CNI
          is built-in with L3 IPVLAN solution composing of the following functionalities.\n\n
          \   1. Interface-host-devision CIDR Computation: compute allocating CIDR
          range for each host and each interface \n       from a single global subnet
          with the number of bits for hosts and for interface.\n    2. L3 Host Route
          Configuration: configure L3 routes (next hop via dev) in host route table
          according to the computed CIDR.\n    3. Distributed IP Allocation Management:
          manage IP allocation/deallocation distributedly via the communication \n
          \      between CNI program and daemon at each host.\n\niii) Policy-based
          secondary network attachment: Instead of statically set the desired \n     host's
          master interface name one by one, user can define a policy on attaching
          multiple secondary network \n     interfaces such as specifying only the
          number of desired interfaces, filtering only highspeed NICs.\n\n## Instructions\n\nPlease
          check the [User Guide](https://foundation-model-stack.github.io/multi-nic-cni/user_guide/)"
        displayName: multi-nic-cni-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multi-nic
        - cni
        - network
        links:
        - name: Multi-NIC CNI Operator
          url: https://github.com/foundation-model-stack/multi-nic-cni
        maintainers:
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: minzhang@redhat.com
          name: Min Zhang
        - email: ebendror@redhat.com
          name: Eran Ben Dror
        maturity: alpha
        provider:
          name: Foundation Model Stack
        relatedImages:
        - ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.3.1
        - quay.io/community-operator-pipeline-prod/multi-nic-cni-operator:1.3.1
        version: 1.3.1
      entries:
      - name: multi-nic-cni-operator.v1.3.1
        version: 1.3.1
      - name: multi-nic-cni-operator.v1.3.0
        version: 1.3.0
      - name: multi-nic-cni-operator.v1.2.9
        version: 1.2.9
      - name: multi-nic-cni-operator.v1.2.8
        version: 1.2.8
      - name: multi-nic-cni-operator.v1.2.2
        version: 1.2.2
      - name: multi-nic-cni-operator.v1.2.1
        version: 1.2.1
      - name: multi-nic-cni-operator.v1.0.2
        version: 1.0.2
      name: alpha
    - currentCSV: multi-nic-cni-operator.v1.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nic-cni-operator-multi-nicd",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.7",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nicd"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.7",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "multi-nic-cni-operator-highspeed",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "highspeed"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-node-1",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "node-1"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3-192.168.0.0-26"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "ipvlanl3"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.7
          createdAt: "2025-05-09T12:45:12Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CIDR is the Schema for the cidrs API
            displayName: CIDR
            kind: CIDR
            name: cidrs.multinic.fms.io
            version: v1
          - description: Config is the Schema for the configs API
            displayName: Config
            kind: Config
            name: configs.multinic.fms.io
            version: v1
          - description: DeviceClass is the Schema for the deviceclasses API
            displayName: Device Class
            kind: DeviceClass
            name: deviceclasses.multinic.fms.io
            version: v1
          - description: HostInterface is the Schema for the hostinterfaces API
            displayName: Host Interface
            kind: HostInterface
            name: hostinterfaces.multinic.fms.io
            version: v1
          - description: IPPool is the Schema for the ippools API
            displayName: IPPool
            kind: IPPool
            name: ippools.multinic.fms.io
            version: v1
          - description: MultiNicNetwork is the Schema for the multinicnetworks API
            displayName: Multi Nic Network
            kind: MultiNicNetwork
            name: multinicnetworks.multinic.fms.io
            version: v1
        description: "Multi-NIC CNI Operator helps to attaching secondary network
          interfaces that is linked to \ndifferent network interfaces on host (NIC)
          to pod provides benefits of network segmentation \nand top-up network bandwidth
          in the containerization system.\n\nMulti-NIC CNI is the CNI plugin operating
          on top of Multus CNI. \nHowever, instead of defining and handling each secondary
          network interface one by one, \nthis CNI automatically discovers all available
          secondary interfaces and handles them as a NIC pool. \nWith this manner,
          it can provide the following benefits.\n\ni) Common secondary network definition:
          User can manage only one network definition for \n   multiple secondary
          interfaces with a common CNI main plugin such as ipvlan, macvlan, and sr-iov.\n\nii)
          Common NAT-bypassing network solution: All secondary NICs on each host can
          be assigned \n    with non-conflict CIDR and non-conflict L3 routing configuration
          that can omit an overlay networking overhead. \n    Particularyly, the CNI
          is built-in with L3 IPVLAN solution composing of the following functionalities.\n\n
          \   1. Interface-host-devision CIDR Computation: compute allocating CIDR
          range for each host and each interface \n       from a single global subnet
          with the number of bits for hosts and for interface.\n    2. L3 Host Route
          Configuration: configure L3 routes (next hop via dev) in host route table
          according to the computed CIDR.\n    3. Distributed IP Allocation Management:
          manage IP allocation/deallocation distributedly via the communication \n
          \      between CNI program and daemon at each host.\n\niii) Policy-based
          secondary network attachment: Instead of statically set the desired \n     host's
          master interface name one by one, user can define a policy on attaching
          multiple secondary network \n     interfaces such as specifying only the
          number of desired interfaces, filtering only highspeed NICs.\n\n## Instructions\n\nPlease
          check the [User Guide](https://foundation-model-stack.github.io/multi-nic-cni/user_guide/)"
        displayName: multi-nic-cni-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multi-nic
        - cni
        - network
        links:
        - name: Multi-NIC CNI Operator
          url: https://github.com/foundation-model-stack/multi-nic-cni
        maintainers:
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: minzhang@redhat.com
          name: Min Zhang
        - email: ebendror@redhat.com
          name: Eran Ben Dror
        maturity: alpha
        provider:
          name: Foundation Model Stack
        relatedImages:
        - ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.7
        - quay.io/community-operator-pipeline-prod/multi-nic-cni-operator:1.2.7
        version: 1.2.7
      entries:
      - name: multi-nic-cni-operator.v1.2.7
        version: 1.2.7
      - name: multi-nic-cni-operator.v1.2.3
        version: 1.2.3
      - name: multi-nic-cni-operator.v1.2.0
        version: 1.2.0
      - name: multi-nic-cni-operator.v1.1.0
        version: 1.1.0
      name: beta
    - currentCSV: multi-nic-cni-operator.v1.2.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nic-cni-operator-multi-nicd",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.6",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nicd"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.6",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "multi-nic-cni-operator-highspeed",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "highspeed"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-node-1",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "node-1"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3-192.168.0.0-26"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "ipvlanl3"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.6
          createdAt: "2025-03-24T14:49:54Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CIDR is the Schema for the cidrs API
            displayName: CIDR
            kind: CIDR
            name: cidrs.multinic.fms.io
            version: v1
          - description: Config is the Schema for the configs API
            displayName: Config
            kind: Config
            name: configs.multinic.fms.io
            version: v1
          - description: DeviceClass is the Schema for the deviceclasses API
            displayName: Device Class
            kind: DeviceClass
            name: deviceclasses.multinic.fms.io
            version: v1
          - description: HostInterface is the Schema for the hostinterfaces API
            displayName: Host Interface
            kind: HostInterface
            name: hostinterfaces.multinic.fms.io
            version: v1
          - description: IPPool is the Schema for the ippools API
            displayName: IPPool
            kind: IPPool
            name: ippools.multinic.fms.io
            version: v1
          - description: MultiNicNetwork is the Schema for the multinicnetworks API
            displayName: Multi Nic Network
            kind: MultiNicNetwork
            name: multinicnetworks.multinic.fms.io
            version: v1
        description: "Multi-NIC CNI Operator helps to attaching secondary network
          interfaces that is linked to \ndifferent network interfaces on host (NIC)
          to pod provides benefits of network segmentation \nand top-up network bandwidth
          in the containerization system.\n\nMulti-NIC CNI is the CNI plugin operating
          on top of Multus CNI. \nHowever, instead of defining and handling each secondary
          network interface one by one, \nthis CNI automatically discovers all available
          secondary interfaces and handles them as a NIC pool. \nWith this manner,
          it can provide the following benefits.\n\ni) Common secondary network definition:
          User can manage only one network definition for \n   multiple secondary
          interfaces with a common CNI main plugin such as ipvlan, macvlan, and sr-iov.\n\nii)
          Common NAT-bypassing network solution: All secondary NICs on each host can
          be assigned \n    with non-conflict CIDR and non-conflict L3 routing configuration
          that can omit an overlay networking overhead. \n    Particularyly, the CNI
          is built-in with L3 IPVLAN solution composing of the following functionalities.\n\n
          \   1. Interface-host-devision CIDR Computation: compute allocating CIDR
          range for each host and each interface \n       from a single global subnet
          with the number of bits for hosts and for interface.\n    2. L3 Host Route
          Configuration: configure L3 routes (next hop via dev) in host route table
          according to the computed CIDR.\n    3. Distributed IP Allocation Management:
          manage IP allocation/deallocation distributedly via the communication \n
          \      between CNI program and daemon at each host.\n\niii) Policy-based
          secondary network attachment: Instead of statically set the desired \n     host's
          master interface name one by one, user can define a policy on attaching
          multiple secondary network \n     interfaces such as specifying only the
          number of desired interfaces, filtering only highspeed NICs.\n\n## Instructions\n\nPlease
          check the [User Guide](https://foundation-model-stack.github.io/multi-nic-cni/user_guide/)"
        displayName: multi-nic-cni-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multi-nic
        - cni
        - network
        links:
        - name: Multi-NIC CNI Operator
          url: https://github.com/foundation-model-stack/multi-nic-cni
        maintainers:
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: minzhang@redhat.com
          name: Min Zhang
        - email: ebendror@redhat.com
          name: Eran Ben Dror
        maturity: alpha
        provider:
          name: Foundation Model Stack
        relatedImages:
        - ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.6
        - quay.io/community-operator-pipeline-prod/multi-nic-cni-operator:1.2.6
        version: 1.2.6
      entries:
      - name: multi-nic-cni-operator.v1.2.6
        version: 1.2.6
      - name: multi-nic-cni-operator.v1.2.5
        version: 1.2.5
      - name: multi-nic-cni-operator.v1.2.4
        version: 1.2.4
      - name: multi-nic-cni-operator.v1.0.5
        version: 1.0.5
      - name: multi-nic-cni-operator.v1.0.4
        version: 1.0.4
      - name: multi-nic-cni-operator.v1.0.3
        version: 1.0.3
      name: stable
    defaultChannel: stable
    packageName: multi-nic-cni-operator
    provider:
      name: Foundation Model Stack
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sns-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sns-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sns.services.k8s.aws/v1alpha1",
                "kind": "PlatformApplication",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sns.services.k8s.aws/v1alpha1",
                "kind": "PlatformEndpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sns.services.k8s.aws/v1alpha1",
                "kind": "Topic",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sns-controller:1.3.0
          createdAt: "2025-11-29T04:10:34Z"
          description: AWS SNS controller is a service controller for managing SNS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PlatformApplication represents the state of an AWS sns PlatformApplication
              resource.
            displayName: PlatformApplication
            kind: PlatformApplication
            name: platformapplications.sns.services.k8s.aws
            version: v1alpha1
          - description: PlatformEndpoint represents the state of an AWS sns PlatformEndpoint
              resource.
            displayName: PlatformEndpoint
            kind: PlatformEndpoint
            name: platformendpoints.sns.services.k8s.aws
            version: v1alpha1
          - description: Subscription represents the state of an AWS sns Subscription
              resource.
            displayName: Subscription
            kind: Subscription
            name: subscriptions.sns.services.k8s.aws
            version: v1alpha1
          - description: Topic represents the state of an AWS sns Topic resource.
            displayName: Topic
            kind: Topic
            name: topics.sns.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Simple Notification Service (SNS) resources in AWS from within your Kubernetes cluster.

          **About Amazon SNS**

          Amazon Simple Notification Service (Amazon SNS) is a managed service that provides message delivery from publishers to subscribers (also known as producers and consumers). Publishers communicate asynchronously with subscribers by sending messages to a topic, which is a logical access point and communication channel. Clients can subscribe to the SNS topic and receive published messages using a supported endpoint type, such as Amazon Kinesis Data Firehose, Amazon SQS, AWS Lambda, HTTP, email, mobile push notifications, and mobile text messages (SMS).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SNS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sns
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SNS Developer Resources
          url: https://aws.amazon.com/sns/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: sns maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sns-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-sns-controller@sha256:49d4f5f5a7747cdbdae724153d6afce7fdea9a340707e6c6aa0e946bd9295d79
        version: 1.3.0
      entries:
      - name: ack-sns-controller.v1.3.0
        version: 1.3.0
      - name: ack-sns-controller.v1.2.3
        version: 1.2.3
      - name: ack-sns-controller.v1.2.2
        version: 1.2.2
      - name: ack-sns-controller.v1.2.1
        version: 1.2.1
      - name: ack-sns-controller.v1.2.0
        version: 1.2.0
      - name: ack-sns-controller.v1.1.16
        version: 1.1.16
      name: alpha
    defaultChannel: alpha
    packageName: ack-sns-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Microsoft
      provider-url: ""
    name: azure-service-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: azure-service-operator.v1.0.59040
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "APIMgmtAPI",
                "metadata": {
                  "name": "aso-apimgmtapi-sample"
                },
                "spec": {
                  "apiId": "apiId0",
                  "apiService": "apimservice-sample",
                  "location": "westus",
                  "properties": {
                    "apiVersionDescription": "API version description",
                    "description": "API description",
                    "displayName": "aso-apimgmtapi-sample",
                    "isCurrent": true,
                    "isOnline": true,
                    "path": "/api/test",
                    "protocols": [
                      "http"
                    ],
                    "subscriptionRequired": false
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "ApimService",
                "metadata": {
                  "name": "apimservice-sample"
                },
                "spec": {
                  "appInsightsName": "appinsights-sample-wmm",
                  "appInsightsResourceGroup": "resourcegroup-azure-operators-wmm",
                  "location": "westus",
                  "publisherEmail": {
                    "Your email": ""
                  },
                  "publisherName": {
                    "Your name": ""
                  },
                  "resourceGroup": "resourcegroup-azure-operators",
                  "tier": "premium",
                  "vnetName": "virtualnetwork-sample",
                  "vnetResourceGroup": "resourcegroup-azure-operators",
                  "vnetSubnetName": "test1",
                  "vnetType": "none"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AppInsights",
                "metadata": {
                  "name": "appinsights-sample"
                },
                "spec": {
                  "applicationType": "other",
                  "kind": "other",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AppInsightsApiKey",
                "metadata": {
                  "name": "key-sample"
                },
                "spec": {
                  "appInsights": "appinsights-sample",
                  "authSDKControlChannel": true,
                  "readTelemetry": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "writeAnnotations": true
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureLoadBalancer",
                "metadata": {
                  "name": "lb-sample-01"
                },
                "spec": {
                  "backendAddressPoolName": "test",
                  "backendPort": 3000,
                  "frontendPortRangeEnd": 2000,
                  "frontendPortRangeStart": 1001,
                  "inboundNatPoolName": "test",
                  "location": "SouthCentralUS",
                  "publicIPAddressName": "lb-pip-sample-01",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureNetworkInterface",
                "metadata": {
                  "name": "nic-sample-01"
                },
                "spec": {
                  "location": "SouthCentralUS",
                  "publicIPAddressName": "nic-pip-sample-01",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnetName": "test1",
                  "vnetName": "vnet-sample-01"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureNetworkInterface",
                "metadata": {
                  "name": "nic-sample-02"
                },
                "spec": {
                  "location": "SouthCentralUS",
                  "publicIPAddressName": "nic-pip-sample-02",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnetName": "test1",
                  "vnetName": "vnet-sample-02"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzurePublicIPAddress",
                "metadata": {
                  "name": "lb-pip-sample-01"
                },
                "spec": {
                  "idleTimeoutInMinutes": 10,
                  "location": "SouthCentralUS",
                  "publicIPAddressVersion": "IPv4",
                  "publicIPAllocationMethod": "Static",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "skuName": "Basic"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzurePublicIPAddress",
                "metadata": {
                  "name": "nic-pip-sample-01"
                },
                "spec": {
                  "idleTimeoutInMinutes": 10,
                  "location": "SouthCentralUS",
                  "publicIPAddressVersion": "IPv4",
                  "publicIPAllocationMethod": "Static",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "skuName": "Basic"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzurePublicIPAddress",
                "metadata": {
                  "name": "nic-pip-sample-02"
                },
                "spec": {
                  "idleTimeoutInMinutes": 10,
                  "location": "SouthCentralUS",
                  "publicIPAddressVersion": "IPv4",
                  "publicIPAllocationMethod": "Static",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "skuName": "Basic"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSQLManagedUser",
                "metadata": {
                  "name": "azuresqlmanageduser-sample"
                },
                "spec": {
                  "dbName": "azuresqldatabase-sample",
                  "managedIdentityClientId": null,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "db_owner"
                  ],
                  "server": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSQLUser",
                "metadata": {
                  "name": "sqluser-sample"
                },
                "spec": {
                  "dbName": "azuresqldatabase-sample1",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "db_owner"
                  ],
                  "server": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSQLVNetRule",
                "metadata": {
                  "name": "azuresqlvnetrule-sample"
                },
                "spec": {
                  "ignoreMissingServiceEndpoint": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "subnetName": "test1",
                  "vNetName": "virtualnetwork-sample",
                  "vNetResourceGroup": "resourcegroup-vnet",
                  "vNetSubscriptionID": {
                    "vnet_subscription_id": ""
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlAction",
                "metadata": {
                  "name": "azuresqlaction-sample"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverName": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlDatabase",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "azuresqldatabase-sample1"
                },
                "spec": {
                  "edition": 0,
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlDatabase",
                "metadata": {
                  "labels": {
                    "tag1": "valueA",
                    "tag2": "valueB"
                  },
                  "name": "azuresqldatabase-sample3"
                },
                "spec": {
                  "edition": 0,
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlFailoverGroup",
                "metadata": {
                  "name": "azuresqlfailovergroup-sample"
                },
                "spec": {
                  "databaselist": [
                    "azuresqldatabase-sample1",
                    "azuresqldatabase-sample2"
                  ],
                  "failovergraceperiod": 30,
                  "failoverpolicy": "Automatic",
                  "location": "eastus",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "secondaryserver": "sqlserver-samplesec",
                  "secondaryserverresourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-samplepri"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlFirewallRule",
                "metadata": {
                  "name": "sqlf-allowazuresvcaccess"
                },
                "spec": {
                  "endipaddress": "0.0.0.0",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "startipaddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "sqlserver-sample-777"
                },
                "spec": {
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "sqlserver-sample777"
                },
                "spec": {
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVMScaleSet",
                "metadata": {
                  "name": "vmss-sample-01"
                },
                "spec": {
                  "adminUserName": "azureuser7",
                  "backendAddressPoolName": "test",
                  "capacity": 3,
                  "inboundNatPoolName": "test",
                  "loadBalancerName": "lb-sample-01",
                  "location": "SouthCentralUS",
                  "osType": "Linux",
                  "platformImageURN": "Canonical:UbuntuServer:16.04-LTS:latest",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sshPublicKeyData": "{ssh public key}",
                  "subnetName": "test1",
                  "virtualNetworkName": "vnet-sample-01",
                  "vmSize": "Standard_DS1_v2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVirtualMachine",
                "metadata": {
                  "name": "hpfvm1"
                },
                "spec": {
                  "adminUserName": "azureuser",
                  "location": "SouthCentralUS",
                  "networkInterfaceName": "nic-sample-02",
                  "osType": "Linux",
                  "platformImageURN": "Canonical:UbuntuServer:16.04-LTS:latest",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sshPublicKeyData": {
                    "ssh key": ""
                  },
                  "vmSize": "Standard_DS1_v2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVirtualMachine",
                "metadata": {
                  "name": "hpfvm20"
                },
                "spec": {
                  "adminUserName": "azureuser",
                  "location": "SouthCentralUS",
                  "networkInterfaceName": "nic-sample-01",
                  "osType": "Linux",
                  "platformImageURN": "Canonical:UbuntuServer:16.04-LTS:latest",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sshPublicKeyData": "{ssh public key}",
                  "vmSize": "Standard_DS1_v2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVirtualMachineExtension",
                "metadata": {
                  "name": "vmext20a"
                },
                "spec": {
                  "autoUpgradeMinorVersion": true,
                  "forceUpdateTag": "Test2",
                  "location": "SouthCentralUS",
                  "protectedSettings": "{}",
                  "publisher": "Microsoft.Azure.Extensions",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "settings": "{\"commandToExecute\":\"echo 'hello, world'\"}",
                  "typeHandlerVersion": "2.1",
                  "typeName": "CustomScript",
                  "vmName": "vm20"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "BlobContainer",
                "metadata": {
                  "name": "blobcontainer-sample"
                },
                "spec": {
                  "accesslevel": "Container",
                  "accountname": "storageaccountsample777",
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "ConsumerGroup",
                "metadata": {
                  "name": "consumergroup-sample-1"
                },
                "spec": {
                  "eventHub": "eventhub-sample-1",
                  "namespace": "eventhubnamespace-sample-1",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "CosmosDB",
                "metadata": {
                  "name": "cosmosdb-sample-1"
                },
                "spec": {
                  "kind": "GlobalDocumentDB",
                  "location": "westus",
                  "properties": {
                    "databaseAccountOfferType": "Standard",
                    "isVirtualNetworkFilterEnabled": true
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "CosmosDB",
                "metadata": {
                  "labels": {
                    "CosmosAccountType": "Production"
                  },
                  "name": "cosmosdb-sample-2"
                },
                "spec": {
                  "ipRules": [
                    "104.42.195.92,40.76.54.131,52.176.6.30,52.169.50.45,52.187.184.26"
                  ],
                  "kind": "GlobalDocumentDB",
                  "location": "eastus",
                  "locations": [
                    {
                      "failoverPriority": 0,
                      "isZoneRedundant": true,
                      "locationName": "eastus"
                    },
                    {
                      "failoverPriority": 1,
                      "locationName": "westus"
                    }
                  ],
                  "properties": {
                    "databaseAccountOfferType": "Standard",
                    "enableMultipleWriteLocations": true
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "Eventhub",
                "metadata": {
                  "name": "eventhub-sample-1"
                },
                "spec": {
                  "authorizationRule": {
                    "name": "RootManageSharedAccessKey",
                    "rights": [
                      "Listen",
                      "Manage",
                      "Send"
                    ]
                  },
                  "location": "westus",
                  "namespace": "eventhubnamespace-sample-1",
                  "properties": {
                    "messageRetentionInDays": 7,
                    "partitionCount": 2
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "Eventhub",
                "metadata": {
                  "name": "eventhub-sample-2307-10-capture"
                },
                "spec": {
                  "authorizationRule": {
                    "name": "RootManageSharedAccessKey",
                    "rights": [
                      "Listen",
                      "Manage",
                      "Send"
                    ]
                  },
                  "location": "westus",
                  "namespace": "eventhubnamespace-sample-1",
                  "properties": {
                    "captureDescription": {
                      "destination": {
                        "archiveNameFormat": "{Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}",
                        "blobContainer": "capturecontainer",
                        "name": "EventHubArchive.AzureBlockBlob",
                        "storageAccount": {
                          "accountName": "storageaccountauv1",
                          "resourceGroup": "my-resource-group"
                        }
                      },
                      "enabled": true,
                      "intervalInSeconds": 120,
                      "sizeLimitInBytes": 524288000
                    },
                    "messageRetentionInDays": 7,
                    "partitionCount": 2
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "EventhubNamespace",
                "metadata": {
                  "name": "eventhubnamespace-sample-1"
                },
                "spec": {
                  "location": "westus",
                  "properties": {
                    "isAutoInflateEnabled": false,
                    "kafkaEnabled": false,
                    "maximumThroughputUnits": 0
                  },
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sku": {
                    "capacity": 1,
                    "name": "Standard",
                    "tier": "Standard"
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "KeyVault",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "keyvaultsample123"
                },
                "spec": {
                  "accessPolicies": [
                    {
                      "objectID": "\u003cobjectID\u003e",
                      "permissions": {
                        "certificates": [
                          "list",
                          "get"
                        ],
                        "keys": [
                          "list",
                          "get"
                        ],
                        "secrets": [
                          "list",
                          "get"
                        ],
                        "storage": [
                          "list",
                          "get"
                        ]
                      },
                      "tenantID": "\u003ctenantID\u003e"
                    }
                  ],
                  "enableSoftDelete": false,
                  "location": "westus",
                  "networkPolicies": {
                    "bypass": "AzureServices",
                    "defaultAction": "Allow",
                    "ipRules": [
                      "172.16.0.0/24",
                      "172.16.1.0/24"
                    ],
                    "virtualNetworkRules": [
                      "/subscriptions/\u003csubid\u003e/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1",
                      "/subscriptions/\u003csubid\u003e/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet2"
                    ]
                  },
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sku": {
                    "name": "standard"
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "KeyVault",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "keyvaultsample123-simple"
                },
                "spec": {
                  "enableSoftDelete": false,
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "KeyVaultKey",
                "metadata": {
                  "name": "keyvaultkey-sample"
                },
                "spec": {
                  "keySize": 4096,
                  "keyVault": "keyvaultsample123",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "type": "RSA"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLDatabase",
                "metadata": {
                  "name": "mysqldatabase-sample"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLDatabase",
                "metadata": {
                  "name": "mysqldatabase-sample2"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLFirewallRule",
                "metadata": {
                  "name": "mysqlfirewallrule-sample"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLFirewallRule",
                "metadata": {
                  "name": "mysqlfirewallrule-sample2"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample2",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLServer",
                "metadata": {
                  "name": "mysqlserver-replica"
                },
                "spec": {
                  "createMode": "Replica",
                  "location": "eastus2",
                  "replicaProperties": {
                    "sourceServerId": "/subscriptions/{SUBID}/resourceGroups/resourcegroup-azure-operators/providers/Microsoft.DBforMySQL/servers/mysqlserver-sample"
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLServer",
                "metadata": {
                  "name": "mysqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus2",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "8.0",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLServer",
                "metadata": {
                  "name": "mysqlserver-sample2"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus2",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "8.0",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLUser",
                "metadata": {
                  "name": "mysqluser-sample"
                },
                "spec": {
                  "dbName": "mysqldatabase-sample",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "SELECT"
                  ],
                  "server": "mysqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLVNetRule",
                "metadata": {
                  "name": "mysqlvnetrule-sample"
                },
                "spec": {
                  "ignoreMissingServiceEndpoint": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample",
                  "subnetName": "test1",
                  "vNetName": "virtualnetwork-sample",
                  "vNetResourceGroup": "resourcegroup-vnet",
                  "vNetSubscriptionID": {
                    "vnet_subscription_id": ""
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLDatabase",
                "metadata": {
                  "name": "postgresqldatabase-sample"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLDatabase",
                "metadata": {
                  "name": "postgresqldatabase-sample2"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLFirewallRule",
                "metadata": {
                  "name": "postgresqlfirewallrule-sample"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLFirewallRule",
                "metadata": {
                  "name": "postgresqlfirewallrule-sample2"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample2",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "name": "postgresqlserver-replica3"
                },
                "spec": {
                  "createMode": "Replica",
                  "location": "eastus",
                  "replicaProperties": {
                    "sourceServerId": "/subscriptions/{subscription ID}/resourceGroups/resourcegroup-azure-operators/providers/Microsoft.DBforPostgreSQL/servers/postgresqlserver-sample"
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "name": "postgresqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "10",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "name": "postgresqlserver-sample2"
                },
                "spec": {
                  "location": "southcentralus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "10",
                  "sku": {
                    "capacity": 2,
                    "family": "Gen5",
                    "name": "B_Gen5_2",
                    "size": "51200",
                    "tier": "Basic"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLUser",
                "metadata": {
                  "name": "psqluser-sample"
                },
                "spec": {
                  "dbName": "postgresqldatabase-sample",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "azure_pg_admin"
                  ],
                  "server": "postgresqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLVNetRule",
                "metadata": {
                  "name": "postgresqlvnetrule-sample1"
                },
                "spec": {
                  "ignoreMissingServiceEndpoint": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample",
                  "subnetName": "test1",
                  "vNetName": "virtualnetwork-sample",
                  "vNetResourceGroup": "resourcegroup-azure-operators",
                  "vNetSubscriptionID": {
                    "vnet_subscription_id": ""
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "RedisCache",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "rediscache-sample-1"
                },
                "spec": {
                  "location": "westus",
                  "properties": {
                    "enableNonSslPort": true,
                    "sku": {
                      "capacity": 1,
                      "family": "C",
                      "name": "Basic"
                    }
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "RedisCacheAction",
                "metadata": {
                  "name": "rediscacheaction-sample-1"
                },
                "spec": {
                  "actionName": "rollallkeys",
                  "cacheName": "rediscache-sample-1",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "RedisCacheFirewallRule",
                "metadata": {
                  "name": "rediscachefirewallrule"
                },
                "spec": {
                  "properties": {
                    "endIP": "0.0.0.0",
                    "startIP": "0.0.0.0"
                  },
                  "redisCache": "rediscache-sample-1",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "ResourceGroup",
                "metadata": {
                  "name": "resourcegroup-azure-operators"
                },
                "spec": {
                  "location": "westus"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "StorageAccount",
                "metadata": {
                  "name": "storageaccountsample777"
                },
                "spec": {
                  "accessTier": "Hot",
                  "kind": "StorageV2",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sku": {
                    "name": "Standard_RAGRS"
                  },
                  "supportsHttpsTrafficOnly": true
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "VirtualNetwork",
                "metadata": {
                  "name": "vnet-sample-01"
                },
                "spec": {
                  "addressSpace": "10.0.0.0/8",
                  "location": "SouthCentralUS",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnets": [
                    {
                      "subnetAddressPrefix": "10.1.0.0/16",
                      "subnetName": "test1"
                    },
                    {
                      "subnetAddressPrefix": "10.2.0.0/16",
                      "subnetName": "test2"
                    }
                  ]
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "VirtualNetwork",
                "metadata": {
                  "name": "vnet-sample-02"
                },
                "spec": {
                  "addressSpace": "10.0.0.0/8",
                  "location": "SouthCentralUS",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnets": [
                    {
                      "subnetAddressPrefix": "10.1.0.0/16",
                      "subnetName": "test1"
                    },
                    {
                      "subnetAddressPrefix": "10.2.0.0/16",
                      "subnetName": "test2"
                    }
                  ]
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha2",
                "kind": "BlobContainer",
                "metadata": {
                  "name": "blobcontainer-sample"
                },
                "spec": {
                  "accessLevel": "Container",
                  "accountName": "storageaccountsample777",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha2",
                "kind": "MySQLServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "mysqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus2",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "8.0",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha2",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "postgresqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "10",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlDatabase",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "azuresqldatabase-sample"
                },
                "spec": {
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "sku": {
                    "name": "Basic",
                    "tier": "Basic"
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlFailoverGroup",
                "metadata": {
                  "name": "azuresqlfailovergroup-sample"
                },
                "spec": {
                  "databaseList": [
                    "azuresqldatabase-sample",
                    "azuresqldatabase-sample2"
                  ],
                  "failoverGracePeriod": 30,
                  "failoverPolicy": "automatic",
                  "location": "eastus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "secondaryServer": "sqlserver-samplesec",
                  "secondaryServerResourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-samplepri"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlFirewallRule",
                "metadata": {
                  "name": "sqlf-allowazuresvcaccess"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "sqlserver-sample-777"
                },
                "spec": {
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Cloud Provider
          certified: "false"
          containerImage: mcr.microsoft.com/k8s/azureserviceoperator:1.0.59040
          createdAt: Mon 12 Jun 2023 04:24:02 UTC
          description: The Azure Service Operator helps you provision Azure resources
            and connect your applications to them from within Kubernetes.
          displayName: Azure Service Operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Azure/azure-service-operator
          support: https://github.com/Azure/azure-service-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Creates an API with the specified properties in the specified
              API Management service.
            displayName: APIMgmtAPI
            kind: APIMgmtAPI
            name: apimgmtapis.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an API Management instance into a specified Resource
              Group at the specified location. It also provides the option to link
              to an Application Insights instance for logging, and to place the API
              Management instance in a specified Virtual Network.
            displayName: ApimService
            kind: ApimService
            name: apimservices.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Application Insights instance into a specified
              Resource Group at the specified location.
            displayName: AppInsights
            kind: AppInsights
            name: appinsights.azure.microsoft.com
            version: v1alpha1
          - description: Creates an Api Key to access a given Application Insights
              instance.
            displayName: AppInsightsApiKey
            kind: AppInsightsApiKey
            name: appinsightsapikeys.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Load Balancer (LB) into a specified Resource
              Group at the specified location.
            displayName: AzureLoadBalancer
            kind: AzureLoadBalancer
            name: azureloadbalancers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Network Interface (NIC) into a specified
              Resource Group at the specified location. Users can specify underlying
              public IP address and virtual network configurations in their NIC setup.
            displayName: AzureNetworkInterface
            kind: AzureNetworkInterface
            name: azurenetworkinterfaces.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Public IP Address (PIP) into a specified
              Resource Group at the specified location. Users can specify IP allocation
              method, idle timeout, IP address version, and SKU.
            displayName: AzurePublicIPAddress
            kind: AzurePublicIPAddress
            name: azurepublicipaddresses.azure.microsoft.com
            version: v1alpha1
          - description: Allows you to roll the password for the specified SQL server.
            displayName: AzureSqlAction
            kind: AzureSqlAction
            name: azuresqlactions.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an SQL database given the SQL server.
            displayName: AzureSqlDatabase
            kind: AzureSqlDatabase
            name: azuresqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an SQL database given the SQL server
            displayName: AzureSqlDatabase
            kind: AzureSqlDatabase
            name: azuresqldatabases.azure.microsoft.com
            version: v1beta1
          - description: Deploys a failover group on a specified Azure SQL server
              given the secondary server and the databases to failover.
            displayName: AzureSqlFailoverGroup
            kind: AzureSqlFailoverGroup
            name: azuresqlfailovergroups.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a failover group on a specified Azure SQL server
              given the secondary server and the databases to failover.
            displayName: AzureSqlFailoverGroup
            kind: AzureSqlFailoverGroup
            name: azuresqlfailovergroups.azure.microsoft.com
            version: v1beta1
          - description: Deploys a firewall rule to allow access to the SQL server
              from specific IPs.
            displayName: AzureSqlFirewallRule
            kind: AzureSqlFirewallRule
            name: azuresqlfirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the SQL server
              from specific IPs.
            displayName: AzureSqlFirewallRule
            kind: AzureSqlFirewallRule
            name: azuresqlfirewallrules.azure.microsoft.com
            version: v1beta1
          - description: Binds a specified Managed Identity as a user on the SQL database
            displayName: AzureSQLManagedUser
            kind: AzureSQLManagedUser
            name: azuresqlmanagedusers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure SQL server given the location and Resource
              Group.
            displayName: AzureSqlServer
            kind: AzureSqlServer
            name: azuresqlservers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure SQL server given the location and Resource
              Group.
            displayName: AzureSqlServer
            kind: AzureSqlServer
            name: azuresqlservers.azure.microsoft.com
            version: v1beta1
          - description: Creates an user on the specified Azure SQL database and stores
              the username/password as secrets.
            displayName: AzureSQLUser
            kind: AzureSQLUser
            name: azuresqlusers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a VirtualNetwork rule to allow access to the SQL
              server from specific VNets.
            displayName: AzureSQLVNetRule
            kind: AzureSQLVNetRule
            name: azuresqlvnetrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys Azure Virtual Machine Extensions to provide post-deployment
              configuration and automation on Azure VMs.
            displayName: AzureVirtualMachineExtension
            kind: AzureVirtualMachineExtension
            name: azurevirtualmachineextensions.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Virtual Machine (VM) into a specified Resource
              Group at the specified location. Users can specify platform image, size,
              user name and public SSH key, etc. for the VM.
            displayName: AzureVirtualMachine
            kind: AzureVirtualMachine
            name: azurevirtualmachines.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Virtual Machine Scale Set (VMSS) into a
              specified Resource Group at the specified location. Users can specify
              platform image, size, user name and public SSH key, etc. for the VMSS.
            displayName: AzureVMScaleSet
            kind: AzureVMScaleSet
            name: azurevmscalesets.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a Blob Container into a specified Resource Group
              at the specified location. A Storage Account must first be created prior
              to creating a Blob Container.
            displayName: BlobContainer
            kind: BlobContainer
            name: blobcontainers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a Blob Container into a specified Resource Group
              at the specified location. A Storage Account must first be created prior
              to creating a Blob Container.
            displayName: BlobContainer
            kind: BlobContainer
            name: blobcontainers.azure.microsoft.com
            version: v1alpha2
          - description: Deploys a consumer group given the Event Hub, Event Hubs
              namespace and Resource Group.
            displayName: ConsumerGroup
            kind: ConsumerGroup
            name: consumergroups.azure.microsoft.com
            version: v1alpha1
          - description: Provision a CosmosDB instance given the Cosmos DB instance
              type, location, and Resource Group.
            displayName: CosmosDB
            kind: CosmosDB
            name: cosmosdbs.azure.microsoft.com
            version: v1alpha1
          - kind: CosmosDBSQLDatabase
            name: cosmosdbsqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Event Hubs namespace given the Resource Group
              and location. Also has the ability to configure SKU, properties, and
              network rules.
            displayName: EventhubNamespace
            kind: EventhubNamespace
            name: eventhubnamespaces.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Event Hubs instance given the Event Hubs namespace,
              Resource Group and Location.
            displayName: Eventhub
            kind: Eventhub
            name: eventhubs.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Key Vault key given the location and Resource
              Group.
            displayName: KeyVaultKey
            kind: KeyVaultKey
            name: keyvaultkeys.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Key Vault given the location and Resource
              Group.
            displayName: KeyVault
            kind: KeyVault
            name: keyvaults.azure.microsoft.com
            version: v1alpha1
          - description: Add an AAD user to an existing MySQL database.
            kind: MySQLAADUser
            name: mysqlaadusers.azure.microsoft.com
            version: v1alpha1
          - description: Add an AAD user to an existing MySQL database.
            kind: MySQLAADUser
            name: mysqlaadusers.azure.microsoft.com
            version: v1alpha2
          - description: Deploys a database under the given Azure Database for MySQL
              server
            displayName: MySQLDatabase
            kind: MySQLDatabase
            name: mysqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the Azure Database
              for MySQL server from the specified IP range.
            displayName: MySQLFirewallRule
            kind: MySQLFirewallRule
            name: mysqlfirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Create an AAD-based admininistrative user in a MySQL server.
            kind: MySQLServerAdministrator
            name: mysqlserveradministrators.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for MySQL server given the Location,
              Resource Group and other properties. Also helps creating read replicas
              for MySQL server.
            displayName: MySQLServer
            kind: MySQLServer
            name: mysqlservers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for MySQL server given the Location,
              Resource Group and other properties. Also helps creating read replicas
              for MySQL server.
            displayName: MySQLServer
            kind: MySQLServer
            name: mysqlservers.azure.microsoft.com
            version: v1alpha2
          - description: Add a new user to an existing MySQL database.
            displayName: MySQLUser
            kind: MySQLUser
            name: mysqlusers.azure.microsoft.com
            version: v1alpha1
          - description: Add a new user to an existing MySQL database.
            kind: MySQLUser
            name: mysqlusers.azure.microsoft.com
            version: v1alpha2
          - description: Add virtual network rules to the MySQL server.
            displayName: MySQLVNetRule
            kind: MySQLVNetRule
            name: mysqlvnetrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a database under the given Azure Database for PostgreSQL
              server.
            displayName: PostgreSQLDatabase
            kind: PostgreSQLDatabase
            name: postgresqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the Azure Database
              for PostgreSQL server from the specified IP range.
            displayName: PostgreSQLFirewallRule
            kind: PostgreSQLFirewallRule
            name: postgresqlfirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for PostgreSQL server given the
              Location and Resource Group.
            displayName: PostgreSQLServer
            kind: PostgreSQLServer
            name: postgresqlservers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for PostgreSQL server given the
              Location and Resource Group.
            displayName: PostgreSQLServer
            kind: PostgreSQLServer
            name: postgresqlservers.azure.microsoft.com
            version: v1alpha2
          - description: Create and Manage Users for Azure Database for PostgreSQL
              server.
            displayName: PostgreSQLUser
            kind: PostgreSQLUser
            name: postgresqlusers.azure.microsoft.com
            version: v1alpha1
          - description: Create and manage VNet service endpoints and VNet rules in
              Azure Database for PostgreSQL.
            displayName: PostgreSQLVNetRule
            kind: PostgreSQLVNetRule
            name: postgresqlvnetrules.azure.microsoft.com
            version: v1alpha1
          - description: Allows you to regenerate keys and reboot the RedisCache cluster.
            displayName: RedisCacheAction
            kind: RedisCacheAction
            name: rediscacheactions.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the RedisCache
              from the specified IP range.
            displayName: RedisCacheFirewallRule
            kind: RedisCacheFirewallRule
            name: rediscachefirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Cache for Redis into a specified Resource
              Group at the specified location.
            displayName: RedisCache
            kind: RedisCache
            name: rediscaches.azure.microsoft.com
            version: v1alpha1
          - description: Provisions a Resource Group given the location and a name.
            displayName: ResourceGroup
            kind: ResourceGroup
            name: resourcegroups.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Storage Account into a specified Resource
              Group at the specified location.
            displayName: StorageAccount
            kind: StorageAccount
            name: storageaccounts.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Virtual Network into a specified Resource
              Group at the specified location, in the address space provided. Users
              are also able to add subnets to their virtual network through the operator.
            displayName: VirtualNetwork
            kind: VirtualNetwork
            name: virtualnetworks.azure.microsoft.com
            version: v1alpha1
        description: |
          ## Overview

          The Azure Service Operator comprises of:

          - The Custom Resource Definitions (CRDs) for each of the Azure services a Kubernetes user can provision.
          - The Kubernetes controller that watches for requests to create Custom Resources for each of these CRDs and creates them.

          The project was built using [Kubebuilder](https://book.kubebuilder.io/).

          Curious to see how it all works? Check out our [control flow diagrams](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/controlflow.md).

          **Note**: The current version of Azure Service Operator only supports watching all namespaces in the cluster.

          ## Supported Azure Services

          - [Resource Group](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/resourcegroup/resourcegroup.md)
          - [Event Hubs](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/eventhub/eventhub.md)
          - [Azure SQL](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/azuresql/azuresql.md)
          - [Azure Database for PostgreSQL](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/postgresql/postgresql.md)
          - [Azure Database for MySQL](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/mysql/mysql.md)
          - [Azure Key Vault](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/keyvault/keyvault.md)
          - [Azure Cache for Redis](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/rediscache/rediscache.md)
          - [Storage Account](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/storage/storageaccount.md)
          - [Blob Storage](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/storage/blobcontainer.md)
          - [Virtual Network](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/virtualnetwork/virtualnetwork.md)
          - [Application Insights](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/appinsights/appinsights.md)
          - [API Management](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/apimgmt/apimgmt.md)
          - [Cosmos DB](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/cosmosdb/cosmosdb.md)
          - [Virtual Machine](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/virtualmachine/virtualmachine.md)
          - [Virtual Machine Scale Set](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/vmscaleset/vmscaleset.md)

          ## Instructions - Please read before installing

          Before you begin, verify you're running the Azure CLI version 2.0.53 or later. Run `az --version` to find the version. If you need to install or upgrade, see [Install Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli).

          1. Create an Azure Service Principal. You'll need this to grant Azure Service Operator permissions to create resources in your subscription.

              First, set the following environment variables to your Azure Tenant ID and Subscription ID with your values:
              ```yaml
              AZURE_TENANT_ID=<your-tenant-id-goes-here>
              AZURE_SUBSCRIPTION_ID=<your-subscription-id-goes-here>
              ```

              You can find these values by using the [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/?view=azure-cli-latest):
              ```sh
              az account show
              ```

          2. Next, we'll create a Service Principal with Contributor permissions for your subscription, so ASO can create resources in your subscription on your behalf. Note that the [ServicePrincipal](https://docs.microsoft.com/en-us/cli/azure/create-an-azure-service-principal-azure-cli) you pass to the command below needs to have access to create resources in your subscription. If you'd like to use Managed Identity for authorization instead, check out instructions [here](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/managedidentity.md).

              ```sh
              az ad sp create-for-rbac -n "azure-service-operator" --role contributor \
                  --scopes /subscriptions/$AZURE_SUBSCRIPTION_ID
              ```

              This should give you output like the following:
              ```sh
              "appId": "xxxxxxxxxx",
              "displayName": "azure-service-operator",
              "name": "http://azure-service-operator",
              "password": "xxxxxxxxxxx",
              "tenant": "xxxxxxxxxxxxx"
              ```

          3.  Once you have created a Service Principal, gather the following values:

              `AZURE_TENANT_ID` is the Tenant ID from Step 1.

              `AZURE_SUBSCRIPTION_ID` is the Subscription ID from Step 1.

              `AZURE_CLIENT_ID` is the appID from the Service Principal created in Step 2.

              `AZURE_CLIENT_SECRET` is the password from the service Principal we created in Step 2.

              `AZURE_CLOUD_ENV` is the Azure Environment you'd like to use, i.e. AzurePublicCloud, AzureUSGovernmentCloud, AzureChinaCloud, AzureGermanCloud.

          4.  Set those values in a `Secret` called `azureoperatorsettings` within the `operators` Namespace:
              ```yaml
              apiVersion: v1
              kind: Secret
              metadata:
                name: azureoperatorsettings
                namespace: operators
              stringData:
                AZURE_TENANT_ID: <your-tenant-id-goes-here>
                AZURE_SUBSCRIPTION_ID: <your-subscription-id-goes-here>
                AZURE_CLIENT_ID: <your-client-id>
                AZURE_CLIENT_SECRET: <your-client-secret>
                AZURE_CLOUD_ENV: <your-azure-cloud-environment>
              ```

          5. Now you can proceed to install the Azure Service Operator to the `operators` Namespace via the Install button on the top right of this page. After the operator is installed, you will then see the Azure Service Operator pod running in your cluster:

              ```console
              $ kubectl get pods -n operators
              NAME                                                READY   STATUS    RESTARTS   AGE
              azureoperator-controller-manager-7dd75bbd97-mk4s9   2/2     Running   0          35s
              ```

          ## About the project

          This project maintains [releases of the Azure Service Operator](https://github.com/Azure/azure-service-operator/releases).

          Please see the [FAQ](https://github.com/Azure/azure-service-operator/blob/main/docs/faq.md) for answers to commonly asked questions about the Azure Service Operator.

          Have more questions? Feel free to consult our documentation [here](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/contents.md).

          ## Contributing

          The [contribution guide](https://github.com/Azure/azure-service-operator/blob/main/CONTRIBUTING.md) covers everything you need to know about how you can contribute to Azure Service Operators. The [developer guide](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/contents.md#developing-azure-service-operator) will help you onboard as a developer.

          ## Support

          Azure Service Operator is an open source project that is **not** covered by the [Microsoft Azure support policy](https://support.microsoft.com/en-us/help/2941892/support-for-linux-and-open-source-technology-in-azure). Please search open issues [here](https://github.com/Azure/azure-service-operator/issues). If your issue isn't already represented, please [open a new one](https://github.com/Azure/azure-service-operator/issues/new/choose). The Azure Service Operator project maintainers will respond to the best of their abilities.

          ## Code of conduct

          This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information, see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.
        displayName: Azure Service Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - azure, microsoft, cloud service broker
        links:
        - name: Azure Service Operator
          url: https://github.com/Azure/azure-service-operator
        maintainers:
        - email: christian.muirhead@microsoft.com
          name: Christian Muirhead
        maturity: stable
        provider:
          name: Microsoft
        relatedImages:
        - mcr.microsoft.com/k8s/azureserviceoperator:1.0.59040
        - quay.io/openshift-community-operators/azure-service-operator@sha256:2430ebe724ead60e84f12aa485c8dae4af82af10d14400ce76356392030c8c0b
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 1.0.59040
      entries:
      - name: azure-service-operator.v1.0.59040
        version: 1.0.59040
      name: stable
    defaultChannel: stable
    packageName: azure-service-operator
    provider:
      name: Microsoft
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: KubeVirt project
      provider-url: ""
    name: community-kubevirt-hyperconverged
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubevirt-hyperconverged-operator.v1.10.7
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployTektonTaskResources":true,"deployVmConsoleProxy":true},"tektonPipelines":{"namespace":"kubevirt"},"tektonTasks":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"mtq.kubevirt.io/v1alpha1","kind":"MTQ","metadata":{"name":"mtq","namespace":"mtq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: quay.io/kubevirt/hyperconverged-cluster-operator@sha256:0ee30557d5d5a42dec19121e70ed77fbdacd8932f55b11e2c7c1a3d5ad5df4aa
          createdAt: "2024-02-09 14:34:30"
          description: A unified operator deploying and controlling KubeVirt and its
            supporting operators with opinionated defaults
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}}'
          operatorframework.io/suggested-namespace: kubevirt-hyperconverged
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","mtqs.mtq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: "false"
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of HyperConverged Cluster Operator
            displayName: HyperConverged Cluster Operator Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a MTQ deployment
            displayName: MTQ deployment
            kind: MTQ
            name: mtqs.mtq.kubevirt.io
            version: v1alpha1
        description: |-
          **HyperConverged Cluster Operator** is an Operator pattern for managing multi-operator products.
          Specifically, the HyperConverged Cluster Operator manages the deployment of KubeVirt,
          Containerized Data Importer (CDI), Virtual Machine import operator and Cluster Network Addons (CNA) operators.

          **KubeVirt** is a virtual machine management add-on for Kubernetes.
          The aim is to provide a common ground for virtualization solutions on top of
          Kubernetes.

          # Virtualization extension for Kubernetes

          At its core, KubeVirt extends [Kubernetes](https://kubernetes.io) by adding
          additional virtualization resource types (especially the `VirtualMachine` type) through
          [Kubernetes's Custom Resource Definitions API](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/).
          By using this mechanism, the Kubernetes API can be used to manage these `VirtualMachine`
          resources alongside all other resources Kubernetes provides.

          The resources themselves are not enough to launch virtual machines.
          For this to happen the _functionality and business logic_ needs to be added to
          the cluster. The functionality is not added to Kubernetes itself, but rather
          added to a Kubernetes cluster by _running_ additional controllers and agents
          on an existing cluster.

          The necessary controllers and agents are provided by KubeVirt.

          As of today KubeVirt can be used to declaratively

            * Create a predefined VM
            * Schedule a VM on a Kubernetes cluster
            * Launch a VM
            * Migrate a VM
            * Stop a VM
            * Delete a VM

          # Start using KubeVirt

            * Try our quickstart at [kubevirt.io](http://kubevirt.io/get_kubevirt/).
            * See our user documentation at [kubevirt.io/docs](http://kubevirt.io/user-guide).

          # Start developing KubeVirt

          To set up a development environment please read our
          [Getting Started Guide](https://github.com/kubevirt/kubevirt/blob/master/docs/getting-started.md).
          To learn how to contribute, please read our [contribution guide](https://github.com/kubevirt/kubevirt/blob/master/CONTRIBUTING.md).

          You can learn more about how KubeVirt is designed (and why it is that way),
          and learn more about the major components by taking a look at our developer documentation:

            * [Architecture](https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md) - High-level view on the architecture
            * [Components](https://github.com/kubevirt/kubevirt/blob/master/docs/components.md) - Detailed look at all components
            * [API Reference](https://github.com/kubevirt/kubevirt/blob/master/https://www.kubevirt.io/api-reference/)

          # Community

          If you got enough of code and want to speak to people, then you got a couple of options:

            * Follow us on [Twitter](https://twitter.com/kubevirt)
            * Chat with us in the #virtualization channel of the [Kubernetes Slack](https://slack.k8s.io/)
            * Discuss with us on the [kubevirt-dev Google Group](https://groups.google.com/forum/#!forum/kubevirt-dev)
            * Stay informed about designs and upcoming events by watching our [community content](https://github.com/kubevirt/community/)

          # License

          KubeVirt is distributed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt).
        displayName: KubeVirt HyperConverged Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        links:
        - name: KubeVirt project
          url: https://kubevirt.io
        - name: Source Code
          url: https://github.com/kubevirt/hyperconverged-cluster-operator
        maintainers:
        - email: kubevirt-dev@googlegroups.com
          name: KubeVirt project
        maturity: alpha
        provider:
          name: KubeVirt project
        relatedImages:
        - quay.io/kubevirt/virt-launcher@sha256:4c5fce3de2e2589197de72fb0c9436490ea318aca952c05a622c43e067023f35
        - quay.io/kubevirt/virt-exportserver@sha256:73311f79a9c71007f8572b3cc40cd6f6da404c7ef0a9c6509fb717d979546582
        - quay.io/kubevirt/virtio-container-disk@sha256:f8e71a3a930ce95d646d80862d5ff6f9d3ed7ef2541dd2e2acec0bce26274734
        - quay.io/kubevirt/cdi-uploadproxy@sha256:551221d79902a5053d1c734b81163d69f087217e2ac13c49bdf6900336ef0786
        - quay.io/kubevirt/hostpath-csi-driver@sha256:0ca8b50b0adb20afd4e20da9974200f3290b6d51aa7c1129de6e1b953bf26594
        - quay.io/kubevirt/virt-exportproxy@sha256:f14444b0200a85efb4b3c176caefe70aabba7d295e33d2af14027a59ce297e24
        - quay.io/kubevirt/hostpath-provisioner-operator@sha256:16ecabb1d733aa17084cd16d88963c5255d04f389e0f4d41941d67e8be973594
        - quay.io/kubevirt/kubemacpool@sha256:3214020c21204c189cdf2d767beb8efb61ee3ef65dd8de7f0f1edc61e13e8adf
        - quay.io/kubevirt/hyperconverged-cluster-webhook@sha256:86c10c122767661e31ee26a9e9de7ea606c2c1168b32793b4ea567ede2ae3b21
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:5ff5392cb762a41ee9bc4767e3a693249ae08b46a4322f623f24ad6b63dd06b5
        - quay.io/kubevirt/cdi-cloner@sha256:9d31b14f23259398c5bac636f5ead13ad0afd6fe8eeab4499e8e047b4d85074f
        - quay.io/kubevirt/cdi-controller@sha256:27c47883a08226f83757971d3adafb0cd9bcb26e58fbcf7208236070e0adf37e
        - registry.k8s.io/sig-storage/livenessprobe@sha256:4dc0b87ccd69f9865b89234d8555d3a614ab0a16ed94a3016ffd27f8106132ce
        - quay.io/kubevirt/cdi-operator@sha256:6c63521d835578b0fbb77d3145b648f95ab0932d5d1b36ff2068ed8fcd91bc5a
        - quay.io/kubevirt/cdi-importer@sha256:3143bbc67cdc6267eb48b7eaac664b8551ac4c11401dfbf4921efd3f233e6ce9
        - quay.io/kubevirt/cluster-network-addons-operator@sha256:f64ab5981d9ddef1662dd0a05888783f5dbadda8ede596585ba80bfc97a0f51e
        - quay.io/kubevirt/hyperconverged-cluster-operator@sha256:0ee30557d5d5a42dec19121e70ed77fbdacd8932f55b11e2c7c1a3d5ad5df4aa
        - quay.io/kubevirt/mtq-operator@sha256:ef5c4bb1fa72f9e6e75d5585ca352f7563720389e6c9876aa8b07d12d1be6194
        - quay.io/kubevirt-ui/kubevirt-apiserver-proxy@sha256:38293a1050bce9c7cb786cbe8719be1edb91a922a6c583eedb61e56729ed4c72
        - quay.io/kubevirt/virt-controller@sha256:0789fafed2913b35a771e3db882748502b3250be04ece86d97f30201779b4e54
        - quay.io/kubevirt/virt-artifacts-server:1.10.7-unstable
        - quay.io/kubevirt/ovs-cni-plugin@sha256:08f72edf2bef876bba0b0f5513d30225304ad5e7ad6912a61c083664acdb99ff
        - quay.io/kubevirt/bridge-marker@sha256:bba066e3b5ff3fb8c5e20861fe8abe51e3c9b50ad6ce3b2616af9cb5479a06d0
        - quay.io/kubevirt/mtq-lock-server@sha256:9614df0d5af7c998bcceaf73b548f2e3b29ff8ee4ca64c32613bfbdd6e452f6c
        - quay.io/kubevirt/kubevirt-template-validator@sha256:a148b6e812b70f326b48d0439b1e44a967a6e1f8cf2f98b1a08e9294a93674eb
        - quay.io/kubevirt/macvtap-cni@sha256:434420511e09b2b5ede785a2c9062b6658ffbc26fbdd4629ce06110f9039c600
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d078dc174323407e8cc6f0f9abd4efaac5db27838f1564d0253d5e3233e3f17f
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:f6717ce72a2615c7fbc746b4068f788e78579c54c43b8716e5ce650d97af2df1
        - quay.io/kubevirt/ssp-operator@sha256:49cac00844f091d6e80301573e00235d685415185ec29c89b4bd7361f938711e
        - quay.io/kubevirt/virt-api@sha256:707003b221496b4432da2f507d1e36e528b45888b5d321e06d460f0678da44ae
        - quay.io/kubevirt-ui/kubevirt-plugin@sha256:e79027973b09aac75860f267c7d7f830599978c38a081001f404b9a1c3d2990f
        - quay.io/kubevirt/hostpath-provisioner@sha256:eae30f37b3e837478a4500144b7bc8eb4f5ddf15f49fa7354bc9d5e240ea8aea
        - quay.io/community-operator-pipeline-prod/community-kubevirt-hyperconverged@sha256:e5e0c3b3a25c13ea916d70fa6f6ddc20f2c730bd9909aa2654672280c27afda2
        - quay.io/kubevirt/virt-operator@sha256:cbca7f93afbb18a840f7e763e4c03aeeb1fd97967f381c12c443cc179b51da29
        - quay.io/kubevirt/cni-default-plugins@sha256:825e3f9fec1996c54a52cec806154945b38f76476b160d554c36e38dfffe5e61
        - quay.io/kubevirt/cdi-apiserver@sha256:e9e39408413b1478d2e98eba68913f9e20c93000558b190b47de73bdfd1d9ac4
        - quay.io/kubevirt/mtq-controller@sha256:96dd73ea0d7847d9f6322192559747bd85655e25ee25482d112e6e3c6fef21b2
        - registry.k8s.io/coredns/coredns@sha256:a0ead06651cf580044aeb0a0feba63591858fb2e43ade8c9dea45a6a89ae7e5e
        - ghcr.io/k8snetworkplumbingwg/multus-cni@sha256:3fbcc32bd4e4d15bd93c96def784a229cd84cca27942bf4858b581f31c97ee02
        - ghcr.io/kubevirt/kubesecondarydns@sha256:e87e829380a1e576384145f78ccaa885ba1d5690d5de7d0b73d40cfb804ea24d
        - quay.io/kubevirt/cdi-uploadserver@sha256:30f1827d3696cf996b081c22c3267ca78e7219c872fdb54950198fa54359f6ee
        - quay.io/kubevirt/libguestfs-tools@sha256:b7e248be783691daad1326cf41641d5042be80c5c057ebc5315ca7a1619b0581
        - quay.io/kubevirt/virt-handler@sha256:138dfda5fea8622f3da0d6413fe214fef80c2fd6a6f9533592a0dbfa7e1865b5
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:f7567bea7f24184da06c3ed87b396c804342fcfd89f54989622780ce0b7b0724
        - ghcr.io/k8snetworkplumbingwg/multus-dynamic-networks-controller@sha256:57573a24923e5588bca6bc337a8b2b08406c5b77583974365d2cf063c0dd5d06
        version: 1.10.7
      entries:
      - name: kubevirt-hyperconverged-operator.v1.10.7
        version: 1.10.7
      name: 1.10.7
    - currentCSV: kubevirt-hyperconverged-operator.v1.11.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployTektonTaskResources":true,"deployVmConsoleProxy":true},"tektonPipelines":{"namespace":"kubevirt"},"tektonTasks":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"mtq.kubevirt.io/v1alpha1","kind":"MTQ","metadata":{"name":"mtq","namespace":"mtq"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: quay.io/kubevirt/hyperconverged-cluster-operator@sha256:dd6538e720f18b723b0807037ca7cc1014cba09e57b20706e10e6eb641ac6acc
          createdAt: "2024-03-06 15:11:00"
          description: A unified operator deploying and controlling KubeVirt and its
            supporting operators with opinionated defaults
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}}'
          operatorframework.io/suggested-namespace: kubevirt-hyperconverged
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: quay.io/kubevirt/must-gather
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","mtqs.mtq.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: "false"
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of HyperConverged Cluster Operator
            displayName: HyperConverged Cluster Operator Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a MTQ deployment
            displayName: MTQ deployment
            kind: MTQ
            name: mtqs.mtq.kubevirt.io
            version: v1alpha1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          **HyperConverged Cluster Operator** is an Operator pattern for managing multi-operator products.
          Specifically, the HyperConverged Cluster Operator manages the deployment of KubeVirt,
          Containerized Data Importer (CDI), Virtual Machine import operator and Cluster Network Addons (CNA) operators.

          **KubeVirt** is a virtual machine management add-on for Kubernetes.
          The aim is to provide a common ground for virtualization solutions on top of
          Kubernetes.

          # Virtualization extension for Kubernetes

          At its core, KubeVirt extends [Kubernetes](https://kubernetes.io) by adding
          additional virtualization resource types (especially the `VirtualMachine` type) through
          [Kubernetes's Custom Resource Definitions API](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/).
          By using this mechanism, the Kubernetes API can be used to manage these `VirtualMachine`
          resources alongside all other resources Kubernetes provides.

          The resources themselves are not enough to launch virtual machines.
          For this to happen the _functionality and business logic_ needs to be added to
          the cluster. The functionality is not added to Kubernetes itself, but rather
          added to a Kubernetes cluster by _running_ additional controllers and agents
          on an existing cluster.

          The necessary controllers and agents are provided by KubeVirt.

          As of today KubeVirt can be used to declaratively

            * Create a predefined VM
            * Schedule a VM on a Kubernetes cluster
            * Launch a VM
            * Migrate a VM
            * Stop a VM
            * Delete a VM

          # Start using KubeVirt

            * Try our quickstart at [kubevirt.io](http://kubevirt.io/get_kubevirt/).
            * See our user documentation at [kubevirt.io/docs](http://kubevirt.io/user-guide).

          # Start developing KubeVirt

          To set up a development environment please read our
          [Getting Started Guide](https://github.com/kubevirt/kubevirt/blob/master/docs/getting-started.md).
          To learn how to contribute, please read our [contribution guide](https://github.com/kubevirt/kubevirt/blob/master/CONTRIBUTING.md).

          You can learn more about how KubeVirt is designed (and why it is that way),
          and learn more about the major components by taking a look at our developer documentation:

            * [Architecture](https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md) - High-level view on the architecture
            * [Components](https://github.com/kubevirt/kubevirt/blob/master/docs/components.md) - Detailed look at all components
            * [API Reference](https://github.com/kubevirt/kubevirt/blob/master/https://www.kubevirt.io/api-reference/)

          # Community

          If you got enough of code and want to speak to people, then you got a couple of options:

            * Follow us on [Twitter](https://twitter.com/kubevirt)
            * Chat with us in the #virtualization channel of the [Kubernetes Slack](https://slack.k8s.io/)
            * Discuss with us on the [kubevirt-dev Google Group](https://groups.google.com/forum/#!forum/kubevirt-dev)
            * Stay informed about designs and upcoming events by watching our [community content](https://github.com/kubevirt/community/)

          # License

          KubeVirt is distributed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt).
        displayName: KubeVirt HyperConverged Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        links:
        - name: KubeVirt project
          url: https://kubevirt.io
        - name: Source Code
          url: https://github.com/kubevirt/hyperconverged-cluster-operator
        maintainers:
        - email: kubevirt-dev@googlegroups.com
          name: KubeVirt project
        maturity: alpha
        provider:
          name: KubeVirt project
        relatedImages:
        - quay.io/kubevirt/cdi-uploadproxy@sha256:b89104ef5513d63cab43b34ac52f752c3d935cb986d5527d920c2c31d3b6f239
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d078dc174323407e8cc6f0f9abd4efaac5db27838f1564d0253d5e3233e3f17f
        - quay.io/kubevirt/macvtap-cni@sha256:850b89343ace7c7ea6b18dd8e11964613974e9d1f7377af03854d407fb15230a
        - quay.io/kubevirt/cdi-controller@sha256:606de89e68be2ac911466e6713345932bda496c1e4f20e34ef5efa270456c9fd
        - quay.io/kubevirt/cni-default-plugins@sha256:c884d6d08f8c0db98964f1eb3877b44ade41fa106083802a9914775df17d5291
        - quay.io/kubevirt/cdi-apiserver@sha256:95f6e71b36883abcb9ec463cfea2332f5490ec9eb3e4868bdf0a4da769279094
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:f1bd6ee18c4021c1c94f29edfab89b49b6a4d1b800936c19dbef2d75f8202f2d
        - quay.io/kubevirt/hostpath-provisioner-operator@sha256:dd2948ca8e62d17eafba40bdcaad8367a97f092fd3b8d9849b2d62aec3152a72
        - quay.io/kubevirt/virt-handler@sha256:238550bb263608ba334b44a15647cbf875482ccfb46049713c14af5d5f0cc788
        - quay.io/kubevirt/kubevirt-template-validator@sha256:f6db539fe4d4b752644c6bc8a308f5a80ae09a71da5c5d535114dc4c3cf18e0a
        - quay.io/kubevirt-ui/kubevirt-apiserver-proxy@sha256:38293a1050bce9c7cb786cbe8719be1edb91a922a6c583eedb61e56729ed4c72
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:e2def4213ec0657e72eb790ae8a115511d5b8f164a62d3568d2f1bff189917e8
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:c53535af8a7f7e3164609838c4b191b42b2d81238d75c1b2a2b582ada62a9780
        - quay.io/kubevirt/mtq-operator@sha256:90c7608b0ba085582a65ccdc11d089049c5e6b0438d018dd9dc76eb3490383c7
        - quay.io/kubevirt/cdi-cloner@sha256:b22985af0ee7b1ce4e1dedded08c853d90d9e7209f98c5d470897bbefce2a063
        - quay.io/kubevirt/ssp-operator@sha256:d57ef05fea09c4690dbe728ebe6a39d9df1a3574dfa7d18346bf3fe66afed702
        - quay.io/kubevirt/bridge-marker@sha256:bba066e3b5ff3fb8c5e20861fe8abe51e3c9b50ad6ce3b2616af9cb5479a06d0
        - quay.io/kubevirt/virt-api@sha256:735662c824da3d6069624d40674163d758c2256f8043cf6f02f505c3a724afa3
        - quay.io/kubevirt/cdi-importer@sha256:7320dce01f4628363992997b592200b4804daf15a9f237cd50a4a6acab7798e8
        - quay.io/kubevirt/virt-artifacts-server@sha256:22fa3218deca38dc98fa0e905df16173a47ccec85707eb91404a367da6480817
        - quay.io/kubevirt/kubemacpool@sha256:cf8daa57ae6603b776d3af512331b143fa03bc2f4b72f28420fddcf5e4156d0a
        - quay.io/kubevirt/virt-exportserver@sha256:f8473fc824f8bac5f21c64b71cdb4227de28f9bb25c049932f1259216b874a86
        - ghcr.io/k8snetworkplumbingwg/multus-cni@sha256:3fbcc32bd4e4d15bd93c96def784a229cd84cca27942bf4858b581f31c97ee02
        - quay.io/kubevirt/hostpath-csi-driver@sha256:8d84b9a33e0ec3749aece7c5f9879d1e0d248e8028ab3f776528a044d387033c
        - quay.io/kubevirt/virtio-container-disk@sha256:f8e71a3a930ce95d646d80862d5ff6f9d3ed7ef2541dd2e2acec0bce26274734
        - quay.io/community-operator-pipeline-prod/community-kubevirt-hyperconverged@sha256:8c65e65bbaf0ebb10dba03655c5854c69c82ddc0e6b2a29293eee029222e5efa
        - registry.k8s.io/sig-storage/livenessprobe@sha256:5baeb4a6d7d517434292758928bb33efc6397368cbb48c8a4cf29496abf4e987
        - quay.io/kubevirt/hyperconverged-cluster-operator@sha256:dd6538e720f18b723b0807037ca7cc1014cba09e57b20706e10e6eb641ac6acc
        - ghcr.io/k8snetworkplumbingwg/multus-dynamic-networks-controller@sha256:57573a24923e5588bca6bc337a8b2b08406c5b77583974365d2cf063c0dd5d06
        - quay.io/kubevirt/aaq-server@sha256:0c6b01c48030e03e99b3ff2b319658c2bf2b2001f4e3e030ba70d1143b25717a
        - quay.io/kubevirt/hyperconverged-cluster-webhook@sha256:70efc16ab2bfec04f73ccc292064d080870659cfd47c2e0c9017ff7b6fd78863
        - quay.io/kubevirt/hostpath-provisioner@sha256:adb1d33e95e8991dc47107926172469b5ecbeace509391ce021ca42d305a41d3
        - ghcr.io/kubevirt/kubesecondarydns@sha256:e87e829380a1e576384145f78ccaa885ba1d5690d5de7d0b73d40cfb804ea24d
        - quay.io/kubevirt/cdi-operator@sha256:8a27e1450c3bf8c1d8924e74470a62419d02ed2202924b082a74e2414b1fc21a
        - quay.io/kubevirt/virt-exportproxy@sha256:942c548d4848a87945eba51683002797eb4e1f5c463a1873115b2ec0e1e6e169
        - quay.io/kubevirt/libguestfs-tools@sha256:4971af1ee42959d366a3db6129ab684d11064e00bbd3c2b36324ad14e90cb903
        - quay.io/kubevirt/mtq-controller@sha256:ae7dd07e4018c63414b021eba34aa4776a6c7d6ff4fcdf9fd2d7ca30aae98a29
        - quay.io/kubevirt/cdi-uploadserver@sha256:16d257e575b2bd504f148f63b57dc181fa6058d33a11ada64888183c3e4d4863
        - quay.io/kubevirt/mtq-lock-server@sha256:8e686107dd9990dab1a3d90ee1068541938f673bf54ea9e1308b2ed7218546b0
        - quay.io/kubevirt/ovs-cni-plugin@sha256:e16ac74343da21abb8fb668ce71e728053d00503a992dae2164b9e94a280113e
        - quay.io/kubevirt/virt-launcher@sha256:4fbfd76561667e98fafc75c0b804f77df251f96471d1121d69f149cf8fb9a4d8
        - quay.io/kubevirt/virt-operator@sha256:0e6d56ea0ebdf9bb832f29ab0dc4603f0f619474bb8bc02a01e0a06e9d8d6f4a
        - registry.k8s.io/coredns/coredns@sha256:a0ead06651cf580044aeb0a0feba63591858fb2e43ade8c9dea45a6a89ae7e5e
        - quay.io/kubevirt-ui/kubevirt-plugin@sha256:4ed1f37116cbaf883edd8783201d091fbbe121fcb84e7184ee531d3b1abd77ab
        - quay.io/kubevirt/aaq-operator@sha256:590d24742401eeff3fb6a9c8ed977c63442f8f0a0505509fae69aa1bf8aa84ae
        - quay.io/kubevirt/virt-controller@sha256:4f576e30b83db7b9f96dde77896898bde87db3517963c4227634d0c3e96bb86d
        - quay.io/kubevirt/cluster-network-addons-operator@sha256:bf17da674ed6dac95aa4fd7637173fd4e026ebb4523b66f529c0eff394a25bcc
        - quay.io/kubevirt/aaq-controller@sha256:cb2fa52ae3f6a1a99b2de77b58c5db54c43ba8ee86c6540b4844c901180ce611
        version: 1.11.0
      entries:
      - name: kubevirt-hyperconverged-operator.v1.11.0
        version: 1.11.0
      name: 1.11.0
    - currentCSV: kubevirt-hyperconverged-operator.v1.16.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployVmConsoleProxy":true},"templateValidator":{"replicas":2}}},{"apiVersion":"ssp.kubevirt.io/v1beta3","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: quay.io/kubevirt/hyperconverged-cluster-operator@sha256:78a1a9f656da5dea20022706ebf61982dd9b63dd5cb4dd75ae98d643e671fbde
          createdAt: "2025-11-11 08:46:34"
          description: A unified operator deploying and controlling KubeVirt and its
            supporting operators with opinionated defaults
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          openshift.io/required-scc: restricted-v2
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}}'
          operatorframework.io/suggested-namespace: kubevirt-hyperconverged
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: quay.io/kubevirt/must-gather
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: "false"
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of HyperConverged Cluster Operator
            displayName: HyperConverged Cluster Operator Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta3
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          **HyperConverged Cluster Operator** is an Operator pattern for managing multi-operator products.
          Specifically, the HyperConverged Cluster Operator manages the deployment of KubeVirt,
          Containerized Data Importer (CDI), Virtual Machine import operator and Cluster Network Addons (CNA) operators.

          **KubeVirt** is a virtual machine management add-on for Kubernetes.
          The aim is to provide a common ground for virtualization solutions on top of
          Kubernetes.

          # Virtualization extension for Kubernetes

          At its core, KubeVirt extends [Kubernetes](https://kubernetes.io) by adding
          additional virtualization resource types (especially the `VirtualMachine` type) through
          [Kubernetes's Custom Resource Definitions API](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/).
          By using this mechanism, the Kubernetes API can be used to manage these `VirtualMachine`
          resources alongside all other resources Kubernetes provides.

          The resources themselves are not enough to launch virtual machines.
          For this to happen the _functionality and business logic_ needs to be added to
          the cluster. The functionality is not added to Kubernetes itself, but rather
          added to a Kubernetes cluster by _running_ additional controllers and agents
          on an existing cluster.

          The necessary controllers and agents are provided by KubeVirt.

          As of today KubeVirt can be used to declaratively

            * Create a predefined VM
            * Schedule a VM on a Kubernetes cluster
            * Launch a VM
            * Migrate a VM
            * Stop a VM
            * Delete a VM

          # Start using KubeVirt

            * Try our quickstart at [kubevirt.io](http://kubevirt.io/get_kubevirt/).
            * See our user documentation at [kubevirt.io/docs](http://kubevirt.io/user-guide).

          # Start developing KubeVirt

          To set up a development environment please read our
          [Getting Started Guide](https://github.com/kubevirt/kubevirt/blob/master/docs/getting-started.md).
          To learn how to contribute, please read our [contribution guide](https://github.com/kubevirt/kubevirt/blob/master/CONTRIBUTING.md).

          You can learn more about how KubeVirt is designed (and why it is that way),
          and learn more about the major components by taking a look at our developer documentation:

            * [Architecture](https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md) - High-level view on the architecture
            * [Components](https://github.com/kubevirt/kubevirt/blob/master/docs/components.md) - Detailed look at all components
            * [API Reference](https://github.com/kubevirt/kubevirt/blob/master/https://www.kubevirt.io/api-reference/)

          # Community

          If you got enough of code and want to speak to people, then you got a couple of options:

            * Follow us on [Twitter](https://twitter.com/kubevirt)
            * Chat with us in the #virtualization channel of the [Kubernetes Slack](https://slack.k8s.io/)
            * Discuss with us on the [kubevirt-dev Google Group](https://groups.google.com/forum/#!forum/kubevirt-dev)
            * Stay informed about designs and upcoming events by watching our [community content](https://github.com/kubevirt/community/)

          # License

          KubeVirt is distributed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt).
        displayName: KubeVirt HyperConverged Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        links:
        - name: KubeVirt project
          url: https://kubevirt.io
        - name: Source Code
          url: https://github.com/kubevirt/hyperconverged-cluster-operator
        maintainers:
        - email: kubevirt-dev@googlegroups.com
          name: KubeVirt project
        maturity: alpha
        provider:
          name: KubeVirt project
        relatedImages:
        - registry.k8s.io/sig-storage/livenessprobe@sha256:88092d100909918ae0a768956cf78c88bc59cd7232720f7cdbdfb5d2e235001e
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d078dc174323407e8cc6f0f9abd4efaac5db27838f1564d0253d5e3233e3f17f
        - quay.io/kubevirt/hostpath-provisioner@sha256:a024ad8d0534d1e3ec6edd9a2a503a2aaa3853bf4c9e3181c6ace559d7cb6b23
        - quay.io/kubevirt/cni-default-plugins@sha256:976a24392c2a096c38c2663d234b2d3131f5c24558889196d30b9ac1b6716788
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97
        - quay.io/kubevirt/virt-handler@sha256:4e4a4c12d5781ebbcb8cbebef6fb2b9cb54b25f3804f1c19bbfd7fdb9dd383cc
        - quay.io/kubevirt/ssp-operator@sha256:7a8d04480403bcbbdd5cd854701013bfe57a4d7ae57aad6e9c83aae331e91bfa
        - quay.io/kubevirt/virt-exportproxy@sha256:fa49d5f034cf56ae73367879660bff402dfea4251db91d33364c376ddfa1e999
        - quay.io/kubevirt/network-passt-binding-cni@sha256:8e9a0fe4c0096abfea49f4eb36038842621bcb770ab6358ff5a6315016b6a243
        - ghcr.io/kubevirt/ipam-controller@sha256:4fdc9c77b9e683f274a31fcb7f6dbcf765799596efd93bc37512fb860f07b02f
        - quay.io/kubevirt/bridge-marker@sha256:bf269af61e618857e7b14439cfc003aac2d65db9ee633147a73f5d9648dab377
        - quay.io/kubevirt/cdi-controller@sha256:a173f818e6e7f2be3db6390b638399dd496bc2b5595550e4381ef9586a81c144
        - quay.io/kubevirt/cdi-importer@sha256:2ab689c89a7c9256fde8ccf7e13a6cfae7c89b7288fc756f139caf5930c39d10
        - quay.io/kubevirt/hyperconverged-cluster-webhook@sha256:5281c95090e27a492beb205c750f7661b15a24b438ceedc2d12c106da160f9fc
        - quay.io/kubevirt/kubemacpool@sha256:f9e5151798acc03798a007eacf51bc7a579c5e5a57851836eae601cc1eaa1c30
        - quay.io/kubevirt/virt-synchronization-controller@sha256:e9a3347c0c140aaf0f4864cca1299db33421ad795c744292322ed4d3e2fbb6f8
        - quay.io/openshift-virtualization/wasp-agent@sha256:eabfa6a425213f520f7a9e5b81b43e8b6430779d42c5c8b1bfd48a4f1730447a
        - ghcr.io/k8snetworkplumbingwg/multus-cni@sha256:a60a21ee1d00c9f215b0b2fa03b3d5e384ab7ddb9ea0d231d36aef220e95a69c
        - quay.io/kubevirt/hostpath-csi-driver@sha256:696e7b6c9fb92353579b8c003a43a27a7d78ce224a8119db3b3997295d330e3c
        - quay.io/kubevirt/virtio-container-disk@sha256:bf2c634591d7fca1b90479785084fa108a66fe9da6777c4312bb4f57cc837faa
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:e2def4213ec0657e72eb790ae8a115511d5b8f164a62d3568d2f1bff189917e8
        - quay.io/kubevirt/aaq-server@sha256:dfb46682eb734e73a1142b9af5f94f2f70aa9a7e04a7c804565f2a89fbf0f989
        - quay.io/kubevirt/cdi-uploadserver@sha256:db3bf75d7a940e545b1a38d0bfff7fdc271cfc1d64a77609e07a5d0f2e6683ad
        - ghcr.io/kubevirt/kubesecondarydns@sha256:f5fe9c98fb6d7e5e57a6df23fe82e43e65db5953d76af44adda9ab40c46ad0bf
        - quay.io/kubevirt/cdi-operator@sha256:8b2028dc3695d1e3ec4b5d3ad0fff4e356f6e22f0c407cc70e5c551a55afaf47
        - ghcr.io/k8snetworkplumbingwg/multus-dynamic-networks-controller@sha256:2a2bb32c0ea8b232b3dbe81c0323a107e8b05f8cad06704fca2efd0d993a87be
        - quay.io/community-operator-pipeline-prod/community-kubevirt-hyperconverged@sha256:4ed2717b6f140841cc75b49adc664641399a05d2bae3455da01280dbee1eeba7
        - registry.k8s.io/coredns/coredns@sha256:a0ead06651cf580044aeb0a0feba63591858fb2e43ade8c9dea45a6a89ae7e5e
        - quay.io/kubevirt/macvtap-cni@sha256:af31faae20c0128a469dd4c1aa866d6bf78d1d2f5972127adf4c9438dcde10f4
        - quay.io/kubevirt/network-passt-binding@sha256:11cf7036b49f30c4f6b5c28feb274ea231533df981a58fce9e191f9f815f0a1c
        - quay.io/kubevirt/aaq-operator@sha256:98c4d2e73c733468f3c4724c72c4d42411f49706cdfa843ce1d507c356621088
        - quay.io/kubevirt/virt-operator@sha256:2d6ed0d12c13d86117d77233ef98626f0418c273e45730e922882ddedac3c4a0
        - quay.io/kubevirt/aaq-controller@sha256:04199fad9d42e0d9206ae042545b48da4c3bf14995d87aa6d8c804b0f9beeea4
        - quay.io/kubevirt/sidecar-shim@sha256:0252893b5cd3df04e417d82a8817b6dc1fc60ef475d73d7e87a36318c3257d0b
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:bc7be893ecc3ad524194aa6573b2f5c06cd469bdf21a500ab6c99c2ba1c4d64d
        - quay.io/kubevirt/virt-exportserver@sha256:371e217b1a7e68722a79203d4251e7034ef8c08e5ef5aec282a93cdcc0014cf7
        - quay.io/kubevirt/cdi-apiserver@sha256:7e36cab28362127345282b5f65ca358607cf275a4eacbfff9bafce18128d58e7
        - quay.io/kubevirt/virt-controller@sha256:8a3788c01a667a4a52bfde3ea284cde459afcf54af2644d0b4e62feb42ec9d97
        - quay.io/kubevirt/virt-launcher@sha256:66f02bfd67bfdbe59ea9c0139270d9efba4e1491e1ef81bccde5bd6c7794333d
        - quay.io/kubevirt-ui/kubevirt-apiserver-proxy@sha256:935475c2850466aa5ac57e4de627fb177515cb2c402a95842ead095d82b6df5f
        - quay.io/kubevirt/kubevirt-template-validator@sha256:87350bb8e68683509b8ffa72738ad719b22f48192b88bc58ab6223980c4ccee9
        - quay.io/kubevirt-ui/kubevirt-plugin@sha256:89269df1481bed69cac7095c8d8d875acbfa238e4b5735ab802cda90c9375a1b
        - quay.io/kubevirt/pr-helper@sha256:812fcb543d7519282607a4da991faaf7c734ff37e0c04dbf1083c9a9430ca168
        - quay.io/kubevirt/cdi-cloner@sha256:ff5c705081d59bc62141138979178ca542ebe31ff29906eca23b6d8b5c89aca0
        - quay.io/kubevirt/hyperconverged-cluster-operator@sha256:78a1a9f656da5dea20022706ebf61982dd9b63dd5cb4dd75ae98d643e671fbde
        - ghcr.io/k8snetworkplumbingwg/ovs-cni-plugin@sha256:435f374b434b3bc70a5cfaba0011fdcf5f433d96b98b06d29306cbd8db3a8c21
        - quay.io/kubevirt/virt-api@sha256:15dcc9da661ff1738fefa5746b22471ac8e954d8e4d3dbd884e8cf399fbbbe6f
        - quay.io/kubevirt/hostpath-provisioner-operator@sha256:ac0c005304acb52033f3c4ad4af2aab81361346d5327c92ec6bcbd98097ae88b
        - quay.io/kubevirt/libguestfs-tools@sha256:677e53432ac080d7b93031d501a9a8f2e6fa35ce67c48f5d43a05967e04467e5
        - quay.io/kubevirt/cdi-uploadproxy@sha256:b6b3cfaad4886faa1762888c0dc92105cc90d678f4ac14e12917af77f49d91a6
        - quay.io/kubevirt/cluster-network-addons-operator@sha256:0ec8c28176c12c2078ef34905c72da3031a9af51f76d4c2d23e22f75e9e1dbee
        - quay.io/kubevirt/virt-artifacts-server@sha256:edd66038da14527b205220e3d208c1bd598b3bed682dbd28413f1e9850e5f116
        version: 1.16.0
      entries:
      - name: kubevirt-hyperconverged-operator.v1.16.0
        version: 1.16.0
      - name: kubevirt-hyperconverged-operator.v1.15.2
        version: 1.15.2
      - name: kubevirt-hyperconverged-operator.v1.15.0
        version: 1.15.0
      - name: kubevirt-hyperconverged-operator.v1.14.0
        version: 1.14.0
      - name: kubevirt-hyperconverged-operator.v1.13.0
        version: 1.13.0
      - name: kubevirt-hyperconverged-operator.v1.12.0
        version: 1.12.0
      - name: kubevirt-hyperconverged-operator.v1.11.1
        version: 1.11.1
      - name: kubevirt-hyperconverged-operator.v1.10.0
        version: 1.10.0
      - name: kubevirt-hyperconverged-operator.v1.9.0
        version: 1.9.0
      - name: kubevirt-hyperconverged-operator.v1.8.2
        version: 1.8.2
      - name: kubevirt-hyperconverged-operator.v1.8.1
        version: 1.8.1
      - name: kubevirt-hyperconverged-operator.v1.8.0
        version: 1.8.0
      - name: kubevirt-hyperconverged-operator.v1.7.0
        version: 1.7.0
      - name: kubevirt-hyperconverged-operator.v1.6.0
        version: 1.6.0
      - name: kubevirt-hyperconverged-operator.v1.5.2
        version: 1.5.2
      - name: kubevirt-hyperconverged-operator.v1.5.1
        version: 1.5.1
      - name: kubevirt-hyperconverged-operator.v1.5.0
        version: 1.5.0
      - name: kubevirt-hyperconverged-operator.v1.4.4
        version: 1.4.4
      - name: kubevirt-hyperconverged-operator.v1.4.3
        version: 1.4.3
      - name: kubevirt-hyperconverged-operator.v1.4.2
        version: 1.4.2
      - name: kubevirt-hyperconverged-operator.v1.4.1
        version: 1.4.1
      - name: kubevirt-hyperconverged-operator.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: community-kubevirt-hyperconverged
    provider:
      name: KubeVirt project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-bamoe-businessautomation: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: bamoe-businessautomation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bamoe-businessautomation-operator.8.0.8-1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"app.kiegroup.org/v2","kind":"KieApp","metadata":{"name":"rhpam-trial"},"spec":{"environment":"rhpam-trial"}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/ibm-bamoe/bamoe-rhel8-operator@sha256:0646da8707d10b3cc2e2344269abd8797db34127a3326bf76bbc1547aa4bbd73
          createdAt: "2025-07-22 17:40:17"
          description: Deploys and manages IBM Business Automation Manager Open Editions
            environment.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["IBM Business Automation Manager
            Open Edition"]'
          repository: https://github.com/kiegroup/kie-cloud-operator
          support: https://www.ibm.com/mysupport
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A project prescription running an IBM BAMOE environment.
            displayName: KieApp
            kind: KieApp
            name: kieapps.app.kiegroup.org
            version: v2
        description: |-
          Deploys and manages IBM Business Automation Manager Open Editions environment.

          * **IBM Process Automation Manager** is a platform for developing containerized microservices and applications that automate business decisions and processes. It includes business process management (BPM), business rules management (BRM), and business resource optimization and complex event processing (CEP) technologies. It also includes a user experience platform to create engaging user interfaces for process and decision services with minimal coding.
        displayName: IBM Business Automation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kieapp
        - pam
        - decision
        - kie
        - cloud
        - bpm
        - process
        - automation
        - operator
        links:
        - name: Product Page
          url: https://ibm.com
        - name: Documentation
          url: https://www.ibm.com/docs/en/ibamoe
        maintainers:
        - email: mysphelp@us.ibm.com
          name: IBM
        maturity: 8.x-stable
        provider:
          name: IBM
        relatedImages:
        - registry.redhat.io/amq7/amq-broker@sha256:792c1cb19e62519cc47d834650fe5a6a6ca589a37d0b53d4f4549e80cabae3f9
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:2f1a7519617b5c0d082f943de0db295370649d968d699d76cfd829f4c9826a0f
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:82d8ebde7eb3ecfbf72e5b71e7e392d3a3597fc084b6cf35e8fec23bfe41210d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:98e9a6618558bc8a1b9cb91d1c9b3380968d335092f6e953d1abe6af96abf65c
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:b3b7388b3b116ef37aabbb04b5d2c3e36e58d2fc95f1e59795b423010e071fc3
        - registry.redhat.io/openshift4/ose-cli@sha256:b2b93def4eb5edeccfa2d8ba22e493646325842674dff0446b45677bf641a342
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:25025e489c15108edffe5270d257e1ed9be0a67aa067bcfc184647793aac2617
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:5ed8821328413ec11859ae317679f0692afff9945f134fc8909e07a3ac387794
        - registry.redhat.io/jboss-datagrid-7/datagrid73-openshift@sha256:4056b1cf8ff5995f56eecfdc087d9ece56a216dba6bd73acc5693f0778e8d573
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:c9f08ddc6111cdd74faa0db5721d5730fc7716fccf4dc2a658595f7e0c184c10
        - registry.redhat.io/ibm-bamoe/bamoe-operator-bundle@sha256:54df7eba0292459c0491ba39c15bfcf793e1c0aef042a4b3f6c587b0d45f77af
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:efa55e17190b0ebe1618452f786876ef354b8fbec25c316aed7ed5bb1ce88116
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:f714b9c1555e7f27a3c9cf2cf687a74188f36b1283d4e09cec4db3c084d9fe64
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:ef1d77bb085172f927ee53d1674c85e2acaf1f580d7cad55bae8bf2c33c49c01
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:01bf97beffb3647968aae052cdd401d6d562c35f3e78ac483dbf55c44a71dc2f
        - registry.redhat.io/ibm-bamoe/bamoe-controller-rhel8@sha256:6cd0f07856d612dca46b0a01a93b796f7a0f112b98cedfd6754f9fd770ee843d
        - registry.redhat.io/rhscl/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:c3553707936cb9eee8a6a622643f72c91e1b0c11add5ec9ad5865242a9e133b4
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:a287a2fbaded371b8fcae5e4124b2d905bb228f94da0fc899ca2600b378dca0d
        - registry.redhat.io/ibm-bamoe/bamoe-rhel8-operator@sha256:0646da8707d10b3cc2e2344269abd8797db34127a3326bf76bbc1547aa4bbd73
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:457fc73423fa94591bc7e35729a25c58d3465583afccf342fb338b6e11188575
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:191237ccffc476e764714a69e35d9421dcee5ddd7184442d7a8306a06b97e6bb
        - registry.redhat.io/ibm-bamoe/bamoe-controller-rhel8@sha256:3fcd9ae0bc194c198cbb5ee94272e80f302658733e467766bd1789357e9fd015
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:3fd45f2dabca7220772d823275a5697b42dd35f53c27671b093117933ef2d4f6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:fb326be806b337b0ae1711f974d15e073aebcbad77aaa1123a63cf4f331da5f2
        version: 8.0.8-1
      entries:
      - name: bamoe-businessautomation-operator.8.0.8-1
        version: 8.0.8-1
      - name: bamoe-businessautomation-operator.8.0.7-2
        version: 8.0.7-2
      - name: bamoe-businessautomation-operator.8.0.7-1
        version: 8.0.7-1
      - name: bamoe-businessautomation-operator.8.0.6-3
        version: 8.0.6-3
      - name: bamoe-businessautomation-operator.8.0.6-2
        version: 8.0.6-2
      - name: bamoe-businessautomation-operator.8.0.6-1
        version: 8.0.6-1
      - name: bamoe-businessautomation-operator.8.0.5-3
        version: 8.0.5-3
      - name: bamoe-businessautomation-operator.8.0.5-2
        version: 8.0.5-2
      - name: bamoe-businessautomation-operator.8.0.5-1
        version: 8.0.5-1
      - name: bamoe-businessautomation-operator.8.0.4-3
        version: 8.0.4-3
      - name: bamoe-businessautomation-operator.8.0.4-2
        version: 8.0.4-2
      - name: bamoe-businessautomation-operator.8.0.4-1
        version: 8.0.4-1
      - name: bamoe-businessautomation-operator.8.0.3-4
        version: 8.0.3-4
      - name: bamoe-businessautomation-operator.8.0.3-3
        version: 8.0.3-3
      - name: bamoe-businessautomation-operator.8.0.3-2
        version: 8.0.3-2
      - name: bamoe-businessautomation-operator.8.0.3-1
        version: 8.0.3-1
      - name: bamoe-businessautomation-operator.8.0.2-3
        version: 8.0.2-3
      - name: bamoe-businessautomation-operator.8.0.2-2
        version: 8.0.2-2
      - name: bamoe-businessautomation-operator.8.0.2-1
        version: 8.0.2-1
      - name: bamoe-businessautomation-operator.8.0.1-2
        version: 8.0.1-2
      - name: bamoe-businessautomation-operator.8.0.1-1
        version: 8.0.1-1
      - name: bamoe-businessautomation-operator.8.0.0-1
        version: 8.0.0-1
      name: 8.x-stable
    defaultChannel: 8.x-stable
    packageName: bamoe-businessautomation-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Keysight
      provider-url: keysight.com
    name: keysight-loadcore-agents
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keysight-loadcore-agents.v0.1.21
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.loadcore.keysight.com/v1alpha1",
                "kind": "Agents",
                "metadata": {
                  "name": "loadcore-agents-sample",
                  "namespace": "keysight-loadcore-agents"
                },
                "spec": {
                  "agents": [
                    {
                      "args": {
                        "adminInterface": "eth0",
                        "middlewareAddr": "nats-core.keysight-wap.svc.cluster.local:4222",
                        "testInterfaces": [
                          "net1"
                        ]
                      },
                      "exposeIngress": true,
                      "lifecycle": {
                        "postStart": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "echo Hello from the postStart handler"
                            ]
                          }
                        },
                        "preStop": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "killall -0 tail"
                            ]
                          }
                        }
                      },
                      "livenessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "initialDelaySeconds": 60
                      },
                      "name": "agent1",
                      "networks": [
                        "keysight-loadcore-agents/loadcore-agent-network"
                      ],
                      "privileged": true,
                      "readinessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 30,
                        "periodSeconds": 20
                      },
                      "replicas": 2,
                      "startupProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 10,
                        "periodSeconds": 5
                      },
                      "terminationMessagePolicy": "FallbackToLogsOnError"
                    },
                    {
                      "args": {
                        "adminInterface": "eth0",
                        "middlewareAddr": "nats-core.keysight-wap.svc.cluster.local:4222",
                        "testInterfaces": [
                          "net1"
                        ]
                      },
                      "exposeIngress": true,
                      "lifecycle": {
                        "postStart": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "echo Hello from the postStart handler"
                            ]
                          }
                        },
                        "preStop": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "killall -0 tail"
                            ]
                          }
                        }
                      },
                      "livenessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "initialDelaySeconds": 60
                      },
                      "name": "agent2",
                      "networks": [
                        "keysight-loadcore-agents/loadcore-agent-network"
                      ],
                      "privileged": true,
                      "readinessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 30,
                        "periodSeconds": 20
                      },
                      "startupProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 10,
                        "periodSeconds": 5
                      },
                      "terminationMessagePolicy": "FallbackToLogsOnError"
                    }
                  ],
                  "image": {
                    "registry": "prod.harbor.keysight.digital",
                    "repository": "loadcore/loadcore-agent",
                    "tag": "UBI8-0.1-7d990d7254"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "regcred"
                    }
                  ],
                  "networks": [
                    {
                      "config": "{ \"cniVersion\": \"0.3.1\", \"type\": \"ipvlan\", \"master\": \"ens192\", \"mode\": \"l2\", \"ipam\": { \"type\": \"whereabouts\", \"range\": \"192.168.1.0/24\", \"routes\": [ { \"dst\": \"0.0.0.0/0\" } ] } }",
                      "name": "loadcore-agent-network"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2023-09-19T12:53:55Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Agents
            name: agents.app.loadcore.keysight.com
            version: v1alpha1
        description: Keysight LoadCore Agents Operator
        displayName: Keysight LoadCore Agents Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - loadcore
        - keysight
        links:
        - name: Keysight Loadcore Agents
          url: https://keysight-loadcore-agents.domain
        maintainers:
        - email: vlad.butusina@keysight.com
          name: Vlad Butusina
        maturity: alpha
        provider:
          name: Keysight
          url: keysight.com
        relatedImages:
        - prod.harbor.keysight.digital/loadcore/keysight-loadcore-agents@sha256:f1d1e9f2aca11505407785bc33905744b667bc8aea49df73fcc50db379c0b375
        - registry.connect.redhat.com/loadcore/keysight-loadcore-agents-bundle@sha256:f16fcea424cb7b1eb647f3e9d3c08bd93c8a1b8bb7eab71a4e756da72a7a56a0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0848d89e9f94be04f17beeee75807d7fd11102737e6483ee674f2cf3ae28f213
        version: 0.1.21
      entries:
      - name: keysight-loadcore-agents.v0.1.21
        version: 0.1.21
      name: alpha
    defaultChannel: alpha
    packageName: keysight-loadcore-agents
    provider:
      name: Keysight
      url: keysight.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Solace Corporation
      provider-url: www.solace.com
    name: pubsubplus-eventbroker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pubsubplus-eventbroker-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pubsubplus.solace.com/v1beta1",
                "kind": "PubSubPlusEventBroker",
                "metadata": {
                  "name": "non-ha-standalone-example"
                },
                "spec": {
                  "redundancy": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "true"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.10
          containerImage: registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator@sha256:d68db92bcb217d94dc0ad0a1cea625a0a9c9299d886d325a903163f9f887dcd5
          createdAt: "2025-07-31T19:48:36Z"
          description: The Solace PubSub+ Event Broker Operator deploys and manages
            the lifecycle of PubSub+ Event Brokers
          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"
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
          support: Solace Products
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PubSub+ Event Broker
            displayName: PubSub+ Event Broker
            kind: PubSubPlusEventBroker
            name: pubsubpluseventbrokers.pubsubplus.solace.com
            version: v1beta1
        description: |
          ## Solace PubSub+ Platform
          Solace [PubSub+ Platform](https://solace.com/products/platform/) is a complete event streaming and management platform
          for real-time enterprises. The [PubSub+ Software Event Broker](https://solace.com/products/event-broker/software/) efficiently streams
          event-driven information between applications, IoT devices, and user interfaces running in the cloud, on-premises,
          and in hybrid environments using open APIs and protocols like AMQP, JMS, MQTT, REST and WebSocket.
          It can be installed into a variety of public and private clouds, PaaS, and on-premises environments.
          Event brokers in multiple locations can be linked together in an [Event Mesh](https://solace.com/what-is-an-event-mesh/)
          to dynamically share events across the distributed enterprise.

          ## Solace PubSub+ Event Broker Operator
          Solace Pubsub+ Event Broker Operator automatically deploys and manages PubSub+ Software Event Brokers on Kubernetes and OpenShift environments.

          Features include:
          * Initial deployment configuration: Production-ready HA, non-HA or for developers
          * Rolling update for configuration changes or broker upgrades
          * Prometheus monitoring support

          ## Getting started
          Refer to the [Solace PubSub+ Event Broker Operator Quick Start](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/README.md)
        displayName: Solace PubSub+ Event Broker Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - solace
        - pubsubplus
        - pubsub+
        - pubsub
        - messaging
        - advanced event broker
        - event broker
        - event mesh
        - event streaming
        - data streaming
        - event integration
        - middleware
        links:
        - name: Operator QuickStart
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
        - name: Operator Documentation
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/docs/EventBrokerOperatorUserGuide.md
        - name: Solace.com
          url: https://solace.com
        - name: Understanding Solace Technology
          url: https://solace.com/products/platform/
        - name: Solace PubSub+ Technical Documentation
          url: https://docs.solace.com/
        - name: Solace Developer Portal
          url: https://www.solace.dev/
        - name: Solace Community
          url: https://solace.community/
        maintainers:
        - email: support@solace.com
          name: Solace R&D
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Solace Corporation
          url: www.solace.com
        relatedImages:
        - registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator-bundle@sha256:85e75ec797f70c5807ec1ea25208cf0bb1990daa05eca9fbc82bc38aa4a840ab
        - registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator@sha256:d68db92bcb217d94dc0ad0a1cea625a0a9c9299d886d325a903163f9f887dcd5
        version: 1.4.0
      entries:
      - name: pubsubplus-eventbroker-operator.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: pubsubplus-eventbroker-operator
    provider:
      name: Solace Corporation
      url: www.solace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Weaveworks
      provider-url: ""
    name: tf-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tf-controller.v0.9.0-rc.8
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"infra.contrib.fluxcd.io/v1alpha1\",\n
            \   \"kind\": \"Terraform\",\n    \"metadata\": {\n        \"name\": \"helloworld-tf\",\n
            \       \"namespace\": \"flux-system\"\n    },\n    \"spec\": {\n        \"interval\":
            \"5m\",\n        \"approvePlan\": \"auto\",\n        \"path\": \"./\",\n
            \       \"sourceRef\": {\n          \"kind\": \"GitRepository\",\n          \"name\":
            \"helloworld\",\n          \"namespace\": \"flux-system\"\n        }      \n
            \   }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: ghcr.io/weaveworks/tf-controller:v0.9.0-rc.8
          description: Weave TF-controller is a Flux controller that brings GitOps
            to Terraform resources.
          operatorframework.io/suggested-namespace: flux-system
          support: Weaveworks
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Terraform
            displayName: Terraform
            kind: Terraform
            name: terraforms.infra.contrib.fluxcd.io
            version: v1alpha1
        description: "**Weave GitOps Terraform Controller** (aka Weave TF-controller)
          is a Flux controller for reconciling Terraform resources in the GitOps way.
          \nWith the power of Flux together with Terraform, TF-controller allows you
          to GitOps-ify infrastructure, \nand application resources, in the Kubernetes
          and Terraform universe, together at your own pace.\n\nTF-controller offers
          many GitOps models:\n  1. **GitOps Automation Model:** GitOps your Terraform
          resources from the provision steps to the enforcement steps, like a whole
          EKS cluster.\n  2. **Hybrid GitOps Automation Model:** GitOps parts of your
          existing infrastructure resources. For example, you have an existing EKS
          cluster. You can choose to GitOps only its nodegroup, or its security group.\n
          \ 3. **State Enforcement Model:** You have a TFSTATE file, and you'd like
          to use GitOps enforce it, without changing anything else.\n  4. **Drift
          Detection Model:** You have a TFSTATE file, and you'd like to use GitOps
          just for drift detection, so you can decide to do things later when a drift
          occurs.\n\nFeatures\n  * GitOps Automation for Terraform\n  * Drift detection\n
          \ * Plan and Manual Approve"
        displayName: Weave GitOps Terraform Controller
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - weave
        - flux
        - cd
        - continuous delivery
        - terraform
        - gitops
        links:
        - name: Weave GitOps Terraform Controller
          url: https://github.com/weaveworks/tf-controller
        - name: Documentation
          url: https://weaveworks.github.io/tf-controller/
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Weaveworks
        relatedImages:
        - ghcr.io/weaveworks/tf-controller:v0.9.0-rc.8
        - quay.io/openshift-community-operators/tf-controller@sha256:cdaeb470d9b331a3fa08167e5c904befb00be983e1354651670e21e13560bf9b
        version: 0.9.0-rc.8
      entries:
      - name: tf-controller.v0.9.0-rc.8
        version: 0.9.0-rc.8
      - name: tf-controller.v0.9.0-rc.3
        version: 0.9.0-rc.3
      name: stable
    defaultChannel: stable
    packageName: tf-controller
    provider:
      name: Weaveworks
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: node-healthcheck-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-healthcheck-operator.v0.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "maxUnhealthy": "49%",
                  "remediationTemplate": {
                    "apiVersion": "poison-pill.medik8s.io/v1alpha1",
                    "kind": "PoisonPillRemediationTemplate",
                    "name": "group-x",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/node-healthcheck-operator:0.1.0-latest
          createdAt: "2021-04-20 12:00:00"
          description: An operator to monitor node healthcheck and remdiate via 3rd
            party providers like poison-pill.
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: This operator deploys the Node Health Check controller and its
          artifacts
        displayName: Node Health Check Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://node-healthcheck-operator.domain
        maintainers:
        - email: medik8s@googlegroups.com
          name: medik8s team
        maturity: alpha
        provider:
          name: medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/medik8s/node-healthcheck-operator:0.1.0-latest
        - quay.io/openshift-community-operators/node-healthcheck-operator@sha256:30264b9f49912cc0e6bed59001869e3168caace20b292c9dad4cc2d4947d289d
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.1.1
      entries:
      - name: node-healthcheck-operator.v0.1.1
        version: 0.1.1
      name: alpha
    - currentCSV: node-healthcheck-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample"
                },
                "spec": {
                  "minHealthy": "51%",
                  "remediationTemplate": {
                    "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                    "kind": "SelfNodeRemediationTemplate",
                    "name": "self-node-remediation-resource-deletion-template",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/node-healthcheck-operator:v0.3.0
          createdAt: "2022-08-24 11:40:38"
          description: Detect failed Nodes and trigger remediation with e.g. Self
            Node Remediation.
          olm.skipRange: '>=0.2.0 <0.3.0'
          operators.operatorframework.io/builder: operator-sdk-v1.18.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Hardware is imperfect, and software contains bugs. When node level failures such as kernel hangs or dead NICs
          occur, the work required from the cluster does not decrease - workloads from affected nodes need to be
          restarted somewhere.

          However some workloads, such as RWO volumes and StatefulSets, may require at-most-one semantics.
          Failures affecting these kind of workloads risk data loss and/or corruption if nodes (and the workloads
          running on them) are assumed to be dead whenever we stop hearing from them. For this reason it is important
          to know that the node has reached a safe state before initiating recovery of the workload.

          Unfortunately it is not always practical to require admin intervention in order to confirm the node’s true status.
          In order to automate the recovery of exclusive workloads, we provide operators for failure detection
          and remediation.

          ### Failure detection: Node Health Check operator
          The “Node Health Check” (NHC) operator checks each Node’s set of
          NodeConditions (eg. NotReady) against the criteria and thresholds defined in
          NodeHealthCheck configuration. If the Node is deemed to be in a failed
          state, NHC will initiate recovery by using the SIG Cluster API's “External
          Remediation” API to instantiate the configured remediation template which
          specifies the mechanism/controller to be used.

          ### Failure handling: Self Node Remediation
          By default NHC depends on the “Self Node Remediation” (SNR) operator, which
          is installed automatically.
          SNR uses watchdog timers and heuristics to ensure nodes enter a safe state
          (no longer hosting workloads) within a known and finite period of time,
          before signaling to the system that all Pods and VolumeAttachments on the
          failed Node are no longer active and can be relocated elsewhere.
          In the case of transient errors, the watchdog’s actions will also result in
          the node rebooting and rejoining the cluster - restoring capacity.
        displayName: Node Health Check Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - NHC
        - Self Node Remediation
        - SNR
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/node-healthcheck-operator
        maintainers:
        - email: medik8s@googlegroups.com
          name: medik8s team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: medik8s
          url: https://github.com/medik8s
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/medik8s/node-healthcheck-operator:v0.3.0
        - quay.io/openshift-community-operators/node-healthcheck-operator@sha256:d7cc6d2575eb252fb3e2468106e801f192da7844b0b153dc3c6a12cf7cc0a8fe
        version: 0.3.0
      entries:
      - name: node-healthcheck-operator.v0.3.0
        version: 0.3.0
      name: candidate
    - currentCSV: node-healthcheck-operator.v0.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample"
                },
                "spec": {
                  "minHealthy": "51%",
                  "remediationTemplate": {
                    "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                    "kind": "SelfNodeRemediationTemplate",
                    "name": "self-node-remediation-automatic-strategy-template",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/plugins: '["node-remediation-console-plugin"]'
          containerImage: quay.io/medik8s/node-healthcheck-operator:v0.10.0
          createdAt: "2025-11-24T11:39:14Z"
          description: Detect failed Nodes and trigger remediation with a remediation
            operator.
          olm.skipRange: '>=0.9.0 <0.10.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Hardware is imperfect, and software contains bugs. When node level failures such as kernel hangs or dead NICs
          occur, the work required from the cluster does not decrease - workloads from affected nodes need to be
          restarted somewhere.

          However some workloads, such as RWO volumes and StatefulSets, may require at-most-one semantics.
          Failures affecting these kind of workloads risk data loss and/or corruption if nodes (and the workloads
          running on them) are assumed to be dead whenever we stop hearing from them. For this reason it is important
          to know that the node has reached a safe state before initiating recovery of the workload.

          Unfortunately it is not always practical to require admin intervention in order to confirm the node’s true status.
          In order to automate the recovery of exclusive workloads, we provide operators for failure detection
          and remediation.

          ### Failure detection: Node Health Check operator
          The “Node Health Check” (NHC) operator checks each Node’s set of
          NodeConditions (eg. NotReady) against the criteria and thresholds defined in
          NodeHealthCheck configuration. If the Node is deemed to be in a failed
          state, NHC will initiate recovery by using the SIG Cluster API's “External
          Remediation” API to instantiate the configured remediation template which
          specifies the mechanism/controller to be used.

          ### Failure handling: External remediators
          There are multiple remediators for handling node failure that we recommend:
          - Self Node Remediation (SNR)
          - Fence Agents Remediation (FAR)
          - Machine Deletion Remediation (MDR)

          #### Self Node Remediation (SNR)
          SNR uses watchdog timers and heuristics to ensure nodes enter a safe state
          (no longer hosting workloads) within a known and finite period of time,
          before signaling to the system that all Pods on the failed Node are no longer active
          and can be relocated elsewhere.
          In the case of transient errors, the watchdog’s actions will also result in
          the node rebooting and rejoining the cluster - restoring capacity.

          #### Fence Agents Remediation (FAR)
          FAR uses well-known agents to fence unhealthy nodes, and eventually FAR remediates the nodes.
          The remediation includes rebooting the unhealthy node using a fence agent,
          and then evicting workloads from the unhealthy node.

          #### Machine Deletion Remediation (MDR)
          MDR is limited to OpenShift, and it uses Machine API for reprovisioning unhealthy nodes by deleting their machines.
        displayName: Node Health Check Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - NHC
        - Self Node Remediation
        - SNR
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/node-healthcheck-operator
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/medik8s/node-remediation-console:v0.10.1
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/node-healthcheck-operator@sha256:3824834753d392fd0c11d3fedd3055b5adab519a2f2777754296569ea077e675
        - quay.io/medik8s/node-healthcheck-operator:v0.10.0
        version: 0.10.0
      entries:
      - name: node-healthcheck-operator.v0.10.0
        version: 0.10.0
      - name: node-healthcheck-operator.v0.9.0
        version: 0.9.0
      - name: node-healthcheck-operator.v0.8.0
        version: 0.8.0
      - name: node-healthcheck-operator.v0.6.1
        version: 0.6.1
      - name: node-healthcheck-operator.v0.6.0
        version: 0.6.0
      - name: node-healthcheck-operator.v0.5.0
        version: 0.5.0
      - name: node-healthcheck-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: node-healthcheck-operator
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: lifecycle-agent
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lifecycle-agent.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "ImageBasedUpgrade",
                "metadata": {
                  "name": "upgrade"
                },
                "spec": {
                  "autoRollbackOnFailure": {},
                  "extraManifests": [
                    {
                      "name": "sno-extramanifests",
                      "namespace": "openshift-lifecycle-agent"
                    }
                  ],
                  "oadpContent": [
                    {
                      "name": "oadp-cm-sno-backup",
                      "namespace": "openshift-adp"
                    }
                  ],
                  "seedImageRef": {
                    "image": "quay.io/xyz",
                    "version": "4.16.0"
                  },
                  "stage": "Idle"
                }
              },
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "SeedGenerator",
                "metadata": {
                  "name": "seedimage"
                },
                "spec": {
                  "seedImage": "quay.io/xyz"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
          description: The Lifecycle Agent for OpenShift provides local lifecycle
            management services for Single Node Openshift (SNO) clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-lifecycle-agent
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-lifecycle-agent",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/lifecycle-agent
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ImageBasedUpgrade is the Schema for the ImageBasedUpgrades
              API
            displayName: Image-based Cluster Upgrade
            kind: ImageBasedUpgrade
            name: imagebasedupgrades.lca.openshift.io
            version: v1
          - description: SeedGenerator is the Schema for the seedgenerators API
            displayName: Seed Generator
            kind: SeedGenerator
            name: seedgenerators.lca.openshift.io
            version: v1
        description: |-
          Lifecycle Agent for OpenShift
          The Lifecycle Agent for OpenShift provides local lifecycle management services
          for Single Node Openshift (SNO) clusters.

          You can find additional guidance in the upstream repository: https://github.com/openshift-kni/lifecycle-agent
        displayName: Lifecycle Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - upgrade
        links:
        - name: Lifecycle Agent
          url: https://lifecycle-agent.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/lifecycle-agent-operator-bundle@sha256:251f1b0929695dff69795adbe8aa25da051decab877ea318d8317930c1dd4bb2
        - registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
        - registry.redhat.io/openshift4/recert-rhel9@sha256:db975b2012b3377e24fadbd65a829579cd17eb2db2419781eee7e34c8900f7df
        version: 4.20.0
      entries:
      - name: lifecycle-agent.v4.20.0
        version: 4.20.0
      name: "4.20"
    - currentCSV: lifecycle-agent.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "ImageBasedUpgrade",
                "metadata": {
                  "name": "upgrade"
                },
                "spec": {
                  "autoRollbackOnFailure": {},
                  "extraManifests": [
                    {
                      "name": "sno-extramanifests",
                      "namespace": "openshift-lifecycle-agent"
                    }
                  ],
                  "oadpContent": [
                    {
                      "name": "oadp-cm-sno-backup",
                      "namespace": "openshift-adp"
                    }
                  ],
                  "seedImageRef": {
                    "image": "quay.io/xyz",
                    "version": "4.16.0"
                  },
                  "stage": "Idle"
                }
              },
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "SeedGenerator",
                "metadata": {
                  "name": "seedimage"
                },
                "spec": {
                  "seedImage": "quay.io/xyz"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
          description: The Lifecycle Agent for OpenShift provides local lifecycle
            management services for Single Node Openshift (SNO) clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-lifecycle-agent
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-lifecycle-agent",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/lifecycle-agent
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ImageBasedUpgrade is the Schema for the ImageBasedUpgrades
              API
            displayName: Image-based Cluster Upgrade
            kind: ImageBasedUpgrade
            name: imagebasedupgrades.lca.openshift.io
            version: v1
          - description: SeedGenerator is the Schema for the seedgenerators API
            displayName: Seed Generator
            kind: SeedGenerator
            name: seedgenerators.lca.openshift.io
            version: v1
        description: |-
          Lifecycle Agent for OpenShift
          The Lifecycle Agent for OpenShift provides local lifecycle management services
          for Single Node Openshift (SNO) clusters.

          You can find additional guidance in the upstream repository: https://github.com/openshift-kni/lifecycle-agent
        displayName: Lifecycle Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - upgrade
        links:
        - name: Lifecycle Agent
          url: https://lifecycle-agent.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/lifecycle-agent-operator-bundle@sha256:251f1b0929695dff69795adbe8aa25da051decab877ea318d8317930c1dd4bb2
        - registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
        - registry.redhat.io/openshift4/recert-rhel9@sha256:db975b2012b3377e24fadbd65a829579cd17eb2db2419781eee7e34c8900f7df
        version: 4.20.0
      entries:
      - name: lifecycle-agent.v4.20.0
        version: 4.20.0
      name: stable
    defaultChannel: stable
    packageName: lifecycle-agent
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/streamshub
    name: amq-streams-console
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-streams-console.v3.0.1-5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
          createdAt: "2025-11-11T16:09:40Z"
          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: "true"
          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.skipRange: '>=2.9.0-0 <3.0.1-5'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:ce399e40e9467bce9b81c8d280d523732ba3e75d8f6c67e15cfcecd1842e024f
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:395103ad8ca8e1d2dcd3f05e7c3cc7abedef65189e008fe2d83928bc29558900
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        version: 3.0.1-5
      entries:
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: alpha
    - currentCSV: amq-streams-console.v2.8.0-13-0.1738265629.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:1b1b80710885b43600e22ff2a24930b5cab06cd91fad439ad8a282c00b4564b9
          createdAt: "2024-11-12T15:34:06Z"
          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: "true"
          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.substitutesFor: amq-streams-console.v2.8.0-13
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/2.8
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.23.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:366d60ff48fb9ba32dc73d92a775046d7b1eb1df21c93e31605372c7858f16ca
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:b83c3263e77904ce1c0f95b7bfab969605c97297a5598fd794d64daf508c52c0
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:1b1b80710885b43600e22ff2a24930b5cab06cd91fad439ad8a282c00b4564b9
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:38b80d81e54d59667c1f7dfa4da4125d5c7430816da130ddc84678a4e3cff6cf
        version: 2.8.0-13+0.1738265629.p
      entries:
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-2.8.x
    - currentCSV: amq-streams-console.v2.9.3-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
          createdAt: "2025-12-09T16:50:20Z"
          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: "true"
          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.skipRange: '>=2.8.0-0 <2.9.3-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/2.9
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:7d2e83b4cd9413f81a3dd196dd9b8585f46bf0ce15de20b064ec9d9184f0c506
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:fc53acbd342d479519c8ebfec15d2b6c46ff9d68b80cd4ccfb6f0232b75e48c3
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:1b10411e7ed6635720b0bc0928ab5b51bcd5f23e42cf6f50dc44428a99cade31
        version: 2.9.3-6
      entries:
      - name: amq-streams-console.v2.9.3-6
        version: 2.9.3-6
      - name: amq-streams-console.v2.9.3-5
        version: 2.9.3-5
      - name: amq-streams-console.v2.9.3-2
        version: 2.9.3-2
      - name: amq-streams-console.v2.9.2-2
        version: 2.9.2-2
      - name: amq-streams-console.v2.9.2-1
        version: 2.9.2-1
      - name: amq-streams-console.v2.9.1-7
        version: 2.9.1-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-2.9.x
    - currentCSV: amq-streams-console.v2.9.3-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
          createdAt: "2025-12-09T16:50:20Z"
          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: "true"
          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.skipRange: '>=2.8.0-0 <2.9.3-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/2.9
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:7d2e83b4cd9413f81a3dd196dd9b8585f46bf0ce15de20b064ec9d9184f0c506
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:fc53acbd342d479519c8ebfec15d2b6c46ff9d68b80cd4ccfb6f0232b75e48c3
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:1b10411e7ed6635720b0bc0928ab5b51bcd5f23e42cf6f50dc44428a99cade31
        version: 2.9.3-6
      entries:
      - name: amq-streams-console.v2.9.3-6
        version: 2.9.3-6
      - name: amq-streams-console.v2.9.3-5
        version: 2.9.3-5
      - name: amq-streams-console.v2.9.3-2
        version: 2.9.3-2
      - name: amq-streams-console.v2.9.2-2
        version: 2.9.2-2
      - name: amq-streams-console.v2.9.2-1
        version: 2.9.2-1
      - name: amq-streams-console.v2.9.1-7
        version: 2.9.1-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-2.x
    - currentCSV: amq-streams-console.v3.0.1-5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
          createdAt: "2025-11-11T16:09:40Z"
          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: "true"
          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.skipRange: '>=2.9.0-0 <3.0.1-5'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:ce399e40e9467bce9b81c8d280d523732ba3e75d8f6c67e15cfcecd1842e024f
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:395103ad8ca8e1d2dcd3f05e7c3cc7abedef65189e008fe2d83928bc29558900
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        version: 3.0.1-5
      entries:
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-3.0.x
    - currentCSV: amq-streams-console.v3.1.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
          createdAt: "2025-12-04T18:26:37Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:bb7b7b7936d953e4d320d964defd5931bd6b9a07dd73ed3bbcf3ebaea59ea6f1
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:9038f28c2e875eea355957375dff6827fe463bd28b299a4231714311622ded19
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
        version: 3.1.0-4
      entries:
      - name: amq-streams-console.v3.1.0-4
        version: 3.1.0-4
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-3.1.x
    - currentCSV: amq-streams-console.v3.1.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
          createdAt: "2025-12-04T18:26:37Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:9038f28c2e875eea355957375dff6827fe463bd28b299a4231714311622ded19
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:bb7b7b7936d953e4d320d964defd5931bd6b9a07dd73ed3bbcf3ebaea59ea6f1
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        version: 3.1.0-4
      entries:
      - name: amq-streams-console.v3.1.0-4
        version: 3.1.0-4
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-3.x
    - currentCSV: amq-streams-console.v3.1.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
          createdAt: "2025-12-04T18:26:37Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:bb7b7b7936d953e4d320d964defd5931bd6b9a07dd73ed3bbcf3ebaea59ea6f1
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:9038f28c2e875eea355957375dff6827fe463bd28b299a4231714311622ded19
        version: 3.1.0-4
      entries:
      - name: amq-streams-console.v3.1.0-4
        version: 3.1.0-4
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: stable
    defaultChannel: stable
    packageName: amq-streams-console
    provider:
      name: Red Hat
      url: https://github.com/streamshub
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: ""
    name: runtime-component-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runtime-component.v0.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: registry.connect.redhat.com/ibm/runtime-component-operator@sha256:d37b3f62575c9ad1ffcb22c89e2c3886275c326bf27aa49fb1808acba475853d
          createdAt: "2022-03-25T14:00:00Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          olm.skipRange: <0.8.1
          operators.operatorframework.io/builder: operator-sdk-v1.6.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          This advanced Operator is capable of deploying any runtime component image with consistent, production-grade QoS. It enables enterprise architects to govern the way their applications get deployed & managed in the cluster, while dramatically reducing the learning curve for developers to deploy into Kubernetes - allowing them to focus on writing the code!
          Here are some key features:

          #### Application Lifecyle
          You can deploy your runtime component container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the Operator will watch for any updates and will re-deploy the modified image.

          #### Custom RBAC
          This Operator is capable of using a custom ServiceAccount from the caller, allowing it to follow RBAC restrictions. By default it creates a ServiceAccount if one is not specified, which can also be bound with specific roles.

          #### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as: labels, annotations, and environment variables from a ConfigMap, a Secret or a value.

          #### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configuration, such as TLS settings, are also easily enabled.

          #### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto scaling to create (and delete) instances based on resource consumption.

          #### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you.
          This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart.
          We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.

          #### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating kubernetes Secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to its required services without any intervention or interruption.

          #### Exposing metrics to Prometheus
          The Runtime Component Operator exposes the runtime container's metrics via the Prometheus Operator.
          You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `spec.monitoring` field to control configurations such as the poll interval and security credentials.

          #### Easily mount logs and transaction directories
          If you need to mount the logs and transaction data from your runtime component to an external volume such as NFS (or any storage supported in your cluster), simply add the following (to specify the volume size and the location to persist) to your RuntimeComponent CR:
          ``` storage: size: 2Gi mountPath: "/logs" ```

          #### Integration with OpenShift Serverless
          Deploy your serverless runtime component using a single toggle.  The Operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing your pod to automatically scale to 0 when it is idle.

          #### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and how they are connected.

          See our [**documentation**](https://github.com/application-stacks/runtime-component-operator/tree/main/doc/) for more information.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://github.com/application-stacks/runtime-component-operator/tree/main/doc
        - name: Repository
          url: https://github.com/application-stacks/runtime-component-operator
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: beta
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator@sha256:d37b3f62575c9ad1ffcb22c89e2c3886275c326bf27aa49fb1808acba475853d
        - registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:4603bf04e53ce948bbf0ee5d239d5e265b40598044ef9e1f4539f4e466e59cb2
        version: 0.8.1
      entries:
      - name: runtime-component.v0.8.1
        version: 0.8.1
      - name: runtime-component.v0.8.0
        version: 0.8.0
      name: beta2
    - currentCSV: runtime-component.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:1b818f1a9c27baab6a39ae42d86f78bac085d772cae5cd97b357d0ee5799cf85
          createdAt: "2023-08-28T16:46:50Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          olm.skipRange: '>=0.8.0 <1.2.2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:a178716e62ab8a752bcb9023ad9631af2dbc72357266cd13b43398e21f230828
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02
        - icr.io/appcafe/runtime-component-operator@sha256:1b818f1a9c27baab6a39ae42d86f78bac085d772cae5cd97b357d0ee5799cf85
        version: 1.2.2
      entries:
      - name: runtime-component.v1.2.2
        version: 1.2.2
      name: v1.2
    - currentCSV: runtime-component.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  },
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:682c5cb3e24566bf2933b1d4a4f6bf520d9b546edcedc1ee3214ec1ac4d48629
          createdAt: "2024-08-01T20:26:42Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.3.3'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:c5288fea5b2ef8125f7b1ff7f7633eccd4e52d14ac9cfc5e473c2e317018ca3d
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91
        - icr.io/appcafe/runtime-component-operator@sha256:682c5cb3e24566bf2933b1d4a4f6bf520d9b546edcedc1ee3214ec1ac4d48629
        version: 1.3.3
      entries:
      - name: runtime-component.v1.3.3
        version: 1.3.3
      name: v1.3
    - currentCSV: runtime-component.v1.4.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  },
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:6f527c5173421c28d175b42d8c690eb63c4d1c5092c31d5350fd7a5e93661eaa
          createdAt: "2025-07-18T20:38:10Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.4.4'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:704925128f81d4ffadc4dcfaa69fc8011cf3d0f431d24222a8d7a03bad675331
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3
        - icr.io/appcafe/runtime-component-operator@sha256:6f527c5173421c28d175b42d8c690eb63c4d1c5092c31d5350fd7a5e93661eaa
        version: 1.4.4
      entries:
      - name: runtime-component.v1.4.4
        version: 1.4.4
      name: v1.4
    - currentCSV: runtime-component.v1.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  },
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:38959a0d24fdbaca34903095e21f263d9b8ed774b7b86d5fc0cebb53b274e012
          createdAt: "2025-12-08T16:01:38Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.5.2'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:71533cea0d96615d3ffbbb3d7abb4dc378fa83393ba93dc1310883e74c05e3ac
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f
        - icr.io/appcafe/runtime-component-operator@sha256:38959a0d24fdbaca34903095e21f263d9b8ed774b7b86d5fc0cebb53b274e012
        version: 1.5.2
      entries:
      - name: runtime-component.v1.5.2
        version: 1.5.2
      name: v1.5
    defaultChannel: v1.5
    packageName: runtime-component-operator-certified
    provider:
      name: Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Seldon Technologies
      provider-url: ""
    name: seldon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: seldon-operator.v1.14.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machinelearning.seldon.io/v1",
                "kind": "SeldonDeployment",
                "metadata": {
                  "labels": {
                    "app": "seldon",
                    "app.kubernetes.io/instance": "seldon1",
                    "app.kubernetes.io/name": "seldon",
                    "app.kubernetes.io/version": "v0.5"
                  },
                  "name": "seldon-model"
                },
                "spec": {
                  "name": "test-deployment",
                  "predictors": [
                    {
                      "componentSpecs": [
                        {
                          "spec": {
                            "containers": [
                              {
                                "image": "seldonio/mock_classifier:1.6.0",
                                "name": "classifier"
                              }
                            ]
                          }
                        }
                      ],
                      "graph": {
                        "children": [],
                        "name": "classifier",
                        "type": "MODEL"
                      },
                      "name": "example",
                      "replicas": 1
                    }
                  ]
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: AI/Machine Learning
          certified: "false"
          containerImage: docker.io/seldonio/seldon-core-operator:1.14.1
          createdAt: "2019-05-21 15:00:00"
          description: The Seldon operator for management, monitoring and operations
            of machine learning systems through the Seldon Engine. Once installed,
            the Seldon Operator provides multiple functions which facilitate the productisation,
            monitoring and maintenance of machine learning systems at scale.
          olm.skipRange: <1.13.1
          operators.operatorframework.io/builder: operator-sdk-v1.22.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/SeldonIO/seldon-core
          support: Clive Cox
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A seldon engine deployment
            displayName: Seldon Deployment
            kind: SeldonDeployment
            name: seldondeployments.machinelearning.seldon.io
            version: v1
        description: "The Seldon operator enables for native operation of production
          machine learning workloads, including monitoring and operations of language-agnostic
          models with the benefits of real-time metrics and log analysis.\n   \n##
          Overview\nSeldon Core is an open source platform for deploying machine learning
          models on a Kubernetes cluster.\n\n* Deploy machine learning models in the
          cloud or on-premise.\n* Get metrics and ensure proper governance and compliance
          for your running machine learning models.\n* Create powerful inference graphs
          made up of multiple components.\n* Provide a consistent serving layer for
          models built using heterogeneous ML toolkits.\n\nYou can get started by
          following the guides in our documentation at https://docs.seldon.io/projects/seldon-core/en/latest/workflow/README.html\n"
        displayName: Seldon Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mlops
        - aiops
        - production
        - monitoring
        links:
        - name: Website
          url: https://www.seldon.io/
        - name: Documentation
          url: https://docs.seldon.io/projects/seldon-core/en/latest/
        maintainers:
        - email: hello@seldon.io
          name: Seldon Technologies
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Seldon Technologies
        relatedImages:
        - docker.io/seldonio/seldon-core-operator:1.14.1
        - quay.io/openshift-community-operators/seldon-operator@sha256:864e87ef21e81624010a1cbcee6b17c8c816dcb0a699c66badd32eec3baf39fd
        - ""
        version: 1.14.1
      entries:
      - name: seldon-operator.v1.14.1
        version: 1.14.1
      name: stable
    defaultChannel: stable
    packageName: seldon-operator
    provider:
      name: Seldon Technologies
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Backube
      provider-url: https://github.com/backube
    name: snapscheduler
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: snapscheduler.v3.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "snapscheduler.backube/v1",
                "kind": "SnapshotSchedule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "snapscheduler",
                    "app.kubernetes.io/instance": "daily",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "snapshotschedule",
                    "app.kubernetes.io/part-of": "snapscheduler"
                  },
                  "name": "daily"
                },
                "spec": {
                  "retention": {
                    "maxCount": 7
                  },
                  "schedule": "0 0 * * *"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          certified: "false"
          containerImage: quay.io/backube/snapscheduler:3.5.0
          createdAt: "2025-05-14T14:46:43Z"
          description: The SnapScheduler operator takes snapshots of Kubernetes CSI-based
            persistent volumes according to user-supplied schedules.
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/snapscheduler
          support: https://github.com/backube/snapscheduler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SnapshotSchedule defines a schedule for taking automated
              snapshots of PVC(s)
            displayName: Snapshot Schedule
            kind: SnapshotSchedule
            name: snapshotschedules.snapscheduler.backube
            version: v1
        description: |-
          ## About this operator

          The SnapScheduler operator takes snapshots of CSI-based PersistentVolumes
          according to a configurable
          [Cron-like](https://en.wikipedia.org/wiki/Cron#Overview) schedule. The
          schedules include configurable retention policies for snapshots as well as
          selectors to limit the volumes that are snapshotted. An example schedule
          could be:

          > *Snapshot **all volumes** in a namespace **daily at midnight**, retaining
          > the most recent **7** snapshots for each volume.*

          Multiple schedules can be combined to provide more elaborate protection
          schemes. For example, a given volume (or collection of volumes) could be
          protected with:

          - 6 hourly snapshots
          - 7 daily snapshots
          - 4 weekly snapshots
          - 12 monthly snapshots

          ### How it works

          The operator watches for `SnapshotSchedule` CRs in each namespace. When the
          current time matches the schedule's cronspec, the operator creates a
          `VolumeSnapshot` object for each `PersistentVolumeClaim` in the namespace
          (or subset thereof if a label selector is provided). The `VolumeSnapshot`
          objects are named according to the template:
          `<pvcname>-<schedulename>-<timestamp>`. After creating the new snapshots,
          the oldest snapshots are removed if necessary, according to the retention
          policy of the schedule.

          Please see the [full
          documentation](https://backube.github.io/snapscheduler/) for more
          information.

          ## Requirements

          - OpenShift >= 4.7 (Kubernetes >= 1.20)
          - CSI-based storage driver that supports snapshots (i.e. has the
            `CREATE_DELETE_SNAPSHOT` capability)

          ## Examples

          The schedule for snapshotting is controlled by the
          `snapshotschedules.snapscheduler.backube` Custom Resource. This is a
          namespaced resource that applies only to the PersistentVolumeClaims in its
          namespace.

          Below is a simple example that keeps 7 daily (taken at midnight) snapshots
          of all PVCs in a given namespace:

          ```yaml
          ---
          apiVersion: snapscheduler.backube/v1
          kind: SnapshotSchedule
          metadata:
            name: daily
          spec:
            retention:
              maxCount: 7
            schedule: "0 0 * * *"
          ```

          See the [usage
          documentation](https://backube.github.io/snapscheduler/usage.html) for full
          details, including how to:

          - add label selectors to restrict which PVCs this schedule applies to
          - set the VolumeSnapshotClass used by the schedule
          - apply custom labels to the automatically created VolumeSnapshot objects
        displayName: SnapScheduler
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - snapshot
        - storage
        - scheduler
        links:
        - name: Documentation
          url: https://backube.github.io/snapscheduler/
        - name: Source
          url: https://github.com/backube/snapscheduler
        - name: Blog
          url: https://backube.github.io/
        maintainers:
        - email: jstrunk@redhat.com
          name: John Strunk
        maturity: stable
        minKubeVersion: 1.20.0-0
        provider:
          name: Backube
          url: https://github.com/backube
        relatedImages:
        - quay.io/community-operator-pipeline-prod/snapscheduler@sha256:53902ba6ef33ee750285bdeacc6701027d90dada0184fd162c7a587cfdb57585
        - quay.io/backube/snapscheduler:3.5.0
        - quay.io/brancz/kube-rbac-proxy:v0.19.1
        version: 3.5.0
      entries:
      - name: snapscheduler.v3.5.0
        version: 3.5.0
      - name: snapscheduler.v3.4.0
        version: 3.4.0
      - name: snapscheduler.v3.3.0
        version: 3.3.0
      - name: snapscheduler.v3.2.0
        version: 3.2.0
      - name: snapscheduler.v3.1.0
        version: 3.1.0
      - name: snapscheduler.v3.0.0
        version: 3.0.0
      - name: snapscheduler.v2.1.0
        version: 2.1.0
      - name: snapscheduler.v2.0.0
        version: 2.0.0
      name: candidate
    - currentCSV: snapscheduler.v3.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "snapscheduler.backube/v1",
                "kind": "SnapshotSchedule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "snapscheduler",
                    "app.kubernetes.io/instance": "daily",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "snapshotschedule",
                    "app.kubernetes.io/part-of": "snapscheduler"
                  },
                  "name": "daily"
                },
                "spec": {
                  "retention": {
                    "maxCount": 7
                  },
                  "schedule": "0 0 * * *"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          certified: "false"
          containerImage: quay.io/backube/snapscheduler:3.5.0
          createdAt: "2025-05-14T14:46:43Z"
          description: The SnapScheduler operator takes snapshots of Kubernetes CSI-based
            persistent volumes according to user-supplied schedules.
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/snapscheduler
          support: https://github.com/backube/snapscheduler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SnapshotSchedule defines a schedule for taking automated
              snapshots of PVC(s)
            displayName: Snapshot Schedule
            kind: SnapshotSchedule
            name: snapshotschedules.snapscheduler.backube
            version: v1
        description: |-
          ## About this operator

          The SnapScheduler operator takes snapshots of CSI-based PersistentVolumes
          according to a configurable
          [Cron-like](https://en.wikipedia.org/wiki/Cron#Overview) schedule. The
          schedules include configurable retention policies for snapshots as well as
          selectors to limit the volumes that are snapshotted. An example schedule
          could be:

          > *Snapshot **all volumes** in a namespace **daily at midnight**, retaining
          > the most recent **7** snapshots for each volume.*

          Multiple schedules can be combined to provide more elaborate protection
          schemes. For example, a given volume (or collection of volumes) could be
          protected with:

          - 6 hourly snapshots
          - 7 daily snapshots
          - 4 weekly snapshots
          - 12 monthly snapshots

          ### How it works

          The operator watches for `SnapshotSchedule` CRs in each namespace. When the
          current time matches the schedule's cronspec, the operator creates a
          `VolumeSnapshot` object for each `PersistentVolumeClaim` in the namespace
          (or subset thereof if a label selector is provided). The `VolumeSnapshot`
          objects are named according to the template:
          `<pvcname>-<schedulename>-<timestamp>`. After creating the new snapshots,
          the oldest snapshots are removed if necessary, according to the retention
          policy of the schedule.

          Please see the [full
          documentation](https://backube.github.io/snapscheduler/) for more
          information.

          ## Requirements

          - OpenShift >= 4.7 (Kubernetes >= 1.20)
          - CSI-based storage driver that supports snapshots (i.e. has the
            `CREATE_DELETE_SNAPSHOT` capability)

          ## Examples

          The schedule for snapshotting is controlled by the
          `snapshotschedules.snapscheduler.backube` Custom Resource. This is a
          namespaced resource that applies only to the PersistentVolumeClaims in its
          namespace.

          Below is a simple example that keeps 7 daily (taken at midnight) snapshots
          of all PVCs in a given namespace:

          ```yaml
          ---
          apiVersion: snapscheduler.backube/v1
          kind: SnapshotSchedule
          metadata:
            name: daily
          spec:
            retention:
              maxCount: 7
            schedule: "0 0 * * *"
          ```

          See the [usage
          documentation](https://backube.github.io/snapscheduler/usage.html) for full
          details, including how to:

          - add label selectors to restrict which PVCs this schedule applies to
          - set the VolumeSnapshotClass used by the schedule
          - apply custom labels to the automatically created VolumeSnapshot objects
        displayName: SnapScheduler
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - snapshot
        - storage
        - scheduler
        links:
        - name: Documentation
          url: https://backube.github.io/snapscheduler/
        - name: Source
          url: https://github.com/backube/snapscheduler
        - name: Blog
          url: https://backube.github.io/
        maintainers:
        - email: jstrunk@redhat.com
          name: John Strunk
        maturity: stable
        minKubeVersion: 1.20.0-0
        provider:
          name: Backube
          url: https://github.com/backube
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.19.1
        - quay.io/community-operator-pipeline-prod/snapscheduler@sha256:53902ba6ef33ee750285bdeacc6701027d90dada0184fd162c7a587cfdb57585
        - quay.io/backube/snapscheduler:3.5.0
        version: 3.5.0
      entries:
      - name: snapscheduler.v3.5.0
        version: 3.5.0
      - name: snapscheduler.v3.4.0
        version: 3.4.0
      - name: snapscheduler.v3.3.0
        version: 3.3.0
      - name: snapscheduler.v3.2.0
        version: 3.2.0
      - name: snapscheduler.v3.1.0
        version: 3.1.0
      - name: snapscheduler.v3.0.0
        version: 3.0.0
      - name: snapscheduler.v2.1.0
        version: 2.1.0
      - name: snapscheduler.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: snapscheduler
    provider:
      name: Backube
      url: https://github.com/backube
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/securesign/secure-sign-operator
    name: rhtas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhtas-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": {
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname-intermediate",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname-leaf",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname-root",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname-intermediate",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname-leaf",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname-root",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": {
                  "database": {
                    "create": true
                  },
                  "server": {
                    "replicas": 1
                  },
                  "signer": {
                    "replicas": 1
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
          createdAt: "2025-11-21T12:45:10Z"
          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: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.1-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        version: 1.3.1
      entries:
      - name: rhtas-operator.v1.3.1
        version: 1.3.1
      - name: rhtas-operator.v1.3.0
        version: 1.3.0
      - name: rhtas-operator.v1.2.1
        version: 1.2.1
      - name: rhtas-operator.v1.2.0
        version: 1.2.0
      - deprecation:
          message: rhtas-operator.v1.1.2 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.2
        version: 1.1.2
      - deprecation:
          message: rhtas-operator.v1.1.1 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.1
        version: 1.1.1
      - deprecation:
          message: rhtas-operator.v1.1.0 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.0
        version: 1.1.0
      name: stable
    - currentCSV: rhtas-operator.v1.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": null,
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:e52d07e2cd8cbdc2ccd0336a4fd29cbb2e5b8a1be628350294a54579cc2636ed
          createdAt: "2025-04-08T09:29:59Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:75f1049431f9e92898a4217870309cbbb3b39c8362e929c0bad3b53cad4459db
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:e52d07e2cd8cbdc2ccd0336a4fd29cbb2e5b8a1be628350294a54579cc2636ed
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:329a0dad7842d4ef60430b0e3f188231bea9e579427443ecd42eb62a5c282266
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:7ce611aefdfedd8b2a633def482cf41f390c95b8f8c800b6163a585f117a9e2e
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:09b8259ec9e982a33bde84c7c901ad70c79f3e5f6dd7880b1b1e573dafcbd56c
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:dc994a95be22b0f4bab022fc362c4f44c6a7d1887a2eb0d04870d75654ec013b
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:603a2ffa54df0bd45ff42ac710dd16331560eda2be93442232b045c959773c4d
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:540556453c98db3919e5f305a99c699e767e2891a95fe7527ace578f3c67a308
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:76c24a38ac89ed632d38e44049f37e4997abfa27fa8cadbb8afb42575031296f
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:571c48ecb2658ce70199c06dc483ea48a16e032a764a6830388ad845f508d981
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:5a752cefdaf28bfc53847185cdd5fef1ee47e3dcff8472f8a8bf7bbdc224ef57
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:775b261b8f258b369213246f2da5c91218678acb5e3b8bb4670b143f487767af
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:796860a3e85712c60398c36983e0ff4d45325c7a4de869da2ebf1b6ba4b19825
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:6131053778ea04e437f3005f90d1138aa11ebc58e3a9295e2a8d8ef6713a52be
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:3b8f49c41df15022f8ffdf3a8f8605b14c14f4e10eae754a06a86b6585d158b3
        - registry.redhat.io/ubi9/httpd-24@sha256:366cc5bc3b96069fecaa0abeb9d3510c507e69a20de1d205d881da8ae8561ab4
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1f5a30a285a16635a7234c3c1763dfb385c8bffd605fc862b782bdb5c6c61ea3
        version: 1.1.2
      deprecation:
        message: stable-v1.1 is no longer supported. Please switch to channel 'stable'
          or channel 'stable-v1.2' for continued support.
      entries:
      - deprecation:
          message: rhtas-operator.v1.1.2 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.2
        version: 1.1.2
      - deprecation:
          message: rhtas-operator.v1.1.1 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.1
        version: 1.1.1
      - deprecation:
          message: rhtas-operator.v1.1.0 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: rhtas-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": null,
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:7395b169066adc88a530c421ab9534d61bd2a680c61f86b9afabf9cf8bfd4b7e
          createdAt: "2025-08-17T21:52:06Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:6270ba29adf779de5d3916d5e82f1cd9491ba89d4ae2042347b6ad6d1819dd26
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:02fbd4772c185edf38fcee4e5c5e1c9dad82b77c9da824addaebc445b67d35ac
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:640633823a54c11fe2a8b3d05e571399fda415b6f0b3adf1ba9806882a94bdd4
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:7c4e739622f68cd924afcb41cc788cdadc34c725283a097e564d620f39637bac
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:a93df3206409de75613d398e7dcd8b30ff7cc36eb00349c435784f73f00a2335
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:531603563c69aac6905cd6b8157d30781040527404ac2313acba5a9310e0b713
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:fe31830df2d99359749cb86cd1ac2f32fcc3de07aae427d2f2cd3998d31d2833
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:c22cdb9a17f85e13c00412cba83aa644e90a0faea0236029d0f1c53fe212e227
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:7395b169066adc88a530c421ab9534d61bd2a680c61f86b9afabf9cf8bfd4b7e
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:030986ea26f33db3a192c67a93cd2bde352f23c68a17b062fc062955675c3c51
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:fc018a45b7eb48690c46c83f52cac55fa40089e6b02686bc21265dc7c2205b8f
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:09b4aeeb607c88c72f69e6f87cb840c82ef5752c64a58fa13551db749fac2530
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:eb38e98dbb9828fe033a5388609132f7246fe77d2f4d258d015a94ea30752b24
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:1c2201d50469d70ec6e21546c7c74bd52251d420dc1dcfa5375c1cf61dd3a9fd
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:12b438ea70f83ee6edb12c96b507f92510f4afba824eac34c8f50793c4199db6
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1d782a127d2f8bdab633f287cb2df2e400ae91bf5d4b913473539d8512dfaab6
        - registry.redhat.io/ubi9/httpd-24@sha256:badeee0aa3477e61de64f6a2b93e8a3673edd38fc860125f7536506f3d592132
        version: 1.2.1
      entries:
      - name: rhtas-operator.v1.2.1
        version: 1.2.1
      - name: rhtas-operator.v1.2.0
        version: 1.2.0
      name: stable-v1.2
    - currentCSV: rhtas-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": {
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname-intermediate",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname-leaf",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname-root",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname-intermediate",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname-leaf",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname-root",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": {
                  "database": {
                    "create": true
                  },
                  "server": {
                    "replicas": 1
                  },
                  "signer": {
                    "replicas": 1
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
          createdAt: "2025-11-21T12:45:10Z"
          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: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.1-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        version: 1.3.1
      entries:
      - name: rhtas-operator.v1.3.1
        version: 1.3.1
      - name: rhtas-operator.v1.3.0
        version: 1.3.0
      name: stable-v1.3
    defaultChannel: stable
    packageName: rhtas-operator
    provider:
      name: Red Hat
      url: https://github.com/securesign/secure-sign-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: HashiCorp
      provider-url: https://www.hashicorp.com/
    name: vault-secrets-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vault-secrets-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "secrets.hashicorp.com/v1beta1",
                "kind": "VaultConnection",
                "metadata": {
                  "name": "vaultconnection-sample",
                  "namespace": "tenant-1"
                },
                "spec": {
                  "address": "http://vault.vault.svc.cluster.local:8200"
                }
              },
              {
                "apiVersion": "secrets.hashicorp.com/v1beta1",
                "kind": "VaultAuth",
                "metadata": {
                  "name": "vaultauth-sample",
                  "namespace": "tenant-1"
                },
                "spec": {
                  "vaultConnectionRef": "vaultconnection-sample",
                  "method": "kubernetes",
                  "mount": "kubernetes",
                  "kubernetes": {
                    "role": "sample",
                    "serviceAccount": "default"
                  }
                }
              },
              {
                "apiVersion": "secrets.hashicorp.com/v1beta1",
                "kind": "VaultStaticSecret",
                "metadata": {
                  "name": "vaultstaticsecret-sample",
                  "namespace": "tenant-1"
                },
                "spec": {
                  "vaultAuthRef": "vaultauth-sample",
                  "mount": "kvv2",
                  "type": "kv-v2",
                  "path": "secret",
                  "refreshAfter": "5s",
                  "destination": {
                    "create": true,
                    "name": "secret1"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.connect.redhat.com/hashicorp/vault-secrets-operator@sha256:81f01193c67de89984d51c41d18d807c7e9b44eb949677caa5c191d008cf1562
          createdAt: "2025-12-12T23:37:58Z"
          description: The Vault Secrets Operator (VSO) allows Pods to consume Vault
            secrets natively from Kubernetes Secrets.
          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: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/hashicorp/vault-secrets-operator
          support: HashiCorp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CSISecrets
            name: csisecrets.secrets.hashicorp.com
            version: v1beta1
          - description: HCPAuth is the Schema for the hcpauths API
            displayName: HCPAuth
            kind: HCPAuth
            name: hcpauths.secrets.hashicorp.com
            version: v1beta1
          - description: HCPVaultSecretsApp is the Schema for the hcpvaultsecretsapps
              API
            displayName: HCPVault Secrets App
            kind: HCPVaultSecretsApp
            name: hcpvaultsecretsapps.secrets.hashicorp.com
            version: v1beta1
          - description: SecretTransformation is the Schema for the secrettransformations
              API
            displayName: Secret Transformation
            kind: SecretTransformation
            name: secrettransformations.secrets.hashicorp.com
            version: v1beta1
          - description: VaultAuthGlobal is the Schema for the vaultauthglobals API
            displayName: Vault Auth Global
            kind: VaultAuthGlobal
            name: vaultauthglobals.secrets.hashicorp.com
            version: v1beta1
          - description: VaultAuth is the Schema for the vaultauths API
            displayName: Vault Auth
            kind: VaultAuth
            name: vaultauths.secrets.hashicorp.com
            version: v1beta1
          - description: VaultConnection is the Schema for the vaultconnections API
            displayName: Vault Connection
            kind: VaultConnection
            name: vaultconnections.secrets.hashicorp.com
            version: v1beta1
          - description: VaultDynamicSecret is the Schema for the vaultdynamicsecrets
              API
            displayName: Vault Dynamic Secret
            kind: VaultDynamicSecret
            name: vaultdynamicsecrets.secrets.hashicorp.com
            version: v1beta1
          - description: VaultPKISecret is the Schema for the vaultpkisecrets API
            displayName: Vault PKISecret
            kind: VaultPKISecret
            name: vaultpkisecrets.secrets.hashicorp.com
            version: v1beta1
          - description: VaultStaticSecret is the Schema for the vaultstaticsecrets
              API
            displayName: Vault Static Secret
            kind: VaultStaticSecret
            name: vaultstaticsecrets.secrets.hashicorp.com
            version: v1beta1
        description: |-
          The Vault Secrets Operator (VSO) allows Pods to consume Vault secrets
          natively from Kubernetes Secrets.

          ## Overview

          The Vault Secrets Operator operates by watching for changes to its supported set of Custom Resource Definitions (CRD).
          Each CRD provides the specification required to allow the *Operator* to synchronize a Vault Secrets to a Kubernetes Secret.
          The *Operator* writes the *source* Vault secret data directly to the *destination* Kubernetes Secret, ensuring that any
          changes made to the *source* are replicated to the *destination* over its lifetime. In this way, an application only needs
          to have access to the *destination* secret in order to make use of the secret data contained within.

          See the developer docs for more info [here](https://developer.hashicorp.com/vault/docs/platform/k8s/vso), including
          [examples](https://developer.hashicorp.com/vault/docs/platform/k8s/vso/examples) and a
          [tutorial](https://developer.hashicorp.com/vault/tutorials/kubernetes/vault-secrets-operator)
          for getting started.
        displayName: Vault Secrets Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vault
        - security
        - secrets
        links:
        - name: Vault Secrets Operator
          url: https://github.com/hashicorp/vault-secrets-operator
        - name: Documentation
          url: https://developer.hashicorp.com/vault/docs/platform/k8s/vso
        maintainers:
        - email: support@hashicorp.com
          name: HashiCorp Support
        maturity: stable
        provider:
          name: HashiCorp
          url: https://www.hashicorp.com/
        relatedImages:
        - registry.connect.redhat.com/hashicorp/vault-secrets-operator-bundle@sha256:728c46ce4a9bbf785de180367f43b50ceebdfba815efbe41abe45020361e6ac7
        - registry.connect.redhat.com/hashicorp/vault-secrets-operator@sha256:81f01193c67de89984d51c41d18d807c7e9b44eb949677caa5c191d008cf1562
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:5b333f3daa2eebe3c3a959e30736993d8ebabbe594c6d3f1b7e14296485637d5
        version: 1.1.0
      entries:
      - name: vault-secrets-operator.v1.1.0
        version: 1.1.0
      - name: vault-secrets-operator.v1.0.1
        version: 1.0.1
      - name: vault-secrets-operator.v1.0.0
        version: 1.0.0
      - name: vault-secrets-operator.v0.10.0
        version: 0.10.0
      - name: vault-secrets-operator.v0.9.1
        version: 0.9.1
      - name: vault-secrets-operator.v0.9.0
        version: 0.9.0
      - name: vault-secrets-operator.v0.8.1
        version: 0.8.1
      - name: vault-secrets-operator.v0.8.0
        version: 0.8.0
      - name: vault-secrets-operator.v0.7.0
        version: 0.7.0
      - name: vault-secrets-operator.v0.6.0
        version: 0.6.0
      - name: vault-secrets-operator.v0.5.2
        version: 0.5.2
      - name: vault-secrets-operator.v0.5.1
        version: 0.5.1
      - name: vault-secrets-operator.v0.5.0
        version: 0.5.0
      - name: vault-secrets-operator.v0.4.3
        version: 0.4.3
      name: stable
    defaultChannel: stable
    packageName: vault-secrets-operator
    provider:
      name: HashiCorp
      url: https://www.hashicorp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Strimzi
      provider-url: ""
    name: strimzi-kafka-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: strimzi-cluster-operator.v0.49.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.1.1",
                      "metadataVersion": "4.1-IV1",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.1.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "groupId":"my-connect-group",
                  "configStorageTopic":"my-connect-configs",
                  "statusStorageTopic":"my-connect-status",
                  "offsetStorageTopic":"my-connect-offsets",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.1.1",
                  "replicas": 1,
                  "target": {
                    "alias": "cluster-b",
                    "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                    "groupId":"my-mm2-group",
                    "configStorageTopic":"my-mm2-configs",
                    "statusStorageTopic":"my-mm2-status",
                    "offsetStorageTopic":"my-mm2-offsets",
                    "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                    }
                  },
                  "mirrors": [
                    {
                      "source": {
                        "alias": "cluster-a",
                        "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                      },
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
          createdAt: "2025-11-18 15:11:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * ⚠️ **SECURITY: Strimzi 0.49.1 addresses CVE-2025-66623.**
            **If you use Strimzi 0.47.0 or newer, we recommend upgrading to 0.49.1.**

          * **Strimzi 0.49 introduces new API version `v1` to all Strimzi custom resources.**
            The old API versions (`v1alpha1`, `v1beta1`, and `v1beta2`) will continue to be supported until Strimzi 1.0.0 / 0.52.0.
            For more details about the migration to the v1 API and CRD upgrades, see the [documentation](https://strimzi.io/docs/operators/in-development/deploying.html#assembly-api-conversion-str).

          * **Before upgrading to Strimzi 0.49 or newer**, make sure that you update your KafkaUser resources to [use the `.spec.authorization.acls[].operations` field instead of the deprecated `.spec.authorization.acls[].operation`](https://strimzi.io/docs/operators/in-development/deploying.html#con-api-conversion-v1-str).
          * **When rack-awareness is enabled in the `Kafka` custom resource (`.spec.kafka.rack`), Strimzi will not automatically add the best-effort-affinity rules for spreading the Kafka Pods between the zones.**
            Please make sure to set your own `topologySpreadConstraint` or `affinity` rules instead.

          * **From Strimzi 0.48.0, we support only Kubernetes 1.27 and newer.**
            Kubernetes 1.25 and 1.26 are not supported anymore

          ### New in 0.49
          * Support for Kafka 4.0.1 and 4.1.1
          * New v1 API for Strimzi CRDs
          * Refactoring of the KafkaConnect and KafkaMirrorMaker2 custom resources and their structure
          * Changes to how the template fields in Kafka and KafkaNodePool custom resources are handled
          * Removed automatic best-effort affinity rules when rack-awareness is enabled
          * BlockOwnerDeletion is set to true in owner references
          * Support of Buildah for building custom Kafka Connect container images
          * And many more ...
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:d495d3b6c98d1ea22ed3bdf0d6d06d6cda1c5b35087c817e8cf807892b178520
        - quay.io/strimzi/kaniko-executor@sha256:ba89470b45a49e5e09aaab91a5c3c03ecb14f9013d598bc14b3d756eb9a145b4
        - quay.io/strimzi/maven-builder@sha256:b8831c2aad621b80dce38484fae353cc5226bfc4dffb0f4c9d8b8d86e0fb3933
        - quay.io/strimzi/kafka@sha256:8f775ee53622bf68b791c405e40299baa3d845b98e282d1a9269f9466018e990
        - quay.io/strimzi/kafka@sha256:bfbee54f85beb3731cf41483befa39d8c5ebe5db002df6265c6ea95b6a156749
        - quay.io/strimzi/buildah@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/kafka-bridge@sha256:53034f64f0b672f10b5bacea1c7a25132f118df7fd5c9032c4dbf702ed93796a
        - quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:928c76a840e7de6f1d9350988238bec7035ed981118e64cfedde4e32d5cb5baf
        - quay.io/strimzi/kafka@sha256:73799dcf5bc7d1bb19f500f345d8892a1f91cf0213e01d9b59d3a1a53cc80aca
        version: 0.49.1
      entries:
      - name: strimzi-cluster-operator.v0.49.1
        version: 0.49.1
      - name: strimzi-cluster-operator.v0.49.0
        version: 0.49.0
      - name: strimzi-cluster-operator.v0.48.0
        version: 0.48.0
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: stable
    - currentCSV: strimzi-cluster-operator.v0.23.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"2.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"2.8",
                        "inter.broker.protocol.version":"2.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnectS2I",
                "metadata":{
                  "name":"my-connect-s2i-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "whitelist":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 2,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"2.8.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": 1,
                        "offset.storage.replication.factor": 1,
                        "status.storage.replication.factor": 1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "NetworkOutboundCapacityGoal",
                    "CpuCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster with S2I support"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:59d939f342f96d0e8a54c96fd187832c4b19cd4137bf55ace53d486728ae6c5f
          createdAt: "2021-05-14 11:37:13"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster with Source 2 Image support
            displayName: Kafka Connect Source to Image
            kind: KafkaConnectS2I
            name: kafkaconnects2is.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  Starting with Strimzi 0.23, we support only the `v1beta2` API version of all Strimzi custom resources.  This is a required for migration to `apiextensions/v1` which is needed because Kubernetes 1.22 will remove support for `apiextensions/v1beta1`.  Migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs **before upgrading to Strimzi 0.23**. For more details about the CRD upgrades, see the [documentation](https://strimzi.io/docs/operators/0.23.0/deploying.html#assembly-upgrade-resources-str).
          ### New in 0.23
          * Migrate to CRD v1 (required by Kubernetes 1.22+)
          * Strimzi API versions `v1alpha1` and `v1beta1` were removed from all Strimzi custom resources apart from `KafkaTopic` and `KafkaUser` (use `v1beta2` versions instead)
          * Add support for Kafka 2.8.0 and 2.6.2, remove support for Kafka 2.5.x
          * Make it possible to configure maximum number of connections and maximum connection creation rate in listener configuration
          * Add support for configuring finalizers for `loadbalancer` type listeners
          * Use dedicated Service Account for Kafka Connect Build on Kubernetes
          * Remove direct ZooKeeper access for handling user quotas in the User Operator. Add usage of Admin Client API instead.
          * Support for configuring custom Authorizer implementation
          * Changed Reconciliation interval for Topic Operator from 90 to 120 seconds (to keep it the same as for other operators)
          * Changed Zookeeper session timeout default value to 18 seconds for Topic and User Operators (for improved resiliency)
          * Removed requirement for replicas and partitions KafkaTopic spec making these parameters optional
          * Support to configure a custom filter for parent CR's labels propagation into subresources
          * Allow disabling service links (environment variables describing Kubernetes services) in Pod template
          * Add support for separate control plane listener (disabled by default, available via the `ControlPlaneListener` feature gate)
          * Support for Dual Stack networking
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _master_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/master/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/master/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:e90695b35d6dd5db20c9900dd0dab95d1ef908f3145b4f9f436b903303c88549
        - quay.io/strimzi/operator@sha256:59d939f342f96d0e8a54c96fd187832c4b19cd4137bf55ace53d486728ae6c5f
        - quay.io/strimzi/kafka@sha256:641f46114c59d61577bcb3f4ef5af16aea3ed42c2a575f8d3641c82848df85e8
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:68cdc37990bc7da8a6bbe3a4908378c8026e5ff980bf8c44c0277f689006fc51
        - quay.io/strimzi/jmxtrans@sha256:b4ec1844f4cc5eb74cd0aac83d74b81b977e178bf670d1136d1af0b68663d0a3
        - quay.io/strimzi/kafka@sha256:699bff48ee445d8ba381a791cd0340015e3ecede8d169f41bc151095ab7fb5cc
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        - quay.io/strimzi/kafka-bridge@sha256:bed07186355a4c04ee50e90048e3bd3a023264093a9ef28f0278cce44640e93f
        - quay.io/strimzi/kafka@sha256:d2745f48ed262290ce66c3362ffb9b9a8cfeb9c76beac40c995f72f3f06ad10e
        - quay.io/strimzi/kafka@sha256:dbc53bb374d2cb9513a5bb8f80fea751c91b249cabd36d8b3c04af5e5c961738
        version: 0.23.0
      entries:
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.23.x
    - currentCSV: strimzi-cluster-operator.v0.24.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"2.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"2.8",
                        "inter.broker.protocol.version":"2.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnectS2I",
                "metadata":{
                  "name":"my-connect-s2i-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 2,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"2.8.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster with S2I support"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:786ea69c77e0651f009a73a8b3ce0b3d41b3cd71b917dc0d9bdc61c725f494a6
          createdAt: "2021-06-24 13:13:13"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster with Source 2 Image support
            displayName: Kafka Connect Source to Image
            kind: KafkaConnectS2I
            name: kafkaconnects2is.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: "Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org)
          cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/)
          in various deployment configurations. See our [website](https://strimzi.io)
          for more details about the project.\n### CRD Upgrades\n**!!! IMPORTANT !!!**
          \ This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.
          \ If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed
          for all Strimzi CRDs and CRs before the upgrade to 0.24 is done!  If upgrading
          from Strimzi version earlier than 0.22, you need to first install the CRDs
          from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi
          CRDs and CRs before the upgrade to 0.24 is done!  For more details about
          the CRD upgrades, see the documentation.\n### New in 0.24\n* Add support
          for Kafka 2.7.1 and remove support for 2.6.0, 2.6.1, and 2.6.2\n* Add support
          for [Kubernetes Configuration Provider for Apache Kafka](https://github.com/strimzi/kafka-kubernetes-config-provider)\n*
          Use Red Hat UBI8 base image\n* Support for patching of service accounts
          and configuring their labels and annotations. The feature is disabled by
          default and enabled using the new `ServiceAccountPatching` feature gate.\n*
          Added support for configuring cluster-operator's worker thread pool size
          that is used for various sync and async tasks\n* Add Kafka Quotas plugin
          with produce, consume, and storage quotas\n* Support pausing reconciliation
          of KafkaTopic CR with annotation `strimzi.io/pause-reconciliation`\n* Update
          cruise control to 2.5.57\n* Update to Strimzi Kafka Bridge to 0.20.1\n*
          Support for broker load information added to the rebalance optimization
          proposal. Information on the load difference, before and after a rebalance
          is stored in a ConfigMap\n* Add support for selectively changing the verbosity
          of logging for individual CRs, using markers.\n* Added support for `controller_mutation_rate'
          quota. Creation/Deletion of topics and creation of partitions can be configured
          through this.\n* Use newer version of Kafka Exporter with different bugfixes
          \n### Supported Features\n* **Manages the Kafka Cluster** - Deploys and
          manages all of the components of this complex application, including dependencies
          like Apache ZooKeeper® that are traditionally hard to administer.\n* **Includes
          Kafka Connect** - Allows for configuration of common data sources and sinks
          to move data into and out of the Kafka cluster.\n* **Topic Management**
          - Creates and manages Kafka Topics within the cluster.\n* **User Management**
          - Creates and manages Kafka Users within the cluster.\n* **Connector Management**
          - Creates and manages Kafka Connect connectors.\n* **Includes Kafka Mirror
          Maker 1 and 2** - Allows for morroring data between different Apache Kafka®
          clusters.\n* **Includes HTTP Kafka Bridge** - Allows clients to send and
          receive messages through an Apache Kafka® cluster via HTTP protocol.\n*
          **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes
          partition replicas according to specified goals in order to achieve the
          best cluster performance.\n* **Monitoring** - Built-in support for monitoring
          using Prometheus and provided Grafana dashabords\n### Upgrading your Clusters\nThe
          Strimzi Operator understands how to run and upgrade between a set of Kafka
          versions. When specifying a new version in your config, check to make sure
          you aren't using any features that may have been removed. See [the upgrade
          guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str)
          for more information.\n### Storage\nAn efficient data storage infrastructure
          is essential to the optimal performance of Apache Kafka®. Apache Kafka®
          deployed via Strimzi requires block storage. The use of file storage (for
          example, NFS) is not recommended.\nThe Strimzi Operator supports three types
          of data storage:\n* Ephemeral (Recommended for development only!)\n* Persistent\n*
          JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)\nStrimzi
          also supports advanced operations such as adding or removing disks in Apache
          Kafka® brokers or resizing the persistent volumes (where supported by the
          infrastructure).\n### Documentation\nDocumentation to the current _main_
          branch as well as all releases can be found on our [website](https://strimzi.io/documentation).\n###
          Getting help\nIf you encounter any issues while using Strimzi, you can get
          help using:\n* [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n*
          [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          Contributing\nYou can contribute by:\n* Raising any issues you find using
          Strimzi\n* Fixing issues by opening Pull Requests\n* Improving documentation\n*
          Talking about Strimzi\n\nAll bugs, tasks or enhancements are tracked as
          [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues).
          Issues which  might be a good start for new contributors are marked with
          [\"good-start\"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start)
          label.\n\nThe [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md)
          describes how to build Strimzi and how to  test your changes before submitting
          a patch or opening a PR.\n\nThe [Documentation Contributor Guide](https://strimzi.io/contributing/guide/)
          describes how to contribute to Strimzi documentation.\n\nIf you want to
          get in touch with us first before contributing, you can use:\n* [Strimzi
          mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n*
          [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          License\nStrimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).\n"
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:fbb08410d9595029bc4a02ed859971264e6ce2dc85dd6a9855eaa7bb58b52a25
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        - quay.io/strimzi/operator@sha256:786ea69c77e0651f009a73a8b3ce0b3d41b3cd71b917dc0d9bdc61c725f494a6
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:97762fcd8bfeec64fe4d3d43a6e60bc705ff2c8773354357e545adf31c8f85c5
        - quay.io/strimzi/jmxtrans@sha256:2c54adabf6f31c087dbb898057f9c5e200aaf4c5b39fb3a47bbaf7f6587df72d
        - quay.io/strimzi/kafka-bridge@sha256:537ea10e87619251204747ebc1005c632a6c6ed270f5ef06f86c0c3ae4a7553b
        - quay.io/strimzi/kafka@sha256:8959b7968ab8b3306906cdbff2ebb8d63329af37e58124a601843795c4ef5bd6
        - quay.io/strimzi/kafka@sha256:95cfe9000afda2f7def269ca46472d3803ee85146c521884884d8505a7187daf
        version: 0.24.0
      entries:
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.24.x
    - currentCSV: strimzi-cluster-operator.v0.25.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"2.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"2.8",
                        "inter.broker.protocol.version":"2.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"2.8.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster with S2I support"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:afaf1dd1f2f696ae80674d74159661ea239ae609f78a73a1423c7a17a39e5044
          createdAt: "2021-06-24 13:13:13"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.25 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.25 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.25
          * Move from Scala 2.12 to Scala 2.13
          * Open Policy Agent authorizer updated to a new version supporting Scala 2.13.
            The new version of the authroizer uses different format of the input data sent to the OPA server and might require you to update your policies.
            See [release notes](https://github.com/strimzi/strimzi-kafka-operator/releases/tag/0.25.0) for more details.

          * Allow a custom password to be set for SCRAM-SHA-512 users by referencing a secret in the `KafkaUser` resource
          * Add support for [EnvVar Configuration Provider for Apache Kafka](https://github.com/strimzi/kafka-env-var-config-provider)
          * Add support for `tls-external` authentication to User Operator to allow management of ACLs and Quotas for TLS users with user certificates generated externally
          * Support for disabling the automatic generation of network policies by the Cluster Operator
          * Configure fixed size limit for `emptyDir` volumes used for temporary files
          * Update Strimzi Kafka Bridge to 0.20.2
          * The `KafkaConnectS2I` resource has been removed and is no longer supported by the operator.
            Please use the [migration guide](https://strimzi.io/docs/operators/0.24.0/full/using.html#proc-migrating-kafka-connect-s2i-str) to migrate your `KafkaConnectS2I` deployments to [`KafkaConnect` Build](https://strimzi.io/docs/operators/latest/full/deploying.html#creating-new-image-using-kafka-connect-build-str) instead.

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/jmxtrans@sha256:af5eb8459ac9a0acbca51e67c6e0217f62ba404cba9f2251968c927dcef75252
        - quay.io/strimzi/kafka-bridge@sha256:a005e20d7fbe04d6f587f2093e21a00556ec62b850df757b9f7d9d57e3141c40
        - quay.io/strimzi/kafka@sha256:56a33815f7d50a97ea9bb4cce1e3a6d04d918b841b5aa285f16b792d8930059e
        - quay.io/strimzi/kafka@sha256:d8991608ec71f17e850c33714ee02ca87ba94bc0f077be62ad1ed127ca244823
        - quay.io/strimzi/kafka@sha256:ee17eb3611019b0cfa5e9e196610edc1dbd7084471fb20990f055c89da8eef45
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        - quay.io/strimzi/operator@sha256:afaf1dd1f2f696ae80674d74159661ea239ae609f78a73a1423c7a17a39e5044
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:4fa7a30eb3f679a495aeb96794056ffd003237686b2b60e693c8cabf6bc15bae
        version: 0.25.0
      entries:
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.25.x
    - currentCSV: strimzi-cluster-operator.v0.26.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.0.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"3.0",
                        "inter.broker.protocol.version":"3.0"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.0.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:5d90caa66f57939ba62a9a50efa00fce319ba596e719a3f8a42170d7635ee3f4
          createdAt: "2021-12-14 00:16:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.26 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.26 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.26.1
          * **Updated Log4j2 to fix CVE-2021-44228**
          ### New in 0.26.0
          * Add support for Kafka 2.8.1 and 3.0.0; remove Kafka 2.7.0 and 2.7.1
          * Add support for exposing JMX in Zookeeper
          * Allow configuring labels and annotations for JMX authentication secrets
          * Enable Cruise Control anomaly.detection configurations
          * Add support for building connector images from the Maven coordinates
          * Allow Kafka Connect Build artifacts to be downloaded from insecure servers
          * Add option to specify pull secret in Kafka Connect Build on OpenShift
          * Configurable authentication, authorization, and SSL for Cruise Control API
          * Allow to configure `/tmp` volume size via Pod template. By default `1Mi` is used.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/jmxtrans@sha256:bff5d3bab575d0b9ed95dd79d2d22518cc00c4d1c9dbb5614ed16149d4920a1b
        - quay.io/strimzi/kafka-bridge@sha256:d3899c79747e4cb3a6df5a9fcd80b81f038ca0634a97329c1d160499469876dd
        - quay.io/strimzi/kafka@sha256:bd22a134b0c351ddfc78a3263850c2f16733c52f57ac92984cbe0ffff477c724
        - quay.io/strimzi/operator@sha256:5d90caa66f57939ba62a9a50efa00fce319ba596e719a3f8a42170d7635ee3f4
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:6dce519730a6eb73bc18bef8372cdde65c29af3cb52eb78afc808d8582526fd3
        - quay.io/strimzi/kafka@sha256:6367b0fbba9593e3ac736040ea2d7ef71296b1ec144d3b54d9370352141b90e4
        - quay.io/strimzi/maven-builder@sha256:663eb81388ae8f824e7920c272f6d2e2274cf6c140d61416607261cdce9d50e2
        - quay.io/strimzi/kafka@sha256:8c022a8535742b2eea691737f863af5ddef1e8df08b415b8139ecd02a79052a5
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        version: 0.26.1
      entries:
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.26.x
    - currentCSV: strimzi-cluster-operator.v0.27.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.0.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"3.0",
                        "inter.broker.protocol.version":"3.0"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.0.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:9ea49407a04006d0bddfaaee822adfb95f5857af32ffcee81ba60ce891b07ba8
          createdAt: "2022-01-14 20:00:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.27 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.27 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.27.1
          * Updated Log4j2 to version 2.17.1 and Fabric8 Kubernetes Client to 5.10.2
          ### New in 0.27.0
          * Updated Log4j2 to version 2.17.0 (adresses CVE-2021-44228, CVE-2021-45046, CVE-2021-45105)
          * (Experimental) support for AArch64 / ARM64 architecture
          * `ControlPlaneListener` and `ServiceAccountPatching` feature gates are now in the beta phase and are enabled by default
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:a3ec567ca529df2fa41f8986d21e86dde66be94aa4baa56faa66db4dcb3b258e
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:9f2c01e88b29154ba7a0f70a1c69a49c86a567808cf057cb5d115159278cf2cf
        - quay.io/strimzi/jmxtrans@sha256:d2d2477517eb1ac98b51ad6d64d8c1c578141637afa8d46037076f0013183c0b
        - quay.io/strimzi/kaniko-executor@sha256:a07ebe6600d6baba09980abdde2931b3b6abd2f75aeb2cac5c6a2d22a37aa807
        - quay.io/strimzi/maven-builder@sha256:9acd178cc504be8acaa70a39f3c17830aae1f0e93a656110790f9476b09260d5
        - quay.io/strimzi/operator@sha256:9ea49407a04006d0bddfaaee822adfb95f5857af32ffcee81ba60ce891b07ba8
        - quay.io/strimzi/kafka-bridge@sha256:55a52316aead02efa2004174e11ad4728bb8b6f1c1415f725f597f1d2f2da188
        - quay.io/strimzi/kafka@sha256:f4d68bb94447c6612f70de7f6587e9e7ef712c83769ea1f11a8dbda0d241a059
        - quay.io/strimzi/kafka@sha256:5682a6bfcc4ee13d53a30d587c8f96bc40abe3618880989336c5af274ea3cefa
        version: 0.27.1
      entries:
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.27.x
    - currentCSV: strimzi-cluster-operator.v0.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.1.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.1"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.1.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.1.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.1.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:8b010c5fb8244b742a37f264feefc116d75bb2abd2d6895375cbeea250727b39
          createdAt: "2022-02-12 23:02:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.28 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.28 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.28.0
          * Support for Kafka 3.1.0
          * Support for `StrimziPodSet` resources (disabled by default through the `UseStrimziPodSets` feature gate)
          * Support custom authentication mechanisms in Kafka listeners
          * Intra-broker disk balancing using Cruise Control
          * Add support for disabling the FIPS mode in OpenJDK
          * Fix renewing your own CA certificates
          * Added the option `createBootstrapService` to disable the creation of the bootstrap service for the Load Balancer Type Listener
          * Dependency updates (Strimzi Kafka Bridge, Strimzi OAuth, Open Policy Agent Authroizer plugin and others)
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:c345c783d8fbbee4edeca2ebc47e7c454fcc2e26686820b8037de97369280ba0
        - quay.io/strimzi/kafka@sha256:06e9bda15495feb2b92d9950e834cdeed6ef20064f021a879610f1b59dd46950
        - quay.io/strimzi/kafka@sha256:7c04f65e216bb941458aeadffb85e9eeee43d5ca67da566017c2c93a0664c98e
        - quay.io/strimzi/kaniko-executor@sha256:a07ebe6600d6baba09980abdde2931b3b6abd2f75aeb2cac5c6a2d22a37aa807
        - quay.io/strimzi/maven-builder@sha256:3d5d664e089651944712361a6d8ba42b578dbd9bb3dfd9972f614520c9cfab75
        - quay.io/strimzi/operator@sha256:8b010c5fb8244b742a37f264feefc116d75bb2abd2d6895375cbeea250727b39
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:edec37e045212f74d160724ffc7b2c8ccf4e60eb95629aae80360494d78d5433
        - quay.io/strimzi/jmxtrans@sha256:3a55a81790dc88b90d1bf858e2cfd7e591ad0e79f763c6d1667b2d3eb0d0c79d
        version: 0.28.0
      entries:
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.28.x
    - currentCSV: strimzi-cluster-operator.v0.29.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:afde94c6d2544207cb7f3c94b54455643558a9d5daaa13b9f736cc8da20e319c
          createdAt: "2022-05-15 00:01:07"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.29 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.29 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.29.0
          * Add support for Apache Kafka 3.0.1, 3.1.1 and 3.2.0
          * Renew user certificates in User Operator only during maintenance windows
          * Remove TLS sidecar from Cruise Control pod. Cruise Control is now configured to not using ZooKeeper, so the TLS sidecar is not needed anymore.
          * Allow Cruise Control topic names to be configured
          * Add support for `spec.rack.topologyKey` property in Mirror Maker 2 to enable "fetch from the closest replica" feature.
          * Experiemntal support for the s390x platform
          * Added new rebalancing modes on the `KafkaRebalance` custom resource to add or remove brokers
          * Experimental KRaft mode (ZooKeeper-less Kafka). Use it for development and testing only!
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:935caab03f1d0365b47ddefec0c1d8fa449fc3de715ccdd298aedef5ce968c73
        - quay.io/strimzi/kafka@sha256:95678e843bc87cbe571f3f299045dd075725816b59e1b87821cd6025876ec559
        - quay.io/strimzi/kafka@sha256:9dfc09273ad8fc4bdc75cbe93b4a061a05a5defb5884a221ae1e178ba602787f
        - quay.io/strimzi/kafka@sha256:284cde40784b6ff7bfb81b6dd28928e1e8c598fe6a72504f025592e5b43fa94c
        - quay.io/strimzi/kafka@sha256:ac190141120c1800cc7131d3a1f701e64efdcd4a5d87f0b2e0e2cadfdef8b438
        - quay.io/strimzi/kaniko-executor@sha256:544c4987f7f3ca558b04e9ef4357be204f088212b7b5b9ed0f909401a8bc5238
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:465f0bef1f167b1d16ba9ae5f2d9a1133d11786b6809698a84c5c962387dbf6f
        - quay.io/strimzi/jmxtrans@sha256:f89e3c9618430908a8b390f2490f5aa43687b12889b434472a962ce0170c6463
        - quay.io/strimzi/operator@sha256:afde94c6d2544207cb7f3c94b54455643558a9d5daaa13b9f736cc8da20e319c
        - quay.io/strimzi/maven-builder@sha256:0c096a59faf8fd224298c01415a895043db4647534c060cb7e53207e9448bf65
        - quay.io/strimzi/kafka-bridge@sha256:b7bc3dd90e87223766f608a0087b521f0bba79d1c21eaa833bc2708c71148b7f
        version: 0.29.0
      entries:
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.29.x
    - currentCSV: strimzi-cluster-operator.v0.30.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:587db6f4389f56209f48853beedbfe249f6d590a4cb0000be2c42b57e43c2adb
          createdAt: "2022-07-16 00:00:10"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: "Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org)
          cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/)
          in various deployment configurations. See our [website](https://strimzi.io)
          for more details about the project.\n### CRD Upgrades\n**!!! IMPORTANT !!!**
          \ This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.
          \ If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed
          for all Strimzi CRDs and CRs before the upgrade to 0.30 is done!  If upgrading
          from Strimzi version earlier than 0.22, you need to first install the CRDs
          from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi
          CRDs and CRs before the upgrade to 0.30 is done!  For more details about
          the CRD upgrades, see the documentation.\n### New in 0.30.0\n* The `UseStrimziPodSets`
          feature gate moves to beta stage. By default, StrimziPodSets are used instead
          of StatefulSets. If needed, `UseStrimziPodSets` can be disabled in the feature
          gates configuration in the Cluster Operator.\n* The `ServiceAccountPatching`
          feature gate moves to GA. It cannot be disabled anymore and will be permanently
          enabled.\n* Remove support for Kafka 3.0.0 and 3.0.1\n* Add support for
          `simple` authorization and for the User Operator to the experimental `UseKRaft`
          feature gate. _(Note: Due to [KAFKA-13909](https://issues.apache.org/jira/browse/KAFKA-13909),
          broker restarts currently don't work when authorization is enabled.)_\n*
          Add CPU and network capacity overrides for Cruise Control capacity config\n*
          Use better encryption and digest algorithms when creating the PKCS12 stores.
          For existing clusters, the certificates will not be updated during upgrade
          but only next time the PKCS12 store is created. \n* Operator emits Kafka
          events to explain why it restarted a Kafka broker\n* Better configurability
          of the Kafka Admin client in the User Operator\n* Update Strimzi Kafka Bridge
          to 0.21.6\n### Supported Features\n* **Manages the Kafka Cluster** - Deploys
          and manages all of the components of this complex application, including
          dependencies like Apache ZooKeeper® that are traditionally hard to administer.\n*
          **Includes Kafka Connect** - Allows for configuration of common data sources
          and sinks to move data into and out of the Kafka cluster.\n* **Topic Management**
          - Creates and manages Kafka Topics within the cluster.\n* **User Management**
          - Creates and manages Kafka Users within the cluster.\n* **Connector Management**
          - Creates and manages Kafka Connect connectors.\n* **Includes Kafka Mirror
          Maker 1 and 2** - Allows for mirroring data between different Apache Kafka®
          clusters.\n* **Includes HTTP Kafka Bridge** - Allows clients to send and
          receive messages through an Apache Kafka® cluster via HTTP protocol.\n*
          **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing
          partition replicas according to specified goals in order to achieve the
          best cluster performance.\n* **Monitoring** - Built-in support for monitoring
          using Prometheus and provided Grafana dashboards\n### Upgrading your Clusters\nThe
          Strimzi Operator understands how to run and upgrade between a set of Kafka
          versions. When specifying a new version in your config, check to make sure
          you aren't using any features that may have been removed. See [the upgrade
          guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str)
          for more information.\n### Storage\nAn efficient data storage infrastructure
          is essential to the optimal performance of Apache Kafka®. Apache Kafka®
          deployed via Strimzi requires block storage. The use of file storage (for
          example, NFS) is not recommended.\nThe Strimzi Operator supports three types
          of data storage:\n* Ephemeral (Recommended for development only!)\n* Persistent\n*
          JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)\nStrimzi
          also supports advanced operations such as adding or removing disks in Apache
          Kafka® brokers or resizing the persistent volumes (where supported by the
          infrastructure).\n### Documentation\nDocumentation to the current _main_
          branch as well as all releases can be found on our [website](https://strimzi.io/documentation).\n###
          Getting help\nIf you encounter any issues while using Strimzi, you can get
          help using:\n* [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n*
          [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          Contributing\nYou can contribute by:\n* Raising any issues you find using
          Strimzi\n* Fixing issues by opening Pull Requests\n* Improving documentation\n*
          Talking about Strimzi\nAll bugs, tasks or enhancements are tracked as [GitHub
          issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues
          which  might be a good start for new contributors are marked with [\"good-start\"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start)
          label.\nThe [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md)
          describes how to build Strimzi and how to  test your changes before submitting
          a patch or opening a PR.\nThe [Documentation Contributor Guide](https://strimzi.io/contributing/guide/)
          describes how to contribute to Strimzi documentation.\nIf you want to get
          in touch with us first before contributing, you can use:\n* [Strimzi mailing
          list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n* [Strimzi
          Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          License\nStrimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).\n"
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/jmxtrans@sha256:de1ca88b713b926b72df535aca2cfad24fb1b2bf40481065d6fa0c421b872320
        - quay.io/strimzi/kaniko-executor@sha256:544c4987f7f3ca558b04e9ef4357be204f088212b7b5b9ed0f909401a8bc5238
        - quay.io/strimzi/maven-builder@sha256:f2cb45234f3a7a010824a370d03032b706271cd0d1d260da929f046f9259d7e0
        - quay.io/strimzi/kafka-bridge@sha256:77fc68da171c74d3a4b75b1030eaaa5eae12e200002f7aa2ee1969385eba1d66
        - quay.io/strimzi/kafka@sha256:5d881605425ab0b37d0b9cac6957d00ba904df0db185ca6181c810151bdab8e7
        - quay.io/strimzi/kafka@sha256:68d6f4cb5cc5ccad44de799bd9cf417c469a09e1024dbe42298942f25a09e004
        - quay.io/strimzi/kafka@sha256:d9258ddd453c3a53ca8e737b989d27725818da95f7a4fc879c9f07fe743c0cef
        - quay.io/strimzi/operator@sha256:587db6f4389f56209f48853beedbfe249f6d590a4cb0000be2c42b57e43c2adb
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:8be098242f971aefa61a4a24d2c6630ecaa7856ece842166c38887a66bce1bda
        version: 0.30.0
      entries:
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.30.x
    - currentCSV: strimzi-cluster-operator.v0.31.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.3",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.3",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:6e5e207c70c25c595d3ce60268c0214c7518e95836c9b1212ef1eb2f008c7a76
          createdAt: "2022-09-20 21:07:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          **This is the last version of Strimzi with support for Kubernetes 1.16, 1.17 and 1.18!**
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.31 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.31 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.31.1
          * Kafka 3.1.2 and 3.2.3 (fixes CVE-2022-34917)
          * Make `sasl.server.max.receive.size` broker option user configurable
          * Update Strimzi Kafka Bridge to 0.22.1
          ### New in 0.31.0
          * Support for Apache Kafka 3.2.1
          * Pluggable Pod Security Profiles with built-in support for _restricted_ Kubernetes Security Profile
          * Support for leader election and running multiple operator replicas (1 active leader replicas and one or more stand-by replicas)
          * Support for IPv6 addresses being used in Strimzi issued certificates
          * `StrimziPodSet` reconciliation metrics
          * Updated Strimzi Kafka Bridge to 0.22.0 and Kafka Exporter to 1.6.0
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:03cc48bc5cf367f898338665b253855bed7d6096fe577adfe344da2f2cddcfe4
        - quay.io/strimzi/kafka@sha256:430b3eb70e47a91d7b5b6f230d5be024c2de853099cc0437e219b443e0ead9f5
        - quay.io/strimzi/kafka@sha256:652924a1dba46aa716caba8381f1e791c09035e31ce62fdcc81f9b69af36cd02
        - quay.io/strimzi/kafka@sha256:9553aae22d35448681cbbf7a831a28149fb159f3df58ccf8c8ec4ca7eb9c1fdf
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:6afbc7ffc98918e3a557b0b3d9b2c3aa80caa47b9a73205fac9e6572c66f4df7
        - quay.io/strimzi/kaniko-executor@sha256:06581fb615f0b13ddfe27fae26ba5836b12c6e28afd55a81cba7685c9ca4bf79
        - quay.io/strimzi/maven-builder@sha256:670ca70900f2229ef140a592b77f2107934601f8b050b79250eab17ff62099b6
        - quay.io/strimzi/kafka@sha256:83acc1e2cc1e64a88bdbb54b9818a6ad3658c3da60e72c4be365f824c5fcf57c
        - quay.io/strimzi/kafka@sha256:b7c059bd72d8b063a96dde788d91d1ad87498bad3e73acba600929d595aeb7d6
        - quay.io/strimzi/operator@sha256:6e5e207c70c25c595d3ce60268c0214c7518e95836c9b1212ef1eb2f008c7a76
        - quay.io/strimzi/jmxtrans@sha256:52dd107062d78c29bb58c905ac654c39df72bbe3c25613023aa33e834930606d
        - quay.io/strimzi/kafka-bridge@sha256:3ddac62a4f8c8a3ebb72d5841d3826f7fd3fbb0e00eb75fb40bced0a576b86a9
        version: 0.31.1
      entries:
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.31.x
    - currentCSV: strimzi-cluster-operator.v0.32.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.3.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.3"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.3.1",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:c5e0e5dca7503a8371b8d366db0f49e3fc68f62ea480262e39b6cc277991c97c
          createdAt: "2022-10-31 17:05:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **From the 0.32.0 release, Strimzi supports only Kubernetes 1.19 and newer! Kubernetes 1.16, 1.17 and 1.18 are not supported anymore.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.32.0/deploying.html#assembly-upgrade-str).
          ### New in 0.32.0
          * Add support for Kafka 3.3.1 and remove support for Kafka 3.1.0, 3.1.1, and 3.1.2
          * Update KafkaConnector CR status so the 'NotReady' condition is added if the connector or any tasks are reporting a 'FAILED' state.
          * Add auto-approval mechanism on KafkaRebalance resource when an optimization proposal is ready
          * The ControlPlaneListener feature gate moves to GA
          * Add client rack-awareness support to Strimzi Bridge pods
          * Add support for OpenTelemetry for distributed tracing
          * ZookeeperRoller considers unready pods
          * Support multiple operations per ACLRule
          * Add new listener type "cluster-ip" which is using per-broker services instead of the pod DNS names
          * Update Strimzi OAuth library to 0.11.0
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:bb97008b7f928ed98939b2008a7baf8909c88e726a59aaf607f2eeba55375cc0
        - quay.io/strimzi/kafka@sha256:4bacf5b54041bd0ab9199c8c5d51e8058758139db4b7abc380cf0400737716ef
        - quay.io/strimzi/kaniko-executor@sha256:dc27d8aeb851245c79fb7276febe98769cc098d678bea096b338caaaf111dd27
        - quay.io/strimzi/operator@sha256:c5e0e5dca7503a8371b8d366db0f49e3fc68f62ea480262e39b6cc277991c97c
        - quay.io/strimzi/jmxtrans@sha256:208928133b2854f60bb34912e07561a3511de895b815960e73d565be2d553918
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:eefdd05485167d490f0011d9e5d2bb6112db1daea25940c79e1f55b3af254548
        - quay.io/strimzi/kafka-bridge@sha256:aad0cee4381cc1c8c6638ab5732b135acd271b5889486ca9a33312cce67e4a02
        - quay.io/strimzi/kafka@sha256:8c9f38b45dd814e617c9c51cc90fd51e23d7dd23e8efe7e9eff013522bd6a5a0
        - quay.io/strimzi/maven-builder@sha256:593e9980b786ca8ad3223151c3e17f16c7652ee0e86d722af4c34b023038ecc2
        - quay.io/strimzi/kafka@sha256:680ae1958dbcb9da8ee4128a67c1163a6ee2744221f7d29f73d8bcc237fd0173
        version: 0.32.0
      entries:
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.32.x
    - currentCSV: strimzi-cluster-operator.v0.33.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.4"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:cf0d41fdb99b20e91063e23eb1d664817c18866c9a2f5c4430eac897e78d5d53
          createdAt: "2023-02-18 21:21:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "Proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **Strimzi 0.33 supports only Kubernetes 1.19 and newer! Kubernetes versions 1.16, 1.17 and 1.18 are not supported anymore since Strimzi 0.32.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.33.2/deploying.html#assembly-upgrade-str).
          ### New in 0.33
          _Note: Strimzi 0.33.2 add support for Kafka 3.4.0 which fixes CVE-2023-25194._
          * Add support for Kafka 3.3.2
          * Automatic restarts of failed Connect or Mirror Maker 2 connectors
          * Redesign of Strimzi User Operator to improve its scalability
          * Move to Java 17
          * Improved FIPS support
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:9eca149cfc436580e3cdd6cee0ca318366b8d0ec53c2cf007e4e2c614b988921
        - quay.io/strimzi/operator@sha256:cf0d41fdb99b20e91063e23eb1d664817c18866c9a2f5c4430eac897e78d5d53
        - quay.io/strimzi/jmxtrans@sha256:5ebdafa7a5e3718ed3274d6254c9e655613c272340094b997b1c97fde2598b4a
        - quay.io/strimzi/kafka@sha256:301dc52ed5891ed4fa33e79ca3c344b1ac0eec7469dd46a5a7ac22064e053fc2
        - quay.io/strimzi/kafka@sha256:40a847f8455ec6ea9ff9fe1fff20b1ed01f848326dc13977d13ac911f0cb40b7
        - quay.io/strimzi/kafka@sha256:fe9d3f8b029ff32d5d725e57384592914957314d63e92fda3abf4028fe4e66f6
        - quay.io/strimzi/maven-builder@sha256:de9e51365e7acc63feae745618804e6286fd730f41c3b31582cbb7319a93b483
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:05e66583757da895fd23c3af9830ae1ac6a84d107107e5b6bbaece57e4d79c9a
        - quay.io/strimzi/kafka@sha256:30945aecb9d63cf8863c672222f130469c89aefa07078c95aaed52c40fd16146
        - quay.io/strimzi/kaniko-executor@sha256:dc27d8aeb851245c79fb7276febe98769cc098d678bea096b338caaaf111dd27
        - quay.io/strimzi/kafka-bridge@sha256:3a380d5f3ea509f90cdf95280d83b42f5de4f86ee3a512e02234e7639f50c9eb
        - quay.io/strimzi/kafka@sha256:116cf543fbadadd0b45007ce24d44a0c79a62280e8faa1fc80df40291fbdf05d
        version: 0.33.2
      entries:
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.33.x
    - currentCSV: strimzi-cluster-operator.v0.34.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.4"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:f4ee3ca482a2dd19785f59634578a0850273444c1173a5699a99cf02f3a018fe
          createdAt: "2023-03-17 13:02:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "Proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **Strimzi 0.34 supports only Kubernetes 1.19 and newer! Kubernetes versions 1.16, 1.17 and 1.18 are not supported anymore since Strimzi 0.32.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.34.0/deploying.html#assembly-upgrade-str).
          ### New in 0.34
          * Add support for Apache Kafka 3.4.0 (fixes CVE-2023-25194) and remove support for Apache Kafka 3.2.x
          * Stable Pod identities for Kafka Connect and MirrorMaker 2 (disabled by default)
          * Use JDK HTTP client in the Kubernetes client instead of the OkHttp client
          * Add truststore configuration for HTTPS connections to Open Policy Agent server
          * Update Strimzi HTTP Bridge to 0.25.0 and strimzi Oauth to 0.12.0
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:1da35fd7b36b113d1343e254fdc6efd97ca8660cc7977d8985aa3a3547d5ebb1
        - quay.io/strimzi/kafka@sha256:37cf8d0fea1d2078511920190a72b49977ff4047b6ecbfed6b394c6f9e1e2ff0
        - quay.io/strimzi/maven-builder@sha256:f781b6b857d437c2de62585462e97b9fae357912c9f6711c1df39f431278878d
        - quay.io/strimzi/kafka@sha256:1ace2cc0db9653ac1b388477fa56c3c1cd97c7b3846eba3c7824dc58ea179476
        - quay.io/strimzi/kaniko-executor@sha256:dc27d8aeb851245c79fb7276febe98769cc098d678bea096b338caaaf111dd27
        - quay.io/strimzi/jmxtrans@sha256:62272e8a03da2144340bd7267f7a824d1ed70f4f3e30dc7aadfba9ee1b9baf76
        - quay.io/strimzi/operator@sha256:f4ee3ca482a2dd19785f59634578a0850273444c1173a5699a99cf02f3a018fe
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:02f53d3395b2b98f92a96b466c83ca15c79a75d82451e2ed8ba921375e727c7f
        - quay.io/strimzi/kafka-bridge@sha256:51babca0f7a328f4db005c6a16daa8ac4a4306c46fe3ca89382919134aa09179
        version: 0.34.0
      entries:
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.34.x
    - currentCSV: strimzi-cluster-operator.v0.35.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.4"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:06a94a3021cf028ccc1a49271f35f79216029e344536e664f196c1725ff2c663
          createdAt: "2023-06-07 16:19:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **Strimzi 0.35 is the last version with support for Kubernetes 1.19 and 1.20. From Strimzi 0.36, only Kubernetes 1.21 and newer will be supported.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.35.1/deploying.html#assembly-upgrade-str).
          ### New in 0.35
          * Move feature gate `UseStrimziPodSets` to GA and remove support for StatefulSets
          * Remove support for JMX Trans
          * Redesigned the Cluster and User Operator configuration to make it more efficient and flexible
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kaniko-executor@sha256:39778b90c2b2afc30261e4ad5135805e1a10a2b60e2e53108fb9f80487f1208a
        - quay.io/strimzi/maven-builder@sha256:88a79eff3b3a386880a630658964b7754caed9e99dd6e645a4c0d23d0fdb47ee
        - quay.io/strimzi/operator@sha256:06a94a3021cf028ccc1a49271f35f79216029e344536e664f196c1725ff2c663
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:8abe0994052e2a328e54c9d30c920dc331e9b816a4606234a3023b9ef65ec4ed
        - quay.io/strimzi/kafka-bridge@sha256:d6be183e492f8f88157ab9fe0af53950df8b6711a8a8c33da465de6064f6f86e
        - quay.io/strimzi/kafka@sha256:0d910e7138cb49e1cd8cd84cef88bce35698b93ddd683a3398f1d485a3162693
        - quay.io/strimzi/kafka@sha256:4de4874a7b722ad813f4dcc58acf509527bca0609999b81e70d81e3b38534d9d
        - quay.io/strimzi/kafka@sha256:54c6b25b31f51ef401c1b6e2a1b27432911e819bf3e502e05186f01be3f798e5
        version: 0.35.1
      entries:
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.35.x
    - currentCSV: strimzi-cluster-operator.v0.36.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:e9e03b31007c0f9b67a6a33e6b644e8c1ba35bd9976804ee3d22a04e4bf511b1
          createdAt: "2023-07-10 21:47:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!! Strimzi 0.36.1 supports only Kubernetes 1.21 and newer! Kubernetes versions 1.19 and 1.20 are not supported anymore since Strimzi 0.36.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.35.1/deploying.html#assembly-upgrade-str).
          ### New in 0.36
          * Add support for Apache Kafka 3.4.1, 3.5.0, and 3.5.1
          * Remove support for 3.3.1 and 3.3.2
          * Add support for _Kafka node pools_
          * Add support for _Unidirectional Topic Operator_
          * Enable SCRAM-SHA authentication in KRaft mode (supported in Apache Kafka 3.5.0 and newer)
          * Add support for insecure flag in Maven artifacts in Kafka Connect Build
          * Improve Kafka rolling update to avoid rolling broker in log recovery
          * Added support for Kafka Exporter topic exclude and consumer group exclude parameters
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:ef3f85e1227e886a131d3ddec3fb431aef6d3daed46115b288246b9ace0e69e2
        - quay.io/strimzi/kafka-bridge@sha256:fefee252895e9f94756ed5c9ea71749e3fa89281df01bc55878a244ca7d17697
        - quay.io/strimzi/kafka@sha256:9f35f40be3d47b0cb1f6628f7ffd9c6a687ab9f564829f341dd66fd0759c064f
        - quay.io/strimzi/kafka@sha256:ea35817ff1ef295c682d70562f209ef658fcd87c61f467a4549d7a2f39e71700
        - quay.io/strimzi/maven-builder@sha256:2a469b40122027b981914db5b5c102be48280e039c3089963422c181174af226
        - quay.io/strimzi/kafka@sha256:67c2b563a65c85c9393608f9af7eaf12ea48dcc0ef5f726d51f27273a3845186
        - quay.io/strimzi/kafka@sha256:a0da6a48b5bcbff355365f07df2d99ef6443d22c5690495f10a6417e761b3799
        - quay.io/strimzi/kaniko-executor@sha256:5ff9fc7d0b7b694875ad0150fc787c582d42da3b4864d807ee8a6524e47b0e4e
        - quay.io/strimzi/operator@sha256:e9e03b31007c0f9b67a6a33e6b644e8c1ba35bd9976804ee3d22a04e4bf511b1
        version: 0.36.1
      entries:
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.36.x
    - currentCSV: strimzi-cluster-operator.v0.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:52f376e64b9b31d74162e26248c278e9bd301d2d8b4240ee5bcf780dfe2f8ef8
          createdAt: "2023-09-03 17:45:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.37.0/deploying.html#assembly-upgrade-str).
          ### New in 0.37
          * The StableConnectIdentites feature gate moves to a beta stage.
          * Support for the ppc64le platform
          * Version fields to the Kafka custom resource status to track installation and upgrade state
          * Infinite auto-restarts of Kafka Connect and Kafka Mirror Maker 2 connectors
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:2997ba1c169eb792a6004d7a41b674560515f3ea6e62ab8b9a1fdb747eab40c1
        - quay.io/strimzi/kafka@sha256:1de6e073e8625a193fcfd11dd1a6717cc17596911c10bcebd792c00b08a7ebaf
        - quay.io/strimzi/kaniko-executor@sha256:5729f1f0511da95e64e358cfabb3980ad9a660af2968118a87d6755f5d652a67
        - quay.io/strimzi/maven-builder@sha256:995be06a50b86c992fcee9f00e44f6a21c3406975e4e35802f10e88b72ffb9df
        - quay.io/strimzi/operator@sha256:52f376e64b9b31d74162e26248c278e9bd301d2d8b4240ee5bcf780dfe2f8ef8
        - quay.io/strimzi/kafka-bridge@sha256:5b821f6f3396002ffa7c5804391b627ff9da3b494b2777dde518c55c2b73cefc
        - quay.io/strimzi/kafka@sha256:38bbadcdb196a373e1698be890caa1dc01134ce91763d8f95c71768a117e1932
        - quay.io/strimzi/kafka@sha256:dfeb1eb7b94107c443b6bc82fcfee7fcf782516c83c6fc64451fb6a7e2de74a6
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:8b9b06ead5e014b920c82034ded615413dca53cf36f804005408726c9bbda66f
        version: 0.37.0
      entries:
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.37.x
    - currentCSV: strimzi-cluster-operator.v0.38.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.6.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.6"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:aee45bbe439335e45a0423e6565bae0d0727d85c7b807812949bfa127d467fe6
          createdAt: "2023-10-14 18:18:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.38.0/deploying.html#assembly-upgrade-str).
          ### New in 0.38
          * Add support for Apache Kafka 3.6.0 and remove support for 3.4.0 and 3.4.1
          * Container signing and SBOMs
          * Stopping Connect and MirrorMaker 2 connectors
          * Manual rolling updates of Kafka Connect and Kafka Mirror Maker 2 pods using annotation
          * Prevent scale-down of brokers that still contain any replicas
          * Run ZooKeeper- and KRaft-based clusters in parallel
          * Unidirectional Topic Operator improvements
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:0cc01438e8596643407b6b8ff05fafcea7ef54fa9410d4ae2492a9dbf41118b1
        - quay.io/strimzi/kafka@sha256:20d451fb32ec82eab3c16891198ace46bb9b9193f1f5511bb60ce249080dd7d4
        - quay.io/strimzi/kafka@sha256:50e24c797455f9cdbb3cdde8e4f26bb8e1f0503469456da5d179017fd3e03ffe
        - quay.io/strimzi/kaniko-executor@sha256:4fe7a3f3f78e93369284a5ab456873c911230926ca071d1d88167e63d8ce376c
        - quay.io/strimzi/maven-builder@sha256:922d91dab9e2b8e14b6db25d8b48d7f4e3521bedd435468cc22039599ac4f888
        - quay.io/strimzi/operator@sha256:aee45bbe439335e45a0423e6565bae0d0727d85c7b807812949bfa127d467fe6
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:51db956f1472ae0498c57b9488448c34cf7e24afab6b9997eb3689b001d73277
        - quay.io/strimzi/kafka-bridge@sha256:13838889cc20a3a382ea64e749cad94f997c0b928840588f2d1befcf19247bea
        version: 0.38.0
      entries:
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.38.x
    - currentCSV: strimzi-cluster-operator.v0.39.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.6.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.6"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.6.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.6.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.6.1",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:50b49f9b5e554cca517fc2794e11319d5aaba1676494b285baa3a74fc79eb501
          createdAt: "2023-12-14 20:28:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.39.0/deploying.html#assembly-upgrade-str).

          **Strimzi 0.39 is the last minor release with support for Kubernetes 1.21 and 1.22.** From Strimzi 0.40 on, only Kubernetes 1.23 and newer will be supported.
          ### New in 0.39
          * Add support for Apache Kafka 3.5.2 and 3.6.1
          * The `StableConnectIdentities` feature gate moves to GA stage and is now permanently enabled without the possibility to disable it.
            All Connect and Mirror Maker 2 operands will now use StrimziPodSets.

          * The `KafkaNodePools` feature gate moves to the beta stage and is enabled by default.
            If needed, `KafkaNodePools` can be disabled in the feature gates configuration in the Cluster Operator.

          * The `UnidirectionalTopicOperator` feature gate moves to the beta stage and is enabled by default.
            If needed, `UnidirectionalTopicOperator` can be disabled in the feature gates configuration in the Cluster Operator.

          * Improved Kafka Connect metrics and dashboard example files
          * Allow specifying and managing KRaft metadata version
          * Add support for KRaft to KRaft upgrades (Apache Kafka upgrades for the KRaft-based clusters)
          * Improved Kafka Mirror Maker 2 dashboard example file
          * Support for rolling updates of KRaft controller nodes
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/maven-builder@sha256:6ce3c16284379d5db9e42a6f3e2b765c981091164a28fdd6bf927b6c5d4ab557
        - quay.io/strimzi/kafka-bridge@sha256:13838889cc20a3a382ea64e749cad94f997c0b928840588f2d1befcf19247bea
        - quay.io/strimzi/kafka@sha256:53b960411e852f5cb182ecc5d395a3562865f83e15e6251f3a9af0eb413feeed
        - quay.io/strimzi/kaniko-executor@sha256:723b7add2473e73c45c81361e1708af4971c321b0391c1298a0557fb8ca4f7f6
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:392f9299c75a3ca4f593eaebdfe515145696f12db9f990bb004cfa58dd6bf0ef
        - quay.io/strimzi/kafka@sha256:49b7530ada1175750ad5a706e545ba3594d85e1e3a90f98b0200a73fa9875057
        - quay.io/strimzi/kafka@sha256:84691b3afb67b312400e01572ff08b64c1e1b1d32a4276e0c21bba10c71c36fe
        - quay.io/strimzi/kafka@sha256:dd1706f36031c96dfcd0da7b3f804168e5f076220caa302973455fdcd76bd03e
        - quay.io/strimzi/operator@sha256:50b49f9b5e554cca517fc2794e11319d5aaba1676494b285baa3a74fc79eb501
        - quay.io/strimzi/kafka@sha256:2badc65532b483bba6c1f6a8b0c9895e993ce24e9ebd3cd953d0d17fbe36d27a
        version: 0.39.0
      entries:
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.39.x
    - currentCSV: strimzi-cluster-operator.v0.40.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:2228d89b53e3524e69d1bcf5c2cd373884ce696d9005389a6c78dad23310e837
          createdAt: "2024-03-09 21:27:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.40.0/deploying.html#assembly-upgrade-str).

          **From Strimzi 0.40 on, we support only Kubernetes 1.23 and newer.** Kubernetes versions 1.21 and 1.22 are no longer supported.
          ### New in 0.40
          * Add support for Apache Kafka 3.7.0. Remove support for Apache Kafka 3.5.0, 3.5.1, and 3.5.2.
          * The `UseKRaft` feature gate moves to beta stage and is enabled by default. If needed, `UseKRaft` can be disabled in the feature gates configuration in the Cluster Operator.
          * Add support for ZooKeeper to KRaft migration by enabling the users to move from using ZooKeeper to store metadata to KRaft.
          * Add support for moving from dedicated controller-only KRaft nodes to mixed KRaft nodes
          * Added support for Kafka Exporter `offset.show-all` parameter
          * Prevent removal of the `broker` process role from KRaft mixed-nodes that have assigned partition-replicas
          * Improve broker scale-down prevention to continue in reconciliation when scale-down cannot be executed
          * Added support for Tiered Storage by enabling the configuration of custom storage plugins through the Kafka custom resource.
          * Update HTTP bridge to the latest 0.28.0 release
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Aapche ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:73deb1af0d93e9fa8955a5a412d0e7138384bdc80e7574e815d21796e446b636
        - quay.io/strimzi/kafka@sha256:2c143eb10b66037ef877311eb767457e4b877d5ff2c47d393c76babec155caff
        - quay.io/strimzi/kafka@sha256:c491a95f9b9b58f406461faf222ef612ad8d2f4d7b53f7f3645b20c99d7d1583
        - quay.io/strimzi/kafka@sha256:e2b9f2835498831bbf30ac2d651de143d57088bcb23943101b066e941db92aca
        - quay.io/strimzi/kaniko-executor@sha256:3fb4ace22589fcf8d3f01b74c37b10b32d87e15d103ea59e0933b61c4e46ff4a
        - quay.io/strimzi/maven-builder@sha256:d02a9b48c77a44eeab6426c9af4adf75405217994bcb01ce0196e616041350d8
        - quay.io/strimzi/operator@sha256:2228d89b53e3524e69d1bcf5c2cd373884ce696d9005389a6c78dad23310e837
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:df4e4dce45f87e684e7e1044a7edb2456160141afb6ba57b9af28088ffbac407
        version: 0.40.0
      entries:
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.40.x
    - currentCSV: strimzi-cluster-operator.v0.41.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:4c687a4fac96ffc22433ca6d00fb1bd31722767b44c9d87c465f95b57fb70089
          createdAt: "2024-05-09 22:23:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.41.0/deploying.html#assembly-upgrade-str).

          **Strimzi 0.41 supports only Kubernetes 1.23 and newer.** Kubernetes versions 1.21 and 1.22 are no longer supported.
          ### New in 0.41
          * Support for Apache Kafka 3.6.2
          * Metrics to monitor CA expiration
          * Support for JBOD storage in KRaft mode. (Note: JBOD support in KRaft mode is considered early access in Apache Kafka 3.7.x)
          * Support for changing topic replication factor by changing the `KafkaTopic` resources.
          * The `KafkaNodePools` feature gate moves to GA stage and is permanently enabled without the possibility to disable it. To use the Kafka Node Pool resources, you still need to use the `strimzi.io/node-pools: enabled` annotation on the `Kafka` custom resources.
          * Support for configuring the `externalIPs` field in node port type services.
          * The `UnidirectionalTopicOperator` feature gate moves to GA stage and is permanently enabled without the possibility to disable it. If the topics whose names start with `strimzi-store-topic` and `strimzi-topic-operator` still exist, you can delete them.
          * Improve validation of `KafkaMirrorMaker2` resource to make sure the Connect cluster is set to the target cluster
          * Continue reconciliation after failed manual rolling update using the `strimzi.io/manual-rolling-update` annotation (when the `ContinueReconciliationOnManualRollingUpdateFailure` feature gate is enabled)
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Aapche ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:fecad1a330421341e6946252f95735ed177a690eab6250be097413ea29ce9473
        - quay.io/strimzi/kaniko-executor@sha256:9404037bd5431b012c8c633ec3345907667453c5532e5bfaaedc78286de22c62
        - quay.io/strimzi/kafka-bridge@sha256:c833f930ead2d1e9054912a20689ee979d335f5e5ca8769e3c6b8a5514a0df96
        - quay.io/strimzi/kafka@sha256:41811bb106d6182978a889eaedffeadffaa5ab1599c4cd8e4f5015b131c7ac30
        - quay.io/strimzi/kafka@sha256:6243d98890c665ef65b5f5fa2ffd046412281ffef31bc7a07cac37bd77b2579d
        - quay.io/strimzi/kafka@sha256:c3a346235ce4dea42986648ca07f2482d8fc0bf654c1d441b1301a23999304db
        - quay.io/strimzi/operator@sha256:4c687a4fac96ffc22433ca6d00fb1bd31722767b44c9d87c465f95b57fb70089
        - quay.io/strimzi/kafka@sha256:bf49499980bbe5d4dd399de0dd396089b0fd9dd29bc46e14d39b20f1e826aec1
        - quay.io/strimzi/maven-builder@sha256:17f09b07fc41a059e6a048cb766046d43a072cfd3a8266c97388a37543dadee8
        version: 0.41.0
      entries:
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.41.x
    - currentCSV: strimzi-cluster-operator.v0.42.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.1",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:ca5c1b70e1196deec4bf519921bfa55a967aa1ea15bd4c182bc56bea08d2e114
          createdAt: "2024-07-03 12:34:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.42.0/deploying.html#assembly-upgrade-str).

          **From version 0.40.0, Strimzi supports only Kubernetes 1.23 and newer.** Kubernetes versions 1.21 and 1.22 are no longer supported.
          ### New in 0.42
          * Support for Apache Kafka 3.7.1
          * The UseKRaft feature gate moves to GA stage and is permanently enabled without the possibility of disabling it. To use KRaft (ZooKeeper-less Apache Kafka), you still need to use the strimzi.io/kraft: enabled annotation on the Kafka custom resources or migrate from an existing ZooKeeper-based cluster.
          * Update the base image used by Strimzi containers from UBI8 to UBI9
          * Add support for filename patterns when configuring trusted certificates
          * Enhance KafkaBridge resource with consumer inactivity timeout and HTTP consumer/producer enablement.
          * Add support for setting publishNotReadyAddresses on services for listener types other than internal.
          * Added support for configuring the quotas plugin with type strimzi or kafka in the Kafka custom resource. The Strimzi Quotas plugin version was updated to 0.3.1.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Aapche ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:fdddffb3de59ba48c05964bb0e760593088d24d1ee35b090112fe6cc6b553cd8
        - quay.io/strimzi/kafka@sha256:841a46e9c10481df3ef702412caf362b55ae07c30a3a5927073356cd36dc049f
        - quay.io/strimzi/kafka@sha256:c56c5abf94897f20f976603cba0678a33cdfbbcd6f9030a193f7684cb9894a6c
        - quay.io/strimzi/kafka@sha256:6527c426f753521c07f3a3df2ee432273a41b109594096b4c6cae2e8e609d669
        - quay.io/strimzi/kafka@sha256:bc49c10b3e839e161e515c3a1e411d1f8df9de5e2c8d71aa7b63ccdbbae9e8d2
        - quay.io/strimzi/kaniko-executor@sha256:11821b0078a270612f1bcc37f5dc716ab273c974648c40f95fa4804352e647a7
        - quay.io/strimzi/maven-builder@sha256:342e8d0086c53cf7334127798e5bd3764b28f5e4909ba67d65f6d937dc3dba05
        - quay.io/strimzi/kafka@sha256:6c519531cdd5f40f326b295d8827344140efe2607a1826f7f1cab8c3427f43f7
        - quay.io/strimzi/operator@sha256:ca5c1b70e1196deec4bf519921bfa55a967aa1ea15bd4c182bc56bea08d2e114
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:9dcf24fecf3ee0d999601c276ac15e8634c275590f2c42b8a6bcb83984bf1445
        version: 0.42.0
      entries:
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.42.x
    - currentCSV: strimzi-cluster-operator.v0.43.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.8.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:d3732245f34afaa6b571f1f912e1cd017891b22003d6367ae8ca059b2a5cb13c
          createdAt: "2024-08-22 15:19:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.43.0/deploying.html#assembly-upgrade-str).

          **Strimzi 0.43 is the last version with support for Kubernetes 1.23 and 1.24.** From Strimzi 0.44, only Kubernetes versions 1.25 and newer will be supported.
          ### New in 0.43
          * Support for Apache Kafka 3.8.0
          * Removed support for Apache Kafka 3.6.0, 3.6.1, and 3.6.2
          * Specifying additional volumes and volume mounts in Strimzi custom resources
          * Support for custom Cruise Control API users
          * Unregistration of KRaft nodes after scale-down
          * Kafka Exporter updated to 1.8.0 (and the Grafana dashboard updated to work with it)
          * Service account based authentication
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/maven-builder@sha256:6414f8f3985f221b0eda53867c00494140108d17579c4dcbbc93934bb00e5d49
        - quay.io/strimzi/operator@sha256:d3732245f34afaa6b571f1f912e1cd017891b22003d6367ae8ca059b2a5cb13c
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:a9950264bfefc536b4e0a0adc2348f92aa41da55dd50a2324ddad0253291b67c
        - quay.io/strimzi/kafka-bridge@sha256:80f329ecd3ba96fac12e75be874dce0debc8395337737581de34238ce11c8fb1
        - quay.io/strimzi/kafka@sha256:ad06ead5125bce87498b1582a76e78143a6d21408ac4b12bb7e6007aa4cabd84
        - quay.io/strimzi/kafka@sha256:b2f4e8895e9ed66228512ce14aec685101fa75dc329128d47cb1c15e3aef3c9c
        - quay.io/strimzi/kafka@sha256:d27cf5bf3624e18ba705246b14f92d12b8a15eb8551b13abf027cf71b549baf0
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        version: 0.43.0
      entries:
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.43.x
    - currentCSV: strimzi-cluster-operator.v0.44.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.8.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:b07b81f7e282dea2e4e29a7c93cfdd911d4715a5c32fe4c4e3d7c71cba3091e8
          createdAt: "2024-08-22 15:19:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.44.0/deploying.html#assembly-upgrade-str).

          **From version 0.44, Strimzi supports only Kuberneets 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.**

          **ZooKeeper support will be soon removed from Apache Kafka and Strimzi.** Currently, the last Strimzi version with ZooKeeper support is expected to be Strimzi 0.45. Please plan your migration to KRaft (ZooKeeper-less Apache Kafka) accordingly. Follow the [documentation](https://strimzi.io/docs/operators/latest/full/deploying.html#assembly-kraft-mode-str) for more details.

          **Kafka Mirror Maker 1 support will be soon removed from Apache Kafka and Strimzi.** Currently, the last Strimzi version with Mirror Maker 1 support is expected to be Strimzi 0.45. Please plan your migration to Mirror Maker 2 or another mirroring tool.

          ### New in 0.44
          * Managing offsets in Connect and Mirror Maker 2 connectors through custom resources
          * Templating `advertisedHost` and `host` fields in listener configuration
          * Configuring environment variables in operands based on Secrets and ConfigMaps
          * Disabling Pod disruption Budget management
          * Auto-rebalancing at scale-up/scale-down
          * `ContinueReconciliationOnManualRollingUpdateFailure` feature gate moves to the beta stage and is enabled by default
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:4d59e60cc75de82bd3f3a063237cef8a5598d315f6d53e803d37589a94929b0e
        - quay.io/strimzi/kafka-bridge@sha256:cc95ce9f496057f3b18d5e8297b40a410cc66f9fd4a2227615971458a26bac25
        - quay.io/strimzi/kafka@sha256:238bb080825b7ecebaa819be09788bc3d056ae8162ebcd41444076dc22f85740
        - quay.io/strimzi/kafka@sha256:98d332b7fa5c9e48f60b516e00ed5812bd9268e014fd2337284e7cc3e664f1eb
        - quay.io/strimzi/kafka@sha256:9a4224635e09ece2c1d3ffe9d715813cf63037461c9f06c1b5f53554aed5ecdc
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        - quay.io/strimzi/maven-builder@sha256:7b55f971a3b62923a9a61a61c82f542e07deeb6ffdbaede68244ba358a0853f2
        - quay.io/strimzi/operator@sha256:b07b81f7e282dea2e4e29a7c93cfdd911d4715a5c32fe4c4e3d7c71cba3091e8
        version: 0.44.0
      entries:
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.44.x
    - currentCSV: strimzi-cluster-operator.v0.45.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.9.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.9"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.9.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.9.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.9.1",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:58e8722216b0b0e8b1dd79109725238fa4016a16cc6a9fca0e327bccb1506810
          createdAt: "2025-06-27 01:38:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.45.1/deploying.html#assembly-upgrade-str).

          **From version 0.45, Strimzi supports only Kuberneets 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.**

          **ZooKeeper and Kafka Mirror Maker 1 support will be removed from Apache Kafka and Strimzi.** Strimzi 0.45 is the last minor Strimzi version with support for ZooKeeper-based Apache Kafka clusters and MirrorMaker 1 deployments. Please make sure to [migrate to KRaft](https://strimzi.io/docs/operators/latest/full/deploying.html#assembly-kraft-mode-str) and MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.

          **Strimzi EnvVar Configuration Provider and Strimzi MirrorMaker 2 Extensions will be removed from Strimzi.** Strimzi 0.45 is the last Strimzi version to include the Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0). Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.
          ### New in 0.45.1
          * Add support for Kafka 3.9.1
          * Update HTTP bridge to 0.31.2
          * Update Strimzi Kafka OAuth library to 0.15.1
          * Fixed bug which may lead to metadata loss within the cluster when restarting a KRaft migration after a previous rollback due to missing `/migration` znode deletion.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        - quay.io/strimzi/operator@sha256:58e8722216b0b0e8b1dd79109725238fa4016a16cc6a9fca0e327bccb1506810
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:40d17d4d0632c272779da152f710fb7c2de50acc3791eb0b9fe445a13c0cb102
        - quay.io/strimzi/kafka-bridge@sha256:c462441a966f0732855e684b4840563bfad45391345c9511fa49e1630ba9c3e3
        - quay.io/strimzi/kafka@sha256:ba52ed046b1dccdbd96f4e68057ce014d862a7c9c1fc670760c023b9aa09f23f
        - quay.io/strimzi/kafka@sha256:e98fbe49cadbc5d3afbd8f17abea218f216c95d52f4fa1fe514a7a988624da24
        - quay.io/strimzi/maven-builder@sha256:770e410f1e7e0e92c31bae6c19831ba36d59dd11b44e90c159aef16a965aa998
        - quay.io/strimzi/kafka@sha256:173cb5793756f75739c51a83bbe06d7f0094fd003a2982160a5cc6e216cd6d28
        - quay.io/strimzi/kafka@sha256:6a05924839a2c7da0431408e6d6223a055e75d88b3f057ac5caa7f9097227f56
        version: 0.45.1
      entries:
      - name: strimzi-cluster-operator.v0.45.1
        version: 0.45.1
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.45.x
    - currentCSV: strimzi-cluster-operator.v0.46.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.0.0",
                      "metadataVersion": "4.0-IV3",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.0.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:6a22e4968e9d409405423d12c04a0e3fecaea2ee2794bd27de7cf21f59453265
          createdAt: "2025-06-26 11:58:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.46.0/deploying.html#assembly-upgrade-str).

          **From version 0.46, Strimzi supports only Kuberneets 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.**
          **Support for ZooKeeper-based clusters and for migration from ZooKeeper-based clusters to KRaft has been removed. Please make sure all your clusters are using KRaft before upgrading to Strimzi 0.46.0 or newer!
          **Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0) plugins were removed from Strimzi container images. Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.
          **Support for MirrorMaker 1 has been removed. Please make sure to migrate to MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.
          ### New in 0.46.1
          * Update CSV file for OLM installation to add missing permission for broker Pods to "get" nodes Kubernetes resource.
          * Allow the injection of annotations on the deployment object in Helm charts.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/operator@sha256:6a22e4968e9d409405423d12c04a0e3fecaea2ee2794bd27de7cf21f59453265
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:8e321dc1bf74ba331b62d21bff4d8993956ab935cf5be32f01e7f7aa6897bf22
        - quay.io/strimzi/kafka-bridge@sha256:3e1815aed3f74b8573cebfced66b2c78ca0cf7c746c26db2002380cd39d09ae6
        - quay.io/strimzi/kafka@sha256:82273d873ce21a73f8f3118bf61627cb15734b43ea7ca92d43b290340b44e485
        - quay.io/strimzi/kafka@sha256:f3837f8cb2a60e906e84486128c41c398424f4085df2348e9e0486bfc12089fd
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        - quay.io/strimzi/maven-builder@sha256:b532234c234fc30fecec992ad1a6154c5ef08ebf9a20ec8bc62e0c88d791ff36
        version: 0.46.1
      entries:
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.46.x
    - currentCSV: strimzi-cluster-operator.v0.47.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.0.0",
                      "metadataVersion": "4.0-IV3",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.0.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:589c4d63641d9a944462dd682f6e5febe8b38ff55b9253949b061aca16feb154
          createdAt: "2025-07-12 17:21:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * **Support for ZooKeeper-based clusters and for migration from ZooKeeper-based clusters to KRaft has been removed.**
            Please make sure all your clusters are using KRaft before upgrading to Strimzi 0.46.0 or newer!

          * **Strimzi 0.47 is the last Strimzi version with support for Kubernetes 1.25 and 1.26.**
            From Strimzi 0.48.0 on, we will support only Kubernetes 1.27 and newer.

          * **Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0) plugins were removed from Strimzi container images.**
            Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.

          * **Support for MirrorMaker 1 has been removed.**
            Please make sure to migrate to MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.

          ### New in 0.47.0
          * Support for Kafka 3.9.1
          * Progress tracking for Cruise Control rebalances
          * Support for Kubernetes Image Volumes to mount custom plugins
          * Support for [JsonTemplateLayout](https://logging.apache.org/log4j/2.x/manual/json-template-layout.html) in Operators, Cruise Control, and Kafka 4.0.0
          * Support for Strimzi Metrics Reporter for the Kafka brokers / controllers
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:428c5587f547dabfc995a73745569d113380c7e6b8bf0b2504c6a9a00d6c4608
        - quay.io/strimzi/kafka@sha256:551882f47a6d2dc8300bcfca251fffffc3379acb2724a7efe16f17c0c4f529fb
        - quay.io/strimzi/kafka@sha256:8a793cdf5084cdb72c6663419530985158b16330a518720e9e9d1d96babbaf7e
        - quay.io/strimzi/kafka@sha256:978e2ed5f0d315e8bf0ab0503ee839acbd9da01ca427e6581b59ac25d36bc9c9
        - quay.io/strimzi/kaniko-executor@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/maven-builder@sha256:c67a3ad3d92420ac8b7f8435eeec53ebffaea4e894e65414a7c47c20e3faba27
        - quay.io/strimzi/operator@sha256:589c4d63641d9a944462dd682f6e5febe8b38ff55b9253949b061aca16feb154
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:16fbdaaf303ab40202d49438737f3307926594a5259081eeeb39595b7ea41f8e
        version: 0.47.0
      entries:
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.47.x
    - currentCSV: strimzi-cluster-operator.v0.48.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.1.0",
                      "metadataVersion": "4.1-IV1",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.1.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:73dc9555c4a73094b497ffb14d816de5ff40144ffc470efd75ccf128afa22778
          createdAt: "2025-09-25 10:32:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * **Support for ZooKeeper-based clusters and for migration from ZooKeeper-based clusters to KRaft has been removed.**
            Please make sure all your clusters are using KRaft before upgrading to Strimzi 0.46.0 or newer!

          * **Strimzi 0.48.0 supports only Kubernetes 1.27 and newer.**
            Kubernetes 1.25 and 1.26 are not supported anymore

          * **Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0) plugins were removed from Strimzi container images.**
            Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.

          * **Support for MirrorMaker 1 has been removed.**
            Please make sure to migrate to MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.

          ### New in 0.48.0
          * Support for Kafka 4.1.0
          * Add monitoring of custom resources using kubernetes-state-metrics (KSM)
          * Support for type: custom client authentication
          * Added support for Strimzi Metrics Reporter to Kafka Connect, Mirror Maker 2 and Kafka Bridge.
          * Added support for KIP-745 in Kafka Connector and Mirror Maker 2, allowing the usage of includeTasks and onlyFailed arguments in Kafka connectors restart.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kaniko-executor@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/maven-builder@sha256:64380efcb8da87fdc0e0de238a20456be9abb830174c2f2331882b7a84657e57
        - quay.io/strimzi/operator@sha256:73dc9555c4a73094b497ffb14d816de5ff40144ffc470efd75ccf128afa22778
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:a4a74cd4bb69717cc58d8996231fd49d8a18be3069a88489ad2409bde4b2a17e
        - quay.io/strimzi/kafka-bridge@sha256:53034f64f0b672f10b5bacea1c7a25132f118df7fd5c9032c4dbf702ed93796a
        - quay.io/strimzi/kafka@sha256:34450afc1a3399a9026fc3c6ec90e9f6adfec9faf6520545b4d84e90cda34964
        - quay.io/strimzi/kafka@sha256:48db05ad2e9fa39eb388089e7e25654bcbf4da1ddc3a5635d675056c28bbcb96
        version: 0.48.0
      entries:
      - name: strimzi-cluster-operator.v0.48.0
        version: 0.48.0
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.48.x
    - currentCSV: strimzi-cluster-operator.v0.49.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.1.1",
                      "metadataVersion": "4.1-IV1",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.1.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "groupId":"my-connect-group",
                  "configStorageTopic":"my-connect-configs",
                  "statusStorageTopic":"my-connect-status",
                  "offsetStorageTopic":"my-connect-offsets",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.1.1",
                  "replicas": 1,
                  "target": {
                    "alias": "cluster-b",
                    "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                    "groupId":"my-mm2-group",
                    "configStorageTopic":"my-mm2-configs",
                    "statusStorageTopic":"my-mm2-status",
                    "offsetStorageTopic":"my-mm2-offsets",
                    "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                    }
                  },
                  "mirrors": [
                    {
                      "source": {
                        "alias": "cluster-a",
                        "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                      },
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
          createdAt: "2025-11-18 15:11:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * ⚠️ **SECURITY: Strimzi 0.49.1 addresses CVE-2025-66623.**
            **If you use Strimzi 0.47.0 or newer, we recommend upgrading to 0.49.1.**

          * **Strimzi 0.49 introduces new API version `v1` to all Strimzi custom resources.**
            The old API versions (`v1alpha1`, `v1beta1`, and `v1beta2`) will continue to be supported until Strimzi 1.0.0 / 0.52.0.
            For more details about the migration to the v1 API and CRD upgrades, see the [documentation](https://strimzi.io/docs/operators/in-development/deploying.html#assembly-api-conversion-str).

          * **Before upgrading to Strimzi 0.49 or newer**, make sure that you update your KafkaUser resources to [use the `.spec.authorization.acls[].operations` field instead of the deprecated `.spec.authorization.acls[].operation`](https://strimzi.io/docs/operators/in-development/deploying.html#con-api-conversion-v1-str).
          * **When rack-awareness is enabled in the `Kafka` custom resource (`.spec.kafka.rack`), Strimzi will not automatically add the best-effort-affinity rules for spreading the Kafka Pods between the zones.**
            Please make sure to set your own `topologySpreadConstraint` or `affinity` rules instead.

          * **From Strimzi 0.48.0, we support only Kubernetes 1.27 and newer.**
            Kubernetes 1.25 and 1.26 are not supported anymore

          ### New in 0.49
          * Support for Kafka 4.0.1 and 4.1.1
          * New v1 API for Strimzi CRDs
          * Refactoring of the KafkaConnect and KafkaMirrorMaker2 custom resources and their structure
          * Changes to how the template fields in Kafka and KafkaNodePool custom resources are handled
          * Removed automatic best-effort affinity rules when rack-awareness is enabled
          * BlockOwnerDeletion is set to true in owner references
          * Support of Buildah for building custom Kafka Connect container images
          * And many more ...
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:928c76a840e7de6f1d9350988238bec7035ed981118e64cfedde4e32d5cb5baf
        - quay.io/strimzi/kaniko-executor@sha256:ba89470b45a49e5e09aaab91a5c3c03ecb14f9013d598bc14b3d756eb9a145b4
        - quay.io/strimzi/buildah@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/kafka-bridge@sha256:53034f64f0b672f10b5bacea1c7a25132f118df7fd5c9032c4dbf702ed93796a
        - quay.io/strimzi/kafka@sha256:8f775ee53622bf68b791c405e40299baa3d845b98e282d1a9269f9466018e990
        - quay.io/strimzi/kafka@sha256:73799dcf5bc7d1bb19f500f345d8892a1f91cf0213e01d9b59d3a1a53cc80aca
        - quay.io/strimzi/kafka@sha256:bfbee54f85beb3731cf41483befa39d8c5ebe5db002df6265c6ea95b6a156749
        - quay.io/strimzi/kafka@sha256:d495d3b6c98d1ea22ed3bdf0d6d06d6cda1c5b35087c817e8cf807892b178520
        - quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
        - quay.io/strimzi/maven-builder@sha256:b8831c2aad621b80dce38484fae353cc5226bfc4dffb0f4c9d8b8d86e0fb3933
        version: 0.49.1
      entries:
      - name: strimzi-cluster-operator.v0.49.1
        version: 0.49.1
      - name: strimzi-cluster-operator.v0.49.0
        version: 0.49.0
      - name: strimzi-cluster-operator.v0.48.0
        version: 0.48.0
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.49.x
    defaultChannel: stable
    packageName: strimzi-kafka-operator
    provider:
      name: Strimzi
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: openshift-builds-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-builds-operator.v1.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "OpenShiftBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "sharedResource": {
                    "state": "Enabled"
                  },
                  "shipwright": {
                    "build": {
                      "state": "Enabled"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.shipwright.io/v1alpha1",
                "kind": "ShipwrightBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "targetNamespace": "openshift-builds"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/openshift-builds/openshift-builds-operator-rhel9
          createdAt: "2025-12-30T13:44:07Z"
          description: Builds for Red Hat OpenShift is a framework for building container
            images on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-builds
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["openshiftbuilds.operator.openshift.io","shipwrightbuilds.operator.shipwright.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/shipwright-io/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OpenShiftBuild describes the desired state of Builds for
              OpenShift, and the status of all deployed components.
            displayName: Open Shift Build
            kind: OpenShiftBuild
            name: openshiftbuilds.operator.openshift.io
            version: v1alpha1
          - description: ShipwrightBuild represents the deployment of Shipwright's
              build controller on a Kubernetes cluster.
            displayName: Shipwright Build
            kind: ShipwrightBuild
            name: shipwrightbuilds.operator.shipwright.io
            version: v1alpha1
        description: "Builds for Red Hat OpenShift is an extensible build framework
          based on the Shipwright project, \nwhich you can use to build container
          images on an OpenShift Container Platform cluster. \nYou can build container
          images from source code and Dockerfile by using image build tools, \nsuch
          as Source-to-Image (S2I), Buildah, and Buildpacks. You can create and apply
          build resources, view logs of build runs, \nand manage builds in your OpenShift
          Container Platform namespaces.\n\n## Prerequisites\n\n* OpenShift Pipelines
          operator must be installed before installing this operator\n\nRead more:
          [https://shipwright.io](https://shipwright.io)\n\n## Features\n\n* Standard
          Kubernetes-native API for building container images from source code and
          Dockerfile\n\n* Support for Source-to-Image (S2I) and Buildah build strategies\n\n*
          Extensibility with your own custom build strategies\n\n* Execution of builds
          from source code in a local directory\n\n* Shipwright CLI for creating and
          viewing logs, and managing builds on the cluster\n\n* Integrated user experience
          with the Developer perspective of the OpenShift Container Platform web console\n"
        displayName: Builds for Red Hat OpenShift Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - build
        - shipwright
        - tekton
        - cicd
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/builds_for_red_hat_openshift/1.4
        - name: Builds for Openshift
          url: https://github.com/redhat-openshift-builds/operator
        maintainers:
        - email: openshift-builds@redhat.com
          name: Red Hat OpenShift Builds Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift-builds/openshift-builds-git-cloner-rhel9@sha256:05c3e7cb8437bbfdbce0caa23eaf19a7fd88b7485cfac710ec05606776d4c426
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-operator-bundle@sha256:2111825788f8e8f63b780c20da94e9b7aa49b505f81e466ad3cd3dc5cec1f775
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-rhel9@sha256:ddedf46115f3dea9e7ef24ebf414e4f16d9fd69b39290d7e66dbb4482208d862
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:ce7050192d9850ed4c35cb3295ccdeec1aa593e27e3a3da6d6aca97cde782abe
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/openshift-builds/openshift-builds-controller-rhel9@sha256:332238b8796ce5441d7ab7e0c99c016c5bd49923549b46b456222c3a763fda69
        - registry.redhat.io/openshift-builds/openshift-builds-image-bundler-rhel9@sha256:58de712d39ab518e2ea41b165b2067bf057335fec58e4becc7c881d04f589b9f
        - registry.redhat.io/openshift-builds/openshift-builds-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        version: 1.6.2
      entries:
      - name: openshift-builds-operator.v1.6.2
        version: 1.6.2
      - name: openshift-builds-operator.v1.6.1
        version: 1.6.1
      - name: openshift-builds-operator.v1.6.0
        version: 1.6.0
      name: builds-1.6
    - currentCSV: openshift-builds-operator.v1.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "OpenShiftBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "sharedResource": {
                    "state": "Enabled"
                  },
                  "shipwright": {
                    "build": {
                      "state": "Enabled"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.shipwright.io/v1alpha1",
                "kind": "ShipwrightBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "targetNamespace": "openshift-builds"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/openshift-builds/openshift-builds-operator-rhel9
          createdAt: "2025-12-30T13:44:07Z"
          description: Builds for Red Hat OpenShift is a framework for building container
            images on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-builds
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["openshiftbuilds.operator.openshift.io","shipwrightbuilds.operator.shipwright.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/shipwright-io/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OpenShiftBuild describes the desired state of Builds for
              OpenShift, and the status of all deployed components.
            displayName: Open Shift Build
            kind: OpenShiftBuild
            name: openshiftbuilds.operator.openshift.io
            version: v1alpha1
          - description: ShipwrightBuild represents the deployment of Shipwright's
              build controller on a Kubernetes cluster.
            displayName: Shipwright Build
            kind: ShipwrightBuild
            name: shipwrightbuilds.operator.shipwright.io
            version: v1alpha1
        description: "Builds for Red Hat OpenShift is an extensible build framework
          based on the Shipwright project, \nwhich you can use to build container
          images on an OpenShift Container Platform cluster. \nYou can build container
          images from source code and Dockerfile by using image build tools, \nsuch
          as Source-to-Image (S2I), Buildah, and Buildpacks. You can create and apply
          build resources, view logs of build runs, \nand manage builds in your OpenShift
          Container Platform namespaces.\n\n## Prerequisites\n\n* OpenShift Pipelines
          operator must be installed before installing this operator\n\nRead more:
          [https://shipwright.io](https://shipwright.io)\n\n## Features\n\n* Standard
          Kubernetes-native API for building container images from source code and
          Dockerfile\n\n* Support for Source-to-Image (S2I) and Buildah build strategies\n\n*
          Extensibility with your own custom build strategies\n\n* Execution of builds
          from source code in a local directory\n\n* Shipwright CLI for creating and
          viewing logs, and managing builds on the cluster\n\n* Integrated user experience
          with the Developer perspective of the OpenShift Container Platform web console\n"
        displayName: Builds for Red Hat OpenShift Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - build
        - shipwright
        - tekton
        - cicd
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/builds_for_red_hat_openshift/1.4
        - name: Builds for Openshift
          url: https://github.com/redhat-openshift-builds/operator
        maintainers:
        - email: openshift-builds@redhat.com
          name: Red Hat OpenShift Builds Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/openshift-builds/openshift-builds-controller-rhel9@sha256:332238b8796ce5441d7ab7e0c99c016c5bd49923549b46b456222c3a763fda69
        - registry.redhat.io/openshift-builds/openshift-builds-operator-bundle@sha256:2111825788f8e8f63b780c20da94e9b7aa49b505f81e466ad3cd3dc5cec1f775
        - registry.redhat.io/openshift-builds/openshift-builds-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:ce7050192d9850ed4c35cb3295ccdeec1aa593e27e3a3da6d6aca97cde782abe
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - registry.redhat.io/openshift-builds/openshift-builds-git-cloner-rhel9@sha256:05c3e7cb8437bbfdbce0caa23eaf19a7fd88b7485cfac710ec05606776d4c426
        - registry.redhat.io/openshift-builds/openshift-builds-image-bundler-rhel9@sha256:58de712d39ab518e2ea41b165b2067bf057335fec58e4becc7c881d04f589b9f
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-rhel9@sha256:ddedf46115f3dea9e7ef24ebf414e4f16d9fd69b39290d7e66dbb4482208d862
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        version: 1.6.2
      entries:
      - name: openshift-builds-operator.v1.6.2
        version: 1.6.2
      - name: openshift-builds-operator.v1.6.1
        version: 1.6.1
      - name: openshift-builds-operator.v1.6.0
        version: 1.6.0
      name: latest
    defaultChannel: latest
    packageName: openshift-builds-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Windup
      provider-url: ""
    name: windup-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: windup-operator.v0.0.25
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
             {
               "apiVersion": "windup.jboss.org/v1",
               "kind": "Windup",
               "metadata": {
                 "name": "windup",
                 "labels": {
                   "application": "windup"
                 }
               },
               "spec": {}
             }
            ]
          capabilities: Basic Install
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/windupeng/windup-operator-native:0.0.25
          createdAt: 01/22/24
          description: Windup is an analysis tool that supports the modernization
            and migration of Java applications.
          imagePullPolicy: Always
          operatorframework.io/suggested-namespace: windup
          repository: https://github.com/windup/windup-operator/
          support: https://issues.redhat.com/projects/WINDUP
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: "Create a Windup Web Console application.  \n\nTo access
              the Windup Web Console application from the \"Developer\" perspective,
              please go to Topology and click on the \"Open URL\" icon on the web-console
              pod.  \n\nAlternatively from the \"Administrator\" perspective, please
              go to Networking->Routes and click on the Location hyperlink.  \n\nKnown
              issue  \nIf you want to customize the Windup Web Console instance's
              parameters and you can not see any in the `Form view`, please switch
              to the `YAML view` and change them as needed.\n"
            displayName: Windup
            kind: Windup
            name: windups.windup.jboss.org
            version: v1
        description: |
          Windup is a web console application that supports large-scale Java application modernization and migration projects across a broad range of transformations and use cases.

          It analyzes application code, supports effort estimation, accelerates code migration, and enables users to move applications to containers.

          For more information please refer to the [https://windup.github.io/](https://windup.github.io/) page.
        displayName: Windup Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - modernization
        - windup
        links:
        - name: Website
          url: https://windup.github.io
        - name: GitHub
          url: https://github.com/windup/windup-operator
        maintainers:
        - email: migrate@redhat.com
          name: Windup
        maturity: alpha
        provider:
          name: Windup
        relatedImages:
        - quay.io/community-operator-pipeline-prod/windup-operator@sha256:4e2bafba54eb01b0ae77555d2ff3da2c34286c7c173756dd20a90de28be36535
        - quay.io/windupeng/windup-operator-native:0.0.25
        version: 0.0.25
      entries:
      - name: windup-operator.v0.0.25
        version: 0.0.25
      - name: windup-operator.v0.0.24
        version: 0.0.24
      - name: windup-operator.v0.0.23
        version: 0.0.23
      - name: windup-operator.v0.0.22
        version: 0.0.22
      - name: windup-operator.v0.0.21
        version: 0.0.21
      - name: windup-operator.v0.0.20
        version: 0.0.20
      - name: windup-operator.v0.0.19
        version: 0.0.19
      - name: windup-operator.v0.0.18
        version: 0.0.18
      - name: windup-operator.v0.0.17
        version: 0.0.17
      - name: windup-operator.v0.0.16
        version: 0.0.16
      - name: windup-operator.v0.0.15
        version: 0.0.15
      - name: windup-operator.v0.0.14
        version: 0.0.14
      - name: windup-operator.v0.0.13
        version: 0.0.13
      - name: windup-operator.v0.0.12
        version: 0.0.12
      - name: windup-operator.v0.0.11
        version: 0.0.11
      name: alpha
    defaultChannel: alpha
    packageName: windup-operator
    provider:
      name: Windup
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: aws-efs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-efs-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"aws-efs.managed.openshift.io/v1alpha1","kind":"SharedVolume","metadata":{"name":"sv1"},"spec":{"accessPointID":
            "fsap-0123456789abcdef", "fileSystemID": "fs-0123cdef"}}]'
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/app-sre/aws-efs-operator:9c87267
          createdAt: "2021-12-20T19:51:50Z"
          description: Manage read-write-many access to AWS EFS volumes in an OpenShift
            cluster.
          repository: https://github.com/openshift/aws-efs-operator
          support: https://github.com/openshift/aws-efs-operator/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Shared Volume
            displayName: SharedVolume
            kind: SharedVolume
            name: sharedvolumes.aws-efs.managed.openshift.io
            version: v1alpha1
        description: |-
          ## About the managed application
          AWS provides Elastic File System, an NFS-based shared storage solution. A couple of mechanisms exist to enable mounting such a file system in containers. Curating these options and making them work in a cluster is nontrivial.
          ## About this Operator
          The aws-efs-operator minimizes the barrier to entry for container use of EFS by:
          - Installing the [AWS EFS CSI Driver](https://github.com/kubernetes-sigs/aws-efs-csi-driver) and supporting infrastructure.
          - Reducing the identification of a shared storage resource to a simple Custom Resource Definition with only two fields.
          - Creating the necessary PersistentVolume and PersistentVolumeClaim resources that can simply be referenced from a Pod specification.

          More information can be found in the operator's [source repository](https://github.com/openshift/aws-efs-operator).
          ## Prerequisites for enabling this Operator
          An OpenShift cluster backed by AWS.
        displayName: AWS EFS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AWS
        - EFS
        - NFS
        - Shared storage
        links:
        - name: README
          url: https://github.com/openshift/aws-efs-operator/blob/master/README.md
        - name: Design
          url: https://github.com/openshift/aws-efs-operator/blob/master/DESIGN.md
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/app-sre/aws-efs-operator:9c87267
        - quay.io/openshift-community-operators/aws-efs-operator@sha256:6372847df81faddc23c938928157c3ac280e537a4eec9f7edd599480260bc566
        version: 0.0.8
      entries:
      - name: aws-efs-operator.v0.0.8
        version: 0.0.8
      name: stable
    defaultChannel: stable
    packageName: aws-efs-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Elastic
      provider-url: ""
    name: elasticsearch-eck-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: elasticsearch-eck-operator-certified.v3.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                    "apiVersion": "elasticsearch.k8s.elastic.co/v1",
                    "kind": "Elasticsearch",
                    "metadata": {
                        "name": "elasticsearch-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "nodeSets": [
                            {
                                "name": "default",
                                "config": {
                                    "node.roles": ["master", "data"],
                                    "node.attr.attr_name": "attr_value",
                                    "node.store.allow_mmap": false
                                },
                                "podTemplate": {
                                    "metadata": {
                                        "labels": {
                                            "foo": "bar"
                                        }
                                    },
                                    "spec": {
                                        "containers": [
                                            {
                                                "name": "elasticsearch",
                                                "resources": {
                                                    "requests": {
                                                        "memory": "4Gi",
                                                        "cpu": 1
                                                    },
                                                    "limits": {
                                                        "memory": "4Gi",
                                                        "cpu": 2
                                                    }
                                                }
                                            }
                                        ]
                                    }
                                },
                                "count": 3
                            }
                        ]
                    }
                },
                {
                    "apiVersion": "kibana.k8s.elastic.co/v1",
                    "kind": "Kibana",
                    "metadata": {
                        "name": "kibana-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        },
                        "podTemplate": {
                            "metadata": {
                                "labels": {
                                    "foo": "bar"
                                }
                            },
                            "spec": {
                                "containers": [
                                    {
                                        "name": "kibana",
                                        "resources": {
                                            "requests": {
                                                "memory": "1Gi",
                                                "cpu": 0.5
                                            },
                                            "limits": {
                                                "memory": "2Gi",
                                                "cpu": 2
                                            }
                                        }
                                    }
                                ]
                            }
                        }
                    }
                },
                {
                    "apiVersion": "apm.k8s.elastic.co/v1",
                    "kind": "ApmServer",
                    "metadata": {
                        "name": "apmserver-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        }
                    }
                },
                {
                    "apiVersion": "enterprisesearch.k8s.elastic.co/v1",
                    "kind": "EnterpriseSearch",
                    "metadata": {
                        "name": "ent-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "config": {
                            "ent_search.external_url": "https://localhost:3002"
                        },
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        }
                    }
                },
                {
                  "apiVersion": "beat.k8s.elastic.co/v1beta1",
                  "kind": "Beat",
                  "metadata": {
                    "name": "heartbeat-sample"
                  },
                  "spec": {
                    "type": "heartbeat",
                    "version": "9.2.0",
                    "elasticsearchRef": {
                      "name": "elasticsearch-sample"
                    },
                    "config": {
                      "heartbeat.monitors": [
                        {
                          "type": "tcp",
                          "schedule": "@every 5s",
                          "hosts": [
                            "elasticsearch-sample-es-http.default.svc:9200"
                          ]
                        }
                      ]
                    },
                    "deployment": {
                      "replicas": 1,
                      "podTemplate": {
                        "spec": {
                          "securityContext": {
                            "runAsUser": 0
                          }
                        }
                      }
                    }
                  }
                },
                {
                  "apiVersion": "agent.k8s.elastic.co/v1alpha1",
                  "kind": "Agent",
                  "metadata": {
                    "name": "agent-sample"
                  },
                  "spec": {
                    "version": "9.2.0",
                    "elasticsearchRefs": [
                      {
                        "name": "elasticsearch-sample"
                      }
                    ],
                    "daemonSet": {},
                    "config": {
                      "inputs": [
                        {
                          "name": "system-1",
                          "revision": 1,
                          "type": "system/metrics",
                          "use_output": "default",
                          "meta": {
                            "package": {
                              "name": "system",
                              "version": "0.9.1"
                            }
                          },
                          "data_stream": {
                            "namespace": "default"
                          },
                          "streams": [
                            {
                              "id": "system/metrics-system.cpu",
                              "data_stream": {
                                "dataset": "system.cpu",
                                "type": "metrics"
                              },
                              "metricsets": [
                                "cpu"
                              ],
                              "cpu.metrics": [
                                "percentages",
                                "normalized_percentages"
                              ],
                              "period": "10s"
                            }
                          ]
                        }
                      ]
                    }
                  }
                },
                {
                    "apiVersion": "maps.k8s.elastic.co/v1alpha1",
                    "kind": "ElasticMapsServer",
                    "metadata": {
                        "name": "ems-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        }
                    }
                },
                {
                    "apiVersion": "logstash.k8s.elastic.co/v1alpha1",
                    "kind": "Logstash",
                    "metadata" : {
                        "name": "logstash-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1
                    }
                }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.connect.redhat.com/elastic/eck-operator@sha256:28925fffef8f7c920b2510810cbcfc0f3dadab5f8a80b01fd5ae500e5c070105
          createdAt: "2025-10-31 20:52:32"
          description: Run Elasticsearch, Kibana, APM Server, Beats, Enterprise Search,
            Elastic Agent, Elastic Maps Server and Logstash on Kubernetes and OpenShift
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: Elastic Basic license
          repository: https://github.com/elastic/cloud-on-k8s
          support: elastic.co
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Elastic Agent instance
            displayName: Elastic Agent
            kind: Agent
            name: agents.agent.k8s.elastic.co
            version: v1alpha1
          - description: APM Server instance
            displayName: APM Server
            kind: ApmServer
            name: apmservers.apm.k8s.elastic.co
            version: v1
          - description: Beats instance
            displayName: Beats
            kind: Beat
            name: beats.beat.k8s.elastic.co
            version: v1beta1
          - description: Elastic Maps Server instance
            displayName: Elastic Maps Server
            kind: ElasticMapsServer
            name: elasticmapsservers.maps.k8s.elastic.co
            version: v1alpha1
          - description: Instance of an Elasticsearch autoscaler
            displayName: Elasticsearch Autoscaler
            kind: ElasticsearchAutoscaler
            name: elasticsearchautoscalers.autoscaling.k8s.elastic.co
            version: v1alpha1
          - description: Instance of an Elasticsearch cluster
            displayName: Elasticsearch Cluster
            kind: Elasticsearch
            name: elasticsearches.elasticsearch.k8s.elastic.co
            version: v1
          - description: Enterprise Search instance
            displayName: Enterprise Search
            kind: EnterpriseSearch
            name: enterprisesearches.enterprisesearch.k8s.elastic.co
            version: v1
          - description: Kibana instance
            displayName: Kibana
            kind: Kibana
            name: kibanas.kibana.k8s.elastic.co
            version: v1
          - description: Logstash instance
            displayName: Logstash
            kind: Logstash
            name: logstashes.logstash.k8s.elastic.co
            version: v1alpha1
          - description: Elastic Stack Config Policy
            displayName: Elastic Stack Config Policy
            kind: StackConfigPolicy
            name: stackconfigpolicies.stackconfigpolicy.k8s.elastic.co
            version: v1alpha1
        description: |-
          Elastic Cloud on Kubernetes (ECK) is the official operator by Elastic for automating the deployment, provisioning, management, and orchestration of Elasticsearch, Kibana, APM Server, Beats, Enterprise Search, Elastic Agent, Elastic Maps Server, and Logstash on Kubernetes.

          Current features:

          *  Elasticsearch, Kibana, APM Server, Enterprise Search, Beats, Elastic Agent, Elastic Maps Server, and Logstash deployments
          *  TLS Certificates management
          *  Safe Elasticsearch cluster configuration and topology changes
          *  Persistent volumes usage
          *  Custom node configuration and attributes
          *  Secure settings keystore updates

          Supported versions:

          * Kubernetes 1.30-1.34
          * OpenShift 4.15-4.19
          * Google Kubernetes Engine (GKE), Azure Kubernetes Service (AKS), and Amazon Elastic Kubernetes Service (EKS)
          * Elasticsearch, Kibana, APM Server: 7.17+, 8+, 9+
          * Enterprise Search: 7.17+, 8+
          * Beats: 7.17+, 8+, 9+
          * Elastic Agent: 7.17+, 8+, 9+
          * Elastic Maps Server: 7.17+, 8+, 9+
          * Logstash 8.12+, 9+

          ECK should work with all conformant installers as listed in these [FAQs](https://github.com/cncf/k8s-conformance/blob/master/faq.md#what-is-a-distribution-hosted-platform-and-an-installer). Distributions include source patches and so may not work as-is with ECK.
          Alpha, beta, and stable API versions follow the same [conventions used by Kubernetes](https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-versioning).
          See the full [Elastic support matrix](https://www.elastic.co/support/matrix#matrix_kubernetes) for more information.
          See the [Quickstart](https://www.elastic.co/guide/en/cloud-on-k8s/3.2/k8s-quickstart.html) to get started with ECK.
        displayName: Elasticsearch (ECK) Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - elasticsearch
        - kibana
        - analytics
        - search
        - database
        - apm
        - logstash
        links:
        - name: Documentation
          url: https://www.elastic.co/guide/en/cloud-on-k8s/3.2/index.html
        maintainers:
        - email: eck@elastic.co
          name: Elastic
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Elastic
        relatedImages:
        - registry.connect.redhat.com/elastic/eck-operator@sha256:28925fffef8f7c920b2510810cbcfc0f3dadab5f8a80b01fd5ae500e5c070105
        - registry.connect.redhat.com/elastic/eck@sha256:815e6949d8b96d832660e6ed715f8fbf080b230f1bccfc3e0f38781585b14eeb
        version: 3.2.0
      entries:
      - name: elasticsearch-eck-operator-certified.v3.2.0
        version: 3.2.0
      - name: elasticsearch-eck-operator-certified.v3.1.0
        version: 3.1.0
      - name: elasticsearch-eck-operator-certified.v3.0.0
        version: 3.0.0
      - name: elasticsearch-eck-operator-certified.v2.16.1
        version: 2.16.1
      - name: elasticsearch-eck-operator-certified.v2.16.0
        version: 2.16.0
      - name: elasticsearch-eck-operator-certified.v2.15.0
        version: 2.15.0
      - name: elasticsearch-eck-operator-certified.v2.14.0
        version: 2.14.0
      - name: elasticsearch-eck-operator-certified.v2.13.0
        version: 2.13.0
      - name: elasticsearch-eck-operator-certified.v2.12.1
        version: 2.12.1
      - name: elasticsearch-eck-operator-certified.v2.12.0
        version: 2.12.0
      - name: elasticsearch-eck-operator-certified.v2.11.1
        version: 2.11.1
      - name: elasticsearch-eck-operator-certified.v2.11.0
        version: 2.11.0
      - name: elasticsearch-eck-operator-certified.v2.10.0
        version: 2.10.0
      - name: elasticsearch-eck-operator-certified.v2.9.0
        version: 2.9.0
      - name: elasticsearch-eck-operator-certified.v2.8.0
        version: 2.8.0
      - name: elasticsearch-eck-operator-certified.v2.7.0
        version: 2.7.0
      - name: elasticsearch-eck-operator-certified.v2.6.2
        version: 2.6.2
      - name: elasticsearch-eck-operator-certified.v2.6.1
        version: 2.6.1
      - name: elasticsearch-eck-operator-certified.v2.5.0
        version: 2.5.0
      - name: elasticsearch-eck-operator-certified.v2.4.0
        version: 2.4.0
      - name: elasticsearch-eck-operator-certified.v2.3.0
        version: 2.3.0
      - name: elasticsearch-eck-operator-certified.v2.2.0
        version: 2.2.0
      - name: elasticsearch-eck-operator-certified.v2.1.0
        version: 2.1.0
      - name: elasticsearch-eck-operator-certified.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: elasticsearch-eck-operator-certified
    provider:
      name: Elastic
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Arctera US LLC
      provider-url: https://www.arctera.io
    name: infoscale-dr-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infoscale-dr-manager.v8.0.220
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com",
                  "resRecord": {
                    "HostName_1": "100.200.30.41",
                    "HostName_2": "100.200.30.43",
                    "abc": "HostName_2",
                    "www": "HostName_1",
                    "xyz": "HostName_3"
                  },
                  "stealthMasters": [
                    "1.2.3.4"
                  ],
                  "tsigKeyFile": "/Kvcslnxdns.com.+157+10641.private"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "dataReplicationPointer": "test-datareplication",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 10,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          olm.skipRange: <8.0.220
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v155481520-155483981)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
            - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v151984431-155483981)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com/
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager-bundle@sha256:5f10cfc1bc8571f44a99d88755adade0743106219673bbdd2e4d3a04ee714778
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager@sha256:a98f9cc51f2c7baeec6dbb4933a42ae8ae20ff1a42c9d48a37174cf5211bbcf8
        version: 8.0.220
      entries:
      - name: infoscale-dr-manager.v8.0.220
        version: 8.0.220
      - name: infoscale-dr-manager.v8.0.100
        version: 8.0.100
      name: 8.0.200x
    - currentCSV: infoscale-dr-manager.v8.0.330
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          createdAt: "2024-06-17T10:14:13Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v155481520-155483981)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v151984431-155483981)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com/
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager-bundle@sha256:9f90cd7ab8c0ab5da6eb12f7f0dbd177df62f07c38fb759a97989899cfcbe75d
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager@sha256:c46cbf78631fc790c77b6c13c1d1d4b5ab35f49164f7c2e36c7ec59220cbdce2
        version: 8.0.330
      entries:
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: 8.0.300x
    - currentCSV: infoscale-dr-manager.v8.0.410
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:7dff20a0aff34e1e66a97c9a39cda883642dd1e94b872c8fc2f62efc7a4db1bb
          createdAt: "2024-02-22T14:14:42Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:7dff20a0aff34e1e66a97c9a39cda883642dd1e94b872c8fc2f62efc7a4db1bb
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:15d6d2d189c8acd42867a8ed6d843b8be819a07e71b42aab24ea5fdb1fd7bfec
        version: 8.0.410
      entries:
      - name: infoscale-dr-manager.v8.0.410
        version: 8.0.410
      - name: infoscale-dr-manager.v8.0.409
        version: 8.0.409
      - name: infoscale-dr-manager.v8.0.400
        version: 8.0.400
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: 8.0.400x
    - currentCSV: infoscale-dr-manager.v9.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:ca65f01cb406bb12faeef07decffe765d1b34954830073d053244a1846a1b24e
          createdAt: "2025-09-12T09:53:51Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API.
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API.
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API.
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API.
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:dc63dad730f6ccee19b6f0ca4274b90fdf8d4ff165bf59501aaf4294ebe139e1
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:ca65f01cb406bb12faeef07decffe765d1b34954830073d053244a1846a1b24e
        version: 9.0.1
      entries:
      - name: infoscale-dr-manager.v9.0.1
        version: 9.0.1
      name: beta
    - currentCSV: infoscale-dr-manager.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
          createdAt: "2025-09-12T09:53:51Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API.
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API.
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API.
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API.
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:85b8dcf4981197a28cfd8a5492668205db2a224369b1b5bfaeea16da619339d2
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
        version: 9.1.0
      entries:
      - name: infoscale-dr-manager.v9.1.0
        version: 9.1.0
      - name: infoscale-dr-manager.v8.0.410
        version: 8.0.410
      - name: infoscale-dr-manager.v8.0.409
        version: 8.0.409
      - name: infoscale-dr-manager.v8.0.400
        version: 8.0.400
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: fast
    - currentCSV: infoscale-dr-manager.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
          createdAt: "2025-09-12T09:53:51Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API.
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API.
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API.
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API.
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:85b8dcf4981197a28cfd8a5492668205db2a224369b1b5bfaeea16da619339d2
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
        version: 9.1.0
      entries:
      - name: infoscale-dr-manager.v9.1.0
        version: 9.1.0
      - name: infoscale-dr-manager.v8.0.410
        version: 8.0.410
      - name: infoscale-dr-manager.v8.0.409
        version: 8.0.409
      - name: infoscale-dr-manager.v8.0.400
        version: 8.0.400
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: stable
    defaultChannel: fast
    packageName: infoscale-dr-manager
    provider:
      name: Arctera US LLC
      url: https://www.arctera.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-pipes-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-pipes-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pipes.services.k8s.aws/v1alpha1",
                "kind": "Pipe",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/pipes-controller:1.2.0
          createdAt: "2025-11-29T03:55:44Z"
          description: AWS EventBridge Pipes controller is a service controller for
            managing Pipes resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Pipe represents the state of an AWS pipes Pipe resource.
            displayName: Pipe
            kind: Pipe
            name: pipes.pipes.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EventBridge Pipes resources in AWS from within your Kubernetes cluster.

          **About Amazon EventBridge Pipes**

          Amazon EventBridge Pipes connects sources to targets. Pipes are intended for point-to-point integrations between supported [sources](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html) and [targets](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-target.html), with support for advanced transformations and [enrichment](https://docs.aws.amazon.com/eventbridge/latest/userguide/pipes-enrichment.html). It reduces the need for specialized knowledge and integration code when developing event-driven architectures, fostering consistency across your company’s applications. To set up a pipe, you choose the source, add optional filtering, define optional enrichment, and choose the target for the event data.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EventBridge Pipes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - pipes
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EventBridge Pipes Developer Resources
          url: https://aws.amazon.com/eventbridge/pipes/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: pipes maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/pipes-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-pipes-controller@sha256:2f105744658b9f0e0a1e09eebecd83f2f9b2511a3e9522b96fca50638e4f38d2
        version: 1.2.0
      entries:
      - name: ack-pipes-controller.v1.2.0
        version: 1.2.0
      - name: ack-pipes-controller.v1.1.3
        version: 1.1.3
      - name: ack-pipes-controller.v1.1.2
        version: 1.1.2
      - name: ack-pipes-controller.v1.1.1
        version: 1.1.1
      - name: ack-pipes-controller.v1.1.0
        version: 1.1.0
      - name: ack-pipes-controller.v1.0.25
        version: 1.0.25
      - name: ack-pipes-controller.v1.0.24
        version: 1.0.24
      - name: ack-pipes-controller.v1.0.23
        version: 1.0.23
      - name: ack-pipes-controller.v1.0.22
        version: 1.0.22
      - name: ack-pipes-controller.v1.0.21
        version: 1.0.21
      - name: ack-pipes-controller.v1.0.20
        version: 1.0.20
      - name: ack-pipes-controller.v1.0.18
        version: 1.0.18
      - name: ack-pipes-controller.v1.0.17
        version: 1.0.17
      - name: ack-pipes-controller.v1.0.16
        version: 1.0.16
      - name: ack-pipes-controller.v1.0.15
        version: 1.0.15
      - name: ack-pipes-controller.v1.0.14
        version: 1.0.14
      - name: ack-pipes-controller.v1.0.13
        version: 1.0.13
      - name: ack-pipes-controller.v1.0.12
        version: 1.0.12
      - name: ack-pipes-controller.v1.0.11
        version: 1.0.11
      - name: ack-pipes-controller.v1.0.10
        version: 1.0.10
      - name: ack-pipes-controller.v1.0.9
        version: 1.0.9
      - name: ack-pipes-controller.v1.0.8
        version: 1.0.8
      - name: ack-pipes-controller.v1.0.6
        version: 1.0.6
      - name: ack-pipes-controller.v1.0.3
        version: 1.0.3
      - name: ack-pipes-controller.v1.0.2
        version: 1.0.2
      - name: ack-pipes-controller.v1.0.1
        version: 1.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-pipes-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: cert-utils-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cert-utils-operator.v1.3.12
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/cert-utils-operator@sha256:0290e7b2800a5aa8eb57b0268908f2a20a93b16403c76df4c61021048161d6ff
          createdAt: "2024-01-23T12:29:04Z"
          description: Set of utilities for TLS certificates
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-utils-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/cert-utils-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Cert utils operator is a set of functionalities around certificates packaged in a [Kubernetes operator](https://github.com/operator-framework/operator-sdk).

          Certificates are assumed to be available in a [secret](https://kubernetes.io/docs/concepts/configuration/secret/) of type `kubernetes.io/tls` (other types of secrets are *ignored* by this operator).
          By convention this type of secrets have three optional entries:

          1. `tls.key`: the private key of the certificate.
          2. `tls.crt`: the actual certificate.
          3. `ca.crt`: the CA bundle that validates the certificate.

          The functionalities are the following:

          1. [Ability to populate route certificates](https://github.com/redhat-cop/cert-utils-operator#Populating-route-certificates)
          2. [Ability to create java keystore and truststore from the certificates](https://github.com/redhat-cop/cert-utils-operator#Creating-java-keystore-and-truststore)
          3. [Ability to show info regarding the certificates](https://github.com/redhat-cop/cert-utils-operator#Showing-info-on-the-certificates)
          4. [Ability to alert when a certificate is about to expire](https://github.com/redhat-cop/cert-utils-operator#Alerting-when-a-certificate-is-about-to-expire)
          5. [Ability to inject ca bundles in ValidatingWebhookConfiguration, MutatingWebhookConfiguration, CustomResourceDefinition object](https://github.com/redhat-cop/cert-utils-operator#CA-injection)

          All these feature are activated via opt-in annotations.
        displayName: Cert Utils Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TLS
        - secrets
        - security
        - certificates
        links:
        - name: Cert Utils Operator
          url: https://github.com/redhat-cop/cert-utils-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/cert-utils-operator
        maintainers:
        - email: rspazzoli@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cert-utils-operator@sha256:92a0c0b893b56330593e0a255b8df61031e92a61d172aecc58be5805d847798a
        - quay.io/redhat-cop/cert-utils-operator@sha256:0290e7b2800a5aa8eb57b0268908f2a20a93b16403c76df4c61021048161d6ff
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.3.12
      entries:
      - name: cert-utils-operator.v1.3.12
        version: 1.3.12
      - name: cert-utils-operator.v1.3.11
        version: 1.3.11
      - name: cert-utils-operator.v1.3.10
        version: 1.3.10
      - name: cert-utils-operator.v1.3.9
        version: 1.3.9
      - name: cert-utils-operator.v1.3.8
        version: 1.3.8
      - name: cert-utils-operator.v1.3.7
        version: 1.3.7
      - name: cert-utils-operator.v1.3.6
        version: 1.3.6
      - name: cert-utils-operator.v1.3.5
        version: 1.3.5
      - name: cert-utils-operator.v1.3.4
        version: 1.3.4
      - name: cert-utils-operator.v1.3.3
        version: 1.3.3
      - name: cert-utils-operator.v1.3.2
        version: 1.3.2
      - name: cert-utils-operator.v1.3.1
        version: 1.3.1
      - name: cert-utils-operator.v1.3.0
        version: 1.3.0
      - name: cert-utils-operator.v1.2.0
        version: 1.2.0
      - name: cert-utils-operator.v1.1.0
        version: 1.1.0
      - name: cert-utils-operator.v1.0.7
        version: 1.0.7
      - name: cert-utils-operator.v1.0.6
        version: 1.0.6
      - name: cert-utils-operator.v1.0.5
        version: 1.0.5
      - name: cert-utils-operator.v1.0.4
        version: 1.0.4
      - name: cert-utils-operator.v1.0.3
        version: 1.0.3
      - name: cert-utils-operator.v1.0.2
        version: 1.0.2
      - name: cert-utils-operator.v1.0.1
        version: 1.0.1
      - name: cert-utils-operator.v1.0.0
        version: 1.0.0
      - name: cert-utils-operator.v0.2.2
        version: 0.2.2
      - name: cert-utils-operator.v0.2.1
        version: 0.2.1
      - name: cert-utils-operator.v0.2.0
        version: 0.2.0
      - name: cert-utils-operator.v0.1.1
        version: 0.1.1
      - name: cert-utils-operator.v0.1.0
        version: 0.1.0
      - name: cert-utils-operator.v0.0.3
        version: 0.0.3
      - name: cert-utils-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: cert-utils-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: ""
    name: percona-xtradb-cluster-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-xtradb-cluster-operator.v1.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pxc.percona.com/v1-9-0",
                "kind": "PerconaXtraDBCluster",
                "metadata": {
                  "name": "cluster1",
                  "finalizers": [
                    "delete-pxc-pods-in-order"
                  ]
                },
                "spec": {
                  "crVersion": "1.9.0",
                  "secretsName": "my-cluster-secrets",
                  "vaultSecretName": "keyring-secret-vault",
                  "sslSecretName": "my-cluster-ssl",
                  "sslInternalSecretName": "my-cluster-ssl-internal",
                  "logCollectorSecretName": "my-log-collector-secrets",
                  "allowUnsafeConfigurations": false,
                  "updateStrategy": "SmartUpdate",
                  "upgradeOptions": {
                    "versionServiceEndpoint": "https://check.percona.com",
                    "apply": "8.0-recommended",
                    "schedule": "0 4 * * *"
                  },
                  "pxc": {
                    "size": 3,
                    "image": "percona/percona-xtradb-cluster:8.0.23-14.1",
                    "autoRecovery": true,
                    "resources": {
                      "requests": {
                        "memory": "1G",
                        "cpu": "600m"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "volumeSpec": {
                      "persistentVolumeClaim": {
                        "resources": {
                          "requests": {
                            "storage": "6G"
                          }
                        }
                      }
                    },
                    "gracePeriod": 600
                  },
                  "haproxy": {
                    "enabled": true,
                    "size": 3,
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-haproxy",
                    "resources": {
                      "requests": {
                        "memory": "1G",
                        "cpu": "600m"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "gracePeriod": 30
                  },
                  "proxysql": {
                    "enabled": false,
                    "size": 3,
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-proxysql",
                    "resources": {
                      "requests": {
                        "memory": "1G",
                        "cpu": "600m"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "volumeSpec": {
                      "persistentVolumeClaim": {
                        "resources": {
                          "requests": {
                            "storage": "2G"
                          }
                        }
                      }
                    },
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "gracePeriod": 30
                  },
                  "logcollector": {
                    "enabled": true,
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-logcollector"
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "percona/pmm-client:2.18.0",
                    "serverHost": "monitoring-service",
                    "serverUser": "admin"
                  },
                  "backup": {
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-pxc8.0-backup",
                    "pitr": {
                      "enabled": false,
                      "storageName": "STORAGE-NAME-HERE",
                      "timeBetweenUploads": 60
                    },
                    "storages": {
                      "s3-us-west": {
                        "type": "s3",
                        "s3": {
                          "bucket": "S3-BACKUP-BUCKET-NAME-HERE",
                          "credentialsSecret": "my-cluster-name-backup-s3",
                          "region": "us-west-2"
                        }
                      },
                      "fs-pvc": {
                        "type": "filesystem",
                        "volume": {
                          "persistentVolumeClaim": {
                            "accessModes": [
                              "ReadWriteOnce"
                            ],
                            "resources": {
                              "requests": {
                                "storage": "6G"
                              }
                            }
                          }
                        }
                      }
                    },
                    "schedule": [
                      {
                        "name": "sat-night-backup",
                        "schedule": "0 0 * * 6",
                        "keep": 3,
                        "storageName": "s3-us-west"
                      },
                      {
                        "name": "daily-backup",
                        "schedule": "0 0 * * *",
                        "keep": 5,
                        "storageName": "fs-pvc"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "fs-pvc"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1alpha1",
                "kind": "PerconaXtraDBBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "s3-us-west"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterRestore",
                "metadata": {
                  "name": "restore1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "backupName": "backup1"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "fs-pvc"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1alpha1",
                "kind": "PerconaXtraDBBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "s3-us-west"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterRestore",
                "metadata": {
                  "name": "restore1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "backupName": "backup1"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: percona/percona-xtradb-cluster-operator:1.9.0
          createdAt: "2021-10-14T13:11:44.000Z"
          description: Percona Distribution for Mysql Operator manages the lifecycle
            of Percona XtraDB cluster instances.
          repository: https://github.com/percona/percona-xtradb-cluster-operator
          support: Percona
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instance of a Percona XtraDB Cluster
            displayName: PerconaXtraDBCluster
            kind: PerconaXtraDBCluster
            name: perconaxtradbclusters.pxc.percona.com
            version: v1-9-0
          - description: Instance of a Percona XtraDB Cluster Backup
            displayName: PerconaXtraDBClusterBackup
            kind: PerconaXtraDBClusterBackup
            name: perconaxtradbclusterbackups.pxc.percona.com
            version: v1
          - description: Instance of a Percona XtraDB Cluster Restore
            displayName: PerconaXtraDBClusterRestore
            kind: PerconaXtraDBClusterRestore
            name: perconaxtradbclusterrestores.pxc.percona.com
            version: v1
          - description: (Legacy) Instance of a Percona XtraDB Cluster Backup
            displayName: PerconaXtraDBBackup
            kind: PerconaXtraDBBackup
            name: perconaxtradbbackups.pxc.percona.com
            version: v1alpha1
        description: |2+

          ## Percona is Cloud Native

          Percona Distribution for Mysql Operator is an open-source drop in replacement for MySQL Enterprise with synchronous replication running on Kubernetes. It automates the deployment and management of the members in your Percona XtraDB Cluster environment. It can be used to instantiate a new Percona XtraDB Cluster, or to scale an existing environment.
          Consult the [documentation](https://percona.github.io/percona-xtradb-cluster-operator/) on the Percona Distribution for Mysql Operator for complete details on capabilities and options.

          ### Supported Features

          * **Scale Your Cluster**  change the `size` parameter to [add or remove members](https://percona.github.io/percona-xtradb-cluster-operator/install/scaling) of the cluster. Three is the minimum recommended size for a functioning cluster.

          * **Automate Your Backups**  [configure cluster backups](https://percona.github.io/percona-xtradb-cluster-operator/configure/operator) to run on a scheduled basis. Backups can be stored on a persistent volume or S3-compatible storage. Leverage [Point-in-time recovery](https://www.percona.com/doc/kubernetes-operator-for-pxc/backups.html#storing-binary-logs-for-point-in-time-recovery) to reduce RPO/RTO.
          * **Proxy integration**  choose HAProxy or ProxySQL as a proxy in front of the Percona XtraDB Cluster. Proxies are deployed and configured automatically with the Operator.
          ### Common Configurations

          * **Set Resource Limits** - set limitation on requests to CPU and memory resources.

          * **Customize Storage** - set the desired Storage Class and Access Mode for your database cluster data.

          * **Control Scheduling** - define how your PXC Pods are scheduled onto the K8S cluster with tolerations, pod disruption budgets, node selector and affinity settings.
          * Automatic synchronization of MySQL users with ProxySQL
          * Fully automated minor version updates (Smart Update)
          * Update Reader members before Writer member at cluster upgrades
          * Support MySQL versions 5.7 and 8.0
          ### Before You Start

          Add the PXC user `Secret` to Kubernetes. User information must be placed in the data section of the `secrets.yaml`
          file with Base64-encoded logins and passwords for the user accounts.

          Below is a sample `secrets.yaml` file for the correct formatting.

          ```
          apiVersion: v1
          kind: Secret
          metadata:
            name: my-cluster-secrets
          type: Opaque
          data:
            root: cm9vdF9wYXNzd29yZA==
            xtrabackup: YmFja3VwX3Bhc3N3b3Jk
            monitor: bW9uaXRvcg==
            clustercheck: Y2x1c3RlcmNoZWNrcGFzc3dvcmQ=
            proxyadmin: YWRtaW5fcGFzc3dvcmQ=
            pmmserver: c3VwYXxefHBheno=
            operator: b3BlcmF0b3JhZG1pbg==
          ```
          ###  Release Highlights

          * Starting from this release, the Operator changes its official name to Percona Distribution for MySQL Operator.
            This new name emphasizes gradual changes which incorporated a collection of Percona’s solutions to run and operate Percona Server for MySQL and Percona XtraDB Cluster, available separately as Percona Distribution for MySQL.
            Now you can see HAProxy metrics in your favorite Percona Monitoring and Management (PMM) dashboards automatically.
          * The cross-site replication feature allows an asynchronous replication between two Percona XtraDB Clusters, including scenarios when one of the clusters is outside of the Kubernetes environment.
            The feature is intended for the following use cases:
              * provide migrations of your Percona XtraDB Cluster to Kubernetes or vice versa,
              * migrate regular MySQL database to Percona XtraDB Cluster under the Operator control, or carry on backward migration,
              * enable disaster recovery capability for your cluster deployment.

        displayName: Percona XtraDB Cluster Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mysql
        - percona
        - database
        - pxc
        - galera
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://percona.github.io/percona-xtradb-cluster-operator/
        - name: Github
          url: https://github.com/percona/percona-xtradb-cluster-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
        relatedImages:
        - percona/percona-xtradb-cluster-operator:1.9.0
        - quay.io/openshift-community-operators/percona-xtradb-cluster-operator@sha256:6138612eaecaac82239d52c2f4eecddcba3aa83d2986cf05b0f01903b72844e6
        version: 1.9.0
      entries:
      - name: percona-xtradb-cluster-operator.v1.9.0
        version: 1.9.0
      name: stable
    defaultChannel: stable
    packageName: percona-xtradb-cluster-operator
    provider:
      name: Percona
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-secretsmanager-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-secretsmanager-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "secretsmanager.services.k8s.aws/v1alpha1",
                "kind": "Secret",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/secretsmanager-controller:1.2.0
          createdAt: "2025-11-29T04:50:21Z"
          description: AWS Secrets Manager controller is a service controller for
            managing Secrets Manager resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Secret represents the state of an AWS secretsmanager Secret
              resource.
            displayName: Secret
            kind: Secret
            name: secrets.secretsmanager.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Secrets Manager resources in AWS from within your Kubernetes cluster.

          **About Amazon Secrets Manager**

          AWS Secrets Manager helps you manage, retrieve, and rotate database credentials, application credentials, OAuth tokens, API keys, and other secrets throughout their lifecycles. [Many AWS services that use secrets](https://docs.aws.amazon.com/secretsmanager/latest/userguide/integrating.html) store them in Secrets Manager.

          Secrets Manager helps you improve your security posture, because you no longer need hard-coded credentials in application source code. Storing the credentials in Secrets Manager helps avoid possible compromise by anyone who can inspect your application or the components. You replace hard-coded credentials with a runtime call to the Secrets Manager service to retrieve credentials dynamically when you need them.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Secrets Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secretsmanager
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Secrets Manager Developer Resources
          url: https://aws.amazon.com/secrets-manager/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: secretsmanager maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/secretsmanager-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-secretsmanager-controller@sha256:0ef52e0e1cfddc7f8f6fcb65b21299e50c5ce34d0391e4c21e36e1abf2d5f04d
        version: 1.2.0
      entries:
      - name: ack-secretsmanager-controller.v1.2.0
        version: 1.2.0
      - name: ack-secretsmanager-controller.v1.1.2
        version: 1.1.2
      - name: ack-secretsmanager-controller.v1.1.1
        version: 1.1.1
      - name: ack-secretsmanager-controller.v1.1.0
        version: 1.1.0
      - name: ack-secretsmanager-controller.v1.0.14
        version: 1.0.14
      - name: ack-secretsmanager-controller.v1.0.13
        version: 1.0.13
      - name: ack-secretsmanager-controller.v1.0.12
        version: 1.0.12
      - name: ack-secretsmanager-controller.v1.0.11
        version: 1.0.11
      - name: ack-secretsmanager-controller.v1.0.10
        version: 1.0.10
      - name: ack-secretsmanager-controller.v1.0.9
        version: 1.0.9
      - name: ack-secretsmanager-controller.v1.0.8
        version: 1.0.8
      - name: ack-secretsmanager-controller.v1.0.7
        version: 1.0.7
      - name: ack-secretsmanager-controller.v1.0.6
        version: 1.0.6
      - name: ack-secretsmanager-controller.v1.0.5
        version: 1.0.5
      - name: ack-secretsmanager-controller.v1.0.4
        version: 1.0.4
      - name: ack-secretsmanager-controller.v1.0.3
        version: 1.0.3
      - name: ack-secretsmanager-controller.v1.0.1
        version: 1.0.1
      - name: ack-secretsmanager-controller.v1.0.0
        version: 1.0.0
      - name: ack-secretsmanager-controller.v0.0.11
        version: 0.0.11
      - name: ack-secretsmanager-controller.v0.0.10
        version: 0.0.10
      - name: ack-secretsmanager-controller.v0.0.9
        version: 0.0.9
      - name: ack-secretsmanager-controller.v0.0.8
        version: 0.0.8
      - name: ack-secretsmanager-controller.v0.0.7
        version: 0.0.7
      - name: ack-secretsmanager-controller.v0.0.2
        version: 0.0.2
      - name: ack-secretsmanager-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-secretsmanager-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Skupper Project
      provider-url: https://skupper.io
    name: skupper-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: alpha
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1
    - currentCSV: skupper-operator.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:e5f8b2ddf378cf3e40f4c7b7ec8482eb3321947cd46481c868d727932c449d78
          createdAt: "2024-02-26T18:22:07Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/flow-collector@sha256:3870c5bc89e623b7cebe21856bfefc22de76313705efa0ec551a5963789fff3b
        - quay.io/skupper/service-controller@sha256:345edf2d9d72b5a97bcce0e8cea8cda82d120f7bf83756d73f9ac114c2fcced8
        - quay.io/skupper/site-controller@sha256:e5f8b2ddf378cf3e40f4c7b7ec8482eb3321947cd46481c868d727932c449d78
        - quay.io/skupper/skupper-router@sha256:bf8d5955ce4e406275a4934278efe51c1af9a1a269a70e8fe642b7d94d80cb81
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:3a96ab2db995d24a9ca064b5566821828d6e73ea20df77c9932d8972cb8e5780
        - quay.io/openshift/origin-oauth-proxy@sha256:a7dff785d821acc4b972d94964947713fade45f007dedb5deee17a2869bf5d24
        - quay.io/prometheus/prometheus@sha256:d2ab0a27783fd4ad96a8853e2847b99a0be0043687b8a5d1ebfb2dd3fa4fd1b8
        - quay.io/skupper/config-sync@sha256:659fe28d1df7c99bba3bb854b1e9991c715ae4de99d91c88d5db5e4f9ef4c852
        version: 1.6.0
      entries:
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.6
    - currentCSV: skupper-operator.v1.7.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:4809db7263d77a95797061798e910f1bdbb5d5fe2db2bb3c743b97f5d0c7b3af
          createdAt: "2024-06-12T14:36:59Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/config-sync@sha256:a884b26a32179af5a2bfa85118bf873852eec6e2930e92da778b57506c0a0880
        - quay.io/skupper/flow-collector@sha256:bf646b0cb75e1c29bbe0261aa9943e06d33118f5e6a5ccb7503c60c974167692
        - quay.io/skupper/service-controller@sha256:624e88e695297df28e485db7e802945ad1978ac6b0c9e9edca8b5e6013af8991
        - quay.io/skupper/site-controller@sha256:4809db7263d77a95797061798e910f1bdbb5d5fe2db2bb3c743b97f5d0c7b3af
        - quay.io/skupper/skupper-router@sha256:5eb258a0927e7706e7c035f1def2eb5211c8c33dd371fafa7210517fd894f68b
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:c2b996e8dac2f4c81a3e48e4203499f48e4e15d0692e98d61dc8c97192e0a776
        - quay.io/openshift/origin-oauth-proxy@sha256:a7dff785d821acc4b972d94964947713fade45f007dedb5deee17a2869bf5d24
        - quay.io/prometheus/prometheus@sha256:d2ab0a27783fd4ad96a8853e2847b99a0be0043687b8a5d1ebfb2dd3fa4fd1b8
        version: 1.7.1
      entries:
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.7
    - currentCSV: skupper-operator.v1.8.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:ffe3ea5067d350b64b69120bdf6d9e3ee9a30e8a2559b77170a10d66635623b8
          createdAt: "2025-03-27T20:11:53Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/skupper-router@sha256:7633b143f1844ee559322e4642ca80e8248a08711c8e814d489c26c39ecf9bd0
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:68eb666168d3a41cc98f91a0f2d74656af73cf76ec2cbe2cc308ae2ffab84875
        - quay.io/openshift/origin-oauth-proxy@sha256:c15baf57dbd17dcc517cd2fa2299462d62124f689d6f5a48a3c9fd154fc77ccf
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:9e96d6a585f037f60ca3d89b5efee27ec92444d353e8b289ca35b94aeed1e309
        - quay.io/skupper/flow-collector@sha256:252244ab6aaf6b80118bfc06b690d4f5e8d7829b999fca60d194a84452fee7f6
        - quay.io/skupper/service-controller@sha256:a45de211b8f8a8294a3588932a0a72766cf0d5ce64b01f4f744832c8d09aaa46
        - quay.io/skupper/site-controller@sha256:ffe3ea5067d350b64b69120bdf6d9e3ee9a30e8a2559b77170a10d66635623b8
        version: 1.8.4
      entries:
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.8
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.9
    defaultChannel: stable
    packageName: skupper-operator
    provider:
      name: Skupper Project
      url: https://skupper.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: submariner.io
      provider-url: ""
    name: submariner
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: submariner.v0.21.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Broker",
                "metadata": {
                  "name": "submariner-broker"
                },
                "spec": {
                  "components": [
                    "service-discovery",
                    "connectivity"
                  ],
                  "defaultGlobalnetClusterSize": 8192,
                  "globalnetEnabled": false
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "ServiceDiscovery",
                "metadata": {
                  "name": "servicediscovery"
                },
                "spec": {
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "clusterID": "cluster1",
                  "debug": false,
                  "globalnetEnabled": false,
                  "namespace": "submariner-operator",
                  "repository": "quay.io/submariner",
                  "version": "v0.21.2"
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Submariner",
                "metadata": {
                  "name": "submariner"
                },
                "spec": {
                  "broker": "k8s",
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "cableDriver": "libreswan",
                  "ceIPSecDebug": false,
                  "ceIPSecIKEPort": 500,
                  "ceIPSecNATTPort": 4500,
                  "ceIPSecPSK": "$(IPSEC_PSK)",
                  "clusterCIDR": "192.168.67.0/24",
                  "clusterID": "cluster1",
                  "connectionHealthCheck": {
                    "enabled": false,
                    "intervalSeconds": 1,
                    "maxPacketLossCount": 5
                  },
                  "debug": false,
                  "globalCIDR": "",
                  "namespace": "submariner-operator",
                  "natEnabled": true,
                  "repository": "quay.io/submariner",
                  "serviceCIDR": "192.168.66.0/24",
                  "serviceDiscoveryEnabled": true,
                  "version": "v0.21.2"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: $(SUBMARINER_OPERATOR_IMAGE)
          createdAt: "2025-11-18 12:44:16"
          description: Creates and manages Submariner deployments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: submariner-operator
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/submariner-io/submariner-operator
          support: Submariner
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Broker is the Schema for the brokers API.
            displayName: Submariner Broker
            kind: Broker
            name: brokers.submariner.io
            version: v1alpha1
          - description: ServiceDiscovery is the Schema for the servicediscoveries
              API.
            displayName: Service Discovery
            kind: ServiceDiscovery
            name: servicediscoveries.submariner.io
            version: v1alpha1
          - description: Submariner is the Schema for the submariners API.
            displayName: Submariner
            kind: Submariner
            name: submariners.submariner.io
            version: v1alpha1
        description: |
          [Submariner](https://submariner.io) enables direct networking between Pods and Services in different Kubernetes
          clusters. With Submariner, your applications and services can span multiple cloud providers, data centers, and regions.

          Submariner is designed to be cloud provider and network plugin (CNI) agnostic.

          Submariner consists of several main components that work in conjunction to securely connect workloads across
          multiple Kubernetes clusters, both on-premise and on public clouds:
          * [Gateway Engine](https://submariner.io/getting-started/architecture/gateway-engine/): manages the secure tunnels to other clusters.
          * [Route Agent](https://submariner.io/getting-started/architecture/route-agent/): routes cross-cluster traffic from nodes
          to the active Gateway Engine.
          * [Broker](https://submariner.io/getting-started/architecture/broker/): facilitates the exchange of metadata between Gateway
          Engines enabling them to discover one another.

          Submariner has optional components that provide additional functionality:
          * [Globalnet Controller](https://submariner.io/getting-started/architecture/globalnet/): handles overlapping CIDRs across clusters.
          * [Service Discovery](https://submariner.io/getting-started/architecture/service-discovery/): provides DNS discovery of services
          across clusters.

          ### Prerequisites
          Submariner has a few requirements to get started, all are documented [here](https://submariner.io/getting-started/quickstart/kind/#prerequisites).

          If running on an OpenShift cluster, perform the following steps to bind the Submariner service accounts to the **privileged** SCC.

          ```shell
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-gateway
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-routeagent
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-globalnet
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-lighthouse-coredns
          ```

          ### Deployment
          Submariner provides an [Operator](https://github.com/submariner-io/submariner-operator) for easy API-based
          installation and management.
          A command line utility, [subctl](https://github.com/submariner-io/submariner-operator/releases), wraps the
          Operator to aid users with manual deployments and easy experimentation.
          subctl greatly simplifies the deployment of Submariner, and is therefore the recommended deployment method.
          For complete information about subctl, please refer to [this page](https://submariner.io/operations/deployment/subctl).
          In addition to Operator and subctl, Submariner also provides [Helm Charts](https://submariner.io/operations/deployment/helm).

          On the broker cluster:
          1. Create the broker namespace called `submariner-k8s-broker`.
          2. Apply the broker RBAC definitions:

              ```shell
              git clone --depth 1 --single-branch --branch release-0.21 https://github.com/submariner-io/submariner-operator
              kubectl apply -k submariner-operator/config/broker -n submariner-k8s-broker
              ```

          3. Install the Submariner Operator from the catalog.
          4. Create a new `Broker` custom resource named **submariner-broker**.

          On connected clusters:
          1. Install the Submariner Operator from the catalog.
          2. Create a new `Submariner` custom resource named **submariner**.

          The following values can be specified for the **Broker** CR:
          * **defaultCustomDomains**: List of domains to use for multicluster service discovery.
          * **defaultGlobalnetClusterSize**: Default cluster size for GlobalCIDR allocated to each cluster (amount of global IPs).
          * **globalnetEnabled**: Enable support for Overlapping CIDRs in connecting clusters (default disabled).
          * **globalnetCIDRRange**: GlobalCIDR supernet range for allocating GlobalCIDRs to each cluster.
          * **components**: List of components to be installed [service-discovery, connectivity].

          The following values can be specified for the **Submariner** CR:
          * **namespace**: The namespace to install in.
          * **serviceCIDR**: The service CIDR.
          * **clusterCIDR**: The cluster CIDR.
          * **clusterID**: The cluster ID used to identify the tunnels.
          * **colorCodes**: The color code(s) for the cluster.
          * **debug**: *'true'* to enable operator debugging information - verbose logging.
          * **natEnabled**: *'true'* if there is NAT between clusters. Typically *'true'* in public cloud or mixed on-prem/public cloud environments and *'false'* when all clusters are on-prem.
          * **broker**: This must be *k8s* currently.
          * **brokerK8sApiServer**: The broker API server URL.
              To retrieve it run the following command on the broker cluster:

              `kubectl -n default get endpoints kubernetes -o
              jsonpath="{.subsets[0].addresses[0].ip}:{.subsets[0].ports[?(@.name=='https')].port}"`

          * **brokerK8sApiServerToken**: The broker API server token.
              To retrieve the token run the following command on the broker cluster, assuming the broker is running in the
              *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data.token != null)] | .[0].data.token' | base64 --decode`

          * **brokerK8sRemoteNamespace**: The broker namespace.
          * **brokerK8sCA**: The broker certificate authority.
              To retrieve the broker CA run the following command on the broker cluster, assuming the broker is running in
              the *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data."ca.crt" != null)] | .[0].data."ca.crt"' | base64 --decode`

          * **ceIPSecPSK**: The IPsec Pre-Shared Key which must be identical in all route agents across the cluster.
              To generate a unique PSK run the following command on your machine:

              `dd if=/dev/urandom count=64 bs=8 | LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 64 | head -n 1`

          * **ceIPSecDebug**: *'true'* to enable logging IPsec debugging information - verbose logging from the IPsec daemon.
          * **ceIPSecIKEPort**: The IPsec IKE port (500 usually).
          * **ceIPSecNATTPort**: The IPsec NAT traversal port (4500 usually).
          * **repository**: The container repository to use.
          * **version**: The container version to use.
          * **imageOverrides**: A string map that overrides the images by defining a path for each component.
                                This field is meant to be used by CI, development or testing.

            **example:**

            ```yaml
            imageOverrides:
              submariner-route-agent=my_repo/my_custom_image:my_tag
              submariner-globalnet=my_repo/my_custom_image:my_tag
            ```
        displayName: Submariner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multi-cluster
        - ipsec
        - tunnel
        - submariner-operator
        links:
        - name: Website
          url: https://submariner.io
        - name: GitHub
          url: https://github.com/submariner-io
        - name: Slack
          url: https://kubernetes.slack.com/archives/C010RJV694M
        - name: YouTube
          url: https://www.youtube.com/channel/UCZ3brSgl2v4boglZoeChClQ/videos
        - name: Twitter
          url: https://twitter.com/submarinerio
        maintainers:
        - email: submariner-dev@googlegroups.com
          name: Submariner project
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: submariner.io
        relatedImages:
        - registry.redhat.io/rhacm2/lighthouse-coredns-rhel9@sha256:37fb020f4e261f01205d9937375958f9ae679dcbae6d6f44a6a3b037ca37daf5
        - registry.redhat.io/rhacm2/nettest-rhel9@sha256:216411b2b30bcbd993553d1e6e801aee2a8d059ff77a2daf34d7f89e2897a87a
        - registry.redhat.io/rhacm2/submariner-gateway-rhel9@sha256:86eb47f7db45c51fc334e12a95ccbcc955d36cff55d302e9b835df0198881ed6
        - registry.redhat.io/rhacm2/submariner-globalnet-rhel9@sha256:f8223f48bca9166c8be441158c8eeffbcf6f4dff55b3bb47c05edfcc001569e8
        - registry.redhat.io/rhacm2/submariner-rhel9-operator@sha256:c18f75ecce7a2ff854ce438110c0441d7ca94c92fd0f6544694921f28d9ae815
        - registry.redhat.io/rhacm2/submariner-route-agent-rhel9@sha256:9d57f677f46236a94987223783d88a61101e8eb44bdb72420c1480fa8f39fd67
        - registry.redhat.io/rhacm2/submariner-operator-bundle@sha256:bee92e4e7d305ab6f48d4a06fa7130f59ceebd004bbe802cd41a1eb4ffb98aee
        - registry.redhat.io/rhacm2/lighthouse-agent-rhel9@sha256:b3d220c9f8dd7ce3f4a2a01365ead67d8306a677e4ed292ad075ae81b90939dd
        version: 0.21.2
      entries:
      - name: submariner.v0.21.2
        version: 0.21.2
      - name: submariner.v0.21.0
        version: 0.21.0
      name: stable-0.21
    - currentCSV: submariner.v0.22.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Broker",
                "metadata": {
                  "name": "submariner-broker"
                },
                "spec": {
                  "components": [
                    "service-discovery",
                    "connectivity"
                  ],
                  "defaultGlobalnetClusterSize": 8192,
                  "globalnetEnabled": false
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "ServiceDiscovery",
                "metadata": {
                  "name": "servicediscovery"
                },
                "spec": {
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "clusterID": "cluster1",
                  "debug": false,
                  "globalnetEnabled": false,
                  "namespace": "submariner-operator",
                  "repository": "quay.io/submariner",
                  "version": "v0.22.0"
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Submariner",
                "metadata": {
                  "name": "submariner"
                },
                "spec": {
                  "broker": "k8s",
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "cableDriver": "libreswan",
                  "ceIPSecDebug": false,
                  "ceIPSecIKEPort": 500,
                  "ceIPSecNATTPort": 4500,
                  "ceIPSecPSK": "$(IPSEC_PSK)",
                  "clusterCIDR": "192.168.67.0/24",
                  "clusterID": "cluster1",
                  "connectionHealthCheck": {
                    "enabled": false,
                    "intervalSeconds": 1,
                    "maxPacketLossCount": 5
                  },
                  "debug": false,
                  "globalCIDR": "",
                  "namespace": "submariner-operator",
                  "natEnabled": true,
                  "repository": "quay.io/submariner",
                  "serviceCIDR": "192.168.66.0/24",
                  "serviceDiscoveryEnabled": true,
                  "version": "v0.22.0"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: $(SUBMARINER_OPERATOR_IMAGE)
          createdAt: "2025-12-04 09:45:04"
          description: Creates and manages Submariner deployments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: submariner-operator
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/submariner-io/submariner-operator
          support: Submariner
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Broker is the Schema for the brokers API.
            displayName: Submariner Broker
            kind: Broker
            name: brokers.submariner.io
            version: v1alpha1
          - description: ServiceDiscovery is the Schema for the servicediscoveries
              API.
            displayName: Service Discovery
            kind: ServiceDiscovery
            name: servicediscoveries.submariner.io
            version: v1alpha1
          - description: Submariner is the Schema for the submariners API.
            displayName: Submariner
            kind: Submariner
            name: submariners.submariner.io
            version: v1alpha1
        description: |
          [Submariner](https://submariner.io) enables direct networking between Pods and Services in different Kubernetes
          clusters. With Submariner, your applications and services can span multiple cloud providers, data centers, and regions.

          Submariner is designed to be cloud provider and network plugin (CNI) agnostic.

          Submariner consists of several main components that work in conjunction to securely connect workloads across
          multiple Kubernetes clusters, both on-premise and on public clouds:
          * [Gateway Engine](https://submariner.io/getting-started/architecture/gateway-engine/): manages the secure tunnels to other clusters.
          * [Route Agent](https://submariner.io/getting-started/architecture/route-agent/): routes cross-cluster traffic from nodes
          to the active Gateway Engine.
          * [Broker](https://submariner.io/getting-started/architecture/broker/): facilitates the exchange of metadata between Gateway
          Engines enabling them to discover one another.

          Submariner has optional components that provide additional functionality:
          * [Globalnet Controller](https://submariner.io/getting-started/architecture/globalnet/): handles overlapping CIDRs across clusters.
          * [Service Discovery](https://submariner.io/getting-started/architecture/service-discovery/): provides DNS discovery of services
          across clusters.

          ### Prerequisites
          Submariner has a few requirements to get started, all are documented [here](https://submariner.io/getting-started/quickstart/kind/#prerequisites).

          If running on an OpenShift cluster, perform the following steps to bind the Submariner service accounts to the **privileged** SCC.

          ```shell
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-gateway
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-routeagent
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-globalnet
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-lighthouse-coredns
          ```

          ### Deployment
          Submariner provides an [Operator](https://github.com/submariner-io/submariner-operator) for easy API-based
          installation and management.
          A command line utility, [subctl](https://github.com/submariner-io/submariner-operator/releases), wraps the
          Operator to aid users with manual deployments and easy experimentation.
          subctl greatly simplifies the deployment of Submariner, and is therefore the recommended deployment method.
          For complete information about subctl, please refer to [this page](https://submariner.io/operations/deployment/subctl).
          In addition to Operator and subctl, Submariner also provides [Helm Charts](https://submariner.io/operations/deployment/helm).

          On the broker cluster:
          1. Create the broker namespace called `submariner-k8s-broker`.
          2. Apply the broker RBAC definitions:

              ```shell
              git clone --depth 1 --single-branch --branch release-0.22 https://github.com/submariner-io/submariner-operator
              kubectl apply -k submariner-operator/config/broker -n submariner-k8s-broker
              ```

          3. Install the Submariner Operator from the catalog.
          4. Create a new `Broker` custom resource named **submariner-broker**.

          On connected clusters:
          1. Install the Submariner Operator from the catalog.
          2. Create a new `Submariner` custom resource named **submariner**.

          The following values can be specified for the **Broker** CR:
          * **defaultCustomDomains**: List of domains to use for multicluster service discovery.
          * **defaultGlobalnetClusterSize**: Default cluster size for GlobalCIDR allocated to each cluster (amount of global IPs).
          * **globalnetEnabled**: Enable support for Overlapping CIDRs in connecting clusters (default disabled).
          * **globalnetCIDRRange**: GlobalCIDR supernet range for allocating GlobalCIDRs to each cluster.
          * **components**: List of components to be installed [service-discovery, connectivity].

          The following values can be specified for the **Submariner** CR:
          * **namespace**: The namespace to install in.
          * **serviceCIDR**: The service CIDR.
          * **clusterCIDR**: The cluster CIDR.
          * **clusterID**: The cluster ID used to identify the tunnels.
          * **colorCodes**: The color code(s) for the cluster.
          * **debug**: *'true'* to enable operator debugging information - verbose logging.
          * **natEnabled**: *'true'* if there is NAT between clusters. Typically *'true'* in public cloud or mixed on-prem/public cloud environments and *'false'* when all clusters are on-prem.
          * **broker**: This must be *k8s* currently.
          * **brokerK8sApiServer**: The broker API server URL.
              To retrieve it run the following command on the broker cluster:

              `kubectl -n default get endpoints kubernetes -o
              jsonpath="{.subsets[0].addresses[0].ip}:{.subsets[0].ports[?(@.name=='https')].port}"`

          * **brokerK8sApiServerToken**: The broker API server token.
              To retrieve the token run the following command on the broker cluster, assuming the broker is running in the
              *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data.token != null)] | .[0].data.token' | base64 --decode`

          * **brokerK8sRemoteNamespace**: The broker namespace.
          * **brokerK8sCA**: The broker certificate authority.
              To retrieve the broker CA run the following command on the broker cluster, assuming the broker is running in
              the *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data."ca.crt" != null)] | .[0].data."ca.crt"' | base64 --decode`

          * **ceIPSecPSK**: The IPsec Pre-Shared Key which must be identical in all route agents across the cluster.
              To generate a unique PSK run the following command on your machine:

              `dd if=/dev/urandom count=64 bs=8 | LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 64 | head -n 1`

          * **ceIPSecDebug**: *'true'* to enable logging IPsec debugging information - verbose logging from the IPsec daemon.
          * **ceIPSecIKEPort**: The IPsec IKE port (500 usually).
          * **ceIPSecNATTPort**: The IPsec NAT traversal port (4500 usually).
          * **repository**: The container repository to use.
          * **version**: The container version to use.
          * **imageOverrides**: A string map that overrides the images by defining a path for each component.
                                This field is meant to be used by CI, development or testing.

            **example:**

            ```yaml
            imageOverrides:
              submariner-route-agent=my_repo/my_custom_image:my_tag
              submariner-globalnet=my_repo/my_custom_image:my_tag
            ```
        displayName: Submariner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multi-cluster
        - ipsec
        - tunnel
        - submariner-operator
        links:
        - name: Website
          url: https://submariner.io
        - name: GitHub
          url: https://github.com/submariner-io
        - name: Slack
          url: https://kubernetes.slack.com/archives/C010RJV694M
        - name: YouTube
          url: https://www.youtube.com/channel/UCZ3brSgl2v4boglZoeChClQ/videos
        - name: Twitter
          url: https://twitter.com/submarinerio
        maintainers:
        - email: submariner-dev@googlegroups.com
          name: Submariner project
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: submariner.io
        relatedImages:
        - registry.redhat.io/rhacm2/nettest-rhel9@sha256:81fd7584951aaf7bcb86d4038089675e3ec4da3791b2a49fe73ae55f217f4303
        - registry.redhat.io/rhacm2/submariner-gateway-rhel9@sha256:1112c506ac82bbd14bf970a859690529b2165945c337b5da04a2e963bb7f6a77
        - registry.redhat.io/rhacm2/submariner-globalnet-rhel9@sha256:ef127d44c1bfa39e2e301eca2a1de736df43285b66e3b766860f372fd2cfb591
        - registry.redhat.io/rhacm2/submariner-rhel9-operator@sha256:3f71495eab9e2f82f74a21df6143c799bfb8a0038aef4e97b766a498bb535c16
        - registry.redhat.io/rhacm2/submariner-route-agent-rhel9@sha256:096c3fa7333d2cca1984d2852af84ca6735de3ca6fabcdd1aff25fee372acf98
        - registry.redhat.io/rhacm2/submariner-operator-bundle@sha256:bb851aac8a0b44e3322da36c4349723e564ff8ce489210859210eddcb8f3c425
        - registry.redhat.io/rhacm2/lighthouse-agent-rhel9@sha256:5ee9a8aff7bd566cc4633c5191c40d7370349abdbfe19ac6e0588956f879c0c8
        - registry.redhat.io/rhacm2/lighthouse-coredns-rhel9@sha256:cd29afa47105e0b49b0f640651c16a73d1190c84fb28aa6feee75d5e89b40b2c
        version: 0.22.0
      entries:
      - name: submariner.v0.22.0
        version: 0.22.0
      name: stable-0.22
    defaultChannel: stable-0.22
    packageName: submariner
    provider:
      name: submariner.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Instana
      provider-url: ""
    name: instana-agent-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: instana-agent-operator.v2.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "instana.io/v1",
                "kind": "InstanaAgent",
                "metadata": {
                  "name": "instana-agent",
                  "namespace": "instana-agent"
                },
                "spec": {
                  "agent": {
                    "configuration_yaml": "# You can leave this empty, or use this to configure your instana agent.\n# See https://github.com/instana/instana-agent-operator/blob/main/config/samples/instana_v1_extended_instanaagent.yaml for the extended version.\n",
                    "endpointHost": "ingress-red-saas.instana.io",
                    "endpointPort": "443",
                    "env": {},
                    "key": "replace-key"
                  },
                  "cluster": {
                    "name": "my-cluster"
                  },
                  "opentelemetry": {
                    "grpc": {
                      "enabled": true
                    },
                    "http": {
                      "enabled": true
                    }
                  },
                  "zone": {
                    "name": "edited-zone"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring,Logging & Tracing,OpenShift Optional
          certified: "false"
          containerImage: icr.io/instana/instana-agent-operator@sha256:c81463e192b47a673797e762c87587bf6646b3d6b48b628236e9fdd6337f6a9b
          description: Fully automated Application Performance Monitoring (APM) for
            microservices.
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/instana/instana-agent-operator
          support: Instana
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InstanaAgent is the Schema for the agents API
            displayName: Instana Agent
            kind: InstanaAgent
            name: agents.instana.io
            version: v1
          - description: InstanaAgentRemote is the Schema for the agents API
            displayName: Instana Agent Remote
            kind: InstanaAgentRemote
            name: agentsremote.instana.io
            version: v1
        description: |
          # Instana

          Instana is an [APM solution](https://www.instana.com/product-overview/) built for microservices that enables IT Ops to build applications faster and deliver higher quality services by automating monitoring, tracing and root cause analysis. The solution is optimized for [Kubernetes](https://www.instana.com/automatic-kubernetes-monitoring/) and [OpenShift](https://www.instana.com/blog/automatic-root-cause-analysis-for-openshift-applications/).

          ## Instana Agent Operator

          This is the Kubernetes Operator for installing the Instana Agent on Kubernetes or OpenShift.

          ## Prerequisites for OpenShift

          Before the agent will be able to run in OpenShift, you need to perform a couple of extra configuration steps.

          You need to set up a project for the Instana Agent and configure it's permissions.

          The project you create here needs to be the namespace where you create the Instana Agent custom resource that the operator will use to deploy the agent.

          For example, create the `instana-agent` project:

              oc new-project instana-agent

          Then, ensure the `instana-agent` service account is in the privileged security context:

              oc adm policy add-scc-to-user privileged -z instana-agent

          The `instana-agent-remote` service account must be allowed to use any userid:

              oc adm policy add-scc-to-user anyuid -z instana-agent-remote -n instana-agent

          This service account will be created by the operator.

          Now you can proceed with installing the operator for the Instana agent.

          ## Installation and Configuration

          First, install this operator from [OperatorHub.io](https://operatorhub.io/), [OpenShift Container Platform](https://www.openshift.com/), or [OKD](https://www.okd.io/).

          Second, create a custom resource with the agent configuration in the target namespace (for now, this MUST always be the `instana-agent` namespace). The operator will pick up the custom resource and install the Instana agent accordingly.

          The following is a minimal template of the custom resource:

          ```yaml
          apiVersion: instana.io/v1
          kind: InstanaAgent
          metadata:
            name: instana-agent
            namespace: instana-agent
          spec:
            zone:
              name: my-zone # (optional) name of the zone of the host
            cluster:
              name: replace-me # replace with the name of your Kubernetes cluster
            agent:
              key: replace-me # replace with your Instana agent key
              endpointHost: ingress-red-saas.instana.io # the monitoring ingress endpoint
              endpointPort: "443" # the monitoring ingress endpoint port, wrapped in quotes
              env:
                INSTANA_AGENT_TAGS: example
              configuration_yaml: |
                # You can leave this empty, or use this to configure your instana agent.
                # See https://ibm.biz/monitoring-k8s
          ```

          Save the template in a file `instana-agent.yaml` and edit the following values:

          * If your target namespace is not `instana-agent`, replace the `namespace:` accordingly.
          * `agent.key` must be set with your Instana agent key.
          * `agent.endpointHost` must be set with the monitoring ingress endpoint, generally either `saas-us-west-2.instana.io` or `saas-eu-west-1.instana.io`.
          * `agent.endpointPort` must be set with the monitoring ingress port, generally "443" (wrapped in quotes).
          * `zone.name` should be set with the name of the Kubernetes cluster that is be displayed in Instana.

          For advanced configuration, you can edit the contents of the `configuration.yaml` file. View documentation [here](https://ibm.biz/monitoring-k8s).

          Apply the custom resource with `kubectl apply -f instana-agent.yaml`. After some time, you should see `instana-agent` Pods being created on each node of your cluster, and your cluster should show on the infrastructure map on your Instana Web interface.

          In addition to the InstanaAgent custom resource, a remote agent can be deployed. This agent will not monitor workload running inside the cluster, but can deploy a single replica of an agent which can get an independent configuration for running remote monitoring for certain sensors.

          ```yaml
          apiVersion: instana.io/v1
          kind: InstanaAgentRemote
          metadata:
            name: remote-agent
            namespace: "instana-agent"
          spec:
            zone:
              name: edited-zone # name of the zone of the host
            hostname:
              name: use-custom-hostname-for-remote-agent # (optional) give your remote agent pod a custom hostname
            agent:
              key: replace-key # replace with your Instana agent key
              endpointHost: ingress-red-saas.instana.io
              endpointPort: "443"
              env: {}
              configuration_yaml: |
                # You can leave this empty, or use this to configure your instana agent.
                # See https://github.com/instana/instana-agent-operator/blob/main/config/samples/instana_v1_extended_instanaagent.yaml for the extended version.
          ```

          ## Uninstalling

          In order to uninstall the Instana agent, simply remove the custom resource with `kubectl delete -f instana-agent.yaml`.

          ## Source Code

          The Instana agent operator is an open source project hosted on [https://github.com/instana/instana-agent-operator](https://github.com/instana/instana-agent-operator/).
        displayName: Instana Agent Operator
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - APM
        - Instana
        links:
        - name: GitHub Repository
          url: https://github.com/instana/instana-agent-operator
        maintainers:
        - email: support@instana.com
          name: Instana
        maturity: stable
        minKubeVersion: 1.11.0
        provider:
          name: Instana
        relatedImages:
        - icr.io/instana/agent@sha256:cafef53efc0baa0e99c3a7fef619d3d8f0311e8ca38c141052c98d9a33ba4f1c
        - icr.io/instana/instana-agent-operator@sha256:c81463e192b47a673797e762c87587bf6646b3d6b48b628236e9fdd6337f6a9b
        - registry.connect.redhat.com/instana/instana-agent-operator-bundle@sha256:18267a5e3a10369ddc462f52edf50ff20023ae5f123b867648fb53383d525a8e
        version: 2.2.4
      entries:
      - name: instana-agent-operator.v2.2.4
        version: 2.2.4
      - name: instana-agent-operator.v2.2.2
        version: 2.2.2
      - name: instana-agent-operator.v2.2.1
        version: 2.2.1
      - name: instana-agent-operator.v2.2.0
        version: 2.2.0
      - name: instana-agent-operator.v2.1.36
        version: 2.1.36
      - name: instana-agent-operator.v2.1.35
        version: 2.1.35
      - name: instana-agent-operator.v2.1.34
        version: 2.1.34
      - name: instana-agent-operator.v2.1.33
        version: 2.1.33
      - name: instana-agent-operator.v2.1.32
        version: 2.1.32
      - name: instana-agent-operator.v2.1.31
        version: 2.1.31
      - name: instana-agent-operator.v2.1.30
        version: 2.1.30
      - name: instana-agent-operator.v2.1.29
        version: 2.1.29
      - name: instana-agent-operator.v2.1.28
        version: 2.1.28
      - name: instana-agent-operator.v2.1.27
        version: 2.1.27
      - name: instana-agent-operator.v2.1.25
        version: 2.1.25
      - name: instana-agent-operator.v2.1.24
        version: 2.1.24
      - name: instana-agent-operator.v2.1.23
        version: 2.1.23
      - name: instana-agent-operator.v2.1.22
        version: 2.1.22
      - name: instana-agent-operator.v2.1.21
        version: 2.1.21
      - name: instana-agent-operator.v2.1.20
        version: 2.1.20
      - name: instana-agent-operator.v2.1.19
        version: 2.1.19
      - name: instana-agent-operator.v2.1.18
        version: 2.1.18
      - name: instana-agent-operator.v2.1.17
        version: 2.1.17
      - name: instana-agent-operator.v2.1.16
        version: 2.1.16
      - name: instana-agent-operator.v2.1.15
        version: 2.1.15
      - name: instana-agent-operator.v2.1.14
        version: 2.1.14
      - name: instana-agent-operator.v2.1.13
        version: 2.1.13
      - name: instana-agent-operator.v2.1.12
        version: 2.1.12
      - name: instana-agent-operator.v2.1.11
        version: 2.1.11
      - name: instana-agent-operator.v2.1.10
        version: 2.1.10
      - name: instana-agent-operator.v2.1.9
        version: 2.1.9
      - name: instana-agent-operator.v2.1.8
        version: 2.1.8
      - name: instana-agent-operator.v2.1.7
        version: 2.1.7
      - name: instana-agent-operator.v2.1.6
        version: 2.1.6
      - name: instana-agent-operator.v2.1.5
        version: 2.1.5
      - name: instana-agent-operator.v2.1.4
        version: 2.1.4
      - name: instana-agent-operator.v2.1.3
        version: 2.1.3
      - name: instana-agent-operator.v2.1.2
        version: 2.1.2
      - name: instana-agent-operator.v2.1.1
        version: 2.1.1
      - name: instana-agent-operator.v2.1.0
        version: 2.1.0
      - name: instana-agent-operator.v2.0.32
        version: 2.0.32
      - name: instana-agent-operator.v2.0.31
        version: 2.0.31
      - name: instana-agent-operator.v2.0.30
        version: 2.0.30
      - name: instana-agent-operator.v2.0.27
        version: 2.0.27
      - name: instana-agent-operator.v2.0.19
        version: 2.0.19
      - name: instana-agent-operator.v2.0.18
        version: 2.0.18
      - name: instana-agent-operator.v2.0.17
        version: 2.0.17
      - name: instana-agent-operator.v2.0.13
        version: 2.0.13
      - name: instana-agent-operator.v2.0.12
        version: 2.0.12
      - name: instana-agent-operator.v2.0.11
        version: 2.0.11
      - name: instana-agent-operator.v2.0.10
        version: 2.0.10
      - name: instana-agent-operator.v2.0.9
        version: 2.0.9
      - name: instana-agent-operator.v2.0.8
        version: 2.0.8
      - name: instana-agent-operator.v2.0.7
        version: 2.0.7
      - name: instana-agent-operator.v2.0.5
        version: 2.0.5
      - name: instana-agent-operator.v2.0.4
        version: 2.0.4
      name: stable
    defaultChannel: stable
    packageName: instana-agent-operator
    provider:
      name: Instana
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: The Jumpstarter Community
      provider-url: https://jumpstarter.dev
    name: jumpstarter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jumpstarter-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "Client",
                "metadata": {
                  "labels": {
                    "type": "developer"
                  },
                  "name": "client-sample"
                },
                "spec": {
                  "username": "keycloak:user-name-in-keycloak"
                }
              },
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "Exporter",
                "metadata": {
                  "labels": {
                    "type": "nxp-imx8mm-evk"
                  },
                  "name": "exporter-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "ExporterAccessPolicy",
                "metadata": {
                  "name": "exporteraccesspolicy-sample"
                },
                "spec": {
                  "exporterSelector": {
                    "matchLabels": {
                      "lab": "jumpstarter"
                    }
                  },
                  "policies": [
                    {
                      "from": [
                        {
                          "clientSelector": {
                            "matchLabels": {
                              "team": "platform"
                            }
                          }
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "Lease",
                "metadata": {
                  "name": "lease-sample"
                },
                "spec": {
                  "clientRef": {
                    "name": "client-sample"
                  },
                  "duration": "1h",
                  "selector": {
                    "matchLabels": {
                      "board": "rcar-s4"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.jumpstarter.dev/v1alpha1",
                "kind": "Jumpstarter",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "jumpstarter-operator"
                  },
                  "name": "jumpstarter-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery
          com.redhat.openshift.versions: v4.18-v4.21
          containerImage: quay.io/jumpstarter-dev/jumpstarter-operator:latest
          createdAt: "2025-11-28T14:46:02Z"
          description: Jumpstarter is a cloud-native framework for Hardware-in-the-Loop
            (HIL) testing and development
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/jumpstarter-dev/jumpstarter-controller
          support: The Jumpstarter Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |
              Client is the schema for the Clients API. Clients represent a user that can access the Jumpstarter Controller. Clients can be associated to external identity OIDC providers by providing Username, i.e. Spec.Username: "kc:user-name-in-keycloak"
            displayName: Client
            kind: Client
            name: clients.jumpstarter.dev
            version: v1alpha1
          - description: Exporter access policies define how exporters can be accessed
              by clients.
            displayName: ExporterAccessPolicy
            kind: ExporterAccessPolicy
            name: exporteraccesspolicies.jumpstarter.dev
            version: v1alpha1
          - description: |
              Exporters represent the services that connect to the physical or virtual devices. They are responsible for providing the access to the devices and for the communication with the devices. A jumpstarter exporter service should be ran on a linux machine, or a pod, with the exporter credentials and the right configuration for this resource to become online. For more information see the Jumpstarter documentation: https://jumpstarter.dev/main/introduction/exporters.html#exporters
            displayName: Exporter
            kind: Exporter
            name: exporters.jumpstarter.dev
            version: v1alpha1
          - description: Jumpstarter is the Schema for the jumpstarters API.
            displayName: Jumpstarter
            kind: Jumpstarter
            name: jumpstarters.operator.jumpstarter.dev
            version: v1alpha1
          - description: |
              Lease is the schema for the Leases API. Leases represent a request for a specific exporter by a client. The lease is acquired by the client and the exporter is assigned to the lease. The lease is released by the client when the client is done with the exporter. For more information see the Jumpstarter documentation:
                https://jumpstarter.dev/main/reference/man-pages/jmp.html#jmp-create-lease
                https://jumpstarter.dev/main/reference/man-pages/jmp.html#jmp-shell
            displayName: Lease
            kind: Lease
            name: leases.jumpstarter.dev
            version: v1alpha1
        description: Jumpstarter is a cloud-native framework for Hardware-in-the-Loop
          (HIL) automation that bridges the gap between embedded development workflows
          and real-world deployment environments. This operator installs and manages
          the Jumpstarter Controller, which acts as the central brain for your testing
          infrastructure. It orchestrates secure, shared access to physical hardware
          and virtual devices (represented as "exporters") directly from your Kubernetes
          or OpenShift cluster.
        displayName: Jumpstarter Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hil
        - hardware-in-the-loop
        - hardware
        - device
        - embedded
        - testing
        - framework
        links:
        - name: Jumpstarter Operator
          url: https://jumpstarter.dev/main/getting-started/installation/service/index.html
        maintainers:
        - email: majopela@redhat.com
          name: Miguel Angel Ajo
        - email: bzlotnik@redhat.com
          name: Benny Zlotnik
        - email: bkhizgiy@redhat.com
          name: Bella Khizgiyaev
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: The Jumpstarter Community
          url: https://jumpstarter.dev
        relatedImages:
        - quay.io/jumpstarter-dev/jumpstarter-operator:latest
        - quay.io/community-operator-pipeline-prod/jumpstarter-operator:0.8.0
        version: 0.8.0
      entries:
      - name: jumpstarter-operator.v0.8.0
        version: 0.8.0
      name: alpha
    defaultChannel: alpha
    packageName: jumpstarter-operator
    provider:
      name: The Jumpstarter Community
      url: https://jumpstarter.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com
    name: ibm-security-verify-access-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-security-verify-access-operator.v23.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ibm.com/v1",
                "kind": "IBMSecurityVerifyAccess",
                "metadata": {
                  "name": "isva-sample"
                },
                "spec": {
                  "image": "icr.io/isva/verify-access-wrp:10.0.5.0",
                  "instance": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: icr.io/isva/verify-access-operator:23.3.0
          createdAt: Mon Mar  20 00:59:34 UTC 2023
          description: The IBM Security Verify Access Operator manages the lifecycle
            of IBM Security Verify Access worker containers.
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/IBM-Security/verify-access-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBMSecurityVerifyAccess is the Schema for the ibmsecurityverifyaccesses
              API.
            displayName: IBMSecurity Verify Access
            kind: IBMSecurityVerifyAccess
            name: ibmsecurityverifyaccesses.ibm.com
            version: v1
        description: |+
          In a world of highly fragmented access management environments, [IBM Security Verify Access](https://www.ibm.com/au-en/products/verify-access) helps you simplify your users' access while more securely adopting web, mobile and cloud technologies. This solution helps you strike a balance between usability and security through the use of risk-based access, single sign-on, integrated access management control, identity federation and its mobile multi-factor authentication capability, IBM Verify. Take back control of your access management with IBM Security Verify Access.

          The IBM Security Verify Access operator provides lifecycle management of the lightweight containers which are used to protect an environment, namely:
          * [Web Reverse Proxy](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-web-reverse-proxy)
          * [Runtime](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-runtime)
          * [Distributed Session Cache](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-distributed-session-cache)

          The operator will manage the deployment of these lightweight IBM Security Verify Access worker containers, and also control the rolling restart of these containers when a configuration snapshot is updated.

          See the project [Readme](https://github.com/IBM-Security/verify-access-operator/blob/master/README.md) for further information and details.

        displayName: IBM Security Verify Access Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - identity and access
        - security
        links:
        - name: Verify Access Product Information
          url: https://www.ibm.com/au-en/products/verify-access
        - name: Verify Access Documentation
          url: https://www.ibm.com/docs/en/sva
        maintainers:
        - email: isamdev@au1.ibm.com
          name: Verify Access Development Team
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: IBM
          url: https://www.ibm.com
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - icr.io/isva/verify-access-operator:23.3.0
        - quay.io/openshift-community-operators/ibm-security-verify-access-operator@sha256:ec3970c7a6a5ee3ac863dfe6f16234fe19cd7ea4a541fd0cbae9a8183d0763a2
        version: 23.3.0
      entries:
      - name: ibm-security-verify-access-operator.v23.3.0
        version: 23.3.0
      - name: ibm-security-verify-access-operator.v22.10.0
        version: 22.10.0
      name: stable
    defaultChannel: stable
    packageName: ibm-security-verify-access-operator
    provider:
      name: IBM
      url: https://www.ibm.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: unsupported
      operatorframework.io/arch.ppc64le: unsupported
      operatorframework.io/arch.s390x: unsupported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: mta-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mta-operator.v6.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:f5d10cd2528bebf5094c7744e47d9de6fe827fd09024c5ffc0e1b74f1a6cc3b4
          createdAt: "2023-04-26T14:04:20Z"
          description: MTA contains tools that support the modernization and migration
            of applications to Kubernetes and OpenShift
          olm.skipRange: '>=0.0.0 <6.0.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/tackle2-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is a collection of tools that supports large-scale application modernization and migration projects to Kubernetes and OpenShift.


          Migration Toolkit for Applications allows users to maintain their portfolio of applications with a full set of metadata and to assess their suitability for modernization leveraging a questionnaire based approach.


          ### Install

          By default, MTA requires a RWX capable storage class for caching purposes, this can be disabled via the rwx_supported parameter in Tackle CR.

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:a66dd030eb99207b6aaacc6b7c7cb5182901da836ebf50373c14f8e5ecb7b642
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:f5d10cd2528bebf5094c7744e47d9de6fe827fd09024c5ffc0e1b74f1a6cc3b4
        - registry.redhat.io/mta/mta-ui-rhel8@sha256:de6cb95ce3663922ecc725b186876b043a9c7794e95510459ffbcba7d668fc26
        - registry.redhat.io/mta/mta-windup-addon-rhel8@sha256:a4200fc0a39df67eae31c53ee9ae0c05769fb410d0312ebd0bbf8bf1567b2a48
        - registry.redhat.io/rhel8/postgresql-12@sha256:3a69efa85af6a6f95665eca69085b007fa1fcb645a37f356895aeb4c9527a621
        - registry.redhat.io/mta/mta-admin-addon-rhel8@sha256:812b8dc621a06bb99cf2c59abb8257da3ceeb165c563e14d258e69803a557cc8
        - registry.redhat.io/mta/mta-hub-rhel8@sha256:c75e1d9d3307d95be392a53440d9123601a6ada3693e3f2573e03022565e4339
        - registry.redhat.io/mta/mta-operator-bundle@sha256:65c0932bfda32b1e62be9edd0f96bb4d6e41e302a2e8080fc6cc794ee5c52276
        version: 6.0.3
      entries:
      - name: mta-operator.v6.0.3
        version: 6.0.3
      - name: mta-operator.v6.0.2
        version: 6.0.2
      - name: mta-operator.v6.0.1
        version: 6.0.1
      - name: mta-operator.v6.0.0
        version: 6.0.0
      name: stable-v6.0
    - currentCSV: mta-operator.v6.1.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:6da71d4caecfbe049e63576d4325d4919002196da2e875f79703d8ff0d5a1705
          createdAt: "2023-10-26T15:29:26Z"
          description: MTA contains tools that support the modernization and migration
            of applications to Kubernetes and OpenShift
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=6.0.0 <6.1.4'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/tackle2-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is a collection of tools that supports large-scale application modernization and migration projects to Kubernetes and OpenShift.


          Migration Toolkit for Applications allows users to maintain their portfolio of applications with a full set of metadata and to assess their suitability for modernization leveraging a questionnaire based approach.


          ### Install

          By default, MTA requires a RWX capable storage class for caching purposes, this can be disabled via the rwx_supported parameter in Tackle CR.

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:6da71d4caecfbe049e63576d4325d4919002196da2e875f79703d8ff0d5a1705
        - registry.redhat.io/mta/mta-ui-rhel8@sha256:3845d6d246003ebeb49bcf1d95d6be2eb9cd05a280a5bf8320b201e878a41427
        - registry.redhat.io/mta/mta-windup-addon-rhel8@sha256:6bcaf8e8b63e169652d6568d77e91a289084e621a586105a2d429b5726569058
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/mta/mta-hub-rhel8@sha256:32624f2bddfe8b6b9c6c1c3f2be541c8c61be29680d13b6d446e8874bdf8e219
        - registry.redhat.io/mta/mta-operator-bundle@sha256:f3d585e24d65905b2e9f594dcdb67721aa95057ab7587ae531c3487aa2f94e53
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:1df881da1e20c2501caf53e1cf59b6b366281d842f0948ca5f91694ec1db829d
        version: 6.1.4
      entries:
      - name: mta-operator.v6.1.4
        version: 6.1.4
      - name: mta-operator.v6.1.3
        version: 6.1.3
      - name: mta-operator.v6.1.2
        version: 6.1.2
      - name: mta-operator.v6.1.1
        version: 6.1.1
      - name: mta-operator.v6.1.0
        version: 6.1.0
      name: stable-v6.1
    - currentCSV: mta-operator.v6.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:6938c3fc6dd8fb032e1765fc11d9586dbfd1aaba4b423b0d87da4120ee0bb60d
          createdAt: "2024-06-10T22:12:58Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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.skipRange: '>=6.0.0 <6.2.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-windup-addon-rhel9@sha256:d1f4939b92dd13c15cb7344ec47a571669f6d108dc2e7d795ce29350f2cb3838
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e52f88555004b575104691fe96f758ee5e6ec832b99107a5a18fc8379d29afda
        - registry.redhat.io/rhel8/postgresql-12@sha256:c4716bee5e2cf2e43698bc99e5aa42f16a0f2d68c1fbdcd3602696bf88e408dc
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:e59725832547e80cab58077a1b6e42c313a4057621defa841f35c0a7627f149d
        - registry.redhat.io/mta/mta-operator-bundle@sha256:a13643117c2867351718a872f7f1b2350c67855ca73a727a1dc140754ffe6589
        - registry.redhat.io/mta/mta-pathfinder-rhel9@sha256:a2a8b6d204d99494a6a005e8cb1fbd92afdc84dc01e4c1de4ad7d8798bd83741
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:6938c3fc6dd8fb032e1765fc11d9586dbfd1aaba4b423b0d87da4120ee0bb60d
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:c35f3ed429a7d351cb8c2d07600b4ad35615a5ba08e5cc9f8b9bd504aea3f7ee
        version: 6.2.3
      entries:
      - name: mta-operator.v6.2.3
        version: 6.2.3
      - name: mta-operator.v6.2.2
        version: 6.2.2
      - name: mta-operator.v6.2.1
        version: 6.2.1
      - name: mta-operator.v6.2.0
        version: 6.2.0
      name: stable-v6.2
    - currentCSV: mta-operator.v7.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:268ecf5efc51af71f9b2bc2d01b410f8cfcf81a948b82d2d476fef6c0cd3e033
          createdAt: "2024-05-10T19:37:30Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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.skipRange: '>=6.2.0 <7.0.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:18c611415589a093e16e9c2f2fba9f3c83d9514f79c8e4fde9704ef0679ea4d5
        - registry.redhat.io/mta/mta-operator-bundle@sha256:9eeb43af2bcab84f5261d1575f7c897903a7696dba011d256abffa1fe850eba2
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:0e1ec99af5666a060176adc52612f20209e3398a9a5a2aa1dcff11ef260b2006
        - registry.redhat.io/mta/mta-windup-shim-rhel9@sha256:e2ea89055936d7ad229b5e890c6ba234c6cb22d8b688515ed4d6a34848efea83
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:af879d8b9b5e396a5308fb675a1d6dba6d70151b9bdbe7829362e081a6adab1c
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:1b5e016046d93b6a2674d63f08e0a46f8050e785bd58fd94ba7a70487efe7e2a
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:d554cc36748fc05e30eb10e6fe816ff6aab2fe07b61cc60e9d93de5c3cf17748
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:268ecf5efc51af71f9b2bc2d01b410f8cfcf81a948b82d2d476fef6c0cd3e033
        - registry.redhat.io/rhel8/postgresql-12@sha256:da619f6617d99790b4fe00fdb23ab4aea0cdb0592590162d51b3ef94aca01a7b
        - registry.redhat.io/mta/mta-analyzer-lsp-rhel9@sha256:0c8f59f35a950ea8b45f16cf71362128ccc335b58a996a099384fd737dd6ff90
        version: 7.0.3
      entries:
      - name: mta-operator.v7.0.3
        version: 7.0.3
      - name: mta-operator.v7.0.2
        version: 7.0.2
      - name: mta-operator.v7.0.1
        version: 7.0.1
      - name: mta-operator.v7.0.0
        version: 7.0.0
      name: stable-v7.0
    - currentCSV: mta-operator.v7.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:08b33b44140397785f8aa1b736796e09cf6e49ac30cf7c386a2fbd8b678d47b1
          createdAt: "2024-09-16T23:45:42Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          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.skipRange: '>=6.2.0 <7.1.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:30a3b1d5a70dec74a9253ca34f18bd8f2cdfaa68b85b0b25dc395158c2596330
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:e4e70201df23c9e1168646d3c6013a8ffa22481a85b07df491f240310c13ebe1
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel8@sha256:582f28e609c1a0466d30c5586d6b6023f1b1de3c28f76cabb498322914ab24d4
        - registry.redhat.io/mta/mta-operator-bundle@sha256:6aef520983fe01351886e108d32b998b20e74116fc0280c754a914bfad03d0bf
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:ee2c8ce2af0be097353758d9ee7eaa7e6b3fcd5f2bf5e04280e450e2b619d2d8
        - registry.redhat.io/rhel8/postgresql-15@sha256:16faf1ee82382263408f713ee4002f47ff13c82d4545e8a69d5b0ebd1d289330
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:4ad19b50cdd6be21e010155f2026abf0dc865e72aac1353e35bbb5eeb8320a4e
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:16cb28d683159ba71a5d7c233404ac1d6b7a07a374b46d24effe551a13a596c3
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:08b33b44140397785f8aa1b736796e09cf6e49ac30cf7c386a2fbd8b678d47b1
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:23c97ac122eb7cd1e953df8da968da420f6db8708baf772759517aca4929748b
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ac38f1c3d34bc718928eb20743835c99783d846f63a3197d13839ea22f1634c8
        version: 7.1.1
      entries:
      - name: mta-operator.v7.1.1
        version: 7.1.1
      - name: mta-operator.v7.1.0
        version: 7.1.0
      name: stable-v7.1
    - currentCSV: mta-operator.v7.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:917d6cd534c158f6c4a7e9c83f0c66fa85ba81037c352d8a039e198581126a7f
          createdAt: "2025-06-17T16:04:15Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          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.skipRange: '>=6.2.0 <7.2.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:2dfc51d5398a90e73273b3e332f70d7ed94bac05e12b142fba22104ecc929436
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel8@sha256:c0643c05833dd1b70ed361bf56c46f56ed6536aac3106b92f0d85b83da1b9d15
        - registry.redhat.io/rhel8/postgresql-15@sha256:dd4aec2775da1cf187c0839384cb16d69268e9781d4330874bbc865f98153a7a
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:70ff3b5e429a8fe0c68752ee05c47ead885b59bf9c8d7235337801270e7fc1de
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:b10fdc78c6f453a34a3d306313dc29fcb3152688a6a1d54cd236d00d9fab88af
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:917d6cd534c158f6c4a7e9c83f0c66fa85ba81037c352d8a039e198581126a7f
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:9d6c02f6463771e747a30126de95fc0728fd95fff4ddfa6c70d828c55e0b6790
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:4cde2c2df482293bd4d6b86a344336e13d2f9f81b29323698f603e656b14b190
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:c9447659195b9eebb8f8a265fd5052ca9b2611d57080017448297a33409863c6
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:10ef4b218d603432508b5e1f3685fb32a80cbce6c327e35952cdcccb0465468b
        - registry.redhat.io/mta/mta-operator-bundle@sha256:0ed10e35f45a140e21d826bee71b3ab96e67f1b4dc8c2f7f1676380fa51b67fe
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        version: 7.2.3
      entries:
      - name: mta-operator.v7.2.3
        version: 7.2.3
      - name: mta-operator.v7.2.2
        version: 7.2.2
      - name: mta-operator.v7.2.1
        version: 7.2.1
      - name: mta-operator.v7.2.0
        version: 7.2.0
      name: stable-v7.2
    - currentCSV: mta-operator.v7.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel9-operator@sha256:6abd6541a955543207c1ff4b903928debcc89dd6ea3d7aeaa3e47465849f7b37
          createdAt: "2025-08-15T16:32:16Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=6.2.0 <7.3.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/mta/mta-operator-bundle@sha256:68953a2a721309fd103e09f3171d0c9d50020413631b575f1a44602a5d2ac855
        - registry.redhat.io/mta/mta-rhel9-operator@sha256:6abd6541a955543207c1ff4b903928debcc89dd6ea3d7aeaa3e47465849f7b37
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel9@sha256:9748d954ad8654ac203257286497ccf19cfdfa211fee40449cbe732ff48c1176
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:b2ff154a4b4ead22311005b7115c02346928b5ebf77d776ef909ad4af1f350bc
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:32328fc0459099ef1de0f92e064c15d29a46d88dfe2f54c88f822d44ab82e3f4
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:072f676323e9abcb2ff22eb5e7a70f6681e9d885d8666ddd81060fbad54c443e
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ef57a58e609e244333d35681a164a1d3bf382c0eee37d33c993b018439814198
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:a93cbb575ff59bc8015602165645204b9ca56e327308b11a3d75b651701db875
        - registry.redhat.io/rhel8/postgresql-15@sha256:854710b428c4c1132c448cbe9ad30087a8a4b3c33ae9c0c3a4de21a15c0ae642
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:6118c1db15667851f26eb2acf6060e045ed9065459e3e649bbdd0e2625d825bd
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:8ca00460b2fb64583a247f5b906c19743b7732b60ff8215f1baec12a766c61d1
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:80aa13813fe121da49e166d81d09d63749393f3375c3b96d762d0b09c6685ca9
        version: 7.3.2
      entries:
      - name: mta-operator.v7.3.2
        version: 7.3.2
      - name: mta-operator.v7.3.1
        version: 7.3.1
      - name: mta-operator.v7.3.0
        version: 7.3.0
      name: stable-v7.3
    - currentCSV: mta-operator.v8.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel9-operator@sha256:fea69ccd89a0632f2ae00b2d90b271bfd1bbcd48733f2b631e8e9b5cd0d3d4a2
          createdAt: "2025-11-19T23:58:24Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=7.3.0 <8.0.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Schema
            displayName: Schema
            kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:229197ca303eb3bd553accde1c29546916b128ffc7e43961b520c8e375e07c84
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:c97afda6c66fd862738961abd73471f1ef4546eeb2157f13da264205d25e3455
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:8d152829867909dfc98853a837ab50dbe4f09a331718010e15961e5468fc3db3
        - registry.redhat.io/mta/mta-operator-bundle@sha256:75127a29a68c19490c96b4dde9146500c38b640f4ddc1bfcb2183372f3c4ce50
        - registry.redhat.io/mta/mta-solution-server-rhel9@sha256:08161faacb63d0842e8dc4abae5922fa84c4c10dede31bbebd2f7485884644fe
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:95393ff3b7f90c2077947d46e539eefa4305d01679cab40cdc27b4a4404256d9
        - registry.redhat.io/mta/mta-rhel9-operator@sha256:fea69ccd89a0632f2ae00b2d90b271bfd1bbcd48733f2b631e8e9b5cd0d3d4a2
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel9@sha256:968075d405848a097f6ef91a2717091c96108a5a0ed8066c69a19c07e5c4ab17
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:2783f01f9c739c89dff0aa1177f9dd46340bfed269dca948529d269c9b3c37f7
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:acff26b2dc0151443b592c71065c271a2f044c985f32365b093685c5e224f3c7
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:fda12c5ebf9de14d17d5d49239cee9815352f6d7e75926f7226d9f5bb0356909
        - registry.redhat.io/mta/mta-platform-addon-rhel9@sha256:a288d5a156006695854c2e76d09dfe356a31136efb72ba4f85f24940a5aac32f
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/rhel8/postgresql-15@sha256:68fc74033591a7c7608adb438a81ffdf232f199adbc7c92df286097debd815d0
        version: 8.0.1
      entries:
      - name: mta-operator.v8.0.1
        version: 8.0.1
      - name: mta-operator.v8.0.0
        version: 8.0.0
      name: stable-v8.0
    defaultChannel: stable-v8.0
    packageName: mta-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Isovalent
      provider-url: ""
    name: cilium-enterprise
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cilium.v1.10.13-xed86eae
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{"endpointRoutes":{"enabled":true},"kubeProxyReplacement":"probe","cni":{"binPath":"/var/lib/cni/bin","confPath":"/var/run/multus/cni/net.d"},"ipam":{"prometheus":{"serviceMonitor":{"enabled":false}},"mode":"cluster-pool"},"hubble":{"tls":{"enabled":false}}}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Cilium Enterprise - eBPF-based Networking, Security, and Observability
        displayName: Cilium Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Cilium Enterprise Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Cilium Enterprise
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/cilium@sha256:6887537789603946543aaa370a3ec592287a235231bf16aa386e091823285515
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:cc1f0e6b27ccda8a843dfb7fa4a8fef052ba29716646557815677c5d1bea2a1a
        - quay.io/cilium/certgen@sha256:0c2b71bb3469990e7990e7e26243617aa344b5a69a4ce465740b8577f9d48ab9
        - quay.io/isovalent/hubble-enterprise-operator@sha256:0d5e6a5d9c07780c18e5aa81d8f1c95c399bff2d36a44fa5f61ac89a788ca83b
        - quay.io/isovalent/clustermesh-apiserver@sha256:eb3ee3d2cb07e6c5966e4bc2e50615949303be5d5128e156d5c0dbe8404dc093
        - quay.io/isovalent/hubble-enterprise-metadata@sha256:72c7aa3961f14df413569cd156820a45553bb24d393b11246a18bf8b6553e022
        - quay.io/isovalent/hubble-rbac@sha256:03f3304c157024356a6de13c3d91b4506b8e54d587920d80ebcc76cbcfeaeda6
        - quay.io/oauth2-proxy/oauth2-proxy@sha256:ecd26b74a01f2b547ddaed4d32d35f8f5e09c378d5c1fc6cfa63f0adf659ac2b
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:3dbb71004362a70683a5ee9f0916bca75c0d1c351d144677fd9d85bcb2ca8bf7
        - quay.io/cilium/startup-script@sha256:1daf817f34000399fcb5da9a94cb299e2810d2c7a52e51de22ba0d4783b6ce84
        - quay.io/isovalent/hubble-export-fluentd@sha256:05cb13f533f2c89b98a47cd58badda07add54077cd22283ca5028cb39f2e4486
        - quay.io/isovalent/hubble-export-s3@sha256:ce4f71f7f13301133b7d471b87fb81108b2c2da7fc29865ef96bc8431b2be72b
        - quay.io/isovalent/hubble-relay@sha256:9145b03acc954efde54e1ab9da878462526c5e820b83a92e32cc24291f784d33
        - quay.io/isovalent/hubble-ui-enterprise-backend@sha256:e892cba6dafcdf6704df3135a0b38d11894a5f276ace40683e74cb62b9c311d8
        - quay.io/isovalent/hubble-ui-enterprise@sha256:c9921c65892a5293a4f1bef787636d6ae58cec1af65da06862a47e3450afdc6e
        - quay.io/isovalent/operator-generic@sha256:1cc0b0d2e71564ad8759be326c66ea13b4955b9441fb67e906da534e1b38aefa
        - quay.io/cilium/cilium-etcd-operator@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/coreos/etcd@sha256:04833b601fa130512450afa45c4fe484fee1293634f34c7ddc231bd193c74017
        - quay.io/isovalent/hubble-enterprise@sha256:1e1d3e6c199546b2398f4166ff64210c04075bb407c8f07c5be8d3db08560d4a
        - quay.io/cilium/hubble-export-stdout@sha256:f1b1475a3c89950481264f5f8ca63eea3b911a45dc83fdf15122d695a0fba9b3
        version: 1.10.13+xed86eae
      entries:
      - name: cilium.v1.10.13-xed86eae
        version: 1.10.13+xed86eae
      - name: cilium.v1.10.12-xb203fae
        version: 1.10.12+xb203fae
      - name: cilium.v1.10.11-x10ae342
        version: 1.10.11+x10ae342
      name: "1.10"
    - currentCSV: cilium.v1.11.21-xd0d07b1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Cilium Enterprise - eBPF-based Networking, Security, and Observability
        displayName: Cilium Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Cilium Enterprise Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Cilium Enterprise
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/hubble-relay:v1.11.21-cee.1@sha256:5933dd1f8111d6bca0c68db9247385b5d215d5b613095bafab8244098f2c5a26
        - quay.io/isovalent/operator-generic:v1.11.21-cee.1@sha256:25b668c1febe1d1a70b63dfe926be4e55fbf77fd186e9df7581e41d7e9813469
        - quay.io/cilium/certgen:v0.1.5@sha256:0c2b71bb3469990e7990e7e26243617aa344b5a69a4ce465740b8577f9d48ab9
        - quay.io/coreos/etcd:v3.4.13@sha256:04833b601fa130512450afa45c4fe484fee1293634f34c7ddc231bd193c74017
        - cgr.dev/chainguard/oauth2-proxy:7.4.0@sha256:54857c70321004d3e0b8b8d7208ce5422c1f71c18db5be02d2543f187ea8e8e2
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:89d480ae76480829660d4cccfede74717faeb7e62a4a48b932750e41a945783d
        - quay.io/isovalent/hubble-export-stdout:v1.0.3@sha256:bef600089c1671fce11bb4bcb98b81f25e65152a1a2f13b64ea637cfc5779c11
        - quay.io/isovalent/hubble-rbac:v1.3.0@sha256:4c106dd133861a678eb24cf98b35d5023cccca0834c954c49b68514c366aedf0
        - quay.io/isovalent/hubble-ui-enterprise:v0.23.0@sha256:02635d1392cca7e09ab7797f69147880068ba7e3b0d865be97eeab33edd646a0
        - quay.io/isovalent/cilium:v1.11.21-cee.1@sha256:f41241a15cd96d26727aa1ec413ace643728ddbe42f7fb7b234dbda22bf3950b
        - quay.io/isovalent/hubble-enterprise-operator:v1.10.5@sha256:31b18a1ea7002936f04dd070549e0c9a02f8a33394666fc5b0523ab1350c6120
        - quay.io/isovalent/hubble-export-fluentd:v1.5.1@sha256:eaf42a84821509b69e2ef2b658796062e79a90e63045a98689da3da99a12e492
        - quay.io/isovalent/hubble-enterprise:v1.10.5@sha256:340700d4e28ded2aa9c50ff9f938996bb43faa84e0b2ba38ec79452648d7e5d7
        - quay.io/cilium/cilium-etcd-operator:v2.0.7@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/isovalent/clustermesh-apiserver:v1.11.21-cee.1@sha256:e16d8375ed8a1c3a872047b3aacf3469bde43552f1a51ee3e159ef2e9fea3e97
        - quay.io/isovalent/hubble-export-s3:v1.0.0@sha256:89c178c0a010166c68819ab5de32ab59b64a88aa23a05d8e4f78adb1a4b6c3d3
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:d3148bf3b9765467936ee067b25b5ef3683d3e55260f517c7fe271ac0e19cb47
        - quay.io/cilium/startup-script:62093c5c233ea914bfa26a10ba41f8780d9b737f@sha256:a1454ca1f93b69ecd2c43482c8e13dc418ae15e28a46009f5934300a20afbdba
        - quay.io/isovalent/hubble-ui-enterprise-backend:v0.23.0@sha256:2fbdad86bb5244075f31487262d790f6fa75cdd993f868b952252905c118621c
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:372511f6fa3523dadfe9128caf77520cf74ce24df4a19e1583ee197375e06014
        version: 1.11.21+xd0d07b1
      entries:
      - name: cilium.v1.11.21-xd0d07b1
        version: 1.11.21+xd0d07b1
      - name: cilium.v1.11.20-x0f6d966
        version: 1.11.20+x0f6d966
      name: "1.11"
    - currentCSV: cilium.v1.12.21-x3861686
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.12.14 <1.12.21'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/hubble-export-stdout:v1.0.3@sha256:bef600089c1671fce11bb4bcb98b81f25e65152a1a2f13b64ea637cfc5779c11
        - quay.io/cilium/certgen:v0.1.8@sha256:4a456552a5f192992a6edcec2febb1c54870d665173a33dc7d876129b199ddbd
        - quay.io/coreos/etcd:v3.5.4@sha256:795d8660c48c439a7c3764c2330ed9222ab5db5bb524d8d0607cac76f7ba82a3
        - quay.io/isovalent/hubble-enterprise-operator:v1.10.5@sha256:31b18a1ea7002936f04dd070549e0c9a02f8a33394666fc5b0523ab1350c6120
        - quay.io/isovalent/hubble-export-fluentd:v1.5.1@sha256:eaf42a84821509b69e2ef2b658796062e79a90e63045a98689da3da99a12e492
        - quay.io/isovalent/hubble-ui-enterprise:v0.28.1@sha256:11dfba0e4fcf43415aa6e8b3b6e98a5c4f468ec67b377328ad48b92037bbfbb0
        - quay.io/isovalent/hubble-rbac:v1.3.0@sha256:4c106dd133861a678eb24cf98b35d5023cccca0834c954c49b68514c366aedf0
        - quay.io/isovalent/oauth2-proxy:7.6.0@sha256:b6e40d76f0925e76f0a5b181be3f6c62728fa3e4aaef979caf9ea245f4ed03da
        - quay.io/isovalent/hubble-ui-enterprise-backend:v0.28.1@sha256:515aeb8166dd6995b04d4cd3333c94a740182943ba4e90a38871ee89c0b64e92
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:f95c9e8002d8e381d604752b1d59b75595badbdb0b11237ac1cac4ecd04f4800
        - quay.io/cilium/startup-script:62093c5c233ea914bfa26a10ba41f8780d9b737f@sha256:a1454ca1f93b69ecd2c43482c8e13dc418ae15e28a46009f5934300a20afbdba
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:71cbb44a41b60ab64c6eae99f819796868a57234a5ff210598bd23b73b3b02c7
        - quay.io/isovalent/hubble-relay:v1.12.21-cee.1@sha256:9d8dadc3f330acf0fa169c428d5fdf1d138d0294065eec5c628f6647106fe8b6
        - quay.io/isovalent/operator-generic:v1.12.21-cee.1@sha256:4e19cda799a747b69f53b5e5a860ba256399d18221d5a4bbf243142ba1c69bb8
        - quay.io/isovalent/cilium:v1.12.21-cee.1@sha256:3a462308cf12b572db987c03d190ee33691ccb04775d01beb192703a52f8d47b
        - quay.io/isovalent/hubble-export-s3:v1.0.0@sha256:89c178c0a010166c68819ab5de32ab59b64a88aa23a05d8e4f78adb1a4b6c3d3
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:a71b6fe33997db924669253992436e1e02d88769bb97376c0871848c2d330fed
        - quay.io/cilium/cilium-etcd-operator:v2.0.7@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/isovalent/clustermesh-apiserver:v1.12.21-cee.1@sha256:3f6549409966086a49e338c7829b9141a73ef2ebeebaac91db430aeb3ccd2e22
        - quay.io/isovalent/hubble-enterprise:v1.10.5@sha256:340700d4e28ded2aa9c50ff9f938996bb43faa84e0b2ba38ec79452648d7e5d7
        version: 1.12.21+x3861686
      entries:
      - name: cilium.v1.12.21-x3861686
        version: 1.12.21+x3861686
      - name: cilium.v1.12.19-xca684e0
        version: 1.12.19+xca684e0
      - name: cilium.v1.12.18-xcb1adcf
        version: 1.12.18+xcb1adcf
      - name: cilium.v1.12.17-xae21c14
        version: 1.12.17+xae21c14
      - name: cilium.v1.12.16-x38e0b62
        version: 1.12.16+x38e0b62
      - name: cilium.v1.12.15-x8ca64a3
        version: 1.12.15+x8ca64a3
      - name: cilium.v1.12.14-xc86b260
        version: 1.12.14+xc86b260
      - name: cilium.v1.12.13-x2b5cec9
        version: 1.12.13+x2b5cec9
      - name: cilium.v1.12.12-xbd7b835
        version: 1.12.12+xbd7b835
      - name: cilium.v1.12.11-xffdea76
        version: 1.12.11+xffdea76
      - name: cilium.v1.12.10-x4a0e9e7
        version: 1.12.10+x4a0e9e7
      - name: cilium.v1.12.9-x4be66e4
        version: 1.12.9+x4be66e4
      - name: cilium.v1.12.8-x87b90a9
        version: 1.12.8+x87b90a9
      - name: cilium.v1.12.7-x53a2aab
        version: 1.12.7+x53a2aab
      name: "1.12"
    - currentCSV: cilium-enterprise.v1.13.21-x96449fb
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.13.7 <1.13.21+x96449fb'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/hubble-export-fluentd:v1.11.0@sha256:50cd2e4c2d04e8befcc2ae1a1463f07cba01edb9b546fb455fe7976311165385
        - quay.io/isovalent/hubble-export-s3:v1.0.2@sha256:518daea1074d260d824c3e03a93ab6b2a7a5f4c22b8e07938770add8257f4a52
        - quay.io/isovalent/hubble-ui-enterprise:v1.0.3@sha256:55bf787c96561f4a460e2bfe5966421e2d85f3f9a38ac2487c6f6486c97cd5af
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:1074f45a625df6ea412a9ffef3d4f4e53f3107ca45bb1de9bb030c47ce6518d9
        - quay.io/cilium/cilium-etcd-operator:v2.0.7@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/isovalent/operator-generic:v1.13.21-cee.2@sha256:6f2d0d575e3f74395c959833992cd5fbb6971f4e292df1b7cf45be8b07be5e7a
        - quay.io/isovalent/hubble-enterprise-operator:v1.11.6@sha256:38253c2e17a8b2e88a226f0976c9cf4a00445212e2886e6f07cbb3a52757324f
        - quay.io/cilium/certgen:v0.1.13@sha256:01802e6a153a9473b06ebade7ee5730f8f2c6cc8db8768508161da3cdd778641
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:71cbb44a41b60ab64c6eae99f819796868a57234a5ff210598bd23b73b3b02c7
        - quay.io/isovalent/cilium:v1.13.21-cee.2@sha256:f760cd85fa64eb8a197ec282644a8db630745a8a2854ee08aa2662cf67188db5
        - quay.io/isovalent/hubble-relay:v1.13.21-cee.2@sha256:aaf5f959a76d6b517e627d2d0b09dab86ae942616819a9a95f057ed4f45ea480
        - quay.io/cilium/startup-script:c54c7edeab7fde4da68e59acd319ab24af242c3f@sha256:a9d0f451353f1b2f29ed3868e230ecfae10150eab9fd521de67adb3c8ca9c33a
        - quay.io/isovalent/clustermesh-apiserver:v1.13.21-cee.2@sha256:980b0235fd16817ecc4457ad4317a4601993b76df2e81b07a53f6f437c2705af
        - quay.io/isovalent/hubble-ui-enterprise-backend:v1.0.3@sha256:6756d2b808c38efce4765f90641d26aa2e0e79329ecc378a123cd3dc2c439640
        - quay.io/isovalent/hubble-export-stdout:v1.0.4@sha256:a0ff77efa890478f18f5deeba2cd1e2dfd6c5c77981adac57b14d7734de71ff1
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:b04e75456359b50b18e75464da5d7b467fdfeb058fc08ce3a10f057ba5f60107
        - quay.io/isovalent/hubble-rbac:v1.5.6@sha256:739ca45ea09829b0fa8a6198901b34eb5254df55be071bc854bbd37cae12a557
        - quay.io/isovalent/oauth2-proxy:7.6.0@sha256:fc7046dee1a204163e68a6d9a42fec200b02129493a7d166f899dd12e2763364
        - quay.io/coreos/etcd:v3.5.4@sha256:795d8660c48c439a7c3764c2330ed9222ab5db5bb524d8d0607cac76f7ba82a3
        - quay.io/isovalent/hubble-enterprise:v1.11.6@sha256:eb60d59d1fb1b136855829274b31805c4206f8d050c3bf068e63a552576c1b38
        version: 1.13.21+x96449fb
      entries:
      - name: cilium-enterprise.v1.13.21-x96449fb
        version: 1.13.21+x96449fb
      - name: cilium-enterprise.v1.13.20-x5b70650
        version: 1.13.20+x5b70650
      - name: cilium-enterprise.v1.13.19-xdb27142
        version: 1.13.19+xdb27142
      - name: cilium-enterprise.v1.13.18-x0c21a94
        version: 1.13.18+x0c21a94
      - name: cilium-enterprise.v1.13.17-xc8f905f
        version: 1.13.17+xc8f905f
      - name: cilium-enterprise.v1.13.16-xcfe62ed
        version: 1.13.16+xcfe62ed
      - name: cilium-enterprise.v1.13.15-x1dfd26f
        version: 1.13.15+x1dfd26f
      - name: cilium.v1.13.14-xb70933f
        version: 1.13.14+xb70933f
      - name: cilium.v1.13.12-x453f6ad
        version: 1.13.12+x453f6ad
      - name: cilium.v1.13.11-xf6d6935
        version: 1.13.11+xf6d6935
      - name: cilium.v1.13.10-x9d57fc7
        version: 1.13.10+x9d57fc7
      - name: cilium.v1.13.9-xe8a359b
        version: 1.13.9+xe8a359b
      - name: cilium.v1.13.8-x96e1ca9
        version: 1.13.8+x96e1ca9
      - name: cilium.v1.13.7-x7320e7d
        version: 1.13.7+x7320e7d
      - name: cilium.v1.13.6-xd3714ef
        version: 1.13.6+xd3714ef
      - name: cilium.v1.13.5-x8386cae
        version: 1.13.5+x8386cae
      - name: cilium.v1.13.4-xc8b22ea
        version: 1.13.4+xc8b22ea
      - name: cilium.v1.13.3-x69e9561
        version: 1.13.3+x69e9561
      - name: cilium.v1.13.2-x4b1c6c8
        version: 1.13.2+x4b1c6c8
      name: "1.13"
    - currentCSV: cilium-enterprise.v1.14.22-x6d86c88
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.14.0 <1.14.22+x6d86c88'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/cilium:v1.14.22-cee.1@sha256:0e664a5a9e0edba38ab1a25eb7fa50861bb15f69ed0bbe3f3c792bd909240da3
        - quay.io/isovalent/hubble-enterprise:v1.11.6@sha256:eb60d59d1fb1b136855829274b31805c4206f8d050c3bf068e63a552576c1b38
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:148b1029eac14049e2ba84d4d75be1ca43ef2d89951adbdeddec392ad7c9fe1e
        - quay.io/cilium/startup-script:c54c7edeab7fde4da68e59acd319ab24af242c3f@sha256:a9d0f451353f1b2f29ed3868e230ecfae10150eab9fd521de67adb3c8ca9c33a
        - quay.io/coreos/etcd:v3.5.4@sha256:a67fb152d4c53223e96e818420c37f11d05c2d92cf62c05ca5604066c37295e9
        - quay.io/isovalent/oauth2-proxy:7.6.0@sha256:fc7046dee1a204163e68a6d9a42fec200b02129493a7d166f899dd12e2763364
        - quay.io/isovalent/operator-generic:v1.14.22-cee.1@sha256:a997fe24ff0b7f7df3ee12748413ae53d6e07c803162b0db4d812b916b0cfc74
        - quay.io/isovalent/hubble-export-s3:v1.0.2@sha256:518daea1074d260d824c3e03a93ab6b2a7a5f4c22b8e07938770add8257f4a52
        - quay.io/isovalent/hubble-enterprise-operator:v1.11.6@sha256:38253c2e17a8b2e88a226f0976c9cf4a00445212e2886e6f07cbb3a52757324f
        - quay.io/isovalent/hubble-ui-enterprise:v1.2.2@sha256:3e03a58f6eea5d2df195f42ee2817f7b28fa20bbe140f5086937eee8da1b8d56
        - quay.io/isovalent/clustermesh-apiserver:v1.14.22-cee.1@sha256:588e2b173ab409288eda2d404571184562d3d9fd12e2d9afe7282a5a7d79113a
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:71cbb44a41b60ab64c6eae99f819796868a57234a5ff210598bd23b73b3b02c7
        - quay.io/isovalent/hubble-relay:v1.14.22-cee.1@sha256:d7ffc880d2e42e0876417ec26115b0e9155ad9a2e7f47c02c434746afa42b29a
        - quay.io/isovalent/hubble-rbac:v1.5.2@sha256:29309837e2246a1b6849d7a09d01ceebfdb43fa0ade973d14584f0e52b856b95
        - quay.io/cilium/cilium-envoy:v1.32.5-1743506100-0821ef0acdf9f824d47d34e02932be522b3e7233@sha256:305c8b7da56ef1b64e4deb0642acf93a3944f2712e40c99a40bb005e6dc9761b
        - quay.io/cilium/certgen:v0.1.17@sha256:07959f3125dae659ab9036c14df046e2536f7a4f6c92dabda837388b0344dc74
        - quay.io/isovalent/hubble-export-stdout:v1.0.4@sha256:a0ff77efa890478f18f5deeba2cd1e2dfd6c5c77981adac57b14d7734de71ff1
        - quay.io/isovalent/hubble-ui-enterprise-backend:v1.2.2@sha256:4258f7e0bff24ff1e0b214f62b37097032b6426ba28edd3dfc4f451a34de0110
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:0543e615d8a48ba6aaf90a8de0b0a79d37689c64bfe71f91c340455d9a359426
        - quay.io/isovalent/hubble-export-fluentd:v1.8.1@sha256:ce0cce63a8473d5ae73872fc65d82c54f2875511bb03f0bc8ee8480148c43ee1
        version: 1.14.22+x6d86c88
      entries:
      - name: cilium-enterprise.v1.14.22-x6d86c88
        version: 1.14.22+x6d86c88
      - name: cilium-enterprise.v1.14.21-xe0c9553
        version: 1.14.21+xe0c9553
      - name: cilium-enterprise.v1.14.20-xe01e743
        version: 1.14.20+xe01e743
      - name: cilium-enterprise.v1.14.19-xc1b9aff
        version: 1.14.19+xc1b9aff
      name: "1.14"
    - currentCSV: cilium-enterprise.v1.15.22-xfb6ee71
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.15.0 <1.15.22+xfb6ee71'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:2aede84df42365c9da6bf3d4e9b77b3e4ea0fc0646df72c7bce382abd0139055
        - quay.io/isovalent/cilium-envoy-ubi:v1.33.4-1752151664-7c2edb0b44cf95f326d628b837fcdd845102ba68@sha256:e81fdde48c3d5cd93111e1d51d9f8554adb32ee937601a9124354e0894933b99
        - quay.io/isovalent/cilium:v1.15.22-cee.1@sha256:ce6331fa084d92ab65047b2b246f8ebae555e263e41722cb14978a152edb667f
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.15.22-cee.1@sha256:c5d1ae516aae27fac17b266cfdcfe659aa0d4e214027e0c2d84ae2970e7a5cf5
        - quay.io/isovalent/hubble-ui-backend-ubi:v1.3.8@sha256:a8bb183635215854b9dcd6340d4b93a123990a2ee8ded75a143c52b01f9b72d8
        - quay.io/isovalent/hubble-ui-frontend-ubi:v1.3.8@sha256:2a8f95d4bfdb0f196e27e5ebe0e00bbbbdab2f963c5beed587538f68618849c0
        - quay.io/isovalent/operator-generic-ubi:v1.15.22-cee.1@sha256:b1db5ebc6fb614a38e53e8d9be5960aeac09b961a5355e558d4ee964a9a6c07c
        - quay.io/isovalent/startup-script-ubi:1755531540-60ee83e@sha256:2e1d5048cbfcd3c77f732da8203a6c792cbf19897b5cf137b9ad23a6a267f6b2
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:eb5db92aa51052943a238aef136daab3ccc5daf60b035a4b569fd04ac02ab8e1
        - quay.io/isovalent/certgen-ubi:v0.1.19@sha256:c32e96b0972c9bcd3896945c46ea23e330c9dea407afee3a637daae637296f4c
        - quay.io/isovalent/hubble-relay-ubi:v1.15.22-cee.1@sha256:887789a333224deaaadeaf3406d5a6133febf097076e7a7f9f55bd0e43afd3b2
        - quay.io/isovalent/oauth2-proxy:7.12.0-20250819@sha256:fe8f76728c36536d498b2a5c11172cb18dc30bbb555df2a6d14c036b29cb9f10
        version: 1.15.22+xfb6ee71
      entries:
      - name: cilium-enterprise.v1.15.22-xfb6ee71
        version: 1.15.22+xfb6ee71
      - name: cilium-enterprise.v1.15.21-x2661a01
        version: 1.15.21+x2661a01
      - name: cilium-enterprise.v1.15.20-x6df37bb
        version: 1.15.20+x6df37bb
      - name: cilium-enterprise.v1.15.19-x0be49ab
        version: 1.15.19+x0be49ab
      - name: cilium-enterprise.v1.15.18-xeeaa70b
        version: 1.15.18+xeeaa70b
      - name: cilium-enterprise.v1.15.17-xdfd9482
        version: 1.15.17+xdfd9482
      - name: cilium-enterprise.v1.15.16-xc7e31ca
        version: 1.15.16+xc7e31ca
      - name: cilium-enterprise.v1.15.15-xf37f22c
        version: 1.15.15+xf37f22c
      - name: cilium-enterprise.v1.15.14-x0e512e3
        version: 1.15.14+x0e512e3
      - name: cilium-enterprise.v1.15.13-x134fa29
        version: 1.15.13+x134fa29
      name: "1.15"
    - currentCSV: cilium-enterprise.v1.16.16-xf0717b8
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.16.0 <1.16.16+xf0717b8'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/cilium-envoy-ubi:v1.16.16-cee.1@sha256:db1439f994966d7f2abda9e46f8a5f2c4df05236ace0f9710f9f19f3eae4f520
        - quay.io/isovalent/startup-script-ubi:v1.16.16-cee.1@sha256:16e6199da8c27cfa44656c8a9326ccfcf7911621080329a8a2f919a10b12002d
        - quay.io/isovalent/certgen-ubi:v1.16.16-cee.1@sha256:caf5b5802091462d8e277a0054c9e4aed62da634c967a0e429b9e7458b0bf32c
        - quay.io/isovalent/cilium-ubi:v1.16.16-cee.1@sha256:825ae0912f4e56068b3a320f4d0fbfcaad5c33295944176d3390d3ce2b83d5f3
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.16.16-cee.1@sha256:cf10ac7c8ef966647359d7c581d5d43537fb0a02e3e777db00e7404885dd3ffa
        - quay.io/isovalent/hubble-relay-ubi:v1.16.16-cee.1@sha256:ec02a881eeeecd7477fbd5cd0760655d321b1e006a79eee82af0918a1c9967b3
        - quay.io/isovalent/operator-generic-ubi:v1.16.16-cee.1@sha256:eb4940955d70fb7cfd9d7fbf4c2260a2243b8a71baa438ab3364c161bc05d644
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:9c6929d43ee16fe8548d41f7ea2be5faa66c4938629d9466546505113371fbf6
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:a0eb3d7bf42f891eb9fba3b39b1133372cb006d5aa08128e3aa1898d4b303e6f
        version: 1.16.16+xf0717b8
      entries:
      - name: cilium-enterprise.v1.16.16-xf0717b8
        version: 1.16.16+xf0717b8
      - name: cilium-enterprise.v1.16.15-x6419e26
        version: 1.16.15+x6419e26
      - name: cilium-enterprise.v1.16.13-xb2de075
        version: 1.16.13+xb2de075
      - name: cilium-enterprise.v1.16.12-xd373871
        version: 1.16.12+xd373871
      - name: cilium-enterprise.v1.16.11-xbd1cd23
        version: 1.16.11+xbd1cd23
      - name: cilium-enterprise.v1.16.10-x89ab4b0
        version: 1.16.10+x89ab4b0
      - name: cilium-enterprise.v1.16.9-x8ec4137
        version: 1.16.9+x8ec4137
      - name: cilium-enterprise.v1.16.8-yd2b50b4
        version: 1.16.8+yd2b50b4
      - name: cilium-enterprise.v1.16.7-x4867421
        version: 1.16.7+x4867421
      - name: cilium-enterprise.v1.16.6-x7e6eb1c
        version: 1.16.6+x7e6eb1c
      name: "1.16"
    defaultChannel: "1.16"
    packageName: cilium-enterprise
    provider:
      name: Isovalent
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-applicationautoscaling-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-applicationautoscaling-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "applicationautoscaling.services.k8s.aws/v1alpha1",
                "kind": "ScalableTarget",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "applicationautoscaling.services.k8s.aws/v1alpha1",
                "kind": "ScalingPolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/applicationautoscaling-controller:1.2.0
          createdAt: "2025-11-29T04:48:11Z"
          description: AWS Application Auto Scaling controller is a service controller
            for managing Application Auto Scaling resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ScalableTarget represents the state of an AWS applicationautoscaling
              ScalableTarget resource.
            displayName: ScalableTarget
            kind: ScalableTarget
            name: scalabletargets.applicationautoscaling.services.k8s.aws
            version: v1alpha1
          - description: ScalingPolicy represents the state of an AWS applicationautoscaling
              ScalingPolicy resource.
            displayName: ScalingPolicy
            kind: ScalingPolicy
            name: scalingpolicies.applicationautoscaling.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Application Auto Scaling resources in AWS from within your Kubernetes cluster.
          **About Amazon Application Auto Scaling**
          Application Auto Scaling is a web service for developers and system administrators who need a solution for automatically scaling their scalable resources for individual AWS services beyond Amazon EC2. Application Auto Scaling allows you to configure automatic scaling for the following resources:
          - AppStream 2.0 fleets
          - Aurora replicas
          - Amazon Comprehend document classification and entity recognizer endpoints
          - DynamoDB tables and global secondary indexes
          - Amazon Elastic Container Service (ECS) services
          - Amazon EMR clusters
          - Amazon Keyspaces (for Apache Cassandra) tables
          - Lambda function provisioned concurrency
          - Amazon Managed Streaming for Apache Kafka (MSK) broker storage
          - SageMaker endpoint variants
          - Spot Fleet requests
          - Custom resources provided by your own applications or services. For more information, see the [GitHub repository](https://github.com/aws/aws-auto-scaling-custom-resource)

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Application Auto Scaling
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - applicationautoscaling
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Application Auto Scaling User Guide
          url: https://docs.aws.amazon.com/autoscaling/application/userguide/what-is-application-auto-scaling.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: application auto scaling maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/applicationautoscaling-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-applicationautoscaling-controller@sha256:bfb1bb568c09825641fc13e7b9cc2a9632d49222be29341cf82f0df1c90229be
        version: 1.2.0
      entries:
      - name: ack-applicationautoscaling-controller.v1.2.0
        version: 1.2.0
      - name: ack-applicationautoscaling-controller.v1.1.2
        version: 1.1.2
      - name: ack-applicationautoscaling-controller.v1.1.1
        version: 1.1.1
      - name: ack-applicationautoscaling-controller.v1.1.0
        version: 1.1.0
      - name: ack-applicationautoscaling-controller.v1.0.30
        version: 1.0.30
      - name: ack-applicationautoscaling-controller.v1.0.29
        version: 1.0.29
      - name: ack-applicationautoscaling-controller.v1.0.27
        version: 1.0.27
      - name: ack-applicationautoscaling-controller.v1.0.26
        version: 1.0.26
      - name: ack-applicationautoscaling-controller.v1.0.25
        version: 1.0.25
      - name: ack-applicationautoscaling-controller.v1.0.24
        version: 1.0.24
      - name: ack-applicationautoscaling-controller.v1.0.23
        version: 1.0.23
      - name: ack-applicationautoscaling-controller.v1.0.22
        version: 1.0.22
      - name: ack-applicationautoscaling-controller.v1.0.21
        version: 1.0.21
      - name: ack-applicationautoscaling-controller.v1.0.19
        version: 1.0.19
      - name: ack-applicationautoscaling-controller.v1.0.18
        version: 1.0.18
      - name: ack-applicationautoscaling-controller.v1.0.17
        version: 1.0.17
      - name: ack-applicationautoscaling-controller.v1.0.16
        version: 1.0.16
      - name: ack-applicationautoscaling-controller.v1.0.15
        version: 1.0.15
      - name: ack-applicationautoscaling-controller.v1.0.11
        version: 1.0.11
      - name: ack-applicationautoscaling-controller.v1.0.9
        version: 1.0.9
      - name: ack-applicationautoscaling-controller.v1.0.8
        version: 1.0.8
      - name: ack-applicationautoscaling-controller.v1.0.7
        version: 1.0.7
      - name: ack-applicationautoscaling-controller.v1.0.6
        version: 1.0.6
      - name: ack-applicationautoscaling-controller.v1.0.5
        version: 1.0.5
      - name: ack-applicationautoscaling-controller.v1.0.4
        version: 1.0.4
      - name: ack-applicationautoscaling-controller.v1.0.3
        version: 1.0.3
      - name: ack-applicationautoscaling-controller.v1.0.2
        version: 1.0.2
      - name: ack-applicationautoscaling-controller.v1.0.0
        version: 1.0.0
      - name: ack-applicationautoscaling-controller.v0.2.16
        version: 0.2.16
      - name: ack-applicationautoscaling-controller.v0.2.15
        version: 0.2.15
      - name: ack-applicationautoscaling-controller.v0.2.14
        version: 0.2.14
      - name: ack-applicationautoscaling-controller.v0.2.13
        version: 0.2.13
      - name: ack-applicationautoscaling-controller.v0.2.12
        version: 0.2.12
      - name: ack-applicationautoscaling-controller.v0.2.10
        version: 0.2.10
      - name: ack-applicationautoscaling-controller.v0.2.9
        version: 0.2.9
      - name: ack-applicationautoscaling-controller.v0.2.8
        version: 0.2.8
      - name: ack-applicationautoscaling-controller.v0.2.7
        version: 0.2.7
      - name: ack-applicationautoscaling-controller.v0.2.6
        version: 0.2.6
      - name: ack-applicationautoscaling-controller.v0.2.5
        version: 0.2.5
      - name: ack-applicationautoscaling-controller.v0.2.4
        version: 0.2.4
      - name: ack-applicationautoscaling-controller.v0.2.3
        version: 0.2.3
      - name: ack-applicationautoscaling-controller.v0.2.2
        version: 0.2.2
      - name: ack-applicationautoscaling-controller.v0.2.1
        version: 0.2.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-applicationautoscaling-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-mq-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-mq-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mq.services.k8s.aws/v1alpha1",
                "kind": "Broker",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/mq-controller:1.2.0
          createdAt: "2025-11-29T03:37:35Z"
          description: AWS MQ controller is a service controller for managing MQ resources
            in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Broker represents the state of an AWS mq Broker resource.
            displayName: Broker
            kind: Broker
            name: brokers.mq.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon MQ resources in AWS from within your Kubernetes cluster.

          **About Amazon MQ**

          Amazon MQ is a managed message broker service for Apache ActiveMQ and RabbitMQ that makes it easy to set up and operate message brokers on AWS. Amazon MQ reduces your operational responsibilities by managing the provisioning, setup, and maintenance of message brokers for you. Because Amazon MQ connects to your current applications with industry-standard APIs and protocols, you can easily migrate to AWS without having to rewrite code.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon MQ
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mq
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon MQ Developer Resources
          url: https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: mq maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/mq-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-mq-controller@sha256:e9a599737eb39ce150b2d31461354d25fb060d4f2cf45557ffa26e10d52c7c8c
        version: 1.2.0
      entries:
      - name: ack-mq-controller.v1.2.0
        version: 1.2.0
      - name: ack-mq-controller.v1.1.3
        version: 1.1.3
      - name: ack-mq-controller.v1.1.2
        version: 1.1.2
      - name: ack-mq-controller.v1.1.1
        version: 1.1.1
      - name: ack-mq-controller.v1.1.0
        version: 1.1.0
      - name: ack-mq-controller.v1.0.13
        version: 1.0.13
      - name: ack-mq-controller.v1.0.11
        version: 1.0.11
      - name: ack-mq-controller.v1.0.10
        version: 1.0.10
      - name: ack-mq-controller.v1.0.9
        version: 1.0.9
      - name: ack-mq-controller.v1.0.8
        version: 1.0.8
      - name: ack-mq-controller.v1.0.7
        version: 1.0.7
      - name: ack-mq-controller.v1.0.6
        version: 1.0.6
      - name: ack-mq-controller.v1.0.5
        version: 1.0.5
      - name: ack-mq-controller.v1.0.2
        version: 1.0.2
      - name: ack-mq-controller.v1.0.1
        version: 1.0.1
      - name: ack-mq-controller.v1.0.0
        version: 1.0.0
      - name: ack-mq-controller.v0.0.36
        version: 0.0.36
      - name: ack-mq-controller.v0.0.35
        version: 0.0.35
      - name: ack-mq-controller.v0.0.34
        version: 0.0.34
      - name: ack-mq-controller.v0.0.31
        version: 0.0.31
      - name: ack-mq-controller.v0.0.29
        version: 0.0.29
      - name: ack-mq-controller.v0.0.27
        version: 0.0.27
      - name: ack-mq-controller.v0.0.26
        version: 0.0.26
      - name: ack-mq-controller.v0.0.25
        version: 0.0.25
      - name: ack-mq-controller.v0.0.24
        version: 0.0.24
      - name: ack-mq-controller.v0.0.23
        version: 0.0.23
      - name: ack-mq-controller.v0.0.22
        version: 0.0.22
      - name: ack-mq-controller.v0.0.21
        version: 0.0.21
      - name: ack-mq-controller.v0.0.20
        version: 0.0.20
      - name: ack-mq-controller.v0.0.19
        version: 0.0.19
      - name: ack-mq-controller.v0.0.18
        version: 0.0.18
      - name: ack-mq-controller.v0.0.17
        version: 0.0.17
      - name: ack-mq-controller.v0.0.16
        version: 0.0.16
      - name: ack-mq-controller.v0.0.15
        version: 0.0.15
      - name: ack-mq-controller.v0.0.14
        version: 0.0.14
      - name: ack-mq-controller.v0.0.13
        version: 0.0.13
      - name: ack-mq-controller.v0.0.12
        version: 0.0.12
      - name: ack-mq-controller.v0.0.11
        version: 0.0.11
      - name: ack-mq-controller.v0.0.10
        version: 0.0.10
      - name: ack-mq-controller.v0.0.9
        version: 0.0.9
      - name: ack-mq-controller.v0.0.8
        version: 0.0.8
      - name: ack-mq-controller.v0.0.7
        version: 0.0.7
      name: alpha
    defaultChannel: alpha
    packageName: ack-mq-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: web-terminal
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: web-terminal.v1.15.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
            ]
          capabilities: Basic Install
          categories: Developer Tools
          certified: "false"
          containerImage: registry.redhat.io/web-terminal/web-terminal-rhel9-operator@sha256:54aee8a20fe456c48d9b5001b08a6bd2a84b37f2abb0966d9d9c5c2ad087d3ae
          createdAt: "2021-10-26T07:24:32Z"
          description: Start a web terminal in your browser with common CLI tools
            for interacting with the cluster
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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: "true"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/redhat-developer/web-terminal-operator/
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          required:
          - kind: DevWorkspaceRouting
            name: devworkspaceroutings.controller.devfile.io
            version: v1alpha1
          - kind: DevWorkspace
            name: devworkspaces.workspace.devfile.io
            version: v1alpha1
        description: |
          Start a web terminal in your browser with common CLI tools for interacting with
          the cluster.

          **Note:** The Web Terminal Operator integrates with the OpenShift Console in
          OpenShift 4.5.3 and higher to simplify web terminal instance creation and
          automate OpenShift login. In earlier versions of OpenShift, the operator can
          be installed but web terminals will have to be created and accessed manually.

          ## Description
          The Web Terminal Operator leverages the
          [DevWorkspace Operator](https://github.com/devfile/devworkspace-operator)
          to provision enviroments which support common cloud CLI tools. When this
          operator is installed, the DevWorkspace Operator will be installed as a
          dependency.

          ## How to Install
          Press the **Install** button, choose the upgrade strategy, and wait for the
          **Installed** Operator status.

          When the operator is installed, you will see a terminal button appear on the
          top right of the console after refreshing the OpenShift console window.

          ## How to Uninstall
          The Web Terminal Operator requires manual steps to fully uninstall the operator.
          As the Web Terminal Operator is designed as a way to access the OpenShift
          cluster, web terminal instances store user credentials. To avoid exposing these
          credentials to unwanted parties, the operator deploys webhooks and finalizers
          that aren't removed when the operator is uninstalled. See the
          [uninstall guide](https://docs.openshift.com/container-platform/latest/web_console/web_terminal/uninstalling-web-terminal.html)
          for more details.

          ## Documentation
          Documentation for this Operator is available at https://docs.openshift.com/container-platform/latest/web\_console/web\_terminal/installing-web-terminal.html
        displayName: Web Terminal
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - workspace
        - devtools
        - developer
        - ide
        - terminal
        links:
        - name: Web Terminal Repo
          url: https://github.com/redhat-developer/web-terminal-operator/
        maintainers:
        - email: dakwon@redhat.com
          name: David Kwon
        - email: ibuziuk@redhat.com
          name: Ilya Buziuk
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/web-terminal/web-terminal-tooling-rhel9@sha256:a107f3d0a1e0046a2a3c089d67b4d54f0b94048154dd2fbd5f8344506c9994cd
        - registry.redhat.io/web-terminal/web-terminal-operator-bundle@sha256:a9be30074f26b71e14cab823718dc4fd03edcc2694826cdd8aa3c06ed2201057
        - registry.redhat.io/web-terminal/web-terminal-exec-rhel9@sha256:f887c71de000744733326c39725e52d7e576c0e8a9177548d59eb98706b97189
        - registry.redhat.io/web-terminal/web-terminal-rhel9-operator@sha256:54aee8a20fe456c48d9b5001b08a6bd2a84b37f2abb0966d9d9c5c2ad087d3ae
        version: 1.15.0
      entries:
      - name: web-terminal.v1.15.0
        version: 1.15.0
      - name: web-terminal.v1.14.0
        version: 1.14.0
      - name: web-terminal.v1.13.0
        version: 1.13.0
      - name: web-terminal.v1.12.1-0.1745393748.p
        version: 1.12.1+0.1745393748.p
      - name: web-terminal.v1.12.1-0.1743657317.p
        version: 1.12.1+0.1743657317.p
      - name: web-terminal.v1.12.1-0.1742484227.p
        version: 1.12.1+0.1742484227.p
      - name: web-terminal.v1.12.1
        version: 1.12.1
      - name: web-terminal.v1.11.1-0.1747215995.p
        version: 1.11.1+0.1747215995.p
      - name: web-terminal.v1.11.1
        version: 1.11.1
      - name: web-terminal.v1.11.0
        version: 1.11.0
      - name: web-terminal.v1.10.1
        version: 1.10.1
      - name: web-terminal.v1.10.1-0.1740684238.p
        version: 1.10.1+0.1740684238.p
      - name: web-terminal.v1.10.0-0.1720402943.p
        version: 1.10.0+0.1720402943.p
      - name: web-terminal.v1.10.0-0.1732652667.p
        version: 1.10.0+0.1732652667.p
      - name: web-terminal.v1.10.0-0.1731481377.p
        version: 1.10.0+0.1731481377.p
      - name: web-terminal.v1.10.0-0.1727169028.p
        version: 1.10.0+0.1727169028.p
      - name: web-terminal.v1.10.0-0.1720435222.p
        version: 1.10.0+0.1720435222.p
      - name: web-terminal.v1.10.0
        version: 1.10.0
      - name: web-terminal.v1.9.0-0.1708477317.p
        version: 1.9.0+0.1708477317.p
      - name: web-terminal.v1.9.0
        version: 1.9.0
      - name: web-terminal.v1.8.0-0.1708477299.p
        version: 1.8.0+0.1708477299.p
      - name: web-terminal.v1.8.0-0.1701199376.p
        version: 1.8.0+0.1701199376.p
      - name: web-terminal.v1.8.0-0.1692219820.p
        version: 1.8.0+0.1692219820.p
      - name: web-terminal.v1.8.0
        version: 1.8.0
      - name: web-terminal.v1.7.0-0.1681197295.p
        version: 1.7.0+0.1681197295.p
      - name: web-terminal.v1.7.0-0.1708477265.p
        version: 1.7.0+0.1708477265.p
      - name: web-terminal.v1.7.0
        version: 1.7.0
      - name: web-terminal.v1.7.0-0.1692219820.p
        version: 1.7.0+0.1692219820.p
      - name: web-terminal.v1.7.0-0.1682321121.p
        version: 1.7.0+0.1682321121.p
      - name: web-terminal.v1.7.0-0.1684429884.p
        version: 1.7.0+0.1684429884.p
      - name: web-terminal.v1.6.0
        version: 1.6.0
      - name: web-terminal.v1.6.0-0.1692219820.p
        version: 1.6.0+0.1692219820.p
      - name: web-terminal.v1.5.1-0.1661829403.p
        version: 1.5.1+0.1661829403.p
      - name: web-terminal.v1.5.1
        version: 1.5.1
      - name: web-terminal.v1.5.0-0.1657220207.p
        version: 1.5.0+0.1657220207.p
      - name: web-terminal.v1.5.0
        version: 1.5.0
      - name: web-terminal.v1.4.0
        version: 1.4.0
      - name: web-terminal.v1.3.0
        version: 1.3.0
      name: fast
    defaultChannel: fast
    packageName: web-terminal
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: devspaces
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: devspacesoperator.v3.25.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "org.eclipse.che/v1",
                "kind": "CheCluster",
                "metadata": {
                  "name": "devspaces",
                  "namespace": "openshift-devspaces"
                },
                "spec": {
                  "auth": {
                    "identityProviderURL": "",
                    "oAuthClientName": "",
                    "oAuthSecret": ""
                  },
                  "database": {
                    "externalDb": false
                  },
                  "k8s": {
                    "ingressDomain": null,
                    "tlsSecretName": null
                  },
                  "metrics": {
                    "enable": true
                  },
                  "server": {
                    "workspaceNamespaceDefault": "<username>-devspaces"
                  },
                  "storage": {
                    "pvcStrategy": "common"
                  }
                }
              },
              {
                "apiVersion": "org.eclipse.che/v2",
                "kind": "CheCluster",
                "metadata": {
                  "name": "devspaces",
                  "namespace": "openshift-devspaces"
                },
                "spec": {
                  "components": {},
                  "containerRegistry": {},
                  "devEnvironments": {},
                  "gitServices": {},
                  "networking": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/devspaces/devspaces-rhel9-operator@sha256:06cb161519fde83b8c5bcced51f6d639f25a4669e3718338c7ab8dfdefbaa746
          createdAt: "2025-12-13T03:50:34+00:00"
          description: Devfile v2 and v1 development solution, 1 instance per cluster,
            for portable, collaborative k8s workspaces.
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/devspaces-images/
          skipRange: '>=3.0.0 <3.25.0'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              The `CheCluster` custom resource allows defining and managing Red Hat OpenShift Dev Spaces server installation.
              Based on these settings, the  Operator automatically creates and maintains several ConfigMaps:
              `che`, `plugin-registry` that will contain the appropriate environment variables
              of the various components of the installation. These generated ConfigMaps must NOT be updated manually.
            displayName: Red Hat OpenShift Dev Spaces instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v2
          - description: The `CheCluster` custom resource allows defining and managing
              a Che server installation
            displayName: Red Hat OpenShift Dev Spaces instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v1
        description: |
          A collaborative Kubernetes-native development solution that delivers OpenShift workspaces and in-browser IDE for rapid cloud application development.
          This operator installs the Plugin and Devfile registries, Dashboard, Gateway and the Red Hat OpenShift Dev Spaces server, and configures these services.
          OpenShift OAuth is used directly for authentication. TLS mode is on.

          ## How to Install
          Press the **Install** button, choose the channel and the upgrade strategy, and wait for the **Installed** Operator status.
          When the operator is installed, create a new Custom Resource (CR) of Kind CheCluster (click the **Create New** button).
          The CR spec contains all defaults. You can start using Red Hat OpenShift Dev Spaces when the CR status is set to **Available**, and you see a URL to Red Hat OpenShift Dev Spaces.

          ## Defaults
          By default, the operator deploys Red Hat OpenShift Dev Spaces with:
          * 10Gi storage
          * Auto-generated passwords
          * Bundled Plugin and Devfile registries

          Use `oc edit checluster/devspaces -n openshift-devspaces` to update Red Hat OpenShift Dev Spaces default installation options.
          See more in the [Installation guide](https://docs.redhat.com/en/documentation/red_hat_openshift_dev_spaces/3.25/html/administration_guide/configuring-devspaces).

          ### Certificates
          Operator uses a default router certificate to secure Red Hat OpenShift Dev Spaces routes.
          Follow the [guide](https://docs.redhat.com/en/documentation/red_hat_openshift_dev_spaces/3.25/html/administration_guide/configuring-devspaces#importing-untrusted-tls-certificates)
          to import certificates into Red Hat OpenShift Dev Spaces.
        displayName: Red Hat OpenShift Dev Spaces
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eclipse che
        - workspaces
        - devtools
        - developer
        - ide
        - java
        - devspaces
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/openshift-dev-spaces/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_openshift_dev_spaces
        - name: Operator GitHub Repo
          url: https://github.com/redhat-developer/devspaces-images/
        maintainers:
        - email: abazko@redhat.com
          name: Anatolii Bazko
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/devspaces/pluginregistry-rhel9@sha256:572df83aa7e8ac0c198731ece8dd321bede3848fa1e6f2e3dc7bdfc5f8942759
        - registry.redhat.io/devspaces/devspaces-rhel9-operator@sha256:06cb161519fde83b8c5bcced51f6d639f25a4669e3718338c7ab8dfdefbaa746
        - registry.redhat.io/devspaces/udi-rhel9@sha256:bb5baa05f316944ca6df56ad718c368b248e8f4b2488551549b1b13c4ed5844b
        - registry.redhat.io/devspaces/code-rhel9@sha256:7b68bf06abf4f2b948d21ffa82401b44f26965b093e4875653344ae2b7fe46c8
        - registry.redhat.io/devspaces/configbump-rhel9@sha256:7f33a59aa8d1820f8a99ed20eb4b7192c1fb57414a8bc83f5432b8ea2363bb0f
        - registry.redhat.io/devspaces/server-rhel9@sha256:fccbb4185e7694f8c53c994b04e140306a72ed8aa5a6befa7f0690f21e4c19dc
        - registry.redhat.io/devspaces/traefik-rhel9@sha256:7bd1c5582082949142aead1db07b45d41840c58c14ddf18b062df45283e1a316
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:af847bf3d0220392de2f8d56fc3d431add3b31986f8200a4758d287b5bd7a6fe
        - registry.redhat.io/devspaces/dashboard-rhel9@sha256:09607fdeaf2567659a10148c50b19ac265b4a548278b800682ced9d975377cb4
        - registry.redhat.io/devspaces/jetbrains-ide-rhel9@sha256:b6e79f77712ede50d385d477b1d09a34ec4aee074785d385556a12a0a596e582
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:d26a9f4fd48c83bd488ebb889ccec7d65f3bd49e2c94e57c98971a3594d90612
        - registry.redhat.io/devspaces/devspaces-operator-bundle@sha256:74b83b79cba88af0545e7fb52dd70df2c1b96cf23b8963517fc779fbfe3e9aac
        - registry.redhat.io/devspaces/code-sshd-rhel9@sha256:938dfb964aaae293190273034af8b09c5a007d614afa09b735756f930b34666f
        version: 3.25.0
      entries:
      - name: devspacesoperator.v3.25.0
        version: 3.25.0
      - name: devspacesoperator.v3.24.1
        version: 3.24.1
      - name: devspacesoperator.v3.24.0
        version: 3.24.0
      - name: devspacesoperator.v3.23.1
        version: 3.23.1
      - name: devspacesoperator.v3.23.0
        version: 3.23.0
      - name: devspacesoperator.v3.22.1
        version: 3.22.1
      - name: devspacesoperator.v3.22.0
        version: 3.22.0
      - name: devspacesoperator.v3.21.0
        version: 3.21.0
      - name: devspacesoperator.v3.20.0
        version: 3.20.0
      - name: devspacesoperator.v3.19.0
        version: 3.19.0
      - name: devspacesoperator.v3.18.1-0.1739475915.p
        version: 3.18.1+0.1739475915.p
      - name: devspacesoperator.v3.18.1
        version: 3.18.1
      - name: devspacesoperator.v3.18.0
        version: 3.18.0
      - name: devspacesoperator.v3.17.0
        version: 3.17.0
      - name: devspacesoperator.v3.16.1
        version: 3.16.1
      - name: devspacesoperator.v3.16.0
        version: 3.16.0
      - name: devspacesoperator.v3.15.0
        version: 3.15.0
      - name: devspacesoperator.v3.14.0
        version: 3.14.0
      - name: devspacesoperator.v3.13.0
        version: 3.13.0
      - name: devspacesoperator.v3.12.0
        version: 3.12.0
      - name: devspacesoperator.v3.12.0-0.1712003563.p
        version: 3.12.0+0.1712003563.p
      - name: devspacesoperator.v3.11.0
        version: 3.11.0
      - name: devspacesoperator.v3.10.1
        version: 3.10.1
      - name: devspacesoperator.v3.10.0
        version: 3.10.0
      - name: devspacesoperator.v3.9.1
        version: 3.9.1
      - name: devspacesoperator.v3.9.0
        version: 3.9.0
      - name: devspacesoperator.v3.8.0
        version: 3.8.0
      - name: devspacesoperator.v3.7.2
        version: 3.7.2
      - name: devspacesoperator.v3.7.1-0.1691548593.p
        version: 3.7.1+0.1691548593.p
      - name: devspacesoperator.v3.7.1-0.1691407091.p
        version: 3.7.1+0.1691407091.p
      - name: devspacesoperator.v3.7.1
        version: 3.7.1
      - name: devspacesoperator.v3.7.0
        version: 3.7.0
      - name: devspacesoperator.v3.6.0-0.1685322634.p
        version: 3.6.0+0.1685322634.p
      - name: devspacesoperator.v3.6.0-0.1685320856.p
        version: 3.6.0+0.1685320856.p
      - name: devspacesoperator.v3.6.0
        version: 3.6.0
      - name: devspacesoperator.v3.5.0
        version: 3.5.0
      - name: devspacesoperator.v3.4.0-0.1675914643.p
        version: 3.4.0+0.1675914643.p
      - name: devspacesoperator.v3.4.0
        version: 3.4.0
      - name: devspacesoperator.v3.3.0-0.1673528130.p
        version: 3.3.0+0.1673528130.p
      - name: devspacesoperator.v3.3.0
        version: 3.3.0
      name: stable
    defaultChannel: stable
    packageName: devspaces
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Advanced Micro Devices, Inc.
      provider-url: ""
    name: amd-gpu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amd-gpu-operator.v1.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "amd.com/v1alpha1",
                "kind": "DeviceConfig",
                "metadata": {
                  "name": "test-deviceconfig",
                  "namespace": "openshift-amd-gpu"
                },
                "spec": {
                  "devicePlugin": {
                    "devicePluginImage": "rocm/k8s-device-plugin:rhubi-latest",
                    "nodeLabellerImage": "rocm/k8s-node-labeller:rhubi-latest"
                  },
                  "driver": {
                    "enable": "true",
                    "version": "7.0"
                  },
                  "selector": {
                    "feature.node.kubernetes.io/amd-gpu": "true"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: AI/Machine Learning,Monitoring
          containerImage: docker.io/rocm/gpu-operator@sha256:619f6d1ddef671df2704e87a8cca82ee4c1b07d645f05c8d5cb2eb9c6604a270
          createdAt: "2025-10-31T08:47:42Z"
          description: |-
            Operator responsible for deploying AMD GPU kernel drivers, device plugin, device test runner and device metrics exporter
            For more information, visit [documentation](https://instinct.docs.amd.com/projects/gpu-operator/en/latest/)
          deviceConfigManagerImage: docker.io/rocm/device-config-manager@sha256:76363ac0cc42617f1723e14eaeb11434d4d1fa2d4d39d67bc49b3525c599c0ba
          devicePluginImage: docker.io/rocm/k8s-device-plugin@sha256:6976ee40f7fcba3759bbbf5a36e3f12daaf306836606df18592b1b67f7f651d7
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          metricsExporterImage: docker.io/rocm/device-metrics-exporter@sha256:3872ca3534c6679159ffbef504a02e937eb3e11b215c18e649456c0d0ca9bc8d
          nodelabellerImage: docker.io/rocm/k8s-node-labeller@sha256:8206d27891606ebc2f234fed6fe45d181cb31c3ff694a0ff9c3f02d62c280eee
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-amd-gpu
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ROCm/gpu-operator
          support: Advanced Micro Devices, Inc.
          testRunnerImage: docker.io/rocm/test-runner@sha256:529a13953979e7fbd4ff9333735bd2268a81eaa4fdf8f187698cce7d8e720beb
          utilsContainerImage: docker.io/rocm/gpu-operator-utils@sha256:9cbe60dce5b3a2ffd93f7148a363ed5f072a320377d5e5bcbbfb1e05d4959287
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DeviceConfig describes how to enable AMD GPU device
            displayName: DeviceConfig
            kind: DeviceConfig
            name: deviceconfigs.amd.com
            version: v1alpha1
        description: |-
          Operator responsible for deploying AMD GPU kernel drivers, device plugin, device test runner and device metrics exporter
          For more information, visit [documentation](https://instinct.docs.amd.com/projects/gpu-operator/en/latest/)
        displayName: amd-gpu-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AMD
        - GPU
        - AI
        - Deep Learning
        - Hardware
        - Driver
        - Monitoring
        links:
        - name: AMD GPU Operator
          url: https://github.com/ROCm/gpu-operator
        maintainers:
        - email: Yan.Sun3@amd.com
          name: Yan Sun
        - email: farshad.ghodsian@amd.com
          name: Farshad Ghodsian
        - email: shrey.ajmera@amd.com
          name: Shrey Ajmera
        maturity: stable
        provider:
          name: Advanced Micro Devices, Inc.
        relatedImages:
        - docker.io/rocm/k8s-device-plugin@sha256:6976ee40f7fcba3759bbbf5a36e3f12daaf306836606df18592b1b67f7f651d7
        - docker.io/rocm/k8s-node-labeller@sha256:8206d27891606ebc2f234fed6fe45d181cb31c3ff694a0ff9c3f02d62c280eee
        - docker.io/rocm/test-runner@sha256:529a13953979e7fbd4ff9333735bd2268a81eaa4fdf8f187698cce7d8e720beb
        - registry.connect.redhat.com/amd/gpu-operator-v1@sha256:4918beef3a778e8e6bb835240f356002a8b41e40ba011112ca360faa88fe57f4
        - docker.io/rocm/device-config-manager@sha256:76363ac0cc42617f1723e14eaeb11434d4d1fa2d4d39d67bc49b3525c599c0ba
        - docker.io/rocm/device-metrics-exporter@sha256:3872ca3534c6679159ffbef504a02e937eb3e11b215c18e649456c0d0ca9bc8d
        - docker.io/rocm/gpu-operator-utils@sha256:9cbe60dce5b3a2ffd93f7148a363ed5f072a320377d5e5bcbbfb1e05d4959287
        - docker.io/rocm/gpu-operator@sha256:619f6d1ddef671df2704e87a8cca82ee4c1b07d645f05c8d5cb2eb9c6604a270
        version: 1.4.1
      entries:
      - name: amd-gpu-operator.v1.4.1
        version: 1.4.1
      - name: amd-gpu-operator.v1.3.2
        version: 1.3.2
      - name: amd-gpu-operator.v1.3.1
        version: 1.3.1
      - name: amd-gpu-operator.v1.2.1
        version: 1.2.1
      - name: amd-gpu-operator.v1.1.1
        version: 1.1.1
      name: alpha
    defaultChannel: alpha
    packageName: amd-gpu-operator
    provider:
      name: Advanced Micro Devices, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Kubecost
      provider-url: https://www.kubecost.com
    name: kubecost-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubecost-operator.v2.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.kubecost.com/v1alpha1",
                "kind": "CostAnalyzer",
                "metadata": {
                  "name": "costanalyzer-sample"
                },
                "spec": {
                  "clusterController": {
                    "image": {
                      "repository": "registry.connect.redhat.com/kubecost/kubecost-cluster-controller@sha256",
                      "tag": "1a6f11dcd7341ab3f24eba23ec06c7b75646a534a7ed960153601806425469d1"
                    }
                  },
                  "forecasting": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-modeling@sha256:8f59f8fd8696964c1b5322ca79fae78befe97323fa56c2b509bdcc67ee4c0edd"
                  },
                  "global": {
                    "platforms": {
                      "openshift": {
                        "createMonitoringClusterRoleBinding": true,
                        "createMonitoringResourceReaderRoleBinding": true,
                        "enabled": true,
                        "scc": {
                          "clusterController": true,
                          "networkCosts": true,
                          "nodeExporter": true
                        }
                      }
                    },
                    "prometheus": {
                      "enabled": false,
                      "fqdn": "https://prometheus-k8s.openshift-monitoring.svc.cluster.local:9091",
                      "kubeRBACProxy": true
                    }
                  },
                  "grafana": {
                    "image": {
                      "repository": "registry.redhat.io/rhel9/grafana@sha256",
                      "tag": "9f71de028c18034e07a8d15dac13ef68afb91cb899b9e8e7d39703547dd0eac1"
                    },
                    "sidecar": {
                      "image": {
                        "repository": "quay.io/kiwigrid/k8s-sidecar@sha256",
                        "tag": "d3749777d5bedf62549b452a7e2ccb205da53588dc7f04927efc75d0da5b6d23"
                      }
                    }
                  },
                  "kubecostAggregator": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:1b9c9f309e6f41addc7fb6418724a6a6b08486290e31fe1f614efc649874bcef"
                  },
                  "kubecostFrontend": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-frontend@sha256:f9b2196dc6ac017b8074f8fe40f1a58e7a2630282c5b7a019ca9f3dbdb670dc8"
                  },
                  "kubecostModel": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:1b9c9f309e6f41addc7fb6418724a6a6b08486290e31fe1f614efc649874bcef"
                  },
                  "networkCosts": {
                    "image": {
                      "repository": "registry.connect.redhat.com/kubecost/kubecost-network-costs@sha256",
                      "tag": "c444d475be4f1aa36680bd84358e1e07303dcfe5d13a95544ad9e59f80d4a5f0"
                    }
                  },
                  "prometheusRule": {
                    "enabled": true
                  },
                  "serviceMonitor": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          createdAt: "2025-08-08T19:34:34Z"
          description: Deploys Kubecost 2.8.2 via the Helm chart.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: Contact Kubecost for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Kubecost.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The CostAnalyzer API describes a deployment of Kubecost and
              its dependencies.
            displayName: CostAnalyzer
            kind: CostAnalyzer
            name: costanalyzers.charts.kubecost.com
            version: v1alpha1
        description: |2-

          IMPORTANT - Before installation, you must run the following command to allow monitoring of the Kubecost namespace by the local OpenShift Promtheus. If you install in a namespace other than "Kubecost", adjust accordingly.

          `oc label namespace kubecost openshift.io/cluster-monitoring=true`

          Kubecost provides real-time cost visibility and insights for teams using Kubernetes, helping you continuously reduce your cloud costs.

          This OpenShift Operator deploys Kubecost from the official Helm chart.

          Kubecost allows you to:

          * See allocated spend across all native Kubernetes concepts and provide your teams with transparent, accurate cost data reconciled with your actual cloud bill.
          * Join in-cluster costs like CPU and memory with out-of-cluster spend from other cloud services.
          * Get complete cost visibility across OpenShift, On-Prem, AWS, GCP, Azure, Oracle, AliCloud + more.
          * Gain insights you can use to save 30-50%+ on your infrastructure spend, without exposing your private information — your data never gets shared externally, even with us.
          * Have real-time alerts and recurring reports, empowering teams to take control of their Kubernetes-enabled infrastructure and stay within budgeted limits.

          Visit the Kubecost website for more details including features, pricing, documentation, and more at www.kubecost.com.
        displayName: Kubecost
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kubernetes
        - cost
        - kubernetes costs
        - kubernetes optimization
        - k8s
        - cost monitoring
        - cloud costs
        - k8s cost
        links:
        - name: Kubecost
          url: https://www.kubecost.com
        maintainers:
        - email: support@kubecost.com
          name: Kubecost Support
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Kubecost
          url: https://www.kubecost.com
        relatedImages:
        - registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:1b9c9f309e6f41addc7fb6418724a6a6b08486290e31fe1f614efc649874bcef
        - registry.connect.redhat.com/kubecost/kubecost-operator-manager@sha256:582223a66a77f35d1f7ca33460032cfca1581a8ff30f75ead289d8cd4cf62bb9
        - registry.redhat.io/rhel9/grafana@sha256:9f71de028c18034e07a8d15dac13ef68afb91cb899b9e8e7d39703547dd0eac1
        - registry.connect.redhat.com/kubecost/kubecost-cluster-controller@sha256:1a6f11dcd7341ab3f24eba23ec06c7b75646a534a7ed960153601806425469d1
        - registry.connect.redhat.com/kubecost/kubecost-frontend@sha256:f9b2196dc6ac017b8074f8fe40f1a58e7a2630282c5b7a019ca9f3dbdb670dc8
        - registry.connect.redhat.com/kubecost/kubecost-network-costs@sha256:c444d475be4f1aa36680bd84358e1e07303dcfe5d13a95544ad9e59f80d4a5f0
        - registry.connect.redhat.com/kubecost/operator@sha256:2cb5ec186af3264cba42333245616dd01f0f9868a849129b1a31afbc51ee1410
        - registry.connect.redhat.com/kubecost/kubecost-modeling@sha256:8f59f8fd8696964c1b5322ca79fae78befe97323fa56c2b509bdcc67ee4c0edd
        - quay.io/kiwigrid/k8s-sidecar@sha256:d3749777d5bedf62549b452a7e2ccb205da53588dc7f04927efc75d0da5b6d23
        version: 2.8.2
      entries:
      - name: kubecost-operator.v2.8.2
        version: 2.8.2
      - name: kubecost-operator.v2.8.1
        version: 2.8.1
      - name: kubecost-operator.v2.8.0
        version: 2.8.0
      - name: kubecost-operator.v2.7.2
        version: 2.7.2
      - name: kubecost-operator.v2.7.1
        version: 2.7.1
      - name: kubecost-operator.v2.5.4
        version: 2.5.4
      name: alpha
    - currentCSV: kubecost-operator.v3.0.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.kubecost.com/v1",
                "kind": "Kubecost",
                "metadata": {
                  "name": "kubecost-sample"
                },
                "spec": {
                  "global": {
                    "clusterId": "SET_A_UNIQUE_CLUSTER_ID_HERE",
                    "platforms": {
                      "cicd": {
                        "enabled": true,
                        "skipSanityChecks": true
                      },
                      "openshift": {
                        "enabled": true,
                        "route": {
                          "annotations": {},
                          "enabled": false
                        },
                        "scc": {
                          "clusterController": true,
                          "networkCosts": true
                        },
                        "securityContext": {
                          "runAsNonRoot": true,
                          "seccompProfile": {
                            "type": "RuntimeDefault"
                          }
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          createdAt: "2025-12-10T23:50:25Z"
          description: Deploys Kubecost 3.0.6 via the Helm chart.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: Contact Kubecost for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Kubecost.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Kubecost
            name: kubecosts.charts.kubecost.com
            version: v1
        description: |-
          Kubecost provides real-time cost visibility and insights for teams using Kubernetes, helping you continuously reduce your cloud costs.

          This OpenShift Operator deploys Kubecost from the official Helm chart.

          Kubecost allows you to:

          * See allocated spend across all native Kubernetes concepts and provide your teams with transparent, accurate cost data reconciled with your actual cloud bill.
          * Join in-cluster costs like CPU and memory with out-of-cluster spend from other cloud services.
          * Get complete cost visibility across OpenShift, On-Prem, AWS, GCP, Azure, Oracle, AliCloud + more.
          * Gain insights you can use to save 30-50%+ on your infrastructure spend, without exposing your private information — your data never gets shared externally, even with us.
          * Have real-time alerts and recurring reports, empowering teams to take control of their Kubernetes-enabled infrastructure and stay within budgeted limits.

          Visit the Kubecost website for more details including features, pricing, documentation, and more at www.kubecost.com.
        displayName: Kubecost
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kubernetes
        - cost
        - kubernetes costs
        - kubernetes optimization
        - k8s
        - cost monitoring
        - cloud costs
        - k8s cost
        links:
        - name: Kubecost
          url: https://www.kubecost.com
        maintainers:
        - email: support@kubecost.com
          name: Kubecost Support
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Kubecost
          url: https://www.kubecost.com
        relatedImages:
        - registry.connect.redhat.com/kubecost/kubecost-frontend@sha256:4e17cf2dfe83c0de79674cbeb6df7876fb572ee551ba4237a3036610770ad8e6
        - registry.connect.redhat.com/kubecost/kubecost-modeling@sha256:5d1e47f806520bfbb5448df19c0713a89e9a5a7b8e153407ac3eb356d44d979b
        - registry.connect.redhat.com/kubecost/kubecost-network-costs@sha256:3fca4e19e1270c64fdf3f3e7770cee1102c276bf86f6e8f1dded7cae8f005ac4
        - registry.connect.redhat.com/kubecost/kubecost-operator-manager@sha256:686bee59ecbdc1f002520f667e9883caaf0869de4a351154e9ae1c6fd60b4054
        - registry.connect.redhat.com/kubecost/operator@sha256:d04943c19d6e07111bcdada1f98af307dafb17f0107892c4dbc860e69510a728
        - registry.connect.redhat.com/kubecost/ibm-finops-agent@sha256:0ae8416f609c986ebc79819c3e5e29ca7957b40501fdbada8efdec7fa6123d01
        - registry.connect.redhat.com/kubecost/kubecost-cluster-controller@sha256:7389dfb6f47de9e0d9ee3a7d22b6cacd6ef120e08476cceaa3c12e6cea4d1a3c
        - registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:59a3a12bd394a428a99a56add3b3624eafd8adb73eaa4465ece431a0d666030d
        version: 3.0.6
      entries:
      - name: kubecost-operator.v3.0.6
        version: 3.0.6
      - name: kubecost-operator.v3.0.5
        version: 3.0.5
      - name: kubecost-operator.v3.0.4
        version: 3.0.4
      - name: kubecost-operator.v3.0.3
        version: 3.0.3
      - name: kubecost-operator.v3.0.2
        version: 3.0.2
      - name: kubecost-operator.v3.0.1
        version: 3.0.1
      - name: kubecost-operator.v3.0.0
        version: 3.0.0
      name: stable
    defaultChannel: stable
    packageName: kubecost-operator
    provider:
      name: Kubecost
      url: https://www.kubecost.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The CloudNativePG Contributors
      provider-url: ""
    name: cloudnative-pg
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cloudnative-pg.v1.28.0-rc2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: ghcr.io/cloudnative-pg/cloudnative-pg@sha256:97e930eb35abbcf91c913b6c2c11082687da071d902b9cdb086b9b2c0cca33fe
          createdAt: "2025-11-29T16:48:48Z"
          description: CloudNativePG is an open source operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/cloudnative-pg/cloudnative-pg
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.cnpg.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.cnpg.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.cnpg.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.io
            version: v1
        description: |
          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnpg` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: CloudNativePG
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnpg
        links:
        - name: CloudNativePG
          url: https://cloudnative-pg.io/
        - name: Documentation
          url: https://cloudnative-pg.io/docs/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: The CloudNativePG Contributors
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloudnative-pg@sha256:98bb34761d25ec5a6d8b6272ac7b64702512ee398c910b1cba5828b29b86622a
        - ghcr.io/cloudnative-pg/cloudnative-pg@sha256:97e930eb35abbcf91c913b6c2c11082687da071d902b9cdb086b9b2c0cca33fe
        - ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891
        - ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b
        version: 1.28.0-rc2
      entries:
      - name: cloudnative-pg.v1.28.0-rc2
        version: 1.28.0-rc2
      - name: cloudnative-pg.v1.28.0-rc1
        version: 1.28.0-rc1
      - name: cloudnative-pg.v1.27.0-rc1
        version: 1.27.0-rc1
      - name: cloudnative-pg.v1.26.0-rc3
        version: 1.26.0-rc3
      - name: cloudnative-pg.v1.26.0-rc2
        version: 1.26.0-rc2
      - name: cloudnative-pg.v1.26.0-rc1
        version: 1.26.0-rc1
      name: candidate
    - currentCSV: cloudnative-pg.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: ghcr.io/cloudnative-pg/cloudnative-pg@sha256:0869f9b996923aaf3eb761abe032b10ef482eaaef32fc6c604605a7223c13c1b
          createdAt: "2025-12-09T17:23:26Z"
          description: CloudNativePG is an open source operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/cloudnative-pg/cloudnative-pg
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.cnpg.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.cnpg.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.cnpg.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.io
            version: v1
        description: |
          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnpg` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: CloudNativePG
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnpg
        links:
        - name: CloudNativePG
          url: https://cloudnative-pg.io/
        - name: Documentation
          url: https://cloudnative-pg.io/docs/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: The CloudNativePG Contributors
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloudnative-pg@sha256:1301ead85309191e6f91d5c94de7e2569e3b0379172f86332d43dc8bddb94409
        - ghcr.io/cloudnative-pg/cloudnative-pg@sha256:0869f9b996923aaf3eb761abe032b10ef482eaaef32fc6c604605a7223c13c1b
        - ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891
        - ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b
        version: 1.28.0
      entries:
      - name: cloudnative-pg.v1.28.0
        version: 1.28.0
      - name: cloudnative-pg.v1.27.1
        version: 1.27.1
      - name: cloudnative-pg.v1.27.0
        version: 1.27.0
      - name: cloudnative-pg.v1.26.1
        version: 1.26.1
      - name: cloudnative-pg.v1.26.0
        version: 1.26.0
      - name: cloudnative-pg.v1.25.1
        version: 1.25.1
      - name: cloudnative-pg.v1.25.0
        version: 1.25.0
      - name: cloudnative-pg.v1.24.1
        version: 1.24.1
      - name: cloudnative-pg.v1.24.0
        version: 1.24.0
      - name: cloudnative-pg.v1.23.3
        version: 1.23.3
      - name: cloudnative-pg.v1.23.2
        version: 1.23.2
      - name: cloudnative-pg.v1.23.1
        version: 1.23.1
      name: stable-v1
    defaultChannel: stable-v1
    packageName: cloudnative-pg
    provider:
      name: The CloudNativePG Contributors
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ecrpublic-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ecrpublic-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ecrpublic-controller:1.2.0
          createdAt: "2025-11-29T03:26:51Z"
          description: AWS ECR PUBLIC controller is a service controller for managing
            ECR PUBLIC resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Repository represents the state of an AWS ecrpublic Repository
              resource.
            displayName: Repository
            kind: Repository
            name: repositories.ecrpublic.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon ECR PUBLIC resources in AWS from within your Kubernetes cluster.

          **About Amazon ECR PUBLIC**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ECR PUBLIC
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecrpublic
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ECR PUBLIC Developer Resources
          url: https://aws.amazon.com/ECR PUBLIC/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ecrpublic maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ecrpublic-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ecrpublic-controller@sha256:f63dd423730053d25be121eeeda0c5189d3e9bbce4d73963348e7a9220913e36
        version: 1.2.0
      entries:
      - name: ack-ecrpublic-controller.v1.2.0
        version: 1.2.0
      - name: ack-ecrpublic-controller.v1.1.2
        version: 1.1.2
      - name: ack-ecrpublic-controller.v1.1.1
        version: 1.1.1
      - name: ack-ecrpublic-controller.v1.1.0
        version: 1.1.0
      - name: ack-ecrpublic-controller.v1.0.14
        version: 1.0.14
      - name: ack-ecrpublic-controller.v1.0.12
        version: 1.0.12
      name: alpha
    defaultChannel: alpha
    packageName: ack-ecrpublic-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: The bpfman Community
      provider-url: https://bpfman.io/
    name: bpfman-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bpfman-operator.v0.5.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "bpfapplication"
                  },
                  "name": "bpfapplication-sample"
                },
                "spec": {
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/go-app-counter:v0.5.6"
                    }
                  },
                  "nodeselector": {},
                  "programs": [
                    {
                      "kprobe": {
                        "bpffunctionname": "kprobe_counter",
                        "func_name": "try_to_wake_up",
                        "offset": 0,
                        "retprobe": false
                      },
                      "type": "Kprobe"
                    },
                    {
                      "tracepoint": {
                        "bpffunctionname": "tracepoint_kill_recorder",
                        "names": [
                          "syscalls/sys_enter_kill"
                        ]
                      },
                      "type": "Tracepoint"
                    },
                    {
                      "tc": {
                        "bpffunctionname": "stats",
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      },
                      "type": "TC"
                    },
                    {
                      "tcx": {
                        "bpffunctionname": "tcx_stats",
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 500
                      },
                      "type": "TCX"
                    },
                    {
                      "type": "Uprobe",
                      "uprobe": {
                        "bpffunctionname": "uprobe_counter",
                        "containers": {
                          "containernames": [
                            "bpfman",
                            "bpfman-agent"
                          ],
                          "namespace": "bpfman",
                          "pods": {
                            "matchLabels": {
                              "name": "bpfman-daemon"
                            }
                          }
                        },
                        "func_name": "malloc",
                        "retprobe": false,
                        "target": "libc"
                      }
                    },
                    {
                      "type": "XDP",
                      "xdp": {
                        "bpffunctionname": "xdp_stats",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfNsApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "bpfnsapplication"
                  },
                  "name": "bpfapplication-sample",
                  "namespace": "acme"
                },
                "spec": {
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/go-app-counter:v0.5.6"
                    }
                  },
                  "nodeselector": {},
                  "programs": [
                    {
                      "tc": {
                        "bpffunctionname": "stats",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      },
                      "type": "TC"
                    },
                    {
                      "tcx": {
                        "bpffunctionname": "tcx_stats",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 500
                      },
                      "type": "TCX"
                    },
                    {
                      "type": "Uprobe",
                      "uprobe": {
                        "bpffunctionname": "uprobe_counter",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "func_name": "malloc",
                        "retprobe": false,
                        "target": "libc"
                      }
                    },
                    {
                      "type": "XDP",
                      "xdp": {
                        "bpffunctionname": "xdp_stats",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "FentryProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "fentryprogram"
                  },
                  "name": "fentry-example"
                },
                "spec": {
                  "bpffunctionname": "test_fentry",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/fentry:v0.5.6"
                    }
                  },
                  "func_name": "do_unlinkat",
                  "nodeselector": {}
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "FexitProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "fexitprogram"
                  },
                  "name": "fexit-example"
                },
                "spec": {
                  "bpffunctionname": "test_fexit",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/fexit:v0.5.6"
                    }
                  },
                  "func_name": "do_unlinkat",
                  "nodeselector": {}
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "KprobeProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "kprobeprogram"
                  },
                  "name": "kprobe-example"
                },
                "spec": {
                  "bpffunctionname": "my_kprobe",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/kprobe:v0.5.6"
                    }
                  },
                  "func_name": "try_to_wake_up",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeselector": {},
                  "offset": 0,
                  "retprobe": false
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcnsprogram"
                  },
                  "name": "tc-containers",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tc_pass:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "interfaces": [
                      "eth0"
                    ]
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcprogram"
                  },
                  "name": "tc-pass-all-nodes"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tc_pass:v0.5.6"
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "primarynodeinterface": true
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcxNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcxnsprogram"
                  },
                  "name": "tcx-containers",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "tcx_next",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tcx_test:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "interfaces": [
                      "eth0"
                    ]
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcxProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcxprogram"
                  },
                  "name": "tcx-pass-all-nodes"
                },
                "spec": {
                  "bpffunctionname": "tcx_pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tcx_test:v0.5.6"
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "primarynodeinterface": true
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TracepointProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tracepointprogram"
                  },
                  "name": "tracepoint-example"
                },
                "spec": {
                  "bpffunctionname": "enter_openat",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tracepoint:v0.5.6"
                    }
                  },
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "names": [
                    "syscalls/sys_enter_openat"
                  ],
                  "nodeselector": {}
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "UprobeNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "uprobensprogram"
                  },
                  "name": "uprobe-example",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "my_uprobe",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/uprobe:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "func_name": "syscall",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeselector": {},
                  "retprobe": false,
                  "target": "libc"
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "UprobeProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "uprobeprogram"
                  },
                  "name": "uprobe-example"
                },
                "spec": {
                  "bpffunctionname": "my_uprobe",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/uprobe:v0.5.6"
                    }
                  },
                  "func_name": "syscall",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeselector": {},
                  "retprobe": false,
                  "target": "libc"
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "XdpNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "xdpnsprogram"
                  },
                  "name": "xdp-ns-pass-all-nodes",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/xdp_pass:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "interfaces": [
                      "eth0"
                    ]
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "XdpProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "xdpprogram"
                  },
                  "name": "xdp-pass-all-nodes"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/xdp_pass:v0.5.6"
                    }
                  },
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "primarynodeinterface": true
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/bpfman/bpfman-operator:v0.5.6
          createdAt: "2025-02-18T13:44:53Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: bpfman
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "bpfman",
                "labels": {
                  "pod-security.kubernetes.io/enforce": "privileged",
                  "pod-security.kubernetes.io/audit": "privileged",
                  "pod-security.kubernetes.io/warn": "privileged",
                },
                "annotations": {
                  "openshift.io/node-selector": ""
                },
              }
            }
          operators.openshift.io/infrastructure-features: '["csi", "disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/bpfman/bpfman
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BpfApplication is the Schema for the bpfapplications API
            displayName: Bpf Application
            kind: BpfApplication
            name: bpfapplications.bpfman.io
            version: v1alpha1
          - description: BpfNsApplication is the Schema for the BpfNsApplications
              API
            displayName: Bpf Namespaced Application
            kind: BpfNsApplication
            name: bpfnsapplications.bpfman.io
            version: v1alpha1
          - description: BpfNsProgram is the Schema for the BpfNsProgram API
            displayName: Bpf Namespaced Program
            kind: BpfNsProgram
            name: bpfnsprograms.bpfman.io
            version: v1alpha1
          - description: BpfProgram is the Schema for the BpfProgram API
            displayName: Bpf Program
            kind: BpfProgram
            name: bpfprograms.bpfman.io
            version: v1alpha1
          - description: FentryProgram is the Schema for the Fentryprograms API
            displayName: Fentry Program
            kind: FentryProgram
            name: fentryprograms.bpfman.io
            version: v1alpha1
          - description: FexitProgram is the Schema for the Fexitprograms API
            displayName: Fexit Program
            kind: FexitProgram
            name: fexitprograms.bpfman.io
            version: v1alpha1
          - description: KprobeProgram is the Schema for the Kprobeprograms API
            displayName: Kprobe Program
            kind: KprobeProgram
            name: kprobeprograms.bpfman.io
            version: v1alpha1
          - description: TcNsProgram is the Schema for the Tcnsprograms API
            displayName: TC Namespaced Program
            kind: TcNsProgram
            name: tcnsprograms.bpfman.io
            version: v1alpha1
          - description: TcProgram is the Schema for the Tcprograms API
            displayName: TC Program
            kind: TcProgram
            name: tcprograms.bpfman.io
            version: v1alpha1
          - description: TcxNsProgram is the Schema for the Tcxnsprograms API
            displayName: TCX Namespaced Program
            kind: TcxNsProgram
            name: tcxnsprograms.bpfman.io
            version: v1alpha1
          - description: TcxProgram is the Schema for the Tcxprograms API
            displayName: TCX Program
            kind: TcxProgram
            name: tcxprograms.bpfman.io
            version: v1alpha1
          - description: TracepointProgram is the Schema for the Tracepointprograms
              API
            displayName: Tracepoint Program
            kind: TracepointProgram
            name: tracepointprograms.bpfman.io
            version: v1alpha1
          - description: UprobeNsProgram is the Schema for the Uprobensprograms API
            displayName: Uprobe Namespaced Program
            kind: UprobeNsProgram
            name: uprobensprograms.bpfman.io
            version: v1alpha1
          - description: UprobeProgram is the Schema for the Uprobeprograms API
            displayName: Uprobe Program
            kind: UprobeProgram
            name: uprobeprograms.bpfman.io
            version: v1alpha1
          - description: XdpNsProgram is the Schema for the Xdpnsprograms API
            displayName: Xdp Namespaced Program
            kind: XdpNsProgram
            name: xdpnsprograms.bpfman.io
            version: v1alpha1
          - description: XdpProgram is the Schema for the Xdpprograms API
            displayName: Xdp Program
            kind: XdpProgram
            name: xdpprograms.bpfman.io
            version: v1alpha1
        description: "The bpfman Operator is a Kubernetes Operator for deploying [bpfman](https://bpfman.netlify.app/),
          a system daemon\nfor managing eBPF programs. It deploys bpfman itself along
          with CRDs to make deploying\neBPF programs in Kubernetes much easier.\n\n##
          Quick Start\n\nTo get bpfman up and running quickly simply click 'install'
          to deploy the bpfman-operator in the bpfman namespace via operator-hub.\n##
          Configuration\n\nThe `bpfman-config` configmap is automatically created
          in the `bpfman` namespace and used to configure the bpfman deployment.\n\nTo
          edit the config simply run\n\n```bash\nkubectl edit cm bpfman-config\n```\n\nThe
          following fields are adjustable\n\n- `bpfman.agent.image`: The image used
          for the bpfman-agent`\n- `bpfman.image`: The image used for bpfman`\n- `bpfman.log.level`:
          the log level for bpfman, currently supports `debug`, `info`, `warn`, `error`,
          and `fatal`, defaults to `info`\n- `bpfman.agent.log.level`: the log level
          for the bpfman-agent currently supports `info`, `debug`, and `trace` \n\nThe
          bpfman operator deploys eBPF programs via CRDs. The following CRDs are currently
          available, \n\n- BpfApplication\n- FentryProgram\n- FexitProgram\n - KprobeProgram\n-
          TcProgram\n- TcxProgram\n- TracepointProgram\n- UprobeProgram\n- XdpProgram\n
          - BpfNsApplication\n- TcNsProgram\n- TcxNsProgram\n- UprobeNsProgram\n-
          XdpNsProgram\n- BpfProgram\n - BpfNsProgram\n\n ## More information\n\nPlease
          checkout the [bpfman community website](https://bpfman.io/) for more information."
        displayName: Bpfman Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ebpf
        - kubernetes
        links:
        - name: bpfman website
          url: https://bpfman.io/
        maintainers:
        - email: astoycos@redhat.com
          name: Andrew Stoycos
        - email: afredette@redhat.com
          name: Andre Fredette
        maturity: alpha
        provider:
          name: The bpfman Community
          url: https://bpfman.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/bpfman-operator@sha256:6b3603c7c1917c67b5aa57202d1d2fdc0d9ac6b3a9373afa7172f322b3b3fa9b
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/bpfman/bpfman-operator:v0.5.6
        version: 0.5.6
      entries:
      - name: bpfman-operator.v0.5.6
        version: 0.5.6
      - name: bpfman-operator.v0.5.5
        version: 0.5.5
      - name: bpfman-operator.v0.5.4
        version: 0.5.4
      - name: bpfman-operator.v0.5.2
        version: 0.5.2
      - name: bpfman-operator.v0.5.1
        version: 0.5.1
      - name: bpfman-operator.v0.5.0
        version: 0.5.0
      name: alpha
    defaultChannel: alpha
    packageName: bpfman-operator
    provider:
      name: The bpfman Community
      url: https://bpfman.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: keepalived-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keepalived-operator.v1.5.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KeepalivedGroup",
                "metadata": {
                  "name": "keepalivedgroup-workers"
                },
                "spec": {
                  "blacklistRouterIDs": [
                    1,
                    2
                  ],
                  "image": "registry.redhat.io/openshift4/ose-keepalived-ipfailover",
                  "interface": "ens3",
                  "nodeSelector": {
                    "node-role.kubernetes.io/loadbalancer": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Networking, Cloud Provider
          certified: "false"
          containerImage: quay.io/redhat-cop/keepalived-operator@sha256:cd0c2f7df82df1178795e4a18a0942da33adb9670b192a7b7a2b1483a5b4ccf8
          createdAt: "2023-03-11T18:48:22Z"
          description: This operator provides a simple way to create self-hosted load
            balancers using keepalived.
          operatorframework.io/suggested-namespace: keepalived-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/keepalived-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: KeepalivedGroup
            name: keepalivedgroups.redhatcop.redhat.io
            version: v1alpha1
        description: "The objective of the keepalived operator is to allow for a way
          to create self-hosted load balancers in an automated way. From a user experience
          point of view the behavior is the same as of when creating [`LoadBalancer`](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
          services with a cloud provider able to manage them.\n\nThe keepalived operator
          can be used in all environments that allows nodes to advertise additional
          IPs on their NICs (and at least for now, in networks that allow multicast),
          however it's mainly aimed at supporting LoadBalancer services and ExternalIPs
          on bare metal installations (or other installation environments where a
          cloud provider is not available).\n\nOne possible use of the keepalived
          operator is also to support [OpenShift Ingresses](https://docs.openshift.com/container-platform/4.5/networking/configuring_ingress_cluster_traffic/overview-traffic.html)
          in environments where an external load balancer cannot be provisioned.\n\n##
          How it works\n\nThe keepalived operator will create one or more [VIPs](https://en.wikipedia.org/wiki/Virtual_IP_address)
          (an HA IP that floats between multiple nodes), based on the [`LoadBalancer`](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
          services and/or services requesting [`ExternalIPs`](https://kubernetes.io/docs/concepts/services-networking/service/#external-ips).\n\nFor
          `LoadBalancer` services the IPs found at `.Status.LoadBalancer.Ingress[].IP`
          will become VIPs.\n\nFor services requesting a `ExternalIPs`, the IPs found
          at `.Spec.ExternalIPs[]` will become VIPs.\n\nNote that a service can be
          of `LoadBalancer` type and also request `ExternalIPs`, it this case both
          sets of IPs will become VIPs.\n\nDue to a [keepalived](https://www.keepalived.org/manpage.html)
          limitation a single keepalived cluster can manage up to 256 VIP configurations.
          Multiple keepalived clusters can coexists in the same network as long as
          they use different multicast ports [TODO verify this statement].\n\nTo address
          this limitation the `KeepalivedGroup` [CRD](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/)
          has been introduced. This CRD is supposed to be configured by an administrator
          and allows you to specify a node selector to pick on which nodes the keepalived
          pods should be deployed. Here is an example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          KeepalivedGroup\nmetadata:\n  name: keepalivedgroup-router\nspec:\n  image:
          registry.redhat.io/openshift4/ose-keepalived-ipfailover\n  interface: ens3\n
          \ nodeSelector:\n    node-role.kubernetes.io/loadbalancer: \"\"\n  blacklistRouterIDs:\n
          \ - 1\n  - 2  \n```\n\nThis KeepalivedGroup will be deployed on all the
          nodes with role `loadbalancer`. One must also specify the network device
          on which the VIPs will be exposed, it is assumed that all the nodes have
          the same network device configuration.\n\nServices must be annotated to
          opt-in to being observed by the keepalived operator and to specify which
          KeepalivedGroup they refer to. The annotation looks like this:\n\n`keepalived-operator.redhat-cop.io/keepalivedgroup:
          <keepalivedgroup namespace>/<keepalivedgroup-name>`\n\nThe image used for
          the keepalived containers can be specified with `.Spec.Image` it will default
          to `registry.redhat.io/openshift4/ose-keepalived-ipfailover` if undefined.
          \n\n## Requirements\n\n### Security Context Constraints\n\nEach KeepalivedGroup
          deploys a [daemonset](https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/)
          that requires the [privileged scc](https://docs.openshift.com/container-platform/4.5/authentication/managing-security-context-constraints.html),
          this permission must be given to the `default` service account in the namespace
          where the keepalived group is created by and administrator.\n\n```shell\noc
          adm policy add-scc-to-user privileged -z default -n keepalived-operator\n```\n\n###
          Cluster Network Operator\n\nIn Openshift, use of an external IP address
          is governed by the following fields in the `Network.config.openshift.io`
          CR named `cluster`\n\n* `spec.externalIP.autoAssignCIDRs` defines an IP
          address block used by the load balancer when choosing an external IP address
          for the service. OpenShift supports only a single IP address block for automatic
          assignment.\n\n* `spec.externalIP.policy` defines the permissible IP address
          blocks when manually specifying an IP address. OpenShift does not apply
          policy rules to IP address blocks defined by `spec.externalIP.autoAssignCIDRs`\n\nThe
          following patch can be used to configure the Cluster Network Operator:\n\n```yaml\nspec:\n
          \ externalIP:\n    policy:\n      allowedCIDRs:\n      - ${ALLOWED_CIDR}\n
          \   autoAssignCIDRs:\n      - \"${AUTOASSIGNED_CIDR}\"\n```\n\nHere is an
          example of how to apply the patch:\n\n```shell\nexport ALLOWED_CIDR=\"192.168.131.128/26\"\nexport
          AUTOASSIGNED_CIDR=\"192.168.131.192/26\"\noc patch network cluster -p \"$(envsubst
          < ./network-patch.yaml | yq r -j -)\" --type=merge\n```\nAdditionally, the
          fields can be edited manually via `oc edit Network.config.openshift.io cluster`\n\n##
          Blacklisting router IDs\n\nIf the Keepalived pods are deployed on nodes
          which are in the same network (same broadcast domain to be precise) with
          other keepalived the process, it's necessary to ensure that there is no
          collision between the used routers it.\nFor this purpose it is possible
          to provide a `blacklistRouterIDs` field with a list of black-listed IDs
          that will not be used.\n\n## OpenShift RHV, vSphere, OSP and bare metal
          IPI instructions\n\nWhen IPI is used for RHV, vSphere, OSP or bare metal
          platforms, three keepalived VIPs are deployed. To make sure that keepalived-operator
          can work in these environment we need to discover and blacklist the corresponding
          VRRP router IDs.\n\nTo discover the VRRP router IDs being used, run the
          following command, you can run this command from you laptop:\n\n```shell\npodman
          run quay.io/openshift/origin-baremetal-runtimecfg:4.5 vr-ids <cluster_name>\n```\n\nIf
          you don't know your cluster name, run this command:\n\n```shell\npodman
          run quay.io/openshift/origin-baremetal-runtimecfg:4.5 vr-ids $(oc get cm
          cluster-config-v1 -n kube-system -o jsonpath='{.data.install-config}'| yq
          -r .metadata.name)\n```\n\nThen use these [instructions](#Blacklisting-router-IDs)
          to blacklist those VRRP router IDs.\n\n## Verbatim Configurations\n\nKeepalived
          has dozens of [configurations](https://www.keepalived.org/manpage.html).
          At the early stage of this project it's difficult to tell which one should
          be modeled in the API. Yet, users of this project may still need to use
          them. To account for that there is a way to pass verbatim options both at
          the keepalived group level (which maps to the keepalived config `global_defs`
          section) and at the service level (which maps to the keepalived config `vrrp_instance`
          section).\n\nKeepalivedGroup-level verbatim configurations can be passed
          as in the following example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          KeepalivedGroup\nmetadata:\n  name: keepalivedgroup-router\nspec:\n  interface:
          ens3\n  nodeSelector:\n    node-role.kubernetes.io/loadbalancer: \"\"\n
          \ verbatimConfig:  \n    vrrp_iptables: my-keepalived\n```\n\nthis will
          map to the following `global_defs`:\n\n```\n    global_defs {\n        router_id
          keepalivedgroup-router\n        vrrp_iptables my-keepalived\n    }\n```\n\nService-level
          verbatim configurations can be passed as in the following example:\n\n```yaml\napiVersion:
          v1\nkind: Service\nmetadata:\n  annotations:\n    keepalived-operator.redhat-cop.io/keepalivedgroup:
          keepalived-operator/keepalivedgroup-router\n    keepalived-operator.redhat-cop.io/verbatimconfig:
          '{ \"track_src_ip\": \"\" }'\n```\n\nthis will map to the following `vrrp_instance`
          section\n\n```\n    vrrp_instance openshift-ingress/router-default {\n        interface
          ens3\n        virtual_router_id 1  \n        virtual_ipaddress {\n          192.168.131.129\n
          \       }\n        track_src_ip\n    }\n```\n\n## Metrics collection\n\nEach
          keepalived pod exposes a [Prometheus](https://prometheus.io/) metrics port
          at `9650`. Metrics are collected with [keepalived_exporter](github.com/gen2brain/keepalived_exporter),
          the available metrics are described in the project documentation.\n\nWhen
          a keepalived group is created a [`PodMonitor`](https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#podmonitor)
          rule to collect those metrics. All PodMonitor resources created that way
          have the label: `metrics: keepalived`. It is up to you to make sure your
          Prometheus instance watches for those `PodMonitor` rules. Here is an example
          of a fragment of a `Prometheus` CR configured to collect the keepalived
          pod metrics:\n\n```yaml\n  podMonitorSelector:\n    matchLabels:\n      metrics:
          keepalived\n```\n"
        displayName: Keepalived Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - loadbalancer
        - keepalived
        - ipfailover
        - externalIP
        - self-hosted
        links:
        - name: Keepalived Operator
          url: https://github.com/redhat-cop/keepalived-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/keepalived-operator
        maintainers:
        - email: rspazzol@redhat.com'
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/keepalived-operator@sha256:5a46fcb72f02a1f0d9cbc72f44948ef4b09149a4b3fe2e45fd31df90d20b3c56
        - quay.io/redhat-cop/keepalived-operator@sha256:cd0c2f7df82df1178795e4a18a0942da33adb9670b192a7b7a2b1483a5b4ccf8
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.5.4
      entries:
      - name: keepalived-operator.v1.5.4
        version: 1.5.4
      - name: keepalived-operator.v1.5.3
        version: 1.5.3
      - name: keepalived-operator.v1.5.2
        version: 1.5.2
      - name: keepalived-operator.v1.5.1
        version: 1.5.1
      - name: keepalived-operator.v1.5.0
        version: 1.5.0
      - name: keepalived-operator.v1.4.2
        version: 1.4.2
      - name: keepalived-operator.v1.4.1
        version: 1.4.1
      - name: keepalived-operator.v1.4.0
        version: 1.4.0
      - name: keepalived-operator.v1.3.4
        version: 1.3.4
      - name: keepalived-operator.v1.3.3
        version: 1.3.3
      - name: keepalived-operator.v1.3.2
        version: 1.3.2
      - name: keepalived-operator.v1.3.1
        version: 1.3.1
      - name: keepalived-operator.v1.3.0
        version: 1.3.0
      - name: keepalived-operator.v1.2.2
        version: 1.2.2
      - name: keepalived-operator.v1.2.1
        version: 1.2.1
      - name: keepalived-operator.v1.2.0
        version: 1.2.0
      - name: keepalived-operator.v1.1.0
        version: 1.1.0
      - name: keepalived-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: keepalived-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Pulp Community
      provider-url: https://github.com/pulp/pulp-operator
    name: pulp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pulp-operator.v1.0.0-alpha.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "Pulp",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "api": {
                    "replicas": 1
                  },
                  "cache_enabled": true,
                  "content": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "file_storage_access_mode": "ReadWriteMany",
                  "file_storage_size": "10Gi",
                  "ingress_type": "Route",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/pulp/"
                  },
                  "storage_type": "File",
                  "worker": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "Pulp",
                "metadata": {
                  "name": "example-pulp"
                },
                "spec": {
                  "api": {
                    "replicas": 1
                  },
                  "cache": {
                    "enabled": true,
                    "redis_storage_class": "standard"
                  },
                  "content": {
                    "replicas": 1
                  },
                  "database": {
                    "postgres_storage_class": "standard"
                  },
                  "deployment_type": "pulp",
                  "file_storage_access_mode": "ReadWriteOnce",
                  "file_storage_size": "2Gi",
                  "file_storage_storage_class": "standard",
                  "image_version": "nightly",
                  "image_web_version": "nightly",
                  "ingress_type": "nodeport",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/pulp/",
                    "telemetry": false
                  },
                  "web": {
                    "replicas": 1
                  },
                  "worker": {
                    "replicas": 1
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "Pulp",
                "metadata": {
                  "name": "galaxy-example"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "api": {
                    "replicas": 1
                  },
                  "content": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "database": {
                    "postgres_storage_class": "standard"
                  },
                  "deployment_type": "galaxy",
                  "file_storage_access_mode": "ReadWriteMany",
                  "file_storage_size": "10Gi",
                  "file_storage_storage_class": "standard",
                  "image": "quay.io/pulp/galaxy-minimal",
                  "image_version": "nightly",
                  "image_web": "quay.io/pulp/galaxy-web",
                  "image_web_version": "nightly",
                  "ingress_type": "nodeport",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/api/galaxy/pulp/",
                    "telemetry": false
                  },
                  "signing_scripts_configmap": "signing-scripts",
                  "signing_secret": "signing-galaxy",
                  "storage_type": "File",
                  "web": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "worker": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "PulpBackup",
                "metadata": {
                  "name": "pulpbackup-sample"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "backup_storage_class": "standard",
                  "deployment_name": "galaxy-example",
                  "deployment_type": "galaxy",
                  "instance_name": "pulp",
                  "postgres_configuration_secret": "galaxy-example-postgres-configuration"
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "PulpRestore",
                "metadata": {
                  "name": "ci-pulprestore"
                },
                "spec": {
                  "backup_name": "pulpbackup-sample",
                  "deployment_name": "galaxy-example"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          containerImage: quay.io/pulp/pulp-operator:v1.0.0-alpha.1
          createdAt: "2021-03-26 16:57:40"
          description: Pulp is a platform for managing repositories of software packages
            and making them available to a large number of consumers.
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/pulp/pulp-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PulpBackup is the Schema for the pulpbackups API
            displayName: Pulp Backup
            kind: PulpBackup
            name: pulpbackups.repo-manager.pulpproject.org
            version: v1alpha1
          - description: PulpRestore is the Schema for the pulprestores API
            displayName: Pulp Restore
            kind: PulpRestore
            name: pulprestores.repo-manager.pulpproject.org
            version: v1alpha1
          - description: Pulp is the Schema for the pulps API
            displayName: Pulp
            kind: Pulp
            name: pulps.repo-manager.pulpproject.org
            version: v1alpha1
        description: |-
          [Pulp](https://pulpproject.org/) is a platform for managing repositories of content, such as software packages, and making them available to a large number of consumers.

          With Pulp you can:

          * Locally mirror all or part of a repository
          * Host your own content in a new repository
          * Manage content from multiple sources in one place
          * Promote content through different repos in an organized way

          If you have dozens, hundreds, or thousands of software packages and need a better way to manage them, Pulp can help.

          Pulp is completely free and open-source!

          * License: GPLv2+
          * Documentation: [https://docs.pulpproject.org/](https://docs.pulpproject.org/)
          * Source: [https://github.com/pulp/pulpcore/](https://github.com/pulp/pulpcore/)

          For more information, check out the project website: [https://pulpproject.org](https://pulpproject.org)

          If you want to evaluate Pulp quickly, try [Pulp in One Container](https://pulpproject.org/pulp-in-one-container/)

          ## Pulp Operator

          Pulp Operator is under active development, with the goal to provide a scalable and robust cluster for Pulp 3.

          Note that Pulp operator works with three different types of service containers (the operator itself, the main service and the web service):

          |           | Operator | Main | Web |
          | --------- | -------- | ---- | --- |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[pulp-minimal](https://quay.io/repository/pulp/pulp-minimal?tab=tags) | [pulp-web](https://quay.io/repository/pulp/pulp-web?tab=tags) |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[galaxy-minimal](https://quay.io/repository/pulp/galaxy-minimal?tab=tags) | [galaxy-web](https://quay.io/repository/pulp/galaxy-web?tab=tags) |

          <br>Pulp operator is manually built and [hosted on quay.io](https://quay.io/repository/pulp/pulp-operator). Read more about the container images [here](https://docs.pulpproject.org/pulp_operator/container/).

          ## Custom Resource Definitions
          Pulp Operator currently provides three different kinds of [Custom Resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#custom-resources): Pulp, Pulp Backup and Pulp Restore.
          ### Pulp
          Manages the Pulp application and its deployments, services, etc.
          ### Pulp Backup
          Manages pulp backup.

          ### Pulp Restore
          Manages the restoration of a pulp backup.

          ## Get Help

          Documentation: [https://docs.pulpproject.org/pulp_operator/](https://docs.pulpproject.org/pulp_operator/)

          Issue Tracker: [https://github.com/pulp/pulp-operator/issues](https://github.com/pulp/pulp-operator/issues)

          Forum: [https://discourse.pulpproject.org/](https://discourse.pulpproject.org/)

          Join [**#pulp** on Matrix](https://matrix.to/#/#pulp:matrix.org)

          Join [**#pulp-dev** on Matrix](https://matrix.to/#/#pulp-dev:matrix.org) for Developer discussion.
        displayName: Pulp Project
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pulp
        - pulpcore
        - content
        - repositories
        - lifecycle
        links:
        - name: Pulp Operator
          url: https://github.com/pulp/pulp-operator
        - name: Pulp Project
          url: https://pulpproject.org/
        - name: Docs
          url: https://docs.pulpproject.org/pulp_operator/
        maintainers:
        - email: pulp-list@redhat.com
          name: Pulp Community
        maturity: beta
        provider:
          name: Pulp Community
          url: https://github.com/pulp/pulp-operator
        relatedImages:
        - docker.io/library/postgres:13
        - docker.io/library/redis:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/openshift-community-operators/pulp-operator@sha256:1926e96b185443ff0c7a2861cefc2e3aded0c0493e0d7f7d78e45447e06750d4
        - quay.io/pulp/pulp-minimal:stable
        - quay.io/pulp/pulp-operator:v1.0.0-alpha.1
        - quay.io/pulp/pulp-web:stable
        version: 1.0.0-alpha.1
      entries:
      - name: pulp-operator.v1.0.0-alpha.1
        version: 1.0.0-alpha.1
      name: alpha
    - currentCSV: pulp-operator.v1.0.0-beta.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "Pulp",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "api": {
                    "replicas": 1
                  },
                  "cache": {
                    "enabled": true
                  },
                  "content": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "ingress_type": "nodeport",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/pulp/"
                  },
                  "worker": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "Pulp",
                "metadata": {
                  "name": "galaxy-example"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "api": {
                    "replicas": 1
                  },
                  "content": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "database": {
                    "postgres_storage_class": "standard"
                  },
                  "deployment_type": "galaxy",
                  "file_storage_access_mode": "ReadWriteMany",
                  "file_storage_size": "10Gi",
                  "file_storage_storage_class": "standard",
                  "image": "quay.io/pulp/galaxy-minimal",
                  "image_version": "4.6.3",
                  "image_web": "quay.io/pulp/galaxy-web",
                  "image_web_version": "4.6.3",
                  "ingress_type": "nodeport",
                  "nodeport_port": 30000,
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "analytics": false,
                    "ansible_api_hostname": "http://nodeport.local:30000",
                    "api_root": "/api/galaxy/pulp/",
                    "content_origin": "http://nodeport.local:30000",
                    "galaxy_feature_flags": {
                      "ai_deny_index": true,
                      "execution_environments": true
                    },
                    "token_server": "http://nodeport.local:30000/token/"
                  },
                  "signing_scripts": "signing-scripts",
                  "signing_secret": "signing-galaxy",
                  "web": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "worker": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "PulpBackup",
                "metadata": {
                  "name": "pulpbackup-sample"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "backup_storage_class": "standard",
                  "deployment_name": "galaxy-example",
                  "deployment_type": "galaxy",
                  "postgres_configuration_secret": "galaxy-example-postgres-configuration"
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "PulpRestore",
                "metadata": {
                  "name": "ci-pulprestore"
                },
                "spec": {
                  "backup_name": "pulpbackup-sample",
                  "deployment_name": "galaxy-example"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/pulp/pulp-operator:v1.0.0-beta.4
          createdAt: "2024-01-18T20:33:37Z"
          description: Pulp is a platform for managing repositories of software packages
            and making them available to a large number of consumers.
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/pulp/pulp-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PulpBackup is the Schema for the pulpbackups API
            displayName: Pulp Backup
            kind: PulpBackup
            name: pulpbackups.repo-manager.pulpproject.org
            version: v1beta2
          - description: PulpRestore is the Schema for the pulprestores API
            displayName: Pulp Restore
            kind: PulpRestore
            name: pulprestores.repo-manager.pulpproject.org
            version: v1beta2
          - description: Pulp is the Schema for the pulps API
            displayName: Pulp
            kind: Pulp
            name: pulps.repo-manager.pulpproject.org
            version: v1beta2
        description: |-
          [Pulp](https://pulpproject.org/) is a platform for managing repositories of content, such as software packages, and making them available to a large number of consumers.

          With Pulp you can:

          * Locally mirror all or part of a repository
          * Host your own content in a new repository
          * Manage content from multiple sources in one place
          * Promote content through different repos in an organized way

          If you have dozens, hundreds, or thousands of software packages and need a better way to manage them, Pulp can help.

          Pulp is completely free and open-source!

          * License: GPLv2+
          * Documentation: [https://docs.pulpproject.org/](https://docs.pulpproject.org/)
          * Source: [https://github.com/pulp/pulpcore/](https://github.com/pulp/pulpcore/)

          For more information, check out the project website: [https://pulpproject.org](https://pulpproject.org)

          If you want to evaluate Pulp quickly, try [Pulp in One Container](https://pulpproject.org/pulp-in-one-container/)

          ## Pulp Operator

          Pulp Operator is under active development, with the goal to provide a scalable and robust cluster for Pulp 3.

          Note that Pulp operator works with three different types of service containers (the operator itself, the main service and the web service):

          |           | Operator | Main | Web |
          | --------- | -------- | ---- | --- |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[pulp-minimal](https://quay.io/repository/pulp/pulp-minimal?tab=tags) | [pulp-web](https://quay.io/repository/pulp/pulp-web?tab=tags) |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[galaxy-minimal](https://quay.io/repository/pulp/galaxy-minimal?tab=tags) | [galaxy-web](https://quay.io/repository/pulp/galaxy-web?tab=tags) |

          <br>Pulp operator is manually built and [hosted on quay.io](https://quay.io/repository/pulp/pulp-operator). Read more about the container images [here](https://docs.pulpproject.org/pulp_operator/container/).

          ## Custom Resource Definitions
          Pulp Operator currently provides three different kinds of [Custom Resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#custom-resources): Pulp, Pulp Backup and Pulp Restore.
          ### Pulp
          Manages the Pulp application and its deployments, services, etc.
          ### Pulp Backup
          Manages pulp backup.

          ### Pulp Restore
          Manages the restoration of a pulp backup.

          ## Get Help

          Documentation: [https://docs.pulpproject.org/pulp_operator/](https://docs.pulpproject.org/pulp_operator/)

          Issue Tracker: [https://github.com/pulp/pulp-operator/issues](https://github.com/pulp/pulp-operator/issues)

          Forum: [https://discourse.pulpproject.org/](https://discourse.pulpproject.org/)

          Join [**#pulp** on Matrix](https://matrix.to/#/#pulp:matrix.org)

          Join [**#pulp-dev** on Matrix](https://matrix.to/#/#pulp-dev:matrix.org) for Developer discussion.
        displayName: Pulp Project
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pulp
        - pulpcore
        - content
        - repositories
        - lifecycle
        links:
        - name: Pulp Operator
          url: https://github.com/pulp/pulp-operator
        - name: Pulp Project
          url: https://pulpproject.org/
        - name: Docs
          url: https://docs.pulpproject.org/pulp_operator/
        maintainers:
        - email: pulp-list@redhat.com
          name: Pulp Community
        maturity: beta
        provider:
          name: Pulp Community
          url: https://github.com/pulp/pulp-operator
        relatedImages:
        - quay.io/pulp/pulp-operator:v1.0.0-beta.4
        - quay.io/pulp/pulp-web:stable
        - docker.io/library/postgres:13
        - docker.io/library/redis:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.14.4
        - quay.io/community-operator-pipeline-prod/pulp-operator@sha256:1e75649538f13cf3bb2e6131160f038a70689d6f92a110bdcec348e865040c4a
        - quay.io/pulp/pulp-minimal:stable
        version: 1.0.0-beta.4
      entries:
      - name: pulp-operator.v1.0.0-beta.4
        version: 1.0.0-beta.4
      - name: pulp-operator.v1.0.0-beta.3
        version: 1.0.0-beta.3
      - name: pulp-operator.v1.0.0-beta.2
        version: 1.0.0-beta.2
      - name: pulp-operator.v1.0.0-beta.1
        version: 1.0.0-beta.1
      - name: pulp-operator.v1.0.0-alpha.9
        version: 1.0.0-alpha.9
      - name: pulp-operator.v1.0.0-alpha.8
        version: 1.0.0-alpha.8
      - name: pulp-operator.v1.0.0-alpha.7
        version: 1.0.0-alpha.7
      - name: pulp-operator.v1.0.0-alpha.6
        version: 1.0.0-alpha.6
      - name: pulp-operator.v1.0.0-alpha.5
        version: 1.0.0-alpha.5
      - name: pulp-operator.v1.0.0-alpha.4
        version: 1.0.0-alpha.4
      - name: pulp-operator.v1.0.0-alpha.3
        version: 1.0.0-alpha.3
      - name: pulp-operator.v1.0.0-alpha.2
        version: 1.0.0-alpha.2
      - name: pulp-operator.v1.0.0-alpha.1
        version: 1.0.0-alpha.1
      name: beta
    defaultChannel: beta
    packageName: pulp-operator
    provider:
      name: Pulp Community
      url: https://github.com/pulp/pulp-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Altair Engineering Inc.
      provider-url: ""
    name: anzounstructured-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: anzounstructured-operator.v3.1.300
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "anzounstructured.clusters.cambridgesemantics.com/v1",
                "kind": "AnzoUnstructured",
                "metadata": {
                  "name": "au01"
                },
                "spec": {
                  "auWorker": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app": "anzounstructured"
                          }
                        },
                        "serviceName": "au-au01-w",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app": "anzounstructured"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzo-unstructured-worker@sha256:94e4686d284c876a3dca36f7dfad7a06755f70ece16bf365b3933138b9283aa2",
                                "name": "w",
                                "resources": {
                                  "limits": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  },
                                  "requests": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  }
                                }
                              }
                            ],
                            "serviceAccountName": "unstructured-operator"
                          }
                        }
                      }
                    }
                  },
                  "msLeader": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app": "anzounstructured"
                          }
                        },
                        "serviceName": "au-au01-ms",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app": "anzounstructured"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzo-microservices-leader@sha256:3575310a78b08818781cab678d98f31160f539cf7c99c3601a86beb5bcf3d9fb",
                                "name": "ms",
                                "resources": {
                                  "limits": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  },
                                  "requests": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  }
                                }
                              }
                            ],
                            "serviceAccountName": "unstructured-operator"
                          }
                        }
                      }
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Basic Install
          categories: Database, Big Data
          certified: "true"
          containerImage: registry.connect.redhat.com/cambridgesemantics/unstructured-operator@sha256:597df02d6e3be3bc42929559c6a14369bc8e5183a39fb6db32f56f1ea6d6b50b
          createdAt: "2025-10-08T07:30:55Z"
          description: Kubernetes Operator for Altair Graph Studio Unstructured
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: unknown
          repository: ""
          support: Cambridge Semantics
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnzoUnstructured is the Schema for the anzounstructureds
              API
            displayName: Altair Graph Studio Unstructured Operator
            kind: AnzoUnstructured
            name: anzounstructureds.anzounstructured.clusters.cambridgesemantics.com
            version: v1
        description: |-
          The Altair Graph Studio Unstructured Operator provides the way to install and configure an anzo unstructured setup on Red Hat K8S environment.
          Currently, this is possible only through existing Anzo installation.

          ### Installation
           Refer [installation instructions]( https://github.com/cambridgesemantics/csi-k8s-operator-anzo-unstructured/blob/v3.1.3/README.md )

          ### Documentation

          You can find our documentation [here.]( https://docs.cambridgesemantics.com/anzo/userdoc/cloud-deployments.htm )

          ### Support

          We offer Support to our customers [here]( https://altair.com/customer-support ) or by emailing the Data Analytics Support team at dasupport@altair.com.
        displayName: Altair Graph Studio Unstructured Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Database
        - Big Data
        links:
        - name: Altair Graph Studio Unstructured Operator
          url: https://github.com/cambridgesemantics/csi-k8s-operator-anzo-unstructured/blob/v3.1.3/README.md
        maintainers:
        - email: fschwichtenberg@altair.com
          name: Frank Schwichtenberg
        maturity: stable
        provider:
          name: Altair Engineering Inc.
        relatedImages:
        - registry.connect.redhat.com/cambridgesemantics/unstructured-operator@sha256:597df02d6e3be3bc42929559c6a14369bc8e5183a39fb6db32f56f1ea6d6b50b
        - registry.connect.redhat.com/cambridgesemantics/anzo-microservices-leader@sha256:3575310a78b08818781cab678d98f31160f539cf7c99c3601a86beb5bcf3d9fb
        - registry.connect.redhat.com/cambridgesemantics/anzo-unstructured-operator-bundle@sha256:cd5c4d5023b5021bae1067ef460bfa65bc50bb804c50331d622edaca6508d9f1
        - registry.connect.redhat.com/cambridgesemantics/anzo-unstructured-worker@sha256:94e4686d284c876a3dca36f7dfad7a06755f70ece16bf365b3933138b9283aa2
        version: 3.1.300
      entries:
      - name: anzounstructured-operator.v3.1.300
        version: 3.1.300
      - name: anzounstructured-operator.v3.1.200
        version: 3.1.200
      - name: anzounstructured-operator.v3.1.104
        version: 3.1.104
      - name: anzounstructured-operator.v3.1.103
        version: 3.1.103
      name: stable
    defaultChannel: stable
    packageName: anzounstructured-operator
    provider:
      name: Altair Engineering Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: mercury-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mercury-operator.1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mercury.redhat.io/v1alpha1",
                "kind": "ServiceDomainInfra",
                "metadata": {
                  "name": "my-example-sdi",
                  "labels": {
                    "app": "examples"
                  }
                },
                "spec": {
                  "kafka": {
                    "replicas": 3,
                    "storage": {
                      "type": "persistent-claim",
                      "size": "100Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "mercury.redhat.io/v1alpha1",
                "kind": "ServiceDomain",
                "metadata": {
                  "name": "example-customer-credit-rating",
                  "labels": {
                    "app": "example"
                  }
                },
                "spec": {
                  "businessImage": "quay.io/ecosystem-appeng/customer-credit-rating-example:1.0.1",
                  "serviceDomainInfra": "my-example-sdi",
                  "type": "CustomerCreditRating",
                  "expose": ["http"]
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/ecosystem-appeng/mercury-operator:1.0.1
          description: Deploys and manages BIAN Service Domains with the Mercury framework
          repository: https://github.com/open-accelerators/mercury
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A Service Domain Infra represents a group of Service Domains that interact between themselves and
              share the same infrastructure resources
            displayName: Service Domain Infra
            kind: ServiceDomainInfra
            name: servicedomaininfras.mercury.redhat.io
            version: v1alpha1
          - description: |-
              A Service Domain is a standalone service representing one of the BIAN defined Service Domains.
              e.g. Customer Offer. A Service Domain must belong to a Service Domain Infra
            displayName: Service Domain
            kind: ServiceDomain
            name: servicedomains.mercury.redhat.io
            version: v1alpha1
          required:
          - kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - kind: Integration
            name: integrations.camel.apache.org
            version: v1
        description: |-
          # An open platform for a modular, digital bank

          Project Mercury aims at developing a solution approach for the modernization of core banking systems, exploring new technologies and ways of operating in an open hybrid cloud. Creating and enabling the foundation of an open platform for modular, digital banking. Using open-source software and open standards currently available, combined with industry best practices.

          The provided reference implementation can serve as an example. While some resulting artifacts leverage the expertise of developing this solution approach can become reusable templates, repeatable processes, and building blocks of cloud-native components and applications.

          We invite the collaboration of technology experts and experienced business practitioners across the financial services industry to join and participate in co-creation.
        displayName: Mercury Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bian
        - mercury
        links:
        - name: GitHub Repository
          url: https://github.com/open-accelerators/mercury
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/mercury-operator@sha256:0c253fd002cb389db40b2438d4d1c9e953a84125dbf0f4b6f5e3a6efd87cf3a6
        - quay.io/ecosystem-appeng/mercury-operator:1.0.1
        version: 1.0.1
      entries:
      - name: mercury-operator.1.0.1
        version: 1.0.1
      name: 1.0.x
    defaultChannel: 1.0.x
    packageName: mercury-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: stolostron
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stolostron.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "operator.open-cluster-management.io/v1",
            "kind": "MultiClusterHub", "metadata": {"name": "multiclusterhub", "namespace":
            "open-cluster-management"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/stolostron/multiclusterhub-operator@sha256:b00318c5b7b8cd04dc80df188e466853d9c007c854fc16fe5c49c3118b87b348
          createdAt: "2025-11-05T18:50:10Z"
          description: Advanced management of OpenShift and Kubernetes clusters
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1",
            "kind":"MultiClusterHub","metadata":{"name":"multiclusterhub","namespace":"stolostron"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: stolostron
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          repository: https://github.com/stolostron/stolostron
          support: Stolostron Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MulticlusterHub defines the configuration
              for an instance of a multicluster hub, a central point for managing multiple
              Kubernetes-based clusters. The deployment of multicluster hub components
              is determined based on the configuration that is defined in this resource.
            displayName: MultiClusterHub
            kind: MultiClusterHub
            name: multiclusterhubs.operator.open-cluster-management.io
            version: v1
        description: 'Stolostron provides the multicluster hub, a central management
          console for managing multiple Kubernetes-based clusters across data centers,
          public clouds, and private clouds. You can use the hub to create Red Hat
          OpenShift Container Platform clusters on selected providers, or import existing
          Kubernetes-based clusters. After the clusters are managed, you can set compliance
          requirements to ensure that the clusters maintain the specified security
          requirements. You can also deploy business applications across your clusters. '
        displayName: Stolostron
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - install
        - multiclusterhub
        links:
        - name: Documentation
          url: https://github.com/stolostron/stolostron
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: pre-release
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/stolostron/postgresql-12@sha256:da0b8d525b173ef472ff4c71fae60b396f518860d6313c4f3287b844aab6d622
        - quay.io/stolostron/flightctl-worker@sha256:7ad048be0df7dae5f3c322bdc48ed4d1ea52c6e78ad5379c839ad2da4aca8c1a
        - quay.io/stolostron/grc-policy-framework-tests@sha256:ca9492e998c82910b6968111f6173a90fda693c0f98661ad51919da080fa1c59
        - quay.io/stolostron/cluster-proxy-addon@sha256:5c9df70888b1cbc5209b0217bd0312991e6320cd9442e72e208f0af1498aa2f1
        - quay.io/stolostron/redis-7-c9s@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/search-operator-bundle@sha256:d3fbacdcc760259c7abda625c6964d1ad4382b6988a98be0f8f33bbd951dc7be
        - quay.io/stolostron/governance-policy-propagator@sha256:33ce7bdfe0a60411398962ef653b3b877cfb87671b8367b95de4118d000768d5
        - quay.io/stolostron/applifecycle-backend-e2e@sha256:05da11b343938866c5afcfe844bcd15d9c513fdb10fd7ea0d3473b455b427c2a
        - quay.io/stolostron/observatorium@sha256:ed9d70744cc9072d5f096b11bf6e24d83e02a4f8824399b52f3eb1916b897e8c
        - quay.io/stolostron/flightctl-ui@sha256:0eb00d63e1e9a52fd09483bd745e1090c93e71c1f1e1cc56851c70ec5810885c
        - quay.io/stolostron/multiclusterhub-operator@sha256:b00318c5b7b8cd04dc80df188e466853d9c007c854fc16fe5c49c3118b87b348
        - quay.io/stolostron/search-e2e@sha256:51dde02f030e09ef60cafdaaaaaa2e3ed2d37b1ffebe6a355d33bb1aaaa1984b
        - quay.io/stolostron/mtv-integrations@sha256:ea42533e46b99b871bc6cc04a376079e96ef0d4e368b01d5c14de18b791a46f5
        - quay.io/stolostron/multicluster-global-hub-operator@sha256:106efd2686b2ed1b975503f69a509b31c5534b11823739c5a411081f4ac65aed
        - quay.io/stolostron/prometheus@sha256:3bb172a2b7eec02d2543cb48a17b8d8749d5a88ccec9f54ec626c68922473756
        - quay.io/stolostron/multiclusterhub-operator-tests@sha256:12fd6f287fecfea68fc06914b90a50cb75f09c101eb66b9c01f1414e3677d31f
        - quay.io/stolostron/cert-policy-controller@sha256:18dd1db4780f97508a41a1fb80524347366ab1fe706e387f27af25f5458e5f6b
        - quay.io/stolostron/search-collector@sha256:87804b34cecd327768d4468f0a41e9994a1dc3b03afa8754a1a6369e8841622f
        - quay.io/stolostron/origin-cli@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/prometheus-alertmanager@sha256:8735f212888379caff4bec1ae5ff1909c5eecd5e2ce3ce51eb1bbd7b9e54a4b4
        - quay.io/stolostron/postgresql-13@sha256:f8c4c4364ab8d27d2c774cbd02a0d02b9d6e3cb6e8d69af728cdd889df312b56
        - quay.io/stolostron/flightctl-userinfo-proxy@sha256:3c09c290fd935bc32b5ba50d347cd83c9216ffbe4fa196229ff4ef5c1a714818
        - quay.io/stolostron/origin-oauth-proxy-48@sha256:c92a1480b2628d50d8fe158df9451598406e2e5cc7177cf5efcb81caba120afd
        - quay.io/stolostron/helloworld@sha256:4465550664bd210cf0df8edfd706de2fc51cacf01b66a962b5607935f9666ebc
        - quay.io/stolostron/klusterlet-addon-controller@sha256:b927b9b80a4016c4564792ed7326faa67468d4e01ca2b35cf9367e4151f01205
        - quay.io/stolostron/endpoint-monitoring-operator@sha256:ffd1920f90eb7b868414528d5c26656c1fddd84753a9a26ecd16700ca7d2abbe
        - quay.io/stolostron/console@sha256:0c35078ebdf547dac53ba04011e8a60304526bf2af38d98889ca5c17754088fc
        - quay.io/stolostron/grafana-dashboard-loader@sha256:901b5239063a2b0dc265ef3d2938a2c6b888ae7745af43b4283901ad63857d18
        - quay.io/community-operator-pipeline-prod/stolostron@sha256:924b3d003d81dc9cddb23276fe1b764f492e8d9d9247793881ff5bacd95ad4d6
        - quay.io/stolostron/flightctl-db-setup@sha256:44d8d92431035647d8639bfbdbe6c1654f058e0b3276dd5dc24947b335df51c0
        - quay.io/stolostron/kube-state-metrics@sha256:8401353f4de5017e3ec39e4c090753927b0eac986142d886920abf859364da99
        - quay.io/stolostron/thanos-receive-controller@sha256:713d979636547ed46a71ffd4cc02ed7be0deabf777cd431434f01efb27113797
        - quay.io/stolostron/multicluster-operators-channel@sha256:608e7ee661e3e33bf24a12d5353f2fddb5b490c1dbce554f890e0e8a3451f0c6
        - quay.io/stolostron/siteconfig-operator@sha256:91287560901e88799f009ae88da62571c70395bacb344dfedc0c1ac8d5f2660f
        - quay.io/stolostron/flightctl-api@sha256:a9f6e3a11e677820d1d37220b3b5c16c442d5cb4a9da2324e6d4388d8c85f960
        - quay.io/stolostron/metrics-collector@sha256:b743b28b54ae38549713ff24e29d7d7fe9367388d77a18d9a29215be44fa83c4
        - quay.io/stolostron/observatorium-operator@sha256:ba7b2ae31f88208647e7f6b1c238fa89b7c1c91591eddba082d90ac4ab3f709d
        - quay.io/stolostron/must-gather@sha256:0634da33001f41e709ad0414c1062187af76799a188f4535e197358b20656a09
        - quay.io/stolostron/flightctl-periodic@sha256:3c30398ca6f2f5da385e7554bb77a95562d595ae29e72c687ac80737931272a1
        - quay.io/stolostron/multicloud-integrations@sha256:20fc5ce8fdff0931d21d6ec556166eb6dbd986dd566105b029a12ac6abd189d1
        - quay.io/stolostron/insights-client@sha256:15ce834bf864b4d415592ca08d45c74447e4c804d7dbace45b761d3772f515ad
        - quay.io/stolostron/prometheus-operator@sha256:d3e2d11a868de9796abc939ffa97ca549845e6463ba20d0493385421ca8ecae3
        - quay.io/stolostron/multicluster-observability-operator@sha256:2bebf578b17058ab00baa51ec3b74d5d924a27faf1c36b9fae7784ebef47b87e
        - quay.io/stolostron/acm-cli@sha256:edd0eca7da92ac675237059b8c774fd39198c4ec39ab3c71f013b816cf95b62b
        - quay.io/stolostron/origin-oauth-proxy-49-and-up@sha256:0e72ed64cdf76828392ef8cfe4ee49d644a013ac00ff1590d6c53774d77615e3
        - quay.io/stolostron/helloprow-go@sha256:0671c58cc5c1f3fb9e00ae58ad6ef2c1f470867e26637b823261e9ab9279f05e
        - quay.io/stolostron/origin-oauth-proxy-415-and-below@sha256:41762eda03298362d3f97e1fd0be4af429d22658b520f94023941655e062d1a1
        - quay.io/stolostron/flightctl-alert-exporter@sha256:6fc5faba5bd241970751b78072a99695c27756ae793395e9e7f8255d15633623
        - quay.io/stolostron/node-exporter@sha256:80f4bba97684bcebd2e8be3460f47db90dec6432f7f1ae025105d9a438345f52
        - quay.io/stolostron/origin-oauth-proxy-416-and-up@sha256:0b1051e9e7a18a81a9156bbc182424ad3eb480968256a4765cfd07c13bf4931a
        - quay.io/stolostron/search-indexer@sha256:29b90a727c1aed8bf2b439bc24b3adf2d1499dca5055275e0d682db632aff237
        - quay.io/stolostron/cluster-permission@sha256:a495b3baff27bb75dbb9e18e7b7e9a38969847bc188f8c7d17868557e5394e3e
        - quay.io/stolostron/origin-oauth-proxy@sha256:c92a1480b2628d50d8fe158df9451598406e2e5cc7177cf5efcb81caba120afd
        - quay.io/stolostron/kube-rbac-proxy@sha256:d90d4dfb5e0f8eec50bcfc86d4c457123f26cc961e632e26e25f24c5d6699a8c
        - quay.io/stolostron/submariner-addon@sha256:765404364ab4a206f6a198b833ad7c3f47f42781487c2e994a1a3a99a30ad4d4
        - quay.io/stolostron/thanos@sha256:38e9d0c45556878b81c3ef8b05ce6c8bef37597859c390153d34c44de183ef91
        - quay.io/stolostron/cluster-proxy@sha256:decd4ebdad2fcadd15fcc4be977ac85f5bb6331afcd96dc862626ae8e1f58691
        - quay.io/stolostron/observability-e2e-test@sha256:bab2ceda615b69d37cb42595eea4d915001ea6115ea7dd1b4a753ac6480307f5
        - quay.io/stolostron/multicluster-operators-subscription@sha256:7cdecaf11316290512e88483b259f682f78589a9e351e334d0b6c109adcf75d8
        - quay.io/stolostron/cluster-templates-operator@sha256:133e5cede92a5dbe9373982c851ca40134fc4de8665e54de60ecc7738f9f50f7
        - quay.io/stolostron/insights-metrics@sha256:ccf217a70625f2b53e76c6ab1916286b31ba89664aa93d638293b54677c73595
        - quay.io/stolostron/postgresql-16@sha256:db2f73275f9cc0f2d262fadb8e8a5da72b089f9d22f7c859bb1364d9f9a8b622
        - quay.io/stolostron/prometheus-config-reloader@sha256:cac144214cd8d76eda94f6aa2bf55d1cda05a5817c1b6152231c7f1473eee35b
        - quay.io/stolostron/cluster-lifecycle-e2e@sha256:1d997d1238d92c852e35162be21c338ff87216e4f92bce24203b997da827197c
        - quay.io/stolostron/grafana@sha256:791c6a90290eb08bbc87d9384042e6246e38e404d2c73958ca962d113c83b83a
        - quay.io/stolostron/flightctl-cli-artifacts@sha256:7bfde294440629efb65c0b5bf22ba0eb12e28a81d0f5da31951eac325501fc85
        - quay.io/stolostron/rbac-query-proxy@sha256:d3496b4c01df742ce8a255f55937335fdb9e55e12a252fd7f8b3ccee1ac8e137
        - quay.io/stolostron/search-v2-api@sha256:f959f84c38b15481e147241772af7a9b840743ac25bd1d02d53751c33f07edb7
        - quay.io/stolostron/multicluster-operators-application@sha256:d5de12b22f933b1c14131d938fd2b6c2081675e039cbb00a8266e94ccd56a375
        - quay.io/stolostron/flightctl-ocp-ui@sha256:5874277619745aacae1b8f8c52cf3c89d70d9097f4e3574a960c1591019ecac1
        - quay.io/stolostron/governance-policy-addon-controller@sha256:0954a617e01bb1b6b052addd29bc99273bd6e9562f36761e87d5735f8debb3e6
        - quay.io/stolostron/search-v2-operator@sha256:0bfe92b74ae6f0f91d3b4c66616aa71c1e8dcfbdafa7ec9a82af792d2bfa92d4
        - quay.io/stolostron/flightctl-alertmanager-proxy@sha256:f5636ff13374fb4fa40d5f3a0b29d10e5d8a04d4275374f7b84a22cb47aa4be5
        - quay.io/stolostron/multicluster-role-assignment@sha256:345b72961a8cc94d21cc7510ae800263e2d97454966d4a8ed4c9a466bc3be19d
        - quay.io/stolostron/volsync-addon-controller@sha256:c95a7e58c42d5ae875cbd7359af0397f2d3cd740c6608240bf4020de1ba73a0e
        - quay.io/stolostron/analytics-recommends@sha256:1d4a3cfb193992bed84578661affc31be25523966af3aea9f13d1d52498bac8b
        - quay.io/stolostron/governance-policy-framework-addon@sha256:a6779f2c42f3f117654a3b380f4c3e9ba858f3bbfe011801fe2fb36fa6168433
        - quay.io/stolostron/iam-policy-controller@sha256:27cefc2f923d7ed216f7e650b569551668d1f67f0047b6b98902d37032f6ab92
        - quay.io/stolostron/bailer@sha256:b6d0f5ff086a0a19e98ef4b60ac4e1c3f61e775863ee772d7829395800eb6492
        - quay.io/stolostron/cluster-backup-controller@sha256:cf3ec9d108e5da4bae12532ab2099eb6244a3015bf347589896367fbcba7c6c9
        - quay.io/stolostron/config-policy-controller@sha256:e9b900ab0b2c04826fea52d88469185d877426b61d023a942570d14c6217591c
        version: 0.8.2
      entries:
      - name: stolostron.v0.8.2
        version: 0.8.2
      - name: stolostron.v0.8.0
        version: 0.8.0
      name: community-0.8
    defaultChannel: community-0.8
    packageName: stolostron
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: namespace-configuration-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: namespace-configuration-operator.v1.2.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupConfig",
                "metadata": {
                  "name": "test-groupconfig"
                },
                "spec": {
                  "labelSelector": {
                    "matchLabels": {
                      "type": "team"
                    }
                  },
                  "templates": [
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-dev\n  labels:\n    group: {{ .Name }}  \n"
                    },
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-qa\n  labels:\n    group: {{ .Name }}          \n"
                    },
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-prod\n  labels:\n    group: {{ .Name }}                           \n"
                    },
                    {
                      "objectTemplate": "apiVersion: quota.openshift.io/v1\nkind: ClusterResourceQuota\nmetadata:\n  name: {{ .Name }}-quota\nspec:\n  quota:\n    hard:\n      pods: \"4\" \n      requests.cpu: \"1\" \n      requests.memory: 1Gi \n      requests.ephemeral-storage: 2Gi \n      limits.cpu: \"2\" \n      limits.memory: 2Gi \n      limits.ephemeral-storage: 4Gi\n  selector:\n    labels:\n      matchLabels:\n        group: {{ .Name }}\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "NamespaceConfig",
                "metadata": {
                  "name": "test-namespaceconfig"
                },
                "spec": {
                  "labelSelector": {
                    "matchLabels": {
                      "type": "secure"
                    }
                  },
                  "templates": [
                    {
                      "objectTemplate": "apiVersion: v1\nkind: ResourceQuota\nmetadata:\n  name: standard-sandbox\n  namespace: {{ .Name }}\nspec:\n  hard:\n    pods: \"4\" \n    requests.cpu: \"1\" \n    requests.memory: 1Gi \n    requests.ephemeral-storage: 2Gi \n    limits.cpu: \"2\" \n    limits.memory: 2Gi \n    limits.ephemeral-storage: 4Gi\n"
                    },
                    {
                      "objectTemplate": "kind: EgressNetworkPolicy\napiVersion: network.openshift.io/v1\nmetadata:\n  name: air-gapped\n  namespace: {{ .Name }}  \nspec:\n  egress:\n  - type: Deny\n    to:\n      cidrSelector: 0.0.0.0/0\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "UserConfig",
                "metadata": {
                  "name": "test-user-config"
                },
                "spec": {
                  "providerName": "my-provider",
                  "templates": [
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-sandbox\n"
                    },
                    {
                      "objectTemplate": "apiVersion: v1\nkind: ResourceQuota\nmetadata:\n  name: standard-sandbox\n  namespace: {{ .Name }}-sandbox\nspec:\n  hard:\n    pods: \"4\" \n    requests.cpu: \"1\" \n    requests.memory: 1Gi \n    requests.ephemeral-storage: 2Gi \n    limits.cpu: \"2\" \n    limits.memory: 2Gi \n    limits.ephemeral-storage: 4Gi\n"
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/namespace-configuration-operator@sha256:49ed7d6155342adaa2b12fd80c6761c3081d8e6149d187cb7ff91a247cdf2e7a
          createdAt: "2023-11-22T15:58:50Z"
          description: This operator provides a facility to define and enforce namespace
            configurations
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: namespace-configuration-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/namespace-configuration-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GroupConfig is the Schema for the groupconfigs API
            displayName: Group Config
            kind: GroupConfig
            name: groupconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: NamespaceConfig is the Schema for the namespaceconfigs API
            displayName: Namespace Config
            kind: NamespaceConfig
            name: namespaceconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: UserConfig is the Schema for the userconfigs API
            displayName: User Config
            kind: UserConfig
            name: userconfigs.redhatcop.redhat.io
            version: v1alpha1
        description: "The `namespace-configuration-operator` helps keeping configurations
          related to Users, Groups and Namespaces aligned with one of more policies
          specified as a CRs. The purpose is to provide the foundational building
          block to create an end-to-end onboarding process. \nBy onboarding process
          we mean all the provisioning steps needed to a developer team working on
          one or more applications to OpenShift.\n This usually involves configuring
          resources such as: Groups, RoleBindings, Namespaces, ResourceQuotas, NetworkPolicies,
          EgressNetworkPolicies, etc.... . Depending on the specific environment the
          list could continue.\nNaturally such a process should be as automatic and
          scalable as possible.\n\nWith the namespace-configuration-operator one can
          create rules that will react to the creation of Users, Groups and Namespace
          and will create and enforce a set of resources.\n\nHere are some examples
          of the type of onboarding processes that one could support:\n\n1. [developer
          sandbox](https://github.com/redhat-cop/namespace-configuration-operator/blob/master/examples/user-sandbox/readme.md)\n
          2. [team onboarding](https://github.com/redhat-cop/namespace-configuration-operator//blob/master/examples/team-onboarding/readme.md)
          with support of the entire SDLC in a multitentant environment.\n\nPolicies
          can be expressed with the following CRDs:\n\n| Watched Resource | CRD |\n|--|--|\n
          | Groups | [GroupConfig](#GroupConfig) |\n| Users | [UserConfig](#UserConfig)
          |\n| Namespace | [NamespaceConfig](#NamespaceConfig) |\n\nThese CRDs all
          share some commonalities:\n\n1. Templated Resources\n2. List of ignored
          jason path\n \n### Templated Resources\n\nEach has a parameter called `templatedResources`,
          which is an array. Each element of the array has two fields `objectTemplate`
          and `excludedPaths` (see below).\n\nThe `objectTemplate` field must contains
          a [go template](https://golang.org/pkg/text/template/) that resolves to
          a single API Resource expressed in `yaml`. The template is merged with the
          object selected by the CR. For example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n
          kind: UserConfig\nmetadata:\n  name: test-user-config\nspec:\n  provider:
          corp-ldap\n  templates:\n  - objectTemplate: |\n      apiVersion: v1\n      kind:
          Namespace\n      metadata:\n        name: {{ .Name }}-sandbox\n```\n\nThis
          create a rule in which every time a user from the `corp-ldap` provider is
          created, a namespace called `<username>-sandbox` is also created.\n\n###
          Excluded Paths\n\nThe logic of the `namespace-configuration-operator` is
          to enforce that the resources resolved by processing the templates \"stays
          in place\". In other words if those resources are changed and/or deleted
          they will be reset by the operator.\nBut there are situations in which at
          least part of a resource is allowed to change. Common use cases are: annotations
          and in general the metadata section of a resource can be updated by the
          various operators watching that resources. The status field is often updated
          by the main operator managing that resources. Finally, when applicable the
          `spec.replicas` field should also be allowed to change.\n\nTo handle special
          use case, one can also specify additional *jsonpaths* that should be ignored
          when comparing the desired resource and the current resource and making
          a decision on whether that resource should be reset.\n\nThe following paths
          are always included:\n \n1. `.metadata`\n2. `.status`\n3. `.spec.replicas`\n\n##
          NamespaceConfig\n\n The `NamespaceConfig` CR allows specifying one or more
          objects that will be created in the selected namespaces.\n\nNamespaces can
          be selected by labels or annotations via a label selector for example:\n\n```yaml\napiVersion:
          redhatcop.redhat.io/v1alpha1\n kind: NamespaceConfig\nmetadata:\n  name:
          small-namespace\n  selector:\n    matchLabels:\n      size: small  \n  resources:\n
          \ - apiVersion: v1\n    kind: ResourceQuota\n    metadata:\n      name:
          small-size  \n    spec:\n      hard:\n        requests.cpu: \"4\"\n        requests.memory:
          \"2Gi\"\n```\n\nHere is a `NamespaceConfig` object using a `matchExpressions`
          selector:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n kind: NamespaceConfig\nmetadata:\n
          \ name: tier-config\nspec:\n  annotationSelector:\n    matchExpressions:\n
          \     - {key: tier, operator: In, values: [gold,silver]}\n ```\n\nAlthough
          not enforced by the operator the general expectation is that the NamespaceConfig
          CR will be used to create objects inside the selected namespace.\n \nExamples
          of NamespaceConfig usages can be found [here](https://github.com/redhat-cop/namespace-configuration-operator/blob/master/examples/namespace-config/readme.md)\n
          \n## GroupConfig\n\nThe `GroupConfig` CR allows specifying one or more objects
          that will be created in the selected Group.\nGroups can be selected by labels
          or annotations via a label selector, similarly to the `NamespaceConfig`.\n\nOften
          groups are created in OpenShift by a job that synchronizes an Identity Provider
          with OCP. So the idea is that when new groups are added or deleted the configuration
          in OpenShift will adapt automatically.\n\nAlthough not enforced by the operator,
          GroupConfig are expected to create cluster-scoped resources like Namespaces,
          ClusterResourceQuotas and potentially some namespaced resources like RoleBindings.\n\n##
          UserConfig\n \nIn OpenShift an external user is defined by two entities:
          Users and Identities. There is a relationship of on to many between Users
          and Identities. Given one user, there can be one Identity per authentication
          mechanism.\n\nThe `UserConfig` CR allows specifying one or more objects
          that will be created in the selected User.\nUsers can be selected by label
          or annotation like `NamespaceConfig` and `UserConfig`.\nUSers can also be
          selected by provider name (the name of the authentication mechanism) and
          identity extra field.\n\nHere is an example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          UserConfig\nmetadata:\n  name: test-user-config\nspec:\n  providerName:
          okta-provider\n  identityExtraFieldSelector:\n    matchLabels:\n      sandbox_enabled:
          \"true\"\n  templates:\n  - objectTemplate: |\n      apiVersion: v1\n      kind:
          Namespace\n      metadata:\n        name: {{ .Name }}-sandbox\n ```\n\nUser
          will be selected by this `UserConfig` only if they login via the *okta-provider*
          and if the extra field was populate with the label `sandbox_enabled: \"true\"
          `. Note that not all authentication provider allow populating the extra
          fields in the Identity object.\n"
        displayName: Namespace Configuration Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - namespace
        - user
        - group
        - configuration
        - policy
        - management
        links:
        - name: Namespace Configuration Operator
          url: https://github.com/redhat-cop/namespace-configuration-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/namespace-configuration-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/namespace-configuration-operator@sha256:971991d2bf717001a98b175c50580cd7db9d230492e72670606c2ed50c53feb0
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/namespace-configuration-operator@sha256:49ed7d6155342adaa2b12fd80c6761c3081d8e6149d187cb7ff91a247cdf2e7a
        version: 1.2.6
      entries:
      - name: namespace-configuration-operator.v1.2.6
        version: 1.2.6
      - name: namespace-configuration-operator.v1.2.5
        version: 1.2.5
      - name: namespace-configuration-operator.v1.2.4
        version: 1.2.4
      - name: namespace-configuration-operator.v1.2.3
        version: 1.2.3
      - name: namespace-configuration-operator.v1.2.2
        version: 1.2.2
      - name: namespace-configuration-operator.v1.2.1
        version: 1.2.1
      - name: namespace-configuration-operator.v1.2.0
        version: 1.2.0
      - name: namespace-configuration-operator.v1.1.0
        version: 1.1.0
      - name: namespace-configuration-operator.v1.0.7
        version: 1.0.7
      - name: namespace-configuration-operator.v1.0.6
        version: 1.0.6
      - name: namespace-configuration-operator.v1.0.5
        version: 1.0.5
      - name: namespace-configuration-operator.v1.0.4
        version: 1.0.4
      - name: namespace-configuration-operator.v1.0.3
        version: 1.0.3
      - name: namespace-configuration-operator.v1.0.2
        version: 1.0.2
      - name: namespace-configuration-operator.v1.0.1
        version: 1.0.1
      - name: namespace-configuration-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: namespace-configuration-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Snyk Ltd.
      provider-url: ""
    name: snyk-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: snyk-operator.v1.92.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.helm.k8s.io/v1alpha1",
                "kind": "SnykMonitor",
                "metadata": {
                  "name": "snyk-monitor"
                },
                "spec": {
                  "clusterName": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "snyk/kubernetes-monitor",
                    "tag": "1.92.0-ubi8"
                  },
                  "integrationApi": "",
                  "monitorSecrets": "snyk-monitor",
                  "scope": "Cluster",
                  "temporaryStorageSize": "50Gi",
                  "pvc": {
                    "enabled": false,
                    "create": false,
                    "name": "snyk-monitor-pvc",
                    "storageClassName": null
                  },
                  "initContainerImage": {
                    "repository": "busybox",
                    "tag": "latest"
                  },
                  "requests": {
                    "memory": "400Mi"
                  },
                  "limits": {
                    "memory": "2Gi"
                  },
                  "nodeAffinity": {
                    "disableBetaArchNodeSelector": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Security
          certified: "false"
          containerImage: docker.io/snyk/kubernetes-operator:1.92.0
          createdAt: "2022-06-09T17:49:36Z"
          description: A Kubernetes Operator for creating and managing Snyk controller
            instances.
          olm.skipRange: <1.68.2
          repository: https://github.com/snyk/kubernetes-monitor
          support: Snyk Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a deployment of the Snyk controller, which scans
              container images in the cluster for vulnerabilities.
            displayName: Snyk Monitor
            kind: SnykMonitor
            name: snykmonitors.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          A Kubernetes Operator for creating and managing Snyk Kubernetes controller instances.

          Snyk integrates with Kubernetes, enabling you to import and test your running workloads and identify vulnerabilities in their associated images and configurations that might make those workloads less secure. Once imported, Snyk continues to monitor those workloads, identifying additional security issues as new images are deployed and the workload configuration changes.

          ## Prerequisites

          To start using the Operator and the Snyk controller that it manages, you will need to create a secret containing your Snyk integrationId and Docker config file:

          ```
          kubectl create namespace snyk-monitor
          kubectl create secret generic snyk-monitor -n snyk-monitor --from-literal=dockercfg.json={} --from-literal=integrationId=${SNYK_INTEGRATION_ID}
          ```

          Refer to the [Snyk documentation](https://support.snyk.io/hc/en-us/articles/360003916138-Kubernetes-integration-overview) for more details.
        displayName: Snyk Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - snyk
        - controller
        - monitor
        - operator
        - security
        - cluster
        - container
        - image
        - security
        - vulnerabilities
        - advisories
        - audit
        - scan
        - scanning
        links:
        - name: Website
          url: https://snyk.io
        - name: Documentation
          url: https://support.snyk.io/hc/en-us/articles/360003916138-Kubernetes-integration-overview
        maintainers:
        - email: support@snyk.io
          name: Snyk Ltd.
        maturity: stable
        provider:
          name: Snyk Ltd.
        relatedImages:
        - quay.io/openshift-community-operators/snyk-operator@sha256:97908144406700ae9c038316661dc7904f3e0f4e01b1bbdf68259b59dfb86d6c
        - docker.io/snyk/kubernetes-operator:1.92.0
        version: 1.92.0
      entries:
      - name: snyk-operator.v1.92.0
        version: 1.92.0
      - name: snyk-operator.v1.90.2
        version: 1.90.2
      - name: snyk-operator.v1.90.1
        version: 1.90.1
      - name: snyk-operator.v1.88.4
        version: 1.88.4
      - name: snyk-operator.v1.85.2
        version: 1.85.2
      - name: snyk-operator.v1.82.1
        version: 1.82.1
      - name: snyk-operator.v1.81.1
        version: 1.81.1
      - name: snyk-operator.v1.80.0
        version: 1.80.0
      - name: snyk-operator.v1.73.0
        version: 1.73.0
      - name: snyk-operator.v1.72.0
        version: 1.72.0
      - name: snyk-operator.v1.70.4
        version: 1.70.4
      - name: snyk-operator.v1.70.1
        version: 1.70.1
      name: stable
    defaultChannel: stable
    packageName: snyk-operator
    provider:
      name: Snyk Ltd.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: keycloak-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keycloak-operator.v19.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "example-keycloakrealm",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realm": {
                    "id": "basic",
                    "realm": "basic",
                    "enabled": true,
                    "displayName": "Basic Realm"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakBackup",
                "metadata": {
                  "name": "example-keycloakbackup"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "client-secret",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  },
                  "client": {
                    "clientId": "client-secret",
                    "secret": "client-secret",
                    "clientAuthenticatorType": "client-secret"
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakUser",
                "metadata": {
                  "name": "example-realm-user",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "user": {
                    "username": "realm_user",
                    "firstName": "John",
                    "lastName": "Doe",
                    "email": "user@example.com",
                    "enabled": true,
                    "emailVerified": false
                  },
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "False"
          containerImage: quay.io/keycloak/keycloak-operator:19.0.3-legacy
          createdAt: "2022-10-07 17:00:00"
          description: An Operator for installing and managing Keycloak
          repository: https://github.com/keycloak/keycloak-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak Realm
            displayName: KeycloakRealm
            kind: KeycloakRealm
            name: keycloakrealms.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak Backup
            displayName: KeycloakBackup
            kind: KeycloakBackup
            name: keycloakbackups.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak Client
            displayName: KeycloakClient
            kind: KeycloakClient
            name: keycloakclients.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak User
            displayName: KeycloakUser
            kind: KeycloakUser
            name: keycloakusers.keycloak.org
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
          * Import Keycloak Clients
          * Import Keycloak Users
          * Create scheduled backups of the database
          * Install Extensions
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/docs/latest/server_installation/index.html#_operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@lists.jboss.org
          name: Keycloak DEV mailing list
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/keycloak/keycloak-operator:19.0.3-legacy
        - quay.io/openshift-community-operators/keycloak-operator@sha256:a4da3bcbb4e99d60b8217d9e62742eeb83eef163dfefb2f7efda131f312e46e3
        version: 19.0.3
      entries:
      - name: keycloak-operator.v19.0.3
        version: 19.0.3
      - name: keycloak-operator.v19.0.2
        version: 19.0.2
      - name: keycloak-operator.v19.0.1
        version: 19.0.1
      - name: keycloak-operator.v19.0.0
        version: 19.0.0
      - name: keycloak-operator.v18.0.2
        version: 18.0.2
      - name: keycloak-operator.v18.0.1
        version: 18.0.1
      - name: keycloak-operator.v18.0.0
        version: 18.0.0
      - name: keycloak-operator.v17.0.1
        version: 17.0.1
      - name: keycloak-operator.v17.0.0
        version: 17.0.0
      - name: keycloak-operator.v16.1.0
        version: 16.1.0
      - name: keycloak-operator.v16.0.0
        version: 16.0.0
      - name: keycloak-operator.v15.1.1
        version: 15.1.1
      - name: keycloak-operator.v15.1.0
        version: 15.1.0
      - name: keycloak-operator.v15.0.2
        version: 15.0.2
      - name: keycloak-operator.v15.0.1
        version: 15.0.1
      - name: keycloak-operator.v15.0.0
        version: 15.0.0
      - name: keycloak-operator.v14.0.0
        version: 14.0.0
      name: alpha
    - currentCSV: keycloak-operator.v20.0.0-alpha.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": "example.org",
                  "tlsSecret": "my-tls-secret"
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "False"
          containerImage: quay.io/keycloak/keycloak-operator:19.0.3
          createdAt: 10/07/22 17:00:00
          description: An Operator for installing and managing Keycloak
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/docs/latest/server_installation/index.html#_operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@lists.jboss.org
          name: Keycloak DEV mailing list
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/keycloak/keycloak-operator:19.0.3
        - quay.io/openshift-community-operators/keycloak-operator@sha256:65fe00f310289b70538a6dde897ef663731d0da44a7bb1d0f55a3001a50e53fa
        version: 20.0.0-alpha.7
      entries:
      - name: keycloak-operator.v20.0.0-alpha.7
        version: 20.0.0-alpha.7
      - name: keycloak-operator.v20.0.0-alpha.6
        version: 20.0.0-alpha.6
      - name: keycloak-operator.v20.0.0-alpha.5
        version: 20.0.0-alpha.5
      - name: keycloak-operator.v20.0.0-alpha.4
        version: 20.0.0-alpha.4
      - name: keycloak-operator.v20.0.0-alpha.3
        version: 20.0.0-alpha.3
      - name: keycloak-operator.v20.0.0-alpha.2
        version: 20.0.0-alpha.2
      - name: keycloak-operator.v20.0.0-alpha.1
        version: 20.0.0-alpha.1
      name: candidate
    - currentCSV: keycloak-operator.v26.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: quay.io/keycloak/keycloak-operator:26.4.7
          createdAt: "2025-12-01T08:24:52Z"
          description: An Operator for installing and managing Keycloak
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: batch
          kind: Job
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: networking.k8s.io
          kind: NetworkPolicy
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/keycloak/keycloak-operator:26.4.7
        - quay.io/community-operator-pipeline-prod/keycloak-operator@sha256:157776c3e6cd0016d7791ffed92f0bfe5ca2658485b427b4e76ddc0c0b37924b
        version: 26.4.7
      entries:
      - name: keycloak-operator.v26.4.7
        version: 26.4.7
      - name: keycloak-operator.v26.4.6
        version: 26.4.6
      - name: keycloak-operator.v26.4.5
        version: 26.4.5
      - name: keycloak-operator.v26.4.4
        version: 26.4.4
      - name: keycloak-operator.v26.4.2
        version: 26.4.2
      - name: keycloak-operator.v26.4.1
        version: 26.4.1
      - name: keycloak-operator.v26.4.0
        version: 26.4.0
      - name: keycloak-operator.v26.3.5
        version: 26.3.5
      - name: keycloak-operator.v26.3.4
        version: 26.3.4
      - name: keycloak-operator.v26.3.3
        version: 26.3.3
      - name: keycloak-operator.v26.3.2
        version: 26.3.2
      - name: keycloak-operator.v26.3.1
        version: 26.3.1
      - name: keycloak-operator.v26.3.0
        version: 26.3.0
      - name: keycloak-operator.v26.2.5
        version: 26.2.5
      - name: keycloak-operator.v26.2.4
        version: 26.2.4
      - name: keycloak-operator.v26.2.3
        version: 26.2.3
      - name: keycloak-operator.v26.2.2
        version: 26.2.2
      - name: keycloak-operator.v26.2.1
        version: 26.2.1
      - name: keycloak-operator.v26.2.0
        version: 26.2.0
      - name: keycloak-operator.v26.1.5
        version: 26.1.5
      - name: keycloak-operator.v26.1.4
        version: 26.1.4
      - name: keycloak-operator.v26.1.3
        version: 26.1.3
      - name: keycloak-operator.v26.1.2
        version: 26.1.2
      - name: keycloak-operator.v26.1.1
        version: 26.1.1
      - name: keycloak-operator.v26.1.0
        version: 26.1.0
      - name: keycloak-operator.v26.0.8
        version: 26.0.8
      - name: keycloak-operator.v26.0.7
        version: 26.0.7
      - name: keycloak-operator.v26.0.6
        version: 26.0.6
      - name: keycloak-operator.v26.0.5
        version: 26.0.5
      - name: keycloak-operator.v26.0.4
        version: 26.0.4
      - name: keycloak-operator.v26.0.2
        version: 26.0.2
      - name: keycloak-operator.v26.0.1
        version: 26.0.1
      - name: keycloak-operator.v26.0.0
        version: 26.0.0
      - name: keycloak-operator.v25.0.6
        version: 25.0.6
      - name: keycloak-operator.v25.0.5
        version: 25.0.5
      - name: keycloak-operator.v25.0.4
        version: 25.0.4
      - name: keycloak-operator.v25.0.2
        version: 25.0.2
      - name: keycloak-operator.v25.0.1
        version: 25.0.1
      - name: keycloak-operator.v25.0.0
        version: 25.0.0
      - name: keycloak-operator.v24.0.5
        version: 24.0.5
      - name: keycloak-operator.v24.0.4
        version: 24.0.4
      - name: keycloak-operator.v24.0.3
        version: 24.0.3
      - name: keycloak-operator.v24.0.2
        version: 24.0.2
      - name: keycloak-operator.v24.0.1
        version: 24.0.1
      - name: keycloak-operator.v24.0.0
        version: 24.0.0
      - name: keycloak-operator.v23.0.7
        version: 23.0.7
      - name: keycloak-operator.v23.0.6
        version: 23.0.6
      - name: keycloak-operator.v23.0.5
        version: 23.0.5
      - name: keycloak-operator.v23.0.4
        version: 23.0.4
      - name: keycloak-operator.v23.0.3
        version: 23.0.3
      - name: keycloak-operator.v23.0.2
        version: 23.0.2
      - name: keycloak-operator.v23.0.1
        version: 23.0.1
      - name: keycloak-operator.v23.0.0
        version: 23.0.0
      - name: keycloak-operator.v22.0.5
        version: 22.0.5
      - name: keycloak-operator.v22.0.4
        version: 22.0.4
      - name: keycloak-operator.v22.0.3
        version: 22.0.3
      - name: keycloak-operator.v22.0.2
        version: 22.0.2
      - name: keycloak-operator.v22.0.1
        version: 22.0.1
      - name: keycloak-operator.v22.0.0
        version: 22.0.0
      - name: keycloak-operator.v21.1.2
        version: 21.1.2
      - name: keycloak-operator.v21.1.1
        version: 21.1.1
      - name: keycloak-operator.v21.1.0
        version: 21.1.0
      - name: keycloak-operator.v21.0.2
        version: 21.0.2
      - name: keycloak-operator.v21.0.1
        version: 21.0.1
      - name: keycloak-operator.v21.0.0
        version: 21.0.0
      - name: keycloak-operator.v20.0.3
        version: 20.0.3
      - name: keycloak-operator.v20.0.2
        version: 20.0.2
      - name: keycloak-operator.v20.0.1
        version: 20.0.1
      - name: keycloak-operator.v20.0.0
        version: 20.0.0
      name: fast
    defaultChannel: fast
    packageName: keycloak-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: logic-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: logic-operator.v1.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "host/namespace",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          createdAt: "2025-09-28T18:26:11Z"
          description: OpenShift Serverless Logic Kubernetes Operator for deploying
            workflow applications based on the CNCF Serverless Workflow specification
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: openshift-serverless-logic
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kubesmarts/kie-tools
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: Sonata Flow Build
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: Sonata Flow Cluster Platform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: Sonata Flow Platform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: Sonata Flow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          OpenShift Serverless Logic Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification v0.8](https://serverlessworkflow.io/).
        displayName: OpenShift Serverless Logic Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        - workflows
        links:
        - name: Documentation
          url: https://docs.openshift.com/serverless/
        - name: Source Repository
          url: https://github.com/kiegroup/kogito-serverless-operator/
        maintainers:
        - email: serverless-logic-team@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/logic-swf-devmode-rhel9@sha256:e51b77bde368c4d34b9e1536677c1bd02182c2d6ee3a999d63f213c6853510ea
        - registry.redhat.io/openshift-serverless-1/logic-data-index-postgresql-rhel9@sha256:071078f5f5963fb07d0b161fa925c4681045229778cc911800a54529a14b3797
        - registry.redhat.io/openshift-serverless-1/logic-operator-bundle@sha256:90f9864ae2872acaedf12afc9c707e26bdaba0ef48623153ad0881b1b9945dc9
        - registry.redhat.io/openshift-serverless-1/logic-rhel9-operator@sha256:e7e35b4a80ed8261f09b474c3449f34071bc9636f151ea6604c1f9efd5195827
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4564ca3dc5bac80d6faddaf94c817fbbc270698a9399d8a21ee1005d85ceda56
        - registry.redhat.io/openshift-serverless-1/logic-data-index-ephemeral-rhel9@sha256:bac7496c5c95f529494625778deb14a7c429f2d2aff988b8fca3968de5751f00
        - registry.redhat.io/openshift-serverless-1/logic-jobs-service-postgresql-rhel9@sha256:10503b5a1f1629df1ee61d9009e720f625c05df515078157ba5ed683c1308012
        - registry.redhat.io/openshift-serverless-1/logic-swf-builder-rhel9@sha256:37490d642d03a627f434d806fffae5b0e1245a4fe0d5fee6b13bfff162314af1
        - registry.redhat.io/openshift-serverless-1/logic-jobs-service-ephemeral-rhel9@sha256:b9522442546f5daf0d2481794e9a565fa08c6db9b6db1f9e8c2a7824b2562e33
        - registry.redhat.io/openshift-serverless-1/logic-db-migrator-tool-rhel9@sha256:6818e069bf9ab89cddd5cea1c2e93c6dd1707c479cc21f116e33d8e6db345ad8
        version: 1.37.0
      entries:
      - name: logic-operator.v1.37.0
        version: 1.37.0
      name: stable
    defaultChannel: stable
    packageName: logic-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.0-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: lvms-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lvms-operator.v4.19.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "my-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "default": true,
                        "fstype": "xfs",
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:3701735419e2e68b3c579a68c48106f00b8fb7c1915200ee37437cc0f73a975a
          description: Logical volume manager storage provides dynamically provisioned
            local storage for container workloads
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.2.0 <4.19.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |-
            {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "test-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
          operatorframework.io/suggested-namespace: openshift-storage
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-storage",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/internal-objects: '["logicalvolumes.topolvm.io",
            "lvmvolumegroups.lvm.topolvm.io", "lvmvolumegroupnodestatuses.lvm.topolvm.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lvm-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: LogicalVolume
            name: logicalvolumes.topolvm.io
            version: v1
          - description: LVMCluster is the Schema for the lvmclusters API
            displayName: LVMCluster
            kind: LVMCluster
            name: lvmclusters.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroupNodeStatus
            name: lvmvolumegroupnodestatuses.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroup
            name: lvmvolumegroups.lvm.topolvm.io
            version: v1alpha1
        description: Logical volume manager storage provides dynamically provisioned
          local storage.
        displayName: LVM Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - local storage
        - operator
        - LVM
        links:
        - name: Source Repository
          url: https://github.com/openshift/lvm-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:1e455df18829d87ac99cc7673e1a236fa8f4cc4cc2f56c922810acc0af98cc65
        - registry.redhat.io/lvms4/lvms-operator-bundle@sha256:db9b7aa0d4feb713d0e9a0d122f9be41c95761de356a592012eea8bc52351209
        - registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:3701735419e2e68b3c579a68c48106f00b8fb7c1915200ee37437cc0f73a975a
        version: 4.19.1
      entries:
      - name: lvms-operator.v4.19.1
        version: 4.19.1
      - name: lvms-operator.v4.19.0
        version: 4.19.0
      name: stable-4.19
    - currentCSV: lvms-operator.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "my-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "default": true,
                        "fstype": "xfs",
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:ffd7f0e091cbc9a788a0c857187a3a558f123b4373f33e556486a2fdf8f57d27
          description: Logical volume manager storage provides dynamically provisioned
            local storage for container workloads
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.2.0 <4.20.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |-
            {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "test-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
          operatorframework.io/suggested-namespace: openshift-lvm-storage
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-lvm-storage",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/must-gather-image: registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:d264281158ca5ac4885905231900d435e273be059ec6432477da5086916a2108
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/internal-objects: '["logicalvolumes.topolvm.io",
            "lvmvolumegroups.lvm.topolvm.io", "lvmvolumegroupnodestatuses.lvm.topolvm.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lvm-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: LogicalVolume
            name: logicalvolumes.topolvm.io
            version: v1
          - description: LVMCluster is the Schema for the lvmclusters API
            displayName: LVMCluster
            kind: LVMCluster
            name: lvmclusters.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroupNodeStatus
            name: lvmvolumegroupnodestatuses.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroup
            name: lvmvolumegroups.lvm.topolvm.io
            version: v1alpha1
        description: Logical volume manager storage provides dynamically provisioned
          local storage.
        displayName: LVM Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - local storage
        - operator
        - LVM
        links:
        - name: Source Repository
          url: https://github.com/openshift/lvm-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:d264281158ca5ac4885905231900d435e273be059ec6432477da5086916a2108
        - registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:ffd7f0e091cbc9a788a0c857187a3a558f123b4373f33e556486a2fdf8f57d27
        - registry.redhat.io/lvms4/lvms-operator-bundle@sha256:f2270236ca0f96bac3d2f616b349b3b5d44ffa3889fa91838508be3d9b58fe3b
        version: 4.20.0
      entries:
      - name: lvms-operator.v4.20.0
        version: 4.20.0
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: lvms-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: samsung
      provider-url: ""
    name: socmmd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: socmmd.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cmmd.samsung.com/v1",
                "kind": "CMMD",
                "metadata": {
                  "name": "my-app",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "allocateMode": "auto",
                  "enable": true,
                  "payload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "metadata": {
                      "name": "my-app"
                    },
                    "spec": {
                      "replicas": 1,
                      "selector": {
                        "matchLabels": {
                          "name": "my-app"
                        }
                      },
                      "template": {
                        "metadata": {
                          "labels": {
                            "name": "my-app"
                          }
                        },
                        "spec": {
                          "containers": [
                            {
                              "image": "quay.io/my-account/my-app:latest",
                              "name": "my-app-01"
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "cmmd.samsung.com/v1",
                "kind": "Label",
                "metadata": {
                  "labels": {
                    "machineconfiguration.openshift.io/role": "cmmd"
                  },
                  "name": "cmmd-node-label",
                  "namespace": "socmmd"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          console.openshift.io/plugins: '["socmmd-console-plugin"]'
          containerImage: quay.io/samsung_sag/socmmd@sha256:2ef361fb15f0fec99e0a8f1ef83ad4dd14f701d579c900cce084c4a62cf805f8
          createdAt: "2024-08-01T05:45:38Z"
          description: Samsung Operator For CMM-D
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "cmmd.samsung.com/v1",
              "kind": "Label",
              "metadata": {
                "name": "cmmd-node-label",
                "namespace": "socmmd",
                "labels": {}
              },
              "spec": {}
            }
          operatorframework.io/suggested-namespace: socmmd-system
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/OpenMPDK/SMDK/tree/main/lib/redhat/socmmd
          support: samsung
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CMMD is the Schema for the cmmds API.
            displayName: CMMD
            kind: CMMD
            name: cmmds.cmmd.samsung.com
            version: v1
          - description: Label is the Schema for the labels API.
            displayName: Node Label
            kind: Label
            name: labels.cmmd.samsung.com
            version: v1
        description: Samsung Operator For CMM-D
        displayName: socmmd
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - samsung
        - memory
        - extend
        - cmm-d
        links:
        - name: Samsung Operator For CMM-D
          url: https://github.com/OpenMPDK/SMDK/tree/main/lib/redhat/socmmd
        maintainers:
        - email: junhyeok.im@samsung.com
          name: junhyeok-im
        maturity: stable
        provider:
          name: samsung
        relatedImages:
        - quay.io/community-operator-pipeline-prod/socmmd@sha256:5adf9706daf49b35cfcf74b6fb07b056f87714b87047803b797a56f138c77486
        - quay.io/samsung_sag/socmmd@sha256:2ef361fb15f0fec99e0a8f1ef83ad4dd14f701d579c900cce084c4a62cf805f8
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        version: 0.0.2
      entries:
      - name: socmmd.v0.0.2
        version: 0.0.2
      - name: socmmd.v0.0.1
        version: 0.0.1
      name: stable
    defaultChannel: stable
    packageName: socmmd
    provider:
      name: samsung
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: volsync-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: volsync-product.v0.14.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationDestination",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationdestination-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationdestination",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationdestination-sample"
                },
                "spec": {
                  "rsync": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "capacity": "10Gi",
                    "copyMethod": "Snapshot",
                    "serviceType": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationsource",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationsource-sample"
                },
                "spec": {
                  "rsync": {
                    "address": "my.host.com",
                    "copyMethod": "Clone",
                    "sshKeys": "secretRef"
                  },
                  "sourcePVC": "pvcname",
                  "trigger": {
                    "schedule": "0 * * * *"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
          createdAt: "2025-10-20T14:45:52Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.4.0 <0.14.0'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/volsync
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A ReplicationDestination is a VolSync resource that you can
              use to define the destination of a VolSync replication or synchronization.
            displayName: Replication Destination
            kind: ReplicationDestination
            name: replicationdestinations.volsync.backube
            version: v1alpha1
          - description: A ReplicationSource is a VolSync resource that you can use
              to define the source PVC and replication mover type, enabling you to
              replicate or synchronize PVC data to a remote location.
            displayName: Replication Source
            kind: ReplicationSource
            name: replicationsources.volsync.backube
            version: v1alpha1
        description: |-
          Asynchronous volume replication for Kubernetes CSI storage

          VolSync is a Kubernetes operator that performs asynchronous replication of
          persistent volumes within, or across, clusters. VolSync supports replication
          independent of the storage system. This means that replication can be used
          with storage systems that do not natively support replication. Data can also be
          replicated across different types (and vendors) of storage.

          VolSync supports both 1:1 replication relationships as well as 1:many
          relationships. This provides the flexibility to support use cases such as:

          - Disaster recovery
          - Mirroring data to a test environment
          - Data distribution to a set of remote clusters from a central site
          - Migrating between storage vendors (changing the StorageClass of a
            persistent volume claim).
          - Creating periodic data backups

          ### How it works

          You specify the details of how, when, and where to replicate the data
          in a ReplicationSource object in the same namespace as the persistent
          volume claim (PVC).

          You create a ReplicationDestination object at the destination, which
          specifies the target for the replicated data.

          VolSync uses multiple replication methods to replicate data:

          - Rclone-based replication for 1:many data distribution:

            Data is replicated from the source to an intermediate cloud storage
            service, which is [supported by Rclone](https://rclone.org/#providers).
            The destinations retrieve the data from the intermediate location.

          - Restic-based backup of PVC contents:

            Data in a PVC is backed up by using the [restic](https://restic.net/)
            program. This method works well when the deployment configuration of
            the application is already source-controlled, and only the
            preservation of its persistent state is needed.

          - Rsync-based replication for one-to-one data replication:

            Data is replicated directly to a remote location. The replication uses
            the [Rsync](https://rsync.samba.org/) utility over an ssh connection
            to securely and efficiently transfer data.

          ### Documentation

          For documentation about installing and using the VolSync Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [VolSync persistent volume replication service](https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync) in the Red Hat Advanced Cluster Management
          documentation.

          For additional information about the VolSync project, including features that might not be supported by Red Hat, see
          the [VolSync community](https://volsync.readthedocs.ioe/) documentation.

          ### Support & Troubleshooting

          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: VolSync
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - csi
        - data
        - disaster recovery
        - replication
        - storage
        links:
        - name: Documentation
          url: https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync
        - name: Source
          url: https://github.com/backube/volsync
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:57cb4ed66c27720b2526ce4ebeda21086a9088305393af9607fb766447df39bd
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        version: 0.14.0
      entries:
      - name: volsync-product.v0.14.0
        version: 0.14.0
      - name: volsync-product.v0.13.1
        version: 0.13.1
      - name: volsync-product.v0.13.0
        version: 0.13.0
      name: stable
    - currentCSV: volsync-product.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationDestination",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationdestination-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationdestination",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationdestination-sample"
                },
                "spec": {
                  "rsync": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "capacity": "10Gi",
                    "copyMethod": "Snapshot",
                    "serviceType": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationsource",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationsource-sample"
                },
                "spec": {
                  "rsync": {
                    "address": "my.host.com",
                    "copyMethod": "Clone",
                    "sshKeys": "secretRef"
                  },
                  "sourcePVC": "pvcname",
                  "trigger": {
                    "schedule": "0 * * * *"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
          createdAt: "2025-08-27T13:12:05Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.4.0 <0.13.1'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/volsync
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A ReplicationDestination is a VolSync resource that you can
              use to define the destination of a VolSync replication or synchronization.
            displayName: Replication Destination
            kind: ReplicationDestination
            name: replicationdestinations.volsync.backube
            version: v1alpha1
          - description: A ReplicationSource is a VolSync resource that you can use
              to define the source PVC and replication mover type, enabling you to
              replicate or synchronize PVC data to a remote location.
            displayName: Replication Source
            kind: ReplicationSource
            name: replicationsources.volsync.backube
            version: v1alpha1
        description: |-
          Asynchronous volume replication for Kubernetes CSI storage

          VolSync is a Kubernetes operator that performs asynchronous replication of
          persistent volumes within, or across, clusters. VolSync supports replication
          independent of the storage system. This means that replication can be used
          with storage systems that do not natively support replication. Data can also be
          replicated across different types (and vendors) of storage.

          VolSync supports both 1:1 replication relationships as well as 1:many
          relationships. This provides the flexibility to support use cases such as:

          - Disaster recovery
          - Mirroring data to a test environment
          - Data distribution to a set of remote clusters from a central site
          - Migrating between storage vendors (changing the StorageClass of a
            persistent volume claim).
          - Creating periodic data backups

          ### How it works

          You specify the details of how, when, and where to replicate the data
          in a ReplicationSource object in the same namespace as the persistent
          volume claim (PVC).

          You create a ReplicationDestination object at the destination, which
          specifies the target for the replicated data.

          VolSync uses multiple replication methods to replicate data:

          - Rclone-based replication for 1:many data distribution:

            Data is replicated from the source to an intermediate cloud storage
            service, which is [supported by Rclone](https://rclone.org/#providers).
            The destinations retrieve the data from the intermediate location.

          - Restic-based backup of PVC contents:

            Data in a PVC is backed up by using the [restic](https://restic.net/)
            program. This method works well when the deployment configuration of
            the application is already source-controlled, and only the
            preservation of its persistent state is needed.

          - Rsync-based replication for one-to-one data replication:

            Data is replicated directly to a remote location. The replication uses
            the [Rsync](https://rsync.samba.org/) utility over an ssh connection
            to securely and efficiently transfer data.

          ### Documentation

          For documentation about installing and using the VolSync Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [VolSync persistent volume replication service](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/business_continuity/business-cont-overview#volsync) in the Red Hat Advanced Cluster Management
          documentation.

          For additional information about the VolSync project, including features that might not be supported by Red Hat, see
          the [VolSync community](https://volsync.readthedocs.ioe/) documentation.

          ### Support & Troubleshooting

          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: VolSync
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - csi
        - data
        - disaster recovery
        - replication
        - storage
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/business_continuity/business-cont-overview#volsync
        - name: Source
          url: https://github.com/backube/volsync
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:32cd9b5812506656ff9ff1c2c9fdacde44f179313ea2bfbbc18564fee635ca67
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:d37a6d10b0fa07370066a31fdaffe2ea553faf4e4e98be7fcef5ec40d62ffe29
        version: 0.13.1
      entries:
      - name: volsync-product.v0.13.1
        version: 0.13.1
      - name: volsync-product.v0.13.0
        version: 0.13.0
      name: stable-0.13
    - currentCSV: volsync-product.v0.14.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationDestination",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationdestination-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationdestination",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationdestination-sample"
                },
                "spec": {
                  "rsync": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "capacity": "10Gi",
                    "copyMethod": "Snapshot",
                    "serviceType": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationsource",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationsource-sample"
                },
                "spec": {
                  "rsync": {
                    "address": "my.host.com",
                    "copyMethod": "Clone",
                    "sshKeys": "secretRef"
                  },
                  "sourcePVC": "pvcname",
                  "trigger": {
                    "schedule": "0 * * * *"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
          createdAt: "2025-10-20T14:45:52Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.4.0 <0.14.0'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/volsync
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A ReplicationDestination is a VolSync resource that you can
              use to define the destination of a VolSync replication or synchronization.
            displayName: Replication Destination
            kind: ReplicationDestination
            name: replicationdestinations.volsync.backube
            version: v1alpha1
          - description: A ReplicationSource is a VolSync resource that you can use
              to define the source PVC and replication mover type, enabling you to
              replicate or synchronize PVC data to a remote location.
            displayName: Replication Source
            kind: ReplicationSource
            name: replicationsources.volsync.backube
            version: v1alpha1
        description: |-
          Asynchronous volume replication for Kubernetes CSI storage

          VolSync is a Kubernetes operator that performs asynchronous replication of
          persistent volumes within, or across, clusters. VolSync supports replication
          independent of the storage system. This means that replication can be used
          with storage systems that do not natively support replication. Data can also be
          replicated across different types (and vendors) of storage.

          VolSync supports both 1:1 replication relationships as well as 1:many
          relationships. This provides the flexibility to support use cases such as:

          - Disaster recovery
          - Mirroring data to a test environment
          - Data distribution to a set of remote clusters from a central site
          - Migrating between storage vendors (changing the StorageClass of a
            persistent volume claim).
          - Creating periodic data backups

          ### How it works

          You specify the details of how, when, and where to replicate the data
          in a ReplicationSource object in the same namespace as the persistent
          volume claim (PVC).

          You create a ReplicationDestination object at the destination, which
          specifies the target for the replicated data.

          VolSync uses multiple replication methods to replicate data:

          - Rclone-based replication for 1:many data distribution:

            Data is replicated from the source to an intermediate cloud storage
            service, which is [supported by Rclone](https://rclone.org/#providers).
            The destinations retrieve the data from the intermediate location.

          - Restic-based backup of PVC contents:

            Data in a PVC is backed up by using the [restic](https://restic.net/)
            program. This method works well when the deployment configuration of
            the application is already source-controlled, and only the
            preservation of its persistent state is needed.

          - Rsync-based replication for one-to-one data replication:

            Data is replicated directly to a remote location. The replication uses
            the [Rsync](https://rsync.samba.org/) utility over an ssh connection
            to securely and efficiently transfer data.

          ### Documentation

          For documentation about installing and using the VolSync Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [VolSync persistent volume replication service](https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync) in the Red Hat Advanced Cluster Management
          documentation.

          For additional information about the VolSync project, including features that might not be supported by Red Hat, see
          the [VolSync community](https://volsync.readthedocs.ioe/) documentation.

          ### Support & Troubleshooting

          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: VolSync
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - csi
        - data
        - disaster recovery
        - replication
        - storage
        links:
        - name: Documentation
          url: https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync
        - name: Source
          url: https://github.com/backube/volsync
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:57cb4ed66c27720b2526ce4ebeda21086a9088305393af9607fb766447df39bd
        version: 0.14.0
      entries:
      - name: volsync-product.v0.14.0
        version: 0.14.0
      name: stable-0.14
    defaultChannel: stable
    packageName: volsync-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com
    name: ibm-application-gateway-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-application-gateway-operator.v25.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ibm.com/v1",
                "kind": "IBMApplicationGateway",
                "metadata": {
                  "name": "iag-instance"
                },
                "spec": {
                  "configuration": [
                    {
                      "dataKey": "config",
                      "name": "test-config",
                      "type": "configmap"
                    },
                    {
                      "discoveryEndpoint": "https://isam.mmfa.ibm.com/mga/sps/oauth/oauth20/metadata/test",
                      "postData": [
                        {
                          "name": "redirect_uris",
                          "values": [
                            "https://isam.mmfa.ibm.com/pkmsoidc"
                          ]
                        },
                        {
                          "name": "client_name",
                          "value": "OperatorTest"
                        },
                        {
                          "name": "enforce_pkce",
                          "value": "false"
                        },
                        {
                          "name": "all_users_entitled",
                          "value": "true"
                        },
                        {
                          "name": "consent_action",
                          "value": "never_prompt"
                        }
                      ],
                      "secret": "oidc-client",
                      "type": "oidc_registration"
                    },
                    {
                      "headers": [
                        {
                          "name": "Authorization",
                          "secretKey": "value",
                          "type": "secret",
                          "value": "githubsecret"
                        }
                      ],
                      "type": "web",
                      "url": "https://raw.github.com/ibm-security/iag-config/master/test/sample1.yaml"
                    },
                    {
                      "type": "literal",
                      "value": "version: \"22.07\"\n\nserver:\n  local_applications:\n    cred_viewer:\n      path_segment: creds\n      enable_html: true\n\nidentity:\n  oidc:\n    discovery_endpoint: \"https://iag-dev.ibmcloudsecurity.com/oidc/endpoint/default/.well-known/openid-configuration\"\n    client_id: 1cbfe647-9e5f-4d99-8e05-8ed1c862eb47\n    client_secret: uPP8rM7N0e\n"
                    }
                  ],
                  "deployment": {
                    "image": "icr.io/ibmappgateway/ibm-application-gateway@sha256:1144b79a2930fe942ce627b0abcc3bed2f0b0770ae8313cb77ffe6772511c1f9",
                    "imagePullPolicy": "Always",
                    "imagePullSecrets": [
                      {
                        "name": "regcred"
                      }
                    ],
                    "lang": "C",
                    "livenessProbe": {
                      "failureThreshold": 6,
                      "initialDelaySeconds": 8,
                      "periodSeconds": 9,
                      "successThreshold": 7,
                      "timeoutSeconds": 1
                    },
                    "readinessProbe": {
                      "failureThreshold": 2,
                      "initialDelaySeconds": 7,
                      "periodSeconds": 8,
                      "successThreshold": 4,
                      "timeoutSeconds": 5
                    },
                    "serviceAccountName": "iag"
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: icr.io/ibmappgateway/ibm-application-gateway-operator@sha256:6a16d4ef802a866942f504b11a948565245d303f322944200c1a1269fe7c371c
          createdAt: "2025-02-05T21:15:37Z"
          description: The IBM Application Gateway operator manages the lifecycle
            of IBM Application Gateway containers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM-Security/ibm-application-gateway-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBMApplicationGateway is the Schema for the ibmapplicationgateways
              API
            displayName: IBMApplication Gateway
            kind: IBMApplicationGateway
            name: ibmapplicationgateways.ibm.com
            version: v1
        description: "The [IBM Application Gateway (IAG)](https://ibm.biz/ibm-app-gateway)
          image provides a containerized secure Web Reverse proxy which is designed
          to sit in front of your application, seamlessly adding authentication and
          authorization protection to your application.\n\nAn IAG instance deployed
          on Kubernetes can be a complex deployment.  In particular the configuration
          can be defined externally in one or more locations, and changes to this
          configuration may require all instances to be reloaded for the changes to
          take effect. \n\nThe internal Kubernetes deployment controller does not
          have any knowledge of how an IBM Application Gateway instance should behave
          when the configuration changes. As such this IBM Application Gateway specific
          Kubernetes operator is available to be deployed. Once deployed the operator
          can manage the lifecycle of the IBM Application Gateway instances.\n\nSee
          the project [Readme](https://github.com/IBM-Security/ibm-application-gateway-operator/blob/master/README.md)
          for further information and details.\n\n"
        displayName: IBM Application Gateway Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - IBM
        - Security
        - Identity and Access
        links:
        - name: IBM Application Gateway product documentation
          url: https://ibm.biz/ibm-app-gateway
        maintainers:
        - email: isamdev@au1.ibm.com
          name: IBM Application Gateway Development Team
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: IBM
          url: https://www.ibm.com
        relatedImages:
        - icr.io/ibmappgateway/ibm-application-gateway-operator@sha256:6a16d4ef802a866942f504b11a948565245d303f322944200c1a1269fe7c371c
        - icr.io/ibmappgateway/ibm-application-gateway@sha256:1144b79a2930fe942ce627b0abcc3bed2f0b0770ae8313cb77ffe6772511c1f9
        - registry.connect.redhat.com/ibm/ibm-application-gateway-operator-bundle@sha256:e4ece7113fa7056980507408ac29d60676cf51c20d71a058a1accf765a6ea7e3
        version: 25.2.0
      entries:
      - name: ibm-application-gateway-operator.v25.2.0
        version: 25.2.0
      - name: ibm-application-gateway-operator.v24.4.0
        version: 24.4.0
      name: stable
    defaultChannel: stable
    packageName: ibm-application-gateway-operator
    provider:
      name: IBM
      url: https://www.ibm.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: multicluster-operators-subscription
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-operators-subscription.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/multicluster-operators-subscription:2.3.0
          createdAt: "2021-07-19T18:00:00Z"
          description: An operator to subscribe resources from object Bucket, helm
            and github types of channels
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:3bc76999ece42fcb3acd913b32be3fa0e0da056832922819b81119dcfb5f1582
        - quay.io/open-cluster-management/multicluster-operators-application:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-channel:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-deployable:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-placementrule:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-subscription:2.3.0
        version: 0.3.0
      entries:
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.3
    - currentCSV: multicluster-operators-subscription.v0.3.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/multicluster-operators-subscription:2.4.0
          createdAt: "2021-09-29T10:23:00Z"
          description: An operator to subscribe resources from object Bucket, helm
            and github types of channels
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1beta1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/open-cluster-management/multicluster-operators-placementrule:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-subscription:2.4.0
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:2aeba259864bbddaa8cdd46ab6d8c3495450a0081469a27b9acde53008d91bed
        - quay.io/open-cluster-management/multicloud-integrations:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-application:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-channel:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-deployable:2.4.0
        version: 0.3.6
      entries:
      - name: multicluster-operators-subscription.v0.3.6
        version: 0.3.6
      - name: multicluster-operators-subscription.v0.3.5
        version: 0.3.5
      - name: multicluster-operators-subscription.v0.3.4
        version: 0.3.4
      - name: multicluster-operators-subscription.v0.3.3
        version: 0.3.3
      - name: multicluster-operators-subscription.v0.3.2
        version: 0.3.2
      - name: multicluster-operators-subscription.v0.3.1
        version: 0.3.1
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.4
    - currentCSV: multicluster-operators-subscription.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/multicluster-operators-subscription:2.5.0
          createdAt: "2022-03-23T18:00:00Z"
          description: An operator for deploying resources from object Bucket, helm
            repo or github repo to multiple managed clusters
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management-io/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: subscription status per cluster per app
            displayName: App Subscription Report
            kind: SubscriptionReport
            name: subscriptionreports.apps.open-cluster-management.io
            version: v1alpha1
          - description: subscription status per package
            displayName: App Subscription Status
            kind: SubscriptionStatus
            name: subscriptionstatuses.apps.open-cluster-management.io
            version: v1alpha1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1beta1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/open-cluster-management/multicluster-operators-subscription:2.5.0
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:f58f60283f6cf9ea745f4a25378ef6690d98af8fda0eb63f663066631e71450b
        - quay.io/open-cluster-management/multicloud-integrations:2.5.0
        - quay.io/open-cluster-management/multicluster-operators-application:2.5.0
        - quay.io/open-cluster-management/multicluster-operators-channel:2.5.0
        version: 0.4.0
      entries:
      - name: multicluster-operators-subscription.v0.4.0
        version: 0.4.0
      - name: multicluster-operators-subscription.v0.3.9
        version: 0.3.9
      - name: multicluster-operators-subscription.v0.3.8
        version: 0.3.8
      - name: multicluster-operators-subscription.v0.3.7
        version: 0.3.7
      - name: multicluster-operators-subscription.v0.3.6
        version: 0.3.6
      - name: multicluster-operators-subscription.v0.3.5
        version: 0.3.5
      - name: multicluster-operators-subscription.v0.3.4
        version: 0.3.4
      - name: multicluster-operators-subscription.v0.3.3
        version: 0.3.3
      - name: multicluster-operators-subscription.v0.3.2
        version: 0.3.2
      - name: multicluster-operators-subscription.v0.3.1
        version: 0.3.1
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.5
    - currentCSV: multicluster-operators-subscription.v0.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/stolostron/multicluster-operators-subscription:2.6.0
          createdAt: "2022-06-06T18:00:00Z"
          description: An operator for deploying resources from object Bucket, helm
            repo or github repo to multiple managed clusters
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management-io/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: subscription status per cluster per app
            displayName: App Subscription Report
            kind: SubscriptionReport
            name: subscriptionreports.apps.open-cluster-management.io
            version: v1alpha1
          - description: subscription status per package
            displayName: App Subscription Status
            kind: SubscriptionStatus
            name: subscriptionstatuses.apps.open-cluster-management.io
            version: v1alpha1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1beta1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/stolostron/multicloud-integrations:2.6.0
        - quay.io/stolostron/multicluster-operators-application:2.6.0
        - quay.io/stolostron/multicluster-operators-channel:2.6.0
        - quay.io/stolostron/multicluster-operators-subscription:2.6.0
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:48b37c9f9417ef442d896e79851b176505045b487bddf77bb4e6d91fd5ad3dd1
        version: 0.4.1
      entries:
      - name: multicluster-operators-subscription.v0.4.1
        version: 0.4.1
      - name: multicluster-operators-subscription.v0.4.0
        version: 0.4.0
      - name: multicluster-operators-subscription.v0.3.9
        version: 0.3.9
      - name: multicluster-operators-subscription.v0.3.8
        version: 0.3.8
      - name: multicluster-operators-subscription.v0.3.7
        version: 0.3.7
      - name: multicluster-operators-subscription.v0.3.6
        version: 0.3.6
      - name: multicluster-operators-subscription.v0.3.5
        version: 0.3.5
      - name: multicluster-operators-subscription.v0.3.4
        version: 0.3.4
      - name: multicluster-operators-subscription.v0.3.3
        version: 0.3.3
      - name: multicluster-operators-subscription.v0.3.2
        version: 0.3.2
      - name: multicluster-operators-subscription.v0.3.1
        version: 0.3.1
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.6
    defaultChannel: release-2.5
    packageName: multicluster-operators-subscription
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apache KIE
      provider-url: ""
    name: sonataflow-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sonataflow-operator.v10.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "docker.io/apache",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: docker.io/apache/incubator-kie-sonataflow-operator:10.0.0
          description: SonataFlow Kubernetes Operator for deploying workflow applications
            based on the CNCF Serverless Workflow specification
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/apache/incubator-kie-tools/packages/sonataflow-operator
          support: Apache Software Foundation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: Sonata Flow Build
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: Sonata Flow Cluster Platform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: Sonata Flow Platform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: Sonata Flow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          SonataFlow Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification](https://serverlessworkflow.io/):

          * Deploy workflow applications using the [dev profile](https://sonataflow.org/serverlessworkflow/latest/cloud/operator/developing-workflows.html), suited for the your development cycle
          * Build workflow applications based on the platform you're currently working on.
        displayName: SonataFlow Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        links:
        - name: Product Page
          url: https://github.com/apache/incubator-kie-tools
        maintainers:
        - email: dev@kie.apache.org
          name: Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Apache Software Foundation
        relatedImages:
        - docker.io/apache/incubator-kie-sonataflow-operator:10.0.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/community-operator-pipeline-prod/sonataflow-operator@sha256:8ad2282afef801c794e316c93a12834d688cfa44766132231f93013c3124944f
        version: 10.0.0
      entries:
      - name: sonataflow-operator.v10.0.0
        version: 10.0.0
      - name: sonataflow-operator.v1.40.1
        version: 1.40.1
      - name: sonataflow-operator.v1.40.0
        version: 1.40.0
      name: alpha
    - currentCSV: sonataflow-operator.v10.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "host/namespace",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: docker.io/apache/incubator-kie-sonataflow-operator:10.1.0
          createdAt: "2025-09-11T14:44:56Z"
          description: SonataFlow Kubernetes Operator for deploying workflow applications
            based on the CNCF Serverless Workflow specification
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/apache/incubator-kie-tools/packages/sonataflow-operator
          support: Apache KIE
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: SonataFlowBuild
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: SonataFlowClusterPlatform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: SonataFlowPlatform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: SonataFlow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          SonataFlow Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification](https://serverlessworkflow.io/):

          * Deploy workflow applications using the [dev profile](https://sonataflow.org/serverlessworkflow/latest/cloud/operator/developing-workflows.html), suited for the your development cycle
          * Build workflow applications based on the platform you're currently working on.
        displayName: SonataFlow Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        links:
        - name: Product Page
          url: https://sonataflow.org/serverlessworkflow/latest/index.html
        maintainers:
        - email: dev@kie.apache.org
          name: Apache KIE
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Apache KIE
        relatedImages:
        - docker.io/apache/incubator-kie-sonataflow-operator:10.1.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/sonataflow-operator@sha256:d4ec9966370c3e770209042e437c53b0780401150f5385069b8476e26c343919
        version: 10.1.0
      entries:
      - name: sonataflow-operator.v10.1.0
        version: 10.1.0
      - name: sonataflow-operator.v10.0.0
        version: 10.0.0
      - name: sonataflow-operator.v1.40.1
        version: 1.40.1
      - name: sonataflow-operator.v1.40.0
        version: 1.40.0
      name: stable
    defaultChannel: stable
    packageName: sonataflow-operator
    provider:
      name: Apache KIE
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: opentelemetry-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opentelemetry-operator.v0.140.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "Instrumentation",
                "metadata": {
                  "name": "instrumentation"
                },
                "spec": {
                  "exporter": {
                    "endpoint": "http://otel-collector-headless:4317"
                  }
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpAMPBridge",
                "metadata": {
                  "name": "opampbridge-sample"
                },
                "spec": {
                  "capabilities": {
                    "AcceptsOpAMPConnectionSettings": true,
                    "AcceptsOtherConnectionSettings": true,
                    "AcceptsRemoteConfig": true,
                    "AcceptsRestartCommand": true,
                    "ReportsEffectiveConfig": true,
                    "ReportsHealth": true,
                    "ReportsOwnLogs": true,
                    "ReportsOwnMetrics": true,
                    "ReportsOwnTraces": true,
                    "ReportsRemoteConfig": true,
                    "ReportsStatus": true
                  },
                  "componentsAllowed": {
                    "exporters": [
                      "debug"
                    ],
                    "processors": [
                      "memory_limiter"
                    ],
                    "receivers": [
                      "otlp"
                    ]
                  },
                  "endpoint": "ws://opamp-server:4320/v1/opamp"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": "receivers:\n  otlp:\n    protocols: \n      grpc: {}\n      http: {}\n\nexporters:\n  debug: {}\n\nservice:\n  pipelines:\n    traces:\n      receivers: [otlp]\n      exporters: [debug]\n"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1beta1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": {
                    "exporters": {
                      "debug": {}
                    },
                    "receivers": {
                      "otlp": {
                        "protocols": {
                          "grpc": {},
                          "http": {}
                        }
                      }
                    },
                    "service": {
                      "pipelines": {
                        "traces": {
                          "exporters": [
                            "debug"
                          ],
                          "receivers": [
                            "otlp"
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/rhosdt/opentelemetry-rhel8-operator@sha256:899d19bc4e6fbde8e8e8ee5bc3ef6e4151bd18ed8d8e6f2cc8280e4a18fd3dfc
          createdAt: 27 Nov 2025, 12:24
          description: Provides the OpenTelemetry components, including the Collector
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.33.0 <0.140.0-1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-opentelemetry-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-telemetry/opentelemetry-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instrumentation is the spec for OpenTelemetry instrumentation.
            displayName: OpenTelemetry Instrumentation
            kind: Instrumentation
            name: instrumentations.opentelemetry.io
            version: v1alpha1
          - description: OpAMPBridge is the Schema for the opampbridges API.
            displayName: OpAMP Bridge
            kind: OpAMPBridge
            name: opampbridges.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1beta1
          - description: TargetAllocator is the Schema for the targetallocators API.
            displayName: Target Allocator
            kind: TargetAllocator
            name: targetallocators.opentelemetry.io
            version: v1alpha1
        description: |-
          Red Hat build of OpenTelemetry is a collection of tools, APIs, and SDKs. You use it to instrument, generate, collect, and export telemetry data (metrics, logs, and traces) for analysis in order to understand your software's performance and behavior.
          This operator was previously called Red Hat OpenShift distributed tracing data collection.

          ### Operator features

          * **Sidecar injection** - annotate your pods and let the operator inject a sidecar.
          * **Managed upgrades** - updating the operator will automatically update your OpenTelemetry collectors.
          * **Deployment modes** - your collector can be deployed as sidecar, daemon set, or regular deployment.
          * **Service port management** - the operator detects which ports need to be exposed based on the provided configuration.

          ## Examples

          There is a list of examples to help you deploy different configurations in [this GitHub repository](https://github.com/os-observability/redhat-rhosdt-samples)

          ### Support & Troubleshooting

          Red Hat build of OpenTelemetry is available as part of a Red Hat OpenShift subscription.
          Checking the [Red Hat Documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/4.17/html/red_hat_build_of_opentelemetry/index) is recommended when installing, configuring, and managing the Operator and instances.
        displayName: Red Hat build of OpenTelemetry
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opentelemetry
        - tracing
        - logging
        - metrics
        - monitoring
        - troubleshooting
        links:
        - name: OpenTelemetry Operator
          url: https://github.com/open-telemetry/opentelemetry-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat support
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhosdt/opentelemetry-target-allocator-rhel8@sha256:fd3fde1995d4271f5e4c36093839c369f403211b3fe9d3a4e09906efe8d000d7
        - registry.redhat.io/rhosdt/opentelemetry-operator-bundle@sha256:6ac3bc6ae3aa20a23b4144b01b1aa5ae50f2194e4951446f02a8d60a397aef68
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:6b6c25b6849139cfe88b02df1a095fa0abbbaec9a987d20f75ca007c3cf4e2b7
        - registry.redhat.io/rhosdt/opentelemetry-collector-rhel8@sha256:adf3760df254b939a476428449b792037f197e64bbea44d39ac7c60661818855
        - registry.redhat.io/rhosdt/opentelemetry-rhel8-operator@sha256:899d19bc4e6fbde8e8e8ee5bc3ef6e4151bd18ed8d8e6f2cc8280e4a18fd3dfc
        version: 0.140.0-1
      entries:
      - name: opentelemetry-operator.v0.140.0-1
        version: 0.140.0-1
      - name: opentelemetry-operator.v0.135.0-1
        version: 0.135.0-1
      - name: opentelemetry-operator.v0.127.0-2
        version: 0.127.0-2
      - name: opentelemetry-operator.v0.127.0-1
        version: 0.127.0-1
      - name: opentelemetry-operator.v0.119.0-2
        version: 0.119.0-2
      - name: opentelemetry-operator.v0.119.0-1
        version: 0.119.0-1
      - name: opentelemetry-operator.v0.113.0-2
        version: 0.113.0-2
      - name: opentelemetry-operator.v0.113.0-1
        version: 0.113.0-1
      - name: opentelemetry-operator.v0.107.0-5
        version: 0.107.0-5
      - name: opentelemetry-operator.v0.107.0-4-0.1727168137.p
        version: 0.107.0-4+0.1727168137.p
      - name: opentelemetry-operator.v0.107.0-4
        version: 0.107.0-4
      - name: opentelemetry-operator.v0.102.0-3
        version: 0.102.0-3
      - name: opentelemetry-operator.v0.102.0-2
        version: 0.102.0-2
      - name: opentelemetry-operator.v0.100.1-3
        version: 0.100.1-3
      - name: opentelemetry-operator.v0.93.0-3
        version: 0.93.0-3
      - name: opentelemetry-operator.v0.93.0-2
        version: 0.93.0-2
      - name: opentelemetry-operator.v0.89.0-3
        version: 0.89.0-3
      - name: opentelemetry-operator.v0.81.1-5
        version: 0.81.1-5
      - name: opentelemetry-operator.v0.74.0-5-0.1687199949.p
        version: 0.74.0-5+0.1687199949.p
      - name: opentelemetry-operator.v0.74.0-5
        version: 0.74.0-5
      - name: opentelemetry-operator.v0.60.0-2
        version: 0.60.0-2
      - name: opentelemetry-operator.v0.56.0-1
        version: 0.56.0-1
      name: stable
    defaultChannel: stable
    packageName: opentelemetry-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: external-dns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: external-dns-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure-private"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/privateDnsZones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
          createdAt: 2025-12-10T16:08:35
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.3.3
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        - registry.redhat.io/edo/external-dns-rhel9@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        version: 1.3.3
      entries:
      - name: external-dns-operator.v1.3.3
        version: 1.3.3
      - name: external-dns-operator.v1.3.2
        version: 1.3.2
      - name: external-dns-operator.v1.3.1
        version: 1.3.1
      - name: external-dns-operator.v1.3.0
        version: 1.3.0
      - name: external-dns-operator.v1.2.0
        version: 1.2.0
      - name: external-dns-operator.v1.1.1
        version: 1.1.1
      - name: external-dns-operator.v1.1.0
        version: 1.1.0
      - deprecation:
          message: |
            external-dns-operator.v1.0.1 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.1
        version: 1.0.1
      - deprecation:
          message: |
            external-dns-operator.v1.0.0 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.0
        version: 1.0.0
      name: stable-v1
    - currentCSV: external-dns-operator.v1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel8-operator@sha256:0877eb0a111efe0bff63173a2dfeb7a06a61afd0efbcdba053322a539e0dc667
          createdAt: 2024-01-22T09:26:37
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.1
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:0a86a1808d9906eb57886d3d3cd5c04cf9578a80860342132d36ecfc411bf807
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:0877eb0a111efe0bff63173a2dfeb7a06a61afd0efbcdba053322a539e0dc667
        - registry.redhat.io/edo/external-dns-rhel8@sha256:17f4127cbb9a9304769e9655c19cbea2260107c7e9371a99a9aa3e85d759c00b
        version: 1.0.1
      deprecation:
        message: |
          The stable-v1.0 channel is no longer supported. Please switch to a supported stable channel to receive the latest updates and support.
      entries:
      - deprecation:
          message: |
            external-dns-operator.v1.0.1 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.1
        version: 1.0.1
      - deprecation:
          message: |
            external-dns-operator.v1.0.0 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    - currentCSV: external-dns-operator.v1.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel8-operator@sha256:9ca751e84b8843cc62dc60550e5c4af741bf09a381ef62220e7eb3760ffe8524
          createdAt: 2024-01-22T09:56:14
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.1.1
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:b02bab3af52a2469ced96618f1d122464568ba21ebc0a3a945b78ec4e6bdc80d
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:9ca751e84b8843cc62dc60550e5c4af741bf09a381ef62220e7eb3760ffe8524
        - registry.redhat.io/edo/external-dns-rhel8@sha256:ffcc3f2e9b9feb889e7882465f7f034aba6b9ee0699a1b6c24e83f501a63ecca
        version: 1.1.1
      entries:
      - name: external-dns-operator.v1.1.1
        version: 1.1.1
      - name: external-dns-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: external-dns-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel8-operator@sha256:15700d4acb4705ec900c03b77fa50eaa7db9e59f33bbc819e4fdfc0b9f362f82
          createdAt: 2023-11-15T09:24:04
          olm.skipRange: <1.2.0
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:15700d4acb4705ec900c03b77fa50eaa7db9e59f33bbc819e4fdfc0b9f362f82
        - registry.redhat.io/edo/external-dns-rhel8@sha256:6263a78b2a170e56dfca2173f14dbf14f0a5bddb6ea600bfdef248c7d5f20e4b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e33874a51971a90917cf437fc6cbeea1da569ba07217f66f1bba96d594f58aed
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:a614ec94c2468e34e129e9ecd4bc0d1895eb67b96e77eb5ad94cd8bd507860f5
        version: 1.2.0
      entries:
      - name: external-dns-operator.v1.2.0
        version: 1.2.0
      name: stable-v1.2
    - currentCSV: external-dns-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure-private"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/privateDnsZones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
          createdAt: 2025-12-10T16:08:35
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.3.3
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        - registry.redhat.io/edo/external-dns-rhel9@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        version: 1.3.3
      entries:
      - name: external-dns-operator.v1.3.3
        version: 1.3.3
      - name: external-dns-operator.v1.3.2
        version: 1.3.2
      - name: external-dns-operator.v1.3.1
        version: 1.3.1
      - name: external-dns-operator.v1.3.0
        version: 1.3.0
      name: stable-v1.3
    defaultChannel: stable-v1
    packageName: external-dns-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: redhat.com
    name: service-binding-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: service-binding-operator.v0.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "service.binding/v1alpha2",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: quay.io/redhat-developer/servicebinding-operator@sha256:b355d2370926063a3de8c7a09c0ca8c2348a8d158d6a7095d0e5e8381cc95be5
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.service.binding
            version: v1alpha2
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/openshift-community-operators/service-binding-operator@sha256:5a5e2f775760aa68c85d0f69b700d23ef2a6be7bb415bd96401d03eb6077f90c
        - quay.io/redhat-developer/servicebinding-operator@sha256:b355d2370926063a3de8c7a09c0ca8c2348a8d158d6a7095d0e5e8381cc95be5
        version: 0.10.0
      entries:
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: beta
    - currentCSV: service-binding-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindablekinds-sample"
                }
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: quay.io/redhat-developer/servicebinding-operator@sha256:c9c9e45321db2d4d3cdc2d364337af844f69c9893d0cc74d2fa56c846ffcf3da
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/openshift-community-operators/service-binding-operator@sha256:79a9191f0cd5d11af004ead87ba9eb5359c67fd658c346db4c3cea3b16b23987
        - quay.io/redhat-developer/servicebinding-operator@sha256:c9c9e45321db2d4d3cdc2d364337af844f69c9893d0cc74d2fa56c846ffcf3da
        version: 0.11.0
      entries:
      - name: service-binding-operator.v0.11.0
        version: 0.11.0
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: candidate
    - currentCSV: service-binding-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindable-kinds"
                },
                "spec": {}
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  },
                  "type": "postgres",
                  "workload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: quay.io/redhat-developer/servicebinding-operator@sha256:ac47f496fb7ecdcbc371f8c809fad2687ec0c35bbc8c522a7ab63b3e5ffd90ea
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'.
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1alpha3
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1beta1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
          - description: Service Binding implementing community specification (https://github.com/k8s-service-bindings/spec)
              describing the connection between a backing service and an application
              workload.
            displayName: Service Binding (Spec API)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1beta1
        description: |
          The Service Binding Operator manages the data plane for applications and backing services. It enables developers to connect their
          applications to backing services (REST API, databases, event buses and others) with a consistent and predictable
          experience. The operator reads data made available by the control plane of backing services and projects the bindings
          data to applications either as accessible files mounted into the application’s container or environment variables.

          In Kubernetes, each service suggests a different way to access their secrets and developers will consume them in their
          application in a custom way. While this provides a good deal of flexibility, it also creates discrepancies and
          complexity dealing with each specific services, which leads large development teams to lose overall velocity.

          Service Binding Operator removes the error-prone manual configuration of binding information, provides service operators
          a low-touch administrative experience to provision and manage access to services and enriches development lifecycle.

          For additional details refer to the project [documentation](https://redhat-developer.github.io/service-binding-operator).

          Get Started with Service Binding Operator
          * Find out about SBO’s [prerequisites](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/installing-service-binding.html).
          * Refer to the [Quick Start Guide](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/quick-start.html) to see SBO in action in a simple scenario.

          Need Help
          * Raise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)

          Licence
          * Service Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE)

          Service Binding Operator is providing and supporting two different APIs.
          * `binding.operators.coreos.com/v1alpha1`: This API is compliant with the Service Binding specification. It is fully supported and considered as the mature API. It’s the API we recommend in production environments.
          * `servicebinding.io/v1beta1`: This API is the one defined in the Service Binding specification. It is available in Service Binding Operator 1.x.

          We’ll consider supporting only the API from the specification, once the Service Binding specification will be officially GA. Of course, that will be a breaking change and handle in a safe way for you.
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Documentation
          url: https://redhat-developer.github.io/service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/redhat-developer/servicebinding-operator@sha256:ac47f496fb7ecdcbc371f8c809fad2687ec0c35bbc8c522a7ab63b3e5ffd90ea
        - quay.io/openshift-community-operators/service-binding-operator@sha256:54ea11add0a1d988e0c965968f9a65e011978190f76fa2f826f1378474bac1d4
        version: 1.4.0
      entries:
      - name: service-binding-operator.v1.4.0
        version: 1.4.0
      - name: service-binding-operator.v1.3.4
        version: 1.3.4
      - name: service-binding-operator.v1.3.3
        version: 1.3.3
      - name: service-binding-operator.v1.3.2
        version: 1.3.2
      - name: service-binding-operator.v1.3.1
        version: 1.3.1
      - name: service-binding-operator.v1.3.0
        version: 1.3.0
      - name: service-binding-operator.v1.2.0
        version: 1.2.0
      - name: service-binding-operator.v1.1.1
        version: 1.1.1
      - name: service-binding-operator.v1.1.0
        version: 1.1.0
      - name: service-binding-operator.v1.0.1
        version: 1.0.1
      - name: service-binding-operator.v1.0.0
        version: 1.0.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: service-binding-operator
    provider:
      name: Red Hat
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/openshift/kueue-operator
    name: kueue-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kueue-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kueue.openshift.io/v1",
                "kind": "Kueue",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kueue-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "config": {
                    "integrations": {
                      "frameworks": [
                        "BatchJob"
                      ]
                    }
                  },
                  "managementState": "Managed"
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-09-17T12:13:48Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-kueue-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Kueue
            name: kueues.kueue.openshift.io
            version: v1
        description: Red Hat build of Kueue is a collection of APIs, based on the
          [Kueue](https://kueue.sigs.k8s.io/docs/) open source project, that extends
          Kubernetes to manage access to resources for jobs. Red Hat build of Kueue
          does not replace any existing components in a Kubernetes cluster, but instead
          integrates with the existing Kubernetes API server, scheduler, and cluster
          autoscaler components to determine when a job waits, is admitted to start
          by creating pods, or should be preempted.
        displayName: Red Hat build of Kueue
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kueue-operator
        links:
        - name: Kueue Operator
          url: https://github.com/openshift/kueue-operator
        maintainers:
        - email: aos-node@redhat.com
          name: Node team
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/kueue-operator
        relatedImages:
        - registry.redhat.io/kueue/kueue-rhel9-operator@sha256:43b1aa1c12ccb31905ae7b9f04ac33f4b56f44076a24f708f514e1ee63f929dc
        - registry.redhat.io/kueue/kueue-rhel9@sha256:dcb9dec563ef3178217e00a544ef0408fb25cd4f3fe155a7e6ad6e6f6ab98613
        - registry.redhat.io/kueue/kueue-must-gather-rhel9@sha256:5db9b63e8917bf1f5c32dbdc438d067fd0c6e424b6bbb8dc575ad322d590396e
        - registry.redhat.io/kueue/kueue-operator-bundle@sha256:c39816efcfdf1566636ab39ebdeb6c2c26c6d3a16a050eb2364548a555cb62b6
        version: 1.1.0
      entries:
      - name: kueue-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: kueue-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kueue.openshift.io/v1",
                "kind": "Kueue",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kueue-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "config": {
                    "integrations": {
                      "frameworks": [
                        "BatchJob"
                      ]
                    }
                  },
                  "managementState": "Managed"
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-11-14T19:51:19Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-kueue-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Kueue is a cluster resource for configuration of the Kueue
              operand
            displayName: Kueue
            kind: Kueue
            name: kueues.kueue.openshift.io
            version: v1
        description: Red Hat build of Kueue is a collection of APIs, based on the
          [Kueue](https://kueue.sigs.k8s.io/docs/) open source project, that extends
          Kubernetes to manage access to resources for jobs. Red Hat build of Kueue
          does not replace any existing components in a Kubernetes cluster, but instead
          integrates with the existing Kubernetes API server, scheduler, and cluster
          autoscaler components to determine when a job waits, is admitted to start
          by creating pods, or should be preempted.
        displayName: Red Hat build of Kueue
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kueue-operator
        links:
        - name: Kueue Operator
          url: https://github.com/openshift/kueue-operator
        maintainers:
        - email: aos-node@redhat.com
          name: Node team
        maturity: stable
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/kueue-operator
        relatedImages:
        - registry.redhat.io/kueue/kueue-must-gather-rhel9@sha256:0d6fe9adb309e62104deb675c5f1b72a4e62821991f2f673182a025cbaa795d0
        - registry.redhat.io/kueue/kueue-operator-bundle@sha256:005047a1a84c92358df9736f9661136e185b1b9d4d9a2eeeb322aa6cb61d63a1
        - registry.redhat.io/kueue/kueue-rhel9-operator@sha256:0e99e54d7b740518813788ca79def5a31ecaae9c154d9b243afb681c30cb5b66
        - registry.redhat.io/kueue/kueue-rhel9@sha256:bdf48afa3c62beec7402edddac8803363e793cf74c1c4cf908ae81845296ce3b
        version: 1.2.0
      entries:
      - name: kueue-operator.v1.2.0
        version: 1.2.0
      name: stable-v1.2
    defaultChannel: stable-v1.2
    packageName: kueue-operator
    provider:
      name: Red Hat, Inc
      url: https://github.com/openshift/kueue-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: advanced-cluster-management
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: advanced-cluster-management.v2.14.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "operator.open-cluster-management.io/v1",
            "kind": "MultiClusterHub", "metadata": {"name": "multiclusterhub", "namespace":
            "open-cluster-management"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-10-27T20:24:30Z"
          description: Advanced provisioning and management of OpenShift and Kubernetes
            clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.13.0 <2.14.1'
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1",
            "kind":"MultiClusterHub","metadata":{"name":"multiclusterhub","namespace":"open-cluster-management"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: open-cluster-management
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:b6eb5df09bfae9f9d0bccef736aefbd561127c02a78b00e38f38e4efb3ec04f2
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          repository: https://github.com/open-cluster-management/multiclusterhub-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MulticlusterHub defines the configuration
              for an instance of a multicluster hub, a central point for managing multiple
              Kubernetes-based clusters. The deployment of multicluster hub components
              is determined based on the configuration that is defined in this resource.
            displayName: MultiClusterHub
            kind: MultiClusterHub
            name: multiclusterhubs.operator.open-cluster-management.io
            version: v1
        description: "Red Hat Advanced Cluster Management for Kubernetes provides
          the multicluster hub, a central management console for managing multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the hub to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can set compliance requirements to ensure
          that the clusters maintain the specified security requirements. You can
          also deploy business applications across your clusters.\n\n## How to install\nUse
          of this Red Hat product requires a licensing and subscription agreement.\n\nInstall
          the Red Hat Advanced Cluster Management for Kubernetes operator by following
          instructions presented when you click the `Install` button. After installing
          the operator, create an instance of the `MultiClusterHub` resource to install
          the hub.\n\nNote that if you will be using the hub to manage non-OpenShift
          4.x clusters, you will need to create a Kubernetes `Secret` resource containing
          your OpenShift pull secret and specify this `Secret` in the `MultiClusterHub`
          resource, as described in the install documentation.\n### Special considerations
          for disconnected network environments\nIf you are installing Red Hat Advanced
          Cluster Management for Kubernetes in a disconnected network environment,
          there are some special install and upgrade requirements.\n#### Include multicluster
          engine for Kubernetes in mirrored catalog\nInstalling an OLM operator in
          a disconnected network environment involves the use of a local mirrored
          operator catalog and image registry. Red Hat Advanced Cluster Management
          for Kubernetes requires (and automatically installs) the multicluster engine
          for Kuberenetes operator so this operator package is needed in your local
          mirrored operator catalog in addition to the one for Red Hat Advanced Cluster
          Management for Kubernetes.\n\nif you are using a full mirror of the Red
          Hat operators catalog, no special action is needed when creating the mirror
          catalog.\n\nIf you are using a filtered (rather than full) mirror of the
          OLM catalog, be sure to include both the `advanced-cluster-management` **and**
          `multicluster-engine` packages in your mirrored catalog when creating it.\n####
          Add annotation to MultiClusterHub resource\nIf you are installing or upgrading
          to a Red Hat Advanced Cluster Management for Kubernetes release prior to
          release 2.7, an `mce-subscription-spec` annotation is required in the instance
          of the `MultiClusterHub` resource you create to set up your hub. This annotation
          identifies the catalog source for your local mirrored operator catalog and
          is required when installing releases prior to release 2.7 regardless of
          whether your local mirrored operator catalog is a full mirror or a filtered
          one.\n\nThe `mce-subscription-spec` annotation is not usually needed, and
          thus can usually be omitted, when installing or upgrading to release 2.7
          or a later release. Starting with release 2.7, the Red Hat Advanced Cluster
          Management for Kubernetes operator is able to automatically determine the
          catalog source to use in typical scenarios.\n\nThe following is an example
          of the `mce-subscription-spec` annotation:\n\n```\n apiVersion: operator.open-cluster-management.io/v1\n
          kind: MultiClusterHub\n metadata:\n \tannotations:\n \t\tinstaller.open-cluster-management.io/mce-subscription-spec:
          '{\"source\": \"my-catalog-source\"}'\n spec: {}\n\n```\n\nReplace `my-catalog-source`
          with the name of your catalog source.\n\nIf you are creating the `MultiClusterHub`
          resource using the OperatorHub UI, switch to the YAML view for the resource
          in order to insert the annotation.\n### Where to find more installation
          information\nYou can find additional installation guidance in the [install
          documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/install/installing). "
        displayName: Advanced Cluster Management for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - acm
        - advanced-cluster-management
        - install
        - multiclusterhub
        - rhacm
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:6cc12edafea8f130331797349cc9f1c06853cef5ee0a238d20205894a77aec96
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:cce2e0c3e48140e70a389821f4238e53ea496473d3ccd74b045059bc3cfd2982
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:ac64da0f40dc39078e7cf604293471e20ca627e90c381826f1f10136c21ac1a2
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:17b7618bd0d09665c97a9ad835ea6389ac4d1540f3675f6a34851916fc19b923
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:0bb769131d07651f425b823e759746ea9d9af1e1006d610341f4e49188450f2d
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:0e137637b57c5c77087f3f0cf81d22c2eb9ecfd60ba96c90ff1e363d2650cf84
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:ee59f307e468e2b7b38f7c040898d587d441f8fb3d59cb022ae23e4717739e3f
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:393c385c8d4424539cd95b9fab090f3015e0812a3688beee83c2c515f1235f24
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:91e009061d720b1d1e5a6deafe295fa4dd7d7dd0c6fe17587639a623ca07159a
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:7a5f323bada97dbe0ad204a64f714c0acf37e9d261776a24f0cc7e0122327354
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:39b5feb4dcf91feb124adfb629c14ec729f96860c6c16e8a2c05b6b2348a6b6c
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:97049a14110198594e3ae815748111262359970937bcd6a83d9c98a70bbd134a
        - registry.redhat.io/rhel8/postgresql-16@sha256:776f420f734f9c1d6e0589fc6d9acee8f1c2bfd1f838348360bb9db584920602
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:f84cad07033b005bed36048f3e4bb00a613800cffd3d3892bfb1e3ccea2a1c58
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:b83f150ab2dd851e3662ad01f3057482e5f454e28d04d50ce1c321efa2090f33
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:e53522a9ce0e3adfabdd809125a442b550c11c4c753d9665794c8ff640b86895
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c3d261bd2eb4842c279a0d35c754699a484ebb320617a893195088579a46fec9
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:7ca1b3ffb295e55b4b6d08ffad5d5a982c8e9d8ce7638eb956ea877580a57975
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:c058a4198b256d998f85bd8ee07882f42628748d827bd978d4a70af05d411665
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:1b1f6f85af0910f1acd029f54a608b25d3a2977c3d8b323266391543324305b4
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:afa4337370e8ea6da0e25d62c7197157b85281916a1fff4c881eafaf14a2c3e8
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:c05ba064ebaad51a625361ceecf30b6d4bd28f3c5d9efb279f39c98afc050a75
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:dd4a7678648872ea4294b867cdc7bca0ac063b81eaeac9bf5d4fddcaffb96bac
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:6c369fa856f18ef60d25a57f0588ec5a0bef18d0226b957db5e5d597fa5158f7
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:7f86f9a33460384c60e62813e665b89bb6288aa3a4d56ca09040063d7b02b9bc
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:0684f07fdb2f648182a8410722156decef4ee503cb1eb66274af32d946bd8d80
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:b42323be8ff41fa98332a5b2fa31af73a0da9605ff746122420ac46aa8f4a8d2
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:a89c3f88ab17823607e3c6af022991263b418b38d667507d4c522acd590680b3
        - registry.redhat.io/rhacm2/console-rhel9@sha256:94cfe0cdb4c01ff7ad602bf0ee6af3010e5b748363845d2205070764dcbb2eb2
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:973eb3ca3da32c87ba308928a21fbd25514b2f6a6662300d4928479cb554cff3
        - registry.redhat.io/rhel9/redis-7@sha256:b4f58ad83ab8719a2e102f38ee526546cd1d56428901afc3add45c9a0e2a2f12
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:f6511171c82d52fef18533eee1d6511f3850c5cf4eda2bd9007a7a8642d0a1c8
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:b8f8f931f498855461ff997f73470fd957a5f32719a62c993f07050e75d76bfe
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:5a86ed779e8a9f68f121029ea7fd21c37a4108ab3202b35dbb371a2b0612f215
        - registry.redhat.io/rhacm2/acm-governance-policy-framework-addon-rhel9@sha256:f60071d35949e2e53cb0b8eec84f7d5c1e24bfd5f3165b34707059b61bb98cb0
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:b6eb5df09bfae9f9d0bccef736aefbd561127c02a78b00e38f38e4efb3ec04f2
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:dec26e10f2c5c0da5a3d2be3d22255c08c55c3afcd9c9c34f53b29330f74efcb
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:d31e3e2b0126f94f12f9eb0af37c8bc08ccdeea06b61068a04d711cbfd9e3b99
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:4c09ad98d2cd3a41f5f437ee7023137ca57084430e00fb44e976a7a687dfadf9
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:973f4e668937fa9faee550fdf8451c74354f48756c54471f5f1a63307e4e5a66
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:940c0564ced75b7912d3ffc923a1f6bab9aed0f4a52962f7f894d08937b7d37e
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:bf26f5a794224b5ac6b5a7c7457f345914612610d24e9af563b92eecea614eba
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:3cdc71fc6932406fb44dc0d162826713a515d7b032ddb8fec5582bfa9a9cb937
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:a74270d8ec7d1d64c86e80fd2c67d8dc8bb0a31b30b996de737491e3c7180e46
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:e20ce08100730812c47977fd754c53d3bc47ce13f57c0716b3f6487fba939c8f
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:f930cda4750df9922781fd8fff84b9f4df219679cd2929e58961c9371dc2c5a1
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:2233fe74d4d9cbd226e130b314a546d5473515e0389cd19c25164c6c543aa54a
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:57f28e416e9d84a9d690b6d262a4263d8da060a3254253c68aa7945414f15535
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:467557f453bde3feaa0129f38c52fba00c3b98acddbf8978bf21ef13a9890fab
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c13557b24b0a172deac742cbc4b6dc6b09090170c0c0a4a9c0dd307a00c54661
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:a72ceef5e2f992ef6d593978623be5fb15a10f1a5276a3bdba0364d26aaaa0fa
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:3491ec932d90112e89f3a4cebe5bdd9ed6a7811f116df43bab8bb5f827129361
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:4628b05c002b6186d07f1bd6bd670bc2f65254168532d868282589b1da48e930
        - registry.redhat.io/rhel9/memcached@sha256:42a0c2506b38ce9f5ee744a299cb135781186e628fdf7c09d2d35ba3b6decef8
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:d28520c44b861c75d1de8544be8b3a8659cb5695c0ea0e7b4ea3a9adfaa26748
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:b297b4deda5906897b8d1949ddbabb6fb90224244ff2b6d86139110ac900fd9b
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:f99086a8e828f25d96249048905743ccd5a21f184b21fca62d01650c898a346f
        version: 2.14.1
      entries:
      - name: advanced-cluster-management.v2.14.1
        version: 2.14.1
      - name: advanced-cluster-management.v2.14.0
        version: 2.14.0
      name: release-2.14
    - currentCSV: advanced-cluster-management.v2.15.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "operator.open-cluster-management.io/v1",
            "kind": "MultiClusterHub", "metadata": {"name": "multiclusterhub", "namespace":
            "open-cluster-management"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-12-03T14:52:20Z"
          description: Advanced provisioning and management of OpenShift and Kubernetes
            clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=2.13.0 <2.15.0'
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1",
            "kind":"MultiClusterHub","metadata":{"name":"multiclusterhub","namespace":"open-cluster-management"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: open-cluster-management
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:5740d54261321739e324665725566bed539687d21b4b46b7edb359cce491dadc
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          repository: https://github.com/open-cluster-management/multiclusterhub-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MulticlusterHub defines the configuration
              for an instance of a multicluster hub, a central point for managing multiple
              Kubernetes-based clusters. The deployment of multicluster hub components
              is determined based on the configuration that is defined in this resource.
            displayName: MultiClusterHub
            kind: MultiClusterHub
            name: multiclusterhubs.operator.open-cluster-management.io
            version: v1
        description: "Red Hat Advanced Cluster Management for Kubernetes provides
          the multicluster hub, a central management console for managing multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the hub to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can set compliance requirements to ensure
          that the clusters maintain the specified security requirements. You can
          also deploy business applications across your clusters.\n\n## How to install\nUse
          of this Red Hat product requires a licensing and subscription agreement.\n\nInstall
          the Red Hat Advanced Cluster Management for Kubernetes operator by following
          instructions presented when you click the `Install` button. After installing
          the operator, create an instance of the `MultiClusterHub` resource to install
          the hub.\n\nNote that if you will be using the hub to manage non-OpenShift
          4.x clusters, you will need to create a Kubernetes `Secret` resource containing
          your OpenShift pull secret and specify this `Secret` in the `MultiClusterHub`
          resource, as described in the install documentation.\n### Special considerations
          for disconnected network environments\nIf you are installing Red Hat Advanced
          Cluster Management for Kubernetes in a disconnected network environment,
          there are some special install and upgrade requirements.\n#### Include multicluster
          engine for Kubernetes in mirrored catalog\nInstalling an OLM operator in
          a disconnected network environment involves the use of a local mirrored
          operator catalog and image registry. Red Hat Advanced Cluster Management
          for Kubernetes requires (and automatically installs) the multicluster engine
          for Kuberenetes operator so this operator package is needed in your local
          mirrored operator catalog in addition to the one for Red Hat Advanced Cluster
          Management for Kubernetes.\n\nif you are using a full mirror of the Red
          Hat operators catalog, no special action is needed when creating the mirror
          catalog.\n\nIf you are using a filtered (rather than full) mirror of the
          OLM catalog, be sure to include both the `advanced-cluster-management` **and**
          `multicluster-engine` packages in your mirrored catalog when creating it.\n####
          Add annotation to MultiClusterHub resource\nIf you are installing or upgrading
          to a Red Hat Advanced Cluster Management for Kubernetes release prior to
          release 2.7, an `mce-subscription-spec` annotation is required in the instance
          of the `MultiClusterHub` resource you create to set up your hub. This annotation
          identifies the catalog source for your local mirrored operator catalog and
          is required when installing releases prior to release 2.7 regardless of
          whether your local mirrored operator catalog is a full mirror or a filtered
          one.\n\nThe `mce-subscription-spec` annotation is not usually needed, and
          thus can usually be omitted, when installing or upgrading to release 2.7
          or a later release. Starting with release 2.7, the Red Hat Advanced Cluster
          Management for Kubernetes operator is able to automatically determine the
          catalog source to use in typical scenarios.\n\nThe following is an example
          of the `mce-subscription-spec` annotation:\n\n```\n apiVersion: operator.open-cluster-management.io/v1\n
          kind: MultiClusterHub\n metadata:\n \tannotations:\n \t\tinstaller.open-cluster-management.io/mce-subscription-spec:
          '{\"source\": \"my-catalog-source\"}'\n spec: {}\n\n```\n\nReplace `my-catalog-source`
          with the name of your catalog source.\n\nIf you are creating the `MultiClusterHub`
          resource using the OperatorHub UI, switch to the YAML view for the resource
          in order to insert the annotation.\n### Where to find more installation
          information\nYou can find additional installation guidance in the [install
          documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.12/html/install/installing). "
        displayName: Advanced Cluster Management for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - acm
        - advanced-cluster-management
        - install
        - multiclusterhub
        - rhacm
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.12/
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c5bc42e57f4bae70f1e0b2fd1de345d0f1ef7e1e41fa6cd790198bcd2023bc1a
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:2c8f89fa9958f0422c6ce6a1acf6e6343967c78d0966937fca19e27e52e7a428
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:90b919807421554282a06cbb5d2e4b4b376b686a884e62566fbf257351f5a31f
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:78c00553182db4b8d923c33afcf64617499cb5c701314a4c977673613b8fa5a6
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:b70ed3f5e36043f6050d6d71455acbf0ac9f6968a26579abbe20e47b71e91203
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:1054b185a0118a9752c18ee6036c486f84d824366ed879d2ab4594c542219099
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:e25d8d0deab4139ba82e64666074e51b4d9c768f4e5e377483bf1d787613d33c
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:833837b3f89a4c9f8925e32c7550418169a839ce14b12915d85de6af095d5847
        - registry.redhat.io/rhem/flightctl-userinfo-proxy-rhel9@sha256:357ce9e08c63c1f91512dcf01fc1073d3d44222ac1d97306709467282e4db9fa
        - registry.redhat.io/rhel9/memcached@sha256:14568dc13790fa3d8827e3ae7ef7bae37096ef32b8a158310b3e489bca5a0ab3
        - registry.redhat.io/rhacm2/console-rhel9@sha256:f96a68657bd4eef8c0fb1c9d86203e73fecfea62b4f87425caa1e5f65173c0b7
        - registry.redhat.io/rhacm2/mtv-integrations-rhel9@sha256:4508924c255a6f352c3868b281c7e8eb19a6d857e32fa5f59d925875384549e7
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:296062e27abf3c960f042757bcdcca3169d9e318627d2fcd94ff6fcfa72ae2f5
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:5740d54261321739e324665725566bed539687d21b4b46b7edb359cce491dadc
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:4228de3d4a7d2240e13cfbb9132f75792a9c4b86e494fb3bb0ed53f6df267573
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:c0fc3b0eeda8340f8ca684c215333c50d7896e861b6f899d4c93317c90f21d65
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:de5f2b08ea7f938bdb8764bec1401d6ee55298754f91e912e14fc2faa0bf0796
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:f22a55f1a6c720d83532a5af45e7aeb1593163f0e467290d2ffadbf4bb8b10cc
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:029a326a842d7645fc944b177234053e416517747ac6a6753675555adf2af328
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:265e3de1cb6b823d2165a109dfb2fae4c7647ae543c920fe66d566698d851360
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:4512e39b757445f9d3d523f121319620208bf81642f39006fe491cb37028a429
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:2b2a285276dcbce1863b2bf535042d3a4cd394f11cf73adc451226e53af54ad9
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:6b57bada2bce96583d5f80ae4bbcf4cdb54fcd1a214e75433e56d626e4a7f0bf
        - registry.redhat.io/rhacm2/acm-governance-policy-framework-addon-rhel9@sha256:a88b2a9ec0b88483294f01848cd35548d82607c8b76ec4f24ad87271b5d7d56e
        - registry.redhat.io/rhem/flightctl-db-setup-rhel9@sha256:2aab6e480a201e202dd7f670caa27838db2c219e08c2726cbea5e7885091d639
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:5bf5ff559fd9f0c06995237cc235d0939b44c023612e0179a9bc8de99cf185e5
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:0ef909e3fa2bd636c2c727bb86ae86904af4eafa77ef533359c52727567e0c4e
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:490ad6fd2150a463cc7783342ad8ffdd5753af9c76cf27dd3266364439e2b6ab
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:ad124178d2f0d7e4184a1c18445a916e289629b382d0ed9fceb76ab8eeaeb6fd
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:435b0f0df603380649b287ec8e0be94905501badbbaa24ae99450fb9c3f20378
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:a4bd68cf7b12b5f9b133983c988bd668f1dcddfd090b9912ee3d069d2f9d7517
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:91f98eefba17fb0766eb3d6b94e7cd276a1ee5baf6c39c153929b4704b3c3b91
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:79c843df370a7ff57d1f9fbba162c252729b7de331d88fb1679b54544cc7caac
        - registry.redhat.io/rhel9/redis-7@sha256:bbce339dd580334f0e1019a31d97b053796bd16bdee79745a3102a22ce2983b0
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:22a6b529dbf9aa27d15f3260bcc6acc1300bb6ac9ad60f47fcc115f24a5b832b
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:9d486e0652b865d109c8fd7592ae96b43c1bfcda6ce154c11d6b91fbc15eb293
        - registry.redhat.io/rhacm2/multicluster-role-assignment-rhel9@sha256:203cc1df7f09512c1578867722c61fcb90518c19d612e9a89b7b626db2805ea9
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        - registry.redhat.io/rhem/flightctl-alertmanager-proxy-rhel9@sha256:1d59b2cdbc4824ae2a8c1b32e7beae87331b410bb1f24c5216efd2629dd08a86
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:b541e86af7b6b458c58755f092147868164c2cbf0b239239d8331876fb6996b9
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:fa26debe735df99a87997ef107ea56b7edf94168b98bd02bfe146f593c3e58c9
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:e1bc46429dc2da167e27400cce84af2082be150f577b37f98912371b6d684bbc
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:4f78bd465a4892788b85f2817c4e950d98fede462a2cc6725546bedc68683281
        - registry.redhat.io/rhem/flightctl-alert-exporter-rhel9@sha256:2a1f1cf703782cc0cb07a8c6f950eadf209f47baf1186a2045210eda6b6d8246
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:3ea6921965c3f90b02a8e71287159f0771cc9fb5bbd37ab8c594df235e79d9fc
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:1c73ab166a99713bb9a7e17d347150213399740849524dc0a9471804c1a80d61
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:7a050603905f8cd0a5545b87475f077ff5639cff3c1c72eba0e6c9adfa1136e2
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:eac5ade5fc49b724ef33c05c81bf960f7bec3f52faa2e44db249d05bcc45c280
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:1621430aed061d140280a41bca527d616b4801f6dec9684792e7372a75fd778e
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:5f1fc557bef7e06ad285e94e20e4c1bb4f2b8b31c6239d195fd93ff02a530f9c
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c1a264cc0484c6f58dd9915cb6575605ca3d6b1c2dc20a4841fc7afd906a8833
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:e27e5adc9169479aacc701677c740bb21c12a81d0df4a55442605d3dceffa91b
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:3329ee154252a8aa0f6208a59d21fd93198c01b42a1022a7310796ece8eeed0d
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:cbd55d9bfd2056b3916581e51e547225b5b007c266c670844fc0881ed2cc67de
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:34e66dd3f7dbc4760c8c6d3c9feae7bed6ff3357c8ee5a1d16e058bd496f7188
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:259bda37cfa2785051894838cf660a22564a36739eed7f25952703bf193c27fd
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:d589008f69fdc4738b2384d1098de2beeb7b7d2ee3dd64309d4f10308ab40afa
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:0e09bf9106e6937212b83c989657f8984547c81b272990cfe6b71158b8966a03
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:19630eb9d520219cb515c2da23090efba4a15f3bdc6539af695c5b546c35d61e
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:ad8ee7504e9d69edace4de3b119cdde99885677bebdbf0a6c11d3e62d92d1aec
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e2681bce57dc9c15701f5591532c2dfe8f19778606661339553a28dc003dbca5
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:a7b322fe65406009776e894d98055e848abe38f3c6e4c5ec7abb40321c066ff6
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:d8645f5266b1cadb7fc8139ae1c8e77732cbbe0642f52547df536e9fbcecc03a
        - registry.redhat.io/rhel8/postgresql-16@sha256:d64b9dff3ebf4a277080adf043d4ad56efc7b14a646f0ea72b911f58e28d50cf
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:e30dc28359ddb8fe2ddaa55e43e69cafed9ffe3a64fecebcb03a850a64fe2c59
        - registry.redhat.io/ubi9/ubi-minimal@sha256:34880b64c07f28f64d95737f82f891516de9a3b43583f39970f7bf8e4cfa48b7
        version: 2.15.0
      entries:
      - name: advanced-cluster-management.v2.15.0
        version: 2.15.0
      name: release-2.15
    defaultChannel: release-2.15
    packageName: advanced-cluster-management
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-kafka-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kafka-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/kafka-operator@sha256:0070de045fb7c4e5962075c4fd259e600d66c64fced1172c0fff0a4f8c2d677f
          description: Stackable Operator for Apache Kafka
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/kafka-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for KafkaClusterSpec via `CustomResource`
            displayName: kafkaclusters.kafka.stackable.tech
            kind: KafkaCluster
            name: kafkaclusters.kafka.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - registry.connect.redhat.com/stackable/stackable-apache-kafka-operator@sha256:59b651c4353f3908af5feee8f44f66385b20caab983a477087c434244f4f9234
        - quay.io/stackable/kafka-operator@sha256:0070de045fb7c4e5962075c4fd259e600d66c64fced1172c0fff0a4f8c2d677f
        version: 25.11.0
      entries:
      - name: kafka-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-kafka-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: SusQL Operator Contributors
      provider-url: https://github.com/sustainable-computing-io/susql-operator
    name: susql-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: susql-operator.v0.0.34
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "susql.ibm.com/v1",
                "kind": "LabelGroup",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "susql-operator",
                    "app.kubernetes.io/instance": "labelgroup-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "susql-operator",
                    "app.kubernetes.io/part-of": "susql-operator"
                  },
                  "name": "labelgroup-sample"
                },
                "spec": {
                  "labels": [
                    "labelgroup-sample-1",
                    "labelgroup-sample-2"
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: quay.io/sustainable_computing_io/susql_operator:0.0.34
          createdAt: "2025-07-10T01:20:37Z"
          description: 'Aggregates energy and CO2 emission data for pods tagged with
            SusQL labels '
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/sustainable-computing-io/susql-operator
          support: https://github.com/sustainable-computing-io/susql-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: LabelGroup is the Schema for the LabelGroups API
            displayName: Label Group
            kind: LabelGroup
            name: labelgroups.susql.ibm.com
            version: v1
        description: |-
          ### About this Operator

          SusQL is a Kubernetes operator that aggregates energy and estimated
          carbon dioxide emission data for pods tagged with SusQL specific
          labels. The energy measurements are taken from Kepler which should
          be deployed in the cluster before using SusQL.

          ### Prerequisites

          1. Deployment of [Kepler](https://sustainable-computing.io/) on the cluster
          2. Ensure that [User Project Monitoring](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)
          is enabled to monitor energy consumed in user projects.
          3. Creation of a SusQL Service Monitor:
                `oc apply -n <NAMESPACE> -f https://raw.githubusercontent.com/sustainable-computing-io/susql-operator/main/hack/susql-servicemonitor.yaml`

          ### API Backward Compatibility

          Until Operator supports **seamless upgrades**, a new version of the operator may
          introduce a change that is **NOT** backwards compatible with the previous version.
          Thus, to upgrade the operator, uninstall the already installed version completely
          (including CRDs) and install the new version. For example to upgrade from 0.1.0
          to 0.2.0, you must first uninstall 0.1.0.

          ### LabelGroup spec Example

          ```
          apiVersion: susql.ibm.com/v1
          kind: LabelGroup
          metadata:
            name: labelgroup-name
            namespace: susql-operator
          spec:
            labels:
              - my-label-1
              - my-label-2
          ```

          ### Documentation

          Documentation can be found at [SusQL Operator](https://github.com/sustainable-computing-io/susql-operator#readme).

          ### Getting help

          If you encounter any issues while using the SusQL Operator, you can create an
          [issue](https://github.com/sustainable-computing-io/susql-operator/issues)
          on our GitHub repo for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by raising [issues](https://github.com/sustainable-computing-io/susql-operator/issues)
          related to susql-operator.

          ### License
          susql-operator is licensed under the Apache 2.0 license
        displayName: SusQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - aggregation
        - sustainability
        - energy
        - kepler
        - susql
        - carbon dioxide (CO2) emissions
        - green computing
        links:
        - name: SusQL Operator
          url: https://github.com/sustainable-computing-io/susql-operator
        - name: Sustainable Computing
          url: https://github.com/sustainable-computing-io
        maintainers:
        - email: trent@jp.ibm.com
          name: Scott Trent
        - email: mohammed.munir.abdi@ibm.com
          name: Mohammed Abdi
        maturity: alpha
        provider:
          name: SusQL Operator Contributors
          url: https://github.com/sustainable-computing-io/susql-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/susql-operator@sha256:aa0934d55377b2d32588794150f80f7e9ac198b63f6cba7aeb42d165899e56d6
        - quay.io/sustainable_computing_io/susql_operator:0.0.34
        version: 0.0.34
      entries:
      - name: susql-operator.v0.0.34
        version: 0.0.34
      name: alpha
    defaultChannel: alpha
    packageName: susql-operator
    provider:
      name: SusQL Operator Contributors
      url: https://github.com/sustainable-computing-io/susql-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hazelcast, Inc
      provider-url: ""
    name: hazelcast-platform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hazelcast-platform-operator.v5.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "cache-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "CronHotBackup",
                "metadata": {
                  "name": "cronhotbackup-sample"
                },
                "spec": {
                  "hotBackupTemplate": {
                    "metadata": {
                      "labels": {
                        "cron-hotbackup": "true"
                      }
                    },
                    "spec": {
                      "hazelcastResourceName": "hazelcast"
                    }
                  },
                  "schedule": "*/30 * * * *"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast"
                },
                "spec": {
                  "clusterSize": 3,
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast-sample"
                },
                "spec": {
                  "clusterSize": 3,
                  "jet": {
                    "bucketConfig": {
                      "bucketURI": "gs://operator-user-code/jetJobs",
                      "secretName": "br-secret-gcp"
                    },
                    "enabled": true,
                    "resourceUploadEnabled": true
                  },
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HazelcastEndpoint",
                "metadata": {
                  "name": "hazelcastendpoint-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "port": 5701,
                  "type": "Discovery"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HotBackup",
                "metadata": {
                  "name": "hot-backup"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-longrun"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-longrun-2.0.0.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-1.0.2.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJobSnapshot",
                "metadata": {
                  "name": "jetjobsnapshot-sample"
                },
                "spec": {
                  "cancelJob": false,
                  "jetJobResourceName": "jet-job"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ManagementCenter",
                "metadata": {
                  "name": "managementcenter"
                },
                "spec": {
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "hazelcastClusters": [
                    {
                      "address": "hazelcast",
                      "name": "dev"
                    }
                  ],
                  "licenseKeySecretName": "hazelcast-license-key",
                  "persistence": {
                    "enabled": true,
                    "size": "10Gi"
                  },
                  "repository": "hazelcast/management-center"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Map",
                "metadata": {
                  "name": "map"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "MultiMap",
                "metadata": {
                  "name": "multimap-sample"
                },
                "spec": {
                  "backupCount": 3,
                  "binary": true,
                  "collectionType": "LIST",
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Queue",
                "metadata": {
                  "name": "queue-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ReplicatedMap",
                "metadata": {
                  "name": "replicatedmap-sample"
                },
                "spec": {
                  "asyncFillup": true,
                  "hazelcastResourceName": "hazelcast",
                  "inMemoryFormat": "OBJECT"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Topic",
                "metadata": {
                  "name": "topic-sample"
                },
                "spec": {
                  "globalOrderingEnabled": true,
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "UserCodeNamespace",
                "metadata": {
                  "name": "ucn-sample"
                },
                "spec": {
                  "bucketConfig": {
                    "bucketURI": "gs://operator-user-code/userCodeNamespace",
                    "secretName": "br-secret-gcp"
                  },
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanReplication",
                "metadata": {
                  "name": "wanreplication-sample"
                },
                "spec": {
                  "endpoints": "35.192.33.252",
                  "resources": [
                    {
                      "kind": "Map",
                      "name": "map-sample"
                    },
                    {
                      "kind": "Hazelcast",
                      "name": "hz-sample"
                    }
                  ],
                  "targetClusterName": "dev"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanSync",
                "metadata": {
                  "name": "wansync-sample"
                },
                "spec": {
                  "wanReplicationResourceName": "wan-replication-sample"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: docker.io/hazelcast/hazelcast-platform-operator@sha256:99005afda5c71ceeac200928dfed4ea35480f871053101e3aeaa44005e3fda14
          createdAt: "2024-07-29T15:35:56Z"
          description: '[DEPRECATED] Use the certified Hazelcast Operator instead'
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/hazelcast/hazelcast-platform-operator/
          support: Hazelcast, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.hazelcast.com
            version: v1alpha1
          - description: CronHotBackup is the Schema for the cronhotbackups API
            displayName: Cron Hot Backup
            kind: CronHotBackup
            name: cronhotbackups.hazelcast.com
            version: v1alpha1
          - description: HazelcastEndpoint is the Schema for the hazelcastendpoints
              API
            displayName: Hazelcast Endpoint
            kind: HazelcastEndpoint
            name: hazelcastendpoints.hazelcast.com
            version: v1alpha1
          - description: Hazelcast is the Schema for the hazelcasts API
            displayName: Hazelcast
            kind: Hazelcast
            name: hazelcasts.hazelcast.com
            version: v1alpha1
          - description: HotBackup is the Schema for the hot backup API
            displayName: Hot Backup
            kind: HotBackup
            name: hotbackups.hazelcast.com
            version: v1alpha1
          - description: JetJob is the Schema for the jetjobs API
            displayName: Jet Job
            kind: JetJob
            name: jetjobs.hazelcast.com
            version: v1alpha1
          - description: JetJobSnapshot is the Schema for the jetjobsnapshots API
            displayName: Jet Job Snapshot
            kind: JetJobSnapshot
            name: jetjobsnapshots.hazelcast.com
            version: v1alpha1
          - description: ManagementCenter is the Schema for the managementcenters
              API
            displayName: Management Center
            kind: ManagementCenter
            name: managementcenters.hazelcast.com
            version: v1alpha1
          - description: Map is the Schema for the maps API
            displayName: Map
            kind: Map
            name: maps.hazelcast.com
            version: v1alpha1
          - description: MultiMap is the Schema for the multimaps API
            displayName: Multi Map
            kind: MultiMap
            name: multimaps.hazelcast.com
            version: v1alpha1
          - description: Queue is the Schema for the queues API
            displayName: Queue
            kind: Queue
            name: queues.hazelcast.com
            version: v1alpha1
          - description: ReplicatedMap is the Schema for the replicatedmaps API
            displayName: Replicated Map
            kind: ReplicatedMap
            name: replicatedmaps.hazelcast.com
            version: v1alpha1
          - description: Topic is the Schema for the topics API
            displayName: Topic
            kind: Topic
            name: topics.hazelcast.com
            version: v1alpha1
          - description: UserCodeNamespace is the Schema for the usercodenamespaces
              API
            displayName: User Code Namespace
            kind: UserCodeNamespace
            name: usercodenamespaces.hazelcast.com
            version: v1alpha1
          - description: WanReplication is the Schema for the wanreplications API
            displayName: Wan Replication
            kind: WanReplication
            name: wanreplications.hazelcast.com
            version: v1alpha1
          - description: WanSync is the Schema for the wansyncs API
            displayName: Wan Sync
            kind: WanSync
            name: wansyncs.hazelcast.com
            version: v1alpha1
        description: |
          ## Deprecated
          Use the certified Hazelcast Operator instead.
          # Hazelcast Platform Operator #

          Easily deploy Hazelcast clusters and Management Center into Kubernetes environments and manage their lifecycles.

          ## Before You Start

          If you are planning to create Hazelcast Platform Enterprise clusters, you need to [create a secret](https://docs.hazelcast.com/operator/latest/get-started#step-2-start-the-hazelcast-cluster) for the license. You can request a trial license key from [here](https://trialrequest.hazelcast.com).

          For Hazelcast Platform clusters, you can simply continue.

          ## Documentation

          1. [Get started](https://docs.hazelcast.com/operator/latest/get-started) with the Operator
          2. [Connect to the cluster from outside Kubernetes](https://guides.hazelcast.org/hazelcast-platform-operator-expose-externally)
          3. [Restore a Cluster from Cloud Storage with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-external-backup-restore)
          4. [Replicate Data between Two Hazelcast Clusters with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-wan-replication)

          ## Features

          Hazelcast Platform Operator supports the features below:

          * Custom resource for Hazelcast Platform (Enterprise) and Management Center
          * Observe status of Hazelcast clusters and Management Center instances
          * High Availability Mode configuration to create clusters that are resilient to node and zone failures
          * Support for TLS connections between members using self-signed certificates
          * Scale up and down Hazelcast clusters
          * Expose Hazelcast cluster to external clients ([Smart & Unisocket](https://docs.hazelcast.com/hazelcast/latest/clients/java#java-client-operation-modes))
          * Backup Hazelcast persistence data to cloud storage with the possibility of scheduling it and restoring the data accordingly
          * WAN Replication feature when you need to synchronize multiple Hazelcast clusters, which are connected by WANs
          * Full and Delta WAN Sync support
          * Tiered Storage support for Hazelcast and Map CRs
          * CP Subsystem configuration support for Hazelcast CR
          * User Code Deployment feature, which allows you to deploy custom and domain classes from cloud storages and URLs to Hazelcast members
          * The User Code Namespaces feature allows you to deploy custom and domain classes at runtime without a members restart
          * Support the configuration of advanced networking options
          * Support Multi-namespace configuration
          * ExecutorService and EntryProcessor support
          * Support several data structures like Map, Topic, MultiMap, ReplicatedMap, Queue and Cache which can be created dynamically via specific Custom Resources
          * MapStore, Near Cache and off-heap memory (HD memory and native memory) support for the Map CR
          * Native Memory support for the Cache CR
          * Support Jet configuration and Jet Job submission using the JetJob CR
          * Support for exporting the snapshots of JetJob CRs using JetJobSnapshot CR
          * Support for custom configurations using ConfigMap
        displayName: '[DEPRECATED] Hazelcast Platform Operator'
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hazelcast
        - keyvalue
        - in-memory
        - database
        - caching
        links:
        - name: Documentation
          url: https://docs.hazelcast.com/operator/latest/
        - name: Source Code
          url: https://github.com/hazelcast/hazelcast-platform-operator
        maintainers:
        - email: cloudnative@hazelcast.com
          name: Hazelcast Cloud Native Team
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Hazelcast, Inc
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hazelcast-platform-operator@sha256:1209876fc9103eb2d69c34e97e4e2e0b384a9a778ae7e6a53222b8552fbf2f26
        - docker.io/hazelcast/hazelcast-platform-operator@sha256:99005afda5c71ceeac200928dfed4ea35480f871053101e3aeaa44005e3fda14
        version: 5.13.0
      entries:
      - name: hazelcast-platform-operator.v5.13.0
        version: 5.13.0
      - name: hazelcast-platform-operator.v5.12.0
        version: 5.12.0
      - name: hazelcast-platform-operator.v5.11.0
        version: 5.11.0
      - name: hazelcast-platform-operator.v5.10.0
        version: 5.10.0
      - name: hazelcast-platform-operator.v5.9.0
        version: 5.9.0
      - name: hazelcast-platform-operator.v5.8.0
        version: 5.8.0
      - name: hazelcast-platform-operator.v5.7.0
        version: 5.7.0
      - name: hazelcast-platform-operator.v5.6.0
        version: 5.6.0
      - name: hazelcast-platform-operator.v5.5.0
        version: 5.5.0
      - name: hazelcast-platform-operator.v5.4.0
        version: 5.4.0
      - name: hazelcast-platform-operator.v5.3.0
        version: 5.3.0
      - name: hazelcast-platform-operator.v5.2.0
        version: 5.2.0
      - name: hazelcast-platform-operator.v5.1.0
        version: 5.1.0
      - name: hazelcast-platform-operator.v5.0.0
        version: 5.0.0
      name: alpha
    defaultChannel: alpha
    packageName: hazelcast-platform-operator
    provider:
      name: Hazelcast, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com/
    name: varnish-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: varnish-operator.v0.27.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "caching.ibm.com/v1alpha1",
                "kind": "VarnishCluster",
                "metadata": {
                  "name": "varnishcluster-sample"
                },
                "spec": {
                  "backend": {
                    "port": "web",
                    "selector": {
                      "app": "nginx"
                    }
                  },
                  "replicas": 1,
                  "service": {
                    "port": 80
                  },
                  "varnish": {
                    "args": [
                      "-p",
                      "default_ttl=3600",
                      "-p",
                      "default_grace=3600"
                    ]
                  },
                  "vcl": {
                    "configMapName": "vcl-files",
                    "entrypointFileName": "entrypoint.vcl"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking
          certified: "false"
          containerImage: ibmcom/varnish-operator:0.27.2
          createdAt: 2021-02-15T11:15:31+0000
          description: Run and manage Varnish clusters on Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/IBM/varnish-operator
          support: https://ibm.github.io/varnish-operator/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VarnishCluster is the Schema for the varnishclusters API
            displayName: Varnish Cluster
            kind: VarnishCluster
            name: varnishclusters.caching.ibm.com
            version: v1alpha1
        description: |
          Run and manage Varnish clusters on Kubernetes

          The operator manages the whole lifecycle of the cluster: creating, deleting and keeping the cluster configuration up to date.

          The operator is responsible for building the VCL configuration using templates defined by the users and keeping the configuration up to date when relevant events occur (backend pod failure, scaling of the deployment, VCL configuration change).

          Example of a simple `VarnishCluster`:

          ```yaml
          apiVersion: caching.ibm.com/v1alpha1
          kind: VarnishCluster
          metadata:
            name: varnishcluster-sample
            namespace: varnish-ns
          spec:
            vcl:
              configMapName: vcl-files
              entrypointFileName: entrypoint.vcl
            replicas: 3
            backend:
              selector:
                app: nginx
            service:
              port: 80
          ```

          Full documentation can be found [here](https://ibm.github.io/varnish-operator/)
        displayName: Varnish Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - varnish
        - cache
        links:
        - name: Varnish Operator Docs
          url: https://ibm.github.io/varnish-operator
        - name: Varnish Operator Source Code
          url: https://github.com/IBM/varnish-operator
        maintainers:
        - email: tomash.sidei@ibm.com
          name: Tomash Sidei
        - email: cingram@us.ibm.com
          name: Craig Ingram
        maturity: alpha
        provider:
          name: IBM
          url: https://www.ibm.com/
        relatedImages:
        - ibmcom/varnish-operator:0.27.2
        - quay.io/openshift-community-operators/varnish-operator@sha256:46de72c5abad80cef3d6426be967131c51c2c15029a6a38744975578c805a44e
        version: 0.27.2
      entries:
      - name: varnish-operator.v0.27.2
        version: 0.27.2
      name: alpha
    defaultChannel: alpha
    packageName: varnish-operator
    provider:
      name: IBM
      url: https://www.ibm.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: clusterresourceoverride
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clusterresourceoverride-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.autoscaling.openshift.io/v1",
                "kind": "ClusterResourceOverride",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "podResourceOverride": {
                    "spec": {
                      "memoryRequestToLimitPercent": 50,
                      "cpuRequestToLimitPercent": 25,
                      "limitCPUToMemoryPercent": 200
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certifiedLevel: Primed
          containerImage: registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9-operator@sha256:549a0aa3c79b04c5443f5c75d41d6b2af8cfb4bc1efd90268760f944ffc6b215
          createdAt: 2019/11/15
          description: An operator to manage the OpenShift ClusterResourceOverride
            Mutating Admission Webhook Server
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          healthIndex: B
          olm.skipRange: '>=4.3.0 <4.20.0-202512081147'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/cluster-resource-override-admission-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an instance of ClusterResourceOverride Admission
              Webhook
            displayName: ClusterResourceOverride
            kind: ClusterResourceOverride
            name: clusterresourceoverrides.operator.autoscaling.openshift.io
            version: v1
        description: "ClusterResourceOverride\n==============\n\nContainers can specify
          compute resource requests and limits. Requests are used for scheduling your
          container and provide a minimum service guarantee. Limits constrain the
          amount of compute resource that may be consumed on your node.\n\nThe scheduler
          attempts to optimize the compute resource use across all nodes in your cluster.
          It places pods onto specific nodes, taking the pods' compute resource requests
          and nodes' available capacity into consideration.\n\nRequests and limits
          enable administrators to allow and manage the overcommitment of resources
          on a node, which may be desirable in development environments where a trade
          off of guaranteed performance for capacity is acceptable.\n\n### Requests
          and Limits\n\nFor each compute resource, a container may specify a resource
          request and limit. Scheduling decisions are made based on the request to
          ensure that a node has enough capacity available to meet the requested value.
          If a container specifies limits, but omits requests, the requests are defaulted
          to the limits. A container is not able to exceed the specified limit on
          the node.\n\nThe enforcement of limits is dependent upon the compute resource
          type. If a container makes no request or limit, the container is scheduled
          to a node with no resource guarantees. In practice, the container is able
          to consume as much of the specified resource as is available with the lowest
          local priority. In low resource situations, containers that specify no resource
          requests are given the lowest quality of service.\n\n### Compute Resources\n\nThe
          node-enforced behavior for compute resources is specific to the resource
          type.\n\n#### CPU\n\nA container is guaranteed the amount of CPU it requests
          and is additionally able to consume excess CPU available on the node, up
          to any limit specified by the container. If multiple containers are attempting
          to use excess CPU, CPU time is distributed based on the amount of CPU requested
          by each container.\n\nFor example, if one container requested 500m of CPU
          time and another container requested 250m of CPU time, then any extra CPU
          time available on the node is distributed among the containers in a 2:1
          ratio. If a container specified a limit, it will be throttled not to use
          more CPU than the specified limit.\n\nCPU requests are enforced using the
          CFS shares support in the Linux kernel. By default, CPU limits are enforced
          using the CFS quota support in the Linux kernel over a 100ms measuring interval,
          though this can be disabled.\n\n#### Memory\n\nA container is guaranteed
          the amount of memory it requests. A container may use more memory than requested,
          but once it exceeds its requested amount, it could be killed in a low memory
          situation on the node.\n\nIf a container uses less memory than requested,
          it will not be killed unless system tasks or daemons need more memory than
          was accounted for in the node’s resource reservation. If a container specifies
          a limit on memory, it is immediately killed if it exceeds the limit amount.\n\n###
          Configuring the Cluster for Overcommitment\n\nScheduling is based on resources
          requested, while quota and hard limits refer to resource limits, which can
          be set higher than requested resources. The difference between request and
          limit determines the level of overcommit; for instance, if a container is
          given a memory request of 1Gi and a memory limit of 2Gi, it is scheduled
          based on the 1Gi request being available on the node, but could use up to
          2Gi; so it is 200% overcommitted. If OpenShift Container Platform administrators
          would like to control the level of overcommit and manage container density
          on nodes, ClusterResourceOverride Admission Webhook can be configured to
          override the ratio between request and limit set on developer containers.
          In conjunction with a per-project LimitRange specifying limits and defaults,
          this adjusts the container limit and request to achieve the desired level
          of overcommit.\n\nThis requires creating a custom resource of `ClusterResourceOverride`
          type as in the following example:\n\n    \n    - apiVersion: operator.autoscaling.openshift.io/v1\n
          \   - kind: ClusterResourceOverride\n    - metadata:\n    -   name: cluster\n
          \   - spec:\n    -   podResourceOverride:\n    -     spec:\n    -       memoryRequestToLimitPercent:
          25\n    -       cpuRequestToLimitPercent: 25\n    -       limitCPUToMemoryPercent:
          200\n    \n **memoryRequestToLimitPercent**: (optional, 1-100) If a container
          memory limit has been specified or defaulted, the memory request is overridden
          to this percentage of the limit.\n\n **cpuRequestToLimitPercent**: (optional,
          1-100) If a container CPU limit has been specified or defaulted, the CPU
          request is overridden to this percentage of the limit.\n\n **limitCPUToMemoryPercent**:
          (optional, positive integer) If a container memory limit has been specified
          or defaulted, the CPU limit is overridden to a percentage of the memory
          limit, with a 100 percentage scaling 1Gi of RAM to equal 1 CPU core. This
          is processed prior to overriding CPU request (if configured).\n\n Note that
          these overrides have no effect if no limits have been set on containers.
          [Create a LimitRange object] (https://docs.openshift.com/container-platform/3.3/admin_guide/limits.html#admin-guide-limits)
          with default limits (per individual project, or in the [project template](https://docs.openshift.com/container-platform/3.3/admin_guide/managing_projects.html#modifying-the-template-for-new-projects))
          in order to ensure that the overrides apply.\n\nWhen configured, overrides
          can be enabled per-project by applying the following label.\n    ```\n    clusterresourceoverrides.admission.autoscaling.openshift.io/enabled:
          \"true\"\n    ```\n\n"
        displayName: ClusterResourceOverride Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - deschedule
        - scale
        - binpack
        - efficiency
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-operator-bundle@sha256:c5f8be89116c08822005cd5026a7fa5b9c6ccf706a076ff6b0a3bd3c1991102c
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9-operator@sha256:549a0aa3c79b04c5443f5c75d41d6b2af8cfb4bc1efd90268760f944ffc6b215
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9@sha256:688729db8a70fa8e3a37a1a00f62dad124b6b6f9c90e46503873bbf40a066225
        version: 4.20.0-202512081147
      entries:
      - name: clusterresourceoverride-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: clusterresourceoverride-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: clusterresourceoverride-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: clusterresourceoverride-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: clusterresourceoverride-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: clusterresourceoverride-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: clusterresourceoverride-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: clusterresourceoverride
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: sriov-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sriov-network-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovIBNetwork",
                "metadata": {
                  "name": "example-sriovibnetwork",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"host-local\",\n  \"subnet\": \"10.56.217.0/24\",\n  \"rangeStart\": \"10.56.217.171\",\n  \"rangeEnd\": \"10.56.217.181\",\n  \"routes\": [{\n    \"dst\": \"0.0.0.0/0\"\n  }],\n  \"gateway\": \"10.56.217.1\"\n}\n",
                  "linkState": "auto",
                  "networkNamespace": "default",
                  "resourceName": "mellanoxnics"
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetwork",
                "metadata": {
                  "name": "example-sriovnetwork",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"host-local\",\n  \"subnet\": \"10.56.217.0/24\",\n  \"rangeStart\": \"10.56.217.171\",\n  \"rangeEnd\": \"10.56.217.181\",\n  \"routes\": [{\n    \"dst\": \"0.0.0.0/0\"\n  }],\n  \"gateway\": \"10.56.217.1\"\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "intelnics",
                  "spoofChk": "on",
                  "trust": "off",
                  "vlan": 0
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetworkNodePolicy",
                "metadata": {
                  "name": "policy-1",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "deviceType": "vfio-pci",
                  "mtu": 9000,
                  "nicSelector": {
                    "pfNames": [
                      "eth1"
                    ],
                    "rootDevices": [
                      "0000:01:00.1"
                    ],
                    "vendor": "8086"
                  },
                  "nodeSelector": {
                    "feature.node.kubernetes.io/network-sriov.capable": "true"
                  },
                  "numVfs": 6,
                  "priority": 99,
                  "resourceName": "intelnics"
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetworkNodeState",
                "metadata": {
                  "name": "minikube",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "interfaces": []
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetworkPoolConfig",
                "metadata": {
                  "name": "sriovnetworkpoolconfig-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovOperatorConfig",
                "metadata": {
                  "name": "default",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "enableInjector": true,
                  "enableOperatorWebhook": true,
                  "logLevel": 2
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-sriov-network-rhel9-operator@sha256:c4b91f426ee2ca995472dc03e04276cab57e1edf01e7af7a57b360c1b0ec5bd0
          createdAt: "2025-08-05T11:50:34Z"
          description: An operator for configuring SR-IOV components and initializing
            SRIOV network devices in Openshift cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.3.0-0 <4.20.0-202512081147'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "sriovnetwork.openshift.io/v1",
              "kind": "SriovOperatorConfig",
              "metadata": {
                "name": "default"
              },
              "spec": {
                "configurationMode": "daemon",
                "disableDrain": false,
                "enableInjector": true,
                "enableOperatorWebhook": true,
                "logLevel": 2,
                "featureGates": {
                    "resourceInjectorMatchCondition": true
                }
              }
            }
          operatorframework.io/suggested-namespace: openshift-sriov-network-operator
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-sriov-network-operator",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/internal-objects: '["sriovnetworknodestates.sriovnetwork.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/k8snetworkplumbingwg/sriov-network-operator
          support: Red Hat
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OVSNetwork is the Schema for the ovsnetworks API
            displayName: OVSNetwork
            kind: OVSNetwork
            name: ovsnetworks.sriovnetwork.openshift.io
            version: v1
          - description: SriovIBNetwork is the Schema for the sriovibnetworks API
            displayName: Sriov IBNetwork
            kind: SriovIBNetwork
            name: sriovibnetworks.sriovnetwork.openshift.io
            version: v1
          - description: SriovNetworkNodePolicy is the Schema for the sriovnetworknodepolicies
              API
            displayName: Sriov Network Node Policy
            kind: SriovNetworkNodePolicy
            name: sriovnetworknodepolicies.sriovnetwork.openshift.io
            version: v1
          - description: SriovNetworkNodeState is the Schema for the sriovnetworknodestates
              API
            displayName: Sriov Network Node State
            kind: SriovNetworkNodeState
            name: sriovnetworknodestates.sriovnetwork.openshift.io
            version: v1
          - kind: SriovNetworkPoolConfig
            name: sriovnetworkpoolconfigs.sriovnetwork.openshift.io
            version: v1
          - description: SriovNetwork is the Schema for the sriovnetworks API
            displayName: Sriov Network
            kind: SriovNetwork
            name: sriovnetworks.sriovnetwork.openshift.io
            version: v1
          - description: SriovOperatorConfig is the Schema for the sriovoperatorconfigs
              API
            displayName: Sriov Operator Config
            kind: SriovOperatorConfig
            name: sriovoperatorconfigs.sriovnetwork.openshift.io
            version: v1
        description: |
          # SR-IOV Network Operator for Openshift

          ## Introduction
          The sriov-network-operator is generally responsible for configuring the sriov components in a openshift cluster.

          ### Supported Features
          * Initialize the SR-IOV NICs on nodes.
          * provision SR-IOV device plugin on selected node.
          * provision SR-IOV CNI plugin on selected nodes.
          * manage configuration of SR-IOV device plugin.
          * generate net-att-def CRs for SR-IOV CNI plugin.

          This operator has to run in namespace 'openshift-sriov-network-operator'. An Operator Group is also required to install this operator:

          ```
          $ oc create namespace openshift-sriov-network-operator

          $ oc create -f - <<EOF
          apiVersion: operators.coreos.com/v1
          kind: OperatorGroup
          metadata:
            name: sriov-network-operators
            namespace: openshift-sriov-network-operator
          spec:
            targetNamespaces:
            - openshift-sriov-network-operator
          EOF
          ```
        displayName: SR-IOV Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - network
        - sr-iov
        - sriov
        links:
        - name: Source Code
          url: https://github.com/k8snetworkplumbingwg/sriov-network-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-sriov-infiniband-cni-rhel9@sha256:b423a3dca275e650fd498e6ca928c9d3c6bd1744c03986d30fb8775f04609b39
        - registry.redhat.io/openshift4/ose-sriov-network-config-daemon-rhel9@sha256:e912e692c32a70f22c34360ca8e8960bdf40bc141f54c5782da3380b972b62ff
        - registry.redhat.io/openshift4/ose-sriov-network-device-plugin-rhel9@sha256:6508614560de3d333fe93d7c72e6b6a1fffb4b5fd75632bf74fc686eb9deaf80
        - registry.redhat.io/openshift4/ose-sriov-network-metrics-exporter-rhel9@sha256:41b94f5b270e5d57b2130de47b0fa25796bfcf64c4dc771058ca0cd433404c05
        - registry.redhat.io/openshift4/ose-sriov-dp-admission-controller-rhel9@sha256:f14abff38a42cb72299e58b957c6f0f09af5182208800a4a6ed55e57e4ab5f28
        - registry.redhat.io/openshift4/ose-sriov-network-operator-bundle@sha256:b85986a39227398c90a8f178da7859900b5eb09e5e77949ca698e8a675904195
        - registry.redhat.io/openshift4/ose-sriov-network-rhel9-operator@sha256:c4b91f426ee2ca995472dc03e04276cab57e1edf01e7af7a57b360c1b0ec5bd0
        - registry.redhat.io/openshift4/ose-sriov-network-webhook-rhel9@sha256:6b23062ab592c3776ff7207ce7caed878474566033e45e377a893c4bac01de82
        - registry.redhat.io/openshift4/ose-sriov-rdma-cni-rhel9@sha256:276e01d4ce0e9407f5f67e015af36ec552f61303fbb7b2d45de5beacdc417937
        - registry.redhat.io/openshift4/sriov-cni-rhel9@sha256:6a3b0070b671a818f094f78073279669c9646ebdc668f7099e44d007380b6060
        version: 4.20.0-202512081147
      entries:
      - name: sriov-network-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: sriov-network-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: sriov-network-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: sriov-network-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: sriov-network-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: sriov-network-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: sriov-network-operator.v4.20.0-202509262224
        version: 4.20.0-202509262224
      name: stable
    defaultChannel: stable
    packageName: sriov-network-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-iam-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-iam-controller.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "Role",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "Group",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "OpenIDConnectProvider",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "Policy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/iam-controller:1.6.0
          createdAt: "2025-11-29T04:48:58Z"
          description: AWS IAM controller is a service controller for managing IAM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Group represents the state of an AWS iam Group resource.
            displayName: Group
            kind: Group
            name: groups.iam.services.k8s.aws
            version: v1alpha1
          - description: InstanceProfile represents the state of an AWS iam InstanceProfile
              resource.
            displayName: InstanceProfile
            kind: InstanceProfile
            name: instanceprofiles.iam.services.k8s.aws
            version: v1alpha1
          - description: OpenIDConnectProvider represents the state of an AWS iam
              OpenIDConnectProvider resource.
            displayName: OpenIDConnectProvider
            kind: OpenIDConnectProvider
            name: openidconnectproviders.iam.services.k8s.aws
            version: v1alpha1
          - description: Policy represents the state of an AWS iam Policy resource.
            displayName: Policy
            kind: Policy
            name: policies.iam.services.k8s.aws
            version: v1alpha1
          - description: Role represents the state of an AWS iam Role resource.
            displayName: Role
            kind: Role
            name: roles.iam.services.k8s.aws
            version: v1alpha1
          - description: ServiceLinkedRole represents the state of an AWS iam ServiceLinkedRole
              resource.
            displayName: ServiceLinkedRole
            kind: ServiceLinkedRole
            name: servicelinkedroles.iam.services.k8s.aws
            version: v1alpha1
          - description: User represents the state of an AWS iam User resource.
            displayName: User
            kind: User
            name: users.iam.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Identity and Access Management (IAM) resources in AWS from within your Kubernetes cluster.

          **About Amazon IAM**

          AWS Identity and Access Management (IAM) is a web service that helps you securely control access to AWS resources. You use IAM to control who is authenticated (signed in) and authorized (has permissions) to use resources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon IAM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - iam
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon IAM Developer Resources
          url: https://aws.amazon.com/iam/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: iam maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/iam-controller:1.6.0
        - quay.io/community-operator-pipeline-prod/ack-iam-controller@sha256:372c8ffd7d949547362a8bf6241b7d3a472190820a12cfddb3c685b85afd1ca7
        version: 1.6.0
      entries:
      - name: ack-iam-controller.v1.6.0
        version: 1.6.0
      - name: ack-iam-controller.v1.5.4
        version: 1.5.4
      - name: ack-iam-controller.v1.5.3
        version: 1.5.3
      - name: ack-iam-controller.v1.5.2
        version: 1.5.2
      - name: ack-iam-controller.v1.5.1
        version: 1.5.1
      - name: ack-iam-controller.v1.5.0
        version: 1.5.0
      - name: ack-iam-controller.v1.4.4
        version: 1.4.4
      - name: ack-iam-controller.v1.4.3
        version: 1.4.3
      - name: ack-iam-controller.v1.4.2
        version: 1.4.2
      - name: ack-iam-controller.v1.4.1
        version: 1.4.1
      - name: ack-iam-controller.v1.4.0
        version: 1.4.0
      - name: ack-iam-controller.v1.3.22
        version: 1.3.22
      - name: ack-iam-controller.v1.3.21
        version: 1.3.21
      - name: ack-iam-controller.v1.3.20
        version: 1.3.20
      - name: ack-iam-controller.v1.3.19
        version: 1.3.19
      - name: ack-iam-controller.v1.3.18
        version: 1.3.18
      - name: ack-iam-controller.v1.3.17
        version: 1.3.17
      - name: ack-iam-controller.v1.3.15
        version: 1.3.15
      - name: ack-iam-controller.v1.3.14
        version: 1.3.14
      - name: ack-iam-controller.v1.3.13
        version: 1.3.13
      - name: ack-iam-controller.v1.3.12
        version: 1.3.12
      - name: ack-iam-controller.v1.3.11
        version: 1.3.11
      - name: ack-iam-controller.v1.3.10
        version: 1.3.10
      - name: ack-iam-controller.v1.3.9
        version: 1.3.9
      - name: ack-iam-controller.v1.3.8
        version: 1.3.8
      - name: ack-iam-controller.v1.3.6
        version: 1.3.6
      - name: ack-iam-controller.v1.3.2
        version: 1.3.2
      - name: ack-iam-controller.v1.3.1
        version: 1.3.1
      - name: ack-iam-controller.v1.3.0
        version: 1.3.0
      - name: ack-iam-controller.v1.2.6
        version: 1.2.6
      - name: ack-iam-controller.v1.2.5
        version: 1.2.5
      - name: ack-iam-controller.v1.2.3
        version: 1.2.3
      - name: ack-iam-controller.v1.2.2
        version: 1.2.2
      - name: ack-iam-controller.v1.2.1
        version: 1.2.1
      - name: ack-iam-controller.v1.2.0
        version: 1.2.0
      - name: ack-iam-controller.v1.1.3
        version: 1.1.3
      - name: ack-iam-controller.v1.1.2
        version: 1.1.2
      - name: ack-iam-controller.v1.1.1
        version: 1.1.1
      - name: ack-iam-controller.v1.1.0
        version: 1.1.0
      - name: ack-iam-controller.v1.0.0
        version: 1.0.0
      - name: ack-iam-controller.v0.1.2
        version: 0.1.2
      - name: ack-iam-controller.v0.1.1
        version: 0.1.1
      - name: ack-iam-controller.v0.1.0
        version: 0.1.0
      - name: ack-iam-controller.v0.0.22
        version: 0.0.22
      - name: ack-iam-controller.v0.0.21
        version: 0.0.21
      - name: ack-iam-controller.v0.0.20
        version: 0.0.20
      - name: ack-iam-controller.v0.0.19
        version: 0.0.19
      - name: ack-iam-controller.v0.0.18
        version: 0.0.18
      - name: ack-iam-controller.v0.0.17
        version: 0.0.17
      - name: ack-iam-controller.v0.0.16
        version: 0.0.16
      - name: ack-iam-controller.v0.0.15
        version: 0.0.15
      - name: ack-iam-controller.v0.0.14
        version: 0.0.14
      - name: ack-iam-controller.v0.0.13
        version: 0.0.13
      - name: ack-iam-controller.v0.0.12
        version: 0.0.12
      - name: ack-iam-controller.v0.0.11
        version: 0.0.11
      - name: ack-iam-controller.v0.0.10
        version: 0.0.10
      - name: ack-iam-controller.v0.0.9
        version: 0.0.9
      - name: ack-iam-controller.v0.0.8
        version: 0.0.8
      - name: ack-iam-controller.v0.0.7
        version: 0.0.7
      - name: ack-iam-controller.v0.0.6
        version: 0.0.6
      - name: ack-iam-controller.v0.0.5
        version: 0.0.5
      - name: ack-iam-controller.v0.0.4
        version: 0.0.4
      - name: ack-iam-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-iam-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://www.medik8s.io/
    name: self-node-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: self-node-remediation.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediation",
                "metadata": {
                  "name": "selfnoderemediation-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationConfig",
                "metadata": {
                  "name": "self-node-remediation-config",
                  "namespace": "self-node-remediation"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationTemplate",
                "metadata": {
                  "name": "selfnoderemediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/self-node-remediation-operator:v0.11.0
          createdAt: "2025-11-24 11:26:35"
          description: Self Node Remediation Operator for remediate itself in case
            of a failure.
          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.skipRange: '>=0.4.0 <0.11.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/self-node-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SelfNodeRemediationConfig is the Schema for the selfnoderemediationconfigs
              API in which a user can configure the self node remediation agents
            displayName: Self Node Remediation Config
            kind: SelfNodeRemediationConfig
            name: selfnoderemediationconfigs.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediation is the Schema for the selfnoderemediations
              API
            displayName: Self Node Remediation
            kind: SelfNodeRemediation
            name: selfnoderemediations.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediationTemplate is the Schema for the selfnoderemediationtemplates
              API
            displayName: Self Node Remediation Template
            kind: SelfNodeRemediationTemplate
            name: selfnoderemediationtemplates.self-node-remediation.medik8s.io
            version: v1alpha1
        description: This self node remediation operator is using an alternate mechanism
          for a node in a cluster to detect its health status and take actions to
          remediate itself in case of a failure. While not all remediation events
          can result in the node returning to a healthy state, the operator does allow
          surviving parts of the cluster to assume the node has reached a safe state
          so that it’s workloads can be automatically recovered. A prerequisite for
          the Self Node Remediation operator is a functioning health detection system
          that implements the external remediation API, such as Node Health Check
          Operator or Machine Health Check Controller (in OCP or Cluster-API based
          clusters). Once a node/machine is unhealthy, the detection system will create
          the SelfNodeRemediation CR, which triggers the Self Node Remediation Operator.
          For this the configuration of the health detection system needs to refer
          to a SelfNodeRemediationTemplate CR. Such a template is created by default
          in the operator's namespace, for usage in other namespaces it needs to be
          created manually. The Node Health Check Operator is configured to use Self
          Node Remediation by default.
        displayName: Self Node Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - fencing
        - remediation
        - auto-healing
        - recovery
        - high-availability
        - baremetal
        - SNR
        links:
        - name: Self Node Remediation
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/self-node-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Medik8s
          url: https://www.medik8s.io/
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/self-node-remediation@sha256:f47ab630017f6eb3884af3bb5e134f3e71a44d99fddbdf261addf2e3b755a6c9
        - quay.io/medik8s/self-node-remediation-operator:v0.11.0
        version: 0.11.0
      entries:
      - name: self-node-remediation.v0.11.0
        version: 0.11.0
      - name: self-node-remediation.v0.10.0
        version: 0.10.0
      - name: self-node-remediation.v0.9.0
        version: 0.9.0
      - name: self-node-remediation.v0.8.0
        version: 0.8.0
      - name: self-node-remediation.v0.7.1
        version: 0.7.1
      - name: self-node-remediation.v0.7.0
        version: 0.7.0
      - name: self-node-remediation.v0.6.1
        version: 0.6.1
      - name: self-node-remediation.v0.6.0
        version: 0.6.0
      - name: self-node-remediation.v0.5.0
        version: 0.5.0
      - name: self-node-remediation.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: self-node-remediation
    provider:
      name: Medik8s
      url: https://www.medik8s.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Airlock
      provider-url: ""
    name: airlock-microgateway
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: airlock-microgateway.v4.5.9
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControl","metadata":{"name":"access-control-example"},"spec":{"policies":[{"requestConditions":{"path":{"matcher":{"exact":"/secure"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}},{"oidc":{"claim":{"name":"roles","value":{"matcher":{"contains":"\"admin\""}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"oidc-example"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"authorization":{}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"secured"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/test/"}}},"authorization":{"requireAny":[{"oidc":{"claim":{"name":"roles","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"group","value":{"matcher":{"exact":"superusers"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-1"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-metadata"}},{"identityPropagationRef":{"name":"test-header-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"exact":"/public"}}},"authorization":{}},{"requestConditions":{"path":{"matcher":{"regex":"^/api/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name"}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-defaults"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-oidc-idtoken"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-bearertoken-metadata"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-idtoken"}}],"onFailure":"Pass"}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurity","metadata":{"name":"content-security-example"},"spec":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-example-1"},"spec":{"value":{"name":"ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-http-filter-example-1"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}}}}},"defaults":{"sessionHandlingRef":{"name":"session-handling-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with TLS information of the downstream connection to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"defaultTimeouts":{"lifetime":"16h"},"prefix":"session_prefix_example"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SidecarGateway","metadata":{"name":"sidecar-gateway-example"},"spec":{"podSelector":{"matchLabels":{"app":"example-app"}},"sessionHandlingRef":{"name":"session-handling-example"},"applications":[{"containerPort":8443,"routes":[{"pathPrefix":"/metrics","unsecured":{}},{"pathPrefix":"/","secured":{"accessControlRef":{"name":"access-control-example"},"contentSecurityRef":{"name":"content-security-example"}}}],"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}},"restrictions":{"http":{"headersLength":"80Ki"}},"protocol":{"auto":{}},"tls":{"enable":true,"secretRef":{"name":"example-tls-secret"},"protocol":{"minimum":"TLSv1_3"},"clientCertificate":{"ignored":{}},"xfcc":"AlwaysForwardOnly"}},"upstream":{"tls":{"enable":true,"protocol":{"minimum":"TLSv1_2"}}},"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-http-filter-example-1"}]},"telemetryRef":{"name":"telemetry-example"}}],"envoyClusterRefs":[{"name":"envoy-cluster-example-1"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-11-26T12:58:13Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: AccessControl
            name: accesscontrols.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurity
            name: contentsecurities.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: SidecarGateway
            name: sidecargateways.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000056)
          * Gateway API
          * (Optional) Airlock Microgateway CNI (Required for [data plane mode sidecar](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000137)).

          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
          2. Check your inbox and save the license file microgateway-license.txt locally.

          *See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000056) to choose the right license type.*

          ### Install Gateway API standard channel
          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ### (Optional) Install Airlock Microgateway CNI
          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          Refer to [our documentation](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000140) for installation instructions

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD_MONITOR\_CREATE | "false" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.5/
        - name: Airlock Microgateway Labs
          url: https://play.instruqt.com/airlock/invite/hyi9fy4b4jzc?icp_referrer=openshift
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:552204cfe7419d394d9eccc8a14135606c412294fc300d95c73373dc5fe54bbe
        - registry.connect.redhat.com/airlock/microgateway@sha256:7693e3131582fe96c85812e20914ef77eead098d314bcee71e52d8cf0f02fcd9
        version: 4.5.9
      entries:
      - name: airlock-microgateway.v4.5.9
        version: 4.5.9
      - name: airlock-microgateway.v4.5.8
        version: 4.5.8
      - name: airlock-microgateway.v4.5.7
        version: 4.5.7
      - name: airlock-microgateway.v4.5.6
        version: 4.5.6
      - name: airlock-microgateway.v4.5.5
        version: 4.5.5
      - name: airlock-microgateway.v4.5.4
        version: 4.5.4
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.5"
    - currentCSV: airlock-microgateway.v4.6.7
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControl","metadata":{"name":"access-control-example"},"spec":{"policies":[{"requestConditions":{"path":{"matcher":{"exact":"/secure"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}},{"oidc":{"claim":{"name":"roles","value":{"matcher":{"contains":"\"admin\""}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"oidc-example"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"tokenExchange":{"onFailure":"Block","actions":[{"tokenExchangeRef":{"name":"token-exchange-example"}}]},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"jwt-example"}}}}},{"authorization":{}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"secured"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/test/"}}},"authorization":{"requireAny":[{"oidc":{"claim":{"name":"roles","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"group","value":{"matcher":{"exact":"superusers"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-1"}}}},"tokenExchange":{"onFailure":"Block","actions":[{"tokenExchangeRef":{"name":"test-token-exchange"}}]},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-metadata"}},{"identityPropagationRef":{"name":"test-header-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"exact":"/public"}}},"authorization":{}},{"requestConditions":{"path":{"matcher":{"regex":"^/api/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name"}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-defaults"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-oidc-idtoken"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-bearertoken-metadata"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-idtoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurity","metadata":{"name":"content-security-example"},"spec":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-example-1"},"spec":{"value":{"name":"ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-http-filter-example-1"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}}}}},"defaults":{"sessionHandlingRef":{"name":"session-handling-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with TLS information of the downstream connection to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"defaultTimeouts":{"lifetime":"16h"},"prefix":"session_prefix_example"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SidecarGateway","metadata":{"name":"sidecar-gateway-example"},"spec":{"podSelector":{"matchLabels":{"app":"example-app"}},"sessionHandlingRef":{"name":"session-handling-example"},"applications":[{"containerPort":8443,"routes":[{"pathPrefix":"/metrics","unsecured":{}},{"pathPrefix":"/","secured":{"accessControlRef":{"name":"access-control-example"},"contentSecurityRef":{"name":"content-security-example"}}}],"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}},"restrictions":{"http":{"headersLength":"80Ki"}},"protocol":{"auto":{}},"tls":{"enable":true,"secretRef":{"name":"example-tls-secret"},"protocol":{"minimum":"TLSv1_3"},"clientCertificate":{"ignored":{}},"xfcc":"AlwaysForwardOnly"}},"upstream":{"tls":{"enable":true,"protocol":{"minimum":"TLSv1_2"}}},"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-http-filter-example-1"}]},"telemetryRef":{"name":"telemetry-example"}}],"envoyClusterRefs":[{"name":"envoy-cluster-example-1"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-10T09:11:36Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: AccessControl
            name: accesscontrols.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurity
            name: contentsecurities.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: SidecarGateway
            name: sidecargateways.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000056)
          * Gateway API
          * (Optional) Airlock Microgateway CNI (Required for [data plane mode sidecar](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000137)).

          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
          2. Check your inbox and save the license file microgateway-license.txt locally.

          *See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000056) to choose the right license type.*

          ### Install Gateway API standard channel
          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.3.0/standard-install.yaml
          ```

          ### (Optional) Install Airlock Microgateway CNI
          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          Refer to [our documentation](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000140) for installation instructions

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD_MONITOR\_CREATE | "false" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.6/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:f7f171ed5f8a72313942d5a1fae8720d41bd753f9a43a63980d96d63d853fa90
        - registry.connect.redhat.com/airlock/microgateway@sha256:4af539fc7ca699e082914e73b886ea5e851259ddb1b9afaa18693669f4b0bbb6
        version: 4.6.7
      entries:
      - name: airlock-microgateway.v4.6.7
        version: 4.6.7
      - name: airlock-microgateway.v4.6.6
        version: 4.6.6
      - name: airlock-microgateway.v4.6.5
        version: 4.6.5
      - name: airlock-microgateway.v4.6.4
        version: 4.6.4
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.6"
    - currentCSV: airlock-microgateway.v4.7.5
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"secured"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/test/"}}},"authorization":{"requireAny":[{"oidc":{"claim":{"name":"roles","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"group","value":{"matcher":{"exact":"superusers"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-1"}}}},"tokenExchange":{"onFailure":"Block","actions":[{"tokenExchangeRef":{"name":"test-token-exchange"}}]},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-metadata"}},{"identityPropagationRef":{"name":"test-header-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"exact":"/public"}}},"authorization":{}},{"requestConditions":{"path":{"matcher":{"regex":"^/api/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name"}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-defaults"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-oidc-idtoken"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-bearertoken-metadata"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-idtoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-ext-authz","namespace":"default"},"spec":{"value":{"name":"envoycluster/default/envoy-cluster-ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyExtensionPolicy","metadata":{"name":"envoy-extension-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-httpfilter-ext-authz"}],"append":[{"name":"lua-transform-request"}]},"envoyClusterRefs":[{"name":"envoy-cluster-ext-authz"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-httpfilter-ext-authz"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"envoycluster/default/envoy-cluster-ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"volumes":[{"name":"vol-1","emptyDir":{}}],"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"volumeMounts":[{"name":"vol-1","mountPath":"/tmp/data"}]}}},"defaults":{"sessionHandlingRef":{"name":"session-handling-example"},"telemetryRef":{"name":"telemetry-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with TLS information of the downstream connection to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"mode":"Enforce","persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"defaultTimeouts":{"idle":"30s","lifetime":"16h"},"prefix":"session_prefix_example","cookie":{"name":"SESS","attributes":{"domain":"example.org","path":"/","sameSite":"Strict","secure":true}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"},"session":{"id":"%SESSION_ID%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-10T12:05:46Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyExtensionPolicy
            name: envoyextensionpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.7/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ***Note:*** Sidecar-based data plane mode is *not* supported by this OLM Bundle.
          If you want to use the Sidecar-based data plane mode, use Helm instead. Please note that the Airlock Microgateway CNI and the Helm charts are not certified for RedHat OpenShift.
          Refer to https://github.com/airlock/microgateway for installation instruction with Helm.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.7/?topic=MGW-00000056)
          * [Gateway API](https://gateway-api.sigs.k8s.io/)

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
          2. Check your inbox and save the license file microgateway-license.txt locally.

          *See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.7/?topic=MGW-00000056) to choose the right license type.*

          ### Install Gateway API standard channel
          ***Note:*** *This step is only required for OpenShift versions below 4.19, as Gateway API is included by default in OpenShift 4.19+.*

          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD\_MONITOR\_CREATE | "true" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gateway API
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.7/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:cd453189f3f50fd20db7744f72e965cbdfc308abfec79a61ed97020aeb12baa2
        - registry.connect.redhat.com/airlock/microgateway@sha256:dd8c021d4333a3eec9360a336089d8984cf56fd0870f03d4e79cdd0f74da9cb6
        version: 4.7.5
      entries:
      - name: airlock-microgateway.v4.7.5
        version: 4.7.5
      - name: airlock-microgateway.v4.7.4
        version: 4.7.4
      - name: airlock-microgateway.v4.7.3
        version: 4.7.3
      - name: airlock-microgateway.v4.7.2
        version: 4.7.2
      - name: airlock-microgateway.v4.7.1
        version: 4.7.1
      - name: airlock-microgateway.v4.7.0
        version: 4.7.0
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.7"
    - currentCSV: airlock-microgateway.v4.8.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/secure"}}},"authorization":{"requireAll":[{"clientCertificate":{"hash":{"in":{"values":["69e4caf01b2b3490cd938b053274a2c9001c45c21b2cb58e3612c550568a42ca","df6ff72fe9116521268f6f2dd4966f51df479883fe7037b39f75916ac3049d1a"]}}}},{"clientCertificate":{"subject":{"field":"Organization","value":{"matcher":{"exact":"Company"}}}}},{"clientCertificate":{"san":{"type":"Email","value":{"matcher":{"suffix":"@company.com"}}}}}]}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/partner/"}}},"authorization":{"requireAll":[{"tokenExchange":{"claim":{"name":"group","value":{"matcher":{"exact":"partner"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"}}}},"tokenExchange":{"actions":[{"tokenExchangeRef":{"name":"token-exchange-example"}}]}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-example"},"spec":{"statusCode":400,"content":[{"contentType":"application/json","headers":[{"name":"X-Request-Id","value":"%STREAM_ID%"},{"name":"X-Some-Header","value":"some-value"}],"body":{"value":"{\n  \"error\":
            \"something went wrong\"\n}"}},{"contentType":"text/html","body":{"value":"<!DOCTYPE
            html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<title>Error</title>\n<style>\n  body
            {\n    font-family: Arial, Helvetica, sans-serif;\n    background-color:
            #222222;\n  }\n  h1 {\n    color: #aaaaaa;\n  }\n</style>\n</head>\n<body>\n<h1>Something
            went wrong!</h1>\n<p>Request ID: %STREAM_ID%</p>\n</body>\n</html>"}},{"contentType":"application/xml","body":{"valueFrom":{"configMapKeyRef":{"name":"custom-response-example","key":"response.xml"}}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponsePolicy","metadata":{"name":"custom-response-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":{"local":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"api-401"}}]},{"requestConditions":{"path":{"matcher":{"prefix":"/default"}}},"responses":[]},{"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}]}],"upstream":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[]},{"responses":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]}]}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-redirect-404-example"},"spec":{"statusCode":302,"content":[{"contentType":"none/none","headers":[{"name":"Location","value":"https://company.com/error/404.html?request_id=%STREAM_ID%"}]}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-ext-authz","namespace":"default"},"spec":{"value":{"name":"envoycluster/default/envoy-cluster-ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyExtensionPolicy","metadata":{"name":"envoy-extension-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-httpfilter-ext-authz"}],"append":[{"name":"lua-transform-request"}]},"envoyClusterRefs":[{"name":"envoy-cluster-ext-authz"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-httpfilter-ext-authz"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"envoycluster/default/envoy-cluster-ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"volumes":[{"name":"vol-1","emptyDir":{}}],"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"volumeMounts":[{"name":"vol-1","mountPath":"/tmp/data"}],"securityContext":{"capabilities":{"add":["BPF"]}}}}},"defaults":{"customResponses":{"local":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}],"upstream":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]},"sessionHandlingRef":{"name":"session-handling-example"},"telemetryRef":{"name":"telemetry-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with downstream TLS connection information to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"bearerToken":{"source":{"jwt":{}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"mode":"Enforce","persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"prefix":"session_prefix_example","agent":{"logging":{"level":"debug"}},"defaultTimeouts":{"idle":"30s","lifetime":"16h"},"cookie":{"name":"SESS","attributes":{"domain":"example.org","path":"/","sameSite":"Strict","secure":true}},"limits":{"sessionsPerIP":{"thresholds":{"logging":1000,"blocking":1500},"exceptions":[{"remoteIP":{"cidrRanges":["192.168.0.0/16"]}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"},"session":{"id":"%SESSION_ID%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"},"tls":{"peer":{"issuer":"%UPSTREAM_PEER_ISSUER%","subject":"%UPSTREAM_PEER_SUBJECT%"}}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-11T08:40:33Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponsePolicy
            name: customresponsepolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponse
            name: customresponses.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyExtensionPolicy
            name: envoyextensionpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056)
          * [Gateway API](https://gateway-api.sigs.k8s.io/)

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          Airlock Microgateway requires a valid license. See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056) to choose the right license type.
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
                A license will be sent automatically within minutes.
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
                Your sales partner will contact you for licensing.
          2. Check your inbox and save the license file microgateway-license.txt locally.

          ### Deploy Airlock Microgateway License
          1. Create the `airlock-microgateway-system` namespace.

          ```console
          oc create project airlock-microgateway-system
          ```
          2. Create a Kubernetes secret with the name `airlock-microgateway-license` and the key `microgateway-license.txt` in the Microgateway Operator namespace to store the license.

          ```console
          oc create secret generic airlock-microgateway-license \
            -n airlock-microgateway-system \
            --from-file=microgateway-license.txt=<path-to-your-local-microgateway-license.txt>
          ```

          ### Install Gateway API standard channel
          ***Note:*** *This step is only required for OpenShift versions below 4.19, as Gateway API is included by default in OpenShift 4.19+.*

          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD\_MONITOR\_CREATE | "true" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gateway API
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.8/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:a0f546d8f705b8c1dd1051a431327bd89a52207ec8abaf236a9570037db5ac49
        - registry.connect.redhat.com/airlock/microgateway@sha256:0dfe84720ab96cbdb5d390d5b481eea05bc6aec9fb37207a8aada5c252aeed31
        version: 4.8.1
      entries:
      - name: airlock-microgateway.v4.8.1
        version: 4.8.1
      - name: airlock-microgateway.v4.8.0
        version: 4.8.0
      - name: airlock-microgateway.v4.7.4
        version: 4.7.4
      - name: airlock-microgateway.v4.7.3
        version: 4.7.3
      - name: airlock-microgateway.v4.7.2
        version: 4.7.2
      - name: airlock-microgateway.v4.7.1
        version: 4.7.1
      - name: airlock-microgateway.v4.7.0
        version: 4.7.0
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.8"
    - currentCSV: airlock-microgateway.v4.8.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/secure"}}},"authorization":{"requireAll":[{"clientCertificate":{"hash":{"in":{"values":["69e4caf01b2b3490cd938b053274a2c9001c45c21b2cb58e3612c550568a42ca","df6ff72fe9116521268f6f2dd4966f51df479883fe7037b39f75916ac3049d1a"]}}}},{"clientCertificate":{"subject":{"field":"Organization","value":{"matcher":{"exact":"Company"}}}}},{"clientCertificate":{"san":{"type":"Email","value":{"matcher":{"suffix":"@company.com"}}}}}]}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/partner/"}}},"authorization":{"requireAll":[{"tokenExchange":{"claim":{"name":"group","value":{"matcher":{"exact":"partner"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"}}}},"tokenExchange":{"actions":[{"tokenExchangeRef":{"name":"token-exchange-example"}}]}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-example"},"spec":{"statusCode":400,"content":[{"contentType":"application/json","headers":[{"name":"X-Request-Id","value":"%STREAM_ID%"},{"name":"X-Some-Header","value":"some-value"}],"body":{"value":"{\n  \"error\":
            \"something went wrong\"\n}"}},{"contentType":"text/html","body":{"value":"<!DOCTYPE
            html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<title>Error</title>\n<style>\n  body
            {\n    font-family: Arial, Helvetica, sans-serif;\n    background-color:
            #222222;\n  }\n  h1 {\n    color: #aaaaaa;\n  }\n</style>\n</head>\n<body>\n<h1>Something
            went wrong!</h1>\n<p>Request ID: %STREAM_ID%</p>\n</body>\n</html>"}},{"contentType":"application/xml","body":{"valueFrom":{"configMapKeyRef":{"name":"custom-response-example","key":"response.xml"}}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponsePolicy","metadata":{"name":"custom-response-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":{"local":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"api-401"}}]},{"requestConditions":{"path":{"matcher":{"prefix":"/default"}}},"responses":[]},{"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}]}],"upstream":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[]},{"responses":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]}]}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-redirect-404-example"},"spec":{"statusCode":302,"content":[{"contentType":"none/none","headers":[{"name":"Location","value":"https://company.com/error/404.html?request_id=%STREAM_ID%"}]}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-ext-authz","namespace":"default"},"spec":{"value":{"name":"envoycluster/default/envoy-cluster-ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyExtensionPolicy","metadata":{"name":"envoy-extension-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-httpfilter-ext-authz"}],"append":[{"name":"lua-transform-request"}]},"envoyClusterRefs":[{"name":"envoy-cluster-ext-authz"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-httpfilter-ext-authz"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"envoycluster/default/envoy-cluster-ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"volumes":[{"name":"vol-1","emptyDir":{}}],"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"volumeMounts":[{"name":"vol-1","mountPath":"/tmp/data"}],"securityContext":{"capabilities":{"add":["BPF"]}}}}},"defaults":{"customResponses":{"local":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}],"upstream":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]},"sessionHandlingRef":{"name":"session-handling-example"},"telemetryRef":{"name":"telemetry-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with downstream TLS connection information to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"bearerToken":{"source":{"jwt":{}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"mode":"Enforce","persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"prefix":"session_prefix_example","agent":{"logging":{"level":"debug"}},"defaultTimeouts":{"idle":"30s","lifetime":"16h"},"cookie":{"name":"SESS","attributes":{"domain":"example.org","path":"/","sameSite":"Strict","secure":true}},"limits":{"sessionsPerIP":{"thresholds":{"logging":1000,"blocking":1500},"exceptions":[{"remoteIP":{"cidrRanges":["192.168.0.0/16"]}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"},"session":{"id":"%SESSION_ID%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"},"tls":{"peer":{"issuer":"%UPSTREAM_PEER_ISSUER%","subject":"%UPSTREAM_PEER_SUBJECT%"}}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-11T08:40:33Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponsePolicy
            name: customresponsepolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponse
            name: customresponses.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyExtensionPolicy
            name: envoyextensionpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056)
          * [Gateway API](https://gateway-api.sigs.k8s.io/)

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          Airlock Microgateway requires a valid license. See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056) to choose the right license type.
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
                A license will be sent automatically within minutes.
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
                Your sales partner will contact you for licensing.
          2. Check your inbox and save the license file microgateway-license.txt locally.

          ### Deploy Airlock Microgateway License
          1. Create the `airlock-microgateway-system` namespace.

          ```console
          oc create project airlock-microgateway-system
          ```
          2. Create a Kubernetes secret with the name `airlock-microgateway-license` and the key `microgateway-license.txt` in the Microgateway Operator namespace to store the license.

          ```console
          oc create secret generic airlock-microgateway-license \
            -n airlock-microgateway-system \
            --from-file=microgateway-license.txt=<path-to-your-local-microgateway-license.txt>
          ```

          ### Install Gateway API standard channel
          ***Note:*** *This step is only required for OpenShift versions below 4.19, as Gateway API is included by default in OpenShift 4.19+.*

          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD\_MONITOR\_CREATE | "true" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gateway API
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.8/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:a0f546d8f705b8c1dd1051a431327bd89a52207ec8abaf236a9570037db5ac49
        - registry.connect.redhat.com/airlock/microgateway@sha256:0dfe84720ab96cbdb5d390d5b481eea05bc6aec9fb37207a8aada5c252aeed31
        version: 4.8.1
      entries:
      - name: airlock-microgateway.v4.8.1
        version: 4.8.1
      - name: airlock-microgateway.v4.8.0
        version: 4.8.0
      - name: airlock-microgateway.v4.7.4
        version: 4.7.4
      - name: airlock-microgateway.v4.7.3
        version: 4.7.3
      - name: airlock-microgateway.v4.7.2
        version: 4.7.2
      - name: airlock-microgateway.v4.7.1
        version: 4.7.1
      - name: airlock-microgateway.v4.7.0
        version: 4.7.0
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: stable
    defaultChannel: "4.8"
    packageName: airlock-microgateway
    provider:
      name: Airlock
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: MariaDB Corporation
      provider-url: ""
    name: mariadb-enterprise-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mariadb-enterprise-operator.v25.8.1-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup"
                },
                "spec": {
                  "args": [
                    "--single-transaction",
                    "--all-databases"
                  ],
                  "logLevel": "info",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "0 0 * * *",
                    "suspend": false
                  },
                  "stagingStorage": {
                    "persistentVolumeClaim": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "1Gi"
                        }
                      }
                    }
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "backups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Connection",
                "metadata": {
                  "name": "connection"
                },
                "spec": {
                  "database": "mariadb",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "secretName": "connection",
                  "secretTemplate": {
                    "key": "dsn"
                  },
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Database",
                "metadata": {
                  "name": "database"
                },
                "spec": {
                  "characterSet": "utf8",
                  "collate": "utf8_general_ci",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "name": "my-logical-database"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Grant",
                "metadata": {
                  "name": "grant"
                },
                "spec": {
                  "database": "*",
                  "grantOption": true,
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "privileges": [
                    "SELECT",
                    "INSERT",
                    "UPDATE"
                  ],
                  "table": "*",
                  "username": "my-user"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "MariaDB",
                "metadata": {
                  "name": "mariadb"
                },
                "spec": {
                  "connection": {
                    "secretName": "mariadb-conn",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "database": "mariadb",
                  "galera": {
                    "enabled": true
                  },
                  "metrics": {
                    "enabled": true,
                    "passwordSecretKeyRef": {
                      "generate": true,
                      "key": "password",
                      "name": "mariadb-metrics"
                    }
                  },
                  "myCnf": "[mariadb]\nbind-address=*\ndefault_storage_engine=InnoDB\nbinlog_format=row\ninnodb_autoinc_lock_mode=2\ninnodb_buffer_pool_size=1024M\nmax_allowed_packet=256M\n",
                  "passwordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-password"
                  },
                  "primaryConnection": {
                    "secretName": "mariadb-conn-primary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "primaryService": {
                    "type": "ClusterIP"
                  },
                  "replicas": 3,
                  "rootPasswordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-root"
                  },
                  "secondaryConnection": {
                    "secretName": "mariadb-conn-secondary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "secondaryService": {
                    "type": "ClusterIP"
                  },
                  "service": {
                    "type": "ClusterIP"
                  },
                  "storage": {
                    "size": "1Gi"
                  },
                  "updateStrategy": {
                    "type": "ReplicasFirstPrimaryLast"
                  },
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "MaxScale",
                "metadata": {
                  "name": "maxscale"
                },
                "spec": {
                  "admin": {
                    "guiEnabled": true,
                    "port": 8989
                  },
                  "auth": {
                    "adminPasswordSecretKeyRef": {
                      "generate": true,
                      "key": "password",
                      "name": "maxscale-admin"
                    },
                    "adminUsername": "mariadb-enterprise-operator",
                    "generate": true
                  },
                  "config": {
                    "sync": {
                      "database": "mysql",
                      "interval": "5s",
                      "timeout": "10s"
                    }
                  },
                  "connection": {
                    "port": 3306,
                    "secretName": "maxscale-conn",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "guiKubernetesService": {
                    "type": "ClusterIP"
                  },
                  "kubernetesService": {
                    "type": "ClusterIP"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "metrics": {
                    "enabled": true
                  },
                  "monitor": {
                    "cooperativeMonitoring": "majority_of_all",
                    "interval": "2s",
                    "params": {
                      "available_when_donor": "false",
                      "disable_master_failback": "false",
                      "disable_master_role_setting": "false"
                    }
                  },
                  "replicas": 2,
                  "requeueInterval": "10s",
                  "services": [
                    {
                      "listener": {
                        "port": 3306,
                        "protocol": "MariaDBProtocol"
                      },
                      "name": "rw-router",
                      "params": {
                        "transaction_replay": "true",
                        "transaction_replay_attempts": "10",
                        "transaction_replay_timeout": "5s"
                      },
                      "router": "readwritesplit"
                    }
                  ]
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "PhysicalBackup",
                "metadata": {
                  "name": "physicalbackup"
                },
                "spec": {
                  "compression": "bzip2",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "podAffinity": true,
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "0 0 * * *",
                    "immediate": true,
                    "suspend": false
                  },
                  "serviceAccountName": "backup",
                  "stagingStorage": {
                    "persistentVolumeClaim": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "1Gi"
                        }
                      }
                    }
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "physicalbackups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "region": "us-east-1",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  },
                  "timeout": "1h"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore"
                },
                "spec": {
                  "backupRef": {
                    "name": "backup"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "targetRecoveryTime": "2023-12-19T09:00:00Z"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "SqlJob",
                "metadata": {
                  "name": "sqljob"
                },
                "spec": {
                  "database": "mariadb",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "suspend": false
                  },
                  "sql": "CREATE TABLE IF NOT EXISTS orders (\n  id bigint PRIMARY KEY AUTO_INCREMENT,\n  customer_id INT,\n  order_date DATE,\n  total_amount_cents INT\n);\nINSERT INTO orders (customer_id, order_date, total_amount_cents) VALUES\n  (101, '2024-05-15', 5000),\n  (102, '2024-05-14', 7525),\n  (103, '2024-05-13', 10050),\n  (104, '2024-05-12', 2575);",
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "user"
                },
                "spec": {
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxUserConnections": 20,
                  "name": "my-user",
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: docker.mariadb.com/mariadb-enterprise-operator@sha256:1effbbfa7632be92c17ef61c18a25f010b187840beec42c31d2410d0209e6985
          createdAt: "2025-08-28T11:35:03Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["MariaDB Enterprise"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: MariaDB Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API. It is used to define
              backup jobs and its storage.
            displayName: Backup
            kind: Backup
            name: backups.enterprise.mariadb.com
            version: v1alpha1
          - description: Connection is the Schema for the connections API. It is used
              to configure connection strings for the applications connecting to MariaDB.
            displayName: Connection
            kind: Connection
            name: connections.enterprise.mariadb.com
            version: v1alpha1
          - description: Database is the Schema for the databases API. It is used
              to define a logical database as if you were running a 'CREATE DATABASE'
              statement.
            displayName: Database
            kind: Database
            name: databases.enterprise.mariadb.com
            version: v1alpha1
          - description: Grant is the Schema for the grants API. It is used to define
              grants as if you were running a 'GRANT' statement.
            displayName: Grant
            kind: Grant
            name: grants.enterprise.mariadb.com
            version: v1alpha1
          - description: MariaDB is the Schema for the mariadbs API. It is used to
              define MariaDB clusters.
            displayName: Maria DB
            kind: MariaDB
            name: mariadbs.enterprise.mariadb.com
            version: v1alpha1
          - description: MaxScale is the Schema for the maxscales API. It is used
              to define MaxScale clusters.
            displayName: Max Scale
            kind: MaxScale
            name: maxscales.enterprise.mariadb.com
            version: v1alpha1
          - description: PhysicalBackup is the Schema for the physicalbackups API.
              It is used to define physical backup jobs and its storage.
            displayName: Physical Backup
            kind: PhysicalBackup
            name: physicalbackups.enterprise.mariadb.com
            version: v1alpha1
          - description: Restore is the Schema for the restores API. It is used to
              define restore jobs and its restoration source.
            displayName: Restore
            kind: Restore
            name: restores.enterprise.mariadb.com
            version: v1alpha1
          - description: SqlJob is the Schema for the sqljobs API. It is used to run
              sql scripts as jobs.
            displayName: Sql Job
            kind: SqlJob
            name: sqljobs.enterprise.mariadb.com
            version: v1alpha1
          - description: User is the Schema for the users API.  It is used to define
              grants as if you were running a 'CREATE USER' statement.
            displayName: User
            kind: User
            name: users.enterprise.mariadb.com
            version: v1alpha1
        description: |
          MariaDB Enterprise Operator for Openshift is an operator that manages MariaDB Enterprise operands declaratively via Custom Resources, with support for the following features:

          * Provision and Configure MariaDB and MaxScale Declaratively: Define MariaDB Enterprise Server and MaxScale clusters in YAML manifests and deploy them with ease in Kubernetes.
          * High Availability with Galera: Ensure availability with MariaDB Enterprise Cluster, providing synchronous multi-master replication.
          * Query and Connection-Based Routing with MaxScale: MaxScale provides query routing and connection load balancing for improved application performance.
          * Cluster-Aware Rolling Updates: Perform rolling updates on MariaDB and MaxScale clusters, ensuring zero-downtime upgrades with no disruptions to your applications.
          * Flexible Storage Configuration and Volume Expansion: Easily configure storage for MariaDB instances, including the ability to expand volumes as needed.
          * Physical Backups based on [mariadb-backup](https://mariadb.com/docs/server/server-usage/backup-and-restore/mariadb-backup/full-backup-and-restore-with-mariadb-backup) and [Kubernetes VolumeSnapshots](https://kubernetes.io/docs/concepts/storage/volume-snapshots/). By leveraging the [BACKUP STAGE](https://mariadb.com/docs/server/reference/sql-statements/administrative-sql-statements/backup-commands/backup-stage) feature, backups are taken without long read locks or service interruptions.
          * Logical Backups based on [mariadb-dump](https://mariadb.com/docs/server/clients-and-utilities/backup-restore-and-import-clients/mariadb-dump).
          * Backup Management: Take, restore, and schedule backups with multiple storage types supported: S3, PVCs, Kubernetes volumes and VolumeSnapshots..
          * Policy-Driven Backup Retention: Implement backup retention policies with bzip2 and gzip compression.
          * Target Recovery Time: Restore your database to the closest available backup based on a specified recovery time.
          * Bootstrap New Instances: Initialize new MariaDB instances from backups, S3, PVCs or VolumeSnapshots to quickly spin up new clusters.
          * TLS Certificate Management: Issue, configure, and rotate TLS certificates and Certificate Authorities (CAs) for secure connections.
          * Advanced TLS Support: customize certificate lifetime, private key algorithm and TLS version.
          * Native Integration with cert-manager: Leverage [cert-manager](https://cert-manager.io/docs/), the de-facto standard for managing certificates in Kubernetes, to enable issuance with private CAs, public CAs and HashiCorp Vault.
          * Prometheus Metrics: Expose metrics using the MariaDB and MaxScale Prometheus exporters.
          * Native Integration with prometheus-operator: Leverage [prometheus-operator](https://github.com/prometheus-operator/prometheus-operator) to scrape metrics from MariaDB and MaxScale instances.
          * Declarative User and Database Management: Manage users, grants, and logical databases in a declarative manner using Kubernetes resources.
          * Secure, immutable and lightweight images based on Red Hat UBI, available for multiple architectires (amd64, arm64 and ppc64le).
          * [Operator certified ](https://catalog.redhat.com/en/software/container-stacks/detail/65789bcbe17f1b31944acb1d#overview) by Red Hat.

          ## Installation

          In order to use this product, you will need a [MariaDB Enterprise subscription](https://mariadb.com/products/enterprise/).

          To be able to pull MariaDB Enterprise images, you will need to configure the MariaDB registry credentials in Openshift using the [MariaDB customer download token](https://customers.mariadb.com/downloads/token/) as described below:

          - Extract your [Openshift global pull secret](https://docs.redhat.com/en/documentation/openshift_container_platform/4.18/html/images/managing-images#images-update-global-pull-secret_using-image-pull-secrets):
            ```bash
            oc extract secret/pull-secret -n openshift-config --confirm
            ```

          - Login in the MariaDB registry providing the customer download token as password:
            ```bash
            oc registry login \
              --registry="docker.mariadb.com" \
              --auth-basic="<email>:<customer-download-token>" \
              --to=.dockerconfigjson
            ```

          - Update the global pull secret:
            ```bash
            oc set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson
            ```

          Alternatively, you can also create a `Secret` named `mariadb-enterprise` in the namespace where are you installing the operator by using the following command:
            ```bash
            oc create secret docker-registry mariadb-enterprise \
              --docker-server=docker.mariadb.com \
              --docker-username=<email> \
              --docker-password=<customer-download-token> \
              -n <operator-namespace>
            ```

          At this point, you can proceed to install the MariaDB Enterprise Operator, either via the Openshift console or by creating a `Subscription` object as described in the [Openshift installation docs](https://mariadb.com/kb/en/openshift/).

          Refer to the [quickstart guide](https://mariadb.com/kb/en/quickstart/), the [examples catalog](https://mariadb.com/kb/en/examples-catalog/) and the [API reference](https://mariadb.com/kb/en/api-reference/) for getting started with the Custom Resources offered by this operator.
        displayName: MariaDB Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mariadb
        - mysql
        - database
        - operator
        - mariadb-enterprise-operator
        - database
        links:
        - name: MariaDB Enterprise
          url: https://mariadb.com/products/enterprise/
        - name: Documentation
          url: https://mariadb.com/kb/en/mariadb-enterprise-operator/
        maintainers:
        - email: operator@mariadb.com
          name: MariaDB Corporation
        - email: support@mariadb.com
          name: Support
        - email: sales-EMEA@mariadb.com
          name: Sales EMEA
        - email: sales-APAC@mariadb.com
          name: Sales APAC
        - email: sales-nam@mariadb.com
          name: Sales Americas
        maturity: beta
        minKubeVersion: 1.29.0
        provider:
          name: MariaDB Corporation
        relatedImages:
        - docker.mariadb.com/mariadb-enterprise-operator@sha256:1effbbfa7632be92c17ef61c18a25f010b187840beec42c31d2410d0209e6985
        - docker.mariadb.com/maxscale@sha256:d9e04a7a406353dab2051e190be0c32ed20b780ed71e56e55cedd4ccb61af416
        - mariadb/mariadb-prometheus-exporter-ubi@sha256:f072175198cad050e80617d13e63f415bacdfe47e2dd177fde7283a96ee56c07
        - mariadb/maxscale-prometheus-exporter-ubi@sha256:cc17c1554795ad01b4d8db799f6aa90e00e41ede431f09d30eec64d9dd4479d9
        - registry.connect.redhat.com/mariadb/mariadb-enterprise-operator-bundle@sha256:73e7f243a6676d559068bf8ab80cc0ffe0db58152675603ca8bd360334439f26
        - docker.mariadb.com/enterprise-server@sha256:9872721d35ebe8d820b1aa9c6dd83b363a7b2df9af11a65bff6b80ff4144460a
        version: 25.8.1-1
      entries:
      - name: mariadb-enterprise-operator.v25.8.1-1
        version: 25.8.1-1
      - name: mariadb-enterprise-operator.v25.8.0
        version: 25.8.0
      - name: mariadb-enterprise-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: mariadb-enterprise-operator
    provider:
      name: MariaDB Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Helm Community
      provider-url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
    name: cockroachdb
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cockroachdb.v5.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.operatorhub.io/v1alpha1",
                "kind": "Cockroachdb",
                "metadata": {
                  "name": "cockroachdb-sample"
                },
                "spec": {
                  "clusterDomain": "cluster.local",
                  "conf": {
                    "attrs": [],
                    "cache": "25%",
                    "cluster-name": "",
                    "disable-cluster-name-verification": false,
                    "http-port": 8080,
                    "join": [],
                    "locality": "",
                    "logtostderr": "INFO",
                    "max-sql-memory": "25%",
                    "port": 26257,
                    "single-node": false,
                    "sql-audit-dir": ""
                  },
                  "image": {
                    "credentials": {},
                    "pullPolicy": "IfNotPresent",
                    "repository": "cockroachdb/cockroach",
                    "tag": "v20.2.4"
                  },
                  "ingress": {
                    "annotations": {},
                    "enabled": false,
                    "hosts": [],
                    "labels": {},
                    "paths": [
                      "/"
                    ],
                    "tls": []
                  },
                  "init": {
                    "affinity": {},
                    "annotations": {},
                    "labels": {
                      "app.kubernetes.io/component": "init"
                    },
                    "nodeSelector": {},
                    "resources": {},
                    "tolerations": []
                  },
                  "labels": {},
                  "networkPolicy": {
                    "enabled": false,
                    "ingress": {
                      "grpc": [],
                      "http": []
                    }
                  },
                  "service": {
                    "discovery": {
                      "annotations": {},
                      "labels": {
                        "app.kubernetes.io/component": "cockroachdb"
                      }
                    },
                    "ports": {
                      "grpc": {
                        "external": {
                          "name": "grpc",
                          "port": 26257
                        },
                        "internal": {
                          "name": "grpc-internal",
                          "port": 26257
                        }
                      },
                      "http": {
                        "name": "http",
                        "port": 8080
                      }
                    },
                    "public": {
                      "annotations": {},
                      "labels": {
                        "app.kubernetes.io/component": "cockroachdb"
                      },
                      "type": "ClusterIP"
                    }
                  },
                  "serviceMonitor": {
                    "annotations": {},
                    "enabled": false,
                    "interval": "10s",
                    "labels": {}
                  },
                  "statefulset": {
                    "annotations": {},
                    "args": [],
                    "budget": {
                      "maxUnavailable": 1
                    },
                    "env": [],
                    "labels": {
                      "app.kubernetes.io/component": "cockroachdb"
                    },
                    "nodeAffinity": {},
                    "nodeSelector": {},
                    "podAffinity": {},
                    "podAntiAffinity": {
                      "topologyKey": "kubernetes.io/hostname",
                      "type": "soft",
                      "weight": 100
                    },
                    "podManagementPolicy": "Parallel",
                    "priorityClassName": "",
                    "replicas": 3,
                    "resources": {},
                    "secretMounts": [],
                    "tolerations": [],
                    "topologySpreadConstraints": {
                      "maxSkew": 1,
                      "topologyKey": "topology.kubernetes.io/zone",
                      "whenUnsatisfiable": "ScheduleAnyway"
                    },
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    }
                  },
                  "storage": {
                    "hostPath": "",
                    "persistentVolume": {
                      "annotations": {},
                      "enabled": true,
                      "labels": {},
                      "size": "100Gi",
                      "storageClass": ""
                    }
                  },
                  "tls": {
                    "certs": {
                      "clientRootSecret": "cockroachdb-root",
                      "nodeSecret": "cockroachdb-node",
                      "provided": false,
                      "tlsSecret": false
                    },
                    "enabled": false,
                    "init": {
                      "image": {
                        "credentials": {},
                        "pullPolicy": "IfNotPresent",
                        "repository": "cockroachdb/cockroach-k8s-request-cert",
                        "tag": "0.4"
                      }
                    },
                    "serviceAccount": {
                      "create": true,
                      "name": ""
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Database
          certified: "false"
          containerImage: quay.io/helmoperators/cockroachdb:v5.0.4
          createdAt: 2021-01-23T10-00-00Z
          description: CockroachDB Operator based on the CockroachDB helm chart
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/dmesser/cockroachdb-operator
          support: dmesser
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a CockroachDB cluster
            displayName: CockroachDB
            kind: Cockroachdb
            name: cockroachdbs.charts.operatorhub.io
            version: v1alpha1
        description: |
          CockroachDB is a scalable, survivable, strongly-consistent SQL database.
          ## About this Operator
          This Operator is based on a Helm chart for CockroachDB. It supports the same parameters like the official [CockroachDB Helm Chart](https://github.com/cockroachdb/helm-charts/tree/master/cockroachdb).

          ## Core capabilities
          * **StatefulSet** - Sets up a dynamically scalable CockroachDB cluster using a Kubernetes StatefulSet
          * **Expand Replicas** - Supports expanding the set of replicas by simply editing your object
          * **Dashboard** - Installs the CockroachDB user interface to administer your cluster. Easily expose it via an Ingress rule.
          Review all of the [confiuguration options](https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration) to best run your database instance. The example configuration is derived from the chart's [`values.yaml`](https://github.com/helm/charts/blob/master/stable/cockroachdb/values.yaml).
          ## Using the cluster
          The resulting cluster endpoint can be consumed from a `Service` that follows the pattern: `<StatefulSet-name>-public`. For example to connect using the command line client, use something like the following to obtain the name of the service:
          ```
          kubectl get service -l chart=cockroachdb-5.0.4
          NAME                                           TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)              AGE
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb          ClusterIP   None             <none>        26257/TCP,8080/TCP   24m
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public   ClusterIP   10.106.249.134   <none>        26257/TCP,8080/TCP   24m
          ```
          Then you can use the CockroachDB command line client to connect to the database cluster:
          ```
          kubectl run -it --rm cockroach-client --image=cockroachdb/cockroach --restart=Never --command -- ./cockroach sql --insecure --host example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public
          ```
          ## Before you start
          This Operator requires a cluster with PV support in order to run correctly.

          Note that for a production cluster, you will likely want to override the following parameters in [`values.yaml`](values.yaml) with your own values.

          - `statefulset.resources.requests.memory` and `statefulset.resources.limits.memory` allocate memory resources to CockroachDB pods in your cluster.
          - `conf.cache` and `conf.max-sql-memory` are memory limits that we recommend setting to 1/4 of the above resource allocation. When running CockroachDB, you must set these limits explicitly to avoid running out of memory.
          - `storage.persistentVolume.size` defaults to `100Gi` of disk space per pod, which you may increase or decrease for your use case.
          - `storage.persistentVolume.storageClass` uses the default storage class for your environment. We strongly recommend that you specify a storage class which uses an SSD.
          - `tls.enabled` must be set to `yes`/`true` to deploy in secure mode.

          For more information on overriding the `values.yaml` parameters, please see:
          > <https://www.cockroachlabs.com/docs/stable/orchestrate-cockroachdb-with-kubernetes.html#step-2-start-cockroachdb>

          If you are running in secure mode (with configuration parameter `tls.enabled` set to `yes`/`true`) and `tls.certs.provided` set to `no`/`false`), then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          When `tls.certs.provided` is set to `yes`/`true`, this chart will use certificates created outside of Kubernetes. You may want to use this if you want to use a different certificate authority from the one being used by Kubernetes or if your Kubernetes cluster doesn't fully support certificate-signing requests. To use this, first set up your certificates and load them into your Kubernetes cluster as Secrets using the commands below:

          ```
          mkdir certs
          mkdir my-safe-directory
          cockroach cert create-ca --certs-dir=certs --ca-key=my-safe-directory/ca.key
          cockroach cert create-client root --certs-dir=certs --ca-key=my-safe-directory/ca.key
          kubectl create secret generic cockroachdb-root --from-file=certs
          cockroach cert create-node --certs-dir=certs --ca-key=my-safe-directory/ca.key localhost 127.0.0.1 eerie-horse-cockroachdb-public eerie-horse-cockroachdb-public.default eerie-horse-cockroachdb-public.default.svc.cluster.local *.eerie-horse-cockroachdb *.eerie-horse-cockroachdb.default *.eerie-horse-cockroachdb.default.svc.cluster.local
          kubectl create secret generic cockroachdb-node --from-file=certs
          ```

          Set `tls.certs.tlsSecret` to `yes/true` if you make use of [cert-manager][3] in your cluster.

          [cert-manager][3] stores generated certificates in dedicated TLS secrets. Thus, they are always named:

          * `ca.crt`
          * `tls.crt`
          * `tls.key`

          On the other hand, CockroachDB also demands dedicated certificate filenames:

          * `ca.crt`
          * `node.crt`
          * `node.key`
          * `client.root.crt`
          * `client.root.key`

          By activating `tls.certs.tlsSecret` we benefit from projected secrets and convert the TLS secret filenames to their according CockroachDB filenames.

          If you are running in secure mode, then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          Confirm that all pods are `Running` successfully and init has been completed:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS      RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running     0          1m
          my-release-cockroachdb-1            1/1       Running     0          1m
          my-release-cockroachdb-2            1/1       Running     0          1m
          my-release-cockroachdb-init-k6jcr   0/1       Completed   0          1m
          ```

          Confirm that persistent volumes are created and claimed for each pod:

          ```shell
          kubectl get pv
          ```

          ```
          NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS    CLAIM                                      STORAGECLASS   REASON    AGE
          pvc-64878ebf-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-0   standard                 51s
          pvc-64945b4f-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-1   standard                 51s
          pvc-649d920d-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-2   standard                 51s
          ```

          ## Upgrading the cluster

          ### Chart version 3.0.0 and after

          Launch a temporary interactive pod and start the built-in SQL client:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          Set `cluster.preserve_downgrade_option`, where `$current_version` is the CockroachDB version currently running (e.g., `19.2`):

          ```sql
          > SET CLUSTER SETTING cluster.preserve_downgrade_option = '$current_version';
          ```

          Exit the shell and delete the temporary pod:

          ```sql
          > \q
          ```

          Kick off the upgrade process by changing the new Docker image, where `$new_version` is the CockroachDB version to which you are upgrading:

          ```shell
          kubectl delete job my-release-cockroachdb-init
          ```

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"image":{"tag":"<new version tag here>"}}}' --type merge
          ```

          Kubernetes will carry out a safe [rolling upgrade](https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets) of your CockroachDB nodes one-by-one. Monitor the cluster's pods until all have been successfully restarted:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS              RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running             0          2m
          my-release-cockroachdb-1            1/1       Running             0          3m
          my-release-cockroachdb-2            1/1       Running             0          3m
          my-release-cockroachdb-3            0/1       ContainerCreating   0          25s
          my-release-cockroachdb-init-nwjkh   0/1       ContainerCreating   0          6s
          ```

          ```shell
          kubectl get pods \
          -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.spec.containers[0].image}{"\n"}'
          ```

          ```
          my-release-cockroachdb-0    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-1    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-2    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-3    cockroachdb/cockroach:v20.2.4
          ```

          Resume normal operations. Once you are comfortable that the stability and performance of the cluster is what you'd expect post-upgrade, finalize the upgrade:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          ```sql
          > RESET CLUSTER SETTING cluster.preserve_downgrade_option;
          > \q
          ```

          ## Configuration

          The following table lists the configurable parameters of the CockroachDB chart and their default values.
          For details see the [`values.yaml`](values.yaml) file.

          | Parameter                                                 | Description                                                     | Default                                          |
          | ---------                                                 | -----------                                                     | -------                                          |
          | `clusterDomain`                                           | Cluster's default DNS domain                                    | `cluster.local`                                  |
          | `conf.attrs`                                              | CockroachDB node attributes                                     | `[]`                                             |
          | `conf.cache`                                              | Size of CockroachDB's in-memory cache                           | `25%`                                            |
          | `conf.cluster-name`                                       | Name of CockroachDB cluster                                     | `""`                                             |
          | `conf.disable-cluster-name-verification`                  | Disable CockroachDB cluster name verification                   | `no`                                             |
          | `conf.join`                                               | List of already-existing CockroachDB instances                  | `[]`                                             |
          | `conf.max-disk-temp-storage`                              | Max storage capacity for temp data                              | `0`                                              |
          | `conf.max-offset`                                         | Max allowed clock offset for CockroachDB cluster                | `500ms`                                          |
          | `conf.max-sql-memory`                                     | Max memory to use processing SQL querie                         | `25%`                                            |
          | `conf.locality`                                           | Locality attribute for this deployment                          | `""`                                             |
          | `conf.single-node`                                        | Disable CockroachDB clustering (standalone mode)                | `no`                                             |
          | `conf.sql-audit-dir`                                      | Directory for SQL audit log                                     | `""`                                             |
          | `conf.port`                                               | CockroachDB primary serving port in Pods                        | `26257`                                          |
          | `conf.http-port`                                          | CockroachDB HTTP port in Pods                                   | `8080`                                           |
          | `image.repository`                                        | Container image name                                            | `cockroachdb/cockroach`                          |
          | `image.tag`                                               | Container image tag                                             | `v20.2.4`                                        |
          | `image.pullPolicy`                                        | Container pull policy                                           | `IfNotPresent`                                   |
          | `image.credentials`                                       | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `statefulset.replicas`                                    | StatefulSet replicas number                                     | `3`                                              |
          | `statefulset.updateStrategy`                              | Update strategy for StatefulSet Pods                            | `{"type": "RollingUpdate"}`                      |
          | `statefulset.podManagementPolicy`                         | `OrderedReady`/`Parallel` Pods creation/deletion order          | `Parallel`                                       |
          | `statefulset.budget.maxUnavailable`                       | k8s PodDisruptionBudget parameter                               | `1`                                              |
          | `statefulset.args`                                        | Extra command-line arguments                                    | `[]`                                             |
          | `statefulset.env`                                         | Extra env vars                                                  | `[]`                                             |
          | `statefulset.secretMounts`                                | Additional Secrets to mount at cluster members                  | `[]`                                             |
          | `statefulset.labels`                                      | Additional labels of StatefulSet and its Pods                   | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `statefulset.annotations`                                 | Additional annotations of StatefulSet Pods                      | `{}`                                             |
          | `statefulset.nodeAffinity`                                | [Node affinity rules][2] of StatefulSet Pods                    | `{}`                                             |
          | `statefulset.podAffinity`                                 | [Inter-Pod affinity rules][1] of StatefulSet Pods               | `{}`                                             |
          | `statefulset.podAntiAffinity`                             | [Anti-affinity rules][1] of StatefulSet Pods                    | auto                                             |
          | `statefulset.podAntiAffinity.topologyKey`                 | The topologyKey for auto [anti-affinity rules][1]               | `kubernetes.io/hostname`                         |
          | `statefulset.podAntiAffinity.type`                        | Type of auto [anti-affinity rules][1]                           | `soft`                                           |
          | `statefulset.podAntiAffinity.weight`                      | Weight for `soft` auto [anti-affinity rules][1]                 | `100`                                            |
          | `statefulset.nodeSelector`                                | Node labels for StatefulSet Pods assignment                     | `{}`                                             |
          | `statefulset.priorityClassName`                           | [PriorityClassName][4] for StatefulSet Pods                     | `""`                                             |
          | `statefulset.tolerations`                                 | Node taints to tolerate by StatefulSet Pods                     | `[]`                                             |
          | `statefulset.topologySpreadConstraints`                   | [Topology Spread Constraints rules][5] of StatefulSet Pods      | auto                                             |
          | `statefulset.topologySpreadConstraints.maxSkew`           | Degree to which Pods may be unevenly distributed                | `1`                                              |
          | `statefulset.topologySpreadConstraints.topologyKey`       | The key of node labels                                          | `topology.kubernetes.io/zone`                    |
          | `statefulset.topologySpreadConstraints.whenUnsatisfiable` | `ScheduleAnyway`/`DoNotSchedule` for unsatisfiable constraints  | `ScheduleAnyway`                                 |
          | `statefulset.resources`                                   | Resource requests and limits for StatefulSet Pods               | `{}`                                             |
          | `service.ports.grpc.external.port`                        | CockroachDB primary serving port in Services                    | `26257`                                          |
          | `service.ports.grpc.external.name`                        | CockroachDB primary serving port name in Services               | `grpc`                                           |
          | `service.ports.grpc.internal.port`                        | CockroachDB inter-communication port in Services                | `26257`                                          |
          | `service.ports.grpc.internal.name`                        | CockroachDB inter-communication port name in Services           | `grpc-internal`                                  |
          | `service.ports.http.port`                                 | CockroachDB HTTP port in Services                               | `8080`                                           |
          | `service.ports.http.name`                                 | CockroachDB HTTP port name in Services                          | `http`                                           |
          | `service.public.type`                                     | Public Service type                                             | `ClusterIP`                                      |
          | `service.public.labels`                                   | Additional labels of public Service                             | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.public.annotations`                              | Additional annotations of public Service                        | `{}`                                             |
          | `service.discovery.labels`                                | Additional labels of discovery Service                          | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.discovery.annotations`                           | Additional annotations of discovery Service                     | `{}`                                             |
          | `ingress.enabled`                                         | Enable ingress resource for CockroachDB                         | `false`                                          |
          | `ingress.labels`                                          | Additional labels of Ingress                                    | `{}`                                             |
          | `ingress.annotations`                                     | Additional annotations of Ingress                               | `{}`                                             |
          | `ingress.paths`                                           | Paths for the default host                                      | `[/]`                                            |
          | `ingress.hosts`                                           | CockroachDB Ingress hostnames                                   | `[]`                                             |
          | `ingress.tls[0].hosts`                                    | CockroachDB Ingress tls hostnames                               | `nil`                                            |
          | `ingress.tls[0].secretName`                               | CockroachDB Ingress tls secret name                             | `nil`                                            |
          | `serviceMonitor.enabled`                                  | Create [ServiceMonitor](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/design.md#servicemonitor) Resource for scraping metrics using [PrometheusOperator](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/user-guides/getting-started.md#prometheus-operator)                     | `false`                                             |
          | `serviceMonitor.labels`                                   | Additional labels of ServiceMonitor                             | `{}`                                             |
          | `serviceMonitor.annotations`                              | Additional annotations of ServiceMonitor                        | `{}`                                             |
          | `serviceMonitor.interval`                                 | ServiceMonitor scrape metrics interval                          | `10s`                                            |
          | `serviceMonitor.scrapeTimeout`                            | ServiceMonitor scrape timeout                                   | `nil`                                            |
          | `storage.hostPath`                                        | Absolute path on host to store data                             | `""`                                             |
          | `storage.persistentVolume.enabled`                        | Whether to use PersistentVolume to store data                   | `yes`                                            |
          | `storage.persistentVolume.size`                           | PersistentVolume size                                           | `100Gi`                                          |
          | `storage.persistentVolume.storageClass`                   | PersistentVolume class                                          | `""`                                             |
          | `storage.persistentVolume.labels`                         | Additional labels of PersistentVolumeClaim                      | `{}`                                             |
          | `storage.persistentVolume.annotations`                    | Additional annotations of PersistentVolumeClaim                 | `{}`                                             |
          | `init.labels`                                             | Additional labels of init Job and its Pod                       | `{"app.kubernetes.io/component": "init"}`        |
          | `init.annotations`                                        | Additional labels of the Pod of init Job                        | `{}`                                             |
          | `init.affinity`                                           | [Affinity rules][2] of init Job Pod                             | `{}`                                             |
          | `init.nodeSelector`                                       | Node labels for init Job Pod assignment                         | `{}`                                             |
          | `init.tolerations`                                        | Node taints to tolerate by init Job Pod                         | `[]`                                             |
          | `init.resources`                                          | Resource requests and limits for the Pod of init Job            | `{}`                                             |
          | `tls.enabled`                                             | Whether to run securely using TLS certificates                  | `no`                                             |
          | `tls.serviceAccount.create`                               | Whether to create a new RBAC service account                    | `yes`                                            |
          | `tls.serviceAccount.name`                                 | Name of RBAC service account to use                             | `""`                                             |
          | `tls.certs.provided`                                      | Bring your own certs scenario, i.e certificates are provided    | `no`                                             |
          | `tls.certs.clientRootSecret`                              | If certs are provided, secret name for client root cert         | `cockroachdb-root`                               |
          | `tls.certs.nodeSecret`                                    | If certs are provided, secret name for node cert                | `cockroachdb-node`                               |
          | `tls.certs.tlsSecret`                                     | Own certs are stored in TLS secret                              | `no`                                             |
          | `tls.init.image.repository`                               | Image to use for requesting TLS certificates                    | `cockroachdb/cockroach-k8s-request-cert`         |
          | `tls.init.image.tag`                                      | Image tag to use for requesting TLS certificates                | `0.4`                                            |
          | `tls.init.image.pullPolicy`                               | Requesting TLS certificates container pull policy               | `IfNotPresent`                                   |
          | `tls.init.image.credentials`                              | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `networkPolicy.enabled`                                   | Enable NetworkPolicy for CockroachDB's Pods                     | `no`                                             |
          | `networkPolicy.ingress.grpc`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |
          | `networkPolicy.ingress.http`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |


          Override the default parameters using the `CockroachDB` custom resource.

          ## Deep dive

          ### Connecting to the CockroachDB cluster

          Once you've created the cluster, you can start talking to it by connecting to its `-public` Service. CockroachDB is PostgreSQL wire protocol compatible, so there's a [wide variety of supported clients](https://www.cockroachlabs.com/docs/install-client-drivers.html). As an example, we'll open up a SQL shell using CockroachDB's built-in shell and play around with it a bit, like this (likely needing to replace `my-release-cockroachdb-public` with the name of the `-public` Service that was created with your installed chart):

          ```shell
          kubectl run cockroach-client --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host my-release-cockroachdb-public
          ```

          ```
          Waiting for pod default/cockroach-client to be running, status is Pending,
          pod ready: false
          If you don't see a command prompt, try pressing enter.
          root@my-release-cockroachdb-public:26257> SHOW DATABASES;
          +--------------------+
          |      Database      |
          +--------------------+
          | information_schema |
          | pg_catalog         |
          | system             |
          +--------------------+
          (3 rows)
          root@my-release-cockroachdb-public:26257> CREATE DATABASE bank;
          CREATE DATABASE
          root@my-release-cockroachdb-public:26257> CREATE TABLE bank.accounts (id INT
          PRIMARY KEY, balance DECIMAL);
          CREATE TABLE
          root@my-release-cockroachdb-public:26257> INSERT INTO bank.accounts VALUES
          (1234, 10000.50);
          INSERT 1
          root@my-release-cockroachdb-public:26257> SELECT * FROM bank.accounts;
          +------+---------+
          |  id  | balance |
          +------+---------+
          | 1234 | 10000.5 |
          +------+---------+
          (1 row)
          root@my-release-cockroachdb-public:26257> \q
          Waiting for pod default/cockroach-client to terminate, status is Running
          pod "cockroach-client" deleted
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          ### Cluster health

          Because our pod spec includes regular health checks of the CockroachDB processes, simply running `kubectl get pods` and looking at the `STATUS` column is sufficient to determine the health of each instance in the cluster.

          If you want more detailed information about the cluster, the best place to look is the Admin UI.

          ### Accessing the Admin UI

          If you want to see information about how the cluster is doing, you can try pulling up the CockroachDB Admin UI by port-forwarding from your local machine to one of the pods (replacing `my-release-cockroachdb-0` with the name of one of your pods:

          ```shell
          kubectl port-forward my-release-cockroachdb-0 8080
          ```

          You should then be able to access the Admin UI by visiting <http://localhost:8080/> in your web browser.

          ### Failover

          If any CockroachDB member fails, it is restarted or recreated automatically by the Kubernetes infrastructure, and will re-join the cluster automatically when it comes back up. You can test this scenario by killing any of the CockroachDB pods:

          ```shell
          kubectl delete pod my-release-cockroachdb-1
          ```

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          After a while:

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-1  1/1       Running       0          20s
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          You can check the state of re-joining from the new pod's logs:

          ```shell
          kubectl logs my-release-cockroachdb-1
          ```

          ```
          [...]
          I161028 19:32:09.754026 1 server/node.go:586  [n1] node connected via gossip and
          verified as part of cluster {"35ecbc27-3f67-4e7d-9b8f-27c31aae17d6"}
          [...]
          cockroachdb-0.my-release-cockroachdb.default.svc.cluster.local:26257
          build:      beta-20161027-55-gd2d3c7f @ 2016/10/28 19:27:25 (go1.7.3)
          admin:      http://0.0.0.0:8080
          sql:
          postgresql://root@my-release-cockroachdb-1.my-release-cockroachdb.default.svc.cluster.local:26257?sslmode=disable
          logs:       cockroach-data/logs
          store[0]:   path=cockroach-data
          status:     restarted pre-existing node
          clusterID:  {35ecbc27-3f67-4e7d-9b8f-27c31aae17d6}
          nodeID:     2
          [...]
          ```

          ### NetworkPolicy

          To enable NetworkPolicy for CockroachDB, install [a networking plugin that implements the Kubernetes NetworkPolicy spec](https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy#before-you-begin), and set `networkPolicy.enabled` to `yes`/`true`.

          For Kubernetes v1.5 & v1.6, you must also turn on NetworkPolicy by setting the `DefaultDeny` Namespace annotation. Note: this will enforce policy for _all_ pods in the Namespace:

          ```shell
          kubectl annotate namespace default "net.beta.kubernetes.io/network-policy={\"ingress\":{\"isolation\":\"DefaultDeny\"}}"
          ```

          For more precise policy, set `networkPolicy.ingress.grpc` and `networkPolicy.ingress.http` rules. This will only allow pods that match the provided rules to connect to CockroachDB.

          ### Scaling

          Scaling should be managed via the `helm upgrade` command. After resizing your cluster on your cloud environment (e.g., GKE or EKS), run the following command to add a pod. This assumes you scaled from 3 to 4 nodes:

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"statefulset":{"replicas":"4"}}}' --type merge
          ```

          Note, that if you are running in secure mode (`tls.enabled` is `yes`/`true`) and increase the size of your cluster, you will also have to approve the CSR (certificate-signing request) of each new node (using `kubectl get csr` and `kubectl certificate approve`).

          [1]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#inter-pod-affinity-and-anti-affinity
          [2]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#node-affinity
          [3]: https://cert-manager.io/
          [4]: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass
          [5]: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
        displayName: CockroachDB Helm Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cockroach
        - cockroachdb
        links:
        - name: Helm Chart Source
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb
        - name: Configuration Options
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration
        - name: CockroachDB Source
          url: https://github.com/cockroachdb/cockroach
        maintainers:
        - email: dmesser@redhat.com
          name: Daniel Messer
        maturity: stable
        minKubeVersion: 1.8.0
        provider:
          name: Helm Community
          url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
        relatedImages:
        - quay.io/openshift-community-operators/cockroachdb@sha256:f42337e7b85a46d83c94694638e2312e10ca16a03542399a65ba783c94a32b63
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/helmoperators/cockroachdb:v5.0.4
        version: 5.0.4
      entries:
      - name: cockroachdb.v5.0.4
        version: 5.0.4
      - name: cockroachdb.v5.0.3
        version: 5.0.3
      name: stable-5.x
    - currentCSV: cockroachdb.v6.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.operatorhub.io/v1alpha1",
                "kind": "Cockroachdb",
                "metadata": {
                  "name": "cockroachdb-sample"
                },
                "spec": {"image":{"repository":"cockroachdb/cockroach","tag":"v22.2.4","pullPolicy":"IfNotPresent","credentials":{}},"labels":{},"clusterDomain":"cluster.local","conf":{"attrs":[],"cache":"25%","cluster-name":"","disable-cluster-name-verification":false,"join":[],"log":{"enabled":false,"config":{}},"logtostderr":"INFO","max-sql-memory":"25%","locality":"","single-node":false,"sql-audit-dir":"","port":26257,"http-port":8080,"path":"cockroach-data","store":{"enabled":false,"type":null,"size":null,"attrs":null}},"statefulset":{"replicas":3,"updateStrategy":{"type":"RollingUpdate"},"podManagementPolicy":"Parallel","budget":{"maxUnavailable":1},"args":[],"env":[],"secretMounts":[],"labels":{"app.kubernetes.io/component":"cockroachdb"},"annotations":{},"nodeAffinity":{},"podAffinity":{},"podAntiAffinity":{"topologyKey":"kubernetes.io/hostname","type":"soft","weight":100},"nodeSelector":{},"priorityClassName":"","tolerations":[],"topologySpreadConstraints":{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"},"resources":{},"customLivenessProbe":{},"customReadinessProbe":{}},"service":{"ports":{"grpc":{"external":{"port":26257,"name":"grpc"},"internal":{"port":26257,"name":"grpc-internal"}},"http":{"port":8080,"name":"http"}},"public":{"type":"ClusterIP","labels":{"app.kubernetes.io/component":"cockroachdb"},"annotations":{}},"discovery":{"labels":{"app.kubernetes.io/component":"cockroachdb"},"annotations":{}}},"ingress":{"enabled":false,"labels":{},"annotations":{},"paths":["/"],"hosts":[],"tls":[]},"prometheus":{"enabled":true},"serviceMonitor":{"enabled":false,"labels":{},"annotations":{},"interval":"10s","namespaced":false},"storage":{"hostPath":"","persistentVolume":{"enabled":true,"size":"100Gi","storageClass":"","labels":{},"annotations":{}}},"init":{"labels":{"app.kubernetes.io/component":"init"},"jobAnnotations":{},"annotations":{},"affinity":{},"nodeSelector":{},"tolerations":[],"resources":{},"provisioning":{"enabled":false,"clusterSettings":null,"users":[],"databases":[]}},"tls":{"enabled":true,"serviceAccount":{"create":true,"name":""},"copyCerts":{"image":"busybox"},"certs":{"provided":false,"clientRootSecret":"cockroachdb-root","nodeSecret":"cockroachdb-node","tlsSecret":false,"selfSigner":{"enabled":true,"caProvided":false,"caSecret":"","minimumCertDuration":"624h","caCertDuration":"43800h","caCertExpiryWindow":"648h","clientCertDuration":"672h","clientCertExpiryWindow":"48h","nodeCertDuration":"8760h","nodeCertExpiryWindow":"168h","rotateCerts":true,"readinessWait":"30s","podUpdateTimeout":"2m"},"certManager":false,"certManagerIssuer":{"group":"cert-manager.io","kind":"Issuer","name":"cockroachdb","clientCertDuration":"672h","clientCertExpiryWindow":"48h","nodeCertDuration":"8760h","nodeCertExpiryWindow":"168h"},"useCertManagerV1CRDs":false},"selfSigner":{"image":{"repository":"cockroachlabs-helm-charts/cockroach-self-signer-cert","tag":"1.3","pullPolicy":"IfNotPresent","credentials":{},"registry":"gcr.io"}}},"networkPolicy":{"enabled":false,"ingress":{"grpc":[],"http":[]}},"iap":{"enabled":false}}
              }
            ]
          capabilities: Basic Install
          categories: Database
          certified: "false"
          containerImage: quay.io/cockroachdb/cockroach-helm-operator:6.0.0
          createdAt: 2021-01-23T10-00-00Z
          description: CockroachDB Operator based on the CockroachDB helm chart
          olm.skipRange: <6.0.0
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/cockroachdb/helm-charts
          support: CockroachDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a CockroachDB cluster
            displayName: CockroachDB
            kind: Cockroachdb
            name: cockroachdbs.charts.operatorhub.io
            version: v1alpha1
        description: |
          CockroachDB is a scalable, survivable, strongly-consistent SQL database.
          ## About this Operator
          This Operator is based on a Helm chart for CockroachDB. It supports reconfiguration for some parameters, but notably does not handle scale down of the replica count in a seamless manner. Scale up works great.

          ## Core capabilities
          * **StatefulSet** - Sets up a dynamically scalable CockroachDB cluster using a Kubernetes StatefulSet
          * **Expand Replicas** - Supports expanding the set of replicas by simply editing your object
          * **Dashboard** - Installs the CockroachDB user interface to administer your cluster. Easily expose it via an Ingress rule.
          Review all of the [confiuguration options](https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration) to best run your database instance. The example configuration is derived from the chart's [`values.yaml`](https://github.com/helm/charts/blob/master/stable/cockroachdb/values.yaml).
          ## Using the cluster
          The resulting cluster endpoint can be consumed from a `Service` that follows the pattern: `<StatefulSet-name>-public`. For example to connect using the command line client, use something like the following to obtain the name of the service:
          ```
          kubectl get service -l chart=cockroachdb-6.0.0
          NAME                                           TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)              AGE
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb          ClusterIP   None             <none>        26257/TCP,8080/TCP   24m
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public   ClusterIP   10.106.249.134   <none>        26257/TCP,8080/TCP   24m
          ```
          Then you can use the CockroachDB command line client to connect to the database cluster:
          ```
          kubectl run -it --rm cockroach-client --image=cockroachdb/cockroach --restart=Never --command -- ./cockroach sql --insecure --host example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public
          ```
          ## Before you start
          This Operator requires a cluster with PV support in order to run correctly.

          Note that for a production cluster, you will likely want to override the following parameters in [`values.yaml`](values.yaml) with your own values.

          - `statefulset.resources.requests.memory` and `statefulset.resources.limits.memory` allocate memory resources to CockroachDB pods in your cluster.
          - `conf.cache` and `conf.max-sql-memory` are memory limits that we recommend setting to 1/4 of the above resource allocation. When running CockroachDB, you must set these limits explicitly to avoid running out of memory.
          - `storage.persistentVolume.size` defaults to `100Gi` of disk space per pod, which you may increase or decrease for your use case.
          - `storage.persistentVolume.storageClass` uses the default storage class for your environment. We strongly recommend that you specify a storage class which uses an SSD.
          - `tls.enabled` must be set to `yes`/`true` to deploy in secure mode.

          For more information on overriding the `values.yaml` parameters, please see:
          > <https://www.cockroachlabs.com/docs/stable/orchestrate-cockroachdb-with-kubernetes.html#step-2-start-cockroachdb>

          If you are running in secure mode (with configuration parameter `tls.enabled` set to `yes`/`true`) and `tls.certs.provided` set to `no`/`false`), then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          When `tls.certs.provided` is set to `yes`/`true`, this chart will use certificates created outside of Kubernetes. You may want to use this if you want to use a different certificate authority from the one being used by Kubernetes or if your Kubernetes cluster doesn't fully support certificate-signing requests. To use this, first set up your certificates and load them into your Kubernetes cluster as Secrets using the commands below:

          ```
          mkdir certs
          mkdir my-safe-directory
          cockroach cert create-ca --certs-dir=certs --ca-key=my-safe-directory/ca.key
          cockroach cert create-client root --certs-dir=certs --ca-key=my-safe-directory/ca.key
          kubectl create secret generic cockroachdb-root --from-file=certs
          cockroach cert create-node --certs-dir=certs --ca-key=my-safe-directory/ca.key localhost 127.0.0.1 eerie-horse-cockroachdb-public eerie-horse-cockroachdb-public.default eerie-horse-cockroachdb-public.default.svc.cluster.local *.eerie-horse-cockroachdb *.eerie-horse-cockroachdb.default *.eerie-horse-cockroachdb.default.svc.cluster.local
          kubectl create secret generic cockroachdb-node --from-file=certs
          ```

          Set `tls.certs.tlsSecret` to `yes/true` if you make use of [cert-manager][3] in your cluster.

          [cert-manager][3] stores generated certificates in dedicated TLS secrets. Thus, they are always named:

          * `ca.crt`
          * `tls.crt`
          * `tls.key`

          On the other hand, CockroachDB also demands dedicated certificate filenames:

          * `ca.crt`
          * `node.crt`
          * `node.key`
          * `client.root.crt`
          * `client.root.key`

          By activating `tls.certs.tlsSecret` we benefit from projected secrets and convert the TLS secret filenames to their according CockroachDB filenames.

          If you are running in secure mode, then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          Confirm that all pods are `Running` successfully and init has been completed:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS      RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running     0          1m
          my-release-cockroachdb-1            1/1       Running     0          1m
          my-release-cockroachdb-2            1/1       Running     0          1m
          my-release-cockroachdb-init-k6jcr   0/1       Completed   0          1m
          ```

          Confirm that persistent volumes are created and claimed for each pod:

          ```shell
          kubectl get pv
          ```

          ```
          NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS    CLAIM                                      STORAGECLASS   REASON    AGE
          pvc-64878ebf-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-0   standard                 51s
          pvc-64945b4f-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-1   standard                 51s
          pvc-649d920d-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-2   standard                 51s
          ```

          ## Upgrading the cluster

          ### Chart version 3.0.0 and after

          Launch a temporary interactive pod and start the built-in SQL client:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          Set `cluster.preserve_downgrade_option`, where `$current_version` is the CockroachDB version currently running (e.g., `19.2`):

          ```sql
          > SET CLUSTER SETTING cluster.preserve_downgrade_option = '$current_version';
          ```

          Exit the shell and delete the temporary pod:

          ```sql
          > \q
          ```

          Kick off the upgrade process by changing the new Docker image, where `$new_version` is the CockroachDB version to which you are upgrading:

          ```shell
          kubectl delete job my-release-cockroachdb-init
          ```

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"image":{"tag":"<new version tag here>"}}}' --type merge
          ```

          Kubernetes will carry out a safe [rolling upgrade](https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets) of your CockroachDB nodes one-by-one. Monitor the cluster's pods until all have been successfully restarted:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS              RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running             0          2m
          my-release-cockroachdb-1            1/1       Running             0          3m
          my-release-cockroachdb-2            1/1       Running             0          3m
          my-release-cockroachdb-3            0/1       ContainerCreating   0          25s
          my-release-cockroachdb-init-nwjkh   0/1       ContainerCreating   0          6s
          ```

          ```shell
          kubectl get pods \
          -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.spec.containers[0].image}{"\n"}'
          ```

          ```
          my-release-cockroachdb-0    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-1    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-2    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-3    cockroachdb/cockroach:v20.2.4
          ```

          Resume normal operations. Once you are comfortable that the stability and performance of the cluster is what you'd expect post-upgrade, finalize the upgrade:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          ```sql
          > RESET CLUSTER SETTING cluster.preserve_downgrade_option;
          > \q
          ```

          ## Configuration

          The following table lists the configurable parameters of the CockroachDB chart and their default values.
          For details see the [`values.yaml`](values.yaml) file.

          | Parameter                                                 | Description                                                     | Default                                          |
          | ---------                                                 | -----------                                                     | -------                                          |
          | `clusterDomain`                                           | Cluster's default DNS domain                                    | `cluster.local`                                  |
          | `conf.attrs`                                              | CockroachDB node attributes                                     | `[]`                                             |
          | `conf.cache`                                              | Size of CockroachDB's in-memory cache                           | `25%`                                            |
          | `conf.cluster-name`                                       | Name of CockroachDB cluster                                     | `""`                                             |
          | `conf.disable-cluster-name-verification`                  | Disable CockroachDB cluster name verification                   | `no`                                             |
          | `conf.join`                                               | List of already-existing CockroachDB instances                  | `[]`                                             |
          | `conf.max-disk-temp-storage`                              | Max storage capacity for temp data                              | `0`                                              |
          | `conf.max-offset`                                         | Max allowed clock offset for CockroachDB cluster                | `500ms`                                          |
          | `conf.max-sql-memory`                                     | Max memory to use processing SQL querie                         | `25%`                                            |
          | `conf.locality`                                           | Locality attribute for this deployment                          | `""`                                             |
          | `conf.single-node`                                        | Disable CockroachDB clustering (standalone mode)                | `no`                                             |
          | `conf.sql-audit-dir`                                      | Directory for SQL audit log                                     | `""`                                             |
          | `conf.port`                                               | CockroachDB primary serving port in Pods                        | `26257`                                          |
          | `conf.http-port`                                          | CockroachDB HTTP port in Pods                                   | `8080`                                           |
          | `image.repository`                                        | Container image name                                            | `cockroachdb/cockroach`                          |
          | `image.tag`                                               | Container image tag                                             | `v20.2.4`                                        |
          | `image.pullPolicy`                                        | Container pull policy                                           | `IfNotPresent`                                   |
          | `image.credentials`                                       | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `statefulset.replicas`                                    | StatefulSet replicas number                                     | `3`                                              |
          | `statefulset.updateStrategy`                              | Update strategy for StatefulSet Pods                            | `{"type": "RollingUpdate"}`                      |
          | `statefulset.podManagementPolicy`                         | `OrderedReady`/`Parallel` Pods creation/deletion order          | `Parallel`                                       |
          | `statefulset.budget.maxUnavailable`                       | k8s PodDisruptionBudget parameter                               | `1`                                              |
          | `statefulset.args`                                        | Extra command-line arguments                                    | `[]`                                             |
          | `statefulset.env`                                         | Extra env vars                                                  | `[]`                                             |
          | `statefulset.secretMounts`                                | Additional Secrets to mount at cluster members                  | `[]`                                             |
          | `statefulset.labels`                                      | Additional labels of StatefulSet and its Pods                   | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `statefulset.annotations`                                 | Additional annotations of StatefulSet Pods                      | `{}`                                             |
          | `statefulset.nodeAffinity`                                | [Node affinity rules][2] of StatefulSet Pods                    | `{}`                                             |
          | `statefulset.podAffinity`                                 | [Inter-Pod affinity rules][1] of StatefulSet Pods               | `{}`                                             |
          | `statefulset.podAntiAffinity`                             | [Anti-affinity rules][1] of StatefulSet Pods                    | auto                                             |
          | `statefulset.podAntiAffinity.topologyKey`                 | The topologyKey for auto [anti-affinity rules][1]               | `kubernetes.io/hostname`                         |
          | `statefulset.podAntiAffinity.type`                        | Type of auto [anti-affinity rules][1]                           | `soft`                                           |
          | `statefulset.podAntiAffinity.weight`                      | Weight for `soft` auto [anti-affinity rules][1]                 | `100`                                            |
          | `statefulset.nodeSelector`                                | Node labels for StatefulSet Pods assignment                     | `{}`                                             |
          | `statefulset.priorityClassName`                           | [PriorityClassName][4] for StatefulSet Pods                     | `""`                                             |
          | `statefulset.tolerations`                                 | Node taints to tolerate by StatefulSet Pods                     | `[]`                                             |
          | `statefulset.topologySpreadConstraints`                   | [Topology Spread Constraints rules][5] of StatefulSet Pods      | auto                                             |
          | `statefulset.topologySpreadConstraints.maxSkew`           | Degree to which Pods may be unevenly distributed                | `1`                                              |
          | `statefulset.topologySpreadConstraints.topologyKey`       | The key of node labels                                          | `topology.kubernetes.io/zone`                    |
          | `statefulset.topologySpreadConstraints.whenUnsatisfiable` | `ScheduleAnyway`/`DoNotSchedule` for unsatisfiable constraints  | `ScheduleAnyway`                                 |
          | `statefulset.resources`                                   | Resource requests and limits for StatefulSet Pods               | `{}`                                             |
          | `service.ports.grpc.external.port`                        | CockroachDB primary serving port in Services                    | `26257`                                          |
          | `service.ports.grpc.external.name`                        | CockroachDB primary serving port name in Services               | `grpc`                                           |
          | `service.ports.grpc.internal.port`                        | CockroachDB inter-communication port in Services                | `26257`                                          |
          | `service.ports.grpc.internal.name`                        | CockroachDB inter-communication port name in Services           | `grpc-internal`                                  |
          | `service.ports.http.port`                                 | CockroachDB HTTP port in Services                               | `8080`                                           |
          | `service.ports.http.name`                                 | CockroachDB HTTP port name in Services                          | `http`                                           |
          | `service.public.type`                                     | Public Service type                                             | `ClusterIP`                                      |
          | `service.public.labels`                                   | Additional labels of public Service                             | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.public.annotations`                              | Additional annotations of public Service                        | `{}`                                             |
          | `service.discovery.labels`                                | Additional labels of discovery Service                          | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.discovery.annotations`                           | Additional annotations of discovery Service                     | `{}`                                             |
          | `ingress.enabled`                                         | Enable ingress resource for CockroachDB                         | `false`                                          |
          | `ingress.labels`                                          | Additional labels of Ingress                                    | `{}`                                             |
          | `ingress.annotations`                                     | Additional annotations of Ingress                               | `{}`                                             |
          | `ingress.paths`                                           | Paths for the default host                                      | `[/]`                                            |
          | `ingress.hosts`                                           | CockroachDB Ingress hostnames                                   | `[]`                                             |
          | `ingress.tls[0].hosts`                                    | CockroachDB Ingress tls hostnames                               | `nil`                                            |
          | `ingress.tls[0].secretName`                               | CockroachDB Ingress tls secret name                             | `nil`                                            |
          | `serviceMonitor.enabled`                                  | Create [ServiceMonitor](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/design.md#servicemonitor) Resource for scraping metrics using [PrometheusOperator](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/user-guides/getting-started.md#prometheus-operator)                     | `false`                                             |
          | `serviceMonitor.labels`                                   | Additional labels of ServiceMonitor                             | `{}`                                             |
          | `serviceMonitor.annotations`                              | Additional annotations of ServiceMonitor                        | `{}`                                             |
          | `serviceMonitor.interval`                                 | ServiceMonitor scrape metrics interval                          | `10s`                                            |
          | `serviceMonitor.scrapeTimeout`                            | ServiceMonitor scrape timeout                                   | `nil`                                            |
          | `storage.hostPath`                                        | Absolute path on host to store data                             | `""`                                             |
          | `storage.persistentVolume.enabled`                        | Whether to use PersistentVolume to store data                   | `yes`                                            |
          | `storage.persistentVolume.size`                           | PersistentVolume size                                           | `100Gi`                                          |
          | `storage.persistentVolume.storageClass`                   | PersistentVolume class                                          | `""`                                             |
          | `storage.persistentVolume.labels`                         | Additional labels of PersistentVolumeClaim                      | `{}`                                             |
          | `storage.persistentVolume.annotations`                    | Additional annotations of PersistentVolumeClaim                 | `{}`                                             |
          | `init.labels`                                             | Additional labels of init Job and its Pod                       | `{"app.kubernetes.io/component": "init"}`        |
          | `init.annotations`                                        | Additional labels of the Pod of init Job                        | `{}`                                             |
          | `init.affinity`                                           | [Affinity rules][2] of init Job Pod                             | `{}`                                             |
          | `init.nodeSelector`                                       | Node labels for init Job Pod assignment                         | `{}`                                             |
          | `init.tolerations`                                        | Node taints to tolerate by init Job Pod                         | `[]`                                             |
          | `init.resources`                                          | Resource requests and limits for the Pod of init Job            | `{}`                                             |
          | `tls.enabled`                                             | Whether to run securely using TLS certificates                  | `no`                                             |
          | `tls.serviceAccount.create`                               | Whether to create a new RBAC service account                    | `yes`                                            |
          | `tls.serviceAccount.name`                                 | Name of RBAC service account to use                             | `""`                                             |
          | `tls.certs.provided`                                      | Bring your own certs scenario, i.e certificates are provided    | `no`                                             |
          | `tls.certs.clientRootSecret`                              | If certs are provided, secret name for client root cert         | `cockroachdb-root`                               |
          | `tls.certs.nodeSecret`                                    | If certs are provided, secret name for node cert                | `cockroachdb-node`                               |
          | `tls.certs.tlsSecret`                                     | Own certs are stored in TLS secret                              | `no`                                             |
          | `tls.init.image.repository`                               | Image to use for requesting TLS certificates                    | `cockroachdb/cockroach-k8s-request-cert`         |
          | `tls.init.image.tag`                                      | Image tag to use for requesting TLS certificates                | `0.4`                                            |
          | `tls.init.image.pullPolicy`                               | Requesting TLS certificates container pull policy               | `IfNotPresent`                                   |
          | `tls.init.image.credentials`                              | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `networkPolicy.enabled`                                   | Enable NetworkPolicy for CockroachDB's Pods                     | `no`                                             |
          | `networkPolicy.ingress.grpc`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |
          | `networkPolicy.ingress.http`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |


          Override the default parameters using the `CockroachDB` custom resource.

          ## Deep dive

          ### Connecting to the CockroachDB cluster

          Once you've created the cluster, you can start talking to it by connecting to its `-public` Service. CockroachDB is PostgreSQL wire protocol compatible, so there's a [wide variety of supported clients](https://www.cockroachlabs.com/docs/install-client-drivers.html). As an example, we'll open up a SQL shell using CockroachDB's built-in shell and play around with it a bit, like this (likely needing to replace `my-release-cockroachdb-public` with the name of the `-public` Service that was created with your installed chart):

          ```shell
          kubectl run cockroach-client --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host my-release-cockroachdb-public
          ```

          ```
          Waiting for pod default/cockroach-client to be running, status is Pending,
          pod ready: false
          If you don't see a command prompt, try pressing enter.
          root@my-release-cockroachdb-public:26257> SHOW DATABASES;
          +--------------------+
          |      Database      |
          +--------------------+
          | information_schema |
          | pg_catalog         |
          | system             |
          +--------------------+
          (3 rows)
          root@my-release-cockroachdb-public:26257> CREATE DATABASE bank;
          CREATE DATABASE
          root@my-release-cockroachdb-public:26257> CREATE TABLE bank.accounts (id INT
          PRIMARY KEY, balance DECIMAL);
          CREATE TABLE
          root@my-release-cockroachdb-public:26257> INSERT INTO bank.accounts VALUES
          (1234, 10000.50);
          INSERT 1
          root@my-release-cockroachdb-public:26257> SELECT * FROM bank.accounts;
          +------+---------+
          |  id  | balance |
          +------+---------+
          | 1234 | 10000.5 |
          +------+---------+
          (1 row)
          root@my-release-cockroachdb-public:26257> \q
          Waiting for pod default/cockroach-client to terminate, status is Running
          pod "cockroach-client" deleted
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          ### Cluster health

          Because our pod spec includes regular health checks of the CockroachDB processes, simply running `kubectl get pods` and looking at the `STATUS` column is sufficient to determine the health of each instance in the cluster.

          If you want more detailed information about the cluster, the best place to look is the Admin UI.

          ### Accessing the Admin UI

          If you want to see information about how the cluster is doing, you can try pulling up the CockroachDB Admin UI by port-forwarding from your local machine to one of the pods (replacing `my-release-cockroachdb-0` with the name of one of your pods:

          ```shell
          kubectl port-forward my-release-cockroachdb-0 8080
          ```

          You should then be able to access the Admin UI by visiting <http://localhost:8080/> in your web browser.

          ### Failover

          If any CockroachDB member fails, it is restarted or recreated automatically by the Kubernetes infrastructure, and will re-join the cluster automatically when it comes back up. You can test this scenario by killing any of the CockroachDB pods:

          ```shell
          kubectl delete pod my-release-cockroachdb-1
          ```

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          After a while:

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-1  1/1       Running       0          20s
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          You can check the state of re-joining from the new pod's logs:

          ```shell
          kubectl logs my-release-cockroachdb-1
          ```

          ```
          [...]
          I161028 19:32:09.754026 1 server/node.go:586  [n1] node connected via gossip and
          verified as part of cluster {"35ecbc27-3f67-4e7d-9b8f-27c31aae17d6"}
          [...]
          cockroachdb-0.my-release-cockroachdb.default.svc.cluster.local:26257
          build:      beta-20161027-55-gd2d3c7f @ 2016/10/28 19:27:25 (go1.7.3)
          admin:      http://0.0.0.0:8080
          sql:
          postgresql://root@my-release-cockroachdb-1.my-release-cockroachdb.default.svc.cluster.local:26257?sslmode=disable
          logs:       cockroach-data/logs
          store[0]:   path=cockroach-data
          status:     restarted pre-existing node
          clusterID:  {35ecbc27-3f67-4e7d-9b8f-27c31aae17d6}
          nodeID:     2
          [...]
          ```

          ### NetworkPolicy

          To enable NetworkPolicy for CockroachDB, install [a networking plugin that implements the Kubernetes NetworkPolicy spec](https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy#before-you-begin), and set `networkPolicy.enabled` to `yes`/`true`.

          For Kubernetes v1.5 & v1.6, you must also turn on NetworkPolicy by setting the `DefaultDeny` Namespace annotation. Note: this will enforce policy for _all_ pods in the Namespace:

          ```shell
          kubectl annotate namespace default "net.beta.kubernetes.io/network-policy={\"ingress\":{\"isolation\":\"DefaultDeny\"}}"
          ```

          For more precise policy, set `networkPolicy.ingress.grpc` and `networkPolicy.ingress.http` rules. This will only allow pods that match the provided rules to connect to CockroachDB.

          ### Scaling

          Scaling should be managed via the `helm upgrade` command. After resizing your cluster on your cloud environment (e.g., GKE or EKS), run the following command to add a pod. This assumes you scaled from 3 to 4 nodes:

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"statefulset":{"replicas":"4"}}}' --type merge
          ```

          Note, that if you are running in secure mode (`tls.enabled` is `yes`/`true`) and increase the size of your cluster, you will also have to approve the CSR (certificate-signing request) of each new node (using `kubectl get csr` and `kubectl certificate approve`).

          [1]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#inter-pod-affinity-and-anti-affinity
          [2]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#node-affinity
          [3]: https://cert-manager.io/
          [4]: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass
          [5]: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
        displayName: CockroachDB Helm Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cockroach
        - cockroachdb
        links:
        - name: Helm Chart Source
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb
        - name: Configuration Options
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration
        - name: CockroachDB Source
          url: https://github.com/cockroachdb/cockroach
        maintainers:
        - email: yandu@cockroachlabs.com
          name: Yandu Oppacher
        maturity: stable
        minKubeVersion: 1.8.0
        provider:
          name: Helm Community
          url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/cockroachdb/cockroach-helm-operator:6.0.0
        - quay.io/openshift-community-operators/cockroachdb@sha256:d3016b1507515fc7712f9c47fd9082baf9ccb070aaab58ed0ef6e5abdedde8ba
        version: 6.0.0
      entries:
      - name: cockroachdb.v6.0.0
        version: 6.0.0
      name: stable-v6.x
    defaultChannel: stable-v6.x
    packageName: cockroachdb
    provider:
      name: Helm Community
      url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OnGres
      provider-url: https://ongres.com
    name: stackgres-community
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stackgres-community.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - quay.io/community-operator-pipeline-prod/stackgres-community@sha256:d6a2bb38278da721b32ea1d84f613cd38fe9e3d570c1f5d3c81e1d812e3e6b09
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        version: 1.18.3
      entries:
      - name: stackgres-community.v1.18.3
        version: 1.18.3
      - name: stackgres-community.v1.18.2
        version: 1.18.2
      - name: stackgres-community.v1.18.1
        version: 1.18.1
      name: candidate
    - currentCSV: stackgres-community.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/stackgres-community@sha256:d6a2bb38278da721b32ea1d84f613cd38fe9e3d570c1f5d3c81e1d812e3e6b09
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        version: 1.18.3
      entries:
      - name: stackgres-community.v1.18.3
        version: 1.18.3
      - name: stackgres-community.v1.18.2
        version: 1.18.2
      - name: stackgres-community.v1.18.1
        version: 1.18.1
      name: fast
    - currentCSV: stackgres-community.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - quay.io/community-operator-pipeline-prod/stackgres-community@sha256:d6a2bb38278da721b32ea1d84f613cd38fe9e3d570c1f5d3c81e1d812e3e6b09
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        version: 1.18.3
      entries:
      - name: stackgres-community.v1.18.3
        version: 1.18.3
      - name: stackgres-community.v1.18.2
        version: 1.18.2
      - name: stackgres-community.v1.18.1
        version: 1.18.1
      name: stable
    defaultChannel: stable
    packageName: stackgres-community
    provider:
      name: OnGres
      url: https://ongres.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: mtv-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mtv-operator.v2.10.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "ForkliftController",
                "metadata": {
                  "name": "forklift-controller",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "feature_ui_plugin": "true",
                  "feature_validation": "true",
                  "feature_volume_populator": "true"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Hook",
                "metadata": {
                  "name": "example-hook",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "image": "quay.io/konveyor/hook-runner",
                  "playbook": "\u003cbase64-encoded-playbook\u003e"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Host",
                "metadata": {
                  "name": "example-host",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "id": "",
                  "ipAddress": "",
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Migration",
                "metadata": {
                  "name": "example-migration",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "plan": {
                    "name": "example-plan",
                    "namespace": "openshift-mtv"
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "NetworkMap",
                "metadata": {
                  "name": "example-networkmap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "name": "",
                        "namespace": "",
                        "type": "pod"
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OpenstackVolumePopulator",
                "metadata": {
                  "name": "example-openstack",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "identityUrl": "",
                  "imageId": "",
                  "secretName": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OvirtVolumePopulator",
                "metadata": {
                  "name": "example-ovirt-imageio",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "diskId": "",
                  "engineSecretName": "",
                  "engineUrl": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Plan",
                "metadata": {
                  "name": "example-plan",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "provider": {
                    "destination": {
                      "name": "",
                      "namespace": ""
                    },
                    "source": {
                      "name": "",
                      "namespace": ""
                    }
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                  "name": "example-provider",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "secret": {
                    "name": "",
                    "namespace": ""
                  },
                  "type": "vmware",
                  "url": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "StorageMap",
                "metadata": {
                  "name": "example-storagemap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "storageClass": ""
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "true"
          containerImage: registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:f364639313bdcd065a5f6c71f74c7c7cf920e2919e1342e6b184780455c8fb6e
          createdAt: "2025-12-16T16:35:23Z"
          description: Facilitates migration of VM workloads to OpenShift Virtualization
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/fipsmode: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "forklift.konveyor.io/v1beta1",
              "kind": "ForkliftController",
              "metadata": {
                "name": "forklift-controller",
                "namespace": "openshift-mtv"
              },
              "spec": {
                "feature_ui_plugin": "true",
                "feature_validation": "true",
                "feature_volume_populator": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mtv
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/kubev2v/forklift
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VM migration controller
            displayName: ForkliftController
            kind: ForkliftController
            name: forkliftcontrollers.forklift.konveyor.io
            version: v1beta1
          - description: Hook schema for the hooks API
            displayName: Hook
            kind: Hook
            name: hooks.forklift.konveyor.io
            version: v1beta1
          - description: VM host
            displayName: Host
            kind: Host
            name: hosts.forklift.konveyor.io
            version: v1beta1
          - description: VM migration
            displayName: Migration
            kind: Migration
            name: migrations.forklift.konveyor.io
            version: v1beta1
          - description: VM network map
            displayName: NetworkMap
            kind: NetworkMap
            name: networkmaps.forklift.konveyor.io
            version: v1beta1
          - description: OpenStack Volume Populator
            displayName: OpenstackVolumePopulator
            kind: OpenstackVolumePopulator
            name: openstackvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: OVA Provider Server
            displayName: OVAProviderServer
            kind: OVAProviderServer
            name: ovaproviderservers.forklift.konveyor.io
            version: v1beta1
          - description: oVirt Volume Populator
            displayName: OvirtVolumePopulator
            kind: OvirtVolumePopulator
            name: ovirtvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: VM migration plan
            displayName: Plan
            kind: Plan
            name: plans.forklift.konveyor.io
            version: v1beta1
          - description: VM provider
            displayName: Provider
            kind: Provider
            name: providers.forklift.konveyor.io
            version: v1beta1
          - description: VM storage map
            displayName: StorageMap
            kind: StorageMap
            name: storagemaps.forklift.konveyor.io
            version: v1beta1
          - description: VSphere Xcopy Volume Populator
            displayName: VSphereXcopyVolumePopulator
            kind: VSphereXcopyVolumePopulator
            name: vspherexcopyvolumepopulators.forklift.konveyor.io
            version: v1beta1
        description: |
          The Migration Toolkit for Virtualization Operator manages the deployment and life cycle of Migration Toolkit for Virtualization on [OpenShift](https://www.openshift.com/) Container Platform.

          ### Installation

          OpenShift Virtualization must be installed on an OpenShift migration target cluster before you can use MTV to transfer any VMs to that cluster

          Once you have successfully installed the Operator, proceed to deploy components by creating the required ForkliftController CR.

          By default, the Operator installs the following components on a target cluster:

          * Controller, to coordinate migration processes.
          * UI, the web console to manage migrations.
          * Validation, a service to validate migration workflows.

          ### Compatibility

          Migration Toolkit for Virtualization 2.9 is supported on OpenShift 4.17, 4.18 and 4.19

          Migration Toolkit for Virtualization 2.10 is supported on OpenShift 4.18, 4.19 and 4.20

          More information on compatibility in the [MTV Lifecycle document](https://access.redhat.com/support/policy/updates/migration-toolkit-for-virtualization).

          ### Documentation
          Documentation can be found on the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization/).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Virtualization Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Creating a case in the [Red Hat Customer Portal](https://access.redhat.com/support/cases/) with any issues you find using Migration Toolkit for Application and its Operator.
          * Fixing issues by opening Pull Requests in the [KubeV2V](https://github.com/kubev2v/) under Forklift Projects.
          * Improving Forklift upstream [documentation](https://github.com/kubev2v/forklift-documentation/).
        displayName: Migration Toolkit for Virtualization Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - forklift
        - konveyor
        - mtv
        links:
        - name: Migration Toolkit for Virtualization Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization
        - name: Forklift Operator
          url: https://github.com/kubev2v/forklift
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:8ae52c3487c3eff996800be4321ef5cd594a6a451c2cfe9ed283c862e9fa5703
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:be16e654be6a8d0513f92ba2e148941cd6ddb8e597085f66be6899c1ba605ce5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:f6e5d3c93ee1c8962828ef889902a099a4bbb1f6665a0975bdffa9e8d6e4cb6d
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fe352650a328af67ba8cb331bafb320f0f147fe8a41782311206b8a6f0255552
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:8bde2126f5f8a6e1ca6b84c559c83771c8580fae0fca338219e94cba3e908e29
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel10@sha256:3d927816fbd65ad819444432c6d80907143944e0fba525826edc10c8ca568849
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:2cbcb294f707d4832de3436df5cb35b442f8db69d24f3fb7c66ca7c2579e7930
        - registry.redhat.io/migration-toolkit-virtualization/mtv-cli-download-rhel9@sha256:220639596f63897fecdb261d9faa7a8f6c1b1b9661c26e449336e3e19585d8f9
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:4417efc0a042ab078138d5a83eb1b32e7f1d6ad90f69efdab40ed43c01d1fe30
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:7b5871df7274de2dd7df16f311fe97b8873b88032571d83216d6e61820aa288f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:018f9305c10388d368b8a29ef6a827494492df23a3279265ff3e41971e1dda43
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:869705843f9c42a664f0e27afad9d609d2f8d56204f1fd2c693e340cc384afd9
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:92fcb195ede1bcc5e1108bbea950aaf953f8058fd1bc3ff4381f7d7d11da1859
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-proxy-rhel9@sha256:d990f6ddd51e468aeef329fe6c0c083ad524e6b72d8dc4ff8fcfe4cea4d16156
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:f364639313bdcd065a5f6c71f74c7c7cf920e2919e1342e6b184780455c8fb6e
        version: 2.10.2
      entries:
      - name: mtv-operator.v2.10.2
        version: 2.10.2
      - name: mtv-operator.v2.10.1
        version: 2.10.1
      - name: mtv-operator.v2.10.0
        version: 2.10.0
      name: release-v2.10
    - currentCSV: mtv-operator.v2.7.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "ForkliftController",
                "metadata": {
                  "name": "forklift-controller",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "feature_ui_plugin": "true",
                  "feature_validation": "true",
                  "feature_volume_populator": "true"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Hook",
                "metadata": {
                  "name": "example-hook",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "image": "quay.io/konveyor/hook-runner",
                  "playbook": "<base64-encoded-playbook>"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Host",
                "metadata": {
                  "name": "example-host",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "id": "",
                  "ipAddress": "",
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Migration",
                "metadata": {
                  "name": "example-migration",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "plan": {
                    "name": "example-plan",
                    "namespace": "openshift-mtv"
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "NetworkMap",
                "metadata": {
                  "name": "example-networkmap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "name": "",
                        "namespace": "",
                        "type": "pod"
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OpenstackVolumePopulator",
                "metadata": {
                  "name": "example-openstack",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "identityUrl": "",
                  "imageId": "",
                  "secretName": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OvirtVolumePopulator",
                "metadata": {
                  "name": "example-ovirt-imageio",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "diskId": "",
                  "engineSecretName": "",
                  "engineUrl": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Plan",
                "metadata": {
                  "name": "example-plan",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "provider": {
                    "destination": {
                      "name": "",
                      "namespace": ""
                    },
                    "source": {
                      "name": "",
                      "namespace": ""
                    }
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                  "name": "example-provider",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "secret": {
                    "name": "",
                    "namespace": ""
                  },
                  "type": "vmware",
                  "url": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "StorageMap",
                "metadata": {
                  "name": "example-storagemap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "storageClass": ""
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "true"
          containerImage: registry.redhat.io/migration-toolkit-virtualization/mtv-rhel8-operator@sha256:8dbeace89a921e0d11f85378099e39cc357702d2f20dfb9d14cebbe150d2500d
          createdAt: "2024-10-11T14:05:47Z"
          description: Facilitates migration of VM workloads to OpenShift Virtualization
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/fipsmode: "true"
          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.skipRange: '>=0.0.0 <2.7.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "forklift.konveyor.io/v1beta1",
              "kind": "ForkliftController",
              "metadata": {
                "name": "forklift-controller",
                "namespace": "openshift-mtv"
              },
              "spec": {
                "feature_ui_plugin": "true",
                "feature_validation": "true",
                "feature_volume_populator": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mtv
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/kubev2v/forklift
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VM migration controller
            displayName: ForkliftController
            kind: ForkliftController
            name: forkliftcontrollers.forklift.konveyor.io
            version: v1beta1
          - description: Hook schema for the hooks API
            displayName: Hook
            kind: Hook
            name: hooks.forklift.konveyor.io
            version: v1beta1
          - description: VM host
            displayName: Host
            kind: Host
            name: hosts.forklift.konveyor.io
            version: v1beta1
          - description: VM migration
            displayName: Migration
            kind: Migration
            name: migrations.forklift.konveyor.io
            version: v1beta1
          - description: VM network map
            displayName: NetworkMap
            kind: NetworkMap
            name: networkmaps.forklift.konveyor.io
            version: v1beta1
          - description: OpenStack Volume Populator
            displayName: OpenstackVolumePopulator
            kind: OpenstackVolumePopulator
            name: openstackvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: oVirt Volume Populator
            displayName: OvirtVolumePopulator
            kind: OvirtVolumePopulator
            name: ovirtvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: VM migration plan
            displayName: Plan
            kind: Plan
            name: plans.forklift.konveyor.io
            version: v1beta1
          - description: VM provider
            displayName: Provider
            kind: Provider
            name: providers.forklift.konveyor.io
            version: v1beta1
          - description: VM storage map
            displayName: StorageMap
            kind: StorageMap
            name: storagemaps.forklift.konveyor.io
            version: v1beta1
        description: |
          The Migration Toolkit for Virtualization Operator manages the deployment and life cycle of Migration Toolkit for Virtualization on [OpenShift](https://www.openshift.com/) Container Platform.

          ### Installation

          OpenShift Virtualization must be installed on an OpenShift migration target cluster before you can use MTV to transfer any VMs to that cluster

          Once you have successfully installed the Operator, proceed to deploy components by creating the required ForkliftController CR.

          By default, the Operator installs the following components on a target cluster:

          * Controller, to coordinate migration processes.
          * UI, the web console to manage migrations.
          * Validation, a service to validate migration workflows.

          ### Compatibility

          Migration Toolkit for Virtualization 2.5 is supported on OpenShift 4.12 and 4.13

          Migration Toolkit for Virtualization 2.6 is supported on OpenShift 4.14 and 4.15

          Migration Toolkit for Virtualization 2.7 is supported on OpenShift 4.16 and 4.17

          More information on compatibility in the [MTV Lifecycle document](https://access.redhat.com/articles/6001751).

          ### Documentation
          Documentation can be found on the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization/).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Virtualization Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Creating a case in the [Red Hat Customer Portal](https://access.redhat.com/support/cases/) with any issues you find using Migration Toolkit for Application and its Operator.
          * Fixing issues by opening Pull Requests in the [KubeV2V](https://github.com/kubev2v/) under Forklift Projects.
          * Improving Forklift upstream [documentation](https://github.com/kubev2v/forklift-documentation/).
        displayName: Migration Toolkit for Virtualization Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - forklift
        - konveyor
        - mtv
        links:
        - name: Migration Toolkit for Virtualization Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization
        - name: Forklift
          url: http://github.com/kubev2v/forklift
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:936fd68d7659683de7789fcf34d2e5873bd4bd1534c01c2d80501647f7c3c442
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:c543dbbb66fcac02345e1d3c12333780721bf049dca0f0a27d4c55b15a5d3e14
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fd6fb83bbeb9010f7e91f0afc91beac0bf38cb79c2de8f533a2bd07b1b238262
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:6d0aeffbccaf9df83b42c530bf82707aa7c1cc16f72a5ef30b66fbd562c01ab3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:8c05a303be5c536f4051ef291475b578d4d38ca0946fb4b4dd8bca376ef432aa
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:e91c2e5473f3e24c185dd25e9843f333e6d7419d9c5f4d4396669717b5969683
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:a65780c5680a6fbbd0e3d0eed423b14a9c9b3d7d17f801c1eb6eb6b777384ca5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel8-operator@sha256:8dbeace89a921e0d11f85378099e39cc357702d2f20dfb9d14cebbe150d2500d
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:4bea07e101740afc36a1617363a79b1c474efcacd584f6e475a53b3f2395a079
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:8337924489a1747d4bbca6dd6ac42210731cf721b549b5830846b271621e2ac1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:1dd8f0f08ff1323d910fea8adfa13cef64c2fd2f01968e4d9d55f71cf42835d3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:365115407964d182de7e7564438c6fd089e2c0bcc0f94ec48621ca0cc2bf0fe4
        version: 2.7.2
      entries:
      - name: mtv-operator.v2.7.2
        version: 2.7.2
      name: release-v2.7
    - currentCSV: mtv-operator.v2.8.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "ForkliftController",
                "metadata": {
                  "name": "forklift-controller",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "feature_ui_plugin": "true",
                  "feature_validation": "true",
                  "feature_volume_populator": "true"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Hook",
                "metadata": {
                  "name": "example-hook",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "image": "quay.io/konveyor/hook-runner",
                  "playbook": "<base64-encoded-playbook>"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Host",
                "metadata": {
                  "name": "example-host",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "id": "",
                  "ipAddress": "",
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Migration",
                "metadata": {
                  "name": "example-migration",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "plan": {
                    "name": "example-plan",
                    "namespace": "openshift-mtv"
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "NetworkMap",
                "metadata": {
                  "name": "example-networkmap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "name": "",
                        "namespace": "",
                        "type": "pod"
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OpenstackVolumePopulator",
                "metadata": {
                  "name": "example-openstack",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "identityUrl": "",
                  "imageId": "",
                  "secretName": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OvirtVolumePopulator",
                "metadata": {
                  "name": "example-ovirt-imageio",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "diskId": "",
                  "engineSecretName": "",
                  "engineUrl": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Plan",
                "metadata": {
                  "name": "example-plan",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "provider": {
                    "destination": {
                      "name": "",
                      "namespace": ""
                    },
                    "source": {
                      "name": "",
                      "namespace": ""
                    }
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                  "name": "example-provider",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "secret": {
                    "name": "",
                    "namespace": ""
                  },
                  "type": "vmware",
                  "url": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "StorageMap",
                "metadata": {
                  "name": "example-storagemap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "storageClass": ""
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "true"
          containerImage: registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:d267c04e414d986daba9750bad590d6387bcb798df64bc583da97d88b182dc9f
          createdAt: "2025-05-29T13:56:42Z"
          description: Facilitates migration of VM workloads to OpenShift Virtualization
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/fipsmode: "true"
          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.skipRange: '>=0.0.0 <2.8.5'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "forklift.konveyor.io/v1beta1",
              "kind": "ForkliftController",
              "metadata": {
                "name": "forklift-controller",
                "namespace": "openshift-mtv"
              },
              "spec": {
                "feature_ui_plugin": "true",
                "feature_validation": "true",
                "feature_volume_populator": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mtv
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/kubev2v/forklift
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VM migration controller
            displayName: ForkliftController
            kind: ForkliftController
            name: forkliftcontrollers.forklift.konveyor.io
            version: v1beta1
          - description: Hook schema for the hooks API
            displayName: Hook
            kind: Hook
            name: hooks.forklift.konveyor.io
            version: v1beta1
          - description: VM host
            displayName: Host
            kind: Host
            name: hosts.forklift.konveyor.io
            version: v1beta1
          - description: VM migration
            displayName: Migration
            kind: Migration
            name: migrations.forklift.konveyor.io
            version: v1beta1
          - description: VM network map
            displayName: NetworkMap
            kind: NetworkMap
            name: networkmaps.forklift.konveyor.io
            version: v1beta1
          - description: OpenStack Volume Populator
            displayName: OpenstackVolumePopulator
            kind: OpenstackVolumePopulator
            name: openstackvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: oVirt Volume Populator
            displayName: OvirtVolumePopulator
            kind: OvirtVolumePopulator
            name: ovirtvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: VM migration plan
            displayName: Plan
            kind: Plan
            name: plans.forklift.konveyor.io
            version: v1beta1
          - description: VM provider
            displayName: Provider
            kind: Provider
            name: providers.forklift.konveyor.io
            version: v1beta1
          - description: VM storage map
            displayName: StorageMap
            kind: StorageMap
            name: storagemaps.forklift.konveyor.io
            version: v1beta1
          - description: VSphere Xcopy Volume Populator
            displayName: VSphereXcopyVolumePopulator
            kind: VSphereXcopyVolumePopulator
            name: vspherexcopyvolumepopulators.forklift.konveyor.io
            version: v1beta1
        description: |
          The Migration Toolkit for Virtualization Operator manages the deployment and life cycle of Migration Toolkit for Virtualization on [OpenShift](https://www.openshift.com/) Container Platform.

          ### Installation

          OpenShift Virtualization must be installed on an OpenShift migration target cluster before you can use MTV to transfer any VMs to that cluster

          Once you have successfully installed the Operator, proceed to deploy components by creating the required ForkliftController CR.

          By default, the Operator installs the following components on a target cluster:

          * Controller, to coordinate migration processes.
          * UI, the web console to manage migrations.
          * Validation, a service to validate migration workflows.

          ### Compatibility

          Migration Toolkit for Virtualization 2.7 is supported on OpenShift 4.15, 4.16 and 4.17

          Migration Toolkit for Virtualization 2.8 is supported on OpenShift 4.16, 4.17, 4.18 and 4.19

          More information on compatibility in the [MTV Lifecycle document](https://access.redhat.com/support/policy/updates/migration-toolkit-for-virtualization).

          ### Documentation
          Documentation can be found on the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization/).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Virtualization Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Creating a case in the [Red Hat Customer Portal](https://access.redhat.com/support/cases/) with any issues you find using Migration Toolkit for Application and its Operator.
          * Fixing issues by opening Pull Requests in the [KubeV2V](https://github.com/kubev2v/) under Forklift Projects.
          * Improving Forklift upstream [documentation](https://github.com/kubev2v/forklift-documentation/).
        displayName: Migration Toolkit for Virtualization Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - forklift
        - konveyor
        - mtv
        links:
        - name: Migration Toolkit for Virtualization Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization
        - name: Forklift
          url: http://github.com/kubev2v/forklift
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:1344719931cedfd7c64acc9419af6fc0cc5850c23b2aa3e597d9f92600b6259b
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:6a3c257eae44adde04d7b2a7e3b0f2bb966f0e6aa53a23302258618bb27d064b
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:49b2a58eeb994c5398f31e89abeb2959b079207de29fae876eb8ab90a2f79b95
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:d2f7d3e51e225c045376eb435169b2a7b11e0b7de98d11e78d2a21d4540565d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:931b5d94251a065c819b3e1b39a9d35e0919174b98b0ffde86dae71a15f2f1d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:8933f1a8dad97352e225e1a1f7f0edbd2820fd60ff1d0c80a49065257b6ca9f1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:4861381a24d81f3f25153af9c066839be83cf74adf5ec900464719197611af27
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:d267c04e414d986daba9750bad590d6387bcb798df64bc583da97d88b182dc9f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:d6ca7787981b6229eedce40893280381abfaa124dd84be3bc1fb6f043a22d2d1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:80fdc43060387a455d177019de81ab274dbdf754b9ab68a61696068d9c4bfaac
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:84998b76aab53a0ca9a83a6b8baf3cb408763fba07008e3c892e2669740b481f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:930d472f486c74d36ffc3e9ed510044e15745a6350503b386f5221c82df2a7f6
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:29ce66f04b7339725d0e3dd7d4cfeca794c33e917e0deef00c44149a86a1c3b9
        version: 2.8.5
      entries:
      - name: mtv-operator.v2.8.5
        version: 2.8.5
      name: release-v2.8
    defaultChannel: release-v2.10
    packageName: mtv-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: apicast-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicast-operator.v0.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:ccd64090b85536ddaf1b81ca07d40279c9f277b1c5911628f11d678b98dc3bad
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: msoriano+apicastoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:f0e9f64c353fdbee3bf7ec0eaf070c3b75330ef659a881ec4ebc874ba584d085
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:9db455e082454734d2a17811dcfec53d3d60c28df6e7fe8bc979a45b28a35061
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:ccd64090b85536ddaf1b81ca07d40279c9f277b1c5911628f11d678b98dc3bad
        version: 0.5.3
      entries:
      - name: apicast-operator.v0.5.3
        version: 0.5.3
      - name: apicast-operator.v0.5.2
        version: 0.5.2
      - name: apicast-operator.v0.5.2-0.1646742993.p
        version: 0.5.2+0.1646742993.p
      - name: apicast-operator.v0.5.2-0.1649688685.p
        version: 0.5.2+0.1649688685.p
      - name: apicast-operator.v0.5.1
        version: 0.5.1
      - name: apicast-operator.v0.5.0
        version: 0.5.0
      - name: apicast-operator.v0.5.0-0.1638885516.p
        version: 0.5.0+0.1638885516.p
      - name: apicast-operator.v0.5.0-0.1638984223.p
        version: 0.5.0+0.1638984223.p
      name: threescale-2.11
    - currentCSV: apicast-operator.v0.6.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:8c7fe66b8d4044ad965e7b3d149e9d8e3846ac4e55465873f7095a25b297b3df
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: msoriano+apicastoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:8c7fe66b8d4044ad965e7b3d149e9d8e3846ac4e55465873f7095a25b297b3df
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:12f7a8e69a1369a51bbcd2b34d4ec8c66dd1fc9fb515349a04e7b202953423e3
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:8650430afd813fd749fcd80ad5f6fd0aeaab3df048e8fe34e6aa72a07ab801fc
        version: 0.6.4
      entries:
      - name: apicast-operator.v0.6.4
        version: 0.6.4
      - name: apicast-operator.v0.6.3
        version: 0.6.3
      - name: apicast-operator.v0.6.2
        version: 0.6.2
      - name: apicast-operator.v0.6.1
        version: 0.6.1
      - name: apicast-operator.v0.6.0
        version: 0.6.0
      - name: apicast-operator.v0.5.3
        version: 0.5.3
      - name: apicast-operator.v0.5.2-0.1649688685.p
        version: 0.5.2+0.1649688685.p
      - name: apicast-operator.v0.5.2-0.1646742993.p
        version: 0.5.2+0.1646742993.p
      - name: apicast-operator.v0.5.2
        version: 0.5.2
      - name: apicast-operator.v0.5.1
        version: 0.5.1
      - name: apicast-operator.v0.5.0
        version: 0.5.0
      - name: apicast-operator.v0.5.0-0.1638984223.p
        version: 0.5.0+0.1638984223.p
      - name: apicast-operator.v0.5.0-0.1638885516.p
        version: 0.5.0+0.1638885516.p
      name: threescale-2.12
    - currentCSV: apicast-operator.v0.7.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:bde44c0fb9f13f212184b24e0bef45db734a8439a92179a2089e5aebd6b87b63
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          olm.skipRange: '>=0.6.2 <0.7.5'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.13/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: msoriano+apicastoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:ed063f507fa8e2f378d0adbde823c110484d0212d124cc72d67efa987e86444e
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:bde44c0fb9f13f212184b24e0bef45db734a8439a92179a2089e5aebd6b87b63
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:88dc7a289c803248efbe151999707325b1bc0aac2d26827ea1707e46e5c71652
        version: 0.7.5
      entries:
      - name: apicast-operator.v0.7.5
        version: 0.7.5
      name: threescale-2.13
    - currentCSV: apicast-operator.v0.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:21db8c1bde63b5d574b66b46ec3ee95eb05a3c34b9541ca32d5bbf4daf18daf4
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          olm.skipRange: '>=0.6.2 <0.8.1'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.14/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:bcc5ed9560667c7347f3044c7fa6148e3867c17e93e83595a62794339a5a6b0d
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:21db8c1bde63b5d574b66b46ec3ee95eb05a3c34b9541ca32d5bbf4daf18daf4
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:68b310ed3cfd65db893ba015ef1d5442365201c0ced006c1915e90edb99933ea
        version: 0.8.1
      entries:
      - name: apicast-operator.v0.8.1
        version: 0.8.1
      name: threescale-2.14
    - currentCSV: apicast-operator.v0.7.9-mas
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-mas/apicast-rhel7-operator@sha256:3fd03155935a1a1946669db9dadc8e82737de46e1fcb0ba92a9815a277ae35aa
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:ea2229948fea841343fcaa337bb7e2854acf5f563d3ffb0af8bda1c21ec2a91f
        - registry.redhat.io/3scale-mas/apicast-operator-bundle@sha256:d3a608b37aa089ea46e803696ba4957585b875f8a810f517e891f385ad105937
        - registry.redhat.io/3scale-mas/apicast-rhel7-operator@sha256:3fd03155935a1a1946669db9dadc8e82737de46e1fcb0ba92a9815a277ae35aa
        version: 0.7.9-mas
      entries:
      - name: apicast-operator.v0.7.9-mas
        version: 0.7.9-mas
      - name: apicast-operator.v0.7.8-mas
        version: 0.7.8-mas
      - name: apicast-operator.v0.7.7-mas
        version: 0.7.7-mas
      - name: apicast-operator.v0.7.6-mas
        version: 0.7.6-mas
      - name: apicast-operator.v0.7.5-mas
        version: 0.7.5-mas
      - name: apicast-operator.v0.7.4-mas
        version: 0.7.4-mas
      - name: apicast-operator.v0.7.3-mas
        version: 0.7.3-mas
      - name: apicast-operator.v0.7.2-mas
        version: 0.7.2-mas
      - name: apicast-operator.v0.7.1-mas
        version: 0.7.1-mas
      - name: apicast-operator.v0.7.0-mas
        version: 0.7.0-mas
      - name: apicast-operator.v0.6.0-mas
        version: 0.6.0-mas
      - name: apicast-operator.v0.5.2-0.1649688685.p
        version: 0.5.2+0.1649688685.p
      - name: apicast-operator.v0.5.2-0.1646742993.p
        version: 0.5.2+0.1646742993.p
      - name: apicast-operator.v0.5.2
        version: 0.5.2
      - name: apicast-operator.v0.5.1
        version: 0.5.1
      - name: apicast-operator.v0.5.0
        version: 0.5.0
      - name: apicast-operator.v0.5.0-0.1638984223.p
        version: 0.5.0+0.1638984223.p
      - name: apicast-operator.v0.5.0-0.1638885516.p
        version: 0.5.0+0.1638885516.p
      name: threescale-mas
    defaultChannel: threescale-2.14
    packageName: apicast-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: github.com/stakater-ab/hibernation-operator
    name: hibernation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hibernation-operator.v0.1.103
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Monitoring
          createdAt: "2025-10-02T05:44:42Z"
          description: Operator to engage and disengage hibernation on k8s resources
            using cron expressions
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.1.103
          operatorframework.io/suggested-namespace: hibernation-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Cluster Resource Supervisor
            kind: ClusterResourceSupervisor
            name: clusterresourcesupervisors.hibernation.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.hibernation.stakater.com
            version: v1beta1
        description: Schedule k8s resources using cron expressions via Hibernation
          Operator
        displayName: Hibernation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - redhat
        - k8s
        - stakater
        - hibernation
        - operator
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maintainers:
        - email: hello@stakater.com
          name: StakaterAB
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Stakater
          url: github.com/stakater-ab/hibernation-operator
        relatedImages:
        - registry.connect.redhat.com/stakater/hibernation-operator-bundle@sha256:ded790c5b21a5b0cadac01943bfb239750d9ac6e340dc4237c9681f243858bdd
        - registry.connect.redhat.com/stakater/hibernation-operator@sha256:3738f82834d53aec4f8fba5caad6258c7adb4bdc23a57bde47c7ec22030fae5c
        version: 0.1.103
      entries:
      - name: hibernation-operator.v0.1.103
        version: 0.1.103
      name: release-0.1
    defaultChannel: release-0.1
    packageName: hibernation-operator
    provider:
      name: Stakater
      url: github.com/stakater-ab/hibernation-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://www.medik8s.io/
    name: customized-user-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: customized-user-remediation.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "customized-user-remediation.medik8s.io/v1alpha1",
                "kind": "CustomizedUserRemediation",
                "metadata": {
                  "name": "customizeduserremediation-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "customized-user-remediation.medik8s.io/v1alpha1",
                "kind": "CustomizedUserRemediationConfig",
                "metadata": {
                  "name": "customizeduserremediationconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "customized-user-remediation.medik8s.io/v1alpha1",
                "kind": "CustomizedUserRemediationTemplate",
                "metadata": {
                  "name": "customizeduserremediationtemplate-sample",
                  "namespace": "openshift-workload-availability"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/customized-user-remediation-operator:v0.1.0
          createdAt: "2024-03-25 16:17:57"
          description: Customized User Remediation Operator will remediate unhealthy
            nodes by running a pre defined user script on the unhealthy node. Since
            the user has full control over the script content, is may be quite risky
            so apply discretion.
          olm.skipRange: '>=0.0.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/customized-user-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CustomizedUserRemediationConfig is the Schema for the customizeduserremediationconfigs
              API
            displayName: Customized User Remediation Config
            kind: CustomizedUserRemediationConfig
            name: customizeduserremediationconfigs.customized-user-remediation.medik8s.io
            version: v1alpha1
          - description: CustomizedUserRemediation is the Schema for the customizeduserremediations
              API
            displayName: Customized User Remediation
            kind: CustomizedUserRemediation
            name: customizeduserremediations.customized-user-remediation.medik8s.io
            version: v1alpha1
          - description: CustomizedUserRemediationTemplate is the Schema for the customizeduserremediationtemplates
              API
            displayName: Customized User Remediation Template
            kind: CustomizedUserRemediationTemplate
            name: customizeduserremediationtemplates.customized-user-remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Customized User Remediation (CUR) works with Node Health Check to remediate unhealthy nodes by running a user customized script on the unhealthy node.
          This operator does not preform any fencing on the remediated node so users should be careful with the scripts that are being used.

          ### Compatibility
          CUR is one of the remediator operators by [Medik8s](https://www.medik8s.io/remediation/remediation/),
          such as [Self Node Remediation](https://github.com/medik8s/self-node-remediation) and [Machine Deletion Remediation](https://github.com/medik8s/machine-deletion-remediation),
          that were designed to run with the Node HealthCheck Operator [(NHC)](https://github.com/medik8s/node-healthcheck-operator) which detects an unhealthy node and creates remediation CR.
          It is recommended to use FAR with NHC for an easier and smoother experience by fully automating the remediation process, but it can be used as a standalone remediator for the more experienced user.

          ### Advantages
          - Flexibility - CUR is quite flexible sine it runs in the remediation process a user customized script.
        displayName: Customized User Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - remediation
        - auto-healing
        - recovery
        - high-availability
        - baremetal
        - script
        - CUR
        links:
        - name: Customized User Remediation
          url: https://customized-user-remediation.domain
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Medik8s
          url: https://www.medik8s.io/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/community-operator-pipeline-prod/customized-user-remediation@sha256:dc517e2349fe993e3417b858865fb73b98b7b163c0b4231d4d7be1f11992bb78
        - quay.io/medik8s/customized-user-remediation-operator:v0.1.0
        version: 0.1.0
      entries:
      - name: customized-user-remediation.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: customized-user-remediation
    provider:
      name: Medik8s
      url: https://www.medik8s.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-bedrockagentcorecontrol-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-bedrockagentcorecontrol-controller.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/bedrockagentcorecontrol-controller:1.1.0
          createdAt: "2025-11-29T04:35:31Z"
          description: Amazon Bedrock Agent Core Control controller is a service controller
            for managing Bedrock Agent Core Control resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AgentRuntimeEndpoint represents the state of an AWS bedrockagentcorecontrol
              AgentRuntimeEndpoint resource.
            displayName: AgentRuntimeEndpoint
            kind: AgentRuntimeEndpoint
            name: agentruntimeendpoints.bedrockagentcorecontrol.services.k8s.aws
            version: v1alpha1
          - description: AgentRuntime represents the state of an AWS bedrockagentcorecontrol
              AgentRuntime resource.
            displayName: AgentRuntime
            kind: AgentRuntime
            name: agentruntimes.bedrockagentcorecontrol.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Bedrock Agent Core Control resources in AWS from within your Kubernetes cluster.

          **About Amazon Bedrock Agent Core Control**

          Amazon Bedrock Agent Core Control is a fully managed service that makes it easy to build and scale generative AI applications. With Bedrock, you can access foundation models from leading AI companies, customize them with your own data, and integrate them into your applications.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Bedrock Agent Core Control
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bedrockagentcorecontrol
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Bedrock Agent Core Control Developer Resources
          url: https://aws.amazon.com/bedrock/dev-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: bedrockagentcorecontrol maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-bedrockagentcorecontrol-controller@sha256:16eb4efd399e2db735c25ddcf9a77dc41123ce8df0ff634ec6907f9e2eab22db
        - public.ecr.aws/aws-controllers-k8s/bedrockagentcorecontrol-controller:1.1.0
        version: 1.1.0
      entries:
      - name: ack-bedrockagentcorecontrol-controller.v1.1.0
        version: 1.1.0
      - name: ack-bedrockagentcorecontrol-controller.v1.0.1
        version: 1.0.1
      - name: ack-bedrockagentcorecontrol-controller.v1.0.0
        version: 1.0.0
      - name: ack-bedrockagentcorecontrol-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-bedrockagentcorecontrol-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-networkfirewall-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-networkfirewall-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "networkfirewall.services.k8s.aws/v1alpha1",
                "kind": "Firewall",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "networkfirewall.services.k8s.aws/v1alpha1",
                "kind": "FirewallPolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "networkfirewall.services.k8s.aws/v1alpha1",
                "kind": "RuleGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/networkfirewall-controller:1.2.0
          createdAt: "2025-11-29T03:54:36Z"
          description: AWS Network Firewall controller is a service controller for
            managing Network Firewall resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FirewallPolicy represents the state of an AWS networkfirewall
              FirewallPolicy resource.
            displayName: FirewallPolicy
            kind: FirewallPolicy
            name: firewallpolicies.networkfirewall.services.k8s.aws
            version: v1alpha1
          - description: Firewall represents the state of an AWS networkfirewall Firewall
              resource.
            displayName: Firewall
            kind: Firewall
            name: firewalls.networkfirewall.services.k8s.aws
            version: v1alpha1
          - description: RuleGroup represents the state of an AWS networkfirewall
              RuleGroup resource.
            displayName: RuleGroup
            kind: RuleGroup
            name: rulegroups.networkfirewall.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Network Firewall resources in AWS from within your Kubernetes cluster.

          **About Amazon Network Firewall**

          AWS Network Firewall is a stateful, managed, network firewall and intrusion detection and prevention service for your virtual private cloud (VPC) that you create in Amazon Virtual Private Cloud (Amazon VPC).
          With Network Firewall, you can filter traffic at the perimeter of your VPC. This includes filtering traffic going to and coming from an internet gateway, NAT gateway, or over VPN or AWS Direct Connect. Network Firewall uses the open source intrusion prevention system (IPS), Suricata, for stateful inspection. Network Firewall supports Suricata compatible rules. For more information, see [Working with stateful rule groups in AWS Network Firewall](https://docs.aws.amazon.com/network-firewall/latest/developerguide/stateful-rule-groups-ips.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Network Firewall
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networkfirewall
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Network Firewall Developer Resources
          url: https://aws.amazon.com/network-firewall/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: network firewall maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-networkfirewall-controller@sha256:f4f39f53a83482b8645cc1b3121b0d988d7c0fa44c07e57502980ff8796d6e76
        - public.ecr.aws/aws-controllers-k8s/networkfirewall-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-networkfirewall-controller.v1.2.0
        version: 1.2.0
      - name: ack-networkfirewall-controller.v1.1.2
        version: 1.1.2
      - name: ack-networkfirewall-controller.v1.1.1
        version: 1.1.1
      - name: ack-networkfirewall-controller.v1.1.0
        version: 1.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-networkfirewall-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: redhat.com
    name: special-resource-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: special-resource-operator.v4.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sro.openshift.io/v1beta1",
                "kind": "SpecialResource",
                "metadata": {
                  "name": "simple-kmod"
                },
                "spec": {
                  "chart": {
                    "name": "simple-kmod",
                    "repository": {
                      "name": "example",
                      "url": "file:///charts/example"
                    },
                    "version": "0.0.1"
                  },
                  "driverContainer": {
                    "source": {
                      "git": {
                        "ref": "master",
                        "uri": "https://github.com/openshift-psap/kvc-simple-kmod.git"
                      }
                    }
                  },
                  "namespace": "simple-kmod",
                  "set": {
                    "apiVersion": "sro.openshift.io/v1beta1",
                    "buildArgs": [
                      {
                        "name": "KMODVER",
                        "value": "SRO"
                      }
                    ],
                    "kind": "Values",
                    "kmodNames": [
                      "simple-kmod",
                      "simple-procfs-kmod"
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional, Storage
          containerImage: quay.io/openshift-psap/special-resource-operator:release-4.9
          description: The special resource operator is an orchestrator for resources
            in a cluster required to deploy special hardware and software. Examples
            include hardware accelerators or software defined storage, where extra
            management or kernel modules are needed.
          olm.skipRange: '>=4.6.0 <4.9.0'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SpecialResource is the Schema for the specialresources API
            displayName: Special Resource
            kind: SpecialResource
            name: specialresources.sro.openshift.io
            version: v1beta1
          required:
          - description: Discovers special resources and labels the nodes with the
              PCI vendor ID.
            displayName: Node Feature Discovery
            kind: NodeFeatureDiscovery
            name: nodefeaturediscoveries.nfd.openshift.io
            version: v1
        description: "## About the managed application \nThe SRO will deploy the complete
          stack for enabling the accelerator in a cluster. \nIt manages the drivers,
          device-plugin, node-exporter, grafana and feature discovery.\n## About this
          Operator\n README: [https://github.com/openshift-psap/special-resource-operator](https://github.com/openshift-psap/special-resource-operator)\n\n##
          Prerequisites for enabling this Operator\nThe SRO has a dependency on NFD
          (Node Feature Discovery)\n"
        displayName: Special Resource Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GPI
        links:
        - name: README
          url: https://github.com/openshift-psap/special-resource-operator
        maintainers:
        - email: zkaiser@redhat.com
          name: Zvonko Kaiser
        - email: dagray@redhat.com
          name: David Gray
        maturity: alpha
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/openshift-psap/special-resource-operator:release-4.9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy
        - quay.io/openshift-community-operators/special-resource-operator@sha256:df87c400713311f2495d6d02769acf29e5251330194f992c11719063095fdaea
        version: 4.9.0
      entries:
      - name: special-resource-operator.v4.9.0
        version: 4.9.0
      - name: special-resource-operator.v4.8.2
        version: 4.8.2
      - name: special-resource-operator.v4.8.1
        version: 4.8.1
      - name: special-resource-operator.v4.8.0
        version: 4.8.0
      name: alpha
    defaultChannel: alpha
    packageName: special-resource-operator
    provider:
      name: Red Hat
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhpam-kogito-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhpam-kogito-operator.7.13.5-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "ruleunit-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogitoinfra-sample"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "kafka.strimzi.io/v1beta2",
                    "kind": "Kafka",
                    "name": "kogito-kafka"
                  }
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/rhpam-7/rhpam-kogito-rhel8-operator@sha256:19497d4aff0ea3ea114dccb0d0e265458bb14ba6d325353eb82b554547dbd2e4
          description: RHPAM Kogito Operator for deployment and management of Kogito
            services.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Process Automation
            Manager", "Red Hat Decision Manager"]'
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/rhpam-kogito-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.rhpam.kiegroup.org
            version: v1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.rhpam.kiegroup.org
            version: v1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.rhpam.kiegroup.org
            version: v1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.rhpam.kiegroup.org
            version: v1
        description: |-
          RHPAM Kogito Operator is designed for deployment and management of Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Builds a RHPAM Kogito service from a remote git repository and creates a custom image for the given runtime: Red Hat build of Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Deploy RHPAM Kogito service from user provided image.
          * Setup Grafana Dashboard when Grafana Operator is available in cluster.
          * Create Prometheus monitor object when Prometheus operator is available in cluster.

          **IMPORTANT!** RHPAM Kogito Operator may need Grafana and Prometheus Operator to configure monitoring in cases if you do not provide these services beforehand. If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the RHPAM Kogito Operator.
        displayName: RHPAM Kogito Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-process-automation-manager
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_process_automation_manager/7.13/html/getting_started_with_red_hat_build_of_kogito_in_red_hat_process_automation_manager/assembly-deploying-kogito-microservices-on-openshift
        - name: Source
          url: https://github.com/kiegroup/kogito-operator/
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9492c67eaa7ab37df6f5fa623c4aac955b7d7ffaab9ae2e57dea745e82907e40
        - registry.redhat.io/rhpam-7/rhpam-kogito-rhel8-operator-bundle@sha256:0192000a2994a62a904ce4aabfc1ff04caf2fa9d779d27c016922b9121877fac
        - registry.redhat.io/rhpam-7/rhpam-kogito-rhel8-operator@sha256:19497d4aff0ea3ea114dccb0d0e265458bb14ba6d325353eb82b554547dbd2e4
        version: 7.13.5-4
      entries:
      - name: rhpam-kogito-operator.7.13.5-4
        version: 7.13.5-4
      - name: rhpam-kogito-operator.7.13.5-3
        version: 7.13.5-3
      - name: rhpam-kogito-operator.7.13.5-2
        version: 7.13.5-2
      - name: rhpam-kogito-operator.7.13.5-1
        version: 7.13.5-1
      - name: rhpam-kogito-operator.7.13.4-3
        version: 7.13.4-3
      - name: rhpam-kogito-operator.7.13.4-2
        version: 7.13.4-2
      - name: rhpam-kogito-operator.7.13.4-1
        version: 7.13.4-1
      - name: rhpam-kogito-operator.7.13.3-1
        version: 7.13.3-1
      - name: rhpam-kogito-operator.7.13.2-3
        version: 7.13.2-3
      - name: rhpam-kogito-operator.7.13.2-2
        version: 7.13.2-2
      - name: rhpam-kogito-operator.7.13.2-1
        version: 7.13.2-1
      - name: rhpam-kogito-operator.7.13.1-2
        version: 7.13.1-2
      - name: rhpam-kogito-operator.7.13.1-1
        version: 7.13.1-1
      - name: rhpam-kogito-operator.7.13.0-1
        version: 7.13.0-1
      - name: rhpam-kogito-operator.v7.12.0-4
        version: 7.12.0-4
      - name: rhpam-kogito-operator.v7.12.0-3
        version: 7.12.0-3
      - name: rhpam-kogito-operator.v7.12.0-2
        version: 7.12.0-2
      name: 7.x
    defaultChannel: 7.x
    packageName: rhpam-kogito-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: t8c
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: t8c-operator.v42.22.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.5"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.22
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.22
        - quay.io/openshift-community-operators/t8c@sha256:3c48e0bb9fd04d86d92bddb5bc2367f7ee4b86af74421c8dcbd809a7ba657770
        version: 42.22.0
      entries:
      - name: t8c-operator.v42.22.0
        version: 42.22.0
      - name: t8c-operator.v42.21.0
        version: 42.21.0
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: stable
    - currentCSV: t8c-operator.v42.10.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.10
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:6e5cbb3287ad3ec69f3064fd5dd88f0e4794fef985bab390c5135c7162c2872c
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.10
        version: 42.10.0
      entries:
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.10.0
    - currentCSV: t8c-operator.v42.10.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.10
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:6e5cbb3287ad3ec69f3064fd5dd88f0e4794fef985bab390c5135c7162c2872c
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.10
        version: 42.10.0
      entries:
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.12.0
    - currentCSV: t8c-operator.v42.13.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.7"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.13
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:088d0eebf60c8f6961ca72c268f61d12648d575aa41552ae6398fefc6d9700cb
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.13
        version: 42.13.0
      entries:
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.13.0
    - currentCSV: t8c-operator.v42.14.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.7"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.14
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:d6d444e642bfd567eb40c7e084f5df743c23b47935e52e35ef541c67fcc00433
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.14
        version: 42.14.0
      entries:
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.14.0
    - currentCSV: t8c-operator.v42.15.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.6.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.15
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:b3469cd953ef2015fad2f7f96d960cee5ecaa6c19df631a9c882154ab5b3de98
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.15
        version: 42.15.0
      entries:
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.15.0
    - currentCSV: t8c-operator.v42.16.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.16
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:f49d3eddbfcec1018fd3716cd0ec2addef9961d2d308099636541868566979b0
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.16
        version: 42.16.0
      entries:
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.16.0
    - currentCSV: t8c-operator.v42.17.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.6.6"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.17
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:403b29a6262ba0e06de117f788aea7224268b798868c3e5b738b05e96df20456
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.17
        version: 42.17.0
      entries:
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.17.0
    - currentCSV: t8c-operator.v42.18.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.1"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.18
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.18
        - quay.io/openshift-community-operators/t8c@sha256:4bfaf97ab09a1aff1316536b99957b1f82763b009dde6d08fc9eea1fdd290fbf
        version: 42.18.0
      entries:
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.18.0
    - currentCSV: t8c-operator.v42.19.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.2"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.19
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:61f1ea9b3851d7272703f5bc21203ff03bb35fd52ed9780d0cf996379c78a00b
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.19
        version: 42.19.0
      entries:
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.19.0
    - currentCSV: t8c-operator.v42.20.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.20
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:48a5a9fbfa92b4b87b3653613467a3fcceacadbbabd274e367b40f6871039cc8
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.20
        version: 42.20.0
      entries:
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.20.0
    - currentCSV: t8c-operator.v42.21.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.4"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.21
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:d65834d8f9946c2764d45666c90c50f428b74afe7b066d666c18e9545994c9a8
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.21
        version: 42.21.0
      entries:
      - name: t8c-operator.v42.21.0
        version: 42.21.0
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.21.0
    - currentCSV: t8c-operator.v42.22.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.5"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.22
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:3c48e0bb9fd04d86d92bddb5bc2367f7ee4b86af74421c8dcbd809a7ba657770
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.22
        version: 42.22.0
      entries:
      - name: t8c-operator.v42.22.0
        version: 42.22.0
      - name: t8c-operator.v42.21.0
        version: 42.21.0
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.22.0
    - currentCSV: t8c-operator.v42.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.4.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.6
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:4964196aba839fde569ce58ab7e4eef438c9638ae4057194f2d7a58eaa5a98d9
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.6
        version: 42.6.0
      entries:
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.6.0
    - currentCSV: t8c-operator.v42.7.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.4.6"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.7
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.7
        - quay.io/openshift-community-operators/t8c@sha256:46c815fa635d58820757f41b1d8f04333638c39471f4d6c901a6500379680b57
        version: 42.7.0
      entries:
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.7.0
    - currentCSV: t8c-operator.v42.8.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.0"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.8
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:d8a575a84dd86d241acaaec53af1e164bc1ff1b95b5eb710851ae698bbed6bf5
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.8
        version: 42.8.0
      entries:
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.8.0
    - currentCSV: t8c-operator.v42.9.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.1"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.9
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:dfdc8fbdfc0ee76b2d5c62f6fd5deac2c50756661871d8b4357e25043e5ce66a
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.9
        version: 42.9.0
      entries:
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.9.0
    defaultChannel: stable
    packageName: t8c
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HPE
      provider-url: ""
    name: hpe-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hpe-csi-operator.v3.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "storage.hpe.com/v1",
                "kind": "HPECSIDriver",
                "metadata": {
                  "name": "hpecsidriver-sample"
                },
                "spec": {
                  "controller": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  },
                  "csp": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  },
                  "disable": {
                    "alletra6000": false,
                    "alletra9000": false,
                    "alletraStorageMP": false,
                    "b10000FileService": false,
                    "nimble": false,
                    "primera": false
                  },
                  "disableHostDeletion": false,
                  "disableNodeConfiguration": false,
                  "disableNodeConformance": false,
                  "disableNodeGetVolumeStats": false,
                  "disableNodeMonitor": false,
                  "disablePreInstallHooks": false,
                  "imagePullPolicy": "IfNotPresent",
                  "images": {
                    "b10000FileServiceCSP": "quay.io/hpestorage/alletrastoragemp-b10000-nfs-csp@sha256:6a1855a2ef1a83b886bb1f45b596e8e420e5e13c84bbf446c8c202eaf27a2013",
                    "csiAttacher": "registry.k8s.io/sig-storage/csi-attacher@sha256:5aaefc24f315b182233c8b6146077f8c32e274d864cb03c632206e78bd0302da",
                    "csiControllerDriver": "quay.io/hpestorage/csi-driver@sha256:27f3bd05372b4ed705b90461d053388a4f6d9cefa0cd3033e2747cbe1a7c045f",
                    "csiExtensions": "quay.io/hpestorage/csi-extensions@sha256:27074aaa8df3b867cfa3d12318612c45f8e541d750c27db5e080734592160c89",
                    "csiNodeDriver": "quay.io/hpestorage/csi-driver@sha256:27f3bd05372b4ed705b90461d053388a4f6d9cefa0cd3033e2747cbe1a7c045f",
                    "csiNodeDriverRegistrar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97",
                    "csiProvisioner": "registry.k8s.io/sig-storage/csi-provisioner@sha256:bb057f866177d5f4139a1527e594499cbe0feeb67b63aaca8679dfdf0a6016f9",
                    "csiResizer": "registry.k8s.io/sig-storage/csi-resizer@sha256:8ddd178ba5d08973f1607f9b84619b58320948de494b31c9d7cd5375b316d6d4",
                    "csiSnapshotter": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:5f4bb469fec51147ce157329dab598c758da1b018bad6dad26f0ff469326d769",
                    "csiVolumeGroupProvisioner": "quay.io/hpestorage/volume-group-provisioner@sha256:0a5f39f52113b963978a695bb8e5a5a3c4d387a02eb4d4a9647b4bc804de7399",
                    "csiVolumeGroupSnapshotter": "quay.io/hpestorage/volume-group-snapshotter@sha256:177d9abf8fbd3ac26ca4c12ca4b4adde20ebab308c79f10b04632f0171746fa8",
                    "csiVolumeMutator": "quay.io/hpestorage/volume-mutator@sha256:bf6beac1af5edcd3c9774f0dcc9579b79ef9cc8e4b74a4238082ab9aa443b5ed",
                    "nfsProvisioner": "quay.io/hpestorage/nfs-provisioner@sha256:5bf5952453ecca28e26724df85ebd5c8f0b7479ae4cb683d4a09c415da00e002",
                    "nimbleCSP": "quay.io/hpestorage/alletra-6000-and-nimble-csp@sha256:5480ffdebd74fdc547bc4a11b4434abac7bbfee3cee349f1ac893fbad84bb8d1",
                    "primera3parCSP": "quay.io/hpestorage/alletra-9000-primera-and-3par-csp@sha256:8af6e87075c47ba8d9714d55848ab2a0fef62b0768681e30d9e63ed7f396b0bf"
                  },
                  "iscsi": {
                    "chapSecretName": ""
                  },
                  "kubeletRootDir": "/var/lib/kubelet",
                  "logLevel": "info",
                  "maxVolumesPerNode": 100,
                  "node": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/hpestorage/csi-driver-operator@sha256:a3db9916f921de1379d4df953904bddb0057eee63705f57b435e40439c52ffca
          createdAt: "2025-12-17T08:03:50Z"
          description: A Container Storage Interface (CSI) driver for HPE storage
            platforms. The CSI driver allows you to use HPE storage with your preferred
            container orchestrator.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=1.0.0 <3.0.2'
          operatorframework.io/suggested-namespace: hpe-storage
          operatorhub.io/ui-metadata-max-k8s-version: "1.33"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/hpe-storage/co-deployments
          support: HPE
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HPE CSI Driver for Kubernetes
            displayName: HPECSIDriver
            kind: HPECSIDriver
            name: hpecsidrivers.storage.hpe.com
            version: v1
        description: |
          The HPE CSI Operator for OpenShift deploys the HPE CSI Driver on Kubernetes and OpenShift for dynamic provisioning of persistent volumes on HPE storage systems.
          The HPE CSI Driver for Kubernetes leverages HPE storage platforms to provide scalable and persistent storage for stateful applications.
          Please refer to our CSI driver [documentation](https://scod.hpedev.io/csi_driver/index.html) for supported HPE platforms and full list of supported CSI features.
          ## Installation
          Refer to the HPE CSI Operator for OpenShift [documentation](https://scod.hpedev.io/csi_driver/deployment.html#operator).
        displayName: HPE CSI Operator for OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - HPE
        - HPE CSI
        - HPE Storage
        - CSI
        links:
        - name: Documentation
          url: https://scod.hpedev.io/csi_driver/index.html
        maintainers:
        - email: dev-hi-containers@hpe.com
          name: HPE Storage Containers Team
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: HPE
        relatedImages:
        - registry.k8s.io/sig-storage/csi-resizer@sha256:8ddd178ba5d08973f1607f9b84619b58320948de494b31c9d7cd5375b316d6d4
        - quay.io/hpestorage/csi-driver@sha256:27f3bd05372b4ed705b90461d053388a4f6d9cefa0cd3033e2747cbe1a7c045f
        - quay.io/hpestorage/volume-group-provisioner@sha256:0a5f39f52113b963978a695bb8e5a5a3c4d387a02eb4d4a9647b4bc804de7399
        - quay.io/hpestorage/volume-group-snapshotter@sha256:177d9abf8fbd3ac26ca4c12ca4b4adde20ebab308c79f10b04632f0171746fa8
        - quay.io/hpestorage/volume-mutator@sha256:bf6beac1af5edcd3c9774f0dcc9579b79ef9cc8e4b74a4238082ab9aa443b5ed
        - registry.k8s.io/sig-storage/csi-attacher@sha256:5aaefc24f315b182233c8b6146077f8c32e274d864cb03c632206e78bd0302da
        - quay.io/hpestorage/alletrastoragemp-b10000-nfs-csp@sha256:6a1855a2ef1a83b886bb1f45b596e8e420e5e13c84bbf446c8c202eaf27a2013
        - registry.connect.redhat.com/hpestorage/csi-driver-operator@sha256:a3db9916f921de1379d4df953904bddb0057eee63705f57b435e40439c52ffca
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97
        - quay.io/hpestorage/alletra-9000-primera-and-3par-csp@sha256:8af6e87075c47ba8d9714d55848ab2a0fef62b0768681e30d9e63ed7f396b0bf
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:5f4bb469fec51147ce157329dab598c758da1b018bad6dad26f0ff469326d769
        - registry.connect.redhat.com/hpestorage/csi-driver-operator-bundle@sha256:ae86d21d2f53c21a2e7b6494937b6cbcf8f1d08c500cd2d1ea3090e40f2da96f
        - quay.io/hpestorage/alletra-6000-and-nimble-csp@sha256:5480ffdebd74fdc547bc4a11b4434abac7bbfee3cee349f1ac893fbad84bb8d1
        - quay.io/hpestorage/nfs-provisioner@sha256:5bf5952453ecca28e26724df85ebd5c8f0b7479ae4cb683d4a09c415da00e002
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:bb057f866177d5f4139a1527e594499cbe0feeb67b63aaca8679dfdf0a6016f9
        - quay.io/hpestorage/csi-extensions@sha256:27074aaa8df3b867cfa3d12318612c45f8e541d750c27db5e080734592160c89
        version: 3.0.2
      entries:
      - name: hpe-csi-operator.v3.0.2
        version: 3.0.2
      name: stable
    defaultChannel: stable
    packageName: hpe-csi-operator
    provider:
      name: HPE
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: GitLab, Inc.
      provider-url: https://gitlab.com
    name: gitlab-runner-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-runner-operator.v1.43.3
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta2",
                "kind": "Runner",
                "metadata": {
                  "name": "gitlab-runner-example",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "gitlabUrl": "https://gitlab.example.com",
                  "token": "runner-token-secret",
                  "tags": "kubernetes,example",
                  "concurrent": 10,
                  "imagePullPolicy": "IfNotPresent"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery, Developer Tools
          containerImage: registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
          createdAt: "2025-11-28T23:15:09Z"
          description: GitLab Runner operator manages lifecycle of GitLab Runner instances
          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: "true"
          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.skipRange: '>=1.11.0 <1.43.3'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: none
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
          support: GitLab, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Runner is the open source project used to run your jobs and
              send the results back to GitLab
            displayName: GitLab Runner
            kind: Runner
            name: runners.apps.gitlab.com
            version: v1beta2
        description: |-
          GitLab Runner is the lightweight, highly-scalable agent that runs your build jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.

              The GitLab Runner operator manages the lifecycle of GitLab Runner in Kubernetes or Openshift clusters. The operator aims to automate the tasks needed to run your CI/CD jobs in your container orchestration platform.

              ## Prerequisites

                For Kubernetes cluster, install cert-manager:

                ```shell
                kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.7.1/cert-manager.yaml
                ```

              ## GitLab Runner version

              This version of **GitLab Runner Operator** ships with **GitLab Runner v18.6.3**.

              To use a different version of **GitLab Runner** change the [`runnerImage` and `helperImage` properties](https://docs.gitlab.com/runner/configuration/configuring_runner_operator.html#operator-properties).

              ## Usage

               To link a GitLab Runner instance to a self-hosted GitLab instance or the hosted [GitLab](https://gitlab.com), you first need to:

               1. Create a secret containing the `runner-token` from your GitLab project.

                ```
                cat > gitlab-runner-secret.yml << EOF
                apiVersion: v1
                kind: Secret
                metadata:
                  name: gitlab-runner-secret
                type: Opaque
                # Only one of the following fields must be set. The Operator will fail to register Runner if both are provided.
                # # NOTE: runner-registration-token is deprecated and will be removed in GitLab 18.0. You should use runner-token instead.
                stringData:
                  runner-token: REPLACE_ME # your project runner token
                  # runner-registration-token: "" # your project runner secret
                EOF
                ```

                ```
                oc apply -f gitlab-runner-secret.yml
                ```

               2. Create the Custom Resource Definition (CRD) file and include the following information. The tags value must be openshift for the job to run.

                 ```
                 cat > gitlab-runner.yml << EOF
                 apiVersion: apps.gitlab.com/v1beta2
                 kind: Runner
                 metadata:
                   name: gitlab-runner
                 spec:
                   gitlabUrl: https://gitlab.example.com
                   buildImage: alpine
                   token: gitlab-runner-secret
                   tags: openshift
                 EOF
                 ```

                ```
                oc apply -f gitlab-runner.yml
                ```

              ## Full documentation

              Visit [Install GitLab Runner Operator](https://docs.gitlab.com/runner/install/operator.html)
        displayName: GitLab Runner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GitLab
        - CI/CD
        - DevOps
        - SAST
        - DAST
        links:
        - name: Gitlab Runner Operator
          url: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
        - name: GitLab Docs
          url: https://docs.gitlab.com
        - name: GitLab Runner
          url: https://docs.gitlab.com/runner/
        - name: GitLab CI/CD
          url: https://docs.gitlab.com/ee/ci/quick_start/
        maintainers:
        - email: support@gitlab.com
          name: Georgi N. Georgiev
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: GitLab, Inc.
          url: https://gitlab.com
        relatedImages:
        - registry.connect.redhat.com/gitlab/gitlab-runner-operator-bundle@sha256:0a633ff6d83e6fe961516724c51c16bb06f84efecfca16c36b17d525d3b937c3
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-helper-ocp@sha256:9c1723a09b7255e8ab13954375e263965de1955d9f1fdc5e64d7610c7495e614
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-ocp@sha256:de78dc586ebc1c1ea6e4be7b8a21e949bc24860051e3eab93f3468751a04ca0a
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/openshift4/ose-kube-rbac-proxy@sha256:bb84ead437042603254efcb703442be8500a9450b10bbcaaee81b48a6ed869ea
        version: 1.43.3
      entries:
      - name: gitlab-runner-operator.v1.43.3
        version: 1.43.3
      - name: gitlab-runner-operator.v1.43.2
        version: 1.43.2
      - name: gitlab-runner-operator.v1.43.1
        version: 1.43.1
      - name: gitlab-runner-operator.v1.43.0
        version: 1.43.0
      name: stable
    defaultChannel: stable
    packageName: gitlab-runner-operator
    provider:
      name: GitLab, Inc.
      url: https://gitlab.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-kms-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-kms-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kms.services.k8s.aws/v1alpha1",
                "kind": "Alias",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "kms.services.k8s.aws/v1alpha1",
                "kind": "Grant",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "kms.services.k8s.aws/v1alpha1",
                "kind": "Key",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/kms-controller:1.2.0
          createdAt: "2025-11-29T03:55:26Z"
          description: AWS KMS controller is a service controller for managing KMS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alias represents the state of an AWS kms Alias resource.
            displayName: Alias
            kind: Alias
            name: aliases.kms.services.k8s.aws
            version: v1alpha1
          - description: Grant represents the state of an AWS kms Grant resource.
            displayName: Grant
            kind: Grant
            name: grants.kms.services.k8s.aws
            version: v1alpha1
          - description: Key represents the state of an AWS kms Key resource.
            displayName: Key
            kind: Key
            name: keys.kms.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Key Management Service (KMS) resources in AWS from within your Kubernetes cluster.

          **About Amazon KMS**

          AWS Key Management Service (AWS KMS) is a managed service that makes it easy for you to create and control the cryptographic keys that are used to protect your data. AWS KMS uses hardware security modules (HSM) to protect and validate your AWS KMS keys under the [FIPS 140-2 Cryptographic Module Validation Program](https://csrc.nist.gov/projects/cryptographic-module-validation-program/Certificate/3139), except in the China (Beijing) and China (Ningxia) Regions.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon KMS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kms
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon KMS Developer Resources
          url: https://aws.amazon.com/kms/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: kms maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/kms-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-kms-controller@sha256:fcadd7b195741affd5ee61bf911911408153dcfa26192ceff8c9d0d830acd6e0
        version: 1.2.0
      entries:
      - name: ack-kms-controller.v1.2.0
        version: 1.2.0
      - name: ack-kms-controller.v1.1.2
        version: 1.1.2
      - name: ack-kms-controller.v1.1.1
        version: 1.1.1
      - name: ack-kms-controller.v1.1.0
        version: 1.1.0
      - name: ack-kms-controller.v1.0.31
        version: 1.0.31
      - name: ack-kms-controller.v1.0.30
        version: 1.0.30
      - name: ack-kms-controller.v1.0.29
        version: 1.0.29
      - name: ack-kms-controller.v1.0.28
        version: 1.0.28
      - name: ack-kms-controller.v1.0.27
        version: 1.0.27
      - name: ack-kms-controller.v1.0.26
        version: 1.0.26
      - name: ack-kms-controller.v1.0.25
        version: 1.0.25
      - name: ack-kms-controller.v1.0.24
        version: 1.0.24
      - name: ack-kms-controller.v1.0.23
        version: 1.0.23
      - name: ack-kms-controller.v1.0.22
        version: 1.0.22
      - name: ack-kms-controller.v1.0.19
        version: 1.0.19
      - name: ack-kms-controller.v1.0.18
        version: 1.0.18
      - name: ack-kms-controller.v1.0.17
        version: 1.0.17
      - name: ack-kms-controller.v1.0.16
        version: 1.0.16
      - name: ack-kms-controller.v1.0.15
        version: 1.0.15
      - name: ack-kms-controller.v1.0.14
        version: 1.0.14
      - name: ack-kms-controller.v1.0.13
        version: 1.0.13
      - name: ack-kms-controller.v1.0.12
        version: 1.0.12
      - name: ack-kms-controller.v1.0.8
        version: 1.0.8
      - name: ack-kms-controller.v1.0.7
        version: 1.0.7
      - name: ack-kms-controller.v1.0.5
        version: 1.0.5
      - name: ack-kms-controller.v1.0.4
        version: 1.0.4
      - name: ack-kms-controller.v1.0.3
        version: 1.0.3
      - name: ack-kms-controller.v1.0.2
        version: 1.0.2
      - name: ack-kms-controller.v1.0.0
        version: 1.0.0
      - name: ack-kms-controller.v0.1.5
        version: 0.1.5
      - name: ack-kms-controller.v0.1.4
        version: 0.1.4
      - name: ack-kms-controller.v0.1.3
        version: 0.1.3
      - name: ack-kms-controller.v0.1.2
        version: 0.1.2
      - name: ack-kms-controller.v0.1.1
        version: 0.1.1
      - name: ack-kms-controller.v0.1.0
        version: 0.1.0
      - name: ack-kms-controller.v0.0.20
        version: 0.0.20
      - name: ack-kms-controller.v0.0.19
        version: 0.0.19
      - name: ack-kms-controller.v0.0.18
        version: 0.0.18
      - name: ack-kms-controller.v0.0.17
        version: 0.0.17
      - name: ack-kms-controller.v0.0.16
        version: 0.0.16
      - name: ack-kms-controller.v0.0.15
        version: 0.0.15
      - name: ack-kms-controller.v0.0.14
        version: 0.0.14
      - name: ack-kms-controller.v0.0.13
        version: 0.0.13
      - name: ack-kms-controller.v0.0.12
        version: 0.0.12
      - name: ack-kms-controller.v0.0.11
        version: 0.0.11
      - name: ack-kms-controller.v0.0.10
        version: 0.0.10
      - name: ack-kms-controller.v0.0.9
        version: 0.0.9
      - name: ack-kms-controller.v0.0.8
        version: 0.0.8
      - name: ack-kms-controller.v0.0.7
        version: 0.0.7
      - name: ack-kms-controller.v0.0.6
        version: 0.0.6
      - name: ack-kms-controller.v0.0.5
        version: 0.0.5
      - name: ack-kms-controller.v0.0.4
        version: 0.0.4
      - name: ack-kms-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-kms-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-prometheus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-prometheus-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:2a74517c3befcac1566f5c65e0f573e4378eafe4ba88816229a46557cc1b2b62
          createdAt: "2024-03-01T23:43:00Z"
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/prometheus-operator/prometheus-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:2a74517c3befcac1566f5c65e0f573e4378eafe4ba88816229a46557cc1b2b62
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:3901127db6a0cb2323651885f04a603391478f58ad2d5bcaa161a9e16332288e
        - registry.redhat.io/odf4/odf-prometheus-operator-bundle@sha256:978e6ca6c295ced191eaa8439ce80bb48ed8122409f34a334b5f05d25899be88
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager-rhel9@sha256:0033bfb29ebb2dcf16323276a9287f6f21339c1d797783f9d140909951b18f90
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader-rhel9@sha256:4eca079cbaf2b8e69eac9e8b8418ef091ef78b4a48a48dfc317d243c53d55758
        version: 4.19.9-rhodf
      entries:
      - name: odf-prometheus-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-prometheus-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-prometheus-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-prometheus-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-prometheus-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-prometheus-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-prometheus-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-prometheus-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-prometheus-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-prometheus-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-prometheus-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:f995093d6fd6c66e2c50cc4bceee9c739d09453ea85eca0232013632371fc594
          createdAt: "2024-03-01T23:43:00Z"
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/prometheus-operator/prometheus-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:101993f6e65d6fda8b90c583b718b720809182961f69bc777295f47e6df4d7ce
        - registry.redhat.io/odf4/odf-prometheus-operator-bundle@sha256:efc835326cd0bf95c479809f9e02c1ce921bedd3dd2a8e67605346ec623e4032
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager-rhel9@sha256:7e7e39f59a298ff2ca6aba00ce861866dc16bf39398e78523ba4e7600c46dea9
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader-rhel9@sha256:b99613494e9d6a4a8207323872d63cc02b830fc80a8bf972e62c64381aa4cd17
        - registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:f995093d6fd6c66e2c50cc4bceee9c739d09453ea85eca0232013632371fc594
        version: 4.20.4-rhodf
      entries:
      - name: odf-prometheus-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-prometheus-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-prometheus-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-prometheus-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-prometheus-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-prometheus-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-activemqartemis: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/
    name: amq-broker-rhel8
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-broker-operator.v7.10.7-opr-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [{
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                    "name": "ex-aao",
                    "application": "ex-aao-app"
                },
                "spec": {
                    "deploymentPlan": {
                        "image": "placeholder",
                        "size": 2,
                        "requireLogin": false,
                        "persistenceEnabled": false,
                        "journalType": "nio",
                        "messageMigration": false,
                        "jolokiaAgentEnabled": false,
                        "managementRBACEnabled": true
                    }
                }
            }, {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                    "name": "ex-aaoaddress"
                },
                "spec": {
                    "addressName": "myAddress0",
                    "queueName": "myQueue0",
                    "routingType": "anycast"
                }
            }, {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                    "name": "ex-aaoscaledown"
                },
                "spec": {
                    "localOnly": "true"
                }
            }, {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                    "name": "ex-keycloak"
                },
                "spec": {
                    "loginModules": {
                        "propertiesLoginModules": [
                            {
                                "name": "prop-module",
                                "users": [
                                    {
                                        "name": "superman",
                                        "roles": [
                                            "root"
                                        ]
                                    }
                                ]
                            }
                        ]
                    },
                    "securityDomains": {
                        "brokerDomain": {
                            "name": "activemq",
                            "loginModules": [
                                {
                                    "name": "prop-module",
                                    "flag": "sufficient"
                                }
                            ]
                        }
                    }
                }
            }]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:1a7aa54d2799d238eb5f49f7a95a78a896f6bf8d222567e9118e0e3963cc9aad
          createdAt: "2021-06-18T00:02:04Z"
          description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A stateful deployment of one or more brokers
            displayName: AMQ Broker
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: Adding and removing addresses via custom resource definitions
            displayName: AMQ Broker Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: Provides message migration on clustered broker scaledown
            displayName: AMQ Broker Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: Security configuration for the broker
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
          to deploy and manage stateful AMQ Broker broker clusters
        displayName: Red Hat Integration - AMQ Broker for RHEL 8 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: rkieley@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:1a7aa54d2799d238eb5f49f7a95a78a896f6bf8d222567e9118e0e3963cc9aad
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c5f4c08e068b9721967cf7c7cbd9a9e93fb5e39b264dd13b653e99d8f3fa9e0e
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:5ff28e3062d3eabb9f52d8271b837fdab06cafbd8b8f732b1bc00de49ad69aad
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9a02decbc460ddfc501d8a4a9b41cd084776090951906b027838c0829e1fc15a
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:e140415e0361cabeab192ba6d22634283cd47749dd25e9cee4a775d3c409cd97
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:61e5a8c1e46f1c18648e0406e2a57c52f911979079020cc57c7a4b06a56940bb
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        version: 7.10.7-opr-1
      entries:
      - name: amq-broker-operator.v7.10.7-opr-1
        version: 7.10.7-opr-1
      - name: amq-broker-operator.v7.10.6-opr-1
        version: 7.10.6-opr-1
      - name: amq-broker-operator.v7.10.5-opr-1
        version: 7.10.5-opr-1
      - name: amq-broker-operator.v7.10.4-opr-1
        version: 7.10.4-opr-1
      - name: amq-broker-operator.v7.10.3-opr-3
        version: 7.10.3-opr-3
      - name: amq-broker-operator.v7.10.3-opr-2
        version: 7.10.3-opr-2
      - name: amq-broker-operator.v7.10.3-opr-1
        version: 7.10.3-opr-1
      - name: amq-broker-operator.v7.10.2-opr-2-0.1676475747.p
        version: 7.10.2-opr-2+0.1676475747.p
      - name: amq-broker-operator.v7.10.2-opr-2-0.1680622941.p
        version: 7.10.2-opr-2+0.1680622941.p
      - name: amq-broker-operator.v7.10.2-opr-2
        version: 7.10.2-opr-2
      - name: amq-broker-operator.v7.10.2-opr-1
        version: 7.10.2-opr-1
      - name: amq-broker-operator.v7.10.1-opr-2
        version: 7.10.1-opr-2
      - name: amq-broker-operator.v7.10.1-opr-1
        version: 7.10.1-opr-1
      - name: amq-broker-operator.v7.10.0-opr-4
        version: 7.10.0-opr-4
      - name: amq-broker-operator.v7.10.0-opr-3
        version: 7.10.0-opr-3
      - name: amq-broker-operator.v7.10.0-opr-2
        version: 7.10.0-opr-2
      - name: amq-broker-operator.v7.10.0-opr-1
        version: 7.10.0-opr-1
      name: 7.10.x
    - currentCSV: amq-broker-operator.v7.11.8-opr-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisSecurity is the Schema for the activemqartemissecurities
              API
            displayName: Active MQArtemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: |
          **Red Hat AMQ Broker** is a pure-Java multiprotocol message broker. It’s built on an efficient, asynchronous core with a fast journal for message persistence.

          You can provision multiple instances and update the broker configuration on the fly using the associated Custom Resource Definitions.
          In addition, you can use the following CRDs to configure your broker environment:

          - **Address CRD**: define addresses and queues for the brokers in your deployment
          - **Security CRD**: define the security configuration for the brokers in your deployment, including:
              - users and roles
              - role based access control
              - console access control

          ## Selecting a channel
          You can specify the channel used to track and receive updates for the Operator by selecting either to track the minor or patch level versions.

          ## Supported Features
          - **Console** - Allows you view the broker topology, clients and messages. Red Hat Fuse users can integrate the broker console into the Fuse console for OpenShift.
          - **Persistence** - ephemeral and stateful deployments.
          - **Advanced queueing** - Last value queues, message groups, topic hierarchies, and large message support.
          - **Multiprotocol** - AMQP 1.0, MQTT, STOMP, OpenWire, and HornetQ Core.
          - **Address Management** - Creates and manages addresses and queues.
          - **User Management** - Creates and manages broker users.
          - **Monitoring** - Support for monitoring using Prometheus and provided Grafana dashboards.
          - **Scaledown** - Ensure consistency of messages using message migration.

          ## Storage
          An efficient data storage infrastructure is essential to the optimal performance of AMQ Broker.  AMQ Broker supports:
            - **Ephemeral** (Recommended for development only!)
            - **Persistent**
              - For example, block or NFS storage.
          Note: Your cloud provider might provide options that are not suitable for AMQ Broker, for example Amazon Elastic File System.  If in doubt, contact Red Hat Support

          ## Documentation
          Documentation for the current release is available from the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq/2021.q4/#category-amq-broker).
        displayName: Red Hat Integration - AMQ Broker for RHEL 8 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c5f4c08e068b9721967cf7c7cbd9a9e93fb5e39b264dd13b653e99d8f3fa9e0e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:4b7796235a0a545db83570add7a675fdd9d82b17f931eb81d0cafbedb1fbf22c
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:5ff28e3062d3eabb9f52d8271b837fdab06cafbd8b8f732b1bc00de49ad69aad
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:d2ae3defac36f00112c6b773e13626336ba15d6f50f905ad1c33f122bfe1a6a9
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:61e5a8c1e46f1c18648e0406e2a57c52f911979079020cc57c7a4b06a56940bb
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9a02decbc460ddfc501d8a4a9b41cd084776090951906b027838c0829e1fc15a
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b0b3684ef1ebf8b44d3a4c46391984173792dde1bd7363ea06d43a8f95a717d0
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:137b893ad15e0cd5353bae134c8fae833257a12641b12d0f774f1565ce66f63c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        version: 7.11.8-opr-1
      entries:
      - name: amq-broker-operator.v7.11.8-opr-1
        version: 7.11.8-opr-1
      - name: amq-broker-operator.v7.11.7-opr-2-1742200979
        version: 7.11.7-opr-2-1742200979
      - name: amq-broker-operator.v7.11.7-opr-2-1740583644
        version: 7.11.7-opr-2-1740583644
      - name: amq-broker-operator.v7.11.7-opr-2-1736956309
        version: 7.11.7-opr-2-1736956309
      - name: amq-broker-operator.v7.11.7-opr-2-1731330819
        version: 7.11.7-opr-2-1731330819
      - name: amq-broker-operator.v7.11.7-opr-2
        version: 7.11.7-opr-2
      - name: amq-broker-operator.v7.11.7-opr-1-1726157430
        version: 7.11.7-opr-1-1726157430
      - name: amq-broker-operator.v7.11.7-opr-1-1723204800
        version: 7.11.7-opr-1-1723204800
      - name: amq-broker-operator.v7.11.7-opr-1
        version: 7.11.7-opr-1
      - name: amq-broker-operator.v7.11.6-opr-2
        version: 7.11.6-opr-2
      - name: amq-broker-operator.v7.11.5-opr-1
        version: 7.11.5-opr-1
      - name: amq-broker-operator.v7.11.4-opr-1
        version: 7.11.4-opr-1
      - name: amq-broker-operator.v7.11.3-opr-1
        version: 7.11.3-opr-1
      - name: amq-broker-operator.v7.11.2-opr-1
        version: 7.11.2-opr-1
      - name: amq-broker-operator.v7.11.1-opr-2
        version: 7.11.1-opr-2
      - name: amq-broker-operator.v7.11.1-opr-1
        version: 7.11.1-opr-1
      - name: amq-broker-operator.v7.11.0-opr-3
        version: 7.11.0-opr-3
      - name: amq-broker-operator.v7.11.0-opr-2
        version: 7.11.0-opr-2
      name: 7.11.x
    - currentCSV: amq-broker-operator.v7.12.5-opr-1-0.1766088985.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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.substitutesFor: amq-broker-operator.v7.12.5-opr-1-0.1764078330.p
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - description: Provides internal message migration on clustered broker scaledown
            displayName: ActiveMQ Artemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: |
          **Red Hat AMQ Broker** is a pure-Java multiprotocol message broker. It’s built on an efficient, asynchronous core with a fast journal for message persistence.

          You can provision multiple instances and update the broker configuration on the fly using the associated Custom Resource Definitions.
          In addition, you can use the following CRDs to configure your broker environment:

          - **Address CRD**: define addresses and queues for the brokers in your deployment
          - **Security CRD**: define the security configuration for the brokers in your deployment, including:
              - users and roles
              - role based access control
              - console access control

          ## Selecting a channel
          You can specify the channel used to track and receive updates for the Operator by selecting either to track the minor or patch level versions.

          ## Supported Features
          - **Console** - Allows you view the broker topology, clients and messages. Red Hat Fuse users can integrate the broker console into the Fuse console for OpenShift.
          - **Persistence** - ephemeral and stateful deployments.
          - **Advanced queueing** - Last value queues, message groups, topic hierarchies, and large message support.
          - **Multiprotocol** - AMQP 1.0, MQTT, STOMP, OpenWire, and HornetQ Core.
          - **Address Management** - Creates and manages addresses and queues.
          - **User Management** - Creates and manages broker users.
          - **Monitoring** - Support for monitoring using Prometheus and provided Grafana dashboards.
          - **Scaledown** - Ensure consistency of messages using message migration.

          ## Storage
          An efficient data storage infrastructure is essential to the optimal performance of AMQ Broker.  AMQ Broker supports:
            - **Ephemeral** (Recommended for development only!)
            - **Persistent**
              - For example, block or NFS storage.
          Note: Your cloud provider might provide options that are not suitable for AMQ Broker, for example Amazon Elastic File System.  If in doubt, contact Red Hat Support

          ## Documentation
          Documentation for the current release is available from the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq/2021.q4/#category-amq-broker).
        displayName: Red Hat Integration - AMQ Broker for RHEL 8 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:92305253e5770277b74bea6f4bddcb918664df174ac1cf1bcfd84f261465f9a4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:47fd4ce2533496828aba37bd1f9715e2164d5c90bd0fc6b25e7e0786d723bf01
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:bb6fbd68475a7852b4d99eea6c4ab313f9267da7963162f0d75375d7063409e7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9cc48eecf1442ae04b8543fa5d4381a13bc2831390850828834d387006d1342b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ffffa9875f0379e9373f89f05eb06e5a193273bb04bc3aa5f85b044357b79098
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:dc13871dfed52402c40fd192900fc3cb5a49da4fa08e4ec4d0e23a879e83db25
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:16253895bc113f395dc6ab5cd511901e43b6ee676369ec80d598a8741c3c9bf4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:36ea76632f4928c6c34087d06b942c44f6d5bdd4f1828ab4e5efe36cdaf0632f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d42d713da0ce6806fdc6492b6342586783e6865a82a8647d3c4288439b1751ee
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:023478b773a0c42739b86e822a4d435e01ef341b8136566ea52463f1b7e447ed
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:eacc4fb55e8c4c30894a51944960d536508001a49fda62782c6cb2ca8767961d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:7f9b921d89b6d4d91b365659afff127d99f1455b94b48a10a6a7f4c38dd8b700
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b2402179b1d0ff9c950defe5d8808195ef9a4c3e13e3c469cae31ab51d5f5014
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7f83cabd3579472283c9a22e5722ddc58b14bc819fa9ba8d2281560920b392e8
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d71506472636d940b5dbd3e708d3e0448d777eeecfd38de61ba49e281d2979c6
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:40920687402fd747ca02d384e63692a5e1db625723a2bf3056a607c92ee8eee1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        version: 7.12.5-opr-1+0.1766088985.p
      entries:
      - name: amq-broker-operator.v7.12.5-opr-1-0.1762191931.p
        version: 7.12.5-opr-1+0.1762191931.p
      - name: amq-broker-operator.v7.12.5-opr-1
        version: 7.12.5-opr-1
      - name: amq-broker-operator.v7.12.5-opr-1-0.1764078330.p
        version: 7.12.5-opr-1+0.1764078330.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1764016479.p
        version: 7.12.5-opr-1+0.1764016479.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1763602793.p
        version: 7.12.5-opr-1+0.1763602793.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1762407308.p
        version: 7.12.5-opr-1+0.1762407308.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1761126305.p
        version: 7.12.5-opr-1+0.1761126305.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1761129569.p
        version: 7.12.5-opr-1+0.1761129569.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1766088985.p
        version: 7.12.5-opr-1+0.1766088985.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1757928550.p
        version: 7.12.5-opr-1+0.1757928550.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1756216162.p
        version: 7.12.5-opr-1+0.1756216162.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1754272113.p
        version: 7.12.5-opr-1+0.1754272113.p
      - name: amq-broker-operator.v7.12.4-opr-1
        version: 7.12.4-opr-1
      - name: amq-broker-operator.v7.12.4-opr-1-0.1747217191.p
        version: 7.12.4-opr-1+0.1747217191.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1730142550.p
        version: 7.12.3-opr-1+0.1730142550.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1731483798.p
        version: 7.12.3-opr-1+0.1731483798.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1739889884.p
        version: 7.12.3-opr-1+0.1739889884.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1739991235.p
        version: 7.12.3-opr-1+0.1739991235.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1741881887.p
        version: 7.12.3-opr-1+0.1741881887.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1741883943.p
        version: 7.12.3-opr-1+0.1741883943.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1741884937.p
        version: 7.12.3-opr-1+0.1741884937.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1738596517.p
        version: 7.12.3-opr-1+0.1738596517.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1737643631.p
        version: 7.12.3-opr-1+0.1737643631.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1733315503.p
        version: 7.12.3-opr-1+0.1733315503.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1732654016.p
        version: 7.12.3-opr-1+0.1732654016.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1739390944.p
        version: 7.12.3-opr-1+0.1739390944.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1730813578.p
        version: 7.12.3-opr-1+0.1730813578.p
      - name: amq-broker-operator.v7.12.3-opr-1
        version: 7.12.3-opr-1
      - name: amq-broker-operator.v7.12.2-opr-1
        version: 7.12.2-opr-1
      - name: amq-broker-operator.v7.12.1-opr-1-0.1724054375.p
        version: 7.12.1-opr-1+0.1724054375.p
      - name: amq-broker-operator.v7.12.1-opr-1-0.1723669176.p
        version: 7.12.1-opr-1+0.1723669176.p
      - name: amq-broker-operator.v7.12.1-opr-1-0.1721247907.p
        version: 7.12.1-opr-1+0.1721247907.p
      - name: amq-broker-operator.v7.12.1-opr-1
        version: 7.12.1-opr-1
      - name: amq-broker-operator.v7.12.0-opr-2
        version: 7.12.0-opr-2
      - name: amq-broker-operator.v7.12.0-opr-1
        version: 7.12.0-opr-1
      name: 7.12.x
    defaultChannel: 7.12.x
    packageName: amq-broker-rhel8
    provider:
      name: Red Hat
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-lambda-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-lambda-controller.v1.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "Alias",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "CodeSigningConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "EventSourceMapping",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "Function",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/lambda-controller:1.10.0
          createdAt: "2025-11-29T05:54:22Z"
          description: AWS Lambda controller is a service controller for managing
            Lambda resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alias represents the state of an AWS lambda Alias resource.
            displayName: Alias
            kind: Alias
            name: aliases.lambda.services.k8s.aws
            version: v1alpha1
          - description: CodeSigningConfig represents the state of an AWS lambda CodeSigningConfig
              resource.
            displayName: CodeSigningConfig
            kind: CodeSigningConfig
            name: codesigningconfigs.lambda.services.k8s.aws
            version: v1alpha1
          - description: EventSourceMapping represents the state of an AWS lambda
              EventSourceMapping resource.
            displayName: EventSourceMapping
            kind: EventSourceMapping
            name: eventsourcemappings.lambda.services.k8s.aws
            version: v1alpha1
          - description: Function represents the state of an AWS lambda Function resource.
            displayName: Function
            kind: Function
            name: functions.lambda.services.k8s.aws
            version: v1alpha1
          - description: FunctionURLConfig represents the state of an AWS lambda FunctionURLConfig
              resource.
            displayName: FunctionURLConfig
            kind: FunctionURLConfig
            name: functionurlconfigs.lambda.services.k8s.aws
            version: v1alpha1
          - description: LayerVersion represents the state of an AWS lambda LayerVersion
              resource.
            displayName: LayerVersion
            kind: LayerVersion
            name: layerversions.lambda.services.k8s.aws
            version: v1alpha1
          - description: Version represents the state of an AWS lambda Version resource.
            displayName: Version
            kind: Version
            name: versions.lambda.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Lambda resources in AWS from within your Kubernetes cluster.

          **About Amazon Lambda**

          Lambda is a compute service that lets you run code without provisioning or managing servers. Lambda runs your code on a high-availability compute infrastructure and performs all of the administration of the compute resources, including server and operating system maintenance, capacity provisioning and automatic scaling, code monitoring and logging. With Lambda, you can run code for virtually any type of application or backend service. All you need to do is supply your code in one of the [languages that Lambda supports](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Lambda
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - lambda
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Lambda Developer Resources
          url: https://aws.amazon.com/lambda/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: lambda maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/lambda-controller:1.10.0
        - quay.io/community-operator-pipeline-prod/ack-lambda-controller@sha256:d6e322492f07052cff6d7d727a56080d52437d56e3f4cf8ee1e19c28656be83d
        version: 1.10.0
      entries:
      - name: ack-lambda-controller.v1.10.0
        version: 1.10.0
      - name: ack-lambda-controller.v1.9.2
        version: 1.9.2
      - name: ack-lambda-controller.v1.9.1
        version: 1.9.1
      - name: ack-lambda-controller.v1.9.0
        version: 1.9.0
      - name: ack-lambda-controller.v1.8.0
        version: 1.8.0
      - name: ack-lambda-controller.v1.7.7
        version: 1.7.7
      - name: ack-lambda-controller.v1.7.6
        version: 1.7.6
      - name: ack-lambda-controller.v1.7.5
        version: 1.7.5
      - name: ack-lambda-controller.v1.7.4
        version: 1.7.4
      - name: ack-lambda-controller.v1.7.2
        version: 1.7.2
      - name: ack-lambda-controller.v1.7.1
        version: 1.7.1
      - name: ack-lambda-controller.v1.7.0
        version: 1.7.0
      - name: ack-lambda-controller.v1.6.3
        version: 1.6.3
      - name: ack-lambda-controller.v1.6.2
        version: 1.6.2
      - name: ack-lambda-controller.v1.6.1
        version: 1.6.1
      - name: ack-lambda-controller.v1.6.0
        version: 1.6.0
      - name: ack-lambda-controller.v1.5.8
        version: 1.5.8
      - name: ack-lambda-controller.v1.5.7
        version: 1.5.7
      - name: ack-lambda-controller.v1.5.6
        version: 1.5.6
      - name: ack-lambda-controller.v1.5.5
        version: 1.5.5
      - name: ack-lambda-controller.v1.5.4
        version: 1.5.4
      - name: ack-lambda-controller.v1.5.3
        version: 1.5.3
      - name: ack-lambda-controller.v1.5.2
        version: 1.5.2
      - name: ack-lambda-controller.v1.5.1
        version: 1.5.1
      - name: ack-lambda-controller.v1.5.0
        version: 1.5.0
      - name: ack-lambda-controller.v1.4.2
        version: 1.4.2
      - name: ack-lambda-controller.v1.4.0
        version: 1.4.0
      - name: ack-lambda-controller.v1.3.4
        version: 1.3.4
      - name: ack-lambda-controller.v1.3.2
        version: 1.3.2
      - name: ack-lambda-controller.v1.3.1
        version: 1.3.1
      - name: ack-lambda-controller.v1.3.0
        version: 1.3.0
      - name: ack-lambda-controller.v1.2.1
        version: 1.2.1
      - name: ack-lambda-controller.v1.2.0
        version: 1.2.0
      - name: ack-lambda-controller.v1.1.1
        version: 1.1.1
      - name: ack-lambda-controller.v1.1.0
        version: 1.1.0
      - name: ack-lambda-controller.v1.0.1
        version: 1.0.1
      - name: ack-lambda-controller.v1.0.0
        version: 1.0.0
      - name: ack-lambda-controller.v0.1.7
        version: 0.1.7
      - name: ack-lambda-controller.v0.1.6
        version: 0.1.6
      - name: ack-lambda-controller.v0.1.5
        version: 0.1.5
      - name: ack-lambda-controller.v0.1.3
        version: 0.1.3
      - name: ack-lambda-controller.v0.1.2
        version: 0.1.2
      - name: ack-lambda-controller.v0.1.1
        version: 0.1.1
      - name: ack-lambda-controller.v0.1.0
        version: 0.1.0
      - name: ack-lambda-controller.v0.0.17
        version: 0.0.17
      - name: ack-lambda-controller.v0.0.16
        version: 0.0.16
      - name: ack-lambda-controller.v0.0.15
        version: 0.0.15
      - name: ack-lambda-controller.v0.0.14
        version: 0.0.14
      - name: ack-lambda-controller.v0.0.13
        version: 0.0.13
      - name: ack-lambda-controller.v0.0.12
        version: 0.0.12
      - name: ack-lambda-controller.v0.0.11
        version: 0.0.11
      - name: ack-lambda-controller.v0.0.10
        version: 0.0.10
      - name: ack-lambda-controller.v0.0.9
        version: 0.0.9
      - name: ack-lambda-controller.v0.0.8
        version: 0.0.8
      - name: ack-lambda-controller.v0.0.7
        version: 0.0.7
      - name: ack-lambda-controller.v0.0.6
        version: 0.0.6
      - name: ack-lambda-controller.v0.0.5
        version: 0.0.5
      - name: ack-lambda-controller.v0.0.4
        version: 0.0.4
      - name: ack-lambda-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-lambda-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: JohnSnowLABS
      provider-url: nlp.johnsnowlabs.com
    name: annotationlab
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: annotationlab.v5.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.johnsnowlabs.com/v1",
                "kind": "Annotationlab",
                "metadata": {
                  "name": "annotationlab"
                },
                "spec": {
                  "activelearning": {
                    "extraEnv": "",
                    "extraVolumeMounts": "",
                    "extraVolumes": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "docker.io/johnsnowlabs/annotationlab",
                      "tag": "active-learning-5.7.0"
                    },
                    "lifecycleHooks": ""
                  },
                  "affinity": "podAntiAffinity:\n  requiredDuringSchedulingIgnoredDuringExecution:\n    - labelSelector:\n        matchLabels:\n          {{- include \"annotationlab.selectorLabels\" . | nindent 10 }}\n        matchExpressions:\n          - key: role\n            operator: NotIn\n            values:\n              - test\n      topologyKey: kubernetes.io/hostname\n  preferredDuringSchedulingIgnoredDuringExecution:\n    - weight: 100\n      podAffinityTerm:\n        labelSelector:\n          matchLabels:\n            {{- include \"annotationlab.selectorLabels\" . | nindent 12 }}\n          matchExpressions:\n            - key: role\n              operator: NotIn\n              values:\n                - test\n        topologyKey: failure-domain.beta.kubernetes.io/zone\n",
                  "airflow": {
                    "activelearning": {
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/johnsnowlabs/annotationlab",
                        "tag": "active-learning-5.7.0"
                      }
                    },
                    "affinity": {},
                    "airflowConfigAnnotations": {},
                    "airflowHome": "/opt/airflow",
                    "airflowLocalSettings": "{{- if semverCompare \"\u003e=2.2.0\" .Values.airflowVersion }}\n{{- if not (or .Values.webserverSecretKey .Values.webserverSecretKeySecretName) }}\nfrom airflow.www.utils import UIAlert\n\nDASHBOARD_UIALERTS = [\n  UIAlert(\n    'Usage of a dynamic webserver secret key detected. We recommend a static webserver secret key instead.'\n    ' See the \u003ca href='\n    '\"https://airflow.apache.org/docs/helm-chart/stable/production-guide.html#webserver-secret-key\"\u003e'\n    'Helm Chart Production Guide\u003c/a\u003e for more details.',\n    category=\"warning\",\n    roles=[\"Admin\"],\n    html=True,\n  )\n]\n{{- end }}\n{{- end }}",
                    "airflowPodAnnotations": {},
                    "airflowVersion": "2.5.1",
                    "allowPodLaunching": true,
                    "cleanup": {
                      "affinity": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow kubernetes cleanup-pods --namespace={{ .Release.Namespace }}"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "failedJobsHistoryLimit": null,
                      "labels": {},
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "resources": {},
                      "schedule": "*/15 * * * *",
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "successfulJobsHistoryLimit": null,
                      "tolerations": [],
                      "topologySpreadConstraints": []
                    },
                    "config": {
                      "api": {
                        "auth_backend": "airflow.api.auth.backend.default"
                      },
                      "celery": {
                        "flower_url_prefix": "{{ .Values.ingress.flower.path }}",
                        "worker_concurrency": 16
                      },
                      "celery_kubernetes_executor": {
                        "kubernetes_queue": "kubernetes"
                      },
                      "core": {
                        "colored_console_log": "False",
                        "dags_are_paused_at_creation": "False",
                        "dags_folder": "{{ include \"airflow_dags\" . }}",
                        "executor": "{{ .Values.executor }}",
                        "load_examples": "False",
                        "remote_logging": "{{- ternary \"True\" \"False\" .Values.elasticsearch.enabled }}"
                      },
                      "elasticsearch": {
                        "json_format": "True",
                        "log_id_template": "{dag_id}_{task_id}_{execution_date}_{try_number}"
                      },
                      "elasticsearch_configs": {
                        "max_retries": 3,
                        "retry_timeout": "True",
                        "timeout": 30
                      },
                      "kerberos": {
                        "ccache": "{{ .Values.kerberos.ccacheMountPath }}/{{ .Values.kerberos.ccacheFileName }}",
                        "keytab": "{{ .Values.kerberos.keytabPath }}",
                        "principal": "{{ .Values.kerberos.principal }}",
                        "reinit_frequency": "{{ .Values.kerberos.reinitFrequency }}"
                      },
                      "kubernetes": {
                        "airflow_configmap": "{{ include \"airflow_config\" . }}",
                        "airflow_local_settings_configmap": "{{ include \"airflow_config\" . }}",
                        "multi_namespace_mode": "{{ ternary \"True\" \"False\" .Values.multiNamespaceMode }}",
                        "namespace": "{{ .Release.Namespace }}",
                        "pod_template_file": "{{ include \"airflow_pod_template_file\" . }}/pod_template_file.yaml",
                        "worker_container_repository": "{{ .Values.images.airflow.repository | default .Values.defaultAirflowRepository }}",
                        "worker_container_tag": "{{ .Values.images.airflow.tag | default .Values.defaultAirflowTag }}"
                      },
                      "logging": {
                        "colored_console_log": "False",
                        "remote_logging": "{{- ternary \"True\" \"False\" .Values.elasticsearch.enabled }}"
                      },
                      "metrics": {
                        "statsd_host": "{{ printf \"%s-statsd\" .Release.Name }}",
                        "statsd_on": "{{ ternary \"True\" \"False\" .Values.statsd.enabled }}",
                        "statsd_port": 9125,
                        "statsd_prefix": "airflow"
                      },
                      "scheduler": {
                        "run_duration": 41460,
                        "standalone_dag_processor": "{{ ternary \"True\" \"False\" .Values.dagProcessor.enabled }}",
                        "statsd_host": "{{ printf \"%s-statsd\" .Release.Name }}",
                        "statsd_on": "{{ ternary \"True\" \"False\" .Values.statsd.enabled }}",
                        "statsd_port": 9125,
                        "statsd_prefix": "airflow"
                      },
                      "webserver": {
                        "authenticate": "False",
                        "base_url": "http://0.0.0.0:8080",
                        "enable_proxy_fix": "True",
                        "rbac": "False"
                      }
                    },
                    "createUserJob": {
                      "affinity": {},
                      "annotations": {},
                      "applyCustomEnv": true,
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"users create\" \"create_user\" }} \"$@\"",
                        "--",
                        "-r",
                        "{{ .Values.webserver.defaultUser.role }}",
                        "-u",
                        "{{ .Values.webserver.defaultUser.username }}",
                        "-e",
                        "{{ .Values.webserver.defaultUser.email }}",
                        "-f",
                        "{{ .Values.webserver.defaultUser.firstName }}",
                        "-l",
                        "{{ .Values.webserver.defaultUser.lastName }}",
                        "-p",
                        "{{ .Values.webserver.defaultUser.password }}"
                      ],
                      "command": null,
                      "env": [],
                      "extraContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "jobAnnotations": {},
                      "labels": {},
                      "nodeSelector": {},
                      "resources": {},
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-create-user-job"
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "useHelmHooks": true
                    },
                    "dagProcessor": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow dag-processor"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "livenessProbe": {
                        "command": null,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "strategy": {
                        "rollingUpdate": {
                          "maxSurge": "100%",
                          "maxUnavailable": "50%"
                        }
                      },
                      "terminationGracePeriodSeconds": 60,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      }
                    },
                    "dags": {
                      "gitSync": {
                        "branch": "v2-2-stable",
                        "containerName": "git-sync",
                        "depth": 1,
                        "enabled": false,
                        "env": [],
                        "extraVolumeMounts": [],
                        "maxFailures": 0,
                        "repo": "https://github.com/apache/airflow.git",
                        "resources": {},
                        "rev": "HEAD",
                        "securityContext": {},
                        "subPath": "tests/dags",
                        "uid": 65533,
                        "wait": 5
                      },
                      "persistence": {
                        "accessMode": "ReadWriteOnce",
                        "enabled": false,
                        "existingClaim": null,
                        "size": "1Gi",
                        "storageClassName": null,
                        "subPath": null
                      }
                    },
                    "data": {
                      "brokerUrl": null,
                      "brokerUrlSecretName": null,
                      "metadataConnection": {
                        "db": "airflow",
                        "pass": "airflow",
                        "port": 5432,
                        "protocol": "postgresql",
                        "sslmode": "disable",
                        "user": "airflow"
                      },
                      "metadataSecretName": null,
                      "resultBackendConnection": null,
                      "resultBackendSecretName": null
                    },
                    "defaultAirflowRepository": "apache/airflow",
                    "defaultAirflowTag": "2.5.1",
                    "elasticsearch": {
                      "connection": {},
                      "enabled": false,
                      "secretName": null
                    },
                    "enableBuiltInSecretEnvVars": {
                      "AIRFLOW_CONN_AIRFLOW_DB": true,
                      "AIRFLOW__CELERY__BROKER_URL": true,
                      "AIRFLOW__CELERY__CELERY_RESULT_BACKEND": true,
                      "AIRFLOW__CELERY__RESULT_BACKEND": true,
                      "AIRFLOW__CORE__FERNET_KEY": true,
                      "AIRFLOW__CORE__SQL_ALCHEMY_CONN": true,
                      "AIRFLOW__DATABASE__SQL_ALCHEMY_CONN": true,
                      "AIRFLOW__ELASTICSEARCH__ELASTICSEARCH_HOST": true,
                      "AIRFLOW__ELASTICSEARCH__HOST": true,
                      "AIRFLOW__WEBSERVER__SECRET_KEY": true
                    },
                    "env": [],
                    "executor": "CeleryExecutor",
                    "extraConfigMaps": {},
                    "extraEnv": "- name: ACTIVE_LEARNING_IMAGE_PULL_POLICY\n  value: \"{{ .Values.activelearning.image.pullPolicy }}\"\n- name: ACTIVE_LEARNING_IMAGE\n  value: \"{{ .Values.activelearning.image.repository }}:{{ .Values.activelearning.image.tag }}\"\n- name: NUMBER_OF_PREANNOTATOR_DAG\n  value: {{ .Values.preannotator_queues.count | quote }}\n- name: AIRFLOW__LOGGING__LOGGING_LEVEL\n  value: INFO\n- name: ANNOTATIONLAB_FULLNAME\n  value: {{ include \"annotationlab.annotationlab.fullname\" . }}\n- name: ANNOTATIONLAB_URL\n  value: http://{{ include \"annotationlab.annotationlab.fullname\" . }}:8200\n- name: AIRFLOW_NAMESPACE\n  value: {{ .Release.Namespace }}\n- name: DATABASE_CONNECTION_STRING\n  valueFrom:\n    secretKeyRef:\n      name: {{ include \"annotationlab.annotationlab.fullname\" . }}-secret\n      key: DATABASE_CONNECTION_STRING\n",
                    "extraEnvFrom": null,
                    "extraSecrets": {},
                    "fernetKey": null,
                    "fernetKeySecretName": null,
                    "flower": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"celery flower\" \"flower\" }}"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "extraContainers": [],
                      "extraNetworkPolicies": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "networkPolicy": {
                        "ingress": {
                          "from": [],
                          "ports": [
                            {
                              "port": "{{ .Values.ports.flowerUI }}"
                            }
                          ]
                        }
                      },
                      "nodeSelector": {},
                      "password": null,
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "secretName": null,
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "loadBalancerIP": null,
                        "loadBalancerSourceRanges": [],
                        "ports": [
                          {
                            "name": "flower-ui",
                            "port": "{{ .Values.ports.flowerUI }}"
                          }
                        ],
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "username": null
                    },
                    "fullnameOverride": "",
                    "gid": 0,
                    "global": {},
                    "image": {
                      "repository": "docker.io/johnsnowlabs/annotationlab"
                    },
                    "images": {
                      "airflow": {
                        "pullPolicy": "IfNotPresent",
                        "repository": null,
                        "tag": "dataflows-5.7.0"
                      },
                      "flower": {
                        "pullPolicy": "IfNotPresent",
                        "repository": null,
                        "tag": null
                      },
                      "gitSync": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "k8s.gcr.io/git-sync/git-sync",
                        "tag": "v3.6.3"
                      },
                      "migrationsWaitTimeout": 60,
                      "pgbouncer": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "apache/airflow",
                        "tag": "airflow-pgbouncer-2021.04.28-1.14.0"
                      },
                      "pgbouncerExporter": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "apache/airflow",
                        "tag": "airflow-pgbouncer-exporter-2021.09.22-0.12.0"
                      },
                      "pod_template": {
                        "pullPolicy": "IfNotPresent",
                        "repository": null,
                        "tag": null
                      },
                      "redis": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/redis",
                        "tag": "alpine3.16"
                      },
                      "statsd": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "quay.io/prometheus/statsd-exporter",
                        "tag": "v0.22.8"
                      },
                      "useDefaultImageForMigration": false
                    },
                    "ingress": {
                      "enabled": false,
                      "flower": {
                        "annotations": {},
                        "enabled": false,
                        "host": "",
                        "hosts": [],
                        "ingressClassName": "",
                        "path": "/",
                        "pathType": "ImplementationSpecific",
                        "tls": {
                          "enabled": false,
                          "secretName": ""
                        }
                      },
                      "web": {
                        "annotations": {},
                        "enabled": false,
                        "host": "",
                        "hosts": [],
                        "ingressClassName": "",
                        "path": "/",
                        "pathType": "ImplementationSpecific",
                        "precedingPaths": [],
                        "succeedingPaths": [],
                        "tls": {
                          "enabled": false,
                          "secretName": ""
                        }
                      }
                    },
                    "kerberos": {
                      "ccacheFileName": "cache",
                      "ccacheMountPath": "/var/kerberos-ccache",
                      "config": "# This is an example config showing how you can use templating and how \"example\" config\n# might look like. It works with the test kerberos server that we are using during integration\n# testing at Apache Airflow (see `scripts/ci/docker-compose/integration-kerberos.yml` but in\n# order to make it production-ready you must replace it with your own configuration that\n# Matches your kerberos deployment. Administrators of your Kerberos instance should\n# provide the right configuration.\n\n[logging]\ndefault = \"FILE:{{ template \"airflow_logs_no_quote\" . }}/kerberos_libs.log\"\nkdc = \"FILE:{{ template \"airflow_logs_no_quote\" . }}/kerberos_kdc.log\"\nadmin_server = \"FILE:{{ template \"airflow_logs_no_quote\" . }}/kadmind.log\"\n\n[libdefaults]\ndefault_realm = FOO.COM\nticket_lifetime = 10h\nrenew_lifetime = 7d\nforwardable = true\n\n[realms]\nFOO.COM = {\n  kdc = kdc-server.foo.com\n  admin_server = admin_server.foo.com\n}\n",
                      "configPath": "/etc/krb5.conf",
                      "enabled": false,
                      "keytabBase64Content": null,
                      "keytabPath": "/etc/airflow.keytab",
                      "principal": "airflow@FOO.COM",
                      "reinitFrequency": 3600
                    },
                    "kubeVersionOverride": "",
                    "labels": {},
                    "limits": [],
                    "logs": {
                      "persistence": {
                        "enabled": false,
                        "existingClaim": null,
                        "size": "100Gi",
                        "storageClassName": null
                      }
                    },
                    "migrateDatabaseJob": {
                      "affinity": {},
                      "annotations": {},
                      "applyCustomEnv": true,
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"db upgrade\" \"upgradedb\" }}"
                      ],
                      "command": null,
                      "enabled": true,
                      "extraContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "jobAnnotations": {},
                      "nodeSelector": {},
                      "resources": {},
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-migrate-database-job"
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "useHelmHooks": true
                    },
                    "multiNamespaceMode": false,
                    "nameOverride": "",
                    "networkPolicies": {
                      "enabled": false
                    },
                    "nodeSelector": {},
                    "pgbouncer": {
                      "affinity": {},
                      "annotations": {},
                      "args": null,
                      "auth_file": "/etc/pgbouncer/users.txt",
                      "auth_type": "md5",
                      "ciphers": "normal",
                      "command": [
                        "pgbouncer",
                        "-u",
                        "nobody",
                        "/etc/pgbouncer/pgbouncer.ini"
                      ],
                      "configSecretName": null,
                      "enabled": false,
                      "extraIni": null,
                      "extraIniMetadata": null,
                      "extraIniResultBackend": null,
                      "extraNetworkPolicies": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "logConnections": 0,
                      "logDisconnections": 0,
                      "maxClientConn": 100,
                      "metadataPoolSize": 10,
                      "metricsExporterSidecar": {
                        "resources": {},
                        "sslmode": "disable"
                      },
                      "nodeSelector": {},
                      "podDisruptionBudget": {
                        "config": {
                          "maxUnavailable": 1
                        },
                        "enabled": false
                      },
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "resultBackendPoolSize": 5,
                      "revisionHistoryLimit": null,
                      "service": {
                        "extraAnnotations": {}
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "ssl": {
                        "ca": null,
                        "cert": null,
                        "key": null
                      },
                      "sslmode": "prefer",
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "uid": 65534,
                      "verbose": 0
                    },
                    "podTemplate": null,
                    "ports": {
                      "airflowUI": 8080,
                      "flowerUI": 5555,
                      "pgbouncer": 6543,
                      "pgbouncerScrape": 9127,
                      "redisDB": 6379,
                      "statsdIngest": 9125,
                      "statsdScrape": 9102,
                      "workerLogs": 8793
                    },
                    "postgresql": {
                      "auth": {
                        "enablePostgresUser": true,
                        "password": null,
                        "postgresPassword": "postgres",
                        "username": null
                      },
                      "common": {
                        "exampleValue": "common-chart",
                        "global": {
                          "postgresql": {}
                        }
                      },
                      "commonAnnotations": {},
                      "enabled": true,
                      "extraEnv": [],
                      "global": {
                        "postgresql": {}
                      },
                      "image": {
                        "debug": false,
                        "pullPolicy": "IfNotPresent",
                        "registry": "docker.io",
                        "repository": "bitnami/postgresql",
                        "tag": "11"
                      },
                      "ldap": {
                        "baseDN": "",
                        "bindDN": "",
                        "enabled": false,
                        "port": "",
                        "prefix": "",
                        "scheme": "",
                        "search_attr": "",
                        "search_filter": "",
                        "server": "",
                        "suffix": "",
                        "tls": false,
                        "url": ""
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 30,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "master": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": [],
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "metrics": {
                        "enabled": false,
                        "extraEnvVars": {},
                        "image": {
                          "pullPolicy": "IfNotPresent",
                          "registry": "docker.io",
                          "repository": "bitnami/postgres-exporter",
                          "tag": "0.8.0-debian-10-r166"
                        },
                        "livenessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "prometheusRule": {
                          "additionalLabels": {},
                          "enabled": false,
                          "namespace": "",
                          "rules": []
                        },
                        "readinessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "securityContext": {},
                        "service": {
                          "annotations": {
                            "prometheus.io/port": "9187",
                            "prometheus.io/scrape": "true"
                          },
                          "type": "ClusterIP"
                        },
                        "serviceMonitor": {
                          "additionalLabels": {},
                          "enabled": false
                        }
                      },
                      "nameOverride": "airflow-postgresql",
                      "networkPolicy": {
                        "allowExternal": true,
                        "enabled": false,
                        "explicitNamespacesSelector": {}
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "enabled": true,
                        "mountPath": "/bitnami/postgresql",
                        "size": "8Gi",
                        "subPath": ""
                      },
                      "postgresqlDataDir": "/bitnami/postgresql/data",
                      "postgresqlDatabase": "airflow",
                      "postgresqlPassword": "airflow",
                      "postgresqlUsername": "airflow",
                      "psp": {
                        "create": false
                      },
                      "rbac": {
                        "create": false
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "replication": {
                        "applicationName": "my_application",
                        "enabled": false,
                        "numSynchronousReplicas": 0,
                        "password": "repl_password",
                        "slaveReplicas": 1,
                        "synchronousCommit": "off",
                        "user": "repl_user"
                      },
                      "resources": {
                        "requests": {
                          "cpu": "250m",
                          "memory": "256Mi"
                        }
                      },
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "port": 5432,
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "enabled": true,
                        "name": "annotationlab-airflow-postgresql"
                      },
                      "shmVolume": {
                        "chmod": {
                          "enabled": true
                        },
                        "enabled": true
                      },
                      "slave": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": "# - name: do-something\n#   image: busybox\n#   command: ['do', 'something']\n",
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "tls": {
                        "certFilename": "",
                        "certKeyFilename": "",
                        "certificatesSecret": "",
                        "enabled": false,
                        "preferServerCiphers": true
                      },
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      },
                      "volumePermissions": {
                        "enabled": false,
                        "image": {
                          "pullPolicy": "Always",
                          "registry": "docker.io",
                          "repository": "bitnami/minideb",
                          "tag": "buster"
                        },
                        "securityContext": {}
                      }
                    },
                    "preannotator_queues": {
                      "count": 5
                    },
                    "quotas": {},
                    "rbac": {
                      "create": true,
                      "createSCCRoleBinding": false
                    },
                    "redis": {
                      "affinity": {},
                      "enabled": true,
                      "nodeSelector": {},
                      "password": "DefaulTRediS-P0ss",
                      "passwordSecretName": null,
                      "persistence": {
                        "annotations": {},
                        "enabled": true,
                        "size": "1Gi",
                        "storageClassName": null
                      },
                      "podAnnotations": {},
                      "resources": {},
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "annotationlab-airflow-redis"
                      },
                      "terminationGracePeriodSeconds": 600,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "uid": 0
                    },
                    "registry": {
                      "connection": {},
                      "secretName": "kubernetesdockerhub"
                    },
                    "registryCredentials": {
                      "pullPolicy": "IfNotPresent",
                      "registryUrl": "docker.io/annotationlab"
                    },
                    "revisionHistoryLimit": null,
                    "scheduler": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow scheduler"
                      ],
                      "command": null,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "livenessProbe": {
                        "command": null,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "logGroomerSidecar": {
                        "args": [
                          "bash",
                          "/clean-logs"
                        ],
                        "command": null,
                        "enabled": true,
                        "resources": {},
                        "retentionDays": 15
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podDisruptionBudget": {
                        "config": {
                          "maxUnavailable": 1
                        },
                        "enabled": false
                      },
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-scheduler"
                      },
                      "strategy": null,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "updateStrategy": null,
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      }
                    },
                    "secret": [],
                    "securityContext": {},
                    "statsd": {
                      "affinity": {},
                      "args": [
                        "--statsd.mapping-config=/etc/statsd-exporter/mappings.yml"
                      ],
                      "enabled": false,
                      "extraMappings": [],
                      "extraNetworkPolicies": [],
                      "nodeSelector": {},
                      "overrideMappings": [],
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "securityContext": {},
                      "service": {
                        "extraAnnotations": {}
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-statsd"
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "uid": 65534
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "triggerer": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow triggerer"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "livenessProbe": {
                        "command": null,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "annotationlab-airflow-triggerer"
                      },
                      "strategy": {
                        "rollingUpdate": {
                          "maxSurge": "100%",
                          "maxUnavailable": "50%"
                        }
                      },
                      "terminationGracePeriodSeconds": 60,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      }
                    },
                    "uid": 50000,
                    "volumeMounts": [],
                    "volumes": [],
                    "webserver": {
                      "affinity": {},
                      "allowPodLogReading": true,
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow webserver"
                      ],
                      "command": null,
                      "defaultUser": {
                        "email": "admin@example.com",
                        "enabled": false,
                        "firstName": "admin",
                        "lastName": "user",
                        "password": "admin",
                        "role": "Admin",
                        "username": "admin"
                      },
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraNetworkPolicies": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "livenessProbe": {
                        "failureThreshold": 20,
                        "initialDelaySeconds": 15,
                        "periodSeconds": 5,
                        "scheme": "HTTP",
                        "timeoutSeconds": 30
                      },
                      "networkPolicy": {
                        "ingress": {
                          "from": [],
                          "ports": [
                            {
                              "port": "{{ .Values.ports.airflowUI }}"
                            }
                          ]
                        }
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podDisruptionBudget": {
                        "config": {
                          "maxUnavailable": 1
                        },
                        "enabled": false
                      },
                      "priorityClassName": null,
                      "readinessProbe": {
                        "failureThreshold": 20,
                        "initialDelaySeconds": 15,
                        "periodSeconds": 5,
                        "scheme": "HTTP",
                        "timeoutSeconds": 30
                      },
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "loadBalancerIP": null,
                        "loadBalancerSourceRanges": [],
                        "ports": [
                          {
                            "name": "airflow-ui",
                            "port": "{{ .Values.ports.airflowUI }}"
                          }
                        ],
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-webserver"
                      },
                      "strategy": null,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      },
                      "webserverConfig": null,
                      "webserverConfigConfigMapName": null
                    },
                    "webserverSecretKey": "f565cd64401775f93c820dc63fc3d4f6",
                    "webserverSecretKeySecretName": null,
                    "workers": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"celery worker\" \"worker\" }}"
                      ],
                      "command": null,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "hostAliases": [],
                      "keda": {
                        "advanced": {},
                        "cooldownPeriod": 30,
                        "enabled": false,
                        "maxReplicaCount": 10,
                        "minReplicaCount": 0,
                        "namespaceLabels": {},
                        "pollingInterval": 5
                      },
                      "kerberosSidecar": {
                        "enabled": false,
                        "resources": {}
                      },
                      "labels": {},
                      "livenessProbe": {
                        "command": null,
                        "enabled": true,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "logGroomerSidecar": {
                        "args": [
                          "bash",
                          "/clean-logs"
                        ],
                        "command": null,
                        "enabled": true,
                        "resources": {},
                        "retentionDays": 15
                      },
                      "nodeSelector": {},
                      "persistence": {
                        "annotations": {},
                        "enabled": true,
                        "fixPermissions": false,
                        "size": "5Gi",
                        "storageClassName": null
                      },
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-worker"
                      },
                      "strategy": {
                        "rollingUpdate": {
                          "maxSurge": "100%",
                          "maxUnavailable": "50%"
                        }
                      },
                      "terminationGracePeriodSeconds": 600,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "updateStrategy": null,
                      "waitForMigrations": {
                        "env": []
                      }
                    }
                  },
                  "backup": {
                    "enable": false,
                    "files": true,
                    "image": {
                      "repository": null,
                      "tag": null
                    },
                    "s3_access_key": "",
                    "s3_bucket_fullpath": "",
                    "s3_secret_key": ""
                  },
                  "configuration": {
                    "FLASK_SECRET_KEY": "rpaQghA-9lmpLwB8qxW0FsW1TJyZZYuB60ppzswpTzM=",
                    "KEYCLOAK_CLIENT_ID": "annotationlab",
                    "KEYCLOAK_CLIENT_SECRET_KEY": "09a71c59-0351-4ce6-bc8f-8fd3feb9d2ff",
                    "KEYCLOAK_REALM_NAME": "master",
                    "PERSISTENT_STORAGE": "/projects"
                  },
                  "extraContainers": "",
                  "extraEnv": "",
                  "extraNetworkPolicies": "- namespaceSelector: {}\n",
                  "extraVolumeMounts": "",
                  "extraVolumes": "",
                  "github_oauth_origin": "https://github.oauth.johnsnowlabs.com",
                  "google_analytics": {
                    "api_secret": "WENfd00yeUxRRWl4N0Utbml5SWt3Zw==",
                    "measurement_id": "Ry1XODBIMDhTTFBZ"
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "docker.io/johnsnowlabs/annotationlab",
                    "tag": "5.7.0"
                  },
                  "ingress": {
                    "annotations": {},
                    "defaultBackend": false,
                    "enabled": true,
                    "hosts": [
                      {
                        "host": "annotationlab",
                        "path": "/"
                      }
                    ],
                    "ingressroute": {
                      "enabled": false
                    },
                    "servicePort": "http",
                    "tls": [],
                    "uploadLimitInMegabytes": 16
                  },
                  "installAirflow": true,
                  "installKeycloak": true,
                  "installPostgresql": true,
                  "keycloak": {
                    "affinity": "podAntiAffinity:\n  requiredDuringSchedulingIgnoredDuringExecution:\n    - labelSelector:\n        matchLabels:\n          {{- include \"keycloak.selectorLabels\" . | nindent 10 }}\n        matchExpressions:\n          - key: app.kubernetes.io/component\n            operator: NotIn\n            values:\n              - test\n      topologyKey: kubernetes.io/hostname\n  preferredDuringSchedulingIgnoredDuringExecution:\n    - weight: 100\n      podAffinityTerm:\n        labelSelector:\n          matchLabels:\n            {{- include \"keycloak.selectorLabels\" . | nindent 12 }}\n          matchExpressions:\n            - key: app.kubernetes.io/component\n              operator: NotIn\n              values:\n                - test\n        topologyKey: topology.kubernetes.io/zone\n",
                    "args": [],
                    "auththeme": {
                      "image": {
                        "repository": "docker.io/johnsnowlabs/annotationlab",
                        "tag": "auth-theme-5.7.0"
                      }
                    },
                    "autoscaling": {
                      "behavior": {
                        "scaleDown": {
                          "policies": [
                            {
                              "periodSeconds": 300,
                              "type": "Pods",
                              "value": 1
                            }
                          ],
                          "stabilizationWindowSeconds": 300
                        }
                      },
                      "enabled": false,
                      "labels": {},
                      "maxReplicas": 10,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 80,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 3
                    },
                    "cache": {
                      "stack": "default"
                    },
                    "clusterDomain": "cluster.local",
                    "command": [
                      "/opt/keycloak/bin/kc.sh",
                      "--verbose",
                      "start",
                      "--http-enabled=true",
                      "--http-port=8080",
                      "--hostname-strict=false",
                      "--hostname-strict-https=false",
                      "--spi-events-listener-jboss-logging-success-level=info",
                      "--spi-events-listener-jboss-logging-error-level=warn"
                    ],
                    "database": {
                      "enabled": true,
                      "postgresqlDatabase": "keycloak",
                      "postgresqlPassword": "keycloak",
                      "postgresqlUsername": "keycloak"
                    },
                    "dbchecker": {
                      "enabled": false,
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/busybox",
                        "tag": 1.32
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "32Mi"
                        },
                        "requests": {
                          "cpu": "20m",
                          "memory": "32Mi"
                        }
                      },
                      "securityContext": {}
                    },
                    "enableServiceLinks": true,
                    "extraContainers": "",
                    "extraEnv": "- name: KC_FEATURES\n  value: \"authorization,account-api,admin-api,admin-fine-grained-authz,ciba,impersonation,kerberos,preview,step-up-authentication,token-exchange,web-authn\"\n- name: KEYCLOAK_ADMIN\n  valueFrom:\n    secretKeyRef:\n      name: {{ include \"keycloak.fullname\" . }}-admincreds\n      key: user\n- name: KEYCLOAK_ADMIN_PASSWORD\n  valueFrom:\n    secretKeyRef:\n      name: {{ include \"keycloak.fullname\" . }}-admincreds\n      key: password\n- name: JAVA_OPTS_APPEND\n  value: \u003e-\n    -XX:+UseContainerSupport\n    -XX:MaxRAMPercentage=50.0\n    -Djava.awt.headless=true\n    -Djgroups.dns.query={{ include \"keycloak.fullname\" . }}-headless\n",
                    "extraEnvFrom": "",
                    "extraInitContainers": "- name: theme-provider\n  image: {{ .Values.auththeme.image.repository }}:{{ .Values.auththeme.image.tag }}\n  imagePullPolicy: IfNotPresent\n  command:\n    - sh\n  args:\n    - -c\n    - |\n      echo \"Copying theme...\"\n      cp -R /johnsnowlabs/* /theme\n  volumeMounts:\n    - name: theme\n      mountPath: /theme\n",
                    "extraPorts": [],
                    "extraServiceMonitor": {
                      "annotations": {},
                      "enabled": false,
                      "interval": "10s",
                      "labels": {},
                      "namespace": "",
                      "namespaceSelector": {},
                      "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/realms/master/metrics",
                      "port": "http",
                      "scrapeTimeout": "10s"
                    },
                    "extraVolumeMounts": "- name: admincreds\n  mountPath: /secrets/admincreds\n  readOnly: true\n- name: theme\n  mountPath: /opt/keycloak/themes/johnsnowlabs\n",
                    "extraVolumes": "- name: admincreds\n  secret:\n    secretName: '{{ include \"annotationlab.keycloak.fullname\" . }}-admincreds'\n- name: theme\n  emptyDir: {}\n",
                    "fullnameOverride": "",
                    "global": {},
                    "health": {
                      "enabled": true
                    },
                    "hostAliases": [],
                    "http": {
                      "relativePath": "/auth"
                    },
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "repository": "docker.io/keycloak/keycloak",
                      "tag": "20.0.3"
                    },
                    "imagePullSecrets": [
                      {
                        "name": "kubernetesdockerhub"
                      }
                    ],
                    "ingress": {
                      "annotations": {
                        "nginx.ingress.kubernetes.io/proxy-buffer-size": "16k"
                      },
                      "console": {
                        "annotations": {},
                        "enabled": false,
                        "ingressClassName": "",
                        "rules": [
                          {
                            "host": "{{ .Release.Name }}.keycloak.example.com",
                            "paths": [
                              {
                                "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/admin",
                                "pathType": "Prefix"
                              }
                            ]
                          }
                        ],
                        "tls": []
                      },
                      "enabled": false,
                      "ingressClassName": "",
                      "labels": {},
                      "rules": [
                        {
                          "host": "keycloak.example.com",
                          "paths": [
                            {
                              "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/",
                              "pathType": "Prefix"
                            }
                          ]
                        }
                      ],
                      "servicePort": "http",
                      "tls": []
                    },
                    "lifecycleHooks": "",
                    "livenessProbe": "httpGet:\n  path: '{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/health/live'\n  port: http\ninitialDelaySeconds: 0\ntimeoutSeconds: 5\n",
                    "metrics": {
                      "enabled": true
                    },
                    "nameOverride": "",
                    "networkPolicy": {
                      "egress": [],
                      "enabled": false,
                      "extraFrom": [],
                      "labels": {}
                    },
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {},
                    "postgresql": {
                      "common": {
                        "exampleValue": "common-chart",
                        "global": {
                          "postgresql": {}
                        }
                      },
                      "commonAnnotations": {},
                      "enabled": true,
                      "extraEnv": [],
                      "global": {
                        "postgresql": {}
                      },
                      "image": {
                        "debug": false,
                        "pullPolicy": "IfNotPresent",
                        "registry": "docker.io",
                        "repository": "bitnami/postgresql",
                        "tag": "11.20.0-debian-11-r12"
                      },
                      "ldap": {
                        "baseDN": "",
                        "bindDN": "",
                        "bind_password": null,
                        "enabled": false,
                        "port": "",
                        "prefix": "",
                        "scheme": "",
                        "search_attr": "",
                        "search_filter": "",
                        "server": "",
                        "suffix": "",
                        "tls": false,
                        "url": ""
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 30,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "master": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": [],
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "metrics": {
                        "enabled": false,
                        "extraEnvVars": {},
                        "image": {
                          "pullPolicy": "IfNotPresent",
                          "registry": "docker.io",
                          "repository": "bitnami/postgres-exporter",
                          "tag": "0.8.0-debian-10-r166"
                        },
                        "livenessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "prometheusRule": {
                          "additionalLabels": {},
                          "enabled": false,
                          "namespace": "",
                          "rules": []
                        },
                        "readinessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "securityContext": {},
                        "service": {
                          "annotations": {
                            "prometheus.io/port": "9187",
                            "prometheus.io/scrape": "true"
                          },
                          "loadBalancerIP": null,
                          "type": "ClusterIP"
                        },
                        "serviceMonitor": {
                          "additionalLabels": {},
                          "enabled": false
                        }
                      },
                      "nameOverride": "keycloak-postgres",
                      "networkPolicy": {
                        "allowExternal": true,
                        "enabled": false,
                        "explicitNamespacesSelector": {}
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "enabled": true,
                        "mountPath": "/bitnami/postgresql",
                        "size": "8Gi",
                        "subPath": ""
                      },
                      "postgresqlDataDir": "/bitnami/postgresql/data",
                      "postgresqlDatabase": "keycloak",
                      "postgresqlPassword": "keycloak",
                      "postgresqlUsername": "keycloak",
                      "psp": {
                        "create": false
                      },
                      "rbac": {
                        "create": false
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "replication": {
                        "applicationName": "my_application",
                        "enabled": false,
                        "numSynchronousReplicas": 0,
                        "password": "repl_password",
                        "slaveReplicas": 1,
                        "synchronousCommit": "off",
                        "user": "repl_user"
                      },
                      "resources": {
                        "requests": {
                          "cpu": "250m",
                          "memory": "256Mi"
                        }
                      },
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "port": 5432,
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "enabled": true,
                        "name": "annotationlab-keycloak-postgresql"
                      },
                      "shmVolume": {
                        "chmod": {
                          "enabled": true
                        },
                        "enabled": true
                      },
                      "slave": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": "# - name: do-something\n#   image: busybox\n#   command: ['do', 'something']\n",
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "tls": {
                        "certCAFilename": null,
                        "certFilename": "",
                        "certKeyFilename": "",
                        "certificatesSecret": "",
                        "crlFilename": null,
                        "enabled": false,
                        "preferServerCiphers": true
                      },
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      },
                      "volumePermissions": {
                        "enabled": false,
                        "image": {
                          "pullPolicy": "Always",
                          "registry": "docker.io",
                          "repository": "bitnami/minideb",
                          "tag": "buster"
                        },
                        "securityContext": {}
                      }
                    },
                    "priorityClassName": "",
                    "prometheusRule": {
                      "annotations": {},
                      "enabled": false,
                      "labels": {},
                      "namespace": "",
                      "rules": []
                    },
                    "proxy": {
                      "enabled": true,
                      "mode": "edge"
                    },
                    "rbac": {
                      "create": false,
                      "rules": []
                    },
                    "readinessProbe": "httpGet:\n  path: '{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/health/ready'\n  port: http\ninitialDelaySeconds: 10\ntimeoutSeconds: 1\n",
                    "replicas": 1,
                    "resources": {},
                    "restartPolicy": "Always",
                    "route": {
                      "annotations": {},
                      "enabled": false,
                      "host": "",
                      "labels": {},
                      "path": "/",
                      "tls": {
                        "enabled": true,
                        "insecureEdgeTerminationPolicy": "Redirect",
                        "termination": "edge"
                      }
                    },
                    "secrets": {
                      "admincreds": {
                        "stringData": {
                          "password": "secret",
                          "user": "admin"
                        }
                      }
                    },
                    "securityContext": {},
                    "service": {
                      "annotations": {},
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "httpNodePort": null,
                      "httpPort": 80,
                      "httpsNodePort": null,
                      "httpsPort": 8443,
                      "labels": {},
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "sessionAffinity": "",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "allowReadPods": false,
                      "annotations": {},
                      "automountServiceAccountToken": true,
                      "create": false,
                      "imagePullSecrets": [],
                      "labels": {},
                      "name": "annotationlab-keyclo"
                    },
                    "serviceHeadless": {
                      "annotations": {}
                    },
                    "serviceMonitor": {
                      "annotations": {},
                      "enabled": false,
                      "interval": "10s",
                      "labels": {},
                      "namespace": "",
                      "namespaceSelector": {},
                      "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/metrics",
                      "port": "http",
                      "scrapeTimeout": "10s"
                    },
                    "skipInitContainers": false,
                    "startupProbe": "httpGet:\n  path: '{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/health'\n  port: http\ninitialDelaySeconds: 15\ntimeoutSeconds: 1\nfailureThreshold: 60\nperiodSeconds: 5\n",
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {},
                    "terminationGracePeriodSeconds": 60,
                    "test": {
                      "deletionPolicy": "before-hook-creation",
                      "enabled": false,
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/seleniarm/standalone-chromium",
                        "tag": "111.0"
                      },
                      "podSecurityContext": {},
                      "securityContext": {}
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": null,
                    "updateStrategy": "RollingUpdate"
                  },
                  "licenseserver": {
                    "origin": "https://license.johnsnowlabs.com"
                  },
                  "lifecycleHooks": "# postStart:\n#   exec:\n#     command: [\"/bin/sh\", \"-c\", \"ls\"]\n",
                  "modelshub_origin": "https://modelshub.johnsnowlabs.com",
                  "myjohnsnowlabs": {
                    "client_id": "UIGgoiIL9szXW8Nnik0O7tPT4to87oVtWvYWfc6r",
                    "origin": "https://my.johnsnowlabs.com"
                  },
                  "networkPolicy": {
                    "enabled": false
                  },
                  "nodeSelector": {},
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "annotations": {},
                    "enabled": true,
                    "size": "8Gi"
                  },
                  "podAnnotations": {},
                  "podLabels": {},
                  "postgresql": {
                    "common": {
                      "exampleValue": "common-chart",
                      "global": {
                        "postgresql": {}
                      }
                    },
                    "commonAnnotations": {},
                    "extraEnv": [],
                    "global": {
                      "postgresql": {}
                    },
                    "image": {
                      "debug": false,
                      "pullPolicy": "IfNotPresent",
                      "registry": "docker.io",
                      "repository": "bitnami/postgresql",
                      "tag": "11.20.0-debian-11-r12"
                    },
                    "ldap": {
                      "baseDN": "",
                      "bindDN": "",
                      "bind_password": null,
                      "enabled": false,
                      "port": "",
                      "prefix": "",
                      "scheme": "",
                      "search_attr": "",
                      "search_filter": "",
                      "server": "",
                      "suffix": "",
                      "tls": false,
                      "url": ""
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "master": {
                      "affinity": {},
                      "annotations": {},
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podLabels": {},
                      "priorityClassName": "",
                      "service": {},
                      "sidecars": [],
                      "tolerations": []
                    },
                    "metrics": {
                      "enabled": false,
                      "extraEnvVars": {},
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "registry": "docker.io",
                        "repository": "bitnami/postgres-exporter",
                        "tag": "0.8.0-debian-10-r166"
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "prometheusRule": {
                        "additionalLabels": {},
                        "enabled": false,
                        "namespace": "",
                        "rules": []
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "securityContext": {},
                      "service": {
                        "annotations": {
                          "prometheus.io/port": "9187",
                          "prometheus.io/scrape": "true"
                        },
                        "loadBalancerIP": null,
                        "type": "ClusterIP"
                      },
                      "serviceMonitor": {
                        "additionalLabels": {},
                        "enabled": false
                      }
                    },
                    "networkPolicy": {
                      "allowExternal": true,
                      "enabled": false,
                      "explicitNamespacesSelector": {}
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "enabled": true,
                      "mountPath": "/bitnami/postgresql",
                      "size": "8Gi",
                      "subPath": ""
                    },
                    "postgresqlDataDir": "/bitnami/postgresql/data",
                    "postgresqlDatabase": "annotationlab",
                    "postgresqlPassword": "annotationlab",
                    "postgresqlUsername": "annotationlab",
                    "psp": {
                      "create": false
                    },
                    "rbac": {
                      "create": false
                    },
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "replication": {
                      "applicationName": "my_application",
                      "enabled": false,
                      "numSynchronousReplicas": 0,
                      "password": "repl_password",
                      "slaveReplicas": 1,
                      "synchronousCommit": "off",
                      "user": "repl_user"
                    },
                    "resources": {
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "securityContext": {},
                    "service": {
                      "annotations": {},
                      "port": 5432,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "enabled": false
                    },
                    "shmVolume": {
                      "chmod": {
                        "enabled": true
                      },
                      "enabled": true
                    },
                    "slave": {
                      "affinity": {},
                      "annotations": {},
                      "extraInitContainers": "# - name: do-something\n#   image: busybox\n#   command: ['do', 'something']\n",
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podLabels": {},
                      "priorityClassName": "",
                      "service": {},
                      "sidecars": [],
                      "tolerations": []
                    },
                    "tls": {
                      "certCAFilename": null,
                      "certFilename": "",
                      "certKeyFilename": "",
                      "certificatesSecret": "",
                      "crlFilename": null,
                      "enabled": false,
                      "preferServerCiphers": true
                    },
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "volumePermissions": {
                      "enabled": false,
                      "image": {
                        "pullPolicy": "Always",
                        "registry": "docker.io",
                        "repository": "bitnami/minideb",
                        "tag": "buster"
                      },
                      "securityContext": {}
                    }
                  },
                  "preannotator_queues": {
                    "count": 5,
                    "service": {
                      "port": 5000,
                      "portName": "http",
                      "type": "ClusterIP"
                    }
                  },
                  "priorityClassName": "",
                  "readinessProbe": "httpGet:\n  path: /healthz\n  port: http\ninitialDelaySeconds: 10\ntimeoutSeconds: 1\n",
                  "registryCredentials": {
                    "create": false,
                    "password": "XXXXX",
                    "secretName": "kubernetesdockerhub",
                    "username": "XXXXX"
                  },
                  "replicas": 1,
                  "resources": {},
                  "restartPolicy": "Always",
                  "securityContext": {
                    "enabled": false,
                    "fsGroup": 65534,
                    "fsGroupChangePolicy": "OnRootMismatch",
                    "runAsUser": 65534
                  },
                  "service": {
                    "port": 8200,
                    "portName": "http",
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": false,
                    "name": "annotationlab"
                  },
                  "sharedData": {
                    "enabled": true,
                    "images": {
                      "storageSize": "5Gi"
                    },
                    "storageSize": "100Gi"
                  },
                  "sqlalchemy_pool_size": 10,
                  "telemetry": {
                    "enabled": true
                  },
                  "terminationGracePeriodSeconds": 60,
                  "tolerations": [],
                  "updateStrategy": {
                    "type": "Recreate"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: registry.johnsnowlabs.com/annotationlab/annotationlab-operator:v5.7.0
          createdAt: "2023-12-19T10:26:54Z"
          marketplace.openshift.io/remote-workflow: https://marketplace.redhat.com/en-us/operators/annotationlab/pricing?utm_source=openshift_console
          marketplace.openshift.io/support-workflow: https://marketplace.redhat.com/en-us/operators/annotationlab/support?utm_source=openshift_console
          operatorframework.io/suggested-namespace: johnsnowlabs-operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: NLP Lab
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Annotationlab
            name: annotationlabs.apps.johnsnowlabs.com
            version: v1
        description: "NLP Lab is a data labeling and annotation tool that helps you\nlabel
          different types of data using a simple interface with a standardized output\nformat.\n\nIt
          contains enterprise features like Project Management and sharing, SSO\nintegration,
          OpenAPI Specification 3.0 compliant API, task management, and active\nlearning/preannotation
          using Spark NLP.\n\nFurthermore, the production deployment of the application
          is done using a helm chart.\nThe same helm chart is also used to create
          an AWS AMI for an EC2 based single server \ndeployment using packer.\n\nMake
          sure you have defined shared storage such as efs/nfs/cephfs prior to installing
          the NLP Lab Operator.\nUpdate the host property in the YAML configuration
          to define the required domain name to use instead of the \ndefault hostname
          annotationlab.\n\nNLP Lab Operator Installtion guide [NLP Lab Operator][]:\n[NLP
          Lab Operator]: https://nlp.johnsnowlabs.com/docs/en/alab/install    \n"
        displayName: NLPLab
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nlplab
        links:
        - name: Annotationlab
          url: https://annotationlab.domain
        maintainers:
        - email: bhandari@johnsnowlabs.com
          name: bikash
        maturity: alpha
        provider:
          name: JohnSnowLABS
          url: nlp.johnsnowlabs.com
        relatedImages:
        - registry.johnsnowlabs.com/annotationlab/annotationlab-operator:v5.7.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/annotationlab@sha256:b69fde0eb341114893aba097d58455c9e316a97cb829b41c0d080987490a83d3
        version: 5.7.0
      entries:
      - name: annotationlab.v5.7.0
        version: 5.7.0
      - name: annotationlab.v5.4.1
        version: 5.4.1
      - name: annotationlab.v4.9.2
        version: 4.9.2
      name: alpha
    defaultChannel: alpha
    packageName: annotationlab
    provider:
      name: JohnSnowLABS
      url: nlp.johnsnowlabs.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-zero-trust-workload-identity-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: zero-trust-workload-identity-manager.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpiffeCSIDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "agentSocketPath": "/run/spire/agent-sockets",
                  "pluginName": "csi.spiffe.io"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpireAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "logFormat": "text",
                  "logLevel": "info",
                  "nodeAttestor": {
                    "k8sPSATEnabled": "true"
                  },
                  "workloadAttestors": {
                    "k8sEnabled": "true",
                    "workloadAttestorsVerification": {
                      "type": "auto"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpireOIDCDiscoveryProvider",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "csiDriverName": "csi.spiffe.io",
                  "jwtIssuer": "https://oidc-discovery.example.com",
                  "logFormat": "text",
                  "logLevel": "info",
                  "managedRoute": "true",
                  "replicaCount": 1
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpireServer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "caKeyType": "rsa-2048",
                  "caSubject": {
                    "commonName": "SPIRE Server CA",
                    "country": "US",
                    "organization": "Example Corp"
                  },
                  "caValidity": "24h",
                  "datastore": {
                    "connectionString": "/run/spire/data/datastore.sqlite3",
                    "databaseType": "sqlite3",
                    "maxIdleConns": 2,
                    "maxOpenConns": 100
                  },
                  "defaultJWTValidity": "5m",
                  "defaultX509Validity": "1h",
                  "federation": {
                    "bundleEndpoint": {
                      "profile": "https_spiffe",
                      "refreshHint": 300
                    },
                    "federatesWith": [
                      {
                        "bundleEndpointProfile": "https_spiffe",
                        "bundleEndpointUrl": "https://federation.partner.example.com:8443",
                        "endpointSpiffeId": "spiffe://partner.example.com/federation/endpoint",
                        "trustDomain": "partner.example.com"
                      }
                    ],
                    "managedRoute": "true"
                  },
                  "jwtIssuer": "https://oidc-discovery.example.com",
                  "logFormat": "text",
                  "logLevel": "info",
                  "persistence": {
                    "accessMode": "ReadWriteOnce",
                    "size": "2Gi",
                    "storageClass": ""
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ZeroTrustWorkloadIdentityManager",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "bundleConfigMap": "spire-bundle",
                  "clusterName": "prod-cluster",
                  "trustDomain": "example.com"
                }
              },
              {
                "apiVersion": "spire.spiffe.io/v1alpha1",
                "kind": "ClusterFederatedTrustDomain",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "example.com"
                },
                "spec": {
                  "bundleEndpointProfile": "https_web",
                  "trustDomain": "example.com"
                }
              },
              {
                "apiVersion": "spire.spiffe.io/v1alpha1",
                "kind": "ClusterSPIFFEID",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "example-workload",
                  "namespace": "default"
                },
                "spec": {
                  "dnsNameTemplates": [
                    "*.example.com"
                  ],
                  "ttl": 3600,
                  "workloadSelector": {
                    "k8sServiceAccount": {
                      "name": "example-sa",
                      "namespace": "example-ns"
                    }
                  }
                }
              },
              {
                "apiVersion": "spire.spiffe.io/v1alpha1",
                "kind": "ClusterStaticEntry",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "example-static-entry",
                  "namespace": "default"
                },
                "spec": {
                  "parentID": "spiffe://example.com/spire/server",
                  "selectors": [
                    {
                      "type": "unix",
                      "value": "uid:1000"
                    }
                  ],
                  "spiffeID": "spiffe://example.com/example-workload",
                  "ttl": 3600
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-rhel9@sha256:9d88df06140dfdfd18f9467fb7ecfdb5508a8f559301b6173c9b6490cc22cc37
          createdAt: 2025-12-17T07:13:42
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: zero-trust-workload-identity-manager
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/zero-trust-workload-identity-manager
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterFederatedTrustDomain
            name: clusterfederatedtrustdomains.spire.spiffe.io
            version: v1alpha1
          - kind: ClusterSPIFFEID
            name: clusterspiffeids.spire.spiffe.io
            version: v1alpha1
          - kind: ClusterStaticEntry
            name: clusterstaticentries.spire.spiffe.io
            version: v1alpha1
          - kind: SpiffeCSIDriver
            name: spiffecsidrivers.operator.openshift.io
            version: v1alpha1
          - kind: SpireAgent
            name: spireagents.operator.openshift.io
            version: v1alpha1
          - kind: SpireOIDCDiscoveryProvider
            name: spireoidcdiscoveryproviders.operator.openshift.io
            version: v1alpha1
          - kind: SpireServer
            name: spireservers.operator.openshift.io
            version: v1alpha1
          - kind: ZeroTrustWorkloadIdentityManager
            name: zerotrustworkloadidentitymanagers.operator.openshift.io
            version: v1alpha1
        description: The Zero Trust Workload Identity Manager is an Openshift Day-2
          Operator designed to automate the setup and management of SPIFFE/SPIRE components
          (like spire-server, spire-agent, spiffe-csi-driver, and oidc-discovery-provider)
          within OpenShift clusters. It enables zero-trust security by dynamically
          issuing and rotating workload identities, enforcing strict identity-based
          authentication across workloads. This manager abstracts complex SPIRE configurations,
          streamlining workload onboarding with secure identities and improving the
          cluster's overall security posture.
        displayName: Zero Trust Workload Identity Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - zero-trust-workload-identity-manager
        - ztwim
        - spire
        - spiffe-spire
        - security
        links:
        - name: Documentation
          url: https://github.com/openshift/zero-trust-workload-identity-manager/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-controller-manager-rhel9@sha256:7ddf330a798dbb112c2f58d2548941100a964db705617680d09969eaa3e07727
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-oidc-discovery-provider-rhel9@sha256:70f04312f96851a37ec9bfcc605d6a7edb4c87b548621007183b7caa2333816a
        - registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-rhel9@sha256:9d88df06140dfdfd18f9467fb7ecfdb5508a8f559301b6173c9b6490cc22cc37
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-csi-driver-rhel9@sha256:5359e8709d1b73386eddef202d59b7c511aa5366ca04f5ee707bbf760977e55d
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:1c480fa5089a32cf804fc84df7219ca64066cbac2eeb962c4385754132c3873b
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-agent-rhel9@sha256:54865d9de74a500528dcef5c24dfe15c0baee8df662e76459e83bf9921dfce4e
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-server-rhel9@sha256:6a14fb03c3b7256a405cff52ae0e5c7e66b1fa1a8e3a955d6670123f5534d4e4
        - registry.access.redhat.com/ubi9@sha256:dec374e05cc13ebbc0975c9f521f3db6942d27f8ccdf06b180160490eef8bdbc
        - registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-operator-bundle@sha256:3776c07bfffdf464660750d69bf3725aa74dfc1f207ee8d1f408a8dc6c11eabb
        version: 1.0.0
      entries:
      - name: zero-trust-workload-identity-manager.v1.0.0
        version: 1.0.0
      name: stable-v1
    defaultChannel: stable-v1
    packageName: openshift-zero-trust-workload-identity-manager
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Altair Engineering Inc.
      provider-url: ""
    name: anzograph-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: anzograph-operator.v3.2.500
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "anzograph.clusters.cambridgesemantics.com/v2",
                "kind": "AnzoGraph",
                "metadata": {
                  "name": "azg01"
                },
                "spec": {
                  "db": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app_data": "anzograph-data-grpc",
                            "app_mgmt": "anzograph-mgmt-grpc"
                          }
                        },
                        "serviceName": "anzograph-azg01",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app_data": "anzograph-data-grpc",
                              "app_mgmt": "anzograph-mgmt-grpc"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzograph-db@sha256:30ed2ec337135701ab8b54e75bb48ad8928a2c48818643c23b9dba4484255a2e",
                                "name": "db",
                                "resources": {
                                  "limits": {
                                    "cpu": "8000m",
                                    "memory": "8Gi"
                                  },
                                  "requests": {
                                    "cpu": "8000m",
                                    "memory": "8Gi"
                                  }
                                }
                              }
                            ],
                            "securityContext": {
                              "fsGroup": 1000,
                              "runAsNonRoot": true,
                              "runAsUser": 1000,
                              "seccompProfile": {
                                "type": "RuntimeDefault"
                              }
                            },
                            "serviceAccountName": "anzograph-operator"
                          }
                        }
                      }
                    }
                  },
                  "deployFrontend": false,
                  "frontend": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app_mgmt": "anzograph-frontend"
                          }
                        },
                        "serviceName": "anzograph-azg01",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app_mgmt": "anzograph-frontend"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzograph-frontend@sha256:e5446b3c04889f2189e955702c4165eb243eb89f47ac797eb417b60b1459647f",
                                "name": "frontend",
                                "resources": {
                                  "limits": {
                                    "cpu": "2000m",
                                    "memory": "4Gi"
                                  },
                                  "requests": {
                                    "cpu": "2000m",
                                    "memory": "4Gi"
                                  }
                                }
                              }
                            ],
                            "securityContext": {
                              "fsGroup": 1000,
                              "runAsNonRoot": true,
                              "runAsUser": 1000,
                              "seccompProfile": {
                                "type": "RuntimeDefault"
                              }
                            },
                            "serviceAccountName": "anzograph-operator"
                          }
                        }
                      }
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Basic Install
          categories: Database, Big Data
          certified: "true"
          containerImage: registry.connect.redhat.com/cambridgesemantics/anzograph-operator@sha256:2333154a14ab7f3a03a601f00c017feeafb9d9814aff5e59c95cef615ab2abd6
          createdAt: "2025-09-22T12:03:18Z"
          description: kubernetes operator for Altair Graph Lakehouse DB
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: unknown
          repository: ""
          support: Altair Engineering Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnzoGraph is the Schema for the anzographs API
            displayName: Altair Graph Lakehouse Operator
            kind: AnzoGraph
            name: anzographs.anzograph.clusters.cambridgesemantics.com
            version: v2
        description: |-
          The Altair Graph Lakehouse Operator provides the way to install and configure an Altair Graph Lakehouse
          cluster on Red Hat K8S environment.

          ### Installation
           Refer [installation instructions]( https://github.com/cambridgesemantics/csi-k8s-operator-anzograph/blob/v3.2.5/README_openshift_marketplace.md )

          ### Documentation

          You can find our documentation [here.]( https://docs.cambridgesemantics.com/anzograph/userdoc/ )

          ### Support

          We offer Support to our customers with the Altair Graph Lakehouse db Enterprise Edition License [here]( https://altair.com/customer-support ) or by emailing the Data Analytics Support team at dasupport@altair.com.
        displayName: Altair Graph Lakehouse Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Big Data
        - Database
        links:
        - name: Anzograph Operator
          url: https://github.com/cambridgesemantics/csi-k8s-operator-anzograph/blob/v3.2.5/README_openshift_marketplace.md
        maintainers:
        - email: fschwichtenberg@altair.com
          name: Frank Schwichtenberg
        maturity: stable
        provider:
          name: Altair Engineering Inc.
        relatedImages:
        - registry.connect.redhat.com/cambridgesemantics/anzograph-frontend@sha256:e5446b3c04889f2189e955702c4165eb243eb89f47ac797eb417b60b1459647f
        - registry.connect.redhat.com/cambridgesemantics/anzograph-operator-bundle@sha256:a7b60f1c65a6fb4ee0109c7b2b0bd12fb9487e2f6edb059bd18cfd2337ea9116
        - registry.connect.redhat.com/cambridgesemantics/anzograph-operator@sha256:2333154a14ab7f3a03a601f00c017feeafb9d9814aff5e59c95cef615ab2abd6
        - registry.connect.redhat.com/cambridgesemantics/anzograph-db@sha256:30ed2ec337135701ab8b54e75bb48ad8928a2c48818643c23b9dba4484255a2e
        version: 3.2.500
      entries:
      - name: anzograph-operator.v3.2.500
        version: 3.2.500
      - name: anzograph-operator.v3.2.300
        version: 3.2.300
      - name: anzograph-operator.v3.2.200
        version: 3.2.200
      - name: anzograph-operator.v3.2.104
        version: 3.2.104
      name: stable
    defaultChannel: stable
    packageName: anzograph-operator
    provider:
      name: Altair Engineering Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Habana Labs Ltd.
      provider-url: https://habana.ai
    name: habana-ai-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: habana-ai-operator.v1.22.2-32-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "habanalabs.habana.ai/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "habana-ai"
                },
                "spec": {
                  "bmc_monitoring": {
                    "image": {
                      "repository": "vault.habana.ai/habana-bmc-exporter/bmc-exporter",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "250Mi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "device_plugin": {
                    "image": {
                      "repository": "vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "20m",
                        "memory": "64Mi"
                      },
                      "requests": {
                        "cpu": "10m",
                        "memory": "32Mi"
                      }
                    }
                  },
                  "driver": {
                    "driver_loader": {
                      "images": {
                        "rhel_9.4": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "rhel_9.6": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "tencentos_3.1": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_22.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_24.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer",
                          "tag": "1.22.2-32"
                        }
                      },
                      "mlnx_ofed_repo_path": "artifactory/gaudi-installer/deps",
                      "mlnx_ofed_version": "mlnx-ofed-5.8-2.0.3.0-rhel8.4-x86_64.tar.gz",
                      "repo_path": "artifactory/gaudi-installer/repos",
                      "repo_server": "vault.habana.ai",
                      "resources": {
                        "limits": {
                          "cpu": "4000m",
                          "memory": "16Gi"
                        },
                        "requests": {
                          "cpu": "2000m",
                          "memory": "8Gi"
                        }
                      }
                    },
                    "driver_runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "feature_discovery": {
                    "nfd_plugin": false,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "image_registry": "vault.habana.ai",
                  "metric_exporter": {
                    "interval": 20,
                    "port": 41611,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/gaudi-metric-exporter/metric-exporter",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "memory": "120Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "100Mi"
                        }
                      }
                    }
                  },
                  "runtime": {
                    "configuration": {
                      "container_engine": "crio"
                    },
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habana-container-runtime",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
          createdAt: "2025-11-29T20:54:26Z"
          description: Manages Intel Gaudi AI accelerators within a Kubernetes cluster
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.9.0 <1.22.2-32-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: habana-ai-operator
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: http://github.com/HabanaAI/habana-ai-operator
          support: Habana Labs Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy is the Schema for the clusterpolicies API.
            displayName: Cluster Policy
            kind: ClusterPolicy
            name: clusterpolicies.habanalabs.habana.ai
            version: v1
        description: |
          Kubernetes provides access to accelerators such as Intel Gaudi AI accelerators and other devices through the [Device Plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The Intel Gaudi uses the [operator framework](https://coreos.com/blog/introducing-operator-framework) within Kubernetes to automate the management of all Intel Gaudi software components needed to provision and monitor the Intel Gaudi AI accelerators. These components include:
          * The Intel Gaudi kernel modules to enable the hardware
          * The Kubernetes DevicePlugin to allow the Intel Gaudi AI accelerator allocation via the kubelet
          ### Documentation
          Visit the [Intel Gaudi developer site](https://developer.habana.ai/) for more information.
          To get started with using Intel Gaudi with OpenShift, see the instructions in the [Intel Gaudi Documentation](https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html).
        displayName: Intel Gaudi Base Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - habanalabs
        - hardware
        - driver
        links:
        - name: Intel Gaudi Documentation
          url: https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html
        maintainers:
        - email: erik.berlin@intel.com
          name: Erik Berlin
        - email: tal.david@intel.com
          name: Tal David
        - email: lukasz.wencel@intel.com
          name: Lukasz Wencel
        maturity: stable
        provider:
          name: Habana Labs Ltd.
          url: https://habana.ai
        relatedImages:
        - vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin@sha256:3d47bdff68c5d277bcc9fbacae0a2a9becd3566b5939eeff0899e37d256ba399
        - vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer@sha256:8e2c240d88f353dcbe583d8a2f080ac8c0d67b262bfa3259cfa977c89ac37926
        - vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer@sha256:b4e0e572f521c4d0ec936e08a57261de595fb60cd949c1f630010a6fdc3adc04
        - vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer@sha256:89c88d3881e678a8a7658abddea4548f43f7271d16d6fc23816b59ac7b54a045
        - vault.habana.ai/habana-ai-operator/habana-container-runtime@sha256:4a518f14a65a30fe0838e8e02246b32f04b90d34c473306e36ed5ca34462253e
        - registry.connect.redhat.com/ospid-627904f807c06bb948c71e73/habana-ai@sha256:5a939703888b51e15248203489a2c86874a31dbc4051fedee104cb2663ce8d45
        - vault.habana.ai/gaudi-metric-exporter/metric-exporter@sha256:535a9737602f35b0e1c706f60b2c10cd7bd3fc84f57f72f1b3eedd6c16035382
        - vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer@sha256:1d9a78720caba968c885884844217034e318e3379db840fd1490911a4baaec8c
        - vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery@sha256:837d781b678f0719e33a9d5b43ead4868b16ae8420d959666cbdfaaf74ff47f8
        - vault.habana.ai/habana-bmc-exporter/bmc-exporter@sha256:158af426fef28f8c14a77f71299314701345f786ff0c079066837bdc201b36e7
        - quay.io/brancz/kube-rbac-proxy@sha256:c2ef3c3fcb4ffcfab30088b19c8ef18931aac8cf072c75ef72c654457e1d632b
        - vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer@sha256:1a6e4c500cce53ec77bfc00cd78dbc30038a8b1c55bc59004e52de0254d9d0d1
        - vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
        version: 1.22.2-32-2
      entries:
      - name: habana-ai-operator.v1.22.2-32-2
        version: 1.22.2-32-2
      name: "1.22"
    - currentCSV: habana-ai-operator.v1.22.2-32-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "habanalabs.habana.ai/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "habana-ai"
                },
                "spec": {
                  "bmc_monitoring": {
                    "image": {
                      "repository": "vault.habana.ai/habana-bmc-exporter/bmc-exporter",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "250Mi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "device_plugin": {
                    "image": {
                      "repository": "vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "20m",
                        "memory": "64Mi"
                      },
                      "requests": {
                        "cpu": "10m",
                        "memory": "32Mi"
                      }
                    }
                  },
                  "driver": {
                    "driver_loader": {
                      "images": {
                        "rhel_9.4": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "rhel_9.6": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "tencentos_3.1": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_22.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_24.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer",
                          "tag": "1.22.2-32"
                        }
                      },
                      "mlnx_ofed_repo_path": "artifactory/gaudi-installer/deps",
                      "mlnx_ofed_version": "mlnx-ofed-5.8-2.0.3.0-rhel8.4-x86_64.tar.gz",
                      "repo_path": "artifactory/gaudi-installer/repos",
                      "repo_server": "vault.habana.ai",
                      "resources": {
                        "limits": {
                          "cpu": "4000m",
                          "memory": "16Gi"
                        },
                        "requests": {
                          "cpu": "2000m",
                          "memory": "8Gi"
                        }
                      }
                    },
                    "driver_runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "feature_discovery": {
                    "nfd_plugin": false,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "image_registry": "vault.habana.ai",
                  "metric_exporter": {
                    "interval": 20,
                    "port": 41611,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/gaudi-metric-exporter/metric-exporter",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "memory": "120Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "100Mi"
                        }
                      }
                    }
                  },
                  "runtime": {
                    "configuration": {
                      "container_engine": "crio"
                    },
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habana-container-runtime",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
          createdAt: "2025-11-29T20:54:26Z"
          description: Manages Intel Gaudi AI accelerators within a Kubernetes cluster
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.9.0 <1.22.2-32-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: habana-ai-operator
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: http://github.com/HabanaAI/habana-ai-operator
          support: Habana Labs Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy is the Schema for the clusterpolicies API.
            displayName: Cluster Policy
            kind: ClusterPolicy
            name: clusterpolicies.habanalabs.habana.ai
            version: v1
        description: |
          Kubernetes provides access to accelerators such as Intel Gaudi AI accelerators and other devices through the [Device Plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The Intel Gaudi uses the [operator framework](https://coreos.com/blog/introducing-operator-framework) within Kubernetes to automate the management of all Intel Gaudi software components needed to provision and monitor the Intel Gaudi AI accelerators. These components include:
          * The Intel Gaudi kernel modules to enable the hardware
          * The Kubernetes DevicePlugin to allow the Intel Gaudi AI accelerator allocation via the kubelet
          ### Documentation
          Visit the [Intel Gaudi developer site](https://developer.habana.ai/) for more information.
          To get started with using Intel Gaudi with OpenShift, see the instructions in the [Intel Gaudi Documentation](https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html).
        displayName: Intel Gaudi Base Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - habanalabs
        - hardware
        - driver
        links:
        - name: Intel Gaudi Documentation
          url: https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html
        maintainers:
        - email: erik.berlin@intel.com
          name: Erik Berlin
        - email: tal.david@intel.com
          name: Tal David
        - email: lukasz.wencel@intel.com
          name: Lukasz Wencel
        maturity: stable
        provider:
          name: Habana Labs Ltd.
          url: https://habana.ai
        relatedImages:
        - vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin@sha256:3d47bdff68c5d277bcc9fbacae0a2a9becd3566b5939eeff0899e37d256ba399
        - vault.habana.ai/gaudi-metric-exporter/metric-exporter@sha256:535a9737602f35b0e1c706f60b2c10cd7bd3fc84f57f72f1b3eedd6c16035382
        - vault.habana.ai/habana-ai-operator/habana-container-runtime@sha256:4a518f14a65a30fe0838e8e02246b32f04b90d34c473306e36ed5ca34462253e
        - quay.io/brancz/kube-rbac-proxy@sha256:c2ef3c3fcb4ffcfab30088b19c8ef18931aac8cf072c75ef72c654457e1d632b
        - vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
        - vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer@sha256:1a6e4c500cce53ec77bfc00cd78dbc30038a8b1c55bc59004e52de0254d9d0d1
        - vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer@sha256:b4e0e572f521c4d0ec936e08a57261de595fb60cd949c1f630010a6fdc3adc04
        - vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer@sha256:89c88d3881e678a8a7658abddea4548f43f7271d16d6fc23816b59ac7b54a045
        - vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery@sha256:837d781b678f0719e33a9d5b43ead4868b16ae8420d959666cbdfaaf74ff47f8
        - vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer@sha256:8e2c240d88f353dcbe583d8a2f080ac8c0d67b262bfa3259cfa977c89ac37926
        - vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer@sha256:1d9a78720caba968c885884844217034e318e3379db840fd1490911a4baaec8c
        - vault.habana.ai/habana-bmc-exporter/bmc-exporter@sha256:158af426fef28f8c14a77f71299314701345f786ff0c079066837bdc201b36e7
        - registry.connect.redhat.com/ospid-627904f807c06bb948c71e73/habana-ai@sha256:5a939703888b51e15248203489a2c86874a31dbc4051fedee104cb2663ce8d45
        version: 1.22.2-32-2
      entries:
      - name: habana-ai-operator.v1.22.2-32-2
        version: 1.22.2-32-2
      name: stable
    defaultChannel: stable
    packageName: habana-ai-operator
    provider:
      name: Habana Labs Ltd.
      url: https://habana.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ptp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ptp-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ptp.openshift.io/v1",
                "kind": "NodePtpDevice",
                "metadata": {
                  "name": "node.example.com"
                },
                "spec": {}
              },
              {
                "apiVersion": "ptp.openshift.io/v1",
                "kind": "PtpConfig",
                "metadata": {
                  "name": "example-ptpconfig"
                },
                "spec": {
                  "profile": [
                    {
                      "interface": "ens787f1",
                      "name": "profile1",
                      "phc2sysOpts": "-a -r",
                      "ptp4lOpts": "-s -2",
                      "ptpClockThreshold": {}
                    }
                  ],
                  "recommend": [
                    {
                      "match": [
                        {
                          "nodeLabel": "node-role.kubernetes.io/worker=",
                          "nodeName": "node.example.com"
                        }
                      ],
                      "priority": 4,
                      "profile": "profile1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "ptp.openshift.io/v1",
                "kind": "PtpOperatorConfig",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "daemonNodeSelector": {
                    "feature.node.kubernetes.io/ptp-capable": "yes",
                    "node-role.kubernetes.io/worker": ""
                  },
                  "ptpEventConfig": {}
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-ptp-rhel9-operator@sha256:60db6e526e38ecc4b5f6bfb7bb036776522052ff2e7b7815f83ca896eeaf07d3
          createdAt: "2024-06-12"
          description: This software enables configuration of Precision Time Protocol(PTP)
            on Kubernetes. It detects hardware capable PTP devices on each node, and
            configures linuxptp processes such as ptp4l, phc2sys and timemaster.
          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: "true"
          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.skipRange: '>=4.3.0-0 <4.20.0-202512090918'
          operatorframework.io/suggested-namespace: openshift-ptp
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.22.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: Red Hat
          repository: https://github.com/k8snetworkplumbingwg/ptp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodePtpDevice is the Schema for the nodeptpdevices API
            displayName: Node Ptp Device
            kind: NodePtpDevice
            name: nodeptpdevices.ptp.openshift.io
            version: v1
          - description: PtpConfig is the Schema for the ptpconfigs API
            displayName: Ptp Config
            kind: PtpConfig
            name: ptpconfigs.ptp.openshift.io
            version: v1
          - description: PtpOperatorConfig is the Schema for the ptpoperatorconfigs
              API
            displayName: Ptp Operator Config
            kind: PtpOperatorConfig
            name: ptpoperatorconfigs.ptp.openshift.io
            version: v1
        description: |
          # Precision Time Protocol (PTP) Operator for Openshift

          ## Introdution
          PTP Operator manages cluster wide PTP configuration.
          This operator has to run in namespace 'openshift-ptp'. An Operator Group is also required to install this operator:
          ```
          $ oc create -f - <<EOF
          apiVersion: v1
          kind: Namespace
          metadata:
            name: openshift-ptp
            labels:
              name: openshift-ptp
              openshift.io/cluster-monitoring: "true"
          EOF

          $ oc create -f - <<EOF
          apiVersion: operators.coreos.com/v1
          kind: OperatorGroup
          metadata:
            name: ptp-operators
            namespace: openshift-ptp
          spec:
            targetNamespaces:
            - openshift-ptp
          EOF
          ```
        displayName: PTP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ptp
        links:
        - name: Documentation operator
          url: https://github.com/k8snetworkplumbingwg/ptp-operator
        - name: Documentation operand
          url: https://github.com/k8snetworkplumbingwg/linuxptp-daemon
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-ptp-operator-bundle@sha256:8c575641252b62703f2c9a925805f6ba29ba2b21f31c3c4ef2752942fda4dc3e
        - registry.redhat.io/openshift4/ose-cloud-event-proxy-rhel9@sha256:d96187c19aff7b750075052828058c1b061a7b476c047598d78414c545b58562
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-ptp-rhel9-operator@sha256:60db6e526e38ecc4b5f6bfb7bb036776522052ff2e7b7815f83ca896eeaf07d3
        - registry.redhat.io/openshift4/ose-ptp-rhel9@sha256:bb0c3bd53144f85bea73066bed2770b0fd49a9c019f56a9f6d6f92e63c8afc81
        version: 4.20.0-202512090918
      entries:
      - name: ptp-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: ptp-operator.v4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: ptp-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: ptp-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: ptp-operator.v4.20.0-202511042325
        version: 4.20.0-202511042325
      - name: ptp-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: ptp-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: ptp-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: ptp-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ODH
      provider-url: ""
    name: opendatahub-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opendatahub-operator.v2.35.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "odh-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "opendatahub",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "opendatahub"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v2.35.0
          createdAt: "2025-10-01T13:12:27Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/opendatahub-io/opendatahub-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odh
        - notebooks
        - serving
        - training
        - pipelines
        - modelmesh
        - workbenches
        - dashboard
        - kserve
        - distributed workloads
        - trustyai
        - modelregistry
        - feast
        - featurestore
        - llamastack
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: opendatahub@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ODH
        relatedImages:
        - quay.io/community-operator-pipeline-prod/opendatahub-operator:2.35.0
        - quay.io/opendatahub/opendatahub-operator:v2.35.0
        version: 2.35.0
      entries:
      - name: opendatahub-operator.v2.35.0
        version: 2.35.0
      - name: opendatahub-operator.v2.34.0
        version: 2.34.0
      - name: opendatahub-operator.v2.33.0
        version: 2.33.0
      - name: opendatahub-operator.v2.32.0
        version: 2.32.0
      - name: opendatahub-operator.v2.31.0
        version: 2.31.0
      - name: opendatahub-operator.v2.30.0
        version: 2.30.0
      - name: opendatahub-operator.v2.29.0
        version: 2.29.0
      - name: opendatahub-operator.v2.28.0
        version: 2.28.0
      - name: opendatahub-operator.v2.27.0
        version: 2.27.0
      - name: opendatahub-operator.v2.26.0
        version: 2.26.0
      - name: opendatahub-operator.v2.25.0
        version: 2.25.0
      - name: opendatahub-operator.v2.24.0
        version: 2.24.0
      - name: opendatahub-operator.v2.23.0
        version: 2.23.0
      - name: opendatahub-operator.v2.22.0
        version: 2.22.0
      - name: opendatahub-operator.v2.21.0
        version: 2.21.0
      - name: opendatahub-operator.v2.20.0
        version: 2.20.0
      - name: opendatahub-operator.v2.19.0
        version: 2.19.0
      - name: opendatahub-operator.v2.18.2
        version: 2.18.2
      - name: opendatahub-operator.v2.18.1
        version: 2.18.1
      - name: opendatahub-operator.v2.18.0
        version: 2.18.0
      - name: opendatahub-operator.v2.17.0
        version: 2.17.0
      - name: opendatahub-operator.v2.16.0
        version: 2.16.0
      - name: opendatahub-operator.v2.15.0
        version: 2.15.0
      - name: opendatahub-operator.v2.14.0
        version: 2.14.0
      - name: opendatahub-operator.v2.13.0
        version: 2.13.0
      - name: opendatahub-operator.v2.12.1
        version: 2.12.1
      - name: opendatahub-operator.v2.12.0
        version: 2.12.0
      - name: opendatahub-operator.v2.11.1
        version: 2.11.1
      - name: opendatahub-operator.v2.11.0
        version: 2.11.0
      - name: opendatahub-operator.v2.10.0
        version: 2.10.0
      name: fast
    - currentCSV: opendatahub-operator.v3.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v2",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "datasciencecluster"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "aipipelines": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "rawDeploymentServiceConfig": "Headed"
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "mlflowoperator": {
                      "managementState": "Removed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "odh-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainer": {
                      "managementState": "Removed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v2",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "dscinitialization"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "opendatahub",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "opendatahub"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v3.2.0
          createdAt: "2025-12-19T00:40:32Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["featuretrackers.features.opendatahub.io",
            "dashboards.components.platform.opendatahub.io", "datasciencepipelines.components.platform.opendatahub.io",
            "kserves.components.platform.opendatahub.io", "kueues.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io",
            "llamastackoperators.components.platform.opendatahub.io", "trainers.components.platform.opendatahub.io",
            "mlflowoperators.components.platform.opendatahub.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/opendatahub-io/opendatahub-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v2
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v2
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: GatewayConfig is the Schema for the gatewayconfigs API
            displayName: Gateway Config
            kind: GatewayConfig
            name: gatewayconfigs.services.platform.opendatahub.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: MLflowOperator is the Schema for the MLflowOperators API
            displayName: MLflow Operator
            kind: MLflowOperator
            name: mlflowoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelsAsService
            name: modelsasservices.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - kind: Trainer
            name: trainers.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: "The Open Data Hub is a machine-learning-as-a-service platform
          built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open
          Data Hub integrates multiple AI/ML open source components into one operator
          that can easily be downloaded and installed by OpenShift users.\n\nOpen
          Data Hub operator allows users to install and manage components of the Open
          Data Hub. Users can mix and match tools from each project to fulfill the
          needs of their use case. Each of the projects share some components, but
          can be mostly seen as an extension of each other to provide a complete solution
          for both novice and skilled enterprise users.\n    \n### Components\n\n*
          Open Data Hub Dashboard - A web dashboard that displays installed Open Data
          Hub components with easy access to component UIs and documentation\n* ODH
          Notebook Controller - Secure management of Jupyter Notebook in Kubernetes
          environments built on top of Kubeflow Notebook Controller with support for
          OAuth\n* Jupyter Notebooks - JupyterLab notebook that provide Python support
          for GPU workloads\n* Data Science Pipelines - Pipeline solution for end
          to end MLOps workflows that support the Kubeflow Pipelines SDK and Argo
          Workflows\n* Model Mesh - ModelMesh Serving is the Controller for managing
          ModelMesh, a general-purpose model serving management/routing layer\n* Distributed
          Workloads(Incubation) - Stack built to make managing distributed compute
          infrastructure in the cloud easy and intuitive for Data Scientists. This
          stack consists of two components\n                                      KubeRay
          and Kueue.\n* Kserve - Kserve is the Controller for for serving machine
          learning (ML) models on arbitrary frameworks\n* Feast - Feature Store is
          the fastest path to manage existing infrastructure to productionize analytic
          data for model training and online inference.\n* Llama Stack – unified open‑source
          APIs for inference, RAG, agents, safety, evals & telemetry\n* MLflow - MLflow
          is an open-source platform, purpose-built to assist machine learning practitioners
          and teams in handling the complexities of the machine learning process.
          MLflow focuses on the full lifecycle for machine learning projects, ensuring
          that each phase is manageable, traceable, and reproducible."
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odh
        - notebooks
        - serving
        - training
        - pipelines
        - workbenches
        - dashboard
        - kserve
        - distributed workloads
        - trustyai
        - modelregistry
        - feast
        - featurestore
        - llamastack
        - mlflow
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: ai-core-platform@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ODH
        relatedImages:
        - quay.io/community-operator-pipeline-prod/opendatahub-operator:3.2.0
        - quay.io/opendatahub/odh-kube-auth-proxy:v3.2.0
        - quay.io/opendatahub/opendatahub-operator:v3.2.0
        version: 3.2.0
      entries:
      - name: opendatahub-operator.v3.2.0
        version: 3.2.0
      - name: opendatahub-operator.v3.1.0
        version: 3.1.0
      - name: opendatahub-operator.v3.0.0
        version: 3.0.0
      name: fast-3
    - currentCSV: opendatahub-operator.v2.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "opendatahub",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "opendatahub"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              },
              {
                "apiVersion": "features.opendatahub.io/v1",
                "kind": "FeatureTracker",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "default-feature",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-feature"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v2.8.0
          createdAt: "2024-2-20T00:00:00Z"
          operatorframework.io/initialization-resource: |-
            {
            "apiVersion": "dscinitialization.opendatahub.io/v1",
            "kind": "DSCInitialization",
            "metadata": {
            "labels": {
             "app.kubernetes.io/created-by": "opendatahub-operator",
             "app.kubernetes.io/instance": "default",
             "app.kubernetes.io/managed-by": "kustomize",
             "app.kubernetes.io/name": "dscinitialization",
             "app.kubernetes.io/part-of": "opendatahub-operator"
            },
            "name": "default-dsci"
            },
            "spec": {
            "applicationsNamespace": "opendatahub",
            "monitoring": {
             "managementState": "Managed",
             "namespace": "opendatahub"
            },
            "serviceMesh": {
             "controlPlane": {
               "metricsCollection": "Istio",
               "name": "data-science-smcp",
               "namespace": "istio-system"
             },
             "managementState": "Managed"
            },
            "trustedCABundle": {
             "customCABundle": "",
             "managementState": "Managed"
            }
            }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/opendatahub-io/opendatahub-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: "The Open Data Hub is a machine-learning-as-a-service platform
          built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open
          Data Hub integrates multiple AI/ML open source components into one operator
          that can easily be downloaded and installed by OpenShift users.\n\nOpen
          Data Hub operator allows users to install and manage components of the Open
          Data Hub. Users can mix and match tools from each project to fulfill the
          needs of their use case. Each of the projects share some components, but
          can be mostly seen as an extension of each other to provide a complete solution
          for both novice and skilled enterprise users.\n    \n### Components\n\n*
          Open Data Hub Dashboard - A web dashboard that displays installed Open Data
          Hub components with easy access to component UIs and documentation\n* ODH
          Notebook Controller - Secure management of Jupyter Notebook in Kubernetes
          environments built on top of Kubeflow Notebook Controller with support for
          OAuth\n* Jupyter Notebooks - JupyterLab notebook that provide Python support
          for GPU workloads\n* Data Science Pipelines - Pipeline solution for end
          to end MLOps workflows that support the Kubeflow Pipelines SDK and Tekton\n*
          Model Mesh - ModelMesh Serving is the Controller for managing ModelMesh,
          a general-purpose model serving management/routing layer\n* Distributed
          Workloads(Incubation) - Stack built to make managing distributed compute
          infrastructure in the cloud easy and intuitive for Data Scientists. This
          stack consists of three components \n                                      Codeflare
          , KubeRay and Kueue.\n* Kserve - Kserve is the Controller for for serving
          machine learning (ML) models on arbitrary frameworks"
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odh
        - notebooks
        - serving
        - training
        - pipelines
        - modelmesh
        - workbenches
        - dashboard
        - kserve
        - distributed-workloads
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: opendatahub@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: ODH
        relatedImages:
        - quay.io/community-operator-pipeline-prod/opendatahub-operator@sha256:d3e3d5ae02b834522481fa9046bf2ad3ea06d706c5cb06a32d32e61e229e4a6c
        - quay.io/opendatahub/opendatahub-operator:v2.8.0
        version: 2.8.1
      entries:
      - name: opendatahub-operator.v2.8.1
        version: 2.8.1
      name: odh-2.8.z
    - currentCSV: opendatahub-operator.v1.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kfdef.apps.kubeflow.org/v1",
                "kind": "KfDef",
                "metadata": {
                  "name": "opendatahub",
                  "namespace": "opendatahub"
                },
                "spec": {
                  "applications": [
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-common"
                        }
                      },
                      "name": "odh-common"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-dashboard"
                        }
                      },
                      "name": "odh-dashboard"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "data-science-pipelines-operator/"
                        }
                      },
                      "name": "data-science-pipelines-operator"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-notebook-controller"
                        }
                      },
                      "name": "odh-notebook-controller"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "notebook-images"
                        }
                      },
                      "name": "notebook-images"
                    },
                    {
                      "kustomizeConfig": {
                        "parameters": [
                          {
                            "name": "monitoring-namespace",
                            "value": "opendatahub"
                          }
                        ],
                        "repoRef": {
                          "name": "manifests",
                          "path": "model-mesh"
                        }
                      },
                      "name": "model-mesh"
                    }
                  ],
                  "repos": [
                    {
                      "name": "manifests",
                      "uri": "file:///opt/manifests/odh-manifests.tar.gz"
                    }
                  ]
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhApplication",
                "metadata": {
                  "name": "example-odhapplication",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started,Model development,Model training,Notebook environments,Package management,Data Management"
                  }
                },
                "spec": {
                  "displayName": "ODHAPPLICATION DISPLAY NAME",
                  "provider": "PROVIDER_NAME",
                  "description": "Description of your ODHApplication",
                  "kfdefApplications": [
                    "<NAME OF THE ODH APPLICATION IN KFDEF>"
                  ],
                  "route": "<APPLICATION_OCP_ROUTE_OBJECT_NAME>",
                  "img": "<svg xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" viewBox=\"-1.13 -1.13 58.50 48.94\"><title>Open Data Hub logo</title><g><g><g fill=\"#4d5258\" stroke-width=\".006\"><path fill=\"#bbb\" d=\"M112.30231 22.797083c-.2034 0-.35737.143517-.35737.337407 0 .192939.15397.339307.35737.339307.20339 0 .35736-.147318.35736-.339307 0-.19294-.15397-.337407-.35736-.337407zm.002.131161c.1112 0 .20149.08934.20149.206246 0 .116904-.0903.208146-.20149.208146-.1112 0-.2053-.09124-.2053-.208146 0-.116904.0931-.206246.2053-.206246zM113.04141 22.801836h-.28228v.665308h.15017v-.190088h.13211c.16918 0 .26612-.08934.26612-.244263 0-.147319-.0969-.230957-.26612-.230957zm-.008.349762h-.12451v-.225255h.12451c.0836 0 .13116.03707.13116.111202 0 .07603-.0475.114053-.13116.114053zM113.40328 22.801836v.665308h.51703v-.124508h-.36687v-.147318h.32125V23.07081h-.32125v-.144467h.35642v-.124507zM114.03814 22.801836v.665308h.14352v-.426748l.3222.426748h.13686v-.665308h-.14257v.427698L114.175 22.801836z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/><path d=\"M115.29685 22.801836h-.28228v.665308h.27658c.21004 0 .35546-.136863.35546-.332654 0-.196741-.14351-.332654-.34976-.332654zm.004.538899h-.13591v-.412491h.12926c.11405 0 .19959.08459.19959.207196 0 .121657-.0817.205295-.19294.205295zM116.21878 23.467144h.16062l-.28418-.665308h-.15492l-.28894.665308h.15493l.0523-.12926h.30794zm-.3108-.249966l.1055-.25852.10455.25852zM116.31525 22.801836v.127359h.20244v.537949h.15017v-.537949h.2034v-.127359zM117.37527 23.467144h.16063l-.28419-.665308h-.15492l-.28893.665308h.15492l.0523-.12926h.30795zm-.31079-.249966l.1055-.25852.10454.25852zM117.83433 22.801836v.665308h.15017v-.262322h.30129v.262322h.15017v-.665308h-.15017v.277528h-.30129v-.277528zM118.72025 23.188665v-.386829h-.15017v.386829c0 .175831.11785.285132.30224.285132.18343 0 .29844-.109301.29844-.285132v-.386829h-.15017v.386829c0 .09599-.0589.153971-.14827.153971-.0893 0-.15207-.05798-.15207-.153971zM119.61059 22.801836h-.30604v.665308h.31649c.15492 0 .25092-.07033.25092-.184385 0-.08744-.0532-.152071-.13876-.168228.0713-.01806.115-.07413.115-.146368 0-.102648-.0912-.166327-.23761-.166327zm-.008.268024h-.14826v-.145418h.14826c.0561 0 .0913.02566.0913.07128 0 .04657-.0352.07413-.0913.07413zm0 .274677h-.14826v-.158723h.14826c.0713 0 .11406.02946.11406.07794 0 .05132-.0428.08079-.11406.08079z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g><g fill=\"#58595b\" stroke-width=\".01\"><path d=\"M112.19192 24.15027h.0381l-.13717-.306759h-.0364l-.1376.306759h.0372l.0342-.07844h.16696zm-.18712-.110871l.0688-.157763.0697.157763zM112.27858 23.843511v.306759h.0351v-.306759zM112.64205 23.843511h-.11525v.306759h.0351v-.09729h.0802c.0758 0 .11964-.039.11964-.10649 0-.0653-.0438-.102983-.11964-.102983zm-.001.177044h-.0789V23.87594h.0789c.0552 0 .0872.02454.0872.07143 0 .0482-.032.07318-.0872.07318zM112.81775 23.825105v.325165h.0342v-.325165zM113.1137 24.15027l-.00044-.152503c-.00044-.04908-.032-.07932-.089-.07932-.0394 0-.0644.01139-.0942.03111l.0145.0241c.0241-.01709.0478-.02673.0732-.02673.0408 0 .0618.0206.0618.05434v.01446h-.0758c-.0543.000439-.0863.02586-.0863.06617 0 .03944.0307.06968.0784.06968.0368 0 .0662-.01227.0846-.03725v.03593zm-.11131-.02717c-.0324 0-.053-.01709-.053-.04251 0-.02585.0202-.03769.0587-.03769h.0719v.02805c-.009.03287-.0386.05215-.0776.05215zM113.29915 24.108201c-.0127.0074-.025.01139-.0368.01183-.0197 0-.0307-.01139-.0307-.03944v-.127086h.0732v-.02673h-.0732v-.06048h-.0337v.06048h-.0333v.02673h.0333v.132783c0 .04558.025.06573.0587.0653.0184 0 .0359-.0061.0521-.01709zM113.44228 23.854466c.0118 0 .0245.0044.0351.01183l.014-.02629c-.014-.01052-.032-.01622-.0495-.01622-.0386-.000438-.0741.02717-.0741.07713v.02586h-.0298v.02673h.0298v.196764h.0337v-.196764h.0662v-.02673h-.0662v-.03024c0-.02717.0184-.04251.0408-.04207zM113.59236 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM113.80323 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM114.22747 23.918448c-.0443.000438-.0767.01972-.0911.06004-.01-.03813-.0394-.06004-.0828-.06004-.0416.000438-.0727.01753-.0881.05346v-.05215h-.0337v.230508h.0337v-.113501c0-.04996.0285-.08458.0758-.08589.0403 0 .064.02454.064.06617v.133221h.0346v-.113501c0-.04996.0276-.08458.0754-.08589.0399 0 .064.02454.064.06617v.133221h.0342V24.00828c0-.05609-.032-.08984-.0859-.08984zM114.63474 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0487.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11088-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM114.89934 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM115.02844 23.919762l.0863.230508h.0355l.0675-.188876.0679.188876h.0355l.0855-.230508h-.0355l-.0675.195888-.0679-.195888h-.0359l-.067.195888-.0684-.195888zM115.53009 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM115.73075 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM115.95034 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11482.116569.0386 0 .071-.01402.0929-.03813l-.0188-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18843c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM116.29474 23.825105v.144615c-.0171-.03287-.0491-.05171-.0903-.05171-.0653 0-.11087.04777-.11087.116569 0 .0688.0456.117445.11131.117445.0412 0 .0727-.01884.0898-.05127v.04952h.0342v-.325165zm-.0833.297557c-.0491 0-.0837-.03637-.0837-.08721 0-.05083.0346-.08765.0837-.08765.0486 0 .0833.03681.0833.08765 0 .05083-.0346.08721-.0833.08721zM116.65984 23.918448c-.0403 0-.0719.01884-.089.05083v-.144177h-.0342v.325165h.0342v-.04952c.0171.03199.0486.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM116.89657 24.183138l.10605-.263376h-.0351l-.0732.191944-.0767-.191944h-.0359l.0955.228756-.01.02191c-.009.02191-.0241.03331-.0421.03331-.0114 0-.0219-.0035-.0324-.01095l-.0145.02717c.014.01139.0294.01665.0486.01665.0307 0 .0548-.01841.0692-.05346zM117.29947 23.842634c-.0898 0-.16083.06793-.16083.154257 0 .08633.071.154694.16083.154694.0894 0 .16039-.06836.16039-.154694 0-.08633-.071-.154257-.16039-.154257zm0 .03243c.0684 0 .12446.0539.12446.121828 0 .06792-.0561.122703-.12446.122703-.0684 0-.12533-.05478-.12533-.122703 0-.06793.057-.121828.12533-.121828zM117.64414 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0486.05083.0898.05083.0653 0 .10999-.04777.10999-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM117.9061 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM118.19616 23.918448c-.0421.000438-.0732.01709-.0894.05215v-.05084h-.0342v.230508h.0342v-.12358c.004-.0447.032-.07494.0776-.07537.0408 0 .0653.02454.0653.06573v.133221h.0342v-.141986c0-.05609-.0324-.08984-.0876-.08984zM118.65836 23.901795l.0149-.03111c-.0254-.01709-.0618-.02848-.0973-.02848-.0635 0-.10605.03068-.10605.07888 0 .109995.17266.06661.17222.148559 0 .0298-.0276.04777-.0719.04777-.0346 0-.0736-.01578-.1021-.04295l-.0158.03024c.0289.02761.0727.04689.11745.04689.0657 0 .11087-.03287.11087-.0837.00044-.11131-.17223-.06968-.17223-.149436 0-.02629.0259-.04207.0653-.04207.0245 0 .057.0075.0846.02542zM118.84168 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .11701-.04777.11701-.117007 0-.06836-.0487-.11613-.11701-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM119.18446 23.919762v.113063c0 .04996-.0281.08502-.0758.08589-.0399 0-.064-.02454-.064-.06573v-.133222h-.0342v.141986c0 .05565.0324.08984.0863.08984.0416-.000438.0723-.01753.0876-.05346v.05215h.0342v-.230508zM119.33586 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM119.62557 23.976294l.0188-.02366c-.021-.02147-.0517-.03418-.089-.03418-.0666 0-.11438.0482-.11438.116568 0 .0688.0473.116569.11438.116569.0399 0 .0719-.0149.0925-.03988l-.0197-.02016c-.0162.01928-.0412.0298-.0714.0298-.0478 0-.082-.03506-.082-.08633 0-.05083.0342-.08589.082-.08589.028 0 .0513.01008.0688.02717zM119.78997 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g></g><g><g><path fill=\"#a586f3\" d=\"m 7808.8125,2097.1875 c -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 v 329.875 c -0.8781,10.2195 7.1804,19 17.4375,19 10.2571,0 19.0227,-8.7805 18.1446,-19 v -77.7324 l 0.4179,-6.1426 c 0,-55.1597 44.2153,-99.5625 99.375,-99.5625 55.1596,0 99.5625,44.4028 99.5625,99.5625 0.01,0.1837 0.015,0.3674 0.027,0.5508 -0.026,0.4409 -0.035,0.8826 -0.027,1.3242 v 110 c 0,9.6822 7.849,17.5312 17.5312,17.5312 9.6823,0 17.5313,-7.849 17.5313,-17.5312 v -110 c 0,-0.3245 -0.012,-0.6488 -0.031,-0.9727 0.018,-0.3004 0.029,-0.6013 0.031,-0.9023 1e-4,-74.075 -60.55,-134.4374 -134.625,-134.4375 -39.9177,1e-4 -75.8465,17.5354 -100.5,45.293 V 2115 c 0.1749,-9.8356 -7.7881,-17.8833 -17.625,-17.8125 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><path fill=\"#5ed3ee\" d=\"m 7765.8027,2098.123 c -0.038,5e-4 -0.077,0 -0.1152,0 -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 V 2361 c 0,41.9333 -26.0162,79.2671 -65.4375,93.5625 -39.4213,14.2954 -83.5594,2.3741 -110.4375,-29.8125 -26.878,-32.1865 -30.6579,-77.5719 -9.5625,-113.8125 21.0955,-36.2406 62.4262,-55.2897 103.6875,-47.8125 9.5173,1.7397 18.6463,-4.5547 20.4043,-14.0686 1.758,-9.514 -4.5187,-18.6551 -14.0293,-20.4314 -55.6354,-10.082 -111.8054,15.8219 -140.25,64.6875 -28.4446,48.8656 -23.3039,110.5381 12.9375,153.9375 36.2415,43.3993 95.908,59.4005 149.0625,40.125 44.7667,-16.2337 77.0286,-54.658 86.0977,-100.1562 0,0 1.9812,-4.7686 2.5898,-9.1563 0.6086,-4.3877 0,-17.0625 0,-17.0625 v -245.0625 c 0.1769,-9.865 -7.8313,-17.9263 -17.6973,-17.8145 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><g fill=\"none\" stroke-width=\".365\" transform=\"translate(-449.265 -83.342) scale(5.91262)\"><circle cx=\"79.677\" cy=\"16.823\" r=\".645\" stroke=\"#c6ea70\"/><path stroke=\"#dff3b1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 80.808656,18.234303 a 1.8088735,1.8088735 0 0 1 -2.309183,-0.03848 1.8088735,1.8088735 0 0 1 -0.389241,-2.276466 1.8088735,1.8088735 0 0 1 2.165211,-0.803532\"/><path stroke=\"#f2fadf\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 82.216272,17.248644 a 2.455857,2.4425189 0 0 1 -2.468226,2.016391 2.455857,2.4425189 0 0 1 -2.383743,-2.114547 2.455857,2.4425189 0 0 1 1.733108,-2.668494\"/></g></g></g></g></svg>",
                  "category": "Open Data Hub",
                  "support": "open data hub",
                  "docsLink": "http://REPLACE.THIS.URL",
                  "quickStart": "example-odhquickstart",
                  "getStartedLink": "http://REPLACE.THIS.URL",
                  "getStartedMarkDown": "# Header for Getting Started MarkDown section\nHere is where you add information about your ODHApplication in markdown format\n\n1. List item\n1. List item\n1. List item"
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhDocument",
                "metadata": {
                  "name": "example-odhdocument",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHDocument",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "type": "how-to",
                  "description": "This is an example of an ODHDocument custom resource",
                  "url": "http://REPLACE.THIS.URL",
                  "durationMinutes": 5
                }
              },
              {
                "apiVersion": "console.openshift.io/v1",
                "kind": "OdhQuickStart",
                "metadata": {
                  "name": "example-odhquickstart",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHQuickstart Name",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "durationMinutes": 5,
                  "description": "Description of an example quickstart",
                  "introduction": "### Introduction Header\nThis is the body of the introduction for an ODHQuickstart",
                  "tasks": [
                    {
                      "title": "Title of the first task",
                      "description": "### Description header for the first task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the first task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    },
                    {
                      "title": "Title of the second task",
                      "description": "### Description header for the second task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the second task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    }
                  ],
                  "conclusion": "Message for the conclusion of the ODHQuickstart",
                  "nextQuickStart": null
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v1.11.0
          createdAt: "2023-10-31T00:00:00Z"
          description: Open Data Hub Operator for deployment and management of Open
            Data Hub
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/opendatahub-io/opendatahub-operator
          support: Open Data Hub
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AcceleratorProfile is the Schema for the acceleratorprofiles
            displayName: AcceleratorProfile
            kind: AcceleratorProfile
            name: acceleratorprofiles.dashboard.opendatahub.io
            version: v1alpha
          - description: KfDef is the Schema for the kfdefs API
            displayName: Kf Def
            kind: KfDef
            name: kfdefs.kfdef.apps.kubeflow.org
            version: v1
          - description: OdhApplication is the Schema for the odhapplications
            displayName: Open Data Hub Dashboard Application
            kind: OdhApplication
            name: odhapplications.dashboard.opendatahub.io
            version: v1
          - description: OdhDashboardConfig is the Schema for the odhdashboardconfigs
            displayName: Open Data Hub Dashboard Configuration
            kind: OdhDashboardConfig
            name: odhdashboardconfigs.opendatahub.io
            version: v1alpha
          - description: OdhDocument is the Schema for the odhdocuments
            displayName: Open Data Hub Dashboard Documentation
            kind: OdhDocument
            name: odhdocuments.dashboard.opendatahub.io
            version: v1
          - description: Extension for guiding user through various workflows in the
              Open Data Hub dashboard.
            displayName: Open Data Hub Dashboard QuickStart
            kind: OdhQuickStart
            name: odhquickstarts.console.openshift.io
            version: v1
        description: |
          The Open Data Hub is a machine-learning-as-a-service platform built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open Data Hub integrates multiple AI/ML open source components into one operator that can easily be downloaded and installed by OpenShift users.

          Open Data Hub operator allows users to install and manage components of the Open Data Hub. Users can mix and match tools from each project to fulfill the needs of their use case. Each of the
          projects share some components, but can be mostly seen as an extension of each other to provide a complete solution for both novice and skilled enterprise users.

          ### Components
          * Open Data Hub Dashboard - A web dashboard that displays installed Open Data Hub components with easy access to component UIs and documentation
          * ODH Notebook Controller - Secure management of Jupyter Notebook in Kubernetes environments built on top of Kubeflow Notebook Controller with support for OAuth
          * Jupyter Notebooks - JupyterLab notebook that provide Python support for GPU workloads
          * Data Science Pipelines - Pipeline solution for end to end MLOps workflows that support the Kubeflow Pipelines SDK and Tekton
          * Model Mesh - ModelMesh Serving is the Controller for managing ModelMesh, a general-purpose model serving management/routing layer.
          * TrustyAI - TrustyAI is an open source AI Explainability (XAI) Toolkit

          To install one or multiple of these components use the default KfDef provided with the operator.
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: opendatahub@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Open Data Hub
        relatedImages:
        - quay.io/openshift-community-operators/opendatahub-operator@sha256:2992841660e8b1664fa2ce06da894aa828d4ea1be3eb5b27476efdd73731486a
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/opendatahub/opendatahub-operator:v1.11.0
        version: 1.11.0
      entries:
      - name: opendatahub-operator.v1.11.0
        version: 1.11.0
      - name: opendatahub-operator.v1.10.1
        version: 1.10.1
      - name: opendatahub-operator.v1.10.0
        version: 1.10.0
      - name: opendatahub-operator.v1.9.0
        version: 1.9.0
      - name: opendatahub-operator.v1.8.0
        version: 1.8.0
      - name: opendatahub-operator.v1.7.0
        version: 1.7.0
      - name: opendatahub-operator.v1.6.0
        version: 1.6.0
      - name: opendatahub-operator.v1.5.0
        version: 1.5.0
      - name: opendatahub-operator.v1.4.2
        version: 1.4.2
      - name: opendatahub-operator.v1.4.1
        version: 1.4.1
      - name: opendatahub-operator.v1.4.0
        version: 1.4.0
      - name: opendatahub-operator.v1.3.0
        version: 1.3.0
      - name: opendatahub-operator.v1.2.0
        version: 1.2.0
      - name: opendatahub-operator.v1.1.2
        version: 1.1.2
      - name: opendatahub-operator.v1.1.1
        version: 1.1.1
      name: rolling
    - currentCSV: opendatahub-operator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kfdef.apps.kubeflow.org/v1",
                "kind": "KfDef",
                "metadata": {
                  "name": "opendatahub",
                  "namespace": "opendatahub"
                },
                "spec": {
                  "applications": [
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-common"
                        }
                      },
                      "name": "odh-common"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-dashboard"
                        }
                      },
                      "name": "odh-dashboard"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "prometheus/cluster"
                        }
                      },
                      "name": "prometheus-cluster"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "prometheus/operator"
                        }
                      },
                      "name": "prometheus-operator"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "grafana/cluster"
                        }
                      },
                      "name": "grafana-cluster"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "grafana/grafana"
                        }
                      },
                      "name": "grafana-instance"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-notebook-controller"
                        }
                      },
                      "name": "odh-notebook-controller"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "notebook-images"
                        }
                      },
                      "name": "notebook-images"
                    },
                    {
                      "kustomizeConfig": {
                        "overlays": [
                          "odh-model-controller"
                        ],
                        "repoRef": {
                          "name": "manifests",
                          "path": "model-mesh"
                        }
                      },
                      "name": "model-mesh"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "data-science-pipelines-operator"
                        }
                      },
                      "name": "data-science-pipelines-operator"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "trustyai-service"
                        }
                      },
                      "name": "trustyai"
                    }
                  ],
                  "repos": [
                    {
                      "name": "manifests",
                      "uri": "https://github.com/opendatahub-io/odh-manifests/tarball/v1.5"
                    }
                  ]
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhApplication",
                "metadata": {
                  "name": "example-odhapplication",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started,Model development,Model training,Notebook environments,Package management,Data Management"
                  }
                },
                "spec": {
                  "displayName": "ODHAPPLICATION DISPLAY NAME",
                  "provider": "PROVIDER_NAME",
                  "description": "Description of your ODHApplication",
                  "kfdefApplications": [
                    "<NAME OF THE ODH APPLICATION IN KFDEF>"
                  ],
                  "route": "<APPLICATION_OCP_ROUTE_OBJECT_NAME>",
                  "img": "<svg xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" viewBox=\"-1.13 -1.13 58.50 48.94\"><title>Open Data Hub logo</title><g><g><g fill=\"#4d5258\" stroke-width=\".006\"><path fill=\"#bbb\" d=\"M112.30231 22.797083c-.2034 0-.35737.143517-.35737.337407 0 .192939.15397.339307.35737.339307.20339 0 .35736-.147318.35736-.339307 0-.19294-.15397-.337407-.35736-.337407zm.002.131161c.1112 0 .20149.08934.20149.206246 0 .116904-.0903.208146-.20149.208146-.1112 0-.2053-.09124-.2053-.208146 0-.116904.0931-.206246.2053-.206246zM113.04141 22.801836h-.28228v.665308h.15017v-.190088h.13211c.16918 0 .26612-.08934.26612-.244263 0-.147319-.0969-.230957-.26612-.230957zm-.008.349762h-.12451v-.225255h.12451c.0836 0 .13116.03707.13116.111202 0 .07603-.0475.114053-.13116.114053zM113.40328 22.801836v.665308h.51703v-.124508h-.36687v-.147318h.32125V23.07081h-.32125v-.144467h.35642v-.124507zM114.03814 22.801836v.665308h.14352v-.426748l.3222.426748h.13686v-.665308h-.14257v.427698L114.175 22.801836z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/><path d=\"M115.29685 22.801836h-.28228v.665308h.27658c.21004 0 .35546-.136863.35546-.332654 0-.196741-.14351-.332654-.34976-.332654zm.004.538899h-.13591v-.412491h.12926c.11405 0 .19959.08459.19959.207196 0 .121657-.0817.205295-.19294.205295zM116.21878 23.467144h.16062l-.28418-.665308h-.15492l-.28894.665308h.15493l.0523-.12926h.30794zm-.3108-.249966l.1055-.25852.10455.25852zM116.31525 22.801836v.127359h.20244v.537949h.15017v-.537949h.2034v-.127359zM117.37527 23.467144h.16063l-.28419-.665308h-.15492l-.28893.665308h.15492l.0523-.12926h.30795zm-.31079-.249966l.1055-.25852.10454.25852zM117.83433 22.801836v.665308h.15017v-.262322h.30129v.262322h.15017v-.665308h-.15017v.277528h-.30129v-.277528zM118.72025 23.188665v-.386829h-.15017v.386829c0 .175831.11785.285132.30224.285132.18343 0 .29844-.109301.29844-.285132v-.386829h-.15017v.386829c0 .09599-.0589.153971-.14827.153971-.0893 0-.15207-.05798-.15207-.153971zM119.61059 22.801836h-.30604v.665308h.31649c.15492 0 .25092-.07033.25092-.184385 0-.08744-.0532-.152071-.13876-.168228.0713-.01806.115-.07413.115-.146368 0-.102648-.0912-.166327-.23761-.166327zm-.008.268024h-.14826v-.145418h.14826c.0561 0 .0913.02566.0913.07128 0 .04657-.0352.07413-.0913.07413zm0 .274677h-.14826v-.158723h.14826c.0713 0 .11406.02946.11406.07794 0 .05132-.0428.08079-.11406.08079z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g><g fill=\"#58595b\" stroke-width=\".01\"><path d=\"M112.19192 24.15027h.0381l-.13717-.306759h-.0364l-.1376.306759h.0372l.0342-.07844h.16696zm-.18712-.110871l.0688-.157763.0697.157763zM112.27858 23.843511v.306759h.0351v-.306759zM112.64205 23.843511h-.11525v.306759h.0351v-.09729h.0802c.0758 0 .11964-.039.11964-.10649 0-.0653-.0438-.102983-.11964-.102983zm-.001.177044h-.0789V23.87594h.0789c.0552 0 .0872.02454.0872.07143 0 .0482-.032.07318-.0872.07318zM112.81775 23.825105v.325165h.0342v-.325165zM113.1137 24.15027l-.00044-.152503c-.00044-.04908-.032-.07932-.089-.07932-.0394 0-.0644.01139-.0942.03111l.0145.0241c.0241-.01709.0478-.02673.0732-.02673.0408 0 .0618.0206.0618.05434v.01446h-.0758c-.0543.000439-.0863.02586-.0863.06617 0 .03944.0307.06968.0784.06968.0368 0 .0662-.01227.0846-.03725v.03593zm-.11131-.02717c-.0324 0-.053-.01709-.053-.04251 0-.02585.0202-.03769.0587-.03769h.0719v.02805c-.009.03287-.0386.05215-.0776.05215zM113.29915 24.108201c-.0127.0074-.025.01139-.0368.01183-.0197 0-.0307-.01139-.0307-.03944v-.127086h.0732v-.02673h-.0732v-.06048h-.0337v.06048h-.0333v.02673h.0333v.132783c0 .04558.025.06573.0587.0653.0184 0 .0359-.0061.0521-.01709zM113.44228 23.854466c.0118 0 .0245.0044.0351.01183l.014-.02629c-.014-.01052-.032-.01622-.0495-.01622-.0386-.000438-.0741.02717-.0741.07713v.02586h-.0298v.02673h.0298v.196764h.0337v-.196764h.0662v-.02673h-.0662v-.03024c0-.02717.0184-.04251.0408-.04207zM113.59236 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM113.80323 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM114.22747 23.918448c-.0443.000438-.0767.01972-.0911.06004-.01-.03813-.0394-.06004-.0828-.06004-.0416.000438-.0727.01753-.0881.05346v-.05215h-.0337v.230508h.0337v-.113501c0-.04996.0285-.08458.0758-.08589.0403 0 .064.02454.064.06617v.133221h.0346v-.113501c0-.04996.0276-.08458.0754-.08589.0399 0 .064.02454.064.06617v.133221h.0342V24.00828c0-.05609-.032-.08984-.0859-.08984zM114.63474 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0487.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11088-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM114.89934 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM115.02844 23.919762l.0863.230508h.0355l.0675-.188876.0679.188876h.0355l.0855-.230508h-.0355l-.0675.195888-.0679-.195888h-.0359l-.067.195888-.0684-.195888zM115.53009 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM115.73075 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM115.95034 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11482.116569.0386 0 .071-.01402.0929-.03813l-.0188-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18843c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM116.29474 23.825105v.144615c-.0171-.03287-.0491-.05171-.0903-.05171-.0653 0-.11087.04777-.11087.116569 0 .0688.0456.117445.11131.117445.0412 0 .0727-.01884.0898-.05127v.04952h.0342v-.325165zm-.0833.297557c-.0491 0-.0837-.03637-.0837-.08721 0-.05083.0346-.08765.0837-.08765.0486 0 .0833.03681.0833.08765 0 .05083-.0346.08721-.0833.08721zM116.65984 23.918448c-.0403 0-.0719.01884-.089.05083v-.144177h-.0342v.325165h.0342v-.04952c.0171.03199.0486.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM116.89657 24.183138l.10605-.263376h-.0351l-.0732.191944-.0767-.191944h-.0359l.0955.228756-.01.02191c-.009.02191-.0241.03331-.0421.03331-.0114 0-.0219-.0035-.0324-.01095l-.0145.02717c.014.01139.0294.01665.0486.01665.0307 0 .0548-.01841.0692-.05346zM117.29947 23.842634c-.0898 0-.16083.06793-.16083.154257 0 .08633.071.154694.16083.154694.0894 0 .16039-.06836.16039-.154694 0-.08633-.071-.154257-.16039-.154257zm0 .03243c.0684 0 .12446.0539.12446.121828 0 .06792-.0561.122703-.12446.122703-.0684 0-.12533-.05478-.12533-.122703 0-.06793.057-.121828.12533-.121828zM117.64414 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0486.05083.0898.05083.0653 0 .10999-.04777.10999-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM117.9061 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM118.19616 23.918448c-.0421.000438-.0732.01709-.0894.05215v-.05084h-.0342v.230508h.0342v-.12358c.004-.0447.032-.07494.0776-.07537.0408 0 .0653.02454.0653.06573v.133221h.0342v-.141986c0-.05609-.0324-.08984-.0876-.08984zM118.65836 23.901795l.0149-.03111c-.0254-.01709-.0618-.02848-.0973-.02848-.0635 0-.10605.03068-.10605.07888 0 .109995.17266.06661.17222.148559 0 .0298-.0276.04777-.0719.04777-.0346 0-.0736-.01578-.1021-.04295l-.0158.03024c.0289.02761.0727.04689.11745.04689.0657 0 .11087-.03287.11087-.0837.00044-.11131-.17223-.06968-.17223-.149436 0-.02629.0259-.04207.0653-.04207.0245 0 .057.0075.0846.02542zM118.84168 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .11701-.04777.11701-.117007 0-.06836-.0487-.11613-.11701-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM119.18446 23.919762v.113063c0 .04996-.0281.08502-.0758.08589-.0399 0-.064-.02454-.064-.06573v-.133222h-.0342v.141986c0 .05565.0324.08984.0863.08984.0416-.000438.0723-.01753.0876-.05346v.05215h.0342v-.230508zM119.33586 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM119.62557 23.976294l.0188-.02366c-.021-.02147-.0517-.03418-.089-.03418-.0666 0-.11438.0482-.11438.116568 0 .0688.0473.116569.11438.116569.0399 0 .0719-.0149.0925-.03988l-.0197-.02016c-.0162.01928-.0412.0298-.0714.0298-.0478 0-.082-.03506-.082-.08633 0-.05083.0342-.08589.082-.08589.028 0 .0513.01008.0688.02717zM119.78997 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g></g><g><g><path fill=\"#a586f3\" d=\"m 7808.8125,2097.1875 c -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 v 329.875 c -0.8781,10.2195 7.1804,19 17.4375,19 10.2571,0 19.0227,-8.7805 18.1446,-19 v -77.7324 l 0.4179,-6.1426 c 0,-55.1597 44.2153,-99.5625 99.375,-99.5625 55.1596,0 99.5625,44.4028 99.5625,99.5625 0.01,0.1837 0.015,0.3674 0.027,0.5508 -0.026,0.4409 -0.035,0.8826 -0.027,1.3242 v 110 c 0,9.6822 7.849,17.5312 17.5312,17.5312 9.6823,0 17.5313,-7.849 17.5313,-17.5312 v -110 c 0,-0.3245 -0.012,-0.6488 -0.031,-0.9727 0.018,-0.3004 0.029,-0.6013 0.031,-0.9023 1e-4,-74.075 -60.55,-134.4374 -134.625,-134.4375 -39.9177,1e-4 -75.8465,17.5354 -100.5,45.293 V 2115 c 0.1749,-9.8356 -7.7881,-17.8833 -17.625,-17.8125 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><path fill=\"#5ed3ee\" d=\"m 7765.8027,2098.123 c -0.038,5e-4 -0.077,0 -0.1152,0 -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 V 2361 c 0,41.9333 -26.0162,79.2671 -65.4375,93.5625 -39.4213,14.2954 -83.5594,2.3741 -110.4375,-29.8125 -26.878,-32.1865 -30.6579,-77.5719 -9.5625,-113.8125 21.0955,-36.2406 62.4262,-55.2897 103.6875,-47.8125 9.5173,1.7397 18.6463,-4.5547 20.4043,-14.0686 1.758,-9.514 -4.5187,-18.6551 -14.0293,-20.4314 -55.6354,-10.082 -111.8054,15.8219 -140.25,64.6875 -28.4446,48.8656 -23.3039,110.5381 12.9375,153.9375 36.2415,43.3993 95.908,59.4005 149.0625,40.125 44.7667,-16.2337 77.0286,-54.658 86.0977,-100.1562 0,0 1.9812,-4.7686 2.5898,-9.1563 0.6086,-4.3877 0,-17.0625 0,-17.0625 v -245.0625 c 0.1769,-9.865 -7.8313,-17.9263 -17.6973,-17.8145 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><g fill=\"none\" stroke-width=\".365\" transform=\"translate(-449.265 -83.342) scale(5.91262)\"><circle cx=\"79.677\" cy=\"16.823\" r=\".645\" stroke=\"#c6ea70\"/><path stroke=\"#dff3b1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 80.808656,18.234303 a 1.8088735,1.8088735 0 0 1 -2.309183,-0.03848 1.8088735,1.8088735 0 0 1 -0.389241,-2.276466 1.8088735,1.8088735 0 0 1 2.165211,-0.803532\"/><path stroke=\"#f2fadf\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 82.216272,17.248644 a 2.455857,2.4425189 0 0 1 -2.468226,2.016391 2.455857,2.4425189 0 0 1 -2.383743,-2.114547 2.455857,2.4425189 0 0 1 1.733108,-2.668494\"/></g></g></g></g></svg>",
                  "category": "Open Data Hub",
                  "support": "open data hub",
                  "docsLink": "http://REPLACE.THIS.URL",
                  "quickStart": "example-odhquickstart",
                  "getStartedLink": "http://REPLACE.THIS.URL",
                  "getStartedMarkDown": "# Header for Getting Started MarkDown section\nHere is where you add information about your ODHApplication in markdown format\n\n1. List item\n1. List item\n1. List item"
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhDocument",
                "metadata": {
                  "name": "example-odhdocument",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHDocument",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "type": "how-to",
                  "description": "This is an example of an ODHDocument custom resource",
                  "url": "http://REPLACE.THIS.URL",
                  "durationMinutes": 5
                }
              },
              {
                "apiVersion": "console.openshift.io/v1",
                "kind": "OdhQuickStart",
                "metadata": {
                  "name": "example-odhquickstart",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHQuickstart Name",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "durationMinutes": 5,
                  "description": "Description of an example quickstart",
                  "introduction": "### Introduction Header\nThis is the body of the introduction for an ODHQuickstart",
                  "tasks": [
                    {
                      "title": "Title of the first task",
                      "description": "### Description header for the first task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the first task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    },
                    {
                      "title": "Title of the second task",
                      "description": "### Description header for the second task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the second task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    }
                  ],
                  "conclusion": "Message for the conclusion of the ODHQuickstart",
                  "nextQuickStart": null
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v1.5.0
          createdAt: "2022-10-18T00:00:00Z"
          description: Open Data Hub Operator for deployment and management of Open
            Data Hub
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/opendatahub-io/opendatahub-operator
          support: Open Data Hub
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KfDef is the Schema for the kfdefs API
            displayName: Kf Def
            kind: KfDef
            name: kfdefs.kfdef.apps.kubeflow.org
            version: v1
          - description: OdhApplication is the Schema for the odhapplications
            displayName: Open Data Hub Dashboard Application
            kind: OdhApplication
            name: odhapplications.dashboard.opendatahub.io
            version: v1
          - description: OdhDashboardConfig is the Schema for the odhdashboardconfigs
            displayName: Open Data Hub Dashboard Configuration
            kind: OdhDashboardConfig
            name: odhdashboardconfigs.opendatahub.io
            version: v1alpha
          - description: OdhDocument is the Schema for the odhdocuments
            displayName: Open Data Hub Dashboard Documentation
            kind: OdhDocument
            name: odhdocuments.dashboard.opendatahub.io
            version: v1
          - description: Extension for guiding user through various workflows in the
              Open Data Hub dashboard.
            displayName: Open Data Hub Dashboard QuickStart
            kind: OdhQuickStart
            name: odhquickstarts.console.openshift.io
            version: v1
        description: |
          The Open Data Hub is a machine-learning-as-a-service platform built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open Data Hub integrates multiple AI/ML open source components into one operator that can easily be downloaded and installed by OpenShift users.

          Open Data Hub operator allows users to install and manage components of the Open Data Hub. Users can mix and match tools from each project to fulfill the needs of their use case. Each of the
          projects share some components, but can be mostly seen as an extension of each other to provide a complete solution for both novice and skilled enterprise users.

          ### Components
          * Open Data Hub Dashboard - A web dashboard that displays installed Open Data Hub components with easy access to component UIs and documentation
          * ODH Notebook Controller - Secure management of Jupyter Notebook in Kubernetes environments built on top of Kubeflow Notebook Controller with support for OAuth
          * Jupyter Notebooks - JupyterLab notebook that provide Python support for GPU workloads
          * Data Science Pipelines - Pipeline solution for end to end MLOps workflows that support the Kubeflow Pipelines SDK and Tekton
          * Model Mesh - ModelMesh Serving is the Controller for managing ModelMesh, a general-purpose model serving management/routing layer.

          To install one or multiple of these components use the default KfDef provided with the operator.

          ### Available Channels

          #### Stable

          Channel `stable` offers the major releases of Open Data Hub operator and ODH manifests. It is based on Kubeflow Operator and Kustomize for deployment configuration. This version is compatible with [Open Data Hub manifests](https://github.com/opendatahub-io/odh-manifests/) as well as [Kubeflow manifests](https://github.com/opendatahub-io/manifests). This channel will offer new components and features that have been thoroughly tested by consumers of the `rolling` channel

          NOTE: The `stable` channel will be deprecated starting with the ODH 1.6 release and we will only be publishing updates on the `rolling` channel for all future releases

          #### Rolling

          Channel `rolling` will offer the latest release of Open Data Hub operator and manifests. Subscribing to this branch will provide faster updates and access to components that will be in developement and testing for the next stable release
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io
        maintainers:
        - email: maintainers@lists.opendatahub.io
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Open Data Hub
        relatedImages:
        - quay.io/opendatahub/opendatahub-operator:v1.5.0
        - quay.io/openshift-community-operators/opendatahub-operator@sha256:bf85a9da8a100a90deb3745497bc1505852910ef23dd12c624fa17de51bd8377
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        version: 1.5.0
      entries:
      - name: opendatahub-operator.v1.5.0
        version: 1.5.0
      - name: opendatahub-operator.v1.4.2
        version: 1.4.2
      - name: opendatahub-operator.v1.4.1
        version: 1.4.1
      - name: opendatahub-operator.v1.4.0
        version: 1.4.0
      - name: opendatahub-operator.v1.3.0
        version: 1.3.0
      - name: opendatahub-operator.v1.2.0
        version: 1.2.0
      - name: opendatahub-operator.v1.1.2
        version: 1.1.2
      - name: opendatahub-operator.v1.1.1
        version: 1.1.1
      name: stable
    defaultChannel: fast-3
    packageName: opendatahub-operator
    provider:
      name: ODH
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: VASTData
      provider-url: https://www.vastdata.com
    name: vast-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vast-csi-operator.v2.6.4
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"storage.vastdata.com/v1","kind":"VastCSIDriver","metadata":{"name":"csi.vastdata.com"},"spec":{"applySecurityContextConstraints":true,"attachRequired":true,"blockHostsAutoPrune":false,"controller":{"dnsPolicy":"Default","extraArgs":{"csiAttacher":[],"csiProvisioner":[],"csiResizer":[],"csiSnapshotter":[]},"nodeAffinity":{},"nodeSelector":{},"podAffinity":{},"podAntiAffinity":{},"resources":{"csiAttacher":{"limits":{"memory":"200Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiProvisioner":{"limits":{"memory":"400Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiResizer":{"limits":{"memory":"300Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiSnapshotter":{"limits":{"memory":"200Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiVastPlugin":{"limits":{"memory":"500Mi"},"requests":{"cpu":"100m","memory":"50Mi"}}},"runOnControlPlane":false,"runOnMaster":false,"tolerations":[]},"deletionViewPolicy":null,"deletionVipPool":null,"dontUseTrashApi":false,"driverType":"nfs","endpoint":null,"image":{"csiAttacher":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-attacher@sha256:b4d611100ece2f9bc980d1cb19c2285b8868da261e3b1ee8f45448ab5512ab94"},"csiNodeDriverRegistrar":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:f25af73ee708ff9c82595ae99493cdef9295bd96953366cddf36305f82555dac"},"csiProvisioner":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-provisioner@sha256:405a14e1aa702f7ea133cea459e8395fe40a6125c088c55569e696d48e1bd385"},"csiResizer":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-resizer@sha256:a541e6cc2d8b011bb21b1d4ffec6b090e85270cce6276ee302d86153eec0af43"},"csiSnapshotter":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-snapshotter@sha256:2e04046334baf9be425bb0fa1d04c2d1720d770825eedbdbcdb10d430da4ad8c"},"csiVastPlugin":{"imagePullPolicy":"IfNotPresent","repository":"registry.connect.redhat.com/vastdataorg/csi@sha256:596e9cbbd456de387ebb926e7fb57377c9c3d95b745b2f4baf8cf106c5e59718"}},"imagePullSecrets":[],"kubeletPath":"/var/lib/kubelet","logLevel":5,"node":{"dnsPolicy":"Default","nodeAffinity":{},"nodeSelector":{},"podAffinity":{},"podAntiAffinity":{},"propagateHostMountOptions":true,"resources":{"csiVastPlugin":{"limits":{"memory":"500Mi"},"requests":{"cpu":"200m","memory":"300Mi"}},"nodeDriverRegistrar":{"limits":{"memory":"100Mi"},"requests":{"cpu":"10m","memory":"20Mi"}}},"tolerations":[]},"numWorkers":10,"operationRetryIntervalMax":60,"operationRetryIntervalStart":10,"operationTimeout":15,"secretName":null,"sslCertsSecretName":null,"truncateVolumeName":64,"useLocalIpForMount":null,"verifySsl":false}},{"apiVersion":"storage.vastdata.com/v1","kind":"VastStorage","metadata":{"name":"vastdata-filesystem"},"spec":{"allowVolumeExpansion":true,"blockingClones":false,"clusterName":"","createSnapshotClass":true,"driverType":"nfs","ephemeralVolumeNameFormat":"csi:{namespace}:{name}:{id}","fsType":"","hostEncryption":null,"mountOptions":[],"provisioner":"","qosPolicy":"","reclaimPolicy":"Delete","secretName":"","secretNamespace":"","setDefaultStorageClass":false,"snapshotClass":{"deletionPolicy":"Delete","setDefaultSnapshotClass":false,"snapshotNameFormat":"csi:{namespace}:{name}:{id}"},"storagePath":"","subsystem":"","tenantName":"","viewPolicy":"","vipPool":"","vipPoolFQDN":null,"volumeGroup":"","volumeNameFormat":"csi:{namespace}:{name}:{id}"}},{"apiVersion":"storage.vastdata.com/v1","kind":"VastCluster","metadata":{"name":"vastcluster-sample"},"spec":{"endpoint":null,"passphrase":null,"password":null,"sslCert":null,"tenant":null,"token":null,"username":null}}]'
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/vastdataorg/csi-operator@sha256:a1c4675c5dd64687b6f4aba223e52708140582bd9ca55d06f88403d5253b823a
          createdAt: "2024-07-01T11:59:59Z"
          description: Kubernetes operator for automated deployment and lifecycle
            management of VAST Data CSI drivers.
          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"
          operatorframework.io/suggested-namespace: vast-csi
          operators.operatorframework.io/builder: operator-sdk-v1.3.0-ocp
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/vast-data/vast-csi
          support: VastData Infra Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VastCSIDriver is a common specification for VAST CSI Controller
              and VAST CSI Node plugins, typically intended for creation in a single
              instance.
            displayName: VastCSIDriver
            kind: VastCSIDriver
            name: vastcsidrivers.storage.vastdata.com
            version: v1
          - description: VastCluster encapsulates the connection details required
              for accessing a VAST cluster. This information is ultimately stored
              in a Kubernetes Secret.
            displayName: VastCluster
            kind: VastCluster
            name: vastclusters.storage.vastdata.com
            version: v1
          - description: Represents VAST storage. Each VastStorage instance generates
              a corresponding storage class that can be used in PVCs to create workloads.
            displayName: VastStorage
            kind: VastStorage
            name: vaststorages.storage.vastdata.com
            version: v1
        description: |-
          VAST CSI Operator supports seamless installation and upgrade of VAST Data's CSI Driver.
          The VAST CSI Driver allows container orchestration frameworks such as Kubernetes to dynamically provision, manage and scale volumes on the [VAST Data Platform](https://www.vastdata.com/platform/overview). VAST provides scalable, reliable, and fast persistent storage that can be accessed remotely by any Kubernetes application container.
          ### Installation
          Refer to the VASTData Operator for Kubernetes [official documentation](https://support.vastdata.com/s/document-item?bundleId=vast-csi-driver-2.6-administrator-s-guide&topicId=deploying-vast-csi-driver/deploying-vast-csi-driver-on-openshift-with-vast-csi-operator.html&_LANG=enus).
        displayName: VAST CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - VAST
        - VASTData
        - CSI
        - Multi Cluster
        - AI
        - High-Performance Computing
        links:
        - name: VAST CSI Plugin
          url: https://github.com/vast-data/vast-csi
        maintainers:
        - email: volodymyr.boiko@vastdata.com
          name: VAST Infrastructure Team
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: VASTData
          url: https://www.vastdata.com
        relatedImages:
        - registry.k8s.io/sig-storage/csi-attacher@sha256:b4d611100ece2f9bc980d1cb19c2285b8868da261e3b1ee8f45448ab5512ab94
        - registry.k8s.io/sig-storage/csi-resizer@sha256:a541e6cc2d8b011bb21b1d4ffec6b090e85270cce6276ee302d86153eec0af43
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:2e04046334baf9be425bb0fa1d04c2d1720d770825eedbdbcdb10d430da4ad8c
        - registry.connect.redhat.com/vastdataorg/csi-operator@sha256:a1c4675c5dd64687b6f4aba223e52708140582bd9ca55d06f88403d5253b823a
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:405a14e1aa702f7ea133cea459e8395fe40a6125c088c55569e696d48e1bd385
        - docker.io/kubebuilder/kube-rbac-proxy@sha256:a2523c532c0c3d51a5396a901d7ded23e402a9a1492c783aae27af6d0c1d2ec5
        - registry.connect.redhat.com/vastdataorg/csi-operator-bundle@sha256:64b6c40b3855c5cbba0aa22f83a0a38a3ed5ae69f8bd522dc00f608566c76bd0
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:f25af73ee708ff9c82595ae99493cdef9295bd96953366cddf36305f82555dac
        - registry.connect.redhat.com/vastdataorg/csi@sha256:596e9cbbd456de387ebb926e7fb57377c9c3d95b745b2f4baf8cf106c5e59718
        version: 2.6.4
      entries:
      - name: vast-csi-operator.v2.6.4
        version: 2.6.4
      name: stable
    defaultChannel: stable
    packageName: vast-csi-operator
    provider:
      name: VASTData
      url: https://www.vastdata.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Lightbits Labs
      provider-url: https://www.lightbitslabs.com
    name: lightbits-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lightbits-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "storage.lightbitslabs.com/v1alpha1",
                "kind": "CSIDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightbits-operator",
                    "app.kubernetes.io/instance": "csidriver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "csidriver",
                    "app.kubernetes.io/part-of": "lightbits-operator"
                  },
                  "name": "csi.lightbitslabs.com",
                  "namespace": "lightbits-operator"
                },
                "spec": {
                  "controller": {
                    "registry": "docker.lightbitslabs.com",
                    "repository": "lightbits-operator/lb-csi-plugin",
                    "tag": "v1.21.0-ubi9"
                  },
                  "node": {
                    "registry": "docker.lightbitslabs.com",
                    "repository": "lightbits-operator/lb-csi-plugin",
                    "sidecars": {
                      "lb-nvme-discovery-client": {
                        "registry": "docker.lightbitslabs.com",
                        "repository": "lightbits-operator/lb-nvme-discovery-client",
                        "tag": "v1.21.0-ubi9"
                      }
                    },
                    "tag": "v1.21.0-ubi9"
                  }
                }
              },
              {
                "apiVersion": "storage.lightbitslabs.com/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightbits-operator",
                    "app.kubernetes.io/instance": "cluster1",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cluster",
                    "app.kubernetes.io/part-of": "lightbits-operator"
                  },
                  "name": "cluster1",
                  "namespace": "lightbits-operator"
                },
                "spec": {
                  "addresses": "192.168.40.46,192.168.40.47,192.168.40.48",
                  "apiService": "192.168.40.46:443,192.168.40.47:443,192.168.40.48:443",
                  "clusterAdminSecretName": "lb-secret",
                  "clusterName": "cluster1"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          com.redhat.openshift.versions: v4.17
          containerImage: docker.lightbitslabs.com/lightbits-operator/lightbits-operator@sha256:9eaec3c91c5403f2f9e26c128da4ca779cacdc0f21f09f721001bdf0ae1a74f5
          createdAt: "2025-11-24T15:33:38Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/supported-versions: v4.17
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/internal-objects: '[]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io/suggested-namespace: lightbits-operator
          repository: https://github.com/LightBitsLabs/lightbits-operator
          support: Lightbits Labs <support@lightbitslabs.com>
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster is the Schema for the clusters API
            displayName: Lightbits Cluster
            kind: Cluster
            name: clusters.storage.lightbitslabs.com
            version: v1alpha1
          - description: CSIDriver is the Schema for the csidrivers API
            displayName: Lightbits CSI Driver
            kind: CSIDriver
            name: csidrivers.storage.lightbitslabs.com
            version: v1alpha1
        description: |-
          Operator for deploying and managing Lightbits CSI driver.

          By using the operator users can quickly and easily deploy and upgrade Lightbits CSI Driver.

          ## Requirements

          - Kernel support for NVMe-TCP
          - Kernel support for NVMe Asymmetric Namespace Access (ANA)

          ## CSI driver Supported Features

          - Filesystem Volumes (xfs/ext4)
          - Raw Block Volumes
          - Dynamic/Static Provisioning
          - Volume Snapshots
          - Volume Clones
          - Multi-Tenancy & Credentials
          - Volume Expansion (Online/Offline)
          - Storage Capacity Tracking
          - Host-Side Encryption (LUKS)
          - Publish ReadOnly volumes

          ## How to install

          See the official documentation [here](https://lightbitslabs.github.io/lightbits-operator/install_lightbits_operator.html#installation)

          ## Documentation

          See the official documentation [here](https://lightbitslabs.github.io/lightbits-operator/)
        displayName: Lightbits Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - storage
        - lightbits
        links:
        - name: Lightbits Operator
          url: https://github.com/lightbitslabs/lightbits-operator
        maintainers:
        - email: k8s@lightbitslabs.com
          name: Lightbits Labs
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Lightbits Labs
          url: https://www.lightbitslabs.com
        relatedImages:
        - docker.lightbitslabs.com/lightbits-operator/lightbits-operator@sha256:9eaec3c91c5403f2f9e26c128da4ca779cacdc0f21f09f721001bdf0ae1a74f5
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d99a8d144816b951a67648c12c0b988936ccd25cf3754f3cd85ab8c01592248f
        - registry.connect.redhat.com/lightbitslabs/lightbits-operator@sha256:fafb27b54cc654d67b0b4c19e6bba00e27aded08019dc93e37a04f1af8418306
        version: 1.2.2
      entries:
      - name: lightbits-operator.v1.2.2
        version: 1.2.2
      name: alpha
    defaultChannel: alpha
    packageName: lightbits-operator
    provider:
      name: Lightbits Labs
      url: https://www.lightbitslabs.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Trilio
      provider-url: ""
    name: k8s-triliovault
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: k8s-triliovault-stable.3.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "800Mi",
                      "cpu": "100m"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          containerImage: registry.connect.redhat.com/trilio/k8s-triliovault-operator@sha256:0e3094945427231ecbb884b903dc4d347dfaa73e5a04eb4c5cbaed6fce1cbbb8
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          olm.skipRange: '>=3.0.0 <3.1.3'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          TrilioVault for Kubernetes is an enterprise-grade, cloud-native platform purpose built for data protection and management of Kubernetes applications for IT managers, administrators and developers. TrilioVault supports upstream Kubernetes and OpenShift environments and offers the following features:
            * Application-Centric - protects both data and metadata for Helm, Operator or custom Label based applications.
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any Storage (CSI, NFS, S3), or any Cloud (Private or Public).
            * Application Deployment & Tooling: Helm, Operators, Labels, Prometheus, Fluentd.
          Tutorials
          ------------
          Please click the link below to access the TrilioVault for Kubernetes "How-To" series for deployment, best practice and use-case videos
          <a href="https://www.trilio.io/triliovault-for-kubernetes">TrilioVault for Kubernetes - Tutorials and How-To </a>”
          Licensing
          --------
          Customers can download a 30-day Free Trial or a 10-node Basic Edition at no cost.  You can also connect with the Trilio team for an Enterprise Edition license with no limitations and Premium Support.
          For more information on license plans please vist:
          <a href="www.trilio.io/plans"> Trilio Vault for Kubernetes licensing and plans </a>
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our TrilioVault technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. www.trilio.io and @triliodata on Twitter.
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://www.trilio.io/
        - name: Product Licensing
          url: https://www.trilio.io/plans
        - name: Tutorials
          url: https://www.trilio.io/triliovault-for-kubernetes/
        - name: Support for Free/Basic Users
          url: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: Trilio
        relatedImages:
        - registry.connect.redhat.com/trilio/control-plane@sha256:01e36ed5b07104865f922d2996d2211b2b6000adc90266197d9bac74d908db97
        - registry.connect.redhat.com/trilio/datamover@sha256:c7bc15f8217899ed73a812d278eb118633edbee1bf284132054b6f9ca2afd801
        - registry.connect.redhat.com/trilio/event-stack@sha256:37c33ae1adddfe739c98fd2b2183c49ec7cfdafc88dec2970ad7c670016ebaac
        - registry.connect.redhat.com/trilio/k8s-triliovault-operator@sha256:0e3094945427231ecbb884b903dc4d347dfaa73e5a04eb4c5cbaed6fce1cbbb8
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:e80f87f289ea944a78b5c38df600c0a22fa470a2ce90f0b1e9453cd63586d75d
        - registry.connect.redhat.com/trilio/web@sha256:76865d8afa8059d40810cb94df29420950a7593a40e87d142d771c57b3319e1d
        - registry.connect.redhat.com/trilio/minio@sha256:cee0f976edc79ff9e7a3f3574a7115dd960042241f3ed5b4636240ad609f9bca
        - registry.connect.redhat.com/trilio/dex@sha256:b6331cf3cb3a6a66d9b9ea639cda3c2559fbf1f92f7174032352c1c7bb5176d9
        - registry.connect.redhat.com/trilio/nats@sha256:47396bfcff3e65efb3410fa8369f11f20d794ab543f9ada87b451448b1813178
        - registry.connect.redhat.com/trilio/trilio-webhook-init@sha256:c45e9b6b75862451d873d3eba29d6bd11cafc64823855f82ccb8c0b3d779ebb0
        version: 3.1.3
      entries:
      - name: k8s-triliovault-stable.3.1.3
        version: 3.1.3
      - name: k8s-triliovault-stable.3.1.2
        version: 3.1.2
      - name: k8s-triliovault-stable.3.1.1
        version: 3.1.1
      - name: k8s-triliovault-stable.3.1.0
        version: 3.1.0
      name: 3.1.x
    - currentCSV: k8s-triliovault-stable.4.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "800Mi",
                      "cpu": "100m"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:69871613ceecefff7f691f21bb0b9147236af5a5dc2c7b36ad5e0cd8551f0e6a
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <4.0.5'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.20.0
        provider:
          name: Trilio
        relatedImages:
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:bddfd4ebd973089f7446cb16ed9668d418f91c3907a5ede22052be4ccbea6d0c
        - quay.io/triliodata/event-stack@sha256:c793418df5a1fc1a49f629d335f4684d9cde1a5f2b462f7c9483ffba904456d2
        - quay.io/triliodata/web@sha256:20de1a2f9477ad238bf24f48c8c16a38521c3a86164f2eb6b10d20f09839016e
        - quay.io/triliodata/dex@sha256:b4b2372fd03be586b9ff8cd269b9001797d813a34155ab37de31a44fe3cab1ea
        - quay.io/triliodata/k8s-triliovault-operator@sha256:69871613ceecefff7f691f21bb0b9147236af5a5dc2c7b36ad5e0cd8551f0e6a
        - quay.io/triliodata/operator-webhook-init@sha256:aa85b787f7f37a71e909f049d2abdda746cdd0627e2f74aaf7476d5e5a7f4401
        - quay.io/triliodata/control-plane@sha256:53368a72a60a38d3ce4293236a841346da6da2380ffd2525e5ffdb8dbcf11c7f
        - quay.io/triliodata/datamover@sha256:e6848d94ba9f81843bde882a030b0f2556aae4bf16d79e2c5b199417cf626c85
        - quay.io/triliodata/nats@sha256:e6723595bcc5674b6201091d45d711d29a5cd1421c8b97c76cf00e468379fddf
        version: 4.0.5
      entries:
      - name: k8s-triliovault-stable.4.0.5
        version: 4.0.5
      - name: k8s-triliovault-stable.4.0.4
        version: 4.0.4
      - name: k8s-triliovault-stable.4.0.3
        version: 4.0.3
      - name: k8s-triliovault-stable.4.0.2
        version: 4.0.2
      - name: k8s-triliovault-stable.4.0.1
        version: 4.0.1
      - name: k8s-triliovault-stable.4.0.0
        version: 4.0.0
      name: 4.0.x
    - currentCSV: k8s-triliovault-stable.5.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "800Mi",
                      "cpu": "100m"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:8d582842dbef1c64bbe3b0ce5eeb64790910bdc0416c5e5561557642dede7022
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <5.0.4'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.20.0
        provider:
          name: Trilio
        relatedImages:
        - quay.io/triliodata/k8s-triliovault-operator@sha256:8d582842dbef1c64bbe3b0ce5eeb64790910bdc0416c5e5561557642dede7022
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:b31ebfab28ec75c0d7110d6f01e3b26fd973c36013308e12f69584ff38ab3779
        - quay.io/triliodata/control-plane@sha256:e60ef0a2c7a5b7879c9718e9a14c223f5290b4710b598fae19466a7558484824
        - quay.io/triliodata/datamover@sha256:104bdca9513c78f81c4340e9a3219df0a3bc8a5b026e4a252363a7e2c10977ba
        - quay.io/triliodata/event-stack@sha256:859535e19e0ebebc8261c649c2446f8ca5fe4b4e5b6236e69b780dcc0d0bb5b9
        - quay.io/triliodata/web@sha256:04c4baadae9c05f4add098ff62774d00102d56581e261626840d17f74effe438
        - quay.io/triliodata/dex@sha256:b4b2372fd03be586b9ff8cd269b9001797d813a34155ab37de31a44fe3cab1ea
        - quay.io/triliodata/nats@sha256:e6723595bcc5674b6201091d45d711d29a5cd1421c8b97c76cf00e468379fddf
        - quay.io/triliodata/operator-webhook-init@sha256:ffcc55e85f884b884947b73fa7d2fb257704ff70ccd7f2dc37d07e02292abed6
        version: 5.0.4
      entries:
      - name: k8s-triliovault-stable.5.0.4
        version: 5.0.4
      - name: k8s-triliovault-stable.5.0.3
        version: 5.0.3
      - name: k8s-triliovault-stable.5.0.2
        version: 5.0.2
      - name: k8s-triliovault-stable.5.0.1
        version: 5.0.1
      - name: k8s-triliovault-stable.5.0.0
        version: 5.0.0
      name: 5.0.x
    - currentCSV: k8s-triliovault-stable.5.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "2Gi",
                      "cpu": "1"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:bdf9407e70ee6425ea9408d6a4b0d85ec1890084b81cf58669c7f0e5725fddf8
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <5.1.2'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.20.0
        provider:
          name: Trilio
        relatedImages:
        - quay.io/triliodata/k8s-triliovault-operator@sha256:bdf9407e70ee6425ea9408d6a4b0d85ec1890084b81cf58669c7f0e5725fddf8
        - quay.io/triliodata/control-plane@sha256:68964e8116f14643c213003a046e5969eb69f53f4bb034852f5b5c1f3447f3e3
        - quay.io/triliodata/filerecovery-vm-ssh-server@sha256:5b8af222755347e64a2362ed7cf0ef0a956364395efdfa99c5181c3432e6452a
        - quay.io/triliodata/filerecovery@sha256:4708c98fb1168d6d2a61f76f670b5918eed765c827de27e0381a428fa1a1f36f
        - quay.io/triliodata/nats@sha256:3bcf9d2e94f118822077c25445118cc8f22479ffadc8c1dcec7ea995bec9f33c
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:3a8747ca2bbb998672051d3d8f5422b205cea02dd56b07138a67ae80a6453ece
        - quay.io/triliodata/datamover@sha256:6116b4c7ca929396f63af887f8923cb3d52226be97bc895cecfc2777eabbd220
        - quay.io/triliodata/dex@sha256:13ef89a9edcfb497a284df11518f30fc9aca37cf963c6cf6cfb574a00ec5d72f
        - quay.io/triliodata/web@sha256:eede3ee96e8b13565597ecd0d99e69feb6fa2cd819ad7d69e110d86c0ff930b1
        - quay.io/triliodata/event-stack@sha256:9a2e454b80ab5b8e768b4b87835700122eb573c2511beae6a9a95e65af25c09f
        version: 5.1.2
      entries:
      - name: k8s-triliovault-stable.5.1.2
        version: 5.1.2
      - name: k8s-triliovault-stable.5.1.1
        version: 5.1.1
      - name: k8s-triliovault-stable.5.1.0
        version: 5.1.0
      name: 5.1.x
    - currentCSV: k8s-triliovault-stable.5.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logConfig": {
                    "logLevel": "Info"
                  },
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "2Gi",
                      "cpu": "1"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:acc4df98d8720fb41c6650e82825105f9a8785f394851ef866b26b217842d4db
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <5.2.0'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Trilio
        relatedImages:
        - quay.io/triliodata/dex@sha256:169607295b90018c16a864943b473a3ffe94b7c41ce67e12b9e810c2daf2c9df
        - quay.io/triliodata/event-stack@sha256:c4190db6212b9ae33cec9fe0d37d49def0df1695dc23d8bf6674c4e1dff374a4
        - quay.io/triliodata/k8s-triliovault-operator@sha256:acc4df98d8720fb41c6650e82825105f9a8785f394851ef866b26b217842d4db
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:5e069f7241b8418a54da73cb838395ae6af21e5d1e008917ddae55331d5a4bdc
        - quay.io/triliodata/control-plane@sha256:f7d596ad5101354d43ed6c0c96dca9fd94705c757008deece013fa3b6fcd8fc4
        - quay.io/triliodata/datamover@sha256:beffcf6d6c0057f480faf2bc05a83b0bc4be00edaac26ee9706dc79a72a95e05
        - quay.io/triliodata/filerecovery-vm-ssh-server@sha256:05865888f267cca29133de733f5bb4f811fc0923b395047ba0a29c6034346f19
        - quay.io/triliodata/filerecovery@sha256:ada85e6b17f88e7cc49e7356d04ac90cf11c12747f19a3c72bb9f94cb90e768e
        - quay.io/triliodata/nats@sha256:35366081d4e81199b2d3e9b933d2594283c10c1582d7676dffa90953b2f0e9a1
        - quay.io/triliodata/web@sha256:cb1ac887e13a8e7c9e091f9ae6dac967237a55fa01ef7cb485f90e7a58035f0c
        version: 5.2.0
      entries:
      - name: k8s-triliovault-stable.5.2.0
        version: 5.2.0
      name: 5.2.x
    defaultChannel: 5.2.x
    packageName: k8s-triliovault
    provider:
      name: Trilio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudfront-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudfront-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
                "kind": "CachePolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
                "kind": "Distribution",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
                "kind": "Function",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudfront-controller:1.3.0
          createdAt: "2025-11-29T04:46:46Z"
          description: AWS CloudFront controller is a service controller for managing
            CloudFront resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CachePolicy represents the state of an AWS cloudfront CachePolicy
              resource.
            displayName: CachePolicy
            kind: CachePolicy
            name: cachepolicies.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: Distribution represents the state of an AWS cloudfront Distribution
              resource.
            displayName: Distribution
            kind: Distribution
            name: distributions.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: Function represents the state of an AWS cloudfront Function
              resource.
            displayName: Function
            kind: Function
            name: functions.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: OriginAccessControl represents the state of an AWS cloudfront
              OriginAccessControl resource.
            displayName: OriginAccessControl
            kind: OriginAccessControl
            name: originaccesscontrols.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: OriginRequestPolicy represents the state of an AWS cloudfront
              OriginRequestPolicy resource.
            displayName: OriginRequestPolicy
            kind: OriginRequestPolicy
            name: originrequestpolicies.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: ResponseHeadersPolicy represents the state of an AWS cloudfront
              ResponseHeadersPolicy resource.
            displayName: ResponseHeadersPolicy
            kind: ResponseHeadersPolicy
            name: responseheaderspolicies.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: VPCOrigin represents the state of an AWS cloudfront VPCOrigin
              resource.
            displayName: VPCOrigin
            kind: VPCOrigin
            name: vpcorigins.cloudfront.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon CloudFront resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudFront**

          Amazon CloudFront is a web service that speeds up distribution of your static and dynamic web content, such as .html, .css, .js, and image files, to your users. CloudFront delivers your content through a worldwide network of data centers called edge locations.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon CloudFront
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudfront
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudFront Developer Resources
          url: https://aws.amazon.com/cloudfront/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudfront maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/cloudfront-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-cloudfront-controller@sha256:9eab71b0aa3305a6cd40801523c750daf181b70c002630ef481d17a8c18fa2c3
        version: 1.3.0
      entries:
      - name: ack-cloudfront-controller.v1.3.0
        version: 1.3.0
      - name: ack-cloudfront-controller.v1.2.2
        version: 1.2.2
      - name: ack-cloudfront-controller.v1.2.1
        version: 1.2.1
      - name: ack-cloudfront-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudfront-controller.v1.1.6
        version: 1.1.6
      - name: ack-cloudfront-controller.v1.1.4
        version: 1.1.4
      - name: ack-cloudfront-controller.v1.1.3
        version: 1.1.3
      - name: ack-cloudfront-controller.v1.1.2
        version: 1.1.2
      - name: ack-cloudfront-controller.v1.1.1
        version: 1.1.1
      - name: ack-cloudfront-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudfront-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudfront-controller.v1.0.9
        version: 1.0.9
      - name: ack-cloudfront-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudfront-controller.v1.0.7
        version: 1.0.7
      - name: ack-cloudfront-controller.v1.0.6
        version: 1.0.6
      - name: ack-cloudfront-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudfront-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudfront-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudfront-controller.v0.0.15
        version: 0.0.15
      - name: ack-cloudfront-controller.v0.0.14
        version: 0.0.14
      - name: ack-cloudfront-controller.v0.0.13
        version: 0.0.13
      - name: ack-cloudfront-controller.v0.0.12
        version: 0.0.12
      - name: ack-cloudfront-controller.v0.0.11
        version: 0.0.11
      - name: ack-cloudfront-controller.v0.0.10
        version: 0.0.10
      - name: ack-cloudfront-controller.v0.0.9
        version: 0.0.9
      - name: ack-cloudfront-controller.v0.0.8
        version: 0.0.8
      - name: ack-cloudfront-controller.v0.0.6
        version: 0.0.6
      - name: ack-cloudfront-controller.v0.0.5
        version: 0.0.5
      - name: ack-cloudfront-controller.v0.0.4
        version: 0.0.4
      - name: ack-cloudfront-controller.v0.0.3
        version: 0.0.3
      - name: ack-cloudfront-controller.v0.0.2
        version: 0.0.2
      - name: ack-cloudfront-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudfront-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio
      provider-url: ""
    name: apicurio-registry
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-registry-operator.v1.1.3-v2.6.4.final
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-mem"
                },
                "spec": {
                  "configuration": {
                    "persistence": "mem"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/apicurio/apicurio-registry-operator:1.1.3
          createdAt: "2024-09-17"
          description: Deploy and manage Apicurio Registry on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Apicurio/apicurio-registry-operator
          support: Apicurio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry represents an Apicurio Registry instance
            displayName: Apicurio Registry
            kind: ApicurioRegistry
            name: apicurioregistries.registry.apicur.io
            version: v1
        description: |
          ## Apicurio Registry

          Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Provides a REST API and web UI to manage the artifacts and artifact meta-data
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL, in-memory
          - Compatible with Confluent and IBM APIs
          - Runs on a lightweight Quarkus platform
          - Includes Maven plugin to integrate with Maven based builds

          ## Apicurio Registry Operator

          Provides a quick and easy way to deploy and manage Apicurio Registry on Kubernetes.

          **Features**
          - Supports installation and configuration of the Registry for all storage options
          - Easily perform a rolling upgrade of Apicurio Registry

          ## Prerequisites

          This operator does not deploy storage for Apicurio Registry. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Apicurio Registry Operator is licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry-operator/blob/main/LICENSE)
        displayName: Apicurio Registry Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        - name: Twitter
          url: https://twitter.com/Apicurio
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Apicurio
        relatedImages:
        - quay.io/apicurio/apicurio-registry-operator:1.1.3
        - quay.io/community-operator-pipeline-prod/apicurio-registry@sha256:7087ec1377c2612edf3b8a76f6e115d66c3ec2b4b20f5d8374638d6bf0037e93
        version: 1.1.3-v2.6.4.final
      entries:
      - name: apicurio-registry-operator.v1.1.3-v2.6.4.final
        version: 1.1.3-v2.6.4.final
      - name: apicurio-registry-operator.v1.1.2-v2.5.11.final
        version: 1.1.2-v2.5.11.final
      - name: apicurio-registry-operator.v1.1.1-v2.5.9.final
        version: 1.1.1-v2.5.9.final
      - name: apicurio-registry-operator.v1.1.0-v2.4.12.final
        version: 1.1.0-v2.4.12.final
      - name: apicurio-registry-operator.v1.0.0-v2.0.0.final
        version: 1.0.0-v2.0.0.final
      name: 2.x
    defaultChannel: 2.x
    packageName: apicurio-registry
    provider:
      name: Apicurio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: machine-deletion-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: machine-deletion-remediation.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediation",
                "metadata": {
                  "name": "machinedeletionremediation-sample"
                },
                "spec": {},
                "status": {
                  "conditions": [
                    {
                      "reason": "RemediationFinished",
                      "status": false,
                      "type": "Processing"
                    },
                    {
                      "reason": "RemediationFinished",
                      "status": true,
                      "type": "Succeeded"
                    },
                    {
                      "reason": "MachineDeletionOnBareMetalProviderReason",
                      "status": false,
                      "type": "PermanentNodeDeletionExpected"
                    }
                  ]
                }
              },
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediationTemplate",
                "metadata": {
                  "name": "machinedeletionremediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: ""
          createdAt: "2025-11-11 13:38:42"
          description: Machine Deletion Remediation operator for reprovisioning unhealthy
            nodes using the Machine API.
          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: "true"
          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.skipRange: '>=0.4.0 <0.5.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/machine-deletion-remediation
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MachineDeletionRemediation is the Schema for the machinedeletionremediations
              API
            displayName: Machine Deletion Remediation
            kind: MachineDeletionRemediation
            name: machinedeletionremediations.machine-deletion-remediation.medik8s.io
            version: v1alpha1
          - description: MachineDeletionRemediationTemplate is the Schema for the
              machinedeletionremediationtemplates API
            displayName: Machine Deletion Remediation Template
            kind: MachineDeletionRemediationTemplate
            name: machinedeletionremediationtemplates.machine-deletion-remediation.medik8s.io
            version: v1alpha1
        description: |
          Machine Deletion Remediation (MDR) is a remediator designed to reprovision unhealthy
          nodes using the Machine API. MDR can be used together with NodeHealthCheck (NHC),
          which detects the unhealthy Node and creates the Custom Resource for MDR.

          # How it works
          MDR follows the annotation on the Node to the associated Machine object, confirms
          that it has an owning controller (e.g. MachineSetController), that will recreate the
          Machine once deleted, and then proceeds with deleting the Machine.

          # How to use MDR with NHC
          To use MDR as remediation mechanism for NHC, it needs to be configured with the
          following steps:

          - Create the MDR Template CR
          - Modify NHC's `.spec.remediationTemplate` to use MDR as it's remediator

          see https://github.com/medik8s/machine-deletion-remediation#readme for configuration examples.
        displayName: Machine Deletion Remediation operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - machine
        - deletion
        - remediation
        - mdr
        links:
        - name: Machine Deletion Remediation
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance/index
        - name: Source Code
          url: https://github.com/medik8s/machine-deletion-remediation
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/workload-availability/machine-deletion-remediation-operator-bundle@sha256:f751650b9213f599d0cca1fcc08b5841c8d612a9e8499b8fd74485ecdc2565cc
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/machine-deletion-remediation-rhel9-operator@sha256:687f6d6b71aab8e0f5db32c9e11c2a7305c6a5746819bd54c38c584b27d6d06a
        version: 0.5.0
      entries:
      - name: machine-deletion-remediation.v0.5.0
        version: 0.5.0
      - name: machine-deletion-remediation.v0.4.1
        version: 0.4.1
      - name: machine-deletion-remediation.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: machine-deletion-remediation
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: F5 NGINX
      provider-url: https://www.f5.com/go/product/welcome-to-nginx
    name: nginx-gateway-fabric
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nginx-gateway-fabric.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "gateway.nginx.org/v1alpha1",
                "kind": "NginxGatewayFabric",
                "metadata": {
                  "name": "nginxgatewayfabric-sample"
                },
                "spec": {
                  "certGenerator": {
                    "affinity": {},
                    "agentTLSSecretName": "agent-tls",
                    "annotations": {},
                    "nodeSelector": {},
                    "overwrite": false,
                    "serverTLSSecretName": "server-tls",
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "ttlSecondsAfterFinished": 30
                  },
                  "clusterDomain": "cluster.local",
                  "gateways": [],
                  "nginx": {
                    "autoscaling": {
                      "enable": false
                    },
                    "config": {},
                    "container": {
                      "hostPorts": [],
                      "lifecycle": {},
                      "readinessProbe": {},
                      "resources": {},
                      "volumeMounts": []
                    },
                    "debug": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/nginx/nginx-gateway-fabric/nginx",
                      "tag": "2.2.2-ubi"
                    },
                    "imagePullSecret": "",
                    "imagePullSecrets": [],
                    "kind": "deployment",
                    "nginxOneConsole": {
                      "dataplaneKeySecretName": "",
                      "endpointHost": "agent.connect.nginx.com",
                      "endpointPort": 443,
                      "skipVerify": false
                    },
                    "patches": [],
                    "plus": false,
                    "pod": {},
                    "replicas": 1,
                    "service": {
                      "externalTrafficPolicy": "Local",
                      "loadBalancerClass": "",
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": [],
                      "patches": [],
                      "type": "LoadBalancer"
                    },
                    "usage": {
                      "caSecretName": "",
                      "clientSSLSecretName": "",
                      "endpoint": "",
                      "enforceInitialReport": true,
                      "resolver": "",
                      "secretName": "nplus-license",
                      "skipVerify": false
                    }
                  },
                  "nginxGateway": {
                    "affinity": {},
                    "autoscaling": {
                      "enable": false
                    },
                    "config": {
                      "logging": {
                        "level": "info"
                      }
                    },
                    "configAnnotations": {},
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "gatewayClassAnnotations": {},
                    "gatewayClassName": "nginx",
                    "gatewayControllerName": "gateway.nginx.org/nginx-gateway-controller",
                    "gwAPIExperimentalFeatures": {
                      "enable": false
                    },
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/nginx/nginx-gateway-fabric",
                      "tag": "2.2.2-ubi"
                    },
                    "kind": "deployment",
                    "labels": {},
                    "leaderElection": {
                      "enable": true,
                      "lockName": ""
                    },
                    "lifecycle": {},
                    "metrics": {
                      "enable": true,
                      "port": 9113,
                      "secure": false
                    },
                    "name": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "productTelemetry": {
                      "enable": true
                    },
                    "readinessProbe": {
                      "enable": true,
                      "initialDelaySeconds": 3,
                      "port": 8081
                    },
                    "replicas": 1,
                    "resources": {},
                    "service": {
                      "annotations": {},
                      "labels": {}
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "imagePullSecret": "",
                      "imagePullSecrets": [],
                      "name": ""
                    },
                    "snippetsFilters": {
                      "enable": false
                    },
                    "terminationGracePeriodSeconds": 30,
                    "tolerations": [],
                    "topologySpreadConstraints": []
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "true"
          com.redhat.openshift.versions: v4.19
          containerImage: ghcr.io/nginx/nginx-gateway-fabric/operator@sha256:726c4744ebb1033b5d81fc6c7d5d1e29680461b839610846245bba092843a152
          createdAt: "2025-12-11T09:36:30Z"
          description: The NGINX Gateway Fabric is a Kubernetes Gateway API implementation
            that provides application traffic management for modern cloud-native applications
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: nginx-gateway
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/nginx/nginx-gateway-fabric
          support: NGINX Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NginxGatewayFabric
            name: nginxgatewayfabrics.gateway.nginx.org
            version: v1alpha1
        description: NGINX Gateway Fabric provides an implementation of the Gateway
          API using NGINX as the data plane
        displayName: NGINX Gateway Fabric
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nginx
        - gateway
        - kubernetes
        - networking
        links:
        - name: Nginx Gateway Fabric
          url: https://github.com/nginx/nginx-gateway-fabric
        maintainers:
        - email: kubernetes@nginx.com
          name: F5NGINX
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: F5 NGINX
          url: https://www.f5.com/go/product/welcome-to-nginx
        relatedImages:
        - ghcr.io/nginx/nginx-gateway-fabric/operator@sha256:726c4744ebb1033b5d81fc6c7d5d1e29680461b839610846245bba092843a152
        - registry.connect.redhat.com/nginx/nginx-gateway-fabric-operator-bundle@sha256:94bd7123cec4eec21fc395df493c2a34415c214f075e0011439c5056f6ce6ae2
        version: 1.0.2
      entries:
      - name: nginx-gateway-fabric.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: nginx-gateway-fabric
    provider:
      name: F5 NGINX
      url: https://www.f5.com/go/product/welcome-to-nginx
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-apigatewayv2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-apigatewayv2-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Deployment",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "API",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Authorizer",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Route",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Stage",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "VPCLink",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/apigatewayv2-controller:1.2.0
          createdAt: "2025-11-29T05:41:40Z"
          description: AWS API Gateway v2 controller is a service controller for managing
            API Gateway v2 resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIMapping represents the state of an AWS apigatewayv2 APIMapping
              resource.
            displayName: APIMapping
            kind: APIMapping
            name: apimappings.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: API represents the state of an AWS apigatewayv2 API resource.
            displayName: API
            kind: API
            name: apis.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Authorizer represents the state of an AWS apigatewayv2 Authorizer
              resource.
            displayName: Authorizer
            kind: Authorizer
            name: authorizers.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Deployment represents the state of an AWS apigatewayv2 Deployment
              resource.
            displayName: Deployment
            kind: Deployment
            name: deployments.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: DomainName represents the state of an AWS apigatewayv2 DomainName
              resource.
            displayName: DomainName
            kind: DomainName
            name: domainnames.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Integration represents the state of an AWS apigatewayv2 Integration
              resource.
            displayName: Integration
            kind: Integration
            name: integrations.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Route represents the state of an AWS apigatewayv2 Route resource.
            displayName: Route
            kind: Route
            name: routes.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Stage represents the state of an AWS apigatewayv2 Stage resource.
            displayName: Stage
            kind: Stage
            name: stages.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: VPCLink represents the state of an AWS apigatewayv2 VPCLink
              resource.
            displayName: VPCLink
            kind: VPCLink
            name: vpclinks.apigatewayv2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon API Gateway v2 resources in AWS from within your Kubernetes cluster. Currently only HTTP APIs are supported. WebSocket API support will be added soon. For HTTP APIs, DomainName and APIMapping resource support will be added soon.

          **About Amazon API Gateway v2**

          Amazon API Gateway is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale. APIs act as the "front door" for applications to access data, business logic, or functionality from your backend services. Using API Gateway, you can create RESTful APIs and WebSocket APIs that enable real-time two-way communication applications. API Gateway supports containerized and serverless workloads, as well as web applications.

          API Gateway handles all the tasks involved in accepting and processing up to hundreds of thousands of concurrent API calls, including traffic management, CORS support, authorization and access control, throttling, monitoring, and API version management. API Gateway has no minimum fees or startup costs. You pay for the API calls you receive and the amount of data transferred out and, with the API Gateway tiered pricing model, you can reduce your cost as your API usage scales.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon API Gateway v2
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apigatewayv2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon API Gateway v2 Developer Resources
          url: https://aws.amazon.com/api-gateway/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: api gateway maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/apigatewayv2-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-apigatewayv2-controller@sha256:1484e3b2d292a0f844b37510aee801631a3f3784ace790910e1a7bc9ba28b336
        version: 1.2.0
      entries:
      - name: ack-apigatewayv2-controller.v1.2.0
        version: 1.2.0
      - name: ack-apigatewayv2-controller.v1.1.1
        version: 1.1.1
      - name: ack-apigatewayv2-controller.v1.1.0
        version: 1.1.0
      - name: ack-apigatewayv2-controller.v1.0.30
        version: 1.0.30
      - name: ack-apigatewayv2-controller.v1.0.29
        version: 1.0.29
      - name: ack-apigatewayv2-controller.v1.0.28
        version: 1.0.28
      - name: ack-apigatewayv2-controller.v1.0.26
        version: 1.0.26
      - name: ack-apigatewayv2-controller.v1.0.25
        version: 1.0.25
      - name: ack-apigatewayv2-controller.v1.0.23
        version: 1.0.23
      - name: ack-apigatewayv2-controller.v1.0.21
        version: 1.0.21
      - name: ack-apigatewayv2-controller.v1.0.17
        version: 1.0.17
      - name: ack-apigatewayv2-controller.v1.0.16
        version: 1.0.16
      - name: ack-apigatewayv2-controller.v1.0.15
        version: 1.0.15
      - name: ack-apigatewayv2-controller.v1.0.13
        version: 1.0.13
      - name: ack-apigatewayv2-controller.v1.0.12
        version: 1.0.12
      - name: ack-apigatewayv2-controller.v1.0.7
        version: 1.0.7
      - name: ack-apigatewayv2-controller.v1.0.6
        version: 1.0.6
      - name: ack-apigatewayv2-controller.v1.0.5
        version: 1.0.5
      - name: ack-apigatewayv2-controller.v1.0.4
        version: 1.0.4
      - name: ack-apigatewayv2-controller.v1.0.3
        version: 1.0.3
      - name: ack-apigatewayv2-controller.v1.0.2
        version: 1.0.2
      - name: ack-apigatewayv2-controller.v1.0.0
        version: 1.0.0
      - name: ack-apigatewayv2-controller.v0.1.6
        version: 0.1.6
      - name: ack-apigatewayv2-controller.v0.1.4
        version: 0.1.4
      - name: ack-apigatewayv2-controller.v0.1.3
        version: 0.1.3
      - name: ack-apigatewayv2-controller.v0.1.2
        version: 0.1.2
      - name: ack-apigatewayv2-controller.v0.1.1
        version: 0.1.1
      - name: ack-apigatewayv2-controller.v0.1.0
        version: 0.1.0
      - name: ack-apigatewayv2-controller.v0.0.22
        version: 0.0.22
      - name: ack-apigatewayv2-controller.v0.0.21
        version: 0.0.21
      - name: ack-apigatewayv2-controller.v0.0.20
        version: 0.0.20
      - name: ack-apigatewayv2-controller.v0.0.19
        version: 0.0.19
      - name: ack-apigatewayv2-controller.v0.0.18
        version: 0.0.18
      - name: ack-apigatewayv2-controller.v0.0.17
        version: 0.0.17
      - name: ack-apigatewayv2-controller.v0.0.16
        version: 0.0.16
      - name: ack-apigatewayv2-controller.v0.0.15
        version: 0.0.15
      - name: ack-apigatewayv2-controller.v0.0.14
        version: 0.0.14
      - name: ack-apigatewayv2-controller.v0.0.13
        version: 0.0.13
      - name: ack-apigatewayv2-controller.v0.0.12
        version: 0.0.12
      - name: ack-apigatewayv2-controller.v0.0.11
        version: 0.0.11
      - name: ack-apigatewayv2-controller.v0.0.10
        version: 0.0.10
      - name: ack-apigatewayv2-controller.v0.0.9
        version: 0.0.9
      name: alpha
    defaultChannel: alpha
    packageName: ack-apigatewayv2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: KEDA Community
      provider-url: ""
    name: keda
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keda.v2.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "KedaController",
                "metadata": {
                  "name": "keda",
                  "namespace": "keda"
                },
                "spec": {
                  "watchNamespace": "",
                  "operator": {
                    "logLevel": "info",
                    "logEncoder": "console"
                  },
                  "metricsServer": {
                    "logLevel": "0"
                  },
                  "serviceAccount": {}
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledJob",
                "metadata": {
                  "name": "scaledjob-sample"
                },
                "spec": {
                  "failedJobsHistoryLimit": 5,
                  "jobTargetRef": {
                    "activeDeadlineSeconds": 600,
                    "backoffLimit": 6,
                    "completions": 1,
                    "parallelism": 1,
                    "template": null
                  },
                  "maxReplicaCount": 100,
                  "pollingInterval": 30,
                  "successfulJobsHistoryLimit": 5,
                  "triggers": [
                    {
                      "metadata": {
                        "property": "examle-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledObject",
                "metadata": {
                  "name": "example-scaledobject"
                },
                "spec": {
                  "cooldownPeriod": 300,
                  "maxReplicaCount": 100,
                  "minReplicaCount": 0,
                  "pollingInterval": 30,
                  "scaleTargetRef": {
                    "name": "example-deployment"
                  },
                  "triggers": [
                    {
                      "metadata": {
                        "property": "examle-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "TriggerAuthentication",
                "metadata": {
                  "name": "example-triggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "exmaple-secret-parameter"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ClusterTriggerAuthentication",
                "metadata": {
                  "name": "example-clustertriggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "exmaple-secret-parameter"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Cloud Provider
          certified: "false"
          containerImage: ghcr.io/kedacore/keda-olm-operator:2.7.1
          createdAt: "2022-05-11T00:00:00.000Z"
          description: '[DEPRECATED] Use Custom Metrics Autoscaler Operator instead'
          operatorframework.io/suggested-namespace: keda
          operators.operatorframework.io/builder: operator-sdk-v1.1.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/kedacore/keda-olm-operator
          support: KEDA Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |
              Represents an installation of a particular version of KEDA Controller.
            displayName: KedaController
            kind: KedaController
            name: kedacontrollers.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your jobs and what the triggers
            displayName: ScaledJob
            kind: ScaledJob
            name: scaledjobs.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your application and what the
              triggers are
            displayName: ScaledObject
            kind: ScaledObject
            name: scaledobjects.keda.sh
            version: v1alpha1
          - description: Describes authentication parameters
            displayName: TriggerAuthentication
            kind: TriggerAuthentication
            name: triggerauthentications.keda.sh
            version: v1alpha1
          - description: Describes cluster wide authentication parameters
            displayName: ClusterTriggerAuthentication
            kind: ClusterTriggerAuthentication
            name: clustertriggerauthentications.keda.sh
            version: v1alpha1
        description: "## Deprecated\n This KEDA community operator is deprecated,
          please use `Custom Metrics Autoscaler` Operator instead.\n## About the managed
          application\nKEDA is a Kubernetes-based event driven autoscaler.  KEDA can
          monitor event sources like Kafka, RabbitMQ, or cloud event sources and feed
          the metrics from those sources into the Kubernetes horizontal pod autoscaler.
          \ With KEDA, you can have event driven and serverless scale of deployments
          within any Kubernetes cluster.\n## About this Operator\nThe KEDA Operator
          deploys and manages installation of KEDA Controller in the cluster. Install
          this operator and follow installation instructions on how to install KEDA
          in you cluster.\n\n## Prerequisites for enabling this Operator\nPlease note
          that you can not run both KEDA 1.x and 2.x on the same Kubernetes cluster.
          You need to uninstall KEDA 1.x first, in order to install and use KEDA 2.x.\n\nDon't
          forget to uninstall KEDA v1 CRDs as well, to ensure that, please run:\n\n```
          oc delete crd scaledobjects.keda.k8s.io ```\n\n``` oc delete crd triggerauthentications.keda.k8s.io
          \ ```\n## How to install KEDA in the cluster\nThe installation of KEDA is
          triggered by the creation of `KedaController` resource, please refer to
          [KedaController Example](https://github.com/kedacore/keda-olm-operator#kedacontroller-spec)
          for more deatils on available options.\n\nOnly resource named `keda` in
          namespace `keda` will trigger the installation, reconfiguration or removal
          of the KEDA Controller resource.\n\nThere could be only one KEDA Controller
          in the cluster. \n"
        displayName: '[DEPRECATED] KEDA'
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - keda
        - scaling
        - event
        links:
        - name: Homepage
          url: https://keda.sh
        - name: Source Code
          url: https://github.com/kedacore/keda
        - name: Slack Channel
          url: https://kubernetes.slack.com/messages/CKZJ36A5D
        maintainers:
        - email: cncf-keda-maintainers@lists.cncf.io
          name: KEDA Community
        maturity: deprecated
        minKubeVersion: 1.17.0
        provider:
          name: KEDA Community
        relatedImages:
        - quay.io/openshift-community-operators/keda@sha256:50816f675c76d36dbc62846579150477018ef87df325861751f3fc02a70c8781
        - ghcr.io/kedacore/keda-olm-operator:2.7.1
        version: 2.7.1
      entries:
      - name: keda.v2.7.1
        version: 2.7.1
      - name: keda.v2.6.1
        version: 2.6.1
      - name: keda.v2.6.0
        version: 2.6.0
      - name: keda.v2.5.0
        version: 2.5.0
      - name: keda.v2.4.0
        version: 2.4.0
      - name: keda.v2.3.0
        version: 2.3.0
      - name: keda.v2.2.0
        version: 2.2.0
      - name: keda.v2.1.0
        version: 2.1.0
      - name: keda.v2.0.0
        version: 2.0.0
      name: alpha
    defaultChannel: alpha
    packageName: keda
    provider:
      name: KEDA Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-airflow-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: airflow-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/airflow-operator@sha256:e7090465bfcce12ce945289421223bdbbc0597dfc816dac95cbafb286454fef8
          description: Stackable Operator for Apache Airflow
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/airflow-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for AirflowClusterSpec via `CustomResource`
            displayName: airflowclusters.airflow.stackable.tech
            kind: AirflowCluster
            name: airflowclusters.airflow.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Airflow
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - airflow
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/airflow-operator@sha256:e7090465bfcce12ce945289421223bdbbc0597dfc816dac95cbafb286454fef8
        - registry.connect.redhat.com/stackable/stackable-apache-airflow-operator@sha256:983b65960949b01b01a60f23271f3072c048c5fa2e23ab3303fe28ebafb40576
        version: 25.11.0
      entries:
      - name: airflow-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-airflow-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Intel® Corporation
      provider-url: https://intel.com
    name: intel-device-plugins-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: intel-device-plugins-operator.v0.32.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "DsaDevicePlugin",
                "metadata": {
                  "name": "dsadeviceplugin-sample"
                },
                "spec": {
                  "image": "registry.connect.redhat.com/intel/intel-dsa-plugin@sha256:2742a13279cc3f301daa09b6389517024530f658d4e1dd13db495cc94d9ba57c",
                  "initImage": "registry.connect.redhat.com/intel/intel-idxd-config-initcontainer@sha256:b74dc43fa81ce14ea97f20ff6b2f726039f6309fdd868d5f45d751d0a8662cc1",
                  "logLevel": 4,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/dsa": "true"
                  },
                  "sharedDevNum": 10
                }
              },
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "GpuDevicePlugin",
                "metadata": {
                  "name": "gpudeviceplugin-sample"
                },
                "spec": {
                  "enableMonitoring": true,
                  "image": "registry.connect.redhat.com/intel/intel-gpu-plugin@sha256:e2c2ce658e78c35c425f16a4f8e85c5f32ce31848d9b53a644a05e7f8b7f71b0",
                  "preferredAllocationPolicy": "none",
                  "logLevel": 4,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gpu": "true"
                  },
                  "sharedDevNum": 1
                }
              },
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "QatDevicePlugin",
                "metadata": {
                  "name": "qatdeviceplugin-sample"
                },
                "spec": {
                  "dpdkDriver": "vfio-pci",
                  "image": "registry.connect.redhat.com/intel/intel-qat-plugin@sha256:8d79dba051b83ec770a4b0fdc3da6ac92264cb19cac8d455b707ed92a6a95d02",
                  "initImage": "registry.connect.redhat.com/intel/intel-qat-initcontainer@sha256:34f0b993ca654ea0b386217cba1a44d5ef3da841b3befc780508f5323e95fa90",
                  "kernelVfDrivers": [
                    "4xxxvf"
                  ],
                  "logLevel": 4,
                  "maxNumDevices": 128,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/qat": "true"
                  }
                }
              },
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "SgxDevicePlugin",
                "metadata": {
                  "name": "sgxdeviceplugin-sample"
                },
                "spec": {
                  "enclaveLimit": 110,
                  "image": "registry.connect.redhat.com/intel/intel-sgx-plugin@sha256:f2c77521c6dae6b4db1896a5784ba8b06a5ebb2a01684184fc90143cfcca7bf4",
                  "logLevel": 4,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/sgx": "true"
                  },
                  "provisionLimit": 110
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Security, AI/Machine Learning
          containerImage: registry.connect.redhat.com/intel/intel-deviceplugin-operator@sha256:5ca1fd11f0ca4e7fb941749c67461c9c66fe9417c9d0f0a9247b6b172b0bcdd5
          description: This operator is a Kubernetes custom controller whose goal
            is to serve the installation and lifecycle management of Intel device
            plugins for Kubernetes.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/intel/intel-technology-enabling-for-openshift
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DsaDevicePlugin is the Schema for the dsadeviceplugins API.
              It represents the DSA device plugin responsible for advertising Intel
              DSA hardware resources to the kubelet.
            displayName: Intel DSA Device Plugin
            kind: DsaDevicePlugin
            name: dsadeviceplugins.deviceplugin.intel.com
            version: v1
          - description: |-
              GpuDevicePlugin is the Schema for the gpudeviceplugins API. It represents
              the GPU device plugin responsible for advertising Intel GPU hardware resources to
              the kubelet.
            displayName: Intel GPU Device Plugin
            kind: GpuDevicePlugin
            name: gpudeviceplugins.deviceplugin.intel.com
            version: v1
          - description: |-
              QatDevicePlugin is the Schema for the qatdeviceplugins API. It represents the QAT device
              plugin responsible for advertising Intel QuickAssist Technology hardware resources
              to the kubelet.
            displayName: Intel QuickAssist Technology Device Plugin
            kind: QatDevicePlugin
            name: qatdeviceplugins.deviceplugin.intel.com
            version: v1
          - description: |-
              SgxDevicePlugin is the Schema for the sgxdeviceplugins API. It represents
              the SGX device plugin responsible for advertising SGX device nodes to
              the kubelet.
            displayName: Intel Software Guard Extensions Device Plugin
            kind: SgxDevicePlugin
            name: sgxdeviceplugins.deviceplugin.intel.com
            version: v1
        description: |
          [Intel Device Plugins for Kubernetes](https://github.com/intel/intel-technology-enabling-for-openshift) is a collection of
          [device plugins](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/) advertising Intel specific hardware resources
          to the kubelet. Currently the operator has basic support for Intel SGX, Intel GPU, Intel QAT and Intel DSA. Intel IAA device plugin will be supported in a future release.
        displayName: Intel Device Plugins Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - fpga
        - qat
        - sgx
        - gpu
        - dsa
        - dlb
        links:
        - name: Intel Device Plugins Operator
          url: https://github.com/intel/intel-technology-enabling-for-openshift
        maintainers:
        - email: martin.xu@intel.com
          name: Martin Xu
        - email: chaitanya.kulkarni@intel.com
          name: Chaitanya kulkarni
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Intel® Corporation
          url: https://intel.com
        relatedImages:
        - registry.connect.redhat.com/intel/intel-device-plugins-operator-bundle@sha256:4a422ca897caeabb9fc3be3dfef3746819868de1674ea61c657cad257fbddf12
        - registry.connect.redhat.com/intel/intel-deviceplugin-operator@sha256:5ca1fd11f0ca4e7fb941749c67461c9c66fe9417c9d0f0a9247b6b172b0bcdd5
        - registry.connect.redhat.com/intel/intel-dsa-plugin@sha256:2742a13279cc3f301daa09b6389517024530f658d4e1dd13db495cc94d9ba57c
        - registry.connect.redhat.com/intel/intel-gpu-plugin@sha256:e2c2ce658e78c35c425f16a4f8e85c5f32ce31848d9b53a644a05e7f8b7f71b0
        - registry.connect.redhat.com/intel/intel-idxd-initcontainer@sha256:b74dc43fa81ce14ea97f20ff6b2f726039f6309fdd868d5f45d751d0a8662cc1
        - registry.connect.redhat.com/intel/intel-qat-initcontainer@sha256:34f0b993ca654ea0b386217cba1a44d5ef3da841b3befc780508f5323e95fa90
        - registry.connect.redhat.com/intel/intel-qat-plugin@sha256:8d79dba051b83ec770a4b0fdc3da6ac92264cb19cac8d455b707ed92a6a95d02
        - registry.connect.redhat.com/intel/intel-sgx-plugin@sha256:f2c77521c6dae6b4db1896a5784ba8b06a5ebb2a01684184fc90143cfcca7bf4
        version: 0.32.1
      entries:
      - name: intel-device-plugins-operator.v0.32.1
        version: 0.32.1
      - name: intel-device-plugins-operator.v0.29.1
        version: 0.29.1
      - name: intel-device-plugins-operator.v0.29.0
        version: 0.29.0
      - name: intel-device-plugins-operator.v0.28.0
        version: 0.28.0
      name: alpha
    defaultChannel: alpha
    packageName: intel-device-plugins-operator
    provider:
      name: Intel® Corporation
      url: https://intel.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: opdev
      provider-url: https://opdev.github.io/
    name: loki-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: loki-helm-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.example.com/v1alpha1",
                "kind": "Loki",
                "metadata": {
                  "annotations": {
                    "helm.sdk.operatorframework.io/install-disable-crds": "true"
                  },
                  "name": "loki-sample"
                },
                "spec": {
                  "global": {
                    "clusterDomain": "cluster.local",
                    "dnsNamespace": "openshift-dns",
                    "dnsService": "dns-default"
                  },
                  "loki": {
                    "auth_enabled": false,
                    "commonConfig": {
                      "replication_factor": 1
                    },
                    "storage": {
                      "type": "filesystem"
                    }
                  },
                  "monitoring": {
                    "dashboards": {
                      "enabled": false
                    },
                    "lokiCanary": {
                      "enabled": false
                    },
                    "rules": {
                      "alerting": false,
                      "enabled": false
                    },
                    "selfMonitoring": {
                      "enabled": false,
                      "grafanaAgent": {
                        "installOperator": false
                      }
                    },
                    "serviceMonitor": {
                      "enabled": false,
                      "metricsInstance": {
                        "enabled": false
                      }
                    }
                  },
                  "rbac": {
                    "sccEnabled": true
                  },
                  "singleBinary": {
                    "replicas": 1
                  },
                  "test": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: quay.io/opdev/loki-helm-operator-controller:0.0.1
          createdAt: "2023-07-14T15:06:17Z"
          description: An experimental operator that installs loki from its official
            helmchart.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: hybrid.helm.sdk.operatorframework.io/v1-alpha
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys the loki operator helm chart
            displayName: Loki
            kind: Loki
            name: lokis.charts.example.com
            version: v1alpha1
        description: Loki operator based on the helm chart with single binary mode
          deployment optionality
        displayName: Loki Helm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - loki
        - single-binary
        - demo
        - helm
        links:
        - name: Loki Helm Operator
          url: https://github.com/skattoju/loki-helm-operator
        maintainers:
        - email: skattoju@redhat.com
          name: Sid Kattoju
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: opdev
          url: https://opdev.github.io/
        relatedImages:
        - quay.io/openshift-community-operators/loki-helm-operator@sha256:fa3662ec16e6cb3f866ad46982a50d8fdefb43c68f3caa13291239013e03af13
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/opdev/loki-helm-operator-controller:0.0.1
        version: 0.0.1
      entries:
      - name: loki-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: loki-helm-operator
    provider:
      name: opdev
      url: https://opdev.github.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: egressip-ipam-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: egressip-ipam-operator.v1.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "EgressIPAM",
                "metadata": {
                  "name": "egressipam-aws"
                },
                "spec": {
                  "cidrAssignments": [
                    {
                      "CIDR": "10.0.128.0/19",
                      "labelValue": "us-west-2a"
                    },
                    {
                      "CIDR": "10.0.160.0/19",
                      "labelValue": "us-west-2b",
                      "reservedIPs": [
                        "10.0.160.126"
                      ]
                    },
                    {
                      "CIDR": "10.0.192.0/19",
                      "labelValue": "us-west-2c"
                    }
                  ],
                  "nodeSelector": {
                    "matchLabels": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "topologyLabel": "failure-domain.beta.kubernetes.io/zone"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "EgressIPAM",
                "metadata": {
                  "name": "egressipam-baremetal"
                },
                "spec": {
                  "cidrAssignments": [
                    {
                      "CIDR": "192.169.0.0/24",
                      "labelValue": "true"
                    }
                  ],
                  "nodeSelector": {
                    "matchLabels": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "topologyLabel": "egressGateway"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Networking, Cloud Provider, Security
          certified: "false"
          containerImage: quay.io/redhat-cop/egressip-ipam-operator@sha256:d6129bd287b87696a23e0da64dcd598958f779dc88ae33b46b3c909dbab80adf
          createdAt: "2022-07-25T15:07:22Z"
          description: This operator provides automation around managing egressIPs.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: egressip-ipam-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/egressip-ipam-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EgressIPAM is the Schema for the egressipams API
            displayName: Egress IPAM
            kind: EgressIPAM
            name: egressipams.redhatcop.redhat.io
            version: v1alpha1
        description: |
          This operator automates the assignment of egressIPs to namespaces.
          Namespaces can opt in to receiving one or more egressIPs with the following annotation `egressip-ipam-operator.redhat-cop.io/egressipam:<egressIPAM>`, where `egressIPAM` is the CRD that controls how egressIPs are assigned.
          IPs assigned to the namespace can be looked up in the following annotation: `egressip-ipam-operator.redhat-cop.io/egressips`.

          EgressIP assignments is managed by the EgressIPAM CRD. Here is an example of it:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: EgressIPAM
          metadata:
            name: example-egressipam
          spec:
            cidrAssignments:
              - labelValue: "true"
                CIDR: 192.169.0.0/24
                reservedIPs:
                - "192.159.0.5"
            topologyLabel: egressGateway
            nodeSelector:
              node-role.kubernetes.io/worker: ""
          ```

          This EgressIPAM specifies that all nodes that comply with the specified node selector and that also have labels `egressGateway: "true"` will be assigned egressIP from the specified CIDR.

          Note that the `cidrAssigments` field is an array and therefore, multiple groups of nodes can be identified with the labelValue and different CIDRs can be assigned to them. This is usually not necessary on a bare metal deployment.

          In the bare metal scenario, when this egressCRD is created, all the `hostsubnet` relative to the nodes selected by this EgressIPAM will be update to have the EgressCIDRs field equal to the specified CIDR (see below for cloud provider scenarios).

          When a namespace is created with the opt-in annotation: `egressip-ipam-operator.redhat-cop.io/egressipam=<egressIPAM>`, an available egressIP is selected from the CIDR and assigned to the namespace.The `netnamespace` associated with this namespace is updated to use that egressIP.

          It is possible to specify a set of reserved IPs. These IPs must belong to the CIDR and will never be assigned.

          ## Passing EgressIPs as input

          The normal mode of operation of this operator is to pick a random IP from the configured CIDR. However, it also supports a scenario where egressIPs are picked by an external process and passed as input.

          In this case IPs must me passed as an annotation to the namespace, like this: `egressip-ipam-operator.redhat-cop.io/egressips=IP1,IP2...`. The value of the annotation is a comma separated array of ip with no spaces.

          There must be exactly one IP per CIDR defined in the referenced egressIPAM. Moreover, each IP must belong to the corresponding CIDR. Because this situation can lead to inconsistencies, failing to have correspondence between IPs in the namespace annotation and CIDRs in the egressIPAM CR will cause the operator to error out and stop processing all the namespaces associated with the given EgressIPAM CR.

          It also also a responsibility of the progress picking the IPs to ensure that those IPs are actually available.

          ## Assumptions

          The following assumptions apply when using this operator:

          1. If multiple EgressIPAMs are defined, their selected nodes MUST NOT overlap.
          2. When using a cloud provider the topology label MUST be `failure-domain.beta.kubernetes.io/zone`.

          ## Support for AWS

          In AWS as well as other cloud providers, one cannot freely assign IPs to machines. Additional steps need to be performed in this case. Considering this EgressIPAM

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: EgressIPAM
          metadata:
            name: egressipam-aws
          spec:
            cidrAssignments:
              - labelValue: "eu-central-1a"
                CIDR: 10.0.128.0/20
              - labelValue: "eu-central-1b"
                CIDR: 10.0.144.0/20
              - labelValue: "eu-central-1c"
                CIDR: 10.0.160.0/20
            topologyLabel: failure-domain.beta.kubernetes.io/zone
            nodeSelector:
              matchLabels:
                node-role.kubernetes.io/worker: ""
          ```

          When a namespace with the opt-in annotation is created, the following happens:

          1. for each of the CIDRs, an available IP is selected and assigned to the namespace
          2. the relative `netnamespace` is update to reflect the assignment (multiple IPs will be assigned in this case).
          3. one node per zone is selected to carry the egressIP
          4. the relative aws machines are assigned the additional IP on the main interface (support for secondary interfaces in not available)
          5. the relative `hostsubnets` are updated to reflect the assigned IP, the `egressIP` field is updated.
        displayName: Egressip Ipam Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - egressIPs
        - high availability
        - firewall support
        - traffic management
        - ipam
        links:
        - name: Egressip Ipam Operator
          url: https://github.com/redhat-cop/egressip-ipam-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/egressip-ipam-operator:v0.1.2
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/egressip-ipam-operator@sha256:1e2443488e0aad361cccece51689e2b8da882862cb62c1208a14ab1b5ec2922d
        - quay.io/redhat-cop/egressip-ipam-operator@sha256:d6129bd287b87696a23e0da64dcd598958f779dc88ae33b46b3c909dbab80adf
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.2.4
      entries:
      - name: egressip-ipam-operator.v1.2.4
        version: 1.2.4
      - name: egressip-ipam-operator.v1.2.3
        version: 1.2.3
      - name: egressip-ipam-operator.v1.2.2
        version: 1.2.2
      - name: egressip-ipam-operator.v1.2.1
        version: 1.2.1
      - name: egressip-ipam-operator.v1.2.0
        version: 1.2.0
      - name: egressip-ipam-operator.v1.1.0
        version: 1.1.0
      - name: egressip-ipam-operator.v1.0.8
        version: 1.0.8
      - name: egressip-ipam-operator.v1.0.7
        version: 1.0.7
      - name: egressip-ipam-operator.v1.0.6
        version: 1.0.6
      - name: egressip-ipam-operator.v1.0.5
        version: 1.0.5
      - name: egressip-ipam-operator.v1.0.4
        version: 1.0.4
      - name: egressip-ipam-operator.v1.0.3
        version: 1.0.3
      - name: egressip-ipam-operator.v1.0.2
        version: 1.0.2
      - name: egressip-ipam-operator.v1.0.1
        version: 1.0.1
      - name: egressip-ipam-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: egressip-ipam-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: windows-machine-config-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: windows-machine-config-operator.v10.20.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          createdAt: "2025-09-16T22:12:55Z"
          description: An operator that enables Windows container workloads on OCP
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=10.19.0 <10.20.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-windows-machine-config-operator
          operators.openshift.io/valid-subscription: '["Red Hat OpenShift support
            for Windows Containers"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/windows-machine-config-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          ### Introduction
          The Windows Machine Config Operator configures Windows Machines into nodes, enabling Windows container workloads to
          be run on OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets),
          or by specifying existing instances through a [ConfigMap](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/byoh-windows-instance)
          The operator completes all the necessary steps to configure the Windows instance so that it can join the cluster as a worker node.

          Usage of this operator requires an OpenShift Container Platform for Windows Containers subscription. Users looking to
          deploy Windows containers workloads in production clusters should acquire a subscription before attempting to
          install this operator. Users without a subscription can try the community operator, a distribution which lacks
          official support.

          ### Pre-requisites
          * A Red Hat OpenShift Container Platform for Windows Containers [subscription](https://access.redhat.com/support/policy/updates/openshift#windows)
          * OCP 4.20 cluster running on Azure, AWS, GCP or vSphere configured with hybrid OVN Kubernetes networking
          * [WMCO prerequisites](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/understanding-windows-container-workloads)

          ### Usage
          Once the `openshift-windows-machine-config-operator` namespace has been created, a secret must be created containing
          the private key that will be used to access the Windows VMs:
          ```
          # Create secret containing the private key in the openshift-windows-machine-config-operator namespace
          oc create secret generic cloud-private-key --from-file=private-key.pem=/path/to/key -n openshift-windows-machine-config-operator
          ```
          We strongly recommend not using the same
          [private key](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/installing_on_azure/installing-on-azure#ssh-agent-using_installing-azure-customizations)
          used when installing the cluster

          Below is an example of a vSphere Windows MachineSet which can create Windows Machines that the WMCO can react upon.
          Please note that the windows-user-data secret will be created by the WMCO lazily when it is configuring the first
          Windows Machine. After that, the windows-user-data will be available for the subsequent MachineSets to be consumed.
          It might take around 10 minutes for the Windows VM to be configured so that it joins the cluster. Please note that
          the MachineSet should have following labels:
          * `machine.openshift.io/os-id: Windows`
          * `machine.openshift.io/cluster-api-machine-role: worker`
          * `machine.openshift.io/cluster-api-machine-type: worker`

          The following label must be added to the Machine spec within the MachineSet spec:
          * `node-role.kubernetes.io/worker: ""`

          Not having these labels will result in the Windows node not being marked as a worker.

          `<infrastructureID>` should be replaced with the output of:
          ```
          oc get -o jsonpath='{.status.infrastructureName}{"\n"}' infrastructure cluster
          ```

          The following template variables need to be replaced as follows with values from your vSphere environment:
          * `<Windows_VM_template>`: template name
          * `<VM Network Name>`: network name
          * `<vCenter DataCenter Name>`: datacenter name
          * `<Path to VM Folder in vCenter>`: path where your OpenShift cluster is running
          * `<vCenter Datastore Name>`: datastore name
          * `<vCenter Server FQDN/IP>`: IP address or FQDN of the vCenter server

          Please note that on vSphere, Windows Machine names cannot be more than 15 characters long. The MachineSet name therefore
          cannot be more than 9 characters long, due to the way Machine names are generated from it.
          ```
          apiVersion: machine.openshift.io/v1beta1
          kind: MachineSet
          metadata:
            labels:
              machine.openshift.io/cluster-api-cluster: <infrastructureID>
            name: winworker
            namespace: openshift-machine-api
          spec:
            replicas: 1
            selector:
              matchLabels:
                machine.openshift.io/cluster-api-cluster: <infrastructureID>
                machine.openshift.io/cluster-api-machineset: winworker
            template:
              metadata:
                labels:
                  machine.openshift.io/cluster-api-cluster: <infrastructureID>
                  machine.openshift.io/cluster-api-machine-role: worker
                  machine.openshift.io/cluster-api-machine-type: worker
                  machine.openshift.io/cluster-api-machineset: winworker
                  machine.openshift.io/os-id: Windows
              spec:
                metadata:
                  labels:
                    node-role.kubernetes.io/worker: ""
                providerSpec:
                  value:
                    apiVersion: vsphereprovider.openshift.io/v1beta1
                    credentialsSecret:
                      name: vsphere-cloud-credentials
                      namespace: openshift-machine-api
                    diskGiB: 128
                    kind: VSphereMachineProviderSpec
                    memoryMiB: 16384
                    metadata:
                      creationTimestamp: null
                    network:
                      devices:
                      - networkName: "<VM Network Name>"
                    numCPUs: 4
                    numCoresPerSocket: 1
                    snapshot: ""
                    template: <Windows_VM_template
                    userDataSecret:
                      name: windows-user-data
                    workspace:
                      datacenter: <vCenter DataCenter Name>
                      datastore: <vCenter Datastore Name>
                      folder: <Path to VM Folder in vCenter> # e.g. /DC/vm/ocp45-2tdrm
                      server: <vCenter Server FQDN/IP>
          ```
          Example MachineSet for other cloud providers:
          - [AWS](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-aws)
          - [Azure](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-azure)
          - [GCP](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-gcp)

          ### Limitations
          #### DeploymentConfigs
          Windows Nodes do not support workloads created via DeploymentConfigs. Please use a normal Deployment, or other method to
          deploy workloads.

          ### Reporting issues
          Support for this distribution of WMCO requires a Red Hat OpenShfit subscription. Support should be requested through the Red Hat Customer Portal.
          Please read through the [troubleshooting document](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/support/troubleshooting)
          before opening a support case.
        displayName: Windows Machine Config Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - windows
        maintainers:
        - email: team-winc@redhat.com
          name: Red Hat, Windows Container Support for OpenShift
        maturity: stable
        minKubeVersion: 1.33.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4-wincw/windows-machine-config-rhel9-operator@sha256:9d5bdca5f80895a316d7af75e8c5316b0e27ded1dd4b4d4fac01ef1c23b7a6fc
        - registry.redhat.io/openshift4-wincw/windows-machine-config-operator-bundle@sha256:e3d896e0f2e6713ad972f733d7424af371a0d75ce6fd0f8b9fadf5ad71c6c22d
        version: 10.20.0
      entries:
      - name: windows-machine-config-operator.v10.20.0
        version: 10.20.0
      name: stable
    defaultChannel: stable
    packageName: windows-machine-config-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-keyspaces-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-keyspaces-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keyspaces.services.k8s.aws/v1alpha1",
                "kind": "Keyspace",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "keyspaces.services.k8s.aws/v1alpha1",
                "kind": "Table",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/keyspaces-controller:1.2.0
          createdAt: "2025-11-29T04:36:08Z"
          description: AWS Keyspaces controller is a service controller for managing
            Keyspaces resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Keyspace represents the state of an AWS keyspaces Keyspace
              resource.
            displayName: Keyspace
            kind: Keyspace
            name: keyspaces.keyspaces.services.k8s.aws
            version: v1alpha1
          - description: Table represents the state of an AWS keyspaces Table resource.
            displayName: Table
            kind: Table
            name: tables.keyspaces.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Keyspaces resources in AWS from within your Kubernetes cluster.

          **About Amazon Keyspaces**

          Amazon Keyspaces (for Apache Cassandra) is a scalable, highly available, and managed Apache Cassandra–compatible database service. With Amazon Keyspaces, you don’t have to provision, patch, or manage servers, and you don’t have to install, maintain, or operate software.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Keyspaces
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - keyspaces
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Keyspaces Developer Resources
          url: https://aws.amazon.com/keyspaces/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: keyspaces maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/keyspaces-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-keyspaces-controller@sha256:95da338a7390cc9e5fbff4b5d22d7741d4e1d67ed4403c874dd39b073e3a0487
        version: 1.2.0
      entries:
      - name: ack-keyspaces-controller.v1.2.0
        version: 1.2.0
      - name: ack-keyspaces-controller.v1.1.2
        version: 1.1.2
      - name: ack-keyspaces-controller.v1.1.1
        version: 1.1.1
      - name: ack-keyspaces-controller.v1.1.0
        version: 1.1.0
      - name: ack-keyspaces-controller.v1.0.14
        version: 1.0.14
      - name: ack-keyspaces-controller.v1.0.12
        version: 1.0.12
      - name: ack-keyspaces-controller.v1.0.11
        version: 1.0.11
      - name: ack-keyspaces-controller.v1.0.10
        version: 1.0.10
      - name: ack-keyspaces-controller.v1.0.9
        version: 1.0.9
      - name: ack-keyspaces-controller.v1.0.7
        version: 1.0.7
      - name: ack-keyspaces-controller.v1.0.6
        version: 1.0.6
      - name: ack-keyspaces-controller.v1.0.5
        version: 1.0.5
      - name: ack-keyspaces-controller.v1.0.3
        version: 1.0.3
      - name: ack-keyspaces-controller.v1.0.2
        version: 1.0.2
      - name: ack-keyspaces-controller.v1.0.1
        version: 1.0.1
      - name: ack-keyspaces-controller.v1.0.0
        version: 1.0.0
      - name: ack-keyspaces-controller.v0.0.16
        version: 0.0.16
      - name: ack-keyspaces-controller.v0.0.15
        version: 0.0.15
      - name: ack-keyspaces-controller.v0.0.14
        version: 0.0.14
      - name: ack-keyspaces-controller.v0.0.13
        version: 0.0.13
      - name: ack-keyspaces-controller.v0.0.12
        version: 0.0.12
      - name: ack-keyspaces-controller.v0.0.11
        version: 0.0.11
      - name: ack-keyspaces-controller.v0.0.10
        version: 0.0.10
      - name: ack-keyspaces-controller.v0.0.9
        version: 0.0.9
      - name: ack-keyspaces-controller.v0.0.8
        version: 0.0.8
      - name: ack-keyspaces-controller.v0.0.7
        version: 0.0.7
      - name: ack-keyspaces-controller.v0.0.6
        version: 0.0.6
      - name: ack-keyspaces-controller.v0.0.5
        version: 0.0.5
      - name: ack-keyspaces-controller.v0.0.4
        version: 0.0.4
      - name: ack-keyspaces-controller.v0.0.3
        version: 0.0.3
      - name: ack-keyspaces-controller.v0.0.2
        version: 0.0.2
      - name: ack-keyspaces-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-keyspaces-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Managed Openshift Black Belt
      provider-url: ""
    name: ecr-secret-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ecr-secret-operator.v0.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecr.mobb.redhat.com/v1alpha1",
                "kind": "Secret",
                "metadata": {
                  "name": "ecr-secret-sample",
                  "namespace": "test-ecr-secret-operator"
                },
                "spec": {
                  "ecr_registry": "ACCOUNT_ID.dkr.ecr.us-east-2.amazonaws.com",
                  "frequency": "10h",
                  "generated_secret_name": "ecr-docker-secret",
                  "region": "us-east-2"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/mobb/ecr-secret-operator:v0.3.2
          operatorframework.io/suggested-namespace: ecr-secret-operator
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-mobb/ecr-secret-operator
          support: Managed Openshift Black Belt
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Secret is the Schema for the secrets API
            displayName: Secret
            kind: Secret
            name: secrets.ecr.mobb.redhat.com
            version: v1alpha1
        description: "# ECR Secret Operator\n\nAmazon Elastic Container Registry [Private
          Registry Authentication](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry_auth.html)
          provides a temporary token that is valid only for 12 hours. It is a challenge
          for automatic container image build process to refresh the token or secret
          in a timely manner.\n\nThis operators frequently talks with AWS ECR GetAuthroization
          Token and create/update the secret, so that the service account can perform
          docker image build.\n\n\n## How to use this operator\n\n### Prerequisites\n\n*
          [Create an ECR private repository](https://docs.aws.amazon.com/AmazonECR/latest/userguide/repository-create.html)\n*
          Create An Openshift Cluster\n* Provide AWS Authentication to the operator.
          Two Options:\n  **Note: You have to provide a secret aws-ecr-cloud-credentials
          in the installed namespace**\n  * [IAM User](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_user.md)\n
          \ * [STS Assume Role](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_assume_role.md)\n\n###
          Install the operator\n\n### Create the ECR Secret CRD\n\n```\napiVersion:
          ecr.mobb.redhat.com/v1alpha1\nkind: Secret\nmetadata:\n  name: ecr-secret\n
          \ namespace: test-ecr-secret-operator\nspec:\n  generated_secret_name: ecr-docker-secret\n
          \ ecr_registry: [ACCOUNT_ID].dkr.ecr.us-east-2.amazonaws.com\n  frequency:
          10h\n  region: us-east-2\n```\n\n```\noc create -f CRD_FILE\n```\n\nA docker
          registry secret is created by the operator momentally and the token is patched
          every 10 hours\n\n```\noc get secret ecr-docker-secret   \nNAME                TYPE
          \                            DATA   AGE\necr-docker-secret   kubernetes.io/dockerconfigjson
          \  1      16h\n```\n\n### A sample build process with generated secret\n\n\nLink
          the secret to builder\n\n```\noc secrets link builder ecr-docker-secret
          \n```\n\nConfigure [build config](https://github.com/rh-mobb/ecr-secret-operator/tree/main/samples/build-config.yaml)
          to point to your ECR Container repository\n\n```\noc create imagestream
          ruby\noc tag openshift/ruby:2.5-ubi8 ruby:2.5\noc create -f samples/build-config.yaml\noc
          start-build ruby-sample-build --wait\n```\n\nBuild should succeed and push
          the image to the the private ECR Container repository\n\n"
        displayName: ECR Secret Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecr
        - aws
        - redhat
        links:
        - name: Ecr Secret Operator
          url: https://github.com/rh-mobb/ecr-secret-operator
        maintainers:
        - email: shading@redhat.com
          name: Shaozhen Ding
        maturity: alpha
        provider:
          name: Managed Openshift Black Belt
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/mobb/ecr-secret-operator:v0.3.2
        - quay.io/openshift-community-operators/ecr-secret-operator@sha256:90f512ce90433a33b50c58613d9b7136e00f116c48e179c4a1be89d6a35f9abc
        version: 0.3.2
      entries:
      - name: ecr-secret-operator.v0.3.2
        version: 0.3.2
      name: v0.3
    - currentCSV: ecr-secret-operator.v0.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecr.mobb.redhat.com/v1alpha1",
                "kind": "Secret",
                "metadata": {
                  "name": "ecr-secret-sample",
                  "namespace": "test-ecr-secret-operator"
                },
                "spec": {
                  "ecr_registry": "ACCOUNT_ID.dkr.ecr.us-east-2.amazonaws.com",
                  "frequency": "10h",
                  "generated_secret_name": "ecr-docker-secret",
                  "region": "us-east-2"
                }
              },
              {
                "apiVersion": "ecr.mobb.redhat.com/v1alpha1",
                "kind": "ArgoHelmRepoSecret",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ecr-secret-operator",
                    "app.kubernetes.io/instance": "argohelmreposecret-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "argohelmreposecret",
                    "app.kubernetes.io/part-of": "ecr-secret-operator"
                  },
                  "name": "argohelmreposecret-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/mobb/ecr-secret-operator:v0.4.1
          createdAt: "2023-04-14T14:52:13Z"
          operatorframework.io/suggested-namespace: ecr-secret-operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-mobb/ecr-secret-operator
          support: Managed Openshift Black Belt
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ArgoHelmRepoSecret is the Schema for the argohelmreposecrets
              API
            displayName: Argo Helm Repo Secret
            kind: ArgoHelmRepoSecret
            name: argohelmreposecrets.ecr.mobb.redhat.com
            version: v1alpha1
          - description: Secret is the Schema for the secrets API
            displayName: Secret
            kind: Secret
            name: secrets.ecr.mobb.redhat.com
            version: v1alpha1
        description: "# ECR Secret Operator\n\nAmazon Elastic Container Registry [Private
          Registry Authentication](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry_auth.html)
          provides a temporary token that is valid only for 12 hours. It is a challenge
          for automatic container image build process to refresh the token or secret
          in a timely manner.\n\nThis operators frequently talks with AWS ECR GetAuthroization
          Token and create/update the secret, so that the service account can perform
          docker image build.\n\n\n## How to use this operator\n\n### Prerequisites\n\n*
          [Create an ECR private repository](https://docs.aws.amazon.com/AmazonECR/latest/userguide/repository-create.html)\n*
          Create An Openshift Cluster\n* Provide AWS Authentication to the operator.
          Two Options:\n  **Note: You have to provide a secret aws-ecr-cloud-credentials
          in the installed namespace**\n  * [IAM User](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_user.md)\n
          \ * [STS Assume Role](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_assume_role.md)\n\n###
          Install the operator\n\n### Create the ECR Secret CRD\n\n```\napiVersion:
          ecr.mobb.redhat.com/v1alpha1\nkind: Secret\nmetadata:\n  name: ecr-secret\n
          \ namespace: test-ecr-secret-operator\nspec:\n  generated_secret_name: ecr-docker-secret\n
          \ ecr_registry: [ACCOUNT_ID].dkr.ecr.us-east-2.amazonaws.com\n  frequency:
          10h\n  region: us-east-2\n```\n\n```\noc create -f CRD_FILE\n```\n\nA docker
          registry secret is created by the operator momentally and the token is patched
          every 10 hours\n\n```\noc get secret ecr-docker-secret   \nNAME                TYPE
          \                            DATA   AGE\necr-docker-secret   kubernetes.io/dockerconfigjson
          \  1      16h\n```\n\n### A sample build process with generated secret\n\n\nLink
          the secret to builder\n\n```\noc secrets link builder ecr-docker-secret
          \n```\n\nConfigure [build config](https://github.com/rh-mobb/ecr-secret-operator/tree/main/samples/build-config.yaml)
          to point to your ECR Container repository\n\n```\noc create imagestream
          ruby\noc tag openshift/ruby:2.5-ubi8 ruby:2.5\noc create -f samples/build-config.yaml\noc
          start-build ruby-sample-build --wait\n```\n\nBuild should succeed and push
          the image to the the private ECR Container repository\n\n"
        displayName: ECR Secret Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecr
        - aws
        - redhat
        links:
        - name: Ecr Secret Operator
          url: https://github.com/rh-mobb/ecr-secret-operator
        maintainers:
        - email: shading@redhat.com
          name: Shaozhen Ding
        maturity: alpha
        provider:
          name: Managed Openshift Black Belt
        relatedImages:
        - quay.io/openshift-community-operators/ecr-secret-operator@sha256:53e73c53c31e0e06c990d3d966c2b4053d559a58a17a781155a3ceff3efac831
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/mobb/ecr-secret-operator:v0.4.1
        version: 0.4.1
      entries:
      - name: ecr-secret-operator.v0.4.1
        version: 0.4.1
      - name: ecr-secret-operator.v0.4.0
        version: 0.4.0
      name: v0.4
    defaultChannel: v0.4
    packageName: ecr-secret-operator
    provider:
      name: Managed Openshift Black Belt
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: node-healthcheck-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-healthcheck-operator.v0.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample"
                },
                "spec": {
                  "minHealthy": "51%",
                  "remediationTemplate": {
                    "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                    "kind": "SelfNodeRemediationTemplate",
                    "name": "self-node-remediation-automatic-strategy-template",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/plugins: '["node-remediation-console-plugin"]'
          containerImage: registry.redhat.io/workload-availability/node-healthcheck-rhel9-operator@sha256:f7ef379b374b824da311a2696351b5bd930717d193515f68f12040b40df8e75c
          createdAt: "2025-11-11 21:43:16"
          description: Detect failed Nodes and trigger remediation with a remediation
            operator.
          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: "true"
          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.skipRange: '>=0.9.0 <0.10.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Hardware is imperfect, and software contains bugs. When node level failures such as kernel hangs or dead NICs
          occur, the work required from the cluster does not decrease - workloads from affected nodes need to be
          restarted somewhere.

          However some workloads, such as RWO volumes and StatefulSets, may require at-most-one semantics.
          Failures affecting these kind of workloads risk data loss and/or corruption if nodes (and the workloads
          running on them) are assumed to be dead whenever we stop hearing from them. For this reason it is important
          to know that the node has reached a safe state before initiating recovery of the workload.

          Unfortunately it is not always practical to require admin intervention in order to confirm the node’s true status.
          In order to automate the recovery of exclusive workloads, we provide operators for failure detection
          and remediation.

          ### Failure detection: Node Health Check operator
          The “Node Health Check” (NHC) operator checks each Node’s set of
          NodeConditions (eg. NotReady) against the criteria and thresholds defined in
          NodeHealthCheck configuration. If the Node is deemed to be in a failed
          state, NHC will initiate recovery by using the SIG Cluster API's “External
          Remediation” API to instantiate the configured remediation template which
          specifies the mechanism/controller to be used.

          ### Failure handling: External remediators
          There are multiple remediators for handling node failure that we recommend:
          - Self Node Remediation (SNR)
          - Fence Agents Remediation (FAR)
          - Machine Deletion Remediation (MDR)

          #### Self Node Remediation (SNR)
          SNR uses watchdog timers and heuristics to ensure nodes enter a safe state
          (no longer hosting workloads) within a known and finite period of time,
          before signaling to the system that all Pods on the failed Node are no longer active
          and can be relocated elsewhere.
          In the case of transient errors, the watchdog’s actions will also result in
          the node rebooting and rejoining the cluster - restoring capacity.

          #### Fence Agents Remediation (FAR)
          FAR uses well-known agents to fence unhealthy nodes, and eventually FAR remediates the nodes.
          The remediation includes rebooting the unhealthy node using a fence agent,
          and then evicting workloads from the unhealthy node.

          #### Machine Deletion Remediation (MDR)
          MDR is limited to OpenShift, and it uses Machine API for reprovisioning unhealthy nodes by deleting their machines.
        displayName: Node Health Check Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - NHC
        - Self Node Remediation
        - SNR
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance
        - name: Source Code
          url: https://github.com/medik8s/node-healthcheck-operator
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/node-healthcheck-must-gather-rhel9@sha256:6bfbfe36d4e01d1b320a6f8a3ffb2d937b7c2cdc17884d63a29f02c1e4e4d658
        - registry.redhat.io/workload-availability/node-healthcheck-rhel9-operator@sha256:f7ef379b374b824da311a2696351b5bd930717d193515f68f12040b40df8e75c
        - registry.redhat.io/workload-availability/node-remediation-console-rhel9@sha256:e476663624956f6c00387cac9e41129973718f8cb46129153d1e58a039357683
        - registry.redhat.io/workload-availability/node-healthcheck-operator-bundle@sha256:e60e749a273732fa4f3c570ecdb250f71e747b81fe379b5ffb75282d293032a8
        version: 0.10.1
      entries:
      - name: node-healthcheck-operator.v0.10.1
        version: 0.10.1
      - name: node-healthcheck-operator.v0.10.0
        version: 0.10.0
      - name: node-healthcheck-operator.v0.9.1
        version: 0.9.1
      - name: node-healthcheck-operator.v0.9.0
        version: 0.9.0
      name: stable
    defaultChannel: stable
    packageName: node-healthcheck-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CephCSI Community
      provider-url: ""
    name: cephcsi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cephcsi-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:50:12Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CephConnection
            name: cephconnections.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfileMapping
            name: clientprofilemappings.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfile
            name: clientprofiles.csi.ceph.io
            version: v1alpha1
          - kind: Driver
            name: drivers.csi.ceph.io
            version: v1alpha1
          - kind: OperatorConfig
            name: operatorconfigs.csi.ceph.io
            version: v1alpha1
        description: Operator to deploy ceph csi drivers.
        displayName: CephCSI operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: Github Repo
          url: https://github.com/ceph/ceph-csi-operator
        maintainers:
        - email: ceph-csi-team@redhat.com
          name: CephCSI Community
        maturity: alpha
        provider:
          name: CephCSI Community
        relatedImages:
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:1bc7b2785534ab8d8a9a00e81cdc961838a817df7c3c5d4de527b0e5eb697d9a
        - registry.redhat.io/odf4/cephcsi-rhel9-operator@sha256:55e3fb0c0f140fa98e90b639cb0bf933874977d5cebaef1b885150fde7dcc77a
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: cephcsi-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: cephcsi-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: cephcsi-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: cephcsi-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: cephcsi-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: cephcsi-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: cephcsi-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: cephcsi-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: cephcsi-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: cephcsi-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: cephcsi-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:35:25Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CephConnection
            name: cephconnections.csi.ceph.io
            version: v1
          - kind: CephConnection
            name: cephconnections.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfileMapping
            name: clientprofilemappings.csi.ceph.io
            version: v1
          - kind: ClientProfileMapping
            name: clientprofilemappings.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfile
            name: clientprofiles.csi.ceph.io
            version: v1
          - kind: ClientProfile
            name: clientprofiles.csi.ceph.io
            version: v1alpha1
          - kind: Driver
            name: drivers.csi.ceph.io
            version: v1
          - kind: Driver
            name: drivers.csi.ceph.io
            version: v1alpha1
          - kind: OperatorConfig
            name: operatorconfigs.csi.ceph.io
            version: v1
          - kind: OperatorConfig
            name: operatorconfigs.csi.ceph.io
            version: v1alpha1
        description: Operator to deploy ceph csi drivers.
        displayName: CephCSI operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: Github Repo
          url: https://github.com/ceph/ceph-csi-operator
        maintainers:
        - email: ceph-csi-team@redhat.com
          name: CephCSI Community
        maturity: alpha
        provider:
          name: CephCSI Community
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:87990cdf6adf9a27e9bf9a4d6935d6c7328939da223bc1d145b0991b2dfea25c
        - registry.redhat.io/odf4/cephcsi-rhel9-operator@sha256:4a25fab343836486ac80c25d69e3d5d1223911085a5e6a7240eecaa1ed7b952d
        version: 4.20.4-rhodf
      entries:
      - name: cephcsi-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: cephcsi-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: cephcsi-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: cephcsi-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: cephcsi-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: cephcsi-operator
    provider:
      name: CephCSI Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: o-cloud-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: o-cloud-manager.v4.20.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ClusterTemplate",
                "metadata": {
                  "name": "clustertemplate-sample.v1.0.0",
                  "namespace": "clustertemplate-a-v4-16-3"
                },
                "spec": {
                  "characteristics": {
                    "age": "31"
                  },
                  "description": "nice description",
                  "metadata": {
                    "apple": "23"
                  },
                  "name": "clustertemplate-a",
                  "release": "4.16.3",
                  "templateParameterSchema": {
                    "properties": {
                      "clusterInstanceParameters": {
                        "description": "clusterInstanceParameters defines the available parameters for cluster installation",
                        "properties": {
                          "additionalNTPSources": {
                            "description": "AdditionalNTPSources is a list of NTP sources (hostname or IP) to be added to all cluster hosts. They are added to any NTP sources that were configured through other means.",
                            "items": {
                              "type": "string"
                            },
                            "type": "array"
                          },
                          "apiVIPs": {
                            "description": "APIVIPs are the virtual IPs used to reach the OpenShift cluster's API. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "baseDomain": {
                            "description": "BaseDomain is the base domain to use for the deployed cluster.",
                            "type": "string"
                          },
                          "clusterName": {
                            "description": "ClusterName is the name of the cluster.",
                            "type": "string"
                          },
                          "extraAnnotations": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide annotations to be applied to the rendered templates",
                            "type": "object"
                          },
                          "extraLabels": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide labels to be applied to the rendered templates",
                            "type": "object"
                          },
                          "ingressVIPs": {
                            "description": "IngressVIPs are the virtual IPs used for cluster ingress traffic. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "machineNetwork": {
                            "description": "MachineNetwork is the list of IP address pools for machines.",
                            "items": {
                              "description": "MachineNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "nodes": {
                            "items": {
                              "description": "NodeSpec",
                              "properties": {
                                "extraAnnotations": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level annotations to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "extraLabels": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level labels to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "hostName": {
                                  "description": "Hostname is the desired hostname for the host",
                                  "type": "string"
                                },
                                "nodeLabels": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "NodeLabels allows the specification of custom roles for your nodes in your managed clusters. These are additional roles are not used by any OpenShift Container Platform components, only by the user. When you add a custom role, it can be associated with a custom machine config pool that references a specific configuration for that role. Adding custom labels or roles during installation makes the deployment process more effective and prevents the need for additional reboots after the installation is complete.",
                                  "type": "object"
                                },
                                "nodeNetwork": {
                                  "description": "NodeNetwork is a set of configurations pertaining to the network settings for the node.",
                                  "properties": {
                                    "config": {
                                      "description": "yaml that can be processed by nmstate, using custom marshaling/unmarshaling that will allow to populate nmstate config as plain yaml.",
                                      "type": "object",
                                      "x-kubernetes-preserve-unknown-fields": true
                                    }
                                  },
                                  "type": "object"
                                }
                              },
                              "required": [
                                "hostName"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "serviceNetwork": {
                            "description": "ServiceNetwork is the list of IP address pools for services.",
                            "items": {
                              "description": "ServiceNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "sshPublicKey": {
                            "description": "SSHPublicKey is the public Secure Shell (SSH) key to provide access to instances. This key will be added to the host to allow ssh access",
                            "type": "string"
                          }
                        },
                        "required": [
                          "clusterName",
                          "nodes"
                        ],
                        "type": "object"
                      },
                      "nodeClusterName": {
                        "type": "string"
                      },
                      "oCloudSiteId": {
                        "type": "string"
                      },
                      "policyTemplateParameters": {
                        "description": "policyTemplateParameters defines the available parameters for cluster configuration",
                        "properties": {
                          "cpu-isolated": {
                            "type": "string"
                          },
                          "cpu-reserved": {
                            "type": "string"
                          },
                          "hugepages-count": {
                            "type": "string"
                          },
                          "hugepages-default": {
                            "type": "string"
                          },
                          "hugepages-size": {
                            "type": "string"
                          },
                          "install-plan-approval": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-1": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-2": {
                            "type": "string"
                          },
                          "sriov-network-vlan-1": {
                            "type": "string"
                          },
                          "sriov-network-vlan-2": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "required": [
                      "nodeClusterName",
                      "oCloudSiteId",
                      "policyTemplateParameters",
                      "clusterInstanceParameters"
                    ],
                    "type": "object"
                  },
                  "templates": {
                    "clusterInstanceDefaults": "clustertemplate-sample.v1.0.0-clusterinstance-defaults",
                    "hwTemplate": "sample-hwtemplate-v1",
                    "policyTemplateDefaults": "clustertemplate-sample.v1.0.0-policytemplate-defaults",
                    "upgradeDefaults": "upgrade-defaults-v1"
                  },
                  "version": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwarePlugin",
                "metadata": {
                  "name": "metal3-hwplugin",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "apiRoot": "https://metal3-hardwareplugin-server.oran-o2ims.svc.cluster.local:8443",
                  "authClientConfig": {
                    "type": "ServiceAccount"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareProfile",
                "metadata": {
                  "name": "hardwareprofile-sample",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bios": {
                    "attributes": {
                      "SriovGlobalEnable": "Enabled",
                      "SysProfile": "Custom",
                      "WorkloadProfile": "TelcoOptimizedProfile"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareTemplate",
                "metadata": {
                  "name": "r740-blue-basic",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hardwareProvisioningTimeout": "60m",
                  "nodeGroupData": [
                    {
                      "hwProfile": "rh-profile-r740-bios-settings",
                      "name": "controller",
                      "resourceSelector": {
                        "resourceselector.clcm.openshift.io/server-colour": "blue",
                        "server-type": "R740"
                      },
                      "role": "master"
                    }
                  ]
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ProvisioningRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "provisioningrequest-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "provisioningrequest",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "123e4567-e89b-12d3-a456-426614174000"
                },
                "spec": {
                  "description": "Provisioning request for setting up a Single Node OpenShift (SNO) in the test environment.",
                  "name": "TestEnv-SNO-Provisioning-site-sno-du-1",
                  "templateName": "clustertemplate-sample",
                  "templateParameters": {
                    "clusterInstanceParameters": {
                      "additionalNTPSources": [
                        "NTP.server1",
                        "1.1.1.1"
                      ],
                      "apiVIPs": [
                        "192.0.2.2"
                      ],
                      "baseDomain": "example.com",
                      "clusterName": "site-sno-du-1",
                      "extraAnnotations": {
                        "AgentClusterInstall": {
                          "extra-annotation-key": "extra-annotation-value"
                        }
                      },
                      "extraLabels": {
                        "AgentClusterInstall": {
                          "extra-label-key": "extra-label-value"
                        },
                        "ManagedCluster": {
                          "cluster-version": "v4.16",
                          "clustertemplate-a-policy": "v1"
                        }
                      },
                      "ingressVIPs": [
                        "192.0.2.3"
                      ],
                      "machineNetwork": [
                        {
                          "cidr": "192.0.2.0/24"
                        }
                      ],
                      "nodes": [
                        {
                          "bootMode": "UEFI",
                          "extraAnnotations": {
                            "BareMetalHost": {
                              "extra-annotation-key": "extra-annotation-value"
                            }
                          },
                          "extraLabels": {
                            "BareMetalHost": {
                              "extra-label-key": "extra-label-value"
                            }
                          },
                          "hostName": "node1.baseDomain.com",
                          "nodeLabels": {
                            "node-role.kubernetes.io/infra": "",
                            "node-role.kubernetes.io/master": ""
                          },
                          "nodeNetwork": {
                            "config": {
                              "dns-resolver": {
                                "config": {
                                  "server": [
                                    "192.0.2.22"
                                  ]
                                }
                              },
                              "interfaces": [
                                {
                                  "ipv4": {
                                    "address": [
                                      {
                                        "ip": "192.0.2.10",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.11",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.12",
                                        "prefix-length": 24
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:601",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:602",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:603",
                                        "prefix-length": 64
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "name": "eno1",
                                  "type": "ethernet"
                                },
                                {
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:1302::100"
                                      }
                                    ],
                                    "enabled": true,
                                    "link-aggregation": {
                                      "mode": "balance-rr",
                                      "options": {
                                        "miimon": "140"
                                      },
                                      "slaves": [
                                        "eth0",
                                        "eth1"
                                      ]
                                    },
                                    "prefix-length": 64
                                  },
                                  "name": "bond99",
                                  "state": "up",
                                  "type": "bond"
                                }
                              ],
                              "routes": {
                                "config": [
                                  {
                                    "destination": "0.0.0.0/0",
                                    "next-hop-address": "192.0.2.254",
                                    "next-hop-interface": "eno1",
                                    "table-id": 254
                                  }
                                ]
                              }
                            }
                          }
                        }
                      ],
                      "serviceNetwork": [
                        {
                          "cidr": "233.252.0.0/24"
                        }
                      ],
                      "sshPublicKey": "ssh-rsa"
                    },
                    "nodeClusterName": "site-sno-du-1",
                    "oCloudSiteId": "local-west-12345",
                    "policyTemplateParameters": {
                      "sriov-network-vlan-1": "114",
                      "sriov-network-vlan-2": "111"
                    }
                  },
                  "templateVersion": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "ocloud.openshift.io/v1alpha1",
                "kind": "Inventory",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "inventory-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "inventory",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "default",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "caBundleName": "o2ims-custom-ca-certs",
                  "cloudID": "b7dcb3ff-583d-42d9-abb5-f484386fc688",
                  "ingress": {
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    }
                  },
                  "smo": {
                    "oauth": {
                      "clientSecretName": "oauth-client-secrets",
                      "groupsClaim": "roles",
                      "scopes": [
                        "openid",
                        "profile",
                        "role:ocloud-manager"
                      ],
                      "tokenEndpoint": "/protocol/openid-connect/token",
                      "url": "https://oauth.example.com:8443/realms/oran",
                      "usernameClaim": "preferred_username"
                    },
                    "registrationEndpoint": "/smo/v1/registration",
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    },
                    "url": "https://smo.example.com"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "AllocatedNode",
                "metadata": {
                  "name": "91c70863-8a83-422a-ab7a-a75f744d5210",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "groupName": "controller",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hwMgrNodeId": "r740xserver1",
                  "hwMgrNodeNs": "r740-pool",
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "nodeAllocationRequest": "metal3-b12f3e77848a4002bf40"
                },
                "status": {
                  "bmc": {
                    "address": "idrac-virtualmedia+https://127.0.0.1/redfish/v1/Systems/System.Embedded.1",
                    "credentialsName": "bmc-secret-r740xserver1"
                  },
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Provisioned",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "interfaces": [
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:19",
                      "name": "ens1f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1a",
                      "name": "ens3f1np1"
                    },
                    {
                      "label": "bootable-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1b",
                      "name": "eno1np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1c",
                      "name": "ens5f3"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1d",
                      "name": "ens5f1"
                    },
                    {
                      "label": "data-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1e",
                      "name": "eno2np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1f",
                      "name": "ens7f0np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:20",
                      "name": "ens7f1np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:21",
                      "name": "ens1f1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:22",
                      "name": "ens5f2"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:23",
                      "name": "ens5f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:24",
                      "name": "ens3f0np0"
                    }
                  ]
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "NodeAllocationRequest",
                "metadata": {
                  "name": "metal3-b12f3e77848a4002bf40",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "clusterId": "cluster1",
                  "configTransactionId": 1,
                  "hardwarePluginRef": "metal3-hwplugin",
                  "nodeGroup": [
                    {
                      "nodeGroupData": {
                        "hwProfile": "rh-profile-r740-bios-settings",
                        "name": "controller",
                        "resourceSelector": {
                          "resourceselector.clcm.openshift.io/server-colour": "blue",
                          "server-type": "R740"
                        },
                        "role": "master"
                      },
                      "size": 1
                    }
                  ],
                  "site": "ottawa"
                },
                "status": {
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Created",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwMgrPlugin": {
                    "observedGeneration": 1
                  },
                  "observedConfigTransactionId": 0,
                  "properties": {
                    "nodeNames": [
                      "91c70863-8a83-422a-ab7a-a75f744d5210"
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
          description: The O-Cloud Manager operator provides an implementation of
            the O-RAN O2 IMS API on top of OpenShift and ACM.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/oran-o2ims
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AllocatedNode is the schema for an allocated node
            displayName: Allocated Node
            kind: AllocatedNode
            name: allocatednodes.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ClusterTemplate is the Schema for the clustertemplates API
            displayName: Cluster Template
            kind: ClusterTemplate
            name: clustertemplates.clcm.openshift.io
            version: v1alpha1
          - description: HardwarePlugin is the Schema for the hardwareplugins API
            displayName: Hardware Plugin
            kind: HardwarePlugin
            name: hardwareplugins.clcm.openshift.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.clcm.openshift.io
            version: v1alpha1
          - description: HardwareTemplate is the Schema for the hardwaretemplates
              API
            displayName: Hardware Template
            kind: HardwareTemplate
            name: hardwaretemplates.clcm.openshift.io
            version: v1alpha1
          - description: Inventory is the Schema for the Inventory API
            displayName: O-Cloud Manager Inventory
            kind: Inventory
            name: inventories.ocloud.openshift.io
            version: v1alpha1
          - description: NodeAllocationRequest is the schema for an allocation request
              of nodes
            displayName: Node Allocation Request
            kind: NodeAllocationRequest
            name: nodeallocationrequests.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ProvisioningRequest is the Schema for the provisioningrequests
              API
            displayName: Provisioning Request
            kind: ProvisioningRequest
            name: provisioningrequests.clcm.openshift.io
            version: v1alpha1
        description: O-cloud manager operator
        displayName: o-cloud manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ORAN
        - O2IMS
        links:
        - name: Oran O2ims
          url: https://oran-o2ims.domain
        maintainers:
        - email: imihai@redhat.com
          name: IrinaMihai
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/o-cloud-manager-operator-bundle@sha256:d403352abf14d6553da6665e47342927500608f2646cb17eac80414f44320ae0
        - registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
        - registry.redhat.io/rhel9/postgresql-16@sha256:4f46bed6bce211be83c110a3452bd3f151a1e8ab150c58f2a02c56e9cc83db98
        version: 4.20.1
      entries:
      - name: o-cloud-manager.v4.20.1
        version: 4.20.1
      - name: o-cloud-manager.v4.20.0
        version: 4.20.0
      name: "4.20"
    - currentCSV: o-cloud-manager.v4.20.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ClusterTemplate",
                "metadata": {
                  "name": "clustertemplate-sample.v1.0.0",
                  "namespace": "clustertemplate-a-v4-16-3"
                },
                "spec": {
                  "characteristics": {
                    "age": "31"
                  },
                  "description": "nice description",
                  "metadata": {
                    "apple": "23"
                  },
                  "name": "clustertemplate-a",
                  "release": "4.16.3",
                  "templateParameterSchema": {
                    "properties": {
                      "clusterInstanceParameters": {
                        "description": "clusterInstanceParameters defines the available parameters for cluster installation",
                        "properties": {
                          "additionalNTPSources": {
                            "description": "AdditionalNTPSources is a list of NTP sources (hostname or IP) to be added to all cluster hosts. They are added to any NTP sources that were configured through other means.",
                            "items": {
                              "type": "string"
                            },
                            "type": "array"
                          },
                          "apiVIPs": {
                            "description": "APIVIPs are the virtual IPs used to reach the OpenShift cluster's API. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "baseDomain": {
                            "description": "BaseDomain is the base domain to use for the deployed cluster.",
                            "type": "string"
                          },
                          "clusterName": {
                            "description": "ClusterName is the name of the cluster.",
                            "type": "string"
                          },
                          "extraAnnotations": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide annotations to be applied to the rendered templates",
                            "type": "object"
                          },
                          "extraLabels": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide labels to be applied to the rendered templates",
                            "type": "object"
                          },
                          "ingressVIPs": {
                            "description": "IngressVIPs are the virtual IPs used for cluster ingress traffic. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "machineNetwork": {
                            "description": "MachineNetwork is the list of IP address pools for machines.",
                            "items": {
                              "description": "MachineNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "nodes": {
                            "items": {
                              "description": "NodeSpec",
                              "properties": {
                                "extraAnnotations": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level annotations to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "extraLabels": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level labels to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "hostName": {
                                  "description": "Hostname is the desired hostname for the host",
                                  "type": "string"
                                },
                                "nodeLabels": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "NodeLabels allows the specification of custom roles for your nodes in your managed clusters. These are additional roles are not used by any OpenShift Container Platform components, only by the user. When you add a custom role, it can be associated with a custom machine config pool that references a specific configuration for that role. Adding custom labels or roles during installation makes the deployment process more effective and prevents the need for additional reboots after the installation is complete.",
                                  "type": "object"
                                },
                                "nodeNetwork": {
                                  "description": "NodeNetwork is a set of configurations pertaining to the network settings for the node.",
                                  "properties": {
                                    "config": {
                                      "description": "yaml that can be processed by nmstate, using custom marshaling/unmarshaling that will allow to populate nmstate config as plain yaml.",
                                      "type": "object",
                                      "x-kubernetes-preserve-unknown-fields": true
                                    }
                                  },
                                  "type": "object"
                                }
                              },
                              "required": [
                                "hostName"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "serviceNetwork": {
                            "description": "ServiceNetwork is the list of IP address pools for services.",
                            "items": {
                              "description": "ServiceNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "sshPublicKey": {
                            "description": "SSHPublicKey is the public Secure Shell (SSH) key to provide access to instances. This key will be added to the host to allow ssh access",
                            "type": "string"
                          }
                        },
                        "required": [
                          "clusterName",
                          "nodes"
                        ],
                        "type": "object"
                      },
                      "nodeClusterName": {
                        "type": "string"
                      },
                      "oCloudSiteId": {
                        "type": "string"
                      },
                      "policyTemplateParameters": {
                        "description": "policyTemplateParameters defines the available parameters for cluster configuration",
                        "properties": {
                          "cpu-isolated": {
                            "type": "string"
                          },
                          "cpu-reserved": {
                            "type": "string"
                          },
                          "hugepages-count": {
                            "type": "string"
                          },
                          "hugepages-default": {
                            "type": "string"
                          },
                          "hugepages-size": {
                            "type": "string"
                          },
                          "install-plan-approval": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-1": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-2": {
                            "type": "string"
                          },
                          "sriov-network-vlan-1": {
                            "type": "string"
                          },
                          "sriov-network-vlan-2": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "required": [
                      "nodeClusterName",
                      "oCloudSiteId",
                      "policyTemplateParameters",
                      "clusterInstanceParameters"
                    ],
                    "type": "object"
                  },
                  "templates": {
                    "clusterInstanceDefaults": "clustertemplate-sample.v1.0.0-clusterinstance-defaults",
                    "hwTemplate": "sample-hwtemplate-v1",
                    "policyTemplateDefaults": "clustertemplate-sample.v1.0.0-policytemplate-defaults",
                    "upgradeDefaults": "upgrade-defaults-v1"
                  },
                  "version": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwarePlugin",
                "metadata": {
                  "name": "metal3-hwplugin",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "apiRoot": "https://metal3-hardwareplugin-server.oran-o2ims.svc.cluster.local:8443",
                  "authClientConfig": {
                    "type": "ServiceAccount"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareProfile",
                "metadata": {
                  "name": "hardwareprofile-sample",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bios": {
                    "attributes": {
                      "SriovGlobalEnable": "Enabled",
                      "SysProfile": "Custom",
                      "WorkloadProfile": "TelcoOptimizedProfile"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareTemplate",
                "metadata": {
                  "name": "r740-blue-basic",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hardwareProvisioningTimeout": "60m",
                  "nodeGroupData": [
                    {
                      "hwProfile": "rh-profile-r740-bios-settings",
                      "name": "controller",
                      "resourceSelector": {
                        "resourceselector.clcm.openshift.io/server-colour": "blue",
                        "server-type": "R740"
                      },
                      "role": "master"
                    }
                  ]
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ProvisioningRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "provisioningrequest-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "provisioningrequest",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "123e4567-e89b-12d3-a456-426614174000"
                },
                "spec": {
                  "description": "Provisioning request for setting up a Single Node OpenShift (SNO) in the test environment.",
                  "name": "TestEnv-SNO-Provisioning-site-sno-du-1",
                  "templateName": "clustertemplate-sample",
                  "templateParameters": {
                    "clusterInstanceParameters": {
                      "additionalNTPSources": [
                        "NTP.server1",
                        "1.1.1.1"
                      ],
                      "apiVIPs": [
                        "192.0.2.2"
                      ],
                      "baseDomain": "example.com",
                      "clusterName": "site-sno-du-1",
                      "extraAnnotations": {
                        "AgentClusterInstall": {
                          "extra-annotation-key": "extra-annotation-value"
                        }
                      },
                      "extraLabels": {
                        "AgentClusterInstall": {
                          "extra-label-key": "extra-label-value"
                        },
                        "ManagedCluster": {
                          "cluster-version": "v4.16",
                          "clustertemplate-a-policy": "v1"
                        }
                      },
                      "ingressVIPs": [
                        "192.0.2.3"
                      ],
                      "machineNetwork": [
                        {
                          "cidr": "192.0.2.0/24"
                        }
                      ],
                      "nodes": [
                        {
                          "bootMode": "UEFI",
                          "extraAnnotations": {
                            "BareMetalHost": {
                              "extra-annotation-key": "extra-annotation-value"
                            }
                          },
                          "extraLabels": {
                            "BareMetalHost": {
                              "extra-label-key": "extra-label-value"
                            }
                          },
                          "hostName": "node1.baseDomain.com",
                          "nodeLabels": {
                            "node-role.kubernetes.io/infra": "",
                            "node-role.kubernetes.io/master": ""
                          },
                          "nodeNetwork": {
                            "config": {
                              "dns-resolver": {
                                "config": {
                                  "server": [
                                    "192.0.2.22"
                                  ]
                                }
                              },
                              "interfaces": [
                                {
                                  "ipv4": {
                                    "address": [
                                      {
                                        "ip": "192.0.2.10",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.11",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.12",
                                        "prefix-length": 24
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:601",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:602",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:603",
                                        "prefix-length": 64
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "name": "eno1",
                                  "type": "ethernet"
                                },
                                {
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:1302::100"
                                      }
                                    ],
                                    "enabled": true,
                                    "link-aggregation": {
                                      "mode": "balance-rr",
                                      "options": {
                                        "miimon": "140"
                                      },
                                      "slaves": [
                                        "eth0",
                                        "eth1"
                                      ]
                                    },
                                    "prefix-length": 64
                                  },
                                  "name": "bond99",
                                  "state": "up",
                                  "type": "bond"
                                }
                              ],
                              "routes": {
                                "config": [
                                  {
                                    "destination": "0.0.0.0/0",
                                    "next-hop-address": "192.0.2.254",
                                    "next-hop-interface": "eno1",
                                    "table-id": 254
                                  }
                                ]
                              }
                            }
                          }
                        }
                      ],
                      "serviceNetwork": [
                        {
                          "cidr": "233.252.0.0/24"
                        }
                      ],
                      "sshPublicKey": "ssh-rsa"
                    },
                    "nodeClusterName": "site-sno-du-1",
                    "oCloudSiteId": "local-west-12345",
                    "policyTemplateParameters": {
                      "sriov-network-vlan-1": "114",
                      "sriov-network-vlan-2": "111"
                    }
                  },
                  "templateVersion": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "ocloud.openshift.io/v1alpha1",
                "kind": "Inventory",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "inventory-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "inventory",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "default",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "caBundleName": "o2ims-custom-ca-certs",
                  "cloudID": "b7dcb3ff-583d-42d9-abb5-f484386fc688",
                  "ingress": {
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    }
                  },
                  "smo": {
                    "oauth": {
                      "clientSecretName": "oauth-client-secrets",
                      "groupsClaim": "roles",
                      "scopes": [
                        "openid",
                        "profile",
                        "role:ocloud-manager"
                      ],
                      "tokenEndpoint": "/protocol/openid-connect/token",
                      "url": "https://oauth.example.com:8443/realms/oran",
                      "usernameClaim": "preferred_username"
                    },
                    "registrationEndpoint": "/smo/v1/registration",
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    },
                    "url": "https://smo.example.com"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "AllocatedNode",
                "metadata": {
                  "name": "91c70863-8a83-422a-ab7a-a75f744d5210",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "groupName": "controller",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hwMgrNodeId": "r740xserver1",
                  "hwMgrNodeNs": "r740-pool",
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "nodeAllocationRequest": "metal3-b12f3e77848a4002bf40"
                },
                "status": {
                  "bmc": {
                    "address": "idrac-virtualmedia+https://127.0.0.1/redfish/v1/Systems/System.Embedded.1",
                    "credentialsName": "bmc-secret-r740xserver1"
                  },
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Provisioned",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "interfaces": [
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:19",
                      "name": "ens1f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1a",
                      "name": "ens3f1np1"
                    },
                    {
                      "label": "bootable-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1b",
                      "name": "eno1np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1c",
                      "name": "ens5f3"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1d",
                      "name": "ens5f1"
                    },
                    {
                      "label": "data-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1e",
                      "name": "eno2np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1f",
                      "name": "ens7f0np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:20",
                      "name": "ens7f1np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:21",
                      "name": "ens1f1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:22",
                      "name": "ens5f2"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:23",
                      "name": "ens5f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:24",
                      "name": "ens3f0np0"
                    }
                  ]
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "NodeAllocationRequest",
                "metadata": {
                  "name": "metal3-b12f3e77848a4002bf40",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "clusterId": "cluster1",
                  "configTransactionId": 1,
                  "hardwarePluginRef": "metal3-hwplugin",
                  "nodeGroup": [
                    {
                      "nodeGroupData": {
                        "hwProfile": "rh-profile-r740-bios-settings",
                        "name": "controller",
                        "resourceSelector": {
                          "resourceselector.clcm.openshift.io/server-colour": "blue",
                          "server-type": "R740"
                        },
                        "role": "master"
                      },
                      "size": 1
                    }
                  ],
                  "site": "ottawa"
                },
                "status": {
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Created",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwMgrPlugin": {
                    "observedGeneration": 1
                  },
                  "observedConfigTransactionId": 0,
                  "properties": {
                    "nodeNames": [
                      "91c70863-8a83-422a-ab7a-a75f744d5210"
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
          description: The O-Cloud Manager operator provides an implementation of
            the O-RAN O2 IMS API on top of OpenShift and ACM.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/oran-o2ims
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AllocatedNode is the schema for an allocated node
            displayName: Allocated Node
            kind: AllocatedNode
            name: allocatednodes.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ClusterTemplate is the Schema for the clustertemplates API
            displayName: Cluster Template
            kind: ClusterTemplate
            name: clustertemplates.clcm.openshift.io
            version: v1alpha1
          - description: HardwarePlugin is the Schema for the hardwareplugins API
            displayName: Hardware Plugin
            kind: HardwarePlugin
            name: hardwareplugins.clcm.openshift.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.clcm.openshift.io
            version: v1alpha1
          - description: HardwareTemplate is the Schema for the hardwaretemplates
              API
            displayName: Hardware Template
            kind: HardwareTemplate
            name: hardwaretemplates.clcm.openshift.io
            version: v1alpha1
          - description: Inventory is the Schema for the Inventory API
            displayName: O-Cloud Manager Inventory
            kind: Inventory
            name: inventories.ocloud.openshift.io
            version: v1alpha1
          - description: NodeAllocationRequest is the schema for an allocation request
              of nodes
            displayName: Node Allocation Request
            kind: NodeAllocationRequest
            name: nodeallocationrequests.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ProvisioningRequest is the Schema for the provisioningrequests
              API
            displayName: Provisioning Request
            kind: ProvisioningRequest
            name: provisioningrequests.clcm.openshift.io
            version: v1alpha1
        description: O-cloud manager operator
        displayName: o-cloud manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ORAN
        - O2IMS
        links:
        - name: Oran O2ims
          url: https://oran-o2ims.domain
        maintainers:
        - email: imihai@redhat.com
          name: IrinaMihai
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
        - registry.redhat.io/rhel9/postgresql-16@sha256:4f46bed6bce211be83c110a3452bd3f151a1e8ab150c58f2a02c56e9cc83db98
        - registry.redhat.io/openshift4/o-cloud-manager-operator-bundle@sha256:d403352abf14d6553da6665e47342927500608f2646cb17eac80414f44320ae0
        version: 4.20.1
      entries:
      - name: o-cloud-manager.v4.20.1
        version: 4.20.1
      - name: o-cloud-manager.v4.20.0
        version: 4.20.0
      name: stable
    defaultChannel: stable
    packageName: o-cloud-manager
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: ibmcloud-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibmcloud-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"ibmcloud.ibm.com/v1","kind":"Service","metadata":{"annotations":{"ibmcloud.ibm.com/self-healing":"enabled"},"name":"mytranslator"},"spec":{"plan":"lite","serviceClass":"language-translator"}},{"apiVersion":"ibmcloud.ibm.com/v1","kind":"Binding","metadata":{"name":"binding-translator"},"spec":{"parameters":[{"name":"serviceid_crn","value":"crn:v1:bluemix:public:iam-identity::a/ACCOUNT_ID::serviceid:SERVICE_ID"}],"secretName":"translator-secret","serviceName":"mytranslator"}}]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: cloudoperators/ibmcloud-operator:1.1.0
          createdAt: "2022-03-17T04:17:40Z"
          description: The IBM Cloud Operator provides a Kubernetes CRD-Based API
            to manage the lifecycle of IBM public cloud services.
          repository: https://github.com/IBM/cloud-operators
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Binding is an instance of a service binding resource on IBM
              Cloud. A Binding creates a secret with the service instance credentials.
            displayName: Binding
            kind: Binding
            name: bindings.ibmcloud.ibm.com
            version: v1
          - description: Service is an instance of a Service resource on IBM Cloud.
            displayName: Service
            kind: Service
            name: services.ibmcloud.ibm.com
            version: v1
        description: |-
          With the IBM Cloud Operator, you can provision and bind [IBM public cloud services](https://cloud.ibm.com/catalog#services) to your Kubernetes cluster in a Kubernetes-native way. The IBM Cloud Operator is based on the [Kubernetes custom resource definition (CRD) API](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) so that your applications can create, update, and delete IBM Cloud services from within the cluster by calling Kubnernetes APIs, instead of needing to use several IBM Cloud APIs in addition to configuring your app for Kubernetes.


          ## Features

          * **Service provisioning**: Create any service with any plan that is available in the [IBM Cloud catalog](https://cloud.ibm.com/catalog#services).

          * **Bindings management**: Automatically create Kubernetes secrets in your Kubernetes cluster with the credentials to bind to any provisioned service to the cluster.


          ## Upgrading the operator


          To upgrade an OperatorHub installation, use the OpenShift web console to perform the upgrade. If upgrading from the `alpha` channel subscription to `stable`, follow the additional upgrade instructions below.

          ### Upgrading to version v0.3 or v1.0
          **IMPORTANT NOTICE:** v0.1 and v0.2 used a different naming scheme for secrets and configmaps. Before you update the IBM Cloud Operator, create secret and configmap resources with these names and copy the contents of your previous resources to the new resources. Then, the upgraded operator recognizes and continues to update the resources.

          Existing `Service` and `Binding` resources **do not** need modification for the upgrade.

          | Previous names (v0.1 and v0.2)         | **Current names (v0.3 and v1.0)**             | Description                                                                           |
          |:---------------------------------------|:--------------------------------------------|:--------------------------------------------------------------------------------------|
          | secret-ibm-cloud-operator              | **ibmcloud-operator-secret**                | Secret with the API key, scoped to the namespace.                                     |
          | config-ibm-cloud-operator              | **ibmcloud-operator-defaults**              | ConfigMap with the default values for new resources.                                  |
          | ibm-cloud-operator                     | **ibmcloud-operator-config**                | ConfigMap with the management namespace configuration.                                |
          | ${namespace}-secret-ibm-cloud-operator | **${namespace}-ibmcloud-operator-secret**   | Management namespace Secret with the API key for ${namespace}.                        |
          | ${namespace}-config-ibm-cloud-operator | **${namespace}-ibmcloud-operator-defaults** | Management namespace ConfigMap with default values for new resources in ${namespace}. |

          **Tip:** Forgot to update the secret and configmap names before upgrading? The operator will not take action on Service and Binding resources until the new secrets and configmaps have been created. Creating these after the upgrade will also work.


          ### OperatorHub stable channel
          Continuous updates and bug fixes are provided in the latest stable channel. Subscribing to the `stable` channel in OperatorHub means you automatically get the latest updates without breaking backward compatibility.

          ### Changelog

          For a list of recent changes, see the [releases page](https://github.com/IBM/cloud-operators/releases).


          ## Prerequisites

          1.  Have an [IBM Cloud account](https://cloud.ibm.com/registration).
          2.  Have a cluster that runs Kubernetes version 1.11 or later (OpenShift 3.11 or later).
          3.  Install the required command line tools.
              *   [IBM Cloud CLI](https://cloud.ibm.com/docs/cli?topic=cloud-cli-getting-started) (`ibmcloud`)
              *   [Kubernetes CLI](https://kubernetes.io/docs/tasks/tools/install-kubectl/) (`kubectl`)
          4.  Log in to your IBM Cloud account from the CLI.

              ```bash
              ibmcloud login
              ```

          5.  Target the appropriate resource group (`-g`) and default region (`-r`) for provisioning services:

              ```bash
              ibmcloud target -g default -r us-south
              ```

          6.  If you also want to provision Cloud Foundry services, target the appropriate `org` and `space` (`--cf`).

              ```bash
              ibmcloud target --cf
              ```

          7.  Set the Kubernetes context of your CLI to your cluster so that you can run `kubectl` commands. For example, if your cluster runs OpenShift, use the `oc login` command.


          ## Setting up the operator

          You can use an installation script to set up the IBM Cloud Operator.
          By default, the installation script stores an API key in a Kubernetes secret in your cluster that can be accessed by the IBM Cloud Operator.
          Next, the script sets default values that are used to provision IBM Cloud services, like the resource group and region to provision the services in. Later, you can override any default value in the `Service` custom resource. Finally, the script deploys the operator in your cluster.

          To use your own API key, set the `IBMCLOUD_API_KEY` environment variable to the key before running the installation script:

              export IBMCLOUD_API_KEY="CUSTOM_API_KEY"

          If installed with Operator Hub, the operator will run in the `openshift-operators` namespace. Otherwise, it will run in the `ibmcloud-operator-system` namespace.

          Prefer to create the secrets and defaults yourself? See the [IBM Cloud Operator installation guide](https://github.com/IBM/cloud-operators/blob/master/docs/install.md).

          ### Using a service ID

          By default, the installation script creates an IBM Cloud API key that impersonates your user credentials, to use to set up the IBM Cloud Operator. However, you might want to create a service ID in IBM Cloud Identity and Access Managment (IAM). By using a service ID, you can control access for the IBM Cloud Operator without having the permissions tied to a particular user, such as if that user leaves the company. For more information, see the [IBM Cloud docs](https://cloud.ibm.com/docs/account?topic=account-serviceids).

          1.  Create a service ID in IBM Cloud IAM. If possible, do not use spaces in the names for your IAM credentials. When you use the operator binding feature, any spaces are replaced with underscores.

              ```bash
              ibmcloud iam service-id-create serviceid-ico -d service-ID-for-ibm-cloud-operator
              ```

          2.  Assign the service ID access to the required permissions to work with the IBM Cloud services that you want the operator to manage. The required permissions vary with each IBM Cloud service. You can also scope an access policy to different regions or resource groups. For example, the following command grants the service ID the **Administrator** platform role in the default resource group in the US South (Dallas) region. For more information, see the [IBM Cloud docs](https://cloud.ibm.com/docs/account?topic=account-userroles).

              ```bash
              ibmcloud iam service-policy-create serviceid-ico --roles Administrator --resource-group-name default --region us-south
              ```

          3.  Create an API key for the service ID.

              ```bash
              ibmcloud iam service-api-key-create apikey-ico serviceid-ico -d api-key-for-ibm-cloud-operator
              ```

          4.  Set the API key of the service ID as your CLI environment variable. Now, when you run the installation script, the script uses the service ID's API key. The following command is an example for macOS.

              ```bash
              export IBMCLOUD_API_KEY=<apikey-ico-value>
              ```

          5.  Confirm that the API key environment variable is set in your CLI.

              ```bash
              echo $IBMCLOUD_API_KEY
              ```

          6.  Follow the [prerequisite steps](https://github.com/IBM/cloud-operators/blob/master/README.md#prerequisites) to log in to the IBM Cloud account that owns the service ID.


          ### Installing the operator for OpenShift clusters

          Before you begin, complete the [prerequisite steps](https://github.com/IBM/cloud-operators/blob/master/README.md#prerequisites) to log in to IBM Cloud and your cluster, and optionally set up a [service ID API key](https://github.com/IBM/cloud-operators/blob/master/README.md#using-a-service-id).

          To configure the latest release for OpenShift before installing via the OperatorHub, run the following script:

          *   **Latest release**:

              ```bash
              curl -sL https://raw.githubusercontent.com/IBM/cloud-operators/master/hack/configure-operator.sh | bash
              ```

          *   **Specific release**: Replace `-v 0.0.0` with the specific version that you want to install.

              ```bash
              curl -sL https://raw.githubusercontent.com/IBM/cloud-operators/master/hack/configure-operator.sh | bash -s -- -v 0.0.0 store-creds
              ```


          ## Using the IBM Cloud Operator

          To use the IBM Cloud Operator, create a service instance and then bind the service to your cluster. For more information, see the [sample configuration files](https://github.com/IBM/cloud-operators/blob/master/config/samples), [user guide](https://github.com/IBM/cloud-operators/blob/master/docs/user-guide.md), and [reference documentation](https://github.com/IBM/cloud-operators/blob/master/README.md#reference).

          #### Step 1: Creating a service instance

          1.  To create an instance of an IBM public cloud service, first create a `Service` custom resource file. For more options, see the [Service properties](https://github.com/IBM/cloud-operators/blob/master/README.md#service-properties) reference doc.
              *   `<SERVICE_CLASS>` is the IBM Cloud service that you want to create. To list IBM Cloud services, run `ibmcloud catalog service-marketplace` and use the **Name** value from the output.
              *   `<PLAN>` is the plan for the IBM Cloud service that you want to create, such as `free` or `standard`. To list available plans, run `ibmcloud catalog service <SERVICE_CLASS> | grep plan`.

              ```yaml
              apiVersion: ibmcloud.ibm.com/v1
              kind: Service
              metadata:
                  name: myservice
              spec:
                  plan: <PLAN>
                  serviceClass: <SERVICE_CLASS>
              ```

          2.  Create the service instance in your cluster.

              ```bash
              kubectl apply -f filepath/myservice.yaml
              ```

          3.  Check that your service status is **Online** in your cluster.

              ```bash
              kubectl get services.ibmcloud
              NAME           STATUS   AGE
              myservice      Online   12s
              ```

          4.  Verify that your service instance is created in IBM Cloud.

              ```bash
              ibmcloud resource service-instances | grep myservice
              ```

          #### Step 2: Binding the service instance

          1.  To bind your service to the cluster so that your apps can use the service, create a `Binding` custom resource, where the `serviceName` field is the name of the `Service` custom resource that you previously created. For more options, see [Binding properties](https://github.com/IBM/cloud-operators/blob/master/README.md#binding-properties).

              ```yaml
              apiVersion: ibmcloud.ibm.com/v1
              kind: Binding
              metadata:
                  name: mybinding
              spec:
                  serviceName: myservice
              ```

          2.  Create the binding in your cluster.

              ```bash
              kubectl apply -f filepath/mybinding.yaml
              ```

          3.  Check that your service status is **Online**.

              ```bash
              kubectl get bindings.ibmcloud
              NAME         STATUS   AGE
              mybinding    Online   25s
              ```

          4.  Check that a secret of the same name as your binding is created. The secret contains the service credentials that apps in your cluster can use to access the service.

              ```bash
              kubectl get secrets
              NAME         TYPE      DATA   AGE
              mybinding    Opaque    6      102s
              ```
        displayName: IBM Cloud Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - IBM
        - Cloud
        links:
        - name: Source on GitHub
          url: https://github.com/ibm/cloud-operators
        maintainers:
        - email: johnstarich@johnstarich.com
          name: John Starich
        - email: mvaziri@us.ibm.com
          name: vazirim
        - email: greg.lanthier@ca.ibm.com
          name: Greg Lanthier
        - email: halacs@users.noreply.github.com
          name: Halacs
        - email: artberger@users.noreply.github.com
          name: Art
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: IBM
        relatedImages:
        - cloudoperators/ibmcloud-operator:1.1.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/openshift-community-operators/ibmcloud-operator@sha256:b22e89daf6b7f0fd55ba6db7eb7d7a48cbaef2844dfe20e558d7b821482e9480
        version: 1.1.0
      entries:
      - name: ibmcloud-operator.v1.1.0
        version: 1.1.0
      name: stable
    defaultChannel: stable
    packageName: ibmcloud-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: dns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dns-operator.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSRecord",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dns-operator",
                    "app.kubernetes.io/instance": "dnsrecord-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dnsrecord",
                    "app.kubernetes.io/part-of": "dns-operator"
                  },
                  "name": "dnsrecord-sample"
                },
                "spec": {
                  "endpoints": [
                    {
                      "dnsName": "dnsrecord-simple.example.com",
                      "recordTTL": 60,
                      "recordType": "A",
                      "targets": [
                        "52.215.108.61",
                        "52.30.101.221"
                      ]
                    }
                  ],
                  "providerRef": {
                    "name": "dns-provider-creds"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/dns-operator:v0.6.0
          createdAt: "2024-09-13T09:55:39Z"
          description: A Kubernetes Operator to manage the lifecycle of DNS resources
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kuadrant/dns-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DNSRecord is the Schema for the dnsrecords API
            displayName: DNSRecord
            kind: DNSRecord
            name: dnsrecords.kuadrant.io
            version: v1alpha1
        description: A Kubernetes Operator to manage the lifecycle of DNS resources
        displayName: DNS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dns
        - kuadrant
        links:
        - name: DNS Operator
          url: https://github.com/Kuadrant/dns-operator
        maintainers:
        - email: mnairn@redhat.com
          name: Michael Nairn
        - email: pbrookes@redhat.com
          name: Phil Brookes
        - email: cbrookes@redhat.com
          name: Craig Brookes
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/dns-operator@sha256:d5eadbf006aade69ac18156c891614da899d0779ba9e8fbaf755a256c46f055c
        - quay.io/kuadrant/dns-operator:v0.6.0
        version: 0.6.0
      entries:
      - name: dns-operator.v0.6.0
        version: 0.6.0
      name: stable
    defaultChannel: stable
    packageName: dns-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: sosivio
      provider-url: https://www.sosiv.io
    name: sosivio
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sosivio-operator.v1.5.1-97
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sosivio.sosiv.io/v1alpha1",
                "kind": "Sosivio",
                "metadata": {
                  "name": "sosivio"
                },
                "spec": {
                  "platform": "ocp4",
                  "useSha": false
                }
              },
              {
                "apiVersion": "sosivio.sosiv.io/v1alpha1",
                "kind": "Sosivio",
                "metadata": {
                  "name": "sosivio"
                },
                "spec": {
                  "platform": "ocp4",
                  "useSha": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Monitoring,Integration & Delivery,Logging & Tracing,Developer
            Tools
          com.redhat.openshift.versions: v4.1-v4.1
          containerImage: quay.io/sosivio/sosivio-operator:v1.5.1-97
          createdAt: "2021-10-28 01:01:01"
          description: Sosivio | Predictive Troubleshooting for Kubernetes
          operatorhub.io/ui-metadata-max-k8s-version: "1.25"
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Sosivio/operator
          support: Sosivio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Sosivio is the Schema for the sosivios API
            displayName: Sosivio
            kind: Sosivio
            name: sosivios.sosivio.sosiv.io
            version: v1alpha1
        description: "# Sosivio Operator\nThe Sosivio Operator for RedHat’s Openshift
          Container Platform allows users to quickly and easily deploy Sosivio’s Kubernetes
          Predictive Troubleshooting Platform on your cluster.\n\n# Sosivio Overview\n\nSosivio
          is the first and only non-intrusive and predictive autonomous cloud-native
          platform built specifically for Kubernetes from the ground up. Sosivio provides
          predictive troubleshooting tools, root cause determination and instant remediation
          for any failures in Kubernetes environments.\n\nPredict and Prevent!\n\nThe
          Operator will deploy and manage Sosivio on Kubernetes and OpenShift. Included
          are the following features;\n-   **Root Cause Analysis and Remediation**
          - predictive troubleshooting to prevent failures before they occur. Instantly
          understand where the root cause is and how to fix it.\n-   **Application
          Profiling** - analyze container resource consumption and recommendations
          for requests and limits.\n-   **Real-time Metrics** - in-depth, granular,
          and accurate real-time data from the process level inside containers (and
          pods) with failure correlation.\n-   **Cluster Health Checks** - proactive
          health checks for cluster infrastructure and applications running on the
          cluster.\n-   **Multi-Cluster View** - management, monitoring, and maintenance
          capabilities for all clusters from one location. \n-   **Kubernetes Components
          Alerting** - notifications sent through Slack, email and other 3rd party
          platforms.\n\n# Installation\nSosivio is completely **non-intrusive** and
          **does not require any persistent storage**. There is **no data offloading**
          outside of your Kubernetes cluster. Applying our Data Swirling methodology
          enables the product to perform at a **remarkably low resource footprint**
          and requires **no persistent volume configurations**.\n\n\nSosivio is installed
          under one namespace (labeled: \"sosivio\") which creates all the required
          components for the product.\n\nAll users will start with 4 weeks of Sosivio
          Premium after which Sosivio will automatically convert to the Community
          Version (free forever).\n\n# Help\nMore information about Sosivio and our
          product usage instructions can be found in our documentation [here](https://docs.sosiv.io/)
          \ \n"
        displayName: Sosivio | Predictive Troubleshooting for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sosivio
        - kubernetes
        - observanility
        - monitoring
        - root cause
        links:
        - name: Sosivio
          url: https://www.sosiv.io
        - name: Documentation
          url: https://docs.sosiv.io
        maintainers:
        - email: info@sosiv.io
          name: Sosivio
        maturity: stable
        minKubeVersion: 1.11.0
        provider:
          name: sosivio
          url: https://www.sosiv.io
        relatedImages:
        - quay.io/sosivio/sosivio-dashboard@sha256:fdfca5bb2123d1008cec2b656cde73c7e9364f84c5ff4f4a6fee5751b1bfb2f8
        - quay.io/sosivio/classifier@sha256:dd8bf145524db23ff333efa1bcdff258dab116d3534f95f73775d8dd339e6963
        - quay.io/sosivio/kube-rbac-proxy:v0.8.0
        - quay.io/sosivio/sosivio-operator@sha256:11bc627773bb5e08b629e0b013e7f600fcb4aaefbd97f2de337d339475616763
        - quay.io/sosivio/sosivio-node-pinger@sha256:937de52ad7b76e6cff4ad5197de9705988d61f285ebadac5ebadb5856f59ee58
        - quay.io/openshift-community-operators/sosivio@sha256:110d7f4fb993d65ff497eca57c42206faab07dc5f5b1f43b1b682387e7cd3a10
        - quay.io/sosivio/correlation-entities@sha256:c00af09b2589bad4740fd44d7a81c69b2e29138c360939b2a45f65edd44b6901
        - quay.io/sosivio/kube-rbac-proxy@sha256:34e8724e0f47e31eb2ec3279ac398b657db5f60f167426ee73138e2e84af6486
        - quay.io/sosivio/sosivio-node-collector@sha256:61ed8dd52de5edc09d16a31b18f2f65ad9344c0b6c9cfab323c3eb3d7e7ed060
        - quay.io/sosivio/crud-manager@sha256:38289a28829fa737917d76dd4810ba6140e123061ead0a4b79fa79b2e246a293
        - quay.io/sosivio/analyzer@sha256:3825608fe7c43ef059108e76665acc99fe72bea77d4d9e3852f6ad45e74379b1
        - quay.io/sosivio/notifier@sha256:35f5f3e8e5ccad914fcfe34fb4b4a1b044ee87f5a6141284cd5273f0b2b3bf22
        - quay.io/sosivio/contract-testing@sha256:cad6fac6ed3fdf2597ceb09ba5dbb7d81f70cf45f483a7064e3968215dd982e3
        - quay.io/sosivio/network-aggregator@sha256:e59d937f4d9c52acad0adadab39c6849d20b4ee72a83e239a33ea137f08323f4
        - quay.io/sosivio/nsq@sha256:781aac23ef0a1ed0af2b8e93d625ae49bd11dbdd98787d3c79dde8d128f3810d
        - quay.io/sosivio/communicator@sha256:fffec9a6c66594fde5f05e2dfb84361544ca9d53a345188c197a0ea6f53bc4b9
        - quay.io/sosivio/sosiviodb@sha256:a3c6c3975bc2b0316135ee5c547f1eb215f3a1f9c8b0a9c8eceff23415f93597
        - quay.io/sosivio/sequence-recognition@sha256:7335cf8f3e40bc46e8ca0de525d99f0655833b7c52d36dc273aa7b096eb70fa2
        - quay.io/sosivio/sosivio-operator:v1.5.1-97
        - quay.io/sosivio/actuator@sha256:a9abe9730800ca2b0a1bbd7a361b2ab3a818cbf127798314e5477fb1cb16ba4c
        - quay.io/sosivio/authentication@sha256:0ea6025f333576792f5b1fc4d96d9ab1a404749f185830410e71248683004da2
        - quay.io/sosivio/sosivio-node-netpacket@sha256:84dd159b1dfdb52dee3eb1c4c93f323bae49ce517ff44663b69978e14bdd8390
        - quay.io/sosivio/discovery-engine@sha256:b87b3f7c9ed3aed80d0a77788fd8925789450d9dc05d25017e89dff611cd82da
        version: 1.5.1
      entries:
      - name: sosivio-operator.v1.5.1-97
        version: 1.5.1
      - name: sosivio-operator.v1.5.0-95
        version: 1.5.0
      - name: sosivio-operator.v1.4.4-85
        version: 1.4.4
      - name: sosivio-operator.v1.4.3-83
        version: 1.4.3
      - name: sosivio-operator.v1.4.2-82
        version: 1.4.2
      - name: sosivio-operator.v1.4.1-81
        version: 1.4.1-81
      - name: sosivio-operator.v1.4.1.1-80
        version: 1.4.1-80
      - name: sosivio-operator.v1.4.1-78
        version: 1.4.1-79
      - name: sosivio-operator.v1.3.1-76
        version: 1.3.1-76
      - name: sosivio-operator.v1.3.0-75
        version: 1.3.0-75
      - name: sosivio-operator.v1.2.1-1
        version: 1.2.1-1
      - name: sosivio-operator.v1.2.0-1
        version: 1.2.0-1
      name: stable
    defaultChannel: stable
    packageName: sosivio
    provider:
      name: sosivio
      url: https://www.sosiv.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EPAM Delivery Platform
      provider-url: https://epam.github.io/edp-install/
    name: nexus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nexus-operator.v3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "Nexus",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexus-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexus",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexus-sample"
                },
                "spec": {
                  "secret": "nexus-secret",
                  "url": "https://nexus-example.com"
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "NexusRepository",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexusrepository-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexusrepository",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexusrepository-sample"
                },
                "spec": {
                  "go": {
                    "proxy": {
                      "cleanup": {
                        "policyNames": [
                          "cleanup-policy"
                        ]
                      },
                      "httpClient": {
                        "autoBlock": true,
                        "blocked": true,
                        "connection": {
                          "retries": 1440,
                          "timeout": 1440,
                          "userAgentSuffix": "user-agent-suffix"
                        }
                      },
                      "name": "go-proxy",
                      "negativeCache": {
                        "enabled": true,
                        "timeToLive": 1440
                      },
                      "online": true,
                      "proxy": {
                        "contentMaxAge": 1440,
                        "metadataMaxAge": 1440,
                        "remoteUrl": "https://test.com"
                      },
                      "routingRule": "routing-rule",
                      "storage": {
                        "blobStoreName": "blob-store-name",
                        "strictContentTypeValidation": true
                      }
                    }
                  },
                  "nexusRef": {
                    "name": "nexus-sample"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "NexusRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexusrole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexusrole",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexusrole-sample"
                },
                "spec": {
                  "description": "test-role",
                  "id": "test-role",
                  "name": "test-role",
                  "nexusRef": {
                    "kind": "Nexus",
                    "name": "nexus-sample"
                  },
                  "privileges": [
                    "nx-blobstores-all"
                  ]
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "NexusUser",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexususer-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexususer",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexususer-sample"
                },
                "spec": {
                  "email": "test@gmail.com",
                  "firstName": "John1",
                  "id": "test-user",
                  "lastName": "Doe",
                  "nexusRef": {
                    "kind": "Nexus",
                    "name": "nexus-sample"
                  },
                  "roles": [
                    "nx-admin"
                  ],
                  "secret": "$user-secret:password"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Developer Tools
          containerImage: docker.io/epamedp/nexus-operator:3.0.0
          createdAt: "2023-12-11T12:54:50Z"
          description: An Operator for managing Nexus entities.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/epam/edp-nexus-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Nexus is the Schema for the nexus API.
            displayName: Nexus
            kind: Nexus
            name: nexuses.edp.epam.com
            version: v1alpha1
          - description: NexusRepository is the Schema for the nexusrepositories API.
            displayName: Nexus Repository
            kind: NexusRepository
            name: nexusrepositories.edp.epam.com
            version: v1alpha1
          - description: NexusRole is the Schema for the nexusroles API.
            displayName: Nexus Role
            kind: NexusRole
            name: nexusroles.edp.epam.com
            version: v1alpha1
          - description: NexusUser is the Schema for the nexususers API.
            displayName: Nexus User
            kind: NexusUser
            name: nexususers.edp.epam.com
            version: v1alpha1
        description: |
          Nexus Operator is an operator that is responsible for establishing
          a connection to provided NexusRepository Server, reconciling Nexus entities (groups,
          users, repositories, etc) according to the created CRs.

          ## Quick Start

          1. Create a User in the Nexus Repository.

          2. Insert newly created user credentials into Kubernetes secret:

              ```yaml
              apiVersion: v1
              kind: Secret
              metadata:
                name:  nexus-secret
              type: Opaque
              data:
                username: dXNlcg==   # base64-encoded value of "user"
                password: cGFzcw==   # base64-encoded value of "pass"
              ```

          3. Create Custom Resource `kind: Nexus` with Nexus instance URL and secret created on the previous step:

              ```yaml
              apiVersion: v1.edp.epam.com/v1alpha1
              kind: Nexus
              metadata:
                name: nexus-sample
              spec:
                secret: nexus-secret                # Secret name
                url: https://nexus.example.com      # Nexus URL
              ```

              Wait for the `.status` field with  `status.connected: true`
        displayName: EDP Nexus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - edp
        - nexus
        - operator
        - artifact
        - storage
        links:
        - name: Nexus Operator
          url: https://github.com/epam/edp-nexus-operator
        maintainers:
        - email: SupportEPMD-EDP@epam.com
          name: epmd-edp
        maturity: alpha
        provider:
          name: EPAM Delivery Platform
          url: https://epam.github.io/edp-install/
        relatedImages:
        - quay.io/openshift-community-operators/nexus-operator@sha256:277b94985c0dc982abb76b5dd8c93b37305ccca32c000d67552d540d4918cbba
        - docker.io/epamedp/nexus-operator:3.0.0
        version: 3.0.0
      entries:
      - name: nexus-operator.v3.0.0
        version: 3.0.0
      name: alpha
    defaultChannel: alpha
    packageName: nexus-operator
    provider:
      name: EPAM Delivery Platform
      url: https://epam.github.io/edp-install/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://access.redhat.com/products/red-hat-integration
    name: red-hat-camel-k
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
          createdAt: "2024-10-07T13:45:51Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          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: "true"
          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.skipRange: '>=1.8.0 <1.10.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:72ed79d0b4bf82ab58d22a174190f69401da83d80a09785648148760e1803d9d
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
        version: 1.10.8+0.1733993735.p
      entries:
      - name: red-hat-camel-k-operator.v1.10.8-0.1731578390.p
        version: 1.10.8+0.1731578390.p
      - name: red-hat-camel-k-operator.v1.10.8
        version: 1.10.8
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993120.p
        version: 1.10.8+0.1733993120.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731485816.p
        version: 1.10.8+0.1731485816.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124835.p
        version: 1.10.8+0.1733124835.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124325.p
        version: 1.10.8+0.1733124325.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731894055.p
        version: 1.10.8+0.1731894055.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731893478.p
        version: 1.10.8+0.1731893478.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
        version: 1.10.8+0.1733993735.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
        version: 1.10.8+0.1733135130.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1723633518.p
        version: 1.10.7+0.1723633518.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724202359.p
        version: 1.10.7+0.1724202359.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724145144.p
        version: 1.10.7+0.1724145144.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724144664.p
        version: 1.10.7+0.1724144664.p
      - name: red-hat-camel-k-operator.v1.10.7
        version: 1.10.7
      - name: red-hat-camel-k-operator.v1.10.7-0.1723632902.p
        version: 1.10.7+0.1723632902.p
      - name: red-hat-camel-k-operator.v1.10.6
        version: 1.10.6
      - name: red-hat-camel-k-operator.v1.10.5
        version: 1.10.5
      - name: red-hat-camel-k-operator.v1.10.5-0.1705608149.p
        version: 1.10.5+0.1705608149.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1699536334.p
        version: 1.10.4+0.1699536334.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1700072719.p
        version: 1.10.4+0.1700072719.p
      - name: red-hat-camel-k-operator.v1.10.4
        version: 1.10.4
      - name: red-hat-camel-k-operator.v1.10.3
        version: 1.10.3
      - name: red-hat-camel-k-operator.v1.10.2
        version: 1.10.2
      - name: red-hat-camel-k-operator.v1.10.1
        version: 1.10.1
      - name: red-hat-camel-k-operator.v1.10.1-0.1695295065.p
        version: 1.10.1+0.1695295065.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693789561.p
        version: 1.10.1+0.1693789561.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693378374.p
        version: 1.10.1+0.1693378374.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1682325781.p
        version: 1.10.0+0.1682325781.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1687356936.p
        version: 1.10.0+0.1687356936.p
      - name: red-hat-camel-k-operator.v1.10.0
        version: 1.10.0
      - name: red-hat-camel-k-operator.v1.10.0-0.1679561624.p
        version: 1.10.0+0.1679561624.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1678893647.p
        version: 1.10.0+0.1678893647.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: 1.10.x
    - currentCSV: red-hat-camel-k-operator.v1.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1beta1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:9e4fb5369e0479d4a68f60725e7d12abdc66c552babe59f1358f6e6b0f26357d
          createdAt: "2020-10-06T02:45:00Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:c60664e5da8eb23bbd918b1c13b83565b1f33a1aa8961b425232fa1ef4d1a6f1
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:9e4fb5369e0479d4a68f60725e7d12abdc66c552babe59f1358f6e6b0f26357d
        version: 1.4.2
      entries:
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: 1.4.x
    - currentCSV: red-hat-camel-k-operator.v1.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
          createdAt: "2022-08-15T20:17:25Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          olm.skipRange: '>=1.6.7 <=1.6.8'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:bcc0ef48ec42c88d212173167615feb2cf276c133b26b866ae3453af7ab1ee80
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
        version: 1.6.10
      entries:
      - name: red-hat-camel-k-operator.v1.6.10
        version: 1.6.10
      - name: red-hat-camel-k-operator.v1.6.9
        version: 1.6.9
      name: 1.6.x
    - currentCSV: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:e916f9040d3f4feb26cc1534d3ab2722890b34c7fe146cdce8b6085b47206e22
          createdAt: "2022-11-28T10:43:18Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          olm.skipRange: '>=1.6.7 <1.8.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:82cafd48db8107dd141064ce7530468b11804c8c54235a317eb450a7606bac3e
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:e916f9040d3f4feb26cc1534d3ab2722890b34c7fe146cdce8b6085b47206e22
        version: 1.8.2+0.1675913507.p
      entries:
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: 1.8.x
    - currentCSV: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
          createdAt: "2024-10-07T13:45:51Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          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: "true"
          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.skipRange: '>=1.8.0 <1.10.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:72ed79d0b4bf82ab58d22a174190f69401da83d80a09785648148760e1803d9d
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
        version: 1.10.8+0.1733993735.p
      entries:
      - name: red-hat-camel-k-operator.v1.10.8-0.1731578390.p
        version: 1.10.8+0.1731578390.p
      - name: red-hat-camel-k-operator.v1.10.8
        version: 1.10.8
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993120.p
        version: 1.10.8+0.1733993120.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731485816.p
        version: 1.10.8+0.1731485816.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124835.p
        version: 1.10.8+0.1733124835.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124325.p
        version: 1.10.8+0.1733124325.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731894055.p
        version: 1.10.8+0.1731894055.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731893478.p
        version: 1.10.8+0.1731893478.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
        version: 1.10.8+0.1733993735.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
        version: 1.10.8+0.1733135130.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1723633518.p
        version: 1.10.7+0.1723633518.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724202359.p
        version: 1.10.7+0.1724202359.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724145144.p
        version: 1.10.7+0.1724145144.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724144664.p
        version: 1.10.7+0.1724144664.p
      - name: red-hat-camel-k-operator.v1.10.7
        version: 1.10.7
      - name: red-hat-camel-k-operator.v1.10.7-0.1723632902.p
        version: 1.10.7+0.1723632902.p
      - name: red-hat-camel-k-operator.v1.10.6
        version: 1.10.6
      - name: red-hat-camel-k-operator.v1.10.5
        version: 1.10.5
      - name: red-hat-camel-k-operator.v1.10.5-0.1705608149.p
        version: 1.10.5+0.1705608149.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1699536334.p
        version: 1.10.4+0.1699536334.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1700072719.p
        version: 1.10.4+0.1700072719.p
      - name: red-hat-camel-k-operator.v1.10.4
        version: 1.10.4
      - name: red-hat-camel-k-operator.v1.10.3
        version: 1.10.3
      - name: red-hat-camel-k-operator.v1.10.2
        version: 1.10.2
      - name: red-hat-camel-k-operator.v1.10.1
        version: 1.10.1
      - name: red-hat-camel-k-operator.v1.10.1-0.1695295065.p
        version: 1.10.1+0.1695295065.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693789561.p
        version: 1.10.1+0.1693789561.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693378374.p
        version: 1.10.1+0.1693378374.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1682325781.p
        version: 1.10.0+0.1682325781.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1687356936.p
        version: 1.10.0+0.1687356936.p
      - name: red-hat-camel-k-operator.v1.10.0
        version: 1.10.0
      - name: red-hat-camel-k-operator.v1.10.0-0.1679561624.p
        version: 1.10.0+0.1679561624.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1678893647.p
        version: 1.10.0+0.1678893647.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: candidate
    - currentCSV: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
          createdAt: "2024-10-07T13:45:51Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          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: "true"
          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.skipRange: '>=1.8.0 <1.10.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:72ed79d0b4bf82ab58d22a174190f69401da83d80a09785648148760e1803d9d
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
        version: 1.10.8+0.1733993735.p
      entries:
      - name: red-hat-camel-k-operator.v1.10.8-0.1731578390.p
        version: 1.10.8+0.1731578390.p
      - name: red-hat-camel-k-operator.v1.10.8
        version: 1.10.8
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993120.p
        version: 1.10.8+0.1733993120.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731485816.p
        version: 1.10.8+0.1731485816.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124835.p
        version: 1.10.8+0.1733124835.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124325.p
        version: 1.10.8+0.1733124325.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731894055.p
        version: 1.10.8+0.1731894055.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731893478.p
        version: 1.10.8+0.1731893478.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
        version: 1.10.8+0.1733993735.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
        version: 1.10.8+0.1733135130.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1723633518.p
        version: 1.10.7+0.1723633518.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724202359.p
        version: 1.10.7+0.1724202359.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724145144.p
        version: 1.10.7+0.1724145144.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724144664.p
        version: 1.10.7+0.1724144664.p
      - name: red-hat-camel-k-operator.v1.10.7
        version: 1.10.7
      - name: red-hat-camel-k-operator.v1.10.7-0.1723632902.p
        version: 1.10.7+0.1723632902.p
      - name: red-hat-camel-k-operator.v1.10.6
        version: 1.10.6
      - name: red-hat-camel-k-operator.v1.10.5
        version: 1.10.5
      - name: red-hat-camel-k-operator.v1.10.5-0.1705608149.p
        version: 1.10.5+0.1705608149.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1699536334.p
        version: 1.10.4+0.1699536334.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1700072719.p
        version: 1.10.4+0.1700072719.p
      - name: red-hat-camel-k-operator.v1.10.4
        version: 1.10.4
      - name: red-hat-camel-k-operator.v1.10.3
        version: 1.10.3
      - name: red-hat-camel-k-operator.v1.10.2
        version: 1.10.2
      - name: red-hat-camel-k-operator.v1.10.1
        version: 1.10.1
      - name: red-hat-camel-k-operator.v1.10.1-0.1695295065.p
        version: 1.10.1+0.1695295065.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693789561.p
        version: 1.10.1+0.1693789561.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693378374.p
        version: 1.10.1+0.1693378374.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1682325781.p
        version: 1.10.0+0.1682325781.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1687356936.p
        version: 1.10.0+0.1687356936.p
      - name: red-hat-camel-k-operator.v1.10.0
        version: 1.10.0
      - name: red-hat-camel-k-operator.v1.10.0-0.1679561624.p
        version: 1.10.0+0.1679561624.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1678893647.p
        version: 1.10.0+0.1678893647.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: latest
    - currentCSV: red-hat-camel-k-operator.v1.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
          createdAt: "2022-08-15T20:17:25Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          olm.skipRange: '>=1.6.7 <=1.6.8'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:bcc0ef48ec42c88d212173167615feb2cf276c133b26b866ae3453af7ab1ee80
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
        version: 1.6.10
      entries:
      - name: red-hat-camel-k-operator.v1.6.10
        version: 1.6.10
      - name: red-hat-camel-k-operator.v1.6.9
        version: 1.6.9
      name: stable
    defaultChannel: 1.10.x
    packageName: red-hat-camel-k
    provider:
      name: Red Hat
      url: https://access.redhat.com/products/red-hat-integration
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://github.com/redhat-developer/app-services-operator/
    name: rhoas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhoas-operator.0.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhoas.redhat.com/v1alpha1",
                "kind": "ServiceRegistryConnection",
                "metadata": {
                  "name": "example",
                  "namespace": "example-namespace",
                  "labels": {
                    "app.kubernetes.io/component": "external-service",
                    "app.kubernetes.io/managed-by": "rhoas"
                  }
                },
                "spec": {
                  "accessTokenSecretName": "rh-managed-services-api-accesstoken",
                  "serviceRegistryId": "exampleId",
                  "credentials": {
                    "serviceAccountSecretName": "service-account-secret"
                  }
                }
              },
              {
                "apiVersion": "rhoas.redhat.com/v1alpha1",
                "kind": "CloudServiceAccountRequest",
                "metadata": {
                  "name": "example",
                  "namespace": "example-namespace"
                },
                "spec": {
                  "serviceAccountName": "rhoas-sa",
                  "serviceAccountDescription": "Operator created service account",
                  "serviceAccountSecretName": "service-account-credentials",
                  "accessTokenSecretName": "rh-managed-services-api-accesstoken"
                }
              },
              {
                "apiVersion": "rhoas.redhat.com/v1alpha1",
                "kind": "CloudServicesRequest",
                "metadata": {
                  "name": "example",
                  "namespace": "example-namespace",
                  "labels": {
                    "app.kubernetes.io/component": "external-service",
                    "app.kubernetes.io/managed-by": "rhoas"
                  }
                },
                "spec": {
                  "accessTokenSecretName": "rh-cloud-services-api-accesstoken"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          certified: "false"
          containerImage: quay.io/rhoas/service-operator:0.13.0
          createdAt: "2023-01-20 16:09:37"
          description: Red Hat OpenShift Application Services Operator
          olm.skipRange: '>=0.0.1 <0.13.0'
          repository: https://github.com/redhat-developer/app-services-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Creates RHOAS Service Accounts
            displayName: Cloud Service Account Request
            kind: CloudServiceAccountRequest
            name: cloudserviceaccountrequests.rhoas.redhat.com
            version: v1alpha1
          - description: Cloud Services Request
            displayName: Cloud Services Request
            kind: CloudServicesRequest
            name: cloudservicesrequests.rhoas.redhat.com
            version: v1alpha1
          - description: Binds Kafka Instance
            displayName: Kafka Connection
            kind: KafkaConnection
            name: kafkaconnections.rhoas.redhat.com
            version: v1alpha1
          - description: Binds Service Registry Instance
            displayName: Service Registry Connection
            kind: ServiceRegistryConnection
            name: serviceregistryconnections.rhoas.redhat.com
            version: v1alpha1
        description: "**OpenShift Application Services Operator (RHOAS-Operator)**
          creates instances of Red Hat OpenShift Application Services in your cluster.
          Operator is currently available as limited Beta and it cannot be consumed
          without invitation.\n\nRed Hat OpenShift Application Services, when added
          to Red Hat OpenShift Dedicated,  provide a streamlined developer experience
          for building, deploying,  and scaling cloud-native applications in open
          hybrid-cloud environments.   \n\nRHOAS-Operator enables developers to connect
          with their Application Services directly in their own cluster by using [RHOAS
          cli](https://github.com/redhat-developer/app-services-cli) and OpenShift
          Console UI.  \n\nRHOAS-Operator requires developers to connect with their
          Red Hat OpenShift Streams for Apache Kafka (RHOSAK) instances.  "
        displayName: OpenShift Application Services (RHOAS)
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - rhoas
        - kafka
        - serviceregistry
        - app-services
        - application
        - services
        links:
        - name: RHOAS Operator Documentation
          url: https://github.com/redhat-developer/app-services-operator/tree/main/docs
        maintainers:
        - email: rhosak-eval-support@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat Inc.
          url: https://github.com/redhat-developer/app-services-operator/
        relatedImages:
        - quay.io/openshift-community-operators/rhoas-operator@sha256:5299cd4c88012692b31d560ef981f80f994a0468552f43e03623adbf89b49ff6
        - quay.io/rhoas/service-operator:0.13.0
        version: 0.13.0
      entries:
      - name: rhoas-operator.0.13.0
        version: 0.13.0
      - name: rhoas-operator.0.12.0
        version: 0.12.0
      - name: rhoas-operator.0.11.0
        version: 0.11.0
      - name: rhoas-operator.0.9.6
        version: 0.9.6
      - name: rhoas-operator.0.9.5
        version: 0.9.5
      - name: rhoas-operator.0.9.3
        version: 0.9.3
      - name: rhoas-operator.0.9.2
        version: 0.9.2
      - name: rhoas-operator.0.9.1
        version: 0.9.1
      - name: rhoas-operator.0.9.0
        version: 0.9.0
      - name: rhoas-operator.0.8.2
        version: 0.8.2
      - name: rhoas-operator.0.7.10
        version: 0.7.10
      - name: rhoas-operator.0.7.9
        version: 0.7.9
      - name: rhoas-operator.0.7.8
        version: 0.7.8
      - name: rhoas-operator.0.7.6
        version: 0.7.6
      - name: rhoas-operator.0.7.2
        version: 0.7.2
      - name: rhoas-operator.0.7.1
        version: 0.7.1
      - name: rhoas-operator.0.6.8
        version: 0.6.8
      name: beta
    defaultChannel: beta
    packageName: rhoas-operator
    provider:
      name: Red Hat Inc.
      url: https://github.com/redhat-developer/app-services-operator/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: m88i Labs
      provider-url: ""
    name: nexus-operator-m88i
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nexus-operator.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.m88i.io/v1alpha1",
                "kind": "Nexus",
                "metadata": {
                  "name": "nexus3"
                },
                "spec": {
                  "networking": {
                    "expose": false
                  },
                  "persistence": {
                    "persistent": false
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "2",
                      "memory": "2Gi"
                    },
                    "requests": {
                      "cpu": "1",
                      "memory": "2Gi"
                    }
                  },
                  "useRedHatImage": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/m88i/nexus-operator:0.6.0
          createdAt: "2019-11-16T13:12:22Z"
          description: Nexus Operator to deploy and manage Nexus 3.x servers
          operators.operatorframework.io/builder: operator-sdk-v1.4.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/m88i/nexus-operator
          support: m88i Labs
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: Nexus
            kind: Nexus
            name: nexus.apps.m88i.io
            version: v1alpha1
        description: |-
          Creates a new Nexus 3.x deployment in a Kubernetes cluster. Will help DevOps to have a quick Nexus application exposed to the world that can be used in a CI/CD process:

          * Deploys a new Nexus 3.x server based on either Community or Red Hat images
          * Creates an [Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) in Kubernetes (1.14+) environments to expose the application to the world
          * On OpenShift, creates a Route to expose the service outside the cluster
          * Automatically creates Apache, Red Hat and JBoss Maven repositories
          * Automatically updates Nexus within the same minor version

          [See our documentation](https://github.com/m88i/nexus-operator/blob/main/README.md) for more installation and usage scenarios.

          If you experience any issues or have any ideas for new features, please [file an issue in our Github repository](https://github.com/m88i/nexus-operator/issues) or send an email to our maillist: [nexus-operator@googlegroups.com](mailto:nexus-operator@googlegroups.com)

          *Please note that the operator is an individual work and it's not provided nor supported by Sonatype.*
        displayName: Nexus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nexus
        - sonatype
        - maven
        - docker
        - ci
        - continuous integration
        - continuous delivery
        - repository
        - repository manager
        - dev tools
        links:
        - name: Documentation
          url: https://github.com/m88i/nexus-operator/blob/main/README.md
        - name: Nexus Operator source code repository
          url: https://github.com/m88i/nexus-operator
        maintainers:
        - email: nexus-operator@googlegroups.com
          name: m88i Labs
        maturity: alpha
        provider:
          name: m88i Labs
        relatedImages:
        - quay.io/m88i/nexus-operator:0.6.0
        - quay.io/openshift-community-operators/nexus-operator-m88i@sha256:46cd06d477b4d09dbfca7ca4434ea58f881314138ed744c6390033bd6fb7dc0f
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        version: 0.6.0
      entries:
      - name: nexus-operator.v0.6.0
        version: 0.6.0
      name: alpha
    defaultChannel: alpha
    packageName: nexus-operator-m88i
    provider:
      name: m88i Labs
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: MinIO
      provider-url: https://min.io
    name: minio-minkms
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: minio-minkms.v2025.12.17191008
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "minkms.min.io/v1alpha1",
                "kind": "MinKMS",
                "metadata": {
                  "name": "my-minkms",
                  "namespace": "ns-1"
                },
                "spec": {
                  "apiKeySecret": {
                    "name": "my-api-key"
                  },
                  "configuration": {
                    "name": "my-kms-server-config"
                  },
                  "hsmSecret": {
                    "name": "my-kms-hsm"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "registry-creds"
                    }
                  ],
                  "replicas": 2,
                  "volumeClaimTemplate": {
                    "metadata": {
                      "name": "minkms-volume"
                    },
                    "spec": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "100Mi"
                        }
                      },
                      "storageClassName": "standard"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security, Storage
          createdAt: "2025-12-17T19:10:08Z"
          description: MinIO AIStor is the standard for building large scale AI data
            infrastructure.
          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"
          operatorframework.io/suggested-namespace: aistor
          operators.openshift.io/valid-subscription: Contact MinIO for subscription
            information.
          operators.operatorframework.io.bundle.channel.default.v1: stable
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: unknown
          support: min.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: MinKMS
            name: minkmses.minkms.min.io
            version: v1alpha1
        description: |-
          Highly available, powerful and operationally simple, MinIO's Enterprise Key Management Server (MinKMS) is optimized for large storage infrastructures where billions of cryptographic keys are required.

          MinIO's AIStor MinKMS establishes its foundational trust using the concept of an hardware security module (but given MinKMS is software, this is only a concept). That module assumes a pivotal role in sealing and unsealing the MinKMS root encryption key. The module responsibility extends to safeguarding the integrity of MinKMS by allowing the unsealing of its encrypted on-disk state and facilitating communication among nodes within a MinKMS cluster.

          It solves the challenges associated with billions of cryptographic keys and hundreds of thousands of cryptographic operations per node per second - which are commonplace in larger deployments.

          <b>High Availability and Fault Tolerance</b>
          In the dynamic landscape of large-scale systems, network or node outages are inevitable. Taking down a cluster for maintenance is rarely feasible. MinIO's AIStor MinKMS ensures uninterrupted availability, even when faced with such disruptions, mitigating cascading effects that can take down the entire storage infrastructure. Specifically, you could lose all but one node of a cluster and still handle any encryption, decryption or data key generation requests.

          <b>Scalability</b>
          While the amount of data usually only increases, the load on a large-scale storage system may vary significantly from time to time. MinIO's AIStor MinKMS supports dynamic cluster resizing and nodes can be added or removed at any point without incurring any downtime.

          <b>Multi-Tenancy</b>
          Large-scale storage infrastructures are often used by many applications and teams across the entire organization. Isolating teams and groups into their own namespaces is a core requirement. MinIO's AIStor MinKMS supports namespacing in the form of enclaves. Each tenant can be assigned its own enclave which is completely independent and isolated from all other enclaves on the MinKMS cluster.

          <b>Predictable Behavior</b>
          MinIO's AIStor MinKMS is designed to be easily managed, providing operators with the ability to comprehend its state intuitively. Due to its simple design, MinIO's AIStor MinKMS is significantly easier to operate than similar solutions that rely on more complex consensus algorithms like Raft, or Paxos.

          <b>Consistent and Performant</b>
          The responsiveness of the MinKMS for GET/PUT operations directly influences the overall efficiency and speed of the storage system. MinIO's AIStor MinKMS nodes don't have to coordinate when handling such requests from the storage system. Therefore, the performance of a MinIO's AIStor MinKMS cluster increases linearly with the number of nodes. Further, MinIO's AIStor MinKMS supports request pipelining to handle hundreds of thousands of cryptographic operations per node and second.

          <b>Simplicity</b>
          Operating a MinKMS cluster does not require expertise in cryptography or distributed systems. Everything can be done from the AIStor Console.

          <a href="https://resources.min.io/request-a-demo-marketplaces/">Request a demo today</a>
        displayName: MinKMS
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AI Storage
        - MinIO
        links:
        - name: Minio AIStor
          url: https://min.io
        - name: Support
          url: https://subnet.min.io
        - name: Github
          url: https://github.com/minio/aistor
        maintainers:
        - email: dev@min.io
          name: MinIO
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: MinIO
          url: https://min.io
        relatedImages:
        - quay.io/minio/aistor/operator@sha256:2c3cb98193815b76f73e89bb3d6311ccd75c3b354bdccd04758715a08b163436
        - registry.connect.redhat.com/minkms/minkms@sha256:2bf2b896bd39e585ed3797f3e37922b7ac60b51e92cc80667199280c4aea5c99
        - quay.io/minio/aistor/minkms-sidecar@sha256:f460aef51e32fd6bd556f3d30f14f026855cb4010f662c82d1964e1596c50f2a
        - quay.io/minio/aistor/minkms@sha256:4c089d787b4ebf862dbce7826ac6eadeca5e0811b1f0379f43fb732f321fda8f
        version: 2025.12.17191008
      entries:
      - name: minio-minkms.v2025.12.17191008
        version: 2025.12.17191008
      - name: minio-minkms.v2025.12.16205103
        version: 2025.12.16205103
      name: stable
    defaultChannel: stable
    packageName: minio-minkms
    provider:
      name: MinIO
      url: https://min.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Nutanix
      provider-url: ""
    name: nutanixcsioperator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nutanixcsioperator.v3.3.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "crd.nutanix.com/v1alpha1",
                "kind": "NutanixCsiStorage",
                "metadata": {
                  "name": "nutanixcsistorage"
                },
                "spec": {
                  "ntnxInitConfigMap": {
                    "usePC": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/nutanix/nutanix-csi-operator@sha256:0c2f43cdc7d530fb0e8730abc225401f557f05806f5de3fcd82aedcf17ecb89e
          createdAt: "2025-11-28T07:13:29Z"
          description: An Operator for deploying and managing the Nutanix CSI Driver
          features.operators.openshift.io/csi: "true"
          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.skipRange: <3.3.9
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi","disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/nutanix/csi-operator
          support: Nutanix Support Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a new instance of Nutanix CSI Driver
            displayName: Nutanix CSI Storage
            kind: NutanixCsiStorage
            name: nutanixcsistorages.crd.nutanix.com
            version: v1alpha1
        description: "# Important\nPlease read the following instructions carefully
          before upgrading from 2.6.x to 3.3.9, for more information please refer
          to [documentation](https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v3_3:CSI-Volume-Driver-v3_3)
          \n- Please do not upgrade to the CSI 3.x operator if:\n    * You are using
          LVM volumes.\n\n- CSI 3.3.9 supports PC service account-based authentication
          in Nutanix Volumes and Nutanix Files. Instead of using username and password
          secrets, Prism Central administrators can now create service accounts, configure
          RBAC, and use generated API keys for secure storage provisioning. Create
          a Nutanix Prism Central secret with service account key as shown [here](#create-a-nutanix-pc-secret)\n\nNote:
          In order to use this feature you should uninstall the driver(delete existing
          nutanixcsistorage resource), create a nutanix-pc-secret with the service
          account key as shown [here](#create-a-nutanix-pc-secret) and install the
          driver again by passing the newly created secret name in pcSecretName and
          authType: \"service-auth\" in nutanixcsistorage spec.\n    \n- To upgrade
          from the CSI 2.6.x to CSI 3.3 (interacting with Prism Central) operator\n
          \   * Create a Nutanix Prism Central secret as explained below.\n    * Delete
          the csidriver object from the cluster:\n\n        ```\n        oc delete
          csidriver csi.nutanix.com\n        ```\n\n    * In the installed operators,
          go to Nutanix CSI Operator and change the subscription channel from stable
          to stable-3.x. \n    If you have installed the operator with automatic update
          approval, the operator will be automatically upgraded to CSI 3.3, and then
          the nutanixcsistorage resource will be upgraded.\n    An update plan will
          be generated for manual updates. Upon approval, the operator will be successfully
          upgraded.\n    \n- Direct upgrades from CSI 2.6.x to CSI 3.3 interacting
          with Prism Element are not supported. \n    The only solution is to recreate
          the nutanixcsistorage instance by following the below procedure:\n    -
          In the installed operators, go to Nutanix CSI Operator and delete the nutanixcsistorage
          instance.\n    - Next change the subscription channel from stable to stable-3.x.\n
          \   - Verify the following points:\n        - Ensure a Nutanix Prism Element
          secret is present in the namespace.\n        - Ensure that all the storage
          classes with provisioner: csi.nutanix.com have a controller publish secret
          as explained below.\n\n            ```\n            csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n            csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n            ```\n\n            If this secret
          is not present in the storage class please delete and recreate the storage
          classes with the required secrets.\n    - Create a new instance of nutanixcsistorage
          from this operator by specifying `usePC: false` in YAML spec section.\n
          \   - Caution: Moving from CSI driver interacting with Prism Central to
          CSI driver interacting with Prism Element is not supported.\n    \n- Troubleshooting:\n
          \   \n    If the upgrade was unsuccessful and you want to revert to version
          CSI 2.6.x, please delete the csidriver object as explained above, uninstall
          the operator (no need to delete the nutanixcsistorage custom resource),
          and install version CSI 2.6.x from the stable channel.\n# Overview \nThe
          Nutanix CSI Operator for Kubernetes packages, deploys, manages, and upgrades
          the Nutanix CSI Driver on Kubernetes and OpenShift for dynamic provisioning
          of persistent volumes on the Nutanix Enterprise Cloud platform.\nThe Nutanix
          Container Storage Interface (CSI) Driver for Kubernetes leverages Nutanix
          Volumes and Nutanix Files to provide scalable and persistent storage for
          stateful applications.\nWith the Nutanix CSI Provider, you can:\n*  **Provide
          persistent storage to your containers**\n    * Leverage PVC resources to
          consume dynamically Nutanix storage\n    * With Files storage classes, applications
          on multiple pods can access the same storage and have the benefit of multi-pod
          read and write access. \n## Warning\nIf you upgrade from a previous version,
          make sure to validate your existing StorageClass parameters against the
          corresponding [documentation](https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v3_3:CSI-Volume-Driver-v3_3)\n##
          Supported Access mode\n| Storage Class mode | ReadWriteOnce | ReadOnlyMany
          | ReadWriteMany |\n|--------------------|---------------|--------------|---------------|\n|
          Nutanix Volumes    | yes           | yes          | no            |\n| Nutanix
          Files      | yes           | yes          | yes           |\n## Supported
          orchestration platforms\nThe following table details orchestration platforms
          suitable for deployment of the Nutanix CSI driver.\n| Orchestration platform
          | Version | Architecture |\n|------------------------|---------|--------------|\n|
          Red Hat OpenShift      | 4.12    | x86          |\n| Red Hat OpenShift      |
          4.13    | x86          |\n| Red Hat OpenShift      | 4.14    | x86          |\n|
          Red Hat OpenShift      | 4.15    | x86          |\n| Red Hat OpenShift      |
          4.16    | x86          |\n| Red Hat OpenShift      | 4.17    | x86          |\n|
          Red Hat OpenShift      | 4.18    | x86          |\n| Red Hat OpenShift      |
          4.19    | x86          |\n| Red Hat OpenShift      | 4.20    | x86          |\n##
          Configuring k8s secret and storage class\nTo use this driver, create the
          relevant storage classes and secrets and deploy your NutanixCsiStorage instance
          by following the [documentation](https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v3_3:CSI-Volume-Driver-v3_3)
          or the example in below section:\n### Create a Nutanix PE secret\n```yaml\napiVersion:
          v1\nkind: Secret\nmetadata:\n  name: ntnx-pe-secret\n  namespace: openshift-cluster-csi-drivers\nstringData:\n
          \ # prism-ip:prism-port:username:password.\n  key: 1.2.3.4:9440:admin:password\n
          \ files-key: \"fileserver01.sample.com:csi:password1\"\n```\n### Create
          a Nutanix PC secret\n- basic authentication\n```yaml\napiVersion: v1\nkind:
          Secret\nmetadata:\n  name: ntnx-pc-secret\n  namespace: openshift-cluster-csi-drivers\nstringData:\n
          \ # prism-ip:prism-port:username:password.\n  key: 1.2.3.4:9440:admin:password\n```\n-
          service account based authentication\n```yaml\napiVersion: v1\nkind: Secret\nmetadata:\n
          \ name: ntnx-pc-secret\n  namespace: openshift-cluster-csi-drivers\ntype:
          Opaque\nstringData:\n  host: 1.2.3.4\n  port: 9440\n  key_type: \"api-key\"\n
          \ key_value: \"xxxxxxxxxxx\"\n  auth_type: \"service-auth\"\n```\n### Create
          a NutanixCsiStorage resource to deploy your driver\nYou can do it directly
          inside the Operator UI with the `Create instance` button or with the following
          resource\n```yaml\napiVersion: crd.nutanix.com/v1alpha1\nkind: NutanixCsiStorage\nmetadata:\n
          \ name: nutanixcsistorage\n  namespace: openshift-cluster-csi-drivers\nspec:
          \n  ntnxInitConfigMap:\n    usePC : true (false for PE based installations.
          Default is true.)\n```\n### Create storage classes\n- volume mode example
          for 3.x installation\n```yaml\nkind: StorageClass\napiVersion: storage.k8s.io/v1\nmetadata:\n
          \ name: nutanix-volume\nprovisioner: csi.nutanix.com\nparameters:\n  csi.storage.k8s.io/provisioner-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/provisioner-secret-namespace: openshift-cluster-csi-drivers\n
          \ csi.storage.k8s.io/node-publish-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/node-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-expand-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-expand-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/fstype: ext4\n  storageContainer:
          default-container\n  storageType: NutanixVolumes\n  #description: \"description
          added to each storage object created by the driver\"\n  #hypervisorAttached:
          ENABLED\nallowVolumeExpansion: true\nreclaimPolicy: Delete\n```\n- volume
          mode example for 2.x installation\n```yaml\nkind: StorageClass\napiVersion:
          storage.k8s.io/v1\nmetadata:\n  name: nutanix-volume\nprovisioner: csi.nutanix.com\nparameters:\n
          \ csi.storage.k8s.io/provisioner-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/provisioner-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/node-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/node-publish-secret-namespace: openshift-cluster-csi-drivers\n
          \ csi.storage.k8s.io/controller-expand-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/controller-expand-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/fstype: ext4\n   storageContainer:
          default-container\n   storageType: NutanixVolumes\n   #description: \"description
          added to each storage object created by the driver\"\n   #isSegmentedIscsiNetwork:
          \"false\"\n   #whitelistIPMode: ENABLED\n   #chapAuth: ENABLED\n   #isLVMVolume:
          \"false\"\n   #numLVMDisks: 4\n allowVolumeExpansion: true\n reclaimPolicy:
          Delete\n```\n- dynamic files mode example\n```yaml\nkind: StorageClass\napiVersion:
          storage.k8s.io/v1\nmetadata:\n    name: nutanix-dynfiles\nprovisioner: csi.nutanix.com\nparameters:\n
          \ dynamicProv: ENABLED\n  nfsServerName: fs\n  csi.storage.k8s.io/provisioner-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/provisioner-secret-namespace: openshift-cluster-csi-drivers\n
          \ csi.storage.k8s.io/node-publish-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/node-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-expand-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-expand-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  storageType: NutanixFiles\n  squashType:
          \"none\"\n  #description: \"description added to each storage object created
          by the driver\"\nallowVolumeExpansion: true\n```"
        displayName: Nutanix CSI Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Nutanix
        - CSI
        - Volumes
        - Files
        - Storage
        links:
        - name: Documentation
          url: https://portal.nutanix.com/page/documents/list?type=software&filterKey=product&filterVal=CSI
        maintainers:
        - email: cloudnative@nutanix.com
          name: Nutanix Cloud Native
        maturity: beta
        provider:
          name: Nutanix
        relatedImages:
        - registry.connect.redhat.com/nutanix/ntnx-csi-os@sha256:92ab85b4f728ad1b1f31b75ec591f569cf37717035ce6df04bf4569577f5f86c
        - registry.connect.redhat.com/nutanix/ntnx-csi-os@sha256:f23dd74af1a094c473983916d04cfd60290c806f8ce6adf379a6211bbdd0b9c3
        - registry.connect.redhat.com/nutanix/nutanix-csi-operator-bundle@sha256:7d6b9e826cd5043f7d8148e5036d2d2cfb070b4b651d7ca86cbd2591f42d6e52
        - registry.connect.redhat.com/nutanix/nutanix-csi-operator@sha256:0c2f43cdc7d530fb0e8730abc225401f557f05806f5de3fcd82aedcf17ecb89e
        - registry.k8s.io/sig-storage/csi-external-health-monitor-controller@sha256:9e581022a4e063b9d8b4f9466a36eabe4d0ced3badc8e353f13b700074ce4553
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:0f64602ea791246712b51df334bbd701a0f31df9950a4cb9c28c059f367baa9e
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:9af9bf28430b00a0cedeb2ec29acadce45e6afcecd8bdf31c793c624cfa75fa7
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:f1bd6ee18c4021c1c94f29edfab89b49b6a4d1b800936c19dbef2d75f8202f2d
        - registry.k8s.io/sig-storage/livenessprobe@sha256:82adbebdf5d5a1f40f246aef8ddbee7f89dea190652aefe83336008e69f9a89f
        - registry.k8s.io/sig-storage/csi-attacher@sha256:d7325367ab72b2d469a5091d87b4fc01142d2d13d1a28b2defbbe3e6fdbc4611
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:04c55b93a032ad8075cae540d60fc740a72c31006590dbdb61ad4ab9813959d0
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:10624570c0aceb03f55f1eb07147b0c537e4676869cca2e9bd4bab113f810ac4
        - registry.k8s.io/sig-storage/csi-resizer@sha256:3c116f543f0590aeff3299c8bb0683f250817d11a77d9e9071b15a0bffdabcd9
        version: 3.3.9
      entries:
      - name: nutanixcsioperator.v3.3.9
        version: 3.3.9
      - name: nutanixcsioperator.v3.3.8
        version: 3.3.8
      - name: nutanixcsioperator.v3.3.4
        version: 3.3.4
      name: stable-3.x
    defaultChannel: stable-3.x
    packageName: nutanixcsioperator
    provider:
      name: Nutanix
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: JohnSnowLabs
      provider-url: ""
    name: nlp-server
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nlp-server.v0.8.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.johnsnowlabs.com/v1",
                "kind": "Nlpserver",
                "metadata": {
                  "name": "nlpserver-sample"
                },
                "spec": {
                  "ExtraEnv": {
                    "johnsnowlabs_client_id": "sI4MKSmLHOX2Pg7XhM3McJS2oyKG5PHcp0BlANEW",
                    "nb_uid": "1000",
                    "nb_user": "johnsnowlabs",
                    "pyspark_version": "3.0.2",
                    "spark_nlp_version": "3.4.4"
                  },
                  "affinity": {},
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "johnsnowlabs/nlp-server",
                    "tag": "0.8.0rc1"
                  },
                  "imagePullSecrets": [],
                  "ingress": {
                    "annotations": {
                      "kubernetes.io/ingress.class": "nginx",
                      "nginx.ingress.kubernetes.io/ssl-redirect": "true"
                    },
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "nlp-server.jsl.aiplatform.eks.test.johnsnowlabs.com",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": [
                      {
                        "hosts": [
                          "nlp-server.jsl.aiplatform.eks.test.johnsnowlabs.com"
                        ],
                        "secretName": "annotationlab-tls-secret"
                      }
                    ]
                  },
                  "livenessProbe": "httpGet:\n  path: /\n  port: http\ninitialDelaySeconds: 15\ntimeoutSeconds: 3\n",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podSecurityContext": {},
                  "readinessProbe": "httpGet:\n  path: /\n  port: http\ninitialDelaySeconds: 15\ntimeoutSeconds: 3\n",
                  "replicaCount": 1,
                  "resources": {},
                  "securityContext": {},
                  "service": {
                    "port": 5000,
                    "portName": "http",
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": "nlp-server-sa"
                  },
                  "tolerations": []
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: registry.johnsnowlabs.com/nlp-server/nlp-server-operator:0.8.6
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Nlpserver
            name: nlpservers.apps.johnsnowlabs.com
            version: v1
        description: NLPServer from JohnSnow labs
        displayName: nlp-server
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nlp-server
        links:
        - name: Nlp Server
          url: https://johnsnowlabs.com
        maturity: alpha
        provider:
          name: JohnSnowLabs
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/openshift-community-operators/nlp-server@sha256:6f80f44822301252540c6b808a20cea327f0eedeadc7643d31fc743de5c5e696
        - registry.johnsnowlabs.com/nlp-server/nlp-server-operator:0.8.6
        version: 0.8.6
      entries:
      - name: nlp-server.v0.8.6
        version: 0.8.6
      name: alpha
    defaultChannel: alpha
    packageName: nlp-server
    provider:
      name: JohnSnowLabs
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ThinkParQ
      provider-url: https://www.thinkparq.com
    name: beegfs-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: beegfs-csi-driver-operator.v1.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "beegfs.csi.netapp.com/v1",
                "kind": "BeegfsDriver",
                "metadata": {
                  "name": "csi-beegfs-cr"
                },
                "spec": {
                  "nodeAffinityControllerService": {
                    "preferredDuringSchedulingIgnoredDuringExecution": [
                      {
                        "preference": {
                          "matchExpressions": [
                            {
                              "key": "node-role.kubernetes.io/master",
                              "operator": "Exists"
                            }
                          ]
                        },
                        "weight": 50
                      }
                    ],
                    "requiredDuringSchedulingIgnoredDuringExecution": {
                      "nodeSelectorTerms": [
                        {
                          "matchExpressions": [
                            {
                              "key": "node.openshift.io/os_id",
                              "operator": "NotIn",
                              "values": [
                                "rhcos"
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  },
                  "nodeAffinityNodeService": {
                    "requiredDuringSchedulingIgnoredDuringExecution": {
                      "nodeSelectorTerms": [
                        {
                          "matchExpressions": [
                            {
                              "key": "node.openshift.io/os_id",
                              "operator": "NotIn",
                              "values": [
                                "rhcos"
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: ghcr.io/thinkparq/beegfs-csi-driver-operator:v1.8.0
          createdAt: 2021-06-30:03:11:00
          description: Install and manage the BeeGFS CSI driver
          operatorframework.io/suggested-namespace: beegfs-csi
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ThinkParQ/beegfs-csi-driver
          support: ThinkParQ
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys the BeeGFS CSI driver
            displayName: BeeGFS Driver
            kind: BeegfsDriver
            name: beegfsdrivers.beegfs.csi.netapp.com
            version: v1
        description: |
          The BeeGFS Container Storage Interface (CSI) driver provides high performing and scalable storage for workloads
          running in container orchestrators like Kubernetes. It allows containers to access existing datasets or request
          on-demand ephemeral or persistent high speed storage backed by BeeGFS parallel file systems.

          This operator eases the installation and management of the BeeGFS CSI driver in an OpenShift or other Operator
          Lifecycle Manager enabled cluster.

          ### Documentation

          Compatibility information and a quick start guide for the BeeGFS CSI driver itself are available on our [main GitHub
          page](https://www.github.com/ThinkParQ/beegfs-csi-driver). Additional detailed documentation for the driver is
          available in the [docs directory](https://www.github.com/ThinkParQ/beegfs-csi-driver/tree/master/docs) and for the
          operator is available in the [operator
          README](https://www.github.com/ThinkParQ/beegfs-csi-driver/tree/master/operator/README.md).

          ### Important Notes

          The BeeGFS client packages and kernel module must be pre-installed on all nodes that will run the driver. See the
          driver ["Getting Started" guide](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/README.md#getting-started)
          for additional information.

          The BeeGFS CSI driver is only supported on nodes running a [BeeGFS supported Linux
          distribution](https://doc.beegfs.io/latest/release_notes.html#supported-linux-distributions-and-kernels). Red Hat
          CoreOS (RHCOS), the default distribution in OpenShift environments, is NOT supported. However, Red Hat Enterprise
          Linux (RHEL) nodes can be added to an OpenShift cluster and RHEL is supported for running BeeGFS. By default, the
          operator will install the driver with a node affinity that ensures it does not run on RHCOS nodes. See the driver
          [compatibility
          matrix](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/README.md#interoperability-and-csi-feature-matrix)
          for additional information.

          We have recently published experimental manifests that enable the BeeGFS CSI driver on OpenShift nodes running
          RHCOS. These manifests are not intended for production use. See [this
          README](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/deploy/openshift-beegfs-client/README.md) for more
          details.

          All driver configuration can be specified through the BeegfsDrivers API (in a BeegfsDriver Custom Resource)
          except for BeeGFS connAuth information, which must be placed separately into a Kubernetes Secret. See the [ConnAuth
          Configuration
          section](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/operator/README.md#connauth-configuration) of the
          operator documentation for additional information.

          Starting with version 1.4.0 of the BeeGFS CSI driver the driver and operator images will be signed using the Cosign
          tool. Refer to the [BeeGFS CSI driver operator
          README](https://www.github.com/ThinkParQ/beegfs-csi-driver/tree/master/operator/README.md)
          for details on how to verify the operator and driver image signatures.
        displayName: BeeGFS CSI Driver
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - CSI
        - BeeGFS
        - ThinkParQ
        - HPC
        - AI
        - High-Performance Computing
        links:
        - name: BeeGFS introduction
          url: https://www.beegfs.io/c/
        - name: BeeGFS documentation
          url: https://doc.beegfs.io/latest/index.html
        - name: BeeGFS CSI driver source code
          url: https://github.com/ThinkParQ/beegfs-csi-driver
        - name: BeeGFS blog posts
          url: https://www.beegfs.io/c/blog/
        maintainers:
        - email: csi-driver@beegfs.io
          name: ThinkParQ
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: ThinkParQ
          url: https://www.thinkparq.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/beegfs-csi-driver-operator@sha256:f62ae88c74faef808733ab2b905e1bc5b80ca3f3cc96bb946a8e939a73ccb59f
        - ghcr.io/thinkparq/beegfs-csi-driver-operator:v1.8.0
        version: 1.8.0
      entries:
      - name: beegfs-csi-driver-operator.v1.8.0
        version: 1.8.0
      - name: beegfs-csi-driver-operator.v1.7.0
        version: 1.7.0
      - name: beegfs-csi-driver-operator.v1.6.0
        version: 1.6.0
      - name: beegfs-csi-driver-operator.v1.5.0
        version: 1.5.0
      - name: beegfs-csi-driver-operator.v1.4.0
        version: 1.4.0
      - name: beegfs-csi-driver-operator.v1.3.0
        version: 1.3.0
      - name: beegfs-csi-driver-operator.v1.2.2
        version: 1.2.2
      - name: beegfs-csi-driver-operator.v1.2.1
        version: 1.2.1
      - name: beegfs-csi-driver-operator.v1.2.0
        version: 1.2.0
      name: stable
    defaultChannel: stable
    packageName: beegfs-csi-driver-operator
    provider:
      name: ThinkParQ
      url: https://www.thinkparq.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: amq-streams
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amqstreams.v2.2.2-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.3",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.3",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:f908d848b5e67de4b162597b190ef18d449ffd4b6540457b24b491445d5c5ea3
          createdAt: "2022-07-01 10:33:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          olm.skipRange: '>=2.1.0-0 <2.2.2-2'
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ", "Red Hat Application Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from AMQ Streams 1.7, migration to `v1beta2` needs to be completed for all AMQ Streams CRDs and CRs before the upgrade to 2.2 is done! If upgrading from AMQ Streams version earlier than 1.7, you need to first install the CRDs from AMQ Streams 1.7 and complete the migration to `v1beta2` for all AMQ Streams CRDs and CRs before the upgrade to 2.2 is done! For more details about the CRD upgrades, see the [documentation](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.2/html/deploying_and_upgrading_amq_streams_on_openshift/assembly-upgrade-str#assembly-upgrade-resources-str).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.2/html/deploying_and upgrading_amq_streams_on_openshift/assembly-upgrade-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: Red Hat Integration - AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-streams-bridge-rhel8@sha256:5d49bd23da40590e74422424b9457398bad89da8276718ff6a8a088e901c8345
        - registry.redhat.io/amq7/amq-streams-kafka-31-rhel8@sha256:d0607285fae95365b9d34b9474466824fb5ad012871204e8b13e52e438b66bf5
        - registry.redhat.io/amq7/amq-streams-kafka-32-rhel8@sha256:e3bbfff505f12c0360e175f4640c2dd9a7adcf3dce1ae2f586f2bde805ed8b1f
        - registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:f908d848b5e67de4b162597b190ef18d449ffd4b6540457b24b491445d5c5ea3
        - registry.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:826354c9c06a06f998e522a88d6a81239e003e1d6a2633e9b7b27b8a61d5fe38
        version: 2.2.2-2
      entries:
      - name: amqstreams.v2.2.2-2
        version: 2.2.2-2
      - name: amqstreams.v2.2.2-1
        version: 2.2.2-1
      - name: amqstreams.v2.2.2-0
        version: 2.2.2-0
      - name: amqstreams.v2.2.1-7
        version: 2.2.1-7
      - name: amqstreams.v2.2.1-6
        version: 2.2.1-6
      - name: amqstreams.v2.2.1-5
        version: 2.2.1-5
      - name: amqstreams.v2.2.1-4
        version: 2.2.1-4
      - name: amqstreams.v2.2.1-3
        version: 2.2.1-3
      - name: amqstreams.v2.2.1-2
        version: 2.2.1-2
      - name: amqstreams.v2.2.1-1
        version: 2.2.1-1
      - name: amqstreams.v2.2.1-0
        version: 2.2.1-0
      - name: amqstreams.v2.2.0-5
        version: 2.2.0-5
      name: amq-streams-2.2.x
    - currentCSV: amqstreams.v2.3.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.3.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.3"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.3.1",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:2e46a25144d697761f0119deaf528c6f1c2ccd04e2acd95c661b0df4f32e1a9f
          createdAt: "2022-10-31 17:05:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          olm.skipRange: '>=2.2.0-0 <2.3.0-4'
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.3.0 release, AMQ Streams supports only OCP 4.8 to 4.12!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 2.2 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more details, see the [documentation](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.3/html/deploying_and_upgrading_amq_streams_on_openshift/assembly-upgrade-str#assembly-upgrade-resources-str

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.3/html/deploying_and upgrading_amq_streams_on_openshift/assembly-upgrade-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-streams-bridge-rhel8@sha256:c822b3d87f7dea233fc523238d8d0516e42f9a3d252f50f4d427c934995f9b22
        - registry.redhat.io/amq7/amq-streams-kafka-32-rhel8@sha256:0152a85f2d0bc85881dacaee62c6e8b0b8b04f57a542b9b82dc93ad5303d6bf9
        - registry.redhat.io/amq7/amq-streams-kafka-33-rhel8@sha256:046c2539fef32bd928fc1f4f4c41e63f9a143b371fcc201d78c66f48fc34ea32
        - registry.redhat.io/amq7/amq-streams-operator-bundle@sha256:a59435a22c2f470b149ff721240f14144d2e56200b141e59a4f1011267a6c925
        - registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:2e46a25144d697761f0119deaf528c6f1c2ccd04e2acd95c661b0df4f32e1a9f
        - registry.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        version: 2.3.0-4
      entries:
      - name: amqstreams.v2.3.0-4
        version: 2.3.0-4
      name: amq-streams-2.3.x
    - currentCSV: amqstreams.v2.4.0-3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.3"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:cd1fefcd199400a504b4b9942c24ba6becafcecc952a9e39fa2729228be79e77
          createdAt: "2022-10-31 17:05:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          olm.skipRange: '>=2.3.0-0 <2.4.0-3'
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.4.0 release, AMQ Streams supports only OCP 4.8 to 4.12!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more details, see the [documentation](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.4/html/deploying_and_managing_amq_streams_on_openshift/assembly-upgrade-str)

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.4/html/deploying_and upgrading_amq_streams_on_openshift/assembly-upgrade-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:8d467fc746b78440df06f6d88d266f6ac9b5a4574a2b17fd870c173a107f8d65
        - registry.redhat.io/amq-streams/kafka-33-rhel8@sha256:aa780a250444c2426be79e95366050a33f4a4c9d68c08b58743413ea67a2d6d7
        - registry.redhat.io/amq-streams/kafka-34-rhel8@sha256:50b3be789993cfeedc4923a8e760c1cf52498b2178be3abfa3719fc2d15ce723
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:1346dcee82f2120bd2af22be9f041e057bdc32f9ad1c3ef717d599ba6519faeb
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:cd1fefcd199400a504b4b9942c24ba6becafcecc952a9e39fa2729228be79e77
        version: 2.4.0-3
      entries:
      - name: amqstreams.v2.4.0-3
        version: 2.4.0-3
      - name: amqstreams.v2.4.0-2
        version: 2.4.0-2
      - name: amqstreams.v2.4.0-1
        version: 2.4.0-1
      name: amq-streams-2.4.x
    - currentCSV: amqstreams.v2.5.2-8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
          createdAt: "2023-07-10 21:47:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.2.0-0 <2.5.2-8'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.5.2 release, AMQ Streams supports only OCP 4.12 to 4.16!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more information, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:4ede5eeed159bddacfe830a768bab4996003d4c57a496fc8ec9b41df916d4acc
        - registry.redhat.io/amq-streams/kafka-34-rhel8@sha256:95bc35951eb545b918114af1e92a7139e2e3323b7d054dcb2a060843c7326d28
        - registry.redhat.io/amq-streams/kafka-35-rhel8@sha256:8c7e8ccb6c2d5da32b70d9d0c3919c303ad73a25447f6993d964f7b19cca1072
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:3d5bcf889f3d534402a8bbfa51fc4a9499b7d6dfaac0d7b11e91363b379be192
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        - registry.redhat.io/ubi8/openjdk-17@sha256:8796da64c626c5f63f31a4e3ac0ac3b179333a7c6d5472a195b9b3f61ccd1099
        version: 2.5.2-8
      entries:
      - name: amqstreams.v2.5.2-8
        version: 2.5.2-8
      - name: amqstreams.v2.5.2-7
        version: 2.5.2-7
      - name: amqstreams.v2.5.2-6
        version: 2.5.2-6
      - name: amqstreams.v2.5.2-5
        version: 2.5.2-5
      - name: amqstreams.v2.5.2-4
        version: 2.5.2-4
      - name: amqstreams.v2.5.2-3
        version: 2.5.2-3
      - name: amqstreams.v2.5.2-2
        version: 2.5.2-2
      - name: amqstreams.v2.5.2-1
        version: 2.5.2-1
      - name: amqstreams.v2.5.2-0
        version: 2.5.2-0
      - name: amqstreams.v2.5.1-5
        version: 2.5.1-5
      - name: amqstreams.v2.5.1-4
        version: 2.5.1-4
      - name: amqstreams.v2.5.1-3
        version: 2.5.1-3
      - name: amqstreams.v2.5.1-2
        version: 2.5.1-2
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.5.x
    - currentCSV: amqstreams.v2.6.0-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.6.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.6"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.6.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:dacf7ddffe7cbe2dc35e7d3290637b3334117e09dde986e6eaeaceded7069fbf
          createdAt: "2023-10-14 18:18:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.5.0-0 <2.6.0-2'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: "**Red Hat AMQ Streams** is a massively scalable, distributed,
          and high performance data streaming platform based on the Apache Kafka®
          project. AMQ Streams provides an event streaming backbone that allows microservices
          and other application components to exchange data with extremely high throughput
          and low latency.\n**From the 2.6.0 release, AMQ Streams supports only OCP
          4.11 to 4.14! \n**The core capabilities include:** * A pub/sub messaging
          model, similar to a traditional enterprise messaging system, in which application
          components publish and consume events to/from an ordered stream\n* The long
          term, fault-tolerant storage of events\n* The ability for a consumer to
          replay streams of events\n* The ability to partition topics for horizontal
          scalability\n### Upgrades\n**!!! IMPORTANT !!!** **Direct upgrade from AMQ
          Stream 1.7 or earlier is not supported!** You have to upgrade first to one
          of the previous versions of AMQ Streams. You will also need to convert the
          CRD resources. For more information, see the [documentation for AMQ Streams
          on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).\n###
          Supported Features\n* **Manages the Kafka Cluster** - Deploys and manages
          all of the components of this complex application, including dependencies
          like Apache ZooKeeper® that are traditionally hard to administer.\n* **Includes
          Kafka Connect** - Allows for configuration of common data sources and sinks
          to move data into and out of the Kafka cluster.\n* **Topic Management**
          - Creates and manages Kafka Topics within the cluster.\n* **User Management**
          - Creates and manages Kafka Users within the cluster.\n* **Connector Management**
          - Creates and manages Kafka Connect connectors.\n* **Includes Kafka Mirror
          Maker 1 and 2** - Allows for mirroring data between different Apache Kafka®
          clusters.\n* **Includes HTTP Kafka Bridge** - Allows clients to send and
          receive messages through an Apache Kafka® cluster via HTTP protocol.\n*
          **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing
          partition replicas according to specified goals in order to achieve the
          best cluster performance.\n* **Monitoring** - Built-in support for monitoring
          using Prometheus and provided Grafana dashboards\n### Upgrading your Clusters\nThe
          AMQ Streams Operator understands how to run and upgrade between a set of
          Kafka versions. When specifying a new version in your config, check to make
          sure you aren't using any features that may have been removed. For more
          information on upgrading, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).\n###
          Storage\nAn efficient data storage infrastructure is essential to the optimal
          performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires
          block storage. The use of file storage (for example, NFS) is not recommended.\nThe
          AMQ Streams Operator supports three types of data storage:\n* Ephemeral
          (Recommended for development only!)\n* Persistent\n* JBOD (Just a Bunch
          of Disks, suitable for Kafka only. Not supported in Zookeeper.)\nAMQ Streams
          also supports advanced operations such as adding or removing disks in Apache
          Kafka® brokers or resizing the persistent volumes (where supported by the
          infrastructure).\n### Documentation\nDocumentation for the current release
          can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).\n"
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:dacf7ddffe7cbe2dc35e7d3290637b3334117e09dde986e6eaeaceded7069fbf
        - registry.redhat.io/ubi8/openjdk-17@sha256:8796da64c626c5f63f31a4e3ac0ac3b179333a7c6d5472a195b9b3f61ccd1099
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:be7466ffd7f624f769eedca2e4106c597d2bf1d95cc9679f235e6dcdec66cfa9
        - registry.redhat.io/amq-streams/kafka-35-rhel8@sha256:fa8361e5089ab4449261f5a0ad57bd0bd059dc254b94bd9ab68340faae386947
        - registry.redhat.io/amq-streams/kafka-36-rhel8@sha256:8b10bfb697b48ba3ed246fb846384f4cc67f05f670e9521edf0f47f829869404
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:44a5c4cc3086e4eac42dc78a72b7492d13df0098017288278d9006e767a480a1
        version: 2.6.0-2
      entries:
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.6.x
    - currentCSV: amqstreams.v2.7.0-7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:671c1a2fcb0856cb208c0ead539fff9571fa2281a1e3d45b3df9ebd3df8c787e
          createdAt: "2024-03-09 21:27:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.6.0-0 <2.7.0-7'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.6.0 release, Streams supports only OCP 4.12 to 4.14!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:be9b82af13cbc120bb415abf4fcc97420e543172d6450b836c47344e4dcacd00
        - registry.redhat.io/amq-streams/kafka-36-rhel9@sha256:8890c3217343d9aa3dd2ab9c7fa1742f960b5a26e09906581ce6075e61dc2888
        - registry.redhat.io/amq-streams/kafka-37-rhel9@sha256:66362c800b78003d26df9471b7f21f5c9ad7fca8e8fd2511428dfc549cdf46c2
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:a7620559f3e5a0a4d5ecee44538619f698158847d9d0a06c7168404ed6f7cd36
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:b9dbbce235b7a4f45f42184cf0b908e91e17094e971bc29a8710f35127a6b06f
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:671c1a2fcb0856cb208c0ead539fff9571fa2281a1e3d45b3df9ebd3df8c787e
        version: 2.7.0-7
      entries:
      - name: amqstreams.v2.7.0-7
        version: 2.7.0-7
      - name: amqstreams.v2.7.0-6
        version: 2.7.0-6
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.7.x
    - currentCSV: amqstreams.v2.8.0-0-0.1738265624.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.8.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:675d4acc375fb20e1a3fd5755184a318341c15f9337a11ea41e902fcda6d0bec
          createdAt: "2024-08-22 15:19:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.7.0-0 <2.8.0-0'
          olm.substitutesFor: amqstreams.v2.8.0-0
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.8.0 release, Streams supports only OCP 4.12 to 4.14!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:b46457a0a7f63518bc12b2789f75afb0e44496e62de918b9b584129c7078de86
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:026418bae8b2d425d45b2b3481f65c241d89e25f455e3fbfcf2f79536d978bca
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:675d4acc375fb20e1a3fd5755184a318341c15f9337a11ea41e902fcda6d0bec
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:4df906cf1490922a4587d96250f3be6ff605fe2caf87dfba7b812c144c5c5774
        - registry.redhat.io/amq-streams/kafka-37-rhel9@sha256:17b2d255439f38c6ef54c0a56929ae636743b12c688d42223ac3fb58729e51ad
        - registry.redhat.io/amq-streams/kafka-38-rhel9@sha256:e771a84a458388c07ecf970ec625e4203c18e5d2bd91e7571d9c44ebb09313de
        version: 2.8.0-0+0.1738265624.p
      entries:
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.8.x
    - currentCSV: amqstreams.v2.9.3-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.9.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.9"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.9.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
          createdAt: "2024-08-22 15:19:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.5.0-0 <2.9.3-2'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.9.0 release, Streams supports only OCP 4.14 to 4.18!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:14a9fcbf0d8590e6182407c534cc207d76ffdaf6571bd6e066a8b5d2cfbe0833
        - registry.redhat.io/amq-streams/kafka-38-rhel9@sha256:f9fa8ced8078e1278e7744227979633bbe085446ce581414b3d6d49b87cb330a
        - registry.redhat.io/amq-streams/kafka-39-rhel9@sha256:f710c3db4fb289e255ebd4d8bfb2eac7a757c94a34e06fb1daecd0285d0938bc
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:f912d1c8ab83b26999b021f7c967649453b4f39928f63905adf6f827495905d0
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:813f793850f89fe48e2e627db980baddb099e7fb285fc3ebd75d73ff5ed0c0b9
        version: 2.9.3-2
      entries:
      - name: amqstreams.v2.9.3-2
        version: 2.9.3-2
      - name: amqstreams.v2.9.3-1
        version: 2.9.3-1
      - name: amqstreams.v2.9.3-0
        version: 2.9.3-0
      - name: amqstreams.v2.9.2-1
        version: 2.9.2-1
      - name: amqstreams.v2.9.2-0
        version: 2.9.2-0
      - name: amqstreams.v2.9.1-2
        version: 2.9.1-2
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.9.x
    - currentCSV: amqstreams.v2.9.3-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.9.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.9"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.9.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
          createdAt: "2024-08-22 15:19:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.5.0-0 <2.9.3-2'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.9.0 release, Streams supports only OCP 4.14 to 4.18!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:14a9fcbf0d8590e6182407c534cc207d76ffdaf6571bd6e066a8b5d2cfbe0833
        - registry.redhat.io/amq-streams/kafka-38-rhel9@sha256:f9fa8ced8078e1278e7744227979633bbe085446ce581414b3d6d49b87cb330a
        - registry.redhat.io/amq-streams/kafka-39-rhel9@sha256:f710c3db4fb289e255ebd4d8bfb2eac7a757c94a34e06fb1daecd0285d0938bc
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:f912d1c8ab83b26999b021f7c967649453b4f39928f63905adf6f827495905d0
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:813f793850f89fe48e2e627db980baddb099e7fb285fc3ebd75d73ff5ed0c0b9
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
        version: 2.9.3-2
      entries:
      - name: amqstreams.v2.9.3-2
        version: 2.9.3-2
      - name: amqstreams.v2.9.3-1
        version: 2.9.3-1
      - name: amqstreams.v2.9.3-0
        version: 2.9.3-0
      - name: amqstreams.v2.9.2-1
        version: 2.9.2-1
      - name: amqstreams.v2.9.2-0
        version: 2.9.2-0
      - name: amqstreams.v2.9.1-2
        version: 2.9.1-2
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.x
    - currentCSV: amqstreams.v3.0.1-7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.0.0",
                    "metadataVersion": "4.0-IV3",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.0.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.0.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:231861dd89a01b949e9713dc2b0049530643059b44ad711e3ba17509ab21564b
          createdAt: "2025-11-14T17:16:59Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.9.0-0 <3.0.1-7'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/kafka-39-rhel9@sha256:9ed77907cbed09eb66172b0d18855d723add80b18a82fcee424148bef81e1886
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:352ab87382fc1d1d3b68833a16770c75e081a0dd07788a8ba0ab9792837c628e
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:99e4a789597e567eea920004364a20c71580a2ca58fc68ffa5ec797160d174bf
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:dd27c81c5a13a01acf5c50a802ce94d737e9280cf4053a1f3739ff4c3c6ba053
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:231861dd89a01b949e9713dc2b0049530643059b44ad711e3ba17509ab21564b
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:5d1e188d3e7b12fbb1b94ed1ac58ea059609a53243ded1bee6d1f179c2b48b4a
        version: 3.0.1-7
      entries:
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-3.0.x
    - currentCSV: amqstreams.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.1.0",
                    "metadataVersion": "4.1-IV1",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
          createdAt: "2025-12-04T17:25:00Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/kafka-41-rhel9@sha256:e2a2d7a93678a4de948fc6bde45e2b251aa129a691f555c93003fef50cac1027
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:1be01356959972d6d8b4683d6449679c8705c08c13dcb0da02f96601ad6ef424
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:03051a89cc209fa54b9cf6c6119167959dcaf38761f50c8450ae3f694ccbd2d7
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:97320d4348dc793278b28345a7bb2c255bff0f1ec12a728b88789fe4b9c07f91
        version: 3.1.0-6
      entries:
      - name: amqstreams.v3.1.0-6
        version: 3.1.0-6
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-3.1.x
    - currentCSV: amqstreams.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.1.0",
                    "metadataVersion": "4.1-IV1",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
          createdAt: "2025-12-04T17:25:00Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:03051a89cc209fa54b9cf6c6119167959dcaf38761f50c8450ae3f694ccbd2d7
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:97320d4348dc793278b28345a7bb2c255bff0f1ec12a728b88789fe4b9c07f91
        - registry.redhat.io/amq-streams/kafka-41-rhel9@sha256:e2a2d7a93678a4de948fc6bde45e2b251aa129a691f555c93003fef50cac1027
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:1be01356959972d6d8b4683d6449679c8705c08c13dcb0da02f96601ad6ef424
        version: 3.1.0-6
      entries:
      - name: amqstreams.v3.1.0-6
        version: 3.1.0-6
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-3.x
    - currentCSV: amqstreams.v2.5.2-8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
          createdAt: "2023-07-10 21:47:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.2.0-0 <2.5.2-8'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.5.2 release, AMQ Streams supports only OCP 4.12 to 4.16!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more information, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/ubi8/openjdk-17@sha256:8796da64c626c5f63f31a4e3ac0ac3b179333a7c6d5472a195b9b3f61ccd1099
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:4ede5eeed159bddacfe830a768bab4996003d4c57a496fc8ec9b41df916d4acc
        - registry.redhat.io/amq-streams/kafka-34-rhel8@sha256:95bc35951eb545b918114af1e92a7139e2e3323b7d054dcb2a060843c7326d28
        - registry.redhat.io/amq-streams/kafka-35-rhel8@sha256:8c7e8ccb6c2d5da32b70d9d0c3919c303ad73a25447f6993d964f7b19cca1072
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:3d5bcf889f3d534402a8bbfa51fc4a9499b7d6dfaac0d7b11e91363b379be192
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        version: 2.5.2-8
      entries:
      - name: amqstreams.v2.5.2-8
        version: 2.5.2-8
      - name: amqstreams.v2.5.2-7
        version: 2.5.2-7
      - name: amqstreams.v2.5.2-6
        version: 2.5.2-6
      - name: amqstreams.v2.5.2-5
        version: 2.5.2-5
      - name: amqstreams.v2.5.2-4
        version: 2.5.2-4
      - name: amqstreams.v2.5.2-3
        version: 2.5.2-3
      - name: amqstreams.v2.5.2-2
        version: 2.5.2-2
      - name: amqstreams.v2.5.2-1
        version: 2.5.2-1
      - name: amqstreams.v2.5.2-0
        version: 2.5.2-0
      - name: amqstreams.v2.5.1-5
        version: 2.5.1-5
      - name: amqstreams.v2.5.1-4
        version: 2.5.1-4
      - name: amqstreams.v2.5.1-3
        version: 2.5.1-3
      - name: amqstreams.v2.5.1-2
        version: 2.5.1-2
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-lts
    - currentCSV: amqstreams.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.1.0",
                    "metadataVersion": "4.1-IV1",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
          createdAt: "2025-12-04T17:25:00Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:03051a89cc209fa54b9cf6c6119167959dcaf38761f50c8450ae3f694ccbd2d7
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:97320d4348dc793278b28345a7bb2c255bff0f1ec12a728b88789fe4b9c07f91
        - registry.redhat.io/amq-streams/kafka-41-rhel9@sha256:e2a2d7a93678a4de948fc6bde45e2b251aa129a691f555c93003fef50cac1027
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:1be01356959972d6d8b4683d6449679c8705c08c13dcb0da02f96601ad6ef424
        version: 3.1.0-6
      entries:
      - name: amqstreams.v3.1.0-6
        version: 3.1.0-6
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: stable
    defaultChannel: stable
    packageName: amq-streams
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Automotive SIG CentOS
      provider-url: ""
    name: automotive-infra
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: automotive-infra.v0.0.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "automotive.sig.centos.org/v1",
                "kind": "ContainerBuild",
                "metadata": {
                  "name": "cb-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "automotive.sig.centos.org/v1",
                "kind": "ImageBuild",
                "metadata": {
                  "name": "imagebuild-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "automotive.sig.centos.org/v1",
                "kind": "OperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "automotive-infra"
                  },
                  "name": "operatorconfig-sample",
                  "namespace": "automotive-infra-operator"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/fedora-sig-robotics/infra-ci-operator:v0.0.10
          createdAt: "2025-03-31T14:06:33Z"
          description: Streamline CI/CD for RHIVOS and its ecosystem using OpenShift
            Pipelines
          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: "true"
          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"
          operatorframework.io/suggested-namespace: automotive-infra-operator
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://gitlab.com/fedora/sigs/robotics/infra/infra-ci-operator
          support: https://gitlab.com/fedora/sigs/robotics/infra/infra-ci-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Client
            name: clients.jumpstarter.dev
            version: v1alpha1
          - kind: ContainerBuild
            name: containerbuilds.automotive.sig.centos.org
            version: v1
          - kind: ExporterAccessPolicy
            name: exporteraccesspolicies.jumpstarter.dev
            version: v1alpha1
          - kind: Exporter
            name: exporters.jumpstarter.dev
            version: v1alpha1
          - kind: ImageBuild
            name: imagebuilds.automotive.sig.centos.org
            version: v1
          - kind: Lease
            name: leases.jumpstarter.dev
            version: v1alpha1
          - kind: OperatorConfig
            name: operatorconfigs.automotive.sig.centos.org
            version: v1
        description: This operator is designed to streamline CI/CD for RHIVOS and
          its ecosystem using OpenShift Pipelines
        displayName: Automotive-CI
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Automotive
        - RHIVOS
        - Pipelines
        - CI
        links:
        - name: Automotive infra Operator
          url: https://gitlab.com/fedora/sigs/robotics/infra/infra-ci-operator
        maintainers:
        - email: automotive-sig@lists.centos.org
          name: Automotive SIG CentOS Community
        maturity: alpha
        provider:
          name: Automotive SIG CentOS
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/community-operator-pipeline-prod/automotive-infra@sha256:6d4180ff6899d4de8ba2cd4a06ece234bbd8f0ec1bd0b4b0ae4b7a0c047121da
        - quay.io/fedora-sig-robotics/infra-ci-operator:v0.0.10
        version: 0.0.10
      entries:
      - name: automotive-infra.v0.0.10
        version: 0.0.10
      - name: automotive-infra.v0.0.9
        version: 0.0.9
      - name: automotive-infra.v0.0.8
        version: 0.0.8
      - name: automotive-infra.v0.0.7
        version: 0.0.7
      - name: automotive-infra.v0.0.6
        version: 0.0.6
      - name: automotive-infra.v0.0.5
        version: 0.0.5
      - name: automotive-infra.v0.0.4
        version: 0.0.4
      - name: automotive-infra.v0.0.3
        version: 0.0.3
      - name: automotive-infra.v0.0.2
        version: 0.0.2
      - name: automotive-infra.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: automotive-infra
    provider:
      name: Automotive SIG CentOS
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-documentdb-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-documentdb-controller.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "documentdb.services.k8s.aws/v1alpha1",
                "kind": "DBCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "documentdb.services.k8s.aws/v1alpha1",
                "kind": "DBInstance",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "documentdb.services.k8s.aws/v1alpha1",
                "kind": "DBSubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/documentdb-controller:1.2.1
          createdAt: "2025-12-18T20:33:13Z"
          description: AWS DocumentDB controller is a service controller for managing
            DocumentDB resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DBCluster represents the state of an AWS documentdb DBCluster
              resource.
            displayName: DBCluster
            kind: DBCluster
            name: dbclusters.documentdb.services.k8s.aws
            version: v1alpha1
          - description: DBInstance represents the state of an AWS documentdb DBInstance
              resource.
            displayName: DBInstance
            kind: DBInstance
            name: dbinstances.documentdb.services.k8s.aws
            version: v1alpha1
          - description: DBSubnetGroup represents the state of an AWS documentdb DBSubnetGroup
              resource.
            displayName: DBSubnetGroup
            kind: DBSubnetGroup
            name: dbsubnetgroups.documentdb.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon DocumentDB resources in AWS from within your Kubernetes cluster.

          **About Amazon DocumentDB**

          Amazon DocumentDB (with MongoDB compatibility) is a fast, reliable, and fully managed database service. Amazon DocumentDB makes it easy to set up, operate, and scale MongoDB-compatible databases in the cloud. With Amazon DocumentDB, you can run the same application code and use the same drivers and tools that you use with MongoDB.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon DocumentDB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - documentdb
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon DocumentDB Developer Resources
          url: https://aws.amazon.com/documentdb/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: documentdb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-documentdb-controller@sha256:07abf00bafb1d030c19d608f4ebb30d0cb9e72ab639a241034ceceefe4599715
        - public.ecr.aws/aws-controllers-k8s/documentdb-controller:1.2.1
        version: 1.2.1
      entries:
      - name: ack-documentdb-controller.v1.2.1
        version: 1.2.1
      - name: ack-documentdb-controller.v1.2.0
        version: 1.2.0
      - name: ack-documentdb-controller.v1.1.2
        version: 1.1.2
      - name: ack-documentdb-controller.v1.1.1
        version: 1.1.1
      - name: ack-documentdb-controller.v1.1.0
        version: 1.1.0
      - name: ack-documentdb-controller.v1.0.14
        version: 1.0.14
      - name: ack-documentdb-controller.v1.0.13
        version: 1.0.13
      - name: ack-documentdb-controller.v1.0.12
        version: 1.0.12
      - name: ack-documentdb-controller.v1.0.11
        version: 1.0.11
      - name: ack-documentdb-controller.v1.0.10
        version: 1.0.10
      - name: ack-documentdb-controller.v1.0.9
        version: 1.0.9
      - name: ack-documentdb-controller.v1.0.7
        version: 1.0.7
      - name: ack-documentdb-controller.v1.0.6
        version: 1.0.6
      - name: ack-documentdb-controller.v1.0.5
        version: 1.0.5
      - name: ack-documentdb-controller.v1.0.2
        version: 1.0.2
      - name: ack-documentdb-controller.v1.0.1
        version: 1.0.1
      - name: ack-documentdb-controller.v1.0.0
        version: 1.0.0
      - name: ack-documentdb-controller.v0.0.9
        version: 0.0.9
      - name: ack-documentdb-controller.v0.0.8
        version: 0.0.8
      - name: ack-documentdb-controller.v0.0.6
        version: 0.0.6
      name: alpha
    defaultChannel: alpha
    packageName: ack-documentdb-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat HPC Community
      provider-url: ""
    name: slurm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: slurm-operator.v0.4.1-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "Accounting",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1"
                  },
                  "name": "slurm",
                  "namespace": "slurm"
                },
                "spec": {
                  "initconf": {
                    "image": "ghcr.io/slinkyproject/sackd:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "jwtHs256KeyRef": {
                    "key": "jwt_hs256.key",
                    "name": "slurm-auth-jwths256"
                  },
                  "slurmKeyRef": {
                    "key": "slurm.key",
                    "name": "slurm-auth-slurm"
                  },
                  "slurmdbd": {
                    "args": [],
                    "image": "ghcr.io/slinkyproject/slurmdbd:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "storageConfig": {
                    "database": "slurm_acct_db",
                    "host": "mariadb",
                    "passwordKeyRef": {
                      "key": "password",
                      "name": "mariadb-password"
                    },
                    "port": 3306,
                    "username": "slurm"
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": []
                    }
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "Controller",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1"
                  },
                  "name": "slurm",
                  "namespace": "slurm"
                },
                "spec": {
                  "accountingRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "epilogScriptRefs": null,
                  "extraConf": "PartitionName=all Nodes=ALL Default=YES MaxTime=UNLIMITED State=UP\n",
                  "jwtHs256KeyRef": {
                    "key": "jwt_hs256.key",
                    "name": "slurm-auth-jwths256"
                  },
                  "logfile": {
                    "image": "docker.io/library/alpine:latest",
                    "resources": {}
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "enabled": true,
                    "resources": {
                      "requests": {
                        "storage": "4Gi"
                      }
                    }
                  },
                  "prologScriptRefs": null,
                  "reconfigure": {
                    "image": "ghcr.io/slinkyproject/slurmctld:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "slurmKeyRef": {
                    "key": "slurm.key",
                    "name": "slurm-auth-slurm"
                  },
                  "slurmctld": {
                    "args": [],
                    "image": "ghcr.io/slinkyproject/slurmctld:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": []
                    }
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "LoginSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1",
                    "loginset.slinky.slurm.net/name": "slurm-login-slinky"
                  },
                  "name": "slurm-login-slinky",
                  "namespace": "slurm"
                },
                "spec": {
                  "controllerRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "login": {
                    "env": [],
                    "image": "ghcr.io/slinkyproject/login:25.05-ubuntu24.04",
                    "resources": {},
                    "securityContext": {
                      "privileged": true
                    },
                    "volumeMounts": []
                  },
                  "replicas": 1,
                  "service": {
                    "spec": {
                      "type": "LoadBalancer"
                    }
                  },
                  "sssdConfRef": {
                    "key": "sssd.conf",
                    "name": "slurm-login-slinky-sssd-conf"
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1",
                        "loginset.slinky.slurm.net/name": "slurm-login-slinky"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": [],
                      "volumes": []
                    }
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "NodeSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1",
                    "nodeset.slinky.slurm.net/name": "slurm-worker-slinky"
                  },
                  "name": "slurm-worker-slinky",
                  "namespace": "slurm"
                },
                "spec": {
                  "controllerRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "logfile": {
                    "image": "docker.io/library/alpine:latest",
                    "resources": {}
                  },
                  "partition": {
                    "enabled": true
                  },
                  "replicas": 1,
                  "slurmd": {
                    "args": [],
                    "env": [
                      {
                        "name": "POD_CPUS",
                        "value": "0"
                      },
                      {
                        "name": "POD_MEMORY",
                        "value": "0"
                      }
                    ],
                    "image": "ghcr.io/slinkyproject/slurmd:25.05-ubuntu24.04",
                    "resources": {},
                    "volumeMounts": []
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1",
                        "nodeset.slinky.slurm.net/name": "slurm-worker-slinky"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "hostname": "slinky-",
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": [],
                      "volumes": []
                    }
                  },
                  "updateStrategy": {
                    "rollingUpdate": {
                      "maxUnavailable": "100%"
                    },
                    "type": "RollingUpdate"
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "RestApi",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1"
                  },
                  "name": "slurm",
                  "namespace": "slurm"
                },
                "spec": {
                  "controllerRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "replicas": 1,
                  "slurmrestd": {
                    "args": [],
                    "env": [],
                    "image": "ghcr.io/slinkyproject/slurmrestd:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": []
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, Big Data
          certified: "false"
          containerImage: ghcr.io/slinkyproject/slurm-operator:0.4.0
          createdAt: "2025-10-29T12:41:12Z"
          description: Run Slurm on Kubernetes, by SchedMD. A Slinky project.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "slinky",
                "labels": {
                  "pod-security.kubernetes.io/enforce": "privileged",
                  "pod-security.kubernetes.io/audit": "privileged",
                  "pod-security.kubernetes.io/warn": "privileged",
                },
                "annotations": {
                  "openshift.io/node-selector": ""
                },
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/redhat-hpc/slinky-on-openshift
          support: SchedMD
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Accounting is the Schema for the accountings API
            displayName: Accounting
            kind: Accounting
            name: accountings.slinky.slurm.net
            version: v1alpha1
          - description: Controller is the Schema for the controllers API
            displayName: Controller
            kind: Controller
            name: controllers.slinky.slurm.net
            version: v1alpha1
          - description: A set of homogeneous login nodes (submit node, jump host)
              for Slurm, which manage user identity via SSSD.
            displayName: LoginSet
            kind: LoginSet
            name: loginsets.slinky.slurm.net
            version: v1alpha1
          - description: A set of homogeneous Slurm workers (compute nodes), which
              are delegated to execute the Slurm workload.
            displayName: NodeSet
            kind: NodeSet
            name: nodesets.slinky.slurm.net
            version: v1alpha1
          - description: Restapi is the Schema for the restapis API
            displayName: RestAPI
            kind: RestApi
            name: restapis.slinky.slurm.net
            version: v1alpha1
          - description: Token CRD to define a secret containing a JWT, generated
              from an HS256 Key
            displayName: Token
            kind: Token
            name: tokens.slinky.slurm.net
            version: v1alpha1
        description: |
          # Kubernetes Operator for Slurm Clusters

          Run [Slurm] on [Kubernetes], by [SchedMD]. A [Slinky] project.

          ## Overview

          [Slurm] and [Kubernetes] are workload managers originally designed for different
          kinds of workloads. In broad strokes: Kubernetes excels at scheduling workloads
          that typically run for an indefinite amount of time, with potentially vague
          resource requirements, on a single node, with loose policy, but can scale its
          resource pool infinitely to meet demand; Slurm excels at quickly scheduling
          workloads that run for a finite amount of time, with well defined resource
          requirements and topology, on multiple nodes, with strict policy, but its
          resource pool is known.

          This project enables the best of both workload managers, unified on Kubernetes.
          It contains a [Kubernetes] operator to deploy and manage certain components of
          [Slurm] clusters. This repository implements [custom-controllers] and
          [custom resource definitions (CRDs)][crds] designed for the lifecycle (creation,
          upgrade, graceful shutdown) of Slurm clusters.

          ### Slurm Cluster

          Slurm clusters are very flexible and can be configured in various ways. Our
          Slurm helm chart provides a reference implementation that is highly customizable
          and tries to expose everything Slurm has to offer.

          ## Features

          ### NodeSets

          A set of homogeneous Slurm workers (compute nodes), which are delegated to
          execute the Slurm workload.

          The operator will take into consideration the running workload among Slurm nodes
          as it needs to scale-in, upgrade, or otherwise handle node failures. Slurm nodes
          will be marked as [drain][slurm-drain] before their eventual termination pending
          scale-in or upgrade.

          Slurm node states (e.g. Idle, Allocated, Mixed, Down, Drain, Not Responding,
          etc...) are applied to each NodeSet pod via their pod conditions; each NodeSet
          pod contains a pod status that reflects their own Slurm node state.

          The operator supports NodeSet scale to zero, scaling the resource down to zero
          replicas. Hence, any Horizontal Pod Autoscaler (HPA) that also support scale to
          zero can be best paired with NodeSets.

          ### LoginSets

          A set of homogeneous login nodes (submit node, jump host) for Slurm, which
          manage user identity via SSSD.

          The operator supports LoginSet scale to zero, scaling the resource down to zero
          replicas. Hence, any Horizontal Pod Autoscaler (HPA) that also support scale to
          zero can be best paired with LoginSets.

          ### Hybrid Support

          Sometimes a Slurm cluster has some, but not all, of its components in
          Kubernetes. The operator and its CRD are designed support these use cases.

          ### Slurm

          Slurm is a full featured HPC workload manager. To highlight a few features:

          - [**Accounting**][slurm-accounting]: collect accounting information for every
            job and job step executed.
          - [**Partitions**][slurm-arch]: job queues with sets of resources and
            constraints (e.g. job size limit, job time limit, users permitted).
          - [**Reservations**][slurm-reservations]: reserve resources for jobs being
            executed by select users and/or select accounts.
          - [**Job Dependencies**][slurm-dependency]: defer the start of jobs until the
            specified dependencies have been satisfied.
          - [**Job Containers**][slurm-containers]: jobs which run an unprivileged OCI
            container bundle.
          - [**MPI**][slurm-mpi]: launch parallel MPI jobs, supports various MPI
            implementations.
          - [**Priority**][slurm-priority]: assigns priorities to jobs upon submission and
            on an ongoing basis (e.g. as they age).
          - [**Preemption**][slurm-preempt]: stop one or more low-priority jobs to let a
            high-priority job run.
          - [**QoS**][slurm-qos]: sets of policies affecting scheduling priority,
            preemption, and resource limits.
          - [**Fairshare**][slurm-fairshare]: distribute resources equitably among users
            and accounts based on historical usage.
          - [**Node Health Check**][slurm-healthcheck]: periodically check node health via
            script.

          ## Compatibility

          | Software   |                             Minimum Version                              |
          | :--------- | :----------------------------------------------------------------------: |
          | Kubernetes | [v1.29](https://kubernetes.io/blog/2023/12/13/kubernetes-v1-29-release/) |
          | Slurm      | [25.05](https://www.schedmd.com/slurm-version-25-05-0-is-now-available/) |

          ## Documentation

          Project documentation is located in the docs directory of [this repository](https://github.com/SlinkyProject/slurm-operator)

          There is also supplemental work in the community for enabling [Slinky On OpenShift](https://github.com/redhat-hpc/slinky-on-openshift)

          ## Support and Development

          Feature requests, code contributions, and bug reports are welcome!

          Github/Gitlab submitted issues and PRs/MRs are handled on a best effort basis.

          The SchedMD official issue tracker is at <https://support.schedmd.com/>.

          To schedule a demo or simply to reach out, please
          [contact SchedMD][contact-schedmd].

          ## License

          Copyright (C) SchedMD LLC.

          Licensed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0) you
          may not use project except in compliance with the license.

          Unless required by applicable law or agreed to in writing, software distributed
          under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
          CONDITIONS OF ANY KIND, either express or implied. See the License for the
          specific language governing permissions and limitations under the License.

          <!-- links -->


          [cert-manager]: https://cert-manager.io/docs/installation/helm/
          [contact-schedmd]: https://www.schedmd.com/slurm-resources/contact-schedmd/
          [crds]: https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#customresourcedefinitions
          [custom-controllers]: https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#custom-controllers

          [kubernetes]: https://kubernetes.io/
          [schedmd]: https://schedmd.com/
          [slinky]: https://slinky.ai/
          [slinky-docs]: https://slinky.schedmd.com/
          [slurm]: https://slurm.schedmd.com/overview.html
          [slurm-accounting]: https://slurm.schedmd.com/accounting.html
          [slurm-arch]: https://slurm.schedmd.com/quickstart.html#arch
          [slurm-containers]: https://slurm.schedmd.com/containers.html
          [slurm-dependency]: https://slurm.schedmd.com/sbatch.html#OPT_dependency

          [slurm-drain]: https://slurm.schedmd.com/scontrol.html#OPT_DRAIN
          [slurm-fairshare]: https://slurm.schedmd.com/fair_tree.html
          [slurm-healthcheck]: https://slurm.schedmd.com/slurm.conf.html#OPT_HealthCheckProgram
          [slurm-mpi]: https://slurm.schedmd.com/mpi_guide.html
          [slurm-preempt]: https://slurm.schedmd.com/preempt.html
          [slurm-priority]: https://slurm.schedmd.com/priority_multifactor.html
          [slurm-qos]: https://slurm.schedmd.com/qos.html
          [slurm-reservations]: https://slurm.schedmd.com/reservations.html
        displayName: Slurm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - slurm-operator
        - slurm
        - slinky
        links:
        - name: Slinky on OpenShift
          url: https://github.com/redhat-hpc/slinky-on-openshift
        - name: Slurm Operator
          url: https://github.com/SlinkyProject/slurm-operator
        maintainers:
        - email: jkincl@redhat.com
          name: Jason Kincl
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: Red Hat HPC Community
        relatedImages:
        - quay.io/community-operator-pipeline-prod/slurm-operator:0.4.1-1
        - ghcr.io/slinkyproject/slurm-operator-webhook:0.4.1
        - ghcr.io/slinkyproject/slurm-operator:0.4.1
        version: 0.4.1-1
      entries:
      - name: slurm-operator.v0.4.1-1
        version: 0.4.1-1
      - name: slurm-operator.v0.4.0
        version: 0.4.0
      name: alpha
    defaultChannel: alpha
    packageName: slurm-operator
    provider:
      name: Red Hat HPC Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: gcp-filestore-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gcp-filestore-csi-driver-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9-operator@sha256:8ddda9375e180daf57f1e526bdddf91b05e736afdab4b7a29add258786cf98be
          createdAt: "2021-07-14T00:00:00Z"
          description: Install and configure GCP Filestore CSI driver.
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=4.11.0-0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/gcp-filestore-csi-driver-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Operator that installs and configures the CSI driver for GCP Filestore.
        displayName: GCP Filestore CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - filestore
        links:
        - name: Documentation
          url: https://github.com/openshift/gcp-filestore-csi-driver-operator
        - name: Source Repository
          url: https://github.com/openshift/gcp-filestore-csi-driver-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9-operator@sha256:8ddda9375e180daf57f1e526bdddf91b05e736afdab4b7a29add258786cf98be
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9@sha256:2e146263311f096251110baa0a88bc49b73d76effe5d1bcc4f2b8d1230206090
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-operator-bundle@sha256:a7ddfc685797cc2f2d26366b6573fb46285097adaf0727198cf19e91c8dc5531
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        version: 4.20.0-202512081147
      entries:
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: gcp-filestore-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-multicluster-orchestrator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-multicluster-orchestrator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multicluster.odf.openshift.io/v1alpha1",
                "kind": "MirrorPeer",
                "metadata": {
                  "name": "mirrorpeer-sample"
                },
                "spec": {
                  "items": [
                    {
                      "clusterName": "local-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    },
                    {
                      "clusterName": "spoke-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    }
                  ],
                  "manageS3": false,
                  "schedulingIntervals": [
                    "5m"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          console.openshift.io/plugins: '["odf-multicluster-console"]'
          createdAt: "2025-12-18T07:59:46Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MirrorPeer is the Schema for the mirrorpeers API
            displayName: Mirror Peer
            kind: MirrorPeer
            name: mirrorpeers.multicluster.odf.openshift.io
            version: v1alpha1
        description: |
          Orchestrator for OpenShift Data Foundation clusters running across multiple OpenShift clusters.
          It uses Red Hat Advanced Cluster Management for Kubernetes as the multicluster control plane.
        displayName: ODF Multicluster Orchestrator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odf
        - multicluster
        - orchestrator
        - storage
        - acm
        links:
        - name: ODF Multicluster Orchestrator
          url: https://github.com/red-hat-storage/odf-multicluster-orchestrator
        maintainers:
        - email: uchapaga@redhat.com
          name: Umanga Chapagain
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-multicluster-operator-bundle@sha256:2041de7d28a07fbc593ef975b59fb9470b5a13070d4eff9ae225c6180b3f9417
        - registry.redhat.io/odf4/odf-multicluster-console-rhel9@sha256:0d937371ad5b44f668e96d35b2fbfe189b72f5ec89ab55faea9359c92d1026ab
        - registry.redhat.io/odf4/odf-multicluster-rhel9-operator@sha256:635869f91d1c5be205545396abf0d6d8c6b2a4efedfb2a3d10f97a9f13b936d2
        version: 4.19.9-rhodf
      entries:
      - name: odf-multicluster-orchestrator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-multicluster-orchestrator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-multicluster-orchestrator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-multicluster-orchestrator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-multicluster-orchestrator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-multicluster-orchestrator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-multicluster-orchestrator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-multicluster-orchestrator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-multicluster-orchestrator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-multicluster-orchestrator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-multicluster-orchestrator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multicluster.odf.openshift.io/v1alpha1",
                "kind": "MirrorPeer",
                "metadata": {
                  "name": "mirrorpeer-sample"
                },
                "spec": {
                  "items": [
                    {
                      "clusterName": "local-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    },
                    {
                      "clusterName": "spoke-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    }
                  ],
                  "manageS3": false,
                  "schedulingIntervals": [
                    "5m"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          console.openshift.io/plugins: '["odf-multicluster-console"]'
          createdAt: "2025-12-18T07:47:53Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MirrorPeer is the Schema for the mirrorpeers API
            displayName: Mirror Peer
            kind: MirrorPeer
            name: mirrorpeers.multicluster.odf.openshift.io
            version: v1alpha1
        description: |
          Orchestrator for OpenShift Data Foundation clusters running across multiple OpenShift clusters.
          It uses Red Hat Advanced Cluster Management for Kubernetes as the multicluster control plane.
        displayName: ODF Multicluster Orchestrator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odf
        - multicluster
        - orchestrator
        - storage
        - acm
        links:
        - name: ODF Multicluster Orchestrator
          url: https://github.com/red-hat-storage/odf-multicluster-orchestrator
        maintainers:
        - email: uchapaga@redhat.com
          name: Umanga Chapagain
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-multicluster-operator-bundle@sha256:fad8bd45737ac4588b79f02c519e153949cbdb2ff4de8b5aff315283004b15a9
        - registry.redhat.io/odf4/odf-multicluster-console-rhel9@sha256:34470d03b82ccd51a32c24697583b485aa2971e83b30f185e35f57468e99c9fb
        - registry.redhat.io/odf4/odf-multicluster-rhel9-operator@sha256:ccb80153311fb5e13ba15eaff3eca09d157bca6aebbf055783418843858e16eb
        version: 4.20.4-rhodf
      entries:
      - name: odf-multicluster-orchestrator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-multicluster-orchestrator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-multicluster-orchestrator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-multicluster-orchestrator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-multicluster-orchestrator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-multicluster-orchestrator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Perficient Inc
      provider-url: http://www.perficient.com
    name: devopsinabox
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: devopsinabox.v0.0.45
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apimc.com.perficient/v1alpha1",
                "kind": "DevSecOpsManager",
                "metadata": {
                  "name": "devsecopsmanager-sample"
                },
                "spec": {
                  "config": {
                    "repoPath": "",
                    "repoUrl": ""
                  },
                  "forwarding": {
                    "fluentd": {
                      "affinity": {},
                      "caFile": "files/default-openshift-logging-fluentd.crt",
                      "image": "registry.redhat.io/openshift4/ose-logging-fluentd:v4.4",
                      "keyFile": "files/default-openshift-logging-fluentd.key",
                      "loglevel": "warn",
                      "nodeSelector": {},
                      "passphrase": "",
                      "persistence": {
                        "accessMode": "ReadWriteOnce",
                        "enabled": false,
                        "size": "10Gi",
                        "storageClass": ""
                      },
                      "port": 24224,
                      "replicas": 2,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "1024Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "512Mi"
                        }
                      },
                      "sharedkey": "splunkforwarding",
                      "ssl": true,
                      "tolerations": [],
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      }
                    },
                    "preserveDefault": true
                  },
                  "fullnameOverride": "",
                  "git": {
                    "password": "",
                    "server": "https://gitlab.com",
                    "token": "",
                    "username": ""
                  },
                  "nameOverride": "",
                  "prometheus": {
                    "token": ""
                  }
                }
              },
              {
                "apiVersion": "apimc.com.perficient/v1alpha1",
                "kind": "ManagedNamespace",
                "metadata": {
                  "name": "managednamespace-sample"
                },
                "spec": {
                  "config": {
                    "repoBranch": "master",
                    "repoPath": "",
                    "repoUrl": ""
                  },
                  "container": {
                    "password": "",
                    "registry": "https://quay.io",
                    "username": ""
                  },
                  "fullnameOverride": "",
                  "git": {
                    "password": "",
                    "server": "https://gitlab.com",
                    "token": "",
                    "username": ""
                  },
                  "manager": {
                    "namespace": ""
                  },
                  "mirrors": {
                    "maven": ""
                  },
                  "nameOverride": ""
                }
              },
              {
                "apiVersion": "apimc.com.perficient/v1alpha1",
                "kind": "SpringBootApp",
                "metadata": {
                  "name": "springbootapp-sample"
                },
                "spec": {
                  "autoscaling": {
                    "enabled": false,
                    "maxReplicas": 100,
                    "minReplicas": 1,
                    "targetCPUUtilizationPercentage": 80
                  },
                  "config": {
                    "repo": ""
                  },
                  "container": {
                    "image": "placeholder",
                    "registry": ""
                  },
                  "fullnameOverride": "",
                  "git": {
                    "branch": "master",
                    "module": "",
                    "url": ""
                  },
                  "management": {
                    "port": 8081
                  },
                  "maven": {
                    "mirror": ""
                  },
                  "nameOverride": "",
                  "podAnnotations": {},
                  "replicaCount": 1,
                  "resources": {},
                  "service": {
                    "port": 8080
                  },
                  "serviceAccount": {
                    "annotations": {}
                  },
                  "version": {
                    "branch": "",
                    "image": "placeholder",
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Modernization & Migration,Developer Tools,Application Runtime
          containerImage: quay.io/mrethers/devopsinabox-operator:v0.0.45
          createdAt: 2021-03-03 10:51:09Z
          description: Perficient's DevSecOps Manager For Kubernetes Applications
          operators.operatorframework.io/builder: operator-sdk-v1.4.2
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/prft-rh/devopsinabox-operator
          support: Matthieu Rethers
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DevSecOpsManager
            name: devsecopsmanagers.apimc.com.perficient
            version: v1alpha1
          - kind: ManagedNamespace
            name: managednamespaces.apimc.com.perficient
            version: v1alpha1
          - kind: SpringBootApp
            name: springbootapps.apimc.com.perficient
            version: v1alpha1
        description: "The devops-in-a-box Operator manages the entire lifecycle of
          your applications in Kubernetes. It encapsulates all the best devsecops
          practices gathered by Perficient over the years working on many large projects.
          Use it to migrate existing applications with minimum changes or deploy new
          ones with little to no knowledge of Kubernetes.\n\nOnce installed, the Devops-in-a-box
          operator provides the following features:\n\n* **Create/Destroy**: Easily
          launch a new DevSecOpsManager instance to bootstrap your cluster and start
          deploying new applications with total confidence.\n\n* **Gitops Simplified**:
          Configure your cluster and individual applications through Git and watch
          your changes propagate instantly. Just point to where your code is and let
          the operator do the rest with preconfigured cloud-native CI/CD pipelines.\n\n*
          **Production-Ready**: Automatically register your applications with Openshift
          logging and monitoring systems and enjoy special additions for Spring Boot
          like custom dashboards and searchable logs.\n\n*Contact us on Github for
          installation and usage instruction*\n\n### Other Supported Features\n\n**Blue/Green,
          Canary, A/B Deployments**\n\nRun multiple versions of your applications
          simultaneously and configure traffic rules to target specific groups of
          users using Service Mesh.\n\n**Updates via automated operations**\n\nGet
          the latest enhancements automatically through the Operator Lifecycle Manager
          and upgrade all your running applications at once. "
        displayName: Devops-in-a-box
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devops
        - devsecops
        - spring
        - boot
        - java
        - gitops
        - cicd
        - argo
        links:
        - name: Devops-in-a-box Operator
          url: https://github.com/prft-rh/devopsinabox-operator
        maintainers:
        - email: matthieu.rethers@perficient.com
          name: Matthieu Rethers
        maturity: alpha
        provider:
          name: Perficient Inc
          url: http://www.perficient.com
        relatedImages:
        - quay.io/mrethers/devopsinabox-operator:v0.0.45
        - quay.io/openshift-community-operators/devopsinabox@sha256:1c2ad76102151a56ecd753d9b86fd9f155d64b912067738d1858d33a02557928
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        version: 0.0.45
      entries:
      - name: devopsinabox.v0.0.45
        version: 0.0.45
      name: alpha
    defaultChannel: alpha
    packageName: devopsinabox
    provider:
      name: Perficient Inc
      url: http://www.perficient.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://access.redhat.com/products/red-hat-fuse
    name: fuse-online
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fuse-online.v7.10.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:ed4faedcb97bb6a45f568586ff19da19da31ecbc304f12e0ae7978381247744a
          createdAt: 2022-01-31 15:55:46 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus@sha256:7f679d6c03535e300dac366f4bc6dd8d781d96dc47592836713f8bb76be36fa9
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:ed4faedcb97bb6a45f568586ff19da19da31ecbc304f12e0ae7978381247744a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:96810c770f75057b8bba6b78a5ba414c8289315d8af1a387f681ae5e4fb7d6dd
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:fcdd0292ebfc7e9edc36241f63b54a9d924a7605329c934ff2b10373af26dbbf
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:df2d55dd8092e9e94d034166890117cf5d1cfd5cf52ef0f90cfa2374cc9e2d06
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:3f0277e2c278740307c9b2d966f539ba12317e306198cb6c4c1c52a2ad9f4f40
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:53777788253eaa1199e1854d14782619aeec0df9844d86b83742fe0005671cde
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:5dd1bc8f6b7e724736f4aeac86409bda3e0f64f62b736688e9572d14411232f1
        - registry.redhat.io/rhel8/postgresql-12@sha256:44215c5b244b190c82d9d371a8ffd39b0c83576bd85c980cc72782a5cf9e6e1b
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:5048cd4fab2f98e6000bc60835c539cc40b70dbe265e927cfe185595347d8054
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:ef229a4c8851ec495f28d0eeab83b137cd02698e283f76ea1b32271b7222621b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:4f8849362e9ed6ff95d318a04e287b7ba33254a2cf7abdaf9b90cab7cbba6646
        version: 7.10.4
      entries:
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.10.x
    - currentCSV: fuse-online.v7.11.1-0.1687357787.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:658af3fc7819efb7cc39cd3a0504dcddc2ce7788c9b1e5178df869f7c9a742a8
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.11.1-0.1684718286.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-12@sha256:9248c4eaa8aeedacc1c06d7e3141ca1457147eef59e329273eb78e32fcd27e79
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:e3a13ea8b84b9e1abd158d394e11113e5f6c04d879547fa1d3e8638f1ac979d8
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:658af3fc7819efb7cc39cd3a0504dcddc2ce7788c9b1e5178df869f7c9a742a8
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:8b9bd777bcbd20b1a1bbbc18274a5076a67bea1f928d772cb243c57fb1da7408
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:4de91e4527022e1b25df8d3835ddf778f773c20334314be9ba01a885c82287f5
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:ac514973ec428d815d7a248d09d27f2a84f762aedfea63b3b48de9e633267ed5
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:251c29e81f8e338f980b475b841647a977807908c388f4c86e18da7bff1b198a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:400a6ee03c3200c19b9b15c5d037a849633156a62e13922fb2e62838024ae69c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:a2b1cd0256f30aff8fa37c332419b4483c0bfe34fb4f574ad8f18b0858969342
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:3d98d775bec85704c9a10c2f0d8e4f8116b7a41494f73c0b763e010262e5cd4d
        version: 7.11.1+0.1687357787.p
      entries:
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.11.x
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.12.x
    - currentCSV: fuse-online.v7.9.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta2",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:c70c5e76dc3db559c722bea2a767eb7dcba1eda786e1ef3a45c4cf32e1aca9ee
          createdAt: 2021-07-21 12:25:15 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta2
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to the product documentation at https://access.redhat.com/documentation/en-us/red_hat_fuse
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bafd85b0fd1256b8a60a2bb368a7e68f5dbad72718e5059a65660e01a425d8e2
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:75d5772c792a7c795281acec3d59e90021c109e9d7d1110868be0b882768aefb
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:eff9f8edf28ccbadcacab2022fff9e6bc93926af97521b49e3968eaf7b6fda65
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:c3e95e808eecba8ac57632452d3553509131ca783f62c68754a582cf5c55efab
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:d6f0c804c179fa559d3baed2e2d106c916a0439dc2215c4d34b878bc2e9bc281
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:c70c5e76dc3db559c722bea2a767eb7dcba1eda786e1ef3a45c4cf32e1aca9ee
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:60d5cf00411b03af3f1149a2bb3aeeb196c063d19625f876a094ae6baf46b54b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:13e9ea359cbcd3e0e94a6589b86b708dc84197f152701fd4092fffa234d11b58
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:c668fe1f5d25baddf627acd79df4c8d2ab8b05309d3d41784ddc0a10dd5f34ad
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:f65600506db985689e5b7cd8b838e646d4268a0c4e272e19d7db3577a8dd7ac4
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:31258400bb37f4b8837ef294820f8a728ae83f8031d4e01ff0392690a315a30f
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:d6df09b15599e776b49e1d46aa01728fd02d5629cee65e77dc277c0166554e0a
        version: 7.9.3
      entries:
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.9.x
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: candidate
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: latest
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: stable
    defaultChannel: latest
    packageName: fuse-online
    provider:
      name: Red Hat
      url: https://access.redhat.com/products/red-hat-fuse
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Mantisnet
      provider-url: https://www.mantisnet.com
    name: tawon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tawon-operator.v2.29.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tawon.mantisnet.com/v1alpha1",
                "kind": "Directive",
                "metadata": {
                  "name": "amf-h2"
                },
                "spec": {
                  "condition": {
                    "equal": {
                      "field": "process.name",
                      "value": "amf"
                    }
                  },
                  "container": {
                    "resources": {
                      "limits": {
                        "cpu": "500m"
                      }
                    }
                  },
                  "pod": {
                    "nodeSelector": {
                      "myNodeType": "nodeType1"
                    }
                  },
                  "tasks": [
                    {
                      "config": {
                        "filter": "port 8080"
                      },
                      "task": "payload"
                    },
                    {
                      "task": "h2"
                    },
                    {
                      "config": {
                        "addr": "nats://nats:4222",
                        "topic": "hello"
                      },
                      "task": "publish"
                    }
                  ]
                }
              },
              {
                "apiVersion": "tawon.mantisnet.com/v1alpha1",
                "kind": "TopologyAggregator",
                "metadata": {
                  "name": "topology-aggregator"
                },
                "spec": {
                  "messaging": {
                    "nats": {
                      "url": "nats://nats:4222"
                    }
                  },
                  "pod": {
                    "nodeSelector": {
                      "myNodeType": "nodeType1"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2023-11-13T01:16:29Z"
          olm.skipRange: '>=2.23.0 <2.29.1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Directive allows to define a Tawon task pipeline that will
              be applied to a Kubernetes cluster.
            displayName: Tawon Directive
            kind: Directive
            name: directives.tawon.mantisnet.com
            version: v1alpha1
          - description: TopologyAggregator is the Schema for the topologyaggregators
              API
            displayName: Tawon Topology Aggregator
            kind: TopologyAggregator
            name: topologyaggregators.tawon.mantisnet.com
            version: v1alpha1
        description: Tawon is a cloud-native observability fabric for deeply instrumenting
          microservice-based applications.
        displayName: Tawon
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - networking
        - metrics
        - ebpf
        links:
        - name: Tawon Docs
          url: https://docs.tawon.xmantis.net
        maintainers:
        - email: elliott@mantisnet.com
          name: Elliott Starin
        - email: nicolas@mantisnet.com
          name: Nicolas Paton
        - email: thiago@mantisnet.com
          name: Thiago Navarro
        maturity: alpha
        provider:
          name: Mantisnet
          url: https://www.mantisnet.com
        relatedImages:
        - registry.connect.redhat.com/a5f1f0cc7ac3db90370970f9b/tawon@sha256:3691c0948c8eb266ada348de504622227af6516f3b3d331eb09fd258dd0609a5
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d99a8d144816b951a67648c12c0b988936ccd25cf3754f3cd85ab8c01592248f
        - quay.io/mantisnet/kernel-headers@sha256:242e837af831b6eed98d522b6bae7416928b9fbe451fb6e02ffa678686771068
        - quay.io/mantisnet/kernel-headers@sha256:2aa3bc7871fe0fc0a79ac812d941e55cd0d25a5f0d1d9b3e2435aab6f3d70c67
        - quay.io/mantisnet/nats@sha256:6afc7ced92181a7c12d709e9693740847297dc5d60ab78cbac7b9b6c859ecdd1
        - quay.io/mantisnet/tawon-operator@sha256:d5669dde46bb30411964baa86844d97721655886769b96809626246a4123caad
        - quay.io/mantisnet/tawon@sha256:83575079fe00ae6e53bb13005b94ef0047cc1974d95015c19e64dd53e13bcb93
        - quay.io/mantisnet/tawonctl@sha256:d436ef902bb08d830f64f34fdb86b20d2bd18d86233c8240014f0722c60e5e94
        version: 2.29.1
      entries:
      - name: tawon-operator.v2.29.1
        version: 2.29.1
      name: alpha
    defaultChannel: alpha
    packageName: tawon-operator
    provider:
      name: Mantisnet
      url: https://www.mantisnet.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Netscaler
      provider-url: https://www.netscaler.com
    name: netscaler-adm-agent-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: netscaler-adm-agent-operator.v141.60.38
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgent",
                "metadata": {
                  "name": "adm-agent"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "adm.cloud.com",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-55.40",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgentOnprem",
                "metadata": {
                  "name": "adm-agent-onprem"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "<adm server ip>",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-60.38",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:9d9c9fbeca81441737ff9a4b371684dbf248212241e400da4c7ad0f4c391ff55
          createdAt: "2025-11-19T07:38:53Z"
          description: This is an operator to deploy container-based ADM agent to
            connect NetScaler CPX with ADM Service for management and monitoring.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler ADM Agent Operator On Prem
            displayName: NetScaler ADM Agent Operator On Prem
            kind: AdmAgentOnprem
            name: admagentonprems.netscaler.com
            version: v1
          - description: To install NetScaler ADM Agent Operator
            displayName: NetScaler ADM Agent Operator for Service
            kind: AdmAgent
            name: admagents.netscaler.com
            version: v1
        description: |-
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster.
          Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Agent Operator for Service](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          2. [NetScaler Agent Operator for On Prem](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          ### Installation

          Refer [installation instructions](https://github.com/netscaler/netscaler-k8s-ingress-controller/blob/master/docs/deploy/deploy-ns-operator.md)
          This operator version contains:
          1. NetScaler ADM Agent for Service [141.55.40](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v1.40.12)
          2. NetScaler ADM Agent for OnPrem[141.60.38](https://docs.netscaler.com/en-us/citrix-adc/14-1/citrix-adc-release-notes/release-notes-14-1-17-38)
          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin)
          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: Netscaler Adm Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Ingress
        - NetScaler
        - ADC
        - Kubernetes
        - OpenShift
        - Citrix
        - Controller
        - Observability
        - Metrices
        links:
        - name: Netscaler Adm Agent Operator
          url: https://netscaler-adm-agent-operator.domain
        maintainers:
        - email: pavan.belani@cloud.com
          name: Pavan Belani
        - email: swapnil.khanderaokakade@cloud.com
          name: Swapnil Khanderao
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Netscaler
          url: https://www.netscaler.com
        relatedImages:
        - quay.io/citrix/adm-agent@sha256:65c052c60999ffb4fe611fb10ba620c248720e1a483313a623e61769228ddd85
        - quay.io/citrix/developers-adm-agent@sha256:d7cbc49faae3e5502f0238c271f51249e827e11f3da1138acce1deced69bff34
        - registry.connect.redhat.com/citrix/admagent-operator-bundle@sha256:a43b3be056522477a467722cc82c492561512f97f6f0e6a4c7004921a07eb568
        - registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:9d9c9fbeca81441737ff9a4b371684dbf248212241e400da4c7ad0f4c391ff55
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        version: 141.60.38
      entries:
      - name: netscaler-adm-agent-operator.v141.60.38
        version: 141.60.38
      name: alpha
    - currentCSV: netscaler-adm-agent-operator.v141.60.54
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgent",
                "metadata": {
                  "name": "adm-agent"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "adm.cloud.com",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-55.40",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgentOnprem",
                "metadata": {
                  "name": "adm-agent-onprem"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "<adm server ip>",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-60.54",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:49a08eb5ed1f23e877d90dcd7fa8f952e2ec7ed4982649995be181c25f8743b1
          createdAt: "2025-12-11T10:08:16Z"
          description: This is an operator to deploy container-based NetScaler Console
            agent to manage NetScaler CPX with NetScaler Console for management and
            monitoring.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler ADM Agent Operator On Prem
            displayName: NetScaler ADM Agent Operator On Prem
            kind: AdmAgentOnprem
            name: admagentonprems.netscaler.com
            version: v1
          - description: To install NetScaler ADM Agent Operator
            displayName: NetScaler ADM Agent Operator for Service
            kind: AdmAgent
            name: admagents.netscaler.com
            version: v1
        description: |-
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster.
          Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Agent Operator for Service](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          2. [NetScaler Agent Operator for On Prem](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          ### Installation
          Refer [installation instructions](https://github.com/netscaler/netscaler-k8s-ingress-controller/blob/master/docs/deploy/deploy-ns-operator.md).

          This operator version contains:
          1. NetScaler ADM Agent for Service [141.55.40](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v1.40.12)
          2. NetScaler ADM Agent for OnPrem[141.60.54](https://docs.netscaler.com/en-us/citrix-adc/14-1/citrix-adc-release-notes/release-notes-14-1-17-38)

          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin).

          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: Netscaler Adm Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Ingress
        - NetScaler
        - ADC
        - Kubernetes
        - OpenShift
        - Citrix
        - Controller
        - Observability
        - Metrices
        links:
        - name: Netscaler Adm Agent Operator
          url: https://netscaler-adm-agent-operator.domain
        maintainers:
        - email: ritesh.padhi@citrix.com
          name: ritesh
        - email: swapnil.khanderaokakade@citrix.com
          name: swapnil
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: Netscaler
          url: https://www.netscaler.com
        relatedImages:
        - registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:49a08eb5ed1f23e877d90dcd7fa8f952e2ec7ed4982649995be181c25f8743b1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - quay.io/citrix/adm-agent@sha256:65c052c60999ffb4fe611fb10ba620c248720e1a483313a623e61769228ddd85
        - quay.io/citrix/developers-adm-agent@sha256:283f2ce4b964cf234c9d12c4955bedfbf1866292a939363e402b26ee544cb57a
        - registry.connect.redhat.com/citrix/admagent-operator-bundle@sha256:148aecf6a21b16940d11d62738f786574fa1d09eb20d441fb94bf956e57ecd3e
        version: 141.60.54
      entries:
      - name: netscaler-adm-agent-operator.v141.60.54
        version: 141.60.54
      name: stable
    defaultChannel: stable
    packageName: netscaler-adm-agent-operator
    provider:
      name: Netscaler
      url: https://www.netscaler.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-route53resolver-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-route53resolver-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "route53resolver.services.k8s.aws/v1alpha1",
                "kind": "ResolverEndpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "route53resolver.services.k8s.aws/v1alpha1",
                "kind": "ResolverRule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/route53resolver-controller:1.2.0
          createdAt: "2025-11-29T04:47:09Z"
          description: AWS Route53Resolver controller is a service controller for
            managing Route53Resolver resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ResolverEndpoint represents the state of an AWS route53resolver
              ResolverEndpoint resource.
            displayName: ResolverEndpoint
            kind: ResolverEndpoint
            name: resolverendpoints.route53resolver.services.k8s.aws
            version: v1alpha1
          - description: ResolverRule represents the state of an AWS route53resolver
              ResolverRule resource.
            displayName: ResolverRule
            kind: ResolverRule
            name: resolverrules.route53resolver.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Route53Resolver resources in AWS from within your Kubernetes cluster.

          **About Amazon Route53Resolver**

          Amazon Route 53 Resolver responds recursively to DNS queries from AWS resources for public records, Amazon VPC-specific DNS names, and Amazon Route 53 private hosted zones, and is available by default in all VPCs.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Route53Resolver
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - route53resolver
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Route53Resolver Developer Resources
          url: https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: route53resolver maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-route53resolver-controller@sha256:cd80c4eb559418ffe863c880b3954251ce13508493bf56d5e7b9e5b282838b36
        - public.ecr.aws/aws-controllers-k8s/route53resolver-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-route53resolver-controller.v1.2.0
        version: 1.2.0
      - name: ack-route53resolver-controller.v1.1.2
        version: 1.1.2
      - name: ack-route53resolver-controller.v1.1.1
        version: 1.1.1
      - name: ack-route53resolver-controller.v1.0.15
        version: 1.0.15
      - name: ack-route53resolver-controller.v1.0.14
        version: 1.0.14
      - name: ack-route53resolver-controller.v1.0.13
        version: 1.0.13
      - name: ack-route53resolver-controller.v1.0.11
        version: 1.0.11
      - name: ack-route53resolver-controller.v1.0.10
        version: 1.0.10
      - name: ack-route53resolver-controller.v1.0.9
        version: 1.0.9
      - name: ack-route53resolver-controller.v1.0.7
        version: 1.0.7
      - name: ack-route53resolver-controller.v1.0.6
        version: 1.0.6
      - name: ack-route53resolver-controller.v1.0.5
        version: 1.0.5
      - name: ack-route53resolver-controller.v1.0.3
        version: 1.0.3
      - name: ack-route53resolver-controller.v1.0.2
        version: 1.0.2
      - name: ack-route53resolver-controller.v1.0.0
        version: 1.0.0
      - name: ack-route53resolver-controller.v0.0.11
        version: 0.0.11
      - name: ack-route53resolver-controller.v0.0.10
        version: 0.0.10
      - name: ack-route53resolver-controller.v0.0.9
        version: 0.0.9
      - name: ack-route53resolver-controller.v0.0.7
        version: 0.0.7
      - name: ack-route53resolver-controller.v0.0.4
        version: 0.0.4
      - name: ack-route53resolver-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-route53resolver-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ram-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ram-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ram-controller:1.2.0
          createdAt: "2025-11-29T05:19:01Z"
          description: AWS RAM controller is a service controller for managing RAM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Permission represents the state of an AWS ram Permission
              resource.
            displayName: Permission
            kind: Permission
            name: permissions.ram.services.k8s.aws
            version: v1alpha1
          - description: ResourceShare represents the state of an AWS ram ResourceShare
              resource.
            displayName: ResourceShare
            kind: ResourceShare
            name: resourceshares.ram.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon RAM resources in AWS from within your Kubernetes cluster.

          **About Amazon RAM**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon RAM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ram
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon RAM Developer Resources
          url: https://aws.amazon.com/RAM/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ram maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ram-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ram-controller@sha256:59b2e55dc3a4154a742dff715ec45e012a64bb6699d837f311e448c7301d7aff
        version: 1.2.0
      entries:
      - name: ack-ram-controller.v1.2.0
        version: 1.2.0
      - name: ack-ram-controller.v1.1.2
        version: 1.1.2
      - name: ack-ram-controller.v1.1.1
        version: 1.1.1
      - name: ack-ram-controller.v1.1.0
        version: 1.1.0
      - name: ack-ram-controller.v1.0.11
        version: 1.0.11
      - name: ack-ram-controller.v1.0.10
        version: 1.0.10
      name: alpha
    defaultChannel: alpha
    packageName: ack-ram-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Dynatrace LLC
      provider-url: www.dynatrace.com
    name: dynatrace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dynatrace-operator.v1.7.2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          containerImage: registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
          createdAt: 2025-11-17T09:03:01.768309
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.7.2
          operatorframework.io/suggested-namespace: dynatrace
          operators.openshift.io/valid-subscription: '["Dynatrace Platform Subscription
            (DPS)","Dynatrace Classic License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Dynatrace/dynatrace-operator
          support: Dynatrace
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta3
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta4
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta5
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha1
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha2
        description: |
          The Dynatrace Operator supports rollout and lifecycle management of various Dynatrace components in Kubernetes and OpenShift.

          Currently the Dynatrace Operator supports the following capabilities:

          ### OneAgent
            * `classicFullStack` rolls out one OneAgent pod per node to monitor its pods and the node itself
            * `applicationMonitoring` is a webhook based injection mechanism for automatic app-only injection
            * `hostMonitoring` monitors only the hosts, i.e., the nodes, in the cluster without app-only injection
          ### ActiveGate
            * `routing` routes OneAgent traffic through the ActiveGate
            * `kubernetes-monitoring` allows monitoring the Kubernetes API
            * `metrics-ingest` routes enriched metrics through an ActiveGate

          For more information please refer to [our DynaKube Custom Resource examples](https://dt-url.net/dynakube-samples).

          ### Installation
          Once you've installed the Dynatrace Operator, you can create a DynaKube custom resource.

          First, please add a Secret within the Project you've deployed the Dynatrace Operator to, which would contain your API and PaaS tokens. Create tokens of type *Dynatrace API* (`API_TOKEN`) and *Platform as a Service* (`PAAS_TOKEN`) and use their values in the following commands respectively.

          For assistance please refer to [Create user-generated access tokens](https://www.dynatrace.com/support/help/shortlink/token#create-user-generated-access-tokens).

          ``` $ oc -n <project> create secret generic dynakube --from-literal="apiToken=API_TOKEN" --from-literal="paasToken=PAAS_TOKEN" ```

          You may update this Secret at any time to rotate the tokens.

          After creation of the secret add the DynaKube object in the project where the Dynatrace Operator has been deployed, configured to your needs.

          ### Required Parameters
          * `apiUrl` - provide the URL to the API of your Dynatrace environment. In Dynatrace SaaS it will look like `https://<ENVIRONMENTID>.live.dynatrace.com/api` . In Dynatrace Managed like `https://<YourDynatraceServerURL>/e/<ENVIRONMENTID>/api` .

          ### Advanced Options
          * **Disable Certificate Checking** - disable any certificate validation that may interact poorly with proxies with in your cluster
          * **Image Override** - use a copy of the ActiveGate container image from a registry other than Docker's or Red Hat's

          For a complete list of supported parameters please consult the [Operator Deploy Guide](https://www.dynatrace.com/support/help/shortlink/openshift-deploy).

          ### Help
          You can find more about our instructions in our [documentation](https://www.dynatrace.com/support/help/shortlink/openshift-deploy#install-dynatrace-operator).
        displayName: Dynatrace Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - dynatrace
        - oneagent
        - activegate
        - observability
        links:
        - name: Dynatrace Operator
          url: https://github.com/Dynatrace/dynatrace-operator
        - name: OpenShift Monitoring Info
          url: https://www.dynatrace.com/technologies/openshift-monitoring
        maintainers:
        - email: support@dynatrace.com
          name: Dynatrace LLC
        maturity: alpha
        provider:
          name: Dynatrace LLC
          url: www.dynatrace.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/dynatrace-operator@sha256:c57565f3a0b29d24d944aa15e10bb4027957f02f7ab9ca18d259fc93657ab75a
        - registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
        version: 1.7.2
      entries:
      - name: dynatrace-operator.v1.7.2
        version: 1.7.2
      - name: dynatrace-operator.v1.7.1
        version: 1.7.1
      - name: dynatrace-operator.v1.7.0
        version: 1.7.0
      - name: dynatrace-operator.v1.6.3
        version: 1.6.3
      - name: dynatrace-operator.v1.6.2
        version: 1.6.2
      - name: dynatrace-operator.v1.6.1
        version: 1.6.1
      - name: dynatrace-operator.v1.6.0
        version: 1.6.0
      - name: dynatrace-operator.v1.5.1
        version: 1.5.1
      - name: dynatrace-operator.v1.4.2
        version: 1.4.2
      - name: dynatrace-operator.v1.4.1
        version: 1.4.1
      - name: dynatrace-operator.v1.4.0
        version: 1.4.0
      - name: dynatrace-operator.v0.6.0
        version: 0.6.0
      - name: dynatrace-operator.v0.5.1
        version: 0.5.1
      - name: dynatrace-operator.v0.5.0
        version: 0.5.0
      name: alpha
    defaultChannel: alpha
    packageName: dynatrace-operator
    provider:
      name: Dynatrace LLC
      url: www.dynatrace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Antline-Soft
      provider-url: ""
    name: cxl-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cxl-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cxl.antline.com/v1",
                "kind": "CXL",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cxl-operator",
                    "app.kubernetes.io/instance": "cxl-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cxl",
                    "app.kubernetes.io/part-of": "cxl-operator"
                  },
                  "name": "cxl-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          createdAt: "2024-05-08T08:36:12Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CXL is the Schema for the cxls API
            displayName: CXL
            kind: CXL
            name: cxls.cxl.antline.com
            version: v1
        description: memory extend operator
        displayName: extend-community-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - memory
        - extend
        - community
        - operator
        links:
        - name: Cxl Operator
          url: https://cxl-operator.domain
        maintainers:
        - email: tomboy@antlinesoft.com
          name: Antline-Soft
        maturity: alpha
        provider:
          name: Antline-Soft
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ncn-community-operator@sha256:15edc1898fe9f8f56708da7d6de3548d06f1df3bdbb3f66a9cf4f7990fe9fad6
        - rasen708/cxl-operator:latest
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        version: 0.0.1
      entries:
      - name: cxl-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: cxl-operator
    provider:
      name: Antline-Soft
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: assisted-service-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: assisted-service-operator.v0.7.74
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-x86_64-live.x86_64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-aarch64-live.aarch64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-s390x-live.s390x.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-x86_64-live.x86_64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-aarch64-live.aarch64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-s390x-live.s390x.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-x86_64-live.x86_64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-aarch64-live.aarch64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-ppc64le-live.ppc64le.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-s390x-live.s390x.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-x86_64-live.x86_64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-aarch64-live.aarch64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-ppc64le-live.ppc64le.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-s390x-live.s390x.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-s390x-live.s390x.iso",
                      "version": "418.94.202409162337-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service:latest
          createdAt: "2024-10-16T17:43:34Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.74'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AgentClassification is the Schema for the AgentClassifications
              API
            displayName: Agent Classification
            kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - description: Agent is the Schema for the hosts API
            displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: Infra Env
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/assisted-service-operator@sha256:0e8a33d795a2d3fa3c5fd409e4e1c40805d5c08a71481afbf9e7b8014b4179ca
        - quay.io/edge-infrastructure/assisted-service:latest
        version: 0.7.74
      entries:
      - name: assisted-service-operator.v0.7.74
        version: 0.7.74
      - name: assisted-service-operator.v0.7.73
        version: 0.7.73
      - name: assisted-service-operator.v0.7.72
        version: 0.7.72
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: assisted-service-operator.v0.7.71
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-x86_64-live.x86_64.iso",
                      "version": "414.92.202310170514-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-aarch64-live.aarch64.iso",
                      "version": "414.92.202310170514-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202309201615-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-s390x-live.s390x.iso",
                      "version": "414.92.202309201615-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "415.92.202310310037-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "415.92.202310310037-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202310310037-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-s390x-live.s390x.iso",
                      "version": "415.92.202310310037-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:cffbdc5fd51c08f16ec2aa484cf226e3b29510919a8aa9668d766007de8f3d79
          createdAt: "2023-12-15T15:26:08Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.71'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:4e12e48d0b2b884de2a0d32682da044cff419aea53bb162915538e2179fcd7f3
        - quay.io/edge-infrastructure/assisted-image-service@sha256:027fa9c5a881848786745aafeac5e48575eefe22417abe29d9e8eb17940b8f80
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:40bafed94547a5fe96deb5492f10225501b965198227c9634869931692bda492
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:98740646fbfc0520f9d85ac5b483d1a898f22e164c5234901be51970bef7fcf3
        - quay.io/edge-infrastructure/assisted-installer@sha256:0f4ecf9a75b6755d02a45f9b70357ac45b6b4db66f24f0e83f888269d64f4293
        - quay.io/edge-infrastructure/assisted-service@sha256:cffbdc5fd51c08f16ec2aa484cf226e3b29510919a8aa9668d766007de8f3d79
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        version: 0.7.71
      entries:
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.10
    - currentCSV: assisted-service-operator.v0.7.73
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-x86_64-live.x86_64.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-aarch64-live.aarch64.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-s390x-live.s390x.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-x86_64-live.x86_64.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-aarch64-live.aarch64.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-s390x-live.s390x.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.16.0-ec.4/rhcos-4.16.0-ec.4-x86_64-live.x86_64.iso",
                      "version": "416.94.202403071059-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-aarch64-live.aarch64.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-s390x-live.s390x.iso",
                      "version": "415.92.202402130021-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:641fb65d8f0117cc6007567337ae38d5e912add454a76905617b60db99b60a64
          createdAt: "2024-03-20T10:08:49Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.73'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/community-operator-pipeline-prod/assisted-service-operator@sha256:9eca42cc297a93293200a1c46e8ed949a61770550366044ef54e36bed9d7a116
        - quay.io/edge-infrastructure/assisted-image-service@sha256:b33068bbe88e38c0444fb158e233e5644fb127416198d52fdc809a3f2e684fde
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:2cc14304ba27c51d61b86db05445f3f0acc68593a4d76081da8eb9d6bae41757
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:d0da07ec81877302fc376e8049dca69c1acdbf56a37aa3e320cd75f2b85a2ed0
        - quay.io/edge-infrastructure/assisted-installer@sha256:234e4680b0ff4376f2c11d6f94a75a5dd6ae16c3218d6b63d2003cf43c65e185
        - quay.io/edge-infrastructure/assisted-service@sha256:641fb65d8f0117cc6007567337ae38d5e912add454a76905617b60db99b60a64
        version: 0.7.73
      entries:
      - name: assisted-service-operator.v0.7.73
        version: 0.7.73
      - name: assisted-service-operator.v0.7.72
        version: 0.7.72
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.11
    - currentCSV: assisted-service-operator.v0.7.74
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-x86_64-live.x86_64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-aarch64-live.aarch64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-s390x-live.s390x.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-x86_64-live.x86_64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-aarch64-live.aarch64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-s390x-live.s390x.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-x86_64-live.x86_64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-aarch64-live.aarch64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-ppc64le-live.ppc64le.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-s390x-live.s390x.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-x86_64-live.x86_64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-aarch64-live.aarch64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-ppc64le-live.ppc64le.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-s390x-live.s390x.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-s390x-live.s390x.iso",
                      "version": "418.94.202409162337-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service:latest
          createdAt: "2024-10-16T17:43:34Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.74'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AgentClassification is the Schema for the AgentClassifications
              API
            displayName: Agent Classification
            kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - description: Agent is the Schema for the hosts API
            displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: Infra Env
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/assisted-service:latest
        - quay.io/community-operator-pipeline-prod/assisted-service-operator@sha256:0e8a33d795a2d3fa3c5fd409e4e1c40805d5c08a71481afbf9e7b8014b4179ca
        version: 0.7.74
      entries:
      - name: assisted-service-operator.v0.7.74
        version: 0.7.74
      - name: assisted-service-operator.v0.7.73
        version: 0.7.73
      - name: assisted-service-operator.v0.7.72
        version: 0.7.72
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.13
    - currentCSV: assisted-service-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "osImages": [
                    {
                      "openshiftVersion": "4.8",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202105062123-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/ocpmetal/assisted-service@sha256:64e88c5aa41c606bc2db2b0991acdbb1166559306474e13f5e2810f325616d64
          createdAt: "2021-09-23T11:11:20Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.0 <0.0.8'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.7.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled, for
              all other names a "Warning" event will be emitted + message logged and
              it will be ignored forever.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent".
          No other name will be accepted.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/ocpmetal/assisted-installer@sha256:db97f7a565a8d5af61f3876d6465996e90c7f79dad6ec71c5bb5cce837444974
        - quay.io/ocpmetal/assisted-service@sha256:64e88c5aa41c606bc2db2b0991acdbb1166559306474e13f5e2810f325616d64
        - quay.io/ocpmetal/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:31eda4f1888b180feb023c42a6ec93478b2e956f13420d55987d9abf7c7797c3
        - quay.io/ocpmetal/assisted-installer-agent@sha256:a391892766d1ce81300bf82943318e7c3be0d2945fc19065527ab9f64fc24cf8
        - quay.io/ocpmetal/assisted-installer-controller@sha256:43b65c310eee985ee0fc20ad8ee684f7557ffe704fd1a2fa53831e3dbc41e849
        version: 0.0.8
      entries:
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.3
    - currentCSV: assisted-service-operator.v0.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.2/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.2/rhcos-4.8.2-x86_64-live.x86_64.iso",
                      "version": "48.84.202107202156-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-x86_64-live.x86_64.iso",
                      "version": "49.84.202110081407-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:c3a852842b88f47c51cf1c62d3a19b102729fb355df19ced0e03e8265739c39c
          createdAt: "2022-04-07T11:23:06Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.1.3'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled, for
              all other names a "Warning" event will be emitted + message logged and
              it will be ignored forever.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent".
          No other name will be accepted.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:7d5f9e02f3d6c3e2ac63f1fd33240dc696ee79563c214d21d2897ee773517e9c
        - quay.io/edge-infrastructure/assisted-image-service@sha256:add19e251cafdfc4f34264d0aec5b660f0ea2dcc13326f4a2c8d50a2e465c0a2
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:979650f2e03e457d71958e8813285fcb7185fe0035f21a6ba956b4277cb29b70
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:658787d1e6c1f733c5f03863655aff315258c0b38e1972573c3878df46e4e463
        - quay.io/edge-infrastructure/assisted-installer@sha256:461d60b21d1d3ccb15a170f937f4871088cd0f83108b2271e84bdf2883a66870
        - quay.io/edge-infrastructure/assisted-service@sha256:c3a852842b88f47c51cf1c62d3a19b102729fb355df19ced0e03e8265739c39c
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        version: 0.1.3
      entries:
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.4
    - currentCSV: assisted-service-operator.v0.3.30
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-x86_64-live.x86_64.iso",
                      "version": "49.84.202110081407-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.9",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-aarch64-live-rootfs.aarch64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-aarch64-live.aarch64.iso",
                      "version": "49.84.202110080947-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.3/rhcos-4.10.3-x86_64-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.3/rhcos-4.10.3-x86_64-live.x86_64.iso",
                      "version": "410.84.202201251210-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:7c13ce52d82f761aec47bc5a6639d7baabe99d0f4f2e2106c4341018c606b458
          createdAt: "2022-06-13T23:16:28Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.3.30'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:5b061126dc3adf1fc9c8c22dfded18f4652bd62537aefca88ddcc585078b94ae
        - quay.io/edge-infrastructure/assisted-image-service@sha256:d6396f9360b877a4f57139ba5b4969f243278db709be4de3573f2fba75e50018
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:6271d639e4c0647bd28fbc85cea54f31143a876c3237376b9c670ec254a9c2fc
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:2267d2d7be38f81d530fed977b0c46f6c976369cd89c123c8e036c3b1dd988d5
        - quay.io/edge-infrastructure/assisted-installer@sha256:57cf8d5fe49067a8c1345bedaf90f2b63aededdd7d615878496182c35a13892e
        - quay.io/edge-infrastructure/assisted-service@sha256:7c13ce52d82f761aec47bc5a6639d7baabe99d0f4f2e2106c4341018c606b458
        version: 0.3.30
      entries:
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.5
    - currentCSV: assisted-service-operator.v0.4.41
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.40/rhcos-4.9.40-x86_64-live.x86_64.iso",
                      "version": "49.84.202206171736-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.16/rhcos-4.10.16-x86_64-live.x86_64.iso",
                      "version": "410.84.202205191234-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.16/rhcos-4.10.16-aarch64-live.aarch64.iso",
                      "version": "410.84.202205191023-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.11.0-rc.2/rhcos-4.11.0-rc.2-x86_64-live.x86_64.iso",
                      "version": "411.86.202207090519-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.11.0-rc.2/rhcos-4.11.0-rc.2-aarch64-live.aarch64.iso",
                      "version": "411.86.202207090159-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:0fa869095185759c26c391f0e353f293c903ea739576f160d6668f5f20404bdb
          createdAt: "2022-09-11T14:56:07Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.4.41'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/assisted-installer@sha256:803168aeb7e01db77e3b2ff7418ceea3d93daccaceeb95f8fc02027144ebac75
        - quay.io/edge-infrastructure/assisted-service@sha256:0fa869095185759c26c391f0e353f293c903ea739576f160d6668f5f20404bdb
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:4ca00219efbc0d9dcce415dadc1039e9495f3a3b00ab3bd575b41554d7934899
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:007a3d43633fe355202002737f766a7c636f537f3daeffa1f62356c0bbf969aa
        - quay.io/edge-infrastructure/assisted-image-service@sha256:104d2aae313c724fb10d3ef3bba78b2370fc0597de31335453894b679a450ab8
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:56484f99799d22f345215bb65c6b81b6ee14e07d26b625c3f283a2ddfdc37238
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:951b9d625bc300b5b72a3916cb382015527ea786f10b7acbeebf83ae854ca51a
        version: 0.4.41
      entries:
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.6
    - currentCSV: assisted-service-operator.v0.4.50
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-x86_64-live.x86_64.iso",
                      "version": "411.86.202210041459-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-aarch64-live.aarch64.iso",
                      "version": "411.86.202210032347-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "412.86.202208101039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "412.86.202208101040-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:0ca1cfe04f088cd4c7318cb91978754d6472ada29e3436d05e22335740bfff49
          createdAt: "2022-11-23T19:17:47Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.4.50'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:87594d78977ead074e53b39a52e905a2d2861d24d69d2f2e33b066077cd279a4
        - quay.io/edge-infrastructure/assisted-image-service@sha256:71e8c9c76caa8fe01255fdb4a1172cda372969f7fe1399a3a54fb93e967e68cf
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:34e0341c0471b1772db11535107db06e511c8d5d9816edc3971e745928164ecd
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:c1c7281b9f06e56330cc55ac8d74185d42ee82dff105ae747db677b8eb059aea
        - quay.io/edge-infrastructure/assisted-installer@sha256:f225c86242b0bfbf58753123ef33b7c07f367a5099641d19cfda5a7121382586
        - quay.io/edge-infrastructure/assisted-service@sha256:0ca1cfe04f088cd4c7318cb91978754d6472ada29e3436d05e22335740bfff49
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:54b39c6cafefb70d258ec1d491b6a0f1dd888cd85bd442c8f40a4805cf4721ca
        version: 0.4.50
      entries:
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.7
    - currentCSV: assisted-service-operator.v0.6.65
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-x86_64-live.x86_64.iso",
                      "version": "411.86.202210041459-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-aarch64-live.aarch64.iso",
                      "version": "411.86.202210032347-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-s390x-live.s390x.iso",
                      "version": "411.86.202210171842-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202210171844-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-x86_64-live.x86_64.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-aarch64-live.aarch64.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-s390x-live.s390x.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-x86_64-live.x86_64.iso",
                      "version": "413.92.202303281804-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-aarch64-live.aarch64.iso",
                      "version": "413.92.202303281804-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202303281804-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-s390x-live.s390x.iso",
                      "version": "413.92.202303281804-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:2dfaf2c3ac58b2987b0088df302c7cf717d0b6640cdb8b2327370aa110120784
          createdAt: "2023-05-24T11:15:57Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.6.65'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:1287d947464fbf5275feb31d106d2feb856c6117f0eaec8d947f2e03bd8618c5
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:ff8e563d97f0d0e42c690ca3e61d3625e920947264ea99c396392c440cd43201
        - quay.io/edge-infrastructure/assisted-image-service@sha256:b1ba1076fe16b2f868ed31a660b16583a957a83634c7ec3cf03574b56e02144c
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:1ad91b13c763437863480df68f5b65576e95c558d4537886432a81c0b8d3cedc
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:a6f99547564cc2e047df74003019817b2dbd3dad992a0c8e53aaaba4f5b02ab6
        - quay.io/edge-infrastructure/assisted-installer@sha256:f8a7e7cb6ff1a4a7daa0cb26f0fab8da17f109653af5979c9d53c35b7ca2c1bb
        - quay.io/edge-infrastructure/assisted-service@sha256:2dfaf2c3ac58b2987b0088df302c7cf717d0b6640cdb8b2327370aa110120784
        version: 0.6.65
      entries:
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.8
    - currentCSV: assisted-service-operator.v0.7.67
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "414.92.202305090606-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "414.92.202305090606-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202305090606-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-s390x-live.s390x.iso",
                      "version": "414.92.202305090606-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:fb0397a1402d42a64e3128e66a0817aa9466e67eb407cb792dda0d380bd5a189
          createdAt: "2023-10-08T07:14:20Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.67'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/assisted-image-service@sha256:69ff087be8e5d8458a97f49d88b8b2025ee341d362dcf5618988c011b66688e0
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:f2aeb4f7d193ea2c5702cae0f6039c02991b9f417d091468d46974408c97efe4
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:35c118d8c07dd72fe3307424cc051d9e0426e916412171449a05e41445b9f599
        - quay.io/edge-infrastructure/assisted-installer@sha256:d85be59bc379927f46d0a88ef04172c5c6733e31e1e4a8188de2d434d5bedb66
        - quay.io/edge-infrastructure/assisted-service@sha256:fb0397a1402d42a64e3128e66a0817aa9466e67eb407cb792dda0d380bd5a189
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:12a02131f13e532a26572a524ae542766092ff75624113994d304824951161b4
        version: 0.7.67
      entries:
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.9
    defaultChannel: alpha
    packageName: assisted-service-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Devfile
      provider-url: https://devfile.io
    name: devworkspace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: devworkspace-operator.v0.38.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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: "true"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.7.1+git
          operators.operatorframework.io/internal-objects: '["devworkspaceroutings.controller.devfile.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DevWorkspaceOperatorConfig
            name: devworkspaceoperatorconfigs.controller.devfile.io
            version: v1alpha1
          - kind: DevWorkspaceRouting
            name: devworkspaceroutings.controller.devfile.io
            version: v1alpha1
          - kind: DevWorkspace
            name: devworkspaces.workspace.devfile.io
            version: v1alpha1
          - kind: DevWorkspace
            name: devworkspaces.workspace.devfile.io
            version: v1alpha2
          - kind: DevWorkspaceTemplate
            name: devworkspacetemplates.workspace.devfile.io
            version: v1alpha1
          - kind: DevWorkspaceTemplate
            name: devworkspacetemplates.workspace.devfile.io
            version: v1alpha2
        description: |
          The DevWorkspace Operator enables cluster-level support for the
          [Devfile 2.0 spec](https://docs.devfile.io), enabling static, reproducible
          configurations for launching cloud-based editors and IDEs in OpenShift and
          Kubernetes clusters.

          Leveraging the language server protocol and the Eclipse Theia web IDE, the
          DevWorkspace operator provides easy configuration of full development
          environments on the cloud with support for a wide variety of languages and
          technologies, including Go, Java, Typescript/Javascript, Python, and more.

          The DevWorkspace Operator is also used in the Web Terminal Operator to
          automatically provision Web Terminal environments.

          ## Installing the operator
          The DevWorkspace Operator can be installed directly from the OperatorHub UI and
          will be available in all namespaces on the cluster. DevWorkspace creation is
          driven by the DevWorkspace custom resource, which can be created in any
          namespace to provision a full development environment. To get started, browse
          the DevWorkspace [spec](https://devfile.io/docs/2.3.0/devfile-schema).

          Once a DevWorkspace is started, it can be accessed via the URL in its
          `.status.mainUrl` field.

          It's recommended to install the DevWorkspace Operator to the
          `openshift-operators` namespace for compatibility.

          ## Uninstalling the operator
          The DevWorkspace Operator utilizes finalizers on resources it creates and
          webhooks to restrict access to development resources. As a result, manual steps
          are required in uninstalling the operator. See the
          [documentation](https://github.com/devfile/devworkspace-operator/blob/main/docs/uninstall.md)
          for details.
        displayName: DevWorkspace Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Devworkspace Operator
        - DevWorkspaces
        - Devfile
        links:
        - name: Devworkspace Operator
          url: https://github.com/devfile/devworkspace-operator
        maintainers:
        - email: dakwon@redhat.com
          name: David Kwon
        - email: ibuziuk@redhat.com
          name: Ilya Buziuk
        maturity: alpha
        provider:
          name: Devfile
          url: https://devfile.io
        relatedImages:
        - registry.redhat.io/ubi9/ubi-minimal@sha256:a50731d3397a4ee28583f1699842183d4d24fadcc565c4688487af9ee4e13a44
        - registry.redhat.io/devworkspace/devworkspace-operator-bundle@sha256:e2b731c676f12ff02781f0ac279ce4aa3652b6e24e90eba5880579c49b737adf
        - registry.redhat.io/devworkspace/devworkspace-project-clone-rhel9@sha256:3f0619571d6fa2259796f837ebfd0eb0fa225054ac38ed0d144245cccce51515
        - registry.redhat.io/devworkspace/devworkspace-rhel9-operator@sha256:5382d54bbd3ade51a7dda1c8a8a86aca30fb5655c61a4a4e85ecceef7e36f168
        version: 0.38.0
      entries:
      - name: devworkspace-operator.v0.38.0
        version: 0.38.0
      - name: devworkspace-operator.v0.37.0
        version: 0.37.0
      - name: devworkspace-operator.v0.36.0
        version: 0.36.0
      - name: devworkspace-operator.v0.35.1
        version: 0.35.1
      - name: devworkspace-operator.v0.34.0
        version: 0.34.0
      - name: devworkspace-operator.v0.33.0
        version: 0.33.0
      - name: devworkspace-operator.v0.32.1
        version: 0.32.1
      - name: devworkspace-operator.v0.31.2
        version: 0.31.2
      - name: devworkspace-operator.v0.31.1
        version: 0.31.1
      - name: devworkspace-operator.v0.31.0
        version: 0.31.0
      - name: devworkspace-operator.v0.30.2
        version: 0.30.2
      - name: devworkspace-operator.v0.30.1
        version: 0.30.1
      - name: devworkspace-operator.v0.30.0
        version: 0.30.0
      - name: devworkspace-operator.v0.29.0
        version: 0.29.0
      - name: devworkspace-operator.v0.28.0-0.1719314743.p
        version: 0.28.0+0.1719314743.p
      - name: devworkspace-operator.v0.28.0
        version: 0.28.0
      - name: devworkspace-operator.v0.27.0-0.1714987663.p
        version: 0.27.0+0.1714987663.p
      - name: devworkspace-operator.v0.27.0
        version: 0.27.0
      - name: devworkspace-operator.v0.26.0
        version: 0.26.0
      - name: devworkspace-operator.v0.25.0
        version: 0.25.0
      - name: devworkspace-operator.v0.24.0
        version: 0.24.0
      - name: devworkspace-operator.v0.23.0
        version: 0.23.0
      - name: devworkspace-operator.v0.22.0
        version: 0.22.0
      - name: devworkspace-operator.v0.21.2
        version: 0.21.2
      - name: devworkspace-operator.v0.21.1
        version: 0.21.1
      - name: devworkspace-operator.v0.20.0
        version: 0.20.0
      - name: devworkspace-operator.v0.19.1
        version: 0.19.1
      - name: devworkspace-operator.v0.19.1-0.1682321189.p
        version: 0.19.1+0.1682321189.p
      - name: devworkspace-operator.v0.19.1-0.1679521112.p
        version: 0.19.1+0.1679521112.p
      - name: devworkspace-operator.v0.18.1
        version: 0.18.1
      - name: devworkspace-operator.v0.18.1-0.1675929565.p
        version: 0.18.1+0.1675929565.p
      - name: devworkspace-operator.v0.17.0
        version: 0.17.0
      - name: devworkspace-operator.v0.16.0-0.1666668361.p
        version: 0.16.0+0.1666668361.p
      - name: devworkspace-operator.v0.16.0
        version: 0.16.0
      - name: devworkspace-operator.v0.15.2-0.1661828401.p
        version: 0.15.2+0.1661828401.p
      - name: devworkspace-operator.v0.15.2
        version: 0.15.2
      - name: devworkspace-operator.v0.14.1
        version: 0.14.1
      - name: devworkspace-operator.v0.13.0
        version: 0.13.0
      - name: devworkspace-operator.v0.12.0
        version: 0.12.0
      - name: devworkspace-operator.v0.11.0
        version: 0.11.0
      - name: devworkspace-operator.v0.10.0
        version: 0.10.0
      - name: devworkspace-operator.v0.9.0
        version: 0.9.0
      name: fast
    defaultChannel: fast
    packageName: devworkspace-operator
    provider:
      name: Devfile
      url: https://devfile.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-opensearch-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opensearch-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/opensearch-operator@sha256:fea1404da760585252a5aa573a04fbfa9662e48164254dff34babbfb6902e332
          description: Stackable Operator for OpenSearch
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/opensearch-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for OpenSearchClusterSpec via
              `CustomResource`
            displayName: opensearchclusters.opensearch.stackable.tech
            kind: OpenSearchCluster
            name: opensearchclusters.opensearch.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for OpenSearch
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opensearch
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/opensearch-operator@sha256:fea1404da760585252a5aa573a04fbfa9662e48164254dff34babbfb6902e332
        - registry.connect.redhat.com/stackable/stackable-opensearch-operator:25.11.0
        version: 25.11.0
      entries:
      - name: opensearch-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-opensearch-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: aws-neuron-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-neuron-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.aws/v1alpha1",
                "kind": "DeviceConfig",
                "metadata": {
                  "name": "device-config",
                  "namespace": "ai-operator-on-aws"
                },
                "spec": {
                  "customSchedulerImage": "public.ecr.aws/eks-distro/kubernetes/kube-scheduler:v1.32.9-eks-1-32-24",
                  "devicePluginImage": "public.ecr.aws/neuron/neuron-device-plugin:2.24.23.0",
                  "driversImage": "public.ecr.aws/q5p6u7h8/neuron-openshift/neuron-kernel-module:2.24.7.0",
                  "schedulerExtensionImage": "public.ecr.aws/neuron/neuron-scheduler:2.24.23.0",
                  "selector": {
                    "feature.node.kubernetes.io/aws-neuron": "true"
                  },
                  "useInTreeDrivers": false
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-10-27T12:17:40Z"
          description: AWS Neuron operator is resposible for deploying AWS Neuron
            kernel drivers, device plugin and customed scheduler
          operatorframework.io/suggested-namespace: ai-operator-on-aws
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DeviceConfig
            name: deviceconfigs.k8s.aws
            version: v1alpha1
        description: AWS Neuron operator is resposible for deploying AWS Neuron kernel
          drivers, device plugin and customed scheduler
        displayName: Aws Neuron Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws-neuron-operator
        links:
        - name: Aws Neuron Operator
          url: https://aws-neuron-operator.domain
        maintainers:
        - email: yshnaidm@redhat.com
          name: Yeggeny Shnaidman
        - email: shapirov@amazon.com
          name: Mikhail Shapirov
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/q5p6u7h8/neuron-openshift/operator:v0.1.1
        - quay.io/community-operator-pipeline-prod/aws-neuron-operator:0.0.3
        version: 0.0.3
      entries:
      - name: aws-neuron-operator.v0.0.3
        version: 0.0.3
      - name: aws-neuron-operator.v0.0.2
        version: 0.0.2
      - name: aws-neuron-operator.v0.0.1
        version: 0.0.1
      name: Fast
    - currentCSV: aws-neuron-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.aws/v1alpha1",
                "kind": "DeviceConfig",
                "metadata": {
                  "name": "device-config",
                  "namespace": "ai-operator-on-aws"
                },
                "spec": {
                  "customSchedulerImage": "public.ecr.aws/eks-distro/kubernetes/kube-scheduler:v1.32.9-eks-1-32-24",
                  "devicePluginImage": "public.ecr.aws/neuron/neuron-device-plugin:2.24.23.0",
                  "driversImage": "public.ecr.aws/q5p6u7h8/neuron-openshift/neuron-kernel-module:2.24.7.0",
                  "schedulerExtensionImage": "public.ecr.aws/neuron/neuron-scheduler:2.24.23.0",
                  "selector": {
                    "feature.node.kubernetes.io/aws-neuron": "true"
                  },
                  "useInTreeDrivers": false
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-10-27T12:17:40Z"
          description: AWS Neuron operator is resposible for deploying AWS Neuron
            kernel drivers, device plugin and customed scheduler
          operatorframework.io/suggested-namespace: ai-operator-on-aws
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DeviceConfig
            name: deviceconfigs.k8s.aws
            version: v1alpha1
        description: AWS Neuron operator is resposible for deploying AWS Neuron kernel
          drivers, device plugin and customed scheduler
        displayName: Aws Neuron Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws-neuron-operator
        links:
        - name: Aws Neuron Operator
          url: https://aws-neuron-operator.domain
        maintainers:
        - email: yshnaidm@redhat.com
          name: Yeggeny Shnaidman
        - email: shapirov@amazon.com
          name: Mikhail Shapirov
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/aws-neuron-operator:0.0.3
        - public.ecr.aws/q5p6u7h8/neuron-openshift/operator:v0.1.1
        version: 0.0.3
      entries:
      - name: aws-neuron-operator.v0.0.3
        version: 0.0.3
      - name: aws-neuron-operator.v0.0.2
        version: 0.0.2
      - name: aws-neuron-operator.v0.0.1
        version: 0.0.1
      name: Stable
    defaultChannel: Fast
    packageName: aws-neuron-operator
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OpenShift Database Access
      provider-url: ""
    name: dbaas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dbaas-operator.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSConnection",
                "metadata": {
                  "name": "dbaasconnection-example"
                },
                "spec": {
                  "databaseServiceID": "instance-example",
                  "databaseServiceType": "instance",
                  "inventoryRef": {
                    "name": "inventory-example",
                    "namespace": "openshift-dbaas-operator"
                  }
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSInstance",
                "metadata": {
                  "name": "dbaasinstance-sample"
                },
                "spec": {
                  "cloudProvider": "AWS",
                  "cloudRegion": "US_EAST_1",
                  "inventoryRef": {
                    "name": "inventory-example",
                    "namespace": "openshift-dbaas-operator"
                  },
                  "name": "my-cluster-free"
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSInventory",
                "metadata": {
                  "name": "inventory-example"
                },
                "spec": {
                  "credentialsRef": {
                    "name": "dbaas-vendor-credentials"
                  },
                  "providerRef": {
                    "name": "provider-example-registration"
                  }
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSPolicy",
                "metadata": {
                  "name": "dbaaspolicy-sample"
                },
                "spec": {
                  "disableProvisions": false
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSProvider",
                "metadata": {
                  "labels": {
                    "related-to": "dbaas-operator",
                    "type": "dbaas-provider-registration"
                  },
                  "name": "provider-example-registration"
                },
                "spec": {
                  "allowsFreeTrial": true,
                  "connectionKind": "ProviderConnection",
                  "credentialFields": [
                    {
                      "displayName": "ProviderAPIKeyD",
                      "helpText": "This is the API Key for the example provider to show on UI",
                      "key": "APIKey",
                      "required": true,
                      "type": "maskedstring"
                    }
                  ],
                  "externalProvisionDescription": "Follow the guide to start a free Provider Serverless (beta) cluster",
                  "externalProvisionURL": "https://www.exmample.com/docs/provider/quickstart.html",
                  "groupVersion": "dbaas.redhat.com/v1beta1",
                  "instanceKind": "ProviderInstance",
                  "inventoryKind": "ProviderInventory",
                  "provider": {
                    "displayDescription": "This is an example for providers on how to implement their operator to integrate with DBaaS.",
                    "displayName": "DBaaS Provider Example ",
                    "icon": {
                      "base64data": "SGVsbG8sIHdvcmxkLg==",
                      "mediatype": "image/png"
                    },
                    "name": "Provider Example"
                  },
                  "provisioningParameters": {
                    "cloudProvider": {
                      "conditionalData": [
                        {
                          "defaultValue": "GCP",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "FREETRIAL"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "Google Cloud Platform",
                              "value": "GCP"
                            }
                          ]
                        },
                        {
                          "defaultValue": "AWS",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "SERVERLESS"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "Amazon Web Services",
                              "value": "AWS"
                            },
                            {
                              "displayValue": "Google Cloud Platform",
                              "value": "GCP"
                            }
                          ]
                        },
                        {
                          "defaultValue": "AWS",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "Amazon Web Services",
                              "value": "AWS"
                            },
                            {
                              "displayValue": "Google Cloud Platform",
                              "value": "GCP"
                            }
                          ]
                        }
                      ],
                      "displayName": "Cloud Provider"
                    },
                    "dedicatedLocationLabel": {
                      "displayName": "Select regions \u0026 nodes",
                      "helpText": "Select the geographical region where you want the database instance to run, and set the number of nodes you want running in this dedicated cluster."
                    },
                    "hardwareLabel": {
                      "displayName": "Hardware per node",
                      "helpText": "Select the compute and storage requirements for this database instance."
                    },
                    "machineType": {
                      "conditionalData": [
                        {
                          "defaultValue": "m5.large",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "AWS"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "2 vCPU, 8 GiB RAM",
                              "value": "m5.large"
                            },
                            {
                              "displayValue": "4 vCPU, 16 GiB RAM",
                              "value": "m5.xlarge"
                            },
                            {
                              "displayValue": "8 vCPU, 32 GiB RAM",
                              "value": "m5.2xlarge"
                            },
                            {
                              "displayValue": "16 vCPU, 64 GiB RAM",
                              "value": "m5.4xlarge"
                            },
                            {
                              "displayValue": "32 vCPU, 128 GiB RAM",
                              "value": "m5.8xlarge"
                            }
                          ]
                        },
                        {
                          "defaultValue": "n1-standard-2",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "GCP"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "2 vCPU, 7.5 GiB RAM",
                              "value": "n1-standard-2"
                            },
                            {
                              "displayValue": "4 vCPU, 15 GiB RAM",
                              "value": "n1-standard-4"
                            },
                            {
                              "displayValue": "8 vCPU, 30 GiB RAM",
                              "value": "n1-standard-8"
                            },
                            {
                              "displayValue": "16 vCPU, 60 GiB RAM",
                              "value": "n1-standard-16"
                            },
                            {
                              "displayValue": "32 vCPU, 120 GiB RAM",
                              "value": "n1-standard-32"
                            }
                          ]
                        }
                      ],
                      "displayName": "Compute"
                    },
                    "name": {
                      "displayName": "Cluster name"
                    },
                    "nodes": {
                      "displayName": "nodes"
                    },
                    "plan": {
                      "conditionalData": [
                        {
                          "defaultValue": "SERVERLESS",
                          "options": [
                            {
                              "displayValue": "Free trial",
                              "value": "FREETRIAL"
                            },
                            {
                              "displayValue": "Serverless",
                              "value": "SERVERLESS"
                            },
                            {
                              "displayValue": "Dedicated",
                              "value": "DEDICATED"
                            }
                          ]
                        }
                      ],
                      "displayName": "Hosting plan"
                    },
                    "planLabel": {
                      "displayName": "Select a plan"
                    },
                    "regions": {
                      "displayName": "us-west-2"
                    },
                    "serverlessLocationLabel": {
                      "displayName": "Select regions",
                      "helpText": "Select the geographical region where you want the database instance to run."
                    },
                    "spendLimit": {
                      "conditionalData": [
                        {
                          "defaultValue": "0",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "SERVERLESS"
                            }
                          ]
                        }
                      ],
                      "displayName": "Spend limit"
                    },
                    "spendLimitLabel": {
                      "displayName": "Spend limit",
                      "helpText": "Set a spending limit on resources for this database instance."
                    },
                    "storageGib": {
                      "conditionalData": [
                        {
                          "defaultValue": "15",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "AWS"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "15 GiB",
                              "value": "15"
                            },
                            {
                              "displayValue": "35 GiB",
                              "value": "35"
                            },
                            {
                              "displayValue": "75 GiB",
                              "value": "75"
                            },
                            {
                              "displayValue": "150 GiB",
                              "value": "150"
                            },
                            {
                              "displayValue": "300 GiB",
                              "value": "300"
                            },
                            {
                              "displayValue": "600 GiB",
                              "value": "600"
                            }
                          ]
                        },
                        {
                          "defaultValue": "15",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "GCP"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "15 GiB",
                              "value": "15"
                            },
                            {
                              "displayValue": "35 GiB",
                              "value": "35"
                            },
                            {
                              "displayValue": "75 GiB",
                              "value": "75"
                            },
                            {
                              "displayValue": "150 GiB",
                              "value": "150"
                            },
                            {
                              "displayValue": "300 GiB",
                              "value": "300"
                            },
                            {
                              "displayValue": "600 GiB",
                              "value": "600"
                            }
                          ]
                        }
                      ],
                      "displayName": "Storage"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Database
          containerImage: quay.io/ecosystem-appeng/dbaas-operator:v0.5.0
          description: Discover & connect with database instances hosted on 3rd-party
            ISV cloud platforms.
          operatorframework.io/suggested-namespace: openshift-dbaas-operator
          operators.operatorframework.io/builder: operator-sdk-v1.22.2
          operators.operatorframework.io/internal-objects: '["dbaasconnections.dbaas.redhat.com","dbaasproviders.dbaas.redhat.com","dbaasplatforms.dbaas.redhat.com","dbaasinstances.dbaas.redhat.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/RHEcosystemAppEng/dbaas-operator
          support: rhoda-requests@redhat.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DBaaSConnection
            name: dbaasconnections.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSConnection defines the schema for the DBaaSConnection
              API.
            displayName: DBaaSConnection
            kind: DBaaSConnection
            name: dbaasconnections.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSInstance
            name: dbaasinstances.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSInstance defines the schema for the DBaaSInstance API.
            displayName: DBaaSInstance
            kind: DBaaSInstance
            name: dbaasinstances.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSInventory
            name: dbaasinventories.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSInventory defines the schema for the DBaaSInventory
              API. Inventory objects must be created in a valid namespace, determined
              by the existence of a DBaaSPolicy object.
            displayName: Provider Account
            kind: DBaaSInventory
            name: dbaasinventories.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSPlatform
            name: dbaasplatforms.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSPlatform defines the schema for the DBaaSPlatform API.
            displayName: DBaaSPlatform
            kind: DBaaSPlatform
            name: dbaasplatforms.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSPolicy
            name: dbaaspolicies.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSPolicy enables administrative capabilities within a
              namespace, and sets a default inventory policy. Policy defaults can
              be overridden on a per-inventory basis.
            displayName: Provider Account Policy
            kind: DBaaSPolicy
            name: dbaaspolicies.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSProvider
            name: dbaasproviders.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSProvider defines the schema for the DBaaSProvider API.
            displayName: DBaaSProvider
            kind: DBaaSProvider
            name: dbaasproviders.dbaas.redhat.com
            version: v1beta1
        description: |
          The OpenShift Database Access Operator enables OpenShift users to discover & connect with database instances
          hosted on 3rd-party ISV cloud platforms such as CrunchyData Bridge & CockroachCloud.

          ## Feedback & Support

          Please contact us at [rhoda-requests@redhat.com](mailto:rhoda-requests@redhat.com)

          For more information on how to use our service, please refer to our [Quick Starts](quickstart?keyword=database).
        displayName: OpenShift Database Access Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rhoda
        - oda
        - dbaas
        - database
        - db
        - data
        - access
        - crunchy
        - bridge
        - cockroach
        - cockroachdb
        - cloud
        - ack
        - amazon
        - rds
        - relational
        links:
        - name: GitHub
          url: https://github.com/RHEcosystemAppEng/dbaas-operator
        maintainers:
        - email: ecosystem-appeng@redhat.com
          name: Red Hat Ecosystem App Engineering
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: OpenShift Database Access
        relatedImages:
        - quay.io/ecosystem-appeng/dbaas-dynamic-plugin:0.5.0
        - quay.io/ecosystem-appeng/dbaas-operator:v0.5.0
        - quay.io/ecosystem-appeng/rds-dbaas-operator-catalog:v0.4.0
        - quay.io/openshift-community-operators/dbaas-operator@sha256:b2474b569406fb0f47a7042042429bbc5cd2edbbd119e701c6f440a139e1b3ac
        - quay.io/openshift/origin-kube-rbac-proxy:4.10.0
        - registry.developers.crunchydata.com/crunchydata/crunchy-bridge-operator-catalog:v0.0.6
        - gcr.io/cockroach-shared/ccapi-k8s-operator-catalog:v0.0.5
        version: 0.5.0
      entries:
      - name: dbaas-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: dbaas-operator
    provider:
      name: OpenShift Database Access
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EPAM Delivery Platform
      provider-url: https://epam.github.io/edp-install/
    name: sonar-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sonar-operator.v3.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "Sonar",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonar-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonar",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonar-sample"
                },
                "spec": {
                  "defaultPermissionTemplate": "edp-default",
                  "secret": "sonar-secret",
                  "settings": [
                    {
                      "key": "sonar.global.exclusions",
                      "values": [
                        "**/*.jsx",
                        "**/*.tsx"
                      ]
                    },
                    {
                      "fieldValues": {
                        "beginBlockRegexp": ".*",
                        "endBlockRegexp": ".*"
                      },
                      "key": "sonar.issue.ignore.block"
                    },
                    {
                      "key": "sonar.dbcleaner.hoursBeforeKeepingOnlyOneSnapshotByDay",
                      "value": "20"
                    }
                  ],
                  "url": "https://example.com"
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarGroup",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonargroup-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonargroup",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonargroup-sample"
                },
                "spec": {
                  "description": "Developers",
                  "name": "sonar-developers",
                  "permissions": [
                    "admin"
                  ],
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarPermissionTemplate",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonarpermissiontemplate-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonarpermissiontemplate",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonarpermissiontemplate-sample"
                },
                "spec": {
                  "default": true,
                  "description": "EDP permission templates",
                  "groupsPermissions": {
                    "sonar-developers": [
                      "scan"
                    ],
                    "sonar-users": [
                      "issueadmin"
                    ]
                  },
                  "name": "edp-default",
                  "projectKeyPattern": ".+",
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarQualityGate",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonarqualitygate-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonarqualitygate",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonarqualitygate-sample"
                },
                "spec": {
                  "conditions": {
                    "new_duplicated_lines_density": {
                      "error": "1",
                      "op": "GT"
                    }
                  },
                  "default": true,
                  "name": "sonarqualitygate-sample",
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarQualityProfile",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonarqualityprofile-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonarqualityprofile",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonarqualityprofile-sample"
                },
                "spec": {
                  "default": true,
                  "language": "go",
                  "name": "sonarqualityprofile-sample",
                  "rules": {
                    "go:S1151": {
                      "params": "max=\"6\"",
                      "severity": "MAJOR"
                    }
                  },
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarUser",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonaruser-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonaruser",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonaruser-sample"
                },
                "spec": {
                  "email": "sonaruser@mail.com",
                  "groups": [
                    "sonar-administrators"
                  ],
                  "login": "sonaruser",
                  "name": "sonar user",
                  "permissions": [
                    "scan"
                  ],
                  "secret": "sonaruser-secret",
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Developer Tools
          containerImage: docker.io/epamedp/sonar-operator:3.1.0
          createdAt: "2023-09-08T12:53:57Z"
          description: An Operator for managing Sonar entities.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/epam/edp-sonar-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonarGroup is the Schema for the sonar group API.
            displayName: Sonar Group
            kind: SonarGroup
            name: sonargroups.edp.epam.com
            version: v1alpha1
          - description: SonarPermissionTemplate is the Schema for the sonar permission
              template API.
            displayName: Sonar Permission Template
            kind: SonarPermissionTemplate
            name: sonarpermissiontemplates.edp.epam.com
            version: v1alpha1
          - description: SonarQualityGate is the Schema for the sonarqualitygates
              API
            displayName: Sonar Quality Gate
            kind: SonarQualityGate
            name: sonarqualitygates.edp.epam.com
            version: v1alpha1
          - description: SonarQualityProfile is the Schema for the sonarqualityprofiles
              API
            displayName: Sonar Quality Profile
            kind: SonarQualityProfile
            name: sonarqualityprofiles.edp.epam.com
            version: v1alpha1
          - description: Sonar is the Schema for the sonars API.
            displayName: Sonar
            kind: Sonar
            name: sonars.edp.epam.com
            version: v1alpha1
          - description: SonarUser is the Schema for the sonarusers API
            displayName: Sonar User
            kind: SonarUser
            name: sonarusers.edp.epam.com
            version: v1alpha1
        description: |
          Sonar Operator is an operator that is responsible for establishing
          a connection to provided SonarQube server, reconciling Sonar entities (users,
          groups, permission templates, etc) according to the created CRs.
        displayName: EDP Sonar Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - analysis
        - automation
        - code
        - continuous
        - devops
        - edp
        - inspection
        - metrics
        - metrics
        - monitoring
        - operator
        - quality
        - security
        - software
        - static
        - technical
        - vulnerabilities
        links:
        - name: Sonar Operator
          url: https://github.com/epam/edp-sonar-operator
        maintainers:
        - email: SupportEPMD-EDP@epam.com
          name: epmd-edp
        maturity: alpha
        provider:
          name: EPAM Delivery Platform
          url: https://epam.github.io/edp-install/
        relatedImages:
        - docker.io/epamedp/sonar-operator:3.1.0
        - quay.io/openshift-community-operators/sonar-operator@sha256:5e7a87f52955162f090c1d7fc69f6d0917444b553355a11c061ab60f289a17d7
        version: 3.1.0
      entries:
      - name: sonar-operator.v3.1.0
        version: 3.1.0
      name: alpha
    defaultChannel: alpha
    packageName: sonar-operator
    provider:
      name: EPAM Delivery Platform
      url: https://epam.github.io/edp-install/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Opstree Solutions
      provider-url: ""
    name: redis-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: redis-operator.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"Redis","metadata":{"name":"redis"},"spec":{"mode":"cluster","size":3,"global":{"image":"quay.io/opstree/redis:v6.2","imagePullPolicy":"IfNotPresent","password":"Opstree@1234","resources":{"requests":{"cpu":"100m","memory":"128Mi"},"limits":{"cpu":"100m","memory":"128Mi"}}},"master":{"service":{"type":"ClusterIP"},"redisConfig":{}},"slave":{"service":{"type":"ClusterIP"},"redisConfig":{}},"service":{"type":"ClusterIP"},"redisConfig":{},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:1.0","imagePullPolicy":"Always","resources":{"requests":{"cpu":"100m","memory":"128Mi"},"limits":{"cpu":"100m","memory":"128Mi"}}},"storage":{"volumeClaimTemplate":{"spec":{"storageClassName":"buildpiper-storage","accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}}}}]'
          capabilities: Seamless Upgrades
          categories: Database, Storage
          certified: "false"
          containerImage: quay.io/opstree/redis-operator:v0.4.0
          createdAt: 06-02-2021
          description: A Golang based redis operator that will make/oversee Redis
            standalone/cluster mode setup on top of the Kubernetes.
          repository: https://github.com/ot-container-kit/redis-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Redis
            displayName: Redis
            kind: Redis
            name: redis.redis.redis.opstreelabs.in
            version: v1beta1
        description: |+
          A Golang based redis operator that will make/oversee Redis standalone/cluster mode setup on top of the Kubernetes. It can create a redis cluster setup with best practices on Cloud as well as the Bare metal environment. Also, it provides an in-built monitoring capability using redis-exporter.

          ### Supported Features

          Here the features which are supported by this operator:-
          - Redis cluster/standalone mode setup
          - Inbuilt monitoring with prometheus exporter
          - Dynamic storage provisioning with pvc template
          - Resources restrictions with k8s requests and limits
          - Password/Password-less setup
          - Node selector and affinity
          - Priority class to manage setup priority
          - SecurityContext to manipulate kernel parameters
          ### Documentation

          [Documentation](https://docs.opstreelabs.in/redis-operator/)

          ### Getting Help

          This project is managed by OpsTree Solutions. If you have any queries or suggestions, mail us at opensource@opstree.com.

          ### Contributing

          You can contribute to this project by:-
          - Raising Bugs and Feature Requests
          - Fixing issue by opening a Pull Request
          - Improving Documentation

          ### License

          Logging Operator is licensed under [Apache License, Version 2.0](https://github.com/OT-CONTAINER-KIT/redis-operator/blob/master/LICENSE)


        displayName: Redis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Database
        - Redis
        - Opstree
        - CRD
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://docs.opstreelabs.in/redis-operator/
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep Rawat
        maturity: beta
        minKubeVersion: 1.11.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/opstree/redis-operator:v0.4.0
        - quay.io/openshift-community-operators/redis-operator@sha256:21f4648e0e71b33ef24b4921ab34b9e2b5e90eac25ade735d51331ac4f7c4cf3
        version: 0.4.0
      entries:
      - name: redis-operator.v0.4.0
        version: 0.4.0
      - name: redis-operator.v0.3.0
        version: 0.3.0
      name: preview
    - currentCSV: redis-operator.v0.15.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"RedisCluster","metadata":{"name":"redis-cluster"},"spec":{"clusterSize":3,"clusterVersion":"v7","securityContext":{"runAsUser":1000,"fsGroup":1000},"persistenceEnabled":true,"kubernetesConfig":{"image":"quay.io/opstree/redis:v7.0.5","imagePullPolicy":"IfNotPresent"},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:v1.44.0","imagePullPolicy":"IfNotPresent"},"storage":{"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}}}},{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"Redis","metadata":{"name":"redis-standalone"},"spec":{"kubernetesConfig":{"image":"quay.io/opstree/redis:v7.0.5","imagePullPolicy":"IfNotPresent"},"storage":{"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:v1.44.0","imagePullPolicy":"IfNotPresent"},"securityContext":{"runAsUser":1000,"fsGroup":1000}}},{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"RedisSentinel","metadata":{"name":"redis-sentinel"},"spec":{"clusterSize":3,"podSecurityContext":{"runAsUser":1000,"fsGroup":1000},"redisSentinelConfig":{"redisReplicationName":"redis-replication"},"kubernetesConfig":{"image":"quay.io/opstree/redis-sentinel:v7.0.7","imagePullPolicy":"IfNotPresent","resources":{"requests":{"cpu":"101m","memory":"128Mi"},"limits":{"cpu":"101m","memory":"128Mi"}}}}},{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"RedisReplication","metadata":{"name":"redis-replication"},"spec":{"clusterSize":3,"kubernetesConfig":{"image":"quay.io/opstree/redis:v7.0.5","imagePullPolicy":"IfNotPresent"},"storage":{"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:v1.44.0","imagePullPolicy":"Always"},"podSecurityContext":{"runAsUser":1000,"fsGroup":1000}}}]'
          capabilities: Seamless Upgrades
          categories: Database, Storage
          certified: "false"
          containerImage: quay.io/opstree/redis-operator:v0.15.1
          createdAt: 24-09-2023
          description: A Golang based redis operator that will make/oversee Redis
            standalone/cluster mode setup on top of the Kubernetes.
          repository: https://github.com/ot-container-kit/redis-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Redis Cluster
            displayName: RedisCluster
            kind: RedisCluster
            name: redisclusters.redis.redis.opstreelabs.in
            version: v1beta1
          - description: Redis Replication
            displayName: RedisReplication
            kind: RedisReplication
            name: redisreplications.redis.redis.opstreelabs.in
            version: v1beta1
          - description: Redis Sentinel
            displayName: RedisSentinel
            kind: RedisSentinel
            name: redissentinels.redis.redis.opstreelabs.in
            version: v1beta1
          - description: Redis
            displayName: Redis
            kind: Redis
            name: redis.redis.redis.opstreelabs.in
            version: v1beta1
        description: "A Golang based redis operator that will make/oversee Redis\nstandalone/cluster
          mode setup on top of the Kubernetes. It can create a\nredis cluster setup
          with best practices on Cloud as well as the Bare metal\nenvironment. Also,
          it provides an in-built monitoring capability using\nredis-exporter.\n\nOrganizations
          that are using Redis Operator to manage their redis workload \ncan be found
          here. If your organization is also using Redis Operator, please \nfree to
          add by creating a PR https://github.com/OT-CONTAINER-KIT/redis-operator/pulls.\n\nThis
          operator only supports versions of redis =>6.\n\n### Supported Features\n\nHere
          the features which are supported by this operator:-\n- Redis cluster and
          standalone mode setup\n- Redis cluster failover and recovery\n- Redis leader
          and follower setup with Sentinel for High Availability\n- Inbuilt monitoring
          with redis exporter\n- Password and password-less setup of redis\n- TLS
          support for additional security layer\n- Ipv4 and Ipv6 support for redis
          setup\n- External configuration support for leader and follower\n- Detailed
          monitoring grafana dashboard\n\n### Documentation\n\n[Documentation](https://ot-redis-operator.netlify.app/)\n\n###
          Getting Help\nThis project is managed by OpsTree Solutions. If you have
          any queries or\nsuggestions, mail us at opensource@opstree.com.\n\n### Contributing\n\nYou
          can contribute to this project by:-\n- Raising Bugs and Feature Requests\n-
          Fixing issue by opening a Pull Request\n- Improving Documentation\n\n###
          License\n\nLogging Operator is licensed under [Apache License, Version\n2.0](https://github.com/OT-CONTAINER-KIT/redis-operator/blob/master/LICENSE)\n"
        displayName: Redis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Database
        - Redis
        - Opstree
        - CRD
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://ot-redis-operator.netlify.app/
        - name: Buildpiper
          url: https://buildpiper.io
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep Rawat
        maturity: beta
        minKubeVersion: 1.20.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/openshift-community-operators/redis-operator@sha256:2ed6bfdf37e36c63cde3633443553dee410201200ad351e6d91a5651f8e20ecc
        - quay.io/opstree/redis-operator:v0.15.1
        version: 0.15.1
      entries:
      - name: redis-operator.v0.15.1
        version: 0.15.1
      - name: redis-operator.v0.15.0
        version: 0.15.0
      - name: redis-operator.v0.14.0
        version: 0.14.0
      - name: redis-operator.v0.13.0
        version: 0.13.0
      - name: redis-operator.v0.8.0
        version: 0.8.0
      - name: redis-operator.v0.6.0
        version: 0.6.0
      - name: redis-operator.v0.5.0
        version: 0.5.0
      - name: redis-operator.v0.4.0
        version: 0.4.0
      - name: redis-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: redis-operator
    provider:
      name: Opstree Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: node-maintenance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-maintenance-operator.v5.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodemaintenance.medik8s.io/v1beta1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "nodeName": "node02",
                  "reason": "Test node maintenance"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: ""
          createdAt: "2025-11-03 11:08:50"
          description: Node Maintenance Operator for cordoning and draining nodes.
          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: "true"
          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.skipRange: '>=5.4.0 <5.5.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-maintenance-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.nodemaintenance.medik8s.io
            version: v1beta1
        description: |
          Node Maintenance Operator (NMO)

          This operator will keep nodes cordoned and drained while a matching NodeMaintenance (nm) custom resource exists.
          This is useful when investigating problems with a machine, or performing an operation on the underlying machine that might result in node failure.
        displayName: Node Maintenance Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - Node-maintenance
        - nmo
        links:
        - name: Node Maintenance Operator
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance/node-maintenance-operator
        - name: Source Code
          url: https://github.com/medik8s/node-maintenance-operator
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: beta
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/workload-availability/node-maintenance-operator-bundle@sha256:6cefc4f419229dbdd5677dd2e672201941117ee52cff715754db2dfd5607dd54
        - registry.redhat.io/workload-availability/node-maintenance-rhel9-operator@sha256:fb1ba771e3a1bbcc635ea0209bc7365b23744744a39e2134266b4e5c3a23573b
        version: 5.5.0
      entries:
      - name: node-maintenance-operator.v5.5.0
        version: 5.5.0
      - name: node-maintenance-operator.v5.4.1
        version: 5.4.1
      - name: node-maintenance-operator.v5.4.0
        version: 5.4.0
      name: stable
    defaultChannel: stable
    packageName: node-maintenance-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: serverless-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: serverless-operator.v1.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>1.36.1 <1.37.0'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel9@sha256:591bc064b99356334b7b53c56e2b14538dd8747577127b37fcffadbbd5df4498
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel9@sha256:052fe86c647d1ebedba9dbe1054c3d94fd7b02bb9670837e434549c5a7544e37
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel9@sha256:abe431c9d7390e6e3032c3ac74532b8162564729be7e5a6bca70c3d2374a3437
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:f64b1bf7dca0906dfa673ae299a2d965527c1c7a714020d046dad277d329f965
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel9@sha256:6886795e240a9d602a3f68c910f543b5f4c7874ede3bc3e229182d77d509e294
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel9@sha256:d9a299304e810eeef13adc7bdac4cad7a6fe80a9e18fa3ce93a2796f0586323b
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel9@sha256:8c4cd89255e0424249cbadc7f77ad0cbee43d7b9fe3cfb67b4ef63ab3fa827f6
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel9@sha256:4a7848b64e1bacadf5205de9a0fd64437c8b7dcf86959dc1095e12d873a4610a
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel9@sha256:615627148f347917a6214b3e036e201d7d23a119445d8b19dfefdde9647546d6
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel9@sha256:43856ee2f87c7ce642b998c48405785a5f940cda17f9f1afbbe626f7f860394c
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel9-operator@sha256:23e10eb061828568dc06cf4d4b3485e8fbd5fe8b711b2424ea954b7e1dd2534f
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel9@sha256:50293c7fe9b2bc102e9eb9a57fa97bf6d6ee7c3334866217aa6debf3fb77e7ec
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel9@sha256:dffaac938538b6a28306e8d3a444ff6c794d50501dfcfb742c7e99558c71296a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel9@sha256:04d23df5bec13af304cf718e66f65d198a5d1d29e022db536b96c9a7f7817a34
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        version: 1.37.0
      entries:
      - name: serverless-operator.v1.37.0
        version: 1.37.0
      - name: serverless-operator.v1.36.1
        version: 1.36.1
      - name: serverless-operator.v1.36.0
        version: 1.36.0
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable
    - currentCSV: serverless-operator.v1.29.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2023-07-28T05:42:31Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          olm.skipRange: '>=1.29.0 <1.29.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of a particular version of Knative
              Serving
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Eventing
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Kafka components
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:f37f494956adf0892ffca34d2a4c9b839ce28dc9f2779ca32e8801fb4f0e9105
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:216f58dc8c8166c0c69fc0312b667daad14cf39b7aeb7bc0fe1e313376f1a5fd
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:fd86ea2a34de43014dea3ba2b8d705a3d94347d3a24a370a8bfd032ed239dc56
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:b780634fffe2257eb845f8c1d25498d9c654d0327c1f8841b40d90c176a2bfe0
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:03a3d6f0314acf4da4f3d3d85f1e273a3ef25828d28f5b22f394441d55a645f3
        - registry.redhat.io/ocp-tools-4-tech-preview/source-to-image-rhel8@sha256:98d8cb3a255641ca6a1bce854e5e2460c20de9fb9b28e3cc67eb459f122873dd
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:04866e16881f64ff2b5edd379eab0731c9d66a47c25ebfe79c8d8ad33d8116e6
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:61fb98802490323bb03ff4a7060334d8fbda9e9f95cd6366b29b1b6494e4ef8b
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:4408d1fcf34c0ffe9327d4c9c0bc772afa969d831bc5de1097164d10b4e8d900
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:16b39335e97bcc7c970a8ba385c61d8333e9912faaee813ccf8520d434b7bb7a
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:3d7801f7ffe6420595779673a170235921a9090333f8ca51d5b7f664e19c82b2
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:aea5f200a845e1d4dc718d76465fdbb1eeac2b20ecae224d5d20a98214ad0357
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ad399867cbb712111db6affaf5c9e3573699ed0eb0def8ce6057de02054ced4f
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:8273842d8e1714fa03c7e0809924b1ffc5ef282f79b9606bd8ac88c03e7a16bd
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:3b7449287adf98f0cf0a1dc74e03b69218be3bcf5538327bc34ef776cc1c69c4
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a10e76aa15707e708f82c8d9e8b5179bf67780d99f3c3e2e99b84ae2a0aa4ecb
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:10788ca67809e5a2d76d6d72df7dd64ea4407773999707a7681e0cf1b5c4695f
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:a59ba5aeb8e66db3d8ba9074b8e553603c59e6b0e35b57b82c4ce3de589b94cc
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:7dd11d385b3d5a178566d901650ecd45e4af395faec2141d57b98af8fc1e5151
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:594c3ac24bf59802e2d3fa127e4051277bc07b6444f934f535fddeb668ccc144
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:de0634d14962bdb8701a8c29e80b7b70684824462bc5203e5fa7f139839cb73b
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:3aab995872336e6ccb590ef6488c097cff38a91348055031145427a00aa6b732
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:c4cff5ad5b0ac79e71a16b88640a312ab320817041317f50caf575f7e12a864e
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:a3c5d5fd8014c432830be912aedebbc58f9c60a8cabd87ae6c42c7b8d27db8f9
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:e5db11a0adb889f907cad797dad9cf2de09c433e5522fa333193cb35575802d8
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:56e48afb1dcbf4e266ace944105f3c45042550d8d4a0528c982225a793d26d56
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:b520305189c7567b2f8ac867b20468259fb22cd3edc5b4576af2bfcdb0c11855
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:31d45f10a8519addec9aac115c5edc8a2e14f9621c875d95f123d1291776ef4b
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:fe916630003194dbcd3894dd880cad8b15a041a5e534cd8f76fde6296db00797
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:a4943c0563c45ceccfda0a01e26be3a01c1437c89d927714c577bf6060495958
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:397eb425f383c1273c7976bea69a603530676a00a61f461ceb5f48d67901c4cd
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:ab90ec9b3cd9203fdcdd7c43abf95f48c9d7479a9c7af479eb1e4b6599ba9642
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c2cb80bce34a74afa76151d2b44dc25ece73fb274cdfc6fdf243b1b0cb7d989f
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:6342358e6aed2339333ebf37fc223a41a0a3e199a0e4a840f3f66e5accf8f233
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:0229a0a4f026f04f8fa0a1cd8e7afea10117fe3f12e21986ec6089769c8afcaf
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c12c471902b8e2596588d9e553ad59b501d979dd04f301d45f7d45e794737a8c
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:557e73127326be051aa6257e7daeb9721e2af04d2f06cc26cfc7a1073666b989
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:bd134e64c156dc5c81d14522c9c9efcc1f56b2e972ac8ecb1bb1b130c76adc60
        version: 1.29.1
      entries:
      - name: serverless-operator.v1.29.1
        version: 1.29.1
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.29
    - currentCSV: serverless-operator.v1.30.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2023-10-30T14:03:25Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          olm.skipRange: '>=1.30.0 <1.30.2'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of a particular version of Knative
              Serving
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Eventing
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Kafka components
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c933641efc6bf919b1945be5a01dfb7774ae865975b1bb1f44653b3e4ca9f1f
        - registry.redhat.io/ocp-tools-4-tech-preview/source-to-image-rhel8@sha256:98d8cb3a255641ca6a1bce854e5e2460c20de9fb9b28e3cc67eb459f122873dd
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:124087e6402caa375b24b976c3b9fd7d53890e20ac3b0b57ba3ac646e352c7ce
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:e8c756b659f6187790bc1a5115e0f71791bff96630859a905bc5b75d14596e0e
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3fb6e7626d2b0c92c2a2fef35e9b8171382b4bdf54393f2ab1281ae7ab441761
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:a9c95fc208cc03625cf49bcebdaac73da823d1fa3bfae4239d7db20d3a0b8723
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:ce4b36c90955a356a5774410356aafdac2b60795526a3488b0b76ac2ec1a018c
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:e97eb2bb7eb529cbfe67c14e823ffa1269d614e2d35723896e89efa12a499c6a
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:1455606c8edf611d996a48e29ead53e0bb4078f55384b7689058bb25fc59fb2c
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c9353a022e6f883b7c0b2d87b1bc4653172feb13806ebf0aa075d6f9f43c264e
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:e9505aba7c44cffc3f261a5dc7617a0e54ed98e78f73ea3c9c7a508560b792ed
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:9a28cb1d4c4f4dd7d494829eeeb7122db2174a27747f915244672c95dc8f9d12
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:2d3e314a6584fc6974517c1a992fb59f5133f54c2f6cfaa42f579c0d332e0300
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:6057a2d18406e00b0b7b1731870f707844e39193d4cce6de50137b77f17d220b
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:3c8bf480dbb05e09e8d07cab12e4736643f61bf9b5d98efa6bc0557eb31887bc
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:06e9e073f092dce67d4227e282fd8eea6dc9f38b90a8d444cf448d80d027b616
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:12bc62246142a605f4efed0f6bb8843aa2df7699cc1c5ab53debb94b0682e9d1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:53d3620bb0490d83aaf6a356bb7d3b9e7147222d1a2017f8317f05fa90cd3de9
        - registry.redhat.io/ubi8/python-39@sha256:0ff58549041d32b685cc850aaa85da32d1ef73f99cd4b6e0f6882dad5f0399bf
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d03f2bf8f5e7cba47102ba26ea0149ae6719076c645d5e451058392d6044b738
        - registry.redhat.io/openshift-serverless-1-tech-preview/eventing-istio-controller-rhel8@sha256:b6ef281fca2b80d379b1e28fe3f23119df8ff765fb2cca291d514053fb512da6
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ef116868c9c60e5ee246060688da49832571ff6a7901cfe143a42d048743736e
        - registry.redhat.io/ubi8/nodejs-16@sha256:8abeddc6ccfffbe313f87e5e069e18cb7047f2c7880ad63cf15bcd0a79ba71ff
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:01c8fee92889a84a19136b0843e4fed5db31c1f2a6d997669f103373fd995e36
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:a0c5a91348ec71697747113990652feb024143fbbd0cdd67e8ae672730383a79
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:3508434d5ab6b38c8a7466256f1158ebcd75e8b751afcc5255da8c21566804f0
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:cd1abeb2067afa44a0f1eca301cce37307582d56c1147820ff86b9b64a40588b
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:51ac9aced282f62c8fb2d3696da3696b8496d8f877e9846fe3a4a743ccd63bea
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:66149df8549380673c24e1487d0c2c8eb638b7e502455671ca64ed6f32ff82c3
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:69ea22c646c09208ca68345d4b3508453d8c49f7f7fd9a4ff4c4cb78be7bff43
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:a5154f9d13a1c373b8ba47e2bcfb9d4474fd03e08db4134c92aa4f049536f1a8
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:21a638b481639c3c58e8b026d875917c30a5874b08fa4ceac40d447076b2bfa4
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:96d6f52711ba433ab2f273be8080840a88e626e989027480424d19c2fe1e9454
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:92a39ca90984cebb1938447a31c9170b52994ae98f83caa860acdb2c3ebb75c7
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:32445e4a73bc7c1e8007775adeb147175d934b17e7d3d4dcf422104dbe80a52b
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:2264d2cd4ee2a720667d625ff42b6f8be4f2cd65b57a91eb6044da086a110740
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:1f7e65009168383cdcb6b2caa22fe4db49e03c71574973a8086f6c332dc5e26e
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:96c135ced2e3bff434addb012368d96d0778ef1d294ba507ae7e624811e20d46
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:85a369d5696771d0932b61760336e52ae3f7c66f9a3def5312aefcac03ba516e
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:16939b802f4c16a3d9d941917d0363325f40cdef28f6e1a982bc95401117674c
        - registry.redhat.io/ubi8/openjdk-17@sha256:af305e087061cbaa4107ce0b304a1ef987f6b54bae3f75bfd529cfd084cba9b5
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:4800c85e8de031bf77f6fae0e4c8e6c1a9912ccdfb77799cc2ea574c37d870ac
        version: 1.30.2
      entries:
      - name: serverless-operator.v1.30.2
        version: 1.30.2
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.30
    - currentCSV: serverless-operator.v1.31.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-02-01T19:15:42Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          olm.skipRange: '>=1.31.0 <1.31.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c078071cd51c7fd5584039b54a2004331c05a897ee8b0689bfcb9204a8ebae80
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:3be4fc173b489d0beb768739f60274e07d95ffee86d70a8423e1f59678c805ea
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:63e08279d2852d494d4f8836c54e2ce942a342f452a23ef437df9640bb2f5bc9
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:eacdad8db61b23634c3f89bffa3f1c30ac5c7bbb5e938c6208003ff00f9595f1
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:d8bdd96c6a9b31f48c961ca438c254511db785fd34bd10b98084b702baf0ebab
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:486bf60d17a5d265ebd65d590a6ee1a7e13bf3953ea797b2f6c2b5910789858f
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:dbd9c0cac86f79b8d91ab65ae7543854144781d4cb17ef16183931ec9bc234a7
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:8353ccb4f0d70597d61e4fd1f799d4bb74e5bc038f6b9916059e712aa70b97c1
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:bf693eaa845373e1a06041626a9314ec00519a6fd2437b12f7f4f3f104864039
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:af5c30fc9f631d9ed110641b815315d8b4aef539f687277a3821d9939ca5dd46
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:99f5dcb92a33c047f0b68236a3a42ffaec78037dd0a5eb79d1144d62d6bfcf43
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:887480662b1bfe09626fbca8ec7c5da879d097c46dca11764ea98474ec78ab5d
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:3181ad775ead55f317f96466c2719b2b73c5b35d31933733da21273955d160c4
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:9221a833ecc66fe2354aee7aaec2a2470b21e2d89cb6ed287ece32edab2a2edb
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:d2a34100f6309c3cbac7c9ccd452b7bdab2a533afc99463bfbf91e3ba2706d54
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3b01ebdb0704dc6a1a993ac076819489495ab3fe32e3c14609e42d1358856be2
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:ef7d28580e75d746449a90cc0e5343ef3f4ddd75bd9fb866d97836bfbc3b314d
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:e49220eaf3143a8958f0cb1f22115b2e834fb7177755433bdc592b753a54a8ec
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:3dab790fa845ed7eda088e5abdc87799da1354884a53ff1ff728739b8e278418
        - registry.redhat.io/ubi8/nodejs-16@sha256:f90b28179d1d5de68d42ef1a9166d70a9dfea85a1c6a4bf12dce2c59eeb2fbb1
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:0a2989f688b966277652957b312df736ada43fff78fd89b17f60b2137e38f115
        - registry.redhat.io/ubi8/python-39@sha256:4f35cbcc6f4e108c69f7d2b70cce5afb138741b0c961506376d524e001b922f4
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:565becc77dbe3bf03d89b1399d6e1853253276a71e80b6b14069285d03cb14b2
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:677be039353b2cee51d5faa5d5a2abd6a7bd46992ffe9521eb033eea9925c785
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:b2480154951109a159acfb88c5472a312a515d6a6b060d832b3f7bfc16f90ac5
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:3a4e7412322755b4c278540c965a403f9e178f138bd4ad7929c1c24a8036dd14
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:22ffe08d6a0d5461158613f2b2a2ac6936025357e282a09197a750c42b5e6922
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:a82288782b61ea46d068cc09ee10608d3201c136abfc767e4d37734775101390
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:9e120ecdbea54eecbc5e0412c1774f8a2ee70d7fca682ecd0757b8627f70680b
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:7941b421b3e18bda8c565305241621fcdf1212cbbe0dc02f38f4ab0565d2bfcb
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b37dd2cf4b459fecb6d681cac36918e486c3bd22501df50b90e20b15fe164d56
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1-tech-preview/eventing-istio-controller-rhel8@sha256:5b38e5c71e422161e40f9c37dd2f46212cb80e8e37b00247767276b957080397
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:cda04e3b7c2c1f37164733ad162ea0c4e52f14fdc8eb8bdef8507f0ed5454640
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:1ee675125f7141e91f4ee57ebce082967834bbdabe1a870c221f31aeb8750be4
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:433821e6c7f43da5ca2e38c0550722feb179a0bab021decd9a97ad020cb78b76
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:df1aee67a161fa19d7f49ba56d53e0682cc1996436e985a12a2068fa419b54ea
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:1fcecc11b55007b9c6969a24940a391968378e4102eebf7ceabbe7efda138575
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:2572d98363cca2dd94984d6cefa573c5054fc206ee70048f901ad4b846d8dd52
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:80361e052d366ffffe9a99893cd83965bd69a9ff81d8c9262976de145bbc6184
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:de62762efa0df95ed23df56f5520490d8a231e47ce13c433c512254ceff81844
        version: 1.31.1
      entries:
      - name: serverless-operator.v1.31.1
        version: 1.31.1
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.31
    - currentCSV: serverless-operator.v1.32.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-08-01T10:56:58Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.32.0 <1.32.2'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:16c026f09b377c44253cdb902b9a5fa0ae766fd0185cca1863798a212e0daee1
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:2f0f84767f7d76dbbf4387ca2e272766267a2c46b5bc29f5d01f05dfa39cb944
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:14ca32e999767776c3e585ff5eb1aa568f7d76fd3e5ae24cae05ce7564678080
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:e1e2273fdf6384d95e1128e54c0794d7d620291a272bfb1f91e0c2723be7f1b7
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:2a30ae808d5c32d812406ff4ac9b472e82b6bb0555e62eee4c2c6a972f8750c2
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:22b4d47725ed8cdd663ee26a03f31198fff9e71dc703532e70c42bdfb4840811
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:828d31bf8a441091b8aed03da213a6b4ffae260070eff58c3319156f9bf04f5a
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:e7e6cbb46720eeca3f0f4b9829dfeeb3db373a83c89cd808b667ded4d5e139a4
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1a1de677297525c0c5d317fe8a7a42684fe3f1b422a7d6bea1f70f0924653b08
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:ab09a1710aa2331e24df9e7283f3909fdb104c1b314dea88e919d0a396f334d3
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:3be20d63d7e82f35ac88274532d6ab7839f9a7306ca272e7d532ac03215faea9
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:1befc9969edd2062b3df69f45aee9771b33a2659c3a14db0aaaf5c3df985af58
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:25cbdf78b67e7f5a360313ccfbe3b6e2c98873b4e9ddee46c115a623e77c7abb
        - registry.redhat.io/ubi8/openjdk-21@sha256:bb95ea866269ac8652f666ee1587d71f4f43da33493c2be7f6a9548bcfd2407c
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:a5a7b2be50f211d4d9d555b2a2e2302096c139ff5011d984cc386f1530007f16
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:0551f1657dc158bd41eb2338dd6514d55c39fc77300cdf1744d8f5ab14e9ed1b
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:7c8cefd5823ad953f112b905c651f12a97491aafc008b2ba0111f0c9e83e50ae
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:9d36cde68bd822016e967148eebd2ef3e7ffab9dcdd37d17f33017e9b703d9b2
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:0729de0f3f03ed220216c6cb718fc34beece0ceacd926b5e2480bdfcf44df5cd
        - registry.redhat.io/ubi8/nodejs-16@sha256:69439fe83fa957089cb6fd3c1042ab71d719f81dd457a5d1fbc56c1e3ea600da
        - registry.redhat.io/ubi8/openjdk-17@sha256:a166bd2fedb99cb62ebf4695ab46e19c7e451f887940cdf0b8245c81e403aea2
        - registry.redhat.io/rhel8/buildah@sha256:55f5c7d88c77e1ab5a2ab8e877172b2b66cb196e21f10dc45148470d0ee8bbae
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:da5f813dea324ffe9679524ea7f3801536fa48f7dbbd8da56a8492b916b15fc3
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:8033b7c1e903ba313134645c626eb3bf7ab1a0d68dc2575bc8e26884ad4f805f
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:4933b76d95d411d597d4dc460fc46c92875d28e107cda661946206a9d934b8b5
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:5930caa25ea875d29dff0ec5e235eaa13cb6dc98980d8045335eba1a09ae761d
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:990962ad245a6d62cd11551bd4e1f8b14dc08abbebe47beddb2f4874f78d4f47
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:46b8dc1c8ea6c40401d4d1a9868ab3edbe8b9e92364a43add6722489e2eefa04
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:04e5b3882223d45a5f5383ce6481efb7b2cbedea57ebd894caafb1454ad8c09d
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:e70dd3a9e067075eb56e5f2772642545e308348cd49b89357c02de3979b1a5be
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:ab9a1b952e9603b4ecc5f197715a1d871abc25ebb0c5e6470d4f0b365ae94276
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:0507ea8745267fdb53329a5274d59d23c387225d2594af51dd2603b4ad99db0f
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:e55c70591c0498b6b85f0d68e304e88b830ea0b35219ba8881143555757be4b7
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:b0db9f0fc85fcdcd5da980633a3a44be2bbabae068f89d0965263de38789e812
        - registry.redhat.io/ubi8/python-39@sha256:8c96e8648cc6651d0cefbd20496a89f208621601f9664554d3fdeef8ced25453
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:42f31eb8f12dd36541c8c0b6572d942c62e2064d5418428482d676d117a6c426
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:b008da825ee2429f04cf39258389740c68056f82cf4bde0cbd3db850b6256885
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:70c26c7ac48d1eaaf1f95ca5c5b8ba8ee6b047a3c9c4a2c2db9c49a506bb2205
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:4c9faea6fd162db3340aee8c11af11a08c9d79bbed104967c25df26c4933c8ae
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3ffcf746df914f0949477b46f90cb2992bb63f8198d73ffd54208e7a777a9cb1
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:9b6524f9c0e7f78e6ffb372a8587eaf5f4f1281eaf64f93dd00b63be84a4c21e
        version: 1.32.2
      entries:
      - name: serverless-operator.v1.32.2
        version: 1.32.2
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.32
    - currentCSV: serverless-operator.v1.33.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-11-20T08:38:34Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.33.0 <1.33.3'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:e1cb1c24333605e52364456f9bd8d86d787d1bae17ef75dd04be61257fdb2256
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:9b94875e0e5d7abdb3b9ba7b04e217a2a9b7b4410d38d1608c86d1c21f929cc1
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:56c6ac59a68976741d2ba676a53e59fc494d04dc44b513d72fdf8a9ad894a54d
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:b871bd08b782c9168e9a54340efffc0b0effadde8079915b848e4eff72bb3e95
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:eb95deb2105f14c6a9f3bb2cdd7306b446109a9b142a7bfc726b6429f270d9e5
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:af66cc7dbed88907d96a390fe5c8807a2a60bbe3276b8cd13b4b061cbaf7b162
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:a9c84ac7e7c3fb1e5dedaf949d54a3aee8a62397d2bd6022094671de00b651da
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:05e3dd6255294b691783523f7722cfaf13aca1a1e1dab344a25eeea72aaf9f9e
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:d8ae7bc888f11121fbbba65074389b879bc22453bbabc551d79d0cee68fc33a3
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:eab4aa93b9d175045b1f01bff09681107d839285e0d633cd5146d2a2efab373c
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:dd1f7c850f7cf2a4d70403deedd8a57ecc6e0ee5455d68fdfc49ff175fe42dde
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:ea9e4de6228d5c3ed494c2ce5317ec290543ad40bcf7c43c2a3d6565e5d94e5d
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:28c9d05a3ba73b76f293e8f4902b574deb44f77a2bae8cf92473b8a8b10cee92
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:f938cc534fc4b24bb9449f1e1e1e904dc588e6646c98474de4b8c81d083b4d96
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c7f29554d04eb9348932953344f2ea0806d14e7704355619381bf395d993f58
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:9b850afa750a67120f68a49f4834ba7f105563df22cbcbc563317fe1545640d1
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ace72435e3e63ab21dff2345f958cf6bd171537ef2846c5d5d91cf821877140d
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b12272e1a9cb4f4bb62c4badc62b0bab110abb99484612dc781c46bfeac13cc0
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:42d16e4d9f14a427e7a5b7e3a4ea07c258e0f2c74984baeee3b4926a8c5e2640
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:993597ff83a4d62a23f642fadc92f182944b953770716b73b7d19492b5a462c3
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:b2be693c71cfc4ce934d5b01efb863dc6e391f93a6b15fe7eeb15914063a8294
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:09060de091d617bd4606f7a289b4528265ae0b7a04737f383e79efd5b0d3eb79
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:672022b6f2a080483d9d6f6f4a5f42e52e522a5797105f3465731809c6cf4947
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:359f8b9fbb4c3c2f79e8c70f3b50c994693b930f6f078c34c87112ebb93037e3
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:a8821b59d495e24598b27c6510b32ef19de2bb04ea1e568fc5afb9135d772036
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:28ae309e4cf7feabaf78ac6067e1173f9f5b33a71c06d6c27cf25e01a0b1ed64
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:2bd241898bd54dcb248ae86470430042dc545d45e7519ed470a1a9c8c63bdc37
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:62bf4bee0ea17ecc60366ecc71431adc79d6f0a5b9f59489913b474128c4adb0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:93b2f5211e79abc38bf92f0b8fb8adf046303efa2fe62c47a2fef9dfb5662f55
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:e1cb1c24333605e52364456f9bd8d86d787d1bae17ef75dd04be61257fdb2256
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:6dbfa2573a2c78e450d3c1c04c6e7cbc50d9272233e828fe9b42e575ecf386c0
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:510e98837a549f489b2d74939f3b9c7ed90a8260ba914910f681d5c0dec7655c
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:879fca768b46676f1df89de1cdc4ded8dac310209c146c2f381ed1deb19b06be
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:e9b38f1df225238836aa829f3a2016372859fb8709cdd2b30496498669a90be1
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ccbda564735555785815f27f8f25ad9c6c27dabe4e262586fc51609331692527
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:c3dee2598088bda36ef474f4748943a29169ed9589aeb0f77bc79a7f6bef9907
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:a0399a993155e755409355740b260d9b0019559a62be3b6253d8693a4fb59286
        version: 1.33.3
      entries:
      - name: serverless-operator.v1.33.3
        version: 1.33.3
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.33
    - currentCSV: serverless-operator.v1.34.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-11-20T08:53:53Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.34.0 <1.34.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:a4b3d75903de1929326041e9885213074473f07fda91b299548d45680c295c00
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.34/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.34/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.34/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:0f126893074cd0398654c4018df6e882b7610e148c82a41ac814f4bf3830bf9d
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:01ea7a06332d60ac16ae0a27adcaaede3f680a98a22ff995259a6c42ac0e358d
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:095629572a40469eb651c9f81d6c10ff46254eff8b9813cadce54d6f0075c2fb
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:946daeff59b41a6f8c4842f8c2668f97ff1b49e2a8afae5d64ba3baa916b1d95
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c0376504edae12e7af6b6cce02ac53b6b374f5058ebefcbdbd32628b551bb0c4
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:76480201188dd142206040af845bd55b44155af92e0c5ee9bcdb8660bea0cdb8
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ef7f34a025e40f93fbd51f3a4596998a6dc508db824f137ffa1fbaf90e88f4a8
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:144883b09d8a999fd4d2a109d074e44d7d8b959987512379aa71c71e4060ca28
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:86ffb8be1762782d643c147cefcfbc2b4723b0f97d017314a99bd2275d05a1cf
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:b9d85323e110d8eb6600223c38f9d4cbe89b50d59e03bf1e6b8808f7cef9a3a5
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:a5950f81cbc64d1edb64ae7f7f120c3435d36afcd14ffc34ae522af297d87e1e
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1252960c0c0a4dc7b39090cde0fd5742a19453b1a65a08b737bc41d044a0882a
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:e520d1b6b87f85dfffab5e53cfb70562ab7edf450061c07609da39e3b2498fdd
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:09dd94090eea9cac7a1935a6d671cb97fd9fd5714c715c9d2aed461e468ca54a
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:633ea30ea3b6d5152bbdb61acb4271e5905d50fbe3c731fb4c8d8640a57f1970
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:586fc8ed88f91298dbff31bc2fc4c63e0d6d9356e3358b2f853f49511c3ff9bf
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:b07010595201d7cfe0ec4f18e612d323eb38464c74eb187f275617a744d9df12
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:d40daf67b36387faa9f55e70e50d10d02accfd19470c0ac11b78bf969947fed1
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:30cb41f09067959cfe3792e070fca62820fcca4035683e5c43dd46d1cce97c01
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3d17f12cc9da578549254ba1b8934b5afc66e453b1d5d667bb90281e45b8795c
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:0f8d006d0e7468783739942a1c82c7aec376c9948f23841132c8ddece8ecba06
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:a9e8583c19ca3e01593f8c0e54731cb73df9b46b2ed47a2b1c711828c2295f82
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:d5ad3c9db7ce8e4fc950261f7c388476214a03d92e0043c7bbc4f0add2b1e69e
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:f94f0e8d21a6b6341b1db00513a1a2ed5cd84fcd898a376ecde942e940a518e7
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:84994eabeb7342a0771c7cb1bdd70e7ee3928dd45874eafa64cde5bb385fe964
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:2adb0124f04d6c4a552ade79dd1499c8ca997edb45855bf438ca8043b2709e19
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:45bc50a993d04b775a153e985a43d587d5455883fc4c6f31b772408297cf9040
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:6d042c614431aa9a9e77cf8ba0064423e903f7c418e367ecc23bc02a24a796c0
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:b801ed7b1cb32d4a1522a959e97f280f2eff6fc92e47fea2ea022f180d37831a
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:d8b94bbce98325fe8079c11c0b7a6c59bad8a7edd0532a7d27ef1632ff0de708
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:33d62d13e16f47db9951ac826671f39fdc048fe7c3fb019eeb4bf9bd0f814222
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:512c4d93dc13cc53d923a6990770a7527d6fb657278e2c5d8f0ece3cd5020155
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:4b6f161c14c68536ec2c7679d30681afa9a1fa2d512548f0f591791a10a8b894
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:75228e70fb1383bbdbcc64d0cf24bf5d977c09112e3f32316824188264c3a2bc
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:1c82d20ccf5eb5f8e7725839f1060f4efdfd1c1b4773a99bd905e690a6e36f38
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:a4b3d75903de1929326041e9885213074473f07fda91b299548d45680c295c00
        version: 1.34.1
      entries:
      - name: serverless-operator.v1.34.1
        version: 1.34.1
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.34
    - currentCSV: serverless-operator.v1.35.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          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.skipRange: '>=1.35.0 <1.35.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:f23d3ab058667c6fe9ee44dc249aa7e8449c1bb9581380ddbc66624511b286d2
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel8@sha256:80a155d2637f47e249fd69760b250c9b7a1eeb6781de9308b54162bb3e1bce71
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:732827652b7a7a49181e86d561831001c28b72b7e12d5e3c1d71b2e496003229
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel8@sha256:ab0342b325ee67cc2a7d321aa1eda9c6797dc91fe2b6f26e3cbab53fadf564c7
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:018459cbba2e3169bc4be6564cf3747c9cd0677445912abf237f8fe6d58e46ac
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:f23d3ab058667c6fe9ee44dc249aa7e8449c1bb9581380ddbc66624511b286d2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:8a4e5e0934197c32e0dfa1efc922d750940587fb61e0df49d476a2d035c53413
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:cb2ebe98481808e788ca70e7f0a9b3402818b622158f327b99a1e87c23226d2d
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:818dc7bd69b453ba5882b4ccb82841f2d48c7552368417bac20bef1df64f52ff
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel8@sha256:dfcd11686f161d44786a205d12f9d628d9e847d40ffdb628ec9aa4a0da0b86f0
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:91456907c61952017daf07e376b565472ef86d67a2925f60e189c639ceb68595
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:d68fae6fc07efa9da9af0532aadb49f897a15afcdf9a98dc7517ff5e17735454
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:da8d975527ba100313b92e87d6d2690fddae9988aa8d82d728221295955b7224
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel8@sha256:acb28d84cf03b8551efa32646864005dc3bc9bb341a696544892dfd0c87fbda6
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:56e7a0158a713c70765ead847732db4e5f8439aacf31e9a4a22672b583028064
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel8@sha256:86074674b7926ad9bfc95556e50820792fcbc5e11ab02879378625ffabdd1889
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:6722aecbbbefa80dfaf93143e033c562cea0982514e2eea27654dd4638e1d072
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:0751b9ea7ca197480c4cbca17654d0653d1c0c760ca3c818c2a1018dc952cdc8
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:477b1ac0db0abf1e16ae31bb22fdb73dd98f4dbd243fa0a7e6e94852b16a813c
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:6f4fa254d923f3260ab0f7d6a0b459554f83b1abfcb575a5ce2c0135fba32427
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:3130a5159adb9b4eaab75a0209d2ac639156d5e9f2346a8b2e6e0e22fad4b45f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:ffaad2214fa897e89e92e574eb5cd1c671edab7f6eab87cf2ffd4ebf162b3cf4
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel8@sha256:2980eca437e4c1cd22a2b6c2ccae9c4d6b55921b3d575fbd4b9241f1f0a8a3a4
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel8@sha256:d00a0059f6134b2519f9b1e034b81a943cae7ce391109703f24db21e56ee923d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel8@sha256:6b842b4eddfc71a2c8f6c1fcebb8f23a05f50c95be1ba2d20a1be660d3014c8e
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:86386b54cc10743023884193b7d6c7159b90052bc5e4a0608a6cdfd47865c966
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:020264063c50f2a4590f3d7524b271f0f77350a1f8fa3c35ca6e28f0162aa9a5
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:b2de6b658a1595084a202203c90704c3f9de018a7a904ca276112ad606e374f1
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:ab8f85bb18311b0bfee00561ef6b5d9faf810358c954ac2c6f39cf2a7739e07c
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:0e58edf5ee340fdfb282faeb6c9bee8cd6323e7f29a9b282dbb91c2622131a9c
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:2cbe84afebac23b5397d144b4d5660af33290df451141fa3625607b6033983e0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel8@sha256:e743dd93b7ae855825716403979db3f34cd300caad130e7d3011172b1aa4eaf7
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:b66bb9531f05cd46360f787955c849208496e3e45541cb50b23bfb6b68570aa8
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:9b176477be4c782ce60d81a72bacb566069a499579ce6df5a987a0841f05ad5c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:f56d21089566330ecbd9aa8acf14da332d3db7360aaf6da00c9a19df83f7334c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:e7aa54986c3d388c1bb00828c9ccb294ca0b6c26376c7593ed6bfddda0ef4e5d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:4ca1bfaf2d7e9477583cddfa40f0b2ce59c20ff9ab20022038774dc3cc49662b
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:b5db9a51bbb46640b23712c61e9c5a1c7bbdbcd9a53b0b92fa36b80dcaffffc0
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:d0650e4d7e72241e07a3796f20931adba231fbf5e401a45d794761f2c5afae48
        version: 1.35.1
      entries:
      - name: serverless-operator.v1.35.1
        version: 1.35.1
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.35
    - currentCSV: serverless-operator.v1.36.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.36.0 <1.36.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:36e589adaf5ff2856f5aada90b3a2be893d9ff89f92b1b2c42ee59523c9c9c8e
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:01d632b69b4a4112426afc4184c72eae6d8816974088e5980c9c808f0782b85c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel8@sha256:3d780ad1ab280b5092b90e277485d589da2a18e8b08090af7d95aecd17af545d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel8@sha256:51b5e18e8d4c1ca81d7c5ddfea6352a3887f757acfcc53bd2f8bd3b01337ed42
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel8@sha256:30b8045ef5f925a36c58941386f1899bec125d005a08aeeeba5edd49b0859149
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:36e589adaf5ff2856f5aada90b3a2be893d9ff89f92b1b2c42ee59523c9c9c8e
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:c39cb88afaddc295d93a3774b8a20d001b82392df540fb502ee02316d82460a9
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:6210a946f373b9c36c9b31293debe6fed090008b8234c0ba17d37fa81646172e
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:4344716eb2940c6a3fa9a278250f936602bb1549fece6037912837719c178b24
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel8@sha256:27e74287774cda208f667bc2a386debe6b6255e8991abfb37c959c8525f2af53
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:631eb3a8dd9d83ceafa7d8a4da4b1e2d4f2740e6017c766828dcc7575cf1322f
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:5352e4eb4e426a41521276decadf204b6d23b4762a298e4d3dc73969e3eddc68
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel8@sha256:4aeb68a22f63300e54391ec6b4cda8c4e665d904b5dcdd3c40155040525742a0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:52ba6b1252b6f3d41e2a0b3b880cb768010ab9dd925ac34596f6adaedcbbe07c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel8@sha256:d9b944e64391a996104afbe8a21f66316a948e9fb7b91734e861847285be59c7
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:ee6533b71cf280877c9d7489dfd821c9209c6802bed7fa3fdb4f8f00fbeacb09
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:a1834b620f875681388f0ae224dd0771773a8b61b1d8e5214a942f232854b87b
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:82e69a1890042f5636ac7bb645b1aaeaba0a4894851eccc1fa1c63296918e31a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel8@sha256:afa634e029bcf79a972f49372498d44b45bcfbdb6eb28ecaf4f0b0b2a0a1824b
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:4274004b6289fa9bea3fa6e56d64077a328a6b5e63a9f0e9c41f6d561f682bd7
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:187fb9d64b53c55a029ffce3c0f9e7c3304683fa8a0e832cfb7134e8a3d0c237
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ed89e221d7a0a1dd82f2fa75e9e70bff3dddcb8979594396590bd3a15673a152
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:3b04e9d8cd4b5e43a07ece838d10478723a6c6529350f010550b4a0d1d0950d1
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel8@sha256:3fe326ad9a00b112fc888ffd345c8d5042f0a22cf32ea575931192c39ce1fece
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:429d5d9568cca31fbe83c663276a300286af4cdbf3d35685afdbe5f6f2f8c6e0
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:0c2cdf917bbad1f5bca8a2a2ef12a96cfcd0c77c190cc35687eb57169b54ab6f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:bf82b37ab8fd29c7a7cd846008a16d14b4cfdc1c09df4f731d71be3957e90123
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:a6f565d73375e827d830dca85838f4c4cb7f08b0c078acb0c0d567b25f0d256a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel8@sha256:f2d112ba9fdfccea988589b99b463c8a7157475f7a3f03678e8999e65b678cc3
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel8@sha256:8fed5ef9a1f39a55077bb5026c8854d0ee7fc8d8ff5da277ce9c1bfc2ab2474b
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:dcfe5fbc57b9f8520adbff368c8bf29eb491c9c26d1a1737a1722cffea83eb1b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel8@sha256:259e5dab50d36cdbfc117a42325128c4e16f34c048ba64b36d4a89132ddb4c1a
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:596a7272d6de714d7dbc6e00e9e50a2872846c269547465252d953172ef0b009
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:77e4689b2ce7a713e905553e0e42b8e128045f40cb6c6d4ee082f126cbc46b00
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel8@sha256:f3d87a7fa5b5f2818effcac3304bd56eddcdb0db97a18ac0f35a06fc7e223e7d
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:e3ae1cc6012f19631c012a07b113fb015977d2ee4f9faab3207fbc2464c25aa7
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel8@sha256:3af4c48030263eb5769e5f36a6dd13fd390d8566efaab37532f39e1df1c95c67
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:074ebfc4494581611647ba90049655a470ca43743610a27be77db66a8633bac6
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:f4d86b196457cdeebdc380b6f1b707c10f8dee789c7779c90ee1332e511af8c4
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:c7c2e738e0d9da1d2d1993f68938e72c4709b1f28a54fa92224ef6a0e456b0aa
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel8@sha256:a47b6b5237a87ccd90e5a49a53d06485fd55c87eebf12d01c335b87fc3a8c494
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel8@sha256:6b7316cce3432d391adc6ac38c92ff0ee86dd7ae0101957cc65cd338cc69e352
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:ed60e889a677fb139f2eb4bd9ab4fda6ecc39fd050ca2b6cc1c19717e428535a
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:78fee4c596f2848487ca704da3fa1074e3c9c99b3f96f66833aeba63836d7b93
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel8@sha256:88323da16360981f27b8e4686fbbb64053e4e0e3c79c65d695edb317b334e1e0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel8@sha256:a903480159ebf1d8652eeaa702d9885fb76bb106c02d75cec5c82c31d77d6410
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:9b328fff0cc8545fb9bb1f24f11d78cfac3ee76dedc11fa4def4262d79a60e8c
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel8@sha256:d6f338e08fa937c8a4ccfec692424de4acded565f7ca3971ea507dffeb351503
        version: 1.36.1
      entries:
      - name: serverless-operator.v1.36.1
        version: 1.36.1
      - name: serverless-operator.v1.36.0
        version: 1.36.0
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.36
    - currentCSV: serverless-operator.v1.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>1.36.1 <1.37.0'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel9@sha256:591bc064b99356334b7b53c56e2b14538dd8747577127b37fcffadbbd5df4498
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel9@sha256:052fe86c647d1ebedba9dbe1054c3d94fd7b02bb9670837e434549c5a7544e37
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel9@sha256:d9a299304e810eeef13adc7bdac4cad7a6fe80a9e18fa3ce93a2796f0586323b
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel9@sha256:6886795e240a9d602a3f68c910f543b5f4c7874ede3bc3e229182d77d509e294
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel9@sha256:8c4cd89255e0424249cbadc7f77ad0cbee43d7b9fe3cfb67b4ef63ab3fa827f6
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel9@sha256:04d23df5bec13af304cf718e66f65d198a5d1d29e022db536b96c9a7f7817a34
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel9@sha256:abe431c9d7390e6e3032c3ac74532b8162564729be7e5a6bca70c3d2374a3437
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel9@sha256:dffaac938538b6a28306e8d3a444ff6c794d50501dfcfb742c7e99558c71296a
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel9@sha256:50293c7fe9b2bc102e9eb9a57fa97bf6d6ee7c3334866217aa6debf3fb77e7ec
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:f64b1bf7dca0906dfa673ae299a2d965527c1c7a714020d046dad277d329f965
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel9@sha256:43856ee2f87c7ce642b998c48405785a5f940cda17f9f1afbbe626f7f860394c
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel9@sha256:615627148f347917a6214b3e036e201d7d23a119445d8b19dfefdde9647546d6
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel9-operator@sha256:23e10eb061828568dc06cf4d4b3485e8fbd5fe8b711b2424ea954b7e1dd2534f
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel9@sha256:4a7848b64e1bacadf5205de9a0fd64437c8b7dcf86959dc1095e12d873a4610a
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        version: 1.37.0
      entries:
      - name: serverless-operator.v1.37.0
        version: 1.37.0
      - name: serverless-operator.v1.36.1
        version: 1.36.1
      - name: serverless-operator.v1.36.0
        version: 1.36.0
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.37
    defaultChannel: stable
    packageName: serverless-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NeuVector
      provider-url: ""
    name: neuvector-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: neuvector-operator.v1.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apm.neuvector.com/v1alpha1",
                "kind": "Neuvector",
                "metadata": {
                  "name": "neuvector"
                },
                "spec": {
                  "openshift": true,
                  "registry": "docker.io",
                  "tag": "5.4.8",
                  "oem": "",
                  "imagePullSecrets": "",
                  "psp": false,
                  "rbac": true,
                  "serviceAccount": "default",
                  "leastPrivilege": false,
                  "global": {
                    "cattle": {
                      "url": ""
                    },
                    "azure": {
                      "enabled": false,
                      "identity": {
                        "clientId": "DONOTMODIFY"
                      },
                      "marketplace": {
                        "planId": "DONOTMODIFY"
                      },
                      "extension": {
                        "resourceId": "DONOTMODIFY"
                      },
                      "serviceAccount": "csp",
                      "imagePullSecrets": "",
                      "images": {
                        "neuvector_csp_pod": {
                          "tag": "latest",
                          "image": "neuvector-billing-azure-by-suse-llc",
                          "registry": "registry.suse.de/suse/sle-15-sp5/update/pubclouds/images",
                          "imagePullPolicy": "IfNotPresent"
                        },
                        "controller": {
                          "tag": "5.2.4",
                          "image": "controller",
                          "registry": "docker.io/neuvector"
                        },
                        "manager": {
                          "tag": "5.2.4",
                          "image": "manager",
                          "registry": "docker.io/neuvector"
                        },
                        "enforcer": {
                          "tag": "5.2.4",
                          "image": "enforcer",
                          "registry": "docker.io/neuvector"
                        }
                      }
                    },
                    "aws": {
                      "enabled": false,
                      "accountNumber": "",
                      "roleName": "",
                      "serviceAccount": "csp",
                      "annotations": {},
                      "imagePullSecrets": "",
                      "image": {
                        "digest": "",
                        "repository": "neuvector/neuvector-csp-adapter",
                        "tag": "latest",
                        "imagePullPolicy": "IfNotPresent"
                      }
                    }
                  },
                  "bootstrapPassword": "",
                  "autoGenerateCert": true,
                  "defaultValidityPeriod": 365,
                  "internal": {
                    "certmanager": {
                      "enabled": false,
                      "secretname": "neuvector-internal"
                    },
                    "autoGenerateCert": true,
                    "autoRotateCert": true
                  },
                  "controller": {
                    "enabled": true,
                    "annotations": {},
                    "strategy": {
                      "type": "RollingUpdate",
                      "rollingUpdate": {
                        "maxSurge": 1,
                        "maxUnavailable": 0
                      }
                    },
                    "image": {
                      "repository": "neuvector/controller",
                      "imagePullPolicy": "IfNotPresent",
                      "hash": ""
                    },
                    "replicas": 3,
                    "disruptionbudget": 0,
                    "schedulerName": "",
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "searchRegistries": "",
                    "env": [],
                    "affinity": {
                      "podAntiAffinity": {
                        "preferredDuringSchedulingIgnoredDuringExecution": [
                          {
                            "weight": 100,
                            "podAffinityTerm": {
                              "labelSelector": {
                                "matchExpressions": [
                                  {
                                    "key": "app",
                                    "operator": "In",
                                    "values": [
                                      "neuvector-controller-pod"
                                    ]
                                  }
                                ]
                              },
                              "topologyKey": "kubernetes.io/hostname"
                            }
                          }
                        ]
                      }
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "nodeSelector": {},
                    "apisvc": {
                      "ctrlServerPort": 10443,
                      "type": "",
                      "annotations": {},
                      "nodePort": "",
                      "route": {
                        "enabled": false,
                        "termination": "passthrough",
                        "host": "",
                        "tls": ""
                      }
                    },
                    "ranchersso": {
                      "enabled": false
                    },
                    "pvc": {
                      "enabled": false,
                      "existingClaim": false,
                      "accessModes": [
                        "ReadWriteMany"
                      ],
                      "storageClass": "",
                      "capacity": ""
                    },
                    "azureFileShare": {
                      "enabled": false,
                      "secretName": "",
                      "shareName": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "federation": {
                      "mastersvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      },
                      "managedsvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      }
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {
                        "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                      },
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "configmap": {
                      "enabled": false,
                      "data": ""
                    },
                    "secret": {
                      "enabled": false,
                      "data": {
                        "userinitcfg.yaml": {
                          "users": [
                            {
                              "Fullname": "admin",
                              "Password": "",
                              "Role": "admin"
                            }
                          ]
                        }
                      }
                    },
                    "certupgrader": {
                      "env": [],
                      "schedule": "",
                      "imagePullPolicy": "IfNotPresent",
                      "timeout": 3600,
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "prime": {
                      "enabled": false,
                      "image": {
                        "repository": "neuvector/compliance-config",
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "1.0.9",
                        "hash": ""
                      }
                    }
                  },
                  "enforcer": {
                    "enabled": true,
                    "image": {
                      "repository": "neuvector/enforcer",
                      "imagePullPolicy": "IfNotPresent",
                      "hash": ""
                    },
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "env": [],
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/master"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/control-plane"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/etcd"
                      }
                    ],
                    "resources": {},
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "manager": {
                    "enabled": true,
                    "image": {
                      "repository": "neuvector/manager",
                      "imagePullPolicy": "IfNotPresent",
                      "hash": ""
                    },
                    "priorityClassName": "",
                    "env": {
                      "ssl": true,
                      "envs": []
                    },
                    "svc": {
                      "mgrServerPort": 8443,
                      "type": "ClusterIP",
                      "nodePort": "",
                      "loadBalancerIP": "",
                      "annotations": {}
                    },
                    "route": {
                      "enabled": true,
                      "termination": "passthrough",
                      "host": "",
                      "tls": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {},
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "topologySpreadConstraints": [],
                    "affinity": {},
                    "podLabels": {},
                    "podAnnotations": {},
                    "tolerations": [],
                    "nodeSelector": {},
                    "runAsUser": "",
                    "probes": {
                      "enabled": false,
                      "timeout": 1,
                      "periodSeconds": 10,
                      "startupFailureThreshold": 30
                    }
                  },
                  "cve": {
                    "adapter": {
                      "enabled": false,
                      "image": {
                        "repository": "neuvector/registry-adapter",
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "0.2.2",
                        "hash": ""
                      },
                      "priorityClassName": "",
                      "resources": {},
                      "affinity": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "env": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": "",
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt"
                      },
                      "harbor": {
                        "protocol": "https",
                        "secretName": ""
                      },
                      "svc": {
                        "type": "ClusterIP",
                        "loadBalancerIP": "",
                        "annotations": {}
                      },
                      "route": {
                        "enabled": true,
                        "termination": "passthrough",
                        "host": "",
                        "tls": ""
                      },
                      "ingress": {
                        "enabled": false,
                        "host": "",
                        "ingressClassName": "",
                        "path": "/",
                        "annotations": {
                          "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                        },
                        "tls": false,
                        "secretName": ""
                      },
                      "internal": {
                        "certificate": {
                          "secret": "",
                          "keyFile": "tls.key",
                          "pemFile": "tls.crt",
                          "caFile": "ca.crt"
                        }
                      }
                    },
                    "updater": {
                      "enabled": true,
                      "secure": false,
                      "cacert": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                      "image": {
                        "registry": "",
                        "repository": "neuvector/updater",
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "0.0.7",
                        "hash": ""
                      },
                      "schedule": "0 0 * * *",
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "scanner": {
                      "enabled": true,
                      "replicas": 3,
                      "dockerPath": "",
                      "strategy": {
                        "type": "RollingUpdate",
                        "rollingUpdate": {
                          "maxSurge": 1,
                          "maxUnavailable": 0
                        }
                      },
                      "image": {
                        "registry": "",
                        "repository": "neuvector/scanner",
                        "imagePullPolicy": "Always",
                        "tag": "6",
                        "hash": ""
                      },
                      "priorityClassName": "",
                      "resources": {},
                      "topologySpreadConstraints": [],
                      "affinity": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "env": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": "",
                      "internal": {
                        "certificate": {
                          "secret": "",
                          "keyFile": "tls.key",
                          "pemFile": "tls.crt",
                          "caFile": "ca.crt"
                        }
                      },
                      "volumes": "",
                      "volumeMounts": ""
                    }
                  },
                  "resources": {},
                  "runtimePath": "",
                  "docker": {
                    "enabled": false,
                    "path": "/var/run/docker.sock"
                  },
                  "k3s": {
                    "enabled": false,
                    "runtimePath": "/run/k3s/containerd/containerd.sock"
                  },
                  "bottlerocket": {
                    "enabled": false,
                    "runtimePath": "/run/dockershim.sock"
                  },
                  "containerd": {
                    "enabled": false,
                    "path": "/var/run/containerd/containerd.sock"
                  },
                  "crio": {
                    "enabled": true,
                    "path": "/var/run/crio/crio.sock"
                  },
                  "admissionwebhook": {
                    "type": "ClusterIP"
                  },
                  "crdwebhooksvc": {
                    "enabled": true
                  },
                  "crdwebhook": {
                    "enabled": true,
                    "type": "ClusterIP"
                  },
                  "lease": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Networking, Security
          certified: "false"
          containerImage: docker.io/neuvector/neuvector-operator@sha256:2b2ef4fbc567e7ae40c7bbc4f763f1806a8b1c872972c7bdbae9d8c58ba64ce4
          createdAt: "2019-11-18T02:09:59Z"
          description: NeuVector delivers the only cloud-native Kubernetes security
            platform with uncompromising end-to-end protection from DevOps vulnerability
            protection to automated run-time security, and featuring a true Layer
            7 container firewall.
          repository: https://github.com/neuvector/neuvector-operator
          support: support@neuvector.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Full LifeCycle Container Security Platform
            displayName: NeuVector
            kind: Neuvector
            name: neuvectors.apm.neuvector.com
            version: v1alpha1
        description: |+
          NeuVector delivers the only cloud-native Kubernetes security platform with uncompromising end-to-end protection from DevOps vulnerability protection to automated run-time security, and featuring a true Layer 7 container firewall.

          The NeuVector Operator runs  in the openshift container platform to deploy and manage the NeuVector Security cluster components. The NeuVector operator contains all necessary information to deploy NeuVector using helm charts. You simply need to install the NeuVector operator from the OpenShift embeded operator hub and create NeuVector instance. You can modify the NeuVector installation configuration by modifying yaml while creating the NeuVector instance such as imagePullSecrets, tag version, etc. Please refer to [github link](https://github.com/neuvector/neuvector-helm) for the values that can be modifed during installation. To upgrade to a newer version of NeuVector, just reapply the NeuVector instance with desired tag , which in turn pulls the specified NeuVector image tags and upgrades as per upgrade plan configured on the helm chart. NeuVector Operator version 1.5.7 deploys NeuVector app version 5.4.8.

          **Complete below steps to create namespace and Grant Service Account Access to the Privileged SCC before installation.**

          Create the NeuVector namespace

                   oc new-project  neuvector
          Login as system:admin account

                   oc login -u system:admin

          Privileged SCC is added to Service Account specified in the deploment yaml by Operator version 1.3.4 and above in new deployment. In case of upgrading NeuVector Operator from previous version to 1.3.4, please delete Privileged SCC before upgrading.

                   oc delete rolebinding -nneuvector system:openshift:scc:privileged

          The following info will be added in the Privileged SCC users:

                   - system:serviceaccount:neuvector:default

          In OpenShift 4.6+ use the following to check:

                   oc get rolebinding system:openshift:scc:privileged -n neuvector -o wide
                   system:openshift:scc:privileged   ClusterRole/system:openshift:scc:privileged   9m22s  neuvector/default


        displayName: NeuVector Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - wavefront
        - wavefront collector
        - wavefront proxy
        links:
        - name: NeuVector Operator
          url: https://github.com/neuvector/neuvector-operator
        maintainers:
        - email: support@neuvector.com
          name: A Full LifeCycle Container Security Platform
        maturity: beta
        provider:
          name: NeuVector
        relatedImages:
        - quay.io/community-operator-pipeline-prod/neuvector-community-operator@sha256:d8088a7d3ecda8bb08a8313a942cf6140f49cca3610255ab70235a5436cb3ffb
        - docker.io/neuvector/neuvector-operator@sha256:2b2ef4fbc567e7ae40c7bbc4f763f1806a8b1c872972c7bdbae9d8c58ba64ce4
        version: 1.5.7
      entries:
      - name: neuvector-operator.v1.5.7
        version: 1.5.7
      - name: neuvector-operator.v1.5.6
        version: 1.5.6
      - name: neuvector-operator.v1.5.5
        version: 1.5.5
      - name: neuvector-operator.v1.5.4
        version: 1.5.4
      - name: neuvector-operator.v1.5.3
        version: 1.5.3
      - name: neuvector-operator.v1.5.2
        version: 1.5.2
      - name: neuvector-operator.v1.5.1
        version: 1.5.1
      - name: neuvector-operator.v1.5.0
        version: 1.5.0
      - name: neuvector-operator.v1.4.9
        version: 1.4.9
      - name: neuvector-operator.v1.4.8
        version: 1.4.8
      - name: neuvector-operator.v1.4.7
        version: 1.4.7
      - name: neuvector-operator.v1.4.6
        version: 1.4.6
      - name: neuvector-operator.v1.4.5
        version: 1.4.5
      - name: neuvector-operator.v1.4.4
        version: 1.4.4
      - name: neuvector-operator.v1.4.3
        version: 1.4.3
      - name: neuvector-operator.v1.4.2
        version: 1.4.2
      - name: neuvector-operator.v1.4.1
        version: 1.4.1
      - name: neuvector-operator.v1.4.0
        version: 1.4.0
      - name: neuvector-operator.v1.3.9
        version: 1.3.9
      - name: neuvector-operator.v1.3.8
        version: 1.3.8
      - name: neuvector-operator.v1.3.7
        version: 1.3.7
      - name: neuvector-operator.v1.3.6
        version: 1.3.6
      - name: neuvector-operator.v1.3.5
        version: 1.3.5
      - name: neuvector-operator.v1.3.4
        version: 1.3.4
      - name: neuvector-operator.v1.3.3
        version: 1.3.3
      - name: neuvector-operator.v1.3.2
        version: 1.3.2
      - name: neuvector-operator.v1.3.1
        version: 1.3.1
      - name: neuvector-operator.v1.3.0
        version: 1.3.0
      - name: neuvector-operator.v1.2.9
        version: 1.2.9
      name: beta
    defaultChannel: beta
    packageName: neuvector-community-operator
    provider:
      name: NeuVector
kind: List
metadata:
  resourceVersion: ""
apiVersion: v1
items:
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HPE Ezmeral
      provider-url: ""
    name: hpe-ezmeral-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hpe-ezmeral-csi-operator.v1.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ezmeral.hpe.com/v1",
                "kind": "HPEEzmeralCSIDriver",
                "metadata": {
                  "name": "hpeezmeralcsidriver"
                },
                "spec": {
                  "controllerImage": "registry.connect.redhat.com/maprtech/csi-kdfprovisioner@sha256:89a397c26960ba05542ac069e3a47059bced2bc958cfff4aa0f1eb081fab5d42",
                  "nodeImage": "registry.connect.redhat.com/maprtech/csi-kdfplugin@sha256:480b6fb8b2501caa76013c94feac91bef7f9b5ae6ad0b286ec621fd6a9ce4bef",
                  "pullPolicy": "Always"
                }
              },
              {
                "apiVersion": "ezmeral.hpe.com/v1",
                "kind": "HPEEzmeralNFSCSIDriver",
                "metadata": {
                  "name": "hpeezmeralnfscsidriver"
                },
                "spec": {
                  "controllerImage": "registry.connect.redhat.com/maprtech/csi-kdfprovisioner@sha256:89a397c26960ba05542ac069e3a47059bced2bc958cfff4aa0f1eb081fab5d42",
                  "nodeImage": "registry.connect.redhat.com/maprtech/csi-nfsplugin@sha256:35c275363a6949fed56b8ddfe3886ed42a6267fb07271494d8367abbd4d8c822",
                  "pullPolicy": "Always"
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/maprtech/hpe-ezmeral-csi-operator@sha256:82f52179dcd59a1e16f249bcd21f7aae22c09e84f24b479a923fef2adee45c7f
          createdAt: "2022-03-17T12:56:12Z"
          description: A Container Storage Interface (CSI) driver for HPE Ezmeral
            Data Fabric platform. The CSI driver allows you to use HPE Ezmeral Data
            Fabric with your preferred container orchestrator.
          repository: https://github.com/mapr/mapr-csi
          support: HPE Ezmeral Data Fabric
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HPE Ezmeral CSI Driver (FUSE)
            displayName: HPEEzmeralCSIDriver
            kind: HPEEzmeralCSIDriver
            name: hpeezmeralcsidrivers.ezmeral.hpe.com
            version: v1
          - description: HPE Ezmeral CSI Driver (NFS)
            displayName: HPEEzmeralNFSCSIDriver
            kind: HPEEzmeralNFSCSIDriver
            name: hpeezmeralnfscsidrivers.ezmeral.hpe.com
            version: v1
        description: |
          The HPE Ezmeral CSI Operator for Kubernetes packages, deploys, manages, upgrades the HPE Ezmeral CSI Driver on Kubernetes and OpenShift for dynamic provisioning of persistent volumes on HPE Ezmeral Data Fabric platform.
          The HPE Ezmeral CSI Driver for Kubernetes leverages HPE Ezmeral Data Fabric platform to provide scalable and persistent storage for stateful applications. Please refer to our CSI driver [documentation](https://docs.datafabric.hpe.com/home/CSIdriver/csi_overview.html) for full list of supported CSI features.
          ## Installation
          Refer to the HPE Ezmeral CSI Operator for Kubernetes [documentation](https://docs.datafabric.hpe.com/home/CSIdriver/csi_installing_operator.html)
        displayName: HPE Ezmeral Data Fabric CSI Operator for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - HPE
        - HPE Ezmeral
        - HPE Ezmeral Data Fabric
        - Storage
        - FileSystem
        - BlockVolume
        links:
        - name: Documentation
          url: https://docs.datafabric.hpe.com/home/CSIdriver/csi_overview.html
        maintainers:
        - email: ezmeral-csi-support@hpe.com
          name: HPE Ezmeral Data Fabric
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: HPE Ezmeral
        relatedImages:
        - registry.connect.redhat.com/maprtech/csi-kdfprovisioner@sha256:89a397c26960ba05542ac069e3a47059bced2bc958cfff4aa0f1eb081fab5d42
        - registry.connect.redhat.com/maprtech/csi-nfsplugin@sha256:35c275363a6949fed56b8ddfe3886ed42a6267fb07271494d8367abbd4d8c822
        - registry.connect.redhat.com/maprtech/hpe-ezmeral-csi-operator-bundle@sha256:b23ef079d0bcbeaa227a0d759c900c103f97310ad2e00a566a74b100f95a37ff
        - registry.connect.redhat.com/maprtech/hpe-ezmeral-csi-operator@sha256:82f52179dcd59a1e16f249bcd21f7aae22c09e84f24b479a923fef2adee45c7f
        - registry.connect.redhat.com/maprtech/csi-kdfplugin@sha256:480b6fb8b2501caa76013c94feac91bef7f9b5ae6ad0b286ec621fd6a9ce4bef
        version: 1.0.9
      entries:
      - name: hpe-ezmeral-csi-operator.v1.0.9
        version: 1.0.9
      name: stable
    defaultChannel: stable
    packageName: hpe-ezmeral-csi-operator
    provider:
      name: HPE Ezmeral
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: boxboat-github-practice
      provider-url: https://github.com/boxboat-github-practice
    name: github-arc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: github-arc-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "github-practice.boxboat.com/v1alpha1",
                "kind": "ActionsRunnerController",
                "metadata": {
                  "name": "arc-sample"
                },
                "spec": {
                  "authSecret": {
                    "name": "ghauth"
                  },
                  "createRunnerNamespaces": true,
                  "openshift": true,
                  "runnerNamespaces": [
                    "test1",
                    "test2"
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery, OpenShift Optional
          containerImage: ghcr.io/boxboat-github-practice/github-arc-operator:1.1.0
          createdAt: "2023-03-03T20:49:16Z"
          description: Operator for deploying the github actions runner controller
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/boxboat-github-practice/github-arc-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActionsRunnerController is the schema for the ActionsRunnerController
              API
            displayName: Actions Runner Controller
            kind: ActionsRunnerController
            name: actionsrunnercontrollers.github-practice.boxboat.com
            version: v1alpha1
        description: helm based operator for github actions runner controller
        displayName: github-arc-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - github
        - actions
        - boxboat
        - ibm
        - self-hosted
        - runners
        links:
        - name: Github Arc Operator
          url: https://github.com/boxboat-github-practice/github-arc-operator
        - name: Actions Runner Controller
          url: https://github.com/actions/actions-runner-controller
        - name: Boxboat
          url: https://boxboat.com/
        maintainers:
        - email: Michael.McMullen@ibm.com
          name: mbmcmullen27
        maturity: alpha
        provider:
          name: boxboat-github-practice
          url: https://github.com/boxboat-github-practice
        relatedImages:
        - ghcr.io/boxboat-github-practice/github-arc-operator:1.1.0
        - quay.io/openshift-community-operators/github-arc-operator@sha256:d8d97d19cea466c4c240097b79bfb7de90312d937ad4db63f9e90901686e54da
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        version: 1.1.0
      entries:
      - name: github-arc-operator.v1.1.0
        version: 1.1.0
      - name: github-arc-operator.v1.0.4
        version: 1.0.4
      name: alpha
    defaultChannel: alpha
    packageName: github-arc-operator
    provider:
      name: boxboat-github-practice
      url: https://github.com/boxboat-github-practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataStax
      provider-url: ""
    name: cass-operator-community
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cass-operator.v1.23.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cassandra.datastax.com/v1beta1",
                "kind": "CassandraDatacenter",
                "metadata": {
                  "name": "dc1"
                },
                "spec": {
                  "clusterName": "development",
                  "config": {
                    "cassandra-yaml": {
                      "authenticator": "PasswordAuthenticator",
                      "authorizer": "CassandraAuthorizer",
                      "num_tokens": 16,
                      "role_manager": "CassandraRoleManager"
                    },
                    "jvm-server-options": {
                      "initial_heap_size": "1G",
                      "max_heap_size": "1G"
                    }
                  },
                  "managementApiAuth": {
                    "insecure": {}
                  },
                  "podTemplateSpec": {
                    "spec": {
                      "containers": [
                        {
                          "name": "cassandra"
                        }
                      ],
                      "securityContext": {}
                    }
                  },
                  "racks": [
                    {
                      "name": "rack1"
                    },
                    {
                      "name": "rack2"
                    },
                    {
                      "name": "rack3"
                    }
                  ],
                  "resources": {
                    "requests": {
                      "cpu": "1000m",
                      "memory": "2Gi"
                    }
                  },
                  "serverType": "cassandra",
                  "serverVersion": "4.1.2",
                  "size": 3,
                  "storageConfig": {
                    "cassandraDataVolumeClaimSpec": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "10Gi"
                        }
                      },
                      "storageClassName": "server-storage"
                    }
                  }
                }
              },
              {
                "apiVersion": "control.k8ssandra.io/v1alpha1",
                "kind": "CassandraTask",
                "metadata": {
                  "name": "example-cleanup"
                },
                "spec": {
                  "datacenter": {
                    "name": "dc2",
                    "namespace": "cass-operator"
                  },
                  "jobs": [
                    {
                      "command": "cleanup",
                      "name": "cleanup-run"
                    }
                  ]
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database,Big Data,OpenShift Optional
          certified: "true"
          containerImage: cr.k8ssandra.io/k8ssandra/cass-operator:v1.23.2
          createdAt: "2025-03-20"
          description: |
            Simple provisioning, turn-key operations, and automated remediation of Apache Cassandra clusters
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/k8ssandra/cass-operator
          support: DataStax
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CassandraDatacenter is the Schema for the cassandradatacenters
              API
            displayName: Cassandra Datacenter
            kind: CassandraDatacenter
            name: cassandradatacenters.cassandra.datastax.com
            version: v1beta1
          - description: CassandraTask is the Schema for the cassandrajobs API
            displayName: Cassandra Task
            kind: CassandraTask
            name: cassandratasks.control.k8ssandra.io
            version: v1alpha1
        description: "## Apache Cassandra\n\nThe Apache Cassandra database is the
          right choice when you need scalability and\nhigh availability without compromising
          performance. Linear scalability and\nproven fault-tolerance on commodity
          hardware or cloud infrastructure make it the\nperfect platform for mission-critical
          data. Cassandra's support for replicating\nacross multiple datacenters is
          best-in-class, providing lower latency for your\nusers and the peace of
          mind of knowing that you can survive regional outages.\n\n## DataStax Enterprise\n\nThe
          most advanced distribution of Apache Cassandra™ on the market, with the\nenterprise
          functionality needed for serious production systems and backed up and\nsupported
          by the best distributed-experts in the world. It's one platform for\nall
          types of applications anywhere, any cloud, any model: key-value, graph,\ntabular,
          JSON.\n\nDataStax Enterprise is a fully integrated and optimized database,
          with graph,\nanalytics, and search included, all with a unified security
          model. Simply put,\nit's the only database capable of meeting today's demanding
          requirements\n\n## Operator Details\n\n`cass-operator` is designed as a
          modular operator for Apache Cassandra and\nderived  distributions. Apache
          Cassandra is a distributed database consisting of\nmultiple nodes working
          in concert to store data and process queries along a\nnumber of fault domains.
          `cass-operator` has the deployment of a Cassandra\ncluster around the logical
          domain of a datacenter with the `CassandraDatacenter`\ncustom resource.\n
          \   \nUpon submission of one of these resources it handles provisioning
          the underlying\nstateful sets (analogous to C\\* logical racks), services,
          and configuration.\nAdditionally through monitoring pod state via Kubernetes
          callbacks it handles day to day\noperations such as restarting failed processes,
          scaling clusters up, and deploying\nconfiguration changes in a rolling,
          non-disruptive, fashion.\n    \nThis operator is designed to be `Namespace`
          scoped. A single Kubernetes cluster may\nbe running multiple instances of
          this operator, in separate namespaces, to support\na number of C\\* clusters
          and environments. Configuration is simple with the usage of\nYAML based
          overrides in the Custom Resource paired with an `init` container.\n    \nIn
          C\\* clusters ordering and timing of certain operations are important to
          keep the system\nevenly distributed. `cass-operator` takes advantage of
          a sidecar process within the\nmain container to handle the orchestration
          of starting our main C* process."
        displayName: DataStax Kubernetes Operator for Apache Cassandra
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - k8ssandra
        - cass-operator
        - DataStax Enterprise
        - Apache Cassandra
        - DSE
        - C*
        - Cassandra
        links:
        - name: DataStax
          url: https://datastax.com
        - name: Operator GitHub Repo
          url: https://github.com/k8ssandra/cass-operator
        - name: Config Builder GitHub Repo
          url: https://github.com/datastax/cass-config-builder
        - name: Documentation [1]
          url: https://github.com/k8ssandra/cass-operator/tree/master/docs/user
        - name: Documentation [2]
          url: https://docs.datastax.com/en/cass-operator/doc/cass-operator/cassOperatorTOC.html
        maintainers:
        - email: cass-operator@datastax.com
          name: DataStax Operator Team
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: DataStax
        relatedImages:
        - cr.k8ssandra.io/k8ssandra/cass-operator:v1.23.2
        - quay.io/community-operator-pipeline-prod/cass-operator-community@sha256:428effade29fcb3e8981e84f7df945f9bc49fe1a9b56217573db8b387706c26b
        version: 1.23.2
      entries:
      - name: cass-operator.v1.23.2
        version: 1.23.2
      - name: cass-operator.v1.23.1
        version: 1.23.1
      - name: cass-operator.v1.23.0
        version: 1.23.0
      - name: cass-operator.v1.21.1
        version: 1.21.1
      - name: cass-operator.v1.19.1
        version: 1.19.1
      - name: cass-operator.v1.17.1
        version: 1.17.1
      - name: cass-operator.v1.16.0
        version: 1.16.0
      - name: cass-operator.v1.14.0
        version: 1.14.0
      - name: cass-operator.v1.13.0
        version: 1.13.0
      - name: cass-operator.v1.10.4
        version: 1.10.4
      - name: cass-operator.v1.10.1
        version: 1.10.1
      name: stable
    defaultChannel: stable
    packageName: cass-operator-community
    provider:
      name: DataStax
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: marin3r
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: marin3r.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyConfig",
                "metadata": {
                  "name": "envoyconfig-example",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "nodeID": "example",
                  "resources": [
                    {
                      "type": "cluster",
                      "value": {
                        "connect_timeout": "0.01s",
                        "dns_lookup_family": "V4_ONLY",
                        "lb_policy": "ROUND_ROBIN",
                        "load_assignment": {
                          "cluster_name": "example",
                          "endpoints": [
                            {
                              "lb_endpoints": [
                                {
                                  "endpoint": {
                                    "address": {
                                      "socket_address": {
                                        "address": "example",
                                        "port_value": 8080
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        },
                        "name": "example",
                        "type": "STRICT_DNS"
                      }
                    },
                    {
                      "type": "route",
                      "value": {
                        "name": "local",
                        "virtual_hosts": [
                          {
                            "domains": [
                              "*"
                            ],
                            "name": "all",
                            "routes": [
                              {
                                "match": {
                                  "prefix": "/"
                                },
                                "route": {
                                  "cluster": "example"
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "listener",
                      "value": {
                        "address": {
                          "socket_address": {
                            "address": "0.0.0.0",
                            "port_value": 8443
                          }
                        },
                        "filter_chains": [
                          {
                            "filters": [
                              {
                                "name": "envoy.filters.network.http_connection_manager",
                                "typed_config": {
                                  "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager",
                                  "access_log": [
                                    {
                                      "name": "envoy.access_loggers.file",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog",
                                        "path": "/dev/stdout"
                                      }
                                    }
                                  ],
                                  "http_filters": [
                                    {
                                      "name": "envoy.filters.http.router",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router"
                                      }
                                    }
                                  ],
                                  "rds": {
                                    "config_source": {
                                      "ads": {},
                                      "resource_api_version": "V3"
                                    },
                                    "route_config_name": "local"
                                  },
                                  "stat_prefix": "https"
                                }
                              }
                            ],
                            "transport_socket": {
                              "name": "envoy.transport_sockets.tls",
                              "typed_config": {
                                "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext",
                                "common_tls_context": {
                                  "tls_certificate_sds_secret_configs": [
                                    {
                                      "name": "example.default.svc",
                                      "sds_config": {
                                        "ads": {},
                                        "resource_api_version": "V3"
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          }
                        ],
                        "name": "https"
                      }
                    },
                    {
                      "blueprint": "tlsCertificate",
                      "generateFromTlsSecret": "example.default.svc",
                      "type": "secret"
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "DiscoveryService",
                "metadata": {
                  "name": "discoveryservice-example",
                  "namespace": "my-namespace"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyDeployment",
                "metadata": {
                  "name": "envoydeployment-sample",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "discoveryServiceRef": "discoveryservice-example",
                  "envoyConfigRef": "envoyconfig-example",
                  "ports": [
                    {
                      "name": "https",
                      "port": 8443
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking
          certified: "false"
          containerImage: quay.io/3scale/marin3r
          createdAt: "2024-08-05T16:08:25Z"
          description: Lighweight, CRD based Envoy control plane for Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["envoyconfigrevisions.marin3r.3scale.net","discoveryservicecertificates.operator.marin3r.3scale.net"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/3scale-ops/marin3r
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DiscoveryServiceCertificate is an internal resource used
              to create certificates. This resource is used by the DiscoveryService
              controller to create the required certificates for the different components.
              Direct use of DiscoveryServiceCertificate objects is discouraged.
            displayName: DiscoveryServiceCertificate
            kind: DiscoveryServiceCertificate
            name: discoveryservicecertificates.operator.marin3r.3scale.net
            version: v1alpha1
          - description: DiscoveryService represents an envoy discovery service server.
              Only one instance per namespace is currently supported.
            displayName: DiscoveryService
            kind: DiscoveryService
            name: discoveryservices.operator.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfigRevision is an internal resource that stores a
              specific version of an EnvoyConfig resource. EnvoyConfigRevisions are
              automatically created and deleted by the EnvoyConfig controller and
              are not intended to be directly used. Use EnvoyConfig objects instead.
            displayName: EnvoyConfigRevision
            kind: EnvoyConfigRevision
            name: envoyconfigrevisions.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfig holds the configuration for a given envoy nodeID.
              The spec of an EnvoyConfig object holds the Envoy resources that conform
              the desired configuration for the given nodeID and that the discovery
              service will send to any envoy client that identifies itself with that
              nodeID.
            displayName: EnvoyConfig
            kind: EnvoyConfig
            name: envoyconfigs.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyDeployment is a resource to deploy and manage a Kubernetes
              Deployment of Envoy Pods.
            displayName: EnvoyDeployment
            kind: EnvoyDeployment
            name: envoydeployments.operator.marin3r.3scale.net
            version: v1alpha1
        description: |
          MARIN3R implements a control plane to deploy, configure and operate a fleet of envoy instances within a Kubernetes cluster.
          It operates a group of gateways and Pod sidecar containers to provide general purpose functionality required to operate production systems.

          Features:

          * Deploy and manage an Envoy xDS server using the DiscoveryService custom resource.
          * Inject Envoy sidecar containers based on Pod annotations.
          * Deploy Envoy as a Kubernetes Deployment using the EnvoyDeployment custom resource.
          * Dynamic Envoy configuration and re-configuration using the EnvoyConfig custom resource.
          * Use Kubernetes Secrets as certificate sources.
          * Syntactic validation of Envoy configurations.
          * Lifecycle management of Envoy containers (graceful shutdown and connection draining).
          * Self-healing.

          Check the [docs](https://github.com/3scale-ops/marin3r#readme) for more information.

          ## License
          MARIN3R is licensed under the [Apache 2.0 license](https://github.com/3scale/prometheus-exporter-operator/blob/master/LICENSE)
        displayName: MARIN3R
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - envoy
        - discovery
        - controlplane
        - proxy
        - sidecar
        - xds
        - network
        - gateway
        links:
        - name: GitHub
          url: https://github.com/3scale-ops/marin3r
        maintainers:
        - email: 3scale-operations+marin3r@redhat.com
          name: 3scale Operations Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/marin3r:v0.13.1
        - quay.io/community-operator-pipeline-prod/marin3r@sha256:68875b0da5165c5fc0d39b5c079a3706b57879f444dba77f4ed04f4db4f1c664
        version: 0.13.1
      entries:
      - name: marin3r.v0.13.1
        version: 0.13.1
      - name: marin3r.v0.12.3
        version: 0.12.3
      - name: marin3r.v0.11.1
        version: 0.11.1
      - name: marin3r.v0.10.0
        version: 0.10.0
      name: alpha
    - currentCSV: marin3r.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyConfig",
                "metadata": {
                  "name": "envoyconfig-example",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "nodeID": "example",
                  "resources": [
                    {
                      "type": "cluster",
                      "value": {
                        "connect_timeout": "0.01s",
                        "dns_lookup_family": "V4_ONLY",
                        "lb_policy": "ROUND_ROBIN",
                        "load_assignment": {
                          "cluster_name": "example",
                          "endpoints": [
                            {
                              "lb_endpoints": [
                                {
                                  "endpoint": {
                                    "address": {
                                      "socket_address": {
                                        "address": "example",
                                        "port_value": 8080
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        },
                        "name": "example",
                        "type": "STRICT_DNS"
                      }
                    },
                    {
                      "type": "route",
                      "value": {
                        "name": "local",
                        "virtual_hosts": [
                          {
                            "domains": [
                              "*"
                            ],
                            "name": "all",
                            "routes": [
                              {
                                "match": {
                                  "prefix": "/"
                                },
                                "route": {
                                  "cluster": "example"
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "listener",
                      "value": {
                        "address": {
                          "socket_address": {
                            "address": "0.0.0.0",
                            "port_value": 8443
                          }
                        },
                        "filter_chains": [
                          {
                            "filters": [
                              {
                                "name": "envoy.filters.network.http_connection_manager",
                                "typed_config": {
                                  "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager",
                                  "access_log": [
                                    {
                                      "name": "envoy.access_loggers.file",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog",
                                        "path": "/dev/stdout"
                                      }
                                    }
                                  ],
                                  "http_filters": [
                                    {
                                      "name": "envoy.filters.http.router",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router"
                                      }
                                    }
                                  ],
                                  "rds": {
                                    "config_source": {
                                      "ads": {},
                                      "resource_api_version": "V3"
                                    },
                                    "route_config_name": "local"
                                  },
                                  "stat_prefix": "https"
                                }
                              }
                            ],
                            "transport_socket": {
                              "name": "envoy.transport_sockets.tls",
                              "typed_config": {
                                "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext",
                                "common_tls_context": {
                                  "tls_certificate_sds_secret_configs": [
                                    {
                                      "name": "example.default.svc",
                                      "sds_config": {
                                        "ads": {},
                                        "resource_api_version": "V3"
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          }
                        ],
                        "name": "https"
                      }
                    },
                    {
                      "blueprint": "tlsCertificate",
                      "generateFromTlsSecret": "example.default.svc",
                      "type": "secret"
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "DiscoveryService",
                "metadata": {
                  "name": "discoveryservice-example",
                  "namespace": "my-namespace"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyDeployment",
                "metadata": {
                  "name": "envoydeployment-sample",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "discoveryServiceRef": "discoveryservice-example",
                  "envoyConfigRef": "envoyconfig-example",
                  "ports": [
                    {
                      "name": "https",
                      "port": 8443
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking
          certified: "false"
          containerImage: quay.io/3scale/marin3r
          createdAt: "2024-08-05T16:08:25Z"
          description: Lighweight, CRD based Envoy control plane for Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["envoyconfigrevisions.marin3r.3scale.net","discoveryservicecertificates.operator.marin3r.3scale.net"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/3scale-ops/marin3r
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DiscoveryServiceCertificate is an internal resource used
              to create certificates. This resource is used by the DiscoveryService
              controller to create the required certificates for the different components.
              Direct use of DiscoveryServiceCertificate objects is discouraged.
            displayName: DiscoveryServiceCertificate
            kind: DiscoveryServiceCertificate
            name: discoveryservicecertificates.operator.marin3r.3scale.net
            version: v1alpha1
          - description: DiscoveryService represents an envoy discovery service server.
              Only one instance per namespace is currently supported.
            displayName: DiscoveryService
            kind: DiscoveryService
            name: discoveryservices.operator.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfigRevision is an internal resource that stores a
              specific version of an EnvoyConfig resource. EnvoyConfigRevisions are
              automatically created and deleted by the EnvoyConfig controller and
              are not intended to be directly used. Use EnvoyConfig objects instead.
            displayName: EnvoyConfigRevision
            kind: EnvoyConfigRevision
            name: envoyconfigrevisions.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfig holds the configuration for a given envoy nodeID.
              The spec of an EnvoyConfig object holds the Envoy resources that conform
              the desired configuration for the given nodeID and that the discovery
              service will send to any envoy client that identifies itself with that
              nodeID.
            displayName: EnvoyConfig
            kind: EnvoyConfig
            name: envoyconfigs.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyDeployment is a resource to deploy and manage a Kubernetes
              Deployment of Envoy Pods.
            displayName: EnvoyDeployment
            kind: EnvoyDeployment
            name: envoydeployments.operator.marin3r.3scale.net
            version: v1alpha1
        description: |
          MARIN3R implements a control plane to deploy, configure and operate a fleet of envoy instances within a Kubernetes cluster.
          It operates a group of gateways and Pod sidecar containers to provide general purpose functionality required to operate production systems.

          Features:

          * Deploy and manage an Envoy xDS server using the DiscoveryService custom resource.
          * Inject Envoy sidecar containers based on Pod annotations.
          * Deploy Envoy as a Kubernetes Deployment using the EnvoyDeployment custom resource.
          * Dynamic Envoy configuration and re-configuration using the EnvoyConfig custom resource.
          * Use Kubernetes Secrets as certificate sources.
          * Syntactic validation of Envoy configurations.
          * Lifecycle management of Envoy containers (graceful shutdown and connection draining).
          * Self-healing.

          Check the [docs](https://github.com/3scale-ops/marin3r#readme) for more information.

          ## License
          MARIN3R is licensed under the [Apache 2.0 license](https://github.com/3scale/prometheus-exporter-operator/blob/master/LICENSE)
        displayName: MARIN3R
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - envoy
        - discovery
        - controlplane
        - proxy
        - sidecar
        - xds
        - network
        - gateway
        links:
        - name: GitHub
          url: https://github.com/3scale-ops/marin3r
        maintainers:
        - email: 3scale-operations+marin3r@redhat.com
          name: 3scale Operations Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/marin3r:v0.13.1
        - quay.io/community-operator-pipeline-prod/marin3r@sha256:68875b0da5165c5fc0d39b5c079a3706b57879f444dba77f4ed04f4db4f1c664
        version: 0.13.1
      entries:
      - name: marin3r.v0.13.1
        version: 0.13.1
      - name: marin3r.v0.12.3
        version: 0.12.3
      - name: marin3r.v0.11.1
        version: 0.11.1
      - name: marin3r.v0.10.0
        version: 0.10.0
      name: stable
    defaultChannel: stable
    packageName: marin3r
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: kubeturbo
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubeturbo-operator.v8.6.5-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.6.5
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - turbonomic/kubeturbo-operator:8.6.5
        - quay.io/openshift-community-operators/kubeturbo@sha256:0739d5035590cece6d2a573aa1e799b0b0cab8b548a41cc2488cf465486cf4a5
        version: 8.6.5-beta.1
      entries:
      - name: kubeturbo-operator.v8.6.5-beta.1
        version: 8.6.5-beta.1
      - name: kubeturbo-operator.v8.6.0
        version: 8.6.0
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: beta
    - currentCSV: kubeturbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.6
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/kubeturbo@sha256:f7c7a998ce5b4590c80ae301c6e1bd81bb577a54059a8b375c5468aad1f2bf6f
        - turbonomic/kubeturbo-operator:8.6
        version: 8.6.0
      entries:
      - name: kubeturbo-operator.v8.6.0
        version: 8.6.0
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: stable
    - currentCSV: kubeturbo-operator.v8.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.4
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/kubeturbo@sha256:3028579f4909be6b8dcd970e778bc88d0576c76e55b98c886738b8f601cdf4c1
        - turbonomic/kubeturbo-operator:8.4
        version: 8.4.0
      entries:
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: v8.4.0
    - currentCSV: kubeturbo-operator.v8.5.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.5
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - turbonomic/kubeturbo-operator:8.5
        - quay.io/openshift-community-operators/kubeturbo@sha256:e50343879b4c3c4002c5e7ff67f4664df441cf5f239f59fa98b7fddd75516d41
        version: 8.5.0
      entries:
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: v8.5.0
    - currentCSV: kubeturbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.6
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/kubeturbo@sha256:f7c7a998ce5b4590c80ae301c6e1bd81bb577a54059a8b375c5468aad1f2bf6f
        - turbonomic/kubeturbo-operator:8.6
        version: 8.6.0
      entries:
      - name: kubeturbo-operator.v8.6.0
        version: 8.6.0
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: v8.6.0
    defaultChannel: stable
    packageName: kubeturbo
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/lws-operator
    name: leader-worker-set
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: leader-worker-set.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "LeaderWorkerSetOperator",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed",
                  "operatorLogLevel": "Normal"
                }
              }
            ]
          capabilities: Basic Install
          categories: Openshift Optional
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-04-14T08:12:51Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-lws-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          repository: https://github.com/openshift/lws-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: LeaderWorkerSetOperator
            name: leaderworkersetoperators.operator.openshift.io
            version: v1
        description: "Leader Worker Set Operator is based on the [LWS](https://lws.sigs.k8s.io/docs/)
          open source project.\nLeader Worker Set: An API for deploying a group of
          pods as a unit of replication. \nIt aims to address common deployment patterns
          of AI/ML inference workloads, \nespecially multi-host inference workloads
          where the LLM will be sharded and run across multiple devices on multiple
          nodes.\n"
        displayName: Leader Worker Set Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - leader-worker-set
        links:
        - name: Leader Worker Set
          url: https://lws.sigs.k8s.io/docs/overview/
        - name: Operand Source Code
          url: https://github.com/openshift/kubernetes-sigs-lws
        - name: Operator Source Code
          url: https://github.com/openshift/lws-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: Red Hat
          url: https://github.com/openshift/lws-operator
        relatedImages:
        - registry.redhat.io/leader-worker-set/lws-operator-bundle@sha256:f641cf3b2d6659e26eb0ae49c67a3416152a2fbc2f26f490889a2bd169b9ea06
        - registry.redhat.io/leader-worker-set/lws-rhel9-operator@sha256:c202bfa15626262ff22682b64ac57539d28dd35f5960c490f5afea75cef34309
        - registry.redhat.io/leader-worker-set/lws-rhel9@sha256:affb303b1173c273231bb50fef07310b0e220d2f08bfc0aa5912d0825e3e0d4f
        version: 1.0.0
      entries:
      - name: leader-worker-set.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    defaultChannel: stable-v1.0
    packageName: leader-worker-set
    provider:
      name: Red Hat
      url: https://github.com/openshift/lws-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-businessautomation: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: businessautomation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: businessautomation-operator.7.13.5-17
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"app.kiegroup.org/v2","kind":"KieApp","metadata":{"name":"rhpam-trial"},"spec":{"environment":"rhpam-trial"}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/rhpam-7/rhpam-rhel8-operator@sha256:3b4f420def9e5d2c768d5209264bd5f9af6d6a37b22ef9a988a167ff7d9959cf
          createdAt: "2025-09-29 14:49:42"
          description: Deploys and manages Red Hat Process Automation Manager and
            Red Hat Decision Manager environments.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Process Automation
            Manager", "Red Hat Decision Manager"]'
          repository: https://github.com/kiegroup/kie-cloud-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A project prescription running an RHPAM/RHDM environment.
            displayName: KieApp
            kind: KieApp
            name: kieapps.app.kiegroup.org
            version: v2
        description: |-
          Deploys and manages Red Hat Process Automation Manager and Red Hat Decision Manager environments.

          * **Red Hat Process Automation Manager** is a platform for developing containerized microservices and applications that automate business decisions and processes. It includes business process management (BPM), business rules management (BRM), and business resource optimization and complex event processing (CEP) technologies. It also includes a user experience platform to create engaging user interfaces for process and decision services with minimal coding.

          [See more](https://www.redhat.com/en/products/process-automation).
        displayName: Business Automation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kieapp
        - pam
        - decision
        - kie
        - cloud
        - bpm
        - process
        - automation
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-process-automation-manager
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_process_automation_manager/7.13/#category-deploying-red-hat-process-automation-manager-on-openshift
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:3e5d34d689309eaa346b27ed9f0f517199d82eb9410d1bcc5e99dea367e9e242
        - registry.redhat.io/openshift4/ose-cli@sha256:310339cb93bca052f20d897f3fabdd608983e910af19ec18d1c1c67833ee3cb7
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:a3e44e81b1fe4bcbd3c1e1d7dcbd6c4fc24d9eb2458d503675d431b973b9d080
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:4ba07c476202c61c9a2b59414afd6113a55c5c8d73cc4d56281943c81f73fe6b
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:d1e5461db8983a13f98259152dc3cfa2aa677c29f799104190e5cefa83cf97b5
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:4ee8b93e87cb8012b46324a35e3806c6f7a72d6b27292cf5180dcf0f5da6810f
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:bd5c6586b4859dec23ad9530ee98bab33497ab251d544f863fc0af01cbd45101
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef9165b4497da980bd33c935a638179f7e1969dc227668b21cb79b94ecd10e51
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:32912270eba0f2464da88f315bde8bf1ef5bbded814db156811d7a415a458f86
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:7cf8ca0c015621c90d8fc62629ef8711571d5292e2d5ae12a0f541cdd9bd49b9
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:3a901b54a9d35d38b5aca275df2160e3190a874e139fcb606b9969b38284b3dc
        - registry.redhat.io/rhpam-7/rhpam-operator-bundle@sha256:b18c746b4270819be88665dedae34c7635df44d492e989f433515dee0d992384
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:012b24f6713f98358ac044a8b5936502af22370a032cb7fbf17edacbc5e165b7
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:4edac282119898ab1395030eecaee584990064e88fc8e65fb999f19ea2ef3f8b
        - registry.redhat.io/rhpam-7/rhpam-rhel8-operator@sha256:3b4f420def9e5d2c768d5209264bd5f9af6d6a37b22ef9a988a167ff7d9959cf
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:228c6ab5b83e215a98f6eb76250feb2ae3096fd21398c44e5b2701257c9c3493
        - registry.redhat.io/rhscl/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:3fbef82d1c5da8da1606d1a2d5dcfd20000da574737eb32b772d4f0123b179cb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:dc24aa382e02c4ac058d4b824a21f0e90a6259d6d817d0341b2a41809b5daa78
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:a94739f0e52ae43bd73f3218482daf0199b6eda367a2e510ecb7b64fb7ba9942
        version: 7.13.5-17
      entries:
      - name: businessautomation-operator.7.13.5-17
        version: 7.13.5-17
      - name: businessautomation-operator.7.13.5-16
        version: 7.13.5-16
      - name: businessautomation-operator.7.13.5-15
        version: 7.13.5-15
      - name: businessautomation-operator.7.13.5-14
        version: 7.13.5-14
      - name: businessautomation-operator.7.13.5-13
        version: 7.13.5-13
      - name: businessautomation-operator.7.13.5-12
        version: 7.13.5-12
      - name: businessautomation-operator.7.13.5-11
        version: 7.13.5-11
      - name: businessautomation-operator.7.13.5-10
        version: 7.13.5-10
      - name: businessautomation-operator.7.13.5-9
        version: 7.13.5-9
      - name: businessautomation-operator.7.13.5-8
        version: 7.13.5-8
      - name: businessautomation-operator.7.13.5-7
        version: 7.13.5-7
      - name: businessautomation-operator.7.13.5-6
        version: 7.13.5-6
      - name: businessautomation-operator.7.13.5-5
        version: 7.13.5-5
      - name: businessautomation-operator.7.13.5-4
        version: 7.13.5-4
      - name: businessautomation-operator.7.13.5-3
        version: 7.13.5-3
      - name: businessautomation-operator.7.13.5-2
        version: 7.13.5-2
      - name: businessautomation-operator.7.13.5-1
        version: 7.13.5-1
      - name: businessautomation-operator.7.13.4-4
        version: 7.13.4-4
      - name: businessautomation-operator.7.13.4-3
        version: 7.13.4-3
      - name: businessautomation-operator.7.13.4-2
        version: 7.13.4-2
      - name: businessautomation-operator.7.13.4-1
        version: 7.13.4-1
      - name: businessautomation-operator.7.13.3-5
        version: 7.13.3-5
      - name: businessautomation-operator.7.13.3-4
        version: 7.13.3-4
      - name: businessautomation-operator.7.13.3-3
        version: 7.13.3-3
      - name: businessautomation-operator.7.13.3-2
        version: 7.13.3-2
      - name: businessautomation-operator.7.13.3-1
        version: 7.13.3-1
      - name: businessautomation-operator.7.13.2-3
        version: 7.13.2-3
      - name: businessautomation-operator.7.13.2-2
        version: 7.13.2-2
      - name: businessautomation-operator.7.13.2-1
        version: 7.13.2-1
      - name: businessautomation-operator.7.13.1-2
        version: 7.13.1-2
      - name: businessautomation-operator.7.13.1-1
        version: 7.13.1-1
      - name: businessautomation-operator.7.13.0-1
        version: 7.13.0-1
      - name: businessautomation-operator.7.12.1-4
        version: 7.12.1-4
      - name: businessautomation-operator.7.12.1-3
        version: 7.12.1-3
      - name: businessautomation-operator.7.12.1-2
        version: 7.12.1-2
      - name: businessautomation-operator.7.12.1-1
        version: 7.12.1-1
      - name: businessautomation-operator.7.12.0-2
        version: 7.12.0-2
      - name: businessautomation-operator.7.12.0-1
        version: 7.12.0-1
      - name: businessautomation-operator.7.11.1-3
        version: 7.11.1-3
      - name: businessautomation-operator.7.11.1-2
        version: 7.11.1-2
      - name: businessautomation-operator.7.11.1-1
        version: 7.11.1-1
      - name: businessautomation-operator.7.11.0-2
        version: 7.11.0-2
      - name: businessautomation-operator.7.11.0-1
        version: 7.11.0-1
      - name: businessautomation-operator.7.10.1-2
        version: 7.10.1-2
      - name: businessautomation-operator.7.10.1-1
        version: 7.10.1-1
      - name: businessautomation-operator.7.10.0-2
        version: 7.10.0-2
      - name: businessautomation-operator.7.10.0-1
        version: 7.10.0-1
      - name: businessautomation-operator.7.9.1-1
        version: 7.9.1-1
      - name: businessautomation-operator.7.9.0
        version: 7.9.0
      - name: businessautomation-operator.7.9.0-2
        version: 7.9.0-2
      - name: businessautomation-operator.7.8.1
        version: 7.8.1
      - name: businessautomation-operator.7.8.0
        version: 7.8.0
      - name: businessautomation-operator.1.4.1
        version: 1.4.1
      - name: businessautomation-operator.1.4.0
        version: 1.4.0
      - name: businessautomation-operator.1.3.0
        version: 1.3.0
      - name: businessautomation-operator.1.2.1
        version: 1.2.1
      - name: businessautomation-operator.1.2.0
        version: 1.2.0
      name: stable
    defaultChannel: stable
    packageName: businessautomation-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-commons-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: commons-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/commons-operator@sha256:b06a873ea5d18482fbe431031e5cb5b156669a89e7d6844edefe673dc13e6bc4
          description: Stackable Commons Operator
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/commons-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for AuthenticationClassSpec via
              `CustomResource`
            displayName: authenticationclasses.authentication.stackable.tech
            kind: AuthenticationClass
            name: authenticationclasses.authentication.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for ConnectionSpec via `CustomResource`
            displayName: s3connections.s3.stackable.tech
            kind: S3Connection
            name: s3connections.s3.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for BucketSpec via `CustomResource`
            displayName: s3buckets.s3.stackable.tech
            kind: S3Bucket
            name: s3buckets.s3.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Commons Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - commons
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/commons-operator@sha256:b06a873ea5d18482fbe431031e5cb5b156669a89e7d6844edefe673dc13e6bc4
        - registry.connect.redhat.com/stackable/stackable-commons-operator@sha256:2a9de3ee2f44c74604a516a2f4ad7525315ea37b3b7193505c68e065821a9b06
        version: 25.11.0
      entries:
      - name: commons-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-commons-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: GitLab, Inc.
      provider-url: https://gitlab.com
    name: gitlab-runner-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-runner-operator.v1.43.3
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta2",
                "kind": "Runner",
                "metadata": {
                  "name": "gitlab-runner-example",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "gitlabUrl": "https://gitlab.example.com",
                  "token": "runner-token-secret",
                  "tags": "kubernetes,example",
                  "concurrent": 10,
                  "imagePullPolicy": "IfNotPresent"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery, Developer Tools
          containerImage: registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
          createdAt: "2025-11-28T23:15:09Z"
          description: GitLab Runner operator manages lifecycle of GitLab Runner instances
          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: "true"
          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.skipRange: '>=1.11.0 <1.43.3'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: none
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
          support: GitLab, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Runner is the open source project used to run your jobs and
              send the results back to GitLab
            displayName: GitLab Runner
            kind: Runner
            name: runners.apps.gitlab.com
            version: v1beta2
        description: |-
          GitLab Runner is the lightweight, highly-scalable agent that runs your build jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.

              The GitLab Runner operator manages the lifecycle of GitLab Runner in Kubernetes or Openshift clusters. The operator aims to automate the tasks needed to run your CI/CD jobs in your container orchestration platform.

              ## Prerequisites

                For Kubernetes cluster, install cert-manager:

                ```shell
                kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.7.1/cert-manager.yaml
                ```

              ## GitLab Runner version

              This version of **GitLab Runner Operator** ships with **GitLab Runner v18.6.3**.

              To use a different version of **GitLab Runner** change the [`runnerImage` and `helperImage` properties](https://docs.gitlab.com/runner/configuration/configuring_runner_operator.html#operator-properties).

              ## Usage

               To link a GitLab Runner instance to a self-hosted GitLab instance or the hosted [GitLab](https://gitlab.com), you first need to:

               1. Create a secret containing the `runner-token` from your GitLab project.

                ```
                cat > gitlab-runner-secret.yml << EOF
                apiVersion: v1
                kind: Secret
                metadata:
                  name: gitlab-runner-secret
                type: Opaque
                # Only one of the following fields must be set. The Operator will fail to register Runner if both are provided.
                # # NOTE: runner-registration-token is deprecated and will be removed in GitLab 18.0. You should use runner-token instead.
                stringData:
                  runner-token: REPLACE_ME # your project runner token
                  # runner-registration-token: "" # your project runner secret
                EOF
                ```

                ```
                oc apply -f gitlab-runner-secret.yml
                ```

               2. Create the Custom Resource Definition (CRD) file and include the following information. The tags value must be openshift for the job to run.

                 ```
                 cat > gitlab-runner.yml << EOF
                 apiVersion: apps.gitlab.com/v1beta2
                 kind: Runner
                 metadata:
                   name: gitlab-runner
                 spec:
                   gitlabUrl: https://gitlab.example.com
                   buildImage: alpine
                   token: gitlab-runner-secret
                   tags: openshift
                 EOF
                 ```

                ```
                oc apply -f gitlab-runner.yml
                ```

              ## Full documentation

              Visit [Install GitLab Runner Operator](https://docs.gitlab.com/runner/install/operator.html)
        displayName: GitLab Runner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GitLab
        - CI/CD
        - DevOps
        - SAST
        - DAST
        links:
        - name: Gitlab Runner Operator
          url: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
        - name: GitLab Docs
          url: https://docs.gitlab.com
        - name: GitLab Runner
          url: https://docs.gitlab.com/runner/
        - name: GitLab CI/CD
          url: https://docs.gitlab.com/ee/ci/quick_start/
        maintainers:
        - email: support@gitlab.com
          name: Georgi N. Georgiev
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: GitLab, Inc.
          url: https://gitlab.com
        relatedImages:
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/openshift4/ose-kube-rbac-proxy@sha256:bb84ead437042603254efcb703442be8500a9450b10bbcaaee81b48a6ed869ea
        - quay.io/community-operator-pipeline-prod/gitlab-runner-operator@sha256:3b051d097c14fa948cbc7356ca60e1a7fb3ca3e4ce4aeea19a5d8c5b0ffb8c5d
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-helper-ocp@sha256:9c1723a09b7255e8ab13954375e263965de1955d9f1fdc5e64d7610c7495e614
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-ocp@sha256:de78dc586ebc1c1ea6e4be7b8a21e949bc24860051e3eab93f3468751a04ca0a
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
        version: 1.43.3
      entries:
      - name: gitlab-runner-operator.v1.43.3
        version: 1.43.3
      - name: gitlab-runner-operator.v1.43.2
        version: 1.43.2
      - name: gitlab-runner-operator.v1.43.1
        version: 1.43.1
      - name: gitlab-runner-operator.v1.43.0
        version: 1.43.0
      name: stable
    defaultChannel: stable
    packageName: gitlab-runner-operator
    provider:
      name: GitLab, Inc.
      url: https://gitlab.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OnGres
      provider-url: https://ongres.com
    name: stackgres-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stackgres.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - registry.connect.redhat.com/ongres/stackgres-certified-1@sha256:faa7a5d70521507defdbde77666970420dbd8c6241a7144ba1f2e18624256498
        version: 1.18.3
      entries:
      - name: stackgres.v1.18.3
        version: 1.18.3
      - name: stackgres.v1.18.2
        version: 1.18.2
      - name: stackgres.v1.18.1
        version: 1.18.1
      name: candidate
    - currentCSV: stackgres.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - registry.connect.redhat.com/ongres/stackgres-certified-1@sha256:faa7a5d70521507defdbde77666970420dbd8c6241a7144ba1f2e18624256498
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        version: 1.18.3
      entries:
      - name: stackgres.v1.18.3
        version: 1.18.3
      - name: stackgres.v1.18.2
        version: 1.18.2
      - name: stackgres.v1.18.1
        version: 1.18.1
      name: fast
    - currentCSV: stackgres.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - registry.connect.redhat.com/ongres/stackgres-certified-1@sha256:faa7a5d70521507defdbde77666970420dbd8c6241a7144ba1f2e18624256498
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        version: 1.18.3
      entries:
      - name: stackgres.v1.18.3
        version: 1.18.3
      - name: stackgres.v1.18.2
        version: 1.18.2
      - name: stackgres.v1.18.1
        version: 1.18.1
      name: stable
    defaultChannel: stable
    packageName: stackgres-certified
    provider:
      name: OnGres
      url: https://ongres.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-glue-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-glue-controller.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/glue-controller:0.3.0
          createdAt: "2025-11-29T04:47:04Z"
          description: AWS Glue controller is a service controller for managing Glue
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Job represents the state of an AWS glue Job resource.
            displayName: Job
            kind: Job
            name: jobs.glue.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Glue resources in AWS from within your Kubernetes cluster.

          **About Amazon Glue**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Glue
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - glue
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Glue Developer Resources
          url: https://aws.amazon.com/Glue/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: glue maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-glue-controller@sha256:cd4c331b8a043a636f00c854514d1e4f4baff330787d94a8f114e69ab125a227
        - public.ecr.aws/aws-controllers-k8s/glue-controller:0.3.0
        version: 0.3.0
      entries:
      - name: ack-glue-controller.v0.3.0
        version: 0.3.0
      - name: ack-glue-controller.v0.2.2
        version: 0.2.2
      - name: ack-glue-controller.v0.2.1
        version: 0.2.1
      - name: ack-glue-controller.v0.2.0
        version: 0.2.0
      - name: ack-glue-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-glue-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Cisco
      provider-url: ""
    name: aci-containers-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aci-containers-operator.v1.0.11
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"aci.ctrl/v1alpha1","kind":"AciContainersOperator","metadata":{"name":"acicnioperator","namespace":"aci-containers-system"},"spec":{}}]'
          capabilities: Seamless Upgrades
          categories: Networking
          certified: "false"
          containerImage: quay.io/noiro/aci-containers-operator@sha256:73ceb1c96e68c2bd1c85feb495371b460329450d27e73818e76af1916dd412d6
          createdAt: "2025-11-12T12:00:00Z"
          description: The Cisco Application Centric Infrastructure (ACI) Containers
            Operator brings the ACI CNI Plugin and Policy model to Kubernetes clusters.
          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"
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://github.com/noironetworks/aci-containers/blob/master/README.md
          repository: https://github.com/noironetworks/aci-containers
          support: acisupport@cisco.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Aci Containers Operator
            displayName: AciContainersOperator
            kind: AciContainersOperator
            name: acicontainersoperators.aci.ctrl
            version: v1alpha1
        description: |
          ## ACI CNI Plugin

          The Cisco Application Centric Infrastructure (ACI) CNI plugin brings the ACI Networking and Policy model to Kubernetes clusters that reside on-prem or in the cloud. It is fully open source and relies on the Opflex Protocol to program Open vSwitch instances running on the Kubernetes nodes. It provides IP address management, L2/L3 networking, load balancing, and security functions for container workloads.

          The Cisco ACI CNI plugin for the Red Hat OpenShift Container Platform provides a single, programmable network infrastructure that eliminates bottlenecks between OpenShift workloads and the rest of the infrastructure while providing enterprise-grade security and offers flexible micro segmentation possibilities.

          Unified Networking - By extending the integrated overlay of the ACI fabric to OpenShift workloads, Pod and Service endpoints are managed as native ACI network resources at the same level as Bare Metal or Virtual Machines.

          No Egress Router Required - Applications running in OpenShift Pods that need high-bandwidth, low-latency traffic for data transfers external to the cluster suffer the bottleneck imposed by the egress router implementation. Pods can easily connect with other fabric or non-fabric endpoints leveraging the combined hardware and software distributed routing and switching provided by ACI and the ACI CNI plugin.

          Simplified Operations and Enhanced Visibility - Whether policies and networking are defined by the devops or fabric or security admins, the APIC becomes the single source of truth for operations and security governance. Kubernetes workload visibility is provided to Network Operators within their familiar Cisco tools.

          Hardware-assisted Load Balancing - Ingress connections to LoadBalancer-type services using ACI’s Policy Based Redirect technology moves load balancing into the fabric's hardware.

          Granular Security - Security can be implemented by using native NetworkPolicy or by using ACI EPGs and contracts, or both models complementing each other. Network policy of container workloads becomes a shared responsibility while ensuring global compliance and tenant constraints are enforced.
        displayName: Cisco ACI Containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cisco
        - aci
        links:
        - name: Cisco ACI Homepage
          url: https://www.cisco.com/c/en/us/td/docs/switches/datacenter/aci/apic/sw/kb/b_Kubernetes_Integration_with_ACI.html
        maintainers:
        - email: abhishs9@cisco.com
          name: 'Abhishek Sharma '
        - email: sumitnaiksatam@gmail.com
          name: Sumit Naiksatam
        - email: vlella@cisco.com
          name: Vishal Lella
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Cisco
        relatedImages:
        - registry.connect.redhat.com/noiro/aci-operator-bundle@sha256:07ff4b08266ebe5b5f897689a1253afc17805b2ba3e5c7de7b71358709466883
        - quay.io/noiro/acc-provision-operator@sha256:f4d1bff9c15e1ecbc8fec870c191669d3e75e2552d0070bd14908328f0924023
        - quay.io/noiro/aci-containers-operator@sha256:73ceb1c96e68c2bd1c85feb495371b460329450d27e73818e76af1916dd412d6
        version: 1.0.11
      entries:
      - name: aci-containers-operator.v1.0.11
        version: 1.0.11
      name: stable
    defaultChannel: stable
    packageName: aci-containers-operator
    provider:
      name: Cisco
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Harness Inc.
      provider-url: https://harness.io
    name: harness-gitops-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: harness-gitops-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "gitops.harness.io/v1alpha1",
                "kind": "GitopsAgent",
                "metadata": {
                  "annotations": {
                    "containerImage": "harness/gitops-agent-controller@sha256:e4342fb1599538d2b6145e644f1e302b2783a48347c53a1da7ec8e2454df5fde",
                    "createdAt": "2025-07-31T12:11:18Z"
                  },
                  "name": "gitops-agent-sample"
                },
                "spec": {
                  "identity": {
                    "accountIdentifier": "accountIdentifier",
                    "agentIdentifier": "agentIdentifier",
                    "agentName": "agentName"
                  },
                  "replicas": 1,
                  "secrets": {
                    "agentSecret": "agentSecret"
                  },
                  "target": {
                    "http": "https://app.harness.io/gitops/",
                    "protocol": "HTTP1"
                  },
                  "upgrade": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: harness/gitops-agent-controller@sha256:e4342fb1599538d2b6145e644f1e302b2783a48347c53a1da7ec8e2454df5fde
          createdAt: "2025-07-31T06:41:18Z"
          description: Harness operator to manage and provision GitOps Agent
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: Not required
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Harness Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Schema for the Gitops Agents API
            displayName: Gitops Agent
            kind: GitopsAgent
            name: gitopsagents.gitops.harness.io
            version: v1alpha1
        description: |-
          ## Overview
          Harness Gitops Operator manages the full lifecycle for [Gitops Agent](https://developer.harness.io/docs/continuous-delivery/gitops/connect-and-manage/install-a-harness-git-ops-agent/)

          The operator aims to provide the following:

            * Easy configuration and installation of Harness GitOps Agent.
            * Provide seamless upgrades for Harness GitOps Agent.
            * Monitoring and autorecovery for GitOps Agent.

          ## Usage
          Deploy gitops-agent in namespace where operator is installed with basic setup.

          ### Prerequisites:
            * Go to your Harness account and create a new gitops agent
            * Copy account, org and project identifiers
            * Retrieve the agent secret key

          ```
          apiVersion: gitops.harness.io/v1alpha1
          kind: GitopsAgent
          metadata:
            name: gitops-agent-sample
          spec:
            identity:
              accountIdentifier: accountIdentifier
              agentIdentifier: agentIdentifier
              agentName: agentName
            secrets:
              agentSecret: agentSecret
            target:
              http: https://app.harness.io/gitops/
              protocol: HTTP1
            replicas: 1
            upgrade:
              enabled: true
          ```
          **Note:** Gitops Agent require an active ArgoCD instance running in the same namespace where agent is installed.

          See [Harness Documentation](https://developer.harness.io/) for more information.
        displayName: Harness GitOps Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - harness
        - agent
        - cd
        - argocd
        - kubernetes
        links:
        - name: Harness Gitops Operator
          url: https://harness-gitops-operator.domain
        maintainers:
        - email: alexandru.bosii@harness.io
          name: Alexandru Bosii
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Harness Inc.
          url: https://harness.io
        relatedImages:
        - docker.io/harness/gitops-agent@sha256:c9f57338be294d32a73a4cbecf90dfff50f5d36a699f3ec32d962dcb64d8d085
        - harness/gitops-agent-controller@sha256:e4342fb1599538d2b6145e644f1e302b2783a48347c53a1da7ec8e2454df5fde
        - registry.connect.redhat.com/harness/gitops-operator@sha256:f97cdc2245b7133a04235c55540d3a87165e080b1d5b9572a663731f6ccbe597
        version: 0.3.0
      entries:
      - name: harness-gitops-operator.v0.3.0
        version: 0.3.0
      name: alpha
    defaultChannel: alpha
    packageName: harness-gitops-operator
    provider:
      name: Harness Inc.
      url: https://harness.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-secret-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: secret-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          description: Stackable Secret Operator
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/secret-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          This is a Kubernetes operator to provide secret functionality to other Stackable operators. The Stackable Secret Operator
          is part of the Stackable Data Platform, a curated selection of the best open source data apps like Kafka, Druid, Trino or Spark, all
          working together seamlessly. Based on Kubernetes, it runs everywhere - on prem or in the cloud.

          You can install the operator using [stackablectl or helm](https://docs.stackable.tech/home/stable/secret-operator/installation.html).

          NOTE: Make sure you install this operator in a namespace called "stackable-operators". Failing to do so will result in a broken installation.
        displayName: Stackable Secret Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secret
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/secret-operator@sha256:832b8c0b4900c51337ce9d1b631e3aea9bf221bcdbcf7b585b0fedaae77b5c87
        - quay.io/stackable/sig-storage/csi-node-driver-registrar@sha256:ab4a3289015f7de39c4dc987fa6183bcb157294a841c88fa842332ce66b068d8
        - quay.io/stackable/sig-storage/csi-provisioner@sha256:142e0b069dcc100671c91d66d8c973d56ea330b4e11ab79e5eb4fea5c79c6ecb
        - registry.connect.redhat.com/stackable/secret-operator@sha256:9e7955fccd149247741beb9eb6d30f519f262a847a8ba8310c8863a334cd4fee
        version: 25.11.0
      entries:
      - name: secret-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-secret-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: rebellions
      provider-url: https://rebellions.ai/
    name: rbln-npu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rbln-npu-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rebellions.ai/v1beta1",
                "kind": "RBLNClusterPolicy",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "rbln-npu-operator"
                  },
                  "name": "rbln-cluster-policy"
                },
                "spec": {
                  "daemonsets": {},
                  "devicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "rebellions/rbln-metrics-exporter",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "name": "rbln",
                  "npuFeatureDiscovery": {
                    "enabled": true,
                    "image": "rebellions/rbln-npu-feature-discovery",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM_PT",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest",
                    "vfioChecker": {
                      "image": "rebellions/rbln-vfio-manager",
                      "version": "latest"
                    }
                  },
                  "vfioManager": {
                    "enabled": true,
                    "image": "rebellions/rbln-vfio-manager",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "version": "latest"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
          createdAt: "2025-09-10T02:09:06Z"
          description: Deploy and manage Rebellions NPU in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Rebellions
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RBLNClusterPolicy is the Schema for the RBLNClusterPolicys
              API
            displayName: RBLNCluster Policy
            kind: RBLNClusterPolicy
            name: rblnclusterpolicies.rebellions.ai
            version: v1beta1
        description: RBLN Operator automates the deployment and management of RBLN
          NPU drivers, device plugins, CRDs, firmware updates, and health monitoring
          for seamless integration into Kubernetes.
        displayName: RBLN operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rebellions
        - ai
        - AI
        - NPU
        - AI acceleration
        - ML inference
        links:
        - name: Rbln K8s Operator
          url: https://rbln-npu-operator.domain
        maintainers:
        - email: heesu.sung@rebellions.ai
          name: heesu.sung
        - email: mskim@rebellions.ai
          name: minsik.kim
        maturity: stable
        minKubeVersion: 1.30.0
        provider:
          name: rebellions
          url: https://rebellions.ai/
        relatedImages:
        - docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
        - docker.io/rebellions/rbln-vfio-manager@sha256:308baaa997eda83db530c1631e2ce097df79d2efda818ee85b330a0934113048
        - registry.connect.redhat.com/rebellions/rbln-npu-operator-bundle@sha256:f9283bccc4acc424f6abd9bea9d0f64ce7c8940aebccbfc8effcf4d87457b310
        - docker.io/rebellions/k8s-device-plugin@sha256:05ef97d5cb3678f33b833c57a3de1e417a8e4f58c098c8ffc7bc85682a820f86
        - docker.io/rebellions/rbln-metrics-exporter@sha256:f696d75b40e948cad25a1bc14c43e256463acb55477a7787b1be4e7086908240
        - docker.io/rebellions/rbln-npu-feature-discovery@sha256:02ea11356b04e05d2dbbdd7b60286aec239e846e4beb26fdf515f61535b3e885
        version: 0.0.3
      entries:
      - name: rbln-npu-operator.v0.0.3
        version: 0.0.3
      name: candidate
    - currentCSV: rbln-npu-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rebellions.ai/v1beta1",
                "kind": "RBLNClusterPolicy",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "rbln-npu-operator"
                  },
                  "name": "rbln-cluster-policy"
                },
                "spec": {
                  "daemonsets": {},
                  "devicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "rebellions/rbln-metrics-exporter",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "name": "rbln",
                  "npuFeatureDiscovery": {
                    "enabled": true,
                    "image": "rebellions/rbln-npu-feature-discovery",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM_PT",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest",
                    "vfioChecker": {
                      "image": "rebellions/rbln-vfio-manager",
                      "version": "latest"
                    }
                  },
                  "vfioManager": {
                    "enabled": true,
                    "image": "rebellions/rbln-vfio-manager",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "version": "latest"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
          createdAt: "2025-09-10T02:09:06Z"
          description: Deploy and manage Rebellions NPU in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Rebellions
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RBLNClusterPolicy is the Schema for the RBLNClusterPolicys
              API
            displayName: RBLNCluster Policy
            kind: RBLNClusterPolicy
            name: rblnclusterpolicies.rebellions.ai
            version: v1beta1
        description: RBLN Operator automates the deployment and management of RBLN
          NPU drivers, device plugins, CRDs, firmware updates, and health monitoring
          for seamless integration into Kubernetes.
        displayName: RBLN operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rebellions
        - ai
        - AI
        - NPU
        - AI acceleration
        - ML inference
        links:
        - name: Rbln K8s Operator
          url: https://rbln-npu-operator.domain
        maintainers:
        - email: heesu.sung@rebellions.ai
          name: heesu.sung
        - email: mskim@rebellions.ai
          name: minsik.kim
        maturity: stable
        minKubeVersion: 1.30.0
        provider:
          name: rebellions
          url: https://rebellions.ai/
        relatedImages:
        - registry.connect.redhat.com/rebellions/rbln-npu-operator-bundle@sha256:f9283bccc4acc424f6abd9bea9d0f64ce7c8940aebccbfc8effcf4d87457b310
        - docker.io/rebellions/k8s-device-plugin@sha256:05ef97d5cb3678f33b833c57a3de1e417a8e4f58c098c8ffc7bc85682a820f86
        - docker.io/rebellions/rbln-metrics-exporter@sha256:f696d75b40e948cad25a1bc14c43e256463acb55477a7787b1be4e7086908240
        - docker.io/rebellions/rbln-npu-feature-discovery@sha256:02ea11356b04e05d2dbbdd7b60286aec239e846e4beb26fdf515f61535b3e885
        - docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
        - docker.io/rebellions/rbln-vfio-manager@sha256:308baaa997eda83db530c1631e2ce097df79d2efda818ee85b330a0934113048
        version: 0.0.3
      entries:
      - name: rbln-npu-operator.v0.0.3
        version: 0.0.3
      name: fast
    - currentCSV: rbln-npu-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rebellions.ai/v1beta1",
                "kind": "RBLNClusterPolicy",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "rbln-npu-operator"
                  },
                  "name": "rbln-cluster-policy"
                },
                "spec": {
                  "daemonsets": {},
                  "devicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "rebellions/rbln-metrics-exporter",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "name": "rbln",
                  "npuFeatureDiscovery": {
                    "enabled": true,
                    "image": "rebellions/rbln-npu-feature-discovery",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM_PT",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest",
                    "vfioChecker": {
                      "image": "rebellions/rbln-vfio-manager",
                      "version": "latest"
                    }
                  },
                  "vfioManager": {
                    "enabled": true,
                    "image": "rebellions/rbln-vfio-manager",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "version": "latest"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
          createdAt: "2025-09-10T02:09:06Z"
          description: Deploy and manage Rebellions NPU in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Rebellions
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RBLNClusterPolicy is the Schema for the RBLNClusterPolicys
              API
            displayName: RBLNCluster Policy
            kind: RBLNClusterPolicy
            name: rblnclusterpolicies.rebellions.ai
            version: v1beta1
        description: RBLN Operator automates the deployment and management of RBLN
          NPU drivers, device plugins, CRDs, firmware updates, and health monitoring
          for seamless integration into Kubernetes.
        displayName: RBLN operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rebellions
        - ai
        - AI
        - NPU
        - AI acceleration
        - ML inference
        links:
        - name: Rbln K8s Operator
          url: https://rbln-npu-operator.domain
        maintainers:
        - email: heesu.sung@rebellions.ai
          name: heesu.sung
        - email: mskim@rebellions.ai
          name: minsik.kim
        maturity: stable
        minKubeVersion: 1.30.0
        provider:
          name: rebellions
          url: https://rebellions.ai/
        relatedImages:
        - docker.io/rebellions/rbln-metrics-exporter@sha256:f696d75b40e948cad25a1bc14c43e256463acb55477a7787b1be4e7086908240
        - docker.io/rebellions/rbln-npu-feature-discovery@sha256:02ea11356b04e05d2dbbdd7b60286aec239e846e4beb26fdf515f61535b3e885
        - docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
        - docker.io/rebellions/rbln-vfio-manager@sha256:308baaa997eda83db530c1631e2ce097df79d2efda818ee85b330a0934113048
        - registry.connect.redhat.com/rebellions/rbln-npu-operator-bundle@sha256:f9283bccc4acc424f6abd9bea9d0f64ce7c8940aebccbfc8effcf4d87457b310
        - docker.io/rebellions/k8s-device-plugin@sha256:05ef97d5cb3678f33b833c57a3de1e417a8e4f58c098c8ffc7bc85682a820f86
        version: 0.0.3
      entries:
      - name: rbln-npu-operator.v0.0.3
        version: 0.0.3
      name: stable
    defaultChannel: stable
    packageName: rbln-npu-operator
    provider:
      name: rebellions
      url: https://rebellions.ai/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Portworx by PureStorage
      provider-url: ""
    name: portworx-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: portworx-operator.v25.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageCluster",
                "metadata": {
                  "name": "portworx",
                  "namespace": "test-operator",
                  "annotations": {
                    "portworx.io/is-openshift": "true"
                  }
                },
                "spec": {}
              },
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageNode",
                "metadata": {
                  "name": "example",
                  "namespace": "test-operator"
                },
                "spec": {}
              }
            ]
          capabilities: Auto Pilot
          categories: Storage
          certified: "true"
          console.openshift.io/plugins: '["portworx"]'
          containerImage: registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
          createdAt: "2026-01-06T19:58:49Z"
          description: Cloud native storage solution for production workloads
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "core.libopenstorage.org/v1",
              "kind": "StorageCluster",
              "metadata": {
                "name": "portworx",
                "annotations": {
                  "portworx.io/is-openshift": "true"
                }
              }
            }
          support: Portworx, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Storage Cluster installs Portworx in the cluster. It has
              all the necessary configurations to setup and update a Portworx cluster.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.core.libopenstorage.org
            version: v1
          - description: Do not create Storage Node as it is internally created by
              the operator. It represents the status of a Portworx node.
            displayName: Storage Node
            kind: StorageNode
            name: storagenodes.core.libopenstorage.org
            version: v1
        description: |
          Portworx-Enterprise is the most widely-used and reliable cloud-native
          storage solution for production workloads and provides high-availability,
          data protection and security for containerized applications.

          Portworx Enterprise enables you to migrate entire applications, including
          data, between clusters in a single data center or cloud, or between clouds,
          with a single kubectl command.

          The cloud native storage and data management platform that enterprises trust
          to manage data in containers now has an operator which simplifies the install,
          configuration, upgrades and manages the Portworx Enterprise cluster lifecycle.

          Learn more about the Portworx Enterprise
          [the data platform for Kubernetes](https://portworx.com/products/introduction)

          To learn more about the platform features, please visit our
          [product features page](https://portworx.com/products/features)

          ### About Portworx

          Portworx is the solution for running stateful containers in production,
          designed with DevOps in mind. With Portworx, users can manage any database
          or stateful service on any infrastructure using any container scheduler,
          including Kubernetes, Mesosphere DC/OS, and Docker Swarm. Portworx solves
          the five most common problems DevOps teams encounter when running stateful
          services in production: persistence, high availability, data automation,
          security, and support for multiple data stores and infrastructure.

          ### How to install StorageCluster

          To customize your cluster's configuration (specification), use the
          [Spec Generator](https://central.portworx.com/) from PX-Central.

          ### Prerequisite

          Ensure ports 17001-17020 on worker nodes are reachable from master and other worker nodes.

          ### Tutorials

          * [Portworx Enterprise on Openshift](https://portworx.com/openshift)

          * [Stateful applications on Kubernetes](https://docs.portworx.com/portworx-enterprise/concepts/kubernetes-storage-101/applications)

          * [Portworx Enterprise on Kubernetes](https://docs.portworx.com/portworx-install-with-kubernetes)

          * [Kafka on Kubernetes](https://portworx.com/kafka-kubernetes)

          * [Elastisearch on Kubernetes](https://portworx.com/elasticsearch-kubernetes)

          * [PostgreSQL on Kubernetes](https://portworx.com/postgres-kubernetes/)

          * [MongoDB on Kubernetes](https://portworx.com/mongodb-kubernetes/)

          * [Cassandra on Kubernetes](https://portworx.com/cassandra-kubernetes/)

          * [Kubernetes backup and recovery](https://portworx.com/kubernetes-backup/)

          * [Disaster Recovery for Kubernetes](https://portworx.com/kubernetes-disaster-recovery/)

          ### Uninstall

          Deleting the StorageCluster object for Portworx cluster does not stop Portworx
          service running on the nodes, to avoid application downtime.

          To uninstall Portworx completely without wiping the data, you should add the
          following delete strategy to the StorageCluster spec:
          ```
          spec:
            deleteStrategy:
              type: Uninstall
          ```
          **Caution:** To uninstall Portworx and **wipe all the data**, you should use the following
          delete strategy:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndWipe
          ```
          **Note:** Starting with Operator version 25.5.0 and Portworx version 3.5.0, you can also use the following delete strategy
          to uninstall Portworx, **wipe all the data**, and **delete the drives**:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndDelete
          ```
        displayName: Portworx Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - portworx
        - persistent storage
        - storage
        - cloud native
        - open source
        links:
        - name: Product Features
          url: https://portworx.com/products/features
        - name: Documentation
          url: https://docs.portworx.com/portworx-enterprise/platform/openshift
        - name: Support
          url: https://docs.portworx.com/portworx-enterprise/support/contact-support
        - name: Source Code
          url: https://github.com/libopenstorage/operator
        maintainers:
        - email: support@portworx.com
          name: Portworx
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Portworx by PureStorage
        relatedImages:
        - registry.connect.redhat.com/portworx/portworx-certified-bundle@sha256:6864d81f92272c5a9b865211b745170a3ecacfe43d8bd597e91b84e1a3774fa8
        - registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
        version: 25.5.1
      entries:
      - name: portworx-operator.v25.5.1
        version: 25.5.1
      - name: portworx-operator.v25.5.0
        version: 25.5.0
      - name: portworx-operator.v25.4.0
        version: 25.4.0
      - name: portworx-operator.v25.3.1
        version: 25.3.1
      - name: portworx-operator.v25.3.0
        version: 25.3.0
      - name: portworx-operator.v25.2.2
        version: 25.2.2
      - name: portworx-operator.v25.2.1
        version: 25.2.1
      - name: portworx-operator.v25.2.0
        version: 25.2.0
      - name: portworx-operator.v24.2.4
        version: 24.2.4
      - name: portworx-operator.v24.2.3
        version: 24.2.3
      - name: portworx-operator.v24.2.2
        version: 24.2.2
      - name: portworx-operator.v24.2.1
        version: 24.2.1
      - name: portworx-operator.v24.2.0
        version: 24.2.0
      - name: portworx-operator.v24.1.3
        version: 24.1.3
      - name: portworx-operator.v24.1.2
        version: 24.1.2
      - name: portworx-operator.v24.1.1
        version: 24.1.1
      - name: portworx-operator.v24.1.0
        version: 24.1.0
      - name: portworx-operator.v23.10.5
        version: 23.10.5
      - name: portworx-operator.v23.10.4
        version: 23.10.4
      - name: portworx-operator.v23.10.3
        version: 23.10.3
      - name: portworx-operator.v23.10.2
        version: 23.10.2
      - name: portworx-operator.v23.10.1
        version: 23.10.1
      - name: portworx-operator.v23.7.0
        version: 23.7.0
      - name: portworx-operator.v23.5.1
        version: 23.5.1
      - name: portworx-operator.v23.5.0
        version: 23.5.0
      - name: portworx-operator.v23.4.0
        version: 23.4.0
      - name: portworx-operator.v23.3.1
        version: 23.3.1
      - name: portworx-operator.v23.3.0
        version: 23.3.0
      - name: portworx-operator.v1.10.5
        version: 1.10.5
      - name: portworx-operator.v1.10.4
        version: 1.10.4
      - name: portworx-operator.v1.10.3
        version: 1.10.3
      - name: portworx-operator.v1.10.2
        version: 1.10.2
      - name: portworx-operator.v1.10.1
        version: 1.10.1
      - name: portworx-operator.v1.10.0
        version: 1.10.0
      - name: portworx-operator.v1.9.1
        version: 1.9.1
      - name: portworx-operator.v1.9.0
        version: 1.9.0
      - name: portworx-operator.v1.8.1
        version: 1.8.1
      - name: portworx-operator.v1.8.0
        version: 1.8.0
      - name: portworx-operator.v1.7.1
        version: 1.7.1
      - name: portworx-operator.v1.6.1
        version: 1.6.1
      name: alpha
    - currentCSV: portworx-operator.v25.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageCluster",
                "metadata": {
                  "name": "portworx",
                  "namespace": "test-operator",
                  "annotations": {
                    "portworx.io/is-openshift": "true"
                  }
                },
                "spec": {}
              },
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageNode",
                "metadata": {
                  "name": "example",
                  "namespace": "test-operator"
                },
                "spec": {}
              }
            ]
          capabilities: Auto Pilot
          categories: Storage
          certified: "true"
          console.openshift.io/plugins: '["portworx"]'
          containerImage: registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
          createdAt: "2026-01-06T19:58:49Z"
          description: Cloud native storage solution for production workloads
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "core.libopenstorage.org/v1",
              "kind": "StorageCluster",
              "metadata": {
                "name": "portworx",
                "annotations": {
                  "portworx.io/is-openshift": "true"
                }
              }
            }
          support: Portworx, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Storage Cluster installs Portworx in the cluster. It has
              all the necessary configurations to setup and update a Portworx cluster.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.core.libopenstorage.org
            version: v1
          - description: Do not create Storage Node as it is internally created by
              the operator. It represents the status of a Portworx node.
            displayName: Storage Node
            kind: StorageNode
            name: storagenodes.core.libopenstorage.org
            version: v1
        description: |
          Portworx-Enterprise is the most widely-used and reliable cloud-native
          storage solution for production workloads and provides high-availability,
          data protection and security for containerized applications.

          Portworx Enterprise enables you to migrate entire applications, including
          data, between clusters in a single data center or cloud, or between clouds,
          with a single kubectl command.

          The cloud native storage and data management platform that enterprises trust
          to manage data in containers now has an operator which simplifies the install,
          configuration, upgrades and manages the Portworx Enterprise cluster lifecycle.

          Learn more about the Portworx Enterprise
          [the data platform for Kubernetes](https://portworx.com/products/introduction)

          To learn more about the platform features, please visit our
          [product features page](https://portworx.com/products/features)

          ### About Portworx

          Portworx is the solution for running stateful containers in production,
          designed with DevOps in mind. With Portworx, users can manage any database
          or stateful service on any infrastructure using any container scheduler,
          including Kubernetes, Mesosphere DC/OS, and Docker Swarm. Portworx solves
          the five most common problems DevOps teams encounter when running stateful
          services in production: persistence, high availability, data automation,
          security, and support for multiple data stores and infrastructure.

          ### How to install StorageCluster

          To customize your cluster's configuration (specification), use the
          [Spec Generator](https://central.portworx.com/) from PX-Central.

          ### Prerequisite

          Ensure ports 17001-17020 on worker nodes are reachable from master and other worker nodes.

          ### Tutorials

          * [Portworx Enterprise on Openshift](https://portworx.com/openshift)

          * [Stateful applications on Kubernetes](https://docs.portworx.com/portworx-enterprise/concepts/kubernetes-storage-101/applications)

          * [Portworx Enterprise on Kubernetes](https://docs.portworx.com/portworx-install-with-kubernetes)

          * [Kafka on Kubernetes](https://portworx.com/kafka-kubernetes)

          * [Elastisearch on Kubernetes](https://portworx.com/elasticsearch-kubernetes)

          * [PostgreSQL on Kubernetes](https://portworx.com/postgres-kubernetes/)

          * [MongoDB on Kubernetes](https://portworx.com/mongodb-kubernetes/)

          * [Cassandra on Kubernetes](https://portworx.com/cassandra-kubernetes/)

          * [Kubernetes backup and recovery](https://portworx.com/kubernetes-backup/)

          * [Disaster Recovery for Kubernetes](https://portworx.com/kubernetes-disaster-recovery/)

          ### Uninstall

          Deleting the StorageCluster object for Portworx cluster does not stop Portworx
          service running on the nodes, to avoid application downtime.

          To uninstall Portworx completely without wiping the data, you should add the
          following delete strategy to the StorageCluster spec:
          ```
          spec:
            deleteStrategy:
              type: Uninstall
          ```
          **Caution:** To uninstall Portworx and **wipe all the data**, you should use the following
          delete strategy:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndWipe
          ```
          **Note:** Starting with Operator version 25.5.0 and Portworx version 3.5.0, you can also use the following delete strategy
          to uninstall Portworx, **wipe all the data**, and **delete the drives**:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndDelete
          ```
        displayName: Portworx Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - portworx
        - persistent storage
        - storage
        - cloud native
        - open source
        links:
        - name: Product Features
          url: https://portworx.com/products/features
        - name: Documentation
          url: https://docs.portworx.com/portworx-enterprise/platform/openshift
        - name: Support
          url: https://docs.portworx.com/portworx-enterprise/support/contact-support
        - name: Source Code
          url: https://github.com/libopenstorage/operator
        maintainers:
        - email: support@portworx.com
          name: Portworx
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Portworx by PureStorage
        relatedImages:
        - registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
        - registry.connect.redhat.com/portworx/portworx-certified-bundle@sha256:6864d81f92272c5a9b865211b745170a3ecacfe43d8bd597e91b84e1a3774fa8
        version: 25.5.1
      entries:
      - name: portworx-operator.v25.5.1
        version: 25.5.1
      - name: portworx-operator.v25.5.0
        version: 25.5.0
      - name: portworx-operator.v25.4.0
        version: 25.4.0
      - name: portworx-operator.v25.3.1
        version: 25.3.1
      - name: portworx-operator.v25.3.0
        version: 25.3.0
      - name: portworx-operator.v25.2.2
        version: 25.2.2
      - name: portworx-operator.v25.2.1
        version: 25.2.1
      - name: portworx-operator.v25.2.0
        version: 25.2.0
      - name: portworx-operator.v24.2.4
        version: 24.2.4
      - name: portworx-operator.v24.2.3
        version: 24.2.3
      - name: portworx-operator.v24.2.2
        version: 24.2.2
      - name: portworx-operator.v24.2.1
        version: 24.2.1
      - name: portworx-operator.v24.2.0
        version: 24.2.0
      - name: portworx-operator.v24.1.3
        version: 24.1.3
      - name: portworx-operator.v24.1.2
        version: 24.1.2
      - name: portworx-operator.v24.1.1
        version: 24.1.1
      - name: portworx-operator.v24.1.0
        version: 24.1.0
      - name: portworx-operator.v23.10.5
        version: 23.10.5
      - name: portworx-operator.v23.10.4
        version: 23.10.4
      - name: portworx-operator.v23.10.3
        version: 23.10.3
      - name: portworx-operator.v23.10.2
        version: 23.10.2
      - name: portworx-operator.v23.10.1
        version: 23.10.1
      - name: portworx-operator.v23.7.0
        version: 23.7.0
      - name: portworx-operator.v23.5.1
        version: 23.5.1
      - name: portworx-operator.v23.5.0
        version: 23.5.0
      - name: portworx-operator.v23.4.0
        version: 23.4.0
      - name: portworx-operator.v23.3.1
        version: 23.3.1
      - name: portworx-operator.v23.3.0
        version: 23.3.0
      - name: portworx-operator.v1.10.5
        version: 1.10.5
      - name: portworx-operator.v1.10.4
        version: 1.10.4
      - name: portworx-operator.v1.10.3
        version: 1.10.3
      - name: portworx-operator.v1.10.2
        version: 1.10.2
      - name: portworx-operator.v1.10.1
        version: 1.10.1
      - name: portworx-operator.v1.10.0
        version: 1.10.0
      - name: portworx-operator.v1.9.1
        version: 1.9.1
      - name: portworx-operator.v1.9.0
        version: 1.9.0
      - name: portworx-operator.v1.8.1
        version: 1.8.1
      - name: portworx-operator.v1.8.0
        version: 1.8.0
      - name: portworx-operator.v1.7.1
        version: 1.7.1
      - name: portworx-operator.v1.6.1
        version: 1.6.1
      name: stable
    defaultChannel: stable
    packageName: portworx-certified
    provider:
      name: Portworx by PureStorage
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: koku-metrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: koku-metrics-operator.v4.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
                "kind": "CostManagementMetricsConfig",
                "metadata": {
                  "name": "costmanagementmetricscfg-sample-v1beta1"
                },
                "spec": {
                  "authentication": {
                    "type": "token"
                  },
                  "packaging": {
                    "max_reports_to_store": 30,
                    "max_size_MB": 100
                  },
                  "prometheus_config": {
                    "collect_previous_data": true,
                    "context_timeout": 120,
                    "disable_metrics_collection_cost_management": false,
                    "disable_metrics_collection_resource_optimization": false
                  },
                  "source": {
                    "check_cycle": 1440,
                    "create_source": false,
                    "name": ""
                  },
                  "upload": {
                    "upload_cycle": 360,
                    "upload_toggle": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
          createdAt: "2025-10-29T15:49:19Z"
          description: A Golang-based OpenShift Operator that generates and uploads
            OpenShift usage metrics to cost management.
          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: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
              "kind": "CostManagementMetricsConfig",
              "metadata": {
                "name": "costmanagementmetricscfg-sample-v1beta1"
              },
              "spec": {
                "authentication": {
                  "token_url": "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token",
                  "type": "token"
                },
                "api_url": "https://console.redhat.com/",
                "packaging": {
                  "max_reports_to_store": 30,
                  "max_size_MB": 100
                },
                "upload": {
                  "ingress_path": "/api/ingress/v1/upload",
                  "upload_cycle": 360,
                  "upload_toggle": true,
                  "validate_cert": true
                },
                "prometheus_config": {
                  "collect_previous_data": true,
                  "context_timeout": 120,
                  "disable_metrics_collection_cost_management": false,
                  "disable_metrics_collection_resource_optimization": false,
                  "service_address": "https://thanos-querier.openshift-monitoring.svc:9091",
                  "skip_tls_verification": false
                },
                "source": {
                  "check_cycle": 1440,
                  "create_source": false,
                  "name": "",
                  "sources_path": "/api/sources/v1.0/"
                }
              }
            }
          operatorframework.io/suggested-namespace: koku-metrics-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/project-koku/koku-metrics-operator
          support: Cost Management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CostManagementMetricsConfig is the Schema for the costmanagementmetricsconfig
              API
            displayName: Cost Management Metrics Config
            kind: CostManagementMetricsConfig
            name: costmanagementmetricsconfigs.costmanagement-metrics-cfg.openshift.io
            version: v1beta1
        description: |
          # Koku Metrics Operator
          ## Introduction
          The `koku-metrics-operator` is a component of the [cost managment](https://access.redhat.com/documentation/en-us/cost_management_service) service for Openshift. The operator runs on the latest supported versions of Openshift. This operator obtains OpenShift usage data by querying Prometheus every hour to create metric reports that it uploads to Cost Management at [console.redhat.com](https://console.redhat.com) to be processed. For more information, reach out to <costmanagement@redhat.com>.

          This operator is capable of functioning within a disconnected/restricted network (aka air-gapped mode). In this mode, the operator will store the packaged reports for manual retrieval instead of being uploaded to Cost Management. Documentation for installing an operator within a restricted network can be found [here](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html).

          ## Features and Capabilities
          #### Metrics collection:
          The Koku Metrics Operator (`koku-metrics-operator`) collects the metrics required for Cost Management by:
          * Querying Prometheus to gather the necessary metrics for Cost Management.
          * Writing the results of Prometheus queries to CSV report files.
          * Packaging the CSV report files into tarballs.

          #### Additional Capabilities:
          * Resource Optimization metrics collection.
          * The operator can be configured to gather all previous data within the configured retention period or a maximum of 90 days. The default data collection period is the 14 previous days. This setting is only applicable to newly created KokuMetricsConfigs.
          * The operator can be configured to automatically upload the packaged reports to Cost Management through Red Hat Insights Ingress service.
          * The operator can create an integration in console.redhat.com. An integration is required for Cost Management to process the uploaded packages.
          * PersistentVolumeClaim (PVC) configuration: The KokuMetricsConfig CR can accept a PVC definition and the operator will create and mount the PVC. If one is not provided, a default PVC will be created.
          * Restricted network installation: this operator can function on a restricted network. In this mode, the operator stores the packaged reports for manual retrieval.

          ## New in v4.3.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for cost management.

          ## New in v4.2.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for resource optimization.
          * (Bugfix) Fixed custom CA certificate validation and configuration issues.
          * (Bugfix) Fixed issue where ROS queries were missing workload metadata for namespaces labeled only with the legacy `insights_cost_management_optimizations` label.

          ## New in v4.1.0:
          * Enabled gathering and reporting namespace metrics to provide more granular data for resource optimization.
          * Updated CSV report filenames to be more descriptive, replacing the previous generic UID-based names with content-reflective names.
          * Introduced a new generic label, `cost_management_optimizations`, for resource optimization while ensuring backward compatibility with the older `insights_cost_management_optimizations` label.

          ## New in v4.0.0:
          * **Virtual Machine Metrics:** Adds capabilities for collecting metrics and generating reports for running virtual machines within your OpenShift environment.
          * **Progress towards FIPS 140 Compliance:** The operator is using the Go Cryptographic Module v1.0.0 to progress toward FIPS 140 compliance. Although this module is not validated at the time of this release, the operator aims to meet stricter security standards when the module does successfully achieve FIPS validation.
          * **API Name Change:** The Custom Resource Definition (CRD) for configuring the upstream `Koku Metrics Operator` was renamed from `KokuMetricsConfig` to `CostManagementMetricsConfig`.

          ### NOTE:
            * The API name change impacts only users of the upstream (community) Koku Metrics Operator.
            * The downstream (Red Hat-supported) Cost Management Metrics Operator is not impacted by this change and users should continue using their existing configurations.

          **Important Upgrade Instructions:**

            If you are upgrading the upstream Koku Metrics Operator to version 4.0.0 or higher, you must manually migrate your configuration. The operator will no longer recognize existing `KokuMetricsConfig` resources.

            To successfully upgrade and retain your operator's configuration, complete the following steps. You can use the provided `oc` commands replacing the angle brackets (`< >`) with your specific values:

            1. Backup existing configuration (recommended):

               Before you upgrade, retrieve the details of your current `KokuMetricsConfig` instance to help you recreate it with the new API name.

               ```
               oc get kokumetricsconfig -n koku-metrics-operator <your-config-name> -o yaml > koku-metrics-config-backup.yaml
               ```

            2. Delete the previous `KokuMetricsConfig` instance (recommended):

                After the operator is upgraded to `version 4.0.0`, delete any existing `KokuMetricsConfig` resources.

                ```
                oc delete kokumetricsconfig -n koku-metrics-operator <your-config-name>
                ```

            3. Create the new `CostManagementMetricsConfig` instance:

                Using the information from your backup (or a new configuration), create a new `CostManagementMetricsConfig` instance. Adjust the spec section based on your specific needs. For more information about configurations, [refer to the configurable parameters](#configurable-parameters).

            4. Apply your new configuration:

                ```
                oc apply -f <your-costmanagementmetricsconfig-file>.yaml -n koku-metrics-operator
                ```

          ## New in v3.3.2:
          * Leader election settings are now configurable via environment variables. These variables can be modified in the operator [Subscription](https://github.com/operator-framework/operator-lifecycle-manager/blob/5a01f50258003e248bd5630df0837fe0bb0f1cb7/doc/design/subscription-config.md). The values should be specified as durations in seconds in the format `<number-of-seconds>s`. The default values for `LEADER_ELECTION_LEASE_DURATION`, `LEADER_ELECTION_RENEW_DEADLINE`, and `LEADER_ELECTION_RETRY_PERIOD` are '60s', '30s', and '5s', respectively.

            ```
            kind: Subscription
            metadata:
            ...
            spec:
              ...
              config:
                env:
                - name: LEADER_ELECTION_LEASE_DURATION
                  value: "60s"
                - name: LEADER_ELECTION_RENEW_DEADLINE
                  value: "30s"
                - name: LEADER_ELECTION_RETRY_PERIOD
                  value: "5s"
            ```

          ## New in v3.3.1:
          * Optimize memory usage when reading CSV files.

          ## New in v3.3.0:
          * Storage reports now contain `node`, `csi_driver`, and `csi_volume_handle` fields.
          * The PVC capacity is now populated using the `kube_persistentvolume_capacity_bytes` metric instead of `kubelet_volume_stats_capacity_bytes`.
          * To receive resource optimization recommendations for your namespaces, you must now first enable each namespace. To enable a namespace, label it with `insights_cost_management_optimizations='true'`. In the CLI, run:
            ```
              oc label namespace NAMESPACE insights_cost_management_optimizations="true" --overwrite=true
            ```
          * __DEPRECATION NOTICE__: Basic authentication is deprecated and will not be supported beyond December 31, 2024. If the default token authentication method cannot be used, you must switch to [service account](https://console.redhat.com/iam/service-accounts) authentication ([more on creating a service account](https://access.redhat.com/articles/7036194)). Once you have created your service account, follow [this documentation](https://access.redhat.com/documentation/en-us/cost_management_service/1-latest/html-single/integrating_openshift_container_platform_data_into_cost_management/index#service-account-authentication_adding-an-ocp-int) on how to configure your operator to use service account authentication. Service-accounts must also be used if manually uploading payloads to console.redhat.com.

          ## New in v3.2.1:
          * The minimum supported configuration for `upload_cycle` is now 60 (minutes).
          * (Bugfix) many-to-many matching not allowed query fix.
          * (Bugfix) Sequentially collect data during initial install.

          ## New in v3.2.0:
          * Support for amd64, arm64, ppc64le, s390x architectures.
          * add liveness and readiness probes to controller Pod.
          * update pod security settings so that the controller Pod can run in Restricted mode [more info](https://sdk.operatorframework.io/docs/best-practices/pod-security-standards/).

          ## New in v3.1.0:
          * Add service-account authentication type.
          * __Deprecation Notice:__ Basic authentication is deprecated and will be removed in a future version of the operator.

          ## New in v3.0.0:
          * Daily report generation: Operator versions prior to v3.0.0 generated sequential reports. Now, reports are generated starting at 0:00 UTC. Any payloads generated throughout a given day will contain all data starting from 0:00 UTC. Once the next day starts, the previous day's reports are packaged, and the new report again starts at 0:00 UTC for the current day.
          * Failed query retry: In an attempt to prevent missing data, the operator will retry queries from the last successful query time, up to 5 times.

          ## New in v2.0.0:
          * Adds metrics and report generation for resource optimization. This feature will collect additional usage metrics and create a new report in the payload. These metrics are enabled by default, but can be disabled by setting `disable_metrics_collection_resource_optimization` to `true`.
          * Collect all available Prometheus data upon CR creation. This feature only applies to newly created KokuMetricsConfigs. The operator will check the monitoring stack configuration in the `openshift-monitoring` namespace. The operator will use the `retention` period set in the `cluster-monitoring-config` ConfigMap if defined, up to a maximum of 90 days. Otherwise it will fall back to collecting 14 days of data, if available. This data collection may be disabled by setting `collect_previous_data` to `false`. Turning this feature off results in the operator collecting metrics from the time the KokuMetricsConfig is created, forward.

          ## Limitations and Pre-Requisites
          #### Limitations (Potential for metrics data loss)
          * An integration **must** exist in console.redhat.com for an uploaded payload to be processed by Cost Management. The operator sends the payload to the Red Hat Insights Ingress service which usually returns successfully, but the operator does not currently confirm with Cost Management that the payload was processed. After Ingress accepts the uploaded payload, it is deleted from the operator. If the data within the payload is not processed, a gap will be introduced in the usage metrics. Data may be recollected by deleting the `KokuMetricsConfig`, creating a new `KokuMetricsConfig`, and setting `collect_previous_data: true`. This re-collection of data will gather all data stored in Prometheus, up to 90 days.

          **Note** The following limitations are specific to operators configured to run in a restricted network:
          * The `koku-metrics-operator` will not be able to generate new reports if the PVC storage is full. If this occurs, the reports must be manually deleted from the PVC so that the operator can function as normal.
          * The default report retention is 30 reports (about one week's worth of data). The reports must be manually downloaded and uploaded to console.redhat.com every week, or they will be deleted and the data will be lost.

          #### Storage configuration prerequisite
          The operator will attempt to create and use the following PVC when installed:

                volume_claim_template:
                  apiVersion: v1
                  kind: PersistentVolumeClaim
                  metadata:
                    name: koku-metrics-operator-data
                  spec:
                    accessModes:
                      - ReadWriteOnce
                    resources:
                      requests:
                        storage: 10Gi

          If a different PVC should be utilized, a valid PVC should be specified in the KokuMetricsConfig CR as described in the appropriate section below. The PVC to be used may exist already, or the operator will attempt to create it.

          To use the default specification, the follow assumptions must be met:
          1. A default StorageClass is defined.
          2. Dynamic provisioning for that default StorageClass is enabled.

          If these assumptions are not met, the operator will not deploy correctly. In these cases, storage must be manually configured. After configuring storage, a valid PVC template should be supplied in the `volume_claim_template` spec of the KokuMetricsConfig CR.

          ## Configurable parameters:
            * `authentication`:
              * `type: token` -> The authentication method for connecting to `console.redhat.com`. The default and preferred method is `token`. `basic` (deprecated) and `service-account` authentication methods are used when the openshift-config pull-secret does not contain a token for `console.redhat.com`.
              * `secret_name` -> The Secret used by the operator when the authentication type is `basic` (deprecated) or `service-account`. This parameter is required **only if** the authentication type is `basic` (deprecated) or `service-account`.
            * `packaging`:
              * `max_reports_to_store: 30` -> The number of reports to store when configured in air-gapped mode. The default is 30, with a minimum of 1 and no maximum. When the operator is not configured in air-gapped mode, this parameter has no effect. Reports are removed as soon as they are uploaded.
              * `max_size: 100` -> The maximum size for packaged files in Megabytes prior to compression. The default is 100, with a minimum of 1 and maximum of 100.
            * `prometheus_config`:
              * `collect_previous_data: true` -> Toggle for collecting all available data in Prometheus **upon KokuMetricsConfig creation** (This parameter will start to appear in KokuMetricsConfigs that were created prior to v2.0.0 but will not have any effect unless the KokuMetricsConfig is deleted and recreated). The default is `true`. The operator will first look for a `retention` period in the `cluster-monitoring-config` ConfigMap in the `openshift-monitoring` namespace and gather data over this time period up to a maximum of 90 days. If this configuration is not set, the default is 14 days. (New in v2.0.0)
              * `disable_metrics_collection_cost_management: false` -> Toggle for disabling the collection of metrics for Cost Management. The default is false. (New in v2.0.0)
              * `disable_metrics_collection_resource_optimization: false` -> Toggle for disabling the collection of metrics for Resource Optimization. The default is false. (New in v2.0.0)
              * `context_timeout: 120` -> The time in seconds before Prometheus queries timeout due to exceeding context timeout. The default is 120, with a minimum of 10 and maximum of 180.
            * `source`:
              * `name: ''` -> The name of the integration the operator will create in `console.redhat.com`. If the name value is empty, the default intergration name is the **cluster id**.
              * `create_source: false` -> Toggle for whether or not the operator will create the integration in `console.redhat.com`. The default is False. This parameter should be switched to True when an integration does not already exist in `console.redhat.com` for this cluster.
              * `check_cycle: 1440` -> The time in minutes to wait between checking if an integration exists for this cluster. The default is 1440 minutes (24 hrs).
            * `upload`:
              * `upload_cycle: 360` -> The time in minutes between payload uploads. The default is 360 (6 hours), minimum is 60 (1 hour).
              * `upload_toggle: true` -> Toggle to turn upload on or off -> true means upload, false means do not upload (false == air-gapped mode). The default is `true`.
              * `upload_wait` -> The amount of time (in seconds) to pause before uploading a payload. The default is a random number between 0 and 35. This is used to decrease service load, but may be set to `0` if desired.
            * `volume_claim_template` -> see the "Storage configuration prerequisite" section above.

          ## Configure the koku-metrics-operator
          **Note** There are separate instructions for configuring the `koku-metrics-operator` to run in a restricted network.
          ##### Configure authentication
          The default authentication for the operator is `token`. No further steps are required to configure token authentication. If `basic` (deprecated) or `service-account` is the preferred authentication method, a Secret which holds the credentials must be created:
          1. On the left navigation pane, select `Workloads` -> `Secrets` -> select Project: `koku-metrics-operator` -> `Create` -> `Key/Value Secret`
          2. Give the Secret a name and add 2 keys (all lowercase) for the respective authentication type. The values for these keys correspond to console.redhat.com credentials:
              * basic auth (deprecated): `username` and `password`
              * service-account auth: `client_id` and `client_secret`

          3. Select `Create`.
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. For `basic` (deprecated) or `service-account` authentication, edit the following values in the spec:
              * Replace `authentication: type:` with `basic` or `service-account`.
              * Add the `secret_name` field under `authentication`, and set it equal to the name of the authentication Secret that was created above. The spec should look similar to the following:

                  * for basic auth type (deprecated)
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: basic
                  ```

                  * for service-account auth type
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: service-account
                  ```

          3. To configure the koku-metrics-operator to create a cost management integration, edit the following values in the `source` field:
              * Replace the `name` field value with the preferred name of the integration to be created.
              * Replace the `create_source` field value with `true`.

              **Note:** if the integration already exists, replace the empty string value of the `name` field with the existing name, and leave `create_source` as false. This will allow the operator to confirm that the integration exists.

          4. If not specified, the operator will create a default PersistentVolumeClaim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec:

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          5. Select `Create`.

          # Restricted Network Usage (disconnected/air-gapped mode)
          ## Installation
          To install the `koku-metrics-operator` in a restricted network, follow the [olm documentation](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html). The operator is found in the `community-operators` Catalog in the `registry.redhat.io/redhat/community-operator-index:latest` Index. If pruning the index before pushing to the mirrored registry, keep the `koku-metrics-operator` package.

          Within a restricted network, the operator queries prometheus to gather the necessary usage metrics, writes the query results to CSV files, and packages the reports for storage in the PVC. These reports then need to be manually downloaded from the cluster and uploaded to [console.redhat.com](https://console.redhat.com).

          ## Configure the koku-metrics-operator for a restricted network
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. Specify the desired storage. If not specified, the operator will create a default Persistent Volume Claim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec (below is only a template. Any _valid_ `PersistentVolumeClaim` may be defined here):

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      storageClassName: <insert-class-name>
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          3. (Optional) Specify the desired report retention. The operator will retain 30 reports by default. This corresponds to approximately one week's worth of data if using the default packaging cycle. To modify the number of retained reports:
              * Change the `packaging` spec field `max_reports_to_store` to the desired number of reports to retain. Once this max number is reached, the operator will start removing the oldest packages remaining on the PVC:

                ```
                  packaging:
                    max_size_MB: 100
                    max_reports_to_store: 30
                ```

              **Note:** The number of retained reports directly affects the frequency that reports must be manually downloaded from the PVC. Take caution in setting this to a higher number of reports, as the operator cannot write data to the PVC if the storage is full.
          4. To configure the operator to perform in a restricted network, set the `upload_toggle` to `false`:

            ```
              upload:
                upload_cycle: 360
                upload_toggle: false
            ```

          5. Select `Create`.

          ## Download reports from the Operator & clean up the PVC
          If the `koku-metrics-operator` is configured to run in a restricted network, the metric reports will not automatically upload to cost managment. Instead, they need to be manually copied from the PVC for upload to [console.redhat.com](https://console.redhat.com). The default configuration saves one week of reports which means the process of downloading and uploading reports should be repeated weekly to prevent loss of metrics data. To download the reports, complete the following steps:
          1. Create the following Pod, ensuring the `claimName` matches the PVC containing the report data:

            ```
              kind: Pod
              apiVersion: v1
              metadata:
                name: volume-shell
                namespace: koku-metrics-operator
                labels:
                  app: koku-metrics-operator
              spec:
                volumes:
                - name: koku-metrics-operator-reports
                  persistentVolumeClaim:
                    claimName: koku-metrics-operator-data
                containers:
                - name: volume-shell
                  image: busybox
                  command: ['sleep', 'infinity']
                  volumeMounts:
                  - name: koku-metrics-operator-reports
                    mountPath: /tmp/koku-metrics-operator-reports
            ```

          2. Use rsync to copy all of the files ready for upload from the PVC to a local folder:

            ```
            $ oc rsync volume-shell:/tmp/koku-metrics-operator-reports/upload local/path/to/save/folder
            ```

          3. Once confirming that the files have been successfully copied, use rsh to connect to the pod and delete the contents of the upload folder so that they are no longer in storage:

            ```
            $ oc rsh volume-shell
            $ rm /tmp/koku-metrics-operator-reports/upload/*
            ```

          4. (Optional) Delete the pod that was used to connect to the PVC:

            ```
            $ oc delete -f volume-shell.yaml
            ```

          ## Create an Integration
          In a restricted network, the `koku-metrics-operator` cannot automatically create an integration. This process must be done manually. In the console.redhat.com platform, open the [Integrations menu](https://console.redhat.com/settings/integrations/) to begin adding an OpenShift integration to Cost Management:

          Prerequisites:
          * The cluster identifier which can be found in the KokuMetricsConfig CR, the cluster Overview page, or the cluster Help > About.

          Creating an integration:
          1. Navigate to the Integrations menu
          2. Select the `Red Hat` tab
          3. Create a new `Red Hat Openshift Container Platform` integration:
              * give the integration a unique name
              * add the Cost Management application
              * add the cluster identifier
          4. In the Source wizard, review the details and click `Finish` to create the source.

          ## Upload the reports to cost managment
          Uploading reports to cost managment is done through curl:

              $ curl -vvvv -F "file=@FILE_NAME.tar.gz;type=application/vnd.redhat.hccm.tar+tgz" https://console.redhat.com/api/ingress/v1/upload -H "Authorization: Bearer ${ACCESS_TOKEN}"

          where `FILE_NAME` is the name of the report to upload. The `ACCESS_TOKEN` is acquired using a service account. See documentation on [creating and managing a service account](https://docs.redhat.com/en/documentation/red_hat_customer_portal/1/html/creating_and_managing_service_accounts).
        displayName: Koku Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cost
        - management
        - usage
        - monitor
        links:
        - name: Koku Metrics Operator source code repository
          url: https://github.com/project-koku/koku-metrics-operator
        maintainers:
        - email: costmanagement@redhat.com
          name: costmanagement
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/koku-metrics-operator:4.3.0
        - quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
        version: 4.3.0
      entries:
      - name: koku-metrics-operator.v4.3.0
        version: 4.3.0
      - name: koku-metrics-operator.v4.2.0
        version: 4.2.0
      - name: koku-metrics-operator.v4.1.0
        version: 4.1.0
      - name: koku-metrics-operator.v4.0.0
        version: 4.0.0
      - name: koku-metrics-operator.v3.3.2
        version: 3.3.2
      - name: koku-metrics-operator.v3.3.1
        version: 3.3.1
      - name: koku-metrics-operator.v3.3.0
        version: 3.3.0
      - name: koku-metrics-operator.v3.2.1
        version: 3.2.1
      - name: koku-metrics-operator.v3.2.0
        version: 3.2.0
      - name: koku-metrics-operator.v3.1.0
        version: 3.1.0
      - name: koku-metrics-operator.v3.0.1
        version: 3.0.1
      - name: koku-metrics-operator.v3.0.0
        version: 3.0.0
      - name: koku-metrics-operator.v2.0.0
        version: 2.0.0
      - name: koku-metrics-operator.v1.2.0
        version: 1.2.0
      - name: koku-metrics-operator.v1.1.9
        version: 1.1.9
      - name: koku-metrics-operator.v1.1.8
        version: 1.1.8
      - name: koku-metrics-operator.v1.1.7
        version: 1.1.7
      - name: koku-metrics-operator.v1.1.6
        version: 1.1.6
      - name: koku-metrics-operator.v1.1.5
        version: 1.1.5
      - name: koku-metrics-operator.v1.1.4
        version: 1.1.4
      - name: koku-metrics-operator.v1.1.3
        version: 1.1.3
      - name: koku-metrics-operator.v1.1.2
        version: 1.1.2
      - name: koku-metrics-operator.v1.1.1
        version: 1.1.1
      - name: koku-metrics-operator.v0.9.8
        version: 0.9.8
      - name: koku-metrics-operator.v0.9.7
        version: 0.9.7
      - name: koku-metrics-operator.v0.9.6
        version: 0.9.6
      - name: koku-metrics-operator.v0.9.5
        version: 0.9.5
      - name: koku-metrics-operator.v0.9.4
        version: 0.9.4
      - name: koku-metrics-operator.v0.9.3
        version: 0.9.3
      - name: koku-metrics-operator.v0.9.2
        version: 0.9.2
      - name: koku-metrics-operator.v0.9.1
        version: 0.9.1
      - name: koku-metrics-operator.v0.9.0
        version: 0.9.0
      name: alpha
    - currentCSV: koku-metrics-operator.v4.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
                "kind": "CostManagementMetricsConfig",
                "metadata": {
                  "name": "costmanagementmetricscfg-sample-v1beta1"
                },
                "spec": {
                  "authentication": {
                    "type": "token"
                  },
                  "packaging": {
                    "max_reports_to_store": 30,
                    "max_size_MB": 100
                  },
                  "prometheus_config": {
                    "collect_previous_data": true,
                    "context_timeout": 120,
                    "disable_metrics_collection_cost_management": false,
                    "disable_metrics_collection_resource_optimization": false
                  },
                  "source": {
                    "check_cycle": 1440,
                    "create_source": false,
                    "name": ""
                  },
                  "upload": {
                    "upload_cycle": 360,
                    "upload_toggle": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
          createdAt: "2025-10-29T15:49:19Z"
          description: A Golang-based OpenShift Operator that generates and uploads
            OpenShift usage metrics to cost management.
          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: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
              "kind": "CostManagementMetricsConfig",
              "metadata": {
                "name": "costmanagementmetricscfg-sample-v1beta1"
              },
              "spec": {
                "authentication": {
                  "token_url": "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token",
                  "type": "token"
                },
                "api_url": "https://console.redhat.com/",
                "packaging": {
                  "max_reports_to_store": 30,
                  "max_size_MB": 100
                },
                "upload": {
                  "ingress_path": "/api/ingress/v1/upload",
                  "upload_cycle": 360,
                  "upload_toggle": true,
                  "validate_cert": true
                },
                "prometheus_config": {
                  "collect_previous_data": true,
                  "context_timeout": 120,
                  "disable_metrics_collection_cost_management": false,
                  "disable_metrics_collection_resource_optimization": false,
                  "service_address": "https://thanos-querier.openshift-monitoring.svc:9091",
                  "skip_tls_verification": false
                },
                "source": {
                  "check_cycle": 1440,
                  "create_source": false,
                  "name": "",
                  "sources_path": "/api/sources/v1.0/"
                }
              }
            }
          operatorframework.io/suggested-namespace: koku-metrics-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/project-koku/koku-metrics-operator
          support: Cost Management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CostManagementMetricsConfig is the Schema for the costmanagementmetricsconfig
              API
            displayName: Cost Management Metrics Config
            kind: CostManagementMetricsConfig
            name: costmanagementmetricsconfigs.costmanagement-metrics-cfg.openshift.io
            version: v1beta1
        description: |
          # Koku Metrics Operator
          ## Introduction
          The `koku-metrics-operator` is a component of the [cost managment](https://access.redhat.com/documentation/en-us/cost_management_service) service for Openshift. The operator runs on the latest supported versions of Openshift. This operator obtains OpenShift usage data by querying Prometheus every hour to create metric reports that it uploads to Cost Management at [console.redhat.com](https://console.redhat.com) to be processed. For more information, reach out to <costmanagement@redhat.com>.

          This operator is capable of functioning within a disconnected/restricted network (aka air-gapped mode). In this mode, the operator will store the packaged reports for manual retrieval instead of being uploaded to Cost Management. Documentation for installing an operator within a restricted network can be found [here](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html).

          ## Features and Capabilities
          #### Metrics collection:
          The Koku Metrics Operator (`koku-metrics-operator`) collects the metrics required for Cost Management by:
          * Querying Prometheus to gather the necessary metrics for Cost Management.
          * Writing the results of Prometheus queries to CSV report files.
          * Packaging the CSV report files into tarballs.

          #### Additional Capabilities:
          * Resource Optimization metrics collection.
          * The operator can be configured to gather all previous data within the configured retention period or a maximum of 90 days. The default data collection period is the 14 previous days. This setting is only applicable to newly created KokuMetricsConfigs.
          * The operator can be configured to automatically upload the packaged reports to Cost Management through Red Hat Insights Ingress service.
          * The operator can create an integration in console.redhat.com. An integration is required for Cost Management to process the uploaded packages.
          * PersistentVolumeClaim (PVC) configuration: The KokuMetricsConfig CR can accept a PVC definition and the operator will create and mount the PVC. If one is not provided, a default PVC will be created.
          * Restricted network installation: this operator can function on a restricted network. In this mode, the operator stores the packaged reports for manual retrieval.

          ## New in v4.3.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for cost management.

          ## New in v4.2.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for resource optimization.
          * (Bugfix) Fixed custom CA certificate validation and configuration issues.
          * (Bugfix) Fixed issue where ROS queries were missing workload metadata for namespaces labeled only with the legacy `insights_cost_management_optimizations` label.

          ## New in v4.1.0:
          * Enabled gathering and reporting namespace metrics to provide more granular data for resource optimization.
          * Updated CSV report filenames to be more descriptive, replacing the previous generic UID-based names with content-reflective names.
          * Introduced a new generic label, `cost_management_optimizations`, for resource optimization while ensuring backward compatibility with the older `insights_cost_management_optimizations` label.

          ## New in v4.0.0:
          * **Virtual Machine Metrics:** Adds capabilities for collecting metrics and generating reports for running virtual machines within your OpenShift environment.
          * **Progress towards FIPS 140 Compliance:** The operator is using the Go Cryptographic Module v1.0.0 to progress toward FIPS 140 compliance. Although this module is not validated at the time of this release, the operator aims to meet stricter security standards when the module does successfully achieve FIPS validation.
          * **API Name Change:** The Custom Resource Definition (CRD) for configuring the upstream `Koku Metrics Operator` was renamed from `KokuMetricsConfig` to `CostManagementMetricsConfig`.

          ### NOTE:
            * The API name change impacts only users of the upstream (community) Koku Metrics Operator.
            * The downstream (Red Hat-supported) Cost Management Metrics Operator is not impacted by this change and users should continue using their existing configurations.

          **Important Upgrade Instructions:**

            If you are upgrading the upstream Koku Metrics Operator to version 4.0.0 or higher, you must manually migrate your configuration. The operator will no longer recognize existing `KokuMetricsConfig` resources.

            To successfully upgrade and retain your operator's configuration, complete the following steps. You can use the provided `oc` commands replacing the angle brackets (`< >`) with your specific values:

            1. Backup existing configuration (recommended):

               Before you upgrade, retrieve the details of your current `KokuMetricsConfig` instance to help you recreate it with the new API name.

               ```
               oc get kokumetricsconfig -n koku-metrics-operator <your-config-name> -o yaml > koku-metrics-config-backup.yaml
               ```

            2. Delete the previous `KokuMetricsConfig` instance (recommended):

                After the operator is upgraded to `version 4.0.0`, delete any existing `KokuMetricsConfig` resources.

                ```
                oc delete kokumetricsconfig -n koku-metrics-operator <your-config-name>
                ```

            3. Create the new `CostManagementMetricsConfig` instance:

                Using the information from your backup (or a new configuration), create a new `CostManagementMetricsConfig` instance. Adjust the spec section based on your specific needs. For more information about configurations, [refer to the configurable parameters](#configurable-parameters).

            4. Apply your new configuration:

                ```
                oc apply -f <your-costmanagementmetricsconfig-file>.yaml -n koku-metrics-operator
                ```

          ## New in v3.3.2:
          * Leader election settings are now configurable via environment variables. These variables can be modified in the operator [Subscription](https://github.com/operator-framework/operator-lifecycle-manager/blob/5a01f50258003e248bd5630df0837fe0bb0f1cb7/doc/design/subscription-config.md). The values should be specified as durations in seconds in the format `<number-of-seconds>s`. The default values for `LEADER_ELECTION_LEASE_DURATION`, `LEADER_ELECTION_RENEW_DEADLINE`, and `LEADER_ELECTION_RETRY_PERIOD` are '60s', '30s', and '5s', respectively.

            ```
            kind: Subscription
            metadata:
            ...
            spec:
              ...
              config:
                env:
                - name: LEADER_ELECTION_LEASE_DURATION
                  value: "60s"
                - name: LEADER_ELECTION_RENEW_DEADLINE
                  value: "30s"
                - name: LEADER_ELECTION_RETRY_PERIOD
                  value: "5s"
            ```

          ## New in v3.3.1:
          * Optimize memory usage when reading CSV files.

          ## New in v3.3.0:
          * Storage reports now contain `node`, `csi_driver`, and `csi_volume_handle` fields.
          * The PVC capacity is now populated using the `kube_persistentvolume_capacity_bytes` metric instead of `kubelet_volume_stats_capacity_bytes`.
          * To receive resource optimization recommendations for your namespaces, you must now first enable each namespace. To enable a namespace, label it with `insights_cost_management_optimizations='true'`. In the CLI, run:
            ```
              oc label namespace NAMESPACE insights_cost_management_optimizations="true" --overwrite=true
            ```
          * __DEPRECATION NOTICE__: Basic authentication is deprecated and will not be supported beyond December 31, 2024. If the default token authentication method cannot be used, you must switch to [service account](https://console.redhat.com/iam/service-accounts) authentication ([more on creating a service account](https://access.redhat.com/articles/7036194)). Once you have created your service account, follow [this documentation](https://access.redhat.com/documentation/en-us/cost_management_service/1-latest/html-single/integrating_openshift_container_platform_data_into_cost_management/index#service-account-authentication_adding-an-ocp-int) on how to configure your operator to use service account authentication. Service-accounts must also be used if manually uploading payloads to console.redhat.com.

          ## New in v3.2.1:
          * The minimum supported configuration for `upload_cycle` is now 60 (minutes).
          * (Bugfix) many-to-many matching not allowed query fix.
          * (Bugfix) Sequentially collect data during initial install.

          ## New in v3.2.0:
          * Support for amd64, arm64, ppc64le, s390x architectures.
          * add liveness and readiness probes to controller Pod.
          * update pod security settings so that the controller Pod can run in Restricted mode [more info](https://sdk.operatorframework.io/docs/best-practices/pod-security-standards/).

          ## New in v3.1.0:
          * Add service-account authentication type.
          * __Deprecation Notice:__ Basic authentication is deprecated and will be removed in a future version of the operator.

          ## New in v3.0.0:
          * Daily report generation: Operator versions prior to v3.0.0 generated sequential reports. Now, reports are generated starting at 0:00 UTC. Any payloads generated throughout a given day will contain all data starting from 0:00 UTC. Once the next day starts, the previous day's reports are packaged, and the new report again starts at 0:00 UTC for the current day.
          * Failed query retry: In an attempt to prevent missing data, the operator will retry queries from the last successful query time, up to 5 times.

          ## New in v2.0.0:
          * Adds metrics and report generation for resource optimization. This feature will collect additional usage metrics and create a new report in the payload. These metrics are enabled by default, but can be disabled by setting `disable_metrics_collection_resource_optimization` to `true`.
          * Collect all available Prometheus data upon CR creation. This feature only applies to newly created KokuMetricsConfigs. The operator will check the monitoring stack configuration in the `openshift-monitoring` namespace. The operator will use the `retention` period set in the `cluster-monitoring-config` ConfigMap if defined, up to a maximum of 90 days. Otherwise it will fall back to collecting 14 days of data, if available. This data collection may be disabled by setting `collect_previous_data` to `false`. Turning this feature off results in the operator collecting metrics from the time the KokuMetricsConfig is created, forward.

          ## Limitations and Pre-Requisites
          #### Limitations (Potential for metrics data loss)
          * An integration **must** exist in console.redhat.com for an uploaded payload to be processed by Cost Management. The operator sends the payload to the Red Hat Insights Ingress service which usually returns successfully, but the operator does not currently confirm with Cost Management that the payload was processed. After Ingress accepts the uploaded payload, it is deleted from the operator. If the data within the payload is not processed, a gap will be introduced in the usage metrics. Data may be recollected by deleting the `KokuMetricsConfig`, creating a new `KokuMetricsConfig`, and setting `collect_previous_data: true`. This re-collection of data will gather all data stored in Prometheus, up to 90 days.

          **Note** The following limitations are specific to operators configured to run in a restricted network:
          * The `koku-metrics-operator` will not be able to generate new reports if the PVC storage is full. If this occurs, the reports must be manually deleted from the PVC so that the operator can function as normal.
          * The default report retention is 30 reports (about one week's worth of data). The reports must be manually downloaded and uploaded to console.redhat.com every week, or they will be deleted and the data will be lost.

          #### Storage configuration prerequisite
          The operator will attempt to create and use the following PVC when installed:

                volume_claim_template:
                  apiVersion: v1
                  kind: PersistentVolumeClaim
                  metadata:
                    name: koku-metrics-operator-data
                  spec:
                    accessModes:
                      - ReadWriteOnce
                    resources:
                      requests:
                        storage: 10Gi

          If a different PVC should be utilized, a valid PVC should be specified in the KokuMetricsConfig CR as described in the appropriate section below. The PVC to be used may exist already, or the operator will attempt to create it.

          To use the default specification, the follow assumptions must be met:
          1. A default StorageClass is defined.
          2. Dynamic provisioning for that default StorageClass is enabled.

          If these assumptions are not met, the operator will not deploy correctly. In these cases, storage must be manually configured. After configuring storage, a valid PVC template should be supplied in the `volume_claim_template` spec of the KokuMetricsConfig CR.

          ## Configurable parameters:
            * `authentication`:
              * `type: token` -> The authentication method for connecting to `console.redhat.com`. The default and preferred method is `token`. `basic` (deprecated) and `service-account` authentication methods are used when the openshift-config pull-secret does not contain a token for `console.redhat.com`.
              * `secret_name` -> The Secret used by the operator when the authentication type is `basic` (deprecated) or `service-account`. This parameter is required **only if** the authentication type is `basic` (deprecated) or `service-account`.
            * `packaging`:
              * `max_reports_to_store: 30` -> The number of reports to store when configured in air-gapped mode. The default is 30, with a minimum of 1 and no maximum. When the operator is not configured in air-gapped mode, this parameter has no effect. Reports are removed as soon as they are uploaded.
              * `max_size: 100` -> The maximum size for packaged files in Megabytes prior to compression. The default is 100, with a minimum of 1 and maximum of 100.
            * `prometheus_config`:
              * `collect_previous_data: true` -> Toggle for collecting all available data in Prometheus **upon KokuMetricsConfig creation** (This parameter will start to appear in KokuMetricsConfigs that were created prior to v2.0.0 but will not have any effect unless the KokuMetricsConfig is deleted and recreated). The default is `true`. The operator will first look for a `retention` period in the `cluster-monitoring-config` ConfigMap in the `openshift-monitoring` namespace and gather data over this time period up to a maximum of 90 days. If this configuration is not set, the default is 14 days. (New in v2.0.0)
              * `disable_metrics_collection_cost_management: false` -> Toggle for disabling the collection of metrics for Cost Management. The default is false. (New in v2.0.0)
              * `disable_metrics_collection_resource_optimization: false` -> Toggle for disabling the collection of metrics for Resource Optimization. The default is false. (New in v2.0.0)
              * `context_timeout: 120` -> The time in seconds before Prometheus queries timeout due to exceeding context timeout. The default is 120, with a minimum of 10 and maximum of 180.
            * `source`:
              * `name: ''` -> The name of the integration the operator will create in `console.redhat.com`. If the name value is empty, the default intergration name is the **cluster id**.
              * `create_source: false` -> Toggle for whether or not the operator will create the integration in `console.redhat.com`. The default is False. This parameter should be switched to True when an integration does not already exist in `console.redhat.com` for this cluster.
              * `check_cycle: 1440` -> The time in minutes to wait between checking if an integration exists for this cluster. The default is 1440 minutes (24 hrs).
            * `upload`:
              * `upload_cycle: 360` -> The time in minutes between payload uploads. The default is 360 (6 hours), minimum is 60 (1 hour).
              * `upload_toggle: true` -> Toggle to turn upload on or off -> true means upload, false means do not upload (false == air-gapped mode). The default is `true`.
              * `upload_wait` -> The amount of time (in seconds) to pause before uploading a payload. The default is a random number between 0 and 35. This is used to decrease service load, but may be set to `0` if desired.
            * `volume_claim_template` -> see the "Storage configuration prerequisite" section above.

          ## Configure the koku-metrics-operator
          **Note** There are separate instructions for configuring the `koku-metrics-operator` to run in a restricted network.
          ##### Configure authentication
          The default authentication for the operator is `token`. No further steps are required to configure token authentication. If `basic` (deprecated) or `service-account` is the preferred authentication method, a Secret which holds the credentials must be created:
          1. On the left navigation pane, select `Workloads` -> `Secrets` -> select Project: `koku-metrics-operator` -> `Create` -> `Key/Value Secret`
          2. Give the Secret a name and add 2 keys (all lowercase) for the respective authentication type. The values for these keys correspond to console.redhat.com credentials:
              * basic auth (deprecated): `username` and `password`
              * service-account auth: `client_id` and `client_secret`

          3. Select `Create`.
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. For `basic` (deprecated) or `service-account` authentication, edit the following values in the spec:
              * Replace `authentication: type:` with `basic` or `service-account`.
              * Add the `secret_name` field under `authentication`, and set it equal to the name of the authentication Secret that was created above. The spec should look similar to the following:

                  * for basic auth type (deprecated)
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: basic
                  ```

                  * for service-account auth type
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: service-account
                  ```

          3. To configure the koku-metrics-operator to create a cost management integration, edit the following values in the `source` field:
              * Replace the `name` field value with the preferred name of the integration to be created.
              * Replace the `create_source` field value with `true`.

              **Note:** if the integration already exists, replace the empty string value of the `name` field with the existing name, and leave `create_source` as false. This will allow the operator to confirm that the integration exists.

          4. If not specified, the operator will create a default PersistentVolumeClaim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec:

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          5. Select `Create`.

          # Restricted Network Usage (disconnected/air-gapped mode)
          ## Installation
          To install the `koku-metrics-operator` in a restricted network, follow the [olm documentation](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html). The operator is found in the `community-operators` Catalog in the `registry.redhat.io/redhat/community-operator-index:latest` Index. If pruning the index before pushing to the mirrored registry, keep the `koku-metrics-operator` package.

          Within a restricted network, the operator queries prometheus to gather the necessary usage metrics, writes the query results to CSV files, and packages the reports for storage in the PVC. These reports then need to be manually downloaded from the cluster and uploaded to [console.redhat.com](https://console.redhat.com).

          ## Configure the koku-metrics-operator for a restricted network
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. Specify the desired storage. If not specified, the operator will create a default Persistent Volume Claim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec (below is only a template. Any _valid_ `PersistentVolumeClaim` may be defined here):

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      storageClassName: <insert-class-name>
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          3. (Optional) Specify the desired report retention. The operator will retain 30 reports by default. This corresponds to approximately one week's worth of data if using the default packaging cycle. To modify the number of retained reports:
              * Change the `packaging` spec field `max_reports_to_store` to the desired number of reports to retain. Once this max number is reached, the operator will start removing the oldest packages remaining on the PVC:

                ```
                  packaging:
                    max_size_MB: 100
                    max_reports_to_store: 30
                ```

              **Note:** The number of retained reports directly affects the frequency that reports must be manually downloaded from the PVC. Take caution in setting this to a higher number of reports, as the operator cannot write data to the PVC if the storage is full.
          4. To configure the operator to perform in a restricted network, set the `upload_toggle` to `false`:

            ```
              upload:
                upload_cycle: 360
                upload_toggle: false
            ```

          5. Select `Create`.

          ## Download reports from the Operator & clean up the PVC
          If the `koku-metrics-operator` is configured to run in a restricted network, the metric reports will not automatically upload to cost managment. Instead, they need to be manually copied from the PVC for upload to [console.redhat.com](https://console.redhat.com). The default configuration saves one week of reports which means the process of downloading and uploading reports should be repeated weekly to prevent loss of metrics data. To download the reports, complete the following steps:
          1. Create the following Pod, ensuring the `claimName` matches the PVC containing the report data:

            ```
              kind: Pod
              apiVersion: v1
              metadata:
                name: volume-shell
                namespace: koku-metrics-operator
                labels:
                  app: koku-metrics-operator
              spec:
                volumes:
                - name: koku-metrics-operator-reports
                  persistentVolumeClaim:
                    claimName: koku-metrics-operator-data
                containers:
                - name: volume-shell
                  image: busybox
                  command: ['sleep', 'infinity']
                  volumeMounts:
                  - name: koku-metrics-operator-reports
                    mountPath: /tmp/koku-metrics-operator-reports
            ```

          2. Use rsync to copy all of the files ready for upload from the PVC to a local folder:

            ```
            $ oc rsync volume-shell:/tmp/koku-metrics-operator-reports/upload local/path/to/save/folder
            ```

          3. Once confirming that the files have been successfully copied, use rsh to connect to the pod and delete the contents of the upload folder so that they are no longer in storage:

            ```
            $ oc rsh volume-shell
            $ rm /tmp/koku-metrics-operator-reports/upload/*
            ```

          4. (Optional) Delete the pod that was used to connect to the PVC:

            ```
            $ oc delete -f volume-shell.yaml
            ```

          ## Create an Integration
          In a restricted network, the `koku-metrics-operator` cannot automatically create an integration. This process must be done manually. In the console.redhat.com platform, open the [Integrations menu](https://console.redhat.com/settings/integrations/) to begin adding an OpenShift integration to Cost Management:

          Prerequisites:
          * The cluster identifier which can be found in the KokuMetricsConfig CR, the cluster Overview page, or the cluster Help > About.

          Creating an integration:
          1. Navigate to the Integrations menu
          2. Select the `Red Hat` tab
          3. Create a new `Red Hat Openshift Container Platform` integration:
              * give the integration a unique name
              * add the Cost Management application
              * add the cluster identifier
          4. In the Source wizard, review the details and click `Finish` to create the source.

          ## Upload the reports to cost managment
          Uploading reports to cost managment is done through curl:

              $ curl -vvvv -F "file=@FILE_NAME.tar.gz;type=application/vnd.redhat.hccm.tar+tgz" https://console.redhat.com/api/ingress/v1/upload -H "Authorization: Bearer ${ACCESS_TOKEN}"

          where `FILE_NAME` is the name of the report to upload. The `ACCESS_TOKEN` is acquired using a service account. See documentation on [creating and managing a service account](https://docs.redhat.com/en/documentation/red_hat_customer_portal/1/html/creating_and_managing_service_accounts).
        displayName: Koku Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cost
        - management
        - usage
        - monitor
        links:
        - name: Koku Metrics Operator source code repository
          url: https://github.com/project-koku/koku-metrics-operator
        maintainers:
        - email: costmanagement@redhat.com
          name: costmanagement
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
        - quay.io/community-operator-pipeline-prod/koku-metrics-operator:4.3.0
        version: 4.3.0
      entries:
      - name: koku-metrics-operator.v4.3.0
        version: 4.3.0
      - name: koku-metrics-operator.v4.2.0
        version: 4.2.0
      - name: koku-metrics-operator.v4.1.0
        version: 4.1.0
      - name: koku-metrics-operator.v4.0.0
        version: 4.0.0
      - name: koku-metrics-operator.v3.3.2
        version: 3.3.2
      - name: koku-metrics-operator.v3.3.1
        version: 3.3.1
      - name: koku-metrics-operator.v3.3.0
        version: 3.3.0
      - name: koku-metrics-operator.v3.2.1
        version: 3.2.1
      - name: koku-metrics-operator.v3.2.0
        version: 3.2.0
      - name: koku-metrics-operator.v3.1.0
        version: 3.1.0
      - name: koku-metrics-operator.v3.0.1
        version: 3.0.1
      - name: koku-metrics-operator.v3.0.0
        version: 3.0.0
      - name: koku-metrics-operator.v2.0.0
        version: 2.0.0
      - name: koku-metrics-operator.v1.2.0
        version: 1.2.0
      - name: koku-metrics-operator.v1.1.9
        version: 1.1.9
      - name: koku-metrics-operator.v1.1.8
        version: 1.1.8
      - name: koku-metrics-operator.v1.1.7
        version: 1.1.7
      - name: koku-metrics-operator.v1.1.6
        version: 1.1.6
      - name: koku-metrics-operator.v1.1.5
        version: 1.1.5
      - name: koku-metrics-operator.v1.1.4
        version: 1.1.4
      - name: koku-metrics-operator.v1.1.3
        version: 1.1.3
      - name: koku-metrics-operator.v1.1.2
        version: 1.1.2
      - name: koku-metrics-operator.v1.1.1
        version: 1.1.1
      - name: koku-metrics-operator.v0.9.8
        version: 0.9.8
      - name: koku-metrics-operator.v0.9.7
        version: 0.9.7
      - name: koku-metrics-operator.v0.9.6
        version: 0.9.6
      - name: koku-metrics-operator.v0.9.5
        version: 0.9.5
      - name: koku-metrics-operator.v0.9.4
        version: 0.9.4
      - name: koku-metrics-operator.v0.9.3
        version: 0.9.3
      - name: koku-metrics-operator.v0.9.2
        version: 0.9.2
      - name: koku-metrics-operator.v0.9.1
        version: 0.9.1
      - name: koku-metrics-operator.v0.9.0
        version: 0.9.0
      name: beta
    defaultChannel: beta
    packageName: koku-metrics-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: quay-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: quay-operator.v3.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:d73321dfa6dcced943405fae45c2ccf841663e0ab57e8be8cc1ddba251b7ce08
          createdAt: 2021-11-02 11:11 UTC
          description: Opinionated deployment of Red Hat Quay on Kubernetes.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:2a471300f70d3995ab7e9fcc3df35c5513e73fcc1d140fb4d651a1c3eae949eb
        - registry.redhat.io/quay/quay-operator-bundle@sha256:b793aef88881aa75d47a22377d8932efc0b497bb01b2f3f376d64891d1dace54
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:d73321dfa6dcced943405fae45c2ccf841663e0ab57e8be8cc1ddba251b7ce08
        - registry.redhat.io/quay/quay-rhel8@sha256:ed8c4249d376b4226e35bf088ffe5bf688bf68b059718c5e218aa1184fe048d0
        - registry.redhat.io/rhel8/postgresql-10@sha256:b2695e9af379624621bef9ec785f0cb618bfdabae98c5f17eea82ff5f8d2d5cb
        - registry.redhat.io/rhel8/redis-5@sha256:8d7e66927ce4b3050ca15ab4df4dbaeb593cb855e16fb0a6f5dde950e9db7db9
        - registry.redhat.io/quay/clair-rhel8@sha256:af5e2fd1543365b365b1a6cce00b86e44fe5e66cde6491e9b113324c21f629c8
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:0e6bef51caf479074925115fa11621c41bcada375cc1925d0511a73084b93543
        version: 3.4.7
      entries:
      - name: quay-operator.v3.4.7
        version: 3.4.7
      name: quay-v3.4
    - currentCSV: quay-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:1f5e4cc9ec2d9b8b89d82f1a698acfa1ac2764ca4ebc5c85b3417da7730b5867
          createdAt: 2021-09-09 20:09 UTC
          description: Opinionated deployment of Red Hat Quay on Kubernetes.
          olm.skipRange: '>=3.4.x <3.5.7'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.5.7
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:7fe408a1e428b2d0660cb578c1dcd4b961f838e37166fe7b21b2bed70d288594
        - registry.redhat.io/quay/quay-operator-bundle@sha256:722cf3c05eb5663a737cb1385b971b6d1f0c8b2595d5ac425f7b100c25e2fd26
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:1f5e4cc9ec2d9b8b89d82f1a698acfa1ac2764ca4ebc5c85b3417da7730b5867
        - registry.redhat.io/quay/quay-rhel8@sha256:c599892160ac20c744d833603d9375923af7aec1edfd86982b7513e02fb6d463
        - registry.redhat.io/rhel8/postgresql-10@sha256:a723bb3a7a5046527b9a5b628ddfb211c526e3814cc4242262c4f8a016f38edd
        - registry.redhat.io/rhel8/redis-5@sha256:7916760ff03af5ca230df5e96b2bf353fbf1829386de1c063c05f623837be7f7
        - registry.redhat.io/quay/clair-rhel8@sha256:d242bd9d37f95b2a5a8267b3f1eba02c671d46121712baae43466c86d1da89f9
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:5d72577ccfd63c6d9ad712b376b604c40d2d3ecb53e391e2ee0d18caa6e0225a
        version: 3.5.7
      entries:
      - name: quay-operator.v3.5.7
        version: 3.5.7
      name: quay-v3.5
    - currentCSV: quay-operator.v3.10.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:3dd66f1963715d3e38540c8020c3c18cddd0019f342cceff22aa6412844e06da
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.7.x <3.10.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.10.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-rhel8@sha256:9837d3583892538c03a1918510c507be46290ea4045ba22de8cfd416a50a787d
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:3dd66f1963715d3e38540c8020c3c18cddd0019f342cceff22aa6412844e06da
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/quay/clair-rhel8@sha256:3967b2027cc8ee045da7c6a214c959f8651fb873bd60b81cd78f167e57ba95a5
        - registry.redhat.io/quay/quay-operator-bundle@sha256:91ce9e64184afb90b00360c64f5ba37d30130ab0344b2439b93db15f2b35b74d
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:56c4668b72768c2b7017215f547039b4783498efd89d17dc3fdc7d0444cc8ad9
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:907dd22eb16925813711a70a3d0df30963a3d1d0c060ca9b4f071ec101f14b87
        version: 3.10.17
      entries:
      - name: quay-operator.v3.10.17
        version: 3.10.17
      - name: quay-operator.v3.10.16
        version: 3.10.16
      - name: quay-operator.v3.10.15
        version: 3.10.15
      - name: quay-operator.v3.10.14
        version: 3.10.14
      - name: quay-operator.v3.10.13
        version: 3.10.13
      - name: quay-operator.v3.10.12
        version: 3.10.12
      - name: quay-operator.v3.10.11
        version: 3.10.11
      - name: quay-operator.v3.10.10
        version: 3.10.10
      - name: quay-operator.v3.10.9
        version: 3.10.9
      - name: quay-operator.v3.10.8
        version: 3.10.8
      - name: quay-operator.v3.10.7
        version: 3.10.7
      - name: quay-operator.v3.10.6
        version: 3.10.6
      - name: quay-operator.v3.10.5
        version: 3.10.5
      - name: quay-operator.v3.10.4
        version: 3.10.4
      - name: quay-operator.v3.10.3
        version: 3.10.3
      - name: quay-operator.v3.10.2
        version: 3.10.2
      - name: quay-operator.v3.10.1
        version: 3.10.1
      - name: quay-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: quay-operator.v3.11.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:cb3a41caa3a572b7981d424be2a32b8e881127cc03b557ee0a36ab13f430b897
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.8.x <3.11.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: v3.11.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures ODF for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For production deployment of
          Red Hat OpenShift Data Foundation, please refer to the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-rhel8@sha256:7230fa1d4970e877cb6de8716e99a9bd43302c0ff23b4501f2aa806a8d496d9b
        - registry.redhat.io/rhel8/postgresql-13@sha256:35d86936c539007a78a89869a14b87b76788fe117df442a670f63936b978ed5b
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:11b8c9d64c42f0f0c7b2df491bba859d0410666a8ef1d2fd41eb77e4ad9d2dc8
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:cb3a41caa3a572b7981d424be2a32b8e881127cc03b557ee0a36ab13f430b897
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/clair-rhel8@sha256:3746677ef1cb0ddd4f237ab598b14cf0bc76dcce080ffde127b5bba87ffe6693
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:1a083cd72502609427428ed22fb60846613ddb41a4613496c5cddc797b382d3a
        - registry.redhat.io/quay/quay-operator-bundle@sha256:f19ae051041c46fe7587f903a9c6221bcbe8be2c4cc0235739f7592eb93ae164
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        version: 3.11.13
      entries:
      - name: quay-operator.v3.11.13
        version: 3.11.13
      - name: quay-operator.v3.11.12
        version: 3.11.12
      - name: quay-operator.v3.11.11
        version: 3.11.11
      - name: quay-operator.v3.11.10
        version: 3.11.10
      - name: quay-operator.v3.11.9
        version: 3.11.9
      - name: quay-operator.v3.11.8
        version: 3.11.8
      - name: quay-operator.v3.11.7
        version: 3.11.7
      - name: quay-operator.v3.11.6
        version: 3.11.6
      - name: quay-operator.v3.11.5
        version: 3.11.5
      - name: quay-operator.v3.11.4
        version: 3.11.4
      - name: quay-operator.v3.11.3
        version: 3.11.3
      - name: quay-operator.v3.11.2
        version: 3.11.2
      - name: quay-operator.v3.11.1
        version: 3.11.1
      - name: quay-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: quay-operator.v3.12.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:48417bfa200db498b71a750dd147c1c11405ea4b61ad41d32731923b56a0bc43
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.9.x <3.12.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.12.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:48417bfa200db498b71a750dd147c1c11405ea4b61ad41d32731923b56a0bc43
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/quay/clair-rhel8@sha256:8879a32314409b2367d8cdc0d7076667dab8a72df1b2f06ed6078ba022adb082
        - registry.redhat.io/quay/quay-operator-bundle@sha256:1c915a6f813564b9bf8062ea5c6a83097a8dd78a38fda0171fae9cc8d81299c7
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:206d249da9c156fc7b76eacc40759b3accb82dce85aa2bb2bbd7a33af52ee104
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:b3a950f2c8a123b9bcba240db407608dab6a4fb00cb9fcc6e083e07144928390
        - registry.redhat.io/quay/quay-rhel8@sha256:1076d78eba4bef63cf45ab04c1dff52f0407ab9e16fb4729bee7c1ab642f59b7
        version: 3.12.13
      entries:
      - name: quay-operator.v3.12.13
        version: 3.12.13
      - name: quay-operator.v3.12.12
        version: 3.12.12
      - name: quay-operator.v3.12.11
        version: 3.12.11
      - name: quay-operator.v3.12.10
        version: 3.12.10
      - name: quay-operator.v3.12.9
        version: 3.12.9
      - name: quay-operator.v3.12.8
        version: 3.12.8
      - name: quay-operator.v3.12.7
        version: 3.12.7
      - name: quay-operator.v3.12.6
        version: 3.12.6
      - name: quay-operator.v3.12.5
        version: 3.12.5
      - name: quay-operator.v3.12.4
        version: 3.12.4
      - name: quay-operator.v3.12.3
        version: 3.12.3
      - name: quay-operator.v3.12.2
        version: 3.12.2
      - name: quay-operator.v3.12.1
        version: 3.12.1
      - name: quay-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: quay-operator.v3.13.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:9fe5f2672eef5f780797c1fa1eeaca531dcf71a9d565e80c2698d9b51244c187
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.10.x <3.13.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.13.10
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/quay/quay-operator-bundle@sha256:e3bda08789b2ba41154d080a5f013ee0e2406d60f8414e63be451a6439555cc1
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:9fe5f2672eef5f780797c1fa1eeaca531dcf71a9d565e80c2698d9b51244c187
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:b3f7fa8d48a772171dfb9eb893bc8e51985147c7f44fb8b1351325dbbf59810a
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:92ffbfe625489fe0b00e32a144f76935a4c36d1835af42d9b45bc3904760b085
        - registry.redhat.io/quay/clair-rhel8@sha256:3af5c1b75dedb37fb8c7cc3500882f7145314d44735b0957dad7d588a0cbf825
        - registry.redhat.io/quay/quay-rhel8@sha256:f112ecb55942c8785c4aa20162b74bac904634a87bdc8b9755873ef19eccd6df
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        version: 3.13.10
      entries:
      - name: quay-operator.v3.13.10
        version: 3.13.10
      - name: quay-operator.v3.13.9
        version: 3.13.9
      - name: quay-operator.v3.13.8
        version: 3.13.8
      - name: quay-operator.v3.13.7
        version: 3.13.7
      - name: quay-operator.v3.13.6
        version: 3.13.6
      - name: quay-operator.v3.13.5
        version: 3.13.5
      - name: quay-operator.v3.13.4
        version: 3.13.4
      - name: quay-operator.v3.13.3
        version: 3.13.3
      - name: quay-operator.v3.13.2
        version: 3.13.2
      - name: quay-operator.v3.13.1
        version: 3.13.1
      - name: quay-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: quay-operator.v3.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:8ebc1f0511f7d394ceaa39a4c993e955c560dc04588072cb3f8c8fab8c85e32b
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.11.x <3.14.5'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: v3.14.5
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures ODF for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For production deployment of
          Red Hat OpenShift Data Foundation, please refer to the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-operator-bundle@sha256:f16c0a135dd7380e2a489f963b38bd76a63a973f482d06ece8d3656aff223703
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:8ebc1f0511f7d394ceaa39a4c993e955c560dc04588072cb3f8c8fab8c85e32b
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        - registry.redhat.io/quay/quay-rhel8@sha256:33e984892650d315065313fcb5f8808e145aadec5a287219c7031d85b713235e
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/clair-rhel8@sha256:e11e8a819d17bd14c67f093b5303b4958855e731f89ce67dcca70fcb7b77f45a
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:43ef8adddbf9b007b6e2396f53bd6a5475150d28c2f4254f031a0fe6c7de5826
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:a12a0918f6dea114b0aae231d7119a4acfd0cd297074d895f4ecf190d2aec43a
        version: 3.14.5
      entries:
      - name: quay-operator.v3.14.5
        version: 3.14.5
      - name: quay-operator.v3.14.4
        version: 3.14.4
      - name: quay-operator.v3.14.3
        version: 3.14.3
      - name: quay-operator.v3.14.2
        version: 3.14.2
      - name: quay-operator.v3.14.1
        version: 3.14.1
      - name: quay-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: quay-operator.v3.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:05fb981d9848281b97b3683093f752b1c1dc5ced439a2b4ba18b26ff8e11231e
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.12.x <3.15.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: v3.15.2
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures ODF for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For production deployment of
          Red Hat OpenShift Data Foundation, please refer to the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-rhel8@sha256:aa8c9f7b6ce57441ca1fe9dbaaefaf2bb83fd44aa367647b663bb822bf890362
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        - registry.redhat.io/quay/clair-rhel8@sha256:861be31d30142bae125cd059bb716d79b28694e9c4336333c68adf4a3823b61d
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:956f3110f944d880bc27bb6df9472d0804cd75f5dcf4ed11bcf721e9d1d4542b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:873a3daf1dadf2438eb96e151072326c31ba34ed48cac041614b604413d5f8e7
        - registry.redhat.io/quay/quay-operator-bundle@sha256:b499eebed32c0261db414e307f96f8aef9e743035544c80c048526e7ba4fbdc2
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:05fb981d9848281b97b3683093f752b1c1dc5ced439a2b4ba18b26ff8e11231e
        version: 3.15.2
      entries:
      - name: quay-operator.v3.15.2
        version: 3.15.2
      - name: quay-operator.v3.15.1
        version: 3.15.1
      - name: quay-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: quay-operator.v3.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel9@sha256:16616e52f128f4a9b8511e7d9288bb1fcdd4e096a5a9b58400badbd0fad21476
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.13.x <3.16.0'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.16.0
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-15@sha256:90ec347a35ab8a5d530c8d09f5347b13cc71df04f3b994bfa8b1a409b1171d59
        - registry.redhat.io/rhel9/redis-6@sha256:686620b9acef6dfc3fc5e8221ca4d7a00c1fb102319352e7871fb9bc0ea127e3
        - registry.redhat.io/quay/clair-rhel9@sha256:b9a5096fef74999c34dfb721ca1b5e47623cfa21b48213f60a5b889894d4874e
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:adc9eb1500491144a259fd95c14237be15fa92478523bf33769a708b301d66cb
        - registry.redhat.io/rhel9/postgresql-13@sha256:5105fc7494c8e9886204951ea6eed0a04dcc638ea65a2e1c15df5ebf99aae356
        - registry.redhat.io/rhel8/postgresql-13@sha256:3e3e87ba0081e6f2d00b7a0f44f1b7fe6465c3c8176503c5f967237a949fd9d7
        - registry.redhat.io/quay/quay-rhel9@sha256:c855425208f7f33a550d216328965fdcb3abebc3ee28fc0854bf62c58ce07266
        - registry.redhat.io/rhel8/postgresql-10@sha256:0b9dcbac4969cc755505ee152369f23ac891a0e4030e9e2519cae25e32416500
        - registry.redhat.io/quay/quay-builder-rhel9@sha256:d3803200676de5a10f81539d3cb65e3d1cfad4fdfe7171284cab758bfc1bdd6a
        - registry.redhat.io/quay/quay-operator-bundle@sha256:000771d05a6151960a085bce375f090d706c48328009000437dbc5a8711c9ac8
        - registry.redhat.io/quay/quay-operator-rhel9@sha256:16616e52f128f4a9b8511e7d9288bb1fcdd4e096a5a9b58400badbd0fad21476
        version: 3.16.0
      entries:
      - name: quay-operator.v3.16.0
        version: 3.16.0
      name: stable-3.16
    - currentCSV: quay-operator.v3.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:7a6e592d7f5f760b4451f9c974dbb96f56b1d3de92f039adcbf284f78ba13a02
          createdAt: 2021-10-12 22:10 UTC
          description: Opinionated deployment of Red Hat on Kubernetes.
          olm.skipRange: '>=3.3.x <3.6.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.6.10
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:75df6b8e6bef14844a08f7d994470fa6ec4ffa66d4b15faaa0a3ba373f612fbb
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:ec36241f0a9a2983b1894cd8501898e6b70379af51a81b1e09b0ba0e9b54b33f
        - registry.redhat.io/quay/quay-operator-bundle@sha256:55a5e6297109aea029bd40fac09a9fbc10c28a8c5558f9afc9b9b86c5dc7a4d4
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:7a6e592d7f5f760b4451f9c974dbb96f56b1d3de92f039adcbf284f78ba13a02
        - registry.redhat.io/quay/quay-rhel8@sha256:e75e4d084eba9bb65b9cc72e38294af314d49316b12a0beb75db808dc057830b
        - registry.redhat.io/rhel8/postgresql-10@sha256:4b912c80085b88a03309aeb7907efcc29dd3342fa3952b6ea067afb1914bfe53
        - registry.redhat.io/rhel8/redis-6@sha256:d7c7852338717308cbb59e9303e1ea35cc8e5c01ceb2818569be20c15f3f943d
        - registry.redhat.io/quay/clair-rhel8@sha256:cbafddd1eb50c1c0f9159ffafd86f44a8c0b976194903c96c6f144bfe62e749d
        version: 3.6.10
      entries:
      - name: quay-operator.v3.6.10
        version: 3.6.10
      - name: quay-operator.v3.6.9
        version: 3.6.9
      - name: quay-operator.v3.6.8
        version: 3.6.8
      - name: quay-operator.v3.6.7
        version: 3.6.7
      - name: quay-operator.v3.6.6
        version: 3.6.6
      - name: quay-operator.v3.6.5
        version: 3.6.5
      - name: quay-operator.v3.6.4
        version: 3.6.4
      - name: quay-operator.v3.6.2
        version: 3.6.2
      - name: quay-operator.v3.6.1
        version: 3.6.1
      - name: quay-operator.v3.6.0
        version: 3.6.0
      name: stable-3.6
    - currentCSV: quay-operator.v3.7.14
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:a8283c2be661e07c5f2f2e5b683c520846bcb91d580d9a3a0aa27ce994ddfff6
          createdAt: 2021-04-23 10:04 UTC
          description: Opinionated deployment of Red Hat on Kubernetes.
          olm.skipRange: '>=3.4.x <3.7.14'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: v3.7.14
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/clair-rhel8@sha256:d676af83e96740220e6f18721c98817ba071fd023a62ebdc3815424e94838083
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:04ac405c152bffb43b33fb2e7f45df8b3940eb21e055ebf6aa17bd81ebdeeab4
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:c54c77e09c95dc7d80d7b31e796857c8d06f2f733426629b53d3298206d23b20
        - registry.redhat.io/quay/quay-operator-bundle@sha256:e3f63ea56de7ca5388a20c17ac63e16f07935ab09bcdcd38a86639c9d59c8a7d
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:a8283c2be661e07c5f2f2e5b683c520846bcb91d580d9a3a0aa27ce994ddfff6
        - registry.redhat.io/quay/quay-rhel8@sha256:7bc9e115e9bace07505ffd225242cab83d5eb6d50358188d18fd9161bdf1a5a6
        - registry.redhat.io/rhel8/postgresql-10@sha256:a52ad402458ec8ef3f275972c6ebed05ad64398f884404b9bb8e3010c5c95291
        - registry.redhat.io/rhel8/redis-6@sha256:b15335d88b240bd6bbedeb7fe26f0a1de2f6c330af9758b0fb2edab7ca69f6df
        version: 3.7.14
      entries:
      - name: quay-operator.v3.7.14
        version: 3.7.14
      - name: quay-operator.v3.7.13
        version: 3.7.13
      - name: quay-operator.v3.7.12
        version: 3.7.12
      - name: quay-operator.v3.7.11
        version: 3.7.11
      - name: quay-operator.v3.7.10
        version: 3.7.10
      name: stable-3.7
    - currentCSV: quay-operator.v3.8.15
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:abec0fa7ee641c8e424e995b5fe07b98e522ad1eb92c3b90426f69941f33eb2e
          createdAt: 2021-04-23 10:04 UTC
          description: Opinionated deployment of Red Hat on Kubernetes.
          olm.skipRange: '>=3.5.x <3.8.15'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: v3.8.15
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-operator-bundle@sha256:53fcddadaa31a5f7d74c38f0bbd0d80b4c09796a580ef8494f60ff82fb6fe6c1
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:abec0fa7ee641c8e424e995b5fe07b98e522ad1eb92c3b90426f69941f33eb2e
        - registry.redhat.io/quay/quay-rhel8@sha256:de2b65506f99eebb5eaafca6bb42b4ebec08e9479dd0d50aa1286f197e42d6de
        - registry.redhat.io/rhel8/postgresql-10@sha256:b7fa644277d5e406b642685ff2ace1b1de7aea2e2a1421b3cbcda7d60405f44d
        - registry.redhat.io/rhel8/redis-6@sha256:444200241cb9186cd97d564d7acf077d83fc997a8ee5ee7fdae41b604895085c
        - registry.redhat.io/quay/clair-rhel8@sha256:b327fcfd7472cdb9d83a564904976b26b285fa576dc0a76e5590990ec77fd871
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:3c047c7b22fb42557bd3a9b9c9ac333f0df7d5e4a4d333a2b02a4313f57085be
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:7e4e57071439d671971b0de46b597cf6cff8ef3879ab711125a6ae7ecb9c6d29
        version: 3.8.15
      entries:
      - name: quay-operator.v3.8.15
        version: 3.8.15
      - name: quay-operator.v3.8.14
        version: 3.8.14
      - name: quay-operator.v3.8.13
        version: 3.8.13
      - name: quay-operator.v3.8.12
        version: 3.8.12
      - name: quay-operator.v3.8.11
        version: 3.8.11
      - name: quay-operator.v3.8.10
        version: 3.8.10
      - name: quay-operator.v3.8.9
        version: 3.8.9
      - name: quay-operator.v3.8.8
        version: 3.8.8
      - name: quay-operator.v3.8.7
        version: 3.8.7
      - name: quay-operator.v3.8.6
        version: 3.8.6
      - name: quay-operator.v3.8.5
        version: 3.8.5
      - name: quay-operator.v3.8.4
        version: 3.8.4
      - name: quay-operator.v3.8.3
        version: 3.8.3
      - name: quay-operator.v3.8.2
        version: 3.8.2
      - name: quay-operator.v3.8.1
        version: 3.8.1
      - name: quay-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: quay-operator.v3.9.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:81809b56de4139a26a6064239430f29744d8eb9bc07ee3260516d65b09ab86e0
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.9.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:571d88c0dc93c9194a5242b02101b7d77871d2d9496307df7dcb9dac971ab444
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:94f7e4f69cf8bad09b00ffb85bcf621f87df000e8a6077ba49fca88997a163fa
        - registry.redhat.io/quay/quay-operator-bundle@sha256:3c1f25918b505ec71eaf93d2a0b963d209e36d847e7fc48469f9d40b534344ae
        - registry.redhat.io/quay/quay-rhel8@sha256:f713bd016f375427a0a348e58639622cf21560c05d1b82653f2c47493fcba186
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:81809b56de4139a26a6064239430f29744d8eb9bc07ee3260516d65b09ab86e0
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/clair-rhel8@sha256:f4bb5da4f6ea525d620c94180548603e1686de8b85b9c92c0a8c59840a1f69da
        version: 3.9.17
      entries:
      - name: quay-operator.v3.9.17
        version: 3.9.17
      - name: quay-operator.v3.9.16
        version: 3.9.16
      - name: quay-operator.v3.9.15
        version: 3.9.15
      - name: quay-operator.v3.9.14
        version: 3.9.14
      - name: quay-operator.v3.9.13
        version: 3.9.13
      - name: quay-operator.v3.9.12
        version: 3.9.12
      - name: quay-operator.v3.9.11
        version: 3.9.11
      - name: quay-operator.v3.9.10
        version: 3.9.10
      - name: quay-operator.v3.9.9
        version: 3.9.9
      - name: quay-operator.v3.9.8
        version: 3.9.8
      - name: quay-operator.v3.9.7
        version: 3.9.7
      - name: quay-operator.v3.9.6
        version: 3.9.6
      - name: quay-operator.v3.9.5
        version: 3.9.5
      - name: quay-operator.v3.9.4
        version: 3.9.4
      - name: quay-operator.v3.9.3
        version: 3.9.3
      - name: quay-operator.v3.9.2
        version: 3.9.2
      - name: quay-operator.v3.9.1
        version: 3.9.1
      - name: quay-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.16
    packageName: quay-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: eventing-kogito
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eventing-kogito.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kogito.knative.dev/v1alpha1",
                "kind": "KogitoSource",
                "metadata": {
                  "name": "kogito-order-processing"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "eventing.knative.dev/v1",
                      "kind": "Broker",
                      "name": "default"
                    }
                  },
                  "subject": {
                    "apiVersion": "serving.knative.dev/v1",
                    "kind": "Service",
                    "name": "serverless-workflow-order-processing"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: gcr.io/knative-releases/knative.dev/eventing-kogito/cmd/controller:v1.2.0
          createdAt: "2021-08-25T12:00:00Z"
          olm.targetNamespaces: knative-kogito
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/knative-sandbox/eventing-kogito
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoSource is the representation of a Knative Eventing
              Source for a Kogito custom Service.
            displayName: Kogito Source
            kind: KogitoSource
            name: kogitosources.kogito.knative.dev
            version: v1alpha1
        description: |-
          Knative Eventing Source for Kogito Services. This controller will enable easy configuration of any Kogito custom Service
          with the Knative Eventing platform. Please find more information about using this source in the [Official Kogito Documentation](https://docs.jboss.org/kogito/release/latest/html_single/#_kogito_knative_eventing_add_on)

          **Note:** The admission webhooks are not installed via OLM at this time. Because of that, please ensure that you create the `KogitoSource` objects with the subbject and sink information with the appropriate namespace.
        displayName: Kogito Knative Eventing Source
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless workflow
        - kogito
        - knative
        - dmn
        - bpmn
        - eventing
        - cloudevents
        - messaging
        links:
        - name: Source Repository
          url: https://github.com/knative-sandbox/eventing-kogito
        - name: Kogito Knative Add-On Documentation
          url: https://docs.jboss.org/kogito/release/latest/html_single/#_kogito_knative_eventing_add_on
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - gcr.io/knative-releases/knative.dev/eventing-kogito/cmd/controller:v1.2.0
        - quay.io/openshift-community-operators/eventing-kogito@sha256:abe8d5803d2d96ebbb9fe4cda0feaa0217e92def6a669404362bcf741d934690
        version: 1.2.0
      entries:
      - name: eventing-kogito.v1.2.0
        version: 1.2.0
      - name: eventing-kogito.v1.1.0
        version: 1.1.0
      name: alpha
    defaultChannel: alpha
    packageName: eventing-kogito
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: k8gb.io
      provider-url: https://github.com/k8gb-io/k8gb
    name: k8gb
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: k8gb.v0.11.4
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"k8gb.absa.oss/v1beta1","kind":"Gslb","metadata":{"name":"test-gslb-failover","namespace":"test-gslb"},"spec":{"ingress":{"rules":[{"host":"failover.test.k8gb.io","http":{"paths":[{"backend":{"service":{"name":"frontend-podinfo","port":{"name":"http"}}},"path":"/"}]}}]},"strategy":{"primaryGeoTag":"eu-west-1","type":"failover"}}}]'
          capabilities: Seamless Upgrades
          categories: Networking
          certified: "false"
          containerImage: docker.io/absaoss/k8gb:v0.11.4
          createdAt: "2021-09-24 12:00:00"
          description: A cloud native Kubernetes Global Balancer
          operatorframework.io/suggested-namespace: k8gb
          operators.operatorframework.io.bundle.channels.v1: alpha
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: k8gb
          operators.operatorframework.io/builder: operator-sdk-v1.12.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/k8gb-io/k8gb
          support: cncf-k8gb-maintainers@lists.cncf.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gslb resource for global load balancing strategy configuration
            displayName: Gslb
            kind: Gslb
            name: gslbs.k8gb.absa.oss
            version: v1beta1
          - description: Using ExternalDNS it synchronizes exposed Kubernetes Services
              and Ingresses with DNS providers
            displayName: DNSEndpoint
            kind: DNSEndpoint
            name: dnsendpoints.externaldns.k8s.io
            version: v1alpha1
        description: |
          **A cloud native Kubernetes Global Balancer**

          A Global Service Load Balancing solution with a focus on having cloud native qualities and work natively in a Kubernetes context.

          Key Differentiators:
           - Load balancing is based on timeproof DNS protocol which is perfect for global scope and extremely reliable
           - No dedicated management cluster and no single point of failure
           - Kubernetes native application health checks utilizing status of Liveness and Readiness probes for load balancing decisions
           - Configuration with a single Kubernetes CRD of `Gslb` kind

          Operator needs to be configured by setting couple of environment variables. This can be done by modifying
          the subscription yaml in the web ui or via kubectl. Here is an example of changing the `EDGE_DNS_ZONE`:

          ```yaml
          kind: Subscription
            ...
          spec:
            ...
            config:
              env:
              - name: CLUSTER_GEO_TAG
                value: us
              - name: EDGE_DNS_ZONE
                value: mycloud.example.com
                ...
           ```
           For more deployment variables see [helm code](https://github.com/k8gb-io/k8gb/blob/v0.8.3/chart/k8gb/templates/operator.yaml#L53:L68).

           For more information see [k8gb.io](https://k8gb.io).
        displayName: k8gb
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gslb
        - dns-lb
        - kuberneters-global-balancer
        - kubernetes-operator
        - balancer
        - multi-cluster
        links:
        - name: Home
          url: https://www.k8gb.io/
        - name: Source
          url: https://github.com/k8gb-io/k8gb
        maintainers:
        - email: dinar.valeev@absa.africa
          name: Dinar Valeev
        - email: jiri.kremser@gmail.com
          name: Jiri Kremser
        - email: kuritka@gmail.com
          name: Michal Kuritka
        - email: timofey.ilinykh@absa.africa
          name: Timofey Ilinykh
        - email: yury.tsarev@absa.africa
          name: Yury Tsarev
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: k8gb.io
          url: https://github.com/k8gb-io/k8gb
        relatedImages:
        - quay.io/openshift-community-operators/k8gb@sha256:9743f957b00e5ad344fed0c062d616d8222990139ac4afbf14871fd9813f0ef0
        - absaoss/k8s_crd:v0.0.11
        - docker.io/absaoss/k8gb:v0.11.4
        version: 0.11.4
      entries:
      - name: k8gb.v0.11.4
        version: 0.11.4
      name: alpha
    defaultChannel: alpha
    packageName: k8gb
    provider:
      name: k8gb.io
      url: https://github.com/k8gb-io/k8gb
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: global-load-balancer-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: global-load-balancer-operator.v1.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSRecord",
                "metadata": {
                  "name": "hello-global-record"
                },
                "spec": {
                  "endpoints": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    }
                  ],
                  "globalZoneRef": {
                    "name": "external-dns-zone"
                  },
                  "loadBalancingPolicy": "Multivalue",
                  "name": "hello.my.base.domain",
                  "ttl": 60
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSRecord",
                "metadata": {
                  "name": "route53-geoproximity-global-record-with-healthcheck"
                },
                "spec": {
                  "endpoints": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    }
                  ],
                  "globalZoneRef": {
                    "name": "route53-global-dns-zone"
                  },
                  "healthCheck": {
                    "failureThreshold": 3,
                    "httpGet": {
                      "host": "geoproximity-hc.${global_base_domain}",
                      "path": "/healthz",
                      "port": 80,
                      "scheme": "HTTP"
                    },
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 2
                  },
                  "loadBalancingPolicy": "Geoproximity",
                  "name": "geoproximity-hc.my.base.domain",
                  "ttl": 60
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSZone",
                "metadata": {
                  "name": "external-dns-zone"
                },
                "spec": {
                  "domain": "myglobalzone.mybasedomain.io",
                  "provider": {
                    "externalDNS": {
                      "annotations": {
                        "type": "global"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSZone",
                "metadata": {
                  "name": "route53-global-dns-zone"
                },
                "spec": {
                  "domain": "myglobalzone.mybasedomain.io",
                  "provider": {
                    "route53": {
                      "credentialsSecretRef": {
                        "name": "route53-global-zone-credentials",
                        "namespace": "mynamespace"
                      },
                      "zoneID": "Z083892239ROKNEP70BDY"
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalRouteDiscovery",
                "metadata": {
                  "name": "external-dns-globalroutediscovery"
                },
                "spec": {
                  "clusters": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3"
                    }
                  ],
                  "defaultLoadBalancingPolicy": "Multivalue",
                  "defaultTTL": 30,
                  "globalZoneRef": {
                    "name": "external-dns-zone"
                  },
                  "routeSelector": {
                    "matchLabels": {
                      "route-type": "global"
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalRouteDiscovery",
                "metadata": {
                  "name": "route53-globalroutediscovery"
                },
                "spec": {
                  "clusters": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3"
                    }
                  ],
                  "defaultLoadBalancingPolicy": "Multivalue",
                  "defaultTTL": 30,
                  "globalZoneRef": {
                    "name": "route53-global-dns-zone"
                  },
                  "routeSelector": {
                    "matchLabels": {
                      "route-type": "global"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking, Cloud Provider
          certified: "false"
          containerImage: quay.io/redhat-cop/global-load-balancer-operator@sha256:c0b6ac9b03571a74a56b28302d720e8aa4442233f7867d05ed365e022f7cb8f5
          createdAt: "2021-12-02T17:33:23Z"
          description: This operator creates automation around a DNS to operate as
            a global load balancer for a set of OpenShift clusters.
          operatorframework.io/suggested-namespace: global-load-balancer-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/global-load-balancer-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DNSEndpoint
            name: dnsendpoints.externaldns.k8s.io
            version: v1alpha1
          - description: GlobalDNSRecord is the Schema for the globaldnsrecords API
            displayName: Global DNSRecord
            kind: GlobalDNSRecord
            name: globaldnsrecords.redhatcop.redhat.io
            version: v1alpha1
          - description: GlobalDNSZone is the Schema for the globaldnszones API
            displayName: Global DNSZone
            kind: GlobalDNSZone
            name: globaldnszones.redhatcop.redhat.io
            version: v1alpha1
          - description: GlobalRouteDiscovery is the Schema for the globalroutediscoveries
              API
            displayName: Global Route Discovery
            kind: GlobalRouteDiscovery
            name: globalroutediscoveries.redhatcop.redhat.io
            version: v1alpha1
        description: "The global-load-balancer-operator implements automation to program
          a DNS service to act as global load balancer for applications deployed to
          multiple OpenShift clusters.\nThis operator is designed to be deployed to
          a control cluster which will watch the load balanced clusters (controlled
          clusters).\nThere are two main concepts (APIs) provided by this operator:\n\n1.
          GlobalDNSZone\n2. GlobalDNSRecord\n\n## GlobalDNSZone\n\nThe `GlobalDNSZone`
          CR allows you to configure a zone which will contain global load balanced
          records and the provider used to populate it.\nHere is an example of GlobalDNSZone:\n\n```yaml\napiVersion:
          redhatcop.redhat.io/v1alpha1\nkind: GlobalDNSZone\nmetadata:\n  name: external-dns-zone\nspec:\n
          \ # Add fields here\n  domain: global.myzone.io\n  provider:\n    externalDNS:\n
          \     annotations:\n        type: global\n```\n\nHere is a table summarizing
          the supported providers and their capabilities:\n\n| Provider  | Supports
          Health Checks  | Supports Multivalue LB | Supports Latency LB  | Supports
          GeoProximity LB  |\n|:--:|:--:|:---:|:---:|:---:|\n| External-dns  | no
          \ | yes | no  | no  |\n| Route53  | yes | yes(*)  | yes(*)  | yes(*)  |\n\n(*)
          only if all controlled clusters run on AWS.\n\n## GlobalDNSRecord\n\nThe
          `GlobalDNSRecord` CR allows you to specify the intention to create a global
          dns record. Here is an example\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          GlobalDNSRecord\nmetadata:\n  name: hello-global-record\nspec:\n  name:
          hello.global.myzone.io\n  endpoints:\n  - clusterName: cluster1\n    clusterCredentialRef:\n
          \     name: kubeconfig\n      namespace: cluster1\n    loadBalancerServiceRef:\n
          \     name: router-default\n      namespace: openshift-ingress\n  - clusterName:
          cluster2\n    clusterCredentialRef:\n      name: kubeconfig\n      namespace:
          cluster2\n    loadBalancerServiceRef:\n      name: router-default\n      namespace:
          openshift-ingress\n  - clusterName: cluster3\n    clusterCredentialRef:\n
          \     name: kubeconfig\n      namespace: cluster3\n    loadBalancerServiceRef:\n
          \     name: router-default\n      namespace: openshift-ingress\n  ttl: 60\n
          \ loadBalancingPolicy: Multivalue\n  globalZoneRef:\n    name: external-dns-zone\n
          \ healthCheck:\n    failureThreshold: 3\n    httpGet:\n      host: hello.global.myzone.io\n
          \     httpHeaders:\n        - name: ciao\n          value: hello\n      path:
          /readyz\n      port: 80\n      scheme: HTTP\n    periodSeconds: 10\n    successThreshold:
          1\n    timeoutSeconds: 1     \n```\n\nThe list of endpoints identifies the
          set of `LoadBalancer` type of services to watch on the remote clusters (at
          the moment only LoadBalancer services are supported). These are the `LoadBalancer`
          services created by the [ingress controller](https://docs.openshift.com/container-platform/4.5/networking/ingress-operator.html)
          on which the routers rely. Each entry of this list requires a reference
          to the loadbalancer service on the remote cluster and a reference to a local
          secret containing the credential to connect to the remote cluster.\n\nThis
          secret must contain one entry called `kubeconfig` with a kubeconfig file
          with a default context pointing to the remote cluster. The account used
          by the kubeconfig file (presumably a service account) will require at a
          minimum cluster-level permissions as described in this [cluster role](./docs/scripts/remote-account-cluster-role.yaml).\n\nThe
          `globalZoneRef` field refers to a local (same namespace) `GlobalZone` CR.
          The DNS record represented by this `GlobalDNSRecord`, will be created in
          the referenced zone.\n\n`ttl` is the TTL of the crated DNS record.\n\n`loadBalancingPolicy`
          is the load balancing policy for this global record. It must match one of
          the policy supported by the provider of the referenced `GlobalZone`.\n\nFinally,
          `healthcheck` represent a [probe](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/#probe-v1-core)
          to be used to test the health of a record. This field will be ignored if
          the provider does not support health checks.\n\n## External DNS Provider\n\nThe
          [external-dns](https://github.com/kubernetes-sigs/external-dns) provider
          delegates to external-dns the creation of the actual DNS records by creating
          a `DNSEndpoint` object.\nThe `DNSEndpoint` object will be created in the
          same namespace as the `GlobalDNSRecord` and will be owned by it.\nThe `DNSEdnpoint`
          object will have the same labels as the `GlobalDNSRecord` and the annotations
          specified in the GlobalDNSZone configuration.\nExternal-dns should be configured
          to watch for DNSEnpoints at the cluster level and to point to the desired
          provider.\nDetails on configuration can be found at the external-dns git
          repository.\nThe External-dns should be used as a fall back option when
          other options are not available as it does not support health checks and
          advanced load balancing policies.\n\n## AWS Route53 provider\n\nAWS Route53
          provider uses the Route53 service as a global loadbalancer and offers advanced
          routing capabilities via [route53 traffic policies](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/traffic-flow.html)
          (note that traffic policies will trigger an expense).\nThe following routing
          polices are currently supported:\n\n1. [Multivalue](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-multivalue)\n2.
          [Geoproximity](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-geoproximity)\n3.
          [Latency](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-latency)\n\nAWS
          Route53 provider at the moment requires that all the controlled clusters
          run in AWS.\n\nIf health checks are defined, a route53 health check originating
          from any reason (you have to ensure connectivity) will be created for each
          of the endpoint. Because the endpoint represent s a shared ELB (shared with
          other apps, that is) and the health check is app specific, we cannot use
          the ELB health check, so the route53 endpoint is created with one of the
          two IP exposed by the ELB. This is suboptimal, but it works in most situations.\n\n##
          Global Route Auto Discovery\n\nThe aboev examples showed how to create global
          DNS records. This can be good in some situations, but most of the times
          in an openshift deployment global DNS records will point to routes that
          are intended to be global.\nThe global-load-balancer operator can auto-discover
          these routes and automatically create the corresponding `GloablDNSRecord`.
          The `GlobalRouteDiscovery` CRD is used to configure the discovery process,
          here is an example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          GlobalRouteDiscovery\nmetadata:\n  name: route53-globalroutediscovery\nspec:\n
          \ clusters:\n  - clusterName: cluster1\n    clusterCredentialRef:\n      name:
          ${cluster1_secret_name}\n      namespace: cluster1\n...\n  routeSelector:\n
          \   matchLabels:\n      route-type: global\n  defaultLoadBalancingPolicy:
          Multivalue\n  defaultTTL: 30 \n  globalZoneRef:\n    name: route53-global-dns-zone\n```\n\nThis
          global discovery route will discover routes in the provided list of cluster.
          Only the routes that match the route selector will be considered global.
          \nThe default load balancing policy and default TTL can be expressed in
          the `GlobalRouteDiscovery` CR. However with the following annotations, it's
          possible to configure route-specific values:\n\n* `global-load-balancer-operator.redhat-cop.io/load-balancing-policy`
          to set the load balancing policy\n* `global-load-balancer-operator.redhat-cop.io/ttl`
          to set the TTL\n\nThe globalZoneRef refers to the global zone to be used
          for the created `GlobalDNSRecords`.\n\nHealth checks will also be automatically
          discovered. If the pods behind the route expose a readiness check of httpGet
          kind, that configuration will be used to create the GlobalDNSRecord health
          check.\nWhen more than one container is present in the pod, by default the
          first container will be examined for health check. This behavior can be
          overridden with the this annotation on the route: `global-load-balancer-operator.redhat-cop.io/container-probe`
          where the value will container the name of the container with teh correct
          readiness probe.\n\nIf routes with the same namespace and name exists in
          multiple cluster, the following conditions must be met:\n\n* all host names
          must be the same\n* all load balancing policy must be the same\n* all TTLs
          must be the same\n* all discovered readiness checks must be the same\n\n##
          Examples\n\nThese examples are intended to help you setting up working configuration
          with each of the providers\n\n### Cluster Set up\n\nTwo approaches for cluster
          setup are provided\n\n1. [One cluster, three ingress-gateways.](https://github.com/redhat-cop/global-load-balancer-operator/docs/one-cluster-three-ingress-gateways.md)
          This approach is intended for development purposes and has the objective
          to keep resource consumption at the minimum.\n2. [Control cluster and three
          controlled clusters in different regions.](https://github.com/redhat-cop/global-load-balancer-operator/docs/three-clusters.md).
          This approach represents a more realistic set-up albeit it consumes more
          resources.\n\nYou can also set up the cluster on your own, at the end the
          following conditions must be met:\n\nThree namespace `cluster1` `cluster2`
          `cluster3` are created.\nthe following environment variables are initialized
          for each cluster:\n\n1. <cluster>_secret_name. Pointing to a secret in each
          of the cluster namespaces containing a valid kubeconfig fot that cluster\n2.
          <cluster>_service_name.  Pointing to the name of the loadbalancer service
          to be used for that cluster.\n3. <cluster>_service_namespace. Pointing to
          the namespace of the loadbalancer service to be used for that cluster.\n\nHere
          are examples for the supported provider:\n\n1. [Setting up external-dns
          as provider](https://github.com/redhat-cop/global-load-balancer-operator/docs/external-dns-provider.md)\n2.
          [Setting up route53 as a provider](https://github.com/redhat-cop/global-load-balancer-operator/docs/aws-route53-provider.md)\n"
        displayName: Global Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Networking
        - Cloud Provider
        - Global Load Balancing
        - GLB
        - GTM
        - route53
        - DNS
        links:
        - name: GigHub Repository
          url: https://github.com/redhat-cop/global-load-balancer-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/global-load-balancer-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/global-load-balancer-operator@sha256:50771c320c8b7faea144f765535e89979f9f81e61d34c8dd2e86139fa68e222e
        - quay.io/redhat-cop/global-load-balancer-operator@sha256:c0b6ac9b03571a74a56b28302d720e8aa4442233f7867d05ed365e022f7cb8f5
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.4.2
      entries:
      - name: global-load-balancer-operator.v1.4.2
        version: 1.4.2
      - name: global-load-balancer-operator.v1.4.1
        version: 1.4.1
      - name: global-load-balancer-operator.v1.4.0
        version: 1.4.0
      - name: global-load-balancer-operator.v1.3.0
        version: 1.3.0
      - name: global-load-balancer-operator.v1.2.0
        version: 1.2.0
      - name: global-load-balancer-operator.v1.1.0
        version: 1.1.0
      - name: global-load-balancer-operator.v1.0.7
        version: 1.0.7
      - name: global-load-balancer-operator.v1.0.6
        version: 1.0.6
      - name: global-load-balancer-operator.v1.0.5
        version: 1.0.5
      - name: global-load-balancer-operator.v1.0.4
        version: 1.0.4
      - name: global-load-balancer-operator.v1.0.3
        version: 1.0.3
      - name: global-load-balancer-operator.v1.0.2
        version: 1.0.2
      - name: global-load-balancer-operator.v1.0.1
        version: 1.0.1
      - name: global-load-balancer-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: global-load-balancer-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: cli-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cli-manager-operator.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "CliManager",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-cli-manager-operator"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed",
                  "operatorLogLevel": "Normal"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-11-24"
          description: "The CLI Manager is a comprehensive tool designed to simplify
            the management of \nOpenShift CLI plugins within the OpenShift environment.
            \nModeled after the popular krew plugin manager, it offers seamless integration,
            \neasy installation, and efficient handling of a wide array of plugins,
            \nenhancing your OpenShift command-line experience.\n"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-cli-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          repository: https://github.com/openshift/cli-manager-operator
          skipRange: '>=0.1.1 <0.2.0'
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: CLI Manager
            kind: CliManager
            name: climanagers.operator.openshift.io
            version: v1
          - displayName: CLI Plugin
            kind: Plugin
            name: plugins.config.openshift.io
            version: v1alpha1
        description: "The CLI Manager is a comprehensive tool designed to simplify
          the management of \nOpenShift CLI plugins within the OpenShift environment.
          \nModeled after the popular krew plugin manager, it offers seamless integration,
          \neasy installation, and efficient handling of a wide array of plugins,
          \nenhancing your OpenShift command-line experience.\n"
        displayName: CLI Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cli-manager-operator
        - cli-manager
        links:
        - name: Source Code
          url: https://github.com/openshift/cli-manager
        - name: Source Code
          url: https://github.com/openshift/cli-manager-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/cli-manager/cli-manager-operator-bundle@sha256:f84f5609ed0c329c810bb85d66f24e2be6b0ae421c9870048d6af6079f01abed
        - registry.redhat.io/cli-manager/cli-manager-rhel9-operator@sha256:e68b034798ebb1cfa7e17c055dbeec8c8aa46afa7d1291a7a2dbecbb691f71ba
        - registry.redhat.io/cli-manager/cli-manager-rhel9@sha256:4185a2d8f361b3bafbf677e35229c2b58245d3a52dae44d67b5990b62ceffb94
        version: 0.2.0
      entries:
      - name: cli-manager-operator.v0.2.0
        version: 0.2.0
      - name: cli-manager-operator.v0.1.1
        version: 0.1.1
      name: tech-preview
    defaultChannel: tech-preview
    packageName: cli-manager
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Odigos
      provider-url: https://odigos.io
    name: odigos-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odigos-operator.v1.8.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.odigos.io/v1alpha1",
                "kind": "Odigos",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "odigos-operator"
                  },
                  "name": "odigos-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Logging & Tracing
          containerImage: registry.connect.redhat.com/odigos/odigos-certified-operator-ubi9@sha256:3045bd830d1f614e04e7d0444bbee2aac6bf0f7c7eb5a1f4e418888d3a383d2b
          createdAt: "2025-10-23T21:01:56Z"
          description: Odigos enables automatic distributed tracing with OpenTelemetry
            and eBPF.
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: Odigos Enterprise subscription
            (for enterprise features)
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Odigos
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Odigos is the Schema for the odigos API
            displayName: Odigos
            kind: Odigos
            name: odigos.operator.odigos.io
            version: v1alpha1
        description: |-
          The Odigos Operator provides options for installing and configuring Odigos.

          Upon creation of an Odigos resource, the Odigos Operator installs the following Odigos components:

          - Instrumentor
          - Odiglet
          - Autoscaler
          - Scheduler
          - Frontend UI

          With Odigos installed, follow the Odigos docs at docs.odigos.io for instructions on instrumenting applications and configuring destinations.
        displayName: Odigos Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - OpenTelemetry
        - eBPF
        - tracing
        - observability
        - distributed tracing
        - otel
        - monitoring
        links:
        - name: Odigos
          url: https://odigos.io
        - name: Odigos Documentation
          url: https://docs.odigos.io
        - name: Odigos on Github
          url: https://github.com/odigos-io/odigos
        maintainers:
        - email: mike@odigos.io
          name: Mike Dame
        maturity: alpha
        minKubeVersion: 1.20.15
        provider:
          name: Odigos
          url: https://odigos.io
        relatedImages:
        - registry.connect.redhat.com/odigos/odigos-enterprise-instrumentor-ubi9@sha256:825989f7c215ead4ad1ef4a08a4f08c2ac92bcb9e6119498fcd197e239615cf6
        - registry.connect.redhat.com/odigos/odigos-enterprise-odiglet-ubi9@sha256:7b4405c8b46c19ec2120863d68684aae036623e4bc118d0b76b28d7ed547b7a9
        - registry.connect.redhat.com/odigos/odigos-odiglet-ubi9@sha256:707a17cf290f1f4959525b51b4c3f3bec5ab84ebbc7ab3744f99698866c85587
        - registry.connect.redhat.com/odigos/odigos-instrumentor-ubi9@sha256:cc72a55962322f911d2c4fa5bd9a0cb976e600883c43846d5550a10d60d93a83
        - registry.connect.redhat.com/odigos/operator-bundle@sha256:4c478ef3756f061bcb682bcbb39aa1abcad768ed50230629c1a1ccea77ab3ff1
        - registry.connect.redhat.com/odigos/odigos-scheduler-ubi9@sha256:df9474ea9f0e789ce94fb212c710163959b6d02f8cc90ecdf88339d645703418
        - registry.connect.redhat.com/odigos/odigos-ui-ubi9@sha256:d825f32fd723ba969a3dc101731e006e7323d9bd9a85d9ceeaec5027f4dadcc0
        - registry.connect.redhat.com/odigos/odigos-autoscaler-ubi9@sha256:1ee37adda9ee8bc52491ffd1c60ae0e1d99ba232fcf7af81fdeef79646069bab
        - registry.connect.redhat.com/odigos/odigos-certified-operator-ubi9@sha256:3045bd830d1f614e04e7d0444bbee2aac6bf0f7c7eb5a1f4e418888d3a383d2b
        - registry.connect.redhat.com/odigos/odigos-collector-ubi9@sha256:d8660623961e54d90150df87a89459fb164724f16a3b151c0cd7bbbeaa773aae
        version: 1.8.4
      entries:
      - name: odigos-operator.v1.8.4
        version: 1.8.4
      name: alpha
    defaultChannel: alpha
    packageName: odigos-operator
    provider:
      name: Odigos
      url: https://odigos.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NdmSpc project
      provider-url: ""
    name: ndmspc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ndmspc-operator.v0.20250209.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.ndmspc.io/v1alpha1",
                "kind": "NdmSpcConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ndmspc-operator",
                    "app.kubernetes.io/instance": "ndmspcconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ndmspcconfig",
                    "app.kubernetes.io/part-of": "ndmspc-operator"
                  },
                  "name": "ndmspc-sample"
                },
                "spec": {
                  "executor": {
                    "image": "registry.gitlab.com/ndmspc/api:v0.20240215.2",
                    "name": "executor"
                  },
                  "executors": 1,
                  "ingressclasstype": "nginx",
                  "ingressenabled": true,
                  "ingresshostdomain": "127.0.0.1.sslip.io",
                  "ingressnostname": "ndmspc",
                  "ingressssltraefik": false,
                  "naf": {
                    "image": "registry.gitlab.com/ndmspc/naf:v0.20250129.0",
                    "name": "naf"
                  },
                  "ndmvr": {
                    "image": "registry.gitlab.com/ndmspc/ndmvr/shared:v0.20230320.0",
                    "name": "ndmvr"
                  },
                  "salsa": {
                    "image": "registry.gitlab.com/ndmspc/user/ndmspc:v0.20240412.0"
                  },
                  "storage": {
                    "image": "registry.gitlab.com/ndmspc/storage-server:v0.20250205.0",
                    "mongodb": {
                      "image": "docker.io/library/mongo:latest",
                      "password": "admin",
                      "port": 27017,
                      "username": "admin"
                    },
                    "name": "storage",
                    "port": 8080
                  },
                  "webapp": {
                    "image": "registry.gitlab.com/ndmspc/react-ndmspc:v0.20240412.0",
                    "name": ""
                  },
                  "webappcontainerport": 8080,
                  "webapps": 1,
                  "worker": {
                    "resources": {
                      "limits": {
                        "cpu": "200m",
                        "memory": "2Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "1Gi"
                      }
                    }
                  },
                  "workers": 2,
                  "workerslots": 1,
                  "zmq2ws": {
                    "image": "registry.gitlab.com/ndmspc/zmq2ws:v1.20231012.0",
                    "name": "zmq2ws"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: registry.gitlab.com/ndmspc/ndmspc-operator:0.20250209.0
          createdAt: "2025-02-09T12:49:06Z"
          description: The NdmSpc operator automates the deployment and management
            of Ndmspc suite on Kubernetes cluster.
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://gitlab.com/ndmspc/ndmspc-operator
          support: NDMSPC Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NdmSpc configuration
            displayName: NdmSpc Config
            kind: NdmSpcConfig
            name: ndmspcconfigs.apps.ndmspc.io
            version: v1alpha1
        description: "The NdmSpc operator automates the deployment and management
          of Ndmspc suite on Kubernetes cluster. This operator allows user to deploy
          SALSA cluster with ZMQ2WS and job executor service and specify custom webapp
          page.\n\n### Capabilities\n\n- SALSA cluster\n- ZMQ2WS api service\n- Job
          executor service \n- Custom WebApp page\n"
        displayName: NdmSpc operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ndmspc
        links:
        - name: Ndmspc Operator
          url: https://ndmspc.gitlab.io/docs
        maintainers:
        - email: ndmspc@gmail.com
          name: NdmSpc Support
        maturity: alpha
        provider:
          name: NdmSpc project
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/ndmspc-operator@sha256:b1f47ce0cd6930d902dc3538a1a87140dbe9257dd50773a518fc2350185f90cc
        - registry.gitlab.com/ndmspc/ndmspc-operator:0.20250209.0
        version: 0.20250209.0
      entries:
      - name: ndmspc-operator.v0.20250209.0
        version: 0.20250209.0
      - name: ndmspc-operator.v0.20250131.0
        version: 0.20250131.0
      - name: ndmspc-operator.v0.20240412.0
        version: 0.20240412.0
      - name: ndmspc-operator.v0.11.6
        version: 0.11.6
      - name: ndmspc-operator.v0.11.4
        version: 0.11.4
      - name: ndmspc-operator.v0.11.3
        version: 0.11.3
      - name: ndmspc-operator.v0.11.2
        version: 0.11.2
      - name: ndmspc-operator.v0.11.1
        version: 0.11.1
      - name: ndmspc-operator.v0.10.2
        version: 0.10.2
      - name: ndmspc-operator.v0.10.1
        version: 0.10.1
      - name: ndmspc-operator.v0.10.0
        version: 0.10.0
      - name: ndmspc-operator.v0.9.0
        version: 0.9.0
      - name: ndmspc-operator.v0.7.4
        version: 0.7.4
      - name: ndmspc-operator.v0.7.1
        version: 0.7.1
      - name: ndmspc-operator.v0.6.0
        version: 0.6.0
      - name: ndmspc-operator.v0.5.0
        version: 0.5.0
      name: alpha
    defaultChannel: alpha
    packageName: ndmspc-operator
    provider:
      name: NdmSpc project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: K4all
      provider-url: https://github.com/gpillon/kubevirt-wol
    name: kubevirt-wol
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubevirt-wol.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kubevirt-wol"
                  },
                  "name": "default"
                },
                "spec": {
                  "agent": {
                    "imagePullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "All",
                  "namespaceSelectors": [
                    "default"
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "explicit-example"
                },
                "spec": {
                  "agent": {
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 600,
                  "discoveryMode": "Explicit",
                  "explicitMappings": [
                    {
                      "macAddress": "52:54:00:12:34:56",
                      "namespace": "default",
                      "vmName": "my-vm-1"
                    },
                    {
                      "macAddress": "52:54:00:ab:cd:ef",
                      "namespace": "production",
                      "vmName": "my-vm-2"
                    }
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "labelselector-example"
                },
                "spec": {
                  "agent": {
                    "nodeSelector": {
                      "node-role.kubernetes.io/worker": ""
                    },
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "LabelSelector",
                  "namespaceSelectors": [
                    "production"
                  ],
                  "vmSelector": {
                    "matchLabels": {
                      "wol.pillon.org/enabled": "true"
                    }
                  },
                  "wolPorts": [
                    9,
                    7
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: OpenShift Optional
          containerImage: quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
          createdAt: "2025-10-27T02:37:07Z"
          description: |
            A Kubernetes Operator that enables Wake-on-LAN functionality for KubeVirt VirtualMachines. This operator listens for WOL magic packets on the network and automatically starts the corresponding VirtualMachines in your Kubernetes cluster.
          operatorframework.io/suggested-namespace: kubevirt-wol-system
          operatorframework.io/suggested-namespace-template: |
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "kubevirt-wol-system",
                "annotations": {
                  "openshift.io/node-selector": ""
                },
                "labels": {
                  "openshift.io/cluster-monitoring": "true"
                }
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["servicemonitors.monitoring.coreos.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/gpillon/kubevirt-wol
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WolConfig is the Schema for the Wake-on-LAN configurations
              API
            displayName: Wol Config
            kind: WolConfig
            name: wolconfigs.wol.pillon.org
            version: v1beta1
        description: "A Kubernetes Operator that enables Wake-on-LAN functionality
          for KubeVirt VirtualMachines.\n\n**Installation**: This operator must be
          installed in the `kubevirt-wol-system` namespace.\n\n**Prerequisites**:
          \n- **Required**: KubeVirt must be installed in your cluster.\n- **Optional**:
          Prometheus Operator (for ServiceMonitor-based metrics collection). The operator
          works without it, but metrics will not be automatically scraped.\n\n**Features**:\n-
          Automatically starts VirtualMachines when WOL magic packets are received\n-
          Supports multiple WOL ports (default: UDP 9)\n- Three discovery modes: All
          VMs, Label Selector, or Explicit MAC mappings\n- Dynamic agent deployment
          per WolConfig\n- Automatic cleanup via OwnerReference\n- Prometheus metrics
          integration (ServiceMonitor optional)\n\n**Post-Installation (OpenShift)**:
          To enable metrics collection in OpenShift cluster monitoring, run:\n```\noc
          label namespace <operator-namespace> openshift.io/cluster-monitoring=true\n```\nReplace
          `<operator-namespace>` with the namespace where the operator is installed
          (e.g., `kubevirt-wol-system`).\n\nAfter labeling the namespace, the operator
          metrics will appear in OpenShift Console → Observe → Targets.\n\n**Note
          on Metrics**: If Prometheus Operator is not installed, the ServiceMonitor
          resource will not be reconciled, but the operator will continue to function
          normally. Metrics are still available at the `/metrics` endpoint.\n\n**Usage**:
          After installation, create a WolConfig resource to configure Wake-on-LAN
          for your KubeVirt VirtualMachines.\n\n**Documentation**: https://github.com/gpillon/kubevirt-wol\n"
        displayName: Kubevirt Wake on Lan
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubevirt
        - wol
        - wake on lan
        - wake
        links:
        - name: Kubevirt Wol
          url: https://github.com/gpillon/kubevirt-wol
        maintainers:
        - email: gpillon@redhat.com
          name: Giorgio Pillon
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: K4all
          url: https://github.com/gpillon/kubevirt-wol
        relatedImages:
        - quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
        - quay.io/community-operator-pipeline-prod/kubevirt-wol:0.0.2
        version: 0.0.2
      entries:
      - name: kubevirt-wol.v0.0.2
        version: 0.0.2
      name: candidate-v0
    - currentCSV: kubevirt-wol.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kubevirt-wol"
                  },
                  "name": "default"
                },
                "spec": {
                  "agent": {
                    "imagePullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "All",
                  "namespaceSelectors": [
                    "default"
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "explicit-example"
                },
                "spec": {
                  "agent": {
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 600,
                  "discoveryMode": "Explicit",
                  "explicitMappings": [
                    {
                      "macAddress": "52:54:00:12:34:56",
                      "namespace": "default",
                      "vmName": "my-vm-1"
                    },
                    {
                      "macAddress": "52:54:00:ab:cd:ef",
                      "namespace": "production",
                      "vmName": "my-vm-2"
                    }
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "labelselector-example"
                },
                "spec": {
                  "agent": {
                    "nodeSelector": {
                      "node-role.kubernetes.io/worker": ""
                    },
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "LabelSelector",
                  "namespaceSelectors": [
                    "production"
                  ],
                  "vmSelector": {
                    "matchLabels": {
                      "wol.pillon.org/enabled": "true"
                    }
                  },
                  "wolPorts": [
                    9,
                    7
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: OpenShift Optional
          containerImage: quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
          createdAt: "2025-10-27T02:37:07Z"
          description: |
            A Kubernetes Operator that enables Wake-on-LAN functionality for KubeVirt VirtualMachines. This operator listens for WOL magic packets on the network and automatically starts the corresponding VirtualMachines in your Kubernetes cluster.
          operatorframework.io/suggested-namespace: kubevirt-wol-system
          operatorframework.io/suggested-namespace-template: |
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "kubevirt-wol-system",
                "annotations": {
                  "openshift.io/node-selector": ""
                },
                "labels": {
                  "openshift.io/cluster-monitoring": "true"
                }
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["servicemonitors.monitoring.coreos.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/gpillon/kubevirt-wol
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WolConfig is the Schema for the Wake-on-LAN configurations
              API
            displayName: Wol Config
            kind: WolConfig
            name: wolconfigs.wol.pillon.org
            version: v1beta1
        description: "A Kubernetes Operator that enables Wake-on-LAN functionality
          for KubeVirt VirtualMachines.\n\n**Installation**: This operator must be
          installed in the `kubevirt-wol-system` namespace.\n\n**Prerequisites**:
          \n- **Required**: KubeVirt must be installed in your cluster.\n- **Optional**:
          Prometheus Operator (for ServiceMonitor-based metrics collection). The operator
          works without it, but metrics will not be automatically scraped.\n\n**Features**:\n-
          Automatically starts VirtualMachines when WOL magic packets are received\n-
          Supports multiple WOL ports (default: UDP 9)\n- Three discovery modes: All
          VMs, Label Selector, or Explicit MAC mappings\n- Dynamic agent deployment
          per WolConfig\n- Automatic cleanup via OwnerReference\n- Prometheus metrics
          integration (ServiceMonitor optional)\n\n**Post-Installation (OpenShift)**:
          To enable metrics collection in OpenShift cluster monitoring, run:\n```\noc
          label namespace <operator-namespace> openshift.io/cluster-monitoring=true\n```\nReplace
          `<operator-namespace>` with the namespace where the operator is installed
          (e.g., `kubevirt-wol-system`).\n\nAfter labeling the namespace, the operator
          metrics will appear in OpenShift Console → Observe → Targets.\n\n**Note
          on Metrics**: If Prometheus Operator is not installed, the ServiceMonitor
          resource will not be reconciled, but the operator will continue to function
          normally. Metrics are still available at the `/metrics` endpoint.\n\n**Usage**:
          After installation, create a WolConfig resource to configure Wake-on-LAN
          for your KubeVirt VirtualMachines.\n\n**Documentation**: https://github.com/gpillon/kubevirt-wol\n"
        displayName: Kubevirt Wake on Lan
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubevirt
        - wol
        - wake on lan
        - wake
        links:
        - name: Kubevirt Wol
          url: https://github.com/gpillon/kubevirt-wol
        maintainers:
        - email: gpillon@redhat.com
          name: Giorgio Pillon
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: K4all
          url: https://github.com/gpillon/kubevirt-wol
        relatedImages:
        - quay.io/community-operator-pipeline-prod/kubevirt-wol:0.0.2
        - quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
        version: 0.0.2
      entries:
      - name: kubevirt-wol.v0.0.2
        version: 0.0.2
      name: fast-v0
    - currentCSV: kubevirt-wol.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kubevirt-wol"
                  },
                  "name": "default"
                },
                "spec": {
                  "agent": {
                    "imagePullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "All",
                  "namespaceSelectors": [
                    "default"
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "explicit-example"
                },
                "spec": {
                  "agent": {
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 600,
                  "discoveryMode": "Explicit",
                  "explicitMappings": [
                    {
                      "macAddress": "52:54:00:12:34:56",
                      "namespace": "default",
                      "vmName": "my-vm-1"
                    },
                    {
                      "macAddress": "52:54:00:ab:cd:ef",
                      "namespace": "production",
                      "vmName": "my-vm-2"
                    }
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "labelselector-example"
                },
                "spec": {
                  "agent": {
                    "nodeSelector": {
                      "node-role.kubernetes.io/worker": ""
                    },
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "LabelSelector",
                  "namespaceSelectors": [
                    "production"
                  ],
                  "vmSelector": {
                    "matchLabels": {
                      "wol.pillon.org/enabled": "true"
                    }
                  },
                  "wolPorts": [
                    9,
                    7
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: OpenShift Optional
          containerImage: quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
          createdAt: "2025-10-27T02:37:07Z"
          description: |
            A Kubernetes Operator that enables Wake-on-LAN functionality for KubeVirt VirtualMachines. This operator listens for WOL magic packets on the network and automatically starts the corresponding VirtualMachines in your Kubernetes cluster.
          operatorframework.io/suggested-namespace: kubevirt-wol-system
          operatorframework.io/suggested-namespace-template: |
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "kubevirt-wol-system",
                "annotations": {
                  "openshift.io/node-selector": ""
                },
                "labels": {
                  "openshift.io/cluster-monitoring": "true"
                }
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["servicemonitors.monitoring.coreos.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/gpillon/kubevirt-wol
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WolConfig is the Schema for the Wake-on-LAN configurations
              API
            displayName: Wol Config
            kind: WolConfig
            name: wolconfigs.wol.pillon.org
            version: v1beta1
        description: "A Kubernetes Operator that enables Wake-on-LAN functionality
          for KubeVirt VirtualMachines.\n\n**Installation**: This operator must be
          installed in the `kubevirt-wol-system` namespace.\n\n**Prerequisites**:
          \n- **Required**: KubeVirt must be installed in your cluster.\n- **Optional**:
          Prometheus Operator (for ServiceMonitor-based metrics collection). The operator
          works without it, but metrics will not be automatically scraped.\n\n**Features**:\n-
          Automatically starts VirtualMachines when WOL magic packets are received\n-
          Supports multiple WOL ports (default: UDP 9)\n- Three discovery modes: All
          VMs, Label Selector, or Explicit MAC mappings\n- Dynamic agent deployment
          per WolConfig\n- Automatic cleanup via OwnerReference\n- Prometheus metrics
          integration (ServiceMonitor optional)\n\n**Post-Installation (OpenShift)**:
          To enable metrics collection in OpenShift cluster monitoring, run:\n```\noc
          label namespace <operator-namespace> openshift.io/cluster-monitoring=true\n```\nReplace
          `<operator-namespace>` with the namespace where the operator is installed
          (e.g., `kubevirt-wol-system`).\n\nAfter labeling the namespace, the operator
          metrics will appear in OpenShift Console → Observe → Targets.\n\n**Note
          on Metrics**: If Prometheus Operator is not installed, the ServiceMonitor
          resource will not be reconciled, but the operator will continue to function
          normally. Metrics are still available at the `/metrics` endpoint.\n\n**Usage**:
          After installation, create a WolConfig resource to configure Wake-on-LAN
          for your KubeVirt VirtualMachines.\n\n**Documentation**: https://github.com/gpillon/kubevirt-wol\n"
        displayName: Kubevirt Wake on Lan
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubevirt
        - wol
        - wake on lan
        - wake
        links:
        - name: Kubevirt Wol
          url: https://github.com/gpillon/kubevirt-wol
        maintainers:
        - email: gpillon@redhat.com
          name: Giorgio Pillon
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: K4all
          url: https://github.com/gpillon/kubevirt-wol
        relatedImages:
        - quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
        - quay.io/community-operator-pipeline-prod/kubevirt-wol:0.0.2
        version: 0.0.2
      entries:
      - name: kubevirt-wol.v0.0.2
        version: 0.0.2
      name: stable-v0
    defaultChannel: stable-v0
    packageName: kubevirt-wol
    provider:
      name: K4all
      url: https://github.com/gpillon/kubevirt-wol
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: self-node-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: self-node-remediation.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediation",
                "metadata": {
                  "name": "selfnoderemediation-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationConfig",
                "metadata": {
                  "name": "self-node-remediation-config",
                  "namespace": "self-node-remediation"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationTemplate",
                "metadata": {
                  "name": "selfnoderemediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: registry.redhat.io/workload-availability/self-node-remediation-rhel9-operator@sha256:f13f5b22014e8819be39f45e476aef4a67e3645f9d20ad67b10fae9325ae473a
          createdAt: "2025-11-13 13:22:41"
          description: Self Node Remediation Operator for remediate itself in case
            of a failure.
          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: "true"
          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.skipRange: '>=0.10.0 <0.11.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/self-node-remediation
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SelfNodeRemediationConfig is the Schema for the selfnoderemediationconfigs
              API in which a user can configure the self node remediation agents
            displayName: Self Node Remediation Config
            kind: SelfNodeRemediationConfig
            name: selfnoderemediationconfigs.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediation is the Schema for the selfnoderemediations
              API
            displayName: Self Node Remediation
            kind: SelfNodeRemediation
            name: selfnoderemediations.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediationTemplate is the Schema for the selfnoderemediationtemplates
              API
            displayName: Self Node Remediation Template
            kind: SelfNodeRemediationTemplate
            name: selfnoderemediationtemplates.self-node-remediation.medik8s.io
            version: v1alpha1
        description: This self node remediation operator is using an alternate mechanism
          for a node in a cluster to detect its health status and take actions to
          remediate itself in case of a failure. While not all remediation events
          can result in the node returning to a healthy state, the operator does allow
          surviving parts of the cluster to assume the node has reached a safe state
          so that it’s workloads can be automatically recovered. A prerequisite for
          the Self Node Remediation operator is a functioning health detection system
          that implements the external remediation API, such as Node Health Check
          Operator or Machine Health Check Controller (in OCP or Cluster-API based
          clusters). Once a node/machine is unhealthy, the detection system will create
          the SelfNodeRemediation CR, which triggers the Self Node Remediation Operator.
          For this the configuration of the health detection system needs to refer
          to a SelfNodeRemediationTemplate CR. Such a template is created by default
          in the operator's namespace, for usage in other namespaces it needs to be
          created manually. The Node Health Check Operator is configured to use Self
          Node Remediation by default.
        displayName: Self Node Remediation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - fencing
        - remediation
        - auto-healing
        - recovery
        - high-availability
        - baremetal
        - SNR
        links:
        - name: Self Node Remediation
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance/about-remediation-fencing-maintenance
        - name: Source Code
          url: https://github.com/medik8s/self-node-remediation
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/self-node-remediation-rhel9-operator@sha256:f13f5b22014e8819be39f45e476aef4a67e3645f9d20ad67b10fae9325ae473a
        - registry.redhat.io/workload-availability/self-node-remediation-operator-bundle@sha256:3bf8ef27f9a7f50c7e9fa066cabe8927efc8a3a890783bd9b60156b4ef417a77
        version: 0.11.0
      entries:
      - name: self-node-remediation.v0.11.0
        version: 0.11.0
      - name: self-node-remediation.v0.10.2
        version: 0.10.2
      - name: self-node-remediation.v0.10.1
        version: 0.10.1
      - name: self-node-remediation.v0.10.0
        version: 0.10.0
      name: stable
    defaultChannel: stable
    packageName: self-node-remediation
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: openshift-external-secrets-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: external-secrets-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secret-cluster"
                },
                "spec": {
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "gcp-secret"
                        },
                        "secretKey": "key"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    },
                    "target": {
                      "creationPolicy": "Owner",
                      "name": "gcp-secret-k8s"
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "app.kubernetes.io/managed-by": "external-secrets-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-cluster-secretstore"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds",
                            "namespace": "external-secrets"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-secret",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "gcp-secret",
                        "property": "Key"
                      },
                      "secretKey": "Key"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secretstore"
                  },
                  "target": {
                    "creationPolicy": "Owner",
                    "name": "k8s-secret"
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "SecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/disable-maintenance-checks": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secretstore",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "PushSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "pushsecret-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "config": {
                    "gcp": {
                      "projectID": "openshift-sample-project",
                      "secret": {
                        "name": "test",
                        "replicationPolicy": "automatic",
                        "version": "latest"
                      }
                    }
                  },
                  "secretStoreRefs": [
                    {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    }
                  ],
                  "selector": {
                    "secret": {
                      "name": "gcp-secret-k8s"
                    }
                  }
                }
              },
              {
                "apiVersion": "generators.external-secrets.io/v1alpha1",
                "kind": "Password",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "password-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "excludeLowercase": false,
                  "excludeNumbers": false,
                  "excludeUppercase": false,
                  "includeSymbols": true,
                  "length": 20
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsConfig",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsManager",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
          createdAt: 2025-11-03T08:48:11
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.0
          operator.openshift.io/uninstall-message: The External Secrets Operator for
            Red Hat OpenShift will be removed from external-secrets-operator namespace.
            If your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/external_secrets_operator/external-secrets-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: external-secrets-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/external-secrets-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ACRAccessToken returns an Azure Container Registry token that can be used for pushing/pulling images.
              Note: by default it will return an ACR Refresh Token with full access (depending on the identity).
              This can be scoped down to the repository level using .spec.scope. In case scope is defined it will return an ACR Access Token.

              See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
            displayName: ACRAccessToken
            kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterExternalSecret is the Schema for the clusterexternalsecrets
              API.
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1
          - description: ClusterGenerator represents a cluster-wide generator which
              can be referenced as part of `generatorRef` fields.
            displayName: ClusterGenerator
            kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterPushSecret is the Schema for the clusterpushsecrets
              API.
            displayName: ClusterPushSecret
            kind: ClusterPushSecret
            name: clusterpushsecrets.external-secrets.io
            version: v1alpha1
          - description: ClusterSecretStore represents a secure external location
              for storing secrets, which can be referenced as part of `storeRef` fields.
            displayName: ClusterSecretStore
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1
          - description: |-
              ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token. The authorization
              token is valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded and
              used in a Docker login command to authenticate to a registry. For more information, see Registry authentication
              (https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth)
              in the Amazon Elastic Container Registry User Guide.
            displayName: ECRAuthorizationToken
            kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: ExternalSecret is the Schema for the external-secrets API.
            displayName: ExternalSecret
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1
          - description: |-
              ExternalSecretsConfig describes configuration and information about the managed external-secrets deployment.
              The name must be `cluster` as ExternalSecretsConfig is a singleton, allowing only one instance per cluster.

              When an ExternalSecretsConfig is created, the controller installs the external-secrets and keeps it in the desired state.
            displayName: ExternalSecretsConfig
            kind: ExternalSecretsConfig
            name: externalsecretsconfigs.operator.openshift.io
            version: v1alpha1
          - description: |-
              ExternalSecretsManager describes configuration and information about the deployments managed by
              the operator. The name must be `cluster` to make ExternalSecretsManager a singleton that is, to
              allow only one instance of ExternalSecretsManager per cluster.

              ExternalSecretsManager is mainly for configuring the global options and enabling the features, which
              serves as a common/centralized config for managing multiple controllers of the operator. The object
              will be created during the operator installation.
            displayName: ExternalSecretsManager
            kind: ExternalSecretsManager
            name: externalsecretsmanagers.operator.openshift.io
            version: v1alpha1
          - description: GCRAccessToken generates a GCP access token that can be used
              to authenticate with GCR.
            displayName: GCRAccessToken
            kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: GeneratorState is the Schema for the generatorstates API.
            displayName: GeneratorState
            kind: GeneratorState
            name: generatorstates.generators.external-secrets.io
            version: v1alpha1
          - description: GithubAccessToken generates a ghs_ access token
            displayName: GithubAccessToken
            kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Grafana is the Schema for the grafanas API.
            displayName: Grafana
            kind: Grafana
            name: grafanas.generators.external-secrets.io
            version: v1alpha1
          - description: MFA generates a new TOTP token that is compliant with RFC
              6238.
            displayName: MFA
            kind: MFA
            name: mfas.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Password generates a random password based on the configuration parameters in spec. You can specify the length,
              character set and other attributes.
            displayName: Password
            kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - description: PushSecret is the Schema for the pushsecrets API.
            displayName: PushSecret
            kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: QuayAccessToken generates a Quay OAuth token for pulling/pushing
              images.
            displayName: QuayAccessToken
            kind: QuayAccessToken
            name: quayaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: SecretStore represents a secure external location for storing
              secrets, which can be referenced as part of `storeRef` fields.
            displayName: SecretStore
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1
          - description: SSHKey generates SSH key pairs.
            displayName: SSHKey
            kind: SSHKey
            name: sshkeys.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              STSSessionToken uses the GetSessionToken API to retrieve an authorization token. The authorization token is
              valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded.
              For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
            displayName: STSSessionToken
            kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - description: UUID generates a version 1 UUID (for example, 6ba7b810-9dad-11d1-80b4-00c04fd430c8).
            displayName: UUID
            kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - description: VaultDynamicSecret is the Schema for the vaultdynamicsecrets
              API.
            displayName: VaultDynamicSecret
            kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Webhook connects to a third party API server to handle the secrets generation configuration parameters in spec. You
              can specify the server, the token, and additional body parameters. See documentation for the full API specification
              for requests and responses.
            displayName: Webhook
            kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: External Secrets Operator for Red Hat OpenShift deploys and manages
          `external-secrets` application in OpenShift clusters. `external-secrets`
          provides an uniform interface to fetch secrets stored in external providers
          like  AWS Secrets Manager, HashiCorp Vault, Google Secrets Manager, Azure
          Key Vault, IBM Cloud Secrets Manager to name a few, stores them as secrets
          in OpenShift. It provides APIs to define authentication and the details
          of the secret to fetch.
        displayName: External Secrets Operator for Red Hat OpenShift
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - secrets
        - external-secrets
        - external-secrets-operator
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/security_and_compliance/external-secrets-operator-for-red-hat-openshift
        - name: External Secrets Operator
          url: https://github.com/openshift/external-secrets-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/external-secrets-operator/bitwarden-sdk-server-rhel9@sha256:0e00fb4b8fc3815e55e9c593766cfa85a34671b8401eabc488b48b66b5d1b374
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-bundle@sha256:8c59a65dda3545cf009585f154e62bd19dce02c95214b76ae164f51999ad760c
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
        - registry.redhat.io/external-secrets-operator/external-secrets-rhel9@sha256:a594323b4d3ad6a739246f3767231ad2d57ca94bb1d035610d52a525b420b452
        version: 1.0.0
      entries:
      - name: external-secrets-operator.v1.0.0
        version: 1.0.0
      name: stable-v1
    - currentCSV: external-secrets-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secret-cluster"
                },
                "spec": {
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "gcp-secret"
                        },
                        "secretKey": "key"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    },
                    "target": {
                      "creationPolicy": "Owner",
                      "name": "gcp-secret-k8s"
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "app.kubernetes.io/managed-by": "external-secrets-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-cluster-secretstore"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds",
                            "namespace": "external-secrets"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-secret",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "gcp-secret",
                        "property": "Key"
                      },
                      "secretKey": "Key"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secretstore"
                  },
                  "target": {
                    "creationPolicy": "Owner",
                    "name": "k8s-secret"
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "SecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/disable-maintenance-checks": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secretstore",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "PushSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "pushsecret-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "config": {
                    "gcp": {
                      "projectID": "openshift-sample-project",
                      "secret": {
                        "name": "test",
                        "replicationPolicy": "automatic",
                        "version": "latest"
                      }
                    }
                  },
                  "secretStoreRefs": [
                    {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    }
                  ],
                  "selector": {
                    "secret": {
                      "name": "gcp-secret-k8s"
                    }
                  }
                }
              },
              {
                "apiVersion": "generators.external-secrets.io/v1alpha1",
                "kind": "Password",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "password-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "excludeLowercase": false,
                  "excludeNumbers": false,
                  "excludeUppercase": false,
                  "includeSymbols": true,
                  "length": 20
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsConfig",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsManager",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
          createdAt: 2025-11-03T08:48:11
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.0
          operator.openshift.io/uninstall-message: The External Secrets Operator for
            Red Hat OpenShift will be removed from external-secrets-operator namespace.
            If your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/external_secrets_operator/external-secrets-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: external-secrets-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/external-secrets-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ACRAccessToken returns an Azure Container Registry token that can be used for pushing/pulling images.
              Note: by default it will return an ACR Refresh Token with full access (depending on the identity).
              This can be scoped down to the repository level using .spec.scope. In case scope is defined it will return an ACR Access Token.

              See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
            displayName: ACRAccessToken
            kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterExternalSecret is the Schema for the clusterexternalsecrets
              API.
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1
          - description: ClusterGenerator represents a cluster-wide generator which
              can be referenced as part of `generatorRef` fields.
            displayName: ClusterGenerator
            kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterPushSecret is the Schema for the clusterpushsecrets
              API.
            displayName: ClusterPushSecret
            kind: ClusterPushSecret
            name: clusterpushsecrets.external-secrets.io
            version: v1alpha1
          - description: ClusterSecretStore represents a secure external location
              for storing secrets, which can be referenced as part of `storeRef` fields.
            displayName: ClusterSecretStore
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1
          - description: |-
              ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token. The authorization
              token is valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded and
              used in a Docker login command to authenticate to a registry. For more information, see Registry authentication
              (https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth)
              in the Amazon Elastic Container Registry User Guide.
            displayName: ECRAuthorizationToken
            kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: ExternalSecret is the Schema for the external-secrets API.
            displayName: ExternalSecret
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1
          - description: |-
              ExternalSecretsConfig describes configuration and information about the managed external-secrets deployment.
              The name must be `cluster` as ExternalSecretsConfig is a singleton, allowing only one instance per cluster.

              When an ExternalSecretsConfig is created, the controller installs the external-secrets and keeps it in the desired state.
            displayName: ExternalSecretsConfig
            kind: ExternalSecretsConfig
            name: externalsecretsconfigs.operator.openshift.io
            version: v1alpha1
          - description: |-
              ExternalSecretsManager describes configuration and information about the deployments managed by
              the operator. The name must be `cluster` to make ExternalSecretsManager a singleton that is, to
              allow only one instance of ExternalSecretsManager per cluster.

              ExternalSecretsManager is mainly for configuring the global options and enabling the features, which
              serves as a common/centralized config for managing multiple controllers of the operator. The object
              will be created during the operator installation.
            displayName: ExternalSecretsManager
            kind: ExternalSecretsManager
            name: externalsecretsmanagers.operator.openshift.io
            version: v1alpha1
          - description: GCRAccessToken generates a GCP access token that can be used
              to authenticate with GCR.
            displayName: GCRAccessToken
            kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: GeneratorState is the Schema for the generatorstates API.
            displayName: GeneratorState
            kind: GeneratorState
            name: generatorstates.generators.external-secrets.io
            version: v1alpha1
          - description: GithubAccessToken generates a ghs_ access token
            displayName: GithubAccessToken
            kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Grafana is the Schema for the grafanas API.
            displayName: Grafana
            kind: Grafana
            name: grafanas.generators.external-secrets.io
            version: v1alpha1
          - description: MFA generates a new TOTP token that is compliant with RFC
              6238.
            displayName: MFA
            kind: MFA
            name: mfas.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Password generates a random password based on the configuration parameters in spec. You can specify the length,
              character set and other attributes.
            displayName: Password
            kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - description: PushSecret is the Schema for the pushsecrets API.
            displayName: PushSecret
            kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: QuayAccessToken generates a Quay OAuth token for pulling/pushing
              images.
            displayName: QuayAccessToken
            kind: QuayAccessToken
            name: quayaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: SecretStore represents a secure external location for storing
              secrets, which can be referenced as part of `storeRef` fields.
            displayName: SecretStore
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1
          - description: SSHKey generates SSH key pairs.
            displayName: SSHKey
            kind: SSHKey
            name: sshkeys.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              STSSessionToken uses the GetSessionToken API to retrieve an authorization token. The authorization token is
              valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded.
              For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
            displayName: STSSessionToken
            kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - description: UUID generates a version 1 UUID (for example, 6ba7b810-9dad-11d1-80b4-00c04fd430c8).
            displayName: UUID
            kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - description: VaultDynamicSecret is the Schema for the vaultdynamicsecrets
              API.
            displayName: VaultDynamicSecret
            kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Webhook connects to a third party API server to handle the secrets generation configuration parameters in spec. You
              can specify the server, the token, and additional body parameters. See documentation for the full API specification
              for requests and responses.
            displayName: Webhook
            kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: External Secrets Operator for Red Hat OpenShift deploys and manages
          `external-secrets` application in OpenShift clusters. `external-secrets`
          provides an uniform interface to fetch secrets stored in external providers
          like  AWS Secrets Manager, HashiCorp Vault, Google Secrets Manager, Azure
          Key Vault, IBM Cloud Secrets Manager to name a few, stores them as secrets
          in OpenShift. It provides APIs to define authentication and the details
          of the secret to fetch.
        displayName: External Secrets Operator for Red Hat OpenShift
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - secrets
        - external-secrets
        - external-secrets-operator
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/security_and_compliance/external-secrets-operator-for-red-hat-openshift
        - name: External Secrets Operator
          url: https://github.com/openshift/external-secrets-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/external-secrets-operator/bitwarden-sdk-server-rhel9@sha256:0e00fb4b8fc3815e55e9c593766cfa85a34671b8401eabc488b48b66b5d1b374
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-bundle@sha256:8c59a65dda3545cf009585f154e62bd19dce02c95214b76ae164f51999ad760c
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
        - registry.redhat.io/external-secrets-operator/external-secrets-rhel9@sha256:a594323b4d3ad6a739246f3767231ad2d57ca94bb1d035610d52a525b420b452
        version: 1.0.0
      entries:
      - name: external-secrets-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    defaultChannel: stable-v1
    packageName: openshift-external-secrets-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NetScaler
      provider-url: https://netscaler.com
    name: netscaler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: netscaler-operator.v3.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCloudController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalercloudcontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "azure": {
                    "clientsecret": "",
                    "image": "quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb",
                    "location": "",
                    "pullPolicy": "IfNotPresent",
                    "resourcegroupname": "",
                    "resources": {},
                    "subnetname": "",
                    "subscriptionid": "",
                    "tenantid": "",
                    "vnetname": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCpxWithIngressController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalercpxwithingresscontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "admSettings": {
                    "admIP": "",
                    "bandWidth": 1000,
                    "bandWidthLicense": false,
                    "cpxCores": 1,
                    "licenseEdition": "PLATINUM",
                    "licenseServerIP": "",
                    "licenseServerPort": 27000,
                    "licensingMode": "pool",
                    "loginSecret": "",
                    "platform": false,
                    "vCPULicense": false
                  },
                  "affinity": {},
                  "analyticsConfig": {
                    "distributedTracing": {
                      "enable": false,
                      "samplingRate": 100
                    },
                    "endpoint": {
                      "metrics": {
                        "service": ""
                      },
                      "transactions": {
                        "service": ""
                      }
                    },
                    "required": false,
                    "timeseries": {
                      "auditLogs": {
                        "enable": false
                      },
                      "events": {
                        "enable": false
                      },
                      "metrics": {
                        "enable": false,
                        "enableNativeScrape": false,
                        "exportFrequency": 30,
                        "mode": "avro",
                        "schemaFile": "schema.json"
                      },
                      "port": 5563
                    },
                    "transactions": {
                      "enable": false,
                      "port": 5557
                    }
                  },
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {}
                  },
                  "extraVolumes": [],
                  "imagePullSecrets": [],
                  "ingressController": {
                    "defaultSSLCertSecret": "",
                    "defaultSSLSNICertSecret": "",
                    "disableAPIServerCertVerify": false,
                    "disableOpenshiftRoutes": true,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "k8s",
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "ingressClass": [],
                    "ipam": false,
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "logProxy": "",
                    "namespaceLabels": "",
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "profileHttpFrontend": {},
                    "profileSslFrontend": {},
                    "profileTcpFrontend": {},
                    "pullPolicy": "IfNotPresent",
                    "rbacRole": false,
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 50,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "128m",
                        "memory": "500Mi"
                      }
                    },
                    "routeLabels": "",
                    "setAsDefaultIngressClass": false,
                    "updateIngressStatus": true
                  },
                  "netscalerCpx": {
                    "bgpSettings": {
                      "bgpConfig": [
                        {
                          "bgpRouter": {
                            "localAS": 100,
                            "neighbor": [
                              {
                                "ASOriginationInterval": 10,
                                "address": "",
                                "advertisementInterval": 10,
                                "remoteAS": 100
                              }
                            ]
                          }
                        }
                      ],
                      "bgpPort": 179
                    },
                    "cpxBgpRouter": false,
                    "cpxCommands": [],
                    "cpxLicenseAggregator": "",
                    "cpxShellCommands": [],
                    "daemonSet": false,
                    "enableLivenessProbe": true,
                    "enableStartupProbe": true,
                    "extraVolumeMounts": [],
                    "hostname": "",
                    "image": "quay.io/netscaler/netscaler-cpx@sha256:c7fca5069cf2306f915b6f9aeac59a9f921a0093681768ab81e7fb4fef84f970",
                    "ingressIP": "",
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    },
                    "mgmtHttpPort": 9080,
                    "mgmtHttpsPort": 9443,
                    "nitroReadTimeout": 20,
                    "nsConfigDnsRec": false,
                    "nsCookieVersion": 0,
                    "nsDnsNameserver": "",
                    "nsEnableLabels": true,
                    "nsGateway": "192.168.1.1",
                    "nsHttp2ServerSide": "OFF",
                    "nsIP": "192.168.1.2",
                    "nsLbHashAlgo": {
                      "hashAlgorithm": "default",
                      "hashFingers": 500,
                      "required": false
                    },
                    "nsProtocol": "HTTP",
                    "nsSvcLbDnsRec": false,
                    "prometheusCredentialSecret": "",
                    "pullPolicy": "IfNotPresent",
                    "service": {
                      "annotations": {},
                      "spec": {}
                    },
                    "startupProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    }
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "replicaCount": 1,
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCpxWithK8sGatewayController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalercpxwithk8sgatewaycontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "admSettings": {
                    "admIP": "",
                    "bandWidth": 1000,
                    "bandWidthLicense": false,
                    "cpxCores": 1,
                    "licenseEdition": "PLATINUM",
                    "licenseServerIP": "",
                    "licenseServerPort": 27000,
                    "licensingMode": "pool",
                    "loginSecret": "",
                    "platform": false,
                    "vCPULicense": false
                  },
                  "affinity": {},
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {}
                  },
                  "extraVolumes": [],
                  "gatewayController": {
                    "certBundle": false,
                    "disableAPIServerCertVerify": false,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "k8s",
                    "extraVolumeMounts": [],
                    "gatewayControllerName": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "namespaceLabels": "",
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "pullPolicy": "IfNotPresent",
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 50,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "128m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "imagePullSecrets": [],
                  "netscalerCpx": {
                    "cpxCommands": [],
                    "cpxLicenseAggregator": "",
                    "cpxShellCommands": [],
                    "enableLivenessProbe": true,
                    "enableStartupProbe": true,
                    "extraVolumeMounts": [],
                    "hostname": "",
                    "image": "quay.io/netscaler/netscaler-cpx@sha256:c7fca5069cf2306f915b6f9aeac59a9f921a0093681768ab81e7fb4fef84f970",
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    },
                    "mgmtHttpPort": 9080,
                    "mgmtHttpsPort": 9443,
                    "nitroReadTimeout": 20,
                    "nsIP": "192.168.1.2",
                    "nsProtocol": "HTTP",
                    "pullPolicy": "IfNotPresent",
                    "resources": {},
                    "service": {
                      "annotations": {},
                      "spec": {}
                    },
                    "startupProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    }
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "replicaCount": 1,
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerGslbController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalergslbcontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "gslbController": {
                    "disableAPIServerCertVerify": false,
                    "entityPrefix": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "kubernetesURL": "",
                    "localCluster": "",
                    "localRegion": "",
                    "logLevel": "INFO",
                    "openshift": true,
                    "pullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "32m",
                        "memory": "128Mi"
                      }
                    },
                    "siteData": [
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteMask": "",
                        "siteName": "",
                        "sitePublicIp": "",
                        "siteRegion": ""
                      },
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteMask": "",
                        "siteName": "",
                        "sitePublicIp": "",
                        "siteRegion": ""
                      }
                    ]
                  },
                  "imagePullSecrets": [],
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "localSiteSelection": false,
                    "nitroReadTimeout": 20,
                    "nsIP": "",
                    "nsPort": 443,
                    "nsProtocol": "HTTPS"
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerIngressController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscaleringresscontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "analyticsConfig": {
                    "distributedTracing": {
                      "enable": false,
                      "samplingRate": 100
                    },
                    "endpoint": {
                      "metrics": {
                        "service": ""
                      },
                      "transactions": {
                        "service": ""
                      }
                    },
                    "required": false,
                    "timeseries": {
                      "auditLogs": {
                        "enable": false
                      },
                      "events": {
                        "enable": false
                      },
                      "metrics": {
                        "enable": false,
                        "enableNativeScrape": false,
                        "exportFrequency": 50,
                        "mode": "avro",
                        "schemaFile": "schema.json"
                      },
                      "port": 50002
                    },
                    "transactions": {
                      "enable": false,
                      "port": 50005
                    }
                  },
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {},
                    "serviceMonitorExtraLabels": {}
                  },
                  "extraVolumes": [],
                  "hostAliases": [],
                  "imagePullSecrets": [],
                  "ingressController": {
                    "certBundle": false,
                    "clusterName": "",
                    "defaultSSLCertSecret": "",
                    "defaultSSLSNICertSecret": "",
                    "disableAPIServerCertVerify": false,
                    "disableOpenshiftRoutes": true,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "",
                    "extraVolumeMounts": [],
                    "ignoreNodeExternalIP": false,
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "ingressClass": [],
                    "ipam": false,
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "logProxy": "",
                    "multiClusterPrefix": "",
                    "namespaceLabels": "",
                    "nodeLabels": "",
                    "nodeWatch": false,
                    "nsValidateCert": {},
                    "nsncPbr": false,
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "podIPsforServiceGroupMembers": false,
                    "profileHttpFrontend": {},
                    "profileSslFrontend": {},
                    "profileTcpFrontend": {},
                    "pullPolicy": "IfNotPresent",
                    "rbacRole": false,
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "32m",
                        "memory": "128Mi"
                      }
                    },
                    "routeLabels": "",
                    "serviceClass": [],
                    "setAsDefaultIngressClass": false,
                    "updateIngressStatus": true
                  },
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "nitroReadTimeout": 20,
                    "nsConfigDnsRec": false,
                    "nsCookieVersion": 0,
                    "nsDnsNameserver": "",
                    "nsHttp2ServerSide": "OFF",
                    "nsIP": "",
                    "nsLbHashAlgo": {
                      "hashAlgorithm": "default",
                      "hashFingers": 256,
                      "required": false
                    },
                    "nsPort": 443,
                    "nsProtocol": "HTTPS",
                    "nsSNIPs": [],
                    "nsSvcLbDnsRec": false,
                    "nsVIP": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerIpamController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscaleripamcontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "clusterName": "",
                  "image": "quay.io/netscaler/netscaler-ipam-controller@sha256:7c25b59a2e1df0e4f5615a779a9bea939c60a3eca065cb6c2295daf0d03831d8",
                  "localIPAM": {
                    "vipRange": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "reuseIngressVIP": true,
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerK8sGatewayController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalerk8sgatewaycontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {},
                    "serviceMonitorExtraLabels": {}
                  },
                  "extraVolumes": [],
                  "gatewayController": {
                    "certBundle": false,
                    "clusterName": "",
                    "disableAPIServerCertVerify": false,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "",
                    "extraVolumeMounts": [],
                    "gatewayControllerName": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "nodeWatch": false,
                    "nsValidateCert": {},
                    "nsncPbr": false,
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "podIPsforServiceGroupMembers": false,
                    "pullPolicy": "IfNotPresent",
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "32m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "hostAliases": [],
                  "imagePullSecrets": [],
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "nitroReadTimeout": 20,
                    "nsIP": "",
                    "nsPort": 443,
                    "nsProtocol": "HTTPS",
                    "nsSNIPs": [],
                    "nsVIP": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerObservabilityExporter",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalerobservabilityexporter-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "elasticsearch": {
                    "enabled": false,
                    "server": "http://elasticsearch:9200"
                  },
                  "headless": false,
                  "image": "quay.io/netscaler/netscaler-observability-exporter@sha256:626e3a954c67bbb910477352dc740aaab21ff1c1cfb03354becf50beab17d4a4",
                  "jsonTransRateLimiting": {
                    "enabled": false,
                    "limit": 100,
                    "queueLimit": 1000,
                    "window": 5
                  },
                  "kafka": {
                    "auditLogs": "no",
                    "broker": "",
                    "dataFormat": "AVRO",
                    "enabled": false,
                    "events": "no",
                    "topic": "HTTP"
                  },
                  "nodePortRequired": false,
                  "nodeSelector": {},
                  "nsoeLogLevel": "INFO",
                  "nstracing": {
                    "enabled": false,
                    "server": "zipkin:9411/api/v1/spans"
                  },
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "replicas": 1,
                  "resources": {},
                  "splunk": {
                    "authToken": "",
                    "enabled": false,
                    "indexPrefix": "adc_nsoe",
                    "server": "http://splunk:8088"
                  },
                  "timeseries": {
                    "enabled": false
                  },
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-operator@sha256:912813b608a51be599ef01ea340ad09238d7ab76fbfa4e83ee8128fa2348bf5b
          createdAt: "2025-08-25T17:13:12Z"
          description: This is an operator to install Cloud Native portfolio provided
            by NetScaler
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler Kubernetes Gateway Controller for NetScaler
              VPX/MPX/SDX.
            displayName: Netscaler K8s Gateway Controller
            kind: NetscalerK8sGatewayController
            name: netscalerk8sgatewaycontrollers.netscaler.com
            version: v1
          - description: To Install NetScaler CPX with Kubernetes Gateway Controller.
            displayName: Netscaler CPX With K8s Gateway Controller
            kind: NetscalerCpxWithK8sGatewayController
            name: netscalercpxwithk8sgatewaycontrollers.netscaler.com
            version: v1
          - description: To install NetScaler Ingress Controller for NetScaler VPX/MPX/SDX.
            displayName: Netscaler Ingress Controller
            kind: NetscalerIngressController
            name: netscaleringresscontrollers.netscaler.com
            version: v1
          - description: To install NetScaler CPX with Ingress Controller.
            displayName: Netscaler CPX With Ingress Controller
            kind: NetscalerCpxWithIngressController
            name: netscalercpxwithingresscontrollers.netscaler.com
            version: v1
          - description: To install NetScaler GSLB Controller for NetScaler VPX/MPX/SDX.
            displayName: Netscaler GSLB Controller
            kind: NetscalerGslbController
            name: netscalergslbcontrollers.netscaler.com
            version: v1
          - description: To install NetScaler IPAM Controller for NetScaler CPX/VPX/MPX/SDX.
            displayName: Netscaler IPAM Controller
            kind: NetscalerIpamController
            name: netscaleripamcontrollers.netscaler.com
            version: v1
          - description: To install NetScaler Observability Exporter for NetScaler.
            displayName: Netscaler Observability Exporter
            kind: NetscalerObservabilityExporter
            name: netscalerobservabilityexporters.netscaler.com
            version: v1
          - description: To install NetScaler Cloud Controller for NetScaler VPX/MPX/SDX
              with Azure Redhat OpenShift in Azure.
            displayName: Netscaler Cloud Controller
            kind: NetscalerCloudController
            name: netscalercloudcontrollers.netscaler.com
            version: v1
        description: |
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster. Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Kubernetes Gateway Controller](https://docs.netscaler.com/en-us/netscaler-kubernetes-gateway-controller/getting-started#how-to-deploy-netscaler-kubernetes-gateway-controller-in-a-kubernetes-cluster)
          2. [NetScaler CPX with Kubernetes Gateway Controller](https://docs.netscaler.com/en-us/netscaler-kubernetes-gateway-controller/getting-started#how-to-deploy-netscaler-cpx-with-netscaler-kubernetes-gateway-controller-in-a-kubernetes-cluster)
          3. [NetScaler Ingress Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/unified-ingress-deployment)
          4. [NetScaler CPX with Ingress Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/two-tier-deployment)
          5. [NetScaler GSLB Controller ](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/gslb/gslb)
          6. [NetScaler IPAM Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/ipam-installation.html)
          7. [NetScaler Observability Exporter](https://docs.netscaler.com/en-us/netscaler-observability-exporter/deploy-coe)
          8. [NetScaler Cloud Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-cloud-controller)

          ### Installation
          Refer [installation instructions](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-operator-openshift).

          This operator version contains:
          1. NetScaler Ingress Controller version [3.3.2](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v3.3.2)
          2. NetScaler CPX version [14.1-47.48](https://docs.netscaler.com/en-us/updates?product=NetScaler%2520ADC%2520%28includes%2520NetScaler%2520Gateway%29&version=14.1&build=47.48)
          3. NetScaler GSLB Controller version [3.3.2](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v3.3.2)
          4. NetScaler Observability Exporter version [1.10.001](https://github.com/citrix/citrix-helm-charts/releases/tag/nsoe-v1.10.001)
          5. NetScaler Metrics Exporter [1.6.0](https://github.com/netscaler/netscaler-k8s-ingress-controller/releases/tag/me_1.6.0)
          6. NetScaler IPAM Controller [2.1.2](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v2.3.15)
          7. NetScaler Kubernetes Gateway Controller version [1.3.0](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsk8sgwctr-1.3.0)
          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin).

          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: NetScaler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GatewayAPI
        - Gateway
        - Ingress
        - NetScaler
        - ADC
        - Kubernetes
        - OpenShift
        - Citrix
        - Controller
        - Observability
        - Metrices
        links:
        - name: Netscaler Operator
          url: https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-operator-openshift
        maintainers:
        - email: priyanka.sharma@citrix.com
          name: Priyanka Sharma
        - email: arijit.ray@citrix.com
          name: Arijit Ray
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: NetScaler
          url: https://netscaler.com
        relatedImages:
        - quay.io/netscaler/netscaler-observability-exporter@sha256:626e3a954c67bbb910477352dc740aaab21ff1c1cfb03354becf50beab17d4a4
        - registry.connect.redhat.com/citrix/netscaler-operator@sha256:912813b608a51be599ef01ea340ad09238d7ab76fbfa4e83ee8128fa2348bf5b
        - registry.connect.redhat.com/citrix/netscaler-bundle@sha256:d8453ba9d5284e359f34c185618c35ef5a417bb6d96b99a85fa1b50f0c67f7b6
        - quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20
        - quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb
        - quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:89f44c45373da73a51b0b9a02de7efe519dc2d5343b65fe382526cccc92f8f5c
        - quay.io/netscaler/netscaler-cpx@sha256:c7fca5069cf2306f915b6f9aeac59a9f921a0093681768ab81e7fb4fef84f970
        - quay.io/netscaler/netscaler-ipam-controller@sha256:7c25b59a2e1df0e4f5615a779a9bea939c60a3eca065cb6c2295daf0d03831d8
        version: 3.3.0
      entries:
      - name: netscaler-operator.v3.3.0
        version: 3.3.0
      - name: netscaler-operator.v3.2.0
        version: 3.2.0
      - name: netscaler-operator.v3.1.2
        version: 3.1.2
      - name: netscaler-operator.v3.1.1
        version: 3.1.1
      - name: netscaler-operator.v3.0.1
        version: 3.0.1
      name: stable
    - currentCSV: netscaler-operator.v3.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCloudController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "netscaler-operator",
                    "app.kubernetes.io/instance": "nscc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscalercloudcontroller",
                    "app.kubernetes.io/part-of": "netscaler-operator"
                  },
                  "name": "nscc"
                },
                "spec": {
                  "azure": {
                    "clientsecret": "",
                    "image": "quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb",
                    "location": "",
                    "pullPolicy": "IfNotPresent",
                    "resourcegroupname": "",
                    "resources": {},
                    "subnetname": "",
                    "subscriptionid": "",
                    "tenantid": "",
                    "vnetname": ""
                  }
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerGslbController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "netscaler-operator",
                    "app.kubernetes.io/instance": "nsgc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscalergslbcontroller",
                    "app.kubernetes.io/part-of": "netscaler-operator"
                  },
                  "name": "nsgc"
                },
                "spec": {
                  "gslbController": {
                    "acceptLicense": "Yes",
                    "cleanupGSLBSiteConfig": false,
                    "disableAPIServerCertVerify": false,
                    "entityPrefix": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:88114c518ecceb54b000f38bfc330efe184bfeb5b5df0ee308950cf29e7a777f",
                    "imagePullSecrets": [],
                    "kubernetesURL": "",
                    "localCluster": "",
                    "localRegion": "",
                    "logLevel": "Debug",
                    "openshift": true,
                    "pullPolicy": "IfNotPresent",
                    "siteData": [
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteName": "",
                        "siteRegion": ""
                      },
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteName": "",
                        "siteRegion": ""
                      }
                    ]
                  },
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "nitroReadTimeout": 20,
                    "nsIP": "",
                    "nsPort": 443,
                    "nsProtocol": "HTTPS"
                  },
                  "resources": {
                    "limits": {},
                    "requests": {
                      "cpu": "32m",
                      "memory": "128Mi"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-operator@sha256:3f71f9a46d7b29e3da98a301965f635c03a022b5535b586d7d5c699341f68193
          createdAt: "2024-07-31T06:33:49Z"
          description: This is an operator to install Cloud Native portfolio provided
            by NetScaler
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler Cloud Controller for NetScaler VPX/MPX/SDX
              with Azure Redhat OpenShift in Azure.
            displayName: Netscaler Cloud Controller
            kind: NetscalerCloudController
            name: netscalercloudcontrollers.netscaler.com
            version: v1
          - description: To install NetScaler GSLB Controller for NetScaler VPX/MPX/SDX.
            displayName: Netscaler GSLB Controller
            kind: NetscalerGslbController
            name: netscalergslbcontrollers.netscaler.com
            version: v1
        description: |-
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster. Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Cloud Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-cloud-controller)
          2. [NetScaler GSLB Controller ](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/gslb-openshift-operator)

          ### Installation
          Refer [installation instructions](https://github.com/netscaler/netscaler-k8s-ingress-controller/blob/master/docs/deploy/deploy-ns-operator.md).

          This operator version contains:
          1. NetScaler Cloud Controller version [1.2.0](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-cloud-controller)
          2. NetScaler GSLB Controller version [1.43.7](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v1.43.7)

          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin).

          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: NetScaler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Ingress
        - NetScaler
        links:
        - name: Netscaler Operator
          url: https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/gslb-openshift-operator
        maintainers:
        - email: priyanka.sharma@cloud.com
          name: Priyanka Sharma
        - email: arijit.ray@cloud.com
          name: Arijit Ray
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: NetScaler
          url: https://netscaler.com
        relatedImages:
        - quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb
        - quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:88114c518ecceb54b000f38bfc330efe184bfeb5b5df0ee308950cf29e7a777f
        - registry.connect.redhat.com/citrix/netscaler-bundle@sha256:b405d6148aa680bf31bdc6185c1702916c3219983d8482f27d89ed2f93659aa7
        - registry.connect.redhat.com/citrix/netscaler-operator@sha256:3f71f9a46d7b29e3da98a301965f635c03a022b5535b586d7d5c699341f68193
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:23405618050a4ceea8ea0c748cc7d9d16dbb80f10e4c39f7e82014a3ac80cec9
        version: 3.0.1
      entries:
      - name: netscaler-operator.v3.0.1
        version: 3.0.1
      name: tech-preview
    defaultChannel: stable
    packageName: netscaler-operator
    provider:
      name: NetScaler
      url: https://netscaler.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/instance: ibm-spectrum-scale-csi-operator
      app.kubernetes.io/managed-by: ibm-spectrum-scale-csi-operator
      app.kubernetes.io/name: ibm-spectrum-scale-csi-operator
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: ibm-spectrum-scale-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-spectrum-scale-csi-operator.v2.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "CSIScaleOperator",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "ibm-spectrum-scale-csi-operator",
                    "app.kubernetes.io/managed-by": "ibm-spectrum-scale-csi-operator",
                    "app.kubernetes.io/name": "ibm-spectrum-scale-csi-operator",
                    "release": "ibm-spectrum-scale-csi-operator"
                  },
                  "name": "ibm-spectrum-scale-csi",
                  "namespace": "ibm-spectrum-scale-csi-driver"
                },
                "spec": {
                  "attacherNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "clusters": [
                    {
                      "id": "\u003cPrimary Cluster ID\u003e",
                      "primary": {
                        "primaryFs": "\u003c Primary Filesystem \u003e"
                      },
                      "restApi": [
                        {
                          "guiHost": "\u003c Primary cluster GUI IP/Hostname \u003e"
                        }
                      ],
                      "secrets": "secret1",
                      "secureSslMode": false
                    }
                  ],
                  "pluginNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "provisionerNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "resizerNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "snapshotterNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ]
                },
                "status": {}
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/ibm-spectrum-scale/ibm-spectrum-scale-csi-operator@sha256:b62ad588fbc338090f405740fd8bceaf59b3267cdb532c60ae965643ccae4d5d
          createdAt: Thu May 5 04:42:15 IST 2022
          description: An operator for deploying and managing the IBM Spectrum Scale
            CSI Driver.
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/IBM/ibm-spectrum-scale-csi/
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CSIScaleOperator is the Schema for the csiscaleoperators
              API
            displayName: IBM CSI Spectrum Scale Driver
            kind: CSIScaleOperator
            name: csiscaleoperators.csi.ibm.com
            version: v1
        description: |
          The IBM Spectrum Scale CSI Operator for Kubernetes installs, manages,
          upgrades the IBM Spectrum Scale CSI Driver on OpenShift and Kubernetes
          for provisioning of persistent volumes on IBM Spectrum Scale.

          ### Documentation Documentation for IBM Spectrum Scale CSI Driver and Operator can be found at [IBM Documentation](https://www.ibm.com/docs/en/spectrum-scale-csi).

          ### Getting help
          IBM Spectrum Scale CSI driver is part of the IBM Spectrum Scale offering.
          Please follow the [IBM support procedure](https://www.ibm.com/mysupport/s/?language=en_US) for any issues with the driver.

          For non-urgent issues, suggestions, recommendations feel free to open an
          issue in [github](https://github.com/IBM/ibm-spectrum-scale-csi). Issues will be addressed as team availability permits.

          **Note:** Custom Resource example represents the minimum settings needed to run
          the operator. If your environment needs more advanced settings (e.g. remote clusters,
          node mapping, image pull secret, Taint and Toleration etc.) please refer to  the sample [Custom Resource](https://raw.githubusercontent.com/IBM/ibm-spectrum-scale-csi/v2.6.0/operator/config/samples/csiscaleoperators.csi.ibm.com_cr.yaml).
        displayName: IBM Spectrum Scale CSI Plugin Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - GPFS
        - Spectrum Scale
        - CSI Driver
        links:
        - name: IBM CSI Spectrum Scale Documentation
          url: https://www.ibm.com/docs/en/spectrum-scale-csi
        - name: CSI Developer Documentation
          url: https://kubernetes-csi.github.io/docs/
        maintainers:
        - email: madhu.punjabi@in.ibm.com
          name: Madhu Thorat
        - email: amdabhad@in.ibm.com
          name: Amol Dabhade
        - email: Nitish.Kumar4@ibm.com
          name: Nitish Kumar
        maturity: alpha
        provider:
          name: IBM
        relatedImages:
        - quay.io/ibm-spectrum-scale/ibm-spectrum-scale-csi-operator@sha256:b62ad588fbc338090f405740fd8bceaf59b3267cdb532c60ae965643ccae4d5d
        - quay.io/openshift-community-operators/ibm-spectrum-scale-csi-operator@sha256:01d24dfa0d6b6146230459f8f7e74f2749d7fff3c4d75c40de386e014f9367d6
        version: 2.6.0
      entries:
      - name: ibm-spectrum-scale-csi-operator.v2.6.0
        version: 2.6.0
      - name: ibm-spectrum-scale-csi-operator.v2.5.1
        version: 2.5.1
      - name: ibm-spectrum-scale-csi-operator.v2.5.0
        version: 2.5.0
      - name: ibm-spectrum-scale-csi-operator.v2.4.0
        version: 2.4.0
      - name: ibm-spectrum-scale-csi-operator.v2.3.1
        version: 2.3.1
      - name: ibm-spectrum-scale-csi-operator.v2.3.0
        version: 2.3.0
      name: stable
    defaultChannel: stable
    packageName: ibm-spectrum-scale-csi-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-acmpca-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-acmpca-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acmpca.services.k8s.aws/v1alpha1",
                "kind": "CertificateAuthority",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/acmpca-controller:1.2.0
          createdAt: "2025-11-29T03:33:40Z"
          description: AWS ACM PCA controller is a service controller for managing
            ACM PCA resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CertificateAuthority represents the state of an AWS acmpca
              CertificateAuthority resource.
            displayName: CertificateAuthority
            kind: CertificateAuthority
            name: certificateauthorities.acmpca.services.k8s.aws
            version: v1alpha1
          - description: CertificateAuthorityActivation represents the state of an
              AWS acmpca CertificateAuthorityActivation resource.
            displayName: CertificateAuthorityActivation
            kind: CertificateAuthorityActivation
            name: certificateauthorityactivations.acmpca.services.k8s.aws
            version: v1alpha1
          - description: Certificate represents the state of an AWS acmpca Certificate
              resource.
            displayName: Certificate
            kind: Certificate
            name: certificates.acmpca.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon ACM PCA resources in AWS from within your Kubernetes cluster.

          **About Amazon ACM PCA**

          AWS Private CA enables creation of private certificate authority (CA) hierarchies, including root and subordinate CAs, without the investment and maintenance costs of operating an on-premises CA. Your private CAs can issue end-entity X.509 certificates useful in scenarios including:
          - Creating encrypted TLS communication channels
          - Authenticating users, computers, API endpoints, and IoT devices
          - Cryptographically signing code
          - Implementing Online Certificate Status Protocol (OCSP) for obtaining certificate revocation status

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ACM PCA
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acmpca
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ACM PCA Developer Resources
          url: https://aws.amazon.com/private-ca/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: acmpca maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/acmpca-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-acmpca-controller@sha256:b413bc9c33cfa7364da019f3d192bb9fd7fbb6e52701284f093679ebdb839caf
        version: 1.2.0
      entries:
      - name: ack-acmpca-controller.v1.2.0
        version: 1.2.0
      - name: ack-acmpca-controller.v1.1.2
        version: 1.1.2
      - name: ack-acmpca-controller.v1.1.1
        version: 1.1.1
      - name: ack-acmpca-controller.v1.1.0
        version: 1.1.0
      - name: ack-acmpca-controller.v1.0.10
        version: 1.0.10
      - name: ack-acmpca-controller.v1.0.9
        version: 1.0.9
      - name: ack-acmpca-controller.v1.0.8
        version: 1.0.8
      - name: ack-acmpca-controller.v1.0.7
        version: 1.0.7
      - name: ack-acmpca-controller.v1.0.6
        version: 1.0.6
      - name: ack-acmpca-controller.v1.0.5
        version: 1.0.5
      - name: ack-acmpca-controller.v1.0.4
        version: 1.0.4
      - name: ack-acmpca-controller.v1.0.3
        version: 1.0.3
      - name: ack-acmpca-controller.v1.0.2
        version: 1.0.2
      - name: ack-acmpca-controller.v1.0.1
        version: 1.0.1
      - name: ack-acmpca-controller.v1.0.0
        version: 1.0.0
      - name: ack-acmpca-controller.v0.0.20
        version: 0.0.20
      - name: ack-acmpca-controller.v0.0.16
        version: 0.0.16
      - name: ack-acmpca-controller.v0.0.15
        version: 0.0.15
      - name: ack-acmpca-controller.v0.0.14
        version: 0.0.14
      - name: ack-acmpca-controller.v0.0.13
        version: 0.0.13
      - name: ack-acmpca-controller.v0.0.12
        version: 0.0.12
      - name: ack-acmpca-controller.v0.0.11
        version: 0.0.11
      - name: ack-acmpca-controller.v0.0.10
        version: 0.0.10
      - name: ack-acmpca-controller.v0.0.9
        version: 0.0.9
      - name: ack-acmpca-controller.v0.0.8
        version: 0.0.8
      - name: ack-acmpca-controller.v0.0.5
        version: 0.0.5
      - name: ack-acmpca-controller.v0.0.4
        version: 0.0.4
      - name: ack-acmpca-controller.v0.0.3
        version: 0.0.3
      - name: ack-acmpca-controller.v0.0.2
        version: 0.0.2
      - name: ack-acmpca-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-acmpca-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/kuadrant-operator
    name: kuadrant-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kuadrant-operator.v0.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "AuthPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "authScheme": {
                    "identity": [
                      {
                        "apiKey": {
                          "allNamespaces": true,
                          "selector": {
                            "matchLabels": {
                              "app": "toystore"
                            }
                          }
                        },
                        "credentials": {
                          "in": "authorization_header",
                          "keySelector": "APIKEY"
                        },
                        "name": "friends"
                      }
                    ],
                    "response": [
                      {
                        "json": {
                          "properties": [
                            {
                              "name": "userID",
                              "valueFrom": {
                                "authJSON": "auth.identity.metadata.annotations.secret\\.kuadrant\\.io/user-id"
                              }
                            }
                          ]
                        },
                        "name": "rate-limit-apikey",
                        "wrapper": "envoyDynamicMetadata",
                        "wrapperKey": "ext_auth_data"
                      }
                    ]
                  },
                  "rules": null,
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "Kuadrant",
                "metadata": {
                  "name": "kuadrant-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "RateLimitPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "rateLimits": [
                    {
                      "configurations": [
                        {
                          "actions": [
                            {
                              "metadata": {
                                "default_value": "no-user",
                                "descriptor_key": "userID",
                                "metadata_key": {
                                  "key": "envoy.filters.http.ext_authz",
                                  "path": [
                                    {
                                      "segment": {
                                        "key": "ext_auth_data"
                                      }
                                    },
                                    {
                                      "segment": {
                                        "key": "userID"
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          ]
                        }
                      ],
                      "limits": [
                        {
                          "conditions": [],
                          "maxValue": 2,
                          "seconds": 10,
                          "variables": [
                            "userID"
                          ]
                        }
                      ]
                    }
                  ],
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/kuadrant-operator:v0.3.1
          createdAt: "2023-06-01T12:24:17Z"
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/kuadrant-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Enable AuthN and AuthZ based access control on workloads
            displayName: AuthPolicy
            kind: AuthPolicy
            name: authpolicies.kuadrant.io
            version: v1beta1
          - description: Kuadrant is the Schema for the kuadrants API
            displayName: Kuadrant
            kind: Kuadrant
            name: kuadrants.kuadrant.io
            version: v1beta1
          - description: Enable access control on workloads based on HTTP rate limiting
            displayName: RateLimitPolicy
            kind: RateLimitPolicy
            name: ratelimitpolicies.kuadrant.io
            version: v1beta1
        description: A Kubernetes Operator to manage the lifecycle of the Kuadrant
          system
        displayName: Kuadrant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - api-management
        - Kuadrant
        - kubernetes
        - openshift
        - cloud-service-protection
        - rate-limiting
        - authentication
        - authorization
        links:
        - name: Kuadrant Operator
          url: https://github.com/Kuadrant/kuadrant-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/kuadrant-operator
        relatedImages:
        - oci://quay.io/kuadrant/wasm-shim:v0.2.0
        - quay.io/kuadrant/kuadrant-operator:v0.3.1
        - quay.io/openshift-community-operators/kuadrant-operator@sha256:398c9230878feb756ad393d7de5675a7370c883a18acf73483a660e9303d807c
        version: 0.3.1
      entries:
      - name: kuadrant-operator.v0.3.1
        version: 0.3.1
      - name: kuadrant-operator.v0.3.0
        version: 0.3.0
      - name: kuadrant-operator.v0.2.1
        version: 0.2.1
      - name: kuadrant-operator.v0.2.0
        version: 0.2.0
      name: alpha
    - currentCSV: kuadrant-operator.v0.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSPolicy",
                "metadata": {
                  "name": "dnspolicy-sample"
                },
                "spec": {
                  "healthCheck": {
                    "endpoint": "/",
                    "protocol": "HTTP"
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "TLSPolicy",
                "metadata": {
                  "name": "tlspolicy-sample"
                },
                "spec": {
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "self-signed-ca"
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "Kuadrant",
                "metadata": {
                  "name": "kuadrant-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "kuadrant.io/v1beta2",
                "kind": "AuthPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "rules": {
                    "authentication": {
                      "apikey": {
                        "apiKey": {
                          "selector": {}
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta2",
                "kind": "RateLimitPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "limits": {
                    "toys": {
                      "rates": [
                        {
                          "duration": 1,
                          "limit": 50,
                          "unit": "minute"
                        }
                      ]
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/kuadrant-operator:v0.11.0
          createdAt: "2024-10-02T20:30:45Z"
          description: '[DEPRECATED] Follow https://docs.kuadrant.io instead'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/kuadrant-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AuthPolicy enables authentication and authorization for service
              workloads in a Gateway API network
            displayName: AuthPolicy
            kind: AuthPolicy
            name: authpolicies.kuadrant.io
            version: v1beta2
          - description: DNSPolicy configures how North-South based traffic should
              be balanced and reach the gateways
            displayName: DNSPolicy
            kind: DNSPolicy
            name: dnspolicies.kuadrant.io
            version: v1alpha1
          - description: Kuadrant configures installations of Kuadrant Service Protection
              components
            displayName: Kuadrant
            kind: Kuadrant
            name: kuadrants.kuadrant.io
            version: v1beta1
          - description: RateLimitPolicy enables rate limiting for service workloads
              in a Gateway API network
            displayName: RateLimitPolicy
            kind: RateLimitPolicy
            name: ratelimitpolicies.kuadrant.io
            version: v1beta2
          - description: TLSPolicy provides tls for gateway listeners by managing
              the lifecycle of tls certificates
            displayName: TLSPolicy
            kind: TLSPolicy
            name: tlspolicies.kuadrant.io
            version: v1alpha1
        description: |-
          ## Deprecated
          This Kuadrant community operator is deprecated, Follow https://docs.kuadrant.io instead.
        displayName: '[DEPRECATED] Kuadrant Operator'
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - api-management
        - Kuadrant
        - kubernetes
        - openshift
        - cloud-service-protection
        - rate-limiting
        - authentication
        - authorization
        links:
        - name: Kuadrant Operator
          url: https://github.com/Kuadrant/kuadrant-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/kuadrant-operator
        relatedImages:
        - oci://quay.io/kuadrant/wasm-shim:v0.6.0
        - quay.io/community-operator-pipeline-prod/kuadrant-operator@sha256:f21456392af3b37ae48d77dc7f19fa23c6946269555bb1280978b29420bbf31e
        - quay.io/kuadrant/kuadrant-operator:v0.11.0
        version: 0.11.1
      entries:
      - name: kuadrant-operator.v0.11.1
        version: 0.11.1
      - name: kuadrant-operator.v0.11.0
        version: 0.11.0
      - name: kuadrant-operator.v0.10.0
        version: 0.10.0
      - name: kuadrant-operator.v0.7.2
        version: 0.7.2
      - name: kuadrant-operator.v0.4.1
        version: 0.4.1
      - name: kuadrant-operator.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: kuadrant-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/kuadrant-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EnterpriseDB Corporation
      provider-url: ""
    name: edb-hcp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: edb-hcp-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edbpgai.edb.com/v1alpha1",
                "kind": "HybridControlPlane",
                "metadata": {
                  "name": "placeholder"
                },
                "spec": {
                  "beaconAgent": {
                    "applianceProviderEnabled": true,
                    "beaconDBConnected": true,
                    "beaconServerAddress": "upm-beacon-server-ingestion.upm-beacon.svc.cluster.local:8080",
                    "inCluster": true,
                    "location": "devspatcher",
                    "logLevel": "debug",
                    "plaintext": true,
                    "providers": [
                      "appliance"
                    ],
                    "provisioning": {
                      "imageDiscovery": true,
                      "imagesetDiscoveryAuthenticationType": "token",
                      "imagesetDiscoveryContainerRegistryURL": "placeholder",
                      "loadBalancersEnabled": true,
                      "nodePortDomain": "nodeportdomain.com",
                      "openshift": true,
                      "provider": "aws"
                    },
                    "tlsInsecure": false,
                    "transparentDataEncryptionMethods": [
                      "passphrase",
                      "hashicorp_vault"
                    ]
                  },
                  "beaconServer": {
                    "logLevel": "debug"
                  },
                  "componentsParameters": {
                    "edb-migration-portal": {
                      "enable_pdb": "false"
                    },
                    "transporter-data-operator": {
                      "fips_enabled": "false"
                    },
                    "transporter-dp-agent": {
                      "rw_service_url": "placeholder"
                    },
                    "transporter-rw-service": {
                      "domain_name": "placeholder"
                    },
                    "upm-api-pnxt-metric": {
                      "log_level": "info",
                      "tsdb_host": "thanos-query.monitoring.svc.cluster.local",
                      "tsdb_port": "9090"
                    },
                    "upm-api-pnxt-pd": {
                      "log_level": "info"
                    },
                    "upm-beaco-ff-base": {
                      "aes_key_rotation_interval": "2160h",
                      "usage_generator_interval": "24h"
                    },
                    "upm-beaco-usages": {
                      "usage_generator_interval": "24h"
                    },
                    "upm-beacon": {
                      "beacon_db_hibernation": "\"off\"",
                      "beacon_location_id": "devspatcher",
                      "beacon_server_replicas": "1",
                      "external_metrics_replicas": "1",
                      "image_discovery_credentials_secret_name": "placeholder",
                      "server_host": "placeholder"
                    },
                    "upm-istio": {
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288"
                    },
                    "upm-istio-gateway": {
                      "cookie_aeskey": "rzkutHl8NJNztPMEJYykZouHslNiA7xmIXH+58ISUVo=",
                      "enable_server_session": "true",
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288",
                      "openshift_console_domain_name": "placeholder"
                    },
                    "upm-prometheus": {
                      "cpu": "200m",
                      "memory": "6Gi",
                      "prometheus_retention_size": "15GB",
                      "prometheus_storage_size": "20Gi"
                    },
                    "upm-thanos": {
                      "memcached_cpu": "500m",
                      "memcached_memory": "2Gi",
                      "query_frontend_cpu": "200m",
                      "query_frontend_memory": "128Mi"
                    },
                    "upm-trust-manager": {
                      "cert_manager_namespace": "cert-manager"
                    }
                  },
                  "flavour": "placeholder",
                  "globalParameters": {
                    "default_ingress_domain": "placeholder",
                    "internal_backup_folder": "a7462dbc7106",
                    "internal_db_backup_compression": "gzip",
                    "internal_db_backup_retention": "30d",
                    "portal_certificate_secret": "beaco-istio-gw-cert",
                    "portal_domain_name": "placeholder",
                    "portal_port": "443",
                    "session_duration_seconds": "86400",
                    "storage_class": "placeholder"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "placeholder",
                      "namespace": "default"
                    }
                  ],
                  "imageRegistry": "placeholder",
                  "pgai": {
                    "portal": {
                      "authentication": {
                        "clientSecret": "edb-postgres-ai-secret",
                        "idpConnectors": [],
                        "staticPasswords": [
                          {
                            "email": "owner@mycompany.com",
                            "hash": "$2y$10/yXkob4KWJDqpiwudBqC",
                            "userID": "c5998173-a605-449a-a9a5-4a9c33e26df7",
                            "username": "Owner MyCompany"
                          },
                          {
                            "email": "admin@mycompany.com",
                            "hash": "$2y$10/yYwtXRrOagYO2jNtwVzGQPPEfDvX0QllV8NXbku",
                            "userID": "b7e2c2e2-2e7a-4c7b-9e2a-7e6b8c1f2a3d",
                            "username": "Admin MyCompany"
                          }
                        ]
                      }
                    }
                  },
                  "source": {
                    "useLocalKustomizations": true
                  },
                  "version": "placeholder"
                }
              }
            ]
          capabilities: Basic Install
          categories: Database,AI/Machine Learning
          containerImage: docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
          createdAt: "2025-12-16T03:00:39Z"
          description: Unify transactional, analytical, and AI workloads and bring
            cloud agility to your hybrid data infrastructure.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/EnterpriseDB/edb-hcp-operator
          support: techsupport@enterprisedb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HybridControlPlane is the Schema for the hybridcontrolplanes
              API
            displayName: Hybrid Control Plane
            kind: HybridControlPlane
            name: hybridcontrolplanes.edbpgai.edb.com
            version: v1alpha1
        description: |
          EDB Postgres AI is a sovereign data and AI platform that brings analytics and AI closer to core operational data and enables cloud agility in private environments.
          Unify your structured and unstructured data in one multi-model data platform with centralized management and observability to:
          - Accelerate enterprise-grade transactional databases
          - Enable rapid analytics and powerful lakehouse integrations
          - Automate AI pipelines and semantic search for faster GenAI development
          Using EDB’s unmatched Postgres expertise, EDB Postgres AI automates database operations, ensuring expert-level execution across deployments – boosting operational efficiency by up to 30% and accelerating innovation.
        displayName: EDB Postgres AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Postgres
        - Database
        - DBaaS
        - EDB Postgres AI
        links:
        - name: EDB Postgres AI Software Deployment
          url: https://www.enterprisedb.com/products/software-deployment
        maintainers:
        - email: techsupport@enterprisedb.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/edb-hcp-operator@sha256:1fb27bf4a51cb903b59a1c24d9a0233148a258426bbb0b7a101e12f6f64b28f8
        - docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
        version: 1.3.3
      entries:
      - name: edb-hcp-operator.v1.3.3
        version: 1.3.3
      name: alpha
    - currentCSV: edb-hcp-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edbpgai.edb.com/v1alpha1",
                "kind": "HybridControlPlane",
                "metadata": {
                  "name": "placeholder"
                },
                "spec": {
                  "beaconAgent": {
                    "applianceProviderEnabled": true,
                    "beaconDBConnected": true,
                    "beaconServerAddress": "upm-beacon-server-ingestion.upm-beacon.svc.cluster.local:8080",
                    "inCluster": true,
                    "location": "devspatcher",
                    "logLevel": "debug",
                    "plaintext": true,
                    "providers": [
                      "appliance"
                    ],
                    "provisioning": {
                      "imageDiscovery": true,
                      "imagesetDiscoveryAuthenticationType": "token",
                      "imagesetDiscoveryContainerRegistryURL": "placeholder",
                      "loadBalancersEnabled": true,
                      "nodePortDomain": "nodeportdomain.com",
                      "openshift": true,
                      "provider": "aws"
                    },
                    "tlsInsecure": false,
                    "transparentDataEncryptionMethods": [
                      "passphrase",
                      "hashicorp_vault"
                    ]
                  },
                  "beaconServer": {
                    "logLevel": "debug"
                  },
                  "componentsParameters": {
                    "edb-migration-portal": {
                      "enable_pdb": "false"
                    },
                    "transporter-data-operator": {
                      "fips_enabled": "false"
                    },
                    "transporter-dp-agent": {
                      "rw_service_url": "placeholder"
                    },
                    "transporter-rw-service": {
                      "domain_name": "placeholder"
                    },
                    "upm-api-pnxt-metric": {
                      "log_level": "info",
                      "tsdb_host": "thanos-query.monitoring.svc.cluster.local",
                      "tsdb_port": "9090"
                    },
                    "upm-api-pnxt-pd": {
                      "log_level": "info"
                    },
                    "upm-beaco-ff-base": {
                      "aes_key_rotation_interval": "2160h",
                      "usage_generator_interval": "24h"
                    },
                    "upm-beaco-usages": {
                      "usage_generator_interval": "24h"
                    },
                    "upm-beacon": {
                      "beacon_db_hibernation": "\"off\"",
                      "beacon_location_id": "devspatcher",
                      "beacon_server_replicas": "1",
                      "external_metrics_replicas": "1",
                      "image_discovery_credentials_secret_name": "placeholder",
                      "server_host": "placeholder"
                    },
                    "upm-istio": {
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288"
                    },
                    "upm-istio-gateway": {
                      "cookie_aeskey": "rzkutHl8NJNztPMEJYykZouHslNiA7xmIXH+58ISUVo=",
                      "enable_server_session": "true",
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288",
                      "openshift_console_domain_name": "placeholder"
                    },
                    "upm-prometheus": {
                      "cpu": "200m",
                      "memory": "6Gi",
                      "prometheus_retention_size": "15GB",
                      "prometheus_storage_size": "20Gi"
                    },
                    "upm-thanos": {
                      "memcached_cpu": "500m",
                      "memcached_memory": "2Gi",
                      "query_frontend_cpu": "200m",
                      "query_frontend_memory": "128Mi"
                    },
                    "upm-trust-manager": {
                      "cert_manager_namespace": "cert-manager"
                    }
                  },
                  "flavour": "placeholder",
                  "globalParameters": {
                    "default_ingress_domain": "placeholder",
                    "internal_backup_folder": "a7462dbc7106",
                    "internal_db_backup_compression": "gzip",
                    "internal_db_backup_retention": "30d",
                    "portal_certificate_secret": "beaco-istio-gw-cert",
                    "portal_domain_name": "placeholder",
                    "portal_port": "443",
                    "session_duration_seconds": "86400",
                    "storage_class": "placeholder"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "placeholder",
                      "namespace": "default"
                    }
                  ],
                  "imageRegistry": "placeholder",
                  "pgai": {
                    "portal": {
                      "authentication": {
                        "clientSecret": "edb-postgres-ai-secret",
                        "idpConnectors": [],
                        "staticPasswords": [
                          {
                            "email": "owner@mycompany.com",
                            "hash": "$2y$10/yXkob4KWJDqpiwudBqC",
                            "userID": "c5998173-a605-449a-a9a5-4a9c33e26df7",
                            "username": "Owner MyCompany"
                          },
                          {
                            "email": "admin@mycompany.com",
                            "hash": "$2y$10/yYwtXRrOagYO2jNtwVzGQPPEfDvX0QllV8NXbku",
                            "userID": "b7e2c2e2-2e7a-4c7b-9e2a-7e6b8c1f2a3d",
                            "username": "Admin MyCompany"
                          }
                        ]
                      }
                    }
                  },
                  "source": {
                    "useLocalKustomizations": true
                  },
                  "version": "placeholder"
                }
              }
            ]
          capabilities: Basic Install
          categories: Database,AI/Machine Learning
          containerImage: docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
          createdAt: "2025-12-16T03:00:39Z"
          description: Unify transactional, analytical, and AI workloads and bring
            cloud agility to your hybrid data infrastructure.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/EnterpriseDB/edb-hcp-operator
          support: techsupport@enterprisedb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HybridControlPlane is the Schema for the hybridcontrolplanes
              API
            displayName: Hybrid Control Plane
            kind: HybridControlPlane
            name: hybridcontrolplanes.edbpgai.edb.com
            version: v1alpha1
        description: |
          EDB Postgres AI is a sovereign data and AI platform that brings analytics and AI closer to core operational data and enables cloud agility in private environments.
          Unify your structured and unstructured data in one multi-model data platform with centralized management and observability to:
          - Accelerate enterprise-grade transactional databases
          - Enable rapid analytics and powerful lakehouse integrations
          - Automate AI pipelines and semantic search for faster GenAI development
          Using EDB’s unmatched Postgres expertise, EDB Postgres AI automates database operations, ensuring expert-level execution across deployments – boosting operational efficiency by up to 30% and accelerating innovation.
        displayName: EDB Postgres AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Postgres
        - Database
        - DBaaS
        - EDB Postgres AI
        links:
        - name: EDB Postgres AI Software Deployment
          url: https://www.enterprisedb.com/products/software-deployment
        maintainers:
        - email: techsupport@enterprisedb.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/edb-hcp-operator@sha256:1fb27bf4a51cb903b59a1c24d9a0233148a258426bbb0b7a101e12f6f64b28f8
        - docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
        version: 1.3.3
      entries:
      - name: edb-hcp-operator.v1.3.3
        version: 1.3.3
      name: lts-v1.3
    defaultChannel: alpha
    packageName: edb-hcp-operator
    provider:
      name: EnterpriseDB Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sfn-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sfn-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sfn.services.k8s.aws/v1alpha1",
                "kind": "Activity",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sfn.services.k8s.aws/v1alpha1",
                "kind": "StateMachine",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sfn-controller:1.2.0
          createdAt: "2025-11-29T04:38:13Z"
          description: AWS Step Functions controller is a service controller for managing
            Step Functions resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Activity represents the state of an AWS sfn Activity resource.
            displayName: Activity
            kind: Activity
            name: activities.sfn.services.k8s.aws
            version: v1alpha1
          - description: StateMachine represents the state of an AWS sfn StateMachine
              resource.
            displayName: StateMachine
            kind: StateMachine
            name: statemachines.sfn.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Step Functions resources in AWS from within your Kubernetes cluster.

          **About Amazon Step FUnctions**

          Step Functions is a serverless orchestration service that lets you combine AWS Lambda functions and other AWS services to build business-critical applications. Through Step Functions' graphical console, you see your application’s workflow as a series of event-driven steps.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Step Functions
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sfn
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Step Functions Developer Resources
          url: https://aws.amazon.com/step-functions/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: step functions maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sfn-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-sfn-controller@sha256:dfcfbf98f6d237c3a2b87efe63ead08237b9c53ce45ad4469a007de66ea2e9b8
        version: 1.2.0
      entries:
      - name: ack-sfn-controller.v1.2.0
        version: 1.2.0
      - name: ack-sfn-controller.v1.1.2
        version: 1.1.2
      - name: ack-sfn-controller.v1.1.1
        version: 1.1.1
      - name: ack-sfn-controller.v1.1.0
        version: 1.1.0
      - name: ack-sfn-controller.v1.0.29
        version: 1.0.29
      - name: ack-sfn-controller.v1.0.28
        version: 1.0.28
      - name: ack-sfn-controller.v1.0.27
        version: 1.0.27
      - name: ack-sfn-controller.v1.0.26
        version: 1.0.26
      - name: ack-sfn-controller.v1.0.25
        version: 1.0.25
      - name: ack-sfn-controller.v1.0.24
        version: 1.0.24
      - name: ack-sfn-controller.v1.0.23
        version: 1.0.23
      - name: ack-sfn-controller.v1.0.22
        version: 1.0.22
      - name: ack-sfn-controller.v1.0.21
        version: 1.0.21
      - name: ack-sfn-controller.v1.0.20
        version: 1.0.20
      - name: ack-sfn-controller.v1.0.19
        version: 1.0.19
      - name: ack-sfn-controller.v1.0.18
        version: 1.0.18
      - name: ack-sfn-controller.v1.0.17
        version: 1.0.17
      - name: ack-sfn-controller.v1.0.16
        version: 1.0.16
      - name: ack-sfn-controller.v1.0.15
        version: 1.0.15
      - name: ack-sfn-controller.v1.0.14
        version: 1.0.14
      - name: ack-sfn-controller.v1.0.13
        version: 1.0.13
      - name: ack-sfn-controller.v1.0.11
        version: 1.0.11
      - name: ack-sfn-controller.v1.0.10
        version: 1.0.10
      - name: ack-sfn-controller.v1.0.9
        version: 1.0.9
      - name: ack-sfn-controller.v1.0.8
        version: 1.0.8
      - name: ack-sfn-controller.v1.0.6
        version: 1.0.6
      - name: ack-sfn-controller.v1.0.5
        version: 1.0.5
      - name: ack-sfn-controller.v1.0.2
        version: 1.0.2
      - name: ack-sfn-controller.v1.0.1
        version: 1.0.1
      - name: ack-sfn-controller.v1.0.0
        version: 1.0.0
      - name: ack-sfn-controller.v0.1.3
        version: 0.1.3
      - name: ack-sfn-controller.v0.1.2
        version: 0.1.2
      - name: ack-sfn-controller.v0.1.1
        version: 0.1.1
      - name: ack-sfn-controller.v0.1.0
        version: 0.1.0
      - name: ack-sfn-controller.v0.0.19
        version: 0.0.19
      - name: ack-sfn-controller.v0.0.18
        version: 0.0.18
      - name: ack-sfn-controller.v0.0.17
        version: 0.0.17
      - name: ack-sfn-controller.v0.0.16
        version: 0.0.16
      - name: ack-sfn-controller.v0.0.15
        version: 0.0.15
      - name: ack-sfn-controller.v0.0.14
        version: 0.0.14
      - name: ack-sfn-controller.v0.0.13
        version: 0.0.13
      - name: ack-sfn-controller.v0.0.12
        version: 0.0.12
      - name: ack-sfn-controller.v0.0.11
        version: 0.0.11
      - name: ack-sfn-controller.v0.0.10
        version: 0.0.10
      - name: ack-sfn-controller.v0.0.9
        version: 0.0.9
      - name: ack-sfn-controller.v0.0.8
        version: 0.0.8
      - name: ack-sfn-controller.v0.0.7
        version: 0.0.7
      - name: ack-sfn-controller.v0.0.6
        version: 0.0.6
      - name: ack-sfn-controller.v0.0.5
        version: 0.0.5
      name: alpha
    defaultChannel: alpha
    packageName: ack-sfn-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ses-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ses-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ses-controller:1.2.0
          createdAt: "2025-11-29T04:02:30Z"
          description: AWS SES controller is a service controller for managing SES
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConfigurationSet represents the state of an AWS ses ConfigurationSet
              resource.
            displayName: ConfigurationSet
            kind: ConfigurationSet
            name: configurationsets.ses.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Simple Email Service (SES) resources in AWS from within your Kubernetes cluster.

          **About Amazon SES**

          Amazon Simple Email Service (SES) is an email platform that provides an easy, cost-effective way for you to send and receive email using your own email addresses and domains.
          For example, you can send marketing emails such as special offers, transactional emails such as order confirmations, and other types of correspondence such as newsletters. When you use Amazon SES to receive mail, you can develop software solutions such as email autoresponders, email unsubscribe systems, and applications that generate customer support tickets from incoming emails.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SES
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ses
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SES Developer Resources
          url: https://aws.amazon.com/ses/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ses maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ses-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ses-controller@sha256:b083d3578565f7503e887ea1207031a9fe776c4341d8aeb977b88d4b2e841bbc
        version: 1.2.0
      entries:
      - name: ack-ses-controller.v1.2.0
        version: 1.2.0
      - name: ack-ses-controller.v1.1.2
        version: 1.1.2
      - name: ack-ses-controller.v1.1.1
        version: 1.1.1
      - name: ack-ses-controller.v1.1.0
        version: 1.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-ses-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/confidential-containers
    name: trustee-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trustee-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Security
          containerImage: registry.redhat.io/build-of-trustee/trustee-rhel9-operator@sha256:04a30e2c2f9010a38a20270fdbac09445bb28d46a67126d0b74396ae492ccea2
          createdAt: "2024-06-07T10:06:06Z"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: trustee-operator-system
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/trustee-operator
          support: Confidential Containers Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KbsConfig is the Schema for the kbsconfigs API
            displayName: Kbs Config
            kind: KbsConfig
            name: kbsconfigs.confidentialcontainers.org
            version: v1alpha1
          - kind: TrusteeConfig
            name: trusteeconfigs.confidentialcontainers.org
            version: v1alpha1
        description: Remote attestation operator for confidential containers
        displayName: Red Hat build of Trustee
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trustee
        - Confidential Computing
        - Attestation
        links:
        - name: Red Hat build of Trustee
          url: https://github.com/openshift/trustee-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
          url: https://github.com/confidential-containers
        relatedImages:
        - registry.redhat.io/build-of-trustee/trustee-rhel9@sha256:da30d5c78cba2fa4b595487c500ffefededea4ff2f4e9ee4d8bdb7b13d8aba40
        - registry.redhat.io/build-of-trustee/trustee-operator-bundle@sha256:2f72205cf81cd26e0c4d7b159e72f567e84e69596aaff92bbf52bdfd2d7b9dd4
        - registry.redhat.io/build-of-trustee/trustee-rhel9-operator@sha256:04a30e2c2f9010a38a20270fdbac09445bb28d46a67126d0b74396ae492ccea2
        version: 1.0.0
      entries:
      - name: trustee-operator.v1.0.0
        version: 1.0.0
      - name: trustee-operator.v0.4.2
        version: 0.4.2
      - name: trustee-operator.v0.4.1
        version: 0.4.1
      - name: trustee-operator.v0.4.0
        version: 0.4.0
      - name: trustee-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: trustee-operator
    provider:
      name: Red Hat
      url: https://github.com/confidential-containers
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: eap
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eap-operator.v3.2.8
      currentCSVDesc:
        annotations:
          capabilities: Seamless Upgrades
          categories: Application Runtime
          certified: "false"
          containerImage: registry.redhat.io/jboss-eap/eap-rhel9-operator@sha256:8d10a86d97696603ef612672a65240679a06f8f4dee25f82d1bf5f69132760b1
          createdAt: "2025-07-10T14:38:00Z"
          description: Operator that creates and manages Java applications running
            on JBoss EAP.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat JBoss Enterprise Application
            Platform", "Red Hat Runtimes", "Red Hat Integration", "Red Hat Process
            Automation"]'
          repository: https://github.com/wildfly/wildfly-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An application running on EAP application runtime.
            displayName: WildFlyServer
            kind: WildFlyServer
            name: wildflyservers.wildfly.org
            version: v1alpha1
        description: "# Red Hat JBoss Enterprise Application Platform (JBoss EAP)\n\nRed
          Hat® JBoss® Enterprise Application Platform (JBoss EAP) delivers enterprise-grade
          security, performance, and scalability in any environment.  Some features
          of JBoss EAP are:\n\n**Optimized for cloud and containers**: with simplified
          deployment and full Jakarta EE performance for applications in any environment.\n\n**Lightweight,
          flexible architecture**: which is well-suited for microservices and traditional
          applications.\n\n**Support and standardize microservices development**:
          With the JBoss Enterprise Application Platform expansion pack that supports
          Eclipse MicroProfile application programming interfaces (APIs).\n\n# JBoss
          EAP Operator\nOperators are software components that extend the Kubernetes
          API to customize how to manage applications and their components.\n\nThe
          JBoss EAP Operator facilitates the deployment and management of JBoss EAP
          on container orchestration platforms such as Red Hat OpenShift. The operator
          acts as an automated management tool, simplifying the process of provisioning,
          scaling, and updating JBoss EAP applications.\n\n# JBoss EAP Operator capabilities\nThe
          JBoss EAP Operator deploys and manages multiple instances of the JBoss EAP
          Java application in a Red Hat OpenShift cluster. \n\n**Simplifies management**:
          Creates, configures, manages, and seamlessly upgrades instances of complex
          stateful applications. No more manual configuration, making management a
          breeze.\n\n**Efficient scaling**: Effortlessly scales the instances of your
          JBoss EAP Java application based on demand.\n\n**Faster updates**: Seamlessly
          updates, enabling you to roll out new operator features and bug fixes without
          downtime\n\n**Safe transaction recovery**: Provides safe transaction recovery
          in your application cluster by verifying all transactions are completed
          before scaling down the replicas and marking a pod as clean for termination.\n\n#
          Operator installation and configuration\nLet's walk through the steps to
          install the JBoss EAP Operator on your OpenShift Cluster and deploy your
          first example application:\n\n**Step 1: Install JBoss EAP from OperatorHub**\n1.
          Click Install in the JBoss EAP operator window.\n2. In the Install Operator
          window, for Installation mode, select All namespaces on the cluster The
          operator is available in openshift-operators namespace.\n\n**Step 2: Build
          an application image**\n\nThe JBoss EAP Operator deploys an application
          image. If you do not have your JBoss EAP application image built yet, you
          can use the following example to build the image using Helm Charts.\n\n1.
          In the main navigation, click the dropdown menu (perspective switcher) and
          select Developer.\n2. Click Add > Helm Chart.\n3. Search for \"JBoss EAP
          8\" (Provided by Red Hat) and create a new Helm Chart release.\n4. On the
          Release name text box, type “eap-application”. \n5. Switch to the YAML view
          and replace the existing code with the following:\n\n    ```\n    build:\n
          \     uri: https://github.com/jboss-eap-up-and-running/eap8-getting-started\n
          \   deploy:\n      enabled: false\n    ```\n\n6. Click Create to build the
          application image.\n\n    The application image is created with the name
          eap-application:latest.\n\n**Step 3: Deploy your application with JBoss
          EAP Operator**\n\n1. In the main navigation, click the dropdown menu (perspective
          switcher) and select Developer.\n2. Click Add > Operator Backed > WildFlyServer
          > Create.\n3. Switch to the YAML view and replace the existing code with
          the following:\n\n    ```\n    apiVersion: wildfly.org/v1alpha1\n    kind:
          WildFlyServer\n    metadata:\n      name: eap-application\n    spec:\n      applicationImage:
          eap-application:latest\n      replicas: 1\n    ```\n\n 4. Click Create to
          deploy the application with JBoss EAP Operator.\n"
        displayName: JBoss EAP
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eap
        - java
        - open source
        - application runtime
        links:
        - name: JBoss EAP Homepage
          url: https://www.redhat.com/en/technologies/jboss-middleware/application-platform
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/
        - name: Blog
          url: https://developers.redhat.com/blog/
        - name: Quickstart
          url: https://github.com/jboss-developer/jboss-eap-quickstarts
        - name: Red Hat Customer Portal
          url: https://access.redhat.com/support
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat, Inc.
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/jboss-eap/eap-operator-bundle@sha256:5bbe10f6e33106ee9ef33626e91d3283f7ff03d37a00c094d2004ad0b6323721
        - registry.redhat.io/jboss-eap/eap-rhel9-operator@sha256:8d10a86d97696603ef612672a65240679a06f8f4dee25f82d1bf5f69132760b1
        version: 3.2.8
      entries:
      - name: eap-operator.v3.2.8
        version: 3.2.8
      - name: eap-operator.v3.2.7
        version: 3.2.7
      - name: eap-operator.v3.2.6
        version: 3.2.6
      - name: eap-operator.v3.2.5
        version: 3.2.5
      - name: eap-operator.v3.2.4
        version: 3.2.4
      - name: eap-operator.v3.2.3
        version: 3.2.3
      - name: eap-operator.v3.2.2
        version: 3.2.2
      - name: eap-operator.v3.2.1
        version: 3.2.1
      - name: eap-operator.v3.2.0
        version: 3.2.0
      - name: eap-operator.v3.1.9
        version: 3.1.9
      - name: eap-operator.v3.1.8
        version: 3.1.8
      - name: eap-operator.v3.1.7
        version: 3.1.7
      - name: eap-operator.v3.1.6
        version: 3.1.6
      - name: eap-operator.v3.1.5
        version: 3.1.5
      - name: eap-operator.v3.1.4
        version: 3.1.4
      - name: eap-operator.v3.1.3
        version: 3.1.3
      - name: eap-operator.v3.1.2
        version: 3.1.2
      - name: eap-operator.v3.1.1
        version: 3.1.1
      - name: eap-operator.v3.1.0
        version: 3.1.0
      - name: eap-operator.v3.0.2
        version: 3.0.2
      - name: eap-operator.v3.0.1
        version: 3.0.1
      - name: eap-operator.v3.0.0
        version: 3.0.0
      - name: eap-operator.v2.4.3
        version: 2.4.3
      - name: eap-operator.v2.4.2
        version: 2.4.2
      - name: eap-operator.v2.4.1
        version: 2.4.1
      - name: eap-operator.v2.4.0
        version: 2.4.0
      - name: eap-operator.v2.3.10
        version: 2.3.10
      - name: eap-operator.v2.3.9
        version: 2.3.9
      - name: eap-operator.v2.3.8
        version: 2.3.8
      - name: eap-operator.v2.3.7
        version: 2.3.7
      - name: eap-operator.v2.3.6
        version: 2.3.6
      - name: eap-operator.v2.3.5
        version: 2.3.5
      - name: eap-operator.v2.3.4
        version: 2.3.4
      - name: eap-operator.v2.3.3
        version: 2.3.3
      - name: eap-operator.v2.3.2
        version: 2.3.2
      - name: eap-operator.v2.3.1
        version: 2.3.1
      - name: eap-operator.v2.3.0
        version: 2.3.0
      - name: eap-operator.v2.2.2
        version: 2.2.2
      - name: eap-operator.v2.2.1
        version: 2.2.1
      - name: eap-operator.v2.2.0
        version: 2.2.0
      name: stable
    defaultChannel: stable
    packageName: eap
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: gatekeeper-operator-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gatekeeper-operator-product.v3.15.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:8b43248aed06563e06f7a0347ff1c45fa5892e3a9adb2b5c363962a0b152eff0
          createdAt: 13 Mar 2025, 17:07
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: <3.15.4
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: Gatekeeper allows administrators to detect and reject non-compliant
          commits to an infrastructure-as-code system's source-of-truth. This strengthens
          compliance efforts and prevents a bad state from slowing down the organization.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:96b77663961daea3a336b97e34e9412281bfb2727854dc970a69edd029b9af85
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:8b43248aed06563e06f7a0347ff1c45fa5892e3a9adb2b5c363962a0b152eff0
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:29690144667b3753a7e76095e136d6fc42325270e7b9f22f97dfd411439e9f54
        version: 3.15.4
      entries:
      - name: gatekeeper-operator-product.v3.15.4
        version: 3.15.4
      - name: gatekeeper-operator-product.v3.15.3
        version: 3.15.3
      - name: gatekeeper-operator-product.v3.15.2
        version: 3.15.2
      - name: gatekeeper-operator-product.v3.15.1
        version: 3.15.1
      - name: gatekeeper-operator-product.v3.15.1-0.1725401534.p
        version: 3.15.1+0.1725401534.p
      - name: gatekeeper-operator-product.v3.15.1-0.1726639477.p
        version: 3.15.1+0.1726639477.p
      - name: gatekeeper-operator-product.v3.15.1-0.1727189912.p
        version: 3.15.1+0.1727189912.p
      name: "3.15"
    - currentCSV: gatekeeper-operator-product.v3.17.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3c027ec78398df0a8fc09eb79e222a9508b4f18154d1e1b477d4f156181ae51a
          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: "true"
          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.skipRange: <3.17.3
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:5170255ecd45b9bb7a70abec0f6eeb0518bbc2871de759e468dd61a80261c0ad
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:e44078fc6073a79168ed52922b370773b451d69bf335aeb91d26a1462df21a9b
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3c027ec78398df0a8fc09eb79e222a9508b4f18154d1e1b477d4f156181ae51a
        version: 3.17.3
      entries:
      - name: gatekeeper-operator-product.v3.17.3
        version: 3.17.3
      - name: gatekeeper-operator-product.v3.17.2
        version: 3.17.2
      - name: gatekeeper-operator-product.v3.17.1
        version: 3.17.1
      - name: gatekeeper-operator-product.v3.17.0
        version: 3.17.0
      name: "3.17"
    - currentCSV: gatekeeper-operator-product.v3.18.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:0803b7219ceff7aa676488eeba58607a19c9c18a2bb8eae8b3b16cfec411cb6e
          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: "true"
          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.skipRange: <3.18.1
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:9a3f5b6c403fb84c9cb93c9d7cf902c80990196983607c8ca568d4b558938e17
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:49726cb2702441305e8047b24054575170fb595cfe5ebf815cdbfdaa957b02f4
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:0803b7219ceff7aa676488eeba58607a19c9c18a2bb8eae8b3b16cfec411cb6e
        version: 3.18.1
      entries:
      - name: gatekeeper-operator-product.v3.18.1
        version: 3.18.1
      - name: gatekeeper-operator-product.v3.18.0
        version: 3.18.0
      name: "3.18"
    - currentCSV: gatekeeper-operator-product.v3.19.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:583d63090eccf767cd3a1cc153a995c6102e02a49aee1579edc7645e2aca1202
          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: "true"
          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.skipRange: <3.19.1
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:68fe21212c54efd1c7a1e6f68e554722ac7cb8ffc3f5d48d608ebcc0ac8be921
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:60ee347425c6cfb36f0e1e834b33cbb3d77aa2d6c89ac513216d0b9fc55d4b52
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:583d63090eccf767cd3a1cc153a995c6102e02a49aee1579edc7645e2aca1202
        version: 3.19.1
      entries:
      - name: gatekeeper-operator-product.v3.19.1
        version: 3.19.1
      - name: gatekeeper-operator-product.v3.19.0
        version: 3.19.0
      name: "3.19"
    - currentCSV: gatekeeper-operator-product.v3.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
          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: "true"
          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.skipRange: <3.20.0
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Gatekeeper is the schema for the gatekeepers API. Gatekeeper contains configurations for the Gatekeeper operator,
              which deploys Open Policy Agent Gatekeeper, a policy engine that enforces policies through admission controller
              webhooks.
              See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:54da5a712ccab9d9cae230e8bdb97f292d9959b6589a8c58c6f41f13c5b7ee12
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:29417852e3e69233d1e7205a982023c14b98eac7f3f5ad0fc93a4e46d6197520
        version: 3.20.0
      entries:
      - name: gatekeeper-operator-product.v3.20.0
        version: 3.20.0
      name: "3.20"
    - currentCSV: gatekeeper-operator-product.v3.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
          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: "true"
          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.skipRange: <3.20.0
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Gatekeeper is the schema for the gatekeepers API. Gatekeeper contains configurations for the Gatekeeper operator,
              which deploys Open Policy Agent Gatekeeper, a policy engine that enforces policies through admission controller
              webhooks.
              See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:29417852e3e69233d1e7205a982023c14b98eac7f3f5ad0fc93a4e46d6197520
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:54da5a712ccab9d9cae230e8bdb97f292d9959b6589a8c58c6f41f13c5b7ee12
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
        version: 3.20.0
      entries:
      - name: gatekeeper-operator-product.v3.20.0
        version: 3.20.0
      - name: gatekeeper-operator-product.v3.19.1
        version: 3.19.1
      - name: gatekeeper-operator-product.v3.19.0
        version: 3.19.0
      - name: gatekeeper-operator-product.v3.18.0
        version: 3.18.0
      - name: gatekeeper-operator-product.v3.17.2
        version: 3.17.2
      - name: gatekeeper-operator-product.v3.17.1
        version: 3.17.1
      - name: gatekeeper-operator-product.v3.17.0
        version: 3.17.0
      - name: gatekeeper-operator-product.v3.15.1
        version: 3.15.1
      - name: gatekeeper-operator-product.v3.15.1-0.1725401534.p
        version: 3.15.1+0.1725401534.p
      - name: gatekeeper-operator-product.v3.15.1-0.1726639477.p
        version: 3.15.1+0.1726639477.p
      - name: gatekeeper-operator-product.v3.15.1-0.1727189912.p
        version: 3.15.1+0.1727189912.p
      name: stable
    defaultChannel: stable
    packageName: gatekeeper-operator-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Argo CD Community
      provider-url: ""
    name: argocd-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: argocd-operator.v0.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd-sample"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCDExport",
                "metadata": {
                  "name": "argocdexport-sample"
                },
                "spec": {
                  "argocd": "argocd-sample"
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd-sample"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "NamespaceManagement",
                "metadata": {
                  "name": "namespacemanagement-sample"
                },
                "spec": {
                  "managedBy": "argocd-ns"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/argoprojlabs/argocd-operator@sha256:0c697bdd14d2432c481db757507f5ea506b2aa97c944e50d72664dbb4fba047a
          createdAt: "2025-12-16T12:52:16Z"
          description: Argo CD is a declarative, GitOps continuous delivery tool for
            Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/argoproj-labs/argocd-operator
          support: Argo CD
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: An ApplicationSet is a group or set of Application resources.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: ArgoCDExport is the Schema for the argocdexports API
            displayName: Argo CDExport
            kind: ArgoCDExport
            name: argocdexports.argoproj.io
            version: v1alpha1
          - description: ArgoCD is the Schema for the argocds API
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: ArgoCD is the Schema for the argocds API
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: NamespaceManagement is the Schema for the namespacemanagements
              API
            displayName: Namespace Management
            kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfiguration is the Schema for the notificationsconfiguration
              API
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
        description: |
          ## Overview

          The Argo CD Operator manages the full lifecycle for [Argo CD](https://argoproj.github.io/argo-cd/) and it's
          components. The operator's goal is to automate the tasks required when operating an Argo CD cluster.

          Beyond installation, the operator helps to automate the process of upgrading, backing up and restoring as needed and
          remove the human as much as possible. In addition, the operator aims to provide deep insights into the Argo CD
          environment by configuring Prometheus and Grafana to aggregate, visualize and expose the metrics already exported by
          Argo CD.

          The operator aims to provide the following, and is a work in progress.

          * Easy configuration and installation of the Argo CD components with sane defaults to get up and running quickly.
          * Provide seamless upgrades to the Argo CD components.
          * Ability to back up and restore an Argo CD cluster from a point in time or on a recurring schedule.
          * Aggregate and expose the metrics for Argo CD and the operator itself using Prometheus and Grafana.
          * Autoscale the Argo CD components as necessary to handle variability in demand.

          ## Usage

          Deploy a basic Argo CD cluster by creating a new ArgoCD resource in the namespace where the operator is installed.

          ```
          apiVersion: argoproj.io/v1alpha1
          kind: ArgoCD
          metadata:
            name: example-argocd
          spec: {}
          ```

          ## Backup

          Backup the cluster above by creating a new ArgoCDExport resource in the namespace where the operator is installed.

          ```
          apiVersion: argoproj.io/v1alpha1
          kind: ArgoCDExport
          metadata:
            name: example-argocdexport
          spec:
            argocd: example-argocd
          ```

          See the [documentation](https://argocd-operator.readthedocs.io) and examples on
          [GitHub](https://github.com/argoproj-labs/argocd-operator) for more information.
        displayName: Argo CD
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - kubernetes
        links:
        - name: Argo CD Project
          url: https://argoproj.github.io/argo-cd/
        - name: Operator Documentation
          url: https://argocd-operator.readthedocs.io
        - name: Operator Source Code
          url: https://github.com/argoproj-labs/argocd-operator
        maintainers:
        - email: sghadi@redhat.com
          name: Siddhesh Ghadi
        maturity: alpha
        provider:
          name: Argo CD Community
        relatedImages:
        - quay.io/argoprojlabs/argocd-operator@sha256:0c697bdd14d2432c481db757507f5ea506b2aa97c944e50d72664dbb4fba047a
        - quay.io/community-operator-pipeline-prod/argocd-operator@sha256:dd18636316791e08e295b07cbcf8ce41d9c6a280f1008c70f2fecf6b6214c732
        version: 0.16.0
      entries:
      - name: argocd-operator.v0.16.0
        version: 0.16.0
      - name: argocd-operator.v0.15.0
        version: 0.15.0
      - name: argocd-operator.v0.14.1
        version: 0.14.1
      - name: argocd-operator.v0.14.0
        version: 0.14.0
      - name: argocd-operator.v0.13.0
        version: 0.13.0
      - name: argocd-operator.v0.12.0
        version: 0.12.0
      - name: argocd-operator.v0.11.0
        version: 0.11.0
      - name: argocd-operator.v0.10.1
        version: 0.10.1
      - name: argocd-operator.v0.10.0
        version: 0.10.0
      - name: argocd-operator.v0.9.1
        version: 0.9.1
      - name: argocd-operator.v0.9.0
        version: 0.9.0
      - name: argocd-operator.v0.8.0
        version: 0.8.0
      - name: argocd-operator.v0.7.0
        version: 0.7.0
      - name: argocd-operator.v0.5.0
        version: 0.5.0
      - name: argocd-operator.v0.4.0
        version: 0.4.0
      - name: argocd-operator.v0.3.0
        version: 0.3.0
      - name: argocd-operator.v0.2.1
        version: 0.2.1
      - name: argocd-operator.v0.2.0
        version: 0.2.0
      - name: argocd-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: argocd-operator
    provider:
      name: Argo CD Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: redhat-oadp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: oadp-operator.v1.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "DataProtectionApplication",
                "metadata": {
                  "name": "velero-sample"
                },
                "spec": {
                  "backupLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-east-1"
                        },
                        "credential": {
                          "key": "cloud",
                          "name": "cloud-credentials"
                        },
                        "default": true,
                        "objectStorage": {
                          "bucket": "my-bucket-name",
                          "prefix": "velero"
                        },
                        "provider": "aws"
                      }
                    }
                  ],
                  "configuration": {
                    "nodeAgent": {
                      "enable": true,
                      "uploaderType": "kopia"
                    },
                    "velero": {
                      "defaultPlugins": [
                        "openshift",
                        "aws",
                        "kubevirt",
                        "hypershift"
                      ],
                      "disableFsBackup": false
                    }
                  },
                  "snapshotLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-west-2"
                        },
                        "provider": "aws"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "DataProtectionTest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "oadp-operator"
                  },
                  "name": "dataprotectiontest-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminBackup",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-operator",
                    "app.kubernetes.io/instance": "nonadminbackup-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminbackup",
                    "app.kubernetes.io/part-of": "oadp-operator"
                  },
                  "name": "nonadminbackup-sample"
                },
                "spec": {
                  "backupSpec": {}
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminBackupStorageLocation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-nac",
                    "app.kubernetes.io/instance": "nonadminbackupstoragelocation-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminbackupstoragelocation",
                    "app.kubernetes.io/part-of": "oadp-nac"
                  },
                  "name": "nonadminbackupstoragelocation-sample"
                },
                "spec": {
                  "backupStorageLocationSpec": {
                    "config": {
                      "checksumAlgorithm": "",
                      "region": "eu-central-1"
                    },
                    "credential": {
                      "key": "default",
                      "name": "cloud-credentials"
                    },
                    "objectStorage": {
                      "bucket": "my-bucket",
                      "prefix": "nac-test"
                    },
                    "provider": "aws"
                  }
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminBackupStorageLocationRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-nac",
                    "app.kubernetes.io/instance": "nonadminbackupstoragelocationrequest-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminbackupstoragelocationrequest",
                    "app.kubernetes.io/part-of": "oadp-nac"
                  },
                  "name": "nonadminbackupstoragelocationrequest-sample"
                },
                "spec": {
                  "approvalDecision": "pending"
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminDownloadRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "oadp-nac"
                  },
                  "name": "nonadmindownloadrequest-sample"
                },
                "spec": {
                  "target": {
                    "kind": "BackupLog",
                    "name": "non-admin-backup-name"
                  }
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminRestore",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-nac",
                    "app.kubernetes.io/instance": "nonadminrestore-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminrestore",
                    "app.kubernetes.io/part-of": "oadp-nac"
                  },
                  "name": "nonadminrestore-sample"
                },
                "spec": {
                  "restoreSpec": {
                    "backupName": "nonadminbackup-sample"
                  }
                }
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "BackupStorageLocation",
                "metadata": {
                  "name": "backupstoragelocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DeleteBackupRequest",
                "metadata": {
                  "name": "deletebackuprequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DownloadRequest",
                "metadata": {
                  "name": "downloadrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeBackup",
                "metadata": {
                  "name": "podvolumebackup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeRestore",
                "metadata": {
                  "name": "podvolumerestore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Schedule",
                "metadata": {
                  "name": "schedule",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "ServerStatusRequest",
                "metadata": {
                  "name": "serverstatusrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "VolumeSnapshotLocation",
                "metadata": {
                  "name": "volumesnapshotlocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: |
            Cloud Provider,Developer Tools,Modernization & Migration,OpenShift Optional,Storage
          certified: "false"
          containerImage: registry.redhat.io/oadp/oadp-rhel9-operator@sha256:08676a3f8eaa6851d3dd16fea051220eda9518f8669b327bc99d24facf5b226c
          createdAt: "2025-09-19T14:11:12Z"
          description: OADP (OpenShift API for Data Protection) operator sets up and
            installs Data Protection Applications on the OpenShift platform.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.4.0 <1.5.3'
          operatorframework.io/suggested-namespace: openshift-adp
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/oadp/oadp-mustgather-rhel9@sha256:ee04dce0b5be78b40debfa96c20d6c851f4486e026db539fc27eec369bc329d6
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/oadp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A backup repository is an indicator of a connection from
              the restic/kopia server to the backupstoragelocation.
            displayName: BackupRepository
            kind: BackupRepository
            name: backuprepositories.velero.io
            version: v1
          - description: Backup is a Velero resource that represents the capture of
              Kubernetes cluster state at a point in time (API objects and associated
              volume state).
            displayName: Backup
            kind: Backup
            name: backups.velero.io
            version: v1
          - description: BackupStorageLocation represents an object storage location
              (such as Amazon S3 Bucket) where Velero stores backup objects.
            displayName: BackupStorageLocation
            kind: BackupStorageLocation
            name: backupstoragelocations.velero.io
            version: v1
          - description: The CloudStorage API automates the creation of a bucket for
              object storage.
            displayName: Cloud Storage
            kind: CloudStorage
            name: cloudstorages.oadp.openshift.io
            version: v1alpha1
          - description: DataDownload represents a data download of a volume snapshot.
              There is one DataDownload created per volume to be restored.
            displayName: DataDownload
            kind: DataDownload
            name: datadownloads.velero.io
            version: v2alpha1
          - description: DataProtectionApplication represents configuration to install
              a data protection application to safely backup and restore, perform
              disaster recovery and migrate Kubernetes cluster resources and persistent
              volumes.
            displayName: Data Protection Application
            kind: DataProtectionApplication
            name: dataprotectionapplications.oadp.openshift.io
            version: v1alpha1
          - description: DataProtectionTest is the Schema for the dataprotectiontests
              API
            displayName: Data Protection Test
            kind: DataProtectionTest
            name: dataprotectiontests.oadp.openshift.io
            version: v1alpha1
          - description: DataUpload acts as the protocol between data mover plugins
              and data mover controller for the datamover backup operation
            displayName: DataUpload
            kind: DataUpload
            name: datauploads.velero.io
            version: v2alpha1
          - description: DeleteBackupRequest is a request to delete one or more backups.
            displayName: DeleteBackupRequest
            kind: DeleteBackupRequest
            name: deletebackuprequests.velero.io
            version: v1
          - description: DownloadRequest is a request to download an artifact from
              object storage such as a backup log file.
            displayName: DownloadRequest
            kind: DownloadRequest
            name: downloadrequests.velero.io
            version: v1
          - description: NonAdminBackup is the Schema for the nonadminbackups API
            displayName: Non Admin Backup
            kind: NonAdminBackup
            name: nonadminbackups.oadp.openshift.io
            version: v1alpha1
          - description: NonAdminBackupStorageLocationRequest is the Schema for the
              nonadminbackupstoragelocationrequests API
            displayName: Non Admin BackupStorageLocationRequest
            kind: NonAdminBackupStorageLocationRequest
            name: nonadminbackupstoragelocationrequests.oadp.openshift.io
            version: v1alpha1
          - description: NonAdminBackupStorageLocation is the Schema for the nonadminbackupstoragelocations
              API
            displayName: Non Admin BackupStorageLocation
            kind: NonAdminBackupStorageLocation
            name: nonadminbackupstoragelocations.oadp.openshift.io
            version: v1alpha1
          - kind: NonAdminDownloadRequest
            name: nonadmindownloadrequests.oadp.openshift.io
            version: v1alpha1
          - description: NonAdminRestore is the Schema for the nonadminrestores API
            displayName: Non Admin Restore
            kind: NonAdminRestore
            name: nonadminrestores.oadp.openshift.io
            version: v1alpha1
          - description: A velero pod volume backup is a restic backup of persistent
              volumes attached to a running pod.
            displayName: PodVolumeBackup
            kind: PodVolumeBackup
            name: podvolumebackups.velero.io
            version: v1
          - description: A velero pod volume restore is a restic restore of persistent
              volumes attached to a running pod.
            displayName: PodVolumeRestore
            kind: PodVolumeRestore
            name: podvolumerestores.velero.io
            version: v1
          - description: Restore is a Velero resource that represents the application
              of resources from a Velero backup to a target Kubernetes cluster.
            displayName: Restore
            kind: Restore
            name: restores.velero.io
            version: v1
          - description: Schedule is a Velero resource that represents a pre-scheduled
              or periodic Backup that should be run.
            displayName: Schedule
            kind: Schedule
            name: schedules.velero.io
            version: v1
          - description: ServerStatusRequest is a request to access current status
              information about the Velero server.
            displayName: ServerStatusRequest
            kind: ServerStatusRequest
            name: serverstatusrequests.velero.io
            version: v1
          - description: VolumeSnapshotLocation is a location where Velero stores
              volume snapshots.
            displayName: VolumeSnapshotLocation
            kind: VolumeSnapshotLocation
            name: volumesnapshotlocations.velero.io
            version: v1
        description: |
          **OpenShift API for Data Protection (OADP)** operator sets up and installs
          Velero on the OpenShift platform, allowing users to backup and restore
          applications.

          Backup and restore Kubernetes resources and internal images, at the
          granularity of a namespace, using a version of Velero appropriate for
          the installed version of OADP.

          OADP backs up Kubernetes objects and internal images by saving them as
          an archive file on object storage. OADP backs up persistent volumes
          (PVs) by creating snapshots with the native cloud snapshot API or with
          the Container Storage Interface (CSI). For cloud providers that do not
          support snapshots, OADP backs up resources and PV data with Restic or Kopia.

          * [Installing OADP for application backup and restore][install-doc]

          * [Installing OADP on a ROSA cluster and using STS, please follow the Getting Started Steps 1-3 in order to obtain the role ARN needed for using the standardized STS configuration flow via OLM][rosa-sts-doc]

          * [Frequently Asked Questions][faq-doc]

          [install-doc]: https://docs.openshift.com/container-platform/latest/backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.html
          [rosa-sts-doc]: https://mobb.ninja/docs/misc/oadp/rosa-sts/
          [faq-doc]: https://access.redhat.com/articles/5456281
        displayName: OADP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - disaster backup
        - disaster recovery
        - disaster restore
        - disaster
        - backup
        - restore
        - backup automation
        - recovery
        - data protection
        - data management
        - data
        - protection
        - management
        - application resilience
        - resilience
        - velero
        - openshift
        - oadp
        - cloud-native
        - replication
        - kopia
        - restic
        - network file system
        - nfs
        - simple cloud storage
        - s3
        - minio
        - cloud storage
        - data foundation
        - ceph
        - csi
        - container storage interface
        links:
        - name: OADP Operator
          url: https://github.com/openshift/oadp-operator
        maintainers:
        - email: oadp-maintainers@redhat.com
          name: OADP Operator maintainers
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/oadp/oadp-velero-plugin-for-gcp-rhel9@sha256:f1ebdaac4359d96d524ac1bf36f5b0b3bcf7d1bbb7299bf8d6daa55dc2bd2c17
        - registry.redhat.io/oadp/oadp-operator-bundle@sha256:d998d58f1170bc7ee9d9c81f4bbba50ac1f65e8fe60fe81cd74166beff6f93c4
        - registry.redhat.io/oadp/oadp-non-admin-rhel9@sha256:71fe65fdaf632c8f51db7c5ca1692f0fec79304e68114a91541b38f4207e70db
        - registry.redhat.io/oadp/oadp-velero-plugin-for-legacy-aws-rhel9@sha256:50262b769de92249219dddb3a1ffc37cf187cd8e76a1f912459e8f1bb86f4c84
        - registry.redhat.io/oadp/oadp-velero-plugin-for-microsoft-azure-rhel9@sha256:c2dabbda67d47c43c323d7790da7e091fb9715d2e166ebfc14e2e026745d4b6f
        - registry.redhat.io/oadp/oadp-velero-plugin-rhel9@sha256:9b888c75a1ddf274b1f0aa053ddbbc9acc3270417712456ffa29ef81a883b38a
        - registry.redhat.io/oadp/oadp-velero-rhel9@sha256:dd5897b1579599cfa8d8a03a1c8d3cf68e3927c4ba5dee4e33c2a2d4c9e6ed89
        - registry.redhat.io/oadp/oadp-rhel9-operator@sha256:08676a3f8eaa6851d3dd16fea051220eda9518f8669b327bc99d24facf5b226c
        - registry.redhat.io/oadp/oadp-velero-plugin-for-aws-rhel9@sha256:2a099649d3d7101a0b6dff9f6372bc76903ba6ecb6578dbeef8a8b3853f48026
        - registry.redhat.io/oadp/oadp-kubevirt-velero-plugin-rhel9@sha256:77d6057b1783872ec65d7d6a88d8a1212c38aacc982c7efd46ed2eb77b5e9e70
        - registry.redhat.io/oadp/oadp-hypershift-velero-plugin-rhel9@sha256:f8798364f94bb1bf4db264b0439c5a280b40cafa408c47b4160d9cc9c5d87e53
        - registry.redhat.io/oadp/oadp-mustgather-rhel9@sha256:ee04dce0b5be78b40debfa96c20d6c851f4486e026db539fc27eec369bc329d6
        version: 1.5.3
      entries:
      - name: oadp-operator.v1.5.3
        version: 1.5.3
      - name: oadp-operator.v1.5.2
        version: 1.5.2
      - name: oadp-operator.v1.5.1
        version: 1.5.1
      - name: oadp-operator.v1.5.0
        version: 1.5.0
      name: stable
    defaultChannel: stable
    packageName: redhat-oadp-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: container-security-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: container-security-operator.v3.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "secscan.quay.redhat.com/v1alpha1",
                "kind": "ImageManifestVuln",
                "metadata": {
                  "selfLink": "/apis/secscan.quay.redhat.com/v1alpha1/namespaces/openshift-cluster-version/imagemanifestvulns/sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18",
                  "resourceVersion": "14565395",
                  "name": "sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18",
                  "uid": "3f16a188-e69a-406c-aa06-df340195409c",
                  "creationTimestamp": "2021-03-17T12:07:16Z",
                  "generation": 2,
                  "managedFields": [
                    {
                      "apiVersion": "secscan.quay.redhat.com/v1alpha1",
                      "fieldsType": "FieldsV1",
                      "fieldsV1": {
                        "f:metadata": {
                          "f:labels": {
                            ".": {},
                            "f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6": {}
                          }
                        },
                        "f:spec": {
                          ".": {},
                          "f:features": {},
                          "f:image": {},
                          "f:manifest": {}
                        },
                        "f:status": {
                          ".": {},
                          "f:affectedPods": {
                            ".": {},
                            "f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6": {}
                          },
                          "f:fixableCount": {},
                          "f:highCount": {},
                          "f:highestSeverity": {},
                          "f:lastUpdate": {},
                          "f:lowCount": {},
                          "f:mediumCount": {}
                        }
                      },
                      "manager": "security-labeller",
                      "operation": "Update",
                      "time": "2021-03-17T13:07:20Z"
                    }
                  ],
                  "namespace": "openshift-cluster-version",
                  "labels": {
                    "openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6": "true"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:447e05859134a0455ca55f8aae16c8a27ce06af4c18c191b41f6339df553f1bf
          createdAt: 2021-11-02 11:11 UTC
          description: Identify image vulnerabilities in Kubernetes pods
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Quay Container Security Operator (CSO) brings Quay and Clair
          metadata to Kubernetes / OpenShift. Starting with vulnerability information
          the scope will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Quay Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Quay Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:246712ce23cdd590ff83d84e9800b4ed761886ed5bab9f9cda4125a5d930e7e5
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:447e05859134a0455ca55f8aae16c8a27ce06af4c18c191b41f6339df553f1bf
        version: 3.4.7
      entries:
      - name: container-security-operator.v3.4.7
        version: 3.4.7
      name: quay-v3.4
    - currentCSV: container-security-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"secscan.quay.redhat.com/v1alpha1\",\n
            \   \"kind\": \"ImageManifestVuln\",\n    \"metadata\": {\n      \"selfLink\":
            \"/apis/secscan.quay.redhat.com/v1alpha1/namespaces/openshift-cluster-version/imagemanifestvulns/sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18\",\n
            \     \"resourceVersion\": \"14565395\",\n      \"name\": \"sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18\",\n
            \     \"uid\": \"3f16a188-e69a-406c-aa06-df340195409c\",\n      \"creationTimestamp\":
            \"2021-03-17T12:07:16Z\",\n      \"generation\": 2,\n      \"managedFields\":
            [\n        {\n          \"apiVersion\": \"secscan.quay.redhat.com/v1alpha1\",\n
            \         \"fieldsType\": \"FieldsV1\",\n          \"fieldsV1\": {\n            \"f:metadata\":
            {\n              \"f:labels\": {\n                \".\": {},\n                \"f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6\":
            {}\n              }\n            },\n            \"f:spec\": {\n              \".\":
            {},\n              \"f:features\": {},\n              \"f:image\": {},\n
            \             \"f:manifest\": {}\n            },\n            \"f:status\":
            {\n              \".\": {},\n              \"f:affectedPods\": {\n                \".\":
            {},\n                \"f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6\":
            {}\n              },\n              \"f:fixableCount\": {},\n              \"f:highCount\":
            {},\n              \"f:highestSeverity\": {},\n              \"f:lastUpdate\":
            {},\n              \"f:lowCount\": {},\n              \"f:mediumCount\":
            {}\n            }\n          },\n          \"manager\": \"security-labeller\",\n
            \         \"operation\": \"Update\",\n          \"time\": \"2021-03-17T13:07:20Z\"\n
            \       }\n      ],\n      \"namespace\": \"openshift-cluster-version\",\n
            \     \"labels\": {\n        \"openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6\":
            \"true\"\n      }\n    },\n    \"spec\": {\n      \"features\": [\n        {\n
            \         \"name\": \"musl\",\n          \"namespaceName\": \"alpine:v3.14\",\n
            \         \"version\": \"1.2.2-r3\",\n          \"versionformat\": \"dpkg\",\n
            \         \"vulnerabilities\": [\n            {\n              \"fixedby\":
            \"1.2.2_pre2-r0\",\n              \"link\": \"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-28928\",\n
            \             \"metadata\": \"{\\\"NVD\\\": {\\\"CVSSv3\\\": {\\\"Vectors\\\":
            \\\"CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\\\", \\\"ImpactScore\\\":
            3.6, \\\"Score\\\": 5.5, \\\"ExploitabilityScore\\\": 1.8}, \\\"CVSSv2\\\":
            {\\\"Score\\\": 2.1, \\\"PublishedDateTime\\\": \\\"2020-11-24T18:15Z\\\",
            \\\"Vectors\\\": \\\"AV:L/AC:L/Au:N/C:N/I:N/A:P\\\"}}}\",\n              \"name\":
            \"CVE-2020-28928\",\n              \"namespaceName\": \"alpine:v3.14\",\n
            \             \"severity\": \"Low\"\n            }\n          ]\n        }\n
            \     ],\n      \"image\": \"quay.io/harishg/pruned-redhat-operators-index\",\n
            \     \"manifest\": \"sha256:19631c86642609254777ff59fc9e128aa5d0a94a7dbb504ef1fcfb2bbc6e486e\"\n
            \   }\n  }\n]    "
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:6b3581e62550d6a615d36eee6eaf4c89b9c35ba53cab8433bd93c68393a9d115
          createdAt: 2021-09-10 23:09 UTC
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.4.x <3.5.7'
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Quay Container Security Operator (CSO) brings Quay and Clair
          metadata to Kubernetes / OpenShift. Starting with vulnerability information
          the scope will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Quay Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Quay Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:68e766235bdcd8f3335e2ab6e09942d98b183b3e498abb65acab6481664d46ed
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:6b3581e62550d6a615d36eee6eaf4c89b9c35ba53cab8433bd93c68393a9d115
        version: 3.5.7
      entries:
      - name: container-security-operator.v3.5.7
        version: 3.5.7
      name: quay-v3.5
    - currentCSV: container-security-operator.v3.10.17
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:dfda85e3a3fc7900999028ea3df53635774ed11a1a90103edb3a86e0d028cb5d
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.7.x <3.10.17'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.10.17
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:b82090e9203982de62d995c18eed37838b8ebbb092195a7f58d02526fd04523e
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:dfda85e3a3fc7900999028ea3df53635774ed11a1a90103edb3a86e0d028cb5d
        version: 3.10.17
      entries:
      - name: container-security-operator.v3.10.17
        version: 3.10.17
      - name: container-security-operator.v3.10.16
        version: 3.10.16
      - name: container-security-operator.v3.10.15
        version: 3.10.15
      - name: container-security-operator.v3.10.14
        version: 3.10.14
      - name: container-security-operator.v3.10.13
        version: 3.10.13
      - name: container-security-operator.v3.10.12
        version: 3.10.12
      - name: container-security-operator.v3.10.11
        version: 3.10.11
      - name: container-security-operator.v3.10.10
        version: 3.10.10
      - name: container-security-operator.v3.10.9
        version: 3.10.9
      - name: container-security-operator.v3.10.8
        version: 3.10.8
      - name: container-security-operator.v3.10.7
        version: 3.10.7
      - name: container-security-operator.v3.10.6
        version: 3.10.6
      - name: container-security-operator.v3.10.5
        version: 3.10.5
      - name: container-security-operator.v3.10.4
        version: 3.10.4
      - name: container-security-operator.v3.10.3
        version: 3.10.3
      - name: container-security-operator.v3.10.2
        version: 3.10.2
      - name: container-security-operator.v3.10.1
        version: 3.10.1
      - name: container-security-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: container-security-operator.v3.11.13
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:3914389fd53c371627921298c5dc3564999d92bc720f27a240f74c034ebbf5ec
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.8.x <3.11.13'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.11.13
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:56db2fd54dbe982dde6a4558b664b19a676a8ac99bfbc8082d097cd6d71a03ea
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:3914389fd53c371627921298c5dc3564999d92bc720f27a240f74c034ebbf5ec
        version: 3.11.13
      entries:
      - name: container-security-operator.v3.11.13
        version: 3.11.13
      - name: container-security-operator.v3.11.12
        version: 3.11.12
      - name: container-security-operator.v3.11.11
        version: 3.11.11
      - name: container-security-operator.v3.11.10
        version: 3.11.10
      - name: container-security-operator.v3.11.9
        version: 3.11.9
      - name: container-security-operator.v3.11.8
        version: 3.11.8
      - name: container-security-operator.v3.11.7
        version: 3.11.7
      - name: container-security-operator.v3.11.6
        version: 3.11.6
      - name: container-security-operator.v3.11.5
        version: 3.11.5
      - name: container-security-operator.v3.11.4
        version: 3.11.4
      - name: container-security-operator.v3.11.3
        version: 3.11.3
      - name: container-security-operator.v3.11.2
        version: 3.11.2
      - name: container-security-operator.v3.11.1
        version: 3.11.1
      - name: container-security-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: container-security-operator.v3.12.13
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:e1e71444c0a0ac4672b56f2b3b84784958f86a72f9fcc53081c1dda3c3a22e88
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.9.x <3.12.13'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.12.13
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:53c387293b92691eb66ea73b1d29781cf275f01b4254c38e21620c0502987272
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:e1e71444c0a0ac4672b56f2b3b84784958f86a72f9fcc53081c1dda3c3a22e88
        version: 3.12.13
      entries:
      - name: container-security-operator.v3.12.13
        version: 3.12.13
      - name: container-security-operator.v3.12.12
        version: 3.12.12
      - name: container-security-operator.v3.12.11
        version: 3.12.11
      - name: container-security-operator.v3.12.10
        version: 3.12.10
      - name: container-security-operator.v3.12.9
        version: 3.12.9
      - name: container-security-operator.v3.12.8
        version: 3.12.8
      - name: container-security-operator.v3.12.7
        version: 3.12.7
      - name: container-security-operator.v3.12.6
        version: 3.12.6
      - name: container-security-operator.v3.12.5
        version: 3.12.5
      - name: container-security-operator.v3.12.4
        version: 3.12.4
      - name: container-security-operator.v3.12.3
        version: 3.12.3
      - name: container-security-operator.v3.12.2
        version: 3.12.2
      - name: container-security-operator.v3.12.1
        version: 3.12.1
      - name: container-security-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: container-security-operator.v3.13.10
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:953ded5fec3ac732a9c96f86ad5928457e58e86546aaa51488c524a4688011f3
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.10.x <3.13.10'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.13.10
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:953ded5fec3ac732a9c96f86ad5928457e58e86546aaa51488c524a4688011f3
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:c0a8c5f5454426844c43f8732ed512ab30b5d4bd3e799fa3f133670d0ea431d5
        version: 3.13.10
      entries:
      - name: container-security-operator.v3.13.10
        version: 3.13.10
      - name: container-security-operator.v3.13.9
        version: 3.13.9
      - name: container-security-operator.v3.13.8
        version: 3.13.8
      - name: container-security-operator.v3.13.7
        version: 3.13.7
      - name: container-security-operator.v3.13.6
        version: 3.13.6
      - name: container-security-operator.v3.13.5
        version: 3.13.5
      - name: container-security-operator.v3.13.4
        version: 3.13.4
      - name: container-security-operator.v3.13.3
        version: 3.13.3
      - name: container-security-operator.v3.13.2
        version: 3.13.2
      - name: container-security-operator.v3.13.1
        version: 3.13.1
      - name: container-security-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: container-security-operator.v3.14.5
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:c42487ccf098df3ec6dbeb5d409346bdd30e92781cf3ffea5fdb6dd0b196d0cf
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.11.x <3.14.5'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.14.5
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:c42487ccf098df3ec6dbeb5d409346bdd30e92781cf3ffea5fdb6dd0b196d0cf
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:46f8c0ea6e383b742ab9cdaed1c8f624c2cf405bb1ce39c0ea6977940d52de07
        version: 3.14.5
      entries:
      - name: container-security-operator.v3.14.5
        version: 3.14.5
      - name: container-security-operator.v3.14.4
        version: 3.14.4
      - name: container-security-operator.v3.14.3
        version: 3.14.3
      - name: container-security-operator.v3.14.2
        version: 3.14.2
      - name: container-security-operator.v3.14.1
        version: 3.14.1
      - name: container-security-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: container-security-operator.v3.15.2
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:81e929ec095f791a83310ee7fcda239d5c348ba69a3cf5adcf1b3a77c349ce77
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.12.x <3.15.2'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.15.2
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:e4ea95a86e77aa64da0b1800f00c2e0e598776cde7cfc7bb9941a60bac207ed9
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:81e929ec095f791a83310ee7fcda239d5c348ba69a3cf5adcf1b3a77c349ce77
        version: 3.15.2
      entries:
      - name: container-security-operator.v3.15.2
        version: 3.15.2
      - name: container-security-operator.v3.15.1
        version: 3.15.1
      - name: container-security-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: container-security-operator.v3.16.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel9@sha256:7eb56ea92c1db547702ef9e540b3dd8dcf5bcbfc866540c09652d9eaaf07e52f
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.13.x <3.16.0'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.16.0
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:e052fc307cfc1246983df50cd95970754d6cf955d0f9b56f8c384cd8f1c08be7
        - registry.redhat.io/quay/quay-container-security-operator-rhel9@sha256:7eb56ea92c1db547702ef9e540b3dd8dcf5bcbfc866540c09652d9eaaf07e52f
        version: 3.16.0
      entries:
      - name: container-security-operator.v3.16.0
        version: 3.16.0
      name: stable-3.16
    - currentCSV: container-security-operator.v3.6.10
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:641b80df8d7102d49a5dfd5b99245669f60393880a6f1bc8ba8450b88a640d96
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.3.x <3.6.10'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.6.10
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:aca3d91b7b9f8c1e8a1e0d045c42ba5f27444e0c1c0bc4a87c697b428c2fff78
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:641b80df8d7102d49a5dfd5b99245669f60393880a6f1bc8ba8450b88a640d96
        version: 3.6.10
      entries:
      - name: container-security-operator.v3.6.10
        version: 3.6.10
      - name: container-security-operator.v3.6.9
        version: 3.6.9
      - name: container-security-operator.v3.6.8
        version: 3.6.8
      - name: container-security-operator.v3.6.7
        version: 3.6.7
      - name: container-security-operator.v3.6.6
        version: 3.6.6
      - name: container-security-operator.v3.6.5
        version: 3.6.5
      - name: container-security-operator.v3.6.4
        version: 3.6.4
      - name: container-security-operator.v3.6.2
        version: 3.6.2
      - name: container-security-operator.v3.6.1
        version: 3.6.1
      - name: container-security-operator.v3.6.0
        version: 3.6.0
      name: stable-3.6
    - currentCSV: container-security-operator.v3.7.14
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:10736a06beb503b4eb73260a87a2cde9bd83353374ee0ac9e8dd0a6260cf2665
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.4.x <3.7.14'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.7.14
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:5af7a32da67d39e7a011672de333792e63604cbfee997c19a495fc759d2fd739
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:10736a06beb503b4eb73260a87a2cde9bd83353374ee0ac9e8dd0a6260cf2665
        version: 3.7.14
      entries:
      - name: container-security-operator.v3.7.14
        version: 3.7.14
      - name: container-security-operator.v3.7.13
        version: 3.7.13
      - name: container-security-operator.v3.7.12
        version: 3.7.12
      - name: container-security-operator.v3.7.11
        version: 3.7.11
      - name: container-security-operator.v3.7.10
        version: 3.7.10
      - name: container-security-operator.v3.7.9
        version: 3.7.9
      - name: container-security-operator.v3.7.8
        version: 3.7.8
      - name: container-security-operator.v3.7.7
        version: 3.7.7
      - name: container-security-operator.v3.7.6
        version: 3.7.6
      - name: container-security-operator.v3.7.5
        version: 3.7.5
      - name: container-security-operator.v3.7.4
        version: 3.7.4
      - name: container-security-operator.v3.7.3
        version: 3.7.3
      - name: container-security-operator.v3.7.2
        version: 3.7.2
      - name: container-security-operator.v3.7.1
        version: 3.7.1
      - name: container-security-operator.v3.7.0
        version: 3.7.0
      name: stable-3.7
    - currentCSV: container-security-operator.v3.8.15
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:108bd033543beb7cce077130c96f992c202f7a258229c239795f8f19e5fae5e5
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.5.x <3.8.15'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.8.15
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:74f0cf91e2feb60fe794f71b9f56fa8afc60e53379a0aef104701dd6692272e5
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:108bd033543beb7cce077130c96f992c202f7a258229c239795f8f19e5fae5e5
        version: 3.8.15
      entries:
      - name: container-security-operator.v3.8.15
        version: 3.8.15
      - name: container-security-operator.v3.8.14
        version: 3.8.14
      - name: container-security-operator.v3.8.13
        version: 3.8.13
      - name: container-security-operator.v3.8.12
        version: 3.8.12
      - name: container-security-operator.v3.8.11
        version: 3.8.11
      - name: container-security-operator.v3.8.10
        version: 3.8.10
      - name: container-security-operator.v3.8.9
        version: 3.8.9
      - name: container-security-operator.v3.8.8
        version: 3.8.8
      - name: container-security-operator.v3.8.7
        version: 3.8.7
      - name: container-security-operator.v3.8.6
        version: 3.8.6
      - name: container-security-operator.v3.8.5
        version: 3.8.5
      - name: container-security-operator.v3.8.4
        version: 3.8.4
      - name: container-security-operator.v3.8.3
        version: 3.8.3
      - name: container-security-operator.v3.8.2
        version: 3.8.2
      - name: container-security-operator.v3.8.1
        version: 3.8.1
      - name: container-security-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: container-security-operator.v3.9.17
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:42777c988fba76e80157675e5219246994552b7a685319ab67f4cb59c29f3d1f
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.9.17
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:00dc04b86ae7fd7dd37e9234ed2b4a1d0f0403993c153e197ac8b96233e95048
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:42777c988fba76e80157675e5219246994552b7a685319ab67f4cb59c29f3d1f
        version: 3.9.17
      entries:
      - name: container-security-operator.v3.9.17
        version: 3.9.17
      - name: container-security-operator.v3.9.16
        version: 3.9.16
      - name: container-security-operator.v3.9.15
        version: 3.9.15
      - name: container-security-operator.v3.9.14
        version: 3.9.14
      - name: container-security-operator.v3.9.13
        version: 3.9.13
      - name: container-security-operator.v3.9.12
        version: 3.9.12
      - name: container-security-operator.v3.9.11
        version: 3.9.11
      - name: container-security-operator.v3.9.10
        version: 3.9.10
      - name: container-security-operator.v3.9.9
        version: 3.9.9
      - name: container-security-operator.v3.9.8
        version: 3.9.8
      - name: container-security-operator.v3.9.7
        version: 3.9.7
      - name: container-security-operator.v3.9.6
        version: 3.9.6
      - name: container-security-operator.v3.9.5
        version: 3.9.5
      - name: container-security-operator.v3.9.4
        version: 3.9.4
      - name: container-security-operator.v3.9.3
        version: 3.9.3
      - name: container-security-operator.v3.9.2
        version: 3.9.2
      - name: container-security-operator.v3.9.1
        version: 3.9.1
      - name: container-security-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.16
    packageName: container-security-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CodeFlare
      provider-url: https://github.com/project-codeflare
    name: codeflare-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: codeflare-operator.v1.16.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: AI/Machine Learning, Big Data
          containerImage: quay.io/project-codeflare/codeflare-operator:v1.16.0
          createdAt: "2025-06-16T10:53:51Z"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/project-codeflare/codeflare-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AppWrapper
            name: appwrappers.workload.codeflare.dev
            version: v1beta2
        description: CodeFlare allows you to scale complex pipelines anywhere
        displayName: CodeFlare Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Pipelines
        - Scaling
        - App
        - Jobs
        links:
        - name: Codeflare Operator
          url: https://codeflare.dev/
        maintainers:
        - email: aasthana@redhat.com
          name: Anish Asthana
        - email: kpostlet@redhat.com
          name: Kevin Postlethwait
        - email: meyceoz@redhat.com
          name: Mustafa Eyceoz
        maturity: alpha
        provider:
          name: CodeFlare
          url: https://github.com/project-codeflare
        relatedImages:
        - quay.io/project-codeflare/codeflare-operator:v1.16.0
        - quay.io/community-operator-pipeline-prod/codeflare-operator@sha256:3dbd2b65d7841cc97c37db59ae8aff9991c4d0f0324c4391afd41c4de20c232a
        version: 1.16.0
      entries:
      - name: codeflare-operator.v1.16.0
        version: 1.16.0
      - name: codeflare-operator.v1.15.0
        version: 1.15.0
      - name: codeflare-operator.v1.14.0
        version: 1.14.0
      - name: codeflare-operator.v1.13.0
        version: 1.13.0
      - name: codeflare-operator.v1.12.0
        version: 1.12.0
      - name: codeflare-operator.v1.11.0
        version: 1.11.0
      - name: codeflare-operator.v1.10.0
        version: 1.10.0
      - name: codeflare-operator.v1.9.0
        version: 1.9.0
      - name: codeflare-operator.v1.8.0
        version: 1.8.0
      - name: codeflare-operator.v1.7.0
        version: 1.7.0
      - name: codeflare-operator.v1.6.0
        version: 1.6.0
      - name: codeflare-operator.v1.5.0
        version: 1.5.0
      - name: codeflare-operator.v1.4.4
        version: 1.4.4
      - name: codeflare-operator.v1.4.3
        version: 1.4.3
      - name: codeflare-operator.v1.4.2
        version: 1.4.2
      - name: codeflare-operator.v1.4.1
        version: 1.4.1
      - name: codeflare-operator.v1.4.0
        version: 1.4.0
      - name: codeflare-operator.v1.3.1
        version: 1.3.1
      - name: codeflare-operator.v1.3.0
        version: 1.3.0
      - name: codeflare-operator.v1.2.0
        version: 1.2.0
      - name: codeflare-operator.v1.1.0
        version: 1.1.0
      - name: codeflare-operator.v1.0.1
        version: 1.0.1
      - name: codeflare-operator.v1.0.0
        version: 1.0.0
      - name: codeflare-operator.v1.0.0-rc.4
        version: 1.0.0-rc.4
      - name: codeflare-operator.v1.0.0-rc.3
        version: 1.0.0-rc.3
      - name: codeflare-operator.v1.0.0-rc.2
        version: 1.0.0-rc.2
      - name: codeflare-operator.v1.0.0-rc.1
        version: 1.0.0-rc.1
      - name: codeflare-operator.v0.2.3
        version: 0.2.3
      - name: codeflare-operator.v0.2.2
        version: 0.2.2
      - name: codeflare-operator.v0.2.1
        version: 0.2.1
      - name: codeflare-operator.v0.2.0
        version: 0.2.0
      - name: codeflare-operator.v0.1.0
        version: 0.1.0
      - name: codeflare-operator.v0.0.6
        version: 0.0.6
      - name: codeflare-operator.v0.0.5
        version: 0.0.5
      - name: codeflare-operator.v0.0.4
        version: 0.0.4
      - name: codeflare-operator.v0.0.3
        version: 0.0.3
      - name: codeflare-operator.v0.0.2
        version: 0.0.2
      - name: codeflare-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: codeflare-operator
    provider:
      name: CodeFlare
      url: https://github.com/project-codeflare
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Infinidat
      provider-url: https://infinidat.com
    name: infinibox-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infinibox-operator-certified.v2.24.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csidriver.infinidat.com/v1alpha1",
                "kind": "InfiniboxCsiDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infinibox-operator-certified",
                    "app.kubernetes.io/instance": "infiniboxcsidriver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infiniboxcsidriver",
                    "app.kubernetes.io/part-of": "infinibox-operator-certified"
                  },
                  "name": "infiniboxcsidriver-sample"
                },
                "spec": {
                  "Ibox_Creds": [
                    {
                      "SecretName": "infinibox-creds",
                      "hostname": "ibox0000",
                      "inbound_secret": "0.0000000000000",
                      "inbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonout",
                      "outbound_secret": "0.0000000000001",
                      "outbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonin",
                      "password": "my-pool-admin-passwd",
                      "username": "my-pool-admin"
                    }
                  ],
                  "Infinibox_Protocol_Secrets": [
                    {
                      "SecretName": "infinibox-protocol-secret",
                      "iscsi": {
                        "network_space": "default_iscsi_space",
                        "useCHAP": "none"
                      },
                      "nfs": {
                        "network_space": "default_nas_space",
                        "nfs_export_permissions": ""
                      },
                      "nvme": {
                        "network_space": "default_nvme_space"
                      },
                      "preferred_auto_order": "fc,nvme,iscsi",
                      "storage_protocol": "fc"
                    }
                  ],
                  "autoUpdate": false,
                  "cleanupNFSPerms": false,
                  "controllerserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "controllerservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "createEvents": true,
                  "csiDriverName": "infinibox-csi-driver",
                  "csiDriverVersion": "v2.24.0",
                  "e2etesting": false,
                  "iboxHostNamingConvention": "",
                  "images": {
                    "attachersidecar": "registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d",
                    "attachersidecar_pull_policy": "IfNotPresent",
                    "csidriver": "registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec",
                    "csidriver_pull_policy": "Always",
                    "livenesssidecar": "registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f",
                    "livenesssidecar_pull_policy": "IfNotPresent",
                    "provisionersidecar": "registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327",
                    "provisionersidecar_pull_policy": "IfNotPresent",
                    "registrarsidecar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a",
                    "registrarsidecar_pull_policy": "IfNotPresent",
                    "resizersidecar": "registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d",
                    "resizersidecar_pull_policy": "IfNotPresent",
                    "snapshottersidecar": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d",
                    "snapshottersidecar_pull_policy": "IfNotPresent"
                  },
                  "instanceCount": 1,
                  "logLevel": "debug",
                  "nodeSelector": {
                    "kubernetes.io/os": "linux"
                  },
                  "nodeserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "nodeservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "protocolSecret": "",
                  "removeDomainName": false,
                  "replicaCount": 1,
                  "skipCredentialsCreation": false,
                  "volumeNamePrefix": "ibox"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
          createdAt: "2025-11-25T20:05:02Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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.skipRange: <2.24.0
          operatorframework.io/suggested-namespace: infinidat-csi
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/Infinidat/infinibox-csi-driver
          support: Infinidat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Iboxreplica
            name: iboxreplicas.csidriver.infinidat.com
            version: v1
          - kind: InfiniboxCsiDriver
            name: infiniboxcsidrivers.csidriver.infinidat.com
            version: v1alpha1
        description: "Infinidat InfiniBox Container Storage Interface (CSI) Driver
          is a\n    CNCF-compliant Kubernetes integration for InfiniBox storage systems,
          offering\n    advanced enterprise functionality for petabyte-scale Kubernetes
          deployments including\n    Red Hat OpenShift.\n \n## Features and Benefits\n
          \ \n* **Multi-protocol flexibility** - manage\n    Kubernetes Persistent
          Volumes attached via block and file protocols,\n    including Fibre Channel,
          iSCSI, and NFS, with all Kubernetes PV access modes\n    \n* **Multi-petabyte
          scalability** - support hundreds of thousands of PVs per InfiniBox\n    system
          and control multiple InfiniBox arrays within a single Kubernetes cluster\n
          \   \\ \n* **Advanced enterprise features** - manage native InfiniBox snapshots
          and\n    clones, including restoring from snapshots, and import PVs created
          outside of\n    InfiniBox CSI Driver\n  \n## Required Parameters\n  \n*
          `hostname` - IP address\n    or hostname of the InfiniBox management interface\n*
          `username` / `password` -\n    InfiniBox credentials\n* `SecretName` - secret
          name, to be used in the StorageClass\n    to define a specific InfiniBox
          for persistent volumes\n\n## Optional Parameters\n*\n    `inbound_user`
          / `inbound_secret` / `outbound_user` / `outbound_secret` - credentials \n
          \   for iSCSI CHAP authentication\n\n    \n## Installation Instructions\n
          \n1. Create *infinidat-csi* namespace to install operator into.\n    \n2.
          Delete the following *clusterrolebindings*, if they exist, before installing
          operator\n     * infinidat-csi-operator-infinidat-csi-attacher\n     * infinidat-csi-operator-infinidat-csi-controller
          \                    \n     * infinidat-csi-operator-infinidat-csi-driver
          \                    \n     * infinidat-csi-operator-infinidat-csi-node
          \                              \n     * infinidat-csi-operator-infinidat-csi-provisioner
          \                       \n     * infinidat-csi-operator-infinidat-csi-resizer
          \          \n     * infinidat-csi-operator-infinidat-csi-snapshotter \n
          \   \n3. Install Infinidat Infinibox CSI Driver - Operator (this) into the
          *infinidat-csi* namespace.\n    \n4. Apply the following Security Context
          Constraints to the created service accounts in the *infinidat-csi* \n    namespace\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    \n5. Recreate or edit any existing storage classes, pointing to the
          new namespace\n\n     \n6. If you choose a different namespace other than
          *infinidat-csi* you will need to edit the clusterrolebindings listed above
          to specify your custom namespace\n\n     \n7. Install an instance of Infinidat
          Driver into the *infinidat-csi* namespace"
        displayName: InfiniBox CSI Driver - Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - csi
        - nas
        - san
        - storage
        - infinidat
        - infinibox
        links:
        - name: Infinidat
          url: https://infinidat.com
        maintainers:
        - email: info@infinidat.com
          name: Infinidat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Infinidat
          url: https://infinidat.com
        relatedImages:
        - registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d
        - registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified@sha256:a6a63241d55cdb63e3072fd7e663f08eca9a46e64d73ff7159eafd48f92c2db0
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d
        - registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327
        - registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified-bundle@sha256:0eb6e7e06e18d83e4ddbd4fee4db440c5eb3552821954c1485b280f47ce4a743
        version: 2.24.0
      entries:
      - name: infinibox-operator-certified.v2.24.0
        version: 2.24.0
      name: alpha
    - currentCSV: infinibox-operator-certified.v2.24.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csidriver.infinidat.com/v1alpha1",
                "kind": "InfiniboxCsiDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infinibox-operator-certified",
                    "app.kubernetes.io/instance": "infiniboxcsidriver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infiniboxcsidriver",
                    "app.kubernetes.io/part-of": "infinibox-operator-certified"
                  },
                  "name": "infiniboxcsidriver-sample"
                },
                "spec": {
                  "Ibox_Creds": [
                    {
                      "SecretName": "infinibox-creds",
                      "hostname": "ibox0000",
                      "inbound_secret": "0.0000000000000",
                      "inbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonout",
                      "outbound_secret": "0.0000000000001",
                      "outbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonin",
                      "password": "my-pool-admin-passwd",
                      "username": "my-pool-admin"
                    }
                  ],
                  "Infinibox_Protocol_Secrets": [
                    {
                      "SecretName": "infinibox-protocol-secret",
                      "iscsi": {
                        "network_space": "default_iscsi_space",
                        "useCHAP": "none"
                      },
                      "nfs": {
                        "network_space": "default_nas_space",
                        "nfs_export_permissions": ""
                      },
                      "nvme": {
                        "network_space": "default_nvme_space"
                      },
                      "preferred_auto_order": "fc,nvme,iscsi",
                      "storage_protocol": "fc"
                    }
                  ],
                  "autoUpdate": false,
                  "cleanupNFSPerms": false,
                  "controllerserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "controllerservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "createEvents": true,
                  "csiDriverName": "infinibox-csi-driver",
                  "csiDriverVersion": "v2.24.0",
                  "e2etesting": false,
                  "iboxHostNamingConvention": "",
                  "images": {
                    "attachersidecar": "registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d",
                    "attachersidecar_pull_policy": "IfNotPresent",
                    "csidriver": "registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec",
                    "csidriver_pull_policy": "Always",
                    "livenesssidecar": "registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f",
                    "livenesssidecar_pull_policy": "IfNotPresent",
                    "provisionersidecar": "registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327",
                    "provisionersidecar_pull_policy": "IfNotPresent",
                    "registrarsidecar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a",
                    "registrarsidecar_pull_policy": "IfNotPresent",
                    "resizersidecar": "registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d",
                    "resizersidecar_pull_policy": "IfNotPresent",
                    "snapshottersidecar": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d",
                    "snapshottersidecar_pull_policy": "IfNotPresent"
                  },
                  "instanceCount": 1,
                  "logLevel": "debug",
                  "nodeSelector": {
                    "kubernetes.io/os": "linux"
                  },
                  "nodeserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "nodeservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "protocolSecret": "",
                  "removeDomainName": false,
                  "replicaCount": 1,
                  "skipCredentialsCreation": false,
                  "volumeNamePrefix": "ibox"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
          createdAt: "2025-11-25T20:05:02Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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.skipRange: <2.24.0
          operatorframework.io/suggested-namespace: infinidat-csi
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/Infinidat/infinibox-csi-driver
          support: Infinidat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Iboxreplica
            name: iboxreplicas.csidriver.infinidat.com
            version: v1
          - kind: InfiniboxCsiDriver
            name: infiniboxcsidrivers.csidriver.infinidat.com
            version: v1alpha1
        description: "Infinidat InfiniBox Container Storage Interface (CSI) Driver
          is a\n    CNCF-compliant Kubernetes integration for InfiniBox storage systems,
          offering\n    advanced enterprise functionality for petabyte-scale Kubernetes
          deployments including\n    Red Hat OpenShift.\n \n## Features and Benefits\n
          \ \n* **Multi-protocol flexibility** - manage\n    Kubernetes Persistent
          Volumes attached via block and file protocols,\n    including Fibre Channel,
          iSCSI, and NFS, with all Kubernetes PV access modes\n    \n* **Multi-petabyte
          scalability** - support hundreds of thousands of PVs per InfiniBox\n    system
          and control multiple InfiniBox arrays within a single Kubernetes cluster\n
          \   \\ \n* **Advanced enterprise features** - manage native InfiniBox snapshots
          and\n    clones, including restoring from snapshots, and import PVs created
          outside of\n    InfiniBox CSI Driver\n  \n## Required Parameters\n  \n*
          `hostname` - IP address\n    or hostname of the InfiniBox management interface\n*
          `username` / `password` -\n    InfiniBox credentials\n* `SecretName` - secret
          name, to be used in the StorageClass\n    to define a specific InfiniBox
          for persistent volumes\n\n## Optional Parameters\n*\n    `inbound_user`
          / `inbound_secret` / `outbound_user` / `outbound_secret` - credentials \n
          \   for iSCSI CHAP authentication\n\n    \n## Installation Instructions\n
          \n1. Create *infinidat-csi* namespace to install operator into.\n    \n2.
          Delete the following *clusterrolebindings*, if they exist, before installing
          operator\n     * infinidat-csi-operator-infinidat-csi-attacher\n     * infinidat-csi-operator-infinidat-csi-controller
          \                    \n     * infinidat-csi-operator-infinidat-csi-driver
          \                    \n     * infinidat-csi-operator-infinidat-csi-node
          \                              \n     * infinidat-csi-operator-infinidat-csi-provisioner
          \                       \n     * infinidat-csi-operator-infinidat-csi-resizer
          \          \n     * infinidat-csi-operator-infinidat-csi-snapshotter \n
          \   \n3. Install Infinidat Infinibox CSI Driver - Operator (this) into the
          *infinidat-csi* namespace.\n    \n4. Apply the following Security Context
          Constraints to the created service accounts in the *infinidat-csi* \n    namespace\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    \n5. Recreate or edit any existing storage classes, pointing to the
          new namespace\n\n     \n6. If you choose a different namespace other than
          *infinidat-csi* you will need to edit the clusterrolebindings listed above
          to specify your custom namespace\n\n     \n7. Install an instance of Infinidat
          Driver into the *infinidat-csi* namespace"
        displayName: InfiniBox CSI Driver - Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - csi
        - nas
        - san
        - storage
        - infinidat
        - infinibox
        links:
        - name: Infinidat
          url: https://infinidat.com
        maintainers:
        - email: info@infinidat.com
          name: Infinidat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Infinidat
          url: https://infinidat.com
        relatedImages:
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified-bundle@sha256:0eb6e7e06e18d83e4ddbd4fee4db440c5eb3552821954c1485b280f47ce4a743
        - registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d
        - registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified@sha256:a6a63241d55cdb63e3072fd7e663f08eca9a46e64d73ff7159eafd48f92c2db0
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a
        - registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f
        - registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
        version: 2.24.0
      entries:
      - name: infinibox-operator-certified.v2.24.0
        version: 2.24.0
      name: stable
    defaultChannel: stable
    packageName: infinibox-operator-certified
    provider:
      name: Infinidat
      url: https://infinidat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/instance: ibm-data-reporter-operator
      app.kubernetes.io/managed-by: ibm-data-reporter-operator
      app.kubernetes.io/name: ibm-data-reporter-operator
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Marketplace
      provider-url: ""
    name: ibm-data-reporter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-data-reporter-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "DataReporterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ibm-data-reporter-operator",
                    "app.kubernetes.io/instance": "datareporterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datareporterconfig",
                    "app.kubernetes.io/part-of": "ibm-data-reporter-operator"
                  },
                  "name": "datareporterconfig"
                },
                "spec": {
                  "userConfig": [
                    {
                      "metadata": {
                        "ameta1": "ametadata1",
                        "bmeta1": "bmetadata1",
                        "cmeta1": "cmetadata1",
                        "dmeta1": "dmetadata1"
                      },
                      "userName": "system:serviceaccount:redhat-marketplace:ibm-data-reporter-operator-api"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
          createdAt: ""
          description: The IBM Data Reporter Operator accepts events and transforms
            them into reports submitted to the Data Service of the IBM Metrics Operator.
          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: "true"
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReporterConfig is the Schema for the datareporterconfigs
              API
            displayName: Data Reporter Config
            kind: DataReporterConfig
            name: datareporterconfigs.marketplace.redhat.com
            version: v1alpha1
          required:
          - description: MarketplaceConfig is configuration manager for our Red Hat
              Marketplace controllers By installing this product you accept the license
              terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
        description: "# IBM Data Reporter Operator\n\n# Introduction\n\nThe IBM Data
          Reporter Operator accepts events and transforms them into reports submitted
          to the IBM Metrics Operator Data Service.\n\n# Details\n\nThe IBM Data Reporter
          Operator deploys a service that provides an endpoint to which callers can
          send raw json event data. The event data is transformed into a report and
          is sent to the IBM Metrics Operator's Data Service. The IBM Metrics Operator
          Data Service periodically uploads the reports to IBM Software Central. It
          can also filter, transform and forward events to alternate endpoints.\n\n##
          Prerequisites\n\n- OpenShift Container Platform, major version 4 with any
          available supported minor version\n- Install IBM Metrics Operator\n  - IBM
          Data Reporter Operator prerequisties the IBM Metrics Operator's Data Service\n
          \ - Register the Cluster by creating a `redhat-marketplace-pull-secret`,
          as per the instructions\n  - Once `rhm-data-service` has started IBM Data
          Reporter Operator will accept requests\n\n## SecurityContextConstraints
          Requirements\n\n- The operator runs under Red Hat restricted SCC\n\n## Kyverno
          Policies\n\nThe IBM Data Reporter Operator makes a best effort to comply
          with the Kyverno policies defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Data Reporter Operator is not replicated\n  - Service uptime is not
          considered critial, and can be rescheduled\n\n## Resources Required\n\n-
          The operator requires at least 85 Mi memory.\n\n## Limitations\n\n- Only
          runs on amd64, s390x and ppc64le architectures\n\n## Installing\n\n- A user
          with the cluster administrator role.\n- Install this operator in the same
          namespace as the IBM Metrics Operator\n  - default namespace: `ibm-software-central`\n\n##
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n# Configuration\n\nOptional:\n- Configure the
          Custom Resource Definition `DataReporterConfig` named `datareporterconfig`
          as per the following sample\n  - Configuration that can not be reconciled
          successfully will be reported on the DataReporterConfig Status\n  - jsonPath
          expressions are handled by: https://github.com/ohler55/ojg\n    - jsonPath
          comparison: https://cburgmer.github.io/json-path-comparison/\n  - Transformer
          type currently supported is `kazaam`\n    - https://github.com/willie68/kazaam\n\nSample
          DataReporterConfig:\n```YAML\napiVersion: marketplace.redhat.com/v1alpha1\nkind:
          DataReporterConfig\nmetadata:\n  name: datareporterconfig\nspec:\n  # true:
          report generated for 1 event and provide return code from data-service,
          confirming delivery\n  # false: events will be accumulated before building
          report, and immediately return 200, delivery unfconfirmed\n  confirmDelivery:
          false\n  dataFilters:   # dataFilters matches the first dataFilter selector,
          applies transforms and forwards to data-service and destinations\n  - altDestinations:
          \  # List of desintations to transform and foward events to\n    - authorization:
          \  # optional endpoint if an authorization token must first be requested
          \n        authDestHeader: Authorization   # http header key to be appended
          to destination request\n        authDestHeaderPrefix: 'Bearer '   # optional
          prefix for constructing destination request http header value\n        bodyData:
          \  # body data to send to authorization request, often an apiKey\n          secretKeyRef:\n
          \           name: auth-body-data-secret\n            key: bodydata\n        header:
          \  # secret map to use for authorization request headers\n          secret:\n
          \           name: auth-header-map-secret\n        tokenExpr: $.token   #
          optionally extract the returned body data using a jsonPath expression\n
          \       url: https://127.0.0.1:8443/api/2.0/accounts/my_account_id/apikeys/token
          \  # the url to make an authorization request to\n      header:   # secret
          map to use for destination request headers\n        secret:\n          name:
          dest-header-map-secret\n      transformer:   # The transformer to apply
          to event data for this destination\n        configMapKeyRef:\n          key:
          kazaam.json\n          name: kazaam-configmap\n        type: kazaam\n      url:
          https://127.0.0.1:8443/metering/api/1.0/usage   # the url to send the event
          to\n      urlSuffixExpr: $.properties.productId   # optional jsonPath expression
          on the event to extract and set a suffix to the url path\n    manifestType:
          dataReporter   # override manifestType of report sent to data-service\n
          \   selector:   # Matches against event data and a user. Empty selector
          matches all.\n      matchExpressions:   # jsonPath expression must return
          a result for all expressions to match (AND)\n      - $[?($.event == \"Account
          Contractual Usage\")]\n      - $.properties.productId\n      - $[?($.properties.source
          != null)]\n      - $[?($.properties.unit == \"AppPoints\")]\n      - $[?($.properties.quantity
          >= 0)]\n      - $[?($.timestamp != null)]\n      matchUsers:   # must match
          one of these users (OR). Omitting users matches any user\n      - system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n
          \   transformer:   # The transformer to apply to the event for data-service\n
          \     configMapKeyRef:\n        key: kazaam.json\n        name: kazaam-configmap\n
          \     type: kazaam\n  tlsConfig:   # TLS configuration for requests outbound
          to destinations\n    caCerts:\n    - name: tls-ca-certificates\n      key:
          ca.crt\n    certificates:\n    - clientCert:\n        secretKeyRef:\n          name:
          tls-ca-certificates\n          key: tls.crt\n      clientKey:\n        secretKeyRef:\n
          \         name: tls-ca-certificates\n          key: tls.key\n    cipherSuites:
          \n    - TLS_AES_128_GCM_SHA256\n    - TLS_AES_256_GCM_SHA384\n    - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256\n    - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384\n    insecureSkipVerify: false\n
          \   minVersion: VersionTLS12\n  userConfig:   # Optional metadata to apply
          to report sent to data-service for a specific user\n  - metadata:\n      ameta1:
          ametadata1\n      bmeta1: bmetadata1\n      cmeta1: cmetadata1\n      dmeta1:
          dmetadata1\n    userName: system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n```\n\nSample
          Header Secrets:\n```YAML\napiVersion: v1\nstringData:\n  accept: | \n    */*\nkind:
          Secret\nmetadata:\n  name: dest-header-map-secret\ntype: Opaque\n---\napiVersion:
          v1\nstringData:\n  accept: application/json\n  Content-Type: application/json\nkind:
          Secret\nmetadata:\n  name: auth-header-map-secret\ntype: Opaque\n```\n\nSample
          Authentication Body Secret:\n```YAML\napiVersion: v1\nstringData:\n  bodydata:
          |\n    {\"apikey\": \"myapikey\"}\nkind: Secret\nmetadata:\n  name: auth-body-data-secret\ntype:
          Opaque\n```\n\nSample TLS Secret:\n```YAML\napiVersion: v1\ndata:\n  ca.crt:
          LS0t...\n  tls.key: LS0t...\n  tls.crt: LS0t...\nkind: Secret\nmetadata:\n
          \ name: tls-ca-certificates\n```\n\nSample Kazaam ConfigMap:\n```YAML\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: kazaam-configmap\ndata:\n  kazaam.json:
          |\n    [\n        {\n            \"operation\": \"timestamp\",\n            \"spec\":
          {\n                \"timestamp\": {\n                \"inputFormat\": \"2006-01-02T15:04:05.999999+00:00\",\n
          \               \"outputFormat\": \"$unixmilli\"\n                }\n            }\n
          \       },\n        {\n            \"operation\": \"shift\",\n            \"spec\":
          {\n                \"instances[0].instanceId\": \"properties.source\",\n
          \               \"instances[0].startTime\": \"timestamp\",\n                \"instances[0].endTime\":
          \"timestamp\",\n                \"instances[0].metricUsage[0].metricId\":
          \"properties.unit\",\n                \"instances[0].metricUsage[0].quantity\":
          \"properties.quantity\"\n            }\n        },\n        {\n            \"operation\":
          \"default\",\n            \"spec\": {\n                \"meteringModel\":
          \"point-in-time\",\n                \"meteringPlan\": \"contract\"\n            }\n
          \       }\n    ]\n```\n\n### API Service User Configuration\n\n- The ClusterRole
          for api access is `clusterrole/ibm-data-reporter-operator-api`\n- The default
          ServiceAccount provided as an api user is `system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api`\n
          \ - The default ClusterRoleBinding for this user is `clusterrolebinding/ibm-data-reporter-operator-api`\n\nOptional:\n\n-
          To create an additional ServiceAccount and ClusterRoleBinding for api access\n\n```SHELL\nNAMESPACE=$(oc
          config view --minify -o jsonpath='{..namespace}') && \\\noc create serviceaccount
          my-api-service-account && \\\noc create clusterrolebinding ibm-data-reporter-operator-api
          --clusterrole=ibm-data-reporter-operator-api --serviceaccount=${NAMESPACE}:my-api-service-account\n```\n\n-
          Update datareporterconfig to attach metadata to reports associated with
          this user\n\n## API Service Usage\n\n- Get Token & Host\n\n```SHELL\noc
          project ibm-software-central\nexport DRTOKEN=$(oc create token ibm-data-reporter-operator-api
          --namespace ibm-software-central --duration 1h)\nexport DRHOST=$(oc get
          route ibm-data-reporter --template='{{ .spec.host }}')\n```\n\n- Get the
          Status\n\n```SHELL\ncurl -k -H \"Authorization: Bearer ${DRTOKEN}\" https://${DRHOST}/v1/status
          \n```\n\n- Post an Event\n\n```SHELL\ncurl -k -H \"Authorization: Bearer
          ${DRTOKEN}\" -X POST -d '{\"event\":\"myevent\"}' https://${DRHOST}/v1/event\n```\n\n##
          Storage\n\n- The operator temporarily stores events in pod memory, and writes
          to the IBM Metrics Operator data-service, which requires a PersistentVolume\n\n##
          License\n\nCopyright IBM Corporation 2023. All Rights Reserved.\n\nLicensed
          under the Apache License, Version 2.0 (the \"License\");\nyou may not use
          this file except in compliance with the License.\nYou may obtain a copy
          of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless
          required by applicable law or agreed to in writing, software\ndistributed
          under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES
          OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for
          the specific language governing permissions and\nlimitations under the License.\n"
        displayName: IBM Data Reporter Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
        - registry.connect.redhat.com/rh-marketplace/ibm-data-reporter-operator-bundle@sha256:20ee4c5cb1e904dfcbaf678a3a258840ea3d19350f812257944db361ab92009d
        version: 2.23.1
      entries:
      - name: ibm-data-reporter-operator.v2.23.1
        version: 2.23.1
      name: beta
    - currentCSV: ibm-data-reporter-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "DataReporterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ibm-data-reporter-operator",
                    "app.kubernetes.io/instance": "datareporterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datareporterconfig",
                    "app.kubernetes.io/part-of": "ibm-data-reporter-operator"
                  },
                  "name": "datareporterconfig"
                },
                "spec": {
                  "userConfig": [
                    {
                      "metadata": {
                        "ameta1": "ametadata1",
                        "bmeta1": "bmetadata1",
                        "cmeta1": "cmetadata1",
                        "dmeta1": "dmetadata1"
                      },
                      "userName": "system:serviceaccount:redhat-marketplace:ibm-data-reporter-operator-api"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
          createdAt: ""
          description: The IBM Data Reporter Operator accepts events and transforms
            them into reports submitted to the Data Service of the IBM Metrics Operator.
          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: "true"
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReporterConfig is the Schema for the datareporterconfigs
              API
            displayName: Data Reporter Config
            kind: DataReporterConfig
            name: datareporterconfigs.marketplace.redhat.com
            version: v1alpha1
          required:
          - description: MarketplaceConfig is configuration manager for our Red Hat
              Marketplace controllers By installing this product you accept the license
              terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
        description: "# IBM Data Reporter Operator\n\n# Introduction\n\nThe IBM Data
          Reporter Operator accepts events and transforms them into reports submitted
          to the IBM Metrics Operator Data Service.\n\n# Details\n\nThe IBM Data Reporter
          Operator deploys a service that provides an endpoint to which callers can
          send raw json event data. The event data is transformed into a report and
          is sent to the IBM Metrics Operator's Data Service. The IBM Metrics Operator
          Data Service periodically uploads the reports to IBM Software Central. It
          can also filter, transform and forward events to alternate endpoints.\n\n##
          Prerequisites\n\n- OpenShift Container Platform, major version 4 with any
          available supported minor version\n- Install IBM Metrics Operator\n  - IBM
          Data Reporter Operator prerequisties the IBM Metrics Operator's Data Service\n
          \ - Register the Cluster by creating a `redhat-marketplace-pull-secret`,
          as per the instructions\n  - Once `rhm-data-service` has started IBM Data
          Reporter Operator will accept requests\n\n## SecurityContextConstraints
          Requirements\n\n- The operator runs under Red Hat restricted SCC\n\n## Kyverno
          Policies\n\nThe IBM Data Reporter Operator makes a best effort to comply
          with the Kyverno policies defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Data Reporter Operator is not replicated\n  - Service uptime is not
          considered critial, and can be rescheduled\n\n## Resources Required\n\n-
          The operator requires at least 85 Mi memory.\n\n## Limitations\n\n- Only
          runs on amd64, s390x and ppc64le architectures\n\n## Installing\n\n- A user
          with the cluster administrator role.\n- Install this operator in the same
          namespace as the IBM Metrics Operator\n  - default namespace: `ibm-software-central`\n\n##
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n# Configuration\n\nOptional:\n- Configure the
          Custom Resource Definition `DataReporterConfig` named `datareporterconfig`
          as per the following sample\n  - Configuration that can not be reconciled
          successfully will be reported on the DataReporterConfig Status\n  - jsonPath
          expressions are handled by: https://github.com/ohler55/ojg\n    - jsonPath
          comparison: https://cburgmer.github.io/json-path-comparison/\n  - Transformer
          type currently supported is `kazaam`\n    - https://github.com/willie68/kazaam\n\nSample
          DataReporterConfig:\n```YAML\napiVersion: marketplace.redhat.com/v1alpha1\nkind:
          DataReporterConfig\nmetadata:\n  name: datareporterconfig\nspec:\n  # true:
          report generated for 1 event and provide return code from data-service,
          confirming delivery\n  # false: events will be accumulated before building
          report, and immediately return 200, delivery unfconfirmed\n  confirmDelivery:
          false\n  dataFilters:   # dataFilters matches the first dataFilter selector,
          applies transforms and forwards to data-service and destinations\n  - altDestinations:
          \  # List of desintations to transform and foward events to\n    - authorization:
          \  # optional endpoint if an authorization token must first be requested
          \n        authDestHeader: Authorization   # http header key to be appended
          to destination request\n        authDestHeaderPrefix: 'Bearer '   # optional
          prefix for constructing destination request http header value\n        bodyData:
          \  # body data to send to authorization request, often an apiKey\n          secretKeyRef:\n
          \           name: auth-body-data-secret\n            key: bodydata\n        header:
          \  # secret map to use for authorization request headers\n          secret:\n
          \           name: auth-header-map-secret\n        tokenExpr: $.token   #
          optionally extract the returned body data using a jsonPath expression\n
          \       url: https://127.0.0.1:8443/api/2.0/accounts/my_account_id/apikeys/token
          \  # the url to make an authorization request to\n      header:   # secret
          map to use for destination request headers\n        secret:\n          name:
          dest-header-map-secret\n      transformer:   # The transformer to apply
          to event data for this destination\n        configMapKeyRef:\n          key:
          kazaam.json\n          name: kazaam-configmap\n        type: kazaam\n      url:
          https://127.0.0.1:8443/metering/api/1.0/usage   # the url to send the event
          to\n      urlSuffixExpr: $.properties.productId   # optional jsonPath expression
          on the event to extract and set a suffix to the url path\n    manifestType:
          dataReporter   # override manifestType of report sent to data-service\n
          \   selector:   # Matches against event data and a user. Empty selector
          matches all.\n      matchExpressions:   # jsonPath expression must return
          a result for all expressions to match (AND)\n      - $[?($.event == \"Account
          Contractual Usage\")]\n      - $.properties.productId\n      - $[?($.properties.source
          != null)]\n      - $[?($.properties.unit == \"AppPoints\")]\n      - $[?($.properties.quantity
          >= 0)]\n      - $[?($.timestamp != null)]\n      matchUsers:   # must match
          one of these users (OR). Omitting users matches any user\n      - system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n
          \   transformer:   # The transformer to apply to the event for data-service\n
          \     configMapKeyRef:\n        key: kazaam.json\n        name: kazaam-configmap\n
          \     type: kazaam\n  tlsConfig:   # TLS configuration for requests outbound
          to destinations\n    caCerts:\n    - name: tls-ca-certificates\n      key:
          ca.crt\n    certificates:\n    - clientCert:\n        secretKeyRef:\n          name:
          tls-ca-certificates\n          key: tls.crt\n      clientKey:\n        secretKeyRef:\n
          \         name: tls-ca-certificates\n          key: tls.key\n    cipherSuites:
          \n    - TLS_AES_128_GCM_SHA256\n    - TLS_AES_256_GCM_SHA384\n    - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256\n    - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384\n    insecureSkipVerify: false\n
          \   minVersion: VersionTLS12\n  userConfig:   # Optional metadata to apply
          to report sent to data-service for a specific user\n  - metadata:\n      ameta1:
          ametadata1\n      bmeta1: bmetadata1\n      cmeta1: cmetadata1\n      dmeta1:
          dmetadata1\n    userName: system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n```\n\nSample
          Header Secrets:\n```YAML\napiVersion: v1\nstringData:\n  accept: | \n    */*\nkind:
          Secret\nmetadata:\n  name: dest-header-map-secret\ntype: Opaque\n---\napiVersion:
          v1\nstringData:\n  accept: application/json\n  Content-Type: application/json\nkind:
          Secret\nmetadata:\n  name: auth-header-map-secret\ntype: Opaque\n```\n\nSample
          Authentication Body Secret:\n```YAML\napiVersion: v1\nstringData:\n  bodydata:
          |\n    {\"apikey\": \"myapikey\"}\nkind: Secret\nmetadata:\n  name: auth-body-data-secret\ntype:
          Opaque\n```\n\nSample TLS Secret:\n```YAML\napiVersion: v1\ndata:\n  ca.crt:
          LS0t...\n  tls.key: LS0t...\n  tls.crt: LS0t...\nkind: Secret\nmetadata:\n
          \ name: tls-ca-certificates\n```\n\nSample Kazaam ConfigMap:\n```YAML\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: kazaam-configmap\ndata:\n  kazaam.json:
          |\n    [\n        {\n            \"operation\": \"timestamp\",\n            \"spec\":
          {\n                \"timestamp\": {\n                \"inputFormat\": \"2006-01-02T15:04:05.999999+00:00\",\n
          \               \"outputFormat\": \"$unixmilli\"\n                }\n            }\n
          \       },\n        {\n            \"operation\": \"shift\",\n            \"spec\":
          {\n                \"instances[0].instanceId\": \"properties.source\",\n
          \               \"instances[0].startTime\": \"timestamp\",\n                \"instances[0].endTime\":
          \"timestamp\",\n                \"instances[0].metricUsage[0].metricId\":
          \"properties.unit\",\n                \"instances[0].metricUsage[0].quantity\":
          \"properties.quantity\"\n            }\n        },\n        {\n            \"operation\":
          \"default\",\n            \"spec\": {\n                \"meteringModel\":
          \"point-in-time\",\n                \"meteringPlan\": \"contract\"\n            }\n
          \       }\n    ]\n```\n\n### API Service User Configuration\n\n- The ClusterRole
          for api access is `clusterrole/ibm-data-reporter-operator-api`\n- The default
          ServiceAccount provided as an api user is `system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api`\n
          \ - The default ClusterRoleBinding for this user is `clusterrolebinding/ibm-data-reporter-operator-api`\n\nOptional:\n\n-
          To create an additional ServiceAccount and ClusterRoleBinding for api access\n\n```SHELL\nNAMESPACE=$(oc
          config view --minify -o jsonpath='{..namespace}') && \\\noc create serviceaccount
          my-api-service-account && \\\noc create clusterrolebinding ibm-data-reporter-operator-api
          --clusterrole=ibm-data-reporter-operator-api --serviceaccount=${NAMESPACE}:my-api-service-account\n```\n\n-
          Update datareporterconfig to attach metadata to reports associated with
          this user\n\n## API Service Usage\n\n- Get Token & Host\n\n```SHELL\noc
          project ibm-software-central\nexport DRTOKEN=$(oc create token ibm-data-reporter-operator-api
          --namespace ibm-software-central --duration 1h)\nexport DRHOST=$(oc get
          route ibm-data-reporter --template='{{ .spec.host }}')\n```\n\n- Get the
          Status\n\n```SHELL\ncurl -k -H \"Authorization: Bearer ${DRTOKEN}\" https://${DRHOST}/v1/status
          \n```\n\n- Post an Event\n\n```SHELL\ncurl -k -H \"Authorization: Bearer
          ${DRTOKEN}\" -X POST -d '{\"event\":\"myevent\"}' https://${DRHOST}/v1/event\n```\n\n##
          Storage\n\n- The operator temporarily stores events in pod memory, and writes
          to the IBM Metrics Operator data-service, which requires a PersistentVolume\n\n##
          License\n\nCopyright IBM Corporation 2023. All Rights Reserved.\n\nLicensed
          under the Apache License, Version 2.0 (the \"License\");\nyou may not use
          this file except in compliance with the License.\nYou may obtain a copy
          of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless
          required by applicable law or agreed to in writing, software\ndistributed
          under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES
          OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for
          the specific language governing permissions and\nlimitations under the License.\n"
        displayName: IBM Data Reporter Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
        - registry.connect.redhat.com/rh-marketplace/ibm-data-reporter-operator-bundle@sha256:20ee4c5cb1e904dfcbaf678a3a258840ea3d19350f812257944db361ab92009d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 2.23.1
      entries:
      - name: ibm-data-reporter-operator.v2.23.1
        version: 2.23.1
      name: stable
    defaultChannel: stable
    packageName: ibm-data-reporter-operator
    provider:
      name: Red Hat Marketplace
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: hyperfoil-bundle
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hyperfoil-operator.v0.26.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hyperfoil.io/v1alpha2",
                "kind": "Hyperfoil",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "hyperfoil-operator",
                    "app.kubernetes.io/instance": "hyperfoil-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hyperfoil",
                    "app.kubernetes.io/part-of": "hyperfoil-operator"
                  },
                  "name": "hyperfoil-sample"
                },
                "spec": {
                  "version": "latest"
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: quay.io/hyperfoil/hyperfoil-operator:0.26.0
          createdAt: "2024-06-11T17:39:20Z"
          description: Microservice-oriented distributed benchmark framework.
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/Hyperfoil/hyperfoil-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Hyperfoil is the Schema for the hyperfoils API
            displayName: Hyperfoil
            kind: Hyperfoil
            name: hyperfoils.hyperfoil.io
            version: v1alpha2
        description: |
          Hyperfoil is a modern benchmark framework oriented promising
          accurate results with more flexibility and distributed architecture.

          See more on [hyperfoil.io](http://hyperfoil.io).

          Hyperfoil is licensed under Apache License 2.0
        displayName: Hyperfoil
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hyperfoil
        - benchmark
        - test
        - load
        - driver
        links:
        - name: Website
          url: http://hyperfoil.io
        - name: GitHub
          url: http://github.com/Hyperfoil
        maintainers:
        - email: rvansa@redhat.com
          name: Radim Vansa
        - email: spederse@redhat.com
          name: Ståle W. Pedersen
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/hyperfoil-bundle@sha256:1d3625d12d95deb4f48660459fd0fc8b250b52b46d68136927d0f12465aaadf1
        - quay.io/hyperfoil/hyperfoil-operator:0.26.0
        version: 0.26.0
      entries:
      - name: hyperfoil-operator.v0.26.0
        version: 0.26.0
      - name: hyperfoil-operator.v0.24.2
        version: 0.24.2
      - name: hyperfoil-operator.v0.21.0
        version: 0.21.0
      - name: hyperfoil-operator.v0.15.1
        version: 0.15.1
      - name: hyperfoil-operator.v0.15.0
        version: 0.15.0
      name: alpha
    defaultChannel: alpha
    packageName: hyperfoil-bundle
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio
      provider-url: ""
    name: apicurio-registry-3
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-registry-3.v3.1.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry3",
                "metadata": {
                  "name": "simple"
                },
                "spec": {
                  "app": {
                    "ingress": {
                      "host": "simple-app.apps.cluster.example"
                    }
                  },
                  "ui": {
                    "ingress": {
                      "host": "simple-ui.apps.cluster.example"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/apicurio/apicurio-registry-3-operator:3.1.6
          createdAt: "2025-12-19T17:56:46Z"
          description: Deploy and manage Apicurio Registry 3 on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/Apicurio/apicurio-registry/tree/main/operator
          support: Apicurio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry3 represents an instance of Apicurio Registry
              version 3.
            displayName: Apicurio Registry 3
            kind: ApicurioRegistry3
            name: apicurioregistries3.registry.apicur.io
            version: v1
        description: |
          ## Apicurio Registry 3

          Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Allows you manage event schemas and API designs using the Apicurio Registry web console, REST API, Maven plug-in, or Java client
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL, MySQL, SQL Server, in-memory
          - Compatible with Confluent APIs
          - Runs on a lightweight Quarkus platform

          ## Apicurio Registry 3 Operator

          Provides a quick and easy way to deploy and manage Apicurio Registry 3 on Kubernetes.

          **Features**
          - Supports installation and configuration of Apicurio Registry 3
          - Perform a rolling upgrade of Apicurio Registry 3

          ## Prerequisites

          This operator does not deploy storage for Apicurio Registry 3. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Apicurio Registry 3 and Apicurio Registry 3 Operator are licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry/blob/main/LICENSE)
        displayName: Apicurio Registry 3
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Apicurio
        relatedImages:
        - quay.io/apicurio/apicurio-registry-3-operator:3.1.6
        - quay.io/community-operator-pipeline-prod/apicurio-registry-3@sha256:af92f5c91bf76a3956049875e81699d67b5e7f3fc1c25ece91073c9322e953cd
        version: 3.1.6
      entries:
      - name: apicurio-registry-3.v3.1.6
        version: 3.1.6
      - name: apicurio-registry-3.v3.1.4
        version: 3.1.4
      - name: apicurio-registry-3.v3.1.3
        version: 3.1.3
      - name: apicurio-registry-3.v3.1.1
        version: 3.1.1
      - name: apicurio-registry-3.v3.1.0
        version: 3.1.0
      - name: apicurio-registry-3.v3.0.15
        version: 3.0.15
      - name: apicurio-registry-3.v3.0.14
        version: 3.0.14
      - name: apicurio-registry-3.v3.0.12
        version: 3.0.12
      - name: apicurio-registry-3.v3.0.9
        version: 3.0.9
      - name: apicurio-registry-3.v3.0.8
        version: 3.0.8
      - name: apicurio-registry-3.v3.0.7
        version: 3.0.7
      name: 3.x
    defaultChannel: 3.x
    packageName: apicurio-registry-3
    provider:
      name: Apicurio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Microcks.io
      provider-url: ""
    name: microcks
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: microcks-operator.v1.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "microcks.github.io/v1alpha1",
                "kind": "MicrocksInstall",
                "metadata": {
                  "name": "my-microcksinstall"
                },
                "spec": {
                  "name": "my-microcksinstall",
                  "version": "1.10.0",
                  "microcks": {
                    "replicas": 1
                  },
                  "postman": {
                    "replicas": 1
                  },
                  "keycloak": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "1Gi"
                  },
                  "mongodb": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "2Gi"
                  }
                }
              },
              {
                "apiVersion": "microcks.github.io/v1alpha1",
                "kind": "MicrocksInstall",
                "metadata": {
                  "name": "my-microcksinstall-minikube"
                },
                "spec": {
                  "name": "my-microcksinstall-minikube",
                  "version": "1.10.0",
                  "microcks": {
                    "replicas": 2,
                    "url": "microcks.192.168.99.100.nip.io"
                  },
                  "postman": {
                    "replicas": 2
                  },
                  "keycloak": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "1Gi",
                    "url": "keycloak.192.168.99.100.nip.io"
                  },
                  "mongodb": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "2Gi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/microcks/microcks-ansible-operator:1.10.0
          createdAt: "2024-08-01T09:14:55Z"
          description: Open Source mocking and testing platform for API and microservices
          repository: https://github.com/microcks/microcks-ansible-operator
          support: microcks.github.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Microcks installation
            displayName: MicrocksInstall
            kind: MicrocksInstall
            name: microcksinstalls.microcks.github.io
            version: v1alpha1
        description: |
          Microcks is an Open source tool for API and microservices mocking and testing. It provides a platform for referencing, deploying mocks and allow contract-testing of your APIs. It can also be considered as a Service Virtualization solution because it will allow you to provide fake API or Service implementation before development being actually done. It supports Async APIs, REST APIs, gRPC, GraphQL and SOAP WebServices. It perfectly integrates into an iterative, contract-first delivery process.
          Microcks tries not reinventing the wheel and let you capitalize on already known tools of standards. It supports [AsyncAPI Specifications](https://asyncapi.com), [OpenAPI Specification](https://www.openapis.org/) `3.x`, [gRPC Protobuf](https://grpc.io/), [GraphQL Schema](https://graphql.org) out-of-the-box and can also relies on popular tools like [SoapUI](http://www.soapui.com) or [Postman](http://www.getpostman.io) to edit your API request / response samples as well as your test scripts.
          ### Operator features
          * **Create/Destroy**: Easily launch Microcks installations (`MicrocksInstall` custom resource) for your Kubernetes namespace
          ### MicrocksInstall options
          * **keycloak** component can be deployed as part of the install or you can reuse an existing instance. You can reference an existing `Secret` for providing TLS certificates for securing the `Ingress`,
          * **mongodb** component can be deployed as part of the install or you can reuse an existing instance, You can reference an existing `Secret` for providing connection credentials,
          * **features** component allow to activate optional features like the mocking of AsyncAPIs. In case you turn `features.async.enabled` to `true` and `features.async.kafka.install` to `true`, you must have the [Strimzi Operator](https://operatorhub.io/operator/strimzi-kafka-operator) already installed on your cluster/namespace.
          ### Documentation
          Documentation to the current _master_ branch as well as all releases can be found on our [GitHub](https://github.com/microcks/microcks-ansible-operator).
          ### License
          Microcks is licensed under the [Apache License, Version 2.0](https://github.com/microcks/microcks/blob/master/LICENSE).
        displayName: Microcks Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mock
        - test
        - API
        - microservice
        links:
        - name: Product Page
          url: https://microcks.io
        - name: Microcks Operator Source Code
          url: https://github.com/microcks/microcks-ansible-operator
        maintainers:
        - email: laurent.broudoux@gmail.com
          name: lbroudoux
        maturity: alpha
        provider:
          name: Microcks.io
        relatedImages:
        - quay.io/community-operator-pipeline-prod/microcks@sha256:1313bb08037e57cde02d9d48c4d8c9663eed08651a3c29f872b5ef85ac764112
        - quay.io/microcks/microcks-ansible-operator:1.10.0
        version: 1.10.0
      entries:
      - name: microcks-operator.v1.10.0
        version: 1.10.0
      - name: microcks-operator.v1.9.0
        version: 1.9.0
      - name: microcks-operator.v1.8.1
        version: 1.8.1
      - name: microcks-operator.v1.8.0
        version: 1.8.0
      - name: microcks-operator.v1.7.1
        version: 1.7.1
      - name: microcks-operator.v1.7.0
        version: 1.7.0
      - name: microcks-operator.v1.6.1
        version: 1.6.1
      - name: microcks-operator.v1.6.0
        version: 1.6.0
      - name: microcks-operator.v1.5.2
        version: 1.5.2
      - name: microcks-operator.v1.5.1
        version: 1.5.1
      - name: microcks-operator.v1.5.0
        version: 1.5.0
      - name: microcks-operator.v1.4.1
        version: 1.4.1
      name: stable
    defaultChannel: stable
    packageName: microcks
    provider:
      name: Microcks.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Konveyor
      provider-url: https://konveyor.io
    name: move2kube-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: move2kube-operator.v0.3.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "move2kube.konveyor.io/v1alpha1",
                "kind": "Move2Kube",
                "metadata": {
                  "name": "move2kube-sample"
                },
                "spec": {
                  "deployment": {
                    "api": {
                      "cpu": "300m",
                      "imageTag": "",
                      "initContainer": false,
                      "memory": "1Gi",
                      "privilegedPods": false,
                      "replicas": 1
                    },
                    "authServer": {
                      "cpu": "300m",
                      "enable": false,
                      "memory": "1Gi",
                      "replicas": 1
                    },
                    "database": {
                      "cpu": "300m",
                      "enable": false,
                      "memory": "1Gi",
                      "replicas": 1,
                      "startEmpty": true
                    }
                  },
                  "ingress": {
                    "enable": true,
                    "host": "mydomain.com",
                    "preferRoute": false,
                    "tlsSecretName": ""
                  },
                  "persistentVolumeClaim": {
                    "createNew": true,
                    "enable": false,
                    "name": "",
                    "readWriteMany": true,
                    "storageClassName": "",
                    "storageSize": "1Gi"
                  },
                  "secret": {
                    "api": {
                      "configYAML": "",
                      "createNew": true,
                      "enable": false,
                      "name": ""
                    },
                    "authServer": {
                      "adminPassword": "password",
                      "adminUsername": "admin",
                      "createNew": true,
                      "databasePassword": "password",
                      "databaseUsername": "auth-server",
                      "name": "",
                      "realmJSON": "",
                      "standaloneHAXML": ""
                    }
                  },
                  "securityContextContraints": {
                    "enable": false
                  },
                  "serviceAccount": {
                    "createNew": true,
                    "enable": false,
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          containerImage: quay.io/konveyor/move2kube-operator:v0.3.10
          createdAt: "2023-09-25T02:56:15Z"
          description: Konveyor Move2Kube is an open source tool that helps migrate
            your app to run on Kubernetes/Openshift.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/move2kube-operator
          support: https://github.com/konveyor/move2kube-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Move2Kube
            name: move2kubes.move2kube.konveyor.io
            version: v1alpha1
        description: |
          Konveyor Move2Kube is a tool that uses source files such as Docker Compose files or Cloud Foundry manifest files, and even source code, to generate Kubernetes deployment files including object yaml, Helm charts, and operators.

          This operator can be used to start an instance of the Move2Kube UI.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Move2Kube CR.

          By default the operator installs a StatefulSet that brings up a Pod that serves the UI.
          See https://move2kube.konveyor.io/tutorials/ui for a tutorial on how to use the UI.

          Data persistence can be enabled by setting the `persistentVolumeClaim.enable` field to `true` in the CR `spec`. https://github.com/konveyor/move2kube-operator/blob/0e79476bcd873d3272164a47af31b00590dacfb1/helm-charts/move2kube/values.yaml#L26

          ### Documentation

          See https://move2kube.konveyor.io/ for more details.

          ### Getting help

          If you encounter any issues while using this operator, you can create an issue on our [Github repo](https://github.com/konveyor/move2kube-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing

          You can contribute by making PRs to our Github repo https://github.com/konveyor/move2kube-operator
        displayName: Konveyor Move2Kube
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - modernization
        - replatform
        - move2kube
        - konveyor
        - migration
        links:
        - name: Documentation
          url: https://move2kube.konveyor.io/
        - name: Move2Kube Operator
          url: https://github.com/konveyor/move2kube-operator
        maintainers:
        - email: harikrishmenon@gmail.com
          name: Harikrishnan Balagopal
        - email: seshapad@in.ibm.com
          name: Padmanabha V Seshadri
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://konveyor.io
        relatedImages:
        - quay.io/konveyor/move2kube-operator:v0.3.10
        - quay.io/openshift-community-operators/move2kube-operator@sha256:cdf288be5ea779e03900af9b57c4d922b8760b88da4fcbf88437f8031d679aef
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 0.3.10
      entries:
      - name: move2kube-operator.v0.3.10
        version: 0.3.10
      - name: move2kube-operator.v0.3.10-rc.0
        version: 0.3.10-rc.0
      - name: move2kube-operator.v0.3.9
        version: 0.3.9
      - name: move2kube-operator.v0.3.8
        version: 0.3.8
      name: alpha
    - currentCSV: move2kube-operator.v0.3.15-rc.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "move2kube.konveyor.io/v1alpha1",
                "kind": "Move2Kube",
                "metadata": {
                  "name": "move2kube-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          containerImage: quay.io/konveyor/move2kube-operator:v0.3.15-rc.0
          createdAt: "2024-10-18T16:10:56Z"
          description: Konveyor Move2Kube is an open source tool that helps migrate
            your app to run on Kubernetes/Openshift.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/move2kube-operator
          support: https://github.com/konveyor/move2kube-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Move2Kube
            name: move2kubes.move2kube.konveyor.io
            version: v1alpha1
        description: |
          Konveyor Move2Kube is a tool that uses source files such as Docker Compose files or Cloud Foundry manifest files, and even source code, to generate Kubernetes deployment files including object yaml, Helm charts, and operators.

          This operator can be used to start an instance of the Move2Kube UI.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Move2Kube CR.

          By default the operator installs a StatefulSet that brings up a Pod that serves the UI.
          See https://move2kube.konveyor.io/tutorials/ui for a tutorial on how to use the UI.

          Data persistence can be enabled by setting the `persistentVolumeClaim.enable` field to `true` in the CR `spec`. https://github.com/konveyor/move2kube-operator/blob/0e79476bcd873d3272164a47af31b00590dacfb1/helm-charts/move2kube/values.yaml#L26

          ### Documentation

          See https://move2kube.konveyor.io/ for more details.

          ### Getting help

          If you encounter any issues while using this operator, you can create an issue on our [Github repo](https://github.com/konveyor/move2kube-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing

          You can contribute by making PRs to our Github repo https://github.com/konveyor/move2kube-operator
        displayName: Konveyor Move2Kube
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - modernization
        - replatform
        - move2kube
        - konveyor
        - migration
        links:
        - name: Documentation
          url: https://move2kube.konveyor.io/
        - name: Move2Kube Operator
          url: https://github.com/konveyor/move2kube-operator
        maintainers:
        - email: harikrishmenon@gmail.com
          name: Harikrishnan Balagopal
        - email: seshapad@in.ibm.com
          name: Padmanabha V Seshadri
        maturity: alpha
        minKubeVersion: 1.13.0
        provider:
          name: Konveyor
          url: https://konveyor.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/move2kube-operator@sha256:236a53d6fad949285b6abafcdd1a4541a7748f952c0c96fa2e71500079579ba4
        - quay.io/konveyor/move2kube-operator:v0.3.15-rc.0
        version: 0.3.15-rc.0
      entries:
      - name: move2kube-operator.v0.3.15-rc.0
        version: 0.3.15-rc.0
      - name: move2kube-operator.v0.3.14-rc.0
        version: 0.3.14-rc.0
      - name: move2kube-operator.v0.3.13-rc.0
        version: 0.3.13-rc.0
      - name: move2kube-operator.v0.3.11-rc.0
        version: 0.3.11-rc.0
      name: prerelease
    - currentCSV: move2kube-operator.v0.3.15
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "move2kube.konveyor.io/v1alpha1",
                "kind": "Move2Kube",
                "metadata": {
                  "name": "move2kube-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          containerImage: quay.io/konveyor/move2kube-operator:v0.3.15
          createdAt: "2025-03-07T06:09:48Z"
          description: Konveyor Move2Kube is an open source tool that helps migrate
            your app to run on Kubernetes/Openshift.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/move2kube-operator
          support: https://github.com/konveyor/move2kube-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Move2Kube
            name: move2kubes.move2kube.konveyor.io
            version: v1alpha1
        description: |
          Konveyor Move2Kube is a tool that uses source files such as Docker Compose files or Cloud Foundry manifest files, and even source code, to generate Kubernetes deployment files including object yaml, Helm charts, and operators.

          This operator can be used to start an instance of the Move2Kube UI.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Move2Kube CR.

          By default the operator installs a StatefulSet that brings up a Pod that serves the UI.
          See https://move2kube.konveyor.io/tutorials/ui for a tutorial on how to use the UI.

          Data persistence can be enabled by setting the `persistentVolumeClaim.enable` field to `true` in the CR `spec`. https://github.com/konveyor/move2kube-operator/blob/0e79476bcd873d3272164a47af31b00590dacfb1/helm-charts/move2kube/values.yaml#L26

          ### Documentation

          See https://move2kube.konveyor.io/ for more details.

          ### Getting help

          If you encounter any issues while using this operator, you can create an issue on our [Github repo](https://github.com/konveyor/move2kube-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing

          You can contribute by making PRs to our Github repo https://github.com/konveyor/move2kube-operator
        displayName: Konveyor Move2Kube
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - modernization
        - replatform
        - move2kube
        - konveyor
        - migration
        links:
        - name: Documentation
          url: https://move2kube.konveyor.io/
        - name: Move2Kube Operator
          url: https://github.com/konveyor/move2kube-operator
        maintainers:
        - email: harikrishmenon@gmail.com
          name: Harikrishnan Balagopal
        - email: seshapad@in.ibm.com
          name: Padmanabha V Seshadri
        maturity: alpha
        minKubeVersion: 1.13.0
        provider:
          name: Konveyor
          url: https://konveyor.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/move2kube-operator@sha256:38d03dacca046dda3ba08c39943ec2e7db33f1c7bb897e84fe1308a0982c63f1
        - quay.io/konveyor/move2kube-operator:v0.3.15
        version: 0.3.15
      entries:
      - name: move2kube-operator.v0.3.15
        version: 0.3.15
      - name: move2kube-operator.v0.3.14
        version: 0.3.14
      - name: move2kube-operator.v0.3.13
        version: 0.3.13
      - name: move2kube-operator.v0.3.11
        version: 0.3.11
      name: stable
    defaultChannel: stable
    packageName: move2kube-operator
    provider:
      name: Konveyor
      url: https://konveyor.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/try-flink-kubernetes-operator/quick-start/
    name: flink-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: flink-kubernetes-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"flink.apache.org/v1beta1",
                "kind":"FlinkDeployment",
                "metadata":{
                    "name":"basic-example"
                },
                "spec":{
                    "image":"flink:1.16",
                    "flinkVersion":"v1_16",
                    "flinkConfiguration":{
                        "taskmanager.numberOfTaskSlots":"2"
                    },
                    "serviceAccount":"flink",
                    "jobManager":{
                        "resource":{
                            "memory":"2048m",
                            "cpu":1
                        }
                    },
                    "taskManager":{
                        "resource":{
                            "memory":"2048m",
                            "cpu":1
                        }
                    },
                    "job":{
                        "jarURI":"local:///opt/flink/examples/streaming/StateMachineExample.jar",
                        "parallelism":2,
                        "upgradeMode":"stateless"
                    }
                }
              },
              {
                "apiVersion":"flink.apache.org/v1beta1",
                "kind":"FlinkSessionJob",
                "metadata":{
                  "name":"basic-session-job-example2"
                },
                "spec":{
                  "deploymentName":"basic-session-cluster",
                  "job":{
                      "jarURI":"https://repo1.maven.org/maven2/org/apache/flink/flink-examples-streaming_2.12/1.16.1/flink-examples-streaming_2.12-1.16.1.jar",
                      "parallelism":2,
                      "upgradeMode":"stateless",
                      "entryClass":"org.apache.flink.streaming.examples.statemachine.StateMachineExample"
                  }
                }
              },
              {
                "apiVersion": "flink.apache.org/v1beta1",
                "kind": "FlinkStateSnapshot",
                "metadata": {
                  "name": "example-savepoint"
                },
                "spec": {
                  "savepoint": {
                    "alreadyExists": true,
                    "disposeOnDelete": false,
                    "path": "/flink-data/savepoints/savepoint-98682a-21931bf10c39"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "basic-example": {
                "description": "Example flink deployment"
              },
              "basic-session-job-example2": {
                "description": "Example flink session job"
              }
            }
          capabilities: Deep Insights
          categories: Big Data, Streaming & Messaging
          containerImage: ghcr.io/apache/flink-kubernetes-operator:1.13.0
          createdAt: "2025-10-22 22:07:29"
          description: Flink Kubernetes Operator manages the complete deployment lifecycle
            of Apache Flink applications.
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/apache/flink-kubernetes-operator.git
          support: Apache Software Foundation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The FlinkDeployment CR defines Flink Application and Session
              cluster deployments
            displayName: Flink Deployment
            kind: FlinkDeployment
            name: flinkdeployments.flink.apache.org
            version: v1beta1
          - description: The FlinkSessionJob CR defines the session job on the Session
              cluster and each Session cluster can run multiple FlinkSessionJob.
            displayName: Flink Session Job
            kind: FlinkSessionJob
            name: flinksessionjobs.flink.apache.org
            version: v1beta1
          - description: The FlinkStateSnapshots CR is used to describe savepoint
              or checkpoint for a Flink job.
            displayName: Flink State Snapshot
            kind: FlinkStateSnapshot
            name: flinkstatesnapshots.flink.apache.org
            version: v1beta1
        description: |-
          Flink Kubernetes Operator acts as a control plane to manage the complete deployment lifecycle of Apache Flink applications.
          ## Installation
          This operator can be installed from [OperatorHub.io](https://operatorhub.io/operator/flink-kubernetes-operator).

          By default, the Flink operator monitors and run Flink applications in the same namespace as the operator.
          To run Flink jobs in another namespace, users are responsible for setting up the RBAC in that namespace.

          For example, users need to do the following for each additional namespace that runs the Flink applications:

          1. Switch to the namespace by running:

              ```sh
              kubectl config set-context --current --namespace=CHANGEIT
              ```

          2. Create the service account, role, and role binding in the namespace using the commands below:

              ```sh
              kubectl apply -f - <<EOF
              apiVersion: v1
              kind: ServiceAccount
              metadata:
                labels:
                  app.kubernetes.io/name: flink-kubernetes-operator
                  app.kubernetes.io/version: 1.13.0
                name: flink
              ---
              apiVersion: rbac.authorization.k8s.io/v1
              kind: Role
              metadata:
                labels:
                  app.kubernetes.io/name: flink-kubernetes-operator
                  app.kubernetes.io/version: 1.13.0
                name: flink
              rules:
              - apiGroups:
                - ""
                resources:
                - pods
                - configmaps
                verbs:
                - '*'
              - apiGroups:
                - apps
                resources:
                - deployments
                - deployments/finalizers
                verbs:
                - '*'
              ---
              apiVersion: rbac.authorization.k8s.io/v1
              kind: RoleBinding
              metadata:
                labels:
                  app.kubernetes.io/name: flink-kubernetes-operator
                  app.kubernetes.io/version: 1.13.0
                name: flink-role-binding
              roleRef:
                apiGroup: rbac.authorization.k8s.io
                kind: Role
                name: flink
              subjects:
              - kind: ServiceAccount
                name: flink
              EOF
              ```

          3. Proceed deploying Flink applications using the the Custom Resource Definition below.

              ```sh
              kubectl create -f https://raw.githubusercontent.com/apache/flink-kubernetes-operator/release-1.13.0/examples/basic.yaml
              ```

          See [Flink custom resources](https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/custom-resource/overview/#overview) for more detail.
        displayName: Flink Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - flink
        - streaming
        links:
        - name: Website
          url: https://flink.apache.org/
        - name: Documentation
          url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/
        - name: Mailing list
          url: https://lists.apache.org/list.html?dev@flink.apache.org
        - name: Slack
          url: https://apache-flink.slack.com/join/shared_invite/zt-1llkzbgyt-K2nNGGg88rfsDGLkT09Qzg#/shared-invite/email
        - name: GitHub
          url: https://github.com/apache/flink-kubernetes-operator
        maintainers:
        - email: mbalassi@apache.org
          name: Marton Balassi
        - email: htchang@us.ibm.com
          name: Ted Chang
        - email: jbusche@us.ibm.com
          name: James Busche
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Community
          url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/try-flink-kubernetes-operator/quick-start/
        relatedImages:
        - ghcr.io/apache/flink-kubernetes-operator:1.13.0
        - quay.io/community-operator-pipeline-prod/flink-kubernetes-operator@sha256:3a177f2a9c91e7a6b212ecadc116c2a598c8c834106c6af0f6754a3e4f2a6d9a
        version: 1.13.0
      entries:
      - name: flink-kubernetes-operator.v1.13.0
        version: 1.13.0
      - name: flink-kubernetes-operator.v1.12.0
        version: 1.12.0
      - name: flink-kubernetes-operator.v1.11.0
        version: 1.11.0
      - name: flink-kubernetes-operator.v1.6.0
        version: 1.6.0
      - name: flink-kubernetes-operator.v1.5.0
        version: 1.5.0
      - name: flink-kubernetes-operator.v1.4.0
        version: 1.4.0
      - name: flink-kubernetes-operator.v1.3.1
        version: 1.3.1
      - name: flink-kubernetes-operator.v1.3.0
        version: 1.3.0
      name: alpha
    defaultChannel: alpha
    packageName: flink-kubernetes-operator
    provider:
      name: Community
      url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/try-flink-kubernetes-operator/quick-start/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Oracle
      provider-url: https://www.oracle.com/cloud/
    name: oci-ccm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: oci-ccm-operator.v0.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ccm.oraclecloud.com/v1alpha1",
                "kind": "OCICloudManager",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oci-ccm-operator",
                    "app.kubernetes.io/instance": "ocicloudmanager",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ocicloudmanager",
                    "app.kubernetes.io/part-of": "oci-ccm-operator"
                  },
                  "name": "ocicloudmanager"
                },
                "spec": {
                  "compartment": "CompartmentId",
                  "driverNamespace": "kube-system",
                  "loadBalancer": {
                    "securityList": "SecurityListId",
                    "securityListManagementMode": "Frontend",
                    "subnet": "SubnetId"
                  },
                  "vcn": "VcnId"
                }
              },
              {
                "apiVersion": "ccm.oraclecloud.com/v1alpha1",
                "kind": "OCICsiDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oci-ccm-operator",
                    "app.kubernetes.io/instance": "ocicsidriver",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ocicsidriver",
                    "app.kubernetes.io/part-of": "oci-ccm-operator"
                  },
                  "name": "ocicsidriver"
                },
                "spec": {
                  "compartment": "CompartmentId",
                  "driverNamespace": "kube-system",
                  "vcn": "VcnId"
                }
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider, Storage
          containerImage: phx.ocir.io/ax1eoqvpvbtg/oci-ccm-operator:0.0.9
          createdAt: "2023-07-28T23:42:18Z"
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          support: Oracle
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: OCICloudManager
            name: ocicloudmanagers.ccm.oraclecloud.com
            version: v1alpha1
          - kind: OCICsiDriver
            name: ocicsidrivers.ccm.oraclecloud.com
            version: v1alpha1
        description: OCI Kubernetes Cloud Controller Manager implementation (or out-of-tree
          cloud-provider) for Oracle Cloud Infrastructure (OCI).
        displayName: oci-ccm-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OCI
        - CCM
        - OpenShift
        - Kubernetes
        links:
        - name: Oracle
          url: https://www.oracle.com/cloud/
        - name: OCI Cloud Controller Manager (CCM)
          url: https://github.com/oracle/oci-cloud-controller-manager
        maintainers:
        - email: david.d.campbell@oracle.com
          name: David Campbell
        - email: alex.blinov@oracle.com
          name: Alex Blinov
        maturity: alpha
        provider:
          name: Oracle
          url: https://www.oracle.com/cloud/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - phx.ocir.io/ax1eoqvpvbtg/oci-ccm-operator:0.0.9
        - quay.io/openshift-community-operators/oci-ccm-operator@sha256:eaf63c6f9ee9e9c3562d6ced4cff091c1e401daa826ee3a92b321a5cc8f13da2
        version: 0.0.9
      entries:
      - name: oci-ccm-operator.v0.0.9
        version: 0.0.9
      name: alpha
    defaultChannel: alpha
    packageName: oci-ccm-operator
    provider:
      name: Oracle
      url: https://www.oracle.com/cloud/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Opstree Solutions
      provider-url: ""
    name: logging-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: logging-operator.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"logging.logging.opstreelabs.in/v1beta1","kind":"Elasticsearch","metadata":{"name":"elasticsearch"},"spec":{"esClusterName":"prod","esVersion":"7.17.0","esSecurity":{"autoGeneratePassword":true,"tlsEnabled":true}}},{"apiVersion":"logging.logging.opstreelabs.in/v1beta1","kind":"Fluentd","metadata":{"name":"fluentd"},"spec":{"esCluster":{"host":"elasticsearch-master"},"esSecurity":{"tlsEnabled":true,"existingSecret":"elasticsearch-password"},"indexNameStrategy":"namespace_name"}},{"apiVersion":"logging.logging.opstreelabs.in/v1beta1","kind":"Kibana","metadata":{"name":"kibana"},"spec":{"replicas":1,"esCluster":{"host":"https://elasticsearch-master:9200","esVersion":"7.16.0","clusterName":"elasticsearch"},"esSecurity":{"tlsEnabled":true,"existingSecret":"elasticsearch-password"}}}]'
          capabilities: Seamless Upgrades
          categories: Database,  Monitoring, Big Data
          certified: "false"
          containerImage: quay.io/opstree/logging-operator:v0.4.0
          createdAt: 04-07-2022
          description: A golang-based operator to create and manage EFK (Elasticsearch,
            Fluentd, and Kibana) stack on Kubernetes.
          k8sMaxVersion: ""
          k8sMinVersion: ""
          repository: https://github.com/ot-container-kit/logging-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Elasticsearch
            displayName: Elasticsearch
            kind: Elasticsearch
            name: elasticsearches.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Index Life Cycle
            displayName: IndexLifeCycle
            kind: IndexLifeCycle
            name: indexlifecycles.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Index Template
            displayName: IndexTemplate
            kind: IndexTemplate
            name: indextemplates.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Fluentd
            displayName: Fluentd
            kind: Fluentd
            name: fluentds.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Kibana
            displayName: Kibana
            kind: Kibana
            name: kibanas.logging.logging.opstreelabs.in
            version: v1beta1
        description: |2+

          Logging Operator is an operator created in Golang to set up and manage EFK(Elasticsearch, Fluentd, and Kibana) cluster inside Kubernetes and Openshift environment. This operator is capable of setting up each individual component of EFK cluster separately.
          ### Supported Features
          - Setup of elasticsearch cluster with different nodes type:- master, data, ingestion, and client.
          - Customizable configuration for elasticsearch, fluentd stack.
          - Setup of fluentd as light-weight log-shipper as Daemonset.
          - Kibana will be set up as visualization tool for elastic stack.
          - Seamless upgrades of elasticsearch, fluentd, and kibana.
          - Security best practices support for complete stack such as TLS, elastic security.
          - Kubernetes resources objects support like:- resources, securityContext, affinity, tolerations, etc.
          - Elasticsearch plugins and keystore seamless support with operator
          ### Documentation
          **[Documentation](https://ot-logging-operator.netlify.app/)**
          ### Getting Help
          This project is managed by OpsTree Solutions. If you have any queries or suggestions, mail us at opensource@opstree.com.
          ### Contributing
          You can contribute to this project by:-
          * Raising Bugs and Feature Requests
          * Fixing issue by opening a Pull Request
          * Improving Documentation
          ### License
          MongoDB Operator is licensed under [Apache License, Version 2.0](https://github.com/OT-CONTAINER-KIT/logging-operator/blob/master/LICENSE)

        displayName: Logging Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Operator
        - Elasticsearch
        - Fluentd
        - Kibana
        - Opstree
        - Logging
        - Monitoring
        - Cloud Native
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://ot-logging-operator.netlify.app/
        - name: Buildpiper
          url: https://buildpiper.io
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep
        maturity: beta
        minKubeVersion: 1.17.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/opstree/logging-operator:v0.4.0
        - quay.io/openshift-community-operators/logging-operator@sha256:d3ce3322f7f25c7b8bfabdd6e9fd32b833239fc39592240e0ccff3a13757fb17
        version: 0.4.0
      entries:
      - name: logging-operator.v0.4.0
        version: 0.4.0
      - name: logging-operator.v0.3.0
        version: 0.3.0
      name: beta
    defaultChannel: beta
    packageName: logging-operator
    provider:
      name: Opstree Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NetApp, Inc.
      provider-url: https://www.netapp.com/
    name: trident-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trident-operator.v25.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "trident.netapp.io/v1",
                "kind": "TridentOrchestrator",
                "metadata": {
                  "name": "trident"
                },
                "spec": {
                  "IPv6": false,
                  "debug": true,
                  "nodePrep": [],
                  "imagePullSecrets": [],
                  "imageRegistry": "",
                  "namespace": "trident",
                  "silenceAutosupport": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: docker.io/netapp/trident-operator:25.10.0
          createdAt: "2025-11-18"
          description: Trident Operator, to manage NetApp Trident installations
          operatorhub.io/ui-metadata-max-k8s-version: "1.34"
          repository: https://github.com/netapp/trident
          support: NetApp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Used to deploy Astra Trident.
            displayName: Trident Orchestrator
            kind: TridentOrchestrator
            name: tridentorchestrators.trident.netapp.io
            version: v1
        description: |
          NetApp Trident is an open source storage provisioner and orchestrator maintained by NetApp. It enables you to create storage volumes for containerized applications managed by Docker and Kubernetes. For full release information, including patch release changes, see https://docs.netapp.com/us-en/trident/trident-rn.html.
        displayName: NetApp Trident
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - NetApp
        - ONTAP
        - Trident
        - storage
        - performance
        - open source
        - Astra
        - Cloud Native
        - AWS
        - Azure
        - GCP
        - Cloud Volumes
        links:
        - name: GitHub Repository
          url: https://github.com/NetApp/trident
        - name: Trident documentation
          url: https://docs.netapp.com/us-en/trident/index.html
        - name: Support policy
          url: https://mysupport.netapp.com/site/info/version-support
        - name: Release Notes
          url: https://docs.netapp.com/us-en/trident/trident-rn.html
        maintainers:
        - email: ng-astra-product@netapp.com
          name: NetApp
        provider:
          name: NetApp, Inc.
          url: https://www.netapp.com/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/trident-operator:25.10.0
        - docker.io/netapp/trident-operator:25.10.0
        version: 25.10.0
      entries:
      - name: trident-operator.v25.10.0
        version: 25.10.0
      name: stable
    defaultChannel: stable
    packageName: trident-operator
    provider:
      name: NetApp, Inc.
      url: https://www.netapp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: secrets-store-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: secrets-store-csi-driver-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-secrets-store-csi-driver-rhel9-operator@sha256:36cb66f68975490405a76e742b0f9d347106f0921fcc68d1254765178c898de6
          createdAt: "2023-06-12T00:00:00Z"
          description: Install and configure Secrets Store CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.13.0-0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/secrets-store-csi-driver-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SecretProviderClass is the Schema for the secretproviderclasses
              API
            displayName: Secret Provider Class
            kind: SecretProviderClass
            name: secretproviderclasses.secrets-store.csi.x-k8s.io
            version: v1
          - description: SecretProviderClassPodStatus is the Schema for the secretproviderclassespodstatus
              API
            displayName: Secret Provider Class Pod Status
            kind: SecretProviderClassPodStatus
            name: secretproviderclasspodstatuses.secrets-store.csi.x-k8s.io
            version: v1
        description: |
          Operator that installs and configures the CSI driver for Secrets Store.
        displayName: Secrets Store CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        links:
        - name: Documentation
          url: https://github.com/openshift/secrets-store-csi-driver-operator
        - name: Source Repository
          url: https://github.com/openshift/secrets-store-csi-driver-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-secrets-store-csi-driver-operator-bundle@sha256:a4cfd15e063019d925ccd4893a87cf29c83f372c93578bd5fa2e4de06c47ae0a
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-secrets-store-csi-driver-rhel9-operator@sha256:36cb66f68975490405a76e742b0f9d347106f0921fcc68d1254765178c898de6
        - registry.redhat.io/openshift4/ose-secrets-store-csi-driver-rhel9@sha256:f3bf81a36c97fd7acbe1e3213c64e03ddb7643b17466f3afce5b06a29b7e6ea0
        version: 4.20.0-202512090918
      entries:
      - name: secrets-store-csi-driver-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: secrets-store-csi-driver-operator.v4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: secrets-store-csi-driver-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: secrets-store-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: secrets-store-csi-driver-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: secrets-store-csi-driver-operator.v4.20.0-202510212154
        version: 4.20.0-202510212154
      - name: secrets-store-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: secrets-store-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://your.domain
    name: amq-streams-proxy
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-streams-proxy.v3.0.1-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
          createdAt: "2025-11-11T15:24:48Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.0.1-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        version: 3.0.1-4
      entries:
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: alpha
    - currentCSV: amq-streams-proxy.v3.0.1-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
          createdAt: "2025-11-11T15:24:48Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.0.1-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        version: 3.0.1-4
      entries:
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: amq-streams-3.0.x
    - currentCSV: amq-streams-proxy.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
          createdAt: "2025-12-04T15:59:50Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:308597d82823daf94b0526c93ba7c689b63bcc6a76f53e55a8cc2e8cfa17ad13
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:2d5710829cedc5afc10fd3e021013a2b61ee38262d45ed4bc6375b820aa781f6
        version: 3.1.0-6
      entries:
      - name: amq-streams-proxy.v3.1.0-6
        version: 3.1.0-6
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: amq-streams-3.1.x
    - currentCSV: amq-streams-proxy.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
          createdAt: "2025-12-04T15:59:50Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:2d5710829cedc5afc10fd3e021013a2b61ee38262d45ed4bc6375b820aa781f6
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:308597d82823daf94b0526c93ba7c689b63bcc6a76f53e55a8cc2e8cfa17ad13
        version: 3.1.0-6
      entries:
      - name: amq-streams-proxy.v3.1.0-6
        version: 3.1.0-6
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: amq-streams-3.x
    - currentCSV: amq-streams-proxy.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
          createdAt: "2025-12-04T15:59:50Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:308597d82823daf94b0526c93ba7c689b63bcc6a76f53e55a8cc2e8cfa17ad13
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:2d5710829cedc5afc10fd3e021013a2b61ee38262d45ed4bc6375b820aa781f6
        version: 3.1.0-6
      entries:
      - name: amq-streams-proxy.v3.1.0-6
        version: 3.1.0-6
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: stable
    defaultChannel: stable
    packageName: amq-streams-proxy
    provider:
      name: Red Hat
      url: https://your.domain
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Sonatype
      provider-url: ""
    name: nexus-repository-ha-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nexus-repository-ha-operator-certified.v3.84.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonatype.com/v1alpha1",
                "kind": "NexusRepo",
                "metadata": {
                  "name": "nexusrepo-sample"
                },
                "spec": {
                  "ingress": {
                    "additionalRules": null,
                    "annotations": null,
                    "defaultRule": false,
                    "dockerIngress": {
                      "annotations": null,
                      "enabled": false,
                      "host": "example.com",
                      "name": "nexus-docker-ingress"
                    },
                    "dockerSubdomain": false,
                    "enabled": false,
                    "host": "example.com",
                    "name": "nexus-ingress",
                    "tls": {
                      "enabled": false,
                      "secretName": "tlsSecretName"
                    }
                  },
                  "license": {
                    "fileContentsBase64": "your_license_file_contents_in_base_64",
                    "secretName": "nexus-repo-license"
                  },
                  "secret": {
                    "nexusSecret": {
                      "enabled" : false,
                      "name": "nexus-secret.json",
                      "nexusSecretsKeyId": "super_secret_key_id",
                      "secretKeyfileContentsBase64": "secretKeyfileContentsBase64",
                      "mountPath": "/var/nexus-repo-secrets"
                    }
                  },
                  "nexusData": {
                    "pvc": {
                      "accessMode": "ReadWriteOnce",
                      "size": "2Gi"
                    },
                    "storageClass": {
                      "enabled": false,
                      "name": "nexusrepo-storage",
                      "parameters": {},
                      "provisioner": "provisioner",
                      "reclaimPolicy": "Retain",
                      "volumeBindingMode": "WaitForFirstConsumer"
                    },
                    "volumeClaimTemplate": {
                      "enabled": false
                    }
                  },
                  "service": {
                    "docker": {
                      "enabled": false,
                      "name": "nexus-repo-docker-service",
                      "port": 9090,
                      "protocol": "TCP",
                      "targetPort": 9090,
                      "type": "NodePort"
                    },
                    "nexus": {
                      "enabled": false,
                      "name": "nexus-repo-service",
                      "port": 80,
                      "protocol": "TCP",
                      "targetPort": 8081,
                      "type": "NodePort"
                    }
                  },
                  "statefulset": {
                    "container": {
                      "containerPort": 8081,
                      "env": {
                        "clustered": false,
                        "install4jAddVmParams": "-Xms2703m -Xmx2703m",
                        "jdbcUrl": null,
                        "nexusInitialPassword": "nexusabc",
                        "password": "nexus",
                        "user": "nexus",
                        "zeroDowntimeEnabled": false
                      },
                      "imageName": "registry.connect.redhat.com/sonatype/nexus-repository-manager@sha256:fbad488ff2e368845473a11b4955992fe826a94811da3abf5cc3c6a33ff3974f",
                      "pullPolicy": "IfNotPresent",
                      "resources": {
                        "limits": {
                          "cpu": 4,
                          "memory": "8Gi"
                        },
                        "requests": {
                          "cpu": 4,
                          "memory": "8Gi"
                        }
                      },
                      "terminationGracePeriod": 120
                    },
                    "imagePullSecrets": {},
                    "livenessProbe": {
                      "failureThreshold": 6,
                      "initialDelaySeconds": 240,
                      "path": "/",
                      "periodSeconds": 60
                    },
                    "name": "nexusrepo-statefulset",
                    "readinessProbe": {
                      "failureThreshold": 6,
                      "initialDelaySeconds": 240,
                      "path": "/",
                      "periodSeconds": 60
                    },
                    "replicaCount": 1
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.connect.redhat.com/sonatype/nexus-repository-ha-operator-certified@sha256:99f30aa5ba8469d96de3efe69d1b21e73ff022172fc79144bba496d1119ec8a2
          createdAt: "2023-08-14"
          description: |-
            Nexus Repository is the central source of control to efficiently manage all binaries
            and build artifacts across your DevOps pipeline.
          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.replaces: 3.80.0-2
          olm.skipRange: <3.84.0-1
          repository: https://github.com/sonatype/operator-nexus-repository
          support: Sonatype
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Nexus Repository
            displayName: NexusRepo
            kind: NexusRepo
            name: nexusrepos.sonatype.com
            version: v1alpha1
        description: |-
          Nexus Repository is the central source of control to efficiently manage all binaries
          and build artifacts across your DevOps pipeline.
          The flow of open source and third-party components into and through an organization
          creates a complex software supply chain.
          Nexus Repository delivers speed, efficiency, and quality to the governance
          and management of all dependencies, libraries, and applications for your DevOps teams.

          ## Core Capabilities

          * **Dependency Management**:
            Improves reliability with repeatable, fast access to secure dependencies
          * **Developer Productivity**:
            Streamline developer workflows by enabling the sharing of components and applications across teams
          * **Supply Chain Performance**:
            Improve speed-to-market and reduced build times with release advanced staging and component tagging
          * **CI/CD Integrations**:
            Increase DevOps scalability with integrations to the most popular build and deployment tools

          Version control systems and package registries do not scale when managing proprietary,
          open source, and third-party components.
          Organizations need a central binary and build artifact repository to manage dependencies
          across the entire software supply chain.

          ## Limitations

          ## Controlling Automatic vs Manual Update

          If you use the default configuration for the Nexus Repository Operator installation,
          please notice that on any new operator release, the corresponding deployments are
          also updated without user intervention, resulting in unscheduled downtime.

          If you want to avoid this unscheduled downtime, we recommend installing the operator
          into **its own namespace** with **manual approval** for updates.

          ## Usage
          By default, the example Custom Resource starts up a single instance of Nexus Repository in non-Pro mode using an H2 database.

          ### Connect to a PostgreSQL database
          We strongly recommend using Nexus Repository with a PostgreSQL database. To connect a Nexus Repository instance to a PostgreSQL database, do as follows:
          * Update the `license.fileContentsBase64` parameter with a base 64 representation of your Nexus Repository Pro license.
          * Set the `statefulset.container.env.jdbcUrl` parameter to your database url.
          * Set the `statefulset.container.env.user` parameter to your database user name.
          * Set the `statefulset.container.env.password` parameter to your database password.

          ### High Availability (HA) mode
          To start Nexus Repository in HA mode, you must edit the Custom Resource YAML as follows:

          * Update the `license.fileContentsBase64` parameter with a base 64 representation of your Nexus Repository Pro license.
          * Set the `statefulset.container.env.jdbcUrl` parameter to your database url.
          * Set the `statefulset.container.env.user` parameter to your database user name.
          * Set the `statefulset.container.env.password` parameter to your database password.
          * Set the `statefulset.container.env.clustered` parameter to true.
          * Set the `statefulset.replicaCount` parameter to the number of Nexus Repository pods you require in your HA cluster
          * You must use a persistent volume as described in the 'Storage' section below.

          ### Storage
          The default configuration uses an emptyDir volume for storing Nexus Repository logs. However, we strongly recommend that
          you configure dynamic provisioning of persistent storage based on your deployment environment as explained below.

          #### Cloud deployments (AWS/Azure)
          * Ensure the appropriate Container Storage Interface (CSI) driver(s) are installed for your chosen OpenShift cloud deployment.
            Please, refer to OpenShift documentation for details on configuring CSI drivers.
          Note: if you're using Red Hat OpenShift on AWS (ROSA), CSI drivers for dynamically provisioning EBS volumes are installed
          by default; you should see associated storage classes for them in your cluster web console.

          #### On premise deployments
          1. Attach separate disks (i.e. separate from the root disk) to your worker nodes.
          2. Install the Local Storage Operator. Please refer to Open Shift persistent storage documentation:
             https://docs.openshift.com/container-platform/4.13/storage/persistent_storage/persistent_storage_local/persistent-storage-local.html
          and the Local Storage Operator documentation: https://github.com/openshift/local-storage-operator.
          3. Use the Local Storage Operator to automatically create persistent volumes for your chosen storage class name as documented here:
             https://docs.openshift.com/container-platform/4.13/storage/persistent_storage/persistent_storage_local/persistent-storage-local.html
          4. Specify the storage class name from step 3 as the value of the `nexusData.storageClass.name` property and also set `nexusData.volumeClaimTemplate.enabled` to true.

          #### Configuring the operator for dynamic persistent volume provisioning
          * Set the `nexusData.storageClass.name` parameter to a storage class name. This could be one of the default storage classes
            automatically created in your OpenShift cluster (e.g., if you're using ROSA) or one that you would like the operator to create.
          * If you would like to create a dedicated storage class (i.e., you don't want to use the default), then in addition to
            specifying a value for `nexusData.storageClass.name`, you must also set `nexusData.storageClass.enabled` parameter to `true`.
          * Set the `nexusData.volumeClaimTemplate.enabled` parameter to `true`.

          ### Additional configuration
          * Once the operator has created the server instance and it is running, you can further configure Nexus Repository via the NexusRepo custom resource:

          | Parameter                                                   | Description                         | Default                                 |
          | ----------------------------------------------------------- | ----------------------------------  | ----------------------------------------|
          | `statefulset.name`                                          |  The suffix for the statefulset's service name    | nexusrepo-statefulset     |
          | `statefulset.replicaCount`                                  |  The desired number of Nexus Repository pods    | 3                           |
          | `statefulset.container.imageName`                           |  The Nexus repository image registry url    |
          | | | registry.connect.redhat.com/sonatype/nexus-repository-manager:<app version>-ubi-1|
          | `statefulset.container.resources.requests.cpu`              |  The minimum cpu the Nexus repository pod can request    | 4 |
          | `statefulset.container.resources.requests.memory`           |  The minimum memory the Nexus repository pod can request    | 8Gi|
          | `statefulset.container.resources.limits.cpu`                |  The maximum cpu the Nexus repository pod may get.    | 4|
          | `statefulset.container.resources.limits.memory`             |  The maximum memory the Nexus repository pod may get.  | 8Gi|
          | `statefulset.container.containerPort`                       |  The Nexus Repository container's HTTP port  | 8081|
          | `statefulset.container.pullPolicy`                          |  The Nexus Repository docker image pull policy  | IfNotPresent|
          | `statefulset.container.terminationGracePeriod`              |  The time given for the pod to gracefully shut down  | 120 seconds|
          | `statefulset.container.env.clustered`                       |  Controls whether Nexus Repository should start in clustered mode  | False|
          | `statefulset.container.env.install4jAddVmParams`            |  Xmx and Xms settings for JVM  | -Xms2703m -Xmx2703m|
          | `statefulset.container.env.user`                            |  The database user name | nexus (can be overridden via Kubernetes secret. See above)|
          | `statefulset.container.env.password`                        |  The database password  | nexus (can be overridden via Kubernetes secret. See above)|
          | `statefulset.container.env.jdbcUrl`                         |  The database url |
          | | | jdbc:postgresql://your_database_server:5432/nexus (must be overridden via Kubernetes |
          | | | secret object which feeds into env variable variables defined in the operator.yaml . See above)|
          | `statefulset.container.env.nexusInitialPassword`            |  The initial admin password for Nexus Repository UI. This is for first time |
          | | installs only. Subsequent installs/restarts on the same node ignores this setting | nexusabc|
          | `statefulset.livenessProbe.initialDelaySeconds`             |  The initial delay before the Nexus Repository application is pinged for a |
          | | response i.e. to determine whether the application is still alive | 240|
          | `statefulset.livenessProbe.path`                            |  The path to ping the application | |
          | `statefulset.livenessProbe.periodSeconds`                   |  The interval for checking that the application is still alive i.e. responsive, not deadlocked etc | 60|
          | `statefulset.livenessProbe.failureThreshold`                |  The maximum number of times the application ping can fail before the |
          | | application is considered unresponsive. Kubernetes will attempt to restart the application's pod in this case | 6|
          | `statefulset.readinessProbe.initialDelaySeconds`            |  The initial delay before the Nexus Repository application is checked |
          | | whether it is ready to receive traffic | 240|
          | `statefulset.readinessProbe.path`                           |  The path where the Nexus Repository application is checked for traffic readiness | |
          | `statefulset.readinessProbe.periodSeconds`                  |  The interval for checking the Nexus Repository application for traffic readiness | 60|
          | `statefulset.readinessProbe.failureThreshold`               |  The maximum number of times to check the Nexus Repository application for traffic readiness | 6|
          | `statefulset.imagePullSecrets`                              |  The pull secret for private image registries | {}|
          | `ingress.name`                                              |  The name of an Ingress object which listens for requests to Nexus Repository on port 80 | nexus-ingress|
          | `ingress.enabled`                                           |  Whether or not to create the Ingress | false|
          | `ingress.host`                                              |  Ingress host | "example.com"|
          | `ingress.defaultRule`                                       |  Whether or not to add a default rule for the Nexus Repository |
          | | Ingress which forwards traffic to a Service object  | false|
          | `ingress.additionalRules`                                   |  Additional rules to add to the ingress | null|
          | `ingress.tls.enabled`                                       |  Whether or not TLS should be enabled for the Ingress | false|
          | `ingress.tls.secretName`                                    | The name of a Secret object in which to store the TLS secret | tlsSecretName|
          | `ingress.dockerSubdomain`                                   |  Whether or not to add rules for docker subdomains | false|
          | `ingress.annotations`                                       |  Annotations for the Ingress object | null |
          | `license.fileContentsBase64`                                |  Your Base64 encoded Nexus Repository license | your_license_file_contents_in_base_64 |
          | `license.secretName`                                        |  The name of a secret object in which to store your |
          | | Base64-encoded Nexus Repository license | nexus-repo-license|
          | `ingress.dockerIngress.name`                                |  The name of an Ingress object which listens for requests to an |
          | | existing docker repository in Nexus Repository | nexus-docker-ingress|
          | `ingress.dockerIngress.enabled`                             |  Whether or not to create an Ingress for a docker repository | false|
          | `ingress.dockerIngress.host`                                |  The docker Ingress's host | "example.com"|
          | `ingress.dockerIngress.annotations`                         |  Annotations for the docker Ingress object | null |
          | `nexusData.pvc.size`                                        |  The volume size to request for storing Nexus logs | 2Gi |
          | `nexusData.pvc.accessMode`                                  |  The persistent volume claim access mode | ReadWriteOnce |
          | `nexusData.storageClass.name`                               |  The name of the storage class to use for dynamically requesting that |
          | | storage be provisioned when using dynamic provisioning or to randomly select a pre-created persisted volume when using the Local Storage Operator. | nexusrepo-storage |
          | `nexusData.storageClass.reclaimPolicy`                      |  The reclaim policy for persistent volume's created by the storage class | Retain |
          | `nexusData.storageClass.enabled`                            |  Whether or not a storage class object should be created. | false |
          | `nexusData.storageClass.volumeBindingMode`                  |  It controls when volume binding and dynamic provisioning should occur | WaitForFirstConsumer |
          | `nexusData.storageClass.provisioner`                        |  The name of the volume provisioner | provisioner |
          | `nexusData.storageClass.parameters`                         |  The additional parameters for the storage class | {} |
          | `nexusData.volumeClaimTemplate.enabled`                           |  Whether or not volume should be requested using a claim template. |
          | | You should set this property to true when using dynamic volume provisioning (cloud deployments) |
          | | or if you're using Local Storage Operator to automatically create persistent volumes for locally attached disks (i.e. not root disk) | false |
          | `license.secretName | A name for the Kubernetes secret object which stores the base64 representation of your |
          | | Nexus Repository license specified via `license.fileContentsBase64` is stored | nexus-repo-license |
          | `license.fileContentsBase64 | A base64 representation of your Nexus Repository license | your_license_file_contents_in_base_64 |
          | `service.nexus.name`                                              |  The name of a kubernetes Service Object which allows access to |
          | | Nexus Repository's main HTTP port | nexus-repo-service |
          | `service.nexus.enabled`                                           |  Whether or not to create the Service object | false|
          | `service.nexus.type`                                              |  The type of the Kubernetes Service | "NodePort"|
          | `service.nexus.protocol`                                       |  The protocol  | TCP |
          | `service.nexus.port`                                   |  The port to listen for incoming requests | 80|
          | `service.nexus.targetPort`                                   |  The port to forward requests to | 8081 |
          | `service.docker.name`                                              |  The name of a kubernetes Service Object which allows access to a |
          | | docker repository within Nexus Repository | nexus-repo-docker-service |
          | `service.docker.enabled`                                           |  Whether or not to create a Kubernetes Service object for a given |
          | | docker repository within Nexus Repository | false |
          | `service.docker.type`                                              |  The type of the Kubernetes Service | "NodePort"|
          | `service.docker.protocol`                                       |  The protocol  | TCP |
          | `service.docker.port`                                   |  The port to listen for incoming requests | 9090 |
          | `service.docker.targetPort`                                   |  The port to forward requests to | 9090 |
        displayName: Nexus Repository HA Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - repository
        - sonatype
        links:
        - name: Nexus Repository Manager
          url: https://www.sonatype.com/product-nexus-repository
        maintainers:
        - email: support@sonatype.com
          name: Sonatype
        maturity: stable
        provider:
          name: Sonatype
        relatedImages:
        - registry.connect.redhat.com/sonatype/nexus-repository-ha-operator-bundle@sha256:3e7ab287f64398b2aa434d9cfd5d99e2e9cf2d40c2e9fa1b1418537807b7aeea
        - registry.connect.redhat.com/sonatype/nexus-repository-ha-operator-certified@sha256:99f30aa5ba8469d96de3efe69d1b21e73ff022172fc79144bba496d1119ec8a2
        - registry.connect.redhat.com/sonatype/nexus-repository-manager@sha256:fbad488ff2e368845473a11b4955992fe826a94811da3abf5cc3c6a33ff3974f
        version: 3.84.0-1
      entries:
      - name: nexus-repository-ha-operator-certified.v3.84.0-1
        version: 3.84.0-1
      name: stable
    defaultChannel: stable
    packageName: nexus-repository-ha-operator-certified
    provider:
      name: Sonatype
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://redhat.com
    name: pelorus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pelorus-operator.v0.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.pelorus.dora-metrics.io/v1alpha1",
                "kind": "Pelorus",
                "metadata": {
                  "name": "pelorus-sample"
                },
                "spec": {
                  "exporters": {
                    "global": {},
                    "instances": [
                      {
                        "app_name": "deploytime-exporter",
                        "exporter_type": "deploytime"
                      },
                      {
                        "app_name": "failuretime-exporter",
                        "enabled": false,
                        "exporter_type": "failure"
                      },
                      {
                        "app_name": "committime-exporter",
                        "exporter_type": "committime"
                      },
                      {
                        "app_name": "webhook-exporter",
                        "exporter_type": "webhook"
                      }
                    ]
                  },
                  "federate_openshift_monitoring": {
                    "enabled": false
                  },
                  "openshift_prometheus_basic_auth_pass": "changeme",
                  "openshift_prometheus_htpasswd_auth": "internal:{SHA}+pvrmeQCmtWmYVOZ57uuITVghrM=",
                  "prometheus_retention": "1y",
                  "prometheus_retention_size": "1GB",
                  "prometheus_storage": false,
                  "prometheus_storage_pvc_capacity": "2Gi",
                  "prometheus_storage_pvc_storageclass": "gp2"
                }
              }
            ]
          capabilities: Basic Install
          categories: |
            Modernization & Migration,Developer Tools,Monitoring,Integration & Delivery
          containerImage: quay.io/pelorus/pelorus-operator:0.0.9
          createdAt: "2024-05-27T20:04:01Z"
          description: |
            Tool that helps IT organizations measure their impact on the overall performance of their organization
          operatorframework.io/suggested-namespace: pelorus
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/dora-metrics/pelorus/
          support: Pelorus Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Pelorus is the Schema for pelorus API to adopt instance to
              the requested workflow
            displayName: Pelorus
            kind: Pelorus
            name: peloruses.charts.pelorus.dora-metrics.io
            version: v1alpha1
        description: |
          Pelorus is a tool that helps IT organizations measure their impact on the overall performance of their organization. It does this by gathering metrics about team and organizational behaviors over time in some key areas of IT that have been shown to impact the value they deliver to the organization as a whole. Some of the key outcomes Pelorus can focus on are:

          - Software Delivery Performance
          - Product Quality and Sustainability
          - Customer experience

          For more background on the project you can read [@trevorquinn](https://github.com/trevorquinn)'s blog post on [Metrics Driven Transformation](https://www.openshift.com/blog/exploring-a-metrics-driven-approach-to-transformation).

          ## Software Delivery Performance as an outcome

          Currently, Pelorus functionality can capture proven metrics that measure Software Delivery Performance -- a significant outcome that IT organizations aim to deliver.

          Pelorus is a Grafana dashboard that can easily be deployed to an OpenShift cluster, and provides an organizational-level view of the [four critical measures of software delivery performance](https://blog.openshift.com/exploring-a-metrics-driven-approach-to-transformation/).

          ## Software Delivery Metrics Dashboard

          A short video describing each of metrics provided by Pelorus is available [here](https://www.youtube.com/watch?v=7-iB_KhUaQg).

          ## Demo

          [YouTube Video](https://www.youtube.com/watch?v=VPCOIfDcgso) with the Pelorus in action recorded during online Konveyor Community event.

          ## Documentation

          Pelorus documentation is available at [pelorus.readthedocs.io](https://pelorus.readthedocs.io/en/latest/).

          ## Contributing to Pelorus

          If you are interested in contributing to the Pelorus project, please review our Contribution guide which can be found in the [contribution guide](https://github.com/dora-metrics/pelorus/blob/master/CONTRIBUTING.md)

          ## Statement of Support

          Our support policy can be found in the [Upstream Support statement](https://github.com/dora-metrics/pelorus/blob/master/docs/UpstreamSupport.md)

          ## Code of Conduct
          Refer to dora-metrics's Code of Conduct [here](https://github.com/dora-metrics/pelorus/blob/master/CODE_OF_CONDUCT.md).

          ## License

          This repository is licensed under the terms of [Apache-2.0 License](https://raw.githubusercontent.com/dora-metrics/pelorus/master/LICENSE).
        displayName: Pelorus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pelorus-operator
        - dora
        - dora metrics
        - pelorus
        - metrics
        - transformation
        - devops
        links:
        - name: Pelorus Docs
          url: https://pelorus.readthedocs.io/en/latest/
        - name: Pelorus Getting Started
          url: https://pelorus.readthedocs.io/en/latest/GettingStarted/Overview/
        - name: Pelorus GIT repository
          url: https://github.com/dora-metrics/pelorus/
        maintainers:
        - email: kgranger@redhat.com
          name: Kevin Granger
        - email: whayutin@redhat.com
          name: Wesley Hayutin
        - email: mpryc@redhat.com
          name: Michal Pryc
        - email: msouzaol@redhat.com
          name: Mateus Souza Oliveira
        - email: esauer@redhat.com
          name: Eric Sauer
        maturity: alpha
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - quay.io/pelorus/pelorus-operator:0.0.9
        - quay.io/community-operator-pipeline-prod/pelorus-operator@sha256:f54c42a30675897a971cac278d5d8ea24edf3121570264c07cde04f11cc4e7a8
        version: 0.0.9
      entries:
      - name: pelorus-operator.v0.0.9
        version: 0.0.9
      - name: pelorus-operator.v0.0.8
        version: 0.0.8
      - name: pelorus-operator.v0.0.7
        version: 0.0.7
      - name: pelorus-operator.v0.0.6
        version: 0.0.6
      - name: pelorus-operator.v0.0.5
        version: 0.0.5
      - name: pelorus-operator.v0.0.4
        version: 0.0.4
      - name: pelorus-operator.v0.0.3
        version: 0.0.3
      - name: pelorus-operator.v0.0.2
        version: 0.0.2
      - name: pelorus-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: pelorus-operator
    provider:
      name: Red Hat
      url: https://redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-opensearchserverless-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-opensearchserverless-controller.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/opensearchserverless-controller:0.3.0
          createdAt: "2025-11-29T03:24:52Z"
          description: AWS OpenSearchServerless controller is a service controller
            for managing OpenSearchServerless resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Collection represents the state of an AWS opensearchserverless
              Collection resource.
            displayName: Collection
            kind: Collection
            name: collections.opensearchserverless.services.k8s.aws
            version: v1alpha1
          - description: SecurityPolicy represents the state of an AWS opensearchserverless
              SecurityPolicy resource.
            displayName: SecurityPolicy
            kind: SecurityPolicy
            name: securitypolicies.opensearchserverless.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon OpenSearchServerless resources in AWS from within your Kubernetes cluster.

          **About Amazon OpenSearchServerless**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon OpenSearchServerless
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opensearchserverless
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon OpenSearchServerless Developer Resources
          url: https://aws.amazon.com/OpenSearchServerless/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: opensearchserverless maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/opensearchserverless-controller:0.3.0
        - quay.io/community-operator-pipeline-prod/ack-opensearchserverless-controller@sha256:f04fb9b1d65e4582edffdbbee0cde8853660138ebee9e5b87d66bf3615dd0eb8
        version: 0.3.0
      entries:
      - name: ack-opensearchserverless-controller.v0.3.0
        version: 0.3.0
      - name: ack-opensearchserverless-controller.v0.2.2
        version: 0.2.2
      - name: ack-opensearchserverless-controller.v0.2.1
        version: 0.2.1
      - name: ack-opensearchserverless-controller.v0.2.0
        version: 0.2.0
      - name: ack-opensearchserverless-controller.v0.1.2
        version: 0.1.2
      - name: ack-opensearchserverless-controller.v0.1.1
        version: 0.1.1
      - name: ack-opensearchserverless-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-opensearchserverless-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: ""
    name: integrity-shield-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: integrity-shield-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": true,
                    "image": "quay.io/open-cluster-management/integrity-shield-observer",
                    "imagePullPolicy": "Always",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "provenanece": true,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "resultDetailConfigKey": "config.yaml",
                    "resultDetailConfigName": "verify-resource-result",
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  resp.status_code == 200\n  result := json.unmarshal(resp.raw_body)\n  result.allow == false\n  not is_detect_mode\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"tls_insecure_skip_verify\": true\n  })\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "requestHandlerConfig": "defaultConstraintAction:\n  audit:\n    inform: true\n  admissionControl:\n    enforce: false\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/open-cluster-management/integrity-shield-api",
                    "imagePullPolicy": "Always",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/open-cluster-management/integrity-shield-operator:0.3.0
          createdAt: "2021-10-14T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.

          [K8s Integrity Shield](https://github.com/open-cluster-management/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.

          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Detect (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster

          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).

          ## Preparations before installation

          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).


          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.

          If you want to change the settings such as default run mode (detection/enforcement) or audit interval,  please check [here](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).

          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-7b7f768bf7-fhrpg                           1/1     Running   0          20s
          integrity-shield-observer-5bc66f75f7-tn8fw                      1/1     Running   0          25s
          integrity-shield-operator-controller-manager-65b7fb58f7-j25zd   2/2     Running   0          3h5m
          ```

          After installation, you can protect Kubernetes resources by following this [document](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).

          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:

          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)

          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/open-cluster-management/integrity-shield
        - name: Operator Documentation
          url: https://github.com/open-cluster-management/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/open-cluster-management/integrity-shield-operator:0.3.0
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:11edce56874ff1ee666752ec5fa521f3f6ae78c52cf1f289ceb97a86e6c083aa
        version: 0.3.0
      entries:
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.0
    - currentCSV: integrity-shield-operator.v0.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": true,
                    "image": "quay.io/open-cluster-management/integrity-shield-observer",
                    "imagePullPolicy": "Always",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "resultDetailConfigKey": "config.yaml",
                    "resultDetailConfigName": "verify-resource-result",
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  resp.status_code == 200\n  result := json.unmarshal(resp.raw_body)\n  result.allow == false\n  not is_detect_mode\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"tls_insecure_skip_verify\": true\n  })\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "requestHandlerConfig": "defaultConstraintAction:\n  mode: detect\n  admissionOnly: false\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  - kind: ConfigMap\n    name: openshift-service-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/open-cluster-management/integrity-shield-api",
                    "imagePullPolicy": "Always",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/open-cluster-management/integrity-shield-operator:0.3.1
          createdAt: "2021-10-22T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.

          [K8s Integrity Shield](https://github.com/open-cluster-management/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.

          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Detect (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster

          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).

          ## Preparations before installation

          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).


          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.

          If you want to change the settings such as default run mode (detection/enforcement) or audit interval,  please check [here](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).

          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-7b7f768bf7-fhrpg                           1/1     Running   0          20s
          integrity-shield-observer-5bc66f75f7-tn8fw                      1/1     Running   0          25s
          integrity-shield-operator-controller-manager-65b7fb58f7-j25zd   2/2     Running   0          3h5m
          ```

          After installation, you can protect Kubernetes resources by following this [document](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).

          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:

          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)

          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/open-cluster-management/integrity-shield
        - name: Operator Documentation
          url: https://github.com/open-cluster-management/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/open-cluster-management/integrity-shield-operator:0.3.1
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:5e4c319ce871a0dcbab7fff23325e6233c9dbcb2592fdeb1a9ba7c57ac2a63b2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.3.1
      entries:
      - name: integrity-shield-operator.v0.3.1
        version: 0.3.1
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.1
    - currentCSV: integrity-shield-operator.v0.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": true,
                    "image": "quay.io/stolostron/integrity-shield-observer",
                    "imagePullPolicy": "IfNotPresent",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "resultDetailConfigKey": "config.yaml",
                    "resultDetailConfigName": "verify-resource-result",
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  should_be_denied(resp)\n  not is_detect_mode\n  result := get_result(resp)\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"timeout\": \"2500ms\",\n    \"raise_error\": false,\n    \"tls_ca_cert\": REPLACE_WITH_CA_CERT\n  })\n}\n\n# get decision result from API response\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  not is_null(raw_body)\n  result := json.unmarshal(raw_body)\n}\n# if error, return it as result\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  is_null(raw_body)\n  error_msg := object.get(resp, \"error\", \"\")\n  result := {\"http_error\":error_msg}\n}\n\n# if API response is null, deny\nshould_be_denied(resp) {\n  is_null(resp)\n}\n\n# if API response has status_code other than 200, deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  resp.status_code != 200\n}\n\n# if decision result is \"allow == false\" or not set, then deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  result := get_result(resp)\n  allow := object.get(result, \"allow\", false)\n  allow == false\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "reporter": {
                    "image": "quay.io/stolostron/integrity-shield-reporter",
                    "imagePullPolicy": "IfNotPresent",
                    "intervalSeconds": "10",
                    "name": "integrity-shield-reporter",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "requestHandlerConfig": "defaultConstraintAction:\n  mode: inform\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\ndecisionReporterConfig:\n  enabled: true\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  - kind: ConfigMap\n    name: openshift-service-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/stolostron/integrity-shield-api",
                    "imagePullPolicy": "IfNotPresent",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/stolostron/integrity-shield-operator:0.3.2
          createdAt: "2022-01-25T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.15.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.
          [K8s Integrity Shield](https://github.com/stolostron/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.
          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Inform (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster
          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).
          ## Preparations before installation
          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).
          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.
          If you want to change the settings such as default run mode (inform/enforce) or audit interval,  please check [here](https://github.com/stolostron/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).
          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-5799f69896-zbcjs                           2/2     Running   0          88s
          integrity-shield-observer-757f58f7d7-7pf5h                      1/1     Running   0          55s
          integrity-shield-operator-controller-manager-6f94d7d684-dg5bt   2/2     Running   0          4m27s
          ```
          After installation, you can protect Kubernetes resources by following this [document](https://github.com/stolostron/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).
          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:
          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)
          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/stolostron/integrity-shield
        - name: Operator Documentation
          url: https://github.com/stolostron/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:d86bb21fdeec35b1fc9789023a558750da76e036e0790dcfce97dcd137dcb6fb
        - quay.io/stolostron/integrity-shield-operator:0.3.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.3.2
      entries:
      - name: integrity-shield-operator.v0.3.2
        version: 0.3.2
      - name: integrity-shield-operator.v0.3.1
        version: 0.3.1
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.2
    - currentCSV: integrity-shield-operator.v0.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": false,
                    "image": "quay.io/stolostron/integrity-shield-observer",
                    "imagePullPolicy": "IfNotPresent",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  should_be_denied(resp)\n  not is_detect_mode\n  result := get_result(resp)\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"timeout\": \"2500ms\",\n    \"raise_error\": false,\n    \"tls_ca_cert\": REPLACE_WITH_CA_CERT\n  })\n}\n\n# get decision result from API response\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  not is_null(raw_body)\n  result := json.unmarshal(raw_body)\n}\n# if error, return it as result\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  is_null(raw_body)\n  error_msg := object.get(resp, \"error\", \"\")\n  result := {\"http_error\":error_msg}\n}\n\n# if API response is null, deny\nshould_be_denied(resp) {\n  is_null(resp)\n}\n\n# if API response has status_code other than 200, deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  resp.status_code != 200\n}\n\n# if decision result is \"allow == false\" or not set, then deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  result := get_result(resp)\n  allow := object.get(result, \"allow\", false)\n  allow == false\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "reporter": {
                    "image": "quay.io/stolostron/integrity-shield-reporter",
                    "imagePullPolicy": "IfNotPresent",
                    "intervalSeconds": "10",
                    "name": "integrity-shield-reporter",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "requestHandlerConfig": "defaultConstraintAction:\n  mode: inform\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\ndecisionReporterConfig:\n  enabled: true\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  - kind: ConfigMap\n    name: openshift-service-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/stolostron/integrity-shield-api",
                    "imagePullPolicy": "IfNotPresent",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/stolostron/integrity-shield-operator:0.3.3
          createdAt: "2022-03-18T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.15.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.
          [K8s Integrity Shield](https://github.com/stolostron/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.
          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Inform (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster
          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).
          ## Preparations before installation
          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).
          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.
          If you want to change the settings such as default run mode (inform/enforce) or audit interval,  please check [here](https://github.com/stolostron/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).
          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-5799f69896-zbcjs                           2/2     Running   0          88s
          integrity-shield-observer-757f58f7d7-7pf5h                      1/1     Running   0          55s
          integrity-shield-operator-controller-manager-6f94d7d684-dg5bt   2/2     Running   0          4m27s
          ```
          After installation, you can protect Kubernetes resources by following this [document](https://github.com/stolostron/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).
          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:
          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)
          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/stolostron/integrity-shield
        - name: Operator Documentation
          url: https://github.com/stolostron/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:7d94521a5cbdd34f8307653a3e1b596ec86415b2165fabdbabc8ed8bed35473d
        - quay.io/stolostron/integrity-shield-operator:0.3.3
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.3.3
      entries:
      - name: integrity-shield-operator.v0.3.3
        version: 0.3.3
      - name: integrity-shield-operator.v0.3.2
        version: 0.3.2
      - name: integrity-shield-operator.v0.3.1
        version: 0.3.1
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.3
    defaultChannel: alpha-0.3.3
    packageName: integrity-shield-operator
    provider:
      name: Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhacs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhacs-operator.v3.74.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
          createdAt: "2024-02-06T23:06:13.271846+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.73.0 < 3.74.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2c0840f4573373a19eb8c9a26501138ef0e76efbd508fd69a6260e78194d86c8
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:71b9fdcaf4cc761b1499be8e6ccff6c463cc6b9856e9deb1f93baad45ea59eb0
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:a108e9a7967001e0bdfed7124b01e9a3dbf1dec308444762973030aec57e1d5a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:74624389ac3261ed699b1f64e5717353da68895709d30a011bc8813b61a4a249
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:22bf00e1457b4a9e63901892aa4375a1d4a9d1b2c067c1f054d918a24b222b10
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:264102d4bca7d9bd384dc04e5bbff1a7b43343ea8e59cc79047cdda50a3f299f
        version: 3.74.9
      deprecation:
        message: The `latest` channel is no longer supported. Use the `stable` channel.
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.9
        version: 3.74.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.8
        version: 3.74.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.7
        version: 3.74.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.6
        version: 3.74.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.5
        version: 3.74.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.4
        version: 3.74.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.3
        version: 3.74.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.2
        version: 3.74.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.1
        version: 3.74.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.0
        version: 3.74.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.5
        version: 3.73.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.4
        version: 3.73.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.3
        version: 3.73.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.2
        version: 3.73.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.1
        version: 3.73.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.0
        version: 3.73.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: latest
    - currentCSV: rhacs-operator.v3.62.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:56905c2e7df0e29ca2b6301cd81b4f9bbe02b483374708f7f7da219a4b29428d
          createdAt: "2021-08-13T17:10:01.410173+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.61.0 < 3.62.1'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.5.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main page before deploying, or consult the RHACS
              documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create an cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead. If you want to deploy Secured Cluster Service in another namespace, additionally pass the `-n <namespace>` flag.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e30f7835cf52dbce9afdbaf55e5a93d8baf9c4b3a3ae488d1d42c1adba7f46af
        - registry.redhat.io/rh-acs/collector@sha256:558c0dabdc52efaee7bc889ef397ac2ac30f7c54562c2cc0070d0ef991a8b31b
        - registry.redhat.io/rh-acs/collector@sha256:98cfab15684506f1d0978eb701e8de478d91fc5bda3013ffd3b436aa95f07cc0
        - registry.redhat.io/rh-acs/main@sha256:9932304bb62b084ee1ae7e75bb21d6dfb737260c851f2d8daf05082f79230c66
        - registry.redhat.io/rh-acs/scanner-db@sha256:ff877f503e08ecca0ce7a7d8db760b2e4004e8e8ae2f27fb9b9c00a05b58c93a
        - registry.redhat.io/rh-acs/scanner@sha256:266a575c2547a3223890e8b73db0f14d69dc5a22217c7e4e3dc79644e6ab0258
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:7fd7595e6a61352088f9a3a345be03a6c0b9caa0bbc5ddd8c61ba1d38b2c3b8e
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:56905c2e7df0e29ca2b6301cd81b4f9bbe02b483374708f7f7da219a4b29428d
        version: 3.62.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.62
    - currentCSV: rhacs-operator.v3.63.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:d79bac8f5cab0711ffa8e35ea7290b59ee0554b990e4a919f4b0bc0aa93578fc
          createdAt: "2021-07-26T22:02:58.261433+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.62.0 < 3.63.0'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.5.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:2d9da26bac816af608979a034a8cdc24b51e04f0807e177fc114f55c0e633650
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:d79bac8f5cab0711ffa8e35ea7290b59ee0554b990e4a919f4b0bc0aa93578fc
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2f322231af2402ac09788e96ca836c209797f8c36a8589f0739ca18678d206e4
        - registry.redhat.io/rh-acs/collector@sha256:0332b5accbaf819911082087b8f689400332cc40e30e74e8839f9555d42bf8f0
        - registry.redhat.io/rh-acs/collector@sha256:6d67c6231d74e5de4f382abd445493796a04a0ed7dfda0695b699a1e56e34dd2
        - registry.redhat.io/rh-acs/main@sha256:839f642faa364e3e4c330e965a7e50728a00fd349a388cb514ca64439659ee78
        - registry.redhat.io/rh-acs/scanner-db@sha256:3a3cce6b39bd878eb369800ea9cd1c4f4549fce486754b5106e88d361da93713
        - registry.redhat.io/rh-acs/scanner@sha256:6152a6f5f76b3a14eda37f5adac1007a4e4b6df933dfec282c25efb3bc0116fb
        version: 3.63.0
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.63
    - currentCSV: rhacs-operator.v3.64.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fa478167f2f738f244bed6a06450679be73f8464c40f86acde4ffd390505692b
          createdAt: "2021-09-22T05:10:01.286657+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.63.0 < 3.64.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0cacd00c0a147cc8295138565ef2dc2ddbd9ad1fb25f6be817719a75ea4c6448
        - registry.redhat.io/rh-acs/collector@sha256:2b3a8bd3af62516a6714fe612e5fdc0433b91d873182e290d3ddc2b32ce291f0
        - registry.redhat.io/rh-acs/collector@sha256:3eb099da081cf208d46be5ccfa7b5e9ac0e2cad49f127fa4db91e49e3f26db42
        - registry.redhat.io/rh-acs/main@sha256:6aeb2223124540ac217c38b016dea99d770ab897dde4906a821d8776d91ea03d
        - registry.redhat.io/rh-acs/scanner-db@sha256:67e81bf896267b7acab8cb6755cde552173de4f0881c38eaca8e491bd926cc53
        - registry.redhat.io/rh-acs/scanner@sha256:8b7121bce8f9c7133d29245ebb265a4b8f9831a66a57f11b2d68b9b8b5cf79cc
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:5187b04f8010a274d6bc017fc82f1b00d886124e520c1b7de8b4da8cd2f37bc0
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fa478167f2f738f244bed6a06450679be73f8464c40f86acde4ffd390505692b
        version: 3.64.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.64
    - currentCSV: rhacs-operator.v3.65.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:229c7e5f967c70dfbc3cf638d521267ea6acf875b055499dfd30cb19c0b1f69c
          createdAt: "2021-09-21T13:26:28.711610+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.64.0 < 3.65.1'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rh-acs/collector@sha256:2b3a8bd3af62516a6714fe612e5fdc0433b91d873182e290d3ddc2b32ce291f0
        - registry.redhat.io/rh-acs/collector@sha256:3eb099da081cf208d46be5ccfa7b5e9ac0e2cad49f127fa4db91e49e3f26db42
        - registry.redhat.io/rh-acs/main@sha256:e672ef9a1239065f8cf0f331757861fea082e971a9e9760d1e65795f399cbde1
        - registry.redhat.io/rh-acs/scanner-db@sha256:20f258500ac2ba4e626df92dbcd193cf7ab8687ac251591be2442b8a46871835
        - registry.redhat.io/rh-acs/scanner@sha256:bfe9b2205bfca6aebed14827b4bda098bfad574e67ffa967ad339543062200fe
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:d3bf33899ca8b199ca8782978618ca343164e43fd0ae2ac6a0cfbf697efa6428
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:229c7e5f967c70dfbc3cf638d521267ea6acf875b055499dfd30cb19c0b1f69c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0cacd00c0a147cc8295138565ef2dc2ddbd9ad1fb25f6be817719a75ea4c6448
        version: 3.65.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.65
    - currentCSV: rhacs-operator.v3.66.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:10cdb0ff3e67b65737cde420536494bd84c2b7ccf65192bbed2eb43eaed66a41
          createdAt: "2021-10-20T16:38:38.091764+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.65.0 < 3.66.1'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:bd74f0b95ff2881faf6eb4520feecd067b69a759f09bbfecd467447ce2a2a25e
        - registry.redhat.io/rh-acs/collector@sha256:5673c27554a71502e06e08945a4424c6ce5da27f489854f3aa452e6d31240aee
        - registry.redhat.io/rh-acs/collector@sha256:d93e13ee1d1cc4b7f82e644a7d43e560aac42bd1e06d25b476cea9a4338bf9ce
        - registry.redhat.io/rh-acs/main@sha256:97230c01e76d90c7fe35ffeaa591be3d9175f350a8fd88599aded09a1edf930c
        - registry.redhat.io/rh-acs/scanner-db@sha256:490b0bf49161e4bc6de2504726aaf360e0ca9a214aea6b886fff13153bdb263d
        - registry.redhat.io/rh-acs/scanner@sha256:323ee86d6a9cbeb32270c659c1154f3a62c36535c6ea894e4e29e93eb1f4a84f
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6536ee795e8aaeab9321ee4820e55933195983a768ba24fab40508d03e50a6e4
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:10cdb0ff3e67b65737cde420536494bd84c2b7ccf65192bbed2eb43eaed66a41
        version: 3.66.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.66
    - currentCSV: rhacs-operator.v3.67.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:893ebcb2d0c96647e56bce3b16fe32851df59cd71f2c0fc8f6e66ca3a669bb70
          createdAt: "2021-12-16T12:54:10.117625+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.66.0 < 3.67.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:893ebcb2d0c96647e56bce3b16fe32851df59cd71f2c0fc8f6e66ca3a669bb70
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:86e5fa1fa294987114be200890c2e516501e424aee0fb98ece25c95e7716295b
        - registry.redhat.io/rh-acs/collector@sha256:57c2dfa3dbc8368076291fbc627baa01dcb5ebc50f838e02ce7ac38a128d027b
        - registry.redhat.io/rh-acs/collector@sha256:e4648723ccbd43fa5acf005d9734bfc06d41e19e1be0bde839880e28fa361e16
        - registry.redhat.io/rh-acs/main@sha256:8db7630d094b661411ebb3f35248848d3147c735677d0922f7a04de9a41eacc9
        - registry.redhat.io/rh-acs/scanner-db@sha256:6f8d47277732eb56317d576c2d06fb1f539d46d16520e6ca34abec290392cef9
        - registry.redhat.io/rh-acs/scanner@sha256:2860ed271da6064149bb53568c5ad60e129918d55a2f244f9ade4a0bea4c4933
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:ad88773ab141f45fe24c61e83ec736aab27f652fb82ca2a85fee6f885568c5b9
        version: 3.67.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.67
    - currentCSV: rhacs-operator.v3.68.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:195a694dc96096166fe82e81ecb3ceb493f96cfb5029112e576e44ab39b56abd
          createdAt: "2022-06-15T22:13:22.427644+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.67.0 < 3.68.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b5fc3dcaa72bbc8dea005189c940e1cf2d00c94a6cf7676cf0e1790e1191d45c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c9d0a5a2871c24c0b1058e419f2b090429363a319856397855412fd2c0037395
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:081f2198ad70bfb2ec66153b50b48b950b9a5550ba996de413c5a2aff4052783
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9b9b9146d9683d6da0ff2abbc8ea82b96d945b7a8c3740d72d8c018fb2b04fba
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0bb76363a3a25916dd4493e177e9b2d36eac9633473b07fe0fffb853fd072da3
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:105d10bd50a6062c998ed107dea388dd78f0caddb0b57713c8692b1d07042774
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:f0d2f5f11c2a96d34d6b4baf249cbf821fe064eade73c3f95c22f3c6981ac4d1
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:711293438bab35b17d2e1f162e7f74f667a6e16dd32e45122f917b6817fefb4e
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6a10a4859527946f61f497ff84b80f973cb7be5982d428423836b5aca81a1f5d
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:195a694dc96096166fe82e81ecb3ceb493f96cfb5029112e576e44ab39b56abd
        version: 3.68.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.68
    - currentCSV: rhacs-operator.v3.69.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9b2beceb255124855ba1b352d16009b2f2cd422901a19c311f0783dab1fcc3a0
          createdAt: "2022-06-21T09:07:40.705944+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.68.0 < 3.69.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:77f5db63e17b140a8d6b84e3822fd77463035be9c0c832b55b4977696da13ccc
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:867613178d491f416e57975843817251490c5fbca2fc69d8b55b169bea675279
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:cf5629823f2dd583495bcbbcf3b83b4f29f855ace3c388f5cb7b24a6d34ed267
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:da6dd486a20fdba61ea12d2c77ea299d9795a9f22d9057d65ff992b1f5896e07
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:f167e928740d1c614e26948ea58f49e569f6a4fddc438cd0abe52f60538432d0
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b254746ed3faa1f1cbcafdf1343a1957bf0214311b36f4e892be3000cc2aecf3
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:8db5206532e95a7ad7cb23f389155d41757aaf5f445ddce92b008a06627d3fd5
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:2afb2823edc6f3434e18db60ee37381b5b79f51234c1a261b6d0f8ed74cc8b63
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:297e7f863106c6b41f882bbd5b691a12c797c24d832473a04e604d4639e4a68e
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9b2beceb255124855ba1b352d16009b2f2cd422901a19c311f0783dab1fcc3a0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9ae03669cfdc0f4fe56b021d911edb17159c07757720ae30a1f22d7f7a897c07
        version: 3.69.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.69
    - currentCSV: rhacs-operator.v3.70.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fb903bf9e110ba03e9c63977ebaf707e6884dd8fd413bcd6b793a0ed795cdd0e
          createdAt: "2022-06-20T12:30:26.999648+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.69.0 < 3.70.1'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fb903bf9e110ba03e9c63977ebaf707e6884dd8fd413bcd6b793a0ed795cdd0e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:df8cfdaa40b50ff2f2670d97c2115b47ae4bea443ae2831caaa468dd62f3c75f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:d2e827a209840b7197960c8115720972237532eb9cf9d6fee7a36107053408ce
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ee55a233d2a8fd77d89ec2c69f357721c7debead6470a9f494b3cd6a001829c4
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:e71f2f2347dd46dec790405b1bb98d54a348a4583949f142f5703be9a790f96e
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6c32b86ed8bc18e384706eb6188406e66910bf34c8869bd155a60c3525d0fea7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:3d7c8b77671740e324ee6c309a84bbaa4d925e6750979fe4e46c561bc79f1b4d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9b35ae6df2c19935783735d213483f3fcecead2f49f873a4f7844ef9fb5c7f1a
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:6b14e850cda9a54618847858292ea669abff599a40692e27fed0e337c4a60526
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:dfeb239931f7a33ade5c829a102cabc01f5c348e1aa35a7ddc24757cfd549629
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:b47c96af1c9ffe4d8728da510a93efe21adc221225fe2b822cfcace6c6672ba2
        version: 3.70.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.70
    - currentCSV: rhacs-operator.v3.71.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:469b6c1592226eb9a521131ef758a33e6a6ac7c96bc67fcc903cea30469c125e
          createdAt: "2022-12-07T08:31:36.777654+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.70.0 < 3.71.3'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:9bc25e81c21cda6d8b535d8ac67c1286fe57a1596001850e730f8f73bf371111
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:e282a8e5e606003ea344d44ac5ee7699563848f7160eeae183aa58ad740e0e94
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:c3ec88cd99908894d0e67153779062f90ac1b007980d66040a79b2be13798a10
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:df7b41999b542a477848823a1d0e7e5c29ae1b00fbac035007a5a1f33fac139f
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:4d8bac9b3857af6ba351c7768f70ef30ef7cb99ae4df60cb226b5a793353a052
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:7f279bb6e0f34a5208d8711ba4d7b62c78f08b683815ce33f6aa28c23c4246da
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:469b6c1592226eb9a521131ef758a33e6a6ac7c96bc67fcc903cea30469c125e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:f16f92e074f7125b88e9e2033c7c12b44421145b93d040034fa4688626869af1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4a0dc8c337299d7f6440ff75c2d5219d3ab68183f4f117f008ef065757dd5d4b
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:cb2d0f470968c2b725b0d176d423cc1866fd56893344d077d28f2c16581d3614
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e001b9f844a6c298dd74f1ab683f3dbbf0ad66044cec419c373ef4f97d47be73
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5fdfd3690af60bd5ecf04741cd1f73259491da501700b066120976960567f0db
        version: 3.71.3
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.71
    - currentCSV: rhacs-operator.v3.72.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3ff61e1cc77b66a22c8a8c0ab306f0e122cd74e762005285aede23ebb6c2f6a2
          createdAt: "2023-02-28T17:02:08.443613+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.71.0 < 3.72.4'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:cb5df858e0c5cae8f77b285e23daeb83062bd72570c90ed5ea3ce4a02d2f5f08
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3ff61e1cc77b66a22c8a8c0ab306f0e122cd74e762005285aede23ebb6c2f6a2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:0b69595405e4e598183bbf4197ac5b7593724fa6162413f225aa01a542af18c9
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:cd475a6c2356d63cfe736a11114de7fedfbd8fdcfecc56224a00b6c819103be6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:622f30b7f591194d86a5bf95deede0225e66f7b624db197f6289a5fbbbe887a9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:648b14e4158da2a85eedb46b3456fb502d680d52d375ad34bf45b4b94f8b2ef6
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:878ed77d07d3f40f049a594af44376797305786a2a264dae3d0c50401643bfa5
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:42e5f6c4ba789f124ac3ebe7b6d1a607ede8e763a35888c97ccbd0259bec4a1c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:575b6c3e2914751df1668ffff83cbda187ce6e56f32214414cdf036b7a62bbd8
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:c07fae3616cbc681e4d31839abea6623b4bf4dade93273201c8db7ba0d635aad
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d56a00b3e20e60b7169f5c35d03fa6a1bd3b9980dd3ebc9d89d759e1d6d20ad2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:cd0c205ee44eddcdf99b84e80fcf4403851d956efc50532b9d12013bafe44988
        version: 3.72.4
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.72
    - currentCSV: rhacs-operator.v3.73.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a8486b66f977a639d77ef110492e5ecdde47be8acaefbaa1cbb5417085c56839
          createdAt: "2023-05-26T21:27:04.033276+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.72.0 < 3.73.5'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:648b14e4158da2a85eedb46b3456fb502d680d52d375ad34bf45b4b94f8b2ef6
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dce5db4f162dd40c09cad114cb802cd6d7c72d0c6986581f2e74c977493f75b0
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:5df359156b01505ce43e5f14c3b08722856bdb86f3d0d9b4fba785a2e580f346
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:459a8d91beff91638872d377a8b82c279ad2905ce3f4ad4bfc00f6822418ac57
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e6687c12d070069f655c17832d94c619c18274a259ccc59715036f9908e162f7
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e4a27d3ffb173c87728fb637ca7fde92a9e78ea9ee3edcecccc2a5e3d3748b8c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e2c89f735969d438f75a89ff63c404a8ec4361a03fde48e880fee73006b9c669
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:082bd6f4b40209e0591be001dea358f328cd86a08691cdceb7f71ea59d861d9d
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:4d0ead8969f120a629104a92a454842bb7103aec137deb6c8209b7db9c48a1b2
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:ee2a9e4ab74f5a554d1e4ff148833a53bdaab70ac1e2668cc9ee2fceca290ba9
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a8486b66f977a639d77ef110492e5ecdde47be8acaefbaa1cbb5417085c56839
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7bf9415aa4b0746d11ca5a59d4179bc382a0fac4ded969f0c4294171fde27d58
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:c020a80ff82bf4d9b5cec3eeac5de9990de76041e22c444e664a20e15c46ce3b
        version: 3.73.5
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.5
        version: 3.73.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.4
        version: 3.73.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.3
        version: 3.73.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.2
        version: 3.73.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.1
        version: 3.73.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.0
        version: 3.73.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.73
    - currentCSV: rhacs-operator.v3.74.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
          createdAt: "2024-02-06T23:06:13.271846+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.73.0 < 3.74.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:22bf00e1457b4a9e63901892aa4375a1d4a9d1b2c067c1f054d918a24b222b10
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2c0840f4573373a19eb8c9a26501138ef0e76efbd508fd69a6260e78194d86c8
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:264102d4bca7d9bd384dc04e5bbff1a7b43343ea8e59cc79047cdda50a3f299f
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:71b9fdcaf4cc761b1499be8e6ccff6c463cc6b9856e9deb1f93baad45ea59eb0
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:74624389ac3261ed699b1f64e5717353da68895709d30a011bc8813b61a4a249
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:a108e9a7967001e0bdfed7124b01e9a3dbf1dec308444762973030aec57e1d5a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        version: 3.74.9
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.9
        version: 3.74.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.8
        version: 3.74.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.7
        version: 3.74.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.6
        version: 3.74.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.5
        version: 3.74.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.4
        version: 3.74.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.3
        version: 3.74.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.2
        version: 3.74.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.1
        version: 3.74.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.0
        version: 3.74.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.5
        version: 3.73.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.4
        version: 3.73.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.3
        version: 3.73.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.2
        version: 3.73.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.1
        version: 3.73.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.0
        version: 3.73.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.74
    - currentCSV: rhacs-operator.v4.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9bf3a3e0fd573f91f03794eaf5291364a90392e5e7d4b5d4ed550ef4600ab826
          createdAt: "2023-10-20T07:04:50.531740+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.74.0 < 4.0.5'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:c39621837cbc8419d187a43a9575ec8cb4021c58ea1b56f215003d7264eb5d03
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:139d80d398e7e5cfc85839e3039a3630b48c7ae6650d755754430fccd94d6a27
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:4c848eb7465e928251e05d32ffbc93cd14e7bb77972d22b8721bd6eaa4a93d2f
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:0aedd8e865f72ffa8b79fd2bab48974caec3eea3e3a6f77c89fe6dacb8947057
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:a0d9cd31d953aaf7e84f5a39f405c5aa2ea62e68d6c728a936ca1ffc4dc1b93e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:09e79b5db8977520f9951cc43c339c8e40b4659d7da513347d5a88b2500f809d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:3250d89e78de852a2627593f29469f0b3ff639ea3644b4b7d6d057d0c1ad3659
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:5a492b856e0b6d9fdb020b556d13186ef5e7095b0c736a2031500c9c00dad0c1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:08f537cba262605a0eb0a510b6faf78e3ba26465f636d03cc1f7a6ed6b40d355
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:eee1aa054d4d15b23be293f31d3ea659e0ffc1d05174ef89a6c977dd3d4377cc
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9bf3a3e0fd573f91f03794eaf5291364a90392e5e7d4b5d4ed550ef4600ab826
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:cfa10bb6b461f302674f185b26c8d6efaaeba7f3f65d2cf05ae1f069aa2710d3
        version: 4.0.5
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.0
    - currentCSV: rhacs-operator.v4.1.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:8ffb6f0ff1bf016c3919c1eefc6c3db3d4a8fbe0e79919f72b4c281afe6d4b1c
          createdAt: "2024-01-13T18:55:22.011709+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 4.0.0 < 4.1.6'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:8ffb6f0ff1bf016c3919c1eefc6c3db3d4a8fbe0e79919f72b4c281afe6d4b1c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:a8ad0e76ce4cae9f9b36aecf125c4ed56fc2d776fe3df113d41bfc1c2f8b3602
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:01b9f9798d3ecbefe3da1ac2ac782e8e8b930e7eeceb82fe3473b5bfc1ccd40a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:364c107c34694ca33ac724de78db3e41ee55f9098d9ade0775a51b11f1533065
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:8760d6dc68c86f0c5b53d8f0bfada0df012f80bc8e0023ba3522fe6829a05a41
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:762ad216e79be0837e98873202b0072c7fd399925ee94bde57cc61c68cbd5f4e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:7ac504b7824d17bd7ac55b1e59c26be308506f315a0ab0d8c45d3b4934c0a16c
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:8547b76cf0533dfe6da2aafbbd063021bad4ff78b32b2dfed4a7607496e0a904
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:2ec62f3da93a1346ad215744257820377ccf4ead84e7471c52e348a31a431d3c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:bdbe08ef2d01b114702780fab76905e6eb1851684692ffa0a4c84604bda3ddb3
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:34694b9f4fe7fffc0c547be4e311579b5bb0c1fa92d8257bf6d1581ffd655c46
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b26133843687cc50e2c52d6067d8b3369b5cb28dfbfd15dd4b6062096673195a
        version: 4.1.6
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.1
    - currentCSV: rhacs-operator.v4.2.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4253eca84cbb0c5fc033507ddc2deef235b054c0ba944fa271ebbba21545b872
          createdAt: "2024-03-13T14:51:55.084122+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.1.0 < 4.2.5'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:2f326cabf03f780a3e6120995d5442641764641f62430d82e05edbe21b30c7b2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:59f1862c8ce188906499f08201ae05deeb47bd4fc5eab4be0386ca44ec065da8
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:ff27f03064633d6d08f8383649069e39c868def4aeca8f2622750397e049d0ec
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4253eca84cbb0c5fc033507ddc2deef235b054c0ba944fa271ebbba21545b872
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:12db245af3b8475c9b5680bb0035c566109819e05cfe62bd1dfdfb5d6ed25bea
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e2b07cb7d690477d78a2b8e1875545998d4bdb946f80dd0533a14187da99dbbf
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b82f7f654235688fc07fb037422a73e1106e27024d39a68ef7fac1422b69496d
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:3858ab936d4626a11bbf895d41bad181364ee5df3312f6dd29ebeb9b7d31ec77
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:e79a5e5681ebfe2d6349e2763ee0c1fa521b20319846958e402d23229b1f257b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:4b35f5f39865238a8e95d3cba7ebb5f15ccfbf6a2563c34f57d91a0b5c927066
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b5a15f2985b114bf9bc24a0d9942db5d0cb818e60fd15a2f9094aa00904cce77
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:08aebe6e8275d3314b6756d522ec568ccdfb9c52df98c9822f187f6c5a3af19c
        version: 4.2.5
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.2
    - currentCSV: rhacs-operator.v4.3.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:266cbbc270efafa26d5d15f3e333c96eaedee3b47854ff337ae1c572d34901ce
          createdAt: "2024-06-06T22:31:19.365878+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.2.0 < 4.3.8'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:30f9384244819da013358325cec364bb210b3b33b4cf9680698531fe50562aac
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:2c35cb6f518393d002edd2bf5f714c1d053cd0fab55f6152a2f35676e4979202
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:b0c9b3858fc0547dcb4eb3065dedd5bbcf1e1f6707a8ab812ed06882d4f6d6ad
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c36a557c9dc2ae4479c432933a9a4dbef38f2be53360a68a5b6befb614d01dac
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:5092c3fbb4a38c06a2f42d125dc718ef0e1005f304ad8046afdd2a5e7ccbc580
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:266cbbc270efafa26d5d15f3e333c96eaedee3b47854ff337ae1c572d34901ce
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:bdf9785bff51194636c6e8a518448c6d12a297bd31c4bb2e79d07084409c18b4
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:9fba889021a876ab627ff8c496e4b6c46c221c61142cd0c76daf33c89762e2c1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:2bb643651c8d51525223df3b2b675947174bbe9f1eaea8688e1fa83044cfa41f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b7eb17fbcf6c4a6e4205ad66f1ffd9b10a4634f6ef5045d407c266566b1f255d
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:10d0cc82b6eddd089f3a7af37b872c33248513d0b4d3f094b6f62c01f4460825
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6b55a25eb3a611c648d9be883828834592229c16f4166fd28ef40a25fc667061
        version: 4.3.8
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.3
    - currentCSV: rhacs-operator.v4.4.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:2b87569d7f4ef5e06c989b273c378e007c6d87b26eec41774ac1fc67dcd9e4e4
          createdAt: "2025-02-10T19:50:13.597164+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.3.0 < 4.4.8'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:69c12230a785619c765e3749a7d56f76dce9ce4f530c20e8a9387b99eb65627b
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:2b87569d7f4ef5e06c989b273c378e007c6d87b26eec41774ac1fc67dcd9e4e4
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:467d069ee957aea07882b83b60ae9fcc62ccca159f5d643aac13e531ccf7df88
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:763e7568704971cb4656727dc223374de13e82b4304dd3f5387ddc0f4e42b8b6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:0df4e95c7406aee7812d145cdd4d8c61cec32857fd2079dbc4244954a9d8288a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:183c75920ab8e7cb947cb966f1543e39b6fdb5e1bb0caa1b0cf5f89671f0328f
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:123c0108bd7a190dd2accfd21786600f787147f040e57fb5f840861e2caa441d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:65707fdad55767ff5598a8d3679fd0779a37f59501e58971b81bebcb23f1f9fc
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:76f9dc2e2ee5595c36530d97dec216e2dbefada2fe0747e3f6a3a725b75722ab
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:ba6e25a413c79131b966a097f72c36478933ea52deb55a62acda7011a96b3983
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:664a5dc40dc1fa06c47a11e13b0ab5e0612a981d7b69bcfb29422abf3d1a13b2
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:39cfd01236e905034f6645a73063427436c14e351e0e0bc735e73e62aa5a1c3c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:d6b4f8caf342b105c8df14c5c9180cb36123e08d34756ee8fe4f2f76c34f8064
        version: 4.4.8
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.4
    - currentCSV: rhacs-operator.v4.5.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a7dfbe3590668f91fe6694335b5a35b2fca07b4735348cc5202921755d2f654d
          createdAt: "2025-04-09T22:51:15.157672+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.4.0 < 4.5.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:d928600f75461465598a10de8df2495a275fd5232a92b078f609d1f5774eb778
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ed33e7396357f1db03a065573c020846a5872b12a21284439770686689222434
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:c2656b794ec4236e36f48f71bf26bdedd9de27fc4acef39deba2bdcfcddab03b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:5109b304eb9458f97af85c2ba63e08f51672fa3f9406226b7f357b86b5828dc0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:1817cf8d2c08b04391792321702ef53d16a4b1ca06459c00c9c053128f534358
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:5914548f6ce2160e92c5d96580ffba23cdf1ae940c1f73f3f6424d15c6e97c37
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:fde78d34ecd2944c7c16b4e823c76b3667bf6c5b468e9991128ecc4272ec0e2e
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a7dfbe3590668f91fe6694335b5a35b2fca07b4735348cc5202921755d2f654d
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0ff948b5517df3773cae2df02b708c348d8707409899b1de4108588e31601c0c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:cc4b329cc795752ecbb178d2e4efc152bde54b04181334eb5bd70304c3354cad
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dc7f23341c8b209f1846f29f889d00ef232fb58da9d5b4bd561f3933093b2786
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:41351e88688d23a443ad4f141caf0433b2c2789e6a1a85b4f5b36abeb5656bb1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:f07cba0738897e0e7ae74971be0470ce2a855657f133a6e1cdd8a7092f6151b0
        version: 4.5.9
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.5
    - currentCSV: rhacs-operator.v4.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:c4d434e1ff052508e5594d2b95dafa8726fd8adf5317754774c013a46de224d8
          createdAt: "2025-09-26T09:24:28.046251+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.5.0 < 4.6.10'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:90c47c6f95571cfcca04aa4e05a18befad75c1b44a6f3a055fcdfdab749d29c5
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:19db8c5d2425dcf18ae63b025f946fc46adaec0578e9505415cb585797069e95
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:16b61ca1b9ee4e0821e7fc82fe4def75ed22950e502730f5704ec4fe63bb2e59
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b630d53ad0b862151be7e14f0483ca5adac570216deae66f60e75af87a4dfd46
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:c4d434e1ff052508e5594d2b95dafa8726fd8adf5317754774c013a46de224d8
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:65793c05aec8085a53fab8bcf33a85192c17b46c91a7d86e0a457d1e3a113878
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:713e61d3c8b55de1edc9d7834d3e8576718e1327665f94a6b58178fa7496c0cc
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:8fad8ab2efdcbc99d9efa736a90cca6f236f0a9d45fdb355ae0b6b4dc42d77f0
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6d6b2696a12d49cf3403e338a0e028187473b6f43ef2b0bd72c7701200ac8e2e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:6da59c5b82625894f6efa3fa0bc5ea0378edd4f95cf42dee772e9c8a565dba81
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:ffe41363dc00b05b0daa0c6d16efb30e534086aa4e3d7ccc599c86d33813138c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:899da9c23000bb821bc9d544ebb56bcda4f3245ceee5b1b9c12d09f580b4b9a1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:b5cd08349931669055f03d21331499ef2ea04597f8a90fb201615d43000271bc
        version: 4.6.10
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.6
    - currentCSV: rhacs-operator.v4.7.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:414b03b9830f755e459127f3f926e275b5049eba0f199dd9e4975974800979e8
          createdAt: "2025-12-15T14:49:31.922833+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.6.0 < 4.7.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e7106f927313f2e0a08c85cf1ecfd1338d222f02dcac6c40846858a7e0c9c32b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:4e48a0441240e9531e1490079e19edd65526b726b87bc5613b3cc62e3f59c1be
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b6f7cc10247ab111a4aea231858b4f6fd17bfd4e4b4e4bd62873567ab875fb2e
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:ee14e7361bf64117af506a99906b3ae43a2b34c78f6e80a924a4419b047beadd
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:6981a243b8e6f095cbcabae3056012e9c60914ac42cd795c4163f4fce64a6aef
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:b3b498320cfcbf06da095f2427814d7f157ccec870383085be733ad7b6e6ccba
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:b55eae54dd5bc1bc58e9d52722a5830f8ee73bd59cdd0190147df8145f5ccedf
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8b24cb309fb5dad63d92605093b7e1cb659d9c0c1f31f6d5a223746f25dc5e23
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:414b03b9830f755e459127f3f926e275b5049eba0f199dd9e4975974800979e8
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:19b84b221ab9ce59fd0c8fbb4a713ee66304fd92822cebbcde0d77496ca82b0a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:7e1371e5e0b53983ca615309f44f6e4c124874ca1ae8a0fd4a59a470eb6a15df
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d45d0e810330d7c95c2e4dc2f1bc5c5613f06ec09b4061f2874c8837c73379b9
        version: 4.7.9
      entries:
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.7
    - currentCSV: rhacs-operator.v4.8.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa
          createdAt: "2025-12-17T14:22:57.176442+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.7.0 < 4.8.7'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8322bb5c9649b552aaaa62ba52067028a828c9dcb16c7580ec235e6b48b75e53
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:a58c6e952333169b21ffefdbd1acd3fff9c8d8dfac28795ee290756ca4394f5a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:fe1732a51218d60b1c5f6fa96357c0d50ce48ae6802da91ff594f7ef184effe9
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:3325c985bbe99f6717dae2dbcb6aedaadfa7eb5f403b109628356485a97f6cf7
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:82dc5edf423b3f9c377c9d2c80d1d19eaf15684872dc41d4baa9efddf082f350
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:440e0ac120a2a7e8dfcad6b53bb120667e293492d9bbcbe9d1ca0a6ed7b2dd62
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5e84e22ba7e21b8ec3e55283a53ea73a14f2bfd41eea5a80ca7a95360f799c52
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:24481e3ee1dab49893e7f5891e97e3287ec6f35105b6e927ce0acc7da24a6982
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:23150ab7d7d79cf1f5bc70f4f8e32da76ff06af123c395fb46b0be9e6ded7e1f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:fc03a63aada7586517d68c279fe59415b1fc0b3756ee87c5110f19c90712e903
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:142732544a7553f4eb203b314b3bdc76e5102d7ef3080f1fe36e8ddadffb9ca9
        version: 4.8.7
      entries:
      - name: rhacs-operator.v4.8.7
        version: 4.8.7
      - name: rhacs-operator.v4.8.6
        version: 4.8.6
      - name: rhacs-operator.v4.8.5
        version: 4.8.5
      - name: rhacs-operator.v4.8.4
        version: 4.8.4
      - name: rhacs-operator.v4.8.3
        version: 4.8.3
      - name: rhacs-operator.v4.8.2
        version: 4.8.2
      - name: rhacs-operator.v4.8.1
        version: 4.8.1
      - name: rhacs-operator.v4.8.0
        version: 4.8.0
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.8
    - currentCSV: rhacs-operator.v4.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
          createdAt: "2025-12-15T11:46:09.678434+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.8.0 < 4.9.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:4118ac0a9af4d6c38fcdde1236a963a47a41eb465d15a9a0bf90b30679a2b2f1
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e48f539bbe3b874be10dcc31ea61b074854a00d1bbccbbd3ec72b185345ba55e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        version: 4.9.2
      entries:
      - name: rhacs-operator.v4.9.2
        version: 4.9.2
      - name: rhacs-operator.v4.9.1
        version: 4.9.1
      - name: rhacs-operator.v4.9.0
        version: 4.9.0
      - name: rhacs-operator.v4.8.7
        version: 4.8.7
      - name: rhacs-operator.v4.8.6
        version: 4.8.6
      - name: rhacs-operator.v4.8.5
        version: 4.8.5
      - name: rhacs-operator.v4.8.4
        version: 4.8.4
      - name: rhacs-operator.v4.8.3
        version: 4.8.3
      - name: rhacs-operator.v4.8.2
        version: 4.8.2
      - name: rhacs-operator.v4.8.1
        version: 4.8.1
      - name: rhacs-operator.v4.8.0
        version: 4.8.0
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.9
    - currentCSV: rhacs-operator.v4.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
          createdAt: "2025-12-15T11:46:09.678434+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.8.0 < 4.9.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:4118ac0a9af4d6c38fcdde1236a963a47a41eb465d15a9a0bf90b30679a2b2f1
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e48f539bbe3b874be10dcc31ea61b074854a00d1bbccbbd3ec72b185345ba55e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        version: 4.9.2
      entries:
      - name: rhacs-operator.v4.9.2
        version: 4.9.2
      - name: rhacs-operator.v4.9.1
        version: 4.9.1
      - name: rhacs-operator.v4.9.0
        version: 4.9.0
      - name: rhacs-operator.v4.8.7
        version: 4.8.7
      - name: rhacs-operator.v4.8.6
        version: 4.8.6
      - name: rhacs-operator.v4.8.5
        version: 4.8.5
      - name: rhacs-operator.v4.8.4
        version: 4.8.4
      - name: rhacs-operator.v4.8.3
        version: 4.8.3
      - name: rhacs-operator.v4.8.2
        version: 4.8.2
      - name: rhacs-operator.v4.8.1
        version: 4.8.1
      - name: rhacs-operator.v4.8.0
        version: 4.8.0
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: stable
    defaultChannel: stable
    packageName: rhacs-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Datadog
      provider-url: ""
    name: datadog-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datadog-operator.v1.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadog"
                },
                "spec": {
                  "agent": {
                    "apm": {
                      "enabled": false
                    },
                    "log": {
                      "enabled": false,
                      "logsConfigContainerCollectAll": false
                    },
                    "process": {
                      "enabled": true,
                      "processCollection": false
                    },
                    "security": {
                      "compliance": {
                        "enabled": false
                      },
                      "runtime": {
                        "enabled": false
                      }
                    },
                    "systemProbe": {
                      "bpfDebugEnabled": false
                    }
                  },
                  "clusterAgent": {
                    "config": {
                      "admissionController": {
                        "enabled": false
                      },
                      "clusterChecksEnabled": false,
                      "externalMetrics": {
                        "enabled": false
                      }
                    },
                    "replicas": 2
                  },
                  "clusterChecksRunner": {
                    "replicas": 2
                  },
                  "clusterName": "\u003cCLUSTER_NAME\u003e",
                  "credentials": {
                    "apiKey": "\u003cDATADOG_API_KEY\u003e",
                    "appKey": "\u003cDATADOG_APP_KEY\u003e",
                    "token": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e"
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: registry.connect.redhat.com/datadog/operator@sha256:e1fb36e82b5438e3efd5768425651beadeb80e8698e0e0ca475d2a2e23386090
          description: Datadog provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with Datadog Operator.
          olm.skipRange: <1.0.4
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/DataDog/datadog-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgent Deployment with Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v1alpha1
          - description: DatadogAgent Deployment with the Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v2alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
        description: Datadog provides a modern monitoring and analytics platform.
          Gather metrics, logs and traces for full observability of your Kubernetes
          cluster with Datadog Operator.
        displayName: Datadog Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - registry.connect.redhat.com/datadog/operator-bundle@sha256:48b37460dd7245cf661009267c3353962f0f195efd6a3007c9cc70b51b91a9e3
        - registry.connect.redhat.com/datadog/operator@sha256:e1fb36e82b5438e3efd5768425651beadeb80e8698e0e0ca475d2a2e23386090
        version: 1.0.4
      entries:
      - name: datadog-operator.v1.0.4
        version: 1.0.4
      name: alpha
    - currentCSV: datadog-operator.v1.21.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgentProfile",
                "metadata": {
                  "name": "datadogagentprofile-sample"
                },
                "spec": {
                  "config": {
                    "override": {
                      "nodeAgent": {
                        "containers": {
                          "agent": {
                            "resources": {
                              "requests": {
                                "cpu": "256m"
                              }
                            }
                          }
                        }
                      }
                    }
                  },
                  "profileAffinity": {
                    "profileNodeAffinity": [
                      {
                        "key": "kubernetes.io/os",
                        "operator": "In",
                        "values": [
                          "linux"
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogDashboard",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "datadog-operator",
                    "app.kubernetes.io/instance": "datadogdashboard-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datadogdashboard",
                    "app.kubernetes.io/part-of": "datadog-operator"
                  },
                  "name": "datadogdashboard-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogGenericResource",
                "metadata": {
                  "name": "datadoggenericresource-notebook-sample"
                },
                "spec": {
                  "jsonSpec": "{\n  \"data\": {\n    \"attributes\": {\n      \"cells\": [\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"text\": \"## Some test markdown\\n\\n```js\\nvar x, y;\\nx = 5;\\ny = 6;\\n```\",\n              \"type\": \"markdown\"\n            }\n          },\n          \"type\": \"notebook_cells\"\n        },\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"requests\": [\n                {\n                  \"display_type\": \"line\",\n                  \"q\": \"avg:system.load.1{*}\",\n                  \"style\": {\n                    \"line_type\": \"solid\",\n                    \"line_width\": \"normal\",\n                    \"palette\": \"dog_classic\"\n                  }\n                }\n              ],\n              \"show_legend\": true,\n              \"type\": \"timeseries\",\n              \"yaxis\": {\n                \"scale\": \"linear\"\n              }\n            },\n            \"graph_size\": \"m\",\n            \"split_by\": {\n              \"keys\": [],\n              \"tags\": []\n            },\n            \"time\": null\n          },\n          \"type\": \"notebook_cells\"\n        }\n      ],\n      \"name\": \"Example-Notebook\",\n      \"status\": \"published\",\n      \"time\": {\n        \"live_span\": \"1h\"\n      }\n    },\n    \"type\": \"notebooks\"\n  }\n}",
                  "type": "notebook"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogPodAutoscaler",
                "metadata": {
                  "name": "datadogpodautoscaler-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogSLO",
                "metadata": {
                  "name": "datadogslo-sample"
                },
                "spec": {
                  "description": "This is an example metric SLO from datadog-operator",
                  "name": "datadogslo-sample",
                  "query": {
                    "denominator": "sum:requests.total{service:example,env:prod}.as_count()",
                    "numerator": "sum:requests.success{service:example,env:prod}.as_count()"
                  },
                  "tags": [
                    "service:example",
                    "env:prod"
                  ],
                  "targetThreshold": "99.9",
                  "timeframe": "7d",
                  "type": "metric"
                }
              },
              {
                "apiVersion": "datadoghq.com/v2alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadogagent-sample"
                },
                "spec": {
                  "features": {
                    "admissionController": {
                      "enabled": false
                    },
                    "apm": {
                      "enabled": false
                    },
                    "clusterChecks": {
                      "enabled": true,
                      "useClusterChecksRunners": true
                    },
                    "liveProcessCollection": {
                      "enabled": false
                    },
                    "logCollection": {
                      "containerCollectAll": true,
                      "enabled": true
                    }
                  },
                  "global": {
                    "clusterAgentToken": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e",
                    "clusterName": "\u003cCLUSTER_NAME\u003e",
                    "credentials": {
                      "apiKey": "\u003cDATADOG_API_KEY\u003e",
                      "appKey": "\u003cDATADOG_APP_KEY\u003e"
                    },
                    "criSocketPath": "/var/run/crio/crio.sock",
                    "kubelet": {
                      "tlsVerify": false
                    }
                  },
                  "override": {
                    "clusterAgent": {
                      "containers": {
                        "cluster-agent": {
                          "securityContext": {
                            "readOnlyRootFilesystem": false
                          }
                        }
                      },
                      "replicas": 2,
                      "serviceAccountName": "datadog-agent-scc"
                    },
                    "clusterChecksRunner": {
                      "replicas": 2
                    },
                    "nodeAgent": {
                      "hostNetwork": true,
                      "securityContext": {
                        "runAsUser": 0,
                        "seLinuxOptions": {
                          "level": "s0",
                          "role": "system_r",
                          "type": "spc_t",
                          "user": "system_u"
                        }
                      },
                      "serviceAccountName": "datadog-agent-scc"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: registry.connect.redhat.com/datadog/operator@sha256:4dc5129abae9b2ee0a82336f9aa943cf25e392488ddf829415b2d3e205c9f03a
          createdAt: "2025-12-16 22:23:39"
          description: |-
            Datadog provides a modern monitoring and analytics platform. Gather metrics, logs and traces for full observability of your Kubernetes cluster with Datadog Operator.

            **WARNING**: Starting from version `1.21.0`, the Datadog Operator DatadogAgent controller only watches by default the namespace where it is installed. This means your `DatadogAgent` custom resource must be created in the same namespace as the Operator. This can be changed by removing the `DD_AGENT_WATCH_NAMESPACE` environment variable from the Datadog Operator deployment inside the ClusterServiceVersion YAML.
          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.skipRange: '>=1.7.0 <1.21.0'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/DataDog/datadog-operator
          support: Datadog, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgentInternal is the Schema for the datadogagentinternals
              API
            displayName: Datadog Agent Internal
            kind: DatadogAgentInternal
            name: datadogagentinternals.datadoghq.com
            version: v1alpha1
          - description: DatadogAgentProfile is the Schema for the datadogagentprofiles
              API
            displayName: Datadog Agent Profile
            kind: DatadogAgentProfile
            name: datadogagentprofiles.datadoghq.com
            version: v1alpha1
          - description: DatadogAgent Deployment with the Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v2alpha1
          - description: DatadogDashboard is the Schema for the datadogdashboards
              API
            displayName: Datadog Dashboard
            kind: DatadogDashboard
            name: datadogdashboards.datadoghq.com
            version: v1alpha1
          - kind: DatadogGenericResource
            name: datadoggenericresources.datadoghq.com
            version: v1alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha2
          - description: DatadogSLO allows a user to define and manage datadog SLOs
              from Kubernetes cluster.
            displayName: Datadog SLO
            kind: DatadogSLO
            name: datadogslos.datadoghq.com
            version: v1alpha1
        description: |-
          Datadog provides a modern monitoring and analytics platform. Gather metrics, logs and traces for full observability of your Kubernetes cluster with Datadog Operator.

          **WARNING**: Starting from version `1.21.0`, the Datadog Operator DatadogAgent controller only watches by default the namespace where it is installed. This means your `DatadogAgent` custom resource must be created in the same namespace as the Operator. This can be changed by removing the `DD_AGENT_WATCH_NAMESPACE` environment variable from the Datadog Operator deployment inside the ClusterServiceVersion YAML.
        displayName: Datadog Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - registry.connect.redhat.com/datadog/operator-bundle@sha256:2456e6a9fc773f515eafb5e6c3d11aa7c65e07f6cf8324d32630895d4800009e
        - registry.connect.redhat.com/datadog/operator@sha256:4dc5129abae9b2ee0a82336f9aa943cf25e392488ddf829415b2d3e205c9f03a
        version: 1.21.0
      entries:
      - name: datadog-operator.v1.21.0
        version: 1.21.0
      - name: datadog-operator.v1.20.0
        version: 1.20.0
      - name: datadog-operator.v1.19.1
        version: 1.19.1
      - name: datadog-operator.v1.18.0
        version: 1.18.0
      - name: datadog-operator.v1.17.0
        version: 1.17.0
      - name: datadog-operator.v1.16.0
        version: 1.16.0
      - name: datadog-operator.v1.15.1
        version: 1.15.1
      - name: datadog-operator.v1.14.0
        version: 1.14.0
      - name: datadog-operator.v1.13.0
        version: 1.13.0
      - name: datadog-operator.v1.12.1
        version: 1.12.1
      - name: datadog-operator.v1.11.1
        version: 1.11.1
      - name: datadog-operator.v1.10.0
        version: 1.10.0
      - name: datadog-operator.v1.9.0
        version: 1.9.0
      - name: datadog-operator.v1.8.0
        version: 1.8.0
      - name: datadog-operator.v1.7.0
        version: 1.7.0
      - name: datadog-operator.v1.6.0
        version: 1.6.0
      - name: datadog-operator.v1.5.0
        version: 1.5.0
      - name: datadog-operator.v1.4.0
        version: 1.4.0
      - name: datadog-operator.v1.3.0
        version: 1.3.0
      - name: datadog-operator.v1.2.1
        version: 1.2.1
      name: stable
    defaultChannel: stable
    packageName: datadog-operator-certified
    provider:
      name: Datadog
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cryostat-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cryostat-operator.v4.1.0-13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.cryostat.io/v1beta2",
                "kind": "Cryostat",
                "metadata": {
                  "name": "cryostat-sample"
                },
                "spec": {
                  "enableCertManager": true,
                  "eventTemplates": [],
                  "networkPolicies": {},
                  "reportOptions": {
                    "replicas": 0
                  },
                  "trustedCertSecrets": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring, Developer Tools
          containerImage: registry.redhat.io/cryostat/cryostat-rhel9-operator@sha256:d2ce6200997cf6b4894b556d8d149212df3408cd63004aa85d91beb853bac153
          createdAt: "2025-12-17T19:33:36Z"
          description: JVM monitoring and profiling tool
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=2.0.0 <4.1.0'
          olm.substitutesFor: cryostat-operator.v4.1.0
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "operator.cryostat.io/v1beta2",
              "kind": "Cryostat",
              "metadata": {
                "name": "cryostat-sample"
              },
              "spec": {
                "enableCertManager": true,
                "reportOptions": {
                  "replicas": 0
                }
              }
            }
          operators.openshift.io/valid-subscription: '["Red Hat build of OpenJDK"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/cryostatio/cryostat-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cryostat allows you to install Cryostat for a single namespace,
              or multiple namespaces. It contains configuration options for controlling
              the Deployment of the Cryostat application and its related components.
              A Cryostat instance must be created to instruct the operator to deploy
              the Cryostat application.
            displayName: Cryostat
            kind: Cryostat
            name: cryostats.operator.cryostat.io
            version: v1beta2
          - description: Cryostat allows you to install Cryostat for a single namespace.
              It contains configuration options for controlling the Deployment of
              the Cryostat application and its related components. A Cryostat instance
              must be created to instruct the operator to deploy the Cryostat application.
            displayName: Cryostat
            kind: Cryostat
            name: cryostats.operator.cryostat.io
            version: v1beta1
        description: |
          The Red Hat build of Cryostat provides a cloud-based solution for interacting with the JDK Flight Recorder already present in OpenJDK 11+ JVMs. With Cryostat, users can remotely start, stop, retrieve, and even analyze JFR event data, providing the capability to easily take advantage of Flight Recorder's extremely low runtime cost and overhead and the flexibility to monitor applications and analyze recording data without transferring data outside of the cluster the application runs within.
          ##Prerequisites
          Cryostat requires [cert-manager](https://cert-manager.io/) to run. If not already installed in your cluster, please [install](https://cert-manager.io/docs/installation/) it using your preferred method.
          When running on Kubernetes, the operator also requires [Ingress configurations](https://github.com/cryostatio/cryostat-operator/blob/v4.0.0/docs/config.md#network-options) for each of its services to make them available outside of the cluster. The user is responsible for providing the hostnames for each Ingress.
        displayName: Red Hat build of Cryostat
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - flightrecorder
        - java
        - jdk
        - jfr
        - jmc
        - missioncontrol
        - monitoring
        - profiling
        - diagnostic
        links:
        - name: Upstream Project
          url: https://github.com/cryostatio/cryostat
        - name: Website
          url: https://cryostat.io/
        maintainers:
        - email: cryostat-development@googlegroups.com
          name: The Cryostat Authors
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/ubi9/nginx-124@sha256:f3a04b52db496c383a00252832d8809baff203145a53c35cbb71c3ab45cd8a10
        - registry.redhat.io/cryostat/cryostat-agent-init-rhel9@sha256:94ebd8d92359c1cfa18f9d3ffb08df02af53253c8b51d578b89c644806bbbdc4
        - registry.redhat.io/cryostat/cryostat-grafana-dashboard-rhel9@sha256:6fa1ef9bc8477162deda942ba4ca3f79b87928ad93ebefd4cb25eeeae0a0b33b
        - registry.redhat.io/cryostat/cryostat-rhel9-operator@sha256:d2ce6200997cf6b4894b556d8d149212df3408cd63004aa85d91beb853bac153
        - registry.redhat.io/cryostat/cryostat-rhel9@sha256:e66a567ab95fee5dc4cbee0917a46bd45010d691d9e12c553c82275711cf6705
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-rhel9-operator@sha256:a4e12329119133ab09754489d29110f13f1793b01e30b5d19b9ab0b9525b7360
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:5555fb6b7e8907a52f54fd93a19105e36fded2407c344d938dbdc0723b03baed
        - registry.redhat.io/cryostat/cryostat-db-rhel9@sha256:1715bf1197a9a95f8f54ab02ca167448c1390b385c901645b062d066f0ca5459
        - registry.redhat.io/cryostat/cryostat-operator-bundle@sha256:b634b9e8b54b89b9dc2119961b63d0288fdad007a1c48cc12b05595ad97fee83
        - registry.redhat.io/cryostat/cryostat-reports-rhel9@sha256:f7ac0c925c4728e482efc5f553c63a08e2dd453927e5eae606f83731d889c6a1
        - registry.redhat.io/cryostat/cryostat-openshift-console-plugin-rhel9@sha256:d64f56fcaa6c764edb1bb43c8a71af43c27aba56e36c8bac812c40a725a53ddc
        - registry.redhat.io/cryostat/cryostat-storage-rhel9@sha256:89bb337dd42d319e1fee74ac7650f30594461b7c56caa8c52f2628372e19ee3d
        - registry.redhat.io/cryostat/jfr-datasource-rhel9@sha256:b6c08667d49f70c3ba26a09a62a6224bf8c5d579be1988c0caca5212fe7d3d7a
        version: 4.1.0+13
      entries:
      - name: cryostat-operator.v4.1.0-13
        version: 4.1.0+13
      - name: cryostat-operator.v4.1.0
        version: 4.1.0
      - name: cryostat-operator.v4.0.3-3
        version: 4.0.3+3
      - name: cryostat-operator.v4.0.3
        version: 4.0.3
      - name: cryostat-operator.v4.0.2-4
        version: 4.0.2+4
      - name: cryostat-operator.v4.0.2
        version: 4.0.2
      - name: cryostat-operator.v4.0.1
        version: 4.0.1
      - name: cryostat-operator.v4.0.1-5
        version: 4.0.1+5
      - name: cryostat-operator.v4.0.1-4
        version: 4.0.1+4
      - name: cryostat-operator.v4.0.1-3
        version: 4.0.1+3
      - name: cryostat-operator.v4.0.1-2
        version: 4.0.1+2
      - name: cryostat-operator.v4.0.0-9
        version: 4.0.0+9
      - name: cryostat-operator.v4.0.0
        version: 4.0.0
      - name: cryostat-operator.v4.0.0-11
        version: 4.0.0+11
      - name: cryostat-operator.v4.0.0-10
        version: 4.0.0+10
      - name: cryostat-operator.v3.0.1-7
        version: 3.0.1+7
      - name: cryostat-operator.v3.0.1-9
        version: 3.0.1+9
      - name: cryostat-operator.v3.0.1-8
        version: 3.0.1+8
      - name: cryostat-operator.v3.0.1
        version: 3.0.1
      - name: cryostat-operator.v3.0.1-6
        version: 3.0.1+6
      - name: cryostat-operator.v3.0.1-5
        version: 3.0.1+5
      - name: cryostat-operator.v3.0.1-3
        version: 3.0.1+3
      - name: cryostat-operator.v3.0.1-13
        version: 3.0.1+13
      - name: cryostat-operator.v3.0.1-12
        version: 3.0.1+12
      - name: cryostat-operator.v3.0.1-11
        version: 3.0.1+11
      - name: cryostat-operator.v3.0.1-10
        version: 3.0.1+10
      - name: cryostat-operator.v3.0.0-6
        version: 3.0.0+6
      - name: cryostat-operator.v3.0.0-8
        version: 3.0.0+8
      - name: cryostat-operator.v3.0.0-12
        version: 3.0.0+12
      - name: cryostat-operator.v3.0.0
        version: 3.0.0
      - name: cryostat-operator.v2.4.0
        version: 2.4.0
      - name: cryostat-operator.v2.4.0-8
        version: 2.4.0+8
      - name: cryostat-operator.v2.4.0-7
        version: 2.4.0+7
      - name: cryostat-operator.v2.4.0-6
        version: 2.4.0+6
      - name: cryostat-operator.v2.4.0-4
        version: 2.4.0+4
      - name: cryostat-operator.v2.4.0-3
        version: 2.4.0+3
      - name: cryostat-operator.v2.3.1-6
        version: 2.3.1+6
      - name: cryostat-operator.v2.3.1-8
        version: 2.3.1+8
      - name: cryostat-operator.v2.3.1-9
        version: 2.3.1+9
      - name: cryostat-operator.v2.3.1
        version: 2.3.1
      - name: cryostat-operator.v2.3.0
        version: 2.3.0
      - name: cryostat-operator.v2.3.0-6
        version: 2.3.0+6
      - name: cryostat-operator.v2.2.1-14
        version: 2.2.1+14
      - name: cryostat-operator.v2.2.1-8
        version: 2.2.1+8
      - name: cryostat-operator.v2.2.1-5
        version: 2.2.1+5
      - name: cryostat-operator.v2.2.1-13
        version: 2.2.1+13
      - name: cryostat-operator.v2.2.1-12
        version: 2.2.1+12
      - name: cryostat-operator.v2.2.1-10
        version: 2.2.1+10
      - name: cryostat-operator.v2.2.1
        version: 2.2.1
      - name: cryostat-operator.v2.2.0
        version: 2.2.0
      - name: cryostat-operator.v2.1.1-2.1659469835.p
        version: 2.1.1+2.1659469835.p
      - name: cryostat-operator.v2.1.1-2.1655334614.p
        version: 2.1.1+2.1655334614.p
      - name: cryostat-operator.v2.1.1
        version: 2.1.1
      - name: cryostat-operator.v2.1.0
        version: 2.1.0
      name: stable
    defaultChannel: stable
    packageName: cryostat-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-spark-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: spark-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/spark-k8s-operator@sha256:3fa6f5fc9c9a7fa217bfcdc03aed1896e52edbc60b8173404eb102a4e099a83b
          description: Stackable Operator for Apache Spark
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/spark-k8s-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for SparkApplicationSpec via
              `CustomResource`
            displayName: sparkapplications.spark.stackable.tech
            kind: SparkApplication
            name: sparkapplications.spark.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for SparkHistoryServerSpec via
              `CustomResource`
            displayName: sparkhistoryservers.spark.stackable.tech
            kind: SparkHistoryServer
            name: sparkhistoryservers.spark.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for SparkConnectServerSpec via
              `CustomResource`
            displayName: sparkconnectservers.spark.stackable.tech
            kind: SparkConnectServer
            name: sparkconnectservers.spark.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Spark
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - spark-k8s
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/spark-k8s-operator@sha256:3fa6f5fc9c9a7fa217bfcdc03aed1896e52edbc60b8173404eb102a4e099a83b
        - registry.connect.redhat.com/stackable/stackable-apache-spark-k8s-operator@sha256:211d435f78730b3fa265df3f6a1a9c4649b060f1bad2b1709c935740deb94057
        version: 25.11.0
      entries:
      - name: spark-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-spark-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-kafka-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-kafka-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/kafka-controller:1.3.0
          createdAt: "2025-11-29T05:27:24Z"
          description: AWS Kafka controller is a service controller for managing Kafka
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster represents the state of an AWS kafka Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.kafka.services.k8s.aws
            version: v1alpha1
          - description: Configuration represents the state of an AWS kafka Configuration
              resource.
            displayName: Configuration
            kind: Configuration
            name: configurations.kafka.services.k8s.aws
            version: v1alpha1
          - description: ServerlessCluster represents the state of an AWS kafka ServerlessCluster
              resource.
            displayName: ServerlessCluster
            kind: ServerlessCluster
            name: serverlessclusters.kafka.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Kafka resources in AWS from within your Kubernetes cluster.

          **About Amazon Kafka**

          Amazon Managed Streaming for Apache Kafka (Amazon MSK) is a fully managed AWS streaming data service makes it easy for you to build and run applications that use Apache Kafka to process streaming data without needing to become an expert in operating Apache Kafka clusters. Amazon MSK manages the provisioning, configuration, and maintenance of Apache Kafka clusters and Apache ZooKeeper nodes for you. Amazon MSK also shows key Apache Kafka performance metrics in the AWS Console.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Kafka Developer Resources
          url: https://aws.amazon.com/msk/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: kafka maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/kafka-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-kafka-controller@sha256:adf201fadd82f900d371ba5dd17dca2cc205cf2e8f796af191cf45c73a1745b3
        version: 1.3.0
      entries:
      - name: ack-kafka-controller.v1.3.0
        version: 1.3.0
      - name: ack-kafka-controller.v1.2.2
        version: 1.2.2
      - name: ack-kafka-controller.v1.2.1
        version: 1.2.1
      - name: ack-kafka-controller.v1.2.0
        version: 1.2.0
      - name: ack-kafka-controller.v1.1.3
        version: 1.1.3
      - name: ack-kafka-controller.v1.1.2
        version: 1.1.2
      - name: ack-kafka-controller.v1.1.1
        version: 1.1.1
      - name: ack-kafka-controller.v1.1.0
        version: 1.1.0
      - name: ack-kafka-controller.v1.0.14
        version: 1.0.14
      - name: ack-kafka-controller.v1.0.13
        version: 1.0.13
      - name: ack-kafka-controller.v1.0.12
        version: 1.0.12
      - name: ack-kafka-controller.v1.0.11
        version: 1.0.11
      - name: ack-kafka-controller.v1.0.10
        version: 1.0.10
      - name: ack-kafka-controller.v1.0.8
        version: 1.0.8
      - name: ack-kafka-controller.v1.0.7
        version: 1.0.7
      - name: ack-kafka-controller.v1.0.6
        version: 1.0.6
      - name: ack-kafka-controller.v1.0.5
        version: 1.0.5
      - name: ack-kafka-controller.v1.0.4
        version: 1.0.4
      - name: ack-kafka-controller.v1.0.3
        version: 1.0.3
      - name: ack-kafka-controller.v1.0.2
        version: 1.0.2
      - name: ack-kafka-controller.v1.0.1
        version: 1.0.1
      - name: ack-kafka-controller.v1.0.0
        version: 1.0.0
      - name: ack-kafka-controller.v0.0.14
        version: 0.0.14
      - name: ack-kafka-controller.v0.0.12
        version: 0.0.12
      - name: ack-kafka-controller.v0.0.11
        version: 0.0.11
      - name: ack-kafka-controller.v0.0.10
        version: 0.0.10
      - name: ack-kafka-controller.v0.0.9
        version: 0.0.9
      - name: ack-kafka-controller.v0.0.8
        version: 0.0.8
      - name: ack-kafka-controller.v0.0.7
        version: 0.0.7
      - name: ack-kafka-controller.v0.0.6
        version: 0.0.6
      - name: ack-kafka-controller.v0.0.5
        version: 0.0.5
      - name: ack-kafka-controller.v0.0.4
        version: 0.0.4
      - name: ack-kafka-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-kafka-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: gitwebhook-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitwebhook-operator.v0.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GitWebhook",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "gitwebhook-operator",
                    "app.kubernetes.io/instance": "gitwebhook-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "gitwebhook",
                    "app.kubernetes.io/part-of": "gitwebhook-operator"
                  },
                  "name": "gitwebhook-sample"
                },
                "spec": null
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/redhat-cop/gitwebhook-operator@sha256:2810d75eebb24069dbbedf6a82285136c6f16b4cc58b59f1b0fbdc38560cf8a8
          createdAt: "2024-05-10T18:17:13Z"
          description: An operator to create git webhooks declaratively
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: gitwebhook-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/gitwebhook-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitWebhook is the Schema for the gitwebhooks API
            displayName: Git Webhook
            kind: GitWebhook
            name: gitwebhooks.redhatcop.redhat.io
            version: v1alpha1
        description: "This operator automates the setting up of git webhooks. Its
          main purpose is to stream line the configuration of operators such as Tekton
          or ArgoCD which rely on git webhooks for some of their functionalities.\n\n##
          The GitWebhook CRD\n \nA CRD is provided by this operator to create a git
          web hook, here is an example for github\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          GitWebhook\nmetadata:\n  name: gitwebhook-github\nspec:\n  gitHub:\n    gitServerCredentials:\n
          \     name: github-pat\n  repositoryOwner: ${repo_owner}\n  ownerType: user\n
          \ repositoryName: ${repo_name}\n  webhookURL: https://hellowebhook.com\n
          \ insecureSSL: false\n  webhookSecret:\n    name: webhook-secret\n  events:\n
          \   - push  \n  contentType: json\n  active: true  \n```    \n\nhere is
          an explanation of each field:\n\n- `gihub` specifies how to connect to the
          git api server. It also requires a local reference to a secret (in the same
          namespace) containing a key `token` with a valid github token to be used
          to authenticate. A similar `gitLab` section exists when connecting to gitlab.
          Only one of `gitLab` or `gitHub` can be defined. \n- `repositoryOwner` and
          `repositoryName` identify the repository for which we want to receive events.\n-
          `ownerType` can have two values: `user` and `organization` and identifies
          the kind of owner.\n- `webhookURL` is the URL for to be called.\n - `insecureSSL`
          defines whether the target URL certificate should be validated (default
          `false`). \n- `webhookSecret` defines a local reference to a secret containing
          the `secret` key. The value is a shared secret between the webhook caller
          and the received for farther validation or identification of the caller.\n-
          `events` is the list of the repo-level events that the webhook should generate.
          The list of valid events for github can be found [here](https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads).
          The list of valid events for gitlab can be found [here](https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html).\n
          - `contentType` defines the format of the webhook payload (default `json`)
          (github).\n - `active` whether the webhook should be turned on (default
          `true`) (github).\n - `pushEventBranchFilter` a regular expression to filter
          from which branches push events should be generated (gitlab only).\n\n##
          Security Considerations\n\nThis operator does not own credentials for the
          git server, but instead always allocate a new connection based on the credentials
          referenced in the CR and every reconcile cycle. As a result there is no
          risk of security escalation or credential leaking between tenants of a cluster
          using this operator. On the other hand it is the responsibility of the namespace
          owners or the platform owner to ensure that valid git credentials are always
          available in the namespace where the GitWebhook CRs need to defined.\n\n##
          Current support\n\nCurrently this operator support creating repo-level webhooks
          for github and gitlab. Potentially this operator could be extended to support
          org-level webhook or other git systems. Contributions are welcome.  "
        displayName: GitWebhook operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - webhook
        - github
        - gitlab
        links:
        - name: GitWbehook Operator
          url: https://github.com/redhat-cop/gitwebhook-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/gitwebhook-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d99a8d144816b951a67648c12c0b988936ccd25cf3754f3cd85ab8c01592248f
        - quay.io/community-operator-pipeline-prod/gitwebhook-operator@sha256:2d33e4f4f4b607ee2006481efc7ad9341049085ef988777d23e586f7406a5109
        - quay.io/redhat-cop/gitwebhook-operator@sha256:2810d75eebb24069dbbedf6a82285136c6f16b4cc58b59f1b0fbdc38560cf8a8
        version: 0.1.2
      entries:
      - name: gitwebhook-operator.v0.1.2
        version: 0.1.2
      - name: gitwebhook-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: gitwebhook-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-route53-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-route53-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/route53-controller:1.2.0
          createdAt: "2025-11-29T03:54:20Z"
          description: AWS Route53 controller is a service controller for managing
            Route53 resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HealthCheck represents the state of an AWS route53 HealthCheck
              resource.
            displayName: HealthCheck
            kind: HealthCheck
            name: healthchecks.route53.services.k8s.aws
            version: v1alpha1
          - description: HostedZone represents the state of an AWS route53 HostedZone
              resource.
            displayName: HostedZone
            kind: HostedZone
            name: hostedzones.route53.services.k8s.aws
            version: v1alpha1
          - description: RecordSet represents the state of an AWS route53 RecordSet
              resource.
            displayName: RecordSet
            kind: RecordSet
            name: recordsets.route53.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Route53 resources in AWS from within your Kubernetes cluster.

          **About Amazon Route53**

          Amazon Route 53 is a highly available and scalable Domain Name System (DNS) web service. You can use Route 53 to perform three main functions in any combination: domain registration, DNS routing, and health checking.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Route53
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - route53
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Route53 Developer Resources
          url: https://docs.aws.amazon.com/route53/index.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: eks maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/route53-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-route53-controller@sha256:a584b4a23fc60948a8d6425922a484459daaa711766190bd85ae500c1407dbd1
        version: 1.2.0
      entries:
      - name: ack-route53-controller.v1.2.0
        version: 1.2.0
      - name: ack-route53-controller.v1.1.2
        version: 1.1.2
      - name: ack-route53-controller.v1.1.1
        version: 1.1.1
      - name: ack-route53-controller.v1.1.0
        version: 1.1.0
      - name: ack-route53-controller.v1.0.6
        version: 1.0.6
      - name: ack-route53-controller.v1.0.5
        version: 1.0.5
      - name: ack-route53-controller.v1.0.3
        version: 1.0.3
      - name: ack-route53-controller.v1.0.2
        version: 1.0.2
      - name: ack-route53-controller.v0.1.0
        version: 0.1.0
      - name: ack-route53-controller.v0.0.28
        version: 0.0.28
      - name: ack-route53-controller.v0.0.27
        version: 0.0.27
      - name: ack-route53-controller.v0.0.26
        version: 0.0.26
      - name: ack-route53-controller.v0.0.25
        version: 0.0.25
      - name: ack-route53-controller.v0.0.24
        version: 0.0.24
      - name: ack-route53-controller.v0.0.23
        version: 0.0.23
      - name: ack-route53-controller.v0.0.22
        version: 0.0.22
      - name: ack-route53-controller.v0.0.20
        version: 0.0.20
      - name: ack-route53-controller.v0.0.19
        version: 0.0.19
      - name: ack-route53-controller.v0.0.18
        version: 0.0.18
      - name: ack-route53-controller.v0.0.17
        version: 0.0.17
      - name: ack-route53-controller.v0.0.16
        version: 0.0.16
      - name: ack-route53-controller.v0.0.15
        version: 0.0.15
      - name: ack-route53-controller.v0.0.14
        version: 0.0.14
      - name: ack-route53-controller.v0.0.13
        version: 0.0.13
      - name: ack-route53-controller.v0.0.9
        version: 0.0.9
      - name: ack-route53-controller.v0.0.6
        version: 0.0.6
      - name: ack-route53-controller.v0.0.4
        version: 0.0.4
      - name: ack-route53-controller.v0.0.3
        version: 0.0.3
      - name: ack-route53-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-route53-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Silicom Ltd.
      provider-url: http://www.silicom-usa.com
    name: silicom-sts-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: silicom-sts-operator.v0.0.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "gm-1",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    }
                  ],
                  "mode": "T-GM.8275.1",
                  "namespace": "openshift-operators",
                  "nodeSelector": {
                    "sts.silicom.com/config": "gm-1"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "bc-1"
                },
                "spec": {
                  "aprLevel": 0,
                  "domainNumber": 24,
                  "esmcMode": 1,
                  "forwardable": 0,
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Slave",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "holdoff": 500,
                      "ipv4": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    }
                  ],
                  "mode": "T-TBC.8275.1",
                  "mode10MHz": 2,
                  "modePPS": 2,
                  "namespace": "openshift-operators",
                  "nodeSelector": {
                    "sts.silicom.com/config": "bc-1"
                  },
                  "phyLedsCtl": 0,
                  "priority2": 128,
                  "src10MHz": 1,
                  "srcPPS": 1,
                  "syncOption": 1,
                  "synceCpu": 10,
                  "synceRecClkPort": 0,
                  "tracePtpMsg": -1,
                  "twoStep": 0
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsNode",
                "metadata": {
                  "name": "worker2"
                },
                "spec": null,
                "status": {
                  "ethInterfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "pciAddr": "02:00.0",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "pciAddr": "02:00.1",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "pciAddr": "02:00.2",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f3",
                      "ethPort": 3,
                      "pciAddr": "02:00.3",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f4",
                      "ethPort": 4,
                      "pciAddr": "02:00.4",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f5",
                      "ethPort": 5,
                      "pciAddr": "02:00.5",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f6",
                      "ethPort": 6,
                      "pciAddr": "02:00.6",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f7",
                      "ethPort": 7,
                      "pciAddr": "02:00.7",
                      "status": "down"
                    }
                  ],
                  "gpsStatus": {
                    "active": 0,
                    "device": "",
                    "lat": "",
                    "lon": "",
                    "mode": 0,
                    "time": "2021-12-01T09:57:10.968Z"
                  },
                  "tsyncStatus": {
                    "mode": "PTP Master Mode",
                    "status": "Normal Status",
                    "time": "Wed, 01 Dec 2021 09:57:10 UTC"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsOperatorConfig",
                "metadata": {
                  "name": "sts-operator-config",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "images": null,
                  "sro": null
                }
              }
            ]
          capabilities: Basic Install
          categories: Drivers and plugins
          certified: "false"
          containerImage: quay.io/silicom/sts-operator:0.0.6
          createdAt: 2021-11-17T10:21:24 CET
          description: |
            This Operator is a Kubernetes custom controller whose goal
            is to serve the installation and lifecycle management of
            Silicom STS device plugins for Kubernetes.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io.bundle.channels.v1: alpha
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/silicomdk/sts-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StsConfig is the Schema for the stsconfigs API
            displayName: Sts Config
            kind: StsConfig
            name: stsconfigs.sts.silicom.com
            version: v1alpha1
          - description: StsNode is the Schema for the stsnodes API
            displayName: Sts Node
            kind: StsNode
            name: stsnodes.sts.silicom.com
            version: v1alpha1
          - description: StsOperatorConfig is the Schema for the stsoperatorconfigs
              API
            displayName: Sts Operator Config
            kind: StsOperatorConfig
            name: stsoperatorconfigs.sts.silicom.com
            version: v1alpha1
        description: |
          Silicom STS line card for 4G and 5G NIC enable real-time data transmission
          with high timing accuracy at the lowest cost to power 5G DRAN and CRAN edge
          deployments.

          * Support 1588/PTP over IPv4 / IPV6, IEEE1588v2
          * Support SyncE /ITU-T G.8262
          * T-BC/T-TSC Boundary Clock and TSC Slave Clock /G.8273.2
          * T-GM Grand Master /G.8273.1 per G.8275.1 PTP Profile
          * PRTC Primary Reference Time Clock Class B/G.8272
          * T-TC Transparent Clock /G.8273.3
          * 1588 Software Stack and Servo Software in x86
          * [Silicom STS2 Card](https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/p410g8ts81-timesync-server-adapter)

          ### Prequisites:
          * [NFD Operator](https://operatorhub.io/operator/nfd-operator "NFD operator needed for the discovery of STS cards").
          * [SRO Operator](https://github.com/openshift/special-resource-operator)
        displayName: Silicom STS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sts
        - silicom
        - ptp
        links:
        - name: GitHub Repository
          url: https://github.com/silicomDK/sts-operator
        - name: Github SRO Helm Charts
          url: https://github.com/silicomDK/sts2-charts
        - name: Silicom Ltd.
          url: http://www.silicom-usa.com
        maintainers:
        - email: rmr@silicom.dk
          name: Ryan M. Raasch
        maturity: beta
        provider:
          name: Silicom Ltd.
          url: http://www.silicom-usa.com
        relatedImages:
        - quay.io/silicom/ice-driver-src@sha256:ca728f648769d31501cdedda92554bcfa890754405b0b06d41629cea47707da8
        - quay.io/silicom/tsyncd@sha256:78be78ec8939f025f9a8b899693ab77b3990116d1c7ffb2115c620b7c3382d9d
        - quay.io/silicom/gpsd@sha256:649e8a6c524920e1c564d8f797b8d64235b2527aa923f94bc9c7a0b7aba8ae7f
        - quay.io/silicom/sts-operator:0.0.6
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/silicom-sts-operator@sha256:5d4e4e62b03888bcbf6336934f2ddf5c5cb3d91bc8482a3aa1697e09625c6865
        - quay.io/silicom/grpc-tsyncd@sha256:aac7233423439e352d8eb39cef63e479c30c2f80b063c84ffc8797cc5a045117
        - quay.io/silicom/phc2sys@sha256:0f3b63a3059b7d6158a916814281097f0d418b99a5fac9e8e5fd9bae58fb0b74
        - quay.io/silicom/sts-plugin@sha256:44339fd400d46d9dddb02c2da47c6f9f96ad2605a5c6de8a7dce2f8c3da3bb57
        - quay.io/silicom/tsync_extts@sha256:be6a5950a5fdc6fdf8015767901856bf173d01bdc803be7141e4f9795ab1478a
        version: 0.0.6
      entries:
      - name: silicom-sts-operator.v0.0.6
        version: 0.0.6
      - name: silicom-sts-operator.v0.0.5
        version: 0.0.5
      - name: silicom-sts-operator.v0.0.4
        version: 0.0.4
      - name: silicom-sts-operator.v0.0.3
        version: 0.0.3
      - name: silicom-sts-operator.v0.0.2
        version: 0.0.2
      - name: silicom-sts-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: silicom-sts-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "gm-1",
                  "namespace": "sts-silicom"
                },
                "spec": {
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    }
                  ],
                  "mode": "T-GM.8275.1",
                  "namespace": "sts-silicom",
                  "nodeSelector": {
                    "sts.silicom.com/config": "gm-1"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "bc-1"
                },
                "spec": {
                  "aprLevel": 0,
                  "domainNumber": 24,
                  "esmcMode": 1,
                  "forwardable": 0,
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Slave",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "holdoff": 500,
                      "ipv4": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    }
                  ],
                  "mode": "T-TBC.8275.1",
                  "mode10MHz": 2,
                  "modePPS": 2,
                  "namespace": "sts-silicom",
                  "nodeSelector": {
                    "sts.silicom.com/config": "bc-1"
                  },
                  "phyLedsCtl": 0,
                  "priority2": 128,
                  "src10MHz": 1,
                  "srcPPS": 1,
                  "syncOption": 1,
                  "synceCpu": 10,
                  "synceRecClkPort": 0,
                  "tracePtpMsg": -1,
                  "twoStep": 0
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsNode",
                "metadata": {
                  "name": "worker2"
                },
                "spec": null,
                "status": {
                  "ethInterfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "pciAddr": "02:00.0",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "pciAddr": "02:00.1",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "pciAddr": "02:00.2",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f3",
                      "ethPort": 3,
                      "pciAddr": "02:00.3",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f4",
                      "ethPort": 4,
                      "pciAddr": "02:00.4",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f5",
                      "ethPort": 5,
                      "pciAddr": "02:00.5",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f6",
                      "ethPort": 6,
                      "pciAddr": "02:00.6",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f7",
                      "ethPort": 7,
                      "pciAddr": "02:00.7",
                      "status": "down"
                    }
                  ],
                  "gpsStatus": {
                    "active": 0,
                    "device": "",
                    "lat": "",
                    "lon": "",
                    "mode": 0,
                    "time": "2021-12-01T09:57:10.968Z"
                  },
                  "tsyncStatus": {
                    "mode": "PTP Master Mode",
                    "status": "Normal Status",
                    "time": "Wed, 01 Dec 2021 09:57:10 UTC"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsOperatorConfig",
                "metadata": {
                  "name": "sts-operator-config"
                },
                "spec": {
                  "gpsSvcPort": 2947,
                  "grpcSvcPort": 50051,
                  "images": {
                    "gpsd": "quay.io/silicom/gpsd:3.23.1",
                    "grpcTsyncd": "quay.io/silicom/grpc-tsyncd:2.1.0.0",
                    "phcs2Sys": "quay.io/silicom/phcs2sys:3.1.1",
                    "stsPlugin": "quay.io/silicom/sts-plugin:0.0.2",
                    "ts2Phcs": "quay.io/silicom/ts2phcs:1.0.0",
                    "tsyncd": "quay.io/silicom/tsyncd:2.1.0.0"
                  },
                  "namespace": "sts-silicom",
                  "sro": {
                    "chart": {
                      "name": "ice-special-resource",
                      "repository": {
                        "name": "ice-special-resource",
                        "url": "http://ice-driver-src"
                      },
                      "version": "0.0.1"
                    },
                    "iceVersion": "1.7.16",
                    "namespace": "openshift-operators",
                    "srcImage": "quay.io/silicom/ice-driver-src:1.7.16",
                    "srcSvcPort": 3000
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Drivers and plugins
          certified: "false"
          containerImage: quay.io/silicom/sts-operator:0.0.2
          createdAt: 2021-11-17T10:21:24 CET
          description: This Operator is a Kubernetes custom controller whose goal
            is to serve the installation and lifecycle management of Silicom STS device
            plugins for Kubernetes.
          operators.operatorframework.io.bundle.channels.v1: stable,development
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/silicomdk/sts-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StsConfig is the Schema for the stsconfigs API
            displayName: Sts Config
            kind: StsConfig
            name: stsconfigs.sts.silicom.com
            version: v1alpha1
          - description: StsNode is the Schema for the stsnodes API
            displayName: Sts Node
            kind: StsNode
            name: stsnodes.sts.silicom.com
            version: v1alpha1
          - description: StsOperatorConfig is the Schema for the stsoperatorconfigs
              API
            displayName: Sts Operator Config
            kind: StsOperatorConfig
            name: stsoperatorconfigs.sts.silicom.com
            version: v1alpha1
        description: |
          Silicom STS line card for 4G and 5G NIC enable real-time data transmission
          with high timing accuracy at the lowest cost to power 5G DRAN and CRAN edge
          deployments.

          * Support 1588/PTP over IPv4 / IPV6, IEEE1588v2
          * Support SyncE /ITU-T G.8262
          * T-BC/T-TSC Boundary Clock and TSC Slave Clock /G.8273.2
          * T-GM Grand Master /G.8273.1 per G.8275.1 PTP Profile
          * PRTC Primary Reference Time Clock Class B/G.8272
          * T-TC Transparent Clock /G.8273.3
          * 1588 Software Stack and Servo Software in x86
          * [Silicom STS2 Card](https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/p410g8ts81-timesync-server-adapter)

          ### Prequisites:
          * [NFD Operator](https://operatorhub.io/operator/nfd-operator "NFD operator needed for the discovery of STS cards").
          * [SRO Operator](https://github.com/openshift/special-resource-operator)
        displayName: Silicom STS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sts
        - silicom
        - ptp
        links:
        - name: GitHub Repository
          url: https://github.com/silicomDK/sts-operator
        - name: Github SRO Helm Charts
          url: https://github.com/silicomDK/sts2-charts
        - name: Silicom Ltd.
          url: http://www.silicom-usa.com
        maintainers:
        - email: rmr@silicom.dk
          name: Ryan M. Raasch
        maturity: beta
        provider:
          name: Silicom Ltd.
          url: http://www.silicom-usa.com
        relatedImages:
        - quay.io/silicom/sts-operator:0.0.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/silicom-sts-operator@sha256:df0939534c6aaa988714e64728ecdb387ff7dc4b32a5d97d56703ab143787171
        version: 0.0.2
      entries:
      - name: silicom-sts-operator.v0.0.2
        version: 0.0.2
      - name: silicom-sts-operator.v0.0.1
        version: 0.0.1
      name: beta
    defaultChannel: alpha
    packageName: silicom-sts-operator
    provider:
      name: Silicom Ltd.
      url: http://www.silicom-usa.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Alvearie
      provider-url: https://alvearie.github.io
    name: alvearie-imaging-ingestion
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: imaging-ingestion-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomEventBridge",
                "metadata": {
                  "name": "events"
                },
                "spec": {
                  "dicomEventDrivenIngestionName": "core",
                  "eventBridge": {},
                  "imagePullPolicy": "Always",
                  "natsSecure": true,
                  "natsSubjectRoot": "events",
                  "natsTokenSecret": "nats-events-secure-bound-token",
                  "natsUrl": "jetstream.imaging-ingestion.svc.cluster.local:4222",
                  "role": "hub"
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomEventDrivenIngestion",
                "metadata": {
                  "name": "core"
                },
                "spec": {
                  "databaseConfigName": "db-config",
                  "databaseSecretName": "db-secret",
                  "eventProcessor": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  },
                  "imagePullPolicy": "Always"
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomInstanceBinding",
                "metadata": {
                  "name": "stow"
                },
                "spec": {
                  "bindingConfigName": "instance-binding-config",
                  "bindingSecretName": "instance-binding-secret",
                  "dicomEventDrivenIngestionName": "core",
                  "imagePullPolicy": "Always",
                  "instanceBinding": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  }
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomStudyBinding",
                "metadata": {
                  "name": "fhir"
                },
                "spec": {
                  "bindingConfigName": "study-binding-config",
                  "bindingSecretName": "study-binding-secret",
                  "dicomEventDrivenIngestionName": "core",
                  "imagePullPolicy": "Always",
                  "studyBinding": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  }
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomwebIngestionService",
                "metadata": {
                  "name": "ingestion"
                },
                "spec": {
                  "bucketConfigName": "imaging-ingestion",
                  "bucketSecretName": "imaging-ingestion",
                  "dicomEventDrivenIngestionName": "core",
                  "imagePullPolicy": "Always",
                  "providerName": "provider",
                  "stowService": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  },
                  "wadoService": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  }
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DimseIngestionService",
                "metadata": {
                  "name": "ingestion"
                },
                "spec": {
                  "applicationEntityTitle": "DICOM-INGEST",
                  "bucketConfigName": "imaging-ingestion",
                  "bucketSecretName": "imaging-ingestion",
                  "dicomEventDrivenIngestionName": "core",
                  "dimseService": {},
                  "imagePullPolicy": "Always",
                  "natsSecure": true,
                  "natsSubjectRoot": "DIMSE",
                  "natsTokenSecret": "ingestion-nats-secure-bound-token",
                  "natsUrl": "nats-secure.imaging-ingestion.svc.cluster.local:4222",
                  "providerName": "provider"
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DimseProxy",
                "metadata": {
                  "name": "ingestion"
                },
                "spec": {
                  "applicationEntityTitle": "DCM4CHEE",
                  "imagePullPolicy": "Always",
                  "natsSecure": true,
                  "natsSubjectRoot": "DIMSE",
                  "natsTokenSecret": "ingestion-nats-secure-bound-token",
                  "natsUrl": "nats-secure.imaging-ingestion.svc.cluster.local:4222",
                  "proxy": {},
                  "targetDimseHost": "arc.dcm4chee.svc.cluster.local",
                  "targetDimsePort": 11112
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: alvearie/imaging-ingestion-operator:0.0.3
          createdAt: "2021-04-08T15:29:55Z"
          description: The Alvearie Imaging Ingestion provides a collection of components
            for extending enterprise medical imaging informatics systems to Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Alvearie/imaging-ingestion
          support: alvearie.slack.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DicomEventBridge is the Schema for the dicomeventbridges
              API
            displayName: Dicom Event Bridge
            kind: DicomEventBridge
            name: dicomeventbridges.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Event driven manifest of all DICOM data across all associated
              S3 buckets
            displayName: Dicom Event Driven Ingestion
            kind: DicomEventDrivenIngestion
            name: dicomeventdriveningestions.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Fan-out notification of DICOM instance data (STOW-RS)
            displayName: Dicom Instance Binding
            kind: DicomInstanceBinding
            name: dicominstancebindings.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Fan-out notification of DICOM studies (FHIRv4 ImagingStudy)
            displayName: Dicom Study Binding
            kind: DicomStudyBinding
            name: dicomstudybindings.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Provides DICOMweb WADO-RS and STOW-RS access to a S3 bucket
            displayName: Dicomweb Ingestion Service
            kind: DicomwebIngestionService
            name: dicomwebingestionservices.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Provides a proxied DIMSE Application Entity (AE) in the cluster
              for C-STORE operations to a storage space
            displayName: Dimse Ingestion Service
            kind: DimseIngestionService
            name: dimseingestionservices.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Provides a bidirectional proxied DIMSE Application Entity
              (AE) in the cluster
            displayName: Dimse Proxy
            kind: DimseProxy
            name: dimseproxies.imaging-ingestion.alvearie.org
            version: v1alpha1
        description: |
          The Alvearie Imaging Ingestion provides a collection of components for extending enterprise medical imaging informatics systems to Kubernetes.

          ## About this Operator
          This operator enables standards-based medical imaging application interfaces such as DICOM Message Service Element (DIMSE) and DICOMweb.
          The API's provided allow for extending enterprise imaging systems to the cloud with custom, fit for purpose deployments.
          This is possible at speed, low cost, and little or zero integration effort.or extending enterprise medical imaging informatics systems to a modern cloud.


          Some potential usages:

          - Perform lightweight secure bridging of DICOM from the enterprise imaging zone to a cloud availability zone.
          - Utilize S3 buckets for segregating DICOM data to be used for clinical or scientific purposes.
          - Fan-out DICOM data to a number of different DICOM subscribers
          - Generate FHIRv4 *ImagingStudy* resources from ingested content and publish to a FHIRv4 based patient logitudinal record.
          - Distribute imaging study arrival and update notifications to imaging study subscribers


          ## Prerequisites

          - [Knative](https://operatorhub.io/operator/knative-operator)
          - ProgresSQL such as [Crunchy](https://operatorhub.io/operator/postgresql)
          - S3 storage such as [MinIO](https://operatorhub.io/operator/minio-operator)
          - [NATS operator](https://github.com/nats-io/nats-operator/) (Optional:  only required for DIMSE Proxy component)



          ## Documentation

          Visit the [official github repository](https://github.com/Alvearie/imaging-ingestion) for documentation and examples.
        displayName: Alvearie Imaging Ingestion Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - dicom
        - medical imaging
        - fhir
        - dimse-c
        - dimse
        - imaging study
        links:
        - name: Alvearie Imaging Ingestion Operator
          url: https://github.com/Alvearie/imaging-ingestion
        maintainers:
        - email: rduggan@ca.ibm.com
          name: Richard Duggan
        - email: jjacob@us.ibm.com
          name: Jeesmon Jacob
        maturity: alpha
        provider:
          name: Alvearie
          url: https://alvearie.github.io
        relatedImages:
        - quay.io/openshift-community-operators/alvearie-imaging-ingestion@sha256:f65cc3cb83b1c75385970ce70c6a84b15b143e682ad0d1784148f1643df0991e
        - alvearie/imaging-ingestion-operator:0.0.3
        version: 0.0.3
      entries:
      - name: imaging-ingestion-operator.v0.0.3
        version: 0.0.3
      - name: imaging-ingestion-operator.v0.0.2
        version: 0.0.2
      - name: imaging-ingestion-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: alvearie-imaging-ingestion
    provider:
      name: Alvearie
      url: https://alvearie.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Grafana Loki SIG Operator
      provider-url: ""
    name: loki-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: loki-operator.v0.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in namespace example-namespace has an error rate above 5% for more than 10 minutes.",
                            "summary": "High error rate detected"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "warning"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in pod {{ $labels.pod }} is leaking HTTP basic auth credentials in logs.",
                            "summary": "HTTP credentials leaked in logs"
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({kubernetes_namespace_name=\"example-namespace\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "application"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          containerImage: docker.io/grafana/loki-operator:0.9.0
          createdAt: "2025-12-03T16:22:02Z"
          description: The Community Loki Operator provides Kubernetes native deployment
            and management of Loki and related logging components.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/grafana/loki/tree/main/operator
          support: Grafana Loki SIG Operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |-
          The Community Loki Operator provides Kubernetes native deployment and management of Loki and related logging components.
          The purpose of this project is to simplify and automate the configuration of a Loki based logging stack for Kubernetes clusters.

          ### Operator features

          The Loki Operator includes, but is not limited to, the following features:

          * Kubernetes Custom Resources: Use Kubernetes custom resources to deploy and manage Loki, Alerting rules, Recording rules, and related components.
          * Simplified Deployment Configuration: Configure the fundamentals of Loki like tenants, limits, replication factor and storage from a native Kubernetes resource.

          ### Feature Gates

          The Loki Operator Bundle provides a set of feature gates that enable/disable specific feature depending on the target Kubernetes distribution. The following feature gates are enabled by default:
          * `serviceMonitors`: Enables creating a Prometheus-Operator managed ServiceMonitor resource per LokiStack component.
          * `serviceMonitorTlsEndpoints`: Enables TLS for the ServiceMonitor endpoints.
          * `lokiStackAlerts`: Enables creating PrometheusRules for common Loki alerts.
          * `httpEncryption`: Enables TLS encryption for all HTTP LokiStack services.
          * `grpcEncryption`: Enables TLS encryption for all GRPC LokiStack services.
          * `builtInCertManagement`: Enables the built-in facility for generating and rotating TLS client and serving certificates for all LokiStack services and internal clients
          * `lokiStackGateway`: Enables reconciling the reverse-proxy lokistack-gateway component for multi-tenant authentication/authorization traffic control to Loki.
          * `runtimeSeccompProfile`: Enables the restricted seccomp profile on all Lokistack components.
          * `defaultNodeAffinity`: Enable the operator will set a default node affinity on all pods. This will limit scheduling of the pods to Nodes with Linux.
          * `lokiStackWebhook`: Enables the LokiStack CR validation and conversion webhooks.
          * `alertingRuleWebhook`: Enables the AlertingRule CR validation webhook.
          * `recordingRuleWebhook`: Enables the RecordingRule CR validation webhook.
          * `rulerConfigWebhook`: Enables the RulerConfig CR validation webhook.

          In addition it enables the following OpenShift-only related feature gates:
          * `servingCertsService`: Enables OpenShift ServiceCA annotations on the lokistack-gateway service only.
          * `ruleExtendedValidation`: Enables extended validation of AlertingRule and RecordingRule to enforce tenancy in an OpenShift context.
          * `clusterTLSPolicy`: Enables usage of TLS policies set in the API Server.
          * `clusterProxy`: Enables usage of the proxy variables set in the proxy resource.

          ### Before you start

          1. Ensure that the appropriate object storage solution, that will be used by Loki, is avaliable and configured.
        displayName: Community Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Documentation
          url: https://loki-operator.dev/
        maintainers:
        - email: loki-operator-team@googlegroups.com
          name: Grafana Loki SIG Operator
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Grafana Loki SIG Operator
        relatedImages:
        - quay.io/openshift/origin-kube-rbac-proxy:latest
        - docker.io/grafana/loki-operator:0.9.0
        - docker.io/grafana/loki:3.5.5
        - quay.io/community-operator-pipeline-prod/loki-operator@sha256:763afcdec279cb851cbc8cfbc4d662c31775d85e9fef47c4e149a8905063b450
        - quay.io/observatorium/api:latest
        - quay.io/observatorium/opa-openshift:latest
        version: 0.9.0
      entries:
      - name: loki-operator.v0.9.0
        version: 0.9.0
      - name: loki-operator.v0.8.0
        version: 0.8.0
      - name: loki-operator.v0.7.1
        version: 0.7.1
      - name: loki-operator.v0.7.0
        version: 0.7.0
      - name: loki-operator.v0.6.2
        version: 0.6.2
      - name: loki-operator.v0.6.1
        version: 0.6.1
      - name: loki-operator.v0.6.0
        version: 0.6.0
      - name: loki-operator.v0.5.0
        version: 0.5.0
      - name: loki-operator.v0.4.0
        version: 0.4.0
      - name: loki-operator.v0.3.0
        version: 0.3.0
      - name: loki-operator.v0.2.0
        version: 0.2.0
      - name: loki-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: loki-operator
    provider:
      name: Grafana Loki SIG Operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: ""
    name: support-log-gather-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: support-log-gather-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Monitoring, Application Runtime
          containerImage: registry.redhat.io/openshift4/ose-support-log-gather-rhel9-operator@sha256:f79ab86a84357ab3b14a7f889de7c8b849c28d8816e9f9226373f410b4e04ab8
          createdAt: "2020-07-31T16:12:36Z"
          description: Operator to enable CEE to collect must-gathers from OSDv4 clusters
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.20.0-0 <4.20.0-202512090918'
          operatorframework.io/suggested-namespace: must-gather-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/must-gather-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a must-gather diagnostic collection job
            displayName: Must Gather
            kind: MustGather
            name: mustgathers.operator.openshift.io
            version: v1alpha1
        description: |
          An operator that collects logs in Red Hat OpenShift and sends them to Red Hat Support for troubleshooting.

          ## Features

          * Automated must-gather collection
          * Secure collection and storage
        displayName: support log gather
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - monitoring
        - diagnostics
        - must-gather
        - support
        links:
        - name: Documentation
          url: https://github.com/openshift/must-gather-operator
        - name: Source Repository
          url: https://github.com/openshift/must-gather-operator
        maintainers:
        - email: aos-staff@redhat.com
          name: Red Hat
        maturity: tech-preview
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat, Inc
        relatedImages:
        - registry.redhat.io/openshift4/ose-support-log-gather-rhel9-operator@sha256:f79ab86a84357ab3b14a7f889de7c8b849c28d8816e9f9226373f410b4e04ab8
        - registry.redhat.io/openshift4/ose-support-log-gather-operator-bundle@sha256:ac657aaa7cece6a5ab76778385ce11497f8a985dce68b3c4aec1bad37ab05618
        - registry.redhat.io/openshift4/ose-must-gather-rhel9@sha256:a1376ed9e13b8ff171b967369a9ecf2dd0cf1188f34d456bc475023a86c87292
        version: 4.20.0-202512090918
      entries:
      - name: support-log-gather-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: support-log-gather-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: support-log-gather-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: support-log-gather-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: support-log-gather-operator.v4.20.0-202511041656
        version: 4.20.0-202511041656
      - name: support-log-gather-operator.v4.20.0-202510271425
        version: 4.20.0-202510271425
      - name: support-log-gather-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: tech-preview
    defaultChannel: tech-preview
    packageName: support-log-gather-operator
    provider:
      name: Red Hat, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-listener-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: listener-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          description: Stackable Listener Operator
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/listener-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Listener Class
            displayName: Listener Class
            kind: ListenerClass
            name: listenerclasses.listeners.stackable.tech
            version: v1alpha1
          - description: Represents a Listener
            displayName: Listener
            kind: Listener
            name: listeners.listeners.stackable.tech
            version: v1alpha1
          - description: Represents PodListeners of a Pod
            displayName: PodListeners
            kind: PodListeners
            name: podlisteners.listeners.stackable.tech
            version: v1alpha1
        description: |-
          This is an operator for Kubernetes that provisions network listeners according to the cluster policy, and injects connection parameters into Pods.
          The Stackable Listener Operator is part of the Stackable Data Platform, a curated selection of the best open source data apps like Kafka, Druid, Trino or
          Spark, all working together seamlessly. Based on Kubernetes, it runs everywhere – on prem or in the cloud.

          See it in action in one of our [demos](https://stackable.tech/en/demos/) or follow this
          [usage overview](https://docs.stackable.tech/home/stable/listener-operator/usage.html).

          NOTE: Make sure you install this operator in a namespace called "stackable-operators". Failing to do so will result in a broken installation.
        displayName: Stackable Listener Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - listener
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/listener-operator@sha256:59091117b89b6bbb2c8c19668f539464b965f1d2bfb7e3811677ebe943f90eca
        - quay.io/stackable/sig-storage/csi-node-driver-registrar@sha256:ab4a3289015f7de39c4dc987fa6183bcb157294a841c88fa842332ce66b068d8
        - quay.io/stackable/sig-storage/csi-provisioner@sha256:142e0b069dcc100671c91d66d8c973d56ea330b4e11ab79e5eb4fea5c79c6ecb
        - registry.connect.redhat.com/stackable/listener-operator@sha256:f775b29c3ea2c4d0d8f1a140e3827400c1eeeb9874cd0e0dbf50987fb41cc5c1
        version: 25.11.0
      entries:
      - name: listener-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-listener-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Jooho Lee
      provider-url: https://github.com/jooho/nfs-provisioner-operator
    name: nfs-provisioner-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nfs-provisioner-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cache.jhouse.com/v1alpha1",
                "kind": "NFSProvisioner",
                "metadata": {
                  "name": "nfsprovisioner-sample"
                },
                "spec": {
                  "nfsImageConfiguration": {
                    "image": "k8s.gcr.io/sig-storage/nfs-provisioner@sha256:e943bb77c7df05ebdc8c7888b2db289b13bf9f012d6a3a5a74f14d4d5743d439",
                    "imagePullPolicy": "IfNotPresent"
                  },
                  "scForNFS": "nfs",
                  "scForNFSPvc": "local-sc",
                  "storageSize": "1G"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "false"
          containerImage: quay.io/jooholee/nfs-provisioner-operator@sha256:d9c013967421ec72644a588a155975bf856a856f1ef38ba71dfea306fdb47acd
          createdAt: "2025-08-08T20:23:50Z"
          description: Create and manage NFS Server and Provisioner
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/jooho/nfs-provisioner-operator
          support: NFS
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NFSProvisioner is the Schema for the nfsprovisioners API
            displayName: NFS Provisioner App
            kind: NFSProvisioner
            name: nfsprovisioners.cache.jhouse.com
            version: v1alpha1
        description: "This operator deploy NFS server with local storage and also
          provide provisioner for storageClass.\n### Core Capabilities\n* **NFS Server:**
          Deployed\n* **NFS Provisioner:** Help customers to create PV using StorageClass\n*
          **StorageClass:** Dynamically create PV for requested PVC\n### NFS Provisioner
          Operator Features\n* NFS Server can use localStorage PVC or HostPath on
          the node\n### Must-Gather \n> isv-cli must-gather --image=quay.io/jooholee/nfs-provisioner-operator-must-gather:0.0.1\n"
        displayName: NFS Provisioner Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nfs
        - storage
        links:
        - name: Nfs Provisioner Operator
          url: https://github.com/jooho/nfs-provisioner-operator
        maintainers:
        - email: ljhiyh@gmail.com
          name: Jooho
        maturity: alpha
        provider:
          name: Jooho Lee
          url: https://github.com/jooho/nfs-provisioner-operator
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:e10d1d982dd653db74ca87a1d1ad017bc5ef1aeb651bdea089debf16485b080b
        - quay.io/community-operator-pipeline-prod/nfs-provisioner-operator@sha256:d7ef0fa3b5a1a6094b6fd60c6197a52cb14766865b3549806de100bb3522821a
        - quay.io/jooholee/nfs-provisioner-operator@sha256:d9c013967421ec72644a588a155975bf856a856f1ef38ba71dfea306fdb47acd
        version: 0.0.8
      entries:
      - name: nfs-provisioner-operator.v0.0.8
        version: 0.0.8
      - name: nfs-provisioner-operator.v0.0.7
        version: 0.0.7
      - name: nfs-provisioner-operator.v0.0.6
        version: 0.0.6
      - name: nfs-provisioner-operator.v0.0.5
        version: 0.0.5
      - name: nfs-provisioner-operator.v0.0.4
        version: 0.0.4
      name: alpha
    defaultChannel: alpha
    packageName: nfs-provisioner-operator
    provider:
      name: Jooho Lee
      url: https://github.com/jooho/nfs-provisioner-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat CCIT
      provider-url: ""
    name: reportportal-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: reportportal-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rp5.reportportal.io/v1",
                "kind": "ReportPortal",
                "metadata": {
                  "name": "reportportal-sample"
                },
                "spec": {
                  "accesskey": "AKIAIOSFODNN7EXAMPLE",
                  "analyzer_image": "quay.io/waynesun09/service-auto-analyzer:5.3.5",
                  "api_image": "quay.io/waynesun09/service-api:5.3.5-rootless",
                  "api_replicas": 1,
                  "app_domain": "apps.test-example.com",
                  "bucket_prefix": null,
                  "default_bucket_name": null,
                  "enable_pg_restic_backup": "yes",
                  "es_backup_schedule": "@daily",
                  "es_s3_backup_dir": "s3_backup",
                  "es_snapshot_bucket": "es-snapshot-123123",
                  "gateway_replicas": 1,
                  "index_image": "quay.io/waynesun09/service-index:5.0.10",
                  "index_replicas": 1,
                  "integration_salt_path": null,
                  "migration_image": "quay.io/waynesun09/migrations:5.3.5",
                  "pg_restic_password": "rp_user",
                  "pg_restic_s3_bucket_init": "yes",
                  "pg_s3_bucket_name": "pgbackup-123123",
                  "s3_enabled": false,
                  "s3_endpoint": null,
                  "secretkey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
                  "uat_image": "quay.io/waynesun09/service-authorization:5.3.5",
                  "ui_image": "quay.io/waynesun09/service-ui:5.3.5",
                  "ui_replicas": 1
                }
              },
              {
                "apiVersion": "rp5.reportportal.io/v1",
                "kind": "ReportPortalRestore",
                "metadata": {
                  "name": "reportportalrestore-sample"
                },
                "spec": {
                  "accesskey": "AKIAIOSFODNN7EXAMPLE",
                  "bucket_prefix": null,
                  "es_restore": "yes",
                  "es_restore_date": "2020-08-07",
                  "es_s3_backup_dir": "s3_backup",
                  "es_snapshot_bucket": "es-snapshot-123123",
                  "pg_recovery": "yes",
                  "pg_recovery_target_time": "2020-08-07 00:00:00",
                  "pg_restic_password": "rp_user",
                  "pg_s3_bucket_name": "pgbackup-123123",
                  "s3_endpoint": null,
                  "secretkey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
                }
              },
              {
                "apiVersion": "rp5.reportportal.io/v1",
                "kind": "ServiceApiServiceMonitor",
                "metadata": {
                  "name": "serviceapiservicemonitor-sample"
                },
                "spec": {
                  "bearer_token_secret_key": "token",
                  "bearer_token_secret_name": "rp-user-auth"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/waynesun09/rp5-operator:v0.0.8
          createdAt: "2021-04-22 14:39:00"
          operators.operatorframework.io/builder: operator-sdk-v1.7.1+git
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/waynesun09/reportportal-operator
          support: waynesun09
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ReportPortal Restore from s3 backup
            kind: ReportPortalRestore
            name: reportportalrestores.rp5.reportportal.io
            version: v1
          - description: ReportPortal v5 Deployment with ReportPortal Operator
            kind: ReportPortal
            name: reportportals.rp5.reportportal.io
            version: v1
          - description: ReportPortal service-api ServiceMonitor for metrics
            kind: ServiceApiServiceMonitor
            name: serviceapiservicemonitors.rp5.reportportal.io
            version: v1
        description: |-
          ReportPortal is a test automation analytics platform. ReportPortal Operator support instantiating the ReportPortal services and required dependencies.

          What services are included:

              - Report Portal v5.3
              - PostgreSQL
              - Elasticsearch
              - RabbitMQ
              - Minio

          The Operator also support data backup & restore and metrics monitoring.

          ## Install

          Install the Operator to a namespace, then create ReportPortal v5 instance under Provided APIs on the UI, all Report Portal v5 services and dependencies will be installed.

          ## Data backup and restore

          The Report Portal v5 data backup and restore in the operator include two parts, PostgreSQL database data and Elasticsearch index data.

          The Operator support automatically data backup and restore for both.

          ### PostgreSQL database WAL archiving and recovery

          The Operator supports PostgreSQL WAL archiving and recovery point-in-time via Minio S3 using restic.

          #### WAL archiving

          When deploy Report Portal v5 instance, make sure `enable_pg_restic_backup` option is set as `yes`, then the WAL archiving will be enabled when initiate the database, the WAL archive data will be automatically backup to S3 storage via Minio using restic command.

          Parameter `pg_restic_s3_bucket_init` is for init the bucket if not exist, `pg_s3_bucket_name` is the bucket name and `pg_restic_password` is the restic password for encryption.

          #### WAL recovery

          WAL archive recovery will download all WAL archive files to the Postgres container and restore point-in-time.

          To restore PostgreSQL database point-in-time, on Operator UI select `ReportPortalRestore` under Provided APIs to create ReportPortalRestore operand.

          After the ReportPortalRestore operand created, the PG WAL restore will get started, as restore time will base on the database size, the process will last in minutes, hours or days.

          **Note:** Current Postgres container liveless probe timeout is set as one hour in the postgresql statefulset, it might cause restore fail if restore time is longer than one hour, so it might need be adjusted to be longer.

          ### Elasticsearch snapshot and restore

          The operator supports elasticsearch snapshot and restore with data saved in S3 bucket via Minio, the elasticsearch container have installed the s3 repository plugin.

          #### Snapshot

          When deploy Report Portal v5 instance, make sure following elasticsearch parameters are set:

              es_s3_backup_dir: s3_backup
              es_snapshot_bucket: es-snapshot-123123
              es_backup_schedule: '@daily'

          #### Restore

          Elasticsearch restore support restore to certain date as default snapshot schedule is daily.

          To restore elasticsearch from snapshot, on Operator UI select `ReportPortalRestore` under Provided APIs to create ReportPortalRestore operand.

          The backup dir and bucket name should be same as when create the RP instance, `es_restore` need set to `yes` to enable the restore and `es_restore_date` is the restore target date.

          The restore time will also be depend on the snapshot size.

          ## Metrics

          The operator by default have enabled metrics, the default ansible operator port 8080 is used for the operator container.

          All Report Portal v5 depended services, rabbitmq, minio, postgresql and elasticsearch have metrics enabled in this operator.

          The Report Portal gatway service have metrics enabled.

          By default several ServiceMonitors have been defined when create ReportPortal v5 operand:

              $ oc get servicemonitor
              NAME                    AGE
              elasticsearch-metrics   1d21h
              gateway-metrics         1d21h
              minio-metrics           1d21h
              postgres-metrics        1d21h
              rabbitmq-metrics        1d21h

          To export Report Portal v5 service-api metrics with ServiceMonitor, create a `secret` with RP user api token. The api access token could be found with login to Report Portal -> Click user icon -> Profile.

          Then select `ServiceApiServiceMonitor` under provided APIs to Create Instance on operator UI.

          Input the secret name and key name that have been created, and click create, a api-metrics servicemonitor will be created.

          To check the metrics, if [user workload monitoring](https://docs.openshift.com/container-platform/4.5/monitoring/monitoring-your-own-services.html) is enabled on the cluster, click to Monitoring on OpenShift UI and navigate to Metrics, where you could query the metrics.

          You could also deploy Promethues Operator in the current project and query via it.

          ## Doc

          More detail with installation, data backup & restore and metrics could be found at https://github.com/waynesun09/reportportal-operator#reportportal-operator
        displayName: reportportal-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - reportportal
        - failure analysis
        - test automation
        links:
        - name: Documentation
          url: https://github.com/waynesun09/reportportal-operator/blob/master/README.md
        - name: ReportPortal.io
          url: https://reportportal.io
        maintainers:
        - email: gsun@redhat.com
          name: Wayne Sun
        maturity: alpha
        provider:
          name: Red Hat CCIT
        relatedImages:
        - quay.io/openshift-community-operators/reportportal-operator@sha256:67a7ffaf6a303b92541170f266d7b2871f5c2fe73f6b6c9a2b7b33dbc4555fa5
        - quay.io/waynesun09/rp5-operator:v0.0.8
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.7.0
        version: 0.0.8
      entries:
      - name: reportportal-operator.v0.0.8
        version: 0.0.8
      name: alpha
    defaultChannel: alpha
    packageName: reportportal-operator
    provider:
      name: Red Hat CCIT
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/stolostron/multicluster-global-hub
    name: multicluster-global-hub-operator-rh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-global-hub-operator-rh.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "global-hub.open-cluster-management.io/v1alpha1",
                "kind": "ManagedClusterMigration",
                "metadata": {
                  "name": "migration-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha1",
                "kind": "MulticlusterGlobalHubAgent",
                "metadata": {
                  "name": "multiclusterglobalhubagent"
                },
                "spec": {
                  "transportConfigSecretName": "transport-config"
                }
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha4",
                "kind": "MulticlusterGlobalHub",
                "metadata": {
                  "name": "multiclusterglobalhub"
                },
                "spec": {
                  "dataLayer": {
                    "postgres": {
                      "retention": "18m"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/multicluster-globalhub/multicluster-globalhub-rhel9-operator@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
          createdAt: "2025-08-27T07:10:21Z"
          description: Manages the installation and upgrade of the Multicluster Global
            Hub.
          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: "true"
          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.skipRange: '>=1.5.0 <1.6.0'
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1alpha4",
            "kind":"MulticlusterGlobalHub","metadata":{"name":"multiclusterglobalhub","namespace":"multicluster-global-hub"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-global-hub
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/multicluster-global-hub
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterMigration is a global hub resource that allows
              you to migrate managed clusters from one hub to another
            displayName: Managed Cluster Migration
            kind: ManagedClusterMigration
            name: managedclustermigrations.global-hub.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHubAgent is the Schema for the multiclusterglobalhubagents
              API
            displayName: Multicluster Global Hub Agent
            kind: MulticlusterGlobalHubAgent
            name: multiclusterglobalhubagents.operator.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHub defines the configuration for an instance
              of the multiCluster global hub
            displayName: Multicluster Global Hub
            kind: MulticlusterGlobalHub
            name: multiclusterglobalhubs.operator.open-cluster-management.io
            version: v1alpha4
        description: |
          The Multicluster Global Hub Operator contains the components of multicluster global hub. The Operator deploys all of the required components for global multicluster management. The components include `multicluster-global-hub-manager` and `multicluster-global-hub-grafana` in the global hub cluster and `multicluster-global-hub-agent` in the managed hub clusters.
          The Operator also deploys the strimzi kafka and crunchy postgres if you do not bring your own kafka and postgres.

          ## Prerequisites
          - Red Hat Advanced Cluster Management for Kubernetes needs to be installed. You can find the support matrix in the official document.

          ## How to Install
          Install the Multicluster Global Hub Operator by following the instructions that are displayed after you select the Install button.
          A pod will be created in `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                             READY   STATUS    RESTARTS   AGE
          multicluster-global-hub-operator-5ccbbc878d-98fdp                1/1     Running   0          19s
          ```
          The operator is now providing new Custom Resources Definitions: `multiclusterglobalhubs.operator.open-cluster-management.io`

          ## Using the Multicluster Global Hub Operator
          After installed the operator, create an instance of the MulticlusterGlobalHub resource to instantiate the Multicluster Global Hub.
          Once an instance of the MulticlusterGlobalHub is created, the following pods are created in the `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                    READY   STATUS    RESTARTS   AGE
          amq-streams-cluster-operator-v2.6.0-2-f49bf7559-569mw   1/1     Running   0          22m
          kafka-entity-operator-68dcd446f4-pg257                  3/3     Running   0          19m
          kafka-kafka-0                                           1/1     Running   0          20m
          kafka-kafka-1                                           1/1     Running   0          20m
          kafka-kafka-2                                           1/1     Running   0          20m
          multicluster-global-hub-grafana-5b7cfb6876-5rcnn        2/2     Running   0          19m
          multicluster-global-hub-grafana-5b7cfb6876-wq99v        2/2     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-hzfvw        1/1     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-wbkzl        1/1     Running   0          19m
          multicluster-global-hub-operator-768bd5bd4f-59xjd       1/1     Running   0          22m
          multicluster-global-hub-postgresql-0                    2/2     Running   0          22m
          ```
          ## Documentation
          For documentation about installing and using the Multicluster GlobalHub Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [Multicluser GlobalHub Documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html-single/multicluster_global_hub/index#doc-wrapper) in the Red Hat Advanced Cluster Management
          documentation.

          ## Support & Troubleshooting
          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: Multicluster Global Hub Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multicluster-global-hub
        - multiple-hubs
        links:
        - name: Multicluster Global Hub Operator
          url: https://github.com/stolostron/multicluster-global-hub
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: release-1.6
        provider:
          name: Red Hat, Inc
          url: https://github.com/stolostron/multicluster-global-hub
        relatedImages:
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-rhel9-operator@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
        - registry.redhat.io/rhel9/postgresql-16@sha256:2161182c88022f38d6d9b8b467c0d59156edcededc908d383b80caa4eedf57f9
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-operator-bundle@sha256:3ffc6685a430008618dbee9b15ec04980eacd783b0c77d130e70bf9766bfdae8
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-agent-rhel9@sha256:903aea3e61d68f13d60c33f98bc9fa220eb8426ccedb43948015b6dfd50e8cf0
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-grafana-rhel9@sha256:870866e86ce870ad8d97ee060483e3c9042076f4ec987d4769e09d8daddd963d
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-manager-rhel9@sha256:98273949e754fc81aa9240b507ab13e12fe2e9ecb6dafe601756567af18a077c
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-postgres-exporter-rhel9@sha256:2a68afbc8b4208e8aa16e7f0a8266246a16a2e97d4d6f930318888fc1e0c7306
        version: 1.6.0
      entries:
      - name: multicluster-global-hub-operator-rh.v1.6.0
        version: 1.6.0
      name: release-1.6
    defaultChannel: release-1.6
    packageName: multicluster-global-hub-operator-rh
    provider:
      name: Red Hat, Inc
      url: https://github.com/stolostron/multicluster-global-hub
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: topology-aware-lifecycle-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: topology-aware-lifecycle-manager.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ran.openshift.io/v1alpha1",
                "kind": "ClusterGroupUpgrade",
                "metadata": {
                  "name": "ClusterGroupUpgrade-sample"
                },
                "spec": {
                  "preCaching": true
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
          description: The topology aware lifecycle manager is an operator that facilitates
            platform upgrades of group of clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-operators",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/topology-aware-lifecycle-manager
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterGroupUpgrade is the Schema for the ClusterGroupUpgrades
              API
            displayName: Cluster Group Upgrade
            kind: ClusterGroupUpgrade
            name: clustergroupupgrades.ran.openshift.io
            version: v1alpha1
          - description: ImageBasedGroupUpgrade is the schema for upgrading a group
              of clusters using IBU
            displayName: Image-Based Group Upgrade
            kind: ImageBasedGroupUpgrade
            name: imagebasedgroupupgrades.lcm.openshift.io
            version: v1alpha1
          - description: PreCachingConfig is the Schema for the precachingconfigs
              API
            displayName: Pre-caching Config
            kind: PreCachingConfig
            name: precachingconfigs.ran.openshift.io
            version: v1alpha1
        description: |-
          Topology Aware Lifecycle Manager is an operator that facilitates
          platform and operator upgrades of group of clusters
        displayName: Topology Aware Lifecycle Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acm lifecyclemanagement upgrades cluster
        links:
        - name: Cluster Group Upgrades Operator
          url: https://topology-aware-lifecycle-manager.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-operator-bundle@sha256:46f2823c799f69a666161c73d63c1ad131757d1b83e28b09d0f205fd9626193b
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-aztp-rhel9@sha256:19b4c01406bffca93469847e207dcc372b0238a20184923a33932d510c0f1d99
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-precache-rhel9@sha256:982467d05ff6af795ede34430c571ef5a6a7f4005990eb7538be340fd412b6f2
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-recovery-rhel9@sha256:761ba005141e46a6e32ab1a8b58d348507a28bcad5c571cafd5389463a595475
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
        version: 4.20.0
      entries:
      - name: topology-aware-lifecycle-manager.v4.20.0
        version: 4.20.0
      name: "4.20"
    - currentCSV: topology-aware-lifecycle-manager.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ran.openshift.io/v1alpha1",
                "kind": "ClusterGroupUpgrade",
                "metadata": {
                  "name": "ClusterGroupUpgrade-sample"
                },
                "spec": {
                  "preCaching": true
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
          description: The topology aware lifecycle manager is an operator that facilitates
            platform upgrades of group of clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-operators",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/topology-aware-lifecycle-manager
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterGroupUpgrade is the Schema for the ClusterGroupUpgrades
              API
            displayName: Cluster Group Upgrade
            kind: ClusterGroupUpgrade
            name: clustergroupupgrades.ran.openshift.io
            version: v1alpha1
          - description: ImageBasedGroupUpgrade is the schema for upgrading a group
              of clusters using IBU
            displayName: Image-Based Group Upgrade
            kind: ImageBasedGroupUpgrade
            name: imagebasedgroupupgrades.lcm.openshift.io
            version: v1alpha1
          - description: PreCachingConfig is the Schema for the precachingconfigs
              API
            displayName: Pre-caching Config
            kind: PreCachingConfig
            name: precachingconfigs.ran.openshift.io
            version: v1alpha1
        description: |-
          Topology Aware Lifecycle Manager is an operator that facilitates
          platform and operator upgrades of group of clusters
        displayName: Topology Aware Lifecycle Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acm lifecyclemanagement upgrades cluster
        links:
        - name: Cluster Group Upgrades Operator
          url: https://topology-aware-lifecycle-manager.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-operator-bundle@sha256:46f2823c799f69a666161c73d63c1ad131757d1b83e28b09d0f205fd9626193b
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-aztp-rhel9@sha256:19b4c01406bffca93469847e207dcc372b0238a20184923a33932d510c0f1d99
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-precache-rhel9@sha256:982467d05ff6af795ede34430c571ef5a6a7f4005990eb7538be340fd412b6f2
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-recovery-rhel9@sha256:761ba005141e46a6e32ab1a8b58d348507a28bcad5c571cafd5389463a595475
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
        version: 4.20.0
      entries:
      - name: topology-aware-lifecycle-manager.v4.20.0
        version: 4.20.0
      name: stable
    defaultChannel: stable
    packageName: topology-aware-lifecycle-manager
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: rhods-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.24.0
        version: 2.24.0
      - name: rhods-operator.2.23.0
        version: 2.23.0
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.21.0
        version: 2.21.0
      - name: rhods-operator.2.20.0
        version: 2.20.0
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.18.0
        version: 2.18.0
      - name: rhods-operator.2.17.0
        version: 2.17.0
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.15.0
        version: 2.15.0
      - name: rhods-operator.2.14.0
        version: 2.14.0
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: alpha
    - currentCSV: rhods-operator.2.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Basic Install
          categories: AI/Machine Learning, Big Data
          containerImage: registry.redhat.io/rhods/odh-rhel8-operator@sha256:a4d7f020509b9720063e87e1c2f19af04e4c9b4986b199be4dc617831b971434
          createdAt: "2023-11-21T08:37:00Z"
          description: Operator for deployment and management of Red Hat OpenShift
            Data Science
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:08c90a8f133b4cdb1477a742bc44be4d8fc4e88153b8bc2a2a148cbdf19f4e7d
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:6a56010de933f172b195a1a575855d37b70a4968be8edb35157f6ca193969ad2
          olm.skipRange: '>=1.33.0 <2.4.0'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "rhods",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "rhods",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Removed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Removed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus", "OpenShift Data Science"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:eb96f4b753606528750b3c28f7f9256582f81fa030450b05afdef684634903be
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift Data Science
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift Data Science (RHODS) is a complete platform for the entire lifecycle of your AI/ML projects. It is the flagship product of OpenShift AI.

          When using RHODS, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. RHODS can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.


          ### Components
          * RHODS dashboard
          * Curated Notebook Images (incl CUDA, PyTorch, Tensorflow)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines. (including Elyra notebook interface, and based on standard OpenShift Pipelines)
          * Model Serving using ModelMesh (and Kserve) with a provided OpenVino Model Serving Runtime
          * Ability to use other runtimes for serving
          * Model Monitoring
        displayName: Red Hat OpenShift Data Science
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift Data Science
        - RHODS
        - rhods
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift Data Science
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-data-science
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhods/odh-notebook-controller-rhel8@sha256:753994fce63802f1e1121990a5c1dd722216446abee54cc1a7c50ab195134414
        - registry.redhat.io/rhods/odh-modelmesh-serving-controller-rhel8@sha256:d94395fb251e45aaa73d09bc6106a2947c16b90d87fc3b64bfe4f2f600be5841
        - registry.redhat.io/rhods/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:c5758102609821a6fdabec0277e03c4c728f82176093d1ade0570aba5f3cd8f9
        - registry.redhat.io/rhods/odh-dashboard-rhel8@sha256:b98171c5543815abf7c095fba92796ceed9ea44bd8b78db143d2815c6bcfdcf6
        - registry.redhat.io/rhods/odh-modelmesh-runtime-adapter-rhel8@sha256:08478a1647d0413783bcbcd966a73b444b580464de46efedb39504420f22053e
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:eb96f4b753606528750b3c28f7f9256582f81fa030450b05afdef684634903be
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhods/odh-kf-notebook-controller-rhel8@sha256:cd0ab8d70559be6074fbaf1caa1d50f8eb75e1bff1a22d6d69380f19190df0b6
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhods/odh-rhel8-operator@sha256:a4d7f020509b9720063e87e1c2f19af04e4c9b4986b199be4dc617831b971434
        - registry.redhat.io/rhods/odh-ml-pipelines-persistenceagent-rhel8@sha256:857a8eb444375505ccb34a11cce69c1794ceabbfb00df06933d7f12cd187319b
        - registry.redhat.io/rhods/odh-operator-bundle@sha256:b637a02d23bd8364cc8914421049eb60169c163ac70bff2f33591df1a1193002
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhods/odh-modelmesh-rhel8@sha256:3827221f84d3aa22440d6b364b990a4ec0666dfb5963f174f7ed518b3650d223
        - registry.redhat.io/rhods/odh-trustyai-service-rhel8@sha256:fe17d6e07ebaa088f274dd8b5e83892dacc11cb336065b06582a3c055095dba5
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhods/odh-model-controller-rhel8@sha256:fde989817cd1a6ec8eb408a7f6c73e28ba043ab2d88035586b1b7e55fb3405cb
        - registry.redhat.io/rhods/odh-trustyai-service-operator-rhel8@sha256:68471555d0b2bb8150ebfae8d4f3d1dbdff9c5b961ff2305ef23ab7514cbbea1
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhods/odh-ml-pipelines-artifact-manager-rhel8@sha256:76c67d7015a2db6965219db6533e0cddb5b7cf699c88df3ef81155f9c192a3cc
        - registry.redhat.io/rhods/odh-ml-pipelines-cache-rhel8@sha256:33aae32e3d348d382906f6e926281852f54006a94d7bdac188bb33debadec059
        - registry.redhat.io/rhods/odh-ml-pipelines-api-server-rhel8@sha256:be57f237df156474a709667fa4fb4aa142118e3459963fed56648c1cb2e38cd6
        - registry.redhat.io/rhods/odh-data-science-pipelines-operator-controller-rhel8@sha256:250db47cb873207cfb75c7e8a2f0de08b75b056a72db73362d2d79c08cb7b185
        - registry.redhat.io/rhods/odh-kuberay-operator-controller-rhel8@sha256:bfc805aa1689a4bd6f7e617acf9eb1c2c307624dd49956e9e7442afac328151a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhods/odh-codeflare-operator-rhel8@sha256:2841fd3051a50a1b0d9e3caafa20a8084b5c472d49393b372828960dbf156674
        - registry.redhat.io/ubi8/ubi-micro@sha256:6a56010de933f172b195a1a575855d37b70a4968be8edb35157f6ca193969ad2
        - registry.redhat.io/rhel8/mariadb-103@sha256:08c90a8f133b4cdb1477a742bc44be4d8fc4e88153b8bc2a2a148cbdf19f4e7d
        - registry.redhat.io/rhods/odh-mm-rest-proxy-rhel8@sha256:8d989f54009484d7f43fe79d7c37757418fc3c15cd4d7e80a2076677a9645bdf
        version: 2.4.0
      entries:
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: beta
    - currentCSV: rhods-operator.2.21.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:7d0b8d69b6defb5f232da066573b0067ec810a8ccfb2f3cb91d472d2979ab7a7
          createdAt: "2025-09-24T14:42:33Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",  "workbenches.components.platform.opendatahub.io",
            "monitorings.services.platform.opendatahub.io","modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.21
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e9612ec99daa171c403b5ddf37788526e5375b83987e5de9b1ebe519198607b4
        - registry.redhat.io/rhel9/mariadb-105@sha256:c390b12f5c2c3ea7cd897b59eba7127ce22f474130cd8c1bbbbaadae870baca4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:85202cb75250a1ba2691d65b52b306fd77566660dd29cdf56bf8962e8bb4939c
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:1b7befcd29c9c8f783bdd3c5654b0412ea45cd88cd18eb5f8f5a411f1323c6bd
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:4c57dcf4df09fe0d03578cc8b9a3ca2ea485b6af0ca0203bfb85e640058b7daf
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:cb47e165935f0d9d3c88088689c37e68a69519357a20d3c52ab6f71240dab507
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:a936d87646843edea2a84eb429bb44eb730bf3e04e8900fecef66721426dba89
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:dc0db686b7688f98b5f8595661022cdffa5d26a078289cc7aed528f0ee1d08a4
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:80fd53a580ce7bc4d02023d38a04912e84c2cd50679fc5ea034afba935623157
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:e68492a6a75cb83be0a968b832c1478b97f14e661376328085fd5416a08cbc31
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:a88696cff8cd2cc2e295c9ec082b7f25f61dfc9ac12f1c208529ff7036d5af29
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:04859c878ffcc8c42550a98be625ac52212f9b79a6fd5b3baeafb3592926cbe9
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:c3e283c0536266195dd461042ca0036ed98cc33650d806be132db4fba45239e4
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:2b4136569e10ad7d47c82bedf55c1705a833dc67c8f833656996bfe1fddbef3e
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:687c8eeed55f021ecaab1307f0e88b5b16d91f72d63b3d7168d7bbee90e8947b
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6a388ee3cbe3813ac955d319f0ab65a81da321d982c9881c6c81fe135311fe1d
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:152b425725228953f43b57a4a034a6725993a5ca556af328ae5e06aa3f1acbfc
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:4c192208c618b49f31cf31c9de1a33c622ce3f120204c2eec8ff7c439ea6785c
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:5c0d56f434298f6e8bf6cf7061cd1ae6df9915225cbf04b010b6b59a64775cc9
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:2a16c353fd13dc1f3f5c4266f1b9786a8e7a100dc05f2d554bdaef082271063f
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:1b5452b87b36de2b62febc777efdc6233a168ffcc09e2067e482cc444463a57d
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:7da004e158006dcbdcf0c3b78c40411b82c9d56ebf54b1c30c245b6550b8ee7d
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:003fdc6cd1821d620e1ce4050ee608e2d2a32f2b08c8fa9c147e2e14418a8d91
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:fc98ed817a4e9ab84e2a66063987304f0cdbe6e5620a58a7f25cccd61b34ebf9
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:cfaf4eb86ddb9c717340ab17fa4b83323e5b40977ac70265376c87329a3f6f20
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/ubi9/toolbox@sha256:7656f815a0d13ed37f56d11635559a87a3d00840253755c71b644b858f67d556
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2638e3a90bbb242dd2483fefe9fc8b472f334c510d0139b9b7c875c30dab7984
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:52e1ba8ebf4d55c64c94c9076185c5612b537e6e5ed4944fcd6ea87ccb9cd182
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:fe6593bc73e77d315d82b7921bb1975c19fda1e7630ef5b30b69f5901ce30178
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:239f226328e5ac77d6dee498217d55103a6d562f4829e38abf65ba55fda0aca2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:5f581957e4f8deebf6104a394272e6fbb1c54d813bf069e95875d865eac209ad
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:9c2d6ce05775ac34ee5695b3367d12bf2a9c14e318a9544d00a56653ea5f2007
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:7d0b8d69b6defb5f232da066573b0067ec810a8ccfb2f3cb91d472d2979ab7a7
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        version: 2.21.1
      entries:
      - name: rhods-operator.2.21.1
        version: 2.21.1
      - name: rhods-operator.2.21.0
        version: 2.21.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: embedded
    - currentCSV: rhods-operator.2.16.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
          createdAt: "2025-09-24T13:27:25Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.16
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        version: 2.16.3
      entries:
      - name: rhods-operator.2.16.3
        version: 2.16.3
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.8.5
        version: 2.8.5
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: eus-2.16
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.16.3
        version: 2.16.3
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.8.5
        version: 2.8.5
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: eus-2.25
    - currentCSV: rhods-operator.2.8.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              },
              {
                "apiVersion": "features.opendatahub.io/v1",
                "kind": "FeatureTracker",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "default-feature",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-feature"
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:3b9e8a71ba795a2ea91f4129253ccb4be3a79c7c1c6a87082f96ccc67eabbbac
          createdAt: "2024-11-07T07:17:25Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.8.0 <2.8.5'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Removed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "SelfSigned"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Removed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.


          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines. (including Elyra notebook interface, and based on standard OpenShift Pipelines)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:13b850a5a3f8776c6c8db887c666d88df72901895b5ef1be9a8bd372cc02fcb8
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:038ce76571217d6c624d614652e8b96ef6484562cf52ec1be88392b8ef8a3bbd
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:9aa5a93831992588766ac8594ae3c4dc7111d08a90fdbc8751c40484339e46d4
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c48474563d98df32e7243e33302428ea8836be5e1a2e30d20b4d796a62cbf6b
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:61a506fbf263cd72951ac8bd151127e0c74fc74f0a05f7aaecaa54fde47ee490
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:3b9e8a71ba795a2ea91f4129253ccb4be3a79c7c1c6a87082f96ccc67eabbbac
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:2f6db789ceb3f90f9c9911c6392e62d0a8e4d61be68a7f7cbd781f47faab6389
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:df34e9d2d121a3def2dbb86f108b3fb6948bc7ba7cb44c70801dfd2e81d3fbb1
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:8ffc5da798e783c65d5be7f344219b2951d8c2233d6494a4ae2bb5c86eccd699
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:34d177abb56b948eaf9ce6fa62e37427ddee9fcecca48e752d09f72c69847a46
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:81ae2b95f2da740cb5264b9ba8b85f0f58bb4ab80d6431f66d52848ed0c21afb
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:4b1b9f05a94713292a7a2f6782fe1d3eea6f36214c36b38f402aa91a554ab18a
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:45498198fadfbc1457bf2a6084ae7ea515d454d86d148783aae3abdaca6e999d
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:d87e4b1cba72eb4f50b3f2d59863799929c22ca37b01a1ff4828a9ce0be31f25
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:60507a3dddbd88560fd85204699147facd2b6371fb25e0bf6701dad02c0b4dd4
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:13dff890ec67fa56864c244a40fc404e9eac05f33573dd16d088b37f9340ec41
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:eeb8bdc94e7fa2b454fedf72eb75756052f8bfb9d92b116a8267a5584e2528c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:1a1074263ae26e4c8b0e3863228c35e50133169f377ece6c47b58a12e0fcf453
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:28ec01e514c15cae145499840597d1be1b750123bb6014de2ecc3ef0d60fa134
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:1dbf09cb1624c9f961f8ac8e371c97aa7c3fbfcad4c4d02ab4fad0eb86d2aa95
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f9c474d454d0b006e06859601ec9a64b5e5c91e9a47bfab6ad6d8cce5aa6b89d
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        version: 2.8.5
      entries:
      - name: rhods-operator.2.8.5
        version: 2.8.5
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: eus-2.8
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.24.0
        version: 2.24.0
      - name: rhods-operator.2.23.0
        version: 2.23.0
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.21.0
        version: 2.21.0
      - name: rhods-operator.2.20.0
        version: 2.20.0
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.18.0
        version: 2.18.0
      - name: rhods-operator.2.17.0
        version: 2.17.0
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.15.0
        version: 2.15.0
      - name: rhods-operator.2.14.0
        version: 2.14.0
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: fast
    - currentCSV: rhods-operator.3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v2",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "datasciencecluster"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "aipipelines": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      }
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v2",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "dscinitialization"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:ce85b1b02706459a31fb64d1cbbd8130f5cd1707e21a85b4fe9e95bbd109c19c
          createdAt: "2025-11-10T09:43:22Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v2",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster"
                }
              },
              "spec": {
                "components": {
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "aipipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed"
                  },
                  "llamastackoperator": {
                    "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Removed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "dashboards.components.platform.opendatahub.io", "datasciencepipelines.components.platform.opendatahub.io",
            "kserves.components.platform.opendatahub.io", "kueues.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io",
            "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v2
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v2
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: GatewayConfig is the Schema for the gatewayconfigs API
            displayName: Gateway Config
            kind: GatewayConfig
            name: gatewayconfigs.services.platform.opendatahub.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (including PyTorch, TensorFlow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPUs, AMD GPUs, and Intel Gaudi AI accelerators)
          * AI Pipelines (including Elyra notebook interface)
          * Model Serving using Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/3.0
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:45ae3dbe4cd8c5ea8a5ba767bb95c540d618b6e8250dcb1dcbac01e3ec805245
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:95177d662c1ca6d86b77f2a9427945e4d65e8236b7adf15f3d35025063afe94f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:b87eb195a423337071aa318c28452d12070041168d41fb41e3ae3207619a3f16
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:4000a91132d67503a4691e76a7079f9140e3c8091fb1a59ad235446f96cb1a34
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:84a7c26966f563e970e5398cd0396df2b4fae3b680f14b38a59bfa34b3c3a2e6
        - registry.redhat.io/rhoai/odh-trustyai-ragas-lls-provider-dsp-rhel9@sha256:c1694891f19be1fe1abd431505549dc02021c389e640e77877bbb7921b42aa5b
        - registry.redhat.io/rhoai/odh-mod-arch-gen-ai-rhel9@sha256:459e5abcc3d5403ef25f53eb4c6cba75c88371c84dbf02d8cb67f478fbe624aa
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:4a035bb354c4a0e4040c277b2f1a1ffdc7e61f6f505c5fa5d032d22f50c4fa29
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:bd7352755c52f16dcfd7403f120f65dce7742dfacc393fc6bbecf359faac47c9
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:dd37de4ca53ce242a0f67a70d19eebf157679098a3417e9ffdf8e24378f6bdcc
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:de67ebe1de42971f1cb99df039044a6c79471802dedf666282e349c579f79c3a
        - registry.redhat.io/rhoai/odh-maas-api-rhel9@sha256:29165b6056073e3f040a8d4eab023dcc522281888f7e6db0aecd447762761115
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:bafee27b0842d196eb305963cc9b3f29d31cdf2c014af88b5965a8d908cc6f9a
        - registry.redhat.io/rhoai/odh-training-cuda128-torch28-py312-rhel9@sha256:851f2b31fa418d2eb172ddfa6010851bd5d4f0844d16b2b42a408f2c0b985b86
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:70e900e40845e82ef9ff4ac888afa6a6e835b019ad69aae7297d111e087520a3
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:78b6e29c66a425b9f097cba92240f96d32f756d379b779ed37ef51e8625364b5
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:c8c0e4bd524abd8295ccec00e7eacf6aefedd1e67d345e09088bc87e10f6827f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:4326604a5f2f5ac398f5bccf5259ab166fb21dbd273eb233ca558a22c1163312
        - registry.redhat.io/ubi9/toolbox@sha256:668ae64b30c95862377fc2414e48714f1aceff9d23a1d8c4141e3e83a4d4fc2a
        - registry.redhat.io/rhoai/odh-training-rocm64-torch28-py312-rhel9@sha256:501794be7653f12539fc420394c5ecfa2986109ef71785534e6e068212d07c25
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:9a6f0917e40d82684148d25c96e2a5b4a8a24dd3202734dfd7450f55d9e8b9c0
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:c90ccd4d3167d2092c451af95a773fea19821e4b8bf8fa754bf0b1b632a7f51e
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:4afc7a50800be57c57170b6ec2345fe0a9fab1eb4ae179025f6fae230bc05894
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:a59bb87677721dbadaa3e88e29d47470d0afa2c1b52c652caa77f74466beb698
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:ce85b1b02706459a31fb64d1cbbd8130f5cd1707e21a85b4fe9e95bbd109c19c
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:0bda59ab4c3db060b7221c630f6241cac086e3853470a07726289b87299f4da9
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:3d63cfa35ecee611a9075ea21060f75b0926f9b018622f52282b9f375b5ef968
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:ad756c01ec99a99cc7d93401c41b8d92ca96fb1ab7c5262919d818f2be4f3768
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:eaa42ee5a963696339c318b511a330b2b6fc9e1eb173d2d47f9cb757f6eb3da9
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:84a1b58dfdd85eac95478c681affb502d2402a14bf2879aad36f1d17dfd08f39
        - registry.redhat.io/rhaiis/vllm-rocm-rhel9@sha256:8624e2a5086cf1303b59154a817f60a3476d6ca48899261a2e477eb9e99ae781
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:13ec5c9b96a9ca8c0a1fcc0568cf6f893478742d28d3b1381f073b9bdafb3320
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:8d17607ba6e4b859ed724acd1cdf54e7dfff6989fd23dfd7b77faf55efcf883b
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:4f250fd17c023c43ca64ade19c84afbc77e72e66548573c2f987d10e6aed3821
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:5f7a974163856d07985b5da257688aad036427d3724194050782e58eab0cff1a
        - registry.redhat.io/rhoai/odh-kube-auth-proxy-rhel9@sha256:657bc0b43fe2da3211d80dc5085f57dccb451c30b1a254b87b4876745c414d36
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:b03cd2977bcb3d3a44795eb17e7fbc7dc842ab277fae441031ff921bdd7f56d4
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:3617ae4fba7499bf17ef591df2e787b353d6ec7962bbcf14c4c8b3edf045f314
        - registry.redhat.io/rhel9/mariadb-105@sha256:a376c86dc5b288516604d46bfb6025972e962b2be5a00e70d5d479ae465e0bcf
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:f5b70a687fef130c35bdeb108d7aab4a0eadf6182d379b6c517e9d1157713108
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:7e7aa488af45e4a038664881c7da3a9016fc9f9c7952efa35dfdc77971fcd5d3
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:6bf37b3786398e1d9b7004d5b08e0b4c58a5dcf453c02a9fb260bdfe9c32161e
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:b6304ccf7e8064bfdbacdfe998bbda099d6cfc36a9cd92b77e4126609ac34f4f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:daf66fb7ec41191aa15f32638fe79f4a76c7d158b705e0f761f5b77e1f91336c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:c00d908ff5d82c0b04ade151be9a5a97843606dd9fff731c849717ff79a3a596
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:eb68797b15eb5d748f2658ca41c7aafc5b9ca38882c56b87a22d5c9a3b5e2948
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:aaf677584e83ed6a93586afbe1c9b698430593e346c8cd00fb8485ba4350241d
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:4fe3183daa06c1605c47168db6f96a6dbd2b72df8ea99ef755372d7271299c3c
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:5f5f75d959ad8507704821add365539dab7401a7496bcc7cf2357c6cf32df3c4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:20b705332935cd372f06b86e36c521873b39c7660b077b90d39b7bd37700c679
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:59f75020cf630e2c7aeb1ca7692745c8e11e4ff46cc29fe7779213f7b56d1e71
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:c852573614458adaf8d0e4f8f3f675c036c3daa1ea8251c7601b2d4c22b3e7de
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:d5d3f661e1ab392b1e977f871a1cd95f60e4d7509f7c79d714a4bee10aa48293
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:fd83ee0ec98d0bfcd7f8567b2f802f08a3a8fe74eba2a74ae560f90c1c72bee5
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:ee6b2596c10ca608cc0897a84336871591bf701a08bf90f345d2232277cc0c3f
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:6a151dde578c2fbd7377864cd5d04268853e49046be62cccc1d298e444c73f0a
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8c99d5e93a469b2aa7f7ad4810f17114bd032392135607945669d92182e37fab
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:1431c04ecb88387a9e15566ba8105d19c7fbceecf65eb5731fe69cccbeb09cf5
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:2efaad91d9b7c997bdc41e6120d46620dd9890eb6bd6baca7124aa00f66fc972
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:1318b9f8de94db57dffb87447b34bf660eae0792915b4aa64375a0ba0f13ad85
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:03db3dd3eb3290b048853a8d943fa1a5099727ff0d1934eeb0a7177bdf0031e4
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:40e552687ecb12803db16edafb0cd93e39edd9269d1471a7ee1d011b43da1fa2
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:ed78d0c5946a2cc75c8bc2db6dbad5d757102acfa9defcd3f4a30829aa47d9d1
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:d79f02050b0cb8847c5f83c0a76ab47bc79a2fdaa2c18ab6ee6b3d94ef9bc7ba
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1552b758539ee09050b1923cf214d6d88543d51d7ca230d6880818ecf287c10b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:647df7a0f1d33fa04e39f1d38f918236e9983409a07fd9de21b085fc847f0854
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:3e08c969736bfa9a44f6c7811a4d1428c03fa80b52e0b6391aefba3c36758751
        - registry.redhat.io/rhoai/odh-model-performance-data-rhel9@sha256:eda8a51f260ea4e061b528ed2ef6f631a8680e5623ba5ef528698e71d34b3a58
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:a9546158ae141cc3c590732d578af95ac599965b3cfd47fa440e461658940125
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:65f00fbf16f2b8ec98765b854f395cee16d69f2f58d0fe81fc1ebeb3817fd326
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:d11ee73c3dab3bedb39a6da9c29b5221a307d9f69297a12df3489f04cf35506a
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:bfab4c5965e44d4428eb5a3d3ce85a81a163e15093d981a9fc474cd8f9fd64c2
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:9479d6829ab86ce510ca9c25e3fc69dff86553467672dd7f5cb356000e128916
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:77cac4adb89bce424db492657eb9023ac9574fd32096c3bc68b960020fade08c
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:c16cfc8521eccd9b494151ffa98dde6b7faa5e349da611d6091038a8590dc447
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:450b2b76c53f17163cdf91b03d35c296b8d7298d9cbb7b792fd2eabeaab794c2
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:e45e6925ad930d9195d906fc922cb956621c98533cc9ad1916c510e8a79c0904
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:3094dd9e7dd9fcc161fdfe983557edc9d773b2c07e727c0bbb0e37ac16a39d93
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:0224a782de0b062a91d9b0188a59f8fb169db2b7e21bed7624826d3fff7b7da4
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:a50f7e2e8891acbbebf64a2acab98ae64e21cea7a5b5ea4b63a148f4fed91b1f
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:726bdac8c5791695a5b0a43654fd482ffb7eda2fb384dcca42a73cce923a411f
        version: 3.0.0
      entries:
      - name: rhods-operator.3.0.0
        version: 3.0.0
      name: fast-3.x
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.22.2
        version: 2.22.2
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable
    - currentCSV: rhods-operator.2.10.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:8643f7ee8afacfe6ae08cbbf81da76ca97032dc3ce3da4fddf16e330e9e33a08
          createdAt: "2024-11-14T21:18:22Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.10.0 <2.10.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "SelfSigned"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:0ff5664c2eaadf3d3073b3d7fb711da47fb78d21f67710d8b8aad5452cb0355d
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:fdc2bc06b0dfa79ebc6451ac3793b5e8d9f165171633831dafe46ebc18c10c35
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:65db5e8cb2fa46d020ed4837d4479d133b52167c373e65f81cb590eec5391af2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:12741379ab24d2286b5fae77f4383fb65713af7b3356fb43d8254ea85d4b0ee3
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:214ca0608fcbc0fd585bf01768d28c7ba17082d1043349ec8445afd663095383
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:52e8deeeeaa21b17370a5d5cd644745da745b6e1cee8c6295d6df75c8d2aec04
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:a9c6e3afdf605465766fa93334cc0f6bb5e46a5fdfd7ec64d648e2ed72b05ccf
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:220cad7a22d40998063c6b4fb2f63e69330e64ca7118490a6680b05fc99b7733
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:8643f7ee8afacfe6ae08cbbf81da76ca97032dc3ce3da4fddf16e330e9e33a08
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:7df2f8bc2c5c0f4f347d009b62a058b5107413a2abd789f6010eb4d6c9e4f8ee
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:267d6795bf53f9a1955d73445776a428dd042af0cd3cb8bb5b91692a1bc1e5d2
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:5d15175f934017c04d6a6057200ff55b2172a1f4bcbeb0f2cd9e9e545631d93f
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:24238abd46633709feb75f2a3e41cf6c9e8528d2c0e4be2fac6f56de44e3fb9b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8911afbb65c8c4f10c3597624485be54b9103e87a5020b718b35ec3df2c9bf00
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:d9b55e8f25b81050380b4aab040243dc18a7432c48912c9b660c97dcc5eea008
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:2007da5abf840712cd2edb50462b2d8d571a0193c3ae1550d4a279eddf2b335f
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:f4d7d3ba4a0d3322bc9f327e095e9ec56073758f6dcd8da8c7bb185cf952ead5
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:d2514bf4b4b2d9abc19facac3f1a55405eb3ad0d9e9203e8816bfcfa08c9a6c5
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:0af6a91553f40ea40e86d85edc204658af3e5a45e8ab94cdb6b767e545df59b9
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:932e83fe9c9b54934767a7c5af683b2ab08bd2b4f0524c191f1c766dc64d9c3d
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:9f7b1cb8623de8b0550b0ba124d3b50f5e960ed011b33a3262c6346dbe2dff95
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:807ec05e9e107afc969e718d0c2c980959e2fd462e777a5ff63e55156ea150a4
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:4876f14ca9cff0e2b998a56f2f56d0775edf3963de610f4b810b4d94fb12d719
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:d709f65e1194bc877fa4f9ec681b598467703d94139d57b58c24490d3a59fb82
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:232ebac25084db056fdde49477b5c1e6a03a0228fea3758bcf6234b3d0eaa582
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:cba9f25ac6bb2734bb990a622b515c838b881edb688bf44ff196ebe7684ab74b
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:4da77afafde99b15fd357a4ab6609644bf6330a1d9c0c03e64726ed1b9633230
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a1d590d0e2b3fae9ecbd843a664dab083061e797f66a9f0a021b0c2c487d7e45
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:8fed8f58732bff512289fff738d0a94be67286c41b24eaf5928bbcb30d88c88a
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:a4b9553fde02d9c67a9c98f063eaf82fb1d2689f4b1269e57bf5f12c8d4adecf
        version: 2.10.2
      entries:
      - name: rhods-operator.2.10.2
        version: 2.10.2
      - name: rhods-operator.2.10.1
        version: 2.10.1
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.10
    - currentCSV: rhods-operator.2.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:28b5fff602ad6fb36d462e1905f453509ec22fc251a1e0cf64fedba86ff420d7
          createdAt: "2024-10-17T10:53:18Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.13.0 <2.13.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:363a35c332fc80b068157951d5e50e6b7209947649cc64803ffc02726e7581ab
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:cf3779c64bbaef1988886ed629c516e7d6ef7bdc73b9c95ad4c087b62e75750d
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:c2bd493e9345eccd124bbe0440e45cce8cf57588827d8eb9533f8bbadaa3ebbe
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:688389195aebf3f43e74e40d591d2fd5f9ae41994d8ac2db661f292f6eda012a
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:030c53690fe25e15bc9907f51c3f04fab39b4d085ff2098d26316ba32cc8b09f
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:fb630d6f5817512733b8ea05f7147121928917a24ac8d98239f43d920880c359
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:6b2c0d1dd40e2c276684e17818b14375bc778e6c88df0bdc3cc24bfc9294804f
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:7c895490d49beb6bd724f47ad1b17ce501650557b0889314799c4072632f2b99
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:bf25fce160dd7b8cce11e68a501006e4fa81a7858645038cdefdbba03df7ecdb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:8883bf71abf39b4a6985940c287eb6ac7dc137d491264805d48bb112b65bd008
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:a55f73d72ad2b07f01c49949cdb00969bfe4789375b3d7cdf9814b969fcc808d
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e1c19bbcd4c010ef2bd4f760eb24b2c96cdb82b4e025361a433e6a241eb23cf5
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:71abac4fb3d613edef7f3ba117a73bbeea61f341d6182e8310360a76576c789e
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:5d6354e65106460ab9285b42124faf288298387a8b16317565bd591f009c39a6
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c2ee4136ee0014d1ef395b5e3bcab125c846f5e258ece3631d912f431c8d208
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:2566b73e98b783871fb500bb1a8cc4e3d58a513c1bb18abfb525da0818e6138b
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:850901511bde065cf73e4c18d787dc10b6e91ca6139fc3ba68da28c41dd28236
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a3048eaa8924ce3571c6e78014438183fae70d9e8c833a7c07774c675104e3d4
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8c19c7fa535f36bdce3b73cf3300e321909d44954cbc63a8aef6321c5f2fa693
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:9ccdd7fe8223057a2234a3a2eb3b492e7b69e6ce714cc26a805fe2dd82935195
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:74e6cfa0bc481588cb8dc61c206ad567fbd2b28f43c2a86bee4a8e0eff55447c
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:7d085942e4da73c2ff4885c62f10b904dc70fd08e819e62f925eb1b4ddfa1554
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:fd4ce524acc1769475079c7231f5ea79ac29551c513855ef34e5694d2c9fbbd3
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:59e9cc9cd57ba48ca7e87ae1e797a902f826bb890cb198ccf549f76ea581ba6e
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:cd6b535d95eb1b44fe261a5336270fd898b966f431c14e173944484381c26d25
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:28b5fff602ad6fb36d462e1905f453509ec22fc251a1e0cf64fedba86ff420d7
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a37529eff3656a570d796083404e5a3f63603afecfe9e738da1a243c0cb3d7c2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8faab013568ee023968a5ec5b3a79977d7ddae3deafff6328e6fd56a27198e24
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f5b17f44c5ab72d6cf658f72f24f15e06a5ac9be1790336f7228ab8e7cfc15c3
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:77bca19180f30ef08f4d1598ac6c365e190bb7909ac4a1fb35d9ba9ba8d6ff7a
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        version: 2.13.1
      entries:
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.13
    - currentCSV: rhods-operator.2.16.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
          createdAt: "2025-09-24T13:27:25Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.16
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        version: 2.16.3
      entries:
      - name: rhods-operator.2.16.3
        version: 2.16.3
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.16
    - currentCSV: rhods-operator.2.19.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:c605e5fdb3d66302781146347df6da5a91dee97e4f8f5d9ac33f105b8cdee383
          createdAt: "2025-09-24T13:27:42Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:b30d60cd458133430d4c92bf84911e03cecd02f60e88a58d1c6c003543cf833a
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:f0ee0d27bb784e289f7d88cc8ee0e085ca70e88a5d126562105542f259a1ac01
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",  "workbenches.components.platform.opendatahub.io",
            "monitorings.services.platform.opendatahub.io","modelcontrollers.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:8ce44de8c683f198bf24ba36cd17e89708153d11f5b42c0a27e77f8fdb233551
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.19
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:6ad35cf5c4c62ed5ad4e192afe8cebead9796cb24a964401c76ff8656c47742f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:b24c25dfdcefb4ec26e7f311c00798df108f7685def2b1762b7624fdfb160ebf
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:af4721d61dfb61c75488a1bd6a5f62b23e20d7b7586a9cf51ba062ece2837715
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f49483df1d342d8e39f9a8085920aad79313a475df02a2292a136ecb784402b5
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:a6e02e1876fd5382ba4921dd65650b2d747666feb96c839f34e99d2972dfc323
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:b20ee16b776871d7c49b23f2bc91726812998561129f5dbd14eddbfe57964c93
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:8ce44de8c683f198bf24ba36cd17e89708153d11f5b42c0a27e77f8fdb233551
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:4e8f6c6ca0ed516b8310af0332637683b5bfc8f2946eb935c647698dffbbcc79
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:de0e4b7fb822101198817e83cd7e9f4f7406e75ec91d07a833a27a417cffe66b
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:53ac36baa374159b9065c718a9ede821bbb61d9ebe9502b2243e0a9f7aca0d16
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:71cd15f0b1acba3a48ebedff037bf8a846b426c18363a4de8896a376b6b7b3d5
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:bbef4839f24facce111d21aca43898dcf4e6cf57adb16200e3f1590bd5f89eae
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:b6039c3c33a5dc345ceb8e757437bb13023d2bf85cc2b4c10b9ab3887e78e0c0
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:87685c5cab105d876ff0d14b0e24d8dc2a1ff5b55bebe36028c5f3376b2a5271
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:c605e5fdb3d66302781146347df6da5a91dee97e4f8f5d9ac33f105b8cdee383
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8a6732ac3ca60f13dcb1fd8f186d2fc5dc601b9b5981a58f039af9e237f20044
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:baefbe4e7dd5aa74c71cb81da4a7a2b888a02d3eb1398ec4419bd8003b77f0c2
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:520ed21b80e5487b3a0a13b7e5c7d791d4dd28e0b6799d57abb65d53fca5a03f
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:49c02285fcef6949892cecca20eeee49d03a9bb4d17bb9ceff7c7a0dbbb8ab40
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:c8c23c07038f59db848dea0d4247b62840dbe58e1c581dc0722fb9d7f9be3b75
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:876ca7ce7b0b975688fb4a77d6cd1a6f87cf9eb40c2a9a5b84d8cffdc80eeebd
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:b30d60cd458133430d4c92bf84911e03cecd02f60e88a58d1c6c003543cf833a
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:c1c97b6beb759d3f6f2dd53c4258e4ccbb3bf35cf11873bd446b135defaa69d6
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:bf6231bfdbe52b597d86e03e4730ec105ebe7a639fcd529268b7c0423f2a890c
        - registry.redhat.io/rhel8/mariadb-103@sha256:f0ee0d27bb784e289f7d88cc8ee0e085ca70e88a5d126562105542f259a1ac01
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:d24e277f468b0a48f38801e8e0bcfeb8264c3f7c128073ddaa17934b8572cc3c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:6f01ac7cc62ab961b9c8a630a558338a61f6d7902301c4a1ad337495ac7ce85a
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel8@sha256:6166f525948a018c41d735014d97fdfa52024f7be31e18976d85d1a0d88901a0
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:6275a19ef06114b33d79833a94ef10cc8203368eee98e5d415e73d20cae1db85
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:4313cae03c041d461bc276abc23d706b582b5d16feab316796ca43478b9dc705
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:d47514cbceb3cc96e9d33b7db6fc1df60893e5c4118bf6086cdd27f04c472773
        version: 2.19.3
      entries:
      - name: rhods-operator.2.19.3
        version: 2.19.3
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.19
    - currentCSV: rhods-operator.2.22.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9292ff588ed93a002187b070b644c16de2696c0490c1c2c4d29a56e217963436
          createdAt: "2025-09-25T11:28:22Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",  "workbenches.components.platform.opendatahub.io",
            "monitorings.services.platform.opendatahub.io","modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io",
            "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.22
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:6234e15f001122ab222481321153fb0eba7f4d86bf3dfd64edf3f6cecbe7d62f
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:7b3d7787ba95156de9c284ad78f2d63a0d3bcb525f4d8d11ebf0203d4c5c1fe0
        - registry.redhat.io/ubi9/toolbox@sha256:ea4ce8cb8f59cf1b0709f1606d7cab074c3806d4016964eedc0555410cb5dfeb
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:2065b96bd6f0a830eab66e36217a927448cfc5a7dabf2a5e7d907aa6c40657a4
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:9104cbc2d595933f0a2acb7313e41ed69905e76a9fae6bd9820e7717b56a632b
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:d59ed40de694bc0e0564bab159a5b586cffa0721b6d761fb2d81dd42e6225d1c
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:cb5be3dd7098f4c8d66f9e85ad04656460df6102652deddc6cccb884a12be733
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:abe1f9dd11c7313fdd55b678be511a5cdc3546654a68e2b53d42c1013fec8d00
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:d7c4ac937add511460a36375d9b6b3c475a3a9a7cc96c00df2fbad6219aee0e9
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:5914f71e37c815ce2567826896e051303bdef52fae1acf8d02e672fc24c7eb9d
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:f9965177de24f3165ec4c001c14cf1e2c2c01ffe847839af837c442e3c96beae
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:ccba67a6a5aa3403e0018f29dcdfef483220dea8065d8b572e80c653ca992add
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:b2ca229bb4c4dbf04b96766b8af8d9f55f2edef59ec4110de0d20f8c857e7d27
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:2b3aace0d80474470e71c2c8291b25738e096109229fe6d5d3e06e9885ee58b6
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:e6fbe6723b4801f6854303b3fd7d4a4a36727bdd28dc28002b7de4929739ccc0
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:27415b1c763cf89b79391f0b039936c3e078a078bda4420f13bf10ef9be31d5e
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:2f3f305c97e50057781553416fb4026cde306ead0fbe0213627b9b5bbcc8a0c3
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:32c9511846077ef6035eb19be7653f6a78e0f207eb420ab93b18f742ab5779b6
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:b2c2ea9d35edbcd16e1ae559c88a453129b877fc049ab7a7cd6c2ebb8f0bcb59
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhel9/mariadb-105@sha256:5e77b33ce04c1eafc2e8840586ad6a5b51148dea8a46dda151071e28858331f0
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:7fd540586a1ca111370100a473923b3dc6cec4255e9e4f3654bfbabd9158a2bb
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:13f3679ab289eea9de54fe129a7c83f6c8ec5d26b61b430637a7c4cfcd31a74a
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9292ff588ed93a002187b070b644c16de2696c0490c1c2c4d29a56e217963436
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:1709fa3c79aad4ba7eb9be8299949396092c8e20210124e0c0936385bc04e839
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:a44d32a18b1e906c1411cafc82102881573fcd04e040a4e2ba6bd1bd617b70fa
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:5d79f0bcca0a213b53aee6d88834e503d343821596b857b13d3a6362de8ebeab
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:2f1a0a0803b2f5118b167e9d9c2e86660add5f79ee6f47044f63b0e8abe0b75f
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e87a96c8a61042e83b8db0194adf3fd84c3a311b1f3793345a35bfd0e7ea56d9
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:2fe9473cd1d6c445d2ca7cc357ee4bb009aa1838f9cb69ea418296b2a044816b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:bd6d1599b4ff9eb890be9808014715b28ca19247222d65f40df024db4dd3525a
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:74d4e0174655cf6f6273857325a1e714a1531c5a06ad38bf139bee9c7d8f5f19
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:e3b90530c6e38f6940d7f9408e9fa2c81eb06a857ec2b0bab5d006b1e9a63a4f
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:463e9be9c4409ba1e5a42713bd65844a023e7a3e9032d4e862edbaa5fe35300a
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        version: 2.22.2
      entries:
      - name: rhods-operator.2.22.2
        version: 2.22.2
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.22
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.22.2
        version: 2.22.2
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.25
    - currentCSV: rhods-operator.2.8.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              },
              {
                "apiVersion": "features.opendatahub.io/v1",
                "kind": "FeatureTracker",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "default-feature",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-feature"
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:b3563e201bf2720f60e73c0b04cb70566ea52eda7d09a28753f3a1487993c2e8
          createdAt: "2024-08-01T06:23:03Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.8.0 <2.8.4'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Removed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "SelfSigned"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Removed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.


          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines. (including Elyra notebook interface, and based on standard OpenShift Pipelines)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:68e1331f13dfaf6641a1e7d54f4cf29c0ef42663abc98b6dc69167892d2d8adb
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:df2edcaf4402b11ce24439263956e3b0cc43efbac2fdf152afacb1a398dcc59a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:5f39b11f0cd6db2d7d6e51ee666c030e2643aee92a090b49656c1e7dfd8a5430
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:eb4da3a645b53acfd6ce8758c043ae19b4126e62bcca09165114a141c2c8d014
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:889f046b255b13d99801108588d3abf577611b828657b5240a18ea21f0e3cbbe
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:92d9e4b53d580df6cc1f14a849b477749a1306941a2e8f9d1b6160f4911c3cff
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:9c90873fbd5af8fac8efc3c7c27fba742a06fad2d47f336319dd05d2b116867b
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:ab8792fcd16b1aa0065444ba54335cb3e747379740c3ec2d56beb46ff80cb044
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:1c49888ba2e9449c04d5588040c099290fce4793c2ba8874c1037316e550d6e1
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:06a6d5cbbe80d49bca9e4db9929571a69e35ae7951fcae84dcd6460f7ddf622c
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:987c768c0688431a53e48a80591f2a41e074994169f9e691b28b89528d8e736f
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:9799003449bfb61ae8f59efd2a611b0da3bccadd9b20cc1519f6c9279d085337
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:b6ecb3858c201498024e3bfc4a93e630699be4b1fdc3a65fd2d70e4b375eb9c2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:080377d42d782bf525b4072384d0cf8409b48019b3748ca7c855f340bcb94251
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:b3563e201bf2720f60e73c0b04cb70566ea52eda7d09a28753f3a1487993c2e8
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:91525fac5fadece75fbdafc40b94445fb92c88cfc8c2f06b596f8c6377e59c9e
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:cb711fcb32b5ca0f34c4e3c67624bc4e035de4247617d988a9e841fd58c1c911
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:0b8665e8978deb73be2cc65830f08a74a5a48f3e3ee7b2b817f7bbacba257d22
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:850b78a201effcafe33705dcd2670f1c470d8b46ba6e307032403627b55a7cfe
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:90833e85e0de3d7de870074c8b04319cd11b913b9652af6a5727aae41a91458c
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:1a6e29214e06a2665baadbed598ba758d6141bfa522984eb05f05a80558a403c
        version: 2.8.4
      entries:
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.8
    defaultChannel: stable
    packageName: rhods-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: prometurbo
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometurbo-operator.v8.7.1-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.7.1-SNAPSHOT
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/prometurbo@sha256:ef65de2143df2c93aa73f099fa66d39e3239c30a9d547ed7bf258da0a19e8e35
        - turbonomic/prometurbo-operator:8.7.1-SNAPSHOT
        version: 8.7.1-beta.1
      entries:
      - name: prometurbo-operator.v8.7.1-beta.1
        version: 8.7.1-beta.1
      name: beta
    - currentCSV: prometurbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.6
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - turbonomic/prometurbo-operator:8.6
        - quay.io/openshift-community-operators/prometurbo@sha256:cb8b13fece10b8217b79e63584f8df4975721f2cec82aada2cf6c266d72dbf75
        version: 8.6.0
      entries:
      - name: prometurbo-operator.v8.6.0
        version: 8.6.0
      - name: prometurbo-operator.v8.5.0
        version: 8.5.0
      name: stable
    - currentCSV: prometurbo-operator.v8.5.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.5
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/prometurbo@sha256:83444ab464bce4fb5021a2fca6d4d6ff72b40e90a6cfc9c5ac6c74357c775ad5
        - turbonomic/prometurbo-operator:8.5
        version: 8.5.0
      entries:
      - name: prometurbo-operator.v8.5.0
        version: 8.5.0
      name: v8.5.0
    - currentCSV: prometurbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.6
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/prometurbo@sha256:cb8b13fece10b8217b79e63584f8df4975721f2cec82aada2cf6c266d72dbf75
        - turbonomic/prometurbo-operator:8.6
        version: 8.6.0
      entries:
      - name: prometurbo-operator.v8.6.0
        version: 8.6.0
      - name: prometurbo-operator.v8.5.0
        version: 8.5.0
      name: v8.6.0
    defaultChannel: stable
    packageName: prometurbo
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/version: 5.8.6
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Crunchy Data
      provider-url: https://www.crunchydata.com/
    name: crunchy-postgres-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: postgresoperator.v5.8.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "CrunchyBridgeCluster",
                "metadata": {
                  "name": "example-crunchybridgecluster"
                },
                "spec": {
                  "clusterName": "example-bridge-cluster",
                  "isHa": false,
                  "majorVersion": 16,
                  "plan": "standard-4",
                  "provider": "aws",
                  "region": "us-west-2",
                  "secret": "crunchy-bridge-api-key",
                  "storage": "10Gi"
                }
              },
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "PGAdmin",
                "metadata": {
                  "name": "example-pgadmin",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "dataVolumeClaimSpec": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "1Gi"
                      }
                    }
                  },
                  "serverGroups": [
                    {
                      "name": "Crunchy Postgres for Kubernetes",
                      "postgresClusterSelector": {}
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "PGUpgrade",
                "metadata": {
                  "name": "example-upgrade"
                },
                "spec": {
                  "fromPostgresVersion": 16,
                  "postgresClusterName": "example",
                  "toPostgresVersion": 17
                }
              },
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "PostgresCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "backups": {
                    "pgbackrest": {
                      "repos": [
                        {
                          "name": "repo1",
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "instances": [
                    {
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      },
                      "replicas": 1
                    }
                  ],
                  "postgresVersion": 16
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: registry.connect.redhat.com/crunchydata/postgres-operator@sha256:c92df32b32c8d3b4ecdee0ad5f0f408bf33c906e9be7188a03a02db1bed61aaa
          createdAt: 2019-12-31 19:40Z
          description: Production Postgres Made Easy
          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"
          repository: https://github.com/CrunchyData/postgres-operator
          support: crunchydata.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGAdmin is the Schema for the PGAdmin API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          [Crunchy Postgres for Kubernetes](https://www.crunchydata.com/products/crunchy-postgresql-for-kubernetes), is the leading Kubernetes native
          Postgres solution. Built on PGO, the Postgres Operator from Crunchy Data, Crunchy Postgres for Kubernetes gives you a declarative Postgres
          solution that automatically manages your PostgreSQL clusters.

          Designed for your GitOps workflows, it is [easy to get started](https://access.crunchydata.com/documentation/postgres-operator/latest/quickstart)
          with Crunchy Postgres for Kubernetes. Within a few moments, you can have a production grade Postgres cluster complete with high availability, disaster
          recovery, and monitoring, all over secure TLS communications. Even better, Crunchy Postgres for Kubernetes lets you easily customize your Postgres
          cluster to tailor it to your workload!

          With conveniences like cloning Postgres clusters to using rolling updates to roll out disruptive changes with minimal downtime, Crunchy Postgres
          for Kubernetes is ready to support your Postgres data at every stage of your release pipeline. Built for resiliency and uptime, Crunchy Postgres
          for Kubernetes will keep your Postgres cluster in a desired state so you do not need to worry about it.

          Crunchy Postgres for Kubernetes is developed with many years of production experience in automating Postgres management on Kubernetes, providing
          a seamless cloud native Postgres solution to keep your data always available.

          Crunchy Postgres for Kubernetes is made available to users without an active Crunchy Data subscription in connection with Crunchy Data's
          [Developer Program](https://www.crunchydata.com/developers/terms-of-use).
          For more information, please contact us at [info@crunchydata.com](mailto:info@crunchydata.com).

          - **PostgreSQL Cluster Provisioning**: [Create, Scale, & Delete PostgreSQL clusters with ease][provisioning],
            while fully customizing your Pods and PostgreSQL configuration!
          - **High-Availability**: Safe, automated failover backed by a [distributed consensus based high-availability solution][high-availability].
            Uses [Pod Anti-Affinity][k8s-anti-affinity] to help resiliency; you can configure how aggressive this can be!
            Failed primaries automatically heal, allowing for faster recovery time. You can even create regularly scheduled
            backups as well and set your backup retention policy
          - **Disaster Recovery**: [Backups][backups] and [restores][disaster-recovery] leverage the open source [pgBackRest][] utility and
            [includes support for full, incremental, and differential backups as well as efficient delta restores][backups].
            Set how long you want your backups retained for. Works great with very large databases!
          - **Monitoring**: [Track the health of your PostgreSQL clusters][monitoring] using the open source [pgMonitor][] library and OpenTelemetry.
          - **Clone**: [Create new clusters from your existing clusters or backups][clone] with efficient data cloning.
          - **TLS**: All connections are over [TLS][tls]. You can also [bring your own TLS infrastructure][tls] if you do not want to use the provided defaults.
          - **Connection Pooling**: Advanced [connection pooling][pool] support using [pgBouncer][].
          - **Affinity and Tolerations**: Have your PostgreSQL clusters deployed to [Kubernetes Nodes][k8s-nodes] of your preference.
            Set your [pod anti-affinity][k8s-anti-affinity], node affinity, Pod tolerations and more rules to customize your deployment topology!
          - **PostgreSQL Major Version Upgrades**: Perform a [PostgreSQL major version upgrade][major-version-upgrade] declaratively.
          - **Database Administration**: Easily deploy [pgAdmin4][pgadmin] to administer your PostgresClusters' databases.
            The automatic discovery of PostgresClusters ensures that you are able to seamlessly access any databases within your environment from the pgAdmin4 GUI.
          - **Full Customizability**: Crunchy PostgreSQL for Kubernetes makes it easy to get your own PostgreSQL-as-a-Service up and running
            and fully customize your deployments, including:
              - Choose the resources for your Postgres cluster: [container resources and storage size][resize-cluster]. [Resize at any time][resize-cluster] with minimal disruption.
              - Use your own container image repository, including support `imagePullSecrets` and private repositories
              - [Customize your PostgreSQL configuration][customize-cluster]

          and much more!

          [backups]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/backups-disaster-recovery
          [clone]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/backups-disaster-recovery/disaster-recovery
          [customize-cluster]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/day-two/customize-cluster
          [disaster-recovery]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/backups-disaster-recovery/disaster-recovery
          [high-availability]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/day-two/high-availability
          [major-version-upgrade]: https://access.crunchydata.com/documentation/postgres-operator/v5/guides/major-postgres-version-upgrade/
          [monitoring]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/day-two/monitoring
          [pool]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/basic-setup/connection-pooling
          [provisioning]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/basic-setup/create-cluster
          [resize-cluster]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/cluster-management/resize-cluster
          [tls]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/day-two/customize-cluster#customize-tls

          [k8s-anti-affinity]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#inter-pod-affinity-and-anti-affinity
          [k8s-nodes]: https://kubernetes.io/docs/concepts/architecture/nodes/

          [pgAdmin]: https://www.pgadmin.org/
          [pgBackRest]: https://www.pgbackrest.org
          [pgBouncer]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/basic-setup/connection-pooling
          [pgMonitor]: https://github.com/CrunchyData/pgmonitor

          ## Post-Installation

          ### Tutorial

          Want to [learn more about the PostgreSQL Operator][tutorial]? Browse through the [tutorial][] to learn more about what you can do,
          [join the Discord server][discord] for community support, or check out the [PGO GitHub repo][ghrepo] to learn more
          about the open source Postgres Operator project that powers Crunchy Postgres for Kubernetes.

          [tutorial]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials
          [discord]: https://discord.gg/a7vWKG8Ec9
          [ghrepo]: https://github.com/CrunchyData/postgres-operator
        displayName: Crunchy Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - crunchy data
        links:
        - name: Crunchy Data
          url: https://www.crunchydata.com/
        - name: Documentation
          url: https://access.crunchydata.com/documentation/postgres-operator/v5/
        maintainers:
        - email: info@crunchydata.com
          name: Crunchy Data
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Crunchy Data
          url: https://www.crunchydata.com/
        relatedImages:
        - registry.connect.redhat.com/crunchydata/postgres-operator@sha256:c92df32b32c8d3b4ecdee0ad5f0f408bf33c906e9be7188a03a02db1bed61aaa
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:f3977ebceb725e0abd789776e27ed74026c98c2e41fc8b19bb57015fe40f77c5
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:4412a85a0c795e72142fc28b90aef513175f4bc55911a189733daaddaa7111f2
        - registry.connect.redhat.com/crunchydata/postgres-operator-bundle@sha256:8c02e461c615d8963a62e9279fd808ee7fa633443b44facde9f588a61c771819
        - registry.connect.redhat.com/crunchydata/crunchy-pgbouncer@sha256:22414de1b9fea7d88bb753ea67a0f3634427f87590a405fa5eaddefe5b101176
        - registry.connect.redhat.com/crunchydata/crunchy-pgbackrest@sha256:35ec028bae6c112d9bba20f5a9e8dcf4c2610cc11728d23a1bdfbc0357676bfc
        - registry.connect.redhat.com/crunchydata/crunchy-upgrade@sha256:c953467c06f4c94aef0daca6266b2b46e5f369b5b4db256b77098c56d1099008
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:26784e2511af35de6969acea943706664e333aee928bcbb86eaec0bafb3a465b
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:eced136169980e95d8f002e2f95cef44e4132a70d06e3399f236241d3899af76
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:c1d6337497b1eca5ec48fbbb213e837522627210e8a0d6675980de5c41cb29d4
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:d28a2eb25b47ca13350e525fdc72969883913ca429595a4131d7f41a1aa4e0ce
        - registry.connect.redhat.com/crunchydata/crunchy-pgadmin4@sha256:501cdc79d624fd1d3a2efbbfcafb9aac876e65d2e4fc3f61431259fc35c42f4c
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:5ae16b986731fd9545bc6485f20d913429d38155f86e4eec629a511014a192f9
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:c388de55a1762a218299c555fda6a451ffc1df6b12b80b6873e4cd3107b12530
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-exporter@sha256:b455b35086cbac3fc365a5fe32399ca023b292351447659200215988869b60f0
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:a9b8a9c5bf512078b215c63da65a2daf7511bc0e00d00513d966269220ec4583
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:bdebb3134cf0c07105ca873805e739846750cde03eb865682195eb58b6517dce
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:2083776ac27ddb96bc9e4ca5db2ed92c60b1b24277af7975fd86aaca37060dce
        version: 5.8.6
      entries:
      - name: postgresoperator.v5.8.6
        version: 5.8.6
      - name: postgresoperator.v5.8.5
        version: 5.8.5
      - name: postgresoperator.v5.8.4
        version: 5.8.4
      - name: postgresoperator.v5.8.3
        version: 5.8.3
      - name: postgresoperator.v5.8.2
        version: 5.8.2
      - name: postgresoperator.v5.8.1
        version: 5.8.1
      - name: postgresoperator.v5.8.0
        version: 5.8.0
      - name: postgresoperator.v5.7.4
        version: 5.7.4
      - name: postgresoperator.v5.7.3
        version: 5.7.3
      - name: postgresoperator.v5.7.2
        version: 5.7.2
      - name: postgresoperator.v5.7.1
        version: 5.7.1
      - name: postgresoperator.v5.7.0
        version: 5.7.0
      - name: postgresoperator.v5.6.1
        version: 5.6.1
      - name: postgresoperator.v5.6.0
        version: 5.6.0
      - name: postgresoperator.v5.5.2
        version: 5.5.2
      - name: postgresoperator.v5.5.1
        version: 5.5.1
      - name: postgresoperator.v5.5.0
        version: 5.5.0
      - name: postgresoperator.v5.4.4
        version: 5.4.4
      - name: postgresoperator.v5.4.3
        version: 5.4.3
      - name: postgresoperator.v5.4.2
        version: 5.4.2
      - name: postgresoperator.v5.4.1
        version: 5.4.1
      - name: postgresoperator.v5.4.0
        version: 5.4.0
      - name: postgresoperator.v5.3.0
        version: 5.3.0
      - name: postgresoperator.v5.2.0
        version: 5.2.0
      - name: postgresoperator.v5.1.3
        version: 5.1.3
      - name: postgresoperator.v5.1.2
        version: 5.1.2
      - name: postgresoperator.v5.1.1
        version: 5.1.1
      - name: postgresoperator.v5.1.0
        version: 5.1.0
      name: v5
    defaultChannel: v5
    packageName: crunchy-postgres-operator
    provider:
      name: Crunchy Data
      url: https://www.crunchydata.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Saison Technology Co., Ltd.
      provider-url: https://www.hulft.com/
    name: hulft
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hulft.v10.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hulft.saison-technology.com/v1",
                "kind": "Hulft",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "hulft",
                    "app.kubernetes.io/instance": "sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hulft",
                    "app.kubernetes.io/part-of": "hulft"
                  },
                  "name": "sample",
                  "namespace": "user-apps"
                },
                "spec": {
                  "applicationName": "hulft-apps",
                  "control": {
                    "allowExternalAccess": true,
                    "replicas": {
                      "max": 1,
                      "min": 1
                    }
                  },
                  "db": {
                    "authorizationSecret": "secret-hulft-db-authorization",
                    "connectionRetryCount": 30,
                    "hostname": "database.example.com",
                    "name": "hulft",
                    "port": 3306,
                    "tablePrefix": "hulft"
                  },
                  "licenseSecret": "secret-hulft-license",
                  "resourceIdentifier": "sample",
                  "transfer": {
                    "control": {
                      "retryCount": 10,
                      "retryInterval": 10000,
                      "timeout": 60000
                    },
                    "gracefulShutdownWait": 3600,
                    "observe": {
                      "websocket": {
                        "allowExternalAccess": false
                      }
                    },
                    "replicas": {
                      "max": 5,
                      "min": 1
                    },
                    "s3": {
                      "defaultRegion": "ap-northeast-1"
                    },
                    "websocket": {
                      "allowExternalAccess": false
                    }
                  }
                },
                "status": {
                  "applicationName": "hulft-apps",
                  "control": {
                    "allowExternalAccess": true,
                    "apiClientTlsSecret": "secret-hulft-sample-transfer-control-server-tls",
                    "consoleLoginSecret": "secret-hulft-sample-console-login",
                    "consoleTlsSecret": "secret-hulft-sample-control-console-tls",
                    "hostname": "",
                    "httpPort": 30080,
                    "httpsPort": 30443,
                    "replicas": {
                      "max": 1,
                      "min": 1
                    },
                    "samlSecret": ""
                  },
                  "db": {
                    "authorizationSecret": "secret-hulft-db-authorization",
                    "connectionRetryCount": 30,
                    "encryptionKeySecret": "secret-hulft-sample-db-encryption-key",
                    "hostname": "database.example.com",
                    "name": "hulft",
                    "port": 3306,
                    "tablePrefix": "hulft"
                  },
                  "licenseSecret": "secret-hulft-license",
                  "resourceIdentifier": "sample",
                  "transfer": {
                    "control": {
                      "clientTlsSecret": "secret-hulft-sample-control-console-tls",
                      "port": 30443,
                      "retryCount": 10,
                      "retryInterval": 10000,
                      "serverTlsSecret": "secret-hulft-sample-transfer-control-server-tls",
                      "timeout": 60000
                    },
                    "gracefulShutdownWait": 3600,
                    "hostname": "hulft-sample-transfer-wss-ci.apps.openshift.example.com",
                    "hulft": {
                      "port": 30000
                    },
                    "observe": {
                      "port": 31000,
                      "websocket": {
                        "allowExternalAccess": true,
                        "port": 33443,
                        "serverTlsSecret": "secret-hulft-sample-transfer-observe-wss-server-tls"
                      }
                    },
                    "replicas": {
                      "max": 5,
                      "min": 1
                    },
                    "s3": {
                      "authenticationSecret": "",
                      "defaultRegion": "ap-northeast-1"
                    },
                    "websocket": {
                      "allowExternalAccess": true,
                      "clientTlsSecret": "",
                      "port": 31443,
                      "serverTlsSecret": "secret-hulft-sample-transfer-wss-server-tls"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/saison-technology/hulft-operator@sha256:8ee0a29d0ce96f4ec230f387467b241dccbb2bd350cd642b275ef5f5d3b64972
          createdAt: "2025-10-09T04:43:01Z"
          description: HULFT10 for Container Platform is file integration middleware
            that provides transfer functions for the data accumulated in your IT system
            during the daily operations of your business, such as sales data, customer
            information, and various logs. File transfer from/to on-premises HULFT
            is also available.
          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: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/valid-subscription: To use HULFT10 for Container
            Platform, you must purchase the product and have a key issued. Please
            refer to [Start Up Guide](https://www.hulft.com/help/ja-jp/HULFT-V10/CONP-SUGOS)
            for the deployment procedure.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Saison Technology Co., Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Hulft is the Schema for the hulfts API
            displayName: Hulft
            kind: Hulft
            name: hulfts.hulft.saison-technology.com
            version: v1
        description: |
          HULFT10 for Container Platform is file integration middleware that provides transfer functions for the data accumulated in your IT system during the daily operations of your business, such as sales data, customer information, and various logs. File transfer from/to on-premises HULFT is also available.
          To use HULFT10 for Container Platform, you must purchase the product and have a key issued. Please refer to [Start Up Guide](https://www.hulft.com/help/ja-jp/HULFT-V10/CONP-SUGOS) for the deployment procedure.
        displayName: HULFT10 for Container Platform
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backup & Recovery
        - Storage
        - Migration
        links:
        - name: Product page
          url: https://www.hulft.com/software/hulft-10
        - name: Product manual
          url: https://www.hulft.com/help/ja-jp/HULFT-V10/index.htm
        maintainers:
        - email: salessupport_mp@hulft.com
          name: Saison Technology Co., Ltd.
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Saison Technology Co., Ltd.
          url: https://www.hulft.com/
        relatedImages:
        - registry.connect.redhat.com/saison-technology/hulft-operator@sha256:8ee0a29d0ce96f4ec230f387467b241dccbb2bd350cd642b275ef5f5d3b64972
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.connect.redhat.com/saison-technology/hulft-bundle@sha256:8f0b469b347670a729ba629b3b0da57d51981644bd894b3afc3d911041ccde6a
        version: 10.5.0
      entries:
      - name: hulft.v10.5.0
        version: 10.5.0
      - name: hulft.v10.4.0
        version: 10.4.0
      - name: hulft.v10.3.0
        version: 10.3.0
      name: stable
    defaultChannel: stable
    packageName: hulft
    provider:
      name: Saison Technology Co., Ltd.
      url: https://www.hulft.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hazelcast, Inc
      provider-url: ""
    name: hazelcast-platform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hazelcast-platform-operator.v5.15.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "cache-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "CronHotBackup",
                "metadata": {
                  "name": "cronhotbackup-sample"
                },
                "spec": {
                  "hotBackupTemplate": {
                    "metadata": {
                      "labels": {
                        "cron-hotbackup": "true"
                      }
                    },
                    "spec": {
                      "hazelcastResourceName": "hazelcast"
                    }
                  },
                  "schedule": "*/30 * * * *"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Flow",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hazelcast-platform-operator"
                  },
                  "name": "flow"
                },
                "spec": {
                  "database": {
                    "host": "flow-postgresql",
                    "secretName": "flow-db-secret"
                  },
                  "env": [
                    {
                      "name": "OPTIONS",
                      "value": "--flow.analytics.persistRemoteCallResponses=true --flow.analytics.persistResults=false --flow.config.custom.managementCenterUrl=http://34.140.160.158/mc\n"
                    }
                  ],
                  "externalConnectivity": {
                    "ingress": {
                      "annotations": {
                        "kubernetes.io/ingress.class": "nginx",
                        "nginx.ingress.kubernetes.io/enable-opentelemetry": "true",
                        "nginx.ingress.kubernetes.io/ssl-redirect": "false"
                      },
                      "hostname": "",
                      "ingressClassName": "nginx",
                      "path": "/"
                    }
                  },
                  "imagePullSecrets": [
                    {
                      "name": "hazelcast-cloud-hazelcast-connect-demo-pull-secret"
                    }
                  ],
                  "licenseKeySecretName": "flow-mc-license-key",
                  "repository": "quay.io/hazelcast_cloud/hazelcast-flow-internal",
                  "size": 3,
                  "version": "next"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast"
                },
                "spec": {
                  "clusterSize": 3,
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast-sample"
                },
                "spec": {
                  "clusterSize": 3,
                  "jet": {
                    "bucketConfig": {
                      "bucketURI": "gs://operator-user-code/jetJobs",
                      "secretName": "br-secret-gcp"
                    },
                    "enabled": true,
                    "resourceUploadEnabled": true
                  },
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HazelcastEndpoint",
                "metadata": {
                  "name": "hazelcastendpoint-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "port": 5701,
                  "type": "Discovery"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HotBackup",
                "metadata": {
                  "name": "hot-backup"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-longrun"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-longrun-2.0.0.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-1.0.2.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJobSnapshot",
                "metadata": {
                  "name": "jetjobsnapshot-sample"
                },
                "spec": {
                  "cancelJob": false,
                  "jetJobResourceName": "jet-job"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ManagementCenter",
                "metadata": {
                  "name": "managementcenter"
                },
                "spec": {
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "hazelcastClusters": [
                    {
                      "address": "hazelcast",
                      "name": "dev"
                    }
                  ],
                  "licenseKeySecretName": "hazelcast-license-key",
                  "persistence": {
                    "enabled": true,
                    "size": "10Gi"
                  },
                  "repository": "hazelcast/management-center"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Map",
                "metadata": {
                  "name": "map"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "MultiMap",
                "metadata": {
                  "name": "multimap-sample"
                },
                "spec": {
                  "backupCount": 3,
                  "binary": true,
                  "collectionType": "LIST",
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Queue",
                "metadata": {
                  "name": "queue-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ReplicatedMap",
                "metadata": {
                  "name": "replicatedmap-sample"
                },
                "spec": {
                  "asyncFillup": true,
                  "hazelcastResourceName": "hazelcast",
                  "inMemoryFormat": "OBJECT"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Topic",
                "metadata": {
                  "name": "topic-sample"
                },
                "spec": {
                  "globalOrderingEnabled": true,
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "UserCodeNamespace",
                "metadata": {
                  "name": "ucn-sample"
                },
                "spec": {
                  "bucketConfig": {
                    "bucketURI": "gs://operator-user-code/userCodeNamespace",
                    "secretName": "br-secret-gcp"
                  },
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "VectorCollection",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hazelcast-platform-operator"
                  },
                  "name": "vectorcollection-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "indexes": [
                    {
                      "dimension": 10,
                      "efConstruction": 256,
                      "maxDegree": 32,
                      "metric": "Dot",
                      "useDeduplication": false
                    }
                  ]
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanReplication",
                "metadata": {
                  "name": "wanreplication-sample"
                },
                "spec": {
                  "endpoints": "35.192.33.252",
                  "resources": [
                    {
                      "kind": "Map",
                      "name": "map-sample"
                    },
                    {
                      "kind": "Hazelcast",
                      "name": "hz-sample"
                    }
                  ],
                  "targetClusterName": "dev"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanSync",
                "metadata": {
                  "name": "wansync-sample"
                },
                "spec": {
                  "wanReplicationResourceName": "wan-replication-sample"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: docker.io/hazelcast/hazelcast-platform-operator@sha256:59328a4ea7a4e2110e0750364db792cf266f1e7231e3bb321e3de09d535dab23
          createdAt: "2025-03-13T11:59:59Z"
          description: Install Hazelcast clusters in Kubernetes environments.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/hazelcast/hazelcast-platform-operator/
          support: Hazelcast, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.hazelcast.com
            version: v1alpha1
          - description: CronHotBackup is the Schema for the cronhotbackups API
            displayName: Cron Hot Backup
            kind: CronHotBackup
            name: cronhotbackups.hazelcast.com
            version: v1alpha1
          - description: Flow is the Schema for the flows API
            displayName: Flow
            kind: Flow
            name: flows.hazelcast.com
            version: v1alpha1
          - description: HazelcastEndpoint is the Schema for the hazelcastendpoints
              API
            displayName: Hazelcast Endpoint
            kind: HazelcastEndpoint
            name: hazelcastendpoints.hazelcast.com
            version: v1alpha1
          - description: Hazelcast is the Schema for the hazelcasts API
            displayName: Hazelcast
            kind: Hazelcast
            name: hazelcasts.hazelcast.com
            version: v1alpha1
          - description: HotBackup is the Schema for the hot backup API
            displayName: Hot Backup
            kind: HotBackup
            name: hotbackups.hazelcast.com
            version: v1alpha1
          - description: JetJob is the Schema for the jetjobs API
            displayName: Jet Job
            kind: JetJob
            name: jetjobs.hazelcast.com
            version: v1alpha1
          - description: JetJobSnapshot is the Schema for the jetjobsnapshots API
            displayName: Jet Job Snapshot
            kind: JetJobSnapshot
            name: jetjobsnapshots.hazelcast.com
            version: v1alpha1
          - description: ManagementCenter is the Schema for the managementcenters
              API
            displayName: Management Center
            kind: ManagementCenter
            name: managementcenters.hazelcast.com
            version: v1alpha1
          - description: Map is the Schema for the maps API
            displayName: Map
            kind: Map
            name: maps.hazelcast.com
            version: v1alpha1
          - description: MultiMap is the Schema for the multimaps API
            displayName: Multi Map
            kind: MultiMap
            name: multimaps.hazelcast.com
            version: v1alpha1
          - description: Queue is the Schema for the queues API
            displayName: Queue
            kind: Queue
            name: queues.hazelcast.com
            version: v1alpha1
          - description: ReplicatedMap is the Schema for the replicatedmaps API
            displayName: Replicated Map
            kind: ReplicatedMap
            name: replicatedmaps.hazelcast.com
            version: v1alpha1
          - description: Topic is the Schema for the topics API
            displayName: Topic
            kind: Topic
            name: topics.hazelcast.com
            version: v1alpha1
          - description: UserCodeNamespace is the Schema for the usercodenamespaces
              API
            displayName: User Code Namespace
            kind: UserCodeNamespace
            name: usercodenamespaces.hazelcast.com
            version: v1alpha1
          - description: VectorCollection is the Schema for the vectorcollections
              API
            displayName: Vector Collection
            kind: VectorCollection
            name: vectorcollections.hazelcast.com
            version: v1alpha1
          - description: WanReplication is the Schema for the wanreplications API
            displayName: Wan Replication
            kind: WanReplication
            name: wanreplications.hazelcast.com
            version: v1alpha1
          - description: WanSync is the Schema for the wansyncs API
            displayName: Wan Sync
            kind: WanSync
            name: wansyncs.hazelcast.com
            version: v1alpha1
        description: |
          Easily deploy Hazelcast clusters and Management Center into Kubernetes environments and manage their lifecycles.

          ## Before You Start

          If you are planning to create Hazelcast Platform Enterprise clusters, you need to [create a secret](https://docs.hazelcast.com/operator/latest/get-started#step-2-start-the-hazelcast-cluster) for the license. You can request a trial license key from [here](https://trialrequest.hazelcast.com).

          For Hazelcast Platform clusters, you can simply continue.

          ## Documentation

          1. [Get started](https://docs.hazelcast.com/operator/latest/get-started) with the Operator
          2. [Connect to the cluster from outside Kubernetes](https://guides.hazelcast.org/hazelcast-platform-operator-expose-externally)
          3. [Restore a Cluster from Cloud Storage with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-external-backup-restore)
          4. [Replicate Data between Two Hazelcast Clusters with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-wan-replication)

          ## Features

          Hazelcast Platform Operator supports the features below:

          * Custom resource for Hazelcast Platform (Enterprise) and Management Center
          * Observe status of Hazelcast clusters and Management Center instances
          * High Availability Mode configuration to create clusters that are resilient to node and zone failures
          * Support for TLS connections between members using self-signed certificates
          * Scale up and down Hazelcast clusters
          * Expose Hazelcast cluster to external clients ([Smart & Unisocket](https://docs.hazelcast.com/hazelcast/latest/clients/java#java-client-operation-modes))
          * Backup Hazelcast persistence data to cloud storage with the possibility of scheduling it and restoring the data accordingly
          * WAN Replication feature when you need to synchronize multiple Hazelcast clusters, which are connected by WANs
          * Full and Delta WAN Sync support
          * Tiered Storage support for Hazelcast and Map CRs
          * CP Subsystem configuration support for Hazelcast CR
          * User Code Deployment feature, which allows you to deploy custom and domain classes from cloud storages and URLs to Hazelcast members
          * The User Code Namespaces feature allows you to deploy custom and domain classes at runtime without a members restart
          * Support the configuration of advanced networking options
          * Support Multi-namespace configuration
          * ExecutorService and EntryProcessor support
          * Support several data structures like Map, Topic, MultiMap, ReplicatedMap, Queue and Cache which can be created dynamically via specific Custom Resources
          * MapStore, Near Cache and off-heap memory (HD memory and native memory) support for the Map CR
          * Native Memory support for the Cache CR
          * Support Jet configuration and Jet Job submission using the JetJob CR
          * Support for exporting the snapshots of JetJob CRs using JetJobSnapshot CR
          * Support for custom configurations using ConfigMap
        displayName: Hazelcast Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hazelcast
        - keyvalue
        - in-memory
        - database
        - caching
        links:
        - name: Documentation
          url: https://docs.hazelcast.com/operator/latest/
        - name: Source Code
          url: https://github.com/hazelcast/hazelcast-platform-operator
        maintainers:
        - email: cloudnative@hazelcast.com
          name: Hazelcast Cloud Native Team
        maturity: alpha
        minKubeVersion: 1.22.7
        provider:
          name: Hazelcast, Inc
        relatedImages:
        - docker.io/hazelcast/hazelcast-platform-operator@sha256:59328a4ea7a4e2110e0750364db792cf266f1e7231e3bb321e3de09d535dab23
        - registry.connect.redhat.com/hazelcast/hazelcast-platform-operator-bundle@sha256:0aabd3e7f5f993c1288450678d55e8f7b36c8b30894e5d844521a474aa6b2714
        version: 5.15.0
      entries:
      - name: hazelcast-platform-operator.v5.15.0
        version: 5.15.0
      name: alpha
    defaultChannel: alpha
    packageName: hazelcast-platform-operator
    provider:
      name: Hazelcast, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MuleSoft
      provider-url: anypoint.mulesoft.com
    name: runtime-fabric-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runtime-fabric-operator.v3.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rtf.operators.mulesoft.com/v1",
                "kind": "RuntimeFabric",
                "metadata": {
                  "name": "runtime-fabric"
                },
                "spec": {
                  "activationData": null,
                  "agent": {
                    "replicas": 1,
                    "app": {
                      "resources": {
                        "limits": {
                          "cpu": "1000m",
                          "memory": "500Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "200Mi"
                        }
                      }
                    },
                    "rtfd": {
                      "resources": {
                        "limits": {
                          "cpu": "200m",
                          "memory": "300Mi"
                        },
                        "requests": {
                          "cpu": "150m",
                          "memory": "200Mi"
                        }
                      },
                      "watch": {
                        "enabled": true,
                        "components": {
                          "deployments": {
                            "enabled": true
                          },
                          "ingress": {
                            "enabled": true
                          },
                          "secrets": {
                            "enabled": true
                          },
                          "persistencegateways": {
                            "enabled": true
                          },
                          "nodes": {
                            "enabled": true
                          },
                          "jobs": {
                            "enabled": true
                          },
                          "routes": {
                            "enabled": true
                          }
                        }
                      },
                      "anypointController": {
                        "enabled": false
                      }
                    }
                  },
                  "resource-cache": {
                    "replicas": 1,
                    "nginx": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "250Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      }
                    },
                    "fetcher": {
                      "resources": {
                        "limits": {
                          "cpu": "50m",
                          "memory": "100Mi"
                        },
                        "requests": {
                          "cpu": "50m",
                          "memory": "50Mi"
                        }
                      }
                    }
                  },
                  "mule-clusterip-service": {
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "500Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "global": {
                    "cluster": {
                      "flavor": "byok",
                      "type": "openshift"
                    },
                    "containerLogPaths": [
                      "/var/lib/docker/containers",
                      "/var/log/containers",
                      "/var/log/pods"
                    ],
                    "core": {
                      "affinity": {},
                      "tolerations": [],
                      "topologySpreadConstraints": [
                        {
                          "maxSkew": 1,
                          "topologyKey": "topology.kubernetes.io/zone",
                          "whenUnsatisfiable": "ScheduleAnyway"
                        }
                      ]
                    },
                    "worker": {
                      "affinity": {},
                      "tolerations": []
                    },
                    "deployment": {
                      "nodeSelector": ""
                    },
                    "image": {
                      "provider": "aws",
                      "pullSecretName": "rtf-pull-secret",
                      "rtfRegistry": "rtf-runtime-registry.kprod.msap.io",
                      "repositoryNamespace": "mulesoft"
                    },
                    "service": {
                      "clusterIp": null
                    },
                    "authorizedNamespaces": false,
                    "fipsEnabled": false,
                    "crds": {
                      "install": true,
                      "keep": true,
                      "flex": {
                        "enabled": false
                      }
                    },
                    "nodeWatcherEnabled": true,
                    "nodeReconciliation": true,
                    "deploymentRateLimitPerSecond": 1
                  },
                  "muleLicense": null,
                  "proxy": {
                    "http_no_proxy": null,
                    "http_proxy": null,
                    "monitoring_proxy": null
                  },
                  "customLog4jEnabled": false
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
          createdAt: "2025-12-09T02:04:18Z"
          description: Runtime Fabric Operator Application from Mulesoft
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/mulesoft/rtf-ocp-operator
          support: MuleSoft
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Runtime Fabric Operator from Mulesoft
              **Activation data**
              Used to install Runtime Fabric on a Kubernetes service. Copy this value from the Runtime Fabric setup page in Runtime Manager.
              **Registry URL**
              The registry from which to retrieve the images needed to install and run Runtime Fabric. If you're using a local registry, specify the URL here.
                * Default registry URLs:
                    - US control plane: rtf-runtime-registry.kprod.msap.io
                    - EU control plane: rtf-runtime-registry.kprod-eu.msap.io
              **Registry pull secret**
              Used to retrieve images from the registry. Change this value only if you did so during the operator installation.
              **Mule license key**
              Your company’s Mule license key. The key is not required during install, but it is required to deploy applications to Runtime Fabric. Must be Base64 encoded.
            displayName: Runtime Fabric
            kind: RuntimeFabric
            name: runtimefabrics.rtf.operators.mulesoft.com
            version: v1
        description: |-
          Anypoint Runtime Fabric is a container service that you install in your existing Red Hat OpenShift cluster that enables you to run Mule applications, composite APIs, and API gateways across any environment with centralized management via Anypoint Platform.
          Capabilities of Runtime Fabric include:
          * Isolation between applications by running a separate Mule runtime server per application.
          * Ability to run multiple versions of Mule runtime server on the same set of resources.
          * Scaling applications across multiple replicas.
          * Automated application fail-over.
          * Application management with Anypoint Runtime Manager.
          Runtime Fabric supports the following Red Hat OpenShift deployment options:
          * Red Hat OpenShift Service on AWS
          * Microsoft Azure Red Hat OpenShift
          * Red Hat OpenShift Dedicated
          * Red Hat OpenShift on IBM Cloud
          * Self-managed Red Hat OpenShift editions (Performance Plus, OCP, Kubernetes engine)
          Runtime Fabric supports Red Hat OpenShift versions 4.17 to 4.20.
        displayName: Runtime Fabric Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - agent
        - rtf
        - runtime
        - fabric
        - mulesoft
        links:
        - name: Runtime Fabric Operator
          url: https://catalog.redhat.com/software/container-stacks/detail/62901512fefb1b137ba23946
        - name: Documentation
          url: https://docs.mulesoft.com/release-notes/runtime-fabric/runtime-fabric
        maintainers:
        - email: support@mulesoft.com
          name: Mulesoft
        maturity: stable
        provider:
          name: MuleSoft
          url: anypoint.mulesoft.com
        relatedImages:
        - quay.io/rtf/kube-rbac-proxy@sha256:a2523c532c0c3d51a5396a901d7ded23e402a9a1492c783aae27af6d0c1d2ec5
        - quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
        - registry.connect.redhat.com/rtf/runtime-fabric-operator@sha256:32476ca3c4943ac8b22ebacec7685402775d562576fbdd53e01ab42803967049
        version: 3.0.1
      entries:
      - name: runtime-fabric-operator.v3.0.1
        version: 3.0.1
      - name: runtime-fabric-operator.v2.11.50
        version: 2.11.50
      name: alpha
    - currentCSV: runtime-fabric-operator.v3.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rtf.operators.mulesoft.com/v1",
                "kind": "RuntimeFabric",
                "metadata": {
                  "name": "runtime-fabric"
                },
                "spec": {
                  "activationData": null,
                  "agent": {
                    "replicas": 1,
                    "app": {
                      "resources": {
                        "limits": {
                          "cpu": "1000m",
                          "memory": "500Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "200Mi"
                        }
                      }
                    },
                    "rtfd": {
                      "resources": {
                        "limits": {
                          "cpu": "200m",
                          "memory": "300Mi"
                        },
                        "requests": {
                          "cpu": "150m",
                          "memory": "200Mi"
                        }
                      },
                      "watch": {
                        "enabled": true,
                        "components": {
                          "deployments": {
                            "enabled": true
                          },
                          "ingress": {
                            "enabled": true
                          },
                          "secrets": {
                            "enabled": true
                          },
                          "persistencegateways": {
                            "enabled": true
                          },
                          "nodes": {
                            "enabled": true
                          },
                          "jobs": {
                            "enabled": true
                          },
                          "routes": {
                            "enabled": true
                          }
                        }
                      },
                      "anypointController": {
                        "enabled": false
                      }
                    }
                  },
                  "resource-cache": {
                    "replicas": 1,
                    "nginx": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "250Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      }
                    },
                    "fetcher": {
                      "resources": {
                        "limits": {
                          "cpu": "50m",
                          "memory": "100Mi"
                        },
                        "requests": {
                          "cpu": "50m",
                          "memory": "50Mi"
                        }
                      }
                    }
                  },
                  "mule-clusterip-service": {
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "500Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "global": {
                    "cluster": {
                      "flavor": "byok",
                      "type": "openshift"
                    },
                    "containerLogPaths": [
                      "/var/lib/docker/containers",
                      "/var/log/containers",
                      "/var/log/pods"
                    ],
                    "core": {
                      "affinity": {},
                      "tolerations": [],
                      "topologySpreadConstraints": [
                        {
                          "maxSkew": 1,
                          "topologyKey": "topology.kubernetes.io/zone",
                          "whenUnsatisfiable": "ScheduleAnyway"
                        }
                      ]
                    },
                    "worker": {
                      "affinity": {},
                      "tolerations": []
                    },
                    "deployment": {
                      "nodeSelector": ""
                    },
                    "image": {
                      "provider": "aws",
                      "pullSecretName": "rtf-pull-secret",
                      "rtfRegistry": "rtf-runtime-registry.kprod.msap.io",
                      "repositoryNamespace": "mulesoft"
                    },
                    "service": {
                      "clusterIp": null
                    },
                    "authorizedNamespaces": false,
                    "fipsEnabled": false,
                    "crds": {
                      "install": true,
                      "keep": true,
                      "flex": {
                        "enabled": false
                      }
                    },
                    "nodeWatcherEnabled": true,
                    "nodeReconciliation": true,
                    "deploymentRateLimitPerSecond": 1
                  },
                  "muleLicense": null,
                  "proxy": {
                    "http_no_proxy": null,
                    "http_proxy": null,
                    "monitoring_proxy": null
                  },
                  "customLog4jEnabled": false
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
          createdAt: "2025-12-09T02:04:18Z"
          description: Runtime Fabric Operator Application from Mulesoft
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/mulesoft/rtf-ocp-operator
          support: MuleSoft
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Runtime Fabric Operator from Mulesoft
              **Activation data**
              Used to install Runtime Fabric on a Kubernetes service. Copy this value from the Runtime Fabric setup page in Runtime Manager.
              **Registry URL**
              The registry from which to retrieve the images needed to install and run Runtime Fabric. If you're using a local registry, specify the URL here.
                * Default registry URLs:
                    - US control plane: rtf-runtime-registry.kprod.msap.io
                    - EU control plane: rtf-runtime-registry.kprod-eu.msap.io
              **Registry pull secret**
              Used to retrieve images from the registry. Change this value only if you did so during the operator installation.
              **Mule license key**
              Your company’s Mule license key. The key is not required during install, but it is required to deploy applications to Runtime Fabric. Must be Base64 encoded.
            displayName: Runtime Fabric
            kind: RuntimeFabric
            name: runtimefabrics.rtf.operators.mulesoft.com
            version: v1
        description: |-
          Anypoint Runtime Fabric is a container service that you install in your existing Red Hat OpenShift cluster that enables you to run Mule applications, composite APIs, and API gateways across any environment with centralized management via Anypoint Platform.
          Capabilities of Runtime Fabric include:
          * Isolation between applications by running a separate Mule runtime server per application.
          * Ability to run multiple versions of Mule runtime server on the same set of resources.
          * Scaling applications across multiple replicas.
          * Automated application fail-over.
          * Application management with Anypoint Runtime Manager.
          Runtime Fabric supports the following Red Hat OpenShift deployment options:
          * Red Hat OpenShift Service on AWS
          * Microsoft Azure Red Hat OpenShift
          * Red Hat OpenShift Dedicated
          * Red Hat OpenShift on IBM Cloud
          * Self-managed Red Hat OpenShift editions (Performance Plus, OCP, Kubernetes engine)
          Runtime Fabric supports Red Hat OpenShift versions 4.17 to 4.20.
        displayName: Runtime Fabric Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - agent
        - rtf
        - runtime
        - fabric
        - mulesoft
        links:
        - name: Runtime Fabric Operator
          url: https://catalog.redhat.com/software/container-stacks/detail/62901512fefb1b137ba23946
        - name: Documentation
          url: https://docs.mulesoft.com/release-notes/runtime-fabric/runtime-fabric
        maintainers:
        - email: support@mulesoft.com
          name: Mulesoft
        maturity: stable
        provider:
          name: MuleSoft
          url: anypoint.mulesoft.com
        relatedImages:
        - quay.io/rtf/kube-rbac-proxy@sha256:a2523c532c0c3d51a5396a901d7ded23e402a9a1492c783aae27af6d0c1d2ec5
        - quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
        - registry.connect.redhat.com/rtf/runtime-fabric-operator@sha256:32476ca3c4943ac8b22ebacec7685402775d562576fbdd53e01ab42803967049
        version: 3.0.1
      entries:
      - name: runtime-fabric-operator.v3.0.1
        version: 3.0.1
      - name: runtime-fabric-operator.v2.11.50
        version: 2.11.50
      name: stable
    defaultChannel: stable
    packageName: runtime-fabric-operator
    provider:
      name: MuleSoft
      url: anypoint.mulesoft.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: https://stakater.com
    name: tenant-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tenant-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-03-19T13:30:50Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.2.1
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.tenantoperator.stakater.com
            version: v1beta1
          - description: TemplateGroupInstance is the Schema for the templategroupinstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:fb7bc294096fa78f199d909f6ff8f7fcbcd771c3dc19f3f767d77dd13a2081a9
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:a899d60b31efd5cf2358efcd48737b1c4f4a0356ab6c0abe7a5f62ea825a52cd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:a35b96eacb4e46114b39354f66429f8f05df09c55c98c9416b4ffa2768310ef7
        version: 1.2.1
      entries:
      - name: tenant-operator.v1.2.1
        version: 1.2.1
      name: release-1.2
    - currentCSV: tenant-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-06-11T15:25:04Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.3.0
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.tenantoperator.stakater.com
            version: v1beta1
          - description: TemplateGroupInstance is the Schema for the templategroupinstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:10e4bdca44a1a0cdef27b415765238249f81ae6ba53f94f992e37d350bc9f800
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:e88aa5b008ece406bca35ec22fdc87c842544049d613d4d81c8bc5dd2fb50812
        version: 1.3.0
      entries:
      - name: tenant-operator.v1.3.0
        version: 1.3.0
      name: release-1.3
    - currentCSV: tenant-operator.v1.4.2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-09-08T08:14:28Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.4.2
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.tenantoperator.stakater.com
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:3e8aa02c71fc99e5eeabfce39c8fc24a9f9e8e826a58f9ff59c8b7c0e9c14e0d
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:7ee14c0974d1eda849d2c199a56786b0ae777ef6569085be917449f1998b1158
        version: 1.4.2
      entries:
      - name: tenant-operator.v1.4.2
        version: 1.4.2
      name: release-1.4
    - currentCSV: tenant-operator.v1.5.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-11-11T08:34:12Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.5.1
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:8f840a8aef0827b7e66c743477c5380fbe47597e91c7c600eeb7fea5475f5676
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:9f8d67e1b9401483714cfe1bb61504cdfae8efeab9c0e730a3983330c8095c16
        version: 1.5.1
      entries:
      - name: tenant-operator.v1.5.1
        version: 1.5.1
      name: release-1.5
    defaultChannel: release-1.5
    packageName: tenant-operator
    provider:
      name: Stakater
      url: https://stakater.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: EnterpriseDB Corporation
      provider-url: ""
    name: pg4k-pgd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pg4k-pgd.v1.2.0-rc1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg-global-cluster:1.2.0-rc1@sha256:bff3aac2979b8cb9eeb0f1a107aa10400ff55564079d6879a8a9758ba20c4ace
          createdAt: "2025-12-18T07:38:31Z"
          description: EDB Postgres Distributed for Kubernetes is an operator designed
            to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both
            in a single Kubernetes cluster or across multiple ones.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: EnterpriseDB Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A cluster-wide catalog of PGD Group operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: A catalog of PGD Group operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: Object to clean up a PGD Group
            displayName: PGD Group Cleanup
            kind: PGDGroupCleanup
            name: pgdgroupcleanups.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: A group of Postgres Clusters
            displayName: PGD Group
            kind: PGDGroup
            name: pgdgroups.pgd.k8s.enterprisedb.io
            version: v1beta1
        description: |
          EDB Postgres Distributed for Kubernetes is an operator designed to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both in a single Kubernetes cluster or across multiple ones.

          EDB Postgres Distributed is an extension for PostgreSQL that provides multi-master replication and data distribution with advanced conflict management, data-loss protection, and throughput up to 5X faster than native logical replication. It enables distributed PostgreSQL clusters with high availability up to five 9s.

          This operator requires access to the EDB private repositories.
        displayName: EDB Postgres Distributed for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - distributed
        - postgres
        - database
        - sql
        - cloud
        - native
        - edb
        - enterprisedb
        - cnp
        - pg4k
        - pgd
        links:
        - name: 'Documentation: EDB Postgres Distributed v5'
          url: https://www.enterprisedb.com/docs/pgd/latest/
        - name: 'Documentation: EDB Postgres Distributed for Kubernetes'
          url: https://www.enterprisedb.com/docs/postgres_distributed_for_kubernetes/latest/
        maintainers:
        - email: sales@enterprisedb.com
          name: Sales
        - email: support@enterprisedb.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg-global-cluster@sha256:bff3aac2979b8cb9eeb0f1a107aa10400ff55564079d6879a8a9758ba20c4ace
        - registry.connect.redhat.com/enterprisedb/pg4k-pgd@sha256:8cf1cadef453cd8dd0a0bfaa3e3dd6a0d741f86ad42fbb9ac574420445274ab5
        version: 1.2.0-rc1
      entries:
      - name: pg4k-pgd.v1.2.0-rc1
        version: 1.2.0-rc1
      name: candidate
    - currentCSV: pg4k-pgd.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgd.k8s.enterprisedb.io/v1beta1",
                "kind": "PGDGroup",
                "metadata": {
                  "name": "region-a"
                },
                "spec": {
                  "backup": null,
                  "cnp": {
                    "storage": {
                      "size": "1Gi"
                    },
                    "walStorage": {
                      "size": "1Gi"
                    }
                  },
                  "connectivity": {
                    "dns": {
                      "additional": [
                        {
                          "domain": "alternate.domain"
                        },
                        {
                          "domain": "my.domain",
                          "hostSuffix": "-dc1"
                        }
                      ]
                    },
                    "tls": {
                      "clientCert": {
                        "caCertSecret": "client-ca-key-pair",
                        "certManager": {
                          "spec": {
                            "issuerRef": {
                              "group": "cert-manager.io",
                              "kind": "Issuer",
                              "name": "client-ca-issuer"
                            }
                          }
                        }
                      },
                      "mode": "verify-ca",
                      "serverCert": {
                        "caCertSecret": "server-ca-key-pair",
                        "certManager": {
                          "spec": {
                            "issuerRef": {
                              "group": "cert-manager.io",
                              "kind": "Issuer",
                              "name": "server-ca-issuer"
                            }
                          }
                        }
                      }
                    }
                  },
                  "instances": 2,
                  "pgd": {
                    "parentGroup": {
                      "create": true,
                      "name": "world"
                    }
                  },
                  "proxyInstances": 2,
                  "witness": {
                    "storage": {
                      "size": "1Gi"
                    },
                    "walStorage": {
                      "size": "1Gi"
                    }
                  },
                  "witnessInstances": 1
                }
              },
              {
                "apiVersion": "pgd.k8s.enterprisedb.io/v1beta1",
                "kind": "PGDGroupCleanup",
                "metadata": {
                  "name": "region-b-cleanup"
                },
                "spec": {
                  "executor": "region-a",
                  "target": "region-b"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s_enterprise_pgd/pg4k-pgd-openshift@sha256:5127d913011619d61fd06b27be3c709df2236a4b5c0254fa58632698d58b50fb
          createdAt: "2025-09-26T01:49:29Z"
          description: EDB Postgres Distributed for Kubernetes is an operator designed
            to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both
            in a single Kubernetes cluster or across multiple ones.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: EnterpriseDB Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterImageCatalog
            name: clusterimagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - kind: ImageCatalog
            name: imagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: Object to clean up a PGD Group
            displayName: PGD Group Cleanup
            kind: PGDGroupCleanup
            name: pgdgroupcleanups.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: A group of Postgres Clusters
            displayName: PGD Group
            kind: PGDGroup
            name: pgdgroups.pgd.k8s.enterprisedb.io
            version: v1beta1
        description: |
          EDB Postgres Distributed for Kubernetes is an operator designed to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both in a single Kubernetes cluster or across multiple ones.

          EDB Postgres Distributed is an extension for PostgreSQL that provides multi-master replication and data distribution with advanced conflict management, data-loss protection, and throughput up to 5X faster than native logical replication. It enables distributed PostgreSQL clusters with high availability up to five 9s.

          This operator requires access to the EDB private repositories.
        displayName: EDB Postgres Distributed for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - distributed
        - postgres
        - database
        - sql
        - cloud
        - native
        - edb
        - enterprisedb
        - cnp
        - pg4k
        - pgd
        links:
        - name: 'Documentation: EDB Postgres Distributed v5'
          url: https://www.enterprisedb.com/docs/pgd/latest/
        - name: 'Documentation: EDB Postgres Distributed for Kubernetes'
          url: https://www.enterprisedb.com/docs/postgres_distributed_for_kubernetes/latest/
        maintainers:
        - email: sales@enterprisedb.com
          name: Sales
        - email: support@enterprisedb.com
          name: Support
        maturity: alpha
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - docker.enterprisedb.com/k8s_enterprise_pgd/pg4k-pgd-openshift@sha256:5127d913011619d61fd06b27be3c709df2236a4b5c0254fa58632698d58b50fb
        - registry.connect.redhat.com/enterprisedb/pg4k-pgd@sha256:fb206b95690e9604c41715369c69125a906b866dc35cfc5c63638ce7a4337fa2
        version: 1.1.3
      entries:
      - name: pg4k-pgd.v1.1.3
        version: 1.1.3
      - name: pg4k-pgd.v1.1.2
        version: 1.1.2
      - name: pg4k-pgd.v1.1.1
        version: 1.1.1
      - name: pg4k-pgd.v1.1.0
        version: 1.1.0
      - name: pg4k-pgd.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: stable
    packageName: pg4k-pgd
    provider:
      name: EnterpriseDB Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ApeCloud
      provider-url: https://apecloud.com
    name: kubeblocks
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubeblocks.v1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.io/apecloud/kubeblocks@sha256:44c546d7a0b3894f7a144aaf27e2690c76e3310cd8907c37b23bc2eb28a9763f
          createdAt: "2025-10-31T02:47:13Z"
          description: KubeBlocks is an open-source control plane that runs and manages
            databases, message queues and other stateful applications on K8s.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/apecloud/kubeblocks
          support: ApeCloud
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ActionSet
            name: actionsets.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: Addon
            name: addons.extensions.kubeblocks.io
            version: v1alpha1
          - kind: BackupPolicy
            name: backuppolicies.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: BackupPolicyTemplate
            name: backuppolicytemplates.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: BackupRepo
            name: backuprepos.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: Backup
            name: backups.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: BackupSchedule
            name: backupschedules.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: ClusterDefinition
            name: clusterdefinitions.apps.kubeblocks.io
            version: v1
          - kind: Cluster
            name: clusters.apps.kubeblocks.io
            version: v1
          - kind: ComponentDefinition
            name: componentdefinitions.apps.kubeblocks.io
            version: v1
          - kind: ComponentParameter
            name: componentparameters.parameters.kubeblocks.io
            version: v1alpha1
          - kind: Component
            name: components.apps.kubeblocks.io
            version: v1
          - kind: ComponentVersion
            name: componentversions.apps.kubeblocks.io
            version: v1
          - kind: ConfigConstraint
            name: configconstraints.apps.kubeblocks.io
            version: v1beta1
          - kind: InstanceSet
            name: instancesets.workloads.kubeblocks.io
            version: v1
          - kind: NodeCountScaler
            name: nodecountscalers.experimental.kubeblocks.io
            version: v1alpha1
          - kind: OpsDefinition
            name: opsdefinitions.operations.kubeblocks.io
            version: v1alpha1
          - kind: OpsRequest
            name: opsrequests.operations.kubeblocks.io
            version: v1alpha1
          - kind: ParamConfigRenderer
            name: paramconfigrenderers.parameters.kubeblocks.io
            version: v1alpha1
          - kind: Parameter
            name: parameters.parameters.kubeblocks.io
            version: v1alpha1
          - kind: ParametersDefinition
            name: parametersdefinitions.parameters.kubeblocks.io
            version: v1alpha1
          - kind: ReconciliationTrace
            name: reconciliationtraces.trace.kubeblocks.io
            version: v1
          - kind: Restore
            name: restores.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: ServiceDescriptor
            name: servicedescriptors.apps.kubeblocks.io
            version: v1
          - kind: ShardingDefinition
            name: shardingdefinitions.apps.kubeblocks.io
            version: v1
          - kind: SidecarDefinition
            name: sidecardefinitions.apps.kubeblocks.io
            version: v1
          - kind: StorageProvider
            name: storageproviders.dataprotection.kubeblocks.io
            version: v1alpha1
        description: KubeBlocks is an open-source control plane that runs and manages
          databases, message queues and other stateful applications on K8s.
        displayName: KubeBlocks
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubeblocks
        - database
        - mysql
        - postgresql
        - redis
        - mongodb
        - kafka
        - sql
        links:
        - name: Documentation
          url: https://kubeblocks.io
        - name: GitHub
          url: https://github.com/apecloud/kubeblocks
        - name: Slack Community
          url: https://kubeblocks.slack.com
        maintainers:
        - email: kubeblocks@apecloud.com
          name: KubeBlocks Team
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: ApeCloud
          url: https://apecloud.com
        relatedImages:
        - docker.io/apecloud/kubeblocks@sha256:44c546d7a0b3894f7a144aaf27e2690c76e3310cd8907c37b23bc2eb28a9763f
        - registry.connect.redhat.com/apecloud/kubeblocks@sha256:84d3657b75820b61750dcb91137e88d3f3c64c0e8fcf137ec271555bfaf62f15
        version: 1.0.1
      entries:
      - name: kubeblocks.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: stable
    packageName: kubeblocks
    provider:
      name: ApeCloud
      url: https://apecloud.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: ""
    name: mto-dependencies-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mto-dependencies-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "Dex",
                "metadata": {
                  "name": "dex-sample"
                },
                "spec": {
                  "affinity": {},
                  "autoscaling": {
                    "enabled": false,
                    "maxReplicas": 100,
                    "minReplicas": 1,
                    "targetCPUUtilizationPercentage": 80
                  },
                  "commonLabels": {},
                  "config": {},
                  "configSecret": {
                    "create": true,
                    "name": ""
                  },
                  "deploymentAnnotations": {},
                  "deploymentLabels": {},
                  "env": {},
                  "envFrom": [],
                  "envVars": [],
                  "fullnameOverride": "",
                  "grpc": {
                    "enabled": false
                  },
                  "hostAliases": [],
                  "https": {
                    "enabled": false
                  },
                  "image": {
                    "digest": "",
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/dexidp/dex",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "ingress": {
                    "annotations": {},
                    "className": "",
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "chart-example.local",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": []
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "egressRules": [],
                    "enabled": false
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podDisruptionBudget": {
                    "enabled": false,
                    "maxUnavailable": null,
                    "minAvailable": null
                  },
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": "",
                  "rbac": {
                    "create": true,
                    "createClusterScoped": true
                  },
                  "replicaCount": 1,
                  "resources": {},
                  "revisionHistoryLimit": 10,
                  "securityContext": {},
                  "service": {
                    "annotations": {},
                    "clusterIP": "",
                    "loadBalancerIP": "",
                    "ports": {
                      "grpc": {
                        "nodePort": null,
                        "port": 5557
                      },
                      "http": {
                        "nodePort": null,
                        "port": 5556
                      },
                      "https": {
                        "nodePort": null,
                        "port": 5554
                      }
                    },
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": ""
                  },
                  "serviceMonitor": {
                    "annotations": {},
                    "bearerTokenFile": null,
                    "enabled": false,
                    "honorLabels": false,
                    "interval": null,
                    "labels": {},
                    "metricRelabelings": [],
                    "namespace": "",
                    "path": "/metrics",
                    "relabelings": [],
                    "scheme": "",
                    "scrapeTimeout": null,
                    "tlsConfig": {}
                  },
                  "strategy": {},
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "volumeMounts": [],
                  "volumes": []
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "DexConfigOperator",
                "metadata": {
                  "name": "dexconfigoperator-sample"
                },
                "spec": {
                  "controllerManager": {
                    "manager": {
                      "args": [
                        "--metrics-bind-address=:8443",
                        "--leader-elect",
                        "--health-probe-bind-address=:8081"
                      ],
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        }
                      },
                      "env": {
                        "dexNamespace": "dex"
                      },
                      "image": {
                        "repository": "ghcr.io/stakater/public/dex-config-operator",
                        "tag": "v0.0.1"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "128Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "64Mi"
                        }
                      }
                    },
                    "podSecurityContext": {
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "replicas": 1,
                    "serviceAccount": {
                      "annotations": {}
                    }
                  },
                  "kubernetesClusterDomain": "cluster.local",
                  "metricsService": {
                    "ports": [
                      {
                        "name": "https",
                        "port": 8443,
                        "protocol": "TCP",
                        "targetPort": 8443
                      }
                    ],
                    "type": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "FinOpsOperator",
                "metadata": {
                  "name": "finopsoperator-sample"
                },
                "spec": {
                  "controllerManager": {
                    "manager": {
                      "args": [
                        "--metrics-bind-address=:8443",
                        "--leader-elect",
                        "--health-probe-bind-address=:8081"
                      ],
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        }
                      },
                      "env": {
                        "opencostDeploymentName": "finops-operator-opencost",
                        "opencostDeploymentNamespace": "finops-operator-system",
                        "operatorImage": "registrypath/to/finops-operator:v0.1.14"
                      },
                      "image": {
                        "repository": "ghcr.io/stakater/finops-operator",
                        "tag": "v0.1.14"
                      }
                    },
                    "podSecurityContext": {
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "replicas": 1,
                    "serviceAccount": {
                      "annotations": {}
                    }
                  },
                  "finops-gateway": {
                    "finopsGatewayContainer": {
                      "env": {
                        "enableAuth": "true",
                        "mtoGatewayUrl": "https://mto-zain-gateway.apps.xy1462m7s.stakater.cloud",
                        "port": "8080"
                      }
                    },
                    "gateway": {
                      "finopsGatewayContainer": {
                        "containerSecurityContext": {},
                        "env": {
                          "enableAuth": "false",
                          "mtoGatewayUrl": "",
                          "port": "8080"
                        },
                        "image": {
                          "repository": "ghcr.io/stakater/finops-gateway",
                          "tag": "v0.1.12"
                        }
                      },
                      "nodeSelector": {},
                      "replicas": 1,
                      "tolerations": [],
                      "topologySpreadConstraints": []
                    },
                    "global": {},
                    "imagePullSecrets": [],
                    "kubernetesClusterDomain": "cluster.local",
                    "service": {
                      "ports": [
                        {
                          "name": "http",
                          "port": 8080,
                          "targetPort": 8080
                        }
                      ],
                      "type": "ClusterIP"
                    }
                  },
                  "kubernetesClusterDomain": "cluster.local",
                  "metricsService": {
                    "ports": [
                      {
                        "name": "https",
                        "port": 8443,
                        "protocol": "TCP",
                        "targetPort": 8443
                      }
                    ],
                    "type": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "KubeStateMetrics",
                "metadata": {
                  "name": "kubestatemetrics-sample"
                },
                "spec": {
                  "affinity": {},
                  "annotations": {},
                  "automountServiceAccountToken": true,
                  "autosharding": {
                    "enabled": false
                  },
                  "collectors": [
                    "certificatesigningrequests",
                    "configmaps",
                    "cronjobs",
                    "daemonsets",
                    "deployments",
                    "endpoints",
                    "horizontalpodautoscalers",
                    "ingresses",
                    "jobs",
                    "leases",
                    "limitranges",
                    "mutatingwebhookconfigurations",
                    "namespaces",
                    "networkpolicies",
                    "nodes",
                    "persistentvolumeclaims",
                    "persistentvolumes",
                    "poddisruptionbudgets",
                    "pods",
                    "replicasets",
                    "replicationcontrollers",
                    "resourcequotas",
                    "secrets",
                    "services",
                    "statefulsets",
                    "storageclasses",
                    "validatingwebhookconfigurations",
                    "volumeattachments"
                  ],
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "readOnlyRootFilesystem": true
                  },
                  "containers": [],
                  "customLabels": {},
                  "customResourceState": {
                    "config": {},
                    "create": true,
                    "enabled": false,
                    "key": "config.yaml",
                    "name": ""
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "ClusterFirst",
                  "env": [],
                  "extraArgs": [],
                  "extraManifests": [],
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": ""
                  },
                  "hostNetwork": false,
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "registry": "registry.k8s.io",
                    "repository": "kube-state-metrics/kube-state-metrics",
                    "sha": "",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "initContainers": [],
                  "kubeRBACProxy": {
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true
                    },
                    "enabled": false,
                    "extraArgs": [],
                    "ignoreProbePaths": true,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "registry": "quay.io",
                      "repository": "brancz/kube-rbac-proxy",
                      "sha": "",
                      "tag": "v0.19.1"
                    },
                    "proxyEndpointsPort": 8888,
                    "resources": {},
                    "volumeMounts": []
                  },
                  "kubeconfig": {
                    "enabled": false,
                    "secret": null
                  },
                  "labels": {},
                  "livenessProbe": {
                    "failureThreshold": 3,
                    "httpGet": {
                      "httpHeaders": [],
                      "scheme": "http"
                    },
                    "initialDelaySeconds": 5,
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 5
                  },
                  "metricAllowlist": [],
                  "metricAnnotationsAllowList": [],
                  "metricDenylist": [],
                  "metricLabelsAllowlist": [],
                  "namespaceOverride": "",
                  "namespaces": "",
                  "namespacesDenylist": "",
                  "networkPolicy": {
                    "enabled": false,
                    "flavor": "kubernetes"
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podDisruptionBudget": {},
                  "podLabels": {},
                  "prometheus": {
                    "monitor": {
                      "additionalLabels": {},
                      "annotations": {},
                      "enabled": false,
                      "http": {
                        "bearerTokenFile": "",
                        "bearerTokenSecret": {},
                        "enableHttp2": false,
                        "honorLabels": false,
                        "interval": "",
                        "metricRelabelings": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "scheme": "",
                        "scrapeTimeout": "",
                        "tlsConfig": {}
                      },
                      "jobLabel": "",
                      "labelLimit": 0,
                      "labelNameLengthLimit": 0,
                      "labelValueLengthLimit": 0,
                      "metrics": {
                        "bearerTokenFile": "",
                        "bearerTokenSecret": {},
                        "enableHttp2": false,
                        "honorLabels": false,
                        "interval": "",
                        "metricRelabelings": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "scheme": "",
                        "scrapeTimeout": "",
                        "tlsConfig": {}
                      },
                      "namespace": "",
                      "namespaceSelector": [],
                      "podTargetLabels": [],
                      "sampleLimit": 0,
                      "selectorOverride": {},
                      "targetLabels": [],
                      "targetLimit": 0
                    },
                    "scrapeconfig": {
                      "additionalLabels": {},
                      "annotations": {},
                      "enableHttp2": false,
                      "enabled": false,
                      "honorLabels": true,
                      "jobName": "kube-state-metrics",
                      "labelLimit": 0,
                      "labelNameLengthLimit": 0,
                      "labelValueLengthLimit": 0,
                      "metricRelabelings": [],
                      "proxyUrl": "",
                      "relabelings": [],
                      "sampleLimit": 0,
                      "scheme": "",
                      "scrapeInterval": "",
                      "scrapeTimeout": "",
                      "staticConfigLabels": {},
                      "targetLimit": 0,
                      "tlsConfig": {}
                    }
                  },
                  "prometheusScrape": true,
                  "rbac": {
                    "create": true,
                    "extraRules": [],
                    "useClusterRole": true
                  },
                  "readinessProbe": {
                    "failureThreshold": 3,
                    "httpGet": {
                      "httpHeaders": [],
                      "scheme": "http"
                    },
                    "initialDelaySeconds": 5,
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 5
                  },
                  "releaseLabel": false,
                  "releaseNamespace": false,
                  "replicas": 1,
                  "resources": {},
                  "revisionHistoryLimit": 10,
                  "securityContext": {
                    "enabled": true,
                    "fsGroup": 65534,
                    "runAsGroup": 65534,
                    "runAsNonRoot": true,
                    "runAsUser": 65534,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "selectorOverride": {},
                  "selfMonitor": {
                    "enabled": false
                  },
                  "service": {
                    "annotations": {},
                    "clusterIP": "",
                    "ipDualStack": {
                      "enabled": false,
                      "ipFamilies": [
                        "IPv6",
                        "IPv4"
                      ],
                      "ipFamilyPolicy": "PreferDualStack"
                    },
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePort": 0,
                    "port": 8080,
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "imagePullSecrets": [],
                    "name": null
                  },
                  "startupProbe": {
                    "enabled": false,
                    "failureThreshold": 3,
                    "httpGet": {
                      "httpHeaders": [],
                      "scheme": "http"
                    },
                    "initialDelaySeconds": 0,
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 5
                  },
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "verticalPodAutoscaler": {
                    "controlledResources": [],
                    "enabled": false,
                    "maxAllowed": {},
                    "minAllowed": {}
                  },
                  "volumeMounts": [],
                  "volumes": []
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "OpenCost",
                "metadata": {
                  "name": "opencost-sample"
                },
                "spec": {
                  "annotations": {},
                  "clusterName": "cluster.local",
                  "extraVolumes": [],
                  "fullnameOverride": "",
                  "imagePullSecrets": [],
                  "loglevel": "info",
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicies": {
                    "enabled": false,
                    "extraEgress": [],
                    "prometheus": {
                      "labels": {
                        "app.kubernetes.io/name": "prometheus"
                      },
                      "namespace": "prometheus-system",
                      "port": 9090
                    }
                  },
                  "opencost": {
                    "affinity": {},
                    "carbonCost": {
                      "enabled": false
                    },
                    "cloudCost": {
                      "enabled": false,
                      "monthToDateInterval": 6,
                      "queryWindowDays": 7,
                      "refreshRateHours": 6,
                      "runWindowDays": 3
                    },
                    "cloudIntegrationSecret": "",
                    "customPricing": {
                      "configPath": "/tmp/custom-config",
                      "configmapName": "custom-pricing-model",
                      "costModel": {
                        "CPU": 1.25,
                        "GPU": 0.95,
                        "RAM": 0.5,
                        "description": "Modified pricing configuration.",
                        "internetNetworkEgress": 0.12,
                        "regionNetworkEgress": 0.01,
                        "spotCPU": 0.006655,
                        "spotRAM": 0.000892,
                        "storage": 0.25,
                        "zoneNetworkEgress": 0.01
                      },
                      "createConfigmap": true,
                      "enabled": false,
                      "provider": "custom"
                    },
                    "exporter": {
                      "apiIngress": {
                        "annotations": {},
                        "enabled": false,
                        "hosts": [
                          {
                            "host": "example.local",
                            "paths": [
                              {
                                "path": "/",
                                "pathType": "Prefix"
                              }
                            ]
                          }
                        ],
                        "ingressClassName": "",
                        "servicePort": "http",
                        "tls": []
                      },
                      "apiPort": 9003,
                      "aws": {
                        "access_key_id": "",
                        "secret_access_key": ""
                      },
                      "cloudProviderApiKey": "",
                      "collectorDataSource": {
                        "enabled": false,
                        "networkPort": 3001,
                        "retention10m": 36,
                        "retention1d": 15,
                        "retention1h": 49,
                        "scrapeInterval": "30s"
                      },
                      "command": [],
                      "csv_path": "",
                      "defaultClusterId": "default-cluster",
                      "env": [],
                      "extraArgs": [],
                      "extraEnv": {},
                      "extraVolumeMounts": [],
                      "image": {
                        "fullImageName": null,
                        "pullPolicy": "IfNotPresent",
                        "registry": "ghcr.io",
                        "repository": "opencost/opencost",
                        "tag": "1.117.3@sha256:09fae89c4544ec2a891e2902e88ce3137d7032c6edbe0fd97441aaee7bdbea54"
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 10,
                        "path": "/healthz",
                        "periodSeconds": 20
                      },
                      "persistence": {
                        "accessMode": "",
                        "annotations": {},
                        "enabled": false,
                        "mountPath": "/mnt/export",
                        "size": "",
                        "storageClass": ""
                      },
                      "prometheusDataSource": {
                        "queryResolutionSeconds": 300
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 10,
                        "path": "/healthz",
                        "periodSeconds": 10
                      },
                      "replicas": 1,
                      "resources": {
                        "limits": {
                          "memory": "1Gi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "55Mi"
                        }
                      },
                      "securityContext": {},
                      "startupProbe": {
                        "enabled": true,
                        "failureThreshold": 30,
                        "initialDelaySeconds": 10,
                        "path": "/healthz",
                        "periodSeconds": 5
                      }
                    },
                    "extraContainers": [],
                    "metrics": {
                      "config": {
                        "configmapName": "custom-metrics",
                        "disabledMetrics": [],
                        "enabled": false
                      },
                      "kubeStateMetrics": {
                        "emitKsmV1Metrics": null,
                        "emitKsmV1MetricsOnly": null,
                        "emitNamespaceAnnotations": null,
                        "emitPodAnnotations": null
                      },
                      "serviceMonitor": {
                        "additionalLabels": {},
                        "enabled": false,
                        "extraEndpoints": [],
                        "honorLabels": true,
                        "metricRelabelings": [],
                        "namespace": "",
                        "relabelings": [],
                        "scheme": "http",
                        "scrapeInterval": "30s",
                        "scrapeTimeout": "10s",
                        "tlsConfig": {}
                      }
                    },
                    "nodeSelector": {},
                    "platforms": {
                      "openshift": {
                        "createMonitoringClusterRoleBinding": false,
                        "createMonitoringResourceReaderRoleBinding": false,
                        "enablePromAccess": false,
                        "enableSCC": false,
                        "enabled": false,
                        "monitoringServiceAccountName": "prometheus-k8s",
                        "monitoringServiceAccountNamespace": "openshift-monitoring"
                      }
                    },
                    "prometheus": {
                      "amp": {
                        "enabled": false,
                        "workspaceId": ""
                      },
                      "bearer_token": "",
                      "bearer_token_key": "DB_BEARER_TOKEN",
                      "existingSecretName": null,
                      "external": {
                        "enabled": false,
                        "url": "https://prometheus.example.com/prometheus"
                      },
                      "insecureSkipVerify": false,
                      "internal": {
                        "enabled": true,
                        "namespaceName": "prometheus-system",
                        "path": "",
                        "port": 80,
                        "scheme": "http",
                        "serviceName": "prometheus-server"
                      },
                      "kubeRBACProxy": false,
                      "password": "",
                      "password_key": "DB_BASIC_AUTH_PW",
                      "secret_name": null,
                      "thanos": {
                        "enabled": false,
                        "external": {
                          "enabled": false,
                          "url": "https://thanos-query.example.com/thanos"
                        },
                        "internal": {
                          "enabled": true,
                          "namespaceName": "opencost",
                          "port": 10901,
                          "scheme": "http",
                          "serviceName": "my-thanos-query"
                        },
                        "maxSourceResolution": "",
                        "queryOffset": ""
                      },
                      "username": "",
                      "username_key": "DB_BASIC_AUTH_USERNAME"
                    },
                    "retention1d": 15,
                    "retention1h": 49,
                    "sigV4Proxy": {
                      "extraEnv": null,
                      "host": "aps-workspaces.us-west-2.amazonaws.com",
                      "image": "public.ecr.aws/aws-observability/aws-sigv4-proxy@sha256:2768495a4e331852aa4f206ad728f5e65b2c8680715ae984d1580ca1029f8438",
                      "imagePullPolicy": "IfNotPresent",
                      "name": "aps",
                      "port": 8005,
                      "region": "us-west-2",
                      "resources": {},
                      "securityContext": {}
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "ui": {
                      "enabled": true,
                      "extraEnv": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "fullImageName": null,
                        "pullPolicy": "IfNotPresent",
                        "registry": "ghcr.io",
                        "repository": "opencost/opencost-ui",
                        "tag": "1.117.3@sha256:727b95405e8c749ddbaa3bd97b93d9c0e246faeb9be9d370dd93ae6b31cdb0c2"
                      },
                      "ingress": {
                        "annotations": {},
                        "enabled": false,
                        "hosts": [
                          {
                            "host": "example.local",
                            "paths": [
                              "/"
                            ]
                          }
                        ],
                        "ingressClassName": "",
                        "servicePort": "http-ui",
                        "tls": []
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 30,
                        "path": "/healthz",
                        "periodSeconds": 10
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 30,
                        "path": "/healthz",
                        "periodSeconds": 10
                      },
                      "resources": {
                        "limits": {
                          "memory": "1Gi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "55Mi"
                        }
                      },
                      "route": {
                        "annotations": {},
                        "enabled": false,
                        "host": "example.local",
                        "path": null,
                        "targetPort": "http-ui",
                        "tls": []
                      },
                      "securityContext": {},
                      "uiPath": "/",
                      "uiPort": 9090,
                      "useDefaultFqdn": false,
                      "useIPv6": true
                    }
                  },
                  "pdb": {
                    "enabled": false,
                    "maxUnavailable": null,
                    "minAvailable": null
                  },
                  "plugins": {
                    "configs": null,
                    "enabled": false,
                    "folder": "/opt/opencost/plugin",
                    "install": {
                      "enabled": true,
                      "fullImageName": "curlimages/curl:latest",
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "runAsUser": 1000,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      }
                    }
                  },
                  "podAnnotations": {},
                  "podAutomountServiceAccountToken": true,
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": null,
                  "rbac": {
                    "enabled": true
                  },
                  "secretAnnotations": {},
                  "service": {
                    "annotations": {},
                    "enabled": true,
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerSourceRanges": [],
                    "nodePort": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "updateStrategy": {
                    "rollingUpdate": {
                      "maxSurge": 1,
                      "maxUnavailable": 1
                    },
                    "type": "RollingUpdate"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "Postgres",
                "metadata": {
                  "name": "postgres-sample"
                },
                "spec": {
                  "architecture": "standalone",
                  "audit": {
                    "clientMinMessages": "error",
                    "logConnections": false,
                    "logDisconnections": false,
                    "logHostname": false,
                    "logLinePrefix": "",
                    "logTimezone": "",
                    "pgAuditLog": "",
                    "pgAuditLogCatalog": "off"
                  },
                  "auth": {
                    "database": "",
                    "enablePostgresUser": true,
                    "existingSecret": "",
                    "password": "",
                    "postgresPassword": "",
                    "replicationPassword": "",
                    "replicationUsername": "repl_user",
                    "secretKeys": {
                      "adminPasswordKey": "postgres-password",
                      "replicationPasswordKey": "replication-password",
                      "userPasswordKey": "password"
                    },
                    "usePasswordFiles": true,
                    "username": ""
                  },
                  "backup": {
                    "cronjob": {
                      "annotations": {},
                      "command": [
                        "/bin/bash",
                        "-c",
                        "PGPASSWORD=\"${PGPASSWORD:-$(\u003c \"$PGPASSWORD_FILE\")}\" pg_dumpall --clean --if-exists --load-via-partition-root --quote-all-identifiers --no-password --file=\"${PGDUMP_DIR}/pg_dumpall-$(date '+%Y-%m-%d-%H-%M').pgdump\""
                      ],
                      "concurrencyPolicy": "Allow",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "privileged": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 1001,
                        "runAsNonRoot": true,
                        "runAsUser": 1001,
                        "seLinuxOptions": {},
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "failedJobsHistoryLimit": 1,
                      "labels": {},
                      "networkPolicy": {
                        "enabled": true
                      },
                      "nodeSelector": {},
                      "podSecurityContext": {
                        "enabled": true,
                        "fsGroup": 1001,
                        "fsGroupChangePolicy": "Always",
                        "supplementalGroups": [],
                        "sysctls": []
                      },
                      "resources": {},
                      "resourcesPreset": "nano",
                      "restartPolicy": "OnFailure",
                      "schedule": "@daily",
                      "startingDeadlineSeconds": "",
                      "storage": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "enabled": true,
                        "existingClaim": "",
                        "mountPath": "/backup/pgdump",
                        "resourcePolicy": "",
                        "size": "8Gi",
                        "storageClass": "",
                        "subPath": "",
                        "volumeClaimTemplates": {
                          "selector": {}
                        }
                      },
                      "successfulJobsHistoryLimit": 3,
                      "timeZone": "",
                      "tolerations": [],
                      "ttlSecondsAfterFinished": ""
                    },
                    "enabled": false
                  },
                  "clusterDomain": "cluster.local",
                  "common": {
                    "exampleValue": "common-chart",
                    "global": {
                      "compatibility": {
                        "openshift": {
                          "adaptSecurityContext": "auto"
                        }
                      },
                      "defaultStorageClass": "",
                      "imagePullSecrets": [],
                      "imageRegistry": "",
                      "postgresql": {
                        "auth": {
                          "database": "",
                          "existingSecret": "",
                          "password": "",
                          "postgresPassword": "",
                          "secretKeys": {
                            "adminPasswordKey": "",
                            "replicationPasswordKey": "",
                            "userPasswordKey": ""
                          },
                          "username": ""
                        },
                        "fullnameOverride": "",
                        "service": {
                          "ports": {
                            "postgresql": ""
                          }
                        }
                      },
                      "security": {
                        "allowInsecureImages": false
                      },
                      "storageClass": ""
                    }
                  },
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "containerPorts": {
                    "postgresql": 5432
                  },
                  "diagnosticMode": {
                    "args": [
                      "infinity"
                    ],
                    "command": [
                      "sleep"
                    ],
                    "enabled": false
                  },
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "global": {
                    "compatibility": {
                      "openshift": {
                        "adaptSecurityContext": "auto"
                      }
                    },
                    "defaultStorageClass": "",
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "auth": {
                        "database": "",
                        "existingSecret": "",
                        "password": "",
                        "postgresPassword": "",
                        "secretKeys": {
                          "adminPasswordKey": "",
                          "replicationPasswordKey": "",
                          "userPasswordKey": ""
                        },
                        "username": ""
                      },
                      "fullnameOverride": "",
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "security": {
                      "allowInsecureImages": false
                    },
                    "storageClass": ""
                  },
                  "image": {
                    "debug": false,
                    "digest": "",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "bitnami/postgresql",
                    "tag": "17.6.0-debian-12-r4"
                  },
                  "kubeVersion": "",
                  "ldap": {
                    "basedn": "",
                    "binddn": "",
                    "bindpw": "",
                    "enabled": false,
                    "port": "",
                    "prefix": "",
                    "scheme": "",
                    "searchAttribute": "",
                    "searchFilter": "",
                    "server": "",
                    "suffix": "",
                    "tls": {
                      "enabled": false
                    },
                    "uri": ""
                  },
                  "metrics": {
                    "collectors": {},
                    "containerPorts": {
                      "metrics": 9187
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customMetrics": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "enabled": false,
                    "extraEnvVars": [],
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/postgres-exporter",
                      "tag": "0.17.1-debian-12-r16"
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "prometheusRule": {
                      "enabled": false,
                      "labels": {},
                      "namespace": "",
                      "rules": []
                    },
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {},
                    "resourcesPreset": "nano",
                    "service": {
                      "annotations": {
                        "prometheus.io/port": "{{ .Values.metrics.service.ports.metrics }}",
                        "prometheus.io/scrape": "true"
                      },
                      "clusterIP": "",
                      "ports": {
                        "metrics": 9187
                      },
                      "sessionAffinity": "None"
                    },
                    "serviceMonitor": {
                      "enabled": false,
                      "honorLabels": false,
                      "interval": "",
                      "jobLabel": "",
                      "labels": {},
                      "metricRelabelings": [],
                      "namespace": "",
                      "relabelings": [],
                      "scrapeTimeout": "",
                      "selector": {}
                    },
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 15,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    }
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "passwordUpdateJob": {
                    "annotations": {},
                    "args": [],
                    "automountServiceAccountToken": false,
                    "backoffLimit": 10,
                    "command": [],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "enabled": false,
                    "extraCommands": "",
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "initContainers": [],
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 1001,
                      "fsGroupChangePolicy": "Always",
                      "supplementalGroups": [],
                      "sysctls": []
                    },
                    "previousPasswords": {
                      "existingSecret": "",
                      "password": "",
                      "postgresPassword": "",
                      "replicationPassword": ""
                    },
                    "resources": {},
                    "resourcesPreset": "micro"
                  },
                  "postgresqlDataDir": "/bitnami/postgresql/data",
                  "postgresqlSharedPreloadLibraries": "pgaudit",
                  "primary": {
                    "affinity": {},
                    "annotations": {},
                    "args": [],
                    "automountServiceAccountToken": false,
                    "command": [],
                    "configuration": "",
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "existingConfigmap": "",
                    "existingExtendedConfigmap": "",
                    "extendedConfiguration": "",
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraPodSpec": {},
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "hostIPC": false,
                    "hostNetwork": false,
                    "initContainers": [],
                    "initdb": {
                      "args": "",
                      "password": "",
                      "postgresqlWalDir": "",
                      "scripts": {},
                      "scriptsConfigMap": "",
                      "scriptsSecret": "",
                      "user": ""
                    },
                    "labels": {},
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "name": "primary",
                    "networkPolicy": {
                      "allowExternal": true,
                      "allowExternalEgress": true,
                      "enabled": true,
                      "extraEgress": [],
                      "extraIngress": [],
                      "ingressNSMatchLabels": {},
                      "ingressNSPodMatchLabels": {}
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "pdb": {
                      "create": true,
                      "maxUnavailable": "",
                      "minAvailable": ""
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "dataSource": {},
                      "enabled": true,
                      "existingClaim": "",
                      "labels": {},
                      "mountPath": "/bitnami/postgresql",
                      "selector": {},
                      "size": "8Gi",
                      "storageClass": "",
                      "subPath": "",
                      "volumeName": "data"
                    },
                    "persistentVolumeClaimRetentionPolicy": {
                      "enabled": false,
                      "whenDeleted": "Retain",
                      "whenScaled": "Retain"
                    },
                    "pgHbaConfiguration": "",
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {},
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 1001,
                      "fsGroupChangePolicy": "Always",
                      "supplementalGroups": [],
                      "sysctls": []
                    },
                    "preInitDb": {
                      "scripts": {},
                      "scriptsConfigMap": "",
                      "scriptsSecret": ""
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {},
                    "resourcesPreset": "nano",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "headless": {
                        "annotations": {}
                      },
                      "labels": {},
                      "loadBalancerClass": "",
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "postgresql": ""
                      },
                      "ports": {
                        "postgresql": 5432
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "standby": {
                      "enabled": false,
                      "primaryHost": "",
                      "primaryPort": ""
                    },
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 15,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "terminationGracePeriodSeconds": "",
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "rollingUpdate": {},
                      "type": "RollingUpdate"
                    }
                  },
                  "psp": {
                    "create": false
                  },
                  "rbac": {
                    "create": false,
                    "rules": []
                  },
                  "readReplicas": {
                    "affinity": {},
                    "annotations": {},
                    "args": [],
                    "automountServiceAccountToken": false,
                    "command": [],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "extendedConfiguration": "",
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraPodSpec": {},
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "hostIPC": false,
                    "hostNetwork": false,
                    "initContainers": [],
                    "labels": {},
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "name": "read",
                    "networkPolicy": {
                      "allowExternal": true,
                      "allowExternalEgress": true,
                      "enabled": true,
                      "extraEgress": [],
                      "extraIngress": [],
                      "ingressNSMatchLabels": {},
                      "ingressNSPodMatchLabels": {}
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "pdb": {
                      "create": true,
                      "maxUnavailable": "",
                      "minAvailable": ""
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "dataSource": {},
                      "enabled": true,
                      "existingClaim": "",
                      "labels": {},
                      "mountPath": "/bitnami/postgresql",
                      "selector": {},
                      "size": "8Gi",
                      "storageClass": "",
                      "subPath": ""
                    },
                    "persistentVolumeClaimRetentionPolicy": {
                      "enabled": false,
                      "whenDeleted": "Retain",
                      "whenScaled": "Retain"
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {},
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 1001,
                      "fsGroupChangePolicy": "Always",
                      "supplementalGroups": [],
                      "sysctls": []
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "nano",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "headless": {
                        "annotations": {}
                      },
                      "labels": {},
                      "loadBalancerClass": "",
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "postgresql": ""
                      },
                      "ports": {
                        "postgresql": 5432
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 15,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "terminationGracePeriodSeconds": "",
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "rollingUpdate": {},
                      "type": "RollingUpdate"
                    }
                  },
                  "replication": {
                    "applicationName": "my_application",
                    "numSynchronousReplicas": 0,
                    "synchronousCommit": "off"
                  },
                  "secretAnnotations": {},
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": false,
                    "create": true,
                    "name": ""
                  },
                  "serviceBindings": {
                    "enabled": false
                  },
                  "shmVolume": {
                    "enabled": true,
                    "sizeLimit": ""
                  },
                  "tls": {
                    "autoGenerated": false,
                    "certCAFilename": "",
                    "certFilename": "",
                    "certKeyFilename": "",
                    "certificatesSecret": "",
                    "crlFilename": "",
                    "enabled": false,
                    "preferServerCiphers": true
                  },
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r51"
                    },
                    "resources": {},
                    "resourcesPreset": "nano"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "Prometheus",
                "metadata": {
                  "name": "prometheus-sample"
                },
                "spec": {
                  "alertRelabelConfigs": {},
                  "alertmanager": {
                    "additionalPeers": [],
                    "affinity": {},
                    "automountServiceAccountToken": true,
                    "baseURL": "",
                    "command": [],
                    "config": {
                      "enabled": true,
                      "global": {},
                      "receivers": [
                        {
                          "name": "default-receiver"
                        }
                      ],
                      "route": {
                        "group_interval": "5m",
                        "group_wait": "10s",
                        "receiver": "default-receiver",
                        "repeat_interval": "3h"
                      },
                      "templates": [
                        "/etc/alertmanager/*.tmpl"
                      ]
                    },
                    "configAnnotations": {},
                    "configmapReload": {
                      "enabled": false,
                      "extraArgs": {},
                      "extraEnv": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                        "tag": "v0.85.0"
                      },
                      "livenessProbe": {},
                      "name": "configmap-reload",
                      "readinessProbe": {},
                      "resources": {},
                      "securityContext": {}
                    },
                    "containerPortName": "http",
                    "dnsConfig": {},
                    "enabled": true,
                    "extraArgs": {},
                    "extraContainers": [],
                    "extraEnv": [],
                    "extraInitContainers": [],
                    "extraPodConfigs": {},
                    "extraSecretMounts": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {},
                    "hostAliases": [],
                    "hostUsers": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "quay.io/prometheus/alertmanager",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "ingress": {
                      "annotations": {},
                      "className": "",
                      "enabled": false,
                      "hosts": [
                        {
                          "host": "alertmanager.domain.com",
                          "paths": [
                            {
                              "path": "/",
                              "pathType": "ImplementationSpecific"
                            }
                          ]
                        }
                      ],
                      "labels": {},
                      "tls": []
                    },
                    "ingressPerReplica": {
                      "annotations": {},
                      "className": "",
                      "enabled": false,
                      "hostDomain": "domain.com",
                      "hostPrefix": "alertmanager",
                      "labels": {},
                      "pathType": "ImplementationSpecific",
                      "paths": [
                        "/"
                      ],
                      "tlsSecretName": "",
                      "tlsSecretPerReplica": {
                        "enabled": false,
                        "prefix": "alertmanager"
                      }
                    },
                    "livenessProbe": {
                      "httpGet": {
                        "path": "/",
                        "port": "http"
                      }
                    },
                    "minReadySeconds": 0,
                    "nameOverride": "",
                    "namespaceOverride": "",
                    "nodeSelector": {},
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "emptyDir": {},
                      "enabled": true,
                      "labels": {},
                      "size": "2Gi"
                    },
                    "podAnnotations": {},
                    "podAntiAffinity": "",
                    "podAntiAffinityTopologyKey": "kubernetes.io/hostname",
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "podSecurityContext": {
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "httpGet": {
                        "path": "/",
                        "port": "http"
                      }
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "revisionHistoryLimit": 10,
                    "schedulerName": "",
                    "securityContext": {
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "annotations": {},
                      "clusterPort": 9094,
                      "extraPorts": [],
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "labels": {},
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "port": 9093,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "servicePerReplica": {
                      "annotations": {},
                      "enabled": false,
                      "externalTrafficPolicy": "Cluster",
                      "loadBalancerSourceRanges": [],
                      "type": "ClusterIP"
                    },
                    "statefulSet": {
                      "annotations": {}
                    },
                    "templates": {},
                    "testFramework": {
                      "annotations": {
                        "helm.sh/hook": "test-success"
                      },
                      "enabled": false
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "verticalPodAutoscaler": {
                      "enabled": false
                    }
                  },
                  "commonMetaLabels": {},
                  "configmapReload": {
                    "env": [],
                    "prometheus": {
                      "containerPort": 8080,
                      "containerPortName": "metrics",
                      "containerSecurityContext": {},
                      "enabled": true,
                      "extraArgs": {},
                      "extraConfigmapMounts": [],
                      "extraVolumeDirs": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                        "tag": "v0.85.0"
                      },
                      "livenessProbe": {
                        "httpGet": {
                          "path": "/healthz",
                          "port": "metrics",
                          "scheme": "HTTP"
                        },
                        "initialDelaySeconds": 2,
                        "periodSeconds": 10
                      },
                      "name": "configmap-reload",
                      "readinessProbe": {
                        "httpGet": {
                          "path": "/healthz",
                          "port": "metrics",
                          "scheme": "HTTP"
                        },
                        "periodSeconds": 10
                      },
                      "resources": {},
                      "startupProbe": {
                        "enabled": false,
                        "httpGet": {
                          "path": "/healthz",
                          "port": "metrics",
                          "scheme": "HTTP"
                        },
                        "periodSeconds": 10
                      }
                    },
                    "reloadUrl": ""
                  },
                  "extraManifests": [],
                  "extraScrapeConfigs": "",
                  "forceNamespace": "",
                  "imagePullSecrets": [],
                  "kube-state-metrics": {
                    "affinity": {},
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "autosharding": {
                      "enabled": false
                    },
                    "collectors": [
                      "certificatesigningrequests",
                      "configmaps",
                      "cronjobs",
                      "daemonsets",
                      "deployments",
                      "endpoints",
                      "horizontalpodautoscalers",
                      "ingresses",
                      "jobs",
                      "leases",
                      "limitranges",
                      "mutatingwebhookconfigurations",
                      "namespaces",
                      "networkpolicies",
                      "nodes",
                      "persistentvolumeclaims",
                      "persistentvolumes",
                      "poddisruptionbudgets",
                      "pods",
                      "replicasets",
                      "replicationcontrollers",
                      "resourcequotas",
                      "secrets",
                      "services",
                      "statefulsets",
                      "storageclasses",
                      "validatingwebhookconfigurations",
                      "volumeattachments"
                    ],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true
                    },
                    "containers": [],
                    "customLabels": {},
                    "customResourceState": {
                      "config": {},
                      "create": true,
                      "enabled": false,
                      "key": "config.yaml",
                      "name": ""
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "ClusterFirst",
                    "enabled": true,
                    "env": [],
                    "extraArgs": [],
                    "extraManifests": [],
                    "global": {
                      "imagePullSecrets": [],
                      "imageRegistry": ""
                    },
                    "hostNetwork": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "registry": "registry.k8s.io",
                      "repository": "kube-state-metrics/kube-state-metrics",
                      "sha": "",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "initContainers": [],
                    "kubeRBACProxy": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "readOnlyRootFilesystem": true
                      },
                      "enabled": false,
                      "extraArgs": [],
                      "ignoreProbePaths": true,
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "registry": "quay.io",
                        "repository": "brancz/kube-rbac-proxy",
                        "sha": "",
                        "tag": "v0.19.1"
                      },
                      "proxyEndpointsPort": 8888,
                      "resources": {},
                      "volumeMounts": []
                    },
                    "kubeconfig": {
                      "enabled": false,
                      "secret": null
                    },
                    "labels": {},
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "metricAllowlist": [],
                    "metricAnnotationsAllowList": [],
                    "metricDenylist": [],
                    "metricLabelsAllowlist": [],
                    "namespaceOverride": "",
                    "namespaces": "",
                    "namespacesDenylist": "",
                    "networkPolicy": {
                      "enabled": false,
                      "flavor": "kubernetes"
                    },
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "prometheus": {
                      "monitor": {
                        "additionalLabels": {},
                        "annotations": {},
                        "enabled": false,
                        "http": {
                          "bearerTokenFile": "",
                          "bearerTokenSecret": {},
                          "enableHttp2": false,
                          "honorLabels": false,
                          "interval": "",
                          "metricRelabelings": [],
                          "proxyUrl": "",
                          "relabelings": [],
                          "scheme": "",
                          "scrapeTimeout": "",
                          "tlsConfig": {}
                        },
                        "jobLabel": "",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metrics": {
                          "bearerTokenFile": "",
                          "bearerTokenSecret": {},
                          "enableHttp2": false,
                          "honorLabels": false,
                          "interval": "",
                          "metricRelabelings": [],
                          "proxyUrl": "",
                          "relabelings": [],
                          "scheme": "",
                          "scrapeTimeout": "",
                          "tlsConfig": {}
                        },
                        "namespace": "",
                        "namespaceSelector": [],
                        "podTargetLabels": [],
                        "sampleLimit": 0,
                        "selectorOverride": {},
                        "targetLabels": [],
                        "targetLimit": 0
                      },
                      "scrapeconfig": {
                        "additionalLabels": {},
                        "annotations": {},
                        "enableHttp2": false,
                        "enabled": false,
                        "honorLabels": true,
                        "jobName": "kube-state-metrics",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metricRelabelings": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "sampleLimit": 0,
                        "scheme": "",
                        "scrapeInterval": "",
                        "scrapeTimeout": "",
                        "staticConfigLabels": {},
                        "targetLimit": 0,
                        "tlsConfig": {}
                      }
                    },
                    "prometheusScrape": true,
                    "rbac": {
                      "create": true,
                      "extraRules": [],
                      "useClusterRole": true
                    },
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "releaseLabel": false,
                    "releaseNamespace": false,
                    "replicas": 1,
                    "resources": {},
                    "revisionHistoryLimit": 10,
                    "securityContext": {
                      "enabled": true,
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "selectorOverride": {},
                    "selfMonitor": {
                      "enabled": false
                    },
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePort": 0,
                      "port": 8080,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "automountServiceAccountToken": true,
                      "create": true,
                      "imagePullSecrets": [],
                      "name": null
                    },
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 0,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "verticalPodAutoscaler": {
                      "controlledResources": [],
                      "enabled": false,
                      "maxAllowed": {},
                      "minAllowed": {}
                    },
                    "volumeMounts": [],
                    "volumes": []
                  },
                  "networkPolicy": {
                    "enabled": false
                  },
                  "prometheus-node-exporter": {
                    "affinity": {},
                    "commonLabels": {},
                    "configmaps": [],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "readOnlyRootFilesystem": true
                    },
                    "daemonsetAnnotations": {},
                    "dnsConfig": {},
                    "enabled": true,
                    "endpoints": [],
                    "env": {},
                    "extraArgs": [],
                    "extraHostVolumeMounts": [],
                    "extraInitContainers": [],
                    "extraManifests": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {
                      "imagePullSecrets": [],
                      "imageRegistry": ""
                    },
                    "hostIPC": false,
                    "hostNetwork": true,
                    "hostPID": true,
                    "hostProcFsMount": {
                      "mountPropagation": ""
                    },
                    "hostRootFsMount": {
                      "enabled": true,
                      "mountPropagation": "HostToContainer"
                    },
                    "hostSysFsMount": {
                      "mountPropagation": ""
                    },
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "registry": "quay.io",
                      "repository": "prometheus/node-exporter",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "kubeRBACProxy": {
                      "containerSecurityContext": {},
                      "enableHostPort": false,
                      "enableProxyEndpointsHostPort": false,
                      "enabled": false,
                      "env": {},
                      "extraArgs": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "registry": "quay.io",
                        "repository": "brancz/kube-rbac-proxy",
                        "sha": "",
                        "tag": "v0.20.0"
                      },
                      "port": 8100,
                      "portName": "http",
                      "proxyEndpointsPort": 8888,
                      "resources": {},
                      "tls": {
                        "enabled": false,
                        "tlsClientAuth": false
                      }
                    },
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 0,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "nameOverride": "",
                    "namespaceOverride": "",
                    "networkPolicy": {
                      "enabled": false
                    },
                    "nodeSelector": {
                      "kubernetes.io/os": "linux"
                    },
                    "podAnnotations": {
                      "cluster-autoscaler.kubernetes.io/safe-to-evict": "true"
                    },
                    "podLabels": {},
                    "prometheus": {
                      "monitor": {
                        "additionalLabels": {},
                        "apiVersion": "",
                        "attachMetadata": {
                          "node": false
                        },
                        "basicAuth": {},
                        "bearerTokenFile": null,
                        "enabled": false,
                        "interval": "",
                        "jobLabel": "",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metricRelabelings": [],
                        "namespace": "",
                        "podTargetLabels": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "sampleLimit": 0,
                        "scheme": "http",
                        "scrapeTimeout": "10s",
                        "selectorOverride": {},
                        "targetLabels": [],
                        "targetLimit": 0,
                        "tlsConfig": {}
                      },
                      "podMonitor": {
                        "additionalLabels": {},
                        "apiVersion": "",
                        "attachMetadata": {
                          "node": false
                        },
                        "authorization": {},
                        "basicAuth": {},
                        "bearerTokenSecret": {},
                        "enableHttp2": "",
                        "enabled": false,
                        "filterRunning": "",
                        "followRedirects": "",
                        "honorLabels": true,
                        "honorTimestamps": true,
                        "interval": "",
                        "jobLabel": "",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metricRelabelings": [],
                        "namespace": "",
                        "oauth2": {},
                        "params": {},
                        "path": "/metrics",
                        "podTargetLabels": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "sampleLimit": 0,
                        "scheme": "http",
                        "scrapeTimeout": "",
                        "selectorOverride": {},
                        "targetLimit": 0,
                        "tlsConfig": {}
                      }
                    },
                    "rbac": {
                      "create": true,
                      "pspEnabled": false
                    },
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 0,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "releaseLabel": false,
                    "resources": {},
                    "restartPolicy": null,
                    "revisionHistoryLimit": 10,
                    "secrets": [],
                    "securityContext": {
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "annotations": {
                        "prometheus.io/scrape": "true"
                      },
                      "clusterIP": "",
                      "enabled": true,
                      "externalTrafficPolicy": "",
                      "internalTrafficPolicy": "",
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "labels": {},
                      "listenOnAllInterfaces": true,
                      "nodePort": null,
                      "port": 9100,
                      "portName": "metrics",
                      "servicePort": "",
                      "targetPort": 9100,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "automountServiceAccountToken": false,
                      "create": true,
                      "imagePullSecrets": [],
                      "name": null
                    },
                    "sidecarHostVolumeMounts": [],
                    "sidecarVolumeMount": [],
                    "sidecars": [],
                    "terminationGracePeriodSeconds": null,
                    "terminationMessageParams": {
                      "enabled": false,
                      "terminationMessagePath": "/dev/termination-log",
                      "terminationMessagePolicy": "File"
                    },
                    "tlsSecret": {
                      "caItem": "",
                      "certItem": "tls.crt",
                      "enabled": false,
                      "keyItem": "tls.key",
                      "secretName": "prometheus-node-exporter-tls",
                      "volumeName": "prometheus-node-exporter-tls"
                    },
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "operator": "Exists"
                      }
                    ],
                    "updateStrategy": {
                      "rollingUpdate": {
                        "maxUnavailable": 1
                      },
                      "type": "RollingUpdate"
                    },
                    "version": "",
                    "verticalPodAutoscaler": {
                      "controlledResources": [],
                      "enabled": false,
                      "maxAllowed": {},
                      "minAllowed": {}
                    }
                  },
                  "prometheus-pushgateway": {
                    "affinity": {},
                    "automountServiceAccountToken": true,
                    "containerSecurityContext": {},
                    "deploymentAnnotations": {},
                    "enabled": true,
                    "extraArgs": [],
                    "extraContainers": [],
                    "extraInitContainers": [],
                    "extraManifests": [],
                    "extraVars": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {
                      "imagePullSecrets": [],
                      "imageRegistry": ""
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "registry": "",
                      "repository": "quay.io/prometheus/pushgateway",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "ingress": {
                      "className": "",
                      "enabled": false,
                      "extraPaths": [],
                      "path": "/",
                      "pathType": "ImplementationSpecific"
                    },
                    "lifecycle": {},
                    "liveness": {
                      "enabled": true,
                      "probe": {
                        "httpGet": {
                          "path": "/-/healthy",
                          "port": 9091
                        },
                        "initialDelaySeconds": 10,
                        "timeoutSeconds": 10
                      }
                    },
                    "nameOverride": "",
                    "namespaceOverride": "",
                    "networkPolicy": {},
                    "nodeSelector": {},
                    "persistentVolume": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "enabled": false,
                      "existingClaim": "",
                      "mountPath": "/data",
                      "size": "2Gi",
                      "subPath": ""
                    },
                    "persistentVolumeLabels": {},
                    "podAnnotations": {},
                    "podAntiAffinity": "",
                    "podAntiAffinityTopologyKey": "kubernetes.io/hostname",
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "priorityClassName": null,
                    "readiness": {
                      "enabled": true,
                      "probe": {
                        "httpGet": {
                          "path": "/-/ready",
                          "port": 9091
                        },
                        "initialDelaySeconds": 10,
                        "timeoutSeconds": 10
                      }
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "runAsStatefulSet": false,
                    "securityContext": {
                      "fsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "clusterIP": "",
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "port": 9091,
                      "portName": "http",
                      "targetPort": 9091,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "create": true,
                      "name": null
                    },
                    "serviceAccountLabels": {},
                    "serviceAnnotations": {
                      "prometheus.io/probe": "pushgateway"
                    },
                    "serviceLabels": {},
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "basicAuth": {},
                      "bearerTokenFile": "",
                      "enabled": false,
                      "honorLabels": true,
                      "interval": "",
                      "metricRelabelings": [],
                      "namespace": "monitoring",
                      "relabelings": [],
                      "scheme": "",
                      "scrapeTimeout": "",
                      "telemetryPath": "/metrics",
                      "tlsConfig": {}
                    },
                    "strategy": {
                      "type": "Recreate"
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "webConfiguration": {}
                  },
                  "rbac": {
                    "create": true
                  },
                  "ruleFiles": {},
                  "scrapeConfigFiles": [],
                  "server": {
                    "affinity": {},
                    "alertmanagers": [],
                    "baseURL": "",
                    "clusterRoleNameOverride": "",
                    "command": [],
                    "configFromSecret": "",
                    "configMapAnnotations": {},
                    "configMapOverrideName": "",
                    "configPath": "/etc/config/prometheus.yml",
                    "containerSecurityContext": {},
                    "daemonSet": {
                      "annotations": {},
                      "enabled": false,
                      "labels": {}
                    },
                    "defaultFlagsOverride": [],
                    "deploymentAnnotations": {},
                    "dnsConfig": {},
                    "dnsPolicy": "ClusterFirst",
                    "emptyDir": {
                      "medium": "",
                      "sizeLimit": ""
                    },
                    "enableServiceLinks": true,
                    "env": [],
                    "exemplars": {},
                    "extraArgs": {},
                    "extraConfigmapLabels": {},
                    "extraConfigmapMounts": [],
                    "extraFlags": [
                      "web.enable-lifecycle"
                    ],
                    "extraHostPathMounts": [],
                    "extraInitContainers": [],
                    "extraSecretMounts": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {
                      "evaluation_interval": "1m",
                      "scrape_interval": "1m",
                      "scrape_timeout": "10s"
                    },
                    "hostAliases": [],
                    "hostNetwork": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "repository": "quay.io/prometheus/prometheus",
                      "tag": ""
                    },
                    "ingress": {
                      "annotations": {},
                      "enabled": false,
                      "extraLabels": {},
                      "extraPaths": [],
                      "hosts": [],
                      "ingressClassName": "",
                      "path": "/",
                      "pathType": "Prefix",
                      "tls": []
                    },
                    "livenessProbeFailureThreshold": 3,
                    "livenessProbeInitialDelay": 30,
                    "livenessProbePeriodSeconds": 15,
                    "livenessProbeSuccessThreshold": 1,
                    "livenessProbeTimeout": 10,
                    "name": "server",
                    "nodeSelector": {},
                    "otlp": {},
                    "persistentVolume": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "enabled": true,
                      "existingClaim": "",
                      "labels": {},
                      "mountPath": "/data",
                      "size": "8Gi",
                      "statefulSetNameOverride": "",
                      "subPath": ""
                    },
                    "podAnnotations": {},
                    "podAntiAffinity": "",
                    "podAntiAffinityTopologyKey": "kubernetes.io/hostname",
                    "podDisruptionBudget": {
                      "enabled": false
                    },
                    "podLabels": {},
                    "portName": "",
                    "prefixURL": "",
                    "priorityClassName": "",
                    "probeHeaders": [],
                    "probeScheme": "HTTP",
                    "readinessProbeFailureThreshold": 3,
                    "readinessProbeInitialDelay": 30,
                    "readinessProbePeriodSeconds": 5,
                    "readinessProbeSuccessThreshold": 1,
                    "readinessProbeTimeout": 4,
                    "releaseNamespace": false,
                    "remoteRead": [],
                    "remoteWrite": [],
                    "replicaCount": 1,
                    "resources": {},
                    "retention": "15d",
                    "retentionSize": "",
                    "revisionHistoryLimit": 10,
                    "route": {
                      "main": {
                        "additionalRules": [],
                        "annotations": {},
                        "apiVersion": "",
                        "enabled": false,
                        "filters": [],
                        "hostnames": [],
                        "httpsRedirect": false,
                        "kind": "",
                        "labels": {},
                        "matches": [
                          {
                            "path": {
                              "type": "PathPrefix",
                              "value": "/"
                            }
                          }
                        ],
                        "parentRefs": []
                      }
                    },
                    "runtimeClassName": "",
                    "securityContext": {
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "additionalPorts": [],
                      "annotations": {},
                      "clusterIP": "",
                      "enabled": true,
                      "externalIPs": [],
                      "externalTrafficPolicy": "",
                      "gRPC": {
                        "enabled": false,
                        "servicePort": 10901
                      },
                      "labels": {},
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "servicePort": 80,
                      "sessionAffinity": "None",
                      "statefulsetReplica": {
                        "enabled": false,
                        "replica": 0
                      },
                      "type": "ClusterIP"
                    },
                    "sidecarContainers": {},
                    "sidecarTemplateValues": {},
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 30,
                      "periodSeconds": 5,
                      "timeoutSeconds": 10
                    },
                    "statefulSet": {
                      "annotations": {},
                      "enabled": false,
                      "headless": {
                        "annotations": {},
                        "gRPC": {
                          "enabled": false,
                          "servicePort": 10901
                        },
                        "labels": {},
                        "servicePort": 80
                      },
                      "labels": {},
                      "podManagementPolicy": "OrderedReady",
                      "pvcDeleteOnStsDelete": false,
                      "pvcDeleteOnStsScale": false
                    },
                    "storagePath": "",
                    "strategy": {
                      "type": "Recreate"
                    },
                    "tcpSocketProbeEnabled": false,
                    "terminationGracePeriodSeconds": 300,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "tsdb": {},
                    "verticalAutoscaler": {
                      "enabled": false
                    }
                  },
                  "serverFiles": {
                    "alerting_rules.yml": {},
                    "alerts": {},
                    "prometheus.yml": {
                      "rule_files": [
                        "/etc/config/recording_rules.yml",
                        "/etc/config/alerting_rules.yml",
                        "/etc/config/rules",
                        "/etc/config/alerts"
                      ],
                      "scrape_configs": [
                        {
                          "job_name": "prometheus",
                          "static_configs": [
                            {
                              "targets": [
                                "localhost:9090"
                              ]
                            }
                          ]
                        },
                        {
                          "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                          "job_name": "kubernetes-apiservers",
                          "kubernetes_sd_configs": [
                            {
                              "role": "endpoints"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": "default;kubernetes;https",
                              "source_labels": [
                                "__meta_kubernetes_namespace",
                                "__meta_kubernetes_service_name",
                                "__meta_kubernetes_endpoint_port_name"
                              ]
                            }
                          ],
                          "scheme": "https",
                          "tls_config": {
                            "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
                          }
                        },
                        {
                          "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                          "job_name": "kubernetes-nodes",
                          "kubernetes_sd_configs": [
                            {
                              "role": "node"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_node_label_(.+)"
                            },
                            {
                              "replacement": "kubernetes.default.svc:443",
                              "target_label": "__address__"
                            },
                            {
                              "regex": "(.+)",
                              "replacement": "/api/v1/nodes/$1/proxy/metrics",
                              "source_labels": [
                                "__meta_kubernetes_node_name"
                              ],
                              "target_label": "__metrics_path__"
                            }
                          ],
                          "scheme": "https",
                          "tls_config": {
                            "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
                          }
                        },
                        {
                          "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                          "job_name": "kubernetes-nodes-cadvisor",
                          "kubernetes_sd_configs": [
                            {
                              "role": "node"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_node_label_(.+)"
                            },
                            {
                              "replacement": "kubernetes.default.svc:443",
                              "target_label": "__address__"
                            },
                            {
                              "regex": "(.+)",
                              "replacement": "/api/v1/nodes/$1/proxy/metrics/cadvisor",
                              "source_labels": [
                                "__meta_kubernetes_node_name"
                              ],
                              "target_label": "__metrics_path__"
                            }
                          ],
                          "scheme": "https",
                          "tls_config": {
                            "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
                          }
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-service-endpoints",
                          "kubernetes_sd_configs": [
                            {
                              "role": "endpoints"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scrape"
                              ]
                            },
                            {
                              "action": "drop",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+?)(?::\\d+)?;(\\d+)",
                              "replacement": "$1:$2",
                              "source_labels": [
                                "__address__",
                                "__meta_kubernetes_service_annotation_prometheus_io_port"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_service_name"
                              ],
                              "target_label": "service"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-service-endpoints-slow",
                          "kubernetes_sd_configs": [
                            {
                              "role": "endpoints"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+?)(?::\\d+)?;(\\d+)",
                              "replacement": "$1:$2",
                              "source_labels": [
                                "__address__",
                                "__meta_kubernetes_service_annotation_prometheus_io_port"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_service_name"
                              ],
                              "target_label": "service"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ],
                          "scrape_interval": "5m",
                          "scrape_timeout": "30s"
                        },
                        {
                          "honor_labels": true,
                          "job_name": "prometheus-pushgateway",
                          "kubernetes_sd_configs": [
                            {
                              "role": "service"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": "pushgateway",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_probe"
                              ]
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-services",
                          "kubernetes_sd_configs": [
                            {
                              "role": "service"
                            }
                          ],
                          "metrics_path": "/probe",
                          "params": {
                            "module": [
                              "http_2xx"
                            ]
                          },
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_probe"
                              ]
                            },
                            {
                              "source_labels": [
                                "__address__"
                              ],
                              "target_label": "__param_target"
                            },
                            {
                              "replacement": "blackbox",
                              "target_label": "__address__"
                            },
                            {
                              "source_labels": [
                                "__param_target"
                              ],
                              "target_label": "instance"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_label_(.+)"
                            },
                            {
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "source_labels": [
                                "__meta_kubernetes_service_name"
                              ],
                              "target_label": "service"
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-pods",
                          "kubernetes_sd_configs": [
                            {
                              "role": "pod"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scrape"
                              ]
                            },
                            {
                              "action": "drop",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);(([A-Fa-f0-9]{1,4}::?){1,7}[A-Fa-f0-9]{1,4})",
                              "replacement": "[$2]:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);((([0-9]+?)(\\.|$)){4})",
                              "replacement": "$2:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_name"
                              ],
                              "target_label": "pod"
                            },
                            {
                              "action": "drop",
                              "regex": "Pending|Succeeded|Failed|Completed",
                              "source_labels": [
                                "__meta_kubernetes_pod_phase"
                              ]
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-pods-slow",
                          "kubernetes_sd_configs": [
                            {
                              "role": "pod"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);(([A-Fa-f0-9]{1,4}::?){1,7}[A-Fa-f0-9]{1,4})",
                              "replacement": "[$2]:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);((([0-9]+?)(\\.|$)){4})",
                              "replacement": "$2:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_name"
                              ],
                              "target_label": "pod"
                            },
                            {
                              "action": "drop",
                              "regex": "Pending|Succeeded|Failed|Completed",
                              "source_labels": [
                                "__meta_kubernetes_pod_phase"
                              ]
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ],
                          "scrape_interval": "5m",
                          "scrape_timeout": "30s"
                        }
                      ]
                    },
                    "recording_rules.yml": {},
                    "rules": {}
                  },
                  "serviceAccounts": {
                    "server": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-12-18T14:29:21Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.0.2
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DexConfigOperator
            name: dexconfigoperators.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: Dex
            name: dexes.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: FinOpsOperator
            name: finopsoperators.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: KubeStateMetrics
            name: kubestatemetrics.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: OpenCost
            name: opencosts.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: Postgres
            name: postgres.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: Prometheus
            name: prometheuses.dependencies.tenantoperator.stakater.com
            version: v1alpha1
        description: MTO Dependencies Operator packages the charts required by MTO
        displayName: MTO Dependencies Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - Kubernetes
        - OpenShift
        - Helm
        links:
        - name: MTO Dependencies Operator
          url: https://mto-dependencies-operator.domain
        maturity: alpha
        provider:
          name: Stakater
        relatedImages:
        - registry.connect.redhat.com/stakater/mto-dependencies-operator@sha256:d83ff33721b852eb6849638586f84f863654978d3df316ed4d0a24ba3732fdaf
        - public.ecr.aws/aws-observability/aws-sigv4-proxy@sha256:2768495a4e331852aa4f206ad728f5e65b2c8680715ae984d1580ca1029f8438
        - registry.connect.redhat.com/stakater/mto-dependencies-operator-bundle@sha256:963008c21ebbfb4b35a399a4681260aa16f3e403d9f2d5d556e01f39265c2213
        version: 0.0.2
      entries:
      - name: mto-dependencies-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: mto-dependencies-operator
    provider:
      name: Stakater
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ClusterPulse
      provider-url: ""
    name: clusterpulse
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clusterpulse.v0.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.clusterpulse.io/v1alpha1",
                "kind": "ClusterPulse",
                "metadata": {
                  "name": "clusterpulse-prod"
                },
                "spec": {
                  "api": {
                    "enabled": true,
                    "imagePullPolicy": "Always",
                    "logging": {
                      "json": true,
                      "level": "INFO"
                    },
                    "oauth": {
                      "enabled": true,
                      "headerEmail": "X-Forwarded-Email",
                      "headerUser": "X-Forwarded-User"
                    },
                    "rbac": {
                      "auditEnabled": true,
                      "cacheTTL": 0,
                      "defaultDeny": true,
                      "enabled": true,
                      "groupSyncInterval": 300
                    },
                    "replicas": 3,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    },
                    "security": {
                      "allowedOrigins": [
                        "*"
                      ],
                      "sessionExpireMinutes": 1440,
                      "trustedHosts": [
                        "*"
                      ]
                    },
                    "server": {
                      "host": "0.0.0.0",
                      "port": 8080,
                      "reload": false,
                      "workers": 1
                    }
                  },
                  "clusterEngine": {
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    },
                    "timing": {
                      "cacheTTL": "600",
                      "fullScanInterval": "300",
                      "reconciliationInterval": "30"
                    }
                  },
                  "frontend": {
                    "config": {
                      "enableAnonymousAccess": false,
                      "features": {
                        "devTools": false,
                        "mockData": false,
                        "nodeDetails": true,
                        "operatorDetails": true,
                        "registryStatus": true
                      },
                      "refreshInterval": 30000,
                      "theme": {
                        "defaultTheme": "auto"
                      }
                    },
                    "enabled": true,
                    "oauth": {
                      "enabled": true,
                      "image": "quay.io/openshift/origin-oauth-proxy:4.17"
                    },
                    "replicas": 3,
                    "route": {
                      "enabled": true,
                      "tls": {
                        "termination": "reencrypt"
                      }
                    }
                  },
                  "policyEngine": {
                    "batch": {
                      "cacheClearBatchSize": 500,
                      "redisPipelineBatchSize": 1000,
                      "redisScanBatchSize": 100
                    },
                    "cache": {
                      "groupCacheTTL": 300,
                      "policyCacheTTL": 300
                    },
                    "enabled": true,
                    "limits": {
                      "maxPoliciesPerUser": 100,
                      "policyValidationInterval": 300
                    },
                    "logging": {
                      "level": "INFO"
                    },
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "redis": {
                    "enabled": true,
                    "global": {
                      "compatibility": {
                        "openshift": {
                          "adaptSecurityContext": "force"
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "clusterpulse.io/v1alpha1",
                "kind": "ClusterConnection",
                "metadata": {
                  "name": "example-cluster"
                },
                "spec": {
                  "credentialsRef": {
                    "name": "cluster-credentials"
                  },
                  "displayName": "Example Production Cluster",
                  "endpoint": "https://api.example.openshift.com:6443",
                  "monitoring": {
                    "interval": 30,
                    "timeout": 10
                  }
                }
              },
              {
                "apiVersion": "clusterpulse.io/v1alpha1",
                "kind": "MonitorAccessPolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "access": {
                    "effect": "Allow",
                    "enabled": true
                  },
                  "identity": {
                    "priority": 100,
                    "subjects": {
                      "groups": [
                        "default-group"
                      ],
                      "users": [
                        "default-user"
                      ]
                    }
                  },
                  "operations": {
                    "audit": {
                      "logAccess": false,
                      "requireReason": false
                    }
                  },
                  "scope": {
                    "clusters": {
                      "default": "none",
                      "rules": [
                        {
                          "permissions": {
                            "view": true,
                            "viewAuditInfo": true,
                            "viewCosts": true,
                            "viewMetadata": true,
                            "viewMetrics": true,
                            "viewSecrets": true,
                            "viewSensitive": true
                          },
                          "resources": {
                            "namespaces": {
                              "visibility": "all"
                            },
                            "nodes": {
                              "filters": {
                                "hideMasters": false
                              },
                              "visibility": "all"
                            },
                            "operators": {
                              "visibility": "none"
                            },
                            "pods": {
                              "visibility": "all"
                            }
                          },
                          "selector": {
                            "matchPattern": ".*"
                          }
                        }
                      ]
                    }
                  }
                }
              },
              {
                "apiVersion": "clusterpulse.io/v1alpha1",
                "kind": "RegistryConnection",
                "metadata": {
                  "name": "dockerhub",
                  "namespace": "clusterpulse"
                },
                "spec": {
                  "displayName": "Docker Hub",
                  "endpoint": "https://registry-1.docker.io",
                  "healthCheckPaths": [
                    "/v2/"
                  ],
                  "insecure": false,
                  "labels": {
                    "environment": "production",
                    "provider": "dockerhub"
                  },
                  "monitoring": {
                    "checkCatalog": false,
                    "interval": 60,
                    "maxCatalogEntries": 100,
                    "timeout": 10
                  },
                  "skipTLSVerify": false
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: docker.io/clusterpulse/clusterpulse-operator:0.2.1
          createdAt: "2025-11-06T18:07:25Z"
          description: Provides OpenShift cluster health monitoring
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/ClusterPulse/operator
          support: None
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Defines a connection to a monitored Kubernetes/OpenShift
              cluster
            displayName: Cluster Connection
            kind: ClusterConnection
            name: clusterconnections.clusterpulse.io
            version: v1alpha1
          - description: Manages the deployment and configuration of ClusterPulse
              monitoring platform
            displayName: ClusterPulse Instance
            kind: ClusterPulse
            name: clusterpulses.charts.clusterpulse.io
            version: v1alpha1
          - description: Defines fine-grained access control policies for cluster
              monitoring
            displayName: Monitor Access Policy
            kind: MonitorAccessPolicy
            name: monitoraccesspolicies.clusterpulse.io
            version: v1alpha1
          - description: Defines a connection to a container registry for monitoring
            displayName: Registry Connection
            kind: RegistryConnection
            name: registryconnections.clusterpulse.io
            version: v1alpha1
        description: |
          ## About ClusterPulse
          ClusterPulse is a comprehensive multi-cluster monitoring and management platform designed for OpenShift environments. It provides centralized visibility, policy-based access control, and real-time monitoring across multiple clusters through a unified dashboard. For more information, visit [https://github.com/ClusterPulse/operator](https://github.com/ClusterPulse/operator).

          ## Features and Capabilities
          - **Multi-Cluster Monitoring**: Connect and monitor multiple OpenShift/Kubernetes clusters from a single interface
          - **Policy-Based Access Control**: Fine-grained access policies using MonitorAccessPolicy CRDs
          - **Real-Time Metrics**: Live cluster health, node status, and resource utilization tracking
          - **Registry Monitoring**: Monitor connected container registries
          - **OAuth Integration**: Seamless OpenShift OAuth integration for authentication
          - **Redis-Backed Storage**: Scalable data storage using Redis for metrics and state
        displayName: ClusterPulse
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - clusterpulse
        links:
        - name: ClusterPulse
          url: https://github.com/ClusterPulse/operator
        maintainers:
        - email: asmoore@redhat.com
          name: Asa Moore
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: ClusterPulse
        relatedImages:
        - docker.io/clusterpulse/clusterpulse-operator:0.2.1
        - quay.io/community-operator-pipeline-prod/clusterpulse:0.2.1
        version: 0.2.1
      entries:
      - name: clusterpulse.v0.2.1
        version: 0.2.1
      - name: clusterpulse.v0.2.0
        version: 0.2.0
      - name: clusterpulse.v0.1.1
        version: 0.1.1
      name: fast-v0
    defaultChannel: fast-v0
    packageName: clusterpulse
    provider:
      name: ClusterPulse
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-apigateway-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-apigateway-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "Resource",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "RestAPI",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "Stage",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "VPCLink",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/apigateway-controller:1.4.0
          createdAt: "2025-11-29T04:47:28Z"
          description: AWS API Gateway controller is a service controller for managing
            API Gateway resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIIntegrationResponse represents the state of an AWS apigateway
              APIIntegrationResponse resource.
            displayName: APIIntegrationResponse
            kind: APIIntegrationResponse
            name: apiintegrationresponses.apigateway.services.k8s.aws
            version: v1alpha1
          - description: APIKey represents the state of an AWS apigateway APIKey resource.
            displayName: APIKey
            kind: APIKey
            name: apikeys.apigateway.services.k8s.aws
            version: v1alpha1
          - description: APIMethodResponse represents the state of an AWS apigateway
              APIMethodResponse resource.
            displayName: APIMethodResponse
            kind: APIMethodResponse
            name: apimethodresponses.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Authorizer represents the state of an AWS apigateway Authorizer
              resource.
            displayName: Authorizer
            kind: Authorizer
            name: authorizers.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Deployment represents the state of an AWS apigateway Deployment
              resource.
            displayName: Deployment
            kind: Deployment
            name: deployments.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Integration represents the state of an AWS apigateway Integration
              resource.
            displayName: Integration
            kind: Integration
            name: integrations.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Method represents the state of an AWS apigateway Method resource.
            displayName: Method
            kind: Method
            name: methods.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Resource represents the state of an AWS apigateway Resource
              resource.
            displayName: Resource
            kind: Resource
            name: resources.apigateway.services.k8s.aws
            version: v1alpha1
          - description: RestAPI represents the state of an AWS apigateway RestAPI
              resource.
            displayName: RestAPI
            kind: RestAPI
            name: restapis.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Stage represents the state of an AWS apigateway Stage resource.
            displayName: Stage
            kind: Stage
            name: stages.apigateway.services.k8s.aws
            version: v1alpha1
          - description: VPCLink represents the state of an AWS apigateway VPCLink
              resource.
            displayName: VPCLink
            kind: VPCLink
            name: vpclinks.apigateway.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon API Gateway resources in AWS from within your Kubernetes cluster.

          **About Amazon API Gateway**

          Amazon API Gateway is an AWS service for creating, publishing, maintaining, monitoring, and securing REST, HTTP, and WebSocket APIs at any scale. API developers can create APIs that access AWS or other web services, as well as data stored in the AWS Cloud. As an API Gateway API developer, you can create APIs for use in your own client applications. Or you can make your APIs available to third-party app developers.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon API Gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apigateway
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon API Gateway Developer Resources
          url: https://aws.amazon.com/api-gateway/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: apigateway maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/apigateway-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-apigateway-controller@sha256:89027e21575cdcac32288b71085977492290e54a3e061b63b6ee6d4bf60cfd6c
        version: 1.4.0
      entries:
      - name: ack-apigateway-controller.v1.4.0
        version: 1.4.0
      - name: ack-apigateway-controller.v1.3.2
        version: 1.3.2
      - name: ack-apigateway-controller.v1.3.1
        version: 1.3.1
      - name: ack-apigateway-controller.v1.3.0
        version: 1.3.0
      - name: ack-apigateway-controller.v1.2.5
        version: 1.2.5
      - name: ack-apigateway-controller.v1.2.4
        version: 1.2.4
      - name: ack-apigateway-controller.v1.2.3
        version: 1.2.3
      - name: ack-apigateway-controller.v1.2.2
        version: 1.2.2
      - name: ack-apigateway-controller.v1.2.1
        version: 1.2.1
      - name: ack-apigateway-controller.v1.1.0
        version: 1.1.0
      - name: ack-apigateway-controller.v1.0.6
        version: 1.0.6
      - name: ack-apigateway-controller.v1.0.5
        version: 1.0.5
      - name: ack-apigateway-controller.v1.0.4
        version: 1.0.4
      - name: ack-apigateway-controller.v1.0.2
        version: 1.0.2
      - name: ack-apigateway-controller.v1.0.1
        version: 1.0.1
      - name: ack-apigateway-controller.v1.0.0
        version: 1.0.0
      - name: ack-apigateway-controller.v0.0.3
        version: 0.0.3
      - name: ack-apigateway-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-apigateway-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: servicemeshoperator3
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: servicemeshoperator3.v3.0.0-tp.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.24.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.24.1"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh-tech-preview/istio-rhel9-operator@sha256:f5dfe495ba92ecb880485b66cfafbf6451f8142b8e0d5fd7f29db94171c51336
          createdAt: "2024-12-12T10:28:38Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1alpha1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1alpha1
          - description: IstioRevisionTag references a Istio or IstioRevision object
              and serves as an alias for sidecar injection.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1alpha1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-proxyv2-rhel9@sha256:c21481d6dae58b82dac93b1b47b9d9f53a30617fa9d930a0b5d075620cffa74b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0848d89e9f94be04f17beeee75807d7fd11102737e6483ee674f2cf3ae28f213
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-must-gather-rhel9@sha256:e3978aecaafe2678355e21a7303f8620f53d8b774f6592f10527c15bae957224
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-operator-bundle@sha256:f596dc9323da89f5e45e71192f0fa698b7bb29b8205eaa0fc1659d68fa7401f4
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-proxyv2-rhel9@sha256:cbd6bc47341ab8618609f89d063552e17232541c727429855c01deab73e4d06c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-rhel9-operator@sha256:f5dfe495ba92ecb880485b66cfafbf6451f8142b8e0d5fd7f29db94171c51336
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-must-gather-rhel9@sha256:2bf3704ba8d5945973ccf6bd13418457e929836352acf0ea6a47976ffa246616
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-pilot-rhel9@sha256:376f64eab0ebeb06035983a60d1e7647c5d41354f31a49cb34f4deb7b6708e3e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-pilot-rhel9@sha256:ea9372fabe06cd8e65ea7b4567ce3c8fbddd9d673dc34a12743fd95c548059d1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-cni-rhel9@sha256:d0ab36246c556249b6d67346eb0c72ebd22483a6502caa0fc75112a8d327b053
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-cni-rhel9@sha256:f16cd8a29ddcbb3de77cbfcf7e1da78e42cc0c1c502132d477a01c52689cdf23
        version: 3.0.0-tp.2
      entries:
      - name: servicemeshoperator3.v3.0.0-tp.2
        version: 3.0.0-tp.2
      - name: servicemeshoperator3.v3.0.0-tp.1
        version: 3.0.0-tp.1
      name: candidates
    - currentCSV: servicemeshoperator3.v3.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
          createdAt: "2025-11-26T08:45:22Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        version: 3.2.1
      entries:
      - name: servicemeshoperator3.v3.2.1
        version: 3.2.1
      - name: servicemeshoperator3.v3.2.0
        version: 3.2.0
      - name: servicemeshoperator3.v3.1.4
        version: 3.1.4
      - name: servicemeshoperator3.v3.1.3
        version: 3.1.3
      - name: servicemeshoperator3.v3.1.2
        version: 3.1.2
      - name: servicemeshoperator3.v3.1.1
        version: 3.1.1
      - name: servicemeshoperator3.v3.1.0
        version: 3.1.0
      - name: servicemeshoperator3.v3.0.7
        version: 3.0.7
      - name: servicemeshoperator3.v3.0.6
        version: 3.0.6
      - name: servicemeshoperator3.v3.0.5
        version: 3.0.5
      - name: servicemeshoperator3.v3.0.4
        version: 3.0.4
      - name: servicemeshoperator3.v3.0.3
        version: 3.0.3
      - name: servicemeshoperator3.v3.0.2
        version: 3.0.2
      - name: servicemeshoperator3.v3.0.1
        version: 3.0.1
      - name: servicemeshoperator3.v3.0.0
        version: 3.0.0
      name: stable
    - currentCSV: servicemeshoperator3.v3.0.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.24.6"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.24.6"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:e9d8d0b3b0602ffc570843ce78e5445a4fb540b57a2d066460fe77f1ace57ebd
          createdAt: "2025-10-24T06:24:59Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:6cdd4499ffcf0843dc9cf68a15654a995514e3f97418e6aa06bc50271305dcac
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:e9d8d0b3b0602ffc570843ce78e5445a4fb540b57a2d066460fe77f1ace57ebd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        version: 3.0.7
      entries:
      - name: servicemeshoperator3.v3.0.7
        version: 3.0.7
      - name: servicemeshoperator3.v3.0.6
        version: 3.0.6
      - name: servicemeshoperator3.v3.0.5
        version: 3.0.5
      - name: servicemeshoperator3.v3.0.4
        version: 3.0.4
      - name: servicemeshoperator3.v3.0.3
        version: 3.0.3
      - name: servicemeshoperator3.v3.0.2
        version: 3.0.2
      - name: servicemeshoperator3.v3.0.1
        version: 3.0.1
      - name: servicemeshoperator3.v3.0.0
        version: 3.0.0
      name: stable-3.0
    - currentCSV: servicemeshoperator3.v3.1.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.26.6"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.26.6"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:a60cff87a152304bc961ce7af4cc3f650998652640ef8599c50aeae2a3c15391
          createdAt: "2025-10-24T11:25:36Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:459720a287d839ad70886879d8089d821a2f98dcc32a5db5732ecf18a05b3fa6
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:a60cff87a152304bc961ce7af4cc3f650998652640ef8599c50aeae2a3c15391
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        version: 3.1.4
      entries:
      - name: servicemeshoperator3.v3.1.4
        version: 3.1.4
      - name: servicemeshoperator3.v3.1.3
        version: 3.1.3
      - name: servicemeshoperator3.v3.1.2
        version: 3.1.2
      - name: servicemeshoperator3.v3.1.1
        version: 3.1.1
      - name: servicemeshoperator3.v3.1.0
        version: 3.1.0
      name: stable-3.1
    - currentCSV: servicemeshoperator3.v3.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
          createdAt: "2025-11-26T08:45:22Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        version: 3.2.1
      entries:
      - name: servicemeshoperator3.v3.2.1
        version: 3.2.1
      - name: servicemeshoperator3.v3.2.0
        version: 3.2.0
      name: stable-3.2
    defaultChannel: stable
    packageName: servicemeshoperator3
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Thales Group
      provider-url: https://cpl.thalesgroup.com/data-protection
    name: cte-k8s-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cte-k8s-operator.v1.7.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cte-k8s-operator.csi.cte.cpl.thalesgroup.com/v1",
                "kind": "CteK8sOperator",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cte-k8s-operator"
                  },
                  "name": "ctek8soperator-sample"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-25T21:01:30Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CteK8sOperator is the Schema for the ctek8soperators API
            displayName: Cte K8s Operator
            kind: CteK8sOperator
            name: ctek8soperators.cte-k8s-operator.csi.cte.cpl.thalesgroup.com
            version: v1
        description: |-
          # Kubernetes Operator to deploy CTE for Kubernetes on an OCP/K8s Cluster.
          This Operator deploys CTE for Kubernetes on the OCP/K8s Cluster.

          ## About this operator

          It is a GO based operator that manages the deployment, upgrade and
          deletion of the CTE for Kubernetes on all the nodes of the Cluster on
          which it is installed.

          ## Prerequisites

          Applicable only on OCP cluster
            For an OCP cluster the operator requires a SecurityContextConstraints (SCC)
            to be created before installation. To create the SecurityContextConstraints
            you can use a definition provided by the deployment scripts at
            https://github.com/thalescpl-io/ciphertrust-transparent-encryption-kubernetes

            Look for cte-csi-scc.yaml file in deploy/kubernetes/X.Y.Z/operator-deploy/
            Where X.Y.Z is the last released version of the deploy scripts.

          For more information refer to the guide at:
            https://thalesdocs.com/ctp/cte-con/cte-k8s/latest/cte-4-k8s/index.html
        displayName: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Encryption
        - Data Protection
        - Security
        - Kubernetes
        - Openshift
        links:
        - name: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          url: https://cpl.thalesgroup.com/encryption/ciphertrust-transparent-data-encryption-kubernetes
        maintainers:
        - email: technical.support.DIS@thalesgroup.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Thales Group
          url: https://cpl.thalesgroup.com/data-protection
        relatedImages:
        - registry.connect.redhat.com/thalescpl/ciphertrust-transparent-encryption-kubernetes-operator-bundle@sha256:129f3a9f1fe96aafbfa68eb1524bf912ebc4167ed276e87a88fad30b60a5b3fc
        - docker.io/thalesciphertrust/ciphertrust-transparent-encryption-kubernetes-operator@sha256:d30ff765703db69846f0302cb06aa5315641796d56342a9be4549fb171414871
        version: 1.7.8
      entries:
      - name: cte-k8s-operator.v1.7.8
        version: 1.7.8
      name: candidate
    - currentCSV: cte-k8s-operator.v1.7.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cte-k8s-operator.csi.cte.cpl.thalesgroup.com/v1",
                "kind": "CteK8sOperator",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cte-k8s-operator"
                  },
                  "name": "ctek8soperator-sample"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-25T21:01:30Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CteK8sOperator is the Schema for the ctek8soperators API
            displayName: Cte K8s Operator
            kind: CteK8sOperator
            name: ctek8soperators.cte-k8s-operator.csi.cte.cpl.thalesgroup.com
            version: v1
        description: |-
          # Kubernetes Operator to deploy CTE for Kubernetes on an OCP/K8s Cluster.
          This Operator deploys CTE for Kubernetes on the OCP/K8s Cluster.

          ## About this operator

          It is a GO based operator that manages the deployment, upgrade and
          deletion of the CTE for Kubernetes on all the nodes of the Cluster on
          which it is installed.

          ## Prerequisites

          Applicable only on OCP cluster
            For an OCP cluster the operator requires a SecurityContextConstraints (SCC)
            to be created before installation. To create the SecurityContextConstraints
            you can use a definition provided by the deployment scripts at
            https://github.com/thalescpl-io/ciphertrust-transparent-encryption-kubernetes

            Look for cte-csi-scc.yaml file in deploy/kubernetes/X.Y.Z/operator-deploy/
            Where X.Y.Z is the last released version of the deploy scripts.

          For more information refer to the guide at:
            https://thalesdocs.com/ctp/cte-con/cte-k8s/latest/cte-4-k8s/index.html
        displayName: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Encryption
        - Data Protection
        - Security
        - Kubernetes
        - Openshift
        links:
        - name: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          url: https://cpl.thalesgroup.com/encryption/ciphertrust-transparent-data-encryption-kubernetes
        maintainers:
        - email: technical.support.DIS@thalesgroup.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Thales Group
          url: https://cpl.thalesgroup.com/data-protection
        relatedImages:
        - docker.io/thalesciphertrust/ciphertrust-transparent-encryption-kubernetes-operator@sha256:d30ff765703db69846f0302cb06aa5315641796d56342a9be4549fb171414871
        - registry.connect.redhat.com/thalescpl/ciphertrust-transparent-encryption-kubernetes-operator-bundle@sha256:129f3a9f1fe96aafbfa68eb1524bf912ebc4167ed276e87a88fad30b60a5b3fc
        version: 1.7.8
      entries:
      - name: cte-k8s-operator.v1.7.8
        version: 1.7.8
      name: stable
    defaultChannel: stable
    packageName: cte-k8s-operator
    provider:
      name: Thales Group
      url: https://cpl.thalesgroup.com/data-protection
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ssm-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ssm-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ssm-controller:1.2.0
          createdAt: "2025-11-29T04:01:51Z"
          description: AWS SSM controller is a service controller for managing SSM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Document represents the state of an AWS ssm Document resource.
            displayName: Document
            kind: Document
            name: documents.ssm.services.k8s.aws
            version: v1alpha1
          - description: PatchBaseline represents the state of an AWS ssm PatchBaseline
              resource.
            displayName: PatchBaseline
            kind: PatchBaseline
            name: patchbaselines.ssm.services.k8s.aws
            version: v1alpha1
          - description: ResourceDataSync represents the state of an AWS ssm ResourceDataSync
              resource.
            displayName: ResourceDataSync
            kind: ResourceDataSync
            name: resourcedatasyncs.ssm.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon SSM resources in AWS from within your Kubernetes cluster.

          **About Amazon SSM**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon SSM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ssm
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SSM Developer Resources
          url: https://aws.amazon.com/SSM/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ssm maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ssm-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ssm-controller@sha256:0566dc14268fb3a49628364838fe8fd3548facbf97b1fea3dc23e8282ba9400f
        version: 1.2.0
      entries:
      - name: ack-ssm-controller.v1.2.0
        version: 1.2.0
      - name: ack-ssm-controller.v1.1.2
        version: 1.1.2
      - name: ack-ssm-controller.v1.1.1
        version: 1.1.1
      - name: ack-ssm-controller.v1.1.0
        version: 1.1.0
      - name: ack-ssm-controller.v1.0.12
        version: 1.0.12
      - name: ack-ssm-controller.v1.0.10
        version: 1.0.10
      - name: ack-ssm-controller.v1.0.9
        version: 1.0.9
      - name: ack-ssm-controller.v1.0.8
        version: 1.0.8
      - name: ack-ssm-controller.v1.0.7
        version: 1.0.7
      - name: ack-ssm-controller.v1.0.6
        version: 1.0.6
      - name: ack-ssm-controller.v1.0.5
        version: 1.0.5
      - name: ack-ssm-controller.v1.0.4
        version: 1.0.4
      - name: ack-ssm-controller.v1.0.3
        version: 1.0.3
      - name: ack-ssm-controller.v1.0.2
        version: 1.0.2
      - name: ack-ssm-controller.v1.0.1
        version: 1.0.1
      - name: ack-ssm-controller.v1.0.0
        version: 1.0.0
      - name: ack-ssm-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-ssm-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: istio-workspace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: istio-workspace-operator.v0.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "workspace.maistra.io/v1alpha1",
                "kind": "Session",
                "metadata": {
                  "name": "session-sample"
                },
                "spec": {
                  "ref": [
                    {
                      "args": {
                        "image": "quay.io/maistra-dev/istio-workspace-test:latest"
                      },
                      "name": "ratings-v1",
                      "strategy": "prepared-image"
                    }
                  ],
                  "route": {
                    "name": "x-workspace-route",
                    "type": "header",
                    "value": "feature-x"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: quay.io/maistra/istio-workspace:v0.5.3
          createdAt: "2022-11-16T13:50:35Z"
          description: Safely develop and test on any Kubernetes cluster without affecting
            others.
          operators.operatorframework.io/builder: operator-sdk-v1.22.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/maistra/istio-workspace
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Session controls the creation of the specialized hidden routes.
            displayName: Session
            kind: Session
            name: sessions.workspace.maistra.io
            version: v1alpha1
        description: "Istio Workspace enables developers to:\n\n * run one or more
          services locally during development but make it appear like it would be
          developed in the actual cluster\n   * this way you can use your favourite
          development tools\n   * have instant feedback loop\n   * don't make your
          machine overheating trying to run the whole cluster locally\n * safely preview
          incoming changes in pull requests without affecting regular users \n * have
          confidence in testing or troubleshooting your services directly in the cluster\n\nIstio
          Workspace supports testing on multi-user environment in an unobtrusive way.\nIt
          doesn’t really matter if it is QE cluster or actual production. We give
          you confidence that your changes won’t blow up the cluster, and your users
          won’t even notice a glitch.\n\nYou will need [Kubernetes](https://k8s.io)
          or [Openshift](https://openshift.com) cluster with  [Istio](https://istio.io/)
          installed. \n\nYou can read more about our vision on [Red Hat Developer’s
          blog](https://developers.redhat.com/blog/2020/07/14/developing-and-testing-on-production-with-kubernetes-and-istio-workspace/)
          or ...\n\n## See it in action!\n\n[![https://youtu.be/XTNVadUzMCc](https://img.youtube.com/vi/XTNVadUzMCc/hqdefault.jpg)](https://youtu.be/XTNVadUzMCc)\n\nWatch
          demo: [\"How to develop on production: An introduction to Istio-Workspaces\"](https://youtu.be/XTNVadUzMCc).\n\n##
          Documentation\n\nMore details can be found on our [documentation page](https://istio-workspace-docs.netlify.com/).\n"
        displayName: Istio Workspace
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - telepresence
        links:
        - name: Istio Workspace Documentation
          url: https://istio-workspace-docs.netlify.com/
        - name: How to install CLI tool
          url: https://github.com/maistra/istio-workspace#install-in-two-easy-steps
        maintainers:
        - email: aslak@redhat.com
          name: Aslak Knutsen
        - email: bartosz@redhat.com
          name: Bartosz Majsak
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/istio-workspace-operator@sha256:7a581f048aee64701b23f1a0e94d77f2e6932ee8229fd46b1635d8df6994e174
        - quay.io/maistra/istio-workspace:v0.5.3
        version: 0.5.3
      entries:
      - name: istio-workspace-operator.v0.5.3
        version: 0.5.3
      - name: istio-workspace-operator.v0.5.2
        version: 0.5.2
      - name: istio-workspace-operator.v0.5.1
        version: 0.5.1
      - name: istio-workspace-operator.v0.5.0
        version: 0.5.0
      - name: istio-workspace-operator.v0.4.0
        version: 0.4.0
      - name: istio-workspace-operator.v0.3.0
        version: 0.3.0
      - name: istio-workspace-operator.v0.2.0
        version: 0.2.0
      - name: istio-workspace-operator.v0.1.0
        version: 0.1.0
      - name: istio-workspace-operator.v0.0.10
        version: 0.0.10
      - name: istio-workspace-operator.v0.0.9
        version: 0.0.9
      - name: istio-workspace-operator.v0.0.8
        version: 0.0.8
      - name: istio-workspace-operator.v0.0.7
        version: 0.0.7
      - name: istio-workspace-operator.v0.0.6
        version: 0.0.6
      name: alpha
    defaultChannel: alpha
    packageName: istio-workspace-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: resource-locker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: resource-locker-operator.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "ResourceLocker",
                "metadata": {
                  "name": "combined"
                },
                "spec": {
                  "patches": [
                    {
                      "id": "patch1",
                      "patchTemplate": "metadata:\n  annotations:\n    {{ (index . 0).metadata.name }}: {{ (index . 1).metadata.name }}\n",
                      "patchType": "application/strategic-merge-patch+json",
                      "sourceObjectRefs": [
                        {
                          "apiVersion": "v1",
                          "kind": "Namespace",
                          "name": "resource-locker-test"
                        },
                        {
                          "apiVersion": "v1",
                          "kind": "ServiceAccount",
                          "name": "default",
                          "namespace": "resource-locker-test"
                        }
                      ],
                      "targetObjectRef": {
                        "apiVersion": "v1",
                        "kind": "ServiceAccount",
                        "name": "test",
                        "namespace": "resource-locker-test"
                      }
                    },
                    {
                      "id": "patch2",
                      "patchTemplate": "metadata:\n  annotations:\n    {{ (index . 0) }}: {{ (index . 1) }}\n",
                      "patchType": "application/strategic-merge-patch+json",
                      "sourceObjectRefs": [
                        {
                          "apiVersion": "v1",
                          "fieldPath": "$.metadata.uid",
                          "kind": "Namespace",
                          "name": "resource-locker-test"
                        },
                        {
                          "apiVersion": "v1",
                          "fieldPath": "$.metadata.uid",
                          "kind": "ServiceAccount",
                          "name": "default",
                          "namespace": "resource-locker-test"
                        }
                      ],
                      "targetObjectRef": {
                        "apiVersion": "v1",
                        "kind": "ServiceAccount",
                        "name": "test",
                        "namespace": "resource-locker-test"
                      }
                    }
                  ],
                  "resources": [
                    {
                      "object": {
                        "apiVersion": "networking.k8s.io/v1",
                        "kind": "NetworkPolicy",
                        "metadata": {
                          "name": "allow-from-same-namespace",
                          "namespace": "resource-locker-test"
                        },
                        "spec": {
                          "ingress": [
                            {
                              "from": [
                                {
                                  "podSelector": {}
                                }
                              ]
                            }
                          ],
                          "podSelector": {}
                        }
                      }
                    },
                    {
                      "object": {
                        "apiVersion": "networking.k8s.io/v1",
                        "kind": "NetworkPolicy",
                        "metadata": {
                          "name": "allow-from-default-namespace",
                          "namespace": "resource-locker-test"
                        },
                        "spec": {
                          "ingress": [
                            {
                              "from": [
                                {
                                  "namespaceSelector": {
                                    "matchLabels": {
                                      "name": "default"
                                    }
                                  }
                                }
                              ]
                            }
                          ],
                          "podSelector": {}
                        }
                      }
                    }
                  ],
                  "serviceAccountRef": {
                    "name": "default"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/resource-locker-operator@sha256:2176db02f561c24012c5179495c89c3819500dff21e89a62052d465eb3314b44
          createdAt: "2021-11-30T19:38:40Z"
          description: This operator provides a facility to lock resources and / or
            patches into the state described by its custom resource preventing any
            drifts.
          operatorframework.io/suggested-namespace: resource-locker-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/resource-locker-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ResourceLocker Represents the intetion to create and enforce
              a set of resources and/or patches.
            displayName: Resource Locker
            kind: ResourceLocker
            name: resourcelockers.redhatcop.redhat.io
            version: v1alpha1
        description: |
          The resource locker operator allows you to specify a set of configurations that the operator will "keep in place" (lock) preventing any drifts.
          Two types of configurations may be specified:
          * Resources. This will instruct the operator to create and enforce the specified resource. In this case the operator "owns" the created resources.
          * Patches to resources. This will instruct the operator to patch- and enforce the change on- a pre-existing resource. In this case the operator does not "own" the resource.
          Locked resources are defined with the `ResourceLocker` CRD. Here is the high-level structure of this CRD:
          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: ResourceLocker
          metadata:
            name: test-simple-resource
          spec:
            resources:
            - object:
                apiVersion: v1
            ...
            patches:
            - targetObjectRef:
              ...
              patchTemplate: |
                metadata:
                  annotations:
                    ciao: hello
            ...
            serviceAccountRef:
              name: default
          ```
          It contains:
          * `resources`: representing an array of resources
          * `patches`: representing an array of patches
          * `serviceAccountRef`: a reference to a service account defined in the same namespace as the ResourceLocker CR, that will be used to create the resources and apply the patches. If not specified the service account will be defaulted to: `default`
          For each ResourceLocker a manager is dynamically allocated. For each resource and patch a controller with the needed watches is created and associated with the previously created manager.
          **Note**: creating a `ResourceLocker` CR will not work without due preparation (of the service account in particular). Follow these [instructions](https://github.com/redhat-cop/resource-locker-operator/blob/master/EXAMPLES.md) for a step by step walkthrough of the needed prerequisites to make this operator work.
        displayName: Resource Locker Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - resource_management
        - enforcing
        - patches
        - gitops
        links:
        - name: Resource Locker Operator
          url: https://github.com/redhat-cop/resource-locker-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/resource-locker-operator:latest
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/resource-locker-operator@sha256:9cc08639be2af4b72a9b816420d87dfa290a168fb83edc947a04b3e06cdb675b
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/resource-locker-operator@sha256:2176db02f561c24012c5179495c89c3819500dff21e89a62052d465eb3314b44
        version: 1.1.3
      entries:
      - name: resource-locker-operator.v1.1.3
        version: 1.1.3
      - name: resource-locker-operator.v1.1.2
        version: 1.1.2
      - name: resource-locker-operator.v1.1.1
        version: 1.1.1
      - name: resource-locker-operator.v1.1.0
        version: 1.1.0
      - name: resource-locker-operator.v1.0.9
        version: 1.0.9
      name: alpha
    defaultChannel: alpha
    packageName: resource-locker-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: SAP LinuxLab - Red Hat
      provider-url: https://github.com/sap-linuxlab
    name: sap-data-intelligence-observer-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: observer-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sdi.sap-redhat.io/v1alpha1",
                "kind": "SDIObserver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "observer-operator",
                    "app.kubernetes.io/instance": "sdiobserver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sdiobserver",
                    "app.kubernetes.io/part-of": "observer-operator"
                  },
                  "name": "sdiobserver-sample"
                },
                "spec": {
                  "manageSDINodeConfig": true,
                  "sdiNamespace": "sdi",
                  "sdiVSystemRoute": {
                    "managementState": "Managed"
                  },
                  "slcbNamespace": "sap-slcbridge",
                  "slcbRoute": {
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: quay.io/redhat-sap-cop/sdi-observer-operator:0.1.5
          description: Configure and enable SAP Data Intelligence to run on OpenShift
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SDIObserver is the Schema for the sdiobservers API
            displayName: SDIObserver
            kind: SDIObserver
            name: sdiobservers.sdi.sap-redhat.io
            version: v1alpha1
        description: Operator for monitoring SAP Data Intelligence (SDI) namespace
          and modifying objects in there that enable running of SDI on top of OpenShift.
          The observer shall be run in a dedicated namespace. It must be deployed
          before the SDI installation is started. This is the prerequisite for the
          successful installation of the SDI on OpenShift. Please refer to https://access.redhat.com/articles/5100521
          for detailed information.
        displayName: SAP Data Intelligence 3 - Observer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sdi
        - sap data intelligence
        links:
        - name: SAP Data Intelligence 3 - Observer Operator
          url: https://github.com/redhat-sap/sap-data-intelligence/tree/master/observer-operator
        maintainers:
        - email: mjiao@redhat.com
          name: Manjun Jiao
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: SAP LinuxLab - Red Hat
          url: https://github.com/sap-linuxlab
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/openshift-community-operators/sap-data-intelligence-observer-operator@sha256:5217360266f62fc8ba087fbc730074c14aacf62dbd124fdc3aa46650d51a243b
        - quay.io/redhat-sap-cop/sdi-observer-operator:0.1.5
        version: 0.0.3
      entries:
      - name: observer-operator.v0.0.3
        version: 0.0.3
      name: alpha
    - currentCSV: observer-operator.v1.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sdi.sap-redhat.io/v1alpha1",
                "kind": "SDIObserver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/part-of": "observer-operator"
                  },
                  "name": "sdiobserver-sample",
                  "namespace": "sdi-observer"
                },
                "spec": {
                  "manageSDINodeConfig": true,
                  "sdiNamespace": "sdi",
                  "sdiVSystemRoute": {
                    "managementState": "Managed"
                  },
                  "slcbNamespace": "sap-slcbridge",
                  "slcbRoute": {
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: quay.io/redhat-sap-cop/sdi-observer-operator:0.1.32
          createdAt: "20240726"
          description: Configure and enable SAP Data Intelligence 3 to run on OpenShift
            4
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/mjiao/sap-data-intelligence/tree/master/observer-operator
          support: RedHat-SAPLinuxLab
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SDIObserver is the Schema for the sdiobservers API
            displayName: SDIObserver
            kind: SDIObserver
            name: sdiobservers.sdi.sap-redhat.io
            version: v1alpha1
        description: Operator for monitoring SAP Data Intelligence (SDI) namespace
          and modifying objects in there that enable running of SDI on top of OpenShift.
          It must be deployed before the SDI installation is started. This is the
          prerequisite for the successful installation of the SDI on OpenShift. Please
          refer to https://access.redhat.com/articles/7042265#ocp-install-sdi-observer-operator
          for detailed information.
        displayName: SAP Data Intelligence 3 - Observer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sdi
        - sap data intelligence
        links:
        - name: SAP Data Intelligence 3 - Observer Operator
          url: https://github.com/redhat-sap/sap-data-intelligence/tree/master/observer-operator
        maintainers:
        - email: mjiao@redhat.com
          name: Manjun Jiao
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: SAP LinuxLab - Red Hat
          url: https://github.com/sap-linuxlab
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/community-operator-pipeline-prod/sap-data-intelligence-observer-operator@sha256:79aa33cb7e4b570fc9c962fc6bd59708c7e28e81e2b188608780fa085db91442
        - quay.io/redhat-sap-cop/sdi-observer-operator:0.1.32
        version: 1.0.9
      entries:
      - name: observer-operator.v1.0.9
        version: 1.0.9
      - name: observer-operator.v1.0.8
        version: 1.0.8
      - name: observer-operator.v1.0.7
        version: 1.0.7
      - name: observer-operator.v1.0.6
        version: 1.0.6
      - name: observer-operator.v1.0.5
        version: 1.0.5
      - name: observer-operator.v1.0.4
        version: 1.0.4
      - name: observer-operator.v1.0.3
        version: 1.0.3
      - name: observer-operator.v1.0.2
        version: 1.0.2
      - name: observer-operator.v1.0.1
        version: 1.0.1
      - name: observer-operator.v0.0.3
        version: 0.0.3
      name: stable
    defaultChannel: stable
    packageName: sap-data-intelligence-observer-operator
    provider:
      name: SAP LinuxLab - Red Hat
      url: https://github.com/sap-linuxlab
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-pipelines-operator-rh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-pipelines-operator-rh.v1.20.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    },
                    {
                      "name": "legacyPipelineRbac",
                      "value": "true"
                    },
                    {
                      "name": "createCABundleConfigMaps",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPruner",
                "metadata": {
                  "name": "pruner"
                },
                "spec": {
                  "disabled": true,
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.19.0 <1.20.2'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev","tektonpruners.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pruner
            displayName: Tekton Pruner
            kind: TektonPruner
            name: tektonpruners.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v1.3.2
          - Tekton Triggers: v0.33.0
          - Pipelines as Code: v0.37.4
          - Tekton Chains: v0.25.1
          - Tekton Hub (tech-preview): v1.22.7
          - Tekton Results (tech-preview): v0.16.0
          - Manual Approval Gate (tech-preview): v0.6.0
          - Tekton Pruner (tech-preview): v0.2.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.20/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:cbff2c3468f239276802e0a3a98301386ae7a98b183c4ec5b83f4b30ccde56cf
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:a6da589eb9c40c62e06c64f3d34578053328bef388325e8927872cd75c4ebe29
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:d941644bf6672ce0e6151f6ae7f775ba173795baf4a79eb8bba1d2b67ea359d5
        - registry.redhat.io/ubi9/openjdk-17@sha256:555c8bcd2596637befd1a6da4aa949c5a2640cf66e09c2dfb932afe37e39095e
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:0e9d28f1ef4f3348349489bf813c20e249a10d2735c409dccf8067e082ef0b4d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:cba1718306397fc60e1d6d468c92ea133188229f57a76f9b00eb8edd22cec5c3
        version: 1.20.2
      entries:
      - name: openshift-pipelines-operator-rh.v1.20.2
        version: 1.20.2
      - name: openshift-pipelines-operator-rh.v1.20.1
        version: 1.20.1
      - name: openshift-pipelines-operator-rh.v1.20.0
        version: 1.20.0
      - name: openshift-pipelines-operator-rh.v1.19.3
        version: 1.19.3
      - name: openshift-pipelines-operator-rh.v1.19.2
        version: 1.19.2
      - name: openshift-pipelines-operator-rh.v1.19.1
        version: 1.19.1
      - name: openshift-pipelines-operator-rh.v1.19.0
        version: 1.19.0
      - name: openshift-pipelines-operator-rh.v1.18.1
        version: 1.18.1
      - name: openshift-pipelines-operator-rh.v1.18.0
        version: 1.18.0
      - name: openshift-pipelines-operator-rh.v1.17.1
        version: 1.17.1
      - name: openshift-pipelines-operator-rh.v1.17.0
        version: 1.17.0
      - name: openshift-pipelines-operator-rh.v1.16.0
        version: 1.16.0
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: latest
    - currentCSV: openshift-pipelines-operator-rh.v1.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "clusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "communityClusterTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "db_user": "result",
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.13.0 <1.14.5'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              ClusterTasks, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.56.4
          - Tekton Triggers: v0.26.2
          - Pipelines as Code: v0.24.6
          - Tekton Chains: v0.20.1
          - Tekton Hub (tech-preview): v1.16.0
          - Tekton Results (tech-preview): v0.9.2

          ## Getting Started
          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/container-platform/4.15/cicd/pipelines/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)
          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:8709d35b571c163ed6f3e24b6e653e7dce8ee80f0440795e50e69f0ecfadf304
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:9d1436c1569dfb8dcab5c0ed2d675fb4f8024fb3ef85707393d1091cb5203749
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:0c9d398a73708b5877467547ac6fb1e9ccdb65159c454d31628e93a59da47f3c
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:3cfa3e3ad23f04e75417c2c0fd88c6b0f2b69361bc6947cbdffc594ecbee6d28
        - registry.redhat.io/rhel8/postgresql-13@sha256:3903d562425dd564986123280dc076548fb3d24c74138dcd857652f53052e0a7
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:38944f69b37bedb05903dc14c58415dba21873d2dd9a0fd2084cbf7afd4d5fde
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:8f0704328fef0e6031088290fe47e1f7625c4825ebd2e4edd9546279f87c5fb3
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:a69dc4520666b54d621f1aa8098c1457b2d5d2db125d612ad028ddea1a4e53fb
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:cf566538843704d03a05142639d58e8cb074aaf4bcdd03c0585574c3bc960496
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:21214c77e4a525e6eb0a8bd0e77bb7ede120ec2030dd198fe00ff1cd79a58239
        - registry.redhat.io/rhel8/skopeo@sha256:e297b84ba6f1d5eb2c37e2c3b31c9a9a4c39f9590e7d7c32388165245bde4835
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e53cec5cde1f23ab17082e3326e3328468dba3ec6c0462f06d030e0b1dfbd8aa
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:9f26e5a8d063f791d355481b54f02f4394e4092c20606e5bfcc604c669b995ec
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:bba6ba57778ecf3f5421a2eed5fa0d1192a53e5640413ffa83e6553296db13ea
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:e72a7f6fb660ad48e275a70cd43c085df4b87405e5e8c85d8665b421551c4d71
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:ffcf1b0e3215b8e2525be0836d7c727e639b64900954a804ab2a58f9bc747943
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:bf94a5e27a3a662a4a35ddbca377e4c311b8bda45748d7c4cb5549ac46d4f4a0
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a52bd29991a8a54853c938725162ee832f95f053b149b657bc24358f9aa0a1f4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:34a3c32c391ff5f810f0c84ff3ff5a729c1a12245f4edc66b4b22bbf30ab1600
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:a180db14ad8840a766a3cfec7faf94ef909a079276be904b4d1064f8aa8c0ae4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:d60baacc52945bb442bb8b78fe8848f4a4f6e7e9a2818062631d174db5f31c67
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:bd524c790588652e11fe8ba07ea8df0a2d483840c9a84fb35f3dd3e8157233a5
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:2077cdcb34dcd57972f71b403cad02ea715e19a7096e95dfac228168e49acb15
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:09f162c742dce25deac02bdb5395a7fb714f171f924471c96f24680f95ddc975
        - registry.redhat.io/ubi8/ubi-minimal@sha256:6825946f10e8c81586fa7815c4f06016af05cfc231d921ec9699402a6655d201
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:f3467d9f19c40b5c70659f0d22750e603dd7cd11cdcc0b81310a5d2abfbffb2e
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:20195b44af8e0b2238148003aacb2b278a9c3468893b3967da45e7ae1c3b2e9b
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:7a460bc5609afb2865e20f04b5c0e86ccba3c9a31a09ac14d799556d4b816356
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:f7b19ce26be742c4aaa458d37bc5ad373b5b29b20aaa7d308349687d3cbd8838
        version: 1.14.5
      entries:
      - name: openshift-pipelines-operator-rh.v1.14.5
        version: 1.14.5
      - name: openshift-pipelines-operator-rh.v1.14.4
        version: 1.14.4
      - name: openshift-pipelines-operator-rh.v1.14.3
        version: 1.14.3
      name: pipelines-1.14
    - currentCSV: openshift-pipelines-operator-rh.v1.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "clusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "communityClusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "db_user": "result",
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          createdAt: "2024-10-21T06:27:28Z"
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.14.0 <1.15.2'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              ClusterTasks, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.59.4
          - Tekton Triggers: v0.27.0
          - Pipelines as Code: v0.27.2
          - Tekton Chains: v0.20.1
          - Tekton Hub (tech-preview): v1.17.0
          - Tekton Results (tech-preview): v0.10.0
          - Manual Approval Gate (tech-preview): v0.2.2

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.15/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:1bc3273f138cd3a48610df28c87d05fda126d8cc29d2780a0c4738ea9bd3e85d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:8723ee8cf1f41a85fdfe2699b014df105db50be7c995371dafea698ade65c91c
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:c45a22f5660fe2228eb55d50f061fca7854e52af7c6600f62f8bcae93c15edb1
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:d92d48d42e42082a29d61a0f8b8ba7dcfd5e8ef0a8f66ded0bedce24fc81be33
        - registry.redhat.io/rhel8/buildah@sha256:aac6629389db17e99894c5bee0da01d4c8065d11d8c6f6e1602f9484290baa70
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:e73c1fbaa426e3fc8acda26a38abd1d25de1f933893479269375af40da53dc5f
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:46a680ca7416fc85ecc2d5c7fff84a45b493d02f10c087d3088992e6475f0ee9
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:4ccbc6bb8fadc5ffba0ff8b0206031b51db1c4acd7c0d8bbd050bc73975d4a2e
        - registry.redhat.io/rhel8/skopeo@sha256:29465586e92ed04d2878dcdeda2d508c7e8e7539762e10296b52d631929960aa
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:3e80a493aac65370228ff32643e0fb8418f6fb576934e804fa1c65b38cc3d203
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:fcf8b863aa41a702afef381a087f4daff7dcad1e34b03d2c0b0192bd5365cb71
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:14f4e749cdc026dfb19a53748a4eb64b875d7dc7626fc0b30edef364f3dd612c
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:962780950d1ef7ebbf285ee7fc7c2d8fc9af1b9cbec6c29dffecc133c8933afd
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:c2193380a48239c024d9dfdbeb45cf2c7f462ecb8ce23fa53c5fdfc162bdab58
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:b3642afe8e487884ee62dd6f0d22b84627552afeaa61a3f56eada858795f1d5b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:8a593c1144709c9aeffbeb68d0b4b08368f528e7bb6f595884b2474bcfbcafcd
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:98bf4813124dc9ada33da9530678e239c7953a1302a6cf9dee2277c276fb5758
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:91c836b13d3b9d4dafd4198148172f3f42122f9b38bb8be53c26f5b3ed9cf045
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:e3a11aee5518641ad453ce310b159c52d827f443f99eb61a4f5427699c1ab16a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:9b6bd5c8a5da471bb05b4bda7a4ae3a86b9b1d9128971aa6ce6f4874bb6dfa0d
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:f6232daffac97d841801ca3b356383ae73dd3f74ca6d635475283865737b7862
        - registry.redhat.io/ubi8/openjdk-17@sha256:e8cc2e476282b75d89c73057bfa713db22d72bdb2808d62d981a84c33beb2575
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/ubi8/ubi-minimal@sha256:f729a7f5685ea823e87ffd68aff988f2b8ff8d52126ade4e6de7c68088f28ebd
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:fbf4e6f210ca31b8864f84731b5f5554fffc404d172c0207fb3d5c93b09c6c13
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:ed20e74c11ce0ca33bd832bf29d6311985affd67bda05f8cee045d8732d235f8
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:2f76b11f048e51d0e33f997c5fbe0f9bf4096a4a9cd97d5d6d8084fc10722c03
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:b37a8c805b43eef99b2e7df017622965eca79f0f8f4b1f05917fc2313dbdf40d
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:017455cc1c5ceaaa1034f197d0a98645aff6d83fc71a4a5cb9961c3f283dc239
        - registry.redhat.io/rhel8/postgresql-13@sha256:a92a579f1aef66ac188d24fd489c456a1a3e311d95dcce652da6b81e28fbf725
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:3445ab65ae506460e44f304df03c249ce7283c5fb7cc2d75b660d43cccab70a8
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:702899060437993a77a038c36284b99358caea038c44ca5a94f892233bf85b99
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:f7fe262df4d73aa598d63ef4d463bbe84009e784d0bd2801de1131e6ee0f3ca7
        version: 1.15.2
      entries:
      - name: openshift-pipelines-operator-rh.v1.15.2
        version: 1.15.2
      - name: openshift-pipelines-operator-rh.v1.15.1
        version: 1.15.1
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: pipelines-1.15
    - currentCSV: openshift-pipelines-operator-rh.v1.16.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "clusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "communityClusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.16.0 <1.16.3'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              ClusterTasks, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.62.8
          - Tekton Triggers: v0.29.2
          - Pipelines as Code: v0.28.2
          - Tekton Chains: v0.22.3
          - Tekton Hub (tech-preview): v1.18.1
          - Tekton Results (tech-preview): v0.12.3
          - Manual Approval Gate (tech-preview): v0.3.1

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.16/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:a5a7b2be50f211d4d9d555b2a2e2302096c139ff5011d984cc386f1530007f16
        - registry.redhat.io/ubi8/openjdk-17@sha256:632e78989471859ca4ed1148b951a911f7e3b6e6516482be20967c4171612c55
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:de0d59029c02e5e9e6d607375b9b0ab573807f6531128f13d2579067767e8a3a
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:a1dfff15c9eed4dbefb484c76383073287de6f5429c878254d374a56ec7099ce
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:42ab9dedc88f3892e0712e7868cd21fb62e955f442aad6e837638fd38dd916f0
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:fc935150749190a1a978b7b59769cfa2a9e50577064959ba619d601057bd3355
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:945c1675422507e67eca06f246aca9e42aebcb2c874f74a284b5e5037f073082
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:a3dc7856ede01459cf74c9d17687c0c0ac5a404a6891266b12e19373218d728e
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:c2ca6ed42b7d7dc5d06be481e0f3b5da6c9219999a6f81401d434c0d1cbd9bdb
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:9a230bc21f8ef9ad37398922498ace9e6b13f21adcde2b00f418543919a9fa11
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:783174ac82d0d823f886d5fd1d89baf8cf467c13d651ee689a90a2c1c84c54b8
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:ea97b4d3d0882e9a3f5a98c6af3c147fa96de92e40710edf380b58442d5a623c
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:752baa0d02ea097bab1d014b623b8161ae67317cf2f56d264bcd5d0a270b096b
        - registry.redhat.io/rhel8/skopeo@sha256:1dcb4189c92da21ee58b3ca5433615e0208194c8412f7f1fb45fa491179aaf9b
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a27f43b86d2bc10c60de233be4e223b549d11c3aa7de390e485a79ac3fb4c533
        - registry.redhat.io/rhel8/postgresql-13@sha256:a308263f5d1071be8ac5c13fd84b40609988ca30ed56c22a8bc6769e107ce09b
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:8505951c0c40957eb65d551bc742e82642edf65385b6ca67bcf075036c42270d
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:914fe1fa1d806cd31a755905ffaf0803995f494fcd86690bc9b487dcd2a5b6ca
        - registry.redhat.io/ubi8/ubi-minimal@sha256:a47c89f02b39a98290f88204ed3d162845db0a0c464b319c2596cfd1e94b444e
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:aeff39254bc40092974781fe847a295a1c60f226f3f9ae2b7f2cc9259229c3e2
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:9e9c168af3b24b4f084fecf3bbf07f66bce0fc717641ccaaf07496b0a8498925
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:665f689731ca03f753c3c2dc4d4ae3f6bb001c498e54a6ef7b5d92ff00f2e0bd
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:6acc31f179b08658976cddcb9ef42f377edb29933d1d83a2ecebfd455bb68571
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:c701cca096953103ae21d8b0a4b76c39769f7458532fd868c798a5af2987439f
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:fba741840f20e079c720d4bc4a1df64d78785798300d0958709732299ea321e5
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:eedb4553f0be74f81910dbd1bebed0a4a07eaf4dc47ff0551a8ea52725127b6c
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:1658226f40a3f10d9f6c7776cba14a80644af4a56452d9617e85854daa671223
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:b6845e614c60e924061a52cdc091d0437a4dcd2d67d89158af2efdc930469b3a
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:4037f8eea26c4a4827d127f99a40992109a19efae30ce9d14a75283d69efe919
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:ab01a135f735a75b2b1efa184e1d205b60982c7a93ac48fb48b8eed66b54601a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a6c5e95bf9b42ed8d6e20139499daf70a633ab35eb76cca3eda9fd380f396602
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:23eb0e3b25d61d0f4fabea8dd954bd3956e3b7fec634e32d00c6a108e88330f9
        - registry.redhat.io/rhel8/buildah@sha256:5c7cd7c9a3d49e8905fc98693f6da605aeafae36bde5622dc78e12f31db3cd59
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:6b9964bd9be63c5e32d56cf7519c1b7eb65303e04bace7526873d4de73142eec
        version: 1.16.3
      entries:
      - name: openshift-pipelines-operator-rh.v1.16.3
        version: 1.16.3
      - name: openshift-pipelines-operator-rh.v1.16.2
        version: 1.16.2
      - name: openshift-pipelines-operator-rh.v1.16.1
        version: 1.16.1
      - name: openshift-pipelines-operator-rh.v1.16.0
        version: 1.16.0
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: pipelines-1.16
    - currentCSV: openshift-pipelines-operator-rh.v1.17.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.17.0 <1.17.1'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.4
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.65.6
          - Tekton Triggers: v0.30.1
          - Pipelines as Code: v0.29.1
          - Tekton Chains: v0.23.1
          - Tekton Hub (tech-preview): v1.19.2
          - Tekton Results (tech-preview): v0.13.3
          - Manual Approval Gate (tech-preview): v0.4.1

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.17/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:bcdd6f5a185d4969def2f806403fcd08527bfcc9f4ac0706b38bc358d1d64778
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:e784efdbe32daa310e7d3c7d4645613814573d12ee1dbbf74aad68cfa28761b5
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:cf4e3a23de646038e18a170f1edf49fa75bb72d49e9308511b680e24c795f1b0
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:56337f8ceb6f2cce84090f9fee17bdc9eb87dc4e61c36c6353014c0f99cf6273
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:7c22937c957b4f405bc014f4b8210f88c1e5acbc7fb59a29c9ee8837d4e0249b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:fa2bec9b5cb68fccf9dd331881ff225abf6704973ee3b283e2b5f294aafe3ac2
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:d854cdf80b03566e138d1530e0200e7d9a349524d37ce0244f8ba97f6af3156e
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a34bd66f9eb15cb09f7342d7561f23697039a8521fbe76d0f5104d19bed0a05a
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:58343c719d9c4d536424a55e280cc3f67c2bff6f0e0b1b56678f555d5c12f381
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:bf9071d0e144632a0acd90ddb4d2e1ecd435e1904e22233a1e1978cbe3a0206b
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:934563cc735bc0c3421ce444efdcb3bbb38c1a42a2abcf49294af30e7f5cab8e
        - registry.redhat.io/rhel8/skopeo@sha256:7fd65200b4847fc84fba0466519b87f915e28c0e9bc90d3022beecfebffd4af8
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:a4f1c5397fdedd9c820f51e0c09d6b464f2821740c86ab61772aed14cbb33ae8
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:37109f6de75dda750496f6668164d0dceaf9db5278e8c034708436f39de3276e
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:245e5f77eef067b48f7262de04485b4ab5f195736dc128d2c574f32bb05d3b2d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:d2b4ad8837421df74485f6752832de75e6543940d8c32fa18811d7878cf4e7b8
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:4cf8548faf20fa56d4ec698975bb90bed4474661170cc51b6892a144d0407497
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:b614e12432bac989bf789ac84ec0a2bf55f5cab9ecd863432c7d11e4e176def0
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e9352d062e933f23277e81333b42fd86ee767e9fd273c8d4528ede410b6d7afb
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:b44ee90952a1556b9db646795d415d3cec2d1de7e01356438b53ba44c09988db
        - registry.redhat.io/rhel8/postgresql-13@sha256:757d8dd6f243717d820846da7144a49913f28f223b74ec305b2215f54720f8a0
        - registry.redhat.io/ubi8/ubi-minimal@sha256:c12e67af6a7e15113d76bc72f10bef2045c026c71ec8b7124c8a075458188a83
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:0e4eb22c1f8e35014fac62a820895d6934312278d71a23bc8b4e1f5e200b6bd9
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:ac3087bf9f4d494518fb19e3d95fe0f942fefa69ff9f8b2a82fe2d59c2bbfbf4
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:de9337e8fa647d59727a7bc4477c613607975a493283037b5c81ec908da21902
        - registry.redhat.io/ubi8/openjdk-17@sha256:e5fc9e34382da41b10d4ea566639d31707493abff9e8de81f5accfd66876409e
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:8ba6e6deab70190b55ef2dda957a8df89e34bdb03f0671ff2f52c97c8da6081d
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:0e7798c138004f4e462a80939fb22b5065016dd15574224be6c8a58d9d5129dd
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:41ec6db921812fd1e80b05d51c224ddbce63bf0c57f02ccf07461d2202e97b90
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:aad40e98859844aedf0c719d7305baeb42c055872fb735c54c378edc014d6e31
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:108160e0298da3379d4277cfa865c073c28fc3b25f5ba3155e427db5b50ebb46
        - registry.redhat.io/rhel8/buildah@sha256:6d2dcb651ba680cf4ec74331f8349dec43d071d420625a1703370acc8d984e9e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:6fe1b45c6ee81bc55062ac6a6972accf5546c69f78db97f53c9b8975426c35eb
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:115c28f9574540ec42be6e3afb93ea62f4d6e54c7367e86e746ace712548130e
        version: 1.17.1
      entries:
      - name: openshift-pipelines-operator-rh.v1.17.1
        version: 1.17.1
      - name: openshift-pipelines-operator-rh.v1.17.0
        version: 1.17.0
      - name: openshift-pipelines-operator-rh.v1.16.0
        version: 1.16.0
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: pipelines-1.17
    - currentCSV: openshift-pipelines-operator-rh.v1.18.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.17.0 <1.18.1'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.68.1
          - Tekton Triggers: v0.31.0
          - Pipelines as Code: v0.33.2
          - Tekton Chains: v0.24.0
          - Tekton Hub (tech-preview): v1.20.1
          - Tekton Results: v0.14.0
          - Manual Approval Gate (tech-preview): v0.5.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.18/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:dbc462cb50385dec3a220b5d0caed0e0211c166182026f86e3c51a1351ba0de4
        - registry.redhat.io/rhel9/buildah@sha256:6886997da8c92214e99e3e8da47a0f08239172d2544b4edae058d5cb018effab
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3964c3248dfb1006ea9a46295baf7f8cfa71952d6b9863b52f87e8f3d7863b1e
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:409c14649d8e7007d4b72b6feffb71dabd26322bf2a7c77f5307f2546fdfe81b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:8ae0ca6411e4fcd5c0605344bc6930cf122ffd80e71199509d58423a8b41de1d
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:d055d2b35a663aef3e1aafdbed0b12957867c0670c946ebae66e9c44a768bda2
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:20e19c02efdecf94a7b16483047e5db81c50dc2a0aa59d4895067e6c7769efcc
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:e4d49cf6a2fb8b3585ecfe3b3da3e9de090fb99de3dee2da0601b1f6b071173c
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:c20ab6fa719506bca942669ea84b113335b05df3ed275257b88be234cade7c8d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c90a9c3a20f088241980b76986ba4f43b0243fd6d94a826fa7b5888e01c13093
        - registry.redhat.io/rhel9/postgresql-13@sha256:ecd5a5583db922c517c735797db3fca587c0ef0b410e7dd494ace2267d89cf05
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:86ea94b12e8923035e3e4f39b6a53b3ab32c5f77d7eea170aa9b34aecc6f8577
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:72901cf4e091fe5f6a577144fdffaea8570712e9887a8bd715d5ae5bc346ff1d
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:e6a7738cdb0e8aa9e1af381273b1c18ec1414b08a66fc851f6e11e5aa7a6706f
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:cbd89c531953a43b8055bda72f7696be80f57fd1d782567a91d82e0fbcb3d26d
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:80d441ec5d07c5059277a3a9173a35dfc0b8372d6e4d7823514131a94bae3fd7
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:1b57b64657eca0002145100bae262a19f02eb40068e07994df467e28a1618f90
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:eaad37453a5ebef51c28d4a068f56e9f394e710c72bb86342cd2189001420836
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:b9675b22bc8759903472c1eb0e03f90c75460f02799d894294c161641cad9414
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:2ba6782af0d7e5c4d623de31814f43f4f7c3c38d09b57705021957d334067f87
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:e2b4c3b505c4b5aa36f8a5e661389b0de4e799c74c2c7f16a065e5522b438e89
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:8fec8e7a8b3e5182c67104de4e3abe32593b682c4a8986d1e9ab835dafb95ff4
        - registry.redhat.io/ubi9/ubi-minimal@sha256:ac61c96b93894b9169221e87718733354dd3765dd4a62b275893c7ff0d876869
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:fcd5fd10de7334bd59a8da4997f91008ced95c6cde40d56d50f3b3e32c0f19e1
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:cd28c2c90dd340324b0d8709640cd7636f28286114b0023649b6e21be13e03c2
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d72842a7c6a1e50a68576c93f60047afec801cf83db64d7d3e34b25bf3c753ec
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:e27a30d471dda4983a5b8192709d283a9d082558f3caf31b30db2214e418b017
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:16d799503674641d4690822edc9c399c61429ccd31621d295eee4a4d1ef1c076
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:fa5c456fc91319c55fac9a011dc7bb32ef85db293c73d74436e903b76ceb4349
        - registry.redhat.io/rhel9/skopeo@sha256:d077e35100d6d7b3795f8e3594293dbf8b65c6bc18b909aa555fe56f048b356a
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:36a4c6a3273f2371ab5e679f1955221c286ea753e29e6ab8da7c983681a68f02
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:96f5e1922fb9d6dc17e271576dda9bd032bd6dcc04e7496fb15a2f6b5871cd67
        - registry.redhat.io/ubi9/openjdk-17@sha256:5d619e202695acf76a5f32c07ace6709f5ee5d3999bf977e1bf95ad34197f44a
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:b550a8bc2a87d07a5b22a3ec3fb83efd8eb26ca6e80d404f2e453cc9b8434da7
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:e63d956a0534f2e726301e00e877c4fe2f34ca4559e59d2df7567c04ded311a3
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:0a60ce46c05256c74f770901e0bb79ad89e88ba882b643c1ff7b2a1738463acc
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:6abc903c784bb455e1f2fde45a48afe775239668e1d0dbc1b3cc6afca3c0b477
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:8b4bf043e0fb237553503d63b129c432600bb4e65b2096b246b257b404b42be9
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:776d34b0ea2e35c11ad4050e6b40cf4b40c84dbe0d5f3e6ad669c494a210ea8e
        version: 1.18.1
      entries:
      - name: openshift-pipelines-operator-rh.v1.18.1
        version: 1.18.1
      - name: openshift-pipelines-operator-rh.v1.18.0
        version: 1.18.0
      name: pipelines-1.18
    - currentCSV: openshift-pipelines-operator-rh.v1.19.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPruner",
                "metadata": {
                  "name": "pruner"
                },
                "spec": {
                  "disabled": true,
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.18.0 <1.19.4'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev","tektonpruners.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pruner
            displayName: Tekton Pruner
            kind: TektonPruner
            name: tektonpruners.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v1.0.0
          - Tekton Triggers: v0.32.0
          - Pipelines as Code: v0.35.4
          - Tekton Chains: v0.25.1
          - Tekton Hub (tech-preview): v1.21.1
          - Tekton Results (tech-preview): v0.15.3
          - Manual Approval Gate (tech-preview): v0.6.0
          - Tekton Pruner (tech-preview): v0.1.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.19/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:408a3bf7a43068cbf2ef9af04faf3df161ac39e53446f47d9fcd083499a9e2a5
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:bb5bd9f505d0eb6ce6573b09898c2ad49f1d3602c36b380058b489d9383ba60d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:5bfbde45a37d8b16cf0ab0be8f636c35a1d9041d6c8f7f611fc24a551eb890eb
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:4f606f7cb607007573f1023408329bdbfbfd979dc6bb50ac4af0ae20a33bcbee
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:ddbab8d6b9d1239451bf695276c8ddfe00e78cbb9ff4fc6562a9a5a2924b6082
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:1fef4759b410625fc797a8ecd166c20ad09312abfccc1cb941e946cfdccd2da4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:49cb3cca3f9102384c96e93108d09969df22c3858b1933ecff9fbe1d41aed981
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:66588ef48047d6589b7c810398ca16032125174d7cd9eaf1d6ddebbbf82147b4
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:95816d1f338341800c6947491d31d6ad826e56e821ad3ada78718df9f2dcd103
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:67334d9a2a0bee4cfd62d3e3c26608df4f802adf8970981260e4051b4fb3d055
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:ae34ed4ead57a26e1f65dcf433908ad75c5bcc243fcb2fdc3b4c211171c40480
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:40a099a9073bcc2f8da442d8225be03c8636e456c548c93e1a8366677e845830
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:1141200c99c69bbfbce4f7994b7d8b9eca36f5cc395acdf866233b3cc35be61b
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:b49089d2f582a7a9b954a75a48c590849e79628305b37c43a0c5ff795019635b
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:a802bd8ea9104e77b6318bc3c05269c32c6435a696f62084da83f68b9426294a
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:41d669fbe8bb48481890fb9fb52de9d4cac98cb74e6a6b284d046a8d21b06e58
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:2d6640e6b91896ff455ab8e2246f166a3cdd9c53dfca00b3919f646f54a11f9f
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:84450e886c5ce68f4f594982fab6140faebef5774339226b0be8d7e70b963fcf
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:e1b99c7a287125dc265c536e5aecbe9eb4e9981ff030d28b9b127fb546a45944
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:aab3b001f60510c73cf475b2c218a7aa921cbca99b855d28862c42e83d610ab0
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3e2343b6121790f18b8d8868d8492af0b0541252f50e290f585f467c61660574
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:cc5265e2e163446554453d4f5db1cc733758b450c7550db7b7caf9ede474aeca
        - registry.redhat.io/ubi9/openjdk-17@sha256:cdbd64ba1b7826d09bc180fa19aa6fbc09ddb5bff5e02b7e1351353bbabebb78
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:38a58fd012558192cd779ff8ac2ef3f02b8e82e2a1bcbbb9d53822c9d8890afd
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:6a947bae0c64ffcf7c2f9d71b5f18d858e017ce6122b2499c555850fe7fe1fde
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:f151dda38d7fafe2d72e2cb064d074921c6b535543f29cfcf66405ba65e38ed5
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:6a18f8d771900aa480560d1809c789d5243c4f6d9087185c610d9b8834d78625
        - registry.redhat.io/ubi9/ubi-minimal@sha256:14f14e03d68f7fd5f2b18a13478b6b127c341b346c86b6e0b886ed2b7573b8e0
        - registry.redhat.io/rhel9/skopeo@sha256:993f799d58c48151ecae7a84e63860f6c0039e8e18efed5ad67e7752f4b7e408
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:a585790aa11f5152c8a55ef36f74f731a34b2eecccd3250e5ef3cec8ec398409
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:d21cc7e094aa46ba7f6ea717a3d7927da489024a46a6c1224c0b3c5834dcb7a6
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:655a73b61984fbafe9194629705f51ff149d43a768a5a1c103045582eba8f2ec
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:d49f6cfcd815f93d0f1fad8a569bc8e52ffd86ba909530e95fdee19b0a1ca784
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:7eaab4455c1e416e4e0ba5f3e0e60c5a46aea23a939968e15eb6a953680a5f2c
        - registry.redhat.io/rhel9/buildah@sha256:a6e04c061b8d261dba85d01dcb64d3f7dba8c0b9765e03f05ec79850a248d75a
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:a68bc519e86f1316bf2c536aab16ebfab329cb51b07cd02d3021bc8332c4c97c
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:cb5958fdc6661e23f9957d53877a6f401af5a2f64a1305ae21579048846f1f70
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:18bb4f4139d8b9f041ec5d38e5350d72290715f8ef235543365ca4b353bfa8c4
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:498238810108939ead8df1158c6ac892ad5f0bfad57fd2a893b5ce53853504d1
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:e74f92e066f47a3eab9467f2253c3b85bc34fa41e2443e033b5e3470849b0d16
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        version: 1.19.4
      entries:
      - name: openshift-pipelines-operator-rh.v1.19.4
        version: 1.19.4
      - name: openshift-pipelines-operator-rh.v1.19.3
        version: 1.19.3
      - name: openshift-pipelines-operator-rh.v1.19.2
        version: 1.19.2
      - name: openshift-pipelines-operator-rh.v1.19.1
        version: 1.19.1
      - name: openshift-pipelines-operator-rh.v1.19.0
        version: 1.19.0
      name: pipelines-1.19
    - currentCSV: openshift-pipelines-operator-rh.v1.20.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    },
                    {
                      "name": "legacyPipelineRbac",
                      "value": "true"
                    },
                    {
                      "name": "createCABundleConfigMaps",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPruner",
                "metadata": {
                  "name": "pruner"
                },
                "spec": {
                  "disabled": true,
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.19.0 <1.20.2'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev","tektonpruners.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pruner
            displayName: Tekton Pruner
            kind: TektonPruner
            name: tektonpruners.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v1.3.2
          - Tekton Triggers: v0.33.0
          - Pipelines as Code: v0.37.4
          - Tekton Chains: v0.25.1
          - Tekton Hub (tech-preview): v1.22.7
          - Tekton Results (tech-preview): v0.16.0
          - Manual Approval Gate (tech-preview): v0.6.0
          - Tekton Pruner (tech-preview): v0.2.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.20/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:d941644bf6672ce0e6151f6ae7f775ba173795baf4a79eb8bba1d2b67ea359d5
        - registry.redhat.io/ubi9/openjdk-17@sha256:555c8bcd2596637befd1a6da4aa949c5a2640cf66e09c2dfb932afe37e39095e
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:0e9d28f1ef4f3348349489bf813c20e249a10d2735c409dccf8067e082ef0b4d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:cbff2c3468f239276802e0a3a98301386ae7a98b183c4ec5b83f4b30ccde56cf
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:cba1718306397fc60e1d6d468c92ea133188229f57a76f9b00eb8edd22cec5c3
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:a6da589eb9c40c62e06c64f3d34578053328bef388325e8927872cd75c4ebe29
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        version: 1.20.2
      entries:
      - name: openshift-pipelines-operator-rh.v1.20.2
        version: 1.20.2
      - name: openshift-pipelines-operator-rh.v1.20.1
        version: 1.20.1
      - name: openshift-pipelines-operator-rh.v1.20.0
        version: 1.20.0
      name: pipelines-1.20
    defaultChannel: latest
    packageName: openshift-pipelines-operator-rh
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: ScaleOps
      provider-url: https://scaleops.com
    name: scaleops-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: scaleops-operator.v1.26.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "analysis.scaleops.sh/v1",
                "kind": "ScaleOps",
                "metadata": {
                  "name": "scaleops",
                  "namespace": "scaleops-system"
                },
                "spec": {
                  "scaleopsToken": "${SCALEOPS_TOKEN}"
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
          createdAt: "2026-01-06T18:53:17Z"
          description: |-
            ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

            ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

            Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

            Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

            Contact [us](mailto:team@scaleops.com) to start your free trial today
          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: "true"
          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.skipRange: <1.26.11
          operators.openshift.io/valid-subscription: Contact ScaleOps for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://scaleops.com
          support: ScaleOps Support support@scaleops.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: This will install an instance of the ScaleOps Platform on
              your cluster
            displayName: ScaleOps Platform
            kind: ScaleOps
            name: scaleops.analysis.scaleops.sh
            version: v1
        description: |-
          ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

          ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

          Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

          Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

          Contact [us](mailto:team@scaleops.com) to start your free trial today
        displayName: ScaleOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vertical scaling
        - horizontal scaling
        - node optimization
        - application runtime
        links:
        - name: ScaleOps
          url: https://scaleops.com
        maintainers:
        - email: support@scaleops.com
          name: ScaleOps
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ScaleOps
          url: https://scaleops.com
        relatedImages:
        - registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
        - registry.connect.redhat.com/scaleops-sh/scaleops-gpu@sha256:350e8df5a36e8f47e0055a703331c29da3c8fa9679a629a1dffb620d4414bf4e
        - registry.connect.redhat.com/scaleops-sh/scaleops-operator-bundle@sha256:d5e4258cb2319901e62d3a15b9a6304495ab6170797244793a6df374d6d35321
        - registry.connect.redhat.com/scaleops-sh/scaleops-sh@sha256:e2f3b6e44e5050b9acd255cfdc4b9563ae5449ce547f30ec37c97f4c5083dcf7
        version: 1.26.11
      entries:
      - name: scaleops-operator.v1.26.11
        version: 1.26.11
      - name: scaleops-operator.v1.26.10
        version: 1.26.10
      - name: scaleops-operator.v1.26.9
        version: 1.26.9
      - name: scaleops-operator.v1.26.8
        version: 1.26.8
      name: stable-v1
    - currentCSV: scaleops-operator.v1.26.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "analysis.scaleops.sh/v1",
                "kind": "ScaleOps",
                "metadata": {
                  "name": "scaleops",
                  "namespace": "scaleops-system"
                },
                "spec": {
                  "scaleopsToken": "${SCALEOPS_TOKEN}"
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
          createdAt: "2026-01-06T18:53:17Z"
          description: |-
            ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

            ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

            Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

            Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

            Contact [us](mailto:team@scaleops.com) to start your free trial today
          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: "true"
          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.skipRange: <1.26.11
          operators.openshift.io/valid-subscription: Contact ScaleOps for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://scaleops.com
          support: ScaleOps Support support@scaleops.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: This will install an instance of the ScaleOps Platform on
              your cluster
            displayName: ScaleOps Platform
            kind: ScaleOps
            name: scaleops.analysis.scaleops.sh
            version: v1
        description: |-
          ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

          ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

          Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

          Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

          Contact [us](mailto:team@scaleops.com) to start your free trial today
        displayName: ScaleOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vertical scaling
        - horizontal scaling
        - node optimization
        - application runtime
        links:
        - name: ScaleOps
          url: https://scaleops.com
        maintainers:
        - email: support@scaleops.com
          name: ScaleOps
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ScaleOps
          url: https://scaleops.com
        relatedImages:
        - registry.connect.redhat.com/scaleops-sh/scaleops-gpu@sha256:350e8df5a36e8f47e0055a703331c29da3c8fa9679a629a1dffb620d4414bf4e
        - registry.connect.redhat.com/scaleops-sh/scaleops-operator-bundle@sha256:d5e4258cb2319901e62d3a15b9a6304495ab6170797244793a6df374d6d35321
        - registry.connect.redhat.com/scaleops-sh/scaleops-sh@sha256:e2f3b6e44e5050b9acd255cfdc4b9563ae5449ce547f30ec37c97f4c5083dcf7
        - registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
        version: 1.26.11
      entries:
      - name: scaleops-operator.v1.26.11
        version: 1.26.11
      - name: scaleops-operator.v1.26.10
        version: 1.26.10
      - name: scaleops-operator.v1.26.9
        version: 1.26.9
      - name: scaleops-operator.v1.26.8
        version: 1.26.8
      name: stable-v1.26
    defaultChannel: stable-v1.26
    packageName: scaleops-operator
    provider:
      name: ScaleOps
      url: https://scaleops.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      pod-security.kubernetes.io/audit: privileged
      pod-security.kubernetes.io/enforce: privileged
      pod-security.kubernetes.io/warn: privileged
      provider: NVIDIA Corporation
      provider-url: ""
    name: gpu-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gpu-operator-certified.v25.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "cdi": {
                    "enabled": true
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "kernelModuleType": "auto",
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "secretName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": []
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "secretName": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
          createdAt: Wed Dec 3 14:12:01 PST 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <25.10.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:5c4e61f7ba83d7a64ff2523d447c209ce5bde1ddc79acaf1f32f19620b4912d6
        - nvcr.io/nvidia/driver@sha256:ef9856ae8491b376364df1f0cad388bcf9983bd2b6c78000523c13536cf828c3
        - nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
        - nvcr.io/nvidia/cuda@sha256:d19fe621624c4eb6ac931b8558daa3ecc0c3f07f1e2a52e0267e083d22dceade
        - nvcr.io/nvidia/k8s-device-plugin@sha256:50ac011ab941ab0140d52f56aa0e2fdc553bca96836ab3b26be394fc823fd9e7
        - nvcr.io/nvidia/driver@sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:119de9a331a47203858b99901f44d0c4a8052961b4e60327f4b100d0ab8c9df0
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:10acae5f724b07faa6e6c7716f3342d3cf2306a2c22971825e1a23753c21e8c3
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:7c0ac4430bb0a5868b7404a0e06c47e02b0375b61aadd614385ad0bc2d43815a
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:c549346eb993fda62e9bf665aabaacc88abc06b0b24e69635427d4d71c2d5ed4
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:098c01e11589e08ede9ffb3002d1c3dff424f0f0c5d1bfcbfd54a359073f16dd
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:ef2a0ef6bbf9c43529da3730974de9d51b8436c2314a68e718d437e6ab7c4b58
        - nvcr.io/nvidia/driver@sha256:35359117c5cdf786694d2fdba2ba038e7f673c5d0243c9ed4dc6cdaf6e675e4a
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:8e0803d2f29776cd4cc0501381a20a0b04b2da507a794d66a15894c57beaadb5
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:99187d6b023689f50cf065c77b96ba5aacfa26a618854608a1e31da5e826b765
        version: 25.10.1
      entries:
      - name: gpu-operator-certified.v25.10.1
        version: 25.10.1
      - name: gpu-operator-certified.v25.10.0
        version: 25.10.0
      - name: gpu-operator-certified.v25.3.4
        version: 25.3.4
      - name: gpu-operator-certified.v25.3.3
        version: 25.3.3
      - name: gpu-operator-certified.v25.3.2
        version: 25.3.2
      - name: gpu-operator-certified.v25.3.1
        version: 25.3.1
      - name: gpu-operator-certified.v25.3.0
        version: 25.3.0
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: stable
    - currentCSV: gpu-operator-certified.v1.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "dcgmExporter": {
                    "config": {
                      "name": ""
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                  },
                  "devicePlugin": {
                  },
                  "driver": {
                    "enabled": true,
                    "use_ocp_driver_toolkit": true,
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "gfd": {
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "operator": {
                    "defaultRuntime": "crio",
                    "deployGFD": true,
                    "initContainer": {
                    }
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:c7f9074c1a7f58947c807f23f2eece3a8b04e11175127919156f8e864821d45a
          createdAt: Mon Apr 18 10:06:40 PDT 2022
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=v1.9.0 <v1.10.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://coreos.com/blog/introducing-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:5b16056257acc51b517d9cdb1da3218693cefc214af93789e6e214fd2b4cacf1
        - nvcr.io/nvidia/gpu-operator@sha256:c7f9074c1a7f58947c807f23f2eece3a8b04e11175127919156f8e864821d45a
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:67c48a8370c34f68b46eb57339e87d01c04198368a0423553fab7565c862c4df
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:60b1d25ebb3aada94985e359bb059d4491bf0148ac75d51b68a461670659e429
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:ac13256c295126b854a07421c45de0721e7a57974b38b3e66eb1fdc3a4e29f2e
        - nvcr.io/nvidia/driver@sha256:f99b66855e92451a59a722355dd52bf97eb985cc8a647172273de8178aeaa93c
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:9abb063e6b74085728fead5ed5bbe3bd7b3f57de60e87f6b964bba2d46f1bc67
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:24d804e8f005d7aeca8343aa13e5f92295d8642a4c47cb24e3ac86a22543bc37
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:e8f06ce53415e8572f633b2169289d973993cb1e49d4dcc686ac134194d88f33
        - nvcr.io/nvidia/cuda@sha256:7f0f7dc8c993a86865d4d9f9b0e36d113ea15603d5d5279d2879fa2bc21c8236
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:c2e3d0fe41a0d227dbb70caec03c780cc76317515e5ab3875f31d50c63f41c66
        - nvcr.io/nvidia/k8s-device-plugin@sha256:aa95c16106280e36a5e32d2fe4c66e8b70f5a114860c6f4ed5b1a4085c63601b
        version: 1.10.1
      entries:
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v1.10
    - currentCSV: gpu-operator-certified.v1.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    },
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "dcgmExporter": {
                    "config": {
                      "name": ""
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                  },
                  "devicePlugin": {
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": true
                  },
                  "vgpuDeviceManager": {
                    "enabled": true,
                    "config": {
                      "name": "vgpu-devices-config",
                      "default": "default"
                      }
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:53180f81fb7e1e4bcd49a556bc6285c2262abbab8083b29d2688b02d4200dd2d
          createdAt: Thu Aug  4 11:57:56 PDT 2022
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=v1.9.0 <v1.11.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/driver@sha256:b8799e7397fae5a27446737443091eed05b918816f53c400a48be71125ee22e8
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:b90a519e9f30fbc013e1806bc081268724e9e80b4035c67c167ab3b43a37704a
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:3128cd81b56975643c1c88c6ceff6d72e918a67ec2d6a5a606b6e04753c5b0ce
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:3804e2b03c44d25dd410e3882b7fb6d1fde41f55110d7702af47136b042a63ff
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:2d6e86db0e2b0db64c00566938e1851e25d4bb1019b1e7b696e2b199cba33397
        - nvcr.io/nvidia/driver@sha256:cf8ce04907d0e8decf90a8dccfa6134af9c39509d2f8a21c355ed71223acacdb
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:e88e610d09f1a7528ab32cb54259aee340eba2b2bf66b92a28157626daadc82d
        - nvcr.io/nvidia/gpu-operator@sha256:53180f81fb7e1e4bcd49a556bc6285c2262abbab8083b29d2688b02d4200dd2d
        - nvcr.io/nvidia/driver@sha256:6e2902d73c54cf57bec94edf166d206cfeb0b948b5aab70800ccbe025064b3a1
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:16ee5b1a8d9217f761c40a06c7ae598cbc893fbc35d99ff9b84fa886ea6b9b37
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:f48e8b430248a9cadf716a9211bb0050d4a663d1f1386ea107e72917f82e5b5f
        - nvcr.io/nvidia/cuda@sha256:4400b56f81095b24fc9dde93ad7ad7d0ca6a7e9736c4c7f1d4e2bcbf0afbe45c
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:39127d04c9faff3f22068dcf463ed48d02be684cd18e3f14db843bddbdd783a7
        - nvcr.io/nvidia/k8s-device-plugin@sha256:7a0ccbcbe8d379bfc441e06504eb45d0d433a37e2a9e6dde83d13347296ebe81
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:10d825ccbfcf87f8c74f841fa89ae345f2d381fb47a5b2b31f61b72ebbbb0915
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:8490d555131a57a11311561667ea9ec8cf554a399d2492a6f9e6677c01ec4b9a
        - nvcr.io/nvidia/driver@sha256:8c9fabc1cd773e9526eb7e8526084f065f6cca9d0fd8dc2a672a0bb717f1cc60
        version: 1.11.1
      entries:
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v1.11
    - currentCSV: gpu-operator-certified.v22.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:54d5846c0291db621931a8544c9cb6437512470a93278ca9130ba73f2e2f0055
          createdAt: Mon Jan 30 15:43:24 PST 2023
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=1.9.0 <22.9.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:efb88937f73434994d1bbadc87b492a1df047aa9f8d6e9f5ec3b09536e6e7691
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:50c2a2b998e467c82716efa79fe136aa6f7ea95fd23576cf384d251bb9628640
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:9177a0ae30798b42d0387f6a20cd3ce3cd1799a91b7866bf812368764b05b1af
        - nvcr.io/nvidia/driver@sha256:f250d1e4989fd4821e81bad9227eeeaa531ca8810f3a40e996f1ca2af7945f96
        - nvcr.io/nvidia/driver@sha256:268c26781c46b36fe691638e807eb5c3a2cd077029ddb095ac75264adac04925
        - nvcr.io/nvidia/driver@sha256:c5a62bc2a6cce339798e4b7cf9cec47e289c2d30b40f451ba8c9e958a68e3e55
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:bec9f026d9b3d9404c78d6091817a359015c6a7aa411735b34138c1518853b5d
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:0d47dad29d2ef445b301c5c64717758eed43a606345b79f97bce2e64b40a91a8
        - nvcr.io/nvidia/gpu-operator@sha256:54d5846c0291db621931a8544c9cb6437512470a93278ca9130ba73f2e2f0055
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:9a00cdfdddb73327ef8e8e0fa60e50926a388d380c551bba6a3d3012be40401d
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:c3cf59dd5d6160eba5d816ade2e81b35ebb10f4884df67971f6ace36f8e6efc1
        - nvcr.io/nvidia/driver@sha256:f2ca4612f3418e0e3963be8c3771ffe463cdc1fc1b810437a3aad9d76bb6499d
        - nvcr.io/nvidia/k8s-device-plugin@sha256:9c17d3a907eb77eb8f7b4f3faf52d8352e4252af92003f828083f80d629bd2c3
        - nvcr.io/nvidia/driver@sha256:b860ef04cc6cd8c481810fa19bef7221071f5a3862640b2ad6c2704728dc77c8
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:808529c14a8873324096fbd1622fb895c4dc7f60c1cf9e3ded646f9a81d7b496
        - nvcr.io/nvidia/cuda@sha256:5f2a2d8977f2c59abe88394f05cc3c044194554f90994d8554b0e1117ab5900d
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:00f1476548fbed9ee01961443a73bf65396c2e8bb2b84426f949dd56cb4d14cd
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:64d757b4c80b910e64647a84a1d592fab2ea3313ff6dce30c25c3a08e180bd74
        version: 22.9.2
      entries:
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v22.9
    - currentCSV: gpu-operator-certified.v23.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:08ca33f491195b7ba867be1e6642b5ff8aff6a4b0b7cfc0ec87619252ccfddc7
          createdAt: Mon May 22 15:22:15 PDT 2023
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=1.9.0 <23.3.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:0d47dad29d2ef445b301c5c64717758eed43a606345b79f97bce2e64b40a91a8
        - nvcr.io/nvidia/gpu-operator@sha256:08ca33f491195b7ba867be1e6642b5ff8aff6a4b0b7cfc0ec87619252ccfddc7
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:f10170b076badda8f669af8b0f7b47eb5470abaf35a67dda9c4e182d66138177
        - nvcr.io/nvidia/k8s-device-plugin@sha256:80871275fbcf888d4683c58638c7a75b3c46091040cafc6210a8c93513adb146
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:2d7e32e3d30c2415b4eb0b48ff4ce5a4ccabaf69ede0486305ed51d26cab7713
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:5489125ceae5864280e4d6a9ab52ab0f650b3179349a7298c4a204feb60b661a
        - nvcr.io/nvidia/cuda@sha256:62d845b4bd6de4be65f0b6daaae6831c29d4529955f99db5d26f5f7179106285
        - nvcr.io/nvidia/driver@sha256:3df118f2330e95db3c76173cca35e542b2da120ec0bb8f6aff83c4c96c0c2daf
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:708291528f26c70c561745967a1200edcb2f984687f749a49a2860fee580423f
        - nvcr.io/nvidia/driver@sha256:917f92c589c3124dba54f66f89c44b93b0beaf418f01d0da6a546e1670fdf3a9
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:03e43d6b1460cadb33509d5ee07a5e27603ab89d7ec35f67d8a51bb78745b463
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:21dfc9c56b5f8bce73e60361d6e83759c3fa14dc6afc2d5ebdf1b891a936daf6
        - nvcr.io/nvidia/driver@sha256:73b8928a1b1fb650d2ca8d6451a7d7c551fd0509f7511c2fd5bfdcef83ae4f5d
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:cab21c93987a5c884075efe0fb4a8abaa1997e1696cbc773ba69889f42f8329b
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:8f03f74076b5aa6672a5d75a398fa7515fcde57fdb1cf8079e015b3366efd3b5
        - nvcr.io/nvidia/driver@sha256:8ff0ee88fe6c4ff031ef642593f93625bfd9a48fe7be8a79a5c2736117e36941
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:84ce86490d0d313ed6517f2ac3a271e1179d7478d86c772da3846727d7feddc3
        version: 23.3.2
      entries:
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v23.3
    - currentCSV: gpu-operator-certified.v23.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:d2e0f8bd86e8e9f2ff3514e113657658584ca4a2d0b82dac2e47364cc0b30648
          createdAt: Thu Aug 31 12:22:44 PDT 2023
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=1.9.0 <23.6.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:878a6162a4fa0b61dae02c7cfc13ba4d28bb06f92fd62d0c521633ab507d675a
        - nvcr.io/nvidia/driver@sha256:3382e254056f28831767bc6729bc2594353a5ff2a28fe9f2d94396c597bb23d8
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:bb845160b32fd12eb3fae3e830d2e6a7780bc7405e0d8c5b816242d48be9daa8
        - nvcr.io/nvidia/driver@sha256:b4517810f2884f345b4f2323e83e41d28f54cdc6e2caf0690bb7ed4f3947dbcc
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:a229beba8540549c234a046e975bf4bf8c50d521dfe551af56f6e042b25ec017
        - nvcr.io/nvidia/cuda@sha256:64c0ff5fd4a27d4b1d46378634f7a7398c75f87c18c70c988dde18910d461560
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:0379c59b43e11861837787a0da22e70b528718373bb10de9e8b7752849bd4e7a
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:9484110986c80ab83bc404066ca4b7be115124ec04ca16bce775403e92bfd890
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:bf06c8ad380a36e5014607bd3ab05b80e8e5e7e77d23d0dd89fe53a5564152fa
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:00a91252be8e62da6f28cdf1ec3721f2e945ae296938b0b925ef9db2bf6dcc8b
        - nvcr.io/nvidia/driver@sha256:bbdc4415fe2e71eeea1b8a6e50ee562e11704dabb46db1db4aea807102886a35
        - nvcr.io/nvidia/k8s-device-plugin@sha256:f1617c3fe54fd9f6d4a00358e5da1a9fa9e8963a4ef6b3ed06f47d4971ddff4b
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:d1c636cc17155c4764d331e050f9bf3ec9f39f6ec6ec14e972179b185ea9f5b8
        - nvcr.io/nvidia/gpu-operator@sha256:d2e0f8bd86e8e9f2ff3514e113657658584ca4a2d0b82dac2e47364cc0b30648
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:60086c33226bbe7f04b611c20d308fed5825226f8a0a5635bc58d8ed55cc08a5
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:b30f5c64791dc5406b57eaf51ac40195dc1051a18cd1f38fd0a43c65f1d6dba9
        version: 23.6.1
      entries:
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v23.6
    - currentCSV: gpu-operator-certified.v23.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:7481a3697783dcdca9ae78e7b548a6900e86ea33ab49ec14f0ba55db2fdb1a2e",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:3988b3b570cf65b0d338cb29bd24b0b9bf1885e1563fbb398ef23cba0b59e6bb
          createdAt: Wed Mar 6 16:43:36 PDT 2024
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <23.9.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:387021553dfb16aab633228d42f63f04fa932b4f46add07527f296dfe97e5148
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:5339c41013727fa5dd3ae5bc1d51eb90e02e5baa85d4039b1efdde30baeae1ae
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:8d1ec78f2b1ddb7f0c47453d0427231190747bda411733a7dd0c8f5196f09e9c
        - nvcr.io/nvidia/gpu-operator@sha256:3988b3b570cf65b0d338cb29bd24b0b9bf1885e1563fbb398ef23cba0b59e6bb
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:a67d8e92861a2dce5649105c07561e4422e9fe4ba81a6525dc0d70a7ef85f9c0
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:925f4a47710e4318ed457930f5406174c1f6d28b1bf6b1bc310687fec0fde712
        - nvcr.io/nvidia/cuda@sha256:714547d54e5fe4191019a1e5f1daffc7fab7481b619b79c378541dafc76c9e5d
        - nvcr.io/nvidia/k8s-device-plugin@sha256:bb81ae8d034d1e1c6a342091a5f1dda5884dd43ab47e96624487a133d1edd4b3
        - nvcr.io/nvidia/driver@sha256:7481a3697783dcdca9ae78e7b548a6900e86ea33ab49ec14f0ba55db2fdb1a2e
        - nvcr.io/nvidia/driver@sha256:56c79482582cdfbc58d3134e8672637c5bf05f328880f76898f526143d04c6af
        - nvcr.io/nvidia/driver@sha256:abda1ac56371d55917b96ff330109980f468e133c9d5705da0ef87429f14ccd7
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:59a3875e7a37eb370385e654184efa3a1b193c9ea352165818496b19cbe14aa4
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:9aefef081c3ab1123556374d2b15d0429f3990af2fbaccc3c9827801e1042703
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:6a05d6a1923fda756aed0dddf7ed23a83c30cf1e6c519fc39dd70c0309ec8257
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:27c44f4720a4abf780217bd5e7903e4a008ebdbcf71238c4f106a0c22654776c
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:011fb450af3fa2e8fe5d28d590e4c653631447bc23d149591ced3d89089c4f2c
        version: 23.9.2
      entries:
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v23.9
    - currentCSV: gpu-operator-certified.v24.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:96f25c67e5b1072d5981080e12d65ec37eb9ef2fc0494499416aa801b0a34da3",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:041e75a3df84039c2dbbd4b9d67763bd212138822dbb6dbc0008858c1c6eff8d
          createdAt: Tue Apr 30 14:18:26 PDT 2024
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <24.3.0'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:1532fc1351ca44f863feaaf54ba8810be7a62396f98dd292ccaf975fde31ce5b
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:d8774d6afd37110199512636172823ae8749e5ea2e13760f57c255a74f47018c
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:f0e4e14a3081417be8e6a5d855fb0cb69e1b63bc54a74f17e6d7084abe275588
        - nvcr.io/nvidia/gpu-operator@sha256:041e75a3df84039c2dbbd4b9d67763bd212138822dbb6dbc0008858c1c6eff8d
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:0c77725de8c42d248ed825453efd2e005f4900f4be384fd23084f6b721ddd0e0
        - nvcr.io/nvidia/driver@sha256:56c79482582cdfbc58d3134e8672637c5bf05f328880f76898f526143d04c6af
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:7798eb9b9424e09959fc808596f87bdb68ac5740174123c6646dee2166d3e7d2
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:ecb867c5787e44f1889b257e6c03b07748689a7b293c8f1affb1d4cb449b235c
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:2cc2119d20515f8ca7a61a0f3932578d69a45bcdea49e6c320a89c56f105e7d9
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:2edc1d4ed555830e70010c82558936198f5faa86fc29ecf5698219145102cfcc
        - nvcr.io/nvidia/driver@sha256:96f25c67e5b1072d5981080e12d65ec37eb9ef2fc0494499416aa801b0a34da3
        - nvcr.io/nvidia/driver@sha256:a836ccbe21da735aee1c39b81060ed5e2fdb4ffa339874baaf4634f1e9259f74
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:1ae0b923bc57f47bab046b50c50110f6914bbaffbfef704df34b3fe332db2e31
        - nvcr.io/nvidia/k8s-device-plugin@sha256:80674b19898ecf9ed6949e39674da769d6feeeb01bea54b914ef9ff502834f49
        - nvcr.io/nvidia/cuda@sha256:ae0623ec8634b6c88f815b88037763def160cbbac15013b77ddef257fc276c9a
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:2442fd2ec0ee29746abbced727c53741f017e8f3f615321c1ec42c1c3ffa0b12
        version: 24.3.0
      entries:
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v24.3
    - currentCSV: gpu-operator-certified.v24.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:858de27c152669f5a3cf4287406405b16dd5bb70c0373324eb735511997bb415",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:8e0969cffc030a89c4acd68e64d41dd54e3bce8a794106b178d4dbd636a07f1c
          createdAt: Wed Sep 25 08:25:16 PDT 2024
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <24.6.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/driver@sha256:858de27c152669f5a3cf4287406405b16dd5bb70c0373324eb735511997bb415
        - nvcr.io/nvidia/driver@sha256:07e11f85d54d49ec9648fb06e148b8d832ee1f9c3549a915eee853c9ef2949c2
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:fa72cc3e0b09510d71a097b92ee101e057f1c11e1cb363172bd26b2d94272417
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:15dab1273345df4a5844c4c761d064dbc4b592101251dc39174e597137123027
        - nvcr.io/nvidia/k8s-device-plugin@sha256:7ad2c9f71fe06f9f7745ac8635f46740fbdff4f11edd468addfab81afcdfa534
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:969147c01d63be5d1fe458f32f1cc0c7408cf3062531db91408e2fc57b4d8a67
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:7bcc188703f2fac630f7a4ff8960e6733ac3a29adf6a946533b796d9a27b8acf
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:33de74eb590f071403c17b6c210c02963245851971168bc0c07c06c100a9f376
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:ae63fac9a4057a7646f0cf0ee0566e8928529adde05c4c0a017cda0599e381b2
        - nvcr.io/nvidia/driver@sha256:a6d12fb5753f267dda25dfd38910f972bc632c006a24107fa50e20bba3642d7c
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:781fb47e264d9e0fbc8da5bd046e5e678316c866bc36ddd4b56d4eb0de682d5b
        - nvcr.io/nvidia/cuda@sha256:de5b598bca89850567c4c104411d66bb52f47c9179199e6a3be6829b7ac586a2
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:96380b95396b7f29d2ed2ec8ef1ad5a8bcf9f55051db723295dc0a20db845331
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:21f4c8b88716e8e6f732f9fb4c2efaef937c227491a8631c5e55036f80f39a4d
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:740abc3ff657545c10effd5354f09af525200ed9a1b7623f0c2e8c7bd9e4a4e2
        - nvcr.io/nvidia/gpu-operator@sha256:8e0969cffc030a89c4acd68e64d41dd54e3bce8a794106b178d4dbd636a07f1c
        version: 24.6.2
      entries:
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v24.6
    - currentCSV: gpu-operator-certified.v24.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:6fe74322562c726c8fade184d8c45ebae3da7b1ea0a21f0ff9dc42c66c65e692",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:92f5262bb4934e0ea29eb10ec0ad4fc293164f2f2f94d48a935922791abbfdac
          createdAt: Mon Jan 27 16:10:52 PST 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <24.9.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/driver@sha256:d55b57938866e538acc3a71ca32f8cf87e71c591abd4a34695ee428e7ec2fa73
        - nvcr.io/nvidia/gpu-operator@sha256:92f5262bb4934e0ea29eb10ec0ad4fc293164f2f2f94d48a935922791abbfdac
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:857f7669ae5ce2a43a3b5691fa970085098321ef8e90a896fa8dda3dee5b1d2b
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:b072c5793be65eee556eaff1b9cbbd115a1ef29982be95b2959adfcb4bc72382
        - nvcr.io/nvidia/driver@sha256:6fe74322562c726c8fade184d8c45ebae3da7b1ea0a21f0ff9dc42c66c65e692
        - nvcr.io/nvidia/k8s-device-plugin@sha256:7089559ce6153018806857f5049085bae15b3bf6f1c8bd19d8b12f707d087dea
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:34eab99d7992a57c35803ec5e0afd538d16e997341e951fef4c4019afb08793e
        - nvcr.io/nvidia/driver@sha256:38b66a8d44cab9e2c62da9e101f32cd9dbcb5e02d8e57b47671284d374ca3695
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:b897e25e03133513f9afdb5abe38cbf0f2ac0556c27518d9d80e792eb07ecf28
        - nvcr.io/nvidia/cuda@sha256:b3b340847db9abd0c39703278f5638d3e65e1369e9a526a19b3138d5a6563527
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:40830d3561c14743f484d45b498141f9e86b1308e16fae3978110783927264ab
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:d934033f9ff89087d555850eb1da150eaaa27b11e5ad21db1b874b8bc0b8d35b
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:e8398b2451996e5c64fc3855e7a3c93b667a85f69c0e259049d3b0012c21545d
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:4ffa1cd2a6497eb647a89ed259dcfb007554737b9d80f69bc173a2c3cd72a1da
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:7edd7a0413dcb39b6e3bcefaf06812f3293c8e480ca10783e821a561ed686200
        - nvcr.io/nvidia/driver@sha256:026f8f2d29b7058ecaaa5b98666e28e1b3646b73e7d7cda3dc8026d47a929152
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:cf39d78ced7fb5727a9668ee2cd44b14bb7a23a95b83d5464b7d755740e02121
        version: 24.9.2
      entries:
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v24.9
    - currentCSV: gpu-operator-certified.v25.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "cdi": {
                    "enabled": true
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "kernelModuleType": "auto",
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "secretName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": []
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "secretName": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
          createdAt: Wed Dec 3 14:12:01 PST 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <25.10.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:c549346eb993fda62e9bf665aabaacc88abc06b0b24e69635427d4d71c2d5ed4
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:119de9a331a47203858b99901f44d0c4a8052961b4e60327f4b100d0ab8c9df0
        - nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:99187d6b023689f50cf065c77b96ba5aacfa26a618854608a1e31da5e826b765
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:10acae5f724b07faa6e6c7716f3342d3cf2306a2c22971825e1a23753c21e8c3
        - nvcr.io/nvidia/driver@sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:7c0ac4430bb0a5868b7404a0e06c47e02b0375b61aadd614385ad0bc2d43815a
        - nvcr.io/nvidia/driver@sha256:35359117c5cdf786694d2fdba2ba038e7f673c5d0243c9ed4dc6cdaf6e675e4a
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:ef2a0ef6bbf9c43529da3730974de9d51b8436c2314a68e718d437e6ab7c4b58
        - nvcr.io/nvidia/driver@sha256:ef9856ae8491b376364df1f0cad388bcf9983bd2b6c78000523c13536cf828c3
        - nvcr.io/nvidia/cuda@sha256:d19fe621624c4eb6ac931b8558daa3ecc0c3f07f1e2a52e0267e083d22dceade
        - nvcr.io/nvidia/k8s-device-plugin@sha256:50ac011ab941ab0140d52f56aa0e2fdc553bca96836ab3b26be394fc823fd9e7
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:098c01e11589e08ede9ffb3002d1c3dff424f0f0c5d1bfcbfd54a359073f16dd
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:8e0803d2f29776cd4cc0501381a20a0b04b2da507a794d66a15894c57beaadb5
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:5c4e61f7ba83d7a64ff2523d447c209ce5bde1ddc79acaf1f32f19620b4912d6
        version: 25.10.1
      entries:
      - name: gpu-operator-certified.v25.10.1
        version: 25.10.1
      - name: gpu-operator-certified.v25.10.0
        version: 25.10.0
      - name: gpu-operator-certified.v25.3.4
        version: 25.3.4
      - name: gpu-operator-certified.v25.3.3
        version: 25.3.3
      - name: gpu-operator-certified.v25.3.2
        version: 25.3.2
      - name: gpu-operator-certified.v25.3.1
        version: 25.3.1
      - name: gpu-operator-certified.v25.3.0
        version: 25.3.0
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v25.10
    - currentCSV: gpu-operator-certified.v25.3.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "kernelModuleType": "auto",
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": []
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:b6250c461c6226d5fb1383e3e8331e7e0bf07f9ed88a36988bbe5f6cc754d735",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:2e86875d61c030a9bd348a18bde8c4caa3d0c430a1aac642086b9cb1b3e3b015
          createdAt: Thu Sep 18 18:11:36 PDT 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <25.3.4'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:3191cc0684e92d655e72fe9faf3da95fe6b8a6c2eb4ad396f75ba9b98c021aaf
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:5c4e61f7ba83d7a64ff2523d447c209ce5bde1ddc79acaf1f32f19620b4912d6
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:66c3d68ca2b35d47b5562300a10ff8711b953ba3a15df7dbc409d81613ebe5d0
        - nvcr.io/nvidia/driver@sha256:b6250c461c6226d5fb1383e3e8331e7e0bf07f9ed88a36988bbe5f6cc754d735
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:6bb786c41fa7b1a6238c023566fdeaeeea3ba842a8daec015a7bd85a8037b249
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:cbd83ff041c3e6e9a5d76dc2cfa1894893c5e2f92583b16df9c418232cbce78c
        - nvcr.io/nvidia/driver@sha256:44422f10e899d3419fbd611a02fc1c6127e071a2067bd36e3debb043bf251de0
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:b689dfb7806ae51b0072620b47c26114f05477e8ad9725892ee10366e5d93d8d
        - nvcr.io/nvidia/cuda@sha256:d19fe621624c4eb6ac931b8558daa3ecc0c3f07f1e2a52e0267e083d22dceade
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:51c8f71d3b3c08ae4eb4853697e3f8e6f11e435e666e08210178e6a1faf8028f
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:c22dc67465c33d2f17932931229e61a6e7d9e32c5ed2ecefe8d10e873ffedfeb
        - nvcr.io/nvidia/driver@sha256:43aa99352e1dc47e9218f36340ae6328a6282ed1e7e9a61b4204475e980230ef
        - nvcr.io/nvidia/gpu-operator@sha256:2e86875d61c030a9bd348a18bde8c4caa3d0c430a1aac642086b9cb1b3e3b015
        - nvcr.io/nvidia/k8s-device-plugin@sha256:3c54348fe5a57e5700e7d8068e7531d2ef2d5f3ccb70c8f6bac0953432527abd
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:119de9a331a47203858b99901f44d0c4a8052961b4e60327f4b100d0ab8c9df0
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:619e7bf48168d76a7e087c3bf6190fda9b10449c9839309fa4f9ed5b8a9e8804
        version: 25.3.4
      entries:
      - name: gpu-operator-certified.v25.3.4
        version: 25.3.4
      - name: gpu-operator-certified.v25.3.3
        version: 25.3.3
      - name: gpu-operator-certified.v25.3.2
        version: 25.3.2
      - name: gpu-operator-certified.v25.3.1
        version: 25.3.1
      - name: gpu-operator-certified.v25.3.0
        version: 25.3.0
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v25.3
    defaultChannel: v25.10
    packageName: gpu-operator-certified
    provider:
      name: NVIDIA Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-codeartifact-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-codeartifact-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/codeartifact-controller:1.2.0
          createdAt: "2025-11-29T03:28:11Z"
          description: AWS codeartifact controller is a service controller for managing
            codeartifact resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Domain represents the state of an AWS codeartifact Domain
              resource.
            displayName: Domain
            kind: Domain
            name: domains.codeartifact.services.k8s.aws
            version: v1alpha1
          - description: PackageGroup represents the state of an AWS codeartifact
              PackageGroup resource.
            displayName: PackageGroup
            kind: PackageGroup
            name: packagegroups.codeartifact.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon codeartifact resources in AWS from within your Kubernetes cluster.

          **About Amazon codeartifact**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon codeartifact
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - codeartifact
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon codeartifact Developer Resources
          url: https://aws.amazon.com/codeartifact/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: codeartifact maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/codeartifact-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-codeartifact-controller@sha256:03a84cfae8ceb70bc1aa31ea6ceb53c2a8b26dc23ef403d5f5f96b7c169af6a7
        version: 1.2.0
      entries:
      - name: ack-codeartifact-controller.v1.2.0
        version: 1.2.0
      - name: ack-codeartifact-controller.v1.1.2
        version: 1.1.2
      - name: ack-codeartifact-controller.v1.1.1
        version: 1.1.1
      - name: ack-codeartifact-controller.v1.1.0
        version: 1.1.0
      - name: ack-codeartifact-controller.v1.0.13
        version: 1.0.13
      - name: ack-codeartifact-controller.v1.0.11
        version: 1.0.11
      name: alpha
    defaultChannel: alpha
    packageName: ack-codeartifact-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: akaris
      provider-url: https://github.com/andreaskaris/sosreport-operator
    name: sosreport-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sosreport-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "support.openshift.io/v1alpha1",
                "kind": "Sosreport",
                "metadata": {
                  "name": "sosreport-sample"
                },
                "spec": {
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Sosreport is the Schema for the sosreports API
            displayName: Sosreport
            kind: Sosreport
            name: sosreports.support.openshift.io
            version: v1alpha1
        description: Operator that facilitates the generation of sosreports
        displayName: sosreport-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sosreport
        - debugging
        - troubleshooting
        links:
        - name: Sosreport Operator
          url: https://github.com/andreaskaris/sosreport-operator
        maintainers:
        - email: ak.karis@gmail.com
          name: Andreas Karis
        maturity: alpha
        provider:
          name: akaris
          url: https://github.com/andreaskaris/sosreport-operator
        relatedImages:
        - quay.io/akaris/sosreport-operator:0.0.2
        - quay.io/openshift-community-operators/sosreport-operator@sha256:f0d28a3e2ac2e1cbd0c307797b728ad89ac33375135d72054a7b765e274e4bea
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        version: 0.0.2
      entries:
      - name: sosreport-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: sosreport-operator
    provider:
      name: akaris
      url: https://github.com/andreaskaris/sosreport-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sqs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sqs-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sqs.services.k8s.aws/v1alpha1",
                "kind": "Queue",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sqs-controller:1.4.0
          createdAt: "2025-12-29T20:15:44Z"
          description: AWS SQS controller is a service controller for managing SQS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Queue represents the state of an AWS sqs Queue resource.
            displayName: Queue
            kind: Queue
            name: queues.sqs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Simple Queue Service (SQS) resources in AWS from within your Kubernetes cluster.

          **About Amazon SQS**

          Amazon Simple Queue Service (Amazon SQS) offers a secure, durable, and available hosted queue that lets you integrate and decouple distributed software systems and components. Amazon SQS offers common constructs such as [dead-letter queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html) and [cost allocation tags](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html). It provides a generic web services API that you can access using any programming language that the AWS SDK supports.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SQS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sqs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SQS Developer Resources
          url: https://aws.amazon.com/sqs/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: sqs maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sqs-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-sqs-controller@sha256:e34521a92b8763e3bc2cda081cf59b640960403280f33cd53b52f27d385a98e2
        version: 1.4.0
      entries:
      - name: ack-sqs-controller.v1.4.0
        version: 1.4.0
      - name: ack-sqs-controller.v1.3.1
        version: 1.3.1
      - name: ack-sqs-controller.v1.3.0
        version: 1.3.0
      - name: ack-sqs-controller.v1.2.2
        version: 1.2.2
      - name: ack-sqs-controller.v1.2.1
        version: 1.2.1
      - name: ack-sqs-controller.v1.2.0
        version: 1.2.0
      - name: ack-sqs-controller.v1.1.16
        version: 1.1.16
      - name: ack-sqs-controller.v1.1.14
        version: 1.1.14
      - name: ack-sqs-controller.v1.1.13
        version: 1.1.13
      - name: ack-sqs-controller.v1.1.12
        version: 1.1.12
      - name: ack-sqs-controller.v1.1.11
        version: 1.1.11
      - name: ack-sqs-controller.v1.1.10
        version: 1.1.10
      - name: ack-sqs-controller.v1.1.9
        version: 1.1.9
      - name: ack-sqs-controller.v1.1.8
        version: 1.1.8
      - name: ack-sqs-controller.v1.1.7
        version: 1.1.7
      - name: ack-sqs-controller.v1.1.6
        version: 1.1.6
      - name: ack-sqs-controller.v1.1.5
        version: 1.1.5
      - name: ack-sqs-controller.v1.1.4
        version: 1.1.4
      - name: ack-sqs-controller.v1.1.3
        version: 1.1.3
      - name: ack-sqs-controller.v1.1.2
        version: 1.1.2
      - name: ack-sqs-controller.v1.1.1
        version: 1.1.1
      - name: ack-sqs-controller.v1.1.0
        version: 1.1.0
      - name: ack-sqs-controller.v1.0.17
        version: 1.0.17
      - name: ack-sqs-controller.v1.0.16
        version: 1.0.16
      - name: ack-sqs-controller.v1.0.15
        version: 1.0.15
      - name: ack-sqs-controller.v1.0.14
        version: 1.0.14
      - name: ack-sqs-controller.v1.0.13
        version: 1.0.13
      - name: ack-sqs-controller.v1.0.12
        version: 1.0.12
      - name: ack-sqs-controller.v1.0.10
        version: 1.0.10
      - name: ack-sqs-controller.v1.0.7
        version: 1.0.7
      - name: ack-sqs-controller.v1.0.5
        version: 1.0.5
      - name: ack-sqs-controller.v1.0.3
        version: 1.0.3
      - name: ack-sqs-controller.v1.0.2
        version: 1.0.2
      - name: ack-sqs-controller.v1.0.1
        version: 1.0.1
      - name: ack-sqs-controller.v1.0.0
        version: 1.0.0
      - name: ack-sqs-controller.v0.0.7
        version: 0.0.7
      - name: ack-sqs-controller.v0.0.6
        version: 0.0.6
      - name: ack-sqs-controller.v0.0.5
        version: 0.0.5
      - name: ack-sqs-controller.v0.0.4
        version: 0.0.4
      - name: ack-sqs-controller.v0.0.2
        version: 0.0.2
      - name: ack-sqs-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-sqs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Apache Software Foundation
      provider-url: ""
    name: camel-k
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: camel-k-operator.v2.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.0.1
          createdAt: "2023-09-04T12:32:38Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
          - kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - quay.io/openshift-community-operators/camel-k@sha256:d96f1b35ef30d6701f2a52b5e660dbd5378ec82a933afd38d2eb603c9ca084fd
        - docker.io/apache/camel-k:2.0.1
        version: 2.0.1
      entries:
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: candidate
    - currentCSV: camel-k-operator.v2.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "setBody": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationProfile",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "debug"
                },
                "spec": {
                  "traits": {
                    "logging": {
                      "level": "DEBUG"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example-source"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "setBody": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "timer-to-log-example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "log-sink"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world",
                      "period": 2000
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "timer-source"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.9.0
          createdAt: "2025-12-23T11:28:00Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: IntegrationProfile is the Schema for the integrationprofiles
              API
            displayName: Integration Profile
            kind: IntegrationProfile
            name: integrationprofiles.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Pipe is the Schema for the pipes API
            displayName: Pipe
            kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers:
          the easiest way to build and manage your Camel applications on Kubernetes.

          ## Installation

          You may need to specify the container registry where to store the container images created for the Camel applications.
          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          spec:
            build:
              registry:
                address: docker.io/my-org
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step when using Openshift cluster.

          ## Running an Integration

          Run a Camel application on the cluster by creating a sample `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            annotations:
              camel.apache.org/operator.id: camel-k
            name: test
          spec:
            flows:
            - from:
                parameters:
                  period: "1000"
                steps:
                - setBody:
                    simple: Hello Camel from ${routeId}
                - log: ${body}
                uri: timer:yaml
          ```
          Log the result of the running application:
          ```
          kubectl wait --for=condition=ready integration test --timeout=180s
          kubectl logs deployment/test -f
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:2.9.0
        - quay.io/community-operator-pipeline-prod/camel-k@sha256:4c8f4494ede7ef0f6d3564356928e9642571e14eb95ba20d8264325bc4d8c576
        version: 2.9.0
      entries:
      - name: camel-k-operator.v2.9.0
        version: 2.9.0
      - name: camel-k-operator.v2.8.0
        version: 2.8.0
      - name: camel-k-operator.v2.7.0
        version: 2.7.0
      - name: camel-k-operator.v2.6.0
        version: 2.6.0
      - name: camel-k-operator.v2.5.1
        version: 2.5.1
      - name: camel-k-operator.v2.5.0
        version: 2.5.0
      - name: camel-k-operator.v2.4.0
        version: 2.4.0
      - name: camel-k-operator.v2.3.3
        version: 2.3.3
      - name: camel-k-operator.v2.3.2
        version: 2.3.2
      - name: camel-k-operator.v2.3.1
        version: 2.3.1
      - name: camel-k-operator.v2.3.0
        version: 2.3.0
      - name: camel-k-operator.v2.2.0
        version: 2.2.0
      - name: camel-k-operator.v2.1.0
        version: 2.1.0
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: latest
    - currentCSV: camel-k-operator.v1.12.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.12.0
          createdAt: "2023-02-27T09:01:55Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.12.0
        - quay.io/openshift-community-operators/camel-k@sha256:60a9e4b05e7eb17ebfe58dd55db96ab2c68580d9282117f74f21869cb63e4a73
        version: 1.12.0
      entries:
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable
    - currentCSV: camel-k-operator.v1.10.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.10.4
          createdAt: "2023-01-28T13:49:05Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.10.4
        - quay.io/openshift-community-operators/camel-k@sha256:1461576c2e06c2ee8d84fd40836184566a346ed596b99cb81fe6a08d0ad99096
        version: 1.10.4
      entries:
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.10
    - currentCSV: camel-k-operator.v1.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.11.1
          createdAt: "2023-01-30T08:45:04Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.11.1
        - quay.io/openshift-community-operators/camel-k@sha256:2b8369f729c18384f45a458e88c9f551eb00f26792b40dbf286e6ea2837e9400
        version: 1.11.1
      entries:
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.11
    - currentCSV: camel-k-operator.v1.12.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.12.1
          createdAt: "2023-06-12T08:46:58Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.12.1
        - quay.io/openshift-community-operators/camel-k@sha256:6154ff0f72c9c49f1b7ea0edbe93e0a3b04f6e63abbd851d0e6706796050d672
        version: 1.12.1
      entries:
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.12
    - currentCSV: camel-k-operator.v1.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.5.1
          createdAt: "2021-08-31T09:03:41Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - quay.io/openshift-community-operators/camel-k@sha256:21ce00e81ce495c142cbe9611f494cfb26b52b3c09a507bee0572c1e1e3333d7
        - docker.io/apache/camel-k:1.5.1
        version: 1.5.1
      entries:
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.5
    - currentCSV: camel-k-operator.v1.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.6.1
          createdAt: "2021-10-27T21:06:20Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.6.1
        - quay.io/openshift-community-operators/camel-k@sha256:26df9d918e942f7fc637212df87a114b5edd52570da18cc212b3499354cdb993
        version: 1.6.1
      entries:
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.6
    - currentCSV: camel-k-operator.v1.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.7.0
          createdAt: "2021-11-16T10:54:12Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.8.1+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.7.0
        - quay.io/openshift-community-operators/camel-k@sha256:11dac0881f5ed66b5d42b2d69b13aba31cd56e6b32157cb3ce977be197189b79
        version: 1.7.0
      entries:
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.7
    - currentCSV: camel-k-operator.v1.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.8.2
          createdAt: "2022-03-07T07:13:19Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.8.2
        - quay.io/openshift-community-operators/camel-k@sha256:cba8cde86a870b31f7dae9a554f4c496ed81731f91a8e64cd62b0caa88efaa38
        version: 1.8.2
      entries:
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.8
    - currentCSV: camel-k-operator.v1.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.9.2
          createdAt: "2022-05-23T09:05:22Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.9.2
        - quay.io/openshift-community-operators/camel-k@sha256:06d31bb777b37f8f7c8981efc24ca26a2f9c56a1c579243d0c7bdddb34c76a98
        version: 1.9.2
      entries:
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.9
    - currentCSV: camel-k-operator.v2.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.0.1
          createdAt: "2023-09-04T12:32:38Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
          - kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:2.0.1
        - quay.io/openshift-community-operators/camel-k@sha256:d96f1b35ef30d6701f2a52b5e660dbd5378ec82a933afd38d2eb603c9ca084fd
        version: 2.0.1
      entries:
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-2.0
    - currentCSV: camel-k-operator.v2.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "setBody": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationProfile",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "debug"
                },
                "spec": {
                  "traits": {
                    "logging": {
                      "level": "DEBUG"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example-source"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "setBody": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "timer-to-log-example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "log-sink"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world",
                      "period": 2000
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "timer-source"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.9.0
          createdAt: "2025-12-23T11:28:00Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: IntegrationProfile is the Schema for the integrationprofiles
              API
            displayName: Integration Profile
            kind: IntegrationProfile
            name: integrationprofiles.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Pipe is the Schema for the pipes API
            displayName: Pipe
            kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers:
          the easiest way to build and manage your Camel applications on Kubernetes.

          ## Installation

          You may need to specify the container registry where to store the container images created for the Camel applications.
          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          spec:
            build:
              registry:
                address: docker.io/my-org
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step when using Openshift cluster.

          ## Running an Integration

          Run a Camel application on the cluster by creating a sample `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            annotations:
              camel.apache.org/operator.id: camel-k
            name: test
          spec:
            flows:
            - from:
                parameters:
                  period: "1000"
                steps:
                - setBody:
                    simple: Hello Camel from ${routeId}
                - log: ${body}
                uri: timer:yaml
          ```
          Log the result of the running application:
          ```
          kubectl wait --for=condition=ready integration test --timeout=180s
          kubectl logs deployment/test -f
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:2.9.0
        - quay.io/community-operator-pipeline-prod/camel-k@sha256:4c8f4494ede7ef0f6d3564356928e9642571e14eb95ba20d8264325bc4d8c576
        version: 2.9.0
      entries:
      - name: camel-k-operator.v2.9.0
        version: 2.9.0
      - name: camel-k-operator.v2.8.0
        version: 2.8.0
      - name: camel-k-operator.v2.7.0
        version: 2.7.0
      - name: camel-k-operator.v2.6.0
        version: 2.6.0
      - name: camel-k-operator.v2.5.1
        version: 2.5.1
      - name: camel-k-operator.v2.5.0
        version: 2.5.0
      - name: camel-k-operator.v2.4.0
        version: 2.4.0
      - name: camel-k-operator.v2.3.3
        version: 2.3.3
      - name: camel-k-operator.v2.3.2
        version: 2.3.2
      - name: camel-k-operator.v2.3.1
        version: 2.3.1
      - name: camel-k-operator.v2.3.0
        version: 2.3.0
      - name: camel-k-operator.v2.2.0
        version: 2.2.0
      - name: camel-k-operator.v2.1.0
        version: 2.1.0
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-v2
    defaultChannel: stable-v2
    packageName: camel-k
    provider:
      name: The Apache Software Foundation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: openshift-secondary-scheduler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: secondaryscheduleroperator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "SecondaryScheduler",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-secondary-scheduler-operator"
                },
                "spec": {
                  "managementState": "Managed",
                  "schedulerConfig": "secondary-scheduler-config"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/openshift-secondary-scheduler-operator/secondary-scheduler-rhel9-operator@sha256:65253da24ed65e7da75d3b523c459617ce5fc71259673569b05970d2c6e9e65e
          createdAt: 2025/08/24
          description: Runs a secondary scheduler in an OpenShift cluster.
          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: "true"
          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.skipRange: '>=1.4.0 <1.5.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-secondary-scheduler-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/secondary-scheduler-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SecondaryScheduler is the schema for the secondaryschedulers
              API
            displayName: Secondary Scheduler
            kind: SecondaryScheduler
            name: secondaryschedulers.operator.openshift.io
            version: v1
        description: |
          The Secondary Scheduler Operator provides the ability to use a customized scheduler image that was developed using the scheduler plugin framework as a secondary scheduler in OpenShift.

          ## Secondary Scheduler Configuration

          Once the Secondary Scheduler Operator is installed, you can configure the plugins to run for your secondary scheduler.

          The configuration of the secondary scheduler is defined through a config map that wraps the KubeSchedulerConfiguration YAML file in "config.yaml".

          ## Additional Parameters

          Additionally, the following parameters can be configured:

          * `schedulerConfig` - Set the config map configuration for the secondary scheduler.
          * `schedulerImage` - Set the default operand image for the secondary scheduler.
        displayName: Secondary Scheduler Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - secondary
        - scheduling
        - workload
        links:
        - name: Source Code
          url: https://github.com/openshift/secondary-scheduler-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.33.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-secondary-scheduler-operator/secondary-scheduler-rhel9-operator@sha256:65253da24ed65e7da75d3b523c459617ce5fc71259673569b05970d2c6e9e65e
        - registry.redhat.io/openshift-secondary-scheduler-operator/secondary-scheduler-operator-bundle@sha256:a3667f085cb4f043f342d2470471e016fd50ddd4aed83ec88365a01709bc5732
        version: 1.5.0
      entries:
      - name: secondaryscheduleroperator.v1.5.0
        version: 1.5.0
      - name: secondaryscheduleroperator.v1.4.1
        version: 1.4.1
      - name: secondaryscheduleroperator.v1.4.0
        version: 1.4.0
      - name: secondaryscheduleroperator.v1.3.1
        version: 1.3.1
      - name: secondaryscheduleroperator.v1.3.0
        version: 1.3.0
      - name: secondaryscheduleroperator.v1.2.2
        version: 1.2.2
      - name: secondaryscheduleroperator.v1.2.1
        version: 1.2.1
      - name: secondaryscheduleroperator.v1.2.0
        version: 1.2.0
      - name: secondaryscheduleroperator.v1.1.4
        version: 1.1.4
      - name: secondaryscheduleroperator.v1.1.3
        version: 1.1.3
      - name: secondaryscheduleroperator.v1.1.2
        version: 1.1.2
      - name: secondaryscheduleroperator.v1.1.1
        version: 1.1.1
      - name: secondaryscheduleroperator.v1.1.0
        version: 1.1.0
      name: stable
    defaultChannel: stable
    packageName: openshift-secondary-scheduler-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: local-storage-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: local-storage-operator.v4.20.0-202511252120
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "local.storage.openshift.io/v1",
                "kind": "LocalVolume",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "nodeSelector": {
                    "nodeSelectorTerms": [
                      {
                        "matchExpressions": [
                          {
                            "key": "kubernetes.io/hostname",
                            "operator": "In",
                            "values": [
                              "worker-0",
                              "worker-1"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "storageClassDevices": [
                    {
                      "devicePaths": [
                        "/dev/disk/by-id/ata-crucial"
                      ],
                      "fsType": "ext4",
                      "storageClassName": "foobar",
                      "volumeMode": "Filesystem"
                    }
                  ]
                }
              },
              {
                "apiVersion": "local.storage.openshift.io/v1alpha1",
                "kind": "LocalVolumeSet",
                "metadata": {
                  "name": "example-localvolumeset"
                },
                "spec": {
                  "deviceInclusionSpec": {
                    "deviceMechanicalProperties": [
                      "Rotational",
                      "NonRotational"
                    ],
                    "deviceTypes": [
                      "disk"
                    ],
                    "maxSize": "100G",
                    "minSize": "10G"
                  },
                  "maxDeviceCount": 10,
                  "nodeSelector": {
                    "nodeSelectorTerms": [
                      {
                        "matchExpressions": [
                          {
                            "key": "kubernetes.io/hostname",
                            "operator": "In",
                            "values": [
                              "worker-0",
                              "worker-1"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "storageClassName": "example-storageclass",
                  "volumeMode": "Block"
                }
              },
              {
                "apiVersion": "local.storage.openshift.io/v1alpha1",
                "kind": "LocalVolumeDiscovery",
                "metadata": {
                  "name": "auto-discover-devices"
                },
                "spec": {
                  "nodeSelector": {
                    "nodeSelectorTerms": [
                      {
                        "matchExpressions": [
                          {
                            "key": "kubernetes.io/hostname",
                            "operator": "In",
                            "values": [
                              "worker-0",
                              "worker-1"
                            ]
                          }
                        ]
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-local-storage-rhel9-operator@sha256:5c4a51b66e2208caf77f72b7b78019ae6806c7d5aef6969c76ebd7b6c1335149
          createdAt: "2019-08-14T00:00:00Z"
          description: Configure and use local storage volumes.
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type":"olm.maxOpenShiftVersion","value":"4.21"}]'
          olm.skipRange: '>=4.3.0 <4.20.0-202511252120'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-local-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["localvolumediscoveryresults.local.storage.openshift.io"]'
          repository: https://github.com/openshift/local-storage-operator
          support: Red Hat
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Manage local storage volumes for OpenShift
            displayName: Local Volume
            kind: LocalVolume
            name: localvolumes.local.storage.openshift.io
            version: v1
          - description: A Local Volume set allows you to filter a set of storage
              volumes, group them and create a dedicated storage class to consume
              storage from the set of volumes.
            displayName: Local Volume Set
            kind: LocalVolumeSet
            name: localvolumesets.local.storage.openshift.io
            version: v1alpha1
          - description: Discover list of potentially usable disks on the chosen set
              of nodes
            displayName: Local Volume Discovery
            kind: LocalVolumeDiscovery
            name: localvolumediscoveries.local.storage.openshift.io
            version: v1alpha1
          - description: Disc inventory of available disks from selected nodes
            displayName: Local Volume Discovery Result
            kind: LocalVolumeDiscoveryResult
            name: localvolumediscoveryresults.local.storage.openshift.io
            version: v1alpha1
        description: |
          Operator that configures local storage volumes for use in Kubernetes and OpenShift. OpenShift 4.2 and above are the only supported OpenShift versions.
        displayName: Local Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        - local storage
        links:
        - name: Documentation
          url: https://github.com/openshift/local-storage-operator/tree/main/docs
        - name: Source Repository
          url: https://github.com/openshift/local-storage-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:5d7478a62742900e39d7b007dde5375cd06c6076ced6dab69d805f5fcce3f342
        - registry.redhat.io/openshift4/ose-local-storage-diskmaker-rhel9@sha256:11fb666a558fd9bf3afac21146fd229e1bc207d1670d9bb1c2299d8c57b5800e
        - registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel9@sha256:f1343acbe5e8cd47a3ca5a52407356e9403a6ca9cc1a2c81e09aadc5f0619aa2
        - registry.redhat.io/openshift4/ose-local-storage-rhel9-operator@sha256:5c4a51b66e2208caf77f72b7b78019ae6806c7d5aef6969c76ebd7b6c1335149
        - registry.redhat.io/openshift4/ose-local-storage-operator-bundle@sha256:7f14582c0d63f02a3ad9201d8c90c762de2f131d62ce3a3b201f7e8ffdfa3153
        version: 4.20.0-202511252120
      entries:
      - name: local-storage-operator.v4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: local-storage-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: local-storage-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: local-storage-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: local-storage-operator.v4.20.0-202510212154
        version: 4.20.0-202510212154
      - name: local-storage-operator.v4.20.0-202509262224
        version: 4.20.0-202509262224
      name: stable
    defaultChannel: stable
    packageName: local-storage-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Craig Trought
      provider-url: ""
    name: prometheus
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometheusoperator.0.56.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "Prometheus",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "replicas": 2,
                  "serviceAccountName": "prometheus-k8s",
                  "serviceMonitorSelector": {},
                  "ruleSelector": {},
                  "podMonitorSelector": {},
                  "probeSelector": {},
                  "alerting": {
                    "alertmanagers": [
                      {
                        "namespace": "monitoring",
                        "name": "alertmanager-main",
                        "port": "web"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "ServiceMonitor",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "selector": {
                    "matchLabels": {
                      "operated-prometheus": "true"
                    }
                  },
                  "endpoints": [
                    {
                      "port": "web",
                      "interval": "30s"
                    }
                  ]
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "PodMonitor",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "selector": {
                    "matchLabels": {
                      "app": "prometheus"
                    }
                  },
                  "podMetricsEndpoints": [
                    {
                      "port": "web",
                      "interval": "30s"
                    }
                  ]
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "Alertmanager",
                "metadata": {
                  "name": "alertmanager-main"
                },
                "spec": {
                  "replicas": 3,
                  "alertmanagerConfigSelector": {}
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "PrometheusRule",
                "metadata": {
                  "name": "prometheus-example-rules"
                },
                "spec": {
                  "groups": [
                    {
                      "name": "./example.rules",
                      "rules": [
                        {
                          "alert": "ExampleAlert",
                          "expr": "vector(1)"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1alpha1",
                "kind": "AlertmanagerConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "receivers": [
                    {
                      "name": "example"
                    }
                  ],
                  "route": {
                    "receiver": "example"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/prometheus-operator/prometheus-operator:v0.56.3
          createdAt: "2022-05-24T9:40:00Z"
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          repository: https://github.com/prometheus-operator/prometheus-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A running Prometheus instance
            displayName: Prometheus
            kind: Prometheus
            name: prometheuses.monitoring.coreos.com
            version: v1
          - description: A Prometheus Rule configures groups of sequentially evaluated
              recording and alerting rules.
            displayName: Prometheus Rule
            kind: PrometheusRule
            name: prometheusrules.monitoring.coreos.com
            version: v1
          - description: Configures prometheus to monitor a particular k8s service
            displayName: Service Monitor
            kind: ServiceMonitor
            name: servicemonitors.monitoring.coreos.com
            version: v1
          - description: Configures prometheus to monitor a particular pod
            displayName: Pod Monitor
            kind: PodMonitor
            name: podmonitors.monitoring.coreos.com
            version: v1
          - description: Configures an Alertmanager for the namespace
            displayName: Alertmanager
            kind: Alertmanager
            name: alertmanagers.monitoring.coreos.com
            version: v1
          - description: Configures subsections of Alertmanager configuration specific
              to each namespace
            displayName: AlertmanagerConfig
            kind: AlertmanagerConfig
            name: alertmanagerconfigs.monitoring.coreos.com
            version: v1alpha1
          - description: Defines how groups of ingresses and static targets should
              be monitored.
            displayName: Probe
            kind: Probe
            name: probes.monitoring.coreos.com
            version: v1
          - description: Allows recording and alerting rules to be processed across
              multiple Prometheus instances.
            displayName: ThanosRuler
            kind: ThanosRuler
            name: thanosrulers.monitoring.coreos.com
            version: v1
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: k8s@trought.ca
          name: Craig Trought
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Craig Trought
        relatedImages:
        - quay.io/prometheus-operator/prometheus-operator:v0.56.3
        - quay.io/openshift-community-operators/prometheus@sha256:1de089becfcceb3747b3a3ce310c1612861b03446906cab5e981071db10709a9
        version: 0.56.3
      entries:
      - name: prometheusoperator.0.56.3
        version: 0.56.3
      - name: prometheusoperator.0.47.0
        version: 0.47.0
      name: beta
    defaultChannel: beta
    packageName: prometheus
    provider:
      name: Craig Trought
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-dynamodb-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-dynamodb-controller.v1.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dynamodb.services.k8s.aws/v1alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "dynamodb.services.k8s.aws/v1alpha1",
                "kind": "GlobalTable",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "dynamodb.services.k8s.aws/v1alpha1",
                "kind": "Table",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/dynamodb-controller:1.7.0
          createdAt: "2025-11-29T03:42:45Z"
          description: AWS DynamoDB controller is a service controller for managing
            DynamoDB resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup represents the state of an AWS dynamodb Backup resource.
            displayName: Backup
            kind: Backup
            name: backups.dynamodb.services.k8s.aws
            version: v1alpha1
          - description: GlobalTable represents the state of an AWS dynamodb GlobalTable
              resource.
            displayName: GlobalTable
            kind: GlobalTable
            name: globaltables.dynamodb.services.k8s.aws
            version: v1alpha1
          - description: Table represents the state of an AWS dynamodb Table resource.
            displayName: Table
            kind: Table
            name: tables.dynamodb.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon DynamoDB resources in AWS from within your Kubernetes cluster.

          **About Amazon DynamoDB**

          Amazon DynamoDB is a fully managed NoSQL database service that provides fast and predictable performance with seamless scalability. DynamoDB lets you offload the administrative burdens of operating and scaling a distributed database so that you don't have to worry about hardware provisioning, setup and configuration, replication, software patching, or cluster scaling. DynamoDB also offers encryption at rest, which eliminates the operational burden and complexity involved in protecting sensitive data. For more information, see [DynamoDB Encryption at Rest](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/EncryptionAtRest.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon DynamoDB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dynamodb
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon DynamoDB Developer Resources
          url: https://aws.amazon.com/dynamodb/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: dynamodb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-dynamodb-controller@sha256:974e2c7cbe0b9de1106f9a7b95c2d0a38d67114af19e95d729d0231cb6052a21
        - public.ecr.aws/aws-controllers-k8s/dynamodb-controller:1.7.0
        version: 1.7.0
      entries:
      - name: ack-dynamodb-controller.v1.7.0
        version: 1.7.0
      - name: ack-dynamodb-controller.v1.6.1
        version: 1.6.1
      - name: ack-dynamodb-controller.v1.6.0
        version: 1.6.0
      - name: ack-dynamodb-controller.v1.5.2
        version: 1.5.2
      - name: ack-dynamodb-controller.v1.5.1
        version: 1.5.1
      - name: ack-dynamodb-controller.v1.5.0
        version: 1.5.0
      - name: ack-dynamodb-controller.v1.4.10
        version: 1.4.10
      - name: ack-dynamodb-controller.v1.4.9
        version: 1.4.9
      - name: ack-dynamodb-controller.v1.4.7
        version: 1.4.7
      - name: ack-dynamodb-controller.v1.4.6
        version: 1.4.6
      - name: ack-dynamodb-controller.v1.4.5
        version: 1.4.5
      - name: ack-dynamodb-controller.v1.4.4
        version: 1.4.4
      - name: ack-dynamodb-controller.v1.4.3
        version: 1.4.3
      - name: ack-dynamodb-controller.v1.4.2
        version: 1.4.2
      - name: ack-dynamodb-controller.v1.4.1
        version: 1.4.1
      - name: ack-dynamodb-controller.v1.3.0
        version: 1.3.0
      - name: ack-dynamodb-controller.v1.2.23
        version: 1.2.23
      - name: ack-dynamodb-controller.v1.2.22
        version: 1.2.22
      - name: ack-dynamodb-controller.v1.2.21
        version: 1.2.21
      - name: ack-dynamodb-controller.v1.2.20
        version: 1.2.20
      - name: ack-dynamodb-controller.v1.2.15
        version: 1.2.15
      - name: ack-dynamodb-controller.v1.2.14
        version: 1.2.14
      - name: ack-dynamodb-controller.v1.2.13
        version: 1.2.13
      - name: ack-dynamodb-controller.v1.2.12
        version: 1.2.12
      - name: ack-dynamodb-controller.v1.2.11
        version: 1.2.11
      - name: ack-dynamodb-controller.v1.2.9
        version: 1.2.9
      - name: ack-dynamodb-controller.v1.2.8
        version: 1.2.8
      - name: ack-dynamodb-controller.v1.2.6
        version: 1.2.6
      - name: ack-dynamodb-controller.v1.2.5
        version: 1.2.5
      - name: ack-dynamodb-controller.v1.2.4
        version: 1.2.4
      - name: ack-dynamodb-controller.v1.2.2
        version: 1.2.2
      - name: ack-dynamodb-controller.v1.2.1
        version: 1.2.1
      - name: ack-dynamodb-controller.v1.2.0
        version: 1.2.0
      - name: ack-dynamodb-controller.v1.1.1
        version: 1.1.1
      - name: ack-dynamodb-controller.v1.1.0
        version: 1.1.0
      - name: ack-dynamodb-controller.v1.0.3
        version: 1.0.3
      - name: ack-dynamodb-controller.v1.0.2
        version: 1.0.2
      - name: ack-dynamodb-controller.v1.0.1
        version: 1.0.1
      - name: ack-dynamodb-controller.v1.0.0
        version: 1.0.0
      - name: ack-dynamodb-controller.v0.1.10
        version: 0.1.10
      - name: ack-dynamodb-controller.v0.1.9
        version: 0.1.9
      - name: ack-dynamodb-controller.v0.1.8
        version: 0.1.8
      - name: ack-dynamodb-controller.v0.1.7
        version: 0.1.7
      - name: ack-dynamodb-controller.v0.1.6
        version: 0.1.6
      - name: ack-dynamodb-controller.v0.1.5
        version: 0.1.5
      - name: ack-dynamodb-controller.v0.1.4
        version: 0.1.4
      - name: ack-dynamodb-controller.v0.1.3
        version: 0.1.3
      - name: ack-dynamodb-controller.v0.1.1
        version: 0.1.1
      - name: ack-dynamodb-controller.v0.1.0
        version: 0.1.0
      - name: ack-dynamodb-controller.v0.0.20
        version: 0.0.20
      - name: ack-dynamodb-controller.v0.0.19
        version: 0.0.19
      - name: ack-dynamodb-controller.v0.0.18
        version: 0.0.18
      - name: ack-dynamodb-controller.v0.0.17
        version: 0.0.17
      - name: ack-dynamodb-controller.v0.0.16
        version: 0.0.16
      - name: ack-dynamodb-controller.v0.0.15
        version: 0.0.15
      - name: ack-dynamodb-controller.v0.0.14
        version: 0.0.14
      - name: ack-dynamodb-controller.v0.0.13
        version: 0.0.13
      - name: ack-dynamodb-controller.v0.0.12
        version: 0.0.12
      - name: ack-dynamodb-controller.v0.0.11
        version: 0.0.11
      - name: ack-dynamodb-controller.v0.0.10
        version: 0.0.10
      - name: ack-dynamodb-controller.v0.0.9
        version: 0.0.9
      - name: ack-dynamodb-controller.v0.0.8
        version: 0.0.8
      name: alpha
    defaultChannel: alpha
    packageName: ack-dynamodb-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: networkservicemesh.io
      provider-url: networkservicemesh.io
    name: nsm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nsm-operator.v1.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nsm.networkservicemesh.io/v1alpha1",
                "kind": "NSM",
                "metadata": {
                  "name": "nsm-sample",
                  "namespace": "nsm"
                },
                "spec": {
                  "forwarders": [
                    {
                      "image": "ghcr.io/networkservicemesh/cmd-forwarder-vpp:v1.8.0",
                      "type": "vpp"
                    }
                  ],
                  "nsmLogLevel": "TRACE",
                  "nsmPullPolicy": "IfNotPresent",
                  "registry": {
                    "image": "ghcr.io/networkservicemesh/cmd-registry-memory:v1.8.0",
                    "type": "memory"
                  },
                  "version": "v1.8.0",
                  "webhook": {
                    "image": "ghcr.io/networkservicemesh/admission-webhook-k8s:v1.8.0"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: quay.io/acmenezes/nsm-operator:v1.8.0
          createdAt: "2023-03-02T19:36:46Z"
          operatorframework.io/suggested-namespace: nsm
          operators.operatorframework.io/builder: operator-sdk-v1.26.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/networkservicemesh/nsm-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NetworkServiceEndpoint
            name: networkserviceendpoints.networkservicemesh.io
            version: v1
          - kind: NetworkService
            name: networkservices.networkservicemesh.io
            version: v1
          - kind: NSM
            name: nsms.nsm.networkservicemesh.io
            version: v1alpha1
        description: |-
          The Network Service Mesh Operator manages and install network service meshes.

          Check networkservicemesh.io

          Install requirements:

          Before installing the operator it's necessary to have installed [spire](https://github.com/spiffe/spire)

          We have a ready to install yaml file for spire [here](https://github.com/networkservicemesh/nsm-operator/blob/master/config/spire/spire.yaml)
        displayName: nsm-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network
        - service mesh
        links:
        - name: Nsm Operator
          url: https://nsm-operator.domain
        maintainers:
        - email: adcmenezes@gmail.com
          name: Alexandre Menezes
        maturity: alpha
        provider:
          name: networkservicemesh.io
          url: networkservicemesh.io
        relatedImages:
        - quay.io/openshift-community-operators/nsm-operator@sha256:330a930f885dacf65537beb600fe7f428e02687e83778e47dcda3dc2df15ae24
        - quay.io/acmenezes/nsm-operator:v1.8.0
        version: 1.8.0
      entries:
      - name: nsm-operator.v1.8.0
        version: 1.8.0
      name: alpha
    defaultChannel: alpha
    packageName: nsm-operator
    provider:
      name: networkservicemesh.io
      url: networkservicemesh.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com
    name: ibm-security-verify-access-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-security-verify-access-operator.v25.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ibm.com/v1",
                "kind": "IBMSecurityVerifyAccess",
                "metadata": {
                  "name": "ivia-sample"
                },
                "spec": {
                  "image": "icr.io/ivia/ivia-wrp@sha256:c2dd5ec2b362136896e47ccbd0f3ee033af945fc2794ddaf075da603e4d4d7b2",
                  "instance": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: icr.io/isva/verify-access-operator@sha256:ca1d7be14b4dd313d4675f18541b2cc670ea0a0adf3ec87e347e5e20a86bc39c
          createdAt: "2025-05-01T01:27:17Z"
          description: The IBM Verify Identity Access Operator manages the lifecycle
            of IBM Verify Identity Access worker containers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM-Security/verify-access-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBMSecurityVerifyAccess is the Schema for the ibmsecurityverifyaccesses
              API.
            displayName: IBMSecurity Verify Access
            kind: IBMSecurityVerifyAccess
            name: ibmsecurityverifyaccesses.ibm.com
            version: v1
        description: |+
          In a world of highly fragmented access management environments, [IBM Verify Identity Access](https://www.ibm.com/au-en/products/verify-access) helps you simplify your users' access while more securely adopting web, mobile and cloud technologies. This solution helps you strike a balance between usability and security through the use of risk-based access, single sign-on, integrated access management control, identity federation and its mobile multi-factor authentication capability, IBM Verify. Take back control of your access management with IBM Verify Identity Access.

          The IBM Verify Identity Access operator provides lifecycle management of the lightweight containers which are used to protect an environment, namely:
          * [Web Reverse Proxy](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-web-reverse-proxy)
          * [Runtime](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-runtime)
          * [Distributed Session Cache](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-distributed-session-cache)

          The operator will manage the deployment of these lightweight IBM Verify Identity Access worker containers, and also control the rolling restart of these containers when a configuration snapshot is updated.

          See the project [Readme](https://github.com/IBM-Security/verify-access-operator/blob/master/README.md) for further information and details.

        displayName: IBM Verify Identity Access Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - identity and access
        - security
        links:
        - name: Verify Identity Access Product Information
          url: https://www.ibm.com/au-en/products/verify-access
        - name: Verify Identity Access Documentation
          url: https://www.ibm.com/docs/en/sva
        maintainers:
        - email: isamdev@au1.ibm.com
          name: Verify Identity Access Development Team
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: IBM
          url: https://www.ibm.com
        relatedImages:
        - registry.connect.redhat.com/ibm/verify-access-operator@sha256:6e37f565564de371b5797895f3e96e0efd4f592d7d3e899ea8507438bdb60e78
        - icr.io/isva/verify-access-operator@sha256:ca1d7be14b4dd313d4675f18541b2cc670ea0a0adf3ec87e347e5e20a86bc39c
        - icr.io/ivia/ivia-wrp@sha256:c2dd5ec2b362136896e47ccbd0f3ee033af945fc2794ddaf075da603e4d4d7b2
        version: 25.4.0
      entries:
      - name: ibm-security-verify-access-operator.v25.4.0
        version: 25.4.0
      - name: ibm-security-verify-access-operator.v24.12.0
        version: 24.12.0
      name: stable
    defaultChannel: stable
    packageName: ibm-security-verify-access-operator
    provider:
      name: IBM
      url: https://www.ibm.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HPE
      provider-url: ""
    name: hpe-filex-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hpe-filex-csi-operator.v2.6.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "storage.hpe.com/v1",
                "kind": "HPEGreenLakeFileCSIDriver",
                "metadata": {
                  "name": "hpegreenlakefilecsidriver-sample"
                },
                "spec": {
                  "controller": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  },
                  "disableNodeConformance": false,
                  "imagePullPolicy": "IfNotPresent",
                  "images": {
                    "csiAttacher": "registry.k8s.io/sig-storage/csi-attacher@sha256:a399393ff5bd156277c56bae0c08389b1a1b95b7fd6ea44a316ce55e0dd559d7",
                    "csiControllerDriver": "quay.io/hpestorage/filex-csi-driver@sha256:b7f960bbf47277f6469889aba79d4c9866712130e28f32fc48f2ef3a5ca99ef7",
                    "csiNodeDriver": "quay.io/hpestorage/filex-csi-driver@sha256:b7f960bbf47277f6469889aba79d4c9866712130e28f32fc48f2ef3a5ca99ef7",
                    "csiNodeDriverRegistrar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a",
                    "csiNodeInit": "quay.io/hpestorage/filex-csi-init@sha256:2d867eefb2331490c30b8ff4d9ebe50090ec94f72d9431b0738e7dfba838fbbe",
                    "csiProvisioner": "registry.k8s.io/sig-storage/csi-provisioner@sha256:e5900dc98b0d02f317ea9572f3824983c47a2fb5d5fe2b160aedf1b99c14c9e4",
                    "csiResizer": "registry.k8s.io/sig-storage/csi-resizer@sha256:ab774734705a906561e15b67f6a96538f3ad520335d636f793aaafe87a3b5200",
                    "csiSnapshotter": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d"
                  },
                  "kubeletRootDir": "/var/lib/kubelet",
                  "node": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/hpestorage/filex-csi-driver-operator@sha256:90a269dcbbcbdef9c69cf46242454de641fd009c6d7daf3f9b04deec4a2301e5
          createdAt: "2025-12-16T18:39:19Z"
          description: A Container Storage Interface (CSI) driver for HPE GreenLake
            File Storage.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=1.0.0 <2.6.4'
          operatorframework.io/suggested-namespace: hpe-storage
          operatorhub.io/ui-metadata-max-k8s-version: "1.34"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/hpe-storage/co-deployments
          support: HPE
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HPE GreenLake File Storage CSI Driver
            displayName: HPEGreenLakeFileCSIDriver
            kind: HPEGreenLakeFileCSIDriver
            name: hpegreenlakefilecsidrivers.storage.hpe.com
            version: v1
        description: |
          The HPE GreenLake File Storage CSI Operator deploys the  HPE GreenLake File Storage CSI Driver on OpenShift for dynamic  provisioning of persistent volumes.
          Please refer to our CSI driver [documentation](https://scod.hpedev.io/filex_csi_driver/index.html) for supported HPE platforms and full list of supported CSI features.
          ## Installation
          Refer to the HPE GreenLake File Storage CSI Operator [documentation](https://scod.hpedev.io/filex_csi_driver/deployment.html#operator).
        displayName: HPE GreenLake File Storage CSI Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - HPE
        - HPE CSI
        - HPE Storage
        - CSI
        links:
        - name: Documentation
          url: https://scod.hpedev.io/filex_csi_driver/index.html
        maintainers:
        - email: dev-hi-containers@hpe.com
          name: HPE Storage Containers Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: HPE
        relatedImages:
        - registry.connect.redhat.com/hpestorage/filex-csi-driver-operator-bundle-ocp@sha256:fa96e762f81868adbd5b6fc8668928f7b7a90f631485da7ce0b2b081af4b0520
        - registry.k8s.io/sig-storage/csi-attacher@sha256:a399393ff5bd156277c56bae0c08389b1a1b95b7fd6ea44a316ce55e0dd559d7
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:e5900dc98b0d02f317ea9572f3824983c47a2fb5d5fe2b160aedf1b99c14c9e4
        - registry.connect.redhat.com/hpestorage/filex-csi-driver-operator@sha256:90a269dcbbcbdef9c69cf46242454de641fd009c6d7daf3f9b04deec4a2301e5
        - registry.k8s.io/sig-storage/csi-resizer@sha256:ab774734705a906561e15b67f6a96538f3ad520335d636f793aaafe87a3b5200
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d
        - quay.io/hpestorage/filex-csi-driver@sha256:b7f960bbf47277f6469889aba79d4c9866712130e28f32fc48f2ef3a5ca99ef7
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a
        - quay.io/hpestorage/filex-csi-init@sha256:2d867eefb2331490c30b8ff4d9ebe50090ec94f72d9431b0738e7dfba838fbbe
        version: 2.6.4
      entries:
      - name: hpe-filex-csi-operator.v2.6.4
        version: 2.6.4
      name: stable
    defaultChannel: stable
    packageName: hpe-filex-csi-operator
    provider:
      name: HPE
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cognitoidentityprovider-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cognitoidentityprovider-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cognitoidentityprovider-controller:1.2.0
          createdAt: "2025-11-29T03:40:53Z"
          description: AWS Cognito Identity Provider controller is a service controller
            for managing Cognito Identity Provider resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: UserPool represents the state of an AWS cognitoidentityprovider
              UserPool resource.
            displayName: UserPool
            kind: UserPool
            name: userpools.cognitoidentityprovider.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Cognito Identity Provider resources in AWS from within your Kubernetes cluster.

          **About Amazon Cognito Identity Provider**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Cognito Identity Provider
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cognitoidentityprovider
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Cognito Identity Provider Developer Resources
          url: https://aws.amazon.com/Cognito Identity Provider/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cognitoidentityprovider maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-cognitoidentityprovider-controller@sha256:be19b3ce74cca998e3dc7e5c14b09846883456161d1c41479acd17e9c7bf3f91
        - public.ecr.aws/aws-controllers-k8s/cognitoidentityprovider-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-cognitoidentityprovider-controller.v1.2.0
        version: 1.2.0
      - name: ack-cognitoidentityprovider-controller.v1.1.2
        version: 1.1.2
      - name: ack-cognitoidentityprovider-controller.v1.1.1
        version: 1.1.1
      - name: ack-cognitoidentityprovider-controller.v1.1.0
        version: 1.1.0
      - name: ack-cognitoidentityprovider-controller.v1.0.12
        version: 1.0.12
      name: alpha
    defaultChannel: alpha
    packageName: ack-cognitoidentityprovider-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Ricardo Maraschini
      provider-url: https://github.com/ricardomaraschini/tagger
    name: tagger
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tagger.v2.1.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tagger.dev/v1beta1",
                "kind": "Tag",
                "metadata": {
                  "name": "nginx"
                },
                "spec": {
                  "from": "docker.io/library/nginx:latest",
                  "generation": 0,
                  "mirror": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools
          containerImage: quay.io/tagger/operator:v2.1.17
          createdAt: "2021-08-02T00:00:00Z"
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/ricardomaraschini/tagger
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tag is a Container Image representation as a Custom Resource.
            displayName: Tag
            kind: Tag
            name: tags.tagger.dev
            version: v1beta1
        description: |-
          A Container Image Orchestrator. Adds mirroring and Container Image manipulation capabilities
          to a Kubernetes cluster.

          Keeping track of all Container Images in use in a Kubernetes cluster is a complicated task.
          Container Images may come from numerous different Image Registries. In some cases, controlling
          how a stable version of a given Container Image looks escapes the user's authority. To add to
          this, Container Runtimes rely on remote registries (from the cluster's point of view) when
          obtaining Container Images, potentially making the process of pulling their blobs (manifests,
          config, and layers) slower.

          The notion of indexing Container Image versions by Tags is helpful. Still, it does not provide
          users with the right confidence to always use the intended Container Image – today's "latest"
          tag might not be tomorrow's "latest" tag. In addition to that, these Image Registries allow
          access to Container Images by their Manifest content's hash (i.e., usually sha256), which gives
          users the confidence at a cost in semantics.

          When releasing a new version of an application to Push and to Deploy are split into two
          distinct steps. Both the pusher and the puller need access to the same Image Registry, adding
          complexity.  Credentials are one example of the concerns. Other factors may pop up when
          running, for instance, in an air-gapped environment, where the cluster may not reach external
          Image Registries.

          Tagger aims to overcome these caveats by providing an image management abstraction layer. For
          instance, by providing a direct mapping between a Container Image tag (e.g., "latest") and its
          correspondent Manifest content's hash, users can then refer to the Container Image by its tag
          – and be sure to use that specific version. More than that, when allied with an Internal Image
          Registry, Tagger can also automatically mirror Container Images into the cluster.

          While using Tagger, Deployments can refer to Container Images by an arbitrarily defined name,
          such as "my-app", and Tagger will make sure that they use the right Container Image through its
          internal "tag to Manifest content's hash" mapping.

          For each new "release" of a given Container Image, Tagger creates a new Generation for it,
          making it easy to roll back to previously pushed "releases" of the same Container Image in case
          of problems.

          When integrated with an Internal Registry, Tagger allows users to push or pull Images directly
          without requiring an external Image Registry. It works as a layer between the user and the
          Internal Registry. Every time a new "release" of Container Images is pushed, all Deployments
          are updated automatically. Users don't need to know about the Internal Registry existence, if
          they are logged-in to the Kubernetes cluster, they can obtain old or provide new "Generations"
          for a Container Image.

          In summary, Tagger mirrors remote Container Images into a Kubernetes cluster indexing them in
          different Generations (allowing easy navigation through these multiple Generations), provides
          an interface allowing users to pull and push images directly to the Kubernetes cluster and
          provides full integration with Kubernetes Deployments (automatic triggers new rollouts on
          Container Image changes).

          By default Tagger won't be able to mirror until you provide it with a mirror registry config.
          After install you can configure the mirror by editing the Secret mirror-registry-config in the
          operator namespace. Follow below an example of a valid mirror-registry-config secret (you gonna
          have to provide your own address, username, password, etc).

          ```yaml
          apiVersion: v1
          kind: Secret
          metadata:
            name: mirror-registry-config
          data:
            address: cmVnaXN0cnkuaW8=
            username: YWRtaW4=
            password: d2hhdCB3ZXJlIHlvdSB0aGlua2luZz8K
            token: YW4gb3B0aW9uYWwgdG9rZW4gZm9yIHRva2VuIGJhc2VkIGF1dGg=
            insecure: dHJ1ZQ==
          ```

          To make pushing an pulling images easier you should go ahead and grab the `kubectl` plugin
          available [here](https://github.com/ricardomaraschini/tagger/releases). You can download a
          full version of the README with usage examples and configuration options
          [here](https://github.com/ricardomaraschini/tagger/releases/download/v2.1.17/README.pdf).
        displayName: Tagger
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tagger
        - mirroring
        - image
        links:
        - name: Documentation
          url: https://github.com/ricardomaraschini/tagger/releases/download/v2.1.17/README.pdf
        - name: Plugin (kubectl)
          url: https://github.com/ricardomaraschini/tagger/releases/tag/v2.1.17
        maintainers:
        - email: rmarasch@redhat.com
          name: Ricardo Maraschini
        maturity: alpha
        provider:
          name: Ricardo Maraschini
          url: https://github.com/ricardomaraschini/tagger
        relatedImages:
        - quay.io/openshift-community-operators/tagger@sha256:a528169d305dbc2bc69794437665e4f940ea708dfd957c58d69bc79316b68612
        - quay.io/tagger/operator:v2.1.17
        version: 2.1.17
      entries:
      - name: tagger.v2.1.17
        version: 2.1.17
      name: alpha
    defaultChannel: alpha
    packageName: tagger
    provider:
      name: Ricardo Maraschini
      url: https://github.com/ricardomaraschini/tagger
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: mtc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mtc-operator.v1.7.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigrationController",
                  "metadata": {
                    "name": "migration-controller",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "azure_resource_group": "",
                    "cluster_name": "host",
                    "migration_velero": true,
                    "migration_controller": true,
                    "migration_ui": true,
                    "migration_log_reader": true,
                    "olm_managed": true,
                    "restic_timeout": "1h",
                    "mig_pv_limit": "100",
                    "mig_pod_limit": "100",
                    "mig_namespace_limit": "10"
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageMigration",
                  "metadata": {
                    "name": "directimagemigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageStreamMigration",
                  "metadata": {
                    "name": "directimagestreammigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigAnalytic",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "plan": {
                      "name": "foo",
                      "namespace": "openshift-migration"
                    },
                    "analyzeK8SResources": true,
                    "analyzeImageCount": true,
                    "analyzePVCapacity": true
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigCluster",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectVolumeMigration",
                  "metadata": {
                    "name": "direct",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                      "kind": "DirectVolumeMigrationProgress",
                      "metadata": {
                        "name": "direct-progress",
                        "namespace": "openshift-migration"
                      },
                      "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigPlan",
                  "metadata": {
                    "name": "migplan",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigMigration",
                  "metadata": {
                    "name": "migmigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigStorage",
                  "metadata": {
                    "name": "migstorage",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:d8232366bb3abee6454fcbff6842ec4deaa60cde762f3868eae6218c888cbfe7
          createdAt: "2024-09-04T17:53:42Z"
          description: Facilitates migration of container workloads from OpenShift
            3.x to OpenShift 4.x
          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.skipRange: '>=1.5.0 <1.7.17'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-migration
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:b95a14eda5ae107ba3747995f1ea74a6422f9e5c20d685505e954ca7630b810d
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/mig-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: a request to migrate PVCs from a set of namespaces directly
              to a target
            displayName: DirectVolumeMigration
            kind: DirectVolumeMigration
            name: directvolumemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate watch the progress of rsync pod migrating
              a PVC to a target
            displayName: DirectVolumeMigrationProgress
            kind: DirectVolumeMigrationProgress
            name: directvolumemigrationprogresses.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a set of namespaces
              directly to a target
            displayName: DirectImageMigration
            kind: DirectImageMigration
            name: directimagemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a single imagestream
              directly to a target
            displayName: DirectImageStreamMigration
            kind: DirectImageStreamMigration
            name: directimagestreammigrations.migration.openshift.io
            version: v1alpha1
          - description: A request to Analyze a MigPlan and its namespaces
            displayName: MigAnalytic
            kind: MigAnalytic
            name: miganalytics.migration.openshift.io
            version: v1alpha1
          - description: A cluster defined for migration
            displayName: MigCluster
            kind: MigCluster
            name: migclusters.migration.openshift.io
            version: v1alpha1
          - description: A migration process
            displayName: MigMigration
            kind: MigMigration
            name: migmigrations.migration.openshift.io
            version: v1alpha1
          - description: A migration plan
            displayName: MigPlan
            kind: MigPlan
            name: migplans.migration.openshift.io
            version: v1alpha1
          - description: A migration contoller deployment
            displayName: MigrationController
            kind: MigrationController
            name: migrationcontrollers.migration.openshift.io
            version: v1alpha1
          - description: A migration hook
            displayName: MigHook
            kind: MigHook
            name: mighooks.migration.openshift.io
            version: v1alpha1
          - description: A migration storage location
            displayName: MigStorage
            kind: MigStorage
            name: migstorages.migration.openshift.io
            version: v1alpha1
        description: |-
          The Migration Toolkit for Containers Operator enables installation of the application migration tool components.

          After you have installed the Operator, you can install components by creating a MigrationController CR.

          By default, the Operator installs the following components on an OpenShift Container Platform 4 target cluster:

          * velero and restic, to back up data on the source cluster and restore it on the target cluster
          * mig-controller, to coordinate the backup and restore processes
          * mig-ui, the web console for managing migrations

          If you experience any issues or have feature requests, please file an [issue](https://github.com/konveyor/mig-operator/issues)

          For more information, see the [OpenShift Container Platform Migration Guide](https://docs.openshift.com/container-platform/latest/migration_toolkit_for_containers/about-mtc.html).
        displayName: Migration Toolkit for Containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - crane
        - mtc
        links:
        - name: Migrations
          url: https://github.com/konveyor/mig-controller
        - name: Documentation
          url: https://docs.openshift.com/container-platform/latest/migration_toolkit_for_containers/about-mtc.html
        - name: Crane Operator
          url: https://github.com/konveyor/mig-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhmtc/openshift-migration-ui-rhel8@sha256:1b8008a16a0f53c09ecc5a219964194689a1aeb01acee8313aa49a9c26259429
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-aws-rhel8@sha256:c001dc96a1478a58f30461ab018e40bede13a78f3cdce869a70dcb8b9bba22b1
        - registry.redhat.io/rhmtc/openshift-velero-plugin-rhel8@sha256:92a3162c705537147005a065cdddbb410e1863d80c08d8b0f27b7ff5588500cd
        - registry.redhat.io/rhmtc/openshift-migration-velero-restic-restore-helper-rhel8@sha256:b137e1345038c9e566767f24cce60c03ec278f5a2efc28fa08e0bd8bfa016486
        - registry.redhat.io/rhmtc/openshift-migration-velero-rhel8@sha256:07cafb83ba90378c1fa60338cf951a9d7145ec245710637e90fdb508875dcc45
        - registry.redhat.io/rhmtc/openshift-migration-controller-rhel8@sha256:dc10544e1bb24883f38373a0445944745282e5a69ed1744f428f98871a7a39c9
        - registry.redhat.io/rhmtc/openshift-migration-log-reader-rhel8@sha256:8fbfffb0bc3adfb4d72961dad381e1daba414bf4a7084f03b5208f6be4191ceb
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:d8232366bb3abee6454fcbff6842ec4deaa60cde762f3868eae6218c888cbfe7
        - registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:b95a14eda5ae107ba3747995f1ea74a6422f9e5c20d685505e954ca7630b810d
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-gcp-rhel8@sha256:035855c3d4b32a29232846d73dc398e81f941fd90a03e33241ca06f6e80b2204
        - registry.redhat.io/rhmtc/openshift-migration-hook-runner-rhel8@sha256:a539064234088a4ee13b8a9666ca9507208fe38189ee9b8b673a38a58aa75599
        - registry.redhat.io/rhmtc/openshift-migration-registry-rhel8@sha256:31b3658dd79c18111c21e99aea52cc198f8e95b458a1a4f8d2bfc4d21e9bdacb
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:f86e96edb0418811df328debdee93b4a51cf7f651134ee35e9c50b9dbfc29fd8
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-microsoft-azure-rhel8@sha256:084f1e54ef0d7f457d5a7cfc57b567ad8d85237c12f707c82f7a30a54e3652ba
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:1d86075469312e84f3d16379efcd6130ec9e8b23a1343e3945f071d82beff6e3
        version: 1.7.17
      entries:
      - name: mtc-operator.v1.7.17
        version: 1.7.17
      - name: mtc-operator.v1.7.16
        version: 1.7.16
      - name: mtc-operator.v1.7.15
        version: 1.7.15
      - name: mtc-operator.v1.7.13
        version: 1.7.13
      - name: mtc-operator.v1.7.12
        version: 1.7.12
      - name: mtc-operator.v1.7.11
        version: 1.7.11
      - name: mtc-operator.v1.7.10
        version: 1.7.10
      - name: mtc-operator.v1.7.9
        version: 1.7.9
      - name: mtc-operator.v1.7.8
        version: 1.7.8
      - name: mtc-operator.v1.7.7
        version: 1.7.7
      - name: mtc-operator.v1.7.6
        version: 1.7.6
      - name: mtc-operator.v1.7.5
        version: 1.7.5
      - name: mtc-operator.v1.7.4
        version: 1.7.4
      - name: mtc-operator.v1.7.3
        version: 1.7.3
      - name: mtc-operator.v1.7.2
        version: 1.7.2
      - name: mtc-operator.v1.7.1
        version: 1.7.1
      - name: mtc-operator.v1.7.0
        version: 1.7.0
      name: release-v1.7
    - currentCSV: mtc-operator.v1.8.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigrationController",
                  "metadata": {
                    "name": "migration-controller",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "azure_resource_group": "",
                    "cluster_name": "host",
                    "migration_velero": true,
                    "migration_controller": true,
                    "migration_ui": true,
                    "migration_log_reader": true,
                    "restic_timeout": "1h",
                    "mig_pv_limit": "100",
                    "mig_pod_limit": "100",
                    "mig_namespace_limit": "10"
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageMigration",
                  "metadata": {
                    "name": "directimagemigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageStreamMigration",
                  "metadata": {
                    "name": "directimagestreammigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigAnalytic",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "plan": {
                      "name": "foo",
                      "namespace": "openshift-migration"
                    },
                    "analyzeK8SResources": true,
                    "analyzeImageCount": true,
                    "analyzePVCapacity": true
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigCluster",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectVolumeMigration",
                  "metadata": {
                    "name": "direct",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                      "kind": "DirectVolumeMigrationProgress",
                      "metadata": {
                        "name": "direct-progress",
                        "namespace": "openshift-migration"
                      },
                      "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigPlan",
                  "metadata": {
                    "name": "migplan",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigMigration",
                  "metadata": {
                    "name": "migmigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigStorage",
                  "metadata": {
                    "name": "migstorage",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration, OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:886c3a3f417f48a1ac20d901f4eedca7271548e3d03c72f54fd172e8c025d45c
          createdAt: "2019-07-25T10:21:00+00:00"
          description: Facilitates migration of container workloads from OpenShift
            3.x to OpenShift 4.x
          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: "true"
          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.skipRange: '>=0.0.0 <1.8.11'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-migration
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/mig-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: a request to migrate PVCs from a set of namespaces directly
              to a target
            displayName: DirectVolumeMigration
            kind: DirectVolumeMigration
            name: directvolumemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate watch the progress of rsync pod migrating
              a PVC to a target
            displayName: DirectVolumeMigrationProgress
            kind: DirectVolumeMigrationProgress
            name: directvolumemigrationprogresses.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a set of namespaces
              directly to a target
            displayName: DirectImageMigration
            kind: DirectImageMigration
            name: directimagemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a single imagestream
              directly to a target
            displayName: DirectImageStreamMigration
            kind: DirectImageStreamMigration
            name: directimagestreammigrations.migration.openshift.io
            version: v1alpha1
          - description: A request to Analyze a MigPlan and its namespaces
            displayName: MigAnalytic
            kind: MigAnalytic
            name: miganalytics.migration.openshift.io
            version: v1alpha1
          - description: A cluster defined for migration
            displayName: MigCluster
            kind: MigCluster
            name: migclusters.migration.openshift.io
            version: v1alpha1
          - description: A migration process
            displayName: MigMigration
            kind: MigMigration
            name: migmigrations.migration.openshift.io
            version: v1alpha1
          - description: A migration plan
            displayName: MigPlan
            kind: MigPlan
            name: migplans.migration.openshift.io
            version: v1alpha1
          - description: A migration contoller deployment
            displayName: MigrationController
            kind: MigrationController
            name: migrationcontrollers.migration.openshift.io
            version: v1alpha1
          - description: A migration hook
            displayName: MigHook
            kind: MigHook
            name: mighooks.migration.openshift.io
            version: v1alpha1
          - description: A migration storage location
            displayName: MigStorage
            kind: MigStorage
            name: migstorages.migration.openshift.io
            version: v1alpha1
        description: |
          The Migration Toolkit for Containers Operator enables installation of the application migration tool components.

          After you have installed the Operator, you can install components by creating a MigrationController CR.

          By default, the Operator installs the following components on an OpenShift Container Platform 4 target cluster:

          * velero and restic, to back up data on the source cluster and restore it on the target cluster
          * mig-controller, to coordinate the backup and restore processes
          * mig-ui, the web console for managing migrations

          If you experience any issues or have feature requests, please file an [issue](https://github.com/konveyor/mig-operator/issues)

          For more information, see the [OpenShift Container Platform Migration Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.4/html-single/migration/index).
        displayName: Migration Toolkit for Containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        links:
        - name: Migrations
          url: https://github.com/konveyor/mig-controller
        - name: Documentation
          url: https://github.com/konveyor/mig-operator
        - name: Migration Toolkit for Containers Operator
          url: https://github.com/konveyor/mig-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-mtc-rhel8@sha256:93aeafa4df87367cc6326048489a0d7642b9ba13091c6ae4a3d04d45a7e6871c
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:da5bea3530580d60fe593f03927ce2c561155fa914961aa4152fac8fde3b40a7
        - registry.redhat.io/rhmtc/openshift-migration-hook-runner-rhel8@sha256:dff69cdcc2e20a608562e6ab14700e00125473adbd0486c1af456a9839f8b58a
        - registry.redhat.io/rhmtc/openshift-migration-registry-rhel8@sha256:bd436fd06b62f3434a7aa3e38f92f20def19e5a816eb81010f83049efab6beff
        - registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:9b7b4fbde975ee49c20442b7b410b900f60aa2856856f89ba20d4700716bf49d
        - registry.redhat.io/rhmtc/openshift-migration-openvpn-rhel8@sha256:ab050267fa89bdc400ea9ba8434acd11a0cced415e5d52512adc2db713bcdd2c
        - registry.redhat.io/rhmtc/openshift-migration-controller-rhel8@sha256:84492722125eab381eeed49aaed92b44c763b8f06cb2e2859031f486df4437de
        - registry.redhat.io/rhmtc/openshift-migration-log-reader-rhel8@sha256:6d8c28c61ae5cfd2b870226f150248efa1f7ea4c538c5740587cf3f046ebd5d0
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:886c3a3f417f48a1ac20d901f4eedca7271548e3d03c72f54fd172e8c025d45c
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:977e9f27271b53d72c53e38f44d01cb1fb7e8ce57ec715b8e7efa3ed66d91118
        - registry.redhat.io/rhmtc/openshift-migration-ui-rhel8@sha256:55c9af6872d429051c9467678387d4a23095e95bd254c9ea0f0d0580c132a13c
        version: 1.8.11
      entries:
      - name: mtc-operator.v1.8.11
        version: 1.8.11
      - name: mtc-operator.v1.8.10
        version: 1.8.10
      - name: mtc-operator.v1.8.9
        version: 1.8.9
      - name: mtc-operator.v1.8.6
        version: 1.8.6
      - name: mtc-operator.v1.8.5
        version: 1.8.5
      - name: mtc-operator.v1.8.4
        version: 1.8.4
      - name: mtc-operator.v1.8.3
        version: 1.8.3
      - name: mtc-operator.v1.8.0
        version: 1.8.0
      name: release-v1.8
    defaultChannel: release-v1.8
    packageName: mtc-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: cluster-kube-descheduler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clusterkubedescheduleroperator.4.13.0-202309181427
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "KubeDescheduler",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-kube-descheduler-operator"
                },
                "spec": {
                  "deschedulingIntervalSeconds": 3600,
                  "managementState": "Managed",
                  "mode": "Predictive",
                  "profiles": ["AffinityAndTaints"]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-cluster-kube-descheduler-operator@sha256:ba0b71ff2a30a069b4a8a8f3c1e0898aaadc6db112e4cc12aff7c77ced7a0405
          createdAt: 2021/10/13
          description: An operator to run descheduler in Openshift cluster.
          olm.skipRange: '>=4.10.0 <4.13.0-202309181427'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/cluster-kube-descheduler-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubeDescheduler is the Schema for the deschedulers API
            displayName: Kube Descheduler
            kind: KubeDescheduler
            name: kubedeschedulers.operator.openshift.io
            version: v1
        description: |
          The Kube Descheduler Operator provides the ability to evict a running pod so that the pod can be rescheduled onto a more suitable node.

          There are several situations where descheduling can benefit your cluster:

          * Nodes are underutilized or overutilized.
          * Pod and node affinity requirements, such as taints or labels, have changed and the original scheduling decisions are no longer appropriate for certain nodes.
          * Node failure requires pods to be moved.
          * New nodes are added to clusters.

          ## Descheduler Profiles

          Once the operator is installed, you can configure one or more profiles to identify pods to evict. The scheduler will schedule the replacement of the evicted pods.

          The following profiles are available:

          * AffinityAndTaints
          * TopologyAndDuplicates
          * SoftTopologyAndDuplicates
          * LifecycleAndUtilization
          * EvictPodsWithPVC
          * EvictPodsWithLocalStorage

          These profiles are documented in detail in the [descheduler operator README](https://github.com/openshift/cluster-kube-descheduler-operator#profiles).

          ## Additional Parameters

          In addition to the profiles, the following parameters can be configured:

          * `deschedulingIntervalSeconds` - Set the number of seconds between descheduler runs. A value of `0` in this field runs the descheduler once and exits.
          * `profileCustomizations` - Allows certain profile parameters to be tweaked, such as `podLifetime` (see [README](https://github.com/openshift/cluster-kube-descheduler-operator#profile-customizations) for more info).
        displayName: Kube Descheduler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - scheduling
        - descheduler
        - workload
        links:
        - name: Source Code
          url: https://github.com/openshift/cluster-kube-descheduler-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-cluster-kube-descheduler-operator-bundle@sha256:b473fba287414d3ccb09aaabc64f463af2c912c322ca2c41723020b216d98d14
        - registry.redhat.io/openshift4/ose-cluster-kube-descheduler-operator@sha256:ba0b71ff2a30a069b4a8a8f3c1e0898aaadc6db112e4cc12aff7c77ced7a0405
        - registry.redhat.io/openshift4/ose-descheduler@sha256:45dc69ad93ab50bdf9ce1bb79f6d98f849e320db68af30475b10b7f5497a1b13
        version: 4.13.0-202309181427
      entries:
      - name: clusterkubedescheduleroperator.4.13.0-202309181427
        version: 4.13.0-202309181427
      name: "4.13"
    - currentCSV: clusterkubedescheduleroperator.v5.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "KubeDescheduler",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-kube-descheduler-operator"
                },
                "spec": {
                  "deschedulingIntervalSeconds": 3600,
                  "managementState": "Managed",
                  "mode": "Predictive",
                  "profiles": ["AffinityAndTaints"]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/kube-descheduler-operator/kube-descheduler-rhel9-operator@sha256:a4280076232eb36193781d6b25561fba909061efd03a02c114512506f6c3c775
          createdAt: 2025/12/04
          description: An operator to run descheduler in Openshift cluster.
          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: "true"
          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.skipRange: '>=5.2.0 <5.3.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-kube-descheduler-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/cluster-kube-descheduler-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubeDescheduler is the Schema for the deschedulers API
            displayName: Kube Descheduler
            kind: KubeDescheduler
            name: kubedeschedulers.operator.openshift.io
            version: v1
        description: |
          The Kube Descheduler Operator provides the ability to evict a running pod so that the pod can be rescheduled onto a more suitable node.

          There are several situations where descheduling can benefit your cluster:

          * Nodes are underutilized or overutilized.
          * Pod and node affinity requirements, such as taints or labels, have changed and the original scheduling decisions are no longer appropriate for certain nodes.
          * Node failure requires pods to be moved.
          * New nodes are added to clusters.

          ## Descheduler Profiles

          Once the operator is installed, you can configure one or more profiles to identify pods to evict. The scheduler will schedule the replacement of the evicted pods.

          The following profiles are available:

          * AffinityAndTaints
          * TopologyAndDuplicates
          * SoftTopologyAndDuplicates
          * LifecycleAndUtilization
          * LongLifecycle
          * CompactAndScale
          * EvictPodsWithPVC
          * EvictPodsWithLocalStorage

          These profiles are documented in detail in the [descheduler operator README](https://github.com/openshift/cluster-kube-descheduler-operator#profiles).

          ## Additional Parameters

          In addition to the profiles, the following parameters can be configured:

          * `deschedulingIntervalSeconds` - Set the number of seconds between descheduler runs. A value of `0` in this field runs the descheduler once and exits.
          * `mode` - Configures the descheduler to either evict pods or to simulate the eviction.
          * `profileCustomizations` - Allows certain profile parameters to be tweaked, such as `podLifetime` (see [README](https://github.com/openshift/cluster-kube-descheduler-operator#profile-customizations) for more info).
          * `evictionLimits` - Restricts the number of evictions during each descheduling run.
        displayName: Kube Descheduler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - scheduling
        - descheduler
        - workload
        links:
        - name: Source Code
          url: https://github.com/openshift/cluster-kube-descheduler-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.33.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/kube-descheduler-operator/descheduler-rhel9@sha256:e9019ca15608d3d48a68b97283ca07db1260bb92bd81a500f7d987a485cd7a1e
        - registry.redhat.io/kube-descheduler-operator/kube-descheduler-rhel9-operator@sha256:a4280076232eb36193781d6b25561fba909061efd03a02c114512506f6c3c775
        - registry.redhat.io/kube-descheduler-operator/kube-descheduler-operator-bundle@sha256:c0ebb8c7fbaa325fef3d530da8bee7ea8773aa082c9b16f174c41ca4465ced24
        version: 5.3.1
      entries:
      - name: clusterkubedescheduleroperator.v5.3.1
        version: 5.3.1
      - name: clusterkubedescheduleroperator.v5.3.0
        version: 5.3.0
      - name: clusterkubedescheduleroperator.v5.2.1
        version: 5.2.1
      - name: clusterkubedescheduleroperator.v5.2.0
        version: 5.2.0
      - name: clusterkubedescheduleroperator.v5.1.4
        version: 5.1.4
      - name: clusterkubedescheduleroperator.v5.1.3
        version: 5.1.3
      - name: clusterkubedescheduleroperator.v5.1.2
        version: 5.1.2
      - name: clusterkubedescheduleroperator.v5.1.1
        version: 5.1.1
      - name: clusterkubedescheduleroperator.v5.1.0
        version: 5.1.0
      - name: clusterkubedescheduleroperator.v5.0.1
        version: 5.0.1
      - name: clusterkubedescheduleroperator.4.14.0-202311021650
        version: 4.14.0-202311021650
      - name: clusterkubedescheduleroperator.4.14.0-202310201027
        version: 4.14.0-202310201027
      name: stable
    defaultChannel: stable
    packageName: cluster-kube-descheduler-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-zookeeper-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: zookeeper-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/zookeeper-operator@sha256:8186ceb867021df47c8affafa4648fa52a55e2ba10c15be14561520aabddd94c
          description: Stackable Operator for Apache ZooKeeper
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/zookeeper-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for ZookeeperClusterSpec via
              `CustomResource`
            displayName: zookeeperclusters.zookeeper.stackable.tech
            kind: ZookeeperCluster
            name: zookeeperclusters.zookeeper.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for ZookeeperZnodeSpec via `CustomResource`
            displayName: zookeeperznodes.zookeeper.stackable.tech
            kind: ZookeeperZnode
            name: zookeeperznodes.zookeeper.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache ZooKeeper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - zookeeper
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/zookeeper-operator@sha256:8186ceb867021df47c8affafa4648fa52a55e2ba10c15be14561520aabddd94c
        - registry.connect.redhat.com/stackable/stackable-apache-zookeeper-operator@sha256:a2d289bf7c2c8efec5ce5afc79a0a2971fe9a525e0b0b68c2cd2b44e7852d8db
        version: 25.11.0
      entries:
      - name: zookeeper-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-zookeeper-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app: kube-green
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: kube-green Community
      provider-url: https://kube-green.dev
    name: kube-green
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kube-green.v0.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kube-green.com/v1alpha1",
                "kind": "SleepInfo",
                "metadata": {
                  "labels": {
                    "app": "kube-green"
                  },
                  "name": "sleepinfo-sample"
                },
                "spec": {
                  "excludeRef": [
                    {
                      "apiVersion": "apps/v1",
                      "kind": "Deployment",
                      "name": "api-gateway"
                    }
                  ],
                  "sleepAt": "20:00",
                  "suspendCronJobs": true,
                  "timeZone": "Europe/Rome",
                  "wakeUpAt": "08:00",
                  "weekdays": "1-5"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          containerImage: docker.io/kubegreen/kube-green:0.5.2
          createdAt: "2023-10-07T15:15:08Z"
          description: Suspend your pods when no-one's using them to save energy and
            restore when necessary
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kube-green/kube-green
          support: kube-green Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SleepInfo is the Schema for the sleepinfos API
            displayName: SleepInfo
            kind: SleepInfo
            name: sleepinfos.kube-green.com
            version: v1alpha1
        description: |
          ## About this Operator

          [kube-green](https://kube-green.dev) shuts down (some of) your resources when you don't need them, reducing the consumption of resources of the cluster.

          Install this operator and apply the SleepInfo CRD to stop your dev namespaces from running during weekends, nights or when it is not necessary.
          See the [docs](https://kube-green.dev/docs/getting-started/) for more information.
          This operator is responsible to suspend and restart pods at specific times, defined by the SleepInfo CRD.

          An example of SleepInfo:

          ```yaml
          apiVersion: kube-green.com/v1alpha1
          kind: SleepInfo
          metadata:
            name: working-hours
          spec:
            weekdays: "1-5"
            sleepAt: "20:00"
            wakeUpAt: "08:00"
            timeZone: "Europe/Rome"
          ```

          This configuration stop pods everyday from monday to friday at 20:00 and restore them at 8:00.
          In this way, your cluster nodes could downscale, producing less CO2 and saving money.
        displayName: kube-green
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - green
        - green software
        - resources
        - downscale
        - autoscale
        - climate change
        links:
        - name: Homepage
          url: https://kube-green.dev
        - name: Source Code
          url: https://github.com/kube-green/kube-green
        maintainers:
        - email: bianchidavide12+kubegreen@gmail.com
          name: Davide
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: kube-green Community
          url: https://kube-green.dev
        relatedImages:
        - docker.io/kubegreen/kube-green:0.5.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.14.1
        - quay.io/openshift-community-operators/kube-green@sha256:e0c9f5ecdef1f7172af098f20cce17afebbedf02c0e0bd516d4d6aae736d1b27
        version: 0.5.2
      entries:
      - name: kube-green.v0.5.2
        version: 0.5.2
      - name: kube-green.v0.5.1
        version: 0.5.1
      - name: kube-green.v0.5.0
        version: 0.5.0
      - name: kube-green.v0.4.1
        version: 0.4.1
      - name: kube-green.v0.4.0
        version: 0.4.0
      - name: kube-green.v0.3.1
        version: 0.3.1
      - name: kube-green.v0.3.0
        version: 0.3.0
      name: alpha
    defaultChannel: alpha
    packageName: kube-green
    provider:
      name: kube-green Community
      url: https://kube-green.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhods-prometheus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhods-prometheus-operator.4.10.0
      currentCSVDesc:
        annotations:
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:370f2fa849f8045964e30c3a4d34be022f419d243b0cf37c2c81ea19faaab4a8
          createdAt: 21-04-15T23:43:00Z
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          repository: https://github.com/prometheus-operator/prometheus-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:370f2fa849f8045964e30c3a4d34be022f419d243b0cf37c2c81ea19faaab4a8
        - registry.redhat.io/rhods/odh-prometheus-bundle-rhel8@sha256:d3767059a2f45ca57f31df1dccb2849e19ca2d3ec697ae5de84dbc6d8eae497c
        version: 4.10.0
      entries:
      - name: rhods-prometheus-operator.4.10.0
        version: 4.10.0
      name: beta
    defaultChannel: beta
    packageName: rhods-prometheus-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: www.redhat.com
    name: compliance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: compliance-operator.v0.1.32
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan"
                },
                "spec": {
                  "content": "ssg-rhcos4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan"
                },
                "spec": {
                  "content": "ssg-ocp4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate",
                  "scanType": "Platform"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceSuite",
                "metadata": {
                  "name": "example-compliancesuite"
                },
                "spec": {
                  "autoApplyRemediations": false,
                  "scans": [
                    {
                      "content": "ssg-rhcos4-ds.xml",
                      "contentImage": "registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c",
                      "name": "workers-scan",
                      "nodeSelector": {
                        "node-role.kubernetes.io/worker": ""
                      },
                      "profile": "xccdf_org.ssgproject.content_profile_moderate"
                    },
                    {
                      "content": "ssg-ocp4-ds.xml",
                      "contentImage": "registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c",
                      "name": "platform-scan",
                      "profile": "xccdf_org.ssgproject.content_profile_moderate",
                      "scanType": "Platform"
                    }
                  ],
                  "schedule": "0 1 * * *"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ProfileBundle",
                "metadata": {
                  "name": "ocp4"
                },
                "spec": {
                  "contentFile": "ssg-ocp4-ds.xml",
                  "contentImage": "registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "autoApplyRemediations": false,
                "debug": true,
                "kind": "ScanSetting",
                "metadata": {
                  "name": "my-companys-constraints"
                },
                "rawResultStorage": {
                  "rotation": 10,
                  "size": "2Gi"
                },
                "roles": [
                  "worker",
                  "master"
                ],
                "schedule": "0 1 * * *"
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ScanSettingBinding",
                "metadata": {
                  "name": "nist-moderate"
                },
                "profiles": [
                  {
                    "apiGroup": "compliance.openshift.io/v1alpha1",
                    "kind": "Profile",
                    "name": "rhcos4-moderate"
                  }
                ],
                "settingsRef": {
                  "apiGroup": "compliance.openshift.io/v1alpha1",
                  "kind": "ScanSetting",
                  "name": "default"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "TailoredProfile",
                "metadata": {
                  "name": "example-tailoredprofile"
                },
                "spec": {
                  "disableRules": [
                    {
                      "name": "ocp4-file-permissions-node-config",
                      "rationale": "This breaks X application."
                    },
                    {
                      "name": "ocp4-account-disable-post-pw-expiration",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-accounts-no-uid-except-zero",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chown",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmodat",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchown",
                      "rationale": "testing this"
                    }
                  ],
                  "extends": "ocp4-moderate",
                  "setValues": [
                    {
                      "name": "ocp4-var-selinux-state",
                      "rationale": "trolling dwalsh",
                      "value": "permissive"
                    }
                  ],
                  "title": "My little profile"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.17 <0.1.32'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-compliance
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          repository: https://github.com/openshift/compliance-operator
          support: Red Hat Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ComplianceCheckResult represent a result of a single compliance
              "test"
            kind: ComplianceCheckResult
            name: compliancecheckresults.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceRemediation represents a remediation that can be
              applied to the cluster to fix the found issues.
            kind: ComplianceRemediation
            name: complianceremediations.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceScan represents a scan with a certain configuration
              that will be applied to objects of a certain entity in the host. These
              could be nodes that apply to a certain nodeSelector, or the cluster
              itself.
            kind: ComplianceScan
            name: compliancescans.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceSuite represents a set of scans that will be applied
              to the cluster. These should help deployers achieve a certain compliance
              target.
            kind: ComplianceSuite
            name: compliancesuites.compliance.openshift.io
            version: v1alpha1
          - description: ProfileBundle is the Schema for the profilebundles API
            kind: ProfileBundle
            name: profilebundles.compliance.openshift.io
            version: v1alpha1
          - description: Profile is the Schema for the profiles API
            kind: Profile
            name: profiles.compliance.openshift.io
            version: v1alpha1
          - description: Rule is the Schema for the rules API
            kind: Rule
            name: rules.compliance.openshift.io
            version: v1alpha1
          - description: ScanSettingBinding is the Schema for the scansettingbindings
              API
            kind: ScanSettingBinding
            name: scansettingbindings.compliance.openshift.io
            version: v1alpha1
          - description: ScanSetting is the Schema for the scansettings API
            kind: ScanSetting
            name: scansettings.compliance.openshift.io
            version: v1alpha1
          - description: TailoredProfile is the Schema for the tailoredprofiles API
            kind: TailoredProfile
            name: tailoredprofiles.compliance.openshift.io
            version: v1alpha1
          - description: Variable describes a tunable in the XCCDF profile
            kind: Variable
            name: variables.compliance.openshift.io
            version: v1alpha1
        description: An operator which runs OpenSCAP and allows you to keep your cluster
          compliant with the security benchmark you need.
        displayName: Compliance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - security
        - compliance
        - openscap
        - audit
        links:
        - name: Compliance Operator upstream repo
          url: https://github.com/openshift/compliance-operator
        - name: Compliance Operator documentation
          url: https://docs.openshift.com/container-platform/4.7/security/compliance_operator/compliance-operator-understanding.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/compliance-rhel8-operator-metadata@sha256:1c06868bce1f5d7145ef658bfcc284c44011aa24a17166aa124547b38f2259e4
        - registry.redhat.io/openshift4/compliance-rhel8-operator@sha256:ed68a0574ddeaf7d676403cd843f28cb586894f35dbb3ca5e06a5264bd42f030
        - registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c
        - registry.redhat.io/openshift4/compliance-openscap-rhel8@sha256:867c6d4205653d8a954d234cbaf470313009eb983d4f455fb45f49c4a7764422
        version: 0.1.32
      entries:
      - name: compliance-operator.v0.1.32
        version: 0.1.32
      name: "4.7"
    - currentCSV: compliance-operator.v0.1.61
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-node"
                },
                "spec": {
                  "content": "ssg-rhcos4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-platform"
                },
                "spec": {
                  "content": "ssg-ocp4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate",
                  "scanType": "Platform"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceSuite",
                "metadata": {
                  "name": "example-compliancesuite"
                },
                "spec": {
                  "autoApplyRemediations": false,
                  "scans": [
                    {
                      "content": "ssg-rhcos4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b",
                      "name": "workers-scan",
                      "nodeSelector": {
                        "node-role.kubernetes.io/worker": ""
                      },
                      "profile": "xccdf_org.ssgproject.content_profile_moderate"
                    },
                    {
                      "content": "ssg-ocp4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b",
                      "name": "platform-scan",
                      "profile": "xccdf_org.ssgproject.content_profile_moderate",
                      "scanType": "Platform"
                    }
                  ],
                  "schedule": "0 1 * * *"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ProfileBundle",
                "metadata": {
                  "name": "ocp4"
                },
                "spec": {
                  "contentFile": "ssg-ocp4-ds.xml",
                  "contentImage": "registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "autoApplyRemediations": false,
                "debug": true,
                "kind": "ScanSetting",
                "metadata": {
                  "name": "my-companys-constraints"
                },
                "rawResultStorage": {
                  "rotation": 10,
                  "size": "2Gi"
                },
                "roles": [
                  "worker",
                  "master"
                ],
                "schedule": "0 1 * * *"
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ScanSettingBinding",
                "metadata": {
                  "name": "nist-moderate"
                },
                "profiles": [
                  {
                    "apiGroup": "compliance.openshift.io/v1alpha1",
                    "kind": "Profile",
                    "name": "rhcos4-moderate"
                  }
                ],
                "settingsRef": {
                  "apiGroup": "compliance.openshift.io/v1alpha1",
                  "kind": "ScanSetting",
                  "name": "default"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "TailoredProfile",
                "metadata": {
                  "name": "example-tailoredprofile"
                },
                "spec": {
                  "description": "Example of a tailoredProfile that extends OCP4 FedRAMP Moderate",
                  "disableRules": [
                    {
                      "name": "ocp4-file-permissions-node-config",
                      "rationale": "This breaks X application."
                    },
                    {
                      "name": "ocp4-account-disable-post-pw-expiration",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-accounts-no-uid-except-zero",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chown",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmodat",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchown",
                      "rationale": "testing this"
                    }
                  ],
                  "extends": "ocp4-moderate",
                  "setValues": [
                    {
                      "name": "ocp4-var-selinux-state",
                      "rationale": "trolling dwalsh",
                      "value": "permissive"
                    }
                  ],
                  "title": "My little profile"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.17 <0.1.61'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-compliance
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/compliance-operator
          support: Red Hat Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ComplianceCheckResult represent a result of a single compliance
              "test"
            kind: ComplianceCheckResult
            name: compliancecheckresults.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceRemediation represents a remediation that can be
              applied to the cluster to fix the found issues.
            displayName: Compliance Remediation
            kind: ComplianceRemediation
            name: complianceremediations.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceScan represents a scan with a certain configuration
              that will be applied to objects of a certain entity in the host. These
              could be nodes that apply to a certain nodeSelector, or the cluster
              itself.
            displayName: Compliance Scan
            kind: ComplianceScan
            name: compliancescans.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceSuite represents a set of scans that will be applied
              to the cluster. These should help deployers achieve a certain compliance
              target.
            displayName: Compliance Suite
            kind: ComplianceSuite
            name: compliancesuites.compliance.openshift.io
            version: v1alpha1
          - description: ProfileBundle is the Schema for the profilebundles API
            displayName: Profile Bundle
            kind: ProfileBundle
            name: profilebundles.compliance.openshift.io
            version: v1alpha1
          - description: Profile is the Schema for the profiles API
            kind: Profile
            name: profiles.compliance.openshift.io
            version: v1alpha1
          - description: Rule is the Schema for the rules API
            kind: Rule
            name: rules.compliance.openshift.io
            version: v1alpha1
          - description: ScanSettingBinding is the Schema for the scansettingbindings
              API
            displayName: Scan Setting Binding
            kind: ScanSettingBinding
            name: scansettingbindings.compliance.openshift.io
            version: v1alpha1
          - description: ScanSetting is the Schema for the scansettings API
            kind: ScanSetting
            name: scansettings.compliance.openshift.io
            version: v1alpha1
          - description: TailoredProfile is the Schema for the tailoredprofiles API
            displayName: Tailored Profile
            kind: TailoredProfile
            name: tailoredprofiles.compliance.openshift.io
            version: v1alpha1
          - description: Variable describes a tunable in the XCCDF profile
            kind: Variable
            name: variables.compliance.openshift.io
            version: v1alpha1
        description: An operator which runs OpenSCAP and allows you to keep your cluster
          compliant with the security benchmark you need.
        displayName: Compliance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - compliance
        - openscap
        - audit
        links:
        - name: Compliance Operator upstream repo
          url: https://github.com/openshift/compliance-operator
        - name: Compliance Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/compliance_operator/compliance-operator-understanding.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b
        - registry.redhat.io/compliance/openshift-compliance-openscap-rhel8@sha256:83ad3113964ec48c5cf28315d923adb6edb95e45960e2756665d617dcd9b2e47
        - registry.redhat.io/compliance/openshift-compliance-operator-bundle@sha256:8a2194d8d26dff03ec53ac0ab93c62c268e48675079a88db18bb14a977a391be
        - registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:5578e2225365ac1c15e4c189c5c7a8d14fd3fd26189414b36028f7f0879bb1dc
        version: 0.1.61
      entries:
      - name: compliance-operator.v0.1.61
        version: 0.1.61
      name: release-0.1
    - currentCSV: compliance-operator.v1.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-node"
                },
                "spec": {
                  "content": "ssg-rhcos4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-platform"
                },
                "spec": {
                  "content": "ssg-ocp4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate",
                  "scanType": "Platform"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceSuite",
                "metadata": {
                  "name": "example-compliancesuite"
                },
                "spec": {
                  "autoApplyRemediations": false,
                  "scans": [
                    {
                      "content": "ssg-rhcos4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77",
                      "name": "workers-scan",
                      "nodeSelector": {
                        "node-role.kubernetes.io/worker": ""
                      },
                      "profile": "xccdf_org.ssgproject.content_profile_moderate"
                    },
                    {
                      "content": "ssg-ocp4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77",
                      "name": "platform-scan",
                      "profile": "xccdf_org.ssgproject.content_profile_moderate",
                      "scanType": "Platform"
                    }
                  ],
                  "schedule": "0 1 * * *"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ProfileBundle",
                "metadata": {
                  "name": "ocp4"
                },
                "spec": {
                  "contentFile": "ssg-ocp4-ds.xml",
                  "contentImage": "registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "autoApplyRemediations": false,
                "debug": true,
                "kind": "ScanSetting",
                "metadata": {
                  "name": "my-companys-constraints"
                },
                "rawResultStorage": {
                  "rotation": 10,
                  "size": "2Gi"
                },
                "roles": [
                  "worker",
                  "master"
                ],
                "schedule": "0 1 * * *"
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ScanSettingBinding",
                "metadata": {
                  "name": "nist-moderate"
                },
                "profiles": [
                  {
                    "apiGroup": "compliance.openshift.io/v1alpha1",
                    "kind": "Profile",
                    "name": "rhcos4-moderate"
                  }
                ],
                "settingsRef": {
                  "apiGroup": "compliance.openshift.io/v1alpha1",
                  "kind": "ScanSetting",
                  "name": "default"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "TailoredProfile",
                "metadata": {
                  "name": "example-tailoredprofile"
                },
                "spec": {
                  "description": "Example of a tailoredProfile that extends OCP4 FedRAMP Moderate",
                  "disableRules": [
                    {
                      "name": "ocp4-file-permissions-node-config",
                      "rationale": "This breaks X application."
                    },
                    {
                      "name": "ocp4-account-disable-post-pw-expiration",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-accounts-no-uid-except-zero",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chown",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmodat",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchown",
                      "rationale": "testing this"
                    }
                  ],
                  "extends": "ocp4-moderate",
                  "setValues": [
                    {
                      "name": "ocp4-var-selinux-state",
                      "rationale": "trolling dwalsh",
                      "value": "permissive"
                    }
                  ],
                  "title": "My little profile"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          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: "true"
          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"
          must-gather-image: registry.redhat.io/compliance/openshift-compliance-must-gather-rhel8@sha256:83ea492a55fb2f2bc423ce7d1ccd31644de8ce492e9d273da47a93413fc9282a
          olm.skipRange: '>=0.1.17 <1.8.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-compliance
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ComplianceAsCode/compliance-operator
          support: Red Hat Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ComplianceCheckResult represent a result of a single compliance
              "test"
            kind: ComplianceCheckResult
            name: compliancecheckresults.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceRemediation represents a remediation that can be
              applied to the cluster to fix the found issues.
            displayName: Compliance Remediation
            kind: ComplianceRemediation
            name: complianceremediations.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceScan represents a scan with a certain configuration
              that will be applied to objects of a certain entity in the host. These
              could be nodes that apply to a certain nodeSelector, or the cluster
              itself.
            displayName: Compliance Scan
            kind: ComplianceScan
            name: compliancescans.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceSuite represents a set of scans that will be applied
              to the cluster. These should help deployers achieve a certain compliance
              target.
            displayName: Compliance Suite
            kind: ComplianceSuite
            name: compliancesuites.compliance.openshift.io
            version: v1alpha1
          - description: CustomRule represents a rule that can be used with TailoredProfiles
              to execute arbitrary checks against the cluster.
            displayName: Custom Rule
            kind: CustomRule
            name: customrules.compliance.openshift.io
            version: v1alpha1
          - description: ProfileBundle is the Schema for the profilebundles API
            displayName: Profile Bundle
            kind: ProfileBundle
            name: profilebundles.compliance.openshift.io
            version: v1alpha1
          - description: Profile is the Schema for the profiles API
            kind: Profile
            name: profiles.compliance.openshift.io
            version: v1alpha1
          - description: Rule is the Schema for the rules API
            kind: Rule
            name: rules.compliance.openshift.io
            version: v1alpha1
          - description: ScanSettingBinding is the Schema for the scansettingbindings
              API
            displayName: Scan Setting Binding
            kind: ScanSettingBinding
            name: scansettingbindings.compliance.openshift.io
            version: v1alpha1
          - description: ScanSetting is the Schema for the scansettings API
            kind: ScanSetting
            name: scansettings.compliance.openshift.io
            version: v1alpha1
          - description: TailoredProfile is the Schema for the tailoredprofiles API
            displayName: Tailored Profile
            kind: TailoredProfile
            name: tailoredprofiles.compliance.openshift.io
            version: v1alpha1
          - description: Variable describes a tunable in the XCCDF profile
            kind: Variable
            name: variables.compliance.openshift.io
            version: v1alpha1
        description: An operator which runs OpenSCAP and allows you to keep your cluster
          compliant with the security benchmark you need.
        displayName: Compliance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - compliance
        - openscap
        - audit
        links:
        - name: Compliance Operator upstream repository
          url: https://github.com/ComplianceAsCode/compliance-operator
        - name: Compliance Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/compliance_operator/co-overview.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/compliance/openshift-compliance-operator-bundle@sha256:0bc0b7a20ce3c6303a45a699f44d2b90597b6a62846e89a5bca285b3228a9a52
        - registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:7b84f08a7f0a808bd92c9540dd5b976b8aa20ed426ce2d646131123e13df60c2
        - registry.redhat.io/compliance/openshift-compliance-must-gather-rhel8@sha256:83ea492a55fb2f2bc423ce7d1ccd31644de8ce492e9d273da47a93413fc9282a
        - registry.redhat.io/compliance/openshift-compliance-openscap-rhel8@sha256:26cbd3cedf1b49bf26d638014ca2fb2196e5a2ed915234721b4ac8679e399011
        - registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77
        version: 1.8.0
      entries:
      - name: compliance-operator.v1.8.0
        version: 1.8.0
      - name: compliance-operator.v1.7.1
        version: 1.7.1
      - name: compliance-operator.v1.7.0
        version: 1.7.0
      - name: compliance-operator.v1.6.2
        version: 1.6.2
      - name: compliance-operator.v1.6.1
        version: 1.6.1
      - name: compliance-operator.v1.6.0
        version: 1.6.0
      - name: compliance-operator.v1.5.1
        version: 1.5.1
      - name: compliance-operator.v1.5.0
        version: 1.5.0
      - name: compliance-operator.v1.4.1
        version: 1.4.1
      - name: compliance-operator.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: compliance-operator
    provider:
      name: Red Hat Inc.
      url: www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-organizations-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-organizations-controller.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "organizations.services.k8s.aws/v1alpha1",
                "kind": "OrganizationalUnit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/organizations-controller:1.2.1
          createdAt: "2025-12-03T21:49:08Z"
          description: AWS Organizations controller is a service controller for managing
            Organizations resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Account represents the state of an AWS organizations Account
              resource.
            displayName: Account
            kind: Account
            name: accounts.organizations.services.k8s.aws
            version: v1alpha1
          - description: OrganizationalUnit represents the state of an AWS organizations
              OrganizationalUnit resource.
            displayName: OrganizationalUnit
            kind: OrganizationalUnit
            name: organizationalunits.organizations.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Organizations resources in AWS from within your Kubernetes cluster.

          **About Amazon Organizations**

          With AWS Organizations you can perform account management activities at scale by consolidating multiple AWS accounts into a single organization. Consolidating accounts simplifies how you use other AWS services. You can leverage the multi-account management services available in AWS Organizations with select AWS services to perform tasks on all accounts that are members of your organization.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Organizations
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - organizations
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Organizations Developer Resources
          url: https://aws.amazon.com/organizations/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: organizations maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-organizations-controller@sha256:e3df4e6f7406e6d94dff44f05b84a1423b446f865b1ef7e5311516b58646291e
        - public.ecr.aws/aws-controllers-k8s/organizations-controller:1.2.1
        version: 1.2.1
      entries:
      - name: ack-organizations-controller.v1.2.1
        version: 1.2.1
      - name: ack-organizations-controller.v1.2.0
        version: 1.2.0
      - name: ack-organizations-controller.v1.1.2
        version: 1.1.2
      - name: ack-organizations-controller.v1.1.1
        version: 1.1.1
      - name: ack-organizations-controller.v1.0.13
        version: 1.0.13
      - name: ack-organizations-controller.v1.0.11
        version: 1.0.11
      - name: ack-organizations-controller.v1.0.10
        version: 1.0.10
      - name: ack-organizations-controller.v1.0.9
        version: 1.0.9
      - name: ack-organizations-controller.v1.0.8
        version: 1.0.8
      - name: ack-organizations-controller.v1.0.7
        version: 1.0.7
      - name: ack-organizations-controller.v1.0.6
        version: 1.0.6
      - name: ack-organizations-controller.v1.0.5
        version: 1.0.5
      - name: ack-organizations-controller.v1.0.4
        version: 1.0.4
      - name: ack-organizations-controller.v1.0.1
        version: 1.0.1
      - name: ack-organizations-controller.v1.0.0
        version: 1.0.0
      - name: ack-organizations-controller.v0.0.10
        version: 0.0.10
      - name: ack-organizations-controller.v0.0.9
        version: 0.0.9
      - name: ack-organizations-controller.v0.0.8
        version: 0.0.8
      - name: ack-organizations-controller.v0.0.7
        version: 0.0.7
      - name: ack-organizations-controller.v0.0.6
        version: 0.0.6
      name: alpha
    defaultChannel: alpha
    packageName: ack-organizations-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Palo Alto Networks
      provider-url: ""
    name: pcc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pcc-operator.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pcc.paloaltonetworks.com/v1alpha1",
                "kind": "Console",
                "metadata": {
                  "name": "pcc-console",
                  "namespace": "twistlock"
                },
                "spec": {
                  "consoleConfig": {
                    "serviceType": "ClusterIP"
                  },
                  "namespace": "twistlock",
                  "version": "21_08_520"
                }
              },
              {
                "apiVersion": "pcc.paloaltonetworks.com/v1alpha1",
                "kind": "ConsoleDefender",
                "metadata": {
                  "name": "pcc-consoledefender",
                  "namespace": "twistlock"
                },
                "spec": {
                  "consoleConfig": {
                    "serviceType": "ClusterIP"
                  },
                  "defenderConfig": {
                    "docker": false
                  },
                  "namespace": "twistlock",
                  "version": "21_08_520"
                }
              },
              {
                "apiVersion": "pcc.paloaltonetworks.com/v1alpha1",
                "kind": "Defender",
                "metadata": {
                  "name": "pcc-defender",
                  "namespace": "twistlock"
                },
                "spec": {
                  "defenderConfig": {
                    "clusterAddress": "twistlock-console.example.com",
                    "consoleAddress": "https://twistlock-console.example.com:8083",
                    "docker": false
                  },
                  "namespace": "twistlock",
                  "version": "21_08_520"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: quay.io/prismacloud/pcc-operator@sha256:b8fcfbd6c51286c874e00db1bd35523386cec406fa4050ef44c0a887730cf9b8
          createdAt: "2021-11-15"
          description: Deploy Prisma Cloud Compute for cloud-native security in your
            clusters
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator
          support: pcc-integrations@paloaltonetworks.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Install the Prisma Cloud Compute Console and Defenders
            displayName: Console and Defenders
            kind: ConsoleDefender
            name: consoledefenders.pcc.paloaltonetworks.com
            version: v1alpha1
          - description: Install the Prisma Cloud Compute Console
            displayName: Console
            kind: Console
            name: consoles.pcc.paloaltonetworks.com
            version: v1alpha1
          - description: Install Prisma Cloud Compute Defenders
            displayName: Defenders
            kind: Defender
            name: defenders.pcc.paloaltonetworks.com
            version: v1alpha1
        description: |
          ## Features
          - Deploy Console
              - Create initial local administrator user
              - Add license
          - Deploy Defenders
          - Support for offline deployments
          - Upgrade Console
          - Upgrade Defenders

          ## Installation
          See the [Prisma Cloud Compute Operator documentation](https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator) for installation guides.

          ## Support
          This operator is available "as is," and should be seen as community-supported; however, Palo Alto Networks will continue contributing whenever possible.
          Palo Alto Networks does not provide technical support or help with using or troubleshooting the operator through normal support channels.
          We encourage you to open GitHub [issues](https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator/issues) and [pull requests](https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator/pulls) to track bugs and feature requests.

          ## Other links
          [Prisma Cloud Compute product documentation](https://docs.paloaltonetworks.com/prisma/prisma-cloud/prisma-cloud-admin-compute.html)

          [Prisma Cloud Compute API documentation](https://prisma.pan.dev/api/cloud/cwpp)
        displayName: Prisma Cloud Compute Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - palo
        - palo alto
        - palo alto networks
        - paloalto
        - twistlock
        - compute
        - prisma
        - prisma cloud
        - prisma cloud compute
        - security
        - image
        - images
        - container
        - containers
        - docker
        - podman
        - vulnerability
        - vulnerabilities
        - compliance
        - runtime
        - scan
        - scanning
        - monitor
        - monitoring
        - alert
        - alerting
        links:
        - name: Prisma Cloud
          url: https://www.paloaltonetworks.com/prisma/cloud
        maintainers:
        - email: pcc-integrations@paloaltonetworks.com
          name: Wyatt Gill
        maturity: alpha
        provider:
          name: Palo Alto Networks
        relatedImages:
        - quay.io/openshift-community-operators/pcc-operator@sha256:e99a466ddb52ad44c435ccf952754d685744fb5b7b7e4cf77dd542e530e4f968
        - quay.io/prismacloud/pcc-operator@sha256:b8fcfbd6c51286c874e00db1bd35523386cec406fa4050ef44c0a887730cf9b8
        version: 0.2.0
      entries:
      - name: pcc-operator.v0.2.0
        version: 0.2.0
      name: stable
    defaultChannel: stable
    packageName: pcc-operator
    provider:
      name: Palo Alto Networks
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: security-profiles-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: security-profiles-operator.v0.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "AppArmorProfile",
                "metadata": {
                  "annotations": {
                    "description": "Block writing to any files in the disk."
                  },
                  "name": "test-profile"
                },
                "spec": {
                  "abstract": {
                    "filesystem": {
                      "readOnlyPaths": [],
                      "readWritePaths": [],
                      "writeOnlyPaths": []
                    }
                  }
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "SecurityProfilesOperatorDaemon",
                "metadata": {
                  "name": "spod",
                  "namespace": "security-profiles-operator"
                },
                "spec": {
                  "enableAppArmor": false,
                  "enableLogEnricher": false,
                  "enableSelinux": false
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "ProfileRecording",
                "metadata": {
                  "name": "test-recording"
                },
                "spec": {
                  "kind": "SeccompProfile",
                  "podSelector": {
                    "matchLabels": {
                      "app": "alpine"
                    }
                  },
                  "recorder": "bpf"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "ProfileBinding",
                "metadata": {
                  "name": "profile-binding"
                },
                "spec": {
                  "image": "nginx:1.19.1",
                  "profileRef": {
                    "kind": "SeccompProfile",
                    "name": "profile-allow-unsafe"
                  }
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha2",
                "kind": "RawSelinuxProfile",
                "metadata": {
                  "name": "errorlogger"
                },
                "spec": {
                  "policy": "(blockinherit container)\n(allow process var_log_t ( dir ( open read getattr lock search ioctl add_name remove_name write ))) \n(allow process var_log_t ( file ( getattr read write append ioctl lock map open create  ))) \n(allow process var_log_t ( sock_file ( getattr read write append open  ))) \n"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "Blocks all syscalls."
                  },
                  "name": "profile-block-all"
                },
                "spec": {
                  "defaultAction": "SCMP_ACT_ERRNO"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "UNSAFE: Allows all syscalls whilst logging their use. Similar to running as unconfined in terms of enforcement."
                  },
                  "name": "profile-complain-unsafe"
                },
                "spec": {
                  "defaultAction": "SCMP_ACT_LOG"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "UNSAFE: Allows all syscalls. Similar to running as unconfined as it provides no enforcement."
                  },
                  "name": "profile-allow-unsafe"
                },
                "spec": {
                  "defaultAction": "SCMP_ACT_ALLOW"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "Enables complain mode whilst blocking high-risk syscalls. Some essential syscalls are allowed to decrease log noise."
                  },
                  "name": "profile-complain-block-high-risk"
                },
                "spec": {
                  "architectures": [
                    "SCMP_ARCH_X86_64",
                    "SCMP_ARCH_PPC64LE"
                  ],
                  "defaultAction": "SCMP_ACT_LOG",
                  "syscalls": [
                    {
                      "action": "SCMP_ACT_ALLOW",
                      "names": [
                        "exit",
                        "exit_group",
                        "futex",
                        "nanosleep"
                      ]
                    },
                    {
                      "action": "SCMP_ACT_ERRNO",
                      "names": [
                        "acct",
                        "add_key",
                        "bpf",
                        "clock_adjtime",
                        "clock_settime",
                        "create_module",
                        "delete_module",
                        "finit_module",
                        "get_kernel_syms",
                        "get_mempolicy",
                        "init_module",
                        "ioperm",
                        "iopl",
                        "kcmp",
                        "kexec_file_load",
                        "kexec_load",
                        "keyctl",
                        "lookup_dcookie",
                        "mbind",
                        "mount",
                        "move_pages",
                        "name_to_handle_at",
                        "nfsservctl",
                        "open_by_handle_at",
                        "perf_event_open",
                        "personality",
                        "pivot_root",
                        "process_vm_readv",
                        "process_vm_writev",
                        "ptrace",
                        "query_module",
                        "quotactl",
                        "reboot",
                        "request_key",
                        "set_mempolicy",
                        "setns",
                        "settimeofday",
                        "stime",
                        "swapoff",
                        "swapon",
                        "_sysctl",
                        "sysfs",
                        "umount2",
                        "umount",
                        "unshare",
                        "uselib",
                        "userfaultfd",
                        "ustat",
                        "vm86old",
                        "vm86"
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha2",
                "kind": "SelinuxProfile",
                "metadata": {
                  "name": "errorlogger"
                },
                "spec": {
                  "allow": {
                    "var_log_t": {
                      "dir": [
                        "open",
                        "read",
                        "getattr",
                        "lock",
                        "search",
                        "ioctl",
                        "add_name",
                        "remove_name",
                        "write"
                      ],
                      "file": [
                        "getattr",
                        "read",
                        "write",
                        "append",
                        "ioctl",
                        "lock",
                        "map",
                        "open",
                        "create"
                      ],
                      "sock_file": [
                        "getattr",
                        "read",
                        "write",
                        "append",
                        "open"
                      ]
                    }
                  },
                  "inherit": [
                    {
                      "name": "container"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          createdAt: "2025-02-25T13:34:54Z"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.4.1 <0.9.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-security-profiles
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ProfileBinding is the Schema for the profilebindings API.
            displayName: Profile Binding
            kind: ProfileBinding
            name: profilebindings.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - description: ProfileRecording is the Schema for the profilerecordings
              API.
            displayName: Profile Recording
            kind: ProfileRecording
            name: profilerecordings.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - description: SeccompProfile is a cluster level specification for a seccomp
              profile. See https://github.com/opencontainers/runtime-spec/blob/master/config-linux.md#seccomp
            displayName: Seccomp Profile
            kind: SeccompProfile
            name: seccompprofiles.security-profiles-operator.x-k8s.io
            version: v1beta1
          - description: SecurityProfileNodeStatus is a per-node status of a security
              profile
            displayName: Security Profile Node Status
            kind: SecurityProfileNodeStatus
            name: securityprofilenodestatuses.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - description: SecurityProfilesOperatorDaemon is the Schema to configure
              the spod deployment.
            displayName: Security Profiles Operator Daemon
            kind: SecurityProfilesOperatorDaemon
            name: securityprofilesoperatordaemons.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - kind: RawSelinuxProfile
            name: rawselinuxprofiles.security-profiles-operator.x-k8s.io
            version: v1alpha2
          - description: SelinuxProfile is the Schema for the selinuxprofiles API.
            displayName: Selinux Profile
            kind: SelinuxProfile
            name: selinuxprofiles.security-profiles-operator.x-k8s.io
            version: v1alpha2
          - description: AppArmorProfile is a cluster level specification for an AppArmor
              profile.
            displayName: App Armor Profile
            kind: AppArmorProfile
            name: apparmorprofiles.security-profiles-operator.x-k8s.io
            version: v1alpha1
        description: SPO is an operator which aims to make it easier for users to
          use SELinux, seccomp and AppArmor in Kubernetes clusters
        displayName: Security Profiles Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - selinux
        - seccomp
        - apparmor
        - ebpf
        links:
        - name: Security Profiles Operator
          url: https://github.com/openshift/security-profiles-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat support
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/compliance/openshift-security-profiles-operator-bundle@sha256:bd5bdc7085f3e9ce8494488f29b4d83a29796c47d536106cd6e14a7b67ab07ee
        - registry.redhat.io/compliance/openshift-security-profiles-rhel8-operator@sha256:828274d71c65ef820e6a8b652e3f102624d09a0609fb00bae7b32dc62ff37fd1
        - registry.redhat.io/compliance/openshift-selinuxd-rhel8@sha256:81273ff149482109417064b40d333edb131481c05547e4ffa6485475460a48ba
        - registry.redhat.io/compliance/openshift-selinuxd-rhel9@sha256:3278d69814a8d0d1e31dcdef454c24828aadbb468a3d5d3e15910c76481765bd
        version: 0.9.0
      entries:
      - name: security-profiles-operator.v0.9.0
        version: 0.9.0
      - name: security-profiles-operator.v0.8.6
        version: 0.8.6
      - name: security-profiles-operator.v0.8.5
        version: 0.8.5
      - name: security-profiles-operator.v0.8.4
        version: 0.8.4
      - name: security-profiles-operator.v0.8.2
        version: 0.8.2
      name: release-alpha-rhel-8
    defaultChannel: release-alpha-rhel-8
    packageName: security-profiles-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: recipe
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: recipe.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "Recipe",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "recipe",
                    "app.kubernetes.io/instance": "recipe-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "recipe",
                    "app.kubernetes.io/part-of": "recipe"
                  },
                  "name": "recipe-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          createdAt: "2025-12-18T08:02:13Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Recipe is the Schema for the recipes API
            displayName: Recipe
            kind: Recipe
            name: recipes.ramendr.openshift.io
            version: v1alpha1
        description: |
          Recipe describes a workflow used for capturing or recovering Kubernetes resources. This can be referred to by a Ramen DRPlacementControl object when kubeObjectProtection is enabled.
        displayName: Recipe
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - recipe
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/recipe
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-recipe-operator-bundle@sha256:29523317a9edd364fdff7d028726cb77ff8bcb700be280b6fd8ae367697c8b97
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        version: 4.19.9-rhodf
      entries:
      - name: recipe.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: recipe.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: recipe.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: recipe.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: recipe.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: recipe.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: recipe.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: recipe.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: recipe.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: recipe.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: recipe.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "Recipe",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "recipe",
                    "app.kubernetes.io/instance": "recipe-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "recipe",
                    "app.kubernetes.io/part-of": "recipe"
                  },
                  "name": "recipe-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:51:27Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Recipe is the Schema for the recipes API
            displayName: Recipe
            kind: Recipe
            name: recipes.ramendr.openshift.io
            version: v1alpha1
        description: |
          Recipe describes a workflow used for capturing or recovering Kubernetes resources. This can be referred to by a Ramen DRPlacementControl object when kubeObjectProtection is enabled.
        displayName: Recipe
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - recipe
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/recipe
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-recipe-operator-bundle@sha256:45b85ff810e9c08233127aaa78e2f7ce77a01f6e4638bc65f88c87d4ffbb7cf9
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        version: 4.20.4-rhodf
      entries:
      - name: recipe.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: recipe.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: recipe.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: recipe.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: recipe.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: recipe
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hitachi
      provider-url: ""
    name: hnas-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hnas-csi-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.csi.hitachi.com/v1",
                "kind": "HNAS",
                "metadata": {
                  "name": "hnas",
                  "namespace": "kube-system"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Storage
          containerImage: registry.hitachivantara.com/fpgroup-docker-public/hnas-csi-operator@sha256:9d3f9f10fc7172ee9cebbd9ee318906756d7e96909f2e66e0534e98bb53e0a7b
          createdAt: "2025-07-30T15:12:23Z"
          description: An operator for managing Hitachi NAS CSI driver
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HNAS is the Schema for the hnas API
            displayName: HNAS
            kind: HNAS
            name: hnas.charts.csi.hitachi.com
            version: v1
        description: |-
          The Hitachi NAS CSI driver operator deploys the Hitachi NAS CSI driver on Kubernetes and OpenShift environments.  The driver can be used to create and manage persistent storage hosted on Hitachi NAS products, including those in the Hitachi VSP One File 3x range and the HNAS range of products.

          For the complete documentation, go to our [Product Documentation site](https://docs.hitachivantara.com/home) and refer to the Hitachi NAS CSI Driver User Guide - MK-92HNAS091.  The guide covers prerequisites for the NAS system and covers the driver functionality and all configuration options available for the driver.
        displayName: Hitachi NAS CSI Driver Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hitachi
        - Storage
        - Container Storage Interface
        - CSI
        - NAS
        links:
        - name: Product Documentation
          url: https://docs.hitachivantara.com/home
        maturity: stable
        minKubeVersion: 1.28.0
        provider:
          name: Hitachi
        relatedImages:
        - registry.connect.redhat.com/hitachi/hnas-csi-operator-bundle@sha256:79e6ba3db78aa55a9f3839a172843d284d91e9cdaae9cb2c8e7e705f3d03115d
        - registry.hitachivantara.com/fpgroup-docker-public/hnas-csi-driver@sha256:6b6f6816c9f4e608e93e7fbc0347255415426a0ff0c9a53b7750e5ba54d91262
        - registry.k8s.io/sig-storage/csi-resizer@sha256:ab774734705a906561e15b67f6a96538f3ad520335d636f793aaafe87a3b5200
        - registry.k8s.io/sig-storage/csi-attacher@sha256:a399393ff5bd156277c56bae0c08389b1a1b95b7fd6ea44a316ce55e0dd559d7
        - registry.hitachivantara.com/fpgroup-docker-public/hnas-csi-operator@sha256:9d3f9f10fc7172ee9cebbd9ee318906756d7e96909f2e66e0534e98bb53e0a7b
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:d7138bcc3aa5f267403d45ad4292c95397e421ea17a0035888850f424c7de25d
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d5e46da8aff7d73d6f00c761dae94472bcda6e78f4f17b3802dc89d44de0111b
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:dd788d79cf4c1b8edee6d9b80b8a1ebfc51a38a365c5be656986b129be9ac784
        - registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f
        version: 1.0.0
      entries:
      - name: hnas-csi-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: hnas-csi-operator
    provider:
      name: Hitachi
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-recyclebin-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-recyclebin-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "recyclebin.services.k8s.aws/v1alpha1",
                "kind": "Rule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/recyclebin-controller:1.2.0
          createdAt: "2025-11-29T04:03:10Z"
          description: AWS Recycle Bin controller is a service controller for managing
            Recycle Bin resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Rule represents the state of an AWS recyclebin Rule resource.
            displayName: Rule
            kind: Rule
            name: rules.recyclebin.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Recycle Bin resources in AWS from within your Kubernetes cluster.

          **About Amazon Recycle Bin**

          Recycle Bin is a data recovery feature that enables you to restore accidentally deleted Amazon EBS snapshots and EBS-backed AMIs. When using Recycle Bin, if your resources are deleted, they are retained in the Recycle Bin for a time period that you specify before being permanently deleted.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Recycle Bin
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - recyclebin
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Recycle Bin Developer Resources
          url: https://docs.aws.amazon.com/ebs/latest/userguide/recycle-bin.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: recyclebin maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/recyclebin-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-recyclebin-controller@sha256:1444a27bbf0d726d65f6e5e513e47828ad4259751a8bb0695ecc72dafe5eaac7
        version: 1.2.0
      entries:
      - name: ack-recyclebin-controller.v1.2.0
        version: 1.2.0
      - name: ack-recyclebin-controller.v1.1.2
        version: 1.1.2
      - name: ack-recyclebin-controller.v1.1.1
        version: 1.1.1
      - name: ack-recyclebin-controller.v1.1.0
        version: 1.1.0
      - name: ack-recyclebin-controller.v1.0.13
        version: 1.0.13
      - name: ack-recyclebin-controller.v1.0.12
        version: 1.0.12
      - name: ack-recyclebin-controller.v1.0.11
        version: 1.0.11
      - name: ack-recyclebin-controller.v1.0.10
        version: 1.0.10
      - name: ack-recyclebin-controller.v1.0.9
        version: 1.0.9
      - name: ack-recyclebin-controller.v1.0.8
        version: 1.0.8
      - name: ack-recyclebin-controller.v1.0.7
        version: 1.0.7
      - name: ack-recyclebin-controller.v1.0.6
        version: 1.0.6
      - name: ack-recyclebin-controller.v1.0.5
        version: 1.0.5
      - name: ack-recyclebin-controller.v1.0.2
        version: 1.0.2
      - name: ack-recyclebin-controller.v1.0.1
        version: 1.0.1
      - name: ack-recyclebin-controller.v1.0.0
        version: 1.0.0
      - name: ack-recyclebin-controller.v0.0.3
        version: 0.0.3
      - name: ack-recyclebin-controller.v0.0.2
        version: 0.0.2
      - name: ack-recyclebin-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-recyclebin-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Carlos Eduardo de Paula
      provider-url: ""
    name: lbconfig-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lbconfig-operator.v0.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lb.lbconfig.carlosedp.com/v1",
                "kind": "ExternalLoadBalancer",
                "metadata": {
                  "name": "externalloadbalancer-infra-sample",
                  "namespace": "lbconfig-operator-system"
                },
                "spec": {
                  "monitor": {
                    "monitortype": "http",
                    "path": "/healthz",
                    "port": 1936
                  },
                  "ports": [
                    80,
                    443
                  ],
                  "provider": {
                    "creds": "f5-creds",
                    "host": "https://192.168.1.35",
                    "partition": "Common",
                    "port": 443,
                    "validatecerts": false,
                    "vendor": "F5_BigIP"
                  },
                  "type": "infra",
                  "vip": "192.168.1.45"
                }
              },
              {
                "apiVersion": "lb.lbconfig.carlosedp.com/v1",
                "kind": "ExternalLoadBalancer",
                "metadata": {
                  "name": "externalloadbalancer-infra-sample-shard",
                  "namespace": "lbconfig-operator-system"
                },
                "spec": {
                  "monitor": {
                    "monitortype": "http",
                    "path": "/healthz",
                    "port": 1936
                  },
                  "nodelabels": {
                    "kubernetes.io/region": "DC1",
                    "node-role.kubernetes.io/infra": ""
                  },
                  "ports": [
                    80,
                    443
                  ],
                  "provider": {
                    "creds": "f5-creds",
                    "host": "https://192.168.1.35",
                    "partition": "Common",
                    "port": 443,
                    "validatecerts": false,
                    "vendor": "F5_BigIP"
                  },
                  "type": "infra",
                  "vip": "192.168.1.46"
                }
              },
              {
                "apiVersion": "lb.lbconfig.carlosedp.com/v1",
                "kind": "ExternalLoadBalancer",
                "metadata": {
                  "name": "externalloadbalancer-master-sample",
                  "namespace": "lbconfig-operator-system"
                },
                "spec": {
                  "monitor": {
                    "monitortype": "https",
                    "path": "/healthz",
                    "port": 6443
                  },
                  "ports": [
                    6443
                  ],
                  "provider": {
                    "creds": "netscaler-creds",
                    "host": "https://192.168.1.36",
                    "port": 443,
                    "validatecerts": false,
                    "vendor": "Citrix_ADC"
                  },
                  "type": "master",
                  "vip": "192.168.1.40"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Networking
          certified: "false"
          containerImage: quay.io/carlosedp/lbconfig-operator:v0.5.1
          createdAt: "2025-01-09T15:45:28Z"
          description: Manage External Load Balancers allowing creation/update for
            VIPs and Servers dynamically via API.
          k8sMaxVersion: ""
          k8sMinVersion: ""
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/carlosedp/lbconfig-operator
          support: https://github.com/carlosedp/lbconfig-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalLoadBalancer is the Schema for the externalloadbalancers
              API
            displayName: ExternalLoadBalancer Instance
            kind: ExternalLoadBalancer
            name: externalloadbalancers.lb.lbconfig.carlosedp.com
            version: v1
          required:
          - description: ExternalLoadBalancer represents a configured instance of
              an external Load-Balancer for a specific group of nodes of the cluster.
              The Instance has a VIP and ports to be balanced to the cluster nodes
              based on a set of node labels.
            displayName: External Load-Balancer Configuration Instance
            kind: ExternalLoadBalancer
            name: externalloadbalancers.lb.lbconfig.carlosedp.com
            version: v1
        description: |
          ## About the Operator

          The LBConfig Operator, manages the configuration of External Load Balancer instances (on third-party equipment via it's API) and creates VIPs and IP Pools with Monitors for a set of OpenShift or Kubernetes nodes like Master-nodes (Control-Plane), Infra nodes (where the Routers or Ingress controllers are located) or based on it's roles and/or labels.

          The operator dynamically handles creating, updating or deleting the IPs of the pools in the Load Balancer based on the Node IPs for each role or label. On every change of the operator configuration (CRDs) or addition/change/removal or cluster Nodes, the operator updates the Load Balancer properly.

          ## Main Use Cases

          The main users for this operator is enterprise deployments or clusters composed of multiple nodes having an external load-balancer providing the balancing and high-availability to access the cluster in both API and Application levels.

          ### Create ExternalLoadBalancer Instances

          Create the instances for each Load Balancer instance you need (for example one for Master Nodes and another for the Infra Nodes). **If installing on OpenShift or Kubernetes with OLM (or in a different namespace), adjust the sample YAMLs to match the created namespace**.

          **The provider `vendor` field can be (case-insensitive):**

          * **`F5_BigIP`** - Tested on F5 BigIP version 15
          * **`Citrix_ADC`** - Tested on Citrix ADC (Netscaler) version 13
          * **`HAProxy`** - HAProxy with Dataplane API. ([Docs](./docs/haproxy/))
          * **`Dummy`** - Dummy backend used for testing to only print log messages on operations

          Create the secret holding the Load Balancer API user and password:

          ```sh
          oc create secret generic f5-creds --from-literal=username=admin --from-literal=password=admin123 --namespace lbconfig-operator-system
          ```

          #### Sample CRDs and Available Fields

          Master Nodes using a Citrix ADC LB:

          ```yaml
          apiVersion: lb.lbconfig.carlosedp.com/v1
          kind: ExternalLoadBalancer
          metadata:
            name: externalloadbalancer-master-sample
            namespace: lbconfig-operator-system
          spec:
            vip: "192.168.1.40"
            type: "master"
            ports:
              - 6443
            monitor:
              path: "/healthz"
              port: 6443
              monitortype: "https"
            provider:
              vendor: Citrix_ADC
              host: "https://192.168.1.36"
              port: 443
              creds: netscaler-creds
              validatecerts: false
          ```

          Infra Nodes using a F5 BigIP LB:

          ```yaml
          apiVersion: lb.lbconfig.carlosedp.com/v1
          kind: ExternalLoadBalancer
          metadata:
            name: externalloadbalancer-infra-sample
            namespace: lbconfig-operator-system
          spec:
            vip: "192.168.1.45"
            type: "infra"
            ports:
              - 80
              - 443
            monitor:
              path: "/healthz"
              port: 1936
              monitortype: http
            provider:
              vendor: F5_BigIP
              host: "https://192.168.1.35"
              port: 443
              creds: f5-creds
              partition: "Common"
              validatecerts: false
          ```

          To choose the nodes which will be part of the server pool, you can set either `type` or `nodelabels` fields. The yaml field `type: "master"` or `type: "infra"` selects nodes with the role label `"node-role.kubernetes.io/master"` and `"node-role.kubernetes.io/infra"` respectively. If the field `nodelabels` array is used instead, the operator will use nodes which match all labels.

          Clusters with sharded routers or using arbitrary labels to determine where the Ingress Controllers run can be configured like:

          ```yaml
          spec:
            vip: "10.0.0.6"
            ports:
              - 80
            nodelabels:
              "node.kubernetes.io/ingress-controller": "production"
              "kubernetes.io/region": "DC1"
            ...
          ```

          ## Getting Help

          This project fully open-source and is hosted at [GitHub](https://github.com/carlosedp/lbconfig-operator). Always check the project page and issues for the latest updates and/or solutions to problems encountered. If a problem is detected, please fill an issue. Feature request and improvement issues are welcome.

          Some fields inside `providers` are optional and depend on the used backend. Check the [API docs](https://pkg.go.dev/github.com/carlosedp/lbconfig-operator/api/lb.lbconfig.carlosedp.com/v1?utm_source=gopls#Provider) which fields are backend-specific.

          ## Disclaimers

          * The operator does not check if the requested configuration (names, IPs) already exists and/or conflicts with existing configuration in the Load Balancer. The user is responsible for these checks before deployment;
          * I am not responsible if the operator changes/deletes existing configuration on the Load Balancer if existing names are already configured.
          * The operator creates the entries(Pools, VIPs, Monitors) in the provided Load Balancer with the `name` of the instance configured in the CustomResource prefixed with the type. Eg. For a CR with name `externalloadbalancer-master-sample`, the operator creates a server pool named `Pool-externalloadbalancer-master-sample-6443` (suffixed with the port), a monitor named `Monitor-externalloadbalancer-master-sample` and a VIP named `VIP-externalloadbalancer-master-sample-6443` (suffixed with the port).
        displayName: External Load-Balancer Configuration Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - 'load-balance '
        - infrastructure
        links:
        - name: GitHub
          url: https://github.com/carlosedp/lbconfig-operator
        - name: Documentation
          url: https://github.com/carlosedp/lbconfig-operator/docs
        - name: Issues
          url: https://github.com/carlosedp/lbconfig-operator/issues
        maintainers:
        - email: carlosedp@gmail.com
          name: Carlos Eduardo de Paula
        maturity: beta
        minKubeVersion: 1.18.0
        provider:
          name: Carlos Eduardo de Paula
        relatedImages:
        - quay.io/community-operator-pipeline-prod/lbconfig-operator@sha256:b0bb724a5d9905633962a3e8267e75d371f754bce866a29cba3ac0d0c671ebff
        - quay.io/carlosedp/kube-rbac-proxy:v0.15.0
        - quay.io/carlosedp/lbconfig-operator:v0.5.1
        version: 0.5.1
      entries:
      - name: lbconfig-operator.v0.5.1
        version: 0.5.1
      - name: lbconfig-operator.v0.5.0
        version: 0.5.0
      - name: lbconfig-operator.v0.4.1
        version: 0.4.1
      - name: lbconfig-operator.v0.4.0
        version: 0.4.0
      - name: lbconfig-operator.v0.2.0
        version: 0.2.0
      name: beta
    defaultChannel: beta
    packageName: lbconfig-operator
    provider:
      name: Carlos Eduardo de Paula
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Sigstore Authors
      provider-url: https://sigstore.dev
    name: sigstore-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sigstore-helm-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "helm.sigstore.dev/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "name": "rekor"
                },
                "spec": {
                  "server": {
                    "ingress": {
                      "hostname": "rekor.example.com"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          containerImage: ghcr.io/sigstore/sigstore-helm-operator@sha256:d9c6eb162b97a1aa1ad3bf515db65d01a96e55b6f8bcd646864d3e64a3ee2b9e
          createdAt: "2021-09-01T21:20:28Z"
          description: Helm Charts for Sigstore Project.
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/sigstore/sigstore-helm-operator
          support: The Sigstore Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Rekor
            name: rekors.helm.sigstore.dev
            version: v1alpha1
        description: |-
          Helm Charts for the sigstore project

          ## Charts

          The following charts are available:

          * [Rekor](https://github.com/sigstore/helm-charts/tree/main/charts/rekor)
        displayName: sigstore
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        links:
        - name: Sigstore Helm Operator
          url: https://github.com/sabre1041/sigstore-helm-operator
        maintainers:
        - email: ablock@redhat.com
          name: Andrew Block
        maturity: alpha
        provider:
          name: The Sigstore Authors
          url: https://sigstore.dev
        relatedImages:
        - ghcr.io/sigstore/sigstore-helm-operator@sha256:d9c6eb162b97a1aa1ad3bf515db65d01a96e55b6f8bcd646864d3e64a3ee2b9e
        - quay.io/coreos/kube-rbac-proxy@sha256:e10d1d982dd653db74ca87a1d1ad017bc5ef1aeb651bdea089debf16485b080b
        - quay.io/openshift-community-operators/sigstore-helm-operator@sha256:ff4e548a8a003bd23e5076362bafb2e22f77b8445c5e3585d99cd5ce26fcaf56
        version: 0.0.1
      entries:
      - name: sigstore-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: sigstore-helm-operator
    provider:
      name: The Sigstore Authors
      url: https://sigstore.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ember-csi-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ember-csi-community-operator.v0.9.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ember-csi.io/v1alpha1",
                "kind": "EmberStorageBackend",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "config": {
                    "envVars": {
                      "X_CSI_PERSISTENCE_CONFIG": {
                        "storage": "crd"
                      },
                      "X_CSI_DEBUG_MODE": "",
                      "X_CSI_DEFAULT_MOUNT_FS": "ext4",
                      "X_CSI_EMBER_CONFIG": {
                        "grpc_workers": 30,
                        "disable_logs": false,
                        "plugin_name": "",
                        "slow_operations": true,
                        "disabled": [],
                        "enable_probe": false,
                        "debug": false,
                        "user_id": "ember_csi.io",
                        "project_id": "ember_csi.io"
                      },
                      "X_CSI_BACKEND_CONFIG": {
                        "enable_unsupported_driver": false,
                        "driver": "ACCESSIscsi",
                        "name": "",
                        "driver__ACCESSIscsi__vrts_lun_sparse": true,
                        "driver__ACCESSIscsi__vrts_target_config": "/etc/cinder/vrts_target.xml",
                        "driver__AS13000__as13000_ipsan_pools__transform_csv": "Pool0",
                        "driver__AS13000__as13000_meta_pool": "",
                        "driver__AS13000__as13000_token_available_time": 3300,
                        "driver__Acs5000ISCSI__acs5000_copy_interval": 5,
                        "driver__Acs5000ISCSI__acs5000_target": 0,
                        "driver__Acs5000ISCSI__acs5000_volpool_name__transform_csv": "pool01",
                        "driver__DPLFC__dpl_pool": "",
                        "driver__DPLFC__dpl_port": 8357,
                        "driver__DPLISCSI__dpl_pool": "",
                        "driver__DPLISCSI__dpl_port": 8357,
                        "driver__DSWARE__dsware_rest_url": "",
                        "driver__DSWARE__dsware_storage_pools": "",
                        "driver__DSWARE__manager_ips__transform_csv_kvs": "",
                        "driver__Datera__backend_availability_zone": "",
                        "driver__Datera__chap_password": "",
                        "driver__Datera__chap_username": "",
                        "driver__Datera__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__Datera__driver_client_cert": "",
                        "driver__Datera__driver_client_cert_key": "",
                        "driver__Datera__driver_data_namespace": "",
                        "driver__Datera__driver_ssl_cert_path": "",
                        "driver__Datera__driver_ssl_cert_verify": false,
                        "driver__Datera__driver_use_ssl": false,
                        "driver__Datera__filter_function": "",
                        "driver__Datera__goodness_function": "",
                        "driver__Datera__iscsi_iotype": "fileio",
                        "driver__Datera__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__Datera__iscsi_target_flags": "",
                        "driver__Datera__iscsi_write_cache": "on",
                        "driver__Datera__num_shell_tries": 3,
                        "driver__Datera__num_volume_device_scan_tries": 3,
                        "driver__Datera__report_discard_supported": false,
                        "driver__Datera__storage_protocol": "iscsi",
                        "driver__Datera__target_helper": "tgtadm",
                        "driver__Datera__target_ip_address": "$my_ip",
                        "driver__Datera__target_port": 3260,
                        "driver__Datera__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__Datera__target_protocol": "iscsi",
                        "driver__Datera__trace_flags__transform_csv": "",
                        "driver__Datera__use_chap_auth": false,
                        "driver__Datera__volume_backend_name": "",
                        "driver__Datera__volume_clear": "zero",
                        "driver__Datera__volume_clear_ionice": "",
                        "driver__Datera__volume_clear_size": 0,
                        "driver__Datera__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__Datera__volume_copy_bps_limit": 0,
                        "driver__Datera__volume_dd_blocksize": "1M",
                        "driver__Datera__volumes_dir": "$state_path/volumes",
                        "driver__FJDXFC__cinder_eternus_config_file": "/etc/cinder/cinder_fujitsu_eternus_dx.xml",
                        "driver__FJDXISCSI__cinder_eternus_config_file": "/etc/cinder/cinder_fujitsu_eternus_dx.xml",
                        "driver__FlashSystemFC__flashsystem_connection_protocol": "FC",
                        "driver__FlashSystemFC__flashsystem_multihostmap_enabled": true,
                        "driver__FlashSystemISCSI__flashsystem_connection_protocol": "FC",
                        "driver__FlashSystemISCSI__flashsystem_multihostmap_enabled": true,
                        "driver__GPFS__gpfs_images_dir": "",
                        "driver__GPFS__gpfs_images_share_mode__transform_empty_none": "",
                        "driver__GPFS__gpfs_max_clone_depth": 0,
                        "driver__GPFS__gpfs_mount_point_base": "",
                        "driver__GPFS__gpfs_sparse_volumes": true,
                        "driver__GPFS__gpfs_storage_pool": "system",
                        "driver__GPFSRemote__gpfs_hosts__transform_csv": "",
                        "driver__GPFSRemote__gpfs_hosts_key_file": "$state_path/ssh_known_hosts",
                        "driver__GPFSRemote__gpfs_images_dir": "",
                        "driver__GPFSRemote__gpfs_images_share_mode__transform_empty_none": "",
                        "driver__GPFSRemote__gpfs_max_clone_depth": 0,
                        "driver__GPFSRemote__gpfs_mount_point_base": "",
                        "driver__GPFSRemote__gpfs_private_key": "",
                        "driver__GPFSRemote__gpfs_sparse_volumes": true,
                        "driver__GPFSRemote__gpfs_ssh_port": 22,
                        "driver__GPFSRemote__gpfs_storage_pool": "system",
                        "driver__GPFSRemote__gpfs_strict_host_key_policy": false,
                        "driver__GPFSRemote__gpfs_user_login": "root",
                        "driver__GPFSRemote__gpfs_user_password": "",
                        "driver__HBSDFC__backend_availability_zone": "",
                        "driver__HBSDFC__chap_password": "",
                        "driver__HBSDFC__chap_username": "",
                        "driver__HBSDFC__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__HBSDFC__driver_client_cert": "",
                        "driver__HBSDFC__driver_client_cert_key": "",
                        "driver__HBSDFC__driver_data_namespace": "",
                        "driver__HBSDFC__driver_ssl_cert_path": "",
                        "driver__HBSDFC__driver_ssl_cert_verify": false,
                        "driver__HBSDFC__driver_use_ssl": false,
                        "driver__HBSDFC__filter_function": "",
                        "driver__HBSDFC__goodness_function": "",
                        "driver__HBSDFC__iscsi_iotype": "fileio",
                        "driver__HBSDFC__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__HBSDFC__iscsi_target_flags": "",
                        "driver__HBSDFC__iscsi_write_cache": "on",
                        "driver__HBSDFC__num_shell_tries": 3,
                        "driver__HBSDFC__num_volume_device_scan_tries": 3,
                        "driver__HBSDFC__report_discard_supported": false,
                        "driver__HBSDFC__storage_protocol": "iscsi",
                        "driver__HBSDFC__target_helper": "tgtadm",
                        "driver__HBSDFC__target_ip_address": "$my_ip",
                        "driver__HBSDFC__target_port": 3260,
                        "driver__HBSDFC__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__HBSDFC__target_protocol": "iscsi",
                        "driver__HBSDFC__trace_flags__transform_csv": "",
                        "driver__HBSDFC__use_chap_auth": false,
                        "driver__HBSDFC__volume_backend_name": "",
                        "driver__HBSDFC__volume_clear": "zero",
                        "driver__HBSDFC__volume_clear_ionice": "",
                        "driver__HBSDFC__volume_clear_size": 0,
                        "driver__HBSDFC__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__HBSDFC__volume_copy_bps_limit": 0,
                        "driver__HBSDFC__volume_dd_blocksize": "1M",
                        "driver__HBSDFC__volumes_dir": "$state_path/volumes",
                        "driver__HBSDISCSI__backend_availability_zone": "",
                        "driver__HBSDISCSI__chap_password": "",
                        "driver__HBSDISCSI__chap_username": "",
                        "driver__HBSDISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__HBSDISCSI__driver_client_cert": "",
                        "driver__HBSDISCSI__driver_client_cert_key": "",
                        "driver__HBSDISCSI__driver_data_namespace": "",
                        "driver__HBSDISCSI__driver_ssl_cert_path": "",
                        "driver__HBSDISCSI__driver_ssl_cert_verify": false,
                        "driver__HBSDISCSI__driver_use_ssl": false,
                        "driver__HBSDISCSI__filter_function": "",
                        "driver__HBSDISCSI__goodness_function": "",
                        "driver__HBSDISCSI__iscsi_iotype": "fileio",
                        "driver__HBSDISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__HBSDISCSI__iscsi_target_flags": "",
                        "driver__HBSDISCSI__iscsi_write_cache": "on",
                        "driver__HBSDISCSI__num_shell_tries": 3,
                        "driver__HBSDISCSI__num_volume_device_scan_tries": 3,
                        "driver__HBSDISCSI__report_discard_supported": false,
                        "driver__HBSDISCSI__storage_protocol": "iscsi",
                        "driver__HBSDISCSI__target_helper": "tgtadm",
                        "driver__HBSDISCSI__target_ip_address": "$my_ip",
                        "driver__HBSDISCSI__target_port": 3260,
                        "driver__HBSDISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__HBSDISCSI__target_protocol": "iscsi",
                        "driver__HBSDISCSI__trace_flags__transform_csv": "",
                        "driver__HBSDISCSI__use_chap_auth": false,
                        "driver__HBSDISCSI__volume_backend_name": "",
                        "driver__HBSDISCSI__volume_clear": "zero",
                        "driver__HBSDISCSI__volume_clear_ionice": "",
                        "driver__HBSDISCSI__volume_clear_size": 0,
                        "driver__HBSDISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__HBSDISCSI__volume_copy_bps_limit": 0,
                        "driver__HBSDISCSI__volume_dd_blocksize": "1M",
                        "driver__HBSDISCSI__volumes_dir": "$state_path/volumes",
                        "driver__HPE3PARFC__hpe3par_api_url": "",
                        "driver__HPE3PARFC__hpe3par_cpg__transform_csv": "OpenStack",
                        "driver__HPE3PARFC__hpe3par_cpg_snap": "",
                        "driver__HPE3PARFC__hpe3par_debug": false,
                        "driver__HPE3PARFC__hpe3par_iscsi_chap_enabled": false,
                        "driver__HPE3PARFC__hpe3par_iscsi_ips__transform_csv": "",
                        "driver__HPE3PARFC__hpe3par_password": "",
                        "driver__HPE3PARFC__hpe3par_snapshot_expiration": "",
                        "driver__HPE3PARFC__hpe3par_snapshot_retention": "",
                        "driver__HPE3PARFC__hpe3par_target_nsp": "",
                        "driver__HPE3PARFC__hpe3par_username": "",
                        "driver__HPE3PARFC__san_ip": "",
                        "driver__HPE3PARFC__san_login": "admin",
                        "driver__HPE3PARFC__san_password": "",
                        "driver__HPE3PARFC__san_private_key": "",
                        "driver__HPE3PARFC__san_ssh_port": 22,
                        "driver__HPE3PARFC__ssh_conn_timeout": 30,
                        "driver__HPE3PARFC__target_ip_address": "$my_ip",
                        "driver__HPE3PARFC__target_port": 3260,
                        "driver__HPE3PARFC__unique_fqdn_network": true,
                        "driver__HPE3PARISCSI__hpe3par_api_url": "",
                        "driver__HPE3PARISCSI__hpe3par_cpg__transform_csv": "OpenStack",
                        "driver__HPE3PARISCSI__hpe3par_cpg_snap": "",
                        "driver__HPE3PARISCSI__hpe3par_debug": false,
                        "driver__HPE3PARISCSI__hpe3par_iscsi_chap_enabled": false,
                        "driver__HPE3PARISCSI__hpe3par_iscsi_ips__transform_csv": "",
                        "driver__HPE3PARISCSI__hpe3par_password": "",
                        "driver__HPE3PARISCSI__hpe3par_snapshot_expiration": "",
                        "driver__HPE3PARISCSI__hpe3par_snapshot_retention": "",
                        "driver__HPE3PARISCSI__hpe3par_target_nsp": "",
                        "driver__HPE3PARISCSI__hpe3par_username": "",
                        "driver__HPE3PARISCSI__san_ip": "",
                        "driver__HPE3PARISCSI__san_login": "admin",
                        "driver__HPE3PARISCSI__san_password": "",
                        "driver__HPE3PARISCSI__san_private_key": "",
                        "driver__HPE3PARISCSI__san_ssh_port": 22,
                        "driver__HPE3PARISCSI__ssh_conn_timeout": 30,
                        "driver__HPE3PARISCSI__target_ip_address": "$my_ip",
                        "driver__HPE3PARISCSI__target_port": 3260,
                        "driver__HPE3PARISCSI__unique_fqdn_network": true,
                        "driver__HPMSAFC__driver_ssl_cert_path": "",
                        "driver__HPMSAFC__driver_ssl_cert_verify": false,
                        "driver__HPMSAFC__driver_use_ssl": false,
                        "driver__HPMSAFC__hpmsa_pool_name": "A",
                        "driver__HPMSAFC__hpmsa_pool_type": "virtual",
                        "driver__HPMSAFC__san_ip": "",
                        "driver__HPMSAFC__san_login": "admin",
                        "driver__HPMSAFC__san_password": "",
                        "driver__HPMSAISCSI__driver_ssl_cert_path": "",
                        "driver__HPMSAISCSI__driver_ssl_cert_verify": false,
                        "driver__HPMSAISCSI__driver_use_ssl": false,
                        "driver__HPMSAISCSI__hpmsa_iscsi_ips__transform_csv": "",
                        "driver__HPMSAISCSI__hpmsa_pool_name": "A",
                        "driver__HPMSAISCSI__hpmsa_pool_type": "virtual",
                        "driver__HPMSAISCSI__san_ip": "",
                        "driver__HPMSAISCSI__san_login": "admin",
                        "driver__HPMSAISCSI__san_password": "",
                        "driver__HuaweiFC__cinder_huawei_conf_file": "/etc/cinder/cinder_huawei_conf.xml",
                        "driver__HuaweiFC__hypermetro_devices": "",
                        "driver__HuaweiFC__metro_domain_name": "",
                        "driver__HuaweiFC__metro_san_address": "",
                        "driver__HuaweiFC__metro_san_password": "",
                        "driver__HuaweiFC__metro_san_user": "",
                        "driver__HuaweiFC__metro_storage_pools": "",
                        "driver__HuaweiISCSI__cinder_huawei_conf_file": "/etc/cinder/cinder_huawei_conf.xml",
                        "driver__HuaweiISCSI__hypermetro_devices": "",
                        "driver__HuaweiISCSI__metro_domain_name": "",
                        "driver__HuaweiISCSI__metro_san_address": "",
                        "driver__HuaweiISCSI__metro_san_password": "",
                        "driver__HuaweiISCSI__metro_san_user": "",
                        "driver__HuaweiISCSI__metro_storage_pools": "",
                        "driver__IBMStorage__chap": "disabled",
                        "driver__IBMStorage__connection_type": "iscsi",
                        "driver__IBMStorage__management_ips": "",
                        "driver__IBMStorage__proxy": "cinder.volume.drivers.ibm.ibm_storage.proxy.IBMStorageProxy",
                        "driver__InStorageMCSFC__instorage_mcs_allow_tenant_qos": false,
                        "driver__InStorageMCSFC__instorage_mcs_localcopy_rate": 50,
                        "driver__InStorageMCSFC__instorage_mcs_localcopy_timeout": 120,
                        "driver__InStorageMCSFC__instorage_mcs_vol_autoexpand": true,
                        "driver__InStorageMCSFC__instorage_mcs_vol_compression": false,
                        "driver__InStorageMCSFC__instorage_mcs_vol_grainsize": 256,
                        "driver__InStorageMCSFC__instorage_mcs_vol_intier": true,
                        "driver__InStorageMCSFC__instorage_mcs_vol_iogrp": "0",
                        "driver__InStorageMCSFC__instorage_mcs_vol_rsize": 2,
                        "driver__InStorageMCSFC__instorage_mcs_vol_warning": 0,
                        "driver__InStorageMCSFC__instorage_mcs_volpool_name__transform_csv": "volpool",
                        "driver__InStorageMCSFC__instorage_san_secondary_ip": "",
                        "driver__InStorageMCSISCSI__instorage_mcs_allow_tenant_qos": false,
                        "driver__InStorageMCSISCSI__instorage_mcs_localcopy_rate": 50,
                        "driver__InStorageMCSISCSI__instorage_mcs_localcopy_timeout": 120,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_autoexpand": true,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_compression": false,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_grainsize": 256,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_intier": true,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_iogrp": "0",
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_rsize": 2,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_warning": 0,
                        "driver__InStorageMCSISCSI__instorage_mcs_volpool_name__transform_csv": "volpool",
                        "driver__InStorageMCSISCSI__instorage_san_secondary_ip": "",
                        "driver__InfiniboxVolume__chap_password": "",
                        "driver__InfiniboxVolume__chap_username": "",
                        "driver__InfiniboxVolume__infinidat_iscsi_netspaces__transform_csv": "",
                        "driver__InfiniboxVolume__infinidat_pool_name": "",
                        "driver__InfiniboxVolume__infinidat_storage_protocol": "fc",
                        "driver__InfiniboxVolume__infinidat_use_compression": false,
                        "driver__InfiniboxVolume__num_volume_device_scan_tries": 3,
                        "driver__InfiniboxVolume__san_ip": "",
                        "driver__InfiniboxVolume__san_login": "admin",
                        "driver__InfiniboxVolume__san_password": "",
                        "driver__InfiniboxVolume__san_thin_provision": true,
                        "driver__InfiniboxVolume__use_chap_auth": false,
                        "driver__InfiniboxVolume__volume_dd_blocksize": "1M",
                        "driver__InfortrendCLIFC__infortrend_cli_cache": false,
                        "driver__InfortrendCLIFC__infortrend_cli_max_retries": 5,
                        "driver__InfortrendCLIFC__infortrend_cli_path": "/opt/bin/Infortrend/raidcmd_ESDS10.jar",
                        "driver__InfortrendCLIFC__infortrend_cli_timeout": 60,
                        "driver__InfortrendCLIFC__infortrend_iqn_prefix": "iqn.2002-10.com.infortrend",
                        "driver__InfortrendCLIFC__infortrend_pools_name__transform_csv": "",
                        "driver__InfortrendCLIFC__infortrend_slots_a_channels_id__transform_csv": "",
                        "driver__InfortrendCLIFC__infortrend_slots_b_channels_id__transform_csv": "",
                        "driver__InfortrendCLIFC__java_path": "/usr/bin/java",
                        "driver__InfortrendCLIISCSI__infortrend_cli_cache": false,
                        "driver__InfortrendCLIISCSI__infortrend_cli_max_retries": 5,
                        "driver__InfortrendCLIISCSI__infortrend_cli_path": "/opt/bin/Infortrend/raidcmd_ESDS10.jar",
                        "driver__InfortrendCLIISCSI__infortrend_cli_timeout": 60,
                        "driver__InfortrendCLIISCSI__infortrend_iqn_prefix": "iqn.2002-10.com.infortrend",
                        "driver__InfortrendCLIISCSI__infortrend_pools_name__transform_csv": "",
                        "driver__InfortrendCLIISCSI__infortrend_slots_a_channels_id__transform_csv": "",
                        "driver__InfortrendCLIISCSI__infortrend_slots_b_channels_id__transform_csv": "",
                        "driver__InfortrendCLIISCSI__java_path": "/usr/bin/java",
                        "driver__JovianISCSI__backend_availability_zone": "",
                        "driver__JovianISCSI__chap_password": "",
                        "driver__JovianISCSI__chap_username": "",
                        "driver__JovianISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__JovianISCSI__driver_client_cert": "",
                        "driver__JovianISCSI__driver_client_cert_key": "",
                        "driver__JovianISCSI__driver_data_namespace": "",
                        "driver__JovianISCSI__driver_ssl_cert_path": "",
                        "driver__JovianISCSI__driver_ssl_cert_verify": false,
                        "driver__JovianISCSI__driver_use_ssl": false,
                        "driver__JovianISCSI__filter_function": "",
                        "driver__JovianISCSI__goodness_function": "",
                        "driver__JovianISCSI__iscsi_iotype": "fileio",
                        "driver__JovianISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__JovianISCSI__iscsi_target_flags": "",
                        "driver__JovianISCSI__iscsi_write_cache": "on",
                        "driver__JovianISCSI__num_shell_tries": 3,
                        "driver__JovianISCSI__num_volume_device_scan_tries": 3,
                        "driver__JovianISCSI__report_discard_supported": false,
                        "driver__JovianISCSI__storage_protocol": "iscsi",
                        "driver__JovianISCSI__target_helper": "tgtadm",
                        "driver__JovianISCSI__target_ip_address": "$my_ip",
                        "driver__JovianISCSI__target_port": 3260,
                        "driver__JovianISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__JovianISCSI__target_protocol": "iscsi",
                        "driver__JovianISCSI__trace_flags__transform_csv": "",
                        "driver__JovianISCSI__use_chap_auth": false,
                        "driver__JovianISCSI__volume_backend_name": "",
                        "driver__JovianISCSI__volume_clear": "zero",
                        "driver__JovianISCSI__volume_clear_ionice": "",
                        "driver__JovianISCSI__volume_clear_size": 0,
                        "driver__JovianISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__JovianISCSI__volume_copy_bps_limit": 0,
                        "driver__JovianISCSI__volume_dd_blocksize": "1M",
                        "driver__JovianISCSI__volumes_dir": "$state_path/volumes",
                        "driver__KaminarioISCSI__disable_discovery": false,
                        "driver__KaminarioISCSI__san_ip": "",
                        "driver__KaminarioISCSI__san_login": "admin",
                        "driver__KaminarioISCSI__san_password": "",
                        "driver__KaminarioISCSI__unique_fqdn_network": true,
                        "driver__KaminarioISCSI__volume_dd_blocksize": "1M",
                        "driver__LVMVolume__iscsi_iotype": "fileio",
                        "driver__LVMVolume__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__LVMVolume__iscsi_target_flags": "",
                        "driver__LVMVolume__iscsi_write_cache": "on",
                        "driver__LVMVolume__lvm_conf_file": "/etc/cinder/lvm.conf",
                        "driver__LVMVolume__lvm_mirrors": 0,
                        "driver__LVMVolume__lvm_suppress_fd_warnings": false,
                        "driver__LVMVolume__lvm_type": "auto",
                        "driver__LVMVolume__nvmet_port_id": 1,
                        "driver__LVMVolume__scst_target_driver": "iscsi",
                        "driver__LVMVolume__scst_target_iqn_name": "",
                        "driver__LVMVolume__spdk_max_queue_depth": 64,
                        "driver__LVMVolume__spdk_rpc_ip": "",
                        "driver__LVMVolume__spdk_rpc_password": "",
                        "driver__LVMVolume__spdk_rpc_port": 8000,
                        "driver__LVMVolume__spdk_rpc_username": "",
                        "driver__LVMVolume__target_helper": "tgtadm",
                        "driver__LVMVolume__target_ip_address": "$my_ip",
                        "driver__LVMVolume__target_port": 3260,
                        "driver__LVMVolume__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__LVMVolume__target_protocol": "iscsi",
                        "driver__LVMVolume__volume_clear": "zero",
                        "driver__LVMVolume__volume_clear_size": 0,
                        "driver__LVMVolume__volume_dd_blocksize": "1M",
                        "driver__LVMVolume__volume_group": "cinder-volumes",
                        "driver__LVMVolume__volumes_dir": "$state_path/volumes",
                        "driver__LenovoFC__lenovo_pool_name": "A",
                        "driver__LenovoFC__lenovo_pool_type": "virtual",
                        "driver__LenovoISCSI__lenovo_iscsi_ips__transform_csv": "",
                        "driver__LenovoISCSI__lenovo_pool_name": "A",
                        "driver__LenovoISCSI__lenovo_pool_type": "virtual",
                        "driver__LinstorDrbd__linstor_autoplace_count": 0,
                        "driver__LinstorDrbd__linstor_controller_diskless": true,
                        "driver__LinstorDrbd__linstor_default_blocksize": 4096,
                        "driver__LinstorDrbd__linstor_default_storage_pool_name": "DfltStorPool",
                        "driver__LinstorDrbd__linstor_default_uri": "linstor://localhost",
                        "driver__LinstorDrbd__linstor_default_volume_group_name": "drbd-vg",
                        "driver__LinstorDrbd__linstor_volume_downsize_factor__transform_string_float": "4096",
                        "driver__LinstorIscsi__linstor_autoplace_count": 0,
                        "driver__LinstorIscsi__linstor_controller_diskless": true,
                        "driver__LinstorIscsi__linstor_default_blocksize": 4096,
                        "driver__LinstorIscsi__linstor_default_storage_pool_name": "DfltStorPool",
                        "driver__LinstorIscsi__linstor_default_uri": "linstor://localhost",
                        "driver__LinstorIscsi__linstor_default_volume_group_name": "drbd-vg",
                        "driver__LinstorIscsi__linstor_volume_downsize_factor__transform_string_float": "4096",
                        "driver__MStorageFC__nec_actual_free_capacity": false,
                        "driver__MStorageFC__nec_auto_accesscontrol": true,
                        "driver__MStorageFC__nec_backend_max_ld_count": 1024,
                        "driver__MStorageFC__nec_backup_ldname_format": "LX:%s",
                        "driver__MStorageFC__nec_backup_pools__transform_csv": "",
                        "driver__MStorageFC__nec_cv_ldname_format": "LX:__ControlVolume_%xh",
                        "driver__MStorageFC__nec_diskarray_name": "",
                        "driver__MStorageFC__nec_ismcli_fip": "",
                        "driver__MStorageFC__nec_ismcli_password": "",
                        "driver__MStorageFC__nec_ismcli_privkey": "",
                        "driver__MStorageFC__nec_ismcli_user": "",
                        "driver__MStorageFC__nec_ismview_alloptimize": false,
                        "driver__MStorageFC__nec_ismview_dir": "/tmp/nec/cinder",
                        "driver__MStorageFC__nec_ldname_format": "LX:%s",
                        "driver__MStorageFC__nec_ldset": "",
                        "driver__MStorageFC__nec_pools__transform_csv": "",
                        "driver__MStorageFC__nec_queryconfig_view": false,
                        "driver__MStorageFC__nec_ssh_pool_port_number": 22,
                        "driver__MStorageFC__nec_unpairthread_timeout": 3600,
                        "driver__MStorageISCSI__nec_actual_free_capacity": false,
                        "driver__MStorageISCSI__nec_auto_accesscontrol": true,
                        "driver__MStorageISCSI__nec_backend_max_ld_count": 1024,
                        "driver__MStorageISCSI__nec_backup_ldname_format": "LX:%s",
                        "driver__MStorageISCSI__nec_backup_pools__transform_csv": "",
                        "driver__MStorageISCSI__nec_cv_ldname_format": "LX:__ControlVolume_%xh",
                        "driver__MStorageISCSI__nec_diskarray_name": "",
                        "driver__MStorageISCSI__nec_ismcli_fip": "",
                        "driver__MStorageISCSI__nec_ismcli_password": "",
                        "driver__MStorageISCSI__nec_ismcli_privkey": "",
                        "driver__MStorageISCSI__nec_ismcli_user": "",
                        "driver__MStorageISCSI__nec_ismview_alloptimize": false,
                        "driver__MStorageISCSI__nec_ismview_dir": "/tmp/nec/cinder",
                        "driver__MStorageISCSI__nec_ldname_format": "LX:%s",
                        "driver__MStorageISCSI__nec_ldset": "",
                        "driver__MStorageISCSI__nec_pools__transform_csv": "",
                        "driver__MStorageISCSI__nec_queryconfig_view": false,
                        "driver__MStorageISCSI__nec_ssh_pool_port_number": 22,
                        "driver__MStorageISCSI__nec_unpairthread_timeout": 3600,
                        "driver__MacroSANFC__backend_availability_zone": "",
                        "driver__MacroSANFC__chap_password": "",
                        "driver__MacroSANFC__chap_username": "",
                        "driver__MacroSANFC__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__MacroSANFC__driver_client_cert": "",
                        "driver__MacroSANFC__driver_client_cert_key": "",
                        "driver__MacroSANFC__driver_data_namespace": "",
                        "driver__MacroSANFC__driver_ssl_cert_path": "",
                        "driver__MacroSANFC__driver_ssl_cert_verify": false,
                        "driver__MacroSANFC__driver_use_ssl": false,
                        "driver__MacroSANFC__filter_function": "",
                        "driver__MacroSANFC__goodness_function": "",
                        "driver__MacroSANFC__iscsi_iotype": "fileio",
                        "driver__MacroSANFC__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__MacroSANFC__iscsi_target_flags": "",
                        "driver__MacroSANFC__iscsi_write_cache": "on",
                        "driver__MacroSANFC__num_shell_tries": 3,
                        "driver__MacroSANFC__num_volume_device_scan_tries": 3,
                        "driver__MacroSANFC__report_discard_supported": false,
                        "driver__MacroSANFC__storage_protocol": "iscsi",
                        "driver__MacroSANFC__target_helper": "tgtadm",
                        "driver__MacroSANFC__target_ip_address": "$my_ip",
                        "driver__MacroSANFC__target_port": 3260,
                        "driver__MacroSANFC__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__MacroSANFC__target_protocol": "iscsi",
                        "driver__MacroSANFC__trace_flags__transform_csv": "",
                        "driver__MacroSANFC__use_chap_auth": false,
                        "driver__MacroSANFC__volume_backend_name": "",
                        "driver__MacroSANFC__volume_clear": "zero",
                        "driver__MacroSANFC__volume_clear_ionice": "",
                        "driver__MacroSANFC__volume_clear_size": 0,
                        "driver__MacroSANFC__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__MacroSANFC__volume_copy_bps_limit": 0,
                        "driver__MacroSANFC__volume_dd_blocksize": "1M",
                        "driver__MacroSANFC__volumes_dir": "$state_path/volumes",
                        "driver__MacroSANISCSI__backend_availability_zone": "",
                        "driver__MacroSANISCSI__chap_password": "",
                        "driver__MacroSANISCSI__chap_username": "",
                        "driver__MacroSANISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__MacroSANISCSI__driver_client_cert": "",
                        "driver__MacroSANISCSI__driver_client_cert_key": "",
                        "driver__MacroSANISCSI__driver_data_namespace": "",
                        "driver__MacroSANISCSI__driver_ssl_cert_path": "",
                        "driver__MacroSANISCSI__driver_ssl_cert_verify": false,
                        "driver__MacroSANISCSI__driver_use_ssl": false,
                        "driver__MacroSANISCSI__filter_function": "",
                        "driver__MacroSANISCSI__goodness_function": "",
                        "driver__MacroSANISCSI__iscsi_iotype": "fileio",
                        "driver__MacroSANISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__MacroSANISCSI__iscsi_target_flags": "",
                        "driver__MacroSANISCSI__iscsi_write_cache": "on",
                        "driver__MacroSANISCSI__num_shell_tries": 3,
                        "driver__MacroSANISCSI__num_volume_device_scan_tries": 3,
                        "driver__MacroSANISCSI__report_discard_supported": false,
                        "driver__MacroSANISCSI__storage_protocol": "iscsi",
                        "driver__MacroSANISCSI__target_helper": "tgtadm",
                        "driver__MacroSANISCSI__target_ip_address": "$my_ip",
                        "driver__MacroSANISCSI__target_port": 3260,
                        "driver__MacroSANISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__MacroSANISCSI__target_protocol": "iscsi",
                        "driver__MacroSANISCSI__trace_flags__transform_csv": "",
                        "driver__MacroSANISCSI__use_chap_auth": false,
                        "driver__MacroSANISCSI__volume_backend_name": "",
                        "driver__MacroSANISCSI__volume_clear": "zero",
                        "driver__MacroSANISCSI__volume_clear_ionice": "",
                        "driver__MacroSANISCSI__volume_clear_size": 0,
                        "driver__MacroSANISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__MacroSANISCSI__volume_copy_bps_limit": 0,
                        "driver__MacroSANISCSI__volume_dd_blocksize": "1M",
                        "driver__MacroSANISCSI__volumes_dir": "$state_path/volumes",
                        "driver__NetAppCmodeFibreChannel__netapp_vserver": "",
                        "driver__NetAppCmodeISCSI__netapp_vserver": "",
                        "driver__NexentaISCSI__nexenta_blocksize": 4096,
                        "driver__NexentaISCSI__nexenta_dataset_compression": "on",
                        "driver__NexentaISCSI__nexenta_dataset_dedup": "off",
                        "driver__NexentaISCSI__nexenta_dataset_description": "",
                        "driver__NexentaISCSI__nexenta_folder": "",
                        "driver__NexentaISCSI__nexenta_group_snapshot_template": "group-snapshot-%s",
                        "driver__NexentaISCSI__nexenta_host": "",
                        "driver__NexentaISCSI__nexenta_host_group_prefix": "cinder",
                        "driver__NexentaISCSI__nexenta_iscsi_target_host_group": "all",
                        "driver__NexentaISCSI__nexenta_iscsi_target_portal_groups": "",
                        "driver__NexentaISCSI__nexenta_iscsi_target_portal_port": 3260,
                        "driver__NexentaISCSI__nexenta_iscsi_target_portals": "",
                        "driver__NexentaISCSI__nexenta_lu_writebackcache_disabled": false,
                        "driver__NexentaISCSI__nexenta_luns_per_target": 100,
                        "driver__NexentaISCSI__nexenta_ns5_blocksize": 32,
                        "driver__NexentaISCSI__nexenta_origin_snapshot_template": "origin-snapshot-%s",
                        "driver__NexentaISCSI__nexenta_rest_backoff_factor__transform_string_float": "0.5",
                        "driver__NexentaISCSI__nexenta_rest_connect_timeout__transform_string_float": "30",
                        "driver__NexentaISCSI__nexenta_rest_protocol": "auto",
                        "driver__NexentaISCSI__nexenta_rest_read_timeout__transform_string_float": "300",
                        "driver__NexentaISCSI__nexenta_rest_retry_count": 3,
                        "driver__NexentaISCSI__nexenta_sparse": false,
                        "driver__NexentaISCSI__nexenta_target_group_prefix": "cinder",
                        "driver__NexentaISCSI__nexenta_target_prefix": "iqn.1986-03.com.sun:02:cinder",
                        "driver__NexentaISCSI__nexenta_use_https": true,
                        "driver__NexentaISCSI__nexenta_volume": "cinder",
                        "driver__NexentaISCSI__nexenta_volume_group": "iscsi",
                        "driver__NimbleFC__nimble_pool_name": "default",
                        "driver__NimbleFC__nimble_subnet_label": "*",
                        "driver__NimbleFC__nimble_verify_cert_path": "",
                        "driver__NimbleFC__nimble_verify_certificate": false,
                        "driver__NimbleISCSI__nimble_pool_name": "default",
                        "driver__NimbleISCSI__nimble_subnet_label": "*",
                        "driver__NimbleISCSI__nimble_verify_cert_path": "",
                        "driver__NimbleISCSI__nimble_verify_certificate": false,
                        "driver__PVMEFC__driver_ssl_cert_path": "",
                        "driver__PVMEFC__driver_ssl_cert_verify": false,
                        "driver__PVMEFC__driver_use_ssl": false,
                        "driver__PVMEFC__pvme_pool_name": "A",
                        "driver__PVMEFC__san_ip": "",
                        "driver__PVMEFC__san_login": "admin",
                        "driver__PVMEFC__san_password": "",
                        "driver__PVMEISCSI__driver_ssl_cert_path": "",
                        "driver__PVMEISCSI__driver_ssl_cert_verify": false,
                        "driver__PVMEISCSI__driver_use_ssl": false,
                        "driver__PVMEISCSI__pvme_iscsi_ips__transform_csv": "",
                        "driver__PVMEISCSI__pvme_pool_name": "A",
                        "driver__PVMEISCSI__san_ip": "",
                        "driver__PVMEISCSI__san_login": "admin",
                        "driver__PVMEISCSI__san_password": "",
                        "driver__PowerFlex__powerflex_allow_migration_during_rebuild": false,
                        "driver__PowerFlex__powerflex_allow_non_padded_volumes": false,
                        "driver__PowerFlex__powerflex_max_over_subscription_ratio__transform_string_float": "10.0",
                        "driver__PowerFlex__powerflex_rest_server_port": 443,
                        "driver__PowerFlex__powerflex_round_volume_capacity": true,
                        "driver__PowerFlex__powerflex_server_api_version": "",
                        "driver__PowerFlex__powerflex_storage_pools": "",
                        "driver__PowerFlex__powerflex_unmap_volume_before_deletion": false,
                        "driver__PowerMaxFC__driver_ssl_cert_verify": false,
                        "driver__PowerMaxFC__initiator_check": false,
                        "driver__PowerMaxFC__interval": 3,
                        "driver__PowerMaxFC__load_balance": false,
                        "driver__PowerMaxFC__load_balance_real_time": false,
                        "driver__PowerMaxFC__load_data_format": "Avg",
                        "driver__PowerMaxFC__load_look_back": 60,
                        "driver__PowerMaxFC__load_look_back_real_time": 1,
                        "driver__PowerMaxFC__port_group_load_metric": "PercentBusy",
                        "driver__PowerMaxFC__port_load_metric": "PercentBusy",
                        "driver__PowerMaxFC__powermax_array": "",
                        "driver__PowerMaxFC__powermax_array_tag_list__transform_csv": "",
                        "driver__PowerMaxFC__powermax_port_group_name_template": "portGroupName",
                        "driver__PowerMaxFC__powermax_port_groups__transform_csv": "",
                        "driver__PowerMaxFC__powermax_service_level": "",
                        "driver__PowerMaxFC__powermax_short_host_name_template": "shortHostName",
                        "driver__PowerMaxFC__powermax_snapvx_unlink_limit": 3,
                        "driver__PowerMaxFC__powermax_srp": "",
                        "driver__PowerMaxFC__retries": 200,
                        "driver__PowerMaxFC__san_ip": "",
                        "driver__PowerMaxFC__san_login": "admin",
                        "driver__PowerMaxFC__san_password": "",
                        "driver__PowerMaxFC__u4p_failover_autofailback": true,
                        "driver__PowerMaxFC__u4p_failover_backoff_factor": 1,
                        "driver__PowerMaxFC__u4p_failover_retries": 3,
                        "driver__PowerMaxFC__u4p_failover_target__transform_csv_kvs": "",
                        "driver__PowerMaxFC__u4p_failover_timeout": 20,
                        "driver__PowerMaxFC__vmax_workload": "",
                        "driver__PowerMaxISCSI__chap_password": "",
                        "driver__PowerMaxISCSI__chap_username": "",
                        "driver__PowerMaxISCSI__driver_ssl_cert_verify": false,
                        "driver__PowerMaxISCSI__initiator_check": false,
                        "driver__PowerMaxISCSI__interval": 3,
                        "driver__PowerMaxISCSI__load_balance": false,
                        "driver__PowerMaxISCSI__load_balance_real_time": false,
                        "driver__PowerMaxISCSI__load_data_format": "Avg",
                        "driver__PowerMaxISCSI__load_look_back": 60,
                        "driver__PowerMaxISCSI__load_look_back_real_time": 1,
                        "driver__PowerMaxISCSI__port_group_load_metric": "PercentBusy",
                        "driver__PowerMaxISCSI__port_load_metric": "PercentBusy",
                        "driver__PowerMaxISCSI__powermax_array": "",
                        "driver__PowerMaxISCSI__powermax_array_tag_list__transform_csv": "",
                        "driver__PowerMaxISCSI__powermax_port_group_name_template": "portGroupName",
                        "driver__PowerMaxISCSI__powermax_port_groups__transform_csv": "",
                        "driver__PowerMaxISCSI__powermax_service_level": "",
                        "driver__PowerMaxISCSI__powermax_short_host_name_template": "shortHostName",
                        "driver__PowerMaxISCSI__powermax_snapvx_unlink_limit": 3,
                        "driver__PowerMaxISCSI__powermax_srp": "",
                        "driver__PowerMaxISCSI__retries": 200,
                        "driver__PowerMaxISCSI__san_ip": "",
                        "driver__PowerMaxISCSI__san_login": "admin",
                        "driver__PowerMaxISCSI__san_password": "",
                        "driver__PowerMaxISCSI__u4p_failover_autofailback": true,
                        "driver__PowerMaxISCSI__u4p_failover_backoff_factor": 1,
                        "driver__PowerMaxISCSI__u4p_failover_retries": 3,
                        "driver__PowerMaxISCSI__u4p_failover_target__transform_csv_kvs": "",
                        "driver__PowerMaxISCSI__u4p_failover_timeout": 20,
                        "driver__PowerMaxISCSI__use_chap_auth": false,
                        "driver__PowerMaxISCSI__vmax_workload": "",
                        "driver__PowerStore__powerstore_appliances__transform_csv": "",
                        "driver__PowerStore__powerstore_ports__transform_csv": "",
                        "driver__PureFC__driver_ssl_cert_path": "",
                        "driver__PureFC__driver_ssl_cert_verify": false,
                        "driver__PureFC__pure_api_token": "",
                        "driver__PureFC__pure_automatic_max_oversubscription_ratio": true,
                        "driver__PureFC__pure_eradicate_on_delete": false,
                        "driver__PureFC__pure_host_personality__transform_empty_none": "",
                        "driver__PureFC__pure_iscsi_cidr": "0.0.0.0/0",
                        "driver__PureFC__pure_replica_interval_default": 3600,
                        "driver__PureFC__pure_replica_retention_long_term_default": 7,
                        "driver__PureFC__pure_replica_retention_long_term_per_day_default": 3,
                        "driver__PureFC__pure_replica_retention_short_term_default": 14400,
                        "driver__PureFC__pure_replication_pg_name": "cinder-group",
                        "driver__PureFC__pure_replication_pod_name": "cinder-pod",
                        "driver__PureFC__san_ip": "",
                        "driver__PureFC__use_chap_auth": false,
                        "driver__PureISCSI__driver_ssl_cert_path": "",
                        "driver__PureISCSI__driver_ssl_cert_verify": false,
                        "driver__PureISCSI__pure_api_token": "",
                        "driver__PureISCSI__pure_automatic_max_oversubscription_ratio": true,
                        "driver__PureISCSI__pure_eradicate_on_delete": false,
                        "driver__PureISCSI__pure_host_personality__transform_empty_none": "",
                        "driver__PureISCSI__pure_iscsi_cidr": "0.0.0.0/0",
                        "driver__PureISCSI__pure_replica_interval_default": 3600,
                        "driver__PureISCSI__pure_replica_retention_long_term_default": 7,
                        "driver__PureISCSI__pure_replica_retention_long_term_per_day_default": 3,
                        "driver__PureISCSI__pure_replica_retention_short_term_default": 14400,
                        "driver__PureISCSI__pure_replication_pg_name": "cinder-group",
                        "driver__PureISCSI__pure_replication_pod_name": "cinder-pod",
                        "driver__PureISCSI__san_ip": "",
                        "driver__PureISCSI__use_chap_auth": false,
                        "driver__QnapISCSI__chap_password": "",
                        "driver__QnapISCSI__chap_username": "",
                        "driver__QnapISCSI__driver_ssl_cert_verify": false,
                        "driver__QnapISCSI__qnap_management_url": "",
                        "driver__QnapISCSI__qnap_poolname": "",
                        "driver__QnapISCSI__qnap_storage_protocol": "iscsi",
                        "driver__QnapISCSI__san_login": "admin",
                        "driver__QnapISCSI__san_password": "",
                        "driver__QnapISCSI__target_ip_address": "$my_ip",
                        "driver__QnapISCSI__use_chap_auth": false,
                        "driver__Quobyte__quobyte_client_cfg": "",
                        "driver__Quobyte__quobyte_mount_point_base": "$state_path/mnt",
                        "driver__Quobyte__quobyte_overlay_volumes": false,
                        "driver__Quobyte__quobyte_qcow2_volumes": true,
                        "driver__Quobyte__quobyte_sparsed_volumes": true,
                        "driver__Quobyte__quobyte_volume_from_snapshot_cache": false,
                        "driver__Quobyte__quobyte_volume_url": "",
                        "driver__RBD__deferred_deletion_delay": 0,
                        "driver__RBD__deferred_deletion_purge_interval": 60,
                        "driver__RBD__enable_deferred_deletion": false,
                        "driver__RBD__rados_connect_timeout": -1,
                        "driver__RBD__rados_connection_interval": 5,
                        "driver__RBD__rados_connection_retries": 3,
                        "driver__RBD__rbd_ceph_conf": "",
                        "driver__RBD__rbd_cluster_name": "ceph",
                        "driver__RBD__rbd_exclusive_cinder_pool": false,
                        "driver__RBD__rbd_flatten_volume_from_snapshot": false,
                        "driver__RBD__rbd_keyring_conf": "",
                        "driver__RBD__rbd_max_clone_depth": 5,
                        "driver__RBD__rbd_pool": "rbd",
                        "driver__RBD__rbd_secret_uuid": "",
                        "driver__RBD__rbd_store_chunk_size": 4,
                        "driver__RBD__rbd_user": "",
                        "driver__RBD__report_dynamic_total_capacity": true,
                        "driver__RBD__volume_dd_blocksize": "1M",
                        "driver__RBDISCSI__deferred_deletion_delay": 0,
                        "driver__RBDISCSI__deferred_deletion_purge_interval": 60,
                        "driver__RBDISCSI__driver_ssl_cert_verify": false,
                        "driver__RBDISCSI__enable_deferred_deletion": false,
                        "driver__RBDISCSI__rados_connect_timeout": -1,
                        "driver__RBDISCSI__rados_connection_interval": 5,
                        "driver__RBDISCSI__rados_connection_retries": 3,
                        "driver__RBDISCSI__rbd_ceph_conf": "",
                        "driver__RBDISCSI__rbd_cluster_name": "ceph",
                        "driver__RBDISCSI__rbd_exclusive_cinder_pool": false,
                        "driver__RBDISCSI__rbd_flatten_volume_from_snapshot": false,
                        "driver__RBDISCSI__rbd_iscsi_api_debug": false,
                        "driver__RBDISCSI__rbd_iscsi_api_password": "",
                        "driver__RBDISCSI__rbd_iscsi_api_url": "",
                        "driver__RBDISCSI__rbd_iscsi_api_user": "",
                        "driver__RBDISCSI__rbd_iscsi_target_iqn": "",
                        "driver__RBDISCSI__rbd_max_clone_depth": 5,
                        "driver__RBDISCSI__rbd_pool": "rbd",
                        "driver__RBDISCSI__rbd_secret_uuid": "",
                        "driver__RBDISCSI__rbd_store_chunk_size": 4,
                        "driver__RBDISCSI__rbd_user": "",
                        "driver__RBDISCSI__report_dynamic_total_capacity": true,
                        "driver__RBDISCSI__suppress_requests_ssl_warnings": false,
                        "driver__RBDISCSI__volume_dd_blocksize": "1M",
                        "driver__RSD__podm_password": "",
                        "driver__RSD__podm_url": "",
                        "driver__RSD__podm_username": "",
                        "driver__SCFC__dell_api_async_rest_timeout": 15,
                        "driver__SCFC__dell_api_sync_rest_timeout": 30,
                        "driver__SCFC__dell_sc_api_port": 3033,
                        "driver__SCFC__dell_sc_server_folder": "openstack",
                        "driver__SCFC__dell_sc_ssn": 64702,
                        "driver__SCFC__dell_sc_verify_cert": false,
                        "driver__SCFC__dell_sc_volume_folder": "openstack",
                        "driver__SCFC__dell_server_os": "Red Hat Linux 6.x",
                        "driver__SCFC__excluded_domain_ips__transform_csv": "",
                        "driver__SCFC__included_domain_ips__transform_csv": "",
                        "driver__SCFC__secondary_san_ip": "",
                        "driver__SCFC__secondary_san_login": "Admin",
                        "driver__SCFC__secondary_san_password": "",
                        "driver__SCFC__secondary_sc_api_port": 3033,
                        "driver__SCISCSI__dell_api_async_rest_timeout": 15,
                        "driver__SCISCSI__dell_api_sync_rest_timeout": 30,
                        "driver__SCISCSI__dell_sc_api_port": 3033,
                        "driver__SCISCSI__dell_sc_server_folder": "openstack",
                        "driver__SCISCSI__dell_sc_ssn": 64702,
                        "driver__SCISCSI__dell_sc_verify_cert": false,
                        "driver__SCISCSI__dell_sc_volume_folder": "openstack",
                        "driver__SCISCSI__dell_server_os": "Red Hat Linux 6.x",
                        "driver__SCISCSI__excluded_domain_ips__transform_csv": "",
                        "driver__SCISCSI__included_domain_ips__transform_csv": "",
                        "driver__SCISCSI__secondary_san_ip": "",
                        "driver__SCISCSI__secondary_san_login": "Admin",
                        "driver__SCISCSI__secondary_san_password": "",
                        "driver__SCISCSI__secondary_sc_api_port": 3033,
                        "driver__SdsISCSI__backend_availability_zone": "",
                        "driver__SdsISCSI__chap_password": "",
                        "driver__SdsISCSI__chap_username": "",
                        "driver__SdsISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__SdsISCSI__driver_client_cert": "",
                        "driver__SdsISCSI__driver_client_cert_key": "",
                        "driver__SdsISCSI__driver_data_namespace": "",
                        "driver__SdsISCSI__driver_ssl_cert_path": "",
                        "driver__SdsISCSI__driver_ssl_cert_verify": false,
                        "driver__SdsISCSI__driver_use_ssl": false,
                        "driver__SdsISCSI__filter_function": "",
                        "driver__SdsISCSI__goodness_function": "",
                        "driver__SdsISCSI__iscsi_iotype": "fileio",
                        "driver__SdsISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__SdsISCSI__iscsi_target_flags": "",
                        "driver__SdsISCSI__iscsi_write_cache": "on",
                        "driver__SdsISCSI__num_shell_tries": 3,
                        "driver__SdsISCSI__num_volume_device_scan_tries": 3,
                        "driver__SdsISCSI__report_discard_supported": false,
                        "driver__SdsISCSI__storage_protocol": "iscsi",
                        "driver__SdsISCSI__target_helper": "tgtadm",
                        "driver__SdsISCSI__target_ip_address": "$my_ip",
                        "driver__SdsISCSI__target_port": 3260,
                        "driver__SdsISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__SdsISCSI__target_protocol": "iscsi",
                        "driver__SdsISCSI__trace_flags__transform_csv": "",
                        "driver__SdsISCSI__use_chap_auth": false,
                        "driver__SdsISCSI__volume_backend_name": "",
                        "driver__SdsISCSI__volume_clear": "zero",
                        "driver__SdsISCSI__volume_clear_ionice": "",
                        "driver__SdsISCSI__volume_clear_size": 0,
                        "driver__SdsISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__SdsISCSI__volume_copy_bps_limit": 0,
                        "driver__SdsISCSI__volume_dd_blocksize": "1M",
                        "driver__SdsISCSI__volumes_dir": "$state_path/volumes",
                        "driver__SolidFire__driver_ssl_cert_verify": false,
                        "driver__SolidFire__san_ip": "",
                        "driver__SolidFire__san_login": "admin",
                        "driver__SolidFire__san_password": "",
                        "driver__SolidFire__sf_account_prefix": "",
                        "driver__SolidFire__sf_allow_tenant_qos": false,
                        "driver__SolidFire__sf_api_port": 443,
                        "driver__SolidFire__sf_api_request_timeout": 30,
                        "driver__SolidFire__sf_cluster_pairing_timeout": 60,
                        "driver__SolidFire__sf_emulate_512": true,
                        "driver__SolidFire__sf_enable_vag": false,
                        "driver__SolidFire__sf_provisioning_calc": "maxProvisionedSpace",
                        "driver__SolidFire__sf_svip": "",
                        "driver__SolidFire__sf_volume_clone_timeout": 600,
                        "driver__SolidFire__sf_volume_create_timeout": 60,
                        "driver__SolidFire__sf_volume_pairing_timeout": 3600,
                        "driver__SolidFire__sf_volume_prefix": "UUID-",
                        "driver__StorPool__storpool_replication": 3,
                        "driver__StorPool__storpool_template": "",
                        "driver__StorwizeSVCFC__cycle_period_seconds": 300,
                        "driver__StorwizeSVCFC__storwize_peer_pool": "",
                        "driver__StorwizeSVCFC__storwize_preferred_host_site__transform_csv_kvs": "",
                        "driver__StorwizeSVCFC__storwize_san_secondary_ip": "",
                        "driver__StorwizeSVCFC__storwize_svc_allow_tenant_qos": false,
                        "driver__StorwizeSVCFC__storwize_svc_flashcopy_rate": 50,
                        "driver__StorwizeSVCFC__storwize_svc_flashcopy_timeout": 120,
                        "driver__StorwizeSVCFC__storwize_svc_mirror_pool": "",
                        "driver__StorwizeSVCFC__storwize_svc_multipath_enabled": false,
                        "driver__StorwizeSVCFC__storwize_svc_retain_aux_volume": false,
                        "driver__StorwizeSVCFC__storwize_svc_stretched_cluster_partner": "",
                        "driver__StorwizeSVCFC__storwize_svc_vol_autoexpand": true,
                        "driver__StorwizeSVCFC__storwize_svc_vol_compression": false,
                        "driver__StorwizeSVCFC__storwize_svc_vol_easytier": true,
                        "driver__StorwizeSVCFC__storwize_svc_vol_grainsize": 256,
                        "driver__StorwizeSVCFC__storwize_svc_vol_iogrp": "0",
                        "driver__StorwizeSVCFC__storwize_svc_vol_nofmtdisk": false,
                        "driver__StorwizeSVCFC__storwize_svc_vol_rsize": 2,
                        "driver__StorwizeSVCFC__storwize_svc_vol_warning": 0,
                        "driver__StorwizeSVCFC__storwize_svc_volpool_name__transform_csv": "volpool",
                        "driver__StorwizeSVCISCSI__cycle_period_seconds": 300,
                        "driver__StorwizeSVCISCSI__storwize_peer_pool": "",
                        "driver__StorwizeSVCISCSI__storwize_preferred_host_site__transform_csv_kvs": "",
                        "driver__StorwizeSVCISCSI__storwize_san_secondary_ip": "",
                        "driver__StorwizeSVCISCSI__storwize_svc_allow_tenant_qos": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_flashcopy_rate": 50,
                        "driver__StorwizeSVCISCSI__storwize_svc_flashcopy_timeout": 120,
                        "driver__StorwizeSVCISCSI__storwize_svc_iscsi_chap_enabled": true,
                        "driver__StorwizeSVCISCSI__storwize_svc_mirror_pool": "",
                        "driver__StorwizeSVCISCSI__storwize_svc_retain_aux_volume": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_stretched_cluster_partner": "",
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_autoexpand": true,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_compression": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_easytier": true,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_grainsize": 256,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_iogrp": "0",
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_nofmtdisk": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_rsize": 2,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_warning": 0,
                        "driver__StorwizeSVCISCSI__storwize_svc_volpool_name__transform_csv": "volpool",
                        "driver__SynoISCSI__chap_password": "",
                        "driver__SynoISCSI__chap_username": "",
                        "driver__SynoISCSI__driver_use_ssl": false,
                        "driver__SynoISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__SynoISCSI__synology_admin_port": 5000,
                        "driver__SynoISCSI__synology_device_id": "",
                        "driver__SynoISCSI__synology_one_time_pass": "",
                        "driver__SynoISCSI__synology_password": "",
                        "driver__SynoISCSI__synology_pool_name": "",
                        "driver__SynoISCSI__synology_ssl_verify": true,
                        "driver__SynoISCSI__synology_username": "admin",
                        "driver__SynoISCSI__target_ip_address": "$my_ip",
                        "driver__SynoISCSI__target_port": 3260,
                        "driver__SynoISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__SynoISCSI__target_protocol": "iscsi",
                        "driver__SynoISCSI__use_chap_auth": false,
                        "driver__Unity__remove_empty_host": false,
                        "driver__Unity__unity_io_ports__transform_csv": "",
                        "driver__Unity__unity_storage_pool_names__transform_csv": "",
                        "driver__VNX__default_timeout": 31536000,
                        "driver__VNX__destroy_empty_storage_group": false,
                        "driver__VNX__force_delete_lun_in_storagegroup": true,
                        "driver__VNX__ignore_pool_full_threshold": false,
                        "driver__VNX__initiator_auto_deregistration": false,
                        "driver__VNX__initiator_auto_registration": false,
                        "driver__VNX__io_port_list__transform_csv": "",
                        "driver__VNX__iscsi_initiators": "",
                        "driver__VNX__max_luns_per_storage_group": 255,
                        "driver__VNX__naviseccli_path": "",
                        "driver__VNX__storage_vnx_authentication_type": "global",
                        "driver__VNX__storage_vnx_pool_names__transform_csv": "",
                        "driver__VNX__storage_vnx_security_file_dir": "",
                        "driver__VNX__vnx_async_migrate": true,
                        "driver__VZStorage__vzstorage_default_volume_format": "raw",
                        "driver__VZStorage__vzstorage_mount_options__transform_csv": "",
                        "driver__VZStorage__vzstorage_mount_point_base": "$state_path/mnt",
                        "driver__VZStorage__vzstorage_shares_config": "/etc/cinder/vzstorage_shares",
                        "driver__VZStorage__vzstorage_sparsed_volumes": true,
                        "driver__VZStorage__vzstorage_used_ratio__transform_string_float": "0.95",
                        "driver__WindowsISCSI__windows_iscsi_lun_path": "C:\\iSCSIVirtualDisks",
                        "driver__WindowsSmbfs__smbfs_default_volume_format": "vhd",
                        "driver__WindowsSmbfs__smbfs_mount_point_base": "C:\\OpenStack\\_mnt",
                        "driver__WindowsSmbfs__smbfs_pool_mappings__transform_csv_kvs": "",
                        "driver__WindowsSmbfs__smbfs_shares_config": "C:\\OpenStack\\smbfs_shares.txt",
                        "driver__XtremIOFC__driver_ssl_cert_path": "",
                        "driver__XtremIOFC__driver_ssl_cert_verify": false,
                        "driver__XtremIOFC__san_ip": "",
                        "driver__XtremIOFC__san_login": "admin",
                        "driver__XtremIOFC__san_password": "",
                        "driver__XtremIOFC__xtremio_array_busy_retry_count": 5,
                        "driver__XtremIOFC__xtremio_array_busy_retry_interval": 5,
                        "driver__XtremIOFC__xtremio_clean_unused_ig": false,
                        "driver__XtremIOFC__xtremio_cluster_name": "",
                        "driver__XtremIOISCSI__driver_ssl_cert_path": "",
                        "driver__XtremIOISCSI__driver_ssl_cert_verify": false,
                        "driver__XtremIOISCSI__san_ip": "",
                        "driver__XtremIOISCSI__san_login": "admin",
                        "driver__XtremIOISCSI__san_password": "",
                        "driver__XtremIOISCSI__xtremio_array_busy_retry_count": 5,
                        "driver__XtremIOISCSI__xtremio_array_busy_retry_interval": 5,
                        "driver__XtremIOISCSI__xtremio_clean_unused_ig": false,
                        "driver__XtremIOISCSI__xtremio_cluster_name": "",
                        "driver__ZadaraVPSAISCSI__zadara_access_key": "",
                        "driver__ZadaraVPSAISCSI__zadara_default_snap_policy": false,
                        "driver__ZadaraVPSAISCSI__zadara_ssl_cert_verify": true,
                        "driver__ZadaraVPSAISCSI__zadara_use_iser": true,
                        "driver__ZadaraVPSAISCSI__zadara_vol_encrypt": false,
                        "driver__ZadaraVPSAISCSI__zadara_vol_name_template": "OS_%s",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_host": "",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_poolname": "",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_port": "",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_use_ssl": false
                      }
                    },
                    "sysFiles": {
                      "name": ""
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/embercsi/ember-csi-operator:latest
          createdAt: 2021-02-22:17:47:00
          description: Multi-vendor CSI plugin supporting 80+ storage drivers
          repository: https://github.com/embercsi/ember-csi-operator
          support: http://readthedocs.org/projects/ember-csi/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an Ember CSI storage backend
            displayName: Storage Backends
            kind: EmberStorageBackend
            name: embercsis.ember-csi.io
            version: v1alpha1
        description: |
          Ember-CSI is a multi-vendor CSI plugin driver supporting
          over 80 storage drivers in a single plugin to provide block and mount
          storage to container orchestration systems.

          The operator adds support for management of multiple Ember CSI instances
          within a cluster and simplifies storage backend deployments.

          ### Supported drivers
          Ember-CSI includes a good number of storage drivers, but due to limitation on hardware availability only a small number of them have been validated at one point or another. In alphabetical order they are:

          * HPE3PARFC
          * HPE3PARISCSI
          * KaminarioISCSI
          * LVMVolume
          * PowerMaxFC
          * PowerMaxISCSI
          * PureFC
          * PureISCSI
          * QnapISCSI
          * RBD
          * SolidFire
          * SynoISCSI
          * XtremIOFC
          * XtremIOISCSI

          ### Getting started
          Please have a look at our quick start documentation on how to get started:
          [github.com/embercsi/ember-csi-operator#quick-start](https://github.com/embercsi/ember-csi-operator#quick-start).
          We recommend to use the user friendly "Edit Form" when creating a new
          EmberStorageBackend. You'll find the link in the upper right corner of the
          editor.

          ### Documentation
          Documentation on Ember CSI itself can be found at [docs.ember-csi.io](http://docs.ember-csi.io/).

          ### Getting help
          Please contact us if you encounter any issues while using Ember CSI.
          Get in touch through the #ember-csi channel on Freenode, also accessible through
          [Kiwi IRC](https://kiwiirc.com/nextclient/irc.freenode.net/ember-csi).

          You can also create an issue on the [Github project](https://github.com/embercsi/ember-csi-operator)
          for bugs, enhancements, or other requests.
        displayName: Ember CSI Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Ember-CSI
        - CSI
        links:
        - name: Learn more about the project
          url: http://ember-csi.io/
        - name: Documentation
          url: http://readthedocs.org/projects/ember-csi/
        - name: Ember-CSI Source Code
          url: https://github.com/embercsi/ember-csi
        - name: Ember-CSI Operator Source Code
          url: https://github.com/embercsi/ember-csi-operator
        maintainers:
        - email: geguileo@redhat.com
          name: Gorka Eguileor
        - email: cschwede@redhat.com
          name: Christian Schwede
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/ember-csi-community-operator@sha256:5dce9b3018cfb300cd651c7980353cedc6617383d5c525e6a4a39ffb8e105774
        - quay.io/embercsi/ember-csi-operator:latest
        version: 0.9.9
      entries:
      - name: ember-csi-community-operator.v0.9.9
        version: 0.9.9
      - name: ember-csi-community-operator.v0.9.8
        version: 0.9.8
      - name: ember-csi-community-operator.v0.9.7
        version: 0.9.7
      name: beta
    defaultChannel: beta
    packageName: ember-csi-community-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NVIDIA
      provider-url: ""
    name: nim-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nim-operator-certified.v3.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMCache",
                "metadata": {
                  "name": "meta-llama3-8b-instruct",
                  "namespace": "nim-service"
                },
                "spec": {
                  "source": {
                    "ngc": {
                      "modelPuller": "nvcr.io/nim/meta/llama-3.1-8b-instruct@sha256:088a7f400286291e9c1512e326596f4caedd2ed7aa30b909d78cbd3727b55ee8",
                      "pullSecret": "ngc-secret",
                      "authSecret": "ngc-api-secret",
                      "model": {
                        "lora": false,
                        "precision": "fp16",
                        "engine": "tensorrt_llm",
                        "qosProfile": "throughput",
                        "gpus": [
                          {
                            "product": "a100",
                            "ids": []
                          }
                        ]
                      }
                    }
                  },
                  "storage": {
                    "pvc": {
                      "create": true,
                      "storageClass": "local-path",
                      "size": "50Gi",
                      "volumeAccessMode": "ReadWriteOnce"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMService",
                "metadata": {
                  "name": "meta-llama3-8b-instruct",
                  "namespace": "nim-service"
                },
                "spec": {
                  "image": {
                    "repository": "nvcr.io/nim/meta/llama-3.1-8b-instruct",
                    "tag": "1.3.3",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [
                      "ngc-secret"
                    ]
                  },
                  "authSecret": "ngc-api-secret",
                  "storage": {
                    "nimCache": {
                      "name": "meta-llama3-8b-instruct",
                      "profile": ""
                    }
                  },
                  "scale": {
                    "enabled": false,
                    "hpa": {
                      "minReplicas": 1,
                      "maxReplicas": 10
                    }
                  },
                  "resources": {
                    "limits": {
                      "nvidia.com/gpu": 1
                    }
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMPipeline",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "k8s-nim-operator",
                    "app.kubernetes.io/managed-by": "k8s-nim-operator"
                  },
                  "name": "nimpipeline-sample"
                },
                "spec": {
                  "services": [
                    {
                      "name": "meta-llama3-8b-instruct",
                      "enabled": true,
                      "spec": {
                        "image": {
                          "repository": "nvcr.io/nim/meta/llama-3.1-8b-instruct",
                          "tag": "1.3.3",
                          "pullPolicy": "IfNotPresent",
                          "pullSecrets": [
                            "ngc-secret"
                          ]
                        },
                        "authSecret": "ngc-api-secret",
                        "storage": {
                          "nimCache": {
                            "name": "meta-llama3-8b-instruct",
                            "profile": ""
                          }
                        },
                        "replicas": 1,
                        "resources": {
                          "limits": {
                            "nvidia.com/gpu": 1
                          }
                        },
                        "expose": {
                          "service": {
                            "type": "ClusterIP",
                            "port": 8000
                          }
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMBuild",
                "metadata": {
                  "name": "meta-llama3-8b-instruct",
                  "namespace": "nim-service"
                },
                "spec": {
                  "nimCache": {
                    "name": "meta-llama3-8b-instruct",
                    "profile": "7cc8597690a35aba19a3636f35e7f1c7e7dbc005fe88ce9394cad4a4adeed414"
                  },
                  "image": {
                    "repository": "nvcr.io/nim/meta/llama-3.1-8b-instruct",
                    "tag": "1.3.3",
                    "pullSecrets": [
                     "ngc-secret"
                    ]
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoCustomizer",
                "metadata": {
                  "name": "nemocustomizer-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "scheduler": {
                    "type": "volcano"
                  },
                  "wandb": {
                    "secretName": "wandb-secret",
                    "apiKeyKey": "apiKey",
                    "encryptionKey": "encryptionKey"
                  },
                  "otel": {
                    "enabled": true,
                    "exporterOtlpEndpoint": "http://customizer-otel-opentelemetry-collector.nemo.svc.cluster.local:4317"
                  },
                  "databaseConfig": {
                    "credentials": {
                      "user": "ncsuser",
                      "secretName": "customizer-pg-existing-secret",
                      "passwordKey": "password"
                    },
                    "host": "customizer-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "databaseName": "ncsdb"
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/customizer-api",
                    "tag": "25.08",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "entitystore": {
                    "endpoint": "http://nemoentitystore-sample.nemo.svc.cluster.local:8000"
                  },
                  "datastore": {
                    "endpoint": "http://nemodatastore-sample.nemo.svc.cluster.local:8000"
                  },
                  "mlflow": {
                    "endpoint": "http://mlflow-tracking.nemo.svc.cluster.local:80"
                  },
                  "nemoDatastoreTools": {
                    "image": "nvcr.io/nvidia/nemo-microservices/nds-v2-huggingface-cli@sha256:7958e5244217de8af0ed723dfe7ea8e291b3afbb2a0aa73f5c27b218a1149b11"
                  },
                  "modelDownloadJobs": {
                    "image": "nvcr.io/nvidia/nemo-microservices/customizer-api@sha256:c590fa19121af2aac0379933deace3991f27c3ef88a8043560d6e3a172273b0b",
                    "ngcAPISecret": {
                      "name": "ngc-api-secret",
                      "key": "NGC_API_KEY"
                    },
                    "securityContext": {
                      "fsGroup": 1000,
                      "runAsNonRoot": true,
                      "runAsUser": 1000,
                      "runAsGroup": 1000
                    },
                    "ttlSecondsAfterFinished": 600,
                    "pollIntervalSeconds": 15
                  },
                  "modelConfig": {
                    "name": "nemo-model-config"
                  },
                  "trainingConfig": {
                    "configMap": {
                      "name": "nemo-training-config"
                    },
                    "modelPVC": {
                      "create": true,
                      "name": "finetuning-ms-models-pvc",
                      "storageClass": "",
                      "volumeAccessMode": "ReadWriteOnce",
                      "size": 50
                    },
                    "workspacePVC": {
                      "storageClass": "local-path",
                      "volumeAccessMode": "ReadWriteOnce",
                      "size": 10,
                      "mountPath": "/pvc/workspace"
                    },
                    "image": {
                      "repository": "nvcr.io/nvidia/nemo-microservices/customizer",
                      "tag": "25.06"
                    },
                    "env": [
                      { "name": "LOG_LEVEL", "value": "INFO" }
                    ],
                    "networkConfig": [
                      { "name": "NCCL_IB_SL", "value": "0" },
                      { "name": "NCCL_IB_TC", "value": "41" },
                      { "name": "NCCL_IB_QPS_PER_CONNECTION", "value": "4" },
                      { "name": "UCX_TLS", "value": "TCP" },
                      { "name": "UCX_NET_DEVICES", "value": "eth0" },
                      { "name": "HCOLL_ENABLE_MCAST_ALL", "value": "0" },
                      { "name": "NCCL_IB_GID_INDEX", "value": "3" }
                    ],
                    "ttlSecondsAfterFinished": 3600,
                    "timeout": 3600,
                    "tolerations": [
                      {
                        "key": "nvidia.com/gpu",
                        "operator": "Exists",
                        "effect": "NoSchedule"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoGuardrail",
                "metadata": {
                  "name": "nemoguardrails-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "configStore": {
                    "pvc": {
                      "name": "pvc-guardrail-config",
                      "create": true,
                      "storageClass": "",
                      "volumeAccessMode": "ReadWriteOnce",
                      "size": "1Gi"
                    }
                  },
                  "nimEndpoint": {
                    "baseURL": "http://meta-llama3-1b-instruct.nemo.svc.cluster.local:8000/v1"
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/guardrails",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "metrics": {
                    "serviceMonitor": {}
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "ephemeral-storage": "10Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoEvaluator",
                "metadata": {
                  "name": "nemoevaluator-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "evaluationImages": {
                    "bigcodeEvalHarness": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-bigcode@sha256:62f74c32d1ed07925ddb906de8975025bf63d73e82e7faefb840339aaf21a9dc",
                    "lmEvalHarness": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-lm-eval-harness@sha256:58e7c3da7f1edfed2ff508fa8abab7660366c2c17bb55d17aa68159d6e16be6d",
                    "similarityMetrics": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-custom-eval@sha256:eb51edf668481d1f5d2b100c850958dadf184fd8779433e45da40fa2a35ec4b9",
                    "llmAsJudge": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-llm-as-a-judge@sha256:188916fce714453d48ff20d95e1ca09fc5520ccb6e9e8da7493948697e919055",
                    "mtBench": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-llm-as-a-judge@sha256:188916fce714453d48ff20d95e1ca09fc5520ccb6e9e8da7493948697e919055",
                    "retriever": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-retriever@sha256:cb99fb3ea5b4e9989832679d4c6028573c28b99e43744e008ac5c9748b7dd250",
                    "rag": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-rag@sha256:b5e35cf277185e0901a4bbba35780b3673be71ae2c5e8efcdbab7710a8a6f783",
                    "bfcl": "nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-bfcl@sha256:95f45f66140d481d544b36b16bc3de7ad5e090d76225fd73ed70461b9bd9907c",
                    "agenticEval": "nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-agentic-eval@sha256:b38bbc5e61df0930204efa096cf4f40db4655b92d03741190513b019d67fc7dc"
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/evaluator",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "argoWorkflows": {
                    "endpoint": "https://argo-workflows-server.nemo.svc.cluster.local:2746",
                    "serviceAccount": "argo-workflows-executor"
                  },
                  "vectorDB": {
                    "endpoint": "http://milvus.nemo.svc.cluster.local:19530"
                  },
                  "datastore": {
                    "endpoint": "http://nemodatastore-sample.nemo.svc.cluster.local:8000/v1/hf"
                  },
                  "entitystore": {
                    "endpoint": "http://nemoentitystore-sample.nemo.svc.cluster.local:8000"
                  },
                  "databaseConfig": {
                    "host": "evaluator-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "databaseName": "evaldb",
                    "credentials": {
                      "user": "evaluser",
                      "secretName": "evaluator-pg-existing-secret",
                      "passwordKey": "password"
                    }
                  },
                  "otel": {
                    "enabled": true,
                    "exporterOtlpEndpoint": "http://evaluator-otel-opentelemetry-collector.nemo.svc.cluster.local:4317"
                  },
                  "replicas": 1
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoEntitystore",
                "metadata": {
                  "name": "nemoentitystore-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/entity-store",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "databaseConfig": {
                    "databaseName": "nesdb",
                    "host": "entity-store-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "credentials": {
                      "user": "nesuser",
                      "secretName": "entity-store-pg-existing-secret",
                      "passwordKey": "password"
                    }
                  },
                  "datastore": {
                    "endpoint": "http://nemodatastore-sample.nemo.svc.cluster.local:8000"
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoDatastore",
                "metadata": {
                  "name": "nemodatastore-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "secrets": {
                    "datastoreConfigSecret": "nemo-ms-nemo-datastore",
                    "datastoreInitSecret": "nemo-ms-nemo-datastore-init",
                    "datastoreInlineConfigSecret": "nemo-ms-nemo-datastore-inline-config",
                    "giteaAdminSecret": "gitea-admin-credentials",
                    "lfsJwtSecret": "nemo-ms-nemo-datastore--lfs-jwt"
                  },
                  "databaseConfig": {
                    "credentials": {
                      "user": "ndsuser",
                      "secretName": "datastore-pg-existing-secret",
                      "passwordKey": "password"
                    },
                    "host": "datastore-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "databaseName": "ndsdb"
                  },
                  "pvc": {
                    "name": "pvc-shared-data",
                    "create": true,
                    "storageClass": "",
                    "volumeAccessMode": "ReadWriteOnce",
                    "size": "10Gi"
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/datastore",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "replicas": 1,
                  "resources": {
                    "requests": {
                      "memory": "256Mi",
                      "cpu": "500m"
                    },
                    "limits": {
                      "memory": "512Mi",
                      "cpu": "1"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          certified: "true"
          containerImage: nvcr.io/nvidia/cloud-native/k8s-nim-operator@sha256:fadaed25df7d447d9141dc69a25c90a18f7799d47ca6e231805eff5b4e6c4907
          createdAt: Tue Sep  9 12:58:18 PDT 2025
          description: An Operator for deployment and maintenance of NVIDIA NIMs and
            NeMo microservices in a Kubernetes environment
          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: "true"
          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"
          k8sMinVersion: 1.26.0
          repository: github.com/NVIDIA/k8s-nim-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NIM Cache
            displayName: NIMCache
            kind: NIMCache
            name: nimcaches.apps.nvidia.com
            version: v1alpha1
          - description: NIM Service
            displayName: NIMService
            kind: NIMService
            name: nimservices.apps.nvidia.com
            version: v1alpha1
          - description: NIM Pipeline
            displayName: NIMPipeline
            kind: NIMPipeline
            name: nimpipelines.apps.nvidia.com
            version: v1alpha1
          - description: NIM Build
            displayName: NIMBuild
            kind: NIMBuild
            name: nimbuilds.apps.nvidia.com
            version: v1alpha1
          - description: NEMO guardrail Service
            displayName: NemoGuardrail
            kind: NemoGuardrail
            name: nemoguardrails.apps.nvidia.com
            version: v1alpha1
          - description: NEMO datastore Service
            displayName: NemoDatastore
            kind: NemoDatastore
            name: nemodatastores.apps.nvidia.com
            version: v1alpha1
          - description: NEMO Eval Service
            displayName: NemoEvaluator
            kind: NemoEvaluator
            name: nemoevaluators.apps.nvidia.com
            version: v1alpha1
          - description: NEMO Customizer Service
            displayName: NemoCustomizer
            kind: NemoCustomizer
            name: nemocustomizers.apps.nvidia.com
            version: v1alpha1
          - description: NEMO Entitystore Service
            displayName: NemoEntitystore
            kind: NemoEntitystore
            name: nemoentitystores.apps.nvidia.com
            version: v1alpha1
        description: |-
          ## NVIDIA NIM Operator
          The NVIDIA NIM Operator enables Kubernetes cluster administrators to operate the software components and services necessary to run NVIDIA NIMs in various domains such as reasoning, retrieval, speech, and biology. Additionally, it allows the use of NeMo Microservices to fine-tune, evaluate, or apply guardrails to your models.
          The Operator manages the life cycle of the following microservices and the models they use:
          ### NVIDIA NIM models, such as:
          * Reasoning LLMs
          * Retrieval - Embedding, Reranking, etc.
          * Speech
          * Biology
          ### NeMo core microservices:
          * NeMo Customizer
          * NeMo Evaluator
          * NeMo Guardrails
          ### NeMo platform component microservices:
          * NeMo Data Store
          * NeMo Entity Store
        displayName: The NVIDIA NIM Operator for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        links:
        - name: NVIDIA NIM
          url: https://docs.nvidia.com/nim/index.html
        - name: Documentation
          url: https://docs.nvidia.com/nim-operator/latest
        maintainers:
        - email: operator_feedback@nvidia.com
          name: shivamerla
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: NVIDIA
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-nim-operator@sha256:fadaed25df7d447d9141dc69a25c90a18f7799d47ca6e231805eff5b4e6c4907
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-lm-eval-harness@sha256:58e7c3da7f1edfed2ff508fa8abab7660366c2c17bb55d17aa68159d6e16be6d
        - nvcr.io/nim/meta/llama-3.1-8b-instruct@sha256:088a7f400286291e9c1512e326596f4caedd2ed7aa30b909d78cbd3727b55ee8
        - nvcr.io/nvidia/nemo-microservices/customizer-api@sha256:c590fa19121af2aac0379933deace3991f27c3ef88a8043560d6e3a172273b0b
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-custom-eval@sha256:eb51edf668481d1f5d2b100c850958dadf184fd8779433e45da40fa2a35ec4b9
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-llm-as-a-judge@sha256:188916fce714453d48ff20d95e1ca09fc5520ccb6e9e8da7493948697e919055
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-retriever@sha256:cb99fb3ea5b4e9989832679d4c6028573c28b99e43744e008ac5c9748b7dd250
        - nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-agentic-eval@sha256:b38bbc5e61df0930204efa096cf4f40db4655b92d03741190513b019d67fc7dc
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-rag@sha256:b5e35cf277185e0901a4bbba35780b3673be71ae2c5e8efcdbab7710a8a6f783
        - registry.connect.redhat.com/nvidia/nim-operator-bundle@sha256:eda9683cfd147b61ce97088841495ef729004cf649f9c6bb704289ba5670e0d9
        - nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-bfcl@sha256:95f45f66140d481d544b36b16bc3de7ad5e090d76225fd73ed70461b9bd9907c
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-bigcode@sha256:62f74c32d1ed07925ddb906de8975025bf63d73e82e7faefb840339aaf21a9dc
        - nvcr.io/nvidia/nemo-microservices/nds-v2-huggingface-cli@sha256:7958e5244217de8af0ed723dfe7ea8e291b3afbb2a0aa73f5c27b218a1149b11
        version: 3.0.2
      entries:
      - name: nim-operator-certified.v3.0.2
        version: 3.0.2
      - name: nim-operator-certified.v3.0.1
        version: 3.0.1
      - name: nim-operator-certified.v3.0.0
        version: 3.0.0
      - name: nim-operator-certified.v2.0.2
        version: 2.0.2
      - name: nim-operator-certified.v2.0.1
        version: 2.0.1
      - name: nim-operator-certified.v2.0.0
        version: 2.0.0
      - name: nim-operator-certified.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: stable
    packageName: nim-operator-certified
    provider:
      name: NVIDIA
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Jason Skrzypek
      provider-url: https://github.com/shpwrck
    name: openshift-node-upgrade-mutex-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-node-upgrade-mutex-operator.v0.2.66
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "openshift-optional.skrzypek.io/v1alpha1",
                "kind": "MutexRule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "openshift-node-upgrade-mutex-operator",
                    "app.kubernetes.io/instance": "mutexrule-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mutexrule",
                    "app.kubernetes.io/part-of": "openshift-node-upgrade-mutex-operator"
                  },
                  "name": "mutexrule-sample"
                },
                "spec": {
                  "jobName": "example",
                  "jobNamespace": "node-upgrade-mutex-operator",
                  "jobSpec": {
                    "selector": {},
                    "template": {
                      "metadata": {
                        "name": "mutex"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              "20"
                            ],
                            "image": "ubi9/toolbox",
                            "name": "mutex"
                          }
                        ],
                        "restartPolicy": "Never"
                      }
                    }
                  },
                  "type": "kubernetes"
                }
              },
              {
                "apiVersion": "openshift-optional.skrzypek.io/v1alpha1",
                "kind": "MutexRunConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "openshift-node-upgrade-mutex-operator",
                    "app.kubernetes.io/instance": "mutexrunconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mutexrunconfig",
                    "app.kubernetes.io/part-of": "openshift-node-upgrade-mutex-operator"
                  },
                  "name": "mutexrunconfig-sample"
                },
                "spec": {
                  "canary": {
                    "name": "canary-example"
                  },
                  "mutexRules": [
                    {
                      "name": "mutexrule-sample",
                      "namespace": "node-upgrade-mutex-operator"
                    }
                  ],
                  "mutexTargets": [
                    {
                      "name": "mutextarget-sample",
                      "namespace": "node-upgrade-mutex-operator"
                    }
                  ]
                }
              },
              {
                "apiVersion": "openshift-optional.skrzypek.io/v1alpha1",
                "kind": "MutexTarget",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "openshift-node-upgrade-mutex-operator",
                    "app.kubernetes.io/instance": "mutextarget-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mutextarget",
                    "app.kubernetes.io/part-of": "openshift-node-upgrade-mutex-operator"
                  },
                  "name": "mutextarget-sample"
                },
                "spec": {
                  "machineConfigPools": [
                    "worker"
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/jskrzypek/openshift-node-upgrade-mutex-operator
          createdAt: "2025-05-30T17:49:00Z"
          description: |
            This software injects required operations into the worker node upgrade process.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: node-upgrade-mutex-operator
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          provider: Jason Skrzypek
          repository: https://github.com/shpwrck/openshift-upgrade-rollout-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A node mutex rule definition in the form of a kubernetes
              job spec
            displayName: Mutex Rule
            kind: MutexRule
            name: mutexrules.openshift-optional.skrzypek.io
            version: v1alpha1
          - description: Lists of Targets and Rules to apply to them, as well as an
              upgrade facilitating Machine Config Pool
            displayName: Mutex Run Config
            kind: MutexRunConfig
            name: mutexrunconfigs.openshift-optional.skrzypek.io
            version: v1alpha1
          - description: A list of Machine Config Pools to enforce upgrade procedure.
            displayName: Mutex Target
            kind: MutexTarget
            name: mutextargets.openshift-optional.skrzypek.io
            version: v1alpha1
        description: |
          ## Introduction

          This operator injects required operations in the form of a Kubernetes job into the worker node upgrade process using MachineConfigPools. In short, when provided a list of operations (`MutexRules`) and a list of MachineConfigPools (`MutexTargets`) , the OpenShift Node Upgrade Mutex Operator will execute each operation for a given target, enable updates for the given target by modifying it's MachineConfigPool membership, and wait until the node has been upgraded before proceeding onto subsequent operations and targets.

          ## Dependencies

          ### Release Version Label

          In order to confirm the successful upgrade of each target node, the NFD Operator is used to generate a version feature on every worker node. In order to proceed through given targets, each node must have this label
          `'machineconfiguration.openshift.io/release-image-version'` with a key providing the semantic version of this node (e.g. `'4.16.4'`)

          There are several ways to accomplish this, but an example MachineConfig has been provided [here](https://github.com/shpwrck/openshift-node-upgrade-mutex-operator/blob/main/machineconfig.yaml).

          ### Canary Machine Config Pool

          In addition to node labels, a MachineConfigPool that will be used to accomodate targets subject to upgrades must be provided matching the following criteria:
          * selects only worker nodes
          * is not paused

          Applying the example below will create a compatible canary pool:

          ```yaml
          ---
          apiVersion: machineconfiguration.openshift.io/v1
          kind: MachineConfigPool
          metadata:
            name: canary
          spec:
            machineConfigSelector:
              matchLabels:
                machineconfiguration.openshift.io/role: worker
            nodeSelector:
              matchLabels:
                node-role.kubernetes.io/worker: ''
              matchExpressions:
                - key: 'isCanary'
                  operator: Exists
            paused: false
          ```

          ## Usage / Custom Resources Definitions

          #### MutexRule:

          A resource storing a single rule referring to a template for a Kubernetes job to be created.
          This resource **does not** modify existing resources.

          ```yaml
          ---
          apiVersion: openshift-optional.skrzypek.io/v1alpha1
          kind: MutexRule
          metadata:
            name: k8s-example
          spec:
            jobName: "example" # Jobs will be run with this prefix name
            jobNamespace: "node-upgrade-mutex-operator" # Jobs will be run in this namespace
            jobSpec: # Accepts full 'batch/v1' job spec
              selector: {}
              template:
                metadata:
                  name: mutex
                spec:
                  containers:
                  - command:
                    - sleep
                    args:
                    - "30"
                    image: ubi9/toolbox
                    name: mutex
                  restartPolicy: Never
            cleanUpJobSpec: # Accepts full 'batch/v1' job spec (Optional)
              selector: {}
              template:
                metadata:
                  name: mutex
                spec:
                  containers:
                  - command:
                    - sleep
                    args:
                    - "30"
                    image: ubi9/toolbox
                    name: mutex
                  restartPolicy: Never
            type: kubernetes
          ```

          #### MutexTarget:

          A resource storing a set of MachineConfigPools to pause and incrementally upgrade.
          This resource **does not** modify existing resources.

          ```yaml
          ---
          apiVersion: openshift-optional.skrzypek.io/v1alpha1
          kind: MutexTarget
          metadata:
            name: worker-example
          spec:
            machineConfigPools:
              - worker # Name of existing machineconfigpool
          ```

          #### MutexRunConfig:

          A resource that references existing MutexRules and MutexTargets as well as an existing MachineConfigPool that will allow members to be upgraded. Every rule defined in the `mutexRules` list will be added as a mandatory task to every node that is a member of the each MachineConfigPool defined in the `mutexTargets` list.
          This resource **does** modify existing resources.

          ```yaml
          apiVersion: openshift-optional.skrzypek.io/v1alpha1
          kind: MutexRunConfig
          metadata:
            name: example
          spec:
            skipTLSVerify: false # Defaults to false if omitted
            canary:
              name: canary # Name of unpaused machineconfigpool to modify
            mutexRules: # List of existing mutexRules
              - name: k8s-example
                namespace: node-upgrade-mutex-operator
            mutexTargets: # List of existing mutexTargets
              - name: worker-example
                namespace: node-upgrade-mutex-operator
          ```

          ## Procedure

          #### MutexRule

          1. Upon creation/modification, the schema of each K8s rule is validated.
          2. Status is updated to indicate valid or invalid configuration.

          #### MutexTargets

          1. Upon creation/modification, the existence of each target is validated.
          2. Status is updated to indicate valid or invalid configuration.
          3. The nodes assigned to each target are added to the status field `nodes`.

          #### MutexRunConfigs

          1. Upon creation/modification, the existence as well as validation status of each rule, target, and canary pool is confirmed.
          2. If valid, the existence of an upgrade is queried. An upgrade is available if the following is true:
              * The `status.history` of the `cluster` ClusterVersion equals `Completed`
              * The `release-image-version` of any worker node is less than the `spec.desiredUpdate.version` of the `cluster` ClusterVersion.
          3. If an update exists, each target MachineConfigPool has `spec.paused` set to `true`.
          4. If each pool is paused, each node is updated to include a label for each rule with the following format:
              * `mutexrule.openshift-optional.skrzypek.io/{{MutexRule_Name}}.{{MutexRule_Namespace}}`
          5. If labels have been applied, the provided canary pool is modified to exclude nodes with labels provided by step (4).
          6. Assuming steps (2-5) have completed successfully, then the process for running jobs and updating nodes begins. The process per node is as follows:
              * Launch each K8S job sequentially
              * Remove the current node's rule labels
              * Wait until the `release-image-version` of the node matches the `spec.desiredUpdate.version` of the `cluster` ClusterVersion
              * Launch each K8S cleanup job sequentially
          7. If the update succeeds, all machine config pools are unpaused and all match expressions are removed.

          ## Permissions Granted

          In addition to the permissions required to operate the included CRDs, the following access is granted to the operator's service account.

          | Resource | Permissions |
          | :---: | :---: |
          | Jobs | Create & Read |
          | Nodes | Read & Update |
          | ClusterVersion | Read |
          | MachineConfigPools | Read & Update |

          ## Notes

          * This operator was built using the operator-sdk's ansible plugin and therefore has all of the inherited capabilities and restrictions.
          * This operator has undergone minimal testing and should not be run in production environments without acknowledging the risks.
          * This operator is currently alpha and subject to change based on requirements.

          ## Additional Information
          For additional information refer to the [GitHub Repository](https://github.com/shpwrck/openshift-node-upgrade-mutex-operator)
        displayName: OpenShift Node Upgrade Mutex Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - OpenShift Optional
        - Upgrade
        - Mutex
        links:
        - name: Openshift Node Upgrade Mutex Operator
          url: https://github.com/shpwrck/openshift-node-upgrade-mutex-operator
        maintainers:
        - email: jskrzype@redhat.com
          name: Jason Skrzypek
        maturity: alpha
        minKubeVersion: 1.27.0
        provider:
          name: Jason Skrzypek
          url: https://github.com/shpwrck
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d8cc6ffb98190e8dd403bfe67ddcb454e6127d32b87acc237b3e5240f70a20fb
        - quay.io/community-operator-pipeline-prod/openshift-node-upgrade-mutex-operator@sha256:5ac79c9193934440464a595434fe4241e038505d32650843afcad5f5bc2ce8a7
        - quay.io/jskrzypek/openshift-node-upgrade-mutex-operator@sha256:d4c28e8b256c00429d9999595c2386f1a25de597ee8e6c33871bb7b22b84c4af
        version: 0.2.66
      entries:
      - name: openshift-node-upgrade-mutex-operator.v0.2.66
        version: 0.2.66
      - name: openshift-node-upgrade-mutex-operator.v0.2.65
        version: 0.2.65
      - name: openshift-node-upgrade-mutex-operator.v0.2.60
        version: 0.2.60
      - name: openshift-node-upgrade-mutex-operator.v0.2.59
        version: 0.2.59
      - name: openshift-node-upgrade-mutex-operator.v0.2.53
        version: 0.2.53
      - name: openshift-node-upgrade-mutex-operator.v0.2.38
        version: 0.2.38
      - name: openshift-node-upgrade-mutex-operator.v0.2.34
        version: 0.2.34
      - name: openshift-node-upgrade-mutex-operator.v0.2.15
        version: 0.2.15
      - name: openshift-node-upgrade-mutex-operator.v0.2.14
        version: 0.2.14
      - name: openshift-node-upgrade-mutex-operator.v0.1.22
        version: 0.1.22
      name: alpha
    defaultChannel: alpha
    packageName: openshift-node-upgrade-mutex-operator
    provider:
      name: Jason Skrzypek
      url: https://github.com/shpwrck
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: costmanagement-metrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: costmanagement-metrics-operator.4.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
                "kind": "CostManagementMetricsConfig",
                "metadata": {
                  "name": "costmanagementmetricscfg-sample-v1beta1"
                },
                "spec": {
                  "authentication": {
                    "type": "token"
                  },
                  "packaging": {
                    "max_reports_to_store": 30,
                    "max_size_MB": 100
                  },
                  "prometheus_config": {
                    "collect_previous_data": true,
                    "context_timeout": 120,
                    "disable_metrics_collection_cost_management": false,
                    "disable_metrics_collection_resource_optimization": false
                  },
                  "source": {
                    "check_cycle": 1440,
                    "create_source": false,
                    "name": ""
                  },
                  "upload": {
                    "upload_cycle": 360,
                    "upload_toggle": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          certified: "true"
          containerImage: registry.redhat.io/costmanagement/costmanagement-metrics-rhel9-operator@sha256:e4457d0a4c77e95f46637e41044f45049fe03e818db82fabef06bd95c723778b
          createdAt: "2025-11-11T14:26:15Z"
          description: A Golang-based OpenShift Operator that generates and uploads
            OpenShift usage metrics to cost management.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
              "kind": "CostManagementMetricsConfig",
              "metadata": {
                "name": "costmanagementmetricscfg-sample-v1beta1"
              },
              "spec": {
                "authentication": {
                  "token_url": "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token",
                  "type": "token"
                },
                "api_url": "https://console.redhat.com/",
                "packaging": {
                  "max_reports_to_store": 30,
                  "max_size_MB": 100
                },
                "upload": {
                  "ingress_path": "/api/ingress/v1/upload",
                  "upload_cycle": 360,
                  "upload_toggle": true,
                  "validate_cert": true
                },
                "prometheus_config": {
                  "collect_previous_data": true,
                  "context_timeout": 120,
                  "disable_metrics_collection_cost_management": false,
                  "disable_metrics_collection_resource_optimization": false,
                  "service_address": "https://thanos-querier.openshift-monitoring.svc:9091",
                  "skip_tls_verification": false
                },
                "source": {
                  "check_cycle": 1440,
                  "create_source": false,
                  "name": "",
                  "sources_path": "/api/sources/v1.0/"
                }
              }
            }
          operatorframework.io/suggested-namespace: costmanagement-metrics-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/project-koku/koku-metrics-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CostManagementMetricsConfig is the Schema for the costmanagementmetricsconfig
              API
            displayName: Cost Management Metrics Config
            kind: CostManagementMetricsConfig
            name: costmanagementmetricsconfigs.costmanagement-metrics-cfg.openshift.io
            version: v1beta1
        description: |
          # Cost Management Metrics Operator
          ## Introduction
          The `costmanagement-metrics-operator` is a component of the [cost managment](https://access.redhat.com/documentation/en-us/cost_management_service) service for Openshift. The operator runs on the latest supported versions of Openshift. This operator obtains OpenShift usage data by querying Prometheus every hour to create metric reports that it uploads to Cost Management at [console.redhat.com](https://console.redhat.com) to be processed. For more information, reach out to <costmanagement@redhat.com>.

          This operator is capable of functioning within a disconnected/restricted network (aka air-gapped mode). In this mode, the operator will store the packaged reports for manual retrieval instead of being uploaded to Cost Management. Documentation for installing an operator within a restricted network can be found [here](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html).

          ## Features and Capabilities
          #### Metrics collection:
          The Cost Management Metrics Operator (`costmanagement-metrics-operator`) collects the metrics required for Cost Management by:
          * Querying Prometheus to gather the necessary metrics for Cost Management.
          * Writing the results of Prometheus queries to CSV report files.
          * Packaging the CSV report files into tarballs.

          #### Additional Capabilities:
          * Resource Optimization metrics collection.
          * The operator can be configured to gather all previous data within the configured retention period or a maximum of 90 days. The default data collection period is the 14 previous days. This setting is only applicable to newly created CostManagementMetricsConfigs.
          * The operator can be configured to automatically upload the packaged reports to Cost Management through Red Hat Insights Ingress service.
          * The operator can create an integration in console.redhat.com. An integration is required for Cost Management to process the uploaded packages.
          * PersistentVolumeClaim (PVC) configuration: The CostManagementMetricsConfig CR can accept a PVC definition and the operator will create and mount the PVC. If one is not provided, a default PVC will be created.
          * Restricted network installation: this operator can function on a restricted network. In this mode, the operator stores the packaged reports for manual retrieval.

          ## New in v4.3.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for cost management.

          ## New in v4.2.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for resource optimization.
          * (Bugfix) Fixed custom CA certificate validation and configuration issues.
          * (Bugfix) Fixed issue where ROS queries were missing workload metadata for namespaces labeled only with the legacy `insights_cost_management_optimizations` label.

          ## New in v4.1.0:
          * Enabled gathering and reporting namespace metrics to provide more granular data for resource optimization.
          * Updated CSV report filenames to be more descriptive, replacing the previous generic UID-based names with content-reflective names.
          * Introduced a new generic label, `cost_management_optimizations`, for resource optimization while ensuring backward compatibility with the older `insights_cost_management_optimizations` label.

          ## New in v4.0.0:
          * **Virtual Machine Metrics:** Adds capabilities for collecting metrics and generating reports for running virtual machines within your OpenShift environment.
          * **FIPS Compliance:** Supports deployment in high-security environments when run on an OpenShift cluster with FIPS mode enabled.

          ## New in v3.3.2:
          * Leader election settings are now configurable via environment variables. These variables can be modified in the operator [Subscription](https://github.com/operator-framework/operator-lifecycle-manager/blob/5a01f50258003e248bd5630df0837fe0bb0f1cb7/doc/design/subscription-config.md). The values should be specified as durations in seconds in the format `<number-of-seconds>s`. The default values for `LEADER_ELECTION_LEASE_DURATION`, `LEADER_ELECTION_RENEW_DEADLINE`, and `LEADER_ELECTION_RETRY_PERIOD` are '60s', '30s', and '5s', respectively.

            ```
            kind: Subscription
            metadata:
            ...
            spec:
              ...
              config:
                env:
                - name: LEADER_ELECTION_LEASE_DURATION
                  value: "60s"
                - name: LEADER_ELECTION_RENEW_DEADLINE
                  value: "30s"
                - name: LEADER_ELECTION_RETRY_PERIOD
                  value: "5s"
            ```

          ## New in v3.3.1:
          * Optimize memory usage when reading CSV files.

          ## New in v3.3.0:
          * Storage reports now contain `node`, `csi_driver`, and `csi_volume_handle` fields.
          * The PVC capacity is now populated using the `kube_persistentvolume_capacity_bytes` metric instead of `kubelet_volume_stats_capacity_bytes`.
          * To receive resource optimization recommendations for your namespaces, you must now first enable each namespace. To enable a namespace, label it with `insights_cost_management_optimizations='true'`. In the CLI, run:
            ```
              oc label namespace NAMESPACE insights_cost_management_optimizations="true" --overwrite=true
            ```
          * __DEPRECATION NOTICE__: Basic authentication is deprecated and will not be supported beyond December 31, 2024. If the default token authentication method cannot be used, you must switch to [service account](https://console.redhat.com/iam/service-accounts) authentication ([more on creating a service account](https://access.redhat.com/articles/7036194)). Once you have created your service account, follow [this documentation](https://access.redhat.com/documentation/en-us/cost_management_service/1-latest/html-single/integrating_openshift_container_platform_data_into_cost_management/index#service-account-authentication_adding-an-ocp-int) on how to configure your operator to use service account authentication. Service-accounts must also be used if manually uploading payloads to console.redhat.com.

          ## New in v3.2.1:
          * The minimum supported configuration for `upload_cycle` is now 60 (minutes).
          * (Bugfix) many-to-many matching not allowed query fix.
          * (Bugfix) Sequentially collect data during initial install.

          ## New in v3.2.0:
          * Support for amd64, arm64, ppc64le, s390x architectures.
          * add liveness and readiness probes to controller Pod.
          * update pod security settings so that the controller Pod can run in Restricted mode [more info](https://sdk.operatorframework.io/docs/best-practices/pod-security-standards/).

          ## New in v3.1.0:
          * Add service-account authentication type.
          * __Deprecation Notice:__ Basic authentication is deprecated and will be removed in a future version of the operator.

          ## New in v3.0.0:
          * Daily report generation: Operator versions prior to v3.0.0 generated sequential reports. Now, reports are generated starting at 0:00 UTC. Any payloads generated throughout a given day will contain all data starting from 0:00 UTC. Once the next day starts, the previous day's reports are packaged, and the new report again starts at 0:00 UTC for the current day.
          * Failed query retry: In an attempt to prevent missing data, the operator will retry queries from the last successful query time, up to 5 times.

          ## New in v2.0.0:
          * Adds metrics and report generation for resource optimization. This feature will collect additional usage metrics and create a new report in the payload. These metrics are enabled by default, but can be disabled by setting `disable_metrics_collection_resource_optimization` to `true`.
          * Collect all available Prometheus data upon CR creation. This feature only applies to newly created CostManagementMetricsConfigs. The operator will check the monitoring stack configuration in the `openshift-monitoring` namespace. The operator will use the `retention` period set in the `cluster-monitoring-config` ConfigMap if defined, up to a maximum of 90 days. Otherwise it will fall back to collecting 14 days of data, if available. This data collection may be disabled by setting `collect_previous_data` to `false`. Turning this feature off results in the operator collecting metrics from the time the CostManagementMetricsConfig is created, forward.

          ## Limitations and Pre-Requisites
          #### Limitations (Potential for metrics data loss)
          * An integration **must** exist in console.redhat.com for an uploaded payload to be processed by Cost Management. The operator sends the payload to the Red Hat Insights Ingress service which usually returns successfully, but the operator does not currently confirm with Cost Management that the payload was processed. After Ingress accepts the uploaded payload, it is deleted from the operator. If the data within the payload is not processed, a gap will be introduced in the usage metrics. Data may be recollected by deleting the `CostManagementMetricsConfig`, creating a new `CostManagementMetricsConfig`, and setting `collect_previous_data: true`. This re-collection of data will gather all data stored in Prometheus, up to 90 days.

          **Note** The following limitations are specific to operators configured to run in a restricted network:
          * The `costmanagement-metrics-operator` will not be able to generate new reports if the PVC storage is full. If this occurs, the reports must be manually deleted from the PVC so that the operator can function as normal.
          * The default report retention is 30 reports (about one week's worth of data). The reports must be manually downloaded and uploaded to console.redhat.com every week, or they will be deleted and the data will be lost.

          #### Storage configuration prerequisite
          The operator will attempt to create and use the following PVC when installed:

                volume_claim_template:
                  apiVersion: v1
                  kind: PersistentVolumeClaim
                  metadata:
                    name: costmanagement-metrics-operator-data
                  spec:
                    accessModes:
                      - ReadWriteOnce
                    resources:
                      requests:
                        storage: 10Gi

          If a different PVC should be utilized, a valid PVC should be specified in the CostManagementMetricsConfig CR as described in the appropriate section below. The PVC to be used may exist already, or the operator will attempt to create it.

          To use the default specification, the follow assumptions must be met:
          1. A default StorageClass is defined.
          2. Dynamic provisioning for that default StorageClass is enabled.

          If these assumptions are not met, the operator will not deploy correctly. In these cases, storage must be manually configured. After configuring storage, a valid PVC template should be supplied in the `volume_claim_template` spec of the CostManagementMetricsConfig CR.

          ## Configurable parameters:
            * `authentication`:
              * `type: token` -> The authentication method for connecting to `console.redhat.com`. The default and preferred method is `token`. `basic` (deprecated) and `service-account` authentication methods are used when the openshift-config pull-secret does not contain a token for `console.redhat.com`.
              * `secret_name` -> The Secret used by the operator when the authentication type is `basic` (deprecated) or `service-account`. This parameter is required **only if** the authentication type is `basic` (deprecated) or `service-account`.
            * `packaging`:
              * `max_reports_to_store: 30` -> The number of reports to store when configured in air-gapped mode. The default is 30, with a minimum of 1 and no maximum. When the operator is not configured in air-gapped mode, this parameter has no effect. Reports are removed as soon as they are uploaded.
              * `max_size: 100` -> The maximum size for packaged files in Megabytes prior to compression. The default is 100, with a minimum of 1 and maximum of 100.
            * `prometheus_config`:
              * `collect_previous_data: true` -> Toggle for collecting all available data in Prometheus **upon CostManagementMetricsConfig creation** (This parameter will start to appear in CostManagementMetricsConfigs that were created prior to v2.0.0 but will not have any effect unless the CostManagementMetricsConfig is deleted and recreated). The default is `true`. The operator will first look for a `retention` period in the `cluster-monitoring-config` ConfigMap in the `openshift-monitoring` namespace and gather data over this time period up to a maximum of 90 days. If this configuration is not set, the default is 14 days. (New in v2.0.0)
              * `disable_metrics_collection_cost_management: false` -> Toggle for disabling the collection of metrics for Cost Management. The default is false. (New in v2.0.0)
              * `disable_metrics_collection_resource_optimization: false` -> Toggle for disabling the collection of metrics for Resource Optimization. The default is false. (New in v2.0.0)
              * `context_timeout: 120` -> The time in seconds before Prometheus queries timeout due to exceeding context timeout. The default is 120, with a minimum of 10 and maximum of 180.
            * `source`:
              * `name: ''` -> The name of the integration the operator will create in `console.redhat.com`. If the name value is empty, the default intergration name is the **cluster id**.
              * `create_source: false` -> Toggle for whether or not the operator will create the integration in `console.redhat.com`. The default is False. This parameter should be switched to True when an integration does not already exist in `console.redhat.com` for this cluster.
              * `check_cycle: 1440` -> The time in minutes to wait between checking if an integration exists for this cluster. The default is 1440 minutes (24 hrs).
            * `upload`:
              * `upload_cycle: 360` -> The time in minutes between payload uploads. The default is 360 (6 hours), minimum is 60 (1 hour).
              * `upload_toggle: true` -> Toggle to turn upload on or off -> true means upload, false means do not upload (false == air-gapped mode). The default is `true`.
              * `upload_wait` -> The amount of time (in seconds) to pause before uploading a payload. The default is a random number between 0 and 35. This is used to decrease service load, but may be set to `0` if desired.
            * `volume_claim_template` -> see the "Storage configuration prerequisite" section above.

          ## Configure the costmanagement-metrics-operator
          **Note** There are separate instructions for configuring the `costmanagement-metrics-operator` to run in a restricted network.
          ##### Configure authentication
          The default authentication for the operator is `token`. No further steps are required to configure token authentication. If `basic` (deprecated) or `service-account` is the preferred authentication method, a Secret which holds the credentials must be created:
          1. On the left navigation pane, select `Workloads` -> `Secrets` -> select Project: `costmanagement-metrics-operator` -> `Create` -> `Key/Value Secret`
          2. Give the Secret a name and add 2 keys (all lowercase) for the respective authentication type. The values for these keys correspond to console.redhat.com credentials:
              * basic auth (deprecated): `username` and `password`
              * service-account auth: `client_id` and `client_secret`

          3. Select `Create`.
          ##### Create the CostManagementMetricsConfig
          Configure the costmanagement-metrics-operator by creating a `CostManagementMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `costmanagement-metrics-operator` -> `CostManagementMetricsConfig` -> `Create Instance`.
          2. For `basic` (deprecated) or `service-account` authentication, edit the following values in the spec:
              * Replace `authentication: type:` with `basic` or `service-account`.
              * Add the `secret_name` field under `authentication`, and set it equal to the name of the authentication Secret that was created above. The spec should look similar to the following:

                  * for basic auth type (deprecated)
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: basic
                  ```

                  * for service-account auth type
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: service-account
                  ```

          3. To configure the costmanagement-metrics-operator to create a cost management integration, edit the following values in the `source` field:
              * Replace the `name` field value with the preferred name of the integration to be created.
              * Replace the `create_source` field value with `true`.

              **Note:** if the integration already exists, replace the empty string value of the `name` field with the existing name, and leave `create_source` as false. This will allow the operator to confirm that the integration exists.

          4. If not specified, the operator will create a default PersistentVolumeClaim called `costmanagement-metrics-operator-data` with 10Gi of storage. To configure the costmanagement-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec:

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          5. Select `Create`.

          # Restricted Network Usage (disconnected/air-gapped mode)
          ## Installation
          To install the `costmanagement-metrics-operator` in a restricted network, follow the [olm documentation](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html). The operator is found in the `community-operators` Catalog in the `registry.redhat.io/redhat/community-operator-index:latest` Index. If pruning the index before pushing to the mirrored registry, keep the `costmanagement-metrics-operator` package.

          Within a restricted network, the operator queries prometheus to gather the necessary usage metrics, writes the query results to CSV files, and packages the reports for storage in the PVC. These reports then need to be manually downloaded from the cluster and uploaded to [console.redhat.com](https://console.redhat.com).

          ## Configure the costmanagement-metrics-operator for a restricted network
          ##### Create the CostManagementMetricsConfig
          Configure the costmanagement-metrics-operator by creating a `CostManagementMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `costmanagement-metrics-operator` -> `CostManagementMetricsConfig` -> `Create Instance`.
          2. Specify the desired storage. If not specified, the operator will create a default Persistent Volume Claim called `costmanagement-metrics-operator-data` with 10Gi of storage. To configure the costmanagement-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec (below is only a template. Any _valid_ `PersistentVolumeClaim` may be defined here):

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      storageClassName: <insert-class-name>
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          3. (Optional) Specify the desired report retention. The operator will retain 30 reports by default. This corresponds to approximately one week's worth of data if using the default packaging cycle. To modify the number of retained reports:
              * Change the `packaging` spec field `max_reports_to_store` to the desired number of reports to retain. Once this max number is reached, the operator will start removing the oldest packages remaining on the PVC:

                ```
                  packaging:
                    max_size_MB: 100
                    max_reports_to_store: 30
                ```

              **Note:** The number of retained reports directly affects the frequency that reports must be manually downloaded from the PVC. Take caution in setting this to a higher number of reports, as the operator cannot write data to the PVC if the storage is full.
          4. To configure the operator to perform in a restricted network, set the `upload_toggle` to `false`:

            ```
              upload:
                upload_cycle: 360
                upload_toggle: false
            ```

          5. Select `Create`.

          ## Download reports from the Operator & clean up the PVC
          If the `costmanagement-metrics-operator` is configured to run in a restricted network, the metric reports will not automatically upload to cost managment. Instead, they need to be manually copied from the PVC for upload to [console.redhat.com](https://console.redhat.com). The default configuration saves one week of reports which means the process of downloading and uploading reports should be repeated weekly to prevent loss of metrics data. To download the reports, complete the following steps:
          1. Create the following Pod, ensuring the `claimName` matches the PVC containing the report data:

            ```
              kind: Pod
              apiVersion: v1
              metadata:
                name: volume-shell
                namespace: costmanagement-metrics-operator
                labels:
                  app: costmanagement-metrics-operator
              spec:
                volumes:
                - name: costmanagement-metrics-operator-reports
                  persistentVolumeClaim:
                    claimName: costmanagement-metrics-operator-data
                containers:
                - name: volume-shell
                  image: busybox
                  command: ['sleep', 'infinity']
                  volumeMounts:
                  - name: costmanagement-metrics-operator-reports
                    mountPath: /tmp/costmanagement-metrics-operator-reports
            ```

          2. Use rsync to copy all of the files ready for upload from the PVC to a local folder:

            ```
            $ oc rsync volume-shell:/tmp/costmanagement-metrics-operator-reports/upload local/path/to/save/folder
            ```

          3. Once confirming that the files have been successfully copied, use rsh to connect to the pod and delete the contents of the upload folder so that they are no longer in storage:

            ```
            $ oc rsh volume-shell
            $ rm /tmp/costmanagement-metrics-operator-reports/upload/*
            ```

          4. (Optional) Delete the pod that was used to connect to the PVC:

            ```
            $ oc delete -f volume-shell.yaml
            ```

          ## Create an Integration
          In a restricted network, the `costmanagement-metrics-operator` cannot automatically create an integration. This process must be done manually. In the console.redhat.com platform, open the [Integrations menu](https://console.redhat.com/settings/integrations/) to begin adding an OpenShift integration to Cost Management:

          Prerequisites:
          * The cluster identifier which can be found in the CostManagementMetricsConfig CR, the cluster Overview page, or the cluster Help > About.

          Creating an integration:
          1. Navigate to the Integrations menu
          2. Select the `Red Hat` tab
          3. Create a new `Red Hat Openshift Container Platform` integration:
              * give the integration a unique name
              * add the Cost Management application
              * add the cluster identifier
          4. In the Source wizard, review the details and click `Finish` to create the source.

          ## Upload the reports to cost managment
          Uploading reports to cost managment is done through curl:

              $ curl -vvvv -F "file=@FILE_NAME.tar.gz;type=application/vnd.redhat.hccm.tar+tgz" https://console.redhat.com/api/ingress/v1/upload -H "Authorization: Bearer ${ACCESS_TOKEN}"

          where `FILE_NAME` is the name of the report to upload. The `ACCESS_TOKEN` is acquired using a service account. See documentation on [creating and managing a service account](https://docs.redhat.com/en/documentation/red_hat_customer_portal/1/html/creating_and_managing_service_accounts).
        displayName: Cost Management Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cost
        - management
        - usage
        - monitor
        links:
        - name: Cost Management Metrics Operator source code repository
          url: https://github.com/project-koku/koku-metrics-operator
        maintainers:
        - email: costmanagement@redhat.com
          name: costmanagement
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/costmanagement/costmanagement-metrics-operator-bundle@sha256:9cf11bd854c76e2b344c0072ae8487acde31f6fb50e2c47937f95186146f40e6
        - registry.redhat.io/costmanagement/costmanagement-metrics-rhel9-operator@sha256:e4457d0a4c77e95f46637e41044f45049fe03e818db82fabef06bd95c723778b
        version: 4.3.0
      entries:
      - name: costmanagement-metrics-operator.4.3.0
        version: 4.3.0
      - name: costmanagement-metrics-operator.4.2.0
        version: 4.2.0
      - name: costmanagement-metrics-operator.4.1.0
        version: 4.1.0
      - name: costmanagement-metrics-operator.4.0.0
        version: 4.0.0
      - name: costmanagement-metrics-operator.3.3.2
        version: 3.3.2
      - name: costmanagement-metrics-operator.3.3.1
        version: 3.3.1
      - name: costmanagement-metrics-operator.3.3.0
        version: 3.3.0
      - name: costmanagement-metrics-operator.3.2.1
        version: 3.2.1
      - name: costmanagement-metrics-operator.3.2.0
        version: 3.2.0
      - name: costmanagement-metrics-operator.3.1.1
        version: 3.1.1
      - name: costmanagement-metrics-operator.3.1.0
        version: 3.1.0
      - name: costmanagement-metrics-operator.3.0.1
        version: 3.0.1
      - name: costmanagement-metrics-operator.3.0.0
        version: 3.0.0
      - name: costmanagement-metrics-operator.2.0.0
        version: 2.0.0
      - name: costmanagement-metrics-operator.1.2.0
        version: 1.2.0
      - name: costmanagement-metrics-operator.1.1.9
        version: 1.1.9
      - name: costmanagement-metrics-operator.1.1.8
        version: 1.1.8
      - name: costmanagement-metrics-operator.1.1.7
        version: 1.1.7
      - name: costmanagement-metrics-operator.1.1.6
        version: 1.1.6
      - name: costmanagement-metrics-operator.1.1.5
        version: 1.1.5
      - name: costmanagement-metrics-operator.1.1.4
        version: 1.1.4
      - name: costmanagement-metrics-operator.1.1.3
        version: 1.1.3
      - name: costmanagement-metrics-operator.1.1.0
        version: 1.1.0
      - name: costmanagement-metrics-operator.1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: costmanagement-metrics-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Digital.ai
      provider-url: https://digital.ai
    name: digitalai-deploy-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: digitalai-deploy-operator.v25.1.0-beta.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "medium"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": "/login",
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/tmp",
                        "/opt/xebialabs/central-configuration-server/centralConfiguration",
                        "/opt/xebialabs/central-configuration-server/conf",
                        "/opt/xebialabs/central-configuration-server/log"
                      ],
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": "/login",
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "startupProbe": {
                      "enabled": true,
                      "failureThreshold": 12,
                      "initialDelaySeconds": 10,
                      "path": "/login",
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r39"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "quorum",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-daid",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "node-conf_xl-deploy-conf-template": {
                        "content": "# The ${APP_HOME}/node-conf/xl-deploy.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-deploy.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-deploy.conf and this is specified in ${APP_HOME}/conf/xld-wrapper.conf.common\nxl {\n  server.hostname = ${HOSTNAME}${HOSTNAME_SUFFIX}\n  cluster.node {\n    id = ${XL_NODE_NAME}\n    hostname = ${XL_NODE_NAME}\n    clusterPort = 5531\n  }\n}\n",
                        "mode": 432,
                        "path": "node-conf/xl-deploy.conf.template"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvm": {
                      "options": {
                        "networkaddress.cache.ttl": 30
                      }
                    },
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": null,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/xl-deploy-server/artifacts",
                        "/opt/xebialabs/xl-deploy-server/cache",
                        "/opt/xebialabs/xl-deploy-server/centralConfiguration",
                        "/opt/xebialabs/xl-deploy-server/conf",
                        "/opt/xebialabs/xl-deploy-server/driver/jdbc",
                        "/opt/xebialabs/xl-deploy-server/driver/mq",
                        "/opt/xebialabs/xl-deploy-server/export",
                        "/opt/xebialabs/xl-deploy-server/log",
                        "/opt/xebialabs/xl-deploy-server/node-conf",
                        "/opt/xebialabs/xl-deploy-server/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": null,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "startupProbe": {
                      "enabled": true,
                      "failureThreshold": 12,
                      "initialDelaySeconds": 60,
                      "path": null,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r39"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.12.0-debian-12-r12"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "17.2.0-debian-12-r12"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "4.0.7-debian-12-r0"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/deploy-task-engine/cache",
                        "/opt/xebialabs/deploy-task-engine/conf",
                        "/opt/xebialabs/deploy-task-engine/driver/jdbc",
                        "/opt/xebialabs/deploy-task-engine/driver/mq",
                        "/opt/xebialabs/deploy-task-engine/export",
                        "/opt/xebialabs/deploy-task-engine/log",
                        "/opt/xebialabs/deploy-task-engine/node-conf",
                        "/opt/xebialabs/deploy-task-engine/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "startupProbe": {
                      "enabled": true,
                      "failureThreshold": 12,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r39"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabsunsupported/deploy-operator@sha256:ca728924eaa65b4bc0157fca3120e92e8c58225d6ca8d45a1726e3d0f85ab38b '
          createdAt: "2025-04-09T14:58:13Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind: DigitalaiDeploy\nmetadata:\n
          \ name: daid-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  centralConfiguration:\n
          \   replicaCount: 1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  master:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  worker:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          SESSION_XLD\n      haproxy.router.openshift.io/disable_cookies: \"false\"\n
          \     haproxy.router.openshift.io/rewrite-target: /\n    hostname: '<mandatory-deploy-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n
          \       enabled: false\n      containerSecurityContext:\n        enabled:
          false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n    install:
          true\n    persistence:\n      size: 1Gi\n      storageClass: ''\n    replicaCount:
          1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\n####
          Configuration Details\n\nThe sample configuration uses:\n\n- Autogenerated
          limited license\n- Simple administrator initial password\n- Default keystore
          setup\n- Only one replica is set for all pods\n- All Pods are missing resource
          limit setup\n- Default storage class and minimal size for persistent storage\n-
          Embedded PostgreSQL for DB management\n- Embedded RabbitMQ for message queue
          management\n\n### Security Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabsunsupported/deploy-operator@sha256:ca728924eaa65b4bc0157fca3120e92e8c58225d6ca8d45a1726e3d0f85ab38b
        - docker.io/xebialabsunsupported/deploy-task-engine@sha256:5696c93aa10c114be4f84004eaceb09861d21cf03df1c05928ea68d9e89649cf
        - docker.io/xebialabsunsupported/xl-deploy@sha256:38f017fb42661c5d11a322b337d2f3e675f301c2fd9f8942e98613cf8bbd5cc0
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:18e02c701bdf2654811527f6cc26f43e74bce69256040ca301e4f5c498e7c645
        - docker.io/xebialabsunsupported/central-configuration@sha256:b7042b64b3e65ee8868aa4327b7f52257c8ccc4d70a1002d7edf3684cac0fa1b
        version: 25.1.0-beta.5
      entries:
      - name: digitalai-deploy-operator.v25.1.0-beta.5
        version: 25.1.0-beta.5
      name: beta
    - currentCSV: digitalai-deploy-operator.v24.1.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 20,
                      "probesReadinessTimeout": 20
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r16"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "classic",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "ingressClass": "haproxy-daid",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r16"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.0-debian-12-r1"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.10.1-debian-12-r5"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "15.6.0-debian-12-r7"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.13-debian-12-r2"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r16"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator without SCC creation and with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/deploy-operator@sha256:2b3413cd41f2b437e6027c8ae2cff12d1113e0ac1be69fc24840d68a05d3a665 '
          createdAt: "2024-10-16T05:39:21Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind:
          DigitalaiDeploy\nmetadata:\n  name: daid-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  securityContextConstraints:\n
          \   enabled: false\n  centralConfiguration:\n    replicaCount: 1\n    podSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n    volumePermissions:\n
          \     enabled: false\n  master:\n    replicaCount: 1\n    persistence:\n
          \     storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n      runAsUser:
          null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n    volumePermissions:\n
          \     enabled: false\n  worker:\n    replicaCount: 1\n    persistence:\n
          \     storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n      runAsUser:
          null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n    volumePermissions:\n
          \     enabled: false\n  route:\n    enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          SESSION_XLD\n      haproxy.router.openshift.io/disable_cookies: \"false\"\n
          \     haproxy.router.openshift.io/rewrite-target: /\n    hostname: '<mandatory-deploy-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n
          \       enabled: false\n        runAsUser: null\n        runAsGroup: null\n
          \       fsGroup: null\n      containerSecurityContext:\n        enabled:
          false\n        runAsUser: null\n        runAsGroup: null\n      securityContextConstraints:\n
          \       enabled: false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n
          \   install: true\n    persistence:\n      size: 1Gi\n      storageClass:
          ''\n    replicaCount: 1\n    podSecurityContext:\n      enabled: false\n
          \     runAsUser: null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     enabled: false\n      runAsUser: null\n      runAsGroup: null\n    securityContextConstraints:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\nIf
          SCC is required, it must be managed manually. The necessary permissions
          for accessing SecurityContextConstraints must be granted when SCC is enabled;
          otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"daid-doc-digitalai-deploy-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xld-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Embedded PostgreSQL for
          DB management\n- Embedded RabbitMQ for message queue management\n\n### Security
          Configuration Details\n\n- `securityContextConstraints.enabled: false` -
          disables creation of SCCs;\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/central-configuration@sha256:83359e49c66e4fab502cc75663b456eb37d81d7cb512f2c48667f4d6a324e0df
        - docker.io/xebialabs/deploy-operator@sha256:2b3413cd41f2b437e6027c8ae2cff12d1113e0ac1be69fc24840d68a05d3a665
        - docker.io/xebialabs/deploy-task-engine@sha256:8a381fd84483ea919fa7f8bee5cf19d9dec0d1d61cce73ec6b7c56fa504c6c93
        - docker.io/xebialabs/xl-deploy@sha256:77fdf6a3909367b060eba2ef698baddb77e4086d4d977f9c617d1e26a4427472
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:771a9a173e033a3ad8b46f5c00a7036eaa88c8d8d1fbd89217325168998113ea
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:9716402247ed874f19574a0d5125d1035fd198f36081d9129c1d4d4ad2f714a6
        version: 24.1.10
      entries:
      - name: digitalai-deploy-operator.v24.1.10
        version: 24.1.10
      name: stable
    - currentCSV: digitalai-deploy-operator.v24.1.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 20,
                      "probesReadinessTimeout": 20
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r40"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "classic",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "image": {
                        "tag": "v0.14.7"
                      },
                      "ingressClass": "haproxy-daid",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r40"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.2-debian-12-r10"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r0"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "15.6.0-debian-12-r20"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.14-debian-12-r7"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r40"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator without SCC creation and with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/deploy-operator@sha256:c652a6dfc1f3ce2fba528141b88b48b394db55420b12f01bc21e1c8d20ef4b01 '
          createdAt: "2025-04-07T06:31:17Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind:
          DigitalaiDeploy\nmetadata:\n  name: daid-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  securityContextConstraints:\n
          \   enabled: false\n  centralConfiguration:\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n  master:\n    replicaCount:
          1\n    persistence:\n      storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n  worker:\n    replicaCount:
          1\n    persistence:\n      storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n  route:\n    enabled: false\n
          \   annotations:\n      haproxy.router.openshift.io/cookie_name: SESSION_XLD\n
          \     haproxy.router.openshift.io/disable_cookies: \"false\"\n      haproxy.router.openshift.io/rewrite-target:
          /\n    hostname: '<mandatory-deploy-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n        enabled:
          false\n      containerSecurityContext:\n        enabled: false\n      securityContextConstraints:\n
          \       enabled: false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n
          \   install: true\n    persistence:\n      size: 1Gi\n      storageClass:
          ''\n    replicaCount: 1\n    podSecurityContext:\n      enabled: false\n
          \   containerSecurityContext:\n      enabled: false\n    securityContextConstraints:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\nIf
          SCC is required, it must be managed manually. The necessary permissions
          for accessing SecurityContextConstraints must be granted when SCC is enabled;
          otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"daid-doc-digitalai-deploy-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xld-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Embedded PostgreSQL for
          DB management\n- Embedded RabbitMQ for message queue management\n\n### Security
          Configuration Details\n\n- `securityContextConstraints.enabled: false` -
          disables creation of SCCs;\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/central-configuration@sha256:085601dcad8a1bdd996dbc5fd56d3db25cd15e2880d3b7d5e767e20959cc85cf
        - docker.io/xebialabs/deploy-operator@sha256:c652a6dfc1f3ce2fba528141b88b48b394db55420b12f01bc21e1c8d20ef4b01
        - docker.io/xebialabs/deploy-task-engine@sha256:1cb2b3483455268d96a9258f70df7f0f1544efecba83c8f695122c9932d6d13d
        - docker.io/xebialabs/xl-deploy@sha256:8854a2ae9f2f1f7a2a63a5041ae5240c48939c56db0bf4a9fd72867861320667
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:4deec4581f83eb09f53d5744ea2af54b27d8a70b2077e4ef4f47c9326de76803
        version: 24.1.17
      entries:
      - name: digitalai-deploy-operator.v24.1.17
        version: 24.1.17
      - name: digitalai-deploy-operator.v24.1.14
        version: 24.1.14
      - name: digitalai-deploy-operator.v24.1.10
        version: 24.1.10
      name: stable-v24.1
    - currentCSV: digitalai-deploy-operator.v24.3.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "medium"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 20,
                      "probesReadinessTimeout": 20
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/tmp",
                        "/opt/xebialabs/central-configuration-server/centralConfiguration",
                        "/opt/xebialabs/central-configuration-server/conf",
                        "/opt/xebialabs/central-configuration-server/log"
                      ],
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r42"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "classic",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-daid",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "node-conf_xl-deploy-conf-template": {
                        "content": "# The ${APP_HOME}/node-conf/xl-deploy.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-deploy.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-deploy.conf and this is specified in ${APP_HOME}/conf/xld-wrapper.conf.common\nxl {\n  server.hostname = ${HOSTNAME}${HOSTNAME_SUFFIX}\n  cluster.node {\n    id = ${XL_NODE_NAME}\n    hostname = ${XL_NODE_NAME}\n    clusterPort = 5531\n  }\n}\n",
                        "mode": 432,
                        "path": "node-conf/xl-deploy.conf.template"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvm": {
                      "options": {
                        "networkaddress.cache.ttl": 30
                      }
                    },
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/xl-deploy-server/artifacts",
                        "/opt/xebialabs/xl-deploy-server/cache",
                        "/opt/xebialabs/xl-deploy-server/centralConfiguration",
                        "/opt/xebialabs/xl-deploy-server/conf",
                        "/opt/xebialabs/xl-deploy-server/driver/jdbc",
                        "/opt/xebialabs/xl-deploy-server/driver/mq",
                        "/opt/xebialabs/xl-deploy-server/export",
                        "/opt/xebialabs/xl-deploy-server/log",
                        "/opt/xebialabs/xl-deploy-server/node-conf",
                        "/opt/xebialabs/xl-deploy-server/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r42"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r3"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "16.3.0-debian-12-r23"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n{{ if eq .Values.queueType \"quorum\" -}}\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n{{- end }}\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.13.7-debian-12-r5"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "queueType": "classic",
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/deploy-task-engine/cache",
                        "/opt/xebialabs/deploy-task-engine/conf",
                        "/opt/xebialabs/deploy-task-engine/driver/jdbc",
                        "/opt/xebialabs/deploy-task-engine/driver/mq",
                        "/opt/xebialabs/deploy-task-engine/export",
                        "/opt/xebialabs/deploy-task-engine/log",
                        "/opt/xebialabs/deploy-task-engine/node-conf",
                        "/opt/xebialabs/deploy-task-engine/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r42"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/deploy-operator@sha256:2f79f3ed817aa7ecd6a090e72f057ea341b4c1caad9cb83a7de6c102afb5f71d '
          createdAt: "2025-04-08T15:23:42Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind: DigitalaiDeploy\nmetadata:\n
          \ name: daid-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  centralConfiguration:\n
          \   replicaCount: 1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  master:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  worker:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          SESSION_XLD\n      haproxy.router.openshift.io/disable_cookies: \"false\"\n
          \     haproxy.router.openshift.io/rewrite-target: /\n    hostname: '<mandatory-deploy-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n
          \       enabled: false\n      containerSecurityContext:\n        enabled:
          false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n    install:
          true\n    persistence:\n      size: 1Gi\n      storageClass: ''\n    replicaCount:
          1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\n####
          Configuration Details\n\nThe sample configuration uses:\n\n- Autogenerated
          limited license\n- Simple administrator initial password\n- Default keystore
          setup\n- Only one replica is set for all pods\n- All Pods are missing resource
          limit setup\n- Default storage class and minimal size for persistent storage\n-
          Embedded PostgreSQL for DB management\n- Embedded RabbitMQ for message queue
          management\n\n### Security Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/central-configuration@sha256:db9f4109fa84c50d234e4b6efdc1ca9997e10099ddaeaf83edfd27a0db9b4909
        - docker.io/xebialabs/deploy-operator@sha256:2f79f3ed817aa7ecd6a090e72f057ea341b4c1caad9cb83a7de6c102afb5f71d
        - docker.io/xebialabs/deploy-task-engine@sha256:94f9b8aaf73a5963902c4093837bb2990ef27cdf2d0f85c8271113b4edc60c51
        - docker.io/xebialabs/xl-deploy@sha256:0538a992513564a650a8327b82872ec908d9c59491b1f27b0c29725c355a2c47
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:06cd12493818c444a53b629b055dfcb2d7a040d5bb2c0bb266aa8508afa53333
        version: 24.3.6
      entries:
      - name: digitalai-deploy-operator.v24.3.6
        version: 24.3.6
      - name: digitalai-deploy-operator.v24.3.5
        version: 24.3.5
      name: stable-v24.3
    defaultChannel: stable-v24.3
    packageName: digitalai-deploy-operator
    provider:
      name: Digital.ai
      url: https://digital.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: stolostron-engine
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stolostron-engine.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "multicluster.openshift.io/v1", "kind": "MultiClusterEngine",
            "metadata": {"name": "multiclusterengine"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/stolostron/backplane-operator@sha256:2b70bad016999d53d7d27b00f74e8dca3b9edfa8f0c1bf8906cb4ed19abbb0d9
          createdAt: "2025-11-05T18:48:44Z"
          description: Foundational components for central management of multiple
            OpenShift Container Platform and Kubernetes clusters
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.8.0 <0.8.2'
          operatorframework.io/initialization-resource: '{"apiVersion":"multicluster.openshift.io/v1",
            "kind":"MultiClusterEngine","metadata":{"name":"engine"},"spec": {}}'
          operatorframework.io/suggested-namespace: stolostron-engine
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          repository: https://github.com/stolostron/stolostron
          support: Stolostron Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MultiClusterEngine defines the configuration for an instance
              of a multicluster engine, a central point providing the foundational components for managing multiple Kubernetes-based clusters. The deployment of the multicluster engine components is
              determined based on the configuration that is defined in this resource.
            displayName: MultiCluster Engine
            kind: MultiClusterEngine
            name: multiclusterengines.multicluster.openshift.io
            version: v1
        description: 'Stolostron Engine provides the foundational components that
          are necessary for the centralized management of multiple Kubernetes-based
          clusters across data centers, public clouds, and private clouds. You can
          use the engine to create Red Hat OpenShift Container Platform clusters on
          selected providers, or import existing Kubernetes-based clusters. After
          the clusters are managed, you can use the APIs that are provided by the
          engine to distribute configuration based on placement policy. Placement
          policy is a significant part of creating sophisticated multicluster management
          applications because you can select the applicable clusters. '
        displayName: Stolostron Engine
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multiclusterengine
        links:
        - name: Documentation
          url: https://github.com/stolostron/stolostron
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: pre-release
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/stolostron/cluster-proxy-addon@sha256:674abd3cf9b3b953a4103d5c1ced32d65e70e17fc200a63c7cc65bcfb4e662c4
        - quay.io/stolostron/assisted-image-service@sha256:9e89eeca50074fb09989a0f483c5fa5d9ab227c33a9dca54693959c9d70de8f4
        - quay.io/stolostron/cluster-api-aws-controller@sha256:22a57cf5b74d0692025f0b0f57c5f28f8b492ea13295e9101b63f57766ffff38
        - quay.io/community-operator-pipeline-prod/stolostron-engine@sha256:01f5bdd558b429c535e409128dc1132d1a420eae5b61b11ccc903b89604a1516
        - quay.io/stolostron/assisted-service@sha256:b77884b64bfb748936ac8aa3cc9238d385906bbc242d044bd02f7736a459c3cc
        - quay.io/stolostron/registration-operator@sha256:274482973bfc6645da56f3a1fad0f49972dd197282fb067247269a4c196845c2
        - quay.io/stolostron/ip-address-manager@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/multicloud-manager@sha256:2f8f1cb804a3c8ccfd695c873bc77c9e5b8c295f299465b1a10b01ae6fbc79f7
        - quay.io/stolostron/assisted-installer-agent@sha256:a9b31ab5e41986ecf464613d285e9bd7c5518b94e238f6da5c8d8fabd03742a6
        - quay.io/stolostron/discovery-operator@sha256:e6eb524c1208ab40cb0b5201a3ba4135330de91f918a76ccc3ac3693d6851122
        - quay.io/stolostron/ose_cluster_api_rhel9@sha256:5bdd5905d5a6c6a611df6bf0aa0caf22eb768c938b52ae6a733ed5277c6e1c22
        - quay.io/stolostron/backplane-operator@sha256:2b70bad016999d53d7d27b00f74e8dca3b9edfa8f0c1bf8906cb4ed19abbb0d9
        - quay.io/stolostron/hypershift-operator@sha256:cc84043bbe37bfcb5aabc8d31b29523231fb94488d6d8692f5de5acf137c7534
        - quay.io/stolostron/foundation-e2e@sha256:b5502848bee71b7fb9f4b1a54f00ccbdf77a9ecbb5e3e7bfad815057f2c55e2f
        - quay.io/stolostron/cluster-api-provider-azure@sha256:f6e780adc1bf3fe64303fcb8c5d080ab639e62c62d0577a1bbae5b5f5bfa393d
        - quay.io/stolostron/ose_aws_cluster_api_controllers_rhel9@sha256:5bdd5905d5a6c6a611df6bf0aa0caf22eb768c938b52ae6a733ed5277c6e1c22
        - quay.io/stolostron/clusterclaims-controller@sha256:8a3945e3127328e6f20fab5e250f320e27c0f517e564838c7bb83a50b59ac019
        - quay.io/stolostron/helloworld@sha256:a790795409f6e781f506b6a63f39f7d344f01efa30c3de87b1727dc2010d5bbf
        - quay.io/stolostron/backplane-must-gather@sha256:4b7fc3b3e8d9e91e76863074e523a1b15a0be50c08d56babd0a2c944101203d1
        - quay.io/stolostron/discovery-testserver@sha256:fea15ba83dd90d4f7b71fa248319cd902b967e8e140ab7b25090c6459f1b77e1
        - quay.io/stolostron/assisted-service-el8@sha256:0a20fd360929b2845a0e331d994000fa65841091fc3a0ebfa0b77368fa948872
        - quay.io/stolostron/aws-encryption-provider@sha256:83f11e28004fcbb31d7ec6c34ef2d2ec7dd8fc175c5e0135f6ace9894c65bfd0
        - quay.io/stolostron/provider-credential-controller@sha256:b01347aee12c2b443930e9e46e163c09f4848556eae2cd0242d721527bfabe60
        - quay.io/stolostron/cluster-api-provider-openshift-assisted-control-plane@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/console-mce@sha256:12c11381c1fa9c4e60990b4609ffcecd511597cc40fadd264c62637bfdd6b599
        - quay.io/stolostron/addon-manager@sha256:caf5ffd4eca56c5741e638f800964d3da4ff4dd9fd01ac991a78462e6a010220
        - quay.io/stolostron/placement@sha256:770bdc64368310e1b726ed5afdab360e0b826baa6b0f49115eb525a1d5f2bedf
        - quay.io/stolostron/managedcluster-import-controller@sha256:cc01dd7b7161196c7b9159cad19b5cd18a1bde03ad5e48b2ca94321931b5bf7e
        - quay.io/stolostron/discovery-operator-tests@sha256:12617e4bef1b742b061f9a3223fcf8e9458b817467f0d551c421d14e5dab3111
        - quay.io/stolostron/cluster-api@sha256:7a04ac4e5bdaf29498af75b2b7c4ff19cb6223f2076c9373a3a955553243ddda
        - quay.io/stolostron/image-based-install-operator@sha256:e579d282460f48d59ee3078dad8e10930695c4f0f00c83a00b7703c82c273684
        - quay.io/stolostron/managed-serviceaccount@sha256:cefa8932e31bad17ed0c7ee739f024dd94681887c704ca8275c44c710cb4b19a
        - quay.io/stolostron/managed-serviceaccount-e2e@sha256:e983d2cd7f240dbbe47612055185873ffa63e5ac34083732557cdf2c20bc8a1a
        - quay.io/stolostron/helloprow-go@sha256:e055ab3773a248c22dbde9847a3289e8512ccc85c6e9015544fc4f59d14b9cad
        - quay.io/stolostron/work@sha256:7ae1d6b4cca055505a227f7ca8f4438490731de572a5bd73c9d24a63c8a0771d
        - quay.io/stolostron/clusterlifecycle-state-metrics@sha256:f50790d626b67ba32b2e8f47ba75d6895a54a24c7e27ede016f449aca3c05e3f
        - quay.io/stolostron/hypershift-addon-operator@sha256:1e4b94d0aa779fb83ab936c53deb6998d0e711328beb7e75ca987681d5e38095
        - quay.io/stolostron/assisted-installer@sha256:7a775fbcde9e6774769e1272bf4f293cbf0158d8ccddd93083611501b638f242
        - quay.io/stolostron/cluster-api-provider-kubevirt@sha256:44f8bb72b975456d4151a88a560fc525ad6f4da7968a38e94a86b6dd77d3c543
        - quay.io/stolostron/assisted-installer-controller@sha256:2d28d51a93ecfddb0499fb4e398f11b42a5e47db5fc4aa5d1648408016b77dff
        - quay.io/stolostron/apiserver-network-proxy@sha256:dc74c7c67ca851f50b83d7a03f91d028214fd8a941f12edd4411b860dc7b763d
        - quay.io/stolostron/cluster-image-set-controller@sha256:2cea7a3dadb3f58671411ef110de3c276edd99e9ad5f794fb492cdbd89cae676
        - quay.io/stolostron/cluster-proxy@sha256:1fc3e70e679a052d4fe1a50f268e6b3ef5a8fc17102df2edc5e38ba714aa194a
        - quay.io/stolostron/hive@sha256:86ff94d3e7c174ac4d6818183c66791edc7638965dd09e2d41172609c81f451f
        - quay.io/stolostron/hypershift-addon-operator-canary-test@sha256:789b63b893f7efc7a5308d0771d42f38c8eb78db3efbe67ee210ca89ba456841
        - quay.io/stolostron/cluster-api-provider-agent@sha256:e2b52112f6ae5f16b8349cb80b244c739e5ac1bd41872d08379698a04c78a0d8
        - quay.io/stolostron/cluster-curator-controller@sha256:c97ad90fd198b234301b367bc48c2b690562711f3f0ecfa14388169b28f7b424
        - quay.io/stolostron/kube-rbac-proxy-mce@sha256:365124bd4e035bb8b7b6b2c6bbb861f69a25a5217b03e8d120cd717e9fe18822
        - quay.io/stolostron/cluster-api-provider-openshift-assisted-bootstrap@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/backplane-operator-test@sha256:c9032e5453a8a5e293a6360e40bdfc3734f949c1fb6269a78844d0b4e225960b
        - quay.io/stolostron/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        - quay.io/stolostron/ose-baremetal-cluster-api-controllers-rhel9@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/registration@sha256:34f4b9682e163947af8192b95a47534afb16453055a0fb6772bc3b1f4c8bf6b6
        version: 0.8.2
      entries:
      - name: stolostron-engine.v0.8.2
        version: 0.8.2
      - name: stolostron-engine.v0.8.1
        version: 0.8.1
      - name: stolostron-engine.v0.8.0
        version: 0.8.0
      name: community-0.8
    defaultChannel: community-0.8
    packageName: stolostron-engine
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: metallb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: metallb-operator.v4.20.0-202512081818
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRConfiguration",
                "metadata": {
                  "name": "basic",
                  "namespace": "frr-k8s-system"
                },
                "spec": {
                  "bgp": {
                    "routers": [
                      {
                        "asn": 64512,
                        "neighbors": [
                          {
                            "address": "172.30.0.3",
                            "asn": 64512,
                            "port": 180,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            },
                            "toReceive": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          }
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRConfiguration",
                "metadata": {
                  "name": "two-neighs",
                  "namespace": "frr-k8s-system"
                },
                "spec": {
                  "bgp": {
                    "routers": [
                      {
                        "asn": 64512,
                        "neighbors": [
                          {
                            "address": "172.30.0.3",
                            "asn": 4200000000,
                            "ebgpMultiHop": true,
                            "port": 180,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          },
                          {
                            "address": "172.18.0.6",
                            "asn": 4200000000,
                            "port": 179,
                            "toAdvertise": {
                              "allowed": {
                                "prefixes": [
                                  "192.168.2.0/24"
                                ]
                              }
                            }
                          }
                        ],
                        "prefixes": [
                          "192.168.2.0/24",
                          "192.169.2.0/24"
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRConfiguration",
                "metadata": {
                  "name": "two-routers-vrf",
                  "namespace": "frr-k8s-system"
                },
                "spec": {
                  "bgp": {
                    "routers": [
                      {
                        "asn": 64513,
                        "neighbors": [
                          {
                            "address": "172.32.0.3",
                            "asn": 4200000000,
                            "ebgpMultiHop": true,
                            "port": 180,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          }
                        ],
                        "prefixes": [
                          "192.168.2.0/24",
                          "192.169.2.0/24"
                        ]
                      },
                      {
                        "asn": 64515,
                        "neighbors": [
                          {
                            "address": "172.31.0.3",
                            "asn": 4200000000,
                            "port": 179,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          }
                        ],
                        "prefixes": [
                          "192.168.2.0/24",
                          "192.169.2.0/24"
                        ],
                        "vrf": "red"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRNodeState",
                "metadata": {
                  "name": "frr-k8s-worker"
                },
                "status": {
                  "lastConversionResult": "success",
                  "lastReloadResult": "success",
                  "runningConfig": "Building configuration...\n\nCurrent configuration:\n!\nfrr version 9.0.2_git\nfrr defaults traditional\nhostname frr-k8s-worker\nlog file /etc/frr/frr.log informational\nlog timestamp precision 3\nno ipv6 forwarding\nservice integrated-vtysh-config\n!\nip nht resolve-via-default\n!\nipv6 nht resolve-via-default\n!\nend\n"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BFDProfile",
                "metadata": {
                  "name": "bfd-profile-sample",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "receiveInterval": 380,
                  "transmitInterval": 270
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "peers": [
                    "ebgp-single-hop0"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "ipAddressPoolSelectors": [
                    {
                      "matchLabels": {
                        "test": "ipv6"
                      }
                    },
                    {
                      "matchLabels": {
                        "test": "ipv4"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample3",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "aggregationLength": 32,
                  "aggregationLengthV6": 128,
                  "communities": [
                    "65535:65282"
                  ],
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "localPref": 50
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample4",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "aggregationLength": 32,
                  "aggregationLengthV6": 128,
                  "communities": [
                    "NO_ADVERTISE"
                  ],
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "localPref": 50
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample5",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "aggregationLength": 32,
                  "aggregationLengthV6": 128,
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "nodeSelectors": [
                    {
                      "matchLabels": {
                        "kubernetes.io/hostname": "kind-control-plane"
                      }
                    },
                    {
                      "matchLabels": {
                        "kubernetes.io/hostname": "kind-worker"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-beta1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "myASN": 64512,
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "Community",
                "metadata": {
                  "name": "community1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "communities": [
                    {
                      "name": "NO_ADVERTISE",
                      "value": "65535:65282"
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "IPAddressPool",
                "metadata": {
                  "name": "ip-addresspool-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "addresses": [
                    "192.168.10.0/24",
                    "192.168.9.1-192.168.9.5",
                    "fc00:f853:0ccd:e799::/124"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "IPAddressPool",
                "metadata": {
                  "labels": {
                    "test": "ipv4"
                  },
                  "name": "ip-addresspool-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "addresses": [
                    "172.20.0.100/24"
                  ],
                  "autoAssign": false
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "IPAddressPool",
                "metadata": {
                  "labels": {
                    "test": "ipv6"
                  },
                  "name": "ip-addresspool-sample3",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "addresses": [
                    "2002:2:2::1-2002:2:2::100"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "L2Advertisement",
                "metadata": {
                  "name": "l2-adv-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "L2Advertisement",
                "metadata": {
                  "name": "l2-adv-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "nodeSelectors": [
                    {
                      "matchLabels": {
                        "kubernetes.io/hostname": "kind-control-plane"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "MetalLB",
                "metadata": {
                  "name": "metallb",
                  "namespace": "metallb-system"
                },
                "spec": {}
              },
              {
                "apiVersion": "metallb.io/v1beta2",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "myASN": 64512,
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta2",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "bfdProfile": "bfd-profile-sample",
                  "myASN": 64512,
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta2",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-sample3",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "holdTime": "9m0s",
                  "keepaliveTime": "0s",
                  "myASN": 64512,
                  "passwordSecret": {
                    "name": "secretname",
                    "namespace": "metallb-system"
                  },
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3",
                  "peerPort": 180
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/metallb-rhel9-operator@sha256:72b48d051e8794b0a5eb63d92db04547a4ce27de39ec4c63a77ea2fabaf96ff1
          createdAt: "2023-06-06T15:25:00Z"
          description: An operator for deploying MetalLB on a kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.8.0 <4.20.0'
          operatorframework.io/suggested-namespace: metallb-system
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/metallb-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BFDProfile is the Schema for the bfdprofiles API
            kind: BFDProfile
            name: bfdprofiles.metallb.io
            version: v1beta1
          - description: BGPAdvertisement is the Schema for the bgpadvertisements
              API
            kind: BGPAdvertisement
            name: bgpadvertisements.metallb.io
            version: v1beta1
          - description: BGPPeer is the Schema for the bgppeers API
            kind: BGPPeer
            name: bgppeers.metallb.io
            version: v1beta1
          - description: BGPPeer is the Schema for the bgppeers API
            kind: BGPPeer
            name: bgppeers.metallb.io
            version: v1beta2
          - description: Community is the Schema for the communities API
            kind: Community
            name: communities.metallb.io
            version: v1beta1
          - description: FRRConfiguration is the Schema for the frrconfigurations
              API
            kind: FRRConfiguration
            name: frrconfigurations.frrk8s.metallb.io
            version: v1beta1
          - description: FRRNodeState is the Schema for the frrnodestates API
            kind: FRRNodeState
            name: frrnodestates.frrk8s.metallb.io
            version: v1beta1
          - description: IPAddressPool is the Schema for the ipaddresspools API
            kind: IPAddressPool
            name: ipaddresspools.metallb.io
            version: v1beta1
          - description: L2Advertisement is the Schema for the l2advertisements API
            kind: L2Advertisement
            name: l2advertisements.metallb.io
            version: v1beta1
          - description: MetalLB is the Schema for the metallbs API
            displayName: MetalLB
            kind: MetalLB
            name: metallbs.metallb.io
            version: v1beta1
          - kind: ServiceBGPStatus
            name: servicebgpstatuses.metallb.io
            version: v1beta1
          - description: L2ServiceStatus is the Schema for the l2servicestatus API
            kind: ServiceL2Status
            name: servicel2statuses.metallb.io
            version: v1beta1
        description: An operator for deploying MetalLB on a kubernetes cluster.
        displayName: MetalLB Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - metallb-operator
        links:
        - name: MetalLB Operator
          url: https://github.com/openshift/metallb-operator
        maintainers:
        - email: fpaoline@redhat.com
          name: Federico Paolinelli
        - email: obraunsh@redhat.com
          name: Ori Braunshtein
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-metallb-operator-bundle@sha256:f44369457410c34175352a6d9c3939c7931bf42d6099dfa119e3a8f558dcbab0
        - registry.redhat.io/openshift4/frr-rhel9@sha256:9f8df09b73df5d35920e24dcbb3d69df441e9d5434561c0c3e965c90506a333e
        - registry.redhat.io/openshift4/metallb-rhel9-operator@sha256:72b48d051e8794b0a5eb63d92db04547a4ce27de39ec4c63a77ea2fabaf96ff1
        - registry.redhat.io/openshift4/metallb-rhel9@sha256:75864368e099ccfa6117e5c96bdec03a330361f923b521da1cd4b1d59b923121
        version: 4.20.0-202512081818
      entries:
      - name: metallb-operator.v4.20.0-202512081818
        version: 4.20.0-202512081818
      - name: metallb-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: metallb-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: metallb-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: metallb-operator.v4.20.0-202511040554
        version: 4.20.0-202511040554
      - name: metallb-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: metallb-operator.v4.20.0-202509271248
        version: 4.20.0-202509271248
      name: stable
    defaultChannel: stable
    packageName: metallb-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: bamoe-kogito-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bamoe-kogito-operator.8.0.5-3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "ruleunit-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogitoinfra-sample"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "kafka.strimzi.io/v1beta2",
                    "kind": "Kafka",
                    "name": "kogito-kafka"
                  }
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator@sha256:8a99fcd217502b7e850af1e1097de58b6cb19d1e786394811a8e075c4d871279
          description: IBM BAMOE Kogito Operator for deployment and management of
            Kogito services.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["IBM Business Automation Manager
            Open Edition"]'
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/kogito-operator
          support: https://www.ibm.com/mysupport
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.rhpam.kiegroup.org
            version: v1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.rhpam.kiegroup.org
            version: v1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.rhpam.kiegroup.org
            version: v1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.rhpam.kiegroup.org
            version: v1
        description: |-
          IBM BAMOE Kogito Operator is designed for deployment and management of Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Builds a IBM BAMOE Kogito service from a remote git repository and creates a custom image for the given runtime: Red Hat build of Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Deploy IBM BAMOE Kogito service from user provided image.
          * Setup Grafana Dashboard when Grafana Operator is available in cluster.
          * Create Prometheus monitor object when Prometheus operator is available in cluster.

          **IMPORTANT!** IBM BAMOE Kogito Operator may need Grafana and Prometheus Operator to configure monitoring in cases if you do not provide these services beforehand. If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the IBM BAMOE Kogito Operator.
        displayName: IBM BAMOE Kogito Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://ibm.com
        - name: Documentation
          url: https://www.ibm.com/docs/en/ibamoe
        - name: Source
          url: https://github.com/kiegroup/kogito-operator
        maintainers:
        - email: mysphelp@us.ibm.com
          name: IBM
        maturity: beta
        provider:
          name: IBM
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9492c67eaa7ab37df6f5fa623c4aac955b7d7ffaab9ae2e57dea745e82907e40
        - registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator-bundle@sha256:e0e7fc3a69575199a6fcf93985451dd66a5eb7d1ab8caecf059d7d52f3953dc4
        - registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator@sha256:8a99fcd217502b7e850af1e1097de58b6cb19d1e786394811a8e075c4d871279
        version: 8.0.5-3
      entries:
      - name: bamoe-kogito-operator.8.0.5-3
        version: 8.0.5-3
      - name: bamoe-kogito-operator.8.0.5-2
        version: 8.0.5-2
      - name: bamoe-kogito-operator.8.0.5-1
        version: 8.0.5-1
      - name: bamoe-kogito-operator.8.0.4-2
        version: 8.0.4-2
      - name: bamoe-kogito-operator.8.0.4-1
        version: 8.0.4-1
      - name: bamoe-kogito-operator.8.0.3-1
        version: 8.0.3-1
      - name: bamoe-kogito-operator.8.0.2-3
        version: 8.0.2-3
      - name: bamoe-kogito-operator.8.0.2-2
        version: 8.0.2-2
      - name: bamoe-kogito-operator.8.0.2-1
        version: 8.0.2-1
      - name: bamoe-kogito-operator.8.0.1-2
        version: 8.0.1-2
      - name: bamoe-kogito-operator.8.0.1-1
        version: 8.0.1-1
      - name: bamoe-kogito-operator.8.0.0-1
        version: 8.0.0-1
      name: 8.x
    defaultChannel: 8.x
    packageName: bamoe-kogito-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: deployment-validation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: deployment-validation-operator.v0.7.12
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Application Runtime, Monitoring, Security
          certified: "false"
          containerImage: quay.io/deployment-validation-operator/dv-operator:0.7.12
          createdAt: "2025-09-11T00:00:00Z"
          description: The deployment validation operator
          ignore-check.kube-linter.io/minimum-three-replicas: This deployment uses
            1 pod as currently replicating does not replicate metric data causing
            installation issues
          repository: https://github.com/app-sre/deployment-validation-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Deployment Validation Operator (DVO) checks deployments and other resources against a curated collection of best practices.
          These best practices focus mainly on ensuring that the applications are fault-tolerant. DVO reports failed validations via Prometheus metrics.
          If the best-practice check has failed, the metrics will report `1`.
        displayName: Deployment Validation Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: false
          type: MultiNamespace
        keywords:
        - dvo
        links:
        - name: repository
          url: https://github.com/app-sre/deployment-validation-operator
        - name: containerImage
          url: https://quay.io/deployment-validation-operator/dv-operator:0.7.12
        maintainers:
        - email: dvo-owners@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/deployment-validation-operator@sha256:2803298c7cf3eeaffe9da3153142058d94d65ff1dae90efd8819a4cd23e0518f
        - quay.io/deployment-validation-operator/dv-operator:0.7.12
        version: 0.7.12
      entries:
      - name: deployment-validation-operator.v0.7.12
        version: 0.7.12
      - name: deployment-validation-operator.v0.7.9
        version: 0.7.9
      - name: deployment-validation-operator.v0.7.8
        version: 0.7.8
      - name: deployment-validation-operator.v0.7.7
        version: 0.7.7
      - name: deployment-validation-operator.v0.7.6
        version: 0.7.6
      - name: deployment-validation-operator.v0.7.5
        version: 0.7.5
      - name: deployment-validation-operator.v0.7.4
        version: 0.7.4
      - name: deployment-validation-operator.v0.7.3
        version: 0.7.3
      - name: deployment-validation-operator.v0.7.2
        version: 0.7.2
      - name: deployment-validation-operator.v0.7.1
        version: 0.7.1
      - name: deployment-validation-operator.v0.7.0
        version: 0.7.0
      - name: deployment-validation-operator.v0.6.0
        version: 0.6.0
      - name: deployment-validation-operator.v0.5.0
        version: 0.5.0
      - name: deployment-validation-operator.v0.4.0
        version: 0.4.0
      - name: deployment-validation-operator.v0.3.0
        version: 0.3.0
      - name: deployment-validation-operator.v0.2.2
        version: 0.2.2
      name: alpha
    defaultChannel: alpha
    packageName: deployment-validation-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: https://www.redhat.com
    name: sap-commerce-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sap-commerce-operator.v0.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hybris.hybris.org/v1alpha1",
                "kind": "HybrisApp",
                "metadata": {
                  "name": "hybrisapp-sample"
                },
                "spec": {
                  "aJPServicePort": 30000,
                  "apachejvmRouteName": "",
                  "baseImageName": "hybris-base",
                  "baseImageTag": "v0.2",
                  "hybrisANTTaskNames": "",
                  "podHealthyProbePath": "/platform/init",
                  "sourceRepoLocalPropertiesOverride": "",
                  "sourceRepoRef": "main",
                  "sourceRepoURL": "https://github.com/redhat-sap/sap-commerce-app-example.git",
                  "startupProbeFailureThreshold": 100,
                  "startupProbePeriodSecond": 60
                }
              },
              {
                "apiVersion": "hybris.hybris.org/v1alpha1",
                "kind": "HybrisBase",
                "metadata": {
                  "name": "hybrisbase-sample"
                },
                "spec": {
                  "URL": "http://nexus.redhat.com/nexus/service/local/repositories/releases/content/org/hybris/hybris/1.0/hybris-1.0.tar.gz",
                  "buildSourceRepo": "https://github.com/redhat-sap/sap-commerce-operator",
                  "buildSourceRepoBranch": "main",
                  "imageName": "hybris-base",
                  "imageTag": "v0.2",
                  "jdkURL": "https://github.com/SAP/SapMachine/releases/download/sapmachine-11.0.5/sapmachine-jdk-11.0.5-1.x86_64.rpm",
                  "password": "admin123",
                  "username": "admin"
                }
              }
            ]
          capabilities: Basic Install
          categories: Database
          containerImage: quay.io/redhat-sap-cop/hybris-operator:0.0.4
          description: Builds and runs SAP Commerce in OpenShift
          operators.operatorframework.io/builder: operator-sdk-v1.6.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-sap/sap-commerce-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HybrisApp is the Schema for the hybrisapps API
            displayName: Hybris Application
            kind: HybrisApp
            name: hybrisapps.hybris.hybris.org
            version: v1alpha1
          - description: HybrisBase is the Schema for the Hybris Base API
            displayName: Hybris Base
            kind: HybrisBase
            name: hybrisbases.hybris.hybris.org
            version: v1alpha1
        description: |-
          Builds and runs SAP Commerce in OpenShift

          * The operator provides APIs to initialize SAP Commerce with the provided SAP Commerce Server. Though there are no restrictions from the operator on the base package to be used from SAP, the default SAP base image provides a server preconfigured with an application server based on Apache Tomcat. Both HSQLDB and Tomcat are included in the SAP Commerce package, and are designed to be used for testing, development, and demonstration purposes. The custom classes created for various business needs along with an external RDBMS configuration can be used in a HybrisApp creation to execute SAP Commerce in a production setup.

          * The operator also enables the use of SAP Commerce in a clustered model. A SAP Commerce Cluster is a number of individual SAP Commerce installations using a common set of data on one database. A cluster configuration lets you balance the load between the nodes to scale SAP Commerce in a way that is transparent to the user.

          * The clustering offers few communication protocols as options (UDP: both multicast or unicast, or JGroups). In order to support multicast for SAP Commerce clustering the corresponding OpenShift namespace has to be enabled for multicast usage.

          For more details on SAP Commerce consult the product documentation: [https://help.sap.com/viewer/product/SAP_COMMERCE](https://help.sap.com/viewer/product/SAP_COMMERCE)
        displayName: SAP Commerce Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sap-commerce-operator
        links:
        - name: SAP Commerce Operator
          url: https://github.com/redhat-sap/sap-commerce-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat, Inc.
          url: https://www.redhat.com
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/openshift-community-operators/sap-commerce-operator@sha256:9b6a3c9c7a3af1a91578fa06c202d128fc7bfff3ae21300a4382cffb11def17a
        - quay.io/redhat-sap-cop/hybris-operator:0.0.4
        version: 0.0.4
      entries:
      - name: sap-commerce-operator.v0.0.4
        version: 0.0.4
      - name: sap-commerce-operator.v0.0.3
        version: 0.0.3
      - name: sap-commerce-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: sap-commerce-operator
    provider:
      name: Red Hat, Inc.
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-bedrockagent-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-bedrockagent-controller.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bedrockagent.services.k8s.aws/v1alpha1",
                "kind": "Agent",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/bedrockagent-controller:1.1.0
          createdAt: "2025-11-29T03:25:09Z"
          description: AWS Bedrock Agent controller is a service controller for managing
            Bedrock Agent resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Agent represents the state of an AWS bedrockagent Agent resource.
            displayName: Agent
            kind: Agent
            name: agents.bedrockagent.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Bedrock Agent resources in AWS from within your Kubernetes cluster.

          **About Amazon Bedrock Agent**

          Amazon Bedrock is a fully managed service that makes high-performing foundation models (FMs) from leading AI companies and Amazon available for your use through a unified API. You can choose from a wide range of foundation models to find the model that is best suited for your use case. Amazon Bedrock also offers a broad set of capabilities to build generative AI applications with security, privacy, and responsible AI. Using Amazon Bedrock, you can easily experiment with and evaluate top foundation models for your use cases, privately customize them with your data using techniques such as fine-tuning and Retrieval Augmented Generation (RAG), and build agents that execute tasks using your enterprise systems and data sources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Bedrock Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bedrockagent
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Bedrock Agent Developer Resources
          url: https://aws.amazon.com/bedrock/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: bedrock-agent maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-bedrockagent-controller@sha256:21774b163f44769d4f7b430239af17661231bb7a0e53d28d6aa8c1af48641b2a
        - public.ecr.aws/aws-controllers-k8s/bedrockagent-controller:1.1.0
        version: 1.1.0
      entries:
      - name: ack-bedrockagent-controller.v1.1.0
        version: 1.1.0
      - name: ack-bedrockagent-controller.v1.0.0
        version: 1.0.0
      - name: ack-bedrockagent-controller.v0.1.2
        version: 0.1.2
      - name: ack-bedrockagent-controller.v0.1.1
        version: 0.1.1
      - name: ack-bedrockagent-controller.v0.1.0
        version: 0.1.0
      - name: ack-bedrockagent-controller.v0.0.6
        version: 0.0.6
      - name: ack-bedrockagent-controller.v0.0.5
        version: 0.0.5
      - name: ack-bedrockagent-controller.v0.0.4
        version: 0.0.4
      - name: ack-bedrockagent-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-bedrockagent-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Cisco Networking - Compute Solutions
      provider-url: ""
    name: ucs-ci-solutions-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ucs-ci-solutions-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "intersight.cisco.com/v1alpha1",
                "kind": "UCSCISolutions",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ucs-ci-solutions-operator",
                    "app.kubernetes.io/instance": "ucscisolutions-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ucscisolutions",
                    "app.kubernetes.io/part-of": "ucs-ci-solutions-operator"
                  },
                  "name": "ucscisolutions-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: docker.io/pkoppa/ucs-ci-solutions-operator:latest
          createdAt: "2023-07-15T15:19:39Z"
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: UCSCISolutions
            name: ucscisolutions.intersight.cisco.com
            version: v1alpha1
        description: The operator is used to automate the creation of  Pools, Policies
          and Server Profile Templates required to deploy Cisco UCS Converged Infrastructure
          Solution in Intersight.
        displayName: UCS-CI-Solutions-Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ucscisolutions
        - intersight
        - ucs
        - ci
        - flexpod
        - flashstack
        links:
        - name: Ucs Ci Solutions Operator
          url: https://ucs-ci-solutions-operator.domain
        maintainers:
        - email: pkoppa@cisco.com
          name: Paniraj Koppa
        - email: chrobrie@cisco.com
          name: Chris O'Brien
        maturity: alpha
        provider:
          name: Cisco Networking - Compute Solutions
        relatedImages:
        - quay.io/openshift-community-operators/ucs-ci-solutions-operator@sha256:e284253263183eb2cd313f6fb009bb830b9a79a4d4e2481468821c30a9cdce03
        - docker.io/pkoppa/ucs-ci-solutions-operator:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 0.0.1
      entries:
      - name: ucs-ci-solutions-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ucs-ci-solutions-operator
    provider:
      name: Cisco Networking - Compute Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CSI Addons Community
      provider-url: ""
    name: odf-csi-addons-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-csi-addons-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:57:48Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CSIAddonsNode is the Schema for the csiaddonsnode API
            displayName: CSIAddons Node
            kind: CSIAddonsNode
            name: csiaddonsnodes.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationCronJob is the Schema for the encryptionkeyrotationcronjobs
              API
            displayName: EncryptionKeyRotation CronJob
            kind: EncryptionKeyRotationCronJob
            name: encryptionkeyrotationcronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationJob is the Schema for the encryptionkeyrotationjobs
              API
            displayName: EncryptionKeyRotation Job
            kind: EncryptionKeyRotationJob
            name: encryptionkeyrotationjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFenceClass is the Schema for the networkfenceclasses
              API
            displayName: Network Fence Class
            kind: NetworkFenceClass
            name: networkfenceclasses.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFence is the Schema for the networkfences API
            displayName: Network Fence
            kind: NetworkFence
            name: networkfences.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceCronJob is the Schema for the reclaimspacecronjobs
              API
            displayName: Reclaim Space CronJob
            kind: ReclaimSpaceCronJob
            name: reclaimspacecronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceJob is the Schema for the reclaimspacejobs API
            displayName: Reclaim Space Job
            kind: ReclaimSpaceJob
            name: reclaimspacejobs.csiaddons.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationClass is the Schema for the volumegroupreplicationclasses
              API
            displayName: Volume Group Replication Class
            kind: VolumeGroupReplicationClass
            name: volumegroupreplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationContent is the Schema for the volumegroupreplicationcontents
              API
            displayName: Volume Group Replication Content
            kind: VolumeGroupReplicationContent
            name: volumegroupreplicationcontents.replication.storage.openshift.io
            version: v1alpha1
          - kind: VolumeGroupReplication
            name: volumegroupreplications.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplicationClass is the Schema for the volumereplicationclasses
              API
            displayName: Volume Replication Class
            kind: VolumeReplicationClass
            name: volumereplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplication is the Schema for the volumereplications
              API
            displayName: Volume Replication
            kind: VolumeReplication
            name: volumereplications.replication.storage.openshift.io
            version: v1alpha1
        description: CSI Addons provides the CSI Addons Controller that enables advanced
          storage operations for CSI-drivers.
        displayName: CSI Addons
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: CSI Addons
          url: https://csi-addons.github.io
        maintainers:
        - email: csi-addons@redhat.com
          name: CSI Addons Community
        maturity: alpha
        provider:
          name: CSI Addons Community
        relatedImages:
        - registry.redhat.io/odf4/odf-csi-addons-operator-bundle@sha256:35cb92067f1cdf332d48b50cd2948e86ea2f43247eea53b15f7aa138c68a50b6
        - registry.redhat.io/odf4/odf-csi-addons-rhel9-operator@sha256:0e86d4dddc58fca1deed19260dadedc733e6232bff1484a8a28875f8445ed04e
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: odf-csi-addons-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-csi-addons-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-csi-addons-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-csi-addons-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-csi-addons-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-csi-addons-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-csi-addons-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-csi-addons-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-csi-addons-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-csi-addons-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-csi-addons-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:44:37Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CSIAddonsNode is the Schema for the csiaddonsnode API
            displayName: CSIAddons Node
            kind: CSIAddonsNode
            name: csiaddonsnodes.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationCronJob is the Schema for the encryptionkeyrotationcronjobs
              API
            displayName: EncryptionKeyRotation CronJob
            kind: EncryptionKeyRotationCronJob
            name: encryptionkeyrotationcronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationJob is the Schema for the encryptionkeyrotationjobs
              API
            displayName: EncryptionKeyRotation Job
            kind: EncryptionKeyRotationJob
            name: encryptionkeyrotationjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFenceClass is the Schema for the networkfenceclasses
              API
            displayName: Network Fence Class
            kind: NetworkFenceClass
            name: networkfenceclasses.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFence is the Schema for the networkfences API
            displayName: Network Fence
            kind: NetworkFence
            name: networkfences.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceCronJob is the Schema for the reclaimspacecronjobs
              API
            displayName: Reclaim Space CronJob
            kind: ReclaimSpaceCronJob
            name: reclaimspacecronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceJob is the Schema for the reclaimspacejobs API
            displayName: Reclaim Space Job
            kind: ReclaimSpaceJob
            name: reclaimspacejobs.csiaddons.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationClass is the Schema for the volumegroupreplicationclasses
              API
            displayName: Volume Group Replication Class
            kind: VolumeGroupReplicationClass
            name: volumegroupreplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationContent is the Schema for the volumegroupreplicationcontents
              API
            displayName: Volume Group Replication Content
            kind: VolumeGroupReplicationContent
            name: volumegroupreplicationcontents.replication.storage.openshift.io
            version: v1alpha1
          - kind: VolumeGroupReplication
            name: volumegroupreplications.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplicationClass is the Schema for the volumereplicationclasses
              API
            displayName: Volume Replication Class
            kind: VolumeReplicationClass
            name: volumereplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplication is the Schema for the volumereplications
              API
            displayName: Volume Replication
            kind: VolumeReplication
            name: volumereplications.replication.storage.openshift.io
            version: v1alpha1
        description: CSI Addons provides the CSI Addons Controller that enables advanced
          storage operations for CSI-drivers.
        displayName: CSI Addons
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: CSI Addons
          url: https://csi-addons.github.io
        maintainers:
        - email: csi-addons@redhat.com
          name: CSI Addons Community
        maturity: alpha
        provider:
          name: CSI Addons Community
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/odf-csi-addons-operator-bundle@sha256:eec2e2ee2bd6f3a5848db2fe427e348e4b9a12ac23fe245953976b3eaa195e72
        - registry.redhat.io/odf4/odf-csi-addons-rhel9-operator@sha256:6e0480ded3445a2e149eee2e9a3d30f6f51932caf99c4c426c67ca720d1976e6
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        version: 4.20.4-rhodf
      entries:
      - name: odf-csi-addons-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-csi-addons-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-csi-addons-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-csi-addons-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-csi-addons-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-csi-addons-operator
    provider:
      name: CSI Addons Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-cert-manager-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cert-manager-operator.v1.18.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "authorizationURL": "https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/XXXXX",
                  "dnsName": "sample.dns.name",
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "key": "XXX",
                  "solver": {
                    "dns01": {
                      "route53": {
                        "accessKeyID": "XXX",
                        "hostedZoneID": "XXX",
                        "region": "us-east-1",
                        "secretAccessKeySecretRef": {
                          "key": "awsSecretAccessKey",
                          "name": "aws-secret"
                        }
                      }
                    },
                    "selector": {
                      "dnsNames": [
                        "sample.dns.name"
                      ]
                    }
                  },
                  "token": "XXX",
                  "type": "DNS-01",
                  "url": "https://acme-staging-v02.api.letsencrypt.org/acme/chall-v3/XXXXXX/XXXXX",
                  "wildcard": false
                }
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "selfsigned-ca",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "selfsigned-ca.dns.name",
                  "isCA": true,
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "selfsigned-issuer"
                  },
                  "privateKey": {
                    "algorithm": "ECDSA",
                    "size": 256
                  },
                  "secretName": "ca-root-secret"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "tls-cert",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "isCA": false,
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "secretName": "tls-cert"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "groups": [
                    "system:serviceaccounts",
                    "system:serviceaccounts:cert-manager",
                    "system:authenticated"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX",
                  "username": "system:serviceaccount:cert-manager:cert-manager"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "selfsigned-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "ca-issuer",
                  "namespace": "default"
                },
                "spec": {
                  "ca": {
                    "secretName": "ca-root-secret"
                  }
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "letsencrypt-staging",
                  "namespace": "default"
                },
                "spec": {
                  "acme": {
                    "email": "aos-ci-cd@redhat.com",
                    "privateKeySecretRef": {
                      "name": "letsencrypt-staging"
                    },
                    "server": "https://acme-staging-v02.api.letsencrypt.org/directory",
                    "solvers": [
                      {
                        "dns01": {
                          "route53": {
                            "accessKeyID": "ACCESS_KEY_ID",
                            "hostedZoneID": "HOSTED_ZONE_ID",
                            "region": "AWS_REGION",
                            "secretAccessKeySecretRef": {
                              "key": "access-key",
                              "name": "sample-aws-secret"
                            }
                          }
                        },
                        "selector": {
                          "dnsNames": [
                            "sample.dns.name"
                          ]
                        }
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "CertManager",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "IstioCSR",
                "metadata": {
                  "annotations": {
                    "kubernetes.io/description": "Resource behavior is managed through IstioCSR featuregate, which is enabled by default. Please refer to the cert-manager documentation for more information on the istio-csr feature."
                  },
                  "name": "default",
                  "namespace": "istio-csr"
                },
                "spec": {
                  "istioCSRConfig": {
                    "certManager": {
                      "issuerRef": {
                        "group": "cert-manager.io",
                        "kind": "Issuer",
                        "name": "istio-csr-issuer"
                      }
                    },
                    "istio": {
                      "namespace": "istio-system"
                    },
                    "istiodTLSConfig": {
                      "trustDomain": "cluster.local"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
          createdAt: 2025-11-12T08:36:17
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.17.0 <1.18.0'
          operator.openshift.io/uninstall-message: The cert-manager Operator for Red
            Hat OpenShift will be removed from cert-manager-operator namespace. If
            your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/cert-manager-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/cert-manager-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: CertManager is the Schema for the certmanagers API
            displayName: CertManager
            kind: CertManager
            name: certmanagers.operator.openshift.io
            version: v1alpha1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: |-
              IstioCSR describes the configuration and information about the managed istio-csr agent.
              The name must be `default` to make IstioCSR a singleton that is, to allow only one instance of IstioCSR per namespace.

              When an IstioCSR is created, istio-csr agent is deployed in the IstioCSR-created namespace.
            displayName: IstioCSR
            kind: IstioCSR
            name: istiocsrs.operator.openshift.io
            version: v1alpha1
          - description: Order is a type to represent an Order with an ACME server
            displayName: Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          The cert-manager Operator for Red Hat OpenShift provides seamless support for [cert-manager v1.18.3](https://github.com/cert-manager/cert-manager/tree/v1.18.3), which automates certificate management.
          For more information, see the [cert-manager Operator for Red Hat OpenShift documentation](https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/index.html).
        displayName: cert-manager Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cert-manager-operator
        - cert
        - certificates
        - security
        - TLS
        - istio-csr
        links:
        - name: Documentation
          url: https://github.com/openshift/cert-manager-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:acaaea813059d4ac5b2618395bd9113f72ada0a33aaaba91aa94f000e77df407
        - registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
        - registry.redhat.io/cert-manager/jetstack-cert-manager-acmesolver-rhel9@sha256:ba937fc4b9eee31422914352c11a45b90754ba4fbe490ea45249b90afdc4e0a7
        - registry.redhat.io/cert-manager/jetstack-cert-manager-rhel9@sha256:29a0fa1c2f2a6cee62a0468a3883d16d491b4af29130dad6e3e2bb2948f274df
        - registry.redhat.io/cert-manager/cert-manager-istio-csr-rhel9@sha256:af1ac813b8ee414ef215936f05197bc498bccbd540f3e2a93cb522221ba112bc
        version: 1.18.0
      entries:
      - name: cert-manager-operator.v1.18.0
        version: 1.18.0
      - name: cert-manager-operator.v1.17.0
        version: 1.17.0
      name: stable-v1
    - currentCSV: cert-manager-operator.v1.17.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "authorizationURL": "https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/XXXXX",
                  "dnsName": "sample.dns.name",
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "key": "XXX",
                  "solver": {
                    "dns01": {
                      "route53": {
                        "accessKeyID": "XXX",
                        "hostedZoneID": "XXX",
                        "region": "us-east-1",
                        "secretAccessKeySecretRef": {
                          "key": "awsSecretAccessKey",
                          "name": "aws-secret"
                        }
                      }
                    },
                    "selector": {
                      "dnsNames": [
                        "sample.dns.name"
                      ]
                    }
                  },
                  "token": "XXX",
                  "type": "DNS-01",
                  "url": "https://acme-staging-v02.api.letsencrypt.org/acme/chall-v3/XXXXXX/XXXXX",
                  "wildcard": false
                }
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "selfsigned-ca",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "selfsigned-ca.dns.name",
                  "isCA": true,
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "selfsigned-issuer"
                  },
                  "privateKey": {
                    "algorithm": "ECDSA",
                    "size": 256
                  },
                  "secretName": "ca-root-secret"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "tls-cert",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "isCA": false,
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "secretName": "tls-cert"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "groups": [
                    "system:serviceaccounts",
                    "system:serviceaccounts:cert-manager",
                    "system:authenticated"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX",
                  "username": "system:serviceaccount:cert-manager:cert-manager"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "selfsigned-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "ca-issuer",
                  "namespace": "default"
                },
                "spec": {
                  "ca": {
                    "secretName": "ca-root-secret"
                  }
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "letsencrypt-staging",
                  "namespace": "default"
                },
                "spec": {
                  "acme": {
                    "email": "aos-ci-cd@redhat.com",
                    "privateKeySecretRef": {
                      "name": "letsencrypt-staging"
                    },
                    "server": "https://acme-staging-v02.api.letsencrypt.org/directory",
                    "solvers": [
                      {
                        "dns01": {
                          "route53": {
                            "accessKeyID": "ACCESS_KEY_ID",
                            "hostedZoneID": "HOSTED_ZONE_ID",
                            "region": "AWS_REGION",
                            "secretAccessKeySecretRef": {
                              "key": "access-key",
                              "name": "sample-aws-secret"
                            }
                          }
                        },
                        "selector": {
                          "dnsNames": [
                            "sample.dns.name"
                          ]
                        }
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "CertManager",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "IstioCSR",
                "metadata": {
                  "annotations": {
                    "kubernetes.io/description": "Creating this resource requires the istio-csr tech-preview feature to be enabled, which otherwise has no effect. Please refer to the cert-manager documentation for more information on enabling the istio-csr feature. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process"
                  },
                  "name": "default",
                  "namespace": "istio-csr"
                },
                "spec": {
                  "istioCSRConfig": {
                    "certManager": {
                      "issuerRef": {
                        "group": "cert-manager.io",
                        "kind": "Issuer",
                        "name": "istio-csr-issuer"
                      }
                    },
                    "istio": {
                      "namespace": "istio-system"
                    },
                    "istiodTLSConfig": {
                      "trustDomain": "cluster.local"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:4d5e238300ce6f427a1045d51d6b37a4e5c5633985208ebb44f91e7dd53897d9
          createdAt: 2025-08-06T08:21:40
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.16.1 <1.17.0'
          operator.openshift.io/uninstall-message: The cert-manager Operator for Red
            Hat OpenShift will be removed from cert-manager-operator namespace. If
            your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/cert-manager-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/cert-manager-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: CertManager is the Schema for the certmanagers API
            displayName: CertManager
            kind: CertManager
            name: certmanagers.operator.openshift.io
            version: v1alpha1
          - kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - kind: IstioCSR
            name: istiocsrs.operator.openshift.io
            version: v1alpha1
          - kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          The cert-manager Operator for Red Hat OpenShift provides seamless support for [cert-manager v1.17.4](https://github.com/cert-manager/cert-manager/tree/v1.17.4), which automates certificate management.
          For more information, see the [cert-manager Operator for Red Hat OpenShift documentation](https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/index.html).
        displayName: cert-manager Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cert-manager-operator
        - cert
        - certificates
        - security
        - TLS
        links:
        - name: Documentation
          url: https://github.com/openshift/cert-manager-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:4d5e238300ce6f427a1045d51d6b37a4e5c5633985208ebb44f91e7dd53897d9
        - registry.redhat.io/cert-manager/jetstack-cert-manager-acmesolver-rhel9@sha256:4f7c045819c39e176a6090efdaba6ec736edf772d88fc87dd1c6fb33d3b5b26b
        - registry.redhat.io/cert-manager/jetstack-cert-manager-rhel9@sha256:96d51e3a64bf30cbd92836c7cbd82f06edca16eef78ab1432757d34c16628659
        - registry.redhat.io/cert-manager/cert-manager-istio-csr-rhel9@sha256:9ea2c29a384b964cef14f853278821df3cd30320f25afab8823897192f67fc7e
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:cc20a2ab116597b080d303196825d7f5c81c6f30268f7866fb2911706efea210
        version: 1.17.0
      entries:
      - name: cert-manager-operator.v1.17.0
        version: 1.17.0
      name: stable-v1.17
    - currentCSV: cert-manager-operator.v1.18.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "authorizationURL": "https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/XXXXX",
                  "dnsName": "sample.dns.name",
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "key": "XXX",
                  "solver": {
                    "dns01": {
                      "route53": {
                        "accessKeyID": "XXX",
                        "hostedZoneID": "XXX",
                        "region": "us-east-1",
                        "secretAccessKeySecretRef": {
                          "key": "awsSecretAccessKey",
                          "name": "aws-secret"
                        }
                      }
                    },
                    "selector": {
                      "dnsNames": [
                        "sample.dns.name"
                      ]
                    }
                  },
                  "token": "XXX",
                  "type": "DNS-01",
                  "url": "https://acme-staging-v02.api.letsencrypt.org/acme/chall-v3/XXXXXX/XXXXX",
                  "wildcard": false
                }
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "selfsigned-ca",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "selfsigned-ca.dns.name",
                  "isCA": true,
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "selfsigned-issuer"
                  },
                  "privateKey": {
                    "algorithm": "ECDSA",
                    "size": 256
                  },
                  "secretName": "ca-root-secret"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "tls-cert",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "isCA": false,
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "secretName": "tls-cert"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "groups": [
                    "system:serviceaccounts",
                    "system:serviceaccounts:cert-manager",
                    "system:authenticated"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX",
                  "username": "system:serviceaccount:cert-manager:cert-manager"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "selfsigned-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "ca-issuer",
                  "namespace": "default"
                },
                "spec": {
                  "ca": {
                    "secretName": "ca-root-secret"
                  }
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "letsencrypt-staging",
                  "namespace": "default"
                },
                "spec": {
                  "acme": {
                    "email": "aos-ci-cd@redhat.com",
                    "privateKeySecretRef": {
                      "name": "letsencrypt-staging"
                    },
                    "server": "https://acme-staging-v02.api.letsencrypt.org/directory",
                    "solvers": [
                      {
                        "dns01": {
                          "route53": {
                            "accessKeyID": "ACCESS_KEY_ID",
                            "hostedZoneID": "HOSTED_ZONE_ID",
                            "region": "AWS_REGION",
                            "secretAccessKeySecretRef": {
                              "key": "access-key",
                              "name": "sample-aws-secret"
                            }
                          }
                        },
                        "selector": {
                          "dnsNames": [
                            "sample.dns.name"
                          ]
                        }
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "CertManager",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "IstioCSR",
                "metadata": {
                  "annotations": {
                    "kubernetes.io/description": "Resource behavior is managed through IstioCSR featuregate, which is enabled by default. Please refer to the cert-manager documentation for more information on the istio-csr feature."
                  },
                  "name": "default",
                  "namespace": "istio-csr"
                },
                "spec": {
                  "istioCSRConfig": {
                    "certManager": {
                      "issuerRef": {
                        "group": "cert-manager.io",
                        "kind": "Issuer",
                        "name": "istio-csr-issuer"
                      }
                    },
                    "istio": {
                      "namespace": "istio-system"
                    },
                    "istiodTLSConfig": {
                      "trustDomain": "cluster.local"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
          createdAt: 2025-11-12T08:36:17
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.17.0 <1.18.0'
          operator.openshift.io/uninstall-message: The cert-manager Operator for Red
            Hat OpenShift will be removed from cert-manager-operator namespace. If
            your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/cert-manager-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/cert-manager-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: CertManager is the Schema for the certmanagers API
            displayName: CertManager
            kind: CertManager
            name: certmanagers.operator.openshift.io
            version: v1alpha1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: |-
              IstioCSR describes the configuration and information about the managed istio-csr agent.
              The name must be `default` to make IstioCSR a singleton that is, to allow only one instance of IstioCSR per namespace.

              When an IstioCSR is created, istio-csr agent is deployed in the IstioCSR-created namespace.
            displayName: IstioCSR
            kind: IstioCSR
            name: istiocsrs.operator.openshift.io
            version: v1alpha1
          - description: Order is a type to represent an Order with an ACME server
            displayName: Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          The cert-manager Operator for Red Hat OpenShift provides seamless support for [cert-manager v1.18.3](https://github.com/cert-manager/cert-manager/tree/v1.18.3), which automates certificate management.
          For more information, see the [cert-manager Operator for Red Hat OpenShift documentation](https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/index.html).
        displayName: cert-manager Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cert-manager-operator
        - cert
        - certificates
        - security
        - TLS
        - istio-csr
        links:
        - name: Documentation
          url: https://github.com/openshift/cert-manager-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/cert-manager/cert-manager-istio-csr-rhel9@sha256:af1ac813b8ee414ef215936f05197bc498bccbd540f3e2a93cb522221ba112bc
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:acaaea813059d4ac5b2618395bd9113f72ada0a33aaaba91aa94f000e77df407
        - registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
        - registry.redhat.io/cert-manager/jetstack-cert-manager-acmesolver-rhel9@sha256:ba937fc4b9eee31422914352c11a45b90754ba4fbe490ea45249b90afdc4e0a7
        - registry.redhat.io/cert-manager/jetstack-cert-manager-rhel9@sha256:29a0fa1c2f2a6cee62a0468a3883d16d491b4af29130dad6e3e2bb2948f274df
        version: 1.18.0
      entries:
      - name: cert-manager-operator.v1.18.0
        version: 1.18.0
      - name: cert-manager-operator.v1.17.0
        version: 1.17.0
      name: stable-v1.18
    defaultChannel: stable-v1
    packageName: openshift-cert-manager-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cluster-logging
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-logging.v6.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "logging.openshift.io/v1alpha1",
                "kind": "LogFileMetricExporter",
                "metadata": {
                  "name": "instance",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "resources": {
                    "limits": {
                      "cpu": "500m"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "128Mi"
                    }
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master",
                      "operator": "Exists"
                    }
                  ]
                }
              },
              {
                "apiVersion": "observability.openshift.io/v1",
                "kind": "ClusterLogForwarder",
                "metadata": {
                  "name": "logging",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "outputs": [
                    {
                      "lokiStack": {
                        "authentication": {
                          "token": {
                            "from": "serviceAccount"
                          }
                        },
                        "target": {
                          "name": "logging-loki"
                        }
                      },
                      "name": "logging-loki",
                      "tls": {
                        "ca": {
                          "configMapName": "openshift-service-ca.crt",
                          "key": "service-ca.crt"
                        }
                      },
                      "type": "lokiStack"
                    }
                  ],
                  "pipelines": [
                    {
                      "inputRefs": [
                        "application",
                        "infrastructure"
                      ],
                      "name": "logs-to-loki",
                      "outputRefs": [
                        "logging-loki"
                      ]
                    }
                  ],
                  "serviceAccount": {
                    "name": "log-collector"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.16-v4.20
          containerImage: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:80cac88d8ff5b40036e5983f5dacfc08702afe9c7a66b48d1c88bcb149c285b3
          createdAt: "2025-07-29T15:25:15Z"
          description: The Red Hat OpenShift Logging Operator for OCP provides a means
            for configuring and managing log collection and forwarding.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=6.0.0-0 <6.2.7'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "observability.openshift.io/v1",
              "kind": "ClusterLogForwarder",
              "metadata": {
                "name": "logging"
              }
            }
          operatorframework.io/suggested-namespace: openshift-logging
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:80cac88d8ff5b40036e5983f5dacfc08702afe9c7a66b48d1c88bcb149c285b3
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.2
          operators.operatorframework.io.bundle.channels.v1: stable-6.2
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: cluster-logging
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Logging (aos-logging@redhat.com)
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ClusterLogForwarder is an API to configure forwarding logs.


              You configure forwarding by specifying a list of `pipelines`,
              which forward from a set of named inputs to a set of named outputs.
            displayName: Cluster Log Forwarder
            kind: ClusterLogForwarder
            name: clusterlogforwarders.observability.openshift.io
            version: v1
          - description: A Log File Metric Exporter instance. LogFileMetricExporter
              is the Schema for the logFileMetricExporters API
            displayName: Log File Metric Exporter
            kind: LogFileMetricExporter
            name: logfilemetricexporters.logging.openshift.io
            version: v1alpha1
        description: |-
          # Red Hat OpenShift Logging
          The Red Hat OpenShift Logging Operator orchestrates log collection and forwarding to Red Had managed log stores and
          other third-party receivers.

          ##Features
          * **Create/Destroy**: Deploy log collectors and forwarders to support observability of OCP cluster.
          * **Simplified Configuration**: Spec collectors using a simplified API to configure log collection from opinionated sources to one or more third-party receivers.

          ## Prerequisites and Requirements
          ### Red Hat OpenShift Logging Namespace
          It is recommended to deploy the Red Hat OpenShift Logging Operator to the **openshift-logging** namespace. This namespace
          must be explicitly created by a cluster administrator (e.g. `oc create ns openshift-logging`). To enable metrics
          service discovery add namespace label `openshift.io/cluster-monitoring: "true"`.

          For additional installation documentation see [Installing logging](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html-single/logging/index#installing-logging-6-2)
          in the OpenShift product documentation.
        displayName: Red Hat OpenShift Logging
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - observability
        - loki
        - vector
        - otlp
        links:
        - name: Documentation
          url: https://github.com/openshift/cluster-logging-operator/blob/master/README.adoc
        - name: Red Hat OpenShift Logging Operator
          url: https://github.com/openshift/cluster-logging-operator
        - name: Vector
          url: https://vector.dev/
        minKubeVersion: 1.18.3
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:0d2edaf37f5e25155f9a3086e81d40686b102a78c3ae35b07e0c5992d3a7fb40
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:fa2cfa2ed336ce105c8dea5bfe0825407e37ef296193ae162f515213fe43c8d5
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:912e0be15a46e77b2495db1dad335edc4116027c342698cedd8e7718cc15a5c1
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:80cac88d8ff5b40036e5983f5dacfc08702afe9c7a66b48d1c88bcb149c285b3
        version: 6.2.7
      entries:
      - name: cluster-logging.v6.2.7
        version: 6.2.7
      - name: cluster-logging.v6.2.6
        version: 6.2.6
      - name: cluster-logging.v6.2.5
        version: 6.2.5
      - name: cluster-logging.v6.2.4
        version: 6.2.4
      - name: cluster-logging.v6.2.3
        version: 6.2.3
      - name: cluster-logging.v6.2.2
        version: 6.2.2
      - name: cluster-logging.v6.2.1
        version: 6.2.1
      - name: cluster-logging.v6.2.0
        version: 6.2.0
      name: stable-6.2
    - currentCSV: cluster-logging.v6.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "logging.openshift.io/v1alpha1",
                "kind": "LogFileMetricExporter",
                "metadata": {
                  "name": "instance",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "resources": {
                    "limits": {
                      "cpu": "500m"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "128Mi"
                    }
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master",
                      "operator": "Exists"
                    }
                  ]
                }
              },
              {
                "apiVersion": "observability.openshift.io/v1",
                "kind": "ClusterLogForwarder",
                "metadata": {
                  "name": "logging",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "outputs": [
                    {
                      "lokiStack": {
                        "authentication": {
                          "token": {
                            "from": "serviceAccount"
                          }
                        },
                        "target": {
                          "name": "logging-loki"
                        }
                      },
                      "name": "logging-loki",
                      "tls": {
                        "ca": {
                          "configMapName": "openshift-service-ca.crt",
                          "key": "service-ca.crt"
                        }
                      },
                      "type": "lokiStack"
                    }
                  ],
                  "pipelines": [
                    {
                      "inputRefs": [
                        "application",
                        "infrastructure"
                      ],
                      "name": "logs-to-loki",
                      "outputRefs": [
                        "logging-loki"
                      ]
                    }
                  ],
                  "serviceAccount": {
                    "name": "log-collector"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Logging & Tracing, Observability
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.17-v4.20
          containerImage: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:61ced99002f57d20727adc2dbad34b99c1347541b4605c5ec2847db577532dc5
          createdAt: "2025-11-13T11:03:18Z"
          description: The Red Hat OpenShift Logging Operator for OCP provides a means
            for configuring and managing log collection and forwarding.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=6.1.0-0 <6.3.2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "observability.openshift.io/v1",
              "kind": "ClusterLogForwarder",
              "metadata": {
                "name": "logging"
              }
            }
          operatorframework.io/suggested-namespace: openshift-logging
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:61ced99002f57d20727adc2dbad34b99c1347541b4605c5ec2847db577532dc5
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.3
          operators.operatorframework.io.bundle.channels.v1: stable-6.3
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: cluster-logging
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Logging (aos-logging@redhat.com)
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ClusterLogForwarder is an API to configure forwarding logs.

              You configure forwarding by specifying a list of `pipelines`,
              which forward from a set of named inputs to a set of named outputs.
            displayName: Cluster Log Forwarder
            kind: ClusterLogForwarder
            name: clusterlogforwarders.observability.openshift.io
            version: v1
          - description: A Log File Metric Exporter instance. LogFileMetricExporter
              is the Schema for the logFileMetricExporters API
            displayName: Log File Metric Exporter
            kind: LogFileMetricExporter
            name: logfilemetricexporters.logging.openshift.io
            version: v1alpha1
        description: |-
          # Red Hat OpenShift Logging
          The Red Hat OpenShift Logging Operator orchestrates log collection and forwarding to Red Had managed log stores and
          other third-party receivers.

          ##Features
          * **Create/Destroy**: Deploy log collectors and forwarders to support observability of OCP cluster.
          * **Simplified Configuration**: Spec collectors using a simplified API to configure log collection from opinionated sources to one or more third-party receivers.

          ## Prerequisites and Requirements
          ### Red Hat OpenShift Logging Namespace
          It is recommended to deploy the Red Hat OpenShift Logging Operator to the **openshift-logging** namespace. This namespace
          must be explicitly created by a cluster administrator (e.g. `oc create ns openshift-logging`). To enable metrics
          service discovery add namespace label `openshift.io/cluster-monitoring: "true"`.

          For additional installation documentation see [Deploying cluster logging](https://docs.openshift.com/container-platform/latest/logging/cluster-logging-deploying.html)
          in the OpenShift product documentation.
        displayName: Red Hat OpenShift Logging
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - observability
        - loki
        - vector
        - otlp
        links:
        - name: Documentation
          url: https://github.com/openshift/cluster-logging-operator/blob/master/README.adoc
        - name: Red Hat OpenShift Logging Operator
          url: https://github.com/openshift/cluster-logging-operator
        - name: Vector
          url: https://vector.dev/
        minKubeVersion: 1.18.3
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:5eeb9f00760e286b2088fe4384bc0de5b18178fb3811796608ffe98d1100312e
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:56ee655fc9fd5aca984a7c552c00112b7314d2e79117f58c469ef91f3cefe640
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:61ced99002f57d20727adc2dbad34b99c1347541b4605c5ec2847db577532dc5
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:c7bfa11f2cf8403ef437bdcf514fe78823472e578766192f6742322750f1df18
        version: 6.3.2
      entries:
      - name: cluster-logging.v6.3.2
        version: 6.3.2
      - name: cluster-logging.v6.3.1
        version: 6.3.1
      - name: cluster-logging.v6.3.0
        version: 6.3.0
      name: stable-6.3
    - currentCSV: cluster-logging.v6.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "logging.openshift.io/v1alpha1",
                "kind": "LogFileMetricExporter",
                "metadata": {
                  "name": "instance",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "resources": {
                    "limits": {
                      "cpu": "500m"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "128Mi"
                    }
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master",
                      "operator": "Exists"
                    }
                  ]
                }
              },
              {
                "apiVersion": "observability.openshift.io/v1",
                "kind": "ClusterLogForwarder",
                "metadata": {
                  "name": "logging",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "outputs": [
                    {
                      "lokiStack": {
                        "authentication": {
                          "token": {
                            "from": "serviceAccount"
                          }
                        },
                        "target": {
                          "name": "logging-loki"
                        }
                      },
                      "name": "logging-loki",
                      "tls": {
                        "ca": {
                          "configMapName": "openshift-service-ca.crt",
                          "key": "service-ca.crt"
                        }
                      },
                      "type": "lokiStack"
                    }
                  ],
                  "pipelines": [
                    {
                      "inputRefs": [
                        "application",
                        "infrastructure"
                      ],
                      "name": "logs-to-loki",
                      "outputRefs": [
                        "logging-loki"
                      ]
                    }
                  ],
                  "serviceAccount": {
                    "name": "log-collector"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Logging & Tracing, Observability
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.18-v4.21
          containerImage: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
          createdAt: "2025-11-20T15:34:38Z"
          description: The Red Hat OpenShift Logging Operator for OCP provides a means
            for configuring and managing log collection and forwarding.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=6.2.0-0 <6.4.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "observability.openshift.io/v1",
              "kind": "ClusterLogForwarder",
              "metadata": {
                "name": "logging"
              }
            }
          operatorframework.io/suggested-namespace: openshift-logging
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.4
          operators.operatorframework.io.bundle.channels.v1: stable-6.4
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: cluster-logging
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Logging (aos-logging@redhat.com)
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ClusterLogForwarder is an API to configure forwarding logs.

              You configure forwarding by specifying a list of `pipelines`,
              which forward from a set of named inputs to a set of named outputs.
            displayName: Cluster Log Forwarder
            kind: ClusterLogForwarder
            name: clusterlogforwarders.observability.openshift.io
            version: v1
          - description: A Log File Metric Exporter instance. LogFileMetricExporter
              is the Schema for the logFileMetricExporters API
            displayName: Log File Metric Exporter
            kind: LogFileMetricExporter
            name: logfilemetricexporters.logging.openshift.io
            version: v1alpha1
        description: |-
          # Red Hat OpenShift Logging
          The Red Hat OpenShift Logging Operator orchestrates log collection and forwarding to Red Had managed log stores and
          other third-party receivers.

          ##Features
          * **Create/Destroy**: Deploy log collectors and forwarders to support observability of OCP cluster.
          * **Simplified Configuration**: Spec collectors using a simplified API to configure log collection from opinionated sources to one or more third-party receivers.

          ## Prerequisites and Requirements
          ### Red Hat OpenShift Logging Namespace
          It is recommended to deploy the Red Hat OpenShift Logging Operator to the **openshift-logging** namespace. This namespace
          must be explicitly created by a cluster administrator (e.g. `oc create ns openshift-logging`). To enable metrics
          service discovery add namespace label `openshift.io/cluster-monitoring: "true"`.

          For additional installation documentation see [Deploying cluster logging](https://docs.openshift.com/container-platform/latest/logging/cluster-logging-deploying.html)
          in the OpenShift product documentation.
        displayName: Red Hat OpenShift Logging
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - observability
        - loki
        - vector
        - otlp
        links:
        - name: Documentation
          url: https://github.com/openshift/cluster-logging-operator/blob/master/README.adoc
        - name: Red Hat OpenShift Logging Operator
          url: https://github.com/openshift/cluster-logging-operator
        - name: Vector
          url: https://vector.dev/
        minKubeVersion: 1.18.3
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:057e1b87e9b9419d35cff1ee0ee8e19bbf12e6ecf3ff014206b62ca44e70eb07
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:011570d92a596fd2895230b19bc34a25f8befabfed6b7ce2f1e2bbe211391d22
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:022747902d768b6bf95a76c7c0b3aa63af356566b8411448cf64f87fc31a4794
        version: 6.4.1
      entries:
      - name: cluster-logging.v6.4.1
        version: 6.4.1
      - name: cluster-logging.v6.4.0
        version: 6.4.0
      name: stable-6.4
    defaultChannel: stable-6.4
    packageName: cluster-logging
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Konveyor
      provider-url: ""
    name: gitops-primer
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitops-primer.v0.0.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "primer.gitops.io/v1alpha1",
                "kind": "Export",
                "metadata": {
                  "name": "primer"
                },
                "spec": {
                  "method": "download"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/migtools/gitops-primer:v0.0.11
          operatorframework.io/suggested-namespace: gitops-primer-system
          operators.operatorframework.io/builder: operator-sdk-v1.18.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Export is the Schema for the exports API
            displayName: Export
            kind: Export
            name: exports.primer.gitops.io
            version: v1alpha1
        description: Export and normalize Kubernetes YAML files for GitOps
        displayName: gitops-primer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - operator
        links:
        - name: Gitops Primer
          url: https://github.com/migtools/gitops-primer
        maturity: alpha
        provider:
          name: Konveyor
        relatedImages:
        - quay.io/migtools/gitops-primer-webhook:v0.0.11
        - quay.io/migtools/gitops-primer:v0.0.11
        - quay.io/openshift-community-operators/gitops-primer@sha256:97af48469275f1b3a669f8e24a97a80ce9897fc5b12643a4f298b82dbe26e20b
        - quay.io/openshift/origin-oauth-proxy:4.9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6d57bfd91fac9b68eb72d27226bc297472ceb136c996628b845ecc54a48b31cb
        - quay.io/migtools/gitops-primer-downloader:v0.0.11
        - quay.io/migtools/gitops-primer-export:v0.0.11
        version: 0.0.11
      entries:
      - name: gitops-primer.v0.0.11
        version: 0.0.11
      - name: gitops-primer.v0.0.10
        version: 0.0.10
      - name: gitops-primer.v0.0.9
        version: 0.0.9
      - name: gitops-primer.v0.0.8
        version: 0.0.8
      - name: gitops-primer.v0.0.7
        version: 0.0.7
      - name: gitops-primer.v0.0.6
        version: 0.0.6
      - name: gitops-primer.v0.0.5
        version: 0.0.5
      - name: gitops-primer.v0.0.4
        version: 0.0.4
      - name: gitops-primer.v0.0.3
        version: 0.0.3
      - name: gitops-primer.v0.0.2
        version: 0.0.2
      - name: gitops-primer.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: gitops-primer
    provider:
      name: Konveyor
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ecs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ecs-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecs.services.k8s.aws/v1alpha1",
                "kind": "Service",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ecs.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ecs.services.k8s.aws/v1alpha1",
                "kind": "TaskDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ecs-controller:1.2.0
          createdAt: "2025-11-29T03:45:21Z"
          description: AWS ECS controller is a service controller for managing ECS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster represents the state of an AWS ecs Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.ecs.services.k8s.aws
            version: v1alpha1
          - description: Service represents the state of an AWS ecs Service resource.
            displayName: Service
            kind: Service
            name: services.ecs.services.k8s.aws
            version: v1alpha1
          - description: TaskDefinition represents the state of an AWS ecs TaskDefinition
              resource.
            displayName: TaskDefinition
            kind: TaskDefinition
            name: taskdefinitions.ecs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Elastic Container Service (ECS) resources in AWS from within your Kubernetes cluster.

          **About Amazon ECS**

          Amazon Elastic Container Service (Amazon ECS) is a fully managed container orchestration service that helps you easily deploy, manage, and scale containerized applications. As a fully managed service, Amazon ECS comes with AWS configuration and operational best practices built-in. It's integrated with both AWS and third-party tools, such as Amazon Elastic Container Registry and Docker. This integration makes it easier for teams to focus on building the applications, not the environment. You can run and scale your container workloads across AWS Regions in the cloud, and on-premises, without the complexity of managing a control plane.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ECS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ECS Developer Resources
          url: https://aws.amazon.com/ecs/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ecs maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ecs-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ecs-controller@sha256:4626d70cfb1b1ea707836df633e85aba77255150c01fc2e18a6b2a364b626344
        version: 1.2.0
      entries:
      - name: ack-ecs-controller.v1.2.0
        version: 1.2.0
      - name: ack-ecs-controller.v1.1.1
        version: 1.1.1
      - name: ack-ecs-controller.v1.0.15
        version: 1.0.15
      - name: ack-ecs-controller.v1.0.14
        version: 1.0.14
      - name: ack-ecs-controller.v1.0.13
        version: 1.0.13
      - name: ack-ecs-controller.v1.0.12
        version: 1.0.12
      - name: ack-ecs-controller.v1.0.11
        version: 1.0.11
      - name: ack-ecs-controller.v1.0.10
        version: 1.0.10
      - name: ack-ecs-controller.v1.0.9
        version: 1.0.9
      name: alpha
    defaultChannel: alpha
    packageName: ack-ecs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Grafana Labs
      provider-url: https://grafana.com
    name: grafana-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: grafana-operator.v5.21.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "Grafana",
                "metadata": {
                  "labels": {
                    "dashboards": "grafana-a",
                    "folders": "grafana-a"
                  },
                  "name": "grafana-a"
                },
                "spec": {
                  "config": {
                    "auth": {
                      "disable_login_form": "false"
                    },
                    "log": {
                      "mode": "console"
                    },
                    "security": {
                      "admin_password": "start",
                      "admin_user": "root"
                    }
                  }
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaAlertRuleGroup",
                "metadata": {
                  "name": "grafanaalertrulegroup-sample"
                },
                "spec": {
                  "folderRef": "test-folder-from-operator",
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "interval": "5m",
                  "rules": [
                    {
                      "condition": "B",
                      "data": [
                        {
                          "datasourceUid": "grafanacloud-demoinfra-prom",
                          "model": {
                            "datasource": {
                              "type": "prometheus",
                              "uid": "grafanacloud-demoinfra-prom"
                            },
                            "editorMode": "code",
                            "expr": "weather_temp_c{}",
                            "instant": true,
                            "intervalMs": 1000,
                            "legendFormat": "__auto",
                            "maxDataPoints": 43200,
                            "range": false,
                            "refId": "A"
                          },
                          "refId": "A",
                          "relativeTimeRange": {
                            "from": 600
                          }
                        },
                        {
                          "datasourceUid": "__expr__",
                          "model": {
                            "conditions": [
                              {
                                "evaluator": {
                                  "params": [
                                    0
                                  ],
                                  "type": "gt"
                                },
                                "operator": {
                                  "type": "and"
                                },
                                "query": {
                                  "params": [
                                    "C"
                                  ]
                                },
                                "reducer": {
                                  "params": [],
                                  "type": "last"
                                },
                                "type": "query"
                              }
                            ],
                            "datasource": {
                              "type": "__expr__",
                              "uid": "__expr__"
                            },
                            "expression": "A",
                            "intervalMs": 1000,
                            "maxDataPoints": 43200,
                            "refId": "B",
                            "type": "threshold"
                          },
                          "refId": "B",
                          "relativeTimeRange": {
                            "from": 600
                          }
                        }
                      ],
                      "execErrState": "Error",
                      "for": "5m0s",
                      "noDataState": "NoData",
                      "title": "Temperature below freezing",
                      "uid": "4843de5c-4f8a-4af0-9509-23526a04faf8"
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaContactPoint",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "grafana-operator",
                    "app.kubernetes.io/instance": "grafanacontactpoint-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "grafanacontactpoint",
                    "app.kubernetes.io/part-of": "grafana-operator"
                  },
                  "name": "grafanacontactpoint-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "name": "grafanacontactpoint-sample",
                  "settings": {
                    "email": null
                  },
                  "type": "email"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaDashboard",
                "metadata": {
                  "name": "grafanadashboard-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "json": "{\n\n  \"id\": null,\n  \"title\": \"Simple Dashboard\",\n  \"tags\": [],\n  \"style\": \"dark\",\n  \"timezone\": \"browser\",\n  \"editable\": true,\n  \"hideControls\": false,\n  \"graphTooltip\": 1,\n  \"panels\": [],\n  \"time\": {\n    \"from\": \"now-6h\",\n    \"to\": \"now\"\n  },\n  \"timepicker\": {\n    \"time_options\": [],\n    \"refresh_intervals\": []\n  },\n  \"templating\": {\n    \"list\": []\n  },\n  \"annotations\": {\n    \"list\": []\n  },\n  \"refresh\": \"5s\",\n  \"schemaVersion\": 17,\n  \"version\": 0,\n  \"links\": []\n}\n"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaDatasource",
                "metadata": {
                  "name": "grafanadatasource-sample"
                },
                "spec": {
                  "datasource": {
                    "access": "proxy",
                    "isDefault": true,
                    "jsonData": {
                      "timeInterval": "5s",
                      "tlsSkipVerify": true
                    },
                    "name": "prometheus",
                    "type": "prometheus",
                    "url": "http://prometheus-service:9090"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "plugins": [
                    {
                      "name": "grafana-clock-panel",
                      "version": "1.3.0"
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaFolder",
                "metadata": {
                  "name": "grafanafolder-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "title": "Example Folder"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaLibraryPanel",
                "metadata": {
                  "name": "grafana-library-panel-inline-envs"
                },
                "spec": {
                  "envs": [
                    {
                      "name": "CUSTOM_RANGE_ENV",
                      "value": "now - 12h"
                    }
                  ],
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "jsonnet": "local myRange = std.extVar('CUSTOM_RANGE_ENV'); {\n\n  model: {}\n}\n",
                  "plugins": [
                    {
                      "name": "grafana-piechart-panel",
                      "version": "1.3.9"
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaMuteTiming",
                "metadata": {
                  "name": "mutetiming-sample"
                },
                "spec": {
                  "editable": false,
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "name": "mutetiming-sample",
                  "time_intervals": [
                    {
                      "days_of_month": [
                        "1",
                        "15"
                      ],
                      "location": "Asia/Shanghai",
                      "times": [
                        {
                          "end_time": "06:00",
                          "start_time": "00:00"
                        }
                      ],
                      "weekdays": [
                        "saturday"
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaNotificationPolicy",
                "metadata": {
                  "name": "grafananotificationpolicy-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "route": {
                    "group_by": [
                      "grafana_folder",
                      "alertname"
                    ],
                    "receiver": "Grafana Cloud OnCall",
                    "routes": [
                      {
                        "object_matchers": [
                          [
                            "foo",
                            "=",
                            "bar"
                          ]
                        ],
                        "receiver": "grafana-default-email",
                        "routes": [
                          {
                            "object_matchers": [
                              [
                                "severity",
                                "=",
                                "critical"
                              ]
                            ],
                            "receiver": "Grafana Cloud OnCall"
                          }
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaNotificationPolicyRoute",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "grafana-operator",
                    "app.kubernetes.io/instance": "grafananotificationpolicyroute-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "grafananotificationpolicyroute",
                    "app.kubernetes.io/part-of": "grafana-operator"
                  },
                  "name": "grafananotificationpolicyroute-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaNotificationTemplate",
                "metadata": {
                  "name": "test"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "name": "test",
                  "template": "{{ define \"SlackAlert\" }}\n  [{{.Status}}] {{ .Labels.alertname }}\n  {{ .Annotations.AlertValues }}\n{{ end }}\n\n{{ define \"SlackAlertMessage\" }}\n  {{ if gt (len .Alerts.Firing) 0 }}\n    {{ len .Alerts.Firing }} firing:\n    {{ range .Alerts.Firing }} {{ template \"SlackAlert\" . }} {{ end }}\n  {{ end }}\n  {{ if gt (len .Alerts.Resolved) 0 }}\n    {{ len .Alerts.Resolved }} resolved:\n    {{ range .Alerts.Resolved }} {{ template \"SlackAlert\" . }} {{ end }}\n  {{ end }}\n{{ end }}\n\n{{ template \"SlackAlertMessage\" . }}\n"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaServiceAccount",
                "metadata": {
                  "name": "my-service-account"
                },
                "spec": {
                  "instanceName": "my-grafana",
                  "isDisabled": false,
                  "name": "my-service-account",
                  "role": "Admin",
                  "tokens": [
                    {
                      "expires": "2029-12-31T14:00:00+02:00",
                      "name": "my-token-a",
                      "secretName": "thatsfine"
                    },
                    {
                      "name": "my-token-b"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: ghcr.io/grafana/grafana-operator@sha256:0c74f67a26af34701639b858a51306163efd8f292206124d754c9c5e4628aeef
          createdAt: "2025-12-17T14:15:21Z"
          description: Deploys and manages Grafana instances, dashboards and data
            sources
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/grafana/grafana-operator
          support: Grafana Labs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alert rule groups that contain multiple alert rules
            displayName: Grafana Alert Rule Group
            kind: GrafanaAlertRuleGroup
            name: grafanaalertrulegroups.grafana.integreatly.org
            version: v1beta1
          - description: Contact Points
            displayName: Grafana Contact Point
            kind: GrafanaContactPoint
            name: grafanacontactpoints.grafana.integreatly.org
            version: v1beta1
          - description: Dashboards
            displayName: Grafana Dashboard
            kind: GrafanaDashboard
            name: grafanadashboards.grafana.integreatly.org
            version: v1beta1
          - description: Data Sources
            displayName: Grafana Datasource
            kind: GrafanaDatasource
            name: grafanadatasources.grafana.integreatly.org
            version: v1beta1
          - description: Folder for dashboards & alerts
            displayName: Grafana Folder
            kind: GrafanaFolder
            name: grafanafolders.grafana.integreatly.org
            version: v1beta1
          - description: Library Panel for use in dashboards
            displayName: GrafanaLibraryPanel
            kind: GrafanaLibraryPanel
            name: grafanalibrarypanels.grafana.integreatly.org
            version: v1beta1
          - description: Mute Timings that silence alerts
            kind: GrafanaMuteTiming
            name: grafanamutetimings.grafana.integreatly.org
            version: v1beta1
          - description: Notification Policy Tree
            displayName: Grafana Notification policy
            kind: GrafanaNotificationPolicy
            name: grafananotificationpolicies.grafana.integreatly.org
            version: v1beta1
          - description: GrafanaNotificationPolicyRoute is the Schema for the grafananotificationpolicyroutes
              API
            displayName: Grafana Notification Policy Route
            kind: GrafanaNotificationPolicyRoute
            name: grafananotificationpolicyroutes.grafana.integreatly.org
            version: v1beta1
          - description: Templates for use in notifications
            kind: GrafanaNotificationTemplate
            name: grafananotificationtemplates.grafana.integreatly.org
            version: v1beta1
          - description: Grafana Instances
            displayName: Grafana
            kind: Grafana
            name: grafanas.grafana.integreatly.org
            version: v1beta1
          - description: Grafana service accounts
            kind: GrafanaServiceAccount
            name: grafanaserviceaccounts.grafana.integreatly.org
            version: v1beta1
        description: Deploys and manages Grafana instances, dashboards and data sources
        displayName: Grafana Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Grafana
        - Metrics
        - Observability
        links:
        - name: Grafana Operator
          url: https://grafana.github.io/grafana-operator
        maintainers:
        - email: grafana-operator@grafana.com
          name: Grafana-operator maintainers
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Grafana Labs
          url: https://grafana.com
        relatedImages:
        - docker.io/grafana/grafana@sha256:70d9599b186ce287be0d2c5ba9a78acb2e86c1a68c9c41449454d0fc3eeb84e8
        - ghcr.io/grafana/grafana-operator@sha256:0c74f67a26af34701639b858a51306163efd8f292206124d754c9c5e4628aeef
        - quay.io/community-operator-pipeline-prod/grafana-operator@sha256:5ac32543a87b1f34e4ade94ff03a4243420a58a0249c30892fc9cdd5216104f1
        version: 5.21.2
      entries:
      - name: grafana-operator.v5.21.2
        version: 5.21.2
      - name: grafana-operator.v5.21.1
        version: 5.21.1
      - name: grafana-operator.v5.20.0
        version: 5.20.0
      - name: grafana-operator.v5.19.4
        version: 5.19.4
      - name: grafana-operator.v5.18.0
        version: 5.18.0
      - name: grafana-operator.v5.17.1
        version: 5.17.1
      - name: grafana-operator.v5.15.1
        version: 5.15.1
      name: v5
    defaultChannel: v5
    packageName: grafana-operator
    provider:
      name: Grafana Labs
      url: https://grafana.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Flux project
      provider-url: ""
    name: flux
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: flux.v2.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "helm.toolkit.fluxcd.io/v2beta1",
                "kind": "HelmRelease",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "default"
                },
                "spec": {
                    "interval": "5m",
                    "chart": {
                      "spec": {
                          "chart": "podinfo",
                          "version": "4.0.x",
                          "sourceRef": {
                            "kind": "HelmRepository",
                            "name": "podinfo",
                            "namespace": "flux-system"
                          },
                          "interval": "1m"
                      }
                    },
                    "values": {
                      "replicaCount": 2
                    }
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "GitRepository",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "dev"
                },
                "spec": {
                    "interval": "1m",
                    "ref": {
                      "branch": "master"
                    },
                    "url": "https://github.com/stefanprodan/podinfo"
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "HelmRepository",
                "metadata": {
                    "name": "stable",
                    "namespace": "default"
                },
                "spec": {
                    "url": "https://kubernetes-charts.storage.googleapis.com/",
                    "interval": "10m"
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "HelmChart",
                "metadata": {
                    "name": "redis",
                    "namespace": "default"
                },
                "spec": {
                    "chart": "redis",
                    "version": "10.5.7",
                    "sourceRef": {
                      "name": "stable",
                      "kind": "HelmRepository"
                    },
                    "interval": "5m"
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "Bucket",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "default"
                },
                "spec": {
                    "interval": "1m",
                    "provider": "generic",
                    "bucketName": "podinfo",
                    "endpoint": "minio.minio.svc.cluster.local:9000",
                    "insecure": true,
                    "secretRef": {
                      "name": "minio-credentials"
                    }
                }
              },
              {
                "apiVersion": "kustomize.toolkit.fluxcd.io/v1beta2",
                "kind": "Kustomization",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "dev"
                },
                "spec": {
                    "interval": "5m",
                    "path": "./deploy/overlays/dev",
                    "prune": true,
                    "sourceRef": {
                      "kind": "GitRepository",
                      "name": "podinfo"
                    },
                    "timeout": "2m",
                    "wait": true
                }
              },
              {
                "apiVersion": "notification.toolkit.fluxcd.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "default"
                },
                "spec": {
                    "type": "github",
                    "address": "https://github.com/stefanprodan/podinfo",
                    "secretRef": {
                      "name": "api-token"
                    }
                }
              },
              {
                "apiVersion": "notification.toolkit.fluxcd.io/v1beta1",
                "kind": "Alert",
                "metadata": {
                    "name": "webapp",
                    "namespace": "default"
                },
                "spec": {
                    "providerRef": {
                      "name": "on-call-slack"
                    },
                    "eventSeverity": "info",
                    "eventSources": [
                      {
                          "kind": "GitRepository",
                          "name": "webapp"
                      },
                      {
                          "kind": "Bucket",
                          "name": "secrets"
                      },
                      {
                          "kind": "Kustomization",
                          "name": "webapp-backend"
                      },
                      {
                          "kind": "Kustomization",
                          "name": "webapp-frontend"
                      }
                    ]
                }
              },
              {
                "apiVersion": "notification.toolkit.fluxcd.io/v1beta1",
                "kind": "Receiver",
                "metadata": {
                    "name": "github-receiver",
                    "namespace": "default"
                },
                "spec": {
                    "type": "github",
                    "events": [
                      "ping",
                      "push"
                    ],
                    "secretRef": {
                      "name": "webhook-token"
                    },
                    "resources": [
                      {
                          "kind": "GitRepository",
                          "name": "webapp"
                      },
                      {
                          "kind": "HelmRepository",
                          "name": "webapp"
                      }
                    ]
                }
              },
              {
                "apiVersion": "image.toolkit.fluxcd.io/v1beta1",
                "kind": "ImageRepository",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "flux-system"
                },
                "spec": {
                    "image": "ghcr.io/stefanprodan/podinfo",
                    "interval": "1m0s"
                }
              },
              {
                "apiVersion": "image.toolkit.fluxcd.io/v1beta1",
                "kind": "ImagePolicy",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "flux-system"
                },
                "spec": {
                    "imageRepositoryRef": {
                      "name": "podinfo"
                    },
                    "policy": {
                      "semver": {
                          "range": "5.0.x"
                      }
                    }
                }
              },
              {
                "apiVersion": "image.toolkit.fluxcd.io/v1beta1",
                "kind": "ImageUpdateAutomation",
                "metadata": {
                  "name": "flux-system",
                  "namespace": "flux-system"
                },
                "spec": {
                  "interval": "1m0s",
                  "sourceRef": {
                    "kind": "GitRepository",
                    "name": "flux-system"
                  },
                  "git": {
                    "checkout": {
                      "ref": {
                        "branch": "main"
                      }
                    },
                    "commit": {
                      "author": {
                        "email": "fluxcdbot@users.noreply.github.com",
                        "name": "fluxcdbot"
                      },
                      "messageTemplate": "{{range .Updated.Images}}{{println .}}{{end}}"
                    },
                    "push": {
                      "branch": "main"
                    }
                  },
                  "update": {
                    "path": "./clusters/my-cluster",
                    "strategy": "Setters"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: ghcr.io/fluxcd/source-controller:v1.3.0
          description: Flux is a Continuous Delivery solution for Kubernetes.
          operatorframework.io/suggested-namespace: flux-system
          support: The Flux community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alert
            displayName: Alert
            kind: Alert
            name: alerts.notification.toolkit.fluxcd.io
            version: v1beta1
          - description: Alert
            displayName: Alert
            kind: Alert
            name: alerts.notification.toolkit.fluxcd.io
            version: v1beta2
          - description: Alert
            displayName: Alert
            kind: Alert
            name: alerts.notification.toolkit.fluxcd.io
            version: v1beta3
          - description: Bucket
            displayName: Bucket
            kind: Bucket
            name: buckets.source.toolkit.fluxcd.io
            version: v1beta1
          - description: Bucket
            displayName: Bucket
            kind: Bucket
            name: buckets.source.toolkit.fluxcd.io
            version: v1beta2
          - description: GitRepository
            displayName: GitRepository
            kind: GitRepository
            name: gitrepositories.source.toolkit.fluxcd.io
            version: v1
          - description: GitRepository
            displayName: GitRepository
            kind: GitRepository
            name: gitrepositories.source.toolkit.fluxcd.io
            version: v1beta1
          - description: GitRepository
            displayName: GitRepository
            kind: GitRepository
            name: gitrepositories.source.toolkit.fluxcd.io
            version: v1beta2
          - description: HelmChart
            displayName: HelmChart
            kind: HelmChart
            name: helmcharts.source.toolkit.fluxcd.io
            version: v1
          - description: HelmChart
            displayName: HelmChart
            kind: HelmChart
            name: helmcharts.source.toolkit.fluxcd.io
            version: v1beta1
          - description: HelmChart
            displayName: HelmChart
            kind: HelmChart
            name: helmcharts.source.toolkit.fluxcd.io
            version: v1beta2
          - description: HelmRelease
            displayName: HelmRelease
            kind: HelmRelease
            name: helmreleases.helm.toolkit.fluxcd.io
            version: v2
          - description: HelmRelease
            displayName: HelmRelease
            kind: HelmRelease
            name: helmreleases.helm.toolkit.fluxcd.io
            version: v2beta1
          - description: HelmRelease
            displayName: HelmRelease
            kind: HelmRelease
            name: helmreleases.helm.toolkit.fluxcd.io
            version: v2beta2
          - description: HelmRepository
            displayName: HelmRepository
            kind: HelmRepository
            name: helmrepositories.source.toolkit.fluxcd.io
            version: v1
          - description: HelmRepository
            displayName: HelmRepository
            kind: HelmRepository
            name: helmrepositories.source.toolkit.fluxcd.io
            version: v1beta1
          - description: HelmRepository
            displayName: HelmRepository
            kind: HelmRepository
            name: helmrepositories.source.toolkit.fluxcd.io
            version: v1beta2
          - description: ImagePolicy
            displayName: ImagePolicy
            kind: ImagePolicy
            name: imagepolicies.image.toolkit.fluxcd.io
            version: v1beta1
          - description: ImagePolicy
            displayName: ImagePolicy
            kind: ImagePolicy
            name: imagepolicies.image.toolkit.fluxcd.io
            version: v1beta2
          - description: ImageRepository
            displayName: ImageRepository
            kind: ImageRepository
            name: imagerepositories.image.toolkit.fluxcd.io
            version: v1beta1
          - description: ImageRepository
            displayName: ImageRepository
            kind: ImageRepository
            name: imagerepositories.image.toolkit.fluxcd.io
            version: v1beta2
          - description: ImageUpdateAutomation
            displayName: ImageUpdateAutomation
            kind: ImageUpdateAutomation
            name: imageupdateautomations.image.toolkit.fluxcd.io
            version: v1beta1
          - description: ImageUpdateAutomation
            displayName: ImageUpdateAutomation
            kind: ImageUpdateAutomation
            name: imageupdateautomations.image.toolkit.fluxcd.io
            version: v1beta2
          - description: Kustomization
            displayName: Kustomization
            kind: Kustomization
            name: kustomizations.kustomize.toolkit.fluxcd.io
            version: v1
          - description: Kustomization
            displayName: Kustomization
            kind: Kustomization
            name: kustomizations.kustomize.toolkit.fluxcd.io
            version: v1beta1
          - description: Kustomization
            displayName: Kustomization
            kind: Kustomization
            name: kustomizations.kustomize.toolkit.fluxcd.io
            version: v1beta2
          - description: OCIRepository
            displayName: OCIRepository
            kind: OCIRepository
            name: ocirepositories.source.toolkit.fluxcd.io
            version: v1beta2
          - description: Provider
            displayName: Provider
            kind: Provider
            name: providers.notification.toolkit.fluxcd.io
            version: v1beta1
          - description: Provider
            displayName: Provider
            kind: Provider
            name: providers.notification.toolkit.fluxcd.io
            version: v1beta2
          - description: Provider
            displayName: Provider
            kind: Provider
            name: providers.notification.toolkit.fluxcd.io
            version: v1beta3
          - description: Receiver
            displayName: Receiver
            kind: Receiver
            name: receivers.notification.toolkit.fluxcd.io
            version: v1
          - description: Receiver
            displayName: Receiver
            kind: Receiver
            name: receivers.notification.toolkit.fluxcd.io
            version: v1beta1
          - description: Receiver
            displayName: Receiver
            kind: Receiver
            name: receivers.notification.toolkit.fluxcd.io
            version: v1beta2
        description: |-
          [Flux](https://fluxcd.io/) is a Continuous Delivery solution for Kubernetes.
          Flux is constructed with the [GitOps Toolkit](https://toolkit.fluxcd.io/components/), a set of composable APIs and specialized tools for keeping Kubernetes clusters in sync with sources of configuration (like Git & Helm repositories), and automating updates to configuration when there is new code to deploy.

          Flux is a CNCF incubation project made for:

          - **cluster operators** who automate provision and configuration of clusters
          - **platform engineers** who build continuous delivery for developer teams
          - **app developers** who rely on continuous delivery to get their code live

          Features:

          - Source configuration from Git and Helm repositories, and S3-compatible buckets (e.g., Minio)
          - Kustomize and Helm support
          - Event-triggered and periodic reconciliation
          - Integration with Kubernetes RBAC
          - Health assessment (clusters and workloads)
          - Dependency management (infrastructure and workloads)
          - Secrets management (builtin support for Mozilla SOPS and Cloud KMS)
          - Alerting to external systems (webhook senders)
          - External events handling (webhook receivers)
          - Automated container image updates to Git (image scanning and patching)
          - Policy-driven validation (OPA, Kyverno, admission controllers)
          - Seamless integration with Git providers (GitHub, GitLab, Bitbucket)
          - Interoperability with Cluster API (CAPI) providers

          ### Steps to support bootstraping with Flux CLI

          SecComp Profile should be removed as it requires a special privilege to get the access.
          Also, it requires to enforce `runUserAs` to the same UID provided by the images to prevent OpenShift
          to alter the user id expected by our controllers.

          To do so, please specifiy a patch using the following Kustomization file, for example.

          ```yaml
          apiVersion: kustomize.config.k8s.io/v1beta1
          kind: Kustomization
          resources:
            - gotk-components.yaml
            - gotk-sync.yaml
          patches:
            - patch: |
                apiVersion: apps/v1
                kind: Deployment
                metadata:
                  name: all
                spec:
                  template:
                    spec:
                      containers:
                        - name: manager
                          securityContext:
                            runAsUser: 65534
                            seccompProfile:
                              $patch: delete
              target:
                kind: Deployment
                labelSelector: app.kubernetes.io/part-of=flux
          ```

          Then before installing Flux, please also perform the following steps to bind Flux to the `nonroot` SecurityContextConstraint (SCC). This applies to installation via OC's OLM or via Flux CLI.

          ```sh
          # replace default "flux-system" with the project/namespace name for your flux installation
          namespace="flux-system"
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:source-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:kustomize-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:helm-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:notification-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:image-automation-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:image-reflector-controller

          ```

          To see complete steps please refer to this [documentation](https://github.com/fluxcd/website/blob/main/content/en/docs/use-cases/openshift.md).

          If you've already installed Flux, you might need to uninstall it after applying the above pre-requisite steps.

          ### Network Policies

          This version of Flux is shipped without the normally provided network Policies.
          By default all traffic is enabled, and anyone can access the source-controller
          artifacts.

          It is not recommended to run it in production as is.

          Please visit [Flux's policies](https://github.com/fluxcd/flux2/tree/main/manifests/policies)
          to deploy the needed network policies and secure your Flux setup.

          ### Breaking Changes

          - Flux 0.18.x ships with v1beta2 of the kustomize.toolkit.fluxcd.io/Kustomization CRD.
          - Flux 0.25.x is the last Flux release where Kubernetes 1.19 is supported.

          ### Flux on OpenShift Use Cases

          - [The GitOps with Flux + OpenShift](https://www.youtube.com/watch?v=8ybCtNVP5To) talk by Andrew Block (Red Hat) showing how to setup multi-tenacy on OpenShift using Flux.
          - [Flux OpenShift Use Case](https://fluxcd.io/docs/use-cases/openshift/) on FluxCD.io
        displayName: Flux
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - flux
        - gitops
        - cd
        - continuous delivery
        - fluxcd
        - helm
        - kustomize
        links:
        - name: Homepage
          url: https://fluxcd.io/
        - name: Documentation
          url: https://fluxcd.io/docs/
        - name: Slack
          url: https://cloud-native.slack.com/messages/flux
        - name: Mailing List
          url: https://lists.cncf.io/g/cncf-flux-dev
        - name: Source Code
          url: https://github.com/fluxcd/flux2
        maintainers:
        - email: support@weave.works
          name: The Flux maintainers
        maturity: stable
        provider:
          name: The Flux project
        relatedImages:
        - ghcr.io/fluxcd/image-reflector-controller:v0.32.0
        - ghcr.io/fluxcd/kustomize-controller:v1.3.0
        - ghcr.io/fluxcd/notification-controller:v1.3.0
        - ghcr.io/fluxcd/source-controller:v1.3.0
        - quay.io/community-operator-pipeline-prod/flux@sha256:cd94037ff3055ab6ce40b0670f900248a5fd233cc67a2a4f92c1559cf9d2f3ad
        - ghcr.io/fluxcd/helm-controller:v1.0.1
        - ghcr.io/fluxcd/image-automation-controller:v0.38.0
        version: 2.3.0
      entries:
      - name: flux.v2.3.0
        version: 2.3.0
      - name: flux.v2.2.2
        version: 2.2.2
      - name: flux.v2.2.0
        version: 2.2.0
      - name: flux.v2.0.1
        version: 2.0.1
      - name: flux.v0.41.2
        version: 0.41.2
      - name: flux.v0.40.0
        version: 0.40.0
      - name: flux.v0.39.0
        version: 0.39.0
      - name: flux.v0.38.3
        version: 0.38.3
      - name: flux.v0.37.0
        version: 0.37.0
      - name: flux.v0.36.0
        version: 0.36.0
      - name: flux.v0.35.0
        version: 0.35.0
      - name: flux.v0.31.4
        version: 0.31.4
      - name: flux.v0.31.3
        version: 0.31.3
      - name: flux.v0.30.2
        version: 0.30.2
      - name: flux.v0.28.5
        version: 0.28.5
      - name: flux.v0.28.4
        version: 0.28.4
      - name: flux.v0.28.3
        version: 0.28.3
      - name: flux.v0.27.4
        version: 0.27.4
      - name: flux.v0.27.3
        version: 0.27.3
      - name: flux.v0.27.2
        version: 0.27.2
      - name: flux.v0.27.0
        version: 0.27.0
      - name: flux.v0.26.1
        version: 0.26.1
      - name: flux.v0.26.0
        version: 0.26.0
      - name: flux.v0.25.3
        version: 0.25.3
      - name: flux.v0.25.2
        version: 0.25.2
      - name: flux.v0.24.1
        version: 0.24.1
      - name: flux.v0.24.0
        version: 0.24.0
      - name: flux.v0.23.0
        version: 0.23.0
      - name: flux.v0.22.1
        version: 0.22.1
      - name: flux.v0.22.0
        version: 0.22.0
      - name: flux.v0.21.1
        version: 0.21.1
      - name: flux.v0.21.0
        version: 0.21.0
      - name: flux.v0.20.1
        version: 0.20.1
      - name: flux.v0.20.0
        version: 0.20.0
      - name: flux.v0.19.1
        version: 0.19.1
      - name: flux.v0.18.3
        version: 0.18.3
      - name: flux.v0.18.1
        version: 0.18.1
      - name: flux.v0.17.2
        version: 0.17.2
      - name: flux.v0.17.1
        version: 0.17.1
      - name: flux.v0.17.0
        version: 0.17.0
      - name: flux.v0.16.2
        version: 0.16.2
      - name: flux.v0.16.1
        version: 0.16.1
      - name: flux.v0.16.0
        version: 0.16.0
      - name: flux.v0.15.3
        version: 0.15.3
      - name: flux.v0.15.2
        version: 0.15.2
      - name: flux.v0.14.2
        version: 0.14.2
      - name: flux.v0.14.1
        version: 0.14.1
      - name: flux.v0.14.0
        version: 0.14.0
      - name: flux.v0.13.4
        version: 0.13.4
      name: stable
    defaultChannel: stable
    packageName: flux
    provider:
      name: The Flux project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Commvault
      provider-url: ""
    name: hedvig-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hedvig-operator.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\":\"hedvig.io/v1\",\n    \"kind\":\"HedvigDeploy\",\n
            \   \"metadata\": {\n      \"name\": \"testdeploy\",\n      \"namespace\":
            \"hedvig\"\n    },\n    \"spec\": {\n      \"cluster\": {\n        \"name\":
            \"hedvigcl\",\n        \"seeds\": [\n          \"hedvigcl1.hedvig.io\",\n
            \         \"hedvigcl2.hedvig.io\",\n          \"hedvigcl3.hedvig.io\"\n
            \       ]\n      },\n      \"k8s\": {\n        \"name\": \"k8scl\"\n      },\n
            \     \"proxy\": {\n        \"repository\": \"hedvig/hedvig-proxy\",\n
            \       \"tag\": \"v-4.3.1\",\n        \"imagePullPolicy\": \"IfNotPresent\"\n
            \     },\n      \"controller\": {\n        \"repository\": \"hedvig/hedvig-csi-volume-driver\",\n
            \       \"tag\": \"v-2.0\",\n        \"imagePullPolicy\": \"IfNotPresent\"\n
            \     },\n      \"node\": {\n        \"repository\": \"hedvig/hedvig-csi-volume-driver\",\n
            \       \"tag\": \"v-2.0\",\n        \"imagePullPolicy\": \"IfNotPresent\"\n
            \     },\n      \"sidecars\": [\n        {\n          \"name\": \"csi-provisioner\",\n
            \         \"repository\": \"quay.io/k8scsi/csi-provisioner\",\n          \"tag\":
            \"v1.6.0\",\n          \"imagePullPolicy\": \"IfNotPresent\"\n        },\n
            \       {\n          \"name\": \"csi-snapshotter\",\n          \"repository\":
            \"quay.io/k8scsi/csi-snapshotter\",\n          \"tag\": \"v2.1.0\",\n
            \         \"imagePullPolicy\": \"IfNotPresent\"\n        },              \n
            \       {\n          \"name\": \"csi-resizer\",\n          \"repository\":
            \"quay.io/k8scsi/csi-resizer\",\n          \"tag\": \"v0.5.0\",\n          \"imagePullPolicy\":
            \"IfNotPresent\"\n        },              \n        {\n          \"name\":
            \"csi-node-driver-registrar\",\n          \"repository\": \"quay.io/k8scsi/csi-node-driver-registrar\",\n
            \         \"tag\": \"v1.0-canary\",\n          \"imagePullPolicy\": \"IfNotPresent\"\n
            \       }\n      ]\n    }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "false"
          containerImage: hedvig/hedvig-operator:2.0.0-ubi
          createdAt: ""
          description: Hedvig Operator is the official operator to deploy and manage
            Hedvig components in container orchestrators such as Kubernetes and Openshift.
          repository: ""
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Hedvig Deploy
            displayName: HedvigDeploy
            kind: HedvigDeploy
            name: hedvigdeploys.hedvig.io
            version: v1
        description: "The Hedvig Distributed Storage Platform is a software-defined,
          scale-out storage solution. It distributes data simultaneously across multiple
          locations – from on-premises data centers to the cloud – and scales capacity
          on-demand by leveraging the storage of commodity x86/ARM servers. The distributed
          write maximizes availability and protects data from hardware failures ranging
          from a single disk to an entire site, improving disaster recovery planning.\n\nHedvig
          provides a CSI Driver for accelerating your journey into the container ecosystem.
          CSI Driver enables containerized applications to maintain state by dynamically
          provisioning and consuming Hedvig virtual disks as persistent volumes. \n###
          \n\nHedvig Operator deploys the Hedvig Storage Proxy and the Hedvig CSI
          Driver to manage the life cycle of persistent storage in Kubernetes and
          Openshift.\n\n**Supported Container Orchestrators:**\n* Kubernetes 1.16+\n*
          Red Hat OpenShift 4.6+\n\n**Supported Hedvig Releases:**\n* Hedvig 4.0+\nPlease
          refer to the [documentation](https://documentation.commvault.com/commvault/hedvig/others/pdf/Hedvig_Operator_User_Guide.pdf)
          for steps to install and use the operator.\n\n\n\n\n\n"
        displayName: Hedvig Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Storage
        - CSI
        - Hedvig
        - Cloud
        - Block
        - NFS
        - iSCSI
        - Snapshot
        - Volume
        links:
        - name: Documentation
          url: https://documentation.commvault.com/commvault/hedvig/article
        - name: Hedvig CSI User Guide
          url: https://documentation.commvault.com/commvault/hedvig/others/pdf/Hedvig_CSI_User_Guide.pdf
        maintainers:
        - email: ashenoy@commvault.com
          name: Abhijith Shenoy
        maturity: stable
        provider:
          name: Commvault
        relatedImages:
        - hedvig/hedvig-operator:2.0.0-ubi
        - quay.io/openshift-community-operators/hedvig-operator@sha256:81d956c12057f18bf920044a4e39c27c99b2c23afdccc0ff9468f0484e1961d7
        version: 1.0.2
      entries:
      - name: hedvig-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: hedvig-operator
    provider:
      name: Commvault
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: vertical-pod-autoscaler
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vertical-pod-autoscaler.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "autoscaling.k8s.io/v1",
                "kind": "VerticalPodAutoscaler",
                "metadata": {
                  "name": "myapp-vpa"
                },
                "spec": {
                  "resourcePolicy": {
                    "containerPolicies": [
                      {
                        "containerName": "*",
                        "controlledResources": [
                          "cpu",
                          "memory"
                        ],
                        "maxAllowed": {
                          "cpu": 1,
                          "memory": "500Mi"
                        },
                        "minAllowed": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      }
                    ]
                  },
                  "targetRef": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "myapp-deployment"
                  }
                }
              },
              {
                "apiVersion": "autoscaling.openshift.io/v1",
                "kind": "VerticalPodAutoscalerController",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "minReplicas": 2,
                  "podMinCPUMillicores": 25,
                  "podMinMemoryMb": 250,
                  "safetyMarginFraction": 0.15
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          certifiedLevel: Primed
          containerImage: registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9-operator@sha256:c8b4fbae4f814c8f553bb0c41491cd58fe4c524e29689305545f7a811b0a99e7
          createdAt: "2025-07-23T17:03:26Z"
          description: An operator to run the OpenShift Vertical Pod Autoscaler. Vertical
            Pod Autoscaler (VPA) can be configured to monitor a workload's resource
            utilization, and then adjust its CPU and memory limits by updating the
            pod (future) or restarting the pod with updated limits.
          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: "true"
          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"
          healthIndex: B
          olm.skipRange: '>=4.5.0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-vertical-pod-autoscaler
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/vertical-pod-autoscaler-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents VPA checkpoints used by the VPA controllers to
              manage workloads
            displayName: VPA Checkpoint
            kind: VerticalPodAutoscalerCheckpoint
            name: verticalpodautoscalercheckpoints.autoscaling.k8s.io
            version: v1
          - kind: VerticalPodAutoscalerCheckpoint
            name: verticalpodautoscalercheckpoints.autoscaling.k8s.io
            version: v1beta2
          - description: Represents an instance of the set of VPA controllers
            displayName: VPA Controller
            kind: VerticalPodAutoscalerController
            name: verticalpodautoscalercontrollers.autoscaling.openshift.io
            version: v1
          - description: An application whose resources are managed by the VPA
            displayName: VerticalPodAutoscaler
            kind: VerticalPodAutoscaler
            name: verticalpodautoscalers.autoscaling.k8s.io
            version: v1
          - kind: VerticalPodAutoscaler
            name: verticalpodautoscalers.autoscaling.k8s.io
            version: v1beta2
        description: An operator to run the OpenShift Vertical Pod Autoscaler. Vertical
          Pod Autoscaler (VPA) can be configured to monitor a workload's resource
          utilization, and then adjust its CPU and memory limits by updating the pod
          (future) or restarting the pod with updated limits.
        displayName: Vertical Pod Autoscaler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - verticalpodautoscaler
        - vpa
        - autoscaling
        - scaling
        links:
        - name: Vertical Pod Autoscaler Documentation
          url: https://docs.openshift.com/container-platform/latest/nodes/pods/nodes-pods-vertical-autoscaler.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-operator-bundle@sha256:bac746437332ab19a056edfc42148904de392c787a79dd77c2734b2dc34982d0
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9-operator@sha256:c8b4fbae4f814c8f553bb0c41491cd58fe4c524e29689305545f7a811b0a99e7
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9@sha256:8d7407a15dee92f15e8c62ef8a23c02b94bc59d1dd6595f9dd3e05f5a01cf9a3
        version: 4.20.0-202512081147
      entries:
      - name: vertical-pod-autoscaler.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: vertical-pod-autoscaler.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: vertical-pod-autoscaler.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: vertical-pod-autoscaler.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: vertical-pod-autoscaler.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: vertical-pod-autoscaler.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: vertical-pod-autoscaler.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: vertical-pod-autoscaler
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: redhat.com
    name: rh-service-binding-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: service-binding-operator.v0.9.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "service.binding/v1alpha2",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ServiceBinding expresses intent to bind an operator-backed
              service with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: Service Binding for Kubernetes. Describes the connection
              between a Provisioned Service and an Application Projection. Implements
              Service Binding Specifcation for Kubernetes (https://github.com/k8s-service-bindings/spec).
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.service.binding
            version: v1alpha2
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: alpha
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator-metadata@sha256:d9930900b0d2f92ae813246fc322290234ad8bbd165b10e36671b53852228718
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:fe6629401bc8447da95ec55949b5a27e620364bb6e02f86230262699ac8a5d55
        version: 0.9.1
      entries:
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: beta
    - currentCSV: service-binding-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindablekinds-sample"
                }
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:e799bd06043028d214baeeffc683710ad2eed7b83272fc653e3b89f69711319b
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:e799bd06043028d214baeeffc683710ad2eed7b83272fc653e3b89f69711319b
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator-metadata@sha256:87448055a162e215a4d4982a8494fec6e7cc59fe6704494ddfdcfea076a2100c
        version: 0.11.0
      entries:
      - name: service-binding-operator.v0.11.0
        version: 0.11.0
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: candidate
    - currentCSV: service-binding-operator.v0.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "service.binding/v1alpha2",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.service.binding
            version: v1alpha2
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator-metadata@sha256:a7c6f1c9260c79ebbdfb25ea996516ba1e2bcbedf25401e9e6848b955a2d3d78
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:3d7a3648e86848402577dd19c1f8fd130a5556ebdfbc0f663a72f9e141024812
        version: 0.10.0
      entries:
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: preview
    - currentCSV: service-binding-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindable-kinds"
                },
                "spec": {}
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  },
                  "type": "postgres",
                  "workload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: registry.redhat.io/ocp-tools-4/service-binding-rhel8-operator@sha256:9c8fb0c8f9d2f54685561af21e595aa88bf309eaebebdf23fb6997b75d026b18
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.17.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'.
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1alpha3
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1beta1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
          - description: Service Binding implementing community specification (https://github.com/k8s-service-bindings/spec)
              describing the connection between a backing service and an application
              workload.
            displayName: Service Binding (Spec API)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1beta1
        description: |
          The Service Binding Operator manages the data plane for applications and backing services. It enables developers to connect their
          applications to backing services (REST API, databases, event buses and others) with a consistent and predictable
          experience. The operator reads data made available by the control plane of backing services and projects the bindings
          data to applications either as accessible files mounted into the application’s container or environment variables.

          In Kubernetes, each service suggests a different way to access their secrets and developers will consume them in their
          application in a custom way. While this provides a good deal of flexibility, it also creates discrepancies and
          complexity dealing with each specific services, which leads large development teams to lose overall velocity.

          Service Binding Operator removes the error-prone manual configuration of binding information, provides service operators
          a low-touch administrative experience to provision and manage access to services and enriches development lifecycle.

          For additional details refer to the project [documentation](https://redhat-developer.github.io/service-binding-operator).

          Get Started with Service Binding Operator
          * Find out about SBO’s [prerequisites](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/installing-service-binding.html).
          * Refer to the [Quick Start Guide](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/quick-start.html) to see SBO in action in a simple scenario.

          Need Help
          * Raise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)

          Licence
          * Service Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE)

          Service Binding Operator is providing and supporting two different APIs.
          * `binding.operators.coreos.com/v1alpha1`: This API is compliant with the Service Binding specification. It is fully supported and considered as the mature API. It’s the API we recommend in production environments.
          * `servicebinding.io/v1beta1`: This API is the one defined in the Service Binding specification. It is available in Service Binding Operator 1.x.

          We’ll consider supporting only the API from the specification, once the Service Binding specification will be officially GA. Of course, that will be a breaking change and handle in a safe way for you.
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Documentation
          url: https://redhat-developer.github.io/service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4/service-binding-operator-bundle@sha256:9ab3d5eb70c654270fef9e8e9d4e5b68e1ac3c86bd0e0dcd36cc6f8741be1603
        - registry.redhat.io/ocp-tools-4/service-binding-rhel8-operator@sha256:9c8fb0c8f9d2f54685561af21e595aa88bf309eaebebdf23fb6997b75d026b18
        version: 1.3.3
      entries:
      - name: service-binding-operator.v1.3.3
        version: 1.3.3
      - name: service-binding-operator.v1.3.1
        version: 1.3.1
      - name: service-binding-operator.v1.3.0
        version: 1.3.0
      - name: service-binding-operator.v1.2.0
        version: 1.2.0
      - name: service-binding-operator.v1.1.1
        version: 1.1.1
      - name: service-binding-operator.v1.1.0
        version: 1.1.0
      - name: service-binding-operator.v1.0.1
        version: 1.0.1
      - name: service-binding-operator.v1.0.0
        version: 1.0.0
      - name: service-binding-operator.v0.11.0
        version: 0.11.0
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: rh-service-binding-operator
    provider:
      name: Red Hat
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/component: kmm
      app.kubernetes.io/name: kmm
      app.kubernetes.io/part-of: kmm
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: kernel-module-management
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kernel-module-management.v2.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:1022205d712a2ed9d6e76968961c180d4e66a2e0fb991221b0b02ed94ed830d2
          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: "true"
          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.skipRange: '>=0.0.0 <2.0.2'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel-module-management
        - out-of-tree
        - kernel
        - kmm
        - module
        - modules
        - oot
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:25f39f20f325f64676bf8ef14cd8a60cfbdc77116753a89d4bb667ea2a86172c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:62c44057a27abd41cf3daf60b8736da59a82dadb65fa6c32bef65d19bd49ea49
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:192e08b121a04ae69aea60c35199e8f5e3c42305e1ebd024a605a371de4ab472
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:e39a0b57e73d92c5db330ac9b8a184eeb400397f14c05c1ef75c952d91e4f5b2
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:1022205d712a2ed9d6e76968961c180d4e66a2e0fb991221b0b02ed94ed830d2
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:94b4ddc45cb34d4ffe794a51b99c868cb709f90cc4eb8b28284d70c526a0a226
        version: 2.0.2
      entries:
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.0
    - currentCSV: kernel-module-management.v2.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a85037778c53c3766f39efe4c4d2523d01ae7743e5c5693b05bd8b2cbb50b1d8
          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.skipRange: '>=0.0.0 <2.1.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:1a9a19df17b464d1708b2905d03b8726e4480ca1f11aa97a15ff4c049a24ea4b
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:611556d999ea97f9dbb78fec5963baa02de7a26626d7096ba63b177e3bcf9707
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:ea3e5fbf7eaf6bd29031e2876d7e24859779fb4d3d7ef27c26a1d310f137ad17
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:14e100e5853444114029116255ebfb7a54e5ed51503ba969740ad48b5ca80f70
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:5024be9a3190288983e3c42e8a2dbb49aa44cd596237ad9ed0e72de5090dc9b9
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a85037778c53c3766f39efe4c4d2523d01ae7743e5c5693b05bd8b2cbb50b1d8
        version: 2.1.1
      entries:
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.1
    - currentCSV: kernel-module-management.v2.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a224708950f8defb259ef0da49011d361c5c0378404350640600c6e8fbdbd606
          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: "true"
          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.skipRange: '>=0.0.0 <2.2.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:53fddf0b226eb579c71c86112a8d9b6b1d90a1498d6f6985932b16b8be532f35
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:ece58f1e360eccf7d970dca2f9da0c4d99a692648f165f677f11ff080649cf62
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a224708950f8defb259ef0da49011d361c5c0378404350640600c6e8fbdbd606
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:c3dc9ad4ebc68cd85a074b520903a9310e72a90a73bdf4aa7c42b7ed66b7bcba
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:b1d98c0f14448ae8eb80821cbec236150c338674aae2a2b37f8d0ab0d5f1430c
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:ce1d68fd96f5003285f9fbc0c7abd8aa23830dbdd9b76629d38d4d2238e30032
        version: 2.2.1
      entries:
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.2
    - currentCSV: kernel-module-management.v2.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:750dcc75f908cdda86932386fa1a28edaf65d7b5379ef6d0447586a064db906f
          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: "true"
          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.skipRange: '>=0.0.0 <2.3.0'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:6bd423056b555d39337c0e3a9c31e7732e80f34d0c01f0766a6aadb2aff586f8
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:750dcc75f908cdda86932386fa1a28edaf65d7b5379ef6d0447586a064db906f
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:06ac089cc89b303e525fd71d6439b958f34ab944a72209f1cc8cb562ecfd1112
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:c5005b74402f680d11c9ea682a9a0d3f74b6ab0d01d25298d232f910f1a29c34
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:055c2d6e80bd1ec225f0cb2041572ebb28cfd1a4ed82ba47ff0d638d52ded2a8
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:f9fde334af68220943017a7491130e6a82f15e63522f5bb3931aa7d9b00ccc40
        version: 2.3.0
      entries:
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.3
    - currentCSV: kernel-module-management.v2.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator
          createdAt: "2025-06-19T20:27:41Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.4.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:088dde6eb9d239a7a34b6e47a1bc3c3f1f74aabe764744eb9554913181b4e0db
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:8e0a3cfb1cb92d6d3c9ab5a3030593d8df1378c3ce755d598fb77b08ea5793d3
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:38d811a00b88a096d9fa8f650dae132c43db7057aac61c98932494ce94d67fff
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:34bd5c4f17411d5aa71edb1d6482b9a4cffffe4983b0a599db080bb09e1ec4d2
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:fc753a1c47c870199bf3c9a6cb4ef704847d525b3df5cd7628e2cc7dd0bbb2aa
        version: 2.4.1
      entries:
      - name: kernel-module-management.v2.4.1
        version: 2.4.1
      - name: kernel-module-management.v2.4.0
        version: 2.4.0
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.4
    - currentCSV: kernel-module-management.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:29Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BootModuleConfig describes how to load a module during kernel
              initialization
            displayName: Boot Module Config
            kind: BootModuleConfig
            name: bootmoduleconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:f1385af719931a82f572b33e678043ea91edfb5198cf880416c9a1e94455e399
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        version: 2.5.1
      entries:
      - name: kernel-module-management.v2.5.1
        version: 2.5.1
      - name: kernel-module-management.v2.5.0
        version: 2.5.0
      - name: kernel-module-management.v2.4.1
        version: 2.4.1
      - name: kernel-module-management.v2.4.0
        version: 2.4.0
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.5
    - currentCSV: kernel-module-management.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:29Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BootModuleConfig describes how to load a module during kernel
              initialization
            displayName: Boot Module Config
            kind: BootModuleConfig
            name: bootmoduleconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:f1385af719931a82f572b33e678043ea91edfb5198cf880416c9a1e94455e399
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        version: 2.5.1
      entries:
      - name: kernel-module-management.v2.5.1
        version: 2.5.1
      - name: kernel-module-management.v2.5.0
        version: 2.5.0
      - name: kernel-module-management.v2.4.1
        version: 2.4.1
      - name: kernel-module-management.v2.4.0
        version: 2.4.0
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: kernel-module-management
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Cloudera
      provider-url: https://cloudera.com
    name: cloudera-streams-messaging-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cloudera-streams-messaging-kubernetes-operator.1.4.0-b199
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster"
                },
                "spec": {
                  "kafka": {
                    "version": "3.9.0.1.4",
                    "replicas": 3,
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2,
                      "inter.broker.protocol.version": "3.9"
                    },
                    "storage": {
                      "type": "ephemeral"
                    }
                  },
                  "zookeeper": {
                    "replicas": 3,
                    "storage": {
                      "type": "ephemeral"
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "3.9.0.1.4",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: container.repository.cloudera.com/cloudera/kafka-operator@sha256:d6812fed7ddf139dab4d12cab6a0ae292e2d0619303b0ad72f2eef642e5a183a
          createdAt: "2025-07-14 10:09:41"
          description: Run Apache Kafka with Cloudera Streams Messaging - Kubernetes
            Operator
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: A valid license and current subscription
            for Cloudera Streaming - Kubernetes Operator is required. Contact Cloudera
            sales to obtain a license. https://www.cloudera.com/contact-sales.html
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |-
          Cloudera Streams Messaging - Kubernetes Operator brings enterprise-grade Kafka deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of Kafka for enterprise deployments. To learn more about Cloudera Streaming, [read this deep dive blog post](https://blog.cloudera.com/accelerating-deployments-of-streaming-pipelines-announcing-data-in-motion-on-kubernetes/).

          Cloudera Streams Messaging - Kubernetes Operator consists of and ships multiple components including Apache Kafka, Apache ZooKeeper, Cruise Control, Strimzi, and others.

          ## Installation prerequisites

          Installing Cloudera Streams Messaging - Kubernetes Operator requires a valid license as well as Cloudera credentials (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly. The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) where installation artifacts are pulled from.

          ### Obtaining a license

          Contact [Cloudera Sales](https://www.cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets

          Before installation, create  two `Secrets`. One containing your Cloudera credentials, and one containing your license. Cloudera credentials are provided to you together with your license.

          Create a `Secret` containing your Cloudera credentials.
          ```
          oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***] --docker-server=container.repository.cloudera.com
          ```
          Create a `Secret` containing your license.
          ```
          oc create secret generic csm-op-license --from-file=license.txt=[***PATH TO LICENSE FILE***]
          ```

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces where you plan to deploy Kafka or Kafka Connect clusters. Cloudera recommends that you create the `Secret` in all required namespaces before installation if you know what namespaces you will be using to deploy Kafka or Kafka Connect.

          ## Learn more
          To learn more, visit the [Cloudera Streams Messaging - Kubernetes Operator documentation library](https://docs.cloudera.com/csm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Streams Messaging - Kubernetes Operator, visit the following resources:

          * [Strimzi](https://strimzi.io/)
          * [Apache Kafka](https://kafka.apache.org/)
          * [Apache ZooKeeper](https://zookeeper.apache.org/)
          * [Cruise Control](https://github.com/linkedin/cruise-control)
        displayName: Cloudera Streams Messaging - Kubernetes Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Documentation
          url: https://docs.cloudera.com/csm-operator
        - name: Cloudera Community Forum
          url: https://community.cloudera.com/
        - name: Cloudera Stream Processing
          url: https://www.cloudera.com/products/stream-processing.html
        - name: Contact Cloudera
          url: https://www.cloudera.com/contact-sales.html
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/kafka@sha256:aa64e161b9672153a6f6559f9ae9ef88d0e40d6040a80e21bd3dc8ee39df6523
        - container.repository.cloudera.com/cloudera/kafka@sha256:b675e7426a558c4681e53d8e03f278264d7ad555f7c02422017683a29708ac2b
        - container.repository.cloudera.com/cloudera/maven-builder@sha256:9f18203b175193e5079fdc0c2b71c14887641d997f92b4a1c918546f777166df
        - registry.connect.redhat.com/cloudera/cloudera-streams-messaging-kubernetes-operator-bundle@sha256:e7c79d2e6b21ce423d0199316012ccde1ccf16da412da66e4a36c54539aac81d
        - container.repository.cloudera.com/cloudera/kafka-operator@sha256:d6812fed7ddf139dab4d12cab6a0ae292e2d0619303b0ad72f2eef642e5a183a
        version: 1.4.0-b199
      entries:
      - name: cloudera-streams-messaging-kubernetes-operator.1.4.0-b199
        version: 1.4.0-b199
      name: 1.2.x
    - currentCSV: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.0.1.1.5",
                    "metadataVersion": "4.0-IV3",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.0.1.1.5",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
          createdAt: "2025-10-29 10:43:01"
          description: Run Apache Kafka with Cloudera Streams Messaging - Kubernetes
            Operator
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: A valid license and current subscription
            for Cloudera Streaming - Kubernetes Operator is required. Contact Cloudera
            sales to obtain a license. https://www.cloudera.com/contact-sales.html
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |-
          Cloudera Streams Messaging - Kubernetes Operator brings enterprise-grade Kafka deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of Kafka for enterprise deployments. To learn more about Cloudera Streaming, [read this deep dive blog post](https://blog.cloudera.com/accelerating-deployments-of-streaming-pipelines-announcing-data-in-motion-on-kubernetes/).

          Cloudera Streams Messaging - Kubernetes Operator consists of and ships multiple components including Apache Kafka, Cruise Control, Strimzi, and others.

          ## Installation prerequisites

          Installing Cloudera Streams Messaging - Kubernetes Operator requires a valid license as well as Cloudera credentials (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly. The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) where installation artifacts are pulled from.

          ### Obtaining a license

          Contact [Cloudera Sales](https://www.cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets

          Before installation, create  two `Secrets`. One containing your Cloudera credentials, and one containing your license. Cloudera credentials are provided to you together with your license.

          Create a `Secret` containing your Cloudera credentials.
          ```
          oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***] --docker-server=container.repository.cloudera.com
          ```
          Create a `Secret` containing your license.
          ```
          oc create secret generic csm-op-license --from-file=license.txt=[***PATH TO LICENSE FILE***]
          ```

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces where you plan to deploy Kafka or Kafka Connect clusters. Cloudera recommends that you create the `Secret` in all required namespaces before installation if you know what namespaces you will be using to deploy Kafka or Kafka Connect.

          ## Learn more
          To learn more, visit the [Cloudera Streams Messaging - Kubernetes Operator documentation library](https://docs.cloudera.com/csm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Streams Messaging - Kubernetes Operator, visit the following resources:

          * [Strimzi](https://strimzi.io/)
          * [Apache Kafka](https://kafka.apache.org/)
          * [Cruise Control](https://github.com/linkedin/cruise-control)
        displayName: Cloudera Streams Messaging - Kubernetes Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Documentation
          url: https://docs.cloudera.com/csm-operator
        - name: Cloudera Community Forum
          url: https://community.cloudera.com/
        - name: Cloudera Stream Processing
          url: https://www.cloudera.com/products/stream-processing.html
        - name: Contact Cloudera
          url: https://www.cloudera.com/contact-sales.html
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/kafka@sha256:9b03f2dc7a6646c4e4945cc8580d85437991ef7efb7d7460e7d811e8bf823ea5
        - container.repository.cloudera.com/cloudera/kafka@sha256:9e506b1e049c13e2a9143115cee59799702d0204b3bdc82f65426acbc46daecd
        - container.repository.cloudera.com/cloudera/maven-builder@sha256:acfab110978a5bd596da1541a2d414c846ec14c2cbe1343c6f720a86a8b127c4
        - registry.connect.redhat.com/cloudera/cloudera-streams-messaging-kubernetes-operator-bundle@sha256:33e545dac3749f733ff45af7780c24c3d07efebfcfbd07db5abfd3d246a4e24f
        - container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
        version: 1.5.0-b123
      entries:
      - name: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
        version: 1.5.0-b123
      name: 1.5.x
    - currentCSV: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.0.1.1.5",
                    "metadataVersion": "4.0-IV3",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.0.1.1.5",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
          createdAt: "2025-10-29 10:43:01"
          description: Run Apache Kafka with Cloudera Streams Messaging - Kubernetes
            Operator
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: A valid license and current subscription
            for Cloudera Streaming - Kubernetes Operator is required. Contact Cloudera
            sales to obtain a license. https://www.cloudera.com/contact-sales.html
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |-
          Cloudera Streams Messaging - Kubernetes Operator brings enterprise-grade Kafka deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of Kafka for enterprise deployments. To learn more about Cloudera Streaming, [read this deep dive blog post](https://blog.cloudera.com/accelerating-deployments-of-streaming-pipelines-announcing-data-in-motion-on-kubernetes/).

          Cloudera Streams Messaging - Kubernetes Operator consists of and ships multiple components including Apache Kafka, Cruise Control, Strimzi, and others.

          ## Installation prerequisites

          Installing Cloudera Streams Messaging - Kubernetes Operator requires a valid license as well as Cloudera credentials (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly. The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) where installation artifacts are pulled from.

          ### Obtaining a license

          Contact [Cloudera Sales](https://www.cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets

          Before installation, create  two `Secrets`. One containing your Cloudera credentials, and one containing your license. Cloudera credentials are provided to you together with your license.

          Create a `Secret` containing your Cloudera credentials.
          ```
          oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***] --docker-server=container.repository.cloudera.com
          ```
          Create a `Secret` containing your license.
          ```
          oc create secret generic csm-op-license --from-file=license.txt=[***PATH TO LICENSE FILE***]
          ```

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces where you plan to deploy Kafka or Kafka Connect clusters. Cloudera recommends that you create the `Secret` in all required namespaces before installation if you know what namespaces you will be using to deploy Kafka or Kafka Connect.

          ## Learn more
          To learn more, visit the [Cloudera Streams Messaging - Kubernetes Operator documentation library](https://docs.cloudera.com/csm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Streams Messaging - Kubernetes Operator, visit the following resources:

          * [Strimzi](https://strimzi.io/)
          * [Apache Kafka](https://kafka.apache.org/)
          * [Cruise Control](https://github.com/linkedin/cruise-control)
        displayName: Cloudera Streams Messaging - Kubernetes Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Documentation
          url: https://docs.cloudera.com/csm-operator
        - name: Cloudera Community Forum
          url: https://community.cloudera.com/
        - name: Cloudera Stream Processing
          url: https://www.cloudera.com/products/stream-processing.html
        - name: Contact Cloudera
          url: https://www.cloudera.com/contact-sales.html
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/kafka@sha256:9e506b1e049c13e2a9143115cee59799702d0204b3bdc82f65426acbc46daecd
        - container.repository.cloudera.com/cloudera/maven-builder@sha256:acfab110978a5bd596da1541a2d414c846ec14c2cbe1343c6f720a86a8b127c4
        - registry.connect.redhat.com/cloudera/cloudera-streams-messaging-kubernetes-operator-bundle@sha256:33e545dac3749f733ff45af7780c24c3d07efebfcfbd07db5abfd3d246a4e24f
        - container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
        - container.repository.cloudera.com/cloudera/kafka@sha256:9b03f2dc7a6646c4e4945cc8580d85437991ef7efb7d7460e7d811e8bf823ea5
        version: 1.5.0-b123
      entries:
      - name: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
        version: 1.5.0-b123
      name: stable
    defaultChannel: stable
    packageName: cloudera-streams-messaging-kubernetes-operator
    provider:
      name: Cloudera
      url: https://cloudera.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Intel® Corporation
      provider-url: https://intel.com
    name: intel-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: network-operator.v1.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l2"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L2",
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              },
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l3"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L3",
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              },
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l3-metrics"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L3",
                    "networkMetrics": true,
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              },
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l3-pfc-lldpad"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "enableLLDPAD": true,
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L3",
                    "pfcPriorities": "11110000",
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-11-19T08:53:19Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NetworkClusterPolicy is the Schema for the networkclusterpolicies
              API
            displayName: Network Cluster Policy
            kind: NetworkClusterPolicy
            name: networkclusterpolicies.intel.com
            version: v1alpha1
        description: |-
          Intel Network Operator allows automatic configuring and easier use
          of RDMA NICs with Intel AI accelerators in Kubernetes.
        displayName: Intel Network Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gaudi
        - gpu
        - intel
        - rdma
        - scaleout
        links:
        - name: Network Operator
          url: https://github.com/intel/network-operator
        maintainers:
        - email: patrik.flykt@intel.com
          name: Patrik Flykt
        - email: tuomas.katila@intel.com
          name: Tuomas Katila
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Intel® Corporation
          url: https://intel.com
        relatedImages:
        - registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719
        - registry.connect.redhat.com/intel/intel-network-operator-bundle@sha256:817a1cb4c2aa86b0d0268b04a500c238a604f15d54fc2d70b1ca9ca9736e5b2b
        - registry.connect.redhat.com/intel/intel-network-operator@sha256:3ea3d164de467117dfa7c5de3f8a46f130fc96e3d26ca46429b536710a60e4f8
        version: 1.1.1
      entries:
      - name: network-operator.v1.1.1
        version: 1.1.1
      name: alpha
    defaultChannel: alpha
    packageName: intel-network-operator
    provider:
      name: Intel® Corporation
      url: https://intel.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: klusterlet
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: klusterlet.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.open-cluster-management.io/v1",
                "kind": "Klusterlet",
                "metadata": {
                  "name": "klusterlet"
                },
                "spec": {
                  "clusterName": "cluster1",
                  "deployOption": {
                    "mode": "Singleton"
                  },
                  "externalServerURLs": [
                    {
                      "url": "https://localhost"
                    }
                  ],
                  "imagePullSpec": "quay.io/open-cluster-management/registration-operator:v0.13.1",
                  "namespace": "open-cluster-management-agent",
                  "registrationImagePullSpec": "quay.io/open-cluster-management/registration:v0.13.1",
                  "workImagePullSpec": "quay.io/open-cluster-management/work:v0.13.1"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/registration-operator:v0.13.1
          createdAt: "2024-04-10T15:27:49Z"
          description: Manages the installation and upgrade of the Klusterlet.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management-io/ocm
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Klusterlet defines the configurations of agents running on
              the managed cluster
            displayName: Klusterlet
            kind: Klusterlet
            name: klusterlets.operator.open-cluster-management.io
            version: v1
        description: "Note: This operator will stop updating, please use the latest
          operator in OperatorHub.io https://operatorhub.io/operator/klusterlet. \n\nThe
          Klusterlet proivdes the registation to the Hub clusters as a managed cluster.
          This operator supports the installation and upgrade of Klusterlet.\n\n##
          Prerequisites\nYou need a Hub cluster which has installed ClusterManager.\n\n##
          How to Install\n* Install Klusterlet operator by following instructions
          in top right button `Install`.\n* Optional: Create an agent namespace used
          to deploy Klusterlet. The default namespace is `open-cluster-management-agent`.\n*
          Create a secret `bootstrap-hub-kubeconfig` with the kubeconfig file of hub
          cluster in the agent namespace.\n\n  ```\n  $ kubectl create secret generic
          bootstrap-hub-kubeconfig --from-file=kubeconfig=<kubeconfig file of hub
          clsuter> -n <agent namespace>\n  ```\n\n* Create an instance of the Klusterlet
          resource to install the Klusterlet.\n\nThe pods of Klusterlet are created
          in agent namespace.\n\n```\n$ kubectl get pods -n open-cluster-management-agent\n
          \ NAME                                READY   STATUS    RESTARTS   AGE\n
          \ klusterlet-agent-55c6574876-nfxm9   1/1     Running   0          8m38s\n```\n\nThere
          is a ManagedCluster created in the Hub cluster.\n\n```\n$ kubectl get managedclusters.cluster.open-cluster-management.io\nNAME
          \                  HUB ACCEPTED   MANAGED CLUSTER URLS     JOINED   AVAILABLE
          \  AGE\ncluster1               false                                                        27s\n```\n"
        displayName: Klusterlet
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open-cluster-management
        - Klusterlet
        links:
        - name: Registration Operator
          url: https://github.com/open-cluster-management-io/ocm
        maintainers:
        - email: zyin@redhat.com
          name: Zhiwei Yin
        - email: deads@redhat.com
          name: David Eads
        - email: jqiu@redhat.com
          name: Jian Qiu
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/community-operator-pipeline-prod/klusterlet@sha256:9efef9a034c9f12505a0d81bc9697c4a3ab7e3d05d1e7aaa4180490d70ddf6a2
        - quay.io/open-cluster-management/registration-operator:v0.13.1
        version: 0.13.1
      entries:
      - name: klusterlet.v0.13.1
        version: 0.13.1
      - name: klusterlet.v0.13.0
        version: 0.13.0
      - name: klusterlet.v0.12.0
        version: 0.12.0
      - name: klusterlet.v0.11.0
        version: 0.11.0
      - name: klusterlet.v0.10.0
        version: 0.10.0
      - name: klusterlet.v0.9.1
        version: 0.9.1
      - name: klusterlet.v0.8.0
        version: 0.8.0
      - name: klusterlet.v0.7.0
        version: 0.7.0
      - name: klusterlet.v0.6.0
        version: 0.6.0
      - name: klusterlet.v0.5.0
        version: 0.5.0
      - name: klusterlet.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: klusterlet
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Grafana Tempo Operator SIG
      provider-url: ""
    name: tempo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tempo-operator.v0.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoMonolithic",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "jaegerui": {
                    "enabled": true,
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "resources": {
                    "limits": {
                      "cpu": "2",
                      "memory": "2Gi"
                    }
                  },
                  "storage": {
                    "traces": {
                      "backend": "memory"
                    }
                  }
                }
              },
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoStack",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "resources": {
                    "total": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2Gi"
                      }
                    }
                  },
                  "storage": {
                    "secret": {
                      "name": "my-storage-secret",
                      "type": "s3"
                    }
                  },
                  "storageSize": "1Gi",
                  "template": {
                    "queryFrontend": {
                      "jaegerQuery": {
                        "enabled": true,
                        "ingress": {
                          "type": "route"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          containerImage: ghcr.io/grafana/tempo-operator/tempo-operator:v0.19.0
          createdAt: "2025-11-20T16:37:25Z"
          description: Create and manage deployments of Tempo, a high-scale distributed
            tracing backend.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: tempo-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/grafana/tempo-operator
          support: Grafana Tempo Operator SIG
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TempoMonolithic manages a Tempo deployment in monolithic
              mode.
            displayName: TempoMonolithic
            kind: TempoMonolithic
            name: tempomonolithics.tempo.grafana.com
            version: v1alpha1
          - description: TempoStack manages a Tempo deployment in microservices mode.
            displayName: TempoStack
            kind: TempoStack
            name: tempostacks.tempo.grafana.com
            version: v1alpha1
        description: |-
          Tempo is an open source, easy-to-use, and high-scale distributed tracing backend.
          It can ingest common open source tracing protocols including Jaeger, Zipkin, and OpenTelemetry and requires only object storage to operate.
          Please refer to the [Tempo documentation](https://grafana.com/docs/tempo/latest/) for more information about Tempo.

          The Community Tempo Operator can manage Tempo deployments in Microservices mode (`TempoStack` CR) and Monolithic mode (`TempoMonolithic` CR).

          ### Operator features
          * **Resource Limits** - Specify overall resource requests and limits in the `TempoStack` CR; the operator assigns fractions of it to each component
          * **AuthN and AuthZ** - Supports OpenID Control (OIDC) and role-based access control (RBAC)
          * **Managed upgrades** - Updating the operator will automatically update all managed Tempo clusters
          * **Multitenancy** - Multiple tenants can send traces to the same Tempo cluster
          * **mTLS** - Communication between the Tempo components can be secured via mTLS
          * **Jaeger UI** - Traces can be visualized in Jaeger UI and exposed via Ingress or OpenShift Route
          * **Observability** - The operator and `TempoStack` operands expose telemetry (metrics, traces) and integrate with Prometheus `ServiceMonitor` and `PrometheusRule`

          ### Prerequisites
          `TempoStack` requires object storage to store its traces. `TempoMonolithic` can store traces in-memory, in a Persistent Volume and in object storage.
          Please ensure that an object storage solution is available and configured.
        displayName: Community Tempo Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tempo
        - tracing
        - observability
        - monitoring
        - database
        links:
        - name: Tempo Operator
          url: https://github.com/grafana/tempo-operator
        maintainers:
        - email: ruben.vp8510@gmail.com
          name: Ruben Vargas
        - email: p.loffay@gmail.com
          name: Pavol Loffay
        - email: bongartz@klimlive.de
          name: Benedikt Bongartz
        - email: andreas@gerstmayr.me
          name: Andreas Gerstmayr
        - email: iblancas@redhat.com
          name: Israel Blancas Alvarez
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Grafana Tempo Operator SIG
        relatedImages:
        - quay.io/observatorium/api:main-2025-08-25-7489eb0
        - quay.io/observatorium/opa-openshift:main-2025-06-16-ecdeca0
        - quay.io/openshift/origin-oauth-proxy:4.14
        - docker.io/grafana/tempo-query:2.9.0
        - docker.io/grafana/tempo:2.9.0
        - docker.io/jaegertracing/jaeger-query:1.68.0
        - ghcr.io/grafana/tempo-operator/tempo-operator:v0.19.0
        - quay.io/community-operator-pipeline-prod/tempo-operator@sha256:5c33104814fc9a1b1cdfacd5dca1234bfd17881820583ec1fd462a02ce83d272
        version: 0.19.0
      entries:
      - name: tempo-operator.v0.19.0
        version: 0.19.0
      - name: tempo-operator.v0.18.0
        version: 0.18.0
      - name: tempo-operator.v0.17.1
        version: 0.17.1
      - name: tempo-operator.v0.15.3
        version: 0.15.3
      - name: tempo-operator.v0.15.2
        version: 0.15.2
      - name: tempo-operator.v0.15.1
        version: 0.15.1
      - name: tempo-operator.v0.15.0
        version: 0.15.0
      - name: tempo-operator.v0.14.2
        version: 0.14.2
      - name: tempo-operator.v0.14.1
        version: 0.14.1
      - name: tempo-operator.v0.14.0
        version: 0.14.0
      - name: tempo-operator.v0.13.0
        version: 0.13.0
      - name: tempo-operator.v0.12.0
        version: 0.12.0
      - name: tempo-operator.v0.11.1
        version: 0.11.1
      - name: tempo-operator.v0.11.0
        version: 0.11.0
      - name: tempo-operator.v0.10.0
        version: 0.10.0
      - name: tempo-operator.v0.9.0
        version: 0.9.0
      - name: tempo-operator.v0.8.0
        version: 0.8.0
      - name: tempo-operator.v0.7.0
        version: 0.7.0
      - name: tempo-operator.v0.6.0
        version: 0.6.0
      - name: tempo-operator.v0.5.0
        version: 0.5.0
      - name: tempo-operator.v0.4.0
        version: 0.4.0
      - name: tempo-operator.v0.3.0
        version: 0.3.0
      - name: tempo-operator.v0.2.0
        version: 0.2.0
      - name: tempo-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: tempo-operator
    provider:
      name: Grafana Tempo Operator SIG
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: ansible-automation-platform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aap-operator.v2.5.0-0.1764945388
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727257740 <2.5.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation-Controller
              - Automation-Hub
              - EDA
              - Ansible-Lightspeed
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Ansible lightspeed: Deploy and manage the lifecycle of an ansible lightspeed application.
            * Automation gateway - Unify the management of AAP from a central location.
            * Automation controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private automation hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Platform resource operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-20

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console. For example, change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.
          If you originally installed the AAP Operator from the stable-2.4 channel for example, you will want to upgrade to the next minor version by selecting the stable-2.6 channel.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place.

          #### Create the AnsibleAutomationPlatform custom resource

          Once that is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: myaap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8@sha256:64d15cd62d59793fada48ef0ccf776a4de191aaa45e01d693df8e6af2fe99c46
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:a2e2211f218d13fea1c2bd232a87378f3d9f656839e48c72d93f4f8afc3ea702
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8-operator@sha256:8b3006af83b25c2e0e8dbcae1af781263bae4f85b78a1c499cd971fb6e6e62df
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8-operator@sha256:e4a98a6721ef18a6d412c1e9e2f48ab98852e8ff957cf910225d7ca1bc0bbbed
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-rhel8-operator@sha256:5f0649d44f18faa996d7ed880137b38a2abcac2cbdbdb9d937ad52fb0b53d936
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8@sha256:844b455cd0be699589d5cb54f0b153747949d2daa476e3b6b77851c2d64241ab
        - registry.redhat.io/ansible-automation-platform-25/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        version: 2.5.0+0.1764945388
      entries:
      - name: aap-operator.v2.5.0-0.1727240614
        version: 2.5.0+0.1727240614
      - name: aap-operator.v2.5.0-0.1727875185
        version: 2.5.0+0.1727875185
      - name: aap-operator.v2.5.0-0.1728520175
        version: 2.5.0+0.1728520175
      - name: aap-operator.v2.5.0-0.1729741547
        version: 2.5.0+0.1729741547
      - name: aap-operator.v2.5.0-0.1731456196
        version: 2.5.0+0.1731456196
      - name: aap-operator.v2.5.0-0.1733193164
        version: 2.5.0+0.1733193164
      - name: aap-operator.v2.5.0-0.1733969526
        version: 2.5.0+0.1733969526
      - name: aap-operator.v2.5.0-0.1736893446
        version: 2.5.0+0.1736893446
      - name: aap-operator.v2.5.0-0.1737101025
        version: 2.5.0+0.1737101025
      - name: aap-operator.v2.5.0-0.1737675968
        version: 2.5.0+0.1737675968
      - name: aap-operator.v2.5.0-0.1739248042
        version: 2.5.0+0.1739248042
      - name: aap-operator.v2.5.0-0.1740093573
        version: 2.5.0+0.1740093573
      - name: aap-operator.v2.5.0-0.1740773472
        version: 2.5.0+0.1740773472
      - name: aap-operator.v2.5.0-0.1741368605
        version: 2.5.0+0.1741368605
      - name: aap-operator.v2.5.0-0.1742434024
        version: 2.5.0+0.1742434024
      - name: aap-operator.v2.5.0-0.1743660124
        version: 2.5.0+0.1743660124
      - name: aap-operator.v2.5.0-0.1746137767
        version: 2.5.0+0.1746137767
      - name: aap-operator.v2.5.0-0.1747343762
        version: 2.5.0+0.1747343762
      - name: aap-operator.v2.5.0-0.1749074128
        version: 2.5.0+0.1749074128
      - name: aap-operator.v2.5.0-0.1749604727
        version: 2.5.0+0.1749604727
      - name: aap-operator.v2.5.0-0.1750901111
        version: 2.5.0+0.1750901111
      - name: aap-operator.v2.5.0-0.1753900156
        version: 2.5.0+0.1753900156
      - name: aap-operator.v2.5.0-0.1755835086
        version: 2.5.0+0.1755835086
      - name: aap-operator.v2.5.0-0.1758147230
        version: 2.5.0+0.1758147230
      - name: aap-operator.v2.5.0-0.1761050204
        version: 2.5.0+0.1761050204
      - name: aap-operator.v2.5.0-0.1764945388
        version: 2.5.0+0.1764945388
      name: stable-2.5
    - currentCSV: aap-operator.v2.5.0-0.1764945371
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727259094 <2.5.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation-Controller
              - Automation-Hub
              - EDA
              - Ansible-Lightspeed
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Ansible lightspeed: Deploy and manage the lifecycle of an ansible lightspeed application.
            * Automation gateway - Unify the management of AAP from a central location.
            * Automation controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private automation hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Platform resource operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-20

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console. For example, change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.
          If you originally installed the AAP Operator from the stable-2.4 channel for example, you will want to upgrade to the next minor version by selecting the stable-2.6 channel.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place.

          #### Create the AnsibleAutomationPlatform custom resource

          Once that is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: myaap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:fb284b670f3c4c28ac3bcc6a16d20db5ec38165750baf6a03f1d3b7cc316027f
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ansible-automation-platform-25/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - registry.redhat.io/ansible-automation-platform-25/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8@sha256:844b455cd0be699589d5cb54f0b153747949d2daa476e3b6b77851c2d64241ab
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8@sha256:64d15cd62d59793fada48ef0ccf776a4de191aaa45e01d693df8e6af2fe99c46
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-rhel8-operator@sha256:5f0649d44f18faa996d7ed880137b38a2abcac2cbdbdb9d937ad52fb0b53d936
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8-operator@sha256:8b3006af83b25c2e0e8dbcae1af781263bae4f85b78a1c499cd971fb6e6e62df
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8-operator@sha256:e4a98a6721ef18a6d412c1e9e2f48ab98852e8ff957cf910225d7ca1bc0bbbed
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        version: 2.5.0+0.1764945371
      entries:
      - name: aap-operator.v2.5.0-0.1727241223
        version: 2.5.0+0.1727241223
      - name: aap-operator.v2.5.0-0.1727875896
        version: 2.5.0+0.1727875896
      - name: aap-operator.v2.5.0-0.1728520687
        version: 2.5.0+0.1728520687
      - name: aap-operator.v2.5.0-0.1729742145
        version: 2.5.0+0.1729742145
      - name: aap-operator.v2.5.0-0.1731456854
        version: 2.5.0+0.1731456854
      - name: aap-operator.v2.5.0-0.1733193761
        version: 2.5.0+0.1733193761
      - name: aap-operator.v2.5.0-0.1733970210
        version: 2.5.0+0.1733970210
      - name: aap-operator.v2.5.0-0.1736894220
        version: 2.5.0+0.1736894220
      - name: aap-operator.v2.5.0-0.1737101781
        version: 2.5.0+0.1737101781
      - name: aap-operator.v2.5.0-0.1737676792
        version: 2.5.0+0.1737676792
      - name: aap-operator.v2.5.0-0.1739248649
        version: 2.5.0+0.1739248649
      - name: aap-operator.v2.5.0-0.1740094176
        version: 2.5.0+0.1740094176
      - name: aap-operator.v2.5.0-0.1740774104
        version: 2.5.0+0.1740774104
      - name: aap-operator.v2.5.0-0.1741369251
        version: 2.5.0+0.1741369251
      - name: aap-operator.v2.5.0-0.1742434756
        version: 2.5.0+0.1742434756
      - name: aap-operator.v2.5.0-0.1743660958
        version: 2.5.0+0.1743660958
      - name: aap-operator.v2.5.0-0.1746138413
        version: 2.5.0+0.1746138413
      - name: aap-operator.v2.5.0-0.1747345055
        version: 2.5.0+0.1747345055
      - name: aap-operator.v2.5.0-0.1749074612
        version: 2.5.0+0.1749074612
      - name: aap-operator.v2.5.0-0.1749607543
        version: 2.5.0+0.1749607543
      - name: aap-operator.v2.5.0-0.1750901870
        version: 2.5.0+0.1750901870
      - name: aap-operator.v2.5.0-0.1753900674
        version: 2.5.0+0.1753900674
      - name: aap-operator.v2.5.0-0.1755835623
        version: 2.5.0+0.1755835623
      - name: aap-operator.v2.5.0-0.1758147817
        version: 2.5.0+0.1758147817
      - name: aap-operator.v2.5.0-0.1761050855
        version: 2.5.0+0.1761050855
      - name: aap-operator.v2.5.0-0.1764945371
        version: 2.5.0+0.1764945371
      name: stable-2.5-cluster-scoped
    - currentCSV: aap-operator.v2.6.0-0.1764966733
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727257740 <2.6.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation Controller
              - Automation Hub
              - EDA
              - Ansible Lightspeed
              - Ansible MCP Server
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Ansible MCP Server.
            displayName: Ansible MCP Server
            kind: AnsibleMCPServer
            name: ansiblemcpservers.mcpserver.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Automation Gateway - Unify the management of AAP from a central location.
            * Automation Controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private Automation Hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Ansible Lightspeed: Deploy and manage the lifecycle of an Ansible Lightspeed application.
            * Platform Resource Operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner

          ## New in AAP 2.6 and 2.5

          In AAP 2.5, we are introducing a unified experience for all of the services provided in the Ansible Automation Platform. You can now manage content from Hub, rulebooks from EDA and automation jobs from Controller in a single pane.

          Instead of creating individual AutomationController, AutomationHub, and EDA custom resources, you will now instead create a single AnsibleAutomationPlatform custom resource.

          Ansible Lightspeed and it's integration with Watson Code Assistant is now available.  To read more about configuring it, please read https://red.ht/ansible-lightspeed-2x-docs.

          The managed database has been upgraded to PostgreSQL 15.


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-26

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console.

          **For customers on AAP 2.4:** Change the channel directly from `stable-2.4` to `stable-2.6` to upgrade directly to AAP 2.6, which will be released in October.

          **For customers on AAP 2.5:** Change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place. When upgrading from AAP 2.4 to 2.6, your external authentication configuration in Automation Controller will automatically be migrated to the new unified Platform UI.

          **Database:** AAP 2.6 continues to use PostgreSQL 15.

          #### Create the AnsibleAutomationPlatform custom resource (Required for upgrades from 2.4 only)

          **If upgrading from AAP 2.4:** Once the operator upgrade is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created.

          **If upgrading from AAP 2.5:** This step is not required as your AnsibleAutomationPlatform custom resource already exists.

          Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          Next, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda (lightspeed is disabled by default):


          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: aap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/ansible-automation-platform-26/hub-web-rhel9@sha256:285dd1aef3fff0c9e7fc9c61e3144307d8ea890ce21f87795c8e0e203ebf56e9
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-chatbot-rhel9@sha256:64fbb98e583452568482f059127defbca2257155ff920ab10c77aaccd32d6adb
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        - registry.redhat.io/ansible-automation-platform-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:88d59edb37c5c1588e22623e1a0c8c2e8bd793c52f2f8fcbedf8d6c4697874e8
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/ansible-automation-platform-26/gateway-proxy-rhel9@sha256:0cee3b756e3df8b9fa583f198dc4dec3dfe281c8a041455bc1bc5a748f1302d0
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9-operator@sha256:258d532cb566c43aa876d28435323bb7e80061f826c47669eb2d6ef348b996fd
        - registry.redhat.io/ansible-automation-platform-26/mcp-tools-rhel9@sha256:af2a28820846c524bb6828c6d6caf7929cbb198f303fbd8d9d0b940dd8226b9d
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        - registry.redhat.io/ansible-automation-platform-26/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9-operator@sha256:53ae38609933ea51171397af3af40f69165f293c621723f71ba9a48f72003e04
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-ui-rhel9@sha256:195a08ebffae71c3d37414d983dc9291bbe2d33a4a1f2d716654a2f7b67d2026
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9@sha256:3d947d906bc1cc146256877e0b458021bed8496a8e89a7628359c4d92990d2a7
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9@sha256:47942913af0c6782621af11824b6c8725e52864b52f21b164398cbf7a636212d
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9@sha256:d77101384b94a0306ae9b1dbaf8be6e5ee9eeb5c2e57ebe8189a2e2bac9fa9f7
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9-operator@sha256:5cdb95b53c3fe5363d4f74883410a435a2dd3f39e5be7af1130137f582ab4af2
        version: 2.6.0+0.1764966733
      entries:
      - name: aap-operator.v2.6.0-0.1758684783
        version: 2.6.0+0.1758684783
      - name: aap-operator.v2.6.0-0.1759764484
        version: 2.6.0+0.1759764484
      - name: aap-operator.v2.6.0-0.1760139263
        version: 2.6.0+0.1760139263
      - name: aap-operator.v2.6.0-0.1761281301
        version: 2.6.0+0.1761281301
      - name: aap-operator.v2.6.0-0.1762261205
        version: 2.6.0+0.1762261205
      - name: aap-operator.v2.6.0-0.1763137334
        version: 2.6.0+0.1763137334
      - name: aap-operator.v2.6.0-0.1764966733
        version: 2.6.0+0.1764966733
      name: stable-2.6
    - currentCSV: aap-operator.v2.6.0-0.1764966767
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727259094 <2.6.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation Controller
              - Automation Hub
              - EDA
              - Ansible Lightspeed
              - Ansible MCP Server
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Ansible MCP Server.
            displayName: Ansible MCP Server
            kind: AnsibleMCPServer
            name: ansiblemcpservers.mcpserver.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Automation Gateway - Unify the management of AAP from a central location.
            * Automation Controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private Automation Hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Ansible Lightspeed: Deploy and manage the lifecycle of an Ansible Lightspeed application.
            * Platform Resource Operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner

          ## New in AAP 2.6 and 2.5

          In AAP 2.5, we are introducing a unified experience for all of the services provided in the Ansible Automation Platform. You can now manage content from Hub, rulebooks from EDA and automation jobs from Controller in a single pane.

          Instead of creating individual AutomationController, AutomationHub, and EDA custom resources, you will now instead create a single AnsibleAutomationPlatform custom resource.

          Ansible Lightspeed and it's integration with Watson Code Assistant is now available.  To read more about configuring it, please read https://red.ht/ansible-lightspeed-2x-docs.

          The managed database has been upgraded to PostgreSQL 15.


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-26

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console.

          **For customers on AAP 2.4:** Change the channel directly from `stable-2.4` to `stable-2.6` to upgrade directly to AAP 2.6, which will be released in October.

          **For customers on AAP 2.5:** Change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place. When upgrading from AAP 2.4 to 2.6, your external authentication configuration in Automation Controller will automatically be migrated to the new unified Platform UI.

          **Database:** AAP 2.6 continues to use PostgreSQL 15.

          #### Create the AnsibleAutomationPlatform custom resource (Required for upgrades from 2.4 only)

          **If upgrading from AAP 2.4:** Once the operator upgrade is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created.

          **If upgrading from AAP 2.5:** This step is not required as your AnsibleAutomationPlatform custom resource already exists.

          Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          Next, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda (lightspeed is disabled by default):


          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: aap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform-26/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9@sha256:47942913af0c6782621af11824b6c8725e52864b52f21b164398cbf7a636212d
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9-operator@sha256:5cdb95b53c3fe5363d4f74883410a435a2dd3f39e5be7af1130137f582ab4af2
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9-operator@sha256:258d532cb566c43aa876d28435323bb7e80061f826c47669eb2d6ef348b996fd
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-ui-rhel9@sha256:195a08ebffae71c3d37414d983dc9291bbe2d33a4a1f2d716654a2f7b67d2026
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9@sha256:d77101384b94a0306ae9b1dbaf8be6e5ee9eeb5c2e57ebe8189a2e2bac9fa9f7
        - registry.redhat.io/ansible-automation-platform-26/mcp-tools-rhel9@sha256:af2a28820846c524bb6828c6d6caf7929cbb198f303fbd8d9d0b940dd8226b9d
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/ansible-automation-platform-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-chatbot-rhel9@sha256:64fbb98e583452568482f059127defbca2257155ff920ab10c77aaccd32d6adb
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:e52d16eb8343528b0d92860486ca3944e6f49fc9d8a2057c247e387bc3685abe
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9-operator@sha256:53ae38609933ea51171397af3af40f69165f293c621723f71ba9a48f72003e04
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9@sha256:3d947d906bc1cc146256877e0b458021bed8496a8e89a7628359c4d92990d2a7
        - registry.redhat.io/ansible-automation-platform-26/hub-web-rhel9@sha256:285dd1aef3fff0c9e7fc9c61e3144307d8ea890ce21f87795c8e0e203ebf56e9
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/ansible-automation-platform-26/gateway-proxy-rhel9@sha256:0cee3b756e3df8b9fa583f198dc4dec3dfe281c8a041455bc1bc5a748f1302d0
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        version: 2.6.0+0.1764966767
      entries:
      - name: aap-operator.v2.6.0-0.1758685241
        version: 2.6.0+0.1758685241
      - name: aap-operator.v2.6.0-0.1759764962
        version: 2.6.0+0.1759764962
      - name: aap-operator.v2.6.0-0.1760139657
        version: 2.6.0+0.1760139657
      - name: aap-operator.v2.6.0-0.1761281346
        version: 2.6.0+0.1761281346
      - name: aap-operator.v2.6.0-0.1762261209
        version: 2.6.0+0.1762261209
      - name: aap-operator.v2.6.0-0.1763137355
        version: 2.6.0+0.1763137355
      - name: aap-operator.v2.6.0-0.1764966767
        version: 2.6.0+0.1764966767
      name: stable-2.6-cluster-scoped
    defaultChannel: stable-2.6
    packageName: ansible-automation-platform-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Nokia
      provider-url: https://docs.eda.dev
    name: eda-k8s-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eda-openshift-operator.v4.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "config.eda.nokia.com/v1",
                "kind": "ConnectControllerConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "operator"
                  },
                  "name": "connectcontrollerconfig-sample",
                  "namespace": "eda-connect-k8s"
                },
                "spec": {
                  "connectPluginName": "",
                  "controllerImagePullSecret": "",
                  "edaNamespace": "eda",
                  "heartBeat": "",
                  "logLevel": "",
                  "skipTLSVerify": false,
                  "tlsCertificateData": "",
                  "tlsEnabled": true
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:c43a7fa7475db83011cc08b728982511fc0279a259e1aacc8ddde9e15f947725
          createdAt: "2025-06-10T15:47:27Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: eda-connect-k8s
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["connectnetworkattachmentstatuses.connect.eda.nokia.com",
            connectnetworkdefinitions.connect.eda.nokia.com]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConnectNetworkAttachmentStatus is the Schema for the connectnetworkattachmentstatuses
              API
            displayName: Connect NetworkAttachment Status
            kind: ConnectNetworkAttachmentStatus
            name: connectnetworkattachmentstatuses.connect.eda.nokia.com
            version: v1
          - description: ConnectNetworkDefinition is the Schema for the connectnetworkdefinitions
              API
            displayName: Connect Network Definition
            kind: ConnectNetworkDefinition
            name: connectnetworkdefinitions.connect.eda.nokia.com
            version: v1
          - description: ConnectControllerConfig is the Schema for the connectcontrollerconfigs
              API
            displayName: Connect Controller Config
            kind: ConnectControllerConfig
            name: connectcontrollerconfigs.config.eda.nokia.com
            version: v1
        description: "K8s operator to deploy eda connect controller to configure EDA
          Connect.\eb"
        displayName: eda-openshift-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - EDA Connect
        - K8s Controller
        - EDA K8s Controller Operator
        links:
        - name: EDA Connect K8s Controller Operator
          url: https://docs.eda.dev/connect/openshift-plugin/
        maintainers:
        - email: support@nokia.com
          name: nokia
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Nokia
          url: https://docs.eda.dev
        relatedImages:
        - ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:c43a7fa7475db83011cc08b728982511fc0279a259e1aacc8ddde9e15f947725
        - registry.connect.redhat.com/nokia-ni/eda-openshift-operator@sha256:a5645cb55c3e6c22655c6c8606b9bd51a49db44aecc3fe52e0eb80cca83d17c4
        version: 4.0.0
      entries:
      - name: eda-openshift-operator.v4.0.0
        version: 4.0.0
      name: alpha
    - currentCSV: eda-openshift-operator.v5.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "config.eda.nokia.com/v1",
                "kind": "ConnectControllerConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "operator"
                  },
                  "name": "connectcontrollerconfig-sample",
                  "namespace": "eda-connect-k8s"
                },
                "spec": {
                  "connectPluginName": "",
                  "controllerImagePullSecret": "",
                  "edaNamespace": "eda",
                  "heartBeat": "",
                  "logLevel": "",
                  "skipTLSVerify": false,
                  "tlsCertificateData": "",
                  "tlsEnabled": true
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:1a025d30e46cebaf804494dbb6d5140cb0e2fe6c83203177c4829bf0bcd94273
          createdAt: "2025-06-10T15:47:27Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: eda-connect-k8s
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["connectnetworkattachmentstatuses.connect.eda.nokia.com",
            connectnetworkdefinitions.connect.eda.nokia.com]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConnectNetworkAttachmentStatus is the Schema for the connectnetworkattachmentstatuses
              API
            displayName: Connect NetworkAttachment Status
            kind: ConnectNetworkAttachmentStatus
            name: connectnetworkattachmentstatuses.connect.eda.nokia.com
            version: v1
          - description: ConnectNetworkDefinition is the Schema for the connectnetworkdefinitions
              API
            displayName: Connect Network Definition
            kind: ConnectNetworkDefinition
            name: connectnetworkdefinitions.connect.eda.nokia.com
            version: v1
          - description: ConnectControllerConfig is the Schema for the connectcontrollerconfigs
              API
            displayName: Connect Controller Config
            kind: ConnectControllerConfig
            name: connectcontrollerconfigs.config.eda.nokia.com
            version: v1
        description: "K8s operator to deploy eda connect controller to configure EDA
          Connect.\eb"
        displayName: eda-openshift-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - EDA Connect
        - K8s Controller
        - EDA K8s Controller Operator
        links:
        - name: EDA Connect K8s Controller Operator
          url: https://docs.eda.dev/connect/openshift-plugin/
        maintainers:
        - email: support@nokia.com
          name: nokia
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Nokia
          url: https://docs.eda.dev
        relatedImages:
        - ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:1a025d30e46cebaf804494dbb6d5140cb0e2fe6c83203177c4829bf0bcd94273
        - registry.connect.redhat.com/nokia-ni/eda-openshift-operator@sha256:993f64a35cba84eafe2bc365e09770048f611a4e74cc2a4bb143de7675ed3880
        version: 5.0.0
      entries:
      - name: eda-openshift-operator.v5.0.0
        version: 5.0.0
      name: stable
    defaultChannel: alpha
    packageName: eda-k8s-operator
    provider:
      name: Nokia
      url: https://docs.eda.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: kubeturbo-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubeturbo-operator.v8.18.40-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5-beta.1 <8.18.40-beta.1'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBM Turbonomic software automates and simultaneously optimizes
              performance, compliance, and cost in real time. Turbonomic discovers
              and automates resource optimization for the complete application stack.
              Applications are continually resourced to perform while satisfying technical
              and business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
          - kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Optimization for Kubernetes
          IBM Turbonomic software automates and simultaneously optimizes performance, compliance, and cost in real time.
          Turbonomic discovers and automates resource optimization for the complete application stack. Applications are continually resourced to perform while satisfying technical and business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (proactive rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          Turbonomic assures application performance by giving workloads the resources they need when they need them.

          ### How Does It Work?
          Turbonomic uses a client agent called — KubeTurbo — that runs in your cluster to discover, monitor and optimize resource usage within your environment.
          KubeTurbo runs together with the default Kubernetes scheduler and sends data back to the Turbonomic for analysis.
          Turbonomic determines the right actions that drive continuous health for your workloads and your cluster.

          Turbonomic discovers Red Hat OpenShift Virtualization resources through a new or existing target configuration with Red Hat OpenShift. For more information refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=targets-red-hat-openshift-virtualization)

          ### Get Started
          Please follow the [Kubeturbo Documentation Page](https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets) for all deployment options and an overview of typical use cases.

          ### Known Issues
          For known issues refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=notes-known-issues)
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Kubeturbo Documentation Page
          url: https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets
        - name: Kubeturbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
        - name: IBM Turbonomic Application Resource Management
          url: https://www.ibm.com/products/turbonomic
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/kubeturbo-operator@sha256:177745cccc3d52fe82340174f39be9ab39118f661baa0b79e8719f951b13f1fe
        - registry.connect.redhat.com/turbonomic/kubeturbo-operator-bundle@sha256:69e62d414a3fa27a0c06c92b425bdbc4034d9157953668a11be1a4f150a4e9bb
        version: 8.18.40-beta.1
      entries:
      - name: kubeturbo-operator.v8.18.40-beta.1
        version: 8.18.40-beta.1
      name: beta
    - currentCSV: kubeturbo-operator.v8.18.30
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5 <8.18.30'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBM Turbonomic software automates and simultaneously optimizes
              performance, compliance, and cost in real time. Turbonomic discovers
              and automates resource optimization for the complete application stack.
              Applications are continually resourced to perform while satisfying technical
              and business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
          - kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Optimization for Kubernetes
          IBM Turbonomic software automates and simultaneously optimizes performance, compliance, and cost in real time.
          Turbonomic discovers and automates resource optimization for the complete application stack. Applications are continually resourced to perform while satisfying technical and business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (proactive rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          Turbonomic assures application performance by giving workloads the resources they need when they need them.

          ### How Does It Work?
          Turbonomic uses a client agent called — KubeTurbo — that runs in your cluster to discover, monitor and optimize resource usage within your environment.
          KubeTurbo runs together with the default Kubernetes scheduler and sends data back to the Turbonomic for analysis.
          Turbonomic determines the right actions that drive continuous health for your workloads and your cluster.

          Turbonomic discovers Red Hat OpenShift Virtualization resources through a new or existing target configuration with Red Hat OpenShift. For more information refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=targets-red-hat-openshift-virtualization)

          ### Get Started
          Please follow the [Kubeturbo Documentation Page](https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets) for all deployment options and an overview of typical use cases.

          ### Known Issues
          For known issues refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=notes-known-issues)
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Kubeturbo Documentation Page
          url: https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets
        - name: Kubeturbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
        - name: IBM Turbonomic Application Resource Management
          url: https://www.ibm.com/products/turbonomic
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/kubeturbo-operator@sha256:17f2ee1a241c5d84e66d47febf409f08868b6e372b2ba6b420e30f759a94487b
        - registry.connect.redhat.com/turbonomic/kubeturbo-operator-bundle@sha256:337da31b04c4739571e5bd7c4f5bc89c82cb3c2d74341b456f65c5435a24b647
        version: 8.18.30
      entries:
      - name: kubeturbo-operator.v8.18.30
        version: 8.18.30
      name: stable
    defaultChannel: stable
    packageName: kubeturbo-certified
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CrowdStrike
      provider-url: https://crowdStrike.com
    name: falcon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: falcon-operator.v1.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconAdmission",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcon-admission",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falconadmission",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-kac"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "admission_controller"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconContainer",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcon-sidecar-sensor",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falconcontainer",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-container-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "sidecar"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconDeployment",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcondeployment-sample",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falcon-deployment",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-deployment"
                },
                "spec": {
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconImageAnalyzer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "falcon-operator",
                    "app.kubernetes.io/instance": "falconimageanalyzer-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "falconimageanalyzer",
                    "app.kubernetes.io/part-of": "falcon-operator"
                  },
                  "name": "falcon-image-analyzer"
                },
                "spec": {
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconNodeSensor",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcon-node-sensor",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falconnodesensor",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-node-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "daemonset"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security,Monitoring
          containerImage: registry.connect.redhat.com/crowdstrike/falcon-operator@sha256:a31709f0e35564badc0123095952f957d0d639ced1fe000610008222e4d45725
          createdAt: "2025-11-18T23:39:10Z"
          description: Falcon Operator installs CrowdStrike Falcon Sensors on the
            cluster
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: falcon-operator
          operators.openshift.io/valid-subscription: Not required to use this operator
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: registry.connect.redhat.com/crowdstrike/falcon-operator
          support: CrowdStrike
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FalconAdmission is the Schema for the falconadmissions API
            displayName: Falcon Admission
            kind: FalconAdmission
            name: falconadmissions.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconContainer is the Schema for the falconcontainers API
            displayName: Falcon Container
            kind: FalconContainer
            name: falconcontainers.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconDeployment is the Schema for the falcondeployments
              API
            displayName: Falcon Deployment
            kind: FalconDeployment
            name: falcondeployments.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconImageAnalyzer is the Schema for the falconImageAnalyzers
              API
            displayName: Falcon Image Analyzer
            kind: FalconImageAnalyzer
            name: falconimageanalyzers.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconNodeSensor is the Schema for the falconnodesensors
              API
            displayName: Falcon Node Sensor
            kind: FalconNodeSensor
            name: falconnodesensors.falcon.crowdstrike.com
            version: v1alpha1
        description: |-
          The CrowdStrike Falcon Operator installs CrowdStrike Falcon custom resources on a Kubernetes cluster.

          ## About the CrowdStrike Falcon Operator
          The CrowdStrike Falcon Operator deploys CrowdStrike Falcon to the cluster. The operator exposes custom resources that allow you to protect your Kubernetes clusters when deployed.

          ## About Custom Resources

          | Custom Resource                                       | Description                                                      |
          | :--                                             | :--                                                    |
          | [FalconAdmission](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/admission/README.md) | Manages installation of Falcon Admission Controller on the cluster |
          | [FalconImageAnalyzer](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/imageanalyzer/README.md) | Manages installation of Falcon Image Assessment at Runtime on the cluster |
          | [FalconContainer](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/container/README.md) | Manages installation of Falcon Container Sensor on the cluster   |
          | [FalconNodeSensor](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/node/README.md)     | Manages installation of Falcon Linux Sensor on the cluster nodes |
          | [FalconDeployment](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/falcondeployment/README.md)       | Deploys FalconAdmission, FalconImageAnalyzer, FalconContainer, and FalconNodeSensor CRs from a single manifest |

          ## Installation and Deployment

          For installation and deployment of the CrowdStrike Falcon Operator and its Custom Resources, please read the [Installation and Deployment Guide](./docs/install_guide.md) and choose the deployment method that is right for your target environment.

          ## Getting Help
          If you encounter any issues while using the Falcon Operator, you can create an issue on our [Github repo](https://github.com/CrowdStrike/falcon-operator) for bugs, enhancements, or other requests.

          ## Contributing
          You can contribute by:

          * Raising any issues you find using Falcon Operator
          * Fixing issues by opening [Pull Requests](https://github.com/CrowdStrike/falcon-operator/pulls)
          * Improving documentation
          * Talking about the CrowdStrike Falcon Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/CrowdStrike/falcon-operator/issues).

          ## Additional Resources
           - CrowdStrike Container Security: [Product Page](https://www.crowdstrike.com/products/cloud-security/falcon-cloud-workload-protection/container-security/)
           - So You Think Your Containers Are Secure? Four Steps to Ensure a Secure Container Deployment: [Blog Post](https://www.crowdstrike.com/blog/four-steps-to-ensure-a-secure-containter-deployment/)
           - Container Security With CrowdStrike: [Blog Post](https://www.crowdstrike.com/blog/tech-center/container-security/)
           - To learn more about Falcon Container Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/support/documentation/146/falcon-container-sensor-for-linux), [Release Notes](https://falcon.crowdstrike.com/support/news/release-notes-falcon-container-sensor-for-linux)
           - To learn more about Falcon Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/documentation/20/falcon-sensor-for-linux#kubernetes-support)
           - [Developer Documentation](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/developer_guide.md)
        displayName: CrowdStrike Falcon Platform - Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - runtime-protection
        links:
        - name: Falcon Operator
          url: https://github.com/CrowdStrike/falcon-operator
        maintainers:
        - email: integrations@crowdstrike.com
          name: CrowdStrike Solutions Architecture
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: CrowdStrike
          url: https://crowdStrike.com
        relatedImages:
        - registry.connect.redhat.com/crowdstrike/falcon-operator-bundle@sha256:abb34bed5bfc9472c0d9cacb52a7dc5b95cf4081a4667f28ae47b36b07bc0cf8
        - registry.connect.redhat.com/crowdstrike/falcon-operator@sha256:a31709f0e35564badc0123095952f957d0d639ced1fe000610008222e4d45725
        - registry.crowdstrike.com/falcon-container/us-1/release/falcon-sensor@sha256:b9b27660c5924fe99666f638540da51e682c1ad1af0c982f1f8af7b6de1bda20
        - registry.crowdstrike.com/falcon-imageanalyzer/us-1/release/falcon-imageanalyzer@sha256:cd6294a2b62d3b57d18f0528c3b0eda669afd5f393b2bbc582665223329ad8cc
        - registry.crowdstrike.com/falcon-kac/us-1/release/falcon-kac@sha256:14b3a07db24aac43d7397aa1428a8551a15984eba26e79655d66d7a4473cb4a0
        - registry.crowdstrike.com/falcon-sensor/release/falcon-sensor@sha256:b3b575772b6e9ca4dc3cfadac0d3e5c8d752adb3687553d0e52f72eee3229074
        version: 1.9.0
      entries:
      - name: falcon-operator.v1.9.0
        version: 1.9.0
      - name: falcon-operator.v1.8.0
        version: 1.8.0
      - name: falcon-operator.v1.7.0
        version: 1.7.0
      - name: falcon-operator.v1.6.0
        version: 1.6.0
      - name: falcon-operator.v1.5.0
        version: 1.5.0
      - name: falcon-operator.v1.4.0
        version: 1.4.0
      - name: falcon-operator.v1.3.1
        version: 1.3.1
      - name: falcon-operator.v1.3.0
        version: 1.3.0
      - name: falcon-operator.v1.2.0
        version: 1.2.0
      - name: falcon-operator.v1.1.0
        version: 1.1.0
      - name: falcon-operator.v1.0.1
        version: 1.0.1
      - name: falcon-operator.v1.0.0
        version: 1.0.0
      name: certified-1.0
    defaultChannel: certified-1.0
    packageName: falcon-operator
    provider:
      name: CrowdStrike
      url: https://crowdStrike.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sagemaker-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sagemaker-controller.v1.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "App",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "DataQualityJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "Domain",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "Endpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "EndpointConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "FeatureGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "HyperParameterTuningJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "Model",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelBiasJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelExplainabilityJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelPackage",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelPackageGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelQualityJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "MonitoringSchedule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "NotebookInstance",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "NotebookInstanceLifecycleConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ProcessingJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "TrainingJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "TransformJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "UserProfile",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sagemaker-controller:1.7.0
          createdAt: "2025-12-19T22:59:29Z"
          description: ACK service controller for Amazon SageMaker manages SageMaker
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: App represents the state of an AWS sagemaker App resource.
            displayName: App
            kind: App
            name: apps.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: DataQualityJobDefinition represents the state of an AWS sagemaker
              DataQualityJobDefinition resource.
            displayName: DataQualityJobDefinition
            kind: DataQualityJobDefinition
            name: dataqualityjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Domain represents the state of an AWS sagemaker Domain resource.
            displayName: Domain
            kind: Domain
            name: domains.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: EndpointConfig represents the state of an AWS sagemaker EndpointConfig
              resource.
            displayName: EndpointConfig
            kind: EndpointConfig
            name: endpointconfigs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Endpoint represents the state of an AWS sagemaker Endpoint
              resource.
            displayName: Endpoint
            kind: Endpoint
            name: endpoints.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: FeatureGroup represents the state of an AWS sagemaker FeatureGroup
              resource.
            displayName: FeatureGroup
            kind: FeatureGroup
            name: featuregroups.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: HyperParameterTuningJob represents the state of an AWS sagemaker
              HyperParameterTuningJob resource.
            displayName: HyperParameterTuningJob
            kind: HyperParameterTuningJob
            name: hyperparametertuningjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: InferenceComponent represents the state of an AWS sagemaker
              InferenceComponent resource.
            displayName: InferenceComponent
            kind: InferenceComponent
            name: inferencecomponents.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: LabelingJob represents the state of an AWS sagemaker LabelingJob
              resource.
            displayName: LabelingJob
            kind: LabelingJob
            name: labelingjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelBiasJobDefinition represents the state of an AWS sagemaker
              ModelBiasJobDefinition resource.
            displayName: ModelBiasJobDefinition
            kind: ModelBiasJobDefinition
            name: modelbiasjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelExplainabilityJobDefinition represents the state of
              an AWS sagemaker ModelExplainabilityJobDefinition resource.
            displayName: ModelExplainabilityJobDefinition
            kind: ModelExplainabilityJobDefinition
            name: modelexplainabilityjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelPackageGroup represents the state of an AWS sagemaker
              ModelPackageGroup resource.
            displayName: ModelPackageGroup
            kind: ModelPackageGroup
            name: modelpackagegroups.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelPackage represents the state of an AWS sagemaker ModelPackage
              resource.
            displayName: ModelPackage
            kind: ModelPackage
            name: modelpackages.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelQualityJobDefinition represents the state of an AWS
              sagemaker ModelQualityJobDefinition resource.
            displayName: ModelQualityJobDefinition
            kind: ModelQualityJobDefinition
            name: modelqualityjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Model represents the state of an AWS sagemaker Model resource.
            displayName: Model
            kind: Model
            name: models.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: MonitoringSchedule represents the state of an AWS sagemaker
              MonitoringSchedule resource.
            displayName: MonitoringSchedule
            kind: MonitoringSchedule
            name: monitoringschedules.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: NotebookInstanceLifecycleConfig represents the state of an
              AWS sagemaker NotebookInstanceLifecycleConfig resource.
            displayName: NotebookInstanceLifecycleConfig
            kind: NotebookInstanceLifecycleConfig
            name: notebookinstancelifecycleconfigs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: NotebookInstance represents the state of an AWS sagemaker
              NotebookInstance resource.
            displayName: NotebookInstance
            kind: NotebookInstance
            name: notebookinstances.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: PipelineExecution represents the state of an AWS sagemaker
              PipelineExecution resource.
            displayName: PipelineExecution
            kind: PipelineExecution
            name: pipelineexecutions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Pipeline represents the state of an AWS sagemaker Pipeline
              resource.
            displayName: Pipeline
            kind: Pipeline
            name: pipelines.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ProcessingJob represents the state of an AWS sagemaker ProcessingJob
              resource.
            displayName: ProcessingJob
            kind: ProcessingJob
            name: processingjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Project represents the state of an AWS sagemaker Project
              resource.
            displayName: Project
            kind: Project
            name: projects.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Space represents the state of an AWS sagemaker Space resource.
            displayName: Space
            kind: Space
            name: spaces.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: TrainingJob represents the state of an AWS sagemaker TrainingJob
              resource.
            displayName: TrainingJob
            kind: TrainingJob
            name: trainingjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: TransformJob represents the state of an AWS sagemaker TransformJob
              resource.
            displayName: TransformJob
            kind: TransformJob
            name: transformjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: UserProfile represents the state of an AWS sagemaker UserProfile
              resource.
            displayName: UserProfile
            kind: UserProfile
            name: userprofiles.sagemaker.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon SageMaker resources in AWS from within your Kubernetes cluster.

          **About Amazon SageMaker**

          Amazon SageMaker helps data scientists and developers to prepare, build, train, and deploy high-quality machine learning (ML) models quickly by bringing together a broad set of capabilities purpose-built for ML.

          For more information on Amazon SageMaker, visit the [product page](https://aws.amazon.com/sagemaker/).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SageMaker
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sagemaker
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SageMaker Developer Resources
          url: https://aws.amazon.com/sagemaker/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: sagemaker maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sagemaker-controller:1.7.0
        - quay.io/community-operator-pipeline-prod/ack-sagemaker-controller@sha256:535345530777b2e692e264fb1d1c4e2a07c6c4e4c00a8bbe74a2e08a891e7fd7
        version: 1.7.0
      entries:
      - name: ack-sagemaker-controller.v1.7.0
        version: 1.7.0
      - name: ack-sagemaker-controller.v1.6.0
        version: 1.6.0
      - name: ack-sagemaker-controller.v1.5.1
        version: 1.5.1
      - name: ack-sagemaker-controller.v1.5.0
        version: 1.5.0
      - name: ack-sagemaker-controller.v1.4.1
        version: 1.4.1
      - name: ack-sagemaker-controller.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-sagemaker-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-prometheusservice-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-prometheusservice-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "prometheusservice.services.k8s.aws/v1alpha1",
                "kind": "RuleGroupsNamespace",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "prometheusservice.services.k8s.aws/v1alpha1",
                "kind": "Workspace",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/prometheusservice-controller:1.4.0
          createdAt: "2025-11-29T03:54:10Z"
          description: AWS Prometheus controller is a service controller for managing
            Prometheus resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertManagerDefinition represents the state of an AWS prometheusservice
              AlertManagerDefinition resource.
            displayName: AlertManagerDefinition
            kind: AlertManagerDefinition
            name: alertmanagerdefinitions.prometheusservice.services.k8s.aws
            version: v1alpha1
          - description: LoggingConfiguration represents the state of an AWS prometheusservice
              LoggingConfiguration resource.
            displayName: LoggingConfiguration
            kind: LoggingConfiguration
            name: loggingconfigurations.prometheusservice.services.k8s.aws
            version: v1alpha1
          - description: RuleGroupsNamespace represents the state of an AWS prometheusservice
              RuleGroupsNamespace resource.
            displayName: RuleGroupsNamespace
            kind: RuleGroupsNamespace
            name: rulegroupsnamespaces.prometheusservice.services.k8s.aws
            version: v1alpha1
          - description: Workspace represents the state of an AWS prometheusservice
              Workspace resource.
            displayName: Workspace
            kind: Workspace
            name: workspaces.prometheusservice.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Prometheus resources in AWS from within your Kubernetes cluster.

          **About Amazon Managed Service for Prometheus**

          Amazon Managed Service for Prometheus is a serverless, Prometheus-compatible monitoring service for container metrics that makes it easier to securely monitor container environments at scale. With Amazon Managed Service for Prometheus, you can use the same open-source Prometheus data model and query language that you use today to monitor the performance of your containerized workloads, and also enjoy improved scalability, availability, and security without having to manage the underlying infrastructure.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Prometheus
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - prometheusservice
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Prometheus Developer Resources
          url: https://aws.amazon.com/prometheus/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: prometheus maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-prometheusservice-controller@sha256:44f63e161a9f7bb8df06dc31803f9b8b45bc2c9bf2a0d68957f03faace33732f
        - public.ecr.aws/aws-controllers-k8s/prometheusservice-controller:1.4.0
        version: 1.4.0
      entries:
      - name: ack-prometheusservice-controller.v1.4.0
        version: 1.4.0
      - name: ack-prometheusservice-controller.v1.3.2
        version: 1.3.2
      - name: ack-prometheusservice-controller.v1.3.1
        version: 1.3.1
      - name: ack-prometheusservice-controller.v1.3.0
        version: 1.3.0
      - name: ack-prometheusservice-controller.v1.2.27
        version: 1.2.27
      - name: ack-prometheusservice-controller.v1.2.26
        version: 1.2.26
      - name: ack-prometheusservice-controller.v1.2.24
        version: 1.2.24
      - name: ack-prometheusservice-controller.v1.2.23
        version: 1.2.23
      - name: ack-prometheusservice-controller.v1.2.22
        version: 1.2.22
      - name: ack-prometheusservice-controller.v1.2.20
        version: 1.2.20
      - name: ack-prometheusservice-controller.v1.2.19
        version: 1.2.19
      - name: ack-prometheusservice-controller.v1.2.17
        version: 1.2.17
      - name: ack-prometheusservice-controller.v1.2.16
        version: 1.2.16
      - name: ack-prometheusservice-controller.v1.2.15
        version: 1.2.15
      - name: ack-prometheusservice-controller.v1.2.14
        version: 1.2.14
      - name: ack-prometheusservice-controller.v1.2.13
        version: 1.2.13
      - name: ack-prometheusservice-controller.v1.2.12
        version: 1.2.12
      - name: ack-prometheusservice-controller.v1.2.11
        version: 1.2.11
      - name: ack-prometheusservice-controller.v1.2.10
        version: 1.2.10
      - name: ack-prometheusservice-controller.v1.2.9
        version: 1.2.9
      - name: ack-prometheusservice-controller.v1.2.6
        version: 1.2.6
      - name: ack-prometheusservice-controller.v1.2.5
        version: 1.2.5
      - name: ack-prometheusservice-controller.v1.2.4
        version: 1.2.4
      - name: ack-prometheusservice-controller.v1.2.3
        version: 1.2.3
      - name: ack-prometheusservice-controller.v1.2.2
        version: 1.2.2
      - name: ack-prometheusservice-controller.v1.2.1
        version: 1.2.1
      - name: ack-prometheusservice-controller.v1.2.0
        version: 1.2.0
      - name: ack-prometheusservice-controller.v1.1.0
        version: 1.1.0
      - name: ack-prometheusservice-controller.v1.0.0
        version: 1.0.0
      - name: ack-prometheusservice-controller.v0.1.3
        version: 0.1.3
      - name: ack-prometheusservice-controller.v0.1.2
        version: 0.1.2
      - name: ack-prometheusservice-controller.v0.1.1
        version: 0.1.1
      - name: ack-prometheusservice-controller.v0.1.0
        version: 0.1.0
      - name: ack-prometheusservice-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-prometheusservice-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Trustification
      provider-url: ""
    name: trustify-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trustify-operator.v0.1.0-alpha.9
      currentCSVDesc:
        annotations:
          alm-examples: |
            [{
              "apiVersion": "org.trustify/v1alpha1",
              "kind": "Trustify",
              "metadata": {
                "name": "myapp"
              },
              "spec": { }
            }]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          containerImage: ghcr.io/trustification/trustify-operator:v0.1.0-alpha.9
          createdAt: "2025-03-07T11:57:13+00:00"
          description: An Operator for installing and managing Trustify
          repository: https://github.com/trustification/trustify-operator
          support: https://github.com/trustification/trustify-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Trustify instance
            displayName: Trustify
            kind: Trustify
            name: trustifies.org.trustify
            version: v1alpha1
        description: |+
          Trustify is vendor-neutral, thought-leadering, mostly informational collection of resources devoted to making Software Supply Chains easier to create, manage, consume and ultimately... to trust!


          You can use Trustify for:

          - Store and Manage all the SBOM (Software Bill of Materials) files of your company.
          - Understand which are the Vulnerabilities that affect each of your SBOM files
          - Understand exactly which Packages are included/shipped within each SBOM

          Trustify is a project within the [Trustification community](https://trustification.io/).


          ### Install
          Once you have successfully installed the Operator, proceed to deploy components by creating the required CR.

          By default, the Operator installs the following components on a target cluster:

          * Server
          * UI

          ### Documentation
          Documentation can be found on our [website](https://trustification.io/).

          ### Getting help
          If you encounter any issues while using Trustify, you can create an issue on our [Github repo](https://github.com/trustification/trustify/issues), for bugs, enhancements or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find
          * Fixing issues by opening [Pull Requests](https://github.com/trustification/trustify/pulls)

        displayName: Trustify Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trust
        links:
        - name: Website
          url: https://trustification.io/
        - name: Github
          url: https://github.com/trustification/trustify
        maintainers:
        - email: trustification@googlegroups.com
          name: Trustification
        maturity: alpha
        minKubeVersion: 1.23.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        provider:
          name: Trustification
        relatedImages:
        - quay.io/community-operator-pipeline-prod/trustify-operator@sha256:49def1c9612621f90d2398cbe7385488c167cc8ccdcd951f098433eb42cb9ac5
        - ghcr.io/trustification/trustify-operator:v0.1.0-alpha.9
        version: 0.1.0-alpha.9
      entries:
      - name: trustify-operator.v0.1.0-alpha.9
        version: 0.1.0-alpha.9
      - name: trustify-operator.v0.1.0-alpha.8
        version: 0.1.0-alpha.8
      - name: trustify-operator.v0.1.0-alpha.7
        version: 0.1.0-alpha.7
      - name: trustify-operator.v0.1.0-alpha.6
        version: 0.1.0-alpha.6
      - name: trustify-operator.v0.1.0-alpha.5
        version: 0.1.0-alpha.5
      - name: trustify-operator.v0.1.0-alpha.4
        version: 0.1.0-alpha.4
      - name: trustify-operator.v0.1.0-alpha.3
        version: 0.1.0-alpha.3
      - name: trustify-operator.v0.1.0-alpha.2
        version: 0.1.0-alpha.2
      name: alpha
    defaultChannel: alpha
    packageName: trustify-operator
    provider:
      name: Trustification
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://www.redhat.com/
    name: analytics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: analytics-operator.v0.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyData",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalydata-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalydata",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalydata-sample"
                },
                "spec": {
                  "anomalyname": "etcd_object_namespaces",
                  "config": {
                    "max": 100,
                    "min": 60,
                    "query": "max(apiserver_storage_objects{resource=~\"namespaces\"}) by (resource)"
                  },
                  "method": "min_max",
                  "metricdata": {
                    "groupeddata": "{ \"resource\": \"namespaces\" }",
                    "latestvalue": 121,
                    "timestamp": 1695804362
                  }
                }
              },
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyEngine",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalyengine-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalyengine",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalyengine-sample"
                },
                "spec": {
                  "anomalyqueryconfiguration": "etcd_objects_all:\n  method: percentage_change\n  query: max(apiserver_storage_objects{resource!~\"certificatesigningrequests.certificates.k8s.io|installplans.operators.coreos.com|operators.operators.coreos.com|subscriptions.operators.coreos.com|anomalydata.observability-analytics.redhat.com|anomalyengines.observability-analytics.redhat.com\"}) by (resource)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: True\nfailed_pods:\n  method: min_max\n  query: count(kube_pod_status_phase{phase!~\"Succeeded|Pending|Running|Unknown\"}) by (phase, namespace)\n  min: 0\n  max: 10\n  have_multi_result_data: True\nworkload_memory_usage_bytes:\n  method: percentage_change\n  query: sum(container_memory_working_set_bytes{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nworkload_cpu_usage_cores:\n  method: percentage_change\n  query: sum(container_cpu_usage_seconds_total{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nrest_client_requests_total:\n  method: percentage_change\n  query: sum(rest_client_requests_total)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\n",
                  "cronjobconfig": {
                    "anomalyqueries": "etcd_objects_all,failed_pods,workload_memory_usage_bytes,workload_cpu_usage_cores,rest_client_requests_total",
                    "name": "osa-anomaly-detection",
                    "resource": {
                      "cpulimit": "256m",
                      "cpurequest": "128m",
                      "memorylimit": "512Mi",
                      "memoryrequest": "256Mi"
                    },
                    "schedule": "*/5 * * * *"
                  },
                  "namespace": "osa-anomaly-detection",
                  "serviceaccountrolebinding": {
                    "clusterrolename": "cluster-monitoring-view",
                    "name": "osa-in-cluster-thanos-querier"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
          createdAt: "2024-03-12T08:02:25Z"
          description: Deploys and Manages Observability Analytics Operator
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4-alpha
          repository: https://github.com/openshift/analytics-operator
          support: RedHat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnomalyData is the Schema for the anomalydata API
            displayName: Anomaly Data
            kind: AnomalyData
            name: anomalydata.observability-analytics.redhat.com
            version: v1alpha1
          - description: AnomalyEngine is the Schema for the anomalyengines API
            displayName: Anomaly Engine
            kind: AnomalyEngine
            name: anomalyengines.observability-analytics.redhat.com
            version: v1alpha1
        description: "### Introduction\nObservability Analytics for Red Hat OpenShift
          runs OpenShift analytics processes like anomaly detection.\n\n### API Backward
          Compatibility\n**NOTE:** Until the Operator supports **seamless upgrades**,
          a new version of the operator may introduce a change that is **NOT** backward-compatible
          with the previous version. Thus, to upgrade the operator, uninstall the
          already installed version completely (including CRDs) and install the new
          version.\n\n### Installtion Steps for the Anomaly Engine\n Create namespace
          if you would like to install this operator into separate namespace (You
          can utilize existing namespace as well). ```bash kubectl create ns <Namespace>
          ``` Install the Observability Analytics operator to specific `<Namespace>`,
          wait until you see the operator in the **Installed Operator** list. Click
          on the Operator name and go to Operator details.\n\nHere you should see
          a tab called **Anomaly Engine**. Click on it, and then click on the **Create
          AnomalyEngine** button, which will redirect you to a form where you need
          to provide the required inputs for the Anomaly Engine. Once successfully
          created, you should see a cronjob in the given namespace. This cronjob will
          identify anomalies and store them into **anomalydata**.\n\n### How to See
          Anomaly Data Captured by Anomaly Engine?\nWe are storing anomaly data into
          CR.\n ####Option 1:Through `kubectl`` command\nYou can check detected anomalies
          using the following command from your terminal. \n\n```bash\nkubectl get
          anomalydata -n <Namespace>\nkubectl describe anomalydata <NAME of the anomalydata>
          -n <Namespace> \n```\n #### Option 2: From Installed Operator UI Go to installed
          operator and select **Observability Analytics** operator, now go to **Anomaly
          Data** tab where you can able to see the detected anomaly, click on specific
          anomaly and you should be able to see details of the same. ### Documentation\nDocumentation
          around how to test Operator codebase as a developer can be found [here](https://github.com/openshift/analytics-operator#readme)\n\n###
          Contributing\nYou can contribute by:\n  * Raising [issues](https://github.com/openshift/analytics-operator/issues)\n
          \   related to observability-analytics-operator\n  * Fixing issues by opening
          [Pull Requests](https://github.com/openshift/analytics-operator/pulls)\n
          \ * Discussing observability-analytics-operator\n\n### License\nobservability-analytics-operator
          is licensed under the Apache 2.0 license.\n"
        displayName: Observability Analytics
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - observability-analytics-operator
        - analytics-operator
        - analytics
        - anomaly
        links:
        - name: Analytics Operator
          url: https://analytics-operator.domain
        maintainers:
        - email: rzalavad@redhat.com
          name: Raj
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/analytics-operator@sha256:6622e769acf5af500d901409575016013d97e88ff53f0b6db0c9f503e6928b8f
        version: 0.1.1
      entries:
      - name: analytics-operator.v0.1.1
        version: 0.1.1
      - name: analytics-operator.v0.1.0
        version: 0.1.0
      name: alpha
    - currentCSV: analytics-operator.v0.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyData",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalydata-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalydata",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalydata-sample"
                },
                "spec": {
                  "anomalyname": "etcd_object_namespaces",
                  "config": {
                    "max": 100,
                    "min": 60,
                    "query": "max(apiserver_storage_objects{resource=~\"namespaces\"}) by (resource)"
                  },
                  "method": "min_max",
                  "metricdata": {
                    "groupeddata": "{ \"resource\": \"namespaces\" }",
                    "latestvalue": 121,
                    "timestamp": 1695804362
                  }
                }
              },
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyEngine",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalyengine-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalyengine",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalyengine-sample"
                },
                "spec": {
                  "anomalyqueryconfiguration": "etcd_objects_all:\n  method: percentage_change\n  query: max(apiserver_storage_objects{resource!~\"certificatesigningrequests.certificates.k8s.io|installplans.operators.coreos.com|operators.operators.coreos.com|subscriptions.operators.coreos.com|anomalydata.observability-analytics.redhat.com|anomalyengines.observability-analytics.redhat.com\"}) by (resource)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: True\nfailed_pods:\n  method: min_max\n  query: count(kube_pod_status_phase{phase!~\"Succeeded|Pending|Running|Unknown\"}) by (phase, namespace)\n  min: 0\n  max: 10\n  have_multi_result_data: True\nworkload_memory_usage_bytes:\n  method: percentage_change\n  query: sum(container_memory_working_set_bytes{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nworkload_cpu_usage_cores:\n  method: percentage_change\n  query: sum(container_cpu_usage_seconds_total{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nrest_client_requests_total:\n  method: percentage_change\n  query: sum(rest_client_requests_total)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\n",
                  "cronjobconfig": {
                    "anomalyqueries": "etcd_objects_all,failed_pods,workload_memory_usage_bytes,workload_cpu_usage_cores,rest_client_requests_total",
                    "name": "osa-anomaly-detection",
                    "resource": {
                      "cpulimit": "256m",
                      "cpurequest": "128m",
                      "memorylimit": "512Mi",
                      "memoryrequest": "256Mi"
                    },
                    "schedule": "*/5 * * * *"
                  },
                  "namespace": "osa-anomaly-detection",
                  "serviceaccountrolebinding": {
                    "clusterrolename": "cluster-monitoring-view",
                    "name": "osa-in-cluster-thanos-querier"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
          createdAt: "2024-03-12T08:02:25Z"
          description: Deploys and Manages Observability Analytics Operator
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4-alpha
          repository: https://github.com/openshift/analytics-operator
          support: RedHat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnomalyData is the Schema for the anomalydata API
            displayName: Anomaly Data
            kind: AnomalyData
            name: anomalydata.observability-analytics.redhat.com
            version: v1alpha1
          - description: AnomalyEngine is the Schema for the anomalyengines API
            displayName: Anomaly Engine
            kind: AnomalyEngine
            name: anomalyengines.observability-analytics.redhat.com
            version: v1alpha1
        description: "### Introduction\nObservability Analytics for Red Hat OpenShift
          runs OpenShift analytics processes like anomaly detection.\n\n### API Backward
          Compatibility\n**NOTE:** Until the Operator supports **seamless upgrades**,
          a new version of the operator may introduce a change that is **NOT** backward-compatible
          with the previous version. Thus, to upgrade the operator, uninstall the
          already installed version completely (including CRDs) and install the new
          version.\n\n### Installtion Steps for the Anomaly Engine\n Create namespace
          if you would like to install this operator into separate namespace (You
          can utilize existing namespace as well). ```bash kubectl create ns <Namespace>
          ``` Install the Observability Analytics operator to specific `<Namespace>`,
          wait until you see the operator in the **Installed Operator** list. Click
          on the Operator name and go to Operator details.\n\nHere you should see
          a tab called **Anomaly Engine**. Click on it, and then click on the **Create
          AnomalyEngine** button, which will redirect you to a form where you need
          to provide the required inputs for the Anomaly Engine. Once successfully
          created, you should see a cronjob in the given namespace. This cronjob will
          identify anomalies and store them into **anomalydata**.\n\n### How to See
          Anomaly Data Captured by Anomaly Engine?\nWe are storing anomaly data into
          CR.\n ####Option 1:Through `kubectl`` command\nYou can check detected anomalies
          using the following command from your terminal. \n\n```bash\nkubectl get
          anomalydata -n <Namespace>\nkubectl describe anomalydata <NAME of the anomalydata>
          -n <Namespace> \n```\n #### Option 2: From Installed Operator UI Go to installed
          operator and select **Observability Analytics** operator, now go to **Anomaly
          Data** tab where you can able to see the detected anomaly, click on specific
          anomaly and you should be able to see details of the same. ### Documentation\nDocumentation
          around how to test Operator codebase as a developer can be found [here](https://github.com/openshift/analytics-operator#readme)\n\n###
          Contributing\nYou can contribute by:\n  * Raising [issues](https://github.com/openshift/analytics-operator/issues)\n
          \   related to observability-analytics-operator\n  * Fixing issues by opening
          [Pull Requests](https://github.com/openshift/analytics-operator/pulls)\n
          \ * Discussing observability-analytics-operator\n\n### License\nobservability-analytics-operator
          is licensed under the Apache 2.0 license.\n"
        displayName: Observability Analytics
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - observability-analytics-operator
        - analytics-operator
        - analytics
        - anomaly
        links:
        - name: Analytics Operator
          url: https://analytics-operator.domain
        maintainers:
        - email: rzalavad@redhat.com
          name: Raj
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/analytics-operator@sha256:6622e769acf5af500d901409575016013d97e88ff53f0b6db0c9f503e6928b8f
        - quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
        version: 0.1.1
      entries:
      - name: analytics-operator.v0.1.1
        version: 0.1.1
      - name: analytics-operator.v0.1.0
        version: 0.1.0
      name: dev-preview
    defaultChannel: alpha
    packageName: analytics-operator
    provider:
      name: Red Hat Inc.
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: operator-certification-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: operator-certification-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "certification.redhat.com/v1alpha1",
                "kind": "OperatorPipeline",
                "metadata": {
                  "name": "operatorpipeline-sample"
                },
                "spec": {
                  "applyCIPipeline": true,
                  "applyHostedPipeline": false,
                  "applyReleasePipeline": false,
                  "gitHubSecretName": "github-api-token",
                  "kubeconfigSecretName": "kubeconfig",
                  "operatorPipelinesRelease": "main",
                  "pyxisSecretName": "pyxis-api-secret"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-11-11T16:28:07Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.operatorframework.io.bundle.channel.default.v1: alpha
          operators.operatorframework.io.bundle.channels: alpha
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-openshift-ecosystem/operator-certification-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OperatorPipeline is the Schema for the operatorpipelines
              API
            displayName: Operator Pipeline
            kind: OperatorPipeline
            name: operatorpipelines.certification.redhat.com
            version: v1alpha1
        description: |-
          A Kubernetes operator to provision resources for the operator certification pipeline. This operator is installed in all namespaces which can support multi-tenant scenarios. **Note:** This operator should only be used by Red Hat partners attempting to certify their operator(s).


          **Requirements**


          The certification operator requires that you have the following tools installed, functional, and in your path.
          - [Install](https://docs.openshift.com/container-platform/4.8/cli_reference/openshift_cli/getting-started-cli.html#installing-openshift-cli) oc, the OpenShift CLI tool (tested with version 4.7.13)
          - [Install](https://tekton.dev/docs/cli/) tkn, the Tekton CLI tool (tested with version 0.19.1)
          - [Install](https://git-scm.com/downloads) git, the Git CLI tool (tested with 2.32.0)
          - The certification pipeline expects you to have the source files of your Operator bundle


          **Pre - Installation**


          The below steps exist for simplicity and to make the installation clearer. The operator watches all namespaces, so if secrets/configs/etc already exist in another namespace, feel free to use the existing namespace when following the operator installation steps.


          **Create a new namespace where the following secrets will be applied.**
          ```
          oc new-project oco
          ```


          **Add the kubeconfig secret which will be used to deploy the operator under test and run the certification checks.**
          * Open a terminal window
          * Set the `KUBECONFIG` environment variable
          ```
          export KUBECONFIG=/path/to/your/cluster/kubeconfig
          ```
          > *This kubeconfig will be used to deploy the Operator under test and run the certification checks.*
          ```
          oc create secret generic kubeconfig --from-file=kubeconfig=$KUBECONFIG
          ```


          **Configuring steps for submitting the results**
          - Add the github API token to the repo where the PR will be created
          ```
          oc create secret generic github-api-token --from-literal GITHUB_TOKEN=<github token>
          ```
          - Add RedHat Container API access key

            This API access key is specifically related to your unique partner account for Red Hat Connect portal. Instructions to obtain your API key can be found: [here](https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/operator-cert-workflow.md#step-b---get-api-key)
          ```
          oc create secret generic pyxis-api-secret --from-literal pyxis_api_key=< API KEY >
          ```

          - Optional pipeline configurations can be found [here](https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/ci-pipeline.md#optional-configuration)


          **Execute the Pipeline (Development Iterations)**


          A pre-requisite to running a pipeline is that a `workspace-template.yaml` exists in the directory you want to execute the `tkn` commands from.

          To create a workspace-template.yaml
          ```
          cat <<EOF > workspace-template.yaml
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 5Gi
          EOF
          ```

          There are multiple ways to execute the Pipeline which can be found [here](https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/ci-pipeline.md#execute-the-pipeline-development-iterations)
        displayName: Operator Certification Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - certification
        - pipeline
        - openshift
        links:
        - name: Operator Certification CI Pipeline
          url: https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/ci-pipeline.md
        - name: Red Hat OpenShift Pipelines
          url: https://github.com/openshift/tektoncd-operator
        maintainers:
        - email: certification-operator-devel@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.connect.redhat.com/opdev/operator-certification-operator-bundle@sha256:e1c26fed406ff8478dee6c67ba24a5db5320868b78bcc8aa98c124c74ff8fd8a
        - quay.io/opdev/operator-certification-operator@sha256:264a7cf00f3dc47a8e7ae602d720ca9b9df6807eb9f6574efeff8ef0427905b7
        version: 1.4.0
      entries:
      - name: operator-certification-operator.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: alpha
    packageName: operator-certification-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-kubernetes.v1.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "ClusterMongoDBRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-enterprise"
                  },
                  "name": "clustermongodbrole-sample"
                },
                "spec": {
                  "db": "admin",
                  "role": "rootMonitor",
                  "roles": [
                    {
                      "db": "admin",
                      "role": "root"
                    },
                    {
                      "db": "admin",
                      "role": "clusterMonitor"
                    }
                  ]
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "my-replica-set"
                },
                "spec": {
                  "credentials": "my-credentials",
                  "members": 3,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "sample-sharded-cluster"
                },
                "spec": {
                  "configServerCount": 3,
                  "credentials": "my-credentials",
                  "mongodsPerShardCount": 3,
                  "mongosCount": 2,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "shardCount": 1,
                  "type": "ShardedCluster",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBMultiCluster",
                "metadata": {
                  "name": "multi-replica-set"
                },
                "spec": {
                  "clusterSpecList": [
                    {
                      "clusterName": "e2e.cluster1.mongokubernetes.com",
                      "members": 2
                    },
                    {
                      "clusterName": "e2e.cluster2.mongokubernetes.com",
                      "members": 1
                    },
                    {
                      "clusterName": "e2e.cluster3.mongokubernetes.com",
                      "members": 2
                    }
                  ],
                  "credentials": "my-credentials",
                  "duplicateServiceObjects": false,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBOpsManager",
                "metadata": {
                  "name": "ops-manager"
                },
                "spec": {
                  "adminCredentials": "ops-manager-admin",
                  "applicationDatabase": {
                    "members": 3,
                    "podSpec": {
                      "cpu": 1
                    }
                  },
                  "configuration": {
                    "mms.fromEmailAddr": "admin@thecompany.com"
                  },
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "version": "6.0.3"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBUser",
                "metadata": {
                  "name": "my-replica-set-x509-user"
                },
                "spec": {
                  "db": "$external",
                  "mongodbResourceRef": {
                    "name": "my-replica-set"
                  },
                  "roles": [
                    {
                      "db": "admin",
                      "name": "dbOwner"
                    }
                  ],
                  "username": "CN=my-replica-set-x509-user,OU=cloud,O=MongoDB,L=New York,ST=New York,C=US"
                },
                "status": {
                  "phase": "Updated"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/mongodb/mongodb-kubernetes@sha256:22e4ae882cff477adc99cb74bc979cb112d9e0abf37509298a3839fea274ae75
          createdAt: "2025-12-15T08:51:46Z"
          description: The MongoDB Controllers for Kubernetes enable easy deploys
            of MongoDB into Kubernetes clusters, using our management, monitoring
            and backup platforms, Ops Manager and Cloud Manager.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.26.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/mongodb/mongodb-kubernetes
          support: support@mongodb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterMongoDBRole
            name: clustermongodbroles.mongodb.com
            version: v1
          - description: MongoDB Deployment
            displayName: MongoDB Deployment
            kind: MongoDB
            name: mongodb.mongodb.com
            version: v1
          - kind: MongoDBCommunity
            name: mongodbcommunity.mongodbcommunity.mongodb.com
            version: v1
          - description: MongoDB Multi Deployment
            displayName: MongoDB Multi Deployment
            kind: MongoDBMultiCluster
            name: mongodbmulticluster.mongodb.com
            version: v1
          - kind: MongoDBSearch
            name: mongodbsearch.mongodb.com
            version: v1
          - description: MongoDB x509 User
            displayName: MongoDB User
            kind: MongoDBUser
            name: mongodbusers.mongodb.com
            version: v1
          - description: MongoDB Ops Manager
            displayName: MongoDB Ops Manager
            kind: MongoDBOpsManager
            name: opsmanagers.mongodb.com
            version: v1
        description: |
          MongoDB Controllers for Kubernetes (MCK) is an open-source project. It represents a merge of the previous
          MongoDB Community Operator (MCO) and MongoDB Enterprise Kubernetes Operator (MEKO).

          This release brings MongoDB Community and Enterprise editions together under a single, unified operator,
          making it easier to manage, scale, and upgrade your deployments. While the first version simply brings
          the capabilities of both into a single Operator, future changes will build on this to more closely align
          how Community and Enterprise are managed in Kubernetes, to offer an even more seamless and streamlined experience.
          As an open-source project, it now allows for community contributions, helping drive quicker bug fixes and ongoing innovation.
          The MongoDB Controllers for Kubernetes enable easy deploys of MongoDB
          into Kubernetes clusters, using our management, monitoring and backup
          platforms, Ops Manager and Cloud Manager.

          ## Before You Start

          To start using the operator you''ll need an account in MongoDB Cloud Manager or
          a MongoDB Ops Manager deployment.

          * [Create a Secret with your OpsManager API key](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-operator-credentials/#procedure)

          * [Create a ConfigMap with your OpsManager project ID and URL](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-project-using-configmap/)

          By installing this integration, you will be able to deploy MongoDB instances
          with a single simple command.

          ## Required Parameters

          * `opsManager` or `cloudManager` - Enter the name of the ConfigMap containing project information
          * `credentials` - Enter the name of the Secret containing your OpsManager credentials
          * `type` - Enter MongoDB Deployment Types ("Standalone", "ReplicaSet", "ShardedCluster"

          ## Supported MongoDB Deployment Types ##

          * Standalone: An instance of mongod that is running as a single server and
          not as part of a replica set, this is, it does not do any kind of
          replication.

          * Replica Set: A replica set in MongoDB is a group of mongod processes that
          maintain the same data set. Replica sets provide redundancy and high
          availability, and are the basis for all production deployments. This section
          introduces replication in MongoDB as well as the components and architecture
          of replica sets. The section also provides tutorials for common tasks
          related to replica sets.

          * Sharded Cluster: The set of nodes comprising a sharded MongoDB deployment.
          A sharded cluster consists of config servers, shards, and one or more mongos
          routing processes. Sharding is a A database architecture that partitions
          data by key ranges and distributes the data among two or more database
          instances. Sharding enables horizontal scaling.

          ## Requirements for deploying MongoDB OpsManager

          * In order to deploy resources of type MongoDB OpsManager, you will need to
          create a secret containing the [credentials](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/plan-om-resource/#om-rsrc-prereqs)
          for the Global Owner user

          ## Security ##

          The operator can enable TLS for all traffic between servers and also between
          clients and servers. Before enabling `security.tls.enabled` to `true` you
          should create your certificates.  or you can leave the operator to create all
          the certificates for you. The operator ability to create certs is been
          deprecated due to Kubernetes API changes.

          For more information, please read the official MongoDB
          Kubernetes Operator  [docs](https://docs.mongodb.com/kubernetes-operator/stable/).
        displayName: MongoDB Controllers for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mongodb
        - databases
        - nosql
        links:
        - name: Documentation
          url: https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/index.html
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: stable
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/mongodb/mongodb-enterprise-server@sha256:1d418c65d82ccad205b7889be4ba161d3cbfa8b1fb75b21c8fcf02de38fad9ca
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8d7266b405ebb2dd24a9f7c12d3921024f547c3d8c01831e6bcfc1d551d63be1
        - quay.io/mongodb/mongodb-agent@sha256:c5f767543bf99063c9aa43b32e468212617146c3ca9257caf1f23b6db4bd66d4
        - quay.io/mongodb/mongodb-enterprise-server@sha256:11ab324698f919f84a5dab5a964d93fe63f98a48146bb3b86974cba7606d30ec
        - quay.io/mongodb/mongodb-enterprise-server@sha256:85c1d669c073caf9cbaac815e4c8ea2ca18b71deefa03bf84cd6d8b8ebd53e12
        - quay.io/mongodb/mongodb-enterprise-server@sha256:df6081325ea2fe01d1b27d0c70005dec8232aaf51a43d91661b722b8a1761263
        - quay.io/mongodb/mongodb-agent@sha256:f65388a48f65c894759bc9c2e7434e29e45d967d32ca5841b3ab8ff90c4a41a4
        - quay.io/mongodb/mongodb-kubernetes@sha256:22e4ae882cff477adc99cb74bc979cb112d9e0abf37509298a3839fea274ae75
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0fde236fe26d5b20210d6f246aadacd7845874712def516cbe2eec11d79d5181
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:e4f65fc4156cbbc32d18616d9f1cd353935758872f9d809eaf785d645aa637cf
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8d7e5361c2a1604dec3fc671d629806fe6ddc6df524b69a441b86933a4b30093
        - quay.io/mongodb/mongodb-enterprise-server@sha256:523566f44cbb6bbf0cd12b1adae939a883f2254c78dc4b8c9d0098581337b1db
        - quay.io/mongodb/mongodb-enterprise-server@sha256:19925e1297ab652db59c35f53e7b7c8b2b277f8ecdc4215682961aaf2b3e924e
        - quay.io/mongodb/mongodb-agent@sha256:1e93699e4157b5a78a7bca90d9243e586e13413855fbe2bf1e795bfc16c5fefd
        - quay.io/mongodb/mongodb-agent@sha256:8b3b301143c4f3bb25757896a930a10a9ba4852b109dbc5670eedd8ba011e61e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c48631742ad1fec8a9ee745fc3cc9ca1fe7d86ef7fa68ad8e8337c7a4566dc87
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3fe62f3ad52707ccf0e9993c69891e44c569a4b4e1a3244cf60e3b5fdde57bd2
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:ca4aad523f14d68fccb60256f9ce8909c66ebb5b321ee15e5abf9ac5738947f9
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:b7764c316eeacffd3f9ddae62d9fd2a74eb58484d2cfd5021e460095d604764f
        - quay.io/mongodb/mongodb-kubernetes-init-database@sha256:1d3167a886ea108407be1f3d7eaa89c9607ff26fd49badf343bed02d848b6e9c
        - quay.io/mongodb/mongodb-agent@sha256:e131c100978db4c7a0a7be335e9e153af594d77a2dae42bb16672857785a7ef3
        - quay.io/mongodb/mongodb-agent@sha256:adaa6f9364bad38c535fa9f28d7e9b364e19148add50784ae67bed7c289e0a5f
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:a4590af027182305913f0de1a2e37ad8612bd73b8b31f4df11068b80089021ff
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:f71b027fccf649f18f63f8df7a59b1bac421a2cdab6712e0c985a93c08ed970a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa8683500e8d3632c4588bbcdddb4e3186a01f48aefe1b6d95f8860dae8b6c76
        - quay.io/mongodb/mongodb-enterprise-server@sha256:b00ac773623e1bf422b47e6d783263d2d08737865abe9abbe106d86d1ea25165
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:d81eac2129b6ab8346be1749c56ea67f6da64d4ee0fb9f3ff4171ba0f61918eb
        - quay.io/mongodb/mongodb-agent@sha256:a8358ce465adf463d8e73916d7944765d7aaf2b0ed10bd3b8119a87fc9080667
        - quay.io/mongodb/mongodb-agent@sha256:fa30370a75e8e4ac648650ceb39a7a259a754aab8a48d7e2f2801cd1b777e91b
        - quay.io/mongodb/mongodb-enterprise-server@sha256:15e31285c8949a4666f7702df53416b0905d76945a28575a6028a876cc8a6f0f
        - quay.io/mongodb/mongodb-agent@sha256:633ca84d79d393f926d102dd27233df79765e0af69f5dde53288d3fdb10c0304
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:1076466ae62fc41d751b266bbc672619195b523c42118af40c1e6382ea102897
        - quay.io/mongodb/mongodb-enterprise-server@sha256:e7aeedb752dda77cf0e49df3430843b5a2bba64c8404628a983f46640d316808
        - quay.io/mongodb/mongodb-enterprise-server@sha256:37af0913742b6de339c7e664b30f35dcef04506529e4a09a9bbbdd57643f7149
        - quay.io/mongodb/mongodb-enterprise-server@sha256:5c8553e5ba115657fb878c0fe08704af9fd5decec572a87d89d2c8c156ffc9f9
        - quay.io/mongodb/mongodb-agent@sha256:793ae31c0d328fb3df1d3aa526f94e466cc2ed3410dd865548ce38fa3859cbaa
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7885ab6e88214f9289d8babf5189136dde0dd4c84a15a5481ccd3ef512b2e66f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:9bef77e905dadd1e61d0439dd53b21ed1f3606e49affd9ffc4ba8156578e8f0f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d21c65780cadc9d8668d2c28935d492625d6993f13ba562722200a819281cbcc
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f1e72679b2468aed2f3c3106568327911e6594c9ee15f7348e953eaa0d8fd44a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:454b1585c342375dea643b10ead688d0f62347841f5f30059fcd4f92e3297ee9
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:960e10cf184213397b078038879e8a36aec54dc5de928afc459e0fc833ebb94d
        - quay.io/mongodb/mongodb-enterprise-server@sha256:655896bac9e82de8e9729d59a36c3a31f66235f22b93449260a2ccb7709de084
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:5d299820bb903f0cdfdf2626a3c44099d2eaee16188cd8234d2ff3a57259b3a7
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:76500f012df908d247835696a65462b39880b31128f6916e852442b41de26af9
        - quay.io/mongodb/mongodb-enterprise-server@sha256:778f9e29e36d6687cd17dd95ec1f8127d2a732bde1a2dd5821212eb55c1c998a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3add8b68bfbaa42596fe5dbbee4623ba5ff1a826b18bb71301525adf574dcb94
        - quay.io/mongodb/mongodb-enterprise-server@sha256:5145c97d2281aabcd8538ff515c3833aa48acb66b0b739fb1881120c1985d88a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:dfd4277f0c16ed476ac7de51894739e8c8d13a65ea5024b9a97b3dce0f6c6975
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c752a7f0726d21d55f204a359b85fa29cd727a5fe571b37289ae3ea52d6206b0
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:146c4f5dc443f94f54d72808b4e4df93bb904e23589b222d17700166780776b4
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:5e3982493e85ac1e40536758c3145b7c2fff9a7b4be9d053ee41201363a89920
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8445d59d491a6d3890ea9c8b421214bcd0fdcfbc420ed40497a790b79f0bc89e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:fb8397cbcdbf7c33f6ad142492792771127f0d9a8c46388f350b6927405ee590
        - quay.io/mongodb/mongodb-agent@sha256:fc7660f019142dee4e2ec893bd3e1c94759f77264aea1e24d850d9c5489be307
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d323c1bcd14118cc537ac282996ea5a58756d20b6b73f1eec0efa8710d246077
        - quay.io/mongodb/mongodb-enterprise-server@sha256:720056b985c1a16d48b2aecb7a88a15cba3d8186e55b3c6c24729699a85c8232
        - quay.io/mongodb/mongodb-enterprise-server@sha256:67238129df09d33ee4746ff1acb5515d699a29d9f42350eae3f3f69ccb7fbf54
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:85b4e954c9c4bbe1019774bad1e05e9c8dc175648b01d3badf0b64143f182019
        - quay.io/mongodb/mongodb-agent@sha256:1c56e367eff4bd2106dbc3ced496d3fc084d265e4f375a5c91f73d485611daf5
        - quay.io/mongodb/mongodb-enterprise-server@sha256:9a3a6496be0d2d446e6d654eb56386c7726e0cd2d7232f6dcec579923edf0014
        - quay.io/mongodb/mongodb-enterprise-server@sha256:172e338a43df01ee5408d8d1e3cb038d2c55e77761c1a2ac6ed37959d1525140
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:6c475c3180bcfa1d1cdbd41c4aaca4d0eca82404fa1e35547c57c971fa3fe25c
        - quay.io/mongodb/mongodb-enterprise-server@sha256:33a30d11969eb21952681108092fe7f916e25c8e1de43e6a4e40e126025a2bec
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7a93a0276531ff9be4c90bb8fe8d104e0a9e930c29792aafe03cc6a76a9fa89c
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:702f529cb9d8d9042e54263f8bc37b40c062ac2695efc3e7150819779886e323
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:439d6fefb469613432e2d05149dfc96c32b16469d743835d5f402a2ada8be8cc
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:33bbd29b74f95baad522b380d70bcc9f933a3fee57642c37b09376c86179c40f
        - quay.io/mongodb/mongodb-kubernetes-database@sha256:34bca0371c641a44249cc1aa5edb7640a640717ea4cbe6ae392945583178f184
        - quay.io/mongodb/mongodb-agent@sha256:b422829aac63f068aed4a6948fd14cbd3c3bfad6d47ab76523f6839bf20b0203
        - quay.io/mongodb/mongodb-enterprise-server@sha256:a48a4d5c275fd669a27469649fb39ea38c728dbcf9f0a9da4e7cf27a2ce912ed
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:78f11c9cd5e63f2b0e10c67dc1491f4ce1279fa90178c108814725414defab9a
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:fa4aa97767bd19cf3711a74bf21ecb9cbbc25fed6b6b09a2eb241ebd3fbc8f3a
        - quay.io/mongodb/mongodb-kubernetes-init-appdb@sha256:8fd9a9d0ea8e086208a8fe1adae8a37a8d6bdc424e0260b8fb73f1a4a064675c
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:adeab0dc766a27138db7df5f37cbb1da860c14179ef631b2e001e5bb875325e4
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:3bbd3d7fd45d107621e7770f2b4c2a758e148cd472e0ee21719442f71bf6ade0
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:b9ab7147b59b62e40a69c6400f87d0c7faecfa5462bed6e68ca653b00e50b887
        - quay.io/mongodb/mongodb-agent@sha256:f2d1728df506f2a6e8daea0d6b5e12f0c142a11602e274872ac5a4dc0175e135
        - quay.io/mongodb/mongodb-enterprise-server@sha256:a86c4d8a0b9ca3c20cc524809676eb03a944ada43378ec98c107cd72cc64700f
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:09788976bdc1327acbf18cedf8efd5fca2159e43b506faa40e03ee42ad94928a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa300abf739e26350a258f643fa8e57aedacd041055c7b923bd22b21ef554cdb
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f2d9a3264a8814f33143b73c56624572fb80afeab184133d3a901713a31c1a87
        - quay.io/mongodb/mongodb-agent@sha256:62323b0ef76858002abc1ec3fba29f28ff2b914e1050ddac1cb933ba0624b29e
        - quay.io/mongodb/mongodb-agent@sha256:8d88da240cad77b0092849d344cf64e1fedfcc320299158c4310833572ac4a6f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3316015ac0699d66ac73f714e5dc0784738654e0349e80b1e1f4e953b3c88964
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:b8aa1edbc5fb02af312a863bc7db8535a282dfd692a07b1e321e5a1acbfeb6a1
        - quay.io/mongodb/mongodb-enterprise-server@sha256:bfbcfcfc5f0de22e20520b2d96f826638e424adb028a909ccc192013d11f5833
        - registry.connect.redhat.com/mongodb/mongodb-kubernetes-bundle@sha256:11671abdb92a1bc5b1b8ef736f70d9dba78eedb66c79030ebb8f2ddfba4b184f
        - quay.io/mongodb/mongodb-kubernetes-init-ops-manager@sha256:da648073110d0fef7f2cdb5a5a16f363beb9ff80ec1eaab139af65c55a9fd865
        - quay.io/mongodb/mongodb-agent@sha256:0caca86af01da94d5e552cd200a5b110f4aa0a42e68522483b970d37afc576a0
        - quay.io/mongodb/mongodb-enterprise-server@sha256:ef732e3eea91cc86caf2eabedc0c9115ed235a8d204f33e74bbf090a0b0259fb
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d49417ea85ee1ddb84429552a5aac87a82c2843904d8c0300a43b657b7a49e0e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:1a77851485ad3b2566e765b4bb051ff0ddfa48703492cef6c6db021dde84d87f
        - quay.io/mongodb/mongodb-search@sha256:c1e636119aa206ff98cefed37ee4b488d75c6a5e6025dcb71f44275a8f3f546a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c8aec83b76dfecc05b8f5d8f40fd61b24980c0287a07294f75f321c2d42c32b4
        - quay.io/mongodb/mongodb-enterprise-server@sha256:376ad7e5fe42651d946cba5705c0eee44aa636c1b4ff258210e4ce2fe4205b4d
        - quay.io/mongodb/mongodb-agent@sha256:fb0f4825bdbe7972cc2aada5b1687191e156c28a7259de191d40b9fbd0b10367
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:cd869ff7d661059fad7593e30141d74e8cc751295b1579577f7a853396eb5d0b
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d2d8b59c1f39c41951e7878963f8496eb494688720366f8edc7060887cdbe6a0
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:895dbdfb87ddc2e9693671c7108a31ab28e16fec2e5be6d046bdd2e30319eade
        - quay.io/mongodb/mongodb-agent@sha256:640398a92c86cdafc7ac0aba776b484fc7c465a080f8daebb9946813d511f4a2
        - quay.io/mongodb/mongodb-agent@sha256:3e1ddf6a18bf3a4bc94ded15082b6410c297756277782c276274dd3da71d89e9
        version: 1.6.1
      entries:
      - name: mongodb-kubernetes.v1.6.1
        version: 1.6.1
      - name: mongodb-kubernetes.v1.6.0
        version: 1.6.0
      - name: mongodb-kubernetes.v1.5.0
        version: 1.5.0
      - name: mongodb-kubernetes.v1.4.0
        version: 1.4.0
      - name: mongodb-kubernetes.v1.3.0
        version: 1.3.0
      - name: mongodb-kubernetes.v1.2.0
        version: 1.2.0
      - name: mongodb-kubernetes.v1.1.0
        version: 1.1.0
      - name: mongodb-kubernetes.v1.0.1
        version: 1.0.1
      - name: mongodb-kubernetes.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: mongodb-kubernetes
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-hdfs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hdfs-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/hdfs-operator@sha256:baaeabcb9f77b993a1f0229a76e6736dc39a010f7e614e4d41debdaa2309c249
          description: Stackable Operator for Apache Hadoop HDFS
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/hdfs-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for HdfsClusterSpec via `CustomResource`
            displayName: hdfsclusters.hdfs.stackable.tech
            kind: HdfsCluster
            name: hdfsclusters.hdfs.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Hadoop HDFS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hdfs
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/hdfs-operator@sha256:baaeabcb9f77b993a1f0229a76e6736dc39a010f7e614e4d41debdaa2309c249
        - registry.connect.redhat.com/stackable/stackable-apache-hdfs-operator@sha256:393a2f034c0dc1ebf71b87caf58108c974d310fd4bb4526d3114271967465f77
        version: 25.11.0
      entries:
      - name: hdfs-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-hdfs-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-atlas-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-atlas-kubernetes.v2.12.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupCompliancePolicy",
                "metadata": {
                  "name": "my-backup-compliance-policy"
                },
                "spec": {
                  "authorizedEmail": "john.doe@example.com",
                  "authorizedUserFirstName": "John",
                  "authorizedUserLastName": "Doe",
                  "copyProtectionEnabled": false,
                  "encryptionAtRestEnabled": false,
                  "onDemandPolicy": {
                    "retentionUnit": "weeks",
                    "retentionValue": 3
                  },
                  "overwriteBackupPolicies": false,
                  "pointInTimeEnabled": true,
                  "restoreWindowDays": 42,
                  "scheduledPolicyItems": [
                    {
                      "frequencyInterval": 2,
                      "frequencyType": "daily",
                      "retentionUnit": "days",
                      "retentionValue": 7
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupPolicy",
                "metadata": {
                  "name": "atlasbackuppolicy-sample"
                },
                "spec": {
                  "items": [
                    {
                      "frequencyInterval": 6,
                      "frequencyType": "hourly",
                      "retentionUnit": "days",
                      "retentionValue": 2
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "daily",
                      "retentionUnit": "days",
                      "retentionValue": 7
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "weekly",
                      "retentionUnit": "weeks",
                      "retentionValue": 4
                    },
                    {
                      "frequencyInterval": 15,
                      "frequencyType": "monthly",
                      "retentionUnit": "months",
                      "retentionValue": 12
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupSchedule",
                "metadata": {
                  "name": "atlasbackupschedule-sample"
                },
                "spec": {
                  "autoExportEnabled": false,
                  "copySettings": [
                    {
                      "cloudProvider": "AWS",
                      "frequencies": [
                        "WEEKLY"
                      ],
                      "regionName": "US_WEST_1",
                      "shouldCopyOplogs": false
                    }
                  ],
                  "policy": {
                    "name": "atlasbackuppolicy-sample"
                  },
                  "referenceHourOfDay": 10,
                  "referenceMinuteOfHour": 10,
                  "restoreWindowDays": 2,
                  "useOrgAndGroupNamesInExportPrefix": true
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasCustomRole",
                "metadata": {
                  "name": "shard-operator-role"
                },
                "spec": {
                  "projectRef": {
                    "name": "my-project"
                  },
                  "role": {
                    "actions": [
                      {
                        "name": "getShardMap",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      },
                      {
                        "name": "shardingState",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      },
                      {
                        "name": "connPoolStats",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      },
                      {
                        "name": "getLog",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      }
                    ],
                    "inheritedRoles": [
                      {
                        "database": "admin",
                        "name": "operator-role-1"
                      }
                    ],
                    "name": "my-role"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDataFederation",
                "metadata": {
                  "name": "my-data-federation",
                  "namespace": "mongodb-atlas-system"
                },
                "spec": {
                  "name": "my-data-federation",
                  "privateEndpoints": [
                    {
                      "endpointId": "vpce-03f9eeaa764e32454",
                      "provider": "AWS",
                      "type": "DATA_LAKE"
                    }
                  ],
                  "projectRef": {
                    "name": "my-project",
                    "namespace": "mongodb-atlas-system"
                  },
                  "storage": {
                    "databases": [
                      {
                        "collections": [
                          {
                            "dataSources": [
                              {
                                "storeName": "http-test",
                                "urls": [
                                  "https://data.cityofnewyork.us/api/views/vfnx-vebw/rows.csv"
                                ]
                              }
                            ],
                            "name": "test-collection-1"
                          }
                        ],
                        "name": "test-db-1"
                      }
                    ],
                    "stores": [
                      {
                        "name": "http-test",
                        "provider": "http"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDatabaseUser",
                "metadata": {
                  "name": "my-database-user"
                },
                "spec": {
                  "databaseName": "admin",
                  "passwordSecretRef": {
                    "name": "the-user-password"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "roles": [
                    {
                      "databaseName": "admin",
                      "roleName": "readWriteAnyDatabase"
                    }
                  ],
                  "username": "theuser"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDeployment",
                "metadata": {
                  "name": "my-atlas-deployment"
                },
                "spec": {
                  "backupRef": {
                    "name": "atlasbackupschedule-sample"
                  },
                  "deploymentSpec": {
                    "backupEnabled": true,
                    "clusterType": "REPLICASET",
                    "mongoDBMajorVersion": "7.0",
                    "name": "test-deployment",
                    "replicationSpecs": [
                      {
                        "regionConfigs": [
                          {
                            "electableSpecs": {
                              "instanceSize": "M10",
                              "nodeCount": 3
                            },
                            "priority": 7,
                            "providerName": "AWS",
                            "regionName": "US_EAST_1"
                          }
                        ],
                        "zoneName": "Zone 1"
                      }
                    ],
                    "tags": [
                      {
                        "key": "team",
                        "value": "atlas-operator"
                      }
                    ]
                  },
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasFederatedAuth",
                "metadata": {
                  "name": "atlas-default-federated-auth",
                  "namespace": "mongodb-atlas-system"
                },
                "spec": {
                  "connectionSecretRef": {
                    "name": "my-org-secret",
                    "namespace": "mongodb-atlas-system"
                  },
                  "domainAllowList": [
                    "my-org-domain.com"
                  ],
                  "domainRestrictionEnabled": true,
                  "enabled": true,
                  "postAuthRoleGrants": [
                    "ORG_MEMBER"
                  ],
                  "roleMappings": [
                    {
                      "externalGroupName": "org-admin",
                      "roleAssignments": [
                        {
                          "role": "ORG_OWNER"
                        }
                      ]
                    },
                    {
                      "externalGroupName": "dev-team",
                      "roleAssignments": [
                        {
                          "role": "ORG_GROUP_CREATOR"
                        },
                        {
                          "projectName": "dev-project",
                          "role": "GROUP_OWNER"
                        }
                      ]
                    }
                  ],
                  "ssoDebugEnabled": false
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasIPAccessList",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasipaccesslist-sample"
                },
                "spec": {
                  "entries": [
                    {
                      "cidrBlock": "192.168.1.0/24"
                    },
                    {
                      "deleteAfterDate": "2025-01-20T23:59:59+02:00",
                      "ipAddress": "10.0.0.1"
                    }
                  ],
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkContainer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasnetworkcontainer-sample"
                },
                "spec": {
                  "cidrBlock": "10.11.0.0/16",
                  "connectionSecret": {
                    "name": "atlas-connection-secret"
                  },
                  "externalProjectRef": {
                    "projectId": "66e2f2b621571b7e69a89b66"
                  },
                  "provider": "AWS",
                  "region": "US_EAST_1"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkPeering",
                "metadata": {
                  "name": "atlasnetworkpeering-sample"
                },
                "spec": {
                  "atlasCidrBlock": "10.12.0.0/16",
                  "awsConfiguration": {
                    "accepterRegionName": "US_EAST_1",
                    "awsAccountId": "23214235145",
                    "routeTableCidrBlock": "10.11.0.0/16",
                    "vpcId": "vpcid-7123782134"
                  },
                  "containerId": "623412394512350",
                  "containerRegion": "US_EAST_1",
                  "projectRef": {
                    "name": "atlas-project",
                    "namespace": "namespace"
                  },
                  "provider": "AWS"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasPrivateEndpoint",
                "metadata": {
                  "name": "atlasprivateendpoint-sample"
                },
                "spec": {
                  "awsConfiguration": {
                    "id": "vpce-f4k34w51d"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "provider": "AWS",
                  "region": "EU_CENTRAL_1"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasProject",
                "metadata": {
                  "name": "my-project"
                },
                "spec": {
                  "name": "Test Atlas Operator Project",
                  "projectIpAccessList": [
                    {
                      "comment": "IP address for Application Server A",
                      "ipAddress": "192.0.2.15"
                    },
                    {
                      "cidrBlock": "203.0.113.0/24",
                      "comment": "CIDR block for Application Server B - D"
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasSearchIndexConfig",
                "metadata": {
                  "name": "atlassearchindexconfig-sample"
                },
                "spec": {
                  "analyzer": "lucene.standard",
                  "analyzers": [
                    {
                      "name": "test-analyzer",
                      "tokenFilters": [
                        {
                          "asciiFolding": {
                            "originalTokens": "omit"
                          },
                          "type": "asciiFolding"
                        }
                      ],
                      "tokenizer": {
                        "type": "whiteSpace",
                        "whitespace": {
                          "maxTokenLenght": 200
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasStreamConnection",
                "metadata": {
                  "name": "my-streamconnection-kafka"
                },
                "spec": {
                  "kafkaConfig": {
                    "authentication": {
                      "credentials": {
                        "name": "kafka-userpass"
                      },
                      "mechanism": "SCRAM-512"
                    },
                    "bootstrapServers": "kafka.server1:9001,kafka.server2:9002,kafka.server3:9003",
                    "security": {
                      "certificate": {
                        "name": "kafka-cert"
                      },
                      "protocol": "SSL"
                    }
                  },
                  "name": "kafka-config",
                  "type": "Kafka"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasStreamInstance",
                "metadata": {
                  "name": "my-streaminstance-sample"
                },
                "spec": {
                  "clusterConfig": {
                    "provider": "AWS",
                    "region": "VIRGINIA_USA",
                    "tier": "SP30"
                  },
                  "connectionRegistry": [
                    {
                      "name": "my-streamconnection-sample"
                    }
                  ],
                  "name": "my-instance",
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasTeam",
                "metadata": {
                  "name": "atlasteam-sample"
                },
                "spec": {
                  "name": "my-team",
                  "usernames": [
                    "username@mongodb.com"
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasThirdPartyIntegration",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasintegration-sample"
                },
                "spec": {
                  "datadog": {
                    "apiKeySecretRef": {
                      "name": "secret-ref"
                    },
                    "region": "string",
                    "sendCollectionLatencyMetrics": "string",
                    "sendDatabaseMetrics": "string"
                  },
                  "projectRef": {
                    "name": "my-atlas-project"
                  },
                  "type": "DATADOG"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/mongodb/mongodb-atlas-kubernetes-operator:2.12.0
          createdAt: "2025-12-03T08:37:51Z"
          description: The MongoDB Atlas Kubernetes Operator enables easy management
            of Clusters in MongoDB Atlas
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/mongodb/mongodb-atlas-kubernetes
          support: support@mongodb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AtlasBackupCompliancePolicy
            name: atlasbackupcompliancepolicies.atlas.mongodb.com
            version: v1
          - kind: AtlasBackupPolicy
            name: atlasbackuppolicies.atlas.mongodb.com
            version: v1
          - kind: AtlasBackupSchedule
            name: atlasbackupschedules.atlas.mongodb.com
            version: v1
          - kind: AtlasCustomRole
            name: atlascustomroles.atlas.mongodb.com
            version: v1
          - kind: AtlasDatabaseUser
            name: atlasdatabaseusers.atlas.mongodb.com
            version: v1
          - kind: AtlasDataFederation
            name: atlasdatafederations.atlas.mongodb.com
            version: v1
          - kind: AtlasDeployment
            name: atlasdeployments.atlas.mongodb.com
            version: v1
          - kind: AtlasFederatedAuth
            name: atlasfederatedauths.atlas.mongodb.com
            version: v1
          - kind: AtlasIPAccessList
            name: atlasipaccesslists.atlas.mongodb.com
            version: v1
          - kind: AtlasNetworkContainer
            name: atlasnetworkcontainers.atlas.mongodb.com
            version: v1
          - kind: AtlasNetworkPeering
            name: atlasnetworkpeerings.atlas.mongodb.com
            version: v1
          - kind: AtlasOrgSettings
            name: atlasorgsettings.atlas.mongodb.com
            version: v1
          - kind: AtlasPrivateEndpoint
            name: atlasprivateendpoints.atlas.mongodb.com
            version: v1
          - kind: AtlasProject
            name: atlasprojects.atlas.mongodb.com
            version: v1
          - kind: AtlasSearchIndexConfig
            name: atlassearchindexconfigs.atlas.mongodb.com
            version: v1
          - kind: AtlasStreamConnection
            name: atlasstreamconnections.atlas.mongodb.com
            version: v1
          - kind: AtlasStreamInstance
            name: atlasstreaminstances.atlas.mongodb.com
            version: v1
          - kind: AtlasTeam
            name: atlasteams.atlas.mongodb.com
            version: v1
          - kind: AtlasThirdPartyIntegration
            name: atlasthirdpartyintegrations.atlas.mongodb.com
            version: v1
        description: |
          The MongoDB Atlas Operator provides a native integration between the Kubernetes orchestration platform and MongoDB
          Atlas — the only multi-cloud document database service that gives you the versatility you need to build sophisticated
          and resilient applications that can adapt to changing customer demands and market trends.

          The full documentation for the Operator can be found [here](https://docs.atlas.mongodb.com/atlas-operator/)

          ## Getting Started

          ### Supported features

          * Create and configure a project, or connect to an existing one.
          * Deploy, manage, scale, and tear down clusters.
          * Support for serverless instances.
          * Create and edit database users.
          * Manage IP Access Lists, network peering and private endpoints.
          * Configure and control Atlas’s fully managed cloud backup.
          * Configure federated authentication for your Atlas organization
          * Integrate Atlas monitoring with Prometheus.

          ... and more.

          To view the list of custom resources and each CR's schema, visit our [reference](https://www.mongodb.com/docs/atlas/operator/stable/custom-resources/)
          documentation. See the [Quickstart](https://www.mongodb.com/docs/atlas/operator/stable/ak8so-quick-start/) to get
          started with Atlas Kubernetes Operator.
        displayName: MongoDB Atlas Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - MongoDB
        - Atlas
        - Database
        - Replica Set
        - Cluster
        links:
        - name: MongoDB Atlas Kubernetes
          url: https://github.com/mongodb/mongodb-atlas-kubernetes
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: beta
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/community-operator-pipeline-prod/mongodb-atlas-kubernetes@sha256:c4f1a2e3a81fc9d48480264ea236acf93ac12b1b719a83adfa8c9ce62d8b49e6
        - quay.io/mongodb/mongodb-atlas-kubernetes-operator:2.12.0
        version: 2.12.0
      entries:
      - name: mongodb-atlas-kubernetes.v2.12.0
        version: 2.12.0
      - name: mongodb-atlas-kubernetes.v2.11.1
        version: 2.11.1
      - name: mongodb-atlas-kubernetes.v2.11.0
        version: 2.11.0
      - name: mongodb-atlas-kubernetes.v2.10.0
        version: 2.10.0
      - name: mongodb-atlas-kubernetes.v2.9.1
        version: 2.9.1
      - name: mongodb-atlas-kubernetes.v2.9.0
        version: 2.9.0
      - name: mongodb-atlas-kubernetes.v2.8.2
        version: 2.8.2
      - name: mongodb-atlas-kubernetes.v2.8.1
        version: 2.8.1
      - name: mongodb-atlas-kubernetes.v2.8.0
        version: 2.8.0
      - name: mongodb-atlas-kubernetes.v2.7.1
        version: 2.7.1
      - name: mongodb-atlas-kubernetes.v2.7.0
        version: 2.7.0
      - name: mongodb-atlas-kubernetes.v2.6.1
        version: 2.6.1
      - name: mongodb-atlas-kubernetes.v2.6.0
        version: 2.6.0
      - name: mongodb-atlas-kubernetes.v2.5.0
        version: 2.5.0
      - name: mongodb-atlas-kubernetes.v2.4.1
        version: 2.4.1
      - name: mongodb-atlas-kubernetes.v2.4.0
        version: 2.4.0
      - name: mongodb-atlas-kubernetes.v2.3.1
        version: 2.3.1
      - name: mongodb-atlas-kubernetes.v2.3.0
        version: 2.3.0
      - name: mongodb-atlas-kubernetes.v2.2.2
        version: 2.2.2
      - name: mongodb-atlas-kubernetes.v2.2.1
        version: 2.2.1
      - name: mongodb-atlas-kubernetes.v2.2.0
        version: 2.2.0
      - name: mongodb-atlas-kubernetes.v2.1.0
        version: 2.1.0
      - name: mongodb-atlas-kubernetes.v2.0.1
        version: 2.0.1
      - name: mongodb-atlas-kubernetes.v2.0.0
        version: 2.0.0
      - name: mongodb-atlas-kubernetes.v1.9.1
        version: 1.9.1
      - name: mongodb-atlas-kubernetes.v1.9.0
        version: 1.9.0
      - name: mongodb-atlas-kubernetes.v1.8.2
        version: 1.8.2
      - name: mongodb-atlas-kubernetes.v1.8.1
        version: 1.8.1
      - name: mongodb-atlas-kubernetes.v1.8.0
        version: 1.8.0
      - name: mongodb-atlas-kubernetes.v1.7.3
        version: 1.7.3
      - name: mongodb-atlas-kubernetes.v1.7.2
        version: 1.7.2
      - name: mongodb-atlas-kubernetes.v1.7.1
        version: 1.7.1
      - name: mongodb-atlas-kubernetes.v1.7.0
        version: 1.7.0
      name: stable
    defaultChannel: stable
    packageName: mongodb-atlas-kubernetes
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: proactive-node-scaling-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: proactive-node-scaling-operator.v0.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "NodeScalingWatermark",
                "metadata": {
                  "name": "ai-ml"
                },
                "spec": {
                  "nodeSelector": {
                    "machine.openshift.io/cluster-api-machine-type": "ai-ml"
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "workload",
                      "operator": "Equal",
                      "value": "ai-ml"
                    }
                  ],
                  "watermarkPercentage": 20
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "NodeScalingWatermark",
                "metadata": {
                  "name": "us-west-2a"
                },
                "spec": {
                  "nodeSelector": {
                    "topology.kubernetes.io/zone": "us-west-2a"
                  },
                  "watermarkPercentage": 20
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          certified: "false"
          containerImage: quay.io/redhat-cop/proactive-node-scaling-operator@sha256:892303babb45090a6458cd4b1c61a01364012c43ea0bd6ed4d10bdcb8041e2ab
          createdAt: "2022-01-22T14:14:23Z"
          description: This operator provides automation proactively scaling nodes
            before pods get stuck waiting for the cluster autoscaler.
          operatorframework.io/suggested-namespace: proactive-node-scaling-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/proactive-node-scaling-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeScalingWatermark is the Schema for the nodescalingwatermarks
              API
            displayName: Node Scaling Watermark
            kind: NodeScalingWatermark
            name: nodescalingwatermarks.redhatcop.redhat.io
            version: v1alpha1
        description: |
          This operator makes the [cluster autoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler) more proactive. As of now the cluster auto scaler will create new nodes only when a pod is pending because it cannot be allocated due to lack of capacity. This is not a goos user experience as the pending workload has to wait for several minutes as the new node is create and joins the cluster.

          The Proactive Node Scaling Operator improves the user experience by allocating low priority pods that don't do anything. When the cluster is full and a new user pod is created the following happens:

          1. some of the low priority pods are de-scheduled to make room for the user pod, which can then be scheduled. The user workload does not have to wait in this case.

          2. the de-scheduled low priority pods are rescheduled and in doing so the trigger the cluster autoscaler to add new nodes.

          Essentially this operator allows you to trade wasted resources for faster response time.

          In order for this operator to work correctly [pod priorities](https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/) must be defined. The default name for the priority class used by this operator is "proactive-node-autoscaling-pods" and it should have the lowest possible priority, 0. To ensure your regular workloads get a normal priority you should also define a PriorityClass for those with a higher priority than 0 and set globalDefault to true.

          For example:

          ```yaml
          apiVersion: scheduling.k8s.io/v1
          kind: PriorityClass
          metadata:
            name: proactive-node-autoscaling-pods
          value: 0
          globalDefault: false
          description: "This priority class is the priority class used for Proactive Node Scaling Pods."
          ---
          apiVersion: scheduling.k8s.io/v1
          kind: PriorityClass
          metadata:
            name: normal-workload
          value: 1000
          globalDefault: true
          description: "This priority classis the cluster default and should be used for normal workloads."
          ```

          Also for this operator to work the [cluster autoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler) must be active, see OpenShift instructions [here](https://docs.openshift.com/container-platform/4.6/machine_management/applying-autoscaling.html) on how to turn it on.

          To activate the proactive autoscaling, a CR must be defined, here is an example:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: NodeScalingWatermark
          metadata:
            name: us-west-2a
          spec:
            priorityClassName: proactive-node-autoscaling-pods
            watermarkPercentage: 20
            nodeSelector:
              topology.kubernetes.io/zone: us-west-2a
          ```

          The `nodeSelector` selects the nodes observed by this operator, which are also the nodes on which the low priority pods will be scheduled. The nodes observed by the cluster autoscaler should coincide with the nodes selected by this operator CR.

          The `watermarkPercentage` define the percentage of capacity of user workload that will be allocated to low priority pods. So in this example 20% of the user allocated capacity will be allocated via low priority pods. This also means that when the user workload reaches 80% capacity of the nodes selected by this CR (and the autoscaler), the cluster will start to scale.
        displayName: Proactive Node Scaling Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Capacity Management
        - Node Autoscaling
        - Proactive Autoscaling
        - Elastic Capacity
        links:
        - name: Proactive Node Scaling Operator
          url: https://github.com/redhat-cop/proactive-node-scaling-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/proactive-node-scaling-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/proactive-node-scaling-operator@sha256:892303babb45090a6458cd4b1c61a01364012c43ea0bd6ed4d10bdcb8041e2ab
        - quay.io/openshift-community-operators/proactive-node-scaling-operator@sha256:0ae01e9adc67ff7341fa3faf51a67c02206c41342374cab0bb2e6079d84fef4a
        version: 0.4.2
      entries:
      - name: proactive-node-scaling-operator.v0.4.2
        version: 0.4.2
      - name: proactive-node-scaling-operator.v0.4.0
        version: 0.4.0
      - name: proactive-node-scaling-operator.v0.3.10
        version: 0.3.10
      - name: proactive-node-scaling-operator.v0.3.9
        version: 0.3.9
      - name: proactive-node-scaling-operator.v0.3.8
        version: 0.3.8
      - name: proactive-node-scaling-operator.v0.3.7
        version: 0.3.7
      - name: proactive-node-scaling-operator.v0.3.6
        version: 0.3.6
      - name: proactive-node-scaling-operator.v0.3.5
        version: 0.3.5
      - name: proactive-node-scaling-operator.v0.3.4
        version: 0.3.4
      - name: proactive-node-scaling-operator.v0.3.3
        version: 0.3.3
      - name: proactive-node-scaling-operator.v0.3.2
        version: 0.3.2
      - name: proactive-node-scaling-operator.v0.3.1
        version: 0.3.1
      - name: proactive-node-scaling-operator.v0.3.0
        version: 0.3.0
      - name: proactive-node-scaling-operator.v0.2.0
        version: 0.2.0
      - name: proactive-node-scaling-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: proactive-node-scaling-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: group-sync-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: group-sync-operator.v0.0.36
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "azure-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "azure": {
                        "credentialsSecret": {
                          "name": "azure-group-sync",
                          "namespace": "group-sync-operator"
                        }
                      },
                      "name": "azure"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "github-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "github": {
                        "credentialsSecret": {
                          "name": "github-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "organization": "redhat-cop"
                      },
                      "name": "github"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "gitlab-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "gitlab": {
                        "credentialsSecret": {
                          "name": "gitlab-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "url": "https://gitlab.apps.openshift.com"
                      },
                      "name": "gitlab"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "keycloak-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "keycloak": {
                        "credentialsSecret": {
                          "name": "keycloak-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "insecure": true,
                        "realm": "ocp",
                        "url": "https://keycloak.apps.openshift.com"
                      },
                      "name": "keycloak"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "ldap-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "ldap": {
                        "credentialsSecret": {
                          "name": "ldap-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "insecure": true,
                        "rfc2307": {
                          "groupMembershipAttributes": [
                            "member"
                          ],
                          "groupNameAttributes": [
                            "cn"
                          ],
                          "groupUIDAttribute": "dn",
                          "groupsQuery": {
                            "baseDN": "ou=Groups,dc=example,dc=com",
                            "derefAliases": "never",
                            "filter": "(objectClass=groupofnames)",
                            "scope": "sub"
                          },
                          "tolerateMemberNotFoundErrors": true,
                          "tolerateMemberOutOfScopeErrors": true,
                          "userNameAttributes": [
                            "cn"
                          ],
                          "userUIDAttribute": "dn",
                          "usersQuery": {
                            "baseDN": "ou=Users,dc=example,dc=com",
                            "derefAliases": "never",
                            "scope": "sub"
                          }
                        },
                        "url": "ldap://localhost:389"
                      },
                      "name": "ldap"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "okta-sync"
                },
                "spec": {
                  "providers": [
                    {
                      "name": "okta",
                      "okta": {
                        "appId": "okta-sync-app-id",
                        "credentialsSecret": {
                          "name": "okta-api-token",
                          "namespace": "group-sync-operator"
                        },
                        "extractLoginUsername": true,
                        "profileKey": "login",
                        "url": "https://example.okta.com/"
                      }
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/group-sync-operator@sha256:43ef79efc2a77ee5edd4e3123f9dab156a30d3e00fd1fba9f89600b96f0f68d6
          createdAt: "2025-08-12T19:19:21Z"
          description: Synchronize groups and users from external providers
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: group-sync-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/group-sync-operator
          support: Red Hat Community of Practice
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GroupSync is the Schema for the groupsyncs API
            displayName: Group Sync
            kind: GroupSync
            name: groupsyncs.redhatcop.redhat.io
            version: v1alpha1
        description: |
          Synchronizes groups from external providers into OpenShift

          ## Overview

          The OpenShift Container Platform contains functionality to synchronize groups found in external identity providers into the platform. Currently, the functionality that is included in OpenShift to limited to synchronizing LDAP only. This operator is designed to integrate with external providers in order to provide new solutions.

          Group Synchronization is facilitated by creating a `GroupSync` resource. The following describes the high level schema for this resource:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: example-groupsync
          spec:
            providers:
              - <One or more providers to synchronize>
          ```

          ## Authentication

          In most cases, authentication details must be provided in order to communicate with providers. Authentication details are provider specific with regards to the required values. In supported providers, the secret can be referenced in the `credentialsSecret` by name and namespace where it has been created as shown below:

          ```
          credentialsSecret:
            name: <secret_name>
            namespace: <secret_namespace>
          ```

          ## Providers

          Integration with external systems is made possible through a set of pluggable external providers. The following providers are currently supported:

          * [Azure](https://azure.microsoft.com/)
          * [GitHub](https://github.com)
          * [GitLab](https://gitlab.com)
          * [LDAP](https://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol)
          * [Keycloak](https://www.keycloak.org/)/[Red Hat Single Sign On](https://access.redhat.com/products/red-hat-single-sign-on)
          * [Okta](https://www.okta.com/)
          * [IBM Security Verify](https://docs.verify.ibm.com/verify)

          The following sections describe the configuration options available for each provider


          ### Azure

          Groups contained within Azure Active Directory can be synchronized into OpenShift. The following table describes the set of configuration options for the Azure provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `authorityHost` | Azure Active Directory Endpoint | `https://login.microsoftonline.com` | No |
          | `baseGroups` | List of groups to start searching from instead of listing all groups in the directory | | No |
          | `credentialsSecret` | Name of the secret containing authentication details (See below) | | Yes |
          | `filter` | Graph API filter | | No |
          | `groups` | List of groups to filter against | | No |
          | `userNameAttributes` | Fields on a user record to use as the User Name | `userPrincipalName` | No |
          | `prune` | Prune Whether to prune groups that are no longer in Azure | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Azure provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: azure-groupsync
          spec:
            providers:
            - name: azure
              azure:
                credentialsSecret:
                  name: azure-group-sync
                  namespace: group-sync-operator
          ```

          #### Authenticating to Azure

          Authentication to Azure can be performed using Application Registration with access to query group information in Azure Active Directory.

          The App Registration must be granted access to the following Microsoft Graph API's:

          * Group.Read.All
          * GroupMember.Read.All
          * User.Read.All

          A secret must be created in the same namespace that contains the `GroupSync` resource:

          The following keys must be defined in the secret

          * `AZURE_TENANT_ID` - Tenant ID
          * `AZURE_CLIENT_ID` - Client ID
          * `AZURE_CLIENT_SECRET` - Client Secret

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic azure-group-sync --from-literal=AZURE_SUBSCRIPTION_ID=<AZURE_SUBSCRIPTION_ID> --from-literal=AZURE_TENANT_ID=<AZURE_TENANT_ID> --from-literal=AZURE_CLIENT_ID=<AZURE_CLIENT_ID> --from-literal=AZURE_CLIENT_SECRET=<AZURE_CLIENT_SECRET>
          ```

          ### GitHub

          Teams stored within a GitHub organization can be synchronized into OpenShift. The following table describes the set of configuration options for the GitHub provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `caSecret` | Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `organization` | Organization to synchronize against | | Yes |
          | `teams` | List of teams to filter against | | No |
          | `url` | Base URL for the GitHub or GitHub Enterprise host (Must contain a trailing slash) | | No |
          | `prune` | Prune Whether to prune groups that are no longer in GitHub | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Github provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: github-groupsync
          spec:
            providers:
            - name: github
              github:
                organization: ocp
                credentialsSecret:
                  name: github-group-sync
                  namespace: group-sync-operator
          ```

          #### Authenticating to GitHub

          Authentication to GitLab can be performed using a [Token](https://docs.gitlab.com/ee/security/token_overview.html) or a Username and Password (Note: 2FA not supported). A secret must be created in the same namespace that contains the `GroupSync` resource:

          When using an OAuth token, the following token types are supported:

          * Personal Access Token
          * OAuth Token
          * Job Token

          the following key is required:

          * `token` - OAuth token

          Optionally, the `tokenType` key can be specified to indicate the type of token being provided from the following values:

          * OAuth - `oauth`
          * Personal Access Token - `personal`
          * Job Token - `job`

          If no `tokenType` is provided, `oauth` is used by default

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=token=<token>
          ```

          To specify a token type, such as a Personal Access Token, the following command can be executed:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=token=<token> --from-literal=tokenType=personal
          ```

          The following keys are required for username and password:

          * `username` - Username for authenticating with GitHub
          * `password` - Password for authenticating with GitHub

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic github-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          ### GitLab

          Groups stored within a GitLab can be synchronized into OpenShift. The following table describes the set of configuration options for the GitLab provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `ca` | Reference to a resource containing a SSL certificate to use for communication (See below) | | No |
          | `caSecret` | **DEPRECATED** Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `groups` | List of groups to filter against | | No |
          | `prune` | Prune Whether to prune groups that are no longer in GitLab | `false` | No |
          | `scope` | Scope for group synchronization. Options are `one` for one level or `sub` to include subgroups | `sub` | No |
          | `url` | Base URL for the GitLab instance | `https://gitlab.com` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Github provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: gitlab-groupsync
          spec:
            providers:
            - name: gitlab
              gitlab:
                credentialsSecret:
                  name: gitlab-group-sync
                  namespace: group-sync-operator
          ```

          #### Authenticating to GitLab

          Authentication to GitLab can be performed using an OAuth Personal Access Token or a Username and Password (Note: 2FA not supported). A secret must be created in the same namespace that contains the `GroupSync` resource:

          When using an OAuth token, the following key is required:

          * `token` - OAuth token

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=token=<token>
          ```

          The following keys are required for username and password:

          * `username` - Username for authenticating with GitLab
          * `password` - Password for authenticating with GitLab

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          ### LDAP

          Groups stored within an [LDAP](https://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol) server can be synchronized into OpenShift. The LDAP provider implements the included features of the [Syncing LDAP groups](https://docs.openshift.com/container-platform/latest/authentication/ldap-syncing.html) feature and makes use of the libraries from the [OpenShift Command Line](https://docs.openshift.com/container-platform/latest/cli_reference/openshift_cli/getting-started-cli.html) tool to streamline the migration to this operator based implementation.

          The configurations of the three primary schemas (`rfc2307`, `activeDirectory` and `augmentedActiveDirectory`) can be directly migrated as is without any modification.

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `ca` | Reference to a resource containing a SSL certificate to use for communication (See below) | | No |
          | `caSecret` | **DEPRECATED** Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | No |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `groupUIDNameMapping` | User defined name mapping | | No |
          | `rfc2307` | Configuration using the [rfc2307](https://docs.openshift.com/container-platform/latest/authentication/ldap-syncing.html#ldap-syncing-rfc2307_ldap-syncing-groups) schema | | No |
          | `activeDirectory` | Configuration using the [activeDirectory](https://docs.openshift.com/container-platform/4.5/authentication/ldap-syncing.html#ldap-syncing-activedir_ldap-syncing-groups) schema | | No |
          | `augmentedActiveDirectory` | Configuration using the [activeDirectory](https://docs.openshift.com/container-platform/4.5/authentication/ldap-syncing.html#ldap-syncing-augmented-activedir_ldap-syncing-groups) schema | | No |
          | `url` | Connection URL for the LDAP server | `ldap://ldapserver:389` | No |
          | `whitelist` | Explicit list of groups to synchronize |  | No |
          | `blacklist` | Explicit list of groups to not synchronize |  | No |
          | `prune` | Prune Whether to prune groups that are no longer in LDAP | `false` | No |

          The following is an example using the `rfc2307` schema:

          ```
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ldap-groupsync
          spec:
            providers:
            - ldap:
                credentialsSecret:
                  name: ldap-group-sync
                  namespace: group-sync-operator
                insecure: true
                rfc2307:
                  groupMembershipAttributes:
                  - member
                  groupNameAttributes:
                  - cn
                  groupUIDAttribute: dn
                  groupsQuery:
                    baseDN: ou=Groups,dc=example,dc=com
                    derefAliases: never
                    filter: (objectClass=groupofnames)
                    scope: sub
                  tolerateMemberNotFoundErrors: true
                  tolerateMemberOutOfScopeErrors: true
                  userNameAttributes:
                  - cn
                  userUIDAttribute: dn
                  usersQuery:
                    baseDN: ou=Users,dc=example,dc=com
                    derefAliases: never
                    scope: sub
                url: ldap://ldapserver:389
              name: ldap
          ```

          The examples provided in the OpenShift documented referenced previously can be used to construct the schemas for the other LDAP synchronization types.

          #### Authenticating to LDAP

          If authentication is required in order to communicate with the LDAP server, a secret should be created in the same namespace that contains the `GroupSync` resource. The following keys can be defined:

          * `username` - Username (Bind DN) for authenticating with the LDAP server
          * `password` - Password for authenticating with the LDAP server

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic ldap-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          #### Whitelists and Blacklists

          Groups can be explicitly whitelisted or blacklisted in order to control the groups that are eligible to be synchronized into OpenShift. When running LDAP group synchronization using the command line, this configuration is referenced via separate files, but these are instead specified in the `blacklist` and `whitelist` properties as shown below:

          ```
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ldap-groupsync
          spec:
            providers:
            - ldap:
          ...
                whitelist:
                - cn=Online Corporate Banking,ou=Groups,dc=example,dc=com
          ...
              name: ldap
          ```

          ```
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ldap-groupsync
          spec:
            providers:
            - ldap:
          ...
                blacklist:
                - cn=Finance,ou=Groups,dc=example,dc=com
          ...
              name: ldap
          ```

          ### Keycloak

          Groups stored within Keycloak can be synchronized into OpenShift. The following table describes the set of configuration options for the Keycloak provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `ca` | Reference to a resource containing a SSL certificate to use for communication (See below) | | No |
          | `caSecret` | **DEPRECATED** Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
          | `groups` | List of groups to filter against | | No |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `loginRealm` | Realm to authenticate against | `master` | No |
          | `realm` | Realm to synchronize | | Yes |
          | `scope` | Scope for group synchronization. Options are `one` for one level or `sub` to include subgroups | `sub` | No |
          | `url` | Base URL for the Keycloak server. Older versions (<17.0.0) including Red Hat SSO should include the context path `/auth` appended to the hostname  | | Yes |
          | `prune` | Prune Whether to prune groups that are no longer in Keycloak | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Keycloak provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            providers:
            - name: keycloak
              keycloak:
                realm: ocp
                credentialsSecret:
                  name: keycloak-group-sync
                  namespace: group-sync-operator
                url: https://keycloak-keycloak-operator.apps.openshift.com/auth
          ```

          #### Authenticating to Keycloak

          A user with rights to query for Keycloak groups must be available. The following permissions must be associated to the user:

          * Password must be set (Temporary option unselected) on the _Credentials_ tab
          * On the _Role Mappings_ tab, select _master-realm_ or _realm-management_ next to the _Client Roles_ dropdown and then select **Query Groups** and **Query Users**.

          A secret must be created in the same namespace that contains the `GroupSync` resource. It must contain the following keys for the user previously created:

          * `username` - Username for authenticating with Keycloak
          * `password` - Password for authenticating with Keycloak

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic keycloak-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          ### Okta

          [Okta Groups](https://help.okta.com/en/prod/Content/Topics/users-groups-profiles/usgp-main.htm) assigned to [Okta Applications](https://help.okta.com/en/prod/Content/Topics/Apps/Apps_Apps.htm) can be synchronized into OpenShift. The developer docs for the Okta API that the Okta Syncer uses can be found [here](https://developer.okta.com/docs/reference/api/apps/#list-groups-assigned-to-application).
          The following table describes the set of configuration options for the Okta provider:

            | Name | Description | Defaults | Required |
            | ----- | ---------- | -------- | ----- |
            | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
            | `groups` | List of groups to filter against | | No |
            | `url` | Okta organization URL (Must contain a trailing slash) | | Yes |
            | `appId` | Application ID of App Groups are assigned to | | Yes |
            | `extractLoginUsername` | Bool to determine if you should extract username from okta login | | No |
            | `profileKey` | Attribute field on Okta User Profile you would like to use as identity | `login` | No |
            | `groupLimit` | Integer to set the maximum number of groups to retrieve from OKTA per request. | `1000` | No |
            | `prune` | Prune Whether to prune groups that are no longer in OKTA | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with an Okta provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: okta-sync
          spec:
            providers:
              - name: okta
                okta:
                  credentialsSecret:
                    name: okta-api-token
                    namespace: group-sync-operator
                  url: "https://example.okta.com/"
                  appId: okta-sync-app-id
          ```

          #### Authenticating to Okta

          A secret must be created in the same namespace as the group-sync-operator pod. It must contain the following key:

            * `okta-api-token` - Okta API Token for interacting with Okta

          The secret can be created by executing the following command:

            ```shell
            oc create secret generic okta-api-token --from-literal=okta-api-token=<OKTA_API_TOKEN> -n group-sync-operator
            ```

          ### IBM Security Verify

          Groups defined in [IBM Security Verify](https://help.okta.com/en/prod/Content/Topics/users-groups-profiles/usgp-main.htm) (ISV) can be synchronized into OpenShift. Currently only the `userName` field from ISV will be synchronized. The developer docs for the ISV API can be found [here](https://docs.verify.ibm.com/verify/page/api-documentation).
          The following table describes the set of configuration options for the provider:

            | Name | Description | Defaults | Required |
            | ----- | ---------- | -------- | ----- |
            | `credentialsSecret` | Reference to a secret containing authentication details (see below) | `''`  | Yes |
            | `groups` | List of groups to synchronize (see below) | `nil`  | Yes |
            | `tenantUrl` | The ISV tenant URL, for example `https://my-isv.verify.ibm.com`) | `''`  | Yes |

          The following is an example of a minimal configuration that can be applied to integrate with an Okta provider:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ibmsecurityverify-sync
          spec:
              providers:
              - name: ibmsecurityverify
                ibmsecurityverify:
                  credentialsSecret:
                    name: isv-group-sync
                    namespace: group-sync-operator
                  tenantUrl: https://my-isv.verify.ibm.com
                  groups:
                    - name: 'application owners'
                      id: 645001V3V9
                    - name: developer
                      id: 645001V3VA
          ```

          #### Group Objects
          Each group object in the `groups` array must contain an `id` field. The group ID can be retrieved by pulling the group information from the ISV API. Optionally, the object may also contain a `name` which corresponds to the group's display name. When defined, the operator will confirm that the name defined in the YAML matches that received from the API when synchronization occurs; as the group IDs are not human-friendly, using the name can confirm the correct groups are configured. If the names do not match an error will be logged.

          #### Group Names
          The name of each groups created in OpenShift will match the group name in ISV. Any whitespace in the ISV group name will be replaced with a hyphen.

          #### Authenticating to IBM Security Verify

          A secret must be created in the same namespace as the group-sync-operator pod. It must contain the following keys:

          * `clientId` - The API client ID.
          * `clientSecret`- The API client secret.

          See the IBM Security Verify [API documentation](https://docs.verify.ibm.com/verify/docs/api-access) for setting up authentication.

          ### Support for Additional Metadata (Beta)

          Additional metadata based on Keycloak group are also added to the OpenShift groups as Annotations including:

          * Parent/child relationship between groups and their subgroups
          * Group attributes

          ## CA Certificates

          Several providers allow for certificates to be provided in either a _ConfigMap_ or _Secret_ to communicate securely to the target host through the use of a property called `ca`.

          The certificate can be added to a Secret called _keycloak-certs_ using the key `ca.crt` representing the certificate using the following command.

          ```
          oc create secret generic keycloak-certs --from-file=ca.crt=<file>
          ```

          An example of how the CA certificate can be added to the Keycloak provider is shown below:


          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            providers:
            - name: keycloak
              keycloak:
                realm: ocp
                credentialsSecret:
                  name: keycloak-group-sync
                  namespace: group-sync-operator
                caSecret:
                  kind: Secret
                  name: keycloak-certs
                  namespace: group-sync-operator
                  key: ca.crt
                url: https://keycloak-keycloak-operator.apps.openshift.com
          ```

          Alteratively, a _ConfigMap_ can be used instead instead of a _Secret_. This is useful when using the [Certificate injection using Operators](https://docs.openshift.com/container-platform/latest/networking/configuring-a-custom-pki.html#certificate-injection-using-operators_configuring-a-custom-pki) feature.

          The following command can be used to create a _ConfigMap_ containing the certificate:

          ```
          oc create configmap keycloak-certs --from-file=ca.crt=<file>
          ````

          An example of how the CA certificate can be added to the Keycloak provider is shown below:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            providers:
            - name: keycloak
              keycloak:
                realm: ocp
                credentialsSecret:
                  name: keycloak-group-sync
                  namespace: group-sync-operator
                caSecret:
                  kind: ConfigMap
                  name: keycloak-certs
                  namespace: group-sync-operator
                  key: ca.crt
                url: https://keycloak-keycloak-operator.apps.openshift.com
          ```

          ## Scheduled Execution

          A cron style expression can be specified for which a synchronization event will occur. The following specifies that a synchronization should occur nightly at 3AM

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            schedule: "0 3 * * *"
            providers:
            - ...
          ```

          If a schedule is not provided, synchronization will occur only when the object is reconciled by the platform.

          ## Metrics

          Prometheus compatible metrics are exposed by the Operator and can be integrated into OpenShift's default cluster monitoring. To enable OpenShift cluster monitoring, label the namespace the operator is deployed in with the label `openshift.io/cluster-monitoring="true"`.

          ```
          oc label namespace <namespace> openshift.io/cluster-monitoring="true"
          ```
        displayName: Group Sync Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - group
        - user
        - security
        - authorization
        links:
        - name: Group Sync Operator
          url: https://github.com/redhat-cop/group-sync-operator
        maintainers:
        - email: ablock@redhat.com
          name: Andrew Block
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/community-operator-pipeline-prod/group-sync-operator@sha256:fe6fda2de67fc4996d3f388e11faa0130fee19453111c829ba0aaa5be5410d01
        - quay.io/redhat-cop/group-sync-operator@sha256:43ef79efc2a77ee5edd4e3123f9dab156a30d3e00fd1fba9f89600b96f0f68d6
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:b8a174be91f3df75dff9656d4c72de28af51a731008e9e96db5eef3c7af58aac
        version: 0.0.36
      entries:
      - name: group-sync-operator.v0.0.36
        version: 0.0.36
      - name: group-sync-operator.v0.0.35
        version: 0.0.35
      - name: group-sync-operator.v0.0.34
        version: 0.0.34
      - name: group-sync-operator.v0.0.33
        version: 0.0.33
      - name: group-sync-operator.v0.0.32
        version: 0.0.32
      - name: group-sync-operator.v0.0.31
        version: 0.0.31
      - name: group-sync-operator.v0.0.30
        version: 0.0.30
      - name: group-sync-operator.v0.0.29
        version: 0.0.29
      - name: group-sync-operator.v0.0.28
        version: 0.0.28
      - name: group-sync-operator.v0.0.27
        version: 0.0.27
      - name: group-sync-operator.v0.0.26
        version: 0.0.26
      - name: group-sync-operator.v0.0.25
        version: 0.0.25
      - name: group-sync-operator.v0.0.24
        version: 0.0.24
      - name: group-sync-operator.v0.0.23
        version: 0.0.23
      - name: group-sync-operator.v0.0.22
        version: 0.0.22
      - name: group-sync-operator.v0.0.21
        version: 0.0.21
      - name: group-sync-operator.v0.0.20
        version: 0.0.20
      - name: group-sync-operator.v0.0.19
        version: 0.0.19
      - name: group-sync-operator.v0.0.18
        version: 0.0.18
      - name: group-sync-operator.v0.0.17
        version: 0.0.17
      - name: group-sync-operator.v0.0.16
        version: 0.0.16
      - name: group-sync-operator.v0.0.15
        version: 0.0.15
      - name: group-sync-operator.v0.0.14
        version: 0.0.14
      - name: group-sync-operator.v0.0.13
        version: 0.0.13
      name: alpha
    defaultChannel: alpha
    packageName: group-sync-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: geunwookim
      provider-url: ""
    name: ncn-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ncn-operator.v0.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cxl.antline.com/v1",
                "kind": "CXL",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cxl-operator",
                    "app.kubernetes.io/instance": "cxl-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cxl",
                    "app.kubernetes.io/part-of": "cxl-operator"
                  },
                  "name": "cxl-1"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          createdAt: "2024-06-19T01:21:08Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CXL is the Schema for the cxls API
            displayName: CXL
            kind: CXL
            name: cxls.cxl.antline.com
            version: v1
        description: This operator is for ncn extend
        displayName: ncn-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ncn
        - memory
        - extend
        links:
        - name: NCN Operator
          url: https://ncn-operator.domain
        maintainers:
        - email: jwahn@antlinesoft.com
          name: Antline-Soft
        maturity: alpha
        provider:
          name: Antline
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        - quay.io/community-operator-pipeline-prod/ncn-operator@sha256:61685ecb519d17160149a5dc16ae28d6fd96264652a6f19fef861addfa4ec6f4
        - quay.io/rasen708/ncn-operator:v0.2.2
        version: 0.2.2
      entries:
      - name: ncn-operator.v0.2.2
        version: 0.2.2
      - name: ncn-operator.v0.2.1
        version: 0.2.1
      - name: ncn-operator.v0.2.0
        version: 0.2.0
      name: beta
    - currentCSV: ncn-operator.v0.9.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cmmd.gw.com/v1",
                "kind": "CMMD",
                "metadata": {
                  "name": "my-app",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "allocateMode": "auto",
                  "enable": true,
                  "payload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "metadata": {
                      "name": "my-app"
                    },
                    "spec": {
                      "replicas": 1,
                      "selector": {
                        "matchLabels": {
                          "name": "my-app"
                        }
                      },
                      "template": {
                        "metadata": {
                          "labels": {
                            "name": "my-app"
                          }
                        },
                        "spec": {
                          "containers": [
                            {
                              "image": "quay.io/my-account/my-app:latest",
                              "name": "my-app-01"
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "cmmd.gw.com/v1",
                "kind": "Label",
                "metadata": {
                  "labels": {
                    "machineconfiguration.openshift.io/role": "cmmd"
                  },
                  "name": "cmmd-node-label",
                  "namespace": "socmmd"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          console.openshift.io/plugins: '["socmmd-console-plugin"]'
          containerImage: quay.io/rasen708/ncn-operator@sha256:a09963745bd9c1419532d42d91237b7496c7a78e6a1c460a8e714ea1a0ce4d45
          createdAt: "2024-08-01T05:45:38Z"
          description: Provides the ncn extend
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "cmmd.gw.com/v1",
              "kind": "Label",
              "metadata": {
                "name": "cmmd-node-label",
                "namespace": "socmmd",
                "labels": {}
              },
              "spec": {}
            }
          operatorframework.io/suggested-namespace: socmmd-system
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/geunwookim/ncn-operator
          support: geunwookim
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CMMD is the Schema for the cmmds API
            displayName: CMMD
            kind: CMMD
            name: cmmds.cmmd.gw.com
            version: v1
          - description: Label is the Schema for the labels API
            displayName: Node Label
            kind: Label
            name: labels.cmmd.gw.com
            version: v1
        description: This operator is for ncn extend
        displayName: ncn-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ncn
        - memory
        - extend
        links:
        - name: NCN Operator
          url: https://ncn-operator.domain
        maintainers:
        - email: geunwookim@gmail.com
          name: geunwookim
        maturity: betav1
        provider:
          name: geunwookim
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        - quay.io/community-operator-pipeline-prod/ncn-operator@sha256:a99a5ca46c5bd3065905588f4d0e3cdc6409d435abdc02793be88e77c1a8f0f5
        - quay.io/rasen708/ncn-operator@sha256:a09963745bd9c1419532d42d91237b7496c7a78e6a1c460a8e714ea1a0ce4d45
        version: 0.9.8
      entries:
      - name: ncn-operator.v0.9.8
        version: 0.9.8
      - name: ncn-operator.v0.9.2
        version: 0.9.2
      - name: ncn-operator.v0.8.1
        version: 0.8.1
      - name: ncn-operator.v0.5.6
        version: 0.5.6
      - name: ncn-operator.v0.4.3
        version: 0.4.3
      - name: ncn-operator.v0.4.2
        version: 0.4.2
      name: betav1
    defaultChannel: betav1
    packageName: ncn-operator
    provider:
      name: geunwookim
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: must-gather-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: must-gather-operator.v1.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "MustGather",
                "metadata": {
                  "name": "example-mustgather"
                },
                "spec": {
                  "caseID": "02527285",
                  "caseManagementAccountSecretRef": {
                    "name": "case-management-creds"
                  },
                  "serviceAccountRef": {
                    "name": "must-gather-admin"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security, Monitoring
          certified: "false"
          containerImage: quay.io/redhat-cop/must-gather-operator@sha256:aebef122cdb8409f5a5d70d3cdc585e02272704d57e103553a84bc6fc238e646
          createdAt: "2021-12-02T17:13:53Z"
          description: This operator provides a facility to easily upload must-gather
            reports to a Red Hat case.
          operatorframework.io/suggested-namespace: global-load-balancer-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/must-gather-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: MustGather
            name: mustgathers.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The must gather operator helps collecting must gather information on a cluster and uploading it to a case.
          To use the operator a cluster administrator can create the following must gather CR:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: MustGather
          metadata:
            name: example-mustgather
          spec:
            caseID: '02527285'
            caseManagementAccountSecretRef:
              name: case-management-creds
          ```

          this request will collect the standard must gather info and upload it to case `#02527285` using the credentials found in the `caseManagementCreds` secret.

          A more complex example:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: MustGather
          metadata:
            name: full-mustgather
          spec:
            caseID: '02527285'
            caseManagementAccountSecretRef:
              name: case-management-creds
            serviceAccountRef:
              name: must-gather-admin
            mustGatherImages:
            - quay.io/kubevirt/must-gather:latest
            - quay.io/ocs-dev/ocs-must-gather
          ```

          in this example we are using a specific service account (which must have cluster admin permissions as per must-gather requirements) and we are specifying a couple of additional must gather images to be run for the `kubevirt` and `ocs` subsystem. If not specified serviceAccountRef.Name will default to `default`. Also the standard must gather image: `quay.io/openshift/origin-must-gather:latest` is always added by default.
        displayName: Must Gather Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - case_management
        - support
        - must_gather
        links:
        - name: Must Gather Operator
          url: https://github.com/redhat-cop/must-gather-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/must-gather-operator
        maintainers:
        - email: rspazzol@redhat.com'
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/must-gather-operator@sha256:a71e5e25aaa92f03334776fee87316809bf2a46dfb34c497d63b228a194982f2
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/must-gather-operator@sha256:aebef122cdb8409f5a5d70d3cdc585e02272704d57e103553a84bc6fc238e646
        version: 1.1.2
      entries:
      - name: must-gather-operator.v1.1.2
        version: 1.1.2
      - name: must-gather-operator.v1.1.1
        version: 1.1.1
      - name: must-gather-operator.v1.1.0
        version: 1.1.0
      - name: must-gather-operator.v1.0.6
        version: 1.0.6
      - name: must-gather-operator.v1.0.5
        version: 1.0.5
      - name: must-gather-operator.v1.0.4
        version: 1.0.4
      - name: must-gather-operator.v1.0.3
        version: 1.0.3
      - name: must-gather-operator.v1.0.2
        version: 1.0.2
      - name: must-gather-operator.v1.0.1
        version: 1.0.1
      - name: must-gather-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: must-gather-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: t8c-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: t8c-operator.v42.96.0-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"externalDbIP":
            "10.0.2.15","customImageNames": false,"repository": "icr.io/cpopen/turbonomic","tag":"8.18.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-operator@sha256:40791802e2355d7e977c7c039bd6ef1284048fdd2d5122fa72807506adba5d5d
          createdAt: "2023-03-24T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=42.53.0-beta.1 <42.96.0-beta.1'
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints. Turbonomic platform install and configuration
              documentation can be found online here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How do I start?

          Turbonomic platform installation and configuration documentation can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
          Carefully read through the prerequisites before beginning the installation.  Once ready, on the `Details` tab for the Turbonomic Platform Operator, under `Provided APIs`, click `Create instance`.
          For samples of common configurations, refer to sample custom resource YAMLs provided here: https://github.com/turbonomic/t8c-install/tree/master/samples
          Looking to upgrade your current deployment? Refer to documentation here: https://www.ibm.com/docs/en/tarm/latest?topic=version-updating-using-red-hat-openshift-operatorhub

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator-bundle@sha256:839f4ba577ed264f57bff73a7360c8e1ee4eb4c4644f6b7e283c53061cc804e7
        - icr.io/cpopen/t8c-operator@sha256:40791802e2355d7e977c7c039bd6ef1284048fdd2d5122fa72807506adba5d5d
        version: 42.96.0-beta.1
      entries:
      - name: t8c-operator.v42.96.0-beta.1
        version: 42.96.0-beta.1
      name: beta
    - currentCSV: t8c-operator.v42.96.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"externalDbIP":
            "10.0.2.15","customImageNames": false,"repository": "icr.io/cpopen/turbonomic","tag":"8.18.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-operator@sha256:c2d188dde455165c2e9da8c6a8f413dea682021cba62dd990af832d23b03d5ab
          createdAt: "2023-03-24T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=42.53.0 <42.96.0'
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints. Turbonomic platform install and configuration
              documentation can be found online here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How do I start?

          Turbonomic platform installation and configuration documentation can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
          Carefully read through the prerequisites before beginning the installation.  Once ready, on the `Details` tab for the Turbonomic Platform Operator, under `Provided APIs`, click `Create instance`.
          For samples of common configurations, refer to sample custom resource YAMLs provided here: https://github.com/turbonomic/t8c-install/tree/master/samples
          Looking to upgrade your current deployment? Refer to documentation here: https://www.ibm.com/docs/en/tarm/latest?topic=version-updating-using-red-hat-openshift-operatorhub

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/t8c-operator@sha256:c2d188dde455165c2e9da8c6a8f413dea682021cba62dd990af832d23b03d5ab
        - registry.connect.redhat.com/turbonomic/t8c-operator-bundle@sha256:b8c8b56082cf7460e5ec879f8099b1732cc56ac1f3b5321b5c90cccad3db11e2
        version: 42.96.0
      entries:
      - name: t8c-operator.v42.96.0
        version: 42.96.0
      name: stable
    defaultChannel: stable
    packageName: t8c-certified
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operator-kogitocloud: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: kogito-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kogito-operator.v1.44.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "process-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogito-infinispan-infra"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "infinispan.org/v1",
                    "kind": "Infinispan"
                  }
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/kiegroup/kogito-operator:1.44.1
          createdAt: "2019-08-22T13:12:22Z"
          description: Kogito Operator for deployment and management of Kogito services.
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/kogito-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.app.kiegroup.org
            version: v1beta1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.app.kiegroup.org
            version: v1beta1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.app.kiegroup.org
            version: v1beta1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.app.kiegroup.org
            version: v1beta1
        description: |-
          Kogito Operator is designed to deploy Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Creates two kinds of build configuration: Native or JVM. For more information refer to [Native build and deployment](https://docs.jboss.org/kogito/release/latest/html_single/#_native_build_and_deployment) section on our docs
          * Builds a Kogito service from a remote git repository and creates a custom image for the given runtime: Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Installs the [Kogito Data Index Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-data-index-service_kogito-deploying-on-openshift) to enable data index feature for Kogito services.
          * Installs the [Kogito Jobs Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-jobs-service_kogito-deploying-on-openshift) to enable jobs scheduling.

          For Kubernetes deployment of Kogito services, please refer to the section [Deploying Kogito services on Kubernetes](https://docs.jboss.org/kogito/release/latest/html_single/#proc-kogito-deploying-on-kubernetes_kogito-deploying-on-openshift) on our docs.

          **IMPORTANT!** Kogito Operator might need Infinispan Operator and Strimzi to implement persistence and messaging use cases if you do not provide these services beforehand.
          If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the Kogito Operator.
        displayName: Kogito
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://kogito.kie.org/
        - name: Documentation
          url: https://github.com/kiegroup/kogito-operator/blob/main/README.md
        - name: Source
          url: https://github.com/kiegroup/kogito-operator/
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.12.0
        - quay.io/kiegroup/kogito-operator:1.44.1
        - quay.io/openshift-community-operators/kogito-operator@sha256:28cd33562ab56c44d65486984cac7edfbdd1336ced1277f1af7df6c2a8073e3e
        version: 1.44.1
      entries:
      - name: kogito-operator.v1.44.1
        version: 1.44.1
      - name: kogito-operator.v1.43.0
        version: 1.43.0
      - name: kogito-operator.v1.42.0
        version: 1.42.0
      - name: kogito-operator.v1.41.0
        version: 1.41.0
      - name: kogito-operator.v1.40.0
        version: 1.40.0
      - name: kogito-operator.v1.39.0
        version: 1.39.0
      - name: kogito-operator.v1.38.0
        version: 1.38.0
      - name: kogito-operator.v1.37.0
        version: 1.37.0
      - name: kogito-operator.v1.36.0
        version: 1.36.0
      - name: kogito-operator.v1.35.0
        version: 1.35.0
      - name: kogito-operator.v1.34.0
        version: 1.34.0
      - name: kogito-operator.v1.33.0
        version: 1.33.0
      - name: kogito-operator.v1.32.0
        version: 1.32.0
      - name: kogito-operator.v1.31.0
        version: 1.31.0
      - name: kogito-operator.v1.30.0
        version: 1.30.0
      - name: kogito-operator.v1.29.0
        version: 1.29.0
      - name: kogito-operator.v1.28.0
        version: 1.28.0
      - name: kogito-operator.v1.27.0
        version: 1.27.0
      - name: kogito-operator.v1.26.0
        version: 1.26.0
      - name: kogito-operator.v1.25.0
        version: 1.25.0
      - name: kogito-operator.v1.24.0
        version: 1.24.0
      - name: kogito-operator.v1.23.0
        version: 1.23.0
      - name: kogito-operator.v1.22.1
        version: 1.22.1
      - name: kogito-operator.v1.22.0
        version: 1.22.0
      - name: kogito-operator.v1.21.0
        version: 1.21.0
      - name: kogito-operator.v1.20.0
        version: 1.20.0
      - name: kogito-operator.v1.19.0
        version: 1.19.0
      - name: kogito-operator.v1.18.0
        version: 1.18.0
      - name: kogito-operator.v1.17.0
        version: 1.17.0
      - name: kogito-operator.v1.16.1
        version: 1.16.1
      - name: kogito-operator.v1.16.0
        version: 1.16.0
      - name: kogito-operator.v1.15.0
        version: 1.15.0
      - name: kogito-operator.v1.14.0
        version: 1.14.0
      - name: kogito-operator.v1.13.0
        version: 1.13.0
      - name: kogito-operator.v1.12.0
        version: 1.12.0
      - name: kogito-operator.v1.11.1
        version: 1.11.1
      - name: kogito-operator.v1.11.0
        version: 1.11.0
      - name: kogito-operator.v1.10.0
        version: 1.10.0
      - name: kogito-operator.v1.9.1
        version: 1.9.1
      - name: kogito-operator.v1.9.0
        version: 1.9.0
      - name: kogito-operator.v1.8.0
        version: 1.8.0
      - name: kogito-operator.v1.7.0
        version: 1.7.0
      - name: kogito-operator.v1.6.0
        version: 1.6.0
      - name: kogito-operator.v1.5.0
        version: 1.5.0
      - name: kogito-operator.v1.4.0
        version: 1.4.0
      name: 1.x
    - currentCSV: kogito-operator.v1.44.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "process-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogito-infinispan-infra"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "infinispan.org/v1",
                    "kind": "Infinispan"
                  }
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/kiegroup/kogito-operator:1.44.1
          createdAt: "2019-08-22T13:12:22Z"
          description: Kogito Operator for deployment and management of Kogito services.
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/kogito-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.app.kiegroup.org
            version: v1beta1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.app.kiegroup.org
            version: v1beta1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.app.kiegroup.org
            version: v1beta1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.app.kiegroup.org
            version: v1beta1
        description: |-
          Kogito Operator is designed to deploy Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Creates two kinds of build configuration: Native or JVM. For more information refer to [Native build and deployment](https://docs.jboss.org/kogito/release/latest/html_single/#_native_build_and_deployment) section on our docs
          * Builds a Kogito service from a remote git repository and creates a custom image for the given runtime: Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Installs the [Kogito Data Index Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-data-index-service_kogito-deploying-on-openshift) to enable data index feature for Kogito services.
          * Installs the [Kogito Jobs Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-jobs-service_kogito-deploying-on-openshift) to enable jobs scheduling.

          For Kubernetes deployment of Kogito services, please refer to the section [Deploying Kogito services on Kubernetes](https://docs.jboss.org/kogito/release/latest/html_single/#proc-kogito-deploying-on-kubernetes_kogito-deploying-on-openshift) on our docs.

          **IMPORTANT!** Kogito Operator might need Infinispan Operator and Strimzi to implement persistence and messaging use cases if you do not provide these services beforehand.
          If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the Kogito Operator.
        displayName: Kogito
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://kogito.kie.org/
        - name: Documentation
          url: https://github.com/kiegroup/kogito-operator/blob/main/README.md
        - name: Source
          url: https://github.com/kiegroup/kogito-operator/
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.12.0
        - quay.io/kiegroup/kogito-operator:1.44.1
        - quay.io/openshift-community-operators/kogito-operator@sha256:28cd33562ab56c44d65486984cac7edfbdd1336ced1277f1af7df6c2a8073e3e
        version: 1.44.1
      entries:
      - name: kogito-operator.v1.44.1
        version: 1.44.1
      - name: kogito-operator.v1.43.0
        version: 1.43.0
      - name: kogito-operator.v1.42.0
        version: 1.42.0
      - name: kogito-operator.v1.41.0
        version: 1.41.0
      - name: kogito-operator.v1.40.0
        version: 1.40.0
      - name: kogito-operator.v1.39.0
        version: 1.39.0
      - name: kogito-operator.v1.38.0
        version: 1.38.0
      - name: kogito-operator.v1.37.0
        version: 1.37.0
      - name: kogito-operator.v1.36.0
        version: 1.36.0
      - name: kogito-operator.v1.35.0
        version: 1.35.0
      - name: kogito-operator.v1.34.0
        version: 1.34.0
      - name: kogito-operator.v1.33.0
        version: 1.33.0
      - name: kogito-operator.v1.32.0
        version: 1.32.0
      - name: kogito-operator.v1.31.0
        version: 1.31.0
      - name: kogito-operator.v1.30.0
        version: 1.30.0
      - name: kogito-operator.v1.29.0
        version: 1.29.0
      - name: kogito-operator.v1.28.0
        version: 1.28.0
      - name: kogito-operator.v1.27.0
        version: 1.27.0
      - name: kogito-operator.v1.26.0
        version: 1.26.0
      - name: kogito-operator.v1.25.0
        version: 1.25.0
      - name: kogito-operator.v1.24.0
        version: 1.24.0
      - name: kogito-operator.v1.23.0
        version: 1.23.0
      - name: kogito-operator.v1.22.1
        version: 1.22.1
      - name: kogito-operator.v1.22.0
        version: 1.22.0
      - name: kogito-operator.v1.21.0
        version: 1.21.0
      - name: kogito-operator.v1.20.0
        version: 1.20.0
      - name: kogito-operator.v1.19.0
        version: 1.19.0
      - name: kogito-operator.v1.18.0
        version: 1.18.0
      - name: kogito-operator.v1.17.0
        version: 1.17.0
      - name: kogito-operator.v1.16.1
        version: 1.16.1
      - name: kogito-operator.v1.16.0
        version: 1.16.0
      - name: kogito-operator.v1.15.0
        version: 1.15.0
      - name: kogito-operator.v1.14.0
        version: 1.14.0
      - name: kogito-operator.v1.13.0
        version: 1.13.0
      - name: kogito-operator.v1.12.0
        version: 1.12.0
      - name: kogito-operator.v1.11.1
        version: 1.11.1
      - name: kogito-operator.v1.11.0
        version: 1.11.0
      - name: kogito-operator.v1.10.0
        version: 1.10.0
      - name: kogito-operator.v1.9.1
        version: 1.9.1
      - name: kogito-operator.v1.9.0
        version: 1.9.0
      - name: kogito-operator.v1.8.0
        version: 1.8.0
      - name: kogito-operator.v1.7.0
        version: 1.7.0
      - name: kogito-operator.v1.6.0
        version: 1.6.0
      - name: kogito-operator.v1.5.0
        version: 1.5.0
      - name: kogito-operator.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: 1.x
    packageName: kogito-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: model-validation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: model-validation-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ml.sigstore.dev/v1alpha1",
                "kind": "ModelValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "model-validation-operator"
                  },
                  "name": "modelvalidation-sample",
                  "namespace": "model-validation-operator-system"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          containerImage: placeholder
          createdAt: "2025-11-17T11:44:47Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.1-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/model-validation-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ModelValidation is the Schema for the modelvalidations API.
            displayName: Model Validation
            kind: ModelValidation
            name: modelvalidations.ml.sigstore.dev
            version: v1alpha1
        description: Model Validation Operator
        displayName: Model Validation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - model signing
        - signing
        - ai
        links:
        - name: Model Validation Operator
          url: https://github.com/sigstore/model-validation-operator
        maintainers:
        - email: nolear@redhat.com
          name: Nina Bongartz
        - email: ryordan@redhat.com
          name: Rachel Yordan
        - email: ifont@redhat.com
          name: Ivan Font
        - email: asiek@redhat.com
          name: Aleksy Siek
        - email: kconner@redhat.com
          name: Kevin Conner
        maturity: tech-preview
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhtas/model-validation-operator-bundle@sha256:a48214bb858cb4f05c580e0d1e0bd2f246fc8185420d0f6a2a3e39eecabc947f
        - registry.redhat.io/rhtas/model-validation-rhel9-operator@sha256:281c79ee9b27e95a723f478889ea1d7297b152a47e32c58a599b5ea6f046d787
        version: 0.0.2
      entries:
      - name: model-validation-operator.v0.0.2
        version: 0.0.2
      - name: model-validation-operator.v0.0.1
        version: 0.0.1
      name: tech-preview
    defaultChannel: tech-preview
    packageName: model-validation-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: JWS team
      provider-url: ""
    name: jws-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jws-operator.v2.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "web.servers.org/v1alpha1",
                "kind": "WebServer",
                "metadata": {
                  "name": "webserver-example"
                },
                "spec": {
                  "applicationName": "webapp",
                  "replicas": 1,
                  "useInsightsClient": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/jboss-webserver-5/jws5-rhel8-operator@sha256:ba8fb47eba0a1c2aca35ff051f576c7ef3204052965794db7ee234358d029263
          createdAt: "2025-11-19T22:24:40.914776Z"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat JBoss Web Server",
            "Red Hat Runtimes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/web-servers/jws-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Web Server is the schema for the webservers API
            displayName: Web Server
            kind: WebServer
            name: webservers.web.servers.org
            version: v1alpha1
        description: WebServer operator can manage JBoss Web Server images.
        displayName: WebServer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - WebServer
        - JBoss
        links:
        - name: Jws Operator
          url: https://jws-operator.domain
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: JWS team
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        - registry.redhat.io/insights-runtimes-tech-preview/runtimes-inventory-rhel8-operator@sha256:58e01d11c3d30abc5b0ee3795511bd04e39aea21e2853b4f4cc6d1c8a2bd7bb0
        - registry.redhat.io/jboss-webserver-5/jws5-operator-bundle@sha256:bbd477f0b3ea615bb0342a11656be719c61e1f9bccb3235e071d8590944334dd
        - registry.redhat.io/jboss-webserver-5/jws5-rhel8-operator@sha256:ba8fb47eba0a1c2aca35ff051f576c7ef3204052965794db7ee234358d029263
        version: 2.2.1
      entries:
      - name: jws-operator.v2.2.1
        version: 2.2.1
      - name: jws-operator.v2.2.0
        version: 2.2.0
      - name: jws-operator.v2.1.3
        version: 2.1.3
      - name: jws-operator.v2.1.2
        version: 2.1.2
      - name: jws-operator.v2.1.1
        version: 2.1.1
      - name: jws-operator.v2.1.0
        version: 2.1.0
      - name: jws-operator.v2.0.16
        version: 2.0.16
      - name: jws-operator.v2.0.15
        version: 2.0.15
      - name: jws-operator.v2.0.14
        version: 2.0.14
      - name: jws-operator.v2.0.13
        version: 2.0.13
      - name: jws-operator.v2.0.12
        version: 2.0.12
      - name: jws-operator.v2.0.11
        version: 2.0.11
      - name: jws-operator.v2.0.10
        version: 2.0.10
      - name: jws-operator.v2.0.9
        version: 2.0.9
      - name: jws-operator.v2.0.8
        version: 2.0.8
      - name: jws-operator.v2.0.7
        version: 2.0.7
      - name: jws-operator.v2.0.6
        version: 2.0.6
      - name: jws-operator.v2.0.5
        version: 2.0.5
      - name: jws-operator.v2.0.4
        version: 2.0.4
      - name: jws-operator.v2.0.3
        version: 2.0.3
      - name: jws-operator.v2.0.2
        version: 2.0.2
      - name: jws-operator.v2.0.1
        version: 2.0.1
      name: alpha
    defaultChannel: alpha
    packageName: jws-operator
    provider:
      name: JWS team
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Storage
      provider-url: https://github.com/red-hat-storage
    name: odf-external-snapshotter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-external-snapshotter-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:45:38Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: VolumeGroupSnapshotClass
            name: volumegroupsnapshotclasses.groupsnapshot.storage.openshift.io
            version: v1beta1
          - kind: VolumeGroupSnapshotContent
            name: volumegroupsnapshotcontents.groupsnapshot.storage.openshift.io
            version: v1beta1
          - kind: VolumeGroupSnapshot
            name: volumegroupsnapshots.groupsnapshot.storage.openshift.io
            version: v1beta1
        description: Snapshot Controller provides the snapshot controller for managing
          volume group snapshots
        displayName: Snapshot Controller
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - odf-external-snapshotter-operator
        links:
        - name: Snapshot Controller
          url: https://github.com/red-hat-storage/external-snapshotter
        maturity: GA
        provider:
          name: Red Hat Storage
          url: https://github.com/red-hat-storage
        relatedImages:
        - registry.redhat.io/odf4/odf-external-snapshotter-operator-bundle@sha256:6d325fd5eedfac439e75c6d2cfbcf419b3aa1ba8930cc11f49d654b5b06efb4d
        - registry.redhat.io/odf4/odf-external-snapshotter-rhel9-operator@sha256:0303afb90081cbc5a586a0fa9e30b897096b176d435053d9bf45a3c0f37671a9
        version: 4.20.4-rhodf
      entries:
      - name: odf-external-snapshotter-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-external-snapshotter-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-external-snapshotter-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-external-snapshotter-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-external-snapshotter-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-external-snapshotter-operator
    provider:
      name: Red Hat Storage
      url: https://github.com/red-hat-storage
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      operatorframework.io/os.zos: supported
      provider: Red Hat
      provider-url: ""
    name: red-hat-hawtio-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: red-hat-hawtio-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace",
                  "version": 1.12
                }
              },
              {
                "apiVersion": "hawt.io/v2",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24,
                    "internalSSL": true
                  },
                  "healthChecks": {
                    "gatewayLivenessPeriod": 120,
                    "gatewayReadinessPeriod": 30,
                    "onlineLivenessPeriod": 5,
                    "onlineReadinessPeriod": 10
                  },
                  "logging": {
                    "gatewayLogLevel": "info",
                    "maskIPAddresses": "false",
                    "onlineLogLevel": "info"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
          createdAt: "2025-11-24T18:05:50Z"
          description: HawtIO eases the discovery and management of Java applications
            deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HawtIO eases the discovery and management of hawtio-enabled
              applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v2
        description: |
          Red Hat build of HawtIO
          ==============

          HawtIO eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between HawtIO and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#agents-jvm).
        displayName: HawtIO Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: HawtIO Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The HawtIO team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:73867beab7034186a5f41c4799584a3c3f70e1825d7a034a0b2e9c262846e551
        - registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
        version: 1.3.0
      entries:
      - name: red-hat-hawtio-operator.v1.3.0
        version: 1.3.0
      - name: red-hat-hawtio-operator.v1.2.1
        version: 1.2.1
      - name: red-hat-hawtio-operator.v1.2.0
        version: 1.2.0
      - name: red-hat-hawtio-operator.v1.2.0-0.1754874242.p
        version: 1.2.0+0.1754874242.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754338551.p
        version: 1.2.0+0.1754338551.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754317392.p
        version: 1.2.0+0.1754317392.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1753863723.p
        version: 1.2.0+0.1753863723.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752679472.p
        version: 1.2.0+0.1752679472.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752452299.p
        version: 1.2.0+0.1752452299.p
      - name: red-hat-hawtio-operator.v1.1.1
        version: 1.1.1
      - name: red-hat-hawtio-operator.v1.1.0
        version: 1.1.0
      - name: red-hat-hawtio-operator.v1.1.0-0.1742200932.p
        version: 1.1.0+0.1742200932.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1740358952.p
        version: 1.1.0+0.1740358952.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739994212.p
        version: 1.1.0+0.1739994212.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739992853.p
        version: 1.1.0+0.1739992853.p
      - name: red-hat-hawtio-operator.v1.0.3
        version: 1.0.3
      - name: red-hat-hawtio-operator.v1.0.2
        version: 1.0.2
      - name: red-hat-hawtio-operator.v1.0.1
        version: 1.0.1
      - name: red-hat-hawtio-operator.v1.0.0
        version: 1.0.0
      name: latest
    - currentCSV: red-hat-hawtio-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace",
                  "version": 1.12
                }
              },
              {
                "apiVersion": "hawt.io/v2",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24,
                    "internalSSL": true
                  },
                  "healthChecks": {
                    "gatewayLivenessPeriod": 120,
                    "gatewayReadinessPeriod": 30,
                    "onlineLivenessPeriod": 5,
                    "onlineReadinessPeriod": 10
                  },
                  "logging": {
                    "gatewayLogLevel": "info",
                    "maskIPAddresses": "false",
                    "onlineLogLevel": "info"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
          createdAt: "2025-11-24T18:05:50Z"
          description: HawtIO eases the discovery and management of Java applications
            deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HawtIO eases the discovery and management of hawtio-enabled
              applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v2
        description: |
          Red Hat build of HawtIO
          ==============

          HawtIO eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between HawtIO and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#agents-jvm).
        displayName: HawtIO Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: HawtIO Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The HawtIO team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:73867beab7034186a5f41c4799584a3c3f70e1825d7a034a0b2e9c262846e551
        - registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
        version: 1.3.0
      entries:
      - name: red-hat-hawtio-operator.v1.3.0
        version: 1.3.0
      - name: red-hat-hawtio-operator.v1.2.1
        version: 1.2.1
      - name: red-hat-hawtio-operator.v1.2.0
        version: 1.2.0
      - name: red-hat-hawtio-operator.v1.2.0-0.1754874242.p
        version: 1.2.0+0.1754874242.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754338551.p
        version: 1.2.0+0.1754338551.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754317392.p
        version: 1.2.0+0.1754317392.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1753863723.p
        version: 1.2.0+0.1753863723.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752679472.p
        version: 1.2.0+0.1752679472.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752452299.p
        version: 1.2.0+0.1752452299.p
      - name: red-hat-hawtio-operator.v1.1.1
        version: 1.1.1
      - name: red-hat-hawtio-operator.v1.1.0
        version: 1.1.0
      - name: red-hat-hawtio-operator.v1.1.0-0.1742200932.p
        version: 1.1.0+0.1742200932.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1740358952.p
        version: 1.1.0+0.1740358952.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739994212.p
        version: 1.1.0+0.1739994212.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739992853.p
        version: 1.1.0+0.1739992853.p
      - name: red-hat-hawtio-operator.v1.0.3
        version: 1.0.3
      - name: red-hat-hawtio-operator.v1.0.2
        version: 1.0.2
      - name: red-hat-hawtio-operator.v1.0.1
        version: 1.0.1
      - name: red-hat-hawtio-operator.v1.0.0
        version: 1.0.0
      name: stable-v1
    - currentCSV: red-hat-hawtio-operator.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace",
                  "version": 1.12
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/rhbac-4/hawtio-rhel8-operator@sha256:f04d81d24c757db7b678464382ad8c5182b1580e714123a9f4f5fc9fbd9b8c57
          createdAt: "2024-01-30T12:18:50Z"
          description: HawtIO eases the discovery and management of Java applications
            deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HawtIO eases the discovery and management of hawtio-enabled
              applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Red Hat build of HawtIO
          ==============

          HawtIO eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between HawtIO and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#agents-jvm).
        displayName: HawtIO Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: HawtIO Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The HawtIO team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:0ee0bd2449f183277af845e312257b4a1ced4de865831b15e1758a397d8d29eb
        - registry.redhat.io/rhbac-4/hawtio-rhel8-operator@sha256:f04d81d24c757db7b678464382ad8c5182b1580e714123a9f4f5fc9fbd9b8c57
        version: 1.0.3
      entries:
      - name: red-hat-hawtio-operator.v1.0.3
        version: 1.0.3
      - name: red-hat-hawtio-operator.v1.0.2
        version: 1.0.2
      - name: red-hat-hawtio-operator.v1.0.1
        version: 1.0.1
      - name: red-hat-hawtio-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    defaultChannel: stable-v1
    packageName: red-hat-hawtio-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CrowdStrike
      provider-url: https://crowdStrike.com
    name: falcon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: falcon-operator.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconContainer",
                "metadata": {
                  "name": "falcon-sidecar-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "sidecar"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconNodeSensor",
                "metadata": {
                  "name": "falcon-node-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "daemonset"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Security,Monitoring
          containerImage: quay.io/crowdstrike/falcon-operator:0.8.1
          createdAt: "2024-06-06T10:00:00Z"
          description: '[DEPRECATED] Use the CrowdStrike Falcon Operator from the
            certified channel instead'
          operatorframework.io/suggested-namespace: falcon-operator
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/CrowdStrike/falcon-operator
          support: Community Only
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FalconContainer is the Schema for the falconcontainers API
            displayName: Falcon Container
            kind: FalconContainer
            name: falconcontainers.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconNodeSensor is the Schema for the falconnodesensors
              API
            displayName: Falcon Node Sensor
            kind: FalconNodeSensor
            name: falconnodesensors.falcon.crowdstrike.com
            version: v1alpha1
        description: |-
          ## Deprecated
          This CrowdStrike community operator is deprecated, use the CrowdStrike Falcon Operator from the certified channel instead.

          ## About the CrowdStrike Falcon Operator
          The CrowdStrike Falcon Operator deploys CrowdStrike Falcon Workload Protection to the cluster. The operator exposes 2 custom resources that allows you to deploy either the Falcon Container Sensor or Falcon Node Sensor.

          ## About Custom Resources

          | Custom Resource                                       | Description                                                      |
          | :--------                                             | :------------                                                    |
          | [FalconContainer](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/container/README.md) | Manages installation of Falcon Container Sensor on the cluster   |
          | [FalconNodeSensor](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/node/README.md)     | Manages installation of Falcon Linux Sensor on the cluster nodes |

          ## Installation and Deployment

          For installation and deployment of the CrowdStrike Falcon Operator and its Custom Resources, please read the [Installation and Deployment Guide](./docs/install_guide.md) and choose the deployment method that is right for your target environment.

          ## Getting Help
          If you encounter any issues while using the Falcon Operator, you can create an issue on our [Github repo](https://github.com/CrowdStrike/falcon-operator) for bugs, enhancements, or other requests.

          ## Contributing
          You can contribute by:

          * Raising any issues you find using Falcon Operator
          * Fixing issues by opening [Pull Requests](https://github.com/CrowdStrike/falcon-operator/pulls)
          * Improving documentation
          * Talking about the CrowdStrike Falcon Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/CrowdStrike/falcon-operator/issues).

          ## Additional Resources
           - CrowdStrike Container Security: [Product Page](https://www.crowdstrike.com/products/cloud-security/falcon-cloud-workload-protection/container-security/)
           - So You Think Your Containers Are Secure? Four Steps to Ensure a Secure Container Deployment: [Blog Post](https://www.crowdstrike.com/blog/four-steps-to-ensure-a-secure-containter-deployment/)
           - Container Security With CrowdStrike: [Blog Post](https://www.crowdstrike.com/blog/tech-center/container-security/)
           - To learn more about Falcon Container Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/support/documentation/146/falcon-container-sensor-for-linux), [Release Notes](https://falcon.crowdstrike.com/support/news/release-notes-falcon-container-sensor-for-linux)
           - To learn more about Falcon Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/documentation/20/falcon-sensor-for-linux#kubernetes-support)
           - [Developer Documentation](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/developer_guide.md)
        displayName: '[DEPRECATED] CrowdStrike Operator'
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - runtime-protection
        links:
        - name: Falcon Operator
          url: https://github.com/CrowdStrike/falcon-operator
        maintainers:
        - email: integrations@crowdstrike.com
          name: CrowdStrike Solutions Architecture
        maturity: alpha
        minKubeVersion: 1.17.0
        provider:
          name: CrowdStrike
          url: https://crowdStrike.com
        relatedImages:
        - quay.io/crowdstrike/falcon-operator:0.8.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.12.0
        - quay.io/community-operator-pipeline-prod/falcon-operator@sha256:3916adf5083c83838564b1ed039decbadb2efa4ec288699ef0137a66983a3cc4
        version: 0.8.2
      entries:
      - name: falcon-operator.v0.8.2
        version: 0.8.2
      - name: falcon-operator.v0.8.1
        version: 0.8.1
      name: alpha
    defaultChannel: alpha
    packageName: falcon-operator
    provider:
      name: CrowdStrike
      url: https://crowdStrike.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CNCF
      provider-url: ""
    name: jaeger
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jaeger-operator.v1.65.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "jaegertracing.io/v1",
                "kind": "Jaeger",
                "metadata": {
                  "name": "my-jaeger"
                },
                "spec": {
                  "strategy": "allInOne"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing
          certified: "false"
          containerImage: quay.io/jaegertracing/jaeger-operator:1.65.0
          createdAt: "2025-01-22T20:40:19Z"
          description: Provides tracing, monitoring and troubleshooting for microservices-based
            distributed systems
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/jaegertracing/jaeger-operator
          support: Jaeger Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Jaeger is the Schema for the jaegers API
            displayName: Jaeger
            kind: Jaeger
            name: jaegers.jaegertracing.io
            version: v1
        description: |-
          Jaeger, inspired by [Dapper](https://research.google.com/pubs/pub36356.html) and [OpenZipkin](http://zipkin.io/), is a distributed tracing system released as open source by Uber Technologies. It is used for monitoring and troubleshooting microservices-based distributed systems.
          ### Core capabilities
          Jaeger is used for monitoring and troubleshooting microservices-based distributed systems, including:
          * Distributed context propagation
          * Distributed transaction monitoring
          * Root cause analysis
          * Service dependency analysis
          * Performance / latency optimization
          * OpenTracing compatible data model
          * Multiple storage backends: Badger, Cassandra, Elasticsearch, Memory.
          ### Operator features
          * **Multiple modes** - Supports `allInOne`, `production` and `streaming` [modes of deployment](https://www.jaegertracing.io/docs/latest/operator/#deployment-strategies).
          * **Configuration** - The Operator manages [configuration information](https://www.jaegertracing.io/docs/latest/operator/#configuring-the-custom-resource) when installing Jaeger instances.
          * **Storage** - [Configure storage](https://www.jaegertracing.io/docs/latest/operator/#storage-options) used by Jaeger. By default, `memory` is used. Other options include `badger`, `cassandra` or `elasticsearch`. On OpenShift, the operator can delegate creation of an Elasticsearch cluster to the Elasticsearch Operator if deployed.
          * **Agent** - can be deployed as [sidecar](https://www.jaegertracing.io/docs/latest/operator/#auto-injecting-jaeger-agent-sidecars) (default) and/or [daemonset](https://www.jaegertracing.io/docs/latest/operator/#installing-the-agent-as-daemonset).
          * **UI** - Optionally setup ingress (Kubernetes) or secure route (OpenShift) to provide [access to the Jaeger UI](https://www.jaegertracing.io/docs/latest/operator/#accessing-the-jaeger-console-ui).
          ### Before you start
          1. Ensure that the appropriate storage solution, that will be used by the Jaeger instance, is available and configured.
          2. If intending to deploy an Elasticsearch cluster via the Jaeger custom resource, then the Elasticsearch Operator must first be installed.
          ### Troubleshooting
          * https://www.jaegertracing.io/docs/latest/troubleshooting/
        displayName: Community Jaeger Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tracing
        - monitoring
        - troubleshooting
        links:
        - name: Jaeger Operator Source Code
          url: https://github.com/jaegertracing/jaeger-operator
        maintainers:
        - email: jaeger-tracing@googlegroups.com
          name: Jaeger Google Group
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: CNCF
        relatedImages:
        - quay.io/community-operator-pipeline-prod/jaeger@sha256:907dfe1d01f73c8a385da3661ddbe03db31e0b9ad6f5ab2336460402d0d915a0
        - quay.io/jaegertracing/jaeger-operator:1.65.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 1.65.0
      entries:
      - name: jaeger-operator.v1.65.0
        version: 1.65.0
      - name: jaeger-operator.v1.62.0
        version: 1.62.0
      - name: jaeger-operator.v1.61.0
        version: 1.61.0
      - name: jaeger-operator.v1.60.0
        version: 1.60.0
      - name: jaeger-operator.v1.59.0
        version: 1.59.0
      - name: jaeger-operator.v1.57.0
        version: 1.57.0
      - name: jaeger-operator.v1.56.0
        version: 1.56.0
      - name: jaeger-operator.v1.55.0
        version: 1.55.0
      - name: jaeger-operator.v1.53.0
        version: 1.53.0
      - name: jaeger-operator.v1.52.0
        version: 1.52.0
      - name: jaeger-operator.v1.51.0
        version: 1.51.0
      - name: jaeger-operator.v1.49.0
        version: 1.49.0
      - name: jaeger-operator.v1.48.1
        version: 1.48.1
      - name: jaeger-operator.v1.47.0
        version: 1.47.0
      - name: jaeger-operator.v1.46.0
        version: 1.46.0
      - name: jaeger-operator.v1.45.0
        version: 1.45.0
      - name: jaeger-operator.v1.44.0
        version: 1.44.0
      - name: jaeger-operator.v1.43.0
        version: 1.43.0
      - name: jaeger-operator.v1.42.0
        version: 1.42.0
      - name: jaeger-operator.v1.41.1
        version: 1.41.1
      - name: jaeger-operator.v1.41.0
        version: 1.41.0
      - name: jaeger-operator.v1.40.0
        version: 1.40.0
      - name: jaeger-operator.v1.39.0
        version: 1.39.0
      - name: jaeger-operator.v1.38.1
        version: 1.38.1
      - name: jaeger-operator.v1.38.0
        version: 1.38.0
      - name: jaeger-operator.v1.37.0
        version: 1.37.0
      - name: jaeger-operator.v1.36.0
        version: 1.36.0
      - name: jaeger-operator.v1.35.0
        version: 1.35.0
      - name: jaeger-operator.v1.34.1
        version: 1.34.1
      - name: jaeger-operator.v1.34.0
        version: 1.34.0
      - name: jaeger-operator.v1.33.0
        version: 1.33.0
      - name: jaeger-operator.v1.32.0
        version: 1.32.0
      - name: jaeger-operator.v1.31.0
        version: 1.31.0
      - name: jaeger-operator.v1.30.0
        version: 1.30.0
      - name: jaeger-operator.v1.29.1
        version: 1.29.1
      - name: jaeger-operator.v1.25.0
        version: 1.25.0
      - name: jaeger-operator.v1.24.0
        version: 1.24.0
      name: stable
    defaultChannel: stable
    packageName: jaeger
    provider:
      name: CNCF
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: StreamNative
      provider-url: https://streamnative.io
    name: function-mesh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: function-mesh.v0.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "Function",
                "metadata": {
                  "name": "java-function-sample",
                  "namespace": "default"
                },
                "spec": {
                  "autoAck": true,
                  "className": "org.apache.pulsar.functions.api.examples.ExclamationFunction",
                  "clusterName": "test-pulsar",
                  "forwardSourceMessageProperty": true,
                  "input": {
                    "topics": [
                      "persistent://public/default/java-function-input-topic"
                    ],
                    "typeClassName": "java.lang.String"
                  },
                  "java": {
                    "extraDependenciesDir": "random-dir/",
                    "jar": "pulsar-functions-api-examples.jar",
                    "jarLocation": "public/default/nlu-test-java-function"
                  },
                  "logTopic": "persistent://public/default/logging-function-logs",
                  "maxPendingAsyncRequests": 1000,
                  "maxReplicas": 5,
                  "output": {
                    "topic": "persistent://public/default/java-function-output-topic",
                    "typeClassName": "java.lang.String"
                  },
                  "pod": {
                    "annotations": {
                      "managed-function": "true"
                    },
                    "env": [
                      {
                        "name": "EXAMPLE_VARIABLE",
                        "value": "exampleValue"
                      }
                    ],
                    "imagePullSecrets": [
                      {
                        "name": "regcred"
                      }
                    ],
                    "initContainers": [
                      {
                        "command": [
                          "sh",
                          "-c",
                          "echo The app is running! \u0026\u0026 sleep 30"
                        ],
                        "image": "busybox:1.28",
                        "name": "init-function"
                      }
                    ],
                    "labels": {
                      "locaction": "mtv"
                    },
                    "sidecars": [
                      {
                        "command": [
                          "sh",
                          "-c",
                          "echo The app is running! \u0026\u0026 sleep 30000"
                        ],
                        "image": "busybox:1.28",
                        "name": "sidecar-function"
                      }
                    ],
                    "volumes": [
                      {
                        "emptyDir": {},
                        "name": "cache-volume"
                      }
                    ]
                  },
                  "pulsar": {
                    "authSecret": "test-auth",
                    "pulsarConfig": "test-pulsar",
                    "tlsSecret": "test-tls"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "0.2",
                      "memory": "1.1G"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "1G"
                    }
                  },
                  "secretsMap": {
                    "name": {
                      "key": "username",
                      "path": "test-secret"
                    },
                    "pwd": {
                      "key": "password",
                      "path": "test-secret"
                    }
                  },
                  "volumeMounts": [
                    {
                      "mountPath": "/cache",
                      "name": "cache-volume"
                    }
                  ]
                }
              },
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "FunctionMesh",
                "metadata": {
                  "name": "functionmesh-sample"
                },
                "spec": {
                  "functions": [
                    {
                      "autoAck": true,
                      "className": "org.apache.pulsar.functions.api.examples.ExclamationFunction",
                      "clusterName": "test-pulsar",
                      "forwardSourceMessageProperty": true,
                      "input": {
                        "topics": [
                          "persistent://public/default/functionmesh-input-topic"
                        ],
                        "typeClassName": "java.lang.String"
                      },
                      "java": {
                        "jar": "pulsar-functions-api-examples.jar",
                        "jarLocation": "public/default/nlu-test-functionmesh-ex1"
                      },
                      "logTopic": "persistent://public/default/logging-function-log",
                      "maxReplicas": 1,
                      "name": "ex1",
                      "output": {
                        "topic": "persistent://public/default/mid-topic",
                        "typeClassName": "java.lang.String"
                      },
                      "pulsar": {
                        "pulsarConfig": "mesh-test-pulsar"
                      },
                      "replicas": 1,
                      "resources": {
                        "limits": {
                          "cpu": "0.2",
                          "memory": "1.1G"
                        },
                        "requests": {
                          "cpu": "0.1",
                          "memory": "1G"
                        }
                      }
                    },
                    {
                      "autoAck": true,
                      "className": "org.apache.pulsar.functions.api.examples.ExclamationFunction",
                      "clusterName": "test-pulsar",
                      "forwardSourceMessageProperty": true,
                      "input": {
                        "topics": [
                          "persistent://public/default/mid-topic"
                        ],
                        "typeClassName": "java.lang.String"
                      },
                      "java": {
                        "jar": "pulsar-functions-api-examples.jar",
                        "jarLocation": "public/default/nlu-test-functionmesh-ex2"
                      },
                      "logTopic": "persistent://public/default/logging-function-logs",
                      "maxReplicas": 1,
                      "name": "ex2",
                      "output": {
                        "topic": "persistent://public/default/functionmesh-output-topic",
                        "typeClassName": "java.lang.String"
                      },
                      "pulsar": {
                        "pulsarConfig": "mesh-test-pulsar"
                      },
                      "replicas": 1,
                      "resources": {
                        "limits": {
                          "cpu": "0.2",
                          "memory": "1.1G"
                        },
                        "requests": {
                          "cpu": "0.1",
                          "memory": "1G"
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "Sink",
                "metadata": {
                  "name": "sink-sample"
                },
                "spec": {
                  "autoAck": true,
                  "className": "org.apache.pulsar.io.elasticsearch.ElasticSearchSink",
                  "clusterName": "test-pulsar",
                  "image": "streamnative/pulsar-io-elastic-search:2.10.0.0-rc10",
                  "input": {
                    "topics": [
                      "persistent://public/default/input"
                    ],
                    "typeClassName": "[B"
                  },
                  "java": {
                    "jar": "connectors/pulsar-io-elastic-search-2.10.0.0-rc10.nar",
                    "jarLocation": ""
                  },
                  "maxReplicas": 1,
                  "pulsar": {
                    "pulsarConfig": "test-sink"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "0.2",
                      "memory": "1.1G"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "1G"
                    }
                  },
                  "sinkConfig": {
                    "elasticSearchUrl": "http://quickstart-es-http.default.svc.cluster.local:9200",
                    "indexName": "my_index",
                    "password": "wJ757TmoXEd941kXm07Z2GW3",
                    "typeName": "doc",
                    "username": "elastic"
                  }
                }
              },
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "Source",
                "metadata": {
                  "name": "source-sample"
                },
                "spec": {
                  "className": "org.apache.pulsar.io.debezium.mongodb.DebeziumMongoDbSource",
                  "clusterName": "test-pulsar",
                  "forwardSourceMessageProperty": true,
                  "image": "streamnative/pulsar-io-debezium-mongodb:2.10.0.0-rc10",
                  "java": {
                    "jar": "connectors/pulsar-io-debezium-mongodb-2.10.0.0-rc10.nar",
                    "jarLocation": ""
                  },
                  "maxReplicas": 1,
                  "output": {
                    "producerConf": {
                      "maxPendingMessages": 1000,
                      "maxPendingMessagesAcrossPartitions": 50000,
                      "useThreadLocalProducers": true
                    },
                    "topic": "persistent://public/default/destination",
                    "typeClassName": "org.apache.pulsar.common.schema.KeyValue"
                  },
                  "pulsar": {
                    "pulsarConfig": "test-source"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "0.2",
                      "memory": "1.1G"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "1G"
                    }
                  },
                  "sourceConfig": {
                    "database.whitelist": "inventory",
                    "mongodb.hosts": "rs0/mongo-dbz-0.mongo.default.svc.cluster.local:27017,rs0/mongo-dbz-1.mongo.default.svc.cluster.local:27017,rs0/mongo-dbz-2.mongo.default.svc.cluster.local:27017",
                    "mongodb.name": "dbserver1",
                    "mongodb.password": "dbz",
                    "mongodb.task.id": "1",
                    "mongodb.user": "debezium",
                    "pulsar.service.url": "pulsar://test-pulsar-broker.default.svc.cluster.local:6650"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/streamnativeio/function-mesh@sha256:3e13e5cc3ac4d7387ee0adc02cb5183aad6cf2301f76ab230482609c4da1c0b7
          createdAt: "2022-10-27T07:49:28Z"
          description: The Function Mesh Operator manages the Pulsar Functions and
            Connectors deployed on a Kubernetes cluster.
          olm.properties: '[{"type":"olm.maxOpenShiftVersion","value":"4.8"}]'
          olm.skipRange: <0.7.0
          operatorhub.io/ui-metadata-max-k8s-version: "1.21"
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/streamnative/function-mesh
          support: StreamNative
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FunctionMesh is the Schema for the functionmeshes API
            displayName: Mesh
            kind: FunctionMesh
            name: functionmeshes.compute.functionmesh.io
            version: v1alpha1
          - description: Function is the Schema for the functions API
            displayName: Function
            kind: Function
            name: functions.compute.functionmesh.io
            version: v1alpha1
          - description: Sink is the Schema for the sinks API
            displayName: Sink
            kind: Sink
            name: sinks.compute.functionmesh.io
            version: v1alpha1
          - description: Source is the Schema for the sources API
            displayName: Source
            kind: Source
            name: sources.compute.functionmesh.io
            version: v1alpha1
        description: |
          [Function Mesh](https://functionmesh.io/) is a serverless framework purpose-built for stream processing applications. It brings powerful event-streaming capabilities to your applications by orchestrating multiple [Pulsar Functions](http://pulsar.apache.org/docs/en/next/functions-overview/) and [Pulsar IO connectors](http://pulsar.apache.org/docs/en/next/io-overview/) for complex stream processing jobs on Kubernetes.
          Prerequisites:
          - Install cert-manager operator first.
        displayName: Function Mesh Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - pulsar
        - function-mesh
        - serverless
        - pulsar-functions
        - pulsar-io-connectors
        - StreamNative
        links:
        - name: Function Mesh
          url: https://function-mesh.io
        maintainers:
        - email: function-mesh@streamnative.io
          name: Function Mesh
        maturity: alpha
        minKubeVersion: v1.17.0
        provider:
          name: StreamNative
          url: https://streamnative.io
        relatedImages:
        - registry.connect.redhat.com/streamnative/function-mesh-bundle@sha256:e4377187c20a70d768a253bc0794f3152aa6fcee22ddbf2fc88f45756e9681fe
        - docker.cloudsmith.io/streamnative/mirrors/gcr.io/kubebuilder/kube-rbac-proxy@sha256:67ecb332573384515406ebd71816781366b70adb0eb66345e5980e92603373e1
        - quay.io/streamnativeio/function-mesh@sha256:3e13e5cc3ac4d7387ee0adc02cb5183aad6cf2301f76ab230482609c4da1c0b7
        version: 0.7.0
      entries:
      - name: function-mesh.v0.7.0
        version: 0.7.0
      name: alpha
    defaultChannel: alpha
    packageName: function-mesh
    provider:
      name: StreamNative
      url: https://streamnative.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: aiu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aiu-operator.v2.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "aiu.ibm.com/v2",
                "kind": "AiuClusterPolicy",
                "metadata": {
                  "labels": {
                    "operator-version": "2.3.3"
                  },
                  "name": "aiuclusterpolicy"
                },
                "spec": {
                  "devicePlugin": {
                    "configName": "senlib_config.json",
                    "configPath": "/etc/aiu",
                    "image": "aiu-device-plugin",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.1"
                  },
                  "experimentalMode": [
                    "perDeviceAllocation",
                    "topologyAwareAllocation",
                    "externalDeviceReservation"
                  ],
                  "featureDiscovery": {
                    "image": "aiu-feature-discovery",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.0"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "aiu-exporter",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.0"
                  },
                  "podValidator": {
                    "enabled": true,
                    "image": "aiu-webhook-validator",
                    "imagePullPolicy": "Always",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.0"
                  },
                  "scheduler": {
                    "image": "aiu-kube-scheduler-ocp-4.16",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.2"
                  }
                }
              },
              {
                "apiVersion": "aiu.ibm.com/v2",
                "kind": "AiuNodeState",
                "metadata": {
                  "labels": {
                    "operator-version": "2.3.3"
                  },
                  "name": "aiunodestate"
                },
                "spec": {
                  "nodeName": ""
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: icr.io/ibmaiu/release_2025_03/aiu-operator@sha256:2ea8268e94d44581b3490cd4bbbd5525359073129bae42c7f007c05727afe1c3
          createdAt: "2025-04-03T01:19:38Z"
          description: operator for AIU devices
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: use with IBM AIU
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["aiunodestates.aiu.ibm.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AiuClusterPolicy is the Schema for the AIU API
            displayName: AIU Cluster Policy
            kind: AiuClusterPolicy
            name: aiuclusterpolicies.aiu.ibm.com
            version: v2
          - description: AiuNodeState is the Schema for the AiuNodeState API
            displayName: AIU Node State
            kind: AiuNodeState
            name: aiunodestates.aiu.ibm.com
            version: v2
        description: operator for AIU devices
        displayName: AIU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - app
        - operator
        links:
        - name: Aiu Operator
          url: https://aiu-operator.domain
        maintainers:
        - email: tmishina@jp.ibm.com
          name: Takuya Mishina
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: laurentiu.bradin@ibm.com
          name: Laurentiu Bradin
        - email: htchang@us.ibm.com
          name: Ted Chang
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: IBM
        relatedImages:
        - icr.io/ibmaiu/release_2025_03/aiu-operator@sha256:2ea8268e94d44581b3490cd4bbbd5525359073129bae42c7f007c05727afe1c3
        - registry.connect.redhat.com/aiu/aiu-operator-bundle@sha256:0cda4be8f74da7524a72c961c8762927c66e145d82e59af92073a54179bc9936
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fcb3b8ab93dfb5ef2b290e39ea5899dbb5e0c6d430370b8d281e59e74d94d749
        version: 2.3.3
      entries:
      - name: aiu-operator.v2.3.3
        version: 2.3.3
      name: stable-v2.3
    defaultChannel: stable-v2.3
    packageName: aiu-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: authorino-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: authorino-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/authorino-operator:v0.8.0
          createdAt: 2021-12-08T10-00-00Z
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta1
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: The operator to manage instances of Authorino
        displayName: Authorino Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: Authorino Operator
          url: https://github.com/Kuadrant/authorino-operator
        - name: Authorino
          url: https://github.com/Kuadrant/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/kuadrant/authorino-operator:v0.8.0
        - quay.io/openshift-community-operators/authorino-operator@sha256:8fe34f94f87c567401cc2bbbbcc3a3e719364b80a2b17851496f86c85af5c09a
        version: 0.8.0
      entries:
      - name: authorino-operator.v0.8.0
        version: 0.8.0
      - name: authorino-operator.v0.7.0
        version: 0.7.0
      - name: authorino-operator.v0.6.0
        version: 0.6.0
      - name: authorino-operator.v0.5.0
        version: 0.5.0
      - name: authorino-operator.v0.4.1
        version: 0.4.1
      - name: authorino-operator.v0.4.0
        version: 0.4.0
      - name: authorino-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: authorino-operator.v0.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "authorino.kuadrant.io/v1beta2",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "authorino.kuadrant.io/v1beta3",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/authorino-operator:v0.16.0
          createdAt: "2024-11-25T13:22:24Z"
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta2
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta3
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: The operator to manage instances of Authorino
        displayName: Authorino Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: Authorino Operator
          url: https://github.com/Kuadrant/authorino-operator
        - name: Authorino
          url: https://github.com/Kuadrant/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/authorino-operator@sha256:92ad93f27c34f1406fc05a248d04709b0109adf37f2f9424f48fc6a73d9d359e
        - quay.io/kuadrant/authorino-operator:v0.16.0
        - quay.io/kuadrant/authorino:v0.20.0
        version: 0.16.0
      entries:
      - name: authorino-operator.v0.16.0
        version: 0.16.0
      - name: authorino-operator.v0.15.1
        version: 0.15.1
      - name: authorino-operator.v0.15.0
        version: 0.15.0
      - name: authorino-operator.v0.14.0
        version: 0.14.0
      - name: authorino-operator.v0.13.1
        version: 0.13.1
      - name: authorino-operator.v0.13.0
        version: 0.13.0
      - name: authorino-operator.v0.12.0
        version: 0.12.0
      - name: authorino-operator.v0.11.1
        version: 0.11.1
      - name: authorino-operator.v0.10.0
        version: 0.10.0
      - name: authorino-operator.v0.9.0
        version: 0.9.0
      - name: authorino-operator.v0.8.0
        version: 0.8.0
      - name: authorino-operator.v0.7.0
        version: 0.7.0
      - name: authorino-operator.v0.6.0
        version: 0.6.0
      - name: authorino-operator.v0.5.0
        version: 0.5.0
      - name: authorino-operator.v0.4.1
        version: 0.4.1
      - name: authorino-operator.v0.4.0
        version: 0.4.0
      - name: authorino-operator.v0.0.1
        version: 0.0.1
      name: stable
    defaultChannel: stable
    packageName: authorino-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: NVIDIA
      provider-url: https://github.com/Mellanox/maintenance-operator/
    name: nvidia-maintenance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nvidia-maintenance-operator.v0.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "MaintenanceOperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "maintenanceoperatorconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "maintenanceoperatorconfig",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "maintenanceoperatorconfig-sample"
                },
                "spec": {
                  "logLevel": "info",
                  "maxNodeMaintenanceTimeSeconds": 1600,
                  "maxParallelOperations": 1,
                  "maxUnavailable": "30%"
                }
              },
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "nodemaintenance-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nodemaintenance",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "cordon": true,
                  "drainSpec": {
                    "deleteEmptyDir": true,
                    "force": true,
                    "podEvictionFilters": [
                      {
                        "byResourceNameRegex": "nvidia.com/gpu-*"
                      },
                      {
                        "byResourceNameRegex": "nvidia.com/rdma*"
                      }
                    ],
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  },
                  "nodeName": "worker-node-01",
                  "requestorID": "some-cluster-component.vendor.com",
                  "waitForPodCompletion": {
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
          createdAt: "2025-07-13T12:33:06Z"
          description: Node maintenance in K8s cluster in a coordinated manner
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-maintenance-operator
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: NVIDIA
          repository: https://github.com/Mellanox/maintenance-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MaintenanceOperatorConfig is the Schema for the maintenanceoperatorconfigs
              API
            displayName: Maintenance Operator Config
            kind: MaintenanceOperatorConfig
            name: maintenanceoperatorconfigs.maintenance.nvidia.com
            version: v1alpha1
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.maintenance.nvidia.com
            version: v1alpha1
        description: Coordinates And Performs Common Node Preparations For Maintenance
        displayName: NVIDIA Maintenance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - node
        - maintenance
        - drain
        links:
        - name: NVIDIA Maintenance Operator
          url: https://github.com/Mellanox/maintenance-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/maintenance-operator/
        relatedImages:
        - ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-maintenance-operator@sha256:c9867753cd85ead32702783c880d75118549025ec4793805381aa3bc1ba1d221
        version: 0.2.3
      entries:
      - name: nvidia-maintenance-operator.v0.2.3
        version: 0.2.3
      name: stable
    - currentCSV: nvidia-maintenance-operator.v0.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "MaintenanceOperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "maintenanceoperatorconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "maintenanceoperatorconfig",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "maintenanceoperatorconfig-sample"
                },
                "spec": {
                  "logLevel": "info",
                  "maxNodeMaintenanceTimeSeconds": 1600,
                  "maxParallelOperations": 1,
                  "maxUnavailable": "30%"
                }
              },
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "nodemaintenance-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nodemaintenance",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "cordon": true,
                  "drainSpec": {
                    "deleteEmptyDir": true,
                    "force": true,
                    "podEvictionFilters": [
                      {
                        "byResourceNameRegex": "nvidia.com/gpu-*"
                      },
                      {
                        "byResourceNameRegex": "nvidia.com/rdma*"
                      }
                    ],
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  },
                  "nodeName": "worker-node-01",
                  "requestorID": "some-cluster-component.vendor.com",
                  "waitForPodCompletion": {
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
          createdAt: "2025-07-13T12:33:06Z"
          description: Node maintenance in K8s cluster in a coordinated manner
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-maintenance-operator
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: NVIDIA
          repository: https://github.com/Mellanox/maintenance-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MaintenanceOperatorConfig is the Schema for the maintenanceoperatorconfigs
              API
            displayName: Maintenance Operator Config
            kind: MaintenanceOperatorConfig
            name: maintenanceoperatorconfigs.maintenance.nvidia.com
            version: v1alpha1
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.maintenance.nvidia.com
            version: v1alpha1
        description: Coordinates And Performs Common Node Preparations For Maintenance
        displayName: NVIDIA Maintenance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - node
        - maintenance
        - drain
        links:
        - name: NVIDIA Maintenance Operator
          url: https://github.com/Mellanox/maintenance-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/maintenance-operator/
        relatedImages:
        - ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-maintenance-operator@sha256:c9867753cd85ead32702783c880d75118549025ec4793805381aa3bc1ba1d221
        version: 0.2.3
      entries:
      - name: nvidia-maintenance-operator.v0.2.3
        version: 0.2.3
      name: v0.2
    defaultChannel: v0.2
    packageName: nvidia-maintenance-operator
    provider:
      name: NVIDIA
      url: https://github.com/Mellanox/maintenance-operator/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-superset-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: superset-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/superset-operator@sha256:ac73f419137ceb0888c11b371841938b5a4810a4d3ec0a337c852658de9d6031
          description: Stackable Operator for Apache Superset
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/superset-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for SupersetClusterSpec via `CustomResource`
            displayName: supersetclusters.superset.stackable.tech
            kind: SupersetCluster
            name: supersetclusters.superset.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for DruidConnectionSpec via `CustomResource`
            displayName: druidconnections.superset.stackable.tech
            kind: DruidConnection
            name: druidconnections.superset.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Superset
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - superset
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/superset-operator@sha256:ac73f419137ceb0888c11b371841938b5a4810a4d3ec0a337c852658de9d6031
        - registry.connect.redhat.com/stackable/stackable-apache-superset-operator@sha256:55e2b7a946db2dd9b2111784d5d4d664b2d622611a2076ad70363e110d70fde7
        version: 25.11.0
      entries:
      - name: superset-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-superset-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM Quantum
      provider-url: ""
    name: openshift-qiskit-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-qiskit-operator.v0.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "qiskit.ibm.com/v1alpha1",
                "kind": "QiskitPlayground",
                "metadata": {
                  "name": "qiskitplayground-sample"
                },
                "spec": {
                  "image": "qiskit/jupyter:0.1",
                  "imagePullPolicy": "Always",
                  "resources": {
                    "requests": {
                      "memory": "2G",
                      "cpu": "1"
                    },
                    "limits": {
                      "memory": "3G",
                      "cpu": "1.5"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          certified: "false"
          containerImage: docker.io/qiskit/operator:0.1
          createdAt: 2021-004-23 22:25:53
          description: |-
            Launches a developement environment Jupyter notebok development environment for
            developing quantum applications using Qiskit.
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/kubernetes-qiskit-operator
          support: https://github.com/qiskit-community/openshift-quantum-operators/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QiskitPlayground is the Schema for the qiskitplaygrounds
              API
            displayName: Qiskit Playground
            kind: QiskitPlayground
            name: qiskitplaygrounds.qiskit.ibm.com
            version: v1alpha1
        description: |-
          ### Introduction
          Launches a developement Jupiter lab environment with Qiskit.

          QiskitPlayground is a Jupyter notebook with the pre installed qiskit libraries for implementing quantum application development.
          It comes with pre installed python packages for visualising results. QiskitPlayground can run quantum
          applications on simulator or on real quantum machines using IBM Q account.

          ### Documentation
          For detailed installation guide [follow](https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/kubernetes-qiskit-operator)

          ### Contributing
          You can contribute by
            * Raising any [issues](https://github.com/qiskit-community/openshift-quantum-operators/issues) you find using ibm-quantum-operator community operator
            * Fixing issues by opening [Pull Requests](https://github.com/qiskit-community/openshift-quantum-operators/pulls)
            * Talking about openshift-qiskit-operator

          ### License
          kubernetes-qiskit-operator is licensed under the [Apache 2.0 license](https://github.com/qiskit-community/openshift-quantum-operators/blob/master/LICENSE)

          #### Note
          Any api could be changed any time without any notice. That said, your feedback is very important and appreciated to make this project more stable and useful.
        displayName: QiskitPlayground
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Qiskit
        - Open Source
        - Quantum
        links:
        - name: GitHub
          url: https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/kubernetes-qiskit-operator
        maintainers:
        - email: blublinsky@ibm.com
          name: boris
        maturity: alpha
        provider:
          name: IBM Quantum
        relatedImages:
        - docker.io/qiskit/operator:0.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/openshift-qiskit-operator@sha256:633ce4190b02034d70b52d7e624fc9d417ef997607f9710a36e73bbc0963fe4d
        version: 0.2.1
      entries:
      - name: openshift-qiskit-operator.v0.2.1
        version: 0.2.1
      - name: openshift-qiskit-operator.v0.2.0
        version: 0.2.0
      name: alpha
    defaultChannel: alpha
    packageName: openshift-qiskit-operator
    provider:
      name: IBM Quantum
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MayaData
      provider-url: ""
    name: openebs
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openebsoperator.v3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "openebs.io/v1alpha1",
                "kind": "OpenEBSInstallTemplate",
                "metadata": {
                  "name": "oebs",
                  "namespace": "openebs"
                },
                "spec": {
                  "rbac": {
                    "create": true,
                    "pspEnabled": false,
                    "kyvernoEnabled": false
                  },
                  "serviceAccount": {
                    "create": true,
                    "name": "openebs-maya-operator"
                  },
                  "imagePullSecrets": [],
                  "release": {
                    "version": "3.0.0"
                  },
                  "legacy": {
                    "enabled": false
                  },
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": ""
                  },
                  "apiserver": {
                    "enabled": true,
                    "image": "openebs/m-apiserver",
                    "imageTag": "2.12.2",
                    "replicas": 1,
                    "ports": {
                      "externalPort": 5656,
                      "internalPort": 5656
                    },
                    "sparse": {
                      "enabled": "false"
                    },
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "defaultStorageConfig": {
                    "enabled": "true"
                  },
                  "varDirectoryPath": {
                    "baseDir": "/var/openebs"
                  },
                  "provisioner": {
                    "enabled": true,
                    "image": "openebs/openebs-k8s-provisioner",
                    "imageTag": "2.12.2",
                    "replicas": 1,
                    "enableLeaderElection": true,
                    "patchJivaNodeAffinity": "enabled",
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "localprovisioner": {
                    "enabled": true,
                    "image": "openebs/provisioner-localpv",
                    "imageTag": "3.0.0",
                    "replicas": 1,
                    "enableLeaderElection": true,
                    "enableDeviceClass": true,
                    "enableHostpathClass": true,
                    "basePath": "/var/openebs/local",
                    "waitForBDBindTimeoutRetryCount": "12",
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "snapshotOperator": {
                    "enabled": true,
                    "controller": {
                      "image": "openebs/snapshot-controller",
                      "imageTag": "2.12.2",
                      "resources": {}
                    },
                    "provisioner": {
                      "image": "openebs/snapshot-provisioner",
                      "imageTag": "2.12.2",
                      "resources": {}
                    },
                    "replicas": 1,
                    "enableLeaderElection": true,
                    "upgradeStrategy": "Recreate",
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    }
                  },
                  "ndm": {
                    "enabled": true,
                    "image": "openebs/node-disk-manager",
                    "imageTag": "1.7.0",
                    "sparse": {
                      "path": "/var/openebs/sparse",
                      "size": "10737418240",
                      "count": "0"
                    },
                    "filters": {
                      "enableOsDiskExcludeFilter": true,
                      "osDiskExcludePaths": "/,/etc/hosts,/boot",
                      "enableVendorFilter": true,
                      "excludeVendors": "CLOUDBYT,OpenEBS",
                      "enablePathFilter": true,
                      "includePaths": "",
                      "excludePaths": "/dev/loop,/dev/fd0,/dev/sr0,/dev/ram,/dev/dm-,/dev/md,/dev/rbd,/dev/zd"
                    },
                    "probes": {
                      "enableSeachest": false
                    },
                    "nodeSelector": {},
                    "tolerations": [],
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "ndmOperator": {
                    "enabled": true,
                    "image": "openebs/node-disk-operator",
                    "imageTag": "1.7.0",
                    "replicas": 1,
                    "upgradeStrategy": "Recreate",
                    "nodeSelector": {},
                    "tolerations": [],
                    "healthCheck": {
                      "initialDelaySeconds": 15,
                      "periodSeconds": 20
                    },
                    "readinessCheck": {
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10
                    },
                    "resources": {}
                  },
                  "ndmExporter": {
                    "enabled": false,
                    "image": {
                      "registry": null,
                      "repository": "openebs/node-disk-exporter",
                      "pullPolicy": "IfNotPresent",
                      "tag": "1.7.0"
                    },
                    "nodeExporter": {
                      "name": "ndm-node-exporter",
                      "podLabels": {
                        "name": "openebs-ndm-node-exporter"
                      },
                      "metricsPort": 9101
                    },
                    "clusterExporter": {
                      "name": "ndm-cluster-exporter",
                      "podLabels": {
                        "name": "openebs-ndm-cluster-exporter"
                      },
                      "metricsPort": 9100
                    }
                  },
                  "webhook": {
                    "enabled": true,
                    "image": "openebs/admission-server",
                    "imageTag": "2.12.2",
                    "failurePolicy": "Fail",
                    "replicas": 1,
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "hostNetwork": false,
                    "resources": {}
                  },
                  "helper": {
                    "image": "openebs/linux-utils",
                    "helperImageTag": "3.0.0"
                  },
                  "featureGates": {
                    "enabled": true,
                    "GPTBasedUUID": {
                      "enabled": true,
                      "featureGateFlag": "GPTBasedUUID"
                    },
                    "APIService": {
                      "enabled": false,
                      "featureGateFlag": "APIService",
                      "address": "0.0.0.0:9115"
                    },
                    "UseOSDisk": {
                      "enabled": false,
                      "featureGateFlag": "UseOSDisk"
                    },
                    "ChangeDetection": {
                      "enabled": false,
                      "featureGateFlag": "ChangeDetection"
                    }
                  },
                  "crd": {
                    "enableInstall": true
                  },
                  "policies": {
                    "monitoring": {
                      "enabled": true,
                      "image": "openebs/m-exporter",
                      "imageTag": "2.12.2"
                    }
                  },
                  "analytics": {
                    "enabled": true,
                    "pingInterval": "24h"
                  },
                  "jiva": {
                    "image": "openebs/jiva",
                    "imageTag": "2.12.2",
                    "replicas": 3,
                    "defaultStoragePath": "/var/openebs",
                    "enabled": false,
                    "openebsLocalpv": {
                      "enabled": false
                    },
                    "localpv-provisioner": {
                      "openebsNDM": {
                        "enabled": false
                      }
                    }
                  },
                  "cstor": {
                    "pool": {
                      "image": "openebs/cstor-pool",
                      "imageTag": "2.12.2"
                    },
                    "poolMgmt": {
                      "image": "openebs/cstor-pool-mgmt",
                      "imageTag": "2.12.2"
                    },
                    "target": {
                      "image": "openebs/cstor-istgt",
                      "imageTag": "2.12.2"
                    },
                    "volumeMgmt": {
                      "image": "openebs/cstor-volume-mgmt",
                      "imageTag": "2.12.2"
                    },
                    "enabled": false,
                    "openebsNDM": {
                      "enabled": false
                    }
                  },
                  "openebs-ndm": {
                    "enabled": false
                  },
                  "localpv-provisioner": {
                    "enabled": false,
                    "openebsNDM": {
                      "enabled": false
                    }
                  },
                  "zfs-localpv": {
                    "enabled": false
                  },
                  "lvm-localpv": {
                    "enabled": false
                  },
                  "nfs-provisioner": {
                    "enabled": false
                  },
                  "cleanup": {
                    "image": {
                      "registry": "",
                      "repository": "bitnami/kubectl",
                      "tag": "",
                      "imagePullSecrets": []
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: index.docker.io/openebs/helm-operator:v0.0.9
          createdAt: "2021-11-02T02:56:58Z"
          description: Creates and maintains OpenEBS Control Plane deployments
          repository: https://github.com/openebs/helm-operator
          support: https://slack.openebs.io/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a OpenEBS Install Operator
            displayName: OpenEBS Install Template
            kind: OpenEBSInstallTemplate
            name: openebsinstalltemplates.openebs.io
            version: v1alpha1
        description: |
          **OpenEBS** is a leading container attached storage solution that enables the use of containers for mission-critical, persistent workloads and for other stateful workloads such as logging or Prometheus for example.
          OpenEBS itself is deployed as just another container on your host and enables storage services that can be designated on a per pod, application, cluster or container level, including:
          * Data persistence across nodes
          * Synchronization of data across availability zones and cloud providers
          * A common layer whether you are running on the cloud, or your bare metal
          * Integration with Kubernetes, so developer and application intent flows into OpenEBS
          * Management of tiering to and from S3 and other targets.
          ## OpenEBS Operator
          OpenEBS primarily provides container attached block storage (iSCSI volumes) by leveraging/aggregating the storage on the nodes, with the storage controller itself running as a container. Different storage engines (Jiva & cStor) are supported, with tools available to dynamically provision Kubernetes Local PVs. The volumes are dynamically provisioned via PersistentVolumeClaims and are managed by a control plane component called "maya", which also runs as a deployment in the K8s cluster. In addition to maya, a typical OpenEBS installation comprises several other resources, which aid with various functionalities, ranging from snapshotting to disk management. All these components are described briefly below:
          * **Maya-API-Server** - A storage orchestrator which integrates into Kubernetes workflow to help provision
            and manage OpenEBS Jiva & cStor (storage engine) volumes

          * **Dynamic-OpenEBS-Provisioner** - A Kubernetes external storage provisioner that utilizes APIs exposed by maya-apiserver
            to perform provision & delete operations of Jiva & cStor volumes

          * **Dynamic-LocalPV-Provisioner** - A dynamic provisioner for Kubernetes Local PVs
          * **OpenEBS-Snapshot-Operator** - A Kubernetes snapshot controller that creates & restores OpenEBS volume snapshots
          * **Node-Disk-Manager** - A disk management controller which identifies available disks, maintains inventory, and
            dynamically attaches/detaches disks to backend storage pods

          The helm-based OpenEBS Operator eases the setup of all the above mentioned components, with a simple custom resource provided to define the install options, thereby enabling applications to start using the OpenEBS storageclasses in their PVCs. The OpenEBSInstallTemplate CR can be used to specify start-up parameters & also update/overwrite the definitions post install.
          ## Pre-Requisites
          Before installing OpenEBS control plane, perform the following steps to ensure successful deployment of the Node-Disk-Manager & the OpenEBS volume replicas, respectively.
          * Configure the OpenEBS service account on the openshift-operators namespace/project to use the privileged security context constraint.

            **Note**: The serviceaccount name is same as the one specified in the `spec.serviceAccount.name` field of the OpenEBSInstallTemplate CR.


            ```
            oc adm policy add-scc-to-user privileged system:serviceaccount:openshift-operators:openebs-maya-operator
            ```

          * Configure the default service account on the namespace/project in which the volume replicas are deployed to use privileged
            security context constraint.


            ```
            oc adm policy add-scc-to-user privileged system:serviceaccount:openshift-operators:default
            ```

          ## Getting Started
          * Try the quickstart [guide](https://github.com/openebs/helm-operator/blob/master/olm/README.md)
          * To learn how to contribute, please read the [contribution guide](https://github.com/openebs/helm-operator/blob/master/CONTRIBUTING.md)
          * OpenEBS welcomes your feedback and contributions in any form possible. [Join our Community](https://openebs.org/community)

          ## License
          OpenEBS is distributed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt)
        displayName: OpenEBS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OpenEBS
        - ContainerAttachedStorage
        links:
        - name: OpenEBS Website
          url: https://openebs.io
        - name: Operator Source Code
          url: https://github.com/openebs/helm-operator
        - name: Install Instructions
          url: https://github.com/openebs/helm-operator/blob/master/olm/README.md
        maintainers:
        - email: kiran.mova@openebs.io
          name: kmova
        maturity: alpha
        minKubeVersion: 1.12.0
        provider:
          name: MayaData
        relatedImages:
        - index.docker.io/openebs/helm-operator:v0.0.9
        - quay.io/openshift-community-operators/openebs@sha256:ff179bdd6e63b8e2cb1ce3b96d5e03d20c1a2410296fed6fb331bf5bc2e6b14d
        version: 3.0.0
      entries:
      - name: openebsoperator.v3.0.0
        version: 3.0.0
      - name: openebsoperator.v2.12.2
        version: 2.12.2
      name: alpha
    defaultChannel: alpha
    packageName: openebs
    provider:
      name: MayaData
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/multiarch-tuning-operator
    name: multiarch-tuning-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multiarch-tuning-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multiarch.openshift.io/v1beta1",
                "kind": "ClusterPodPlacementConfig",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logVerbosity": "Normal",
                  "namespaceSelector": {
                    "matchExpressions": [
                      {
                        "key": "multiarch.openshift.io/exclude-pod-placement",
                        "operator": "DoesNotExist"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Other
          console.openshift.io/disable-operand-delete: "false"
          containerImage: registry.redhat.io/multiarch-tuning/multiarch-tuning-rhel9-operator@sha256:e17ed141cb3ec0a6c6b87bab5164f5657607d12d7b205a5d451e08f795a34e08
          createdAt: "2025-11-12T04:49:47Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operator.openshift.io/uninstall-message: You must remove all Operands before
            uninstalling the operator.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-multiarch-tuning-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: '["enoexecevents.multiarch.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/multiarch-tuning-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPodPlacementConfig defines the configuration for the
              architecture aware pod placement operand. Users can only deploy a single
              object named "cluster". Creating the object enables the operand.
            displayName: Cluster Pod Placement Config
            kind: ClusterPodPlacementConfig
            name: clusterpodplacementconfigs.multiarch.openshift.io
            version: v1alpha1
          - description: ClusterPodPlacementConfig defines the configuration for the
              architecture aware pod placement operand. Users can only deploy a single
              object named "cluster". Creating the object enables the operand.
            displayName: Cluster Pod Placement Config
            kind: ClusterPodPlacementConfig
            name: clusterpodplacementconfigs.multiarch.openshift.io
            version: v1beta1
          - description: ENoExecEvent is the Schema for the enoexecevents API
            displayName: ENo Exec Event
            kind: ENoExecEvent
            name: enoexecevents.multiarch.openshift.io
            version: v1beta1
        description: |
          The Multiarch Tuning Operator optimizes workload management within multi-architecture clusters and in
          single-architecture clusters transitioning to multi-architecture environments.

          By default, the scheduler does not consider the architecture of a pod's container images
          when determining the placement of new pods onto nodes.

          The Multiarch Tuning Operator introduces the ClusterPodPlacementConfig custom resource to
          enable architecture-aware scheduling, ensuring that pods are assigned to nodes with
          a corresponding architecture for their container images.

          To enable this functionality, you must create a ClusterPodPlacementConfig resource.

          When the ClusterPodPlacementConfig object is created, the Multiarch Tuning Operator deploys the necessary operands
          to support architecture-aware workload scheduling.
        displayName: Multiarch Tuning Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multiarch-tuning-operator
        - pod-placement
        links:
        - name: Multiarch Tuning Operator Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/postinstallation_configuration/configuring-multi-architecture-compute-machines-on-an-openshift-cluster#multiarch-tuning-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
          url: https://github.com/openshift/multiarch-tuning-operator
        relatedImages:
        - registry.redhat.io/multiarch-tuning/multiarch-tuning-operator-bundle@sha256:fe40f5abedd62e8ac2a354ddc7e81e158615682c753ef942bca238dcc3beb4c7
        - registry.redhat.io/multiarch-tuning/multiarch-tuning-rhel9-operator@sha256:e17ed141cb3ec0a6c6b87bab5164f5657607d12d7b205a5d451e08f795a34e08
        version: 1.2.1
      entries:
      - name: multiarch-tuning-operator.v1.2.1
        version: 1.2.1
      - name: multiarch-tuning-operator.v1.2.0
        version: 1.2.0
      - name: multiarch-tuning-operator.v1.1.1
        version: 1.1.1
      - name: multiarch-tuning-operator.v1.1.0
        version: 1.1.0
      - name: multiarch-tuning-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: multiarch-tuning-operator
    provider:
      name: Red Hat
      url: https://github.com/openshift/multiarch-tuning-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Coroot Inc.
      provider-url: https://coroot.com
    name: coroot-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: coroot-operator.1.1.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "coroot.com/v1",
                "kind": "Coroot",
                "metadata": {
                  "name": "coroot",
                  "namespace": "coroot"
                },
                "spec": {
                  "enterpriseEdition": {
                    "licenseKey": "<COROOT_LICENSE_KEY> from https://coroot.com/account"
                  },
                  "ingress": {
                    "host": "coroot.example.com"
                  },
                  "storage": {
                    "size": "50Gi"
                  },
                  "clickhouse": {
                    "replicas": 2,
                    "shards": 2,
                    "storage": {
                      "size": "100Gi"
                    }
                  },
                  "prometheus": {
                    "storage": {
                      "size": "100Gi"
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring, Logging & Tracing
          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"
          repository: https://github.com/coroot/coroot-operator
          support: support@coroot.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Coroot is the Schema for the coroots API
            displayName: Coroot
            kind: Coroot
            name: coroots.coroot.com
            version: v1
        description: An open-source observability platform using eBPF to gather telemetry
          data, providing actionable insights for quick issue detection and resolution
          in Kubernetes and VM environments.
        displayName: Coroot
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - coroot
        - observability
        links:
        - name: Documentation
          url: https://docs.coroot.com
        maintainers:
        - email: support@coroot.com
          name: Coroot Inc.
        maturity: stable
        provider:
          name: Coroot Inc.
          url: https://coroot.com
        relatedImages:
        - ghcr.io/coroot/clickhouse@sha256:afed1054626598371975c948e5b9e4dcaac54e8059b7ad9f0b905ef1c99f2260
        - ghcr.io/coroot/coroot-cluster-agent@sha256:674bcb147354873eaa0ee9c1328ddf758d43adbbe532c9fbbe41ddae7addc114
        - ghcr.io/coroot/coroot-ee@sha256:09b9177ac07c2d26f4bd16050d07bb1e2132431055c32e047563083ee09194a8
        - ghcr.io/coroot/coroot-node-agent@sha256:3d552e98ca2ff8c6e125496857306172ec6f8e134ff13886c7f799abef29d1b8
        - ghcr.io/coroot/coroot-operator@sha256:13f1a4a07877c8fe8230a0bb7282ff47451007c9cf689a995a37d16697b9268a
        - ghcr.io/coroot/kube-state-metrics@sha256:080a85e77b1e530df56f84c8e0ee2523c1f740adea152015367b87edbfac078d
        - ghcr.io/coroot/prometheus@sha256:e7117bd86e1088fc02ac12758bc94dba1029de54a5bc1ee04954569d8b79625d
        - registry.connect.redhat.com/coroot/coroot-operator@sha256:44aa4ea98d468f1d1ced671bd2e2bd5bf79ce467f8c572c2248abdce2b7c5acf
        version: 1.1.5
      entries:
      - name: coroot-operator.1.1.5
        version: 1.1.5
      name: stable
    defaultChannel: stable
    packageName: coroot-operator
    provider:
      name: Coroot Inc.
      url: https://coroot.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Tigera
      provider-url: ""
    name: tigera-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tigera-operator.v1.40.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "calicoNetwork": {
                    "linuxDataplane": "BPF"
                  },
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Basic Install
          categories: Logging & Tracing, Monitoring, Networking, Security
          containerImage: quay.io/tigera/operator@sha256:35f43a5fdc867629b3b8604f7fc8666e2f919778411d86adc6761b18f355e5f3
          createdAt: "2025-11-18T15:35:44.698841063Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          features.operators.openshift.io/valid-subscription: No subscription required
          olm.skipRange: <1.40.2
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift.
        displayName: Tigera Operator v1.38
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tigera-operator
        - networking
        - security
        - monitoring
        links:
        - name: Tigera
          url: https://tigera.io/
        - name: Calico Introduction
          url: https://docs.tigera.io/calico/latest/about/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.tigera.io/calico/latest/getting-started/kubernetes/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
          url: https://tigera.io/
        relatedImages:
        - quay.io/tigera/operator@sha256:35f43a5fdc867629b3b8604f7fc8666e2f919778411d86adc6761b18f355e5f3
        - registry.connect.redhat.com/tigera/operator@sha256:464be134e6e0e4df46c996a08488a477b4456f7b85f6ea5cd2a82f000e8e8888
        version: 1.40.2
      entries:
      - name: tigera-operator.v1.40.2
        version: 1.40.2
      name: alpha
    - currentCSV: tigera-operator.v1.20.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:bd93e66be5cfbc123fe4e8c3f6e8ddf7654217bf26136f06dcf23f28b53063d2
          createdAt: "2021-10-05T20:02:14.564507Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.20.4
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:bd93e66be5cfbc123fe4e8c3f6e8ddf7654217bf26136f06dcf23f28b53063d2
        - registry.connect.redhat.com/tigera/operator@sha256:4d0d814fcfeb628aae8a05cb7a0a416ae85395197950085c907b6cdcf2fb4317
        version: 1.20.4
      entries:
      - name: tigera-operator.v1.20.4
        version: 1.20.4
      - name: tigera-operator.v1.20.3
        version: 1.20.3
      - name: tigera-operator.v1.20.2
        version: 1.20.2
      - name: tigera-operator.v1.20.1
        version: 1.20.1
      name: release-v1.20
    - currentCSV: tigera-operator.v1.23.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:f258275fe3d48c2ae16346a57f628523a6f2fb7b854b6d43b169056e158537f1
          createdAt: "2022-01-12T22:55:57.409244Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.23.4
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - registry.connect.redhat.com/tigera/operator@sha256:b1a8b56ff5e1bb5326e1bde4931303358410da9768f0ebf9c08e2c2d8661d742
        - quay.io/tigera/operator@sha256:f258275fe3d48c2ae16346a57f628523a6f2fb7b854b6d43b169056e158537f1
        version: 1.23.4
      entries:
      - name: tigera-operator.v1.23.4
        version: 1.23.4
      - name: tigera-operator.v1.23.3
        version: 1.23.3
      - name: tigera-operator.v1.23.2
        version: 1.23.2
      - name: tigera-operator.v1.23.1
        version: 1.23.1
      - name: tigera-operator.v1.23.0
        version: 1.23.0
      name: release-v1.23
    - currentCSV: tigera-operator.v1.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:e862708c700df55f99a9c9bb3c453e31f22aef1993d6079d80433eb8da831c94
          createdAt: "2022-02-17T05:39:13.720885Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.25.1
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:e862708c700df55f99a9c9bb3c453e31f22aef1993d6079d80433eb8da831c94
        - registry.connect.redhat.com/tigera/operator@sha256:cb7f3367ff064cd01dc636a43fd89d5f6c4e6a7004cb7c94b1758b2398e36d71
        version: 1.25.1
      entries:
      - name: tigera-operator.v1.25.1
        version: 1.25.1
      name: release-v1.25
    - currentCSV: tigera-operator.v1.28.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:9e8e47045fc67a2b00f9f2fd575fa526d7ddcac50af0b8b6d583b7518ccce120
          createdAt: "2023-05-17T16:13:52.148441156Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.28.13
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:9e8e47045fc67a2b00f9f2fd575fa526d7ddcac50af0b8b6d583b7518ccce120
        - registry.connect.redhat.com/tigera/operator@sha256:de9724b84ca493d3b14c8f801c1049ac4713166b00d9bf3ea0b1986aac5040fa
        version: 1.28.13
      entries:
      - name: tigera-operator.v1.28.13
        version: 1.28.13
      name: release-v1.28
    - currentCSV: tigera-operator.v1.29.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:2a5acd29d8dca6adb318af04dbb15d93d899ed2b28b2ee9aaac09147395efb58
          createdAt: "2023-03-31T20:49:52.518230079Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.29.3
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - registry.connect.redhat.com/tigera/operator@sha256:8e0c026f369f80e8b36d0c94f1fd60f7f53656e57dc5be0b8b12189546874909
        - quay.io/tigera/operator@sha256:2a5acd29d8dca6adb318af04dbb15d93d899ed2b28b2ee9aaac09147395efb58
        version: 1.29.3
      entries:
      - name: tigera-operator.v1.29.3
        version: 1.29.3
      name: release-v1.29
    - currentCSV: tigera-operator.v1.30.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:431f037ff18b5c867d01312e42671effc55602421aeed25dd3f6109f70596b4a
          createdAt: "2023-11-17T00:52:31.263564294Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.30.9
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: APIServer
            name: apiservers.operator.tigera.io
            version: v1
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:431f037ff18b5c867d01312e42671effc55602421aeed25dd3f6109f70596b4a
        - registry.connect.redhat.com/tigera/operator@sha256:1fb1007f7aad744f0e1b0f6a32022c2571ee8558e9db53c85976bbd2a891a6b0
        version: 1.30.9
      entries:
      - name: tigera-operator.v1.30.9
        version: 1.30.9
      name: release-v1.30
    - currentCSV: tigera-operator.v1.32.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:715ac9a30f8a9579e44258af20de354715429e11836b493918e9e1a696e9b028
          createdAt: "2023-12-15T23:45:03.964812504Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.32.3
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:715ac9a30f8a9579e44258af20de354715429e11836b493918e9e1a696e9b028
        - registry.connect.redhat.com/tigera/operator@sha256:42a4d0d0e24752dbb51daebcfca4d4850d04e79578bfb8b41cdc2a2a289df4a2
        version: 1.32.3
      entries:
      - name: tigera-operator.v1.32.3
        version: 1.32.3
      name: release-v1.32
    defaultChannel: release-v1.32
    packageName: tigera-operator
    provider:
      name: Tigera
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: EDB
      provider-url: ""
    name: cloud-native-postgresql
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cloud-native-postgresql.v1.28.0-rc2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:9e48409a60f1499191d285a41c034ed854108804eac2b5252f4f11797965cf1a
          createdAt: "2025-12-05T15:06:17Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:076018f56494a521e44e5fe7c48c3b21eeaf6379606f8dc651ed7a4330d0ce07
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:9e48409a60f1499191d285a41c034ed854108804eac2b5252f4f11797965cf1a
        version: 1.28.0-rc2
      entries:
      - name: cloud-native-postgresql.v1.28.0-rc2
        version: 1.28.0-rc2
      - name: cloud-native-postgresql.v1.28.0-rc1
        version: 1.28.0-rc1
      - name: cloud-native-postgresql.v1.27.0-rc1
        version: 1.27.0-rc1
      - name: cloud-native-postgresql.v1.26.0-rc3
        version: 1.26.0-rc3
      - name: cloud-native-postgresql.v1.26.0-rc2
        version: 1.26.0-rc2
      - name: cloud-native-postgresql.v1.26.0-rc1
        version: 1.26.0-rc1
      name: candidate
    - currentCSV: cloud-native-postgresql.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
          createdAt: "2025-12-16T10:37:27Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:16384249d49258831634aa3535f97906f41ebbf92d2f28bf6645e416ec3da96e
        version: 1.28.0
      entries:
      - name: cloud-native-postgresql.v1.28.0
        version: 1.28.0
      - name: cloud-native-postgresql.v1.27.1
        version: 1.27.1
      - name: cloud-native-postgresql.v1.27.0
        version: 1.27.0
      - name: cloud-native-postgresql.v1.26.1
        version: 1.26.1
      - name: cloud-native-postgresql.v1.26.0
        version: 1.26.0
      - name: cloud-native-postgresql.v1.25.2
        version: 1.25.2
      - name: cloud-native-postgresql.v1.25.1
        version: 1.25.1
      - name: cloud-native-postgresql.v1.25.0
        version: 1.25.0
      name: fast
    - currentCSV: cloud-native-postgresql.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
          createdAt: "2025-12-16T10:37:27Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:16384249d49258831634aa3535f97906f41ebbf92d2f28bf6645e416ec3da96e
        version: 1.28.0
      entries:
      - name: cloud-native-postgresql.v1.28.0
        version: 1.28.0
      - name: cloud-native-postgresql.v1.25.5
        version: 1.25.5
      - name: cloud-native-postgresql.v1.25.4
        version: 1.25.4
      - name: cloud-native-postgresql.v1.25.3
        version: 1.25.3
      - name: cloud-native-postgresql.v1.25.2
        version: 1.25.2
      - name: cloud-native-postgresql.v1.25.1
        version: 1.25.1
      - name: cloud-native-postgresql.v1.25.0
        version: 1.25.0
      name: stable
    - currentCSV: cloud-native-postgresql.v1.25.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": [
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:d2e7f433904cf4f5193d044434b1d6294222047398692697fc5c3f6311997ed3",
                      "major": 15
                    },
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:8f68afde9b1217ad13682bd2adfc0a7cac691cbdb496cc22915f6783012067f9",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": [
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:d2e7f433904cf4f5193d044434b1d6294222047398692697fc5c3f6311997ed3",
                      "major": 15
                    },
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:8f68afde9b1217ad13682bd2adfc0a7cac691cbdb496cc22915f6783012067f9",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: quay.io/enterprisedb/cloud-native-postgresql@sha256:8ceea425bde8f569006e53f631e658b9b20f1093a5ae7088f843c8ac0a2ad235
          createdAt: "2025-10-24T16:12:01Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          Main features:

          * Direct integration with Kubernetes API server for High Availability,
            without requiring an external tool
          * Self-Healing capability, through:
              * failover of the primary instance by promoting the most aligned replica
              * automated recreation of a replica
          * Planned switchover of the primary instance by promoting a selected replica
          * Scale up/down capabilities
          * Definition of an arbitrary number of instances (minimum 1 - one primary server)
          * Definition of the *read-write* service, to connect your applications to the only primary server of the cluster
          * Definition of the *read-only* service, to connect your applications to any of the instances for reading workloads
          * Declarative management of PostgreSQL configuration
          * Declarative management of Postgres roles, users and groups
          * Support for Local Persistent Volumes with PVC templates
          * Reuse of Persistent Volumes storage in Pods
          * Separate volume for WAL files
          * Rolling updates for PostgreSQL minor versions
          * In-place or rolling updates for operator upgrades
          * TLS connections and client certificate authentication
          * Support for custom TLS certificates (including integration with cert-manager)
          * Continuous WAL archiving to an object store (AWS S3 and S3-compatible, Azure Blob Storage, and Google Cloud Storage)
          * Backups on volume snapshots (where supported by the underlying storage classes)
          * Backups on object stores (AWS S3 and S3-compatible, Azure Blob Storage, and Google Cloud Storage)
          * Full recovery and Point-In-Time recovery from an existing backup on volume snapshots or object stores
          * Offline import of existing PostgreSQL databases, including major upgrades of PostgreSQL
          * Fencing of an entire PostgreSQL cluster, or a subset of the instances in a declarative way
          * Hibernation of a PostgreSQL cluster in a declarative way
          * Support for Synchronous Replicas
          * Support for HA physical replication slots at cluster level
          * Backup from a standby
          * Backup retention policies (based on recovery window, only on object stores)
          * Parallel WAL archiving and restore to allow the database to keep up with WAL
            generation on high write systems
          * Support tagging backup files uploaded to an object store to enable optional
            retention management at the object store layer Replica clusters for
          * PostgreSQL deployments across multiple Kubernetes
            clusters, enabling private, public, hybrid, and multi-cloud architectures
          * Connection pooling with PgBouncer
          * Support for node affinity via `nodeSelector`
          * Native customizable exporter of user defined metrics for Prometheus through the `metrics` port (9187)
          * Standard output logging of PostgreSQL error messages in JSON format
          * Automatically set `readOnlyRootFilesystem` security context for pods
          * `cnp` plugin for `kubectl`
          * Simple bind and search+bind LDAP client authentication
          * Multi-arch format container images
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - quay.io/enterprisedb/postgresql@sha256:d2e7f433904cf4f5193d044434b1d6294222047398692697fc5c3f6311997ed3
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:22c35530e81789a83754aaa05de5159153f5e7fa4f25dbd9e5f1bd4f5d088cbb
        - quay.io/enterprisedb/cloud-native-postgresql@sha256:8ceea425bde8f569006e53f631e658b9b20f1093a5ae7088f843c8ac0a2ad235
        - quay.io/enterprisedb/postgresql@sha256:8f68afde9b1217ad13682bd2adfc0a7cac691cbdb496cc22915f6783012067f9
        version: 1.25.4
      entries:
      - name: cloud-native-postgresql.v1.25.4
        version: 1.25.4
      - name: cloud-native-postgresql.v1.25.3
        version: 1.25.3
      - name: cloud-native-postgresql.v1.25.2
        version: 1.25.2
      - name: cloud-native-postgresql.v1.25.1
        version: 1.25.1
      - name: cloud-native-postgresql.v1.25.0
        version: 1.25.0
      name: stable-v1.25
    - currentCSV: cloud-native-postgresql.v1.26.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:d4c22a434ea72e5865fd394b10b485e0c6b0690c27b3a14ebefc1add666de8b5
          createdAt: "2025-12-16T09:08:59Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:14ef013d84432c0901b5eaa7128e186d7dc604b699eb9b1cb3d63ca9d44366af
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:d4c22a434ea72e5865fd394b10b485e0c6b0690c27b3a14ebefc1add666de8b5
        version: 1.26.3
      entries:
      - name: cloud-native-postgresql.v1.26.3
        version: 1.26.3
      - name: cloud-native-postgresql.v1.26.2
        version: 1.26.2
      - name: cloud-native-postgresql.v1.26.1
        version: 1.26.1
      - name: cloud-native-postgresql.v1.26.0
        version: 1.26.0
      name: stable-v1.26
    - currentCSV: cloud-native-postgresql.v1.27.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:5c5753190e5f7e9da7d5a969b0b917c97f2e9aa9f5f208324dbdd5cdb2db2a1d
          createdAt: "2025-12-16T09:52:18Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:5c5753190e5f7e9da7d5a969b0b917c97f2e9aa9f5f208324dbdd5cdb2db2a1d
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:147730fba2efe5e1369ebf61816cdf01ac0a92c67b7e89b89e32e032119447a2
        version: 1.27.2
      entries:
      - name: cloud-native-postgresql.v1.27.2
        version: 1.27.2
      - name: cloud-native-postgresql.v1.27.1
        version: 1.27.1
      - name: cloud-native-postgresql.v1.27.0
        version: 1.27.0
      name: stable-v1.27
    - currentCSV: cloud-native-postgresql.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
          createdAt: "2025-12-16T10:37:27Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:16384249d49258831634aa3535f97906f41ebbf92d2f28bf6645e416ec3da96e
        version: 1.28.0
      entries:
      - name: cloud-native-postgresql.v1.28.0
        version: 1.28.0
      name: stable-v1.28
    defaultChannel: fast
    packageName: cloud-native-postgresql
    provider:
      name: EDB
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: devopstales
      provider-url: devopstales.github.io
    name: community-trivy-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: community-trivy-operator.v2.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "trivy-operator.devopstales.io/v1",
                "kind": "NamespaceScanner",
                "metadata": {
                  "name": "trivy-operator-main-config"
                },
                "spec": {
                  "crontab": "*/5 * * * *",
                  "namespace_selector": "trivy-scan",
                  "clusterWide": "False",
                  "policyreport": "False",
                  "registry": [
                    {
                      "name": "docker.io",
                      "user": "",
                      "password": ""
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: devopstales/trivy-operator:2.4.1
          createdAt: "2022-07-11T15:00:00Z"
          description: Trivy Operator for scheduled imagescans and an Admission Control.
          repository: https://github.com/devopstales/trivy-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Confifuration for trivy-operator.
            displayName: NamespaceScanner
            kind: NamespaceScanner
            name: namespace-scanners.trivy-operator.devopstales.io
            version: v1
          - description: |
              VulnerabilityReport summarizes vulnerabilities in application dependencies and operating system packages
              built into container images.
            displayName: VulnerabilityReport
            kind: VulnerabilityReport
            name: vulnerabilityreports.trivy-operator.devopstales.io
            version: v1
        description: |
          Trivy Operator for scheduled imagescans and an Admission Control.

          ### Add Github token to extend your Github API Rate Limit
          The Operator use Github to download Trivy database. If your Github API Rate Limit Exceeded add your Github token to the operator deployment as GITHUB_TOKEN variable.

          ```yaml
          ...
          env:
          - name: GITHUB_TOKEN
            value: "githubToken"
          ```

          ### Scheduled Image scans
          Default every 5 minutes execute a scan script. It will get image list from all namespaces with the label `trivy-scan=true`, and then scan this images with trivy, finally we will get metrics on `http://[pod-ip]:9115/metrics`

          You can chane the schedule of the image scanning by setting the `crontab` variable in the namespace-scanner object.


          ### Cache Scan results
          From the 2.4 version you can use an external redis to store scanning results and speed up the scanning process.

          ```bash
          ...
          env:
          - name: REDIS_ENABLED
            value: "True"
          - name: REDIS_BACKEND
            value: redis://redis-cache:6379
          ```

          ### Persist Trivy database cache
          To Persist Trivy cache you need to create a pvc and mount to the Deployment under `/home/trivy-operator/trivy-cache`

          ```yaml
          ...
            volumeMounts:
            - name: cache
              mountPath: "/home/trivy-operator/trivy-cache"
          volumes:
          - name: cache
            persistentVolumeClaim:
              claimName: trivy-cache
          ```

          ### Trivy Image Validator
          The admission controller function can be configured as a ValidatingWebhook in a k8s cluster. Kubernetes will send requests to the admission server when a Pod creation is initiated. The admission controller checks the image using trivy if it is in a namespace with the lable `trivy-operator-validation=true`.

          To enable the admission controller you need to set the `clusterWide` variable to `true` in the namespace-scanner object.

          Enable the scheduled scan and the admission controller for a specific namespace:
          ```bash
          kubectl label namespaces test-apps trivy-scan=true
          # or
          kubectl label namespaces test-apps trivy-operator-validation=true
          ```

          You can define policy to the Admission Controller, by adding annotation to the pod trough the deployment:

          ```bash
          spec:
            ...
            template:
              metadata:
                annotations:
                  trivy.security.devopstales.io/medium: "5"
                  trivy.security.devopstales.io/low: "10"
                  trivy.security.devopstales.io/critical: "2"
          ...
          ```

          ### Monitorng
          Trivy operator has a prometheus endpoint wher yo can get the resoults of the namespace scans and the adission controller.

          ```bash
          curl -s http://10.43.179.39:9115/metrics | grep so_vulnerabilities

          # HELP so_vulnerabilities Container vulnerabilities
          # TYPE so_vulnerabilities gauge
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="UNKNOWN"} 0
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="LOW"} 23
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="MEDIUM"} 93
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="HIGH"} 76
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="CRITICAL"} 25
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="UNKNOWN"} 0
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="LOW"} 23
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="MEDIUM"} 88
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="HIGH"} 60
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="CRITICAL"} 8
          ```

          ```bash
          curl -s http://10.43.179.39:9115/metrics | grep ac_vulnerabilities

          # HELP ac_vulnerabilities Admission Controller vulnerabilities
          # TYPE ac_vulnerabilities gauge
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="UNKNOWN"} 0.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="LOW"} 83.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="MEDIUM"} 6.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="HIGH"} 6.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="CRITICAL"} 4.0
          ```

          ### Policy Report reation
          The PolicyReport object is a protopype object probosed by the Kubernetes policy work group. The Policy Report Custom Resource Definition (CRD) can be used as a common way to provide policy results to Kubernetes cluster administrators and users, using native tools.

          Add the PolicyReport CRDs to your cluster (v1alpha2):
          ```bash
          kubectl create -f https://github.com/kubernetes-sigs/wg-policy-prototypes/raw/master/policy-report/crd/v1alpha2/wgpolicyk8s.io_policyreports.yaml
          ```

          You can enable the Policy Report creatin by setting the `policyreport` to `True` in the NamespaceScanner object.

          This objects can be visualized by the Policy Reporter UI. The Policy Reporter UI is a monitoring and Observability Tool for the PolicyReport CRD with an optional UI. It is created by Kyverno. The main goal was a tool to visualize the resoluts of the Kyverno policies, but because it uses the PolicyReports CRD it can visualize the resoults of the trivy-operator scans.
        displayName: Community Trivy Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - trivy
        - security
        links:
        - name: Documentation
          url: https://devopstales.github.io/trivy-operator
        - name: Blog
          url: https://devopstales.github.io
        maintainers:
        - email: devopstales@protonmail.com
          name: devopstales
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: devopstales
          url: devopstales.github.io
        relatedImages:
        - devopstales/trivy-operator:2.4.1
        - quay.io/openshift-community-operators/community-trivy-operator@sha256:e3652e68e1e569d7f40432fd8cbb7bfdc6738a116ecc1011c71a36f7ca5663c6
        version: 2.4.0
      entries:
      - name: community-trivy-operator.v2.4.0
        version: 2.4.0
      - name: community-trivy-operator.v2.3.0
        version: 2.3.0
      - name: community-trivy-operator.v2.2.0
        version: 2.2.0
      - name: community-trivy-operator.v2.1.1
        version: 2.1.1
      name: stable
    defaultChannel: stable
    packageName: community-trivy-operator
    provider:
      name: devopstales
      url: devopstales.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: hive-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hive-operator.v1.2.5060-b061ef0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:b061ef0a98
          createdAt: "2025-12-18T18:32:21Z"
          description: OpenShift cluster provisioning and management at scale.
          operators.operatorframework.io/internal-objects: '["checkpoints.hive.openshift.io","clusterdeprovisions.hive.openshift.io","clusterprovisions.hive.openshift.io","clusterstates.hive.openshift.io","machinepoolnameleases.hive.openshift.io","clustersyncleases.hiveinternal.openshift.io","clustersyncs.hiveinternal.openshift.io","fakeclusterinstalls.hiveinternal.openshift.io"]'
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeploymentCustomization is the Schema for clusterdeploymentcustomizations
              API.
            displayName: ClusterDeploymentCustomization
            kind: ClusterDeploymentCustomization
            name: clusterdeploymentcustomizations.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: |-
              ClusterPool represents a pool of clusters that should be kept ready to be given out to users. Clusters are removed
              from the pool once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: |-
              MachinePoolNameLease is the Schema for the MachinePoolNameLeases API. This resource is mostly empty
              as we're primarily relying on the name to determine if a lease is available.
              Note that not all cloud providers require the use of a lease for naming, at present this
              is only required for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * IBM Cloud
          * Red Hat OpenStack
          * vSphere

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Troubleshooting](https://github.com/openshift/hive/blob/master/docs/troubleshooting.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
              logLevel: debug
              targetNamespace: hive
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hive-operator:1.2.5060-b061ef0
        - quay.io/openshift-hive/hive:b061ef0a98
        version: 1.2.5060-b061ef0
      entries:
      - name: hive-operator.v1.2.5060-b061ef0
        version: 1.2.5060-b061ef0
      - name: hive-operator.v1.2.5017-715614a
        version: 1.2.5017-715614a
      - name: hive-operator.v1.2.5015-acea5e9
        version: 1.2.5015-acea5e9
      - name: hive-operator.v1.2.5011-47d2de1
        version: 1.2.5011-47d2de1
      - name: hive-operator.v1.2.4989-fc3dac7
        version: 1.2.4989-fc3dac7
      - name: hive-operator.v1.2.4975-f84d11f
        version: 1.2.4975-f84d11f
      - name: hive-operator.v1.2.4953-c248a51
        version: 1.2.4953-c248a51
      - name: hive-operator.v1.2.4928-76a65b6
        version: 1.2.4928-76a65b6
      - name: hive-operator.v1.2.4902-4929f16
        version: 1.2.4902-4929f16
      - name: hive-operator.v1.2.4896-a29a238
        version: 1.2.4896-a29a238
      - name: hive-operator.v1.2.4868-45ae912
        version: 1.2.4868-45ae912
      - name: hive-operator.v1.2.4863-e9ad0fa
        version: 1.2.4863-e9ad0fa
      - name: hive-operator.v1.2.4774-87bff59
        version: 1.2.4774-87bff59
      - name: hive-operator.v1.2.4766-6a82857
        version: 1.2.4766-6a82857
      - name: hive-operator.v1.2.4746-d25e0db
        version: 1.2.4746-d25e0db
      - name: hive-operator.v1.2.4738-b19773e
        version: 1.2.4738-b19773e
      - name: hive-operator.v1.2.4731-41f153f
        version: 1.2.4731-41f153f
      - name: hive-operator.v1.2.4703-02f3f00
        version: 1.2.4703-02f3f00
      - name: hive-operator.v1.2.4693-ec3bc72
        version: 1.2.4693-ec3bc72
      - name: hive-operator.v1.2.4686-553c6c2
        version: 1.2.4686-553c6c2
      - name: hive-operator.v1.2.4682-406d6ca
        version: 1.2.4682-406d6ca
      - name: hive-operator.v1.2.4672-af54e2f
        version: 1.2.4672-af54e2f
      - name: hive-operator.v1.2.4668-3ccd44d
        version: 1.2.4668-3ccd44d
      - name: hive-operator.v1.2.4664-00f84cc
        version: 1.2.4664-00f84cc
      - name: hive-operator.v1.2.4658-c13e207
        version: 1.2.4658-c13e207
      - name: hive-operator.v1.2.4654-3268a18
        version: 1.2.4654-3268a18
      - name: hive-operator.v1.2.4650-531d549
        version: 1.2.4650-531d549
      - name: hive-operator.v1.2.4644-365f074
        version: 1.2.4644-365f074
      - name: hive-operator.v1.2.4638-56d6d64
        version: 1.2.4638-56d6d64
      - name: hive-operator.v1.2.4625-389d717
        version: 1.2.4625-389d717
      - name: hive-operator.v1.2.4615-52100dd
        version: 1.2.4615-52100dd
      - name: hive-operator.v1.2.4605-b41ca3f
        version: 1.2.4605-b41ca3f
      - name: hive-operator.v1.2.4584-95efcb7
        version: 1.2.4584-95efcb7
      - name: hive-operator.v1.2.4574-1ec27ad
        version: 1.2.4574-1ec27ad
      - name: hive-operator.v1.2.4568-b3eca52
        version: 1.2.4568-b3eca52
      - name: hive-operator.v1.2.4564-bdf9d08
        version: 1.2.4564-bdf9d08
      - name: hive-operator.v1.2.4552-bf2d689
        version: 1.2.4552-bf2d689
      - name: hive-operator.v1.2.4532-cddd4f9
        version: 1.2.4532-cddd4f9
      - name: hive-operator.v1.2.4511-1fce770
        version: 1.2.4511-1fce770
      - name: hive-operator.v1.2.4500-b1ac27b
        version: 1.2.4500-b1ac27b
      - name: hive-operator.v1.2.4485-47df0d9
        version: 1.2.4485-47df0d9
      - name: hive-operator.v1.2.4469-7be6433
        version: 1.2.4469-7be6433
      - name: hive-operator.v1.2.4463-d7ead60
        version: 1.2.4463-d7ead60
      - name: hive-operator.v1.2.4461-97686bb
        version: 1.2.4461-97686bb
      - name: hive-operator.v1.2.4459-f910c9b
        version: 1.2.4459-f910c9b
      - name: hive-operator.v1.2.4451-83aedb9
        version: 1.2.4451-83aedb9
      - name: hive-operator.v1.2.4446-e11a23b
        version: 1.2.4446-e11a23b
      - name: hive-operator.v1.2.4441-fdbfaf0
        version: 1.2.4441-fdbfaf0
      - name: hive-operator.v1.2.4436-44323bc
        version: 1.2.4436-44323bc
      - name: hive-operator.v1.2.4428-ceaafa8
        version: 1.2.4428-ceaafa8
      - name: hive-operator.v1.2.4426-fb27114
        version: 1.2.4426-fb27114
      - name: hive-operator.v1.2.4420-fe0e302
        version: 1.2.4420-fe0e302
      - name: hive-operator.v1.2.4418-eb5403f
        version: 1.2.4418-eb5403f
      - name: hive-operator.v1.2.4416-fba8d52
        version: 1.2.4416-fba8d52
      - name: hive-operator.v1.2.4408-9c5806a
        version: 1.2.4408-9c5806a
      - name: hive-operator.v1.2.4404-410fed9
        version: 1.2.4404-410fed9
      - name: hive-operator.v1.2.4400-8c54fc9
        version: 1.2.4400-8c54fc9
      - name: hive-operator.v1.2.4386-6f1fd3e
        version: 1.2.4386-6f1fd3e
      - name: hive-operator.v1.2.4382-0e95d5b
        version: 1.2.4382-0e95d5b
      - name: hive-operator.v1.2.4366-df65e7e
        version: 1.2.4366-df65e7e
      - name: hive-operator.v1.2.4360-de169dd
        version: 1.2.4360-de169dd
      - name: hive-operator.v1.2.4355-e5f809f
        version: 1.2.4355-e5f809f
      name: alpha
    - currentCSV: hive-operator.v2.5.3516-a2ed9b3
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:v2.5.3516-a2ed9b3
          createdAt: "2022-06-03T13:24:12Z"
          description: OpenShift cluster provisioning and management at scale.
          operators.operatorframework.io/internal-objects: '["checkpoints.hive.openshift.io","clusterdeprovisions.hive.openshift.io","clusterprovisions.hive.openshift.io","clusterstates.hive.openshift.io","machinepoolnameleases.hive.openshift.io","clustersyncleases.hiveinternal.openshift.io","clustersyncs.hiveinternal.openshift.io","fakeclusterinstalls.hiveinternal.openshift.io"]'
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: ClusterPool represents a pool of clusters that should be
              kept ready to be given out to users. Clusters are removed from the pool
              once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: MachinePoolNameLease is the Schema for the MachinePoolNameLeases
              API. This resource is mostly empty as we're primarily relying on the
              name to determine if a lease is available. Note that not all cloud providers
              require the use of a lease for naming, at present this is only required
              for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * Red Hat OpenStack

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-hive/hive:v2.5.3516-a2ed9b3
        - quay.io/openshift-community-operators/hive-operator@sha256:be43412a2e4bad2cd9d15e4fbabe0292585c5bbbd65da12d519f30f17d2fe594
        version: 2.5.3516-a2ed9b3
      entries:
      - name: hive-operator.v2.5.3516-a2ed9b3
        version: 2.5.3516-a2ed9b3
      - name: hive-operator.v2.5.3514-4052426
        version: 2.5.3514-4052426
      - name: hive-operator.v2.5.3508-6cb94c6
        version: 2.5.3508-6cb94c6
      - name: hive-operator.v2.5.3506-f42617c
        version: 2.5.3506-f42617c
      - name: hive-operator.v2.5.3495-5cfdd44
        version: 2.5.3495-5cfdd44
      - name: hive-operator.v2.5.3491-6feded1
        version: 2.5.3491-6feded1
      - name: hive-operator.v2.5.3489-6dec9c3
        version: 2.5.3489-6dec9c3
      name: mce-2.0
    - currentCSV: hive-operator.v2.3.3039-60b8a9a
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:v2.3.3039-60b8a9a
          createdAt: "2022-08-15T17:23:39Z"
          description: OpenShift cluster provisioning and management at scale.
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: ClusterPool represents a pool of clusters that should be
              kept ready to be given out to users. Clusters are removed from the pool
              once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: MachinePoolNameLease is the Schema for the MachinePoolNameLeases
              API. This resource is mostly empty as we're primarily relying on the
              name to determine if a lease is available. Note that not all cloud providers
              require the use of a lease for naming, at present this is only required
              for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * Red Hat OpenStack

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/hive-operator@sha256:822fd8e65c241cebedd835bfebf67645199561cfdd6148d5afffb8b35e499ae3
        - quay.io/openshift-hive/hive:v2.3.3039-60b8a9a
        version: 2.3.3039-60b8a9a
      entries:
      - name: hive-operator.v2.3.3039-60b8a9a
        version: 2.3.3039-60b8a9a
      name: ocm-2.3
    - currentCSV: hive-operator.v2.4.3231-ba51985
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:v2.4.3231-ba51985
          createdAt: "2022-08-15T11:53:28Z"
          description: OpenShift cluster provisioning and management at scale.
          operators.operatorframework.io/internal-objects: '["checkpoints.hive.openshift.io","clusterdeprovisions.hive.openshift.io","clusterprovisions.hive.openshift.io","clusterstates.hive.openshift.io","machinepoolnameleases.hive.openshift.io","clustersyncleases.hiveinternal.openshift.io","clustersyncs.hiveinternal.openshift.io","fakeclusterinstalls.hiveinternal.openshift.io"]'
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: ClusterPool represents a pool of clusters that should be
              kept ready to be given out to users. Clusters are removed from the pool
              once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: MachinePoolNameLease is the Schema for the MachinePoolNameLeases
              API. This resource is mostly empty as we're primarily relying on the
              name to determine if a lease is available. Note that not all cloud providers
              require the use of a lease for naming, at present this is only required
              for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * Red Hat OpenStack

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/hive-operator@sha256:9a3cb682afc66ad662045b3d8ff214203cc00be60f66f74564820f6dcf99cd69
        - quay.io/openshift-hive/hive:v2.4.3231-ba51985
        version: 2.4.3231-ba51985
      entries:
      - name: hive-operator.v2.4.3231-ba51985
        version: 2.4.3231-ba51985
      - name: hive-operator.v2.4.3227-74831db
        version: 2.4.3227-74831db
      - name: hive-operator.v2.4.3222-d68346c
        version: 2.4.3222-d68346c
      - name: hive-operator.v2.4.3206-b0714a7
        version: 2.4.3206-b0714a7
      - name: hive-operator.v2.4.3203-672cfe7
        version: 2.4.3203-672cfe7
      - name: hive-operator.v2.4.3201-8c50440
        version: 2.4.3201-8c50440
      - name: hive-operator.v2.4.3199-cce4cb9
        version: 2.4.3199-cce4cb9
      - name: hive-operator.v2.4.3197-6c9c8e4
        version: 2.4.3197-6c9c8e4
      - name: hive-operator.v2.4.3194-f82b7d8
        version: 2.4.3194-f82b7d8
      - name: hive-operator.v2.4.3192-fae0111
        version: 2.4.3192-fae0111
      - name: hive-operator.v2.4.3189-026033b
        version: 2.4.3189-026033b
      - name: hive-operator.v2.4.3180-7299056
        version: 2.4.3180-7299056
      - name: hive-operator.v1.2.3179-0756b70e6
        version: 1.2.3179-0756b70e6
      - name: hive-operator.v1.1.16
        version: 1.1.16
      - name: hive-operator.v1.1.15
        version: 1.1.15
      - name: hive-operator.v1.1.14
        version: 1.1.14
      - name: hive-operator.v1.1.13
        version: 1.1.13
      - name: hive-operator.v1.1.12
        version: 1.1.12
      - name: hive-operator.v1.1.11
        version: 1.1.11
      - name: hive-operator.v1.1.10
        version: 1.1.10
      - name: hive-operator.v1.1.9
        version: 1.1.9
      - name: hive-operator.v1.1.8
        version: 1.1.8
      - name: hive-operator.v1.1.7
        version: 1.1.7
      - name: hive-operator.v1.1.6
        version: 1.1.6
      name: ocm-2.4
    defaultChannel: alpha
    packageName: hive-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-nifi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nifi-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/nifi-operator@sha256:bc776bff99d4a9ead08cf1b688715f3f9e676e9f7747a4df121326e46eb1bf9c
          description: Stackable Operator for Apache NiFi
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/nifi-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for NifiClusterSpec via `CustomResource`
            displayName: nificlusters.nifi.stackable.tech
            kind: NifiCluster
            name: nificlusters.nifi.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache NiFi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nifi
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/nifi-operator@sha256:bc776bff99d4a9ead08cf1b688715f3f9e676e9f7747a4df121326e46eb1bf9c
        - registry.connect.redhat.com/stackable/stackable-apache-nifi-operator@sha256:66f83e489da98272e561125e19a92d9b8347fca790e413ca627211a6f487472c
        version: 25.11.0
      entries:
      - name: nifi-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-nifi-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: PingCAP
      provider-url: ""
    name: tidb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tidb-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pingcap.com/v1alpha1",
                "kind": "TidbCluster",
                "metadata": {
                  "name": "basic"
                },
                "spec": {
                  "version": "v5.4.0",
                  "timezone": "UTC",
                  "pvReclaimPolicy": "Delete",
                  "discovery": {},
                  "pd": {
                    "baseImage": "pingcap/pd",
                    "replicas": 1,
                    "requests": {
                      "storage": "1Gi"
                    },
                    "config": {}
                  },
                  "tikv": {
                    "baseImage": "pingcap/tikv",
                    "replicas": 1,
                    "requests": {
                      "storage": "1Gi"
                    },
                    "config": {
                      "storage": {
                        "reserve-space": "0MB"
                      }
                    }
                  },
                  "tidb": {
                    "baseImage": "pingcap/tidb",
                    "replicas": 1,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "config": {}
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: pingcap/tidb-operator:v1.3.1
          createdAt: 2021-2-15T07-18-39Z
          description: TiDB Operator manages TiDB clusters on Kubernetes and automates
            tasks related to operating a TiDB cluster. It makes TiDB a truly cloud-native
            database.
          repository: https://github.com/pingcap/tidb-operator
          support: KanShiori
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup
            displayName: Backup
            kind: Backup
            name: backups.pingcap.com
            version: v1alpha1
          - description: Backup Schedule
            displayName: BackupSchedule
            kind: BackupSchedule
            name: backupschedules.pingcap.com
            version: v1alpha1
          - description: DM Cluster
            displayName: DMCluster
            kind: DMCluster
            name: dmclusters.pingcap.com
            version: v1alpha1
          - description: Restore
            displayName: Restore
            kind: Restore
            name: restores.pingcap.com
            version: v1alpha1
          - description: Tidb Cluster Auto Scaler
            displayName: TidbClusterAutoScaler
            kind: TidbClusterAutoScaler
            name: tidbclusterautoscalers.pingcap.com
            version: v1alpha1
          - description: Tidb Cluster
            displayName: TidbCluster
            kind: TidbCluster
            name: tidbclusters.pingcap.com
            version: v1alpha1
          - description: Tidb Initializer
            displayName: TidbInitializer
            kind: TidbInitializer
            name: tidbinitializers.pingcap.com
            version: v1alpha1
          - description: Tidb Monitor
            displayName: TidbMonitor
            kind: TidbMonitor
            name: tidbmonitors.pingcap.com
            version: v1alpha1
          - description: Tidb NG Monitoring
            displayName: TidbNGMonitoring
            kind: TidbNGMonitoring
            name: tidbngmonitorings.pingcap.com
            version: v1alpha1
        description: |
          ## About the managed application
          TiDB ("Ti" stands for Titanium) is an open-source, distributed, NewSQL database that supports Hybrid Transactional and Analytical Processing (HTAP) workloads. It is MySQL compatible and features horizontal scalability, strong consistency, and high availability. TiDB can be deployed on-premise or in-cloud.
          ## About this Operator

          TiDB Operator manages TiDB clusters on Kubernetes and automates tasks related to operating a TiDB cluster. It makes TiDB a truly cloud-native database.

          ## Features

          * Safely scaling the TiDB cluster

          TiDB Operator empowers TiDB with horizontal scalability on the cloud.

          * Rolling update of the TiDB cluster

          Gracefully perform rolling updates for the TiDB cluster in order, achieving zero-downtime of the TiDB cluster.

          * Multi-tenant support

          Users can deploy and manage multiple TiDB clusters on a single Kubernetes cluster easily.

          * Automatic failover

          TiDB Operator automatically performs failover for your TiDB cluster when node failures occur.

          * Kubernetes package manager support

          By embracing Kubernetes package manager Helm, users can easily deploy TiDB clusters with only one command.

          * Automatically monitoring TiDB cluster at creating

          Automatically deploy Prometheus, Grafana for TiDB cluster monitoring.

          ## Quick Start
          You can follow our [Get Started](https://docs.pingcap.com/tidb-in-kubernetes/stable/get-started) guide to quickly start a testing Kubernetes cluster and play with TiDB Operator on your own machine.

          ## Documentation

          You can see our documentation at PingCAP website for more in-depth installation and instructions for production:

          - [English](https://docs.pingcap.com/tidb-in-kubernetes/stable)
          - [简体中文](https://docs.pingcap.com/zh/tidb-in-kubernetes/stable)

          All the TiDB Operator documentation is maintained in the [docs-tidb-operator repository](https://github.com/pingcap/docs-tidb-operator).

          ## Community

          Feel free to reach out if you have any questions. The maintainers of this project are reachable via:

          - [TiDB Community Slack](https://pingcap.com/tidbslack/) in the [#sig-k8s](https://tidbcommunity.slack.com/archives/CHD0HA3LZ) channel
          - [Filing an issue](https://github.com/pingcap/tidb-operator/issue) against this repo

          Pull Requests are welcome! Check the [issue tracker](https://github.com/pingcap/tidb-operator/issue) for `status/help-wanted` issues if you're unsure where to start.

          If you're planning a new feature, please file an issue or join [#sig-k8s](https://tidbcommunity.slack.com/archives/CHD0HA3LZ) channel to discuss first.
          ## Prerequisites for enabling this Operator
        displayName: TiDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TiDB
        - SQL
        - Database
        links:
        - name: GitHub
          url: https://github.com/pingcap/tidb-operator
        - name: Documentation
          url: https://docs.pingcap.com/tidb-in-kubernetes/stable
        maintainers:
        - email: zhanghailong@pingcap.com
          name: Daniel Zhang
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: PingCAP
        relatedImages:
        - quay.io/openshift-community-operators/tidb-operator@sha256:4f73b39de6129b906b5eb7bb0b7485f3da406cfad8616f81e375cc8ffcb156ed
        - pingcap/tidb-operator:v1.3.1
        version: 1.3.1
      entries:
      - name: tidb-operator.v1.3.1
        version: 1.3.1
      name: stable
    defaultChannel: stable
    packageName: tidb-operator
    provider:
      name: PingCAP
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Upbound Inc.
      provider-url: https://upbound.io
    name: universal-crossplane
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: universal-crossplane.1.5.1-up.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"pkg.crossplane.io/v1",
                "kind":"Configuration",
                "metadata":{
                  "name":"xp-getting-started-with-aws"
                },
                "spec":{
                  "package":"registry.upbound.io/xp/getting-started-with-aws:v1.2.2"
                }
              },
              {
                "apiVersion":"apiextensions.crossplane.io/v1",
                "kind":"CompositeResourceDefinition",
                "metadata":{
                  "name":"compositepostgresqlinstances.database.example.org"
                },
                "spec":{
                  "group":"database.example.org",
                  "names":{
                    "kind":"CompositePostgreSQLInstance",
                    "plural":"compositepostgresqlinstances"
                  },
                  "claimNames":{
                    "kind":"PostgreSQLInstance",
                    "plural":"postgresqlinstances"
                  },
                  "connectionSecretKeys":[
                      "username",
                      "password",
                      "endpoint",
                      "port"
                  ],
                  "versions":[
                    {
                      "name":"v1alpha1",
                      "served":true,
                      "referenceable":true,
                      "schema":{
                        "openAPIV3Schema":{
                          "type":"object",
                          "properties":{
                            "spec":{
                              "type":"object",
                              "properties":{
                                "parameters":{
                                  "type":"object",
                                  "properties":{
                                    "storageGB":{
                                      "type":"integer"
                                    }
                                  },
                                  "required":[
                                      "storageGB"
                                  ]
                                }
                              },
                              "required":[
                                  "parameters"
                              ]
                            }
                          }
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion":"apiextensions.crossplane.io/v1",
                "kind":"Composition",
                "metadata":{
                  "name":"compositepostgresqlinstances.aws.database.example.org",
                  "labels":{
                    "provider":"aws",
                    "guide":"quickstart",
                    "vpc":"default"
                  }
                },
                "spec":{
                  "writeConnectionSecretsToNamespace":"crossplane-system",
                  "compositeTypeRef":{
                    "apiVersion":"database.example.org/v1alpha1",
                    "kind":"CompositePostgreSQLInstance"
                  },
                  "resources":[
                    {
                      "name":"rdsinstance",
                      "base":{
                        "apiVersion":"database.aws.crossplane.io/v1beta1",
                        "kind":"RDSInstance",
                        "spec":{
                          "forProvider":{
                            "region":"us-east-1",
                            "dbInstanceClass":"db.t2.small",
                            "masterUsername":"masteruser",
                            "engine":"postgres",
                            "engineVersion":"9.6",
                            "skipFinalSnapshotBeforeDeletion":true,
                            "publiclyAccessible":true
                          },
                          "writeConnectionSecretToRef":{
                            "namespace":"crossplane-system"
                          }
                        }
                      },
                      "patches":[
                        {
                          "fromFieldPath":"metadata.uid",
                          "toFieldPath":"spec.writeConnectionSecretToRef.name",
                          "transforms":[
                            {
                              "type":"string",
                              "string":{
                                "fmt":"%s-postgresql"
                              }
                            }
                          ]
                        },
                        {
                          "fromFieldPath":"spec.parameters.storageGB",
                          "toFieldPath":"spec.forProvider.allocatedStorage"
                        }
                      ],
                      "connectionDetails":[
                        {
                          "fromConnectionSecretKey":"username"
                        },
                        {
                          "fromConnectionSecretKey":"password"
                        },
                        {
                          "fromConnectionSecretKey":"endpoint"
                        },
                        {
                          "fromConnectionSecretKey":"port"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion":"pkg.crossplane.io/v1",
                "kind":"Provider",
                "metadata":{
                  "name":"provider-aws"
                },
                "spec":{
                  "package":"crossplane/provider-aws:master"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Application Runtime, Cloud Provider, Database, Integration &
            Delivery, Networking, Storage
          com.redhat.component: universal-crossplane
          com.redhat.delivery.backport: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.6
          containerImage: upbound/uxp-bootstrapper
          createdAt: 2021-05-18T00:00:00+0000
          description: Upbound Universal Crossplane (UXP) is Upbound's official enterprise-grade
            distribution of Crossplane.
          io.k8s.display-name: universal-crossplane
          io.openshift.tags: uxp,crossplane,upbound
          maintainer: Upbound Inc. <info@upbound.io>
          name: universal-crossplane
          ocs.tags: v4.6
          operatorframework.io/initialization-resource: |
            apiVersion: v1
            kind: Secret
            metadata:
              name: upbound-control-plane-token
              namespace: upbound-system
            type: Opaque
            data:
              token: "Output of `up cloud controlplane attach | base64` command"
          operatorframework.io/suggested-namespace: upbound-system
          operators.operatorframework.io.bundle.channel.default.v1: stable
          operators.operatorframework.io.bundle.channels.v1: stable
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: universal-crossplane
          operators.operatorframework.io/internal-objects: '["locks.pkg.crossplane.io"]'
          repository: https://github.com/upbound/universal-crossplane
          summary: Upbound Universal Crossplane (UXP) is Upbound's official enterprise-grade
            distribution of Crossplane.
          support: Upbound Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: CompositeResourceDefinition
            kind: CompositeResourceDefinition
            name: compositeresourcedefinitions.apiextensions.crossplane.io
            version: v1
          - displayName: CompositionRevision
            kind: CompositionRevision
            name: compositionrevisions.apiextensions.crossplane.io
            version: v1alpha1
          - displayName: Composition
            kind: Composition
            name: compositions.apiextensions.crossplane.io
            version: v1
          - displayName: ConfigurationRevision
            kind: ConfigurationRevision
            name: configurationrevisions.pkg.crossplane.io
            version: v1
          - displayName: Configuration
            kind: Configuration
            name: configurations.pkg.crossplane.io
            version: v1
          - displayName: ControllerConfig
            kind: ControllerConfig
            name: controllerconfigs.pkg.crossplane.io
            version: v1alpha1
          - displayName: Lock
            kind: Lock
            name: locks.pkg.crossplane.io
            version: v1alpha1
          - displayName: ProviderRevision
            kind: ProviderRevision
            name: providerrevisions.pkg.crossplane.io
            version: v1
          - displayName: Provider
            kind: Provider
            name: providers.pkg.crossplane.io
            version: v1
        description: |
          ## Overview

          Upbound Universal Crossplane (UXP) is [Upbound's][upbound] official
          enterprise-grade distribution of [Crossplane][crossplane]. It's fully compatible
          with upstream Crossplane, open source, capable of connecting to Upbound Cloud
          for real-time dashboard visibility, and maintained by Upbound. It's the easiest
          way for both individual community members and enterprises to build their
          production control planes.

          ## Quick Start

          1. Install the [Upbound CLI][upbound-cli].
              ```console
              curl -sL https://cli.upbound.io | sh
              # Install with Homebrew
              brew install upbound/tap/up
              ```

          2. [Create an Upbound account][create-account] for a free dashboard for UXP.

          3. Connect UXP to Upbound Cloud.
              ```console
              # The name of your new UXP control plane.
              UXP_NAME=mycrossplane

              up cloud login
              up cloud controlplane attach ${UXP_NAME} | up uxp connect -
              ```

          4. Manage your UXP control plane by [signing in][login] to your Upbound account.

          ## Additional Resources

          - The [UXP Documentation][uxp-documentation] provides additional information
            about UXP and resources for developers, like examples.
          - The [developer guide][developer-guide] describes how to build and run UXP
            locally from source.
          - [UXP Slack][uxp-slack] is where you can go to get all of your UXP questions
            answered.

          [upbound]: https://upbound.io
          [crossplane]: https://crossplane.io/
          [upbound-cli]: https://github.com/upbound/up
          [create-account]: https://cloud.upbound.io/register
          [login]: https://cloud.upbound.io/login
          [uxp-documentation]: https://cloud.upbound.io/docs/uxp
          [developer-guide]: https://github.com/upbound/universal-crossplane/blob/main/docs/developer-guide.md
          [uxp-slack]: https://crossplane.slack.com/archives/upbound
        displayName: Upbound Universal Crossplane (UXP)
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - infrastructure
        - services
        - application
        - database
        - cache
        - bucket
        - infra
        - app
        - ops
        - oam
        - gcp
        - azure
        - aws
        - alibaba
        - cloudsql
        - rds
        - s3
        - azuredatabase
        - asparadb
        - gke
        - aks
        - eks
        links:
        - name: GitHub
          url: https://github.com/upbound/universal-crossplane
        - name: Website
          url: https://upbound.io
        - name: Twitter
          url: https://twitter.com/upbound_io
        - name: Slack
          url: https://slack.crossplane.io/
        maintainers:
        - email: info@upbound.io
          name: Upbound Inc.
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Upbound Inc.
          url: https://upbound.io
        relatedImages:
        - upbound/crossplane:v1.5.1-up.1
        - upbound/uxp-bootstrapper:v1.5.1-up.1
        - upbound/xgql:v0.1.5
        - quay.io/openshift-community-operators/universal-crossplane@sha256:b3104adb471083de96d49fa53f663dcf0e3e7ff5e3573bb1422aa6045277bea0
        version: 1.5.1-up.1
      entries:
      - name: universal-crossplane.1.5.1-up.1
        version: 1.5.1-up.1
      - name: universal-crossplane.1.4.3-up.1
        version: 1.4.3-up.1
      - name: universal-crossplane.1.3.3-up.1
        version: 1.3.3-up.1
      - name: universal-crossplane.1.3.1-up.1
        version: 1.3.1-up.1
      - name: universal-crossplane.1.2.3-up.1
        version: 1.2.3-up.1
      - name: universal-crossplane.1.2.2-up.1
        version: 1.2.2-up.1
      - name: universal-crossplane.1.2.1-up.4
        version: 1.2.1-up.4
      - name: universal-crossplane.1.2.1-up.3
        version: 1.2.1-up.3
      name: stable
    defaultChannel: stable
    packageName: universal-crossplane
    provider:
      name: Upbound Inc.
      url: https://upbound.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: oadp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: oadp-operator.v0.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "Velero",
                "metadata": {
                  "name": "example-velero",
                  "namespace":"openshift-adp"
                },
                "spec": {
                  "backupStorageLocations": [
                    {
                      "config": {
                        "profile": "default",
                        "region": "us-east-1"
                      },
                      "name": "default",
                      "objectStorage": {
                        "bucket": "myBucket",
                        "prefix": "velero"
                      },
                      "provider": "aws"
                    }
                  ],
                  "defaultVeleroPlugins": [
                    "aws",
                    "csi",
                    "openshift"
                  ],
                  "veleroFeatureFlags": [
                    "EnableCSI"
                  ],
                  "enableRestic": true,
                  "volumeSnapshotLocations": [
                    {
                      "config": {
                        "profile": "default",
                        "region": "us-west-1"
                      },
                      "name": "default",
                      "provider": "aws"
                    }
                  ]
                }
               },
                {
                  "apiVersion": "velero.io/v1",
                  "kind": "Backup",
                  "metadata": {
                    "name": "backup",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "BackupStorageLocation",
                  "metadata": {
                    "name": "backupstoragelocation",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "DeleteBackupRequest",
                  "metadata": {
                    "name": "deletebackuprequest",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "DownloadRequest",
                  "metadata": {
                    "name": "downloadrequest",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "PodVolumeBackup",
                  "metadata": {
                    "name": "podvolumebackup",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "PodVolumeRestore",
                  "metadata": {
                    "name": "podvolumerestore",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "ResticRepository",
                  "metadata": {
                    "name": "resticrepository",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "Restore",
                  "metadata": {
                    "name": "restore",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "Schedule",
                  "metadata": {
                    "name": "schedule",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "ServerStatusRequest",
                  "metadata": {
                    "name": "serverstatusrequest",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "VolumeSnapshotLocation",
                  "metadata": {
                    "name": "volumesnapshotlocation",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/konveyor/oadp-operator@sha256:ecb8534fbc245e890b9c7766946d01e1a8b4ce9be359c4ada4c95fd908b679b3
          createdAt: "2020-09-08T12:21:00Z"
          description: |-
            OADP (OpenShift API for Data Protection) operator sets up and installs
            Velero on the OpenShift platform.
          olm.skipRange: '>=0.0.0 <0.4.2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-adp
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          repository: https://github.com/openshift/oadp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Velero is a tool to safely backup and restore, perform disaster
              recovery and migrate Kubernetes cluster resources and persistent volumes.
            displayName: Velero
            kind: Velero
            name: veleroes.oadp.openshift.io
            version: v1alpha1
          - description: BackupStorageLocation represents an object storage location
              (Such as Amazon S3 Bucket) where Velero stores backup objects.
            displayName: BackupStorageLocation
            kind: BackupStorageLocation
            name: backupstoragelocations.velero.io
            version: v1
          - description: Backup is a Velero resource that respresents the capture
              of Kubernetes cluster state at a point in time (API objects and associated
              volume state).
            displayName: Backup
            kind: Backup
            name: backups.velero.io
            version: v1
          - description: DeleteBackupRequest is a request to delete one or more backups.
            displayName: DeleteBackupRequest
            kind: DeleteBackupRequest
            name: deletebackuprequests.velero.io
            version: v1
          - description: DownloadRequest is a request to download an artifact from
              object storage such as a backup log file.
            displayName: DownloadRequest
            kind: DownloadRequest
            name: downloadrequests.velero.io
            version: v1
          - description: A velero pod volume backup is a restic backup of persistent
              volumes attached to a running pod.
            displayName: PodVolumeBackup
            kind: PodVolumeBackup
            name: podvolumebackups.velero.io
            version: v1
          - description: A velero pod volume restore is a restic restore of persistent
              volumes attached to a running pod.
            displayName: PodVolumeRestore
            kind: PodVolumeRestore
            name: podvolumerestores.velero.io
            version: v1
          - description: A restic repository is an indicator of a connection from
              the restic server to the backupstoragelocation.
            displayName: ResticRepository
            kind: ResticRepository
            name: resticrepositories.velero.io
            version: v1
          - description: Restore is a Velero resource that represents the application
              of resources from a Velero backup to a target Kubernetes cluster.
            displayName: Restore
            kind: Restore
            name: restores.velero.io
            version: v1
          - description: Schedule is a Velero resource that represents a pre-scheduled
              or periodic Backup that should be run.
            displayName: Schedule
            kind: Schedule
            name: schedules.velero.io
            version: v1
          - description: ServerStatusRequest is a request to access current status
              information about the Velero server.
            displayName: ServerStatusRequest
            kind: ServerStatusRequest
            name: serverstatusrequests.velero.io
            version: v1
          - description: VolumeSnapshotLocation is a location where Velero stores
              volume snapshots.
            displayName: VolumeSnapshotLocation
            kind: VolumeSnapshotLocation
            name: volumesnapshotlocations.velero.io
            version: v1
        description: OADP (OpenShift API for Data Protection) operator sets up and
          installs Velero on the OpenShift platform.
        displayName: OADP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - velero
        - openshift
        - oadp
        links:
        - name: OADP Operator
          url: https://oadp.konveyor.io/
        maintainers:
        - email: dymurray@redhat.com
          name: Dylan Murray
        - email: spampatt@redhat.com
          name: Shubham Dilip Pampattiwar
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/konveyor/velero-plugin-for-microsoft-azure@sha256:62a344e5cf196e55dae92e537648987d758ccc75985bc45e9be6d0646a9e64d0
        - quay.io/konveyor/velero-restic-restore-helper@sha256:c4d12829e42cabe70b662a659875900677dfb415f912f931c3bf4c09a26aed5b
        - quay.io/openshift-community-operators/oadp-operator@sha256:f8c5c6e59f13db8847080ea6d964da6e50e56f7d373bcc4e4278b1a8a80395e4
        - quay.io/konveyor/openshift-velero-plugin@sha256:aec8b4fc66cfcebd5a35ce99d8c985453ebf25c11453d30256089a8b425990b5
        - quay.io/konveyor/velero-plugin-for-gcp@sha256:3300458b1d6c1514dca7d24353ad03bd92db396b2a29f7d3522563160a5f5219
        - quay.io/konveyor/velero@sha256:e7865cc707664eb6ee767e77ccd933420604c2562736b53e16c8043a51df9d86
        - quay.io/konveyor/registry@sha256:b74ab3278b79eb89f99b6970c6aa0f5306221a8495b5496faad6cab2f74ff2cd
        - quay.io/konveyor/velero-plugin-for-aws@sha256:2197c6fef32910747526d33c1462b75cb7940aeace65791d0a5ddaa038480e52
        - quay.io/konveyor/oadp-operator@sha256:ecb8534fbc245e890b9c7766946d01e1a8b4ce9be359c4ada4c95fd908b679b3
        - quay.io/konveyor/velero-plugin-for-csi@sha256:5c2261effc902d8baa16e38265f9ad1fbe5284a3e6abd2bbc97761c161fa92cf
        version: 0.4.2
      entries:
      - name: oadp-operator.v0.4.2
        version: 0.4.2
      - name: oadp-operator.v0.4.1
        version: 0.4.1
      - name: oadp-operator.v0.4.0
        version: 0.4.0
      - name: oadp-operator.v0.3.0
        version: 0.3.0
      name: beta
    - currentCSV: oadp-operator.v0.5.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "DataProtectionApplication",
                "metadata": {
                  "name": "velero-sample"
                },
                "spec": {
                  "backupLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-east-1"
                        },
                        "credential": {
                          "key": "cloud",
                          "name": "cloud-credentials"
                        },
                        "default": true,
                        "objectStorage": {
                          "bucket": "my-bucket-name",
                          "prefix": "velero"
                        },
                        "provider": "aws"
                      }
                    }
                  ],
                  "configuration": {
                    "restic": {
                      "enable": true
                    },
                    "velero": {
                      "defaultPlugins": [
                        "openshift",
                        "aws"
                      ]
                    }
                  },
                  "snapshotLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-west-2"
                        },
                        "provider": "aws"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "BackupStorageLocation",
                "metadata": {
                  "name": "backupstoragelocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DeleteBackupRequest",
                "metadata": {
                  "name": "deletebackuprequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DownloadRequest",
                "metadata": {
                  "name": "downloadrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeBackup",
                "metadata": {
                  "name": "podvolumebackup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeRestore",
                "metadata": {
                  "name": "podvolumerestore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "ResticRepository",
                "metadata": {
                  "name": "resticrepository",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Schedule",
                "metadata": {
                  "name": "schedule",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "ServerStatusRequest",
                "metadata": {
                  "name": "serverstatusrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "VolumeSnapshotLocation",
                "metadata": {
                  "name": "volumesnapshotlocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/konveyor/oadp-operator@sha256:90609044d52173619ea1e63ddef0ef3e7c1c939ac737b64bd427cbed5374dd27
          createdAt: "2020-09-08T12:21:00Z"
          description: |-
            OADP (OpenShift API for Data Protection) operator sets up and installs
            Velero on the OpenShift platform.
          olm.skipRange: '>=0.0.0 <0.5.6'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-adp
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/oadp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is a Velero resource that respresents the capture
              of Kubernetes cluster state at a point in time (API objects and associated
              volume state).
            displayName: Backup
            kind: Backup
            name: backups.velero.io
            version: v1
          - description: BackupStorageLocation represents an object storage location
              (Such as Amazon S3 Bucket) where Velero stores backup objects.
            displayName: BackupStorageLocation
            kind: BackupStorageLocation
            name: backupstoragelocations.velero.io
            version: v1
          - kind: CloudStorage
            name: cloudstorages.oadp.openshift.io
            version: v1alpha1
          - description: DataProtectionApplication represents configuration to install
              a data protection application to safely backup and restore, perform
              disaster recovery and migrate Kubernetes cluster resources and persistent
              volumes.
            displayName: DataProtectionApplication
            kind: DataProtectionApplication
            name: dataprotectionapplications.oadp.openshift.io
            version: v1alpha1
          - description: DeleteBackupRequest is a request to delete one or more backups.
            displayName: DeleteBackupRequest
            kind: DeleteBackupRequest
            name: deletebackuprequests.velero.io
            version: v1
          - description: DownloadRequest is a request to download an artifact from
              object storage such as a backup log file.
            displayName: DownloadRequest
            kind: DownloadRequest
            name: downloadrequests.velero.io
            version: v1
          - description: A velero pod volume backup is a restic backup of persistent
              volumes attached to a running pod.
            displayName: PodVolumeBackup
            kind: PodVolumeBackup
            name: podvolumebackups.velero.io
            version: v1
          - description: A velero pod volume restore is a restic restore of persistent
              volumes attached to a running pod.
            displayName: PodVolumeRestore
            kind: PodVolumeRestore
            name: podvolumerestores.velero.io
            version: v1
          - description: A restic repository is an indicator of a connection from
              the restic server to the backupstoragelocation.
            displayName: ResticRepository
            kind: ResticRepository
            name: resticrepositories.velero.io
            version: v1
          - description: Restore is a Velero resource that represents the application
              of resources from a Velero backup to a target Kubernetes cluster.
            displayName: Restore
            kind: Restore
            name: restores.velero.io
            version: v1
          - description: Schedule is a Velero resource that represents a pre-scheduled
              or periodic Backup that should be run.
            displayName: Schedule
            kind: Schedule
            name: schedules.velero.io
            version: v1
          - description: ServerStatusRequest is a request to access current status
              information about the Velero server.
            displayName: ServerStatusRequest
            kind: ServerStatusRequest
            name: serverstatusrequests.velero.io
            version: v1
          - description: VolumeSnapshotLocation is a location where Velero stores
              volume snapshots.
            displayName: VolumeSnapshotLocation
            kind: VolumeSnapshotLocation
            name: volumesnapshotlocations.velero.io
            version: v1
        description: OADP (OpenShift API for Data Protection) operator sets up and
          installs Data Protection Applications on the OpenShift platform.
        displayName: OADP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - velero
        - openshift
        - oadp
        links:
        - name: OADP Operator
          url: https://oadp.konveyor.io/
        maintainers:
        - email: dymurray@redhat.com
          name: Dylan Murray
        - email: spampatt@redhat.com
          name: Shubham Dilip Pampattiwar
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/konveyor/velero@sha256:0ea5336dcbf0a1fab561697b24da01a0e5b533ee23553fbfd5f8e002f5a31c3e
        - quay.io/konveyor/velero-restic-restore-helper@sha256:c16248d027c09cd5b7360ae38484df88ca1cc01f9e470e3eade95076ee1a6b84
        - quay.io/konveyor/registry@sha256:1be970879206258335357e3cf630138c24b8a5ccab35aae05eccb260e5e8ffb4
        - quay.io/konveyor/velero-plugin-for-csi@sha256:8c36ccfd294dafc415a7f113770cbbd66dbf6ecf8fef3bc4e73adc9878c606b0
        - quay.io/konveyor/velero-plugin-for-microsoft-azure@sha256:2d0089cbe715b482fb42e1acd9add70b975a8575636d8b143e6f90cef317ea13
        - quay.io/openshift-community-operators/oadp-operator@sha256:b7b4d340157513da2ebef6bc7bc262967d0e825e2baa1f2bc2ab2e170457e015
        - quay.io/konveyor/oadp-operator@sha256:90609044d52173619ea1e63ddef0ef3e7c1c939ac737b64bd427cbed5374dd27
        - quay.io/konveyor/openshift-velero-plugin@sha256:221ab0bcd1d95fc166ef7319d187e196b59d2fbf9eefd29d91bd6435d45b5c3c
        - quay.io/konveyor/velero-plugin-for-aws@sha256:1e8bc27d6b60000e1406085d582910cb530af3fb901ef9bc780628df6c766288
        - quay.io/konveyor/velero-plugin-for-gcp@sha256:ee463ed2a8019c560961b118f8a87b587ed302f24fd25480c5d4ddad2557e92f
        version: 0.5.6
      entries:
      - name: oadp-operator.v0.5.6
        version: 0.5.6
      - name: oadp-operator.v0.5.5
        version: 0.5.5
      - name: oadp-operator.v0.5.4
        version: 0.5.4
      - name: oadp-operator.v0.5.3
        version: 0.5.3
      - name: oadp-operator.v0.5.2
        version: 0.5.2
      - name: oadp-operator.v0.5.1
        version: 0.5.1
      - name: oadp-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: oadp-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: quay-bridge-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: quay-bridge-operator.v3.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "my-quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecretName": "<NAMESPACE>/<SECRET>",
                  "quayHostname": "https://<QUAY_URL>",
                  "insecureRegistry": false,
                  "whitelistNamespaces": ["default"]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:501fe9b003b5066b3936def0ef4de05abd1a12e795e718d6c9a62d2c6c804c2e
          createdAt: 2021-11-02 11:11 UTC
          description: Enhance OCP using Red Hat Quay container registry
          repository: https://github.com/redhat-cop/quay-openshift-registry-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a connected Quay instance.
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.redhatcop.redhat.io
            version: v1alpha1
        description: "## Overview\n\nThe OpenShift Container Platform contains an
          in cluster image registry for pushing and pulling images that either produced
          within the cluster or are references from external sources. Quay is a highly
          available, enterprise grade image registry with enhanced role based access
          control (RBAC) features. The goal of this operator is to support replicating
          the features found within OpenShift intgrated image registry with Quay.\n\n##
          Functionality\n\nThe following capabilities are enabled through this operator:\n\n*
          Synchronization of OpenShift namespaces as Quay organizations\n    * Creation
          of Robot accounts for each default namespace service account\n    * Creation
          of Secrets for each created Robot Account\n        * Associate Robot Secret
          to Service Account as Mountable and Image Pull Secret\n    * Synchronization
          of OpenShift ImageStreams as Quay Repositories\n* Automatically rewrite
          new Builds making use of ImageStreams to output to Quay\n* Automatically
          import ImageStream tag once build completes\n\n## Prerequisites\n\nThe following
          requirements must be satisfied prior to setting and configuring the integration
          between OpenShift and Quay:\n\n* A Red Hat Quay environment with a user
          with superuser permissions\n* A Red Hat OpenShift Container Platform environment
          (at least version 4.0) with cluster-admin permissions on an OpenShift cluster
          \n*\tOpenShift Command Line tool (CLI)\n\n## Setup and Configuration\n\nThe
          setup process involves steps within both Quay and OpenShift as described
          below:\n\n### Quay Setup\n\nThe integration between OpenShift and Quay makes
          extensive use of the Quay RESTFul API. To allow for other methods aside
          from user credentials to be used for authenticating against the API, an
          application is required to be created. When an application is created, an
          OAuth token is generated which can be used by the operator in OpenShift.
          Applications are created within a Quay organization. While an existing organization
          can be utilized, it is recommended that a dedicated organization be used.\n\n1.\tLogin
          to Quay as a user with superuser access and select the organization for
          which the external application will be configured within.\n2.\tOn the left
          hand side of the page, select **Applications**\n3.\tCreate a new application
          by selecting the **Create New Application** button and entering a name for
          the application\n4.\tAfter the new application has been created, select
          the application that was created\n5.\tOn the lefthand navigation bar, select
          the **Generate Token** button to create a new OAuth2 token\n6.\tSelect all
          of the checkboxes to grant the necessary access that is needed for the integration\n7.\tReview
          the permissions that will be assigned and then select the **Authorize Application**
          button\n8.\tTake note of the generated Access Token as it will be needed
          in the following section\n\n### OpenShift Setup\n\nTo complete the process
          to begin to integrate OpenShift and Quay, several steps are required. Before
          beginning, ensure that you have the OpenShift Command Line tool installed
          and that you are logged into OpenShift as a cluster administrator. \n\n####
          Create A Secret for the Quay OAuth Token\n\nThe Operator will use the previously
          obtained Access Token to communicate with Quay. Store this token within
          OpenShift as a secret.\n\nExecute the following command to create a secret
          called `quay-integration` with a key called `token` containing the access
          token:\n\n```\n$ oc create secret generic quay-integration --from-literal=token=<access_token>\n```\n\nThis
          token will be referenced in the final section.\n\n#### MutatingWebhookConfiguration
          Support\n\nSupport for dynamic interception of API requests that are performed
          as part of OpenShift’s typical build process is facilitated through a [MutatingWebhookConfiguration](https://docs.openshift.com/container-platform/3.11/architecture/additional_concepts/dynamic_admission_controllers.html).
          A MutatingWebhookConfiguration allows for invoking an API running within
          a project on OpenShift when certain API requests are received. In particular,
          to support Quay’s integration with OpenShift, any new Build requests should
          be intercepted so that the output can be modified to target Quay instead
          of OpenShift’s integrated registry. \n\nKubernetes requires that the webhook
          endpoint is secured via SSL using a certificate that makes use of the certificate
          authority for the cluster. Fortunately, OpenShift provides support for generating
          a certificate signed by the cluster. A script is available in the documentation
          called `webhook-create-signed-cert.sh` that automates the process for requesting
          a new certificate.\n\nFirst, create a `Service` for the Operator's webhook
          endpoint:\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  labels:\n
          \   name: quay-bridge-operator\n  name: quay-bridge-operator\n  namespace:
          openshift-operators\nspec:\n  ports:\n    - name: https\n      port: 443\n
          \     protocol: TCP\n      targetPort: 8443\n  selector:\n    name: quay-bridge-operator\n
          \ sessionAffinity: None\n  type: ClusterIP\n```\n\nExecute the following
          command to request the certificate:\n\n```\n./webhook-create-signed-cert.sh
          --namespace openshift-operators --secret quay-bridge-operator-webhook-certs
          --service quay-bridge-operator\n```\n\nThe result will place the newly created
          private key and certificate within a secret within the secret specified.
          The secret will be mounted into the appropriate located within the operator
          as declared in the Deployment of the Operator. \n\nOnce the secret has been
          created, focus can shift to the `MutatingWebhookConfiguration` (see below).
          The majority of the content should be in place to apply to the cluster.
          The one section that requires configuration is the caBundle property. This
          refers to the Certificate Authority (CA) for the OpenShift environment.
          The OpenShift CA is available as a _ConfigMap_ within the `kube-system`
          namespace.\n\nExecute the following command to retrieve the CA and format
          the result as a single line so that it can be entered into the MutatingWebhookConfiguration
          resource:\n\n```\noc get configmap -n kube-system extension-apiserver-authentication
          -o=jsonpath='{.data.client-ca-file}' | base64 | tr -d '\\n'\n```\n\nReplace
          the `${CA_BUNDLE}` variable in the following `MutatingWebhookConfiguration`
          YAML and create it:\n\n```yaml\napiVersion: admissionregistration.k8s.io/v1\nkind:
          MutatingWebhookConfiguration \nmetadata:\n  name: quay-bridge-operator\nwebhooks:\n
          \ - name: quayintegration.redhatcop.redhat.io\n    clientConfig: \n      service:\n
          \       namespace: openshift-operators\n        name: quay-bridge-operator\n
          \       path: \"/admissionwebhook\"\n      caBundle: \"${CA_BUNDLE}\"\n
          \   rules: \n    - operations:  [ \"CREATE\" ]\n      apiGroups: [ \"build.openshift.io\"
          ]\n      apiVersions: [\"v1\" ]\n      resources: [ \"builds\" ]\n    failurePolicy:
          Fail\n```\n\n_Note: Until the operator is running, new requests for builds
          will fail since the webserver the MutatingWebhookConfiguration invokes is
          not available and a proper is response is required in order for the object
          to be persisted in etcd._\n\n#### Create the QuayIntegration Custom Resource\n\nFinally,
          to complete the integration between OpenShift and Quay, a `QuayIntegration`
          custom resource needs to be created.\n\nThe following is an example of a
          basic definition of a `QuayIntegration` resource associated from the associated
          CRD.\n\n```\napiVersion: redhatcop.redhat.io/v1alpha1\nkind: QuayIntegration\nmetadata:\n
          \ name: example-quayintegration\nspec:\n  clusterID: openshift\n  credentialsSecretName:
          <NAMESPACE>/<SECRET>\n  quayHostname: https://<QUAY_URL>\n```\n\nThe _clusterID_
          is a value which should be unique across the entire ecosystem. This value
          is optional and defaults to `openshift`.\n\nThe _credentialsSecretName_
          is a NamespacedName value of the secret containing the token that was previously
          created.\n\nNote: If Quay is using self signed certificates, the property
          `insecureRegistry: true`\n\nOrganizations within Quay should be created
          for the related namespaces in OpenShift."
        displayName: Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Source Code
          url: https://github.com/redhat-cop/quay-openshift-registry-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:4478b8a78bdde23e0d40476f8ad9e4bf0628fba7603a390e8de7e6a319abc1ec
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:501fe9b003b5066b3936def0ef4de05abd1a12e795e718d6c9a62d2c6c804c2e
        version: 3.4.7
      entries:
      - name: quay-bridge-operator.v3.4.7
        version: 3.4.7
      name: quay-v3.4
    - currentCSV: quay-bridge-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "my-quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecretName": "<NAMESPACE>/<SECRET>",
                  "quayHostname": "https://<QUAY_URL>",
                  "insecureRegistry": false,
                  "whitelistNamespaces": ["default"]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9149df5ffc83dce6593072b7f72805e07e700b84527e45b4b7486b9c38f70731
          createdAt: 2021-09-15 23:09 UTC
          description: Enhance OCP using Red Hat Quay container registry
          olm.skipRange: '>=3.4.x <3.5.7'
          repository: https://github.com/redhat-cop/quay-openshift-registry-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a connected Quay instance.
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.redhatcop.redhat.io
            version: v1alpha1
        description: "## Overview\n\nThe OpenShift Container Platform contains an
          in cluster image registry for pushing and pulling images that either produced
          within the cluster or are references from external sources. Quay is a highly
          available, enterprise grade image registry with enhanced role based access
          control (RBAC) features. The goal of this operator is to support replicating
          the features found within OpenShift intgrated image registry with Quay.\n\n##
          Functionality\n\nThe following capabilities are enabled through this operator:\n\n*
          Synchronization of OpenShift namespaces as Quay organizations\n    * Creation
          of Robot accounts for each default namespace service account\n    * Creation
          of Secrets for each created Robot Account\n        * Associate Robot Secret
          to Service Account as Mountable and Image Pull Secret\n    * Synchronization
          of OpenShift ImageStreams as Quay Repositories\n* Automatically rewrite
          new Builds making use of ImageStreams to output to Quay\n* Automatically
          import ImageStream tag once build completes\n\n## Prerequisites\n\nThe following
          requirements must be satisfied prior to setting and configuring the integration
          between OpenShift and Quay:\n\n* A Red Hat Quay environment with a user
          with superuser permissions\n* A Red Hat OpenShift Container Platform environment
          (at least version 4.0) with cluster-admin permissions on an OpenShift cluster
          \n*\tOpenShift Command Line tool (CLI)\n\n## Setup and Configuration\n\nThe
          setup process involves steps within both Quay and OpenShift as described
          below:\n\n### Quay Setup\n\nThe integration between OpenShift and Quay makes
          extensive use of the Quay RESTFul API. To allow for other methods aside
          from user credentials to be used for authenticating against the API, an
          application is required to be created. When an application is created, an
          OAuth token is generated which can be used by the operator in OpenShift.
          Applications are created within a Quay organization. While an existing organization
          can be utilized, it is recommended that a dedicated organization be used.\n\n1.\tLogin
          to Quay as a user with superuser access and select the organization for
          which the external application will be configured within.\n2.\tOn the left
          hand side of the page, select **Applications**\n3.\tCreate a new application
          by selecting the **Create New Application** button and entering a name for
          the application\n4.\tAfter the new application has been created, select
          the application that was created\n5.\tOn the lefthand navigation bar, select
          the **Generate Token** button to create a new OAuth2 token\n6.\tSelect all
          of the checkboxes to grant the necessary access that is needed for the integration\n7.\tReview
          the permissions that will be assigned and then select the **Authorize Application**
          button\n8.\tTake note of the generated Access Token as it will be needed
          in the following section\n\n### OpenShift Setup\n\nTo complete the process
          to begin to integrate OpenShift and Quay, several steps are required. Before
          beginning, ensure that you have the OpenShift Command Line tool installed
          and that you are logged into OpenShift as a cluster administrator. \n\n####
          Create A Secret for the Quay OAuth Token\n\nThe Operator will use the previously
          obtained Access Token to communicate with Quay. Store this token within
          OpenShift as a secret.\n\nExecute the following command to create a secret
          called `quay-integration` with a key called `token` containing the access
          token:\n\n```\n$ oc create secret generic quay-integration --from-literal=token=<access_token>\n```\n\nThis
          token will be referenced in the final section.\n\n#### MutatingWebhookConfiguration
          Support\n\nSupport for dynamic interception of API requests that are performed
          as part of OpenShift’s typical build process is facilitated through a [MutatingWebhookConfiguration](https://docs.openshift.com/container-platform/3.11/architecture/additional_concepts/dynamic_admission_controllers.html).
          A MutatingWebhookConfiguration allows for invoking an API running within
          a project on OpenShift when certain API requests are received. In particular,
          to support Quay’s integration with OpenShift, any new Build requests should
          be intercepted so that the output can be modified to target Quay instead
          of OpenShift’s integrated registry. \n\nKubernetes requires that the webhook
          endpoint is secured via SSL using a certificate that makes use of the certificate
          authority for the cluster. Fortunately, OpenShift provides support for generating
          a certificate signed by the cluster. A script is available in the documentation
          called `webhook-create-signed-cert.sh` that automates the process for requesting
          a new certificate.\n\nFirst, create a `Service` for the Operator's webhook
          endpoint:\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  labels:\n
          \   name: quay-bridge-operator\n  name: quay-bridge-operator\n  namespace:
          openshift-operators\nspec:\n  ports:\n    - name: https\n      port: 443\n
          \     protocol: TCP\n      targetPort: 8443\n  selector:\n    name: quay-bridge-operator\n
          \ sessionAffinity: None\n  type: ClusterIP\n```\n\nExecute the following
          command to request the certificate:\n\n```\n./webhook-create-signed-cert.sh
          --namespace openshift-operators --secret quay-bridge-operator-webhook-certs
          --service quay-bridge-operator\n```\n\nThe result will place the newly created
          private key and certificate within a secret within the secret specified.
          The secret will be mounted into the appropriate located within the operator
          as declared in the Deployment of the Operator. \n\nOnce the secret has been
          created, focus can shift to the `MutatingWebhookConfiguration` (see below).
          The majority of the content should be in place to apply to the cluster.
          The one section that requires configuration is the caBundle property. This
          refers to the Certificate Authority (CA) for the OpenShift environment.
          The OpenShift CA is available as a _ConfigMap_ within the `kube-system`
          namespace.\n\nExecute the following command to retrieve the CA and format
          the result as a single line so that it can be entered into the MutatingWebhookConfiguration
          resource:\n\n```\noc get configmap -n kube-system extension-apiserver-authentication
          -o=jsonpath='{.data.client-ca-file}' | base64 | tr -d '\\n'\n```\n\nReplace
          the `${CA_BUNDLE}` variable in the following `MutatingWebhookConfiguration`
          YAML and create it:\n\n```yaml\napiVersion: admissionregistration.k8s.io/v1\nkind:
          MutatingWebhookConfiguration \nmetadata:\n  name: quay-bridge-operator\nwebhooks:\n
          \ - name: quayintegration.redhatcop.redhat.io\n    clientConfig: \n      service:\n
          \       namespace: openshift-operators\n        name: quay-bridge-operator\n
          \       path: \"/admissionwebhook\"\n      caBundle: \"${CA_BUNDLE}\"\n
          \   rules: \n    - operations:  [ \"CREATE\" ]\n      apiGroups: [ \"build.openshift.io\"
          ]\n      apiVersions: [\"v1\" ]\n      resources: [ \"builds\" ]\n    failurePolicy:
          Fail\n    sideEffects: None\n    admissionReviewVersions: [v1beta1]\n    matchPolicy:
          Exact\n    timeoutSeconds: 30  \n```\n\n_Note: Until the operator is running,
          new requests for builds will fail since the webserver the MutatingWebhookConfiguration
          invokes is not available and a proper is response is required in order for
          the object to be persisted in etcd._\n\n#### Create the QuayIntegration
          Custom Resource\n\nFinally, to complete the integration between OpenShift
          and Quay, a `QuayIntegration` custom resource needs to be created.\n\nThe
          following is an example of a basic definition of a `QuayIntegration` resource
          associated from the associated CRD.\n\n```\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          QuayIntegration\nmetadata:\n  name: example-quayintegration\nspec:\n  clusterID:
          openshift\n  credentialsSecretName: <NAMESPACE>/<SECRET>\n  quayHostname:
          https://<QUAY_URL>\n```\n\nThe _clusterID_ is a value which should be unique
          across the entire ecosystem. This value is optional and defaults to `openshift`.\n\nThe
          _credentialsSecretName_ is a NamespacedName value of the secret containing
          the token that was previously created.\n\nNote: If Quay is using self signed
          certificates, the property `insecureRegistry: true`\n\nOrganizations within
          Quay should be created for the related namespaces in OpenShift."
        displayName: Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Source Code
          url: https://github.com/redhat-cop/quay-openshift-registry-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:6c2ab763239f6e5a2a72890120bf1f20f6277850cec59a7e11cea2b6a06f12e8
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9149df5ffc83dce6593072b7f72805e07e700b84527e45b4b7486b9c38f70731
        version: 3.5.7
      entries:
      - name: quay-bridge-operator.v3.5.7
        version: 3.5.7
      name: quay-v3.5
    - currentCSV: quay-bridge-operator.v3.10.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:c8dad99f3b281a8ab882d819e6262b86c8bda4d5de759f8095cf58c39a992608
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.7.x <3.10.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.10.17
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:8b475114a5f77f7c041509a30246769a5f9064510724c8fc99ac29164dc3a0bb
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:c8dad99f3b281a8ab882d819e6262b86c8bda4d5de759f8095cf58c39a992608
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        version: 3.10.17
      entries:
      - name: quay-bridge-operator.v3.10.17
        version: 3.10.17
      - name: quay-bridge-operator.v3.10.16
        version: 3.10.16
      - name: quay-bridge-operator.v3.10.15
        version: 3.10.15
      - name: quay-bridge-operator.v3.10.14
        version: 3.10.14
      - name: quay-bridge-operator.v3.10.13
        version: 3.10.13
      - name: quay-bridge-operator.v3.10.12
        version: 3.10.12
      - name: quay-bridge-operator.v3.10.11
        version: 3.10.11
      - name: quay-bridge-operator.v3.10.10
        version: 3.10.10
      - name: quay-bridge-operator.v3.10.9
        version: 3.10.9
      - name: quay-bridge-operator.v3.10.8
        version: 3.10.8
      - name: quay-bridge-operator.v3.10.7
        version: 3.10.7
      - name: quay-bridge-operator.v3.10.6
        version: 3.10.6
      - name: quay-bridge-operator.v3.10.5
        version: 3.10.5
      - name: quay-bridge-operator.v3.10.4
        version: 3.10.4
      - name: quay-bridge-operator.v3.10.3
        version: 3.10.3
      - name: quay-bridge-operator.v3.10.2
        version: 3.10.2
      - name: quay-bridge-operator.v3.10.1
        version: 3.10.1
      - name: quay-bridge-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: quay-bridge-operator.v3.11.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:511f8471db70e8d5fd9d0b547c73f1416bbac6f0fe6cdeb6c59a9ef8bd845ac2
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.8.x <3.11.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.11.13
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:56653df97e4498ecd67b9645d75e44f65c625594e312dbcf0f09937b57d76010
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:2b6b1a0b56cfb348ed4035b13d31501ff5757c101ed21027b330a7852576b891
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:511f8471db70e8d5fd9d0b547c73f1416bbac6f0fe6cdeb6c59a9ef8bd845ac2
        version: 3.11.13
      entries:
      - name: quay-bridge-operator.v3.11.13
        version: 3.11.13
      - name: quay-bridge-operator.v3.11.12
        version: 3.11.12
      - name: quay-bridge-operator.v3.11.11
        version: 3.11.11
      - name: quay-bridge-operator.v3.11.10
        version: 3.11.10
      - name: quay-bridge-operator.v3.11.9
        version: 3.11.9
      - name: quay-bridge-operator.v3.11.8
        version: 3.11.8
      - name: quay-bridge-operator.v3.11.7
        version: 3.11.7
      - name: quay-bridge-operator.v3.11.6
        version: 3.11.6
      - name: quay-bridge-operator.v3.11.5
        version: 3.11.5
      - name: quay-bridge-operator.v3.11.4
        version: 3.11.4
      - name: quay-bridge-operator.v3.11.3
        version: 3.11.3
      - name: quay-bridge-operator.v3.11.2
        version: 3.11.2
      - name: quay-bridge-operator.v3.11.1
        version: 3.11.1
      - name: quay-bridge-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: quay-bridge-operator.v3.12.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:d817c52045a8f5aeb5baebd15843e9bf4a4097fc8d74ff2aa9108442d8fb922e
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.9.x <3.12.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.12.13
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:0a978bbe91e0e0b8bab6862522f8a0aa8e974b778cc36b83f0781081621c8e23
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:d817c52045a8f5aeb5baebd15843e9bf4a4097fc8d74ff2aa9108442d8fb922e
        version: 3.12.13
      entries:
      - name: quay-bridge-operator.v3.12.13
        version: 3.12.13
      - name: quay-bridge-operator.v3.12.12
        version: 3.12.12
      - name: quay-bridge-operator.v3.12.11
        version: 3.12.11
      - name: quay-bridge-operator.v3.12.10
        version: 3.12.10
      - name: quay-bridge-operator.v3.12.9
        version: 3.12.9
      - name: quay-bridge-operator.v3.12.8
        version: 3.12.8
      - name: quay-bridge-operator.v3.12.7
        version: 3.12.7
      - name: quay-bridge-operator.v3.12.6
        version: 3.12.6
      - name: quay-bridge-operator.v3.12.5
        version: 3.12.5
      - name: quay-bridge-operator.v3.12.4
        version: 3.12.4
      - name: quay-bridge-operator.v3.12.3
        version: 3.12.3
      - name: quay-bridge-operator.v3.12.2
        version: 3.12.2
      - name: quay-bridge-operator.v3.12.1
        version: 3.12.1
      - name: quay-bridge-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: quay-bridge-operator.v3.13.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:ae3b4842a685d900754edcb1f4adc0a11c85d0b6c9b70b2b06ba39e8dc0bb021
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.10.x <3.13.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.13.10
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:bd1a02c47b6c32010fe19de6a994577b2c49ed692606d185d4252bb5ba347ecb
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:ae3b4842a685d900754edcb1f4adc0a11c85d0b6c9b70b2b06ba39e8dc0bb021
        version: 3.13.10
      entries:
      - name: quay-bridge-operator.v3.13.10
        version: 3.13.10
      - name: quay-bridge-operator.v3.13.9
        version: 3.13.9
      - name: quay-bridge-operator.v3.13.8
        version: 3.13.8
      - name: quay-bridge-operator.v3.13.7
        version: 3.13.7
      - name: quay-bridge-operator.v3.13.6
        version: 3.13.6
      - name: quay-bridge-operator.v3.13.5
        version: 3.13.5
      - name: quay-bridge-operator.v3.13.4
        version: 3.13.4
      - name: quay-bridge-operator.v3.13.3
        version: 3.13.3
      - name: quay-bridge-operator.v3.13.2
        version: 3.13.2
      - name: quay-bridge-operator.v3.13.1
        version: 3.13.1
      - name: quay-bridge-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: quay-bridge-operator.v3.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b12f0dfb8fdeae3f521e41fcf60ef118bdfd08ad7f68bd87c5494b067b7c7c58
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.11.x <3.14.5'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.14.5
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b12f0dfb8fdeae3f521e41fcf60ef118bdfd08ad7f68bd87c5494b067b7c7c58
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:73d91324ccc995e9a6db525f194bee340c17dd624ce520c767ea8fcf2346f786
        version: 3.14.5
      entries:
      - name: quay-bridge-operator.v3.14.5
        version: 3.14.5
      - name: quay-bridge-operator.v3.14.4
        version: 3.14.4
      - name: quay-bridge-operator.v3.14.3
        version: 3.14.3
      - name: quay-bridge-operator.v3.14.2
        version: 3.14.2
      - name: quay-bridge-operator.v3.14.1
        version: 3.14.1
      - name: quay-bridge-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: quay-bridge-operator.v3.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b2ac4a48c80209d7bebe8b1b2d066571f99a9f47b78604e47a8300d027941b66
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.12.x <3.15.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.15.2
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b2ac4a48c80209d7bebe8b1b2d066571f99a9f47b78604e47a8300d027941b66
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:d29abe14abc67d8836cc6f7656556a0a7fa8f4a8eea3f78e40265b339e7430f5
        version: 3.15.2
      entries:
      - name: quay-bridge-operator.v3.15.2
        version: 3.15.2
      - name: quay-bridge-operator.v3.15.1
        version: 3.15.1
      - name: quay-bridge-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: quay-bridge-operator.v3.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel9@sha256:f37b75957d97126f00126d1a51897b5a54bf063ba868e57d9cff241e732796ff
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.13.x <3.16.0'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.16.0
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:78ff6bc0ebad4768ae769da8bd73d76532ca462ddd70c25680d3bb5b4f2b5fb3
        - registry.redhat.io/quay/quay-bridge-operator-rhel9@sha256:f37b75957d97126f00126d1a51897b5a54bf063ba868e57d9cff241e732796ff
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        version: 3.16.0
      entries:
      - name: quay-bridge-operator.v3.16.0
        version: 3.16.0
      name: stable-3.16
    - currentCSV: quay-bridge-operator.v3.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:0ad7af440c6e00fb578ef40e6d600964324fd94ce7835a28d0ec355b7415093f
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          olm.skipRange: '>=3.3.x <3.6.10'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.6.10
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:99dc6b5af811bb33892c17334dd4e1a7eddc6982d49a793b1789f505e00f49b1
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:f7c4ed28a549fe7414312bd22c2ae140f1f28d30656fb9fb0c8ade05a8f82088
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:0ad7af440c6e00fb578ef40e6d600964324fd94ce7835a28d0ec355b7415093f
        version: 3.6.10
      entries:
      - name: quay-bridge-operator.v3.6.10
        version: 3.6.10
      - name: quay-bridge-operator.v3.6.9
        version: 3.6.9
      - name: quay-bridge-operator.v3.6.8
        version: 3.6.8
      - name: quay-bridge-operator.v3.6.7
        version: 3.6.7
      - name: quay-bridge-operator.v3.6.6
        version: 3.6.6
      - name: quay-bridge-operator.v3.6.5
        version: 3.6.5
      - name: quay-bridge-operator.v3.6.4
        version: 3.6.4
      - name: quay-bridge-operator.v3.6.2
        version: 3.6.2
      - name: quay-bridge-operator.v3.6.1
        version: 3.6.1
      - name: quay-bridge-operator.v3.6.0
        version: 3.6.0
      name: stable-3.6
    - currentCSV: quay-bridge-operator.v3.7.14
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:6a0dd80dc48ad0aaa576b3de78b2b265e29a3c10e4996aa6b8f129592fe20f09
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          olm.skipRange: '>=3.4.x <3.7.14'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.7.14
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:975f287513039b2244894b9031e590f665d48f9af480dfdc4b85d4f96dd4bc37
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:c59956d70416fab0c6d7b3ecd8c9cfa3cf9415f75cfdfe2214f44b0b4aced594
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:6a0dd80dc48ad0aaa576b3de78b2b265e29a3c10e4996aa6b8f129592fe20f09
        version: 3.7.14
      entries:
      - name: quay-bridge-operator.v3.7.14
        version: 3.7.14
      - name: quay-bridge-operator.v3.7.13
        version: 3.7.13
      - name: quay-bridge-operator.v3.7.12
        version: 3.7.12
      - name: quay-bridge-operator.v3.7.11
        version: 3.7.11
      - name: quay-bridge-operator.v3.7.10
        version: 3.7.10
      - name: quay-bridge-operator.v3.7.9
        version: 3.7.9
      - name: quay-bridge-operator.v3.7.8
        version: 3.7.8
      - name: quay-bridge-operator.v3.7.7
        version: 3.7.7
      - name: quay-bridge-operator.v3.7.6
        version: 3.7.6
      - name: quay-bridge-operator.v3.7.5
        version: 3.7.5
      - name: quay-bridge-operator.v3.7.4
        version: 3.7.4
      - name: quay-bridge-operator.v3.7.3
        version: 3.7.3
      - name: quay-bridge-operator.v3.7.2
        version: 3.7.2
      - name: quay-bridge-operator.v3.7.1
        version: 3.7.1
      - name: quay-bridge-operator.v3.7.0
        version: 3.7.0
      name: stable-3.7
    - currentCSV: quay-bridge-operator.v3.8.15
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:f8544a546dd6d209355c3a1cbe35138f6910491fc4584b401634431da4414ec0
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          olm.skipRange: '>=3.5.x <3.8.15'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.8.15
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:975f287513039b2244894b9031e590f665d48f9af480dfdc4b85d4f96dd4bc37
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:7cace73b03bb02202a04b6026eb9f7323610fd0ccd5ba18a6d00fd66577a96b4
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:f8544a546dd6d209355c3a1cbe35138f6910491fc4584b401634431da4414ec0
        version: 3.8.15
      entries:
      - name: quay-bridge-operator.v3.8.15
        version: 3.8.15
      - name: quay-bridge-operator.v3.8.14
        version: 3.8.14
      - name: quay-bridge-operator.v3.8.13
        version: 3.8.13
      - name: quay-bridge-operator.v3.8.12
        version: 3.8.12
      - name: quay-bridge-operator.v3.8.11
        version: 3.8.11
      - name: quay-bridge-operator.v3.8.10
        version: 3.8.10
      - name: quay-bridge-operator.v3.8.9
        version: 3.8.9
      - name: quay-bridge-operator.v3.8.8
        version: 3.8.8
      - name: quay-bridge-operator.v3.8.7
        version: 3.8.7
      - name: quay-bridge-operator.v3.8.6
        version: 3.8.6
      - name: quay-bridge-operator.v3.8.5
        version: 3.8.5
      - name: quay-bridge-operator.v3.8.4
        version: 3.8.4
      - name: quay-bridge-operator.v3.8.3
        version: 3.8.3
      - name: quay-bridge-operator.v3.8.2
        version: 3.8.2
      - name: quay-bridge-operator.v3.8.1
        version: 3.8.1
      - name: quay-bridge-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: quay-bridge-operator.v3.9.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9fb8807bed232f8723b7bff3f8bfed37798e86251f4db9374d64716b1d624857
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.9.17
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:7db467404171294d793ef0fd1a59fd6e5bd20ed8915913a1edf013d18e4c9a78
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9fb8807bed232f8723b7bff3f8bfed37798e86251f4db9374d64716b1d624857
        version: 3.9.17
      entries:
      - name: quay-bridge-operator.v3.9.17
        version: 3.9.17
      - name: quay-bridge-operator.v3.9.16
        version: 3.9.16
      - name: quay-bridge-operator.v3.9.15
        version: 3.9.15
      - name: quay-bridge-operator.v3.9.14
        version: 3.9.14
      - name: quay-bridge-operator.v3.9.13
        version: 3.9.13
      - name: quay-bridge-operator.v3.9.12
        version: 3.9.12
      - name: quay-bridge-operator.v3.9.11
        version: 3.9.11
      - name: quay-bridge-operator.v3.9.10
        version: 3.9.10
      - name: quay-bridge-operator.v3.9.9
        version: 3.9.9
      - name: quay-bridge-operator.v3.9.8
        version: 3.9.8
      - name: quay-bridge-operator.v3.9.7
        version: 3.9.7
      - name: quay-bridge-operator.v3.9.6
        version: 3.9.6
      - name: quay-bridge-operator.v3.9.5
        version: 3.9.5
      - name: quay-bridge-operator.v3.9.4
        version: 3.9.4
      - name: quay-bridge-operator.v3.9.3
        version: 3.9.3
      - name: quay-bridge-operator.v3.9.2
        version: 3.9.2
      - name: quay-bridge-operator.v3.9.1
        version: 3.9.1
      - name: quay-bridge-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.16
    packageName: quay-bridge-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: minhokim
      provider-url: ""
    name: node-discovery-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-discovery-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cache.wunicorns.com/v1alpha1",
                "kind": "NodeDiscovery",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "node-discovery-operator",
                    "app.kubernetes.io/instance": "nodediscovery-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nodediscovery",
                    "app.kubernetes.io/part-of": "node-discovery-operator"
                  },
                  "name": "nodediscovery-sample"
                },
                "spec": {
                  "containers": [
                    {
                      "args": [
                        "tail",
                        "-f",
                        "/dev/null"
                      ],
                      "image": "alicek106/stress",
                      "imagePullPolicy": "IfNotPresent",
                      "name": "stress",
                      "resources": {
                        "limits": {
                          "cpu": "100m",
                          "memory": "1000Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "1000Mi"
                        }
                      },
                      "terminationGracePeriodSeconds": 10
                    }
                  ],
                  "cpus": "0",
                  "enabled": "true",
                  "mems": "0",
                  "nodeName": "worker3"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2024-06-18T01:32:51Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeDiscovery is the Schema for the nodediscoveries API
            displayName: Node Discovery
            kind: NodeDiscovery
            name: nodediscoveries.cache.wunicorns.com
            version: v1alpha1
        description: find cgroup infor and set value.
        displayName: node-discovery-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cgroup
        - cpulist
        - mems
        - cpus
        - numa
        links:
        - name: Node Discovery Operator
          url: https://node-discovery-operator.domain
        maintainers:
        - email: wunicorns1436@gmail.com
          name: minhokim
        maturity: alpha
        provider:
          name: minhokim
        relatedImages:
        - quay.io/caspell/cgroup-discovery@sha256:b437dcde0107124e43a4e2fb8026ec191f44b5e761bedc2c295f47ff489cf343
        - quay.io/community-operator-pipeline-prod/node-discovery-operator@sha256:899baace103c58e7337ae5cd75e3764e6de26966aab7340037c612c26ca7cf87
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0
        version: 0.0.1
      entries:
      - name: node-discovery-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: node-discovery-operator
    provider:
      name: minhokim
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-atlas-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-atlas-kubernetes.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupPolicy",
                "metadata": {
                  "name": "atlasbackuppolicy-sample"
                },
                "spec": {
                  "id": "1",
                  "items": [
                    {
                      "frequencyInterval": 6,
                      "frequencyType": "WEEKLY",
                      "id": "2",
                      "retentionUnit": "DAYS",
                      "retentionValue": 6
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupSchedule",
                "metadata": {
                  "name": "atlasbackupschedule-sample"
                },
                "spec": {
                  "autoExportEnabled": true,
                  "policies": [
                    {
                      "name": "atlas-default-backuppolicy",
                      "namespace": "mongodb-atlas-system"
                    },
                    {
                      "name": "atlas-default-backuppolicy2",
                      "namespace": "mongodb-atlas-system"
                    }
                  ],
                  "referenceHourOfDay": 10,
                  "referenceMinuteOfHour": 10,
                  "restoreWindowDays": 2
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDatabaseUser",
                "metadata": {
                  "name": "my-database-user"
                },
                "spec": {
                  "databaseName": "admin",
                  "passwordSecretRef": {
                    "name": "my-database-user-password"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "roles": [
                    {
                      "databaseName": "admin",
                      "roleName": "readWriteAnyDatabase"
                    }
                  ],
                  "username": "david"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDeployment",
                "metadata": {
                  "name": "my-atlas-cluster"
                },
                "spec": {
                  "deploymentSpec": {
                    "name": "test-cluster",
                    "providerSettings": {
                      "instanceSizeName": "M10",
                      "providerName": "AWS",
                      "regionName": "US_EAST_1"
                    }
                  },
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasProject",
                "metadata": {
                  "name": "my-project"
                },
                "spec": {
                  "name": "Test Atlas Operator Project",
                  "projectIpAccessList": [
                    {
                      "comment": "IP address for Application Server A",
                      "ipAddress": "192.0.2.15"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Database
          containerImage: registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator@sha256:3cfbd700e4771c2c7e75c2c41cf6de57c9ef71ecd286e96a21d2567e43424bc3
          description: The MongoDB Atlas Kubernetes Operator enables easy management
            of Clusters in MongoDB Atlas
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies
              API
            displayName: Atlas Backup Policy
            kind: AtlasBackupPolicy
            name: atlasbackuppolicies.atlas.mongodb.com
            version: v1
          - description: AtlasBackupSchedule is the Schema for the atlasbackupschedules
              API
            displayName: Atlas Backup Schedule
            kind: AtlasBackupSchedule
            name: atlasbackupschedules.atlas.mongodb.com
            version: v1
          - description: AtlasDatabaseUser is the Schema for the Atlas Database User
              API
            displayName: Atlas Database User
            kind: AtlasDatabaseUser
            name: atlasdatabaseusers.atlas.mongodb.com
            version: v1
          - description: AtlasDeployment is the Schema for the atlasclusters API
            displayName: Atlas Deployment
            kind: AtlasDeployment
            name: atlasdeployments.atlas.mongodb.com
            version: v1
          - description: AtlasProject is the Schema for the atlasprojects API
            displayName: Atlas Project
            kind: AtlasProject
            name: atlasprojects.atlas.mongodb.com
            version: v1
        description: |
          The MongoDB Atlas Operator provides a native integration between the Kubernetes orchestration platform and MongoDB Atlas —
          the only multi-cloud document database service that gives you the versatility you need to build sophisticated and resilient applications that can adapt to changing customer demands and market trends.

          > Current Status: *Beta*. The Operator gives users the ability to provision
          > Atlas projects, clusters and database users using Kubernetes Specifications and bind connection information
          > into applications deployed to Kubernetes.

          ## Quick Start guide
          ### Step 1. Deploy Kubernetes operator by clicking Install button.

          ### Step 2. Create Atlas Cluster

          **1.** Create an Atlas API Key Secret
          In order to work with the Atlas Operator you need to provide [authentication information](https://docs.atlas.mongodb.com/configure-api-access)
           to allow the Atlas Operator to communicate with Atlas API. Once you have generated a Public and Private key in Atlas, you can create a Kuberentes Secret with:
          ```
          kubectl create secret generic mongodb-atlas-operator-api-key \
                   --from-literal="orgId=<the_atlas_organization_id>" \
                   --from-literal="publicApiKey=<the_atlas_api_public_key>" \
                   --from-literal="privateApiKey=<the_atlas_api_private_key>" \
                   -n openshift-operators
          ```
          (Note, that you should use the namespace where the Operator was installed - it's `openshift-operators` by default)

          **2.** Create an `AtlasProject` Custom Resource

          The `AtlasProject` CustomResource represents Atlas Projects in our Kubernetes cluster. You need to specify
          `projectIpAccessList` with the IP addresses or CIDR blocks of any hosts that will connect to the Atlas Cluster.
          ```
          apiVersion: atlas.mongodb.com/v1
          kind: AtlasProject
          metadata:
            name: my-project
          spec:
            name: Test Atlas Operator Project
            projectIpAccessList:
              - ipAddress: "192.0.2.15"
                comment: "IP address for Application Server A"
              - ipAddress: "203.0.113.0/24"
                comment: "CIDR block for Application Server B - D"
          ```
          **3.** Create an `AtlasDeployment` Custom Resource.
          The example below is a minimal configuration to create an M10 Atlas cluster in the AWS US East region. For a full list of properties, check
          `atlasclusters.atlas.mongodb.com` [CRD specification](config/crd/bases/atlas.mongodb.com_atlasclusters.yaml)):
          ```
          apiVersion: atlas.mongodb.com/v1
          kind: AtlasDeployment
          metadata:
            name: my-atlas-cluster
          spec:
            name: "Test-cluster"
            projectRef:
              name: my-project
            providerSettings:
              instanceSizeName: M10
              providerName: AWS
              regionName: US_EAST_1
          ```

          **4.** Create a database user password Kubernetes Secret
          The Secret must be created in the same namespace as the `AtlasDeployment` and `AtlasProject` were created.
          ```
          kubectl create secret generic the-user-password --from-literal="password=P@@sword%"
          ```

          **5.** Create an `AtlasDatabaseUser` Custom Resource

          In order to connect to an Atlas Cluster the database user needs to be created. `AtlasDatabaseUser` resource should reference
          the password Kubernetes Secret created in the previous step.
          ```
          apiVersion: atlas.mongodb.com/v1
          kind: AtlasDatabaseUser
          metadata:
            name: my-database-user
          spec:
            roles:
              - roleName: "readWriteAnyDatabase"
                databaseName: "admin"
            projectRef:
              name: my-project
            username: theuser
            passwordSecretRef:
              name: the-user-password
          ```
          **6.** Wait for the `AtlasDatabaseUser` Custom Resource to be ready

          Wait until the AtlasDatabaseUser resource gets to "ready" status (it will wait until the cluster is created that may take around 10 minutes):
          ```
          kubectl get atlasdatabaseusers my-database-user -o=jsonpath='{.status.conditions[?(@.type=="Ready")].status}'
          True
          ```
          ### Step 3. Connect your application to the Atlas Cluster

          The Atlas Operator will create a Kubernetes Secret with the information necessary to connect to the Atlas Cluster created
          in the previous step. An application in the same Kubernetes Cluster can mount and use the Secret:

          ```
          ...
          containers:
                - name: test-app
                  env:
                   - name: "CONNECTION_STRING"
                     valueFrom:
                       secretKeyRef:
                         name: test-atlas-operator-project-test-cluster-theuser
                         key: connectionStringStandardSrv

          ```
        displayName: MongoDB Atlas Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - MongoDB
        - Atlas
        - Database
        - Replica Set
        - Cluster
        links:
        - name: MongoDB Atlas Kubernetes
          url: https://github.com/mongodb/mongodb-atlas-kubernetes
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: beta
        provider:
          name: MongoDB, Inc
        relatedImages:
        - registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator-bundle@sha256:2338eaab863304250b3b1d267e9f2261c48eef1f97c280b7fa0af0ebc3ba208b
        - registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator@sha256:3cfbd700e4771c2c7e75c2c41cf6de57c9ef71ecd286e96a21d2567e43424bc3
        version: 1.0.0
      entries:
      - name: mongodb-atlas-kubernetes.v1.0.0
        version: 1.0.0
      name: beta
    - currentCSV: mongodb-atlas-kubernetes.v2.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupPolicy",
                "metadata": {
                  "name": "atlasbackuppolicy-sample"
                },
                "spec": {
                  "items": [
                    {
                      "frequencyInterval": 6,
                      "frequencyType": "hourly",
                      "retentionUnit": "days",
                      "retentionValue": 2
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "daily",
                      "retentionUnit": "days",
                      "retentionValue": 7
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "weekly",
                      "retentionUnit": "weeks",
                      "retentionValue": 4
                    },
                    {
                      "frequencyInterval": 15,
                      "frequencyType": "monthly",
                      "retentionUnit": "months",
                      "retentionValue": 12
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupSchedule",
                "metadata": {
                  "name": "atlasbackupschedule-sample"
                },
                "spec": {
                  "autoExportEnabled": false,
                  "copySettings": [
                    {
                      "cloudProvider": "AWS",
                      "frequencies": [
                        "WEEKLY"
                      ],
                      "regionName": "US_WEST_1",
                      "shouldCopyOplogs": false
                    }
                  ],
                  "policy": {
                    "name": "atlasbackuppolicy-sample"
                  },
                  "referenceHourOfDay": 10,
                  "referenceMinuteOfHour": 10,
                  "restoreWindowDays": 2,
                  "useOrgAndGroupNamesInExportPrefix": true
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDatabaseUser",
                "metadata": {
                  "name": "my-database-user"
                },
                "spec": {
                  "databaseName": "admin",
                  "passwordSecretRef": {
                    "name": "the-user-password"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "roles": [
                    {
                      "databaseName": "admin",
                      "roleName": "readWriteAnyDatabase"
                    }
                  ],
                  "username": "theuser"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDeployment",
                "metadata": {
                  "name": "my-atlas-deployment"
                },
                "spec": {
                  "backupRef": {
                    "name": "atlasbackupschedule-sample"
                  },
                  "deploymentSpec": {
                    "backupEnabled": true,
                    "clusterType": "REPLICASET",
                    "mongoDBMajorVersion": "7.0",
                    "name": "test-deployment",
                    "replicationSpecs": [
                      {
                        "regionConfigs": [
                          {
                            "electableSpecs": {
                              "instanceSize": "M10",
                              "nodeCount": 3
                            },
                            "priority": 7,
                            "providerName": "AWS",
                            "regionName": "US_EAST_1"
                          }
                        ],
                        "zoneName": "Zone 1"
                      }
                    ],
                    "tags": [
                      {
                        "key": "team",
                        "value": "atlas-operator"
                      }
                    ]
                  },
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasIPAccessList",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasipaccesslist-sample"
                },
                "spec": {
                  "entries": [
                    {
                      "cidrBlock": "192.168.1.0/24"
                    },
                    {
                      "deleteAfterDate": "2025-01-20T23:59:59+02:00",
                      "ipAddress": "10.0.0.1"
                    }
                  ],
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkContainer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasnetworkcontainer-sample"
                },
                "spec": {
                  "cidrBlock": "10.11.0.0/16",
                  "connectionSecret": {
                    "name": "atlas-connection-secret"
                  },
                  "externalProjectRef": {
                    "projectId": "66e2f2b621571b7e69a89b66"
                  },
                  "provider": "AWS",
                  "region": "US_EAST_1"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkPeering",
                "metadata": {
                  "name": "atlasnetworkpeering-sample"
                },
                "spec": {
                  "atlasCidrBlock": "10.12.0.0/16",
                  "awsConfiguration": {
                    "accepterRegionName": "US_EAST_1",
                    "awsAccountId": "23214235145",
                    "routeTableCidrBlock": "10.11.0.0/16",
                    "vpcId": "vpcid-7123782134"
                  },
                  "containerId": "623412394512350",
                  "containerRegion": "US_EAST_1",
                  "projectRef": {
                    "name": "atlas-project",
                    "namespace": "namespace"
                  },
                  "provider": "AWS"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasProject",
                "metadata": {
                  "name": "my-project"
                },
                "spec": {
                  "name": "Test Atlas Operator Project",
                  "projectIpAccessList": [
                    {
                      "comment": "IP address for Application Server A",
                      "ipAddress": "192.0.2.15"
                    },
                    {
                      "cidrBlock": "203.0.113.0/24",
                      "comment": "CIDR block for Application Server B - D"
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasTeam",
                "metadata": {
                  "name": "atlasteam-sample"
                },
                "spec": {
                  "name": "my-team",
                  "usernames": [
                    "username@mongodb.com"
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/mongodb/mongodb-atlas-kubernetes-operator@sha256:97954960c411c7711bd93ab4bdb243b72cee0e6ec9f6a3951ce300b1d9fb895a
          createdAt: "2025-03-06T14:09:19Z"
          description: The MongoDB Atlas Kubernetes Operator enables easy management
            of Clusters in MongoDB Atlas
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AtlasBackupCompliancePolicy
            name: atlasbackupcompliancepolicies.atlas.mongodb.com
            version: v1
          - description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies
              API
            displayName: Atlas Backup Policy
            kind: AtlasBackupPolicy
            name: atlasbackuppolicies.atlas.mongodb.com
            version: v1
          - description: AtlasBackupSchedule is the Schema for the atlasbackupschedules
              API
            displayName: Atlas Backup Schedule
            kind: AtlasBackupSchedule
            name: atlasbackupschedules.atlas.mongodb.com
            version: v1
          - description: AtlasCustomRole is the Schema for the AtlasCustomRole API
            displayName: Atlas Custom Role
            kind: AtlasCustomRole
            name: atlascustomroles.atlas.mongodb.com
            version: v1
          - description: AtlasDatabaseUser is the Schema for the Atlas Database User
              API
            displayName: Atlas Database User
            kind: AtlasDatabaseUser
            name: atlasdatabaseusers.atlas.mongodb.com
            version: v1
          - description: AtlasDataFederation is the Schema for the Atlas Data Federation
              API
            displayName: Atlas Data Federation
            kind: AtlasDataFederation
            name: atlasdatafederations.atlas.mongodb.com
            version: v1
          - description: AtlasDeployment is the Schema for the atlasdeployments API
            displayName: Atlas Deployment
            kind: AtlasDeployment
            name: atlasdeployments.atlas.mongodb.com
            version: v1
          - description: AtlasFederatedAuth is the Schema for the Atlasfederatedauth
              API
            displayName: Atlas Federated Auth
            kind: AtlasFederatedAuth
            name: atlasfederatedauths.atlas.mongodb.com
            version: v1
          - description: AtlasIPAccessList is the Schema for the atlasipaccesslists
              API.
            displayName: Atlas IPAccess List
            kind: AtlasIPAccessList
            name: atlasipaccesslists.atlas.mongodb.com
            version: v1
          - description: AtlasNetworkContainer is the Schema for the AtlasNetworkContainer
              API
            displayName: Atlas Network Container
            kind: AtlasNetworkContainer
            name: atlasnetworkcontainers.atlas.mongodb.com
            version: v1
          - description: AtlasNetworkPeering is the Schema for the AtlasNetworkPeering
              API
            displayName: Atlas Network Peering
            kind: AtlasNetworkPeering
            name: atlasnetworkpeerings.atlas.mongodb.com
            version: v1
          - description: "The AtlasPrivateEndpoint custom resource definition (CRD)
              defines a desired [Private Endpoint](https://www.mongodb.com/docs/atlas/security-private-endpoint/#std-label-private-endpoint-overview)
              configuration for an Atlas project. It allows a private connection between
              your cloud provider and Atlas that doesn't send information through
              a public network. \n You can use private endpoints to create a unidirectional
              connection to Atlas clusters from your virtual network."
            displayName: Atlas Private Endpoint
            kind: AtlasPrivateEndpoint
            name: atlasprivateendpoints.atlas.mongodb.com
            version: v1
          - description: AtlasProject is the Schema for the atlasprojects API
            displayName: Atlas Project
            kind: AtlasProject
            name: atlasprojects.atlas.mongodb.com
            version: v1
          - description: Atlas Search Index Config is the Schema for the Atlas Search
              API
            displayName: Atlas Search Index Config
            kind: AtlasSearchIndexConfig
            name: atlassearchindexconfigs.atlas.mongodb.com
            version: v1
          - description: AtlasStreamConnection is the Schema for the atlasstreamconnections
              API
            displayName: Atlas Stream Connection
            kind: AtlasStreamConnection
            name: atlasstreamconnections.atlas.mongodb.com
            version: v1
          - description: AtlasStreamInstance is the Schema for the atlasstreaminstances
              API
            displayName: Atlas Stream Instance
            kind: AtlasStreamInstance
            name: atlasstreaminstances.atlas.mongodb.com
            version: v1
          - description: AtlasTeam is the Schema for the Atlas Teams API
            displayName: Atlas Team
            kind: AtlasTeam
            name: atlasteams.atlas.mongodb.com
            version: v1
        description: |
          The MongoDB Atlas Operator provides a native integration between the Kubernetes orchestration platform and MongoDB
          Atlas — the only multi-cloud document database service that gives you the versatility you need to build sophisticated
          and resilient applications that can adapt to changing customer demands and market trends.

          The full documentation for the Operator can be found [here](https://docs.atlas.mongodb.com/atlas-operator/)

          ## Getting Started

          ### Supported features

          * Create and configure a project, or connect to an existing one.
          * Deploy, manage, scale, and tear down clusters.
          * Support for serverless instances.
          * Create and edit database users.
          * Manage IP Access Lists, network peering and private endpoints.
          * Configure and control Atlas’s fully managed cloud backup.
          * Configure federated authentication for your Atlas organization
          * Integrate Atlas monitoring with Prometheus.

          ... and more.

          To view the list of custom resources and each CR's schema, visit our [reference](https://www.mongodb.com/docs/atlas/operator/stable/custom-resources/)
          documentation. See the [Quickstart](https://www.mongodb.com/docs/atlas/operator/stable/ak8so-quick-start/) to get
          started with Atlas Kubernetes Operator.
        displayName: MongoDB Atlas Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - MongoDB
        - Atlas
        - Database
        - Replica Set
        - Cluster
        links:
        - name: MongoDB Atlas Kubernetes
          url: https://github.com/mongodb/mongodb-atlas-kubernetes
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: beta
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/mongodb/mongodb-atlas-kubernetes-operator@sha256:97954960c411c7711bd93ab4bdb243b72cee0e6ec9f6a3951ce300b1d9fb895a
        - quay.io/mongodb/mongodb-atlas-kubernetes-operator@sha256:ffc0ee0c96ef18dd034c125c4756c24bc1629f6573bf7faaeb89fd2eaae1d9cc
        - registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator-bundle@sha256:a8043b35ba5742b5c514e73511c1d3ca06ef3c96418b849034e96faba9f96c36
        version: 2.8.0
      entries:
      - name: mongodb-atlas-kubernetes.v2.8.0
        version: 2.8.0
      - name: mongodb-atlas-kubernetes.v2.7.1
        version: 2.7.1
      - name: mongodb-atlas-kubernetes.v2.7.0
        version: 2.7.0
      - name: mongodb-atlas-kubernetes.v2.6.1
        version: 2.6.1
      - name: mongodb-atlas-kubernetes.v2.6.0
        version: 2.6.0
      - name: mongodb-atlas-kubernetes.v2.5.0
        version: 2.5.0
      - name: mongodb-atlas-kubernetes.v2.4.1
        version: 2.4.1
      - name: mongodb-atlas-kubernetes.v2.4.0
        version: 2.4.0
      - name: mongodb-atlas-kubernetes.v2.3.1
        version: 2.3.1
      - name: mongodb-atlas-kubernetes.v2.3.0
        version: 2.3.0
      - name: mongodb-atlas-kubernetes.v2.2.2
        version: 2.2.2
      - name: mongodb-atlas-kubernetes.v2.2.1
        version: 2.2.1
      - name: mongodb-atlas-kubernetes.v2.2.0
        version: 2.2.0
      - name: mongodb-atlas-kubernetes.v2.1.0
        version: 2.1.0
      - name: mongodb-atlas-kubernetes.v2.0.1
        version: 2.0.1
      - name: mongodb-atlas-kubernetes.v2.0.0
        version: 2.0.0
      - name: mongodb-atlas-kubernetes.v1.9.1
        version: 1.9.1
      - name: mongodb-atlas-kubernetes.v1.9.0
        version: 1.9.0
      - name: mongodb-atlas-kubernetes.v1.8.2
        version: 1.8.2
      - name: mongodb-atlas-kubernetes.v1.8.1
        version: 1.8.1
      - name: mongodb-atlas-kubernetes.v1.8.0
        version: 1.8.0
      - name: mongodb-atlas-kubernetes.v1.7.3
        version: 1.7.3
      - name: mongodb-atlas-kubernetes.v1.7.2
        version: 1.7.2
      - name: mongodb-atlas-kubernetes.v1.7.1
        version: 1.7.1
      - name: mongodb-atlas-kubernetes.v1.7.0
        version: 1.7.0
      - name: mongodb-atlas-kubernetes.v1.6.1
        version: 1.6.1
      - name: mongodb-atlas-kubernetes.v1.6.0
        version: 1.6.0
      - name: mongodb-atlas-kubernetes.v1.5.1
        version: 1.5.1
      - name: mongodb-atlas-kubernetes.v1.5.0
        version: 1.5.0
      - name: mongodb-atlas-kubernetes.v1.4.1
        version: 1.4.1
      - name: mongodb-atlas-kubernetes.v1.3.0
        version: 1.3.0
      name: stable
    defaultChannel: stable
    packageName: mongodb-atlas-kubernetes
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: NVIDIA
      provider-url: https://github.com/Mellanox/network-operator/
    name: nvidia-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nvidia-network-operator.v25.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "HostDeviceNetwork",
                "metadata": {
                  "name": "example-hostdevice-network"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.3.225/28\",\n  \"exclude\": [\n   \"192.168.3.229/30\",\n   \"192.168.3.236/32\"\n  ]\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "hostdev"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "IPoIBNetwork",
                "metadata": {
                  "name": "example-ipoibnetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"nv-ipam\",\n  \"poolName\": \"my-pool\"\n}\n",
                  "master": "ibs3f1",
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "MacvlanNetwork",
                "metadata": {
                  "name": "example-macvlannetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.2.225/24\",\n  \"exclude\": [\n   \"192.168.2.229/30\",\n   \"192.168.2.236/32\"\n  ]\n}\n",
                  "master": "ens2f0",
                  "mode": "bridge",
                  "mtu": 1500,
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "NicClusterPolicy",
                "metadata": {
                  "name": "nic-cluster-policy"
                },
                "spec": {
                  "ofedDriver": {
                    "image": "doca-driver",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 30
                    },
                    "readinessProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 30
                    },
                    "repository": "nvcr.io/nvidia/mellanox",
                    "startupProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 20
                    },
                    "terminationGracePeriodSeconds": 300,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": true,
                        "enable": true,
                        "force": true,
                        "podSelector": "",
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1
                    },
                    "version": "doca3.2.0-25.10-1.2.8.0-2"
                  },
                  "rdmaSharedDevicePlugin": {
                    "config": "{\n  \"configList\": [\n    {\n      \"resourceName\": \"rdma_shared_device_a\",\n      \"rdmaHcaMax\": 63,\n      \"selectors\": {\n        \"vendors\": [\"15b3\"]\n      }\n    }\n  ]\n}\n",
                    "image": "k8s-rdma-shared-dev-plugin",
                    "repository": "nvcr.io/nvidia/mellanox",
                    "version": "sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
          createdAt: "2025-12-11T08:10:51Z"
          description: Deploy and manage NVIDIA networking resources in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-network-operator
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: https://github.com/Mellanox/network-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: HostDeviceNetwork
            name: hostdevicenetworks.mellanox.com
            version: v1alpha1
          - kind: IPoIBNetwork
            name: ipoibnetworks.mellanox.com
            version: v1alpha1
          - kind: MacvlanNetwork
            name: macvlannetworks.mellanox.com
            version: v1alpha1
          - kind: NicClusterPolicy
            name: nicclusterpolicies.mellanox.com
            version: v1alpha1
        description: |
          ## NVIDIA Network Operator
          The NVIDIA Network Operator simplifies the provisioning and management of NVIDIA networking resources  in a Kubernetes cluster. The operator automatically installs the required host networking software - bringing together all the needed components to provide high-speed network connectivity. These components include the NVIDIA networking driver, Kubernetes device plugin, CNI plugins, IP address management (IPAM) plugin and others.
          The NVIDIA Network Operator works in conjunction with the NVIDIA GPU Operator to deliver high-throughput, low-latency networking for scale-out, GPU computing clusters.

          The Network Operator uses Node Feature Discovery (NFD) labels in order to properly schedule resources.
          Nodes can be labelled manually or using the NFD Operator. An example of `NodeFeatureDiscovery`
          configuration is available in the documentation.
          The following NFD labels are used:
          `feature.node.kubernetes.io/pci-15b3.present` for nodes containing NVIDIA Networking hardware.
          `feature.node.kubernetes.io/pci-10de.present` for nodes containing NVIDIA GPU hardware.

          The Network Operator is open-source. For more information on contributions and release artifacts, see the [GitHub repo](https://github.com/Mellanox/network-operator/)
        displayName: NVIDIA Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sriov
        - networking
        links:
        - name: Network Operator Documentation
          url: https://docs.nvidia.com/networking/software/cloud-orchestration/index.html
        - name: GitHub repository
          url: https://github.com/Mellanox/network-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/network-operator/
        relatedImages:
        - nvcr.io/nvidia/doca/doca_telemetry@sha256:f0d3c4a00616343e74e465e259a7475d69920a8dbff530117253cb1939e366f6
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:2ba90699f70a848488bf520afd03283e515c73daef431618256920d685957d4c
        - nvcr.io/nvidia/mellanox/network-operator-init-container@sha256:8990b7fabb164d5c369964bca8bd0424acd6227d2cc8f0cbfc23b2e3cc732c8b
        - nvcr.io/nvidia/mellanox/spectrum-x-operator@sha256:d806c8913833596c53344601e77620ce441afe164968b6c6626b6a715031515a
        - nvcr.io/nvidia/mellanox/ipoib-cni@sha256:8567594bb1570383f5b68c9e9ce814bc34dd0f1d8df60a89c44105cf476a8ff0
        - nvcr.io/nvidia/mellanox/nic-feature-discovery@sha256:7573a7a063ee4bfbaa5b8e3517e655da5fa5472e2c9bf96a4d45469718416531
        - nvcr.io/nvidia/mellanox/nvidia-k8s-ipam@sha256:f3618a6bf879057dd3e63ae0bef5bad3fecc5f5548430cf5aa8745287c71e063
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:54606f3cde8fe47e5399347661d58954889a7712f7b35c505b949a313d5f7dfe
        - nvcr.io/nvidia/mellanox/sriov-network-device-plugin@sha256:16230372aa23ae025f7b5fa5ac092bbf58c8040bf66e162f7977469ba7322bcc
        - nvcr.io/nvidia/mellanox/nic-configuration-operator@sha256:25fbecba5fa2c588007c85fbffdedf4b734c36774824da1598ab063e0e9a9685
        - nvcr.io/nvidia/mellanox/ib-kubernetes@sha256:da161f6694fb5134948e8ffc47ebc556c8fdbdb4cb83be1dc6c9a2276b671c03
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:4015c620d07b169462d726dee926616faf0d20b4331a1922bade079efd8427b5
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:c6c0ef891b8dd381c002976b202ffe1c8d7d35710d812dbc3d31151a913b3fd4
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:0f99c9165a5001cca2d5fe11c7fd480f7fc455928c43ebec1fdd2cac3cb811be
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:327f4396b63cc6d6694a3272f48758e3bc415b477919d36f3ff8b5e4b0c322eb
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:bca54e10732c1a617cc9cc2ded9b83372593963559ba72a54c499d39a143fcb0
        - nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:8f6a0c704e40e383079a7d9fd6b06d60af168e3ebf3cb98175f952a3c404a9a8
        - nvcr.io/nvidia/mellanox/nic-configuration-operator-daemon@sha256:efef0cd39324058f23cfeda561d4c23063f260905c35a0a29d5a246bec091341
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-network-operator@sha256:beab52d506ac9133172b18bec91e1fa8e261b2a203669880c1a3ffeaeb30e2b0
        - nvcr.io/nvidia/mellanox/k8s-rdma-shared-dev-plugin@sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e
        version: 25.10.0
      entries:
      - name: nvidia-network-operator.v25.10.0
        version: 25.10.0
      - name: nvidia-network-operator.v25.7.0
        version: 25.7.0
      name: stable
    - currentCSV: nvidia-network-operator.v25.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "HostDeviceNetwork",
                "metadata": {
                  "name": "example-hostdevice-network"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.3.225/28\",\n  \"exclude\": [\n   \"192.168.3.229/30\",\n   \"192.168.3.236/32\"\n  ]\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "hostdev"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "IPoIBNetwork",
                "metadata": {
                  "name": "example-ipoibnetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"nv-ipam\",\n  \"poolName\": \"my-pool\"\n}\n",
                  "master": "ibs3f1",
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "MacvlanNetwork",
                "metadata": {
                  "name": "example-macvlannetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.2.225/24\",\n  \"exclude\": [\n   \"192.168.2.229/30\",\n   \"192.168.2.236/32\"\n  ]\n}\n",
                  "master": "ens2f0",
                  "mode": "bridge",
                  "mtu": 1500,
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "NicClusterPolicy",
                "metadata": {
                  "name": "nic-cluster-policy"
                },
                "spec": {
                  "ofedDriver": {
                    "image": "doca-driver",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 30
                    },
                    "readinessProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 30
                    },
                    "repository": "nvcr.io/nvidia/mellanox",
                    "startupProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 20
                    },
                    "terminationGracePeriodSeconds": 300,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": true,
                        "enable": true,
                        "force": true,
                        "podSelector": "",
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1
                    },
                    "version": "doca3.2.0-25.10-1.2.8.0-2"
                  },
                  "rdmaSharedDevicePlugin": {
                    "config": "{\n  \"configList\": [\n    {\n      \"resourceName\": \"rdma_shared_device_a\",\n      \"rdmaHcaMax\": 63,\n      \"selectors\": {\n        \"vendors\": [\"15b3\"]\n      }\n    }\n  ]\n}\n",
                    "image": "k8s-rdma-shared-dev-plugin",
                    "repository": "nvcr.io/nvidia/mellanox",
                    "version": "sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
          createdAt: "2025-12-11T08:10:51Z"
          description: Deploy and manage NVIDIA networking resources in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-network-operator
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: https://github.com/Mellanox/network-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: HostDeviceNetwork
            name: hostdevicenetworks.mellanox.com
            version: v1alpha1
          - kind: IPoIBNetwork
            name: ipoibnetworks.mellanox.com
            version: v1alpha1
          - kind: MacvlanNetwork
            name: macvlannetworks.mellanox.com
            version: v1alpha1
          - kind: NicClusterPolicy
            name: nicclusterpolicies.mellanox.com
            version: v1alpha1
        description: |
          ## NVIDIA Network Operator
          The NVIDIA Network Operator simplifies the provisioning and management of NVIDIA networking resources  in a Kubernetes cluster. The operator automatically installs the required host networking software - bringing together all the needed components to provide high-speed network connectivity. These components include the NVIDIA networking driver, Kubernetes device plugin, CNI plugins, IP address management (IPAM) plugin and others.
          The NVIDIA Network Operator works in conjunction with the NVIDIA GPU Operator to deliver high-throughput, low-latency networking for scale-out, GPU computing clusters.

          The Network Operator uses Node Feature Discovery (NFD) labels in order to properly schedule resources.
          Nodes can be labelled manually or using the NFD Operator. An example of `NodeFeatureDiscovery`
          configuration is available in the documentation.
          The following NFD labels are used:
          `feature.node.kubernetes.io/pci-15b3.present` for nodes containing NVIDIA Networking hardware.
          `feature.node.kubernetes.io/pci-10de.present` for nodes containing NVIDIA GPU hardware.

          The Network Operator is open-source. For more information on contributions and release artifacts, see the [GitHub repo](https://github.com/Mellanox/network-operator/)
        displayName: NVIDIA Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sriov
        - networking
        links:
        - name: Network Operator Documentation
          url: https://docs.nvidia.com/networking/software/cloud-orchestration/index.html
        - name: GitHub repository
          url: https://github.com/Mellanox/network-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/network-operator/
        relatedImages:
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:0f99c9165a5001cca2d5fe11c7fd480f7fc455928c43ebec1fdd2cac3cb811be
        - nvcr.io/nvidia/mellanox/network-operator-init-container@sha256:8990b7fabb164d5c369964bca8bd0424acd6227d2cc8f0cbfc23b2e3cc732c8b
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:327f4396b63cc6d6694a3272f48758e3bc415b477919d36f3ff8b5e4b0c322eb
        - nvcr.io/nvidia/mellanox/nic-feature-discovery@sha256:7573a7a063ee4bfbaa5b8e3517e655da5fa5472e2c9bf96a4d45469718416531
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:bca54e10732c1a617cc9cc2ded9b83372593963559ba72a54c499d39a143fcb0
        - nvcr.io/nvidia/doca/doca_telemetry@sha256:f0d3c4a00616343e74e465e259a7475d69920a8dbff530117253cb1939e366f6
        - nvcr.io/nvidia/mellanox/nic-configuration-operator@sha256:25fbecba5fa2c588007c85fbffdedf4b734c36774824da1598ab063e0e9a9685
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-network-operator@sha256:beab52d506ac9133172b18bec91e1fa8e261b2a203669880c1a3ffeaeb30e2b0
        - nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
        - nvcr.io/nvidia/mellanox/ib-kubernetes@sha256:da161f6694fb5134948e8ffc47ebc556c8fdbdb4cb83be1dc6c9a2276b671c03
        - nvcr.io/nvidia/mellanox/nic-configuration-operator-daemon@sha256:efef0cd39324058f23cfeda561d4c23063f260905c35a0a29d5a246bec091341
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:54606f3cde8fe47e5399347661d58954889a7712f7b35c505b949a313d5f7dfe
        - nvcr.io/nvidia/mellanox/spectrum-x-operator@sha256:d806c8913833596c53344601e77620ce441afe164968b6c6626b6a715031515a
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:4015c620d07b169462d726dee926616faf0d20b4331a1922bade079efd8427b5
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:2ba90699f70a848488bf520afd03283e515c73daef431618256920d685957d4c
        - nvcr.io/nvidia/mellanox/ipoib-cni@sha256:8567594bb1570383f5b68c9e9ce814bc34dd0f1d8df60a89c44105cf476a8ff0
        - nvcr.io/nvidia/mellanox/nvidia-k8s-ipam@sha256:f3618a6bf879057dd3e63ae0bef5bad3fecc5f5548430cf5aa8745287c71e063
        - nvcr.io/nvidia/mellanox/sriov-network-device-plugin@sha256:16230372aa23ae025f7b5fa5ac092bbf58c8040bf66e162f7977469ba7322bcc
        - nvcr.io/nvidia/mellanox/k8s-rdma-shared-dev-plugin@sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:8f6a0c704e40e383079a7d9fd6b06d60af168e3ebf3cb98175f952a3c404a9a8
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:c6c0ef891b8dd381c002976b202ffe1c8d7d35710d812dbc3d31151a913b3fd4
        version: 25.10.0
      entries:
      - name: nvidia-network-operator.v25.10.0
        version: 25.10.0
      name: v25.10
    - currentCSV: nvidia-network-operator.v25.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "HostDeviceNetwork",
                "metadata": {
                  "name": "example-hostdevice-network"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.3.225/28\",\n  \"exclude\": [\n   \"192.168.3.229/30\",\n   \"192.168.3.236/32\"\n  ]\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "hostdev"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "IPoIBNetwork",
                "metadata": {
                  "name": "example-ipoibnetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.6.225/28\",\n  \"exclude\": [\n   \"192.168.6.229/30\",\n   \"192.168.6.236/32\"\n  ]\n}\n",
                  "master": "ibs3f1",
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "MacvlanNetwork",
                "metadata": {
                  "name": "example-macvlannetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.2.225/24\",\n  \"exclude\": [\n   \"192.168.2.229/30\",\n   \"192.168.2.236/32\"\n  ]\n}\n",
                  "master": "ens2f0",
                  "mode": "bridge",
                  "mtu": 1500,
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "NicClusterPolicy",
                "metadata": {
                  "name": "nic-cluster-policy"
                },
                "spec": {
                  "ofedDriver": {
                    "image": "doca-driver",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 30
                    },
                    "readinessProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 30
                    },
                    "repository": "nvcr.io/nvidia/mellanox",
                    "startupProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 20
                    },
                    "terminationGracePeriodSeconds": 300,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": true,
                        "enable": true,
                        "force": true,
                        "podSelector": "",
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1
                    },
                    "version": "doca3.1.0-25.07-0.9.7.0-0"
                  },
                  "rdmaSharedDevicePlugin": {
                    "config": "{\n  \"configList\": [\n    {\n      \"resourceName\": \"rdma_shared_device_a\",\n      \"rdmaHcaMax\": 63,\n      \"selectors\": {\n        \"vendors\": [\"15b3\"]\n      }\n    }\n  ]\n}\n",
                    "image": "k8s-rdma-shared-dev-plugin",
                    "repository": "nvcr.io/nvidia/mellanox",
                    "version": "sha256:a87096761d155eeb6f470e042d2d167bb466d57e63b4aba957f57d745e15a9b2"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: nvcr.io/nvidia/cloud-native/network-operator@sha256:51270965284cceeda659fb1098e70a888b39664ceade7e9d455fb95ac85914b7
          createdAt: "2025-08-21T19:12:20Z"
          description: Deploy and manage NVIDIA networking resources in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-network-operator
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: https://github.com/Mellanox/network-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: HostDeviceNetwork
            name: hostdevicenetworks.mellanox.com
            version: v1alpha1
          - kind: IPoIBNetwork
            name: ipoibnetworks.mellanox.com
            version: v1alpha1
          - kind: MacvlanNetwork
            name: macvlannetworks.mellanox.com
            version: v1alpha1
          - kind: NicClusterPolicy
            name: nicclusterpolicies.mellanox.com
            version: v1alpha1
        description: |
          ## NVIDIA Network Operator
          The NVIDIA Network Operator simplifies the provisioning and management of NVIDIA networking resources  in a Kubernetes cluster. The operator automatically installs the required host networking software - bringing together all the needed components to provide high-speed network connectivity. These components include the NVIDIA networking driver, Kubernetes device plugin, CNI plugins, IP address management (IPAM) plugin and others.
          The NVIDIA Network Operator works in conjunction with the NVIDIA GPU Operator to deliver high-throughput, low-latency networking for scale-out, GPU computing clusters.

          The Network Operator uses Node Feature Discovery (NFD) labels in order to properly schedule resources.
          Nodes can be labelled manually or using the NFD Operator. An example of `NodeFeatureDiscovery`
          configuration is available in the documentation.
          The following NFD labels are used:
          `feature.node.kubernetes.io/pci-15b3.present` for nodes containing NVIDIA Networking hardware.
          `feature.node.kubernetes.io/pci-10de.present` for nodes containing NVIDIA GPU hardware.

          The Network Operator is open-source. For more information on contributions and release artifacts, see the [GitHub repo](https://github.com/Mellanox/network-operator/)
        displayName: NVIDIA Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sriov
        - networking
        links:
        - name: Network Operator Documentation
          url: https://docs.nvidia.com/networking/software/cloud-orchestration/index.html
        - name: GitHub repository
          url: https://github.com/Mellanox/network-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/network-operator/
        relatedImages:
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:423aea08b4a0f01e2e19b6a709e14347bd08f8274f40002e0224090dfa4904fc
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:30354799264480e1aee057397eef2c52b277bbc6872184e2b7b811f4152b3a67
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:5ad37cd5ae96153e6f87670f437ff5f6e44febe7bb6eaeb1a0f219e28284e53d
        - nvcr.io/nvidia/mellanox/ipoib-cni@sha256:7564ad1142c863e61f1dd84f5714deba9a7c6f6d85efb383ac3a2566eb4f4b71
        - nvcr.io/nvidia/mellanox/nic-configuration-operator-daemon@sha256:b78c15904cecd343fa48374757b3619b5cbdc22059d5ee9731da87e35b94a2e2
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-network-operator@sha256:2cc940711539edd93a23355dcb06365821d140346e1df248386a77667c0f47ea
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:f9d4b8358c68ba28f849ca710bf769c4327a639733c0ff30282ca33a744078f6
        - nvcr.io/nvidia/mellanox/nic-configuration-operator@sha256:03f34f7fde3f65ca7b214b66c6fdbc1250d4f3863f9c02b0fba78e8aa84efca3
        - nvcr.io/nvidia/mellanox/nvidia-k8s-ipam@sha256:3f692273c1598525b9c698c9d9cd463e5ddc55b638c6c031639f38786fc67475
        - nvcr.io/nvidia/mellanox/k8s-rdma-shared-dev-plugin@sha256:a87096761d155eeb6f470e042d2d167bb466d57e63b4aba957f57d745e15a9b2
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:9a831bfdf85f313b1f5749b7c9b2673bb8fff18b4ff768c9242dabaa4468e449
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:d41eea65b102dc5bb5792871ae212b59a65dae492ca109c52138d5626eba1ffd
        - nvcr.io/nvidia/mellanox/nic-feature-discovery@sha256:1330e3a7ea2491bc310bfc4766769389ceb56d050831bf9c145b7bfb6aba36c4
        - nvcr.io/nvidia/cloud-native/network-operator@sha256:51270965284cceeda659fb1098e70a888b39664ceade7e9d455fb95ac85914b7
        - nvcr.io/nvidia/doca/doca_telemetry@sha256:13c2a2d055e501c03c6451413b85476ceafbc2fbffc7443952294c196f3f89f3
        - nvcr.io/nvidia/mellanox/network-operator-init-container@sha256:02ee60ac6ee163acc97706bd4229d268f608a95bcbcb6fccee90ceb1d8a6c62b
        - nvcr.io/nvidia/mellanox/sriov-network-device-plugin@sha256:7508a160f3f124e0b78d2b4d5a52deca6b9f56e226fee957c4d156e425eb101a
        - nvcr.io/nvidia/mellanox/ib-kubernetes@sha256:1fa251979b5f5201af50bc7aa6936829103d742f42bfbf752f20852f5fe44dfb
        version: 25.7.0
      entries:
      - name: nvidia-network-operator.v25.7.0
        version: 25.7.0
      name: v25.7
    defaultChannel: stable
    packageName: nvidia-network-operator
    provider:
      name: NVIDIA
      url: https://github.com/Mellanox/network-operator/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: SynaXG Engineering Team
      provider-url: ""
    name: synaxg-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: synaxg-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "card.synaxg.app.com/v1",
                "kind": "SG3Reset",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "synaxg-operator",
                    "app.kubernetes.io/instance": "sg3reset-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sg3reset",
                    "app.kubernetes.io/part-of": "synaxg-operator"
                  },
                  "name": "sg3reset-sample"
                },
                "spec": {
                  "image": "registry.connect.redhat.com/synaxg/synaxg-reset-utility@sha256:4050d5731a21bbec6e26165b8dc2b7632577ffa376e7eb056aa3245cf9574753",
                  "sg3ResetList": [
                    {
                      "nodeName": "test",
                      "pciList": [
                        {
                          "enable": "false",
                          "pciAddr": "000d:01:00.0"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "card.synaxg.app.com/v1",
                "kind": "SG3Update",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "synaxg-operator",
                    "app.kubernetes.io/instance": "sg3update-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sg3update",
                    "app.kubernetes.io/part-of": "synaxg-operator"
                  },
                  "name": "sg3update-sample"
                },
                "spec": {
                  "image": "registry.connect.redhat.com/synaxg/synaxg-upgrade-utility@sha256:7ffec3249edd2467f2414c2ce4232e8e436278fd1b43a51b66f54b6ea10a60d1",
                  "sg3UpdateList": [
                    {
                      "nodeName": "test",
                      "pciList": [
                        {
                          "enable": "false",
                          "pciAddr": "000d:01:00.0",
                          "sdkImageAddr": "quay.io/synaxgcom/sdk-img@sha256:1ed57013f278e5a858f71f343649652dbd52b6f3cf451374e45b6ac427fa76f9"
                        }
                      ]
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/synaxg/synaxg-operator-utility@sha256:3b22a8022a97cb1ffdb47ffcc9d9d562601f48669aa14fd58cd8ba6128b39bd7
          createdAt: "2025-07-01T03:42:07Z"
          description: SynaXG Operator will work with the SuperMicro Server + SG3
            card  and Openshift Container Platform.The Marvell kernel module “octeon_ep”
            and “octeon_ep_vf” are necessary to the Operator. The Operator can send
            command of “reset” and “update” to SG3 board via the VF channel.As a result,
            users can realize the process of “reset card” and “update firmware” on
            the web GUI, and monitor the executing result.
          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"
          operators.openshift.io/valid-subscription: free text
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: SynaXG
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SG3Reset is the Schema for the sg3resets API
            displayName: SG3 Reset
            kind: SG3Reset
            name: sg3resets.card.synaxg.app.com
            version: v1
          - description: SG3Update is the Schema for the sg3updates API
            displayName: SG3 Update
            kind: SG3Update
            name: sg3updates.card.synaxg.app.com
            version: v1
        description: SynaXG Operator will work with the SuperMicro Server + SG3 card  and
          Openshift Container Platform.The Marvell kernel module “octeon_ep” and “octeon_ep_vf”
          are necessary to the Operator. The Operator can send command of “reset”
          and “update” to SG3 board via the VF channel.As a result, users can realize
          the process of “reset card” and “update firmware” on the web GUI, and monitor
          the executing result.
        displayName: SynaXG vDU card 102X Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vDU
        - 102X
        - SynaXG
        links:
        - name: Synaxg Operator
          url: https://synaxg-operator.domain
        maintainers:
        - email: notice@synaxg.com
          name: Mantosh Malhotra
        maturity: alpha
        provider:
          name: SynaXG Engineering Team
        relatedImages:
        - registry.connect.redhat.com/synaxg/synaxg-operator@sha256:ff3d9ab5506c4487e5b6697ffe960584aadfe9f16408e7976d345c3d93375171
        - registry.connect.redhat.com/synaxg/synaxg-reset-utility@sha256:4050d5731a21bbec6e26165b8dc2b7632577ffa376e7eb056aa3245cf9574753
        - registry.connect.redhat.com/synaxg/synaxg-upgrade-utility@sha256:7ffec3249edd2467f2414c2ce4232e8e436278fd1b43a51b66f54b6ea10a60d1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:38ee3484ba60bb474e7231e9d0718157386716cea7ffd6da6f32ddd551a5243d
        - quay.io/synaxgcom/sdk-img@sha256:1ed57013f278e5a858f71f343649652dbd52b6f3cf451374e45b6ac427fa76f9
        - registry.connect.redhat.com/synaxg/synaxg-operator-utility@sha256:3b22a8022a97cb1ffdb47ffcc9d9d562601f48669aa14fd58cd8ba6128b39bd7
        version: 1.2.0
      entries:
      - name: synaxg-operator.v1.2.0
        version: 1.2.0
      name: alpha
    defaultChannel: alpha
    packageName: synaxg-operator
    provider:
      name: SynaXG Engineering Team
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: application-services-metering-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: application-services-metering-operator.v0.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "applicationservices.redhat.com/v1",
                "kind": "Meter",
                "metadata": {
                  "name": "app-services-metrics-example"
                },
                "spec": {
                  "includeInfrastructure": false,
                  "meterCollectionEnabled": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Application Runtime
          certified: "false"
          containerImage: quay.io/redhat-developer/application-services-metering-operator:0.6.1
          createdAt: "2021-09-28T13:00:00Z"
          description: Collect the core usage of products from the Application Services
            portfolio into a single metric labeled by Runtimes, Integration, and Automation.
          repository: https://github.com/redhat-developer/application-services-metering-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Meter
            displayName: Meter
            kind: Meter
            name: meters.applicationservices.redhat.com
            version: v1
        description: |-
          ## About the managed application

          There is no managed application created with this operator.

          ## About this Operator

          The metering operator watches pods for predetermined labels, across a cluster or namespace(s).
          The label schema for Red Hat Application Services is in the format:

          * `com.company=Red_Hat`
          * `rht.comp=PAM`
          * `rht.comp_ver=7.10`
          * `rht.prod_name=Red_Hat_Process_Automation`
          * `rht.prod_ver=7.11`
          * `rht.subcomp=rhpam-kogito-runtime`
          * `rht.subcomp_t=application`

          It's important not to remove labels as the operator will cease monitoring those pods.

          The operator exposes a metric named: `appsvcs_cpu_usage_cores`
          The metric has a label for product category, these are Runtimes, Integration and Automation.
          There is a prometheus rule using the metric to group by product name, `appsvcs_cores_by_product:sum`.

          The operator utilises the OpenShift Monitoring Stack to provide usage observability via cloud.redhat.com

          ## Prerequisites for enabling this Operator

          None.
        displayName: Application Services Metering Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - metering
        - operator
        links:
        - name: Red Hat Application Services portfolio
          url: https://www.redhat.com/en/products/middleware
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/redhat-developer/application-services-metering-operator:0.6.1
        - quay.io/openshift-community-operators/application-services-metering-operator@sha256:c3600cc8cd789df1f3c8f48bb3b1bc4c9cbf0285b6f6ce06f1d563c52f50915e
        version: 0.6.1
      entries:
      - name: application-services-metering-operator.v0.6.1
        version: 0.6.1
      - name: application-services-metering-operator.v0.6.0
        version: 0.6.0
      name: alpha
    defaultChannel: alpha
    packageName: application-services-metering-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: ""
    name: awss3-operator-registry
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: awss3operator.1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/screeley44/aws-s3-provisioner:v1.0.0
          createdAt: "2019-05-02 16:12:00"
          description: Manage the full lifecycle of installing, configuring and managing
            AWS S3 Provisioner.
          repository: https://github.com/yard-turkey/aws-s3-provisioner
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          required:
          - description: instance of an AWS S3 Bucket
            displayName: Object Bucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
          - description: Request for an AWS S3 Bucket
            displayName: Object Bucket Claim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
        description: |
          AWS S3 Operator will deploy the AWS S3 Provisioner which will dynamically or statically
          provision AWS S3 Bucket storage and access. The operator deploys the ObjectBucket (OB) and ObjectBucketClaim (OBC)
          CustomResourceDefinitions. The OB/OBC model follows the traditional Kubernetes PV/PVC pattern, when an OBC is detected
          the operator will act on the OBC to either provision a brand new S3 Bucket in AWS or gain access to an existing
          S3 Bucket in AWS. The operator produces an OB and ConfigMap and Secret which can then be consumed by application pods.

          **Important Note**: Currently, while in preview, this operator does not
          support automatic upgrades. You must remove the old version of the operator
          manually before installing a new version.
          ## Using AWS S3 Operator

          ### Administrator Creates Secret
          This secret will contain the elevated/admin privileges needed by the provisioner
          to properly access and create S3 Buckets and IAM users and policies. The AWS Access ID
          and AWS Secret Key will be needed for this.
          1. Create the Kubernetes Secret for the Provisioner's Owner Access.
          ```yaml
          apiVersion: v1
          kind: Secret
          metadata:
            name: s3-bucket-owner [1]
            namespace: s3-provisioner [2]
          type: Opaque
          data:
            AWS_ACCESS_KEY_ID: *base64 encoded value* [3]
            AWS_SECRET_ACCESS_KEY: *base64 encoded value* [4]
          ```
          1. Name of the secret, this will be referenced in StorageClass.
          1. Namespace where the Secret will exist.
          1. Your AWS_ACCESS_KEY_ID base64 encoded.
          1. Your AWS_SECRET_ACCESS_KEY base64 encoded.
          ```
           # kubectl create -f creds.yaml
          secret/s3-bucket-owner created
          ```
          ### Administrator Creates StorageClass
          The StorageClass defines the name of the provisioner and holds other properties that are needed to provision a new bucket, including
          the Owner Secret and Namespace, and the AWS Region.
          #### Greenfield Example:
          For Greenfield, a new, dynamic bucket will be generated.
          1. Create the Kubernetes StorageClass for the Provisioner.
          ```yaml
          kind: StorageClass
          apiVersion: storage.k8s.io/v1
          metadata:
            name: s3-buckets [1]
          provisioner: aws-s3.io/bucket [2]
          parameters:
            region: us-west-1 [3]
            secretName: s3-bucket-owner [4]
            secretNamespace: s3-provisioner [5]
          reclaimPolicy: Delete [6]
          ```
          1. Name of the StorageClass, this will be referenced in the User ObjectBucketClaim.
          1. Provisioner name
          1. AWS Region that the StorageClass will serve
          1. Name of the bucket owner Secret created above
          1. Namespace where the Secret will exist
          1. reclaimPolicy (Delete or Retain) indicates if the bucket can be deleted when the OBC is deleted.
          **NOTE:** the absence of the `bucketName` Parameter key in the storage class indicates this is a new bucket and its name is based on the bucket name fields in the OBC.
          ```
           # kubectl create -f storageclass-greenfield.yaml
          storageclass.storage.k8s.io/s3-buckets created
          ```
          #### Brownfield Example:
          For brownfield, the StorageClass defines the name of the provisioner and the name of the existing bucket. It also includes other properties needed by the target
          provisioner, including: the Owner Secret and Namespace, and the AWS Region
          1. Create the Kubernetes StorageClass for the Provisioner.
          ```yaml
          kind: StorageClass
          apiVersion: storage.k8s.io/v1
          metadata:
            name: s3-existing-buckets [1]
          provisioner: aws-s3.io/bucket [2]
          parameters:
            bucketName: my-existing-bucket [3]
            region: us-west-1 [4]
            secretName: s3-bucket-owner [5]
            secretNamespace: s3-provisioner [6]
          ```
          1. Name of the StorageClass, this will be referenced in the User ObjectBucketClaim.
          1. Provisioner name
          1. Name of the existing bucket
          1. AWS Region that the StorageClass will serve
          1. Name of the bucket owner Secret created above
          1. Namespace for that bucket owner secret
          **NOTE:** the storage class's `reclaimPolicy` is ignored for existing buckets.
          ```
           # kubectl create -f storageclass-brownfield.yaml
          storageclass.storage.k8s.io/s3-buckets created
          ```
          ### User Creates ObjectBucketClaim
          An ObjectBucketClaim follows the same concept as a PVC, in that
          it is a request for Object Storage, the user doesn't need to
          concern him/herself with the underlying storage, just that
          they need access to it. The user will work with the cluster/storage
          administrator to get the proper StorageClass needed and will
          then request access via the OBC.
          #### Greenfield Request Example:
          1. Create the ObjectBucketClaim.
          ```yaml
          apiVersion: objectbucket.io/v1alpha1
          kind: ObjectBucketClaim
          metadata:
            name: myobc [1]
            namespace: s3-provisioner [2]
          spec:
            generateBucketName: mybucket [3]
            bucketName: my-awesome-bucket [4]
            storageClassName: s3-buckets [5]
          ```
          1. Name of the OBC
          1. Namespace of the OBC
          1. Name prepended to a random string used to generate a bucket name. It is ignored if bucketName is defined
          1. Name of new bucket which must be unique across all AWS regions, otherwise an error occurs when creating the bucket. If present, this name overrides `generateName`
          1. StorageClass name
          **NOTE:** if both `generateBucketName` and `bucketName` are omitted, and the storage class does _not_ define a bucket name, then a new, random bucket name is generated with no prefix.
          ```
           # kubectl create -f obc-brownfield.yaml
          objectbucketclaim.objectbucket.io/myobc created
          ```
          #### Brownfield Request Example:
          1. Create the ObjectBucketClaim.
          ```yaml
          apiVersion: objectbucket.io/v1alpha1
          kind: ObjectBucketClaim
          metadata:
            name: myobc [1]
            namespace: s3-provisioner [2]
          spec:
            storageClassName: s3-existing-buckets [3]
          ```
          1. Name of the OBC
          1. Namespace of the OBC
          1. StorageClass name
          **NOTE:** in the OBC here there is no reference to the bucket's name. This is defined in the storage class and is not a concern of the user creating the claim to this bucket.  An OBC does have fields for defining a bucket name for greenfield use only.
          ```
           # kubectl create -f obc-brownfield.yaml
          objectbucketclaim.objectbucket.io/myobc created
          ```
          ### Results and Recap
          Let's pause for a moment and digest what just happened.
          After creating the OBC, and assuming the S3 provisioner is running, we now have
          the following Kubernetes resources:
          .  a global ObjectBucket (OB) which contains: bucket endpoint info (including region and bucket name), a reference to the OBC, and a reference to the storage class. Unique to S3, the OB also contains the bucket Amazon Resource Name (ARN).Note: there is always a 1:1 relationship between an OBC and an OB.
          .  a ConfigMap in the same namespace as the OBC, which contains the same endpoint data found in the OB.
          .  a Secret in the same namespace as the OBC, which contains the AWS key-pairs needed to access the bucket.
          And of course, we have a *new* AWS S3 Bucket which you should be able to see via the AWS Console.
          *ObjectBucket*
          ```yaml
           # kubectl get ob obc-s3-provisioner-my-awesome-bucket -o yaml
          apiVersion: objectbucket.io/v1alpha1
          kind: ObjectBucket
          metadata:
            creationTimestamp: "2019-04-03T15:42:22Z"
            generation: 1
            name: obc-s3-provisioner-my-awesome-bucket
            resourceVersion: "15057"
            selfLink: /apis/objectbucket.io/v1alpha1/objectbuckets/obc-s3-provisioner-my-awesome-bucket
            uid: 0bfe8e84-576d-4c4e-984b-f73c4460f736
          spec:
            Connection:
              additionalState:
                ARN: arn:aws:iam::<accountid>:policy/my-awesome-bucket-vSgD5 [1]
                UserName: my-awesome-bucket-vSgD5 [2]
              endpoint:
                additionalConfig: null
                bucketHost: s3-us-west-1.amazonaws.com
                bucketName: my-awesome-bucket [3]
                bucketPort: 443
                region: us-west-1
                ssl: true
                subRegion: ""
            claimRef: null [4]
            reclaimPolicy: null
            storageClassName: s3-buckets [5]
          ```
          1. The AWS Policy created for this user and bucket.
          1. The new user generated by the Provisioner to access this existing bucket.
          1. The bucket name.
          1. The reference to the OBC (not filled in yet).
          1. The reference to the StorageClass used.
          *ConfigMap*
          ```yaml
           # kubectl get cm myobc -n s3-provisioner -o yaml
          apiVersion: v1
          data:
            BUCKET_HOST: s3-us-west-1.amazonaws.com [1]
            BUCKET_NAME: my-awesome-bucket [2]
            BUCKET_PORT: "443"
            BUCKET_REGION: us-west-1
            BUCKET_SSL: "true"
            BUCKET_SUBREGION: ""
          kind: ConfigMap
          metadata:
            creationTimestamp: "2019-04-01T19:11:38Z"
            finalizers:
            - objectbucket.io/finalizer
            name: my-awesome-bucket
            namespace: s3-provisioner
            resourceVersion: "892"
            selfLink: /api/v1/namespaces/s3-provisioner/configmaps/my-awesome-bucket
            uid: 2edcc58a-aff8-4a29-814a-ffbb6439a9cd
          ```
          1. The AWS S3 host.
          1. The name of the new bucket we are gaining access to.
          *Secret*
          ```yaml
           # kubectl get secret my-awesome-bucket -n s3-provisioner -o yaml
          apiVersion: v1
          data:
            AWS_ACCESS_KEY_ID: *the_new_access_id* [1]
            AWS_SECRET_ACCESS_KEY: *the_new_access_key_value* [2]
          kind: Secret
          metadata:
            creationTimestamp: "2019-04-03T15:42:22Z"
            finalizers:
            - objectbucket.io/finalizer
            name: my-awesome-bucket
            namespace: s3-provisioner
            resourceVersion: "15058"
            selfLink: /api/v1/namespaces/s3-provisioner/secrets/screeley-provb-5
            uid: 225c71a5-9d75-4ccc-b41f-bfe91b272a13
          type: Opaque
          ```
          1. The new generated AWS Access Key ID.
          1. The new generated AWS Secret Access Key.
          What happened in AWS? The first thing we do on any OBC request is
          create a new IAM user and generate Access ID and Secret Keys.
          This allows us to also better control ACLs. We also create a policy
          in IAM which we then attach to the user and bucket. We also created a new bucket, called *my-awesome-bucket*.
          When the OBC is deleted all of its Kubernetes and AWS resources will also be deleted, which includes:
          the generated OB, Secret, ConfigMap, IAM user, and policy.
          If the _retainPolicy_ on the StorageClass for this bucket is *"Delete"*, then, in addition to the above cleanup, the physical bucket is also deleted.
          **NOTE:** The actual bucket is only deleted if the Storage Class's _reclaimPolicy_ is "Delete".
          ### User Creates Pod
          Now that we have our bucket and connection/access information, a pod
          can be used to access the bucket. This can be done in several different
          ways, but the key here is that the provisioner has provided the proper
          endpoints and keys to access the bucket. The user then simply references
          the keys.
          1. Create a Sample Pod to Access the Bucket.
          ```yaml
          apiVersion: v1
          kind: Pod
          metadata:
            name: photo1
            labels:
              name: photo1
          spec:
            containers:
            - name: photo1
              image: docker.io/screeley44/photo-gallery:latest
              imagePullPolicy: Always
              envFrom:
              - configMapRef:
                  name: my-awesome-bucket <1>
              - secretRef:
                  name: my-awesome-bucket <2>
              ports:
              - containerPort: 3000
                protocol: TCP
          ```
          1. Name of the generated configmap from the provisioning process
          1. Name of the generated secret from the provisioning process
          *[Note]* Generated ConfigMap and Secret are same name as the OBC!
          Lastly, expose the pod as a service so you can access the url from a browser. In this example,
          I exposed as a LoadBalancer
          ```
            # kubectl expose pod photo1 --type=LoadBalancer --name=photo1 -n your-namespace
          ```
          To access via a url use the EXTERNAL-IP
          ```
            # kubectl get svc photo1
            NAME                         TYPE           CLUSTER-IP       EXTERNAL-IP                                                               PORT(S)          AGE
            photo1                       LoadBalancer   100.66.124.105   a00c53ccb3c5411e9b6550a7c0e50a2a-2010797808.us-east-1.elb.amazonaws.com   3000:32344/TCP   6d
          ```
          **NOTE:** This is just one example of a Pod that can utilize the bucket information,
          there are several ways that these pod applications can be developed and therefore
          the method of getting the actual values needed from the Secrets and ConfigMaps
          will vary greatly, but the idea remains the same, that the pod consumes the generated
          ConfigMap and Secret created by the provisioner.
        displayName: AWS S3 Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - awss3provisioner
        - aws
        - S3
        - provisioner
        - buckets
        links:
        - name: AWS S3 Provisioner
          url: https://github.com/yard-turkey/aws-s3-provisioner
        - name: Provisioner Examples
          url: https://github.com/yard-turkey/aws-s3-provisioner/tree/master/examples
        - name: Operator Documentation
          url: https://github.com/yard-turkey/awss3operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/openshift-community-operators/awss3-operator-registry@sha256:9ab3a2cd00b8704a8bae8e9b75f2a95d0a3e60fa3cb52589db8a4e7641b73027
        - quay.io/screeley44/aws-s3-provisioner:v1.0.0
        version: 1.0.1
      entries:
      - name: awss3operator.1.0.1
        version: 1.0.1
      name: alpha
    defaultChannel: alpha
    packageName: awss3-operator-registry
    provider:
      name: Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: machine-deletion-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: machine-deletion-remediation.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediation",
                "metadata": {
                  "name": "machinedeletionremediation-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediationTemplate",
                "metadata": {
                  "name": "machinedeletionremediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/machine-deletion-remediation-operator:v0.1.0
          createdAt: "2023-05-11 10:46:12"
          description: Machine Deletion Remediation operator for reprovisioning unhealthy
            nodes using the Machine API.
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/machine-deletion-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MachineDeletionRemediation is the Schema for the machinedeletionremediations
              API
            displayName: Machine Deletion Remediation
            kind: MachineDeletionRemediation
            name: machinedeletionremediations.machine-deletion-remediation.medik8s.io
            version: v1alpha1
          - description: MachineDeletionRemediationTemplate is the Schema for the
              machinedeletionremediationtemplates API
            displayName: Machine Deletion Remediation Template
            kind: MachineDeletionRemediationTemplate
            name: machinedeletionremediationtemplates.machine-deletion-remediation.medik8s.io
            version: v1alpha1
        description: |
          Machine Deletion Remediation (MDR) is a remediator designed to reprovision unhealthy
          nodes using the Machine API. MDR can be used together with NodeHealthCheck (NHC),
          which detects the unhealthy Node and creates the Custom Resource for MDR.

          # How it works
          MDR follows the annotation on the Node to the associated Machine object, confirms
          that it has an owning controller (e.g. MachineSetController), that will recreate the
          Machine once deleted, and then proceeds with deleting the Machine.

          # How to use MDR with NHC
          Since NHC comes with Self Node Remediation as the default remediation mechanism,
          it needs to be configured to use MDR with the following steps

          - Create the MDR Template CR
          - Modify NHC's `.spec.remediationTemplate` to use MDR as it's remediator

          see https://github.com/medik8s/machine-deletion-remediation#readme for configuration examples.
        displayName: Machine Deletion Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - machine
        - deletion
        - remediation
        - mdr
        links:
        - name: Machine Deletion Remediation
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/machine-deletion-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/openshift-community-operators/machine-deletion-remediation@sha256:34d1e6cbfaf248a7b28c2a6e6a39f3fe46c183b9c38ac5fbb98eb3f421ba903c
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/medik8s/machine-deletion-remediation-operator:v0.1.0
        version: 0.1.0
      entries:
      - name: machine-deletion-remediation.v0.1.0
        version: 0.1.0
      name: candidate
    - currentCSV: machine-deletion-remediation.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediation",
                "metadata": {
                  "name": "machinedeletionremediation-sample"
                },
                "spec": {},
                "status": {
                  "conditions": [
                    {
                      "reason": "RemediationFinished",
                      "status": false,
                      "type": "Processing"
                    },
                    {
                      "reason": "RemediationFinished",
                      "status": true,
                      "type": "Succeeded"
                    },
                    {
                      "reason": "MachineDeletionOnBareMetalProviderReason",
                      "status": false,
                      "type": "PermanentNodeDeletionExpected"
                    }
                  ]
                }
              },
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediationTemplate",
                "metadata": {
                  "name": "machinedeletionremediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/machine-deletion-remediation-operator:v0.5.0
          createdAt: "2025-11-24 11:43:35"
          description: Machine Deletion Remediation operator for reprovisioning unhealthy
            nodes using the Machine API.
          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.skipRange: '>=0.0.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/machine-deletion-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MachineDeletionRemediation is the Schema for the machinedeletionremediations
              API
            displayName: Machine Deletion Remediation
            kind: MachineDeletionRemediation
            name: machinedeletionremediations.machine-deletion-remediation.medik8s.io
            version: v1alpha1
          - description: MachineDeletionRemediationTemplate is the Schema for the
              machinedeletionremediationtemplates API
            displayName: Machine Deletion Remediation Template
            kind: MachineDeletionRemediationTemplate
            name: machinedeletionremediationtemplates.machine-deletion-remediation.medik8s.io
            version: v1alpha1
        description: |
          Machine Deletion Remediation (MDR) is a remediator designed to reprovision unhealthy
          nodes using the Machine API. MDR can be used together with NodeHealthCheck (NHC),
          which detects the unhealthy Node and creates the Custom Resource for MDR.

          # How it works
          MDR follows the annotation on the Node to the associated Machine object, confirms
          that it has an owning controller (e.g. MachineSetController), that will recreate the
          Machine once deleted, and then proceeds with deleting the Machine.

          # How to use MDR with NHC
          To use MDR as remediation mechanism for NHC, it needs to be configured with the
          following steps:

          - Create the MDR Template CR
          - Modify NHC's `.spec.remediationTemplate` to use MDR as it's remediator

          see https://github.com/medik8s/machine-deletion-remediation#readme for configuration examples.
        displayName: Machine Deletion Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - machine
        - deletion
        - remediation
        - mdr
        links:
        - name: Machine Deletion Remediation
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/machine-deletion-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/machine-deletion-remediation@sha256:2f945457449d5e8861cf62af3e0a487cfcfb039ab62f0c4a44881e7506bba6b5
        - quay.io/medik8s/machine-deletion-remediation-operator:v0.5.0
        version: 0.5.0
      entries:
      - name: machine-deletion-remediation.v0.5.0
        version: 0.5.0
      - name: machine-deletion-remediation.v0.4.0
        version: 0.4.0
      - name: machine-deletion-remediation.v0.3.0
        version: 0.3.0
      - name: machine-deletion-remediation.v0.2.1
        version: 0.2.1
      - name: machine-deletion-remediation.v0.2.0
        version: 0.2.0
      name: stable
    defaultChannel: stable
    packageName: machine-deletion-remediation
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: aws-efs-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-efs-csi-driver-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-aws-efs-csi-driver-rhel9-operator@sha256:f5a64edc71e8472da9b984c6b8d1efbf23faa3ec28814d28eb9204e87afdb072
          createdAt: "2021-07-14T00:00:00Z"
          description: Install and configure AWS EFS CSI driver.
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=4.9.0-0 <4.20.0-202512090918'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/aws-efs-csi-driver-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          AWS EFS CSI Driver Operator provides AWS Elastic File Service (EFS) CSI Driver that enables you to create and mount AWS EFS PersistentVolumes.

          Please follow [AWS EFS CSI Driver Operator documentation](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html) to:

          1. [Install the operator](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html#persistent-storage-csi-olm-operator-install_persistent-storage-csi-aws-efs). This section also covers details about configuring an AWS role in OCP cluster that uses Secure Token Services (STS).

          2. [Install the AWS EFS CSI driver using the operator](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html#persistent-storage-csi-efs-driver-install_persistent-storage-csi-aws-efs)

          3. Finally, [create a StorageClass](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html#storage-create-storage-class_persistent-storage-csi-aws-efs) that enables dynamic provisioning of PersistentVolumes.
        displayName: AWS EFS CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - efs
        links:
        - name: Documentation
          url: https://github.com/openshift/aws-efs-csi-driver-operator
        - name: Source Repository
          url: https://github.com/openshift/aws-efs-csi-driver-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:ec763a4e90cb4b256a7210cd2e30949a7bc8e83ee04a95c649270febcc892210
        - registry.redhat.io/openshift4/ose-aws-efs-csi-driver-operator-bundle@sha256:ca5538fdd21cf27dcbcfdc1168c76ad2c2ba2b8bae97e2d22f07e16a7212259f
        - registry.redhat.io/openshift4/ose-aws-efs-csi-driver-container-rhel9@sha256:583c12b4a5e07fc8af95afef764d6ea9da437d7adbdc910825b3f44e928ca110
        - registry.redhat.io/openshift4/ose-aws-efs-csi-driver-rhel9-operator@sha256:f5a64edc71e8472da9b984c6b8d1efbf23faa3ec28814d28eb9204e87afdb072
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        version: 4.20.0-202512090918
      entries:
      - name: aws-efs-csi-driver-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: aws-efs-csi-driver-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: aws-efs-csi-driver-operator.v4.20.0-202511191615
        version: 4.20.0-202511191615
      - name: aws-efs-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: aws-efs-csi-driver-operator.v4.20.0-202511040554
        version: 4.20.0-202511040554
      - name: aws-efs-csi-driver-operator.v4.20.0-202510212154
        version: 4.20.0-202510212154
      - name: aws-efs-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: aws-efs-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      operatorframework.io/os.zos: supported
      provider: Red Hat
      provider-url: ""
    name: hawtio-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hawtio-operator.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.14.0",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/hawtio/operator:0.5.0
          createdAt: "2022-04-08T00:00:00Z"
          description: Hawtio eases the discovery and management of Java applications
            deployed on OpenShift.
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Hawtio Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Hawtio
          ==============

          The Hawtio console eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between the Hawtio console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Hawtio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Hawtio Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The Hawtio team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - docker.io/hawtio/operator:0.5.0
        - quay.io/openshift-community-operators/hawtio-operator@sha256:38b36745547a08afd10e1620f8243e6f1ce18a3eb8883ec78cd631577177c5ee
        version: 0.5.0
      entries:
      - name: hawtio-operator.v0.5.0
        version: 0.5.0
      - name: hawtio-operator.v0.4.0
        version: 0.4.0
      name: alpha
    - currentCSV: hawtio-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/hawtio/operator:1.2.0
          createdAt: "2024-12-02T17:22:48Z"
          description: Hawtio eases the discovery and management of Java applications
            deployed on OpenShift.
          olm.skipRange: '>=1.0.0 <1.0.2'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Hawtio console that eases the discovery and management
              of hawtio-enabled applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Hawtio
          ==============

          The Hawtio console eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between the Hawtio console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#jvm-agent).
        displayName: Hawtio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Hawtio Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The Hawtio team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hawtio-operator@sha256:306ab7846b4c65dd9cb21d903a6cfc9b6f8f2ad409fffbdd136b30ad5989a255
        - quay.io/hawtio/operator:1.2.0
        version: 1.2.0
      entries:
      - name: hawtio-operator.v1.2.0
        version: 1.2.0
      - name: hawtio-operator.v1.1.1
        version: 1.1.1
      - name: hawtio-operator.v1.1.0
        version: 1.1.0
      - name: hawtio-operator.v1.0.1
        version: 1.0.1
      - name: hawtio-operator.v1.0.0
        version: 1.0.0
      - name: hawtio-operator.v0.5.0
        version: 0.5.0
      - name: hawtio-operator.v0.4.0
        version: 0.4.0
      name: latest
    - currentCSV: hawtio-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/hawtio/operator:1.2.0
          createdAt: "2024-12-02T17:22:48Z"
          description: Hawtio eases the discovery and management of Java applications
            deployed on OpenShift.
          olm.skipRange: '>=1.0.0 <1.0.2'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Hawtio console that eases the discovery and management
              of hawtio-enabled applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Hawtio
          ==============

          The Hawtio console eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between the Hawtio console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#jvm-agent).
        displayName: Hawtio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Hawtio Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The Hawtio team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hawtio-operator@sha256:306ab7846b4c65dd9cb21d903a6cfc9b6f8f2ad409fffbdd136b30ad5989a255
        - quay.io/hawtio/operator:1.2.0
        version: 1.2.0
      entries:
      - name: hawtio-operator.v1.2.0
        version: 1.2.0
      - name: hawtio-operator.v1.1.1
        version: 1.1.1
      - name: hawtio-operator.v1.1.0
        version: 1.1.0
      - name: hawtio-operator.v1.0.1
        version: 1.0.1
      - name: hawtio-operator.v1.0.0
        version: 1.0.0
      - name: hawtio-operator.v0.5.0
        version: 0.5.0
      - name: hawtio-operator.v0.4.0
        version: 0.4.0
      name: stable-v1
    defaultChannel: stable-v1
    packageName: hawtio-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Kurrent, Inc
      provider-url: https://kurrent.io
    name: kurrentdb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kurrentdb-operator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "kubernetes.kurrent.io/v1",
                "kind": "KurrentDB",
                "metadata": {
                  "name": "insecure",
                  "namespace": "kurrent"
                },
                "spec": {
                  "replicas": 1,
                  "image": "registry.connect.redhat.com/kurrent-io/kurrentdb@sha256:4dc9fcb41de27695ba04731e768fb18cde2f1c7882f8787dfce3d32b93520131",
                  "resources": {
                    "requests": {
                      "cpu": "1000m",
                      "memory": "1Gi"
                    }
                  },
                  "storage": {
                    "volumeMode": "Filesystem",
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "512Mi"
                      }
                    }
                  },
                  "volumeSnapshotClassName": "e2e",
                  "network": {
                    "domain": "kurrent.dev",
                    "fqdnTemplate": "{podName}.{domain}",
                    "loadBalancer": {
                      "enabled": true
                    }
                  }
                }
              },
              {
                "apiVersion": "kubernetes.kurrent.io/v1",
                "kind": "KurrentDBBackup",
                "metadata": {
                  "name": "insecure",
                  "namespace": "kurrent"
                },
                "spec": {
                  "clusterName": "insecure"
                }
              },
              {
                "apiVersion": "kubernetes.kurrent.io/v1",
                "kind": "KurrentDBBackupSchedule",
                "metadata": {
                  "name": "my-schedule",
                  "namespace": "kurrent"
                },
                "spec": {
                  "schedule": "* * * * *",
                  "template": {
                    "spec": {
                      "clusterName": "insecure"
                    }
                  },
                  "keep": 10
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database, Streaming & Messaging, OpenShift Optional
          certified: "true"
          containerImage: registry.connect.redhat.com/kurrent-io/kurrentdb-operator@sha256:9e10c1f7055fc5bbe8e4d8289b247389d337a77a27d56232022695405a10b980
          createdAt: "2025-12-23T00:00:00Z"
          description: An operator to seamlessly deploy and manage KurrentDB clusters
            and backups.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: license required, contact us
            at https://www.kurrent.io/contact
          repository: https://github.com/kurrent-io/kurrentdb
          support: support@kurrent.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A declarative representation of a KurrentDB cluster.
            kind: KurrentDB
            name: kurrentdbs.kubernetes.kurrent.io
            version: v1
          - description: A VolumeSnapshot-based backup of a KurrentDB cluster.
            kind: KurrentDBBackup
            name: kurrentdbbackups.kubernetes.kurrent.io
            version: v1
          - description: A schedule for creating and retaining of KurrentDBBackup
              resources.
            kind: KurrentDBBackupSchedule
            name: kurrentdbbackupschedules.kubernetes.kurrent.io
            version: v1
        description: An operator to seamlessly deploy and manage KurrentDB clusters
          and backups.
        displayName: KurrentDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kurrent
        - event sourcing
        - database
        links:
        - name: Website
          url: https://kurrent.io
        - name: Documentation
          url: https://docs.kurrent.io/server/kubernetes-operator
        maintainers:
        - email: support@kurrent.io
          name: Kurrent, Inc
        maturity: stable
        minKubeVersion: 1.30.0
        nativeApis:
        - group: snapshot.storage.k8s.io
          kind: VolumeSnapshot
          version: v1
        - group: snapshot.storage.k8s.io
          kind: VolumeSnapshotClass
          version: v1
        provider:
          name: Kurrent, Inc
          url: https://kurrent.io
        relatedImages:
        - registry.connect.redhat.com/kurrent-io/dns@sha256:07e8771886b4e4ab7393dee7a56c4a6d2c2225ba0aeca25e47199da616c903e4
        - registry.connect.redhat.com/kurrent-io/kurrentdb-operator-bundle@sha256:929fc9043cf20eb2838c3d63598967bcfba264011e1b9a98c9d8a38821926edc
        - registry.connect.redhat.com/kurrent-io/kurrentdb-operator@sha256:9e10c1f7055fc5bbe8e4d8289b247389d337a77a27d56232022695405a10b980
        - registry.connect.redhat.com/kurrent-io/kurrentdb@sha256:4dc9fcb41de27695ba04731e768fb18cde2f1c7882f8787dfce3d32b93520131
        version: 1.5.0
      entries:
      - name: kurrentdb-operator.v1.5.0
        version: 1.5.0
      name: stable
    defaultChannel: stable
    packageName: kurrentdb-operator
    provider:
      name: Kurrent, Inc
      url: https://kurrent.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataStax
      provider-url: ""
    name: cass-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cass-operator.v1.23.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cassandra.datastax.com/v1beta1",
                "kind": "CassandraDatacenter",
                "metadata": {
                  "name": "dc1"
                },
                "spec": {
                  "clusterName": "development",
                  "config": {
                    "cassandra-yaml": {
                      "authenticator": "PasswordAuthenticator",
                      "authorizer": "CassandraAuthorizer",
                      "num_tokens": 16,
                      "role_manager": "CassandraRoleManager"
                    },
                    "jvm-server-options": {
                      "initial_heap_size": "1G",
                      "max_heap_size": "1G"
                    }
                  },
                  "managementApiAuth": {
                    "insecure": {}
                  },
                  "podTemplateSpec": {
                    "spec": {
                      "containers": [
                        {
                          "name": "cassandra"
                        }
                      ],
                      "securityContext": {}
                    }
                  },
                  "racks": [
                    {
                      "name": "rack1"
                    },
                    {
                      "name": "rack2"
                    },
                    {
                      "name": "rack3"
                    }
                  ],
                  "resources": {
                    "requests": {
                      "cpu": "1000m",
                      "memory": "2Gi"
                    }
                  },
                  "serverType": "cassandra",
                  "serverVersion": "4.1.2",
                  "size": 3,
                  "storageConfig": {
                    "cassandraDataVolumeClaimSpec": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "10Gi"
                        }
                      },
                      "storageClassName": "server-storage"
                    }
                  }
                }
              },
              {
                "apiVersion": "control.k8ssandra.io/v1alpha1",
                "kind": "CassandraTask",
                "metadata": {
                  "name": "example-cleanup"
                },
                "spec": {
                  "datacenter": {
                    "name": "dc2",
                    "namespace": "cass-operator"
                  },
                  "jobs": [
                    {
                      "command": "cleanup",
                      "name": "cleanup-run"
                    }
                  ]
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database,Big Data,OpenShift Optional
          certified: "true"
          containerImage: registry.connect.redhat.com/datastax/cass-operator@sha256:6abc6253b50a0d7f6bdd4b394d2bf96320a8845952aeb8f0bbed99863192ec52
          createdAt: "2025-03-20"
          description: |
            Simple provisioning, turn-key operations, and automated remediation of Apache Cassandra clusters
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/k8ssandra/cass-operator
          support: DataStax
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CassandraDatacenter is the Schema for the cassandradatacenters
              API
            displayName: Cassandra Datacenter
            kind: CassandraDatacenter
            name: cassandradatacenters.cassandra.datastax.com
            version: v1beta1
          - description: CassandraTask is the Schema for the cassandrajobs API
            displayName: Cassandra Task
            kind: CassandraTask
            name: cassandratasks.control.k8ssandra.io
            version: v1alpha1
        description: "## Apache Cassandra\n\nThe Apache Cassandra database is the
          right choice when you need scalability and\nhigh availability without compromising
          performance. Linear scalability and\nproven fault-tolerance on commodity
          hardware or cloud infrastructure make it the\nperfect platform for mission-critical
          data. Cassandra's support for replicating\nacross multiple datacenters is
          best-in-class, providing lower latency for your\nusers and the peace of
          mind of knowing that you can survive regional outages.\n\n## DataStax Enterprise\n\nThe
          most advanced distribution of Apache Cassandra™ on the market, with the\nenterprise
          functionality needed for serious production systems and backed up and\nsupported
          by the best distributed-experts in the world. It's one platform for\nall
          types of applications anywhere, any cloud, any model: key-value, graph,\ntabular,
          JSON.\n\nDataStax Enterprise is a fully integrated and optimized database,
          with graph,\nanalytics, and search included, all with a unified security
          model. Simply put,\nit's the only database capable of meeting today's demanding
          requirements\n\n## Operator Details\n\n`cass-operator` is designed as a
          modular operator for Apache Cassandra and\nderived  distributions. Apache
          Cassandra is a distributed database consisting of\nmultiple nodes working
          in concert to store data and process queries along a\nnumber of fault domains.
          `cass-operator` has the deployment of a Cassandra\ncluster around the logical
          domain of a datacenter with the `CassandraDatacenter`\ncustom resource.\n
          \   \nUpon submission of one of these resources it handles provisioning
          the underlying\nstateful sets (analogous to C\\* logical racks), services,
          and configuration.\nAdditionally through monitoring pod state via Kubernetes
          callbacks it handles day to day\noperations such as restarting failed processes,
          scaling clusters up, and deploying\nconfiguration changes in a rolling,
          non-disruptive, fashion.\n    \nThis operator is designed to be `Namespace`
          scoped. A single Kubernetes cluster may\nbe running multiple instances of
          this operator, in separate namespaces, to support\na number of C\\* clusters
          and environments. Configuration is simple with the usage of\nYAML based
          overrides in the Custom Resource paired with an `init` container.\n    \nIn
          C\\* clusters ordering and timing of certain operations are important to
          keep the system\nevenly distributed. `cass-operator` takes advantage of
          a sidecar process within the\nmain container to handle the orchestration
          of starting our main C* process."
        displayName: DataStax Kubernetes Operator for Apache Cassandra
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - k8ssandra
        - cass-operator
        - DataStax Enterprise
        - Apache Cassandra
        - DSE
        - C*
        - Cassandra
        links:
        - name: DataStax
          url: https://datastax.com
        - name: Operator GitHub Repo
          url: https://github.com/k8ssandra/cass-operator
        - name: Config Builder GitHub Repo
          url: https://github.com/datastax/cass-config-builder
        - name: Documentation [1]
          url: https://github.com/k8ssandra/cass-operator/tree/master/docs/user
        - name: Documentation [2]
          url: https://docs.datastax.com/en/cass-operator/doc/cass-operator/cassOperatorTOC.html
        maintainers:
        - email: cass-operator@datastax.com
          name: DataStax Operator Team
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: DataStax
        relatedImages:
        - registry.connect.redhat.com/datastax/cass-operator@sha256:6abc6253b50a0d7f6bdd4b394d2bf96320a8845952aeb8f0bbed99863192ec52
        - registry.connect.redhat.com/datastax/system-logger@sha256:3408620786e6265aa835be56f85aadc48b20060b2038dc21126f614685f77c6b
        - registry.connect.redhat.com/datastax/cass-operator-bundle@sha256:8d130a5f2407931dbc73e45a53610b95ceb04cb507b8f6519f630cada1c0da45
        version: 1.23.2
      entries:
      - name: cass-operator.v1.23.2
        version: 1.23.2
      name: stable
    defaultChannel: stable
    packageName: cass-operator
    provider:
      name: DataStax
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NeuVector
      provider-url: ""
    name: neuvector-certified-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: neuvector-operator.v1.5.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apm.neuvector.com/v1alpha1",
                "kind": "Neuvector",
                "metadata": {
                  "name": "neuvector"
                },
                "spec": {
                  "openshift": true,
                  "tag": "5.4.8",
                  "oem": "",
                  "imagePullSecrets": "",
                  "psp": false,
                  "rbac": true,
                  "serviceAccount": "default",
                  "leastPrivilege": false,
                  "global": {
                    "cattle": {
                      "url": ""
                    }
                  },
                  "bootstrapPassword": "",
                  "autoGenerateCert": true,
                  "defaultValidityPeriod": 365,
                  "internal": {
                    "certmanager": {
                      "enabled": false,
                      "secretname": "neuvector-internal"
                    },
                    "autoGenerateCert": true,
                    "autoRotateCert": true
                  },
                  "controller": {
                    "enabled": true,
                    "annotations": {},
                    "strategy": {
                      "type": "RollingUpdate",
                      "rollingUpdate": {
                        "maxSurge": 1,
                        "maxUnavailable": 0
                      }
                    },
                    "image": "registry.connect.redhat.com/neuvector/controller@sha256:b33ab222ee7a4e81387d7e85739f32ab9999bebeef58a795c513a6db53297108",
                    "imagePullPolicy": "IfNotPresent",
                    "replicas": 3,
                    "disruptionbudget": 0,
                    "schedulerName": "",
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "searchRegistries": "",
                    "env": [],
                    "affinity": {
                      "podAntiAffinity": {
                        "preferredDuringSchedulingIgnoredDuringExecution": [
                          {
                            "weight": 100,
                            "podAffinityTerm": {
                              "labelSelector": {
                                "matchExpressions": [
                                  {
                                    "key": "app",
                                    "operator": "In",
                                    "values": [
                                      "neuvector-controller-pod"
                                    ]
                                  }
                                ]
                              },
                              "topologyKey": "kubernetes.io/hostname"
                            }
                          }
                        ]
                      }
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "nodeSelector": {},
                    "apisvc": {
                      "ctrlServerPort": 10443,
                      "type": "",
                      "annotations": {},
                      "nodePort": "",
                      "route": {
                        "enabled": false,
                        "termination": "passthrough",
                        "host": "",
                        "tls": ""
                      }
                    },
                    "ranchersso": {
                      "enabled": false
                    },
                    "pvc": {
                      "enabled": false,
                      "existingClaim": false,
                      "accessModes": [
                        "ReadWriteMany"
                      ],
                      "storageClass": "",
                      "capacity": ""
                    },
                    "azureFileShare": {
                      "enabled": false,
                      "secretName": "",
                      "shareName": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "federation": {
                      "mastersvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      },
                      "managedsvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      }
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {
                        "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                      },
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "configmap": {
                      "enabled": false,
                      "data": ""
                    },
                    "secret": {
                      "enabled": false,
                      "data": {
                        "userinitcfg.yaml": {
                          "users": [
                            {
                              "Fullname": "admin",
                              "Password": "",
                              "Role": "admin"
                            }
                          ]
                        }
                      }
                    },
                    "certupgrader": {
                      "env": [],
                      "schedule": "",
                      "imagePullPolicy": "IfNotPresent",
                      "timeout": 3600,
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "prime": {
                      "enabled": false,
                      "image": {
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "1.0.9"
                      }
                    }
                  },
                  "enforcer": {
                    "enabled": true,
                    "image": "registry.connect.redhat.com/neuvector/enforcer@sha256:0061096cc49e87bc590933ed0d39db16606395cc6b6d2a45eddaa4fde3b74618",
                    "imagePullPolicy": "IfNotPresent",
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "env": [],
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/master"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/control-plane"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/etcd"
                      }
                    ],
                    "resources": {},
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "manager": {
                    "enabled": true,
                    "image": "registry.connect.redhat.com/neuvector/manager@sha256:624a467c261bd4ee094bdeddfe38f4786ea168bb96daef14155aeed0eac67a04",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "",
                    "env": {
                      "ssl": true,
                      "envs": []
                    },
                    "svc": {
                      "mgrServerPort": 8443,
                      "type": "ClusterIP",
                      "nodePort": "",
                      "loadBalancerIP": "",
                      "annotations": {}
                    },
                    "route": {
                      "enabled": true,
                      "termination": "passthrough",
                      "host": "",
                      "tls": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {},
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "topologySpreadConstraints": [],
                    "affinity": {},
                    "podLabels": {},
                    "podAnnotations": {},
                    "tolerations": [],
                    "nodeSelector": {},
                    "runAsUser": "",
                    "probes": {
                      "enabled": false,
                      "timeout": 1,
                      "periodSeconds": 10,
                      "startupFailureThreshold": 30
                    }
                  },
                  "cve": {
                    "updater": {
                      "enabled": true,
                      "secure": false,
                      "cacert": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                      "image": "registry.access.redhat.com/ubi8",
                      "imagePullPolicy": "IfNotPresent",
                      "schedule": "0 0 * * *",
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "scanner": {
                      "enabled": true,
                      "replicas": 3,
                      "dockerPath": "",
                      "strategy": {
                        "type": "RollingUpdate",
                        "rollingUpdate": {
                          "maxSurge": 1,
                          "maxUnavailable": 0
                        }
                      },
                      "image": "registry.connect.redhat.com/neuvector/scanner@sha256:7b8dd38328db215a27a0266714f10c046df3a2b0d58a56e65ac2020dc4244440",
                      "imagePullPolicy": "Always",
                      "priorityClassName": "",
                      "resources": {},
                      "topologySpreadConstraints": [],
                      "affinity": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "env": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": "",
                      "internal": {
                        "certificate": {
                          "secret": "",
                          "keyFile": "tls.key",
                          "pemFile": "tls.crt",
                          "caFile": "ca.crt"
                        }
                      },
                      "volumes": "",
                      "volumeMounts": ""
                    }
                  },
                  "resources": {},
                  "runtimePath": "",
                  "docker": {
                    "enabled": false,
                    "path": "/var/run/docker.sock"
                  },
                  "k3s": {
                    "enabled": false,
                    "runtimePath": "/run/k3s/containerd/containerd.sock"
                  },
                  "bottlerocket": {
                    "enabled": false,
                    "runtimePath": "/run/dockershim.sock"
                  },
                  "containerd": {
                    "enabled": false,
                    "path": "/var/run/containerd/containerd.sock"
                  },
                  "crio": {
                    "enabled": true,
                    "path": "/var/run/crio/crio.sock"
                  },
                  "admissionwebhook": {
                    "type": "ClusterIP"
                  },
                  "crdwebhooksvc": {
                    "enabled": true
                  },
                  "crdwebhook": {
                    "enabled": true,
                    "type": "ClusterIP"
                  },
                  "lease": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Networking, Security
          certified: "true"
          containerImage: registry.connect.redhat.com/neuvector/neuvector-operator@sha256:1a4f8921501f68b021b6a11698f007db175da9d8e14c7925ae12e14eb276bae9
          createdAt: "2020-12-02 14:19:21"
          description: NeuVector delivers the only cloud-native Kubernetes security
            platform with uncompromising end-to-end protection from DevOps vulnerability
            protection to automated run-time security, and featuring a true Layer
            7 container firewall.
          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"
          repository: https://github.com/neuvector/neuvector-operator
          support: support@neuvector.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Full LifeCycle Container Security Platform
            displayName: Neuvector
            kind: Neuvector
            name: neuvectors.apm.neuvector.com
            version: v1alpha1
        description: |+
          NeuVector delivers the only cloud-native Kubernetes security platform with uncompromising end-to-end protection from DevOps vulnerability protection to automated run-time security, and featuring a true Layer 7 container firewall.

          The NeuVector Operator runs  in the openshift container platform to deploy and manage the NeuVector Security cluster components. The NeuVector operator contains all necessary information to deploy NeuVector using helm charts. You simply need to install the NeuVector operator from the OpenShift embeded operator hub and create NeuVector instance. You can modify the NeuVector installation configuration by modifying yaml while creating the NeuVector instance such as imagePullSecrets, tag version, etc. Please refer to [github link](https://github.com/neuvector/neuvector-helm/tree/master/charts/core) for the values that can be modifed during installation. To upgrade to a newer version of NeuVector, just reapply the NeuVector instance with desired tag , which in turn pulls the specified NeuVector image tags and upgrades as per upgrade plan configured on the helm chart.  NeuVector Operator versions are tied to NeuVector product versions. Version 1.5.4 of the NeuVector Certified Operator deploys version 5.4.8 of NeuVector.

          **Complete below steps to Grant Service Account Access to the Privileged SCC before installation.**

          Create the NeuVector namespace

                   oc new-project  neuvector
          Login as system:admin account

                   oc login -u system:admin

          Privileged SCC is added to Service Account specified in the deploment yaml by Operator version 1.3.6 and above in new deployment. In case of upgrading NeuVector Operator from previous version to 1.3.6, please delete Privileged SCC before upgrading.

                   oc delete rolebinding -nneuvector system:openshift:scc:privileged

          The following info will be added in the Privileged SCC users:

                   - system:serviceaccount:neuvector:default

          In OpenShift 4.6+ use the following to check:

                   oc get rolebinding system:openshift:scc:privileged -n neuvector -o wide
                   system:openshift:scc:privileged   ClusterRole/system:openshift:scc:privileged   9m22s                    neuvector/default


          #Deploying the NeuVector Operator#


          Please refer to the instructions [here](https://github.com/neuvector/neuvector-operator/blob/master/README.md)


        displayName: NeuVector Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Monitoring
        - Networking
        - Security
        links:
        - name: NeuVector Operator
          url: https://github.com/neuvector/neuvector-operator
        maintainers:
        - email: support@neuvector.com
          name: A Full LifeCycle Container Security Platform
        maturity: beta
        provider:
          name: NeuVector
        relatedImages:
        - registry.connect.redhat.com/neuvector/controller@sha256:b33ab222ee7a4e81387d7e85739f32ab9999bebeef58a795c513a6db53297108
        - registry.connect.redhat.com/neuvector/enforcer@sha256:0061096cc49e87bc590933ed0d39db16606395cc6b6d2a45eddaa4fde3b74618
        - registry.connect.redhat.com/neuvector/manager@sha256:624a467c261bd4ee094bdeddfe38f4786ea168bb96daef14155aeed0eac67a04
        - registry.connect.redhat.com/neuvector/neuvector-operator-bundle@sha256:b27397b79fd28f2da9d7f20b5b004dfb3e1a995de092a8a755e5099fb87407cb
        - registry.connect.redhat.com/neuvector/neuvector-operator@sha256:1a4f8921501f68b021b6a11698f007db175da9d8e14c7925ae12e14eb276bae9
        - registry.connect.redhat.com/neuvector/scanner@sha256:7b8dd38328db215a27a0266714f10c046df3a2b0d58a56e65ac2020dc4244440
        - registry.access.redhat.com/ubi8@sha256:a444712276a635c9312d83a4ff7c6ee7f2ce08eeb5bd9ca291b5fdba257a5e63
        version: 1.5.4
      entries:
      - name: neuvector-operator.v1.5.4
        version: 1.5.4
      - name: neuvector-operator.v1.5.3
        version: 1.5.3
      - name: neuvector-operator.v1.5.2
        version: 1.5.2
      - name: neuvector-operator.v1.5.1
        version: 1.5.1
      - name: neuvector-operator.v1.5.0
        version: 1.5.0
      - name: neuvector-operator.v1.4.9
        version: 1.4.9
      - name: neuvector-operator.v1.4.8
        version: 1.4.8
      - name: neuvector-operator.v1.4.7
        version: 1.4.7
      - name: neuvector-operator.v1.4.6
        version: 1.4.6
      - name: neuvector-operator.v1.4.5
        version: 1.4.5
      - name: neuvector-operator.v1.4.4
        version: 1.4.4
      - name: neuvector-operator.v1.4.3
        version: 1.4.3
      - name: neuvector-operator.v1.4.2
        version: 1.4.2
      - name: neuvector-operator.v1.4.1
        version: 1.4.1
      - name: neuvector-operator.v1.4.0
        version: 1.4.0
      - name: neuvector-operator.v1.3.9
        version: 1.3.9
      - name: neuvector-operator.v1.3.8
        version: 1.3.8
      - name: neuvector-operator.v1.3.7
        version: 1.3.7
      - name: neuvector-operator.v1.3.6
        version: 1.3.6
      - name: neuvector-operator.v1.3.5
        version: 1.3.5
      - name: neuvector-operator.v1.3.4
        version: 1.3.4
      - name: neuvector-operator.v1.3.3
        version: 1.3.3
      - name: neuvector-operator.v1.3.2
        version: 1.3.2
      - name: neuvector-operator.v1.3.1
        version: 1.3.1
      - name: neuvector-operator.v1.3.0
        version: 1.3.0
      - name: neuvector-operator.v1.2.9
        version: 1.2.9
      name: beta
    defaultChannel: beta
    packageName: neuvector-certified-operator
    provider:
      name: NeuVector
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Aqua Security, Inc.
      provider-url: ""
    name: aqua
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aqua-operator.v2022.4.18
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaCsp",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "namespace": "aqua",
                    "version": "2022.4",
                    "requirements": true
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry",
                    "dbDiskSize": 10,
                    "databaseSecret": {
                      "key": "db-password",
                      "name": "aqua-database-password"
                    }
                  },
                  "database": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "database",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "gateway": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "gateway",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "server": {
                    "replicas": 1,
                    "service": "LoadBalancer",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "console",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "route": true,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaDatabase",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry",
                    "splitDB": false
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "database",
                      "tag": "<<IMAGE TAG>>"
                    }
                  },
                  "diskSize": 10,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry"
                  },
                  "deploy": {
                    "image": {
                      "repository": "enforcer",
                      "registry": "registry.aquasec.com",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "IfNotPresent"
                    }
                  },
                  "runAsNonRoot": false,
                  "gateway": {
                    "host": "aqua-gateway",
                    "port": 8443
                  },
                  "token": "<<your-token>>"
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaKubeEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "version": "2022.4",
                    "serviceAccount": "aqua-kube-enforcer-sa"
                  },
                  "config": {
                    "gateway_address": "aqua-gateway.aqua:8443",
                    "cluster_name": "aqua-secure",
                    "imagePullSecret": "aqua-registry",
                    "kubebench_image": "docker.io/aquasec/kube-bench:v0.7.1"
                  },
                  "deploy": {
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "tag": "<<KUBE_ENFORCER_TAG>>",
                      "repository": "kube-enforcer",
                      "pullPolicy": "Always"
                    }
                  },
                  "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>",
                  "starboard": {
                    "infra": {
                      "serviceAccount": "starboard-operator"
                    },
                    "config": {
                      "imagePullSecret": "starboard-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    }
                  }
                }
              },
              {
              "apiVersion": "operator.aquasec.com/v1alpha1",
              "kind": "AquaLightning",
              "metadata": {
                "name": "aqua"
              },
              "spec": {
                "global": {
                  "gateway_address": "aqua-gateway.aqua:8443",
                  "cluster_name": "Default-cluster-name"
                },
                "common": {
                  "imagePullSecret": "aqua-registry"
                },
                "kubeEnforcer": {
                  "infra": {
                    "version": "2022.4",
                    "serviceAccount": "aqua-kube-enforcer-sa"
                  },
                  "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>",
                  "allowAnyVersion": null,
                  "deploy": {
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "tag": "2022.4",
                      "repository": "kube-enforcer",
                      "pullPolicy": "Always"
                    }
                  },
                  "starboard": {
                    "infra": {
                      "serviceAccount": "starboard-operator"
                    },
                    "config": {
                      "imagePullSecret": "starboard-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    }
                  },
                  "env": []
                },
                "enforcer": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "deploy": {
                    "image": {
                      "repository": "enforcer",
                      "registry": "registry.aquasec.com",
                      "tag": "2022.4",
                      "pullPolicy": "IfNotPresent"
                    }
                  },
                  "token": "<<ENFORCER_GROUP_TOKEN>>",
                  "env": [],
                  "secret": {
                    "name": null,
                    "key": null
                  },
                  "runAsNonRoot": null,
                  "rhcosVersion": null
                }
              }
            },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaGateway",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "imagePullSecret": "aqua-registry",
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "gateway",
                      "tag": "<<IMAGE TAG>>"
                    }
                  },
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaScanner",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry"
                  },
                  "deploy": {
                    "replicas": 1,
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "scanner",
                      "tag": "<<IMAGE TAG>>"
                    }
                  },
                  "runAsNonRoot": false,
                  "login": {
                    "username": "<<YOUR AQUA USER NAME>>",
                    "password": "<<YOUR AQUA USER PASSWORD>>",
                    "host": "http://aqua-server:8080",
                    "token": ""
                  }
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaServer",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "imagePullSecret": "aqua-registry",
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "LoadBalancer",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "console",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "runAsNonRoot": false
                }
              },
              {
                  "apiVersion": "operator.aquasec.com/v1alpha1",
                  "kind": "AquaCloudConnector",
                  "metadata": {
                    "name": "aqua"
                  },
                  "spec": {
                    "infra": {
                      "serviceAccount": "aqua-sa",
                      "version": "2022.4"
                    },
                    "common": {
                      "imagePullSecret": "aqua-registry"
                    },
                    "deploy": {
                      "image": {
                        "repository": "aqua-cloud-connector",
                        "registry": "registry.aquasec.com",
                        "tag": "<<IMAGE TAG>>"
                      },
                      "replicas": 1
                    },
                    "runAsNonRoot": false,
                    "gateway": {
                      "host": "aqua-gateway",
                      "port": "8443"
                    },
                    "login": {
                      "host": "aqua-gateway:8443",
                      "password": "<<YOUR AQUA USER PASSWORD>>",
                      "token": "<<YOUR AQUA CLOUD CONNECTOR TOKEN>>",
                      "username": "<<YOUR AQUA USER NAME>>"
                    },
                    "tunnels": [
                      {
                        "host": "<account>.azurecr.io",
                        "port": "443"
                      },
                      {
                        "host": "gke.gcr.io",
                        "port": "443"
                      },
                      {
                        "host": "<account>.jfrog.io",
                        "port": "443"
                      },
                      {
                        "host": "1.1.1.1",
                        "port": "443"
                      },
                      {
                        "region": "us-east1",
                        "type": "ecr"
                      }
                    ]
                  }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: docker.io/aquasec/aqua-operator:2022.4.18
          createdAt: "2020-03-25T08:00:00Z"
          description: The Aqua Security Operator runs within a Openshift cluster
            and provides a means to deploy and manage Aqua Security cluster and components.
          operators.operatorframework.io/internal-objects: '["aquastarboards.aquasecurity.github.io","configauditreports.aquasecurity.github.io",
            "clusterconfigauditreports.aquasecurity.github.io"]'
          repository: https://github.com/aquasecurity/aqua-operator
          support: Aqua Security, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Aqua Security CSP Deployment with Aqua Operator
            displayName: AquaCsp
            kind: AquaCsp
            name: aquacsps.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Lightning Enforcers Deployment with Aqua Operator
            displayName: AquaLightningEnforcers
            kind: AquaLightning
            name: aqualightnings.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Database Deployment with Aqua Operator
            displayName: AquaDatabase
            kind: AquaDatabase
            name: aquadatabases.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Enforcer Deployment with Aqua Operator
            displayName: AquaEnforcer
            kind: AquaEnforcer
            name: aquaenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security KubeEnforcer Deployment with Aqua Operator
            displayName: AquaKubeEnforcer
            kind: AquaKubeEnforcer
            name: aquakubeenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Gateway Deployment with Aqua Operator
            displayName: AquaGateway
            kind: AquaGateway
            name: aquagateways.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Scanner Deployment with Aqua Operator
            displayName: AquaScanner
            kind: AquaScanner
            name: aquascanners.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Server Deployment with Aqua Operator
            displayName: AquaServer
            kind: AquaServer
            name: aquaservers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Starboard for kube-enforcer.
            displayName: AquaStarboard
            kind: AquaStarboard
            name: aquastarboards.aquasecurity.github.io
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ClusterConfigAuditReport
            kind: ClusterConfigAuditReport
            name: clusterconfigauditreports.aquasecurity.github.io
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ConfigAuditReport
            kind: ConfigAuditReport
            name: configauditreports.aquasecurity.github.io
            version: v1alpha1
          - description: Aqua Security Cloud Connector Deployment with Aqua Operator
            displayName: AquaCloudConnector
            kind: AquaCloudConnector
            name: aquacloudconnector.operator.aquasec.com
            version: v1alpha1
        description: |-
          The Aqua Security Operator runs within an OpenShift cluster and provides a means to deploy and manage the Aqua Security cluster and components :
          * Server (aka “console”)
          * Database (for production environments we recommend to use an external database and not the Aqua default database)
          * Gateway
          * Enforcer (aka “agent”)
          * KubeEnforcer
          * Scanner
          * CSP (package that contains the Server, Database, and Gateway)
          * LightningEnforcer (package that contains Enforcer and Kube Enforcer)

          Use the Aqua-Operator to
          * Deploy Aqua Security components on OpenShift
          * Scale up Aqua Security components with extra replicas
          * Assign metadata tags to Aqua Security components

          ## Before You Begin Using the Operator CRDs

          Obtain access to the Aqua registry - https://www.aquasec.com/about-us/contact-us/


          ## Instructions and exmaples

          Follow instructions and exmaples
          [here](https://github.com/aquasecurity/aqua-operator/blob/2022.4.0/docs/DeployOpenShiftOperator.md)
        displayName: Aqua Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - aqua-security
        - scanning
        - security
        - runtime-security
        links:
        - name: Aqua Security
          url: https://www.aquasec.com/
        - name: Aqua Operator Github
          url: https://github.com/aquasecurity/aqua-operator
        maintainers:
        - email: support@aquasec.com
          name: Aqua Support, Aqua Security
        maturity: alpha
        provider:
          name: Aqua Security, Inc.
        relatedImages:
        - docker.io/aquasec/aqua-operator:2022.4.18
        - quay.io/community-operator-pipeline-prod/aqua@sha256:ca2b998fb0fa4e80d6f4c3be57041e8e55e43cf0b5f1fee579733fda9ea6a107
        version: 2022.4.18
      entries:
      - name: aqua-operator.v2022.4.18
        version: 2022.4.18
      - name: aqua-operator.v2022.4.17
        version: 2022.4.17
      name: 2022.4.0
    defaultChannel: 2022.4.0
    packageName: aqua
    provider:
      name: Aqua Security, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Syndesis Team
      provider-url: https://github.com/syndesisio/syndesis
    name: syndesis
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: syndesis.v1.12.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta2",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.12
          createdAt: "2021-08-11T12:00:00Z"
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta2
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - quay.io/openshift-community-operators/syndesis@sha256:9e8c08793aebc8857dcd451fa2fde2b3f05b9ff4f3d3cc604f9f752193f58d42
        - quay.io/syndesis/syndesis-operator:1.12
        - centos/postgresql-10-centos7
        version: 1.12.0
      entries:
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: 1.12.x
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - quay.io/syndesis/syndesis-operator:1.13
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: 1.13.x
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        - quay.io/syndesis/syndesis-operator:1.13
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: candidate
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        - quay.io/syndesis/syndesis-operator:1.13
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: latest
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - quay.io/syndesis/syndesis-operator:1.13
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: stable
    defaultChannel: latest
    packageName: syndesis
    provider:
      name: Syndesis Team
      url: https://github.com/syndesisio/syndesis
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      odf.openshift.io/odf-operator: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-console"]'
          containerImage: registry.redhat.io/odf4/odf-rhel9-operator@sha256:0168326fc968fb1be91a5aba0df0117aec7f94b81560e0bd4480609207285265
          createdAt: "2025-12-18T08:00:14Z"
          description: OpenShift Data Foundation provides a common control plane for
            storage solutions on OpenShift Container Platform.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          olm.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/initialization-link: /odf/resource/odf.openshift.io~v1alpha1~StorageSystem/create/~new
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/odf-operator
          support: Red Hat
          vendors.odf.openshift.io/kind: '["storagecluster.ocs.openshift.io/v1", "flashsystemcluster.odf.ibm.com/v1alpha1"]'
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          **Red Hat OpenShift Data Foundation** deploys three operators.

          ### OpenShift Data Foundation
          The OpenShift Data Foundation operator is the primary operator for
          OpenShift Data Foundation. It serves to facilitate the other operators in
          OpenShift Data Foundation by performing administrative tasks outside their
          scope as well as watching and configuring their CustomResources.

          ### Rook
          [Rook][1] deploys and manages Ceph on OpenShift, which provides block,
          file and object storage.

          ### NooBaa operator
          The NooBaa operator deploys and manages the [NooBaa][2] Multi-Cloud Gateway
          on OpenShift, which provides object storage.

          # Core Capabilities
          * **Self-managing service:** No matter which supported storage technologies
          you choose, OpenShift Data Foundation ensures that resources can be
          deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Data Foundation you
          can either build dedicated storage clusters or hyper-converged clusters
          where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Data Foundation:**
          OpenShift Data Foundation integrates Ceph with multiple storage
          presentations including object storage (compatible with S3), block storage,
          and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Data Foundation efficiently
          distributes and replicates your data across your cluster to minimize the
          risk of data loss. With snapshots, cloning, and versioning, no more losing
          sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your
          datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data
          storage for your workloads, using a single namespace.

          # Subscriptions
          OpenShift Data Foundation requires a matching 1:1 ratio with the OpenShift
          subscription used. The Essential subscription is included in the OpenShift
          Platform Plus subscription. Disaster Recovery features, external mode, and
          KMS integration for encryption at rest require a bundle of OpenShift
          Platform Plus with OpenShift Data Foundation Advanced subscription.

          [1]: https://rook.io
          [2]: https://www.noobaa.io
        displayName: OpenShift Data Foundation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-operator-bundle@sha256:692c8c98f5c9d20cdfb2257f36a42ac6407ad122211001c3b539e33644bb7a6b
        - registry.redhat.io/odf4/odf-console-rhel9@sha256:871051f3724f5b783182b1de33350a3902db87eaee486390e3b7cfb64d3057d4
        - registry.redhat.io/odf4/odf-rhel9-operator@sha256:0168326fc968fb1be91a5aba0df0117aec7f94b81560e0bd4480609207285265
        version: 4.19.9-rhodf
      entries:
      - name: odf-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-console"]'
          containerImage: registry.redhat.io/odf4/odf-rhel9-operator@sha256:a6c75f7d1fefdb84653e4bdd29fc7ebe07f819e6cf0bf39ea8d3422dafb786bf
          createdAt: "2025-12-18T07:48:25Z"
          description: OpenShift Data Foundation provides a common control plane for
            storage solutions on OpenShift Container Platform.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/initialization-link: /odf/resource/odf.openshift.io~v1alpha1~StorageSystem/create/~new
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/odf-operator
          support: Red Hat
          vendors.odf.openshift.io/kind: '["storagecluster.ocs.openshift.io/v1", "flashsystemcluster.odf.ibm.com/v1alpha1"]'
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          **Red Hat OpenShift Data Foundation** deploys three operators.

          ### OpenShift Data Foundation
          The OpenShift Data Foundation operator is the primary operator for
          OpenShift Data Foundation. It serves to facilitate the other operators in
          OpenShift Data Foundation by performing administrative tasks outside their
          scope as well as watching and configuring their CustomResources.

          ### Rook
          [Rook][1] deploys and manages Ceph on OpenShift, which provides block,
          file and object storage.

          ### NooBaa operator
          The NooBaa operator deploys and manages the [NooBaa][2] Multi-Cloud Gateway
          on OpenShift, which provides object storage.

          # Core Capabilities
          * **Self-managing service:** No matter which supported storage technologies
          you choose, OpenShift Data Foundation ensures that resources can be
          deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Data Foundation you
          can either build dedicated storage clusters or hyper-converged clusters
          where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Data Foundation:**
          OpenShift Data Foundation integrates Ceph with multiple storage
          presentations including object storage (compatible with S3), block storage,
          and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Data Foundation efficiently
          distributes and replicates your data across your cluster to minimize the
          risk of data loss. With snapshots, cloning, and versioning, no more losing
          sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your
          datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data
          storage for your workloads, using a single namespace.

          # Subscriptions
          OpenShift Data Foundation requires a matching 1:1 ratio with the OpenShift
          subscription used. The Essential subscription is included in the OpenShift
          Platform Plus subscription. Disaster Recovery features, external mode, and
          KMS integration for encryption at rest require a bundle of OpenShift
          Platform Plus with OpenShift Data Foundation Advanced subscription.

          [1]: https://rook.io
          [2]: https://www.noobaa.io
        displayName: OpenShift Data Foundation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-rhel9-operator@sha256:a6c75f7d1fefdb84653e4bdd29fc7ebe07f819e6cf0bf39ea8d3422dafb786bf
        - registry.redhat.io/odf4/odf-operator-bundle@sha256:fd9c08f0a1455f7c20f3ef00983bd2cee495f6fbca7e30e3aac52512d71abe42
        - registry.redhat.io/odf4/odf-console-rhel9@sha256:a4255931341242cacf44202192e8f69805cf359282b1753beb7933ef3b088dd4
        version: 4.20.4-rhodf
      entries:
      - name: odf-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: node-observability-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-observability-operator.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha1",
                "kind": "NodeObservability",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "labels": {
                    "kubernetes.io/hostname": "worker-a"
                  },
                  "type": "crio-kubelet"
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha1",
                "kind": "NodeObservabilityMachineConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "debug": {
                    "enableCrioProfiling": true
                  }
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha1",
                "kind": "NodeObservabilityRun",
                "metadata": {
                  "name": "nodeobservabilityrun-sample",
                  "namespace": "node-observability-operator"
                },
                "spec": {
                  "nodeObservabilityRef": {
                    "name": "cluster"
                  }
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha2",
                "kind": "NodeObservability",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "nodeSelector": {
                    "kubernetes.io/hostname": "worker-a"
                  },
                  "type": "crio-kubelet"
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha2",
                "kind": "NodeObservabilityMachineConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "debug": {
                    "enableCrioProfiling": true
                  },
                  "nodeSelector": {
                    "kubernetes.io/hostname": "worker-a"
                  }
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha2",
                "kind": "NodeObservabilityRun",
                "metadata": {
                  "name": "nodeobservabilityrun-sample",
                  "namespace": "node-observability-operator"
                },
                "spec": {
                  "nodeObservabilityRef": {
                    "name": "cluster"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/noo/node-observability-rhel8-operator@sha256:53ba77f648154ac8aca1ae6c83815078dfde211dba1e42f597e69844e4954c01
          createdAt: 2022-12-05T09:25:09
          olm.skipRange: <0.2.0
          operatorframework.io/suggested-namespace: node-observability-operator
          operators.operatorframework.io/builder: operator-sdk-v1.18.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeObservability prepares a subset of worker nodes (identified
              by a label) for running node observability queries, such as profiling
            displayName: Node Observability
            kind: NodeObservability
            name: nodeobservabilities.nodeobservability.olm.openshift.io
            version: v1alpha1
          - description: NodeObservability prepares a subset of worker nodes (identified
              by a label) for running node observability queries, such as profiling
            displayName: Node Observability
            kind: NodeObservability
            name: nodeobservabilities.nodeobservability.olm.openshift.io
            version: v1alpha2
          - description: NodeObservabilityMachineConfig is the Schema for the nodeobservabilitymachineconfigs
              API
            displayName: Node Observability Machine Config
            kind: NodeObservabilityMachineConfig
            name: nodeobservabilitymachineconfigs.nodeobservability.olm.openshift.io
            version: v1alpha1
          - description: NodeObservabilityMachineConfig is the Schema for the nodeobservabilitymachineconfigs
              API
            displayName: Node Observability Machine Config
            kind: NodeObservabilityMachineConfig
            name: nodeobservabilitymachineconfigs.nodeobservability.olm.openshift.io
            version: v1alpha2
          - description: NodeObservabilityRun is a request to run observability actions
              on the nodes previously selected in NodeObservability resource
            displayName: Node Observability Run
            kind: NodeObservabilityRun
            name: nodeobservabilityruns.nodeobservability.olm.openshift.io
            version: v1alpha1
          - description: NodeObservabilityRun is a request to run observability actions
              on the nodes previously selected in NodeObservability resource
            displayName: Node Observability Run
            kind: NodeObservabilityRun
            name: nodeobservabilityruns.nodeobservability.olm.openshift.io
            version: v1alpha2
        description: |-
          An Operator that will be able to gather debugging/profiling data over
          a custom period of time which would be helpful to troubleshoot and resolve issues
          for OpenShift customers.
        displayName: Node Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - node-observability-operator
        links:
        - name: Source Code
          url: https://github.com/openshift/node-observability-operator
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/noo/node-observability-operator-bundle-rhel8@sha256:0fbbb0b32adadc5746251103d25bba6bd365b2ff60e289e4694061fc92c3ce6e
        - registry.redhat.io/noo/node-observability-rhel8-operator@sha256:53ba77f648154ac8aca1ae6c83815078dfde211dba1e42f597e69844e4954c01
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e3dad360d0351237a16593ca0862652809c41a2127c2f98b9e0a559568efbd10
        - registry.redhat.io/noo/node-observability-agent-rhel8@sha256:a8e60d9f63e2ed0cf1e27309aac54014e3f1efc947b51ca0a99376338d220875
        version: 0.2.0
      entries:
      - name: node-observability-operator.v0.2.0
        version: 0.2.0
      name: alpha
    defaultChannel: alpha
    packageName: node-observability-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Accuknox
      provider-url: https://accuknox.com
    name: kubearmor-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubearmor-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Security
          com.redhat.openshift.versions: v4.12
          createdAt: "2023-05-01T05:17:07Z"
          description: The KubeArmor Operator deloys and manages KubeArmor daemonset
            and its componenets within a cluster.
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.28.0+git
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/kubearmor/KubeArmor
          support: Accuknox
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          The KubeArmor Operator deploys and manages KubeArmor and its components:
          - KubeArmor Daemonset
          - KubeArmor Relay Server
          - KubeArmor Controller to manage CRDs (KubeArmorPolicy, KubeArmorHostPolicy)

          KubeArmor is a cloud-native runtime security enforcement system that restricts the behavior (such as process
          execution, file access, and networking operations) of pods, containers, and nodes (VMs) at the system level.

          KubeArmor leverages Linux security modules (LSMs) such as AppArmor, SELinux, or BPF-LSM to enforce the user-specified policies. KubeArmor generates rich alerts/telemetry events with container/pod/namespace identities by leveraging eBPF.

          ## Documentation

          github: [https://github.com/kubearmor/KubeArmor](https://github.com/kubearmor/KubeArmor)
          website: [https://kubearmor.io/](https://kubearmor.io/)
        displayName: Kubearmor Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubearmor-operator
        - runtime-security
        - security
        - cloud-native
        links:
        - name: Kubearmor
          url: https://kubearmor.io
        maintainers:
        - email: ramakant@accuknox.com
          name: Ramakant Sharma
        maturity: alpha
        provider:
          name: Accuknox
          url: https://www.accuknox.com/
        relatedImages:
        - docker.io/kubearmor/kubearmor-operator@sha256:8c2d56781a2adf78ee58f956e01417f38b6ad2f319feada6470e93f4f9bf0808
        - docker.io/kubearmor/kubearmor-relay-server@sha256:695f9ade3382bcf858077e2a7b9b01e0713071517603778d72f7aca5a6d71323
        - docker.io/kubearmor/kubearmor@sha256:52f7049ecdbfa779663d2cd44ddd7f36aecd8ccd2ca91e69709b628600029f13
        - registry.connect.redhat.com/kubearmor/kubearmor-operator@sha256:411a47151609b7da29974ef3ae3b04f1bb1526f4328fd3e1d9b0165380018049
        - docker.io/kubearmor/kubearmor-controller@sha256:ccec0fb8bb1e91bd48631cc89baf752b842f19c33b50edab08f8b33e57af64d4
        - docker.io/kubearmor/kubearmor-init@sha256:44fa534587972c5f85e3e6f362dd8268e9088a33c5657a21b72a7e8563164fb5
        version: 1.0.0
      entries:
      - name: kubearmor-operator.v1.0.0
        version: 1.0.0
      name: alpha
    - currentCSV: kubearmor-operator.v1.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.kubearmor.com/v1",
                "kind": "KubeArmorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "kubearmorconfig",
                    "app.kubernetes.io/part-of": "kubearmoroperator"
                  },
                    "name": "kubearmorconfig-default",
                    "namespace": "placeholder"
                },
                "spec": {
                  "adapters": {
                    "elasticsearch": {
                      "url": "",
                      "enabled": false,
                      "auth": {
                        "secretName": "elastic-secret",
                        "usernameKey": "username",
                        "passwordKey": "password",
                        "allowInsecureTLS": false,
                        "caCertSecretName": "",
                        "caCertKey": "ca.crt"
                      },
                      "alertsIndex": "kubearmor-alerts"
                    }
                  },
                  "recommendedPolicies": {
                      "enable": true,
                      "matchExpressions": [
                          {
                              "key": "namespace",
                              "operator": "NotIn",
                              "values": [
                                  "kube-system",
                                  "kubearmor",
                                  "openshift-infra",
                                  "openshift-ingress",
                                  "openshift-ingress-canary",
                                  "openshift-ingress-operator",
                                  "openshift-insights",
                                  "openshift-kni-infra",
                                  "openshift-kube-apiserver",
                                  "openshift-kube-apiserver-operator",
                                  "openshift-kube-controller-manager",
                                  "openshift-kube-controller-manager-operator",
                                  "openshift-kube-scheduler",
                                  "openshift-kube-scheduler-operator",
                                  "openshift-kube-storage-version-migrator",
                                  "openshift-kube-storage-version-migrator-operator",
                                  "openshift-logging",
                                  "openshift-machine-api",
                                  "openshift-machine-config-operator",
                                  "openshift-managed-node-metadata-operator",
                                  "openshift-managed-upgrade-operator",
                                  "openshift-marketplace",
                                  "openshift-monitoring",
                                  "openshift-multus",
                                  "openshift-must-gather-operator",
                                  "openshift-network-diagnostics",
                                  "openshift-network-node-identity",
                                  "openshift-network-operator",
                                  "openshift-node",
                                  "openshift-nutanix-infra",
                                  "openshift-oauth-apiserver",
                                  "openshift-observability-operator",
                                  "openshift-ocm-agent-operator",
                                  "openshift-openstack-infra",
                                  "openshift-operator-lifecycle-manager",
                                  "openshift-operators",
                                  "openshift-operators-redhat",
                                  "openshift-osd-metrics",
                                  "openshift-ovirt-infra",
                                  "openshift-ovn-kubernetes",
                                  "openshift-package-operator",
                                  "openshift-rbac-permissions",
                                  "openshift-route-controller-manager",
                                  "openshift-route-monitor-operator",
                                  "openshift-security",
                                  "openshift-service-ca",
                                  "openshift-service-ca-operator",
                                  "openshift-splunk-forwarder-operator",
                                  "openshift-sre-pruning",
                                  "openshift-user-workload-monitoring",
                                  "openshift-validation-webhook",
                                  "openshift-velero",
                                  "openshift-vsphere-infra",
                                  "openshift",
                                  "openshift-addon-operator",
                                  "openshift-apiserver",
                                  "openshift-apiserver-operator",
                                  "openshift-aqua",
                                  "openshift-authentication",
                                  "openshift-authentication-operator",
                                  "openshift-backplane",
                                  "openshift-backplane-cee",
                                  "openshift-backplane-csa",
                                  "openshift-backplane-cse",
                                  "openshift-backplane-csm",
                                  "openshift-backplane-managed-scripts",
                                  "openshift-backplane-mcs-tier-two",
                                  "openshift-backplane-mobb",
                                  "openshift-backplane-srep",
                                  "openshift-backplane-tam",
                                  "openshift-cloud-controller-manager",
                                  "openshift-cloud-controller-manager-operator",
                                  "openshift-cloud-credential-operator",
                                  "openshift-cloud-ingress-operator",
                                  "openshift-cloud-network-config-controller",
                                  "openshift-cloud-platform-infra",
                                  "openshift-cluster-csi-drivers",
                                  "openshift-cluster-machine-approver",
                                  "openshift-cluster-node-tuning-operator",
                                  "openshift-cluster-samples-operator",
                                  "openshift-cluster-storage-operator",
                                  "openshift-cluster-version",
                                  "openshift-codeready-workspaces",
                                  "openshift-config",
                                  "openshift-config-managed",
                                  "openshift-config-operator",
                                  "openshift-console",
                                  "openshift-console-operator",
                                  "openshift-console-user-settings",
                                  "openshift-controller-manager",
                                  "openshift-controller-manager-operator",
                                  "openshift-custom-domains-operator",
                                  "openshift-customer-monitoring",
                                  "openshift-deployment-validation-operator",
                                  "openshift-dns",
                                  "openshift-dns-operator",
                                  "openshift-etcd",
                                  "openshift-etcd-operator",
                                  "openshift-host-network",
                                  "openshift-image-registry"
                              ]
                          }
                      ]
                  },
                  "defaultCapabilitiesPosture": "audit",
                  "defaultFilePosture": "audit",
                  "defaultNetworkPosture": "audit",
                  "defaultVisibility": "process,network",
                  "enableStdOutLogs": false,
                  "enableStdOutAlerts": false,
                  "enableStdOutMsgs": false,
                  "seccompEnabled": false
                }
              }
            ]
          alm-examples-metadata: '{"kubearmorconfig-default":{"description":"Default
            KubeArmorConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Security, Monitoring
          certified: "true"
          com.redhat.openshift.versions: v4.9
          containerImage: docker.io/kubearmor/kubearmor-operator@sha256:d6c6b16e636474568835ded97cecb5ed17bc6004501227f6b6d63522ed57b01c
          createdAt: "2024-03-20T17:43:15Z"
          description: KubeArmor Operator
          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"
          operatorframework.io/suggested-namespace: kubearmor
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kubearmor/KubeArmor/blob/main/pkg/KubeArmorOperator/
          support: Accuknox
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubeArmorConfig is the Schema for the kubearmorconfigs API
            kind: KubeArmorConfig
            name: kubearmorconfigs.operator.kubearmor.com
            version: v1
        description: |2-

          ## Prerequisites

          1. Create a new project for KubeArmor (Recommended)

             ```
             oc new-project kubearmor
             ```

           2. Create [KubeArmor SCC](https://github.com/kubearmor/KubeArmor/blob/main/pkg/KubeArmorOperator/config/rbac/kubearmor-scc.yaml)

             ```
             oc create -f https://raw.githubusercontent.com/kubearmor/KubeArmor/main/pkg/KubeArmorOperator/config/rbac/kubearmor-scc.yaml
             ```

             Note: please change the serviceaccount namespace if you are using some other namespace than the kubearmor.

          KubeArmor is a cloud-native runtime security enforcement system that restricts the behavior
          (such as process execution, file access, and networking operations) of pods, containers,
          and nodes (VMs) at the system level.
          KubeArmor leverages Linux security modules (LSMs) such as AppArmor, SELinux, or BPF-LSM to enforce the
          user-specified policies. KubeArmor generates rich alerts/telemetry events with container/pod/namespace
          identities by leveraging eBPF.

          ## Features and Benefits

          ### Harden Infrastructure

          safeguards vital paths like certificate bundles, enforces security rules based on MITRE, STIGs, and CIS guidelines,
          and restricts access to raw database tables, enhancing overall cluster security.

          ### Least Permissive Access

          controls sensitive asset access through process and network whitelisting,
          reducing security risks and maintaining system integrity.

          ### Application Behavior

          in-depth monitoring of process executions, file system access, service bindings,
          ingress and egress connections, and sensitive system call profiling

          ## Documentation

          github: [https://github.com/kubearmor/KubeArmor](https://github.com/kubearmor/KubeArmor)

          website: [https://kubearmor.io/](https://kubearmor.io/)

          ## Installing the KubeArmor Operator

          The KubeArmor Operator, available through Red Hat's Operator catalog, offers stable update channel.
          **Stable Channel**: This channel provides the latest stable version of KubeArmor along with its patches.

          The KubeArmor operator is responsible for deploying various components of the KubeArmor application, including the KubeArmor
          Daemonset, KubeArmor Controller, KubeArmor Relay Server, and KubeArmor Snitch. The role of KubeArmor Snitch is to gather information
          about the enabled Linux security modules on the host, which is utilized by KubeArmor to enforce runtime security policies.
          Additionally, KubeArmor Snitch collects details about the container runtime socket and storage volume cluster configurations.
          This deployment is executed as a short-term job and necessitates root user privileges. KubeArmor Snitch is certified by RedHat
          as a container with root privileges.

          KubeArmor Operator comes with a custom resource:

          - **KubeArmorConfig** - User will provide the initial configurations of the KubeArmor using KubeArmorConfig CR.

          ### KubeArmorConfig Customization Options:

          | Parameter                                 | Description                                          | Default                                 |
          | ---                                       | ---                                                  | ---                                     |
          | `alertThrottling`                         | Enable throttling for the KubeArmor generated alerts | False                                   |
          | `defaultFilePosture`                      | Default file posture for KubeArmor                   | audit                                   |
          | `defaultNetworkPosture`                   | Default network posture for KubeArmor                | audit                                   |
          | `defaultCapabilitiesPosture`              | Default capabilities posture for KubeArmor           | audit                                   |
          | `defaultVisibility`                       | Default visibility for KubeArmor                     | process,file,network                    |
          | `enableStdOutLogs` |  show stdout logs for relay server | false |
          | `enableStdOutAlerts` |  show stdout alerts for relay server | false |
          | `enableStdOutMsgs` |  show stdout messages for relay server | false |
          | `kubearmorImage.image`                    | Default image for KubeArmor Daemonset                | kubearmor/kubearmor-ubi:stable          |
          | `kubearmorImage.imagePullPolicy`          | Default imagePullPolicy for KubeArmor Daemonset      | Always                                  |
          | `kubearmorInitImage.image`                | Default image for KubeArmor Init Container           | kubearmor/kubearmor-init:stable         |
          | `kubearmorInitImage.imagePullPolicy`      | Default imagePullPolicy for KubeArmor Init Container | Always                                  |
          | `kubearmorRelayImage.image`               | Default image for KubeArmor Relay Server             | kubearmor/kubearmor-relay-server:latest |
          | `kubearmorRelayImage.imagePullPolicy`     | Default imagePullPolicy for KubeArmor Relay Server   | Always                                  |
          | `kubearmorControllerImage.image`          | Default image for KubeArmor Controller               | kubearmor/kubearmor-controller:latest   |
          | `kubearmorControllerImage.imagePullPolicy`| Default imagePullPolicy for KubeArmor Controller     | Always                                  |
          | `maxAlertPerSec`                          | Maximum no of alerts per second to trigger throttling| 10                                      |
          | `recommendedPolicies`                     | Recommended Policies Spec                            | -                                       |
          | `recommendedPolicies.matchExpressions`    | Target Namespaces for recommended policies           | -                                       |
          | `recommendedPolicies.excludePolicy`       | Exclude policies from recommended policies           | -                                       |
          | `seccompEnabled`                          | Deploy KubeArmor Daemon with default seccomp profile | True                                    |
          | `throttleSec`                             | Thottling duration in seconds                        | 30                                      |

          Users are not required to specify the images in the KubearmorConfig custom resource (CR). By default, the operator will utilize the images published with the operator release.

          For detailed information on Default Posture refer [this guide](https://github.com/kubearmor/KubeArmor/blob/main/getting-started/default_posture.md)

          similarly for default visibility refer [this guide](https://github.com/kubearmor/KubeArmor/blob/main/getting-started/kubearmor_visibility.md)

          ## Support

          For Support please join KubeArmor Slack [Here](https://join.slack.com/t/kubearmor/shared_invite/zt-1ltmqdbc6-rSHw~LM6MesZZasmP2hAcA)
        displayName: KubeArmor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - monitoring
        - security
        - alerting
        - runtime-security
        - cloud native
        - container security
        links:
        - name: Website
          url: https://kubearmor.io
        - name: Github
          url: https://github.com/kubearmor/KubeArmor.git
        - name: Slack
          url: https://join.slack.com/t/kubearmor/shared_invite/zt-1ltmqdbc6-rSHw~LM6MesZZasmP2hAcA
        maintainers:
        - email: ramakant@accuknox.com
          name: Ramakant Sharma
        maturity: stable
        provider:
          name: Accuknox
          url: https://accuknox.com
        relatedImages:
        - docker.io/kubearmor/kubearmor-relay-server@sha256:0a1a20ef02bd05eaa4a900948cadee6ae7650b0dde70abe1935608eaa5f931b7
        - docker.io/kubearmor/kubearmor-snitch@sha256:c3d0f45590f9a0ebb50254047f12a7468844bcae7961eccb11f5ef578832c0eb
        - docker.io/kubearmor/kubearmor-ubi@sha256:629e295a2e64953bf95f3f3e842c42ff665ed6e4db32db8e43dcde4befdd3fc2
        - registry.connect.redhat.com/kubearmor/kubearmor-operator@sha256:076c345de449353cc9837c603024ba9d790d26c5a8cebfc97db61ded1482ab78
        - registry.connect.redhat.com/sumologic/kube-rbac-proxy@sha256:1153a4592746b05e019bde4d818d176ff9350c013f84d49829032540de882841
        - docker.io/kubearmor/kubearmor-controller@sha256:2d369138cdbb31468c41e9ce70eda986a16bbeb9dd1192cd8a011c9df8a83857
        - docker.io/kubearmor/kubearmor-init@sha256:e30ee508aa95d273f74a543e1b412b98c1714d04f093b59991c0ec2abaa450be
        - docker.io/kubearmor/kubearmor-operator@sha256:d6c6b16e636474568835ded97cecb5ed17bc6004501227f6b6d63522ed57b01c
        version: 1.5.2
      entries:
      - name: kubearmor-operator.v1.5.2
        version: 1.5.2
      name: stable
    defaultChannel: stable
    packageName: kubearmor-operator-certified
    provider:
      name: Accuknox
      url: https://accuknox.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-opa-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opa-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/opa-operator@sha256:2817d8839c6b7eb18d146b3271c3853f0bcd9c0f086c5ba8d19f20d6b14d06a3
          description: Stackable Operator for the Open Policy Agent
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/opa-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for OpaClusterSpec via `CustomResource`
            displayName: opaclusters.opa.stackable.tech
            kind: OpaCluster
            name: opaclusters.opa.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for the Open Policy Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opa
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - registry.connect.redhat.com/stackable/stackable-opa-operator@sha256:ed811a4798f167a21613371bfc071c9ebde39a1fa2975f113953130a60f1747d
        - quay.io/stackable/opa-operator@sha256:2817d8839c6b7eb18d146b3271c3853f0bcd9c0f086c5ba8d19f20d6b14d06a3
        version: 25.11.0
      entries:
      - name: opa-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-opa-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-bedrock-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-bedrock-controller.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bedrock.services.k8s.aws/v1alpha1",
                "kind": "InferenceProfile",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/bedrock-controller:1.1.0
          createdAt: "2025-11-29T04:47:49Z"
          description: AWS Bedrock controller is a service controller for managing
            Bedrock resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InferenceProfile represents the state of an AWS bedrock InferenceProfile
              resource.
            displayName: InferenceProfile
            kind: InferenceProfile
            name: inferenceprofiles.bedrock.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Bedrock resources in AWS from within your Kubernetes cluster.

          **About Amazon Bedrock**

          Amazon Bedrock is a fully managed service that makes high-performing foundation models (FMs) from leading AI companies and Amazon available for your use through a unified API. You can choose from a wide range of foundation models to find the model that is best suited for your use case. Amazon Bedrock also offers a broad set of capabilities to build generative AI applications with security, privacy, and responsible AI. Using Amazon Bedrock, you can easily experiment with and evaluate top foundation models for your use cases, privately customize them with your data using techniques such as fine-tuning and Retrieval Augmented Generation (RAG), and build agents that execute tasks using your enterprise systems and data sources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Bedrock
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bedrock
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Bedrock Developer Resources
          url: https://aws.amazon.com/bedrock/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: bedrock maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/bedrock-controller:1.1.0
        - quay.io/community-operator-pipeline-prod/ack-bedrock-controller@sha256:9ccb288b811d6e8208ed63359fca8d3108a2966bfca515e10c3685fe8abfc3bf
        version: 1.1.0
      entries:
      - name: ack-bedrock-controller.v1.1.0
        version: 1.1.0
      - name: ack-bedrock-controller.v1.0.1
        version: 1.0.1
      - name: ack-bedrock-controller.v1.0.0
        version: 1.0.0
      - name: ack-bedrock-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-bedrock-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: run-once-duration-override-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runoncedurationoverrideoperator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "RunOnceDurationOverride",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "runOnceDurationOverride": {
                    "spec": {
                      "activeDeadlineSeconds": 3600
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certifiedLevel: "false"
          containerImage: registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9-operator@sha256:4971f8befc2eecff1cfb0a9be7040594203e8e1170aee03d61765bd5b2cd4787
          createdAt: 2025/08/25
          description: An operator to manage the OpenShift RunOnceDurationOverride
            Mutating Admission Webhook Server
          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: "true"
          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.skipRange: '>=1.2.0 <1.3.1'
          operatorframework.io/suggested-namespace: openshift-run-once-duration-override-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/run-once-duration-override-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RunOnceDurationOverride is the schema for the runoncedurationoverrides
              API
            displayName: Run Once Duration Override
            kind: RunOnceDurationOverride
            name: runoncedurationoverrides.operator.openshift.io
            version: v1
        displayName: Run Once Duration Override Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mutating
        - webhook
        - workload
        - run-once
        links:
        - name: Source Code
          url: https://github.com/openshift/run-once-duration-override
        - name: Source Code
          url: https://github.com/openshift/run-once-duration-override-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9@sha256:c3b17e2ff30eab6e64e8fec59da37f05ec65d91d8d76086a9510372b20eb78d6
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-operator-bundle@sha256:783c2df43ece311bcbaaf30f33c081608e996a0f651895ec0509bb73a6a1f590
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9-operator@sha256:4971f8befc2eecff1cfb0a9be7040594203e8e1170aee03d61765bd5b2cd4787
        version: 1.3.1
      entries:
      - name: runoncedurationoverrideoperator.v1.3.1
        version: 1.3.1
      - name: runoncedurationoverrideoperator.v1.3.0
        version: 1.3.0
      - name: runoncedurationoverrideoperator.v1.2.3
        version: 1.2.3
      - name: runoncedurationoverrideoperator.v1.2.2
        version: 1.2.2
      - name: runoncedurationoverrideoperator.v1.2.1
        version: 1.2.1
      - name: runoncedurationoverrideoperator.v1.2.0
        version: 1.2.0
      - name: runoncedurationoverrideoperator.v1.1.2
        version: 1.1.2
      - name: runoncedurationoverrideoperator.v1.1.1
        version: 1.1.1
      - name: runoncedurationoverrideoperator.v1.1.0
        version: 1.1.0
      - name: runoncedurationoverrideoperator.v1.0.2
        version: 1.0.2
      - name: runoncedurationoverrideoperator.v1.0.1
        version: 1.0.1
      - name: runoncedurationoverrideoperator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: run-once-duration-override-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Citrus Framework
      provider-url: ""
    name: yaks
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: yaks-operator.v0.17.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "yaks.citrusframework.org/v1alpha1",
                "kind": "Instance",
                "metadata": {
                  "labels": {
                    "app": "yaks"
                  },
                  "name": "example-instance"
                },
                "spec": {
                  "operator": {
                    "global": true
                  }
                }
              },
              {
                "apiVersion": "yaks.citrusframework.org/v1alpha1",
                "kind": "Test",
                "metadata": {
                  "labels": {
                    "app": "yaks"
                  },
                  "name": "example-test"
                },
                "spec": {
                  "source": {
                    "content": "Feature: hello world\n\n  Scenario: print slogan\n    Given YAKS does Cloud-Native BDD testing\n    Then YAKS rocks!",
                    "language": "feature",
                    "name": "example.feature"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/citrusframework/yaks:0.17.1
          createdAt: "2023-04-26T20:37:31Z"
          description: YAKS is a platform to enable Cloud Native BDD testing on Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["instances.yaks.citrusframework.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/citrusframework/yaks
          support: Citrus Framework
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instance is the Schema for the yaks instance
            displayName: Instance
            kind: Instance
            name: instances.yaks.citrusframework.org
            version: v1alpha1
          - description: Test is the Schema for the tests API
            displayName: Test
            kind: Test
            name: tests.yaks.citrusframework.org
            version: v1alpha1
        description: |
          YAKS
          ====

          YAKS is a platform to enable Cloud Native BDD testing on Kubernetes.

          ## Running a YAKS test

          With the YAKS operator installed, you can run tests by creating a `Test` custom resource on the cluster.

          Tests are defined using [Gherkin](https://cucumber.io/docs/gherkin/) syntax. YAKS provides a set of predefined steps which
          help to connect with different messaging transports (Http REST, JMS, Kafka, Knative eventing) and verify responses with
          assertions on message header and body content.

          The example below defines a simple test resource.

          ```
          apiVersion: yaks.citrusframework.org/v1alpha1
          kind: Test
          metadata:
            name: example
          spec:
            source:
              name: example.feature
              content: |-
                Feature: hello world

                  Scenario: print slogan
                    Given YAKS does Cloud-Native BDD testing
                    Then YAKS rocks!
          ```

          Refer to the [YAKS repository](https://github.com/citrusframework/yaks) for more complex examples.
        displayName: YAKS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - yaks
        - testing
        - microservices
        - knative
        - kafka
        - serverless
        - camel
        - camel-k
        links:
        - name: Project page
          url: https://citrusframework.org/
        - name: YAKS source code repository
          url: https://github.com/citrusframework/yaks
        maintainers:
        - email: cdeppisch@redhat.com
          name: Christoph Deppisch
        - email: nferraro@redhat.com
          name: Nicola Ferraro
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Citrus Framework
        relatedImages:
        - docker.io/citrusframework/yaks:0.17.1
        - quay.io/openshift-community-operators/yaks@sha256:0031de9a68502cb65923c4e17453195663f59e46b1cda37619a857add503c016
        version: 0.17.1
      entries:
      - name: yaks-operator.v0.17.1
        version: 0.17.1
      - name: yaks-operator.v0.17.0
        version: 0.17.0
      - name: yaks-operator.v0.16.0
        version: 0.16.0
      - name: yaks-operator.v0.15.1
        version: 0.15.1
      - name: yaks-operator.v0.15.0
        version: 0.15.0
      - name: yaks-operator.v0.14.3
        version: 0.14.3
      - name: yaks-operator.v0.14.2
        version: 0.14.2
      - name: yaks-operator.v0.14.1
        version: 0.14.1
      - name: yaks-operator.v0.13.0
        version: 0.13.0
      - name: yaks-operator.v0.12.2
        version: 0.12.2
      - name: yaks-operator.v0.11.0
        version: 0.11.0
      - name: yaks-operator.v0.10.0
        version: 0.10.0
      - name: yaks-operator.v0.9.0
        version: 0.9.0
      - name: yaks-operator.v0.8.0
        version: 0.8.0
      - name: yaks-operator.v0.7.0
        version: 0.7.0
      - name: yaks-operator.v0.6.0
        version: 0.6.0
      - name: yaks-operator.v0.5.0
        version: 0.5.0
      - name: yaks-operator.v0.4.0
        version: 0.4.0
      name: alpha
    defaultChannel: alpha
    packageName: yaks
    provider:
      name: Citrus Framework
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: VMware Tanzu
      provider-url: ""
    name: rabbitmq-messaging-topology-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rabbitmq-messaging-topology-operator.v1.18.2
      currentCSVDesc:
        annotations:
          alm-examples: |
            [{"apiVersion":"rabbitmq.com/v1beta1","kind":"Binding","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Exchange","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Federation","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Permission","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Policy","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"OperatorPolicy","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Queue","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"SchemaReplication","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Shovel","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1alpha1","kind":"SuperStream","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"User","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Vhost","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"TopicPermission","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}}]
          capabilities: Full Lifecycle
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/rabbitmqoperator/messaging-topology-operator:1.18.2
          createdAt: 2025-12-10T10:23:39
          description: Kubernetes operator to allow developers to create and manage
            RabbitMQ messaging topologies within a RabbitMQ cluster using a declarative
            Kubernetes API.
          repository: https://github.com/rabbitmq/messaging-topology-operator
          support: VMware Tanzu
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Binding
            displayName: Binding
            kind: Binding
            name: bindings.rabbitmq.com
            version: v1beta1
          - description: Exchange
            displayName: Exchange
            kind: Exchange
            name: exchanges.rabbitmq.com
            version: v1beta1
          - description: Federation
            displayName: Federation
            kind: Federation
            name: federations.rabbitmq.com
            version: v1beta1
          - description: Permission
            displayName: Permission
            kind: Permission
            name: permissions.rabbitmq.com
            version: v1beta1
          - description: TopicPermission
            displayName: TopicPermission
            kind: TopicPermission
            name: topicpermissions.rabbitmq.com
            version: v1beta1
          - description: Policy
            displayName: Policy
            kind: Policy
            name: policies.rabbitmq.com
            version: v1beta1
          - description: OperatorPolicy
            displayName: OperatorPolicy
            kind: OperatorPolicy
            name: operatorpolicies.rabbitmq.com
            version: v1beta1
          - description: Queue
            displayName: Queue
            kind: Queue
            name: queues.rabbitmq.com
            version: v1beta1
          - description: Schema Replication
            displayName: SchemaReplication
            kind: SchemaReplication
            name: schemareplications.rabbitmq.com
            version: v1beta1
          - description: Shovel
            displayName: Shovel
            kind: Shovel
            name: shovels.rabbitmq.com
            version: v1beta1
          - description: Super Stream
            displayName: SuperStream
            kind: SuperStream
            name: superstreams.rabbitmq.com
            version: v1alpha1
          - description: User
            displayName: User
            kind: User
            name: users.rabbitmq.com
            version: v1beta1
          - description: Vhost
            displayName: Vhost
            kind: Vhost
            name: vhosts.rabbitmq.com
            version: v1beta1
          required:
          - description: Rabbitmq Cluster
            displayName: RabbitmqCluster
            kind: RabbitmqCluster
            name: rabbitmqclusters.rabbitmq.com
            version: v1beta1
        description: |
          ## About the managed application
          RabbitMQ is an open-source message-broker software that originally implemented the Advanced Message Queuing Protocol and has since been extended with a plug-in architecture to support Streaming Text Oriented Messaging Protocol, MQ Telemetry Transport, and other protocols.
          ## About this Operator
          Kubernetes operator to allow developers to create and manage RabbitMQ messaging topologies within a RabbitMQ cluster using a declarative Kubernetes API. A Messaging topology is the collection of objects such as exchanges, queues, bindings and policies that provides specific messaging or streaming scenario. This operator is used with RabbitMQ clusters deployed via the RabbitMQ Cluster Kubernetes Operator. This repository contains custom controllers and custom resource definitions (CRDs) enabling a declarative API for RabbitMQ messaging topologies.
          ## Prerequisites for enabling this Operator
          The operator works on top of the RabbitMQ cluster operator.
          Messaging Topology Operator is tested with the latest release of RabbitMQ Cluster Operator. It uses the generated default user secret from RabbitmqCluster (set in rabbitmqcluster.status.binding) to authenticate with RabbitMQ server.
        displayName: rabbitmq-messaging-topology-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rabbitmq
        - messaging
        - amqp
        - amqp10
        - stomp
        - mqtt
        - mqtt5
        - queues
        - streaming
        links:
        - name: GitHub
          url: https://github.com/rabbitmq/messaging-topology-operator
        - name: Documentation
          url: https://www.rabbitmq.com/kubernetes/operator/install-topology-operator.html
        maintainers:
        - email: rabbitmq-users@googlegroups.com
          name: VMware Tanzu
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        provider:
          name: VMware Tanzu
        relatedImages:
        - quay.io/community-operator-pipeline-prod/rabbitmq-messaging-topology-operator@sha256:8b221a9aebcfa2ddb6e1f1220d2ba53a4ca79ba17494b3b2a46092f590867037
        - quay.io/rabbitmqoperator/messaging-topology-operator:1.18.2
        version: 1.18.2
      entries:
      - name: rabbitmq-messaging-topology-operator.v1.18.2
        version: 1.18.2
      - name: rabbitmq-messaging-topology-operator.v1.18.1
        version: 1.18.1
      - name: rabbitmq-messaging-topology-operator.v1.17.4
        version: 1.17.4
      - name: rabbitmq-messaging-topology-operator.v1.16.0
        version: 1.16.0
      - name: rabbitmq-messaging-topology-operator.v1.15.0
        version: 1.15.0
      - name: rabbitmq-messaging-topology-operator.v1.14.2
        version: 1.14.2
      - name: rabbitmq-messaging-topology-operator.v1.14.1
        version: 1.14.1
      - name: rabbitmq-messaging-topology-operator.v1.13.0
        version: 1.13.0
      - name: rabbitmq-messaging-topology-operator.v1.12.2
        version: 1.12.2
      - name: rabbitmq-messaging-topology-operator.v1.12.1
        version: 1.12.1
      name: stable
    defaultChannel: stable
    packageName: rabbitmq-messaging-topology-operator
    provider:
      name: VMware Tanzu
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: odr-hub-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odr-hub-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east"
                },
                "spec": {
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east1"
                },
                "spec": {
                  "cidrs": [
                    "192.168.39.45/32"
                  ],
                  "clusterFence": "ManuallyFenced",
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east1"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPlacementControl",
                "metadata": {
                  "name": "drplacementcontrol-sample",
                  "namespace": "application-namespace"
                },
                "spec": {
                  "drPolicyRef": {
                    "name": "drpolicy-sample"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "excludedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "includedResources": [
                          "*"
                        ]
                      }
                    ]
                  },
                  "placementRef": {
                    "kind": "PlacementRule",
                    "name": "application-placement-rule"
                  },
                  "preferredCluster": "east",
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east",
                    "west"
                  ],
                  "replicationClassSelector": {
                    "matchLabels": {
                      "class": "ramen-replication-class"
                    }
                  },
                  "schedulingInterval": "1h",
                  "volumeSnapshotClassSelector": {
                    "matchLabels": {
                      "class": "ramen-snapshot-class"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "metrodr-drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east1",
                    "east2"
                  ],
                  "replicationClassSelector": {},
                  "schedulingInterval": {},
                  "volumeSnapshotClassSelector": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T08:01:44Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DRCluster is the Schema for the drclusters API
            displayName: DRCluster
            kind: DRCluster
            name: drclusters.ramendr.openshift.io
            version: v1alpha1
          - description: DRPlacementControl is the Schema for the drplacementcontrols
              API
            displayName: DRPlacement Control
            kind: DRPlacementControl
            name: drplacementcontrols.ramendr.openshift.io
            version: v1alpha1
          - description: DRPolicy is the Schema for the drpolicies API
            displayName: DRPolicy
            kind: DRPolicy
            name: drpolicies.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Hub is a disaster-recovery orchestrator for stateful
          applications. It operates from an Advanced Cluster Management (ACM) hub
          cluster to orchestrate the recovery of application state, and scheduling
          of ACM PlacementRule for disaster recovery operations.
        displayName: Openshift DR Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:35498d3e82e157b35b5f2270033ddc88a521453ab90c3b95e2a6a4cdf62c21c4
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: odr-hub-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odr-hub-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odr-hub-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odr-hub-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odr-hub-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odr-hub-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odr-hub-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odr-hub-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odr-hub-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odr-hub-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odr-hub-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east"
                },
                "spec": {
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east1"
                },
                "spec": {
                  "cidrs": [
                    "192.168.39.45/32"
                  ],
                  "clusterFence": "ManuallyFenced",
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east1"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPlacementControl",
                "metadata": {
                  "name": "drplacementcontrol-sample",
                  "namespace": "application-namespace"
                },
                "spec": {
                  "drPolicyRef": {
                    "name": "drpolicy-sample"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "excludedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "includedResources": [
                          "*"
                        ]
                      }
                    ]
                  },
                  "placementRef": {
                    "kind": "PlacementRule",
                    "name": "application-placement-rule"
                  },
                  "preferredCluster": "east",
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east",
                    "west"
                  ],
                  "replicationClassSelector": {
                    "matchLabels": {
                      "class": "ramen-replication-class"
                    }
                  },
                  "schedulingInterval": "1h",
                  "volumeSnapshotClassSelector": {
                    "matchLabels": {
                      "class": "ramen-snapshot-class"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "metrodr-drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east1",
                    "east2"
                  ],
                  "replicationClassSelector": {},
                  "schedulingInterval": {},
                  "volumeSnapshotClassSelector": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:50:45Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DRCluster is the Schema for the drclusters API
            displayName: DRCluster
            kind: DRCluster
            name: drclusters.ramendr.openshift.io
            version: v1alpha1
          - description: DRPlacementControl is the Schema for the drplacementcontrols
              API
            displayName: DRPlacement Control
            kind: DRPlacementControl
            name: drplacementcontrols.ramendr.openshift.io
            version: v1alpha1
          - description: DRPolicy is the Schema for the drpolicies API
            displayName: DRPolicy
            kind: DRPolicy
            name: drpolicies.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Hub is a disaster-recovery orchestrator for stateful
          applications. It operates from an Advanced Cluster Management (ACM) hub
          cluster to orchestrate the recovery of application state, and scheduling
          of ACM PlacementRule for disaster recovery operations.
        displayName: Openshift DR Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:747108b5f119ea96ab3c8f6d7035b1e98aa8df879ed772c94459500b5a715483
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        version: 4.20.4-rhodf
      entries:
      - name: odr-hub-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odr-hub-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odr-hub-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odr-hub-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odr-hub-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odr-hub-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: datagrid
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datagrid-operator.v8.2.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "adminAuth": {
                    "secretName": "basic-auth"
                  },
                  "clusterName": "example-infinispan",
                  "name": "mycache"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC batch-cache"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:1435aa60e8ab4d25c86daae68dcb93d14999f50d7c1e11a3c5726a86d3d30453
          createdAt: "2021-08-24T17:39:44Z"
          description: Create and manage Red Hat Data Grid clusters.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Restore API schema.
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Interoperability:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Data Grid Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
          Red Hat Data Grid is a distributed, in-memory data store that increases application performance and delivers open-source capabilities to handle demanding use cases.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.2/html/data_grid_operator_8.2_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.2
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:1435aa60e8ab4d25c86daae68dcb93d14999f50d7c1e11a3c5726a86d3d30453
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4d8057709958ef60bcabdcec52f05eae8df121fd3f4762c3218abca38130f638
        - registry.redhat.io/datagrid/datagrid-8-openj9-11-rhel8@sha256:c8607d6538a7528e27e6ecb138e0a93a03b3c9fa1f8a9a5aad3fd9f4a6814448
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:a7641fc5f4c7aed4b73d7d98ccb58ef64cf14ab16d72378f56dba3ad4b8714c6
        version: 8.2.8
      entries:
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: 8.2.x
    - currentCSV: datagrid-operator.v8.3.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:4d9d7221b029866837add5f3cb52dd0b7956f57996ce2d8b76344ce2de678716
          createdAt: "2022-11-03T08:40:57Z"
          description: Create and manage Red Hat Data Grid clusters.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Data Grid", "Red Hat
            Runtimes", "Red Hat Integration", "Red Hat Process Automation"]'
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request 1Gi of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.3/html/data_grid_operator_8.3_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.3
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:7dffd170b9b7d021b1615e6d746cbdfcbd819a1306ecdbaf042bcaf2202f7daa
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:4d9d7221b029866837add5f3cb52dd0b7956f57996ce2d8b76344ce2de678716
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        version: 8.3.9
      entries:
      - name: datagrid-operator.v8.3.9
        version: 8.3.9
      - name: datagrid-operator.v8.3.8
        version: 8.3.8
      - name: datagrid-operator.v8.3.7
        version: 8.3.7
      - name: datagrid-operator.v8.3.6
        version: 8.3.6
      - name: datagrid-operator.v8.3.5
        version: 8.3.5
      - name: datagrid-operator.v8.3.4
        version: 8.3.4
      - name: datagrid-operator.v8.3.3
        version: 8.3.3
      - name: datagrid-operator.v8.3.2
        version: 8.3.2
      - name: datagrid-operator.v8.3.1
        version: 8.3.1
      - name: datagrid-operator.v8.3.0
        version: 8.3.0
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: 8.3.x
    - currentCSV: datagrid-operator.v8.4.16
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:e5315682869de72514e3e027bfb02bf0bb64919453ca738c7ecfa1e34634ac2b
          createdAt: 2024-05-30T08:05:19 EDT
          description: Create and manage Red Hat Data Grid clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Data Grid", "Red Hat
            Runtimes", "Red Hat Integration", "Red Hat Process Automation"]'
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request 1Gi of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.4/html/data_grid_operator_8.4_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.4
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9d9e466b7c367d0406406550c74bc790aa68f3f875ea4f652eb28f2e25a05458
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:24cf79efa89bbfa495665b1711a27531b7ab0813695a89b2c38c96c2e792eb24
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:111d1f4ab8f006386102d1bec4cd6a41b446d9ae401a43c821b2f318c8ba74c8
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:e5315682869de72514e3e027bfb02bf0bb64919453ca738c7ecfa1e34634ac2b
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        version: 8.4.16
      entries:
      - name: datagrid-operator.v8.4.16
        version: 8.4.16
      - name: datagrid-operator.v8.4.15
        version: 8.4.15
      - name: datagrid-operator.v8.4.14
        version: 8.4.14
      - name: datagrid-operator.v8.4.13
        version: 8.4.13
      - name: datagrid-operator.v8.4.12
        version: 8.4.12
      - name: datagrid-operator.v8.4.11
        version: 8.4.11
      - name: datagrid-operator.v8.4.10
        version: 8.4.9
      - name: datagrid-operator.v8.4.8
        version: 8.4.8
      - name: datagrid-operator.v8.4.7
        version: 8.4.7
      - name: datagrid-operator.v8.4.6
        version: 8.4.6
      - name: datagrid-operator.v8.4.5
        version: 8.4.5
      - name: datagrid-operator.v8.4.4
        version: 8.4.4
      - name: datagrid-operator.v8.4.3
        version: 8.4.3
      - name: datagrid-operator.v8.4.2
        version: 8.4.2
      - name: datagrid-operator.v8.4.1
        version: 8.4.1
      - name: datagrid-operator.v8.4.0
        version: 8.4.0
      - name: datagrid-operator.v8.3.9
        version: 8.3.9
      - name: datagrid-operator.v8.3.8
        version: 8.3.8
      - name: datagrid-operator.v8.3.7
        version: 8.3.7
      - name: datagrid-operator.v8.3.6
        version: 8.3.6
      - name: datagrid-operator.v8.3.5
        version: 8.3.5
      - name: datagrid-operator.v8.3.4
        version: 8.3.4
      - name: datagrid-operator.v8.3.3
        version: 8.3.3
      - name: datagrid-operator.v8.3.2
        version: 8.3.2
      - name: datagrid-operator.v8.3.1
        version: 8.3.1
      - name: datagrid-operator.v8.3.0
        version: 8.3.0
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: 8.4.x
    - currentCSV: datagrid-operator.v8.5.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create counter --concurrency-level=1 --initial-value=5 --storage=VOLATILE --type=weak batch-counter\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "template": "\u003cdistributed-cache /\u003e"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel9-operator@sha256:d719d778b0848588a7e61d3c3fa689763f51a6533af4cf9e1c738c4ed8fac760
          createdAt: 2025-12-04T06:26:42 UTC
          description: Create and manage Red Hat Data Grid clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Data Grid", "Red Hat
            Runtimes", "Red Hat Integration", "Red Hat Process Automation"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request 1Gi of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.5/html/data_grid_operator_8.5_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.5
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:a711c50e489995fb60e5dec23ce286360743feda5066e4a0861d448aa4f2e903
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:24cf79efa89bbfa495665b1711a27531b7ab0813695a89b2c38c96c2e792eb24
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9d9e466b7c367d0406406550c74bc790aa68f3f875ea4f652eb28f2e25a05458
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:48cf13e71953cea6f62354289f0d8ece7a8a481ee0bb2c76eb9352d438db9ca3
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:f59ae21773dfc207454a709ac5f7aad2be6a6a20ac88da26c379edeed54537b8
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:0d368459c98c5788dd55d2add5b4b7d438b9a8c814ea8aee2222ea956699cbb6
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:11bfe5c8109d26164cff428232b2001ab8df464f14a382661b936543336e2960
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:ad4f91f984b4b898012963d52e6ebcd166ec03e76e26eba3191ecb87f51fb18d
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:9bc0b730570ab55fbeca83075949f4caa96ed5c37637420a59cd4a7db01ea840
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6e1766784b684561666134d41dca5331b80d50e63695fe7b1a1d6d4cdb73f0bd
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:4b9bf39d2ff14bcfbd4628a399093703d87a2b2b9c8e74c3d7cfdff4b5167fa4
        - registry.redhat.io/datagrid/datagrid-8-rhel9-operator@sha256:d719d778b0848588a7e61d3c3fa689763f51a6533af4cf9e1c738c4ed8fac760
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:1d5525d2d575dcc9d90da57afeb5fb310edc28d97d7ba55290db6bd152a34a95
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:c25e3152d6a6b6d5cd86d311bf567e594b9948440785209cd8d7986076a5a10d
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:5656cd188d054551489d45be996266d03e3faa8814b8bfc0f360cf0dceb83cbe
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6b78aaf15558c0522d22ba3003244203e6d39e6fe737c3075e30de8763218358
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:2461b1da4bea1e25b69a7bf8ef2173d905369e5a779134fa5099677da10cd8b4
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:879f3dcc24ffe795472779f777d955666ba4041c17e717d5e165cd7f12d7955a
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        version: 8.5.13
      entries:
      - name: datagrid-operator.v8.5.13
        version: 8.5.13
      - name: datagrid-operator.v8.5.12
        version: 8.5.12
      - name: datagrid-operator.v8.5.11
        version: 8.5.11
      - name: datagrid-operator.v8.5.10
        version: 8.5.10
      - name: datagrid-operator.v8.5.9
        version: 8.5.9
      - name: datagrid-operator.v8.5.8
        version: 8.5.8
      - name: datagrid-operator.v8.5.7
        version: 8.5.7
      - name: datagrid-operator.v8.5.6
        version: 8.5.6
      - name: datagrid-operator.v8.5.5
        version: 8.5.5
      - name: datagrid-operator.v8.5.4
        version: 8.5.4
      - name: datagrid-operator.v8.5.3
        version: 8.5.3
      - name: datagrid-operator.v8.5.2
        version: 8.5.2
      - name: datagrid-operator.v8.5.1
        version: 8.5.1
      - name: datagrid-operator.v8.5.0
        version: 8.5.0
      - name: datagrid-operator.v8.4.16
        version: 8.4.16
      - name: datagrid-operator.v8.4.15
        version: 8.4.15
      - name: datagrid-operator.v8.4.14
        version: 8.4.14
      - name: datagrid-operator.v8.4.13
        version: 8.4.13
      - name: datagrid-operator.v8.4.12
        version: 8.4.12
      - name: datagrid-operator.v8.4.11
        version: 8.4.11
      - name: datagrid-operator.v8.4.10
        version: 8.4.9
      - name: datagrid-operator.v8.4.8
        version: 8.4.8
      - name: datagrid-operator.v8.4.7
        version: 8.4.7
      - name: datagrid-operator.v8.4.6
        version: 8.4.6
      - name: datagrid-operator.v8.4.5
        version: 8.4.5
      - name: datagrid-operator.v8.4.4
        version: 8.4.4
      - name: datagrid-operator.v8.4.3
        version: 8.4.3
      - name: datagrid-operator.v8.4.2
        version: 8.4.2
      - name: datagrid-operator.v8.4.1
        version: 8.4.1
      - name: datagrid-operator.v8.4.0
        version: 8.4.0
      - name: datagrid-operator.v8.3.9
        version: 8.3.9
      - name: datagrid-operator.v8.3.8
        version: 8.3.8
      - name: datagrid-operator.v8.3.7
        version: 8.3.7
      - name: datagrid-operator.v8.3.6
        version: 8.3.6
      - name: datagrid-operator.v8.3.5
        version: 8.3.5
      - name: datagrid-operator.v8.3.4
        version: 8.3.4
      - name: datagrid-operator.v8.3.3
        version: 8.3.3
      - name: datagrid-operator.v8.3.2
        version: 8.3.2
      - name: datagrid-operator.v8.3.1
        version: 8.3.1
      - name: datagrid-operator.v8.3.0
        version: 8.3.0
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: stable
    defaultChannel: stable
    packageName: datagrid
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: fence-agents-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fence-agents-remediation.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediation",
                "metadata": {
                  "name": "worker-1"
                },
                "spec": {
                  "agent": "fence_ipmilan",
                  "nodeSecretNames": {
                    "master-0": "fence-agents-credentials-master0",
                    "master-1": "fence-agents-credentials-master1",
                    "master-2": "fence-agents-credentials-master2",
                    "worker-0": "fence-agents-credentials-worker0",
                    "worker-1": "fence-agents-credentials-worker1",
                    "worker-2": "fence-agents-credentials-worker2"
                  },
                  "nodeparameters": {
                    "--ipport": {
                      "master-0": "6230",
                      "master-1": "6231",
                      "master-2": "6232",
                      "worker-0": "6233",
                      "worker-1": "6234",
                      "worker-2": "6235"
                    }
                  },
                  "remediationStrategy": "ResourceDeletion",
                  "retrycount": 5,
                  "retryinterval": "5s",
                  "sharedSecretName": "fence-agents-credentials-shared",
                  "sharedparameters": {
                    "--action": "reboot",
                    "--ip": "192.168.111.1",
                    "--lanplus": "",
                    "--username": "admin"
                  },
                  "timeout": "60s"
                }
              },
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediationTemplate",
                "metadata": {
                  "name": "fenceagentsremediationtemplate-default"
                },
                "spec": {
                  "template": {
                    "spec": {
                      "agent": "fence_ipmilan",
                      "nodeSecretNames": {
                        "master-0": "fence-agents-credentials-master0",
                        "master-1": "fence-agents-credentials-master1",
                        "master-2": "fence-agents-credentials-master2",
                        "worker-0": "fence-agents-credentials-worker0",
                        "worker-1": "fence-agents-credentials-worker1",
                        "worker-2": "fence-agents-credentials-worker2"
                      },
                      "nodeparameters": {
                        "--ipport": {
                          "master-0": "6230",
                          "master-1": "6231",
                          "master-2": "6232",
                          "worker-0": "6233",
                          "worker-1": "6234",
                          "worker-2": "6235"
                        }
                      },
                      "remediationStrategy": "ResourceDeletion",
                      "retrycount": 5,
                      "retryinterval": "5s",
                      "sharedSecretName": "fence-agents-credentials-shared",
                      "sharedparameters": {
                        "--action": "reboot",
                        "--ip": "192.168.111.1",
                        "--lanplus": "",
                        "--username": "admin"
                      },
                      "timeout": "60s"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/fence-agents-remediation-operator:v0.6.0
          createdAt: "2025-11-24 11:34:19"
          description: Fence Agents Remediation Operator uses well-known agents to
            fence and remediate unhealthy nodes. The remediation includes rebooting
            the unhealthy node using a fence agent, and then evicting workloads from
            the unhealthy node.
          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.skipRange: '>=0.0.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/fence-agents-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FenceAgentsRemediation is the Schema for the fenceagentsremediations
              API
            displayName: Fence Agents Remediation
            kind: FenceAgentsRemediation
            name: fenceagentsremediations.fence-agents-remediation.medik8s.io
            version: v1alpha1
          - description: FenceAgentsRemediationTemplate is the Schema for the fenceagentsremediationtemplates
              API
            displayName: Fence Agents Remediation Template
            kind: FenceAgentsRemediationTemplate
            name: fenceagentsremediationtemplates.fence-agents-remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Fence Agents Remediation (FAR) is a Kubernetes operator that uses well-known agents to fence and remediate unhealthy nodes.
          The remediation includes rebooting the unhealthy node using a fence agent and then evicting workloads from the unhealthy node.

          ### Compatibility
          FAR is one of the remediator operators by [Medik8s](https://www.medik8s.io/remediation/remediation/),
          such as [Self Node Remediation](https://github.com/medik8s/self-node-remediation) and [Machine Deletion Remediation](https://github.com/medik8s/machine-deletion-remediation),
          that were designed to run with the Node HealthCheck Operator [(NHC)](https://github.com/medik8s/node-healthcheck-operator) which detects an unhealthy node and creates remediation CR.
          It is recommended to use FAR with NHC for an easier and smoother experience by fully automating the remediation process, but it can be used as a standalone remediator for the more experienced user.

          ### Advantages
          - Robustness - FAR has direct feedback from the traditional Application Programming Interface (API) call (e.g., IPMI) about the result of the fence action without using the Kubernetes API.
          - Speed - FAR is rapid since it can reboot a node and receive an acknowledgment from the API call while other remediators might need to wait a safe time till they can expect the node to be rebooted.
          - Diversity - FAR includes several fence agents from a large known set of upstream fencing agents for bare metal servers, virtual machines, cloud platforms, etc.
          - Adjustability - FAR allows to set up different parameters for running the API call that remediates the node.
        displayName: Fence Agents Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - fencing
        - auto-healing
        - recovery
        - high-availability
        - fence-agents
        - fence-agents-remediation
        - remediation
        - far
        - baremetal
        links:
        - name: Fence Agents Remediation
          url: https://www.medik8s.io/remediation/fence-agents-remediation/fence-agents-remediation/
        - name: Source Code
          url: https://www.github.com/medik8s/fence-agents-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/fence-agents-remediation@sha256:3c9737485019cac25171816fea587dfe4bba9eb2907af9041bd340c0cf7e6ed3
        - quay.io/medik8s/fence-agents-remediation-operator:v0.6.0
        version: 0.6.0
      entries:
      - name: fence-agents-remediation.v0.6.0
        version: 0.6.0
      - name: fence-agents-remediation.v0.5.0
        version: 0.5.0
      - name: fence-agents-remediation.v0.4.0
        version: 0.4.0
      - name: fence-agents-remediation.v0.3.0
        version: 0.3.0
      - name: fence-agents-remediation.v0.2.1
        version: 0.2.1
      - name: fence-agents-remediation.v0.2.0
        version: 0.2.0
      name: stable
    defaultChannel: stable
    packageName: fence-agents-remediation
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: unsupported
      operatorframework.io/arch.s390x: unsupported
      operatorframework.io/os.linux: supported
      provider: Konveyor
      provider-url: https://www.konveyor.io
    name: konveyor-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: konveyor-operator.v0.9.0-alpha.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:4a46b279981e9dd241b3806c380216a785778a8d5c4a8d061d226246ba881c95
          createdAt: "2025-11-18T00:34:15Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.9.0-alpha.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/postgresql-15-c9s@sha256:ccb8c231bfa69b8981b67613f4438cc84f4ce3f2b269b8dbe91d0577b7b9bba4
        - quay.io/konveyor/tackle2-operator@sha256:4a46b279981e9dd241b3806c380216a785778a8d5c4a8d061d226246ba881c95
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:cacf06f2530fa59113837792220fcf34ff8b780579da063de338015d9ed30bf2
        - quay.io/konveyor/java-external-provider@sha256:fac1f5660cd9fe052581b099fd103c017df2c067c708eb306daa04ec54319ea9
        - quay.io/konveyor/kai-solution-server@sha256:0019fa97e13e1c91cc73aa116a63f979e1feee04324eb6eefcd437aa0b788d9f
        - quay.io/konveyor/tackle2-addon-discovery@sha256:61f52dff8e1f586ef7ba8e38771c057c28a49c6a75c5342819b872954dd4df43
        - quay.io/konveyor/tackle-keycloak-init@sha256:26458527bdb0a00c3512c00d17d33d89a8fb0e6b5f750f40b946bf6442bbb30d
        - quay.io/konveyor/kantra@sha256:233447c01584712a183c058158d73ac9fb600a80250e4fe9d4cbea410d8da129
        - quay.io/konveyor/tackle2-hub@sha256:9e3e0c513e33bb916ad374b1e1a6b6bb01167dd121d25cf88ebd6688d590628d
        - quay.io/konveyor/origin-oauth-proxy@sha256:d46a89fe587f8f55a292d871085584d7ba1910a61979c7e56c5bf7ca680a0a9a
        - quay.io/konveyor/tackle2-addon-platform@sha256:9a731b5da30f2c9e0c9a00a941cf8da59eb7b911e025fef94531156f47bdf7f0
        - quay.io/konveyor/tackle2-ui@sha256:47a8b1ae89ccfc26495ac7c446cbe7635d371f7b87cc139ba0283958f30ec545
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:98176feb3772609445c129f78ec3051cda24eea703b48cc2b55cfb25cd2c0f70
        - quay.io/konveyor/generic-external-provider@sha256:a2f9de8afe702b881ab8ea96a32f78ba39953a02af1f22650bd49c93a371f621
        version: 0.9.0-alpha.1
      entries:
      - name: konveyor-operator.v0.9.0-alpha.1
        version: 0.9.0-alpha.1
      - name: konveyor-operator.v0.8.1-alpha.5
        version: 0.8.1-alpha.5
      - name: konveyor-operator.v0.8.1-alpha.2
        version: 0.8.1-alpha.2
      - name: konveyor-operator.v0.8.0-alpha.4
        version: 0.8.0-alpha.4
      - name: konveyor-operator.v0.8.0-alpha.2
        version: 0.8.0-alpha.2
      - name: konveyor-operator.v0.8.0-alpha.1
        version: 0.8.0-alpha.1
      - name: konveyor-operator.v0.7.0-alpha.2
        version: 0.7.0-alpha.2
      - name: konveyor-operator.v0.7.0-alpha.1
        version: 0.7.0-alpha.1
      - name: konveyor-operator.v0.6.0-alpha.2
        version: 0.6.0-alpha.2
      - name: konveyor-operator.v0.6.0-alpha.1
        version: 0.6.0-alpha.1
      - name: konveyor-operator.v0.5.0-alpha.1
        version: 0.5.0-alpha.1
      - name: konveyor-operator.v0.4.0-alpha.1
        version: 0.4.0-alpha.1
      - name: konveyor-operator.v0.3.0-alpha.6
        version: 0.3.0-alpha.6
      - name: konveyor-operator.v0.3.0-alpha.5
        version: 0.3.0-alpha.5
      - name: konveyor-operator.v0.3.0-alpha.4
        version: 0.3.0-alpha.4
      - name: konveyor-operator.v0.3.0-alpha.3
        version: 0.3.0-alpha.3
      - name: konveyor-operator.v0.3.0-alpha.2
        version: 0.3.0-alpha.2
      - name: konveyor-operator.v0.3.0-alpha.1
        version: 0.3.0-alpha.1
      - name: konveyor-operator.v0.2.0-alpha.3
        version: 0.2.0-alpha.3
      - name: konveyor-operator.v0.2.0-alpha.2
        version: 0.2.0-alpha.2
      - name: konveyor-operator.v0.2.0-alpha.1
        version: 0.2.0-alpha.1
      name: alpha
    - currentCSV: konveyor-operator.v0.8.1-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:1a38f0f8f001985ebdcb3fe7d87a109720cf70384d6e0356f92c445b4de86383
          createdAt: "2025-11-17T21:54:00Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.8.1-beta.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/postgresql-15-c9s@sha256:ccb8c231bfa69b8981b67613f4438cc84f4ce3f2b269b8dbe91d0577b7b9bba4
        - quay.io/konveyor/tackle2-operator@sha256:1a38f0f8f001985ebdcb3fe7d87a109720cf70384d6e0356f92c445b4de86383
        - quay.io/konveyor/tackle2-ui@sha256:d792f07491bc3be53c657655d7e4b19512c29a3bec09d7c60fd27b97587379ee
        - quay.io/konveyor/kai-solution-server@sha256:d2b2eea76e6039b6ce18ef6f556a9312e1a26105e6d44785555213f65c28f914
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:4e09e172df63b05ab5f0de1acc0190d655bbb702c19db7cc16d1c7cb3e1de566
        - quay.io/konveyor/tackle2-addon-discovery@sha256:718e6736a47da8b9a2cd2847e28576d91ce2b62e3206412f4daefcce03d58376
        - quay.io/konveyor/tackle2-hub@sha256:d84629e468e52dd5fd2ce9b32a33fc1aeea18107bbb0ce1525cb0271d6d99476
        - quay.io/konveyor/tackle-keycloak-init@sha256:bf87edaf6dae20f47bd5fd2e3a0030e8f26d53d256fbae650ae1d6d6df708668
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:3d061a070f2b64edcf34280830962a7e10595550d357ad8b3a70b3fb3b66b068
        - quay.io/konveyor/kantra@sha256:5903643763e0f68b56ed1ac9f5579bed287fb6572b2c35776f0089b912ad7c04
        - quay.io/konveyor/tackle2-addon-platform@sha256:19d5344169cfcf748a2938789b79c8ef3283cfb296990236d87d144b72dfda62
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/generic-external-provider@sha256:7248c8c10c058f3e76d6ba2a9483a6d8bb96a729467bb25a079b89753ba7ea83
        - quay.io/konveyor/java-external-provider@sha256:666b513f31757fa44d0bc11d5c7e2c15c8be7f318b12626a85ac501c4b246a8c
        - quay.io/konveyor/origin-oauth-proxy@sha256:d46a89fe587f8f55a292d871085584d7ba1910a61979c7e56c5bf7ca680a0a9a
        version: 0.8.1-beta.1
      entries:
      - name: konveyor-operator.v0.8.1-beta.1
        version: 0.8.1-beta.1
      - name: konveyor-operator.v0.8.0-beta.5
        version: 0.8.0-beta.5
      - name: konveyor-operator.v0.8.0-beta.4
        version: 0.8.0-beta.4
      - name: konveyor-operator.v0.8.0-beta.2
        version: 0.8.0-beta.2
      - name: konveyor-operator.v0.8.0-beta.1
        version: 0.8.0-beta.1
      - name: konveyor-operator.v0.6.0-beta.2
        version: 0.6.0-beta.2
      - name: konveyor-operator.v0.6.0-beta.1
        version: 0.6.0-beta.1
      - name: konveyor-operator.v0.5.0-beta.3
        version: 0.5.0-beta.3
      - name: konveyor-operator.v0.5.0-beta.2
        version: 0.5.0-beta.2
      - name: konveyor-operator.v0.5.0-beta.1
        version: 0.5.0-beta.1
      - name: konveyor-operator.v0.3.0-beta.3
        version: 0.3.0-beta.3
      - name: konveyor-operator.v0.3.0-beta.2
        version: 0.3.0-beta.2
      - name: konveyor-operator.v0.3.0-beta.1.2
        version: 0.3.0-beta.1.2
      - name: konveyor-operator.v0.3.0-beta.1.1
        version: 0.3.0-beta.1.1
      - name: konveyor-operator.v0.3.0-beta.1
        version: 0.3.0-beta.1
      name: beta
    - currentCSV: konveyor-operator.v0.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "move2kube-plan",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "image": "quay.io/konveyor/tackle-addon-move2kube-plan:latest"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:9688d0763d8c7812beee715a061c3c198006448855d7b891d45833f62cf869fb
          createdAt: "2023-05-25T15:23:45Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.1.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)

        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle2-addon-windup@sha256:81f0625cb82eb24ded51c7258f229f57778820c62e3be6ec05fb2b12d2970825
        - quay.io/konveyor/tackle2-addon@sha256:35be344bbd3393f5634f52aafd21e9c3964d1e0ba5011ecad1561600d476bbe9
        - quay.io/konveyor/tackle2-operator@sha256:9688d0763d8c7812beee715a061c3c198006448855d7b891d45833f62cf869fb
        - quay.io/konveyor/postgresql-12-centos7@sha256:1287d947464fbf5275feb31d106d2feb856c6117f0eaec8d947f2e03bd8618c5
        - quay.io/openshift-community-operators/konveyor-operator@sha256:04e63481c5104bd034283d5d4b0567167f62480d2c61154b1d16dbd41c344dfb
        - quay.io/konveyor/tackle-keycloak-init@sha256:b0347e5a608352c4b7bb796b65a67d417e98ba4896db71a487fa26243214cfcf
        - quay.io/konveyor/tackle-pathfinder@sha256:f9c5aa49f1d27f477cdd82c21441ae0287acdcdc9b2b3fcf197884007dc5f7dd
        - quay.io/konveyor/tackle2-hub@sha256:3d15d158ffb6f1fc4ca5aaf29a12173fe344c289773902c9161056bdf69acc92
        - quay.io/konveyor/tackle2-ui@sha256:99650804e65e2b6cb15a37c00189d7f463e4d19a0f866a79e9c09c8420a4d028
        version: 0.1.2
      entries:
      - name: konveyor-operator.v0.1.2
        version: 0.1.2
      - name: konveyor-operator.v0.1.1
        version: 0.1.1
      - name: konveyor-operator.v0.1.0
        version: 0.1.0
      name: konveyor-0.1
    - currentCSV: konveyor-operator.v0.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "move2kube-plan",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "image": "quay.io/konveyor/tackle-addon-move2kube-plan:latest"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:1860bb099ac64d9a2af27692f0671b7240e4d19746fffa9f9ae2356ff2818e10
          createdAt: "2023-07-06T06:17:40Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.2.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)

        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-operator@sha256:1860bb099ac64d9a2af27692f0671b7240e4d19746fffa9f9ae2356ff2818e10
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle-keycloak-init@sha256:ca6c85bdf8417d4be116c2098b8d8ad5ae8b7ab0b636c4cbe4a392aa424e2d47
        - quay.io/konveyor/tackle-pathfinder@sha256:190269b061b2065ca8ba9357bf9b959a2f587a547a44769ae0afd1ac86b4b197
        - quay.io/konveyor/tackle2-addon@sha256:11693e16363bcd98249209d63a29f0c6cfffab3a4071649cbeea2fd276bc2440
        - quay.io/konveyor/tackle2-hub@sha256:d9c4f21f44098a2526474968b6d88094dca8b5eaeb9042716332c9cb67df47cd
        - quay.io/openshift-community-operators/konveyor-operator@sha256:d4c590033b1a2bcd67375465298e5cb6d136fe091abb12b8d009aa683c23ef62
        - quay.io/konveyor/postgresql-12-centos7@sha256:6016530ab1fce71d29421ce9a97b3a89fbbb126b87b1b079c6aadebb7ff5664c
        - quay.io/konveyor/tackle2-ui@sha256:d10c1e717d160c5eb2581649a8dd7cdf4922a74d92db014f72f42a48a3134341
        - quay.io/konveyor/tackle2-addon-windup@sha256:538dfdb134d53a876d126dbd16679638584a606ef2b9e8fbe69ed1f29733c03a
        version: 0.2.1
      entries:
      - name: konveyor-operator.v0.2.1
        version: 0.2.1
      - name: konveyor-operator.v0.2.0
        version: 0.2.0
      name: konveyor-0.2
    - currentCSV: konveyor-operator.v0.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:cd2305373f50ce927393e43f5735915e46c32d6f8a76091ee2808218885bba72
          createdAt: "2024-05-02T22:12:42Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.3.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-operator@sha256:cd2305373f50ce927393e43f5735915e46c32d6f8a76091ee2808218885bba72
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:51bda0c6577c15684583d607a4f0cebef760814102423f4b2025016093a19fc1
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:848db711d9e8a329b689b40003293fce19c43faedd31afd80d9ae9d5c11cda49
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle2-ui@sha256:bbf58d2ea613489f91efae450421afafb9052416b0d7971606e2729e89fd7de6
        - quay.io/konveyor/origin-oauth-proxy@sha256:05f6bd1216b921b1f47a3821f0e22b84ed6b141bb2ada474c12bd9fde613108c
        - quay.io/konveyor/tackle-keycloak-init@sha256:a63702cc0cb36830a7830ed70ca344a9aacc201ba6f3c94806ca2e93160df4dd
        - quay.io/konveyor/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/konveyor/tackle2-hub@sha256:bf8803721d06d1a39251e22892343a013d5ef0fb4c1883c95e1eb55aa683f486
        version: 0.3.2
      entries:
      - name: konveyor-operator.v0.3.2
        version: 0.3.2
      - name: konveyor-operator.v0.3.1
        version: 0.3.1
      - name: konveyor-operator.v0.3.0
        version: 0.3.0
      name: konveyor-0.3
    - currentCSV: konveyor-operator.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:496db8ca859608d04008ac36cf7bdc9cafd7214294d33a9c5646083c361ffcb6
          createdAt: "2024-06-05T03:08:51Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.4.0'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/origin-oauth-proxy@sha256:05f6bd1216b921b1f47a3821f0e22b84ed6b141bb2ada474c12bd9fde613108c
        - quay.io/konveyor/tackle-keycloak-init@sha256:4c7e07b1fce05f7dca47edecc0ba0ce373cc38e48879cc7eed72510d2865a18e
        - quay.io/konveyor/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:e84ea36d206a8c143794e3986940377e77c7618225cad594bdf9a4047d7823dc
        - quay.io/konveyor/tackle2-hub@sha256:b87acd8e2ee4a7edc4369bc375f64e2b98bc479d09556439e2ee4d74b74970a9
        - quay.io/konveyor/tackle2-ui@sha256:cb1255fc5fa4608fc659c3455f3164664b960cc2d9a3b2208967798e3532df78
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:e29f175a799597c84f0663a66767bba24feb78f802516056b35b5beb14d9eb41
        - quay.io/konveyor/tackle2-operator@sha256:496db8ca859608d04008ac36cf7bdc9cafd7214294d33a9c5646083c361ffcb6
        version: 0.4.0
      entries:
      - name: konveyor-operator.v0.4.0
        version: 0.4.0
      name: konveyor-0.4
    - currentCSV: konveyor-operator.v0.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:474d739ed470701b628f1f9e971925ac7fbe0b543f3e36305d932b963b1225fd
          createdAt: "2024-08-27T15:48:02Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.5.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-hub@sha256:faf91ca68e24979642a44fa013b1fb9edfee415eee835ccef9dce2eb418e2909
        - quay.io/konveyor/tackle2-ui@sha256:36f29fe01d3078f0e100b24d1ed126850c5a773f4b0ae922fd4c4487de1ac29d
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:2d58f12044b0951c87c851527240196db148acb9797e6ac49f9474a6e6039d71
        - quay.io/konveyor/generic-external-provider@sha256:334a631538d31efc8d82adae4f52303336800fa3037b5055c72400918d81955c
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle-keycloak-init@sha256:5f652be5914ae6e23537b9fe02ccc9cd638c08de5462d9f58135a405c81f5287
        - quay.io/konveyor/tackle2-operator@sha256:474d739ed470701b628f1f9e971925ac7fbe0b543f3e36305d932b963b1225fd
        - quay.io/konveyor/postgresql-15-c9s@sha256:039ce764cadd03b4cfea954700139b8ceff415a9a0970baa7f2cf60f7f929174
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:2afbe8bea09904e084e026cd0a294fbe1c7b05d0e387f6633b09c5eaf4665e02
        - quay.io/konveyor/tackle2-addon-discovery@sha256:461f960bb1d29e719fb472fe9be9cf3deca17d984687957f54546a09047b0d3c
        - quay.io/konveyor/java-external-provider@sha256:33fb5d24b998f01c481a0a03e3f1bf3f7a6c93f5b662885102a0c966026e3375
        - quay.io/konveyor/origin-oauth-proxy@sha256:1db28585d10c8ccc65a38b5d4977e6566661411f51d44ec1fb8b8a562087d86c
        version: 0.5.3
      entries:
      - name: konveyor-operator.v0.5.3
        version: 0.5.3
      - name: konveyor-operator.v0.5.1
        version: 0.5.1
      - name: konveyor-operator.v0.5.0
        version: 0.5.0
      name: konveyor-0.5
    - currentCSV: konveyor-operator.v0.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:8ee143c473570efd27b6f93332dc272871e11c66cc20f381c3a1e6e5688abf68
          createdAt: "2025-03-05T21:14:52Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.6.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/postgresql-15-c9s@sha256:55f8014c1edafab8f9085228a0d207c4e98820c615be34b935ce98e942d388b1
        - quay.io/konveyor/tackle2-addon-discovery@sha256:3eb6f395c451e2c9a867871b3984a25f9f8e6ddcfe388f37fbd6d46a61a70b1e
        - quay.io/konveyor/tackle-keycloak-init@sha256:a3741269aa15edd2f9fb7df853a03a942d16a88eec114f3e54f82ef63b82adc4
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:0b5cbb322fbe96335522410376c2e8505a8302088c0e454f3e5e7e28ba7c96a6
        - quay.io/konveyor/tackle2-hub@sha256:52a8b9be038fbfbc4e22172a4a8c7191d2b06fd8670e5df2ec442e3ce00d8c8a
        - quay.io/konveyor/tackle2-ui@sha256:12b0eda13a63508b9c13d4f9309bbfbe19d564627cf0de672307af1a6ec993fb
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle2-operator@sha256:8ee143c473570efd27b6f93332dc272871e11c66cc20f381c3a1e6e5688abf68
        - quay.io/konveyor/generic-external-provider@sha256:27c1731859a4a639d2750cff8d1246281f4b0466bb5b069169c3e170c3c19b30
        - quay.io/konveyor/java-external-provider@sha256:15148cde9a6fedef2207fe36f0ac3bd1ecdc6e3ac76f1cbec9eb97ffcf247231
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/origin-oauth-proxy@sha256:1db28585d10c8ccc65a38b5d4977e6566661411f51d44ec1fb8b8a562087d86c
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:7b8bdecbe3b3def1ec810ad53f604c7a71daebcfa7433cbb3a0db937580d087c
        version: 0.6.1
      entries:
      - name: konveyor-operator.v0.6.1
        version: 0.6.1
      - name: konveyor-operator.v0.6.0
        version: 0.6.0
      name: konveyor-0.6
    - currentCSV: konveyor-operator.v0.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:f5870bc26b2a07ddacf00ed5b5f7df7d1068489010a80bcc543686c6c9576fbb
          createdAt: "2025-07-10T15:16:17Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.7.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/tackle-keycloak-init@sha256:dab4cb1229c8a729d14b4cecb4aa3b5c4d48e94c36e84d785c922fc08d120617
        - quay.io/konveyor/tackle2-addon-discovery@sha256:60951801aa539ee59cd43f3c5f42a2ca751ca70e995cbb258b7d55ebb24d8450
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:7ed52ea9b95650241b5c2c01914775e29be23f7ed75fabb6e7c71969f3f0728f
        - quay.io/konveyor/tackle2-operator@sha256:f5870bc26b2a07ddacf00ed5b5f7df7d1068489010a80bcc543686c6c9576fbb
        - quay.io/konveyor/generic-external-provider@sha256:facca8861559a658710ad3aef8b325731595bf944cce1907715d6efd33887072
        - quay.io/konveyor/tackle2-hub@sha256:52f66607f3134a4165ce691c6e9ce992d93927e9591055daafdc1bfc1dd09dd9
        - quay.io/konveyor/tackle2-ui@sha256:f87b04762fd163f40c49f3bcffd473f0c3f80a643576c6a3e2c2b4a14395c09f
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:16c4f165143b8bab7f3eb08c815c2cae0dbf7fffd9ce7a625357be5806c24c5c
        - quay.io/konveyor/origin-oauth-proxy@sha256:2c811da843057119b246784f21dc7eec490669a8569e8295d8e914cdce555b24
        - quay.io/konveyor/postgresql-15-c9s@sha256:41460103a0bab189cd77acb6e741d9c5a6d3506479f7e56df40eb156d9b2cadd
        - quay.io/konveyor/java-external-provider@sha256:a0ef733e9fce3845d02b5360440add85427acad697d2157ef92242dec06bd73b
        version: 0.7.1
      entries:
      - name: konveyor-operator.v0.7.1
        version: 0.7.1
      - name: konveyor-operator.v0.7.0
        version: 0.7.0
      name: konveyor-0.7
    - currentCSV: konveyor-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:68b6672fccdf54c65cc83f4c82db023053d6b61409bea880f58b53ccfea7b1ed
          createdAt: "2025-09-29T20:41:09Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.8.0'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:8c82ad880ca2a2d5cd4b08125feca16d13d014d15f4f77677306086d1067f9aa
        - quay.io/konveyor/tackle2-ui@sha256:f3f7380be65ff1fb3459c37a3d4865354bab685dc836893f78221f16ba579f70
        - quay.io/konveyor/tackle2-addon-discovery@sha256:96a5b37834fbed9506014bcbd909258081fd833ef9e16daa104effd0e3a3c6ea
        - quay.io/konveyor/kantra@sha256:a5b5591a51143574a6ce6678b141b9cd3e14328c6fad773412dde21b442fe364
        - quay.io/konveyor/generic-external-provider@sha256:c7b6618bfff81d73f1b455963107ffdaf19334e6552ce076c009476da3f37f21
        - quay.io/konveyor/tackle-keycloak-init@sha256:c0051b8c3a3c891fe12012623aee775080ecb47af8a4e75b8be8b0b4855d9f2c
        - quay.io/konveyor/tackle2-hub@sha256:b3e6db1ffc195143b8e5d54b60949256e154b0f8b667736512a084e015cdf2a7
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:c28522543b039454d2d97b48198d099ac0b8211cbc58f13468d5f70b9f69b037
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/origin-oauth-proxy@sha256:8988f14db7dde3edcaed0541cecb0b4fd58fab9dbaffb79a6c1c4aee13b9bd73
        - quay.io/konveyor/tackle2-addon-platform@sha256:d0280ade44ba5e15210c07342608576b38e6993af2e479740675a4706cd2c875
        - quay.io/konveyor/java-external-provider@sha256:8eab08a04e98051f89352250d63523a5b591f35a6497f5d69a5a9d556a94abf9
        - quay.io/konveyor/postgresql-15-c9s@sha256:af275f35a307367dcee9a339a6903cf79e3a8a41cabf79fb7cea7015895f0b58
        - quay.io/konveyor/kai-solution-server@sha256:bab6e224c50de5b44cc37ce0297a3b91255efc08c1ad0fccf14fef9e5182775f
        - quay.io/konveyor/tackle2-operator@sha256:68b6672fccdf54c65cc83f4c82db023053d6b61409bea880f58b53ccfea7b1ed
        version: 0.8.0
      entries:
      - name: konveyor-operator.v0.8.0
        version: 0.8.0
      name: konveyor-0.8
    - currentCSV: konveyor-operator.v0.7.0-rc.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
          createdAt: "2025-05-21T17:12:48Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.7.0-rc.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-ui@sha256:afe9141366a23c072286517e9af5436d14fd1df775aaa2fa13c3911764515777
        - quay.io/konveyor/origin-oauth-proxy@sha256:6c2847fd9667938b1d1294d988038e885e43cd9fb378862dae3419ce4f21631f
        - quay.io/konveyor/tackle-keycloak-init@sha256:c3124971dc31be9201de2a6a1f6b2f886adf4c96731188dd5e750798cde3cfe7
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:46150725a2adbde8dfdc2250614d437a50e64bbf0b4562dabc73715a287de67b
        - quay.io/konveyor/tackle2-addon-discovery@sha256:89d2b0f8636897eb4dc1957a74a5b5041c0f3267a747adcf2bc6ca56b17b9937
        - quay.io/konveyor/generic-external-provider@sha256:de55f78939576c110eb6f084a7ca51338fedba699fbb5135f23392783a5d7b95
        - quay.io/konveyor/java-external-provider@sha256:61ab20e37916abfeeadde685336660f0e8bbf519403d1f7100d43c1e42a72fbd
        - quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:fbf82685700aaea953a99e98e0c28b56e54ca6972e390f44c07957aa8df29442
        - quay.io/konveyor/postgresql-15-c9s@sha256:012cd6611aa9d3f4e0a82636d6817f381c19e3b0809199216fbe7fa3396a2ef5
        - quay.io/konveyor/tackle2-hub@sha256:bed834eb5488eef23b0d1e8af194b0646cf74c39c197e0d57acc5aed2299d9f5
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        version: 0.7.0-rc.1
      entries:
      - name: konveyor-operator.v0.7.0-rc.1
        version: 0.7.0-rc.1
      - name: konveyor-operator.v0.6.0-rc.2
        version: 0.6.0-rc.2
      - name: konveyor-operator.v0.6.0-rc.1
        version: 0.6.0-rc.1
      - name: konveyor-operator.v0.5.0-rc.1
        version: 0.5.0-rc.1
      - name: konveyor-operator.v0.3.0-rc.4
        version: 0.3.0-rc.4
      - name: konveyor-operator.v0.3.0-rc.3
        version: 0.3.0-rc.3
      - name: konveyor-operator.v0.3.0-rc.2
        version: 0.3.0-rc.2
      - name: konveyor-operator.v0.3.0-rc.1
        version: 0.3.0-rc.1
      name: rc
    - currentCSV: konveyor-operator.v0.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:33cf01f19a7043bcc5bdb12a3ed6bde7a9094981aa2383554111ebec9b4ba498
          createdAt: "2025-03-26T20:25:41Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.6.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle-keycloak-init@sha256:e32fa48351f410361e8bc100303deeb40d8a66d7eefb0cf7b1bc16e067a9a795
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:734752be111a97e4b7e0030d563c32883f419ad031b2f350cb8e7333f2f37de3
        - quay.io/konveyor/tackle2-ui@sha256:3c568c6047a044095080b6013b643a4041deae7b45936a443d4c4d708a81b945
        - quay.io/konveyor/tackle2-operator@sha256:33cf01f19a7043bcc5bdb12a3ed6bde7a9094981aa2383554111ebec9b4ba498
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/origin-oauth-proxy@sha256:1db28585d10c8ccc65a38b5d4977e6566661411f51d44ec1fb8b8a562087d86c
        - quay.io/konveyor/tackle2-addon-discovery@sha256:1b89266d6bdfa497ba8137e0d33ff53785ac476dd96bf4fd9a185ef0ddf513ce
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:18ba5c587dc613f9c1a8bc9e66081e52f3a37eedeea5e75881e628e9c35ef460
        - quay.io/konveyor/generic-external-provider@sha256:bc1112352f1a2c3172c5e7d5e637b5c5a69bf7d98b78f494fa593e8872e5cfd1
        - quay.io/konveyor/java-external-provider@sha256:fe85689b57125d678df685012b93c8a567fcb9251777cd711e9b82bdb22a734c
        - quay.io/konveyor/tackle2-hub@sha256:0df49087d0c9341c2120a7c3aa2ba7907c056f94e1602ffd0496ca7113c75382
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/postgresql-15-c9s@sha256:7957d3b272b9f4e469bdc0c514ec9e70e8fbdc34a7250b4f4c62f9bb73cbf08d
        version: 0.6.2
      entries:
      - name: konveyor-operator.v0.6.2
        version: 0.6.2
      name: release-0.6
    - currentCSV: konveyor-operator.v0.7.0-rc.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
          createdAt: "2025-05-21T17:12:48Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.7.0-rc.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/origin-oauth-proxy@sha256:6c2847fd9667938b1d1294d988038e885e43cd9fb378862dae3419ce4f21631f
        - quay.io/konveyor/tackle-keycloak-init@sha256:c3124971dc31be9201de2a6a1f6b2f886adf4c96731188dd5e750798cde3cfe7
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:fbf82685700aaea953a99e98e0c28b56e54ca6972e390f44c07957aa8df29442
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/tackle2-ui@sha256:afe9141366a23c072286517e9af5436d14fd1df775aaa2fa13c3911764515777
        - quay.io/konveyor/postgresql-15-c9s@sha256:012cd6611aa9d3f4e0a82636d6817f381c19e3b0809199216fbe7fa3396a2ef5
        - quay.io/konveyor/tackle2-addon-discovery@sha256:89d2b0f8636897eb4dc1957a74a5b5041c0f3267a747adcf2bc6ca56b17b9937
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:46150725a2adbde8dfdc2250614d437a50e64bbf0b4562dabc73715a287de67b
        - quay.io/konveyor/tackle2-hub@sha256:bed834eb5488eef23b0d1e8af194b0646cf74c39c197e0d57acc5aed2299d9f5
        - quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
        - quay.io/konveyor/generic-external-provider@sha256:de55f78939576c110eb6f084a7ca51338fedba699fbb5135f23392783a5d7b95
        - quay.io/konveyor/java-external-provider@sha256:61ab20e37916abfeeadde685336660f0e8bbf519403d1f7100d43c1e42a72fbd
        version: 0.7.0-rc.1
      entries:
      - name: konveyor-operator.v0.7.0-rc.1
        version: 0.7.0-rc.1
      name: release-0.7
    defaultChannel: alpha
    packageName: konveyor-operator
    provider:
      name: Konveyor
      url: https://www.konveyor.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Korrel8r
      provider-url: https://github.com/korrel8r/korrel8r
    name: korrel8r
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: korrel8r.v0.1.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "korrel8r.openshift.io/v1alpha1",
                "kind": "Korrel8r",
                "metadata": {
                  "name": "korrel8r",
                  "namespace": "korrel8r"
                },
                "spec": {
                  "debug": {
                    "verbose": 1
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional,Monitoring,Logging & Tracing
          containerImage: quay.io/korrel8r/operator:0.1.8
          createdAt: "2024-09-27T17:45:00Z"
          description: Correlate cluster resources and observability data.
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "korrel8r.openshift.io/v1alpha1",
              "kind": "Korrel8r",
              "metadata": {
                "name": "korrel8r",
                "namespace": "korrel8r"
              }
            }
          operatorframework.io/suggested-namespace: korrel8r
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/korrel8r/korrel8r
          support: Korrel8r Project
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Korrel8r is a service that correlates observabililty signals
              in the cluster.
            displayName: Korrel8r
            kind: Korrel8r
            name: korrel8rs.korrel8r.openshift.io
            version: v1alpha1
        description: |
          Korrel8r helps navigate from problem symptoms to related resources and signal data that can reveal the cause.
          It can follow relationships between disjointed observability "silos" (logs, metrics, alerts and more) to bring together all the data available to solve a problem.
          This operator allows Korrel8r to be deployed as a cluster service with a REST API.
          It can be used as a back-end for data correlation by the OpenShift console and other tools.
        displayName: Korrel8r
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - signal
        - correlation
        links:
        - name: Documentation
          url: https://korrel8r.github.io/korrel8r
        - name: Source Code and Issues
          url: https://github.com/korrel8r/korrel8r
        maintainers:
        - email: korrel8r@gmail.com
          name: Korrel8r Project
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Korrel8r
          url: https://github.com/korrel8r/korrel8r
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/korrel8r@sha256:f00f8a7e2011bcc97d87fc7f5bb40a19d6b5737d1f5d7f3b2322ec39009c0618
        - quay.io/korrel8r/operator:0.1.8
        version: 0.1.8
      entries:
      - name: korrel8r.v0.1.8
        version: 0.1.8
      - name: korrel8r.v0.1.7
        version: 0.1.7
      - name: korrel8r.v0.1.5
        version: 0.1.5
      - name: korrel8r.v0.1.3
        version: 0.1.3
      - name: korrel8r.v0.1.2
        version: 0.1.2
      - name: korrel8r.v0.0.8
        version: 0.0.8
      name: stable
    defaultChannel: stable
    packageName: korrel8r
    provider:
      name: Korrel8r
      url: https://github.com/korrel8r/korrel8r
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Randoli
      provider-url: https://www.randoli.io
    name: app-insights-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: app-insights-operator.v1.17.9-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "appinsights.randoli/v1beta1",
                "kind": "RandoliAgent",
                "metadata": {
                  "name": "randoli",
                  "namespace": "randoli-agents"
                },
                "spec": {
                  "costManagement": {
                    "opencost": {
                      "exporter": {
                        "image": {
                          "tag": "1.112.1"
                        }
                      }
                    },
                    "vpaOperator": {
                      "enabled": false
                    }
                  },
                  "logs": {
                    "vector": {
                      "agent": {
                        "containerSecurityContext": {
                          "privileged": true
                        }
                      }
                    }
                  },
                  "network": {
                    "standaloneConsole": {
                      "enable": true
                    }
                  },
                  "observability": {
                    "netobserv": {
                      "enabled": false
                    },
                    "otel": {
                      "operator": {
                        "enabled": false
                      }
                    }
                  },
                  "resources": {
                    "limits": {
                      "memory": "2Gi"
                    },
                    "requests": {
                      "cpu": "50m",
                      "memory": "512Mi"
                    }
                  },
                  "securityContext": {
                    "fsGroup": 1001
                  },
                  "tags": {
                    "costManagement": false,
                    "observability": false
                  }
                }
              }
            ]
          categories: Developer Tools
          containerImage: docker.io/randoli/app-insights-operator:1.17.9-1@sha256:80858b56529695f8ee2750a0f1cc1b300a58ff7563af853f61b421573842fef6
          createdAt: "2025-12-15T21:20:19Z"
          description: Randoli Agent connects OpenShift clusters to Randoli Observability
            & Cost Management.
          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.properties: '[]'
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Randoli
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: RandoliAgent
            name: randoliagents.appinsights.randoli
            version: v1beta1
        description: |-
          This operator provides a container-based agent to be installed in your OpenShift clusters for connecting to Randoli Observability & Cost Management platforms

          Randoli Observability is built on the strong foundation provided by OpenShift & OpenTelemetry.

          AI driven capabilities reduces MTTR by 40% - [learn more](https://www.randoli.io/solutions/sre-agent)

          The platform stores & analyzes telemetry locally & ingest only signals, reducing the cost by 50-70% compared to our competitors. - [learn more](https://www.randoli.io)

          Your logs & traces never leave your environment, preserving data security & sovereignty

          ***Analyze logs, traces & metrics locally reduce cost by 50-70%***

          Our innovative approach separates control plane from data plane resulting in significant cost savings.
          You control retention, data security & sovereignty.

          Telemetry Analyzed Locally to Extract Signals
          Retrieve Telemetry On-Demand, During Investigation
          Pay for Signals not Raw Telemetry Ingestion

          ***OpenTelemetry Native***

          Randoli Observability is OpenTelemetry native, providing you with a vendor nuetral approach for instrumenting, collecting & processing of telemetry data.
          This avoid vendor lock-in and puts you in control of your own telemetry data.

          ***AI driven Observability & Incident Management reduces MTTR***

          Reduce your MTTR (Mean Time To Resolution) by 40%
          Our SRE Agent works alongside your team to

          Proactively detect issues
          Execute preapproved Runbooks
          Create Issue Reports & Incident Reports

          ***Real time log monitoring within your environment***

          Automatically detect recurring issues directly from your application logs, with no data ever leaving your environment.

          Local log scanning with zero egress
          Proactive real-time detection of recurring issues
          Complete data privacy within your environment

          ***Gen AI Observability***

          Monitor cost, latency, and reliability of your LLM applications, without adding a separate stack or agent.

          View model-level usage, latency, and token breakdowns
          Trace end-to-end performance across LLM and infrastructure layers
          Track request duration, error rates, and token usage per model
          Works out-of-the-box with OpenAI, Claude, HuggingFace, Llama, and more

          ***Cost Monitoring & Chargeback***

          Cost visiblity & monitoring helps organizations analysize & optimize their costs with actionable insights.
          Cost analytics provides breakdowns by resources, workloads, namespaces & cost-groups helping you understand the make up of your OpenShift cluster costs.
          Efficiency & Right-Sizing insights helps you optimize your workloads to find the right balance between cost savings & performance.
          Cost Alerts helps you understand cost spikes and a breakdown of resources & workloads that contributed to the spike, helping you to take corrective action if need be.
          Attribute OpenShift & shared platform costs as well as application costs to business units.

          **Prerequisites**

          If you are using the Randoli Observability platform, you will need to install the following Operators:
          - Red Hat build of OpenTelemetry Operator
          - Network Observability

          If you are using the Randoli Cost Management platform, you will need to install the following Operator:
          - VerticalPodAutoscaler

          For additional information please use our Openshift installation guide here: [https://docs.insights.randoli.io/agent/kubernetes_agent/openshift](https://docs.insights.randoli.io/agent/kubernetes_agent/openshift)

           **Randoli Observability for Kubernetes**

          [Product Page](https://www.randoli.io/product/kubernetes-observability)

          **Randoli Cost Management for Kubernetes**

          [Product Page](https://www.randoli.io/product/kubernetes-cost-management)
        displayName: Randoli Agent
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - developer tools
        - insights
        - monitoring
        links:
        - name: Randoli Observability for Kubernetes
          url: https://www.randoli.io/product/kubernetes-observability
        - name: Randoli Cost Management for Kubernetes
          url: https://www.randoli.io/product/kubernetes-cost-management
        maintainers:
        - email: contact@randoli.ca
          name: Randoli Inc.
        maturity: beta
        minKubeVersion: 1.24.0
        provider:
          name: Randoli
          url: https://www.randoli.io
        relatedImages:
        - docker.io/randoli/app-insights-operator:1.17.9-1@sha256:80858b56529695f8ee2750a0f1cc1b300a58ff7563af853f61b421573842fef6
        - registry.connect.redhat.com/randoli/app-insights-operator@sha256:1e76d6a502e932161a316e12047485fd2b6ef628caccf043efb81be76ae12ed8
        version: 1.17.9-1
      entries:
      - name: app-insights-operator.v1.17.9-1
        version: 1.17.9-1
      name: stable
    defaultChannel: stable
    packageName: app-insights-operator
    provider:
      name: Randoli
      url: https://www.randoli.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-hbase-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hbase-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/hbase-operator@sha256:ecb52aee1013aef272f7aecedfda9de755f25ed68cda6871acaacde5aac367d7
          description: Stackable Operator for Apache HBase
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/hbase-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for HbaseClusterSpec via `CustomResource`
            displayName: hbaseclusters.hbase.stackable.tech
            kind: HbaseCluster
            name: hbaseclusters.hbase.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache HBase
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hbase
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/hbase-operator@sha256:ecb52aee1013aef272f7aecedfda9de755f25ed68cda6871acaacde5aac367d7
        - registry.connect.redhat.com/stackable/stackable-apache-hbase-operator:25.11.0
        version: 25.11.0
      entries:
      - name: hbase-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-hbase-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: eG Innovations
      provider-url: https://www.eginnovations.com
    name: eginnovations-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eginnovations-operator.v0.0.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eginnovations.com/v1beta1",
                "kind": "EgUniversalAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "eginnovations-operator"
                  },
                  "name": "eguniversalagent",
                  "namespace": "egagent"
                },
                "spec": {
                  "agent": {
                    "env": [
                      {
                        "name": "EG_MANAGER",
                        "value": "Replace with eG Manager IP"
                      },
                      {
                        "name": "EG_MANAGER_PORT",
                        "value": "Replace with eG Manager Port"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "true"
          containerImage: docker.io/eginnovations/universal-agent-operator:0.0.11
          createdAt: "2025-09-11T20:08:00Z"
          description: eG Innovations provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with eG Universal Agent Operator.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/eginnovations/universal-agent-operator
          support: eG Innovations
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EgUniversalAgent is the Schema for the eguniversalagents
              API
            displayName: Eg Universal Agent
            kind: EgUniversalAgent
            name: eguniversalagents.eginnovations.com
            version: v1beta1
        description: |
          eG Innovations’ converged application and infrastructure performance monitoring capabilities provide end-to-end visibility and correlated analytics for every layer, every tier of your IT landscape.

          The eG Enterprise Universal Agent Operator automatically configures a host agent on every Kubernetes worker node. The host agent auto-discovers the worker nodes and application containers running as Pods on each node and tracks their performance and utilization levels. In-depth monitoring of applications running on containers is also provided using the same host agent. No additional agents are required for the containers.

          ### Capabilities
            * Rolls out the egagent pod per node to monitor its pods and the node itself
            * Automatic BTM profiler injection using webhook based injection for deep application monitoring and transection tracing.

          ### Installation
            1. Create the namespace "egagent" for installing eG Agent on OpenShift Cluster.

               <br />``` $ oc create ns egagent ```
            2. Add "egagent" serviceaccount to scc( Security Context Constraints ) of OpenShift Cluster as privileged using below command.

               <br />``` $ oc adm policy add-scc-to-user privileged -z egagent -n egagent ```
            2. Install eG Innovations Universal Agent operator from [OpenShift Container Platform](https://www.openshift.com/) OperatorHub.
            3. Create the eG Universal Agent CRD (Custom Resource Definition)
               a. Click "View YAML Example" and copy the yaml contents and save it to (filename).yaml on your host.
               b. To apply the CRD run the following command

               <br />``` $ oc apply -f (filename).yaml ```

          ### Required Parameters
            * EG\_MANAGER, EG\_MANAGER\_PORT - provide the ip and port of your eG Manager Installation.

          ### Advanced Options
            * Disable Certificate Checking - disable any certificate validation that may interact poorly with proxies within your cluster
            * Image Override - use a copy of the eG Iniversal Agent container image from a registry other that Docker's or Red Hat's
            * Environment variables - define environment variables for the eG Universal Agent container of for APM profiler.
            * Namespace Selectors- select a subset of namesapces to enable instrumentation for applications.

          For complete list of supported parameters and the detailed documentation available in [eG Innovations Docs](https://docs.eginnovations.com)
        displayName: eG Innovations Universal Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Monitoring
        - Tracing
        links:
        - name: eG Innovations Kubernetes Monitoring Overview
          url: https://www.eginnovations.com/documentation/Kubernetes/Introduction-to-Monitoring-Kubernetes.htm
        maintainers:
        - email: devops@eginnovations.com
          name: eG Innovations
        maturity: beta
        minKubeVersion: 1.26.0
        provider:
          name: eG Innovations
          url: https://www.eginnovations.com
        relatedImages:
        - docker.io/eginnovations/universal-agent-operator:0.0.11
        - quay.io/community-operator-pipeline-prod/eginnovations-operator@sha256:19b12c75f7a2dfab027881ed9f0b09d25e3baa936d21f7be3ec1e0177ed9fdf2
        version: 0.0.11
      entries:
      - name: eginnovations-operator.v0.0.11
        version: 0.0.11
      - name: eginnovations-operator.v0.0.10
        version: 0.0.10
      - name: eginnovations-operator.v0.0.9
        version: 0.0.9
      - name: eginnovations-operator.v0.0.8
        version: 0.0.8
      name: beta
    defaultChannel: beta
    packageName: eginnovations-operator
    provider:
      name: eG Innovations
      url: https://www.eginnovations.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Solace Corporation
      provider-url: www.solace.com
    name: pubsubplus-eventbroker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pubsubplus-eventbroker-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pubsubplus.solace.com/v1beta1",
                "kind": "PubSubPlusEventBroker",
                "metadata": {
                  "name": "non-ha-standalone-example"
                },
                "spec": {
                  "redundancy": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "true"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.10
          containerImage: registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator:1.4.0
          createdAt: "2025-07-31T19:48:36Z"
          description: The Solace PubSub+ Event Broker Operator deploys and manages
            the lifecycle of PubSub+ Event Brokers
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
          support: Solace Products
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PubSub+ Event Broker
            displayName: PubSub+ Event Broker
            kind: PubSubPlusEventBroker
            name: pubsubpluseventbrokers.pubsubplus.solace.com
            version: v1beta1
        description: |
          ## Solace PubSub+ Platform
          Solace [PubSub+ Platform](https://solace.com/products/platform/) is a complete event streaming and management platform
          for real-time enterprises. The [PubSub+ Software Event Broker](https://solace.com/products/event-broker/software/) efficiently streams
          event-driven information between applications, IoT devices, and user interfaces running in the cloud, on-premises,
          and in hybrid environments using open APIs and protocols like AMQP, JMS, MQTT, REST and WebSocket.
          It can be installed into a variety of public and private clouds, PaaS, and on-premises environments.
          Event brokers in multiple locations can be linked together in an [Event Mesh](https://solace.com/what-is-an-event-mesh/)
          to dynamically share events across the distributed enterprise.

          ## Solace PubSub+ Event Broker Operator
          Solace Pubsub+ Event Broker Operator automatically deploys and manages PubSub+ Software Event Brokers on Kubernetes and OpenShift environments.

          Features include:
          * Initial deployment configuration: Production-ready HA, non-HA or for developers
          * Rolling update for configuration changes or broker upgrades
          * Prometheus monitoring support

          ## Getting started
          Refer to the [Solace PubSub+ Event Broker Operator Quick Start](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/README.md)
        displayName: Solace PubSub+ Event Broker Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - solace
        - pubsubplus
        - pubsub+
        - pubsub
        - messaging
        - advanced event broker
        - event broker
        - event mesh
        - event streaming
        - data streaming
        - event integration
        - middleware
        links:
        - name: Operator QuickStart
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
        - name: Operator Documentation
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/docs/EventBrokerOperatorUserGuide.md
        - name: Solace.com
          url: https://solace.com
        - name: Understanding Solace Technology
          url: https://solace.com/products/platform/
        - name: Solace PubSub+ Technical Documentation
          url: https://docs.solace.com/
        - name: Solace Developer Portal
          url: https://www.solace.dev/
        - name: Solace Community
          url: https://solace.community/
        maintainers:
        - email: support@solace.com
          name: Solace R&D
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Solace Corporation
          url: www.solace.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/pubsubplus-eventbroker-operator@sha256:2761ebb89dace09a1c1ccad92c28c877f3a6f75a674191ffc3788be7fa549926
        - registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator:1.4.0
        version: 1.4.0
      entries:
      - name: pubsubplus-eventbroker-operator.v1.4.0
        version: 1.4.0
      - name: pubsubplus-eventbroker-operator.v1.3.0
        version: 1.3.0
      - name: pubsubplus-eventbroker-operator.v1.2.0
        version: 1.2.0
      - name: pubsubplus-eventbroker-operator.v1.1.2
        version: 1.1.2
      - name: pubsubplus-eventbroker-operator.v1.1.1
        version: 1.1.1
      - name: pubsubplus-eventbroker-operator.v1.1.0
        version: 1.1.0
      - name: pubsubplus-eventbroker-operator.v1.0.3
        version: 1.0.3
      - name: pubsubplus-eventbroker-operator.v1.0.2
        version: 1.0.2
      - name: pubsubplus-eventbroker-operator.v1.0.1
        version: 1.0.1
      - name: pubsubplus-eventbroker-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: pubsubplus-eventbroker-operator
    provider:
      name: Solace Corporation
      url: www.solace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: 3scale-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: 3scale-operator.v0.10.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ProxyConfigPromote",
                "metadata": {
                  "name": "proxyconfigpromote-sample"
                },
                "spec": {
                  "ProductCRName": "product1-sample",
                  "Production": true
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/3scale-rhel7-operator@sha256:7aeebb760dfda74390723c1013f0dd36c5889fe0870e1093940a82d8ebae3047
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          olm.skipRange: '>=0.9.1 <0.10.5'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: ProxyConfigPromote is the Schema for the proxyconfigpromotes
              API
            displayName: Proxy Config Promote
            kind: ProxyConfigPromote
            name: proxyconfigpromotes.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |-
          The 3scale Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          [3scale API Management](https://www.redhat.com/en/technologies/jboss-middleware/3scale) makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          [3scale api management](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management)
          [Deploying 3scale using the operator](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator)

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator
        maintainers:
        - email: msoriano+3scaleoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:88dc7a289c803248efbe151999707325b1bc0aac2d26827ea1707e46e5c71652
        - registry.redhat.io/3scale-amp2/backend-rhel8@sha256:3d5f1ef4e67f97cc9cf3accf25033e176fc59714236a5ee0f022c9eb8be7a4b1
        - registry.redhat.io/rhel8/mysql-80@sha256:158198936a7f7896e0f94133cd64c8e8902e4f86e670b56b64ff02acfd9c2855
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:6c53e72c31d1a3e13aa3ea835039f30869e465903262545463f790cb36ef5241
        - registry.redhat.io/3scale-amp2/3scale-rhel7-operator-metadata@sha256:771bd8187990f334cce038a647e9c0fe903fa7519994119bc995ccc7cfad8b6f
        - registry.redhat.io/3scale-amp2/system-rhel7@sha256:13685f7ca51ebd1e21036fb08b3c2089a66cedb63683dca39925ec0463215fc6
        - registry.redhat.io/3scale-amp2/zync-rhel8@sha256:d043efa121626ee7fded3e773b0598137bbecf5878af09dfe6b5f28ab7876de6
        - registry.redhat.io/openshift4/ose-cli@sha256:1a8caae40be21f23ba3cb48b75809a73333907033a6041927aa568b5c9290f3c
        - registry.redhat.io/3scale-amp2/3scale-rhel7-operator@sha256:7aeebb760dfda74390723c1013f0dd36c5889fe0870e1093940a82d8ebae3047
        - registry.redhat.io/3scale-amp2/memcached-rhel7@sha256:6195aec4725b71f46a3bc2982300acecafc9c4aabb4ed1bbec06de9775d49694
        - registry.redhat.io/rhscl/redis-5-rhel7@sha256:91781cf512d695339f5a92da8bfae40b42a5585d3b5627d30e6fea08afc932a4
        version: 0.10.5
      entries:
      - name: 3scale-operator.v0.10.5
        version: 0.10.5
      name: threescale-2.13
    - currentCSV: 3scale-operator.v0.11.8-mas
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Application",
                "metadata": {
                  "name": "application-sample"
                },
                "spec": {
                  "accountCR": {
                    "name": "developeraccount-sample"
                  },
                  "applicationPlanName": "plan01",
                  "description": "testing application ",
                  "name": "testApp",
                  "productCR": {
                    "name": "product-sample"
                  },
                  "suspend": false
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ProxyConfigPromote",
                "metadata": {
                  "name": "proxyconfigpromote-sample"
                },
                "spec": {
                  "ProductCRName": "product1-sample",
                  "Production": true
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-mas/3scale-rhel7-operator@sha256:0a6673eae2f0e8d95b919b0243e44d2c0383d13e2e616ac8d3f80742d496d292
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Application is the Schema for the applications API
            displayName: Application
            kind: Application
            name: applications.capabilities.3scale.net
            version: v1beta1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: ProxyConfigPromote is the Schema for the proxyconfigpromotes
              API
            displayName: Proxy Config Promote
            kind: ProxyConfigPromote
            name: proxyconfigpromotes.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |-
          The 3scale Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          [3scale API Management](https://www.redhat.com/en/technologies/jboss-middleware/3scale) makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          [3scale api management](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management)
          [Deploying 3scale using the operator](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator)

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mstoklus@redhat.com
          name: Michal Stokluska
        - email: aucunnin@redhat.com
          name: Austin Cunningham
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-mas/3scale-operator-bundle@sha256:a6c2eff926feb11da27eb9972cb86ee0ef9ca0b013afb6fe6af4f72439d557ef
        - registry.redhat.io/3scale-mas/backend-rhel8@sha256:7d07caf7b6c5a195ba4706e82f3d28c3793afab99b1a6d5a7020547c48534cdc
        - registry.redhat.io/3scale-mas/system-rhel7@sha256:b0fd85a4994502a3a2ae9ba6a7610c38af64b6cc897efac12feb4b115a484f77
        - registry.redhat.io/rhel8/redis-6@sha256:22431acc2c991b6ee6b4de0219366dee6ea745122a49a0175d5fb58ed7d9205f
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:a03a1ae7f01259192b8d7b4ecee6ddfcdc0cd9e2d24a8c2306accb93ee767135
        - registry.redhat.io/3scale-mas/memcached-rhel7@sha256:9c2aba45971c924fd55b2aab50ee8e6861a9defd3808b38ff30316727af31f9a
        - registry.redhat.io/3scale-mas/searchd-rhel7@sha256:1426e4bd4aa0eb28b479900ffc02621203886280d24997cd11818387ff30d9df
        - registry.redhat.io/3scale-mas/zync-rhel9@sha256:419eb09d1b165363d5b90df01c1fa10f1f91f03649a8758620ffa49276685feb
        - registry.redhat.io/openshift4/ose-cli@sha256:1a8caae40be21f23ba3cb48b75809a73333907033a6041927aa568b5c9290f3c
        - registry.redhat.io/rhel8/mysql-80@sha256:7c05e61c0f4f5dad6aeda136e9a1af2f04f4de3c51004e997d4eacae3778da17
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:4f807ee6e885e966853f70e1c40bbc179dc1f994b401ac868b7f2b921f9d17a0
        - registry.redhat.io/3scale-mas/3scale-rhel7-operator@sha256:0a6673eae2f0e8d95b919b0243e44d2c0383d13e2e616ac8d3f80742d496d292
        version: 0.11.8-mas
      entries:
      - name: 3scale-operator.v0.11.8-mas
        version: 0.11.8-mas
      - name: 3scale-operator.v0.11.7-mas
        version: 0.11.7-mas
      - name: 3scale-operator.v0.11.6-mas
        version: 0.11.6-mas
      - name: 3scale-operator.v0.11.5-mas
        version: 0.11.5-mas
      - name: 3scale-operator.v0.11.3-mas
        version: 0.11.3-mas
      - name: 3scale-operator.v0.11.2-mas
        version: 0.11.2-mas
      - name: 3scale-operator.v0.11.1-mas
        version: 0.11.1-mas
      - name: 3scale-operator.v0.11.0-mas
        version: 0.11.0-mas
      - name: 3scale-operator.v0.10.0-mas
        version: 0.10.0-mas
      name: threescale-mas
    defaultChannel: threescale-2.13
    packageName: 3scale-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NetApp, Inc.
      provider-url: https://www.netapp.com/
    name: trident-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trident-operator.v25.10.0-linux-only
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "trident.netapp.io/v1",
                "kind": "TridentOrchestrator",
                "metadata": {
                  "name": "trident"
                },
                "spec": {
                  "IPv6": false,
                  "debug": true,
                  "nodePrep": [],
                  "imagePullSecrets": [],
                  "imageRegistry": "",
                  "namespace": "trident",
                  "silenceAutosupport": false
                }
              }
            ]
          categories: Storage
          containerImage: registry.connect.redhat.com/netapp/trident-operator-image@sha256:5d6eb0ae4a0f68329102cfb7bace94d24c728e8385e19bec360e0acb5f99c799
          createdAt: "2025-12-10"
          description: Trident Operator, to manage NetApp Trident installations
          features.operators.openshift.io/csi: "true"
          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"
          operatorhub.io/ui-metadata-max-k8s-version: "1.34"
          operators.openshift.io/valid-subscription: No subscriptions are required
          repository: https://github.com/netapp/trident
          support: NetApp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Used to deploy NetApp Trident.
            displayName: Trident Orchestrator
            kind: TridentOrchestrator
            name: tridentorchestrators.trident.netapp.io
            version: v1
        description: |
          NetApp Trident is an open source storage provisioner and orchestrator maintained by NetApp. It enables you to create storage volumes for containerized applications managed by Docker and Kubernetes. For full release information, including patch release changes, see https://docs.netapp.com/us-en/trident/trident-rn.html.

          Due to an issue being investigated by Red Hat and NetApp, oc-mirror cannot sync Windows container images that are part of the Trident-certified operator manifest hosted on registry.connect.redhat.com. This new manifest only points to Linux-only container images. Windows users should use the Trident community operator until this issue is addressed.
        displayName: NetApp Trident
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - NetApp
        - ONTAP
        - Trident
        - storage
        - performance
        - open source
        - Astra
        - Cloud Native
        - AWS
        - Azure
        - GCP
        - Cloud Volumes
        links:
        - name: GitHub Repository
          url: https://github.com/NetApp/trident
        - name: Trident documentation
          url: https://docs.netapp.com/us-en/trident/index.html
        - name: Support policy
          url: https://mysupport.netapp.com/site/info/version-support
        - name: Release Notes
          url: https://docs.netapp.com/us-en/trident/trident-rn.html
        maintainers:
        - email: ng-trident-openshift-operator@netapp.com
          name: NetApp
        provider:
          name: NetApp, Inc.
          url: https://www.netapp.com/
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:0c128a8b6be1e921d8a95cdbb101896cae321b6de3290362df0c3467ab598ed8
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:5e7f71f2c0f1f4707812c4fecb08dfef29c2f152b2286a700e6226472a927cec
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:2eac5bcb9f90ed9e7596656f5e3713e22fc77621336b3f7a2a9d54106d835b02
        - registry.connect.redhat.com/netapp/trident-autosupport@sha256:b273f7c1922ab2273c9b99f22383be88b6511fcd77f34299e9ecb1f85081fb2b
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:62eb2f146f84101119b54c6a1c6678d97b44b35cb800299032f0678dc4af582b
        - registry.connect.redhat.com/netapp/trident-operator-image@sha256:5d6eb0ae4a0f68329102cfb7bace94d24c728e8385e19bec360e0acb5f99c799
        - registry.connect.redhat.com/netapp/trident-operator@sha256:71b470e2254906f84b792ce56459f242ea7ac61b71a40d6da665bededd58fdf7
        - registry.connect.redhat.com/netapp/trident@sha256:59331f85ed657b1af9f8b139f08d6eae00be8d7b404784dbb61c5b5eb3f4d808
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:6c98bae9351f5e70ee41a7ae3e13c78bdf01c0113a9ee21825432c2741f5e391
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:210452dfc5a504705a113b3f4e9d615b1a28904db71f41ce804e35950d22bcd8
        version: 25.10.0-linux-only
      entries:
      - name: trident-operator.v25.10.0
        version: 25.10.0
      - name: trident-operator.v25.10.0-linux-only
        version: 25.10.0-linux-only
      name: stable
    defaultChannel: stable
    packageName: trident-operator
    provider:
      name: NetApp, Inc.
      url: https://www.netapp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CNCF
      provider-url: ""
    name: etcd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: etcdoperator.v0.6.1
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          description: etcd is a distributed key value store providing a reliable
            way to store data across a cluster of machines.
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a cluster of etcd nodes.
            displayName: etcd Cluster
            kind: EtcdCluster
            name: etcdclusters.etcd.database.coreos.com
            version: v1beta2
        description: |
          etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. Itâ€™s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader. Your applications can read and write data into etcd.
          A simple use-case is to store database connection details or feature flags within etcd as key value pairs. These values can be watched, allowing your app to reconfigure itself when they change. Advanced uses take advantage of the consistency guarantees to implement database leader elections or do distributed locking across a cluster of workers.

          _The etcd Open Cloud Service is Public Alpha. The goal before Beta is to fully implement backup features._

          ### Reading and writing to etcd

          Communicate with etcd though its command line utility `etcdctl` or with the API using the automatically generated Kubernetes Service.

          [Read the complete guide to using the etcd Open Cloud Service](https://coreos.com/tectonic/docs/latest/alm/etcd-ocs.html)

          ### Supported Features
          **High availability**
          Multiple instances of etcd are networked together and secured. Individual failures or networking issues are transparently handled to keep your cluster up and running.
          **Automated updates**
          Rolling out a new etcd version works like all Kubernetes rolling updates. Simply declare the desired version, and the etcd service starts a safe rolling update to the new version automatically.
          **Backups included**
          Coming soon, the ability to schedule backups to happen on or off cluster.
        displayName: etcd
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - etcd
        - key value
        - database
        - coreos
        - open source
        links:
        - name: Blog
          url: https://coreos.com/etcd
        - name: Documentation
          url: https://coreos.com/operators/etcd/docs/latest/
        - name: etcd Operator Source Code
          url: https://github.com/coreos/etcd-operator
        maintainers:
        - email: support@coreos.com
          name: CoreOS, Inc
        maturity: alpha
        provider:
          name: CoreOS, Inc
        relatedImages:
        - quay.io/coreos/etcd-operator@sha256:bd944a211eaf8f31da5e6d69e8541e7cada8f16a9f7a5a570b22478997819943
        - quay.io/openshift-community-operators/etcd@sha256:e42581eacbc8349f40c6a4ed6d7d82d6168518e15b1a24cba36817205bd8688f
        version: 0.6.1
      entries:
      - name: etcdoperator.v0.6.1
        version: 0.6.1
      name: alpha
    - currentCSV: etcdoperator.v0.9.4-clusterwide
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdCluster",
                "metadata": {
                  "name": "example",
                  "annotations": {
                    "etcd.database.coreos.com/scope": "clusterwide"
                  }
                },
                "spec": {
                  "size": 3,
                  "version": "3.2.13"
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdRestore",
                "metadata": {
                  "name": "example-etcd-cluster-restore"
                },
                "spec": {
                  "etcdCluster": {
                    "name": "example-etcd-cluster"
                  },
                  "backupStorageType": "S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdBackup",
                "metadata": {
                  "name": "example-etcd-cluster-backup"
                },
                "spec": {
                  "etcdEndpoints": ["<etcd-cluster-endpoints>"],
                  "storageType":"S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
          createdAt: "2019-02-28 01:03:00"
          description: Create and maintain highly-available etcd clusters on Kubernetes
          repository: https://github.com/coreos/etcd-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a cluster of etcd nodes.
            displayName: etcd Cluster
            kind: EtcdCluster
            name: etcdclusters.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to backup an etcd cluster.
            displayName: etcd Backup
            kind: EtcdBackup
            name: etcdbackups.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to restore an etcd cluster from a backup.
            displayName: etcd Restore
            kind: EtcdRestore
            name: etcdrestores.etcd.database.coreos.com
            version: v1beta2
        description: |
          The etcd Operater creates and maintains highly-available etcd clusters on Kubernetes, allowing engineers to easily deploy and manage etcd clusters for their applications.

          etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. Itâ€™s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader.


          ### Reading and writing to etcd

          Communicate with etcd though its command line utility `etcdctl` via port forwarding:

              $ kubectl --namespace default port-forward service/example-client 2379:2379
              $ etcdctl --endpoints http://127.0.0.1:2379 get /

          Or directly to the API using the automatically generated Kubernetes Service:

              $ etcdctl --endpoints http://example-client.default.svc:2379 get /

          Be sure to secure your etcd cluster (see Common Configurations) before exposing it outside of the namespace or cluster.


          ### Supported Features

          * **High availability** - Multiple instances of etcd are networked together and secured. Individual failures or networking issues are transparently handled to keep your cluster up and running.

          * **Automated updates** - Rolling out a new etcd version works like all Kubernetes rolling updates. Simply declare the desired version, and the etcd service starts a safe rolling update to the new version automatically.

          * **Backups included** - Create etcd backups and restore them through the etcd Operator.

          ### Common Configurations

          * **Configure TLS** - Specify [static TLS certs](https://github.com/coreos/etcd-operator/blob/master/doc/user/cluster_tls.md) as Kubernetes secrets.

          * **Set Node Selector and Affinity** - [Spread your etcd Pods](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-node-selector-and-anti-affinity-across-nodes) across Nodes and availability zones.

          * **Set Resource Limits** - [Set the Kubernetes limit and request](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-resource-requirement) values for your etcd Pods.

          * **Customize Storage** - [Set a custom StorageClass](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#custom-persistentvolumeclaim-definition) that you would like to use.
        displayName: etcd
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - etcd
        - key value
        - database
        - coreos
        - open source
        links:
        - name: Blog
          url: https://coreos.com/etcd
        - name: Documentation
          url: https://coreos.com/operators/etcd/docs/latest/
        - name: etcd Operator Source Code
          url: https://github.com/coreos/etcd-operator
        maintainers:
        - email: etcd-dev@googlegroups.com
          name: etcd Community
        maturity: alpha
        provider:
          name: CNCF
        relatedImages:
        - quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
        - quay.io/openshift-community-operators/etcd@sha256:1d308347e5e290ac4bb7dd7aab0a1c0659d661153541d81dd30733b52d1fbf83
        version: 0.9.4-clusterwide
      entries:
      - name: etcdoperator.v0.9.4-clusterwide
        version: 0.9.4-clusterwide
      - name: etcdoperator.v0.9.2-clusterwide
        version: 0.9.2-clusterwide
      - name: etcdoperator.v0.9.0
        version: 0.9.0
      name: clusterwide-alpha
    - currentCSV: etcdoperator.v0.9.4
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "size": 3,
                  "version": "3.2.13"
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdRestore",
                "metadata": {
                  "name": "example-etcd-cluster-restore"
                },
                "spec": {
                  "etcdCluster": {
                    "name": "example-etcd-cluster"
                  },
                  "backupStorageType": "S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdBackup",
                "metadata": {
                  "name": "example-etcd-cluster-backup"
                },
                "spec": {
                  "etcdEndpoints": ["<etcd-cluster-endpoints>"],
                  "storageType":"S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
          createdAt: "2019-02-28 01:03:00"
          description: Create and maintain highly-available etcd clusters on Kubernetes
          repository: https://github.com/coreos/etcd-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a cluster of etcd nodes.
            displayName: etcd Cluster
            kind: EtcdCluster
            name: etcdclusters.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to backup an etcd cluster.
            displayName: etcd Backup
            kind: EtcdBackup
            name: etcdbackups.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to restore an etcd cluster from a backup.
            displayName: etcd Restore
            kind: EtcdRestore
            name: etcdrestores.etcd.database.coreos.com
            version: v1beta2
        description: |
          The etcd Operater creates and maintains highly-available etcd clusters on Kubernetes, allowing engineers to easily deploy and manage etcd clusters for their applications.

          etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. Itâ€™s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader.


          ### Reading and writing to etcd

          Communicate with etcd though its command line utility `etcdctl` via port forwarding:

              $ kubectl --namespace default port-forward service/example-client 2379:2379
              $ etcdctl --endpoints http://127.0.0.1:2379 get /

          Or directly to the API using the automatically generated Kubernetes Service:

              $ etcdctl --endpoints http://example-client.default.svc:2379 get /

          Be sure to secure your etcd cluster (see Common Configurations) before exposing it outside of the namespace or cluster.


          ### Supported Features

          * **High availability** - Multiple instances of etcd are networked together and secured. Individual failures or networking issues are transparently handled to keep your cluster up and running.

          * **Automated updates** - Rolling out a new etcd version works like all Kubernetes rolling updates. Simply declare the desired version, and the etcd service starts a safe rolling update to the new version automatically.

          * **Backups included** - Create etcd backups and restore them through the etcd Operator.

          ### Common Configurations

          * **Configure TLS** - Specify [static TLS certs](https://github.com/coreos/etcd-operator/blob/master/doc/user/cluster_tls.md) as Kubernetes secrets.

          * **Set Node Selector and Affinity** - [Spread your etcd Pods](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-node-selector-and-anti-affinity-across-nodes) across Nodes and availability zones.

          * **Set Resource Limits** - [Set the Kubernetes limit and request](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-resource-requirement) values for your etcd Pods.

          * **Customize Storage** - [Set a custom StorageClass](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#custom-persistentvolumeclaim-definition) that you would like to use.
        displayName: etcd
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - etcd
        - key value
        - database
        - coreos
        - open source
        links:
        - name: Blog
          url: https://coreos.com/etcd
        - name: Documentation
          url: https://coreos.com/operators/etcd/docs/latest/
        - name: etcd Operator Source Code
          url: https://github.com/coreos/etcd-operator
        maintainers:
        - email: etcd-dev@googlegroups.com
          name: etcd Community
        maturity: alpha
        provider:
          name: CNCF
        relatedImages:
        - quay.io/openshift-community-operators/etcd@sha256:f1757deff8c4048ae42cb033f3ddd7686dec2968e5a4cd61ff8f74fda69a8a09
        - quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
        version: 0.9.4
      entries:
      - name: etcdoperator.v0.9.4
        version: 0.9.4
      - name: etcdoperator.v0.9.2
        version: 0.9.2
      - name: etcdoperator.v0.9.0
        version: 0.9.0
      name: singlenamespace-alpha
    defaultChannel: singlenamespace-alpha
    packageName: etcd
    provider:
      name: CNCF
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cluster-observability-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-observability-operator.v1.3.1
      currentCSVDesc:
        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:2ecf763b02048d2cf4c17967a7b2cacc7afd6af0e963a39579d876f8f4170e3c
          createdAt: "2025-12-05T12:43:59Z"
          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.skipRange: '>=..0 <1.3.1'
          operatorframework.io/cluster-monitoring: "true"
          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/)
        apiservicedefinitions: {}
        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
          - description: Provides end-to-end observability capabilities with minimal
              configuration. Simplifies deployment and management of observability
              components such as tracing.
            displayName: Observability Installer
            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
        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:
        - registry.redhat.io/cluster-observability-operator/korrel8r-rhel9@sha256:e65c37f04f6d76a0cbfe05edb3cddf6a8f14f859ee35cf3aebea8fcb991d2c19
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-rhel9@sha256:21d4fff670893ba4b7fbc528cd49f8b71c8281cede9ef84f0697065bb6a7fc50
        - registry.redhat.io/cluster-observability-operator/troubleshooting-panel-console-plugin-rhel9@sha256:b4a6eb1cc118a4334b424614959d8b7f361ddd779b3a72690ca49b0a3f26d9b8
        - registry.redhat.io/cluster-observability-operator/cluster-observability-operator-bundle@sha256:a3b8e1f3f8d154095f365ccbb163f2cf3852d6091b1f74773a8b5a2ee5c1cee6
        - registry.redhat.io/cluster-observability-operator/cluster-health-analyzer-rhel9@sha256:48e4e178c6eeaa9d5dd77a591c185a311b4b4a5caadb7199d48463123e31dc9e
        - registry.redhat.io/cluster-observability-operator/perses-rhel9@sha256:e797cdb47beef40b04da7b6d645bca3dc32e6247003c45b56b38efd9e13bf01c
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf4-rhel9@sha256:dc18c8d6a4a9a0a574a57cc5082c8a9b26023bd6d69b9732892d584c1dfe5070
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e7e5f4c5e8ab0ba298ef0295a7137d438a42eb177d9322212cde6ba8f367912a
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-rhel9@sha256:7d662a120305e2528acc7e9142b770b5b6a7f4932ddfcadfa4ac953935124895
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-rhel9@sha256:369729978cecdc13c99ef3d179f8eb8a450a4a0cb70b63c27a55a15d1710ba27
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-prometheus-config-reloader-rhel9@sha256:9a2097bc5b2e02bc1703f64c452ce8fe4bc6775b732db930ff4770b76ae4653a
        - registry.redhat.io/cluster-observability-operator/cluster-observability-rhel9-operator@sha256:2ecf763b02048d2cf4c17967a7b2cacc7afd6af0e963a39579d876f8f4170e3c
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-admission-webhook-rhel9@sha256:42ebc3571195d8c41fd01b8d08e98fe2cc12c1caabea251aecb4442d8eade4ea
        - registry.redhat.io/cluster-observability-operator/prometheus-rhel9@sha256:1b555e21bba7c609111ace4380382a696d9aceeb6e9816bf9023b8f689b6c741
        - registry.redhat.io/cluster-observability-operator/thanos-rhel9@sha256:a223bab813b82d698992490bbb60927f6288a83ba52d539836c250e1471f6d34
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-pf5-rhel9@sha256:12d9dbe297a1c3b9df671f21156992082bc483887d851fafe76e5d17321ff474
        - registry.redhat.io/cluster-observability-operator/alertmanager-rhel9@sha256:dc62889b883f597de91b5389cc52c84c607247d49a807693be2f688e4703dfc3
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf5-rhel9@sha256:75465aabb0aa427a5c531a8fcde463f6d119afbcc618ebcbf6b7ee9bc8aad160
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-pf4-rhel9@sha256:d8c7a61d147f62b204d5c5f16864386025393453c9a81ea327bbd25d7765d611
        - registry.redhat.io/cluster-observability-operator/perses-rhel9-operator@sha256:b5c8526d2ae660fe092dd8a7acf18ec4957d5c265890a222f55396fc2cdaeed8
        - registry.redhat.io/cluster-observability-operator/dashboards-console-plugin-rhel9@sha256:093d2731ac848ed5fd57356b155a19d3bf7b8db96d95b09c5d0095e143f7254f
        version: 1.3.1
      entries:
      - name: cluster-observability-operator.v1.3.1
        version: 1.3.1
      - name: cluster-observability-operator.v1.3.0
        version: 1.3.0
      - name: cluster-observability-operator.v1.2.2
        version: 1.2.2
      - name: cluster-observability-operator.v1.2.1
        version: 1.2.1
      - name: cluster-observability-operator.v1.2.0
        version: 1.2.0
      - name: cluster-observability-operator.v1.1.1
        version: 1.1.1
      - name: cluster-observability-operator.v1.1.0
        version: 1.1.0
      - name: cluster-observability-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: cluster-observability-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: multicluster-engine
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-engine.v2.10.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "multicluster.openshift.io/v1", "kind": "MultiClusterEngine",
            "metadata": {"name": "multiclusterengine"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-12-01T19:26:35Z"
          description: Foundational components for central management of multiple
            OpenShift Container Platform and Kubernetes clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=2.8.0 <2.10.0'
          operatorframework.io/initialization-resource: '{"apiVersion":"multicluster.openshift.io/v1",
            "kind":"MultiClusterEngine","metadata":{"name":"engine"},"spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-engine
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:50eb7b0039c66db781d3905d3d24bcaca9ebe0ab07bdca1bc7bb0c406fb01d8a
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/open-cluster-management/backplane-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MultiClusterEngine defines the configuration for an instance
              of a multicluster engine, a central point providing the foundational components for managing multiple Kubernetes-based clusters. The deployment of the multicluster engine components is
              determined based on the configuration that is defined in this resource.
            displayName: MultiCluster Engine
            kind: MultiClusterEngine
            name: multiclusterengines.multicluster.openshift.io
            version: v1
        description: "Multicluster engine for Kubernetes provides the foundational
          components that are necessary for the centralized management of multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the engine to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can use the APIs that are provided by
          the engine to distribute configuration based on placement policy. Placement
          policy is a significant part of creating sophisticated multicluster management
          applications because you can select the applicable clusters.\n## Installing\nInstall
          the multicluster engine for Kubernetes operator by following instructions
          that display when you click the `Install` button. After installing the operator,
          create an instance of the `MultiClusterEngine` resource to install the engine
          components that provide the management APIs. Note: If you are using the
          engine to manage non-OpenShift Container Platform 4.x clusters, you need
          to create a Kubernetes `Secret` resource that contains your OpenShift Container
          Platform pull secret. Specify this `Secret` in the `MultiClusterEngine`
          resource, as described in the install documentation.\nYou can find additional
          installation guidance in the [documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/clusters/cluster_mce_overview#mce-install-intro). "
        displayName: multicluster engine for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mce
        - multicluster-engine
        - multiclusterengine
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/clusters/index
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/multicluster-engine/cluster-api-provider-kubevirt-rhel9@sha256:9cee55eaa91e073f07000da0db87fcca4f34af6faef16aac79415197c3026e67
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:1cceec46246ea7bef481549dce1ce91880d19a5650c9a6bc0f71f0d4092a6f95
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:762ae8d88d1b9e764adf84d5eaa964e691acbebaabf174ab0111a39b24256aff
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:ac1c6821b6bf2062144f8fc38256e97c16a55019efdff6bc0f2469899508521e
        - registry.redhat.io/multicluster-engine/assisted-installer-rhel9@sha256:aff2c378cd0a3ba36b13572a4749a54836369bcf6814b8423793bb56178b974b
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:d0d9f66e1135e46889d9148a78704a0062baf69c4690c85da37588ccfe4e23dc
        - registry.redhat.io/multicluster-engine/managedcluster-import-controller-rhel9@sha256:a4f11ed7ca7a36516a88d9e179f654174b4654d71b67f2de3255a95f9929a452
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:9b4294ee810cd554905c72fd080c3ead28a82dda81e01210552012e4a8f7dc5c
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:7b3d109adb86a87475afbb76faef4a4131f78ad092d4aa541e1c59bae611acbe
        - registry.redhat.io/rhel8/postgresql-12@sha256:3a187fc5e6c73bdfc63661b98c05b39ee4d0b3a0e1a210c49d188f1004bcb274
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:4de9442def18fff03515edcce7d4c60a756f3b2c225f8931a8ddd254d70b220d
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:78fbb9cbf3a7323a1d235e33323033957ae9e610bd0e26c493b407cfbadde258
        - registry.redhat.io/multicluster-engine/assisted-image-service-rhel9@sha256:6082629342c13caf33bde021724f5d2b9c400f838b74285a3c2d99d68a03b26c
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:d38a886f70d079eed24b9fb57030f535e37524d6f7baf6b1022be1c07cc32ab7
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:262db9468caefa25b66176fb3492c5b310c249ee1035d866b6a1faca30318ae9
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:0b9dbc00f7f579c37197ed3c5fad6e1420034f38418c21a6d83e57761763e715
        - registry.redhat.io/multicluster-engine/hypershift-addon-rhel9-operator@sha256:2b725421986812ce501db94fe0ae5df6ae3e2a8bb31be6aebe24e85cd1ac4703
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:7a0b186fbdb169ba82e3ff4a0beb8a3ac2d1ee555bd37182ee9d92a945093b66
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:20776e91176dd86feb16fb24ebcb087cea368f5778573edbc39df47a1dcbe5af
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:dd7c28e8901e1804e4832b2d3437bf8bc0e4bf7a388a94e6b9e0df07f6eee10f
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:77834bc71542f6c87c1e39c82513bd9c2007017cc4866a2d51be7694a198c950
        - registry.redhat.io/multicluster-engine/clusterlifecycle-state-metrics-rhel9@sha256:d91a68077b6cb5bc2d09cedf5aebb61dd3baae3afdb3291131f579ace7ea813e
        - registry.redhat.io/multicluster-engine/registration-rhel9@sha256:f8c7c001b14cae99e47b3b9e27707200ab17de6cac1f54927056907f068cd03a
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:1b5f810b07f1830f4b71a9c384465806ea74e264770a90cd92cadd53c7d7e1b9
        - registry.redhat.io/multicluster-engine/addon-manager-rhel9@sha256:88be52d369e7862c378fa2c6bb0b5f7801bb68d773744935816411e549d51112
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:eee2a6b322f695529d9953d06ab021f0ea0d69b9a2a2f7c3299b0ede8106c102
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:45217815cc0f2bc24d5b7ac07019af9a0ccb13f8cda14713422b8b699f3723e9
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:243858bae64bf199c479086f71c222b096555339c3461d7d1bfd47cf4e43df14
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:50eb7b0039c66db781d3905d3d24bcaca9ebe0ab07bdca1bc7bb0c406fb01d8a
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:38f65ed06100af8f55530fd79ed5064f3839863caec0f610385abeea0e3c1efb
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:bcaded7338e5171707c02a04216fa1bbaa5b57c8da9af0df91347ad6d84e0d9a
        - registry.redhat.io/multicluster-engine/cluster-api-provider-aws-rhel9@sha256:1e2fe8b42665e7bfc7938ea23a0a8efdb98a6825238f6fc90993926cd8d2317b
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:17a2e3c30f2a59f402723dc553564ec1289b6e2bbcedb9cc353285de9f5e42f4
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:b689ee70b715a65b664a2e31b5ac3b1a70d6a7d2abff28e99013094468c2e32f
        - registry.redhat.io/multicluster-engine/work-rhel9@sha256:753458389b93e2dc76f7d8766345f7bdfb3c3ba23d76e938b04e724418981e73
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:43ed1820a27580f8fa9c80d53590d2b5cd049c925cb57c8c396512bddeed3332
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:5bf1563d90623b6f224278f58ceb79ed7877d88eb3af50826fe8588735535efa
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:db28620adb4c59bc9811dcd5d0a743ce534f24e40165f84af7044a5b9d04b76a
        - registry.redhat.io/multicluster-engine/capoa-bootstrap-rhel9@sha256:1ccf3b85dde18875aa1b98797d4477c7fe725725c5b6d91b4ed21e3e3249ec36
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:e399861c4ecf3c1910dfc7e2da2b234bdc1ae1aba3a006f28285756edb2c9b2f
        version: 2.10.0
      entries:
      - name: multicluster-engine.v2.10.0
        version: 2.10.0
      name: stable-2.10
    - currentCSV: multicluster-engine.v2.9.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "multicluster.openshift.io/v1", "kind": "MultiClusterEngine",
            "metadata": {"name": "multiclusterengine"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-10-30T12:42:03Z"
          description: Foundational components for central management of multiple
            OpenShift Container Platform and Kubernetes clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.8.0 <2.9.1'
          operatorframework.io/initialization-resource: '{"apiVersion":"multicluster.openshift.io/v1",
            "kind":"MultiClusterEngine","metadata":{"name":"engine"},"spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-engine
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:a990e85f8f59435ee886d1176fdd570559036b2597d2cde523c3bb31178bc5ee
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/open-cluster-management/backplane-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MultiClusterEngine defines the configuration for an instance
              of a multicluster engine, a central point providing the foundational components for managing multiple Kubernetes-based clusters. The deployment of the multicluster engine components is
              determined based on the configuration that is defined in this resource.
            displayName: MultiCluster Engine
            kind: MultiClusterEngine
            name: multiclusterengines.multicluster.openshift.io
            version: v1
        description: "Multicluster engine for Kubernetes provides the foundational
          components that are necessary for the centralized management of multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the engine to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can use the APIs that are provided by
          the engine to distribute configuration based on placement policy. Placement
          policy is a significant part of creating sophisticated multicluster management
          applications because you can select the applicable clusters.\n## Installing\nInstall
          the multicluster engine for Kubernetes operator by following instructions
          that display when you click the `Install` button. After installing the operator,
          create an instance of the `MultiClusterEngine` resource to install the engine
          components that provide the management APIs. Note: If you are using the
          engine to manage non-OpenShift Container Platform 4.x clusters, you need
          to create a Kubernetes `Secret` resource that contains your OpenShift Container
          Platform pull secret. Specify this `Secret` in the `MultiClusterEngine`
          resource, as described in the install documentation.\nYou can find additional
          installation guidance in the [documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/clusters/cluster_mce_overview#mce-install-intro). "
        displayName: multicluster engine for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mce
        - multicluster-engine
        - multiclusterengine
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/clusters/index
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:34714647e5ae36f266b3d68b56abbd0a79c8f4e05c4c9076cd0f76dad243763d
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:52faed21cd40448dd4260909e2de026155afc207f1ee26b396a75b6099830525
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:f4c21f87dd7b725f472f51829bbc40261788e0f64c391ab136a3d6d8d9235872
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:358e8a39385d43077c2464d1cf037e3358c8eeb7e84958671acb1e996f070d25
        - registry.redhat.io/multicluster-engine/assisted-service-8-rhel8@sha256:03446585c076f6f9983dd336e1ee47c3955830b94a5e81c5c256d627ba675030
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:cd9f96afaa76332885dd7762906681e32ee7ae8ab268e036b0f9874a10a99d57
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:eee3c75b6eee3f1c0374cbbeff415ba8e28b9556edbc76d2bb01a10246c3bc6c
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:462fd64a59c1915d91d628af10415107b7ab4b03ac322a4c77687064e5f89421
        - registry.redhat.io/multicluster-engine/assisted-image-service-rhel9@sha256:86859614fae3d7f6dccc051ce90b055d1b4b6f313d9b85187bb6dc06e9d59ae2
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:083fbf9b0eb35119bb95652e3f8cc3f38f2ab66b38811f36938d19efb0f09456
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:92bb8f1e74ca9d0938d92f84f85ca047e8abc6be6df54eb6d8cd506f9393f6ba
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:ef9d311b1f5b5b386a6fc224c0fbdd8794c0ccb4e6bff11939c8332f48da8fe9
        - registry.redhat.io/multicluster-engine/registration-rhel9@sha256:b583869a3c3383670427be20a3b01fa5eba42c09fae0c8401063b0461831277c
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:03466cbe5b770e1e7b124109dac09840cdc6ed1bec56de9b42dc7cb8278d7f0d
        - registry.redhat.io/multicluster-engine/capoa-bootstrap-rhel9@sha256:951773131a05b2eb4a39ccf568b23cb633c926546e43227d5f715e73441b0b89
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:e9f7e03889d1151381a65cc41a3fc24e97b7e0169c43c91bb8dff54a6fa7e837
        - registry.redhat.io/rhel8/postgresql-12@sha256:af1ab437b165fa4ee9dfd6ade637d7de5fa556d0b3851fb8edc78afe0e6fa95e
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:61856d12d173d98c9cfa6596cc9b19be38e8f789712dd742dfa613a1d585f53b
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:eb2d84f5038c12c558bbfbc9441c18337051d0ab64264a0574232546fb9fea33
        - registry.redhat.io/multicluster-engine/cluster-api-provider-kubevirt-rhel9@sha256:929bff9558142caae866726792d7406cdfda8c343d88ede0fa5e0054433ccb27
        - registry.redhat.io/multicluster-engine/hypershift-addon-rhel9-operator@sha256:ca2178056cfc338e309462fdd7aa811a653a9513d24959fe0842f56e83c371b0
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:f626f057664e3408ea5fd778e3d2a4e80735ba858d76749a1a2056c65face4ec
        - registry.redhat.io/openshift4/ose-aws-cluster-api-controllers-rhel9@sha256:2f3b87c980d89161d93ba27ae379537ca9b603aed6de7b03e1720885231fe519
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:05b87e707d6e0b2fc4cea9a22ed5b0c23cab8a38ee4cc9e8e5b9f4059e7b2dc0
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:55388553b68ad695bbde73addc43a68fc4523c4477f979ee1e8103b79dbe0bea
        - registry.redhat.io/multicluster-engine/addon-manager-rhel9@sha256:b622c7a3e14a3d80b01c66fffaf5fee108767fef90976d7ae981d79bfdd1bdf0
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:e9b9e2dba46fdced4d9276082956b34f1223dfaf7f6da600efeee5a42317754e
        - registry.redhat.io/multicluster-engine/clusterlifecycle-state-metrics-rhel9@sha256:6028387bdc2e8cb2cc62a22ff242d4c4315ccae94fd93fa9ffd7585b1bb324f2
        - registry.redhat.io/multicluster-engine/managedcluster-import-controller-rhel9@sha256:017152eb0d925805bf2e1ff4e7964935aeb5d25b31db47b26ea1062d7ccc73ca
        - registry.redhat.io/multicluster-engine/work-rhel9@sha256:b1614c7ff4d7b125cac315b459aa819a7f7918f70aeb2f6d6f6c4c17791ca600
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:5b4a878a07934ed035dae0ab1b86eff1166124565226af5739dd8aa16ba90d50
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:e97bb0c19ad0075422f4afadf82e3a5d6bfa24bdcf484777486d0d52c9f294b2
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:147e0635014afe58dd58af3d006095c8069e4746fd753349378435363add304a
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:9556277ac54246d8132dc08c8854992b5c478706ad483e1bf2e16c5e2aa04a04
        - registry.redhat.io/multicluster-engine/assisted-installer-rhel9@sha256:9520707d782b393e2e34061c18b269a1b610143d8b06739984776101b08db322
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:878fb0eb1102cdefdfd7d266869a0a8f7cb19a1b8f0e5741f75755334e67c887
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:7c9fc8014eacde9e9e598823815acd4ea61d5128a84c79bce914fe77ae276aef
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:a990e85f8f59435ee886d1176fdd570559036b2597d2cde523c3bb31178bc5ee
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:0f813721abc29eb84b94b9ec6abbffa64d984bd7b5b76a810ef454a70da8ec93
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:9734a109c7be60f5871132379e8c88c0f92a9a991943de317040ad8550637477
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:d90b77447584cc5e03ea8a7d732a57ffcb09a4d0a0231ec41ff5a67e96a42273
        version: 2.9.1
      entries:
      - name: multicluster-engine.v2.9.1
        version: 2.9.1
      - name: multicluster-engine.v2.9.0
        version: 2.9.0
      name: stable-2.9
    defaultChannel: stable-2.10
    packageName: multicluster-engine
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: 3scale-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: 3scale-community-operator.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/3scale-operator:v0.8.2
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |
          The 3scale community Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          3scale API Management makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/3scale-operator/blob/v0.8.2/doc/operator-user-guide.md).

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Improving [documentation](https://github.com/3scale/3scale-operator/blob/v0.8.2/doc/operator-user-guide.md)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: 3scale API Management
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://github.com/3scale/3scale-operator/blob/v0.8.2/doc/operator-user-guide.md
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/3scale-operator:v0.8.2
        - quay.io/openshift-community-operators/3scale-community-operator@sha256:8197e4a96ac8949d43cda62ac2257a9b1e71f0b54f42283ee4925f88c369f873
        version: 0.8.2
      entries:
      - name: 3scale-community-operator.v0.8.2
        version: 0.8.2
      name: threescale-2.11
    - currentCSV: 3scale-community-operator.v0.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/3scale-operator:v0.9.0
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |
          The 3scale community Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          3scale API Management makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/3scale-operator/blob/v0.9.0/doc/operator-user-guide.md).

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: 3scale API Management
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://github.com/3scale/3scale-operator/blob/v0.9.0/doc/operator-user-guide.md
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/3scale-operator:v0.9.0
        - quay.io/openshift-community-operators/3scale-community-operator@sha256:728074151b245f5e0d65bd8956149f05ba22a1b6438120ebca2d85b0d7d0c837
        version: 0.9.0
      entries:
      - name: 3scale-community-operator.v0.9.0
        version: 0.9.0
      - name: 3scale-community-operator.v0.8.2
        version: 0.8.2
      name: threescale-2.12
    - currentCSV: 3scale-community-operator.v0.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ProxyConfigPromote",
                "metadata": {
                  "name": "proxyconfigpromote-sample"
                },
                "spec": {
                  "ProductCRName": "product1-sample",
                  "Production": true
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/3scale-operator:v0.10.1
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: ProxyConfigPromote is the Schema for the proxyconfigpromotes
              API
            displayName: Proxy Config Promote
            kind: ProxyConfigPromote
            name: proxyconfigpromotes.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |
          The 3scale community Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          3scale API Management makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/3scale-operator/blob/v0.10.1/doc/operator-user-guide.md).

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Improving [documentation](https://github.com/3scale/3scale-operator/blob/master/doc/operator-user-guide.md)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: 3scale API Management
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://github.com/3scale/3scale-operator/blob/v0.10.1/doc/operator-user-guide.md
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mstoklus@redhat.com
          name: Michal Stokluska
        - email: aucunnin@redhat.com
          name: Austin Cunningham
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/3scale-operator:v0.10.1
        - quay.io/openshift-community-operators/3scale-community-operator@sha256:4109698147632b858fe2787964772a1339cdebee72b75b42d9b1c5dbbbecb45c
        version: 0.10.1
      entries:
      - name: 3scale-community-operator.v0.10.1
        version: 0.10.1
      - name: 3scale-community-operator.v0.9.0
        version: 0.9.0
      - name: 3scale-community-operator.v0.8.2
        version: 0.8.2
      name: threescale-2.13
    defaultChannel: threescale-2.13
    packageName: 3scale-community-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: kiali-ossm
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kiali-operator.v2.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "Kiali",
                "metadata": {
                  "name": "kiali"
                },
                "spec": {
                  "version": "default",
                  "istio_namespace": "istio-system",
                  "deployment": {
                    "logger": {
                      "log_level": "info"
                    },
                    "view_only_mode": false
                  }
                }
              },
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "OSSMConsole",
                "metadata": {
                  "name": "ossmconsole"
                },
                "spec": {
                  "version": "default",
                  "kiali": {
                    "serviceName": "",
                    "serviceNamespace": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh-tech-preview/kiali-rhel9-operator@sha256:0612dfa52f2bf39a1d87e640409313585fedc7cfcff6d00e77bb14809d27d646
          createdAt: "2024-12-12T10:44:15Z"
          description: This productized operator provides Kiali and OSSMC. Kiali is
            the Istio observability and management Console. OSSMC is the OpenShift
            Service Mesh Console plugin, powered by Kiali.
          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: "true"
          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.skipRange: '>=1.0.0 <2.1.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/kiali/kiali
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A configuration file for a Kiali installation.
            displayName: Kiali
            kind: Kiali
            name: kialis.kiali.io
            version: v1alpha1
          - description: A configuration file for a OpenShift Service Mesh Console
              installation.
            displayName: OpenShift Service Mesh Console
            kind: OSSMConsole
            name: ossmconsoles.kiali.io
            version: v1alpha1
        description: |-
          ## About the managed application

          A Microservice Architecture breaks up the monolith into many smaller pieces
          that are composed together. Patterns to secure the communication between
          services like fault tolerance (via timeout, retry, circuit breaking, etc.)
          have come up as well as distributed tracing to be able to see where calls
          are going.

          A service mesh can now provide these services on a platform level and frees
          the application writers from those tasks. Routing decisions are done at the
          mesh level.

          Kiali works with OpenShift Service Mesh to visualize the service
          mesh topology, to provide visibility into features like circuit breakers,
          request rates and more. It offers insights about the mesh components at
          different levels, from abstract Applications to Services and Workloads.

          See [https://www.kiali.io](https://www.kiali.io) to read more.

          ### Accessing the UI

          By default, the Kiali operator exposes the Kiali UI as an OpenShift Route.

          If on OpenShift, you can create an OSSMConsole CR to have the operator
          install the OpenShift ServiceMesh Console plugin to the OpenShift Console
          thus providing an interface directly integrated with the OpenShift Console.

          ## About this Operator

          ### Kiali Custom Resource Configuration Settings

          For quick descriptions of all the settings you can configure in the Kiali
          Custom Resource (CR), see
          [the kiali.io docs](https://kiali.io/docs/configuration/kialis.kiali.io/).

          ## Prerequisites for enabling this Operator

          Kiali is a companion tool for OpenShift Service Mesh. So before you install Kiali, you must have
          already installed Service Mesh.
        displayName: Kiali Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - service-mesh
        - observability
        - monitoring
        - istio
        links:
        - name: Installation Guide
          url: https://www.kiali.io/docs/installation
        - name: Features
          url: https://www.kiali.io/docs/features
        - name: Documentation Home
          url: https://www.kiali.io
        - name: Blogs and Articles
          url: https://medium.com/kialiproject
        - name: Server and UI Source Code
          url: https://github.com/kiali/kiali
        - name: Operator Source Code
          url: https://github.com/kiali/kiali-operator
        - name: OpenShift Service Mesh Console Code
          url: https://github.com/kiali/openshift-servicemesh-plugin
        maintainers:
        - email: kiali-dev@googlegroups.com
          name: Kiali Developers Google Group
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-ossmc-rhel9@sha256:99643f294c3f92a6fc82f321cab7c756e4879fefb48fa824f1bf49ff7182658d
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-rhel9-operator@sha256:0612dfa52f2bf39a1d87e640409313585fedc7cfcff6d00e77bb14809d27d646
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-rhel9@sha256:06fde6c696a33d17b0d2f7620ec46422c82277fd17a3fe6d7319de05c732aace
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel8@sha256:e37d76dd7c7a2db79ff1e96afef19b07c3beaa8ebf0c7bd85b808908b8f0ce77
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:27a6aebffa3d049ee48050126e6107db2e07c49e9ce9297175facb6368e1e792
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:66e4d933a9d69158bf87dd45835183bf2308b77c48908ab64496c5d22c816293
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:976a31ca8cf17ac0887b8a586edfcc29eb30175802461b3114758af525e7b800
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-operator-bundle@sha256:f40e7955ac649c383134ab6e77bdd521b75b21ecd9b476436405d0674c7fc855
        version: 2.1.2
      entries:
      - name: kiali-operator.v2.1.2
        version: 2.1.2
      - name: kiali-operator.v1.89.8
        version: 1.89.8
      - name: kiali-operator.v1.89.7
        version: 1.89.7
      - name: kiali-operator.v1.89.6
        version: 1.89.6
      - name: kiali-operator.v1.89.1
        version: 1.89.1
      - name: kiali-operator.v1.73.10
        version: 1.73.10
      - name: kiali-operator.v1.73.8
        version: 1.73.8
      - name: kiali-operator.v1.73.7
        version: 1.73.7
      - name: kiali-operator.v1.73.4
        version: 1.73.4
      - name: kiali-operator.v1.65.11
        version: 1.65.11
      - name: kiali-operator.v1.65.10
        version: 1.65.10
      - name: kiali-operator.v1.65.9
        version: 1.65.9
      - name: kiali-operator.v1.65.8
        version: 1.65.8
      - name: kiali-operator.v1.65.7
        version: 1.65.7
      - name: kiali-operator.v1.65.6
        version: 1.65.6
      - name: kiali-operator.v1.57.7
        version: 1.57.7
      name: candidate
    - currentCSV: kiali-operator.v2.17.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "Kiali",
                "metadata": {
                  "name": "kiali"
                },
                "spec": {
                  "version": "default",
                  "deployment": {
                    "logger": {
                      "log_level": "info"
                    },
                    "view_only_mode": false
                  }
                }
              },
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "OSSMConsole",
                "metadata": {
                  "name": "ossmconsole"
                },
                "spec": {
                  "version": "default",
                  "kiali": {
                    "serviceName": "",
                    "serviceNamespace": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh/kiali-rhel9-operator@sha256:ee89b53ebdd6b92eccd6c4a238a43d57d245ab14e8402a86e5ecd53046d90485
          createdAt: "2025-12-04T11:03:18Z"
          description: This productized operator provides Kiali and OSSMC. Kiali is
            the Istio observability and management Console. OSSMC is the OpenShift
            Service Mesh Console plugin, powered by Kiali.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/kiali/kiali
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A configuration file for a Kiali installation.
            displayName: Kiali
            kind: Kiali
            name: kialis.kiali.io
            version: v1alpha1
          - description: A configuration file for a OpenShift Service Mesh Console
              installation.
            displayName: OpenShift Service Mesh Console
            kind: OSSMConsole
            name: ossmconsoles.kiali.io
            version: v1alpha1
        description: |-
          ## About the managed application

          A Microservice Architecture breaks up the monolith into many smaller pieces
          that are composed together. Patterns to secure the communication between
          services like fault tolerance (via timeout, retry, circuit breaking, etc.)
          have come up as well as distributed tracing to be able to see where calls
          are going.

          A service mesh can now provide these services on a platform level and frees
          the application writers from those tasks. Routing decisions are done at the
          mesh level.

          Kiali works with OpenShift Service Mesh to visualize the service
          mesh topology, to provide visibility into features like circuit breakers,
          request rates and more. It offers insights about the mesh components at
          different levels, from abstract Applications to Services and Workloads.

          See [https://www.kiali.io](https://www.kiali.io) to read more.

          ### Accessing the UI

          By default, the Kiali operator exposes the Kiali UI as an OpenShift Route.

          If on OpenShift, you can create an OSSMConsole CR to have the operator
          install the OpenShift ServiceMesh Console plugin to the OpenShift Console
          thus providing an interface directly integrated with the OpenShift Console.

          ## About this Operator

          ### Kiali Custom Resource Configuration Settings

          For quick descriptions of all the settings you can configure in the Kiali
          Custom Resource (CR), see
          [the kiali.io docs](https://kiali.io/docs/configuration/kialis.kiali.io/).

          ## Prerequisites for enabling this Operator

          Kiali is a companion tool for OpenShift Service Mesh. So before you install Kiali, you must have
          already installed Service Mesh.
        displayName: Kiali Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - service-mesh
        - observability
        - monitoring
        - istio
        links:
        - name: Installation Guide
          url: https://www.kiali.io/docs/installation
        - name: Features
          url: https://www.kiali.io/docs/features
        - name: Documentation Home
          url: https://www.kiali.io
        - name: Blogs and Articles
          url: https://medium.com/kialiproject
        - name: Server and UI Source Code
          url: https://github.com/kiali/kiali
        - name: Operator Source Code
          url: https://github.com/kiali/kiali-operator
        - name: OpenShift Service Mesh Console Code
          url: https://github.com/kiali/openshift-servicemesh-plugin
        maintainers:
        - email: kiali-dev@googlegroups.com
          name: Kiali Developers Google Group
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:5e0f84a7ea17f1969dad842e2b8a7d3d868987e93a8e07ed8c2fab029618b8b6
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:99fd79555e907c2a84d0ffabb07fbce41313f800dbcd73edc6ee39773b5cdd23
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9-operator@sha256:ee89b53ebdd6b92eccd6c4a238a43d57d245ab14e8402a86e5ecd53046d90485
        - registry.redhat.io/openshift-service-mesh/kiali-operator-bundle@sha256:35096e1737e500ad148e9f5ca2a14554a5e1b4f3104782f00e8322352e365833
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel8@sha256:3c562a0583789ef34b25715663a66fc099c418d067e8cabd3c16e149f995d3a7
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:422b7cc5c88030ad25e989b17aa7d198844fd505571f1340c3b6d08704bc96ee
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:9fb4a74a931c8c6a9f8dd0cc844a93fe0b7fff36210fe53fd8cc50b69484d742
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:bde79c700c879bae1bb67434f51b3b202d7072de771cf8d86ee65b5539b9e347
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:ee3ea20acb92c12d1808076f00a179da61e632888e8e59e0e2b8b5caf053246c
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:73c5c6021261336e50b34210f7ca4926511e8f11ff4d29f1305a0236dcc19c5d
        version: 2.17.2
      entries:
      - name: kiali-operator.v2.17.2
        version: 2.17.2
      - name: kiali-operator.v2.17.1
        version: 2.17.1
      - name: kiali-operator.v2.11.4
        version: 2.11.4
      - name: kiali-operator.v2.11.3
        version: 2.11.3
      - name: kiali-operator.v2.11.2
        version: 2.11.2
      - name: kiali-operator.v2.11.1
        version: 2.11.1
      - name: kiali-operator.v2.4.7
        version: 2.4.7
      - name: kiali-operator.v2.4.6
        version: 2.4.6
      - name: kiali-operator.v2.4.5
        version: 2.4.5
      - name: kiali-operator.v2.4.4
        version: 2.4.4
      - name: kiali-operator.v2.4.3
        version: 2.4.3
      - name: kiali-operator.v1.89.10
        version: 1.89.10
      - name: kiali-operator.v1.89.9
        version: 1.89.9
      - name: kiali-operator.v1.89.8
        version: 1.89.8
      - name: kiali-operator.v1.89.7
        version: 1.89.7
      - name: kiali-operator.v1.89.6
        version: 1.89.6
      - name: kiali-operator.v1.89.1
        version: 1.89.1
      - name: kiali-operator.v1.73.10
        version: 1.73.10
      - name: kiali-operator.v1.73.8
        version: 1.73.8
      - name: kiali-operator.v1.73.7
        version: 1.73.7
      - name: kiali-operator.v1.73.4
        version: 1.73.4
      - name: kiali-operator.v1.65.11
        version: 1.65.11
      - name: kiali-operator.v1.65.10
        version: 1.65.10
      - name: kiali-operator.v1.65.9
        version: 1.65.9
      - name: kiali-operator.v1.65.8
        version: 1.65.8
      - name: kiali-operator.v1.65.7
        version: 1.65.7
      - name: kiali-operator.v1.65.6
        version: 1.65.6
      - name: kiali-operator.v1.57.7
        version: 1.57.7
      name: stable
    defaultChannel: stable
    packageName: kiali-ossm
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Debezium Authors
      provider-url: https://debezium.io/
    name: debezium-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: debezium-operator.v2.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.4.2.Final
          createdAt: "2023-12-13T12:20:56Z"
          description: An Operator for installing and managing Debezium
          repository: https://github.com/debezium/debezium-operator
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/debezium/operator:2.4.2.Final
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:1a156d67fd5beb9ffddecab724490acb7143f8141ff3b392c6f519e76c3ad374
        version: 2.4.2
      entries:
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.4.x
    - currentCSV: debezium-operator.v2.5.3-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.5.3.Final
          createdAt: "2024-03-19T08:17:17Z"
          description: An Operator for installing and managing Debezium
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/debezium/operator:2.5.3.Final
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:645fcb18684884aef8ca4d5299f0d053d496c3a5d3f37cadd66c51d38514a680
        version: 2.5.3-final
      entries:
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.5.x
    - currentCSV: debezium-operator.v2.6.1-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.6.1.Final
          createdAt: "2024-04-12T17:18:16Z"
          description: An Operator for installing and managing Debezium
          olm.skipRange: '>2.5.3-final'
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:5a73ce3a8cc8422aeda37fd9ef97f5aecdbf8c69fb6ff488df26342e989b5c57
        - quay.io/debezium/operator:2.6.1.Final
        version: 2.6.1-final
      entries:
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.6.x
    - currentCSV: debezium-operator.v2.7.3-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.7.3.Final
          createdAt: "2024-09-20T10:31:16Z"
          description: An Operator for installing and managing Debezium
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:1dfe9180a9fca4f773c1282dfd0006daa0bb48dfbac87e352661e051107f9033
        - quay.io/debezium/operator:2.7.3.Final
        version: 2.7.3-final
      entries:
      - name: debezium-operator.v2.7.3-final
        version: 2.7.3-final
      - name: debezium-operator.v2.7.0-final
        version: 2.7.0-final
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.7.x
    - currentCSV: debezium-operator.v3.0.0-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:3.0.0.Final
          createdAt: "2024-10-02T09:55:38Z"
          description: An Operator for installing and managing Debezium
          olm.skipRange: '>2.7.3-final'
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:10671f1f6a7bab7b8bf7c8d986321484a7972b727f08947894ba7a6ccef98cd8
        - quay.io/debezium/operator:3.0.0.Final
        version: 3.0.0-final
      entries:
      - name: debezium-operator.v3.0.0-final
        version: 3.0.0-final
      - name: debezium-operator.v2.7.3-final
        version: 2.7.3-final
      - name: debezium-operator.v2.7.0-final
        version: 2.7.0-final
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-3.0.x
    - currentCSV: debezium-operator.v3.0.0-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:3.0.0.Final
          createdAt: "2024-10-02T09:55:38Z"
          description: An Operator for installing and managing Debezium
          olm.skipRange: '>2.7.3-final'
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/debezium/operator:3.0.0.Final
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:10671f1f6a7bab7b8bf7c8d986321484a7972b727f08947894ba7a6ccef98cd8
        version: 3.0.0-final
      entries:
      - name: debezium-operator.v3.0.0-final
        version: 3.0.0-final
      - name: debezium-operator.v2.7.3-final
        version: 2.7.3-final
      - name: debezium-operator.v2.7.0-final
        version: 2.7.0-final
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-latest
    defaultChannel: debezium-latest
    packageName: debezium-operator
    provider:
      name: Debezium Authors
      url: https://debezium.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/component: kmm-hub
      app.kubernetes.io/name: kmm-hub
      app.kubernetes.io/part-of: kmm
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: kernel-module-management-hub
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kernel-module-management-hub.v2.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:888a3acad339cf38a324c718e0cbe1237ca5bf2f4636b01d001752658e4cca1b
          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: "true"
          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.skipRange: '>=0.0.0 <2.0.2'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:888a3acad339cf38a324c718e0cbe1237ca5bf2f4636b01d001752658e4cca1b
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:192e08b121a04ae69aea60c35199e8f5e3c42305e1ebd024a605a371de4ab472
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:94b4ddc45cb34d4ffe794a51b99c868cb709f90cc4eb8b28284d70c526a0a226
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:62c44057a27abd41cf3daf60b8736da59a82dadb65fa6c32bef65d19bd49ea49
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:f182078b0077b6df6d47ddcab0204e963c1475486bd61b8eccb73b46eb8b2995
        version: 2.0.2
      entries:
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.0
    - currentCSV: kernel-module-management-hub.v2.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:d1c1490d4c20dc2ec31effa1af067676c4d264e3b7d4670fc11c2baf8a400001
          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.skipRange: '>=0.0.0 <2.1.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:c8b3505ed491c1bf6a913f161715c8ac483d8d9adf1fd29916ea4edad987cd67
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:d1c1490d4c20dc2ec31effa1af067676c4d264e3b7d4670fc11c2baf8a400001
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:14e100e5853444114029116255ebfb7a54e5ed51503ba969740ad48b5ca80f70
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:1a9a19df17b464d1708b2905d03b8726e4480ca1f11aa97a15ff4c049a24ea4b
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:611556d999ea97f9dbb78fec5963baa02de7a26626d7096ba63b177e3bcf9707
        version: 2.1.1
      entries:
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.1
    - currentCSV: kernel-module-management-hub.v2.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:90c1946b3f577cde0435402b04baa52dc54e5aab3bb84bd834ac026a57453296
          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: "true"
          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.skipRange: '>=0.0.0 <2.2.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:90c1946b3f577cde0435402b04baa52dc54e5aab3bb84bd834ac026a57453296
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:53fddf0b226eb579c71c86112a8d9b6b1d90a1498d6f6985932b16b8be532f35
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:c3dc9ad4ebc68cd85a074b520903a9310e72a90a73bdf4aa7c42b7ed66b7bcba
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:b1d98c0f14448ae8eb80821cbec236150c338674aae2a2b37f8d0ab0d5f1430c
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:af5a13351f960c0938c68604b772f24743c0e997701838a7784c53406471e72a
        version: 2.2.1
      entries:
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.2
    - currentCSV: kernel-module-management-hub.v2.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:f1d8f3c95f621c3faf41867c5dd4bc13fa2b9b291422d6184e6e42f1d1460259
          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: "true"
          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.skipRange: '>=0.0.0 <2.3.0'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:0d9f5293d69eebd91fffd83ae371141e640cab8f9e2d559a83714ce0f94fee08
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:f1d8f3c95f621c3faf41867c5dd4bc13fa2b9b291422d6184e6e42f1d1460259
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:f9fde334af68220943017a7491130e6a82f15e63522f5bb3931aa7d9b00ccc40
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:06ac089cc89b303e525fd71d6439b958f34ab944a72209f1cc8cb562ecfd1112
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:c5005b74402f680d11c9ea682a9a0d3f74b6ab0d01d25298d232f910f1a29c34
        version: 2.3.0
      entries:
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.3
    - currentCSV: kernel-module-management-hub.v2.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm-hub",
                    "app.kubernetes.io/name": "kmm-hub",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator
          createdAt: "2025-06-19T20:27:42Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.4.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:c4dc5f967c59e6371f344aa840fac24d8a17c127c71a2babf67d26cf6526acc5
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:2efb81137ad2981b994c62d460c917749308133a7dcad5b9a2b251e18f3052ec
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:38d811a00b88a096d9fa8f650dae132c43db7057aac61c98932494ce94d67fff
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:34bd5c4f17411d5aa71edb1d6482b9a4cffffe4983b0a599db080bb09e1ec4d2
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:fc753a1c47c870199bf3c9a6cb4ef704847d525b3df5cd7628e2cc7dd0bbb2aa
        version: 2.4.1
      entries:
      - name: kernel-module-management-hub.v2.4.1
        version: 2.4.1
      - name: kernel-module-management-hub.v2.4.0
        version: 2.4.0
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.4
    - currentCSV: kernel-module-management-hub.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm-hub",
                    "app.kubernetes.io/name": "kmm-hub",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:31Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:e0b2a92c81b68732284ee358725ecc3a8e8a7cc9b9801ffda5167da98dd91013
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:66c94d8a0470c470c15ccf880fbb7bd69b368020c93eb0bc7c9bdd84ba6825ed
        version: 2.5.1
      entries:
      - name: kernel-module-management-hub.v2.5.1
        version: 2.5.1
      - name: kernel-module-management-hub.v2.5.0
        version: 2.5.0
      - name: kernel-module-management-hub.v2.4.1
        version: 2.4.1
      - name: kernel-module-management-hub.v2.4.0
        version: 2.4.0
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.5
    - currentCSV: kernel-module-management-hub.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm-hub",
                    "app.kubernetes.io/name": "kmm-hub",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:31Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:66c94d8a0470c470c15ccf880fbb7bd69b368020c93eb0bc7c9bdd84ba6825ed
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:e0b2a92c81b68732284ee358725ecc3a8e8a7cc9b9801ffda5167da98dd91013
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        version: 2.5.1
      entries:
      - name: kernel-module-management-hub.v2.5.1
        version: 2.5.1
      - name: kernel-module-management-hub.v2.5.0
        version: 2.5.0
      - name: kernel-module-management-hub.v2.4.1
        version: 2.4.1
      - name: kernel-module-management-hub.v2.4.0
        version: 2.4.0
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: kernel-module-management-hub
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Splunk Inc.
      provider-url: www.splunk.com
    name: splunk-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: splunk-operator.v3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "IndexerCluster",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "indexercluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "LicenseMaster",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "licensemaster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "MonitoringConsole",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "monitoringconsole-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "SearchHeadCluster",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "searchheadcluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "Standalone",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "standalone-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "ClusterManager",
                "metadata": {
                  "name": "clustermanager-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "IndexerCluster",
                "metadata": {
                  "name": "indexercluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "LicenseManager",
                "metadata": {
                  "name": "licensemanager-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "MonitoringConsole",
                "metadata": {
                  "name": "monitoringconsole-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "SearchHeadCluster",
                "metadata": {
                  "name": "searchheadcluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "Standalone",
                "metadata": {
                  "name": "standalone-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Big Data, Logging & Tracing, Monitoring, Security, AI/Machine
            Learning
          containerImage: splunk/splunk-operator@sha256:ed02561995d46ff8eea143fa78f5da118ee6fdb500832e9a33b42d059a67e229
          createdAt: "2025-09-08T10:17:59Z"
          description: The Splunk Operator for Kubernetes enables you to quickly and
            easily deploy Splunk Enterprise on your choice of private or public cloud
            provider. The Operator simplifies scaling and management of Splunk Enterprise
            by automating administrative workflows using Kubernetes best practices.
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.19"}]'
          olm.skipRange: '>=2.4.0 <3.0.0'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/splunk/splunk-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterManager is the Schema for the cluster manager API
            displayName: Cluster Manager
            kind: ClusterManager
            name: clustermanagers.enterprise.splunk.com
            version: v4
          - description: ClusterMaster is the Schema for the cluster manager API
            displayName: Cluster Master
            kind: ClusterMaster
            name: clustermasters.enterprise.splunk.com
            version: v3
          - kind: ClusterMaster
            name: clustermasters.enterprise.splunk.com
            version: v1
          - kind: ClusterMaster
            name: clustermasters.enterprise.splunk.com
            version: v2
          - description: IndexerCluster is the Schema for a Splunk Enterprise indexer
              cluster
            displayName: Indexer Cluster
            kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v3
          - description: IndexerCluster is the Schema for a Splunk Enterprise indexer
              cluster
            displayName: Indexer Cluster
            kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v4
          - kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v1
          - kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v2
          - description: LicenseManager is the Schema for a Splunk Enterprise license
              manager.
            displayName: License Manager
            kind: LicenseManager
            name: licensemanagers.enterprise.splunk.com
            version: v4
          - description: LicenseMaster is the Schema for a Splunk Enterprise license
              master.
            displayName: License Master
            kind: LicenseMaster
            name: licensemasters.enterprise.splunk.com
            version: v3
          - kind: LicenseMaster
            name: licensemasters.enterprise.splunk.com
            version: v1
          - kind: LicenseMaster
            name: licensemasters.enterprise.splunk.com
            version: v2
          - description: MonitoringConsole is the Schema for the monitoringconsole
              API
            displayName: Monitoring Console
            kind: MonitoringConsole
            name: monitoringconsoles.enterprise.splunk.com
            version: v3
          - description: MonitoringConsole is the Schema for the monitoringconsole
              API
            displayName: Monitoring Console
            kind: MonitoringConsole
            name: monitoringconsoles.enterprise.splunk.com
            version: v4
          - description: SearchHeadCluster is the Schema for a Splunk Enterprise search
              head cluster
            displayName: Search Head Cluster
            kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v3
          - description: SearchHeadCluster is the Schema for a Splunk Enterprise search
              head cluster
            displayName: Search Head Cluster
            kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v4
          - kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v1
          - kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v2
          - description: Standalone is the Schema for a Splunk Enterprise standalone
              instances.
            displayName: Standalone
            kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v3
          - description: Standalone is the Schema for a Splunk Enterprise standalone
              instances.
            displayName: Standalone
            kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v4
          - kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v1
          - kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v2
        description: The Splunk Operator for Kubernetes enables you to quickly and
          easily deploy Splunk Enterprise on your choice of private or public cloud
          provider. The Operator simplifies scaling and management of Splunk Enterprise
          by automating administrative workflows using Kubernetes best practices.
        displayName: Splunk Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Splunk
        - Enterprise
        - Operator
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://github.com/splunk/splunk-operator/tree/main/docs
        maintainers:
        - email: support@splunk.com
          name: Splunk Operator Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Splunk Inc.
          url: www.splunk.com
        relatedImages:
        - registry.connect.redhat.com/splunk/splunk-operator-bundle@sha256:0d128cb47f562351a407c7e0153736fbbc14daba121c1d7422f6ecea8967788e
        - splunk/splunk-operator@sha256:ed02561995d46ff8eea143fa78f5da118ee6fdb500832e9a33b42d059a67e229
        - splunk/splunk@sha256:4a5ce5a7b4e84a87396f0664895095c6510a0f2bf52e8747a373c7357f3ee313
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d4883d7c622683b3319b5e6b3a7edfbf2594c18060131a8bf64504805f875522
        version: 3.0.0
      entries:
      - name: splunk-operator.v3.0.0
        version: 3.0.0
      - name: splunk-operator.v2.8.1
        version: 2.8.1
      - name: splunk-operator.v2.8.0
        version: 2.8.0
      - name: splunk-operator.v2.7.1
        version: 2.7.1
      - name: splunk-operator.v2.7.0
        version: 2.7.0
      name: stable
    defaultChannel: stable
    packageName: splunk-operator
    provider:
      name: Splunk Inc.
      url: www.splunk.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: https://www.percona.com/
    name: percona-postgresql-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-postgresql-operator-certified.v2.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgv2.percona.com/v2",
                "kind": "PerconaPGCluster",
                "metadata": {
                  "name": "cluster1"
                },
                "spec": {
                  "crVersion": "2.8.2",
                  "initContainer" : {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4"
                    },
                  "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227",
                  "imagePullPolicy": "Always",
                  "postgresVersion": 17,
                  "instances": [
                    {
                      "name": "instance1",
                      "replicas": 3,
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/data": "postgres"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      },
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      }
                    }
                  ],
                  "proxy": {
                    "pgBouncer": {
                      "replicas": 3,
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb",
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/role": "pgbouncer"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      }
                    }
                  },
                  "backups": {
                    "pgbackrest": {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27",
                      "repoHost": {
                        "affinity": {
                          "podAntiAffinity": {
                            "preferredDuringSchedulingIgnoredDuringExecution": [
                              {
                                "weight": 1,
                                "podAffinityTerm": {
                                  "labelSelector": {
                                    "matchLabels": {
                                      "postgres-operator.crunchydata.com/data": "pgbackrest"
                                    }
                                  },
                                  "topologyKey": "kubernetes.io/hostname"
                                }
                              }
                            ]
                          }
                        }
                      },
                      "manual": {
                        "repoName": "repo1",
                        "options": [
                          "--type=full"
                        ]
                      },
                      "repos": [
                        {
                          "name": "repo1",
                          "schedules": {
                            "full": "0 0 * * 6"
                          },
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1",
                    "secret": "cluster1-pmm-secret",
                    "serverHost": "monitoring-service"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
          createdAt: "2025-12-24T20:59:08Z"
          description: Percona Operator for PostgreSQL manages the lifecycle of Percona
            PostgreSQL cluster instances.
          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"
          repository: https://github.com/percona/percona-postgresql-operator
          support: percona.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaPGCluster is the CRD that defines a Percona PG Cluster
            displayName: Percona PGCluster
            kind: PerconaPGCluster
            name: perconapgclusters.pgv2.percona.com
            version: v2
          - description: PerconaPGBackup is the CRD that defines a Percona PostgreSQL
              Backup
            displayName: Percona PGBackup
            kind: PerconaPGBackup
            name: perconapgbackups.pgv2.percona.com
            version: v2
          - description: PerconaPGRestore is the CRD that defines a Percona PostgreSQL
              Restore
            displayName: Percona PGRestore
            kind: PerconaPGRestore
            name: perconapgrestores.pgv2.percona.com
            version: v2
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API This Custom Resource requires enabling CrunchyBridgeClusters feature
              gate
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PerconaPGUpgrade is the Schema for the perconapgupgrades
              API
            displayName: Percona PGUpgrade
            kind: PerconaPGUpgrade
            name: perconapgupgrades.pgv2.percona.com
            version: v2
          - description: PGAdmin is the Schema for the pgadmins API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          ## Percona is Cloud Native


          Percona Operator for PostgreSQL automates and simplifies deploying and managing
          open source PostgreSQL clusters on Kubernetes. Percona Operator for PostgreSQL is based on Postgres Operator developed by Crunchy Data.

          Whether you need to get a simple PostgreSQL cluster up and running, need to deploy a high availability,
          fault tolerant cluster in production, or are running your own database-as-a-service, the Operator provides the essential
          features you need to keep your clusters healthy.

          Consult the
          [documentation](https://www.percona.com/doc/kubernetes-operator-for-postgresql/index.html)
          on the Percona Operator for PostgreSQL for complete details on capabilities
          and options.

          ### Supported Features

          * **PostgreSQL Cluster Provisioning**

          Create, Scale, & Delete PostgreSQL clusters with ease, while fully customizing your Pods and PostgreSQL configuration.

          * **High Availability**

              Safe, automated failover backed by a distributed consensus based high-availability solution. Uses Pod Anti-Affinity to help resiliency; you can configure how much
              enforced this can be. Failed primaries automatically heal, allowing for faster recovery time. Support for standby PostgreSQL clusters that work both within and
              across multiple Kubernetes clusters.

          * **Disaster Recovery**

              Backups and restores leverage the open source pgBackRest utility and includes support for full, incremental, and differential backups as well as efficient delta
              restores. Set how long you want your backups retained for. Works great with very large databases!

          * **Communication Security**

              Secure communication between your applications and data servers by enabling TLS for your PostgreSQL servers, including the ability to enforce all of your connections
              to use TLS.

          * **Monitoring**

              Track the health of your PostgreSQL clusters with Percona Monitoring and Management (PMM).

          * **PostgreSQL User Management**

              Quickly add and remove users from your PostgreSQL clusters with powerful commands. Manage password expiration policies or use your preferred PostgreSQL authentication
              scheme.

          * **Updates Management**

              Safely apply PostgreSQL updates with minimal availability impact to your PostgreSQL clusters.

          * **Advanced Replication Support**

              Choose between asynchronous replication and synchronous replication for workloads that are sensitive to losing transactions.

          * **Clone**

              Create new clusters from your existing clusters or backups.

          * **Connection Pooling**

              Use [pgBouncer](https://access.crunchydata.com/documentation/postgres-operator/latest/tutorial/pgbouncer/) for connection pooling

          * **Affinity and Tolerations**

              Have your PostgreSQL clusters deployed to Kubernetes Nodes of your preference with node affinity, or designate which nodes Kubernetes can schedule PostgreSQL instances
              to with Kubernetes  tolerations.

          * **Scheduled Backups**

              Choose the type of backup (full, incremental, differential) and how frequently you want it to occur on each PostgreSQL cluster.

          * **Backup to S3**

              Store your backups in Amazon S3 or any object storage system that supports the S3 protocol. The Operator can backup, restore, and create new clusters from these backups.

          * **Multi-Namespace Support**

              You can control how the Operator leverages Kubernetes Namespaces with several different deployment models:

              * Deploy the Operator and all PostgreSQL clusters to the same namespace
              * Deploy the Operator to one Namespace, and all PostgreSQL clusters to a different Namespace
              * Deploy the Operator to one Namespace, and have your PostgreSQL clusters managed across multiple Namespaces

          * **Full Customizability**

              The Operator not only makes it easy to get PostgreSQL up and running on Kubernetes-enabled platforms, but also allows you to further customize your deployments:

              * Selecting different storage classes for your primary, replica, and backup storage
              * Select your own container resources class for each PostgreSQL cluster deployment; differentiate between resources applied for primary and replica clusters
              * Use your own container image repository, including `imagePullSecrets` and private repositories  support
              * Customize your PostgreSQL configuration
              * Bring your own trusted certificate authority (CA) for use with the Operator API server
              * Override your PostgreSQL configuration for each cluster
              * Use your own custom images, re-define the image for each container separately
        displayName: Percona Operator for PostgreSQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - percona
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-postgresql/index.html
        - name: Github
          url: https://github.com/percona/percona-postgresql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
          url: https://www.percona.com/
        relatedImages:
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:f632d8d344484f5127fb2d7099932ed61659d4e6a365c5e8d5160829a48f2d95
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:9625b4723334fe682dc84473b1ed6062dfccb8ba8aa1151bdf2951014af1eccd
        - registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:20abf8fbdd159fcd4e7a76fc3007adcb4cf13181666c57e92c041479b1dae469
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4325dfd18945f91656624770b66815a987ff7bd71ed50584f701cf70d30b527c
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:dd5d46542699ee7581127e378d50d5ebea8b988cec94af5ca0afc7b1526af03d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7d1f8a886ec7e649cb8d025b54f2d54b3000d8c3c9b1f1faca0c9f7d33df7d4f
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4eaf41681c1af8e5a22c8ddf0fe03cbb39c0e86e8f44db769dea8302d9999378
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8db1cadc211b9fe8dca7b6fbebe0e278673053f0e367d4a14096dee67ff3d6c9
        - registry.connect.redhat.com/percona/percona-postgresql-operator-bundle@sha256:91416d3fbcaf47deec7945948744a4509a3b2ac9609c78390f2f55271ecee7b1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:11bda023af2f45f340bcabb12cc4bcb67b3ba97f8c452d15863ba8d28236150d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7596e1e5c1d2cd6c178e592870e27ca6c47762b7de0c38b6485925ba9d08d612
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4e67a8b906bc0932d14ae69fb922c0de246dad463dff5250dbfe6689887fabec
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7a7bb90523d29acdfc7c05f2d43f725c121b55bdad0d681d0e4794011def43c1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1
        version: 2.8.2
      entries:
      - name: percona-postgresql-operator-certified.v2.8.2
        version: 2.8.2
      - name: percona-postgresql-operator-certified.v2.8.1
        version: 2.8.1
      - name: percona-postgresql-operator-certified.v2.8.0
        version: 2.8.0
      name: stable
    - currentCSV: percona-postgresql-operator-certified.v2.8.2-cw
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgv2.percona.com/v2",
                "kind": "PerconaPGCluster",
                "metadata": {
                  "name": "cluster1"
                },
                "spec": {
                  "crVersion": "2.8.2",
                  "initContainer" : {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4"
                    },
                  "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227",
                  "imagePullPolicy": "Always",
                  "postgresVersion": 17,
                  "instances": [
                    {
                      "name": "instance1",
                      "replicas": 3,
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/data": "postgres"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      },
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      }
                    }
                  ],
                  "proxy": {
                    "pgBouncer": {
                      "replicas": 3,
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb",
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/role": "pgbouncer"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      }
                    }
                  },
                  "backups": {
                    "pgbackrest": {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27",
                      "repoHost": {
                        "affinity": {
                          "podAntiAffinity": {
                            "preferredDuringSchedulingIgnoredDuringExecution": [
                              {
                                "weight": 1,
                                "podAffinityTerm": {
                                  "labelSelector": {
                                    "matchLabels": {
                                      "postgres-operator.crunchydata.com/data": "pgbackrest"
                                    }
                                  },
                                  "topologyKey": "kubernetes.io/hostname"
                                }
                              }
                            ]
                          }
                        }
                      },
                      "manual": {
                        "repoName": "repo1",
                        "options": [
                          "--type=full"
                        ]
                      },
                      "repos": [
                        {
                          "name": "repo1",
                          "schedules": {
                            "full": "0 0 * * 6"
                          },
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1",
                    "secret": "cluster1-pmm-secret",
                    "serverHost": "monitoring-service"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
          createdAt: "2025-12-24T20:59:08Z"
          description: Percona Operator for PostgreSQL manages the lifecycle of Percona
            PostgreSQL cluster instances.
          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"
          repository: https://github.com/percona/percona-postgresql-operator
          support: percona.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaPGCluster is the CRD that defines a Percona PG Cluster
            displayName: Percona PGCluster
            kind: PerconaPGCluster
            name: perconapgclusters.pgv2.percona.com
            version: v2
          - description: PerconaPGBackup is the CRD that defines a Percona PostgreSQL
              Backup
            displayName: Percona PGBackup
            kind: PerconaPGBackup
            name: perconapgbackups.pgv2.percona.com
            version: v2
          - description: PerconaPGRestore is the CRD that defines a Percona PostgreSQL
              Restore
            displayName: Percona PGRestore
            kind: PerconaPGRestore
            name: perconapgrestores.pgv2.percona.com
            version: v2
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API This Custom Resource requires enabling CrunchyBridgeClusters feature
              gate
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PerconaPGUpgrade is the Schema for the perconapgupgrades
              API
            displayName: Percona PGUpgrade
            kind: PerconaPGUpgrade
            name: perconapgupgrades.pgv2.percona.com
            version: v2
          - description: PGAdmin is the Schema for the pgadmins API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          ## Percona is Cloud Native


          Percona Operator for PostgreSQL automates and simplifies deploying and managing
          open source PostgreSQL clusters on Kubernetes. Percona Operator for PostgreSQL is based on Postgres Operator developed by Crunchy Data.

          Whether you need to get a simple PostgreSQL cluster up and running, need to deploy a high availability,
          fault tolerant cluster in production, or are running your own database-as-a-service, the Operator provides the essential
          features you need to keep your clusters healthy.

          Consult the
          [documentation](https://www.percona.com/doc/kubernetes-operator-for-postgresql/index.html)
          on the Percona Operator for PostgreSQL for complete details on capabilities
          and options.

          ### Supported Features

          * **PostgreSQL Cluster Provisioning**

          Create, Scale, & Delete PostgreSQL clusters with ease, while fully customizing your Pods and PostgreSQL configuration.

          * **High Availability**

              Safe, automated failover backed by a distributed consensus based high-availability solution. Uses Pod Anti-Affinity to help resiliency; you can configure how much
              enforced this can be. Failed primaries automatically heal, allowing for faster recovery time. Support for standby PostgreSQL clusters that work both within and
              across multiple Kubernetes clusters.

          * **Disaster Recovery**

              Backups and restores leverage the open source pgBackRest utility and includes support for full, incremental, and differential backups as well as efficient delta
              restores. Set how long you want your backups retained for. Works great with very large databases!

          * **Communication Security**

              Secure communication between your applications and data servers by enabling TLS for your PostgreSQL servers, including the ability to enforce all of your connections
              to use TLS.

          * **Monitoring**

              Track the health of your PostgreSQL clusters with Percona Monitoring and Management (PMM).

          * **PostgreSQL User Management**

              Quickly add and remove users from your PostgreSQL clusters with powerful commands. Manage password expiration policies or use your preferred PostgreSQL authentication
              scheme.

          * **Updates Management**

              Safely apply PostgreSQL updates with minimal availability impact to your PostgreSQL clusters.

          * **Advanced Replication Support**

              Choose between asynchronous replication and synchronous replication for workloads that are sensitive to losing transactions.

          * **Clone**

              Create new clusters from your existing clusters or backups.

          * **Connection Pooling**

              Use [pgBouncer](https://access.crunchydata.com/documentation/postgres-operator/latest/tutorial/pgbouncer/) for connection pooling

          * **Affinity and Tolerations**

              Have your PostgreSQL clusters deployed to Kubernetes Nodes of your preference with node affinity, or designate which nodes Kubernetes can schedule PostgreSQL instances
              to with Kubernetes  tolerations.

          * **Scheduled Backups**

              Choose the type of backup (full, incremental, differential) and how frequently you want it to occur on each PostgreSQL cluster.

          * **Backup to S3**

              Store your backups in Amazon S3 or any object storage system that supports the S3 protocol. The Operator can backup, restore, and create new clusters from these backups.

          * **Multi-Namespace Support**

              You can control how the Operator leverages Kubernetes Namespaces with several different deployment models:

              * Deploy the Operator and all PostgreSQL clusters to the same namespace
              * Deploy the Operator to one Namespace, and all PostgreSQL clusters to a different Namespace
              * Deploy the Operator to one Namespace, and have your PostgreSQL clusters managed across multiple Namespaces

          * **Full Customizability**

              The Operator not only makes it easy to get PostgreSQL up and running on Kubernetes-enabled platforms, but also allows you to further customize your deployments:

              * Selecting different storage classes for your primary, replica, and backup storage
              * Select your own container resources class for each PostgreSQL cluster deployment; differentiate between resources applied for primary and replica clusters
              * Use your own container image repository, including `imagePullSecrets` and private repositories  support
              * Customize your PostgreSQL configuration
              * Bring your own trusted certificate authority (CA) for use with the Operator API server
              * Override your PostgreSQL configuration for each cluster
              * Use your own custom images, re-define the image for each container separately
        displayName: Percona Operator for PostgreSQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - percona
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-postgresql/index.html
        - name: Github
          url: https://github.com/percona/percona-postgresql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
          url: https://www.percona.com/
        relatedImages:
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4325dfd18945f91656624770b66815a987ff7bd71ed50584f701cf70d30b527c
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7d1f8a886ec7e649cb8d025b54f2d54b3000d8c3c9b1f1faca0c9f7d33df7d4f
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:dd5d46542699ee7581127e378d50d5ebea8b988cec94af5ca0afc7b1526af03d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4e67a8b906bc0932d14ae69fb922c0de246dad463dff5250dbfe6689887fabec
        - registry.connect.redhat.com/percona/percona-postgresql-operator-bundle@sha256:426327aea4e178081a84aedf1217abb2785a911d4889a1c9134160ef26c248aa
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:11bda023af2f45f340bcabb12cc4bcb67b3ba97f8c452d15863ba8d28236150d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27
        - registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7a7bb90523d29acdfc7c05f2d43f725c121b55bdad0d681d0e4794011def43c1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8db1cadc211b9fe8dca7b6fbebe0e278673053f0e367d4a14096dee67ff3d6c9
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:9625b4723334fe682dc84473b1ed6062dfccb8ba8aa1151bdf2951014af1eccd
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7596e1e5c1d2cd6c178e592870e27ca6c47762b7de0c38b6485925ba9d08d612
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4eaf41681c1af8e5a22c8ddf0fe03cbb39c0e86e8f44db769dea8302d9999378
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:20abf8fbdd159fcd4e7a76fc3007adcb4cf13181666c57e92c041479b1dae469
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:f632d8d344484f5127fb2d7099932ed61659d4e6a365c5e8d5160829a48f2d95
        version: 2.8.2-cw
      entries:
      - name: percona-postgresql-operator-certified.v2.8.2-cw
        version: 2.8.2-cw
      - name: percona-postgresql-operator-certified.v2.8.1-cw
        version: 2.8.1-cw
      - name: percona-postgresql-operator-certified.v2.8.0-cw
        version: 2.8.0-cw
      name: stable-cw
    defaultChannel: stable
    packageName: percona-postgresql-operator-certified
    provider:
      name: Percona
      url: https://www.percona.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: GitLab Inc
      provider-url: https://about.gitlab.com/
    name: gitlab-operator-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:17:00Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/gitlab-operator-kubernetes@sha256:63811c7853c3ef9ad6e04b1af146db41086b3d947e5d6069f77e9c5c57eb1f84
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: stable
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:17:00Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/gitlab-operator-kubernetes@sha256:63811c7853c3ef9ad6e04b1af146db41086b3d947e5d6069f77e9c5c57eb1f84
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: unstable
    defaultChannel: stable
    packageName: gitlab-operator-kubernetes
    provider:
      name: GitLab Inc
      url: https://about.gitlab.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: netobserv-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: network-observability-operator.v1.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "flows.netobserv.io/v1alpha1",
                "kind": "FlowMetric",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "netobserv-operator",
                    "app.kubernetes.io/instance": "flowmetric-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "flowmetric",
                    "app.kubernetes.io/part-of": "netobserv-operator"
                  },
                  "name": "flowmetric-sample"
                },
                "spec": {
                  "charts": [
                    {
                      "dashboardName": "Main",
                      "queries": [
                        {
                          "legend": "",
                          "promQL": "sum(rate($METRIC[2m]))"
                        }
                      ],
                      "title": "External ingress traffic",
                      "type": "SingleStat",
                      "unit": "Bps"
                    },
                    {
                      "dashboardName": "Main",
                      "queries": [
                        {
                          "legend": "{{DstK8S_Namespace}} / {{DstK8S_OwnerName}}",
                          "promQL": "sum(rate($METRIC{DstK8S_Namespace!=\"\"}[2m])) by (DstK8S_Namespace, DstK8S_OwnerName)"
                        }
                      ],
                      "sectionName": "External",
                      "title": "Top external ingress traffic per workload",
                      "type": "StackArea",
                      "unit": "Bps"
                    }
                  ],
                  "direction": "Ingress",
                  "filters": [
                    {
                      "field": "SrcSubnetLabel",
                      "matchType": "Absence"
                    }
                  ],
                  "labels": [
                    "DstK8S_HostName",
                    "DstK8S_Namespace",
                    "DstK8S_OwnerName",
                    "DstK8S_OwnerType"
                  ],
                  "metricName": "cluster_external_ingress_bytes_total",
                  "type": "Counter",
                  "valueField": "Bytes"
                }
              },
              {
                "apiVersion": "flows.netobserv.io/v1beta2",
                "kind": "FlowCollector",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "agent": {
                    "ebpf": {
                      "cacheActiveTimeout": "5s",
                      "cacheMaxFlows": 100000,
                      "excludeInterfaces": [
                        "lo"
                      ],
                      "imagePullPolicy": "IfNotPresent",
                      "interfaces": [],
                      "kafkaBatchSize": 1048576,
                      "logLevel": "info",
                      "metrics": {
                        "server": {
                          "port": 9400
                        }
                      },
                      "privileged": false,
                      "resources": {
                        "limits": {
                          "memory": "800Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      },
                      "sampling": 50
                    },
                    "type": "eBPF"
                  },
                  "consolePlugin": {
                    "autoscaler": {
                      "maxReplicas": 3,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 50,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 1,
                      "status": "Disabled"
                    },
                    "enable": true,
                    "imagePullPolicy": "IfNotPresent",
                    "logLevel": "info",
                    "portNaming": {
                      "enable": true,
                      "portNames": {
                        "3100": "loki"
                      }
                    },
                    "quickFilters": [
                      {
                        "default": true,
                        "filter": {
                          "flow_layer": "\"app\""
                        },
                        "name": "Applications"
                      },
                      {
                        "filter": {
                          "flow_layer": "\"infra\""
                        },
                        "name": "Infrastructure"
                      },
                      {
                        "default": true,
                        "filter": {
                          "dst_kind": "\"Pod\"",
                          "src_kind": "\"Pod\""
                        },
                        "name": "Pods network"
                      },
                      {
                        "filter": {
                          "dst_kind": "\"Service\""
                        },
                        "name": "Services network"
                      }
                    ],
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "memory": "100Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    }
                  },
                  "deploymentModel": "Direct",
                  "exporters": [],
                  "kafka": {
                    "address": "kafka-cluster-kafka-bootstrap.netobserv",
                    "tls": {
                      "caCert": {
                        "certFile": "ca.crt",
                        "name": "kafka-cluster-cluster-ca-cert",
                        "type": "secret"
                      },
                      "enable": false,
                      "userCert": {
                        "certFile": "user.crt",
                        "certKey": "user.key",
                        "name": "flp-kafka",
                        "type": "secret"
                      }
                    },
                    "topic": "network-flows"
                  },
                  "loki": {
                    "enable": true,
                    "lokiStack": {
                      "name": "loki"
                    },
                    "mode": "Monolithic",
                    "monolithic": {
                      "tenantID": "netobserv",
                      "tls": {
                        "caCert": {
                          "certFile": "service-ca.crt",
                          "name": "loki-gateway-ca-bundle",
                          "type": "configmap"
                        },
                        "enable": false
                      },
                      "url": "http://loki.netobserv.svc:3100/"
                    },
                    "readTimeout": "30s",
                    "writeBatchSize": 10485760,
                    "writeBatchWait": "1s",
                    "writeTimeout": "10s"
                  },
                  "namespace": "netobserv",
                  "networkPolicy": {
                    "additionalNamespaces": [],
                    "enable": true
                  },
                  "processor": {
                    "imagePullPolicy": "IfNotPresent",
                    "kafkaConsumerAutoscaler": null,
                    "kafkaConsumerBatchSize": 10485760,
                    "kafkaConsumerQueueCapacity": 1000,
                    "kafkaConsumerReplicas": 3,
                    "logLevel": "info",
                    "logTypes": "Flows",
                    "metrics": {
                      "disableAlerts": [],
                      "server": {
                        "port": 9401
                      }
                    },
                    "resources": {
                      "limits": {
                        "memory": "800Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "prometheus": {
                    "querier": {
                      "enable": true,
                      "mode": "Auto",
                      "timeout": "30s"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring, Networking, Observability, OpenShift Optional
          console.openshift.io/plugins: '["netobserv-plugin"]'
          containerImage: registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:d4f8f312c04c4c719c0812545382a4945e0afafd69ee3361e00f557dacbd8458
          createdAt: 2025-12-04T13:37:09
          description: Network flows collector and monitoring solution
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: '{"apiVersion":"flows.netobserv.io/v1beta2",
            "kind":"FlowCollector","metadata":{"name":"cluster"},"spec": {}}'
          operatorframework.io/suggested-namespace: openshift-netobserv-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/netobserv/network-observability-operator
          support: NetObserv team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: '`FlowCollector` is the schema for the network flows collection
              API, which pilots and configures the underlying deployments.'
            displayName: Flow Collector
            kind: FlowCollector
            name: flowcollectors.flows.netobserv.io
            version: v1beta2
          - description: '`FlowMetric` is the schema for the custom metrics API, which
              allows to generate more metrics out of flow logs. You can find examples
              here: https://github.com/netobserv/network-observability-operator/tree/main/config/samples/flowmetrics'
            displayName: Flow Metric
            kind: FlowMetric
            name: flowmetrics.flows.netobserv.io
            version: v1alpha1
        description: |
          Network Observability is an OpenShift operator that deploys a monitoring pipeline consisting in:
          - an eBPF agent, that generates network flows from captured packets
          - flowlogs-pipeline, a component that collects, enriches and exports these flows
          - a Console plugin for flows visualization with powerful filtering options, a topology representation and more

          Flow data is then available in multiple ways, each optional:

          - As Cluster Monitoring metrics
          - As raw flow logs stored in Grafana Loki
          - As raw flow logs exported to a collector

          ## Dependencies

          ### Loki

          [Loki](https://grafana.com/oss/loki/), from GrafanaLabs, can optionally be used as the backend to store all collected flows. The Network Observability operator does not install Loki directly, however we provide some guidance to help you there.

          - For a production or production-like environment usage, refer to [the operator documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/network_observability/installing-network-observability-operators).

          - For a quick try that is not suitable for production and not scalable (it deploys a single pod, configures a 10GB storage PVC, with 24 hours of retention), you can simply run the following commands:

          ```
          oc create namespace netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/5410e65b8e05aaabd1244a9524cfedd8ac8c56b5/examples/zero-click-loki/1-storage.yaml) -n netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/5410e65b8e05aaabd1244a9524cfedd8ac8c56b5/examples/zero-click-loki/2-loki.yaml) -n netobserv
          ```

          If you prefer to not use Loki, you must set `spec.loki.enable` to `false` in `FlowCollector`.
          In that case, you can still get the Prometheus metrics or export raw flows to a custom collector. But be aware that some of the Console plugin features will be disabled. For instance, you will not be able to view raw flows there, and the metrics / topology will have a more limited level of details, missing information such as pods or IPs.

          ### Kafka

          [Apache Kafka](https://kafka.apache.org/) can optionally be used for a more resilient and scalable architecture. You can use for example [Strimzi](https://strimzi.io/), an operator-based distribution of Kafka for Kubernetes and OpenShift.

          ### Grafana

          [Grafana](https://grafana.com/oss/grafana/) can optionally be installed for custom dashboards and query capabilities.

          ## Configuration

          The `FlowCollector` resource is used to configure the operator and its managed components. A comprehensive documentation is [available here](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/docs/FlowCollector.md), and a full sample file [there](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/config/samples/flows_v1beta2_flowcollector.yaml).

          To edit configuration in cluster, run:

          ```bash
          oc edit flowcollector cluster
          ```

          As it operates cluster-wide on every node, only a single `FlowCollector` is allowed, and it has to be named `cluster`.

          A couple of settings deserve special attention:

          - Sampling (`spec.agent.ebpf.sampling`): a value of `100` means: one flow every 100 is sampled. `1` means all flows are sampled. The lower it is, the more flows you get, and the more accurate are derived metrics, but the higher amount of resources are consumed. By default, sampling is set to 50 (ie. 1:50). Note that more sampled flows also means more storage needed. We recommend to start with default values and refine empirically, to figure out which setting your cluster can manage.

          - Loki (`spec.loki`): configure here how to reach Loki. The default values match the Loki quick install paths mentioned above, but you might have to configure differently if you used another installation method. Make sure to disable it (`spec.loki.enable`) if you don't want to use Loki.

          - Quick filters (`spec.consolePlugin.quickFilters`): configure preset filters to be displayed in the Console plugin. They offer a way to quickly switch from filters to others, such as showing / hiding pods network, or infrastructure network, or application network, etc. They can be tuned to reflect the different workloads running on your cluster. For a list of available filters, [check this page](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/docs/QuickFilters.md).

          - Kafka (`spec.deploymentModel: KAFKA` and `spec.kafka`): when enabled, integrates the flow collection pipeline with Kafka, by splitting ingestion from transformation (kube enrichment, derived metrics, ...). Kafka can provide better scalability, resiliency and high availability ([view more details](https://www.redhat.com/en/topics/integration/what-is-apache-kafka)). Assumes Kafka is already deployed and a topic is created.

          - Exporters (`spec.exporters`) an optional list of exporters to which to send enriched flows. KAFKA and IPFIX exporters are supported. This allows you to define any custom storage or processing that can read from Kafka or use the IPFIX standard.

          - To enable availability zones awareness, set `spec.processor.addZone` to `true`.

          ## Resource considerations

          The following table outlines examples of resource considerations for clusters with certain workload sizes.
          The examples outlined in the table demonstrate scenarios that are tailored to specific workloads. Consider each example only as a baseline from which adjustments can be made to accommodate your workload needs.


          | Resource recommendations                        | Extra small (10 nodes) | Small (25 nodes)       | Medium (65 nodes) **    | Large (120 nodes) **          |
          | ----------------------------------------------- | ---------------------- | ---------------------- | ----------------------- | ----------------------------- |
          | *Worker Node vCPU and memory*                   | 4 vCPUs\| 16GiB mem *  | 16 vCPUs\| 64GiB mem * | 16 vCPUs\| 64GiB mem  * |16 vCPUs\| 64GiB Mem *         |
          | *LokiStack size*                                | `1x.extra-small`       | `1x.small`             | `1x.small`              | `1x.medium`                   |
          | *Network Observability controller memory limit* | 400Mi (default)        | 400Mi (default)        | 400Mi (default)         | 800Mi                         |
          | *eBPF sampling interval*                        | 50 (default)           | 50 (default)           | 50 (default)            | 50 (default)                  |
          | *eBPF memory limit*                             | 800Mi (default)        | 800Mi (default)        | 2000Mi                  | 800Mi (default)               |
          | *FLP memory limit*                              | 800Mi (default)        | 800Mi (default)        | 800Mi (default)         | 800Mi (default)               |
          | *FLP Kafka partitions*                          | N/A                    | 48                     | 48                      | 48                            |
          | *Kafka consumer replicas*                       | N/A                    | 24                     | 24                      | 24                            |
          | *Kafka brokers*                                 | N/A                    | 3 (default)            | 3 (default)             | 3 (default)                   |

          *. Tested with AWS M6i instances.
          **. In addition to this worker and its controller, 3 infra nodes (size `M6i.12xlarge`) and 1 workload node (size `M6i.8xlarge`) were tested.

          ## Further reading

          Please refer to the documentation on GitHub for more information.

          This documentation includes:

          - An [overview](https://github.com/netobserv/network-observability-operator#openshift-console) of the features, with screenshots
          - More information on [configuring metrics](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/docs/Metrics.md).
          - A [performance](https://github.com/netobserv/network-observability-operator#performance-fine-tuning) section, for fine-tuning
          - A [security](https://github.com/netobserv/network-observability-operator#securing-data-and-communications) section
          - An [F.A.Q.](https://github.com/netobserv/network-observability-operator#faq--troubleshooting) section
        displayName: Network Observability
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network observability
        - ebpf
        - ipfix
        - flow tracing
        - flows
        - topology
        - network
        - observability
        links:
        - name: Project page
          url: https://github.com/netobserv/network-observability-operator
        - name: Issue tracker
          url: https://github.com/netobserv/network-observability-operator/issues
        - name: Discussion board
          url: https://github.com/netobserv/network-observability-operator/discussions
        maintainers:
        - email: jpinsonn@redhat.com
          name: Julien Pinsonneau
        - email: jtakvori@redhat.com
          name: Joel Takvorian
        - email: lberetta@redhat.com
          name: Leandro Beretta
        - email: ljira@redhat.com
          name: Luis Jira
        - email: mmahmoud@redhat.com
          name: Mohamed S. Mahmoud
        - email: ocazade@redhat.com
          name: Olivier Cazade
        - email: stlee@redhat.com
          name: Steven Lee
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:d4f8f312c04c4c719c0812545382a4945e0afafd69ee3361e00f557dacbd8458
        - registry.redhat.io/network-observability/network-observability-operator-bundle@sha256:672475bad5c9d33f2c1ed309a6774394774b6b221f6c7d2ad1685228dd69fc52
        - registry.redhat.io/network-observability/network-observability-console-plugin-compat-rhel9@sha256:7f15b6a86320aa1efb6623f1d75eccc0725d689db3a7d2cb13170a48d31e8159
        - registry.redhat.io/network-observability/network-observability-console-plugin-rhel9@sha256:cf85daa46634b0ef40d2935e3f5c0f55ba70762e6423d9ed084b09bb45503c65
        - registry.redhat.io/network-observability/network-observability-ebpf-agent-rhel9@sha256:4ff0cc14bfd0974cdb4cd90b69549c07d6852355bb32b1894f41eb70844132e4
        - registry.redhat.io/network-observability/network-observability-flowlogs-pipeline-rhel9@sha256:7b9aa110a11f695d113914164afde675039078528eff441b6541010272e31da5
        version: 1.10.1
      entries:
      - name: network-observability-operator.v1.10.1
        version: 1.10.1
      - name: network-observability-operator.v1.10.0
        version: 1.10.0
      - name: network-observability-operator.v1.9.3
        version: 1.9.3
      - name: network-observability-operator.v1.9.2
        version: 1.9.2
      - name: network-observability-operator.v1.9.1
        version: 1.9.1
      - name: network-observability-operator.v1.9.0
        version: 1.9.0
      - name: network-observability-operator.v1.8.1
        version: 1.8.1
      - name: network-observability-operator.v1.8.0
        version: 1.8.0
      - name: network-observability-operator.v1.7.0
        version: 1.7.0
      - name: network-observability-operator.v1.6.2
        version: 1.6.2
      - name: network-observability-operator.v1.6.1
        version: 1.6.1
      - name: network-observability-operator.v1.6.0
        version: 1.6.0
      - name: network-observability-operator.v1.5.0
        version: 1.5.0
      - name: network-observability-operator.v1.4.2
        version: 1.4.2
      - name: network-observability-operator.v1.4.1
        version: 1.4.1
      - name: network-observability-operator.v1.4.0
        version: 1.4.0
      - name: network-observability-operator.v1.3.0
        version: 1.3.0
      - name: network-observability-operator.v1.2.0
        version: 1.2.0
      - name: network-observability-operator.v1.1.0-202302110050
        version: 1.1.0
      - name: network-observability-operator.v1.0.0-202301070345
        version: 1.0.0
      name: stable
    - currentCSV: network-observability-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "flows.netobserv.io/v1alpha1",
                "kind": "FlowCollector",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "agent": {
                    "ebpf": {
                      "cacheActiveTimeout": "5s",
                      "cacheMaxFlows": 100000,
                      "excludeInterfaces": [
                        "lo"
                      ],
                      "imagePullPolicy": "IfNotPresent",
                      "interfaces": [],
                      "kafkaBatchSize": 10485760,
                      "logLevel": "info",
                      "resources": {
                        "limits": {
                          "memory": "800Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      },
                      "sampling": 50
                    },
                    "type": "EBPF"
                  },
                  "consolePlugin": {
                    "autoscaler": {
                      "maxReplicas": 3,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 50,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 1,
                      "status": "DISABLED"
                    },
                    "imagePullPolicy": "IfNotPresent",
                    "logLevel": "info",
                    "port": 9001,
                    "portNaming": {
                      "enable": true,
                      "portNames": {
                        "3100": "loki"
                      }
                    },
                    "quickFilters": [
                      {
                        "default": true,
                        "filter": {
                          "dst_namespace!": "openshift-,netobserv",
                          "src_namespace!": "openshift-,netobserv"
                        },
                        "name": "Applications"
                      },
                      {
                        "filter": {
                          "dst_namespace": "openshift-,netobserv",
                          "src_namespace": "openshift-,netobserv"
                        },
                        "name": "Infrastructure"
                      },
                      {
                        "default": true,
                        "filter": {
                          "dst_kind": "Pod",
                          "src_kind": "Pod"
                        },
                        "name": "Pods network"
                      },
                      {
                        "filter": {
                          "dst_kind": "Service"
                        },
                        "name": "Services network"
                      }
                    ],
                    "register": true
                  },
                  "deploymentModel": "DIRECT",
                  "exporters": [],
                  "kafka": {
                    "address": "kafka-cluster-kafka-bootstrap.netobserv",
                    "tls": {
                      "caCert": {
                        "certFile": "ca.crt",
                        "name": "kafka-cluster-cluster-ca-cert",
                        "type": "secret"
                      },
                      "enable": false,
                      "userCert": {
                        "certFile": "user.crt",
                        "certKey": "user.key",
                        "name": "flp-kafka",
                        "type": "secret"
                      }
                    },
                    "topic": "network-flows"
                  },
                  "loki": {
                    "batchSize": 10485760,
                    "batchWait": "1s",
                    "maxBackoff": "5s",
                    "maxRetries": 2,
                    "minBackoff": "1s",
                    "tls": {
                      "caCert": {
                        "certFile": "service-ca.crt",
                        "name": "loki-gateway-ca-bundle",
                        "type": "configmap"
                      },
                      "enable": false,
                      "insecureSkipVerify": false
                    },
                    "url": "http://loki.netobserv.svc:3100/"
                  },
                  "namespace": "netobserv",
                  "processor": {
                    "dropUnusedFields": true,
                    "imagePullPolicy": "IfNotPresent",
                    "kafkaConsumerAutoscaler": null,
                    "kafkaConsumerBatchSize": 10485760,
                    "kafkaConsumerQueueCapacity": 1000,
                    "kafkaConsumerReplicas": 3,
                    "logLevel": "info",
                    "metrics": {
                      "ignoreTags": [
                        "egress",
                        "packets"
                      ],
                      "server": {
                        "port": 9102
                      }
                    },
                    "port": 2055,
                    "profilePort": 6060,
                    "resources": {
                      "limits": {
                        "memory": "800Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "100Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "flows.netobserv.io/v1beta1",
                "kind": "FlowCollector",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "agent": {
                    "ebpf": {
                      "cacheActiveTimeout": "5s",
                      "cacheMaxFlows": 100000,
                      "excludeInterfaces": [
                        "lo"
                      ],
                      "imagePullPolicy": "IfNotPresent",
                      "interfaces": [],
                      "kafkaBatchSize": 10485760,
                      "logLevel": "info",
                      "resources": {
                        "limits": {
                          "memory": "800Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      },
                      "sampling": 50
                    },
                    "type": "EBPF"
                  },
                  "consolePlugin": {
                    "autoscaler": {
                      "maxReplicas": 3,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 50,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 1,
                      "status": "DISABLED"
                    },
                    "imagePullPolicy": "IfNotPresent",
                    "logLevel": "info",
                    "port": 9001,
                    "portNaming": {
                      "enable": true,
                      "portNames": {
                        "3100": "loki"
                      }
                    },
                    "quickFilters": [
                      {
                        "default": true,
                        "filter": {
                          "dst_namespace!": "openshift-,netobserv",
                          "src_namespace!": "openshift-,netobserv"
                        },
                        "name": "Applications"
                      },
                      {
                        "filter": {
                          "dst_namespace": "openshift-,netobserv",
                          "src_namespace": "openshift-,netobserv"
                        },
                        "name": "Infrastructure"
                      },
                      {
                        "default": true,
                        "filter": {
                          "dst_kind": "Pod",
                          "src_kind": "Pod"
                        },
                        "name": "Pods network"
                      },
                      {
                        "filter": {
                          "dst_kind": "Service"
                        },
                        "name": "Services network"
                      }
                    ],
                    "register": true
                  },
                  "deploymentModel": "DIRECT",
                  "exporters": [],
                  "kafka": {
                    "address": "kafka-cluster-kafka-bootstrap.netobserv",
                    "tls": {
                      "caCert": {
                        "certFile": "ca.crt",
                        "name": "kafka-cluster-cluster-ca-cert",
                        "type": "secret"
                      },
                      "enable": false,
                      "userCert": {
                        "certFile": "user.crt",
                        "certKey": "user.key",
                        "name": "flp-kafka",
                        "type": "secret"
                      }
                    },
                    "topic": "network-flows"
                  },
                  "loki": {
                    "batchSize": 10485760,
                    "batchWait": "1s",
                    "maxBackoff": "5s",
                    "maxRetries": 2,
                    "minBackoff": "1s",
                    "statusTls": {
                      "caCert": {
                        "certFile": "service-ca.crt",
                        "name": "loki-ca-bundle",
                        "type": "configmap"
                      },
                      "enable": false,
                      "insecureSkipVerify": false,
                      "userCert": {
                        "certFile": "tls.crt",
                        "certKey": "tls.key",
                        "name": "loki-query-frontend-http",
                        "type": "secret"
                      }
                    },
                    "tls": {
                      "caCert": {
                        "certFile": "service-ca.crt",
                        "name": "loki-gateway-ca-bundle",
                        "type": "configmap"
                      },
                      "enable": false,
                      "insecureSkipVerify": false
                    },
                    "url": "http://loki.netobserv.svc:3100/"
                  },
                  "namespace": "netobserv",
                  "processor": {
                    "conversationEndTimeout": "10s",
                    "conversationHeartbeatInterval": "30s",
                    "conversationTerminatingTimeout": "5s",
                    "dropUnusedFields": true,
                    "imagePullPolicy": "IfNotPresent",
                    "kafkaConsumerAutoscaler": null,
                    "kafkaConsumerBatchSize": 10485760,
                    "kafkaConsumerQueueCapacity": 1000,
                    "kafkaConsumerReplicas": 3,
                    "logLevel": "info",
                    "logTypes": "FLOWS",
                    "metrics": {
                      "disableAlerts": [],
                      "ignoreTags": [
                        "egress",
                        "packets"
                      ],
                      "server": {
                        "port": 9102
                      }
                    },
                    "port": 2055,
                    "profilePort": 6060,
                    "resources": {
                      "limits": {
                        "memory": "800Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "100Mi"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          console.openshift.io/plugins: '["netobserv-plugin"]'
          containerImage: registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:fd943746840cba26996dabb47b1beb3445571fa43cb1b859fb073e4aa114b376
          createdAt: 2023-06-22T09:31:50
          description: Network flows collector and monitoring solution
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-netobserv-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.3
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/netobserv/network-observability-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FlowCollector is the Schema for the flowcollectors API, which
              pilots and configures netflow collection.
            displayName: Flow Collector
            kind: FlowCollector
            name: flowcollectors.flows.netobserv.io
            version: v1alpha1
          - description: FlowCollector is the schema for the network flows collection
              API, which pilots and configures the underlying deployments.
            displayName: Flow Collector
            kind: FlowCollector
            name: flowcollectors.flows.netobserv.io
            version: v1beta1
        description: |
          Network Observability is an OpenShift operator that deploys a monitoring pipeline to collect and enrich network flows that are produced by the Network Observability eBPF agent.

          The operator provides dashboards, metrics, and keeps flows accessible in a queryable log store, Grafana Loki. When a `FlowCollector` instance is created, new views are available in the Console.

          ## Dependencies

          ### Loki

          [Loki](https://grafana.com/oss/loki/), from GrafanaLabs, is the backend that is used to store all collected flows. The NetObserv Operator does not install Loki directly, however we provide some guidance to help you there.

          For normal usage, we recommend two options:

          - Installing the [Loki Operator](https://docs.openshift.com/container-platform/4.11//logging/cluster-logging-loki.html). We have written [a guide](https://github.com/netobserv/documents/blob/main/loki_operator.md) to help you through those steps. Please note that it requires configuring an object storage. Note also that the Loki Operator can also be used for [OpenShift cluster logging](https://docs.openshift.com/container-platform/4.11/logging/cluster-logging.html). If you do so, you should not share the same `LokiStack` for Logging and NetObserv.

          - Installing using [Grafana's official documentation](https://grafana.com/docs/loki/latest/). Here also we wrote a ["distributed Loki" step by step guide](https://github.com/netobserv/documents/blob/main/loki_distributed.md).

          For a quick try that is not suitable for production and not scalable (it deploys a single pod, configures a 1GB storage PVC, with 24 hours of retention), you can simply run the following commands:

          ```
          oc create namespace netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/252bb624cf0425a1b66f59ce68fb939f246ef77b/examples/zero-click-loki/1-storage.yaml) -n netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/252bb624cf0425a1b66f59ce68fb939f246ef77b/examples/zero-click-loki/2-loki.yaml) -n netobserv
          ```

          ### Kafka

          [Apache Kafka](https://kafka.apache.org/) can optionally be used for a more resilient and scalable architecture. You can use for instance [Strimzi](https://strimzi.io/), an operator-based distribution of Kafka for Kubernetes and OpenShift.

          ### Grafana

          [Grafana](https://grafana.com/oss/grafana/) can optionally be installed for custom dashboards and query capabilities.

          ## Configuration

          The `FlowCollector` resource is used to configure the operator and its managed components. A comprehensive documentation is [available here](https://github.com/netobserv/network-observability-operator/blob/1.0.2/docs/FlowCollector.md), and a full sample file [there](https://github.com/netobserv/network-observability-operator/blob/1.0.2/config/samples/flows_v1beta1_flowcollector.yaml).

          To edit configuration in cluster, run:

          ```bash
          oc edit flowcollector cluster
          ```

          As it operates cluster-wide, only a single `FlowCollector` is allowed, and it has to be named `cluster`.

          A couple of settings deserve special attention:

          - Sampling (`spec.agent.ebpf.sampling`): a value of `100` means: one flow every 100 is sampled. `1` means all flows are sampled. The lower it is, the more flows you get, and the more accurate are derived metrics, but the higher amount of resources are consumed. By default, sampling is set to 50 (ie. 1:50). Note that more sampled flows also means more storage needed. We recommend to start with default values and refine empirically, to figure out which setting your cluster can manage.

          - Loki (`spec.loki`): configure here how to reach Loki. The default values match the Loki quick install paths mentioned above, but you may have to configure differently if you used another installation method.

          - Quick filters (`spec.consolePlugin.quickFilters`): configure preset filters to be displayed in the Console plugin. They offer a way to quickly switch from filters to others, such as showing / hiding pods network, or infrastructure network, or application network, etc. They can be tuned to reflect the different workloads running on your cluster. For a list of available filters, [check this page](https://github.com/netobserv/network-observability-operator/blob/1.0.2/docs/QuickFilters.md).

          - Kafka (`spec.deploymentModel: KAFKA` and `spec.kafka`): when enabled, integrates the flow collection pipeline with Kafka, by splitting ingestion from transformation (kube enrichment, derived metrics, ...). Kafka can provide better scalability, resiliency and high availability ([view more details](https://www.redhat.com/en/topics/integration/what-is-apache-kafka)). Assumes Kafka is already deployed and a topic is created.

          - Exporters (`spec.exporters`, _experimental_) an optional list of exporters to which to send enriched flows. Currently only KAFKA is supported. This allows you to define any custom storage or processing that can read from Kafka. This feature is flagged as _experimental_ as it has not been thoroughly or stress tested yet, so use at your own risk.

          ## Further reading

          Please refer to the documentation on GitHub for more information.

          This documentation includes:

          - An [overview](https://github.com/netobserv/network-observability-operator#openshift-console) of the features, with screenshots
          - A [performance](https://github.com/netobserv/network-observability-operator#performance-fine-tuning) section, for fine-tuning
          - A [security](https://github.com/netobserv/network-observability-operator#securing-data-and-communications) section
          - An [F.A.Q.](https://github.com/netobserv/network-observability-operator#faq--troubleshooting) section
        displayName: Network Observability
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network observability
        - ebpf
        - flow tracing
        - flows
        - topology
        - network
        - observability
        links:
        - name: Project page
          url: https://github.com/netobserv/network-observability-operator
        - name: Issue tracker
          url: https://github.com/netobserv/network-observability-operator/issues
        - name: Discussion board
          url: https://github.com/netobserv/network-observability-operator/discussions
        maintainers:
        - email: jpinsonn@redhat.com
          name: Julien Pinsonneau
        - email: jtakvori@redhat.com
          name: Joel Takvorian
        - email: kmeth@redhat.com
          name: Kalman Meth
        - email: mmahmoud@redhat.com
          name: Mohamed S. Mahmoud
        - email: ocazade@redhat.com
          name: Olivier Cazade
        - email: rschaffe@redhat.com
          name: Ronen Schaffer
        - email: stlee@redhat.com
          name: Steven Lee
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/network-observability/network-observability-flowlogs-pipeline-rhel9@sha256:7c7c42fff63e0599bb943a9e9617b43181360d5a5254b27f368010af275cf0c3
        - registry.redhat.io/network-observability/network-observability-operator-bundle@sha256:b03f4e88ab1fed4744356a584d673fb2fdb15de7e1de7786bdd222b853690670
        - registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:fd943746840cba26996dabb47b1beb3445571fa43cb1b859fb073e4aa114b376
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:37b3c9b2eed351d9d1a39c99045bbc7993ccb819f67f7b390deaa34930f45946
        - registry.redhat.io/network-observability/network-observability-console-plugin-rhel9@sha256:880c0812a2cd4b7194f417e31fbdcee951ce76776fa06e33c5c9cd479a854daa
        - registry.redhat.io/network-observability/network-observability-ebpf-agent-rhel9@sha256:e31acc12d8690c339e13b5dd22d33e707701362bdd31086c9b4c0f48cad62cc3
        version: 1.3.0
      entries:
      - name: network-observability-operator.v1.3.0
        version: 1.3.0
      - name: network-observability-operator.v1.2.0
        version: 1.2.0
      - name: network-observability-operator.v1.1.0-202302110050
        version: 1.1.0
      - name: network-observability-operator.v1.0.0-202301070345
        version: 1.0.0
      name: v1.0.x
    defaultChannel: stable
    packageName: netobserv-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: fuse-console
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fuse-console.v7.10.3-0.1655306919.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "replicas": 1,
                  "version": "1.10",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "100Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:37dc38375f5d553ac1d9f20f66ce005ed9495354b81d7915ae3bd7dd6af132f3
          createdAt: "2020-09-14T10:59:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.10.3'
          olm.substitutesFor: fuse-console.v7.10.3-0.1652362834.p
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.10/html/managing_fuse
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:bbfddd7cb4a6cb7a131a0cef174054890fd39956d63e737c92fe8233ad8f98e4
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:37dc38375f5d553ac1d9f20f66ce005ed9495354b81d7915ae3bd7dd6af132f3
        version: 7.10.3+0.1655306919.p
      entries:
      - name: fuse-console.v7.10.3
        version: 7.10.3
      - name: fuse-console.v7.10.3-0.1652362834.p
        version: 7.10.3+0.1652362834.p
      - name: fuse-console.v7.10.3-0.1655306919.p
        version: 7.10.3+0.1655306919.p
      name: 7.10.x
    - currentCSV: fuse-console.v7.11.1-0.1681224695.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.11",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:518b5ace9178e2aafd7b6f247fd41d9392abd1a7bccb4cb53783531820611193
          createdAt: "2022-09-07T14:03:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.11.1'
          olm.substitutesFor: fuse-console.v7.11.1-0.1675972857.p
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.11/html/managing_fuse_on_openshift
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:5a35593357fbf280561a1d4a64ecc0d5c2044409acff3ce6cb490a4a61462a4e
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:518b5ace9178e2aafd7b6f247fd41d9392abd1a7bccb4cb53783531820611193
        version: 7.11.1+0.1681224695.p
      entries:
      - name: fuse-console.v7.11.1
        version: 7.11.1
      - name: fuse-console.v7.11.1-0.1669922044.p
        version: 7.11.1+0.1669922044.p
      - name: fuse-console.v7.11.1-0.1675972857.p
        version: 7.11.1+0.1675972857.p
      - name: fuse-console.v7.11.1-0.1681224695.p
        version: 7.11.1+0.1681224695.p
      name: 7.11.x
    - currentCSV: fuse-console.v7.12.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.12",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:4e6889bf76d323956e0b594db7381e8162fea6b108f53f9e6dd0b38cf3596c8d
          createdAt: "2022-09-07T14:03:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.12.1'
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.12/html/managing_fuse_on_openshift
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:791ac512370af5cde1e089de3def760e7dbce69badc03137051520ce316d63e2
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:4e6889bf76d323956e0b594db7381e8162fea6b108f53f9e6dd0b38cf3596c8d
        version: 7.12.1
      entries:
      - name: fuse-console.v7.12.1
        version: 7.12.1
      name: 7.12.x
    - currentCSV: fuse-console.v7.13.0-0.1766137500.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.13",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:445cfa19464d1417f051989d9ba63dd7970b70806c92b5f936d77cdef80b57d0
          createdAt: "2022-09-07T14:03:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=7.7.0 <7.13.0'
          olm.substitutesFor: fuse-console.v7.13.0
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.13/html/managing_fuse_on_openshift
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:604011e60b1ea342db34ffe9c4ad5c13f6417667cde611f21c2cd1094552aad3
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:445cfa19464d1417f051989d9ba63dd7970b70806c92b5f936d77cdef80b57d0
        version: 7.13.0+0.1766137500.p
      entries:
      - name: fuse-console.v7.13.0-0.1748960166.p
        version: 7.13.0+0.1748960166.p
      - name: fuse-console.v7.13.0-0.1751291353.p
        version: 7.13.0+0.1751291353.p
      - name: fuse-console.v7.13.0-0.1719822976.p
        version: 7.13.0+0.1719822976.p
      - name: fuse-console.v7.13.0-0.1721224332.p
        version: 7.13.0+0.1721224332.p
      - name: fuse-console.v7.13.0-0.1723709432.p
        version: 7.13.0+0.1723709432.p
      - name: fuse-console.v7.13.0-0.1724659726.p
        version: 7.13.0+0.1724659726.p
      - name: fuse-console.v7.13.0-0.1725026290.p
        version: 7.13.0+0.1725026290.p
      - name: fuse-console.v7.13.0-0.1731460809.p
        version: 7.13.0+0.1731460809.p
      - name: fuse-console.v7.13.0-0.1738056254.p
        version: 7.13.0+0.1738056254.p
      - name: fuse-console.v7.13.0-0.1739885034.p
        version: 7.13.0+0.1739885034.p
      - name: fuse-console.v7.13.0-0.1741875974.p
        version: 7.13.0+0.1741875974.p
      - name: fuse-console.v7.13.0-0.1741884704.p
        version: 7.13.0+0.1741884704.p
      - name: fuse-console.v7.13.0-0.1744281421.p
        version: 7.13.0+0.1744281421.p
      - name: fuse-console.v7.13.0-0.1744737026.p
        version: 7.13.0+0.1744737026.p
      - name: fuse-console.v7.13.0
        version: 7.13.0
      - name: fuse-console.v7.13.0-0.1766137500.p
        version: 7.13.0+0.1766137500.p
      - name: fuse-console.v7.13.0-0.1753778626.p
        version: 7.13.0+0.1753778626.p
      - name: fuse-console.v7.13.0-0.1753702606.p
        version: 7.13.0+0.1753702606.p
      - name: fuse-console.v7.13.0-0.1749640277.p
        version: 7.13.0+0.1749640277.p
      - name: fuse-console.v7.13.0-0.1753785080.p
        version: 7.13.0+0.1753785080.p
      - name: fuse-console.v7.13.0-0.1753860418.p
        version: 7.13.0+0.1753860418.p
      - name: fuse-console.v7.13.0-0.1754303647.p
        version: 7.13.0+0.1754303647.p
      - name: fuse-console.v7.13.0-0.1754559584.p
        version: 7.13.0+0.1754559584.p
      - name: fuse-console.v7.13.0-0.1754567932.p
        version: 7.13.0+0.1754567932.p
      - name: fuse-console.v7.13.0-0.1757604404.p
        version: 7.13.0+0.1757604404.p
      - name: fuse-console.v7.13.0-0.1760430814.p
        version: 7.13.0+0.1760430814.p
      - name: fuse-console.v7.13.0-0.1761246177.p
        version: 7.13.0+0.1761246177.p
      - name: fuse-console.v7.13.0-0.1763465880.p
        version: 7.13.0+0.1763465880.p
      - name: fuse-console.v7.13.0-0.1764232107.p
        version: 7.13.0+0.1764232107.p
      - name: fuse-console.v7.13.0-0.1764853444.p
        version: 7.13.0+0.1764853444.p
      - name: fuse-console.v7.12.1
        version: 7.12.1
      name: 7.13.x
    - currentCSV: fuse-console.v7.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "replicas": 1,
                  "version": "1.9",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "100Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:846d57f3fd9f307a98b0169b6733c26299209d99ed189f219c48f36ba771b198
          createdAt: "2020-09-14T10:59:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.9.0'
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.9/html/managing_fuse
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:ddfdf850c9238a6988889e1840efe3175f03dad2489a5651e21cac62ac44e23e
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:846d57f3fd9f307a98b0169b6733c26299209d99ed189f219c48f36ba771b198
        version: 7.9.0
      entries:
      - name: fuse-console.v7.9.0
        version: 7.9.0
      name: 7.9.x
    defaultChannel: 7.13.x
    packageName: fuse-console
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: sandboxed-containers-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sandboxed-containers-operator.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:051bd7f1dad8cc3251430fee32184be8d64077aba78580184cef0255d267bdcf
          createdAt: 2021-06-07-13:38:06
          olm.skipRange: <1.0.2
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/openshift/sandboxed-containers-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Details
          OpenShift sandboxed containers based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift’s Defense-in-Depth strategy. For more information
          [see](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5).

          # Features & benefits
          - **Isolated Developer Environments & Priviliges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as CAP_ADMIN or CAP_BPF. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select preview-1.0 from the list of available Update Channel options.
            This ensures that you install the version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              openshift-sandboxed-containers-operator namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              openshift-sandboxed-containers-operator causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a KataConfig CRD instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/4.8/sandboxed_containers/understanding-sandboxed-containers.html).
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kernel-isolated containers
        links:
        - name: OpenShift sandboxed containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        provider:
          name: Red Hat
          url: https://www.github.com/openshift/sandboxed-containers-operator
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:051bd7f1dad8cc3251430fee32184be8d64077aba78580184cef0255d267bdcf
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:c6c589d5e47ba9564c66c84fc2bc7e5e046dae1d56a3dc99d7343f01e42e4d31
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-operator-bundle@sha256:2808a0397495982b4ea0001ede078803a043d5c9b0285662b08044fe4c11f243
        version: 1.0.2
      deprecation:
        message: |
          The preview-1.0 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.0.2
        version: 1.0.2
      name: preview-1.0
    - currentCSV: sandboxed-containers-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "false"
          containerImage: registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:b1e824e126c579db0f56d04c3d1796d82ed033110c6bc923de66d95b67099611
          createdAt: "2021-10-08T13:20:20.250789Z"
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/openshift/sandboxed-containers-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          OpenShift sandboxed containers based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift’s Defense-in-Depth strategy. For more information
          [see](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5).

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `preview-1.1` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CRD instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/4.8/sandboxed_containers/understanding-sandboxed-containers.html).
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kernel-isolated containers
        links:
        - name: OpenShift sandboxed containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        provider:
          name: Red Hat
          url: https://www.github.com/openshift/sandboxed-containers-operator
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-operator-bundle@sha256:a91cee14f47824ce49759628d06bf4e48276e67dae00b50123d3233d78531720
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:b1e824e126c579db0f56d04c3d1796d82ed033110c6bc923de66d95b67099611
        version: 1.1.0
      deprecation:
        message: |
          The preview-1.1 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.1.0
        version: 1.1.0
      - name: sandboxed-containers-operator.v1.0.2
        version: 1.0.2
      name: preview-1.1
    - currentCSV: sandboxed-containers-operator.v1.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-04T15:20:34Z"
          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.skipRange: '>=1.1.0 <1.11.1'
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/internal-objects: '["peerpods.confidentialcontainers.org","peerpodconfigs.confidentialcontainers.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/sandboxed-containers-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
          - kind: PeerPod
            name: peerpods.confidentialcontainers.org
            version: v1alpha1
        description: |-
          OpenShift sandboxed containers, based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift's Defense-in-Depth strategy. Click [this link](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5) for
          more information.

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `candidate` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CustomResourceDefinition(CRD) instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the [OpenShift sandboxed containers documentation](https://docs.redhat.com/en/documentation/openshift_sandboxed_containers/).
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sandboxed-containers
        - kata
        links:
        - name: Sandboxed Containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        maintainers:
        - email: support@redhat.com'
          name: '''Red Hat'
        maturity: beta
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-rhel9@sha256:408eaaac58d01892aa2087153eda6f451788c02b8b719dca8e710a8916b2e081
        - registry.redhat.io/openshift-sandboxed-containers/osc-must-gather-rhel9@sha256:e4bb201c368afbc80eced2aea0869d152e026253a14349a01e2088f5dac5e214
        - registry.redhat.io/openshift-sandboxed-containers/osc-pccs@sha256:de64fc7b13aaa7e466e825d62207f77e7c63a4f9da98663c3ab06abc45f2334d
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-webhook-rhel9@sha256:4a533f77a4f1415b8eed0d3f5a4ba9d62edd329bf304f26f23b0c1d886dddb71
        - registry.redhat.io/openshift-sandboxed-containers/osc-podvm-builder-rhel9@sha256:9efde29746c28defaabce25c2f0c6da7567ca7dc7fe97845886d7d9e750ea094
        - registry.redhat.io/openshift-sandboxed-containers/osc-tdx-qgs@sha256:86b23461c4eea073f4535a777374a54e934c37ac8c96c6180030f92ebf970524
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:7b2035904ec464fe32c55ace525f573a491b046b5ef7cd5721d7a67cfc8dae25
        - registry.redhat.io/openshift-sandboxed-containers/osc-podvm-payload-rhel9@sha256:7317c2d8c0ac8e542e39d695851c4add301593d2b52af80c77fd4f996efbe2b8
        - registry.redhat.io/openshift-sandboxed-containers/osc-dm-verity-image@sha256:0eb5efd518128ac6df93fec2e5d24c4c5662d5407e016d1f66579cc9ce4529ea
        - registry.redhat.io/openshift-sandboxed-containers/osc-monitor-rhel9@sha256:3c1434943628c01f102615115e89e384b4d46ccf2fd6c0abd5205917afc4d05a
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel9-operator@sha256:b59db913c24f866a700d7662f3fd2de238b4a71550f2f04673ef3ba62ce35aa6
        - registry.redhat.io/openshift-sandboxed-containers/osc-storage-helper@sha256:c9b31c8acd23c6925d6bf193696817f14a52b0f0fcbd8459023b5d69da93482e
        version: 1.11.1
      entries:
      - name: sandboxed-containers-operator.v1.11.1
        version: 1.11.1
      - name: sandboxed-containers-operator.v1.11.0
        version: 1.11.0
      - name: sandboxed-containers-operator.v1.10.3
        version: 1.10.3
      - name: sandboxed-containers-operator.v1.10.2
        version: 1.10.2
      - name: sandboxed-containers-operator.v1.10.1
        version: 1.10.1
      - name: sandboxed-containers-operator.v1.10.0
        version: 1.10.0
      - name: sandboxed-containers-operator.v1.9.0
        version: 1.9.0
      - name: sandboxed-containers-operator.v1.8.1
        version: 1.8.1
      - name: sandboxed-containers-operator.v1.7.0
        version: 1.7.0
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.6.0
        version: 1.6.0
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.3
        version: 1.5.3
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.2
        version: 1.5.2
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.1
        version: 1.5.1
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.0
        version: 1.5.0
      name: stable
    - currentCSV: sandboxed-containers-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "false"
          containerImage: registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:8f30a9129d817c3f4e404d2c43fb47e196d8c8da3badba4c48f65d440a4d7584
          createdAt: "2021-11-22T14:44:50.817336Z"
          olm.skipRange: '>=1.1.0 <1.2.2'
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/sandboxed-containers-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          OpenShift sandboxed containers, based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift's Defense-in-Depth strategy. Click [this link](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5) for
          more information.

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `stable-1.2` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CustomResourceDefinition(CRD) instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/4.9/sandboxed_containers/understanding-sandboxed-containers.html)
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sandboxed-containers
        - kata
        links:
        - name: Sandboxed Containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        maintainers:
        - email: support@redhat.com'
          name: '''Red Hat'
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:ff2bb666c2696fed365df55de78141a02e372044647b8031e6d06e7583478af4
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:8f30a9129d817c3f4e404d2c43fb47e196d8c8da3badba4c48f65d440a4d7584
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:a660f0b54b9139bed9a3aeef3408001c0d50ba60648364a98a09059b466fbcc1
        version: 1.2.2
      deprecation:
        message: |
          The stable-1.2 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.2.2
        version: 1.2.2
      name: stable-1.2
    - currentCSV: sandboxed-containers-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          olm.skipRange: '>=1.1.0 <1.3.3'
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/sandboxed-containers-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          OpenShift sandboxed containers, based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift's Defense-in-Depth strategy. Click [this link](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5) for
          more information.

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `stable-1.3` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CustomResourceDefinition(CRD) instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/latest/sandboxed_containers/understanding-sandboxed-containers.html)
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sandboxed-containers
        - kata
        links:
        - name: Sandboxed Containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        maintainers:
        - email: support@redhat.com'
          name: '''Red Hat'
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:8da62ba1c19c905bc1b87a6233ead475b047a766dc2acb7569149ac5cfe7f0f1
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:5d2b03721043e5221dfb0cf164cf59eba396ba3aae40a56c53aa3496c625eea0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:cb836456974e510eb4bccbffadbc6d99d5f57c36caec54c767a158ffd8a025d5
        version: 1.3.3
      deprecation:
        message: |
          The stable-1.3 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.3.3
        version: 1.3.3
      name: stable-1.3
    defaultChannel: stable
    packageName: sandboxed-containers-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-enterprise
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-enterprise.v1.33.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "my-replica-set"
                },
                "spec": {
                  "credentials": "my-credentials",
                  "members": 3,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "sample-sharded-cluster"
                },
                "spec": {
                  "configServerCount": 3,
                  "credentials": "my-credentials",
                  "mongodsPerShardCount": 3,
                  "mongosCount": 2,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "shardCount": 1,
                  "type": "ShardedCluster",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBMultiCluster",
                "metadata": {
                  "name": "multi-replica-set"
                },
                "spec": {
                  "clusterSpecList": [
                    {
                      "clusterName": "e2e.cluster1.mongokubernetes.com",
                      "members": 2
                    },
                    {
                      "clusterName": "e2e.cluster2.mongokubernetes.com",
                      "members": 1
                    },
                    {
                      "clusterName": "e2e.cluster3.mongokubernetes.com",
                      "members": 2
                    }
                  ],
                  "credentials": "my-credentials",
                  "duplicateServiceObjects": false,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBOpsManager",
                "metadata": {
                  "name": "ops-manager"
                },
                "spec": {
                  "adminCredentials": "ops-manager-admin",
                  "applicationDatabase": {
                    "members": 3,
                    "podSpec": {
                      "cpu": 1
                    }
                  },
                  "configuration": {
                    "mms.fromEmailAddr": "admin@thecompany.com"
                  },
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "version": "6.0.3"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBUser",
                "metadata": {
                  "name": "my-replica-set-x509-user"
                },
                "spec": {
                  "db": "$external",
                  "mongodbResourceRef": {
                    "name": "my-replica-set"
                  },
                  "roles": [
                    {
                      "db": "admin",
                      "name": "dbOwner"
                    }
                  ],
                  "username": "CN=my-replica-set-x509-user,OU=cloud,O=MongoDB,L=New York,ST=New York,C=US"
                },
                "status": {
                  "phase": "Updated"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/mongodb/mongodb-enterprise-operator-ubi@sha256:6d394a5247cc346c4421bd9b37948c0378970dd3f4fc5d6eaac681f4c9655957
          createdAt: "2025-04-15T11:32:47Z"
          description: The MongoDB Enterprise Kubernetes Operator enables easy deploys
            of MongoDB into Kubernetes clusters, using our management, monitoring
            and backup platforms, Ops Manager and Cloud Manager.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.26.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/mongodb/mongodb-enterprise-kubernetes
          support: support@mongodb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MongoDB Deployment
            displayName: MongoDB Deployment
            kind: MongoDB
            name: mongodb.mongodb.com
            version: v1
          - description: MongoDB Multi Deployment
            displayName: MongoDB Multi Deployment
            kind: MongoDBMultiCluster
            name: mongodbmulticluster.mongodb.com
            version: v1
          - description: MongoDB x509 User
            displayName: MongoDB User
            kind: MongoDBUser
            name: mongodbusers.mongodb.com
            version: v1
          - description: MongoDB Ops Manager
            displayName: MongoDB Ops Manager
            kind: MongoDBOpsManager
            name: opsmanagers.mongodb.com
            version: v1
        description: |
          The MongoDB Enterprise Kubernetes Operator enables easy deploys of MongoDB
          into Kubernetes clusters, using our management, monitoring and backup
          platforms, Ops Manager and Cloud Manager.

          ## Before You Start

          To start using the operator you''ll need an account in MongoDB Cloud Manager or
          a MongoDB Ops Manager deployment.

          * [Create a Secret with your OpsManager API key](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-operator-credentials/#procedure)

          * [Create a ConfigMap with your OpsManager project ID and URL](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-project-using-configmap/)

          By installing this integration, you will be able to deploy MongoDB instances
          with a single simple command.

          ## Required Parameters

          * `opsManager` or `cloudManager` - Enter the name of the ConfigMap containing project information
          * `credentials` - Enter the name of the Secret containing your OpsManager credentials
          * `type` - Enter MongoDB Deployment Types ("Standalone", "ReplicaSet", "ShardedCluster"

          ## Supported MongoDB Deployment Types ##

          * Standalone: An instance of mongod that is running as a single server and
          not as part of a replica set, this is, it does not do any kind of
          replication.

          * Replica Set: A replica set in MongoDB is a group of mongod processes that
          maintain the same data set. Replica sets provide redundancy and high
          availability, and are the basis for all production deployments. This section
          introduces replication in MongoDB as well as the components and architecture
          of replica sets. The section also provides tutorials for common tasks
          related to replica sets.

          * Sharded Cluster: The set of nodes comprising a sharded MongoDB deployment.
          A sharded cluster consists of config servers, shards, and one or more mongos
          routing processes. Sharding is a A database architecture that partitions
          data by key ranges and distributes the data among two or more database
          instances. Sharding enables horizontal scaling.

          ## Requirements for deploying MongoDB OpsManager

          * In order to deploy resources of type MongoDB OpsManager, you will need to
          create a secret containing the [credentials](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/plan-om-resource/#om-rsrc-prereqs)
          for the Global Owner user

          ## Security ##

          The operator can enable TLS for all traffic between servers and also between
          clients and servers. Before enabling `security.tls.enabled` to `true` you
          should create your certificates.  or you can leave the operator to create all
          the certificates for you. The operator ability to create certs is been
          deprecated due to Kubernetes API changes.

          For more information, please read the official MongoDB
          Kubernetes Operator  [docs](https://docs.mongodb.com/kubernetes-operator/stable/).
        displayName: MongoDB Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mongodb
        - databases
        - nosql
        links:
        - name: Documentation
          url: https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/index.html
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: stable
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:d3248506b6bd6b01c5973ab7bdac51ee41efa0ec8dd6211be4cc0b76a53a40c1
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7aa00dca44559318356627e88440765576dd6706187044edd1f21d0d0dcb0bf6
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:83af86f8098e3c81b6e0879eabd582592ef6cbb1d6592f5e175c0794b9df2a0e
        - quay.io/mongodb/mongodb-enterprise-operator-ubi@sha256:6d394a5247cc346c4421bd9b37948c0378970dd3f4fc5d6eaac681f4c9655957
        - quay.io/mongodb/mongodb-enterprise-init-appdb-ubi@sha256:be4295843d92ce0f325b8daaeb3a5490c11772d0348cbd9ea35a6126d038b7fb
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:985f770667e6c4c083e0c4bb79a948b83efa0cdc4ed3012b1dbf72fe48b38986
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0b2d01d543d38feddcc9d351e711df33a0a5187b22d95cdb926f6015ee1093bd
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:7d93aee462c60cacc4e5e66729f5131c5c0fa434e6e6400c8e2ccac4bd5e20ba
        - quay.io/mongodb/mongodb-agent-ubi@sha256:411f85772e7a4b2c76e21d26d320b7743612080bf0cb4c7900d9a626cfeea33b
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8445d59d491a6d3890ea9c8b421214bcd0fdcfbc420ed40497a790b79f0bc89e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:ca2aaf57d70a0b9d743a6533c4e1b88324056197453de540d3352e679a3c9c92
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0ee80032abe873b330537d4b64511ee76c5efb512af95287f28ddeffab13bb6d
        - quay.io/mongodb/mongodb-enterprise-server@sha256:67238129df09d33ee4746ff1acb5515d699a29d9f42350eae3f3f69ccb7fbf54
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8d7e5361c2a1604dec3fc671d629806fe6ddc6df524b69a441b86933a4b30093
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7885ab6e88214f9289d8babf5189136dde0dd4c84a15a5481ccd3ef512b2e66f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:a48a4d5c275fd669a27469649fb39ea38c728dbcf9f0a9da4e7cf27a2ce912ed
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c54eeb910855594ed4bf5dcbbbcc14aa6f733e97313896a8381fb4be6aeac583
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d323c1bcd14118cc537ac282996ea5a58756d20b6b73f1eec0efa8710d246077
        - quay.io/mongodb/mongodb-enterprise-server@sha256:19925e1297ab652db59c35f53e7b7c8b2b277f8ecdc4215682961aaf2b3e924e
        - quay.io/mongodb/mongodb-agent-ubi@sha256:bd868284d9dfcb7c5a20e1160218d0172358384229b556c37e0789af0030eb24
        - quay.io/mongodb/mongodb-enterprise-server@sha256:1d418c65d82ccad205b7889be4ba161d3cbfa8b1fb75b21c8fcf02de38fad9ca
        - quay.io/mongodb/mongodb-enterprise-server@sha256:13186ad45a2ba3ab55ed5c2a008eca494ee3937c8519475379476cc8e6f1d055
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa8683500e8d3632c4588bbcdddb4e3186a01f48aefe1b6d95f8860dae8b6c76
        - quay.io/mongodb/mongodb-agent-ubi@sha256:9d1f21df008b14ca721c9ed0ff905af23e1a56b64cd4eddab4df1e8e9b63df8c
        - quay.io/mongodb/mongodb-enterprise-server@sha256:110a560f5a0ebe1fde1b2c20ae5ff5638682229d1c8656b993bdaf7b71eb94bc
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3add8b68bfbaa42596fe5dbbee4623ba5ff1a826b18bb71301525adf574dcb94
        - quay.io/mongodb/mongodb-agent-ubi@sha256:23d962d038888c6aba5540c8f5d81d7e86c4ccfaa07b9e159825d98676609f8e
        - quay.io/mongodb/mongodb-agent-ubi@sha256:85f883076bc8edc516800704e2290c54b1bee14a9a533df84928c7ce1ae807d2
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:c9a211a2c31b97eed3a25a814198547f2aa3470df93d661ca3700b828100d8de
        - quay.io/mongodb/mongodb-agent-ubi@sha256:6d007271faed24bdf06eb64f2b54e5cdc3e11ce71840a7f586dabe2ee02c640e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:83db493ac6158d654d3ce55619f312d53cfbac258e0faf22e9110ca004e174bd
        - quay.io/mongodb/mongodb-agent-ubi@sha256:8c11348eac180f5faa113db2804817302ec78847472e1891b063744adba4aa60
        - quay.io/mongodb/mongodb-agent-ubi@sha256:0f8d102780a9d2ce54b7453f9575d0e24b15f014cd9b74816b1e6a4090b979b2
        - quay.io/mongodb/mongodb-enterprise-server@sha256:584255582db31d0bb1f9593feb3b675d934d8750766fc98d3a1b3340feae4995
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8f8735d377d214f64961381b5b1ed7cd3c306e6354dbc6b45c51134a25444b93
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f1bae6375f846af6fca7faeeff4aedf9fab41a9d45b515ba74e9fd7336408617
        - quay.io/mongodb/mongodb-agent-ubi@sha256:f5f3b14ee6533b21d89d9ed6d4af47dbdee9e071f909dc686dfcdf6742179e46
        - quay.io/mongodb/mongodb-enterprise-server@sha256:ef732e3eea91cc86caf2eabedc0c9115ed235a8d204f33e74bbf090a0b0259fb
        - registry.connect.redhat.com/mongodb/enterprise-operator-bundle@sha256:23c3c8387eb9377b52327d7193f59eeea5831f4050248b3cbb54cbcd9437fc71
        - quay.io/mongodb/mongodb-agent-ubi@sha256:66b49d9dce414dcd657c3550b26f71964b82edfb67a41a3ce8d2386b04ef07e8
        - quay.io/mongodb/mongodb-agent-ubi@sha256:c96ad084edbdc6a6d907f57795fa38f39199b730328dbc64997d56ea50d55dfc
        - quay.io/mongodb/mongodb-agent-ubi@sha256:bd7edb8d0931dd952524f1f0ef99f61b0f69385d9e61efd034a4f45fd315a40b
        - quay.io/mongodb/mongodb-agent-ubi@sha256:766e6cbeec27f995211aa509ff7f118b6945f3e728141f28f9c4ea0dd2297af5
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d876f57ea45582e84748b02459748e440af443a7eb0882585638973409c08f6a
        - quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi@sha256:6ccc8148c266a9037ea744e8d19875146b1c231909f29a8f01c7ce415ca15936
        - quay.io/mongodb/mongodb-agent-ubi@sha256:36c84115c6c645fd7d65d1004d2507ef3592aa1f07176645b1ee8e8b2a4f5f73
        - quay.io/mongodb/mongodb-agent-ubi@sha256:575a43be4c667f3249f46f1fdcc06dd2e68cacc9eed989da0f6edd7e214d51b7
        - quay.io/mongodb/mongodb-enterprise-server@sha256:15e31285c8949a4666f7702df53416b0905d76945a28575a6028a876cc8a6f0f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:b2bd8eb7f8b96adb874468ff1b0ebae2db4ebe490b6e1da4c9a6c5108f813ff5
        - quay.io/mongodb/mongodb-enterprise-database-ubi@sha256:e2ca129f04ad6bf4e0dbb988badb083187725f28bac01bb7080cc80cad9ac316
        - quay.io/mongodb/mongodb-agent-ubi@sha256:97bb6bb5ecd5a802e8a91e69aa10d8bde0f648b106dc5591d49ee94209822daa
        - quay.io/mongodb/mongodb-enterprise-server@sha256:37af0913742b6de339c7e664b30f35dcef04506529e4a09a9bbbdd57643f7149
        - quay.io/mongodb/mongodb-enterprise-server@sha256:b00ac773623e1bf422b47e6d783263d2d08737865abe9abbe106d86d1ea25165
        - quay.io/mongodb/mongodb-enterprise-server@sha256:9a3a6496be0d2d446e6d654eb56386c7726e0cd2d7232f6dcec579923edf0014
        - quay.io/mongodb/mongodb-enterprise-server@sha256:85c1d669c073caf9cbaac815e4c8ea2ca18b71deefa03bf84cd6d8b8ebd53e12
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f2d9a3264a8814f33143b73c56624572fb80afeab184133d3a901713a31c1a87
        - quay.io/mongodb/mongodb-enterprise-server@sha256:523566f44cbb6bbf0cd12b1adae939a883f2254c78dc4b8c9d0098581337b1db
        - quay.io/mongodb/mongodb-enterprise-server@sha256:33a30d11969eb21952681108092fe7f916e25c8e1de43e6a4e40e126025a2bec
        - quay.io/mongodb/mongodb-enterprise-server@sha256:db63f6d93e03a3e644ef6ef4846ed7d24576c688ffb584226c78e1d1fba38878
        - quay.io/mongodb/mongodb-agent-ubi@sha256:5119a1ceeae6440dbe88b89550a7ae18de8e85c9a2059f467ad66adf7ec5d75f
        - quay.io/mongodb/mongodb-agent-ubi@sha256:2395fe9d38a1a9160f7cb2f400b776ea3fc2e72187d23b6dee7fd1e4fb9ca721
        - quay.io/mongodb/mongodb-agent-ubi@sha256:3b57a03dc17a301fda86c8afed1917c10d9b98947680116399c975ece944f5de
        - quay.io/mongodb/mongodb-enterprise-server@sha256:605dcca06a45e5ea127edb9ff262a1c3ddafdab2f30b6d3a18f73bfb8a6acdb0
        - quay.io/mongodb/mongodb-enterprise-server@sha256:dfd4277f0c16ed476ac7de51894739e8c8d13a65ea5024b9a97b3dce0f6c6975
        - quay.io/mongodb/mongodb-agent-ubi@sha256:2dbaaece4dd48087370e43d9bcf6b0a0312f86cb5dfe916e8725323bd5401992
        - quay.io/mongodb/mongodb-enterprise-server@sha256:cd0cdf1b2a58f4c3b514e602cc1d96543410f631825045bbf65bd3fb84113f1f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:172e338a43df01ee5408d8d1e3cb038d2c55e77761c1a2ac6ed37959d1525140
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:2be0c6c89898b18618932b6a6303aeefdde60f48ec37d5c1fca5b8d04a00fd78
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d49417ea85ee1ddb84429552a5aac87a82c2843904d8c0300a43b657b7a49e0e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:5421e00c0935b7a9ced51a11e935773ef5df4d259f3e1b1930fbf2f1b9d46586
        - quay.io/mongodb/mongodb-agent-ubi@sha256:695074fbbfcadf454230b80fbf1094260e631f6108cefb2050473edaee2a217a
        - quay.io/mongodb/mongodb-agent-ubi@sha256:03763de5018fd5fa14843444d24adfc5e387605970b531801ef2d0916233a010
        - quay.io/mongodb/mongodb-agent-ubi@sha256:8467b1c2924a19929fc101ef2ff8d7e53cb0115a0cdc2e371dc0733bd0262395
        - quay.io/mongodb/mongodb-agent-ubi@sha256:d927afa9d3d569d943518f0a684e19afd4adb0875f55df7c904b9dd019589e5e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:fb8397cbcdbf7c33f6ad142492792771127f0d9a8c46388f350b6927405ee590
        - quay.io/mongodb/mongodb-enterprise-server@sha256:35b263861d6ea66b541abc190ce1aaf4d4e36f128e5d8ba2a5e9fa8e25d84446
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:f64d99a77d6a6b9ed10de9a28b1b8b8155414eca2e561f3fdb04bd66914fb3c5
        - quay.io/mongodb/mongodb-enterprise-server@sha256:655896bac9e82de8e9729d59a36c3a31f66235f22b93449260a2ccb7709de084
        - quay.io/mongodb/mongodb-enterprise-server@sha256:df6081325ea2fe01d1b27d0c70005dec8232aaf51a43d91661b722b8a1761263
        - quay.io/mongodb/mongodb-agent-ubi@sha256:442f5d99d02674099525abaa69daa42cec758ce5554198f978927aa5c49006c8
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa300abf739e26350a258f643fa8e57aedacd041055c7b923bd22b21ef554cdb
        - quay.io/mongodb/mongodb-agent-ubi@sha256:b23cfa639c5a4d20381245772dfe396ec915af3a3046df5d9b10016b900431f5
        - quay.io/mongodb/mongodb-agent-ubi@sha256:b175972792aa1be268d5fb3cf3ad0156f4aecffa323e1b473360fc2a3a8d8891
        - quay.io/mongodb/mongodb-agent-ubi@sha256:ee150e969c0bb786969c7e0a45fb1812766b752aee539072e28648817826433b
        - quay.io/mongodb/mongodb-agent-ubi@sha256:31cfefd2660da3efe1b6d63e39090464c28ae006d6ed1dffb2189a09183b9c61
        - quay.io/mongodb/mongodb-agent-ubi@sha256:6ebe232ed0ea87045792e578ecb11dd46411333ad0ea61383c247704b4a0efe9
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:2127d7f2684ae36b123422f55237055aad02fdb71c4c21a5b8f0b0f6d8baedfc
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:dfec259209995bb040a1eff1fcafb1d6c3fdd145129f12c04a56ec74834b80a6
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c07f20f8e7a5479e43cac7c74fc9f18cb4d4a1bd8b6b46f7dcc6f7ec7525fe28
        - quay.io/mongodb/mongodb-agent-ubi@sha256:7144ac5e5038e92a6d142bf39eba46554c1b5fafeb8ea59f0390896a0d35ed17
        - quay.io/mongodb/mongodb-agent-ubi@sha256:c03e4a7663206f54c5ef39974502816f66d8d64936c19849f0337ea4547e614e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c752a7f0726d21d55f204a359b85fa29cd727a5fe571b37289ae3ea52d6206b0
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0fde236fe26d5b20210d6f246aadacd7845874712def516cbe2eec11d79d5181
        - quay.io/mongodb/mongodb-enterprise-server@sha256:11ab324698f919f84a5dab5a964d93fe63f98a48146bb3b86974cba7606d30ec
        - quay.io/mongodb/mongodb-agent-ubi@sha256:38175af108178d89e4d3359ee2754534e5e9b24e843f12711fc14fe1dead516a
        - quay.io/mongodb/mongodb-enterprise-init-database-ubi@sha256:ab12a330e6b40735ee516168073887a4f37b58694bd10026a451eb9972e55500
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d21c65780cadc9d8668d2c28935d492625d6993f13ba562722200a819281cbcc
        version: 1.33.0
      entries:
      - name: mongodb-enterprise.v1.33.0
        version: 1.33.0
      - name: mongodb-enterprise.v1.32.0
        version: 1.32.0
      - name: mongodb-enterprise.v1.31.0
        version: 1.31.0
      - name: mongodb-enterprise.v1.30.0
        version: 1.30.0
      - name: mongodb-enterprise.v1.29.0
        version: 1.29.0
      - name: mongodb-enterprise.v1.28.0
        version: 1.28.0
      - name: mongodb-enterprise.v1.27.0
        version: 1.27.0
      - name: mongodb-enterprise.v1.26.0
        version: 1.26.0
      - name: mongodb-enterprise.v1.25.0
        version: 1.25.0
      - name: mongodb-enterprise.v1.24.0
        version: 1.24.0
      - name: mongodb-enterprise.v1.23.0
        version: 1.23.0
      - name: mongodb-enterprise.v1.22.0
        version: 1.22.0
      - name: mongodb-enterprise.v1.21.0
        version: 1.21.0
      - name: mongodb-enterprise.v1.20.1
        version: 1.20.1
      - name: mongodb-enterprise.v1.19.1
        version: 1.19.1
      - name: mongodb-enterprise.v1.18.0
        version: 1.18.0
      - name: mongodb-enterprise.v1.17.2
        version: 1.17.2
      - name: mongodb-enterprise.v1.17.1
        version: 1.17.1
      - name: mongodb-enterprise.v1.17.0
        version: 1.17.0
      - name: mongodb-enterprise.v1.16.4
        version: 1.16.4
      - name: mongodb-enterprise.v1.16.3
        version: 1.16.3
      - name: mongodb-enterprise.v1.16.2
        version: 1.16.2
      - name: mongodb-enterprise.v1.16.1
        version: 1.16.1
      name: stable
    defaultChannel: stable
    packageName: mongodb-enterprise
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio
      provider-url: ""
    name: apicurio-api-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-api-controller.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry3",
                "metadata": {
                  "name": "example-registry-with-studio"
                },
                "spec": {
                  "app": {
                    "host": "example-registry-with-studio-app.apps.yourcluster.example"
                  },
                  "studioUi": {
                    "enabled": true,
                    "host": "example-registry-with-studio-studio-ui.apps.yourcluster.example"
                  },
                  "ui": {
                    "host": "example-registry-with-studio-ui.apps.yourcluster.example"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurio-registry-operator:3.0.5
          createdAt: "2024-12-03T11:30:52Z"
          description: Deploy and manage Apicurio API Controller on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/Apicurio/apicurio-registry/tree/main/operator
          support: Apicurio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry3 represents an instance of Apicurio API
              Controller.
            displayName: Apicurio Registry 3
            kind: ApicurioRegistry3
            name: apicurioregistries3.registry.apicur.io
            version: v1
        description: |
          ## Apicurio API Controller

          Apicurio API Controller consists of 2 components:
           - Apicurio Registry 3
           - Apicurio Studio

          Storage options: PostgreSQL, Kafka, MySQL, SQL Server, in-memory.

          ## Apicurio API Controller Operator

          Provides a quick and easy way to deploy and manage Apicurio API Controller on Kubernetes.

          **Features**
          - Supports installation and configuration of Apicurio API Controller
          - Perform a rolling upgrade of Apicurio API Controller

          ## Prerequisites

          This operator does not deploy storage for Apicurio API Controller. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Apicurio API Controller and Apicurio API Controller Operator are licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry/blob/main/LICENSE)
        displayName: Apicurio API Controller
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - API Management
        - Apicurio Registry
        - Apicurio Studio
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Apicurio
        relatedImages:
        - quay.io/apicurio/apicurio-registry-operator:3.0.5
        - quay.io/community-operator-pipeline-prod/apicurio-api-controller@sha256:c783cd6db1ae5a6152848f5e4258e89b37077a177199be905d0cfe451a48e5ef
        version: 0.0.1
      entries:
      - name: apicurio-api-controller.v0.0.1
        version: 0.0.1
      name: 0.x
    defaultChannel: 0.x
    packageName: apicurio-api-controller
    provider:
      name: Apicurio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-custom-metrics-autoscaler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: custom-metrics-autoscaler.v2.17.2-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eventing.keda.sh/v1alpha1",
                "kind": "CloudEventSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "keda",
                    "app.kubernetes.io/instance": "cloudeventsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cloudeventsource",
                    "app.kubernetes.io/part-of": "keda"
                  },
                  "name": "cloudeventsource-sample"
                },
                "spec": {
                  "clusterName": "cluster-sample",
                  "destination": {
                    "http": {
                      "uri": "http://foo.bar"
                    }
                  }
                }
              },
              {
                "apiVersion": "eventing.keda.sh/v1alpha1",
                "kind": "ClusterCloudEventSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "keda",
                    "app.kubernetes.io/instance": "clustercloudeventsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "clustercloudeventsource",
                    "app.kubernetes.io/part-of": "keda"
                  },
                  "name": "clustercloudeventsource-sample"
                },
                "spec": {
                  "clusterName": "clustercluster-sample",
                  "destination": {
                    "http": {
                      "uri": "http://foo.bar"
                    }
                  }
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ClusterTriggerAuthentication",
                "metadata": {
                  "name": "example-clustertriggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "example-secret-parameter"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "KedaController",
                "metadata": {
                  "name": "keda",
                  "namespace": "openshift-keda"
                },
                "spec": {
                  "admissionWebhooks": {
                    "logEncoder": "console",
                    "logLevel": "info"
                  },
                  "metricsServer": {
                    "logLevel": "0"
                  },
                  "operator": {
                    "logEncoder": "console",
                    "logLevel": "info"
                  },
                  "serviceAccount": null,
                  "watchNamespace": ""
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledJob",
                "metadata": {
                  "name": "scaledjob-sample"
                },
                "spec": {
                  "failedJobsHistoryLimit": 5,
                  "jobTargetRef": {
                    "activeDeadlineSeconds": 600,
                    "backoffLimit": 6,
                    "completions": 1,
                    "parallelism": 1,
                    "template": null
                  },
                  "maxReplicaCount": 100,
                  "pollingInterval": 30,
                  "successfulJobsHistoryLimit": 5,
                  "triggers": [
                    {
                      "metadata": {
                        "property": "example-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledObject",
                "metadata": {
                  "name": "example-scaledobject"
                },
                "spec": {
                  "cooldownPeriod": 300,
                  "maxReplicaCount": 100,
                  "minReplicaCount": 0,
                  "pollingInterval": 30,
                  "scaleTargetRef": {
                    "name": "example-deployment"
                  },
                  "triggers": [
                    {
                      "metadata": {
                        "property": "example-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "TriggerAuthentication",
                "metadata": {
                  "name": "example-triggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "example-secret-parameter"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Cloud Provider
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9-operator@sha256:f281ddee3c9d29e2b55afc734fd238d443c21b4b4824e35b50aaf31cf126b819
          createdAt: 07 Oct 2025, 19:50
          description: Custom Metrics Autoscaler Operator, an event-driven autoscaler
            based upon KEDA
          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: "true"
          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.skipRange: '>=2.7.1 <2.17.2-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-keda
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/custom-metrics-autoscaler-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CloudEventSource
            name: cloudeventsources.eventing.keda.sh
            version: v1alpha1
          - kind: ClusterCloudEventSource
            name: clustercloudeventsources.eventing.keda.sh
            version: v1alpha1
          - description: Describes cluster wide authentication parameters
            displayName: ClusterTriggerAuthentication
            kind: ClusterTriggerAuthentication
            name: clustertriggerauthentications.keda.sh
            version: v1alpha1
          - description: |
              Represents an installation of a particular version of KEDA Controller.
            displayName: KedaController
            kind: KedaController
            name: kedacontrollers.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your jobs and what the triggers
            displayName: ScaledJob
            kind: ScaledJob
            name: scaledjobs.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your application and what the
              triggers are
            displayName: ScaledObject
            kind: ScaledObject
            name: scaledobjects.keda.sh
            version: v1alpha1
          - description: Describes authentication parameters
            displayName: TriggerAuthentication
            kind: TriggerAuthentication
            name: triggerauthentications.keda.sh
            version: v1alpha1
        description: |
          ## About the managed application
          Custom Metrics Autoscaler for OpenShift is an event driven autoscaler based upon KEDA.  Custom Metrics Autoscaler can monitor event sources like Kafka, RabbitMQ, or cloud event sources and feed the metrics from those sources into the Kubernetes horizontal pod autoscaler.  With Custom Metrics Autoscaler, you can have event driven and serverless scale of deployments within any Kubernetes cluster.
          ## About this Operator
          The Custom Metrics Autoscaler Operator deploys and manages installation of KEDA Controller in the cluster. Install this operator and follow installation instructions on how to install Custom Metrics Autoscaler in your cluster.

          ## Prerequisites for enabling this Operator
          ## How to install Custom Metrics Autoscaler in the cluster
          The installation of Custom Metrics Autoscaler is triggered by the creation of `KedaController` resource. Please refer to the [KedaController Spec](https://github.com/openshift/custom-metrics-autoscaler-operator/blob/main/README.md#the-kedacontroller-custom-resource) for more details on available options.

          Only a resource named `keda` in the namespace where the operator is installed will trigger the installation, reconfiguration or removal of the KEDA Controller resource.

          There should be only one KEDA Controller in the cluster.

          The operator will behave in this manner whether it is installed with the `AllNamespaces` or `OwnNamespace` install mode. While the operator more closely matches the `OwnNamespace` semantics, `AllNamespaces` is a supported installation mode to allow it to be installed to namespaces with existing `OperatorGroups` which require that installation mode, such as `openshift-operators`.
        displayName: Custom Metrics Autoscaler
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - keda
        - scaling
        - event
        links:
        - name: Custom Metrics Autoscaler Documentation
          url: https://docs.openshift.com/container-platform/latest/nodes/cma/nodes-cma-autoscaling-custom.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9-operator@sha256:f281ddee3c9d29e2b55afc734fd238d443c21b4b4824e35b50aaf31cf126b819
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9@sha256:3216b5b55e1b068d31154cb806fcaf8233663af209d355975b7374157d265f4e
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-operator-bundle@sha256:3682a40a5309c9eb7507082a55164679e3e47e40b5368ffba7727361600ff02b
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-adapter-rhel9@sha256:b9401d749596bbf112e62e6a59b991bf1e156e70bb7e8bb8f81f274a4ad01986
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-admission-webhooks-rhel9@sha256:a562d423b2b1d7b8b12d5497c9d665dcb530c0ec7a63f47122fef9ca4be17826
        version: 2.17.2-2
      entries:
      - name: custom-metrics-autoscaler.v2.17.2-2
        version: 2.17.2-2
      - name: custom-metrics-autoscaler.v2.17.2-1
        version: 2.17.2-1
      - name: custom-metrics-autoscaler.v2.15.1-6
        version: 2.15.1-6
      - name: custom-metrics-autoscaler.v2.15.1-4
        version: 2.15.1-4
      - name: custom-metrics-autoscaler.v2.14.1-467
        version: 2.14.1-467
      - name: custom-metrics-autoscaler.v2.14.1-454
        version: 2.14.1-454
      - name: custom-metrics-autoscaler.v2.13.1-427
        version: 2.13.1-427
      - name: custom-metrics-autoscaler.v2.12.1-394
        version: 2.12.1-394
      - name: custom-metrics-autoscaler.v2.11.2-322
        version: 2.11.2-322
      - name: custom-metrics-autoscaler.v2.11.2-311
        version: 2.11.2-311
      - name: custom-metrics-autoscaler.v2.10.1-267
        version: 2.10.1-267
      name: stable
    defaultChannel: stable
    packageName: openshift-custom-metrics-autoscaler-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Fujitsu
      provider-url: https://www.postgresql.fastware.com/
    name: fujitsu-enterprise-postgres-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fujitsu-enterprise-postgres-operator.v5.1.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPAction",
                "metadata": {
                  "name": "new-fep-action"
                },
                "spec": {
                  "fepAction": {
                    "args": [
                      "new-fep-sts-0",
                      "new-fep-sts-1"
                    ],
                    "type": "reload"
                  },
                  "sysExtraEvent": true,
                  "sysExtraLogging": false,
                  "targetClusterName": "new-fep"
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPExporter",
                "metadata": {
                  "name": "new-fep-exporter"
                },
                "spec": {
                  "fepExporter": {
                    "exporterLogLevel": "error",
                    "fepClusterList": [
                      "new-fep1"
                    ],
                    "image": {
                      "pullPolicy": "IfNotPresent"
                    },
                    "mcSpec": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "700Mi"
                      },
                      "requests": {
                        "cpu": "200m",
                        "memory": "512Mi"
                      }
                    },
                    "restartRequired": false,
                    "sysExtraEvent": true,
                    "sysExtraLogging": false,
                    "userCustomQueries": "usr_example:\n  query: \"SELECT EXTRACT(EPOCH FROM (now() - pg_last_xact_replay_timestamp())) as lag\"\n  master: true\n  metrics:\n    - lag:\n        usage: \"GAUGE\"\n        description: \"Replication lag behind master in seconds\""
                  }
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPLogging",
                "metadata": {
                  "name": "new-fep-logging"
                },
                "spec": {
                  "fepLogging": {
                    "image": {
                      "pullPolicy": "IfNotPresent"
                    },
                    "mcSpec": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "700Mi"
                      },
                      "requests": {
                        "cpu": "200m",
                        "memory": "512Mi"
                      }
                    },
                    "restartRequired": false,
                    "sysExtraEvent": true,
                    "sysExtraLogging": false
                  }
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPPgpool2",
                "metadata": {
                  "name": "new-fep-pgpool2"
                },
                "spec": {
                  "count": 2,
                  "customhba": "local   all         all                               trust\nhost    all         all         127.0.0.1/32          trust\nhost    all         all         ::1/128               trust\n",
                  "customlogsize": "128Mi",
                  "customparams": "listen_addresses = '*'\npcp_listen_addresses = '*'\nnum_init_children = 32\nreserved_connections = 0\nenable_pool_hba = off\nallow_clear_text_frontend_auth = off\nauthentication_timeout = 80\nbackend_weight0 = 1\nbackend_weight1 = 1\nbackend_flag0 = 'ALWAYS_PRIMARY'\nbackend_flag1 = 'DISALLOW_TO_FAILOVER'\nconnection_cache = on\nmax_pool = 4\nlisten_backlog_multiplier = 2\nserialize_accept = off\nchild_life_time = 300\nclient_idle_limit = 0\nchild_max_connections = 0\nconnection_life_time = 0\nreset_query_list = 'ABORT; DISCARD ALL'\nclient_min_messages = info\nlog_min_messages = debug1\nlog_statement = on\nlog_per_node_statement = on\nlog_client_messages = on\nlog_hostname = on\nlog_connections = on\nlog_line_prefix = '%t: pid %p: '\nload_balance_mode = on\nignore_leading_white_space = on\nwhite_function_list = ''\nblack_function_list = 'currval,lastval,nextval,setval'\nblack_query_pattern_list = ''\ndatabase_redirect_preference_list = ''\napp_name_redirect_preference_list = ''\nallow_sql_comments = off\ndisable_load_balance_on_write = 'transaction'\nstatement_level_load_balance = on\nsr_check_period = 0\nsr_check_user = 'postgres'\ndelay_threshold = 0\nlog_standby_delay = 'none'\nssl = on\nssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL'\nssl_prefer_server_ciphers = off\nssl_ecdh_curve = 'prime256v1'\nssl_dh_params_file = ''\nrelcache_expire = 0\nrelcache_size = 256\ncheck_temp_table = catalog\ncheck_unlogged_table = on\nenable_shared_relcache = off\nrelcache_query_target = primary\nwd_port0 = 9000\nfailover_on_backend_error = off\n",
                  "custompcp": "none",
                  "customsslcacert": "none",
                  "customsslcert": "-----BEGIN CERTIFICATE-----\nMIIDTzCCAjegAwIBAgIUYssQ8I74US5g+1+Z7CHuaDgkZnEwDQYJKoZIhvcNAQEL\nBQAwNzEQMA4GA1UECgwHRnVqaXRzdTEjMCEGA1UEAwwaRkVQIFJvb3QgQ0EgZm9y\nIEt1YmVybmV0ZXMwHhcNMjEwMjA2MDM1MjI4WhcNMzEwMjA0MDM1MjI4WjA3MRAw\nDgYDVQQKDAdGdWppdHN1MSMwIQYDVQQDDBpGRVAgUm9vdCBDQSBmb3IgS3ViZXJu\nZXRlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMs97gUF0xkUzCgL\n7MiiDju9ySr/ziwjvcYU7jA9ML+SLmftMs3HtcYbAmSntqI+MDBSR/FAJTOoytuT\npV+mCFcGj2YAjDpliHPeNcUpbryy4YMChF3+MovkIwGCksxo5rhiWhGmoBYpA48P\n4Xe8SPlzqMzhFvNeKzyiUhvjutS2Y1Ss38lsTaurFPx64vQ2PaC54XzdwMptXtpb\ntYmWSzCpJWwxZ6lF3vitdA2w0tnBWNyctAd0+RIM/fvArxiIqseAux9t0uogm5to\nlRIhvekuxOpXBPEqtIYQ4j9XUW2JH8vUDnzPkPvjrq+A3Ug8OyyfGVrW7+VYXozu\nc4aP7P0CAwEAAaNTMFEwHQYDVR0OBBYEFBzCutQ7S74WEhS5V2sNEJBGyLpmMB8G\nA1UdIwQYMBaAFBzCutQ7S74WEhS5V2sNEJBGyLpmMA8GA1UdEwEB/wQFMAMBAf8w\nDQYJKoZIhvcNAQELBQADggEBAMDwD85RAaWEBptFgLzKw+9xEUy1vcZaonAuA1qc\nT342XTueyAugxkC11HwdCGgGS34VyctfMGqj4AW6pA2ez4tLrbOps4DmV4sw8uBL\n8pgRDgfly3ob9FEg2wa0hmrwX9jH5Bt4vySUE2785uPAqaspT2UNtTBxS85BUi1T\nsKId2Rtil6an281Z81wyWVI6Jm2D4MG0mbsiGcTPlCtdg/UljvDYymXlAvd4vNhl\nk9hDa13TgDqJKgKdTIcmZoNQdpEVgFcO0h9AEUy5AuLqxHq60dLfZ6ESGPlMI7Lm\ni4PzYbCnBmOe+7TnHcPSyrnehs66Ik+oifRd82eYS7vKjFw=\n-----END CERTIFICATE-----",
                  "customsslkey": "none",
                  "fepclustername": "new-fep",
                  "imagePullPolicy": "IfNotPresent",
                  "limits": {
                    "cpu": "400m",
                    "memory": "512Mi"
                  },
                  "requests": {
                    "cpu": "200m",
                    "memory": "256Mi"
                  },
                  "serviceport": 9999,
                  "statusport": 9898
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPRestore",
                "metadata": {
                  "name": "new-fep-restore"
                },
                "spec": {
                  "fromFEPcluster": "new-fep",
                  "imagePullPolicy": "IfNotPresent",
                  "mcSpec": {
                    "limits": {
                      "cpu": "200m",
                      "memory": "300Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "200Mi"
                    }
                  },
                  "restoretype": "latest",
                  "sysExtraEvent": true,
                  "sysExtraLogging": false,
                  "toFEPcluster": "new-fep-2"
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v2",
                "kind": "FEPCluster",
                "metadata": {
                  "name": "new-fep"
                },
                "spec": {
                  "fep": {
                    "customAnnotations": {
                      "allDeployments": {}
                    },
                    "forceSsl": true,
                    "image": {
                      "pullPolicy": "IfNotPresent"
                    },
                    "instances": 1,
                    "mcSpec": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "700Mi"
                      },
                      "requests": {
                        "cpu": "200m",
                        "memory": "512Mi"
                      }
                    },
                    "podAntiAffinity": false,
                    "podDisruptionBudget": false,
                    "servicePort": 27500,
                    "syncMode": "off",
                    "sysExtraEvent": true,
                    "sysExtraLogging": false,
                    "usePodName": true
                  },
                  "fepChildCrVal": {
                    "backup": {
                      "image": {
                        "pullPolicy": "IfNotPresent"
                      },
                      "mcSpec": {
                        "limits": {
                          "cpu": 0.2,
                          "memory": "300Mi"
                        },
                        "requests": {
                          "cpu": 0.1,
                          "memory": "200Mi"
                        }
                      },
                      "pgbackrestParams": "# if log volume is not defined, log_directory should be\n# changed to '/database/userdata/data/log'\n[global]\nrepo1-retention-full=7\nrepo1-retention-full-type=time\nlog-path=/database/log/backup\n",
                      "postScript": " ",
                      "preScript": " ",
                      "schedule": {
                        "num": 2
                      },
                      "schedule1": {
                        "schedule": "15 0 * * 0",
                        "type": "full"
                      },
                      "schedule2": {
                        "schedule": "15 0 * * 1-6",
                        "type": "incr"
                      },
                      "schedule3": {
                        "schedule": " ",
                        "type": " "
                      },
                      "schedule4": {
                        "schedule": " ",
                        "type": " "
                      },
                      "schedule5": {
                        "schedule": " ",
                        "type": " "
                      }
                    },
                    "customPgAudit": "# define pg audit custom params here to override defaults.\n# if log volume is not defined, log_directory should be\n# changed to '/database/userdata/data/log'\n[output]\nlogger = 'auditlog'\nlog_directory = '/database/log/audit'\nlog_truncate_on_rotation = on\nlog_filename = 'pgaudit-%a.log'\nlog_rotation_age = 1d\nlog_rotation_size = 0\n[rule]\n",
                    "customPgHba": "# define pg_hba custom rules here to be merged with default rules.\n# TYPE     DATABASE        USER        ADDRESS        METHOD\n",
                    "customPgParams": "# define custom postgresql.conf parameters below to override defaults.\n# Current values are as per default FEP deployment\n# If you add a library to shared_preload_libraries, add it after the default value.\n# fsep_operator_security is available in FEP15 and later container images.\nshared_preload_libraries='pgx_datamasking,pg_prewarm,pg_stat_statements,fsep_operator_security'\nsession_preload_libraries='pg_prewarm'\nmax_prepared_transactions = 100\nmax_worker_processes = 30\nmax_connections = 100\nwork_mem = 1MB\nmaintenance_work_mem = 12MB\nshared_buffers = 128MB\neffective_cache_size = 384MB\ncheckpoint_completion_target = 0.8\n# tcp parameters\ntcp_keepalives_idle = 30\ntcp_keepalives_interval = 10\ntcp_keepalives_count = 3\n# logging parameters in default fep installation\n# if log volume is not defined, log_directory should be\n# changed to '/database/userdata/data/log'\nlog_directory = '/database/log'\nlog_filename = 'logfile-%a.log'\nlog_file_mode = 0600\nlog_truncate_on_rotation = on\nlog_rotation_age = 1d\nlog_rotation_size = 0\nlog_checkpoints = on\nlog_line_prefix = '%e %t [%p]: [%l-1] user=%u,db=%d,app=%a,client=%h'\nlog_lock_waits = on\nlog_autovacuum_min_duration = 60s\nlogging_collector = on\npgaudit.config_file='/opt/app-root/src/pgaudit-cfg/pgaudit.conf'\nlog_replication_commands = on\nlog_min_messages = WARNING\nlog_destination = csvlog\n# wal_archive parameters in default fep installation\narchive_mode = on\narchive_command = 'pgbackrest --stanza=backupstanza --config=/database/userdata/pgbackrest.conf archive-push %p'\nwal_level = replica\nmax_wal_senders = 12\nwal_keep_segments = 64\ntrack_activities = on\ntrack_counts = on\npassword_encryption = 'md5'\n",
                    "storage": {
                      "archivewalVol": {
                        "size": "1Gi"
                      },
                      "backupVol": {
                        "size": "2Gi"
                      },
                      "dataVol": {
                        "size": "2Gi"
                      },
                      "logVol": {
                        "size": "1Gi"
                      },
                      "tablespaceVol": {
                        "size": "512Mi"
                      },
                      "walVol": {
                        "size": "1200Mi"
                      }
                    },
                    "sysUsers": {
                      "pgRewindPassword": "rewind_password",
                      "pgRewindUser": "rewind_user",
                      "pgdb": "mydb",
                      "pgpassword": "mydbpassword",
                      "pgreplpassword": "repluserpwd",
                      "pgrepluser": "repluser",
                      "pguser": "mydbuser",
                      "tdepassphrase": "tde-passphrase"
                    },
                    "systemCertificates": {
                      "cacrt": "-----BEGIN CERTIFICATE-----\nMIIDTzCCAjegAwIBAgIUYssQ8I74US5g+1+Z7CHuaDgkZnEwDQYJKoZIhvcNAQEL\nBQAwNzEQMA4GA1UECgwHRnVqaXRzdTEjMCEGA1UEAwwaRkVQIFJvb3QgQ0EgZm9y\nIEt1YmVybmV0ZXMwHhcNMjEwMjA2MDM1MjI4WhcNMzEwMjA0MDM1MjI4WjA3MRAw\nDgYDVQQKDAdGdWppdHN1MSMwIQYDVQQDDBpGRVAgUm9vdCBDQSBmb3IgS3ViZXJu\nZXRlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMs97gUF0xkUzCgL\n7MiiDju9ySr/ziwjvcYU7jA9ML+SLmftMs3HtcYbAmSntqI+MDBSR/FAJTOoytuT\npV+mCFcGj2YAjDpliHPeNcUpbryy4YMChF3+MovkIwGCksxo5rhiWhGmoBYpA48P\n4Xe8SPlzqMzhFvNeKzyiUhvjutS2Y1Ss38lsTaurFPx64vQ2PaC54XzdwMptXtpb\ntYmWSzCpJWwxZ6lF3vitdA2w0tnBWNyctAd0+RIM/fvArxiIqseAux9t0uogm5to\nlRIhvekuxOpXBPEqtIYQ4j9XUW2JH8vUDnzPkPvjrq+A3Ug8OyyfGVrW7+VYXozu\nc4aP7P0CAwEAAaNTMFEwHQYDVR0OBBYEFBzCutQ7S74WEhS5V2sNEJBGyLpmMB8G\nA1UdIwQYMBaAFBzCutQ7S74WEhS5V2sNEJBGyLpmMA8GA1UdEwEB/wQFMAMBAf8w\nDQYJKoZIhvcNAQELBQADggEBAMDwD85RAaWEBptFgLzKw+9xEUy1vcZaonAuA1qc\nT342XTueyAugxkC11HwdCGgGS34VyctfMGqj4AW6pA2ez4tLrbOps4DmV4sw8uBL\n8pgRDgfly3ob9FEg2wa0hmrwX9jH5Bt4vySUE2785uPAqaspT2UNtTBxS85BUi1T\nsKId2Rtil6an281Z81wyWVI6Jm2D4MG0mbsiGcTPlCtdg/UljvDYymXlAvd4vNhl\nk9hDa13TgDqJKgKdTIcmZoNQdpEVgFcO0h9AEUy5AuLqxHq60dLfZ6ESGPlMI7Lm\ni4PzYbCnBmOe+7TnHcPSyrnehs66Ik+oifRd82eYS7vKjFw=\n-----END CERTIFICATE-----",
                      "crt": "-----BEGIN CERTIFICATE-----\nMIIDUTCCAjmgAwIBAgIRAMocW3qMoHrD6qRvMPppMkMwDQYJKoZIhvcNAQELBQAw\nNzEQMA4GA1UECgwHRnVqaXRzdTEjMCEGA1UEAwwaRkVQIFJvb3QgQ0EgZm9yIEt1\nYmVybmV0ZXMwHhcNMjEwMjA2MDQzMjM2WhcNMjYwMjA1MDQzMjM2WjA/MRAwDgYD\nVQQKEwdGdWppdHN1MSswKQYDVQQDEyJGVUpJVFNVIEVudGVycHJpc2UgUG9zdGdy\nZXMgU2VydmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4AI33yvH\nZws+jta6qpV6wzJqF8odIfTIpCfbrVcUUtLFKJ1I2e4SceTKi6O3C/I1XuvWlpng\n5IO65+fQQLO06z1/AuQT78YUn/Wlm9x1aHVsv4ANB5JWWqDOjrRT3o7nRPGXfila\nbP0rGE2mJJcVR9nExJ3IeaktgT3sb8YlXvtchyYpmjdbfxabTz07ig0+6/cwKoRR\nxOK8Uf7f5euE0cI/490J6r5Rs4lgD8sIQNCUFlTFYvmAH7gcdssSFBt8NPlUATHE\nsoFmlW0DKCJWNhTLOht+s6L/1zwTHLjPG2pdkG6Wdgmu5H2pDml8CDNLDv98Aj7i\n+I5SRKKcVPlnuQIDAQABo1AwTjAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUH\nAwIwDAYDVR0TAQH/BAIwADAfBgNVHSMEGDAWgBQcwrrUO0u+FhIUuVdrDRCQRsi6\nZjANBgkqhkiG9w0BAQsFAAOCAQEAm5dxBoI9pScOCvRAchg4CprdRDSJb9K6yB3O\nnCAxnM47iHeXnY3WlnI388kHu8DU7O4ba1tJbGs3KY9KzioPk43pU12jWkO1onoF\n+mTDjx/Ef1cYWA9r5q/LtgTa6Q2sxV4O2x67QW82aAnaxO34dV5zWCPIvAoovZBV\nHRT+BgCg3r2vD1RGKK2nl1aYJtWhO1SZubam+VttdZ/vbM9oOJctxmImsEtBXjkY\nKteePdQtLL5o03JhyXWyRshCq+HMmKf2KgyY8gvydGcP4eLQdBWcW40LcnVq6UjT\n0kJycJEKngMVademq1ZWHGaiYB7hyT6GhgIcHUJ2cKrPgbEh1Q==\n-----END CERTIFICATE-----",
                      "key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEA4AI33yvHZws+jta6qpV6wzJqF8odIfTIpCfbrVcUUtLFKJ1I\n2e4SceTKi6O3C/I1XuvWlpng5IO65+fQQLO06z1/AuQT78YUn/Wlm9x1aHVsv4AN\nB5JWWqDOjrRT3o7nRPGXfilabP0rGE2mJJcVR9nExJ3IeaktgT3sb8YlXvtchyYp\nmjdbfxabTz07ig0+6/cwKoRRxOK8Uf7f5euE0cI/490J6r5Rs4lgD8sIQNCUFlTF\nYvmAH7gcdssSFBt8NPlUATHEsoFmlW0DKCJWNhTLOht+s6L/1zwTHLjPG2pdkG6W\ndgmu5H2pDml8CDNLDv98Aj7i+I5SRKKcVPlnuQIDAQABAoIBAFPQYKlOzw/+BA0b\nyMIUpdctIMb/54CR/xR0mVw1DbSjigNVPjHUQvB8Y1B2FAITQObgJO06bAv0QdWN\nRb0/v/yYiNJDFjaLjaIAHlO/2+oWrXbFaZqgpVDJhB+e1xaZr2x7XGxm+p925k30\nl6pvIRY+I8JRKvZiV1VZHwL/R3JOtPr++xMZtLVjVOI+f+ySqJ+TZHuAjm49EKxj\ncEmmJ28b7QcziXsvKy00f+zbqLIBKXQdZAFU5eEr1BsDRXdRW+Kf0XIvftuy4BJZ\nvoKT+VGhEvF/qysswL4+6IAO6tpuYnnM0Y2d3sOGoWPkTcQK0MekYKzL/WmtCjNs\n9hodJtECgYEA5EWyhEOf4uOKe5TDp697UCUvXLoOR58FDe/S8XNvScn29jjOkqIg\nOMoqo9xAkJTNTzqn5UUdt1x/pgM2NxlPLFijrc0zQlX3SoOO2ryDd9WNi7YKtN16\nKJqa536WeZu2OEbuAZ+S3GALVy1RPeTNPnUOmKnF06DjDUGzLNCZy10CgYEA+zfw\n952DWuz1U0Z4wvAEqqcgUKXPKrkTXV/iUnjkDkrLYVr0ZofDNTXrdHl+UedFmaOC\ncieZn6DNhcdz5tKtyysGMH3g/qs9PfoGUngvcXsy0Egk04l3x1jc8TTCLqXZXYaQ\nHMsx51n+R58oncPtzYSUOr9qQ6PbC2CstTbFJA0CgYEAjGEsUliAB/jknfEzjXjG\nPdhQUxb8VyE864Az2lah9t/kJzFyIAziAeqZ5GE7t247AGFTBRTHHI8e1Qoemi3P\nWbc9GVIbFs1lIYbcIDpUIyrKPEP8O5QEXtoNLxXTFgAjRGKiVY87spjCAJ+W2ZhO\ne/1it5GYXfgQCYQA2yuBmOUCgYANRkR2YR1axaCk+NlSu6oTdmdPu6M5x7PNQE7O\nOtMaKjua9lppvIzFGAdMDUtueoEEAE7ZR1xnwfB6PDLUpJdIYAqgr1YfPt8qkjaZ\nTv56yZ7CwL0pbF8m6nwqRrZoDp1wwraEvvvxFKFKGY/k3kCHlpTakdjEoDjn3gDi\nRnWeVQKBgCEneMSzucei5LRppRtRaJw/Btll8qlPMlX3W7dxQ3cLwpmLOn0m51Fp\nPIZ44zYK8R6fu4+/sSrlfaIg86Ugeufp6YNxyNROKxUGza5vDIu5OftwWtBeg+UK\nZ8lLWNdX6pp7WMujmF3H1DrkBbauYMUKZ4UxUYtelgHERMePIxwb\n-----END RSA PRIVATE KEY-----"
                    }
                  }
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "false"
          containerImage: quay.io/fujitsu/fujitsu-enterprise-postgres-operator@sha256:6b6ffb32a23a386cc4ea5cf05e92809ebc3774cda1d3df0044ce2d5ee5c3e1a8
          createdAt: "2023-09-12"
          description: OpenShift Operator for Fujitsu Enterprise Postgres
          olm.skipRange: <5.1.7
          operators.operatorframework.io/builder: operator-sdk-v1.25.4-ocp
          operators.operatorframework.io/internal-objects: '["fepautoscales.fep.fujitsu.io","fepconfigs.fep.fujitsu.io","fepusers.fep.fujitsu.io","fepcerts.fep.fujitsu.io","fepvolumes.fep.fujitsu.io","fepbackups.fep.fujitsu.io"]'
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          support: pgtechenquiry@fast.au.fujitsu.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: FEPAction
            name: fepactions.fep.fujitsu.io
            version: v1
          - kind: FEPAutoscale
            name: fepautoscales.fep.fujitsu.io
            version: v1
          - kind: FEPBackup
            name: fepbackups.fep.fujitsu.io
            version: v1
          - kind: FEPCert
            name: fepcerts.fep.fujitsu.io
            version: v1
          - kind: FEPCluster
            name: fepclusters.fep.fujitsu.io
            version: v2
          - kind: FEPConfig
            name: fepconfigs.fep.fujitsu.io
            version: v1
          - kind: FEPExporter
            name: fepexporters.fep.fujitsu.io
            version: v1
          - kind: FEPLogging
            name: feploggings.fep.fujitsu.io
            version: v1
          - kind: FEPPgpool2Cert
            name: feppgpool2certs.fep.fujitsu.io
            version: v1
          - kind: FEPPgpool2
            name: feppgpool2s.fep.fujitsu.io
            version: v1
          - kind: FEPRestore
            name: feprestores.fep.fujitsu.io
            version: v1
          - kind: FEPUpgrade
            name: fepupgrades.fep.fujitsu.io
            version: v1
          - kind: FEPUser
            name: fepusers.fep.fujitsu.io
            version: v1
          - kind: FEPVolume
            name: fepvolumes.fep.fujitsu.io
            version: v1
        description: "Fujitsu Enterprise Postgres 15 delivers an enterprise-grade
          PostgreSQL on OpenShift Container Platform.\n\nThis solution provides the
          flexibility of a hybrid cloud solution while delivering an enhanced distribution
          of PostgreSQL to support enterprise-level workloads and provide improved
          deployment and management, availability, performance, data governance and
          security.  \n\nAvailable as a multi-architecture container built for both
          amd64, s390x and ppc64le.\n\nThe download and Use of the Product is strictly
          subject to the terms of the End User License Agreement with Fujitsu Limited
          found at https://www.fast.fujitsu.com/fujitsu-enterprise-postgres-license-agreements.
          Where the Product that has been embedded as a whole or part into a third
          party program, only Authorised Customers may download and use the Product.\n"
        displayName: Fujitsu Enterprise Postgres Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - Fujitsu
        - fep
        links:
        - name: Fujitsu Enterprise Postgres
          url: https://www.postgresql.fastware.com/
        maintainers:
        - email: pgtechenquiry@au.fujitsu.com
          name: Fujitsu
        maturity: stable
        provider:
          name: Fujitsu
          url: https://www.postgresql.fastware.com/
        relatedImages:
        - quay.io/fujitsu/fujitsu-enterprise-postgres-exporter@sha256:63368e2e057387e7e281afebcea9c491ec4fd90c719f792557667a277ffe1072
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-backup@sha256:4359f12dbccd66a0d7b2ef8b553e8122c64db2c34acb179519bf2f30f1ab0bbe
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-pgpool2@sha256:8bf6989725663cb1f4a4a7ce2f319801ed9386ca99aad09644d93f88390c0f24
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-restore@sha256:ad5e1896216f68c2d7a3aa32cdce75c4ab76b419fe52b019f4e0d77bea1f89fd
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-pgpool2@sha256:a4f059404c649c96bbd692d1c579d937b4eb246b5205565fc88ce11042633e79
        - quay.io/fujitsu/fujitsu-enterprise-postgres-fluentd@sha256:a5f5353fd4a66b99683635a1bb117c0cd566a900f83d52f65536bc7b1d7c7a2f
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-upgrade@sha256:6dae7c8eb44e0014e47b002460869cba213ce465f5e31a3b703e4e8a1272d00c
        - quay.io/fujitsu/fujitsu-enterprise-postgres-cronjob@sha256:7dc349dacb3aea9a836db40e0827155df39756c7fe3a523c05ed46a9c5514f2c
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-server@sha256:75ff0e603f98f9ca515b245e642cc34e463f2db50298c0f1eaf82876657dafec
        - quay.io/fujitsu/fujitsu-enterprise-postgres-operator@sha256:6b6ffb32a23a386cc4ea5cf05e92809ebc3774cda1d3df0044ce2d5ee5c3e1a8
        - quay.io/fujitsu/fujitsu-enterprise-postgres-fluentbit@sha256:7f791b5a0df90fd89b83abb973ec95d5741899c9bb271d452d30bfac185185cb
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-backup@sha256:0051a05af956cbc9b9ae1eb6b0014291fd6210f9127a6d7ec1ec5e73d68a45ff
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-exporter@sha256:1723eb674319ae28f65e3b175cee1317d9474bbde51a50f7bb662add811812a1
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-pgpool2@sha256:942e41d3c42261cffe67bb3202dd688fdd83f26a8c4dfbee9d39c8892be8c051
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-restore@sha256:f35b9a96176d8905860d5ad859b06ce39637fcf562357822f8263ce6ef4f809c
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-upgrade@sha256:3c9a0a27c24ea1a0d862b6e9e38d2cb83575e32df7d7413c07c919ca6da62f11
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-server@sha256:399f60a29543cc609ce8f18d40da90d716bf43e0b0428121009ef11fd9ae2b1f
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-restore@sha256:990539446864b280e5c84aa4cf626d767fd1ca5cfa5fceed3555452138cbadc1
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-server@sha256:a38fea06de9d2f3382fa6ea7500ba393563a001a397582ff0d73c8a2ba216745
        - registry.connect.redhat.com/fujitsu-postgres/fujitsu-enterprise-postgres-operator-bundle@sha256:a277ed7be25798d22310b191bb1e783b7439fc8b78dd0ec30d73ba31d6058f32
        - quay.io/fujitsu/fujitsu-enterprise-postgres-utils@sha256:0643f0bf4c8d5aa7ed898840b1578b627adf90c129f96f21953f28c73dad0c65
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-backup@sha256:0eb3f39f564ac90e2a04191ccdc49badc1ef85296860ed7d1ff98e3ab32996c8
        version: 5.1.7
      entries:
      - name: fujitsu-enterprise-postgres-operator.v5.1.7
        version: 5.1.7
      name: stable
    defaultChannel: stable
    packageName: fujitsu-enterprise-postgres-operator
    provider:
      name: Fujitsu
      url: https://www.postgresql.fastware.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Eclipse Foundation
      provider-url: ""
    name: eclipse-che
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eclipse-che.v7.113.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "org.eclipse.che/v1",
                "kind": "CheCluster",
                "metadata": {
                  "name": "eclipse-che",
                  "namespace": "eclipse-che"
                },
                "spec": {
                  "auth": {
                    "identityProviderURL": "",
                    "oAuthClientName": "",
                    "oAuthSecret": ""
                  },
                  "database": {
                    "externalDb": false
                  },
                  "k8s": {
                    "ingressDomain": null,
                    "tlsSecretName": null
                  },
                  "metrics": {
                    "enable": true
                  },
                  "server": {
                    "externalDevfileRegistries": [
                      {
                        "url": "https://registry.devfile.io"
                      }
                    ],
                    "externalDevfileRegistry": true,
                    "externalPluginRegistry": true,
                    "workspaceNamespaceDefault": "<username>-che"
                  },
                  "storage": {
                    "pvcStrategy": "common"
                  }
                }
              },
              {
                "apiVersion": "org.eclipse.che/v2",
                "kind": "CheCluster",
                "metadata": {
                  "name": "eclipse-che",
                  "namespace": "eclipse-che"
                },
                "spec": {
                  "components": {
                    "devfileRegistry": {
                      "disableInternalRegistry": true,
                      "externalDevfileRegistries": [
                        {
                          "url": "https://registry.devfile.io"
                        }
                      ]
                    },
                    "pluginRegistry": {
                      "disableInternalRegistry": true
                    }
                  },
                  "containerRegistry": {},
                  "devEnvironments": {},
                  "gitServices": {},
                  "networking": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/eclipse/che-operator@sha256:5d52236cfb5dd97b539737092458535d98386c083c17640894465aa065dea06d
          createdAt: "2025-12-19T05:37:01Z"
          description: A Kube-native development solution that delivers portable and
            collaborative developer workspaces.
          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: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/eclipse-che/che-operator
          support: Eclipse Foundation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              The `CheCluster` custom resource allows defining and managing Eclipse Che server installation.
              Based on these settings, the  Operator automatically creates and maintains several ConfigMaps:
              `che`, `plugin-registry` that will contain the appropriate environment variables
              of the various components of the installation. These generated ConfigMaps must NOT be updated manually.
            displayName: Eclipse Che instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v2
          - description: The `CheCluster` custom resource allows defining and managing
              a Che server installation
            displayName: Eclipse Che instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v1
        description: |
          A collaborative Kubernetes-native development solution that delivers OpenShift workspaces and in-browser IDE for rapid cloud application development.
          This operator installs the Plugin and Devfile registries, Dashboard, Gateway and the Eclipse Che server, and configures these services.
          OpenShift OAuth is used directly for authentication. TLS mode is on.

          ## How to Install
          Press the **Install** button, choose the channel and the upgrade strategy, and wait for the **Installed** Operator status.
          When the operator is installed, create a new Custom Resource (CR) of Kind CheCluster (click the **Create New** button).
          The CR spec contains all defaults. You can start using Eclipse Che when the CR status is set to **Available**, and you see a URL to Eclipse Che.

          ## Defaults
          By default, the operator deploys Eclipse Che with:
          * 10Gi storage
          * Auto-generated passwords
          * Bundled Plugin and Devfile registries

          Use `oc edit checluster/eclipse-che -n eclipse-che` to update Eclipse Che default installation options.
          See more in the [Installation guide](https://www.eclipse.org/che/docs/stable/administration-guide/configuring-che/).

          ### Certificates
          Operator uses a default router certificate to secure Eclipse Che routes.
          Follow the [guide](https://www.eclipse.org/che/docs/stable/administration-guide/importing-untrusted-tls-certificates/)
          to import certificates into Eclipse Che.
        displayName: Eclipse Che
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eclipse che
        - workspaces
        - devtools
        - developer
        - ide
        - java
        links:
        - name: Product Page
          url: https://www.eclipse.org/che
        - name: Documentation
          url: https://www.eclipse.org/che/docs
        - name: Operator GitHub Repo
          url: https://github.com/eclipse-che/che-operator
        maintainers:
        - email: abazko@redhat.com
          name: Anatolii Bazko
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Eclipse Foundation
        relatedImages:
        - quay.io/eclipse/che-operator@sha256:5d52236cfb5dd97b539737092458535d98386c083c17640894465aa065dea06d
        - quay.io/brancz/kube-rbac-proxy@sha256:738c854322f56d63ebab75de5210abcdd5e0782ce2d30c0ecd4620f63b24694d
        - quay.io/che-incubator/che-code@sha256:6b4ff425d9fd68f6121def1483ac374aba0cf3e1669d9d2b6628100a128292b4
        - quay.io/che-incubator/che-code-server@sha256:2093baab1a73e9682f5892f80582481abfbef99d744472ee6098e2d82fb2899f
        - quay.io/oauth2-proxy/oauth2-proxy@sha256:dcb6ff8dd21bf3058f6a22c6fa385fa5b897a9cd3914c88a2cc2bb0a85f8065d
        - quay.io/community-operator-pipeline-prod/eclipse-che@sha256:bac399fad1dff8d939d9f5498c30c7e1291733643b912ac3c0c10ca6605f23bb
        - quay.io/eclipse/che-server@sha256:dc3d452108c4f02b9c07717aeb0510652fae25ef1ee3de49e7d5d2069e9cc4e1
        - quay.io/devfile/universal-developer-image@sha256:69ed3c6d08d37134b7b6651fd5b9666a1e5e2f6d602285a8e40512cbb1615f6a
        - quay.io/eclipse/che-plugin-registry@sha256:e941647b1622c586bb9f60b931dbf28a290308757d2e8529eceecae0d80625d6
        - quay.io/che-incubator/configbump@sha256:99253a669c76fe53d05801e1dfaa03095e55e6d49919183e30386811e0e48bbb
        - quay.io/che-incubator/header-rewrite-proxy@sha256:bd7873b8feef35f218f54c6251ea224bea2c8bf202a328230019a0ba2941245d
        - quay.io/eclipse/che-dashboard@sha256:36e4af6d9aeb8c59a1c7c372a3767f59af8785790df2a00aadd6fd3187671fda
        - quay.io/che-incubator/che-idea-dev-server@sha256:ee6a854a7a9af9381551802b6848f82f11b37443552ad347bffe5bd3032e2f12
        - quay.io/che-incubator/che-code-server@sha256:357c95297ce2182ef0a792038ea122075fdeb6c8e835099be09e8d4f105eac2a
        - quay.io/eclipse/che--traefik@sha256:4cf907247939b5d20bf4eff73abd21cb413c339600dde76dbc94a874b2578a27
        - quay.io/eclipse/che-tls-secret-creator@sha256:cbb2fd8ce903d822377f2093af1aa2543672ed8c516d607a7a9dd857379dac5d
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:354fc75eb7a21a934381e93d03ef9d42bc2c8ae8989fdcacecfb39b863b96ced
        - quay.io/openshift/origin-oauth-proxy@sha256:870bfe92a4663720775c0dfe5728ecbb10a17f0644eef5f57276ec135034c6a1
        - quay.io/che-incubator/che-code-sshd@sha256:82a4ef390d7d0bc8ebd0cbb7206707ae3ab68e9936b531c3c716cce46fca404a
        - quay.io/che-incubator/che-code@sha256:69822e636795efde3655c279e045f48a59333cb0fc83a0694cf8b0dec2b875e2
        version: 7.113.0
      entries:
      - name: eclipse-che.v7.113.0
        version: 7.113.0
      - name: eclipse-che.v7.112.0
        version: 7.112.0
      - name: eclipse-che.v7.111.0
        version: 7.111.0
      - name: eclipse-che.v7.110.0
        version: 7.110.0
      - name: eclipse-che.v7.109.0
        version: 7.109.0
      - name: eclipse-che.v7.108.0
        version: 7.108.0
      - name: eclipse-che.v7.106.0
        version: 7.106.0
      - name: eclipse-che.v7.105.0
        version: 7.105.0
      - name: eclipse-che.v7.104.0
        version: 7.104.0
      - name: eclipse-che.v7.103.0
        version: 7.103.0
      - name: eclipse-che.v7.102.0
        version: 7.102.0
      - name: eclipse-che.v7.101.0
        version: 7.101.0
      - name: eclipse-che.v7.100.0
        version: 7.100.0
      - name: eclipse-che.v7.99.0
        version: 7.99.0
      - name: eclipse-che.v7.98.0
        version: 7.98.0
      - name: eclipse-che.v7.97.0
        version: 7.97.0
      - name: eclipse-che.v7.96.0
        version: 7.96.0
      - name: eclipse-che.v7.95.0
        version: 7.95.0
      - name: eclipse-che.v7.94.0
        version: 7.94.0
      - name: eclipse-che.v7.93.0
        version: 7.93.0
      - name: eclipse-che.v7.92.0
        version: 7.92.0
      - name: eclipse-che.v7.91.0
        version: 7.91.0
      - name: eclipse-che.v7.90.0
        version: 7.90.0
      - name: eclipse-che.v7.89.0
        version: 7.89.0
      - name: eclipse-che.v7.88.0
        version: 7.88.0
      - name: eclipse-che.v7.87.0
        version: 7.87.0
      - name: eclipse-che.v7.86.0
        version: 7.86.0
      - name: eclipse-che.v7.85.0
        version: 7.85.0
      - name: eclipse-che.v7.84.0
        version: 7.84.0
      - name: eclipse-che.v7.83.0
        version: 7.83.0
      - name: eclipse-che.v7.82.0
        version: 7.82.0
      - name: eclipse-che.v7.81.0
        version: 7.81.0
      - name: eclipse-che.v7.80.0
        version: 7.80.0
      - name: eclipse-che.v7.79.0
        version: 7.79.0
      - name: eclipse-che.v7.78.0
        version: 7.78.0
      - name: eclipse-che.v7.77.0
        version: 7.77.0
      - name: eclipse-che.v7.76.0
        version: 7.76.0
      - name: eclipse-che.v7.75.0
        version: 7.75.0
      - name: eclipse-che.v7.74.0
        version: 7.74.0
      - name: eclipse-che.v7.73.0
        version: 7.73.0
      - name: eclipse-che.v7.72.0
        version: 7.72.0
      - name: eclipse-che.v7.71.0
        version: 7.71.0
      - name: eclipse-che.v7.70.0
        version: 7.70.0
      - name: eclipse-che.v7.69.0
        version: 7.69.0
      - name: eclipse-che.v7.68.0
        version: 7.68.0
      - name: eclipse-che.v7.67.0
        version: 7.67.0
      - name: eclipse-che.v7.66.0
        version: 7.66.0
      - name: eclipse-che.v7.65.0
        version: 7.65.0
      - name: eclipse-che.v7.64.0
        version: 7.64.0
      - name: eclipse-che.v7.63.0
        version: 7.63.0
      - name: eclipse-che.v7.62.0
        version: 7.62.0
      - name: eclipse-che.v7.61.0
        version: 7.61.0
      - name: eclipse-che.v7.60.1
        version: 7.60.1
      - name: eclipse-che.v7.60.0
        version: 7.60.0
      - name: eclipse-che.v7.59.0
        version: 7.59.0
      - name: eclipse-che.v7.58.0
        version: 7.58.0
      - name: eclipse-che.v7.57.0
        version: 7.57.0
      - name: eclipse-che.v7.56.0
        version: 7.56.0
      - name: eclipse-che.v7.55.0
        version: 7.55.0
      - name: eclipse-che.v7.54.0
        version: 7.54.0
      - name: eclipse-che.v7.53.0
        version: 7.53.0
      - name: eclipse-che.v7.52.0
        version: 7.52.0
      - name: eclipse-che.v7.51.0
        version: 7.51.0
      - name: eclipse-che.v7.50.0
        version: 7.50.0
      - name: eclipse-che.v7.49.0
        version: 7.49.0
      - name: eclipse-che.v7.48.1
        version: 7.48.1
      - name: eclipse-che.v7.47.0
        version: 7.47.0
      - name: eclipse-che.v7.46.0
        version: 7.46.0
      - name: eclipse-che.v7.45.0
        version: 7.45.0
      - name: eclipse-che.v7.44.0
        version: 7.44.0
      - name: eclipse-che.v7.42.0
        version: 7.42.0
      - name: eclipse-che.v7.41.2
        version: 7.41.2
      - name: eclipse-che.v7.41.1
        version: 7.41.1
      - name: eclipse-che.v7.41.0
        version: 7.41.0
      - name: eclipse-che.v7.40.2
        version: 7.40.2
      - name: eclipse-che.v7.40.1
        version: 7.40.1
      name: stable
    defaultChannel: stable
    packageName: eclipse-che
    provider:
      name: Eclipse Foundation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: dapr.io
      provider-url: https://dapr.io
    name: dapr-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dapr-kubernetes-operator.v0.0.12
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.dapr.io/v1alpha1",
                "kind": "DaprControlPlane",
                "metadata": {
                  "name": "dapr-control-plane",
                  "namespace": "dapr-system"
                },
                "spec": {
                  "values": {}
                }
              },
              {
                "apiVersion": "operator.dapr.io/v1alpha1",
                "kind": "DaprCruiseControl",
                "metadata": {
                  "name": "dapr-cruise-control",
                  "namespace": "dapr-system"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.dapr.io/v1alpha1",
                "kind": "DaprInstance",
                "metadata": {
                  "name": "dapr-instance",
                  "namespace": "dapr-system"
                },
                "spec": {
                  "values": {}
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          containerImage: docker.io/daprio/kubernetes-operator@sha256:da599a273943bf28812314a11df1052411237dd1887edf0fe6104c5857f439b0
          createdAt: "2025-10-06T18:47:59Z"
          description: Dapr Control Plane Operator
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/dapr/kubernetes-operator
          support: contact@dapr.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DaprControlPlane is the Schema for the Dapr ControlPlane
              API.
            displayName: DaprControlPlane
            kind: DaprControlPlane
            name: daprcontrolplanes.operator.dapr.io
            version: v1alpha1
          - kind: DaprCruiseControl
            name: daprcruiscontrols.operator.dapr.io
            version: v1alpha1
          - description: DaprInstance is the Schema for the Dapr Instance API.
            displayName: DaprInstance
            kind: DaprInstance
            name: daprinstances.operator.dapr.io
            version: v1alpha1
        description: Dapr Control Plane Operator
        displayName: Dapr Control Plane Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dapr
        links:
        - name: Dapr
          url: https://dapr.io
        - name: Dapr Kubernetes Operator
          url: https://github.com/dapr/kubernetes-operator
        maintainers:
        - email: lburgazzoli@gmail.com
          name: Luca Burgazzoli
        - email: salaboy@gmail.com
          name: Mauricio Salatino
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: dapr.io
          url: https://dapr.io
        relatedImages:
        - docker.io/daprio/kubernetes-operator@sha256:da599a273943bf28812314a11df1052411237dd1887edf0fe6104c5857f439b0
        - quay.io/community-operator-pipeline-prod/dapr-kubernetes-operator@sha256:3c1487eb881cdc825bd53f0f51eb92b180e8dafcae92a62dc616f1402625124b
        version: 0.0.12
      entries:
      - name: dapr-kubernetes-operator.v0.0.12
        version: 0.0.12
      - name: dapr-kubernetes-operator.v0.0.11
        version: 0.0.11
      - name: dapr-kubernetes-operator.v0.0.10
        version: 0.0.10
      - name: dapr-kubernetes-operator.v0.0.9
        version: 0.0.9
      - name: dapr-kubernetes-operator.v0.0.8
        version: 0.0.8
      - name: dapr-kubernetes-operator.v0.0.6
        version: 0.0.6
      - name: dapr-kubernetes-operator.v0.0.5
        version: 0.0.5
      - name: dapr-kubernetes-operator.v0.0.4
        version: 0.0.4
      - name: dapr-kubernetes-operator.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: dapr-kubernetes-operator
    provider:
      name: dapr.io
      url: https://dapr.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: raftt.io
      provider-url: https:///www.raftt.io
    name: raftt-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: raftt-operator.v1.25.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "raftt.io/v1beta1",
                "kind": "Raftt",
                "metadata": {
                  "name": "raftt",
                  "namespace": "raftt"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: quay.io/raftt/raftt-operator@sha256:73edc6d8416ee3815d7e59bb26c33e3d35d97cf1ceadd8fa457041be13e175ca
          createdAt: "2025-04-29T11:31:02Z"
          description: This operator installs and configures a Raftt instance
          features.operators.openshift.io/disconnected: "false"
          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"
          marketplace.openshift.io/remote-workflow: https://marketplace.redhat.com/en-us/operators/raftt-operator/pricing?utm_source=openshift_console
          marketplace.openshift.io/support-workflow: https://marketplace.redhat.com/en-us/operators/raftt-operator/support?utm_source=openshift_console
          operatorframework.io/suggested-namespace: raftt
          operators.openshift.io/valid-subscription: Raftt commercial license
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Raftt systems
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Raftt represents an installation of Raftt cluster controller
              & supporting services
            displayName: Raftt
            kind: Raftt
            name: raftts.raftt.io
            version: v1beta1
        description: |
          Raftt allows fast code iterations and debugging over complex Kubernetes environments.
          Raftt provides a localhost development experience for applications running on Kubernetes.
          You can use Raftt to orchestrate the environments for you, so you get the optimal development experience -
          iterations that take under a second, OOTB debugging of your code as it runs in the cluster, easy introspection, and more.
        displayName: Raftt
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dx
        - development
        - debugging
        links:
        - name: Raftt Operator
          url: https://raftt-operator.domain
        - name: Documentation
          url: https://docs.raftt.io
        maintainers:
        - email: ops@raftt.io
          name: Raftt
        maturity: alpha
        provider:
          name: raftt.io
          url: https:///www.raftt.io
        relatedImages:
        - quay.io/raftt/raftt-operator@sha256:73edc6d8416ee3815d7e59bb26c33e3d35d97cf1ceadd8fa457041be13e175ca
        - registry.connect.redhat.com/raftt/operator-bundle@sha256:7108686c168c35acd996e61a981bdd885b454837cf6823a48a28cdeeebbb0af9
        version: 1.25.2
      entries:
      - name: raftt-operator.v1.25.2
        version: 1.25.2
      name: alpha
    defaultChannel: alpha
    packageName: raftt-operator
    provider:
      name: raftt.io
      url: https:///www.raftt.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio Project
      provider-url: ""
    name: apicurito
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        - quay.io/apicurio/apicurito-operator:1.0.3
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: 1.0.x
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        - quay.io/apicurio/apicurito-operator:1.0.3
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: candidate
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/apicurio/apicurito-operator:1.0.3
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: latest
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/apicurio/apicurito-operator:1.0.3
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: latest
    packageName: apicurito
    provider:
      name: Apicurio Project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: www.redhat.com
    name: dpu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dpu-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "config.openshift.io/v1",
                "kind": "DpuOperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dpu-operator",
                    "app.kubernetes.io/instance": "dpuoperatorconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dpuoperatorconfig",
                    "app.kubernetes.io/part-of": "dpu-operator"
                  },
                  "name": "dpuoperatorconfig-sample"
                },
                "spec": {
                  "mode": "host"
                }
              },
              {
                "apiVersion": "config.openshift.io/v1",
                "kind": "ServiceFunctionChain",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dpu-operator",
                    "app.kubernetes.io/instance": "servicefunctionchain-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "servicefunctionchain",
                    "app.kubernetes.io/part-of": "dpu-operator"
                  },
                  "name": "servicefunctionchain-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-08-12T16:14:09Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-dpu-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DpuOperatorConfig is the Schema for the dpuoperatorconfigs
              API
            displayName: Dpu Operator Config
            kind: DpuOperatorConfig
            name: dpuoperatorconfigs.config.openshift.io
            version: v1
          - description: ServiceFunctionChain is the Schema for the servicefunctionchains
              API
            displayName: Service Function Chain
            kind: ServiceFunctionChain
            name: servicefunctionchains.config.openshift.io
            version: v1
        description: This operator will manage and configure data processing unit
          (DPUs) to be used in accelerating/offloading k8s networking functions
        displayName: DPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dpu
        - dpu-operator
        - ipu
        links:
        - name: Dpu Operator
          url: https://github.com/openshift/dpu-operator
        maintainers:
        - email: wizhao@redhat.com
          name: William Zhao
        - email: bnemeth@redhat.com
          name: Balazs Nemeth
        maturity: alpha
        provider:
          name: Red Hat
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-dpu-rhel9-operator@sha256:82ea8006f9d969c4b6f9e52d75ff81d7129ef0bee37ad7056769b485c0760aa9
        - registry.redhat.io/openshift4/ose-dpu-operator-bundle@sha256:2b968beb8b658b8f16257842d2594f4489116adeb76d5965b7642c982ed9d18c
        - registry.redhat.io/openshift4/ose-dpu-daemon-rhel9@sha256:7421edb9be136cc7102bbe8f263108fde6cce3ed411afecc241d8551ad56961a
        version: 4.20.0-202512081147
      entries:
      - name: dpu-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: dpu-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: dpu-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: dpu-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: dpu-operator.v4.20.0-202511040554
        version: 4.20.0-202511040554
      - name: dpu-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: dpu-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: dpu-operator
    provider:
      name: Red Hat
      url: www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Marketplace
      provider-url: ""
    name: ibm-metrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-metrics-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MarketplaceConfig",
                "metadata": {
                  "name": "marketplaceconfig"
                },
                "spec": {
                  "features": {
                    "deployment": true,
                    "meterDefinitionCatalogServer": false,
                    "registration": true
                  },
                  "installIBMCatalogSource": true,
                  "isDisconnected": false,
                  "license": {
                    "accept": false
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterBase",
                "metadata": {
                  "name": "meterbase"
                },
                "spec": {
                  "enabled": true,
                  "prometheus": {
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      },
                      "requests": {
                        "cpu": "1",
                        "memory": "1G"
                      }
                    },
                    "storage": {
                      "size": "20Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterReport",
                "metadata": {
                  "name": "example-meterreport"
                },
                "spec": {
                  "endTime": "2020-08-05T00:00:00Z",
                  "prometheusService": {
                    "name": "rhm-prometheus-meterbase",
                    "namespace": "openshift-redhat-marketplace",
                    "targetPort": "rbac"
                  },
                  "startTime": "2020-08-04T00:00:00Z"
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "example-meterdefinition-4"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "meterdefinition-sample"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
          createdAt: "2025-12-17T09:32:46Z"
          description: The IBM Metrics Operator provides workload metering and reporting
            for IBM and Red Hat Marketplace customers.
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MarketplaceConfig is configuration manager for our Red Hat Marketplace controllers
              By installing this product you accept the license terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterBase is the resource that sets up Metering for Red Hat Marketplace.
              This is an internal resource not meant to be modified directly.
            displayName: Meter Base
            kind: MeterBase
            name: meterbases.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterDefinition defines the meter workloads used to enable pay for
              use billing.
            displayName: Meter Definition
            kind: MeterDefinition
            name: meterdefinitions.marketplace.redhat.com
            version: v1beta1
          - kind: MeterReport
            name: meterreports.marketplace.redhat.com
            version: v1alpha1
        description: "The IBM Metrics Operator provides workload metering and reporting
          for IBM Software Central and Red Hat Marketplace customers.\n### **Important
          Note**\nA set of instructions for onboarding is provided here. For more
          detailed onboarding instructions or information about what is installed
          please visit [swc.saas.ibm.com](https://swc.saas.ibm.com).\n\nUsage metrics
          may be monitored through [https://swc.saas.ibm.com](https://swc.saas.ibm.com)
          with only IBM Metrics Operator and a Red Hat Marketplace account.\n\n###
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n### Prerequisites\n1. Installations are required
          to [enable monitoring for user-defined projects](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)
          as the Prometheus provider.\n2. Edit the cluster-monitoring-config ConfigMap
          object:\n\n   ```sh\n   $ oc -n openshift-monitoring edit configmap cluster-monitoring-config\n
          \   ```\n\n3. Add enableUserWorkload: true under data/config.yaml:\n  \n
          \   ```sh\n    apiVersion: v1\n    kind: ConfigMap\n    metadata:\n      name:
          cluster-monitoring-config\n        namespace: openshift-monitoring\n    data:\n
          \     config.yaml: |\n        enableUserWorkload: true\n    ```\n\n4. Configure
          the user-workload-monitoring-config ConfigMap object:\n\n    ```sh\n    $
          oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config\n
          \   ```\n\n5. Configure a minimum retention time of 168h and minimum storage
          capacity of 40Gi\n  \n    ```sh\n    apiVersion: v1\n    kind: ConfigMap\n
          \   metadata:\n      name: user-workload-monitoring-config\n      namespace:
          openshift-user-workload-monitoring\n\n    data:\n      config.yaml: |\n
          \       prometheus:\n          retention: 168h\n          volumeClaimTemplate:\n
          \           spec:\n              resources:\n                requests:\n
          \                 storage: 40Gi\n    ```\n\n### Resources Required\n\nMinimum
          system resources required:\n\n| Operator                | Memory (MB) |
          CPU (cores) | Disk (GB) | Nodes |\n| ----------------------- | -----------
          | ----------- | --------- | ----- |\n| **Metrics**   |        750  |     0.25
          \   | 3x1       |    3  |\n| **Deployment** |        250  |     0.25    |
          -         |    1  |\n\n| Prometheus Provider  | Memory (GB) | CPU (cores)
          | Disk (GB) | Nodes |\n| --------- | ----------- | ----------- | ---------
          | ----- |\n| **[Openshift User Workload Monitoring](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)**
          |          1  |     0.1       | 2x40        |   2    |\n\nMultiple nodes
          are required to provide pod scheduling for high availability for IBM Metrics
          Operator Data Service and Prometheus.\n\nThe IBM Metrics Operator automatically
          creates 3 x 1Gi PersistentVolumeClaims to store reports as part of the data
          service, with _ReadWriteOnce_ access mode. Te PersistentVolumeClaims are
          automatically created by the ibm-metrics-operator after creating a `redhat-marketplace-pull-secret`
          and accepting the license in `marketplaceconfig`.\n\n| NAME                                |
          CAPACITY | ACCESS MODES |\n| ----------------------------------- | --------
          | ------------ |\n| rhm-data-service-rhm-data-service-0 | 1Gi | RWO |\n|
          rhm-data-service-rhm-data-service-1 | 1Gi | RWO |\n| rhm-data-service-rhm-data-service-2
          | 1Gi | RWO |\n\n### Supported Storage Providers\n\n- OpenShift Container
          Storage / OpenShift Data Foundation version 4.x, from version 4.2 or higher\n-
          IBM Cloud Block storage and IBM Cloud File storage\n- IBM Storage Suite
          for IBM Cloud Paks:\n  - File storage from IBM Spectrum Fusion/Scale \n
          \ - Block storage from IBM Spectrum Virtualize, FlashSystem or DS8K\n- Portworx
          Storage, version 2.5.5 or above\n- Amazon Elastic File Storage\n- Azure
          Disk Storage (disk.csi.azure.com)\n\n#### Known Problematic Storage Providers\n\n-
          Azure File Storage (file.csi.azure.com)\n\n### Access Modes required\n\n
          - ReadWriteOnce (RWO)\n\n### Provisioning Options supported\n\nChoose one
          of the following options to provision storage for the ibm-metrics-operator
          data-service\n\n#### Dynamic provisioning using a default StorageClass\n
          \  - A StorageClass is defined with a `metadata.annotations: storageclass.kubernetes.io/is-default-class:
          \"true\"`\n   - PersistentVolumes will be provisioned automatically for
          the generated PersistentVolumeClaims\n--- \n#### Manually create each PersistentVolumeClaim
          with a specific StorageClass\n   - Must be performed before creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`. Otherwise, the automatically
          generated PersistentVolumeClaims are immutable.\n```\napiVersion: v1\nkind:
          PersistentVolumeClaim\nmetadata:\n  labels:\n    app: rhm-data-service\n
          \ name: rhm-data-service-rhm-data-service-0\n  namespace: ibm-software-central\nspec:\n
          \ storageClassName: rook-cephfs\n  accessModes:\n  - ReadWriteOnce\n  resources:\n
          \   requests:\n      storage: 1Gi\n```\n---\n#### Manually provision each
          PersistentVolume for the generated PersistentVolumeClaims with a specific
          StorageClass\n  - May be performed before or after creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`.  \n```\napiVersion: v1\nkind:
          PersistentVolume\nmetadata:\n  name: rhm-data-service-rhm-data-service-0\nspec:\n
          \ csi:\n    driver: rook-ceph.cephfs.csi.ceph.com\n    volumeHandle: rhm-data-service-rhm-data-service-0\n
          \ capacity:\n    storage: 1Gi\n  accessModes:\n    - ReadWriteOnce\n  persistentVolumeReclaimPolicy:
          Delete\n  storageClassName: rook-cephfs\n  volumeMode: Filesystem\n  claimRef:\n
          \   kind: PersistentVolumeClaim\n    namespace: ibm-software-central\n    name:
          rhm-data-service-rhm-data-service-0\n```\n\n### Kyverno Policies\n\nThe
          IBM Metrics Operator makes a best effort to comply with the Kyverno policies
          defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Metrics Operator is not replicated\n  - Service uptime is not considered
          critial, and can be rescheduled\n- metric-state is not replicated\n  - Service
          uptime is not considered critial, and can be rescheduled\n\n### Installation\n1.
          Create or get your [pull secret](https://swc.saas.ibm.com/en-us/documentation/clusters#get-pull-secret).\n2.
          Install the IBM Metrics Operator\n3. Create a Kubernetes secret in the installed
          namespace with the name `redhat-marketplace-pull-secret` and key `PULL_SECRET`
          with the value of the pull secret.\n    ```sh\n    # Replace ${PULL_SECRET}
          with your pull secret\n    oc create secret generic redhat-marketplace-pull-secret
          -n ibm-software-central --from-literal=PULL_SECRET=${PULL_SECRET}\n    ```\n4.
          Use of the platform is governed by the:\n\n    [IBM Cloud Services Agreement](https://www.ibm.com/support/customer/csol/terms/?id=Z126-6304_WS&_ga=2.116312197.2046730452.1684328846-812467790.1684328846)
          (or other base agreement between you and IBM such as a [Passport Advantage
          Agreement](https://www.ibm.com/software/passportadvantage/pa_agreements.html?_ga=2.116312197.2046730452.1684328846-812467790.1684328846))
          and the [Service Description for the Red Hat Marketplace](https://www.ibm.com/support/customer/csol/terms/?id=i126-8719&_ga=2.83289621.2046730452.1684328846-812467790.1684328846).\n
          \   \n5. Update MarketplaceConfig to accept the license.\n    ```\n    oc
          patch marketplaceconfig marketplaceconfig -n ibm-software-central --type='merge'
          -p '{\"spec\": {\"license\": {\"accept\": true}}}'\n    ```\n6. Install
          the pull secret as a global pull secret on the cluster.\n\n    These steps
          require `oc`, `jq`, and `base64` to be available on your machine.\n\n    ```sh\n
          \   # Create the docker pull secret file using your pull secret.\n    #
          Store it in a file called entitledregistryconfigjson.\n    oc create secret
          docker-registry entitled-registry --docker-server=registry.marketplace.redhat.com
          --docker-username \"cp\" --docker-password \"${PULL_SECRET}\" --dry-run=client
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > entitledregistryconfigjson\n
          \   # Get the current global secrets on the cluster and store it as a file
          named dockerconfigjson\n    oc get secret pull-secret -n openshift-config
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > dockerconfigjson\n
          \   # Merge the two dockerconfigs together into a file called dockerconfigjson-merged.\n
          \   jq -s '.[0] * .[1]' dockerconfigjson entitledregistryconfigjson > dockerconfigjson-merged\n
          \   # Set the cluster's dockerconfig file to the new merged version.\n    oc
          set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=dockerconfigjson-merged\n
          \   ```\n  7. (Optional) Your IBM product may have installed IBM Metrics
          Operator using an `ibm-entitlement-key` for authentication to IBM Software
          Central. To authorize the automatic creation of an IBM Software Central
          account for the IBM account owning the `ibm-entitlement-key`\n      ```\n
          \     oc patch marketplaceconfig marketplaceconfig -n ibm-software-central
          --type='merge' -p '{\"spec\": {\"authorizeAccountCreation\": true}}'\n      ```\n\n###
          Why is a global pull secret required?\nIn order to successfully install
          the products hosted by the container image registry, you will need to make
          the pull secret available across the cluster. This can be achieved by applying
          the pull as a [global pull secret](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html#images-update-global-pull-secret_using-image-pull-secrets).
          For alternative approaches, please see the official OpenShift [documentation](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html).\n\n\n###
          SecurityContextConstraints requirements\n\nThe Operators and their components
          support running under the OpenShift Container Platform default restricted
          and restricted-v2 security context constraints.\n\n### Installation Namespace
          and ClusterRoleBinding requirements\n\nThe IBM Metrics Operator components
          require specific ClusterRoleBindings.\n- The metric-state component requires
          a ClusterRoleBinding for the the `view` ClusterRole.\n  - Ability to read
          non-sensitive CustomResources. \n  - The `view` ClusterRole dynamically
          adds new CustomResourceDefinitions.\n- The operator & reporter component
          requires a ClusterRoleBinding for the the `cluster-monitoring-view` ClusterRole.\n
          \ - Ability to view Prometheus metrics. \n  - The underlying ClusterRole
          RBAC often updated between OpenShift versions.\n\nDue to limitations of
          Operator Lifecycle Manager (OLM), this ClusterRoleBinding can not be provided
          dynamically for arbitrary installation target namespaces.\n\nA static ClusterRoleBinding
          is included for installation to the default namespace of `ibm-software-central`,
          and namespaces `openshift-redhat-marketplace`,  `redhat-marketplace`, `ibm-common-services`.\n\nTo
          create the ClusterRoleBindings for installation to an alternate namespace\n```\noc
          project INSTALL-NAMESPACE\noc adm policy add-cluster-role-to-user view -z
          ibm-metrics-operator-metric-state\noc adm policy add-cluster-role-to-user
          cluster-monitoring-view -z ibm-metrics-operator-controller-manager,ibm-metrics-operator-reporter\n```\n\n###
          Metric State scoping requirements\nThe metric-state Deployment obtains `get/list/watch`
          access to metered resources via the `view` ClusterRole. For operators deployed
          using Operator Lifecycle Manager (OLM), permissions are added to `clusterrole/view`
          dynamically via a generated and annotated `-view` ClusterRole. If you wish
          to meter an operator, and its Custom Resource Definitions (CRDs) are not
          deployed through OLM, one of two options are required\n1. Add the following
          label to a clusterrole that has get/list/watch access to your CRD: `rbac.authorization.k8s.io/aggregate-to-view:
          \"true\"`, thereby dynamically adding it to `clusterrole/view`\n2. Create
          a ClusterRole that has get/list/watch access to your CRD, and create a ClusterRoleBinding
          for the metric-state ServiceAccount\n\nAttempting to meter a resource with
          a MeterDefinition without the required permissions will log an `AccessDeniedError`
          in metric-state.\n\n### Disaster Recovery\n\nTo plan for disaster recovery,
          note the PhysicalVolumeClaims `rhm-data-service-rhm-data-service-N`. \n-
          In connected environments, MeterReport data upload attempts occur hourly,
          and are then removed from data-service. There is a low risk of losing much
          unreported data.\n- In an airgap environment, MeterReport data must be pulled
          from data-service and uploaded manually using [datactl](https://github.com/redhat-marketplace/datactl/).
          To prevent data loss in a disaster scenario, the data-service volumes should
          be considered in a recovery plan.\n\n### Subscription Config\n\nIt is possible
          to [configure](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md)
          how OLM deploys an Operator via the `config` field in the [Subscription](https://github.com/operator-framework/olm-book/blob/master/docs/subscriptions.md)
          object.\n\nThe IBM Metrics Operator will also read the `config` and append
          it to the operands. The primary use case is to control scheduling using
          [Tolerations](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/)
          and [NodeSelectors](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/).\n\nA
          limitation is that the `config` elements are only appended to the operands.
          The elements in the operands are not removed if the `config` is removed
          from the `Subscripion`. The operand must be modified manually, or deleted
          and recreated by the controller.\n\n### Cluster permission requirements\n\n|API
          group             |Resources              |Verbs                                     |\n|----------------------|-----------------------|------------------------------------------|\n|apps
          \                 |statefulsets           |get;list;watch                            |\n|authentication.k8s.io
          |tokenreviews           |create                                    |\n|authorization.k8s.io
          \ |subjectaccessreviews   |create                                    |\n|config.openshift.io
          \  |clusterversions        |get;list;watch                            |\n|marketplace.redhat.com|meterdefinitions
          \      |get;list;watch;create;update;patch;delete |\n|operators.coreos.com
          \ |clusterserviceversions |get;list;watch                            |\n|operators.coreos.com
          \ |subscriptions          |get;list;watch                            |\n|operators.coreos.com
          \ |operatorgroups         |get;list                                  |\n|storage.k8s.io
          \       |storageclasses         |get;list;watch                            |\n|
          \                     |namespaces             |get;list;watch                            |\n|
          \                     |configmaps             |get;list;watch                            |\n|
          \                     |services               |get;list;watch                            |\n|
          \                     |**clusterrole/view**   |                                          |\n\n\n###
          Documentation\nYou can find our documentation [here.](https://swc.saas.ibm.com/en-us/documentation/)\n\n###
          Getting help\nIf you encounter any issues while using the operators, you
          can create an issue on our [Github\nrepo](https://github.com/redhat-marketplace/redhat-marketplace-operator)
          for bugs, enhancements, or other requests. You can also visit our main page
          and\nreview our [support](https://swc.saas.ibm.com/en-us/support) and [documentation](https://swc.saas.ibm.com/en-us/documentation/).\n\n###
          Readme\nYou can find our readme [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/README.md)\n\n###
          License information\nYou can find our license information [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/LICENSE)\n"
        displayName: IBM Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        - buy
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - registry.connect.redhat.com/rh-marketplace/ibm-metrics-operator-bundle@sha256:a9294ebb6036eca0746bb1ec8d4155727e4dc7ff25060c70bbd10c0604558c37
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
        - quay.io/rh-marketplace/redhat-marketplace-authcheck@sha256:1d48baed94b33491edd62a525c776b3d0866a9255c60ad14ce1aee6735ffe07f
        - quay.io/rh-marketplace/redhat-marketplace-data-service@sha256:9b82b79f9324bb0c394b42e45e5db11854b86d70a40d6b5951ae3af873ab9760
        - quay.io/rh-marketplace/redhat-marketplace-metric-state@sha256:f59cb18b99ccf9c184b0e3cdb941ab90a54262dff177177eaf3e6318dda36213
        - quay.io/rh-marketplace/redhat-marketplace-reporter@sha256:4c46af0f581620fbd0dac4005e31a76f2746eb3b60a881f5fcb13c1547b15c98
        version: 2.23.1
      entries:
      - name: ibm-metrics-operator.v2.23.1
        version: 2.23.1
      name: beta
    - currentCSV: ibm-metrics-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MarketplaceConfig",
                "metadata": {
                  "name": "marketplaceconfig"
                },
                "spec": {
                  "features": {
                    "deployment": true,
                    "meterDefinitionCatalogServer": false,
                    "registration": true
                  },
                  "installIBMCatalogSource": true,
                  "isDisconnected": false,
                  "license": {
                    "accept": false
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterBase",
                "metadata": {
                  "name": "meterbase"
                },
                "spec": {
                  "enabled": true,
                  "prometheus": {
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      },
                      "requests": {
                        "cpu": "1",
                        "memory": "1G"
                      }
                    },
                    "storage": {
                      "size": "20Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterReport",
                "metadata": {
                  "name": "example-meterreport"
                },
                "spec": {
                  "endTime": "2020-08-05T00:00:00Z",
                  "prometheusService": {
                    "name": "rhm-prometheus-meterbase",
                    "namespace": "openshift-redhat-marketplace",
                    "targetPort": "rbac"
                  },
                  "startTime": "2020-08-04T00:00:00Z"
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "example-meterdefinition-4"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "meterdefinition-sample"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
          createdAt: "2025-12-17T09:32:46Z"
          description: The IBM Metrics Operator provides workload metering and reporting
            for IBM and Red Hat Marketplace customers.
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MarketplaceConfig is configuration manager for our Red Hat Marketplace controllers
              By installing this product you accept the license terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterBase is the resource that sets up Metering for Red Hat Marketplace.
              This is an internal resource not meant to be modified directly.
            displayName: Meter Base
            kind: MeterBase
            name: meterbases.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterDefinition defines the meter workloads used to enable pay for
              use billing.
            displayName: Meter Definition
            kind: MeterDefinition
            name: meterdefinitions.marketplace.redhat.com
            version: v1beta1
          - kind: MeterReport
            name: meterreports.marketplace.redhat.com
            version: v1alpha1
        description: "The IBM Metrics Operator provides workload metering and reporting
          for IBM Software Central and Red Hat Marketplace customers.\n### **Important
          Note**\nA set of instructions for onboarding is provided here. For more
          detailed onboarding instructions or information about what is installed
          please visit [swc.saas.ibm.com](https://swc.saas.ibm.com).\n\nUsage metrics
          may be monitored through [https://swc.saas.ibm.com](https://swc.saas.ibm.com)
          with only IBM Metrics Operator and a Red Hat Marketplace account.\n\n###
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n### Prerequisites\n1. Installations are required
          to [enable monitoring for user-defined projects](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)
          as the Prometheus provider.\n2. Edit the cluster-monitoring-config ConfigMap
          object:\n\n   ```sh\n   $ oc -n openshift-monitoring edit configmap cluster-monitoring-config\n
          \   ```\n\n3. Add enableUserWorkload: true under data/config.yaml:\n  \n
          \   ```sh\n    apiVersion: v1\n    kind: ConfigMap\n    metadata:\n      name:
          cluster-monitoring-config\n        namespace: openshift-monitoring\n    data:\n
          \     config.yaml: |\n        enableUserWorkload: true\n    ```\n\n4. Configure
          the user-workload-monitoring-config ConfigMap object:\n\n    ```sh\n    $
          oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config\n
          \   ```\n\n5. Configure a minimum retention time of 168h and minimum storage
          capacity of 40Gi\n  \n    ```sh\n    apiVersion: v1\n    kind: ConfigMap\n
          \   metadata:\n      name: user-workload-monitoring-config\n      namespace:
          openshift-user-workload-monitoring\n\n    data:\n      config.yaml: |\n
          \       prometheus:\n          retention: 168h\n          volumeClaimTemplate:\n
          \           spec:\n              resources:\n                requests:\n
          \                 storage: 40Gi\n    ```\n\n### Resources Required\n\nMinimum
          system resources required:\n\n| Operator                | Memory (MB) |
          CPU (cores) | Disk (GB) | Nodes |\n| ----------------------- | -----------
          | ----------- | --------- | ----- |\n| **Metrics**   |        750  |     0.25
          \   | 3x1       |    3  |\n| **Deployment** |        250  |     0.25    |
          -         |    1  |\n\n| Prometheus Provider  | Memory (GB) | CPU (cores)
          | Disk (GB) | Nodes |\n| --------- | ----------- | ----------- | ---------
          | ----- |\n| **[Openshift User Workload Monitoring](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)**
          |          1  |     0.1       | 2x40        |   2    |\n\nMultiple nodes
          are required to provide pod scheduling for high availability for IBM Metrics
          Operator Data Service and Prometheus.\n\nThe IBM Metrics Operator automatically
          creates 3 x 1Gi PersistentVolumeClaims to store reports as part of the data
          service, with _ReadWriteOnce_ access mode. Te PersistentVolumeClaims are
          automatically created by the ibm-metrics-operator after creating a `redhat-marketplace-pull-secret`
          and accepting the license in `marketplaceconfig`.\n\n| NAME                                |
          CAPACITY | ACCESS MODES |\n| ----------------------------------- | --------
          | ------------ |\n| rhm-data-service-rhm-data-service-0 | 1Gi | RWO |\n|
          rhm-data-service-rhm-data-service-1 | 1Gi | RWO |\n| rhm-data-service-rhm-data-service-2
          | 1Gi | RWO |\n\n### Supported Storage Providers\n\n- OpenShift Container
          Storage / OpenShift Data Foundation version 4.x, from version 4.2 or higher\n-
          IBM Cloud Block storage and IBM Cloud File storage\n- IBM Storage Suite
          for IBM Cloud Paks:\n  - File storage from IBM Spectrum Fusion/Scale \n
          \ - Block storage from IBM Spectrum Virtualize, FlashSystem or DS8K\n- Portworx
          Storage, version 2.5.5 or above\n- Amazon Elastic File Storage\n- Azure
          Disk Storage (disk.csi.azure.com)\n\n#### Known Problematic Storage Providers\n\n-
          Azure File Storage (file.csi.azure.com)\n\n### Access Modes required\n\n
          - ReadWriteOnce (RWO)\n\n### Provisioning Options supported\n\nChoose one
          of the following options to provision storage for the ibm-metrics-operator
          data-service\n\n#### Dynamic provisioning using a default StorageClass\n
          \  - A StorageClass is defined with a `metadata.annotations: storageclass.kubernetes.io/is-default-class:
          \"true\"`\n   - PersistentVolumes will be provisioned automatically for
          the generated PersistentVolumeClaims\n--- \n#### Manually create each PersistentVolumeClaim
          with a specific StorageClass\n   - Must be performed before creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`. Otherwise, the automatically
          generated PersistentVolumeClaims are immutable.\n```\napiVersion: v1\nkind:
          PersistentVolumeClaim\nmetadata:\n  labels:\n    app: rhm-data-service\n
          \ name: rhm-data-service-rhm-data-service-0\n  namespace: ibm-software-central\nspec:\n
          \ storageClassName: rook-cephfs\n  accessModes:\n  - ReadWriteOnce\n  resources:\n
          \   requests:\n      storage: 1Gi\n```\n---\n#### Manually provision each
          PersistentVolume for the generated PersistentVolumeClaims with a specific
          StorageClass\n  - May be performed before or after creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`.  \n```\napiVersion: v1\nkind:
          PersistentVolume\nmetadata:\n  name: rhm-data-service-rhm-data-service-0\nspec:\n
          \ csi:\n    driver: rook-ceph.cephfs.csi.ceph.com\n    volumeHandle: rhm-data-service-rhm-data-service-0\n
          \ capacity:\n    storage: 1Gi\n  accessModes:\n    - ReadWriteOnce\n  persistentVolumeReclaimPolicy:
          Delete\n  storageClassName: rook-cephfs\n  volumeMode: Filesystem\n  claimRef:\n
          \   kind: PersistentVolumeClaim\n    namespace: ibm-software-central\n    name:
          rhm-data-service-rhm-data-service-0\n```\n\n### Kyverno Policies\n\nThe
          IBM Metrics Operator makes a best effort to comply with the Kyverno policies
          defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Metrics Operator is not replicated\n  - Service uptime is not considered
          critial, and can be rescheduled\n- metric-state is not replicated\n  - Service
          uptime is not considered critial, and can be rescheduled\n\n### Installation\n1.
          Create or get your [pull secret](https://swc.saas.ibm.com/en-us/documentation/clusters#get-pull-secret).\n2.
          Install the IBM Metrics Operator\n3. Create a Kubernetes secret in the installed
          namespace with the name `redhat-marketplace-pull-secret` and key `PULL_SECRET`
          with the value of the pull secret.\n    ```sh\n    # Replace ${PULL_SECRET}
          with your pull secret\n    oc create secret generic redhat-marketplace-pull-secret
          -n ibm-software-central --from-literal=PULL_SECRET=${PULL_SECRET}\n    ```\n4.
          Use of the platform is governed by the:\n\n    [IBM Cloud Services Agreement](https://www.ibm.com/support/customer/csol/terms/?id=Z126-6304_WS&_ga=2.116312197.2046730452.1684328846-812467790.1684328846)
          (or other base agreement between you and IBM such as a [Passport Advantage
          Agreement](https://www.ibm.com/software/passportadvantage/pa_agreements.html?_ga=2.116312197.2046730452.1684328846-812467790.1684328846))
          and the [Service Description for the Red Hat Marketplace](https://www.ibm.com/support/customer/csol/terms/?id=i126-8719&_ga=2.83289621.2046730452.1684328846-812467790.1684328846).\n
          \   \n5. Update MarketplaceConfig to accept the license.\n    ```\n    oc
          patch marketplaceconfig marketplaceconfig -n ibm-software-central --type='merge'
          -p '{\"spec\": {\"license\": {\"accept\": true}}}'\n    ```\n6. Install
          the pull secret as a global pull secret on the cluster.\n\n    These steps
          require `oc`, `jq`, and `base64` to be available on your machine.\n\n    ```sh\n
          \   # Create the docker pull secret file using your pull secret.\n    #
          Store it in a file called entitledregistryconfigjson.\n    oc create secret
          docker-registry entitled-registry --docker-server=registry.marketplace.redhat.com
          --docker-username \"cp\" --docker-password \"${PULL_SECRET}\" --dry-run=client
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > entitledregistryconfigjson\n
          \   # Get the current global secrets on the cluster and store it as a file
          named dockerconfigjson\n    oc get secret pull-secret -n openshift-config
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > dockerconfigjson\n
          \   # Merge the two dockerconfigs together into a file called dockerconfigjson-merged.\n
          \   jq -s '.[0] * .[1]' dockerconfigjson entitledregistryconfigjson > dockerconfigjson-merged\n
          \   # Set the cluster's dockerconfig file to the new merged version.\n    oc
          set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=dockerconfigjson-merged\n
          \   ```\n  7. (Optional) Your IBM product may have installed IBM Metrics
          Operator using an `ibm-entitlement-key` for authentication to IBM Software
          Central. To authorize the automatic creation of an IBM Software Central
          account for the IBM account owning the `ibm-entitlement-key`\n      ```\n
          \     oc patch marketplaceconfig marketplaceconfig -n ibm-software-central
          --type='merge' -p '{\"spec\": {\"authorizeAccountCreation\": true}}'\n      ```\n\n###
          Why is a global pull secret required?\nIn order to successfully install
          the products hosted by the container image registry, you will need to make
          the pull secret available across the cluster. This can be achieved by applying
          the pull as a [global pull secret](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html#images-update-global-pull-secret_using-image-pull-secrets).
          For alternative approaches, please see the official OpenShift [documentation](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html).\n\n\n###
          SecurityContextConstraints requirements\n\nThe Operators and their components
          support running under the OpenShift Container Platform default restricted
          and restricted-v2 security context constraints.\n\n### Installation Namespace
          and ClusterRoleBinding requirements\n\nThe IBM Metrics Operator components
          require specific ClusterRoleBindings.\n- The metric-state component requires
          a ClusterRoleBinding for the the `view` ClusterRole.\n  - Ability to read
          non-sensitive CustomResources. \n  - The `view` ClusterRole dynamically
          adds new CustomResourceDefinitions.\n- The operator & reporter component
          requires a ClusterRoleBinding for the the `cluster-monitoring-view` ClusterRole.\n
          \ - Ability to view Prometheus metrics. \n  - The underlying ClusterRole
          RBAC often updated between OpenShift versions.\n\nDue to limitations of
          Operator Lifecycle Manager (OLM), this ClusterRoleBinding can not be provided
          dynamically for arbitrary installation target namespaces.\n\nA static ClusterRoleBinding
          is included for installation to the default namespace of `ibm-software-central`,
          and namespaces `openshift-redhat-marketplace`,  `redhat-marketplace`, `ibm-common-services`.\n\nTo
          create the ClusterRoleBindings for installation to an alternate namespace\n```\noc
          project INSTALL-NAMESPACE\noc adm policy add-cluster-role-to-user view -z
          ibm-metrics-operator-metric-state\noc adm policy add-cluster-role-to-user
          cluster-monitoring-view -z ibm-metrics-operator-controller-manager,ibm-metrics-operator-reporter\n```\n\n###
          Metric State scoping requirements\nThe metric-state Deployment obtains `get/list/watch`
          access to metered resources via the `view` ClusterRole. For operators deployed
          using Operator Lifecycle Manager (OLM), permissions are added to `clusterrole/view`
          dynamically via a generated and annotated `-view` ClusterRole. If you wish
          to meter an operator, and its Custom Resource Definitions (CRDs) are not
          deployed through OLM, one of two options are required\n1. Add the following
          label to a clusterrole that has get/list/watch access to your CRD: `rbac.authorization.k8s.io/aggregate-to-view:
          \"true\"`, thereby dynamically adding it to `clusterrole/view`\n2. Create
          a ClusterRole that has get/list/watch access to your CRD, and create a ClusterRoleBinding
          for the metric-state ServiceAccount\n\nAttempting to meter a resource with
          a MeterDefinition without the required permissions will log an `AccessDeniedError`
          in metric-state.\n\n### Disaster Recovery\n\nTo plan for disaster recovery,
          note the PhysicalVolumeClaims `rhm-data-service-rhm-data-service-N`. \n-
          In connected environments, MeterReport data upload attempts occur hourly,
          and are then removed from data-service. There is a low risk of losing much
          unreported data.\n- In an airgap environment, MeterReport data must be pulled
          from data-service and uploaded manually using [datactl](https://github.com/redhat-marketplace/datactl/).
          To prevent data loss in a disaster scenario, the data-service volumes should
          be considered in a recovery plan.\n\n### Subscription Config\n\nIt is possible
          to [configure](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md)
          how OLM deploys an Operator via the `config` field in the [Subscription](https://github.com/operator-framework/olm-book/blob/master/docs/subscriptions.md)
          object.\n\nThe IBM Metrics Operator will also read the `config` and append
          it to the operands. The primary use case is to control scheduling using
          [Tolerations](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/)
          and [NodeSelectors](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/).\n\nA
          limitation is that the `config` elements are only appended to the operands.
          The elements in the operands are not removed if the `config` is removed
          from the `Subscripion`. The operand must be modified manually, or deleted
          and recreated by the controller.\n\n### Cluster permission requirements\n\n|API
          group             |Resources              |Verbs                                     |\n|----------------------|-----------------------|------------------------------------------|\n|apps
          \                 |statefulsets           |get;list;watch                            |\n|authentication.k8s.io
          |tokenreviews           |create                                    |\n|authorization.k8s.io
          \ |subjectaccessreviews   |create                                    |\n|config.openshift.io
          \  |clusterversions        |get;list;watch                            |\n|marketplace.redhat.com|meterdefinitions
          \      |get;list;watch;create;update;patch;delete |\n|operators.coreos.com
          \ |clusterserviceversions |get;list;watch                            |\n|operators.coreos.com
          \ |subscriptions          |get;list;watch                            |\n|operators.coreos.com
          \ |operatorgroups         |get;list                                  |\n|storage.k8s.io
          \       |storageclasses         |get;list;watch                            |\n|
          \                     |namespaces             |get;list;watch                            |\n|
          \                     |configmaps             |get;list;watch                            |\n|
          \                     |services               |get;list;watch                            |\n|
          \                     |**clusterrole/view**   |                                          |\n\n\n###
          Documentation\nYou can find our documentation [here.](https://swc.saas.ibm.com/en-us/documentation/)\n\n###
          Getting help\nIf you encounter any issues while using the operators, you
          can create an issue on our [Github\nrepo](https://github.com/redhat-marketplace/redhat-marketplace-operator)
          for bugs, enhancements, or other requests. You can also visit our main page
          and\nreview our [support](https://swc.saas.ibm.com/en-us/support) and [documentation](https://swc.saas.ibm.com/en-us/documentation/).\n\n###
          Readme\nYou can find our readme [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/README.md)\n\n###
          License information\nYou can find our license information [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/LICENSE)\n"
        displayName: IBM Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        - buy
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
        - quay.io/rh-marketplace/redhat-marketplace-authcheck@sha256:1d48baed94b33491edd62a525c776b3d0866a9255c60ad14ce1aee6735ffe07f
        - quay.io/rh-marketplace/redhat-marketplace-data-service@sha256:9b82b79f9324bb0c394b42e45e5db11854b86d70a40d6b5951ae3af873ab9760
        - quay.io/rh-marketplace/redhat-marketplace-metric-state@sha256:f59cb18b99ccf9c184b0e3cdb941ab90a54262dff177177eaf3e6318dda36213
        - quay.io/rh-marketplace/redhat-marketplace-reporter@sha256:4c46af0f581620fbd0dac4005e31a76f2746eb3b60a881f5fcb13c1547b15c98
        - registry.connect.redhat.com/rh-marketplace/ibm-metrics-operator-bundle@sha256:a9294ebb6036eca0746bb1ec8d4155727e4dc7ff25060c70bbd10c0604558c37
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 2.23.1
      entries:
      - name: ibm-metrics-operator.v2.23.1
        version: 2.23.1
      name: stable
    defaultChannel: stable
    packageName: ibm-metrics-operator
    provider:
      name: Red Hat Marketplace
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-hive-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hive-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/hive-operator@sha256:747e784c89fcd8cd7b1fd7868d4c768dd971d6859c5f261fe8cb8eaf72f7946b
          description: Stackable Operator for Apache Hive
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/hive-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for HiveClusterSpec via `CustomResource`
            displayName: hiveclusters.hive.stackable.tech
            kind: HiveCluster
            name: hiveclusters.hive.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Hive
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hive
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/hive-operator@sha256:747e784c89fcd8cd7b1fd7868d4c768dd971d6859c5f261fe8cb8eaf72f7946b
        - registry.connect.redhat.com/stackable/stackable-apache-hive-operator@sha256:e5e7f52e18a640ea5a7b11897b9609352c9e7dd1c44ff26d387dae0a2ac4146e
        version: 25.11.0
      entries:
      - name: hive-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-hive-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-acm-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-acm-controller.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acm.services.k8s.aws/v1alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/acm-controller:1.3.1
          createdAt: "2026-01-06T21:08:05Z"
          description: AWS ACM controller is a service controller for managing ACM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Certificate represents the state of an AWS acm Certificate
              resource.
            displayName: Certificate
            kind: Certificate
            name: certificates.acm.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage AWS Certificate Manager (ACM) resources in AWS from within your Kubernetes cluster.

          **About Amazon ACM**

          AWS Certificate Manager (ACM) handles the complexity of creating, storing, and renewing public and private SSL/TLS X.509 certificates and keys that protect your AWS websites and applications. You can provide certificates for your [integrated AWS services](https://docs.aws.amazon.com/acm/latest/userguide/acm-services.html) either by issuing them directly with ACM or by [importing](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) third-party certificates into the ACM management system. ACM certificates can secure singular domain names, multiple specific domain names, wildcard domains, or combinations of these. ACM wildcard certificates can protect an unlimited number of subdomains. You can also [export](https://docs.aws.amazon.com/acm/latest/userguide/export-private.html) ACM certificates signed by AWS Private CA for use anywhere in your internal PKI.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon ACM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acm
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ACM Developer Resources
          url: https://aws.amazon.com/certificate-manager/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: acm maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/acm-controller:1.3.1
        - quay.io/community-operator-pipeline-prod/ack-acm-controller@sha256:24162be9245765e977980ef0868d3ed5b823ef412a14cfefdc7c2fcf36d00036
        version: 1.3.1
      entries:
      - name: ack-acm-controller.v1.3.1
        version: 1.3.1
      - name: ack-acm-controller.v1.3.0
        version: 1.3.0
      - name: ack-acm-controller.v1.2.0
        version: 1.2.0
      - name: ack-acm-controller.v1.1.2
        version: 1.1.2
      - name: ack-acm-controller.v1.1.1
        version: 1.1.1
      - name: ack-acm-controller.v1.1.0
        version: 1.1.0
      - name: ack-acm-controller.v1.0.13
        version: 1.0.13
      - name: ack-acm-controller.v1.0.12
        version: 1.0.12
      - name: ack-acm-controller.v1.0.11
        version: 1.0.11
      - name: ack-acm-controller.v1.0.10
        version: 1.0.10
      - name: ack-acm-controller.v1.0.9
        version: 1.0.9
      - name: ack-acm-controller.v1.0.8
        version: 1.0.8
      - name: ack-acm-controller.v1.0.7
        version: 1.0.7
      - name: ack-acm-controller.v1.0.6
        version: 1.0.6
      - name: ack-acm-controller.v1.0.5
        version: 1.0.5
      - name: ack-acm-controller.v1.0.4
        version: 1.0.4
      - name: ack-acm-controller.v1.0.1
        version: 1.0.1
      - name: ack-acm-controller.v1.0.0
        version: 1.0.0
      - name: ack-acm-controller.v0.0.20
        version: 0.0.20
      - name: ack-acm-controller.v0.0.19
        version: 0.0.19
      - name: ack-acm-controller.v0.0.18
        version: 0.0.18
      - name: ack-acm-controller.v0.0.17
        version: 0.0.17
      - name: ack-acm-controller.v0.0.16
        version: 0.0.16
      - name: ack-acm-controller.v0.0.12
        version: 0.0.12
      - name: ack-acm-controller.v0.0.10
        version: 0.0.10
      - name: ack-acm-controller.v0.0.9
        version: 0.0.9
      - name: ack-acm-controller.v0.0.6
        version: 0.0.6
      - name: ack-acm-controller.v0.0.5
        version: 0.0.5
      - name: ack-acm-controller.v0.0.4
        version: 0.0.4
      - name: ack-acm-controller.v0.0.2
        version: 0.0.2
      - name: ack-acm-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-acm-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: External Secrets
      provider-url: https://external-secrets.io
    name: external-secrets-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: external-secrets-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": "1234"
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "key": "provider-key",
                      "property": "provider-key-property",
                      "version": "provider-key-version"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "name": "hello-world"
                },
                "spec": {
                  "externalSecretName": "hello-world-es",
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "provider-key",
                          "property": "provider-key-property",
                          "version": "provider-key-version"
                        },
                        "secretKey": "secret-key-to-be-managed"
                      }
                    ],
                    "dataFrom": [
                      {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "SecretStore",
                      "name": "secret-store-name"
                    },
                    "target": {
                      "creationPolicy": "Merge",
                      "name": "my-secret",
                      "template": {
                        "data": {
                          "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                        },
                        "metadata": {
                          "annotations": {},
                          "labels": {}
                        },
                        "templateFrom": [
                          {
                            "configMap": {
                              "items": [
                                {
                                  "key": "alertmanager.yaml"
                                }
                              ],
                              "name": "alertmanager"
                            }
                          }
                        ],
                        "type": "kubernetes.io/dockerconfigjson"
                      }
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "cool": "label"
                    }
                  },
                  "refreshTime": "1m"
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": 1234
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "extract": {
                        "conversionStrategy": "Default",
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    },
                    {
                      "find": {
                        "conversionStrategy": "Unicode",
                        "name": {
                          "regexp": ".*foobar.*"
                        },
                        "path": "path-to-filter",
                        "tags": {
                          "foo": "bar"
                        }
                      }
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "deletionPolicy": "Retain",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.external-secrets.io/v1alpha1",
                "kind": "OperatorConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "affinity": {},
                  "certController": {
                    "affinity": {},
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "requeueInterval": "5m",
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  },
                  "concurrent": 1,
                  "controllerClass": "",
                  "crds": {
                    "createClusterExternalSecret": true,
                    "createClusterSecretStore": true
                  },
                  "createOperator": true,
                  "deploymentAnnotations": {},
                  "extraArgs": {},
                  "extraEnv": [],
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/external-secrets/external-secrets",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "installCRDs": false,
                  "leaderElect": false,
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": "",
                  "processClusterExternalSecret": true,
                  "processClusterStore": true,
                  "prometheus": {
                    "enabled": false,
                    "service": {
                      "port": 8080
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 1,
                  "resources": {},
                  "scopedNamespace": "",
                  "scopedRBAC": false,
                  "securityContext": {},
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": ""
                  },
                  "tolerations": [],
                  "webhook": {
                    "affinity": {},
                    "certCheckInterval": "5m",
                    "certDir": "/tmp/certs",
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
          createdAt: "2024-12-03T10:44:19Z"
          description: Operator to configure external-secrets helm-chart based operator
          operatorframework.io/cluster-monitoring: "true"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/external-secrets/external-secrets-helm-operator
          support: external-secrets
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster scoped resource that allows you to manage ExternalSecrets
              across namespaces
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1beta1
          - kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1alpha1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1beta1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1beta1
          - kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1alpha1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1beta1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1beta1
          - kind: Fake
            name: fakes.generators.external-secrets.io
            version: v1alpha1
          - kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Configures external-secrets helm-chart based operator
            displayName: OperatorConfig
            kind: OperatorConfig
            name: operatorconfigs.operator.external-secrets.io
            version: v1alpha1
          - kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1alpha1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1beta1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1beta1
          - kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK (Helm version) to configure **[official external-secrets operator helm chart](https://github.com/external-secrets/external-secrets)**, so it can be installed via OLM without having to do any change on current Helm Charts.

          Before any other resources provided by this Operator can be deployed, it is essential to create an
          OperatorConfig resource.

          The usual Helm Chart file `values.yaml`, like:
          ```yaml
          prometheus:
            enabled: true
            service:
              port: 8080
          resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          need to be encapsulated into a new custom resource called `OperatorConfig`:
          ```yaml
          apiVersion: operator.external-secrets.io/v1alpha1
          kind: OperatorConfig
          metadata:
            name: cluster
          spec:
            prometheus:
              enabled: true
              service:
                port: 8080
            resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          Once the OperatorConfig resource is deployed, the operator will create all helm chart resources, using the custom resource name as a preffix for all resources names, like for example a `Deployment` called `cluster-external-secrets`.

          ## Documentation

          * [Upstream Documentation](https://external-secrets.io)
          * [Helm Operator Install](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/install.md)
          * [Helm Operator Development](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/development.md)
          * [Helm Operator Release](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/release.md)

          ## Contributing

          You can contribute by:

          * Raising any issues you find using External Secrets Operator
          * Fixing issues by opening [Pull Requests](https://github.com/external-secrets/external-secrets-helm-operator/pulls)
          * Submitting a patch or opening a PR
          * Improving documentation
          * Talking about External Secrets Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/external-secrets/external-secrets-helm-operator/issues).

          ## License

          External Secrets Operator is under Apache 2.0 license. See the [LICENSE](LICENSE) file for details.
        displayName: External Secrets Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secrets
        - secrets-manager
        - vault
        - aws
        - azure
        - google
        - ibm
        - akeyless
        - yandex
        - gitlab
        - oracle
        links:
        - name: External Secrets Operator
          url: https://external-secrets.io
        - name: GitHub
          url: https://github.com/external-secrets/external-secrets
        - name: Slack
          url: https://kubernetes.slack.com/messages/external-secrets
        maintainers:
        - email: contact@external-secrets.io
          name: external-secrets community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: External Secrets
          url: https://external-secrets.io
        relatedImages:
        - ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
        - quay.io/community-operator-pipeline-prod/external-secrets-operator@sha256:6fa2ddca55d1d134b0938b47ea8a861de7408fa566ad806b200a379b8500a2a1
        version: 0.11.0
      entries:
      - name: external-secrets-operator.v0.11.0
        version: 0.11.0
      - name: external-secrets-operator.v0.10.7
        version: 0.10.7
      - name: external-secrets-operator.v0.10.6
        version: 0.10.6
      - name: external-secrets-operator.v0.10.5
        version: 0.10.5
      - name: external-secrets-operator.v0.10.4
        version: 0.10.4
      - name: external-secrets-operator.v0.10.3
        version: 0.10.3
      - name: external-secrets-operator.v0.10.2
        version: 0.10.2
      - name: external-secrets-operator.v0.10.1
        version: 0.10.1
      - name: external-secrets-operator.v0.10.0
        version: 0.10.0
      - name: external-secrets-operator.v0.9.20
        version: 0.9.20
      - name: external-secrets-operator.v0.9.19
        version: 0.9.19
      - name: external-secrets-operator.v0.9.18
        version: 0.9.18
      - name: external-secrets-operator.v0.9.17
        version: 0.9.17
      - name: external-secrets-operator.v0.9.16
        version: 0.9.16
      - name: external-secrets-operator.v0.9.15-2
        version: 0.9.15-2
      - name: external-secrets-operator.v0.9.14
        version: 0.9.14
      - name: external-secrets-operator.v0.9.13
        version: 0.9.13
      - name: external-secrets-operator.v0.9.12
        version: 0.9.12
      - name: external-secrets-operator.v0.9.11
        version: 0.9.11
      - name: external-secrets-operator.v0.9.10
        version: 0.9.10
      - name: external-secrets-operator.v0.9.9
        version: 0.9.9
      - name: external-secrets-operator.v0.9.8
        version: 0.9.8
      - name: external-secrets-operator.v0.9.7
        version: 0.9.7
      - name: external-secrets-operator.v0.9.6
        version: 0.9.6
      - name: external-secrets-operator.v0.9.5
        version: 0.9.5
      - name: external-secrets-operator.v0.9.4
        version: 0.9.4
      - name: external-secrets-operator.v0.9.3
        version: 0.9.3
      - name: external-secrets-operator.v0.9.2
        version: 0.9.2
      - name: external-secrets-operator.v0.9.1
        version: 0.9.1
      - name: external-secrets-operator.v0.9.0
        version: 0.9.0
      - name: external-secrets-operator.v0.8.7
        version: 0.8.7
      - name: external-secrets-operator.v0.8.6
        version: 0.8.6
      - name: external-secrets-operator.v0.8.5
        version: 0.8.5
      - name: external-secrets-operator.v0.8.4
        version: 0.8.4
      - name: external-secrets-operator.v0.8.3
        version: 0.8.3
      - name: external-secrets-operator.v0.8.2
        version: 0.8.2
      - name: external-secrets-operator.v0.8.1
        version: 0.8.1
      - name: external-secrets-operator.v0.8.0
        version: 0.8.0
      - name: external-secrets-operator.v0.7.2
        version: 0.7.2
      - name: external-secrets-operator.v0.7.1
        version: 0.7.1
      - name: external-secrets-operator.v0.7.0
        version: 0.7.0
      - name: external-secrets-operator.v0.7.0-rc1
        version: 0.7.0-rc1
      - name: external-secrets-operator.v0.6.1
        version: 0.6.1
      - name: external-secrets-operator.v0.6.0
        version: 0.6.0
      - name: external-secrets-operator.v0.6.0-rc1
        version: 0.6.0-rc1
      - name: external-secrets-operator.v0.5.9
        version: 0.5.9
      - name: external-secrets-operator.v0.5.8
        version: 0.5.8
      - name: external-secrets-operator.v0.5.7
        version: 0.5.7
      - name: external-secrets-operator.v0.5.6
        version: 0.5.6
      - name: external-secrets-operator.v0.5.5
        version: 0.5.5
      - name: external-secrets-operator.v0.5.4
        version: 0.5.4
      - name: external-secrets-operator.v0.5.3
        version: 0.5.3
      - name: external-secrets-operator.v0.5.2
        version: 0.5.2
      - name: external-secrets-operator.v0.5.1
        version: 0.5.1
      - name: external-secrets-operator.v0.5.0
        version: 0.5.0
      - name: external-secrets-operator.v0.4.4
        version: 0.4.4
      - name: external-secrets-operator.v0.4.3
        version: 0.4.3
      - name: external-secrets-operator.v0.4.2
        version: 0.4.2
      - name: external-secrets-operator.v0.4.1
        version: 0.4.1
      - name: external-secrets-operator.v0.3.11
        version: 0.3.11
      - name: external-secrets-operator.v0.3.10
        version: 0.3.10
      - name: external-secrets-operator.v0.3.9
        version: 0.3.9
      - name: external-secrets-operator.v0.3.8
        version: 0.3.8
      name: alpha
    - currentCSV: external-secrets-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": "1234"
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "key": "provider-key",
                      "property": "provider-key-property",
                      "version": "provider-key-version"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "name": "hello-world"
                },
                "spec": {
                  "externalSecretName": "hello-world-es",
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "provider-key",
                          "property": "provider-key-property",
                          "version": "provider-key-version"
                        },
                        "secretKey": "secret-key-to-be-managed"
                      }
                    ],
                    "dataFrom": [
                      {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "SecretStore",
                      "name": "secret-store-name"
                    },
                    "target": {
                      "creationPolicy": "Merge",
                      "name": "my-secret",
                      "template": {
                        "data": {
                          "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                        },
                        "metadata": {
                          "annotations": {},
                          "labels": {}
                        },
                        "templateFrom": [
                          {
                            "configMap": {
                              "items": [
                                {
                                  "key": "alertmanager.yaml"
                                }
                              ],
                              "name": "alertmanager"
                            }
                          }
                        ],
                        "type": "kubernetes.io/dockerconfigjson"
                      }
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "cool": "label"
                    }
                  },
                  "refreshTime": "1m"
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": 1234
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "extract": {
                        "conversionStrategy": "Default",
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    },
                    {
                      "find": {
                        "conversionStrategy": "Unicode",
                        "name": {
                          "regexp": ".*foobar.*"
                        },
                        "path": "path-to-filter",
                        "tags": {
                          "foo": "bar"
                        }
                      }
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "deletionPolicy": "Retain",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.external-secrets.io/v1alpha1",
                "kind": "OperatorConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "affinity": {},
                  "certController": {
                    "affinity": {},
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "requeueInterval": "5m",
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  },
                  "concurrent": 1,
                  "controllerClass": "",
                  "crds": {
                    "createClusterExternalSecret": true,
                    "createClusterSecretStore": true
                  },
                  "createOperator": true,
                  "deploymentAnnotations": {},
                  "extraArgs": {},
                  "extraEnv": [],
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/external-secrets/external-secrets",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "installCRDs": false,
                  "leaderElect": false,
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": "",
                  "processClusterExternalSecret": true,
                  "processClusterStore": true,
                  "prometheus": {
                    "enabled": false,
                    "service": {
                      "port": 8080
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 1,
                  "resources": {},
                  "scopedNamespace": "",
                  "scopedRBAC": false,
                  "securityContext": {},
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": ""
                  },
                  "tolerations": [],
                  "webhook": {
                    "affinity": {},
                    "certCheckInterval": "5m",
                    "certDir": "/tmp/certs",
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
          createdAt: "2024-12-03T10:44:19Z"
          description: Operator to configure external-secrets helm-chart based operator
          operatorframework.io/cluster-monitoring: "true"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/external-secrets/external-secrets-helm-operator
          support: external-secrets
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster scoped resource that allows you to manage ExternalSecrets
              across namespaces
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1beta1
          - kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1alpha1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1beta1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1beta1
          - kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1alpha1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1beta1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1beta1
          - kind: Fake
            name: fakes.generators.external-secrets.io
            version: v1alpha1
          - kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Configures external-secrets helm-chart based operator
            displayName: OperatorConfig
            kind: OperatorConfig
            name: operatorconfigs.operator.external-secrets.io
            version: v1alpha1
          - kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1alpha1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1beta1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1beta1
          - kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK (Helm version) to configure **[official external-secrets operator helm chart](https://github.com/external-secrets/external-secrets)**, so it can be installed via OLM without having to do any change on current Helm Charts.

          Before any other resources provided by this Operator can be deployed, it is essential to create an
          OperatorConfig resource.

          The usual Helm Chart file `values.yaml`, like:
          ```yaml
          prometheus:
            enabled: true
            service:
              port: 8080
          resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          need to be encapsulated into a new custom resource called `OperatorConfig`:
          ```yaml
          apiVersion: operator.external-secrets.io/v1alpha1
          kind: OperatorConfig
          metadata:
            name: cluster
          spec:
            prometheus:
              enabled: true
              service:
                port: 8080
            resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          Once the OperatorConfig resource is deployed, the operator will create all helm chart resources, using the custom resource name as a preffix for all resources names, like for example a `Deployment` called `cluster-external-secrets`.

          ## Documentation

          * [Upstream Documentation](https://external-secrets.io)
          * [Helm Operator Install](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/install.md)
          * [Helm Operator Development](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/development.md)
          * [Helm Operator Release](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/release.md)

          ## Contributing

          You can contribute by:

          * Raising any issues you find using External Secrets Operator
          * Fixing issues by opening [Pull Requests](https://github.com/external-secrets/external-secrets-helm-operator/pulls)
          * Submitting a patch or opening a PR
          * Improving documentation
          * Talking about External Secrets Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/external-secrets/external-secrets-helm-operator/issues).

          ## License

          External Secrets Operator is under Apache 2.0 license. See the [LICENSE](LICENSE) file for details.
        displayName: External Secrets Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secrets
        - secrets-manager
        - vault
        - aws
        - azure
        - google
        - ibm
        - akeyless
        - yandex
        - gitlab
        - oracle
        links:
        - name: External Secrets Operator
          url: https://external-secrets.io
        - name: GitHub
          url: https://github.com/external-secrets/external-secrets
        - name: Slack
          url: https://kubernetes.slack.com/messages/external-secrets
        maintainers:
        - email: contact@external-secrets.io
          name: external-secrets community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: External Secrets
          url: https://external-secrets.io
        relatedImages:
        - ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
        - quay.io/community-operator-pipeline-prod/external-secrets-operator@sha256:6fa2ddca55d1d134b0938b47ea8a861de7408fa566ad806b200a379b8500a2a1
        version: 0.11.0
      entries:
      - name: external-secrets-operator.v0.11.0
        version: 0.11.0
      - name: external-secrets-operator.v0.10.7
        version: 0.10.7
      - name: external-secrets-operator.v0.10.6
        version: 0.10.6
      - name: external-secrets-operator.v0.10.5
        version: 0.10.5
      - name: external-secrets-operator.v0.10.4
        version: 0.10.4
      - name: external-secrets-operator.v0.10.3
        version: 0.10.3
      - name: external-secrets-operator.v0.10.2
        version: 0.10.2
      - name: external-secrets-operator.v0.10.1
        version: 0.10.1
      - name: external-secrets-operator.v0.10.0
        version: 0.10.0
      - name: external-secrets-operator.v0.9.20
        version: 0.9.20
      - name: external-secrets-operator.v0.9.19
        version: 0.9.19
      - name: external-secrets-operator.v0.9.18
        version: 0.9.18
      - name: external-secrets-operator.v0.9.17
        version: 0.9.17
      - name: external-secrets-operator.v0.9.16
        version: 0.9.16
      - name: external-secrets-operator.v0.9.15-2
        version: 0.9.15-2
      - name: external-secrets-operator.v0.9.14
        version: 0.9.14
      - name: external-secrets-operator.v0.9.13
        version: 0.9.13
      - name: external-secrets-operator.v0.9.12
        version: 0.9.12
      - name: external-secrets-operator.v0.9.11
        version: 0.9.11
      - name: external-secrets-operator.v0.9.10
        version: 0.9.10
      - name: external-secrets-operator.v0.9.9
        version: 0.9.9
      - name: external-secrets-operator.v0.9.8
        version: 0.9.8
      - name: external-secrets-operator.v0.9.7
        version: 0.9.7
      - name: external-secrets-operator.v0.9.6
        version: 0.9.6
      - name: external-secrets-operator.v0.9.5
        version: 0.9.5
      - name: external-secrets-operator.v0.9.4
        version: 0.9.4
      - name: external-secrets-operator.v0.9.3
        version: 0.9.3
      - name: external-secrets-operator.v0.9.2
        version: 0.9.2
      - name: external-secrets-operator.v0.9.1
        version: 0.9.1
      - name: external-secrets-operator.v0.9.0
        version: 0.9.0
      - name: external-secrets-operator.v0.8.7
        version: 0.8.7
      - name: external-secrets-operator.v0.8.6
        version: 0.8.6
      - name: external-secrets-operator.v0.8.5
        version: 0.8.5
      - name: external-secrets-operator.v0.8.4
        version: 0.8.4
      - name: external-secrets-operator.v0.8.3
        version: 0.8.3
      - name: external-secrets-operator.v0.8.2
        version: 0.8.2
      - name: external-secrets-operator.v0.8.1
        version: 0.8.1
      - name: external-secrets-operator.v0.8.0
        version: 0.8.0
      - name: external-secrets-operator.v0.7.2
        version: 0.7.2
      - name: external-secrets-operator.v0.7.1
        version: 0.7.1
      - name: external-secrets-operator.v0.7.0
        version: 0.7.0
      - name: external-secrets-operator.v0.7.0-rc1
        version: 0.7.0-rc1
      - name: external-secrets-operator.v0.6.1
        version: 0.6.1
      - name: external-secrets-operator.v0.6.0
        version: 0.6.0
      - name: external-secrets-operator.v0.5.9
        version: 0.5.9
      - name: external-secrets-operator.v0.5.8
        version: 0.5.8
      - name: external-secrets-operator.v0.5.7
        version: 0.5.7
      - name: external-secrets-operator.v0.5.6
        version: 0.5.6
      - name: external-secrets-operator.v0.5.5
        version: 0.5.5
      - name: external-secrets-operator.v0.5.4
        version: 0.5.4
      - name: external-secrets-operator.v0.5.3
        version: 0.5.3
      - name: external-secrets-operator.v0.5.2
        version: 0.5.2
      - name: external-secrets-operator.v0.5.1
        version: 0.5.1
      - name: external-secrets-operator.v0.5.0
        version: 0.5.0
      - name: external-secrets-operator.v0.4.4
        version: 0.4.4
      - name: external-secrets-operator.v0.4.2
        version: 0.4.2
      - name: external-secrets-operator.v0.4.1
        version: 0.4.1
      - name: external-secrets-operator.v0.3.11
        version: 0.3.11
      - name: external-secrets-operator.v0.3.10
        version: 0.3.10
      - name: external-secrets-operator.v0.3.9
        version: 0.3.9
      name: stable
    defaultChannel: alpha
    packageName: external-secrets-operator
    provider:
      name: External Secrets
      url: https://external-secrets.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhsso-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhsso-operator.7.5.1-opr-005
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "example-keycloakrealm"
                },
                "spec": {
                  "realm": {
                    "id": "basic",
                    "realm": "basic",
                    "enabled": true,
                    "displayName": "Basic Realm"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakBackup",
                "metadata": {
                  "name": "example-keycloakbackup"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "client-secret",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  },
                  "client": {
                    "clientId": "client-secret",
                    "secret": "client-secret",
                    "clientAuthenticatorType": "client-secret"
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakUser",
                "metadata": {
                  "name": "example-realm-user",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "user": {
                    "username": "realm_user",
                    "firstName": "John",
                    "lastName": "Doe",
                    "email": "user@example.com",
                    "enabled": true,
                    "emailVerified": false
                  },
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "False"
          containerImage: registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:66577ec32a9a975f304e52b8ab49b9f7602158dcab1ef5d8c28a5d3455491336
          createdAt: "2021-08-09 00:00:00"
          description: An Operator for installing and managing Red Hat Single Sign-On
          olm.skipRange: <7.5.0
          repository: https://github.com/keycloak/keycloak-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Red Hat Single Sign-On Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Realm
            displayName: KeycloakRealm
            kind: KeycloakRealm
            name: keycloakrealms.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Backup
            displayName: KeycloakBackup
            kind: KeycloakBackup
            name: keycloakbackups.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Client
            displayName: KeycloakClient
            kind: KeycloakClient
            name: keycloakclients.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On User
            displayName: KeycloakUser
            kind: KeycloakUser
            name: keycloakusers.keycloak.org
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Red Hat Single Sign-On.

          Red Hat Single Sign-On lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
          * Import Keycloak Clients
          * Import Keycloak Users
          * Create scheduled backups of the database
        displayName: Red Hat Single Sign-On Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://access.redhat.com/products/red-hat-single-sign-on
        - name: Keycloak
          url: https://www.keycloak.org/
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat Customer Service
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:5f0840a69642d13016430151892ec987fd67e711563b1dfb1a57353037c3bf79
        - registry.redhat.io/rh-sso-7/sso7-rhel8-init-container@sha256:614a9b1d7975769e8559e0b8c1578d16f6e3f7fee0778283797f4d62f5fc2100
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator-bundle@sha256:9fcdfa4615b91a5bb919aff71fc4df046365b2ee6d540b5f5f47f9ccaeb9877c
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:66577ec32a9a975f304e52b8ab49b9f7602158dcab1ef5d8c28a5d3455491336
        - registry.redhat.io/rh-sso-7/sso75-openj9-openshift-rhel8@sha256:2d4ea7226f43e7e8e8d3fcef6d425eb5104a15acf07791355033300b80db2901
        version: 7.5.1-opr-005
      entries:
      - name: rhsso-operator.7.5.1-opr-005
        version: 7.5.1-opr-005
      - name: rhsso-operator.7.5.1-opr-004
        version: 7.5.1-opr-004
      - name: rhsso-operator.7.5.1-opr-003
        version: 7.5.1-opr-003
      - name: rhsso-operator.7.5.1-opr-002
        version: 7.5.1-opr-002
      - name: rhsso-operator.7.5.1-opr-001
        version: 7.5.1-opr-001
      - name: rhsso-operator.7.5.0
        version: 7.5.0
      name: alpha
    - currentCSV: rhsso-operator.7.6.12-opr-005
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "example-keycloakrealm"
                },
                "spec": {
                  "realm": {
                    "id": "basic",
                    "realm": "basic",
                    "enabled": true,
                    "displayName": "Basic Realm"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakBackup",
                "metadata": {
                  "name": "example-keycloakbackup"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "client-secret",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  },
                  "client": {
                    "clientId": "client-secret",
                    "secret": "client-secret",
                    "clientAuthenticatorType": "client-secret"
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakUser",
                "metadata": {
                  "name": "example-realm-user",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "user": {
                    "username": "realm_user",
                    "firstName": "John",
                    "lastName": "Doe",
                    "email": "user@example.com",
                    "enabled": true,
                    "emailVerified": false
                  },
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "False"
          containerImage: registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:1d3048c0a324abbd8d47d9dffb42030e9cb4803e263a613451ba1f37424c427b
          createdAt: "2021-08-09 00:00:00"
          description: An Operator for installing and managing Red Hat Single Sign-On
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Red Hat Single Sign-On Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Realm
            displayName: KeycloakRealm
            kind: KeycloakRealm
            name: keycloakrealms.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Backup
            displayName: KeycloakBackup
            kind: KeycloakBackup
            name: keycloakbackups.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Client
            displayName: KeycloakClient
            kind: KeycloakClient
            name: keycloakclients.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On User
            displayName: KeycloakUser
            kind: KeycloakUser
            name: keycloakusers.keycloak.org
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Red Hat Single Sign-On.

          Red Hat Single Sign-On lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
          * Import Keycloak Clients
          * Import Keycloak Users
          * Create scheduled backups of the database
        displayName: Red Hat Single Sign-On Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://access.redhat.com/products/red-hat-single-sign-on
        - name: Keycloak
          url: https://www.keycloak.org/
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat Customer Service
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:1d3048c0a324abbd8d47d9dffb42030e9cb4803e263a613451ba1f37424c427b
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/rh-sso-7/sso7-rhel8-init-container@sha256:2e63f15a19d60447d9dfd11b0d04ba634932a9c43e63773051069cdc1f5ad504
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator-bundle@sha256:c542bd411eff7a4e875b942b23452aeed8e5d60e606f87a73e16f48420fa2400
        version: 7.6.12-opr-005
      entries:
      - name: rhsso-operator.7.6.12-opr-005
        version: 7.6.12-opr-005
      - name: rhsso-operator.7.6.12-opr-004
        version: 7.6.12-opr-004
      - name: rhsso-operator.7.6.12-opr-003
        version: 7.6.12-opr-003
      - name: rhsso-operator.7.6.12-opr-002
        version: 7.6.12-opr-002
      - name: rhsso-operator.7.6.12-opr-001
        version: 7.6.12-opr-001
      - name: rhsso-operator.7.6.11-opr-006
        version: 7.6.11-opr-006
      - name: rhsso-operator.7.6.11-opr-005
        version: 7.6.11-opr-005
      - name: rhsso-operator.7.6.11-opr-004
        version: 7.6.11-opr-004
      - name: rhsso-operator.7.6.11-opr-003
        version: 7.6.11-opr-003
      - name: rhsso-operator.7.6.11-opr-002
        version: 7.6.11-opr-002
      - name: rhsso-operator.7.6.11-opr-001
        version: 7.6.11-opr-001
      - name: rhsso-operator.7.6.10-opr-001
        version: 7.6.10-opr-001
      - name: rhsso-operator.7.6.9-opr-003
        version: 7.6.9-opr-003
      - name: rhsso-operator.7.6.9-opr-002
        version: 7.6.9-opr-002
      - name: rhsso-operator.7.6.9-opr-001
        version: 7.6.9-opr-001
      - name: rhsso-operator.7.6.8-opr-002
        version: 7.6.8-opr-002
      - name: rhsso-operator.7.6.8-opr-001
        version: 7.6.8-opr-001
      - name: rhsso-operator.7.6.7-opr-002
        version: 7.6.7-opr-002
      - name: rhsso-operator.7.6.7-opr-001
        version: 7.6.7-opr-001
      - name: rhsso-operator.7.6.6-opr-004
        version: 7.6.6-opr-004
      - name: rhsso-operator.7.6.6-opr-003
        version: 7.6.6-opr-003
      - name: rhsso-operator.7.6.6-opr-002
        version: 7.6.6-opr-002
      - name: rhsso-operator.7.6.6-opr-001
        version: 7.6.6-opr-001
      - name: rhsso-operator.7.6.5-opr-004
        version: 7.6.5-opr-004
      - name: rhsso-operator.7.6.5-opr-003
        version: 7.6.5-opr-003
      - name: rhsso-operator.7.6.5-opr-002
        version: 7.6.5-opr-002
      - name: rhsso-operator.7.6.5-opr-001
        version: 7.6.5-opr-001
      - name: rhsso-operator.7.6.4-opr-003
        version: 7.6.4-opr-003
      - name: rhsso-operator.7.6.4-opr-002
        version: 7.6.4-opr-002
      - name: rhsso-operator.7.6.4-opr-001
        version: 7.6.4-opr-001
      - name: rhsso-operator.7.6.3-opr-002
        version: 7.6.3-opr-002
      - name: rhsso-operator.7.6.3-opr-001
        version: 7.6.3-opr-001
      - name: rhsso-operator.7.6.2-opr-003
        version: 7.6.2-opr-003
      - name: rhsso-operator.7.6.2-opr-002
        version: 7.6.2-opr-002
      - name: rhsso-operator.7.6.2-opr-001
        version: 7.6.2-opr-001
      - name: rhsso-operator.7.6.1-opr-005
        version: 7.6.1-opr-005
      - name: rhsso-operator.7.6.1-opr-004
        version: 7.6.1-opr-004
      - name: rhsso-operator.7.6.1-opr-003
        version: 7.6.1-opr-003
      - name: rhsso-operator.7.6.1-opr-002
        version: 7.6.1-opr-002
      - name: rhsso-operator.7.6.1-opr-001
        version: 7.6.1-opr-001
      - name: rhsso-operator.7.6.0-opr-005
        version: 7.6.0-opr-005
      - name: rhsso-operator.7.6.0-opr-004
        version: 7.6.0-opr-004
      - name: rhsso-operator.7.6.0-opr-003
        version: 7.6.0-opr-003
      - name: rhsso-operator.7.6.0-opr-002
        version: 7.6.0-opr-002
      - name: rhsso-operator.7.6.0-opr-001
        version: 7.6.0-opr-001
      - name: rhsso-operator.7.5.2-opr-003
        version: 7.5.2-opr-003
      - name: rhsso-operator.7.5.2-opr-002
        version: 7.5.2-opr-002
      - name: rhsso-operator.7.5.2-opr-001
        version: 7.5.2-opr-001
      - name: rhsso-operator.7.5.1-opr-011
        version: 7.5.1-opr-011
      - name: rhsso-operator.7.5.1-opr-010
        version: 7.5.1-opr-010
      - name: rhsso-operator.7.5.1-opr-009
        version: 7.5.1-opr-009
      - name: rhsso-operator.7.5.1-opr-009-0.1646836600.p
        version: 7.5.1-opr-009+0.1646836600.p
      - name: rhsso-operator.7.5.1-opr-008
        version: 7.5.1-opr-008
      - name: rhsso-operator.7.5.1-opr-007
        version: 7.5.1-opr-007
      - name: rhsso-operator.7.5.1-opr-006
        version: 7.5.1-opr-006
      - name: rhsso-operator.7.5.1-opr-005
        version: 7.5.1-opr-005
      - name: rhsso-operator.7.5.1-opr-004
        version: 7.5.1-opr-004
      - name: rhsso-operator.7.5.1-opr-003
        version: 7.5.1-opr-003
      - name: rhsso-operator.7.5.1-opr-002
        version: 7.5.1-opr-002
      - name: rhsso-operator.7.5.1-opr-001
        version: 7.5.1-opr-001
      - name: rhsso-operator.7.5.0
        version: 7.5.0
      name: stable
    defaultChannel: stable
    packageName: rhsso-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: amq7-interconnect-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq7-interconnect-operator.v1.10.20
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"interconnectedcloud.github.io/v1alpha1","kind":"Interconnect","metadata":{"name":"amq-interconnect"},"spec":{"deploymentPlan":{"size":2,"role":"interior","placement":"Any"}}}]'
          capabilities: Basic Install
          categories: Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
          createdAt: "2019-06-28T22:00:00Z"
          description: Layer 7 Networking
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: https://github.com/interconnectedcloud/qdr-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An instance of AMQ Interconnect
            displayName: Red Hat Integration - AMQ Interconnect
            kind: Interconnect
            name: interconnects.interconnectedcloud.github.io
            version: v1alpha1
        description: |2

          AMQ Interconnect is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and IoT/edge deployments. AMQ Interconnect transparently learns the addresses of messaging endpoints (such as clients, servers, and message brokers) and flexibly routes messages between them.

          ### Core Capabilities

          * High throughput, low latency, shortest path message forwarding based on Layer 7 address routing mechanisms

          * `Interior` mode deployments for any arbitrary topology of geographically-distributed and interconnected routers

          * `Edge` mode deployments for extremely large scale device endpoint connectivity

          * Automatic message traffic rerouting when the network topology changes (resiliency without restrictions)

          * Flexible addressing schemes and delivery semantics (anycast, multicast, closest, balanced)

          * Integrated management with full support for the draft AMQP management specification

          * Full-featured security capabilities for authentication, authorization, and policy-based resource access control

          ### Operator Features

          * **Flexible deployment plans** - Configurable deployment plans are available for `interior` and `edge` mode scenarios. These plans include all dependent resources

          * **Placement directives** - Directives are provided to control how the pods should be scheduled

          * **Connectivity configuration defaults** - Configuration defaults are automatically generated for listeners, connectors, and SSL/TLS setup

          * **Exposes the service** - Integrated management of OpenShift Routes for exposed listener services for client, inter-router, and edge communications

          * **Security certificate management** - Certificates are created and managed through integration with AMQ Certificate Manager

          ### Troubleshooting

          After deploying Interconnect, check any of the following to verify that it is operating correctly:

          * The Interconnect instance

          * The Deployment (or DaemonSet) instance

          * An individual pod for the Deployment (or DaemonSet)

          * A Route created for exposed services

          In addition, use `qdstat` commands to verify connectivity. This can be done using `oc exec` against an interconnect pod, for example `oc exec -it <podname> -- qdstat -c`
          to list connections.

          ### Documentation

          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/products/red_hat_amq#interconnect).
        displayName: Red Hat Integration - AMQ Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq#interconnect
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-interconnect-operator-metadata@sha256:d7b2c9cc8181eb372c787bb29323dc2d4cd1bb30ddb9e4bb15081a7a61e516a0
        - registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
        - registry.redhat.io/amq7/amq-interconnect@sha256:31d87473fa684178a694f9ee331d3c80f2653f9533cb65c2a325752166a077e9
        version: 1.10.20
      entries:
      - name: amq7-interconnect-operator.v1.10.20
        version: 1.10.20
      - name: amq7-interconnect-operator.v1.10.19
        version: 1.10.19
      - name: amq7-interconnect-operator.v1.10.18
        version: 1.10.18
      - name: amq7-interconnect-operator.v1.10.17
        version: 1.10.17
      - name: amq7-interconnect-operator.v1.10.16
        version: 1.10.16
      - name: amq7-interconnect-operator.v1.10.15
        version: 1.10.15
      - name: amq7-interconnect-operator.v1.10.14
        version: 1.10.14
      - name: amq7-interconnect-operator.v1.10.13
        version: 1.10.13
      - name: amq7-interconnect-operator.v1.10.12
        version: 1.10.12
      - name: amq7-interconnect-operator.v1.10.11
        version: 1.10.11
      - name: amq7-interconnect-operator.v1.10.10
        version: 1.10.10
      - name: amq7-interconnect-operator.v1.10.9
        version: 1.10.9
      - name: amq7-interconnect-operator.v1.10.8
        version: 1.10.8
      - name: amq7-interconnect-operator.v1.10.7
        version: 1.10.7
      - name: amq7-interconnect-operator.v1.10.6
        version: 1.10.6
      - name: amq7-interconnect-operator.v1.10.5
        version: 1.10.5
      - name: amq7-interconnect-operator.v1.10.4
        version: 1.10.4
      - name: amq7-interconnect-operator.v1.10.3
        version: 1.10.3
      - name: amq7-interconnect-operator.v1.10.2
        version: 1.10.2
      name: 1.10.x
    - currentCSV: amq7-interconnect-operator.v1.10.20
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"interconnectedcloud.github.io/v1alpha1","kind":"Interconnect","metadata":{"name":"amq-interconnect"},"spec":{"deploymentPlan":{"size":2,"role":"interior","placement":"Any"}}}]'
          capabilities: Basic Install
          categories: Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
          createdAt: "2019-06-28T22:00:00Z"
          description: Layer 7 Networking
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: https://github.com/interconnectedcloud/qdr-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An instance of AMQ Interconnect
            displayName: Red Hat Integration - AMQ Interconnect
            kind: Interconnect
            name: interconnects.interconnectedcloud.github.io
            version: v1alpha1
        description: |2

          AMQ Interconnect is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and IoT/edge deployments. AMQ Interconnect transparently learns the addresses of messaging endpoints (such as clients, servers, and message brokers) and flexibly routes messages between them.

          ### Core Capabilities

          * High throughput, low latency, shortest path message forwarding based on Layer 7 address routing mechanisms

          * `Interior` mode deployments for any arbitrary topology of geographically-distributed and interconnected routers

          * `Edge` mode deployments for extremely large scale device endpoint connectivity

          * Automatic message traffic rerouting when the network topology changes (resiliency without restrictions)

          * Flexible addressing schemes and delivery semantics (anycast, multicast, closest, balanced)

          * Integrated management with full support for the draft AMQP management specification

          * Full-featured security capabilities for authentication, authorization, and policy-based resource access control

          ### Operator Features

          * **Flexible deployment plans** - Configurable deployment plans are available for `interior` and `edge` mode scenarios. These plans include all dependent resources

          * **Placement directives** - Directives are provided to control how the pods should be scheduled

          * **Connectivity configuration defaults** - Configuration defaults are automatically generated for listeners, connectors, and SSL/TLS setup

          * **Exposes the service** - Integrated management of OpenShift Routes for exposed listener services for client, inter-router, and edge communications

          * **Security certificate management** - Certificates are created and managed through integration with AMQ Certificate Manager

          ### Troubleshooting

          After deploying Interconnect, check any of the following to verify that it is operating correctly:

          * The Interconnect instance

          * The Deployment (or DaemonSet) instance

          * An individual pod for the Deployment (or DaemonSet)

          * A Route created for exposed services

          In addition, use `qdstat` commands to verify connectivity. This can be done using `oc exec` against an interconnect pod, for example `oc exec -it <podname> -- qdstat -c`
          to list connections.

          ### Documentation

          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/products/red_hat_amq#interconnect).
        displayName: Red Hat Integration - AMQ Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq#interconnect
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-interconnect-operator-metadata@sha256:d7b2c9cc8181eb372c787bb29323dc2d4cd1bb30ddb9e4bb15081a7a61e516a0
        - registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
        - registry.redhat.io/amq7/amq-interconnect@sha256:31d87473fa684178a694f9ee331d3c80f2653f9533cb65c2a325752166a077e9
        version: 1.10.20
      entries:
      - name: amq7-interconnect-operator.v1.10.20
        version: 1.10.20
      - name: amq7-interconnect-operator.v1.10.19
        version: 1.10.19
      - name: amq7-interconnect-operator.v1.10.18
        version: 1.10.18
      - name: amq7-interconnect-operator.v1.10.17
        version: 1.10.17
      - name: amq7-interconnect-operator.v1.10.16
        version: 1.10.16
      - name: amq7-interconnect-operator.v1.10.15
        version: 1.10.15
      - name: amq7-interconnect-operator.v1.10.14
        version: 1.10.14
      - name: amq7-interconnect-operator.v1.10.13
        version: 1.10.13
      - name: amq7-interconnect-operator.v1.10.12
        version: 1.10.12
      - name: amq7-interconnect-operator.v1.10.11
        version: 1.10.11
      - name: amq7-interconnect-operator.v1.10.10
        version: 1.10.10
      - name: amq7-interconnect-operator.v1.10.9
        version: 1.10.9
      - name: amq7-interconnect-operator.v1.10.8
        version: 1.10.8
      - name: amq7-interconnect-operator.v1.10.7
        version: 1.10.7
      - name: amq7-interconnect-operator.v1.10.6
        version: 1.10.6
      - name: amq7-interconnect-operator.v1.10.5
        version: 1.10.5
      - name: amq7-interconnect-operator.v1.10.4
        version: 1.10.4
      - name: amq7-interconnect-operator.v1.10.3
        version: 1.10.3
      - name: amq7-interconnect-operator.v1.10.2
        version: 1.10.2
      name: 1.2.0
    - currentCSV: amq7-interconnect-operator.v1.10.20
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"interconnectedcloud.github.io/v1alpha1","kind":"Interconnect","metadata":{"name":"amq-interconnect"},"spec":{"deploymentPlan":{"size":2,"role":"interior","placement":"Any"}}}]'
          capabilities: Basic Install
          categories: Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
          createdAt: "2019-06-28T22:00:00Z"
          description: Layer 7 Networking
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: https://github.com/interconnectedcloud/qdr-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An instance of AMQ Interconnect
            displayName: Red Hat Integration - AMQ Interconnect
            kind: Interconnect
            name: interconnects.interconnectedcloud.github.io
            version: v1alpha1
        description: |2

          AMQ Interconnect is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and IoT/edge deployments. AMQ Interconnect transparently learns the addresses of messaging endpoints (such as clients, servers, and message brokers) and flexibly routes messages between them.

          ### Core Capabilities

          * High throughput, low latency, shortest path message forwarding based on Layer 7 address routing mechanisms

          * `Interior` mode deployments for any arbitrary topology of geographically-distributed and interconnected routers

          * `Edge` mode deployments for extremely large scale device endpoint connectivity

          * Automatic message traffic rerouting when the network topology changes (resiliency without restrictions)

          * Flexible addressing schemes and delivery semantics (anycast, multicast, closest, balanced)

          * Integrated management with full support for the draft AMQP management specification

          * Full-featured security capabilities for authentication, authorization, and policy-based resource access control

          ### Operator Features

          * **Flexible deployment plans** - Configurable deployment plans are available for `interior` and `edge` mode scenarios. These plans include all dependent resources

          * **Placement directives** - Directives are provided to control how the pods should be scheduled

          * **Connectivity configuration defaults** - Configuration defaults are automatically generated for listeners, connectors, and SSL/TLS setup

          * **Exposes the service** - Integrated management of OpenShift Routes for exposed listener services for client, inter-router, and edge communications

          * **Security certificate management** - Certificates are created and managed through integration with AMQ Certificate Manager

          ### Troubleshooting

          After deploying Interconnect, check any of the following to verify that it is operating correctly:

          * The Interconnect instance

          * The Deployment (or DaemonSet) instance

          * An individual pod for the Deployment (or DaemonSet)

          * A Route created for exposed services

          In addition, use `qdstat` commands to verify connectivity. This can be done using `oc exec` against an interconnect pod, for example `oc exec -it <podname> -- qdstat -c`
          to list connections.

          ### Documentation

          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/products/red_hat_amq#interconnect).
        displayName: Red Hat Integration - AMQ Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq#interconnect
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-interconnect@sha256:31d87473fa684178a694f9ee331d3c80f2653f9533cb65c2a325752166a077e9
        - registry.redhat.io/amq7/amq-interconnect-operator-metadata@sha256:d7b2c9cc8181eb372c787bb29323dc2d4cd1bb30ddb9e4bb15081a7a61e516a0
        - registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
        version: 1.10.20
      entries:
      - name: amq7-interconnect-operator.v1.10.20
        version: 1.10.20
      - name: amq7-interconnect-operator.v1.10.19
        version: 1.10.19
      - name: amq7-interconnect-operator.v1.10.18
        version: 1.10.18
      - name: amq7-interconnect-operator.v1.10.17
        version: 1.10.17
      - name: amq7-interconnect-operator.v1.10.16
        version: 1.10.16
      - name: amq7-interconnect-operator.v1.10.15
        version: 1.10.15
      - name: amq7-interconnect-operator.v1.10.14
        version: 1.10.14
      - name: amq7-interconnect-operator.v1.10.13
        version: 1.10.13
      - name: amq7-interconnect-operator.v1.10.12
        version: 1.10.12
      - name: amq7-interconnect-operator.v1.10.11
        version: 1.10.11
      - name: amq7-interconnect-operator.v1.10.10
        version: 1.10.10
      - name: amq7-interconnect-operator.v1.10.9
        version: 1.10.9
      - name: amq7-interconnect-operator.v1.10.8
        version: 1.10.8
      - name: amq7-interconnect-operator.v1.10.7
        version: 1.10.7
      - name: amq7-interconnect-operator.v1.10.6
        version: 1.10.6
      - name: amq7-interconnect-operator.v1.10.5
        version: 1.10.5
      - name: amq7-interconnect-operator.v1.10.4
        version: 1.10.4
      - name: amq7-interconnect-operator.v1.10.3
        version: 1.10.3
      - name: amq7-interconnect-operator.v1.10.2
        version: 1.10.2
      name: latest
    defaultChannel: 1.10.x
    packageName: amq7-interconnect-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Altair Engineering Inc.
      provider-url: ""
    name: anzo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: anzo-operator.v3.1.300
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "anzo.cambridgesemantics.com/v2",
                "kind": "Anzo",
                "metadata": {
                  "name": "no-persistence"
                },
                "spec": {
                  "jsonActivation": true,
                  "jvmMemory": "4096m",
                  "nodeConfig": {
                    "spec": {
                      "replicas": 1,
                      "selector": {
                        "matchLabels": {
                          "app": "anzo"
                        }
                      },
                      "serviceName": "anzo-no-persistence",
                      "template": {
                        "metadata": {
                          "annotations": {
                            "cluster-autoscaler.kubernetes.io/safe-to-evict": "false"
                          },
                          "labels": {
                            "app": "anzo"
                          }
                        },
                        "spec": {
                          "containers": [
                            {
                              "image": "registry.connect.redhat.com/cambridgesemantics/anzo@sha256:5e5050fed0362b35f0f4c95deb85fc22caf59e387b58efb0d593102e2a793938",
                              "imagePullPolicy": "Always",
                              "name": "anzo",
                              "resources": {
                                "limits": {
                                  "cpu": "2.0",
                                  "memory": "8.0Gi"
                                },
                                "requests": {
                                  "cpu": "2.0",
                                  "memory": "8.0Gi"
                                }
                              }
                            }
                          ],
                          "initContainers": [
                            {
                              "name": "anzo-init",
                              "resources": {
                                "limits": {
                                  "cpu": "0.5",
                                  "memory": "2Gi"
                                },
                                "requests": {
                                  "cpu": "0.5",
                                  "memory": "2Gi"
                                }
                              }
                            }
                          ],
                          "securityContext": {
                            "fsGroup": 1001
                          },
                          "serviceAccountName": "anzo-operator"
                        }
                      }
                    }
                  },
                  "role": "AnzoServer"
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          certified: "true"
          containerImage: registry.connect.redhat.com/cambridgesemantics/anzo-operator@sha256:29dc94eafcd5ce589c6ebfa6549b88d0269bd20f9baf1116b698a78c5992368c
          createdAt: "2025-10-08T06:53:22Z"
          description: kubernetes operator for Altair Graph Studio
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: unknown
          repository: ""
          support: Altair Customer Support
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnzoBackup is the Schema for the anzobackups API
            displayName: Altair Graph Studio Backup
            kind: AnzoBackup
            name: anzobackups.anzobackup.cambridgesemantics.com
            version: v1beta1
          - description: Altair Graph Studio is the Schema for the anzos API
            displayName: Altair Graph Studio Operator
            kind: Anzo
            name: anzos.anzo.cambridgesemantics.com
            version: v2
        description: |-
          The Altair Graph Studio Operator provides the way to install and configure an altair graph studio server and agent setup on Red Hat K8S environment.

          ### Installation
           Refer [installation instructions]( https://github.com/cambridgesemantics/csi-k8s-operator-anzo/blob/v3.1.3/README.md )

          ### Documentation

          You can find our documentation [here.]( https://docs.cambridgesemantics.com/anzo/userdoc/deploy-k8s.htm )

          ### Support

          We offer Support to our customers [here]( https://altair.com/customer-support ) or by emailing the Data Analytics Support team at dasupport@altair.com.
        displayName: Altair Graph Studio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Big Data
        links:
        - name: Altair Graph Studio Operator
          url: https://github.com/cambridgesemantics/csi-k8s-operator-anzo/blob/v3.1.3/README_openshift.md
        maintainers:
        - email: fschwichtenberg@altair.com
          name: Frank Schwichtenberg
        maturity: stable
        provider:
          name: Altair Engineering Inc.
        relatedImages:
        - registry.connect.redhat.com/cambridgesemantics/anzo-operator@sha256:29dc94eafcd5ce589c6ebfa6549b88d0269bd20f9baf1116b698a78c5992368c
        - registry.connect.redhat.com/cambridgesemantics/anzo@sha256:5e5050fed0362b35f0f4c95deb85fc22caf59e387b58efb0d593102e2a793938
        - registry.connect.redhat.com/cambridgesemantics/anzo-operator-bundle@sha256:5a7000171e26cee4028c2bd91b50ad37bccf5e168ac413c19689a9ee914a2219
        version: 3.1.300
      entries:
      - name: anzo-operator.v3.1.300
        version: 3.1.300
      - name: anzo-operator.v3.1.200
        version: 3.1.200
      - name: anzo-operator.v3.1.106
        version: 3.1.106
      - name: anzo-operator.v3.1.105
        version: 3.1.105
      name: stable
    defaultChannel: stable
    packageName: anzo-operator
    provider:
      name: Altair Engineering Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: ""
    name: percona-server-mysql-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-server-mysql-operator-certified.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQL",
              "metadata": {
                "name": "ps-cluster1",
                "finalizers": [
                  "percona.com/delete-mysql-pods-in-order"
                ]
              },
              "spec": {
                "crVersion": "1.0.0",
                "secretsName": "ps-cluster1-secrets",
                "sslSecretName": "ps-cluster1-ssl",
                "updateStrategy": "SmartUpdate",
                "upgradeOptions": {
                  "versionServiceEndpoint": "https://check.percona.com",
                  "apply": "disabled"
                },
                "initContainer" : {
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator@sha256:71850c11e72e87c09e2f423c57963c143f5e3fac9ac7d062119f5e4254f158f7"
                },
                "mysql": {
                  "clusterType": "group-replication",
                  "autoRecovery": true,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:ea97c9df3e362728fc3819c28c841498f5a1765945b9556bc964b218b7d4dc97",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "resources": {
                    "requests": {
                      "memory": "2Gi"
                    },
                    "limits": {
                      "memory": "4Gi"
                    }
                  },
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "exposePrimary": {
                    "enabled": true
                  },
                  "volumeSpec": {
                    "persistentVolumeClaim": {
                      "resources": {
                        "requests": {
                          "storage": "2Gi"
                        }
                      }
                    }
                  },
                  "gracePeriod": 600
                },
                "proxy": {
                  "haproxy": {
                    "enabled": true,
                    "size": 3,
                    "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e64e468ac0ed2036ee164631469cc71821dcb84a6d568883f704d0eacaf84bb4",
                    "imagePullPolicy": "Always",
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "1Gi",
                        "cpu": "600m"
                      }
                    },
                    "gracePeriod": 30,
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    }
                  },
                  "router": {
                    "enabled": false,
                    "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e083c632c118cd4af472d9030a7900401f4b338e069c91996fe33747b77be985",
                    "imagePullPolicy": "Always",
                    "size": 3,
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "256M"
                      },
                      "limits": {
                        "memory": "256M"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "gracePeriod": 30
                  }
                },
                "orchestrator": {
                  "enabled": false,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:a8a70f8882925b0a1a46893376e29af73646117b22e1eeb5a0a89876a907651f",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "gracePeriod": 30,
                  "resources": {
                    "requests": {
                      "memory": "128M"
                    },
                    "limits": {
                      "memory": "256M"
                    }
                  }
                },
                "pmm": {
                  "enabled": false,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:1c59d7188f8404e0294f4bfb3d2c3600107f808a023668a170a6b8036c56619b",
                  "imagePullPolicy": "Always",
                  "resources": {
                    "requests": {
                      "memory": "150M",
                      "cpu": "300m"
                    }
                  },
                  "serverHost": "monitoring-service"
                },
                "backup": {
                  "enabled": true,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:423d64bdb0220c7df34300b88ec10b3706443d8f4c9111d0bd752c9279eebbe3",
                  "imagePullPolicy": "Always",
                  "storages": {
                    "s3-us-west": {
                      "type": "s3",
                      "verifyTLS": true,
                      "s3": {
                        "bucket": "S3-BACKUP-BUCKET-NAME-HERE",
                        "credentialsSecret": "ps-cluster1-s3-credentials",
                        "region": "us-west-2"
                      }
                    }
                  }
                },
                "toolkit": {
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:b7a4a2ca71ebf2b35786ab614221cbefb032fd5dfb5c5a478efcdd23931dd70b",
                  "imagePullPolicy": "Always"
                }
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLBackup",
              "metadata": {
                "name": "backup1",
                "finalizers": [
                  "percona.com/delete-backup"
                ]
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "storageName": "minio"
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLRestore",
              "metadata": {
                "name": "restore1"
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "backupName": "backup1"
              }
            }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: registry.connect.redhat.com/percona/percona-server-mysql-operator@sha256:71850c11e72e87c09e2f423c57963c143f5e3fac9ac7d062119f5e4254f158f7
          createdAt: "2025-11-13T08:00:00.000Z"
          description: Percona Operator for MySQL based on Percona Server for MySQL
            automates the creation and management of highly available, enterprise-ready
            MySQL database clusters on Kubernetes.
          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"
          repository: https://github.com/percona/percona-server-mysql-operator
          support: Percona
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaServerMySQLBackup is the Schema for the perconaservermysqlbackups
              API
            displayName: Percona Server MySQL Backup
            kind: PerconaServerMySQLBackup
            name: perconaservermysqlbackups.ps.percona.com
            version: v1
          - description: PerconaServerMySQLRestore is the Schema for the perconaservermysqlrestores
              API
            displayName: Percona Server MySQL Restore
            kind: PerconaServerMySQLRestore
            name: perconaservermysqlrestores.ps.percona.com
            version: v1
          - description: PerconaServerMySQL is the Schema for the perconaservermysqls
              API
            displayName: Percona Server MySQL
            kind: PerconaServerMySQL
            name: perconaservermysqls.ps.percona.com
            version: v1
        description: |2+

          ## Percona is Cloud Native

          Percona Operator for MySQL based on Percona Server for MySQL follows our best practices for deployment and configuration of highly-available, fault-tolerant MySQL instances in a Kubernetes-based environment on-premises or in the cloud. It provides the following capabilities:
          * Deploy group replication MySQL clusters with HAProxy or MySQL Router
          * Deploy asynchronous replication MySQL clusters with Orchestrator and HAProxy
          * Expose clusters with regular Kubernetes Services
          * Monitor the cluster with Percona Monitoring and Management
          * Customize MySQL configuration
          * Manage system user passwords

        displayName: Percona Operator for MySQL based on Percona Server for MySQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mysql
        - percona
        - database
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-mysql/ps/
        - name: Github
          url: https://github.com/percona/percona-server-mysql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
        relatedImages:
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e083c632c118cd4af472d9030a7900401f4b338e069c91996fe33747b77be985
        - registry.connect.redhat.com/percona/percona-server-mysql-operator@sha256:71850c11e72e87c09e2f423c57963c143f5e3fac9ac7d062119f5e4254f158f7
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:1c59d7188f8404e0294f4bfb3d2c3600107f808a023668a170a6b8036c56619b
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:315efeac572c48cc6f118bba7e0b2545ad396142f60328f2db9620ae0ad57e45
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:b7a4a2ca71ebf2b35786ab614221cbefb032fd5dfb5c5a478efcdd23931dd70b
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e64e468ac0ed2036ee164631469cc71821dcb84a6d568883f704d0eacaf84bb4
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-bundle@sha256:bb3bf3339f0719b37fbdd9d2d6d47aeff1fa063e319bc6aeb24c384cce5cc061
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:3a420b803cd39c7c2a3ff414d45d1858df39599961339f5c02df0681f558ccdd
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@ssha256:967bafa0823c90aa8fa9c25a9012be36b0deef64e255294a09148d77ce6aea68
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:423d64bdb0220c7df34300b88ec10b3706443d8f4c9111d0bd752c9279eebbe3
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:a8a70f8882925b0a1a46893376e29af73646117b22e1eeb5a0a89876a907651f
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:ea97c9df3e362728fc3819c28c841498f5a1765945b9556bc964b218b7d4dc97
        version: 1.0.0
      entries:
      - name: percona-server-mysql-operator-certified.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: percona-server-mysql-operator-certified
    provider:
      name: Percona
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Arctera US LLC
      provider-url: https://www.arctera.io
    name: infoscale-sds-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infoscale-sds-operator.v8.0.230
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "8.0.230"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleStoragePool",
                "metadata": {
                  "name": "infoscalestoragepool-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:f4947eab2b31fccc86b5d5d0d3fd4eb1f7513fd8325e379cc259f5ccd1dfc3e4
          createdAt: "2023-10-26T20:36:59Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          olm.skipRange: <8.0.230
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.22.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleStoragePool is the Schema for the infoscalestoragepools
              API
            displayName: InfoScale Storage Pool
            kind: InfoScaleStoragePool
            name: infoscalestoragepools.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Veritas InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/151215298-151215302-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >

          spec:
            version: "8.0.230"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Veritas recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator-bundle@sha256:12d6ae3f139daf33dbf104499c195d9915470b957f401b5f622cfde92350a6c1
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:f4947eab2b31fccc86b5d5d0d3fd4eb1f7513fd8325e379cc259f5ccd1dfc3e4
        version: 8.0.230
      entries:
      - name: infoscale-sds-operator.v8.0.230
        version: 8.0.230
      - name: infoscale-sds-operator.v8.0.220
        version: 8.0.220
      - name: infoscale-sds-operator.v8.0.110
        version: 8.0.110
      - name: infoscale-sds-operator.v8.0.100
        version: 8.0.100
      name: 8.0.200x
    - currentCSV: infoscale-sds-operator.v8.0.330
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "8.0.330"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:dab501b99373c840c7e8e3ab479fa273b39f9bf8a896f3f1e4e945f4ab81f64e
          createdAt: "2024-06-24T09:03:32Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Veritas InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/151215298-151215302-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >

          spec:
            version: "8.0.330"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Veritas recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator-bundle@sha256:965ec7875eccc6a5fc56c3b8f0da668d826d34580117ba1438a607a9d0d13b73
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:dab501b99373c840c7e8e3ab479fa273b39f9bf8a896f3f1e4e945f4ab81f64e
        version: 8.0.330
      entries:
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: 8.0.300x
    - currentCSV: infoscale-sds-operator.v8.0.410
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "8.0.410"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:43397ed6430691b35c71bc4a4ff4eddcbd685e84cf0a3e3604e19feb4f363d9f
          createdAt: "2024-07-30T09:00:57Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >

          spec:
            version: "8.0.410"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:a51a626126460cbf8e614fd3287bce3419fc5b728788c5cb9b1ab1fa1cf98259
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:43397ed6430691b35c71bc4a4ff4eddcbd685e84cf0a3e3604e19feb4f363d9f
        version: 8.0.410
      entries:
      - name: infoscale-sds-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-sds-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-sds-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: 8.0.400x
    - currentCSV: infoscale-sds-operator.v9.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "9.1.0"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:8c5db3e0553bf9feed1f1728d4a51a28769dd9b002c9d937c6b867e3a3981780
          createdAt: "2025-09-11T19:37:19Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >
            namespace: < Infoscale Cluster Namespace >

          spec:
            version: "9.1.0"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:b7a875f1c540ea0a3c944f956c1b7b0f0b6ba55dcadaee6e9420513a3e979577
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:8c5db3e0553bf9feed1f1728d4a51a28769dd9b002c9d937c6b867e3a3981780
        version: 9.0.1
      entries:
      - name: infoscale-sds-operator.v9.0.1
        version: 9.0.1
      name: beta
    - currentCSV: infoscale-sds-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "9.1.0"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
          createdAt: "2025-09-11T19:37:19Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >
            namespace: < Infoscale Cluster Namespace >

          spec:
            version: "9.1.0"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:3f9cc14ae694c6a51d65fa5e32cfb737654c4c870f01e5522ff9ba5e2ad7f937
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
        version: 9.1.0
      entries:
      - name: infoscale-sds-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-sds-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-sds-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-sds-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: fast
    - currentCSV: infoscale-sds-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "9.1.0"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
          createdAt: "2025-09-11T19:37:19Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >
            namespace: < Infoscale Cluster Namespace >

          spec:
            version: "9.1.0"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:3f9cc14ae694c6a51d65fa5e32cfb737654c4c870f01e5522ff9ba5e2ad7f937
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
        version: 9.1.0
      entries:
      - name: infoscale-sds-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-sds-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-sds-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-sds-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: stable
    defaultChannel: fast
    packageName: infoscale-sds-operator
    provider:
      name: Arctera US LLC
      url: https://www.arctera.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Redis
      provider-url: ""
    name: redis-enterprise-operator-cert
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: redis-enterprise-operator.v8.0.2-6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/services-manager@sha256:1e858656f7ec0fa64cd6b159ae4748b24aac274b5ec4418409a485a6ad38cb9f
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:d751658d4a1b56e54ee404b8ff995f3c4056cb71020a3dfcbb064e86366f4a44
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:65b77d4e8d4d733812dd5de1890f25f3b85dae94b92e6c35f89ab45c2c8ab337
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:750c5f78fd0dedcaecb7aba2bb3afa527622db928fec696733ad07e5fa856f85
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:bbe02b59de239cef008edb84508a2800080423d6aa17e1b2de6c81e3897d5a93
        version: 8.0.2-6.1
      entries:
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.2
    - currentCSV: redis-enterprise-operator.v8.0.2-2.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:8ee164c4aa7e1a6eb2b9a717ba2ef10399962db8d08989b9d28d4a6bb55ed434
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:8487e6a03404387d1d749080fb7e1e5025b1a762a9b617ca1f211e2999bb55d8
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:bd85f2f6dbff84eba2eab6ade2dde9adc07afedfaf2b40471079eb09c3677e8d
        - registry.connect.redhat.com/redislabs/services-manager@sha256:f13145b0998d9267871b7526c12018da4ba4bfc35aa4c56199a022dc96ddcb96
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:2ed588ff843778a111539e0857f7961a5a64393c70a1794a27502b488cffb38c
        version: 8.0.2-2.9
      entries:
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.2-2.9
    - currentCSV: redis-enterprise-operator.v8.0.2-6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:d751658d4a1b56e54ee404b8ff995f3c4056cb71020a3dfcbb064e86366f4a44
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:65b77d4e8d4d733812dd5de1890f25f3b85dae94b92e6c35f89ab45c2c8ab337
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:750c5f78fd0dedcaecb7aba2bb3afa527622db928fec696733ad07e5fa856f85
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:bbe02b59de239cef008edb84508a2800080423d6aa17e1b2de6c81e3897d5a93
        - registry.connect.redhat.com/redislabs/services-manager@sha256:1e858656f7ec0fa64cd6b159ae4748b24aac274b5ec4418409a485a6ad38cb9f
        version: 8.0.2-6.1
      entries:
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.2-6.1
    - currentCSV: redis-enterprise-operator.v8.0.6-8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:10c2630183aaf357bca793dbe239e7011d2527dfa6ff5f15c0278bbc501eaeb4
        - registry.connect.redhat.com/redislabs/services-manager@sha256:8cf316b7c8381387cb092d691a9a5bf098b8604229cabf95994eeb105d962037
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:5540b0c0150e0b1b3979cd0d96ad2853472cd9fafdc03af5835d0e34ec329c82
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:4f070787e98014dfa13587931e73751e616cb56848236346a1cccd31cc0543bf
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:7c9a0c2c41d4104a4e4d319b63cc7188ff1e72ed3f75ec51f8ee1a022ac83e16
        version: 8.0.6-8.0
      entries:
      - name: redis-enterprise-operator.v8.0.6-8.0
        version: 8.0.6-8.0
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.6
    - currentCSV: redis-enterprise-operator.v8.0.6-8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/services-manager@sha256:8cf316b7c8381387cb092d691a9a5bf098b8604229cabf95994eeb105d962037
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:5540b0c0150e0b1b3979cd0d96ad2853472cd9fafdc03af5835d0e34ec329c82
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:4f070787e98014dfa13587931e73751e616cb56848236346a1cccd31cc0543bf
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:7c9a0c2c41d4104a4e4d319b63cc7188ff1e72ed3f75ec51f8ee1a022ac83e16
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:10c2630183aaf357bca793dbe239e7011d2527dfa6ff5f15c0278bbc501eaeb4
        version: 8.0.6-8.0
      entries:
      - name: redis-enterprise-operator.v8.0.6-8.0
        version: 8.0.6-8.0
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.6-8.0
    - currentCSV: redis-enterprise-operator.v8.0.6-8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:5540b0c0150e0b1b3979cd0d96ad2853472cd9fafdc03af5835d0e34ec329c82
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:4f070787e98014dfa13587931e73751e616cb56848236346a1cccd31cc0543bf
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:7c9a0c2c41d4104a4e4d319b63cc7188ff1e72ed3f75ec51f8ee1a022ac83e16
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:10c2630183aaf357bca793dbe239e7011d2527dfa6ff5f15c0278bbc501eaeb4
        - registry.connect.redhat.com/redislabs/services-manager@sha256:8cf316b7c8381387cb092d691a9a5bf098b8604229cabf95994eeb105d962037
        version: 8.0.6-8.0
      entries:
      - name: redis-enterprise-operator.v8.0.6-8.0
        version: 8.0.6-8.0
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: production
    defaultChannel: production
    packageName: redis-enterprise-operator-cert
    provider:
      name: Redis
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Cloudera
      provider-url: https://cloudera.com
    name: cfm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cfm-operator.v2.9.0-b96
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "Nifi",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifi-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifi",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifi-sample"
                },
                "spec": {
                  "hostName": "nifi.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifi-k8s",
                    "tag": "2.8.0-b94-nifi_1.25.0.2.3.13.0-36"
                  },
                  "replicas": 1,
                  "stateManagement": {
                    "clusterProvider": {
                      "class": "org.apache.nifi.kubernetes.state.provider.KubernetesConfigMapStateProvider",
                      "id": "kubernetes-provider"
                    }
                  },
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.8.0-b94"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              },
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "NifiRegistry",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifiregistry-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifiregistry",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifiregistry-sample"
                },
                "spec": {
                  "hostName": "registry.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s",
                    "tag": "2.8.0-b94-nifi_1.25.0.2.3.13.0-36"
                  },
                  "replicas": 1,
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.8.0-b94"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning,Big Data
          com.redhat.openshift.versions: v4.10
          containerImage: container.repository.cloudera.com/cloudera/cfm-operator@sha256:890d81188143ccf9ebe2c2fe5e039cdff3a2df53f7512555673f0468147e991e
          createdAt: "2024-12-06T19:03:24Z"
          description: Cloudera Flow Management - Kubernetes Operator for Apache NiFideploys
            and operates Apache NiFi
          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"
          operators.openshift.io/valid-subscription: A valid Cloudera license is required.
            Contact a Cloudera account team to learn more.
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NifiRegistry is the Schema for the nifiregistries API.
            displayName: Nifi Registry
            kind: NifiRegistry
            name: nifiregistries.cfm.cloudera.com
            version: v1alpha1
          - description: Nifi is the Schema for the nifis API.
            displayName: Nifi
            kind: Nifi
            name: nifis.cfm.cloudera.com
            version: v1alpha1
        description: |-
          Cloudera Flow Management - Kubernetes Operator for Apache NiFi brings enterprise-grade NiFi and NiFi Registry deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of NiFi and NiFi Registry for enterprise deployments.
          To learn more about Cloudera Flow Management - Kubernetes Operator for Apache NiFi read this
          [deep dive blog post](https://community.cloudera.com/t5/Community-Articles/Cloudera-Flow-Management-Operator-A-technical-deep-dive/ta-p/390473).

          Cloudera Flow Management - Kubernetes Operator for Apache NiFi consists of and ships multiple components including Apache NiFi, Apache NiFi Registry,
          and a custom sidecar image for logging aggregation.

          ## Installation prerequisites

          Installing Cloudera Flow Management - Kubernetes Operator for Apache NiFi requires the a valid license as well as Cloudera credentials
          (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly.
          The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) from which installation artifacts are pulled.

          ### Obtaining a license
          Contact [Cloudera sales](https://cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets
          Before installation, create two `Secrets`. One containing your Cloudera credentials and one containing your license. Cloudera credentials are provided to you
          together with your license.

          1. Create a `Secret` containing your Cloudera credentials.
              `oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***]
               --docker-server=container.repository.cloudera.com`

          2. Create a `Secret` containing your license.
              `oc create secret generic cfm-operator-license --from-file=license.txt=[***PATH TO LICENSE FILE***]`

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces in which you
            plan to deploy NiFi clusters or NiFi Registry deployments. Cloudera recommends that you create the `Secret` in all required namespaces before installation
            if you know which namespaces you will be using to deploy NiFi clusters or NiFi Registry deployments.

          ## Learn more
          To learn more, visit the [Cloudera Flow Management - Kubernetes Operator for Apache NiFi documentation library](https://docs.cloudera.com/cfm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Flow Management - Kubernetes Operator for Apache NiFi, visit the following resources:
          * [Apache NiFi](https://nifi.apache.org/)
          * [Apache NiFi Registry](https://nifi.apache.org/registry.html)
        displayName: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nifi
        - nifiregistry
        - cloudera
        - cfm
        links:
        - name: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
          url: https://docs.cloudera.com/cfm-operator
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/cfm-nifi-k8s@sha256:0d700b7eff096dfc362868345826c3a6460fa43a700273b1422e95015b7727ee
        - container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s@sha256:914dcde9ee97894fa6f5deec285e53bf81d196e071a997cabb40fedd52deccc3
        - container.repository.cloudera.com/cloudera/cfm-operator@sha256:890d81188143ccf9ebe2c2fe5e039cdff3a2df53f7512555673f0468147e991e
        - container.repository.cloudera.com/cloudera/cfm-tini@sha256:6493d23e20fca8daf31823403fca3dd9b42da983464fbe788a6863e141e8b66b
        - registry.connect.redhat.com/cloudera/cfm-operator-bundle@sha256:ca70ebce43d451d040aedcec036413f986e620234fd9a56d45983805396db0b5
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:86af06fb3b6c17b22be47118b0a8c797fa7fdd3c00dbe99a2d2a593ca8fc3d63
        version: 2.9.0-b96
      entries:
      - name: cfm-operator.v2.9.0-b96
        version: 2.9.0-b96
      name: alpha
    - currentCSV: cfm-operator.v2.11.0-b57
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "Nifi",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifi-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifi",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifi-sample"
                },
                "spec": {
                  "hostName": "nifi.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifi-k8s",
                    "tag": "2.9.0-b96-nifi_1.27.0.2.3.14.0-14"
                  },
                  "replicas": 1,
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.9.0-b96"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              },
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "NifiRegistry",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifiregistry-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifiregistry",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifiregistry-sample"
                },
                "spec": {
                  "hostName": "registry.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s",
                    "tag": "2.9.0-b96-nifi_1.27.0.2.3.14.0-14"
                  },
                  "replicas": 1,
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.9.0-b96"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              },
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "NifiRegistryBinding",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cfm-operator"
                  },
                  "name": "nifiregistrybinding-sample"
                },
                "spec": null
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning,Big Data
          com.redhat.openshift.versions: v4.10
          containerImage: container.repository.cloudera.com/cloudera/cfm-operator@sha256:88eb0813317d6f7984dffa0ad9aef3a24fb69890682086a1a78f63c1fe6438ff
          createdAt: "2025-10-08T16:02:41Z"
          description: Cloudera Flow Management - Kubernetes Operator for Apache NiFideploys
            and operates Apache NiFi
          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"
          operators.openshift.io/valid-subscription: A valid Cloudera license is required.
            Contact a Cloudera account team to learn more.
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NifiRegistry is the Schema for the nifiregistries API.
            displayName: Nifi Registry
            kind: NifiRegistry
            name: nifiregistries.cfm.cloudera.com
            version: v1alpha1
          - description: NifiRegistryBinding is the Schema for the nifiregistrybindings
              API
            displayName: Nifi Registry Binding
            kind: NifiRegistryBinding
            name: nifiregistrybindings.cfm.cloudera.com
            version: v1alpha1
          - description: Nifi is the Schema for the nifis API.
            displayName: Nifi
            kind: Nifi
            name: nifis.cfm.cloudera.com
            version: v1alpha1
        description: |-
          Cloudera Flow Management - Kubernetes Operator for Apache NiFi brings enterprise-grade NiFi and NiFi Registry deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of NiFi and NiFi Registry for enterprise deployments.
          To learn more about Cloudera Flow Management - Kubernetes Operator for Apache NiFi read this
          [deep dive blog post](https://community.cloudera.com/t5/Community-Articles/Cloudera-Flow-Management-Operator-A-technical-deep-dive/ta-p/390473).

          Cloudera Flow Management - Kubernetes Operator for Apache NiFi consists of and ships multiple components including Apache NiFi, Apache NiFi Registry,
          and a custom sidecar image for logging aggregation.

          ## Installation prerequisites

          Installing Cloudera Flow Management - Kubernetes Operator for Apache NiFi requires the a valid license as well as Cloudera credentials
          (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly.
          The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) from which installation artifacts are pulled.

          ### Obtaining a license
          Contact [Cloudera sales](https://cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets
          Before installation, create two `Secrets`. One containing your Cloudera credentials and one containing your license. Cloudera credentials are provided to you
          together with your license.

          1. Create a `Secret` containing your Cloudera credentials.
              `oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***]
               --docker-server=container.repository.cloudera.com --namespace [***OPERATOR INSTALL NAMESPACE***]`

          2. Create a `Secret` containing your license.
              `oc create secret generic cfm-operator-license --from-file=license.txt=[***PATH TO LICENSE FILE***] --namespace [***OPERATOR INSTALL NAMESPACE***]`

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces in which you
            plan to deploy NiFi clusters or NiFi Registry deployments. Cloudera recommends that you create the `Secret` in all required namespaces before installation
            if you know which namespaces you will be using to deploy NiFi clusters or NiFi Registry deployments.

          ## Learn more
          To learn more, visit the [Cloudera Flow Management - Kubernetes Operator for Apache NiFi documentation library](https://docs.cloudera.com/cfm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Flow Management - Kubernetes Operator for Apache NiFi, visit the following resources:
          * [Apache NiFi](https://nifi.apache.org/)
          * [Apache NiFi Registry](https://nifi.apache.org/registry.html)
        displayName: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nifi
        - nifiregistry
        - cloudera
        - cfm
        links:
        - name: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
          url: https://docs.cloudera.com/cfm-operator
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/cfm-operator@sha256:88eb0813317d6f7984dffa0ad9aef3a24fb69890682086a1a78f63c1fe6438ff
        - container.repository.cloudera.com/cloudera/cfm-tini@sha256:50eee4783b59129b673c72d5e53a44bfd785a298c85577b36624e5e44a890a59
        - registry.connect.redhat.com/cloudera/cfm-operator-bundle@sha256:699e4b3766cd42da370f6d8826b9e906fedfa0cd1b5ed1ca11b2917d661ee272
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:86af06fb3b6c17b22be47118b0a8c797fa7fdd3c00dbe99a2d2a593ca8fc3d63
        - container.repository.cloudera.com/cloudera/cfm-nifi-k8s@sha256:fe8ce86deb7b8e02f6b4f1fa7580853d31e44af82dd197d81f578ed9df759587
        - container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s@sha256:96cf36d77f4231d2429af378879c155336ec80a5b64966602ceb6811684dfe04
        version: 2.11.0-b57
      entries:
      - name: cfm-operator.v2.11.0-b57
        version: 2.11.0-b57
      name: stable
    defaultChannel: stable
    packageName: cfm-operator
    provider:
      name: Cloudera
      url: https://cloudera.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: AppDynamics LLC
      provider-url: https://www.appdynamics.com/
    name: appdynamics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: appdynamics-operator.v24.7.0-861
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cluster.appdynamics.com/v1alpha1",
                "kind": "Clusteragent",
                "metadata": {
                  "name": "k8s-cluster-agent",
                  "namespace": "appdynamics"
                },
                "spec": {
                  "appName": "<app-name>",
                  "controllerUrl": "<appdynamics-controller-url",
                  "account": "<appdynamics-account-name>",
                  "image": "<your-docker-registry>/appdynamics/cluster-agent:tag"
                }
              },
              {
                "apiVersion": "cluster.appdynamics.com/v1alpha1",
                "kind": "InfraViz",
                "metadata": {
                  "name": "appdynamics-infraviz",
                  "namespace": "appdynamics"
                },
                "spec": {
                  "controllerUrl": "<appdynamics-controller-url",
                  "account": "<appdynamics-account-name>",
                  "image": "<your-docker-registry>/appdynamics/machine-agent:latest"
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring,Logging & Tracing
          certified: "false"
          containerImage: registry.connect.redhat.com/appdynamics/cluster-agent-operator@sha256:3c420cce8b626d8f5cf424410527c6a7a17ca3348e903dd8cdfcd74819b8de41
          createdAt: "2023-02-06T14:26:07Z"
          description: AppDynamics Operator to install AppDynamics Cluster Agent &
            AppDynamics Machine Agent for K8s Monitoring for various Cloud Providers
            like EKS, AKS etc.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: appdynamics
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: support@appdynamics.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Clusteragent is the Schema for the clusteragents API
            displayName: Clusteragent
            kind: Clusteragent
            name: clusteragents.cluster.appdynamics.com
            version: v1alpha1
          - description: InfraViz is the Schema for the infravizs API
            displayName: Infra Viz
            kind: InfraViz
            name: infravizs.cluster.appdynamics.com
            version: v1alpha1
        description: |-
          AppDynamics Operator to install AppDynamics Cluster Agent & Machine Agent for K8s Monitoring on various Cloud Providers like EKS, AKS, GCP, Openshift etc.
          **About AppDynamics Operator**
          AppDynamics Operator simplifies the installation and lifecycle management of the AppDynamics ClusterAgent and the AppDynamics Machine Agent for K8s Monitoring on different Cloud Providers like EKS, AKS, GCP, OpenShift etc.
          **Installation Steps**
          Please refer below links for installation guide:
          [Install AppDynamics Cluster Agent](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-the-kubernetes-cli)
          [Install AppDynamics Machine Agent](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-the-kubernetes-cli)
          [Install AppDynamics Cluster Agent Using Helm Charts](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-helm-charts)
          [Install Appdynamics Machine Agent Using Helm Charts](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-helm-charts)
        displayName: AppDynamics Operator for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AppDynamics
        - Operator
        - AppDynamics Cluster Agent
        - AppDynamics Machine Agent
        - AppDynamics K8s Monitoring
        links:
        - name: AppDynamics Kubernetes Monitoring Overview
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent
        - name: AppDynamics Cluster Agent Overview
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/overview-of-cluster-monitoring
        - name: AppDynamics Cluster Agent Requirements
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/cluster-agent-requirements-and-supported-environments
        - name: Install AppDynamics Cluster Agent
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-the-kubernetes-cli
        - name: Install AppDynamics Cluster Agent Using Helm Charts
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-helm-charts
        - name: Install AppDynamics Machine Agent & NetViz Agent
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-the-kubernetes-cli
        - name: Install AppDynamics Machine Agent & NetViz Agent Using Helm Charts
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-helm-charts
        maintainers:
        - email: support@appdynamics.com
          name: AppDynamics
        maturity: alpha
        provider:
          name: AppDynamics LLC
          url: https://www.appdynamics.com/
        relatedImages:
        - registry.connect.redhat.com/appdynamics/cluster-agent-operator@sha256:3c420cce8b626d8f5cf424410527c6a7a17ca3348e903dd8cdfcd74819b8de41
        - registry.connect.redhat.com/appdynamics/cluster-agent-operator-bundle@sha256:b2bc3e161311f8f5d2f5fc967815259697ce30bf94e980214bc05aa0e1529d55
        version: 24.7.0-861
      entries:
      - name: appdynamics-operator.v24.7.0-861
        version: 24.7.0-861
      name: alpha
    defaultChannel: alpha
    packageName: appdynamics-operator
    provider:
      name: AppDynamics LLC
      url: https://www.appdynamics.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: https://www.percona.com/
    name: percona-postgresql-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-postgresql-operator.v2.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgv2.percona.com/v2",
                "kind": "PerconaPGCluster",
                "metadata": {
                  "name": "cluster1"
                },
                "spec": {
                  "crVersion": "2.8.2",
                  "image": "docker.io/percona/percona-distribution-postgresql:17.7-2",
                  "imagePullPolicy": "Always",
                  "postgresVersion": 17,
                  "instances": [
                    {
                      "name": "instance1",
                      "replicas": 3,
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/data": "postgres"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      },
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      }
                    }
                  ],
                  "proxy": {
                    "pgBouncer": {
                      "replicas": 3,
                      "image": "docker.io/percona/percona-pgbouncer:1.25.0-1",
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/role": "pgbouncer"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      }
                    }
                  },
                  "backups": {
                    "pgbackrest": {
                      "image": "docker.io/percona/percona-pgbackrest:2.57.0-1",
                      "repoHost": {
                        "affinity": {
                          "podAntiAffinity": {
                            "preferredDuringSchedulingIgnoredDuringExecution": [
                              {
                                "weight": 1,
                                "podAffinityTerm": {
                                  "labelSelector": {
                                    "matchLabels": {
                                      "postgres-operator.crunchydata.com/data": "pgbackrest"
                                    }
                                  },
                                  "topologyKey": "kubernetes.io/hostname"
                                }
                              }
                            ]
                          }
                        }
                      },
                      "manual": {
                        "repoName": "repo1",
                        "options": [
                          "--type=full"
                        ]
                      },
                      "repos": [
                        {
                          "name": "repo1",
                          "schedules": {
                            "full": "0 0 * * 6"
                          },
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "docker.io/percona/pmm-client:3.5.0",
                    "secret": "cluster1-pmm-secret",
                    "serverHost": "monitoring-service"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: docker.io/percona/percona-postgresql-operator:2.8.2
          createdAt: "2025-12-24T20:59:08Z"
          description: Percona Operator for PostgreSQL manages the lifecycle of Percona
            PostgreSQL cluster instances.
          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.skipRange: <v2.8.2
          repository: https://github.com/percona/percona-postgresql-operator
          support: percona.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaPGCluster is the CRD that defines a Percona PG Cluster
            displayName: Percona PGCluster
            kind: PerconaPGCluster
            name: perconapgclusters.pgv2.percona.com
            version: v2
          - description: PerconaPGBackup is the CRD that defines a Percona PostgreSQL
              Backup
            displayName: Percona PGBackup
            kind: PerconaPGBackup
            name: perconapgbackups.pgv2.percona.com
            version: v2
          - description: PerconaPGRestore is the CRD that defines a Percona PostgreSQL
              Restore
            displayName: Percona PGRestore
            kind: PerconaPGRestore
            name: perconapgrestores.pgv2.percona.com
            version: v2
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API This Custom Resource requires enabling CrunchyBridgeClusters feature
              gate
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PerconaPGUpgrade is the Schema for the perconapgupgrades
              API
            displayName: Percona PGUpgrade
            kind: PerconaPGUpgrade
            name: perconapgupgrades.pgv2.percona.com
            version: v2
          - description: PGAdmin is the Schema for the pgadmins API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          ## Percona is Cloud Native

          Percona Operator for PostgreSQL automates and simplifies deploying and managing
          open source PostgreSQL clusters on Kubernetes. Percona Operator for PostgreSQL is based on Postgres Operator developed by Crunchy Data.

          Whether you need to get a simple PostgreSQL cluster up and running, need to deploy a high availability,
          fault tolerant cluster in production, or are running your own database-as-a-service, the Operator provides the essential
          features you need to keep your clusters healthy.

          Consult the
          [documentation](https://www.percona.com/doc/kubernetes-operator-for-postgresql/index.html)
          on the Percona Operator for PostgreSQL for complete details on capabilities
          and options.

          ### Supported Features

          * **PostgreSQL Cluster Provisioning**

          Create, Scale, & Delete PostgreSQL clusters with ease, while fully customizing your Pods and PostgreSQL configuration.

          * **High Availability**

              Safe, automated failover backed by a distributed consensus based high-availability solution. Uses Pod Anti-Affinity to help resiliency; you can configure how much
              enforced this can be. Failed primaries automatically heal, allowing for faster recovery time. Support for standby PostgreSQL clusters that work both within and
              across multiple Kubernetes clusters.

          * **Disaster Recovery**

              Backups and restores leverage the open source pgBackRest utility and includes support for full, incremental, and differential backups as well as efficient delta
              restores. Set how long you want your backups retained for. Works great with very large databases!

          * **Communication Security**

              Secure communication between your applications and data servers by enabling TLS for your PostgreSQL servers, including the ability to enforce all of your connections
              to use TLS.

          * **Monitoring**

              Track the health of your PostgreSQL clusters with Percona Monitoring and Management (PMM).

          * **PostgreSQL User Management**

              Quickly add and remove users from your PostgreSQL clusters with powerful commands. Manage password expiration policies or use your preferred PostgreSQL authentication
              scheme.

          * **Updates Management**

              Safely apply PostgreSQL updates with minimal availability impact to your PostgreSQL clusters.

          * **Advanced Replication Support**

              Choose between asynchronous replication and synchronous replication for workloads that are sensitive to losing transactions.

          * **Clone**

              Create new clusters from your existing clusters or backups.

          * **Connection Pooling**

              Use [pgBouncer](https://access.crunchydata.com/documentation/postgres-operator/latest/tutorial/pgbouncer/) for connection pooling

          * **Affinity and Tolerations**

              Have your PostgreSQL clusters deployed to Kubernetes Nodes of your preference with node affinity, or designate which nodes Kubernetes can schedule PostgreSQL instances
              to with Kubernetes  tolerations.

          * **Scheduled Backups**

              Choose the type of backup (full, incremental, differential) and how frequently you want it to occur on each PostgreSQL cluster.

          * **Backup to S3**

              Store your backups in Amazon S3 or any object storage system that supports the S3 protocol. The Operator can backup, restore, and create new clusters from these backups.

          * **Multi-Namespace Support**

              You can control how the Operator leverages Kubernetes Namespaces with several different deployment models:

              * Deploy the Operator and all PostgreSQL clusters to the same namespace
              * Deploy the Operator to one Namespace, and all PostgreSQL clusters to a different Namespace
              * Deploy the Operator to one Namespace, and have your PostgreSQL clusters managed across multiple Namespaces

          * **Full Customizability**

              The Operator not only makes it easy to get PostgreSQL up and running on Kubernetes-enabled platforms, but also allows you to further customize your deployments:

              * Selecting different storage classes for your primary, replica, and backup storage
              * Select your own container resources class for each PostgreSQL cluster deployment; differentiate between resources applied for primary and replica clusters
              * Use your own container image repository, including `imagePullSecrets` and private repositories  support
              * Customize your PostgreSQL configuration
              * Bring your own trusted certificate authority (CA) for use with the Operator API server
              * Override your PostgreSQL configuration for each cluster
              * Use your own custom images, re-define the image for each container separately
        displayName: Percona Operator for PostgreSQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - percona
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-postgresql/index.html
        - name: Github
          url: https://github.com/percona/percona-postgresql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
          url: https://www.percona.com/
        relatedImages:
        - docker.io/percona/percona-postgresql-operator:2.8.2
        - quay.io/community-operator-pipeline-prod/percona-postgresql-operator@sha256:338df3b168eb9323d5afcac160a3d2ccf8a1faca16125c80a89251d569627f7c
        version: 2.8.2
      entries:
      - name: percona-postgresql-operator.v2.8.2
        version: 2.8.2
      - name: percona-postgresql-operator.v2.8.1
        version: 2.8.1
      - name: percona-postgresql-operator.v2.8.0
        version: 2.8.0
      name: stable
    defaultChannel: stable
    packageName: percona-postgresql-operator
    provider:
      name: Percona
      url: https://www.percona.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: opdev
      provider-url: opdev.github.io
    name: spark-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: spark-helm-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apachespark.apache.org/v1alpha1",
                "kind": "Spark",
                "metadata": {
                  "annotations": {
                    "helm.sdk.operatorframework.io/install-disable-crds": "true"
                  },
                  "name": "spark-operator"
                },
                "spec": {
                  "affinity": {},
                  "batchScheduler": {
                    "enable": false
                  },
                  "controllerThreads": 10,
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/googlecloudplatform/spark-operator",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "ingressUrlFormat": "",
                  "istio": {
                    "enabled": false
                  },
                  "labelSelectorFilter": "",
                  "leaderElection": {
                    "lockName": "spark-operator-lock",
                    "lockNamespace": ""
                  },
                  "logLevel": 2,
                  "metrics": {
                    "enable": true,
                    "endpoint": "/metrics",
                    "port": 10254,
                    "portName": "metrics",
                    "prefix": ""
                  },
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podLabels": {},
                  "podMonitor": {
                    "enable": false,
                    "jobLabel": "spark-operator-podmonitor",
                    "labels": {},
                    "podMetricsEndpoint": {
                      "interval": "5s",
                      "scheme": "http"
                    }
                  },
                  "podSecurityContext": {},
                  "rbac": {
                    "create": false,
                    "createClusterRole": true,
                    "createRole": true
                  },
                  "replicaCount": 1,
                  "resourceQuotaEnforcement": {
                    "enable": false
                  },
                  "resources": {},
                  "resyncInterval": 30,
                  "securityContext": {},
                  "serviceAccounts": {
                    "spark": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "sparkoperator": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    }
                  },
                  "sparkJobNamespace": "",
                  "tolerations": [],
                  "uiService": {
                    "enable": true
                  },
                  "volumeMounts": [],
                  "volumes": [],
                  "webhook": {
                    "cleanupAnnotations": {
                      "helm.sh/hook": "pre-delete, pre-upgrade",
                      "helm.sh/hook-delete-policy": "hook-succeeded"
                    },
                    "enable": false,
                    "initAnnotations": {
                      "helm.sh/hook": "pre-install, pre-upgrade",
                      "helm.sh/hook-weight": "50"
                    },
                    "namespaceSelector": "",
                    "port": 8080,
                    "timeout": 30
                  }
                }
              },
              {
                "apiVersion": "sparkoperator.k8s.io/v1beta2",
                "kind": "ScheduledSparkApplication",
                "metadata": {
                  "name": "spark-pi-scheduled",
                  "namespace": "spark-operator"
                },
                "spec": {
                  "concurrencyPolicy": "Allow",
                  "schedule": "@every 5m",
                  "template": {
                    "driver": {
                      "coreLimit": "1200m",
                      "cores": 1,
                      "labels": {
                        "version": "3.1.1"
                      },
                      "memory": "512m",
                      "serviceAccount": "spark-operator-spark",
                      "volumeMounts": [
                        {
                          "mountPath": "/tmp",
                          "name": "test-volume"
                        }
                      ]
                    },
                    "executor": {
                      "cores": 1,
                      "instances": 1,
                      "labels": {
                        "version": "3.1.1"
                      },
                      "memory": "512m",
                      "volumeMounts": [
                        {
                          "mountPath": "/tmp",
                          "name": "test-volume"
                        }
                      ]
                    },
                    "image": "gcr.io/spark-operator/spark:v3.1.1",
                    "imagePullPolicy": "Always",
                    "mainApplicationFile": "local:///opt/spark/examples/jars/spark-examples_2.12-3.1.1.jar",
                    "mainClass": "org.apache.spark.examples.SparkPi",
                    "mode": "cluster",
                    "restartPolicy": {
                      "type": "Never"
                    },
                    "sparkVersion": "3.1.1",
                    "type": "Scala",
                    "volumes": [
                      {
                        "hostPath": {
                          "path": "/tmp",
                          "type": "Directory"
                        },
                        "name": "test-volume"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sparkoperator.k8s.io/v1beta2",
                "kind": "SparkApplication",
                "metadata": {
                  "name": "pyspark-pi",
                  "namespace": "spark-operator"
                },
                "spec": {
                  "driver": {
                    "coreLimit": "1200m",
                    "cores": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "serviceAccount": "spark-operator-spark",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "executor": {
                    "cores": 1,
                    "instances": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "image": "gcr.io/spark-operator/spark-py:v3.1.1",
                  "imagePullPolicy": "Always",
                  "mainApplicationFile": "local:///opt/spark/examples/src/main/python/pi.py",
                  "mode": "cluster",
                  "pythonVersion": "3",
                  "restartPolicy": {
                    "onFailureRetries": 3,
                    "onFailureRetryInterval": 10,
                    "onSubmissionFailureRetries": 5,
                    "onSubmissionFailureRetryInterval": 20,
                    "type": "OnFailure"
                  },
                  "sparkVersion": "3.1.1",
                  "type": "Python",
                  "volumes": [
                    {
                      "hostPath": {
                        "path": "/tmp",
                        "type": "Directory"
                      },
                      "name": "test-volume"
                    }
                  ]
                }
              },
              {
                "apiVersion": "sparkoperator.k8s.io/v1beta2",
                "kind": "SparkApplication",
                "metadata": {
                  "name": "spark-pi",
                  "namespace": "spark-operator"
                },
                "spec": {
                  "driver": {
                    "coreLimit": "1200m",
                    "cores": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "serviceAccount": "spark-operator-spark",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "executor": {
                    "cores": 1,
                    "instances": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "image": "gcr.io/spark-operator/spark:v3.1.1",
                  "imagePullPolicy": "Always",
                  "mainApplicationFile": "local:///opt/spark/examples/jars/spark-examples_2.12-3.1.1.jar",
                  "mainClass": "org.apache.spark.examples.SparkPi",
                  "mode": "cluster",
                  "restartPolicy": {
                    "type": "Never"
                  },
                  "sparkVersion": "3.1.1",
                  "type": "Scala",
                  "volumes": [
                    {
                      "hostPath": {
                        "path": "/tmp",
                        "type": "Directory"
                      },
                      "name": "test-volume"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: quay.io/opdev/spark-helm-operator-controller:0.0.2
          createdAt: "2023-07-14T17:57:44Z"
          description: An experimental operator that installs the spark on k8s operator
            from its helm chart.
          operatorframework.io/initialization-resource: "{\n  \"apiVersion\": \"apachespark.apache.org/v1alpha1\",\n
            \ \"kind\": \"Spark\",\n  \"metadata\": {\n    \"name\": \"spark-operator\"\n
            \ },\n  \"spec\": {\n    \"affinity\": {},\n    \"batchScheduler\": {\n
            \     \"enable\": false\n    },\n    \"controllerThreads\": 10,\n    \"fullnameOverride\":
            \"\",\n    \"image\": {\n      \"pullPolicy\": \"IfNotPresent\",\n      \"repository\":
            \"ghcr.io/googlecloudplatform/spark-operator\",\n      \"tag\": \"\"\n
            \   },\n    \"imagePullSecrets\": [],\n    \"ingressUrlFormat\": \"\",\n
            \   \"istio\": {\n      \"enabled\": false\n    },\n    \"labelSelectorFilter\":
            \"\",\n    \"leaderElection\": {\n      \"lockName\": \"spark-operator-lock\",\n
            \     \"lockNamespace\": \"\"\n    },\n    \"logLevel\": 2,\n    \"metrics\":
            {\n      \"enable\": true,\n      \"endpoint\": \"/metrics\",\n      \"port\":
            10254,\n      \"portName\": \"metrics\",\n      \"prefix\": \"\"\n    },\n
            \   \"nameOverride\": \"\",\n    \"nodeSelector\": {},\n    \"podAnnotations\":
            {},\n    \"podLabels\": {},\n    \"podMonitor\": {\n      \"enable\":
            false,\n      \"jobLabel\": \"spark-operator-podmonitor\",\n      \"labels\":
            {},\n      \"podMetricsEndpoint\": {\n        \"interval\": \"5s\",\n
            \       \"scheme\": \"http\"\n      }\n    },\n    \"podSecurityContext\":
            {},\n    \"rbac\": {\n      \"create\": false,\n      \"createClusterRole\":
            true,\n      \"createRole\": true\n    },\n    \"replicaCount\": 1,\n
            \   \"resourceQuotaEnforcement\": {\n      \"enable\": false\n    },\n
            \   \"resources\": {},\n    \"resyncInterval\": 30,\n    \"securityContext\":
            {},\n    \"serviceAccounts\": {\n      \"spark\": {\n        \"annotations\":
            {},\n        \"create\": true,\n        \"name\": \"\"\n      },\n      \"sparkoperator\":
            {\n        \"annotations\": {},\n        \"create\": true,\n        \"name\":
            \"\"\n      }\n    },\n    \"sparkJobNamespace\": \"\",\n    \"tolerations\":
            [],\n    \"uiService\": {\n      \"enable\": true\n    },\n    \"volumeMounts\":
            [],\n    \"volumes\": [],\n    \"webhook\": {\n      \"cleanupAnnotations\":
            {\n        \"helm.sh/hook\": \"pre-delete, pre-upgrade\",\n        \"helm.sh/hook-delete-policy\":
            \"hook-succeeded\"\n      },\n      \"enable\": false,\n      \"initAnnotations\":
            {\n        \"helm.sh/hook\": \"pre-install, pre-upgrade\",\n        \"helm.sh/hook-weight\":
            \"50\"\n      },\n      \"namespaceSelector\": \"\",\n      \"port\":
            8080,\n      \"timeout\": 30\n    }\n  }\n}    "
          operatorframework.io/suggested-namespace: spark-operator
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: hybrid.helm.sdk.operatorframework.io/v1-alpha
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys a scheduled spark application based on the spec provided
            displayName: Scheduled Spark Application
            kind: ScheduledSparkApplication
            name: scheduledsparkapplications.sparkoperator.k8s.io
            version: v1beta2
          - description: Deploys a spark application based on the spec provided
            displayName: Spark Application
            kind: SparkApplication
            name: sparkapplications.sparkoperator.k8s.io
            version: v1beta2
          - description: Deploys the spark operator based on the google cloud platform
              helm chart
            displayName: Spark Operator
            kind: Spark
            name: sparks.apachespark.apache.org
            version: v1alpha1
        description: An experimental helm based operator that wraps the spark on k8s
          helm chart from google cloud platform enabling installation and workload
          management of Apache Spark
        displayName: Spark Helm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - big data
        - map reduce
        - data science
        links:
        - name: Spark Helm Operator
          url: https://github.com/skattoju/spark-helm-operator
        maintainers:
        - email: skattoju@redhat.com
          name: Sid Kattoju
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: opdev
          url: opdev.github.io
        relatedImages:
        - quay.io/openshift-community-operators/spark-helm-operator@sha256:9bd49276e02f2fb28bb1ff116112cd7ebe0aa12bdb9f1e46aae2501fd9e4e755
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/opdev/spark-helm-operator-controller:0.0.2
        version: 0.0.2
      entries:
      - name: spark-helm-operator.v0.0.2
        version: 0.0.2
      - name: spark-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: spark-helm-operator
    provider:
      name: opdev
      url: opdev.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ocs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ocs-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |2-

            [
                {
                    "apiVersion": "ocs.openshift.io/v1",
                    "kind": "StorageCluster",
                    "metadata": {
                        "name": "example-storagecluster",
                        "namespace": "openshift-storage"
                    },
                    "spec": {
                        "manageNodes": false,
                        "monPVCTemplate": {
                            "spec": {
                                "accessModes": [
                                    "ReadWriteOnce"
                                ],
                                "resources": {
                                    "requests": {
                                        "storage": "10Gi"
                                    }
                                },
                                "storageClassName": "gp2-csi"
                            }
                        },
                        "storageDeviceSets": [
                            {
                                "count": 3,
                                "dataPVCTemplate": {
                                    "spec": {
                                        "accessModes": [
                                            "ReadWriteOnce"
                                        ],
                                        "resources": {
                                            "requests": {
                                                "storage": "1Ti"
                                            }
                                        },
                                        "storageClassName": "gp2-csi",
                                        "volumeMode": "Block"
                                    }
                                },
                                "name": "example-deviceset",
                                "placement": {},
                                "portable": true,
                                "resources": {}
                            }
                        ]
                    }
                }
            ]
          capabilities: Deep Insights
          categories: Storage
          containerImage: registry.redhat.io/odf4/ocs-rhel9-operator@sha256:8656bc7d8466b33d3b7910bf567de11199126cef0dd01f1bf4615faa84515921
          description: Red Hat OpenShift Container Storage provides hyperconverged
            storage for applications within an OpenShift cluster.
          external.features.ocs.openshift.io/supported-platforms: '["BareMetal", "None",
            "VSphere", "OpenStack", "oVirt"]'
          external.features.ocs.openshift.io/validation: '{"secrets":["rook-ceph-operator-creds",
            "rook-csi-rbd-node", "rook-csi-rbd-provisioner"], "configMaps": ["rook-ceph-mon-endpoints",
            "rook-ceph-mon"], "storageClasses": ["ceph-rbd"], "cephClusters": ["monitoring-endpoint"]}'
          features.ocs.openshift.io/disabled: '["ss-list", "install-wizard", "block-pool",
            "mcg-resource", "odf-dashboard", "common", "storage-provider", "storage-provisioner",
            "dashboard-resources", "csv-actions", "inventory-item", "alert-actions"]'
          features.ocs.openshift.io/enabled: '["kms", "arbiter", "flexible-scaling",
            "multus", "pool-management", "namespace-store", "mcg-standalone", "taint-nodes",
            "vault-sa-kms", "hpcs-kms"]'
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/initialization-resource: "\n    {\n        \"apiVersion\":
            \"ocs.openshift.io/v1\",\n        \"kind\": \"StorageCluster\",\n        \"metadata\":
            {\n            \"name\": \"example-storagecluster\",\n            \"namespace\":
            \"openshift-storage\"\n        },\n        \"spec\": {\n            \"manageNodes\":
            false,\n            \"monPVCTemplate\": {\n                \"spec\": {\n
            \                   \"accessModes\": [\n                        \"ReadWriteOnce\"\n
            \                   ],\n                    \"resources\": {\n                        \"requests\":
            {\n                            \"storage\": \"10Gi\"\n                        }\n
            \                   },\n                    \"storageClassName\": \"gp2-csi\"\n
            \               }\n            },\n            \"storageDeviceSets\":
            [\n                {\n                    \"count\": 3,\n                    \"dataPVCTemplate\":
            {\n                        \"spec\": {\n                            \"accessModes\":
            [\n                                \"ReadWriteOnce\"\n                            ],\n
            \                           \"resources\": {\n                                \"requests\":
            {\n                                    \"storage\": \"1Ti\"\n                                }\n
            \                           },\n                            \"storageClassName\":
            \"gp2-csi\",\n                            \"volumeMode\": \"Block\"\n
            \                       }\n                    },\n                    \"name\":
            \"example-deviceset\",\n                    \"placement\": {},\n                    \"portable\":
            true,\n                    \"resources\": {}\n                }\n            ]\n
            \       }\n    }\n\t"
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:16f27c8673487f2a3671319fbf01357726e6e416aa8b26300cccd88302400289
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.4
          operators.operatorframework.io/internal-objects: '["ocsinitializations.ocs.openshift.io","storageautoscalers.ocs.openshift.io","storageclusterpeers.ocs.openshift.io","storageconsumers.ocs.openshift.io"]'
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/ocs-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OCSInitialization represents the initial data to be created
              when the operator is installed.
            displayName: OCS Initialization
            kind: OCSInitialization
            name: ocsinitializations.ocs.openshift.io
            version: v1
          - description: StorageAutoScaler represents the automatic storage scaling
              for storage cluster.
            displayName: Storage Auto Scaling
            kind: StorageAutoScaler
            name: storageautoscalers.ocs.openshift.io
            version: v1
          - description: StorageClusterPeer is the Schema for the storageclusterpeers
              API
            displayName: Storage Cluster Peer
            kind: StorageClusterPeer
            name: storageclusterpeers.ocs.openshift.io
            version: v1
          - description: StorageCluster represents a cluster including Ceph Cluster,
              NooBaa and all the storage and compute resources required.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.ocs.openshift.io
            version: v1
          - description: StorageConsumer is the Schema for the storageconsumers API
            displayName: Storage Consumer
            kind: StorageConsumer
            name: storageconsumers.ocs.openshift.io
            version: v1alpha1
        description: |
          **Red Hat OpenShift Container Storage** deploys three operators.

          ### OpenShift Container Storage operator

          The OpenShift Container Storage operator is the primary operator for OpenShift Container Storage. It serves to facilitate the other operators in OpenShift Container Storage by performing administrative tasks outside their scope as well as watching and configuring their CustomResources.

          ### Rook

          [Rook][1] deploys and manages Ceph on OpenShift, which provides block and file storage.

          # Core Capabilities

          * **Self-managing service:** No matter which supported storage technologies you choose, OpenShift Container Storage ensures that resources can be deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Container Storage you can either build dedicated storage clusters or hyper-converged clusters where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Container Storage:** OpenShift Container Storage integrates Ceph with multiple storage presentations including object storage (compatible with S3), block storage, and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Container Storage efficiently distributes and replicates your data across your cluster to minimize the risk of data loss. With snapshots, cloning, and versioning, no more losing sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data storage for your workloads, using a single namespace.

          [1]: https://rook.io
        displayName: OpenShift Container Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        - rook
        - ceph
        - block storage
        - shared filesystem
        - object storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ocs-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/ocs-rhel9-operator@sha256:8656bc7d8466b33d3b7910bf567de11199126cef0dd01f1bf4615faa84515921
        - registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:16f27c8673487f2a3671319fbf01357726e6e416aa8b26300cccd88302400289
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:3538d484f80837f2164f15bcd1edb75fbcb73d72cbd94cd74c87f99da035fd84
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:a0f327daabcd97e59a855450a4ac642e45e8dbffa6a5f006f23525215f1c1a22
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:d5b404530b7d6ca8c7eec484dbcff32544c3ce8727a4d61c703396ae3fded62d
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:ac173cc6724b867a5cd2cec68cb3bab81a431ea11fdbb23810426dff5e531b03
        version: 4.19.9-rhodf
      entries:
      - name: ocs-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: ocs-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: ocs-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: ocs-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: ocs-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: ocs-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: ocs-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: ocs-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: ocs-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: ocs-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: ocs-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |2-

            [
                {
                    "apiVersion": "ocs.openshift.io/v1",
                    "kind": "StorageCluster",
                    "metadata": {
                        "name": "example-storagecluster",
                        "namespace": "openshift-storage"
                    },
                    "spec": {
                        "monPVCTemplate": {
                            "spec": {
                                "accessModes": [
                                    "ReadWriteOnce"
                                ],
                                "resources": {
                                    "requests": {
                                        "storage": "10Gi"
                                    }
                                },
                                "storageClassName": "gp2-csi"
                            }
                        },
                        "storageDeviceSets": [
                            {
                                "count": 3,
                                "dataPVCTemplate": {
                                    "spec": {
                                        "accessModes": [
                                            "ReadWriteOnce"
                                        ],
                                        "resources": {
                                            "requests": {
                                                "storage": "1Ti"
                                            }
                                        },
                                        "storageClassName": "gp2-csi",
                                        "volumeMode": "Block"
                                    }
                                },
                                "name": "example-deviceset",
                                "placement": {},
                                "portable": true,
                                "resources": {}
                            }
                        ]
                    }
                }
            ]
          capabilities: Deep Insights
          categories: Storage
          containerImage: registry.redhat.io/odf4/ocs-rhel9-operator@sha256:a4d564a143f44ec47012ee224d4d2b99db537809c7228c0f5adcb91434b67a44
          createdAt: "2025-12-18T07:42:24Z"
          description: Red Hat OpenShift Container Storage provides hyperconverged
            storage for applications within an OpenShift cluster.
          external.features.ocs.openshift.io/supported-platforms: '["BareMetal", "None",
            "VSphere", "OpenStack", "oVirt"]'
          external.features.ocs.openshift.io/validation: '{"secrets":["rook-ceph-operator-creds",
            "rook-csi-rbd-node", "rook-csi-rbd-provisioner"], "configMaps": ["rook-ceph-mon-endpoints",
            "rook-ceph-mon"], "storageClasses": ["ceph-rbd"], "cephClusters": ["monitoring-endpoint"]}'
          features.ocs.openshift.io/disabled: '["ss-list", "install-wizard", "block-pool",
            "mcg-resource", "odf-dashboard", "common", "storage-provider", "storage-provisioner",
            "dashboard-resources", "csv-actions", "inventory-item", "alert-actions"]'
          features.ocs.openshift.io/enabled: '["kms", "arbiter", "flexible-scaling",
            "multus", "pool-management", "namespace-store", "mcg-standalone", "taint-nodes",
            "vault-sa-kms", "hpcs-kms"]'
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/initialization-resource: "\n    {\n        \"apiVersion\":
            \"ocs.openshift.io/v1\",\n        \"kind\": \"StorageCluster\",\n        \"metadata\":
            {\n            \"name\": \"example-storagecluster\",\n            \"namespace\":
            \"openshift-storage\"\n        },\n        \"spec\": {\n            \"monPVCTemplate\":
            {\n                \"spec\": {\n                    \"accessModes\": [\n
            \                       \"ReadWriteOnce\"\n                    ],\n                    \"resources\":
            {\n                        \"requests\": {\n                            \"storage\":
            \"10Gi\"\n                        }\n                    },\n                    \"storageClassName\":
            \"gp2-csi\"\n                }\n            },\n            \"storageDeviceSets\":
            [\n                {\n                    \"count\": 3,\n                    \"dataPVCTemplate\":
            {\n                        \"spec\": {\n                            \"accessModes\":
            [\n                                \"ReadWriteOnce\"\n                            ],\n
            \                           \"resources\": {\n                                \"requests\":
            {\n                                    \"storage\": \"1Ti\"\n                                }\n
            \                           },\n                            \"storageClassName\":
            \"gp2-csi\",\n                            \"volumeMode\": \"Block\"\n
            \                       }\n                    },\n                    \"name\":
            \"example-deviceset\",\n                    \"placement\": {},\n                    \"portable\":
            true,\n                    \"resources\": {}\n                }\n            ]\n
            \       }\n    }\n\t"
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:7889a3443f24821d3946b734f630a5c34cd5923fe52912661766d170bf3b56c6
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/internal-objects: '["ocsinitializations.ocs.openshift.io","storageautoscalers.ocs.openshift.io","storageclusterpeers.ocs.openshift.io","storageconsumers.ocs.openshift.io"]'
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/ocs-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OCSInitialization represents the initial data to be created
              when the operator is installed.
            displayName: OCS Initialization
            kind: OCSInitialization
            name: ocsinitializations.ocs.openshift.io
            version: v1
          - description: StorageAutoScaler represents the automatic storage scaling
              for storage cluster.
            displayName: Storage Auto Scaling
            kind: StorageAutoScaler
            name: storageautoscalers.ocs.openshift.io
            version: v1
          - description: StorageClusterPeer is the Schema for the storageclusterpeers
              API
            displayName: Storage Cluster Peer
            kind: StorageClusterPeer
            name: storageclusterpeers.ocs.openshift.io
            version: v1
          - description: StorageCluster represents a cluster including Ceph Cluster,
              NooBaa and all the storage and compute resources required.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.ocs.openshift.io
            version: v1
          - description: StorageConsumer is the Schema for the storageconsumers API
            displayName: Storage Consumer
            kind: StorageConsumer
            name: storageconsumers.ocs.openshift.io
            version: v1alpha1
        description: |
          **Red Hat OpenShift Container Storage** deploys three operators.

          ### OpenShift Container Storage operator

          The OpenShift Container Storage operator is the primary operator for OpenShift Container Storage. It serves to facilitate the other operators in OpenShift Container Storage by performing administrative tasks outside their scope as well as watching and configuring their CustomResources.

          ### Rook

          [Rook][1] deploys and manages Ceph on OpenShift, which provides block and file storage.

          # Core Capabilities

          * **Self-managing service:** No matter which supported storage technologies you choose, OpenShift Container Storage ensures that resources can be deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Container Storage you can either build dedicated storage clusters or hyper-converged clusters where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Container Storage:** OpenShift Container Storage integrates Ceph with multiple storage presentations including object storage (compatible with S3), block storage, and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Container Storage efficiently distributes and replicates your data across your cluster to minimize the risk of data loss. With snapshots, cloning, and versioning, no more losing sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data storage for your workloads, using a single namespace.

          [1]: https://rook.io
        displayName: OpenShift Container Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        - rook
        - ceph
        - block storage
        - shared filesystem
        - object storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ocs-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:64537ae6999feb2c7e449d8d5a1cdf5f64450b45934a7dba2b82542a5f6adc20
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:1e1e53d68779e4575ff7958307c61e1341efffc225ccfdc75c2518e8797f0fd7
        - registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:7889a3443f24821d3946b734f630a5c34cd5923fe52912661766d170bf3b56c6
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:0a2285aea9606696c4ea75644f2019bd199c6632de4b7f459f4024d5b3f66048
        - registry.redhat.io/odf4/ocs-rhel9-operator@sha256:a4d564a143f44ec47012ee224d4d2b99db537809c7228c0f5adcb91434b67a44
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
        version: 4.20.4-rhodf
      entries:
      - name: ocs-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: ocs-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: ocs-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: ocs-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: ocs-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: ocs-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Dynatrace LLC
      provider-url: www.dynatrace.com
    name: dynatrace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dynatrace-operator.v1.7.2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          containerImage: registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
          createdAt: 2025-11-17T09:03:01.768309
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.7.2
          operatorframework.io/suggested-namespace: dynatrace
          operators.openshift.io/valid-subscription: '["Dynatrace Platform Subscription
            (DPS)","Dynatrace Classic License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Dynatrace/dynatrace-operator
          support: Dynatrace
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta3
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta4
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta5
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha1
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha2
        description: |
          The Dynatrace Operator supports rollout and lifecycle management of various Dynatrace components in Kubernetes and OpenShift.

          Currently the Dynatrace Operator supports the following capabilities:

          ### OneAgent
            * `classicFullStack` rolls out one OneAgent pod per node to monitor its pods and the node itself
            * `applicationMonitoring` is a webhook based injection mechanism for automatic app-only injection
            * `hostMonitoring` monitors only the hosts, i.e., the nodes, in the cluster without app-only injection
          ### ActiveGate
            * `routing` routes OneAgent traffic through the ActiveGate
            * `kubernetes-monitoring` allows monitoring the Kubernetes API
            * `metrics-ingest` routes enriched metrics through an ActiveGate

          For more information please refer to [our DynaKube Custom Resource examples](https://dt-url.net/dynakube-samples).

          ### Installation
          Once you've installed the Dynatrace Operator, you can create a DynaKube custom resource.

          First, please add a Secret within the Project you've deployed the Dynatrace Operator to, which would contain your API and PaaS tokens. Create tokens of type *Dynatrace API* (`API_TOKEN`) and *Platform as a Service* (`PAAS_TOKEN`) and use their values in the following commands respectively.

          For assistance please refer to [Create user-generated access tokens](https://www.dynatrace.com/support/help/shortlink/token#create-user-generated-access-tokens).

          ``` $ oc -n <project> create secret generic dynakube --from-literal="apiToken=API_TOKEN" --from-literal="paasToken=PAAS_TOKEN" ```

          You may update this Secret at any time to rotate the tokens.

          After creation of the secret add the DynaKube object in the project where the Dynatrace Operator has been deployed, configured to your needs.

          ### Required Parameters
          * `apiUrl` - provide the URL to the API of your Dynatrace environment. In Dynatrace SaaS it will look like `https://<ENVIRONMENTID>.live.dynatrace.com/api` . In Dynatrace Managed like `https://<YourDynatraceServerURL>/e/<ENVIRONMENTID>/api` .

          ### Advanced Options
          * **Disable Certificate Checking** - disable any certificate validation that may interact poorly with proxies with in your cluster
          * **Image Override** - use a copy of the ActiveGate container image from a registry other than Docker's or Red Hat's

          For a complete list of supported parameters please consult the [Operator Deploy Guide](https://www.dynatrace.com/support/help/shortlink/openshift-deploy).

          ### Help
          You can find more about our instructions in our [documentation](https://www.dynatrace.com/support/help/shortlink/openshift-deploy#install-dynatrace-operator).
        displayName: Dynatrace Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - dynatrace
        - oneagent
        - activegate
        - observability
        links:
        - name: Dynatrace Operator
          url: https://github.com/Dynatrace/dynatrace-operator
        - name: OpenShift Monitoring Info
          url: https://www.dynatrace.com/technologies/openshift-monitoring
        maintainers:
        - email: support@dynatrace.com
          name: Dynatrace LLC
        maturity: alpha
        provider:
          name: Dynatrace LLC
          url: www.dynatrace.com
        relatedImages:
        - registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
        - registry.connect.redhat.com/dynatrace/dynatrace-operator-bundle@sha256:7311dca05f1b6131b176ee5410165bee1f8aa01549da2e5c58c3c53bafc36a18
        version: 1.7.2
      entries:
      - name: dynatrace-operator.v1.7.2
        version: 1.7.2
      - name: dynatrace-operator.v1.7.1
        version: 1.7.1
      - name: dynatrace-operator.v1.7.0
        version: 1.7.0
      - name: dynatrace-operator.v1.6.2
        version: 1.6.2
      - name: dynatrace-operator.v1.6.1
        version: 1.6.1
      - name: dynatrace-operator.v1.6.0
        version: 1.6.0
      - name: dynatrace-operator.v1.5.1
        version: 1.5.1
      - name: dynatrace-operator.v1.5.0
        version: 1.5.0
      - name: dynatrace-operator.v1.4.2
        version: 1.4.2
      - name: dynatrace-operator.v1.4.1
        version: 1.4.1
      - name: dynatrace-operator.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: alpha
    packageName: dynatrace-operator
    provider:
      name: Dynatrace LLC
      url: www.dynatrace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-trino-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trino-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/trino-operator@sha256:0aa26778c788e829b7226c51fd3ea384b4e9f23d3c3ef37f05390a9400448322
          description: Stackable Operator for Trino
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/trino-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for TrinoClusterSpec via `CustomResource`
            displayName: trinoclusters.trino.stackable.tech
            kind: TrinoCluster
            name: trinoclusters.trino.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for TrinoCatalogSpec via `CustomResource`
            displayName: trinocatalogs.trino.stackable.tech
            kind: TrinoCatalog
            name: trinocatalogs.trino.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Trino
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - trino
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/trino-operator@sha256:0aa26778c788e829b7226c51fd3ea384b4e9f23d3c3ef37f05390a9400448322
        - registry.connect.redhat.com/stackable/stackable-trino-operator@sha256:448b119ee427df47019b35103dfc5fbc79f52dc06cfdc71a81410593fdde9d7c
        version: 25.11.0
      entries:
      - name: trino-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-trino-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-emrcontainers-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-emrcontainers-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "emrcontainers.services.k8s.aws/v1alpha1",
                "kind": "VirtualCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/emrcontainers-controller:1.3.0
          createdAt: "2025-12-30T22:04:30Z"
          description: AWS EMR on EKS controller is a service controller for managing
            EMR on EKS resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: JobRun represents the state of an AWS emrcontainers JobRun
              resource.
            displayName: JobRun
            kind: JobRun
            name: jobruns.emrcontainers.services.k8s.aws
            version: v1alpha1
          - description: VirtualCluster represents the state of an AWS emrcontainers
              VirtualCluster resource.
            displayName: VirtualCluster
            kind: VirtualCluster
            name: virtualclusters.emrcontainers.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EMR on EKS resources in AWS from within your Kubernetes cluster.

          **About Amazon EMR on EKS**

          Amazon EMR on EKS provides a deployment option for Amazon EMR that allows you to run open-source big data frameworks on Amazon Elastic Kubernetes Service (Amazon EKS). With this deployment option, you can focus on running analytics workloads while Amazon EMR on EKS builds, configures, and manages containers for open-source applications.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EMR on EKS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - emrcontainers
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EMR on EKS Developer Resources
          url: https://docs.aws.amazon.com/emr/latest/EMR-on-EKS-DevelopmentGuide/emr-eks.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: emr on eks maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/emrcontainers-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-emrcontainers-controller@sha256:5b0174f334c167599cd3b4f3f23cd195b15ff246bb757c9c00343925b54b15ce
        version: 1.3.0
      entries:
      - name: ack-emrcontainers-controller.v1.3.0
        version: 1.3.0
      - name: ack-emrcontainers-controller.v1.2.0
        version: 1.2.0
      - name: ack-emrcontainers-controller.v1.1.2
        version: 1.1.2
      - name: ack-emrcontainers-controller.v1.1.1
        version: 1.1.1
      - name: ack-emrcontainers-controller.v1.1.0
        version: 1.1.0
      - name: ack-emrcontainers-controller.v1.0.27
        version: 1.0.27
      - name: ack-emrcontainers-controller.v1.0.25
        version: 1.0.25
      - name: ack-emrcontainers-controller.v1.0.24
        version: 1.0.24
      - name: ack-emrcontainers-controller.v1.0.23
        version: 1.0.23
      - name: ack-emrcontainers-controller.v1.0.22
        version: 1.0.22
      - name: ack-emrcontainers-controller.v1.0.21
        version: 1.0.21
      - name: ack-emrcontainers-controller.v1.0.18
        version: 1.0.18
      - name: ack-emrcontainers-controller.v1.0.16
        version: 1.0.16
      - name: ack-emrcontainers-controller.v1.0.15
        version: 1.0.15
      - name: ack-emrcontainers-controller.v1.0.14
        version: 1.0.14
      - name: ack-emrcontainers-controller.v1.0.13
        version: 1.0.13
      - name: ack-emrcontainers-controller.v1.0.12
        version: 1.0.12
      - name: ack-emrcontainers-controller.v1.0.11
        version: 1.0.11
      - name: ack-emrcontainers-controller.v1.0.9
        version: 1.0.9
      - name: ack-emrcontainers-controller.v1.0.8
        version: 1.0.8
      - name: ack-emrcontainers-controller.v1.0.4
        version: 1.0.4
      - name: ack-emrcontainers-controller.v1.0.3
        version: 1.0.3
      - name: ack-emrcontainers-controller.v1.0.1
        version: 1.0.1
      - name: ack-emrcontainers-controller.v1.0.0
        version: 1.0.0
      - name: ack-emrcontainers-controller.v0.1.2
        version: 0.1.2
      - name: ack-emrcontainers-controller.v0.1.0
        version: 0.1.0
      - name: ack-emrcontainers-controller.v0.0.10
        version: 0.0.10
      - name: ack-emrcontainers-controller.v0.0.9
        version: 0.0.9
      - name: ack-emrcontainers-controller.v0.0.8
        version: 0.0.8
      - name: ack-emrcontainers-controller.v0.0.7
        version: 0.0.7
      - name: ack-emrcontainers-controller.v0.0.6
        version: 0.0.6
      - name: ack-emrcontainers-controller.v0.0.5
        version: 0.0.5
      - name: ack-emrcontainers-controller.v0.0.4
        version: 0.0.4
      - name: ack-emrcontainers-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-emrcontainers-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Protocol Labs
      provider-url: ""
    name: ipfs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ipfs-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cluster.ipfs.io/v1alpha1",
                "kind": "CircuitRelay",
                "metadata": {
                  "name": "circuitrelay-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "cluster.ipfs.io/v1alpha1",
                "kind": "IpfsCluster",
                "metadata": {
                  "name": "ipfscluster-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Storage, Networking, Big Data
          containerImage: quay.io/redhat-et-ipfs/ipfs-operator:v0.0.1
          createdAt: 2022-04-05T15:50:37-0400
          operatorframework.io/suggested-namespace: ipfs-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ipfs-cluster/ipfs-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CircuitRelay is the Schema for the circuitrelays API.
            displayName: Circuit Relay
            kind: CircuitRelay
            name: circuitrelays.cluster.ipfs.io
            version: v1alpha1
          - description: IpfsCluster is the Schema for the ipfs API.
            displayName: Ipfs Cluster
            kind: IpfsCluster
            name: ipfsclusters.cluster.ipfs.io
            version: v1alpha1
        description: "The IPFS Operator enables users to easily create IPFS Cluster
          instances\nwithin their Kubernetes or OpenShift clusters. \n\n### Supported
          Features\n* Horizontal scaling\n* Joining collaborative clusters\n* Controlling
          IPFS node resource usage\n* Specifying reprovider settings  \n\n### Documentation
          \nDocumentation can be found on our [read-the-docs page](https://ipfs-operator.readthedocs.io/en/latest/),
          as well as our [GitHub repository](https://github.com/ipfs-cluster/ipfs-operator).\n\n###
          Getting Help\nIn case you run into issues while using the operator, please
          create an issue in our [GitHub\nrepository](https://github.com/ipfs-cluster/ipfs-operator).\n\n###
          Contributing\nWe welcome contributions of all types and sizes! You can find
          open issues\nin our [GitHub Repository](https://github.com/ipfs-cluster/ipfs-operator/issues),\nas
          well as make your own issue if you feel that something is missing.\n\n###
          License\nIPFS Operator is licensed under the [Apache 2.0 License](https://github.com/ipfs-cluster/ipfs-operator/blob/main/LICENSE)"
        displayName: IPFS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ipfs
        - ipfs cluster
        - decentralized storage
        - peer-to-peer
        - distributed hash table
        - content-addressed
        links:
        - name: IPFS Operator GitHub page
          url: https://github.com/ipfs-cluster/ipfs-operator
        - name: IPFS Cluster
          url: https://ipfscluster.io/
        - name: IPFS
          url: https://ipfs.io/
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Protocol Labs
        relatedImages:
        - quay.io/openshift-community-operators/ipfs-operator@sha256:03a61ef328feb626408d42904cdfb9d45f66e022d5a1e1088a15b74455487743
        - quay.io/redhat-et-ipfs/ipfs-operator:v0.0.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.0.2
      entries:
      - name: ipfs-operator.v0.0.2
        version: 0.0.2
      - name: ipfs-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ipfs-operator
    provider:
      name: Protocol Labs
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: lib-bucket-provisioner
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lib-bucket-provisioner.v2.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Storage,Big Data
          certified: "false"
          containerImage: quay.io/noobaa/pause
          createdAt: "2020-07-01T06:28:48Z"
          description: Library for the dynamic provisioning of object store buckets
            to be used by object store providers.
          repository: https://github.com/kube-object-storage/lib-bucket-provisioner
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          required:
          - description: Claim a bucket just like claiming a PV. Automate you app
              bucket provisioning by creating OBC with your app deployment. A secret
              and configmap (name=claim) will be created with access details for the
              app pods.
            displayName: ObjectBucketClaim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
          - description: Used under-the-hood. Created per ObjectBucketClaim and keeps
              provisioning information
            displayName: ObjectBucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
        description: |
          ### CRD-only Operator

          This operator package is **CRD-only** and the operator is a no-op operator.

          Instead, bucket provisioners using this library are using these CRD's and using CSV [required-crds](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/Documentation/design/building-your-csv.md#required-crds) them so that OLM can install it as a dependency.

          ### Generic Bucket Provisioning

          Kubernetes natively supports dynamic provisioning for many types of file and block storage, but lacks support for object bucket provisioning.

          This repo is a placeholder for an object store bucket provisioning library, very similar to the Kubernetes [sig-storage-lib-external-provisioner](https://github.com/kubernetes-sigs/sig-storage-lib-external-provisioner/blob/master/controller/controller.go) library.

          ### Known Provisioners
          - https://github.com/noobaa/noobaa-operator (NooBaa)
          - https://github.com/rook/rook (Rook-Ceph)
          - https://github.com/yard-turkey/aws-s3-provisioner (AWS-S3)
        displayName: lib-bucket-provisioner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - object
        - bucket
        - storage
        - cloud
        - s3
        links:
        - name: Github
          url: https://github.com/kube-object-storage/lib-bucket-provisioner
        maintainers:
        - email: jcope@redhat.com
          name: Jon Cope
        - email: jvance@redhat.com
          name: Jeff Vance
        - email: gmargali@redhat.com
          name: Guy Margalit
        - email: dzaken@redhat.com
          name: Danny Zaken
        - email: nbecker@redhat.com
          name: Nimrod Becker
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/noobaa/pause
        - quay.io/openshift-community-operators/lib-bucket-provisioner@sha256:132ecc88db79fb8b117a7a7974ca8f704600bac489923d918b78fd00378d5a5f
        version: 2.0.0
      entries:
      - name: lib-bucket-provisioner.v2.0.0
        version: 2.0.0
      name: alpha
    defaultChannel: alpha
    packageName: lib-bucket-provisioner
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: https://github.com/che-incubator/kubernetes-image-puller-operator
    name: kubernetes-imagepuller-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubernetes-imagepuller-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "che.eclipse.org/v1alpha1",
                "kind": "KubernetesImagePuller",
                "metadata": {
                  "name": "image-puller"
                },
                "spec": {
                  "daemonsetName": "k8s-image-puller",
                  "images": "java11-maven=quay.io/eclipse/che-java11-maven:next;che-theia=quay.io/eclipse/che-theia:next"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/eclipse/kubernetes-image-puller-operator:1.1.0
          createdAt: "2024-01-15T16:23:04Z"
          description: Create and manage kubernetes-image-puller instances.
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/che-incubator/kubernetes-image-puller-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubernetesImagePuller is the Schema for the kubernetesimagepullers
              API
            displayName: Kubernetes Image Puller
            kind: KubernetesImagePuller
            name: kubernetesimagepullers.che.eclipse.org
            version: v1alpha1
        description: "## About the managed application\n\nCreate a `KubernetesImagePuller`
          custom resource to automatically configure and run an instance of the [kubernetes-image-puller.](https://github.com/che-incubator/kubernetes-image-puller)\n##
          About this Operator\n\nThe `KubernetesImagePuller` custom resource understands
          the following fields in the `spec`:\n\n1. `configMapName` - The name of
          the `ConfigMap` to create\t\n2. `daemonsetName` - The name of the `DaemonSet`
          to be create.\n3. `deploymentName` - The name of the `kubernetes-image-puller`
          `Deployment` to create.\n4. `images` - A list of key-value pairs separated
          by semicolons of images to pull.  For example: `java=quay.io/eclipse/che-java8-maven:latest;theia=quay.io/eclipse/che-theia:next`\n5.
          `cachingIntervalHours` - The amount of time, in hours, between `DaemonSet`
          health checks.\n6. `cachingMemoryRequest` - The memory request for each
          cached image when the puller is running.\n7. `cachingMemoryLimit` - The
          memory limit for each cached image when the puller is running.\n8. `nodeSelector`
          - Node selector applied to pods created by the `DaemonSet`.\n## Prerequisites
          for enabling this Operator\n\nThe operator requires an existing namespace
          to be installed in.\nCheck the [README](https://github.com/che-incubator/kubernetes-image-puller-operator#installing-the-operator)
          for more details.\n"
        displayName: Kubernetes Image Puller Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - che
        - kubernetes-image-puller
        links:
        - name: Repository
          url: https://github.com/che-incubator/kubernetes-image-puller-operator
        maintainers:
        - email: ibuziuk@redhat.com
          name: Ilya Buziuk
        - email: abazko@redhat.com
          name: Anatolii Bazko
        maturity: stable
        provider:
          name: Red Hat, Inc.
          url: https://github.com/che-incubator/kubernetes-image-puller-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/kubernetes-imagepuller-operator@sha256:a72e3728dcf395667820c10c4c5ccb3f3d040ae5d04f50680e193398d3b72b88
        - quay.io/eclipse/kubernetes-image-puller-operator:1.1.0
        - quay.io/brancz/kube-rbac-proxy:v0.11.0
        version: 1.1.0
      entries:
      - name: kubernetes-imagepuller-operator.v1.1.0
        version: 1.1.0
      - name: kubernetes-imagepuller-operator.v1.0.6
        version: 1.0.6
      - name: kubernetes-imagepuller-operator.v1.0.5
        version: 1.0.5
      - name: kubernetes-imagepuller-operator.v1.0.4
        version: 1.0.4
      - name: kubernetes-imagepuller-operator.v1.0.3
        version: 1.0.3
      - name: kubernetes-imagepuller-operator.v1.0.2
        version: 1.0.2
      - name: kubernetes-imagepuller-operator.v1.0.1
        version: 1.0.1
      - name: kubernetes-imagepuller-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: kubernetes-imagepuller-operator
    provider:
      name: Red Hat, Inc.
      url: https://github.com/che-incubator/kubernetes-image-puller-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudwatchlogs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudwatchlogs-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cloudwatchlogs.services.k8s.aws/v1alpha1",
                "kind": "LogGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudwatchlogs-controller:1.2.0
          createdAt: "2025-11-29T03:46:37Z"
          description: AWS CloudWatch Logs controller is a service controller for
            managing CloudWatch Logs resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: LogGroup represents the state of an AWS cloudwatchlogs LogGroup
              resource.
            displayName: LogGroup
            kind: LogGroup
            name: loggroups.cloudwatchlogs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon CloudWatch Logs resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudWatch Logs**

          You can use Amazon CloudWatch Logs to monitor, store, and access your log files from Amazon Elastic Compute Cloud (Amazon EC2) instances, AWS CloudTrail, Route 53, and other sources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon CloudWatch Logs
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudwatchlogs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudWatch Logs Developer Resources
          url: https://aws.amazon.com/cloudwatch/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudwatch maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/cloudwatchlogs-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-cloudwatchlogs-controller@sha256:97870c245aa628ca61062685d89e93050a9a47b5abcbc11b1c22358e5d5da2f3
        version: 1.2.0
      entries:
      - name: ack-cloudwatchlogs-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudwatchlogs-controller.v1.1.2
        version: 1.1.2
      - name: ack-cloudwatchlogs-controller.v1.1.1
        version: 1.1.1
      - name: ack-cloudwatchlogs-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudwatchlogs-controller.v1.0.14
        version: 1.0.14
      - name: ack-cloudwatchlogs-controller.v1.0.13
        version: 1.0.13
      - name: ack-cloudwatchlogs-controller.v1.0.12
        version: 1.0.12
      - name: ack-cloudwatchlogs-controller.v1.0.11
        version: 1.0.11
      - name: ack-cloudwatchlogs-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudwatchlogs-controller.v1.0.9
        version: 1.0.9
      - name: ack-cloudwatchlogs-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudwatchlogs-controller.v1.0.7
        version: 1.0.7
      - name: ack-cloudwatchlogs-controller.v1.0.6
        version: 1.0.6
      - name: ack-cloudwatchlogs-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudwatchlogs-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudwatchlogs-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudwatchlogs-controller.v0.0.11
        version: 0.0.11
      - name: ack-cloudwatchlogs-controller.v0.0.10
        version: 0.0.10
      - name: ack-cloudwatchlogs-controller.v0.0.9
        version: 0.0.9
      - name: ack-cloudwatchlogs-controller.v0.0.8
        version: 0.0.8
      - name: ack-cloudwatchlogs-controller.v0.0.7
        version: 0.0.7
      - name: ack-cloudwatchlogs-controller.v0.0.4
        version: 0.0.4
      - name: ack-cloudwatchlogs-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudwatchlogs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudwatch-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudwatch-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudwatch-controller:1.4.0
          createdAt: "2025-11-29T03:47:43Z"
          description: AWS CloudWatch controller is a service controller for managing
            CloudWatch resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Dashboard represents the state of an AWS cloudwatch Dashboard
              resource.
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.cloudwatch.services.k8s.aws
            version: v1alpha1
          - description: MetricAlarm represents the state of an AWS cloudwatch MetricAlarm
              resource.
            displayName: MetricAlarm
            kind: MetricAlarm
            name: metricalarms.cloudwatch.services.k8s.aws
            version: v1alpha1
          - description: MetricStream represents the state of an AWS cloudwatch MetricStream
              resource.
            displayName: MetricStream
            kind: MetricStream
            name: metricstreams.cloudwatch.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon CloudWatch resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudWatch**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon CloudWatch
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudwatch
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudWatch Developer Resources
          url: https://aws.amazon.com/CloudWatch/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudwatch maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/cloudwatch-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-cloudwatch-controller@sha256:a4bcbbc9b6fa21797f47a34b93e09674200b98d67cbe9f704905dd0c91d67101
        version: 1.4.0
      entries:
      - name: ack-cloudwatch-controller.v1.4.0
        version: 1.4.0
      - name: ack-cloudwatch-controller.v1.3.1
        version: 1.3.1
      - name: ack-cloudwatch-controller.v1.3.0
        version: 1.3.0
      - name: ack-cloudwatch-controller.v1.2.1
        version: 1.2.1
      - name: ack-cloudwatch-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudwatch-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudwatch-controller.v1.0.13
        version: 1.0.13
      - name: ack-cloudwatch-controller.v1.0.12
        version: 1.0.12
      - name: ack-cloudwatch-controller.v1.0.11
        version: 1.0.11
      - name: ack-cloudwatch-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudwatch-controller.v1.0.9
        version: 1.0.9
      - name: ack-cloudwatch-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudwatch-controller.v1.0.7
        version: 1.0.7
      - name: ack-cloudwatch-controller.v1.0.6
        version: 1.0.6
      - name: ack-cloudwatch-controller.v1.0.5
        version: 1.0.5
      - name: ack-cloudwatch-controller.v1.0.4
        version: 1.0.4
      - name: ack-cloudwatch-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudwatch-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudwatch-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudwatch-controller.v0.0.12
        version: 0.0.12
      - name: ack-cloudwatch-controller.v0.0.11
        version: 0.0.11
      - name: ack-cloudwatch-controller.v0.0.10
        version: 0.0.10
      - name: ack-cloudwatch-controller.v0.0.9
        version: 0.0.9
      - name: ack-cloudwatch-controller.v0.0.8
        version: 0.0.8
      - name: ack-cloudwatch-controller.v0.0.3
        version: 0.0.3
      - name: ack-cloudwatch-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudwatch-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: odr-cluster-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odr-cluster-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRClusterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ramen",
                    "app.kubernetes.io/instance": "drclusterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "drclusterconfig",
                    "app.kubernetes.io/part-of": "ramen"
                  },
                  "name": "drclusterconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "VolumeReplicationGroup",
                "metadata": {
                  "name": "volumereplicationgroup-sample"
                },
                "spec": {
                  "async": {
                    "schedulingInterval": "10m"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ],
                        "name": "cpd"
                      },
                      {
                        "includedResources": [
                          "Deployment"
                        ],
                        "name": "deployments"
                      },
                      {
                        "excludedResources": [
                          ""
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includeClusterResources": true,
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "cpd",
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      },
                      {
                        "backupName": "deployments",
                        "includedResources": [
                          "Deployment"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "excludedResources": [
                          "ConfigMap",
                          "Secret",
                          "Deployment",
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      }
                    ]
                  },
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  },
                  "replicationState": "primary",
                  "s3Profiles": [
                    "s3-profile-of-east",
                    "s3-profile-of-west"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T08:01:01Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DRClusterConfig
            name: drclusterconfigs.ramendr.openshift.io
            version: v1alpha1
          - kind: MaintenanceMode
            name: maintenancemodes.ramendr.openshift.io
            version: v1alpha1
          - kind: ProtectedVolumeReplicationGroupList
            name: protectedvolumereplicationgrouplists.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupDestination
            name: replicationgroupdestinations.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupSource
            name: replicationgroupsources.ramendr.openshift.io
            version: v1alpha1
          - description: VolumeReplicationGroup is the Schema for the volumereplicationgroups
              API
            displayName: Volume Replication Group
            kind: VolumeReplicationGroup
            name: volumereplicationgroups.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Cluster is a disaster-recovery orchestrator for
          stateful applications, that operates from an Advanced Cluster Management
          (ACM) managed cluster and is controlled by Openshift DR Hub operator to
          orchestrate the life-cycle of an application, and its state on the managed
          cluster.
        displayName: Openshift DR Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-cluster-operator-bundle@sha256:08b88eee1cc768f2cebad6f50a42bcb0ac88dcb95b292b71ae9aed5ecefbc45f
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: odr-cluster-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odr-cluster-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odr-cluster-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odr-cluster-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odr-cluster-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odr-cluster-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odr-cluster-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odr-cluster-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odr-cluster-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odr-cluster-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odr-cluster-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRClusterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ramen",
                    "app.kubernetes.io/instance": "drclusterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "drclusterconfig",
                    "app.kubernetes.io/part-of": "ramen"
                  },
                  "name": "drclusterconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "VolumeReplicationGroup",
                "metadata": {
                  "name": "volumereplicationgroup-sample"
                },
                "spec": {
                  "async": {
                    "schedulingInterval": "10m"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ],
                        "name": "cpd"
                      },
                      {
                        "includedResources": [
                          "Deployment"
                        ],
                        "name": "deployments"
                      },
                      {
                        "excludedResources": [
                          ""
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includeClusterResources": true,
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "cpd",
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      },
                      {
                        "backupName": "deployments",
                        "includedResources": [
                          "Deployment"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "excludedResources": [
                          "ConfigMap",
                          "Secret",
                          "Deployment",
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      }
                    ]
                  },
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  },
                  "replicationState": "primary",
                  "s3Profiles": [
                    "s3-profile-of-east",
                    "s3-profile-of-west"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:49:42Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DRClusterConfig
            name: drclusterconfigs.ramendr.openshift.io
            version: v1alpha1
          - kind: MaintenanceMode
            name: maintenancemodes.ramendr.openshift.io
            version: v1alpha1
          - kind: ProtectedVolumeReplicationGroupList
            name: protectedvolumereplicationgrouplists.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupDestination
            name: replicationgroupdestinations.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupSource
            name: replicationgroupsources.ramendr.openshift.io
            version: v1alpha1
          - description: VolumeReplicationGroup is the Schema for the volumereplicationgroups
              API
            displayName: Volume Replication Group
            kind: VolumeReplicationGroup
            name: volumereplicationgroups.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Cluster is a disaster-recovery orchestrator for
          stateful applications, that operates from an Advanced Cluster Management
          (ACM) managed cluster and is controlled by Openshift DR Hub operator to
          orchestrate the life-cycle of an application, and its state on the managed
          cluster.
        displayName: Openshift DR Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-cluster-operator-bundle@sha256:f6047276c48b66bd6e2d34eb38e5f7278963e98355ae1a131f1eb3df7827c7d2
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 4.20.4-rhodf
      entries:
      - name: odr-cluster-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odr-cluster-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odr-cluster-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odr-cluster-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odr-cluster-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odr-cluster-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: JFrog
      provider-url: ""
    name: openshiftartifactoryha-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: artifactory-ha-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.helm.k8s.io/v1",
                "kind": "OpenshiftArtifactoryHa",
                "metadata": {
                  "name": "openshiftartifactoryha"
                },
                "spec": {
                  "artifactory-ha": {
                    "artifactory": {
                      "joinKey": "OVERRIDE",
                      "masterKey": "OVERRIDE",
                      "node": {
                        "replicaCount": 2,
                        "waitForPrimaryStartup": {
                          "enabled": false
                        }
                      }
                    },
                    "databaseUpgradeReady": true,
                    "database": {
                      "driver": "OVERRIDE",
                      "password": "OVERRIDE",
                      "type": "OVERRIDE",
                      "url": "OVERRIDE",
                      "user": "OVERRIDE"
                    },
                    "nginx": {
                      "http": {
                        "externalPort": 80,
                        "internalPort": 8080
                      },
                      "https": {
                        "externalPort": 443,
                        "internalPort": 8443
                      },
                      "service": {
                        "ssloffload": false
                      },
                      "tlsSecretName": "OVERRIDE"
                    },
                    "postgresql": {
                      "enabled": false
                    },
                    "waitForDatabase": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools,Integration & Delivery
          certified: "true"
          containerImage: registry.connect.redhat.com/jfrog/artifactory-operator@sha256:de69bb16052d5ac6fed9882eb65d49446b6fa1cc5ba830dd2a39e882712b1347
          createdAt: 2024-03-23 00:00:00+00:00
          description: JFrog Artifactory Enterprise deploys Artifactory in a high
            availability environment across multiple pods
          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"
          operators.openshift.io/valid-subscription: Not required
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/jfrog/JFrog-Cloud-Installers/tree/openshift4/Openshift4
          support: JFrog
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents Artifactory HA Instances
            displayName: Artifactory HA
            kind: OpenshiftArtifactoryHa
            name: openshiftartifactoryhas.charts.helm.k8s.io
            version: v1
        description: |2+
           ## Breaking change
          Please update to version 1.1.10 of the operator.
          Version 1.1.8 and 1.1.9 have issues. Please skip these versions.
          If you are using operator version < 1.2.0 there is a issue with upgrade where artifactory version is not updated if you update operator version. As workaround you can update the Custom Resource OpenshiftArtifactoryHa which has hardcored image value.After upgrading to version 1.2.0 you can remove the below parameters from your CR so that future upgrade works without workaround. ``` artifactory-ha.artifactory.image.registry artifactory-ha.artifactory.image.repository artifactory-ha.artifactory.image.tag ```
          ## Overview
          Openshift Operator to deploy JFrog Artifactory Enterprise into your Openshift cluster.
          ## Security Context Constraints
          To deploy this helm chart you will need to be a cluster admin w/ access to the anyuid scc and add the operator service account to the anyuid scc.
          ```
          oc adm policy add-scc-to-user anyuid -z artifactory-ha-operator -n openshift-operators
          ```
          Add the service account for the Artifactory chart to deploy successfully:
          ``` oc adm policy add-scc-to-user anyuid -z openshiftartifactoryha-artifactory-ha -n artifactory ```
          ### Usage

          An external DB is required. The operator will not deploy a DB but will require you to specify the configuration values to connect to it.

          Search for JFrog and click JFrog Artifactory Enterprise Operator to install.

          Go to the Installed Operators.

          Wait for the JFrog Artifactory Enterprise Operator to complete the installation.

          Open the Operator and click on the provided API: Artifactory HA.

          Click Create New Instance and provide the following parameters for your DB configuration:

          ```
          DATABASE_TYPE
          DATABASE_DRIVER
          DATABASE_URL
          DATABASE_USER
          DATABASE_PASSWORD
          ```
          Master key and Join key must be supplied. To generate a new key for each run the command below:

          ```
          # Create a key
          export JOIN_KEY=$(openssl rand -hex 32)
          echo ${JOIN_KEY}
          ```

          To use TLS you will need to first create a k8s tls secret to store your .crt and .key file into.
          Then supply the value of this k8s secret into the TLS_SECRET field.
          ``` oc create secret tls my_tls_secret --cert=tls.crt --key=tls.key --namespace=my_namespace ```
          Click Create for Artifactory Enterprise to deploy into OpenShift and connect to it on the external IP exposed by the load balancer.
          ### Create a route
          To expose Artifactory from Openshift we recommend you create a new route in Openshift.
          You can either use the oc command line tool or the Openshift web console to generate a new route.
          Depending upon where you terminate TLS you will need to either specify pass through or edge.
          Command Line (Edge):
          ``` oc create route edge --service=openshiftartifactory-ha --cert=tls.crt --key=tls.key --ca-cert=ca.crt --hostname=www.example.com ```
          Or for more information visit the official Openshift documentation on routes here:
          https://docs.openshift.com/container-platform/4.6/networking/routes/route-configuration.html

        displayName: JFrog Artifactory Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - CI/CD
        - Developers
        - Software
        - Productivity
        - Artifact Repository
        - Repository Manager
        - Docker
        - Maven
        - Git
        - Helm
        - npm
        - go
        - golang
        - kubernetes
        - k8s
        - rpm
        - yum
        links:
        - name: JFrog
          url: https://www.jfrog.com
        - name: JFrog Artifact Repository
          url: https://jfrog.com/artifactory/
        - name: Artifactory Video
          url: https://www.youtube.com/watch?v=r2_A5CPo43U
        maintainers:
        - email: partner-support@jfrog.com
          name: JFrog
        maturity: alpha
        provider:
          name: JFrog
        relatedImages:
        - registry.connect.redhat.com/jfrog/artifactory-operator@sha256:de69bb16052d5ac6fed9882eb65d49446b6fa1cc5ba830dd2a39e882712b1347
        - registry.connect.redhat.com/jfrog/artifactory-pro@sha256:0986ca71419ae628892db11e7ca7da5ac1c60219c144ce9aeb2de6e683a45262
        - registry.redhat.io/rhel8/nginx-120@sha256:87f658744af695273c434fac8246b716728b691a17d5d0c5b89247362e61e45c
        - registry.connect.redhat.com/jfrog/artifactory-operator-bundle@sha256:d7bd0e90aff6e8fc9fbc4119e5f1ec89eba93487b84356e3af95208c1250fe44
        version: 1.3.3
      entries:
      - name: artifactory-ha-operator.v1.3.3
        version: 1.3.3
      name: alpha
    - currentCSV: artifactory-ha-operator.v1.1.18
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.helm.k8s.io/v1",
                "kind": "OpenshiftArtifactoryHa",
                "metadata": {
                  "name": "openshiftartifactoryha"
                },
                "spec": {
                  "artifactory-ha": {
                    "artifactory": {
                      "image": {
                        "registry": "registry.connect.redhat.com",
                        "repository": "jfrog/artifactory-pro",
                        "tag": "7.27.3-1"
                      },
                      "joinKey": "OVERRIDE",
                      "masterKey": "OVERRIDE",
                      "uid": "1000721030",
                      "node": {
                        "replicaCount": 2,
                        "waitForPrimaryStartup": {
                          "enabled": false
                        }
                      }
                    },
                    "databaseUpgradeReady": true,
                    "database": {
                      "driver": "OVERRIDE",
                      "password": "OVERRIDE",
                      "type": "OVERRIDE",
                      "url": "OVERRIDE",
                      "user": "OVERRIDE"
                    },
                    "initContainerImage": "registry.connect.redhat.com/jfrog/init@sha256:164b41720a37f75c6129c8a28d05cc56f821022313d44ff918cce4a2146d93e8",
                    "nginx": {
                      "uid": "1000720104",
                      "gid": "1000720107",
                      "http": {
                        "externalPort": 80,
                        "internalPort": 8080
                      },
                      "https": {
                        "externalPort": 443,
                        "internalPort": 8443
                      },
                      "image": {
                        "registry": "registry.redhat.io",
                        "repository": "rhel8/nginx-116",
                        "tag": "latest"
                      },
                      "service": {
                        "ssloffload": false
                      },
                      "tlsSecretName": "OVERRIDE"
                    },
                    "postgresql": {
                      "enabled": false
                    },
                    "waitForDatabase": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools,Integration & Delivery
          certified: "true"
          containerImage: registry.connect.redhat.com/jfrog/artifactory-operator@sha256:e292553e1b6e792ff19276c7f6565d7ed61dd95289eb176066329954bc93e371
          createdAt: 2020-03-25 00:00:00+00:00
          description: JFrog Artifactory Enterprise deploys Artifactory in a high
            availability environment across multiple pods
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/jfrog/JFrog-Cloud-Installers/tree/openshift4/Openshift4
          support: JFrog
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents Artifactory HA Instances
            displayName: Artifactory HA
            kind: OpenshiftArtifactoryHa
            name: openshiftartifactoryhas.charts.helm.k8s.io
            version: v1
        description: |2+
           ## Breaking change
          Please update to version 1.1.10 of the operator.
          Version 1.1.8 and 1.1.9 have issues. Please skip these versions.

          ## Overview
          Openshift Operator to deploy JFrog Artifactory Enterprise into your Openshift cluster.
          ## Security Context Constraints
          To deploy this helm chart you will need to be a cluster admin w/ access to the anyuid scc and add the operator service account to the anyuid scc.
          ```
          oc adm policy add-scc-to-user anyuid -z artifactory-ha-operator -n openshift-operators
          ```
          Add the service account for the Artifactory chart to deploy successfully:
          ``` oc adm policy add-scc-to-user anyuid -z openshiftartifactoryha-artifactory-ha -n artifactory ```
          ### Usage

          An external DB is required. The operator will not deploy a DB but will require you to specify the configuration values to connect to it.

          Search for JFrog and click JFrog Artifactory Enterprise Operator to install.

          Go to the Installed Operators.

          Wait for the JFrog Artifactory Enterprise Operator to complete the installation.

          Open the Operator and click on the provided API: Artifactory HA.

          Click Create New Instance and provide the following parameters for your DB configuration:

          ```
          DATABASE_TYPE
          DATABASE_DRIVER
          DATABASE_URL
          DATABASE_USER
          DATABASE_PASSWORD
          ```
          Master key and Join key must be supplied. To generate a new key for each run the command below:

          ```
          # Create a key
          export JOIN_KEY=$(openssl rand -hex 32)
          echo ${JOIN_KEY}
          ```

          To use TLS you will need to first create a k8s tls secret to store your .crt and .key file into.
          Then supply the value of this k8s secret into the TLS_SECRET field.
          ``` oc create secret tls my_tls_secret --cert=tls.crt --key=tls.key --namespace=my_namespace ```
          Click Create for Artifactory Enterprise to deploy into OpenShift and connect to it on the external IP exposed by the load balancer.
          ### Create a route
          To expose Artifactory from Openshift we recommend you create a new route in Openshift.
          You can either use the oc command line tool or the Openshift web console to generate a new route.
          Depending upon where you terminate TLS you will need to either specify pass through or edge.
          Command Line (Edge):
          ``` oc create route edge --service=openshiftartifactory-ha --cert=tls.crt --key=tls.key --ca-cert=ca.crt --hostname=www.example.com ```
          Or for more information visit the official Openshift documentation on routes here:
          https://docs.openshift.com/container-platform/4.6/networking/routes/route-configuration.html

        displayName: JFrog Artifactory Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - CI/CD
        - Developers
        - Software
        - Productivity
        - Artifact Repository
        - Repository Manager
        - Docker
        - Maven
        - Git
        - Helm
        - npm
        - go
        - golang
        - kubernetes
        - k8s
        - rpm
        - yum
        links:
        - name: JFrog
          url: https://www.jfrog.com
        - name: JFrog Artifact Repository
          url: https://jfrog.com/artifactory/
        - name: Artifactory Video
          url: https://www.youtube.com/watch?v=r2_A5CPo43U
        maintainers:
        - email: partner-support@jfrog.com
          name: JFrog
        maturity: stable
        provider:
          name: JFrog
        relatedImages:
        - registry.connect.redhat.com/jfrog/init@sha256:164b41720a37f75c6129c8a28d05cc56f821022313d44ff918cce4a2146d93e8
        - registry.redhat.io/rhel8/nginx-116@sha256:d71d368d6094a5777000a8d99164959ccb97fca355e855e24bd92c13a8df04f6
        - registry.connect.redhat.com/jfrog/artifactory-operator-bundle@sha256:fc374491270b9566b0a5c80f3dd665b2227b1e8fb224eada7e5c98c82926ae08
        - registry.connect.redhat.com/jfrog/artifactory-operator@sha256:e292553e1b6e792ff19276c7f6565d7ed61dd95289eb176066329954bc93e371
        - registry.connect.redhat.com/jfrog/artifactory-pro@sha256:7289dde95d1e4d8e161a28cffd9c4a0cc96f92f7536d069ab63ec304a92254fd
        version: 1.1.18
      entries:
      - name: artifactory-ha-operator.v1.1.18
        version: 1.1.18
      name: stable
    defaultChannel: alpha
    packageName: openshiftartifactoryha-operator
    provider:
      name: JFrog
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: service-registry-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: service-registry-operator.v2.0.7-0.1662549961.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-kafkasql"
                },
                "spec": {
                  "configuration": {
                    "kafkasql": {
                      "bootstrapServers": "\u003cservice name\u003e.\u003cnamespace\u003e.svc:9092"
                    },
                    "persistence": "kafkasql"
                  }
                }
              },
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-sql"
                },
                "spec": {
                  "configuration": {
                    "persistence": "sql",
                    "sql": {
                      "dataSource": {
                        "password": "\u003cpassword\u003e",
                        "url": "jdbc:postgresql://\u003cservice name\u003e.\u003cnamespace\u003e.svc:5432/\u003cdatabase name\u003e",
                        "userName": "postgres"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/integration/service-registry-rhel8-operator@sha256:6dfd539951a739ec06fb6620b79c42c6159d4ee148c0d9d336547e786cd4780c
          createdAt: "2022-06-24"
          description: Deploy and manage Red Hat Integration service registry on OpenShift.
          olm.substitutesFor: service-registry-operator.v2.0.7-0.1661784420.p
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: https://github.com/Apicurio/apicurio-registry-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry represents a Red Hat Integration Service
              Registry instance
            displayName: Apicurio Registry
            kind: ApicurioRegistry
            name: apicurioregistries.registry.apicur.io
            version: v1
        description: |
          ## Service Registry
          Service Registry stores and retrieves API designs and event schemas, and gives you control of their evolution.
          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf - Provides a REST API and web UI to manage the artifacts and artifact meta-data - Includes Serializers and Deserializers for Kafka client integration - Configurable rules to control schema validity and evolution (compatibility) - Storage options: Kafka, PostgreSQL - Compatible with Confluent and IBM APIs - Runs on a lightweight Quarkus platform - Includes Maven plugin to integrate with Maven based builds
          ## Service Registry Operator
          Provides a quick and easy way to deploy and manage service registry on OpenShift.
          **Features**
          - Supports installation and configuration of the Registry for all storage options - Easily perform a rolling upgrade of the Registry
          ## Prerequisites
          This operator does not deploy storage for the Registry. Therefore, some storage options require that the chosen persistence service is already set up.
          ## License
          Red Hat Service Registry Operator is licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - Service Registry Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - service
        - service-registry
        links:
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        - name: Twitter
          url: https://twitter.com/Apicurio
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        - email: jsenko+apicurio@redhat.com
          name: Jakub Senko
        - email: ewittman+apicurio@redhat.com
          name: Eric Wittmann
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/integration/service-registry-kafkasql-rhel8@sha256:fc97a2a08b2f77d620ea86ec77bb4f750bfc0109ede3ad1080c2cb694019f8b8
        - registry.redhat.io/integration/service-registry-rhel8-operator-metadata@sha256:a2f0513cd8b96d71855464384cad7f1cd8c39f8d445be1ff1c1b91f22008d16d
        - registry.redhat.io/integration/service-registry-rhel8-operator@sha256:6dfd539951a739ec06fb6620b79c42c6159d4ee148c0d9d336547e786cd4780c
        - registry.redhat.io/integration/service-registry-sql-rhel8@sha256:6c97fa8ead1f6f0323811f8f35a80ae33f0e160f6c58f2bdb31713dbeaa3f014
        version: 2.0.7+0.1662549961.p
      entries:
      - name: service-registry-operator.v2.0.7-0.1662549961.p
        version: 2.0.7+0.1662549961.p
      - name: service-registry-operator.v2.0.7-0.1661784420.p
        version: 2.0.7+0.1661784420.p
      - name: service-registry-operator.v2.0.7
        version: 2.0.7
      - name: service-registry-operator.v2.0.6
        version: 2.0.6
      - name: service-registry-operator.v2.0.5-0.1654503709.p
        version: 2.0.5+0.1654503709.p
      - name: service-registry-operator.v2.0.5-0.1652887585.p
        version: 2.0.5+0.1652887585.p
      - name: service-registry-operator.v2.0.5-0.1646309885.p
        version: 2.0.5+0.1646309885.p
      - name: service-registry-operator.v2.0.5-0.1647938417.p
        version: 2.0.5+0.1647938417.p
      - name: service-registry-operator.v2.0.5-0.1648813064.p
        version: 2.0.5+0.1648813064.p
      - name: service-registry-operator.v2.0.5-0.1651047781.p
        version: 2.0.5+0.1651047781.p
      - name: service-registry-operator.v2.0.5-0.1652429755.p
        version: 2.0.5+0.1652429755.p
      - name: service-registry-operator.v2.0.5
        version: 2.0.5
      - name: service-registry-operator.v2.0.5-0.1655396591.p
        version: 2.0.5+0.1655396591.p
      - name: service-registry-operator.v2.0.4
        version: 2.0.4
      - name: service-registry-operator.v2.0.3
        version: 2.0.3
      - name: service-registry-operator.v2.0.2
        version: 2.0.2
      - name: service-registry-operator.v2.0.1
        version: 2.0.1
      - name: service-registry-operator.v2.0.0
        version: 2.0.0
      name: 2.0.x
    - currentCSV: service-registry-operator.v2.6.13-r2-0.1765811602.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-kafkasql"
                },
                "spec": {
                  "configuration": {
                    "kafkasql": {
                      "bootstrapServers": "\u003cservice name\u003e.\u003cnamespace\u003e.svc:9092"
                    },
                    "persistence": "kafkasql"
                  }
                }
              },
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-sql"
                },
                "spec": {
                  "configuration": {
                    "persistence": "sql",
                    "sql": {
                      "dataSource": {
                        "password": "\u003cpassword\u003e",
                        "url": "jdbc:postgresql://\u003cservice name\u003e.\u003cnamespace\u003e.svc:5432/\u003cdatabase name\u003e",
                        "userName": "postgres"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/apicurio/apicurio-registry-rhel8-operator@sha256:61f00395b51819312dda7abcdaa47190a11a83b1e2b523101be0ba776b1c5b7c
          createdAt: "2025-09-15"
          description: Deploy and manage Red Hat build of Apicurio Registry on OpenShift.
          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: "true"
          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.substitutesFor: service-registry-operator.v2.6.13-r2-0.1763986602.p
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations",
            "Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Apicurio/apicurio-registry-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry represents a Red Hat build of Apicurio Registry
              instance
            displayName: Apicurio Registry
            kind: ApicurioRegistry
            name: apicurioregistries.registry.apicur.io
            version: v1
        description: |
          ## Red Hat build of Apicurio Registry

          Red Hat build of Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Provides a REST API and web UI to manage the artifacts and artifact meta-data
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL
          - Compatible with Confluent and IBM APIs
          - Runs on a lightweight Quarkus platform
          - Includes Maven plugin to integrate with Maven based builds

          ## Red Hat build of Apicurio Registry Operator

          Provides a quick and easy way to deploy and manage Red Hat build of Apicurio Registry on OpenShift.

          **Features**
          - Supports installation and configuration of the Registry for all storage options
          - Easily perform a rolling upgrade of Red Hat build of Apicurio Registry

          ## Prerequisites

          This operator does not deploy storage for Red Hat build of Apicurio Registry. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Red Hat build of Apicurio Registry Operator is licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry-operator/blob/main/LICENSE)
        displayName: Red Hat build of Apicurio Registry
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - service
        - service-registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        - name: Twitter
          url: https://twitter.com/Apicurio
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        - email: jsenko+apicurio@redhat.com
          name: Jakub Senko
        - email: ewittman+apicurio@redhat.com
          name: Eric Wittmann
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/apicurio/apicurio-registry-operator-bundle@sha256:807f6c8f10a0f14789605e0dc64506e7aad7cce7789446da5079a49e79b8721e
        - registry.redhat.io/apicurio/apicurio-registry-rhel8-operator@sha256:61f00395b51819312dda7abcdaa47190a11a83b1e2b523101be0ba776b1c5b7c
        - registry.redhat.io/apicurio/apicurio-registry-sql-rhel8@sha256:0e5b7ed0d9c2aa07896f4d1f12c6ce6937f31a72f8d496b95c9c151121f46758
        - registry.redhat.io/apicurio/apicurio-registry-kafkasql-rhel8@sha256:f8f826084f842293de019ccc9ad0268e4ec0957e0db8fec58b069be2d6fa7cfe
        version: 2.6.13-r2+0.1765811602.p
      entries:
      - name: service-registry-operator.v2.6.13-r2-0.1763986602.p
        version: 2.6.13-r2+0.1763986602.p
      - name: service-registry-operator.v2.6.13-r2-0.1761835940.p
        version: 2.6.13-r2+0.1761835940.p
      - name: service-registry-operator.v2.6.13-r2-0.1765811602.p
        version: 2.6.13-r2+0.1765811602.p
      - name: service-registry-operator.v2.6.13-r2
        version: 2.6.13-r2
      - name: service-registry-operator.v2.6.13-r1
        version: 2.6.13-r1
      - name: service-registry-operator.v2.6.12-r1
        version: 2.6.12-r1
      - name: service-registry-operator.v2.6.11-r1
        version: 2.6.11-r1
      - name: service-registry-operator.v2.6.10
        version: 2.6.10
      - name: service-registry-operator.v2.6.9
        version: 2.6.9
      - name: service-registry-operator.v2.6.8-0.1739457262.p
        version: 2.6.8+0.1739457262.p
      - name: service-registry-operator.v2.6.8
        version: 2.6.8
      - name: service-registry-operator.v2.6.8-0.1740477005.p
        version: 2.6.8+0.1740477005.p
      - name: service-registry-operator.v2.6.6
        version: 2.6.6
      - name: service-registry-operator.v2.6.6-0.1736942038.p
        version: 2.6.6+0.1736942038.p
      - name: service-registry-operator.v2.6.5-0.1731946870.p
        version: 2.6.5+0.1731946870.p
      - name: service-registry-operator.v2.6.5
        version: 2.6.5
      - name: service-registry-operator.v2.6.5-0.1729511936.p
        version: 2.6.5+0.1729511936.p
      - name: service-registry-operator.v2.6.5-0.1730982111.p
        version: 2.6.5+0.1730982111.p
      - name: service-registry-operator.v2.6.3
        version: 2.6.3
      - name: service-registry-operator.v2.6.1
        version: 2.6.1
      - name: service-registry-operator.v2.6.1-0.1724927626.p
        version: 2.6.1+0.1724927626.p
      - name: service-registry-operator.v2.3.5
        version: 2.3.5
      - name: service-registry-operator.v2.3.4-0.1716987426.p
        version: 2.3.4+0.1716987426.p
      - name: service-registry-operator.v2.3.4
        version: 2.3.4
      - name: service-registry-operator.v2.3.3
        version: 2.3.3
      - name: service-registry-operator.v2.3.2
        version: 2.3.2
      - name: service-registry-operator.v2.3.1-0.1706181988.p
        version: 2.3.1+0.1706181988.p
      - name: service-registry-operator.v2.3.1
        version: 2.3.1
      - name: service-registry-operator.v2.3.0
        version: 2.3.0
      - name: service-registry-operator.v2.2.3
        version: 2.2.3
      - name: service-registry-operator.v2.2.3-0.1698369839.p
        version: 2.2.3+0.1698369839.p
      - name: service-registry-operator.v2.2.2-0.1697116886.p
        version: 2.2.2+0.1697116886.p
      - name: service-registry-operator.v2.2.2
        version: 2.2.2
      - name: service-registry-operator.v2.2.1
        version: 2.2.1
      - name: service-registry-operator.v2.2.0
        version: 2.2.0
      - name: service-registry-operator.v2.1.5
        version: 2.1.5
      - name: service-registry-operator.v2.1.4
        version: 2.1.4
      - name: service-registry-operator.v2.1.3
        version: 2.1.3
      - name: service-registry-operator.v2.1.2-0.1676389596.p
        version: 2.1.2+0.1676389596.p
      - name: service-registry-operator.v2.1.2
        version: 2.1.2
      - name: service-registry-operator.v2.1.1
        version: 2.1.1
      - name: service-registry-operator.v2.1.0
        version: 2.1.0
      - name: service-registry-operator.v2.0.7-0.1661784420.p
        version: 2.0.7+0.1661784420.p
      - name: service-registry-operator.v2.0.7-0.1662549961.p
        version: 2.0.7+0.1662549961.p
      - name: service-registry-operator.v2.0.7
        version: 2.0.7
      - name: service-registry-operator.v2.0.6
        version: 2.0.6
      - name: service-registry-operator.v2.0.5-0.1651047781.p
        version: 2.0.5+0.1651047781.p
      - name: service-registry-operator.v2.0.5-0.1647938417.p
        version: 2.0.5+0.1647938417.p
      - name: service-registry-operator.v2.0.5-0.1654503709.p
        version: 2.0.5+0.1654503709.p
      - name: service-registry-operator.v2.0.5-0.1652887585.p
        version: 2.0.5+0.1652887585.p
      - name: service-registry-operator.v2.0.5-0.1652429755.p
        version: 2.0.5+0.1652429755.p
      - name: service-registry-operator.v2.0.5
        version: 2.0.5
      - name: service-registry-operator.v2.0.5-0.1648813064.p
        version: 2.0.5+0.1648813064.p
      - name: service-registry-operator.v2.0.5-0.1655396591.p
        version: 2.0.5+0.1655396591.p
      - name: service-registry-operator.v2.0.5-0.1646309885.p
        version: 2.0.5+0.1646309885.p
      - name: service-registry-operator.v2.0.4
        version: 2.0.4
      - name: service-registry-operator.v2.0.3
        version: 2.0.3
      - name: service-registry-operator.v2.0.2
        version: 2.0.2
      - name: service-registry-operator.v2.0.1
        version: 2.0.1
      - name: service-registry-operator.v2.0.0
        version: 2.0.0
      name: 2.x
    defaultChannel: 2.x
    packageName: service-registry-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: rook-ceph-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rook-ceph-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephCluster",
                "metadata": {
                  "name": "my-rook-ceph",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "cephVersion": {
                    "image": "registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92"
                  },
                  "dataDirHostPath": "/var/lib/rook",
                  "mon": {
                    "count": 3
                  },
                  "dashboard": {
                    "enabled": true
                  },
                  "network": {
                    "hostNetwork": false
                  },
                  "rbdMirroring": {
                    "workers": 0
                  },
                  "storage": {
                    "useAllNodes": true,
                    "useAllDevices": true
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephBlockPool",
                "metadata": {
                  "name": "replicapool",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "failureDomain": "host",
                  "replicated": {
                    "size": 3
                  },
                  "annotations": null
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStore",
                "metadata": {
                  "name": "my-store",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "metadataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "dataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "gateway": {
                    "type": "s3",
                    "sslCertificateRef": null,
                    "port": 8080,
                    "securePort": null,
                    "instances": 1,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStoreUser",
                "metadata": {
                  "name": "my-user",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "store": "my-store",
                  "displayName": "my display name"
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephNFS",
                "metadata": {
                  "name": "my-nfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "rados": {
                    "pool": "myfs-data0",
                    "namespace": "nfs-ns"
                  },
                  "server": {
                    "active": 3,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephClient",
                "metadata": {
                  "name": "cinder",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "caps": {
                    "mon": "profile rbd",
                    "osd": "profile rbd pool=volumes, profile rbd pool=vms, profile rbd-read-only pool=images"
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephFilesystem",
                "metadata": {
                  "name": "myfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "dataPools": [
                    {
                      "compressionMode": "",
                      "crushRoot": "",
                      "deviceClass": "",
                      "erasureCoded": {
                        "algorithm": "",
                        "codingChunks": 0,
                        "dataChunks": 0
                      },
                      "failureDomain": "host",
                      "replicated": {
                        "requireSafeReplicaSize": false,
                        "size": 1,
                        "targetSizeRatio": 0.5
                      }
                    }
                  ],
                  "metadataPool": {
                    "compressionMode": "",
                    "crushRoot": "",
                    "deviceClass": "",
                    "erasureCoded": {
                      "algorithm": "",
                      "codingChunks": 0,
                      "dataChunks": 0
                    },
                    "failureDomain": "",
                    "replicated": {
                      "requireSafeReplicaSize": false,
                      "size": 1,
                      "targetSizeRatio": 0
                    }
                  },
                  "metadataServer": {
                    "activeCount": 1,
                    "activeStandby": true,
                    "placement": {},
                    "resources": {}
                  },
                  "preservePoolsOnDelete": false,
                  "preserveFilesystemOnDelete": false
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephRBDMirror",
                "metadata": {
                  "name": "my-rbd-mirror",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "annotations": null,
                  "count": 1,
                  "placement": {
                    "topologyKey": "kubernetes.io/hostname"
                  },
                  "resources": null
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:3538d484f80837f2164f15bcd1edb75fbcb73d72cbd94cd74c87f99da035fd84
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/red-hat-storage/rook
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Ceph cluster.
            displayName: Ceph Cluster
            kind: CephCluster
            name: cephclusters.ceph.rook.io
            version: v1
          - description: Represents a Ceph Block Pool.
            displayName: Ceph Block Pool
            kind: CephBlockPool
            name: cephblockpools.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store.
            displayName: Ceph Object Store
            kind: CephObjectStore
            name: cephobjectstores.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store User.
            displayName: Ceph Object Store User
            kind: CephObjectStoreUser
            name: cephobjectstoreusers.ceph.rook.io
            version: v1
          - description: Represents a cluster of Ceph NFS ganesha gateways.
            displayName: Ceph NFS
            kind: CephNFS
            name: cephnfses.ceph.rook.io
            version: v1
          - description: Represents a Ceph User.
            displayName: Ceph Client
            kind: CephClient
            name: cephclients.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem.
            displayName: Ceph Filesystem
            kind: CephFilesystem
            name: cephfilesystems.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem Mirror.
            displayName: Ceph Filesystem Mirror
            kind: CephFilesystemMirror
            name: cephfilesystemmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph RBD Mirror.
            displayName: Ceph RBD Mirror
            kind: CephRBDMirror
            name: cephrbdmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Realm.
            displayName: Ceph Object Store Realm
            kind: CephObjectRealm
            name: cephobjectrealms.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone Group.
            displayName: Ceph Object Store Zone Group
            kind: CephObjectZoneGroup
            name: cephobjectzonegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone.
            displayName: Ceph Object Store Zone
            kind: CephObjectZone
            name: cephobjectzones.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Notification.
            displayName: Ceph Bucket Notification
            kind: CephBucketNotification
            name: cephbucketnotifications.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Topic.
            displayName: Ceph Bucket Topic
            kind: CephBucketTopic
            name: cephbuckettopics.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem SubVolumeGroup.
            displayName: Ceph Filesystem SubVolumeGroup
            kind: CephFilesystemSubVolumeGroup
            name: cephfilesystemsubvolumegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph BlockPool Rados Namespace.
            displayName: Ceph BlockPool Rados Namespace
            kind: CephBlockPoolRadosNamespace
            name: cephblockpoolradosnamespaces.ceph.rook.io
            version: v1
          - description: Represents a Ceph COSI Driver.
            displayName: Ceph COSI Driver
            kind: CephCOSIDriver
            name: cephcosidrivers.ceph.rook.io
            version: v1
        description: |2

          The Rook-Ceph storage operator packages, deploys, manages, upgrades and scales Ceph storage for providing persistent storage to infrastructure services (Logging, Metrics, Registry) as well as stateful applications in Kubernetes clusters.

          ## Rook-Ceph Storage Operator

          Rook runs as a cloud-native service in Kubernetes clusters for optimal integration with applications in need of storage, and handles the heavy-lifting behind the scenes such as provisioning and management.
          Rook orchestrates battle-tested open-source storage technology Ceph, which has years of production deployments and runs some of the worlds largest clusters.

          Ceph is a massively scalable, software-defined, cloud native storage platform that offers block, file and object storage services.
          Ceph can be used to back a wide variety of applications including relational databases, NoSQL databases, CI/CD tool-sets, messaging, AI/ML and analytics applications.
          Ceph is a proven storage platform that backs some of the world's largest storage deployments and has a large vibrant open source community backing the project.

          ## Supported features
          * **High Availability and resiliency** - Ceph has no single point of failures (SPOF) and all its components work natively in a highly available fashion
          * **Data Protection** - Ceph periodically scrub for inconsistent objects and repair them if necessary, making sure your replicas are always coherent
          * **Consistent storage platform across hybrid cloud** - Ceph can be deployed anywhere (on-premise or bare metal) and thus offers a similar experience regardless
          * **Block, File & Object storage service** - Ceph can expose your data through several storage interfaces, solving all the application use cases
          * **Scale up/down** - addition and removal of storage is fully covered by the operator.
          * **Dashboard** - The Operator deploys a dashboard for monitoring and introspecting your cluster.

          ## Before you start
          https://rook.io/docs/rook/v1.0/k8s-pre-reqs.html
        displayName: Rook-Ceph
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - rook
        - ceph
        - storage
        - object storage
        - open source
        - block storage
        - shared filesystem
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/rook
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:3101db7b7f493e476ffe2c91083792ded3e2030d431c3be7d7176ad7df185324
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:3538d484f80837f2164f15bcd1edb75fbcb73d72cbd94cd74c87f99da035fd84
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        version: 4.19.9-rhodf
      entries:
      - name: rook-ceph-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: rook-ceph-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: rook-ceph-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: rook-ceph-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: rook-ceph-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: rook-ceph-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: rook-ceph-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: rook-ceph-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: rook-ceph-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: rook-ceph-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: rook-ceph-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephCluster",
                "metadata": {
                  "name": "my-rook-ceph",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "cephVersion": {
                    "image": "registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92"
                  },
                  "dataDirHostPath": "/var/lib/rook",
                  "mon": {
                    "count": 3
                  },
                  "dashboard": {
                    "enabled": true
                  },
                  "network": {
                    "hostNetwork": false
                  },
                  "rbdMirroring": {
                    "workers": 0
                  },
                  "storage": {
                    "useAllNodes": true,
                    "useAllDevices": true
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephBlockPool",
                "metadata": {
                  "name": "replicapool",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "failureDomain": "host",
                  "replicated": {
                    "size": 3
                  },
                  "annotations": null
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStore",
                "metadata": {
                  "name": "my-store",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "metadataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "dataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "gateway": {
                    "type": "s3",
                    "sslCertificateRef": null,
                    "port": 8080,
                    "securePort": null,
                    "instances": 1,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStoreUser",
                "metadata": {
                  "name": "my-user",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "store": "my-store",
                  "displayName": "my display name"
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephNFS",
                "metadata": {
                  "name": "my-nfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "rados": {
                    "pool": "myfs-data0",
                    "namespace": "nfs-ns"
                  },
                  "server": {
                    "active": 3,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephClient",
                "metadata": {
                  "name": "cinder",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "caps": {
                    "mon": "profile rbd",
                    "osd": "profile rbd pool=volumes, profile rbd pool=vms, profile rbd-read-only pool=images"
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephFilesystem",
                "metadata": {
                  "name": "myfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "dataPools": [
                    {
                      "compressionMode": "",
                      "crushRoot": "",
                      "deviceClass": "",
                      "erasureCoded": {
                        "algorithm": "",
                        "codingChunks": 0,
                        "dataChunks": 0
                      },
                      "failureDomain": "host",
                      "replicated": {
                        "requireSafeReplicaSize": false,
                        "size": 1,
                        "targetSizeRatio": 0.5
                      }
                    }
                  ],
                  "metadataPool": {
                    "compressionMode": "",
                    "crushRoot": "",
                    "deviceClass": "",
                    "erasureCoded": {
                      "algorithm": "",
                      "codingChunks": 0,
                      "dataChunks": 0
                    },
                    "failureDomain": "",
                    "replicated": {
                      "requireSafeReplicaSize": false,
                      "size": 1,
                      "targetSizeRatio": 0
                    }
                  },
                  "metadataServer": {
                    "activeCount": 1,
                    "activeStandby": true,
                    "placement": {},
                    "resources": {}
                  },
                  "preservePoolsOnDelete": false,
                  "preserveFilesystemOnDelete": false
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephRBDMirror",
                "metadata": {
                  "name": "my-rbd-mirror",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "annotations": null,
                  "count": 1,
                  "placement": {
                    "topologyKey": "kubernetes.io/hostname"
                  },
                  "resources": null
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/red-hat-storage/rook
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Ceph cluster.
            displayName: Ceph Cluster
            kind: CephCluster
            name: cephclusters.ceph.rook.io
            version: v1
          - description: Represents a Ceph Block Pool.
            displayName: Ceph Block Pool
            kind: CephBlockPool
            name: cephblockpools.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store.
            displayName: Ceph Object Store
            kind: CephObjectStore
            name: cephobjectstores.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store User.
            displayName: Ceph Object Store User
            kind: CephObjectStoreUser
            name: cephobjectstoreusers.ceph.rook.io
            version: v1
          - description: Represents a cluster of Ceph NFS ganesha gateways.
            displayName: Ceph NFS
            kind: CephNFS
            name: cephnfses.ceph.rook.io
            version: v1
          - description: Represents a Ceph User.
            displayName: Ceph Client
            kind: CephClient
            name: cephclients.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem.
            displayName: Ceph Filesystem
            kind: CephFilesystem
            name: cephfilesystems.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem Mirror.
            displayName: Ceph Filesystem Mirror
            kind: CephFilesystemMirror
            name: cephfilesystemmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph RBD Mirror.
            displayName: Ceph RBD Mirror
            kind: CephRBDMirror
            name: cephrbdmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Realm.
            displayName: Ceph Object Store Realm
            kind: CephObjectRealm
            name: cephobjectrealms.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone Group.
            displayName: Ceph Object Store Zone Group
            kind: CephObjectZoneGroup
            name: cephobjectzonegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone.
            displayName: Ceph Object Store Zone
            kind: CephObjectZone
            name: cephobjectzones.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Notification.
            displayName: Ceph Bucket Notification
            kind: CephBucketNotification
            name: cephbucketnotifications.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Topic.
            displayName: Ceph Bucket Topic
            kind: CephBucketTopic
            name: cephbuckettopics.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem SubVolumeGroup.
            displayName: Ceph Filesystem SubVolumeGroup
            kind: CephFilesystemSubVolumeGroup
            name: cephfilesystemsubvolumegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph BlockPool Rados Namespace.
            displayName: Ceph BlockPool Rados Namespace
            kind: CephBlockPoolRadosNamespace
            name: cephblockpoolradosnamespaces.ceph.rook.io
            version: v1
          - description: Represents a Ceph COSI Driver.
            displayName: Ceph COSI Driver
            kind: CephCOSIDriver
            name: cephcosidrivers.ceph.rook.io
            version: v1
        description: |2

          The Rook-Ceph storage operator packages, deploys, manages, upgrades and scales Ceph storage for providing persistent storage to infrastructure services (Logging, Metrics, Registry) as well as stateful applications in Kubernetes clusters.

          ## Rook-Ceph Storage Operator

          Rook runs as a cloud-native service in Kubernetes clusters for optimal integration with applications in need of storage, and handles the heavy-lifting behind the scenes such as provisioning and management.
          Rook orchestrates battle-tested open-source storage technology Ceph, which has years of production deployments and runs some of the worlds largest clusters.

          Ceph is a massively scalable, software-defined, cloud native storage platform that offers block, file and object storage services.
          Ceph can be used to back a wide variety of applications including relational databases, NoSQL databases, CI/CD tool-sets, messaging, AI/ML and analytics applications.
          Ceph is a proven storage platform that backs some of the world's largest storage deployments and has a large vibrant open source community backing the project.

          ## Supported features
          * **High Availability and resiliency** - Ceph has no single point of failures (SPOF) and all its components work natively in a highly available fashion
          * **Data Protection** - Ceph periodically scrub for inconsistent objects and repair them if necessary, making sure your replicas are always coherent
          * **Consistent storage platform across hybrid cloud** - Ceph can be deployed anywhere (on-premise or bare metal) and thus offers a similar experience regardless
          * **Block, File & Object storage service** - Ceph can expose your data through several storage interfaces, solving all the application use cases
          * **Scale up/down** - addition and removal of storage is fully covered by the operator.
          * **Dashboard** - The Operator deploys a dashboard for monitoring and introspecting your cluster.

          ## Before you start
          https://rook.io/docs/rook/v1.0/k8s-pre-reqs.html
        displayName: Rook-Ceph
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - rook
        - ceph
        - storage
        - object storage
        - open source
        - block storage
        - shared filesystem
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/rook
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:7ae5cd1afb0ba1a7e28acb6631b3fe7ec3e23fbba782162baa2df847de61b28e
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:231965a888729ba42bbac8d844d128e18468e5a21916dcd525d43ef028ccea5f
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        version: 4.20.4-rhodf
      entries:
      - name: rook-ceph-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: rook-ceph-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: rook-ceph-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: rook-ceph-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: rook-ceph-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: rook-ceph-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataDirect Networks
      provider-url: https://www.ddn.com
    name: vmstore-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vmstore-csi-driver-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.tintri.com/v1alpha1",
                "kind": "VmstoreCsi",
                "metadata": {
                  "name": "vmstorecsi-sample"
                },
                "spec": {
                  "config": {
                    "debug": true,
                    "vmstore_map": {
                      "vmstore2": {
                        "dataIp": "\u003cdataIp\u003e",
                        "managementAddress": "\u003cmanagementAddress\u003e",
                        "mountPoint": "/tintri-csi",
                        "password": "tintri99",
                        "username": "admin",
                        "vmstoreFS": "/tintri/csi"
                      }
                    }
                  },
                  "csi_snapshotter": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                    "resources": null,
                    "tag": "v5.0.1",
                    "timeout": "120m"
                  },
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "tintri/vmstore-csi-driver",
                    "tag": "v1.0.1"
                  },
                  "priorityClassName": "system-cluster-critical",
                  "provisioner": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                    "resources": null,
                    "tag": "v4.0.1",
                    "timeout": "120m"
                  },
                  "registrar": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                    "resources": null,
                    "tag": "v2.10.1"
                  },
                  "resizer": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-resizer",
                    "resources": null,
                    "tag": "v1.12.0"
                  },
                  "resources": {
                    "limits": {
                      "cpu": "512m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "64Mi"
                    }
                  },
                  "secretName": "vmstore-csi-file-driver-config",
                  "volumeNamePrefix": "pvc-vmstore"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-07-02T23:11:08Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: VmstoreCsi
            name: vmstorecsis.charts.tintri.com
            version: v1alpha1
        description: "A Container Storage Interface (CSI) Driver for Tintri Vmstore
          filesystems. This operator eases the installation\nand management of the
          Vmstore CSI Driver in an OpenShift or other Operator Lifecycle Manager enabled
          cluster.\n\n\n## Prerequisites\nMake sure that the top level folder where
          the CSI volumes will be created exists on VMStore and is shared over NFS.\nFor
          example `tintri/csi`.\n## Usage\n\n### Dynamically provisioned volumes\n\nFor
          dynamic volume provisioning, the administrator needs to set up a _StorageClass_
          in the PV yaml (examples/nginx-dynamic-volume.yaml for this example) pointing
          to the driver.\nFor dynamically provisioned volumes, Kubernetes generates
          volume name automatically (for example `pvc-vmstore-cfc67950-fe3c-11e8-a3ca-005056b857f8`).\n\n```yaml\napiVersion:
          storage.k8s.io/v1\nkind: StorageClass\nmetadata:\n  name: vmstore-csi-file-driver-sc\nprovisioner:
          vmstore.csi.tintri.com\nallowVolumeExpansion: true\n```\n\n#### Example\n\nRun
          Nginx pod with dynamically provisioned volume:\n\n```bash\noc apply -f examples/nginx-dynamic-volume.yaml\n\n#
          to delete this pod:\noc delete -f examples/nginx-dynamic-volume.yaml\n```\n\n###
          Static (pre-provisioned) volumes\n\nThe driver can use already existing
          Vmstore filesystem,\nin this case, _StorageClass_, _PersistentVolume_ and
          _PersistentVolumeClaim_ should be configured.\n\n#### _StorageClass_ configuration\n\n```yaml\napiVersion:
          storage.k8s.io/v1\nkind: StorageClass\nmetadata:\n  name: vmstore-csi-file-driver-sc-nginx-persistent\nprovisioner:
          vmstore.csi.tintri.com\nallowVolumeExpansion: true\nallowedTopologies:\n-
          matchLabelExpressions:\n  - key: topology.vmstore.csi.tintri.com/zone\n
          \   values:\n    - zone-1\nmountOptions:                         # list
          of options for `mount -o ...` command\n#  - noatime                          #\n```\n\n####
          _PersistentVolume_ configuration\n\n```yaml\napiVersion: v1\nkind: PersistentVolume\nmetadata:\n
          \ name: vmstore-csi-file-driver-pv-nginx-persistent\n  labels:\n    name:
          vmstore-csi-file-driver-pv-nginx-persistent\nspec:\n  storageClassName:
          vmstore-csi-file-driver-sc-nginx-persistent\n  accessModes:\n    - ReadWriteOnce\n
          \ capacity:\n    storage: 1Gi\n  csi:\n    driver: vmstore.csi.tintri.com\n
          \   volumeHandle: vmstore1/172.30.230.128:/tintri/csi/vmstorefs-mnt/persistent/volumefile-persistent.img\n```\n\n####
          _PersistentVolumeClaim_ (pointing to created _PersistentVolume_)\n\n```yaml\napiVersion:
          v1\nkind: PersistentVolumeClaim\nmetadata:\n  name: vmstore-csi-file-driver-pvc-nginx-persistent\nspec:\n
          \ storageClassName: vmstore-csi-file-driver-sc-nginx-persistent\n  accessModes:\n
          \   - ReadWriteOnce\n  resources:\n    requests:\n      storage: 1Gi\n  selector:\n
          \   matchLabels:\n      # to create 1-1 relationship for pod - persistent
          volume use unique labels\n      name: vmstore-csi-file-driver-pv-nginx-persistent\n```\n\n###
          Topology configuration\nIn order to configure CSI driver with kubernetes
          topology, use the `zone` parameter in driver config or storageClass parameters.
          Example config file with zones:\n  ```bash\n  vmstore_map:\n    vmstore1:\n
          \     mountPoint: /tintri-csi                            # mountpoint on
          the host where the tintri fs will be mounted\n      dataIp: 172.30.200.37\n
          \     managementAddress: tafzq23.tintri.com\n      vmstoreFS: /tintri/fs01\n
          \     zone: zone-1\n      username: admin\n      password: password\n\n
          \   vmstore2:\n      mountPoint: /tintri-csi                            #
          mountpoint on the host where the tintri fs will be mounted\n      dataIp:
          10.136.40.71\n      managementAddress: tafbm05.tintri.com\n      vmstoreFS:
          /tintri/csi\n      zone: zone-2\n      username: admin\n      password:
          password\n  ```\n\nThis will assign volumes to be created on Vmstore that
          correspond with the zones requested by allowedTopologies values.\n\n\n###
          Defaults/Configuration/Parameter options\n\n| Default  | Config               |
          \ Parameter    |  Desc                             |\n|----------|----------------------|---------------|-----------------------------------|\n|
          \  -      | dataIp               |   dataIp      | Data address used to
          mount Vmstore filesystem |\n| -    | mountPoint       |    -      | Mount
          point inside of the driver container where Vmstore filesystem will be mounted|\n|
          \  -      | username             |      -        | Vmstore API username
          |\n|   -      | password             |      -        | Vmstore API password
          |\n|   -      | zone                 |      -        | Zone to match topology.vmstore.csi.tintri.com/zone
          \           |\n|   -      | vmstoreFS            |   vmstoreFS   | Path
          to filesystem on Vmstore |\n|   -      | managementAddress    |      -        |
          FQDN for Vmstore management operations |\n|   -      | defaultMountOptions
          \ |   mountOptions| Mount options |\n|   0777   | mountPointPermissions|
          \  mountPointPermissions | File permissions to be set on mount point |\n\n####
          Example\n\nRun nginx server using PersistentVolume.\n\n**Note:** Pre-configured
          volume file should exist on the Vmstore:\n`/tintri/csi/vmstorefs-mnt/persistent/volumefile-persistent.img`.\n\n```bash\noc
          apply -f nginx-persistent-volume.yaml\n\n# to delete this pod and volume:\noc
          delete -f nginx-persistent-volume.yaml\n```\n\n## Snapshots\nTo use CSI
          snapshots, the snapshot CRDs along with the csi-snapshotter must be installed.\n```bash\noc
          apply -f deploy/kubernetes/snapshots/\n```\n\nAfter that the snapshot class
          for VMStore CSI must be created\n\n```bash\noc apply -f examples/snapshot-class.yaml\n```\n\nNow
          a snapshot can be created, for example\n```bash\noc apply -f examples/snapshot-from-dynamic.yaml\n```\n\nWe
          can create a volume using the snapshot\n```bash\noc apply -f examples/nginx-from-snapshot.yaml\n```\n\n##
          Troubleshooting\n### Driver logs\nTo collect all driver related logs, you
          can use the `oc logs` command.\nAll in on command:\n```bash\nmkdir vmstore-csi-logs\nfor
          name in $(oc get pod -owide | grep vmstore | awk '{print $1}'); do oc logs
          $name --all-containers > vmstore-csi-logs/$name; done\n```\n\nTo get logs
          from all containers of a single pod \n```bash\noc logs <pod_name> --all-containers\n```\n\nLogs
          from a single container of a pod\n```bash\noc logs <pod_name> -c driver\n```\n\n####
          Driver secret\n```bash\noc get secret vmstore-csi-file-driver-config -o
          json | jq '.data | map_values(@base64d)' > vmstore-csi-logs/vmstore-csi-file-driver-config\n```\n\n####
          PV/PVC/Pod data\n```bash\noc get pvc > vmstore-csi-logs/pvcs\noc get pv
          > vmstore-csi-logs/pvs\noc get pod > vmstore-csi-logs/pods\n```\n\n####
          Extended info about a PV/PVC/Pod:\n```bash\noc describe pvc <pvc_name> >
          vmstore-csi-logs/<pvc_name>\noc describe pv <pv_name> > vmstore-csi-logs/<pv_name>\noc
          describe pod <pod_name> > vmstore-csi-logs/<pod_name>\n```"
        displayName: Vmstore CSI file driver
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - CSI
        - Vmstore
        - storage
        - Tintri
        - DDN
        links:
        - name: DDN vmstore Filesystem
          url: https://www.ddn.com/products/lustre-file-system-vmstore/
        maintainers:
        - email: akhodos@tintri.com
          name: Alexey Khodos
        - email: rrethinam@tintri.com
          name: Ranjith Rethinam
        maturity: alpha
        provider:
          name: DataDirect Networks
          url: https://www.ddn.com
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d4883d7c622683b3319b5e6b3a7edfbf2594c18060131a8bf64504805f875522
        - registry.connect.redhat.com/ddn/vmstore-csi-file-driver-operator@sha256:5aabe66a616dd7639b0638c7743118e585e3af6caca203f42a7187cd681442fd
        - tintri/vmstore-csi-driver-operator-controller@sha256:2cc0f04ed3da09b0af6ae737237d4f54772d04bf888c597361f67f6e6618799f
        version: 1.0.0
      entries:
      - name: vmstore-csi-driver-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: vmstore-csi-driver-operator
    provider:
      name: DataDirect Networks
      url: https://www.ddn.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: prometurbo-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometurbo-operator.v8.18.40-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5-beta.1 <8.18.40-beta.1'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
          - kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.

          ### Get Started
          Please follow [this](https://www.ibm.com/docs/en/tarm/8.15.x?topic=configuration-prometheus) for an overview of Prometurbo and deployment instructions.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/prometurbo
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/prometurbo-operator@sha256:9b6bb8cf444dc44b7709bf95962151d0817c635ce68fce8042122ab3f99bc0ee
        - registry.connect.redhat.com/turbonomic/prometurbo-operator-bundle@sha256:26190af9271c0600c7ec0a3dc4ee23a1290657615379124bcf6b4d389cda90fc
        version: 8.18.40-beta.1
      entries:
      - name: prometurbo-operator.v8.18.40-beta.1
        version: 8.18.40-beta.1
      name: beta
    - currentCSV: prometurbo-operator.v8.18.30
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5 <8.18.30'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
          - kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.

          ### Get Started
          Please follow [this](https://www.ibm.com/docs/en/tarm/8.15.x?topic=configuration-prometheus) for an overview of Prometurbo and deployment instructions.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/prometurbo
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/prometurbo-operator-bundle@sha256:3c90ee4515d44efe835994f44fd883a6a1715826d19068241b91144c83632b45
        - icr.io/cpopen/prometurbo-operator@sha256:59b410c33ebc6e5420ff3f278f364837bae483b3f8a367e31822da8820cae33b
        version: 8.18.30
      entries:
      - name: prometurbo-operator.v8.18.30
        version: 8.18.30
      name: stable
    defaultChannel: stable
    packageName: prometurbo-certified
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/en/products/edge/validated-patterns
    name: patterns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: patterns-operator.v0.0.63
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "gitops.hybrid-cloud-patterns.io/v1alpha1",
                "kind": "Pattern",
                "metadata": {
                  "name": "pattern-sample"
                },
                "spec": {
                  "clusterGroupName": "hub",
                  "gitSpec": {
                    "targetRepo": "https://github.com/validatedpatterns/multicloud-gitops",
                    "targetRevision": "main"
                  },
                  "multiSourceConfig": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/validatedpatterns/patterns-operator:0.0.63
          createdAt: "2025-10-29 13:50:47"
          description: "An operator to deploy and manage architecture patterns from
            https://validatedpatterns.io. \nThis operator collects some Analytics
            like cluster version, cloud type, etc. To disable this\nadd \"ANALYTICS:
            false\" to the environment variables in the subscription."
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/must-gather-image: quay.io/validatedpatterns/must-gather@sha256:ac23dfe8c3b8404f75f4bdf0eb54470acc98bbb5f892de34d2580066e93ee63d
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/validatedpatterns/patterns-operator
          support: validatedpatterns@googlegroups.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Pattern is the Schema for the patterns API
            displayName: Pattern
            kind: Pattern
            name: patterns.gitops.hybrid-cloud-patterns.io
            version: v1alpha1
        description: Deploys and manages architecture patterns from https://validatedpatterns.io
        displayName: Validated Patterns Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Validated
        - Pattern
        - Blueprint
        - Architecture
        links:
        - name: Hybrid Cloud Patterns
          url: https://validatedpatterns.io
        maintainers:
        - email: validatedpatterns@googlegroups.com
          name: patterns-team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/en/products/edge/validated-patterns
        relatedImages:
        - quay.io/community-operator-pipeline-prod/patterns-operator:0.0.63
        - quay.io/validatedpatterns/must-gather@sha256:ac23dfe8c3b8404f75f4bdf0eb54470acc98bbb5f892de34d2580066e93ee63d
        - quay.io/validatedpatterns/patterns-operator@sha256:f1fd6cf65ece516f7e413e6f2f3483982d0831bcea31c0e0aae11ba47c71659c
        version: 0.0.63
      entries:
      - name: patterns-operator.v0.0.63
        version: 0.0.63
      - name: patterns-operator.v0.0.62
        version: 0.0.62
      - name: patterns-operator.v0.0.61
        version: 0.0.61
      - name: patterns-operator.v0.0.60
        version: 0.0.60
      - name: patterns-operator.v0.0.59
        version: 0.0.59
      - name: patterns-operator.v0.0.58
        version: 0.0.58
      - name: patterns-operator.v0.0.57
        version: 0.0.57
      - name: patterns-operator.v0.0.56
        version: 0.0.56
      - name: patterns-operator.v0.0.55
        version: 0.0.55
      - name: patterns-operator.v0.0.54
        version: 0.0.54
      - name: patterns-operator.v0.0.53
        version: 0.0.53
      - name: patterns-operator.v0.0.52
        version: 0.0.52
      - name: patterns-operator.v0.0.51
        version: 0.0.51
      - name: patterns-operator.v0.0.50
        version: 0.0.50
      - name: patterns-operator.v0.0.49
        version: 0.0.49
      - name: patterns-operator.v0.0.48
        version: 0.0.48
      - name: patterns-operator.v0.0.47
        version: 0.0.47
      - name: patterns-operator.v0.0.46
        version: 0.0.46
      - name: patterns-operator.v0.0.45
        version: 0.0.45
      - name: patterns-operator.v0.0.44
        version: 0.0.44
      - name: patterns-operator.v0.0.43
        version: 0.0.43
      - name: patterns-operator.v0.0.42
        version: 0.0.42
      - name: patterns-operator.v0.0.41
        version: 0.0.41
      - name: patterns-operator.v0.0.40
        version: 0.0.40
      - name: patterns-operator.v0.0.39
        version: 0.0.39
      - name: patterns-operator.v0.0.38
        version: 0.0.38
      - name: patterns-operator.v0.0.37
        version: 0.0.37
      - name: patterns-operator.v0.0.36
        version: 0.0.36
      - name: patterns-operator.v0.0.35
        version: 0.0.35
      - name: patterns-operator.v0.0.34
        version: 0.0.34
      - name: patterns-operator.v0.0.33
        version: 0.0.33
      - name: patterns-operator.v0.0.32
        version: 0.0.32
      - name: patterns-operator.v0.0.31
        version: 0.0.31
      - name: patterns-operator.v0.0.30
        version: 0.0.30
      - name: patterns-operator.v0.0.29
        version: 0.0.29
      - name: patterns-operator.v0.0.28
        version: 0.0.28
      - name: patterns-operator.v0.0.27
        version: 0.0.27
      - name: patterns-operator.v0.0.26
        version: 0.0.26
      - name: patterns-operator.v0.0.25
        version: 0.0.25
      - name: patterns-operator.v0.0.24
        version: 0.0.24
      - name: patterns-operator.v0.0.23
        version: 0.0.23
      - name: patterns-operator.v0.0.22
        version: 0.0.22
      - name: patterns-operator.v0.0.21
        version: 0.0.21
      - name: patterns-operator.v0.0.20
        version: 0.0.20
      - name: patterns-operator.v0.0.19
        version: 0.0.19
      - name: patterns-operator.v0.0.18
        version: 0.0.18
      - name: patterns-operator.v0.0.17
        version: 0.0.17
      - name: patterns-operator.v0.0.16
        version: 0.0.16
      - name: patterns-operator.v0.0.15
        version: 0.0.15
      - name: patterns-operator.v0.0.14
        version: 0.0.14
      - name: patterns-operator.v0.0.13
        version: 0.0.13
      - name: patterns-operator.v0.0.12
        version: 0.0.12
      - name: patterns-operator.v0.0.11
        version: 0.0.11
      - name: patterns-operator.v0.0.10
        version: 0.0.10
      - name: patterns-operator.v0.0.9
        version: 0.0.9
      - name: patterns-operator.v0.0.8
        version: 0.0.8
      - name: patterns-operator.v0.0.7
        version: 0.0.7
      - name: patterns-operator.v0.0.6
        version: 0.0.6
      - name: patterns-operator.v0.0.5
        version: 0.0.5
      - name: patterns-operator.v0.0.4
        version: 0.0.4
      - name: patterns-operator.v0.0.3
        version: 0.0.3
      - name: patterns-operator.v0.0.2
        version: 0.0.2
      - name: patterns-operator.v0.0.1
        version: 0.0.1
      name: fast
    defaultChannel: fast
    packageName: patterns-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com/en/products/edge/validated-patterns
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/openshift/lightspeed-service
    name: lightspeed-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lightspeed-operator.v1.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ols.openshift.io/v1alpha1",
                "kind": "OLSConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightspeed-operator",
                    "app.kubernetes.io/instance": "olsconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "olsconfig",
                    "app.kubernetes.io/part-of": "lightspeed-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "llm": {
                    "providers": [
                      {
                        "credentialsSecretRef": {
                          "name": "credentials"
                        },
                        "models": [
                          {
                            "name": "gpt-3.5-turbo-1106"
                          }
                        ],
                        "name": "OpenAI"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-10-10T17:31:05Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-lightspeed
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus", "OpenShift Kubernetes Engine", "OpenShift Virtualization
            Engine"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lightspeed-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Red Hat OpenShift Lightspeed instance. OLSConfig is the Schema
              for the olsconfigs API
            displayName: OLSConfig
            kind: OLSConfig
            name: olsconfigs.ols.openshift.io
            version: v1alpha1
        description: |-
          OpenShift Lightspeed Operator provides generative AI-based virtual assistant which integrates into the OpenShift web console. OpenShift Lightspeed can answer natural language questions related to OpenShift Container Platform.

          To configure the OpenShift Lightspeed Operator, you need a Large Language Model (LLM) . You can host the LLM using RHELAI or RHOAI or use one of the models from the following Software-as-a-Service providers:

          - OpenAI
          - Microsoft Azure OpenAI
          - IBM WatsonX

          For more information, see [About OpenShift Lightspeed](https://docs.redhat.com/en/documentation/red_hat_openshift_lightspeed/1.0tp1/html/about/ols-about-openshift-lightspeed) in the official product documentation.

          Questions, comments, concerns, or just want to talk to the OpenShift Lightspeed team? [Email us](mailto:openshift-lightspeed-contact-requests@redhat.com)!
        displayName: OpenShift Lightspeed Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ai
        - assistant
        - openshift
        - llm
        links:
        - name: Lightspeed Operator
          url: https://github.com/openshift/lightspeed-operator
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/lightspeed-service
        relatedImages:
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/lightspeed-service-api-rhel9@sha256:c9cd5a1a14a310ee25de231208b7ebd7c9dbcd16205caa03b96a379d7988d022
        - registry.redhat.io/openshift-lightspeed/lightspeed-rhel9-operator@sha256:477acc1afc8df694c5d661f0da917b65c58a21ca3f9b115979278a6ae475b9ee
        - registry.redhat.io/openshift-lightspeed/lightspeed-ocp-rag-rhel9@sha256:3b73a841b0388f659f5a6f8f40a2b903e17ee4a7a57f074aa396b9e050cccc97
        - registry.redhat.io/rhel9/postgresql-16@sha256:42f385ac3c9b8913426da7c57e70bc6617cd237aaf697c667f6385a8c0b0118b
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-rhel9@sha256:830d900d133947ff0041bb0f8ad66d77db78483331a73278e47d89eece76eb9a
        - registry.redhat.io/openshift-lightspeed/openshift-mcp-server-rhel9@sha256:d8f0081fcabbdaa9e5aa4fce5ed15e2a3222a277f6ef55f5a05583480d92dda3
        - registry.redhat.io/openshift-lightspeed/lightspeed-operator-bundle@sha256:6ddfddfd63d7b8b1fc59c7d8062562b9c1e0dbfaa7b6126db3c6bdc19342a6d6
        - registry.redhat.io/openshift-lightspeed/lightspeed-to-dataverse-exporter-rhel9@sha256:d4f3fa25a0dc60de849658ee59d900fcdf314984b27f4c07bdfb667f22001053
        version: 1.0.8
      entries:
      - name: lightspeed-operator.v1.0.8
        version: 1.0.8
      name: alpha
    - currentCSV: lightspeed-operator.v1.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ols.openshift.io/v1alpha1",
                "kind": "OLSConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightspeed-operator",
                    "app.kubernetes.io/instance": "olsconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "olsconfig",
                    "app.kubernetes.io/part-of": "lightspeed-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "llm": {
                    "providers": [
                      {
                        "credentialsSecretRef": {
                          "name": "credentials"
                        },
                        "models": [
                          {
                            "name": "gpt-3.5-turbo-1106"
                          }
                        ],
                        "name": "OpenAI"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-10-10T17:31:05Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-lightspeed
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus", "OpenShift Kubernetes Engine", "OpenShift Virtualization
            Engine"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lightspeed-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Red Hat OpenShift Lightspeed instance. OLSConfig is the Schema
              for the olsconfigs API
            displayName: OLSConfig
            kind: OLSConfig
            name: olsconfigs.ols.openshift.io
            version: v1alpha1
        description: |-
          OpenShift Lightspeed Operator provides generative AI-based virtual assistant which integrates into the OpenShift web console. OpenShift Lightspeed can answer natural language questions related to OpenShift Container Platform.

          To configure the OpenShift Lightspeed Operator, you need a Large Language Model (LLM) . You can host the LLM using RHELAI or RHOAI or use one of the models from the following Software-as-a-Service providers:

          - OpenAI
          - Microsoft Azure OpenAI
          - IBM WatsonX

          For more information, see [About OpenShift Lightspeed](https://docs.redhat.com/en/documentation/red_hat_openshift_lightspeed/1.0tp1/html/about/ols-about-openshift-lightspeed) in the official product documentation.

          Questions, comments, concerns, or just want to talk to the OpenShift Lightspeed team? [Email us](mailto:openshift-lightspeed-contact-requests@redhat.com)!
        displayName: OpenShift Lightspeed Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ai
        - assistant
        - openshift
        - llm
        links:
        - name: Lightspeed Operator
          url: https://github.com/openshift/lightspeed-operator
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/lightspeed-service
        relatedImages:
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-rhel9@sha256:830d900d133947ff0041bb0f8ad66d77db78483331a73278e47d89eece76eb9a
        - registry.redhat.io/openshift-lightspeed/lightspeed-rhel9-operator@sha256:477acc1afc8df694c5d661f0da917b65c58a21ca3f9b115979278a6ae475b9ee
        - registry.redhat.io/openshift-lightspeed/lightspeed-to-dataverse-exporter-rhel9@sha256:d4f3fa25a0dc60de849658ee59d900fcdf314984b27f4c07bdfb667f22001053
        - registry.redhat.io/rhel9/postgresql-16@sha256:42f385ac3c9b8913426da7c57e70bc6617cd237aaf697c667f6385a8c0b0118b
        - registry.redhat.io/openshift-lightspeed/lightspeed-operator-bundle@sha256:6ddfddfd63d7b8b1fc59c7d8062562b9c1e0dbfaa7b6126db3c6bdc19342a6d6
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/openshift-mcp-server-rhel9@sha256:d8f0081fcabbdaa9e5aa4fce5ed15e2a3222a277f6ef55f5a05583480d92dda3
        - registry.redhat.io/openshift-lightspeed/lightspeed-ocp-rag-rhel9@sha256:3b73a841b0388f659f5a6f8f40a2b903e17ee4a7a57f074aa396b9e050cccc97
        - registry.redhat.io/openshift-lightspeed/lightspeed-service-api-rhel9@sha256:c9cd5a1a14a310ee25de231208b7ebd7c9dbcd16205caa03b96a379d7988d022
        version: 1.0.8
      entries:
      - name: lightspeed-operator.v1.0.8
        version: 1.0.8
      name: stable
    defaultChannel: stable
    packageName: lightspeed-operator
    provider:
      name: Red Hat, Inc
      url: https://github.com/openshift/lightspeed-service
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: cluster-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-manager.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.open-cluster-management.io/v1",
                "kind": "ClusterManager",
                "metadata": {
                  "name": "cluster-manager"
                },
                "spec": {
                  "addOnManagerImagePullSpec": "quay.io/open-cluster-management/addon-manager:v0.13.1",
                  "deployOption": {
                    "mode": "Default"
                  },
                  "placementImagePullSpec": "quay.io/open-cluster-management/placement:v0.13.1",
                  "registrationConfiguration": {
                    "featureGates": [
                      {
                        "feature": "DefaultClusterSet",
                        "mode": "Enable"
                      }
                    ]
                  },
                  "registrationImagePullSpec": "quay.io/open-cluster-management/registration:v0.13.1",
                  "workImagePullSpec": "quay.io/open-cluster-management/work:v0.13.1"
                }
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1",
                "kind": "ClusterManager",
                "metadata": {
                  "name": "cluster-manager"
                },
                "spec": {
                  "addOnManagerImagePullSpec": "quay.io/open-cluster-management/addon-manager:v0.13.1",
                  "deployOption": {
                    "hosted": {
                      "registrationWebhookConfiguration": {
                        "address": "management-control-plane",
                        "port": 30443
                      },
                      "workWebhookConfiguration": {
                        "address": "management-control-plane",
                        "port": 31443
                      }
                    },
                    "mode": "Hosted"
                  },
                  "placementImagePullSpec": "quay.io/open-cluster-management/placement:v0.13.1",
                  "registrationImagePullSpec": "quay.io/open-cluster-management/registration:v0.13.1",
                  "workImagePullSpec": "quay.io/open-cluster-management/work:v0.13.1"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/registration-operator:v0.13.1
          createdAt: "2024-04-10T15:27:49Z"
          description: Manages the installation and upgrade of the ClusterManager.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management-io/ocm
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterManager defines the configurations of controllers
              running hub that govern registration and work distribution for attached
              Klusterlets
            displayName: ClusterManager
            kind: ClusterManager
            name: clustermanagers.operator.open-cluster-management.io
            version: v1
        description: "Note: This operator will stop updating, please use the latest
          operator in OperatorHub.io https://operatorhub.io/operator/cluster-manager.
          \n\nThe Cluster Manager provides the multicluster hub, which can manage
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. This operator supports the installation and upgrade of ClusterManager.\n\n##
          How to Install\nInstall ClusterManager operator by following instructions
          in top right button `Install`. After installing the operator, create an
          instance of the ClusterManager resource to install the ClusterManager.\n\nThe
          pods of ClusterManager are created in the `open-cluster-management-hub`
          namespace:\n\n```\n$ kubectl get pods -n open-cluster-management-hub\nNAME
          \                                                      READY   STATUS    RESTARTS
          \  AGE\ncluster-manager-addon-manager-controller-7fcc67bfdf-x7hbz  1/1     Running
          \  0          61m\ncluster-manager-placement-controller-dbcfd4975-26jpw
          \      1/1     Running   0          61m\ncluster-manager-registration-controller-7949d97899-wwtg4
          \  1/1     Running   0          61m\ncluster-manager-registration-webhook-7f675bc4bb-v4rhj
          \     1/1     Running   0          61m\ncluster-manager-work-webhook-6c9d65fb95-jh97b
          \             1/1     Running   0          61m\n```\n\nThere is a ManagedCluster
          created in the Hub cluster when the managed cluster is registered to the
          Hub cluster.\n\n```\n$ kubectl get managedclusters.cluster.open-cluster-management.io\nNAME
          \                  HUB ACCEPTED   MANAGED CLUSTER URLS     JOINED   AVAILABLE
          \  AGE\ncluster-dev            true                                    True
          \    True        7h20m\ncluster-test           false          https://127.0.0.1:8443
          \                       7h25m\n```\n"
        displayName: Cluster Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open-cluster-management
        - ClusterManager
        links:
        - name: Registration Operator
          url: https://github.com/open-cluster-management-io/ocm
        maintainers:
        - email: zyin@redhat.com
          name: Zhiwei Yin
        - email: deads@redhat.com
          name: David Eads
        - email: jqiu@redhat.com
          name: Jian Qiu
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cluster-manager@sha256:a4c8a54148538b371e5cea3b2f2d4109f7b6bc4a7f2e5b52a840c9340fbf5e47
        - quay.io/open-cluster-management/registration-operator:v0.13.1
        version: 0.13.1
      entries:
      - name: cluster-manager.v0.13.1
        version: 0.13.1
      - name: cluster-manager.v0.13.0
        version: 0.13.0
      - name: cluster-manager.v0.12.0
        version: 0.12.0
      - name: cluster-manager.v0.11.0
        version: 0.11.0
      - name: cluster-manager.v0.10.0
        version: 0.10.0
      - name: cluster-manager.v0.9.1
        version: 0.9.1
      - name: cluster-manager.v0.8.0
        version: 0.8.0
      - name: cluster-manager.v0.7.0
        version: 0.7.0
      - name: cluster-manager.v0.6.0
        version: 0.6.0
      - name: cluster-manager.v0.5.0
        version: 0.5.0
      - name: cluster-manager.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: cluster-manager
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Ian Boden
      provider-url: ""
    name: eclipse-amlen-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eclipse-amlen-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eclipse.org/v1",
                "kind": "Amlen",
                "metadata": {
                  "name": "amlen-sample"
                },
                "spec": {
                  "_amlen_image_tag": "latest",
                  "_amlen_monitor_image_tag": "latest",
                  "_amlen_name": "amlen-sample",
                  "_amlen_namespace": "osdk-test",
                  "_amlen_persistence": "false",
                  "config": "amlen-config",
                  "device_cert_issuer": {
                    "mode": "automatic",
                    "name": "amlen-selfsigned-issuer"
                  },
                  "ha": {
                    "cert_issuer": {
                      "name": "amlen-selfsigned-issuer"
                    },
                    "enabled": true
                  },
                  "size": 2
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/amlen/operator:v1.0.1a
          createdAt: "2022-11-24T15:31:00Z"
          description: An operator to run the Eclipse Amlen MQTT Broker
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/eclipse/amlen
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Amlen
            name: amlens.eclipse.org
            version: v1
        description: Operator for the eclipse Amlen MQTT Broker\n\n### Supported Feature\n\nCurrently
          supports:\n* Install - simple install process\n* Upgrade - non-disruptive
          upgrade\n*High Availability - can be enabled/disabled via the CRD\n\n###
          Documentation\nThe main Amlen website has links to product documentation,
          forum, blog and the slack channel\nhttp://www.eclipse.org/amlen\n\n### Getting
          help\nThe quickest way to get help is to use the slack channel but the forum
          is monitored as well\n\nIssues can also be added to the github repository
          https://github.com/eclipse/amlen\n\n### License\nEclipse Amlen Operator
          is licensed under the [Eclipse Public License - v 2.0](https://www.eclipse.org/legal/epl-2.0/)
        displayName: eclipse-amlen-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - amlen
        - mqtt
        - broker
        links:
        - name: Eclipse Amlen Operator
          url: https://eclipse.org/amlen
        maintainers:
        - email: ianboden@uk.ibm.com
          name: Ian Boden
        maturity: stable
        provider:
          name: Ian Boden
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/amlen/operator:v1.0.1a
        - quay.io/openshift-community-operators/eclipse-amlen-operator@sha256:bb89e2a7cb1c9172b080c72ad3227017d135fc30076d2a68b4e215fa8fa55846
        version: 1.0.0
      entries:
      - name: eclipse-amlen-operator.v1.0.0
        version: 1.0.0
      - name: eclipse-amlen-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: eclipse-amlen-operator.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eclipse.org/v1",
                "kind": "Amlen",
                "metadata": {
                  "name": "amlen-sample"
                },
                "spec": {
                  "config": "amlen-config",
                  "device_cert_issuer": {
                    "mode": "automatic",
                    "name": "amlen-selfsigned-issuer"
                  },
                  "ha": {
                    "cert_issuer": {
                      "name": "amlen-selfsigned-issuer"
                    },
                    "enabled": true
                  },
                  "ldap": {
                    "cert_issuer": {
                      "name": "amlen-selfsigned-issuer"
                    },
                    "enabled": true
                  },
                  "size": 2
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/amlen/operator:v1.1.3
          createdAt: "2025-05-22T10:00:00Z"
          description: An operator to run the Eclipse Amlen MQTT Broker
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/eclipse-amlen/amlen
          support: Eclipse
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Amlen
            name: amlens.eclipse.org
            version: v1
        description: |-
          Operator for the eclipse Amlen MQTT Broker

          ### Supported Feature

          Currently supports:
          * Install - simple install process
          * Upgrade - non-disruptive upgrade
          * High Availability - can be enabled/disabled via the CRD

          ### Documentation
          The main Amlen website has links to product documentation, forum, blog and the slack channel
          http://www.eclipse.org/amlen

          ### Getting help
          The quickest way to get help is to use the slack channel but the forum is monitored as well
          Issues can also be added to the github repository https://github.com/eclipse-amlen/amlen

          ### License
          Eclipse Amlen Operator is licensed under [Eclipse Public License - v 2.0](https://www.eclipse.org/legal/epl-2.0/)
        displayName: eclipse-amlen-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - amlen
        - mqtt
        - broker
        links:
        - name: Eclipse Amlen Operator
          url: https://eclipse.org/amlen
        maintainers:
        - email: ianboden@uk.ibm.com
          name: Ian Boden
        maturity: stable
        provider:
          name: Eclipse Amlen
          url: https://eclipse.org/amlen
        relatedImages:
        - controller:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/community-operator-pipeline-prod/eclipse-amlen-operator@sha256:5fbfb0bd4f764643cdc1021e99e489514a1f035d85131b13e56b11a3045883c2
        version: 1.1.3
      entries:
      - name: eclipse-amlen-operator.v1.1.3
        version: 1.1.3
      - name: eclipse-amlen-operator.v1.1.0
        version: 1.1.0
      - name: eclipse-amlen-operator.v1.0.2
        version: 1.0.2
      - name: eclipse-amlen-operator.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: alpha
    packageName: eclipse-amlen-operator
    provider:
      name: Ian Boden
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: observability-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: observability-operator.v0.0.28
      currentCSVDesc:
        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: quay.io/rhobs/observability-operator:0.0.28
          createdAt: "2023-11-09T07:43:16Z"
          description: A Go based Kubernetes operator to setup and manage highly available
            Monitoring Stack using Prometheus, Alertmanager and Thanos Querier.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            [
              "prometheuses.monitoring.rhobs", "alertmanagers.monitoring.rhobs",
              "thanosrulers.monitoring.rhobs"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/rhobs/observability-operator
        apiservicedefinitions: {}
        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
          - 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: |2+

          Observability Operator is a Go based Kubernetes operator to setup and manage highly available Monitoring stack using Prometheus, Alertmanager and Thanos Querier.
          ### 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
          ### Documentation
          - **[Documentation](https://github.com/rhobs/observability-operator/tree/main/docs)**
          - **[Developer Docs](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md)**
          ### Contributing
          **[See Contribution Guidelines](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md#contributions)** to contribute to the project by
          - Raising Bugs and Feature Requests
          - Fixing Issues by opening a Pull Request
          - Improving Documentation
          ###  License
          Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)

        displayName: Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - monitoring
        - prometheus
        - thanos
        links:
        - name: Observability Operator
          url: https://rhobs-handbook.netlify.app/products/observability-operator
        - name: GitHub
          url: https://github.com/rhobs/observability-operator
        maintainers:
        - email: jfajersk@redhat.com
          name: Jan Fajerski
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: spasquie@redhat.com
          name: Simon Pasquier
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/observability-operator@sha256:182b95a93db9b95606405c24686cbb96054efb0c2236822569f30b6c27992534
        - quay.io/rhobs/obo-admission-webhook:v0.69.0-rhobs1
        - quay.io/rhobs/obo-prometheus-operator:v0.69.0-rhobs1
        - quay.io/rhobs/observability-operator:0.0.28
        version: 0.0.28
      entries:
      - name: observability-operator.v0.0.28
        version: 0.0.28
      - name: observability-operator.v0.0.25
        version: 0.0.25
      name: candidate
    - currentCSV: observability-operator.v0.0.28
      currentCSVDesc:
        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: quay.io/rhobs/observability-operator:0.0.28
          createdAt: "2023-11-09T07:43:16Z"
          description: A Go based Kubernetes operator to setup and manage highly available
            Monitoring Stack using Prometheus, Alertmanager and Thanos Querier.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            [
              "prometheuses.monitoring.rhobs", "alertmanagers.monitoring.rhobs",
              "thanosrulers.monitoring.rhobs"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/rhobs/observability-operator
        apiservicedefinitions: {}
        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
          - 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: |2+

          Observability Operator is a Go based Kubernetes operator to setup and manage highly available Monitoring stack using Prometheus, Alertmanager and Thanos Querier.
          ### 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
          ### Documentation
          - **[Documentation](https://github.com/rhobs/observability-operator/tree/main/docs)**
          - **[Developer Docs](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md)**
          ### Contributing
          **[See Contribution Guidelines](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md#contributions)** to contribute to the project by
          - Raising Bugs and Feature Requests
          - Fixing Issues by opening a Pull Request
          - Improving Documentation
          ###  License
          Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)

        displayName: Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - monitoring
        - prometheus
        - thanos
        links:
        - name: Observability Operator
          url: https://rhobs-handbook.netlify.app/products/observability-operator
        - name: GitHub
          url: https://github.com/rhobs/observability-operator
        maintainers:
        - email: jfajersk@redhat.com
          name: Jan Fajerski
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: spasquie@redhat.com
          name: Simon Pasquier
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/observability-operator@sha256:182b95a93db9b95606405c24686cbb96054efb0c2236822569f30b6c27992534
        - quay.io/rhobs/obo-admission-webhook:v0.69.0-rhobs1
        - quay.io/rhobs/obo-prometheus-operator:v0.69.0-rhobs1
        - quay.io/rhobs/observability-operator:0.0.28
        version: 0.0.28
      entries:
      - name: observability-operator.v0.0.28
        version: 0.0.28
      - name: observability-operator.v0.0.25
        version: 0.0.25
      - name: observability-operator.v0.0.22
        version: 0.0.22
      name: development
    - currentCSV: observability-operator.v0.0.28
      currentCSVDesc:
        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: quay.io/rhobs/observability-operator:0.0.28
          createdAt: "2023-11-09T07:43:16Z"
          description: A Go based Kubernetes operator to setup and manage highly available
            Monitoring Stack using Prometheus, Alertmanager and Thanos Querier.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            [
              "prometheuses.monitoring.rhobs", "alertmanagers.monitoring.rhobs",
              "thanosrulers.monitoring.rhobs"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/rhobs/observability-operator
        apiservicedefinitions: {}
        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
          - 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: |2+

          Observability Operator is a Go based Kubernetes operator to setup and manage highly available Monitoring stack using Prometheus, Alertmanager and Thanos Querier.
          ### 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
          ### Documentation
          - **[Documentation](https://github.com/rhobs/observability-operator/tree/main/docs)**
          - **[Developer Docs](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md)**
          ### Contributing
          **[See Contribution Guidelines](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md#contributions)** to contribute to the project by
          - Raising Bugs and Feature Requests
          - Fixing Issues by opening a Pull Request
          - Improving Documentation
          ###  License
          Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)

        displayName: Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - monitoring
        - prometheus
        - thanos
        links:
        - name: Observability Operator
          url: https://rhobs-handbook.netlify.app/products/observability-operator
        - name: GitHub
          url: https://github.com/rhobs/observability-operator
        maintainers:
        - email: jfajersk@redhat.com
          name: Jan Fajerski
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: spasquie@redhat.com
          name: Simon Pasquier
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/observability-operator@sha256:182b95a93db9b95606405c24686cbb96054efb0c2236822569f30b6c27992534
        - quay.io/rhobs/obo-admission-webhook:v0.69.0-rhobs1
        - quay.io/rhobs/obo-prometheus-operator:v0.69.0-rhobs1
        - quay.io/rhobs/observability-operator:0.0.28
        version: 0.0.28
      entries:
      - name: observability-operator.v0.0.28
        version: 0.0.28
      - name: observability-operator.v0.0.25
        version: 0.0.25
      name: stable
    defaultChannel: stable
    packageName: observability-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://www.redhat.com/
    name: rhdh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhdh-operator.v1.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha4",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
          createdAt: "2025-11-10T18:16:19Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.8.1'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha4
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.8/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:8b5ec4b6085ecb32ea52c33d97adecc313341681b41d891f5346e9b9f8b8a249
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
        - registry.redhat.io/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:9f870202198dca9d941ebb5321334c45cc2309bb079d2a9e602d8a099f8ffa6f
        version: 1.8.1
      entries:
      - name: rhdh-operator.v1.8.1
        version: 1.8.1
      - name: rhdh-operator.v1.8.0
        version: 1.8.0
      - name: rhdh-operator.v1.7.3
        version: 1.7.3
      - name: rhdh-operator.v1.7.2
        version: 1.7.2
      - name: rhdh-operator.v1.7.1
        version: 1.7.1
      - name: rhdh-operator.v1.7.0
        version: 1.7.0
      - name: rhdh-operator.v1.6.5
        version: 1.6.5
      - name: rhdh-operator.v1.6.4
        version: 1.6.4
      - name: rhdh-operator.v1.6.3
        version: 1.6.3
      - name: rhdh-operator.v1.6.2
        version: 1.6.2
      - name: rhdh-operator.v1.6.1
        version: 1.6.1
      - name: rhdh-operator.v1.6.0
        version: 1.6.0
      - name: rhdh-operator.v1.5.3
        version: 1.5.3
      - name: rhdh-operator.v1.5.2
        version: 1.5.2
      - name: rhdh-operator.v1.5.1
        version: 1.5.1
      - name: rhdh-operator.v1.4.3
        version: 1.4.3
      - name: rhdh-operator.v1.4.2
        version: 1.4.2
      - name: rhdh-operator.v1.4.1
        version: 1.4.1
      - name: rhdh-operator.v1.4.0
        version: 1.4.0
      - name: rhdh-operator.v1.3.5
        version: 1.3.5
      - name: rhdh-operator.v1.3.4
        version: 1.3.4
      - name: rhdh-operator.v1.3.3
        version: 1.3.3
      - name: rhdh-operator.v1.3.1
        version: 1.3.1
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast
    - currentCSV: rhdh-operator.v1.1.2-0.1714688890.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:9bea7eabdea44342248dfd6091a8f5c3b6e65884c916b3c2a073a4a64481aa6f
          createdAt: "2023-03-20T16:11:34Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins, configuration settings, and deployment
            mechanisms, which can help streamline the process of setting up a self-managed
            internal developer portal for adopters who are just starting out.
          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.substitutesFor: rhdh-operator.v1.1.2
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.1.0 <1.2.0'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/janus-idp/operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: asoro@redhat.com
          name: Armel Soro
        - email: gazarenk@redhat.com
          name: Gennady Azarenkov
        - email: jianrzha@redhat.com
          name: Jianrong Zhang
        - email: nboldt@redhat.com
          name: Nick Boldt
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-15@sha256:d5f3d496ecd55688e384cc0627700a97af6924582123bcf00749c375724af3de
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:95ed239eb427c7b1e422ece28c5277b5018efb751c2b472bf502b8216219c047
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:d7ae2456857cab09a9e9acf69c9990ef18deb7f920046b8c2483fbfd0d42bbfc
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a93b382258a34e0b56ef6616a8490e5f44ef1c6aa5d29c0d08d2147ae5b440e6
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:9bea7eabdea44342248dfd6091a8f5c3b6e65884c916b3c2a073a4a64481aa6f
        version: 1.1.2+0.1714688890.p
      entries:
      - name: rhdh-operator.v1.1.2
        version: 1.1.2
      - name: rhdh-operator.v1.1.2-0.1714608881.p
        version: 1.1.2+0.1714608881.p
      - name: rhdh-operator.v1.1.2-0.1714688618.p
        version: 1.1.2+0.1714688618.p
      - name: rhdh-operator.v1.1.2-0.1714688890.p
        version: 1.1.2+0.1714688890.p
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast-1.1
    - currentCSV: rhdh-operator.v1.2.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:c9051a6c339cd40cbc7474a33b32a6b94913af964e12ca5da0c0b7e1c6f444d5
          createdAt: "2024-11-28T17:55:19Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.2.6'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.2/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.2/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: asoro@redhat.com
          name: Armel Soro
        - email: cdaley@redhat.com
          name: Corey Daley
        - email: gazarenk@redhat.com
          name: Gennady Azarenkov
        - email: nboldt@redhat.com
          name: Nick Boldt
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ef29f2b340a6dc52c5014239876d54a54f7c0f0bf4ea917391438a69c94a8532
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:025eb58c69b9cf5992ecf2fccb29a3d36061cbcf62652a1c6878f0c4d767c1fb
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:3170da029869d15a246ad31d0debd4b9c03ba13855fb877a754cfdffb2286b80
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:c9051a6c339cd40cbc7474a33b32a6b94913af964e12ca5da0c0b7e1c6f444d5
        version: 1.2.6
      entries:
      - name: rhdh-operator.v1.2.6
        version: 1.2.6
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast-1.2
    - currentCSV: rhdh-operator.v1.3.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:5ce579edc10bde5c1c400104f7e0d9f86ca277cd565aaf3dd84b8636f5b949a8
          createdAt: "2025-02-10T18:12:52Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.3.5'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.3/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a7ce92f7f4aadca2781c44839bc357615395587bc8b68a735642967cf8694362
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:5ce579edc10bde5c1c400104f7e0d9f86ca277cd565aaf3dd84b8636f5b949a8
        - registry.redhat.io/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:b4934c45ba595b36e65c73b734c58d1517e7f43b7cfc309ca8bc853733582f76
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:c044fed8485a62a5051ac726525da546936be22f268db05491bf81582e0e6194
        version: 1.3.5
      entries:
      - name: rhdh-operator.v1.3.5
        version: 1.3.5
      - name: rhdh-operator.v1.3.4
        version: 1.3.4
      - name: rhdh-operator.v1.3.3
        version: 1.3.3
      - name: rhdh-operator.v1.3.1
        version: 1.3.1
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast-1.3
    - currentCSV: rhdh-operator.v1.4.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:ae5b52c1b35e82f3c564402e367a2a2028e16806867bba0868643089ba7ed223
          createdAt: "2025-04-03T05:42:32Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.4.3'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.4/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:093c6a66d4faa1d980e4319a048db8b2869eba8f13f40f02615d6696257e6719
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:ae5b52c1b35e82f3c564402e367a2a2028e16806867bba0868643089ba7ed223
        version: 1.4.3
      entries:
      - name: rhdh-operator.v1.4.3
        version: 1.4.3
      - name: rhdh-operator.v1.4.2
        version: 1.4.2
      - name: rhdh-operator.v1.4.1
        version: 1.4.1
      - name: rhdh-operator.v1.4.0
        version: 1.4.0
      name: fast-1.4
    - currentCSV: rhdh-operator.v1.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:8fe167cc649a1c53994c376f3cf3eed8c6e318741a0c08e5aaf07cb0b74e7f8a
          createdAt: "2025-06-05T14:31:21Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.5.3'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.5/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:2ad8c87e82df27c2b6ceba94179d1f0a40fe775368663c1b5572611888e0e02b
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:5a19032dda9a0f584b41cbe9e729ed23e6003d90ebbb026eb9e7bb9769d4a4e4
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:8fe167cc649a1c53994c376f3cf3eed8c6e318741a0c08e5aaf07cb0b74e7f8a
        - registry.redhat.io/rhel9/postgresql-15@sha256:74377f5a61dd7e3e0ba5d2fa880b7107025433a026396567c79eac927b4212bc
        version: 1.5.3
      entries:
      - name: rhdh-operator.v1.5.3
        version: 1.5.3
      - name: rhdh-operator.v1.5.2
        version: 1.5.2
      - name: rhdh-operator.v1.5.1
        version: 1.5.1
      name: fast-1.5
    - currentCSV: rhdh-operator.v1.6.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:50f20300c81621221260d03d22b1442750e3f1d2e62f3e511d63925d84c4d1f9
          createdAt: "2025-08-27T18:43:12Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.6.5'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.6/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:50f20300c81621221260d03d22b1442750e3f1d2e62f3e511d63925d84c4d1f9
        - registry.redhat.io/rhel9/postgresql-15@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:177a7308f61a6b1ba21bc0f7bf550a93d4478e52479e2c94a2437f2152e3d8ff
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:3b2cf972e1ced0a46d3559da4eb1a1b32c50457293ede4958a13538a84b45316
        version: 1.6.5
      entries:
      - name: rhdh-operator.v1.6.5
        version: 1.6.5
      - name: rhdh-operator.v1.6.4
        version: 1.6.4
      - name: rhdh-operator.v1.6.3
        version: 1.6.3
      - name: rhdh-operator.v1.6.2
        version: 1.6.2
      - name: rhdh-operator.v1.6.1
        version: 1.6.1
      - name: rhdh-operator.v1.6.0
        version: 1.6.0
      name: fast-1.6
    - currentCSV: rhdh-operator.v1.7.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:6ebf90f0b2419efa5c159b52ee30adde1e7aa7d0ad8486f143d80fe5bd9dd06f
          createdAt: "2025-11-04T05:38:01Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.7.3'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.7/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:b5ffbb3cc1caac4e020abf1d711566aef859b08e479ab181e5b39ce9da7a5b73
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:54c5cd2a4865a372ba9465908f73928382745e04ad446c97b28adde213d13309
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:6ebf90f0b2419efa5c159b52ee30adde1e7aa7d0ad8486f143d80fe5bd9dd06f
        - registry.redhat.io/rhel9/postgresql-15@sha256:990be59eeb55860a62455375fef7795854d78ce15ac3e7568b9bdb4680bfcd97
        version: 1.7.3
      entries:
      - name: rhdh-operator.v1.7.3
        version: 1.7.3
      - name: rhdh-operator.v1.7.2
        version: 1.7.2
      - name: rhdh-operator.v1.7.1
        version: 1.7.1
      - name: rhdh-operator.v1.7.0
        version: 1.7.0
      name: fast-1.7
    - currentCSV: rhdh-operator.v1.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha4",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
          createdAt: "2025-11-10T18:16:19Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.8.1'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha4
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.8/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:9f870202198dca9d941ebb5321334c45cc2309bb079d2a9e602d8a099f8ffa6f
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:8b5ec4b6085ecb32ea52c33d97adecc313341681b41d891f5346e9b9f8b8a249
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
        - registry.redhat.io/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        version: 1.8.1
      entries:
      - name: rhdh-operator.v1.8.1
        version: 1.8.1
      - name: rhdh-operator.v1.8.0
        version: 1.8.0
      name: fast-1.8
    defaultChannel: fast
    packageName: rhdh
    provider:
      name: Red Hat Inc.
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-kinesis-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-kinesis-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kinesis.services.k8s.aws/v1alpha1",
                "kind": "Stream",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/kinesis-controller:1.2.0
          createdAt: "2025-11-29T05:53:34Z"
          description: AWS Kinesis controller is a service controller for managing
            Kinesis resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Stream represents the state of an AWS kinesis Stream resource.
            displayName: Stream
            kind: Stream
            name: streams.kinesis.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Kinesis resources in AWS from within your Kubernetes cluster.

          **About Amazon Kinesis**

          You can use Amazon Kinesis Data Streams to collect and process large streams of data records in real time. You can create data-processing applications, known as Kinesis Data Streams applications. A typical Kinesis Data Streams application reads data from a data stream as data records. These applications can use the Kinesis Client Library, and they can run on Amazon EC2 instances.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Kinesis
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kinesis
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Kinesis Developer Resources
          url: https://aws.amazon.com/kinesis/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: kinesis maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-kinesis-controller@sha256:739135f195f5bb2a2a6ca7095f1a0806e95aeec163b99cea67f72caab6f36358
        - public.ecr.aws/aws-controllers-k8s/kinesis-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-kinesis-controller.v1.2.0
        version: 1.2.0
      - name: ack-kinesis-controller.v1.1.1
        version: 1.1.1
      - name: ack-kinesis-controller.v1.1.0
        version: 1.1.0
      - name: ack-kinesis-controller.v1.0.16
        version: 1.0.16
      - name: ack-kinesis-controller.v1.0.15
        version: 1.0.15
      - name: ack-kinesis-controller.v1.0.14
        version: 1.0.14
      - name: ack-kinesis-controller.v1.0.13
        version: 1.0.13
      - name: ack-kinesis-controller.v1.0.12
        version: 1.0.12
      - name: ack-kinesis-controller.v1.0.11
        version: 1.0.11
      - name: ack-kinesis-controller.v1.0.10
        version: 1.0.10
      - name: ack-kinesis-controller.v1.0.9
        version: 1.0.9
      - name: ack-kinesis-controller.v1.0.8
        version: 1.0.8
      - name: ack-kinesis-controller.v1.0.7
        version: 1.0.7
      - name: ack-kinesis-controller.v1.0.6
        version: 1.0.6
      - name: ack-kinesis-controller.v1.0.5
        version: 1.0.5
      - name: ack-kinesis-controller.v1.0.4
        version: 1.0.4
      - name: ack-kinesis-controller.v1.0.3
        version: 1.0.3
      - name: ack-kinesis-controller.v1.0.2
        version: 1.0.2
      - name: ack-kinesis-controller.v1.0.1
        version: 1.0.1
      - name: ack-kinesis-controller.v1.0.0
        version: 1.0.0
      - name: ack-kinesis-controller.v0.0.19
        version: 0.0.19
      - name: ack-kinesis-controller.v0.0.18
        version: 0.0.18
      - name: ack-kinesis-controller.v0.0.17
        version: 0.0.17
      - name: ack-kinesis-controller.v0.0.16
        version: 0.0.16
      - name: ack-kinesis-controller.v0.0.15
        version: 0.0.15
      - name: ack-kinesis-controller.v0.0.10
        version: 0.0.10
      - name: ack-kinesis-controller.v0.0.9
        version: 0.0.9
      - name: ack-kinesis-controller.v0.0.8
        version: 0.0.8
      - name: ack-kinesis-controller.v0.0.6
        version: 0.0.6
      - name: ack-kinesis-controller.v0.0.5
        version: 0.0.5
      - name: ack-kinesis-controller.v0.0.4
        version: 0.0.4
      - name: ack-kinesis-controller.v0.0.3
        version: 0.0.3
      - name: ack-kinesis-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-kinesis-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Oracle Corporation
      provider-url: https://github.com/oracle/coherence-operator
    name: coherence-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: coherence-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "Coherence",
                "metadata": {
                  "name": "coherence-sample"
                },
                "spec": {
                  "replicas": 3
                }
              },
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "CoherenceJob",
                "metadata": {
                  "name": "coherence-job-sample"
                },
                "spec": {
                  "replicas": 1
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          certified: "false"
          containerImage: container-registry.oracle.com/middleware/coherence-operator:3.5.7
          createdAt: "2025-11-24T17:26:13Z"
          description: '[DEPRECATED] Use the certified Coherence Kubernetes Operator
            instead'
          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: "true"
          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"
          operatorframework.io/arch.amd64: supported
          operatorframework.io/arch.arm64: supported
          operatorframework.io/os.linux: supported
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/oracle/coherence-operator
          support: Oracle Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Coherence is the top level schema for the Coherence API and
              custom resource definition (CRD).
            displayName: Coherence
            kind: Coherence
            name: coherence.coherence.oracle.com
            version: v1
          - description: |-
              CoherenceJob is the top level schema for the CoherenceJob API and custom resource definition (CRD)
              for configuring Coherence Job workloads.
            displayName: Coherence Job
            kind: CoherenceJob
            name: coherencejob.coherence.oracle.com
            version: v1
        description: |
          The Oracle Coherence Kubernetes Operator enables easy management of Coherence clusters in a Kubernetes environment.

          ### Installation Guide & Configuration

          For the complete installation guide and all configuration options please refer to
          [Coherence Operator Documentation](https://oracle.github.io/coherence-operator/docs/latest/#/about/01_overview).
        displayName: Coherence Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Coherence
        - Oracle
        - In Memory Data
        - Caching
        links:
        - name: Coherence Kubernetes Operator
          url: https://oracle.github.io/coherence-operator/docs/latest
        - name: Oracle Coherence
          url: https://coherence.community
        maintainers:
        - email: jonathan.knight@oracle.com
          name: Jonathan Knight
        maturity: mature
        minKubeVersion: 1.26.0
        provider:
          name: Oracle Corporation
          url: https://github.com/oracle/coherence-operator
        relatedImages:
        - container-registry.oracle.com/middleware/coherence-operator:3.5.7
        - quay.io/community-operator-pipeline-prod/coherence-operator:3.5.7
        version: 3.5.7
      entries:
      - name: coherence-operator.v3.5.7
        version: 3.5.7
      - name: coherence-operator.v3.5.6
        version: 3.5.6
      - name: coherence-operator.v3.5.5
        version: 3.5.5
      - name: coherence-operator.v3.5.4
        version: 3.5.4
      - name: coherence-operator.v3.5.2
        version: 3.5.2
      - name: coherence-operator.v3.5.0
        version: 3.5.0
      - name: coherence-operator.v3.4.3
        version: 3.4.3
      name: stable
    defaultChannel: stable
    packageName: coherence-operator
    provider:
      name: Oracle Corporation
      url: https://github.com/oracle/coherence-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-opensearchservice-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-opensearchservice-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "opensearchservice.services.k8s.aws/v1alpha1",
                "kind": "Domain",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/opensearchservice-controller:1.2.0
          createdAt: "2025-11-29T05:41:58Z"
          description: AWS OpenSearch Service controller is a service controller for
            managing OpenSearch Service resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Domain represents the state of an AWS opensearchservice Domain
              resource.
            displayName: Domain
            kind: Domain
            name: domains.opensearchservice.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage OpenSearch Service resources in AWS from within your Kubernetes cluster.

          **About Amazon OpenSearch Service**

          Amazon OpenSearch Service (successor to Amazon Elasticsearch Service) is a managed service that makes it easy to deploy, operate, and scale OpenSearch clusters in the AWS Cloud. Amazon OpenSearch Service supports OpenSearch and legacy Elasticsearch OSS. When you create a cluster, you have the option of which search engine to use. OpenSearch Service offers broad compatibility with Elasticsearch OSS 7.10, the final open source version of the software. For information about what changed with the recent service renaming, and the actions you might need to take, see [Amazon OpenSearch Service - Summary of changes](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/rename.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon OpenSearch Service
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opensearchservice
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon OpenSearch Service Developer Resources
          url: https://aws.amazon.com/opensearch-service/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: opensearch service maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-opensearchservice-controller@sha256:7409b53d11987aa2d46f2bd031a3953a2ffe129769aee87f544c9ff4a4b5173e
        - public.ecr.aws/aws-controllers-k8s/opensearchservice-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-opensearchservice-controller.v1.2.0
        version: 1.2.0
      - name: ack-opensearchservice-controller.v1.1.2
        version: 1.1.2
      - name: ack-opensearchservice-controller.v1.1.1
        version: 1.1.1
      - name: ack-opensearchservice-controller.v1.1.0
        version: 1.1.0
      - name: ack-opensearchservice-controller.v1.0.15
        version: 1.0.15
      - name: ack-opensearchservice-controller.v1.0.12
        version: 1.0.12
      - name: ack-opensearchservice-controller.v1.0.10
        version: 1.0.10
      - name: ack-opensearchservice-controller.v1.0.9
        version: 1.0.9
      - name: ack-opensearchservice-controller.v1.0.8
        version: 1.0.8
      - name: ack-opensearchservice-controller.v1.0.7
        version: 1.0.7
      - name: ack-opensearchservice-controller.v1.0.6
        version: 1.0.6
      - name: ack-opensearchservice-controller.v1.0.5
        version: 1.0.5
      - name: ack-opensearchservice-controller.v1.0.4
        version: 1.0.4
      - name: ack-opensearchservice-controller.v1.0.2
        version: 1.0.2
      - name: ack-opensearchservice-controller.v1.0.1
        version: 1.0.1
      - name: ack-opensearchservice-controller.v1.0.0
        version: 1.0.0
      - name: ack-opensearchservice-controller.v0.0.28
        version: 0.0.28
      - name: ack-opensearchservice-controller.v0.0.27
        version: 0.0.27
      - name: ack-opensearchservice-controller.v0.0.26
        version: 0.0.26
      - name: ack-opensearchservice-controller.v0.0.24
        version: 0.0.24
      - name: ack-opensearchservice-controller.v0.0.23
        version: 0.0.23
      - name: ack-opensearchservice-controller.v0.0.19
        version: 0.0.19
      - name: ack-opensearchservice-controller.v0.0.17
        version: 0.0.17
      - name: ack-opensearchservice-controller.v0.0.15
        version: 0.0.15
      - name: ack-opensearchservice-controller.v0.0.14
        version: 0.0.14
      - name: ack-opensearchservice-controller.v0.0.13
        version: 0.0.13
      - name: ack-opensearchservice-controller.v0.0.12
        version: 0.0.12
      - name: ack-opensearchservice-controller.v0.0.11
        version: 0.0.11
      - name: ack-opensearchservice-controller.v0.0.10
        version: 0.0.10
      - name: ack-opensearchservice-controller.v0.0.9
        version: 0.0.9
      - name: ack-opensearchservice-controller.v0.0.8
        version: 0.0.8
      - name: ack-opensearchservice-controller.v0.0.7
        version: 0.0.7
      - name: ack-opensearchservice-controller.v0.0.6
        version: 0.0.6
      - name: ack-opensearchservice-controller.v0.0.5
        version: 0.0.5
      - name: ack-opensearchservice-controller.v0.0.4
        version: 0.0.4
      name: alpha
    defaultChannel: alpha
    packageName: ack-opensearchservice-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: mariadb-operator
      provider-url: https://github.com/mariadb-operator/mariadb-operator
    name: mariadb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mariadb-operator.v25.10.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "helm.mariadb.mmontes.io/v1alpha1",
                "kind": "MariadbOperator",
                "metadata": {
                  "name": "mariadb-operator"
                },
                "spec": {
                  "affinity": {},
                  "certController": {
                    "affinity": {},
                    "caValidity": "35064h",
                    "certValidity": "8766h",
                    "enabled": true,
                    "extrArgs": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "ha": {
                      "enabled": false,
                      "replicas": 3
                    },
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/mariadb-operator/mariadb-operator",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "lookaheadValidity": "2160h",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podSecurityContext": {},
                    "requeueDuration": "5m",
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "automount": true,
                      "enabled": true,
                      "extraLabels": {},
                      "name": ""
                    },
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "enabled": true,
                      "interval": "30s",
                      "scrapeTimeout": "25s"
                    },
                    "tolerations": []
                  },
                  "clusterName": "cluster.local",
                  "extrArgs": [],
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "fullnameOverride": "",
                  "ha": {
                    "enabled": false,
                    "replicas": 3
                  },
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/mariadb-operator/mariadb-operator",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "logLevel": "INFO",
                  "metrics": {
                    "enabled": false,
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "enabled": true,
                      "interval": "30s",
                      "scrapeTimeout": "25s"
                    }
                  },
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podSecurityContext": {},
                  "rbac": {
                    "enabled": true
                  },
                  "resources": {},
                  "securityContext": {},
                  "serviceAccount": {
                    "annotations": {},
                    "automount": true,
                    "enabled": true,
                    "extraLabels": {},
                    "name": ""
                  },
                  "tolerations": [],
                  "webhook": {
                    "affinity": {},
                    "annotations": {},
                    "cert": {
                      "caPath": "/tmp/k8s-webhook-server/certificate-authority",
                      "certManager": {
                        "duration": "",
                        "enabled": false,
                        "issuerRef": {},
                        "renewBefore": ""
                      },
                      "path": "/tmp/k8s-webhook-server/serving-certs",
                      "secretAnnotations": {}
                    },
                    "extrArgs": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "ha": {
                      "enabled": false,
                      "replicas": 3
                    },
                    "hostNetwork": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/mariadb-operator/mariadb-operator",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podSecurityContext": {},
                    "port": 10250,
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "automount": true,
                      "enabled": true,
                      "extraLabels": {},
                      "name": ""
                    },
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "enabled": true,
                      "interval": "30s",
                      "scrapeTimeout": "25s"
                    },
                    "tolerations": []
                  }
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup"
                },
                "spec": {
                  "args": [
                    "--single-transaction",
                    "--all-databases"
                  ],
                  "logLevel": "info",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "suspend": false
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "backups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Connection",
                "metadata": {
                  "name": "connection"
                },
                "spec": {
                  "database": "mariadb",
                  "healthCheck": {
                    "interval": "10s",
                    "retryInterval": "3s"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "params": {
                    "parseTime": "true"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "secretName": "connection",
                  "secretTemplate": {
                    "annotations": {
                      "k8s.mariadb.com/connection": "sample"
                    },
                    "databaseKey": "database",
                    "hostKey": "host",
                    "key": "dsn",
                    "labels": {
                      "k8s.mariadb.com/connection": "sample"
                    },
                    "passwordKey": "password",
                    "portKey": "port",
                    "usernameKey": "username"
                  },
                  "serviceName": "mariadb",
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Database",
                "metadata": {
                  "name": "data-test"
                },
                "spec": {
                  "characterSet": "utf8",
                  "collate": "utf8_general_ci",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "retryInterval": "5s"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "ExternalMariaDB",
                "metadata": {
                  "name": "external-mariadb"
                },
                "spec": {
                  "connection": {
                    "healthCheck": {
                      "interval": "5s"
                    },
                    "secretName": "external-mariadb"
                  },
                  "host": "mariadb.default.svc.cluster.local",
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "port": 3306,
                  "username": "root"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Grant",
                "metadata": {
                  "name": "grant"
                },
                "spec": {
                  "database": "*",
                  "grantOption": true,
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "privileges": [
                    "SELECT",
                    "INSERT",
                    "UPDATE"
                  ],
                  "requeueInterval": "30s",
                  "retryInterval": "5s",
                  "table": "*",
                  "username": "user"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "MariaDB",
                "metadata": {
                  "name": "mariadb"
                },
                "spec": {
                  "connection": {
                    "secretName": "mariadb-conn",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "database": "mariadb",
                  "galera": {
                    "enabled": true
                  },
                  "metrics": {
                    "enabled": true,
                    "passwordSecretKeyRef": {
                      "generate": true,
                      "key": "password",
                      "name": "mariadb-metrics"
                    }
                  },
                  "myCnf": "[mariadb]\nbind-address=*\ndefault_storage_engine=InnoDB\nbinlog_format=row\ninnodb_autoinc_lock_mode=2\ninnodb_buffer_pool_size=1024M\nmax_allowed_packet=256M\n",
                  "passwordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-password"
                  },
                  "primaryConnection": {
                    "secretName": "mariadb-conn-primary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "primaryService": {
                    "type": "ClusterIP"
                  },
                  "replicas": 3,
                  "rootPasswordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-root"
                  },
                  "secondaryConnection": {
                    "secretName": "mariadb-conn-secondary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "secondaryService": {
                    "type": "ClusterIP"
                  },
                  "service": {
                    "type": "ClusterIP"
                  },
                  "storage": {
                    "size": "1Gi"
                  },
                  "updateStrategy": {
                    "type": "ReplicasFirstPrimaryLast"
                  },
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "MaxScale",
                "metadata": {
                  "name": "maxscale-galera"
                },
                "spec": {
                  "admin": {
                    "guiEnabled": true,
                    "port": 8989
                  },
                  "auth": {
                    "generate": true
                  },
                  "config": {
                    "sync": {
                      "database": "mysql",
                      "interval": "5s",
                      "timeout": "10s"
                    }
                  },
                  "connection": {
                    "port": 3306,
                    "secretName": "mxs-galera-conn"
                  },
                  "guiKubernetesService": {
                    "metadata": {
                      "annotations": {
                        "metallb.universe.tf/loadBalancerIPs": "172.18.0.231"
                      }
                    },
                    "type": "LoadBalancer"
                  },
                  "kubernetesService": {
                    "annotations": {
                      "metallb.universe.tf/loadBalancerIPs": "172.18.0.224"
                    },
                    "type": "LoadBalancer"
                  },
                  "mariaDbRef": {
                    "name": "mariadb-galera"
                  },
                  "monitor": {
                    "cooperativeMonitoring": "majority_of_all",
                    "interval": "2s",
                    "params": {
                      "available_when_donor": "false",
                      "disable_master_failback": "false",
                      "disable_master_role_setting": "false"
                    }
                  },
                  "replicas": 3,
                  "requeueInterval": "10s",
                  "services": [
                    {
                      "listener": {
                        "params": {
                          "connection_metadata": "tx_isolation=auto"
                        },
                        "port": 3306,
                        "protocol": "MariaDBProtocol"
                      },
                      "name": "rw-router",
                      "params": {
                        "master_accept_reads": "true",
                        "max_replication_lag": "3s",
                        "max_slave_connections": "255",
                        "transaction_replay": "true",
                        "transaction_replay_attempts": "10",
                        "transaction_replay_timeout": "5s"
                      },
                      "router": "readwritesplit"
                    },
                    {
                      "listener": {
                        "port": 3307
                      },
                      "name": "rconn-master-router",
                      "params": {
                        "master_accept_reads": "true",
                        "max_replication_lag": "3s",
                        "router_options": "master"
                      },
                      "router": "readconnroute"
                    },
                    {
                      "listener": {
                        "port": 3308
                      },
                      "name": "rconn-slave-router",
                      "params": {
                        "max_replication_lag": "3s",
                        "router_options": "slave"
                      },
                      "router": "readconnroute"
                    }
                  ]
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "PhysicalBackup",
                "metadata": {
                  "name": "physicalbackup"
                },
                "spec": {
                  "compression": "bzip2",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "podAffinity": true,
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "immediate": true,
                    "suspend": false
                  },
                  "serviceAccountName": "backup",
                  "stagingStorage": {
                    "persistentVolumeClaim": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "1Gi"
                        }
                      }
                    }
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "physicalbackups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "region": "us-east-1",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  },
                  "timeout": "1h"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore"
                },
                "spec": {
                  "backupRef": {
                    "name": "backup"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "targetRecoveryTime": "2023-12-19T09:00:00Z"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "SqlJob",
                "metadata": {
                  "name": "03-stars"
                },
                "spec": {
                  "database": "mariadb",
                  "dependsOn": [
                    {
                      "name": "01-users"
                    },
                    {
                      "name": "02-repos"
                    }
                  ],
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "suspend": false
                  },
                  "sql": "CREATE TABLE IF NOT EXISTS stars (\n  id bigint PRIMARY KEY AUTO_INCREMENT,\n  user_id bigint NOT NULL,\n  repo_id bigint NOT NULL,\n  FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,\n  FOREIGN KEY (repo_id) REFERENCES repos(id) ON DELETE CASCADE,\n  UNIQUE KEY (user_id, repo_id)\n);\nINSERT INTO stars(user_id, repo_id) \n  VALUES((SELECT id FROM users ORDER BY RAND() LIMIT 1), (SELECT id FROM repos ORDER BY RAND() LIMIT 1))\n  ON DUPLICATE KEY UPDATE id=id;\nDELETE FROM stars WHERE id = (SELECT id FROM stars ORDER BY RAND() LIMIT 1);\nSELECT r.name AS repo, COUNT(*) AS stars\nFROM stars s\nJOIN repos r\nON s.repo_id = r.id\nGROUP BY r.id\nORDER BY stars DESC;",
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "user"
                },
                "spec": {
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxUserConnections": 20,
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "retryInterval": "5s"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: ghcr.io/mariadb-operator/mariadb-operator-helm:25.10.3
          createdAt: "2025-12-24T12:25:03Z"
          description: Run and operate MariaDB in a cloud native way
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/mariadb-operator/mariadb-operator
          support: mariadb-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Configures a backup
            displayName: Backup
            kind: Backup
            name: backups.k8s.mariadb.com
            version: v1alpha1
          - description: Configures a connection
            displayName: Connection
            kind: Connection
            name: connections.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a logical database
            displayName: Database
            kind: Database
            name: databases.k8s.mariadb.com
            version: v1alpha1
          - description: Configures an external MariaDB resource
            displayName: ExternalMariaDB
            kind: ExternalMariaDB
            name: externalmariadbs.k8s.mariadb.com
            version: v1alpha1
          - description: Grants permissions to an user in a database
            displayName: Grant
            kind: Grant
            name: grants.k8s.mariadb.com
            version: v1alpha1
          - description: Configures MariaDB helm chart based operator
            displayName: MariadbOperator
            kind: MariadbOperator
            name: mariadboperators.helm.mariadb.mmontes.io
            version: v1alpha1
          - description: Provisions a MariaDB instance
            displayName: MariaDB
            kind: MariaDB
            name: mariadbs.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a MaxScale database proxy
            displayName: MaxScale
            kind: MaxScale
            name: maxscales.k8s.mariadb.com
            version: v1alpha1
          - description: Configures a physical backup
            displayName: PhysicalBackup
            kind: PhysicalBackup
            name: physicalbackups.k8s.mariadb.com
            version: v1alpha1
          - description: Restores a backup
            displayName: Restore
            kind: Restore
            name: restores.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a SQL job
            displayName: SqlJob
            kind: SqlJob
            name: sqljobs.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a user
            displayName: User
            kind: User
            name: users.k8s.mariadb.com
            version: v1alpha1
        description: |
          Install [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) via [OLM](https://olm.operatorframework.io/) using the [helm chart](https://artifacthub.io/packages/helm/mariadb-operator/mariadb-operator).

          This helm operator provides provides a 1:1 mapping between the official helm chart and the [`MariadbOperator`](https://github.com/mariadb-operator/mariadb-operator-helm/blob/main/config/samples/helm_v1alpha1_mariadboperator.yaml) CRD, allowing to install [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) via OLM without having to do any change in the helm chart.

          Normally, you would install [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) providing this `values.yaml` to the helm chart:
          ```yaml
          image:
            repository: ghcr.io/mariadb-operator/mariadb-operator
            pullPolicy: IfNotPresent
          logLevel: INFO
          ha:
            enabled: true
          metrics:
            enabled: true
            serviceMonitor:
              enabled: true
          webhook:
            cert:
              certManager:
                enabled: true
          ```

          This helm chart installation is abstracted in the [`MariadbOperator`](https://github.com/mariadb-operator/mariadb-operator-helm/blob/main/config/samples/helm_v1alpha1_mariadboperator.yaml) CRD, which will be reconciled by the helm operator:
          ```yaml
          apiVersion: helm.k8s.mariadb.com/v1alpha1
          kind: MariadbOperator
          metadata:
            name: mariadb-operator
          spec:
            image:
              repository: ghcr.io/mariadb-operator/mariadb-operator
              pullPolicy: IfNotPresent
            logLevel: INFO
            ha:
              enabled: true
            metrics:
              enabled: true
              serviceMonitor:
                enabled: true
            webhook:
              cert:
                certManager:
                  enabled: true
          ```

          Once you have installed the operator, you will able to install a [`MariaDB`](https://github.com/mariadb-operator/mariadb-operator/blob/main/examples/manifests/mariadb_v1alpha1_mariadb.yaml) instance. Refer to the main [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) documentation for getting started with the rest of CRDs.

          ## Documentation
          * [mariadb-operator](https://github.com/mariadb-operator/mariadb-operator/blob/main/README.md)
          * [mariadb-operator-helm](https://github.com/mariadb-operator/mariadb-operator-helm/blob/main/README.md)

          ## Releases
          This operator is automatically published in the following repositories whenever a new version of the [helm chart](https://artifacthub.io/packages/helm/mariadb-operator/mariadb-operator) is released:
          - [k8s-operatorhub/community-operators](https://github.com/k8s-operatorhub/community-operators)
          - [redhat-openshift-ecosystem/community-operators-prod](https://github.com/redhat-openshift-ecosystem/community-operators-prod)

          ## Roadmap
          Take a look at our [roadmap](https://github.com/mariadb-operator/mariadb-operator/blob/main/ROADMAP.md) and feel free to open an issue to suggest new features.

          ## Contributing
          We welcome and encourage contributions to this project! Please check our [contributing](https://github.com/mariadb-operator/mariadb-operator/blob/main/CONTRIBUTING.md) and [development](https://github.com/mariadb-operator/mariadb-operator/blob/main/docs/DEVELOPMENT.md) guides. PRs welcome!

          ## Get in touch
          Join us on Slack: **[MariaDB Community Slack](https://r.mariadb.com/join-community-slack)**.
        displayName: MariaDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mariadb
        - mysql
        - operator
        - mariadb-operator
        - database
        - maxscale
        links:
        - name: GitHub
          url: https://github.com/mariadb-operator/mariadb-operator
        maintainers:
        - email: mariadb-operator@proton.me
          name: mmontes11
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: mariadb-operator
          url: https://github.com/mariadb-operator/mariadb-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/mariadb-operator@sha256:472977c3b911835b41c6e9a7486d0caa7c22e6beb44fb67cb0fb4b64f09084b9
        - ghcr.io/mariadb-operator/mariadb-operator-helm:25.10.3
        version: 25.10.3
      entries:
      - name: mariadb-operator.v25.10.3
        version: 25.10.3
      - name: mariadb-operator.v25.10.2
        version: 25.10.2
      - name: mariadb-operator.v25.10.1
        version: 25.10.1
      - name: mariadb-operator.v25.10.0
        version: 25.10.0
      - name: mariadb-operator.v25.8.4
        version: 25.8.4
      - name: mariadb-operator.v25.8.3
        version: 25.8.3
      - name: mariadb-operator.v25.8.2
        version: 25.8.2
      - name: mariadb-operator.v25.8.1
        version: 25.8.1
      - name: mariadb-operator.v25.8.0
        version: 25.8.0
      - name: mariadb-operator.v0.38.0
        version: 0.38.0
      - name: mariadb-operator.v0.37.1
        version: 0.37.1
      - name: mariadb-operator.v0.37.0
        version: 0.37.0
      - name: mariadb-operator.v0.36.0
        version: 0.36.0
      - name: mariadb-operator.v0.35.1
        version: 0.35.1
      - name: mariadb-operator.v0.35.0
        version: 0.35.0
      - name: mariadb-operator.v0.34.0
        version: 0.34.0
      - name: mariadb-operator.v0.33.0
        version: 0.33.0
      - name: mariadb-operator.v0.32.0
        version: 0.32.0
      - name: mariadb-operator.v0.31.0
        version: 0.31.0
      - name: mariadb-operator.v0.30.0
        version: 0.30.0
      - name: mariadb-operator.v0.29.0
        version: 0.29.0
      - name: mariadb-operator.v0.28.1
        version: 0.28.1
      - name: mariadb-operator.v0.27.0
        version: 0.27.0
      - name: mariadb-operator.v0.26.0
        version: 0.26.0
      - name: mariadb-operator.v0.24.0
        version: 0.24.0
      - name: mariadb-operator.v0.23.1
        version: 0.23.1
      - name: mariadb-operator.v0.23.0
        version: 0.23.0
      - name: mariadb-operator.v0.22.0
        version: 0.22.0
      - name: mariadb-operator.v0.21.0
        version: 0.21.0
      - name: mariadb-operator.v0.20.0
        version: 0.20.0
      - name: mariadb-operator.v0.19.0
        version: 0.19.0
      - name: mariadb-operator.v0.18.0
        version: 0.18.0
      - name: mariadb-operator.v0.17.0
        version: 0.17.0
      - name: mariadb-operator.v0.16.0
        version: 0.16.0
      - name: mariadb-operator.v0.15.1
        version: 0.15.1
      - name: mariadb-operator.v0.15.0
        version: 0.15.0
      - name: mariadb-operator.v0.14.0
        version: 0.14.0
      - name: mariadb-operator.v0.13.0
        version: 0.13.0
      - name: mariadb-operator.v0.11.0
        version: 0.11.0
      - name: mariadb-operator.v0.10.0
        version: 0.10.0
      - name: mariadb-operator.v0.9.1
        version: 0.9.1
      - name: mariadb-operator.v0.9.0
        version: 0.9.0
      - name: mariadb-operator.v0.8.0
        version: 0.8.0
      - name: mariadb-operator.v0.7.1
        version: 0.7.1
      - name: mariadb-operator.v0.7.0
        version: 0.7.0
      - name: mariadb-operator.v0.6.7
        version: 0.6.7
      - name: mariadb-operator.v0.6.6
        version: 0.6.6
      - name: mariadb-operator.v0.6.5
        version: 0.6.5
      - name: mariadb-operator.v0.6.4
        version: 0.6.4
      name: alpha
    defaultChannel: alpha
    packageName: mariadb-operator
    provider:
      name: mariadb-operator
      url: https://github.com/mariadb-operator/mariadb-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: tempo-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tempo-operator.v0.19.0-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoMonolithic",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "jaegerui": {
                    "enabled": true,
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "resources": {
                    "limits": {
                      "cpu": "2",
                      "memory": "2Gi"
                    }
                  },
                  "storage": {
                    "traces": {
                      "backend": "memory"
                    }
                  }
                }
              },
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoStack",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "resources": {
                    "total": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2Gi"
                      }
                    }
                  },
                  "storage": {
                    "secret": {
                      "name": "my-storage-secret",
                      "type": "s3"
                    }
                  },
                  "storageSize": "1Gi",
                  "template": {
                    "queryFrontend": {
                      "jaegerQuery": {
                        "enabled": true,
                        "ingress": {
                          "type": "route"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/rhosdt/tempo-rhel8-operator@sha256:2b2a842990cabc139c7cc4fdeb4c681cc2221e95d49f713a3b9608dadbc51265
          createdAt: 16 Dec 2025, 17:37
          description: Create and manage deployments of Tempo, a high-scale distributed
            tracing backend.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=0.6.0 <0.19.0-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-tempo-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/grafana/tempo-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TempoMonolithic manages a Tempo deployment in monolithic
              mode.
            displayName: TempoMonolithic
            kind: TempoMonolithic
            name: tempomonolithics.tempo.grafana.com
            version: v1alpha1
          - description: TempoStack manages a Tempo deployment in microservices mode.
            displayName: TempoStack
            kind: TempoStack
            name: tempostacks.tempo.grafana.com
            version: v1alpha1
        description: |-
          Red Hat OpenShift distributed tracing platform based on Tempo. Tempo is an open-source, easy-to-use, and highly scalable distributed tracing backend. It provides observability for microservices architectures by allowing developers to track requests as they flow through distributed systems. Tempo is optimized to handle large volumes of trace data and is designed to be highly performant even under heavy loads.
          It can ingest common open source tracing protocols including Jaeger, Zipkin, and OpenTelemetry and requires only object storage to operate.

          The Tempo Operator supports Tempo deployments in Microservices mode (`TempoStack` CR) and Monolithic mode (`TempoMonolithic` CR).

          ### Core capabilities
          Tempo is used for monitoring and troubleshooting microservices-based distributed systems, including:
          * Distributed transaction monitoring
          * Root cause analysis
          * Performance / latency optimization

          ### Operator features
          * **Resource Limits** - Specify overall resource requests and limits in the `TempoStack` CR; the operator assigns fractions of it to each component
          * **AuthN and AuthZ** - Supports OpenID Control (OIDC) and role-based access control (RBAC)
          * **Managed upgrades** - Updating the operator will automatically update all managed Tempo clusters
          * **Multitenancy** - Multiple tenants can send traces to the same Tempo cluster
          * **mTLS** - Communication between the Tempo components can be secured via mTLS
          * **Jaeger UI** - Traces can be visualized in Jaeger UI and exposed via Ingress or OpenShift Route
          * **Observability** - The operator and `TempoStack` operands expose telemetry (metrics, traces) and integrate with Prometheus `ServiceMonitor` and `PrometheusRule`

          ### Before you start
          `TempoStack` requires object storage to store its traces. `TempoMonolithic` can store traces in-memory, in a Persistent Volume and in object storage.
          Please ensure that your system has a compatible object storage solution that is supported, such as OpenShift Data Foundation, Minio, AWS S3, Azure Storage, or Google Cloud Storage.

          ### Examples
          There is a list of examples to help you deploy different configurations in [this GitHub repository](https://github.com/os-observability/redhat-rhosdt-samples).

          ### Support & Troubleshooting
          Tempo Operator is available and supported as part of a Red Hat OpenShift subscription.
          Checking the [Red Hat Documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/distributed_tracing) is recommended when installing, configuring, and managing the Operator and instances.
        displayName: Tempo Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tempo
        - tracing
        - observability
        - monitoring
        - database
        links:
        - name: Tempo Operator
          url: https://github.com/grafana/tempo-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat support
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6bcfa981a7a75c242a16afa6dab36bf6e3b8a1442fa863875919ad551f48eceb
        - registry.redhat.io/rhosdt/tempo-gateway-opa-rhel8@sha256:18b76c6fd9ad82b8c62830f89332f85fa8d68e583f647a48b478fc44793d1261
        - registry.redhat.io/rhosdt/tempo-gateway-rhel8@sha256:b49ff19c40327b90a149edc98a57887f44c88310489dfca33c62b201d1faee58
        - registry.redhat.io/rhosdt/tempo-jaeger-query-rhel8@sha256:2c587b52015b07feea05c7cdb79e20362675bb5073e50eee1114476a9ca405dc
        - registry.redhat.io/rhosdt/tempo-query-rhel8@sha256:3aa486ed176f695af57b2b8d58dc53a070fbcef3ba0f233afdde0656eb55d5f6
        - registry.redhat.io/rhosdt/tempo-rhel8-operator@sha256:2b2a842990cabc139c7cc4fdeb4c681cc2221e95d49f713a3b9608dadbc51265
        - registry.redhat.io/rhosdt/tempo-rhel8@sha256:49c858da31e0bbede4ad67a1b34fac2910a777677ea46d2460b3c11ac51c6bab
        - registry.redhat.io/rhosdt/tempo-operator-bundle@sha256:59faa931ced3fb7d6121c0dd212e0a43e99d6e09d01a8eb0cf77694dabaabdac
        version: 0.19.0-2
      entries:
      - name: tempo-operator.v0.19.0-2
        version: 0.19.0-2
      - name: tempo-operator.v0.19.0-1
        version: 0.19.0-1
      - name: tempo-operator.v0.18.0-2
        version: 0.18.0-2
      - name: tempo-operator.v0.18.0-1
        version: 0.18.0-1
      - name: tempo-operator.v0.16.0-2
        version: 0.16.0-2
      - name: tempo-operator.v0.16.0-1
        version: 0.16.0-1
      - name: tempo-operator.v0.15.4-1
        version: 0.15.4-1
      - name: tempo-operator.v0.15.3-1
        version: 0.15.3-1
      - name: tempo-operator.v0.14.1-2
        version: 0.14.1-2
      - name: tempo-operator.v0.14.1-1
        version: 0.14.1-1
      - name: tempo-operator.v0.13.0-1-0.1730817419.p
        version: 0.13.0-1+0.1730817419.p
      - name: tempo-operator.v0.13.0-1
        version: 0.13.0-1
      - name: tempo-operator.v0.10.0-8
        version: 0.10.0-8
      - name: tempo-operator.v0.10.0-7
        version: 0.10.0-7
      - name: tempo-operator.v0.10.0-6
        version: 0.10.0-6
      - name: tempo-operator.v0.8.0-3
        version: 0.8.0-3
      - name: tempo-operator.v0.8.0-2
        version: 0.8.0-2
      - name: tempo-operator.v0.6.0-2
        version: 0.6.0-2
      - name: tempo-operator.v0.3.1-3
        version: 0.3.1-3
      - name: tempo-operator.v0.1.0-6
        version: 0.1.0-6
      - name: tempo-operator.v0.1.0-6-0.1687199947.p
        version: 0.1.0-6+0.1687199947.p
      name: stable
    defaultChannel: stable
    packageName: tempo-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-elasticache-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-elasticache-controller.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "CacheParameterGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "CacheSubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "ReplicationGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "Snapshot",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "UserGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/elasticache-controller:1.3.1
          createdAt: "2025-12-24T21:35:58Z"
          description: AWS ElastiCache controller is a service controller for managing
            ElastiCache resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CacheCluster represents the state of an AWS elasticache CacheCluster
              resource.
            displayName: CacheCluster
            kind: CacheCluster
            name: cacheclusters.elasticache.services.k8s.aws
            version: v1alpha1
          - description: CacheParameterGroup represents the state of an AWS elasticache
              CacheParameterGroup resource.
            displayName: CacheParameterGroup
            kind: CacheParameterGroup
            name: cacheparametergroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: CacheSubnetGroup represents the state of an AWS elasticache
              CacheSubnetGroup resource.
            displayName: CacheSubnetGroup
            kind: CacheSubnetGroup
            name: cachesubnetgroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: ReplicationGroup represents the state of an AWS elasticache
              ReplicationGroup resource.
            displayName: ReplicationGroup
            kind: ReplicationGroup
            name: replicationgroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: ServerlessCache represents the state of an AWS elasticache
              ServerlessCache resource.
            displayName: ServerlessCache
            kind: ServerlessCache
            name: serverlesscaches.elasticache.services.k8s.aws
            version: v1alpha1
          - description: ServerlessCacheSnapshot represents the state of an AWS elasticache
              ServerlessCacheSnapshot resource.
            displayName: ServerlessCacheSnapshot
            kind: ServerlessCacheSnapshot
            name: serverlesscachesnapshots.elasticache.services.k8s.aws
            version: v1alpha1
          - description: Snapshot represents the state of an AWS elasticache Snapshot
              resource.
            displayName: Snapshot
            kind: Snapshot
            name: snapshots.elasticache.services.k8s.aws
            version: v1alpha1
          - description: UserGroup represents the state of an AWS elasticache UserGroup
              resource.
            displayName: UserGroup
            kind: UserGroup
            name: usergroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: User represents the state of an AWS elasticache User resource.
            displayName: User
            kind: User
            name: users.elasticache.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon ElastiCache resources in AWS from within your Kubernetes cluster.

          **About Amazon ElastiCache**

          Amazon ElastiCache allows you to seamlessly set up, run, and scale popular open-source compatible in-memory data stores in the cloud. Build data-intensive apps or boost the performance of your existing databases by retrieving data from high throughput and low latency in-memory data stores. Amazon ElastiCache is a popular choice for real-time use cases like Caching, Session Stores, Gaming, Geospatial Services, Real-Time Analytics, and Queuing.

          Amazon ElastiCache offers fully managed Redis, voted the most loved database by developers in the Stack Overflow 2020 Developer Survey, and Memcached for your most demanding applications that require sub-millisecond response times.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ElastiCache
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - elasticache
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ElastiCache Developer Resources
          url: https://aws.amazon.com/elasticache/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: elasticache maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/elasticache-controller:1.3.1
        - quay.io/community-operator-pipeline-prod/ack-elasticache-controller@sha256:baece0405590a42b0406416b7475a82618e9d6857f2cf2feae6c9ddc8e484157
        version: 1.3.1
      entries:
      - name: ack-elasticache-controller.v1.3.1
        version: 1.3.1
      - name: ack-elasticache-controller.v1.3.0
        version: 1.3.0
      - name: ack-elasticache-controller.v1.2.4
        version: 1.2.4
      - name: ack-elasticache-controller.v1.2.3
        version: 1.2.3
      - name: ack-elasticache-controller.v1.2.2
        version: 1.2.2
      - name: ack-elasticache-controller.v1.2.1
        version: 1.2.1
      - name: ack-elasticache-controller.v1.2.0
        version: 1.2.0
      - name: ack-elasticache-controller.v1.1.0
        version: 1.1.0
      - name: ack-elasticache-controller.v1.0.7
        version: 1.0.7
      - name: ack-elasticache-controller.v1.0.6
        version: 1.0.6
      - name: ack-elasticache-controller.v1.0.5
        version: 1.0.5
      - name: ack-elasticache-controller.v1.0.4
        version: 1.0.4
      - name: ack-elasticache-controller.v1.0.3
        version: 1.0.3
      - name: ack-elasticache-controller.v1.0.2
        version: 1.0.2
      - name: ack-elasticache-controller.v1.0.1
        version: 1.0.1
      - name: ack-elasticache-controller.v1.0.0
        version: 1.0.0
      - name: ack-elasticache-controller.v0.2.6
        version: 0.2.6
      - name: ack-elasticache-controller.v0.2.5
        version: 0.2.5
      - name: ack-elasticache-controller.v0.2.4
        version: 0.2.4
      - name: ack-elasticache-controller.v0.2.3
        version: 0.2.3
      - name: ack-elasticache-controller.v0.2.2
        version: 0.2.2
      - name: ack-elasticache-controller.v0.2.1
        version: 0.2.1
      - name: ack-elasticache-controller.v0.2.0
        version: 0.2.0
      - name: ack-elasticache-controller.v0.1.1
        version: 0.1.1
      - name: ack-elasticache-controller.v0.1.0
        version: 0.1.0
      - name: ack-elasticache-controller.v0.0.31
        version: 0.0.31
      - name: ack-elasticache-controller.v0.0.30
        version: 0.0.30
      - name: ack-elasticache-controller.v0.0.29
        version: 0.0.29
      - name: ack-elasticache-controller.v0.0.28
        version: 0.0.28
      - name: ack-elasticache-controller.v0.0.27
        version: 0.0.27
      - name: ack-elasticache-controller.v0.0.26
        version: 0.0.26
      - name: ack-elasticache-controller.v0.0.25
        version: 0.0.25
      - name: ack-elasticache-controller.v0.0.24
        version: 0.0.24
      - name: ack-elasticache-controller.v0.0.23
        version: 0.0.23
      - name: ack-elasticache-controller.v0.0.22
        version: 0.0.22
      - name: ack-elasticache-controller.v0.0.21
        version: 0.0.21
      - name: ack-elasticache-controller.v0.0.20
        version: 0.0.20
      - name: ack-elasticache-controller.v0.0.19
        version: 0.0.19
      - name: ack-elasticache-controller.v0.0.18
        version: 0.0.18
      - name: ack-elasticache-controller.v0.0.17
        version: 0.0.17
      - name: ack-elasticache-controller.v0.0.16
        version: 0.0.16
      - name: ack-elasticache-controller.v0.0.15
        version: 0.0.15
      - name: ack-elasticache-controller.v0.0.14
        version: 0.0.14
      - name: ack-elasticache-controller.v0.0.13
        version: 0.0.13
      - name: ack-elasticache-controller.v0.0.12
        version: 0.0.12
      - name: ack-elasticache-controller.v0.0.11
        version: 0.0.11
      - name: ack-elasticache-controller.v0.0.10
        version: 0.0.10
      - name: ack-elasticache-controller.v0.0.9
        version: 0.0.9
      - name: ack-elasticache-controller.v0.0.8
        version: 0.0.8
      name: alpha
    defaultChannel: alpha
    packageName: ack-elasticache-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudtrail-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudtrail-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cloudtrail.services.k8s.aws/v1alpha1",
                "kind": "EventDataStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "cloudtrail.services.k8s.aws/v1alpha1",
                "kind": "Trail",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudtrail-controller:1.2.0
          createdAt: "2025-11-29T04:04:51Z"
          description: AWS CloudTrail controller is a service controller for managing
            CloudTrail resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EventDataStore represents the state of an AWS cloudtrail
              EventDataStore resource.
            displayName: EventDataStore
            kind: EventDataStore
            name: eventdatastores.cloudtrail.services.k8s.aws
            version: v1alpha1
          - description: Trail represents the state of an AWS cloudtrail Trail resource.
            displayName: Trail
            kind: Trail
            name: trails.cloudtrail.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Elastic Compute Cloud (CloudTrail) resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudTrail**

          AWS CloudTrail is an AWS service that helps you enable operational and risk auditing, governance, and compliance of your AWS account. Actions taken by a user, role, or an AWS service are recorded as events in CloudTrail. Events include actions taken in the AWS Management Console, AWS Command Line Interface, and AWS SDKs and APIs.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon CloudTrail
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudtrail
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudTrail Developer Resources
          url: https://aws.amazon.com/cloudtrail/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudtrail maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-cloudtrail-controller@sha256:afee911b61274480b95dfdd96b7266d867c8ec5ad9b38d473d509e32dd279e1b
        - public.ecr.aws/aws-controllers-k8s/cloudtrail-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-cloudtrail-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudtrail-controller.v1.1.1
        version: 1.1.1
      - name: ack-cloudtrail-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudtrail-controller.v1.0.28
        version: 1.0.28
      - name: ack-cloudtrail-controller.v1.0.26
        version: 1.0.26
      - name: ack-cloudtrail-controller.v1.0.25
        version: 1.0.25
      - name: ack-cloudtrail-controller.v1.0.24
        version: 1.0.24
      - name: ack-cloudtrail-controller.v1.0.23
        version: 1.0.23
      - name: ack-cloudtrail-controller.v1.0.22
        version: 1.0.22
      - name: ack-cloudtrail-controller.v1.0.21
        version: 1.0.21
      - name: ack-cloudtrail-controller.v1.0.20
        version: 1.0.20
      - name: ack-cloudtrail-controller.v1.0.19
        version: 1.0.19
      - name: ack-cloudtrail-controller.v1.0.16
        version: 1.0.16
      - name: ack-cloudtrail-controller.v1.0.15
        version: 1.0.15
      - name: ack-cloudtrail-controller.v1.0.14
        version: 1.0.14
      - name: ack-cloudtrail-controller.v1.0.13
        version: 1.0.13
      - name: ack-cloudtrail-controller.v1.0.12
        version: 1.0.12
      - name: ack-cloudtrail-controller.v1.0.11
        version: 1.0.11
      - name: ack-cloudtrail-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudtrail-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudtrail-controller.v1.0.5
        version: 1.0.5
      - name: ack-cloudtrail-controller.v1.0.4
        version: 1.0.4
      - name: ack-cloudtrail-controller.v1.0.3
        version: 1.0.3
      - name: ack-cloudtrail-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudtrail-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudtrail-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudtrail-controller.v0.1.3
        version: 0.1.3
      - name: ack-cloudtrail-controller.v0.1.2
        version: 0.1.2
      - name: ack-cloudtrail-controller.v0.1.1
        version: 0.1.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudtrail-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: cloud-bulldozer
      provider-url: ""
    name: ripsaw
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ripsaw.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery, Cloud Provider
          containerImage: quay.io/cloud-bulldozer/benchmark-operator:latest
          description: '[Benchmark-operator](https://github.com/cloud-bulldozer/ripsaw/)
            is a benchmarking tool to benchmark your kubernetes cluster. The intent
            of this Operator is to deploy common workloads to establish a performance
            baseline of Kubernetes cluster'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/cloud-bulldozer/benchmark-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Benchmark
            name: benchmarks.ripsaw.cloudbulldozer.io
            version: v1alpha1
        description: '[Benchmark-operator](https://github.com/cloud-bulldozer/benchmark-operator/)
          is a benchmarking tool to benchmark your kubernetes cluster. The intent
          of this Operator is to deploy common workloads to establish a performance
          baseline of Kubernetes cluster'
        displayName: benchmark-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - performance
        - benchmark
        links:
        - name: Site
          url: https://github.com/cloud-bulldozer/benchmark-operator
        - name: Documentation
          url: https://github.com/cloud-bulldozer/benchmark-operator/tree/master/docs
        maintainers:
        - email: rsevilla@redhat.com
          name: rsevilla87
        - email: jtaleric@redhat.com
          name: jtaleric
        - email: rzaleski@redhat.com
          name: dry939
        - email: kwhitley@redhat.com
          name: whitleykeith
        maturity: alpha
        provider:
          name: cloud-bulldozer
        relatedImages:
        - quay.io/cloud-bulldozer/benchmark-operator:latest
        - quay.io/openshift-community-operators/ripsaw@sha256:ff8d796d5bd6c8cb0e155b3ced631122397758eb472470223e30352eeddba480
        - k8s.gcr.io/redis:v1
        version: 0.1.0
      entries:
      - name: ripsaw.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ripsaw
    provider:
      name: cloud-bulldozer
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ocs-client-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ocs-client-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-client-console"]'
          containerImage: registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:b2fe175cc0154906ecab7e0a0a4712e76f204db55fc9b4d32fcda27446e5f1be
          createdAt: "2025-12-18T07:54:46Z"
          description: OpenShift Data Foundation client operator enables consumption
            of storage services from a remote centralized OpenShift Data Foundation
            provider cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/red-hat-storage/ocs-client-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StorageClient is the Schema for the storageclients API
            displayName: Storage Client
            kind: StorageClient
            name: storageclients.ocs.openshift.io
            version: v1alpha1
        description: OpenShift Data Foundation client operator enables consumption
          of storage services from a remote centralized OpenShift Data Foundation
          provider cluster.
        displayName: OpenShift Data Foundation Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: OCS Client Operator
          url: https://github.com/red-hat-storage/ocs-client-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/ocs-client-operator-bundle@sha256:8417c655f110b508f858c1ff2a3d0315e0dab9baba9afec846f61c71cb294477
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:de6cd74955a0403d8ff97490a657b941316d69922e901fa3513f1837fb8d981b
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:5ee2a17163eb3a989d45c1ae90175a88b35d2f5ac4dd824f8210626d58627449
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:b2fe175cc0154906ecab7e0a0a4712e76f204db55fc9b4d32fcda27446e5f1be
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:e1d824c160ed39df2024e6cccd2269f0de9a3933986765d9d5d038b2c95e447f
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        version: 4.19.9-rhodf
      entries:
      - name: ocs-client-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: ocs-client-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: ocs-client-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: ocs-client-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: ocs-client-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: ocs-client-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: ocs-client-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: ocs-client-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: ocs-client-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: ocs-client-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: ocs-client-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-client-console"]'
          containerImage: registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:f1553f73f4ce2390424d5f9153851e303564e7c50d769b5710adfe0ec5aca3cd
          createdAt: "2025-12-18T07:41:10Z"
          description: OpenShift Data Foundation client operator enables consumption
            of storage services from a remote centralized OpenShift Data Foundation
            provider cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/red-hat-storage/ocs-client-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StorageClient is the Schema for the storageclients API
            displayName: Storage Client
            kind: StorageClient
            name: storageclients.ocs.openshift.io
            version: v1alpha1
        description: OpenShift Data Foundation client operator enables consumption
          of storage services from a remote centralized OpenShift Data Foundation
          provider cluster.
        displayName: OpenShift Data Foundation Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: OCS Client Operator
          url: https://github.com/red-hat-storage/ocs-client-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        - registry.redhat.io/odf4/odf-external-snapshotter-sidecar-rhel9@sha256:87b5909be13793b80ab8cb916458c8863bdff29a7391630af0707b39080b8ebb
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:5ee2a17163eb3a989d45c1ae90175a88b35d2f5ac4dd824f8210626d58627449
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:7ae5cd1afb0ba1a7e28acb6631b3fe7ec3e23fbba782162baa2df847de61b28e
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:f1553f73f4ce2390424d5f9153851e303564e7c50d769b5710adfe0ec5aca3cd
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        - registry.redhat.io/openshift4/ose-csi-external-snapshot-metadata-rhel9@sha256:da5c73b33774046408736738fac6e4bd82fc0f7c0a6e966e788941e81746fd28
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/odf4/ocs-client-operator-bundle@sha256:a7a7533e91939980298a9b097ae535a40fb179a4f4d26b3194b13c396b845d17
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:e1d824c160ed39df2024e6cccd2269f0de9a3933986765d9d5d038b2c95e447f
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:954212cfe5ee83f95fb844f0b59d2c5230c0a0a0135ab4953f24e29ef4cd0157
        version: 4.20.4-rhodf
      entries:
      - name: ocs-client-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: ocs-client-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: ocs-client-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: ocs-client-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: ocs-client-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: ocs-client-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-wafv2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-wafv2-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wafv2.services.k8s.aws/v1alpha1",
                "kind": "IPSet",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/wafv2-controller:1.2.0
          createdAt: "2025-11-29T05:17:18Z"
          description: AWS WAFV2 controller is a service controller for managing WAFV2
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IPSet represents the state of an AWS wafv2 IPSet resource.
            displayName: IPSet
            kind: IPSet
            name: ipsets.wafv2.services.k8s.aws
            version: v1alpha1
          - description: RuleGroup represents the state of an AWS wafv2 RuleGroup
              resource.
            displayName: RuleGroup
            kind: RuleGroup
            name: rulegroups.wafv2.services.k8s.aws
            version: v1alpha1
          - description: WebACL represents the state of an AWS wafv2 WebACL resource.
            displayName: WebACL
            kind: WebACL
            name: webacls.wafv2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Web Application Firewall (Amazon WAFV2) resources in AWS from within your Kubernetes cluster.

          **About Amazon WAFV2**

          AWS WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to your protected web application resources. You can protect the following resource types:
          - Amazon CloudFront distribution
          - Amazon API Gateway REST API
          - Application Load Balancer
          - AWS AppSync GraphQL API
          - Amazon Cognito user pool
          - AWS App Runner service
          - AWS Verified Access instance

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon WAFV2
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - wafv2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon WAFV2 Developer Resources
          url: https://aws.amazon.com/waf/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: wafv2 maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/wafv2-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-wafv2-controller@sha256:0c0cc3819a4833ca703d36bb86c094f44886b30fd547f638761e5718358085ba
        version: 1.2.0
      entries:
      - name: ack-wafv2-controller.v1.2.0
        version: 1.2.0
      - name: ack-wafv2-controller.v1.1.2
        version: 1.1.2
      - name: ack-wafv2-controller.v1.1.1
        version: 1.1.1
      - name: ack-wafv2-controller.v1.1.0
        version: 1.1.0
      - name: ack-wafv2-controller.v1.0.14
        version: 1.0.14
      - name: ack-wafv2-controller.v1.0.13
        version: 1.0.13
      - name: ack-wafv2-controller.v1.0.12
        version: 1.0.12
      - name: ack-wafv2-controller.v1.0.10
        version: 1.0.10
      - name: ack-wafv2-controller.v1.0.9
        version: 1.0.9
      - name: ack-wafv2-controller.v1.0.8
        version: 1.0.8
      - name: ack-wafv2-controller.v1.0.6
        version: 1.0.6
      - name: ack-wafv2-controller.v1.0.5
        version: 1.0.5
      - name: ack-wafv2-controller.v1.0.4
        version: 1.0.4
      - name: ack-wafv2-controller.v1.0.1
        version: 1.0.1
      - name: ack-wafv2-controller.v1.0.0
        version: 1.0.0
      - name: ack-wafv2-controller.v0.0.4
        version: 0.0.4
      - name: ack-wafv2-controller.v0.0.3
        version: 0.0.3
      - name: ack-wafv2-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-wafv2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/limitador-operator
    name: limitador-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: limitador-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "limitador.kuadrant.io/v1alpha1",
                "kind": "Limitador",
                "metadata": {
                  "name": "limitador-sample"
                },
                "spec": {
                  "limits": [
                    {
                      "conditions": [
                        "get_toy == 'yes'"
                      ],
                      "max_value": 2,
                      "name": "toy_get_route",
                      "namespace": "toystore-app",
                      "seconds": 30,
                      "variables": []
                    }
                  ],
                  "listener": {
                    "grpc": {
                      "port": 8081
                    },
                    "http": {
                      "port": 8080
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/limitador-rhel9-operator@sha256:6092c510b04a4cee253a52c07b77b625e90d863fa9ccd8727eb901bd81b4e071
          createdAt: 07 Oct 2025, 11:32
          description: Enables rate limiting for Gateways and applications in a Gateway
            API network
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kuadrant/limitador-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Limitador is the Schema for the limitadors API
            displayName: Limitador
            kind: Limitador
            name: limitadors.limitador.kuadrant.io
            version: v1alpha1
        description: The Limitador operator installs and maintains limitador instances
        displayName: Limitador
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - rate-limit
        - kuadrant
        links:
        - name: Limitador Operator
          url: https://github.com/Kuadrant/limitador-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: asnaps@redhat.com
          name: Alex Snaps
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/limitador-operator
        relatedImages:
        - registry.redhat.io/rhcl-1/limitador-rhel9@sha256:aff28d76f9cfeefafd6b652e055bb25e1a2bf250e062e3e9b5e54db873f9eeb7
        - registry.redhat.io/rhcl-1/limitador-operator-bundle@sha256:fc0ee45511674e99f3ecd1b807a660e4bcf49af77bf5d66af935d1cb16336bc4
        - registry.redhat.io/rhcl-1/limitador-rhel9-operator@sha256:6092c510b04a4cee253a52c07b77b625e90d863fa9ccd8727eb901bd81b4e071
        version: 1.2.0
      entries:
      - name: limitador-operator.v1.2.0
        version: 1.2.0
      - name: limitador-operator.v1.1.1
        version: 1.1.1
      - name: limitador-operator.v1.1.0
        version: 1.1.0
      - name: limitador-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: limitador-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/limitador-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: openshift
      provider-url: ""
    name: pf-status-relay-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pf-status-relay-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pfstatusrelay.openshift.io/v1alpha1",
                "kind": "PFLACPMonitor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "pf-status-relay-operator"
                  },
                  "name": "pflacpmonitor-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.3.0-0 <4.19.0'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PFLACPMonitor is the Schema for the pflacpmonitors API
            displayName: PFLACPMonitor
            kind: PFLACPMonitor
            name: pflacpmonitors.pfstatusrelay.openshift.io
            version: v1alpha1
        description: It deploys the pf-status-relay application.
        displayName: pf-status-relay-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pf-status-relay
        - sriov
        - lacp
        links:
        - name: Pf Status Relay Operator
          url: https://pf-status-relay-operator.domain
        maintainers:
        - email: marguerr@redhat.com
          name: Marcelo Guerrero
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: openshift
        relatedImages:
        - registry.redhat.io/openshift4/pf-status-relay-rhel9-operator@sha256:d3429e65675d7b1bda2158db44a771c3b55fe6a3f269e08fe6ff9ef224226772
        - registry.redhat.io/openshift4/pf-status-relay-rhel9@sha256:0f7d8c9aa266a124f571ca2e58f0705ec7257e2cc96f353dd5c41a6f9de00f4a
        - registry.redhat.io/openshift4/pf-status-relay-operator-bundle@sha256:14ac9f4b837706b9ff92cf899f395e0c9f3758d2ab5c1f2e094a6ede45b24023
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 4.20.0-202512081147
      entries:
      - name: pf-status-relay-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: pf-status-relay-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: pf-status-relay-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: pf-status-relay-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: pf-status-relay-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: pf-status-relay-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: pf-status-relay-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: pf-status-relay-operator
    provider:
      name: openshift
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: https://stakater.com
    name: template-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: template-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-07-04T00:40:36Z"
          description: Operator to distribute plain kubernetes manifests, helm charts
            and, copy secrets and configmaps to multiple namespaces
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.0.1
          operatorframework.io/suggested-namespace: template-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterTemplateInstance is the Schema for the clustertemplateinstances
              API
            displayName: Cluster Template Instance
            kind: ClusterTemplateInstance
            name: clustertemplateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateGroupInstance is the Schema for the TemplateGroupInstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.templates.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
        description: '"Operator to distribute plain kubernetes manifests, helm charts
          and, copy secrets and configmaps to multiple namespaces"'
        displayName: Template Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - templates
        - secrets
        - configmaps
        - distribution
        - stakater
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/template-operator-bundle@sha256:6ef2956b297795a9d0c83119e71309549975df3ae5652e6a98cef035ace5d51a
        - registry.connect.redhat.com/stakater/template-operator@sha256:ad8312417e4e9621b74d3ad03020516840feef9c4b52c4f0d894dbb6dc6f906a
        version: 0.0.1
      entries:
      - name: template-operator.v0.0.1
        version: 0.0.1
      name: release-0.0
    - currentCSV: template-operator.v0.1.5
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-08-29T06:41:42Z"
          description: Operator to distribute plain kubernetes manifests, helm charts
            and, copy secrets and configmaps to multiple namespaces
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.1.5
          operatorframework.io/suggested-namespace: template-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterTemplateInstance is the Schema for the clustertemplateinstances
              API
            displayName: Cluster Template Instance
            kind: ClusterTemplateInstance
            name: clustertemplateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateGroupInstance is the Schema for the TemplateGroupInstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.templates.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
        description: '"Operator to distribute plain kubernetes manifests, helm charts
          and, copy secrets and configmaps to multiple namespaces"'
        displayName: Template Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - templates
        - secrets
        - configmaps
        - distribution
        - stakater
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/template-operator-bundle@sha256:8831faee6979acfb5bd031b64cbc09fb90e9ea4f48bbff15e9d39ccdf6bf3d95
        - registry.connect.redhat.com/stakater/template-operator@sha256:88f722baf22ac07704503f098f2b0ea7d76815a1ab0552474b1c9ba6639d8142
        version: 0.1.5
      entries:
      - name: template-operator.v0.1.5
        version: 0.1.5
      name: release-0.1
    defaultChannel: release-0.1
    packageName: template-operator
    provider:
      name: Stakater
      url: https://stakater.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: GitLab Inc
      provider-url: https://about.gitlab.com/
    name: gitlab-operator-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:24:14Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - registry.connect.redhat.com/gitlab/gitlab-operator-bundle@sha256:3ce324ad0b7aa2c357a89b134b595e317ec929dcd7f4ff8bf3323fdeea97a8e7
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: stable
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:24:14Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - registry.connect.redhat.com/gitlab/gitlab-operator-bundle@sha256:3ce324ad0b7aa2c357a89b134b595e317ec929dcd7f4ff8bf3323fdeea97a8e7
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: unstable
    defaultChannel: stable
    packageName: gitlab-operator-kubernetes
    provider:
      name: GitLab Inc
      url: https://about.gitlab.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Datadog
      provider-url: ""
    name: datadog-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datadog-operator.v0.8.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadog"
                },
                "spec": {
                  "agent": {
                    "apm": {
                      "enabled": false
                    },
                    "log": {
                      "enabled": false,
                      "logsConfigContainerCollectAll": false
                    },
                    "process": {
                      "enabled": true,
                      "processCollection": false
                    },
                    "security": {
                      "compliance": {
                        "enabled": false
                      },
                      "runtime": {
                        "enabled": false
                      }
                    },
                    "systemProbe": {
                      "bpfDebugEnabled": false
                    }
                  },
                  "clusterAgent": {
                    "config": {
                      "admissionController": {
                        "enabled": false
                      },
                      "clusterChecksEnabled": false,
                      "externalMetrics": {
                        "enabled": false
                      }
                    },
                    "replicas": 2
                  },
                  "clusterChecksRunner": {
                    "replicas": 2
                  },
                  "clusterName": "\u003cCLUSTER_NAME\u003e",
                  "credentials": {
                    "apiKey": "\u003cDATADOG_API_KEY\u003e",
                    "appKey": "\u003cDATADOG_APP_KEY\u003e",
                    "token": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e"
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: gcr.io/datadoghq/operator:0.8.4
          description: Datadog provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with Datadog Operator.
          olm.skipRange: <0.8.4
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/DataDog/datadog-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgent Deployment with Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v1alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
        description: Datadog provides a modern monitoring and analytics platform.
          Gather metrics, logs and traces for full observability of your Kubernetes
          cluster with Datadog Operator.
        displayName: Datadog Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - gcr.io/datadoghq/operator:0.8.4
        - quay.io/openshift-community-operators/datadog-operator@sha256:b1977170e5991e1f08c49037d6f34873c8543d29d3a2c3692ebb1d66734f5b3e
        version: 0.8.4
      entries:
      - name: datadog-operator.v0.8.4
        version: 0.8.4
      - name: datadog-operator.v0.8.2
        version: 0.8.2
      - name: datadog-operator.v0.8.1
        version: 0.8.1
      - name: datadog-operator.v0.8.0
        version: 0.8.0
      name: alpha
    - currentCSV: datadog-operator.v1.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgentProfile",
                "metadata": {
                  "name": "datadogagentprofile-sample"
                },
                "spec": {
                  "config": {
                    "override": {
                      "nodeAgent": {
                        "containers": {
                          "agent": {
                            "resources": {
                              "requests": {
                                "cpu": "256m"
                              }
                            }
                          }
                        }
                      }
                    }
                  },
                  "profileAffinity": {
                    "profileNodeAffinity": [
                      {
                        "key": "kubernetes.io/os",
                        "operator": "In",
                        "values": [
                          "linux"
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogDashboard",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "datadog-operator",
                    "app.kubernetes.io/instance": "datadogdashboard-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datadogdashboard",
                    "app.kubernetes.io/part-of": "datadog-operator"
                  },
                  "name": "datadogdashboard-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogGenericResource",
                "metadata": {
                  "name": "datadoggenericresource-notebook-sample"
                },
                "spec": {
                  "jsonSpec": "{\n  \"data\": {\n    \"attributes\": {\n      \"cells\": [\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"text\": \"## Some test markdown\\n\\n```js\\nvar x, y;\\nx = 5;\\ny = 6;\\n```\",\n              \"type\": \"markdown\"\n            }\n          },\n          \"type\": \"notebook_cells\"\n        },\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"requests\": [\n                {\n                  \"display_type\": \"line\",\n                  \"q\": \"avg:system.load.1{*}\",\n                  \"style\": {\n                    \"line_type\": \"solid\",\n                    \"line_width\": \"normal\",\n                    \"palette\": \"dog_classic\"\n                  }\n                }\n              ],\n              \"show_legend\": true,\n              \"type\": \"timeseries\",\n              \"yaxis\": {\n                \"scale\": \"linear\"\n              }\n            },\n            \"graph_size\": \"m\",\n            \"split_by\": {\n              \"keys\": [],\n              \"tags\": []\n            },\n            \"time\": null\n          },\n          \"type\": \"notebook_cells\"\n        }\n      ],\n      \"name\": \"Example-Notebook\",\n      \"status\": \"published\",\n      \"time\": {\n        \"live_span\": \"1h\"\n      }\n    },\n    \"type\": \"notebooks\"\n  }\n}",
                  "type": "notebook"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogPodAutoscaler",
                "metadata": {
                  "name": "datadogpodautoscaler-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogSLO",
                "metadata": {
                  "name": "datadogslo-sample"
                },
                "spec": {
                  "description": "This is an example metric SLO from datadog-operator",
                  "name": "datadogslo-sample",
                  "query": {
                    "denominator": "sum:requests.total{service:example,env:prod}.as_count()",
                    "numerator": "sum:requests.success{service:example,env:prod}.as_count()"
                  },
                  "tags": [
                    "service:example",
                    "env:prod"
                  ],
                  "targetThreshold": "99.9",
                  "timeframe": "7d",
                  "type": "metric"
                }
              },
              {
                "apiVersion": "datadoghq.com/v2alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadogagent-sample"
                },
                "spec": {
                  "features": {
                    "admissionController": {
                      "enabled": false
                    },
                    "apm": {
                      "enabled": false
                    },
                    "clusterChecks": {
                      "enabled": true,
                      "useClusterChecksRunners": true
                    },
                    "liveProcessCollection": {
                      "enabled": false
                    },
                    "logCollection": {
                      "containerCollectAll": true,
                      "enabled": true
                    }
                  },
                  "global": {
                    "clusterAgentToken": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e",
                    "clusterName": "\u003cCLUSTER_NAME\u003e",
                    "credentials": {
                      "apiKey": "\u003cDATADOG_API_KEY\u003e",
                      "appKey": "\u003cDATADOG_APP_KEY\u003e"
                    },
                    "criSocketPath": "/var/run/crio/crio.sock",
                    "kubelet": {
                      "tlsVerify": false
                    }
                  },
                  "override": {
                    "clusterAgent": {
                      "containers": {
                        "cluster-agent": {
                          "securityContext": {
                            "readOnlyRootFilesystem": false
                          }
                        }
                      },
                      "replicas": 2,
                      "serviceAccountName": "datadog-agent-scc"
                    },
                    "clusterChecksRunner": {
                      "replicas": 2
                    },
                    "nodeAgent": {
                      "hostNetwork": true,
                      "securityContext": {
                        "runAsUser": 0,
                        "seLinuxOptions": {
                          "level": "s0",
                          "role": "system_r",
                          "type": "spc_t",
                          "user": "system_u"
                        }
                      },
                      "serviceAccountName": "datadog-agent-scc"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: gcr.io/datadoghq/operator:1.20.0
          createdAt: "2025-11-11 19:36:47"
          description: Datadog provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with Datadog Operator.
          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.skipRange: '>=1.7.0 <1.20.0'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/DataDog/datadog-operator
          support: Datadog, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgentInternal is the Schema for the datadogagentinternals
              API
            displayName: Datadog Agent Internal
            kind: DatadogAgentInternal
            name: datadogagentinternals.datadoghq.com
            version: v1alpha1
          - description: DatadogAgentProfile is the Schema for the datadogagentprofiles
              API
            displayName: Datadog Agent Profile
            kind: DatadogAgentProfile
            name: datadogagentprofiles.datadoghq.com
            version: v1alpha1
          - description: DatadogAgent Deployment with the Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v2alpha1
          - description: DatadogDashboard is the Schema for the datadogdashboards
              API
            displayName: Datadog Dashboard
            kind: DatadogDashboard
            name: datadogdashboards.datadoghq.com
            version: v1alpha1
          - kind: DatadogGenericResource
            name: datadoggenericresources.datadoghq.com
            version: v1alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha2
          - description: DatadogSLO allows a user to define and manage datadog SLOs
              from Kubernetes cluster.
            displayName: Datadog SLO
            kind: DatadogSLO
            name: datadogslos.datadoghq.com
            version: v1alpha1
        description: Datadog provides a modern monitoring and analytics platform.
          Gather metrics, logs and traces for full observability of your Kubernetes
          cluster with Datadog Operator.
        displayName: Datadog Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - quay.io/community-operator-pipeline-prod/datadog-operator@sha256:e5dd17a7de9ae6bd921ab5b07a1d56c803784920c6b7a24151669ab7d24509ae
        - gcr.io/datadoghq/operator:1.20.0
        version: 1.20.0
      entries:
      - name: datadog-operator.v1.20.0
        version: 1.20.0
      - name: datadog-operator.v1.19.1
        version: 1.19.1
      - name: datadog-operator.v1.18.0
        version: 1.18.0
      - name: datadog-operator.v1.17.0
        version: 1.17.0
      - name: datadog-operator.v1.16.0
        version: 1.16.0
      - name: datadog-operator.v1.15.1
        version: 1.15.1
      - name: datadog-operator.v1.14.0
        version: 1.14.0
      - name: datadog-operator.v1.13.0
        version: 1.13.0
      - name: datadog-operator.v1.12.1
        version: 1.12.1
      - name: datadog-operator.v1.11.1
        version: 1.11.1
      - name: datadog-operator.v1.10.0
        version: 1.10.0
      - name: datadog-operator.v1.9.0
        version: 1.9.0
      - name: datadog-operator.v1.8.0
        version: 1.8.0
      - name: datadog-operator.v1.7.0
        version: 1.7.0
      - name: datadog-operator.v1.6.0
        version: 1.6.0
      - name: datadog-operator.v1.5.0
        version: 1.5.0
      - name: datadog-operator.v1.4.2
        version: 1.4.2
      - name: datadog-operator.v1.4.1
        version: 1.4.1
      - name: datadog-operator.v1.4.0
        version: 1.4.0
      - name: datadog-operator.v1.3.0
        version: 1.3.0
      - name: datadog-operator.v1.2.1
        version: 1.2.1
      - name: datadog-operator.v1.2.0
        version: 1.2.0
      - name: datadog-operator.v1.1.0
        version: 1.1.0
      name: stable
    defaultChannel: stable
    packageName: datadog-operator
    provider:
      name: Datadog
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: fuse-apicurito
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fuse-apicurito.v7.10.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1alpha1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:8d19ad579f874d6b9a08f127c8900906913a5a7c1e69cbe4b5cb0333b8d86152
          createdAt: 2022-02-28 09:35:38 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.10.3'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:4530ed52522a74051aaedabd62b99d5c5274a0ab72eb28d4e75207d9e9d3391b
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:8d19ad579f874d6b9a08f127c8900906913a5a7c1e69cbe4b5cb0333b8d86152
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:8dbeeb8b04c81f41d896f71db90813de57e67493fa85389b63ac23f390785043
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:c02c218ccfbb385ea29af98409995a3d9c26cb0b4c76caf2e0779fa233b5ff8c
        version: 7.10.3
      entries:
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.10.x
    - currentCSV: fuse-apicurito.v7.11.1-0.1687357785.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:2f8d4450187839f0e0c761e5ddcf61b03f5996acfe3d75b60120e76e5b0167c1
          createdAt: 2022-08-31 15:11:41 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.11.2'
          olm.substitutesFor: fuse-apicurito.v7.11.1-0.1682509045.p
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:02e6baf8619cc2b782cbb1f3072e554a7638eaf3fd804abe1ba5f43f692e511b
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:2f8d4450187839f0e0c761e5ddcf61b03f5996acfe3d75b60120e76e5b0167c1
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:df61aafc4023b9068a8636c35eabb0d5fda400f523b64cb1fc5d8c480272c435
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:4c493a2d690d0d7c1684c53d15c06b47d691aeffdde6dd471b6e75fed2fec6a9
        version: 7.11.1+0.1687357785.p
      entries:
      - name: fuse-apicurito.v7.11.1
        version: 7.11.1
      - name: fuse-apicurito.v7.11.1-0.1687357785.p
        version: 7.11.1+0.1687357785.p
      - name: fuse-apicurito.v7.11.1-0.1682509045.p
        version: 7.11.1+0.1682509045.p
      - name: fuse-apicurito.v7.11.1-0.1681224697.p
        version: 7.11.1+0.1681224697.p
      - name: fuse-apicurito.v7.11.1-0.1679272341.p
        version: 7.11.1+0.1679272341.p
      - name: fuse-apicurito.v7.11.1-0.1675972858.p
        version: 7.11.1+0.1675972858.p
      - name: fuse-apicurito.v7.11.1-0.1673364838.p
        version: 7.11.1+0.1673364838.p
      - name: fuse-apicurito.v7.11.0-0.1665994968.p
        version: 7.11.0+0.1665994968.p
      - name: fuse-apicurito.v7.11.0-0.1666805761.p
        version: 7.11.0+0.1666805761.p
      - name: fuse-apicurito.v7.11.0-0.1662457152.p
        version: 7.11.0+0.1662457152.p
      - name: fuse-apicurito.v7.11.0-0.1659517292.p
        version: 7.11.0+0.1659517292.p
      - name: fuse-apicurito.v7.11.0
        version: 7.11.0
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.11.x
    - currentCSV: fuse-apicurito.v7.12.1-0.1706187670.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:7ccefee63165e7eaf9a609e8a9f978a06f27deff69a318fe399a29292ad99106
          createdAt: 2022-08-31 15:11:41 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.12.1'
          olm.substitutesFor: fuse-apicurito.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:df59ef548b82e9d72fecd06aa6b9c569f96485693c8a4ecb8ec278ae92df436f
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:7ccefee63165e7eaf9a609e8a9f978a06f27deff69a318fe399a29292ad99106
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:4cd612283e8136839f1f48a3a220dac7c6c38adf14b61bc03a981e514baefe9b
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:bee0eeaa7898af835f80c5217059d73361daa42197fa6cbbaf416e1ba373eb54
        version: 7.12.1+0.1706187670.p
      entries:
      - name: fuse-apicurito.v7.12.1-0.1706187670.p
        version: 7.12.1+0.1706187670.p
      - name: fuse-apicurito.v7.12.1
        version: 7.12.1
      - name: fuse-apicurito.v7.12.0
        version: 7.12.0
      - name: fuse-apicurito.v7.12.0-0.1697748407.p
        version: 7.12.0+0.1697748407.p
      - name: fuse-apicurito.v7.12.0-0.1697419531.p
        version: 7.12.0+0.1697419531.p
      - name: fuse-apicurito.v7.12.0-0.1694087055.p
        version: 7.12.0+0.1694087055.p
      - name: fuse-apicurito.v7.11.1-0.1675972858.p
        version: 7.11.1+0.1675972858.p
      - name: fuse-apicurito.v7.11.1-0.1682509045.p
        version: 7.11.1+0.1682509045.p
      - name: fuse-apicurito.v7.11.1-0.1687357785.p
        version: 7.11.1+0.1687357785.p
      - name: fuse-apicurito.v7.11.1-0.1681224697.p
        version: 7.11.1+0.1681224697.p
      - name: fuse-apicurito.v7.11.1
        version: 7.11.1
      - name: fuse-apicurito.v7.11.1-0.1673364838.p
        version: 7.11.1+0.1673364838.p
      - name: fuse-apicurito.v7.11.1-0.1679272341.p
        version: 7.11.1+0.1679272341.p
      - name: fuse-apicurito.v7.11.0-0.1666805761.p
        version: 7.11.0+0.1666805761.p
      - name: fuse-apicurito.v7.11.0-0.1662457152.p
        version: 7.11.0+0.1662457152.p
      - name: fuse-apicurito.v7.11.0-0.1665994968.p
        version: 7.11.0+0.1665994968.p
      - name: fuse-apicurito.v7.11.0-0.1659517292.p
        version: 7.11.0+0.1659517292.p
      - name: fuse-apicurito.v7.11.0
        version: 7.11.0
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.12.x
    - currentCSV: fuse-apicurito.v7.13.0-0.1767583497.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:112f86a152a0bd90776881417c43f2b768b4756471fc39d07e3690301d4fd57b
          createdAt: 2022-08-31 15:11:41 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=7.7.0 <7.13.0'
          olm.substitutesFor: fuse-apicurito.v7.13.0-0.1766137200.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:323f7d1fa408dfa958afa2aba0fcfff69cef78073a9b1cd4d70d3908e46fb8f5
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:c828ea828ffa81ac936f445f78ca4465f37fc2fff2161d7d0c562fcfb5ac3a49
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:3c5557eced22a6e3760782a62523b5187321895a57a0b260f8d668a2f2d3e274
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:112f86a152a0bd90776881417c43f2b768b4756471fc39d07e3690301d4fd57b
        version: 7.13.0+0.1767583497.p
      entries:
      - name: fuse-apicurito.v7.13.0-0.1744280419.p
        version: 7.13.0+0.1744280419.p
      - name: fuse-apicurito.v7.13.0-0.1745523192.p
        version: 7.13.0+0.1745523192.p
      - name: fuse-apicurito.v7.13.0-0.1767583497.p
        version: 7.13.0+0.1767583497.p
      - name: fuse-apicurito.v7.13.0-0.1766137200.p
        version: 7.13.0+0.1766137200.p
      - name: fuse-apicurito.v7.13.0-0.1764853445.p
        version: 7.13.0+0.1764853445.p
      - name: fuse-apicurito.v7.13.0-0.1764853165.p
        version: 7.13.0+0.1764853165.p
      - name: fuse-apicurito.v7.13.0-0.1764239907.p
        version: 7.13.0+0.1764239907.p
      - name: fuse-apicurito.v7.13.0-0.1763465460.p
        version: 7.13.0+0.1763465460.p
      - name: fuse-apicurito.v7.13.0-0.1753785079.p
        version: 7.13.0+0.1753785079.p
      - name: fuse-apicurito.v7.13.0-0.1753778936.p
        version: 7.13.0+0.1753778936.p
      - name: fuse-apicurito.v7.13.0-0.1753778625.p
        version: 7.13.0+0.1753778625.p
      - name: fuse-apicurito.v7.13.0-0.1753702605.p
        version: 7.13.0+0.1753702605.p
      - name: fuse-apicurito.v7.13.0-0.1753701210.p
        version: 7.13.0+0.1753701210.p
      - name: fuse-apicurito.v7.13.0-0.1751291353.p
        version: 7.13.0+0.1751291353.p
      - name: fuse-apicurito.v7.13.0-0.1748960166.p
        version: 7.13.0+0.1748960166.p
      - name: fuse-apicurito.v7.13.0-0.1721607497.p
        version: 7.13.0+0.1721607497.p
      - name: fuse-apicurito.v7.13.0-0.1724053718.p
        version: 7.13.0+0.1724053718.p
      - name: fuse-apicurito.v7.13.0-0.1741884705.p
        version: 7.13.0+0.1741884705.p
      - name: fuse-apicurito.v7.13.0-0.1723709434.p
        version: 7.13.0+0.1723709434.p
      - name: fuse-apicurito.v7.13.0-0.1739885035.p
        version: 7.13.0+0.1739885035.p
      - name: fuse-apicurito.v7.13.0-0.1739473863.p
        version: 7.13.0+0.1739473863.p
      - name: fuse-apicurito.v7.13.0-0.1738056248.p
        version: 7.13.0+0.1738056248.p
      - name: fuse-apicurito.v7.13.0-0.1731460815.p
        version: 7.13.0+0.1731460815.p
      - name: fuse-apicurito.v7.13.0
        version: 7.13.0
      - name: fuse-apicurito.v7.13.0-0.1717672390.p
        version: 7.13.0+0.1717672390.p
      - name: fuse-apicurito.v7.13.0-0.1718285973.p
        version: 7.13.0+0.1718285973.p
      - name: fuse-apicurito.v7.13.0-0.1720707249.p
        version: 7.13.0+0.1720707249.p
      - name: fuse-apicurito.v7.13.0-0.1721224330.p
        version: 7.13.0+0.1721224330.p
      - name: fuse-apicurito.v7.13.0-0.1729189341.p
        version: 7.13.0+0.1729189341.p
      - name: fuse-apicurito.v7.13.0-0.1741875975.p
        version: 7.13.0+0.1741875975.p
      - name: fuse-apicurito.v7.13.0-0.1744737027.p
        version: 7.13.0+0.1744737027.p
      - name: fuse-apicurito.v7.13.0-0.1724659732.p
        version: 7.13.0+0.1724659732.p
      - name: fuse-apicurito.v7.13.0-0.1725022690.p
        version: 7.13.0+0.1725022690.p
      - name: fuse-apicurito.v7.13.0-0.1727193594.p
        version: 7.13.0+0.1727193594.p
      - name: fuse-apicurito.v7.13.0-0.1727957847.p
        version: 7.13.0+0.1727957847.p
      - name: fuse-apicurito.v7.12.1
        version: 7.12.1
      - name: fuse-apicurito.v7.12.1-0.1706187670.p
        version: 7.12.1+0.1706187670.p
      - name: fuse-apicurito.v7.12.0
        version: 7.12.0
      - name: fuse-apicurito.v7.12.0-0.1697748407.p
        version: 7.12.0+0.1697748407.p
      - name: fuse-apicurito.v7.12.0-0.1697419531.p
        version: 7.12.0+0.1697419531.p
      - name: fuse-apicurito.v7.12.0-0.1694087055.p
        version: 7.12.0+0.1694087055.p
      - name: fuse-apicurito.v7.11.1-0.1679272341.p
        version: 7.11.1+0.1679272341.p
      - name: fuse-apicurito.v7.11.1-0.1675972858.p
        version: 7.11.1+0.1675972858.p
      - name: fuse-apicurito.v7.11.1-0.1687357785.p
        version: 7.11.1+0.1687357785.p
      - name: fuse-apicurito.v7.11.1-0.1682509045.p
        version: 7.11.1+0.1682509045.p
      - name: fuse-apicurito.v7.11.1-0.1681224697.p
        version: 7.11.1+0.1681224697.p
      - name: fuse-apicurito.v7.11.1-0.1673364838.p
        version: 7.11.1+0.1673364838.p
      - name: fuse-apicurito.v7.11.1
        version: 7.11.1
      - name: fuse-apicurito.v7.11.0-0.1659517292.p
        version: 7.11.0+0.1659517292.p
      - name: fuse-apicurito.v7.11.0-0.1666805761.p
        version: 7.11.0+0.1666805761.p
      - name: fuse-apicurito.v7.11.0-0.1665994968.p
        version: 7.11.0+0.1665994968.p
      - name: fuse-apicurito.v7.11.0-0.1662457152.p
        version: 7.11.0+0.1662457152.p
      - name: fuse-apicurito.v7.11.0
        version: 7.11.0
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.13.x
    - currentCSV: fuse-apicurito.v7.9.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [{
                    "apiVersion": "apicur.io/v1alpha1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
            }]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:05c9676aada2d34a985a59abcf55105a3765d75b0d3764089d2b32e9ca5d367c
          createdAt: "2020-10-06 12:48:47"
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.9.3'
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito Project
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CRD for Apicurito
            displayName: Apicurito CRD
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:8ce258f36d3baab3175b29d5ed6df89588f128d249285bb1e7cb45539933c511
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:05c9676aada2d34a985a59abcf55105a3765d75b0d3764089d2b32e9ca5d367c
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:5535864ce393ae0ae5ee52ed0c7661e0351fb7df2f9235da70608245519530b2
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:dc39b79c360511ff999eba5b2c299db3e08c9c244a0a1f3da8c90c02695e506d
        version: 7.9.3
      entries:
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.9.x
    defaultChannel: fuse-apicurito-7.13.x
    packageName: fuse-apicurito
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MySQL
      provider-url: https://artifacthub.io/packages/helm/mysql-ndb-operator/ndb-operator
    name: ndb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ndb-operator.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "mysql.oracle.com/v1","kind": "NdbCluster","metadata":
            {"name": "example-ndb"},"spec": {"redundancyLevel": 2,"dataNode": {"nodeCount":
            2},"mysqlNode": {"nodeCount":2}}}]'
          capabilities: Seamless Upgrades
          categories: Database
          containerImage: container-registry.oracle.com/mysql/community-ndb-operator:9.1.0-1.6.0
          createdAt: "2024-12-18T15:05:46.000Z"
          description: The MySQL NDB Operator is a Kubernetes operator for managing
            a MySQL NDB Cluster setup inside a Kubernetes Cluster.
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instance of a Ndb Cluster
            displayName: NdbCluster
            kind: NdbCluster
            name: ndbclusters.mysql.oracle.com
            version: v1
        description: |
          ## NdbCluster Custom Resource
          The NdbCluster custom resource is defined with custom fields that map to the configuration of a MySQL Cluster. To deploy a MySQL Cluster inside the K8s Cluster, an NdbCluster object with the desired configuration of the MySQL Cluster has to be created in the K8s Cluster. The NDB Operator watches for any changes made to any NdbCluster objects and will receive an event when the NdbCluster object is created in the K8s Cluster. It will then start deploying the MySQL Cluster, with the specified configuration, inside the K8s Cluster using native Kubernetes workloads and resources. Once the MySQL Cluster is ready, the NdbCluster resource can be further modified to make changes to the MySQL Cluster configuration. The Operator will receive this event as well and will update the configuration of the already running MySQL Cluster.

          The documentation at [NdbCluster-CRD.md](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/NdbCluster-CRD.md) explains the various custom fields of the NdbCluster CRD and the effect they have on the MySQL Cluster configuration. The [examples](https://github.com/mysql/mysql-ndb-operator/tree/main/docs/examples) folder has a few examples of the NdbCluster resource objects which can be used to deploy MySQL Cluster inside the K8s Cluster.
          ## Deploy a simple MySQL Cluster

          The [examples/example-ndb.yaml](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/examples/example-ndb.yaml) file has a NdbCluster object example-ndb that defines a simple MySQL Cluster with 2 data nodes and 2 MySQL Servers. To create this object in the default namespace of the K8s Cluster, run this command from the root of the repo :
          ```
          kubectl apply -f docs/examples/example-ndb.yaml
          ```

          Various NdbCluster status fields report back the actual status of the MySQL Cluster running inside the K8s Cluster. Wait for the MySQL Cluster nodes to be started and become ready using the [UpToDate](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/NdbCluster-CRD.md#ndbclusterconditiontypestring-alias) Condition defined in the NdbCluster object status :
          ```
          kubectl wait --for=condition=UpToDate ndb example-ndb --timeout=10m
          ```
          The MySQL Cluster is ready for transactions once the NdbCluster is UpToDate, i.e. the UpToDate condition becomes true.

          At any point, a brief status of an NdbCluster object can be viewed using kubectl get ndb command.
          ```
          kubectl get ndb example-ndb
          ```

          The output of the command gives a short summary the MySQL Cluster nodes controlled by the respective NdbCluster object.
          ```
          NAME          REPLICA   MANAGEMENT NODES   DATA NODES   MYSQL SERVERS AGE   UP-TO-DATE
          example-ndb   2         Ready:2/2          Ready:2/2    Ready:2/2 3m    True
          ```

          To list all the pods created by the NDB Operator, run :
          ```
          kubectl get pods -l mysql.oracle.com/v1=example-ndb
          ```

          For example-ndb NdbCluster object, two management nodes (*-mgmd-* pods), two multi-threaded data nodes (*-ndbmtd-* pods) and two MySQL Servers (*-mysqld-*) would have been created by the NDB operator :
          ```
          NAME                   READY   STATUS    RESTARTS   AGE
          example-ndb-mgmd-0     1/1     Running   0          3m53s
          example-ndb-mgmd-1     1/1     Running   0          2m5s
          example-ndb-mysqld-0   1/1     Running   0          78s
          example-ndb-mysqld-1   1/1     Running   0          78s
          example-ndb-ndbmtd-0   1/1     Running   0          3m53s
          example-ndb-ndbmtd-1   1/1     Running   0          3m53s
          ```
          If running inside a openshift cluster, pods from statefulset "example-ndb-mysqld" will not start up. By default openshift runs all the pod with "restricted" scc, but the statefulset "example-ndb-mysqld" required higher privilege. Use the below command to check the exact scc required
          ```
          oc get pods example-ndb-mysqld-0 -o yaml | oc adm policy scc-subject-review -f -
          ```
          Create a user account with the scc and set the user to the statefulset "example-ndb-mysqld". Below commands creates an user with "anyuid" and assign it to the statefulset.
          ```
          oc create sa any-uid-user
          oc adm policy add-scc-to-user anyuid -z any-uid-user
          oc set sa sts example-ndb-mysqld any-uid-user
          ```
          ## Connect to the MySQL Cluster

          The NDB Operator, by default, creates few Services to expose the services offered by the MySQL Cluster nodes within the Kubernetes Cluster.
          ```
          kubectl get services -l mysql.oracle.com/v1=example-ndb
          ```

          The above command will generate an output similar to :
          ```
          NAME                 TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S) AGE
          example-ndb-mgmd     ClusterIP   10.100.207.255   <none>        1186/TCP 5m
          example-ndb-mysqld   ClusterIP   10.103.182.157   <none>        3306/TCP 5m
          example-ndb-ndbmtd   ClusterIP   None             <none>        1186/TCP 5m
          ```

          The NDB Operator will also create a root user with a random password on all the MySQL Servers. The root password will be stored in a K8s Secret which can be retrieved from the NdbCluster object status :
          ```
          kubectl get ndb example-ndb -o jsonpath={.status.generatedRootPasswordSecretName}
          ```

          To extract and decode the password from the Secret :
          ```
          base64 -d <<< \
          $(kubectl get secret example-ndb-mysqld-root-password \
          -o jsonpath={.data.password})
          ```

          One can also specify the password and host to be used with the root account via the NdbCluster spec. See the [CRD documentation](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/NdbCluster-CRD.md#ndbmysqldspec) for more details on this.
          ## Access MySQL Cluster from inside K8s

          To connect to the Management and MySQL Servers from within the Kubernetes Cluster, you can use the example-ndb-mgmd and example-ndb-mysqld services as the MySQL Cluster connectstring and MySQL host respectively. You can also use the mgmd and mysqld pods' hostnames to directly connect to that particular pod. The mysql, ndb_mgm clients and any other ndb tools will work as expected.

          A demonstration is available at [connect-from-inside-k8s-demo.md](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/connect-from-inside-k8s-demo.md).
          ## Access MySQL Cluster from outside K8s

          By default, the Management and MySQL services created by the NDB Operator are of type [ClusterIP](https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types) and are accessible only from within the K8s Cluster. To expose them outside the K8s Cluster, the services have to be upgraded into a LoadBalancer type. This can be done by setting the spec.managementNode.enableLoadBalancer and spec.mysqlNode.enableLoadBalancer fields of the NdbCluster resource to true. These options can be enabled when the NdbCluster resource object is created or via an update to the object when the MySQL Cluster is already running.

          Once enabled, the previously ClusterIP type example-ndb-mgmd and example-ndb-mysqld services will be upgraded to LoadBalancer type, and they will be available at the external IP assigned to them by the cloud provider.

          Another way to access these services without enabling the LoadBalancers support is to use the kubectl port-forward command.

          In both ways, only the mysql and ndb_mgm clients work. Any NDB tool which uses the NDBAPI to connect to the MySQL data nodes will not work as expected from outside the K8s Cluster.

          A demonstration is available at [connect-from-outside-k8s-demo.md](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/connect-from-outside-k8s-demo.md).
          ## Updating MySQL Cluster Configuration

          Once a MySQL Cluster has been deployed by the NDB Operator inside the K8s Cluster, its configuration can be updated by updating the spec of the NdbCluster resource object that represents it. The NDB Operator will pick up any changes made to the NdbCluster resource object and will apply the updated configuration to the respective MySQL Cluster. The NDB Operator takes care of updating the MySQL Cluster config file and restarting all the management/data nodes if required. When the update is being handled by the NdbOperator, it will set the UpToDate condition of the NdbCluster resource object to false and will not accept any further updates until it completes the current one.

          The kubectl get ndb example-ndb command will report the UpToDate status of an NdbCluster. It can be used to check if the current update has been completed.
          ```
          $ kubectl get ndb example-ndb
          NAME          REPLICA   MANAGEMENT NODES   DATA NODES   MYSQL SERVERS AGE   UP-TO-DATE
          example-ndb   2         Ready:2/2          Ready:1/2    Ready:2/2 10m   False
          ```

          The UpToDate condition can also be used to wait for the operator to complete the update.
          ```
          kubectl wait --for=condition=UpToDate ndb example-ndb --timeout=10m
          ```

          Once the update is complete, the UpToDate condition will be set back to true by the operator.
          ```
          $ kubectl get ndb example-ndb
          NAME          REPLICA   MANAGEMENT NODES   DATA NODES   MYSQL SERVERS AGE      UP-TO-DATE
          example-ndb   2         Ready:2/2          Ready:2/2    Ready:2/2 10m50s   True
          ```

          ## Delete a MySQL Cluster

          To stop and remove the MySQL Cluster running inside the K8s Cluster, delete the NdbCluster resource object.
          ```
          kubectl delete -f docs/examples/example-ndb.yaml
          ```

          (or)
          ```
          kubectl delete ndb example-ndb
          ```

          This will delete all the data, the pods running the MySQL Cluster nodes and also delete all other associated K8s resources created by the NDB Operator.
        displayName: Ndb Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mysql
        - ndb
        - in-memory
        links:
        - name: Document
          url: https://dev.mysql.com/doc/ndb-operator/en/
        maintainers:
        - email: paulo.p.silva@oracle.com
          name: paulofasilva
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: MySQL
          url: https://artifacthub.io/packages/helm/mysql-ndb-operator/ndb-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ndb-operator@sha256:5f33c2a8181ea8e91844afd1f4042affbd9eb878266b6b2bcc6906f0829ed00b
        - container-registry.oracle.com/mysql/community-ndb-operator:9.1.0-1.6.0
        version: 1.6.0
      entries:
      - name: ndb-operator.v1.6.0
        version: 1.6.0
      name: alpha
    defaultChannel: alpha
    packageName: ndb-operator
    provider:
      name: MySQL
      url: https://artifacthub.io/packages/helm/mysql-ndb-operator/ndb-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: vault-config-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vault-config-operator.v0.8.37
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Audit",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "audit-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "audit",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "audit-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "options": {
                    "enable_list_responses": "true",
                    "file_path": "stdout",
                    "hmac_accessor": "false"
                  },
                  "path": "audit-sample",
                  "type": "file"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AuditRequestHeader",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "auditrequestheader-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "auditrequestheader",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "auditrequestheader-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "hmac": true,
                  "name": "custom-header"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AuthEngineMount",
                "metadata": {
                  "name": "authenginemount-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "kube-authengine-mount-sample",
                  "type": "kubernetes"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureAuthEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azureauthengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azureauthengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azureauthengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "azureCredentials": {
                    "passwordKey": "clientsecret",
                    "secret": {
                      "name": "aad-credentials"
                    },
                    "usernameKey": "clientid"
                  },
                  "clientID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "environment": "AzurePublicCloud",
                  "maxRetries": 3,
                  "maxRetryDelay": 60,
                  "path": "azure/test",
                  "resource": "https://management.azure.com/",
                  "retryDelay": 4,
                  "tenantID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureAuthEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azureauthenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azureauthenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azureauthenginerole-sample"
                },
                "spec": {
                  "BoundResourceGroups": [
                    "resourcegroup1",
                    "resourcegroup2"
                  ],
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "boundGroupIDs": [
                    "group1",
                    "group2"
                  ],
                  "boundLocations": [
                    "location1",
                    "location2"
                  ],
                  "boundScaleSets": [
                    "scaleset1",
                    "scaleset1"
                  ],
                  "boundServicePrincipalIDs": [
                    "sp1",
                    "sp2"
                  ],
                  "boundSubscriptionIDs": [
                    "subscription1",
                    "subscription2"
                  ],
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "name": "dev-role",
                  "path": "azure",
                  "policies": [
                    "policy1",
                    "policy2"
                  ],
                  "tokenBoundCIDRs": [
                    "10.20.102.13",
                    "10.20.102.15"
                  ],
                  "tokenExplicitMaxTTL": "",
                  "tokenMaxTTL": "",
                  "tokenNoDefaultPolicy": false,
                  "tokenNumUses": 0,
                  "tokenPeriod": 0,
                  "tokenPolicies": [
                    "policy1",
                    "policy2"
                  ],
                  "tokenTTL": "",
                  "tokenType": ""
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureSecretEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azuresecretengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azuresecretengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azuresecretengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "azureCredentials": {
                    "passwordKey": "clientsecret",
                    "secret": {
                      "name": "aad-credentials"
                    },
                    "usernameKey": "clientid"
                  },
                  "clientID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "environment": "AzurePublicCloud",
                  "passwordPolicy": "",
                  "path": "azure",
                  "rootPasswordTTL": "128d",
                  "subscriptionID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
                  "tenantID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureSecretEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azuresecretenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azuresecretenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azuresecretenginerole-sample"
                },
                "spec": {
                  "TTL": "",
                  "applicationObjectID": "",
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "azureGroups": "",
                  "azureRoles": "",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "maxTTL": "",
                  "name": "azure-role",
                  "path": "azure",
                  "permanentlyDelete": "",
                  "persistApp": "",
                  "signInAudience": "",
                  "tags": ""
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "CertAuthEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "certauthengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "certauthengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "certauthengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "name": "test",
                  "path": "cert"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "CertAuthEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "certauthenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "certauthenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "certauthenginerole-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "certificate": "-----BEGIN CERTIFICATE-----\nMIIDJTCCAg2gAwIBAgIUF119kmCNlnMwK6yOOpfRs4JGhAAwDQYJKoZIhvcNAQEL\nBQAwFjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjUwMTIxMTM0MjExWhcNMjYw\nMTIxMTM0MjExWjAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBALad4Sx97VyFSfOepJoXUGYljg7hL+z20pVL2/M8\n8HXAQl4qf/i45b//Qz8VogMxdg3Y9J7O/M0n9hxbL18i1gm270VjEFyzjJCyUq0R\n72WMM4Sr3OjQPnVtJoQkWnH7wR3zsWK2N4NuIPdE3Ofb48Olyachffv7xCI+MLIa\n/adcyRggM4Z5f2nBCMcXL8D/eY03qCgd/U1aaPJ0WyJTZHLL4euL0ewKlKtB1JnU\n4MrRa5mbPQ3B+OhxcaD/7BNV6hPXAe2zftEv8LcimhbVoj3XmLJ+om58YIaEMadk\nJj61xnXbf+F/iV41onzwvTPNWCSWiLowDl8P3zkabuS583sCAwEAAaNrMGkwHQYD\nVR0OBBYEFH971CwrqkTvUz2qrUncWMS5ULwKMB8GA1UdIwQYMBaAFH971CwrqkTv\nUz2qrUncWMS5ULwKMA8GA1UdEwEB/wQFMAMBAf8wFgYDVR0RBA8wDYILZXhhbXBs\nZS5jb20wDQYJKoZIhvcNAQELBQADggEBAIQzT113TQC9BqitOCOoDFCJqcM+BHmf\nITEKlEhlqubPvA40lD4wkz67RP2SdQbF1glzZW5sDTxMjpHL+8nhdmo65CJpsQGP\nyMPwnOvx7W5JWQJa1Yt+48JNhgIymDMun+xwDsjNnlBqp0Kr7HkOxPimMPWN4R6B\nydG96puDGBYqxB1ujx5seOGfGvxPBBr3h8kNg054rtIIDrUG2iUTfpNIILJrd8Q2\nshop9//3VcIpUJO7Z1brvK/Hp4DrcKBZVo7vd8n+5uCx3vBA0tjqNAXYtFnSRvDZ\n6XV+rCZecDBFkaLuJ5YgYEK15gGe6lQAez6DTVLXMAKhZ52kceefnwM=\n-----END CERTIFICATE-----\n",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "name": "test-role",
                  "path": "cert/test"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "DatabaseSecretEngineConfig",
                "metadata": {
                  "name": "my-postgresql-database"
                },
                "spec": {
                  "allowedRoles": [
                    "read-only"
                  ],
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "connectionURL": "postgresql://{{username}}:{{password}}@my-postgresql-database.test-vault-config-operator.svc:5432",
                  "path": "test-vault-config-operator/database",
                  "pluginName": "postgresql-database-plugin",
                  "rootCredentials": {
                    "passwordKey": "postgresql-password",
                    "secret": {
                      "name": "postgresql-admin-password"
                    }
                  },
                  "username": "postgres"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "DatabaseSecretEngineRole",
                "metadata": {
                  "name": "read-only"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "creationStatements": [
                    "CREATE ROLE \"{{name}}\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}'; GRANT SELECT ON ALL TABLES IN SCHEMA public TO \"{{name}}\";"
                  ],
                  "dBName": "my-postgresql-database",
                  "defaultTTL": "1h",
                  "maxTTL": "24h",
                  "path": "test-vault-config-operator/database"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "DatabaseSecretEngineStaticRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "databasesecretenginestaticrole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "databasesecretenginestaticrole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "databasesecretenginestaticrole-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "dBName": "db-name",
                  "path": "test-vault-config-operator/database",
                  "rotationPeriod": "24h",
                  "rotationStatements": [
                    "ALTER ROLE \"{{name}}\" WITH PASSWORD '{{password}}';git add"
                  ],
                  "username": "db-user"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GCPAuthEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "gcpauthengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "gcpauthengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "gcpauthengineconfig-sample"
                },
                "spec": {
                  "GCEalias": "role_id",
                  "GCEmetadata": "default",
                  "GCPCredentials": {
                    "passwordKey": "credentials",
                    "secret": {
                      "name": "gcp-serviceaccount-credentials"
                    },
                    "usernameKey": "serviceaccount"
                  },
                  "IAMalias": "default",
                  "IAMmetadata": "default",
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "customEndpoint": {},
                  "path": "azure",
                  "serviceAccount": "vault-sa"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GCPAuthEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "gcpauthenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "gcpauthenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "gcpauthenginerole-sample"
                },
                "spec": {
                  "addGroupAliases": false,
                  "allowGCEInference": false,
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "boundInstanceGroups": [],
                  "boundLabels": [],
                  "boundProjects": {},
                  "boundRegions": [],
                  "boundServiceAccounts": {},
                  "boundZones": [],
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "maxJWTExp": "",
                  "name": "gcp-iam-role",
                  "path": "gcp",
                  "policies": [],
                  "tokenBoundCIDRs": [],
                  "tokenExplicitMaxTTL": "",
                  "tokenMaxTTL": "",
                  "tokenNoDefaultPolicy": false,
                  "tokenNumUses": 0,
                  "tokenPeriod": 0,
                  "tokenPolicies": [],
                  "tokenTTL": "",
                  "tokenType": "",
                  "type": "iam"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GitHubSecretEngineConfig",
                "metadata": {
                  "name": "githubsecretengineconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GitHubSecretEngineRole",
                "metadata": {
                  "name": "githubsecretenginerole-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Group",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "group-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "group",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "group-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "metadata": {
                    "team": "team-abc"
                  },
                  "policies": [
                    "team-abc-access"
                  ],
                  "type": "external"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupAlias",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "groupalias-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "groupalias",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "groupalias-sample"
                },
                "spec": {
                  "authEngineMountPath": "kubernetes",
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "groupName": "group-sample"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "JWTOIDCAuthEngineConfig",
                "metadata": {
                  "name": "azure-oidc-config"
                },
                "spec": {
                  "OIDCClientID": "000000000-0000-0000-0000-000000000",
                  "OIDCCredentials": {
                    "passwordKey": "oidc_client_secret",
                    "secret": {
                      "name": "oidccredentials"
                    },
                    "usernameKey": "oidc_client_id"
                  },
                  "OIDCDiscoveryURL": "https://login.microsoftonline.com/000000000-0000-0000-0000-000000000/v2.0",
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "oidc/azuread-oidc/"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "JWTOIDCAuthEngineRole",
                "metadata": {
                  "name": "azure-oidc-dev-role"
                },
                "spec": {
                  "OIDCScopes": [
                    "https://graph.microsoft.com/.default"
                  ],
                  "allowedRedirectURIs": [
                    "http://localhost:8250/oidc/callback",
                    "http://localhost:8200/ui/vault/auth/oidc/azuread-oidc/oidc/callback"
                  ],
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "groupsClaim": "groups",
                  "name": "dev-role",
                  "path": "oidc-aad/azuread-oidc",
                  "roleType": "oidc",
                  "tokenPolicies": [
                    "dev",
                    "prod"
                  ],
                  "userClaim": "email"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesAuthEngineConfig",
                "metadata": {
                  "name": "kubernetesauthengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "kube-authengine-mount-sample"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesAuthEngineRole",
                "metadata": {
                  "name": "database-engine-admin"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "kubernetes",
                  "policies": [
                    "database-engine-admin"
                  ],
                  "targetNamespaces": {
                    "targetNamespaceSelector": {
                      "matchLabels": {
                        "database-engine-admin": "true"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesSecretEngineConfig",
                "metadata": {
                  "name": "kubernetessecretengineconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesSecretEngineRole",
                "metadata": {
                  "name": "kubernetessecretenginerole-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "LDAPAuthEngineConfig",
                "metadata": {
                  "name": "ldapauthengineconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "LDAPAuthEngineGroup",
                "metadata": {
                  "name": "ldapauthenginegroup-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin",
                    "serviceAccount": {
                      "name": "default"
                    }
                  },
                  "name": "test-group",
                  "path": "ldap/test"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "PKISecretEngineConfig",
                "metadata": {
                  "name": "pkisecretengineconfig-sample"
                },
                "spec": {
                  "TTL": "8760h",
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "commonName": "pki-vault-demo.internal.io",
                  "crlDistributionPoints": [
                    "https://vault-internal.vault.svc:8200/v1/test-vault-config-operator/pki/crl\""
                  ],
                  "issuingCertificates": [
                    "https://vault-internal.vault.svc:8200/v1/test-vault-config-operator/pki/ca"
                  ],
                  "path": "test-vault-config-operator/pki",
                  "privateKeyType": "internal",
                  "type": "root"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "PKISecretEngineRole",
                "metadata": {
                  "name": "pkisecretenginerole-sample"
                },
                "spec": {
                  "allowGlobDomains": true,
                  "allowSubdomains": true,
                  "allowedDomains": [
                    "internal.io",
                    "pki-vault-demo.svc",
                    "example.com"
                  ],
                  "allowedOtherSans": "*",
                  "allowedURISans": [
                    "*-pki-vault-demo.apps.example.com"
                  ],
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "maxTTL": "8760h",
                  "path": "test-vault-config-operator/pki"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "PasswordPolicy",
                "metadata": {
                  "name": "simple-password-policy"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "passwordPolicy": "length = 20\nrule \"charset\" {\n  charset = \"abcdefghijklmnopqrstuvwxyz\"\n}"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Policy",
                "metadata": {
                  "name": "database-engine-admin"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "policy": "# mount database secrets engines\npath \"/sys/mounts/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n  allowed_parameters = {\n    \"type\" = [\"database\"]\n    \"*\"   = []\n  }\n}\n\n# tune database secrets engines\npath \"/sys/mounts/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database/tune\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n}\n\n# Configure database secrets engines\npath \"/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database/config/+\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n}\n\n# Configure database roles\npath \"/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database/roles/+\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n}\n"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuaySecretEngineConfig",
                "metadata": {
                  "name": "quaysecretengineconfig-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuaySecretEngineRole",
                "metadata": {
                  "name": "quaysecretenginerole-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuaySecretEngineStaticRole",
                "metadata": {
                  "name": "quaysecretenginestaticrole-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "RabbitMQSecretEngineConfig",
                "metadata": {
                  "name": "rabbitmqsecretengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "rabbitMQ-engine-admin"
                  },
                  "connectionURI": "https://test.com",
                  "leaseMaxTTL": 86400,
                  "leaseTTL": 86400,
                  "path": "vault-config-operator/rabbitmq"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "RabbitMQSecretEngineRole",
                "metadata": {
                  "name": "rabbitmqsecretenginerole-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "rabbitmq-engine-admin"
                  },
                  "path": "vault-config-operator/rabbitmq",
                  "tags": "administrator",
                  "vhostTopics": [
                    {
                      "topics": [
                        {
                          "permissions": {
                            "configure": ".*",
                            "read": ".*",
                            "write": ".*"
                          },
                          "topicName": "my-topic"
                        },
                        {
                          "permissions": {
                            "read": ".*"
                          },
                          "topicName": "my-read-topic"
                        }
                      ],
                      "vhostName": "/"
                    }
                  ],
                  "vhosts": [
                    {
                      "permissions": {
                        "configure": ".*",
                        "read": ".*",
                        "write": ".*"
                      },
                      "vhostName": "/"
                    },
                    {
                      "permissions": {
                        "read": "my-queue",
                        "write": "my-exchange"
                      },
                      "vhostName": "my-vhost"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "RandomSecret",
                "metadata": {
                  "name": "randomsecret-password"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "secret-writer"
                  },
                  "path": "test-vault-config-operator/kv",
                  "secretFormat": {
                    "passwordPolicyName": "simple-password-policy"
                  },
                  "secretKey": "password"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "SecretEngineMount",
                "metadata": {
                  "name": "database"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "path": "test-vault-config-operator",
                  "type": "database"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "VaultSecret",
                "metadata": {
                  "name": "vaultsecret-sample"
                },
                "spec": {
                  "output": {
                    "annotations": {
                      "refresh": "every-minute"
                    },
                    "labels": {
                      "app": "test-vault-config-operator"
                    },
                    "name": "randomsecret",
                    "stringData": {
                      "anotherpassword": "{{ .anotherrandomsecret.password }}",
                      "password": "{{ .randomsecret.password }}"
                    },
                    "type": "Opaque"
                  },
                  "refreshPeriod": "3m0s",
                  "vaultSecretDefinitions": [
                    {
                      "authentication": {
                        "path": "kubernetes",
                        "role": "secret-reader",
                        "serviceAccount": {
                          "name": "default"
                        }
                      },
                      "name": "randomsecret",
                      "path": "test-vault-config-operator/kv/randomsecret-password"
                    },
                    {
                      "authentication": {
                        "path": "kubernetes",
                        "role": "secret-reader",
                        "serviceAccount": {
                          "name": "default"
                        }
                      },
                      "name": "anotherrandomsecret",
                      "path": "test-vault-config-operator/kv/another-password"
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/vault-config-operator@sha256:ca58fbf75ceb8f09db43c134ec0f99eafb257e8e0dae80f7cb4298f37e12d486
          createdAt: "2026-01-06T13:45:44Z"
          description: This operator provides primitives to declaratively configure
            Hashicorp Vault.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: vault-config-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/vault-config-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AuditRequestHeader is the Schema for the auditrequestheaders
              API
            displayName: Audit Request Header
            kind: AuditRequestHeader
            name: auditrequestheaders.redhatcop.redhat.io
            version: v1alpha1
          - description: Audit is the Schema for the audits API
            displayName: Audit
            kind: Audit
            name: audits.redhatcop.redhat.io
            version: v1alpha1
          - description: AuthEngineMount is the Schema for the authenginemounts API
            displayName: Auth Engine Mount
            kind: AuthEngineMount
            name: authenginemounts.redhatcop.redhat.io
            version: v1alpha1
          - description: AzureAuthEngineConfig is the Schema for the azureauthengineconfigs
              API
            displayName: Azure Auth Engine Config
            kind: AzureAuthEngineConfig
            name: azureauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: AzureAuthEngineRole is the Schema for the azureauthengineroles
              API
            displayName: Azure Auth Engine Role
            kind: AzureAuthEngineRole
            name: azureauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - kind: AzureSecretEngineConfig
            name: azuresecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: AzureSecretEngineRole is the Schema for the azuresecretengineroles
              API
            displayName: Azure Secret Engine Role
            kind: AzureSecretEngineRole
            name: azuresecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: CertAuthEngineConfig is the Schema for the certauthengineconfigs
              API
            displayName: Cert Auth Engine Config
            kind: CertAuthEngineConfig
            name: certauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: CertAuthEngineRole is the Schema for the certauthengineroles
              API
            displayName: Cert Auth Engine Role
            kind: CertAuthEngineRole
            name: certauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: DatabaseSecretEngineConfig is the Schema for the databasesecretengineconfigs
              API
            displayName: Database Secret Engine Config
            kind: DatabaseSecretEngineConfig
            name: databasesecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: DatabaseSecretEngineRole is the Schema for the databasesecretengineroles
              API
            displayName: Database Secret Engine Role
            kind: DatabaseSecretEngineRole
            name: databasesecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: DatabaseSecretEngineStaticRole is the Schema for the databasesecretenginestaticroles
              API
            displayName: Database Secret Engine Static Role
            kind: DatabaseSecretEngineStaticRole
            name: databasesecretenginestaticroles.redhatcop.redhat.io
            version: v1alpha1
          - description: GCPAuthEngineConfig is the Schema for the gcpauthengineconfigs
              API
            displayName: GCPAuth Engine Config
            kind: GCPAuthEngineConfig
            name: gcpauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: GCPAuthEngineRole is the Schema for the gcpauthengineroles
              API
            displayName: GCPAuth Engine Role
            kind: GCPAuthEngineRole
            name: gcpauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: GitHubSecretEngineConfig is the Schema for the githubsecretengineconfigs
              API
            displayName: Git Hub Secret Engine Config
            kind: GitHubSecretEngineConfig
            name: githubsecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: GitHubSecretEngineRole is the Schema for the githubsecretengineroles
              API
            displayName: Git Hub Secret Engine Role
            kind: GitHubSecretEngineRole
            name: githubsecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: GroupAlias is the Schema for the groupaliases API
            displayName: Group Alias
            kind: GroupAlias
            name: groupaliases.redhatcop.redhat.io
            version: v1alpha1
          - description: Group is the Schema for the groups API
            displayName: Group
            kind: Group
            name: groups.redhatcop.redhat.io
            version: v1alpha1
          - description: JWTOIDCAuthEngineConfig is the Schema for the jwtoidcauthengineconfigs
              API
            displayName: JWTOIDCAuth Engine Config
            kind: JWTOIDCAuthEngineConfig
            name: jwtoidcauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: JWTOIDCAuthEngineRole is the Schema for the jwtoidcauthengineroles
              API
            displayName: JWTOIDCAuth Engine Role
            kind: JWTOIDCAuthEngineRole
            name: jwtoidcauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesAuthEngineConfig is the Schema for the kubernetesauthengineconfigs
              API
            displayName: Kubernetes Auth Engine Config
            kind: KubernetesAuthEngineConfig
            name: kubernetesauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesAuthEngineRole can be used to define a KubernetesAuthEngineRole
              for the kube-auth authentication method
            displayName: Kubernetes Auth Engine Role
            kind: KubernetesAuthEngineRole
            name: kubernetesauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesSecretEngineConfig is the Schema for the kubernetessecretengineconfigs
              API
            displayName: Kubernetes Secret Engine Config
            kind: KubernetesSecretEngineConfig
            name: kubernetessecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesSecretEngineRole is the Schema for the kubernetessecretengineroles
              API
            displayName: Kubernetes Secret Engine Role
            kind: KubernetesSecretEngineRole
            name: kubernetessecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: LDAPAuthEngineConfig is the Schema for the ldapauthengineconfigs
              API
            displayName: LDAPAuth Engine Config
            kind: LDAPAuthEngineConfig
            name: ldapauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: LDAPAuthEngineGroup is the Schema for the ldapauthenginegroups
              API
            displayName: LDAPAuth Engine Group
            kind: LDAPAuthEngineGroup
            name: ldapauthenginegroups.redhatcop.redhat.io
            version: v1alpha1
          - description: PasswordPolicy is the Schema for the passwordpolicies API
            displayName: Password Policy
            kind: PasswordPolicy
            name: passwordpolicies.redhatcop.redhat.io
            version: v1alpha1
          - description: PKISecretEngineConfig is the Schema for the pkisecretengineconfigs
              API
            displayName: PKISecret Engine Config
            kind: PKISecretEngineConfig
            name: pkisecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: PKISecretEngineRole is the Schema for the pkisecretengineroles
              API
            displayName: PKISecret Engine Role
            kind: PKISecretEngineRole
            name: pkisecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: Policy is the Schema for the policies API
            displayName: Policy
            kind: Policy
            name: policies.redhatcop.redhat.io
            version: v1alpha1
          - description: QuaySecretEngineConfig is the Schema for the quaysecretengineconfigs
              API
            displayName: Quay Secret Engine Config
            kind: QuaySecretEngineConfig
            name: quaysecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: QuaySecretEngineRole is the Schema for the quaysecretengineroles
              API
            displayName: Quay Secret Engine Role
            kind: QuaySecretEngineRole
            name: quaysecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: QuaySecretEngineStaticRole is the Schema for the quaysecretenginestaticroles
              API
            displayName: Quay Secret Engine Static Role
            kind: QuaySecretEngineStaticRole
            name: quaysecretenginestaticroles.redhatcop.redhat.io
            version: v1alpha1
          - description: RabbitMQSecretEngineConfig is the Schema for the rabbitmqsecretengineconfigs
              API
            displayName: Rabbit MQSecret Engine Config
            kind: RabbitMQSecretEngineConfig
            name: rabbitmqsecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: RabbitMQSecretEngineRole is the Schema for the rabbitmqsecretengineroles
              API
            displayName: Rabbit MQSecret Engine Role
            kind: RabbitMQSecretEngineRole
            name: rabbitmqsecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: RandomSecret is the Schema for the randomsecrets API
            displayName: Random Secret
            kind: RandomSecret
            name: randomsecrets.redhatcop.redhat.io
            version: v1alpha1
          - description: SecretEngineMount is the Schema for the secretenginemounts
              API
            displayName: Secret Engine Mount
            kind: SecretEngineMount
            name: secretenginemounts.redhatcop.redhat.io
            version: v1alpha1
          - description: VaultSecret is the Schema for the vaultsecrets API
            displayName: Vault Secret
            kind: VaultSecret
            name: vaultsecrets.redhatcop.redhat.io
            version: v1alpha1
        description: |
          This operator helps set up Vault Configurations. The main intent is to do so such that subsequently pods can consume the secrets made available.
          There are two main principles through all of the capabilities of this operator:

          1. high-fidelity API. The CRD exposed by this operator reflect field by field the Vault APIs. This is because we don't want to make any assumption on the kinds of configuration workflow that user will set up. That being said the Vault API is very extensive and we are starting with enough API coverage to support, we think, some simple and very common configuration workflows.
          2. attention to security (after all we are integrating with a security tool). To prevent credential leaks we give no permissions to the operator itself against Vault. All APIs exposed by this operator contains enough information to authenticate to Vault using a local service account (local to the namespace where the API exist). In other word for a namespace user to be abel to successfully configure Vault, a service account in that namespace must have been previously given the needed Vault permissions.

          Currently this operator supports the following CRDs:

          1. [Policy](https://github.com/redhat-cop/vault-config-operator#policy) Configures Vault [Policies](https://www.vaultproject.io/docs/concepts/policies)
          2. [KubernetesAuthEngineRole](https://github.com/redhat-cop/vault-config-operator#KubernetesAuthEngineRole) Configures a Vault [Kubernetes Authentication](https://www.vaultproject.io/docs/auth/kubernetes) Role
          3. [SecretEngineMount](https://github.com/redhat-cop/vault-config-operator#SecretEngineMount) Configures a Mount point for a [SecretEngine](https://www.vaultproject.io/docs/secrets)
          4. [DatabaseSecretEngineConfig](https://github.com/redhat-cop/vault-config-operator#DatabaseSecretEngineConfig) Configures a [Database Secret Engine](https://www.vaultproject.io/docs/secrets/databases) Connection
          5. [DatabaseSecretEngineRole](https://github.com/redhat-cop/vault-config-operator#DatabaseSecretEngineRole) Configures a [Database Secret Engine](https://www.vaultproject.io/docs/secrets/databases) Role
          6. [RandomSecret](https://github.com/redhat-cop/vault-config-operator#RandomSecret) Creates a random secret in a vault [kv Secret Engine](https://www.vaultproject.io/docs/secrets/kv) with one password field generated using a [PasswordPolicy](https://www.vaultproject.io/docs/concepts/password-policies)vault-config-operator
        displayName: Vault Config Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - secrets
        - gitops
        - policy
        - credentials
        links:
        - name: Vault Config Operator
          url: https://github.com/redhat-cop/vault-config-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/vault-config-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/redhat-cop/vault-config-operator@sha256:ca58fbf75ceb8f09db43c134ec0f99eafb257e8e0dae80f7cb4298f37e12d486
        - quay.io/community-operator-pipeline-prod/vault-config-operator@sha256:b2dc0c534d0cae9349d3cf2971d65725bad41fc3de8082ba43ec915152e08c8b
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 0.8.37
      entries:
      - name: vault-config-operator.v0.8.37
        version: 0.8.37
      - name: vault-config-operator.v0.8.36
        version: 0.8.36
      - name: vault-config-operator.v0.8.35
        version: 0.8.35
      - name: vault-config-operator.v0.8.34
        version: 0.8.34
      - name: vault-config-operator.v0.8.33
        version: 0.8.33
      - name: vault-config-operator.v0.8.32
        version: 0.8.32
      - name: vault-config-operator.v0.8.31
        version: 0.8.31
      - name: vault-config-operator.v0.8.30
        version: 0.8.30
      - name: vault-config-operator.v0.8.29
        version: 0.8.29
      - name: vault-config-operator.v0.8.28
        version: 0.8.28
      - name: vault-config-operator.v0.8.27
        version: 0.8.27
      - name: vault-config-operator.v0.8.25
        version: 0.8.25
      - name: vault-config-operator.v0.8.24
        version: 0.8.24
      - name: vault-config-operator.v0.8.23
        version: 0.8.23
      - name: vault-config-operator.v0.8.22
        version: 0.8.22
      - name: vault-config-operator.v0.8.21
        version: 0.8.21
      - name: vault-config-operator.v0.8.20
        version: 0.8.20
      - name: vault-config-operator.v0.8.19
        version: 0.8.19
      - name: vault-config-operator.v0.8.18
        version: 0.8.18
      - name: vault-config-operator.v0.8.17
        version: 0.8.17
      - name: vault-config-operator.v0.8.16
        version: 0.8.16
      - name: vault-config-operator.v0.8.15
        version: 0.8.15
      - name: vault-config-operator.v0.8.14
        version: 0.8.14
      - name: vault-config-operator.v0.8.13
        version: 0.8.13
      - name: vault-config-operator.v0.8.12
        version: 0.8.12
      - name: vault-config-operator.v0.8.11
        version: 0.8.11
      - name: vault-config-operator.v0.8.10
        version: 0.8.10
      - name: vault-config-operator.v0.8.9
        version: 0.8.9
      - name: vault-config-operator.v0.8.7
        version: 0.8.7
      - name: vault-config-operator.v0.8.5
        version: 0.8.5
      - name: vault-config-operator.v0.8.4
        version: 0.8.4
      - name: vault-config-operator.v0.8.3
        version: 0.8.3
      - name: vault-config-operator.v0.8.2
        version: 0.8.2
      - name: vault-config-operator.v0.8.0
        version: 0.8.0
      - name: vault-config-operator.v0.7.1
        version: 0.7.1
      - name: vault-config-operator.v0.6.5
        version: 0.6.5
      - name: vault-config-operator.v0.6.4
        version: 0.6.4
      - name: vault-config-operator.v0.6.3
        version: 0.6.3
      - name: vault-config-operator.v0.6.2
        version: 0.6.2
      - name: vault-config-operator.v0.6.1
        version: 0.6.1
      - name: vault-config-operator.v0.6.0
        version: 0.6.0
      - name: vault-config-operator.v0.5.1
        version: 0.5.1
      - name: vault-config-operator.v0.5.0
        version: 0.5.0
      - name: vault-config-operator.v0.4.1
        version: 0.4.1
      - name: vault-config-operator.v0.4.0
        version: 0.4.0
      - name: vault-config-operator.v0.3.1
        version: 0.3.1
      - name: vault-config-operator.v0.3.0
        version: 0.3.0
      - name: vault-config-operator.v0.2.0
        version: 0.2.0
      - name: vault-config-operator.v0.1.2
        version: 0.1.2
      - name: vault-config-operator.v0.1.1
        version: 0.1.1
      - name: vault-config-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: vault-config-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Kepler Operator Contributors
      provider-url: https://sustainable-computing.io/
    name: kepler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kepler-operator.v0.23.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kepler.system.sustainable.computing.io/v1alpha1",
                "kind": "PowerMonitor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "powermonitor",
                    "app.kubernetes.io/name": "powermonitor",
                    "app.kubernetes.io/part-of": "kepler-operator"
                  },
                  "name": "power-monitor"
                },
                "spec": {
                  "kepler": {
                    "config": {
                      "logLevel": "info"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          containerImage: quay.io/sustainable_computing_io/kepler-operator:0.23.0
          createdAt: "2025-11-27T12:36:15Z"
          description: Deploys and Manages Kepler on Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: |-
            [
              "powermonitorinternals.kepler.system.sustainable.computing.io"
            ]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/sustainable-computing-io/kepler-operator
          support: https://github.com/sustainable-computing-io/kepler-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PowerMonitorInternal is the Schema for internal/unsupported
              API
            displayName: PowerMonitorInternal
            kind: PowerMonitorInternal
            name: powermonitorinternals.kepler.system.sustainable.computing.io
            version: v1alpha1
          - description: PowerMonitor is the Schema for the powermonitors API
            displayName: PowerMonitor
            kind: PowerMonitor
            name: powermonitors.kepler.system.sustainable.computing.io
            version: v1alpha1
        description: |-
          Kepler (Kubernetes-based Efficient Power Level Exporter) is a Prometheus exporter that
          measures energy consumption metrics at the container, pod, and node level in Kubernetes clusters.

          ### Prerequisites
          To view the metrics exposed by Kepler, **[User Workload Monitoring](https://docs.redhat.com/documentation/openshift_container_platform/latest/html/monitoring/configuring-user-workload-monitoring)**
          MUST be enabled in your cluster.

          ### Documentation
          * [User Documentation](https://github.com/sustainable-computing-io/kepler-operator/blob/main/README.md)
          * [Developer Guide](https://github.com/sustainable-computing-io/kepler-operator/tree/main/docs/developer)

          ### Contributing
          * [Report Bugs](https://github.com/sustainable-computing-io/kepler-operator/issues/new?template=bug_report.md) - Found a bug? Let us know!
          * [Browse Issues](https://github.com/sustainable-computing-io/kepler-operator/issues) - See what we're working on

          ### License
          Licensed under [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
        displayName: Kepler
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Kepler
        - power
        - energy
        - monitoring
        links:
        - name: Installation Guide
          url: https://sustainable-computing.io/installation/community-operator/
        - name: Kepler Project
          url: https://sustainable-computing.io/
        maintainers:
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: vprashar@redhat.com
          name: Vibhu Prashar
        - email: vimalkum@redhat.com
          name: Vimal Kumar
        - email: kaliu@redhat.com
          name: Kaiyi Liu
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Kepler Operator Contributors
          url: https://sustainable-computing.io/
        relatedImages:
        - quay.io/sustainable_computing_io/kepler:v0.11.3
        - quay.io/brancz/kube-rbac-proxy:v0.19.0
        - quay.io/community-operator-pipeline-prod/kepler-operator:0.23.0
        - quay.io/sustainable_computing_io/kepler-operator:0.23.0
        version: 0.23.0
      entries:
      - name: kepler-operator.v0.23.0
        version: 0.23.0
      - name: kepler-operator.v0.22.0
        version: 0.22.0
      - name: kepler-operator.v0.21.0
        version: 0.21.0
      - name: kepler-operator.v0.20.0
        version: 0.20.0
      name: alpha
    defaultChannel: alpha
    packageName: kepler-operator
    provider:
      name: Kepler Operator Contributors
      url: https://sustainable-computing.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app: enmasse
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: amq-online
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-online.1.7.4-0.1657725339.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "admin.enmasse.io/v1beta1",
                "kind": "StandardInfraConfig",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "broker": {
                    "resources": {
                      "memory": "1Gi",
                      "storage": "5Gi"
                    },
                    "addressFullPolicy": "FAIL"
                  },
                  "router": {
                    "linkCapacity": 50,
                    "resources": {
                      "memory": "512Mi"
                    }
                  }
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta1",
                "kind": "BrokeredInfraConfig",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "broker": {
                    "resources": {
                      "memory": "4Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta2",
                "kind": "AddressPlan",
                "metadata": {
                  "name": "standard-small-queue"
                },
                "spec": {
                  "addressType": "queue",
                  "shortDescription": "Small Queue",
                  "resources": {
                    "router": 0.01,
                    "broker": 0.1
                  }
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta2",
                "kind": "AddressSpacePlan",
                "metadata": {
                  "name": "standard-small"
                },
                "spec": {
                  "addressSpaceType": "standard",
                  "infraConfigRef": "default",
                  "shortDescription": "Small Address Space Plan",
                  "resourceLimits": {
                    "router": 1.0,
                    "broker": 2.0,
                    "aggregate": 2.0
                  },
                  "addressPlans": [
                    "standard-small-queue"
                  ]
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta1",
                "kind": "AuthenticationService",
                "metadata": {
                  "name": "standard-authservice"
                },
                "spec": {
                  "type": "standard",
                  "standard": {
                    "storage": {
                      "claimName": "standard-authservice",
                      "deleteClaim": true,
                      "size": "1Gi",
                      "type": "persistent-claim"
                    }
                  }
                }
              },
              {
                "apiVersion": "enmasse.io/v1beta1",
                "kind": "AddressSpace",
                "metadata": {
                  "name": "myspace"
                },
                "spec": {
                  "plan": "standard-small",
                  "type": "standard"
                }
              },
              {
                "apiVersion": "enmasse.io/v1beta1",
                "kind": "Address",
                "metadata": {
                  "name": "myspace.myqueue"
                },
                "spec": {
                  "address": "myqueue",
                  "plan": "standard-small-queue",
                  "type": "queue"
                }
              },
              {
                "apiVersion": "user.enmasse.io/v1beta1",
                "kind": "MessagingUser",
                "metadata": {
                  "name": "myspace.user"
                },
                "spec": {
                  "authentication": {
                    "password": "ZW5tYXNzZQ==",
                    "type": "password"
                  },
                  "authorization": [
                    {
                      "addresses": [
                        "myqueue"
                      ],
                      "operations": [
                        "send",
                        "recv"
                      ]
                    }
                  ],
                  "username": "user"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator@sha256:2aaf87224a96aa56dc595e96d8e7ec8d138aaf20240afa25a1e805b405941355
          createdAt: "2019-02-19T00:00:00Z"
          description: Red Hat Integration - AMQ Online provides messaging as a managed
            service on OpenShift
          olm.substitutesFor: amq-online.1.7.4
          operators.openshift.io/capability: '["license-required"]'
          operators.openshift.io/valid-licenses: '["Red Hat AMQ", "Red Hat Integration"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: ""
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A messaging user that can connect to an Address Space
            displayName: Messaging User
            kind: MessagingUser
            name: messagingusers.user.enmasse.io
            version: v1beta1
          - description: A resource representing the available schema of plans and
              authentication services
            displayName: AddressSpaceSchema
            kind: AddressSpaceSchema
            name: addressspaceschemas.enmasse.io
            version: v1beta1
          - description: A group of messaging addresses that can be accessed via the
              same endpoint
            displayName: Address Space
            kind: AddressSpace
            name: addressspaces.enmasse.io
            version: v1beta1
          - description: A messaging address that can be used to send/receive messages
              to/from
            displayName: Address
            kind: Address
            name: addresses.enmasse.io
            version: v1beta1
          - description: Infrastructure configuration template for the standard address
              space type
            displayName: Standard Infra Config
            kind: StandardInfraConfig
            name: standardinfraconfigs.admin.enmasse.io
            version: v1beta1
          - description: Infrastructure configuration template for the brokered address
              space type
            displayName: Brokered Infra Config
            kind: BrokeredInfraConfig
            name: brokeredinfraconfigs.admin.enmasse.io
            version: v1beta1
          - description: Plan describing the resource usage of a given address type
            displayName: Address Plan
            kind: AddressPlan
            name: addressplans.admin.enmasse.io
            version: v1beta2
          - description: Plan describing the capabilities and resource limits of a
              given address space type
            displayName: Address Space Plan
            kind: AddressSpacePlan
            name: addressspaceplans.admin.enmasse.io
            version: v1beta2
          - description: Authentication service configuration available to address
              spaces.
            displayName: Authentication Service
            kind: AuthenticationService
            name: authenticationservices.admin.enmasse.io
            version: v1beta1
          - description: Console Service Singleton for deploying global console.
            displayName: Console Service
            kind: ConsoleService
            name: consoleservices.admin.enmasse.io
            version: v1beta1
        description: "**Red Hat Integration - AMQ Online** provides messaging as a
          managed service on OpenShift.\nWith Red Hat Integration - AMQ Online, administrators
          can configure a cloud-native,\nmulti-tenant messaging service either in
          the cloud or on premise.\nDevelopers can provision messaging using the Red
          Hat Integration - AMQ Online Console.\nMultiple development teams can provision
          the brokers and queues from the\nconsole, without requiring each team to
          install, configure, deploy,\nmaintain, or patch any software. \n\n**The
          core capabilities include:**\n\n  * **Built-in authentication and authorization**
          - Use the built-in authentication service or\n    plug in your own authentication
          service for authentication and\n    authorization of messaging clients.\n\n
          \ * **Self-service messaging for applications** - The service administrator
          deploys\n    and manages the messaging infrastructure, while applications
          can request\n    messaging resources regardless of the messaging infrastructure.\n\n
          \ * **Support for a wide variety of messaging patterns** - Choose between\n
          \   JMS-style messaging with strict guarantees, or messaging that supports\n
          \   a larger number of connections and higher throughput.\n\n## Post-installation
          tasks\n\nTo fully use Red Hat Integration - AMQ Online, you need to create
          a few\ninfrastructure components after the installation, including:\n\n
          \ * An authentication service\n  * Infrastructure configuration for the
          standard and brokered address space\n  * Address and address space plans\n
          \ * (Optional) Create RBAC roles to allow users to discover available plans\n
          \ * (Optional) Create RBAC roles to allow users to self-manage addresses
          and\n    address spaces.\n\nFor a complete overview of how to configure
          Red Hat Integration - AMQ Online, see\n[Configuring Red Hat Integration
          - AMQ Online](https://access.redhat.com/documentation/en-us/red_hat_amq/7.7/html/installing_and_managing_amq_online_on_openshift/configuring-messaging).\n\n###
          Quickstart infrastructure configuration\n\nIf you simply want to get started
          quickly, you can import the following\nYAML by saving the content to a file
          and apply it by running the \n`oc apply -f <file>` command. You can also
          split the content (at the `---` marker)\nand import the single YAML document
          using the Web UI: \n\n~~~yaml\n---\napiVersion: admin.enmasse.io/v1beta1\nkind:
          StandardInfraConfig\nmetadata:\n  name: default\n---\napiVersion: admin.enmasse.io/v1beta2\nkind:
          AddressPlan\nmetadata:\n  name: standard-small-queue\nspec:\n  addressType:
          queue\n  resources:\n    router: 0.01\n    broker: 0.1\n---\napiVersion:
          admin.enmasse.io/v1beta2\nkind: AddressSpacePlan\nmetadata:\n  name: standard-small\nspec:\n
          \ addressSpaceType: standard\n  infraConfigRef: default\n  addressPlans:\n
          \ - standard-small-queue\n  resourceLimits:\n    router: 2.0\n    broker:
          3.0\n    aggregate: 4.0\n---\napiVersion: admin.enmasse.io/v1beta1\nkind:
          AuthenticationService\nmetadata:\n  name: standard-authservice\nspec:\n
          \ type: standard\n  standard:\n    storage:\n      claimName: standard-authservice\n
          \     deleteClaim: true\n      size: 1Gi\n      type: persistent-claim\n~~~\n\n###
          Create RBAC roles to allow users to discover available plans\n\nFor users
          to discover the available plans, cluster-wide roles to read the available\nschema
          can be created.  Import the following YAML by saving the content to a file
          and apply it by running the \n`oc apply -f <file>` command. You can also
          split the content (at the `---` marker)\nand import the single YAML document
          using the Web UI: \n\n~~~yaml\n---\napiVersion: rbac.authorization.k8s.io/v1\nkind:
          ClusterRole\nmetadata:\n  name: enmasse.io:schema\n  labels:\n    app: enmasse\nrules:\n
          \ - apiGroups: [ \"enmasse.io\" ]\n    resources: [ \"addressspaceschemas\"
          ]\n    verbs: [ \"get\", \"list\", \"watch\" ]\n---\napiVersion: rbac.authorization.k8s.io/v1\nkind:
          ClusterRoleBinding\nmetadata:\n  name: \"enmasse.io:schema\"\n  labels:\n
          \   app: enmasse\nroleRef:\n  apiGroup: rbac.authorization.k8s.io\n  kind:
          ClusterRole\n  name: enmasse.io:schema\nsubjects:\n- kind: Group\n  name:
          system:authenticated\n~~~\n\n### Creating infrastructure using the Web UI\n\nYou
          must create a new instance of each of the following custom resources. You
          can\nuse the example data directly, which is provided when using the\nWeb
          UI:\n\n  * *Authentication Service* – Create an authentication service.\n
          \ * *Brokered Infra Config* – Create the broker infrastructure configuration.\n
          \ * *Standard Infra Config* – Create the standard infrastructure\n    configuration.\n\nYou
          must also create at least one address space plan and one address plan.\n\n*Note*:
          The name of the address space plan and address plan is required\nlater when
          creating new addresses. Some examples use specific plan\nnames, which might
          not be available in your environment. You can\ncreate those plans, or edit
          the examples to use different plan names.\n\n## Configuration for messaging
          tenants\n\nWhile service administrators perform the infrastructure configuration,
          the following\nresources are for the actual users of the system, the messaging
          tenants.\n\nYou need to create those resources to satisfy your particular
          use case.\n\n  * *Address space* – A container for addresses\n  * *Address*
          – A messaging address (address, topic, queue, and so on)\n  * *Messaging
          user* – Manages access to an address\n"
        displayName: Red Hat Integration - AMQ Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - amq
        - messaging
        - amqp
        - iot
        - mqtt
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/7.7/html/using_amq_online_on_openshift/index
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-broker@sha256:1ec0437bbd82722148fdbb02dc55682b114c311cd6f521a8bc621a8c1cb4b32b
        - registry.redhat.io/amq7/amq-online-1-address-space-controller@sha256:9acc555c8e869aec7d72f53b60320e1a96cc82d748638e0d50970837229fdbee
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator@sha256:2aaf87224a96aa56dc595e96d8e7ec8d138aaf20240afa25a1e805b405941355
        - registry.redhat.io/amq7/amq-online-1-broker-plugin@sha256:2466a336c0d78b196635de3fad636aeff2d9265839f7271b8ef94f3ba97d9bc0
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator-metadata@sha256:d6d0e71f5451e8255edfff87ef28ba7743fe7057efd53b25bbbd01bf9e1d0307
        - registry.redhat.io/amq7/amq-online-1-console-server-rhel7@sha256:1dcb3d0cc7bc6e84f4f96962ff88849511b7a7686a1f5dbd9300c4c2c8c05e2f
        - registry.redhat.io/amq7/amq-online-1-auth-plugin@sha256:68926f434b2f6ce4d9698938bc3c53d514c21c3f76c73b6b4cdf7fcf51f7cb0d
        - registry.redhat.io/amq7/amq-online-1-console-init@sha256:0970804909b82fdc3d4e7d5d88280e41157d743107de8bfa2d1baa1367543176
        - registry.redhat.io/amq7/amq-interconnect@sha256:5ebd4c4a0ed0db2725ae466550c915531b32933c420344cc2083c616da3f326f
        - registry.redhat.io/amq7/amq-online-1-none-auth-service@sha256:a013fb1806c002b408a7753ff943cee24fbcdf8a657eff1e9582c42b5a7b0844
        - registry.redhat.io/amq7/amq-online-1-topic-forwarder@sha256:de33a701339d91a4e9275f7cf65f917ff75368a59b8ab36dd66c90bc306875aa
        - registry.redhat.io/amq7/amq-online-1-standard-controller@sha256:070349af30cec52fa8efc185fc940077a64bb40e3e36310d7cc6e39ce0971436
        - registry.redhat.io/openshift3/oauth-proxy@sha256:59b20f23c03d0012ec5c95c4725892ee64277c22dedc9d0a90a7b6b0bc80fc72
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6d489a7897bd831ec273034f1ff0e223427a40afd01b9835ebb020a8bf9ddc66
        - registry.redhat.io/redhat-sso-7/sso73-openshift@sha256:18d15980f28f0d0c6b8582131a1f062d84463577512875b5391a612c3d7d1096
        - registry.redhat.io/amq7/amq-online-1-agent@sha256:f98ed8ee97ac59d8fdd40ec8b2c063a5afd360a3e183057c186e7a77a32801ee
        version: 1.7.4+0.1657725339.p
      entries:
      - name: amq-online.1.7.4
        version: 1.7.4
      - name: amq-online.1.7.4-0.1657725339.p
        version: 1.7.4+0.1657725339.p
      - name: amq-online.1.7.3
        version: 1.7.3
      - name: amq-online.1.7.2
        version: 1.7.2
      - name: amq-online.1.7.1
        version: 1.7.1
      - name: amq-online.1.7.1-0.1628610187.p
        version: 1.7.1+0.1628610187.p
      - name: amq-online.1.7.0
        version: 1.7.0
      name: stable
    defaultChannel: stable
    packageName: amq-online
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: tang-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tang-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "daemons.redhat.com/v1alpha1",
                "kind": "TangServer",
                "metadata": {
                  "finalizers": [
                    "finalizer.daemons.tangserver.redhat.com"
                  ],
                  "name": "tangserver",
                  "namespace": "nbde"
                },
                "spec": {
                  "healthScript": "/usr/bin/tangd-health-check",
                  "image": "registry.redhat.io/rhel9/tang",
                  "keyPath": "/var/db/tang",
                  "persistentVolumeClaim": "tangserver-pvc",
                  "replicas": 1,
                  "version": "latest"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:f43c96035f43040b3644e37119a3b35fc433f366d4b636459d1b9b02a05b5d3d
          createdAt: 2023-11-23T12:49:40
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TangServer is the Schema for the tangservers API
            displayName: Tang Server
            kind: TangServer
            name: tangservers.daemons.redhat.com
            version: v1alpha1
        description: NBDE Tang Server operator allows Tang Server deployment on OpenShift
        displayName: NBDE Tang Server
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nbde
        - tang
        links:
        - name: Tang Operator
          url: https://github.com/latchset/tang-operator
        maintainers:
        - email: sarroutb@redhat.com
          name: Sergio Arroutbi Braojos
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/nbde-tang-server/tang-operator-bundle@sha256:a77d39ded03271f2deb8b438abd4328a1846ee0d4886cce14d869ba61f84d600
        - registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:f43c96035f43040b3644e37119a3b35fc433f366d4b636459d1b9b02a05b5d3d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:97cade2c1ee468261aec5400728c8d44de387b459134aec7a4c3b5ec5a335d2c
        version: 1.0.0
      entries:
      - name: tang-operator.v1.0.0
        version: 1.0.0
      name: alpha
    - currentCSV: tang-operator.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "daemons.redhat.com/v1alpha1",
                "kind": "TangServer",
                "metadata": {
                  "finalizers": [
                    "finalizer.daemons.tangserver.redhat.com"
                  ],
                  "name": "tangserver",
                  "namespace": "nbde"
                },
                "spec": {
                  "healthScript": "/usr/bin/tangd-health-check",
                  "image": "registry.redhat.io/rhel9/tang",
                  "keyPath": "/var/db/tang",
                  "persistentVolumeClaim": "tangserver-pvc",
                  "replicas": 1,
                  "version": "latest"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:1cb2f794689817282ac570cacb106d75a2751a1926d89d3b83b619e02d869e5e
          createdAt: 2024-12-04T19:01:27
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TangServer is the Schema for the tangservers API
            displayName: Tang Server
            kind: TangServer
            name: tangservers.daemons.redhat.com
            version: v1alpha1
        description: NBDE Tang Server operator allows Tang Server deployment on OpenShift
        displayName: NBDE Tang Server
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nbde
        - tang
        links:
        - name: Tang Operator
          url: https://github.com/latchset/tang-operator
        maintainers:
        - email: sarroutb@redhat.com
          name: Sergio Arroutbi Braojos
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/nbde-tang-server/tang-operator-bundle@sha256:a6f3a3a8aa52de4441ef3249a76dcff1b6b6defba417a9fdbba37eb458adee04
        - registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:1cb2f794689817282ac570cacb106d75a2751a1926d89d3b83b619e02d869e5e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1172e150fff22c5eeab572f26961f3f53fbf896ee76d08c7503cfe2777c55458
        version: 1.0.3
      entries:
      - name: tang-operator.v1.0.3
        version: 1.0.3
      name: stable
    defaultChannel: alpha
    packageName: tang-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: SAP LinuxLab - Red Hat
      provider-url: https://github.com/sap-linuxlab
    name: sap-hana-express-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sap-hana-express-operator.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "db.sap-redhat.io/v1alpha1",
                "kind": "HanaExpress",
                "metadata": {
                  "name": "hanaexpress-sample"
                },
                "spec": {
                  "credential": {
                    "key": "hxepasswd.json",
                    "name": "hxepasswd"
                  },
                  "pvcSize": "1Gi"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/redhat-sap-cop/sap-hanaexpress-operator:0.1.4
          createdAt: "2023-07-16T20:53:02Z"
          description: Manage the lifecycle of SAP Hana Express
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HanaExpress is the Schema for the hanaexpresses API
            displayName: Hana Express
            kind: HanaExpress
            name: hanaexpresses.db.sap-redhat.io
            version: v1alpha1
        description: Operator for managing the lifecycle of SAP Hana Express on Kubernetes
          platform
        displayName: SAP Hana Express Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Database
        - SAP
        links:
        - name: Sap Hana Express Operator
          url: https://github.com/redhat-sap/sap-hana-express-operator
        maintainers:
        - email: mjiao@redhat.com
          name: RedHat@SAPLinuxLab
        maturity: alpha
        provider:
          name: SAP LinuxLab - Red Hat
          url: https://github.com/sap-linuxlab
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/openshift-community-operators/sap-hana-express-operator@sha256:0fa4f29bd7669690be87a08405bed95d3ead2293a125b28149de2b10b02d2cd6
        - quay.io/redhat-sap-cop/sap-hanaexpress-operator:0.1.4
        version: 1.0.2
      entries:
      - name: sap-hana-express-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: sap-hana-express-operator
    provider:
      name: SAP LinuxLab - Red Hat
      url: https://github.com/sap-linuxlab
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/limitador-operator
    name: limitador-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: limitador-operator.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "limitador.kuadrant.io/v1alpha1",
                "kind": "Limitador",
                "metadata": {
                  "name": "limitador-sample"
                },
                "spec": {
                  "limits": [
                    {
                      "conditions": [
                        "get_toy == 'yes'"
                      ],
                      "max_value": 2,
                      "namespace": "toystore-app",
                      "seconds": 30,
                      "variables": []
                    }
                  ],
                  "listener": {
                    "grpc": {
                      "port": 8081
                    },
                    "http": {
                      "port": 8080
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/limitador-operator:v0.5.0
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/limitador-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Limitador
            name: limitadors.limitador.kuadrant.io
            version: v1alpha1
        description: The Limitador operator installs and maintains limitador instances
        displayName: Limitador
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - rate-limit
        links:
        - name: Limitador Operator
          url: https://github.com/Kuadrant/limitador-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: asnaps@redhat.com
          name: Alex Snaps
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/limitador-operator
        relatedImages:
        - quay.io/kuadrant/limitador:v1.2.0
        - quay.io/openshift-community-operators/limitador-operator@sha256:7aa0a4fe55e5e099e2e6e4c2cd44b9bfeba69d8cfade10500ccba3092fb60dd2
        - quay.io/kuadrant/limitador-operator:v0.5.0
        version: 0.5.0
      entries:
      - name: limitador-operator.v0.5.0
        version: 0.5.0
      - name: limitador-operator.v0.4.0
        version: 0.4.0
      - name: limitador-operator.v0.3.0
        version: 0.3.0
      name: alpha
    - currentCSV: limitador-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "limitador.kuadrant.io/v1alpha1",
                "kind": "Limitador",
                "metadata": {
                  "name": "limitador-sample"
                },
                "spec": {
                  "limits": [
                    {
                      "conditions": [
                        "get_toy == 'yes'"
                      ],
                      "max_value": 2,
                      "name": "toy_get_route",
                      "namespace": "toystore-app",
                      "seconds": 30,
                      "variables": []
                    }
                  ],
                  "listener": {
                    "grpc": {
                      "port": 8081
                    },
                    "http": {
                      "port": 8080
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/limitador-operator:v0.11.0
          createdAt: "2024-10-02T10:46:31Z"
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/limitador-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Limitador
            name: limitadors.limitador.kuadrant.io
            version: v1alpha1
        description: The Limitador operator installs and maintains limitador instances
        displayName: Limitador
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - rate-limit
        links:
        - name: Limitador Operator
          url: https://github.com/Kuadrant/limitador-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: asnaps@redhat.com
          name: Alex Snaps
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/limitador-operator
        relatedImages:
        - quay.io/kuadrant/limitador:v1.6.0
        - quay.io/community-operator-pipeline-prod/limitador-operator@sha256:450f9bf43b57b83e9975a1865981af22e28c725193573354d1180f406887664a
        - quay.io/kuadrant/limitador-operator:v0.11.0
        version: 0.11.0
      entries:
      - name: limitador-operator.v0.11.0
        version: 0.11.0
      - name: limitador-operator.v0.10.0
        version: 0.10.0
      - name: limitador-operator.v0.6.0
        version: 0.6.0
      - name: limitador-operator.v0.5.0
        version: 0.5.0
      - name: limitador-operator.v0.4.0
        version: 0.4.0
      - name: limitador-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: limitador-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/limitador-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: apicurio-registry-3
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-registry-3.v3.1.0-r1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry3",
                "metadata": {
                  "name": "simple"
                },
                "spec": {
                  "app": {
                    "ingress": {
                      "host": "simple-app.apps.cluster.example"
                    }
                  },
                  "ui": {
                    "ingress": {
                      "host": "simple-ui.apps.cluster.example"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/apicurio/apicurio-registry-rhel9-operator@sha256:ce7f4559a6942e9f41205fe6da95fdf333ff108bd41961a5bd62879021f30d20
          createdAt: "2025-10-15"
          description: Deploy and manage Red Hat build of Apicurio Registry 3 on OpenShift.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations",
            "Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/Apicurio/apicurio-registry/tree/main/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry3 represents an instance of Red Hat build
              of Apicurio Registry version 3.
            displayName: Apicurio Registry 3
            kind: ApicurioRegistry3
            name: apicurioregistries3.registry.apicur.io
            version: v1
        description: |
          ## Red Hat build of Apicurio Registry 3

          Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Allows you manage event schemas and API designs using the Apicurio Registry web console, REST API, Maven plug-in, or Java client
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL, MySQL\*, SQL Server\*, in-memory\*
          - Compatible with Confluent APIs
          - Runs on a lightweight Quarkus platform

          _Note: Storage options marked with * have not yet been tested by Red Hat for production deployments._

          ## Red Hat build of Apicurio Registry 3 Operator

          Provides a quick and easy way to deploy and manage Red Hat build of Apicurio Registry 3 on OpenShift.

          **Features**
          - Supports installation and configuration of Red Hat build of Apicurio Registry 3
          - Perform a rolling upgrade of Red Hat build of Apicurio Registry 3

          ## Prerequisites

          This operator does not deploy storage for Red Hat build of Apicurio Registry 3. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Red Hat build of Apicurio Registry 3 and Apicurio Registry 3 Operator are licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry/blob/main/LICENSE)
        displayName: Red Hat build of Apicurio Registry 3
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        - email: jsenko+apicurio@redhat.com
          name: Jakub Senko
        - email: ewittman+apicurio@redhat.com
          name: Eric Wittmann
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/apicurio/apicurio-registry-ui-rhel9@sha256:9daa045d14192754950aabb4c0a741f29ff4f0f431cb19c12bd1268ad21de639
        - registry.redhat.io/apicurio/apicurio-registry-3-operator-bundle@sha256:0c29e835e253ff6bc0dfb2a9ca01e94756c8995f3396ddca07dde95c9e16e633
        - registry.redhat.io/apicurio/apicurio-registry-rhel9-operator@sha256:ce7f4559a6942e9f41205fe6da95fdf333ff108bd41961a5bd62879021f30d20
        - registry.redhat.io/apicurio/apicurio-registry-rhel9@sha256:fb3fdbb49017c86c25058c824d833be061cd4f51cfe6b43ab5d7f799f0a87e78
        version: 3.1.0-r1
      entries:
      - name: apicurio-registry-3.v3.1.0-r1
        version: 3.1.0-r1
      - name: apicurio-registry-3.v3.0.15-r1
        version: 3.0.15-r1
      - name: apicurio-registry-3.v3.0.9-r3
        version: 3.0.9-r3
      - name: apicurio-registry-3.v3.0.9-r2
        version: 3.0.9-r2
      - name: apicurio-registry-3.v3.0.9-r1
        version: 3.0.9-r1
      - name: apicurio-registry-3.v3.0.7-r2
        version: 3.0.7-r2
      - name: apicurio-registry-3.v3.0.7-r1
        version: 3.0.7-r1
      - name: apicurio-registry-3.v3.0.6-beta.r1
        version: 3.0.6-beta.r1
      - name: apicurio-registry-3.v3.0.6-beta.r1-0.1740495889.p
        version: 3.0.6-beta.r1+0.1740495889.p
      - name: apicurio-registry-3.v3.0.6-beta
        version: 3.0.6-beta
      name: 3.x
    defaultChannel: 3.x
    packageName: apicurio-registry-3
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/stolostron/multicluster-global-hub
    name: multicluster-global-hub-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-global-hub-operator.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "global-hub.open-cluster-management.io/v1alpha1",
                "kind": "ManagedClusterMigration",
                "metadata": {
                  "name": "migration-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha1",
                "kind": "MulticlusterGlobalHubAgent",
                "metadata": {
                  "name": "multiclusterglobalhubagent"
                },
                "spec": {
                  "transportConfigSecretName": "transport-config"
                }
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha4",
                "kind": "MulticlusterGlobalHub",
                "metadata": {
                  "name": "multiclusterglobalhub"
                },
                "spec": {
                  "dataLayer": {
                    "postgres": {
                      "retention": "18m"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-operator-globalhub-1-6@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
          createdAt: "2025-08-27T07:10:21Z"
          description: Manages the installation and upgrade of the Multicluster Global
            Hub.
          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: "true"
          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"
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1alpha4",
            "kind":"MulticlusterGlobalHub","metadata":{"name":"multiclusterglobalhub","namespace":"multicluster-global-hub"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-global-hub
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/multicluster-global-hub
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterMigration is a global hub resource that allows
              you to migrate managed clusters from one hub to another
            displayName: Managed Cluster Migration
            kind: ManagedClusterMigration
            name: managedclustermigrations.global-hub.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHubAgent is the Schema for the multiclusterglobalhubagents
              API
            displayName: Multicluster Global Hub Agent
            kind: MulticlusterGlobalHubAgent
            name: multiclusterglobalhubagents.operator.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHub defines the configuration for an instance
              of the multiCluster global hub
            displayName: Multicluster Global Hub
            kind: MulticlusterGlobalHub
            name: multiclusterglobalhubs.operator.open-cluster-management.io
            version: v1alpha4
        description: |
          The Multicluster Global Hub Operator contains the components of multicluster global hub. The Operator deploys all of the required components for global multicluster management. The components include `multicluster-global-hub-manager` and `multicluster-global-hub-grafana` in the global hub cluster and `multicluster-global-hub-agent` in the managed hub clusters.
          The Operator also deploys the strimzi kafka and crunchy postgres if you do not bring your own kafka and postgres.

          ## Prerequisites
          - Red Hat Advanced Cluster Management for Kubernetes needs to be installed. You can find the support matrix in the official document.

          ## How to Install
          Install the Multicluster Global Hub Operator by following the instructions that are displayed after you select the Install button.
          A pod will be created in `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                             READY   STATUS    RESTARTS   AGE
          multicluster-global-hub-operator-5ccbbc878d-98fdp                1/1     Running   0          19s
          ```
          The operator is now providing new Custom Resources Definitions: `multiclusterglobalhubs.operator.open-cluster-management.io`

          ## Using the Multicluster Global Hub Operator
          After installed the operator, create an instance of the MulticlusterGlobalHub resource to instantiate the Multicluster Global Hub.
          Once an instance of the MulticlusterGlobalHub is created, the following pods are created in the `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                    READY   STATUS    RESTARTS   AGE
          kafka-entity-operator-68dcd446f4-pg257                  3/3     Running   0          19m
          kafka-kraft-0                                           1/1     Running   0          20m
          kafka-kraft-1                                           1/1     Running   0          20m
          kafka-kraft-2                                           1/1     Running   0          20m
          multicluster-global-hub-grafana-5b7cfb6876-5rcnn        2/2     Running   0          19m
          multicluster-global-hub-grafana-5b7cfb6876-wq99v        2/2     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-hzfvw        1/1     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-wbkzl        1/1     Running   0          19m
          multicluster-global-hub-operator-768bd5bd4f-59xjd       1/1     Running   0          22m
          multicluster-global-hub-postgresql-0                    2/2     Running   0          22m
          strimzi-cluster-operator-v0.43.0-6fff49d5b5-5j22r       1/1     Running   0          22m
          ```
          ## Documentation
          For documentation about installing and using the Multicluster GlobalHub Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [Multicluser GlobalHub Documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html-single/multicluster_global_hub/index#doc-wrapper) in the Red Hat Advanced Cluster Management
          documentation.

          ## Support & Troubleshooting
          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: Multicluster Global Hub Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multicluster-global-hub
        - multiple-hubs
        links:
        - name: Multicluster Global Hub Operator
          url: https://github.com/stolostron/multicluster-global-hub
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: stable
        provider:
          name: Red Hat, Inc
          url: https://github.com/stolostron/multicluster-global-hub
        relatedImages:
        - quay.io/community-operator-pipeline-prod/multicluster-global-hub-operator:1.6.0
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/glo-grafana-globalhub-1-6@sha256:870866e86ce870ad8d97ee060483e3c9042076f4ec987d4769e09d8daddd963d
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-agent-globalhub-1-6@sha256:903aea3e61d68f13d60c33f98bc9fa220eb8426ccedb43948015b6dfd50e8cf0
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-manager-globalhub-1-6@sha256:98273949e754fc81aa9240b507ab13e12fe2e9ecb6dafe601756567af18a077c
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-operator-globalhub-1-6@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/postgres-exporter-globalhub-1-6@sha256:2a68afbc8b4208e8aa16e7f0a8266246a16a2e97d4d6f930318888fc1e0c7306
        - quay.io/stolostron/postgresql-16@sha256:db2f73275f9cc0f2d262fadb8e8a5da72b089f9d22f7c859bb1364d9f9a8b622
        version: 1.6.0
      entries:
      - name: multicluster-global-hub-operator.v1.6.0
        version: 1.6.0
      name: release-1.6
    defaultChannel: release-1.6
    packageName: multicluster-global-hub-operator
    provider:
      name: Red Hat, Inc
      url: https://github.com/stolostron/multicluster-global-hub
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Internal
      provider-url: redhat.com
    name: l5-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: l5-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pets.bestie.com/v1",
                "kind": "Bestie",
                "metadata": {
                  "name": "bestie"
                },
                "spec": {
                  "image": "quay.io/opdev/bestie",
                  "maxReplicas": 10,
                  "size": 3,
                  "version": "1.3"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Application Runtime
          certified: "false"
          containerImage: quay.io/opdev/l5-operator:v0.0.3
          createdAt: "2023-06-27T16:56:10Z"
          description: L5 Operator is a demo operator that aims to demonstrate level
            5 capabilities for web applications.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          relatedImages: quay.io/opdev/bestie@sha256:0e99ada2b1de19043845dd9076789584aeddc2646402e5f0987dd00424be1ee7
          repository: https://github.com/opdev/l5-operator-demo
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Bestie is the Schema for the besties API.
            displayName: Bestie
            kind: Bestie
            name: besties.pets.bestie.com
            version: v1
        description: |
          ## Usage
          The L5 operator is meant to demonstrate a minimum viable prototype of all capability levels outilned in the operator framework. The L5 operator is compatible with both Kubernetes and OpenShift clusters. When running on vanilla kubernetes a few prerequisites need to be kept in mind which may not be available out of the box. These include an ingress controller and a prometheus operator for level 4 capability. The L5 operator also depends on the Crunchy Data PostgreSQL operator. On openshift when installing via the Operator Lifecycle Manager, this will automatically be installed when installing the operator via the embdeded operator hub. The Operator Lifecycle Manager is also available for vanilla kubernetes however it may not be installed out of the box. In this case the Crunchy Data PostgreSQL operator must be installed manually. The Crunchy Data PostgreSQL operator can be installed on vanilla kuberentes using the [instructions provided by Crunchy Data](https://access.crunchydata.com/documentation/postgres-operator/4.7.5/installation/postgres-operator/) More documentation and examples can be found on [github](https://github.com/opdev/l5-operator-demo).
        displayName: L5 Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - l5-operator
        links:
        - name: L5 Operator
          url: https://opdev.github.io/l5-operator-demo/
        maintainers:
        - email: partnereng@redhat.com
          name: OpDev Team
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat Internal
          url: redhat.com
        relatedImages:
        - quay.io/opdev/l5-operator:v0.0.3
        - quay.io/openshift-community-operators/l5-operator@sha256:e4cb13801a80753c99a47f009ca0a29416b3e04afe5314d07d97c2464a6f0d75
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.0.3
      entries:
      - name: l5-operator.v0.0.3
        version: 0.0.3
      - name: l5-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: l5-operator
    provider:
      name: Red Hat Internal
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: fence-agents-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fence-agents-remediation.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediation",
                "metadata": {
                  "name": "worker-1"
                },
                "spec": {
                  "agent": "fence_ipmilan",
                  "nodeSecretNames": {
                    "master-0": "fence-agents-credentials-master0",
                    "master-1": "fence-agents-credentials-master1",
                    "master-2": "fence-agents-credentials-master2",
                    "worker-0": "fence-agents-credentials-worker0",
                    "worker-1": "fence-agents-credentials-worker1",
                    "worker-2": "fence-agents-credentials-worker2"
                  },
                  "nodeparameters": {
                    "--ipport": {
                      "master-0": "6230",
                      "master-1": "6231",
                      "master-2": "6232",
                      "worker-0": "6233",
                      "worker-1": "6234",
                      "worker-2": "6235"
                    }
                  },
                  "remediationStrategy": "ResourceDeletion",
                  "retrycount": 5,
                  "retryinterval": "5s",
                  "sharedSecretName": "fence-agents-credentials-shared",
                  "sharedparameters": {
                    "--action": "reboot",
                    "--ip": "192.168.111.1",
                    "--lanplus": "",
                    "--username": "admin"
                  },
                  "timeout": "60s"
                }
              },
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediationTemplate",
                "metadata": {
                  "name": "fenceagentsremediationtemplate-default"
                },
                "spec": {
                  "template": {
                    "spec": {
                      "agent": "fence_ipmilan",
                      "nodeSecretNames": {
                        "master-0": "fence-agents-credentials-master0",
                        "master-1": "fence-agents-credentials-master1",
                        "master-2": "fence-agents-credentials-master2",
                        "worker-0": "fence-agents-credentials-worker0",
                        "worker-1": "fence-agents-credentials-worker1",
                        "worker-2": "fence-agents-credentials-worker2"
                      },
                      "nodeparameters": {
                        "--ipport": {
                          "master-0": "6230",
                          "master-1": "6231",
                          "master-2": "6232",
                          "worker-0": "6233",
                          "worker-1": "6234",
                          "worker-2": "6235"
                        }
                      },
                      "remediationStrategy": "ResourceDeletion",
                      "retrycount": 5,
                      "retryinterval": "5s",
                      "sharedSecretName": "fence-agents-credentials-shared",
                      "sharedparameters": {
                        "--action": "reboot",
                        "--ip": "192.168.111.1",
                        "--lanplus": "",
                        "--username": "admin"
                      },
                      "timeout": "60s"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: ""
          createdAt: "2025-09-08 09:19:00"
          description: Fence Agents Remediation Operator uses well-known agents to
            fence and remediate unhealthy nodes. The remediation includes rebooting
            the unhealthy node using a fence agent, and then evicting workloads from
            the unhealthy node.
          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: "true"
          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.skipRange: '>=0.5.0 <0.6.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/fence-agents-remediation
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FenceAgentsRemediation is the Schema for the fenceagentsremediations
              API
            displayName: Fence Agents Remediation
            kind: FenceAgentsRemediation
            name: fenceagentsremediations.fence-agents-remediation.medik8s.io
            version: v1alpha1
          - description: FenceAgentsRemediationTemplate is the Schema for the fenceagentsremediationtemplates
              API
            displayName: Fence Agents Remediation Template
            kind: FenceAgentsRemediationTemplate
            name: fenceagentsremediationtemplates.fence-agents-remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Fence Agents Remediation (FAR) is a Kubernetes operator that uses well-known agents to fence and remediate unhealthy nodes.
          The remediation includes rebooting the unhealthy node using a fence agent and then evicting workloads from the unhealthy node.

          ### Compatibility
          FAR is one of the remediator operators by [Medik8s](https://www.medik8s.io/remediation/remediation/),
          such as [Self Node Remediation](https://github.com/medik8s/self-node-remediation) and [Machine Deletion Remediation](https://github.com/medik8s/machine-deletion-remediation),
          that were designed to run with the Node HealthCheck Operator [(NHC)](https://github.com/medik8s/node-healthcheck-operator) which detects an unhealthy node and creates remediation CR.
          It is recommended to use FAR with NHC for an easier and smoother experience by fully automating the remediation process, but it can be used as a standalone remediator for the more experienced user.

          ### Advantages
          - Robustness - FAR has direct feedback from the traditional Application Programming Interface (API) call (e.g., IPMI) about the result of the fence action without using the Kubernetes API.
          - Speed - FAR is rapid since it can reboot a node and receive an acknowledgment from the API call while other remediators might need to wait a safe time till they can expect the node to be rebooted.
          - Diversity - FAR includes several fence agents from a large known set of upstream fencing agents for bare metal servers, virtual machines, cloud platforms, etc.
          - Adjustability - FAR allows to set up different parameters for running the API call that remediates the node.
        displayName: Fence Agents Remediation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - fencing
        - auto-healing
        - recovery
        - high-availability
        - fence-agents
        - fence-agents-remediation
        - remediation
        - far
        - baremetal
        links:
        - name: Fence Agents Remediation
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.8/html/remediation_fencing_and_maintenance/about-remediation-fencing-maintenance
        - name: Source Code
          url: https://www.github.com/medik8s/fence-agents-remediation
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/workload-availability/fence-agents-remediation-operator-bundle@sha256:6c0899610a78d2737c2096552e5146d9d5602b5568fab24b51b409dbffcf1961
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:d37a6d10b0fa07370066a31fdaffe2ea553faf4e4e98be7fcef5ec40d62ffe29
        - registry.redhat.io/workload-availability/fence-agents-remediation-rhel9-operator@sha256:eef1a298718650a22a3da4a07c140ce21b6f287d87af79801610317fa8f63d52
        version: 0.6.0
      entries:
      - name: fence-agents-remediation.v0.6.0
        version: 0.6.0
      - name: fence-agents-remediation.v0.5.1
        version: 0.5.1
      - name: fence-agents-remediation.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: fence-agents-remediation
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: runtimes-inventory-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runtimes-inventory-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          containerImage: registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-rhel9-operator@sha256:a4e12329119133ab09754489d29110f13f1793b01e30b5d19b9ab0b9525b7360
          createdAt: 15 Dec 2025, 21:14
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/RedHatInsights/runtimes-inventory-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: Operator support for Runtimes Inventory
        displayName: Runtimes Inventory Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - insights
        - java
        - runtimes
        - red hat
        links:
        - name: Runtimes Inventory Operator
          url: https://github.com/RedHatInsights/runtimes-inventory-operator
        maintainers:
        - email: ebaron@redhat.com
          name: Elliott Baron
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-agent-init-rhel9@sha256:6aede889f665445ea2f9ad3584f4b7004c6bfda8e6b1b4b3771d56da56347e2e
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-rhel9-operator@sha256:a4e12329119133ab09754489d29110f13f1793b01e30b5d19b9ab0b9525b7360
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-operator-bundle@sha256:b5f0ff2579eaa5f85452b009a2f7735238f87a05c3f7d503218807f0741c1a9f
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        version: 1.0.0
      entries:
      - name: runtimes-inventory-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: runtimes-inventory-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: authorino-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: authorino-operator.v1.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "authorino.kuadrant.io/v1beta2",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "authorino.kuadrant.io/v1beta3",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/authorino-rhel9-operator@sha256:0b60bb9afa31a549d0eac9331f6024e461ab3aed5b1fb2d461dd4db8ddeebeb9
          createdAt: 25 Sep 2025, 09:37
          description: Enables authentication and authorization for Gateways and applications
            in a Gateway API network.
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta2
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta3
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: The operator to manage instances of Authorino
        displayName: Authorino Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: Authorino Operator
          url: https://github.com/Kuadrant/authorino-operator
        - name: Authorino
          url: https://github.com/Kuadrant/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhcl-1/authorino-operator-bundle@sha256:fc75af6e706a8d2e3ca9e4206baa64745a4d2ff7a0ea8bae8e187ea5b79c7e4d
        - registry.redhat.io/rhcl-1/authorino-rhel9-operator@sha256:0b60bb9afa31a549d0eac9331f6024e461ab3aed5b1fb2d461dd4db8ddeebeb9
        - registry.redhat.io/rhcl-1/authorino-rhel9@sha256:be77901b29529646bbec6baf0d1a7c350be0db291b07a845f353181c25d89f78
        version: 1.2.4
      entries:
      - name: authorino-operator.v1.2.4
        version: 1.2.4
      - name: authorino-operator.v1.2.3
        version: 1.2.3
      - name: authorino-operator.v1.2.2
        version: 1.2.2
      - name: authorino-operator.v1.2.1
        version: 1.2.1
      - name: authorino-operator.v1.1.3
        version: 1.1.3
      - name: authorino-operator.v1.1.2
        version: 1.1.2
      - name: authorino-operator.v1.1.1
        version: 1.1.1
      - name: authorino-operator.v1.1.0
        version: 1.1.0
      - name: authorino-operator.v1.0.2
        version: 1.0.2
      name: stable
    - currentCSV: authorino-operator.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "authorino.kuadrant.io/v1beta1",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "hosts": [
                    "my-api.io"
                  ],
                  "identity": [
                    {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "in": "authorization_header",
                        "keySelector": "APIKEY"
                      },
                      "name": "api-key-users"
                    }
                  ]
                }
              },
              {
                "apiVersion": "authorino.kuadrant.io/v1beta2",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/3scale-tech-preview/authorino-rhel9-operator@sha256:eb574781cf39917f8f5d9e5c806f520534601f819ee1ebcbb751832da8938008
          createdAt: "2024-11-08T11:06:33Z"
          description: Authorino
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta1
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta2
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: |-
          [Authorino](https://docs.kuadrant.io/authorino/) is Red Hat's Kubernetes-native lightweight external authorization service for tailor-made Zero Trust API security.

          Install this Red Hat official distribution of [Authorino Operator](https://docs.kuadrant.io/authorino-operator/) to manage instances of Authorino in this cluster.

          The current state of this distribution of the operator is: **_Technical Preview_**.

          The Community version of Authorino Operator, based on upstream public images, is available in [OperatorHub.io](https://operatorhub.io/operator/authorino-operator).

          ## Getting started

          After installing the Operator, request an instance of the external authorization service by creating an `Authorino` custom resource.

          **Minimal example (namespaced)**

          ```yaml
          apiVersion: operator.authorino.kuadrant.io/v1beta1
          kind: Authorino
          metadata:
            name: authorino
          spec:
            listener:
              tls:
                enabled: false
            oidcServer:
              tls:
                enabled: false
          ```

          **Extended example**

          ```yaml
          apiVersion: operator.authorino.kuadrant.io/v1beta1
          kind: Authorino
          metadata:
            name: authorino
          spec:
            clusterWide: true
            authConfigLabelSelectors: environment=production
            secretLabelSelectors: authorino.kuadrant.io/component=authorino,environment=production

            replicas: 2

            evaluatorCacheSize: 2 # mb

            logLevel: info
            logMode: production

            listener:
              ports:
                grpc: 50001
                http: 5001
              tls:
                certSecretRef:
                  name: authorino-server-cert # secret must contain `tls.crt` and `tls.key` entries
              timeout: 2

            oidcServer:
              port: 8083
              tls:
                certSecretRef:
                  name: authorino-oidc-server-cert # secret must contain `tls.crt` and `tls.key` entries

            metrics:
              port: 8080
              deep: true

            healthz:
              port: 8081

            tracing:
              endpoint: rpc://otel-collector.observability.svc.cluster.local:4317
              insecure: true

            volumes:
              items:
                - name: keycloak-tls-cert
                  mountPath: /etc/ssl/certs
                  configMaps:
                    - keycloak-tls-cert
                  items: # details to mount the k8s configmap in the authorino pods
                    - key: keycloak.crt
                      path: keycloak.crt
              defaultMode: 420
          ```

          ### Cluster-wide vs Namespaced

          Namespaced instances only watch auth resources (`AuthConfig` and `Secrets`) created in the same namespace as the Authorino service. Use this mode for dedicated instances that do not require elevated privileges.

          Cluster-wide instances watch resources across the entire cluster (all namespaces.) Deploying and running Authorino in this mode requires elevated privileges.

          ### Multi-tenancy

          Use the `authConfigLabelSelectors` field of the `Authorino` custom resource to narrow the scope of the Authorino instance.

          Only `AuthConfig` custom resources whose labels match the value of this field will be handled by the Authorino instance.

          ## Protect a host

          To protect a host, create an `AuthConfig` custom resource for the host. E.g.:

          ```yaml
          apiVersion: authorino.kuadrant.io/v1beta2
          kind: AuthConfig
          metadata:
            name: my-api-protection
          spec:
            hosts:
            - my-api.io

            authentication:
              "keycloak":
                jwt:
                  issuerUrl: https://keycloak.keycloak.svc.cluster.local:8080/realms/my-realm

            authorization:
              "k8s-rbac":
                kubernetesSubjectAccessReview:
                  user:
                    selector: auth.identity.user.username
                  resourceAttributes:
                    resource:
                      value: my-api
                    verb:
                      selector: request.method
                cache:
                  key:
                    selector: auth.identity.user.username
                  ttl: 30
              "after-2am-only":
                rego: |
                  allow {
                    [hour, _, _] := time.clock(time.now_ns())
                    hour >= 2
                  }
          ```

          Make sure all requests to the host are fisrt checked with the Authorino instance, by configuring an Envoy proxy for external authz:

          ```yaml
          clusters:
          - name: my-api
            …
          - name: authorino
            connect_timeout: 0.25s
            type: STRICT_DNS
            lb_policy: ROUND_ROBIN
            http2_protocol_options: {}
            load_assignment:
              cluster_name: authorino
              endpoints:
              - lb_endpoints:
                - endpoint:
                    address:
                      socket_address:
                        address: authorino-authorino-authorization
                        port_value: 50051
          listeners:
          - filter_chains:
            - filters:
              name: envoy.http_connection_manager
              typed_config:
                "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
                use_remote_address: true
                route_config:
                  name: my-api-config
                  virtual_hosts:
                  - name: my-api-vs
                    domains:
                    - my-api.io
                    routes:
                    - match:
                        prefix: /
                      route:
                        cluster: my-api
                http_filters:
                - name: envoy.filters.http.ext_authz
                  typed_config:
                    "@type": type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz
                    transport_api_version: V3
                    failure_mode_allow: false
                    include_peer_certificate: true
                    grpc_service:
                      envoy_grpc:
                        cluster_name: authorino
                      timeout: 1s
          ```

          ...or, if using Istio, by creating an [`AuthorizationPolicy`](https://istio.io/latest/docs/reference/config/security/authorization-policy/#AuthorizationPolicy) custom resource. Use `action: CUSTOM` in the resource and the Authorino authorization service configured in the mesh extension provider settings.

          ## Features

          **Authentication**

          * JWT validation (with OpenID Connect Discovery)
          * OAuth 2.0 Token Introspection (opaque tokens)
          * Kubernetes TokenReview (ServiceAccount tokens)
          * API key authentication
          * X.509 client certificate authentication
          * Anonymous access
          * Proxy-handled (authentication performed by the proxy)

          **Authorization**

          * Built-in simple pattern matching (e.g. JWT claims, request attributes checking)
          * OPA policies (inline Rego and fetch from external registry)
          * Kubernetes SubjectAccessReview (resource and non-resource attributes)
          * Authzed SpiceDB

          **External metadata**

          * HTTP request
          * OpenID Connect User Info
          * UMA-protected resource attributes

          **Custom responses**

          * Header injection (Festival Wristbands tokens, JSON, plain text)
          * Envoy Dynamic Metadata
          * Custom HTTP response (status code, headers, messages, body, etc)

          **Callbacks**

          * HTTP webhooks

          **Caching**

          * OpenID Connect and User-Managed Access configs
          * JSON Web Keys (JWKs) and JSON Web Key Sets (JWKS)
          * Access tokens
          * External metadata
          * Precompiled Rego policies
          * Policy evaluation

          Check out the full [Feature Specification](https://docs.kuadrant.io/authorino/docs/features/) and how-to guides in the [Kuadrant Docs](https://docs.kuadrant.io) website.
        displayName: Red Hat - Authorino (Technical Preview)
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: GitHub
          url: https://github.com/kuadrant/authorino-operator
        - name: Documentation
          url: https://docs.kuadrant.io/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:3a398158d10018bfac5df291d6998b513cf9a30e5477bcaefddcf66d229627c7
        - registry.redhat.io/3scale-tech-preview/authorino-operator-bundle@sha256:75cb78f7a40d3daedbc11cbbb5505e029328b4120f0de11d4f6423de943e92d8
        - registry.redhat.io/3scale-tech-preview/authorino-rhel9-operator@sha256:eb574781cf39917f8f5d9e5c806f520534601f819ee1ebcbb751832da8938008
        - registry.redhat.io/3scale-tech-preview/authorino-rhel9@sha256:a473dae20e71e3e813ac30ba978f2ab3c5e19d7d39b501ae9103dca892107c87
        version: 1.1.3
      entries:
      - name: authorino-operator.v1.1.3
        version: 1.1.3
      - name: authorino-operator.v1.1.2
        version: 1.1.2
      - name: authorino-operator.v1.1.1
        version: 1.1.1
      - name: authorino-operator.v1.1.0
        version: 1.1.0
      - name: authorino-operator.v1.0.2
        version: 1.0.2
      name: tech-preview-v1
    defaultChannel: stable
    packageName: authorino-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-druid-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: druid-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/druid-operator@sha256:ff1a696b13db48980e86003ba1f439b8996b08e7f5c0f527edd3d3dd4ca858f9
          description: Stackable Operator for Apache Druid
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/druid-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for DruidClusterSpec via `CustomResource`
            displayName: druidclusters.druid.stackable.tech
            kind: DruidCluster
            name: druidclusters.druid.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Druid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - druid
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - registry.connect.redhat.com/stackable/stackable-apache-druid-operator@sha256:2167a293d682cad01573dbfefb91c0a4cf2feb18566922893d3e1f12dee10854
        - quay.io/stackable/druid-operator@sha256:ff1a696b13db48980e86003ba1f439b8996b08e7f5c0f527edd3d3dd4ca858f9
        version: 25.11.0
      entries:
      - name: druid-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-druid-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Vertica
      provider-url: http://www.vertica.com
    name: verticadb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: verticadb-operator.v1.11.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "EventTrigger",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "verticadb-operator",
                    "app.kubernetes.io/instance": "eventtrigger-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "eventtrigger",
                    "app.kubernetes.io/part-of": "verticadb-operator"
                  },
                  "name": "eventtrigger-sample"
                },
                "spec": {
                  "matches": [
                    {
                      "condition": {
                        "status": "True",
                        "type": "DBInitialized"
                      }
                    }
                  ],
                  "references": [
                    {
                      "object": {
                        "apiVersion": "vertica.com/v1beta1",
                        "kind": "VerticaDB",
                        "name": "verticadb-sample"
                      }
                    }
                  ],
                  "template": {
                    "metadata": {
                      "generateName": "create-user-table-"
                    },
                    "spec": {
                      "template": {
                        "spec": {
                          "containers": [
                            {
                              "command": [
                                "/opt/vertica/bin/vsql",
                                "-h",
                                "verticadb-sample-defaultsubcluster",
                                "-c",
                                "CREATE TABLE T1 (C1 INT);"
                              ],
                              "image": "vertica/vertica-k8s:latest",
                              "name": "main"
                            }
                          ],
                          "restartPolicy": "OnFailure"
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaAutoscaler",
                "metadata": {
                  "name": "verticaautoscaler-sample"
                },
                "spec": {
                  "serviceName": "defaultsubcluster",
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaDB",
                "metadata": {
                  "name": "verticadb-sample"
                },
                "spec": {
                  "communal": {
                    "endpoint": "https://s3.amazonaws.com"
                  },
                  "image": "vertica/vertica-k8s:23.3.0-0-minimal",
                  "subclusters": [
                    {
                      "name": "default_subcluster",
                      "size": 3
                    }
                  ]
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          containerImage: docker.io/vertica/verticadb-operator:1.11.2
          createdAt: "2023-08-02T11:29:39Z"
          description: Operator that manages a Vertica Eon Mode database.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/vertica/vertica-kubernetes
          support: Vertica
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EventTrigger is the Schema for the eventtriggers API
            displayName: Event Trigger
            kind: EventTrigger
            name: eventtriggers.vertica.com
            version: v1beta1
          - description: VerticaAutoscaler is a CR that allows you to autoscale one
              or more subclusters in a VerticaDB.
            displayName: Vertica Autoscaler
            kind: VerticaAutoscaler
            name: verticaautoscalers.vertica.com
            version: v1beta1
          - description: VerticaDB is the CR that defines a Vertica Eon mode cluster
              that is managed by the verticadb-operator.
            displayName: Vertica DB
            kind: VerticaDB
            name: verticadbs.vertica.com
            version: v1beta1
        description: |-
          ### What is Vertica?
          Vertica is a unified analytics platform, based on a massively scalable architecture with the broadest set of analytical functions spanning event and time series, pattern matching, geospatial and end-to-end in-database machine learning. Vertica enables you to easily apply these powerful functions to the largest and most demanding analytical workloads, arming you and your customers with predictive business insights faster than any analytics data warehouse in the market. Vertica provides a unified analytics platform across major public clouds and on-premises data centers and integrates data in cloud object storage and HDFS without forcing you to move any of your data.

          ### What does this operator do?
          This operator manages a Vertica Eon Mode database, and automates the following administrative tasks:

          * Installing Vertica
          * Creating and reviving a Vertica database
          * Restarting and rescheduling DOWN pods to maintain quorum
          * Upgrading Vertica to a new version while keeping the database online
          * Subcluster scaling, both manually and automatically with the Horizontal Pod Autoscaler
          * Service management and health monitoring for pods
          * Load balancing for internal and external traffic
          * Expose a metrics endpoint to integrate with Prometheus to monitor the operator's health

          For a brief overview on how to create a cluster, see the [Vertica GitHub repository](https://github.com/vertica/vertica-kubernetes). For an in-depth look at Vertica on Kubernetes, see the [Vertica documentation](https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm).
        displayName: VerticaDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - database
        - vertica
        links:
        - name: Documentation
          url: https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm
        - name: Vertica Container Images
          url: https://hub.docker.com/u/vertica
        maintainers:
        - email: matt.spilchen@vertica.com
          name: Matt Spilchen
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Vertica
          url: http://www.vertica.com
        relatedImages:
        - docker.io/vertica/verticadb-operator:1.11.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/openshift-community-operators/verticadb-operator@sha256:b7691da906474a8ab829966bb3da4a846eaf12909c97bd0d9cb6a1e5e7ff6c03
        version: 1.11.2
      entries:
      - name: verticadb-operator.v1.11.2
        version: 1.11.2
      - name: verticadb-operator.v1.11.1
        version: 1.11.1
      - name: verticadb-operator.v1.11.0
        version: 1.11.0
      - name: verticadb-operator.v1.10.2
        version: 1.10.2
      - name: verticadb-operator.v1.10.1
        version: 1.10.1
      - name: verticadb-operator.v1.10.0
        version: 1.10.0
      - name: verticadb-operator.v1.9.0
        version: 1.9.0
      - name: verticadb-operator.v1.8.0
        version: 1.8.0
      - name: verticadb-operator.v1.7.0
        version: 1.7.0
      - name: verticadb-operator.v1.6.0
        version: 1.6.0
      - name: verticadb-operator.v1.5.0
        version: 1.5.0
      - name: verticadb-operator.v1.4.0
        version: 1.4.0
      - name: verticadb-operator.v1.3.1
        version: 1.3.1
      - name: verticadb-operator.v1.3.0
        version: 1.3.0
      - name: verticadb-operator.v1.2.0
        version: 1.2.0
      name: stable
    - currentCSV: verticadb-operator.v25.4.0-0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vertica.com/v1",
                "kind": "VerticaAutoscaler",
                "metadata": {
                  "name": "verticaautoscaler-sample"
                },
                "spec": {
                  "customAutoscaler": {},
                  "scalingGranularity": "Subcluster",
                  "serviceName": "default-subcluster",
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1",
                "kind": "VerticaDB",
                "metadata": {
                  "name": "verticadb-sample"
                },
                "spec": {
                  "communal": {
                    "endpoint": "https://s3.amazonaws.com"
                  },
                  "image": "opentext/vertica-k8s:24.1.0-0-minimal",
                  "subclusters": [
                    {
                      "name": "default_subcluster",
                      "size": 3
                    }
                  ]
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "EventTrigger",
                "metadata": {
                  "name": "eventtrigger-sample"
                },
                "spec": {
                  "matches": [
                    {
                      "condition": {
                        "status": "True",
                        "type": "DBInitialized"
                      }
                    }
                  ],
                  "references": [
                    {
                      "object": {
                        "apiVersion": "vertica.com/v1beta1",
                        "kind": "VerticaDB",
                        "name": "verticadb-sample"
                      }
                    }
                  ],
                  "template": {
                    "metadata": {
                      "generateName": "create-user-table-"
                    },
                    "spec": {
                      "template": {
                        "spec": {
                          "containers": [
                            {
                              "command": [
                                "/opt/vertica/bin/vsql",
                                "-h",
                                "verticadb-sample-defaultsubcluster",
                                "-c",
                                "CREATE TABLE T1 (C1 INT);"
                              ],
                              "image": "opentext/vertica-k8s:23.4.0-0-minimal",
                              "name": "main"
                            }
                          ],
                          "restartPolicy": "OnFailure"
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaAutoscaler",
                "metadata": {
                  "name": "verticaautoscaler-sample"
                },
                "spec": {
                  "customAutoscaler": {},
                  "scalingGranularity": "Subcluster",
                  "serviceName": "default-subcluster",
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaReplicator",
                "metadata": {
                  "name": "verticareplicator-sample"
                },
                "spec": {
                  "source": {
                    "verticaDB": "sourceDBName"
                  },
                  "target": {
                    "verticaDB": "targetDBName"
                  }
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaRestorePointsQuery",
                "metadata": {
                  "name": "verticarestorepointsquery-sample"
                },
                "spec": {
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaScrutinize",
                "metadata": {
                  "name": "verticascrutinize-sample"
                },
                "spec": {
                  "verticaDBName": "verticadb-sample"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          containerImage: docker.io/opentext/verticadb-operator:25.4.0-0
          createdAt: "2025-10-20T17:45:02Z"
          description: Operator that manages a Vertica Eon Mode database.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/vertica/vertica-kubernetes
          support: Vertica
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EventTrigger is the Schema for the eventtriggers API
            displayName: Event Trigger
            kind: EventTrigger
            name: eventtriggers.vertica.com
            version: v1beta1
          - description: |-
              VerticaAutoscaler is a CR that allows you to autoscale one or more
              subclusters in a VerticaDB.
            displayName: Vertica Autoscaler
            kind: VerticaAutoscaler
            name: verticaautoscalers.vertica.com
            version: v1
          - description: |-
              VerticaAutoscaler is a CR that allows you to autoscale one or more
              subclusters in a VerticaDB.
            displayName: Vertica Autoscaler
            kind: VerticaAutoscaler
            name: verticaautoscalers.vertica.com
            version: v1beta1
          - description: VerticaDB is the CR that defines a Vertica Eon mode cluster
              that is managed by the verticadb-operator.
            displayName: Vertica DB
            kind: VerticaDB
            name: verticadbs.vertica.com
            version: v1
          - description: VerticaReplicator is the Schema for the verticareplicators
              API
            displayName: Vertica Replicator
            kind: VerticaReplicator
            name: verticareplicators.vertica.com
            version: v1beta1
          - description: VerticaRestorePointsQuery is the Schema for the verticarestorepointsqueries
              API
            displayName: Vertica Restore Points Query
            kind: VerticaRestorePointsQuery
            name: verticarestorepointsqueries.vertica.com
            version: v1beta1
          - description: VerticaScrutinize is the schema for verticascrutinize API
            displayName: Vertica Scrutinize
            kind: VerticaScrutinize
            name: verticascrutinizers.vertica.com
            version: v1beta1
        description: |-
          ### What is Vertica?
          Vertica is a unified analytics platform, based on a massively scalable architecture with the broadest set of analytical functions spanning event and time series, pattern matching, geospatial and end-to-end in-database machine learning. Vertica enables you to easily apply these powerful functions to the largest and most demanding analytical workloads, arming you and your customers with predictive business insights faster than any analytics data warehouse in the market. Vertica provides a unified analytics platform across major public clouds and on-premises data centers and integrates data in cloud object storage and HDFS without forcing you to move any of your data.

          ### What does this operator do?
          This operator manages a Vertica Eon Mode database, and automates the following administrative tasks:

          * Installing Vertica
          * Creating and reviving a Vertica database
          * Restarting and rescheduling DOWN pods to maintain quorum
          * Upgrading Vertica to a new version while keeping the database online
          * Subcluster scaling, both manually and automatically with the Horizontal Pod Autoscaler
          * Service management and health monitoring for pods
          * Load balancing for internal and external traffic
          * Expose a metrics endpoint to integrate with Prometheus to monitor the operator's health

          For a brief overview on how to create a cluster, see the [Vertica GitHub repository](https://github.com/vertica/vertica-kubernetes). For an in-depth look at Vertica on Kubernetes, see the [Vertica documentation](https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm).
        displayName: VerticaDB Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - database
        - vertica
        links:
        - name: Documentation
          url: https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm
        - name: Vertica Container Images
          url: https://hub.docker.com/u/vertica
        maintainers:
        - email: cchen8@opentext.com
          name: Cai Chen
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Vertica
          url: http://www.vertica.com
        relatedImages:
        - docker.io/opentext/verticadb-operator:25.4.0-0
        - quay.io/community-operator-pipeline-prod/verticadb-operator@sha256:8dade6084828c98f805bd33d1885e8eb9c8eff3d2fb3283091a6691419d54922
        version: 25.4.0-0
      entries:
      - name: verticadb-operator.v25.4.0-0
        version: 25.4.0-0
      - name: verticadb-operator.v25.3.1-0
        version: 25.3.1-0
      - name: verticadb-operator.v25.3.0-0
        version: 25.3.0-0
      - name: verticadb-operator.v25.2.1-0
        version: 25.2.1-0
      - name: verticadb-operator.v25.2.0-0
        version: 25.2.0-0
      - name: verticadb-operator.v25.1.0-0
        version: 25.1.0-0
      - name: verticadb-operator.v24.4.0-0
        version: 24.4.0-0
      - name: verticadb-operator.v2.2.0
        version: 2.2.0
      - name: verticadb-operator.v2.1.3
        version: 2.1.3
      - name: verticadb-operator.v2.1.2
        version: 2.1.2
      - name: verticadb-operator.v2.1.1
        version: 2.1.1
      - name: verticadb-operator.v2.1.0
        version: 2.1.0
      - name: verticadb-operator.v2.0.2
        version: 2.0.2
      - name: verticadb-operator.v2.0.1
        version: 2.0.1
      - name: verticadb-operator.v2.0.0
        version: 2.0.0
      name: v2-stable
    defaultChannel: v2-stable
    packageName: verticadb-operator
    provider:
      name: Vertica
      url: http://www.vertica.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: dns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dns-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSHealthCheckProbe",
                "metadata": {
                  "name": "$NAME"
                },
                "spec": {
                  "additionalHeadersRef": {
                    "name": "headers"
                  },
                  "address": "192.168.0.16",
                  "allowInsecureCertificate": true,
                  "failureThreshold": 5,
                  "hostname": "test.com",
                  "interval": "60s",
                  "path": "/healthz",
                  "port": 443,
                  "protocol": "HTTPS"
                }
              },
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSRecord",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dns-operator",
                    "app.kubernetes.io/instance": "dnsrecord-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dnsrecord",
                    "app.kubernetes.io/part-of": "dns-operator"
                  },
                  "name": "dnsrecord-sample"
                },
                "spec": {
                  "endpoints": [
                    {
                      "dnsName": "dnsrecord-simple.example.com",
                      "recordTTL": 60,
                      "recordType": "A",
                      "targets": [
                        "52.215.108.61",
                        "52.30.101.221"
                      ]
                    }
                  ],
                  "providerRef": {
                    "name": "dns-provider-creds"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/dns-rhel9-operator@sha256:61e8a471cf20273fe879031eb302a1c7179b5423db4f0a8b9dccefae753ffdf4
          createdAt: 25 Sep 2025, 13:03
          description: Configures how north-south traffic from outside the network
            is balanced and reaches Gateways.
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kuadrant/dns-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DNSHealthCheckProbe is the Schema for the dnshealthcheckprobes
              API
            displayName: DNSHealthCheckProbe
            kind: DNSHealthCheckProbe
            name: dnshealthcheckprobes.kuadrant.io
            version: v1alpha1
          - description: DNSRecord is the Schema for the dnsrecords API
            displayName: DNSRecord
            kind: DNSRecord
            name: dnsrecords.kuadrant.io
            version: v1alpha1
        description: A Kubernetes Operator to manage the lifecycle of DNS resources
        displayName: DNS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dns
        - kuadrant
        links:
        - name: DNS Operator
          url: https://github.com/Kuadrant/dns-operator
        maintainers:
        - email: mnairn@redhat.com
          name: Michael Nairn
        - email: pbrookes@redhat.com
          name: Phil Brookes
        - email: cbrookes@redhat.com
          name: Craig Brookes
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhcl-1/dns-operator-bundle@sha256:0139dbf3b822012c56a0ce2f17b8607c4e08d367ec2fbfb096892bb5e648803e
        - registry.redhat.io/rhcl-1/dns-rhel9-operator@sha256:61e8a471cf20273fe879031eb302a1c7179b5423db4f0a8b9dccefae753ffdf4
        version: 1.2.0
      entries:
      - name: dns-operator.v1.2.0
        version: 1.2.0
      - name: dns-operator.v1.1.1
        version: 1.1.1
      - name: dns-operator.v1.1.0
        version: 1.1.0
      - name: dns-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: dns-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Ab Initio
      provider-url: ""
    name: abinitio-runtime-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: abinitio-runtime-operator.v4.3.3-1
      currentCSVDesc:
        annotations:
          capabilities: Basic Install
          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"
          operatorframework.io/suggested-namespace: abinitio-system
          operators.operatorframework.io/builder: operator-sdk-v1.8.0-ocp
          operators.operatorframework.io/internal-objects: '["cooperatingsystemruntimepoolmetrics.cloud.abinitio.com",
            "cooperatingsystemruntimeprofiles.cloud.abinitio.com"]'
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Defines a *runtime claim*, an interface for reserving a runtime
              object (CoOperatingSystemRuntime) in a runtime pool (CoOperatingSystemRuntimePool)
              in order to launch a job.
            displayName: Co>Operating System Runtime Claim
            kind: CoOperatingSystemRuntimeClaim
            name: cooperatingsystemruntimeclaims.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Pool Metric
            kind: CoOperatingSystemRuntimePoolMetric
            name: cooperatingsystemruntimepoolmetrics.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime pool*, a set of templated runtime objects
              (CoOperatingSystemRuntime) that are available on demand for running
              jobs. A runtime pool's capacity is configurable and can be scheduled
              in response to usage patterns.
            displayName: Co>Operating System Runtime Pool
            kind: CoOperatingSystemRuntimePool
            name: cooperatingsystemruntimepools.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Profile
            kind: CoOperatingSystemRuntimeProfile
            name: cooperatingsystemruntimeprofiles.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime object*, a set of coordinated resources
              used to run a data processing job in parallel across a launcher pod
              and a dynamically scaled set of worker pods. Such a job leverages the
              full power of the Co>Operating System for processing complex enterprise
              data.
            displayName: Co>Operating System Runtime
            kind: CoOperatingSystemRuntime
            name: cooperatingsystemruntimes.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime template*, a reusable specification (CoOperatingSystemRuntimeSpec)
              that can be referenced and overridden by runtime objects as needed,
              making it possible to specify jobs concisely. The runtime objects in
              a runtime pool (CoOperatingSystemRuntimePool) are created from a runtime
              template.
            displayName: Co>Operating System Runtime Template
            kind: CoOperatingSystemRuntimeTemplate
            name: cooperatingsystemruntimetemplates.cloud.abinitio.com
            version: v1
        description: |-
          The Co>Operating System runtime operator brings the power of Ab Initio's Co>Operating
          System to Kubernetes by defining a set of custom API resources for provisioning and
          running data processing jobs.

          The operator is installed along with the following custom resource definitions (CRDs):

          - CoOperatingSystemRuntime
          - CoOperatingSystemRuntimeClaim
          - CoOperatingSystemRuntimePool
          - CoOperatingSystemRuntimeTemplate

          In combination, these resources give you significant flexibility in scheduling, running,
          and monitoring your jobs, which can run in parallel across a dynamically scaled set of
          containers. For reference documentation for these resources, see
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-FOUR-Reference/Co-Operating-System-runtime-operator-API-reference)
          in the Ab Initio Help.

          The following topics describe the basic requirements and procedures for creating custom
          resources for running jobs after you have installed the runtime operator.

          ## Requirements for using custom resources

          The runtime operator is fully configured when you install it in your OpenShift cluster
          through OperatorHub. Importantly, the operator is installed in unrestricted mode,
          which means it can manage the CoOperatingSystemRuntime family of CRDs in any namespace
          in your cluster.

          For creating custom resources in order to run jobs using the operator, you must meet
          the requirements and configure the settings described in the following sections.

          ### Container images for job agents

          To run jobs of kind CoOperatingSystemRuntime, you must have a way to build the following
          OCI container images:

          - A *processing* image with the Co>Operating System server software installed in it.
          - A *sandbox workspace* image with the graphs and other files needed to run your jobs.
          This image is based on the Co>Operating System image and functions as the job's launcher
          agent, which coordinates with a set of worker agents (processing containers) in order to
          run a job in parallel.

          For building and managing these container images, you need the following:

          - A Co>Operating System installation package.
          - Access to a technical repository containing the projects that make up your application.
          - A container-building tool.
          - Access to a private container registry for hosting the images you build. You need pull
          and push access to this registry from your container build context and pull access from
          your OpenShift cluster (for example, via a Kubernetes Secret).

          > WARNING! Never push container images with Ab Initio software to a public registry. Push
          them to a private container registry only.

          The Co>Operating System includes reference Dockerfiles and example scripts for building
          container images. Typically, you build these images as part of your CI/CD pipeline. For
          more information, contact your Ab Initio administrator or Ab Initio Support.

          ### Ab Initio key servers

          The key servers that you use to enable jobs must be reachable from your cluster. You
          specify these key servers via the `AB_HOSTNAME_KEYSERVER_URLS` configuration variable in
          the pod specifications for launcher and worker agents in the CoOperatingSystemRuntime
          resource.

          To discuss the software activation key requirements for jobs that run in Kubernetes,
          contact your key server administrator or Ab Initio Support.

          ### Namespace and role considerations

          The runtime operator is installed with the cluster-wide RBAC roles and role bindings that
          it needs in order to manage custom resources and run jobs.

          You typically use a separate namespace or namespaces for creating and managing custom
          resources to run jobs. Each of these namespaces must be equipped with a service
          account that can list pod limits and get and patch CoOperatingSystemRuntime resources.

          For each namespace in which you intend to create custom resources, create the needed RBAC
          role and role binding by applying the following Role and RoleBinding manifests:

          ```yaml
          apiVersion: rbac.authorization.k8s.io/v1
          kind: Role
          metadata:
            name: cooperatingsystemruntime-role
          rules:
          - apiGroups:
            - ""
            resources:
            - limitranges
            verbs:
            - list
          - apiGroups:
            - cloud.abinitio.com
            resources:
            - cooperatingsystemruntimes
            verbs:
            - get
            - patch
          ---
          apiVersion: rbac.authorization.k8s.io/v1
          kind: RoleBinding
          metadata:
            name: run-cooperatingsystemruntime-rolebinding
          subjects:
          - kind: ServiceAccount
            name: default
          roleRef:
            kind: Role
            name: cooperatingsystemruntime-role
            apiGroup: rbac.authorization.k8s.io
          ```

          One way to do this is to save these manifests to a file and specify a namespace when
          using `oc` to apply them to the cluster. In the following example, the manifests are
          saved to a file named `runtime-rbac.yaml` and the role and role binding are to be created
          for the `default` service account in the `hello-world` namespace:

          ```
          oc -n hello-world apply -f runtime-rbac.yaml
          ```

          To bind the role to a service account other than `default`, simply update the value of
          `subjects[0].name` in the provided RoleBinding manifest.

          ### Dynamic volume provisioning

          The launcher and worker template sections of the CoOperatingSystemRuntime resource
          require you to specify persistent volume claims (PVCs) for job recovery data. To ensure
          that these PVCs can be bound to approriate storage volumes, dynamic volume provisioning
          must be enabled in your cluster.

          Work with your cluster administrator to identify the storage needs of your jobs and to
          ensure that dynamic volume provisioning is enabled so that PVCs can be matched to
          persistent volumes of the right storage class.

          For more information about dynamic storage provisioning, see the
          [OpenShift documentation](https://docs.openshift.com/container-platform/latest/storage/dynamic-provisioning.html).

          ## Quick start and examples

          For an overview of the key concepts associated with running jobs in Kubernetes, see
          ["About running jobs in Kubernetes"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-TWO-Running-jobs-in-Kubernetes/About-running-jobs-in-Kubernetes)
          in the Ab Initio Help.

          As described in this topic, you might begin by creating a CoOperatingSystemRuntime
          manifest that defines the configuration and compute resources needed for a standalone test
          job. You could then use the specification for this job to create a CoOperatingSystemRuntimeTemplate
          resource, which would collect common settings and make it possible to concisely specify
          CoOperatingSystemRuntime jobs.

          You could also use a runtime pool (of kind CoOperatingSystemRuntime) to extend these basic
          resources: such a pool consists of an actively running group of templated runtime objects whose
          pods can be used to run jobs on demand. Finally, for reserving resources in a pool, you could
          create a CoOperatingSystemRuntimeClaim resource.

          For more information about these custom resources, refer to the
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-FOUR-Reference/Co-Operating-System-runtime-operator-API-reference).

          For a set of integrated examples (including complete YAML manifests) that show you how to
          create and use the custom resources, see ["Example manifests for running jobs"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-TWO-Running-jobs-in-Kubernetes/Configuring-and-running-Co-Operating-System-jobs-in-Kubernetes/Example-manifests-for-CoOperatingSystemRuntime-jobs).
        displayName: Co>Operating System Runtime Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - abinitio
        - runtime
        - operator
        links:
        - name: Ab Initio
          url: https://www.abinitio.com/
        maintainers:
        - email: support@abinitio.com
          name: Ab Initio Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Ab Initio
        relatedImages:
        - registry.connect.redhat.com/abinitio/cooperating-system-runtime-operator@sha256:665efa8cc2ba97ad31f219161cdd53e15c1aef16b6c05ac60506be9bbc9ffc9a
        - registry.connect.redhat.com/abinitio/runtime-operator-bundle@sha256:d0bd55bad99bfd1ce09da5ee885a38229829570ebf80e1acc4341dff17a54e64
        version: 4.3.3-1
      entries:
      - name: abinitio-runtime-operator.v4.3.3-1
        version: 4.3.3-1
      - name: abinitio-runtime-operator.v4.3.1-0
        version: 4.3.1-0
      name: release-4.3
    - currentCSV: abinitio-runtime-operator.v4.2.3-0
      currentCSVDesc:
        annotations:
          capabilities: Basic Install
          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"
          operatorframework.io/suggested-namespace: abinitio-system
          operators.operatorframework.io/builder: operator-sdk-v1.8.0-ocp
          operators.operatorframework.io/internal-objects: '["cooperatingsystemruntimepoolmetrics.cloud.abinitio.com",
            "cooperatingsystemruntimeprofiles.cloud.abinitio.com"]'
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Defines a *runtime claim*, an interface for reserving a runtime
              object (CoOperatingSystemRuntime) in a runtime pool (CoOperatingSystemRuntimePool)
              in order to launch a job.
            displayName: Co>Operating System Runtime Claim
            kind: CoOperatingSystemRuntimeClaim
            name: cooperatingsystemruntimeclaims.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Pool Metric
            kind: CoOperatingSystemRuntimePoolMetric
            name: cooperatingsystemruntimepoolmetrics.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime pool*, a set of templated runtime objects
              (CoOperatingSystemRuntime) that are available on demand for running
              jobs. A runtime pool's capacity is configurable and can be scheduled
              in response to usage patterns.
            displayName: Co>Operating System Runtime Pool
            kind: CoOperatingSystemRuntimePool
            name: cooperatingsystemruntimepools.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Profile
            kind: CoOperatingSystemRuntimeProfile
            name: cooperatingsystemruntimeprofiles.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime object*, a set of coordinated resources
              used to run a data processing job in parallel across a launcher pod
              and a dynamically scaled set of worker pods. Such a job leverages the
              full power of the Co>Operating System for processing complex enterprise
              data.
            displayName: Co>Operating System Runtime
            kind: CoOperatingSystemRuntime
            name: cooperatingsystemruntimes.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime template*, a reusable specification (CoOperatingSystemRuntimeSpec)
              that can be referenced and overridden by runtime objects as needed,
              making it possible to specify jobs concisely. The runtime objects in
              a runtime pool (CoOperatingSystemRuntimePool) are created from a runtime
              template.
            displayName: Co>Operating System Runtime Template
            kind: CoOperatingSystemRuntimeTemplate
            name: cooperatingsystemruntimetemplates.cloud.abinitio.com
            version: v1
        description: |-
          The Co>Operating System runtime operator brings the power of Ab Initio's Co>Operating
          System to Kubernetes by defining a set of custom API resources for provisioning and
          running data processing jobs.

          The operator is installed along with the following custom resource definitions (CRDs):

          - CoOperatingSystemRuntime
          - CoOperatingSystemRuntimeClaim
          - CoOperatingSystemRuntimePool
          - CoOperatingSystemRuntimeTemplate

          In combination, these resources give you significant flexibility in scheduling, running,
          and monitoring your jobs, which can run in parallel across a dynamically scaled set of
          containers. For reference documentation for these resources, see
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Co_Operating_System_runtime_operator_API_reference)
          in the Ab Initio Help.

          The following topics describe the basic requirements and procedures for creating custom
          resources for running jobs after you have installed the runtime operator.

          ## Requirements for using custom resources

          The runtime operator is fully configured when you install it in your OpenShift cluster
          through OperatorHub. Importantly, the operator is installed in unrestricted mode,
          which means it can manage the CoOperatingSystemRuntime family of CRDs in any namespace
          in your cluster.

          For creating custom resources in order to run jobs using the operator, you must meet
          the requirements and configure the settings described in the following sections.

          ### Container images for job agents

          To run jobs of kind CoOperatingSystemRuntime, you must have a way to build the following
          OCI container images:

          - A *processing* image with the Co>Operating System server software installed in it.
          - A *sandbox workspace* image with the graphs and other files needed to run your jobs.
          This image is based on the Co>Operating System image and functions as the job's launcher
          agent, which coordinates with a set of worker agents (processing containers) in order to
          run a job in parallel.

          For building and managing these container images, you need the following:

          - A Co>Operating System installation package.
          - Access to a technical repository containing the projects that make up your application.
          - A container-building tool.
          - Access to a private container registry for hosting the images you build. You need pull
          and push access to this registry from your container build context and pull access from
          your OpenShift cluster (for example, via a Kubernetes Secret).

          > WARNING! Never push container images with Ab Initio software to a public registry. Push
          them to a private container registry only.

          The Co>Operating System includes reference Dockerfiles and example scripts for building
          container images. Typically, you build these images as part of your CI/CD pipeline. For
          more information, contact your Ab Initio administrator or Ab Initio Support.

          ### Ab Initio key servers

          The key servers that you use to enable jobs must be reachable from your cluster. You
          specify these key servers via the `AB_HOSTNAME_KEYSERVER_URLS` configuration variable in
          the pod specifications for launcher and worker agents in the CoOperatingSystemRuntime
          resource.

          To discuss the software activation key requirements for jobs that run in Kubernetes,
          contact your key server administrator or Ab Initio Support.

          ### Namespace and role considerations

          The runtime operator is installed with the cluster-wide RBAC roles and role bindings that
          it needs in order to manage custom resources and run jobs.

          You typically use a separate namespace or namespaces for creating and managing custom
          resources to run jobs. Each of these namespaces must be equipped with a service
          account that can list pod limits and get and patch CoOperatingSystemRuntime resources.

          For each namespace in which you intend to create custom resources, create the needed RBAC
          role and role binding by applying the following Role and RoleBinding manifests:

          ```yaml
          apiVersion: rbac.authorization.k8s.io/v1
          kind: Role
          metadata:
            name: cooperatingsystemruntime-role
          rules:
          - apiGroups:
            - ""
            resources:
            - limitranges
            verbs:
            - list
          - apiGroups:
            - cloud.abinitio.com
            resources:
            - cooperatingsystemruntimes
            verbs:
            - get
            - patch
          ---
          apiVersion: rbac.authorization.k8s.io/v1
          kind: RoleBinding
          metadata:
            name: run-cooperatingsystemruntime-rolebinding
          subjects:
          - kind: ServiceAccount
            name: default
          roleRef:
            kind: Role
            name: cooperatingsystemruntime-role
            apiGroup: rbac.authorization.k8s.io
          ```

          One way to do this is to save these manifests to a file and specify a namespace when
          using `oc` to apply them to the cluster. In the following example, the manifests are
          saved to a file named `runtime-rbac.yaml` and the role and role binding are to be created
          for the `default` service account in the `hello-world` namespace:

          ```
          oc -n hello-world apply -f runtime-rbac.yaml
          ```

          To bind the role to a service account other than `default`, simply update the value of
          `subjects[0].name` in the provided RoleBinding manifest.

          ### Dynamic volume provisioning

          The launcher and worker template sections of the CoOperatingSystemRuntime resource
          require you to specify persistent volume claims (PVCs) for job recovery data. To ensure
          that these PVCs can be bound to approriate storage volumes, dynamic volume provisioning
          must be enabled in your cluster.

          Work with your cluster administrator to identify the storage needs of your jobs and to
          ensure that dynamic volume provisioning is enabled so that PVCs can be matched to
          persistent volumes of the right storage class.

          For more information about dynamic storage provisioning, see the
          [OpenShift documentation](https://docs.openshift.com/container-platform/latest/storage/dynamic-provisioning.html).

          ## Quick start and examples

          For an overview of the key concepts associated with running jobs in Kubernetes, see
          ["About running jobs in Kubernetes"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Configuring_and_running_Co_Operating_System_jobs_in_Kubernetes/About_running_jobs_in_Kubernetes)
          in the Ab Initio Help.

          As described in this topic, you might begin by creating a CoOperatingSystemRuntime
          manifest that defines the configuration and compute resources needed for a standalone test
          job. You could then use the specification for this job to create a CoOperatingSystemRuntimeTemplate
          resource, which would collect common settings and make it possible to concisely specify
          CoOperatingSystemRuntime jobs.

          You could also use a runtime pool (of kind CoOperatingSystemRuntime) to extend these basic
          resources: such a pool consists of an actively running group of templated runtime objects whose
          pods can be used to run jobs on demand. Finally, for reserving resources in a pool, you could
          create a CoOperatingSystemRuntimeClaim resource.

          For more information about these custom resources, refer to the
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Co_Operating_System_runtime_operator_API_reference).

          For a set of integrated examples (including complete YAML manifests) that show you how to
          create and use the custom resources, see ["Example manifests for running jobs"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Configuring_and_running_Co_Operating_System_jobs_in_Kubernetes/Creating_custom_resources_for_running_jobs/Example_manifests_for_running_jobs).
        displayName: Co>Operating System Runtime Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - abinitio
        - runtime
        - operator
        links:
        - name: Ab Initio
          url: https://www.abinitio.com/
        maintainers:
        - email: support@abinitio.com
          name: Ab Initio Support
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Ab Initio
        relatedImages:
        - registry.connect.redhat.com/abinitio/cooperating-system-runtime-operator@sha256:ee30210a153e8b3ba09080737216d881cc6a07e1a888e9684be0d17fd4ff791d
        - registry.connect.redhat.com/abinitio/runtime-operator-bundle@sha256:b9ffc18b2d88dfab92583af35b27e0ae36bceac7778cb448ab2ea2eae2ab3e94
        version: 4.2.3-0
      entries:
      - name: abinitio-runtime-operator.v4.2.3-0
        version: 4.2.3-0
      name: stable
    defaultChannel: release-4.3
    packageName: abinitio-runtime-operator
    provider:
      name: Ab Initio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Trilio
      provider-url: https://trilio.io/
    name: tvo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tvo-operator.6.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tvo.trilio.io/v1",
                "kind": "TVOControlPlane",
                "metadata": {
                  "name": "tvocontrolplane-sample"
                },
                "spec": {
                  "crdType": "TVOControlPlane",
                  "common": {
                    "dmapi_workers": "16",
                    "memcached_servers": "",
                    "my_ip": {
                      "host_interface": null
                    },
                    "nova_group_id": "42436",
                    "nova_user_id": "42436",
                    "oslo_enable_proxy_headers_parsing": false,
                    "trustee_role": "creator"
                  },
                  "database": {
                    "common": {
                      "host": "EDIT_DB_HOSTNAME",
                      "root_password": "EDIT_PASSWORD",
                      "root_user_name": "root"
                    },
                    "datamover_api": {
                      "database": "dmapi",
                      "password": "EDIT_PASSWORD",
                      "user": "dmapi"
                    },
                    "wlm_api": {
                      "database": "workloadmgr",
                      "password": "EDIT_PASSWORD",
                      "user": "workloadmgr"
                    }
                  },
                  "helm3_hook": true,
                  "images": {
                    "triliovault_datamover_api": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_datamover_db_sync": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_object_store": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_api": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_cloud_trust": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_cron": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_db_sync": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_scheduler": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_workloads": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1"
                  },
                  "keystone": {
                    "common": {
                      "admin_role_name": "admin",
                      "auth_uri": "",
                      "auth_url": "",
                      "ca_cert": "CERT MULTIPLE LINES\n",
                      "cloud_admin_domain_name": "Default",
                      "cloud_admin_project_name": "admin",
                      "cloud_admin_user_name": "admin",
                      "cloud_admin_user_password": "",
                      "is_self_signed_ssl_cert": true,
                      "keystone_auth_host": "",
                      "keystone_auth_port": "",
                      "keystone_auth_protocol": "",
                      "region_name": "regionOne",
                      "service_project_domain_name": "Default",
                      "service_project_name": "service"
                    },
                    "datamover_api": {
                      "internal_endpoint": "ENDPOINT_PROTOCOL_INTERNAL://ENDPOINT_HOST_INTERNAL:8784/v2",
                      "password": "EDIT_PASSWORD",
                      "public_auth_host": "",
                      "public_endpoint": "ENDPOINT_PROTOCOL_PUBLIC://ENDPOINT_HOST_PUBLIC:8784/v2",
                      "service_desc": "TrilioVault Datamover Api Service",
                      "service_name": "dmapi",
                      "service_type": "datamover",
                      "user": "dmapi"
                    },
                    "identity": null,
                    "keystone_interface": "internal",
                    "wlm_api": {
                      "internal_endpoint": "ENDPOINT_PROTOCOL_INTERNAL://ENDPOINT_HOST_INTERNAL:8781/v1/$(tenant_id)s",
                      "password": "EDIT_PASSWORD",
                      "public_auth_host": "",
                      "public_endpoint": "ENDPOINT_PROTOCOL_PUBLIC://ENDPOINT_HOST_PUBLIC:8781/v1/$(tenant_id)s",
                      "service_desc": "TrilioVault Workloadmgr Api Service",
                      "service_name": "TrilioVaultWLM",
                      "service_type": "workloads",
                      "user": "triliovault"
                    }
                  },
                  "labels": {
                    "datamover_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_cron": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_scheduler": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_workloads": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    }
                  },
                  "pod": {
                    "replicas": {
                      "triliovault_datamover_api": 3,
                      "triliovault_object_store": 3,
                      "triliovault_wlm_api": 3,
                      "triliovault_wlm_cron": 1,
                      "triliovault_wlm_scheduler": 3,
                      "triliovault_wlm_workloads": 3
                    },
                    "security_context": {
                      "triliovault": {
                        "container": {
                          "triliovault_datamover_api": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 0,
                            "runAsUser": 63630
                          },
                          "triliovault_datamover_api_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 63630,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_api": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_cron": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_scheduler": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_workloads": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "wlm_cloud_trust_creation": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 42436
                          }
                        }
                      }
                    }
                  },
                  "rabbitmq": {
                    "common": {
                      "admin_password": "EDIT_PASSWORD",
                      "admin_user": "admin",
                      "driver": "messagingv2",
                      "host": "EDIT_HOST",
                      "port": "5672"
                    },
                    "datamover_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "",
                      "user": "dmapi",
                      "vhost": "dmapi"
                    },
                    "wlm_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "",
                      "user": "workloadmgr",
                      "vhost": "workloadmgr"
                    }
                  },
                  "triliovault_backup_targets": [
                    {
                      "backup_target_name": "S3_BT1",
                      "backup_target_type": "s3",
                      "is_default": true,
                      "s3_access_key": "ACCESSKEY1",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "BUCKET1",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "ENDPOINT_URL1",
                      "s3_region_name": "REGION1",
                      "s3_secret_key": "SECRETKEY1",
                      "s3_self_signed_cert": false,
                      "s3_signature_version": "default",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "amazon_s3"
                    },
                    {
                      "backup_target_name": "S3_BT2",
                      "backup_target_type": "s3",
                      "is_default": true,
                      "s3_access_key": "ACCESSKEY2",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "BUCKET2",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "ENDPOINT_URL2",
                      "s3_region_name": "REGION2",
                      "s3_secret_key": "SECRETKEY2",
                      "s3_self_signed_cert": true,
                      "s3_signature_version": "default",
                      "s3_ssl_ca_cert": "SSL_CERT_LINE_1\n",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "amazon_s3"
                    },
                    {
                      "backup_target_name": "NFS_BT3",
                      "backup_target_type": "nfs",
                      "is_default": false,
                      "nfs_options": "nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10",
                      "nfs_shares": "11.30.1.10:/mnt/share"
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "true"
          containerImage: registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:3d80cad27a1043fb61735e7a6fb156c98b269cfcc68f8b9712713a7d4f6ad6bd
          createdAt: "2025-01-14T11:20:30Z"
          description: Cloud-Native Data Protection for OpenStack
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: trilio-openstack
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trilioData/triliovault-cfg-scripts
          support: Trilio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trilio for OpenStack Control Plane. Includes all control
              plane components like Datamover Api, Trilio object store and Workloadmgr
              services.
            displayName: Trilio for OpenStack Control Plane
            kind: TVOControlPlane
            name: tvocontrolplanes.tvo.trilio.io
            version: v1
          - description: Trilio for OpenStack Backup Target. This CR is responsible
              to add a new backup target.
            displayName: Trilio for OpenStack Backup Target
            kind: TVOBackupTarget
            name: tvobackuptargets.tvo.trilio.io
            version: v1
        description: |-
          Trilio for OpenStack provides scalable, native, agentless, multi-tenant backup and recovery solutions, ensuring seamless protection of workloads with flexible storage options for dynamic cloud environments.

            * OpenStack Backup and Recovery: Recover any OpenStack application quickly in the event of data loss or misconfiguration. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Such as One-Click-Restore to entire project recovery on different clusters.
            * Disaster Recovery: Recover any OpenStack application quickly in the event of a disaster. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Trilio makes OpenStack disaster recovery easy.

            * Migration: A tenant or administrator can capture an application and its data and non-disruptively migrate that exact point-in-time to another OpenStack cloud. The need to migrate OpenStack workloads can be driven by economics, security or test/dev.

            * Network Functions Virtualization backup and recovery: Business critical services like NFV can quickly be configured to any state, assuring the optimal quality of service. Trilio provides recovery from data damage and allows restoration of entire VNFs, selected VNFs, or individual data items using a point-in-time working copy. The platform also allows recovery from a disaster by restoring the OpenStack network topology and populating it with a working copy of the entire NFV.

          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for OpenStack
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OpenStack
        - Backup
        - Recovery
        - RHOSO Backup
        - Disaster Recovery
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/openstack-backup-and-recovery/
        - name: Operator Documentation
          url: https://docs.trilio.io/openstack
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        provider:
          name: Trilio
          url: https://trilio.io/
        relatedImages:
        - registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:3d80cad27a1043fb61735e7a6fb156c98b269cfcc68f8b9712713a7d4f6ad6bd
        - registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1
        - registry.connect.redhat.com/trilio/tvo-operator-rhoso@sha256:50b7f0a5f3fdd98cfb0294d664cc01ffd1e5359be66a3da14f5552e9cb3bae2c
        - registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82
        version: 6.1.1
      entries:
      - name: tvo-operator.6.1.1
        version: 6.1.1
      name: 6.0.x
    - currentCSV: tvo-operator.6.1.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tvo.trilio.io/v1",
                "kind": "TVOControlPlane",
                "metadata": {
                  "name": "tvocontrolplane-sample",
                  "namespace": "trilio-openstack"
                },
                "spec": {
                  "common": {
                    "dmapi_workers": "16",
                    "memcached_servers": "memcached-0.memcached.openstack.svc:11212",
                    "nova_group_id": "42436",
                    "nova_user_id": "42436",
                    "oslo_enable_proxy_headers_parsing": false,
                    "trustee_role": "member"
                  },
                  "crdType": "TVOControlPlane",
                  "database": {
                    "common": {
                      "host": "openstack.openstack.svc",
                      "port": 3306,
                      "root_password": "openstack",
                      "root_user_name": "root"
                    },
                    "datamover_api": {
                      "database": "dmapi",
                      "password": "dsw21aSyH5gHH6XE72k11Y3t3C308jY5rP02ndwJW",
                      "user": "dmapi"
                    },
                    "wlm_api": {
                      "database": "workloadmgr",
                      "password": "dfeeYb72OwUzX5YuRKcVjxXJaELV8YT0jZczIQwys0v",
                      "user": "workloadmgr"
                    }
                  },
                  "helm3_hook": true,
                  "images": {
                    "triliovault_datamover_api": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_datamover_db_sync": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_object_store": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_api": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_cloud_trust": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_cron": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_db_sync": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_scheduler": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_workloads": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd"
                  },
                  "keystone": {
                    "common": {
                      "admin_role_name": "admin",
                      "auth_uri": "https://keystone-internal.openstack.svc:5000/v3",
                      "auth_url": "https://keystone-internal.openstack.svc:5000",
                      "cloud_admin_domain_name": "Default",
                      "cloud_admin_project_name": "admin",
                      "cloud_admin_user_name": "admin",
                      "cloud_admin_user_password": "openstack",
                      "is_self_signed_ssl_cert": true,
                      "keystone_auth_host": "keystone-internal.openstack.svc",
                      "keystone_auth_port": "5000",
                      "keystone_auth_protocol": "https",
                      "region_name": "regionOne",
                      "service_project_domain_name": "Default",
                      "service_project_name": "service"
                    },
                    "datamover_api": {
                      "internal_endpoint": "https://triliovault-datamover-internal.trilio-openstack.svc:8784/v2",
                      "password": "defajgh48zgt88wFzzhwEt3xHGeCOdExYbLGQN2XRm",
                      "public_auth_host": "triliovault-datamover-public-trilio-openstack.apps.trilio.trilio.bos2",
                      "public_endpoint": "https://triliovault-datamover-public-trilio-openstack.apps.trilio.trilio.bos2/v2",
                      "service_desc": "TrilioVault Datamover Api Service",
                      "service_name": "dmapi",
                      "service_type": "datamover",
                      "user": "dmapi"
                    },
                    "keystone_interface": "internal",
                    "wlm_api": {
                      "internal_endpoint": "https://triliovault-wlm-internal.trilio-openstack.svc:8781/v1/$(tenant_id)s",
                      "password": "dsdeJl8axy0gv14fURwUUxy0qUOQbugUUOfXikz6j",
                      "public_auth_host": "triliovault-wlm-public-trilio-openstack.apps.trilio.trilio.bos2",
                      "public_endpoint": "https://triliovault-wlm-public-trilio-openstack.apps.trilio.trilio.bos2/v1/$(tenant_id)s",
                      "service_desc": "TrilioVault Workloadmgr Api Service",
                      "service_name": "TrilioVaultWLM",
                      "service_type": "workloads",
                      "user": "triliovault"
                    }
                  },
                  "labels": {
                    "datamover_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_cron": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_scheduler": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_workloads": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    }
                  },
                  "pod": {
                    "replicas": {
                      "triliovault_datamover_api": 3,
                      "triliovault_object_store": 3,
                      "triliovault_wlm_api": 3,
                      "triliovault_wlm_cron": 1,
                      "triliovault_wlm_scheduler": 3,
                      "triliovault_wlm_workloads": 3
                    },
                    "security_context": {
                      "triliovault": {
                        "container": {
                          "triliovault_datamover_api": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 0,
                            "runAsUser": 63630
                          },
                          "triliovault_datamover_api_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 63630,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_api": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_cron": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_scheduler": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_workloads": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "wlm_cloud_trust_creation": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 42436
                          }
                        }
                      }
                    }
                  },
                  "rabbitmq": {
                    "common": {
                      "admin_password": "EDIT_PASSWORD",
                      "admin_user": "admin",
                      "driver": "messagingv2",
                      "host": "EDIT_HOST",
                      "port": "15671",
                      "ssl": true
                    },
                    "datamover_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "rabbit://dmapi:${PASSWORD}@${RABBITMQ_HOST}:5671/dmapi?ssl=1",
                      "user": "dmapi",
                      "vhost": "dmapi"
                    },
                    "wlm_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "rabbit://workloadmgr:${PASSWORD}@${RABBITMQ_HOST}:5671/workloadmgr?ssl=1",
                      "user": "workloadmgr",
                      "vhost": "workloadmgr"
                    }
                  },
                  "triliovault_backup_targets": [
                    {
                      "backup_target_name": "BT1_S3",
                      "backup_target_type": "s3",
                      "is_default": false,
                      "s3_access_key": "",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "",
                      "s3_region_name": "",
                      "s3_secret_key": "",
                      "s3_self_signed_cert": false,
                      "s3_signature_version": "default",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "amazon_s3"
                    },
                    {
                      "backup_target_name": "BT2_Other_S3",
                      "backup_target_type": "s3",
                      "is_default": true,
                      "s3_access_key": "ACCESSKEY2",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "BUCKET2",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "ENDPOINT_URL2",
                      "s3_region_name": "REGION2",
                      "s3_secret_key": "SECRETKEY2",
                      "s3_self_signed_cert": true,
                      "s3_signature_version": "default",
                      "s3_ssl_ca_cert": "SSL_CERT_LINE_1\nSSL_CERT_LINE_2\nSSL_CERT_LINE_N\n",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "other_s3"
                    },
                    {
                      "backup_target_name": "BT3_NFS",
                      "backup_target_type": "nfs",
                      "is_default": false,
                      "nfs_options": "nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10",
                      "nfs_shares": "192.168.2.3:/nfs/share"
                    }
                  ]
                }
              },
              {
                "apiVersion": "tvo.trilio.io/v1",
                "kind": "TVOBackupTarget",
                "metadata": {
                  "name": "tvobackuptarget-sample",
                  "namespace": "trilio-openstack"
                },
                "spec": {
                  "crdType": "TVOBackupTarget",
                  "images": {
                    "triliovault_wlm_api": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_object_store": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd"
                  },
                  "triliovault_backup_target": {
                    "backup_target_name": "S3_BT4",
                    "backup_target_type": "s3",
                    "is_default": false,
                    "s3_type": "other_s3",
                    "s3_access_key": "",
                    "s3_secret_key": "",
                    "s3_region_name": "",
                    "s3_bucket": "",
                    "s3_endpoint_url": "",
                    "s3_signature_version": "default",
                    "s3_auth_version": "DEFAULT",
                    "s3_bucket_object_lock_enabled": false,
                    "s3_ssl_enabled": true,
                    "s3_ssl_verify": true,
                    "s3_self_signed_cert": true,
                    "s3_ssl_ca_cert": "SSL_CERT_LINE_1\nSSL_CERT_LINE_2\nSSL_CERT_LINE_N",
                    "nfs_shares": "192.168.2.30:/nfs/share",
                    "nfs_options": "nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "true"
          containerImage: registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:1ac93a84ea57a554e84fadf43839016324a432825b50e168702c88af5fcfd4d5
          createdAt: "2025-01-14T11:20:30Z"
          description: Cloud-Native Data Protection for OpenStack
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: tvo-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trilioData/triliovault-cfg-scripts
          support: Trilio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trilio for OpenStack Control Plane. Includes all control
              plane components like Datamover Api, Trilio object store and Workloadmgr
              services.
            displayName: Trilio for OpenStack Control Plane
            kind: TVOControlPlane
            name: tvocontrolplanes.tvo.trilio.io
            version: v1
          - description: Trilio for OpenStack Backup Target. This CR is responsible
              to add a new backup target.
            displayName: Trilio for OpenStack Backup Target
            kind: TVOBackupTarget
            name: tvobackuptargets.tvo.trilio.io
            version: v1
        description: |-
          Trilio for OpenStack provides scalable, native, agentless, multi-tenant backup and recovery solutions, ensuring seamless protection of workloads with flexible storage options for dynamic cloud environments.

            * OpenStack Backup and Recovery: Recover any OpenStack application quickly in the event of data loss or misconfiguration. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Such as One-Click-Restore to entire project recovery on different clusters.
            * Disaster Recovery: Recover any OpenStack application quickly in the event of a disaster. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Trilio makes OpenStack disaster recovery easy.

            * Migration: A tenant or administrator can capture an application and its data and non-disruptively migrate that exact point-in-time to another OpenStack cloud. The need to migrate OpenStack workloads can be driven by economics, security or test/dev.

            * Network Functions Virtualization backup and recovery: Business critical services like NFV can quickly be configured to any state, assuring the optimal quality of service. Trilio provides recovery from data damage and allows restoration of entire VNFs, selected VNFs, or individual data items using a point-in-time working copy. The platform also allows recovery from a disaster by restoring the OpenStack network topology and populating it with a working copy of the entire NFV.

          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for OpenStack
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OpenStack
        - Backup
        - Recovery
        - RHOSO Backup
        - Disaster Recovery
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/openstack-backup-and-recovery/
        - name: Operator Documentation
          url: https://docs.trilio.io/openstack
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        provider:
          name: Trilio
          url: https://trilio.io/
        relatedImages:
        - registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82
        - registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:1ac93a84ea57a554e84fadf43839016324a432825b50e168702c88af5fcfd4d5
        - registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd
        - registry.connect.redhat.com/trilio/tvo-operator-rhoso@sha256:8073e7f803f0922c5b6532fdb99be45b6b2652bcd9d0ed554453d5e81ad1326a
        version: 6.1.10
      entries:
      - name: tvo-operator.6.1.10
        version: 6.1.10
      name: 6.1.x
    defaultChannel: 6.0.x
    packageName: tvo-operator
    provider:
      name: Trilio
      url: https://trilio.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: prometheus-exporter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometheus-exporter-operator.v0.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "monitoring.3scale.net/v1alpha1",
                "kind": "PrometheusExporter",
                "metadata": {
                  "name": "example-memcached"
                },
                "spec": {
                  "dbHost": "your-memcached-host",
                  "dbPort": 11211,
                  "grafanaDashboard": {
                    "label": {
                      "key": "autodiscovery",
                      "value": "enabled"
                    }
                  },
                  "type": "memcached"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/3scale/prometheus-exporter-operator:v0.7.0
          createdAt: "2023-09-07 00:00:00"
          description: Operator to setup 3rd party prometheus exporters, with a collection
            of grafana dashboards
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/3scale-ops/prometheus-exporter-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Configures a prometheus exporter to monitor a memcached instance
            displayName: PrometheusExporter
            kind: PrometheusExporter
            name: prometheusexporters.monitoring.3scale.net
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK to centralize the setup of 3rd party prometheus exporters on **Kubernetes/OpenShift**, with a collection of grafana dashboards.

          By just providing a few parameters like *dbHost* or *dbPort* (operator manage the container image, port, argument, command, volumes... and also prometheus `ServiceMonitor` and `GrafanaDashboard` k8s objects), you can setup different prometheus exporters to monitor:
          * The **internals from different databases**
          * **HTTP/TCP endpoints** (availability, latency, SSL/TLS certificate expiration...)
          * Any available **cloudwatch metric from any AWS Service**
          * Sendgrid email statistics (delivered, bounces, errors, spam...)

          Current prometheus exporters types supported, managed by same prometheus-exporter-operator:
          * memcached
          * redis
          * mysql
          * postgresql
          * sphinx
          * es (elasticsearch)
          * cloudwatch
          * probe (blackbox)
          * sendgrid

          The operator manages the lifecycle of the following objects:
          * Deployment (one per CR)
          * Service (one per CR)
          * ServiceMonitor (optional, one per CR)
          * GrafanaDashboard (optional, one per Namespace)

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale-ops/prometheus-exporter-operator#documentation).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale-ops/prometheus-exporter-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:
          * Raising any issues you find using Prometheus Exporter Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale-ops/prometheus-exporter-operator/pulls)
          * Submitting a patch or opening a PR
          * Improving [documentation](https://github.com/3scale-ops/prometheus-exporter-operator)
          * Talking about Prometheus Exporter Operator
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale-ops/prometheus-exporter-operator/issues).

          ### License
          Prometheus Exporter Operator is licensed under the [Apache 2.0 license](https://github.com/3scale-ops/prometheus-exporter-operator/blob/main/LICENSE)
        displayName: Prometheus Exporter Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - metrics
        - observability
        - prometheus
        - exporter
        - grafana
        - mysql
        - postgresql
        - memcached
        - redis
        - sphinx
        - elasticsearch
        - cloudwatch
        - blackbox
        - sendgrid
        links:
        - name: GitHub
          url: https://github.com/3scale-ops/prometheus-exporter-operator
        maintainers:
        - email: 3scale-operations@redhat.com
          name: 3scale Ops
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - quay.io/3scale/prometheus-exporter-operator:v0.7.0
        - quay.io/openshift-community-operators/prometheus-exporter-operator@sha256:e62276f4c7e583d1fb24997fa970662f1a8d510de0baea159ba796b48cff709b
        version: 0.7.0
      entries:
      - name: prometheus-exporter-operator.v0.7.0
        version: 0.7.0
      - name: prometheus-exporter-operator.v0.3.4
        version: 0.3.4
      name: alpha
    defaultChannel: alpha
    packageName: prometheus-exporter-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: volume-expander-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: volume-expander-operator.v0.3.6
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Storage,Monitoring
          certified: "false"
          containerImage: quay.io/redhat-cop/volume-expander-operator@sha256:e4059a66a9af7c786c8c651abb8a57a55a0e528342e3a59f8c264b40f87d6e25
          createdAt: "2022-05-05T13:25:53Z"
          description: This operator provides automation expanding pod's volumes when
            they are about to run out of space.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: volume-expander-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/volume-expander-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The purpose of the volume-expander-operator is to expand volumes when they are running out of space.
          This is achieved by using the [volume expansion feature](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#expanding-persistent-volumes-claims).

          The operator periodically checks the `kubelet_volume_stats_used_bytes` and `kubelet_volume_stats_capacity_bytes published` by the kubelets to decide when to expand a volume.
          Notice that these metrics are generated only when a volume is mounted to a pod. Also the kubelet takes a minute or two to start generating accurate values for these metrics. The operator accounts for that.

          This operator works based on the following annotations to PersistentVolumeClaim resources:

          | Annotation | Default &nbsp;  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  | Description  |
          | :--- | :--- | :--- |
          | `volume-expander-operator.redhat-cop.io/autoexpand`  | N/A  | if set to "true" enables the volume-expander-operator to watch on this PVC  |
          | `volume-expander-operator.redhat-cop.io/polling-frequency`  | `"30s"` | How frequently to poll the volume metrics. Express this value as a valid golang [Duration](https://golang.org/pkg/time/#ParseDuration)  |
          | `volume-expander-operator.redhat-cop.io/expand-threshold-percent` | `"80"` | the percentage of used storage after which the volume will be expanded. This must be a positive integer. |
          | `volume-expander-operator.redhat-cop.io/expand-by-percent` | `"25"` | the percentage by which the volume will be expanded, relative to the current size. This must be an integer between 0 and 100 |
          | `volume-expander-operator.redhat-cop.io/expand-up-to` | MaxInt64 | the upper bound for this volume to be expanded to. The default value is the largest quantity representable and is intended to be interpreted as infinite. If the default is used it is recommend to ensure the namespace has a quota on the used storage class. |

          Note that not all of the storage driver implementations support volume expansion. It is a responsibility of the user/platform administrator to ensure that storage class and the persistent volume claim meet all the requirements needed for the volume expansion feature to work properly.

          This operator was tested with [OCS](https://www.redhat.com/en/technologies/cloud-computing/openshift-container-storage), but should work with any other storage driver that supports volume expansion.
        displayName: Volume Expander Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - volume
        - storage
        - csi
        - expansion
        links:
        - name: Volume Expander Operator
          url: https://github.com/redhat-cop/volume-expander-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/volume-expander-operator@sha256:e4059a66a9af7c786c8c651abb8a57a55a0e528342e3a59f8c264b40f87d6e25
        - quay.io/openshift-community-operators/volume-expander-operator@sha256:b775df99f891e2cee9c2169e9c948a8d61d65b4cc90f36752b46a56e2d4be602
        version: 0.3.6
      entries:
      - name: volume-expander-operator.v0.3.6
        version: 0.3.6
      - name: volume-expander-operator.v0.3.5
        version: 0.3.5
      - name: volume-expander-operator.v0.3.4
        version: 0.3.4
      - name: volume-expander-operator.v0.3.3
        version: 0.3.3
      - name: volume-expander-operator.v0.3.2
        version: 0.3.2
      - name: volume-expander-operator.v0.3.1
        version: 0.3.1
      - name: volume-expander-operator.v0.3.0
        version: 0.3.0
      - name: volume-expander-operator.v0.2.0
        version: 0.2.0
      - name: volume-expander-operator.v0.1.8
        version: 0.1.8
      - name: volume-expander-operator.v0.1.7
        version: 0.1.7
      - name: volume-expander-operator.v0.1.6
        version: 0.1.6
      - name: volume-expander-operator.v0.1.5
        version: 0.1.5
      - name: volume-expander-operator.v0.1.4
        version: 0.1.4
      - name: volume-expander-operator.v0.1.3
        version: 0.1.3
      - name: volume-expander-operator.v0.1.2
        version: 0.1.2
      - name: volume-expander-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: volume-expander-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc
      provider-url: ""
    name: openshift-gitops-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-gitops-operator.v1.10.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:b0dc693854319ada341e2e3872b34d7db9823b470ed369edfde88d3ae73a40e1
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.8.19\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:2bec31b0c5407ffcecfd8b860d8afb1629eaab31a250f60191f94a824e0a52f4
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:c779ad87a7f71d851c2af818abf16e5151c43d3fd54e64eac2fc7117c00753f5
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:a74e0a1fe3589ebe9f226a2bad20e9a5d5601a0e62c5f3290902f466f55b7160
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:ed530db9b4a29fb591ea208cd0c6b3b83b49537ff5a0a4f501b54ce667f9b303
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:b0dc693854319ada341e2e3872b34d7db9823b470ed369edfde88d3ae73a40e1
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:b5c8a6c7438a45125fc7fd970946f715ab7193b7446d625fae80dde9d1f3f914
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:ece2fee4227ad1becadca47028b78ceaf8717a98ec84e3f1b5188a135c4b093c
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:0905ba3f5cf87780a1e95b6a00ea7cd340d4ed1b5054e4b2c82406270baeaefa
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:d35dff5d59e748ef0404e7e76b0237ea96b2bb19b86fa04a3a34df7a379277b2
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:da5d5061dbc2ec5082cf14b6c600fb5400b83cf91d7ccebfa80680a238d275db
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:4c842f0ea8f0e9b53eb16d94488fc2f4298bd8e4be2f48713be9157da24549e6
        version: 1.10.6
      entries:
      - name: openshift-gitops-operator.v1.10.6
        version: 1.10.6
      - name: openshift-gitops-operator.v1.10.5
        version: 1.10.5
      - name: openshift-gitops-operator.v1.10.4
        version: 1.10.4
      - name: openshift-gitops-operator.v1.10.3
        version: 1.10.3
      - name: openshift-gitops-operator.v1.10.2
        version: 1.10.2
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.10
    - currentCSV: openshift-gitops-operator.v1.11.7-0.1724840231.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d6ad2ee900bf99a3672049cc8ce9c94870d41176501ded1abbc1b229b9553401
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          olm.substitutesFor: openshift-gitops-operator.v1.11.7
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.9.21\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:4d22a7a6cc2f0442889512267ae3d9356f05ff0dfdbbe137c3d8ebebc24818c8
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:0b926fc9eae775425faa1ab9709a36fdac15afe4bfe523720e17ecf5df45bb28
        - registry.redhat.io/rhel8/redis-6@sha256:c4a98010f7dd5faec2047bb9803061704233a8efc930be2a02386ac16d062d86
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:42f809f32f1d43186b849e3cc78063d3ebb2b54c55b2a1b77908af09a5ce044b
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d6ad2ee900bf99a3672049cc8ce9c94870d41176501ded1abbc1b229b9553401
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:c94c2167dc957856682a104b9a6187d3d321dec71ae794acc0dc37794d2cc373
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:31bdff225bd825d02ce0f468b1edc77541ce85b7b9111f14a583c418c984232f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:0df37cf0a0e48efae02a0711c6da61c6165e7856db97097e98d56c8b6a137bb9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:eade50b8321c1b2e0a8ac4dcb34596d43dea0a137b8b97b6eb68c6d469c8b200
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:959de6a95ef8978f66fdbe1033bcaa0ddeff9a376023e5d1d2698c5acb417305
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:7ea96000768b3cf7711150531c4c1c7edff2c45a2f29fe10bd9811ab6b281909
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        version: 1.11.7+0.1724840231.p
      entries:
      - name: openshift-gitops-operator.v1.11.7-0.1724840231.p
        version: 1.11.7+0.1724840231.p
      - name: openshift-gitops-operator.v1.11.7
        version: 1.11.7
      - name: openshift-gitops-operator.v1.11.6
        version: 1.11.6
      - name: openshift-gitops-operator.v1.11.5
        version: 1.11.5
      - name: openshift-gitops-operator.v1.11.4
        version: 1.11.4
      - name: openshift-gitops-operator.v1.11.3
        version: 1.11.3
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.11
    - currentCSV: openshift-gitops-operator.v1.12.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:48dd1254fd3a887aef2eae9239f68637eae18514a50f72ea504414d83dc727b8
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.10.18\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:33bbb88343285a0510670384b87d0226dd6de8aa12c78b68921362c4d6f5a6aa
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:7d82c719b1cef64607d30e8aaa5ab293955771c5b1dbd430e0befc988a43356d
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:80198f65f7e3f9022a34e0342e9423807b855dcb7bda810172eebc9a27afb5c2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:73918f3b3c507fc64006b7a500ecfa9d58151d694852f696c41a4412edffc78e
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:1cf485a889c7586cb4944f000b53c0e97d08f97ba14e580bec57dad7cb13712e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:a1d4e26ea755181818401697f18260b9e876aa441be14830f9142081ee22a24d
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:06a6637c4776f4285bcb295d327ee60b1aed61b7adc5f7ab52898d79281ced70
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9e0fee30842a16d7b8a39d336123c80c5271cb2ceb50759fc7ee51a4ed09ceb3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:dbf3038daf7c797123c511f9a609c3485cb1a5bcae53c614fad17e0a65fa7ee3
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:b5736d1106db29fcdf42328ca20b96382d4339f90b97a07120ea73ee174ea1ad
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:48dd1254fd3a887aef2eae9239f68637eae18514a50f72ea504414d83dc727b8
        - registry.redhat.io/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        version: 1.12.6
      entries:
      - name: openshift-gitops-operator.v1.12.6
        version: 1.12.6
      - name: openshift-gitops-operator.v1.12.5-0.1727371523.p
        version: 1.12.5+0.1727371523.p
      - name: openshift-gitops-operator.v1.12.5
        version: 1.12.5
      - name: openshift-gitops-operator.v1.12.4
        version: 1.12.4
      - name: openshift-gitops-operator.v1.12.3
        version: 1.12.3
      - name: openshift-gitops-operator.v1.12.2
        version: 1.12.2
      - name: openshift-gitops-operator.v1.12.1
        version: 1.12.1
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.12
    - currentCSV: openshift-gitops-operator.v1.13.3-0.1741683398.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d41034bcf5c28bcb8afef08678793d0cc27a4032e2811a0c496c3bd0f10ecc17
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          olm.substitutesFor: openshift-gitops-operator.v1.13.3-0.1738142397.p
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.22.2
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.11.12\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_gitops/
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d4d5724f67859d24c32f0f5735f5af3e325f77db97f58bc7f17ed4b831b7e534
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d41034bcf5c28bcb8afef08678793d0cc27a4032e2811a0c496c3bd0f10ecc17
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:3f2804bc2af437ff1f06c214b48a1a780dfcfab995650d901c03270057eb9f3c
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:f04d565eb5162fd5a9c78cd8443af6a3b184a660277537f1d6d575caa2e85441
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c02dc2c79ee24ce5450ea4e19493ac2a1997eeb5bfd359291642c529826d0cdd
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:b982df02ea7c45a7603d83fe82cac12e1faac303a1b72af6a727512bb97441df
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:06a6637c4776f4285bcb295d327ee60b1aed61b7adc5f7ab52898d79281ced70
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:8a7c3e31ce414e6c6fecf1652343b22c52502902676bf4d7a75bf42bdabfca06
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:a366229e6ee26ebe2d7f765b2a2da6057a29e783835655b5d97545ac563b541a
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:e87515d016565bb69cb2c2ac40432e0127dd2cb20a490ac82019836032ba15e5
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:bde11fa83b7e708677b08ea995041f480b88edfb93e4a62c10380d101c0a349c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        version: 1.13.3+0.1741683398.p
      entries:
      - name: openshift-gitops-operator.v1.13.3-0.1741683398.p
        version: 1.13.3+0.1741683398.p
      - name: openshift-gitops-operator.v1.13.3-0.1738142397.p
        version: 1.13.3+0.1738142397.p
      - name: openshift-gitops-operator.v1.13.3
        version: 1.13.3
      - name: openshift-gitops-operator.v1.13.2
        version: 1.13.2
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.13
    - currentCSV: openshift-gitops-operator.v1.14.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:7cf924af77d9c56e70710b99e080ed8aee162f05ec472f32085a76ef85cf9879
          createdAt: "2025-05-22 12:40:45"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.12.13-1\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_gitops/
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bcf6b3136a5e71803cb518c8763c165bb46ee37ef7bf55503911d7fcb36b3a8f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:7cf924af77d9c56e70710b99e080ed8aee162f05ec472f32085a76ef85cf9879
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:2c45cfc01f9ec7577afc09cadc4c1a6f470836f6a0a7c24d66b791913f89bb05
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8096f824bd96e3148cf4b6936766c888d1fff0af9e9d0be440ae4feb6adc03f2
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:773592dfb9964970f444871a8812e8b74db3f205faaa0bf148defa1a2b87b649
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:42a79aad641e8607fc339e4ce7f9cf1d258be01f863dbc31a94d2c27edb645bd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1ed3b514bf9af6ac0d386e3739874d1d964e667d54e041c2d67edd769b0009fb
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c369df980874aae270ca7bc6455f1ca45467d75d25fe80d7bcb06a7826bdeaa3
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:7358787959af7e7e589edfc043a97d80ebab87536bde365d33be7a600071bf0e
        - registry.redhat.io/rhel8/redis-6@sha256:a9f30ed08abcab0122556a5485fbcf6e0fc03860f19954dcebdbf5e754876a45
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:1112160243f227a5d393eeee165bd4fed0d3f42646a9280cbe9af60ef728aeb2
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:b7d3c882fc25fbbea28951afb197d4d47ace253864889339396e20f0c6897a7f
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:cd4965d91c163160bcf43a02c54ca60b8704281c95de904f904df942bfd83bcd
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:97e32825f59c33cca7d8dba3580095205c20435ccd15b91cf0aff37db9841e0e
        version: 1.14.4
      entries:
      - name: openshift-gitops-operator.v1.14.4
        version: 1.14.4
      - name: openshift-gitops-operator.v1.14.3-0.1746016855.p
        version: 1.14.3+0.1746016855.p
      - name: openshift-gitops-operator.v1.14.3-0.1742836272.p
        version: 1.14.3+0.1742836272.p
      - name: openshift-gitops-operator.v1.14.3
        version: 1.14.3
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.14
    - currentCSV: openshift-gitops-operator.v1.15.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad49a3d14f843bde0d2365093d00ffa6d3b9d59a75c81e0c56710ad37b53bd92
          createdAt: "2024-11-25T03:57:37Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v2.13.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:911733d78ae6f36f642b4d63f044cd102b7eee170508eaf518ac7acf0f339698
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:41717c27915251bda8afeef651b609b8a9ed410e0fa09c4cf8fa7e91d6a94292
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad49a3d14f843bde0d2365093d00ffa6d3b9d59a75c81e0c56710ad37b53bd92
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:56653df97e4498ecd67b9645d75e44f65c625594e312dbcf0f09937b57d76010
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d41454824632475f0e88aa6e0031ec643bd37e1d575df36cd3ee63daf1403281
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:0c7f72546d0d918bfd21aff7157b983ff7c832b269f5efb84d2ed723a09bf612
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:6cec76d7ea70d77923cf4285177e375d34e96e3aecbe77b68cd5ff769e6e540b
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:2dd72760f736ab13e87d6e507e654c390d2d6af3154c6adb85610b5f58085b9c
        - registry.redhat.io/rhel9/redis-7@sha256:2fca0decc49230122f044afb2e7cd8f64921a00141c8c22c2f1402f3564f87f8
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:0b1771f697a700263c5b827dbde56a5c9bab610e9d7df55ef93885a4e54cc0e9
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:a9e2360f00c5c9840a100a6748bd905b8f34169140a33fb0ca4af9cf6db71642
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:5bda26e2c16beebf66dd8f3c3c55d48e2f00db870f2d9d4d44570d9d3b8bddb0
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:4d945dd1a6fc0e8b6cfc16f4359128f1427b094e76efd4ff31325a1839246107
        version: 1.15.4
      entries:
      - name: openshift-gitops-operator.v1.15.4
        version: 1.15.4
      - name: openshift-gitops-operator.v1.15.3
        version: 1.15.3
      - name: openshift-gitops-operator.v1.15.2
        version: 1.15.2
      - name: openshift-gitops-operator.v1.15.1
        version: 1.15.1
      - name: openshift-gitops-operator.v1.15.0-0.1738074324.p
        version: 1.15.0+0.1738074324.p
      - name: openshift-gitops-operator.v1.15.0
        version: 1.15.0
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.15
    - currentCSV: openshift-gitops-operator.v1.16.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:5672066f6a9d79c2ad2b8e44713fa67f384f5e1af803ce92c1bb807e12eb2ab4
          createdAt: "2025-09-30T07:01:55Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:3a58f07c4a562d106ec65fbeac3329fd06035e0da4627199cc984200e8365fac
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v2.14.21\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:3a58f07c4a562d106ec65fbeac3329fd06035e0da4627199cc984200e8365fac
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:1e7fb9262023798711dc58fecf9c57c2fbd260a7f942eef2a9fd2822dbfb0b74
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:636d307f13d82dd8984e362490fb3c8938b05d452e65f44c7c247e7fc4a8be8c
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:1a4d9d6d6c917a161fa3797fedf722a1ba9211eaa4c52cf976bebb629eabe40c
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:1935460f871ad2cc9fe097e1a7e32a67b4b4a3c58aa0412cffc28823f4ffb49f
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:2d361df79b6ea75f15eed2d6726303351298b47b4fee75aa8aac255a19e1ddbf
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:cebe39bdefb8ffc375f3d5f14bee4249f9886678a75fc5c80e43c6daabc5ef16
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:306ddf66c42edbebfdd35199b00edec8e3b01080e320b8d26f4527e89ff81f82
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:5672066f6a9d79c2ad2b8e44713fa67f384f5e1af803ce92c1bb807e12eb2ab4
        version: 1.16.5
      entries:
      - name: openshift-gitops-operator.v1.16.5
        version: 1.16.5
      - name: openshift-gitops-operator.v1.16.4
        version: 1.16.4
      - name: openshift-gitops-operator.v1.16.3
        version: 1.16.3
      - name: openshift-gitops-operator.v1.16.2
        version: 1.16.2
      - name: openshift-gitops-operator.v1.16.1
        version: 1.16.1
      - name: openshift-gitops-operator.v1.16.0-0.1746014725.p
        version: 1.16.0+0.1746014725.p
      - name: openshift-gitops-operator.v1.16.0
        version: 1.16.0
      - name: openshift-gitops-operator.v1.15.1
        version: 1.15.1
      - name: openshift-gitops-operator.v1.15.0
        version: 1.15.0
      - name: openshift-gitops-operator.v1.15.0-0.1738074324.p
        version: 1.15.0+0.1738074324.p
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.16
    - currentCSV: openshift-gitops-operator.v1.17.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad283faec7d54c2d4d255800929963c4e9ba929ddae1e779ff661088d7ceab0d
          createdAt: "2025-12-08T07:34:14Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:acc435158c325019d6c479c7d41107945207518869b434ea5c827c8c9babd00b
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.0.20\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:e1101b02df32a56a9aec80639372248b72963240dc86add446d0d07da65baca7
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:c02ad9e0709fbe52a34d9e8c146c90782cd49e351ce27e74e299cb9762246562
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad283faec7d54c2d4d255800929963c4e9ba929ddae1e779ff661088d7ceab0d
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8ea41862301665deb2eafd16fa19d4d76663cd20829256b575ba7090889cff82
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:d5233a088e71464f08d05f8a1f04efc236684634c89afcb93dbf3ac81a740a82
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bafe22c773f034d4cb4c0498f2f669abff23927378b424a05ba13b196f242710
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:eb6bb1adf263abf1cc4f297f9db8289aff4c8bd73c3f9b8968facc1bdd2ee17a
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:acc435158c325019d6c479c7d41107945207518869b434ea5c827c8c9babd00b
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:56ea8e384f20a903c9b42da1d244f0ec98c77916e4efebb53f876e459761038e
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:724b4f15d0c255cc9c096cb44331ddc2e6456d4909d03ce463478af76b33304e
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        version: 1.17.3
      entries:
      - name: openshift-gitops-operator.v1.17.3
        version: 1.17.3
      - name: openshift-gitops-operator.v1.17.2
        version: 1.17.2
      - name: openshift-gitops-operator.v1.17.1
        version: 1.17.1
      - name: openshift-gitops-operator.v1.17.0
        version: 1.17.0
      name: gitops-1.17
    - currentCSV: openshift-gitops-operator.v1.18.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - \"\"\n  - discovery.k8s.io\n  kinds:\n  - Endpoints\n  - EndpointSlice\n- apiGroups:\n  - apiregistration.k8s.io\n  kinds:\n  - APIService\n- apiGroups:\n  - coordination.k8s.io\n  kinds:\n  - Lease\n- apiGroups:\n  - authentication.k8s.io\n  - authorization.k8s.io\n  kinds:\n  - SelfSubjectReview\n  - TokenReview\n  - LocalSubjectAccessReview\n  - SelfSubjectAccessReview\n  - SelfSubjectRulesReview\n  - SubjectAccessReview\n- apiGroups:\n  - certificates.k8s.io\n  kinds:\n  - CertificateSigningRequest\n- apiGroups:\n  - cert-manager.io\n  kinds:\n  - CertificateRequest\n- apiGroups:\n  - cilium.io\n  kinds:\n  - CiliumIdentity\n  - CiliumEndpoint\n  - CiliumEndpointSlice\n- apiGroups:\n  - kyverno.io\n  - reports.kyverno.io\n  - wgpolicyk8s.io\n  kinds:\n  - PolicyReport\n  - ClusterPolicyReport\n  - EphemeralReport\n  - ClusterEphemeralReport\n  - AdmissionReport\n  - ClusterAdmissionReport\n  - BackgroundScanReport\n  - ClusterBackgroundScanReport\n  - UpdateRequest\n- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun\n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:95aa28b8b04efde78d2e4495d2c58e7f8ebd5b399cb2afda927eb01011d2061e
          createdAt: "2025-11-20T04:44:08Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:93d8de005289f52067f01295aad9ac47a1a618dd2f0865d2d8e2a3130281383d
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.1.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:684edd8ef336440fe06964bd977c0051ffb1b4df00c47ccabed710c48d19bbc3
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:93d8de005289f52067f01295aad9ac47a1a618dd2f0865d2d8e2a3130281383d
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b4d6b30d562e1cacbb1ca461e8c14b95c0d42be1baf876599c446669f2584feb
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c0e231e430daaff0b7a5b06f9b8628a2fe0ea3a82a314d42a364fe7f883f075a
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:337d52feb9a42ad04aa91211f41040db48e2de3a09266a516183882f9f587a6a
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:89263c0ed73f6f3bf6f73d9ed32c459489e1adf2b423ab73926b5343064d88a8
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:d5cf5da89528ed1505c0695183f432f1501b0226ce6402e84b7895ad14620d5d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:d7cec49c3e3ef02a3378ecd94f64a7e94f5ed93b5e7e6ff81f8d758eeabcb7c0
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:772adc241b808829d62631a288cef0b3d9cfb617f00d84aa3893616e48e30885
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:95aa28b8b04efde78d2e4495d2c58e7f8ebd5b399cb2afda927eb01011d2061e
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        version: 1.18.2
      entries:
      - name: openshift-gitops-operator.v1.18.2
        version: 1.18.2
      - name: openshift-gitops-operator.v1.18.1
        version: 1.18.1
      - name: openshift-gitops-operator.v1.18.0
        version: 1.18.0
      name: gitops-1.18
    - currentCSV: openshift-gitops-operator.v1.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - \"\"\n  - discovery.k8s.io\n  kinds:\n  - Endpoints\n  - EndpointSlice\n- apiGroups:\n  - apiregistration.k8s.io\n  kinds:\n  - APIService\n- apiGroups:\n  - coordination.k8s.io\n  kinds:\n  - Lease\n- apiGroups:\n  - authentication.k8s.io\n  - authorization.k8s.io\n  kinds:\n  - SelfSubjectReview\n  - TokenReview\n  - LocalSubjectAccessReview\n  - SelfSubjectAccessReview\n  - SelfSubjectRulesReview\n  - SubjectAccessReview\n- apiGroups:\n  - certificates.k8s.io\n  kinds:\n  - CertificateSigningRequest\n- apiGroups:\n  - cert-manager.io\n  kinds:\n  - CertificateRequest\n- apiGroups:\n  - cilium.io\n  kinds:\n  - CiliumIdentity\n  - CiliumEndpoint\n  - CiliumEndpointSlice\n- apiGroups:\n  - kyverno.io\n  - reports.kyverno.io\n  - wgpolicyk8s.io\n  kinds:\n  - PolicyReport\n  - ClusterPolicyReport\n  - EphemeralReport\n  - ClusterEphemeralReport\n  - AdmissionReport\n  - ClusterAdmissionReport\n  - BackgroundScanReport\n  - ClusterBackgroundScanReport\n  - UpdateRequest\n- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun\n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
          createdAt: "2025-11-20T04:37:10Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.0 <1.19.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: ImageUpdater
            name: imageupdaters.argocd-image-updater.argoproj.io
            version: v1alpha1
          - kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.1.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:5e78b9e6a98218c209af1d85e60c2000172a90f178f32f06f0e3b6bc11f33cce
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:5365dfcdcedde372b9d7cc787107b05f997c7526fd1d473e26f843718a5be92d
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c650147ab5940d7095eaee89ba75956726838595057ab6b216d41d0f09265f30
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8afea9d7876656c931f8050979d6d92c85b01069c7a5f2de46c0f65002663458
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
        version: 1.19.0
      entries:
      - name: openshift-gitops-operator.v1.19.0
        version: 1.19.0
      name: gitops-1.19
    - currentCSV: openshift-gitops-operator.v1.6.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:104cc7564fcc3261faa3fbf9c95720b4434e15103b876c080ed012b244ef1dae
          createdAt: "2021-09-15T22:31:21Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD v2.4.28\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces. \n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc.
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:104cc7564fcc3261faa3fbf9c95720b4434e15103b876c080ed012b244ef1dae
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0cc4fa704e581cd5581c816668183f602fae6ef9ab3c04ce0d99d561287ef140
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:dbcad68b70ab7918e944099aef4177c9bc3378e9ca49499dbb94a175927d3209
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:e9e2f950cda8153cff112e43872b98e4977d3cbdf59713b8de92defef6d34b6d
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:06f1150114d4c0bd236d2a5d4716c9c3e95a9733058297790389d6ba2a1bf264
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b22190de3162d3e03481cae8904ce563912756eea7ac7e7feec0acbbdae5e6f6
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        version: 1.6.6
      entries:
      - name: openshift-gitops-operator.v1.6.6
        version: 1.6.6
      - name: openshift-gitops-operator.v1.6.5
        version: 1.6.5
      - name: openshift-gitops-operator.v1.6.4
        version: 1.6.4
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.6
    - currentCSV: openshift-gitops-operator.v1.7.4-0.1690486082.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:e0967a4058fe5a9bfe7e998a3347529c99536cf3a44de9e40f9632035ff5a2fe
          createdAt: "2021-09-15T22:31:21Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          olm.substitutesFor: openshift-gitops-operator.v1.7.4
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD v2.5.16\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficient privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces. \n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc.
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:f1371d2012796e9aaca105112190ff89ec3d0be95968e05b19db101480f67975
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:c2f39be75173b4cc57498c5845b14c464bf9af92b49716df9661c8135ac2cf7a
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:45789c49d9334e0ed062641313714c101bd0117dc5633316b1ec63e7a6c76c15
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:5c11be8ec9db54331893f2f298aa27006e77b0eaded2d88d0531c77da91a421f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:e0967a4058fe5a9bfe7e998a3347529c99536cf3a44de9e40f9632035ff5a2fe
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c55aadf45397083bec4e42d6c0514ed79169a07fd3d9d75671904df2c0520e52
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:26050fb95978e90e8d00e895032045e77cb236008a0e1417459e1aeca8a48c69
        version: 1.7.4+0.1690486082.p
      entries:
      - name: openshift-gitops-operator.v1.7.4-0.1690486082.p
        version: 1.7.4+0.1690486082.p
      - name: openshift-gitops-operator.v1.7.4
        version: 1.7.4
      - name: openshift-gitops-operator.v1.7.3
        version: 1.7.3
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.7
    - currentCSV: openshift-gitops-operator.v1.8.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:f32df77b3c23d6a833ff887386285ca7a5bd436641f0ec1ffc934c8247fa315f
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          olm.skipRange: ""
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.6.153\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8cc59901689858e06f5c2942f8c975449c17454fa8364da6153d9b5a3538a985
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b2d58f4dc20eb7e17e09af0e8c5de55fa04f9f4f697e10c6be81a7a6a08381b2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:f32df77b3c23d6a833ff887386285ca7a5bd436641f0ec1ffc934c8247fa315f
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0d13c03048b4435d9f5045a6fb7bd4b8808461b26aeca60c0047fa5937e1d45d
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:f77594bc053be144b33ff9603ee9675c7e82946ec0dbfb04d8f942c8d73155da
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:8aa68fddef88921aeeede24a849d3dabbceff01dc03185342c21e6ee58033eaf
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:16d9184345e6d5a19f326a7b52f76d8a59b96763f233c50546ff017a625e5ff5
        version: 1.8.6
      entries:
      - name: openshift-gitops-operator.v1.8.6
        version: 1.8.6
      - name: openshift-gitops-operator.v1.8.5
        version: 1.8.5
      - name: openshift-gitops-operator.v1.8.4-0.1693214052.p
        version: 1.8.4+0.1693214052.p
      - name: openshift-gitops-operator.v1.8.4
        version: 1.8.4
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.8
    - currentCSV: openshift-gitops-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "argo-rollout"
                },
                "spec": null
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:11a6084e11aa32511a34bd6cfb4f4995aec690c1f5ed61861e99f6e42d62afb4
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          olm.skipRange: ""
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.7.16\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:11a6084e11aa32511a34bd6cfb4f4995aec690c1f5ed61861e99f6e42d62afb4
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:3873d1f18b5643e1de2601419410270342650a21428bb26a4cbee20c0c63f98b
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:136d3a936759e112d3ea2e78f7c02bd882b0fd3011f4c452f45c32c43822772d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:43bb961d847477902e66a92edd1539322cac8d5f74706b048a458ad037a0c7a3
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:80f92842fe4cba008a873ad2ab6059a3a24e76e16671d8ece034dbbe666996bc
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:86012145d4b8798dc12f6f4f07a9316a193188aaac865e324b63f4e60e8ec584
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:3d17786e2f4063154b9e3a40b96bf8ec0a14b86395cea5fe7ca18c5b43764478
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:27efa0ab1d9c69047a924bc1dcd2b56108f5f390a6da56afb6ab7a37cb4578e2
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:a568c8c647e2e2d6abdf12138eeef8f8bdde1fdcbf786e9ca8c8f93bc79acaf9
        version: 1.9.4
      entries:
      - name: openshift-gitops-operator.v1.9.4
        version: 1.9.4
      - name: openshift-gitops-operator.v1.9.3
        version: 1.9.3
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.9
    - currentCSV: openshift-gitops-operator.v1.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - \"\"\n  - discovery.k8s.io\n  kinds:\n  - Endpoints\n  - EndpointSlice\n- apiGroups:\n  - apiregistration.k8s.io\n  kinds:\n  - APIService\n- apiGroups:\n  - coordination.k8s.io\n  kinds:\n  - Lease\n- apiGroups:\n  - authentication.k8s.io\n  - authorization.k8s.io\n  kinds:\n  - SelfSubjectReview\n  - TokenReview\n  - LocalSubjectAccessReview\n  - SelfSubjectAccessReview\n  - SelfSubjectRulesReview\n  - SubjectAccessReview\n- apiGroups:\n  - certificates.k8s.io\n  kinds:\n  - CertificateSigningRequest\n- apiGroups:\n  - cert-manager.io\n  kinds:\n  - CertificateRequest\n- apiGroups:\n  - cilium.io\n  kinds:\n  - CiliumIdentity\n  - CiliumEndpoint\n  - CiliumEndpointSlice\n- apiGroups:\n  - kyverno.io\n  - reports.kyverno.io\n  - wgpolicyk8s.io\n  kinds:\n  - PolicyReport\n  - ClusterPolicyReport\n  - EphemeralReport\n  - ClusterEphemeralReport\n  - AdmissionReport\n  - ClusterAdmissionReport\n  - BackgroundScanReport\n  - ClusterBackgroundScanReport\n  - UpdateRequest\n- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun\n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
          createdAt: "2025-11-20T04:37:10Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.0 <1.19.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: ImageUpdater
            name: imageupdaters.argocd-image-updater.argoproj.io
            version: v1alpha1
          - kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.1.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:5e78b9e6a98218c209af1d85e60c2000172a90f178f32f06f0e3b6bc11f33cce
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8afea9d7876656c931f8050979d6d92c85b01069c7a5f2de46c0f65002663458
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:5365dfcdcedde372b9d7cc787107b05f997c7526fd1d473e26f843718a5be92d
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c650147ab5940d7095eaee89ba75956726838595057ab6b216d41d0f09265f30
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        version: 1.19.0
      entries:
      - name: openshift-gitops-operator.v1.19.0
        version: 1.19.0
      - name: openshift-gitops-operator.v1.18.2
        version: 1.18.2
      - name: openshift-gitops-operator.v1.18.1
        version: 1.18.1
      - name: openshift-gitops-operator.v1.18.0
        version: 1.18.0
      - name: openshift-gitops-operator.v1.17.1
        version: 1.17.1
      - name: openshift-gitops-operator.v1.17.0
        version: 1.17.0
      - name: openshift-gitops-operator.v1.16.2
        version: 1.16.2
      - name: openshift-gitops-operator.v1.16.1
        version: 1.16.1
      - name: openshift-gitops-operator.v1.16.0-0.1746014725.p
        version: 1.16.0+0.1746014725.p
      - name: openshift-gitops-operator.v1.16.0
        version: 1.16.0
      - name: openshift-gitops-operator.v1.15.1
        version: 1.15.1
      - name: openshift-gitops-operator.v1.15.0-0.1738074324.p
        version: 1.15.0+0.1738074324.p
      - name: openshift-gitops-operator.v1.15.0
        version: 1.15.0
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: latest
    defaultChannel: latest
    packageName: openshift-gitops-operator
    provider:
      name: Red Hat Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CyberArk
      provider-url: https://www.cyberark.com/
    name: conjur-follower-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: conjur-follower-operator.v2.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "conjur.cyberark.com/v1",
                "kind": "ConjurFollower",
                "metadata": {
                  "labels": {
                    "app": "conjur-follower"
                  },
                  "name": "my-conjur-follower",
                  "namespace": "cyberark-conjur"
                },
                "spec": {
                  "images": {
                    "configurator": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:75fb5de2c111084ffcc3d973e6c63f1adfae78e29f6fd02152419fbca553ce7b",
                    "conjur": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:bee2cd31b3620a31e98f9d21326a2cdcecb36479099b06cc9660e4e83354d940",
                    "failoverRebaser": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:383776c23556a0a327a0bacc843d22c4b1516082ddd0cfb8a8275500f2eb841a",
                    "info": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:a9b109c7f3bfba5553aa4366338fa211896564f8e33856d75b4918acf8429f1e",
                    "nginx": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:b3096c17e7f3b9d723c906619dde293ea084e78c0da48c534335a8eee07b23c7",
                    "postgres": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:680a2044bc0e94fbc9376cd1eed9d067de91657f566c9752654480c939447841",
                    "syslogNg": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:ed53aea1866b1e2262386ac38cb9e1e47cc3f9047ae47f49070e2f506af6ca5a"
                  },
                  "livenessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "master": {
                    "account": "demo",
                    "audience": "https://conjur.host.name/",
                    "authentication": "authn-jwt",
                    "authenticatorID": "my-authenticator-id",
                    "caCertificateFrom": {
                      "configMapKeyRef": {
                        "key": "ca.crt",
                        "name": "conjur-master-ca.crt"
                      }
                    },
                    "hostname": "conjur-master.mycompany.local"
                  },
                  "readinessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          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: "true"
          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.skipRange: '>=2.5.0 <2.5.3'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: CyberArk
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConjurFollower is the Schema for the conjurfollowers API
            displayName: ConjurFollower
            kind: ConjurFollower
            name: conjurfollowers.conjur.cyberark.com
            version: v1
        description: |-
          Use this Operator for managing Conjur Followers in an OpenShift cluster.

          CyberArk products secure your most sensitive and high-value assets—and supporting your Identity Security goals is our top priority. We offer 24/7 service for high priority issues to all customers with resources across ten countries and in all continents.

          CyberArk Conjur makes secrets management simple. Conjur provides a seamless open source interface to securely authenticate, control, and audit non-human access across tools, applications, containers, and cloud environments via robust secrets management.
        displayName: Conjur Enterprise Follower Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - credential
        - cyber
        - cyberark
        - conjur
        - enterprise
        - management
        - password
        - secret
        - secrets management
        - security
        - vault
        links:
        - name: Conjur Secrets Manager Enterprise Documentation
          url: https://docs.cyberark.com/Product-Doc/OnlineHelp/AAM-DAP/Latest/en/Content/Resources/_TopNav/cc_Home.htm
        maintainers:
        - email: conj_maintainers@cyberark.com
          name: Conjur Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:383776c23556a0a327a0bacc843d22c4b1516082ddd0cfb8a8275500f2eb841a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:75fb5de2c111084ffcc3d973e6c63f1adfae78e29f6fd02152419fbca553ce7b
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:ed53aea1866b1e2262386ac38cb9e1e47cc3f9047ae47f49070e2f506af6ca5a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:a9b109c7f3bfba5553aa4366338fa211896564f8e33856d75b4918acf8429f1e
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:b3096c17e7f3b9d723c906619dde293ea084e78c0da48c534335a8eee07b23c7
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:680a2044bc0e94fbc9376cd1eed9d067de91657f566c9752654480c939447841
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:bee2cd31b3620a31e98f9d21326a2cdcecb36479099b06cc9660e4e83354d940
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator-bundle@sha256:60b293c23587072b3376f83afee95b0207228c5c7b80483b025adda572c3551d
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator@sha256:cf46bdb4238cdb1dc51329822da55b7836958be2344d26f9e1819c0aa97fece6
        version: 2.5.3
      entries:
      - name: conjur-follower-operator.v2.5.3
        version: 2.5.3
      name: "2.5"
    - currentCSV: conjur-follower-operator.v2.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "conjur.cyberark.com/v1",
                "kind": "ConjurFollower",
                "metadata": {
                  "labels": {
                    "app": "conjur-follower"
                  },
                  "name": "my-conjur-follower",
                  "namespace": "cyberark-conjur"
                },
                "spec": {
                  "images": {
                    "configurator": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473",
                    "conjur": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e",
                    "ephemeralSecrets": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b",
                    "failoverRebaser": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3",
                    "info": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5",
                    "nginx": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6",
                    "postgres": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46",
                    "syslogNg": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a"
                  },
                  "livenessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "master": {
                    "account": "demo",
                    "audience": "https://conjur.host.name/",
                    "authentication": "authn-jwt",
                    "authenticatorID": "my-authenticator-id",
                    "caCertificateFrom": {
                      "configMapKeyRef": {
                        "key": "ca.crt",
                        "name": "conjur-master-ca.crt"
                      }
                    },
                    "hostname": "conjur-master.mycompany.local"
                  },
                  "readinessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          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: "true"
          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.skipRange: ""
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: CyberArk
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConjurFollower is the Schema for the conjurfollowers API
            displayName: ConjurFollower
            kind: ConjurFollower
            name: conjurfollowers.conjur.cyberark.com
            version: v1
        description: |-
          Use this Operator for managing Conjur Followers in an OpenShift cluster.

          CyberArk products secure your most sensitive and high-value assets—and supporting your Identity Security goals is our top priority. We offer 24/7 service for high priority issues to all customers with resources across ten countries and in all continents.

          CyberArk Conjur makes secrets management simple. Conjur provides a seamless open source interface to securely authenticate, control, and audit non-human access across tools, applications, containers, and cloud environments via robust secrets management.
        displayName: Conjur Enterprise Follower Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - credential
        - cyber
        - cyberark
        - conjur
        - enterprise
        - management
        - password
        - secret
        - secrets management
        - security
        - vault
        links:
        - name: Conjur Secrets Manager Enterprise Documentation
          url: https://docs.cyberark.com/Product-Doc/OnlineHelp/AAM-DAP/Latest/en/Content/Resources/_TopNav/cc_Home.htm
        maintainers:
        - email: conj_maintainers@cyberark.com
          name: Conjur Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator@sha256:69d276feb493b8450c42efeeb56d0a741855004505e1e3776e5a9d382358f7ad
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator-bundle@sha256:bb3beb8cd763b581c9471ff7f38d76ae3bc124587b5c3aa5b3af145641059582
        version: 2.7.1
      entries:
      - name: conjur-follower-operator.v2.7.1
        version: 2.7.1
      - name: conjur-follower-operator.v2.7.0
        version: 2.7.0
      - name: conjur-follower-operator.v2.6.3
        version: 2.6.3
      - name: conjur-follower-operator.v2.6.2
        version: 2.6.2
      - name: conjur-follower-operator.v2.6.1
        version: 2.6.1
      - name: conjur-follower-operator.v2.6.0
        version: 2.6.0
      - name: conjur-follower-operator.v2.5.0
        version: 2.5.0
      - name: conjur-follower-operator.v2.4.4
        version: 2.4.4
      - name: conjur-follower-operator.v2.4.3
        version: 2.4.3
      - name: conjur-follower-operator.v2.4.2
        version: 2.4.2
      - name: conjur-follower-operator.v2.3.5
        version: 2.3.5
      - name: conjur-follower-operator.v2.3.4
        version: 2.3.4
      - name: conjur-follower-operator.v2.3.1-290
        version: 2.3.1
      - name: conjur-follower-operator.v2.3.0
        version: 2.3.0
      - name: conjur-follower-operator.v2.2.4
        version: 2.2.4
      - name: conjur-follower-operator.v2.2.2
        version: 2.2.2
      - name: conjur-follower-operator.v2.2.1
        version: 2.2.1
      name: preview
    - currentCSV: conjur-follower-operator.v2.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "conjur.cyberark.com/v1",
                "kind": "ConjurFollower",
                "metadata": {
                  "labels": {
                    "app": "conjur-follower"
                  },
                  "name": "my-conjur-follower",
                  "namespace": "cyberark-conjur"
                },
                "spec": {
                  "images": {
                    "configurator": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473",
                    "conjur": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e",
                    "ephemeralSecrets": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b",
                    "failoverRebaser": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3",
                    "info": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5",
                    "nginx": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6",
                    "postgres": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46",
                    "syslogNg": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a"
                  },
                  "livenessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "master": {
                    "account": "demo",
                    "audience": "https://conjur.host.name/",
                    "authentication": "authn-jwt",
                    "authenticatorID": "my-authenticator-id",
                    "caCertificateFrom": {
                      "configMapKeyRef": {
                        "key": "ca.crt",
                        "name": "conjur-master-ca.crt"
                      }
                    },
                    "hostname": "conjur-master.mycompany.local"
                  },
                  "readinessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          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: "true"
          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.skipRange: ""
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: CyberArk
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConjurFollower is the Schema for the conjurfollowers API
            displayName: ConjurFollower
            kind: ConjurFollower
            name: conjurfollowers.conjur.cyberark.com
            version: v1
        description: |-
          Use this Operator for managing Conjur Followers in an OpenShift cluster.

          CyberArk products secure your most sensitive and high-value assets—and supporting your Identity Security goals is our top priority. We offer 24/7 service for high priority issues to all customers with resources across ten countries and in all continents.

          CyberArk Conjur makes secrets management simple. Conjur provides a seamless open source interface to securely authenticate, control, and audit non-human access across tools, applications, containers, and cloud environments via robust secrets management.
        displayName: Conjur Enterprise Follower Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - credential
        - cyber
        - cyberark
        - conjur
        - enterprise
        - management
        - password
        - secret
        - secrets management
        - security
        - vault
        links:
        - name: Conjur Secrets Manager Enterprise Documentation
          url: https://docs.cyberark.com/Product-Doc/OnlineHelp/AAM-DAP/Latest/en/Content/Resources/_TopNav/cc_Home.htm
        maintainers:
        - email: conj_maintainers@cyberark.com
          name: Conjur Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator-bundle@sha256:bb3beb8cd763b581c9471ff7f38d76ae3bc124587b5c3aa5b3af145641059582
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator@sha256:69d276feb493b8450c42efeeb56d0a741855004505e1e3776e5a9d382358f7ad
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5
        version: 2.7.1
      entries:
      - name: conjur-follower-operator.v2.7.1
        version: 2.7.1
      - name: conjur-follower-operator.v2.7.0
        version: 2.7.0
      - name: conjur-follower-operator.v2.6.3
        version: 2.6.3
      - name: conjur-follower-operator.v2.6.2
        version: 2.6.2
      - name: conjur-follower-operator.v2.6.1
        version: 2.6.1
      - name: conjur-follower-operator.v2.6.0
        version: 2.6.0
      - name: conjur-follower-operator.v2.5.0
        version: 2.5.0
      - name: conjur-follower-operator.v2.4.4
        version: 2.4.4
      - name: conjur-follower-operator.v2.4.3
        version: 2.4.3
      - name: conjur-follower-operator.v2.4.2
        version: 2.4.2
      - name: conjur-follower-operator.v2.3.5
        version: 2.3.5
      - name: conjur-follower-operator.v2.3.4
        version: 2.3.4
      - name: conjur-follower-operator.v2.3.1-290
        version: 2.3.1
      - name: conjur-follower-operator.v2.3.0
        version: 2.3.0
      - name: conjur-follower-operator.v2.2.4
        version: 2.2.4
      - name: conjur-follower-operator.v2.2.2
        version: 2.2.2
      - name: conjur-follower-operator.v2.2.1
        version: 2.2.1
      name: stable
    defaultChannel: stable
    packageName: conjur-follower-operator
    provider:
      name: CyberArk
      url: https://www.cyberark.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Aerospike
      provider-url: ""
    name: aerospike-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aerospike-kubernetes-operator.v2.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeCluster",
                "metadata": {
                  "name": "aerocluster",
                  "namespace": "aerospike"
                },
                "spec": {
                  "aerospikeConfig": {
                    "namespaces": [
                      {
                        "memory-size": 3000000000,
                        "name": "test",
                        "replication-factor": 2,
                        "storage-engine": {
                          "type": "memory"
                        }
                      }
                    ],
                    "network": {
                      "fabric": {
                        "port": 3001
                      },
                      "heartbeat": {
                        "port": 3002
                      },
                      "service": {
                        "port": 3000
                      }
                    },
                    "service": {
                      "feature-key-file": "/etc/aerospike/secret/features.conf"
                    }
                  },
                  "image": "aerospike/aerospike-server-enterprise:6.3.0.0",
                  "podSpec": {
                    "multiPodPerHost": true
                  },
                  "size": 2,
                  "storage": {
                    "volumes": [
                      {
                        "aerospike": {
                          "path": "/etc/aerospike/secret"
                        },
                        "name": "aerospike-config-secret",
                        "source": {
                          "secret": {
                            "secretName": "aerospike-secret"
                          }
                        }
                      }
                    ]
                  },
                  "validationPolicy": {
                    "skipWorkDirValidate": true,
                    "skipXdrDlogFileValidate": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Database
          containerImage: docker.io/aerospike/aerospike-kubernetes-operator:2.5.0
          createdAt: 2023-05-04T09:32:47UTC
          description: The Aerospike Kubernetes Operator automates the deployment
            and management of Aerospike enterprise clusters on Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/aerospike/aerospike-kubernetes-operator/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AerospikeCluster is the schema for the AerospikeCluster API
            displayName: Aerospike Cluster
            kind: AerospikeCluster
            name: aerospikeclusters.asdb.aerospike.com
            version: v1beta1
        description: |
          The Aerospike Kubernetes Operator automates the deployment and management of Aerospike enterprise clusters on Kubernetes. The operator allows you to deploy multi-node Aerospike clusters, recover automatically from node failures, scale up or down automatically as load changes, ensure nodes are evenly split across racks or zones, automatically update to new versions of Aerospike and manage configuration changes in your clusters.

          ### Capabilities:

           -   Deploy Aerospike clusters
           -   Scale up and down existing Aerospike clusters
           -   Version upgrade and downgrade
           -   Configure persistent storage and resource allocation
           -   Standardize and validate configurations
           -   Cluster security management
        displayName: Aerospike Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Aerospike
        links:
        - name: Documentation
          url: https://docs.aerospike.com/cloud/kubernetes/operator
        - name: Aerospike
          url: https://aerospike.com
        maintainers:
        - email: developers@aerospike.com
          name: Aerospike, Inc.
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Aerospike
        relatedImages:
        - docker.io/aerospike/aerospike-kubernetes-operator:2.5.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/openshift-community-operators/aerospike-kubernetes-operator@sha256:bfa83ff729ef8b3a4ebca27b02e223327d3e1351d8bc78a06c18873d288dfb02
        version: 2.5.0
      entries:
      - name: aerospike-kubernetes-operator.v2.5.0
        version: 2.5.0
      - name: aerospike-kubernetes-operator.v2.4.0
        version: 2.4.0
      - name: aerospike-kubernetes-operator.v2.3.0
        version: 2.3.0
      - name: aerospike-kubernetes-operator.v2.2.1
        version: 2.2.1
      - name: aerospike-kubernetes-operator.v2.2.0
        version: 2.2.0
      - name: aerospike-kubernetes-operator.v2.1.0
        version: 2.1.0
      name: alpha
    - currentCSV: aerospike-kubernetes-operator.v4.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "asdb.aerospike.com/v1",
                "kind": "AerospikeCluster",
                "metadata": {
                  "name": "aerocluster",
                  "namespace": "aerospike"
                },
                "spec": {
                  "aerospikeConfig": {
                    "namespaces": [
                      {
                        "name": "test",
                        "replication-factor": 2,
                        "storage-engine": {
                          "data-size": 1073741824,
                          "type": "memory"
                        }
                      }
                    ],
                    "network": {
                      "fabric": {
                        "port": 3001
                      },
                      "heartbeat": {
                        "port": 3002
                      },
                      "service": {
                        "port": 3000
                      }
                    },
                    "service": {
                      "feature-key-file": "/etc/aerospike/secret/features.conf"
                    }
                  },
                  "image": "aerospike/aerospike-server-enterprise:8.1.0.0",
                  "podSpec": {
                    "multiPodPerHost": true
                  },
                  "size": 2,
                  "storage": {
                    "volumes": [
                      {
                        "aerospike": {
                          "path": "/etc/aerospike/secret"
                        },
                        "name": "aerospike-config-secret",
                        "source": {
                          "secret": {
                            "secretName": "aerospike-secret"
                          }
                        }
                      }
                    ]
                  },
                  "validationPolicy": {
                    "skipWorkDirValidate": true,
                    "skipXdrDlogFileValidate": true
                  }
                }
              },
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeBackup",
                "metadata": {
                  "name": "aerospikebackup",
                  "namespace": "aerospike"
                },
                "spec": {
                  "backupService": {
                    "name": "aerospikebackupservice-sample",
                    "namespace": "aerospike"
                  },
                  "config": {
                    "aerospike-cluster": {
                      "aerospike-aerospikebackup-test-cluster": {
                        "credentials": {
                          "password": "admin123",
                          "user": "admin"
                        },
                        "seed-nodes": [
                          {
                            "host-name": "aerocluster.aerospike.svc.cluster.local",
                            "port": 3000
                          }
                        ]
                      }
                    },
                    "backup-routines": {
                      "aerospike-aerospikebackup-test-routine": {
                        "backup-policy": "test-policy",
                        "incr-interval-cron": "@hourly",
                        "interval-cron": "@daily",
                        "namespaces": [
                          "test"
                        ],
                        "source-cluster": "aerospike-aerospikebackup-test-cluster",
                        "storage": "local"
                      },
                      "aerospike-aerospikebackup-test-routine1": {
                        "backup-policy": "test-policy1",
                        "incr-interval-cron": "@hourly",
                        "interval-cron": "@daily",
                        "namespaces": [
                          "test"
                        ],
                        "source-cluster": "aerospike-aerospikebackup-test-cluster",
                        "storage": "s3Storage"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeBackupService",
                "metadata": {
                  "name": "aerospikebackupservice-sample",
                  "namespace": "aerospike"
                },
                "spec": {
                  "config": {
                    "backup-policies": {
                      "test-policy": {
                        "parallel": 3
                      },
                      "test-policy1": {
                        "parallel": 3
                      }
                    },
                    "service": {
                      "http": {
                        "port": 8081
                      }
                    },
                    "storage": {
                      "local": {
                        "local-storage": {
                          "path": "/tmp/localStorage"
                        }
                      },
                      "s3Storage": {
                        "s3-storage": {
                          "bucket": "aerospike-kubernetes-operator-test",
                          "s3-profile": "default",
                          "s3-region": "us-east-1"
                        }
                      }
                    }
                  },
                  "image": "aerospike/aerospike-backup-service:3.2.0",
                  "secrets": [
                    {
                      "secretName": "aws-secret",
                      "volumeMount": {
                        "mountPath": "/root/.aws/credentials",
                        "name": "aws-secret",
                        "subPath": "credentials"
                      }
                    }
                  ],
                  "service": {
                    "type": "LoadBalancer"
                  }
                }
              },
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeRestore",
                "metadata": {
                  "name": "aerospikerestore-sample",
                  "namespace": "aerospike"
                },
                "spec": {
                  "backupService": {
                    "name": "aerospikebackupservice-sample",
                    "namespace": "aerospike"
                  },
                  "config": {
                    "backup-data-path": "aerospike-aerospikebackup-test-routine/backup/1733506015827/data/test",
                    "destination": {
                      "credentials": {
                        "password": "admin123",
                        "user": "admin"
                      },
                      "label": "destinationCluster",
                      "seed-nodes": [
                        {
                          "host-name": "aerocluster.test.svc.cluster.local",
                          "port": 3000
                        }
                      ]
                    },
                    "policy": {
                      "no-generation": true,
                      "no-indexes": true,
                      "parallel": 3
                    },
                    "source": {
                      "local-storage": {
                        "path": "/tmp/localStorage"
                      }
                    }
                  },
                  "type": "Full"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: docker.io/aerospike/aerospike-kubernetes-operator:4.1.2
          createdAt: "2025-12-04T06:56:33Z"
          description: The Aerospike Kubernetes Operator automates the deployment
            and management of Aerospike enterprise clusters on Kubernetes.
          olm.skipRange: '>=4.0.0 <4.1.2'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/aerospike/aerospike-kubernetes-operator/
          support: Aerospike
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AerospikeBackup is the Schema for the aerospikebackup API
            displayName: Aerospike Backup
            kind: AerospikeBackup
            name: aerospikebackups.asdb.aerospike.com
            version: v1beta1
          - description: AerospikeBackupService is the Schema for the aerospikebackupservices
              API
            displayName: Aerospike Backup Service
            kind: AerospikeBackupService
            name: aerospikebackupservices.asdb.aerospike.com
            version: v1beta1
          - description: AerospikeCluster is the schema for the AerospikeCluster API
            displayName: Aerospike Cluster
            kind: AerospikeCluster
            name: aerospikeclusters.asdb.aerospike.com
            version: v1
          - description: AerospikeRestore is the Schema for the aerospikerestores
              API
            displayName: Aerospike Restore
            kind: AerospikeRestore
            name: aerospikerestores.asdb.aerospike.com
            version: v1beta1
        description: |
          The Aerospike Kubernetes Operator automates the deployment and management of Aerospike enterprise clusters on Kubernetes. The operator allows you to deploy multi-node Aerospike clusters, recover automatically from node failures, scale up or down automatically as load changes, ensure nodes are evenly split across racks or zones, automatically update to new versions of Aerospike and manage configuration changes in your clusters.

          ### Capabilities:

           -   Deploy Aerospike clusters
           -   Scale up and down existing Aerospike clusters
           -   Version upgrade and downgrade
           -   Configure persistent storage and resource allocation
           -   Standardize and validate configurations
           -   Cluster security management
           -   Aerospike cluster monitoring
           -   Backup and restore Aerospike clusters
        displayName: Aerospike Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Aerospike
        links:
        - name: Documentation
          url: https://docs.aerospike.com/cloud/kubernetes/operator
        - name: Aerospike
          url: https://aerospike.com
        maintainers:
        - email: developers@aerospike.com
          name: Aerospike, Inc.
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Aerospike
        relatedImages:
        - docker.io/aerospike/aerospike-kubernetes-operator:4.1.2
        - quay.io/community-operator-pipeline-prod/aerospike-kubernetes-operator@sha256:b01aad90e4fa053a5e419b8fb9a1c49e328c7a30ef8e4b5dec57881fcc2e620e
        version: 4.1.2
      entries:
      - name: aerospike-kubernetes-operator.v4.1.2
        version: 4.1.2
      - name: aerospike-kubernetes-operator.v4.1.1
        version: 4.1.1
      - name: aerospike-kubernetes-operator.v4.1.0
        version: 4.1.0
      - name: aerospike-kubernetes-operator.v4.0.2
        version: 4.0.2
      - name: aerospike-kubernetes-operator.v4.0.1
        version: 4.0.1
      - name: aerospike-kubernetes-operator.v4.0.0
        version: 4.0.0
      - name: aerospike-kubernetes-operator.v3.4.1
        version: 3.4.1
      - name: aerospike-kubernetes-operator.v3.4.0
        version: 3.4.0
      - name: aerospike-kubernetes-operator.v3.3.1
        version: 3.3.1
      - name: aerospike-kubernetes-operator.v3.3.0
        version: 3.3.0
      - name: aerospike-kubernetes-operator.v3.2.2
        version: 3.2.2
      - name: aerospike-kubernetes-operator.v3.2.1
        version: 3.2.1
      - name: aerospike-kubernetes-operator.v3.2.0
        version: 3.2.0
      - name: aerospike-kubernetes-operator.v3.1.0
        version: 3.1.0
      - name: aerospike-kubernetes-operator.v3.0.0
        version: 3.0.0
      name: stable
    defaultChannel: stable
    packageName: aerospike-kubernetes-operator
    provider:
      name: Aerospike
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/cluster-nfd-operator
    name: nfd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nfd.4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nfd.k8s-sigs.io/v1alpha1",
                "kind": "NodeFeatureRule",
                "metadata": {
                  "name": "my-sample-rule-object"
                },
                "spec": {
                  "rules": [
                    {
                      "labels": {
                        "my-sample-feature": "true"
                      },
                      "matchFeatures": [
                        {
                          "feature": "kernel.loadedmodule",
                          "matchExpressions": {
                            "dummy": {
                              "op": "Exists"
                            }
                          }
                        },
                        {
                          "feature": "kernel.config",
                          "matchExpressions": {
                            "X86": {
                              "op": "In",
                              "value": [
                                "y"
                              ]
                            }
                          }
                        }
                      ],
                      "name": "my sample rule"
                    }
                  ]
                }
              },
              {
                "apiVersion": "nfd.openshift.io/v1",
                "kind": "NodeFeatureDiscovery",
                "metadata": {
                  "name": "nfd-instance",
                  "namespace": "openshift-nfd"
                },
                "spec": {
                  "customConfig": {
                    "configData": "#    - name: \"more.kernel.features\"\n#      matchOn:\n#      - loadedKMod: [\"example_kmod3\"]\n#    - name: \"more.features.by.nodename\"\n#      value: customValue\n#      matchOn:\n#      - nodename: [\"special-.*-node-.*\"]\n"
                  },
                  "operand": {
                    "imagePullPolicy": "IfNotPresent",
                    "servicePort": 12000
                  },
                  "workerConfig": {
                    "configData": "core:\n#  labelWhiteList:\n#  noPublish: false\n  sleepInterval: 60s\n#  sources: [all]\n#  klog:\n#    addDirHeader: false\n#    alsologtostderr: false\n#    logBacktraceAt:\n#    logtostderr: true\n#    skipHeaders: false\n#    stderrthreshold: 2\n#    v: 0\n#    vmodule:\n##   NOTE: the following options are not dynamically run-time \n##          configurable and require a nfd-worker restart to take effect\n##          after being changed\n#    logDir:\n#    logFile:\n#    logFileMaxSize: 1800\n#    skipLogHeaders: false\nsources:\n#  cpu:\n#    cpuid:\n##     NOTE: whitelist has priority over blacklist\n#      attributeBlacklist:\n#        - \"BMI1\"\n#        - \"BMI2\"\n#        - \"CLMUL\"\n#        - \"CMOV\"\n#        - \"CX16\"\n#        - \"ERMS\"\n#        - \"F16C\"\n#        - \"HTT\"\n#        - \"LZCNT\"\n#        - \"MMX\"\n#        - \"MMXEXT\"\n#        - \"NX\"\n#        - \"POPCNT\"\n#        - \"RDRAND\"\n#        - \"RDSEED\"\n#        - \"RDTSCP\"\n#        - \"SGX\"\n#        - \"SSE\"\n#        - \"SSE2\"\n#        - \"SSE3\"\n#        - \"SSE4.1\"\n#        - \"SSE4.2\"\n#        - \"SSSE3\"\n#      attributeWhitelist:\n#  kernel:\n#    kconfigFile: \"/path/to/kconfig\"\n#    configOpts:\n#      - \"NO_HZ\"\n#      - \"X86\"\n#      - \"DMI\"\n  pci:\n    deviceClassWhitelist:\n      - \"0200\"\n      - \"03\"\n      - \"12\"\n    deviceLabelFields:\n#      - \"class\"\n      - \"vendor\"\n#      - \"device\"\n#      - \"subsystem_vendor\"\n#      - \"subsystem_device\"\n#  usb:\n#    deviceClassWhitelist:\n#      - \"0e\"\n#      - \"ef\"\n#      - \"fe\"\n#      - \"ff\"\n#    deviceLabelFields:\n#      - \"class\"\n#      - \"vendor\"\n#      - \"device\"\n#  custom:\n#    - name: \"my.kernel.feature\"\n#      matchOn:\n#        - loadedKMod: [\"example_kmod1\", \"example_kmod2\"]\n#    - name: \"my.pci.feature\"\n#      matchOn:\n#        - pciId:\n#            class: [\"0200\"]\n#            vendor: [\"15b3\"]\n#            device: [\"1014\", \"1017\"]\n#        - pciId :\n#            vendor: [\"8086\"]\n#            device: [\"1000\", \"1100\"]\n#    - name: \"my.usb.feature\"\n#      matchOn:\n#        - usbId:\n#          class: [\"ff\"]\n#          vendor: [\"03e7\"]\n#          device: [\"2485\"]\n#        - usbId:\n#          class: [\"fe\"]\n#          vendor: [\"1a6e\"]\n#          device: [\"089a\"]\n#    - name: \"my.combined.feature\"\n#      matchOn:\n#        - pciId:\n#            vendor: [\"15b3\"]\n#            device: [\"1014\", \"1017\"]\n#          loadedKMod : [\"vendor_kmod1\", \"vendor_kmod2\"]\n"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery,OpenShift Optional
          containerImage: registry.redhat.io/openshift4/ose-cluster-nfd-rhel9-operator@sha256:5d03fdb900b6779fb260b186a112eed15ae66d64ce08122bda3d01a3bce316e6
          createdAt: "2025-04-20T11:31:43Z"
          description: |-
            The Node Feature Discovery Operator manages the detection of hardware features and configuration in a Kubernetes cluster by labeling the nodes with hardware-specific information. The Node Feature Discovery (NFD) will label the host with node-specific attributes, like PCI cards, kernel, or OS version, and many more.

            NFD consists  of the following software components:

            The NFD Operator is based on the Operator Framework an open source toolkit to manage Kubernetes native applications, called Operators, in an effective, automated, and scalable way.

            ##NFD-Master
            NFD-Master is the daemon responsible for communication towards the Kubernetes API. That is, it receives labeling requests from the worker and modifies node objects accordingly.

            ##NFD-Worker
            NFD-Worker is a daemon responsible for feature detection. It then communicates the information to nfd-master which does the actual node labeling. One instance of nfd-worker is supposed to be running on each node of the cluster.

            ##NFD-Topology-Updater
            NFD-Topology-Updater is a daemon responsible for examining allocated resources on a worker node to account for resources available to be allocated to new pod on a per-zone basis (where a zone can be a NUMA node). It then communicates the information to nfd-master which does the NodeResourceTopology CR creation corresponding to all the nodes in the cluster. One instance of nfd-topology-updater is supposed to be running on each node of the cluster.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.9.0 <4.20.0-202512081147'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-nfd
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/internal-objects: '["noderesourcetopologies.topology.node.k8s.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: Red Hat
          repository: https://github.com/openshift/cluster-nfd-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |
              The NodeFeatureDiscovery instance is the CustomResource being watched by the NFD-Operator, and holds all the needed information to setup the behaviour of the master and worker pods
            kind: NodeFeatureDiscovery
            name: nodefeaturediscoveries.nfd.openshift.io
            version: v1
          - kind: NodeFeatureGroup
            name: nodefeaturegroups.nfd.k8s-sigs.io
            version: v1alpha1
          - kind: NodeFeatureRule
            name: nodefeaturerules.nfd.k8s-sigs.io
            version: v1alpha1
          - description: |
              NodeFeatureRule resource specifies a configuration for feature-based customization of node objects, such as node labeling.
            kind: NodeFeatureRule
            name: nodefeaturerules.nfd.openshift.io
            version: v1alpha1
          - kind: NodeFeature
            name: nodefeatures.nfd.k8s-sigs.io
            version: v1alpha1
          - kind: NodeFeature
            name: nodefeatures.nfd.openshift.io
            version: v1alpha1
        description: |-
          The Node Feature Discovery Operator manages the detection of hardware features and configuration in a Kubernetes cluster by labeling the nodes with hardware-specific information. The Node Feature Discovery (NFD) will label the host with node-specific attributes, like PCI cards, kernel, or OS version, and many more.

          NFD consists  of the following software components:

          The NFD Operator is based on the Operator Framework an open source toolkit to manage Kubernetes native applications, called Operators, in an effective, automated, and scalable way.

          ##NFD-Master
          NFD-Master is the daemon responsible for communication towards the Kubernetes API. That is, it receives labeling requests from the worker and modifies node objects accordingly.

          ##NFD-Worker
          NFD-Worker is a daemon responsible for feature detection. It then communicates the information to nfd-master which does the actual node labeling. One instance of nfd-worker is supposed to be running on each node of the cluster.

          ##NFD-Topology-Updater
          NFD-Topology-Updater is a daemon responsible for examining allocated resources on a worker node to account for resources available to be allocated to new pod on a per-zone basis (where a zone can be a NUMA node). It then communicates the information to nfd-master which does the NodeResourceTopology CR creation corresponding to all the nodes in the cluster. One instance of nfd-topology-updater is supposed to be running on each node of the cluster.
        displayName: Node Feature Discovery Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - feature-discovery
        - feature-detection
        - node-labels
        links:
        - name: Node Feature Discovery Operator
          url: https://docs.openshift.com/container-platform/4.20/hardware_enablement/psap-node-feature-discovery-operator.html
        - name: Node Feature Discovery Documentation
          url: https://kubernetes-sigs.github.io/node-feature-discovery/stable/get-started/index.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://github.com/openshift/cluster-nfd-operator
        relatedImages:
        - registry.redhat.io/openshift4/ose-cluster-nfd-operator-bundle@sha256:84c08fe3720f5309f468eab26ab5b4a744629d4b3fb941bbbf95c5194a6ea633
        - registry.redhat.io/openshift4/ose-cluster-nfd-rhel9-operator@sha256:5d03fdb900b6779fb260b186a112eed15ae66d64ce08122bda3d01a3bce316e6
        - registry.redhat.io/openshift4/ose-node-feature-discovery-rhel9@sha256:fbd8db340dd4e4cda793b1f0453d42988bb8102d1061388827777bb848b067f2
        version: 4.20.0-202512081147
      entries:
      - name: nfd.4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: nfd.4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: nfd.4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: nfd.4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: nfd.4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: nfd.4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: nfd.4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: nfd
    provider:
      name: Red Hat
      url: https://github.com/openshift/cluster-nfd-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://redhat.com
    name: aws-load-balancer-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-load-balancer-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
          createdAt: 2025-12-16T11:55:37
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.3.0
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:dbad5680cdb7bbe998b569533d1135b9df8a37786ed64893373152a7f16b3e12
        - registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel9@sha256:03106a145ba31ae648092a48016d28d3b41dca737f76efdc82eae4628e4fa905
        version: 1.3.0
      entries:
      - name: aws-load-balancer-operator.v1.3.0
        version: 1.3.0
      - name: aws-load-balancer-operator.v1.2.0
        version: 1.2.0
      - name: aws-load-balancer-operator.v1.1.1
        version: 1.1.1
      - name: aws-load-balancer-operator.v1.1.0
        version: 1.1.0
      name: stable-v1
    - currentCSV: aws-load-balancer-operator.v1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:6e15df39a3d25755a79888f739e1af8b052c3fba57bf8f6b3434ef58fd4288cf
          createdAt: 2024-01-24T09:13:21
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.1
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify management of aws-load-balancer-controller

          ### Prerequisites for installation
          The operator requires AWS credentials in the installation namespace before it can be installed.

          1. Create the operator namespace with the following command:
          ```bash
          oc create namespace aws-load-balancer-operator
          ```
          2. Create the `CredentialsRequest` in the `openshift-cloud-credential-operator`
             namespace with the following command:

          ```
          cat <<EOF | oc create -f -
          apiVersion: cloudcredential.openshift.io/v1
          kind: CredentialsRequest
          metadata:
            name: aws-load-balancer-operator
            namespace: openshift-cloud-credential-operator
          spec:
            providerSpec:
              apiVersion: cloudcredential.openshift.io/v1
              kind: AWSProviderSpec
              statementEntries:
                - action:
                    - ec2:DescribeSubnets
                  effect: Allow
                  resource: "*"
                - action:
                    - ec2:CreateTags
                    - ec2:DeleteTags
                  effect: Allow
                  resource: arn:aws:ec2:*:*:subnet/*
                - action:
                    - ec2:DescribeVpcs
                  effect: Allow
                  resource: "*"
            secretRef:
              name: aws-load-balancer-operator
              namespace: aws-load-balancer-operator
            serviceAccountNames:
              - aws-load-balancer-operator-controller-manager
          EOF
          ```
          3. Ensure the credentials have been correctly provisioned
          ```bash
          oc get secret -n aws-load-balancer-operator aws-load-balancer-operator
          ```

          After this the operator can be installated through the console or through the command line.

          __Note about UPI:__ For UPI based installs, additional documentation can be found in
          [VPC and subnets](https://github.com/openshift/aws-load-balancer-operator/blob/release-1.0/docs/prerequisites.md#vpc-and-subnets)

          __Note about STS:__ For clusters using STS, use the [STS documentation](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#for-sts-clusters) instead.
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:6e15df39a3d25755a79888f739e1af8b052c3fba57bf8f6b3434ef58fd4288cf
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9f9f8f69ab98c1f25cc301572339e0cc5c5b76f2e29ed26e10ac91ad20e0090c
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel8@sha256:73db97d20ee9415e9a8941cc6a36ed81d901d760d9949e95e10c90866ef8bf64
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:59ff4966f4f653e49d42d97bfed6351d3730128db74f666ee4ecacff11790baf
        version: 1.0.1
      deprecation:
        message: |
          The stable-v1.0 channel is no longer supported. Please switch to a supported stable channel to receive the latest updates and support.
      entries:
      - deprecation:
          message: |
            aws-load-balancer-operator.v1.0.1 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: aws-load-balancer-operator.v1.0.1
        version: 1.0.1
      - deprecation:
          message: |
            aws-load-balancer-operator.v1.0.0 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: aws-load-balancer-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    - currentCSV: aws-load-balancer-operator.v1.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:16e9ffed36107527a37713ac5bd34a7bc20f042269a81077429fb5884914c4d0
          createdAt: 2024-01-23T11:21:00
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.1.1
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:01f2ca529d2486f113bcefc9fedce6a6fd07bcb48aaf534394b5b04c353f8853
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:16e9ffed36107527a37713ac5bd34a7bc20f042269a81077429fb5884914c4d0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel8@sha256:2e0b9332a44d8d9c23e19c7accab0813a651f39210257820db508cac28876595
        version: 1.1.1
      entries:
      - name: aws-load-balancer-operator.v1.1.1
        version: 1.1.1
      - name: aws-load-balancer-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: aws-load-balancer-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:53f14e88f05641545b675ff4edbcff6909d752659c02a1babf7491734f347153
          createdAt: 2024-12-20T15:52:44
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.2.0
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4a2324acaea757bae3b01b1aec59f49f4dd79bd1868e69d3418d57c210a6dfd9
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel8@sha256:f0b47b8200f85b557497a4f03d7b186cf415c4137e9cc0361633b67891cf2a24
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:e371c45e259eaf54d79b1bfc6c47b1093d87965a8d6076205d4860047146ed43
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:53f14e88f05641545b675ff4edbcff6909d752659c02a1babf7491734f347153
        version: 1.2.0
      entries:
      - name: aws-load-balancer-operator.v1.2.0
        version: 1.2.0
      - name: aws-load-balancer-operator.v1.1.1
        version: 1.1.1
      - name: aws-load-balancer-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.2
    - currentCSV: aws-load-balancer-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
          createdAt: 2025-12-16T11:55:37
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.3.0
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel9@sha256:03106a145ba31ae648092a48016d28d3b41dca737f76efdc82eae4628e4fa905
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:dbad5680cdb7bbe998b569533d1135b9df8a37786ed64893373152a7f16b3e12
        - registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        version: 1.3.0
      entries:
      - name: aws-load-balancer-operator.v1.3.0
        version: 1.3.0
      name: stable-v1.3
    defaultChannel: stable-v1
    packageName: aws-load-balancer-operator
    provider:
      name: Red Hat Inc.
      url: https://redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: loki-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: loki-operator.v6.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "summary": "High request latency"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "page"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "message": "{{ $labels.job }} is leaking http basic auth credentials."
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({namespace=\"prod\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.16-v4.20
          containerImage: registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:f7fde57f19ef352510cfca9f073ab4f73cd769bd097e1b1d771070d58f682240
          createdAt: "2025-03-06T11:32:52Z"
          description: |
            The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
            ## Prerequisites and Requirements
            ### Loki Operator Namespace
            The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
            ### Memory Considerations
            Loki is a memory intensive application.  The initial
            set of OCP nodes may not be large enough to support the Loki stack.  Additional OCP nodes must be added
            to the OCP cluster if you desire to run with the recommended (or better) memory.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=6.0.0-0 <6.2.7'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators-redhat
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.2
          operators.operatorframework.io.bundle.channels.v1: stable-6.2
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: loki-operator
          operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
          operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io.test.config.v1: tests/scorecard/
          operators.operatorframework.io.test.mediatype.v1: scorecard+v1
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Cluster Logging
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |
          The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
          ## Prerequisites and Requirements
          ### Loki Operator Namespace
          The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
          ### Memory Considerations
          Loki is a memory intensive application.  The initial
          set of OCP nodes may not be large enough to support the Loki cluster.  Additional OCP nodes must be added
          to the OCP cluster if you desire to run with the recommended (or better) memory.
        displayName: Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Loki Operator
          url: https://github.com/grafana/loki
        maintainers:
        - email: team-logging@redhat.com
          name: Red Hat, AOS Logging
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/loki-operator-bundle@sha256:7122d656b12bd9ae0c0db81acf99778d5e7ebe570e203eb1fa87a981cc9aa81e
        - registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:f7fde57f19ef352510cfca9f073ab4f73cd769bd097e1b1d771070d58f682240
        - registry.redhat.io/openshift-logging/lokistack-gateway-rhel9@sha256:574afd46f23637b1685ddb00b647bb71d2e2d527611182fd2826bb818c5eb198
        - registry.redhat.io/openshift-logging/opa-openshift-rhel9@sha256:182dc5ab627d64b5e565a2edb170903ac381fc534b4366fc5ffae088ea0de5e5
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:145e9784b681ac7defa0a1547c03a6db9a587bf9be2820428eee84f58f8f1f24
        - registry.redhat.io/openshift-logging/logging-loki-rhel9@sha256:8c073f8de8288bf63489a400d7f93e96562652832965d33e0515f48d46282459
        version: 6.2.7
      entries:
      - name: loki-operator.v6.2.7
        version: 6.2.7
      - name: loki-operator.v6.2.6
        version: 6.2.6
      - name: loki-operator.v6.2.5
        version: 6.2.5
      - name: loki-operator.v6.2.4
        version: 6.2.4
      - name: loki-operator.v6.2.3
        version: 6.2.3
      - name: loki-operator.v6.2.2
        version: 6.2.2
      - name: loki-operator.v6.2.1
        version: 6.2.1
      - name: loki-operator.v6.2.0
        version: 6.2.0
      name: stable-6.2
    - currentCSV: loki-operator.v6.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "summary": "High request latency"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "page"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "message": "{{ $labels.job }} is leaking http basic auth credentials."
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({namespace=\"prod\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.17-v4.20
          containerImage: registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:bc3216fceafcea24d7d7eaeaab400248431ec43bdaf45ca00201e6c7aea588f6
          createdAt: "2025-06-11T13:21:40Z"
          description: |
            The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
            ## Prerequisites and Requirements
            ### Loki Operator Namespace
            The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
            ### Memory Considerations
            Loki is a memory intensive application.  The initial
            set of OCP nodes may not be large enough to support the Loki stack.  Additional OCP nodes must be added
            to the OCP cluster if you desire to run with the recommended (or better) memory.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=6.1.0-0 <6.3.2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators-redhat
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.3
          operators.operatorframework.io.bundle.channels.v1: stable-6.3
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: loki-operator
          operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
          operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io.test.config.v1: tests/scorecard/
          operators.operatorframework.io.test.mediatype.v1: scorecard+v1
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Cluster Logging
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |
          The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
          ## Prerequisites and Requirements
          ### Loki Operator Namespace
          The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
          ### Memory Considerations
          Loki is a memory intensive application.  The initial
          set of OCP nodes may not be large enough to support the Loki cluster.  Additional OCP nodes must be added
          to the OCP cluster if you desire to run with the recommended (or better) memory.
        displayName: Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Loki Operator
          url: https://github.com/grafana/loki
        maintainers:
        - email: team-logging@redhat.com
          name: Red Hat, AOS Logging
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:145e9784b681ac7defa0a1547c03a6db9a587bf9be2820428eee84f58f8f1f24
        - registry.redhat.io/openshift-logging/logging-loki-rhel9@sha256:d1082544887b6f250b41002104689b4553c2962b82480eb2ea61c10ed1490f27
        - registry.redhat.io/openshift-logging/loki-operator-bundle@sha256:7909874cd7653aae0f55e08d3c63b22a02e324650967acefc5e40545f8c1f1a8
        - registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:bc3216fceafcea24d7d7eaeaab400248431ec43bdaf45ca00201e6c7aea588f6
        - registry.redhat.io/openshift-logging/lokistack-gateway-rhel9@sha256:686249a9891b9e0000ce63ec54b7fc8885fff3975ea94b7d0e53a2dad6ab3ca7
        - registry.redhat.io/openshift-logging/opa-openshift-rhel9@sha256:0d5c3c1eecb920c880644bf667fdfb5a4edb864b2e456b8f6ab8540b6b3b879f
        version: 6.3.2
      entries:
      - name: loki-operator.v6.3.2
        version: 6.3.2
      - name: loki-operator.v6.3.1
        version: 6.3.1
      - name: loki-operator.v6.3.0
        version: 6.3.0
      name: stable-6.3
    - currentCSV: loki-operator.v6.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in namespace example-namespace has an error rate above 5% for more than 10 minutes.",
                            "summary": "High error rate detected"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "warning"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in pod {{ $labels.pod }} is leaking HTTP basic auth credentials in logs.",
                            "summary": "HTTP credentials leaked in logs"
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({kubernetes_namespace_name=\"example-namespace\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "application"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.18-v4.21
          containerImage: registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:73dc60568c8ade290b53e4816c88f227054c4a63efb664857f793d5d59d15586
          createdAt: "2025-11-03T17:23:40Z"
          description: |
            The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
            ## Prerequisites and Requirements
            ### Loki Operator Namespace
            The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
            ### Memory Considerations
            Loki is a memory intensive application.  The initial
            set of OCP nodes may not be large enough to support the Loki stack.  Additional OCP nodes must be added
            to the OCP cluster if you desire to run with the recommended (or better) memory.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=6.2.0-0 <6.4.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators-redhat
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.4
          operators.operatorframework.io.bundle.channels.v1: stable-6.4
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: loki-operator
          operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
          operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io.test.config.v1: tests/scorecard/
          operators.operatorframework.io.test.mediatype.v1: scorecard+v1
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Cluster Logging
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |
          The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
          ## Prerequisites and Requirements
          ### Loki Operator Namespace
          The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
          ### Memory Considerations
          Loki is a memory intensive application.  The initial
          set of OCP nodes may not be large enough to support the Loki cluster.  Additional OCP nodes must be added
          to the OCP cluster if you desire to run with the recommended (or better) memory.
        displayName: Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Loki Operator
          url: https://github.com/grafana/loki
        maintainers:
        - email: team-logging@redhat.com
          name: Red Hat, AOS Logging
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/lokistack-gateway-rhel9@sha256:74d61619b9420655da84bc9939e37f76040b437a70e9c96eeb3267f00dfe88ad
        - registry.redhat.io/openshift-logging/opa-openshift-rhel9@sha256:bd5619a05a193763628b027ee36d68b4eff5caae80b974161acfb8c1d37f7d3e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.19@sha256:145e9784b681ac7defa0a1547c03a6db9a587bf9be2820428eee84f58f8f1f24
        - registry.redhat.io/openshift-logging/logging-loki-rhel9@sha256:2b491fcb180423632d30811515a439a7a7f41023c1cfe4780647f18969b85a1d
        - registry.redhat.io/openshift-logging/loki-operator-bundle@sha256:f671ac595873a42b28b30f5021205372782c352c05b7148246b15eaf7b161196
        - registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:73dc60568c8ade290b53e4816c88f227054c4a63efb664857f793d5d59d15586
        version: 6.4.1
      entries:
      - name: loki-operator.v6.4.1
        version: 6.4.1
      - name: loki-operator.v6.4.0
        version: 6.4.0
      name: stable-6.4
    defaultChannel: stable-6.4
    packageName: loki-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: https://www.turbonomic.com/
    name: t8c-tsc-client-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: t8c-tsc-client-certified.v1.4.3-candidate-20251022123244000
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "TurbonomicClient",
                "metadata": {
                  "name": "turbonomicclient-release"
                },
                "spec": {
                  "global": {
                    "version": "8.16.1"
                  },
                  "probes": {
                    "actionScript": {
                      "enabled": false
                    },
                    "actionStreamKafka": {
                      "enabled": false
                    },
                    "appDynamics": {
                      "enabled": false
                    },
                    "compellent": {
                      "enabled": false
                    },
                    "datadog": {
                      "enabled": false
                    },
                    "dynatrace": {
                      "enabled": false
                    },
                    "flexera": {
                      "enabled": false
                    },
                    "hds": {
                      "enabled": false
                    },
                    "hpe3par": {
                      "enabled": false
                    },
                    "hyperFlex": {
                      "enabled": false
                    },
                    "hyperV": {
                      "enabled": false
                    },
                    "ibmStorageFlashSystem": {
                      "enabled": false
                    },
                    "instana": {
                      "enabled": false
                    },
                    "jvm": {
                      "enabled": false
                    },
                    "mssql": {
                      "enabled": false
                    },
                    "mysql": {
                      "enabled": false
                    },
                    "netApp": {
                      "enabled": false
                    },
                    "newRelic": {
                      "enabled": false
                    },
                    "nutanix": {
                      "enabled": false
                    },
                    "oneView": {
                      "enabled": false
                    },
                    "oracle": {
                      "enabled": false
                    },
                    "powerVM": {
                      "enabled": false
                    },
                    "pure": {
                      "enabled": false
                    },
                    "scaleIO": {
                      "enabled": false
                    },
                    "serviceNow": {
                      "enabled": false
                    },
                    "snmp": {
                      "enabled": false
                    },
                    "terraform": {
                      "enabled": false
                    },
                    "tomcat": {
                      "enabled": false
                    },
                    "ucs": {
                      "enabled": false
                    },
                    "vCenter": {
                      "enabled": false
                    },
                    "vmax": {
                      "enabled": false
                    },
                    "vmm": {
                      "enabled": false
                    },
                    "vplex": {
                      "enabled": false
                    },
                    "webLogic": {
                      "enabled": false
                    },
                    "webSphere": {
                      "enabled": false
                    },
                    "wmi": {
                      "enabled": false
                    },
                    "xtremIO": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "VersionManager",
                "metadata": {
                  "name": "versionmanager-release"
                },
                "spec": {
                  "url": "http://remote-nginx-tunnel:9080/cluster-manager/clusterConfiguration"
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-client-operator@sha256:bd207d0c85f83e590dfa763eada9bbcb173a54c729ba93015485df487a4c3806
          createdAt: "2025-10-22T16:48:12Z"
          description: Turbonomic Secure Connect for Hybrid environment management
          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.skipRange: '>=1.1.0 <1.4.3-candidate-20251022123244000'
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TurbonomicClient is the Schema for the turbonomicclients
              API
            displayName: Turbonomic Client
            kind: TurbonomicClient
            name: turbonomicclients.clients.turbonomic.ibm.com
            version: v1alpha1
          - description: VersionManager is the Schema for the versionmanagers API
            displayName: Version Manager
            kind: VersionManager
            name: versionmanagers.clients.turbonomic.ibm.com
            version: v1alpha1
        description: "### Turbonomic Secure Connect for Hybrid environment management\nTurbonomic
          Workload Automation for Multicloud simultaneously optimizes performance,
          compliance, and cost in real-time. Workloads are precisely resourced, automatically,
          to perform while satisfying business constraints:\n* Continuous placement
          of workload across multiple clouds both on-prem and public clouds providers.\n*
          Continuous scaling for applications and the underlying infrastructure.\n*
          Capability to connect both public cloud and on-prem targets on single saas
          instance\nIt assures application performance by giving workloads the resources
          they need when they need them.\n\n### How do I start?\nTurbonomic documentation
          can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm.\nTo
          setup Turbonomic Secure Connect client, follow the instructions below:\n1.
          Click Install on the landing page\n2. Upon moving to Install Operator page,
          do not modify the default selection for any of the configuration\n3. Select
          the Installed namespace from the drop down or add a new namespace and click
          on create project to create the entered namespace.\n4. Click Install on
          the Install Operator page.\nAt this point operator is installed.\n\nOn the
          Details tab, under Provided APIs: \n1. Click Create instance for the Turbonomic
          Client API. Enable/Disable the probes based on the requirement, and click
          Create.\n2. Click Create instance for the Version Manager API. Do not modify
          the JSON/YAML file, click on Create.\n\n### How does it work?\nTurbonomic
          uses a public APIs already exposed by application and infrastructure instrumentation
          to discover and monitor your environment.\nTurbonomic determines the right
          actions that drive continuous health, including continuous placement and
          continuous scaling for applications and the underlying cluster.\nTurbonomic
          leverages the built-on orchestration provided by the application and infrastructure
          deployment tools and automates the execution of these actions to continiously
          meet the respective service level objective of each application service."
        displayName: Turbonomic Secure Connect Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - turbonomic
        - turbo secure connect
        links:
        - name: T8c Tsc Client Certified
          url: https://t8c-tsc-certified.domain
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        relatedImages:
        - icr.io/cpopen/t8c-client-operator@sha256:bd207d0c85f83e590dfa763eada9bbcb173a54c729ba93015485df487a4c3806
        - registry.connect.redhat.com/turbonomic/t8c-tsc-client-operator-bundle@sha256:14207fa7bc67daab46205107aec44d68d26354980c77bda1289fa968044bb2f2
        version: 1.4.3-candidate-20251022123244000
      entries:
      - name: t8c-tsc-client-certified.v1.4.3-candidate-20251022123244000
        version: 1.4.3-candidate-20251022123244000
      name: candidate
    - currentCSV: t8c-tsc-client-certified.v1.4.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "TurbonomicClient",
                "metadata": {
                  "name": "turbonomicclient-release"
                },
                "spec": {
                  "global": {
                    "version": "8.16.1"
                  },
                  "probes": {
                    "actionScript": {
                      "enabled": false
                    },
                    "actionStreamKafka": {
                      "enabled": false
                    },
                    "appDynamics": {
                      "enabled": false
                    },
                    "compellent": {
                      "enabled": false
                    },
                    "datadog": {
                      "enabled": false
                    },
                    "dynatrace": {
                      "enabled": false
                    },
                    "flexera": {
                      "enabled": false
                    },
                    "hds": {
                      "enabled": false
                    },
                    "hpe3par": {
                      "enabled": false
                    },
                    "hyperFlex": {
                      "enabled": false
                    },
                    "hyperV": {
                      "enabled": false
                    },
                    "ibmStorageFlashSystem": {
                      "enabled": false
                    },
                    "instana": {
                      "enabled": false
                    },
                    "jvm": {
                      "enabled": false
                    },
                    "mssql": {
                      "enabled": false
                    },
                    "mysql": {
                      "enabled": false
                    },
                    "netApp": {
                      "enabled": false
                    },
                    "newRelic": {
                      "enabled": false
                    },
                    "nutanix": {
                      "enabled": false
                    },
                    "oneView": {
                      "enabled": false
                    },
                    "oracle": {
                      "enabled": false
                    },
                    "powerVM": {
                      "enabled": false
                    },
                    "pure": {
                      "enabled": false
                    },
                    "scaleIO": {
                      "enabled": false
                    },
                    "serviceNow": {
                      "enabled": false
                    },
                    "snmp": {
                      "enabled": false
                    },
                    "terraform": {
                      "enabled": false
                    },
                    "tomcat": {
                      "enabled": false
                    },
                    "ucs": {
                      "enabled": false
                    },
                    "vCenter": {
                      "enabled": false
                    },
                    "vmax": {
                      "enabled": false
                    },
                    "vmm": {
                      "enabled": false
                    },
                    "vplex": {
                      "enabled": false
                    },
                    "webLogic": {
                      "enabled": false
                    },
                    "webSphere": {
                      "enabled": false
                    },
                    "wmi": {
                      "enabled": false
                    },
                    "xtremIO": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "VersionManager",
                "metadata": {
                  "name": "versionmanager-release"
                },
                "spec": {
                  "url": "http://remote-nginx-tunnel:9080/cluster-manager/clusterConfiguration"
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-client-operator@sha256:372569f1b26ccdebae386e5a3e5da42722255ab6e604f1c420b922bb35baf716
          createdAt: "2025-10-24T17:03:25Z"
          description: Turbonomic Secure Connect for Hybrid environment management
          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.skipRange: '>=1.1.0 <1.4.3'
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TurbonomicClient is the Schema for the turbonomicclients
              API
            displayName: Turbonomic Client
            kind: TurbonomicClient
            name: turbonomicclients.clients.turbonomic.ibm.com
            version: v1alpha1
          - description: VersionManager is the Schema for the versionmanagers API
            displayName: Version Manager
            kind: VersionManager
            name: versionmanagers.clients.turbonomic.ibm.com
            version: v1alpha1
        description: "### Turbonomic Secure Connect for Hybrid environment management\nTurbonomic
          Workload Automation for Multicloud simultaneously optimizes performance,
          compliance, and cost in real-time. Workloads are precisely resourced, automatically,
          to perform while satisfying business constraints:\n* Continuous placement
          of workload across multiple clouds both on-prem and public clouds providers.\n*
          Continuous scaling for applications and the underlying infrastructure.\n*
          Capability to connect both public cloud and on-prem targets on single saas
          instance\nIt assures application performance by giving workloads the resources
          they need when they need them.\n\n### How do I start?\nTurbonomic documentation
          can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm.\nTo
          setup Turbonomic Secure Connect client, follow the instructions below:\n1.
          Click Install on the landing page\n2. Upon moving to Install Operator page,
          do not modify the default selection for any of the configuration\n3. Select
          the Installed namespace from the drop down or add a new namespace and click
          on create project to create the entered namespace.\n4. Click Install on
          the Install Operator page.\nAt this point operator is installed.\n\nOn the
          Details tab, under Provided APIs: \n1. Click Create instance for the Turbonomic
          Client API. Enable/Disable the probes based on the requirement, and click
          Create.\n2. Click Create instance for the Version Manager API. Do not modify
          the JSON/YAML file, click on Create.\n\n### How does it work?\nTurbonomic
          uses a public APIs already exposed by application and infrastructure instrumentation
          to discover and monitor your environment.\nTurbonomic determines the right
          actions that drive continuous health, including continuous placement and
          continuous scaling for applications and the underlying cluster.\nTurbonomic
          leverages the built-on orchestration provided by the application and infrastructure
          deployment tools and automates the execution of these actions to continiously
          meet the respective service level objective of each application service."
        displayName: Turbonomic Secure Connect Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - turbonomic
        - turbo secure connect
        links:
        - name: T8c Tsc Client Certified
          url: https://t8c-tsc-certified.domain
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        relatedImages:
        - icr.io/cpopen/t8c-client-operator@sha256:372569f1b26ccdebae386e5a3e5da42722255ab6e604f1c420b922bb35baf716
        - registry.connect.redhat.com/turbonomic/t8c-tsc-client-operator-bundle@sha256:164c19fcede19adde16d688ddc3c076bf5240e17ea8ba62203166fde1ae34823
        version: 1.4.3
      entries:
      - name: t8c-tsc-client-certified.v1.4.3
        version: 1.4.3
      name: stable
    defaultChannel: stable
    packageName: t8c-tsc-client-certified
    provider:
      name: Turbonomic, Inc.
      url: https://www.turbonomic.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Digital.ai
      provider-url: https://digital.ai
    name: digitalai-release-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: digitalai-release-operator.v25.1.0-beta.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "small"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "cluster": {
                    "manager": "xlr-legacy",
                    "mode": "full",
                    "name": "xl-release_cluster",
                    "node": {
                      "datacenter": "default"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"${XLR_CLUSTER_NAME}\"\n    manager = \"${XLR_CLUSTER_MANAGER}\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n      {{- if .Values.storage.reportingEngine.downingProviderClass }}\n      cluster {\n        downing-provider-class = {{.Values.storage.reportingEngine.downingProviderClass | quote}}\n      }\n      {{- end }}\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n    {{- if or .Values.storage.reportingEngine.s3.enabled .Values.storage.reportingEngine.cleanupInterval }}\n    engine {\n      {{- if .Values.storage.reportingEngine.cleanupInterval }}\n      cleanUpInterval = \"{{ .Values.storage.reportingEngine.cleanupInterval }}\"\n      {{- end }}\n      {{- if or .Values.storage.reportingEngine.s3.enabled }}\n      type = \"xlr-s3\"\n      s3 {\n        bucket = \"{{ .Values.storage.reportingEngine.s3.bucket | required \"storage.reportingEngine.s3.bucket is required\" }}\"\n        base-key = \"{{ .Values.storage.reportingEngine.s3.baseKey | required \"storage.reportingEngine.s3.baseKey is required\" }}\"\n        region = \"{{ .Values.storage.reportingEngine.s3.region | required \"storage.reportingEngine.s3.region is required\" }}\"\n        {{- if .Values.storage.reportingEngine.s3.endpointUri }}\n        endpoint-uri = \"{{ .Values.storage.reportingEngine.s3.endpointUri }}\"\n        {{- end }}\n      }\n      {{- end }}\n    }\n    {{- end }}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  {{- if or .Values.storage.jobLog.s3.enabled .Values.storage.jobLog.cleanupInterval .Values.storage.jobLog.maxItemsPerCleanup }}\n  job-log {\n    {{- if .Values.storage.jobLog.cleanupInterval }}\n    cleanup-interval = \"{{ .Values.storage.jobLog.cleanupInterval }}\"\n    {{- end }}\n    {{- if .Values.storage.jobLog.maxItemsPerCleanup }}\n    max-items-per-cleanup = \"{{ .Values.storage.jobLog.maxItemsPerCleanup }}\"\n    {{- end }}\n    {{- if or .Values.storage.jobLog.s3.enabled }}\n    type = \"xlr-s3\"\n    s3 {\n      bucket = \"{{ .Values.storage.jobLog.s3.bucket | required \"storage.jobLog.s3.bucket is required\" }}\"\n      base-key = \"{{ .Values.storage.jobLog.s3.baseKey | required \"storage.jobLog.s3.baseKey is required\" }}\"\n      region = \"{{ .Values.storage.jobLog.s3.region | required \"storage.jobLog.s3.region is required\" }}\"\n      {{- if .Values.storage.jobLog.s3.endpointUri }}\n      endpoint-uri = \"{{ .Values.storage.jobLog.s3.endpointUri }}\"\n      {{- end }}\n    }\n    {{- end }}\n  }\n  {{- end }}\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    },
                    "node-conf_xl-release-conf-template": {
                      "content": "# The ${APP_HOME}/node-conf/xl-release.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-release.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-release.conf and this is specified in ${APP_HOME}/conf/xlr-wrapper-linux.conf\nxl {\n  cluster {\n    node {\n      id = ${XL_NODE_NAME}\n      hostname = ${XL_NODE_NAME}\n      datacenter = ${XLR_CLUSTER_DATACENTER}\n      clusterPort = 5531\n    }\n  }\n}\n",
                      "mode": 432,
                      "path": "node-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "readOnlyRootFilesystem": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-dair",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": "cd /tmp; \n/opt/xebialabs/xl-client/xl kube upgrade \\\n  --skip-context-check \\\n  --local-repo /opt/xebialabs/xl-op-blueprints \\\n  --answers /opt/xebialabs/xl-client/generated_answers.yaml\n",
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    }
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "livenessProbe": {
                    "enabled": true,
                    "failureThreshold": 3,
                    "initialDelaySeconds": 10,
                    "path": "s/actuator/health/liveness",
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 20
                  },
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.12.0-debian-12-r12"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "emptyDirPaths": [
                      "/opt/xebialabs/xl-release-server/cache",
                      "/opt/xebialabs/xl-release-server/conf",
                      "/opt/xebialabs/xl-release-server/driver/jdbc",
                      "/opt/xebialabs/xl-release-server/driver/mq",
                      "/opt/xebialabs/xl-release-server/log",
                      "/opt/xebialabs/xl-release-server/node-conf",
                      "/opt/xebialabs/xl-release-server/plugins",
                      "/opt/xebialabs/xl-release-server/work",
                      "/tmp"
                    ],
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "17.2.0-debian-12-r12"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "4.0.7-debian-12-r0"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "readinessProbe": {
                    "enabled": true,
                    "failureThreshold": 3,
                    "initialDelaySeconds": 10,
                    "path": "s/actuator/health/readiness",
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 20
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "startupProbe": {
                    "enabled": true,
                    "failureThreshold": 12,
                    "initialDelaySeconds": 60,
                    "path": "s/actuator/health/readiness",
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 20
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "storage": {
                    "jobLog": {
                      "cleanupInterval": null,
                      "maxItemsPerCleanup": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    },
                    "reportingEngine": {
                      "cleanupInterval": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    }
                  },
                  "terminationGracePeriodSeconds": 450,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r39"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabsunsupported/release-operator@sha256:13ba64f395ea66740d4f424a85ca94c0b018913c1ab672448b31d652b09ece5f '
          createdAt: "2025-04-09T14:48:21Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind: DigitalaiRelease\nmetadata:\n
          \ name: dair-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    enabled: false\n  containerSecurityContext:\n
          \   enabled: false\n  volumePermissions:\n    enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          JSESSIONID\n      haproxy.router.openshift.io/disable_cookies: 'false'\n
          \     haproxy.router.openshift.io/rewrite-target: /\n      haproxy.router.openshift.io/timeout:
          120s\n    hostname: '<mandatory-release-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n        enabled:
          false\n      containerSecurityContext:\n        enabled: false\n    volumePermissions:\n
          \     enabled: false\n  rabbitmq:\n    install: true\n    persistence:\n
          \     size: 1Gi\n      storageClass: ''\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n```\n\n#### Configuration
          Details\n\nThe sample configuration uses:\n\n- Autogenerated limited license\n-
          Simple administrator initial password\n- Default keystore setup\n- Only
          one replica is set for all pods\n- All Pods are missing resource limit setup\n-
          Default storage class and minimal size for persistent storage\n- Release
          pods are using persistence access mode `ReadWriteOnce`, for Release pods
          the requirement is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB
          management\n- Embedded RabbitMQ for message queue management\n\n#### Security
          Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined ranges (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:155a3bf3b1111eb17a78c72c50e36edfcb331b7fb0298692c59f1ef6b7a068ac
        - docker.io/xebialabsunsupported/release-operator@sha256:13ba64f395ea66740d4f424a85ca94c0b018913c1ab672448b31d652b09ece5f
        - docker.io/xebialabsunsupported/xl-release@sha256:7297abc6529aa2cc8d43d4df5caa6fc63eae412ab06e4a59f8da45524b3937f6
        version: 25.1.0-beta.6
      entries:
      - name: digitalai-release-operator.v25.1.0-beta.6
        version: 25.1.0-beta.6
      name: beta
    - currentCSV: digitalai-release-operator.v24.1.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "fsGroup": null,
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "fsGroup": null,
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"xl-release_cluster\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  jvm {\n      override-jvm-options = {{ .Values.jvm.overrideOptions }}\n      networkaddress.cache.ttl = {{ index .Values.jvm.options \"networkaddress.cache.ttl\" }}\n  }\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "ingressClass": "haproxy-dair",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "health": {
                    "enabled": true,
                    "periodScans": 10,
                    "probeFailureThreshold": 12,
                    "probesLivenessTimeout": 60,
                    "probesReadinessTimeout": 60
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-client/xl",
                        "kube",
                        "upgrade",
                        "--skip-context-check",
                        "--local-repo",
                        "/opt/xebialabs/xl-op-blueprints",
                        "--answers",
                        "/opt/xebialabs/xl-client/generated_answers.yaml"
                      ],
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    },
                    "overrideOptions": true
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.0-debian-12-r1"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.10.1-debian-12-r5"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "15.6.0-debian-12-r7"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.13-debian-12-r2"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "terminationGracePeriodSeconds": 200,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r16"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator without SCC creation and with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: docker.io/xebialabs/release-operator@sha256:47d6e31f66fce52c6566240b85fb028890409ad3addeea134120d1afa4814883
          createdAt: "2024-10-16T04:25:19Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind:
          DigitalaiRelease\nmetadata:\n  name: dair-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    runAsUser: null\n    runAsGroup: null\n
          \   fsGroup: null\n  containerSecurityContext:\n    runAsUser: null\n    runAsGroup:
          null\n  securityContextConstraints:\n    enabled: false\n  volumePermissions:\n
          \   enabled: false\n  route:\n    enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          JSESSIONID\n      haproxy.router.openshift.io/disable_cookies: 'false'\n
          \     haproxy.router.openshift.io/rewrite-target: /\n      haproxy.router.openshift.io/timeout:
          120s\n    hostname: '<mandatory-release-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n        enabled:
          false\n        runAsUser: null\n        runAsGroup: null\n        fsGroup:
          null\n      containerSecurityContext:\n        enabled: false\n        runAsUser:
          null\n        runAsGroup: null\n      securityContextConstraints:\n        enabled:
          false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n    install:
          true\n    persistence:\n      size: 1Gi\n      storageClass: ''\n    replicaCount:
          1\n    podSecurityContext:\n      enabled: false\n      runAsUser: null\n
          \     runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     enabled: false\n      runAsUser: null\n      runAsGroup: null\n    securityContextConstraints:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\nIf
          SCC is required, it must be managed manually. The necessary permissions
          for accessing SecurityContextConstraints must be granted when SCC is enabled;
          otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"dair-doc-digitalai-release-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xlr-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Release pods are using
          persistence access mode `ReadWriteOnce`, for Release pods the requirement
          is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB management\n- Embedded
          RabbitMQ for message queue management\n\n#### Security Configuration Details\n\n-
          `securityContextConstraints.enabled: false` - disables creation of SCCs;\n-
          `podSecurityContext/containerSecurityContext` - that disables the use of
          specific UIDs or GIDs, so the IDs can be assigned from the defined ranges
          (for example from restricted SCC);\n- `volumePermissions.enabled: false`
          - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/release-operator@sha256:47d6e31f66fce52c6566240b85fb028890409ad3addeea134120d1afa4814883
        - docker.io/xebialabs/xl-release@sha256:d1b65493ed524d37c60483f44b8bcc877ff398c81d36c7e767f2254dadec98cc
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:771a9a173e033a3ad8b46f5c00a7036eaa88c8d8d1fbd89217325168998113ea
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:a85d4f1c8a686abc0b9032dddda75991216d44dfade214625723d7009be314d3
        version: 24.1.10
      entries:
      - name: digitalai-release-operator.v24.1.10
        version: 24.1.10
      name: stable
    - currentCSV: digitalai-release-operator.v24.1.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"xl-release_cluster\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  jvm {\n      override-jvm-options = {{ .Values.jvm.overrideOptions }}\n      networkaddress.cache.ttl = {{ index .Values.jvm.options \"networkaddress.cache.ttl\" }}\n  }\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "image": {
                        "tag": "v0.14.7"
                      },
                      "ingressClass": "haproxy-dair",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "health": {
                    "enabled": true,
                    "periodScans": 10,
                    "probeFailureThreshold": 12,
                    "probesLivenessTimeout": 60,
                    "probesReadinessTimeout": 60
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-client/xl",
                        "kube",
                        "upgrade",
                        "--skip-context-check",
                        "--local-repo",
                        "/opt/xebialabs/xl-op-blueprints",
                        "--answers",
                        "/opt/xebialabs/xl-client/generated_answers.yaml"
                      ],
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    },
                    "overrideOptions": true
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.2-debian-12-r10"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r0"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "15.6.0-debian-12-r20"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.14-debian-12-r7"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "terminationGracePeriodSeconds": 200,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r40"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator without SCC creation and with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/release-operator@sha256:a190db714dfbba61077d21eb8917831b6b4d039299e2ce2fd3ea3934ff457171 '
          createdAt: "2025-04-07T05:35:54Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind:
          DigitalaiRelease\nmetadata:\n  name: dair-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    enabled: false\n  containerSecurityContext:\n
          \   enabled: false\n  securityContextConstraints:\n    enabled: false\n
          \ volumePermissions:\n    enabled: false\n  route:\n    enabled: false\n
          \   annotations:\n      haproxy.router.openshift.io/cookie_name: JSESSIONID\n
          \     haproxy.router.openshift.io/disable_cookies: 'false'\n      haproxy.router.openshift.io/rewrite-target:
          /\n      haproxy.router.openshift.io/timeout: 120s\n    hostname: '<mandatory-release-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n
          \       enabled: false\n      containerSecurityContext:\n        enabled:
          false\n      securityContextConstraints:\n        enabled: false\n    volumePermissions:\n
          \     enabled: false\n  rabbitmq:\n    install: true\n    persistence:\n
          \     size: 1Gi\n      storageClass: ''\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   securityContextConstraints:\n      enabled: false\n    volumePermissions:\n
          \     enabled: false\n```\n\nIf SCC is required, it must be managed manually.
          The necessary permissions for accessing SecurityContextConstraints must
          be granted when SCC is enabled; otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"dair-doc-digitalai-release-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xlr-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Release pods are using
          persistence access mode `ReadWriteOnce`, for Release pods the requirement
          is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB management\n- Embedded
          RabbitMQ for message queue management\n\n#### Security Configuration Details\n\n-
          `securityContextConstraints.enabled: false` - disables creation of SCCs;\n-
          `podSecurityContext/containerSecurityContext` - that disables the use of
          specific UIDs or GIDs, so the IDs can be assigned from the defined ranges
          (for example from restricted SCC);\n- `volumePermissions.enabled: false`
          - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/xl-release@sha256:c990bfa8c783898536aa78a8cbcff03644de1241a201af4a14835c81c9c654d9
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:7169b97771d93f504de73a3696dbd1d184ba987cb51ae1ab81bf4bef17b42bcf
        - docker.io/xebialabs/release-operator@sha256:a190db714dfbba61077d21eb8917831b6b4d039299e2ce2fd3ea3934ff457171
        version: 24.1.17
      entries:
      - name: digitalai-release-operator.v24.1.17
        version: 24.1.17
      - name: digitalai-release-operator.v24.1.14
        version: 24.1.14
      - name: digitalai-release-operator.v24.1.10
        version: 24.1.10
      name: stable-v24.1
    - currentCSV: digitalai-release-operator.v24.3.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "small"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"xl-release_cluster\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n    {{- if or .Values.storage.reportingEngine.s3.enabled .Values.storage.reportingEngine.cleanupInterval }}\n    engine {\n      {{- if .Values.storage.reportingEngine.cleanupInterval }}\n      cleanUpInterval = \"{{ .Values.storage.reportingEngine.cleanupInterval }}\"\n      {{- end }}\n      {{- if or .Values.storage.reportingEngine.s3.enabled }}\n      type = \"xlr-s3\"\n      s3 {\n        bucket = \"{{ .Values.storage.reportingEngine.s3.bucket | required \"storage.reportingEngine.s3.bucket is required\" }}\"\n        base-key = \"{{ .Values.storage.reportingEngine.s3.baseKey | required \"storage.reportingEngine.s3.baseKey is required\" }}\"\n        region = \"{{ .Values.storage.reportingEngine.s3.region | required \"storage.reportingEngine.s3.region is required\" }}\"\n        {{- if .Values.storage.reportingEngine.s3.endpointUri }}\n        endpoint-uri = \"{{ .Values.storage.reportingEngine.s3.endpointUri }}\"\n        {{- end }}\n      }\n      {{- end }}\n    }\n    {{- end }}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  {{- if or .Values.storage.jobLog.s3.enabled .Values.storage.jobLog.cleanupInterval .Values.storage.jobLog.maxItemsPerCleanup }}\n  job-log {\n    {{- if .Values.storage.jobLog.cleanupInterval }}\n    cleanup-interval = \"{{ .Values.storage.jobLog.cleanupInterval }}\"\n    {{- end }}\n    {{- if .Values.storage.jobLog.maxItemsPerCleanup }}\n    max-items-per-cleanup = \"{{ .Values.storage.jobLog.maxItemsPerCleanup }}\"\n    {{- end }}\n    {{- if or .Values.storage.jobLog.s3.enabled }}\n    type = \"xlr-s3\"\n    s3 {\n      bucket = \"{{ .Values.storage.jobLog.s3.bucket | required \"storage.jobLog.s3.bucket is required\" }}\"\n      base-key = \"{{ .Values.storage.jobLog.s3.baseKey | required \"storage.jobLog.s3.baseKey is required\" }}\"\n      region = \"{{ .Values.storage.jobLog.s3.region | required \"storage.jobLog.s3.region is required\" }}\"\n      {{- if .Values.storage.jobLog.s3.endpointUri }}\n      endpoint-uri = \"{{ .Values.storage.jobLog.s3.endpointUri }}\"\n      {{- end }}\n    }\n    {{- end }}\n  }\n  {{- end }}\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    },
                    "node-conf_xl-release-conf-template": {
                      "content": "# The ${APP_HOME}/node-conf/xl-release.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-release.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-release.conf and this is specified in ${APP_HOME}/conf/xlr-wrapper-linux.conf\nxl {\n  cluster {\n    node {\n      id = ${XL_NODE_NAME}\n      hostname = ${XL_NODE_NAME}\n      clusterPort = 5531\n    }\n  }\n}\n",
                      "mode": 432,
                      "path": "node-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "readOnlyRootFilesystem": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-dair",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "health": {
                    "enabled": true,
                    "periodScans": 10,
                    "probeFailureThreshold": 12,
                    "probesLivenessTimeout": 60,
                    "probesReadinessTimeout": 60
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": "cd /tmp; \n/opt/xebialabs/xl-client/xl kube upgrade \\\n  --skip-context-check \\\n  --local-repo /opt/xebialabs/xl-op-blueprints \\\n  --answers /opt/xebialabs/xl-client/generated_answers.yaml\n",
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    }
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r3"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "emptyDirPaths": [
                      "/opt/xebialabs/xl-release-server/cache",
                      "/opt/xebialabs/xl-release-server/conf",
                      "/opt/xebialabs/xl-release-server/driver/jdbc",
                      "/opt/xebialabs/xl-release-server/driver/mq",
                      "/opt/xebialabs/xl-release-server/log",
                      "/opt/xebialabs/xl-release-server/node-conf",
                      "/opt/xebialabs/xl-release-server/plugins",
                      "/opt/xebialabs/xl-release-server/work",
                      "/tmp"
                    ],
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "16.3.0-debian-12-r23"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n{{ if eq .Values.queueType \"quorum\" -}}\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n{{- end }}\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.13.7-debian-12-r5"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "queueType": "classic",
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "storage": {
                    "jobLog": {
                      "cleanupInterval": null,
                      "maxItemsPerCleanup": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    },
                    "reportingEngine": {
                      "cleanupInterval": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    }
                  },
                  "terminationGracePeriodSeconds": 200,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r42"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/release-operator@sha256:f07c3a505e28db618b8991c7cf8a6b9a9423313be2757bacc776b9e59dfc9f45 '
          createdAt: "2025-04-08T15:13:48Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind: DigitalaiRelease\nmetadata:\n
          \ name: dair-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    enabled: false\n  containerSecurityContext:\n
          \   enabled: false\n  volumePermissions:\n    enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          JSESSIONID\n      haproxy.router.openshift.io/disable_cookies: 'false'\n
          \     haproxy.router.openshift.io/rewrite-target: /\n      haproxy.router.openshift.io/timeout:
          120s\n    hostname: '<mandatory-release-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n        enabled:
          false\n      containerSecurityContext:\n        enabled: false\n    volumePermissions:\n
          \     enabled: false\n  rabbitmq:\n    install: true\n    persistence:\n
          \     size: 1Gi\n      storageClass: ''\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n```\n\n#### Configuration
          Details\n\nThe sample configuration uses:\n\n- Autogenerated limited license\n-
          Simple administrator initial password\n- Default keystore setup\n- Only
          one replica is set for all pods\n- All Pods are missing resource limit setup\n-
          Default storage class and minimal size for persistent storage\n- Release
          pods are using persistence access mode `ReadWriteOnce`, for Release pods
          the requirement is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB
          management\n- Embedded RabbitMQ for message queue management\n\n#### Security
          Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined ranges (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/xl-release@sha256:263fb67b774953a264f03945aa861fe6ed2ceb1ee25828ea11844f946e4619cf
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:49919225644f55e6e752c7e64ce3afb3260d0201962939e0d9bb2b6088a8841b
        - docker.io/xebialabs/release-operator@sha256:f07c3a505e28db618b8991c7cf8a6b9a9423313be2757bacc776b9e59dfc9f45
        version: 24.3.6
      entries:
      - name: digitalai-release-operator.v24.3.6
        version: 24.3.6
      - name: digitalai-release-operator.v24.3.5
        version: 24.3.5
      name: stable-v24.3
    defaultChannel: stable-v24.3
    packageName: digitalai-release-operator
    provider:
      name: Digital.ai
      url: https://digital.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Broadcom
      provider-url: https://www.broadcom.com/
    name: layer7-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: layer7-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "security.brcmlabs.com/v1",
                "kind": "Gateway",
                "metadata": {
                  "name": "ssg"
                },
                "spec": {
                  "app": {
                    "image": "docker.io/caapim/gateway:11.1.3",
                    "management": {
                      "cluster": {
                        "hostname": "gateway.brcmlabs.com",
                        "password": "7layer"
                      },
                      "password": "7layer",
                      "username": "admin"
                    },
                    "replicas": 1,
                    "service": {
                      "ports": [
                        {
                          "name": "https",
                          "port": 8443,
                          "protocol": "TCP",
                          "targetPort": 8443
                        },
                        {
                          "name": "management",
                          "port": 9443,
                          "protocol": "TCP",
                          "targetPort": 9443
                        }
                      ],
                      "type": "LoadBalancer"
                    }
                  },
                  "license": {
                    "accept": false,
                    "secretName": "gateway-license"
                  },
                  "version": "11.1.3"
                },
                "status": {}
              },
              {
                "apiVersion": "security.brcmlabs.com/v1",
                "kind": "Repository",
                "metadata": {
                  "name": "my-repository"
                },
                "spec": {
                  "auth": {},
                  "branch": "main",
                  "enabled": true,
                  "endpoint": "https://github.com/\u003cusername\u003e/\u003crepository\u003e",
                  "type": "git"
                }
              },
              {
                "apiVersion": "security.brcmlabs.com/v1alpha1",
                "kind": "L7Api",
                "metadata": {
                  "name": "l7api-sample"
                },
                "spec": {
                  "deploymentTags": [
                    "ssg",
                    "ssg1"
                  ],
                  "graphmanBundle": "jsongz",
                  "portalPublished": false,
                  "serviceUrl": "/v1/api"
                }
              },
              {
                "apiVersion": "security.brcmlabs.com/v1alpha1",
                "kind": "L7Portal",
                "metadata": {
                  "name": "dev-portal"
                },
                "spec": {
                  "auth": {},
                  "deploymentTags": [
                    "ssg"
                  ],
                  "enabled": true,
                  "endpoint": "dev-ssg.brcmlabs.com",
                  "enrollmentBundle": "",
                  "portalTenant": "portal"
                }
              },
              {
                "apiVersion": "security.brcmlabs.com/v1alpha1",
                "kind": "L7StateStore",
                "metadata": {
                  "name": "state-store-example"
                },
                "spec": {
                  "redis": {
                    "database": 0,
                    "groupName": "l7gw",
                    "masterPassword": "7layer",
                    "standalone": {
                      "host": "redis-standalone",
                      "port": 6379
                    },
                    "storeId": "test",
                    "type": "standalone"
                  },
                  "type": "redis"
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: docker.io/caapim/layer7-operator:v1.2.2
          createdAt: "2025-11-28T13:43:31Z"
          description: The Layer7 Operator covers all aspects of deploying, maintaining
            and upgrading Layer7 API Gateways in Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: layer7-operator-system
          operators.openshift.io/valid-subscription: Layer7 (Broadcom) API Gateway
            license
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/caapim/layer7-operator
          support: Broadcom Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gateway is the Schema for the Gateway Custom Resource
            displayName: Gateway
            kind: Gateway
            name: gateways.security.brcmlabs.com
            version: v1
          - description: L7Api is the Schema for the l7apis API
            displayName: L7 Api
            kind: L7Api
            name: l7apis.security.brcmlabs.com
            version: v1alpha1
          - description: L7Portal is the Schema for the l7portals API
            displayName: L7 Portal
            kind: L7Portal
            name: l7portals.security.brcmlabs.com
            version: v1alpha1
          - description: L7StateStore is the Schema for the l7statestores API
            displayName: L7 State Store
            kind: L7StateStore
            name: l7statestores.security.brcmlabs.com
            version: v1alpha1
          - description: Repository is the Schema for the repositories API
            displayName: Repository
            kind: Repository
            name: repositories.security.brcmlabs.com
            version: v1
        description: |
          The [Layer7 Operator](https://github.com/CAAPIM/layer7-operator) covers all aspects of deploying, maintaining and upgrading Layer7 API Gateways in Kubernetes. The Layer7 Operator is exclusive to Kubernetes and utilizes the Container Gateway with specific emphasis on running in Ephemeral mode (without an external MySQL policy database).

          ## Getting Started
          This [Getting Started](https://github.com/CAAPIM/layer7-operator/wiki/Getting-Started) guide covers a simple introduction to the Layer7 Operator. You can find more documentation [here](https://github.com/CAAPIM/layer7-operator/wiki).
        displayName: Layer7 Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - layer7-operator
        links:
        - name: Layer7 Operator
          url: https://github.com/caapim/layer7-operator
        maintainers:
        - email: gary.vermeulen@broadcom.com
          name: Gary Vermeulen
        maturity: alpha
        provider:
          name: Broadcom
          url: https://www.broadcom.com/
        relatedImages:
        - docker.io/caapim/layer7-operator:v1.2.2
        - quay.io/community-operator-pipeline-prod/layer7-operator:1.2.2
        - docker.io/caapim/gateway:11.1.3
        - docker.io/caapim/graphman-static-init:1.0.4
        version: 1.2.2
      entries:
      - name: layer7-operator.v1.2.2
        version: 1.2.2
      - name: layer7-operator.v1.2.1
        version: 1.2.1
      - name: layer7-operator.v1.2.0
        version: 1.2.0
      name: preview
    defaultChannel: preview
    packageName: layer7-operator
    provider:
      name: Broadcom
      url: https://www.broadcom.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: ibm-block-csi-operator-community
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-block-csi-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "IBMBlockCSI",
                "metadata": {
                  "name": "ibm-block-csi"
                },
                "spec": {
                  "controller": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-controller",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "node": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-node",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "sidecars": [
                    {
                      "name": "csi-node-driver-registrar",
                      "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                      "tag": "v2.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-provisioner",
                      "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                      "tag": "v4.0.1",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-attacher",
                      "repository": "registry.k8s.io/sig-storage/csi-attacher",
                      "tag": "v4.9.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-snapshotter",
                      "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                      "tag": "v8.3.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-resizer",
                      "repository": "registry.k8s.io/sig-storage/csi-resizer",
                      "tag": "v1.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-addons-replicator",
                      "repository": "quay.io/ibmcsiblock/csi-block-volumereplication-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-volume-group",
                      "repository": "quay.io/ibmcsiblock/csi-volume-group-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "livenessprobe",
                      "repository": "registry.k8s.io/sig-storage/livenessprobe",
                      "tag": "v2.16.0",
                      "imagePullPolicy": "IfNotPresent"
                    }
                  ]
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefinition",
                "metadata": {
                  "name": "host-definition"
                },
                "spec": {
                  "hostDefinition": {
                    "nodeName": "node-name"
                  }
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefiner",
                "metadata": {
                  "name": "host-definer"
                },
                "spec": {
                  "hostDefiner": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-host-definer",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage,Cloud Provider
          certified: "true"
          containerImage: quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
          createdAt: "2024-08-27T11:00:00Z"
          description: Run IBM block storage CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.openshift.io/valid-subscription: ""
          repository: https://github.com/IBM/ibm-block-csi-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a block storage CSI driver
            displayName: IBM block storage CSI driver
            kind: IBMBlockCSI
            name: ibmblockcsis.csi.ibm.com
            version: v1
          - description: Represents a Host Definition for IBM block storage
            displayName: IBM block storage Host Definition
            kind: HostDefinition
            name: hostdefinitions.csi.ibm.com
            version: v1
          - description: Represents Host Definer for block storage CSI driver
            displayName: IBM block storage Host Definer
            kind: HostDefiner
            name: hostdefiners.csi.ibm.com
            version: v1
        description: |
          The Container Storage Interface (CSI) Driver for IBM block storage systems enables container orchestrators such as Kubernetes to manage the life cycle of persistent storage.

          This is the official operator to deploy and manage IBM block storage CSI driver.

          For compatibility, prerequisites, release notes, and other user information, see [IBM block storage CSI driver documentation](https://www.ibm.com/docs/en/stg-block-csi-driver).
        displayName: IBM block storage CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - BlockStorage
        - CSI
        links:
        - name: Source Code
          url: https://github.com/IBM/ibm-block-csi-operator
        maintainers:
        - email: csi.block1@il.ibm.com
          name: IBM Block CSI Team
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: IBM
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ibm-block-csi-operator-community@sha256:34f608627ff14d9e24f222306f3a481982a82ecaddfb855dbadcb140bb7283a5
        - quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
        version: 1.13.0
      entries:
      - name: ibm-block-csi-operator.v1.13.0
        version: 1.13.0
      name: stable
    - currentCSV: ibm-block-csi-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "IBMBlockCSI",
                "metadata": {
                  "name": "ibm-block-csi"
                },
                "spec": {
                  "controller": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-controller",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "node": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-node",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "sidecars": [
                    {
                      "name": "csi-node-driver-registrar",
                      "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                      "tag": "v2.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-provisioner",
                      "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                      "tag": "v4.0.1",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-attacher",
                      "repository": "registry.k8s.io/sig-storage/csi-attacher",
                      "tag": "v4.9.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-snapshotter",
                      "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                      "tag": "v8.3.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-resizer",
                      "repository": "registry.k8s.io/sig-storage/csi-resizer",
                      "tag": "v1.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-addons-replicator",
                      "repository": "quay.io/ibmcsiblock/csi-block-volumereplication-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-volume-group",
                      "repository": "quay.io/ibmcsiblock/csi-volume-group-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "livenessprobe",
                      "repository": "registry.k8s.io/sig-storage/livenessprobe",
                      "tag": "v2.16.0",
                      "imagePullPolicy": "IfNotPresent"
                    }
                  ]
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefinition",
                "metadata": {
                  "name": "host-definition"
                },
                "spec": {
                  "hostDefinition": {
                    "nodeName": "node-name"
                  }
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefiner",
                "metadata": {
                  "name": "host-definer"
                },
                "spec": {
                  "hostDefiner": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-host-definer",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage,Cloud Provider
          certified: "true"
          containerImage: quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
          createdAt: "2024-08-27T11:00:00Z"
          description: Run IBM block storage CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.openshift.io/valid-subscription: ""
          repository: https://github.com/IBM/ibm-block-csi-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a block storage CSI driver
            displayName: IBM block storage CSI driver
            kind: IBMBlockCSI
            name: ibmblockcsis.csi.ibm.com
            version: v1
          - description: Represents a Host Definition for IBM block storage
            displayName: IBM block storage Host Definition
            kind: HostDefinition
            name: hostdefinitions.csi.ibm.com
            version: v1
          - description: Represents Host Definer for block storage CSI driver
            displayName: IBM block storage Host Definer
            kind: HostDefiner
            name: hostdefiners.csi.ibm.com
            version: v1
        description: |
          The Container Storage Interface (CSI) Driver for IBM block storage systems enables container orchestrators such as Kubernetes to manage the life cycle of persistent storage.

          This is the official operator to deploy and manage IBM block storage CSI driver.

          For compatibility, prerequisites, release notes, and other user information, see [IBM block storage CSI driver documentation](https://www.ibm.com/docs/en/stg-block-csi-driver).
        displayName: IBM block storage CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - BlockStorage
        - CSI
        links:
        - name: Source Code
          url: https://github.com/IBM/ibm-block-csi-operator
        maintainers:
        - email: csi.block1@il.ibm.com
          name: IBM Block CSI Team
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: IBM
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ibm-block-csi-operator-community@sha256:34f608627ff14d9e24f222306f3a481982a82ecaddfb855dbadcb140bb7283a5
        - quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
        version: 1.13.0
      entries:
      - name: ibm-block-csi-operator.v1.13.0
        version: 1.13.0
      name: stable-v1.13
    - currentCSV: ibm-block-csi-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "IBMBlockCSI",
                "metadata": {
                  "name": "ibm-block-csi"
                },
                "spec": {
                  "controller": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-controller",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "node": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-node",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "sidecars": [
                    {
                      "name": "csi-node-driver-registrar",
                      "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                      "tag": "v2.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-provisioner",
                      "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                      "tag": "v4.0.1",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-attacher",
                      "repository": "registry.k8s.io/sig-storage/csi-attacher",
                      "tag": "v4.9.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-snapshotter",
                      "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                      "tag": "v8.3.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-resizer",
                      "repository": "registry.k8s.io/sig-storage/csi-resizer",
                      "tag": "v1.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-addons-replicator",
                      "repository": "quay.io/ibmcsiblock/csi-block-volumereplication-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-volume-group",
                      "repository": "quay.io/ibmcsiblock/csi-volume-group-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "livenessprobe",
                      "repository": "registry.k8s.io/sig-storage/livenessprobe",
                      "tag": "v2.16.0",
                      "imagePullPolicy": "IfNotPresent"
                    }
                  ]
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefinition",
                "metadata": {
                  "name": "host-definition"
                },
                "spec": {
                  "hostDefinition": {
                    "nodeName": "node-name"
                  }
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefiner",
                "metadata": {
                  "name": "host-definer"
                },
                "spec": {
                  "hostDefiner": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-host-definer",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage,Cloud Provider
          certified: "true"
          containerImage: quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
          createdAt: "2024-08-27T11:00:00Z"
          description: Run IBM block storage CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.openshift.io/valid-subscription: ""
          repository: https://github.com/IBM/ibm-block-csi-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a block storage CSI driver
            displayName: IBM block storage CSI driver
            kind: IBMBlockCSI
            name: ibmblockcsis.csi.ibm.com
            version: v1
          - description: Represents a Host Definition for IBM block storage
            displayName: IBM block storage Host Definition
            kind: HostDefinition
            name: hostdefinitions.csi.ibm.com
            version: v1
          - description: Represents Host Definer for block storage CSI driver
            displayName: IBM block storage Host Definer
            kind: HostDefiner
            name: hostdefiners.csi.ibm.com
            version: v1
        description: |
          The Container Storage Interface (CSI) Driver for IBM block storage systems enables container orchestrators such as Kubernetes to manage the life cycle of persistent storage.

          This is the official operator to deploy and manage IBM block storage CSI driver.

          For compatibility, prerequisites, release notes, and other user information, see [IBM block storage CSI driver documentation](https://www.ibm.com/docs/en/stg-block-csi-driver).
        displayName: IBM block storage CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - BlockStorage
        - CSI
        links:
        - name: Source Code
          url: https://github.com/IBM/ibm-block-csi-operator
        maintainers:
        - email: csi.block1@il.ibm.com
          name: IBM Block CSI Team
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: IBM
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ibm-block-csi-operator-community@sha256:34f608627ff14d9e24f222306f3a481982a82ecaddfb855dbadcb140bb7283a5
        - quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
        version: 1.13.0
      entries:
      - name: ibm-block-csi-operator.v1.13.0
        version: 1.13.0
      name: stable-v1.13.0
    defaultChannel: stable
    packageName: ibm-block-csi-operator-community
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-s3control-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-s3control-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/s3control-controller:1.2.0
          createdAt: "2025-11-29T03:56:06Z"
          description: AWS S3 Control controller is a service controller for managing
            S3 Control resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AccessPoint represents the state of an AWS s3control AccessPoint
              resource.
            displayName: AccessPoint
            kind: AccessPoint
            name: accesspoints.s3control.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon S3 Control resources in AWS from within your Kubernetes cluster.

          **About Amazon S3 Control**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon S3 Control
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - s3control
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon S3 Control Developer Resources
          url: https://aws.amazon.com/S3 Control/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: s3control maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/s3control-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-s3control-controller@sha256:9d6407d14686ee07e5c704e7fa78b09e4f493b2e62b186541fb5d0c22f98364f
        version: 1.2.0
      entries:
      - name: ack-s3control-controller.v1.2.0
        version: 1.2.0
      - name: ack-s3control-controller.v1.1.2
        version: 1.1.2
      - name: ack-s3control-controller.v1.1.1
        version: 1.1.1
      - name: ack-s3control-controller.v1.1.0
        version: 1.1.0
      - name: ack-s3control-controller.v1.0.11
        version: 1.0.11
      - name: ack-s3control-controller.v1.0.10
        version: 1.0.10
      name: alpha
    defaultChannel: alpha
    packageName: ack-s3control-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Intel Corporation
      provider-url: https://builders.intel.com/docs/networkbuilders/intel-vran-dedicated-accelerator-acc100-product-brief.pdf
    name: sriov-fec
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sriov-fec.v2.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecClusterConfig",
                "metadata": {
                  "name": "acc100SampleConfig",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "acceleratorSelector": {
                    "deviceID": "someDevice",
                    "driver": "someDriver",
                    "maxVirtualFunctions": 2,
                    "pciAddress": "somePciAddress",
                    "vendorID": "someVendor"
                  },
                  "drainSkip": false,
                  "nodeSelector": {
                    "expectedLabel1": "valueOfExpectedLabel1",
                    "expectedLabelN": "valueOfExpectedLabelN"
                  },
                  "physicalFunction": {
                    "bbDevConfig": {
                      "acc100": {
                        "downlink4G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 0
                        },
                        "downlink5G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 4
                        },
                        "maxQueueSize": 1024,
                        "numVfBundles": 16,
                        "pfMode": true,
                        "uplink4G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 0
                        },
                        "uplink5G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 4
                        }
                      }
                    },
                    "pfDriver": "pci-pf-stub",
                    "vfAmount": 2,
                    "vfDriver": "vfio-pci"
                  },
                  "priority": 100
                }
              },
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecClusterConfig",
                "metadata": {
                  "name": "n3000SampleConfig",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "acceleratorSelector": {
                    "deviceID": "someDevice",
                    "driver": "someDriver",
                    "maxVirtualFunctions": 2,
                    "pciAddress": "somePciAddress",
                    "vendorID": "someVendor"
                  },
                  "drainSkip": false,
                  "nodeSelector": {
                    "expectedLabel1": "valueOfExpectedLabel1",
                    "expectedLabelN": "valueOfExpectedLabelN"
                  },
                  "physicalFunction": {
                    "bbDevConfig": {
                      "n3000": {
                        "downlink": {
                          "bandwidth": 3,
                          "loadBalance": 128,
                          "queues": {
                            "vf0": 16,
                            "vf1": 16,
                            "vf2": 0,
                            "vf3": 0,
                            "vf4": 0,
                            "vf5": 0,
                            "vf6": 0,
                            "vf7": 0
                          }
                        },
                        "flrTimeout": 610,
                        "networkType": "FPGA_5GNR",
                        "pfMode": true,
                        "uplink": {
                          "bandwidth": 3,
                          "loadBalance": 128,
                          "queues": {
                            "vf0": 16,
                            "vf1": 16,
                            "vf2": 0,
                            "vf3": 0,
                            "vf4": 0,
                            "vf5": 0,
                            "vf6": 0,
                            "vf7": 0
                          }
                        }
                      }
                    },
                    "pfDriver": "pci-pf-stub",
                    "vfAmount": 2,
                    "vfDriver": "vfio-pci"
                  },
                  "priority": 100
                }
              },
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecNodeConfig",
                "metadata": {
                  "name": "acc100-worker",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "drainSkip": false,
                  "physicalFunctions": [
                    {
                      "bbDevConfig": {
                        "acc100": {
                          "downlink4G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 0
                          },
                          "downlink5G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 4
                          },
                          "maxQueueSize": 1024,
                          "numVfBundles": 16,
                          "pfMode": true,
                          "uplink4G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 0
                          },
                          "uplink5G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 4
                          }
                        }
                      },
                      "pci_addr": "somePciAddress",
                      "pf_driver": "pci-pf-stub",
                      "vf_amount": 2,
                      "vf_driver": "vfio-pci"
                    }
                  ]
                }
              },
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecNodeConfig",
                "metadata": {
                  "name": "n3000-worker",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "drainSkip": false,
                  "physicalFunctions": [
                    {
                      "bbDevConfig": {
                        "n3000": {
                          "downlink": {
                            "bandwidth": 3,
                            "loadBalance": 128,
                            "queues": {
                              "vf0": 16,
                              "vf1": 16,
                              "vf2": 0,
                              "vf3": 0,
                              "vf4": 0,
                              "vf5": 0,
                              "vf6": 0,
                              "vf7": 0
                            }
                          },
                          "flrTimeout": 610,
                          "networkType": "FPGA_5GNR",
                          "pfMode": true,
                          "uplink": {
                            "bandwidth": 3,
                            "loadBalance": 128,
                            "queues": {
                              "vf0": 16,
                              "vf1": 16,
                              "vf2": 0,
                              "vf3": 0,
                              "vf4": 0,
                              "vf5": 0,
                              "vf6": 0,
                              "vf7": 0
                            }
                          }
                        }
                      },
                      "pci_addr": "somePciAddress",
                      "pf_driver": "pci-pf-stub",
                      "vf_amount": 2,
                      "vf_driver": "vfio-pci"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/intel/sriov-fec-operator@sha256:adb6a4c2da6399c8ed40c906f790bce13bfcefae3326a047f6a50592b3f5e485
          createdAt: "2025-01-15"
          description: An operator for Intel Wireless FEC Accelerator to orchestrate
            and manage the resources/devices exposed by a range of Intel's vRAN FEC
            acceleration devices/hardware within the OpenShift cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/intel/sriov-fec-operator
          support: Intel Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SriovFecClusterConfig is the Schema for the sriovfecclusterconfigs
              API
            displayName: SriovFecClusterConfig
            kind: SriovFecClusterConfig
            name: sriovfecclusterconfigs.sriovfec.intel.com
            version: v2
          - description: SriovFecNodeConfig is the Schema for the sriovfecnodeconfigs
              API
            displayName: SriovFecNodeConfig
            kind: SriovFecNodeConfig
            name: sriovfecnodeconfigs.sriovfec.intel.com
            version: v2
          - description: SriovVrbClusterConfig is the Schema for the sriovvrbclusterconfigs
              API
            displayName: SriovVrbClusterConfig
            kind: SriovVrbClusterConfig
            name: sriovvrbclusterconfigs.sriovvrb.intel.com
            version: v1
          - description: SriovVrbNodeConfig is the Schema for the sriovvrbnodeconfigs
              API
            displayName: SriovVrbNodeConfig
            kind: SriovVrbNodeConfig
            name: sriovvrbnodeconfigs.sriovvrb.intel.com
            version: v1
        description: The Intel vRAN Boost family of accelerators ACC100/VRB1/VRB2,
          to offload and accelerate the computing-intensive process of forward error
          correction (FEC) and more for 4G/LTE and 5G technology, freeing up processing
          power. It allows the optimization of data plane performance to reduce total
          cost of ownership while maintaining a high degree of flexibility.  The Intel
          vRAN Boost accelerators ACC100/VRB1/VRB2 plays a key role in accelerating
          5G and network functions virtualization (NFV) adoption for ecosystem partners
          such as telecommunications equipment manufacturers (TEMs) virtual network
          functions (VNF) vendors, system integrators and telcos, to bring scalable
          and high-performance solutions to market. The Intel ACC100 includes a variant
          that is design to be Network Equipment Building System (NEBS)-friendly,
          and features a Root-of-Trust device that helps protect systems from FPGA
          host security exploits.
        displayName: SRIOV-FEC Operator for Intel vRAN Boost Accelerators
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ACC100
        - vRAN
        - ORAN
        links:
        - name: SRIOV-FEC source code
          url: https://github.com/intel/sriov-fec-operator
        maturity: alpha
        provider:
          name: Intel Corporation
          url: https://builders.intel.com/docs/networkbuilders/intel-vran-dedicated-accelerator-acc100-product-brief.pdf
        relatedImages:
        - registry.connect.redhat.com/intel/n3000-labeler@sha256:b417cfcedc998a35491784005cc7eee3d9c647b84eac5ca41cb459076870b8f6
        - registry.connect.redhat.com/intel/sriov-fec-daemon@sha256:5b0c60b67bcf5d7b2797deab0d5e3fa079577179f0acc6b0062533584ea0bc23
        - registry.connect.redhat.com/intel/sriov-fec-operator-bundle@sha256:c30849cbf451eb016786bc367e3716389b1d45676ad298c4de6a492c7bb00f4f
        - registry.connect.redhat.com/intel/sriov-fec-operator@sha256:adb6a4c2da6399c8ed40c906f790bce13bfcefae3326a047f6a50592b3f5e485
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1ed3b514bf9af6ac0d386e3739874d1d964e667d54e041c2d67edd769b0009fb
        - registry.redhat.io/openshift4/ose-sriov-network-device-plugin@sha256:d0fcb6e9135d9a19ea26851bcdb4ac72c04bd747706fc5123020460e9dbfc21b
        version: 2.11.1
      entries:
      - name: sriov-fec.v2.11.1
        version: 2.11.1
      - name: sriov-fec.v2.11.0
        version: 2.11.0
      - name: sriov-fec.v2.10.0
        version: 2.10.0
      - name: sriov-fec.v2.9.0
        version: 2.9.0
      - name: sriov-fec.v2.8.0
        version: 2.8.0
      - name: sriov-fec.v2.7.2
        version: 2.7.2
      - name: sriov-fec.v2.7.1
        version: 2.7.1
      name: stable
    defaultChannel: stable
    packageName: sriov-fec
    provider:
      name: Intel Corporation
      url: https://builders.intel.com/docs/networkbuilders/intel-vran-dedicated-accelerator-acc100-product-brief.pdf
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: node-maintenance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-maintenance-operator.v0.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodemaintenance.medik8s.io/v1beta1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "nodeName": "node02",
                  "reason": "Test node maintenance"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/node-maintenance-operator:v0.19.0
          createdAt: "2025-11-24 11:25:52"
          description: Node Maintenance Operator for cordoning and draining nodes.
          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.skipRange: '>=0.12.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-maintenance-operator
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.nodemaintenance.medik8s.io
            version: v1beta1
        description: |
          Node Maintenance Operator (NMO)

          This operator will keep nodes cordoned and drained while a matching NodeMaintenance (nm) custom resource exists.
          This is useful when investigating problems with a machine, or performing an operation on the underlying machine that might result in node failure.
        displayName: Node Maintenance Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - Node-maintenance
        - nmo
        links:
        - name: Node Maintenance Operator
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/node-maintenance-operator
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: beta
        minKubeVersion: 1.23.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/community-operator-pipeline-prod/node-maintenance-operator@sha256:8074aa66432f27565fefdd0e0354c6f1cc0727cbe5a51037a716e0f0c4c1f750
        - quay.io/medik8s/node-maintenance-operator:v0.19.0
        version: 0.19.0
      entries:
      - name: node-maintenance-operator.v0.19.0
        version: 0.19.0
      - name: node-maintenance-operator.v0.18.0
        version: 0.18.0
      - name: node-maintenance-operator.v0.17.0
        version: 0.17.0
      - name: node-maintenance-operator.v0.16.1
        version: 0.16.1
      - name: node-maintenance-operator.v0.16.0
        version: 0.16.0
      - name: node-maintenance-operator.v0.15.0
        version: 0.15.0
      - name: node-maintenance-operator.v0.14.0
        version: 0.14.0
      - name: node-maintenance-operator.v0.13.0
        version: 0.13.0
      - name: node-maintenance-operator.v0.12.1
        version: 0.12.1
      name: stable
    defaultChannel: stable
    packageName: node-maintenance-operator
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Apache Software Foundation
      provider-url: ""
    name: camel-karavan-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: camel-karavan-operator.v3.20.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Karavan",
                "metadata": {
                  "labels": {
                    "app": "karavan"
                  },
                  "name": "karavan"
                },
                "spec": {
                  "instances": 1,
                  "auth": "public",
                  "environment": "dev",
                  "runtimes": "quarkus,spring-boot",
                  "gitPullInterval": "10s"
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          containerImage: ghcr.io/apache/camel-karavan-operator:3.20.1
          repository: https://github.com/apache/camel-karavan
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Karavan
            name: karavans.camel.apache.org
            version: v1
        description: |
          Apache Camel Karavan
          ====================
          Karavan is an Integration Toolkit for Apache Camel, which makes integration easy and fun through the visualization of pipelines,
          integration with runtimes and package, image build and deploy to kubernetes out-of-the-box.

          ## Installation

          1. Install Apache Camel Karavan Operator
          2. Install Tekton operator
          3. Create namespace, ex: `karavan`
          4. Create `Secret` in the namespace, ex:
          ```
          kind: Secret
          apiVersion: v1
          metadata:
            name: karavan
            namespace: karavan
          type: Opaque
          stringData:
            master-password: karavan
            oidc-secret: secret
            oidc-server-url: https://hostname/auth/realms/karavan
            oidc-frontend-url: https://hostname/auth
            git-repository: https://github.com/repository/projects.git
            git-password: password
            git-username: username
            git-branch: main
            image-registry: image-registry.openshift-image-registry.svc:5000
          ```
          5. Create `Karavan` instance in the namespace, ex:
          ```
          apiVersion: camel.apache.org/v1
          kind: Karavan
          metadata:
            name: karavan
            namespace: karavan
          spec:
            instances: 1
            auth: public
            environment: dev
            runtimes: quarkus,spring-boot
            gitPullInterval: 10s
          ```
        displayName: Camel Karavan Operator
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - camel
        - karavan
        - integration
        - microservices
        - low-code
        links:
        - name: Apache Camel Karavan source code repository
          url: https://github.com/apache/camel-karavan
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - ghcr.io/apache/camel-karavan-operator:3.20.1
        - quay.io/openshift-community-operators/camel-karavan-operator@sha256:6dc78ecdf6e1936872626c02d41986d6553c1500002d85692c97e86fa77c129d
        version: 3.20.1
      entries:
      - name: camel-karavan-operator.v3.20.1
        version: 3.20.1
      - name: camel-karavan-operator.v3.20.0
        version: 3.20.0
      - name: camel-karavan-operator.v3.18.5
        version: 3.18.5
      name: alpha
    defaultChannel: alpha
    packageName: camel-karavan-operator
    provider:
      name: The Apache Software Foundation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-efs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-efs-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "efs.services.k8s.aws/v1alpha1",
                "kind": "AccessPoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "efs.services.k8s.aws/v1alpha1",
                "kind": "FileSystem",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "efs.services.k8s.aws/v1alpha1",
                "kind": "MountTarget",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/efs-controller:1.2.0
          createdAt: "2025-11-29T03:26:52Z"
          description: AWS EFS controller is a service controller for managing EFS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AccessPoint represents the state of an AWS efs AccessPoint
              resource.
            displayName: AccessPoint
            kind: AccessPoint
            name: accesspoints.efs.services.k8s.aws
            version: v1alpha1
          - description: FileSystem represents the state of an AWS efs FileSystem
              resource.
            displayName: FileSystem
            kind: FileSystem
            name: filesystems.efs.services.k8s.aws
            version: v1alpha1
          - description: MountTarget represents the state of an AWS efs MountTarget
              resource.
            displayName: MountTarget
            kind: MountTarget
            name: mounttargets.efs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EFS resources in AWS from within your Kubernetes cluster.

          **About Amazon Elastic File System (Amazon EFS)**

          Amazon Elastic File System (Amazon EFS) provides serverless, fully elastic file storage so that you can share file data without provisioning or managing storage capacity and performance. Amazon EFS is built to scale on demand to petabytes without disrupting applications, growing and shrinking automatically as you add and remove files. Because Amazon EFS has a simple web services interface, you can create and configure file systems quickly and easily. The service manages all the file storage infrastructure for you, meaning that you can avoid the complexity of deploying, patching, and maintaining complex file system configurations.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Elastic File System (Amazon
          EFS)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - efs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EFS Developer Resources
          url: https://aws.amazon.com/efs/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: efs maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/efs-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-efs-controller@sha256:6b4bdb765f656e6fef9d1d27889dd0d6ec2a102190a50590e6c4bca65e928808
        version: 1.2.0
      entries:
      - name: ack-efs-controller.v1.2.0
        version: 1.2.0
      - name: ack-efs-controller.v1.1.2
        version: 1.1.2
      - name: ack-efs-controller.v1.1.1
        version: 1.1.1
      - name: ack-efs-controller.v1.1.0
        version: 1.1.0
      - name: ack-efs-controller.v1.0.19
        version: 1.0.19
      - name: ack-efs-controller.v1.0.18
        version: 1.0.18
      - name: ack-efs-controller.v1.0.17
        version: 1.0.17
      - name: ack-efs-controller.v1.0.16
        version: 1.0.16
      - name: ack-efs-controller.v1.0.15
        version: 1.0.15
      - name: ack-efs-controller.v1.0.14
        version: 1.0.14
      - name: ack-efs-controller.v1.0.13
        version: 1.0.13
      - name: ack-efs-controller.v1.0.12
        version: 1.0.12
      - name: ack-efs-controller.v1.0.11
        version: 1.0.11
      - name: ack-efs-controller.v1.0.10
        version: 1.0.10
      - name: ack-efs-controller.v1.0.8
        version: 1.0.8
      - name: ack-efs-controller.v1.0.6
        version: 1.0.6
      - name: ack-efs-controller.v1.0.5
        version: 1.0.5
      - name: ack-efs-controller.v1.0.3
        version: 1.0.3
      - name: ack-efs-controller.v1.0.2
        version: 1.0.2
      - name: ack-efs-controller.v1.0.0
        version: 1.0.0
      - name: ack-efs-controller.v0.0.9
        version: 0.0.9
      - name: ack-efs-controller.v0.0.8
        version: 0.0.8
      - name: ack-efs-controller.v0.0.7
        version: 0.0.7
      - name: ack-efs-controller.v0.0.6
        version: 0.0.6
      - name: ack-efs-controller.v0.0.5
        version: 0.0.5
      - name: ack-efs-controller.v0.0.4
        version: 0.0.4
      name: alpha
    defaultChannel: alpha
    packageName: ack-efs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: The cert-manager maintainers
      provider-url: https://cert-manager.io/
    name: cert-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cert-manager.v1.16.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "example-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "example-clusterissuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "example-certificate"
                },
                "spec": {
                  "dnsNames": [
                    "example.com"
                  ],
                  "issuerRef": {
                    "name": "example-issuer"
                  },
                  "secretName": "example-certificate-tls"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "name": "example-certificaterequest"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "name": "example-order"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "example-challenge"
                },
                "spec": {}
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: quay.io/jetstack/cert-manager-controller:v1.16.5
          createdAt: 2025-05-02T09:11:31
          olm.skipRange: '>=1.16.0 <1.16.5'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/internal-objects: |-
            [
              "challenges.acme.cert-manager.io",
              "orders.acme.cert-manager.io"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/cert-manager/cert-manager
          support: The cert-manager maintainers
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: (Internal) Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: Order is a type to represent an Order with an ACME server
            displayName: (Internal) Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          cert-manager is a Kubernetes add-on to automate the management and issuance of TLS certificates from various issuing sources.
          It will ensure certificates are valid and up to date periodically, and attempt to renew certificates at an appropriate time before expiry.

          cert-manager has the following [built in issuers][]:

          * ACME: sign certificates using Let's Encrypt (or any other [ACME][] compliant signer).
          * Vault: sign certificates using HashiCorp Vault.
          * Venafi: sign certificates using Venafi Cloud or Venafi Trust Protection Platform.
          * SelfSigned: the private key of the certificate will be used to sign the certificate.
          * CA: a private key stored as a Kubernetes Secret will be used to sign the certificate.

          [built in issuers]: https://cert-manager.io/docs/configuration/#supported-issuer-types
          [ACME]: https://datatracker.ietf.org/doc/html/rfc8555

          cert-manager also supports [external issuers][],
          which are out-of-tree components that provide support for other certificate authorities, such as:
          [Google Cloud Certificate Authority](https://github.com/jetstack/google-cas-issuer),
          [AWS Private Certificate Authority](https://github.com/cert-manager/aws-privateca-issuer), and
          [Cloudflare Origin CA](https://github.com/cloudflare/origin-ca-issuer)

          [external issuers]: https://cert-manager.io/docs/configuration/external/

          In order to configure cert-manager to issue certificates, you must first create an Issuer or ClusterIssuer.
          These resources represent a particular signing authority and tell cert-manager how to handle your certificate requests.
          The [Issuer Documentation][] has more detail.

          [configure cert-manager]: https://cert-manager.io/docs/configuration/
          [Issuer Documentation]: https://cert-manager.io/docs/concepts/issuer/

          Once an Issuer has been configured, you can create a Certificate resource,
          which is a definition of a certificate request that is to be honored by an issuer
          and which is to be kept up-to-date.
          This is the usual way that you will interact with cert-manager to request signed certificates.
          The [Certificate Documentation][] has more detail.

          [Certificate Documentation]: https://cert-manager.io/docs/usage/certificate/
        displayName: cert-manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TLS
        - secrets
        - security
        - certificates
        links:
        - name: Documentation
          url: https://cert-manager.io/
        - name: Release Notes
          url: https://cert-manager.io/docs/release-notes
        maintainers:
        - email: cert-manager-maintainers@googlegroups.com
          name: The cert-manager maintainers
        maturity: stable
        minKubeVersion: 1.19.0-0
        provider:
          name: The cert-manager maintainers
          url: https://cert-manager.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cert-manager@sha256:d8037cd7653b257737cec92308042cf71d559c6c2886d07b1879b5e432eeebcd
        - quay.io/jetstack/cert-manager-cainjector:v1.16.5
        - quay.io/jetstack/cert-manager-controller:v1.16.5
        - quay.io/jetstack/cert-manager-webhook:v1.16.5
        version: 1.16.5
      entries:
      - name: cert-manager.v1.16.5
        version: 1.16.5
      - name: cert-manager.v1.16.1
        version: 1.16.1
      - name: cert-manager.v1.16.0-beta.0
        version: 1.16.0-beta.0
      - name: cert-manager.v1.15.2
        version: 1.15.2
      - name: cert-manager.v1.15.0
        version: 1.15.0
      - name: cert-manager.v1.14.2
        version: 1.14.2
      - name: cert-manager.v1.14.2-rc1
        version: 1.14.2-rc1
      - name: cert-manager.v1.14.1-rc1
        version: 1.14.1-rc1
      - name: cert-manager.v1.13.3
        version: 1.13.3
      - name: cert-manager.v1.13.3-rc1
        version: 1.13.3-rc1
      - name: cert-manager.v1.13.1
        version: 1.13.1
      - name: cert-manager.v1.13.1-rc1
        version: 1.13.1-rc1
      - name: cert-manager.v1.12.2
        version: 1.12.2
      - name: cert-manager.v1.12.2-rc1
        version: 1.12.2-rc1
      - name: cert-manager.v1.11.4
        version: 1.11.4
      - name: cert-manager.v1.11.4-rc1
        version: 1.11.4-rc1
      - name: cert-manager.v1.11.3-rc1
        version: 1.11.3-rc1
      - name: cert-manager.v1.11.0
        version: 1.11.0
      - name: cert-manager.v1.11.0-rc1
        version: 1.11.0-rc1
      - name: cert-manager.v1.10.2
        version: 1.10.2
      - name: cert-manager.v1.10.2-rc1
        version: 1.10.2-rc1
      - name: cert-manager.v1.10.1
        version: 1.10.1
      - name: cert-manager.v1.10.1-rc1
        version: 1.10.1-rc1
      - name: cert-manager.v1.10.0
        version: 1.10.0
      - name: cert-manager.v1.10.0-rc1
        version: 1.10.0-rc1
      - name: cert-manager.v1.9.1
        version: 1.9.1
      - name: cert-manager.v1.9.1-rc1
        version: 1.9.1-rc1
      - name: cert-manager.v1.8.2
        version: 1.8.2
      - name: cert-manager.v1.8.2-rc1
        version: 1.8.2-rc1
      - name: cert-manager.v1.8.0
        version: 1.8.0
      - name: cert-manager.v1.8.0-rc1
        version: 1.8.0-rc1
      - name: cert-manager.v1.7.2
        version: 1.7.2
      - name: cert-manager.v1.7.1
        version: 1.7.1
      - name: cert-manager.v1.7.1-rc1
        version: 1.7.1-rc1
      - name: cert-manager.v1.6.2
        version: 1.6.2
      - name: cert-manager.v1.6.2-rc1
        version: 1.6.2-rc1
      name: candidate
    - currentCSV: cert-manager.v1.16.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "example-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "example-clusterissuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "example-certificate"
                },
                "spec": {
                  "dnsNames": [
                    "example.com"
                  ],
                  "issuerRef": {
                    "name": "example-issuer"
                  },
                  "secretName": "example-certificate-tls"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "name": "example-certificaterequest"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "name": "example-order"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "example-challenge"
                },
                "spec": {}
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: quay.io/jetstack/cert-manager-controller:v1.16.5
          createdAt: 2025-05-02T09:11:31
          olm.skipRange: '>=1.16.0 <1.16.5'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/internal-objects: |-
            [
              "challenges.acme.cert-manager.io",
              "orders.acme.cert-manager.io"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/cert-manager/cert-manager
          support: The cert-manager maintainers
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: (Internal) Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: Order is a type to represent an Order with an ACME server
            displayName: (Internal) Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          cert-manager is a Kubernetes add-on to automate the management and issuance of TLS certificates from various issuing sources.
          It will ensure certificates are valid and up to date periodically, and attempt to renew certificates at an appropriate time before expiry.

          cert-manager has the following [built in issuers][]:

          * ACME: sign certificates using Let's Encrypt (or any other [ACME][] compliant signer).
          * Vault: sign certificates using HashiCorp Vault.
          * Venafi: sign certificates using Venafi Cloud or Venafi Trust Protection Platform.
          * SelfSigned: the private key of the certificate will be used to sign the certificate.
          * CA: a private key stored as a Kubernetes Secret will be used to sign the certificate.

          [built in issuers]: https://cert-manager.io/docs/configuration/#supported-issuer-types
          [ACME]: https://datatracker.ietf.org/doc/html/rfc8555

          cert-manager also supports [external issuers][],
          which are out-of-tree components that provide support for other certificate authorities, such as:
          [Google Cloud Certificate Authority](https://github.com/jetstack/google-cas-issuer),
          [AWS Private Certificate Authority](https://github.com/cert-manager/aws-privateca-issuer), and
          [Cloudflare Origin CA](https://github.com/cloudflare/origin-ca-issuer)

          [external issuers]: https://cert-manager.io/docs/configuration/external/

          In order to configure cert-manager to issue certificates, you must first create an Issuer or ClusterIssuer.
          These resources represent a particular signing authority and tell cert-manager how to handle your certificate requests.
          The [Issuer Documentation][] has more detail.

          [configure cert-manager]: https://cert-manager.io/docs/configuration/
          [Issuer Documentation]: https://cert-manager.io/docs/concepts/issuer/

          Once an Issuer has been configured, you can create a Certificate resource,
          which is a definition of a certificate request that is to be honored by an issuer
          and which is to be kept up-to-date.
          This is the usual way that you will interact with cert-manager to request signed certificates.
          The [Certificate Documentation][] has more detail.

          [Certificate Documentation]: https://cert-manager.io/docs/usage/certificate/
        displayName: cert-manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TLS
        - secrets
        - security
        - certificates
        links:
        - name: Documentation
          url: https://cert-manager.io/
        - name: Release Notes
          url: https://cert-manager.io/docs/release-notes
        maintainers:
        - email: cert-manager-maintainers@googlegroups.com
          name: The cert-manager maintainers
        maturity: stable
        minKubeVersion: 1.19.0-0
        provider:
          name: The cert-manager maintainers
          url: https://cert-manager.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cert-manager@sha256:d8037cd7653b257737cec92308042cf71d559c6c2886d07b1879b5e432eeebcd
        - quay.io/jetstack/cert-manager-cainjector:v1.16.5
        - quay.io/jetstack/cert-manager-controller:v1.16.5
        - quay.io/jetstack/cert-manager-webhook:v1.16.5
        version: 1.16.5
      entries:
      - name: cert-manager.v1.16.5
        version: 1.16.5
      - name: cert-manager.v1.16.1
        version: 1.16.1
      - name: cert-manager.v1.15.2
        version: 1.15.2
      - name: cert-manager.v1.15.0
        version: 1.15.0
      - name: cert-manager.v1.14.2
        version: 1.14.2
      - name: cert-manager.v1.13.3
        version: 1.13.3
      - name: cert-manager.v1.13.1
        version: 1.13.1
      - name: cert-manager.v1.13.1-rc1
        version: 1.13.1-rc1
      - name: cert-manager.v1.12.2
        version: 1.12.2
      - name: cert-manager.v1.11.4
        version: 1.11.4
      - name: cert-manager.v1.11.0
        version: 1.11.0
      - name: cert-manager.v1.10.2
        version: 1.10.2
      - name: cert-manager.v1.10.1
        version: 1.10.1
      - name: cert-manager.v1.10.0
        version: 1.10.0
      - name: cert-manager.v1.9.1
        version: 1.9.1
      - name: cert-manager.v1.8.2
        version: 1.8.2
      - name: cert-manager.v1.8.0
        version: 1.8.0
      - name: cert-manager.v1.7.2
        version: 1.7.2
      - name: cert-manager.v1.7.1
        version: 1.7.1
      - name: cert-manager.v1.6.2
        version: 1.6.2
      - name: cert-manager.v1.6.1
        version: 1.6.1
      - name: cert-manager.v1.6.0
        version: 1.6.0
      - name: cert-manager.v1.5.4
        version: 1.5.4
      - name: cert-manager.v1.5.3
        version: 1.5.3
      - name: cert-manager.v1.4.4
        version: 1.4.4
      - name: cert-manager.v1.4.3
        version: 1.4.3
      - name: cert-manager.v1.4.2
        version: 1.4.2
      - name: cert-manager.v1.4.1
        version: 1.4.1
      - name: cert-manager.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: cert-manager
    provider:
      name: The cert-manager maintainers
      url: https://cert-manager.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: project-quay
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: quay-operator.v3.10.0-nightly.20231014
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.10.0-nightly.20231014
          createdAt: 2023-10-14 06:26 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.10.0-nightly.20231014'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.10.0-nightly.20231014
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:add5d14653f57ac1e3254c2d1c70fc9232959f76ee6286fe5cb572696a5a4fd3
        - quay.io/projectquay/quay-operator:3.10.0-nightly.20231014
        version: 3.10.0-nightly.20231014
      entries:
      - name: quay-operator.v3.10.0-nightly.20231014
        version: 3.10.0-nightly.20231014
      - name: quay-operator.v3.10.0-nightly.20231013
        version: 3.10.0-nightly.20231013
      - name: quay-operator.v3.10.0-nightly.20231012
        version: 3.10.0-nightly.20231012
      - name: quay-operator.v3.10.0-nightly.20231011
        version: 3.10.0-nightly.20231011
      - name: quay-operator.v3.10.0-nightly.20231010
        version: 3.10.0-nightly.20231010
      - name: quay-operator.v3.10.0-nightly.20231009
        version: 3.10.0-nightly.20231009
      - name: quay-operator.v3.10.0-nightly.20231008
        version: 3.10.0-nightly.20231008
      - name: quay-operator.v3.10.0-nightly.20231007
        version: 3.10.0-nightly.20231007
      - name: quay-operator.v3.10.0-nightly.20231006
        version: 3.10.0-nightly.20231006
      - name: quay-operator.v3.10.0-nightly.20231005
        version: 3.10.0-nightly.20231005
      - name: quay-operator.v3.10.0-nightly.20231002
        version: 3.10.0-nightly.20231002
      - name: quay-operator.v3.10.0-nightly.20230930
        version: 3.10.0-nightly.20230930
      - name: quay-operator.v3.10.0-nightly.20230929
        version: 3.10.0-nightly.20230929
      - name: quay-operator.v3.10.0-nightly.20230928
        version: 3.10.0-nightly.20230928
      - name: quay-operator.v3.10.0-nightly.20230926
        version: 3.10.0-nightly.20230926
      - name: quay-operator.v3.10.0-nightly.20230925
        version: 3.10.0-nightly.20230925
      - name: quay-operator.v3.10.0-nightly.20230923
        version: 3.10.0-nightly.20230923
      - name: quay-operator.v3.10.0-nightly.20230922
        version: 3.10.0-nightly.20230922
      - name: quay-operator.v3.10.0-nightly.20230921
        version: 3.10.0-nightly.20230921
      - name: quay-operator.v3.10.0-nightly.20230920
        version: 3.10.0-nightly.20230920
      - name: quay-operator.v3.10.0-nightly.20230919
        version: 3.10.0-nightly.20230919
      - name: quay-operator.v3.10.0-nightly.20230918
        version: 3.10.0-nightly.20230918
      - name: quay-operator.v3.10.0-nightly.20230917
        version: 3.10.0-nightly.20230917
      - name: quay-operator.v3.10.0-nightly.20230916
        version: 3.10.0-nightly.20230916
      - name: quay-operator.v3.10.0-nightly.20230915
        version: 3.10.0-nightly.20230915
      - name: quay-operator.v3.10.0-nightly.20230914
        version: 3.10.0-nightly.20230914
      - name: quay-operator.v3.10.0-nightly.20230913
        version: 3.10.0-nightly.20230913
      name: candidate-3.10
    - currentCSV: quay-operator.v3.9.0-nightly.20230812
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.9.0-nightly.20230812
          createdAt: 2023-08-12 06:06 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.9.0-nightly.20230812'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.9.0-nightly.20230812
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:7fc4d97b5ee63085672fc9a562ebdad3d4c00d1b555e06679d1dd9ac945f1bb9
        - quay.io/projectquay/quay-operator:3.9.0-nightly.20230812
        version: 3.9.0-nightly.20230812
      entries:
      - name: quay-operator.v3.9.0-nightly.20230812
        version: 3.9.0-nightly.20230812
      - name: quay-operator.v3.9.0-nightly.20230724
        version: 3.9.0-nightly.20230724
      - name: quay-operator.v3.9.0-nightly.20230723
        version: 3.9.0-nightly.20230723
      - name: quay-operator.v3.9.0-nightly.20230722
        version: 3.9.0-nightly.20230722
      - name: quay-operator.v3.9.0-nightly.20230721
        version: 3.9.0-nightly.20230721
      - name: quay-operator.v3.9.0-nightly.20230720
        version: 3.9.0-nightly.20230720
      - name: quay-operator.v3.9.0-nightly.20230717
        version: 3.9.0-nightly.20230717
      - name: quay-operator.v3.9.0-nightly.20230716
        version: 3.9.0-nightly.20230716
      - name: quay-operator.v3.9.0-nightly.20230715
        version: 3.9.0-nightly.20230715
      - name: quay-operator.v3.9.0-nightly.20230714
        version: 3.9.0-nightly.20230714
      - name: quay-operator.v3.9.0-nightly.20230712
        version: 3.9.0-nightly.20230712
      - name: quay-operator.v3.9.0-nightly.20230711
        version: 3.9.0-nightly.20230711
      name: candidate-3.9
    - currentCSV: quay-operator.v3.7.0-rc.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.7.0-rc.4
          createdAt: 2022-05-17 14:05 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.3.x <3.7.0-rc.4'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.7.0-rc.4
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:05e12cc4caaebb7f185f651f8ca876c442c02d79794e561b743beba0d189fa04
        - quay.io/projectquay/quay-operator:3.7.0-rc.4
        version: 3.7.0-rc.4
      entries:
      - name: quay-operator.v3.7.0-rc.4
        version: 3.7.0-rc.4
      - name: quay-operator.v3.7.0-rc.3
        version: 3.7.0-rc.3
      - name: quay-operator.v3.7.0-rc.2
        version: 3.7.0-rc.2
      - name: quay-operator.v3.7.0-rc.1
        version: 3.7.0-rc.1
      name: preview-3.7
    - currentCSV: quay-operator.v3.8.0-rc.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.8.0-rc.7
          createdAt: 2022-11-29 15:11 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.8.0-rc.7'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.8.0-rc.7
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.8.0-rc.7
        - quay.io/openshift-community-operators/project-quay@sha256:84796005b6e71efa5d783c55b1f72bcc3762944bf32740cb75498bf8b908bffb
        version: 3.8.0-rc.7
      entries:
      - name: quay-operator.v3.8.0-rc.7
        version: 3.8.0-rc.7
      - name: quay-operator.v3.8.0-rc.6
        version: 3.8.0-rc.6
      - name: quay-operator.v3.8.0-rc.5
        version: 3.8.0-rc.5
      - name: quay-operator.v3.8.0-rc.4
        version: 3.8.0-rc.4
      - name: quay-operator.v3.8.0-rc.3
        version: 3.8.0-rc.3
      - name: quay-operator.v3.8.0-rc.2
        version: 3.8.0-rc.2
      - name: quay-operator.v3.8.0-rc.1
        version: 3.8.0-rc.1
      name: preview-3.8
    - currentCSV: quay-operator.v3.10.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.10.17
          createdAt: "2025-12-16T16:07:34Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.10.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.10.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:df1ae4cc8aa9e3c53b7e0b223aab2a9eda1130372348721444f507c22de51e66
        - quay.io/projectquay/quay-operator:3.10.17
        version: 3.10.17
      entries:
      - name: quay-operator.v3.10.17
        version: 3.10.17
      - name: quay-operator.v3.10.16
        version: 3.10.16
      - name: quay-operator.v3.10.15
        version: 3.10.15
      - name: quay-operator.v3.10.14
        version: 3.10.14
      - name: quay-operator.v3.10.13
        version: 3.10.13
      - name: quay-operator.v3.10.12
        version: 3.10.12
      - name: quay-operator.v3.10.11
        version: 3.10.11
      - name: quay-operator.v3.10.10
        version: 3.10.10
      - name: quay-operator.v3.10.9
        version: 3.10.9
      - name: quay-operator.v3.10.8
        version: 3.10.8
      - name: quay-operator.v3.10.7
        version: 3.10.7
      - name: quay-operator.v3.10.6
        version: 3.10.6
      - name: quay-operator.v3.10.5
        version: 3.10.5
      - name: quay-operator.v3.10.4
        version: 3.10.4
      - name: quay-operator.v3.10.3
        version: 3.10.3
      - name: quay-operator.v3.10.2
        version: 3.10.2
      - name: quay-operator.v3.10.1
        version: 3.10.1
      - name: quay-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: quay-operator.v3.11.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.11.13
          createdAt: "2025-09-02T06:02:15Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.11.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.11.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:9d505bf561650eb9785811ba50c920480d85679eac6a611a1c5794544e175934
        - quay.io/projectquay/quay-operator:3.11.13
        version: 3.11.13
      entries:
      - name: quay-operator.v3.11.13
        version: 3.11.13
      - name: quay-operator.v3.11.12
        version: 3.11.12
      - name: quay-operator.v3.11.11
        version: 3.11.11
      - name: quay-operator.v3.11.10
        version: 3.11.10
      - name: quay-operator.v3.11.9
        version: 3.11.9
      - name: quay-operator.v3.11.8
        version: 3.11.8
      - name: quay-operator.v3.11.7
        version: 3.11.7
      - name: quay-operator.v3.11.6
        version: 3.11.6
      - name: quay-operator.v3.11.5
        version: 3.11.5
      - name: quay-operator.v3.11.4
        version: 3.11.4
      - name: quay-operator.v3.11.3
        version: 3.11.3
      - name: quay-operator.v3.11.2
        version: 3.11.2
      - name: quay-operator.v3.11.1
        version: 3.11.1
      - name: quay-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: quay-operator.v3.12.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.12.13
          createdAt: "2025-12-17T02:20:28Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.12.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.12.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.12.13
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:a2d7545e0585785e90f3d5d1b7e2f6f2344b2e12c99014495f99fbc284c20baf
        version: 3.12.13
      entries:
      - name: quay-operator.v3.12.13
        version: 3.12.13
      - name: quay-operator.v3.12.12
        version: 3.12.12
      - name: quay-operator.v3.12.11
        version: 3.12.11
      - name: quay-operator.v3.12.10
        version: 3.12.10
      - name: quay-operator.v3.12.9
        version: 3.12.9
      - name: quay-operator.v3.12.8
        version: 3.12.8
      - name: quay-operator.v3.12.7
        version: 3.12.7
      - name: quay-operator.v3.12.6
        version: 3.12.6
      - name: quay-operator.v3.12.5
        version: 3.12.5
      - name: quay-operator.v3.12.4
        version: 3.12.4
      - name: quay-operator.v3.12.3
        version: 3.12.3
      - name: quay-operator.v3.12.2
        version: 3.12.2
      - name: quay-operator.v3.12.1
        version: 3.12.1
      - name: quay-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: quay-operator.v3.13.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.13.10
          createdAt: "2025-12-17T02:24:00Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.13.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.13.10
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.13.10
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:f3ffc40ee13bc38ccbe8b7cdeed93c6d9eee4b09ac6db237764c98e6abb4f99f
        version: 3.13.10
      entries:
      - name: quay-operator.v3.13.10
        version: 3.13.10
      - name: quay-operator.v3.13.9
        version: 3.13.9
      - name: quay-operator.v3.13.8
        version: 3.13.8
      - name: quay-operator.v3.13.7
        version: 3.13.7
      - name: quay-operator.v3.13.6
        version: 3.13.6
      - name: quay-operator.v3.13.5
        version: 3.13.5
      - name: quay-operator.v3.13.4
        version: 3.13.4
      - name: quay-operator.v3.13.3
        version: 3.13.3
      - name: quay-operator.v3.13.2
        version: 3.13.2
      - name: quay-operator.v3.13.1
        version: 3.13.1
      - name: quay-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: quay-operator.v3.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.14.5
          createdAt: "2025-09-22T14:19:49Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.14.5'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.14.5
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:023b9cc1e4ec2542b8d68b636b21a2e8c4eb143424581c62d16598fddb47da6a
        - quay.io/projectquay/quay-operator:3.14.5
        version: 3.14.5
      entries:
      - name: quay-operator.v3.14.5
        version: 3.14.5
      - name: quay-operator.v3.14.4
        version: 3.14.4
      - name: quay-operator.v3.14.3
        version: 3.14.3
      - name: quay-operator.v3.14.2
        version: 3.14.2
      - name: quay-operator.v3.14.1
        version: 3.14.1
      - name: quay-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: quay-operator.v3.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.15.2
          createdAt: "2025-09-22T13:44:32Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.15.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.15.2
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.15.2
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:3843fd48c57be102576db93e8483a30f8efe8cd46b5e09c704ac0bc5f18553a3
        version: 3.15.2
      entries:
      - name: quay-operator.v3.15.2
        version: 3.15.2
      - name: quay-operator.v3.15.1
        version: 3.15.1
      - name: quay-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: quay-operator.v3.6.2
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"quay.redhat.com/v1\",\n    \"kind\":
            \"QuayRegistry\",\n    \"metadata\": {\n      \"name\": \"example-registry\"\n
            \   },\n    \"spec\": {\n      \"components\": [\n        {\"kind\": \"clair\",
            \"managed\": true},\n        {\"kind\": \"postgres\", \"managed\": true},\n
            \       {\"kind\": \"objectstorage\", \"managed\": true},\n        {\"kind\":
            \"redis\", \"managed\": true},\n        {\"kind\": \"horizontalpodautoscaler\",
            \"managed\": true},\n        {\"kind\": \"route\", \"managed\": true},\n
            \       {\"kind\": \"mirror\", \"managed\": true},\n        {\"kind\":
            \"monitoring\", \"managed\": true},\n        {\"kind\": \"tls\", \"managed\":
            true}\n      ]\n    }\n  }, \n  {\n    \"apiVersion\": \"redhatcop.redhat.io/v1alpha1\",\n
            \   \"kind\": \"QuayEcosystem\",\n    \"metadata\": {\n      \"name\":
            \"example-quayecosystem\"\n    },\n    \"spec\": {}\n  }\n]"
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:v3.6.2
          createdAt: 2021-04-23 10:04 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.5.x <3.6.2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: v3.6.2
          repository: https://github.com/quay/quay-operator
          support: Quay Team
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Project Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        - quay
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:v3.6.2
        - quay.io/openshift-community-operators/project-quay@sha256:55bb4133abc945ce7b75e6c01c6beaf63c19c129fc8fbfb48f1b53b8e28aae97
        version: 3.6.2
      entries:
      - name: quay-operator.v3.6.2
        version: 3.6.2
      name: stable-3.6
    - currentCSV: quay-operator.v3.7.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.7.11
          createdAt: 2023-02-22 10:02 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.3.x <3.7.11'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.7.11
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:43b959fcdcf107b70e4224d80b63d1c123560c3af055109bbcc7d68476546584
        - quay.io/projectquay/quay-operator:3.7.11
        version: 3.7.11
      entries:
      - name: quay-operator.v3.7.11
        version: 3.7.11
      - name: quay-operator.v3.7.10
        version: 3.7.10
      - name: quay-operator.v3.7.9
        version: 3.7.9
      - name: quay-operator.v3.7.8
        version: 3.7.8
      - name: quay-operator.v3.7.7
        version: 3.7.7
      - name: quay-operator.v3.7.6
        version: 3.7.6
      - name: quay-operator.v3.7.5
        version: 3.7.5
      - name: quay-operator.v3.7.4
        version: 3.7.4
      - name: quay-operator.v3.7.3
        version: 3.7.3
      - name: quay-operator.v3.7.2
        version: 3.7.2
      - name: quay-operator.v3.7.1
        version: 3.7.1
      - name: quay-operator.v3.7.0
        version: 3.7.0
      name: stable-3.7
    - currentCSV: quay-operator.v3.8.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.8.13
          createdAt: 2023-10-17 16:13 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.8.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.8.13
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.8.13
        - quay.io/openshift-community-operators/project-quay@sha256:2845843f32b895dee0242e31380b44625e3f8381caee7ecb3258648311c302f7
        version: 3.8.13
      entries:
      - name: quay-operator.v3.8.13
        version: 3.8.13
      - name: quay-operator.v3.8.12
        version: 3.8.12
      - name: quay-operator.v3.8.11
        version: 3.8.11
      - name: quay-operator.v3.8.10
        version: 3.8.10
      - name: quay-operator.v3.8.8
        version: 3.8.8
      - name: quay-operator.v3.8.7
        version: 3.8.7
      - name: quay-operator.v3.8.6
        version: 3.8.6
      - name: quay-operator.v3.8.5
        version: 3.8.5
      - name: quay-operator.v3.8.4
        version: 3.8.4
      - name: quay-operator.v3.8.3
        version: 3.8.3
      - name: quay-operator.v3.8.2
        version: 3.8.2
      - name: quay-operator.v3.8.1
        version: 3.8.1
      - name: quay-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: quay-operator.v3.9.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.9.17
          createdAt: "2025-12-16T16:36:17Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.9.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:3d5f35b0766ce91a1aceb0ccad72adc22c4d1707948b40e4ceaabae921c5486a
        - quay.io/projectquay/quay-operator:3.9.17
        version: 3.9.17
      entries:
      - name: quay-operator.v3.9.17
        version: 3.9.17
      - name: quay-operator.v3.9.16
        version: 3.9.16
      - name: quay-operator.v3.9.15
        version: 3.9.15
      - name: quay-operator.v3.9.14
        version: 3.9.14
      - name: quay-operator.v3.9.13
        version: 3.9.13
      - name: quay-operator.v3.9.12
        version: 3.9.12
      - name: quay-operator.v3.9.11
        version: 3.9.11
      - name: quay-operator.v3.9.10
        version: 3.9.10
      - name: quay-operator.v3.9.9
        version: 3.9.9
      - name: quay-operator.v3.9.6
        version: 3.9.6
      - name: quay-operator.v3.9.5
        version: 3.9.5
      - name: quay-operator.v3.9.4
        version: 3.9.4
      - name: quay-operator.v3.9.3
        version: 3.9.3
      - name: quay-operator.v3.9.2
        version: 3.9.2
      - name: quay-operator.v3.9.1
        version: 3.9.1
      - name: quay-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.15
    packageName: project-quay
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Weights & Biases
      provider-url: https://wandb.ai
    name: wandb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: wandb-operator.v1.21.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.wandb.com/v1",
                "kind": "WeightsAndBiases",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "wandb-operator",
                    "app.kubernetes.io/instance": "weightsandbiases-sample",
                    "app.kubernetes.io/managed-by": "olm",
                    "app.kubernetes.io/name": "weightsandbiases",
                    "app.kubernetes.io/part-of": "wandb-operator"
                  },
                  "name": "weightsandbiases-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning,Developer Tools
          certified: "false"
          containerImage: quay.io/wandb_tools/wandb-k8s-operator:1.21.2
          createdAt: "2024-10-10T14:46:54Z"
          description: Operator for Weights and Biases, enabling seamless integration
            and management of machine learning experiments in Kubernetes environments.
          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"
          operatorframework.io/suggested-namespace: wandb-system
          repository: https://github.com/wandb/operator
          support: WeightsAndBiases
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WeightsAndBiases is a custom resource for managing W&B configurations.
            displayName: Weights And Biases
            kind: WeightsAndBiases
            name: weightsandbiases.apps.wandb.com
            version: v1
        description: |-
          The Weights and Biases Operator simplifies the management of machine learning experiments, tracking, and infrastructure. It integrates with Kubernetes to deploy and manage Weights and Biases instances.
          Features:
          - Experiment Tracking
          - Hyperparameter Tuning
          - Model Management
          - Integration with popular ML frameworks
        displayName: Weights & Biases Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - machine learning
        - experiment tracking
        - ML infrastructure
        - weights and biases
        links:
        - name: Weights & Biases Documentation
          url: https://docs.wandb.ai/
        maintainers:
        - email: abhinav.garg@domain.com
          name: Abhinav Garg
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Weights & Biases
          url: https://wandb.ai
        relatedImages:
        - quay.io/wandb_tools/wandb-k8s-operator:1.21.2
        - quay.io/community-operator-pipeline-prod/wandb-operator@sha256:e6b970a12d5ea0d5531dd88c1707c53c0a490de0145ee869bdfc1dc1218c7b29
        version: 1.21.2
      entries:
      - name: wandb-operator.v1.21.2
        version: 1.21.2
      - name: wandb-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: wandb-operator
    provider:
      name: Weights & Biases
      url: https://wandb.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ec2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ec2-controller.v1.9.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "DHCPOptions",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "ElasticIPAddress",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "Instance",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "InternetGateway",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "NATGateway",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "RouteTable",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "SecurityGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "Subnet",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "TransitGateway",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "VPC",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "VPCEndpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ec2-controller:1.9.1
          createdAt: "2026-01-06T21:44:24Z"
          description: AWS EC2 controller is a service controller for managing EC2
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CapacityReservation represents the state of an AWS ec2 CapacityReservation
              resource.
            displayName: CapacityReservation
            kind: CapacityReservation
            name: capacityreservations.ec2.services.k8s.aws
            version: v1alpha1
          - description: DHCPOptions represents the state of an AWS ec2 DHCPOptions
              resource.
            displayName: DHCPOptions
            kind: DHCPOptions
            name: dhcpoptions.ec2.services.k8s.aws
            version: v1alpha1
          - description: ElasticIPAddress represents the state of an AWS ec2 ElasticIPAddress
              resource.
            displayName: ElasticIPAddress
            kind: ElasticIPAddress
            name: elasticipaddresses.ec2.services.k8s.aws
            version: v1alpha1
          - description: FlowLog represents the state of an AWS ec2 FlowLog resource.
            displayName: FlowLog
            kind: FlowLog
            name: flowlogs.ec2.services.k8s.aws
            version: v1alpha1
          - description: Instance represents the state of an AWS ec2 Instance resource.
            displayName: Instance
            kind: Instance
            name: instances.ec2.services.k8s.aws
            version: v1alpha1
          - description: InternetGateway represents the state of an AWS ec2 InternetGateway
              resource.
            displayName: InternetGateway
            kind: InternetGateway
            name: internetgateways.ec2.services.k8s.aws
            version: v1alpha1
          - description: LaunchTemplate represents the state of an AWS ec2 LaunchTemplate
              resource.
            displayName: LaunchTemplate
            kind: LaunchTemplate
            name: launchtemplates.ec2.services.k8s.aws
            version: v1alpha1
          - description: ManagedPrefixList represents the state of an AWS ec2 ManagedPrefixList
              resource.
            displayName: ManagedPrefixList
            kind: ManagedPrefixList
            name: managedprefixlists.ec2.services.k8s.aws
            version: v1alpha1
          - description: NATGateway represents the state of an AWS ec2 NATGateway
              resource.
            displayName: NATGateway
            kind: NATGateway
            name: natgateways.ec2.services.k8s.aws
            version: v1alpha1
          - description: NetworkACL represents the state of an AWS ec2 NetworkACL
              resource.
            displayName: NetworkACL
            kind: NetworkACL
            name: networkacls.ec2.services.k8s.aws
            version: v1alpha1
          - description: RouteTable represents the state of an AWS ec2 RouteTable
              resource.
            displayName: RouteTable
            kind: RouteTable
            name: routetables.ec2.services.k8s.aws
            version: v1alpha1
          - description: SecurityGroup represents the state of an AWS ec2 SecurityGroup
              resource.
            displayName: SecurityGroup
            kind: SecurityGroup
            name: securitygroups.ec2.services.k8s.aws
            version: v1alpha1
          - description: Subnet represents the state of an AWS ec2 Subnet resource.
            displayName: Subnet
            kind: Subnet
            name: subnets.ec2.services.k8s.aws
            version: v1alpha1
          - description: TransitGateway represents the state of an AWS ec2 TransitGateway
              resource.
            displayName: TransitGateway
            kind: TransitGateway
            name: transitgateways.ec2.services.k8s.aws
            version: v1alpha1
          - description: TransitGatewayVPCAttachment represents the state of an AWS
              ec2 TransitGatewayVPCAttachment resource.
            displayName: TransitGatewayVPCAttachment
            kind: TransitGatewayVPCAttachment
            name: transitgatewayvpcattachments.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPCEndpoint represents the state of an AWS ec2 VPCEndpoint
              resource.
            displayName: VPCEndpoint
            kind: VPCEndpoint
            name: vpcendpoints.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPCEndpointServiceConfiguration represents the state of an
              AWS ec2 VPCEndpointServiceConfiguration resource.
            displayName: VPCEndpointServiceConfiguration
            kind: VPCEndpointServiceConfiguration
            name: vpcendpointserviceconfigurations.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPCPeeringConnection represents the state of an AWS ec2 VPCPeeringConnection
              resource.
            displayName: VPCPeeringConnection
            kind: VPCPeeringConnection
            name: vpcpeeringconnections.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPC represents the state of an AWS ec2 VPC resource.
            displayName: VPC
            kind: VPC
            name: vpcs.ec2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Elastic Compute Cloud (EC2) resources in AWS from within your Kubernetes cluster.

          **About Amazon EC2**

          Amazon Elastic Compute Cloud (Amazon EC2) provides scalable computing capacity in the Amazon Web Services (AWS) Cloud. Using Amazon EC2 eliminates your need to invest in hardware up front, so you can develop and deploy applications faster. You can use Amazon EC2 to launch as many or as few virtual servers as you need, configure security and networking, and manage storage. Amazon EC2 enables you to scale up or down to handle changes in requirements or spikes in popularity, reducing your need to forecast traffic.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EC2
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ec2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EC2 Developer Resources
          url: https://aws.amazon.com/ec2/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ec2 maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ec2-controller:1.9.1
        - quay.io/community-operator-pipeline-prod/ack-ec2-controller@sha256:84bb2fdba33925ac6845422483bdbeb38de6070ac190e9cd15be196dcfa1e770
        version: 1.9.1
      entries:
      - name: ack-ec2-controller.v1.9.1
        version: 1.9.1
      - name: ack-ec2-controller.v1.9.0
        version: 1.9.0
      - name: ack-ec2-controller.v1.8.0
        version: 1.8.0
      - name: ack-ec2-controller.v1.7.1
        version: 1.7.1
      - name: ack-ec2-controller.v1.7.0
        version: 1.7.0
      - name: ack-ec2-controller.v1.6.2
        version: 1.6.2
      - name: ack-ec2-controller.v1.6.1
        version: 1.6.1
      - name: ack-ec2-controller.v1.6.0
        version: 1.6.0
      - name: ack-ec2-controller.v1.4.11
        version: 1.4.11
      - name: ack-ec2-controller.v1.4.10
        version: 1.4.10
      - name: ack-ec2-controller.v1.4.9
        version: 1.4.9
      - name: ack-ec2-controller.v1.4.8
        version: 1.4.8
      - name: ack-ec2-controller.v1.4.7
        version: 1.4.7
      - name: ack-ec2-controller.v1.4.6
        version: 1.4.6
      - name: ack-ec2-controller.v1.4.5
        version: 1.4.5
      - name: ack-ec2-controller.v1.4.4
        version: 1.4.4
      - name: ack-ec2-controller.v1.4.2
        version: 1.4.2
      - name: ack-ec2-controller.v1.4.1
        version: 1.4.1
      - name: ack-ec2-controller.v1.4.0
        version: 1.4.0
      - name: ack-ec2-controller.v1.3.7
        version: 1.3.7
      - name: ack-ec2-controller.v1.3.6
        version: 1.3.6
      - name: ack-ec2-controller.v1.3.5
        version: 1.3.5
      - name: ack-ec2-controller.v1.3.4
        version: 1.3.4
      - name: ack-ec2-controller.v1.3.3
        version: 1.3.3
      - name: ack-ec2-controller.v1.3.1
        version: 1.3.1
      - name: ack-ec2-controller.v1.3.0
        version: 1.3.0
      - name: ack-ec2-controller.v1.2.28
        version: 1.2.28
      - name: ack-ec2-controller.v1.2.27
        version: 1.2.27
      - name: ack-ec2-controller.v1.2.26
        version: 1.2.26
      - name: ack-ec2-controller.v1.2.25
        version: 1.2.25
      - name: ack-ec2-controller.v1.2.24
        version: 1.2.24
      - name: ack-ec2-controller.v1.2.23
        version: 1.2.23
      - name: ack-ec2-controller.v1.2.22
        version: 1.2.22
      - name: ack-ec2-controller.v1.2.21
        version: 1.2.21
      - name: ack-ec2-controller.v1.2.20
        version: 1.2.20
      - name: ack-ec2-controller.v1.2.17
        version: 1.2.17
      - name: ack-ec2-controller.v1.2.16
        version: 1.2.16
      - name: ack-ec2-controller.v1.2.15
        version: 1.2.15
      - name: ack-ec2-controller.v1.2.14
        version: 1.2.14
      - name: ack-ec2-controller.v1.2.13
        version: 1.2.13
      - name: ack-ec2-controller.v1.2.12
        version: 1.2.12
      - name: ack-ec2-controller.v1.2.11
        version: 1.2.11
      - name: ack-ec2-controller.v1.2.10
        version: 1.2.10
      - name: ack-ec2-controller.v1.2.9
        version: 1.2.9
      - name: ack-ec2-controller.v1.2.8
        version: 1.2.8
      - name: ack-ec2-controller.v1.2.7
        version: 1.2.7
      - name: ack-ec2-controller.v1.2.6
        version: 1.2.6
      - name: ack-ec2-controller.v1.2.4
        version: 1.2.4
      - name: ack-ec2-controller.v1.2.1
        version: 1.2.1
      - name: ack-ec2-controller.v1.2.0
        version: 1.2.0
      - name: ack-ec2-controller.v1.1.2
        version: 1.1.2
      - name: ack-ec2-controller.v1.1.1
        version: 1.1.1
      - name: ack-ec2-controller.v1.1.0
        version: 1.1.0
      - name: ack-ec2-controller.v1.0.7
        version: 1.0.7
      - name: ack-ec2-controller.v1.0.6
        version: 1.0.6
      - name: ack-ec2-controller.v1.0.4
        version: 1.0.4
      - name: ack-ec2-controller.v1.0.3
        version: 1.0.3
      - name: ack-ec2-controller.v1.0.2
        version: 1.0.2
      - name: ack-ec2-controller.v1.0.1
        version: 1.0.1
      - name: ack-ec2-controller.v1.0.0
        version: 1.0.0
      - name: ack-ec2-controller.v0.1.1
        version: 0.1.1
      - name: ack-ec2-controller.v0.1.0
        version: 0.1.0
      - name: ack-ec2-controller.v0.0.21
        version: 0.0.21
      - name: ack-ec2-controller.v0.0.20
        version: 0.0.20
      - name: ack-ec2-controller.v0.0.19
        version: 0.0.19
      - name: ack-ec2-controller.v0.0.18
        version: 0.0.18
      - name: ack-ec2-controller.v0.0.17
        version: 0.0.17
      - name: ack-ec2-controller.v0.0.16
        version: 0.0.16
      - name: ack-ec2-controller.v0.0.15
        version: 0.0.15
      - name: ack-ec2-controller.v0.0.14
        version: 0.0.14
      - name: ack-ec2-controller.v0.0.13
        version: 0.0.13
      - name: ack-ec2-controller.v0.0.12
        version: 0.0.12
      - name: ack-ec2-controller.v0.0.11
        version: 0.0.11
      - name: ack-ec2-controller.v0.0.10
        version: 0.0.10
      - name: ack-ec2-controller.v0.0.9
        version: 0.0.9
      - name: ack-ec2-controller.v0.0.8
        version: 0.0.8
      - name: ack-ec2-controller.v0.0.7
        version: 0.0.7
      - name: ack-ec2-controller.v0.0.6
        version: 0.0.6
      - name: ack-ec2-controller.v0.0.5
        version: 0.0.5
      - name: ack-ec2-controller.v0.0.4
        version: 0.0.4
      - name: ack-ec2-controller.v0.0.3
        version: 0.0.3
      - name: ack-ec2-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-ec2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: sailoperator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sailoperator.v1.29.0-nightly-2026-01-05
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.28.1"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:9fea08273c18001666e4d33ae4b951c08bdb6eea24340fab55d0d2ca3613ffcb
          createdAt: "2026-01-05T03:50:08Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.28-latest
          - v1.28.1
          - v1.28.0
          - v1.27-latest
          - v1.27.4
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.7
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0
          - master
          - v1.29-alpha.33f91585

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - quay.io/community-operator-pipeline-prod/sailoperator:1.29.0-nightly-2026-01-05
        - gcr.io/istio-release/pilot@sha256:5109ab9a1e7f1cdc60430e8823957655710dcc4977479b67de3d43bbab18a3f6
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/proxyv2@sha256:8ff7b0d50cea9aa80512b6b9a75afc9021de6dc4d4151ce7946c5e04812a3de2
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/proxyv2@sha256:c68e79b821ba47c63af844422114af6d5cc01cc1fd8f1b0184c42be330afc1d2
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/pilot@sha256:dcc1431b635a2151f891ba17e8911d56f1aa1e4acaff0c543d0036b849cb0369
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/install-cni@sha256:ba4c1ad3c67be6681883162c8543e15b2ea78a79658665a450bce0f475674de5
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/pilot@sha256:43e24609869d90ea7c12c878474e5905b02676e7dd827903be42c15599cde1b7
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/ztunnel@sha256:f562d8dd28e803061ee63853e7e1da07188ec24e734ebf0d95ec2126b41ac392
        - gcr.io/istio-release/install-cni@sha256:a84971fd29ce54181dc4ceee6dbde8032bebd5a72301319a0468e5bc39902080
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/proxyv2@sha256:f95a5e91204afbfad9d33d6f1bc0556a96bf997b18edede6c9e6b86eb07543a1
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/ztunnel@sha256:352baf7040b916b2d3de03388f14a8da0da5fa5e02a2589218261119b39a4594
        - gcr.io/istio-release/install-cni@sha256:81295e43028ab50028f173a7ed2bf3d435201539b6b70f5938079771fe9e4561
        - gcr.io/istio-testing/proxyv2@sha256:0f0666237e310e2049aa328eec13dd40b062689295df2329b0770edd82708946
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/pilot@sha256:d0930e5cf028deeb636364595b4d0a42e05d5745850013bae297b32a9315ab18
        - gcr.io/istio-release/proxyv2@sha256:4c830a386c93683bdf88249e089bc971361c419365663dc35aa1d5ba6be73c19
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - quay.io/sail-dev/sail-operator@sha256:9fea08273c18001666e4d33ae4b951c08bdb6eea24340fab55d0d2ca3613ffcb
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/ztunnel@sha256:5991f9a9202c9a1a59c41efb7e8b89e7a9cfc0dc39f71afe91cdd78c6ecf697c
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/install-cni@sha256:8dda5692bbed6069d837acc084d5b142c325bba2491622a04ec42198c44562b4
        - gcr.io/istio-testing/pilot@sha256:4cce73203bf2a679876f8c3edcf688a59fd25b4fd55f7da72de8850d105ed4fa
        - gcr.io/istio-testing/ztunnel@sha256:79ad54a5b95cabc98ca973d71f5acfa54c850e3f56d2407b5b0436b174e85ea1
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-testing/install-cni@sha256:595ea71bc523b724db6e0a3447b37092b571590d433e508a8ab0d05d096fd48b
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/ztunnel@sha256:836e3f8b34527139523effc176cc138b93e69b4506ccb3dca75460e0ccb96138
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        version: 1.29.0-nightly-2026-01-05
      entries:
      - name: sailoperator.v1.29.0-nightly-2026-01-05
        version: 1.29.0-nightly-2026-01-05
      - name: sailoperator.v1.29.0-nightly-2026-01-04
        version: 1.29.0-nightly-2026-01-04
      - name: sailoperator.v1.29.0-nightly-2026-01-03
        version: 1.29.0-nightly-2026-01-03
      - name: sailoperator.v1.29.0-nightly-2026-01-02
        version: 1.29.0-nightly-2026-01-02
      - name: sailoperator.v1.29.0-nightly-2026-01-01
        version: 1.29.0-nightly-2026-01-01
      - name: sailoperator.v1.29.0-nightly-2025-12-31
        version: 1.29.0-nightly-2025-12-31
      - name: sailoperator.v1.29.0-nightly-2025-12-30
        version: 1.29.0-nightly-2025-12-30
      - name: sailoperator.v1.29.0-nightly-2025-12-29
        version: 1.29.0-nightly-2025-12-29
      - name: sailoperator.v1.29.0-nightly-2025-12-28
        version: 1.29.0-nightly-2025-12-28
      - name: sailoperator.v1.29.0-nightly-2025-12-27
        version: 1.29.0-nightly-2025-12-27
      - name: sailoperator.v1.29.0-nightly-2025-12-26
        version: 1.29.0-nightly-2025-12-26
      - name: sailoperator.v1.29.0-nightly-2025-12-25
        version: 1.29.0-nightly-2025-12-25
      - name: sailoperator.v1.29.0-nightly-2025-12-24
        version: 1.29.0-nightly-2025-12-24
      name: 1.29-nightly
    - currentCSV: sailoperator.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.23.0"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.23.0"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/maistra-dev/sail-operator:0.1-latest
          createdAt: "2024-08-20T11:54:30Z"
          description: Experimental operator for installing Istio service mesh
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1alpha1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1alpha1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1alpha1
          - description: |-
              RemoteIstio represents a remote Istio Service Mesh deployment consisting of one or more
              remote control plane instances (represented by one or more IstioRevision objects).
            displayName: Remote Istio
            kind: RemoteIstio
            name: remoteistios.sailoperator.io
            version: v1alpha1
        description: |-
          This is an experimental operator for installing Istio service mesh.

          This version of the operator supports the following Istio versions:

          - v1.23.0
          - v1.22.4

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - docker.io/istio/pilot:1.23.0
        - docker.io/istio/install-cni:1.23.0
        - docker.io/istio/ztunnel:1.23.0
        - quay.io/community-operator-pipeline-prod/sailoperator@sha256:a5698068f57fb27c6e4b8c385878c4651967ae5f17412c6ea6cf8bd34bfe76a1
        - docker.io/istio/install-cni:1.22.4
        - docker.io/istio/pilot:1.22.4
        - docker.io/istio/proxyv2:1.23.0
        - docker.io/istio/ztunnel:1.22.4
        - quay.io/maistra-dev/sail-operator:0.1-latest
        - docker.io/istio/proxyv2:1.22.4
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.16.0
        version: 0.1.0
      entries:
      - name: sailoperator.v0.1.0
        version: 0.1.0
      - name: sailoperator.v0.1.0-rc.1
        version: 0.1.0-rc.1
      name: candidates
    - currentCSV: sailoperator.v1.28.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
          createdAt: "2025-12-10T15:50:55Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.28-latest
          - v1.28.1
          - v1.28.0
          - v1.27-latest
          - v1.27.4
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.7
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - gcr.io/istio-release/proxyv2@sha256:8ff7b0d50cea9aa80512b6b9a75afc9021de6dc4d4151ce7946c5e04812a3de2
        - quay.io/community-operator-pipeline-prod/sailoperator:1.28.1
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/proxyv2@sha256:4c830a386c93683bdf88249e089bc971361c419365663dc35aa1d5ba6be73c19
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        - gcr.io/istio-release/install-cni@sha256:a84971fd29ce54181dc4ceee6dbde8032bebd5a72301319a0468e5bc39902080
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/install-cni@sha256:8dda5692bbed6069d837acc084d5b142c325bba2491622a04ec42198c44562b4
        - gcr.io/istio-release/pilot@sha256:d0930e5cf028deeb636364595b4d0a42e05d5745850013bae297b32a9315ab18
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/pilot@sha256:dcc1431b635a2151f891ba17e8911d56f1aa1e4acaff0c543d0036b849cb0369
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/ztunnel@sha256:f562d8dd28e803061ee63853e7e1da07188ec24e734ebf0d95ec2126b41ac392
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/pilot@sha256:5109ab9a1e7f1cdc60430e8823957655710dcc4977479b67de3d43bbab18a3f6
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:f95a5e91204afbfad9d33d6f1bc0556a96bf997b18edede6c9e6b86eb07543a1
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/ztunnel@sha256:352baf7040b916b2d3de03388f14a8da0da5fa5e02a2589218261119b39a4594
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/install-cni@sha256:ba4c1ad3c67be6681883162c8543e15b2ea78a79658665a450bce0f475674de5
        - gcr.io/istio-release/proxyv2@sha256:c68e79b821ba47c63af844422114af6d5cc01cc1fd8f1b0184c42be330afc1d2
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/ztunnel@sha256:5991f9a9202c9a1a59c41efb7e8b89e7a9cfc0dc39f71afe91cdd78c6ecf697c
        - gcr.io/istio-release/pilot@sha256:43e24609869d90ea7c12c878474e5905b02676e7dd827903be42c15599cde1b7
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/install-cni@sha256:81295e43028ab50028f173a7ed2bf3d435201539b6b70f5938079771fe9e4561
        - quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/ztunnel@sha256:836e3f8b34527139523effc176cc138b93e69b4506ccb3dca75460e0ccb96138
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        version: 1.28.1
      entries:
      - name: sailoperator.v1.28.1
        version: 1.28.1
      - name: sailoperator.v1.28.0
        version: 1.28.0
      - name: sailoperator.v1.27.3
        version: 1.27.3
      - name: sailoperator.v1.27.2
        version: 1.27.2
      - name: sailoperator.v1.27.1
        version: 1.27.1
      - name: sailoperator.v1.27.0
        version: 1.27.0
      - name: sailoperator.v1.26.3
        version: 1.26.3
      - name: sailoperator.v1.26.2
        version: 1.26.2
      - name: sailoperator.v1.26.1
        version: 1.26.1
      - name: sailoperator.v1.26.0
        version: 1.26.0
      - name: sailoperator.v1.25.2
        version: 1.25.2
      - name: sailoperator.v1.25.1
        version: 1.25.1
      - name: sailoperator.v1.25.0
        version: 1.25.0
      name: stable
    - currentCSV: sailoperator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.24.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.24.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator:1.0-latest
          createdAt: "2025-03-07T10:17:30Z"
          description: Experimental operator for installing Istio service mesh
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          This is an experimental operator for installing Istio service mesh.

          This version of the operator supports the following Istio versions:

          - v1.24-latest
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.23-latest
          - v1.23.5
          - v1.23.4
          - v1.23.3
          - v1.23.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/pilot:1.24.3
        - gcr.io/istio-release/ztunnel:1.24.1
        - gcr.io/istio-release/install-cni:1.23.0
        - gcr.io/istio-release/pilot:1.24.2
        - gcr.io/istio-release/pilot:1.23.4
        - gcr.io/istio-release/proxyv2:1.24.3
        - gcr.io/istio-release/ztunnel:1.23.0
        - gcr.io/istio-release/ztunnel:1.24.3
        - gcr.io/istio-release/proxyv2:1.24.1
        - gcr.io/istio-release/ztunnel:1.23.5
        - gcr.io/istio-release/pilot:1.23.0
        - gcr.io/istio-release/install-cni:1.23.4
        - gcr.io/istio-release/pilot:1.24.1
        - gcr.io/istio-release/proxyv2:1.23.4
        - gcr.io/istio-release/ztunnel:1.23.4
        - gcr.io/istio-release/ztunnel:1.24.2
        - gcr.io/istio-release/install-cni:1.24.2
        - quay.io/community-operator-pipeline-prod/sailoperator@sha256:5416c5fc62c7d9498349ed771bf93bfc0f712ad8da0b8ee109dc49d1e684fa56
        - gcr.io/istio-release/install-cni:1.23.3
        - gcr.io/istio-release/proxyv2:1.23.0
        - gcr.io/istio-release/pilot:1.23.5
        - gcr.io/istio-release/install-cni:1.23.5
        - gcr.io/istio-release/proxyv2:1.23.5
        - gcr.io/istio-release/ztunnel:1.23.3
        - gcr.io/istio-release/install-cni:1.24.3
        - gcr.io/istio-release/pilot:1.23.3
        - gcr.io/istio-release/install-cni:1.24.1
        - quay.io/sail-dev/sail-operator:1.0-latest
        - gcr.io/istio-release/proxyv2:1.23.3
        - gcr.io/istio-release/proxyv2:1.24.2
        version: 1.0.0
      entries:
      - name: sailoperator.v1.0.0
        version: 1.0.0
      name: stable-1.0
    - currentCSV: sailoperator.v1.25.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.25.2"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.25.2"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator:1.25.2
          createdAt: "2025-05-07T19:44:51Z"
          description: Experimental operator for installing Istio service mesh
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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.skipRange: '>=1.0.0 <1.25.2'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          This is an experimental operator for installing Istio service mesh.

          This version of the operator supports the following Istio versions:

          - v1.25-latest
          - v1.25.2
          - v1.25.1
          - v1.24-latest
          - v1.24.4
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.24.0
          - v1.23-latest
          - v1.23.5
          - v1.23.4
          - v1.23.3
          - v1.23.2
          - v1.22-latest
          - v1.22.8
          - v1.22.7
          - v1.22.6
          - v1.22.5
          - v1.21.6

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/ztunnel:1.23.4
        - gcr.io/istio-release/ztunnel:1.24.3
        - gcr.io/istio-release/ztunnel:1.21.6
        - gcr.io/istio-release/ztunnel:1.22.8
        - gcr.io/istio-release/proxyv2:1.24.0
        - gcr.io/istio-release/install-cni:1.21.6
        - gcr.io/istio-release/pilot:1.22.8
        - gcr.io/istio-release/pilot:1.25.1
        - gcr.io/istio-release/proxyv2:1.22.6
        - gcr.io/istio-release/proxyv2:1.22.7
        - gcr.io/istio-release/proxyv2:1.21.6
        - gcr.io/istio-release/ztunnel:1.25.2
        - gcr.io/istio-release/install-cni:1.22.5
        - quay.io/community-operator-pipeline-prod/sailoperator@sha256:9cc4d5a9f46e4d05f8adb5232459002a073c101cc813330325afb6682e2138ae
        - gcr.io/istio-release/pilot:1.25.2
        - gcr.io/istio-release/pilot:1.23.5
        - gcr.io/istio-release/install-cni:1.23.5
        - gcr.io/istio-release/install-cni:1.24.4
        - gcr.io/istio-release/proxyv2:1.23.2
        - gcr.io/istio-release/install-cni:1.25.2
        - gcr.io/istio-release/ztunnel:1.23.3
        - gcr.io/istio-release/install-cni:1.25.1
        - gcr.io/istio-release/proxyv2:1.22.8
        - gcr.io/istio-release/proxyv2:1.25.1
        - gcr.io/istio-release/proxyv2:1.24.3
        - gcr.io/istio-release/proxyv2:1.25.2
        - gcr.io/istio-release/pilot:1.23.2
        - gcr.io/istio-release/pilot:1.24.0
        - gcr.io/istio-release/proxyv2:1.23.4
        - gcr.io/istio-release/install-cni:1.22.8
        - gcr.io/istio-release/ztunnel:1.24.2
        - gcr.io/istio-release/pilot:1.24.4
        - gcr.io/istio-release/install-cni:1.24.0
        - quay.io/sail-dev/sail-operator:1.25.2
        - gcr.io/istio-release/proxyv2:1.24.4
        - gcr.io/istio-release/pilot:1.24.2
        - gcr.io/istio-release/pilot:1.23.4
        - gcr.io/istio-release/install-cni:1.22.7
        - gcr.io/istio-release/proxyv2:1.23.3
        - gcr.io/istio-release/pilot:1.22.5
        - gcr.io/istio-release/proxyv2:1.23.5
        - gcr.io/istio-release/ztunnel:1.23.2
        - gcr.io/istio-release/install-cni:1.24.2
        - gcr.io/istio-release/install-cni:1.24.1
        - gcr.io/istio-release/install-cni:1.23.4
        - gcr.io/istio-release/proxyv2:1.24.2
        - gcr.io/istio-release/ztunnel:1.22.7
        - gcr.io/istio-release/install-cni:1.22.6
        - gcr.io/istio-release/install-cni:1.23.3
        - gcr.io/istio-release/ztunnel:1.24.1
        - gcr.io/istio-release/pilot:1.21.6
        - gcr.io/istio-release/proxyv2:1.22.5
        - gcr.io/istio-release/ztunnel:1.24.4
        - gcr.io/istio-release/install-cni:1.23.2
        - gcr.io/istio-release/ztunnel:1.24.0
        - gcr.io/istio-release/pilot:1.22.7
        - gcr.io/istio-release/ztunnel:1.25.1
        - gcr.io/istio-release/ztunnel:1.22.6
        - gcr.io/istio-release/ztunnel:1.23.5
        - gcr.io/istio-release/proxyv2:1.24.1
        - gcr.io/istio-release/install-cni:1.24.3
        - gcr.io/istio-release/pilot:1.23.3
        - gcr.io/istio-release/pilot:1.24.1
        - gcr.io/istio-release/pilot:1.22.6
        - gcr.io/istio-release/pilot:1.24.3
        - gcr.io/istio-release/ztunnel:1.22.5
        version: 1.25.2
      entries:
      - name: sailoperator.v1.25.2
        version: 1.25.2
      - name: sailoperator.v1.25.1
        version: 1.25.1
      - name: sailoperator.v1.25.0
        version: 1.25.0
      name: stable-1.25
    - currentCSV: sailoperator.v1.26.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.26.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.26.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:d37258646d76a9f708a69fbaa081a0a95908a2b0c8837a14d7ecbfcf505f9bd4
          createdAt: "2025-08-04T06:23:45Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.26-latest
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0
          - v1.25-latest
          - v1.25.3
          - v1.25.2
          - v1.25.1
          - v1.24-latest
          - v1.24.6
          - v1.24.5
          - v1.24.4
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.24.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/proxyv2@sha256:445156b5f4a780242d079a47b7d88199cbbb5959c92358469b721af490eca1ae
        - gcr.io/istio-release/pilot@sha256:e082a6f27001101942d1e2be71764b17ad350ed0d289038020426e7ee603eb56
        - gcr.io/istio-release/pilot@sha256:f0bcb10a51dbb2b9e5552e7f82aa7fcc2ff4dd6d0d7d2224986036b1645b855b
        - gcr.io/istio-release/ztunnel@sha256:0e680a1b33d458e5dfd6f91808c8bd61d00a1103084545ea6a1956c935e7554e
        - gcr.io/istio-release/proxyv2@sha256:d62cc7585450bce8573338c3d147961f4e1df045ffcf5956abea29841cb5aaa4
        - gcr.io/istio-release/install-cni@sha256:3107b1947e755abe698fe2d5c3ed7ba5f228f0b4ff5ff30f484fcc984514b97e
        - gcr.io/istio-release/proxyv2@sha256:49ed9dd2c06383c0a847877a707a3563d0968d83779ad8d13a0c022a48c5c407
        - gcr.io/istio-release/pilot@sha256:32d0f6bd6c1259de78dbc79dfd88cf5f4dc8941613560ff2ca7dbabcf04dfd68
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:ee6565e57319e01b5e45b929335eb9dc3d4b30d531b4652467e6939ae81b41f7
        - gcr.io/istio-release/install-cni@sha256:d28af093e5b7f33e8750364e9077c8b2c464145d1904cae8be48227ec0110b04
        - gcr.io/istio-release/ztunnel@sha256:74ee23f374ea28b3455ad2eca2bea62da95bc2a23b865b7c8c301139046650d5
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/install-cni@sha256:7b12bcfabd92c5756e4b12bf82e373f4abcdd3ccf81ac0b93fe0aa6f8ccce63c
        - gcr.io/istio-release/pilot@sha256:7ccda8c22307ee796cb7ba3f4ce224ef533c3c683c063dcc92fd5a244d8a5c9d
        - gcr.io/istio-release/proxyv2@sha256:91382859f73b1a66ac113631f89ef73dabf9c931d6baf0bd7eb618c0fa958b34
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/install-cni@sha256:313165b70241f65c79b5984797b8e3bc43a264acfeaeda4f33fe3a7f89a2fdb8
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/pilot@sha256:4ad6b0c3839a11622e66323a1296c7fc19dcbbb2c371b2e3edd58bd4f763f19f
        - gcr.io/istio-release/pilot@sha256:c8ac4894f2e667eb439d1c960a47ac7fbc80aad3f0adb98f5fd9330d9c515696
        - gcr.io/istio-release/proxyv2@sha256:2edf332e1c7ddd46466e337d009eda091bcd43f827b6f460175b772addc8055a
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/proxyv2@sha256:a5f2c1804ac4397448149b63a67f6cfd1979d304b99a726667a4859d201c6305
        - quay.io/sail-dev/sail-operator@sha256:d37258646d76a9f708a69fbaa081a0a95908a2b0c8837a14d7ecbfcf505f9bd4
        - gcr.io/istio-release/ztunnel@sha256:ca14b3f869aa998da30c6f8f8d14b2e9cd61a40b78b05196b951cac9613d76d8
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/ztunnel@sha256:2402a1c71dce11c409b6da171d8ae27dff62c539d58aac41817499e1fcd7beb3
        - gcr.io/istio-release/install-cni@sha256:d241cd11295b7c7af6c1c7e22096db886b07ab1945b4b7b2fe3d7f95ef41b277
        - gcr.io/istio-release/install-cni@sha256:1d963aca195f1e06459925431c592cf556112d77b824c61e06555fbc31ee415f
        - gcr.io/istio-release/proxyv2@sha256:640733abb924663df83761e2ec95a2bddca797daf1ca37672ec0b045969cdeb1
        - gcr.io/istio-release/pilot@sha256:93d6b52a61e7e9891fe114e4f7d503b36e8d1566a22e82e5635084a2001eb14a
        - gcr.io/istio-release/ztunnel@sha256:eaae7b8ed53a3f18b0291f08db0e3330d7c958d39919fce9dbc43f3027bf2089
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/proxyv2@sha256:2cd83a25202af6c5aef48b432f7fed50b6de460c795ce7c84f80bf630f51ca4d
        - gcr.io/istio-release/install-cni@sha256:d85b955875b2fbfc2ca8166cf2aa0e4ac3d78dd00f4ec4140a2a22dd17e7deb9
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/pilot@sha256:21b6cdaf12e7eb8bb0ad1d493c32a76e7d34f574a41ece86ded0c79e7191e875
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/ztunnel@sha256:96daeeb4e71a304edbf2ee2d37bc4bd4b88b9da26d7e6cc0c34c94c1cd6e6cca
        - gcr.io/istio-release/ztunnel@sha256:56afd26e9384ff41a0244a8c637a0e3aa8654015b8d32b494df8b5023f213ec7
        - gcr.io/istio-release/ztunnel@sha256:ae90c4e06a4560898dbf414226e3ea879b8d0b10387af27b0c2907e8488fc5d1
        - gcr.io/istio-release/ztunnel@sha256:73b3ad311c9c9a2618e9c2f10259a3bf5414bb4fc6fd407baa6280bdd8d227f0
        - gcr.io/istio-release/pilot@sha256:29cccf38a413fe81a88d02e0bf924ca84a9cf1d6a3c9ece024c0636b1e3cb029
        - gcr.io/istio-release/install-cni@sha256:4b10d810228e553bf34924222b7d62fdfafbce5ed67dc54973d168bda384a4cd
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - quay.io/community-operator-pipeline-prod/sailoperator:1.26.3
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/install-cni@sha256:0f27cb9e3423a3ed8a444dd2137ae05f31a03df2bdd549b21ef8f0f3949e3cef
        - gcr.io/istio-release/ztunnel@sha256:45807d4c512e9a0e4855eb1a2535532319b698302ebbf4d4eaccf462997bb374
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/proxyv2@sha256:534f7589b085450b5b94e6c955f5106892df88d81676f53ac5e06a0cf5ec45da
        - gcr.io/istio-release/pilot@sha256:2961bf88463e475f1e53d82a118405841ecbb9d8a6e0b35c73c77bee53bc0c3e
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - gcr.io/istio-release/install-cni@sha256:a80a96d9e4e859d1568fe1db1b12525db8c26d153e4bb783ba4efb3c5b16f877
        version: 1.26.3
      entries:
      - name: sailoperator.v1.26.3
        version: 1.26.3
      - name: sailoperator.v1.26.2
        version: 1.26.2
      - name: sailoperator.v1.26.1
        version: 1.26.1
      - name: sailoperator.v1.26.0
        version: 1.26.0
      name: stable-1.26
    - currentCSV: sailoperator.v1.27.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:89bae0d643a074d759550ab497aa43af670ce7717db3f6fac50daaa32e61d371
          createdAt: "2025-10-21T10:12:31Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.27-latest
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0
          - v1.25-latest
          - v1.25.5
          - v1.25.4
          - v1.25.3
          - v1.25.2
          - v1.25.1
          - v1.24-latest
          - v1.24.6
          - v1.24.5
          - v1.24.4
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.24.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/ztunnel@sha256:56afd26e9384ff41a0244a8c637a0e3aa8654015b8d32b494df8b5023f213ec7
        - gcr.io/istio-release/ztunnel@sha256:eaae7b8ed53a3f18b0291f08db0e3330d7c958d39919fce9dbc43f3027bf2089
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/install-cni@sha256:313165b70241f65c79b5984797b8e3bc43a264acfeaeda4f33fe3a7f89a2fdb8
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/install-cni@sha256:3107b1947e755abe698fe2d5c3ed7ba5f228f0b4ff5ff30f484fcc984514b97e
        - gcr.io/istio-release/proxyv2@sha256:640733abb924663df83761e2ec95a2bddca797daf1ca37672ec0b045969cdeb1
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/install-cni@sha256:d241cd11295b7c7af6c1c7e22096db886b07ab1945b4b7b2fe3d7f95ef41b277
        - gcr.io/istio-release/pilot@sha256:32d0f6bd6c1259de78dbc79dfd88cf5f4dc8941613560ff2ca7dbabcf04dfd68
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/proxyv2@sha256:ee6565e57319e01b5e45b929335eb9dc3d4b30d531b4652467e6939ae81b41f7
        - gcr.io/istio-release/ztunnel@sha256:2402a1c71dce11c409b6da171d8ae27dff62c539d58aac41817499e1fcd7beb3
        - gcr.io/istio-release/pilot@sha256:e082a6f27001101942d1e2be71764b17ad350ed0d289038020426e7ee603eb56
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/ztunnel@sha256:96daeeb4e71a304edbf2ee2d37bc4bd4b88b9da26d7e6cc0c34c94c1cd6e6cca
        - gcr.io/istio-release/pilot@sha256:0d06b179025862f13150dda22608e0700a74a0127d0a1b66eebcadf18d3d4bd7
        - gcr.io/istio-release/proxyv2@sha256:75e272cbe8dd31fda4c193aedc251ee2e26593f0b7b4f305225f9ad804cc6f0d
        - gcr.io/istio-release/install-cni@sha256:f8043a943106f8638dc67ed9b8cce5ced0a25d0b8c9217281f7c7ff1dbd41c15
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/pilot@sha256:f0bcb10a51dbb2b9e5552e7f82aa7fcc2ff4dd6d0d7d2224986036b1645b855b
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/proxyv2@sha256:a5f2c1804ac4397448149b63a67f6cfd1979d304b99a726667a4859d201c6305
        - gcr.io/istio-release/pilot@sha256:c8ac4894f2e667eb439d1c960a47ac7fbc80aad3f0adb98f5fd9330d9c515696
        - gcr.io/istio-release/proxyv2@sha256:91382859f73b1a66ac113631f89ef73dabf9c931d6baf0bd7eb618c0fa958b34
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/install-cni@sha256:a80a96d9e4e859d1568fe1db1b12525db8c26d153e4bb783ba4efb3c5b16f877
        - gcr.io/istio-release/install-cni@sha256:d28af093e5b7f33e8750364e9077c8b2c464145d1904cae8be48227ec0110b04
        - gcr.io/istio-release/proxyv2@sha256:534f7589b085450b5b94e6c955f5106892df88d81676f53ac5e06a0cf5ec45da
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/proxyv2@sha256:2cd83a25202af6c5aef48b432f7fed50b6de460c795ce7c84f80bf630f51ca4d
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/proxyv2@sha256:445156b5f4a780242d079a47b7d88199cbbb5959c92358469b721af490eca1ae
        - gcr.io/istio-release/proxyv2@sha256:2edf332e1c7ddd46466e337d009eda091bcd43f827b6f460175b772addc8055a
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/pilot@sha256:7ccda8c22307ee796cb7ba3f4ce224ef533c3c683c063dcc92fd5a244d8a5c9d
        - quay.io/sail-dev/sail-operator@sha256:89bae0d643a074d759550ab497aa43af670ce7717db3f6fac50daaa32e61d371
        - gcr.io/istio-release/ztunnel@sha256:73b3ad311c9c9a2618e9c2f10259a3bf5414bb4fc6fd407baa6280bdd8d227f0
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/install-cni@sha256:f6e234ab501fabdd9643f1469f90bf0ff3696caa0f6456652e28c1a608644700
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/ztunnel@sha256:ca14b3f869aa998da30c6f8f8d14b2e9cd61a40b78b05196b951cac9613d76d8
        - gcr.io/istio-release/proxyv2@sha256:ac598d6c98415bfb323b4930ba1423b9c3d17a90c205de1ad2e5f28179275c75
        - gcr.io/istio-release/proxyv2@sha256:49ed9dd2c06383c0a847877a707a3563d0968d83779ad8d13a0c022a48c5c407
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/install-cni@sha256:d85b955875b2fbfc2ca8166cf2aa0e4ac3d78dd00f4ec4140a2a22dd17e7deb9
        - gcr.io/istio-release/pilot@sha256:2961bf88463e475f1e53d82a118405841ecbb9d8a6e0b35c73c77bee53bc0c3e
        - gcr.io/istio-release/ztunnel@sha256:0e680a1b33d458e5dfd6f91808c8bd61d00a1103084545ea6a1956c935e7554e
        - gcr.io/istio-release/install-cni@sha256:1d963aca195f1e06459925431c592cf556112d77b824c61e06555fbc31ee415f
        - gcr.io/istio-release/install-cni@sha256:0f27cb9e3423a3ed8a444dd2137ae05f31a03df2bdd549b21ef8f0f3949e3cef
        - gcr.io/istio-release/pilot@sha256:29cccf38a413fe81a88d02e0bf924ca84a9cf1d6a3c9ece024c0636b1e3cb029
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/install-cni@sha256:4b10d810228e553bf34924222b7d62fdfafbce5ed67dc54973d168bda384a4cd
        - gcr.io/istio-release/pilot@sha256:4ad6b0c3839a11622e66323a1296c7fc19dcbbb2c371b2e3edd58bd4f763f19f
        - gcr.io/istio-release/ztunnel@sha256:45807d4c512e9a0e4855eb1a2535532319b698302ebbf4d4eaccf462997bb374
        - gcr.io/istio-release/pilot@sha256:93d6b52a61e7e9891fe114e4f7d503b36e8d1566a22e82e5635084a2001eb14a
        - gcr.io/istio-release/proxyv2@sha256:d62cc7585450bce8573338c3d147961f4e1df045ffcf5956abea29841cb5aaa4
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/ztunnel@sha256:ae90c4e06a4560898dbf414226e3ea879b8d0b10387af27b0c2907e8488fc5d1
        - gcr.io/istio-release/ztunnel@sha256:74ee23f374ea28b3455ad2eca2bea62da95bc2a23b865b7c8c301139046650d5
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/install-cni@sha256:7b12bcfabd92c5756e4b12bf82e373f4abcdd3ccf81ac0b93fe0aa6f8ccce63c
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/ztunnel@sha256:45e0288894c9beed590bd4caed1dc04a96be7231de3cdd5e2c45f1c08f194503
        - gcr.io/istio-release/ztunnel@sha256:144093bb2d220b7ee402626dc5ea9ed7ddce2675ebe5ab4bf83646b4762484dd
        - gcr.io/istio-release/pilot@sha256:21b6cdaf12e7eb8bb0ad1d493c32a76e7d34f574a41ece86ded0c79e7191e875
        - quay.io/community-operator-pipeline-prod/sailoperator:1.27.3
        - gcr.io/istio-release/pilot@sha256:a6e8f88e35f886a45ae645bce076305d1f66a703f80059b6449026159ef767a8
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        version: 1.27.3
      entries:
      - name: sailoperator.v1.27.3
        version: 1.27.3
      - name: sailoperator.v1.27.2
        version: 1.27.2
      - name: sailoperator.v1.27.1
        version: 1.27.1
      - name: sailoperator.v1.27.0
        version: 1.27.0
      name: stable-1.27
    - currentCSV: sailoperator.v1.28.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
          createdAt: "2025-12-10T15:50:55Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.28-latest
          - v1.28.1
          - v1.28.0
          - v1.27-latest
          - v1.27.4
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.7
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/proxyv2@sha256:8ff7b0d50cea9aa80512b6b9a75afc9021de6dc4d4151ce7946c5e04812a3de2
        - gcr.io/istio-release/proxyv2@sha256:4c830a386c93683bdf88249e089bc971361c419365663dc35aa1d5ba6be73c19
        - quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
        - gcr.io/istio-release/pilot@sha256:dcc1431b635a2151f891ba17e8911d56f1aa1e4acaff0c543d0036b849cb0369
        - gcr.io/istio-release/ztunnel@sha256:5991f9a9202c9a1a59c41efb7e8b89e7a9cfc0dc39f71afe91cdd78c6ecf697c
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/ztunnel@sha256:836e3f8b34527139523effc176cc138b93e69b4506ccb3dca75460e0ccb96138
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/install-cni@sha256:ba4c1ad3c67be6681883162c8543e15b2ea78a79658665a450bce0f475674de5
        - gcr.io/istio-release/proxyv2@sha256:f95a5e91204afbfad9d33d6f1bc0556a96bf997b18edede6c9e6b86eb07543a1
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/ztunnel@sha256:352baf7040b916b2d3de03388f14a8da0da5fa5e02a2589218261119b39a4594
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/install-cni@sha256:81295e43028ab50028f173a7ed2bf3d435201539b6b70f5938079771fe9e4561
        - quay.io/community-operator-pipeline-prod/sailoperator:1.28.1
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/pilot@sha256:5109ab9a1e7f1cdc60430e8823957655710dcc4977479b67de3d43bbab18a3f6
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/install-cni@sha256:8dda5692bbed6069d837acc084d5b142c325bba2491622a04ec42198c44562b4
        - gcr.io/istio-release/ztunnel@sha256:f562d8dd28e803061ee63853e7e1da07188ec24e734ebf0d95ec2126b41ac392
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        - gcr.io/istio-release/pilot@sha256:43e24609869d90ea7c12c878474e5905b02676e7dd827903be42c15599cde1b7
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/install-cni@sha256:a84971fd29ce54181dc4ceee6dbde8032bebd5a72301319a0468e5bc39902080
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/pilot@sha256:d0930e5cf028deeb636364595b4d0a42e05d5745850013bae297b32a9315ab18
        - gcr.io/istio-release/proxyv2@sha256:c68e79b821ba47c63af844422114af6d5cc01cc1fd8f1b0184c42be330afc1d2
        version: 1.28.1
      entries:
      - name: sailoperator.v1.28.1
        version: 1.28.1
      - name: sailoperator.v1.28.0
        version: 1.28.0
      name: stable-1.28
    defaultChannel: stable
    packageName: sailoperator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: ""
    name: ingress-node-firewall
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ingress-node-firewall.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ingressnodefirewall.openshift.io/v1alpha1",
                "kind": "IngressNodeFirewall",
                "metadata": {
                  "name": "ingressnodefirewall-demo2"
                },
                "spec": {
                  "ingress": [
                    {
                      "rules": [
                        {
                          "action": "Deny",
                          "order": 10,
                          "protocolConfig": {
                            "icmp": {
                              "icmpType": 8
                            },
                            "protocol": "ICMP"
                          }
                        },
                        {
                          "action": "Deny",
                          "order": 20,
                          "protocolConfig": {
                            "protocol": "TCP",
                            "tcp": {
                              "ports": "8000-9000"
                            }
                          }
                        }
                      ],
                      "sourceCIDRs": [
                        "172.16.0.0/12"
                      ]
                    },
                    {
                      "rules": [
                        {
                          "action": "Deny",
                          "order": 10,
                          "protocolConfig": {
                            "icmpv6": {
                              "icmpType": 128
                            },
                            "protocol": "ICMPv6"
                          }
                        }
                      ],
                      "sourceCIDRs": [
                        "fc00:f853:ccd:e793::0/64"
                      ]
                    }
                  ],
                  "interfaces": [
                    "eth0"
                  ],
                  "nodeSelector": {
                    "matchLabels": {
                      "do-node-ingress-firewall": "true"
                    }
                  }
                }
              },
              {
                "apiVersion": "ingressnodefirewall.openshift.io/v1alpha1",
                "kind": "IngressNodeFirewallConfig",
                "metadata": {
                  "name": "ingressnodefirewallconfig",
                  "namespace": "ingress-node-firewall-system"
                },
                "spec": {
                  "debug": false,
                  "ebpfProgramManagerMode": false,
                  "nodeSelector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ingress-node-firewall-rhel9-operator@sha256:be9d43da922a7128c25945c296cb7b05f25c91417baf286d22330f43c3fbb9ff
          createdAt: "2025-09-04T08:25:04Z"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.11.0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-ingress-node-firewall
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/ingress-node-firewall
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: IngressNodeFirewallConfig
            name: ingressnodefirewallconfigs.ingressnodefirewall.openshift.io
            version: v1alpha1
          - kind: IngressNodeFirewallNodeState
            name: ingressnodefirewallnodestates.ingressnodefirewall.openshift.io
            version: v1alpha1
          - kind: IngressNodeFirewall
            name: ingressnodefirewalls.ingressnodefirewall.openshift.io
            version: v1alpha1
        description: The Ingress node firewall operator, manages the configuration
          of cluster scoped Ingress Node firewall rules for Kubernetes.
        displayName: Ingress Node Firewall Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ingressnodefirewall
        links:
        - name: Ingress Node Firewall
          url: https://github.com/openshift/ingress-node-firewall
        maintainers:
        - email: mmahmoud@redhat.com
          name: msherif1234
        maturity: alpha
        provider:
          name: Red Hat, Inc
        relatedImages:
        - registry.redhat.io/openshift4/ingress-node-firewall-operator-bundle@sha256:82df35fea3406d71cb5f49f06098ea2946cd3efb4685b662eee0f60d27ecf33c
        - registry.redhat.io/openshift4/ingress-node-firewall-rhel9-operator@sha256:be9d43da922a7128c25945c296cb7b05f25c91417baf286d22330f43c3fbb9ff
        - registry.redhat.io/openshift4/ingress-node-firewall-rhel9@sha256:9d305bfa5f20dcdec7dd826670814ec8a92c7c177b00b9bddaae4c8a1cb31403
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 4.20.0-202512081147
      entries:
      - name: ingress-node-firewall.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: ingress-node-firewall.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: ingress-node-firewall.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: ingress-node-firewall.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: ingress-node-firewall.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: ingress-node-firewall.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: ingress-node-firewall.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: ingress-node-firewall
    provider:
      name: Red Hat, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://skupper.io
    name: skupper-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: skupper-operator.v1.4.8-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:1fd908e80ef21fe7d7051c400cb099f2f3ca51c8cdd698705ef9784d34688911
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:4c9cc9df83baa1ef37cfb429babe5b86a962b8bb096209b3fb74291c67c94000
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:0f6c6faf7fdf7b6d69bc5cc4b0266064d0035e295d0562b957d95c8c81699f2b
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:c665677c639699d6a5ef24aed5a1a3d9c0a5ee25f077a6db42a9fc6247d93132
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:eedde9f2019d4e919612bcc18f427c0d88b4846e773751af231ba0e560d48869
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:65602221cdff7f718d4149f4dead167d05dbbe0cea1eaa8bf4b98be588135583
        version: 1.4.8-rh-1
      entries:
      - name: skupper-operator.v1.4.8-rh-1
        version: 1.4.8-rh-1
      - name: skupper-operator.v1.4.7-rh-3
        version: 1.4.7-rh-3
      - name: skupper-operator.v1.4.7-rh-2
        version: 1.4.7-rh-2
      - name: skupper-operator.v1.4.7-rh-1
        version: 1.4.7-rh-1
      - name: skupper-operator.v1.4.5-rh-4
        version: 1.4.5-rh-4
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: alpha
    - currentCSV: skupper-operator.v1.9.4-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.9.4-rh-1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:97f1a693c36b909b31a8b3141a5ea07b9c369acb98f9f89771de8db09d209fad
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:9abea7559799ec9315c646ac00688582044a2783973efb0caf01f8c401ca4c82
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:b981b42e7ba47169636ab14f3ec092aadfdc374399b5856d77a0cefd5295fca1
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:8010bd9fa41fcd706a84d20bf54c27f59ab1f6c6e1a10881e42e1f71a1c7e237
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:039fcc42f7935dc3a5fea4da1b9b858ae0dabf6855a101543edd5fcea2b57392
        version: 1.9.4-rh-1
      entries:
      - name: skupper-operator.v1.9.4-rh-1
        version: 1.9.4-rh-1
      - name: skupper-operator.v1.9.2-rh-1
        version: 1.9.2-rh-1
      - name: skupper-operator.v1.9.1-rh-1
        version: 1.9.1-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable
    - currentCSV: skupper-operator.v1.9.4-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.9.4-rh-1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:9abea7559799ec9315c646ac00688582044a2783973efb0caf01f8c401ca4c82
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:b981b42e7ba47169636ab14f3ec092aadfdc374399b5856d77a0cefd5295fca1
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:8010bd9fa41fcd706a84d20bf54c27f59ab1f6c6e1a10881e42e1f71a1c7e237
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:039fcc42f7935dc3a5fea4da1b9b858ae0dabf6855a101543edd5fcea2b57392
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:97f1a693c36b909b31a8b3141a5ea07b9c369acb98f9f89771de8db09d209fad
        version: 1.9.4-rh-1
      entries:
      - name: skupper-operator.v1.9.4-rh-1
        version: 1.9.4-rh-1
      - name: skupper-operator.v1.9.2-rh-1
        version: 1.9.2-rh-1
      - name: skupper-operator.v1.9.1-rh-1
        version: 1.9.1-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1
    - currentCSV: skupper-operator.v1.4.8-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:1fd908e80ef21fe7d7051c400cb099f2f3ca51c8cdd698705ef9784d34688911
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:4c9cc9df83baa1ef37cfb429babe5b86a962b8bb096209b3fb74291c67c94000
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:0f6c6faf7fdf7b6d69bc5cc4b0266064d0035e295d0562b957d95c8c81699f2b
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:c665677c639699d6a5ef24aed5a1a3d9c0a5ee25f077a6db42a9fc6247d93132
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:eedde9f2019d4e919612bcc18f427c0d88b4846e773751af231ba0e560d48869
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:65602221cdff7f718d4149f4dead167d05dbbe0cea1eaa8bf4b98be588135583
        version: 1.4.8-rh-1
      entries:
      - name: skupper-operator.v1.4.8-rh-1
        version: 1.4.8-rh-1
      - name: skupper-operator.v1.4.7-rh-3
        version: 1.4.7-rh-3
      - name: skupper-operator.v1.4.7-rh-2
        version: 1.4.7-rh-2
      - name: skupper-operator.v1.4.7-rh-1
        version: 1.4.7-rh-1
      - name: skupper-operator.v1.4.5-rh-4
        version: 1.4.5-rh-4
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.4
    - currentCSV: skupper-operator.v1.5.5-rh-6
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:9e9e1f2288f0218e3ba2abf4bebac9731d7cf9f9c567e0f6de6767b0b66cbee4
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:1de071dabf620265252f3922c632f17f676ba716ce4c3df931a0ccb3871dbb6c
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:9e9e1f2288f0218e3ba2abf4bebac9731d7cf9f9c567e0f6de6767b0b66cbee4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:3e78ec8cdb729a704d5a26e54697f285ba7c0b9afee6160b7ecc703876120dea
        - registry.redhat.io/openshift4/ose-prometheus@sha256:53afaf53975807765fc3777314edd218c789c17680c1f57a8e33a8f9a76f38bf
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:5f8621d0013febcecbed4d7c82db11a4dded99ad8ce6b6d83858b9bdbe79ee5a
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:a5d7c1b2b9db672548126c0873d062a55667d93291fd3e32809d3c9c900c548e
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:aa261c79b421bd49f7b46974a3bb5a790d5a1a73dd8dea4e1d8a4634fb68a51f
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:be9dbcd2a3a1e1e536921390dcfd283fc45dc4423d2705376ef37a9fb53f7cf1
        version: 1.5.5-rh-6
      entries:
      - name: skupper-operator.v1.5.5-rh-6
        version: 1.5.5-rh-6
      - name: skupper-operator.v1.5.5-rh-5
        version: 1.5.5-rh-5
      - name: skupper-operator.v1.5.5-rh-4
        version: 1.5.5-rh-4
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.5
    - currentCSV: skupper-operator.v1.8.7-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:b0d43628b779a101a24e4b271318a34c21f3b71bcba2bf20804f941a93d27455
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.8.7-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:3adeef827eca0382cd410f7c3e99a0fee9b50791cb0e0c6fc130b72a2550684f
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5ea36e96f878577104ab7601e57e7a2a233f11dbdc533454f95e2e14a066d21f
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:56b8fde75a6e7df235c560a0f4b9114398da5ba8b20f75f1ea7338f48ce19506
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:d7d252cff08ba1589afd8707ed349f87d3b6214906a4fb49932bda0a4d19fee4
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:123488f0877c054a348f5b4135e68d77c17523bc4e5ea14dd73168372592f4ce
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:f798745e799515065af099a816057b9c98a741e951d30a0f45ed47ca50e6724e
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:61542c5f0989f51ac5d6c96f5d0e29aca75614b79e7626299c77c5a74636b564
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:b0d43628b779a101a24e4b271318a34c21f3b71bcba2bf20804f941a93d27455
        version: 1.8.7-rh-2
      entries:
      - name: skupper-operator.v1.8.7-rh-2
        version: 1.8.7-rh-2
      - name: skupper-operator.v1.8.7-rh-1
        version: 1.8.7-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.8
    - currentCSV: skupper-operator.v1.9.4-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.9.4-rh-1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:b981b42e7ba47169636ab14f3ec092aadfdc374399b5856d77a0cefd5295fca1
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:8010bd9fa41fcd706a84d20bf54c27f59ab1f6c6e1a10881e42e1f71a1c7e237
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:039fcc42f7935dc3a5fea4da1b9b858ae0dabf6855a101543edd5fcea2b57392
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:97f1a693c36b909b31a8b3141a5ea07b9c369acb98f9f89771de8db09d209fad
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:9abea7559799ec9315c646ac00688582044a2783973efb0caf01f8c401ca4c82
        version: 1.9.4-rh-1
      entries:
      - name: skupper-operator.v1.9.4-rh-1
        version: 1.9.4-rh-1
      - name: skupper-operator.v1.9.2-rh-1
        version: 1.9.2-rh-1
      - name: skupper-operator.v1.9.1-rh-1
        version: 1.9.1-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.9
    - currentCSV: skupper-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessGrant",
                "metadata": {
                  "name": "my-grant"
                },
                "spec": {
                  "expirationWindow": "1h",
                  "redemptionsAllowed": 10
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessToken",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "ca": "-----BEGIN CERTIFICATE-----\nMIIDNzCCAh+ … Q=\n-----END CERTIFICATE-----\n",
                  "code": "L1qCl2mZ7D81gbXp3ax4YT0K",
                  "url": "https://10.107.241.191:9090/86b80f6b-2b02-47ac-bab4-d285bb4f7b9d"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnector",
                "metadata": {
                  "name": "backend",
                  "namespace": "other"
                },
                "spec": {
                  "port": 8080,
                  "selector": "app=backend",
                  "siteNamespace": "west"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnectorBinding",
                "metadata": {
                  "name": "backend",
                  "namespace": "west"
                },
                "spec": {
                  "connectorNamespace": "other",
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "west-certificate"
                },
                "spec": {
                  "client": true
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Connector",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "port": 8080,
                  "routingKey": "backend",
                  "selector": "app=backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Link",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "endpoints": [
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "inter-router",
                      "port": "55671"
                    },
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "edge",
                      "port": "45671"
                    }
                  ],
                  "tlsCredentials": "my-token"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "host": "backend",
                  "port": 8080,
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "RouterAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "SecuredAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Site",
                "metadata": {
                  "name": "west"
                },
                "spec": {
                  "ha": true,
                  "linkAccess": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
          createdAt: "2025-10-21T19:59:28Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessGrant
            name: accessgrants.skupper.io
            version: v2alpha1
          - kind: AccessToken
            name: accesstokens.skupper.io
            version: v2alpha1
          - kind: AttachedConnectorBinding
            name: attachedconnectorbindings.skupper.io
            version: v2alpha1
          - kind: AttachedConnector
            name: attachedconnectors.skupper.io
            version: v2alpha1
          - kind: Certificate
            name: certificates.skupper.io
            version: v2alpha1
          - kind: Connector
            name: connectors.skupper.io
            version: v2alpha1
          - kind: Link
            name: links.skupper.io
            version: v2alpha1
          - kind: Listener
            name: listeners.skupper.io
            version: v2alpha1
          - kind: RouterAccess
            name: routeraccesses.skupper.io
            version: v2alpha1
          - kind: SecuredAccess
            name: securedaccesses.skupper.io
            version: v2alpha1
          - kind: Site
            name: sites.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:912185defb2a16b8cc9070e5decc704f1a0b363858e26c19701655ea34adf35a
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:c0f5768b542346686b8bd0132238f047d644a2ea1a7e3692d6d947f8f977dc93
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:ca6b432e34aa02e67e32f707bf1b4234760afc681a2561c19d85a503ecac00f0
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
        - registry.redhat.io/service-interconnect/skupper-kube-adaptor-rhel9@sha256:80cb17acc05e13c9aa3556d186a7ab8557085039db4105e21f0366d34b2074fe
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:d401f69273344a89767c1f385d74b7b5a4eb3b9552336dd097e06859e40ca4e5
        version: 2.1.2-rh-2
      entries:
      - name: skupper-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-operator.v2.1.1-rh-3
        version: 2.1.1-rh-3
      - name: skupper-operator.v2.0.1-rh-2
        version: 2.0.1-rh-2
      - name: skupper-operator.v2.0.0-rh-11
        version: 2.0.0-rh-11
      name: stable-2
    - currentCSV: skupper-operator.v2.0.1-rh-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessGrant",
                "metadata": {
                  "name": "my-grant"
                },
                "spec": {
                  "expirationWindow": "1h",
                  "redemptionsAllowed": 10
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessToken",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "ca": "-----BEGIN CERTIFICATE-----\nMIIDNzCCAh+ … Q=\n-----END CERTIFICATE-----\n",
                  "code": "L1qCl2mZ7D81gbXp3ax4YT0K",
                  "url": "https://10.107.241.191:9090/86b80f6b-2b02-47ac-bab4-d285bb4f7b9d"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnector",
                "metadata": {
                  "name": "backend",
                  "namespace": "other"
                },
                "spec": {
                  "port": 8080,
                  "selector": "app=backend",
                  "siteNamespace": "west"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnectorBinding",
                "metadata": {
                  "name": "backend",
                  "namespace": "west"
                },
                "spec": {
                  "connectorNamespace": "other",
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "west-certificate"
                },
                "spec": {
                  "client": true
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Connector",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "port": 8080,
                  "routingKey": "backend",
                  "selector": "app=backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Link",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "endpoints": [
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "inter-router",
                      "port": "55671"
                    },
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "edge",
                      "port": "45671"
                    }
                  ],
                  "tlsCredentials": "my-token"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "host": "backend",
                  "port": 8080,
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "RouterAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "SecuredAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Site",
                "metadata": {
                  "name": "west"
                },
                "spec": {
                  "ha": true,
                  "linkAccess": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:b092400308feb51d76d61616a26a76b1ec4f9962719e012187fdf931f0b93f25
          createdAt: "2025-11-28T14:26:01Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>2.0.0-rh-1 <2.0.1-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessGrant
            name: accessgrants.skupper.io
            version: v2alpha1
          - kind: AccessToken
            name: accesstokens.skupper.io
            version: v2alpha1
          - kind: AttachedConnectorBinding
            name: attachedconnectorbindings.skupper.io
            version: v2alpha1
          - kind: AttachedConnector
            name: attachedconnectors.skupper.io
            version: v2alpha1
          - kind: Certificate
            name: certificates.skupper.io
            version: v2alpha1
          - kind: Connector
            name: connectors.skupper.io
            version: v2alpha1
          - kind: Link
            name: links.skupper.io
            version: v2alpha1
          - kind: Listener
            name: listeners.skupper.io
            version: v2alpha1
          - kind: RouterAccess
            name: routeraccesses.skupper.io
            version: v2alpha1
          - kind: SecuredAccess
            name: securedaccesses.skupper.io
            version: v2alpha1
          - kind: Site
            name: sites.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:fe0081a3339698f20c44bdcf33885747f5a44d69aa7dcebc460dea586231b37f
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:96cae6bbe557d0f60cb9364919a7b12ea7c462c5d4c663d2084433393938cf2a
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:b8308c9c9eecf421756643ec0eaeacbacda70dfdbe5ec2c0883578e9db474952
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:b092400308feb51d76d61616a26a76b1ec4f9962719e012187fdf931f0b93f25
        - registry.redhat.io/service-interconnect/skupper-kube-adaptor-rhel9@sha256:215ead3803dc808532748db1105884c577e151a79170fa50bc4249161c335f49
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:c76a55e1687fb53e17e66d2b0e57849d637835147247acf7182b8a9eb4ce1575
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:aec9e002029591c20e94725cf0b09b0ae575139ac0bd0e3805f67e2446d4a702
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:f3430023e46fe5404176fd48b93cc6008836d2454131f09b00c38dacc0147e2b
        version: 2.0.1-rh-4
      entries:
      - name: skupper-operator.v2.0.1-rh-4
        version: 2.0.1-rh-4
      - name: skupper-operator.v2.0.1-rh-2
        version: 2.0.1-rh-2
      - name: skupper-operator.v2.0.0-rh-11
        version: 2.0.0-rh-11
      name: stable-2.0
    - currentCSV: skupper-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessGrant",
                "metadata": {
                  "name": "my-grant"
                },
                "spec": {
                  "expirationWindow": "1h",
                  "redemptionsAllowed": 10
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessToken",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "ca": "-----BEGIN CERTIFICATE-----\nMIIDNzCCAh+ … Q=\n-----END CERTIFICATE-----\n",
                  "code": "L1qCl2mZ7D81gbXp3ax4YT0K",
                  "url": "https://10.107.241.191:9090/86b80f6b-2b02-47ac-bab4-d285bb4f7b9d"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnector",
                "metadata": {
                  "name": "backend",
                  "namespace": "other"
                },
                "spec": {
                  "port": 8080,
                  "selector": "app=backend",
                  "siteNamespace": "west"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnectorBinding",
                "metadata": {
                  "name": "backend",
                  "namespace": "west"
                },
                "spec": {
                  "connectorNamespace": "other",
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "west-certificate"
                },
                "spec": {
                  "client": true
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Connector",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "port": 8080,
                  "routingKey": "backend",
                  "selector": "app=backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Link",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "endpoints": [
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "inter-router",
                      "port": "55671"
                    },
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "edge",
                      "port": "45671"
                    }
                  ],
                  "tlsCredentials": "my-token"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "host": "backend",
                  "port": 8080,
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "RouterAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "SecuredAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Site",
                "metadata": {
                  "name": "west"
                },
                "spec": {
                  "ha": true,
                  "linkAccess": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
          createdAt: "2025-10-21T19:59:28Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessGrant
            name: accessgrants.skupper.io
            version: v2alpha1
          - kind: AccessToken
            name: accesstokens.skupper.io
            version: v2alpha1
          - kind: AttachedConnectorBinding
            name: attachedconnectorbindings.skupper.io
            version: v2alpha1
          - kind: AttachedConnector
            name: attachedconnectors.skupper.io
            version: v2alpha1
          - kind: Certificate
            name: certificates.skupper.io
            version: v2alpha1
          - kind: Connector
            name: connectors.skupper.io
            version: v2alpha1
          - kind: Link
            name: links.skupper.io
            version: v2alpha1
          - kind: Listener
            name: listeners.skupper.io
            version: v2alpha1
          - kind: RouterAccess
            name: routeraccesses.skupper.io
            version: v2alpha1
          - kind: SecuredAccess
            name: securedaccesses.skupper.io
            version: v2alpha1
          - kind: Site
            name: sites.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:ca6b432e34aa02e67e32f707bf1b4234760afc681a2561c19d85a503ecac00f0
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
        - registry.redhat.io/service-interconnect/skupper-kube-adaptor-rhel9@sha256:80cb17acc05e13c9aa3556d186a7ab8557085039db4105e21f0366d34b2074fe
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:d401f69273344a89767c1f385d74b7b5a4eb3b9552336dd097e06859e40ca4e5
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:912185defb2a16b8cc9070e5decc704f1a0b363858e26c19701655ea34adf35a
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:c0f5768b542346686b8bd0132238f047d644a2ea1a7e3692d6d947f8f977dc93
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        version: 2.1.2-rh-2
      entries:
      - name: skupper-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-operator.v2.1.1-rh-3
        version: 2.1.1-rh-3
      - name: skupper-operator.v2.0.1-rh-2
        version: 2.0.1-rh-2
      - name: skupper-operator.v2.0.0-rh-11
        version: 2.0.0-rh-11
      name: stable-2.1
    defaultChannel: stable-2
    packageName: skupper-operator
    provider:
      name: Red Hat
      url: https://skupper.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: eG Innovations
      provider-url: https://www.eginnovations.com
    name: eginnovations-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eginnovations-operator.v0.0.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eginnovations.com/v1beta1",
                "kind": "EgUniversalAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "eginnovations-operator"
                  },
                  "name": "eguniversalagent",
                  "namespace": "egagent"
                },
                "spec": {
                  "agent": {
                    "env": [
                      {
                        "name": "EG_MANAGER",
                        "value": "Replace with eG Manager IP"
                      },
                      {
                        "name": "EG_MANAGER_PORT",
                        "value": "Replace with eG Manager Port"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "true"
          containerImage: docker.io/eginnovations/universal-agent-operator@sha256:b8e3e26dca1b94fabfd79496feb36f3f2de4434331ef9ca810125892a936dca7
          createdAt: "2025-09-11T20:08:00Z"
          description: eG Innovations provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with eG Universal Agent Operator.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/eginnovations/universal-agent-operator
          support: eG Innovations
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EgUniversalAgent is the Schema for the eguniversalagents
              API
            displayName: Eg Universal Agent
            kind: EgUniversalAgent
            name: eguniversalagents.eginnovations.com
            version: v1beta1
        description: |
          eG Innovations’ converged application and infrastructure performance monitoring capabilities provide end-to-end visibility and correlated analytics for every layer, every tier of your IT landscape.

          The eG Enterprise Universal Agent Operator automatically configures a host agent on every Kubernetes worker node. The host agent auto-discovers the worker nodes and application containers running as Pods on each node and tracks their performance and utilization levels. In-depth monitoring of applications running on containers is also provided using the same host agent. No additional agents are required for the containers.

          ### Capabilities
            * Rolls out the egagent pod per node to monitor its pods and the node itself
            * Automatic BTM profiler injection using webhook based injection for deep application monitoring and transection tracing.

          ### Installation
            1. Create the namespace "egagent" for installing eG Agent on OpenShift Cluster.

               <br />``` $ oc create ns egagent ```
            2. Add "egagent" serviceaccount to scc( Security Context Constraints ) of OpenShift Cluster as privileged using below command.

               <br />``` $ oc adm policy add-scc-to-user privileged -z egagent -n egagent ```
            2. Install eG Innovations Universal Agent operator from [OpenShift Container Platform](https://www.openshift.com/) OperatorHub.
            3. Create the eG Universal Agent CRD (Custom Resource Definition)
               a. Click "View YAML Example" and copy the yaml contents and save it to (filename).yaml on your host.
               b. To apply the CRD run the following command

               <br />``` $ oc apply -f (filename).yaml ```

          ### Required Parameters
            * EG\_MANAGER, EG\_MANAGER\_PORT - provide the ip and port of your eG Manager Installation.

          ### Advanced Options
            * Disable Certificate Checking - disable any certificate validation that may interact poorly with proxies within your cluster
            * Image Override - use a copy of the eG Iniversal Agent container image from a registry other that Docker's or Red Hat's
            * Environment variables - define environment variables for the eG Universal Agent container of for APM profiler.
            * Namespace Selectors- select a subset of namesapces to enable instrumentation for applications.

          For complete list of supported parameters and the detailed documentation available in [eG Innovations Docs](https://docs.eginnovations.com)
        displayName: eG Innovations Universal Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Monitoring
        - Tracing
        links:
        - name: eG Innovations Kubernetes Monitoring Overview
          url: https://www.eginnovations.com/documentation/Kubernetes/Introduction-to-Monitoring-Kubernetes.htm
        maintainers:
        - email: devops@eginnovations.com
          name: eG Innovations
        maturity: beta
        minKubeVersion: 1.26.0
        provider:
          name: eG Innovations
          url: https://www.eginnovations.com
        relatedImages:
        - docker.io/eginnovations/universal-agent-operator@sha256:b8e3e26dca1b94fabfd79496feb36f3f2de4434331ef9ca810125892a936dca7
        - registry.connect.redhat.com/eginnovations/universal-agent-operator@sha256:65f851074e0e1db57a62b559c0f10f9d30543011727aec3b832f9a35468139e9
        version: 0.0.11
      entries:
      - name: eginnovations-operator.v0.0.11
        version: 0.0.11
      name: beta
    defaultChannel: beta
    packageName: eginnovations-operator
    provider:
      name: eG Innovations
      url: https://www.eginnovations.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Aqua Security, Inc.
      provider-url: ""
    name: aqua-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aqua-operator.2022.4.860
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaCsp",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "namespace": "aqua",
                    "version": "2022.4",
                    "requirements": true
                  },
                  "common": {
                    "dbDiskSize": 10,
                    "databaseSecret": {
                      "key": "db-password",
                      "name": "aqua-database-password"
                    }
                  },
                  "database": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  },
                  "gateway": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  },
                  "server": {
                    "replicas": 1,
                    "service": "LoadBalancer"
                  },
                  "route": true,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaDatabase",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "splitDB": false
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  },
                  "diskSize": 10,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "runAsNonRoot": false,
                  "gateway": {
                    "host": "aqua-gateway",
                    "port": 8443
                  },
                  "token": "<<your-token>>"
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaKubeEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "version": "2022.4",
                    "serviceAccount": "aqua-kube-enforcer-sa"
                  },
                  "config": {
                    "gateway_address": "aqua-gateway.aqua:8443",
                    "cluster_name": "aqua-secure",
                    "imagePullSecret": "aqua-registry"
                  },
                  "deploy": {
                    "service": "ClusterIP"
                  },
                  "starboard": {
                    "infra": {
                      "serviceAccount": "starboard-operator"
                    },
                    "config": {
                      "imagePullSecret": "aqua-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    }
                  },
                  "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>"
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaGateway",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  }
                },
                "runAsNonRoot": false
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaScanner",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "deploy": {
                    "replicas": 1
                  },
                  "env": [],
                  "runAsNonRoot": false,
                  "login": {
                    "username": "<<YOUR AQUA USER NAME>>",
                    "password": "<<YOUR AQUA USER PASSWORD>>",
                    "host": "http://aqua-server:8080"
                  }
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaServer",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "LoadBalancer"
                  }
                },
                "runAsNonRoot": false
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaLightning",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "global": {
                    "gateway_address": "aqua-gateway.aqua:8443",
                    "cluster_name": "Default-cluster-name"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry"
                  },
                  "kubeEnforcer": {
                    "infra": {
                      "serviceAccount": "aqua-kube-enforcer-sa"
                    },
                    "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>",
                    "deploy": {
                      "service": "ClusterIP"
                    },
                    "starboard": {
                      "infra": {
                        "serviceAccount": "aqua-kube-enforcer-sa"
                      },
                      "config": {
                        "imagePullSecret": "aqua-registry"
                      },
                      "deploy": {
                        "replicas": 1
                      }
                    },
                    "env": []
                  },
                  "enforcer": {
                    "infra": {
                      "serviceAccount": "aqua-sa",
                      "version": "2022.4"
                    },
                    "deploy": null,
                    "token": "<<ENFORCER_GROUP_TOKEN>>",
                    "env": [
                    ],
                    "secret": {
                      "name": null,
                      "key": null
                    },
                    "runAsNonRoot": null,
                    "rhcosVersion": null
                  }
                }
              },
            {
                  "apiVersion": "operator.aquasec.com/v1alpha1",
                  "kind": "AquaCloudConnector",
                  "metadata": {
                    "name": "aqua"
                  },
                  "spec": {
                    "infra": {
                      "serviceAccount": "aqua-sa",
                      "version": "2022.4"
                    },
                    "common": {
                      "imagePullSecret": "aqua-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    },
                    "runAsNonRoot": false,
                    "gateway": {
                      "host": "aqua-gateway",
                      "port": "8443"
                    },
                    "login": {
                      "host": "aqua-gateway:8443",
                      "password": "<<YOUR AQUA USER PASSWORD>>",
                      "token": "<<YOUR AQUA CLOUD CONNECTOR TOKEN>>",
                      "username": "<<YOUR AQUA USER NAME>>"
                    },
                    "tunnels": [
                      {
                        "host": "<account>.azurecr.io",
                        "port": "443"
                      },
                      {
                        "host": "gke.gcr.io",
                        "port": "443"
                      },
                      {
                        "host": "<account>.jfrog.io",
                        "port": "443"
                      },
                      {
                        "host": "1.1.1.1",
                        "port": "443"
                      },
                      {
                        "region": "us-east1",
                        "type": "ecr"
                      }
                    ]
                  }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "true"
          containerImage: registry.connect.redhat.com/aquasec/aquasec@sha256:4f80ed26014ffc3f08e078a8be96072fa211297000e306816f600e0a6d1d8fb1
          createdAt: ""
          description: The Aqua Security Operator runs within a Openshift cluster
            and provides a means to deploy and manage Aqua Security cluster and components.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=1.0.2 <2022.4.860'
          operators.operatorframework.io/internal-objects: '["aquastarboards.aquasecurity.github.io","configauditreports.aquasecurity.github.io",
            "clusterconfigauditreports.aquasecurity.github.io"]'
          repository: https://github.com/aquasecurity/aqua-operator
          support: Aqua Security, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Aqua Security CSP Deployment with Aqua Operator
            displayName: AquaCsp
            kind: AquaCsp
            name: aquacsps.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Lightning Enforcers Deployment with Aqua Operator
            displayName: AquaLightningEnforcers
            kind: AquaLightning
            name: aqualightnings.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Database Deployment with Aqua Operator
            displayName: AquaDatabase
            kind: AquaDatabase
            name: aquadatabases.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Enforcer Deployment with Aqua Operator
            displayName: AquaEnforcer
            kind: AquaEnforcer
            name: aquaenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security KubeEnforcer Deployment with Aqua Operator
            displayName: AquaKubeEnforcer
            kind: AquaKubeEnforcer
            name: aquakubeenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Gateway Deployment with Aqua Operator
            displayName: AquaGateway
            kind: AquaGateway
            name: aquagateways.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Scanner Deployment with Aqua Operator
            displayName: AquaScanner
            kind: AquaScanner
            name: aquascanners.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Server Deployment with Aqua Operator
            displayName: AquaServer
            kind: AquaServer
            name: aquaservers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Starboard for kube-enforcer.
            displayName: AquaStarboard
            kind: AquaStarboard
            name: aquastarboards.aquasecurity.github.io
            version: v1alpha1
          - description: Aqua Cloud Connector Deployment with Aqua Operator
            displayName: AquaCloudConnector
            kind: AquaCloudConnector
            name: aquacloudconnectors.operator.aquasec.com
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ClusterConfigAuditReport
            kind: ClusterConfigAuditReport
            name: clusterconfigauditreports.aquasecurity.github.io
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ConfigAuditReport
            kind: ConfigAuditReport
            name: configauditreports.aquasecurity.github.io
            version: v1alpha1
        description: |-
          The Aqua Security Operator runs within an OpenShift cluster and provides a means to deploy and manage the Aqua Security cluster and components :
          * Server (aka “console”)
          * Database (for production environments we recommend to use an external database and not the Aqua default database)
          * Gateway
          * Enforcer (aka “agent”)
          * KubeEnforcer
          * Scanner
          * CSP (package that contains the Server, Database, and Gateway)
          * LightningEnforcer (package that contains Enforcer and Kube Enforcer) - Do not deploy using Certified Operator.
          * AquaCloudConnector.

          Use the Aqua-Operator to
          * Deploy Aqua Security components on OpenShift
          * Scale up Aqua Security components with extra replicas
          * Assign metadata tags to Aqua Security components

          The Aqua Operator provides a few [Custom Resources](https://github.com/aquasecurity/aqua-operator/tree/master/config/crd) for managing the Aqua CSP platform.

          ## Prerequisites
          There are only 4 prerequisites:
          1. Verify that the OpenShift version is officially supported [Verify Here](https://docs.aquasec.com/saas/workload-protection/product-information/system-requirements/)
          2. Make sure you have a license and to obtain one, please contact Aqua Security at [Contact Us](mailto:cloudsales@aquasec.com).
          3. Create a new project for aqua

              ```oc new-project aqua```

          4. Create the secret for Aqua Database password. If you are using an External Database, make sure you use those credentials.
          NOTE: This step is optional and you can specify the Database password when creating the CRs.

              ```oc create secret generic aqua-database-password --from-literal=db-password=<password> -n aqua```

          Please note that for the certified operator, the Docker registry secret is NOT needed. For the Red Hat certified operator, the Aqua application images are stored in the Red Hat Connect registry and will be automatically pulled by the Aqua operator.

          ## Choosing the right channel

          Channels are a flexible publishing mechanism that offers you different Aqua versions to deploy, at any point. These channels map to their respective Aqua versions, describing the maturity based on where they are in their lifecycle:
          * 4.6: This maps to the older version of Aqua 4.6.0
          * 5.0: This maps to the Aqua version 5.0.0
          * 5.3: This maps to the Aqua version 5.3.0
          * 6.0: This maps to the Aqua version 6.0.0
          * 6.2: This maps to the Aqua version 6.2.0
          * 6.5: This maps to the Aqua version 6.5.0
          * 2022.4: This is the latest and greatest version of Aqua (default)

          ## Deploying the Aqua Operator

          Aqua Operator follows an easy push button deployment that installs the operator in its own aqua namespace.
          Please refer to the instructions [here](https://github.com/aquasecurity/aqua-operator/blob/2022.4.0/docs/DeployOpenShiftOperator.md).

          ## Configuring the Aqua Operator

          Operators leverage CRDs as a configuration mechanism for the application. Aqua offers a number of CRDs that can be tweaked and configured as per your needs. Please refer to this [link](https://github.com/aquasecurity/aqua-operator/blob/6.2.0/docs/DeployOpenShiftOperator.md#aquacsp-crds) for Custom Resource examples for popular scenarios.

          ## Support

          For support please contact support@aquasec.com.
        displayName: Aqua Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - aqua-security
        - scanning
        - security
        - runtime-security
        links:
        - name: Aqua Security
          url: https://www.aquasec.com/
        - name: Aqua Operator Github
          url: https://github.com/aquasecurity/aqua-operator
        maintainers:
        - email: support@aquasec.com
          name: Aqua Support, Aqua Security
        maturity: alpha
        provider:
          name: Aqua Security, Inc.
        relatedImages:
        - registry.connect.redhat.com/aquasec/aquasec@sha256:4f80ed26014ffc3f08e078a8be96072fa211297000e306816f600e0a6d1d8fb1
        - registry.connect.redhat.com/aquasec/kube-bench@sha256:ee897dfaaa5db7d71c619f8df77f35407d522cd3de998d6b9d7ab7045fc18398
        - registry.connect.redhat.com/aquasec/console@sha256:94bc4ba34a0821bd1e563a3120757907aeab9bd927896dc88c7bef8f63e809fb
        - registry.connect.redhat.com/aquasec/gateway@sha256:224d105b6377b95132b817836e6ac958f50f8263c253131c7502a80d00acfb1c
        - registry.connect.redhat.com/aquasec/kube-enforcer@sha256:f4e6bfd885c0cb7d725cbf202a2c12f91822582594e3d08b930a7bd6a17b3bfd
        - registry.connect.redhat.com/aquasec/scanner@sha256:29a6c291b749e648151402e9dc1673cfc6bee8506a8a9fa0f502ff74b67fc32f
        - registry.connect.redhat.com/aquasec/aquasec-operator-bundle@sha256:ee3bb301dd248c9d367e90c5c8f8b9ce7fa1b21b59394f56a9b6b3ad6bdc2f70
        - registry.connect.redhat.com/aquasec/cloud-connector@sha256:f9da1936ac5e4b8e4537dca69f920c682fb9fac98d091680e01d2122f2b0f85f
        - registry.connect.redhat.com/aquasec/starboard@sha256:e57d0b89c3118d0b552eb59b1b4ada090597620d45d966a71da495f7841ad411
        - registry.connect.redhat.com/aquasec/database@sha256:c91ae82b0179c3ec4e156835a9f23b66767ba15514ff33fb268b35d8f04d6fde
        - registry.connect.redhat.com/aquasec/enforcer@sha256:22fa84ded89046e349ea31ce5dd4b1b269df797bf72e91d50ab47de0530f7cb1
        version: 2022.4.860
      entries:
      - name: aqua-operator.2022.4.860
        version: 2022.4.860
      - name: aqua-operator.2022.4.848
        version: 2022.4.848
      - name: aqua-operator.2022.4.836
        version: 2022.4.836
      - name: aqua-operator.2022.4.829
        version: 2022.4.829
      - name: aqua-operator.2022.4.818
        version: 2022.4.818
      - name: aqua-operator.2022.4.805
        version: 2022.4.805
      - name: aqua-operator.2022.4.760
        version: 2022.4.760
      - name: aqua-operator.2022.4.759
        version: 2022.4.759
      - name: aqua-operator.2022.4.720
        version: 2022.4.720
      - name: aqua-operator.2022.4.683
        version: 2022.4.683
      - name: aqua-operator.2022.4.662
        version: 2022.4.662
      - name: aqua-operator.2022.4.588
        version: 2022.4.588
      - name: aqua-operator.2022.4.587
        version: 2022.4.587
      - name: aqua-operator.2022.4.519
        version: 2022.4.519
      - name: aqua-operator.2022.4.518
        version: 2022.4.518
      name: "2022.4"
    defaultChannel: "2022.4"
    packageName: aqua-operator-certified
    provider:
      name: Aqua Security, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Fossul Framework
      provider-url: https://github.com/fossul/fossul
    name: fossul-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fossul-operator.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"fossul.io/v1\",\n    \"kind\":
            \"Backup\",\n    \"metadata\": {\n      \"name\": \"mariadb-sample\"\n
            \   },\n    \"spec\": {\n      \"deployment_name\": \"mariadb\",\n      \"policy\":
            \"daily\"\n    }\n  },\n  {\n    \"apiVersion\": \"fossul.io/v1\",\n    \"kind\":
            \"Restore\",\n    \"metadata\": {\n      \"name\": \"mariadb-sample\"\n
            \   },\n    \"spec\": {\n      \"deployment_name\": \"mariadb\",\n      \"policy\":
            \"daily\",\n      \"workflow_id\": \"xxxx\"\n    }\n  },        \n  {\n
            \   \"apiVersion\": \"fossul.io/v1\",\n    \"kind\": \"BackupConfig\",\n
            \   \"metadata\": {\n      \"name\": \"mariadb-sample\"\n    },\n    \"spec\":
            {\n      \"container_platform\": \"openshift\",\n      \"operator_controlled\":
            true,\n      \"auto_discovery\": false,\n      \"deployment_name\": \"mariadb\",\n
            \     \"deployment_type\": \"DeploymentConfig\",\n      \"job_retention\":
            50,\n      \"overwrite_pcv_on_restore\": true,\n      \"policies\": [\n
            \       {\n          \"policy\": \"hourly\",\n          \"retentionNumber\":
            3\n        },\n        {\n          \"policy\": \"daily\",\n          \"retentionNumber\":
            10\n        }\n      ],\n      \"pvc_deletion_timeout\": 300,\n      \"restore_to_new_pvc\":
            false,\n      \"snapshot_timeout\": 180,\n      \"storage_plugin\": \"csi.so\",\n
            \     \"app_plugin\": \"mariadb.so\"\n    }\n  },\n  {\n    \"apiVersion\":
            \"fossul.io/v1\",\n    \"kind\": \"BackupSchedule\",\n    \"metadata\":
            {\n      \"name\": \"mariadb-sample\"\n    },\n    \"spec\": {\n      \"cron_schedule\":
            \"59 23 * * *\",\n      \"deployment_name\": \"mariadb\",\n      \"policy\":
            \"daily\"\n\n    }\n  },\n  {\n    \"apiVersion\": \"fossul.io/v1\",\n
            \   \"kind\": \"Fossul\",\n    \"metadata\": {\n      \"name\": \"fossul-sample\"\n
            \   },\n    \"spec\": {\n      \"enable_routes\": false,\n      \"enable_virtualmachines\":
            false,\n      \"container_platform\": \"openshift\"\n    }\n  }\n]"
          capabilities: Full Lifecycle
          categories: Storage
          certified: "false"
          containerImage: quay.io/fossul/fossul-operator:v0.6.0
          createdAt: "2022-01-25T20:09:00Z"
          description: Fossul is a application centric container native backup and
            restore framework for databases or applications
          operators.operatorframework.io/builder: operator-sdk-v1.10.1-ocp
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/fossul/fossul
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Manages application backup configurations
            kind: BackupConfig
            name: backupconfigs.fossul.io
            version: v1
          - description: Manages application backups
            kind: Backup
            name: backups.fossul.io
            version: v1
          - description: Manages application restores
            kind: Restore
            name: restores.fossul.io
            version: v1
          - description: Manages application backup scheduling
            kind: BackupSchedule
            name: backupschedules.fossul.io
            version: v1
          - description: Manages deployment of the Fossul Framework
            kind: Fossul
            name: fossuls.fossul.io
            version: v1
        description: "## Fossul Framework\nApplication backup and restore framework
          for container native applications on Kubernetes and OpenShift. Fossul provides
          application centric backup and recovery enabling integration with the application
          creating an application consistent backup. Since there are many applications
          and providers for storage or archive Fossul enables plugins that allow proper
          integration. Fossul provides plugins for postgresql, mariadb, mysql and
          mongo as well as plugin to integrate with CSI snapshots. Plugins can be
          written in any language. The Fossul operator deploys Fossul via the Fossul
          custom resource and additionally provides BackupConfig, Backup, BackupSchedule
          and Restore custom resources. Each user can configure and manage their own
          backups with simple custom resources that can be part of CI/CD or source
          control. Users can also opt to manage backups through Fossul CLI/API instead
          of the custom resources provided by the operator.\n\n## Installation\nIt
          is recommended to install the operator into the openshift-operators namespace
          which is the default location for operators. Once the operator is installed
          create a new project called ```fossul``` and create the Fossul custom resource
          under the fossul namespace. This will deploy the Fossul Framework. You can
          choose another namespace for the Fossul Framework but then also need to
          provide the optional 'fossul_namespace' parameter with the spec for all
          the additional custom resources. This is required so the Fossul operator
          can communicate with Fossul.\n\nOnce Fossul is deployed you can manage backups
          either through custom resources provided by the operator or the Fossul CLI/API.
          If using the customer resources, first create a BackupConfig custom resource
          for every application you want to backup. Once that is done, you can optionally
          create a backup by simply creating a Backup custom resource. You can also
          create a BackupSchedule custom resource using cron syntax which will schedule
          your backup to occur on a regular interval or do so via a Kubernetes job.
          Finally if a backup has been created you can perform a restore through a
          custom resource as well, providing the workflow id from the completed backup.
          If you are creating backups through the custom resource the workflow id
          will be appended to the spec once the backup completes. If you are using
          the Fossul CLI/API to create backups you will need to get the workflow id
          through the Fossul CLI/API directly using the backupList action.\n\nFor
          users of the cli, a cli pod is deployed with credentials and if desired
          you can create or manage backups from within that pod. To use the API you
          need the credentials stored in the fossul secret. The cli has already been
          pre-configured with these credentials. The API can also be optionally exposed
          via routes and API documentation is under ```/api/v1/index.html```.\n\n##
          Quick Setup\nWhen creating Fossul custom resources generally you will only
          need to update the ```deployment_name``` and ```deployment_type``` (DeploymentConfig,
          Deployment or VirtualMachine). All custom resources must be created in the
          namespace where the database or application exists. \n\n### Deploy Fossul
          in fossul namespace\n```$ oc new-project fossul```\n<pre>\n$ vi fossul.yaml\nkind:
          Fossul\napiVersion: fossul.io/v1\nmetadata:\n  name: fossul-sample\n  namespace:
          fossul\nspec: {}\n</pre>\n```$ oc create -f fossul.yaml```\n\n### Deploy
          Mariadb Database\nMake sure you create all Fossul custom resources in the
          same namespace as the database, application or virtual machine\n\n### Create
          MariaDB Fossul BackupConfig\nCreates a backup configuration for MariaDB
          or MySQL databases\n\n```$ vi backupconfig.yaml```\n<pre>\nkind: BackupConfig\napiVersion:
          fossul.io/v1\nmetadata:\n  name: mariadb-sample\n  namespace: databases\nspec:\n
          \ container_platform: openshift\n  operator_controlled: true\n  auto_discovery:
          false\n  deployment_name: mariadb\n  deployment_type: DeploymentConfig\n
          \ job_retention: 50\n  overwrite_pcv_on_restore: true\n  policies:\n    -
          policy: hourly\n      retentionNumber: 3\n    - policy: daily\n      retentionNumber:
          10\n  pvc_deletion_timeout: 300\n  restore_to_new_pvc: false\n  snapshot_timeout:
          180\n  storage_plugin: csi.so\n  app_plugin: mariadb.so \n</pre>\n```$ oc
          create -f backupconfig.yaml```\n\n### Create PostgreSQL Fossul BackupConfig\nCreates
          a backup config for PostgreSQL databases, you need to ensure the user defined
          in secret has backup permissions\n\n```$ vi backupconfig.yaml```\n<pre>\nkind:
          BackupConfig\napiVersion: fossul.io/v1\nmetadata:\n  name: postgresql-sample\n
          \ namespace: databases\nspec:\n  container_platform: openshift\n  operator_controlled:
          true    \n  auto_discovery: false\n  deployment_name: postgresql \n  deployment_type:
          DeploymentConfig\n  job_retention: 50\n  overwrite_pcv_on_restore: true\n
          \ policies:\n    - policy: hourly\n      retentionNumber: 3\n    - policy:
          daily\n      retentionNumber: 10\n  pvc_deletion_timeout: 300\n  restore_to_new_pvc:
          false\n  snapshot_timeout: 180\n  storage_plugin: csi.so\n  app_plugin:
          postgres.so \n</pre>\n```$ oc create -f backupconfig.yaml```\n\n### Create
          Kubevirt Fossul BackupConfig\nCreates a backup configuration for virtual
          machines\n\n```$ vi backupconfig.yaml```\n<pre>\nkind: BackupConfig\napiVersion:
          fossul.io/v1\nmetadata:\n  name: rhel8-vm-sample\n  namespace: virtualmachines\nspec:\n
          \ container_platform: openshift\n  operator_controlled: true    \n  auto_discovery:
          false\n  deployment_name: rhel8-vm\n  deployment_type: VirtualMachine\n
          \ job_retention: 50\n  overwrite_pcv_on_restore: true\n  policies:\n    -
          policy: hourly\n      retentionNumber: 3\n    - policy: daily\n      retentionNumber:
          10\n  pvc_deletion_timeout: 300\n  restore_to_new_pvc: false\n  snapshot_timeout:
          180\n  storage_plugin: csi.so\n  app_plugin: kubevirt.so \n</pre>\n```$
          oc create -f backupconfig.yaml```\n\n### Create Tar Fossul BackupConfig\nCreates
          a backup config using tar to backup folders and files where csi snapshots
          are not desired\n\n```$ vi backupconfig.yaml```\n<pre>\nkind: BackupConfig\napiVersion:
          fossul.io/v1\nmetadata:\n  name: tar-sample\n  namespace: databases\nspec:\n
          \ container_platform: openshift\n  operator_controlled: true    \n  auto_discovery:
          false\n  deployment_name: anyname\n  job_retention: 50\n  policies:\n    -
          policy: hourly\n      retentionNumber: 3\n    - policy: daily\n      retentionNumber:
          10\n  backup_source_paths: /opt/app-root/src/test\n  storage_plugin: tar.so\n</pre>\n```$
          oc create -f backupconfig.yaml```\n\n### Create BackupSchedule\nA backup
          can be scheduled per policy, defined by backup configuration using cron
          syntax\n\n```$ vi backupschedule.yaml```\n<pre>\nkind: BackupSchedule\napiVersion:
          fossul.io/v1\nmetadata:\n  name: mariadb-sample\n  namespace: databases\nspec:\n
          \ cron_schedule: '59 23 * * *'\n  deployment_name: mariadb\n  policy: daily\n</pre>\n```$
          oc create -f backupschedule.yaml```\n\n### Create Backup\nA backup will
          be created according to policy and deleted either manually or as defined
          in retention policy\n\n```$ vi backup.yaml```\n<pre>\nkind: Backup\napiVersion:
          fossul.io/v1\nmetadata:\n  name: mariadb-sample\n  namespace: databases\nspec:\n
          \ deployment_name: mariadb\n  policy: daily\n</pre>\n```$ oc create -f backup.yaml```\n\n###
          Perform Restore\nA restore requires a workflow_id located in the backup
          spec, upon a successful restore the custom resource will deleted automatically\n\n```$
          vi restore.yaml```\n<pre>\nkind: Restore\napiVersion: fossul.io/v1\nmetadata:\n
          \ name: mariadb-sample\n  namespace: databases\nspec:\n  deployment_name:
          mariadb\n  policy: daily\n  workflow_id: xxxx\n</pre>\n```$ oc create -f
          restore.yaml```\n"
        displayName: Fossul Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - application
        - consistent
        links:
        - name: Fossul Framework Community
          url: https://github.com/fossul/fossul
        maintainers:
        - email: ktenzer@redhat.com
          name: Keith Tenzer
        maturity: alpha
        provider:
          name: Fossul Framework
          url: https://github.com/fossul/fossul
        relatedImages:
        - quay.io/openshift-community-operators/fossul-operator@sha256:95c043ddc818f44a303e27508e0acdcbbcb3d9b1329712c85a8e3fd4cb647e9a
        - quay.io/fossul/fossul-operator:v0.6.0
        version: 0.6.0
      entries:
      - name: fossul-operator.v0.6.0
        version: 0.6.0
      - name: fossul-operator.v0.5.0
        version: 0.5.0
      - name: fossul-operator.v0.4.0
        version: 0.4.0
      - name: fossul-operator.v0.3.0
        version: 0.3.0
      - name: fossul-operator.v0.2.0
        version: 0.2.0
      - name: fossul-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: fossul-operator
    provider:
      name: Fossul Framework
      url: https://github.com/fossul/fossul
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: NGINX Inc
      provider-url: ""
    name: nginx-ingress-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nginx-ingress-operator.v3.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.nginx.org/v1alpha1",
                "kind": "NginxIngress",
                "metadata": {
                  "name": "nginxingress-sample"
                },
                "spec": {
                  "controller": {
                    "affinity": {},
                    "annotations": {},
                    "appprotect": {
                      "enable": false
                    },
                    "appprotectdos": {
                      "debug": false,
                      "enable": false,
                      "maxDaemons": 0,
                      "maxWorkers": 0,
                      "memory": 0
                    },
                    "autoscaling": {
                      "annotations": {},
                      "behavior": {},
                      "enabled": false,
                      "maxReplicas": 3,
                      "minReplicas": 1,
                      "targetCPUUtilizationPercentage": 50,
                      "targetMemoryUtilizationPercentage": 50
                    },
                    "config": {
                      "annotations": {},
                      "entries": {}
                    },
                    "containerPort": {
                      "http": 80,
                      "https": 443
                    },
                    "customConfigMap": "",
                    "customPorts": [],
                    "defaultHTTPListenerPort": 80,
                    "defaultHTTPSListenerPort": 443,
                    "defaultTLS": {
                      "cert": "",
                      "key": "",
                      "secret": ""
                    },
                    "disableIPV6": false,
                    "dnsPolicy": "ClusterFirst",
                    "enableCertManager": false,
                    "enableCustomResources": true,
                    "enableExternalDNS": false,
                    "enableLatencyMetrics": false,
                    "enableOIDC": false,
                    "enableSSLDynamicReload": true,
                    "enableSnippets": false,
                    "enableTLSPassthrough": false,
                    "env": [],
                    "extraContainers": [],
                    "globalConfiguration": {
                      "create": false,
                      "spec": {}
                    },
                    "healthStatus": false,
                    "healthStatusURI": "/nginx-health",
                    "hostNetwork": false,
                    "hostPort": {
                      "enable": false,
                      "http": 80,
                      "https": 443
                    },
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "nginx/nginx-ingress",
                      "tag": "5.3.1-ubi"
                    },
                    "ingressClass": {
                      "create": true,
                      "name": "nginx",
                      "setAsDefaultIngress": false
                    },
                    "initContainerResources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "initContainers": [],
                    "kind": "deployment",
                    "lifecycle": {},
                    "logFormat": "glog",
                    "logLevel": "info",
                    "mgmt": {
                      "licenseTokenSecretName": "license-token"
                    },
                    "minReadySeconds": 0,
                    "name": "controller",
                    "nginxDebug": false,
                    "nginxReloadTimeout": 60000,
                    "nginxStatus": {
                      "allowCidrs": "127.0.0.1",
                      "enable": true,
                      "port": 8080
                    },
                    "nginxplus": false,
                    "pod": {
                      "annotations": {},
                      "extraLabels": {}
                    },
                    "podDisruptionBudget": {
                      "annotations": {},
                      "enabled": false
                    },
                    "readOnlyRootFilesystem": false,
                    "readyStatus": {
                      "enable": true,
                      "initialDelaySeconds": 0,
                      "port": 8081
                    },
                    "replicaCount": 1,
                    "reportIngressStatus": {
                      "annotations": {},
                      "enable": true,
                      "enableLeaderElection": true,
                      "ingressLink": "",
                      "leaderElectionLockName": "nginx-ingress-leader"
                    },
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "selectorLabels": {},
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "create": true,
                      "customPorts": [],
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraLabels": {},
                      "httpPort": {
                        "enable": true,
                        "port": 80,
                        "targetPort": 80
                      },
                      "httpsPort": {
                        "enable": true,
                        "port": 443,
                        "targetPort": 443
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "type": "LoadBalancer"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "imagePullSecretName": "",
                      "imagePullSecretsNames": []
                    },
                    "shareProcessNamespace": false,
                    "strategy": {},
                    "terminationGracePeriodSeconds": 30,
                    "tlsPassthroughPort": 443,
                    "tolerations": [],
                    "volumeMounts": [],
                    "volumes": [],
                    "watchNamespace": "",
                    "watchNamespaceLabel": "",
                    "watchSecretNamespace": "",
                    "wildcardTLS": {
                      "cert": "",
                      "key": "",
                      "secret": ""
                    }
                  },
                  "nginxServiceMesh": {
                    "enable": false,
                    "enableEgress": false
                  },
                  "prometheus": {
                    "create": true,
                    "port": 9113,
                    "scheme": "http",
                    "secret": "",
                    "service": {
                      "create": false,
                      "labels": {
                        "service": "nginx-ingress-prometheus-service"
                      }
                    },
                    "serviceMonitor": {
                      "create": false,
                      "endpoints": [
                        {
                          "port": "prometheus"
                        }
                      ],
                      "labels": {},
                      "selectorMatchLabels": {
                        "service": "nginx-ingress-prometheus-service"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "serviceInsight": {
                    "create": false,
                    "port": 9114,
                    "scheme": "http",
                    "secret": ""
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Networking
          certified: "true"
          containerImage: quay.io/nginx/nginx-ingress-operator@sha256:d304c31f6bad9b06eda91a4a685f41348680da3c43fb26dfbae0e508b4e0be64
          createdAt: "2025-12-17T16:13:02Z"
          description: The NGINX Ingress Operator is a Kubernetes/OpenShift component
            which deploys and manages one or more NGINX/NGINX Plus Ingress Controllers
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: nginx-ingress
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/nginx/nginx-ingress-helm-operator
          support: NGINX Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The `NginxIngress` Custom Resource is the definition of a
              deployment of the Ingress Controller.
            displayName: Nginx Ingress Controller
            kind: NginxIngress
            name: nginxingresses.charts.nginx.org
            version: v1alpha1
        description: The NGINX Ingress Operator is a Kubernetes/OpenShift component
          which deploys and manages one or more NGINX/NGINX Plus Ingress Controllers
        displayName: Nginx Ingress Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nginx
        - ingress-controller
        - ingress
        - controller
        - kubernetes
        - openshift
        links:
        - name: Nginx Ingress Operator
          url: https://github.com/nginx/nginx-ingress-helm-operator
        maintainers:
        - email: kubernetes@nginx.com
          name: NGINX Inc
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: NGINX Inc
        relatedImages:
        - registry.connect.redhat.com/nginx/nginx-ingress-operator-bundle@sha256:d7572b2333b06a085849f284b9abc800b2bc2d3ce040747813e65193f52b9578
        - quay.io/brancz/kube-rbac-proxy@sha256:f5fbfec6a2b28726763880345f231d293fabb016f7abf6ad725c884bb0508edd
        - quay.io/nginx/nginx-ingress-operator@sha256:d304c31f6bad9b06eda91a4a685f41348680da3c43fb26dfbae0e508b4e0be64
        version: 3.4.1
      entries:
      - name: nginx-ingress-operator.v3.4.1
        version: 3.4.1
      - name: nginx-ingress-operator.v3.4.0
        version: 3.4.0
      - name: nginx-ingress-operator.v3.3.1
        version: 3.3.1
      name: alpha
    defaultChannel: alpha
    packageName: nginx-ingress-operator
    provider:
      name: NGINX Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stackwatch
      provider-url: www.kubecost.com
    name: kubecost
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubecost.v2.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.kubecost.com/v1alpha1",
                "kind": "CostAnalyzer",
                "metadata": {
                  "name": "costanalyzer-sample"
                },
                "spec": {
                  "global": {
                    "prometheus": {
                      "enabled": true,
                      "fqdn": "http://cost-analyzer-prometheus-server.default.svc"
                    },
                    "grafana": {
                      "enabled": false,
                      "domainName": "cost-analyzer-grafana.default.svc",
                      "scheme": "http",
                      "proxy": false
                    },
                    "gcpstore": {
                      "enabled": false
                    },
                    "gmp": {
                      "enabled": false,
                      "prometheusServerEndpoint": "http://localhost:8085/",
                      "gmpProxy": {
                        "enabled": false,
                        "image": "gke.gcr.io/prometheus-engine/frontend:v0.4.1-gke.0",
                        "imagePullPolicy": "Always",
                        "name": "gmp-proxy",
                        "port": 8085,
                        "projectId": "YOUR_PROJECT_ID"
                      }
                    },
                    "amp": {
                      "enabled": false,
                      "prometheusServerEndpoint": "http://localhost:8005/workspaces/<workspaceId>/",
                      "remoteWriteService": "https://aps-workspaces.us-west-2.amazonaws.com/workspaces/<workspaceId>/api/v1/remote_write",
                      "sigv4": {
                        "region": "us-west-2"
                      }
                    },
                    "mimirProxy": {
                      "enabled": false,
                      "name": "mimir-proxy",
                      "image": "nginxinc/nginx-unprivileged",
                      "port": 8085,
                      "mimirEndpoint": "$mimir_endpoint",
                      "orgIdentifier": "$your_tenant_ID"
                    },
                    "notifications": {
                      "alertmanager": {
                        "enabled": false,
                        "fqdn": "http://cost-analyzer-prometheus-server.default.svc"
                      }
                    },
                    "savedReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Example Saved Report 0",
                          "window": "today",
                          "aggregateBy": "namespace",
                          "chartDisplay": "category",
                          "idle": "separate",
                          "rate": "cumulative",
                          "accumulate": false,
                          "filters": [
                            {
                              "key": "cluster",
                              "operator": ":",
                              "value": "dev"
                            }
                          ]
                        },
                        {
                          "title": "Example Saved Report 1",
                          "window": "month",
                          "aggregateBy": "controllerKind",
                          "chartDisplay": "category",
                          "idle": "share",
                          "rate": "monthly",
                          "accumulate": false,
                          "filters": [
                            {
                              "key": "namespace",
                              "operator": "!:",
                              "value": "kubecost"
                            }
                          ]
                        },
                        {
                          "title": "Example Saved Report 2",
                          "window": "2020-11-11T00:00:00Z,2020-12-09T23:59:59Z",
                          "aggregateBy": "service",
                          "chartDisplay": "category",
                          "idle": "hide",
                          "rate": "daily",
                          "accumulate": true,
                          "filters": []
                        }
                      ]
                    },
                    "assetReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Example Asset Report 0",
                          "window": "today",
                          "aggregateBy": "type",
                          "accumulate": false,
                          "filters": [
                            {
                              "property": "cluster",
                              "value": "cluster-one"
                            }
                          ]
                        }
                      ]
                    },
                    "advancedReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Example Advanced Report 0",
                          "window": "7d",
                          "aggregateBy": "namespace",
                          "filters": [
                            {
                              "key": "cluster",
                              "operator": ":",
                              "value": "dev"
                            }
                          ],
                          "cloudBreakdown": "service",
                          "cloudJoin": "label:kubernetes_namespace"
                        }
                      ]
                    },
                    "cloudCostReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Cloud Cost Report 0",
                          "window": "today",
                          "aggregateBy": "service",
                          "accumulate": false
                        }
                      ]
                    },
                    "podAnnotations": {},
                    "additionalLabels": {},
                    "securityContext": {
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      },
                      "fsGroup": 1001,
                      "runAsGroup": 1001,
                      "runAsUser": 1001,
                      "fsGroupChangePolicy": "OnRootMismatch"
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "platforms": {
                      "openshift": {
                        "enabled": true,
                        "route": {
                          "enabled": false,
                          "annotations": {}
                        },
                        "scc": {
                          "nodeExporter": false,
                          "networkCosts": false
                        },
                        "securityContext": {
                          "runAsNonRoot": true,
                          "seccompProfile": {
                            "type": "RuntimeDefault"
                          }
                        }
                      },
                      "cicd": {
                        "enabled": true,
                        "skipSanityChecks": true
                      }
                    }
                  },
                  "upgrade": {
                    "toV2": false
                  },
                  "kubecostToken": null,
                  "pricingCsv": {
                    "enabled": false,
                    "location": {
                      "provider": "AWS",
                      "region": "us-east-1",
                      "URI": "s3://kc-csv-test/pricing_schema.csv",
                      "csvAccessCredentials": "pricing-schema-access-secret"
                    }
                  },
                  "saml": {
                    "enabled": false,
                    "rbac": {
                      "enabled": false
                    }
                  },
                  "oidc": {
                    "enabled": false,
                    "clientID": "",
                    "clientSecret": "",
                    "existingCustomSecret": {
                      "enabled": false,
                      "name": ""
                    },
                    "skipOnlineTokenValidation": false,
                    "rbac": {
                      "enabled": false
                    }
                  },
                  "systemProxy": {
                    "enabled": false,
                    "httpProxyUrl": "",
                    "httpsProxyUrl": "",
                    "noProxy": ""
                  },
                  "kubecostFrontend": {
                    "enabled": true,
                    "deployMethod": "singlepod",
                    "haReplicas": 2,
                    "image": "gcr.io/kubecost1/frontend",
                    "imagePullPolicy": "Always",
                    "resources": {
                      "requests": {
                        "cpu": "10m",
                        "memory": "55Mi"
                      }
                    },
                    "deploymentStrategy": {},
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 1,
                      "periodSeconds": 5,
                      "failureThreshold": 6
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 1,
                      "periodSeconds": 5,
                      "failureThreshold": 6
                    },
                    "ipv6": {
                      "enabled": true
                    },
                    "useDefaultFqdn": false
                  },
                  "kubecostMetrics": {
                    "exporter": {
                      "enabled": false,
                      "port": 9005,
                      "prometheusScrape": true,
                      "resources": {},
                      "tolerations": [],
                      "affinity": {},
                      "service": {
                        "annotations": {}
                      },
                      "serviceMonitor": {
                        "enabled": false,
                        "additionalLabels": {},
                        "metricRelabelings": [],
                        "relabelings": []
                      },
                      "priorityClassName": "",
                      "additionalLabels": {},
                      "nodeSelector": {},
                      "extraArgs": []
                    }
                  },
                  "sigV4Proxy": {
                    "image": "public.ecr.aws/aws-observability/aws-sigv4-proxy:latest",
                    "imagePullPolicy": "Always",
                    "name": "aps",
                    "port": 8005,
                    "region": "us-west-2",
                    "host": "aps-workspaces.us-west-2.amazonaws.com",
                    "extraEnv": null,
                    "resources": {}
                  },
                  "kubecostModel": {
                    "image": "gcr.io/kubecost1/cost-model",
                    "imagePullPolicy": "Always",
                    "outOfClusterPromMetricsEnabled": false,
                    "warmCache": false,
                    "etl": true,
                    "etlFileStoreEnabled": true,
                    "etlDailyStoreDurationDays": 91,
                    "etlHourlyStoreDurationHours": 49,
                    "etlWeeklyStoreDurationWeeks": 53,
                    "etlReadOnlyMode": false,
                    "plugins": {
                      "enabled": false,
                      "install": {
                        "enabled": false,
                        "fullImageName": "curlimages/curl:latest",
                        "securityContext": {
                          "allowPrivilegeEscalation": false,
                          "seccompProfile": {
                            "type": "RuntimeDefault"
                          },
                          "capabilities": {
                            "drop": [
                              "ALL"
                            ]
                          },
                          "readOnlyRootFilesystem": true,
                          "runAsNonRoot": true,
                          "runAsUser": 1001
                        }
                      },
                      "folder": "/opt/opencost/plugin",
                      "enabledPlugins": [],
                      "configSecret": "kubecost-plugin-secret"
                    },
                    "cloudCost": {
                      "labelList": {
                        "IsIncludeList": false,
                        "labels": ""
                      },
                      "topNItems": 1000
                    },
                    "allocation": null,
                    "containerStatsEnabled": true,
                    "maxQueryConcurrency": 5,
                    "resources": {
                      "requests": {
                        "cpu": "200m",
                        "memory": "55Mi"
                      }
                    },
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "extraArgs": [],
                    "ingress": {
                      "enabled": false,
                      "labels": null,
                      "annotations": null,
                      "paths": [
                        "/"
                      ],
                      "pathType": "ImplementationSpecific",
                      "hosts": [
                        "cost-analyzer-model.local"
                      ],
                      "tls": []
                    },
                    "utcOffset": "+00:00",
                    "extraPorts": []
                  },
                  "etlUtils": {
                    "enabled": false,
                    "fullImageName": null,
                    "resources": {},
                    "env": {},
                    "nodeSelector": {},
                    "tolerations": {},
                    "affinity": {}
                  },
                  "ingress": {
                    "enabled": false,
                    "labels": null,
                    "annotations": null,
                    "paths": [
                      "/"
                    ],
                    "pathType": "ImplementationSpecific",
                    "hosts": [
                      "cost-analyzer.local"
                    ],
                    "tls": []
                  },
                  "nodeSelector": {},
                  "tolerations": [],
                  "affinity": {},
                  "topologySpreadConstraints": [],
                  "priority": {
                    "enabled": false,
                    "name": ""
                  },
                  "networkPolicy": {
                    "enabled": false,
                    "denyEgress": true,
                    "sameNamespace": true,
                    "costAnalyzer": {
                      "enabled": false,
                      "annotations": {},
                      "additionalLabels": {}
                    }
                  },
                  "extraVolumes": [],
                  "extraVolumeMounts": [],
                  "persistentVolume": {
                    "size": "32Gi",
                    "dbSize": "32.0Gi",
                    "enabled": true,
                    "labels": {},
                    "annotations": {},
                    "dbPVEnabled": false
                  },
                  "service": {
                    "type": "ClusterIP",
                    "port": 9090,
                    "targetPort": 9090,
                    "nodePort": {},
                    "labels": {},
                    "annotations": {},
                    "sessionAffinity": {
                      "enabled": false,
                      "timeoutSeconds": 10800
                    }
                  },
                  "prometheus": {
                    "rbac": {
                      "create": true
                    },
                    "serviceAccounts": {
                      "alertmanager": {
                        "create": true,
                        "name": null
                      },
                      "nodeExporter": {
                        "create": true,
                        "name": null
                      },
                      "pushgateway": {
                        "create": true,
                        "name": null
                      },
                      "server": {
                        "create": true,
                        "name": null,
                        "annotations": {}
                      }
                    },
                    "imagePullSecrets": null,
                    "extraScrapeConfigs": "- job_name: kubecost\n  honor_labels: true\n  scrape_interval: 1m\n  scrape_timeout: 60s\n  metrics_path: /metrics\n  scheme: http\n  dns_sd_configs:\n  - names:\n    - {{ template \"cost-analyzer.serviceName\" . }}\n    type: 'A'\n    port: 9003\n- job_name: kubecost-networking\n  kubernetes_sd_configs:\n    - role: pod\n  relabel_configs:\n  # Scrape only the the targets matching the following metadata\n    - source_labels: [__meta_kubernetes_pod_label_app_kubernetes_io_instance]\n      action: keep\n      regex:  kubecost\n    - source_labels: [__meta_kubernetes_pod_label_app_kubernetes_io_name]\n      action: keep\n      regex:  network-costs\n",
                    "server": {
                      "enabled": true,
                      "name": "server",
                      "sidecarContainers": null,
                      "strategy": {
                        "type": "Recreate",
                        "rollingUpdate": null
                      },
                      "image": {
                        "repository": "quay.io/prometheus/prometheus",
                        "tag": "v2.50.1",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "prefixURL": "",
                      "baseURL": "",
                      "env": [],
                      "extraFlags": [
                        "web.enable-lifecycle"
                      ],
                      "configPath": "/etc/config/prometheus.yml",
                      "global": {
                        "scrape_interval": "1m",
                        "scrape_timeout": "60s",
                        "evaluation_interval": "1m",
                        "external_labels": {
                          "cluster_id": "cluster-one"
                        }
                      },
                      "remoteWrite": {},
                      "remoteRead": {},
                      "extraArgs": {
                        "query.max-concurrency": 1,
                        "query.max-samples": 100000000
                      },
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "extraHostPathMounts": [],
                      "extraConfigmapMounts": [],
                      "extraSecretMounts": [],
                      "configMapOverrideName": "",
                      "ingress": {
                        "enabled": false,
                        "annotations": {},
                        "extraLabels": {},
                        "hosts": [],
                        "pathType": "Prefix",
                        "extraPaths": [],
                        "tls": []
                      },
                      "tolerations": [],
                      "nodeSelector": {},
                      "affinity": {},
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "persistentVolume": {
                        "enabled": true,
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "existingClaim": "",
                        "mountPath": "/data",
                        "size": "32Gi",
                        "subPath": ""
                      },
                      "emptyDir": {
                        "sizeLimit": ""
                      },
                      "podAnnotations": {},
                      "deploymentAnnotations": {},
                      "podLabels": {},
                      "alertmanagers": [],
                      "replicaCount": 1,
                      "statefulSet": {
                        "enabled": false,
                        "annotations": {},
                        "labels": {},
                        "podManagementPolicy": "OrderedReady",
                        "headless": {
                          "annotations": {},
                          "labels": {},
                          "servicePort": 80
                        }
                      },
                      "readinessProbeInitialDelay": 5,
                      "readinessProbeTimeout": 3,
                      "readinessProbeFailureThreshold": 3,
                      "readinessProbeSuccessThreshold": 1,
                      "livenessProbeInitialDelay": 5,
                      "livenessProbeTimeout": 3,
                      "livenessProbeFailureThreshold": 3,
                      "livenessProbeSuccessThreshold": 1,
                      "resources": {},
                      "verticalAutoscaler": {
                        "enabled": false
                      },
                      "securityContext": {},
                      "containerSecurityContext": {},
                      "service": {
                        "annotations": {},
                        "labels": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 80,
                        "sessionAffinity": "None",
                        "type": "ClusterIP",
                        "gRPC": {
                          "enabled": false,
                          "servicePort": 10901
                        },
                        "statefulsetReplica": {
                          "enabled": false,
                          "replica": 0
                        }
                      },
                      "terminationGracePeriodSeconds": 300,
                      "retention": "97h"
                    },
                    "alertmanager": {
                      "enabled": false,
                      "strategy": {
                        "type": "Recreate",
                        "rollingUpdate": null
                      },
                      "name": "alertmanager",
                      "image": {
                        "repository": "quay.io/prometheus/alertmanager",
                        "tag": "v0.27.0",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "extraArgs": {},
                      "prefixURL": "",
                      "baseURL": "http://localhost:9093",
                      "extraEnv": {},
                      "extraSecretMounts": [],
                      "configMapOverrideName": "",
                      "configFromSecret": "",
                      "configFileName": "alertmanager.yml",
                      "ingress": {
                        "enabled": false,
                        "annotations": {},
                        "extraLabels": {},
                        "hosts": [],
                        "extraPaths": [],
                        "tls": []
                      },
                      "tolerations": [],
                      "nodeSelector": {},
                      "affinity": {},
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "persistentVolume": {
                        "enabled": true,
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "existingClaim": "",
                        "mountPath": "/data",
                        "size": "2Gi",
                        "subPath": ""
                      },
                      "podAnnotations": {},
                      "podLabels": {},
                      "replicaCount": 1,
                      "statefulSet": {
                        "enabled": false,
                        "podManagementPolicy": "OrderedReady",
                        "headless": {
                          "annotations": {},
                          "labels": {},
                          "servicePort": 80
                        }
                      },
                      "resources": {},
                      "securityContext": {
                        "runAsUser": 1001,
                        "runAsNonRoot": true,
                        "runAsGroup": 1001,
                        "fsGroup": 1001
                      },
                      "service": {
                        "annotations": {},
                        "labels": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 80,
                        "sessionAffinity": "None",
                        "type": "ClusterIP"
                      }
                    },
                    "alertmanagerFiles": {
                      "alertmanager.yml": {
                        "global": {},
                        "receivers": [
                          {
                            "name": "default-receiver"
                          }
                        ],
                        "route": {
                          "group_wait": "10s",
                          "group_interval": "5m",
                          "receiver": "default-receiver",
                          "repeat_interval": "3h"
                        }
                      }
                    },
                    "configmapReload": {
                      "prometheus": {
                        "enabled": false,
                        "name": "configmap-reload",
                        "image": {
                          "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                          "tag": "v0.72.0",
                          "pullPolicy": "IfNotPresent"
                        },
                        "extraArgs": {},
                        "extraVolumeDirs": [],
                        "extraConfigmapMounts": [],
                        "resources": {},
                        "containerSecurityContext": {}
                      },
                      "alertmanager": {
                        "enabled": false,
                        "name": "configmap-reload",
                        "image": {
                          "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                          "tag": "v0.72.0",
                          "pullPolicy": "IfNotPresent"
                        },
                        "extraArgs": {},
                        "extraVolumeDirs": [],
                        "extraConfigmapMounts": [],
                        "resources": {}
                      }
                    },
                    "nodeExporter": {
                      "enabled": false,
                      "hostNetwork": true,
                      "hostPID": true,
                      "dnsPolicy": "ClusterFirstWithHostNet",
                      "name": "node-exporter",
                      "image": {
                        "repository": "prom/node-exporter",
                        "tag": "v1.7.0",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      },
                      "extraArgs": {},
                      "extraHostPathMounts": [],
                      "extraConfigmapMounts": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "deploymentAnnotations": {},
                      "pod": {
                        "labels": {}
                      },
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "resources": {},
                      "securityContext": {},
                      "service": {
                        "annotations": {
                          "prometheus.io/scrape": "true"
                        },
                        "labels": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "hostPort": 9100,
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 9100,
                        "type": "ClusterIP"
                      }
                    },
                    "pushgateway": {
                      "enabled": false,
                      "name": "pushgateway",
                      "image": {
                        "repository": "prom/pushgateway",
                        "tag": "v1.6.2",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "extraArgs": {},
                      "ingress": {
                        "enabled": false,
                        "annotations": {},
                        "hosts": [],
                        "extraPaths": [],
                        "tls": []
                      },
                      "tolerations": [],
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "replicaCount": 1,
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "resources": {},
                      "securityContext": {
                        "runAsUser": 1001,
                        "runAsNonRoot": true
                      },
                      "service": {
                        "annotations": {
                          "prometheus.io/probe": "pushgateway"
                        },
                        "labels": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 9091,
                        "type": "ClusterIP"
                      },
                      "strategy": {
                        "type": "Recreate",
                        "rollingUpdate": null
                      },
                      "persistentVolume": {
                        "enabled": true,
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "existingClaim": "",
                        "mountPath": "/data",
                        "size": "2Gi",
                        "subPath": ""
                      }
                    },
                    "serverFiles": {
                      "alerting_rules.yml": {},
                      "alerts": {},
                      "recording_rules.yml": {},
                      "prometheus.yml": {
                        "rule_files": [
                          "/etc/config/recording_rules.yml",
                          "/etc/config/alerting_rules.yml",
                          "/etc/config/rules",
                          "/etc/config/alerts"
                        ],
                        "scrape_configs": [
                          {
                            "job_name": "prometheus",
                            "static_configs": [
                              {
                                "targets": [
                                  "localhost:9090"
                                ]
                              }
                            ]
                          },
                          {
                            "job_name": "kubernetes-nodes-cadvisor",
                            "scheme": "https",
                            "tls_config": {
                              "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                              "insecure_skip_verify": true
                            },
                            "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                            "kubernetes_sd_configs": [
                              {
                                "role": "node"
                              }
                            ],
                            "relabel_configs": [
                              {
                                "action": "labelmap",
                                "regex": "__meta_kubernetes_node_label_(.+)"
                              },
                              {
                                "target_label": "__address__",
                                "replacement": "kubernetes.default.svc:443"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_node_name"
                                ],
                                "regex": "(.+)",
                                "target_label": "__metrics_path__",
                                "replacement": "/api/v1/nodes/$1/proxy/metrics/cadvisor"
                              }
                            ],
                            "metric_relabel_configs": [
                              {
                                "source_labels": [
                                  "__name__"
                                ],
                                "regex": "(container_cpu_usage_seconds_total|container_memory_working_set_bytes|container_network_receive_errors_total|container_network_transmit_errors_total|container_network_receive_packets_dropped_total|container_network_transmit_packets_dropped_total|container_memory_usage_bytes|container_cpu_cfs_throttled_periods_total|container_cpu_cfs_periods_total|container_fs_usage_bytes|container_fs_limit_bytes|container_cpu_cfs_periods_total|container_fs_inodes_free|container_fs_inodes_total|container_fs_usage_bytes|container_fs_limit_bytes|container_cpu_cfs_throttled_periods_total|container_cpu_cfs_periods_total|container_network_receive_bytes_total|container_network_transmit_bytes_total|container_fs_inodes_free|container_fs_inodes_total|container_fs_usage_bytes|container_fs_limit_bytes|container_spec_cpu_shares|container_spec_memory_limit_bytes|container_network_receive_bytes_total|container_network_transmit_bytes_total|container_fs_reads_bytes_total|container_network_receive_bytes_total|container_fs_writes_bytes_total|container_fs_reads_bytes_total|cadvisor_version_info|kubecost_pv_info)",
                                "action": "keep"
                              },
                              {
                                "source_labels": [
                                  "container"
                                ],
                                "target_label": "container_name",
                                "regex": "(.+)",
                                "action": "replace"
                              },
                              {
                                "source_labels": [
                                  "pod"
                                ],
                                "target_label": "pod_name",
                                "regex": "(.+)",
                                "action": "replace"
                              }
                            ]
                          },
                          {
                            "job_name": "kubernetes-nodes",
                            "scheme": "https",
                            "tls_config": {
                              "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                              "insecure_skip_verify": true
                            },
                            "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                            "kubernetes_sd_configs": [
                              {
                                "role": "node"
                              }
                            ],
                            "relabel_configs": [
                              {
                                "action": "labelmap",
                                "regex": "__meta_kubernetes_node_label_(.+)"
                              },
                              {
                                "target_label": "__address__",
                                "replacement": "kubernetes.default.svc:443"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_node_name"
                                ],
                                "regex": "(.+)",
                                "target_label": "__metrics_path__",
                                "replacement": "/api/v1/nodes/$1/proxy/metrics"
                              }
                            ],
                            "metric_relabel_configs": [
                              {
                                "source_labels": [
                                  "__name__"
                                ],
                                "regex": "(kubelet_volume_stats_used_bytes)",
                                "action": "keep"
                              }
                            ]
                          },
                          {
                            "job_name": "kubernetes-service-endpoints",
                            "kubernetes_sd_configs": [
                              {
                                "role": "endpoints"
                              }
                            ],
                            "relabel_configs": [
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_annotation_prometheus_io_scrape"
                                ],
                                "action": "keep",
                                "regex": true
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_endpoints_name"
                                ],
                                "action": "keep",
                                "regex": "(.*node-exporter|kubecost-network-costs)"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_annotation_prometheus_io_scheme"
                                ],
                                "action": "replace",
                                "target_label": "__scheme__",
                                "regex": "(https?)"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_annotation_prometheus_io_path"
                                ],
                                "action": "replace",
                                "target_label": "__metrics_path__",
                                "regex": "(.+)"
                              },
                              {
                                "source_labels": [
                                  "__address__",
                                  "__meta_kubernetes_service_annotation_prometheus_io_port"
                                ],
                                "action": "replace",
                                "target_label": "__address__",
                                "regex": "([^:]+)(?::\\d+)?;(\\d+)",
                                "replacement": "$1:$2"
                              },
                              {
                                "action": "labelmap",
                                "regex": "__meta_kubernetes_service_label_(.+)"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_namespace"
                                ],
                                "action": "replace",
                                "target_label": "kubernetes_namespace"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_name"
                                ],
                                "action": "replace",
                                "target_label": "kubernetes_name"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_pod_node_name"
                                ],
                                "action": "replace",
                                "target_label": "kubernetes_node"
                              }
                            ],
                            "metric_relabel_configs": [
                              {
                                "source_labels": [
                                  "__name__"
                                ],
                                "regex": "(container_cpu_allocation|container_cpu_usage_seconds_total|container_fs_limit_bytes|container_fs_writes_bytes_total|container_gpu_allocation|container_memory_allocation_bytes|container_memory_usage_bytes|container_memory_working_set_bytes|container_network_receive_bytes_total|container_network_transmit_bytes_total|DCGM_FI_DEV_GPU_UTIL|deployment_match_labels|kube_daemonset_status_desired_number_scheduled|kube_daemonset_status_number_ready|kube_deployment_spec_replicas|kube_deployment_status_replicas|kube_deployment_status_replicas_available|kube_job_status_failed|kube_namespace_annotations|kube_namespace_labels|kube_node_info|kube_node_labels|kube_node_status_allocatable|kube_node_status_allocatable_cpu_cores|kube_node_status_allocatable_memory_bytes|kube_node_status_capacity|kube_node_status_capacity_cpu_cores|kube_node_status_capacity_memory_bytes|kube_node_status_condition|kube_persistentvolume_capacity_bytes|kube_persistentvolume_status_phase|kube_persistentvolumeclaim_info|kube_persistentvolumeclaim_resource_requests_storage_bytes|kube_pod_container_info|kube_pod_container_resource_limits|kube_pod_container_resource_limits_cpu_cores|kube_pod_container_resource_limits_memory_bytes|kube_pod_container_resource_requests|kube_pod_container_resource_requests_cpu_cores|kube_pod_container_resource_requests_memory_bytes|kube_pod_container_status_restarts_total|kube_pod_container_status_running|kube_pod_container_status_terminated_reason|kube_pod_labels|kube_pod_owner|kube_pod_status_phase|kube_replicaset_owner|kube_statefulset_replicas|kube_statefulset_status_replicas|kubecost_cluster_info|kubecost_cluster_management_cost|kubecost_cluster_memory_working_set_bytes|kubecost_load_balancer_cost|kubecost_network_internet_egress_cost|kubecost_network_region_egress_cost|kubecost_network_zone_egress_cost|kubecost_node_is_spot|kubecost_pod_network_egress_bytes_total|node_cpu_hourly_cost|node_cpu_seconds_total|node_disk_reads_completed|node_disk_reads_completed_total|node_disk_writes_completed|node_disk_writes_completed_total|node_filesystem_device_error|node_gpu_count|node_gpu_hourly_cost|node_memory_Buffers_bytes|node_memory_Cached_bytes|node_memory_MemAvailable_bytes|node_memory_MemFree_bytes|node_memory_MemTotal_bytes|node_network_transmit_bytes_total|node_ram_hourly_cost|node_total_hourly_cost|pod_pvc_allocation|pv_hourly_cost|service_selector_labels|statefulSet_match_labels|kubecost_pv_info|up)",
                                "action": "keep"
                              }
                            ]
                          }
                        ]
                      },
                      "rules": {
                        "groups": [
                          {
                            "name": "CPU",
                            "rules": [
                              {
                                "expr": "sum(rate(container_cpu_usage_seconds_total{container!=\"\"}[5m]))",
                                "record": "cluster:cpu_usage:rate5m"
                              },
                              {
                                "expr": "rate(container_cpu_usage_seconds_total{container!=\"\"}[5m])",
                                "record": "cluster:cpu_usage_nosum:rate5m"
                              },
                              {
                                "expr": "avg(irate(container_cpu_usage_seconds_total{container!=\"POD\", container!=\"\"}[5m])) by (container,pod,namespace)",
                                "record": "kubecost_container_cpu_usage_irate"
                              },
                              {
                                "expr": "sum(container_memory_working_set_bytes{container!=\"POD\",container!=\"\"}) by (container,pod,namespace)",
                                "record": "kubecost_container_memory_working_set_bytes"
                              },
                              {
                                "expr": "sum(container_memory_working_set_bytes{container!=\"POD\",container!=\"\"})",
                                "record": "kubecost_cluster_memory_working_set_bytes"
                              }
                            ]
                          },
                          {
                            "name": "Savings",
                            "rules": [
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind!=\"DaemonSet\"}) by (pod) * sum(container_cpu_allocation) by (pod))",
                                "record": "kubecost_savings_cpu_allocation",
                                "labels": {
                                  "daemonset": "false"
                                }
                              },
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind=\"DaemonSet\"}) by (pod) * sum(container_cpu_allocation) by (pod)) / sum(kube_node_info)",
                                "record": "kubecost_savings_cpu_allocation",
                                "labels": {
                                  "daemonset": "true"
                                }
                              },
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind!=\"DaemonSet\"}) by (pod) * sum(container_memory_allocation_bytes) by (pod))",
                                "record": "kubecost_savings_memory_allocation_bytes",
                                "labels": {
                                  "daemonset": "false"
                                }
                              },
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind=\"DaemonSet\"}) by (pod) * sum(container_memory_allocation_bytes) by (pod)) / sum(kube_node_info)",
                                "record": "kubecost_savings_memory_allocation_bytes",
                                "labels": {
                                  "daemonset": "true"
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    "alertRelabelConfigs": null,
                    "networkPolicy": {
                      "enabled": false
                    }
                  },
                  "networkCosts": {
                    "enabled": false,
                    "image": {
                      "repository": "gcr.io/kubecost1/kubecost-network-costs",
                      "tag": "v0.17.3"
                    },
                    "imagePullPolicy": "Always",
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "prometheusScrape": false,
                    "trafficLogging": true,
                    "logLevel": "info",
                    "port": 3001,
                    "resources": {
                      "limits": {
                        "cpu": "500m"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "20Mi"
                      }
                    },
                    "extraArgs": [],
                    "config": {
                      "destinations": {
                        "in-zone": [
                          "127.0.0.0/8",
                          "169.254.0.0/16",
                          "10.0.0.0/8",
                          "172.16.0.0/12",
                          "192.168.0.0/16"
                        ],
                        "in-region": [],
                        "cross-region": [],
                        "internet": [],
                        "direct-classification": []
                      },
                      "services": {
                        "google-cloud-services": false,
                        "amazon-web-services": false,
                        "azure-cloud-services": false
                      }
                    },
                    "tolerations": [],
                    "affinity": {},
                    "service": {
                      "annotations": {},
                      "labels": {}
                    },
                    "priorityClassName": "",
                    "podMonitor": {
                      "enabled": false,
                      "additionalLabels": {}
                    },
                    "additionalLabels": {},
                    "nodeSelector": {},
                    "annotations": {},
                    "healthCheckProbes": {},
                    "additionalSecurityContext": {}
                  },
                  "kubecostDeployment": {
                    "replicas": 1,
                    "labels": {},
                    "annotations": {}
                  },
                  "forecasting": {
                    "enabled": true,
                    "fullImageName": "gcr.io/kubecost1/kubecost-modeling:v0.1.6",
                    "resources": {
                      "requests": {
                        "cpu": "200m",
                        "memory": "300Mi"
                      },
                      "limits": {
                        "cpu": "1500m",
                        "memory": "1Gi"
                      }
                    },
                    "env": {
                      "GUNICORN_CMD_ARGS": "--log-level info -t 1200"
                    },
                    "priority": {
                      "enabled": false,
                      "name": ""
                    },
                    "nodeSelector": {},
                    "tolerations": {},
                    "affinity": {},
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    }
                  },
                  "kubecostAggregator": {
                    "deployMethod": "singlepod",
                    "enabled": false,
                    "replicas": 1,
                    "stagingEmptyDirSizeLimit": "2Gi",
                    "numDBCopyPartitions": 25,
                    "env": {
                      "LOG_LEVEL": "info",
                      "DB_READ_THREADS": "1",
                      "DB_WRITE_THREADS": "1",
                      "DB_CONCURRENT_INGESTION_COUNT": "3"
                    },
                    "persistentConfigsStorage": {
                      "storageClass": "",
                      "storageRequest": "1Gi"
                    },
                    "aggregatorDbStorage": {
                      "storageClass": "",
                      "storageRequest": "128Gi"
                    },
                    "resources": {},
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "cloudCost": {
                      "enabled": false,
                      "resources": {},
                      "readinessProbe": {
                        "enabled": true,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 10,
                        "failureThreshold": 200
                      }
                    },
                    "jaeger": {
                      "enabled": false,
                      "image": "jaegertracing/all-in-one",
                      "imageVersion": "latest"
                    }
                  },
                  "diagnostics": {
                    "enabled": true,
                    "primary": {
                      "enabled": false,
                      "retention": "7d",
                      "readonly": false
                    },
                    "pollingInterval": "300s",
                    "keepDiagnosticHistory": false,
                    "collectHelmValues": false,
                    "deployment": {
                      "enabled": false,
                      "resources": {
                        "requests": {
                          "cpu": "10m",
                          "memory": "20Mi"
                        }
                      },
                      "env": {},
                      "labels": {},
                      "securityContext": {},
                      "containerSecurityContext": {},
                      "nodeSelector": {},
                      "tolerations": {},
                      "affinity": {}
                    }
                  },
                  "clusterController": {
                    "enabled": false,
                    "image": {
                      "repository": "gcr.io/kubecost1/cluster-controller",
                      "tag": "v0.16.0"
                    },
                    "imagePullPolicy": "Always",
                    "priorityClassName": "",
                    "tolerations": [],
                    "actionConfigs": {
                      "clusterTurndown": [],
                      "namespaceTurndown": null,
                      "clusterRightsize": null,
                      "containerRightsize": null
                    },
                    "kubescaler": {
                      "defaultResizeAll": false
                    },
                    "namespaceTurndown": {
                      "rbac": {
                        "enabled": true
                      }
                    }
                  },
                  "reporting": {
                    "logCollection": true,
                    "productAnalytics": true,
                    "errorReporting": true,
                    "valuesReporting": true
                  },
                  "serviceMonitor": {
                    "enabled": false,
                    "additionalLabels": {},
                    "metricRelabelings": [],
                    "relabelings": [],
                    "networkCosts": {
                      "enabled": false,
                      "scrapeTimeout": "10s",
                      "additionalLabels": {},
                      "metricRelabelings": [],
                      "relabelings": []
                    }
                  },
                  "prometheusRule": {
                    "enabled": false,
                    "additionalLabels": {}
                  },
                  "supportNFS": false,
                  "initChownDataImage": "busybox",
                  "initChownData": {
                    "resources": {}
                  },
                  "grafana": {
                    "rbac": {
                      "create": true
                    },
                    "serviceAccount": {
                      "create": true,
                      "name": ""
                    },
                    "replicas": 1,
                    "deploymentStrategy": "RollingUpdate",
                    "readinessProbe": {
                      "httpGet": {
                        "path": "/api/health",
                        "port": 3000
                      }
                    },
                    "livenessProbe": {
                      "httpGet": {
                        "path": "/api/health",
                        "port": 3000
                      },
                      "initialDelaySeconds": 60,
                      "timeoutSeconds": 30,
                      "failureThreshold": 10
                    },
                    "image": {
                      "repository": "grafana/grafana",
                      "tag": "10.3.4",
                      "pullPolicy": "IfNotPresent"
                    },
                    "securityContext": {},
                    "priorityClassName": "",
                    "downloadDashboardsImage": {
                      "repository": "curlimages/curl",
                      "tag": "latest",
                      "pullPolicy": "IfNotPresent"
                    },
                    "podAnnotations": {},
                    "annotations": {},
                    "service": {
                      "type": "ClusterIP",
                      "port": 80,
                      "annotations": {},
                      "labels": {}
                    },
                    "ingress": {
                      "enabled": false,
                      "annotations": {},
                      "labels": {},
                      "path": "/",
                      "pathType": "Prefix",
                      "hosts": [
                        "chart-example.local"
                      ],
                      "tls": []
                    },
                    "resources": {},
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "persistence": {
                      "enabled": false
                    },
                    "adminUser": "admin",
                    "adminPassword": "strongpassword",
                    "env": {},
                    "envFromSecret": "",
                    "extraSecretMounts": [],
                    "plugins": [],
                    "dashboardProviders": {},
                    "dashboards": {},
                    "dashboardsConfigMaps": {},
                    "ldap": {
                      "existingSecret": "",
                      "config": ""
                    },
                    "smtp": {
                      "existingSecret": ""
                    },
                    "sidecar": {
                      "image": {
                        "repository": "kiwigrid/k8s-sidecar",
                        "tag": "1.26.0",
                        "pullPolicy": "IfNotPresent"
                      },
                      "resources": {},
                      "dashboards": {
                        "enabled": true,
                        "label": "grafana_dashboard",
                        "labelValue": "1",
                        "annotations": {},
                        "error_throttle_sleep": 0,
                        "folder": "/tmp/dashboards"
                      },
                      "datasources": {
                        "enabled": false,
                        "error_throttle_sleep": 0,
                        "label": "grafana_datasource"
                      }
                    },
                    "grafana.ini": {
                      "server": {
                        "serve_from_sub_path": false,
                        "root_url": "%(protocol)s://%(domain)s:%(http_port)s/grafana"
                      },
                      "paths": {
                        "data": "/var/lib/grafana/data",
                        "logs": "/var/log/grafana",
                        "plugins": "/var/lib/grafana/plugins",
                        "provisioning": "/etc/grafana/provisioning"
                      },
                      "analytics": {
                        "check_for_updates": true
                      },
                      "log": {
                        "mode": "console"
                      },
                      "grafana_net": {
                        "url": "https://grafana.net"
                      },
                      "auth.anonymous": {
                        "enabled": true,
                        "org_role": "Editor",
                        "org_name": "Main Org."
                      }
                    }
                  },
                  "serviceAccount": {
                    "create": true,
                    "annotations": {}
                  },
                  "awsstore": {
                    "useAwsStore": false,
                    "imageNameAndVersion": "gcr.io/kubecost1/awsstore:latest",
                    "createServiceAccount": false,
                    "priorityClassName": "",
                    "nodeSelector": {},
                    "annotations": {}
                  },
                  "federatedETL": {
                    "agentOnly": false,
                    "federatedCluster": false,
                    "redirectS3Backup": false,
                    "useMultiClusterDB": false
                  },
                  "kubecostAdmissionController": {
                    "enabled": false,
                    "secretName": "webhook-server-tls",
                    "caBundle": "${CA_BUNDLE}"
                  },
                  "costEventsAudit": {
                    "enabled": false
                  },
                  "extraObjects": []
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: gcr.io/kubecost1/operator/kubecost-operator-controller:v2.2.4
          createdAt: "2024-05-19T20:46:35Z"
          description: An operator that deploys Kubecost 2.2.4 via the Helm chart.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Stackwatch
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The CostAnalyzer API describes a deployment of Kubecost and
              its dependencies.
            displayName: CostAnalyzer
            kind: CostAnalyzer
            name: costanalyzers.charts.kubecost.com
            version: v1alpha1
        description: |-
          Kubecost provides real-time cost visibility and insights for teams using Kubernetes, helping you continuously reduce your cloud costs.

          This OpenShift operator deploys Kubecost from the official Helm chart.

          Kubecost allows you to:

          * See allocated spend across all native Kubernetes concepts, so you can provide your teams with transparent, accurate cost data reconciled with your actual cloud bill.
          * Join in-cluster costs like CPU and memory with out-of-cluster spend from cloud infrastructure services for complete cost visibility—all services from AWS, GCP, and Microsoft Azure are supported.
          * Gain insights you can use to save 30-50% or more on your infrastructure spend, without exposing your private information—your data never gets shared externally, even with us.
          * Have real-time alerts and recurring reports, empowering teams to take control of their Kubernetes-enabled infrastructure, stay within budgeted limits, and address monitoring interruptions immediately.

          Visit the Kubecost website for more details including features, pricing, documentation, and more at www.kubecost.com.
        displayName: Kubecost
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubecost
        - cost
        - kubernetes
        links:
        - name: Kubecost
          url: https://www.kubecost.com
        maintainers:
        - email: czoller@kubecost.com
          name: Chip Zoller
        maturity: alpha
        provider:
          name: Stackwatch
          url: www.kubecost.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/kubecost@sha256:ff1e00f5a04e49fe9daf06db6b60c2ca14692efd098a38ecd622ef6bc5de8dd5
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - gcr.io/kubecost1/operator/kubecost-operator-controller:v2.2.4
        version: 2.2.4
      entries:
      - name: kubecost.v2.2.4
        version: 2.2.4
      - name: kubecost.v2.1.0
        version: 2.1.0
      - name: kubecost-operator.v1.107.1
        version: 1.107.1
      - name: kubecost-operator.v1.106.2
        version: 1.106.2
      - name: kubecost-operator.v1.106.0
        version: 1.106.0
      - name: kubecost.v1.99.0
        version: 1.99.0
      - name: kubecost.v1.97.0
        version: 1.97.0
      name: alpha
    defaultChannel: alpha
    packageName: kubecost
    provider:
      name: Stackwatch
      url: www.kubecost.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Net AI
      provider-url: https://netai.tech
    name: netai-demo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: netai-demo-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "deployments.netai.tech/v1alpha1",
                "kind": "AntennaDeployment",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netai-demo-operator"
                  },
                  "name": "antennadeployment-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, Networking
          com.redhat.openshift.versions: v4.18
          containerImage: ghcr.io/net-ai-tech/netai-demo-operator@sha256:fae0da9ec2f7a9fd6cfe0ec3e9dfb3b10bf6feaa964b81f081088297649c8bcb
          createdAt: "2025-07-09T11:33:08Z"
          description: Net AI Operator that uses EnergAIze engine forecasts to scale
            Red Hat OpenShift resources.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Net AI
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AntennaDeployment is the Schema for the antennadeployments
              API
            displayName: Antenna Deployment
            kind: AntennaDeployment
            name: antennadeployments.deployments.netai.tech
            version: v1alpha1
          - description: Demo is the Schema for the Demo API
            displayName: Demo
            kind: Demo
            name: demos.deployments.netai.tech
            version: v1alpha1
        description: POC Operator that uses saved EnergAize forecasts to manage OpenShift
          Custom Resources
        displayName: netai-demo-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - energaize
        - scaling
        - scale
        - manage
        - forecast
        - cells
        - 5g
        - networking
        - net
        - ai
        - network
        - telecommunication
        - xapp
        links:
        - name: Netai Demo Operator
          url: https://netai-demo-operator.domain
        maturity: alpha
        minKubeVersion: 1.27.0
        provider:
          name: Net AI
          url: https://netai.tech
        relatedImages:
        - registry.access.redhat.com/ubi8/ubi@sha256:68fecea0d255ee253acbf0c860eaebb7017ef5ef007c25bee9eeffd29ce85b29
        - registry.connect.redhat.com/net-ai/demo-operator-bundle@sha256:b1a30de1e984da0487a7d042bd940876bedb5a2f43dd73c7895e684a3a35d81e
        - ghcr.io/net-ai-tech/netai-demo-operator-bundle@sha256:0783aba7b039a569b49de2a61ef6dc6ff1d1f301d93c26d623b7f652321871c5
        - ghcr.io/net-ai-tech/netai-demo-operator@sha256:fae0da9ec2f7a9fd6cfe0ec3e9dfb3b10bf6feaa964b81f081088297649c8bcb
        version: 0.0.1
      entries:
      - name: netai-demo-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: netai-demo-operator
    provider:
      name: Net AI
      url: https://netai.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-athena-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-athena-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "athena.services.k8s.aws/v1alpha1",
                "kind": "WorkGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/athena-controller:1.2.0
          createdAt: "2025-11-29T04:51:07Z"
          description: AWS Athena controller is a service controller for managing
            Athena resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PreparedStatement represents the state of an AWS athena PreparedStatement
              resource.
            displayName: PreparedStatement
            kind: PreparedStatement
            name: preparedstatements.athena.services.k8s.aws
            version: v1alpha1
          - description: WorkGroup represents the state of an AWS athena WorkGroup
              resource.
            displayName: WorkGroup
            kind: WorkGroup
            name: workgroups.athena.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Athena resources in AWS from within your Kubernetes cluster.

          **About Amazon Athena**

          Amazon Athena is an interactive query service that makes it easy to analyze data directly in Amazon Simple Storage Service (Amazon S3) using standard SQL. With a few actions in the AWS Management Console, you can point Athena at your data stored in Amazon S3 and begin using standard SQL to run ad-hoc queries and get results in seconds.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Athena
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - athena
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Athena Developer Resources
          url: https://aws.amazon.com/athena/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: athena maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/athena-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-athena-controller@sha256:391d422e57dcc2960e2d89d83f6a58f0d9dfa6eac69634b751cb7c2bdf185fe9
        version: 1.2.0
      entries:
      - name: ack-athena-controller.v1.2.0
        version: 1.2.0
      - name: ack-athena-controller.v1.1.2
        version: 1.1.2
      - name: ack-athena-controller.v1.1.1
        version: 1.1.1
      - name: ack-athena-controller.v1.1.0
        version: 1.1.0
      - name: ack-athena-controller.v1.0.14
        version: 1.0.14
      - name: ack-athena-controller.v1.0.13
        version: 1.0.13
      - name: ack-athena-controller.v1.0.12
        version: 1.0.12
      - name: ack-athena-controller.v1.0.11
        version: 1.0.11
      - name: ack-athena-controller.v1.0.10
        version: 1.0.10
      - name: ack-athena-controller.v1.0.9
        version: 1.0.9
      - name: ack-athena-controller.v1.0.8
        version: 1.0.8
      - name: ack-athena-controller.v1.0.7
        version: 1.0.7
      - name: ack-athena-controller.v1.0.6
        version: 1.0.6
      - name: ack-athena-controller.v1.0.5
        version: 1.0.5
      - name: ack-athena-controller.v1.0.4
        version: 1.0.4
      - name: ack-athena-controller.v1.0.1
        version: 1.0.1
      - name: ack-athena-controller.v1.0.0
        version: 1.0.0
      - name: ack-athena-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-athena-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: opdev
      provider-url: opdev.github.io
    name: airflow-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: airflow-helm-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "workflow.apache.org/v1alpha1",
                "kind": "AirFlow",
                "metadata": {
                  "name": "airflow-helm"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: quay.io/opdev/airflow-helm-operator:0.0.1
          createdAt: "2023-06-28T16:57:21Z"
          description: An experimental operator that installs Apache Airflow.
          operatorframework.io/suggested-namespace: airflow-helm
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: hybrid.helm.sdk.operatorframework.io/v1-alpha
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys Apache Airflow based on the official helm chart in
              openshift
            kind: AirFlow
            name: airflows.workflow.apache.org
            version: v1alpha1
        description: Deploys Apache Airflow based on the official helm chart with
          openshift specific modifications applied by default
        displayName: Airflow Helm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - airflow
        - data
        - batch
        - scheduler
        - data workflow
        links:
        - name: Airflow Helm Operator
          url: https://airflow-helm-operator.domain
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: opdev
          url: opdev.github.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/opdev/airflow-helm-operator:0.0.1
        - quay.io/openshift-community-operators/airflow-helm-operator@sha256:b3d05d2e2b4ff8ae64e4fc0338fcfa1ffdc345c6fdda8eaefed4e9108750fe58
        version: 0.0.1
      entries:
      - name: airflow-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: airflow-helm-operator
    provider:
      name: opdev
      url: opdev.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataTrucker.IO
      provider-url: https://www.datatrucker.io/
    name: datatrucker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datatrucker-operator.v2.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datatrucker.datatrucker.io/v1",
                "kind": "DatatruckerConfig",
                "metadata": {
                  "name": "datatruckerconfig-sample"
                },
                "spec": {
                  "API": {
                    "crypto": {
                      "CredentailEncryption": {
                        "Algorithm": "aes-256-cbc",
                        "IV": "eThWmZq4t7w!z$C\u0026",
                        "Key": "JaNdRgUkXp2s5u8x/A?D(G+KbPeShVmY"
                      },
                      "JWT": {
                        "authorization_keys": {
                          "private_key": "privateJWT.key",
                          "public_key": "publicJWT.key"
                        },
                        "signOptions": {
                          "algorithm": "RS256",
                          "expiresIn": "60m",
                          "issuer": "datatrucker"
                        },
                        "verify": {
                          "issuer": "datatrucker"
                        }
                      },
                      "keycloak": {
                        "client_id": "nodejs",
                        "client_secret": "7c5542ae-7264-420d-bf5f-766f4ab39ad3",
                        "jwt_publickey_verifier": "keycloak.key",
                        "realm": "TestRealm",
                        "url": "http://localhost:30015"
                      },
                      "passwordHash": {
                        "Algorithm": "sha256",
                        "SaltLength": 16
                      }
                    },
                    "cryptokeys": {
                      "keycloakkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUF4ZnhGY1gxb3RmTUN6SWlkZ09tMndZakZWZXZHN1BQT1h5dTNrTEFuTWtTVkUxUXl4TzJ4SFFvSGcydDFVcUU4SVNXeTN3ZkZTbERzdU1VK0J1VVkvaWI5L04vSlpBV3k5MGRET0YxREdIeGVwM21HMVBTUllMQWFGQ0I3NTVsbWZjL1dna3VzZFdLdmxOTmZuNkd6S1J6OXBmV3RNUnhWWkFrejhmNlVUeG0zWE02Q0tOMUludThubEcxU3ZzaFc5cmt3Lyt6UmVvOFVCV2pPcTh5RjdPV0tnS0ZZZlhENFREa090OWFxN3RaaSsxaExYOE5iV2xxRnJZYmhJcFZINXlLSko3ZTA5cUVIRkVEelg5QXJzVVNHamNjbFFFYTl1dmJxU2d4Rzc3RUZVbk82aDZxUkNnU3lNNnVYdk9qcWlIMHp4RTNmRHB4R2NhY2pvTW1EMlFJREFRQUIKLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0t",
                      "privateJWTkey": "LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQ0KTUlJRW9RSUJBQUtDQVFCVWd1ZDN1OFlXcUJCWWtYZ3M2K25pMS84bnM5YjRGNkZudzA4RDRKdGRlalg5L1ZaMg0KWFdOamJ1ekMxUkRHMnVseFM4QjZIdTZYeEhYWU9XU2ZzOEY0UHZ2eC9TUWdmRWtWUlNDL1pQN3pzM1ZETllaMA0Kc1JScDNSZzUza29qUG80T3o2azFaeGprbFRFZEpMWUtqYlZud3U1M3A3MTFsVTJkV3B4R3VEeGYxVTJuUWgrWA0KaUhKZkhyUmxTZVA1aVhYQkpxd21VTDFkK25lTU5BOXlGakR0MnNZMG5iSDRySDVxbk1VRk4xMEpsZ3V4NFdiUw0KaGFUNklNN3h1dUVHbDRDckVENmdTejBNNGF1UVk4ekZxQWxJNlFWUTlML28zQnBCRmxYUUMwWmowb3lwQVFKLw0KQ1VLaU9FcEhLRHgram02RU9KOE1aejlMQ01yTmdLME5KSWlaQWdNQkFBRUNnZ0VBRTBMMnNLSjZob1Z0bkZJag0KZXRHV01CNmN5QmJFSXkxM215ZTNwYUdXcDVxSUhjaVU0VXR0c0tjQ2pYRjBibTVNa0liOGFwa01Oa2tQdHVWMQ0KMnJSa254eHozZmFkT2s0NWRnQ1ljeWI0dU9DcEZGVnB2TVR6YXlGNk9RNUNCWUJuYmxiRU1TaTdVclh5U0xzcQ0KUm9OLzJoTml1S0RobktBWDNZcGVYZnYxdnIyaWIrMGtiRDVvMVZLcnB6SlJ5emlsWHFwQWJwNDQ4RExFZHVGeA0KTnJKc0tWb1dXMVhmS1FvR2VDMXZqNFJudzdhWkNyU1BjMEhvMUdKb29xSXlrNjRXZnhGWjhpVElsWDJMU1gzbQ0KQm1pN1ZXZnVJK0QvUXRtWEVpN05oTE1jUmExVXB4QkdiK1ZPZXlucEVyMEpxM3VZSmlva1VIZzloOGIzSDM1Yg0KK0lJaEFRS0JnUUNtbzUrRUNpOEJUcFRHdlpqQXBtdmxGZ055NkpWd0RvVHJLSGdCcHJHVHpsVGt6Q0tLYzJhTw0KTTMvQmVIVUQ1NVFqcTdUM094eGgzQUk3cG9kT0tCWS84eXgzenlYUExQUmVCMlR0eTNVQjE5YU5CclhNUGQ5RQ0KTG5hbUQ0SmZQeTV0WHpWWEloWVB0UzBiNjdGbjZnZFl4MlNBbGFYYWFjejU4eURLZnlZL3VRS0JnUUNCMUxNYg0KTFZNTU1Pd1U4R2xsVVB1V0Q5VnBsMnlURytCN2Nnd0ZiYTlrWVlVSFQ4TmlvaUdxQzlLZWxqeklKNnlUdyt3aA0KQisvNGNJU1o5Y0JDNHB0VnRlTWJwUkg3UTQwK20xU3M1SmQzU1VFcDBMOW5VbmdVNDhrMzlpSTV5aEgxU3JTRw0KREtBamVka2Rjb3hNVWFwUHB6cVprOVNKdGVHckVsTHY5WmcvNFFLQmdHcExQTmt3MWNMenFSc01uWDlscUxVOA0KVVg3ZXRWUUJMdkFCcEdzSk5ZU2V2TEFsTm5NeUlWemJwTVo0Vzh2ZDBEVGd0bEp0dGpFRjhiYXpCdVBuMWlsOA0KcUFUVWNiMnhZejhIWUczK3RlZ3pFWHhycDFOY3RDbjlxVmxMMDFHR0w4czhTLzRFbENYNDM0bEwwcUlDT2lWNw0KS3JTS3dIeU51RjVIbzhjSFRCS2hBb0dBVjhVRVpENEs0N1g3RTlqSFY3QWN0UUQxUkpJUzI0ekFBSlJFSGpOZA0KbkIzMVFkRWhoSCtaQkkxRGtPUitLTTN4ZEYvQ05UNVpjM29WbXNPeGUwWVl2eVBjYWViNU5nVWY2cEExK1QvOA0KU2E4ak4zS2d3dWZVdUVLWjJKUXo1UjkvYm5WWGZ6dnYwcXZnSkhFNCthdEgyTnR6MlRsQU9PelZwOElXZ1pSbA0KbmVFQ2dZQXpVS0RLS1ZKaXBYdC9TRC8xd2ZzWElCazFxYWpmdENHOFVTcFlGWGp5VzVYMlZ5bTlVTldmVEdJcA0KQlJkVldXamdFbWhyOU5Da1UrVEU4WEVjTXJNRnhWbXBEeTQ4YmxsQWltWFJtOEhNMlhKODQ4TlArTG5GdEtHdA0KTWswT3JuUHdPYitualZGcXdWUllNQ0QzeFN0Z2RnZUppUHFYcWd3SDhjR0M0OGVmZ0E9PQ0KLS0tLS1FTkQgUlNBIFBSSVZBVEUgS0VZLS0tLS0=",
                      "publicJWTkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJVEFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUTRBTUlJQkNRS0NBUUJVZ3VkM3U4WVdxQkJZa1hnczYrbmkNCjEvOG5zOWI0RjZGbncwOEQ0SnRkZWpYOS9WWjJYV05qYnV6QzFSREcydWx4UzhCNkh1Nlh4SFhZT1dTZnM4RjQNClB2dngvU1FnZkVrVlJTQy9aUDd6czNWRE5ZWjBzUlJwM1JnNTNrb2pQbzRPejZrMVp4amtsVEVkSkxZS2piVm4NCnd1NTNwNzExbFUyZFdweEd1RHhmMVUyblFoK1hpSEpmSHJSbFNlUDVpWFhCSnF3bVVMMWQrbmVNTkE5eUZqRHQNCjJzWTBuYkg0ckg1cW5NVUZOMTBKbGd1eDRXYlNoYVQ2SU03eHV1RUdsNENyRUQ2Z1N6ME00YXVRWTh6RnFBbEkNCjZRVlE5TC9vM0JwQkZsWFFDMFpqMG95cEFRSi9DVUtpT0VwSEtEeCtqbTZFT0o4TVp6OUxDTXJOZ0swTkpJaVoNCkFnTUJBQUU9DQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0=",
                      "truckerapicrt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUQxVENDQXIyZ0F3SUJBZ0lVUFVzZ2NYVXZRYWtuQldjeUFDeEw2dmt3b204d0RRWUpLb1pJaHZjTkFRRUwKQlFBd2RqRUxNQWtHQTFVRUJoTUNRMEV4Q3pBSkJnTlZCQWdNQWs5T01ROHdEUVlEVlFRSERBWk5hV3gwYjI0eApGekFWQmdOVkJBb01Ea1JoZEdGVWNuVmphMlZ5TGtsUE1SUXdFZ1lEVlFRTERBdEZibWRwYm1WbGNtbHVaekVhCk1CZ0dBMVVFQXd3UlJHRjBZVlJ5ZFdOclpYSlNiMjkwUTBFd0hoY05NakF4TURFeU1UWXlOalV5V2hjTk1qTXcKTVRFMU1UWXlOalV5V2pCM01Rc3dDUVlEVlFRR0V3SkRRVEVMTUFrR0ExVUVDQXdDVDA0eER6QU5CZ05WQkFjTQpCazFwYkhSdmJqRVhNQlVHQTFVRUNnd09SR0YwWVZSeWRXTnJaWEl1U1U4eEZEQVNCZ05WQkFzTUMwVnVaMmx1ClpXVnlhVzVuTVJzd0dRWURWUVFEREJKa1lYUmhkSEoxWTJ0bGNpMWhjR2t1YVc4d2dnRWlNQTBHQ1NxR1NJYjMKRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEakM4ZmVCVEg4L3NnejFQcTJQYU9QQjc5YWtyeUZvWVpGV292bQpWOXNvMmJNRHp4NVBZSFJydVFGYmJQRzlVVlc2QWZpSHdEb1p2Z3NTVXpyS3ZyR1RlYjluNUhSVlVOMTl0NExTCjdtUFppNzFRbGE4bVR3QmdvTnE4TFppcnZUdzV0S2I4K3NmcFJxQUlUQkVsRmxVUEZISzllcDl2eFdvaHhwdGgKS1dPVkwvV2ZtWldhWXlRdjlLNDBkWUJpRWpGcTFKZVB4MDlnUFdHM2pOT1VYTTZQUVlMaHJDUXFFcy9VME9GWQpwVFRHUmNXZEx4TFVFZVNkcHJKK1ZEc3lEK1lVeUFRR2phYk14VmVTVlRUN1FGbFBjLzc3OVZsRkdXMC8xWVVaCmpqakNsSkFLUWZOTHg5bG85cWJERVBZL3grZmhnRnYyWUVaSTNTdGVyZWUvVDJoWEFnTUJBQUdqV2pCWU1COEcKQTFVZEl3UVlNQmFBRkNJVy9JYkZIUUNBeEdxZC9FVFpXbVhGeGMvQ01Ba0dBMVVkRXdRQ01BQXdDd1lEVlIwUApCQVFEQWdUd01CMEdBMVVkRVFRV01CU0NFbVJoZEdGMGNuVmphMlZ5TFdGd2FTNXBiekFOQmdrcWhraUc5dzBCCkFRc0ZBQU9DQVFFQUxrMlJDbnVweDA5Wmx0SmN3M1pUaFIveUZGNS9KVlVsWkdHTnc3MlAwQmR6SEloQncrVk4KRkNucGFPMjJ0WGF1NlJVeTVNUWhwc3JrbFNKYVdJT25jOUg0Uk0vbGh3YWsyRXN0MkFhdUFwNUdYSVFJMDVBeAo3NmtDZXEyMnUyalNXRWpFS1hGRnRiZXVDZnFpWlpqNWFLcGF1YlZWRG4ydEZTWjJRMFRib2RRN2dpTFdNUTBLCk5ycVgwQWNSU2J0ZnRSNjBhdGQ1YW41aFNXY0dyZUg5ZHdFUVRvVVNFblg2RFRZSURoeElsZStjQ2V5VjVSWk8KVS9hck5RZ0lFY3ZrZUM1d1lZaFFFL1FUN3lNb1lNajFnckxmOTZSZkRhbEVFNE1seUtDWm9wYWNJWUdzSmhuKwpLMWFISEQvbGZxTC9zbnNtY3pXdHlLUncxTDF1WkxPcjJnPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=",
                      "truckerapikey": "LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb3dJQkFBS0NBUUVBNHd2SDNnVXgvUDdJTTlUNnRqMmpqd2UvV3BLOGhhR0dSVnFMNWxmYktObXpBODhlClQyQjBhN2tCVzJ6eHZWRlZ1Z0g0aDhBNkdiNExFbE02eXI2eGszbS9aK1IwVlZEZGZiZUMwdTVqMll1OVVKV3YKSms4QVlLRGF2QzJZcTcwOE9iU20vUHJINlVhZ0NFd1JKUlpWRHhSeXZYcWZiOFZxSWNhYllTbGpsUy8xbjVtVgptbU1rTC9TdU5IV0FZaEl4YXRTWGo4ZFBZRDFodDR6VGxGek9qMEdDNGF3a0toTFAxTkRoV0tVMHhrWEZuUzhTCjFCSGtuYWF5ZmxRN01nL21GTWdFQm8ybXpNVlhrbFUwKzBCWlQzUCsrL1ZaUlJsdFA5V0ZHWTQ0d3BTUUNrSHoKUzhmWmFQYW13eEQyUDhmbjRZQmI5bUJHU04wclhxM252MDlvVndJREFRQUJBb0lCQUZSbFo2aiswMk1RcmdpZQpUWWQ2aUJhOXNZS1FjdVZWY2x6TFdKK0ozdHhqZCtpZGo4Mi9zK2JyQVRjajJ3UWRmTGxFekVaaHpQY09ybnprClZVRlIreDR2cmxlSEV6czNjTzJ2VGtEci9rKzZZdWZXakNHNFVoS1pHRlhFdVRCMWlqS0ZGV0dLTXM5aXdrL3oKUHBoRG9lQ1dJRVNRbFQxdDY1S2NpZHRuRUM0K3oxaURxR21ZZEVEa2xEZFFIVHorRGpseS80VzV2MFpVQWN2Vwo1Unkvd0JldmNURlBXQy9uZGFrN3hGUnVrU2xNZUlhTWhvTlllOU5uVCt2Nmh5VVh1MXp6cG45UEFJRTVpQWpOCnBsZkFEZitwakwrZFJDbW9sWW1LR3NQVjEzSmtCY1p2cEVoUWgrUmJnaWFwczJLc2plQ0NmTmtST0hndHc0MU0KeGxOTU1Ha0NnWUVBOHM1akpuZ2FMblIvTzZtakZEb0wvd1p2UWdnT1h3Z1RBN2tsQ0trbjBYM0xJS0hhaTZESgpyOVRGQktMdkhUazVFK1Y4NkhIZ29VMUFQQnYyMWJpaHhuQXhUYm8wSHZMdG5QOXU3YnZJejFNOWMyd2ZlWUgzCmliMG1FNkV0Y2wvNnVIUHdMVlZtRGh5bllneEZpeTRRRXp1ZHZwaFIvSnlPazQvUytQUzh2ZXNDZ1lFQTcySW8KWDlkY0xvUmYzSk0vRTF1SXhrRGRLZm1VakN6Mk1NN3pyRkpNUERobTFSUlJhQjdidHNxUzl4Mm5KeTI5amtoSQpndTR0Y2s5STdncm9WRXY0cEtkU0lOVzVNVUg0MXJPckxTbFBobCtMaTM5QXNrTERFVXVQbkFmYko3YWZibFFHCjNFWE1Ka1d2WFQxRG90aE11MUpUMTFPMjhmYlBmb3R3YVRucXFFVUNnWUE1RnArblh0dkJDbkVUNVJuTDJxNFIKWTBEcmhKdGthckNWMG9WTG1RSWN0bmY1RHpVa1dVU3lpOU5hK0xoQjViOXUxeWxjT2RJMytzTGNuektWSTVrZAo0Q2tuZmwxYzNYOVN4NWdjVzJlbW40cTJSYmpNeCtzY3ZwVmlUaVl5V3pESEI3Tno1VDFlbWd3YytJZXRac0l1CjAzaU9aSi82UmhFYnp0Z3E0dGd4eXdLQmdCanhwSDFnSm9YZVcxTFRzUlhtU3RsRnR3WUJzTDN1alhUR2k5T2YKKzd1bXNPaHhKbzV2OExzYVhyZ0xTZmltSm9ObCt0QlIyMEIzRElWcGM0NGRJSHFmeU1vTkd6QUx6TThxaDZLOApGRUpQUUc0M3cxa1A1ZDJ1ZnZkbVJpcmNONzY2V01DcE1UMm5zejlHKy81REJiUGJQMHRIdU45N3RXRmRURWhhCnRaMzFBb0dCQU5xZnVycEV4ZHozdXRNUm91RnJjTmVkV2s4VlVpVVZIV1hZMjhNNWQvRjcxMExIOTZuOW12V08Kc1cwcDFjcXBJMEsyQko2WlYwNVpybnlyRHBsVVpVdVpSQWxGR3hYR1dLU2trQzlmWm90SkFOWDBkR29KSitqTwpEYUNLNGxlcXdOMHNPRE1YZFErMlFPaUtlSUxkNU5KcDNUSW1YV1Z0RFlXUkRwOW9iSUdlCi0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg=="
                    },
                    "jobsServer": {
                      "ajv": {
                        "customOptions": {
                          "allErrors": true,
                          "coerceTypes": true,
                          "jsPropertySyntax": true,
                          "keepErrors": false,
                          "singleError": true
                        }
                      },
                      "bind": "0.0.0.0",
                      "compression": {
                        "threshold": 2048
                      },
                      "fastify": {
                        "ignoreTrailingSlash": true,
                        "logger": {
                          "level": "debug"
                        }
                      },
                      "helmet": {
                        "framegaurd": {
                          "action": "deny"
                        }
                      },
                      "jobResponseErrors": true,
                      "keycloak": true,
                      "pluginsEnable": {
                        "DB": true,
                        "FileSFTP": true,
                        "IOTKafka": true,
                        "IOTProxy": false,
                        "IOTRedis": true,
                        "Login": false,
                        "ScriptJS": true,
                        "ScriptSSH": true,
                        "ScriptShell": true,
                        "UtilEcho": true,
                        "UtilFuzzy": true,
                        "UtilSentiment": true,
                        "credentials": false,
                        "jobs": true,
                        "resources": false,
                        "statuschecks": true,
                        "ui": false,
                        "usermanagement": false
                      },
                      "port": "8080",
                      "protocol": {
                        "http2": false,
                        "httpsconfig": {
                          "allowHTTP1": true,
                          "cert": "truckerapi.crt",
                          "key": "truckerapi.key"
                        },
                        "type": "http"
                      },
                      "requestLog": false,
                      "serverID": "ServerHandler",
                      "writableResource": false
                    },
                    "loginServer": {
                      "ajv": {
                        "customOptions": {
                          "allErrors": true,
                          "coerceTypes": true,
                          "jsPropertySyntax": true,
                          "keepErrors": false,
                          "singleError": true
                        }
                      },
                      "bind": "0.0.0.0",
                      "compression": {
                        "threshold": 2048
                      },
                      "fastify": {
                        "ignoreTrailingSlash": true,
                        "logger": {
                          "level": "info"
                        }
                      },
                      "helmet": {
                        "framegaurd": {
                          "action": "deny"
                        }
                      },
                      "jobResponseErrors": true,
                      "keycloak": true,
                      "pluginsEnable": {
                        "DB": false,
                        "FileSFTP": false,
                        "IOTKafka": false,
                        "IOTProxy": false,
                        "IOTRedis": false,
                        "Login": true,
                        "ScriptJS": false,
                        "ScriptSSH": false,
                        "ScriptShell": false,
                        "UtilEcho": false,
                        "UtilFuzzy": false,
                        "UtilSentiment": false,
                        "credentials": false,
                        "jobs": false,
                        "resources": false,
                        "statuschecks": true,
                        "ui": false,
                        "usermanagement": false
                      },
                      "port": "8080",
                      "protocol": {
                        "http2": false,
                        "httpsconfig": {
                          "allowHTTP1": true,
                          "cert": "truckerapi.crt",
                          "key": "truckerapi.key"
                        },
                        "type": "http"
                      },
                      "requestLog": false,
                      "serverID": "ServerHandler",
                      "writableResource": false
                    },
                    "managementServer": {
                      "ajv": {
                        "customOptions": {
                          "allErrors": true,
                          "coerceTypes": true,
                          "jsPropertySyntax": true,
                          "keepErrors": false,
                          "singleError": true
                        }
                      },
                      "bind": "0.0.0.0",
                      "compression": {
                        "threshold": 2048
                      },
                      "fastify": {
                        "ignoreTrailingSlash": true,
                        "logger": {
                          "level": "debug"
                        }
                      },
                      "helmet": {
                        "framegaurd": {
                          "action": "deny"
                        }
                      },
                      "jobResponseErrors": true,
                      "keycloak": true,
                      "pluginsEnable": {
                        "DB": false,
                        "FileSFTP": false,
                        "IOTKafka": false,
                        "IOTProxy": false,
                        "IOTRedis": false,
                        "Login": true,
                        "ScriptJS": false,
                        "ScriptSSH": false,
                        "ScriptShell": false,
                        "UtilEcho": false,
                        "UtilFuzzy": false,
                        "UtilSentiment": false,
                        "credentials": true,
                        "jobs": false,
                        "resources": false,
                        "statuschecks": true,
                        "ui": true,
                        "usermanagement": true
                      },
                      "port": "8080",
                      "protocol": {
                        "http2": false,
                        "httpsconfig": {
                          "allowHTTP1": true,
                          "cert": "truckerapi.crt",
                          "key": "truckerapi.key"
                        },
                        "type": "http"
                      },
                      "requestLog": false,
                      "serverID": "ServerHandler",
                      "writableResource": false
                    },
                    "name": "API",
                    "resource": {
                      "Cache": {
                        "Creds": false,
                        "CredsFlush": 10,
                        "Resource": false,
                        "ResourceFlush": 10
                      },
                      "Templates": {
                        "Scripts": "scripts",
                        "Shell": "shell",
                        "keys": "keys",
                        "resourcedefinitions": "resourcedefinitions"
                      }
                    }
                  },
                  "DB": {
                    "databasename": "userdb",
                    "hostname": "db",
                    "password": "password",
                    "port": 5432,
                    "type": "pg",
                    "user": "testuser"
                  },
                  "TempDB": {
                    "enabled": false,
                    "pvc": "samplepvc"
                  }
                }
              },
              {
                "apiVersion": "datatrucker.datatrucker.io/v1",
                "kind": "DatatruckerFlow",
                "metadata": {
                  "name": "datatruckerflow-sample"
                },
                "spec": {
                  "API": {
                    "Image": {
                      "imageName": "datatrucker-server/datatrucker-api",
                      "imageNameUI": "datatruckerio/datatrucker-ui",
                      "repository": "registry.gitlab.com/datatruckerio",
                      "tagName": "latest"
                    },
                    "name": "api"
                  },
                  "DatatruckerConfig": "datatruckerconfig-sample",
                  "JobDefinitions": [
                    {
                      "name": "echoapi",
                      "restmethod": "GET",
                      "tenant": "Admin",
                      "type": "Util-Echo",
                      "validations": {
                        "properties": {
                          "voila": {
                            "enum": [
                              "true",
                              "false"
                            ],
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    }
                  ],
                  "Keys": {
                    "configmap": "placeholder"
                  },
                  "Replicas": 1,
                  "Resources": {
                    "limits": {
                      "cpu": "500m",
                      "memory": "256Mi"
                    },
                    "requests": {
                      "cpu": "250m",
                      "memory": "256Mi"
                    }
                  },
                  "Scripts": {
                    "configmap": "placeholder"
                  },
                  "Type": "Job"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/datatruckerio/datatrucker-operator:2.0.0
          createdAt: "2021-09-08 01:01:01"
          operators.operatorframework.io/builder: operator-sdk-v1.10.1-ocp
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: hhttps://gitlab.com/datatruckerio/datatrucker-server.git
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              - creates secrets to hold server configs
              - create tempDB for protoypting
              - create configs for seperating Login, management and Jobs endpoints
              - Create crypto configs
            displayName: Datatrucker Config
            kind: DatatruckerConfig
            name: datatruckerconfigs.datatrucker.datatrucker.io
            version: v1
          - description: '- creates an API as per Job Definitions'
            displayName: Datatrucker Flow
            kind: DatatruckerFlow
            name: datatruckerflows.datatrucker.datatrucker.io
            version: v1
        description: "## DataTrucker.IO\n\nDataTrucker.IO is a simple no-code / less-code
          API Backend\n\n### What does it do ?\n\nDatatrucker.IO is a product capable
          of reading simple json/yaml configs and building th code necessary for converting
          it into an API.\nAlong with building the code, it will also host the code
          base on a nodejs server , i.e. it will immediately make it available for
          consumption.\n\n### What does it offload from a developer ?\n\nDataTrucker
          is capable of removing the most common activities which a developer needs
          to do on every new project A few of such common activities are\n\n- Creating
          an API endpoint with a specified business logic (using simple plugins)\n-
          Applying standard RBAC\n- Applying Authorization logic\n- Applying hardening
          on endpoints\n- Log management\n- Connecting to variety of systems\n- Modularizing
          business logic\n- The best of doing it with little to no code\n\n### watch
          the quick elevator pitch to understand datatrucker.io\n\n https://youtu.be/DKLFDqhjs5M\n "
        displayName: DataTrucker.IO
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - datatrucker
        - operator
        - nocode
        - apibuilder
        links:
        - name: Website
          url: https://www.datatrucker.io/
        - name: Git Repo
          url: https://gitlab.com/datatruckerio/datatrucker-server.git
        maintainers:
        - email: gauravshankar.can@gmail.com
          name: Gaurav Shankar
        maturity: alpha
        provider:
          name: DataTrucker.IO
          url: https://www.datatrucker.io/
        relatedImages:
        - docker.io/datatruckerio/datatrucker-operator:2.0.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/openshift-community-operators/datatrucker-operator@sha256:4ab1d683d95d3eeba944b977594aff2e3b3e7203f56598b2fb2f7cff75354be3
        version: 2.0.0
      entries:
      - name: datatrucker-operator.v2.0.0
        version: 2.0.0
      - name: datatrucker-operator.v1.3.2
        version: 1.3.2
      - name: datatrucker-operator.v1.3.1
        version: 1.3.1
      - name: datatrucker-operator.v1.3.0
        version: 1.3.0
      name: alpha
    defaultChannel: alpha
    packageName: datatrucker-operator
    provider:
      name: DataTrucker.IO
      url: https://www.datatrucker.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: ""
    name: percona-server-mysql-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-server-mysql-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQL",
              "metadata": {
                "name": "ps-cluster1",
                "finalizers": [
                  "percona.com/delete-mysql-pods-in-order"
                ]
              },
              "spec": {
                "crVersion": "1.0.0",
                "secretsName": "ps-cluster1-secrets",
                "sslSecretName": "ps-cluster1-ssl",
                "updateStrategy": "SmartUpdate",
                "upgradeOptions": {
                  "versionServiceEndpoint": "https://check.percona.com",
                  "apply": "disabled"
                },
                "mysql": {
                  "clusterType": "group-replication",
                  "autoRecovery": true,
                  "image": "docker.io/percona/percona-server:8.4.6-6.1",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "resources": {
                    "requests": {
                      "memory": "2Gi"
                    },
                    "limits": {
                      "memory": "4Gi"
                    }
                  },
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "exposePrimary": {
                    "enabled": true
                  },
                  "volumeSpec": {
                    "persistentVolumeClaim": {
                      "resources": {
                        "requests": {
                          "storage": "2Gi"
                        }
                      }
                    }
                  },
                  "gracePeriod": 600
                },
                "proxy": {
                  "haproxy": {
                    "enabled": true,
                    "size": 3,
                    "image": "docker.io/percona/haproxy:2.8.15",
                    "imagePullPolicy": "Always",
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "1Gi",
                        "cpu": "600m"
                      }
                    },
                    "gracePeriod": 30,
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    }
                  },
                  "router": {
                    "enabled": false,
                    "image": "docker.io/percona/percona-mysql-router:8.4.6",
                    "imagePullPolicy": "Always",
                    "size": 3,
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "256M"
                      },
                      "limits": {
                        "memory": "256M"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "gracePeriod": 30
                  }
                },
                "orchestrator": {
                  "enabled": false,
                  "image": "docker.io/percona/percona-orchestrator:3.2.6-18",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "gracePeriod": 30,
                  "resources": {
                    "requests": {
                      "memory": "128M"
                    },
                    "limits": {
                      "memory": "256M"
                    }
                  }
                },
                "pmm": {
                  "enabled": false,
                  "image": "docker.io/percona/pmm-client:3.4.1",
                  "imagePullPolicy": "Always",
                  "resources": {
                    "requests": {
                      "memory": "150M",
                      "cpu": "300m"
                    }
                  },
                  "serverHost": "monitoring-service"
                },
                "backup": {
                  "enabled": true,
                  "image": "docker.io/percona/percona-xtrabackup:8.4.0-4.1",
                  "imagePullPolicy": "Always",
                  "storages": {
                    "s3-us-west": {
                      "type": "s3",
                      "verifyTLS": true,
                      "s3": {
                        "bucket": "S3-BACKUP-BUCKET-NAME-HERE",
                        "credentialsSecret": "ps-cluster1-s3-credentials",
                        "region": "us-west-2"
                      }
                    }
                  }
                },
                "toolkit": {
                  "image": "docker.io/percona/percona-toolkit:3.7.0-2",
                  "imagePullPolicy": "Always"
                }
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLBackup",
              "metadata": {
                "name": "backup1",
                "finalizers": [
                  "percona.com/delete-backup"
                ]
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "storageName": "minio"
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLRestore",
              "metadata": {
                "name": "restore1"
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "backupName": "backup1"
              }
            }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: docker.io/percona/percona-server-mysql-operator:1.0.0
          createdAt: "2025-11-13T08:00:00.000Z"
          description: Percona Operator for MySQL based on Percona Server for MySQL
            automates the creation and management of highly available, enterprise-ready
            MySQL database clusters on Kubernetes.
          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"
          repository: https://github.com/percona/percona-server-mysql-operator
          support: Percona
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaServerMySQLBackup is the Schema for the perconaservermysqlbackups
              API
            displayName: Percona Server MySQL Backup
            kind: PerconaServerMySQLBackup
            name: perconaservermysqlbackups.ps.percona.com
            version: v1
          - description: PerconaServerMySQLRestore is the Schema for the perconaservermysqlrestores
              API
            displayName: Percona Server MySQL Restore
            kind: PerconaServerMySQLRestore
            name: perconaservermysqlrestores.ps.percona.com
            version: v1
          - description: PerconaServerMySQL is the Schema for the perconaservermysqls
              API
            displayName: Percona Server MySQL
            kind: PerconaServerMySQL
            name: perconaservermysqls.ps.percona.com
            version: v1
        description: |2+

          ## Percona is Cloud Native

          Percona Operator for MySQL based on Percona Server for MySQL follows our best practices for deployment and configuration of highly-available, fault-tolerant MySQL instances in a Kubernetes-based environment on-premises or in the cloud. It provides the following capabilities:
          * Deploy group replication MySQL clusters with HAProxy or MySQL Router
          * Deploy asynchronous replication MySQL clusters with Orchestrator and HAProxy
          * Expose clusters with regular Kubernetes Services
          * Monitor the cluster with Percona Monitoring and Management
          * Customize MySQL configuration
          * Manage system user passwords

        displayName: Percona Operator for MySQL based on Percona Server for MySQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mysql
        - percona
        - database
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-mysql/ps/
        - name: Github
          url: https://github.com/percona/percona-server-mysql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
        relatedImages:
        - quay.io/community-operator-pipeline-prod/percona-server-mysql-operator@sha256:b0e67a16cd6ba5e3e6ec109316b013ca01ede4149661ba48ef549f80b17a0504
        - docker.io/percona/percona-server-mysql-operator:1.0.0
        version: 1.0.0
      entries:
      - name: percona-server-mysql-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: percona-server-mysql-operator
    provider:
      name: Percona
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Foundation Model Stack
      provider-url: ""
    name: multi-nic-cni-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multi-nic-cni-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nic-cni-operator-multi-nicd",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.3.1",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nicd"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.3.1",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "multi-nic-cni-operator-highspeed",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "highspeed"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-node-1",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "node-1"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3-192.168.0.0-26"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "ipvlanl3"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.3.1
          createdAt: "2025-11-04T05:18:29Z"
          operators.operatorframework.io/builder: operator-sdk-v1.41.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CIDR is the Schema for the cidrs API
            displayName: CIDR
            kind: CIDR
            name: cidrs.multinic.fms.io
            version: v1
          - description: Config is the Schema for the configs API
            displayName: Config
            kind: Config
            name: configs.multinic.fms.io
            version: v1
          - description: DeviceClass is the Schema for the deviceclasses API
            displayName: Device Class
            kind: DeviceClass
            name: deviceclasses.multinic.fms.io
            version: v1
          - description: HostInterface is the Schema for the hostinterfaces API
            displayName: Host Interface
            kind: HostInterface
            name: hostinterfaces.multinic.fms.io
            version: v1
          - description: IPPool is the Schema for the ippools API
            displayName: IPPool
            kind: IPPool
            name: ippools.multinic.fms.io
            version: v1
          - description: MultiNicNetwork is the Schema for the multinicnetworks API
            displayName: Multi Nic Network
            kind: MultiNicNetwork
            name: multinicnetworks.multinic.fms.io
            version: v1
        description: "Multi-NIC CNI Operator helps to attaching secondary network
          interfaces that is linked to \ndifferent network interfaces on host (NIC)
          to pod provides benefits of network segmentation \nand top-up network bandwidth
          in the containerization system.\n\nMulti-NIC CNI is the CNI plugin operating
          on top of Multus CNI. \nHowever, instead of defining and handling each secondary
          network interface one by one, \nthis CNI automatically discovers all available
          secondary interfaces and handles them as a NIC pool. \nWith this manner,
          it can provide the following benefits.\n\ni) Common secondary network definition:
          User can manage only one network definition for \n   multiple secondary
          interfaces with a common CNI main plugin such as ipvlan, macvlan, and sr-iov.\n\nii)
          Common NAT-bypassing network solution: All secondary NICs on each host can
          be assigned \n    with non-conflict CIDR and non-conflict L3 routing configuration
          that can omit an overlay networking overhead. \n    Particularyly, the CNI
          is built-in with L3 IPVLAN solution composing of the following functionalities.\n\n
          \   1. Interface-host-devision CIDR Computation: compute allocating CIDR
          range for each host and each interface \n       from a single global subnet
          with the number of bits for hosts and for interface.\n    2. L3 Host Route
          Configuration: configure L3 routes (next hop via dev) in host route table
          according to the computed CIDR.\n    3. Distributed IP Allocation Management:
          manage IP allocation/deallocation distributedly via the communication \n
          \      between CNI program and daemon at each host.\n\niii) Policy-based
          secondary network attachment: Instead of statically set the desired \n     host's
          master interface name one by one, user can define a policy on attaching
          multiple secondary network \n     interfaces such as specifying only the
          number of desired interfaces, filtering only highspeed NICs.\n\n## Instructions\n\nPlease
          check the [User Guide](https://foundation-model-stack.github.io/multi-nic-cni/user_guide/)"
        displayName: multi-nic-cni-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multi-nic
        - cni
        - network
        links:
        - name: Multi-NIC CNI Operator
          url: https://github.com/foundation-model-stack/multi-nic-cni
        maintainers:
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: minzhang@redhat.com
          name: Min Zhang
        - email: ebendror@redhat.com
          name: Eran Ben Dror
        maturity: alpha
        provider:
          name: Foundation Model Stack
        relatedImages:
        - ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.3.1
        - quay.io/community-operator-pipeline-prod/multi-nic-cni-operator:1.3.1
        version: 1.3.1
      entries:
      - name: multi-nic-cni-operator.v1.3.1
        version: 1.3.1
      - name: multi-nic-cni-operator.v1.3.0
        version: 1.3.0
      - name: multi-nic-cni-operator.v1.2.9
        version: 1.2.9
      - name: multi-nic-cni-operator.v1.2.8
        version: 1.2.8
      - name: multi-nic-cni-operator.v1.2.2
        version: 1.2.2
      - name: multi-nic-cni-operator.v1.2.1
        version: 1.2.1
      - name: multi-nic-cni-operator.v1.0.2
        version: 1.0.2
      name: alpha
    - currentCSV: multi-nic-cni-operator.v1.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nic-cni-operator-multi-nicd",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.7",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nicd"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.7",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "multi-nic-cni-operator-highspeed",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "highspeed"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-node-1",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "node-1"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3-192.168.0.0-26"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "ipvlanl3"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.7
          createdAt: "2025-05-09T12:45:12Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CIDR is the Schema for the cidrs API
            displayName: CIDR
            kind: CIDR
            name: cidrs.multinic.fms.io
            version: v1
          - description: Config is the Schema for the configs API
            displayName: Config
            kind: Config
            name: configs.multinic.fms.io
            version: v1
          - description: DeviceClass is the Schema for the deviceclasses API
            displayName: Device Class
            kind: DeviceClass
            name: deviceclasses.multinic.fms.io
            version: v1
          - description: HostInterface is the Schema for the hostinterfaces API
            displayName: Host Interface
            kind: HostInterface
            name: hostinterfaces.multinic.fms.io
            version: v1
          - description: IPPool is the Schema for the ippools API
            displayName: IPPool
            kind: IPPool
            name: ippools.multinic.fms.io
            version: v1
          - description: MultiNicNetwork is the Schema for the multinicnetworks API
            displayName: Multi Nic Network
            kind: MultiNicNetwork
            name: multinicnetworks.multinic.fms.io
            version: v1
        description: "Multi-NIC CNI Operator helps to attaching secondary network
          interfaces that is linked to \ndifferent network interfaces on host (NIC)
          to pod provides benefits of network segmentation \nand top-up network bandwidth
          in the containerization system.\n\nMulti-NIC CNI is the CNI plugin operating
          on top of Multus CNI. \nHowever, instead of defining and handling each secondary
          network interface one by one, \nthis CNI automatically discovers all available
          secondary interfaces and handles them as a NIC pool. \nWith this manner,
          it can provide the following benefits.\n\ni) Common secondary network definition:
          User can manage only one network definition for \n   multiple secondary
          interfaces with a common CNI main plugin such as ipvlan, macvlan, and sr-iov.\n\nii)
          Common NAT-bypassing network solution: All secondary NICs on each host can
          be assigned \n    with non-conflict CIDR and non-conflict L3 routing configuration
          that can omit an overlay networking overhead. \n    Particularyly, the CNI
          is built-in with L3 IPVLAN solution composing of the following functionalities.\n\n
          \   1. Interface-host-devision CIDR Computation: compute allocating CIDR
          range for each host and each interface \n       from a single global subnet
          with the number of bits for hosts and for interface.\n    2. L3 Host Route
          Configuration: configure L3 routes (next hop via dev) in host route table
          according to the computed CIDR.\n    3. Distributed IP Allocation Management:
          manage IP allocation/deallocation distributedly via the communication \n
          \      between CNI program and daemon at each host.\n\niii) Policy-based
          secondary network attachment: Instead of statically set the desired \n     host's
          master interface name one by one, user can define a policy on attaching
          multiple secondary network \n     interfaces such as specifying only the
          number of desired interfaces, filtering only highspeed NICs.\n\n## Instructions\n\nPlease
          check the [User Guide](https://foundation-model-stack.github.io/multi-nic-cni/user_guide/)"
        displayName: multi-nic-cni-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multi-nic
        - cni
        - network
        links:
        - name: Multi-NIC CNI Operator
          url: https://github.com/foundation-model-stack/multi-nic-cni
        maintainers:
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: minzhang@redhat.com
          name: Min Zhang
        - email: ebendror@redhat.com
          name: Eran Ben Dror
        maturity: alpha
        provider:
          name: Foundation Model Stack
        relatedImages:
        - ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.7
        - quay.io/community-operator-pipeline-prod/multi-nic-cni-operator:1.2.7
        version: 1.2.7
      entries:
      - name: multi-nic-cni-operator.v1.2.7
        version: 1.2.7
      - name: multi-nic-cni-operator.v1.2.3
        version: 1.2.3
      - name: multi-nic-cni-operator.v1.2.0
        version: 1.2.0
      - name: multi-nic-cni-operator.v1.1.0
        version: 1.1.0
      name: beta
    - currentCSV: multi-nic-cni-operator.v1.2.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nic-cni-operator-multi-nicd",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.6",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nicd"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.6",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "multi-nic-cni-operator-highspeed",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "highspeed"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-node-1",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "node-1"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3-192.168.0.0-26"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "ipvlanl3"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.6
          createdAt: "2025-03-24T14:49:54Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CIDR is the Schema for the cidrs API
            displayName: CIDR
            kind: CIDR
            name: cidrs.multinic.fms.io
            version: v1
          - description: Config is the Schema for the configs API
            displayName: Config
            kind: Config
            name: configs.multinic.fms.io
            version: v1
          - description: DeviceClass is the Schema for the deviceclasses API
            displayName: Device Class
            kind: DeviceClass
            name: deviceclasses.multinic.fms.io
            version: v1
          - description: HostInterface is the Schema for the hostinterfaces API
            displayName: Host Interface
            kind: HostInterface
            name: hostinterfaces.multinic.fms.io
            version: v1
          - description: IPPool is the Schema for the ippools API
            displayName: IPPool
            kind: IPPool
            name: ippools.multinic.fms.io
            version: v1
          - description: MultiNicNetwork is the Schema for the multinicnetworks API
            displayName: Multi Nic Network
            kind: MultiNicNetwork
            name: multinicnetworks.multinic.fms.io
            version: v1
        description: "Multi-NIC CNI Operator helps to attaching secondary network
          interfaces that is linked to \ndifferent network interfaces on host (NIC)
          to pod provides benefits of network segmentation \nand top-up network bandwidth
          in the containerization system.\n\nMulti-NIC CNI is the CNI plugin operating
          on top of Multus CNI. \nHowever, instead of defining and handling each secondary
          network interface one by one, \nthis CNI automatically discovers all available
          secondary interfaces and handles them as a NIC pool. \nWith this manner,
          it can provide the following benefits.\n\ni) Common secondary network definition:
          User can manage only one network definition for \n   multiple secondary
          interfaces with a common CNI main plugin such as ipvlan, macvlan, and sr-iov.\n\nii)
          Common NAT-bypassing network solution: All secondary NICs on each host can
          be assigned \n    with non-conflict CIDR and non-conflict L3 routing configuration
          that can omit an overlay networking overhead. \n    Particularyly, the CNI
          is built-in with L3 IPVLAN solution composing of the following functionalities.\n\n
          \   1. Interface-host-devision CIDR Computation: compute allocating CIDR
          range for each host and each interface \n       from a single global subnet
          with the number of bits for hosts and for interface.\n    2. L3 Host Route
          Configuration: configure L3 routes (next hop via dev) in host route table
          according to the computed CIDR.\n    3. Distributed IP Allocation Management:
          manage IP allocation/deallocation distributedly via the communication \n
          \      between CNI program and daemon at each host.\n\niii) Policy-based
          secondary network attachment: Instead of statically set the desired \n     host's
          master interface name one by one, user can define a policy on attaching
          multiple secondary network \n     interfaces such as specifying only the
          number of desired interfaces, filtering only highspeed NICs.\n\n## Instructions\n\nPlease
          check the [User Guide](https://foundation-model-stack.github.io/multi-nic-cni/user_guide/)"
        displayName: multi-nic-cni-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multi-nic
        - cni
        - network
        links:
        - name: Multi-NIC CNI Operator
          url: https://github.com/foundation-model-stack/multi-nic-cni
        maintainers:
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: minzhang@redhat.com
          name: Min Zhang
        - email: ebendror@redhat.com
          name: Eran Ben Dror
        maturity: alpha
        provider:
          name: Foundation Model Stack
        relatedImages:
        - ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.6
        - quay.io/community-operator-pipeline-prod/multi-nic-cni-operator:1.2.6
        version: 1.2.6
      entries:
      - name: multi-nic-cni-operator.v1.2.6
        version: 1.2.6
      - name: multi-nic-cni-operator.v1.2.5
        version: 1.2.5
      - name: multi-nic-cni-operator.v1.2.4
        version: 1.2.4
      - name: multi-nic-cni-operator.v1.0.5
        version: 1.0.5
      - name: multi-nic-cni-operator.v1.0.4
        version: 1.0.4
      - name: multi-nic-cni-operator.v1.0.3
        version: 1.0.3
      name: stable
    defaultChannel: stable
    packageName: multi-nic-cni-operator
    provider:
      name: Foundation Model Stack
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sns-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sns-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sns.services.k8s.aws/v1alpha1",
                "kind": "PlatformApplication",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sns.services.k8s.aws/v1alpha1",
                "kind": "PlatformEndpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sns.services.k8s.aws/v1alpha1",
                "kind": "Topic",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sns-controller:1.3.0
          createdAt: "2025-11-29T04:10:34Z"
          description: AWS SNS controller is a service controller for managing SNS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PlatformApplication represents the state of an AWS sns PlatformApplication
              resource.
            displayName: PlatformApplication
            kind: PlatformApplication
            name: platformapplications.sns.services.k8s.aws
            version: v1alpha1
          - description: PlatformEndpoint represents the state of an AWS sns PlatformEndpoint
              resource.
            displayName: PlatformEndpoint
            kind: PlatformEndpoint
            name: platformendpoints.sns.services.k8s.aws
            version: v1alpha1
          - description: Subscription represents the state of an AWS sns Subscription
              resource.
            displayName: Subscription
            kind: Subscription
            name: subscriptions.sns.services.k8s.aws
            version: v1alpha1
          - description: Topic represents the state of an AWS sns Topic resource.
            displayName: Topic
            kind: Topic
            name: topics.sns.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Simple Notification Service (SNS) resources in AWS from within your Kubernetes cluster.

          **About Amazon SNS**

          Amazon Simple Notification Service (Amazon SNS) is a managed service that provides message delivery from publishers to subscribers (also known as producers and consumers). Publishers communicate asynchronously with subscribers by sending messages to a topic, which is a logical access point and communication channel. Clients can subscribe to the SNS topic and receive published messages using a supported endpoint type, such as Amazon Kinesis Data Firehose, Amazon SQS, AWS Lambda, HTTP, email, mobile push notifications, and mobile text messages (SMS).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SNS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sns
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SNS Developer Resources
          url: https://aws.amazon.com/sns/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: sns maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sns-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-sns-controller@sha256:49d4f5f5a7747cdbdae724153d6afce7fdea9a340707e6c6aa0e946bd9295d79
        version: 1.3.0
      entries:
      - name: ack-sns-controller.v1.3.0
        version: 1.3.0
      - name: ack-sns-controller.v1.2.3
        version: 1.2.3
      - name: ack-sns-controller.v1.2.2
        version: 1.2.2
      - name: ack-sns-controller.v1.2.1
        version: 1.2.1
      - name: ack-sns-controller.v1.2.0
        version: 1.2.0
      - name: ack-sns-controller.v1.1.16
        version: 1.1.16
      name: alpha
    defaultChannel: alpha
    packageName: ack-sns-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Microsoft
      provider-url: ""
    name: azure-service-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: azure-service-operator.v1.0.59040
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "APIMgmtAPI",
                "metadata": {
                  "name": "aso-apimgmtapi-sample"
                },
                "spec": {
                  "apiId": "apiId0",
                  "apiService": "apimservice-sample",
                  "location": "westus",
                  "properties": {
                    "apiVersionDescription": "API version description",
                    "description": "API description",
                    "displayName": "aso-apimgmtapi-sample",
                    "isCurrent": true,
                    "isOnline": true,
                    "path": "/api/test",
                    "protocols": [
                      "http"
                    ],
                    "subscriptionRequired": false
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "ApimService",
                "metadata": {
                  "name": "apimservice-sample"
                },
                "spec": {
                  "appInsightsName": "appinsights-sample-wmm",
                  "appInsightsResourceGroup": "resourcegroup-azure-operators-wmm",
                  "location": "westus",
                  "publisherEmail": {
                    "Your email": ""
                  },
                  "publisherName": {
                    "Your name": ""
                  },
                  "resourceGroup": "resourcegroup-azure-operators",
                  "tier": "premium",
                  "vnetName": "virtualnetwork-sample",
                  "vnetResourceGroup": "resourcegroup-azure-operators",
                  "vnetSubnetName": "test1",
                  "vnetType": "none"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AppInsights",
                "metadata": {
                  "name": "appinsights-sample"
                },
                "spec": {
                  "applicationType": "other",
                  "kind": "other",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AppInsightsApiKey",
                "metadata": {
                  "name": "key-sample"
                },
                "spec": {
                  "appInsights": "appinsights-sample",
                  "authSDKControlChannel": true,
                  "readTelemetry": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "writeAnnotations": true
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureLoadBalancer",
                "metadata": {
                  "name": "lb-sample-01"
                },
                "spec": {
                  "backendAddressPoolName": "test",
                  "backendPort": 3000,
                  "frontendPortRangeEnd": 2000,
                  "frontendPortRangeStart": 1001,
                  "inboundNatPoolName": "test",
                  "location": "SouthCentralUS",
                  "publicIPAddressName": "lb-pip-sample-01",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureNetworkInterface",
                "metadata": {
                  "name": "nic-sample-01"
                },
                "spec": {
                  "location": "SouthCentralUS",
                  "publicIPAddressName": "nic-pip-sample-01",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnetName": "test1",
                  "vnetName": "vnet-sample-01"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureNetworkInterface",
                "metadata": {
                  "name": "nic-sample-02"
                },
                "spec": {
                  "location": "SouthCentralUS",
                  "publicIPAddressName": "nic-pip-sample-02",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnetName": "test1",
                  "vnetName": "vnet-sample-02"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzurePublicIPAddress",
                "metadata": {
                  "name": "lb-pip-sample-01"
                },
                "spec": {
                  "idleTimeoutInMinutes": 10,
                  "location": "SouthCentralUS",
                  "publicIPAddressVersion": "IPv4",
                  "publicIPAllocationMethod": "Static",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "skuName": "Basic"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzurePublicIPAddress",
                "metadata": {
                  "name": "nic-pip-sample-01"
                },
                "spec": {
                  "idleTimeoutInMinutes": 10,
                  "location": "SouthCentralUS",
                  "publicIPAddressVersion": "IPv4",
                  "publicIPAllocationMethod": "Static",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "skuName": "Basic"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzurePublicIPAddress",
                "metadata": {
                  "name": "nic-pip-sample-02"
                },
                "spec": {
                  "idleTimeoutInMinutes": 10,
                  "location": "SouthCentralUS",
                  "publicIPAddressVersion": "IPv4",
                  "publicIPAllocationMethod": "Static",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "skuName": "Basic"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSQLManagedUser",
                "metadata": {
                  "name": "azuresqlmanageduser-sample"
                },
                "spec": {
                  "dbName": "azuresqldatabase-sample",
                  "managedIdentityClientId": null,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "db_owner"
                  ],
                  "server": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSQLUser",
                "metadata": {
                  "name": "sqluser-sample"
                },
                "spec": {
                  "dbName": "azuresqldatabase-sample1",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "db_owner"
                  ],
                  "server": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSQLVNetRule",
                "metadata": {
                  "name": "azuresqlvnetrule-sample"
                },
                "spec": {
                  "ignoreMissingServiceEndpoint": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "subnetName": "test1",
                  "vNetName": "virtualnetwork-sample",
                  "vNetResourceGroup": "resourcegroup-vnet",
                  "vNetSubscriptionID": {
                    "vnet_subscription_id": ""
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlAction",
                "metadata": {
                  "name": "azuresqlaction-sample"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverName": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlDatabase",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "azuresqldatabase-sample1"
                },
                "spec": {
                  "edition": 0,
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlDatabase",
                "metadata": {
                  "labels": {
                    "tag1": "valueA",
                    "tag2": "valueB"
                  },
                  "name": "azuresqldatabase-sample3"
                },
                "spec": {
                  "edition": 0,
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlFailoverGroup",
                "metadata": {
                  "name": "azuresqlfailovergroup-sample"
                },
                "spec": {
                  "databaselist": [
                    "azuresqldatabase-sample1",
                    "azuresqldatabase-sample2"
                  ],
                  "failovergraceperiod": 30,
                  "failoverpolicy": "Automatic",
                  "location": "eastus",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "secondaryserver": "sqlserver-samplesec",
                  "secondaryserverresourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-samplepri"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlFirewallRule",
                "metadata": {
                  "name": "sqlf-allowazuresvcaccess"
                },
                "spec": {
                  "endipaddress": "0.0.0.0",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "startipaddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "sqlserver-sample-777"
                },
                "spec": {
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "sqlserver-sample777"
                },
                "spec": {
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVMScaleSet",
                "metadata": {
                  "name": "vmss-sample-01"
                },
                "spec": {
                  "adminUserName": "azureuser7",
                  "backendAddressPoolName": "test",
                  "capacity": 3,
                  "inboundNatPoolName": "test",
                  "loadBalancerName": "lb-sample-01",
                  "location": "SouthCentralUS",
                  "osType": "Linux",
                  "platformImageURN": "Canonical:UbuntuServer:16.04-LTS:latest",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sshPublicKeyData": "{ssh public key}",
                  "subnetName": "test1",
                  "virtualNetworkName": "vnet-sample-01",
                  "vmSize": "Standard_DS1_v2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVirtualMachine",
                "metadata": {
                  "name": "hpfvm1"
                },
                "spec": {
                  "adminUserName": "azureuser",
                  "location": "SouthCentralUS",
                  "networkInterfaceName": "nic-sample-02",
                  "osType": "Linux",
                  "platformImageURN": "Canonical:UbuntuServer:16.04-LTS:latest",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sshPublicKeyData": {
                    "ssh key": ""
                  },
                  "vmSize": "Standard_DS1_v2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVirtualMachine",
                "metadata": {
                  "name": "hpfvm20"
                },
                "spec": {
                  "adminUserName": "azureuser",
                  "location": "SouthCentralUS",
                  "networkInterfaceName": "nic-sample-01",
                  "osType": "Linux",
                  "platformImageURN": "Canonical:UbuntuServer:16.04-LTS:latest",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sshPublicKeyData": "{ssh public key}",
                  "vmSize": "Standard_DS1_v2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVirtualMachineExtension",
                "metadata": {
                  "name": "vmext20a"
                },
                "spec": {
                  "autoUpgradeMinorVersion": true,
                  "forceUpdateTag": "Test2",
                  "location": "SouthCentralUS",
                  "protectedSettings": "{}",
                  "publisher": "Microsoft.Azure.Extensions",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "settings": "{\"commandToExecute\":\"echo 'hello, world'\"}",
                  "typeHandlerVersion": "2.1",
                  "typeName": "CustomScript",
                  "vmName": "vm20"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "BlobContainer",
                "metadata": {
                  "name": "blobcontainer-sample"
                },
                "spec": {
                  "accesslevel": "Container",
                  "accountname": "storageaccountsample777",
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "ConsumerGroup",
                "metadata": {
                  "name": "consumergroup-sample-1"
                },
                "spec": {
                  "eventHub": "eventhub-sample-1",
                  "namespace": "eventhubnamespace-sample-1",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "CosmosDB",
                "metadata": {
                  "name": "cosmosdb-sample-1"
                },
                "spec": {
                  "kind": "GlobalDocumentDB",
                  "location": "westus",
                  "properties": {
                    "databaseAccountOfferType": "Standard",
                    "isVirtualNetworkFilterEnabled": true
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "CosmosDB",
                "metadata": {
                  "labels": {
                    "CosmosAccountType": "Production"
                  },
                  "name": "cosmosdb-sample-2"
                },
                "spec": {
                  "ipRules": [
                    "104.42.195.92,40.76.54.131,52.176.6.30,52.169.50.45,52.187.184.26"
                  ],
                  "kind": "GlobalDocumentDB",
                  "location": "eastus",
                  "locations": [
                    {
                      "failoverPriority": 0,
                      "isZoneRedundant": true,
                      "locationName": "eastus"
                    },
                    {
                      "failoverPriority": 1,
                      "locationName": "westus"
                    }
                  ],
                  "properties": {
                    "databaseAccountOfferType": "Standard",
                    "enableMultipleWriteLocations": true
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "Eventhub",
                "metadata": {
                  "name": "eventhub-sample-1"
                },
                "spec": {
                  "authorizationRule": {
                    "name": "RootManageSharedAccessKey",
                    "rights": [
                      "Listen",
                      "Manage",
                      "Send"
                    ]
                  },
                  "location": "westus",
                  "namespace": "eventhubnamespace-sample-1",
                  "properties": {
                    "messageRetentionInDays": 7,
                    "partitionCount": 2
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "Eventhub",
                "metadata": {
                  "name": "eventhub-sample-2307-10-capture"
                },
                "spec": {
                  "authorizationRule": {
                    "name": "RootManageSharedAccessKey",
                    "rights": [
                      "Listen",
                      "Manage",
                      "Send"
                    ]
                  },
                  "location": "westus",
                  "namespace": "eventhubnamespace-sample-1",
                  "properties": {
                    "captureDescription": {
                      "destination": {
                        "archiveNameFormat": "{Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}",
                        "blobContainer": "capturecontainer",
                        "name": "EventHubArchive.AzureBlockBlob",
                        "storageAccount": {
                          "accountName": "storageaccountauv1",
                          "resourceGroup": "my-resource-group"
                        }
                      },
                      "enabled": true,
                      "intervalInSeconds": 120,
                      "sizeLimitInBytes": 524288000
                    },
                    "messageRetentionInDays": 7,
                    "partitionCount": 2
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "EventhubNamespace",
                "metadata": {
                  "name": "eventhubnamespace-sample-1"
                },
                "spec": {
                  "location": "westus",
                  "properties": {
                    "isAutoInflateEnabled": false,
                    "kafkaEnabled": false,
                    "maximumThroughputUnits": 0
                  },
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sku": {
                    "capacity": 1,
                    "name": "Standard",
                    "tier": "Standard"
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "KeyVault",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "keyvaultsample123"
                },
                "spec": {
                  "accessPolicies": [
                    {
                      "objectID": "\u003cobjectID\u003e",
                      "permissions": {
                        "certificates": [
                          "list",
                          "get"
                        ],
                        "keys": [
                          "list",
                          "get"
                        ],
                        "secrets": [
                          "list",
                          "get"
                        ],
                        "storage": [
                          "list",
                          "get"
                        ]
                      },
                      "tenantID": "\u003ctenantID\u003e"
                    }
                  ],
                  "enableSoftDelete": false,
                  "location": "westus",
                  "networkPolicies": {
                    "bypass": "AzureServices",
                    "defaultAction": "Allow",
                    "ipRules": [
                      "172.16.0.0/24",
                      "172.16.1.0/24"
                    ],
                    "virtualNetworkRules": [
                      "/subscriptions/\u003csubid\u003e/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1",
                      "/subscriptions/\u003csubid\u003e/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet2"
                    ]
                  },
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sku": {
                    "name": "standard"
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "KeyVault",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "keyvaultsample123-simple"
                },
                "spec": {
                  "enableSoftDelete": false,
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "KeyVaultKey",
                "metadata": {
                  "name": "keyvaultkey-sample"
                },
                "spec": {
                  "keySize": 4096,
                  "keyVault": "keyvaultsample123",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "type": "RSA"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLDatabase",
                "metadata": {
                  "name": "mysqldatabase-sample"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLDatabase",
                "metadata": {
                  "name": "mysqldatabase-sample2"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLFirewallRule",
                "metadata": {
                  "name": "mysqlfirewallrule-sample"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLFirewallRule",
                "metadata": {
                  "name": "mysqlfirewallrule-sample2"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample2",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLServer",
                "metadata": {
                  "name": "mysqlserver-replica"
                },
                "spec": {
                  "createMode": "Replica",
                  "location": "eastus2",
                  "replicaProperties": {
                    "sourceServerId": "/subscriptions/{SUBID}/resourceGroups/resourcegroup-azure-operators/providers/Microsoft.DBforMySQL/servers/mysqlserver-sample"
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLServer",
                "metadata": {
                  "name": "mysqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus2",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "8.0",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLServer",
                "metadata": {
                  "name": "mysqlserver-sample2"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus2",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "8.0",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLUser",
                "metadata": {
                  "name": "mysqluser-sample"
                },
                "spec": {
                  "dbName": "mysqldatabase-sample",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "SELECT"
                  ],
                  "server": "mysqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLVNetRule",
                "metadata": {
                  "name": "mysqlvnetrule-sample"
                },
                "spec": {
                  "ignoreMissingServiceEndpoint": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample",
                  "subnetName": "test1",
                  "vNetName": "virtualnetwork-sample",
                  "vNetResourceGroup": "resourcegroup-vnet",
                  "vNetSubscriptionID": {
                    "vnet_subscription_id": ""
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLDatabase",
                "metadata": {
                  "name": "postgresqldatabase-sample"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLDatabase",
                "metadata": {
                  "name": "postgresqldatabase-sample2"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLFirewallRule",
                "metadata": {
                  "name": "postgresqlfirewallrule-sample"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLFirewallRule",
                "metadata": {
                  "name": "postgresqlfirewallrule-sample2"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample2",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "name": "postgresqlserver-replica3"
                },
                "spec": {
                  "createMode": "Replica",
                  "location": "eastus",
                  "replicaProperties": {
                    "sourceServerId": "/subscriptions/{subscription ID}/resourceGroups/resourcegroup-azure-operators/providers/Microsoft.DBforPostgreSQL/servers/postgresqlserver-sample"
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "name": "postgresqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "10",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "name": "postgresqlserver-sample2"
                },
                "spec": {
                  "location": "southcentralus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "10",
                  "sku": {
                    "capacity": 2,
                    "family": "Gen5",
                    "name": "B_Gen5_2",
                    "size": "51200",
                    "tier": "Basic"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLUser",
                "metadata": {
                  "name": "psqluser-sample"
                },
                "spec": {
                  "dbName": "postgresqldatabase-sample",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "azure_pg_admin"
                  ],
                  "server": "postgresqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLVNetRule",
                "metadata": {
                  "name": "postgresqlvnetrule-sample1"
                },
                "spec": {
                  "ignoreMissingServiceEndpoint": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample",
                  "subnetName": "test1",
                  "vNetName": "virtualnetwork-sample",
                  "vNetResourceGroup": "resourcegroup-azure-operators",
                  "vNetSubscriptionID": {
                    "vnet_subscription_id": ""
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "RedisCache",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "rediscache-sample-1"
                },
                "spec": {
                  "location": "westus",
                  "properties": {
                    "enableNonSslPort": true,
                    "sku": {
                      "capacity": 1,
                      "family": "C",
                      "name": "Basic"
                    }
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "RedisCacheAction",
                "metadata": {
                  "name": "rediscacheaction-sample-1"
                },
                "spec": {
                  "actionName": "rollallkeys",
                  "cacheName": "rediscache-sample-1",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "RedisCacheFirewallRule",
                "metadata": {
                  "name": "rediscachefirewallrule"
                },
                "spec": {
                  "properties": {
                    "endIP": "0.0.0.0",
                    "startIP": "0.0.0.0"
                  },
                  "redisCache": "rediscache-sample-1",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "ResourceGroup",
                "metadata": {
                  "name": "resourcegroup-azure-operators"
                },
                "spec": {
                  "location": "westus"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "StorageAccount",
                "metadata": {
                  "name": "storageaccountsample777"
                },
                "spec": {
                  "accessTier": "Hot",
                  "kind": "StorageV2",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sku": {
                    "name": "Standard_RAGRS"
                  },
                  "supportsHttpsTrafficOnly": true
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "VirtualNetwork",
                "metadata": {
                  "name": "vnet-sample-01"
                },
                "spec": {
                  "addressSpace": "10.0.0.0/8",
                  "location": "SouthCentralUS",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnets": [
                    {
                      "subnetAddressPrefix": "10.1.0.0/16",
                      "subnetName": "test1"
                    },
                    {
                      "subnetAddressPrefix": "10.2.0.0/16",
                      "subnetName": "test2"
                    }
                  ]
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "VirtualNetwork",
                "metadata": {
                  "name": "vnet-sample-02"
                },
                "spec": {
                  "addressSpace": "10.0.0.0/8",
                  "location": "SouthCentralUS",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnets": [
                    {
                      "subnetAddressPrefix": "10.1.0.0/16",
                      "subnetName": "test1"
                    },
                    {
                      "subnetAddressPrefix": "10.2.0.0/16",
                      "subnetName": "test2"
                    }
                  ]
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha2",
                "kind": "BlobContainer",
                "metadata": {
                  "name": "blobcontainer-sample"
                },
                "spec": {
                  "accessLevel": "Container",
                  "accountName": "storageaccountsample777",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha2",
                "kind": "MySQLServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "mysqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus2",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "8.0",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha2",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "postgresqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "10",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlDatabase",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "azuresqldatabase-sample"
                },
                "spec": {
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "sku": {
                    "name": "Basic",
                    "tier": "Basic"
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlFailoverGroup",
                "metadata": {
                  "name": "azuresqlfailovergroup-sample"
                },
                "spec": {
                  "databaseList": [
                    "azuresqldatabase-sample",
                    "azuresqldatabase-sample2"
                  ],
                  "failoverGracePeriod": 30,
                  "failoverPolicy": "automatic",
                  "location": "eastus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "secondaryServer": "sqlserver-samplesec",
                  "secondaryServerResourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-samplepri"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlFirewallRule",
                "metadata": {
                  "name": "sqlf-allowazuresvcaccess"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "sqlserver-sample-777"
                },
                "spec": {
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Cloud Provider
          certified: "false"
          containerImage: mcr.microsoft.com/k8s/azureserviceoperator:1.0.59040
          createdAt: Mon 12 Jun 2023 04:24:02 UTC
          description: The Azure Service Operator helps you provision Azure resources
            and connect your applications to them from within Kubernetes.
          displayName: Azure Service Operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Azure/azure-service-operator
          support: https://github.com/Azure/azure-service-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Creates an API with the specified properties in the specified
              API Management service.
            displayName: APIMgmtAPI
            kind: APIMgmtAPI
            name: apimgmtapis.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an API Management instance into a specified Resource
              Group at the specified location. It also provides the option to link
              to an Application Insights instance for logging, and to place the API
              Management instance in a specified Virtual Network.
            displayName: ApimService
            kind: ApimService
            name: apimservices.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Application Insights instance into a specified
              Resource Group at the specified location.
            displayName: AppInsights
            kind: AppInsights
            name: appinsights.azure.microsoft.com
            version: v1alpha1
          - description: Creates an Api Key to access a given Application Insights
              instance.
            displayName: AppInsightsApiKey
            kind: AppInsightsApiKey
            name: appinsightsapikeys.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Load Balancer (LB) into a specified Resource
              Group at the specified location.
            displayName: AzureLoadBalancer
            kind: AzureLoadBalancer
            name: azureloadbalancers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Network Interface (NIC) into a specified
              Resource Group at the specified location. Users can specify underlying
              public IP address and virtual network configurations in their NIC setup.
            displayName: AzureNetworkInterface
            kind: AzureNetworkInterface
            name: azurenetworkinterfaces.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Public IP Address (PIP) into a specified
              Resource Group at the specified location. Users can specify IP allocation
              method, idle timeout, IP address version, and SKU.
            displayName: AzurePublicIPAddress
            kind: AzurePublicIPAddress
            name: azurepublicipaddresses.azure.microsoft.com
            version: v1alpha1
          - description: Allows you to roll the password for the specified SQL server.
            displayName: AzureSqlAction
            kind: AzureSqlAction
            name: azuresqlactions.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an SQL database given the SQL server.
            displayName: AzureSqlDatabase
            kind: AzureSqlDatabase
            name: azuresqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an SQL database given the SQL server
            displayName: AzureSqlDatabase
            kind: AzureSqlDatabase
            name: azuresqldatabases.azure.microsoft.com
            version: v1beta1
          - description: Deploys a failover group on a specified Azure SQL server
              given the secondary server and the databases to failover.
            displayName: AzureSqlFailoverGroup
            kind: AzureSqlFailoverGroup
            name: azuresqlfailovergroups.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a failover group on a specified Azure SQL server
              given the secondary server and the databases to failover.
            displayName: AzureSqlFailoverGroup
            kind: AzureSqlFailoverGroup
            name: azuresqlfailovergroups.azure.microsoft.com
            version: v1beta1
          - description: Deploys a firewall rule to allow access to the SQL server
              from specific IPs.
            displayName: AzureSqlFirewallRule
            kind: AzureSqlFirewallRule
            name: azuresqlfirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the SQL server
              from specific IPs.
            displayName: AzureSqlFirewallRule
            kind: AzureSqlFirewallRule
            name: azuresqlfirewallrules.azure.microsoft.com
            version: v1beta1
          - description: Binds a specified Managed Identity as a user on the SQL database
            displayName: AzureSQLManagedUser
            kind: AzureSQLManagedUser
            name: azuresqlmanagedusers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure SQL server given the location and Resource
              Group.
            displayName: AzureSqlServer
            kind: AzureSqlServer
            name: azuresqlservers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure SQL server given the location and Resource
              Group.
            displayName: AzureSqlServer
            kind: AzureSqlServer
            name: azuresqlservers.azure.microsoft.com
            version: v1beta1
          - description: Creates an user on the specified Azure SQL database and stores
              the username/password as secrets.
            displayName: AzureSQLUser
            kind: AzureSQLUser
            name: azuresqlusers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a VirtualNetwork rule to allow access to the SQL
              server from specific VNets.
            displayName: AzureSQLVNetRule
            kind: AzureSQLVNetRule
            name: azuresqlvnetrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys Azure Virtual Machine Extensions to provide post-deployment
              configuration and automation on Azure VMs.
            displayName: AzureVirtualMachineExtension
            kind: AzureVirtualMachineExtension
            name: azurevirtualmachineextensions.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Virtual Machine (VM) into a specified Resource
              Group at the specified location. Users can specify platform image, size,
              user name and public SSH key, etc. for the VM.
            displayName: AzureVirtualMachine
            kind: AzureVirtualMachine
            name: azurevirtualmachines.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Virtual Machine Scale Set (VMSS) into a
              specified Resource Group at the specified location. Users can specify
              platform image, size, user name and public SSH key, etc. for the VMSS.
            displayName: AzureVMScaleSet
            kind: AzureVMScaleSet
            name: azurevmscalesets.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a Blob Container into a specified Resource Group
              at the specified location. A Storage Account must first be created prior
              to creating a Blob Container.
            displayName: BlobContainer
            kind: BlobContainer
            name: blobcontainers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a Blob Container into a specified Resource Group
              at the specified location. A Storage Account must first be created prior
              to creating a Blob Container.
            displayName: BlobContainer
            kind: BlobContainer
            name: blobcontainers.azure.microsoft.com
            version: v1alpha2
          - description: Deploys a consumer group given the Event Hub, Event Hubs
              namespace and Resource Group.
            displayName: ConsumerGroup
            kind: ConsumerGroup
            name: consumergroups.azure.microsoft.com
            version: v1alpha1
          - description: Provision a CosmosDB instance given the Cosmos DB instance
              type, location, and Resource Group.
            displayName: CosmosDB
            kind: CosmosDB
            name: cosmosdbs.azure.microsoft.com
            version: v1alpha1
          - kind: CosmosDBSQLDatabase
            name: cosmosdbsqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Event Hubs namespace given the Resource Group
              and location. Also has the ability to configure SKU, properties, and
              network rules.
            displayName: EventhubNamespace
            kind: EventhubNamespace
            name: eventhubnamespaces.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Event Hubs instance given the Event Hubs namespace,
              Resource Group and Location.
            displayName: Eventhub
            kind: Eventhub
            name: eventhubs.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Key Vault key given the location and Resource
              Group.
            displayName: KeyVaultKey
            kind: KeyVaultKey
            name: keyvaultkeys.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Key Vault given the location and Resource
              Group.
            displayName: KeyVault
            kind: KeyVault
            name: keyvaults.azure.microsoft.com
            version: v1alpha1
          - description: Add an AAD user to an existing MySQL database.
            kind: MySQLAADUser
            name: mysqlaadusers.azure.microsoft.com
            version: v1alpha1
          - description: Add an AAD user to an existing MySQL database.
            kind: MySQLAADUser
            name: mysqlaadusers.azure.microsoft.com
            version: v1alpha2
          - description: Deploys a database under the given Azure Database for MySQL
              server
            displayName: MySQLDatabase
            kind: MySQLDatabase
            name: mysqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the Azure Database
              for MySQL server from the specified IP range.
            displayName: MySQLFirewallRule
            kind: MySQLFirewallRule
            name: mysqlfirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Create an AAD-based admininistrative user in a MySQL server.
            kind: MySQLServerAdministrator
            name: mysqlserveradministrators.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for MySQL server given the Location,
              Resource Group and other properties. Also helps creating read replicas
              for MySQL server.
            displayName: MySQLServer
            kind: MySQLServer
            name: mysqlservers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for MySQL server given the Location,
              Resource Group and other properties. Also helps creating read replicas
              for MySQL server.
            displayName: MySQLServer
            kind: MySQLServer
            name: mysqlservers.azure.microsoft.com
            version: v1alpha2
          - description: Add a new user to an existing MySQL database.
            displayName: MySQLUser
            kind: MySQLUser
            name: mysqlusers.azure.microsoft.com
            version: v1alpha1
          - description: Add a new user to an existing MySQL database.
            kind: MySQLUser
            name: mysqlusers.azure.microsoft.com
            version: v1alpha2
          - description: Add virtual network rules to the MySQL server.
            displayName: MySQLVNetRule
            kind: MySQLVNetRule
            name: mysqlvnetrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a database under the given Azure Database for PostgreSQL
              server.
            displayName: PostgreSQLDatabase
            kind: PostgreSQLDatabase
            name: postgresqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the Azure Database
              for PostgreSQL server from the specified IP range.
            displayName: PostgreSQLFirewallRule
            kind: PostgreSQLFirewallRule
            name: postgresqlfirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for PostgreSQL server given the
              Location and Resource Group.
            displayName: PostgreSQLServer
            kind: PostgreSQLServer
            name: postgresqlservers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for PostgreSQL server given the
              Location and Resource Group.
            displayName: PostgreSQLServer
            kind: PostgreSQLServer
            name: postgresqlservers.azure.microsoft.com
            version: v1alpha2
          - description: Create and Manage Users for Azure Database for PostgreSQL
              server.
            displayName: PostgreSQLUser
            kind: PostgreSQLUser
            name: postgresqlusers.azure.microsoft.com
            version: v1alpha1
          - description: Create and manage VNet service endpoints and VNet rules in
              Azure Database for PostgreSQL.
            displayName: PostgreSQLVNetRule
            kind: PostgreSQLVNetRule
            name: postgresqlvnetrules.azure.microsoft.com
            version: v1alpha1
          - description: Allows you to regenerate keys and reboot the RedisCache cluster.
            displayName: RedisCacheAction
            kind: RedisCacheAction
            name: rediscacheactions.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the RedisCache
              from the specified IP range.
            displayName: RedisCacheFirewallRule
            kind: RedisCacheFirewallRule
            name: rediscachefirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Cache for Redis into a specified Resource
              Group at the specified location.
            displayName: RedisCache
            kind: RedisCache
            name: rediscaches.azure.microsoft.com
            version: v1alpha1
          - description: Provisions a Resource Group given the location and a name.
            displayName: ResourceGroup
            kind: ResourceGroup
            name: resourcegroups.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Storage Account into a specified Resource
              Group at the specified location.
            displayName: StorageAccount
            kind: StorageAccount
            name: storageaccounts.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Virtual Network into a specified Resource
              Group at the specified location, in the address space provided. Users
              are also able to add subnets to their virtual network through the operator.
            displayName: VirtualNetwork
            kind: VirtualNetwork
            name: virtualnetworks.azure.microsoft.com
            version: v1alpha1
        description: |
          ## Overview

          The Azure Service Operator comprises of:

          - The Custom Resource Definitions (CRDs) for each of the Azure services a Kubernetes user can provision.
          - The Kubernetes controller that watches for requests to create Custom Resources for each of these CRDs and creates them.

          The project was built using [Kubebuilder](https://book.kubebuilder.io/).

          Curious to see how it all works? Check out our [control flow diagrams](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/controlflow.md).

          **Note**: The current version of Azure Service Operator only supports watching all namespaces in the cluster.

          ## Supported Azure Services

          - [Resource Group](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/resourcegroup/resourcegroup.md)
          - [Event Hubs](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/eventhub/eventhub.md)
          - [Azure SQL](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/azuresql/azuresql.md)
          - [Azure Database for PostgreSQL](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/postgresql/postgresql.md)
          - [Azure Database for MySQL](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/mysql/mysql.md)
          - [Azure Key Vault](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/keyvault/keyvault.md)
          - [Azure Cache for Redis](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/rediscache/rediscache.md)
          - [Storage Account](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/storage/storageaccount.md)
          - [Blob Storage](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/storage/blobcontainer.md)
          - [Virtual Network](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/virtualnetwork/virtualnetwork.md)
          - [Application Insights](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/appinsights/appinsights.md)
          - [API Management](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/apimgmt/apimgmt.md)
          - [Cosmos DB](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/cosmosdb/cosmosdb.md)
          - [Virtual Machine](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/virtualmachine/virtualmachine.md)
          - [Virtual Machine Scale Set](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/vmscaleset/vmscaleset.md)

          ## Instructions - Please read before installing

          Before you begin, verify you're running the Azure CLI version 2.0.53 or later. Run `az --version` to find the version. If you need to install or upgrade, see [Install Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli).

          1. Create an Azure Service Principal. You'll need this to grant Azure Service Operator permissions to create resources in your subscription.

              First, set the following environment variables to your Azure Tenant ID and Subscription ID with your values:
              ```yaml
              AZURE_TENANT_ID=<your-tenant-id-goes-here>
              AZURE_SUBSCRIPTION_ID=<your-subscription-id-goes-here>
              ```

              You can find these values by using the [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/?view=azure-cli-latest):
              ```sh
              az account show
              ```

          2. Next, we'll create a Service Principal with Contributor permissions for your subscription, so ASO can create resources in your subscription on your behalf. Note that the [ServicePrincipal](https://docs.microsoft.com/en-us/cli/azure/create-an-azure-service-principal-azure-cli) you pass to the command below needs to have access to create resources in your subscription. If you'd like to use Managed Identity for authorization instead, check out instructions [here](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/managedidentity.md).

              ```sh
              az ad sp create-for-rbac -n "azure-service-operator" --role contributor \
                  --scopes /subscriptions/$AZURE_SUBSCRIPTION_ID
              ```

              This should give you output like the following:
              ```sh
              "appId": "xxxxxxxxxx",
              "displayName": "azure-service-operator",
              "name": "http://azure-service-operator",
              "password": "xxxxxxxxxxx",
              "tenant": "xxxxxxxxxxxxx"
              ```

          3.  Once you have created a Service Principal, gather the following values:

              `AZURE_TENANT_ID` is the Tenant ID from Step 1.

              `AZURE_SUBSCRIPTION_ID` is the Subscription ID from Step 1.

              `AZURE_CLIENT_ID` is the appID from the Service Principal created in Step 2.

              `AZURE_CLIENT_SECRET` is the password from the service Principal we created in Step 2.

              `AZURE_CLOUD_ENV` is the Azure Environment you'd like to use, i.e. AzurePublicCloud, AzureUSGovernmentCloud, AzureChinaCloud, AzureGermanCloud.

          4.  Set those values in a `Secret` called `azureoperatorsettings` within the `operators` Namespace:
              ```yaml
              apiVersion: v1
              kind: Secret
              metadata:
                name: azureoperatorsettings
                namespace: operators
              stringData:
                AZURE_TENANT_ID: <your-tenant-id-goes-here>
                AZURE_SUBSCRIPTION_ID: <your-subscription-id-goes-here>
                AZURE_CLIENT_ID: <your-client-id>
                AZURE_CLIENT_SECRET: <your-client-secret>
                AZURE_CLOUD_ENV: <your-azure-cloud-environment>
              ```

          5. Now you can proceed to install the Azure Service Operator to the `operators` Namespace via the Install button on the top right of this page. After the operator is installed, you will then see the Azure Service Operator pod running in your cluster:

              ```console
              $ kubectl get pods -n operators
              NAME                                                READY   STATUS    RESTARTS   AGE
              azureoperator-controller-manager-7dd75bbd97-mk4s9   2/2     Running   0          35s
              ```

          ## About the project

          This project maintains [releases of the Azure Service Operator](https://github.com/Azure/azure-service-operator/releases).

          Please see the [FAQ](https://github.com/Azure/azure-service-operator/blob/main/docs/faq.md) for answers to commonly asked questions about the Azure Service Operator.

          Have more questions? Feel free to consult our documentation [here](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/contents.md).

          ## Contributing

          The [contribution guide](https://github.com/Azure/azure-service-operator/blob/main/CONTRIBUTING.md) covers everything you need to know about how you can contribute to Azure Service Operators. The [developer guide](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/contents.md#developing-azure-service-operator) will help you onboard as a developer.

          ## Support

          Azure Service Operator is an open source project that is **not** covered by the [Microsoft Azure support policy](https://support.microsoft.com/en-us/help/2941892/support-for-linux-and-open-source-technology-in-azure). Please search open issues [here](https://github.com/Azure/azure-service-operator/issues). If your issue isn't already represented, please [open a new one](https://github.com/Azure/azure-service-operator/issues/new/choose). The Azure Service Operator project maintainers will respond to the best of their abilities.

          ## Code of conduct

          This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information, see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.
        displayName: Azure Service Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - azure, microsoft, cloud service broker
        links:
        - name: Azure Service Operator
          url: https://github.com/Azure/azure-service-operator
        maintainers:
        - email: christian.muirhead@microsoft.com
          name: Christian Muirhead
        maturity: stable
        provider:
          name: Microsoft
        relatedImages:
        - mcr.microsoft.com/k8s/azureserviceoperator:1.0.59040
        - quay.io/openshift-community-operators/azure-service-operator@sha256:2430ebe724ead60e84f12aa485c8dae4af82af10d14400ce76356392030c8c0b
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 1.0.59040
      entries:
      - name: azure-service-operator.v1.0.59040
        version: 1.0.59040
      name: stable
    defaultChannel: stable
    packageName: azure-service-operator
    provider:
      name: Microsoft
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: KubeVirt project
      provider-url: ""
    name: community-kubevirt-hyperconverged
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubevirt-hyperconverged-operator.v1.10.7
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployTektonTaskResources":true,"deployVmConsoleProxy":true},"tektonPipelines":{"namespace":"kubevirt"},"tektonTasks":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"mtq.kubevirt.io/v1alpha1","kind":"MTQ","metadata":{"name":"mtq","namespace":"mtq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: quay.io/kubevirt/hyperconverged-cluster-operator@sha256:0ee30557d5d5a42dec19121e70ed77fbdacd8932f55b11e2c7c1a3d5ad5df4aa
          createdAt: "2024-02-09 14:34:30"
          description: A unified operator deploying and controlling KubeVirt and its
            supporting operators with opinionated defaults
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}}'
          operatorframework.io/suggested-namespace: kubevirt-hyperconverged
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","mtqs.mtq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: "false"
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of HyperConverged Cluster Operator
            displayName: HyperConverged Cluster Operator Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a MTQ deployment
            displayName: MTQ deployment
            kind: MTQ
            name: mtqs.mtq.kubevirt.io
            version: v1alpha1
        description: |-
          **HyperConverged Cluster Operator** is an Operator pattern for managing multi-operator products.
          Specifically, the HyperConverged Cluster Operator manages the deployment of KubeVirt,
          Containerized Data Importer (CDI), Virtual Machine import operator and Cluster Network Addons (CNA) operators.

          **KubeVirt** is a virtual machine management add-on for Kubernetes.
          The aim is to provide a common ground for virtualization solutions on top of
          Kubernetes.

          # Virtualization extension for Kubernetes

          At its core, KubeVirt extends [Kubernetes](https://kubernetes.io) by adding
          additional virtualization resource types (especially the `VirtualMachine` type) through
          [Kubernetes's Custom Resource Definitions API](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/).
          By using this mechanism, the Kubernetes API can be used to manage these `VirtualMachine`
          resources alongside all other resources Kubernetes provides.

          The resources themselves are not enough to launch virtual machines.
          For this to happen the _functionality and business logic_ needs to be added to
          the cluster. The functionality is not added to Kubernetes itself, but rather
          added to a Kubernetes cluster by _running_ additional controllers and agents
          on an existing cluster.

          The necessary controllers and agents are provided by KubeVirt.

          As of today KubeVirt can be used to declaratively

            * Create a predefined VM
            * Schedule a VM on a Kubernetes cluster
            * Launch a VM
            * Migrate a VM
            * Stop a VM
            * Delete a VM

          # Start using KubeVirt

            * Try our quickstart at [kubevirt.io](http://kubevirt.io/get_kubevirt/).
            * See our user documentation at [kubevirt.io/docs](http://kubevirt.io/user-guide).

          # Start developing KubeVirt

          To set up a development environment please read our
          [Getting Started Guide](https://github.com/kubevirt/kubevirt/blob/master/docs/getting-started.md).
          To learn how to contribute, please read our [contribution guide](https://github.com/kubevirt/kubevirt/blob/master/CONTRIBUTING.md).

          You can learn more about how KubeVirt is designed (and why it is that way),
          and learn more about the major components by taking a look at our developer documentation:

            * [Architecture](https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md) - High-level view on the architecture
            * [Components](https://github.com/kubevirt/kubevirt/blob/master/docs/components.md) - Detailed look at all components
            * [API Reference](https://github.com/kubevirt/kubevirt/blob/master/https://www.kubevirt.io/api-reference/)

          # Community

          If you got enough of code and want to speak to people, then you got a couple of options:

            * Follow us on [Twitter](https://twitter.com/kubevirt)
            * Chat with us in the #virtualization channel of the [Kubernetes Slack](https://slack.k8s.io/)
            * Discuss with us on the [kubevirt-dev Google Group](https://groups.google.com/forum/#!forum/kubevirt-dev)
            * Stay informed about designs and upcoming events by watching our [community content](https://github.com/kubevirt/community/)

          # License

          KubeVirt is distributed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt).
        displayName: KubeVirt HyperConverged Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        links:
        - name: KubeVirt project
          url: https://kubevirt.io
        - name: Source Code
          url: https://github.com/kubevirt/hyperconverged-cluster-operator
        maintainers:
        - email: kubevirt-dev@googlegroups.com
          name: KubeVirt project
        maturity: alpha
        provider:
          name: KubeVirt project
        relatedImages:
        - quay.io/kubevirt/virt-launcher@sha256:4c5fce3de2e2589197de72fb0c9436490ea318aca952c05a622c43e067023f35
        - quay.io/kubevirt/virt-exportserver@sha256:73311f79a9c71007f8572b3cc40cd6f6da404c7ef0a9c6509fb717d979546582
        - quay.io/kubevirt/virtio-container-disk@sha256:f8e71a3a930ce95d646d80862d5ff6f9d3ed7ef2541dd2e2acec0bce26274734
        - quay.io/kubevirt/cdi-uploadproxy@sha256:551221d79902a5053d1c734b81163d69f087217e2ac13c49bdf6900336ef0786
        - quay.io/kubevirt/hostpath-csi-driver@sha256:0ca8b50b0adb20afd4e20da9974200f3290b6d51aa7c1129de6e1b953bf26594
        - quay.io/kubevirt/virt-exportproxy@sha256:f14444b0200a85efb4b3c176caefe70aabba7d295e33d2af14027a59ce297e24
        - quay.io/kubevirt/hostpath-provisioner-operator@sha256:16ecabb1d733aa17084cd16d88963c5255d04f389e0f4d41941d67e8be973594
        - quay.io/kubevirt/kubemacpool@sha256:3214020c21204c189cdf2d767beb8efb61ee3ef65dd8de7f0f1edc61e13e8adf
        - quay.io/kubevirt/hyperconverged-cluster-webhook@sha256:86c10c122767661e31ee26a9e9de7ea606c2c1168b32793b4ea567ede2ae3b21
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:5ff5392cb762a41ee9bc4767e3a693249ae08b46a4322f623f24ad6b63dd06b5
        - quay.io/kubevirt/cdi-cloner@sha256:9d31b14f23259398c5bac636f5ead13ad0afd6fe8eeab4499e8e047b4d85074f
        - quay.io/kubevirt/cdi-controller@sha256:27c47883a08226f83757971d3adafb0cd9bcb26e58fbcf7208236070e0adf37e
        - registry.k8s.io/sig-storage/livenessprobe@sha256:4dc0b87ccd69f9865b89234d8555d3a614ab0a16ed94a3016ffd27f8106132ce
        - quay.io/kubevirt/cdi-operator@sha256:6c63521d835578b0fbb77d3145b648f95ab0932d5d1b36ff2068ed8fcd91bc5a
        - quay.io/kubevirt/cdi-importer@sha256:3143bbc67cdc6267eb48b7eaac664b8551ac4c11401dfbf4921efd3f233e6ce9
        - quay.io/kubevirt/cluster-network-addons-operator@sha256:f64ab5981d9ddef1662dd0a05888783f5dbadda8ede596585ba80bfc97a0f51e
        - quay.io/kubevirt/hyperconverged-cluster-operator@sha256:0ee30557d5d5a42dec19121e70ed77fbdacd8932f55b11e2c7c1a3d5ad5df4aa
        - quay.io/kubevirt/mtq-operator@sha256:ef5c4bb1fa72f9e6e75d5585ca352f7563720389e6c9876aa8b07d12d1be6194
        - quay.io/kubevirt-ui/kubevirt-apiserver-proxy@sha256:38293a1050bce9c7cb786cbe8719be1edb91a922a6c583eedb61e56729ed4c72
        - quay.io/kubevirt/virt-controller@sha256:0789fafed2913b35a771e3db882748502b3250be04ece86d97f30201779b4e54
        - quay.io/kubevirt/virt-artifacts-server:1.10.7-unstable
        - quay.io/kubevirt/ovs-cni-plugin@sha256:08f72edf2bef876bba0b0f5513d30225304ad5e7ad6912a61c083664acdb99ff
        - quay.io/kubevirt/bridge-marker@sha256:bba066e3b5ff3fb8c5e20861fe8abe51e3c9b50ad6ce3b2616af9cb5479a06d0
        - quay.io/kubevirt/mtq-lock-server@sha256:9614df0d5af7c998bcceaf73b548f2e3b29ff8ee4ca64c32613bfbdd6e452f6c
        - quay.io/kubevirt/kubevirt-template-validator@sha256:a148b6e812b70f326b48d0439b1e44a967a6e1f8cf2f98b1a08e9294a93674eb
        - quay.io/kubevirt/macvtap-cni@sha256:434420511e09b2b5ede785a2c9062b6658ffbc26fbdd4629ce06110f9039c600
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d078dc174323407e8cc6f0f9abd4efaac5db27838f1564d0253d5e3233e3f17f
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:f6717ce72a2615c7fbc746b4068f788e78579c54c43b8716e5ce650d97af2df1
        - quay.io/kubevirt/ssp-operator@sha256:49cac00844f091d6e80301573e00235d685415185ec29c89b4bd7361f938711e
        - quay.io/kubevirt/virt-api@sha256:707003b221496b4432da2f507d1e36e528b45888b5d321e06d460f0678da44ae
        - quay.io/kubevirt-ui/kubevirt-plugin@sha256:e79027973b09aac75860f267c7d7f830599978c38a081001f404b9a1c3d2990f
        - quay.io/kubevirt/hostpath-provisioner@sha256:eae30f37b3e837478a4500144b7bc8eb4f5ddf15f49fa7354bc9d5e240ea8aea
        - quay.io/community-operator-pipeline-prod/community-kubevirt-hyperconverged@sha256:e5e0c3b3a25c13ea916d70fa6f6ddc20f2c730bd9909aa2654672280c27afda2
        - quay.io/kubevirt/virt-operator@sha256:cbca7f93afbb18a840f7e763e4c03aeeb1fd97967f381c12c443cc179b51da29
        - quay.io/kubevirt/cni-default-plugins@sha256:825e3f9fec1996c54a52cec806154945b38f76476b160d554c36e38dfffe5e61
        - quay.io/kubevirt/cdi-apiserver@sha256:e9e39408413b1478d2e98eba68913f9e20c93000558b190b47de73bdfd1d9ac4
        - quay.io/kubevirt/mtq-controller@sha256:96dd73ea0d7847d9f6322192559747bd85655e25ee25482d112e6e3c6fef21b2
        - registry.k8s.io/coredns/coredns@sha256:a0ead06651cf580044aeb0a0feba63591858fb2e43ade8c9dea45a6a89ae7e5e
        - ghcr.io/k8snetworkplumbingwg/multus-cni@sha256:3fbcc32bd4e4d15bd93c96def784a229cd84cca27942bf4858b581f31c97ee02
        - ghcr.io/kubevirt/kubesecondarydns@sha256:e87e829380a1e576384145f78ccaa885ba1d5690d5de7d0b73d40cfb804ea24d
        - quay.io/kubevirt/cdi-uploadserver@sha256:30f1827d3696cf996b081c22c3267ca78e7219c872fdb54950198fa54359f6ee
        - quay.io/kubevirt/libguestfs-tools@sha256:b7e248be783691daad1326cf41641d5042be80c5c057ebc5315ca7a1619b0581
        - quay.io/kubevirt/virt-handler@sha256:138dfda5fea8622f3da0d6413fe214fef80c2fd6a6f9533592a0dbfa7e1865b5
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:f7567bea7f24184da06c3ed87b396c804342fcfd89f54989622780ce0b7b0724
        - ghcr.io/k8snetworkplumbingwg/multus-dynamic-networks-controller@sha256:57573a24923e5588bca6bc337a8b2b08406c5b77583974365d2cf063c0dd5d06
        version: 1.10.7
      entries:
      - name: kubevirt-hyperconverged-operator.v1.10.7
        version: 1.10.7
      name: 1.10.7
    - currentCSV: kubevirt-hyperconverged-operator.v1.11.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployTektonTaskResources":true,"deployVmConsoleProxy":true},"tektonPipelines":{"namespace":"kubevirt"},"tektonTasks":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"mtq.kubevirt.io/v1alpha1","kind":"MTQ","metadata":{"name":"mtq","namespace":"mtq"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: quay.io/kubevirt/hyperconverged-cluster-operator@sha256:dd6538e720f18b723b0807037ca7cc1014cba09e57b20706e10e6eb641ac6acc
          createdAt: "2024-03-06 15:11:00"
          description: A unified operator deploying and controlling KubeVirt and its
            supporting operators with opinionated defaults
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}}'
          operatorframework.io/suggested-namespace: kubevirt-hyperconverged
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: quay.io/kubevirt/must-gather
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","mtqs.mtq.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: "false"
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of HyperConverged Cluster Operator
            displayName: HyperConverged Cluster Operator Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a MTQ deployment
            displayName: MTQ deployment
            kind: MTQ
            name: mtqs.mtq.kubevirt.io
            version: v1alpha1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          **HyperConverged Cluster Operator** is an Operator pattern for managing multi-operator products.
          Specifically, the HyperConverged Cluster Operator manages the deployment of KubeVirt,
          Containerized Data Importer (CDI), Virtual Machine import operator and Cluster Network Addons (CNA) operators.

          **KubeVirt** is a virtual machine management add-on for Kubernetes.
          The aim is to provide a common ground for virtualization solutions on top of
          Kubernetes.

          # Virtualization extension for Kubernetes

          At its core, KubeVirt extends [Kubernetes](https://kubernetes.io) by adding
          additional virtualization resource types (especially the `VirtualMachine` type) through
          [Kubernetes's Custom Resource Definitions API](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/).
          By using this mechanism, the Kubernetes API can be used to manage these `VirtualMachine`
          resources alongside all other resources Kubernetes provides.

          The resources themselves are not enough to launch virtual machines.
          For this to happen the _functionality and business logic_ needs to be added to
          the cluster. The functionality is not added to Kubernetes itself, but rather
          added to a Kubernetes cluster by _running_ additional controllers and agents
          on an existing cluster.

          The necessary controllers and agents are provided by KubeVirt.

          As of today KubeVirt can be used to declaratively

            * Create a predefined VM
            * Schedule a VM on a Kubernetes cluster
            * Launch a VM
            * Migrate a VM
            * Stop a VM
            * Delete a VM

          # Start using KubeVirt

            * Try our quickstart at [kubevirt.io](http://kubevirt.io/get_kubevirt/).
            * See our user documentation at [kubevirt.io/docs](http://kubevirt.io/user-guide).

          # Start developing KubeVirt

          To set up a development environment please read our
          [Getting Started Guide](https://github.com/kubevirt/kubevirt/blob/master/docs/getting-started.md).
          To learn how to contribute, please read our [contribution guide](https://github.com/kubevirt/kubevirt/blob/master/CONTRIBUTING.md).

          You can learn more about how KubeVirt is designed (and why it is that way),
          and learn more about the major components by taking a look at our developer documentation:

            * [Architecture](https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md) - High-level view on the architecture
            * [Components](https://github.com/kubevirt/kubevirt/blob/master/docs/components.md) - Detailed look at all components
            * [API Reference](https://github.com/kubevirt/kubevirt/blob/master/https://www.kubevirt.io/api-reference/)

          # Community

          If you got enough of code and want to speak to people, then you got a couple of options:

            * Follow us on [Twitter](https://twitter.com/kubevirt)
            * Chat with us in the #virtualization channel of the [Kubernetes Slack](https://slack.k8s.io/)
            * Discuss with us on the [kubevirt-dev Google Group](https://groups.google.com/forum/#!forum/kubevirt-dev)
            * Stay informed about designs and upcoming events by watching our [community content](https://github.com/kubevirt/community/)

          # License

          KubeVirt is distributed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt).
        displayName: KubeVirt HyperConverged Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        links:
        - name: KubeVirt project
          url: https://kubevirt.io
        - name: Source Code
          url: https://github.com/kubevirt/hyperconverged-cluster-operator
        maintainers:
        - email: kubevirt-dev@googlegroups.com
          name: KubeVirt project
        maturity: alpha
        provider:
          name: KubeVirt project
        relatedImages:
        - quay.io/kubevirt/cdi-uploadproxy@sha256:b89104ef5513d63cab43b34ac52f752c3d935cb986d5527d920c2c31d3b6f239
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d078dc174323407e8cc6f0f9abd4efaac5db27838f1564d0253d5e3233e3f17f
        - quay.io/kubevirt/macvtap-cni@sha256:850b89343ace7c7ea6b18dd8e11964613974e9d1f7377af03854d407fb15230a
        - quay.io/kubevirt/cdi-controller@sha256:606de89e68be2ac911466e6713345932bda496c1e4f20e34ef5efa270456c9fd
        - quay.io/kubevirt/cni-default-plugins@sha256:c884d6d08f8c0db98964f1eb3877b44ade41fa106083802a9914775df17d5291
        - quay.io/kubevirt/cdi-apiserver@sha256:95f6e71b36883abcb9ec463cfea2332f5490ec9eb3e4868bdf0a4da769279094
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:f1bd6ee18c4021c1c94f29edfab89b49b6a4d1b800936c19dbef2d75f8202f2d
        - quay.io/kubevirt/hostpath-provisioner-operator@sha256:dd2948ca8e62d17eafba40bdcaad8367a97f092fd3b8d9849b2d62aec3152a72
        - quay.io/kubevirt/virt-handler@sha256:238550bb263608ba334b44a15647cbf875482ccfb46049713c14af5d5f0cc788
        - quay.io/kubevirt/kubevirt-template-validator@sha256:f6db539fe4d4b752644c6bc8a308f5a80ae09a71da5c5d535114dc4c3cf18e0a
        - quay.io/kubevirt-ui/kubevirt-apiserver-proxy@sha256:38293a1050bce9c7cb786cbe8719be1edb91a922a6c583eedb61e56729ed4c72
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:e2def4213ec0657e72eb790ae8a115511d5b8f164a62d3568d2f1bff189917e8
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:c53535af8a7f7e3164609838c4b191b42b2d81238d75c1b2a2b582ada62a9780
        - quay.io/kubevirt/mtq-operator@sha256:90c7608b0ba085582a65ccdc11d089049c5e6b0438d018dd9dc76eb3490383c7
        - quay.io/kubevirt/cdi-cloner@sha256:b22985af0ee7b1ce4e1dedded08c853d90d9e7209f98c5d470897bbefce2a063
        - quay.io/kubevirt/ssp-operator@sha256:d57ef05fea09c4690dbe728ebe6a39d9df1a3574dfa7d18346bf3fe66afed702
        - quay.io/kubevirt/bridge-marker@sha256:bba066e3b5ff3fb8c5e20861fe8abe51e3c9b50ad6ce3b2616af9cb5479a06d0
        - quay.io/kubevirt/virt-api@sha256:735662c824da3d6069624d40674163d758c2256f8043cf6f02f505c3a724afa3
        - quay.io/kubevirt/cdi-importer@sha256:7320dce01f4628363992997b592200b4804daf15a9f237cd50a4a6acab7798e8
        - quay.io/kubevirt/virt-artifacts-server@sha256:22fa3218deca38dc98fa0e905df16173a47ccec85707eb91404a367da6480817
        - quay.io/kubevirt/kubemacpool@sha256:cf8daa57ae6603b776d3af512331b143fa03bc2f4b72f28420fddcf5e4156d0a
        - quay.io/kubevirt/virt-exportserver@sha256:f8473fc824f8bac5f21c64b71cdb4227de28f9bb25c049932f1259216b874a86
        - ghcr.io/k8snetworkplumbingwg/multus-cni@sha256:3fbcc32bd4e4d15bd93c96def784a229cd84cca27942bf4858b581f31c97ee02
        - quay.io/kubevirt/hostpath-csi-driver@sha256:8d84b9a33e0ec3749aece7c5f9879d1e0d248e8028ab3f776528a044d387033c
        - quay.io/kubevirt/virtio-container-disk@sha256:f8e71a3a930ce95d646d80862d5ff6f9d3ed7ef2541dd2e2acec0bce26274734
        - quay.io/community-operator-pipeline-prod/community-kubevirt-hyperconverged@sha256:8c65e65bbaf0ebb10dba03655c5854c69c82ddc0e6b2a29293eee029222e5efa
        - registry.k8s.io/sig-storage/livenessprobe@sha256:5baeb4a6d7d517434292758928bb33efc6397368cbb48c8a4cf29496abf4e987
        - quay.io/kubevirt/hyperconverged-cluster-operator@sha256:dd6538e720f18b723b0807037ca7cc1014cba09e57b20706e10e6eb641ac6acc
        - ghcr.io/k8snetworkplumbingwg/multus-dynamic-networks-controller@sha256:57573a24923e5588bca6bc337a8b2b08406c5b77583974365d2cf063c0dd5d06
        - quay.io/kubevirt/aaq-server@sha256:0c6b01c48030e03e99b3ff2b319658c2bf2b2001f4e3e030ba70d1143b25717a
        - quay.io/kubevirt/hyperconverged-cluster-webhook@sha256:70efc16ab2bfec04f73ccc292064d080870659cfd47c2e0c9017ff7b6fd78863
        - quay.io/kubevirt/hostpath-provisioner@sha256:adb1d33e95e8991dc47107926172469b5ecbeace509391ce021ca42d305a41d3
        - ghcr.io/kubevirt/kubesecondarydns@sha256:e87e829380a1e576384145f78ccaa885ba1d5690d5de7d0b73d40cfb804ea24d
        - quay.io/kubevirt/cdi-operator@sha256:8a27e1450c3bf8c1d8924e74470a62419d02ed2202924b082a74e2414b1fc21a
        - quay.io/kubevirt/virt-exportproxy@sha256:942c548d4848a87945eba51683002797eb4e1f5c463a1873115b2ec0e1e6e169
        - quay.io/kubevirt/libguestfs-tools@sha256:4971af1ee42959d366a3db6129ab684d11064e00bbd3c2b36324ad14e90cb903
        - quay.io/kubevirt/mtq-controller@sha256:ae7dd07e4018c63414b021eba34aa4776a6c7d6ff4fcdf9fd2d7ca30aae98a29
        - quay.io/kubevirt/cdi-uploadserver@sha256:16d257e575b2bd504f148f63b57dc181fa6058d33a11ada64888183c3e4d4863
        - quay.io/kubevirt/mtq-lock-server@sha256:8e686107dd9990dab1a3d90ee1068541938f673bf54ea9e1308b2ed7218546b0
        - quay.io/kubevirt/ovs-cni-plugin@sha256:e16ac74343da21abb8fb668ce71e728053d00503a992dae2164b9e94a280113e
        - quay.io/kubevirt/virt-launcher@sha256:4fbfd76561667e98fafc75c0b804f77df251f96471d1121d69f149cf8fb9a4d8
        - quay.io/kubevirt/virt-operator@sha256:0e6d56ea0ebdf9bb832f29ab0dc4603f0f619474bb8bc02a01e0a06e9d8d6f4a
        - registry.k8s.io/coredns/coredns@sha256:a0ead06651cf580044aeb0a0feba63591858fb2e43ade8c9dea45a6a89ae7e5e
        - quay.io/kubevirt-ui/kubevirt-plugin@sha256:4ed1f37116cbaf883edd8783201d091fbbe121fcb84e7184ee531d3b1abd77ab
        - quay.io/kubevirt/aaq-operator@sha256:590d24742401eeff3fb6a9c8ed977c63442f8f0a0505509fae69aa1bf8aa84ae
        - quay.io/kubevirt/virt-controller@sha256:4f576e30b83db7b9f96dde77896898bde87db3517963c4227634d0c3e96bb86d
        - quay.io/kubevirt/cluster-network-addons-operator@sha256:bf17da674ed6dac95aa4fd7637173fd4e026ebb4523b66f529c0eff394a25bcc
        - quay.io/kubevirt/aaq-controller@sha256:cb2fa52ae3f6a1a99b2de77b58c5db54c43ba8ee86c6540b4844c901180ce611
        version: 1.11.0
      entries:
      - name: kubevirt-hyperconverged-operator.v1.11.0
        version: 1.11.0
      name: 1.11.0
    - currentCSV: kubevirt-hyperconverged-operator.v1.16.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployVmConsoleProxy":true},"templateValidator":{"replicas":2}}},{"apiVersion":"ssp.kubevirt.io/v1beta3","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: quay.io/kubevirt/hyperconverged-cluster-operator@sha256:78a1a9f656da5dea20022706ebf61982dd9b63dd5cb4dd75ae98d643e671fbde
          createdAt: "2025-11-11 08:46:34"
          description: A unified operator deploying and controlling KubeVirt and its
            supporting operators with opinionated defaults
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          openshift.io/required-scc: restricted-v2
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}}'
          operatorframework.io/suggested-namespace: kubevirt-hyperconverged
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: quay.io/kubevirt/must-gather
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: "false"
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of HyperConverged Cluster Operator
            displayName: HyperConverged Cluster Operator Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta3
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          **HyperConverged Cluster Operator** is an Operator pattern for managing multi-operator products.
          Specifically, the HyperConverged Cluster Operator manages the deployment of KubeVirt,
          Containerized Data Importer (CDI), Virtual Machine import operator and Cluster Network Addons (CNA) operators.

          **KubeVirt** is a virtual machine management add-on for Kubernetes.
          The aim is to provide a common ground for virtualization solutions on top of
          Kubernetes.

          # Virtualization extension for Kubernetes

          At its core, KubeVirt extends [Kubernetes](https://kubernetes.io) by adding
          additional virtualization resource types (especially the `VirtualMachine` type) through
          [Kubernetes's Custom Resource Definitions API](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/).
          By using this mechanism, the Kubernetes API can be used to manage these `VirtualMachine`
          resources alongside all other resources Kubernetes provides.

          The resources themselves are not enough to launch virtual machines.
          For this to happen the _functionality and business logic_ needs to be added to
          the cluster. The functionality is not added to Kubernetes itself, but rather
          added to a Kubernetes cluster by _running_ additional controllers and agents
          on an existing cluster.

          The necessary controllers and agents are provided by KubeVirt.

          As of today KubeVirt can be used to declaratively

            * Create a predefined VM
            * Schedule a VM on a Kubernetes cluster
            * Launch a VM
            * Migrate a VM
            * Stop a VM
            * Delete a VM

          # Start using KubeVirt

            * Try our quickstart at [kubevirt.io](http://kubevirt.io/get_kubevirt/).
            * See our user documentation at [kubevirt.io/docs](http://kubevirt.io/user-guide).

          # Start developing KubeVirt

          To set up a development environment please read our
          [Getting Started Guide](https://github.com/kubevirt/kubevirt/blob/master/docs/getting-started.md).
          To learn how to contribute, please read our [contribution guide](https://github.com/kubevirt/kubevirt/blob/master/CONTRIBUTING.md).

          You can learn more about how KubeVirt is designed (and why it is that way),
          and learn more about the major components by taking a look at our developer documentation:

            * [Architecture](https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md) - High-level view on the architecture
            * [Components](https://github.com/kubevirt/kubevirt/blob/master/docs/components.md) - Detailed look at all components
            * [API Reference](https://github.com/kubevirt/kubevirt/blob/master/https://www.kubevirt.io/api-reference/)

          # Community

          If you got enough of code and want to speak to people, then you got a couple of options:

            * Follow us on [Twitter](https://twitter.com/kubevirt)
            * Chat with us in the #virtualization channel of the [Kubernetes Slack](https://slack.k8s.io/)
            * Discuss with us on the [kubevirt-dev Google Group](https://groups.google.com/forum/#!forum/kubevirt-dev)
            * Stay informed about designs and upcoming events by watching our [community content](https://github.com/kubevirt/community/)

          # License

          KubeVirt is distributed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt).
        displayName: KubeVirt HyperConverged Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        links:
        - name: KubeVirt project
          url: https://kubevirt.io
        - name: Source Code
          url: https://github.com/kubevirt/hyperconverged-cluster-operator
        maintainers:
        - email: kubevirt-dev@googlegroups.com
          name: KubeVirt project
        maturity: alpha
        provider:
          name: KubeVirt project
        relatedImages:
        - registry.k8s.io/sig-storage/livenessprobe@sha256:88092d100909918ae0a768956cf78c88bc59cd7232720f7cdbdfb5d2e235001e
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d078dc174323407e8cc6f0f9abd4efaac5db27838f1564d0253d5e3233e3f17f
        - quay.io/kubevirt/hostpath-provisioner@sha256:a024ad8d0534d1e3ec6edd9a2a503a2aaa3853bf4c9e3181c6ace559d7cb6b23
        - quay.io/kubevirt/cni-default-plugins@sha256:976a24392c2a096c38c2663d234b2d3131f5c24558889196d30b9ac1b6716788
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97
        - quay.io/kubevirt/virt-handler@sha256:4e4a4c12d5781ebbcb8cbebef6fb2b9cb54b25f3804f1c19bbfd7fdb9dd383cc
        - quay.io/kubevirt/ssp-operator@sha256:7a8d04480403bcbbdd5cd854701013bfe57a4d7ae57aad6e9c83aae331e91bfa
        - quay.io/kubevirt/virt-exportproxy@sha256:fa49d5f034cf56ae73367879660bff402dfea4251db91d33364c376ddfa1e999
        - quay.io/kubevirt/network-passt-binding-cni@sha256:8e9a0fe4c0096abfea49f4eb36038842621bcb770ab6358ff5a6315016b6a243
        - ghcr.io/kubevirt/ipam-controller@sha256:4fdc9c77b9e683f274a31fcb7f6dbcf765799596efd93bc37512fb860f07b02f
        - quay.io/kubevirt/bridge-marker@sha256:bf269af61e618857e7b14439cfc003aac2d65db9ee633147a73f5d9648dab377
        - quay.io/kubevirt/cdi-controller@sha256:a173f818e6e7f2be3db6390b638399dd496bc2b5595550e4381ef9586a81c144
        - quay.io/kubevirt/cdi-importer@sha256:2ab689c89a7c9256fde8ccf7e13a6cfae7c89b7288fc756f139caf5930c39d10
        - quay.io/kubevirt/hyperconverged-cluster-webhook@sha256:5281c95090e27a492beb205c750f7661b15a24b438ceedc2d12c106da160f9fc
        - quay.io/kubevirt/kubemacpool@sha256:f9e5151798acc03798a007eacf51bc7a579c5e5a57851836eae601cc1eaa1c30
        - quay.io/kubevirt/virt-synchronization-controller@sha256:e9a3347c0c140aaf0f4864cca1299db33421ad795c744292322ed4d3e2fbb6f8
        - quay.io/openshift-virtualization/wasp-agent@sha256:eabfa6a425213f520f7a9e5b81b43e8b6430779d42c5c8b1bfd48a4f1730447a
        - ghcr.io/k8snetworkplumbingwg/multus-cni@sha256:a60a21ee1d00c9f215b0b2fa03b3d5e384ab7ddb9ea0d231d36aef220e95a69c
        - quay.io/kubevirt/hostpath-csi-driver@sha256:696e7b6c9fb92353579b8c003a43a27a7d78ce224a8119db3b3997295d330e3c
        - quay.io/kubevirt/virtio-container-disk@sha256:bf2c634591d7fca1b90479785084fa108a66fe9da6777c4312bb4f57cc837faa
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:e2def4213ec0657e72eb790ae8a115511d5b8f164a62d3568d2f1bff189917e8
        - quay.io/kubevirt/aaq-server@sha256:dfb46682eb734e73a1142b9af5f94f2f70aa9a7e04a7c804565f2a89fbf0f989
        - quay.io/kubevirt/cdi-uploadserver@sha256:db3bf75d7a940e545b1a38d0bfff7fdc271cfc1d64a77609e07a5d0f2e6683ad
        - ghcr.io/kubevirt/kubesecondarydns@sha256:f5fe9c98fb6d7e5e57a6df23fe82e43e65db5953d76af44adda9ab40c46ad0bf
        - quay.io/kubevirt/cdi-operator@sha256:8b2028dc3695d1e3ec4b5d3ad0fff4e356f6e22f0c407cc70e5c551a55afaf47
        - ghcr.io/k8snetworkplumbingwg/multus-dynamic-networks-controller@sha256:2a2bb32c0ea8b232b3dbe81c0323a107e8b05f8cad06704fca2efd0d993a87be
        - quay.io/community-operator-pipeline-prod/community-kubevirt-hyperconverged@sha256:4ed2717b6f140841cc75b49adc664641399a05d2bae3455da01280dbee1eeba7
        - registry.k8s.io/coredns/coredns@sha256:a0ead06651cf580044aeb0a0feba63591858fb2e43ade8c9dea45a6a89ae7e5e
        - quay.io/kubevirt/macvtap-cni@sha256:af31faae20c0128a469dd4c1aa866d6bf78d1d2f5972127adf4c9438dcde10f4
        - quay.io/kubevirt/network-passt-binding@sha256:11cf7036b49f30c4f6b5c28feb274ea231533df981a58fce9e191f9f815f0a1c
        - quay.io/kubevirt/aaq-operator@sha256:98c4d2e73c733468f3c4724c72c4d42411f49706cdfa843ce1d507c356621088
        - quay.io/kubevirt/virt-operator@sha256:2d6ed0d12c13d86117d77233ef98626f0418c273e45730e922882ddedac3c4a0
        - quay.io/kubevirt/aaq-controller@sha256:04199fad9d42e0d9206ae042545b48da4c3bf14995d87aa6d8c804b0f9beeea4
        - quay.io/kubevirt/sidecar-shim@sha256:0252893b5cd3df04e417d82a8817b6dc1fc60ef475d73d7e87a36318c3257d0b
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:bc7be893ecc3ad524194aa6573b2f5c06cd469bdf21a500ab6c99c2ba1c4d64d
        - quay.io/kubevirt/virt-exportserver@sha256:371e217b1a7e68722a79203d4251e7034ef8c08e5ef5aec282a93cdcc0014cf7
        - quay.io/kubevirt/cdi-apiserver@sha256:7e36cab28362127345282b5f65ca358607cf275a4eacbfff9bafce18128d58e7
        - quay.io/kubevirt/virt-controller@sha256:8a3788c01a667a4a52bfde3ea284cde459afcf54af2644d0b4e62feb42ec9d97
        - quay.io/kubevirt/virt-launcher@sha256:66f02bfd67bfdbe59ea9c0139270d9efba4e1491e1ef81bccde5bd6c7794333d
        - quay.io/kubevirt-ui/kubevirt-apiserver-proxy@sha256:935475c2850466aa5ac57e4de627fb177515cb2c402a95842ead095d82b6df5f
        - quay.io/kubevirt/kubevirt-template-validator@sha256:87350bb8e68683509b8ffa72738ad719b22f48192b88bc58ab6223980c4ccee9
        - quay.io/kubevirt-ui/kubevirt-plugin@sha256:89269df1481bed69cac7095c8d8d875acbfa238e4b5735ab802cda90c9375a1b
        - quay.io/kubevirt/pr-helper@sha256:812fcb543d7519282607a4da991faaf7c734ff37e0c04dbf1083c9a9430ca168
        - quay.io/kubevirt/cdi-cloner@sha256:ff5c705081d59bc62141138979178ca542ebe31ff29906eca23b6d8b5c89aca0
        - quay.io/kubevirt/hyperconverged-cluster-operator@sha256:78a1a9f656da5dea20022706ebf61982dd9b63dd5cb4dd75ae98d643e671fbde
        - ghcr.io/k8snetworkplumbingwg/ovs-cni-plugin@sha256:435f374b434b3bc70a5cfaba0011fdcf5f433d96b98b06d29306cbd8db3a8c21
        - quay.io/kubevirt/virt-api@sha256:15dcc9da661ff1738fefa5746b22471ac8e954d8e4d3dbd884e8cf399fbbbe6f
        - quay.io/kubevirt/hostpath-provisioner-operator@sha256:ac0c005304acb52033f3c4ad4af2aab81361346d5327c92ec6bcbd98097ae88b
        - quay.io/kubevirt/libguestfs-tools@sha256:677e53432ac080d7b93031d501a9a8f2e6fa35ce67c48f5d43a05967e04467e5
        - quay.io/kubevirt/cdi-uploadproxy@sha256:b6b3cfaad4886faa1762888c0dc92105cc90d678f4ac14e12917af77f49d91a6
        - quay.io/kubevirt/cluster-network-addons-operator@sha256:0ec8c28176c12c2078ef34905c72da3031a9af51f76d4c2d23e22f75e9e1dbee
        - quay.io/kubevirt/virt-artifacts-server@sha256:edd66038da14527b205220e3d208c1bd598b3bed682dbd28413f1e9850e5f116
        version: 1.16.0
      entries:
      - name: kubevirt-hyperconverged-operator.v1.16.0
        version: 1.16.0
      - name: kubevirt-hyperconverged-operator.v1.15.2
        version: 1.15.2
      - name: kubevirt-hyperconverged-operator.v1.15.0
        version: 1.15.0
      - name: kubevirt-hyperconverged-operator.v1.14.0
        version: 1.14.0
      - name: kubevirt-hyperconverged-operator.v1.13.0
        version: 1.13.0
      - name: kubevirt-hyperconverged-operator.v1.12.0
        version: 1.12.0
      - name: kubevirt-hyperconverged-operator.v1.11.1
        version: 1.11.1
      - name: kubevirt-hyperconverged-operator.v1.10.0
        version: 1.10.0
      - name: kubevirt-hyperconverged-operator.v1.9.0
        version: 1.9.0
      - name: kubevirt-hyperconverged-operator.v1.8.2
        version: 1.8.2
      - name: kubevirt-hyperconverged-operator.v1.8.1
        version: 1.8.1
      - name: kubevirt-hyperconverged-operator.v1.8.0
        version: 1.8.0
      - name: kubevirt-hyperconverged-operator.v1.7.0
        version: 1.7.0
      - name: kubevirt-hyperconverged-operator.v1.6.0
        version: 1.6.0
      - name: kubevirt-hyperconverged-operator.v1.5.2
        version: 1.5.2
      - name: kubevirt-hyperconverged-operator.v1.5.1
        version: 1.5.1
      - name: kubevirt-hyperconverged-operator.v1.5.0
        version: 1.5.0
      - name: kubevirt-hyperconverged-operator.v1.4.4
        version: 1.4.4
      - name: kubevirt-hyperconverged-operator.v1.4.3
        version: 1.4.3
      - name: kubevirt-hyperconverged-operator.v1.4.2
        version: 1.4.2
      - name: kubevirt-hyperconverged-operator.v1.4.1
        version: 1.4.1
      - name: kubevirt-hyperconverged-operator.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: community-kubevirt-hyperconverged
    provider:
      name: KubeVirt project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-bamoe-businessautomation: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: bamoe-businessautomation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bamoe-businessautomation-operator.8.0.8-1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"app.kiegroup.org/v2","kind":"KieApp","metadata":{"name":"rhpam-trial"},"spec":{"environment":"rhpam-trial"}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/ibm-bamoe/bamoe-rhel8-operator@sha256:0646da8707d10b3cc2e2344269abd8797db34127a3326bf76bbc1547aa4bbd73
          createdAt: "2025-07-22 17:40:17"
          description: Deploys and manages IBM Business Automation Manager Open Editions
            environment.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["IBM Business Automation Manager
            Open Edition"]'
          repository: https://github.com/kiegroup/kie-cloud-operator
          support: https://www.ibm.com/mysupport
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A project prescription running an IBM BAMOE environment.
            displayName: KieApp
            kind: KieApp
            name: kieapps.app.kiegroup.org
            version: v2
        description: |-
          Deploys and manages IBM Business Automation Manager Open Editions environment.

          * **IBM Process Automation Manager** is a platform for developing containerized microservices and applications that automate business decisions and processes. It includes business process management (BPM), business rules management (BRM), and business resource optimization and complex event processing (CEP) technologies. It also includes a user experience platform to create engaging user interfaces for process and decision services with minimal coding.
        displayName: IBM Business Automation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kieapp
        - pam
        - decision
        - kie
        - cloud
        - bpm
        - process
        - automation
        - operator
        links:
        - name: Product Page
          url: https://ibm.com
        - name: Documentation
          url: https://www.ibm.com/docs/en/ibamoe
        maintainers:
        - email: mysphelp@us.ibm.com
          name: IBM
        maturity: 8.x-stable
        provider:
          name: IBM
        relatedImages:
        - registry.redhat.io/amq7/amq-broker@sha256:792c1cb19e62519cc47d834650fe5a6a6ca589a37d0b53d4f4549e80cabae3f9
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:2f1a7519617b5c0d082f943de0db295370649d968d699d76cfd829f4c9826a0f
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:82d8ebde7eb3ecfbf72e5b71e7e392d3a3597fc084b6cf35e8fec23bfe41210d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:98e9a6618558bc8a1b9cb91d1c9b3380968d335092f6e953d1abe6af96abf65c
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:b3b7388b3b116ef37aabbb04b5d2c3e36e58d2fc95f1e59795b423010e071fc3
        - registry.redhat.io/openshift4/ose-cli@sha256:b2b93def4eb5edeccfa2d8ba22e493646325842674dff0446b45677bf641a342
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:25025e489c15108edffe5270d257e1ed9be0a67aa067bcfc184647793aac2617
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:5ed8821328413ec11859ae317679f0692afff9945f134fc8909e07a3ac387794
        - registry.redhat.io/jboss-datagrid-7/datagrid73-openshift@sha256:4056b1cf8ff5995f56eecfdc087d9ece56a216dba6bd73acc5693f0778e8d573
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:c9f08ddc6111cdd74faa0db5721d5730fc7716fccf4dc2a658595f7e0c184c10
        - registry.redhat.io/ibm-bamoe/bamoe-operator-bundle@sha256:54df7eba0292459c0491ba39c15bfcf793e1c0aef042a4b3f6c587b0d45f77af
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:efa55e17190b0ebe1618452f786876ef354b8fbec25c316aed7ed5bb1ce88116
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:f714b9c1555e7f27a3c9cf2cf687a74188f36b1283d4e09cec4db3c084d9fe64
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:ef1d77bb085172f927ee53d1674c85e2acaf1f580d7cad55bae8bf2c33c49c01
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:01bf97beffb3647968aae052cdd401d6d562c35f3e78ac483dbf55c44a71dc2f
        - registry.redhat.io/ibm-bamoe/bamoe-controller-rhel8@sha256:6cd0f07856d612dca46b0a01a93b796f7a0f112b98cedfd6754f9fd770ee843d
        - registry.redhat.io/rhscl/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:c3553707936cb9eee8a6a622643f72c91e1b0c11add5ec9ad5865242a9e133b4
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:a287a2fbaded371b8fcae5e4124b2d905bb228f94da0fc899ca2600b378dca0d
        - registry.redhat.io/ibm-bamoe/bamoe-rhel8-operator@sha256:0646da8707d10b3cc2e2344269abd8797db34127a3326bf76bbc1547aa4bbd73
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:457fc73423fa94591bc7e35729a25c58d3465583afccf342fb338b6e11188575
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:191237ccffc476e764714a69e35d9421dcee5ddd7184442d7a8306a06b97e6bb
        - registry.redhat.io/ibm-bamoe/bamoe-controller-rhel8@sha256:3fcd9ae0bc194c198cbb5ee94272e80f302658733e467766bd1789357e9fd015
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:3fd45f2dabca7220772d823275a5697b42dd35f53c27671b093117933ef2d4f6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:fb326be806b337b0ae1711f974d15e073aebcbad77aaa1123a63cf4f331da5f2
        version: 8.0.8-1
      entries:
      - name: bamoe-businessautomation-operator.8.0.8-1
        version: 8.0.8-1
      - name: bamoe-businessautomation-operator.8.0.7-2
        version: 8.0.7-2
      - name: bamoe-businessautomation-operator.8.0.7-1
        version: 8.0.7-1
      - name: bamoe-businessautomation-operator.8.0.6-3
        version: 8.0.6-3
      - name: bamoe-businessautomation-operator.8.0.6-2
        version: 8.0.6-2
      - name: bamoe-businessautomation-operator.8.0.6-1
        version: 8.0.6-1
      - name: bamoe-businessautomation-operator.8.0.5-3
        version: 8.0.5-3
      - name: bamoe-businessautomation-operator.8.0.5-2
        version: 8.0.5-2
      - name: bamoe-businessautomation-operator.8.0.5-1
        version: 8.0.5-1
      - name: bamoe-businessautomation-operator.8.0.4-3
        version: 8.0.4-3
      - name: bamoe-businessautomation-operator.8.0.4-2
        version: 8.0.4-2
      - name: bamoe-businessautomation-operator.8.0.4-1
        version: 8.0.4-1
      - name: bamoe-businessautomation-operator.8.0.3-4
        version: 8.0.3-4
      - name: bamoe-businessautomation-operator.8.0.3-3
        version: 8.0.3-3
      - name: bamoe-businessautomation-operator.8.0.3-2
        version: 8.0.3-2
      - name: bamoe-businessautomation-operator.8.0.3-1
        version: 8.0.3-1
      - name: bamoe-businessautomation-operator.8.0.2-3
        version: 8.0.2-3
      - name: bamoe-businessautomation-operator.8.0.2-2
        version: 8.0.2-2
      - name: bamoe-businessautomation-operator.8.0.2-1
        version: 8.0.2-1
      - name: bamoe-businessautomation-operator.8.0.1-2
        version: 8.0.1-2
      - name: bamoe-businessautomation-operator.8.0.1-1
        version: 8.0.1-1
      - name: bamoe-businessautomation-operator.8.0.0-1
        version: 8.0.0-1
      name: 8.x-stable
    defaultChannel: 8.x-stable
    packageName: bamoe-businessautomation-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Keysight
      provider-url: keysight.com
    name: keysight-loadcore-agents
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keysight-loadcore-agents.v0.1.21
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.loadcore.keysight.com/v1alpha1",
                "kind": "Agents",
                "metadata": {
                  "name": "loadcore-agents-sample",
                  "namespace": "keysight-loadcore-agents"
                },
                "spec": {
                  "agents": [
                    {
                      "args": {
                        "adminInterface": "eth0",
                        "middlewareAddr": "nats-core.keysight-wap.svc.cluster.local:4222",
                        "testInterfaces": [
                          "net1"
                        ]
                      },
                      "exposeIngress": true,
                      "lifecycle": {
                        "postStart": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "echo Hello from the postStart handler"
                            ]
                          }
                        },
                        "preStop": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "killall -0 tail"
                            ]
                          }
                        }
                      },
                      "livenessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "initialDelaySeconds": 60
                      },
                      "name": "agent1",
                      "networks": [
                        "keysight-loadcore-agents/loadcore-agent-network"
                      ],
                      "privileged": true,
                      "readinessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 30,
                        "periodSeconds": 20
                      },
                      "replicas": 2,
                      "startupProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 10,
                        "periodSeconds": 5
                      },
                      "terminationMessagePolicy": "FallbackToLogsOnError"
                    },
                    {
                      "args": {
                        "adminInterface": "eth0",
                        "middlewareAddr": "nats-core.keysight-wap.svc.cluster.local:4222",
                        "testInterfaces": [
                          "net1"
                        ]
                      },
                      "exposeIngress": true,
                      "lifecycle": {
                        "postStart": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "echo Hello from the postStart handler"
                            ]
                          }
                        },
                        "preStop": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "killall -0 tail"
                            ]
                          }
                        }
                      },
                      "livenessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "initialDelaySeconds": 60
                      },
                      "name": "agent2",
                      "networks": [
                        "keysight-loadcore-agents/loadcore-agent-network"
                      ],
                      "privileged": true,
                      "readinessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 30,
                        "periodSeconds": 20
                      },
                      "startupProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 10,
                        "periodSeconds": 5
                      },
                      "terminationMessagePolicy": "FallbackToLogsOnError"
                    }
                  ],
                  "image": {
                    "registry": "prod.harbor.keysight.digital",
                    "repository": "loadcore/loadcore-agent",
                    "tag": "UBI8-0.1-7d990d7254"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "regcred"
                    }
                  ],
                  "networks": [
                    {
                      "config": "{ \"cniVersion\": \"0.3.1\", \"type\": \"ipvlan\", \"master\": \"ens192\", \"mode\": \"l2\", \"ipam\": { \"type\": \"whereabouts\", \"range\": \"192.168.1.0/24\", \"routes\": [ { \"dst\": \"0.0.0.0/0\" } ] } }",
                      "name": "loadcore-agent-network"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2023-09-19T12:53:55Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Agents
            name: agents.app.loadcore.keysight.com
            version: v1alpha1
        description: Keysight LoadCore Agents Operator
        displayName: Keysight LoadCore Agents Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - loadcore
        - keysight
        links:
        - name: Keysight Loadcore Agents
          url: https://keysight-loadcore-agents.domain
        maintainers:
        - email: vlad.butusina@keysight.com
          name: Vlad Butusina
        maturity: alpha
        provider:
          name: Keysight
          url: keysight.com
        relatedImages:
        - prod.harbor.keysight.digital/loadcore/keysight-loadcore-agents@sha256:f1d1e9f2aca11505407785bc33905744b667bc8aea49df73fcc50db379c0b375
        - registry.connect.redhat.com/loadcore/keysight-loadcore-agents-bundle@sha256:f16fcea424cb7b1eb647f3e9d3c08bd93c8a1b8bb7eab71a4e756da72a7a56a0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0848d89e9f94be04f17beeee75807d7fd11102737e6483ee674f2cf3ae28f213
        version: 0.1.21
      entries:
      - name: keysight-loadcore-agents.v0.1.21
        version: 0.1.21
      name: alpha
    defaultChannel: alpha
    packageName: keysight-loadcore-agents
    provider:
      name: Keysight
      url: keysight.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Solace Corporation
      provider-url: www.solace.com
    name: pubsubplus-eventbroker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pubsubplus-eventbroker-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pubsubplus.solace.com/v1beta1",
                "kind": "PubSubPlusEventBroker",
                "metadata": {
                  "name": "non-ha-standalone-example"
                },
                "spec": {
                  "redundancy": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "true"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.10
          containerImage: registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator@sha256:d68db92bcb217d94dc0ad0a1cea625a0a9c9299d886d325a903163f9f887dcd5
          createdAt: "2025-07-31T19:48:36Z"
          description: The Solace PubSub+ Event Broker Operator deploys and manages
            the lifecycle of PubSub+ Event Brokers
          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"
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
          support: Solace Products
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PubSub+ Event Broker
            displayName: PubSub+ Event Broker
            kind: PubSubPlusEventBroker
            name: pubsubpluseventbrokers.pubsubplus.solace.com
            version: v1beta1
        description: |
          ## Solace PubSub+ Platform
          Solace [PubSub+ Platform](https://solace.com/products/platform/) is a complete event streaming and management platform
          for real-time enterprises. The [PubSub+ Software Event Broker](https://solace.com/products/event-broker/software/) efficiently streams
          event-driven information between applications, IoT devices, and user interfaces running in the cloud, on-premises,
          and in hybrid environments using open APIs and protocols like AMQP, JMS, MQTT, REST and WebSocket.
          It can be installed into a variety of public and private clouds, PaaS, and on-premises environments.
          Event brokers in multiple locations can be linked together in an [Event Mesh](https://solace.com/what-is-an-event-mesh/)
          to dynamically share events across the distributed enterprise.

          ## Solace PubSub+ Event Broker Operator
          Solace Pubsub+ Event Broker Operator automatically deploys and manages PubSub+ Software Event Brokers on Kubernetes and OpenShift environments.

          Features include:
          * Initial deployment configuration: Production-ready HA, non-HA or for developers
          * Rolling update for configuration changes or broker upgrades
          * Prometheus monitoring support

          ## Getting started
          Refer to the [Solace PubSub+ Event Broker Operator Quick Start](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/README.md)
        displayName: Solace PubSub+ Event Broker Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - solace
        - pubsubplus
        - pubsub+
        - pubsub
        - messaging
        - advanced event broker
        - event broker
        - event mesh
        - event streaming
        - data streaming
        - event integration
        - middleware
        links:
        - name: Operator QuickStart
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
        - name: Operator Documentation
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/docs/EventBrokerOperatorUserGuide.md
        - name: Solace.com
          url: https://solace.com
        - name: Understanding Solace Technology
          url: https://solace.com/products/platform/
        - name: Solace PubSub+ Technical Documentation
          url: https://docs.solace.com/
        - name: Solace Developer Portal
          url: https://www.solace.dev/
        - name: Solace Community
          url: https://solace.community/
        maintainers:
        - email: support@solace.com
          name: Solace R&D
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Solace Corporation
          url: www.solace.com
        relatedImages:
        - registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator-bundle@sha256:85e75ec797f70c5807ec1ea25208cf0bb1990daa05eca9fbc82bc38aa4a840ab
        - registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator@sha256:d68db92bcb217d94dc0ad0a1cea625a0a9c9299d886d325a903163f9f887dcd5
        version: 1.4.0
      entries:
      - name: pubsubplus-eventbroker-operator.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: pubsubplus-eventbroker-operator
    provider:
      name: Solace Corporation
      url: www.solace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Weaveworks
      provider-url: ""
    name: tf-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tf-controller.v0.9.0-rc.8
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"infra.contrib.fluxcd.io/v1alpha1\",\n
            \   \"kind\": \"Terraform\",\n    \"metadata\": {\n        \"name\": \"helloworld-tf\",\n
            \       \"namespace\": \"flux-system\"\n    },\n    \"spec\": {\n        \"interval\":
            \"5m\",\n        \"approvePlan\": \"auto\",\n        \"path\": \"./\",\n
            \       \"sourceRef\": {\n          \"kind\": \"GitRepository\",\n          \"name\":
            \"helloworld\",\n          \"namespace\": \"flux-system\"\n        }      \n
            \   }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: ghcr.io/weaveworks/tf-controller:v0.9.0-rc.8
          description: Weave TF-controller is a Flux controller that brings GitOps
            to Terraform resources.
          operatorframework.io/suggested-namespace: flux-system
          support: Weaveworks
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Terraform
            displayName: Terraform
            kind: Terraform
            name: terraforms.infra.contrib.fluxcd.io
            version: v1alpha1
        description: "**Weave GitOps Terraform Controller** (aka Weave TF-controller)
          is a Flux controller for reconciling Terraform resources in the GitOps way.
          \nWith the power of Flux together with Terraform, TF-controller allows you
          to GitOps-ify infrastructure, \nand application resources, in the Kubernetes
          and Terraform universe, together at your own pace.\n\nTF-controller offers
          many GitOps models:\n  1. **GitOps Automation Model:** GitOps your Terraform
          resources from the provision steps to the enforcement steps, like a whole
          EKS cluster.\n  2. **Hybrid GitOps Automation Model:** GitOps parts of your
          existing infrastructure resources. For example, you have an existing EKS
          cluster. You can choose to GitOps only its nodegroup, or its security group.\n
          \ 3. **State Enforcement Model:** You have a TFSTATE file, and you'd like
          to use GitOps enforce it, without changing anything else.\n  4. **Drift
          Detection Model:** You have a TFSTATE file, and you'd like to use GitOps
          just for drift detection, so you can decide to do things later when a drift
          occurs.\n\nFeatures\n  * GitOps Automation for Terraform\n  * Drift detection\n
          \ * Plan and Manual Approve"
        displayName: Weave GitOps Terraform Controller
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - weave
        - flux
        - cd
        - continuous delivery
        - terraform
        - gitops
        links:
        - name: Weave GitOps Terraform Controller
          url: https://github.com/weaveworks/tf-controller
        - name: Documentation
          url: https://weaveworks.github.io/tf-controller/
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Weaveworks
        relatedImages:
        - ghcr.io/weaveworks/tf-controller:v0.9.0-rc.8
        - quay.io/openshift-community-operators/tf-controller@sha256:cdaeb470d9b331a3fa08167e5c904befb00be983e1354651670e21e13560bf9b
        version: 0.9.0-rc.8
      entries:
      - name: tf-controller.v0.9.0-rc.8
        version: 0.9.0-rc.8
      - name: tf-controller.v0.9.0-rc.3
        version: 0.9.0-rc.3
      name: stable
    defaultChannel: stable
    packageName: tf-controller
    provider:
      name: Weaveworks
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: node-healthcheck-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-healthcheck-operator.v0.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "maxUnhealthy": "49%",
                  "remediationTemplate": {
                    "apiVersion": "poison-pill.medik8s.io/v1alpha1",
                    "kind": "PoisonPillRemediationTemplate",
                    "name": "group-x",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/node-healthcheck-operator:0.1.0-latest
          createdAt: "2021-04-20 12:00:00"
          description: An operator to monitor node healthcheck and remdiate via 3rd
            party providers like poison-pill.
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: This operator deploys the Node Health Check controller and its
          artifacts
        displayName: Node Health Check Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://node-healthcheck-operator.domain
        maintainers:
        - email: medik8s@googlegroups.com
          name: medik8s team
        maturity: alpha
        provider:
          name: medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/medik8s/node-healthcheck-operator:0.1.0-latest
        - quay.io/openshift-community-operators/node-healthcheck-operator@sha256:30264b9f49912cc0e6bed59001869e3168caace20b292c9dad4cc2d4947d289d
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.1.1
      entries:
      - name: node-healthcheck-operator.v0.1.1
        version: 0.1.1
      name: alpha
    - currentCSV: node-healthcheck-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample"
                },
                "spec": {
                  "minHealthy": "51%",
                  "remediationTemplate": {
                    "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                    "kind": "SelfNodeRemediationTemplate",
                    "name": "self-node-remediation-resource-deletion-template",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/node-healthcheck-operator:v0.3.0
          createdAt: "2022-08-24 11:40:38"
          description: Detect failed Nodes and trigger remediation with e.g. Self
            Node Remediation.
          olm.skipRange: '>=0.2.0 <0.3.0'
          operators.operatorframework.io/builder: operator-sdk-v1.18.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Hardware is imperfect, and software contains bugs. When node level failures such as kernel hangs or dead NICs
          occur, the work required from the cluster does not decrease - workloads from affected nodes need to be
          restarted somewhere.

          However some workloads, such as RWO volumes and StatefulSets, may require at-most-one semantics.
          Failures affecting these kind of workloads risk data loss and/or corruption if nodes (and the workloads
          running on them) are assumed to be dead whenever we stop hearing from them. For this reason it is important
          to know that the node has reached a safe state before initiating recovery of the workload.

          Unfortunately it is not always practical to require admin intervention in order to confirm the node’s true status.
          In order to automate the recovery of exclusive workloads, we provide operators for failure detection
          and remediation.

          ### Failure detection: Node Health Check operator
          The “Node Health Check” (NHC) operator checks each Node’s set of
          NodeConditions (eg. NotReady) against the criteria and thresholds defined in
          NodeHealthCheck configuration. If the Node is deemed to be in a failed
          state, NHC will initiate recovery by using the SIG Cluster API's “External
          Remediation” API to instantiate the configured remediation template which
          specifies the mechanism/controller to be used.

          ### Failure handling: Self Node Remediation
          By default NHC depends on the “Self Node Remediation” (SNR) operator, which
          is installed automatically.
          SNR uses watchdog timers and heuristics to ensure nodes enter a safe state
          (no longer hosting workloads) within a known and finite period of time,
          before signaling to the system that all Pods and VolumeAttachments on the
          failed Node are no longer active and can be relocated elsewhere.
          In the case of transient errors, the watchdog’s actions will also result in
          the node rebooting and rejoining the cluster - restoring capacity.
        displayName: Node Health Check Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - NHC
        - Self Node Remediation
        - SNR
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/node-healthcheck-operator
        maintainers:
        - email: medik8s@googlegroups.com
          name: medik8s team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: medik8s
          url: https://github.com/medik8s
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/medik8s/node-healthcheck-operator:v0.3.0
        - quay.io/openshift-community-operators/node-healthcheck-operator@sha256:d7cc6d2575eb252fb3e2468106e801f192da7844b0b153dc3c6a12cf7cc0a8fe
        version: 0.3.0
      entries:
      - name: node-healthcheck-operator.v0.3.0
        version: 0.3.0
      name: candidate
    - currentCSV: node-healthcheck-operator.v0.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample"
                },
                "spec": {
                  "minHealthy": "51%",
                  "remediationTemplate": {
                    "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                    "kind": "SelfNodeRemediationTemplate",
                    "name": "self-node-remediation-automatic-strategy-template",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/plugins: '["node-remediation-console-plugin"]'
          containerImage: quay.io/medik8s/node-healthcheck-operator:v0.10.0
          createdAt: "2025-11-24T11:39:14Z"
          description: Detect failed Nodes and trigger remediation with a remediation
            operator.
          olm.skipRange: '>=0.9.0 <0.10.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Hardware is imperfect, and software contains bugs. When node level failures such as kernel hangs or dead NICs
          occur, the work required from the cluster does not decrease - workloads from affected nodes need to be
          restarted somewhere.

          However some workloads, such as RWO volumes and StatefulSets, may require at-most-one semantics.
          Failures affecting these kind of workloads risk data loss and/or corruption if nodes (and the workloads
          running on them) are assumed to be dead whenever we stop hearing from them. For this reason it is important
          to know that the node has reached a safe state before initiating recovery of the workload.

          Unfortunately it is not always practical to require admin intervention in order to confirm the node’s true status.
          In order to automate the recovery of exclusive workloads, we provide operators for failure detection
          and remediation.

          ### Failure detection: Node Health Check operator
          The “Node Health Check” (NHC) operator checks each Node’s set of
          NodeConditions (eg. NotReady) against the criteria and thresholds defined in
          NodeHealthCheck configuration. If the Node is deemed to be in a failed
          state, NHC will initiate recovery by using the SIG Cluster API's “External
          Remediation” API to instantiate the configured remediation template which
          specifies the mechanism/controller to be used.

          ### Failure handling: External remediators
          There are multiple remediators for handling node failure that we recommend:
          - Self Node Remediation (SNR)
          - Fence Agents Remediation (FAR)
          - Machine Deletion Remediation (MDR)

          #### Self Node Remediation (SNR)
          SNR uses watchdog timers and heuristics to ensure nodes enter a safe state
          (no longer hosting workloads) within a known and finite period of time,
          before signaling to the system that all Pods on the failed Node are no longer active
          and can be relocated elsewhere.
          In the case of transient errors, the watchdog’s actions will also result in
          the node rebooting and rejoining the cluster - restoring capacity.

          #### Fence Agents Remediation (FAR)
          FAR uses well-known agents to fence unhealthy nodes, and eventually FAR remediates the nodes.
          The remediation includes rebooting the unhealthy node using a fence agent,
          and then evicting workloads from the unhealthy node.

          #### Machine Deletion Remediation (MDR)
          MDR is limited to OpenShift, and it uses Machine API for reprovisioning unhealthy nodes by deleting their machines.
        displayName: Node Health Check Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - NHC
        - Self Node Remediation
        - SNR
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/node-healthcheck-operator
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/medik8s/node-remediation-console:v0.10.1
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/node-healthcheck-operator@sha256:3824834753d392fd0c11d3fedd3055b5adab519a2f2777754296569ea077e675
        - quay.io/medik8s/node-healthcheck-operator:v0.10.0
        version: 0.10.0
      entries:
      - name: node-healthcheck-operator.v0.10.0
        version: 0.10.0
      - name: node-healthcheck-operator.v0.9.0
        version: 0.9.0
      - name: node-healthcheck-operator.v0.8.0
        version: 0.8.0
      - name: node-healthcheck-operator.v0.6.1
        version: 0.6.1
      - name: node-healthcheck-operator.v0.6.0
        version: 0.6.0
      - name: node-healthcheck-operator.v0.5.0
        version: 0.5.0
      - name: node-healthcheck-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: node-healthcheck-operator
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: lifecycle-agent
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lifecycle-agent.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "ImageBasedUpgrade",
                "metadata": {
                  "name": "upgrade"
                },
                "spec": {
                  "autoRollbackOnFailure": {},
                  "extraManifests": [
                    {
                      "name": "sno-extramanifests",
                      "namespace": "openshift-lifecycle-agent"
                    }
                  ],
                  "oadpContent": [
                    {
                      "name": "oadp-cm-sno-backup",
                      "namespace": "openshift-adp"
                    }
                  ],
                  "seedImageRef": {
                    "image": "quay.io/xyz",
                    "version": "4.16.0"
                  },
                  "stage": "Idle"
                }
              },
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "SeedGenerator",
                "metadata": {
                  "name": "seedimage"
                },
                "spec": {
                  "seedImage": "quay.io/xyz"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
          description: The Lifecycle Agent for OpenShift provides local lifecycle
            management services for Single Node Openshift (SNO) clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-lifecycle-agent
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-lifecycle-agent",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/lifecycle-agent
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ImageBasedUpgrade is the Schema for the ImageBasedUpgrades
              API
            displayName: Image-based Cluster Upgrade
            kind: ImageBasedUpgrade
            name: imagebasedupgrades.lca.openshift.io
            version: v1
          - description: SeedGenerator is the Schema for the seedgenerators API
            displayName: Seed Generator
            kind: SeedGenerator
            name: seedgenerators.lca.openshift.io
            version: v1
        description: |-
          Lifecycle Agent for OpenShift
          The Lifecycle Agent for OpenShift provides local lifecycle management services
          for Single Node Openshift (SNO) clusters.

          You can find additional guidance in the upstream repository: https://github.com/openshift-kni/lifecycle-agent
        displayName: Lifecycle Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - upgrade
        links:
        - name: Lifecycle Agent
          url: https://lifecycle-agent.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/lifecycle-agent-operator-bundle@sha256:251f1b0929695dff69795adbe8aa25da051decab877ea318d8317930c1dd4bb2
        - registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
        - registry.redhat.io/openshift4/recert-rhel9@sha256:db975b2012b3377e24fadbd65a829579cd17eb2db2419781eee7e34c8900f7df
        version: 4.20.0
      entries:
      - name: lifecycle-agent.v4.20.0
        version: 4.20.0
      name: "4.20"
    - currentCSV: lifecycle-agent.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "ImageBasedUpgrade",
                "metadata": {
                  "name": "upgrade"
                },
                "spec": {
                  "autoRollbackOnFailure": {},
                  "extraManifests": [
                    {
                      "name": "sno-extramanifests",
                      "namespace": "openshift-lifecycle-agent"
                    }
                  ],
                  "oadpContent": [
                    {
                      "name": "oadp-cm-sno-backup",
                      "namespace": "openshift-adp"
                    }
                  ],
                  "seedImageRef": {
                    "image": "quay.io/xyz",
                    "version": "4.16.0"
                  },
                  "stage": "Idle"
                }
              },
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "SeedGenerator",
                "metadata": {
                  "name": "seedimage"
                },
                "spec": {
                  "seedImage": "quay.io/xyz"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
          description: The Lifecycle Agent for OpenShift provides local lifecycle
            management services for Single Node Openshift (SNO) clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-lifecycle-agent
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-lifecycle-agent",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/lifecycle-agent
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ImageBasedUpgrade is the Schema for the ImageBasedUpgrades
              API
            displayName: Image-based Cluster Upgrade
            kind: ImageBasedUpgrade
            name: imagebasedupgrades.lca.openshift.io
            version: v1
          - description: SeedGenerator is the Schema for the seedgenerators API
            displayName: Seed Generator
            kind: SeedGenerator
            name: seedgenerators.lca.openshift.io
            version: v1
        description: |-
          Lifecycle Agent for OpenShift
          The Lifecycle Agent for OpenShift provides local lifecycle management services
          for Single Node Openshift (SNO) clusters.

          You can find additional guidance in the upstream repository: https://github.com/openshift-kni/lifecycle-agent
        displayName: Lifecycle Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - upgrade
        links:
        - name: Lifecycle Agent
          url: https://lifecycle-agent.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/lifecycle-agent-operator-bundle@sha256:251f1b0929695dff69795adbe8aa25da051decab877ea318d8317930c1dd4bb2
        - registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
        - registry.redhat.io/openshift4/recert-rhel9@sha256:db975b2012b3377e24fadbd65a829579cd17eb2db2419781eee7e34c8900f7df
        version: 4.20.0
      entries:
      - name: lifecycle-agent.v4.20.0
        version: 4.20.0
      name: stable
    defaultChannel: stable
    packageName: lifecycle-agent
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/streamshub
    name: amq-streams-console
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-streams-console.v3.0.1-5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
          createdAt: "2025-11-11T16:09:40Z"
          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: "true"
          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.skipRange: '>=2.9.0-0 <3.0.1-5'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:ce399e40e9467bce9b81c8d280d523732ba3e75d8f6c67e15cfcecd1842e024f
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:395103ad8ca8e1d2dcd3f05e7c3cc7abedef65189e008fe2d83928bc29558900
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        version: 3.0.1-5
      entries:
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: alpha
    - currentCSV: amq-streams-console.v2.8.0-13-0.1738265629.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:1b1b80710885b43600e22ff2a24930b5cab06cd91fad439ad8a282c00b4564b9
          createdAt: "2024-11-12T15:34:06Z"
          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: "true"
          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.substitutesFor: amq-streams-console.v2.8.0-13
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/2.8
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.23.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:366d60ff48fb9ba32dc73d92a775046d7b1eb1df21c93e31605372c7858f16ca
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:b83c3263e77904ce1c0f95b7bfab969605c97297a5598fd794d64daf508c52c0
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:1b1b80710885b43600e22ff2a24930b5cab06cd91fad439ad8a282c00b4564b9
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:38b80d81e54d59667c1f7dfa4da4125d5c7430816da130ddc84678a4e3cff6cf
        version: 2.8.0-13+0.1738265629.p
      entries:
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-2.8.x
    - currentCSV: amq-streams-console.v2.9.3-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
          createdAt: "2025-12-09T16:50:20Z"
          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: "true"
          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.skipRange: '>=2.8.0-0 <2.9.3-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/2.9
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:7d2e83b4cd9413f81a3dd196dd9b8585f46bf0ce15de20b064ec9d9184f0c506
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:fc53acbd342d479519c8ebfec15d2b6c46ff9d68b80cd4ccfb6f0232b75e48c3
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:1b10411e7ed6635720b0bc0928ab5b51bcd5f23e42cf6f50dc44428a99cade31
        version: 2.9.3-6
      entries:
      - name: amq-streams-console.v2.9.3-6
        version: 2.9.3-6
      - name: amq-streams-console.v2.9.3-5
        version: 2.9.3-5
      - name: amq-streams-console.v2.9.3-2
        version: 2.9.3-2
      - name: amq-streams-console.v2.9.2-2
        version: 2.9.2-2
      - name: amq-streams-console.v2.9.2-1
        version: 2.9.2-1
      - name: amq-streams-console.v2.9.1-7
        version: 2.9.1-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-2.9.x
    - currentCSV: amq-streams-console.v2.9.3-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
          createdAt: "2025-12-09T16:50:20Z"
          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: "true"
          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.skipRange: '>=2.8.0-0 <2.9.3-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/2.9
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:7d2e83b4cd9413f81a3dd196dd9b8585f46bf0ce15de20b064ec9d9184f0c506
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:fc53acbd342d479519c8ebfec15d2b6c46ff9d68b80cd4ccfb6f0232b75e48c3
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:1b10411e7ed6635720b0bc0928ab5b51bcd5f23e42cf6f50dc44428a99cade31
        version: 2.9.3-6
      entries:
      - name: amq-streams-console.v2.9.3-6
        version: 2.9.3-6
      - name: amq-streams-console.v2.9.3-5
        version: 2.9.3-5
      - name: amq-streams-console.v2.9.3-2
        version: 2.9.3-2
      - name: amq-streams-console.v2.9.2-2
        version: 2.9.2-2
      - name: amq-streams-console.v2.9.2-1
        version: 2.9.2-1
      - name: amq-streams-console.v2.9.1-7
        version: 2.9.1-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-2.x
    - currentCSV: amq-streams-console.v3.0.1-5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
          createdAt: "2025-11-11T16:09:40Z"
          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: "true"
          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.skipRange: '>=2.9.0-0 <3.0.1-5'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:ce399e40e9467bce9b81c8d280d523732ba3e75d8f6c67e15cfcecd1842e024f
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:395103ad8ca8e1d2dcd3f05e7c3cc7abedef65189e008fe2d83928bc29558900
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        version: 3.0.1-5
      entries:
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-3.0.x
    - currentCSV: amq-streams-console.v3.1.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
          createdAt: "2025-12-04T18:26:37Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:bb7b7b7936d953e4d320d964defd5931bd6b9a07dd73ed3bbcf3ebaea59ea6f1
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:9038f28c2e875eea355957375dff6827fe463bd28b299a4231714311622ded19
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
        version: 3.1.0-4
      entries:
      - name: amq-streams-console.v3.1.0-4
        version: 3.1.0-4
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-3.1.x
    - currentCSV: amq-streams-console.v3.1.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
          createdAt: "2025-12-04T18:26:37Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:9038f28c2e875eea355957375dff6827fe463bd28b299a4231714311622ded19
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:bb7b7b7936d953e4d320d964defd5931bd6b9a07dd73ed3bbcf3ebaea59ea6f1
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        version: 3.1.0-4
      entries:
      - name: amq-streams-console.v3.1.0-4
        version: 3.1.0-4
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-3.x
    - currentCSV: amq-streams-console.v3.1.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
          createdAt: "2025-12-04T18:26:37Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:bb7b7b7936d953e4d320d964defd5931bd6b9a07dd73ed3bbcf3ebaea59ea6f1
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:9038f28c2e875eea355957375dff6827fe463bd28b299a4231714311622ded19
        version: 3.1.0-4
      entries:
      - name: amq-streams-console.v3.1.0-4
        version: 3.1.0-4
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: stable
    defaultChannel: stable
    packageName: amq-streams-console
    provider:
      name: Red Hat
      url: https://github.com/streamshub
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: ""
    name: runtime-component-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runtime-component.v0.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: registry.connect.redhat.com/ibm/runtime-component-operator@sha256:d37b3f62575c9ad1ffcb22c89e2c3886275c326bf27aa49fb1808acba475853d
          createdAt: "2022-03-25T14:00:00Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          olm.skipRange: <0.8.1
          operators.operatorframework.io/builder: operator-sdk-v1.6.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          This advanced Operator is capable of deploying any runtime component image with consistent, production-grade QoS. It enables enterprise architects to govern the way their applications get deployed & managed in the cluster, while dramatically reducing the learning curve for developers to deploy into Kubernetes - allowing them to focus on writing the code!
          Here are some key features:

          #### Application Lifecyle
          You can deploy your runtime component container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the Operator will watch for any updates and will re-deploy the modified image.

          #### Custom RBAC
          This Operator is capable of using a custom ServiceAccount from the caller, allowing it to follow RBAC restrictions. By default it creates a ServiceAccount if one is not specified, which can also be bound with specific roles.

          #### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as: labels, annotations, and environment variables from a ConfigMap, a Secret or a value.

          #### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configuration, such as TLS settings, are also easily enabled.

          #### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto scaling to create (and delete) instances based on resource consumption.

          #### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you.
          This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart.
          We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.

          #### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating kubernetes Secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to its required services without any intervention or interruption.

          #### Exposing metrics to Prometheus
          The Runtime Component Operator exposes the runtime container's metrics via the Prometheus Operator.
          You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `spec.monitoring` field to control configurations such as the poll interval and security credentials.

          #### Easily mount logs and transaction directories
          If you need to mount the logs and transaction data from your runtime component to an external volume such as NFS (or any storage supported in your cluster), simply add the following (to specify the volume size and the location to persist) to your RuntimeComponent CR:
          ``` storage: size: 2Gi mountPath: "/logs" ```

          #### Integration with OpenShift Serverless
          Deploy your serverless runtime component using a single toggle.  The Operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing your pod to automatically scale to 0 when it is idle.

          #### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and how they are connected.

          See our [**documentation**](https://github.com/application-stacks/runtime-component-operator/tree/main/doc/) for more information.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://github.com/application-stacks/runtime-component-operator/tree/main/doc
        - name: Repository
          url: https://github.com/application-stacks/runtime-component-operator
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: beta
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator@sha256:d37b3f62575c9ad1ffcb22c89e2c3886275c326bf27aa49fb1808acba475853d
        - registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:4603bf04e53ce948bbf0ee5d239d5e265b40598044ef9e1f4539f4e466e59cb2
        version: 0.8.1
      entries:
      - name: runtime-component.v0.8.1
        version: 0.8.1
      - name: runtime-component.v0.8.0
        version: 0.8.0
      name: beta2
    - currentCSV: runtime-component.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:1b818f1a9c27baab6a39ae42d86f78bac085d772cae5cd97b357d0ee5799cf85
          createdAt: "2023-08-28T16:46:50Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          olm.skipRange: '>=0.8.0 <1.2.2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:a178716e62ab8a752bcb9023ad9631af2dbc72357266cd13b43398e21f230828
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02
        - icr.io/appcafe/runtime-component-operator@sha256:1b818f1a9c27baab6a39ae42d86f78bac085d772cae5cd97b357d0ee5799cf85
        version: 1.2.2
      entries:
      - name: runtime-component.v1.2.2
        version: 1.2.2
      name: v1.2
    - currentCSV: runtime-component.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  },
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:682c5cb3e24566bf2933b1d4a4f6bf520d9b546edcedc1ee3214ec1ac4d48629
          createdAt: "2024-08-01T20:26:42Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.3.3'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:c5288fea5b2ef8125f7b1ff7f7633eccd4e52d14ac9cfc5e473c2e317018ca3d
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91
        - icr.io/appcafe/runtime-component-operator@sha256:682c5cb3e24566bf2933b1d4a4f6bf520d9b546edcedc1ee3214ec1ac4d48629
        version: 1.3.3
      entries:
      - name: runtime-component.v1.3.3
        version: 1.3.3
      name: v1.3
    - currentCSV: runtime-component.v1.4.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  },
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:6f527c5173421c28d175b42d8c690eb63c4d1c5092c31d5350fd7a5e93661eaa
          createdAt: "2025-07-18T20:38:10Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.4.4'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:704925128f81d4ffadc4dcfaa69fc8011cf3d0f431d24222a8d7a03bad675331
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3
        - icr.io/appcafe/runtime-component-operator@sha256:6f527c5173421c28d175b42d8c690eb63c4d1c5092c31d5350fd7a5e93661eaa
        version: 1.4.4
      entries:
      - name: runtime-component.v1.4.4
        version: 1.4.4
      name: v1.4
    - currentCSV: runtime-component.v1.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  },
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:38959a0d24fdbaca34903095e21f263d9b8ed774b7b86d5fc0cebb53b274e012
          createdAt: "2025-12-08T16:01:38Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.5.2'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:71533cea0d96615d3ffbbb3d7abb4dc378fa83393ba93dc1310883e74c05e3ac
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f
        - icr.io/appcafe/runtime-component-operator@sha256:38959a0d24fdbaca34903095e21f263d9b8ed774b7b86d5fc0cebb53b274e012
        version: 1.5.2
      entries:
      - name: runtime-component.v1.5.2
        version: 1.5.2
      name: v1.5
    defaultChannel: v1.5
    packageName: runtime-component-operator-certified
    provider:
      name: Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Seldon Technologies
      provider-url: ""
    name: seldon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: seldon-operator.v1.14.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machinelearning.seldon.io/v1",
                "kind": "SeldonDeployment",
                "metadata": {
                  "labels": {
                    "app": "seldon",
                    "app.kubernetes.io/instance": "seldon1",
                    "app.kubernetes.io/name": "seldon",
                    "app.kubernetes.io/version": "v0.5"
                  },
                  "name": "seldon-model"
                },
                "spec": {
                  "name": "test-deployment",
                  "predictors": [
                    {
                      "componentSpecs": [
                        {
                          "spec": {
                            "containers": [
                              {
                                "image": "seldonio/mock_classifier:1.6.0",
                                "name": "classifier"
                              }
                            ]
                          }
                        }
                      ],
                      "graph": {
                        "children": [],
                        "name": "classifier",
                        "type": "MODEL"
                      },
                      "name": "example",
                      "replicas": 1
                    }
                  ]
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: AI/Machine Learning
          certified: "false"
          containerImage: docker.io/seldonio/seldon-core-operator:1.14.1
          createdAt: "2019-05-21 15:00:00"
          description: The Seldon operator for management, monitoring and operations
            of machine learning systems through the Seldon Engine. Once installed,
            the Seldon Operator provides multiple functions which facilitate the productisation,
            monitoring and maintenance of machine learning systems at scale.
          olm.skipRange: <1.13.1
          operators.operatorframework.io/builder: operator-sdk-v1.22.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/SeldonIO/seldon-core
          support: Clive Cox
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A seldon engine deployment
            displayName: Seldon Deployment
            kind: SeldonDeployment
            name: seldondeployments.machinelearning.seldon.io
            version: v1
        description: "The Seldon operator enables for native operation of production
          machine learning workloads, including monitoring and operations of language-agnostic
          models with the benefits of real-time metrics and log analysis.\n   \n##
          Overview\nSeldon Core is an open source platform for deploying machine learning
          models on a Kubernetes cluster.\n\n* Deploy machine learning models in the
          cloud or on-premise.\n* Get metrics and ensure proper governance and compliance
          for your running machine learning models.\n* Create powerful inference graphs
          made up of multiple components.\n* Provide a consistent serving layer for
          models built using heterogeneous ML toolkits.\n\nYou can get started by
          following the guides in our documentation at https://docs.seldon.io/projects/seldon-core/en/latest/workflow/README.html\n"
        displayName: Seldon Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mlops
        - aiops
        - production
        - monitoring
        links:
        - name: Website
          url: https://www.seldon.io/
        - name: Documentation
          url: https://docs.seldon.io/projects/seldon-core/en/latest/
        maintainers:
        - email: hello@seldon.io
          name: Seldon Technologies
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Seldon Technologies
        relatedImages:
        - docker.io/seldonio/seldon-core-operator:1.14.1
        - quay.io/openshift-community-operators/seldon-operator@sha256:864e87ef21e81624010a1cbcee6b17c8c816dcb0a699c66badd32eec3baf39fd
        - ""
        version: 1.14.1
      entries:
      - name: seldon-operator.v1.14.1
        version: 1.14.1
      name: stable
    defaultChannel: stable
    packageName: seldon-operator
    provider:
      name: Seldon Technologies
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Backube
      provider-url: https://github.com/backube
    name: snapscheduler
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: snapscheduler.v3.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "snapscheduler.backube/v1",
                "kind": "SnapshotSchedule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "snapscheduler",
                    "app.kubernetes.io/instance": "daily",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "snapshotschedule",
                    "app.kubernetes.io/part-of": "snapscheduler"
                  },
                  "name": "daily"
                },
                "spec": {
                  "retention": {
                    "maxCount": 7
                  },
                  "schedule": "0 0 * * *"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          certified: "false"
          containerImage: quay.io/backube/snapscheduler:3.5.0
          createdAt: "2025-05-14T14:46:43Z"
          description: The SnapScheduler operator takes snapshots of Kubernetes CSI-based
            persistent volumes according to user-supplied schedules.
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/snapscheduler
          support: https://github.com/backube/snapscheduler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SnapshotSchedule defines a schedule for taking automated
              snapshots of PVC(s)
            displayName: Snapshot Schedule
            kind: SnapshotSchedule
            name: snapshotschedules.snapscheduler.backube
            version: v1
        description: |-
          ## About this operator

          The SnapScheduler operator takes snapshots of CSI-based PersistentVolumes
          according to a configurable
          [Cron-like](https://en.wikipedia.org/wiki/Cron#Overview) schedule. The
          schedules include configurable retention policies for snapshots as well as
          selectors to limit the volumes that are snapshotted. An example schedule
          could be:

          > *Snapshot **all volumes** in a namespace **daily at midnight**, retaining
          > the most recent **7** snapshots for each volume.*

          Multiple schedules can be combined to provide more elaborate protection
          schemes. For example, a given volume (or collection of volumes) could be
          protected with:

          - 6 hourly snapshots
          - 7 daily snapshots
          - 4 weekly snapshots
          - 12 monthly snapshots

          ### How it works

          The operator watches for `SnapshotSchedule` CRs in each namespace. When the
          current time matches the schedule's cronspec, the operator creates a
          `VolumeSnapshot` object for each `PersistentVolumeClaim` in the namespace
          (or subset thereof if a label selector is provided). The `VolumeSnapshot`
          objects are named according to the template:
          `<pvcname>-<schedulename>-<timestamp>`. After creating the new snapshots,
          the oldest snapshots are removed if necessary, according to the retention
          policy of the schedule.

          Please see the [full
          documentation](https://backube.github.io/snapscheduler/) for more
          information.

          ## Requirements

          - OpenShift >= 4.7 (Kubernetes >= 1.20)
          - CSI-based storage driver that supports snapshots (i.e. has the
            `CREATE_DELETE_SNAPSHOT` capability)

          ## Examples

          The schedule for snapshotting is controlled by the
          `snapshotschedules.snapscheduler.backube` Custom Resource. This is a
          namespaced resource that applies only to the PersistentVolumeClaims in its
          namespace.

          Below is a simple example that keeps 7 daily (taken at midnight) snapshots
          of all PVCs in a given namespace:

          ```yaml
          ---
          apiVersion: snapscheduler.backube/v1
          kind: SnapshotSchedule
          metadata:
            name: daily
          spec:
            retention:
              maxCount: 7
            schedule: "0 0 * * *"
          ```

          See the [usage
          documentation](https://backube.github.io/snapscheduler/usage.html) for full
          details, including how to:

          - add label selectors to restrict which PVCs this schedule applies to
          - set the VolumeSnapshotClass used by the schedule
          - apply custom labels to the automatically created VolumeSnapshot objects
        displayName: SnapScheduler
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - snapshot
        - storage
        - scheduler
        links:
        - name: Documentation
          url: https://backube.github.io/snapscheduler/
        - name: Source
          url: https://github.com/backube/snapscheduler
        - name: Blog
          url: https://backube.github.io/
        maintainers:
        - email: jstrunk@redhat.com
          name: John Strunk
        maturity: stable
        minKubeVersion: 1.20.0-0
        provider:
          name: Backube
          url: https://github.com/backube
        relatedImages:
        - quay.io/community-operator-pipeline-prod/snapscheduler@sha256:53902ba6ef33ee750285bdeacc6701027d90dada0184fd162c7a587cfdb57585
        - quay.io/backube/snapscheduler:3.5.0
        - quay.io/brancz/kube-rbac-proxy:v0.19.1
        version: 3.5.0
      entries:
      - name: snapscheduler.v3.5.0
        version: 3.5.0
      - name: snapscheduler.v3.4.0
        version: 3.4.0
      - name: snapscheduler.v3.3.0
        version: 3.3.0
      - name: snapscheduler.v3.2.0
        version: 3.2.0
      - name: snapscheduler.v3.1.0
        version: 3.1.0
      - name: snapscheduler.v3.0.0
        version: 3.0.0
      - name: snapscheduler.v2.1.0
        version: 2.1.0
      - name: snapscheduler.v2.0.0
        version: 2.0.0
      name: candidate
    - currentCSV: snapscheduler.v3.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "snapscheduler.backube/v1",
                "kind": "SnapshotSchedule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "snapscheduler",
                    "app.kubernetes.io/instance": "daily",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "snapshotschedule",
                    "app.kubernetes.io/part-of": "snapscheduler"
                  },
                  "name": "daily"
                },
                "spec": {
                  "retention": {
                    "maxCount": 7
                  },
                  "schedule": "0 0 * * *"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          certified: "false"
          containerImage: quay.io/backube/snapscheduler:3.5.0
          createdAt: "2025-05-14T14:46:43Z"
          description: The SnapScheduler operator takes snapshots of Kubernetes CSI-based
            persistent volumes according to user-supplied schedules.
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/snapscheduler
          support: https://github.com/backube/snapscheduler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SnapshotSchedule defines a schedule for taking automated
              snapshots of PVC(s)
            displayName: Snapshot Schedule
            kind: SnapshotSchedule
            name: snapshotschedules.snapscheduler.backube
            version: v1
        description: |-
          ## About this operator

          The SnapScheduler operator takes snapshots of CSI-based PersistentVolumes
          according to a configurable
          [Cron-like](https://en.wikipedia.org/wiki/Cron#Overview) schedule. The
          schedules include configurable retention policies for snapshots as well as
          selectors to limit the volumes that are snapshotted. An example schedule
          could be:

          > *Snapshot **all volumes** in a namespace **daily at midnight**, retaining
          > the most recent **7** snapshots for each volume.*

          Multiple schedules can be combined to provide more elaborate protection
          schemes. For example, a given volume (or collection of volumes) could be
          protected with:

          - 6 hourly snapshots
          - 7 daily snapshots
          - 4 weekly snapshots
          - 12 monthly snapshots

          ### How it works

          The operator watches for `SnapshotSchedule` CRs in each namespace. When the
          current time matches the schedule's cronspec, the operator creates a
          `VolumeSnapshot` object for each `PersistentVolumeClaim` in the namespace
          (or subset thereof if a label selector is provided). The `VolumeSnapshot`
          objects are named according to the template:
          `<pvcname>-<schedulename>-<timestamp>`. After creating the new snapshots,
          the oldest snapshots are removed if necessary, according to the retention
          policy of the schedule.

          Please see the [full
          documentation](https://backube.github.io/snapscheduler/) for more
          information.

          ## Requirements

          - OpenShift >= 4.7 (Kubernetes >= 1.20)
          - CSI-based storage driver that supports snapshots (i.e. has the
            `CREATE_DELETE_SNAPSHOT` capability)

          ## Examples

          The schedule for snapshotting is controlled by the
          `snapshotschedules.snapscheduler.backube` Custom Resource. This is a
          namespaced resource that applies only to the PersistentVolumeClaims in its
          namespace.

          Below is a simple example that keeps 7 daily (taken at midnight) snapshots
          of all PVCs in a given namespace:

          ```yaml
          ---
          apiVersion: snapscheduler.backube/v1
          kind: SnapshotSchedule
          metadata:
            name: daily
          spec:
            retention:
              maxCount: 7
            schedule: "0 0 * * *"
          ```

          See the [usage
          documentation](https://backube.github.io/snapscheduler/usage.html) for full
          details, including how to:

          - add label selectors to restrict which PVCs this schedule applies to
          - set the VolumeSnapshotClass used by the schedule
          - apply custom labels to the automatically created VolumeSnapshot objects
        displayName: SnapScheduler
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - snapshot
        - storage
        - scheduler
        links:
        - name: Documentation
          url: https://backube.github.io/snapscheduler/
        - name: Source
          url: https://github.com/backube/snapscheduler
        - name: Blog
          url: https://backube.github.io/
        maintainers:
        - email: jstrunk@redhat.com
          name: John Strunk
        maturity: stable
        minKubeVersion: 1.20.0-0
        provider:
          name: Backube
          url: https://github.com/backube
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.19.1
        - quay.io/community-operator-pipeline-prod/snapscheduler@sha256:53902ba6ef33ee750285bdeacc6701027d90dada0184fd162c7a587cfdb57585
        - quay.io/backube/snapscheduler:3.5.0
        version: 3.5.0
      entries:
      - name: snapscheduler.v3.5.0
        version: 3.5.0
      - name: snapscheduler.v3.4.0
        version: 3.4.0
      - name: snapscheduler.v3.3.0
        version: 3.3.0
      - name: snapscheduler.v3.2.0
        version: 3.2.0
      - name: snapscheduler.v3.1.0
        version: 3.1.0
      - name: snapscheduler.v3.0.0
        version: 3.0.0
      - name: snapscheduler.v2.1.0
        version: 2.1.0
      - name: snapscheduler.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: snapscheduler
    provider:
      name: Backube
      url: https://github.com/backube
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/securesign/secure-sign-operator
    name: rhtas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhtas-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": {
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname-intermediate",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname-leaf",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname-root",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname-intermediate",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname-leaf",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname-root",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": {
                  "database": {
                    "create": true
                  },
                  "server": {
                    "replicas": 1
                  },
                  "signer": {
                    "replicas": 1
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
          createdAt: "2025-11-21T12:45:10Z"
          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: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.1-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        version: 1.3.1
      entries:
      - name: rhtas-operator.v1.3.1
        version: 1.3.1
      - name: rhtas-operator.v1.3.0
        version: 1.3.0
      - name: rhtas-operator.v1.2.1
        version: 1.2.1
      - name: rhtas-operator.v1.2.0
        version: 1.2.0
      - deprecation:
          message: rhtas-operator.v1.1.2 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.2
        version: 1.1.2
      - deprecation:
          message: rhtas-operator.v1.1.1 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.1
        version: 1.1.1
      - deprecation:
          message: rhtas-operator.v1.1.0 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.0
        version: 1.1.0
      name: stable
    - currentCSV: rhtas-operator.v1.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": null,
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:e52d07e2cd8cbdc2ccd0336a4fd29cbb2e5b8a1be628350294a54579cc2636ed
          createdAt: "2025-04-08T09:29:59Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:75f1049431f9e92898a4217870309cbbb3b39c8362e929c0bad3b53cad4459db
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:e52d07e2cd8cbdc2ccd0336a4fd29cbb2e5b8a1be628350294a54579cc2636ed
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:329a0dad7842d4ef60430b0e3f188231bea9e579427443ecd42eb62a5c282266
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:7ce611aefdfedd8b2a633def482cf41f390c95b8f8c800b6163a585f117a9e2e
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:09b8259ec9e982a33bde84c7c901ad70c79f3e5f6dd7880b1b1e573dafcbd56c
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:dc994a95be22b0f4bab022fc362c4f44c6a7d1887a2eb0d04870d75654ec013b
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:603a2ffa54df0bd45ff42ac710dd16331560eda2be93442232b045c959773c4d
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:540556453c98db3919e5f305a99c699e767e2891a95fe7527ace578f3c67a308
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:76c24a38ac89ed632d38e44049f37e4997abfa27fa8cadbb8afb42575031296f
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:571c48ecb2658ce70199c06dc483ea48a16e032a764a6830388ad845f508d981
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:5a752cefdaf28bfc53847185cdd5fef1ee47e3dcff8472f8a8bf7bbdc224ef57
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:775b261b8f258b369213246f2da5c91218678acb5e3b8bb4670b143f487767af
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:796860a3e85712c60398c36983e0ff4d45325c7a4de869da2ebf1b6ba4b19825
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:6131053778ea04e437f3005f90d1138aa11ebc58e3a9295e2a8d8ef6713a52be
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:3b8f49c41df15022f8ffdf3a8f8605b14c14f4e10eae754a06a86b6585d158b3
        - registry.redhat.io/ubi9/httpd-24@sha256:366cc5bc3b96069fecaa0abeb9d3510c507e69a20de1d205d881da8ae8561ab4
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1f5a30a285a16635a7234c3c1763dfb385c8bffd605fc862b782bdb5c6c61ea3
        version: 1.1.2
      deprecation:
        message: stable-v1.1 is no longer supported. Please switch to channel 'stable'
          or channel 'stable-v1.2' for continued support.
      entries:
      - deprecation:
          message: rhtas-operator.v1.1.2 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.2
        version: 1.1.2
      - deprecation:
          message: rhtas-operator.v1.1.1 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.1
        version: 1.1.1
      - deprecation:
          message: rhtas-operator.v1.1.0 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: rhtas-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": null,
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:7395b169066adc88a530c421ab9534d61bd2a680c61f86b9afabf9cf8bfd4b7e
          createdAt: "2025-08-17T21:52:06Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:6270ba29adf779de5d3916d5e82f1cd9491ba89d4ae2042347b6ad6d1819dd26
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:02fbd4772c185edf38fcee4e5c5e1c9dad82b77c9da824addaebc445b67d35ac
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:640633823a54c11fe2a8b3d05e571399fda415b6f0b3adf1ba9806882a94bdd4
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:7c4e739622f68cd924afcb41cc788cdadc34c725283a097e564d620f39637bac
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:a93df3206409de75613d398e7dcd8b30ff7cc36eb00349c435784f73f00a2335
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:531603563c69aac6905cd6b8157d30781040527404ac2313acba5a9310e0b713
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:fe31830df2d99359749cb86cd1ac2f32fcc3de07aae427d2f2cd3998d31d2833
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:c22cdb9a17f85e13c00412cba83aa644e90a0faea0236029d0f1c53fe212e227
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:7395b169066adc88a530c421ab9534d61bd2a680c61f86b9afabf9cf8bfd4b7e
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:030986ea26f33db3a192c67a93cd2bde352f23c68a17b062fc062955675c3c51
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:fc018a45b7eb48690c46c83f52cac55fa40089e6b02686bc21265dc7c2205b8f
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:09b4aeeb607c88c72f69e6f87cb840c82ef5752c64a58fa13551db749fac2530
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:eb38e98dbb9828fe033a5388609132f7246fe77d2f4d258d015a94ea30752b24
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:1c2201d50469d70ec6e21546c7c74bd52251d420dc1dcfa5375c1cf61dd3a9fd
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:12b438ea70f83ee6edb12c96b507f92510f4afba824eac34c8f50793c4199db6
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1d782a127d2f8bdab633f287cb2df2e400ae91bf5d4b913473539d8512dfaab6
        - registry.redhat.io/ubi9/httpd-24@sha256:badeee0aa3477e61de64f6a2b93e8a3673edd38fc860125f7536506f3d592132
        version: 1.2.1
      entries:
      - name: rhtas-operator.v1.2.1
        version: 1.2.1
      - name: rhtas-operator.v1.2.0
        version: 1.2.0
      name: stable-v1.2
    - currentCSV: rhtas-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": {
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname-intermediate",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname-leaf",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname-root",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname-intermediate",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname-leaf",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname-root",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": {
                  "database": {
                    "create": true
                  },
                  "server": {
                    "replicas": 1
                  },
                  "signer": {
                    "replicas": 1
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
          createdAt: "2025-11-21T12:45:10Z"
          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: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.1-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        version: 1.3.1
      entries:
      - name: rhtas-operator.v1.3.1
        version: 1.3.1
      - name: rhtas-operator.v1.3.0
        version: 1.3.0
      name: stable-v1.3
    defaultChannel: stable
    packageName: rhtas-operator
    provider:
      name: Red Hat
      url: https://github.com/securesign/secure-sign-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: HashiCorp
      provider-url: https://www.hashicorp.com/
    name: vault-secrets-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vault-secrets-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "secrets.hashicorp.com/v1beta1",
                "kind": "VaultConnection",
                "metadata": {
                  "name": "vaultconnection-sample",
                  "namespace": "tenant-1"
                },
                "spec": {
                  "address": "http://vault.vault.svc.cluster.local:8200"
                }
              },
              {
                "apiVersion": "secrets.hashicorp.com/v1beta1",
                "kind": "VaultAuth",
                "metadata": {
                  "name": "vaultauth-sample",
                  "namespace": "tenant-1"
                },
                "spec": {
                  "vaultConnectionRef": "vaultconnection-sample",
                  "method": "kubernetes",
                  "mount": "kubernetes",
                  "kubernetes": {
                    "role": "sample",
                    "serviceAccount": "default"
                  }
                }
              },
              {
                "apiVersion": "secrets.hashicorp.com/v1beta1",
                "kind": "VaultStaticSecret",
                "metadata": {
                  "name": "vaultstaticsecret-sample",
                  "namespace": "tenant-1"
                },
                "spec": {
                  "vaultAuthRef": "vaultauth-sample",
                  "mount": "kvv2",
                  "type": "kv-v2",
                  "path": "secret",
                  "refreshAfter": "5s",
                  "destination": {
                    "create": true,
                    "name": "secret1"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.connect.redhat.com/hashicorp/vault-secrets-operator@sha256:81f01193c67de89984d51c41d18d807c7e9b44eb949677caa5c191d008cf1562
          createdAt: "2025-12-12T23:37:58Z"
          description: The Vault Secrets Operator (VSO) allows Pods to consume Vault
            secrets natively from Kubernetes Secrets.
          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: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/hashicorp/vault-secrets-operator
          support: HashiCorp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CSISecrets
            name: csisecrets.secrets.hashicorp.com
            version: v1beta1
          - description: HCPAuth is the Schema for the hcpauths API
            displayName: HCPAuth
            kind: HCPAuth
            name: hcpauths.secrets.hashicorp.com
            version: v1beta1
          - description: HCPVaultSecretsApp is the Schema for the hcpvaultsecretsapps
              API
            displayName: HCPVault Secrets App
            kind: HCPVaultSecretsApp
            name: hcpvaultsecretsapps.secrets.hashicorp.com
            version: v1beta1
          - description: SecretTransformation is the Schema for the secrettransformations
              API
            displayName: Secret Transformation
            kind: SecretTransformation
            name: secrettransformations.secrets.hashicorp.com
            version: v1beta1
          - description: VaultAuthGlobal is the Schema for the vaultauthglobals API
            displayName: Vault Auth Global
            kind: VaultAuthGlobal
            name: vaultauthglobals.secrets.hashicorp.com
            version: v1beta1
          - description: VaultAuth is the Schema for the vaultauths API
            displayName: Vault Auth
            kind: VaultAuth
            name: vaultauths.secrets.hashicorp.com
            version: v1beta1
          - description: VaultConnection is the Schema for the vaultconnections API
            displayName: Vault Connection
            kind: VaultConnection
            name: vaultconnections.secrets.hashicorp.com
            version: v1beta1
          - description: VaultDynamicSecret is the Schema for the vaultdynamicsecrets
              API
            displayName: Vault Dynamic Secret
            kind: VaultDynamicSecret
            name: vaultdynamicsecrets.secrets.hashicorp.com
            version: v1beta1
          - description: VaultPKISecret is the Schema for the vaultpkisecrets API
            displayName: Vault PKISecret
            kind: VaultPKISecret
            name: vaultpkisecrets.secrets.hashicorp.com
            version: v1beta1
          - description: VaultStaticSecret is the Schema for the vaultstaticsecrets
              API
            displayName: Vault Static Secret
            kind: VaultStaticSecret
            name: vaultstaticsecrets.secrets.hashicorp.com
            version: v1beta1
        description: |-
          The Vault Secrets Operator (VSO) allows Pods to consume Vault secrets
          natively from Kubernetes Secrets.

          ## Overview

          The Vault Secrets Operator operates by watching for changes to its supported set of Custom Resource Definitions (CRD).
          Each CRD provides the specification required to allow the *Operator* to synchronize a Vault Secrets to a Kubernetes Secret.
          The *Operator* writes the *source* Vault secret data directly to the *destination* Kubernetes Secret, ensuring that any
          changes made to the *source* are replicated to the *destination* over its lifetime. In this way, an application only needs
          to have access to the *destination* secret in order to make use of the secret data contained within.

          See the developer docs for more info [here](https://developer.hashicorp.com/vault/docs/platform/k8s/vso), including
          [examples](https://developer.hashicorp.com/vault/docs/platform/k8s/vso/examples) and a
          [tutorial](https://developer.hashicorp.com/vault/tutorials/kubernetes/vault-secrets-operator)
          for getting started.
        displayName: Vault Secrets Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vault
        - security
        - secrets
        links:
        - name: Vault Secrets Operator
          url: https://github.com/hashicorp/vault-secrets-operator
        - name: Documentation
          url: https://developer.hashicorp.com/vault/docs/platform/k8s/vso
        maintainers:
        - email: support@hashicorp.com
          name: HashiCorp Support
        maturity: stable
        provider:
          name: HashiCorp
          url: https://www.hashicorp.com/
        relatedImages:
        - registry.connect.redhat.com/hashicorp/vault-secrets-operator-bundle@sha256:728c46ce4a9bbf785de180367f43b50ceebdfba815efbe41abe45020361e6ac7
        - registry.connect.redhat.com/hashicorp/vault-secrets-operator@sha256:81f01193c67de89984d51c41d18d807c7e9b44eb949677caa5c191d008cf1562
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:5b333f3daa2eebe3c3a959e30736993d8ebabbe594c6d3f1b7e14296485637d5
        version: 1.1.0
      entries:
      - name: vault-secrets-operator.v1.1.0
        version: 1.1.0
      - name: vault-secrets-operator.v1.0.1
        version: 1.0.1
      - name: vault-secrets-operator.v1.0.0
        version: 1.0.0
      - name: vault-secrets-operator.v0.10.0
        version: 0.10.0
      - name: vault-secrets-operator.v0.9.1
        version: 0.9.1
      - name: vault-secrets-operator.v0.9.0
        version: 0.9.0
      - name: vault-secrets-operator.v0.8.1
        version: 0.8.1
      - name: vault-secrets-operator.v0.8.0
        version: 0.8.0
      - name: vault-secrets-operator.v0.7.0
        version: 0.7.0
      - name: vault-secrets-operator.v0.6.0
        version: 0.6.0
      - name: vault-secrets-operator.v0.5.2
        version: 0.5.2
      - name: vault-secrets-operator.v0.5.1
        version: 0.5.1
      - name: vault-secrets-operator.v0.5.0
        version: 0.5.0
      - name: vault-secrets-operator.v0.4.3
        version: 0.4.3
      name: stable
    defaultChannel: stable
    packageName: vault-secrets-operator
    provider:
      name: HashiCorp
      url: https://www.hashicorp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Strimzi
      provider-url: ""
    name: strimzi-kafka-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: strimzi-cluster-operator.v0.49.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.1.1",
                      "metadataVersion": "4.1-IV1",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.1.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "groupId":"my-connect-group",
                  "configStorageTopic":"my-connect-configs",
                  "statusStorageTopic":"my-connect-status",
                  "offsetStorageTopic":"my-connect-offsets",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.1.1",
                  "replicas": 1,
                  "target": {
                    "alias": "cluster-b",
                    "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                    "groupId":"my-mm2-group",
                    "configStorageTopic":"my-mm2-configs",
                    "statusStorageTopic":"my-mm2-status",
                    "offsetStorageTopic":"my-mm2-offsets",
                    "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                    }
                  },
                  "mirrors": [
                    {
                      "source": {
                        "alias": "cluster-a",
                        "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                      },
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
          createdAt: "2025-11-18 15:11:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * ⚠️ **SECURITY: Strimzi 0.49.1 addresses CVE-2025-66623.**
            **If you use Strimzi 0.47.0 or newer, we recommend upgrading to 0.49.1.**

          * **Strimzi 0.49 introduces new API version `v1` to all Strimzi custom resources.**
            The old API versions (`v1alpha1`, `v1beta1`, and `v1beta2`) will continue to be supported until Strimzi 1.0.0 / 0.52.0.
            For more details about the migration to the v1 API and CRD upgrades, see the [documentation](https://strimzi.io/docs/operators/in-development/deploying.html#assembly-api-conversion-str).

          * **Before upgrading to Strimzi 0.49 or newer**, make sure that you update your KafkaUser resources to [use the `.spec.authorization.acls[].operations` field instead of the deprecated `.spec.authorization.acls[].operation`](https://strimzi.io/docs/operators/in-development/deploying.html#con-api-conversion-v1-str).
          * **When rack-awareness is enabled in the `Kafka` custom resource (`.spec.kafka.rack`), Strimzi will not automatically add the best-effort-affinity rules for spreading the Kafka Pods between the zones.**
            Please make sure to set your own `topologySpreadConstraint` or `affinity` rules instead.

          * **From Strimzi 0.48.0, we support only Kubernetes 1.27 and newer.**
            Kubernetes 1.25 and 1.26 are not supported anymore

          ### New in 0.49
          * Support for Kafka 4.0.1 and 4.1.1
          * New v1 API for Strimzi CRDs
          * Refactoring of the KafkaConnect and KafkaMirrorMaker2 custom resources and their structure
          * Changes to how the template fields in Kafka and KafkaNodePool custom resources are handled
          * Removed automatic best-effort affinity rules when rack-awareness is enabled
          * BlockOwnerDeletion is set to true in owner references
          * Support of Buildah for building custom Kafka Connect container images
          * And many more ...
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:d495d3b6c98d1ea22ed3bdf0d6d06d6cda1c5b35087c817e8cf807892b178520
        - quay.io/strimzi/kaniko-executor@sha256:ba89470b45a49e5e09aaab91a5c3c03ecb14f9013d598bc14b3d756eb9a145b4
        - quay.io/strimzi/maven-builder@sha256:b8831c2aad621b80dce38484fae353cc5226bfc4dffb0f4c9d8b8d86e0fb3933
        - quay.io/strimzi/kafka@sha256:8f775ee53622bf68b791c405e40299baa3d845b98e282d1a9269f9466018e990
        - quay.io/strimzi/kafka@sha256:bfbee54f85beb3731cf41483befa39d8c5ebe5db002df6265c6ea95b6a156749
        - quay.io/strimzi/buildah@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/kafka-bridge@sha256:53034f64f0b672f10b5bacea1c7a25132f118df7fd5c9032c4dbf702ed93796a
        - quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:928c76a840e7de6f1d9350988238bec7035ed981118e64cfedde4e32d5cb5baf
        - quay.io/strimzi/kafka@sha256:73799dcf5bc7d1bb19f500f345d8892a1f91cf0213e01d9b59d3a1a53cc80aca
        version: 0.49.1
      entries:
      - name: strimzi-cluster-operator.v0.49.1
        version: 0.49.1
      - name: strimzi-cluster-operator.v0.49.0
        version: 0.49.0
      - name: strimzi-cluster-operator.v0.48.0
        version: 0.48.0
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: stable
    - currentCSV: strimzi-cluster-operator.v0.23.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"2.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"2.8",
                        "inter.broker.protocol.version":"2.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnectS2I",
                "metadata":{
                  "name":"my-connect-s2i-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "whitelist":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 2,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"2.8.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": 1,
                        "offset.storage.replication.factor": 1,
                        "status.storage.replication.factor": 1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "NetworkOutboundCapacityGoal",
                    "CpuCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster with S2I support"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:59d939f342f96d0e8a54c96fd187832c4b19cd4137bf55ace53d486728ae6c5f
          createdAt: "2021-05-14 11:37:13"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster with Source 2 Image support
            displayName: Kafka Connect Source to Image
            kind: KafkaConnectS2I
            name: kafkaconnects2is.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  Starting with Strimzi 0.23, we support only the `v1beta2` API version of all Strimzi custom resources.  This is a required for migration to `apiextensions/v1` which is needed because Kubernetes 1.22 will remove support for `apiextensions/v1beta1`.  Migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs **before upgrading to Strimzi 0.23**. For more details about the CRD upgrades, see the [documentation](https://strimzi.io/docs/operators/0.23.0/deploying.html#assembly-upgrade-resources-str).
          ### New in 0.23
          * Migrate to CRD v1 (required by Kubernetes 1.22+)
          * Strimzi API versions `v1alpha1` and `v1beta1` were removed from all Strimzi custom resources apart from `KafkaTopic` and `KafkaUser` (use `v1beta2` versions instead)
          * Add support for Kafka 2.8.0 and 2.6.2, remove support for Kafka 2.5.x
          * Make it possible to configure maximum number of connections and maximum connection creation rate in listener configuration
          * Add support for configuring finalizers for `loadbalancer` type listeners
          * Use dedicated Service Account for Kafka Connect Build on Kubernetes
          * Remove direct ZooKeeper access for handling user quotas in the User Operator. Add usage of Admin Client API instead.
          * Support for configuring custom Authorizer implementation
          * Changed Reconciliation interval for Topic Operator from 90 to 120 seconds (to keep it the same as for other operators)
          * Changed Zookeeper session timeout default value to 18 seconds for Topic and User Operators (for improved resiliency)
          * Removed requirement for replicas and partitions KafkaTopic spec making these parameters optional
          * Support to configure a custom filter for parent CR's labels propagation into subresources
          * Allow disabling service links (environment variables describing Kubernetes services) in Pod template
          * Add support for separate control plane listener (disabled by default, available via the `ControlPlaneListener` feature gate)
          * Support for Dual Stack networking
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _master_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/master/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/master/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:e90695b35d6dd5db20c9900dd0dab95d1ef908f3145b4f9f436b903303c88549
        - quay.io/strimzi/operator@sha256:59d939f342f96d0e8a54c96fd187832c4b19cd4137bf55ace53d486728ae6c5f
        - quay.io/strimzi/kafka@sha256:641f46114c59d61577bcb3f4ef5af16aea3ed42c2a575f8d3641c82848df85e8
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:68cdc37990bc7da8a6bbe3a4908378c8026e5ff980bf8c44c0277f689006fc51
        - quay.io/strimzi/jmxtrans@sha256:b4ec1844f4cc5eb74cd0aac83d74b81b977e178bf670d1136d1af0b68663d0a3
        - quay.io/strimzi/kafka@sha256:699bff48ee445d8ba381a791cd0340015e3ecede8d169f41bc151095ab7fb5cc
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        - quay.io/strimzi/kafka-bridge@sha256:bed07186355a4c04ee50e90048e3bd3a023264093a9ef28f0278cce44640e93f
        - quay.io/strimzi/kafka@sha256:d2745f48ed262290ce66c3362ffb9b9a8cfeb9c76beac40c995f72f3f06ad10e
        - quay.io/strimzi/kafka@sha256:dbc53bb374d2cb9513a5bb8f80fea751c91b249cabd36d8b3c04af5e5c961738
        version: 0.23.0
      entries:
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.23.x
    - currentCSV: strimzi-cluster-operator.v0.24.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"2.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"2.8",
                        "inter.broker.protocol.version":"2.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnectS2I",
                "metadata":{
                  "name":"my-connect-s2i-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 2,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"2.8.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster with S2I support"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:786ea69c77e0651f009a73a8b3ce0b3d41b3cd71b917dc0d9bdc61c725f494a6
          createdAt: "2021-06-24 13:13:13"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster with Source 2 Image support
            displayName: Kafka Connect Source to Image
            kind: KafkaConnectS2I
            name: kafkaconnects2is.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: "Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org)
          cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/)
          in various deployment configurations. See our [website](https://strimzi.io)
          for more details about the project.\n### CRD Upgrades\n**!!! IMPORTANT !!!**
          \ This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.
          \ If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed
          for all Strimzi CRDs and CRs before the upgrade to 0.24 is done!  If upgrading
          from Strimzi version earlier than 0.22, you need to first install the CRDs
          from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi
          CRDs and CRs before the upgrade to 0.24 is done!  For more details about
          the CRD upgrades, see the documentation.\n### New in 0.24\n* Add support
          for Kafka 2.7.1 and remove support for 2.6.0, 2.6.1, and 2.6.2\n* Add support
          for [Kubernetes Configuration Provider for Apache Kafka](https://github.com/strimzi/kafka-kubernetes-config-provider)\n*
          Use Red Hat UBI8 base image\n* Support for patching of service accounts
          and configuring their labels and annotations. The feature is disabled by
          default and enabled using the new `ServiceAccountPatching` feature gate.\n*
          Added support for configuring cluster-operator's worker thread pool size
          that is used for various sync and async tasks\n* Add Kafka Quotas plugin
          with produce, consume, and storage quotas\n* Support pausing reconciliation
          of KafkaTopic CR with annotation `strimzi.io/pause-reconciliation`\n* Update
          cruise control to 2.5.57\n* Update to Strimzi Kafka Bridge to 0.20.1\n*
          Support for broker load information added to the rebalance optimization
          proposal. Information on the load difference, before and after a rebalance
          is stored in a ConfigMap\n* Add support for selectively changing the verbosity
          of logging for individual CRs, using markers.\n* Added support for `controller_mutation_rate'
          quota. Creation/Deletion of topics and creation of partitions can be configured
          through this.\n* Use newer version of Kafka Exporter with different bugfixes
          \n### Supported Features\n* **Manages the Kafka Cluster** - Deploys and
          manages all of the components of this complex application, including dependencies
          like Apache ZooKeeper® that are traditionally hard to administer.\n* **Includes
          Kafka Connect** - Allows for configuration of common data sources and sinks
          to move data into and out of the Kafka cluster.\n* **Topic Management**
          - Creates and manages Kafka Topics within the cluster.\n* **User Management**
          - Creates and manages Kafka Users within the cluster.\n* **Connector Management**
          - Creates and manages Kafka Connect connectors.\n* **Includes Kafka Mirror
          Maker 1 and 2** - Allows for morroring data between different Apache Kafka®
          clusters.\n* **Includes HTTP Kafka Bridge** - Allows clients to send and
          receive messages through an Apache Kafka® cluster via HTTP protocol.\n*
          **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes
          partition replicas according to specified goals in order to achieve the
          best cluster performance.\n* **Monitoring** - Built-in support for monitoring
          using Prometheus and provided Grafana dashabords\n### Upgrading your Clusters\nThe
          Strimzi Operator understands how to run and upgrade between a set of Kafka
          versions. When specifying a new version in your config, check to make sure
          you aren't using any features that may have been removed. See [the upgrade
          guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str)
          for more information.\n### Storage\nAn efficient data storage infrastructure
          is essential to the optimal performance of Apache Kafka®. Apache Kafka®
          deployed via Strimzi requires block storage. The use of file storage (for
          example, NFS) is not recommended.\nThe Strimzi Operator supports three types
          of data storage:\n* Ephemeral (Recommended for development only!)\n* Persistent\n*
          JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)\nStrimzi
          also supports advanced operations such as adding or removing disks in Apache
          Kafka® brokers or resizing the persistent volumes (where supported by the
          infrastructure).\n### Documentation\nDocumentation to the current _main_
          branch as well as all releases can be found on our [website](https://strimzi.io/documentation).\n###
          Getting help\nIf you encounter any issues while using Strimzi, you can get
          help using:\n* [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n*
          [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          Contributing\nYou can contribute by:\n* Raising any issues you find using
          Strimzi\n* Fixing issues by opening Pull Requests\n* Improving documentation\n*
          Talking about Strimzi\n\nAll bugs, tasks or enhancements are tracked as
          [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues).
          Issues which  might be a good start for new contributors are marked with
          [\"good-start\"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start)
          label.\n\nThe [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md)
          describes how to build Strimzi and how to  test your changes before submitting
          a patch or opening a PR.\n\nThe [Documentation Contributor Guide](https://strimzi.io/contributing/guide/)
          describes how to contribute to Strimzi documentation.\n\nIf you want to
          get in touch with us first before contributing, you can use:\n* [Strimzi
          mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n*
          [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          License\nStrimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).\n"
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:fbb08410d9595029bc4a02ed859971264e6ce2dc85dd6a9855eaa7bb58b52a25
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        - quay.io/strimzi/operator@sha256:786ea69c77e0651f009a73a8b3ce0b3d41b3cd71b917dc0d9bdc61c725f494a6
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:97762fcd8bfeec64fe4d3d43a6e60bc705ff2c8773354357e545adf31c8f85c5
        - quay.io/strimzi/jmxtrans@sha256:2c54adabf6f31c087dbb898057f9c5e200aaf4c5b39fb3a47bbaf7f6587df72d
        - quay.io/strimzi/kafka-bridge@sha256:537ea10e87619251204747ebc1005c632a6c6ed270f5ef06f86c0c3ae4a7553b
        - quay.io/strimzi/kafka@sha256:8959b7968ab8b3306906cdbff2ebb8d63329af37e58124a601843795c4ef5bd6
        - quay.io/strimzi/kafka@sha256:95cfe9000afda2f7def269ca46472d3803ee85146c521884884d8505a7187daf
        version: 0.24.0
      entries:
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.24.x
    - currentCSV: strimzi-cluster-operator.v0.25.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"2.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"2.8",
                        "inter.broker.protocol.version":"2.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"2.8.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster with S2I support"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:afaf1dd1f2f696ae80674d74159661ea239ae609f78a73a1423c7a17a39e5044
          createdAt: "2021-06-24 13:13:13"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.25 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.25 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.25
          * Move from Scala 2.12 to Scala 2.13
          * Open Policy Agent authorizer updated to a new version supporting Scala 2.13.
            The new version of the authroizer uses different format of the input data sent to the OPA server and might require you to update your policies.
            See [release notes](https://github.com/strimzi/strimzi-kafka-operator/releases/tag/0.25.0) for more details.

          * Allow a custom password to be set for SCRAM-SHA-512 users by referencing a secret in the `KafkaUser` resource
          * Add support for [EnvVar Configuration Provider for Apache Kafka](https://github.com/strimzi/kafka-env-var-config-provider)
          * Add support for `tls-external` authentication to User Operator to allow management of ACLs and Quotas for TLS users with user certificates generated externally
          * Support for disabling the automatic generation of network policies by the Cluster Operator
          * Configure fixed size limit for `emptyDir` volumes used for temporary files
          * Update Strimzi Kafka Bridge to 0.20.2
          * The `KafkaConnectS2I` resource has been removed and is no longer supported by the operator.
            Please use the [migration guide](https://strimzi.io/docs/operators/0.24.0/full/using.html#proc-migrating-kafka-connect-s2i-str) to migrate your `KafkaConnectS2I` deployments to [`KafkaConnect` Build](https://strimzi.io/docs/operators/latest/full/deploying.html#creating-new-image-using-kafka-connect-build-str) instead.

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/jmxtrans@sha256:af5eb8459ac9a0acbca51e67c6e0217f62ba404cba9f2251968c927dcef75252
        - quay.io/strimzi/kafka-bridge@sha256:a005e20d7fbe04d6f587f2093e21a00556ec62b850df757b9f7d9d57e3141c40
        - quay.io/strimzi/kafka@sha256:56a33815f7d50a97ea9bb4cce1e3a6d04d918b841b5aa285f16b792d8930059e
        - quay.io/strimzi/kafka@sha256:d8991608ec71f17e850c33714ee02ca87ba94bc0f077be62ad1ed127ca244823
        - quay.io/strimzi/kafka@sha256:ee17eb3611019b0cfa5e9e196610edc1dbd7084471fb20990f055c89da8eef45
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        - quay.io/strimzi/operator@sha256:afaf1dd1f2f696ae80674d74159661ea239ae609f78a73a1423c7a17a39e5044
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:4fa7a30eb3f679a495aeb96794056ffd003237686b2b60e693c8cabf6bc15bae
        version: 0.25.0
      entries:
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.25.x
    - currentCSV: strimzi-cluster-operator.v0.26.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.0.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"3.0",
                        "inter.broker.protocol.version":"3.0"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.0.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:5d90caa66f57939ba62a9a50efa00fce319ba596e719a3f8a42170d7635ee3f4
          createdAt: "2021-12-14 00:16:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.26 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.26 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.26.1
          * **Updated Log4j2 to fix CVE-2021-44228**
          ### New in 0.26.0
          * Add support for Kafka 2.8.1 and 3.0.0; remove Kafka 2.7.0 and 2.7.1
          * Add support for exposing JMX in Zookeeper
          * Allow configuring labels and annotations for JMX authentication secrets
          * Enable Cruise Control anomaly.detection configurations
          * Add support for building connector images from the Maven coordinates
          * Allow Kafka Connect Build artifacts to be downloaded from insecure servers
          * Add option to specify pull secret in Kafka Connect Build on OpenShift
          * Configurable authentication, authorization, and SSL for Cruise Control API
          * Allow to configure `/tmp` volume size via Pod template. By default `1Mi` is used.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/jmxtrans@sha256:bff5d3bab575d0b9ed95dd79d2d22518cc00c4d1c9dbb5614ed16149d4920a1b
        - quay.io/strimzi/kafka-bridge@sha256:d3899c79747e4cb3a6df5a9fcd80b81f038ca0634a97329c1d160499469876dd
        - quay.io/strimzi/kafka@sha256:bd22a134b0c351ddfc78a3263850c2f16733c52f57ac92984cbe0ffff477c724
        - quay.io/strimzi/operator@sha256:5d90caa66f57939ba62a9a50efa00fce319ba596e719a3f8a42170d7635ee3f4
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:6dce519730a6eb73bc18bef8372cdde65c29af3cb52eb78afc808d8582526fd3
        - quay.io/strimzi/kafka@sha256:6367b0fbba9593e3ac736040ea2d7ef71296b1ec144d3b54d9370352141b90e4
        - quay.io/strimzi/maven-builder@sha256:663eb81388ae8f824e7920c272f6d2e2274cf6c140d61416607261cdce9d50e2
        - quay.io/strimzi/kafka@sha256:8c022a8535742b2eea691737f863af5ddef1e8df08b415b8139ecd02a79052a5
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        version: 0.26.1
      entries:
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.26.x
    - currentCSV: strimzi-cluster-operator.v0.27.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.0.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"3.0",
                        "inter.broker.protocol.version":"3.0"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.0.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:9ea49407a04006d0bddfaaee822adfb95f5857af32ffcee81ba60ce891b07ba8
          createdAt: "2022-01-14 20:00:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.27 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.27 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.27.1
          * Updated Log4j2 to version 2.17.1 and Fabric8 Kubernetes Client to 5.10.2
          ### New in 0.27.0
          * Updated Log4j2 to version 2.17.0 (adresses CVE-2021-44228, CVE-2021-45046, CVE-2021-45105)
          * (Experimental) support for AArch64 / ARM64 architecture
          * `ControlPlaneListener` and `ServiceAccountPatching` feature gates are now in the beta phase and are enabled by default
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:a3ec567ca529df2fa41f8986d21e86dde66be94aa4baa56faa66db4dcb3b258e
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:9f2c01e88b29154ba7a0f70a1c69a49c86a567808cf057cb5d115159278cf2cf
        - quay.io/strimzi/jmxtrans@sha256:d2d2477517eb1ac98b51ad6d64d8c1c578141637afa8d46037076f0013183c0b
        - quay.io/strimzi/kaniko-executor@sha256:a07ebe6600d6baba09980abdde2931b3b6abd2f75aeb2cac5c6a2d22a37aa807
        - quay.io/strimzi/maven-builder@sha256:9acd178cc504be8acaa70a39f3c17830aae1f0e93a656110790f9476b09260d5
        - quay.io/strimzi/operator@sha256:9ea49407a04006d0bddfaaee822adfb95f5857af32ffcee81ba60ce891b07ba8
        - quay.io/strimzi/kafka-bridge@sha256:55a52316aead02efa2004174e11ad4728bb8b6f1c1415f725f597f1d2f2da188
        - quay.io/strimzi/kafka@sha256:f4d68bb94447c6612f70de7f6587e9e7ef712c83769ea1f11a8dbda0d241a059
        - quay.io/strimzi/kafka@sha256:5682a6bfcc4ee13d53a30d587c8f96bc40abe3618880989336c5af274ea3cefa
        version: 0.27.1
      entries:
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.27.x
    - currentCSV: strimzi-cluster-operator.v0.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.1.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.1"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.1.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.1.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.1.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:8b010c5fb8244b742a37f264feefc116d75bb2abd2d6895375cbeea250727b39
          createdAt: "2022-02-12 23:02:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.28 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.28 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.28.0
          * Support for Kafka 3.1.0
          * Support for `StrimziPodSet` resources (disabled by default through the `UseStrimziPodSets` feature gate)
          * Support custom authentication mechanisms in Kafka listeners
          * Intra-broker disk balancing using Cruise Control
          * Add support for disabling the FIPS mode in OpenJDK
          * Fix renewing your own CA certificates
          * Added the option `createBootstrapService` to disable the creation of the bootstrap service for the Load Balancer Type Listener
          * Dependency updates (Strimzi Kafka Bridge, Strimzi OAuth, Open Policy Agent Authroizer plugin and others)
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:c345c783d8fbbee4edeca2ebc47e7c454fcc2e26686820b8037de97369280ba0
        - quay.io/strimzi/kafka@sha256:06e9bda15495feb2b92d9950e834cdeed6ef20064f021a879610f1b59dd46950
        - quay.io/strimzi/kafka@sha256:7c04f65e216bb941458aeadffb85e9eeee43d5ca67da566017c2c93a0664c98e
        - quay.io/strimzi/kaniko-executor@sha256:a07ebe6600d6baba09980abdde2931b3b6abd2f75aeb2cac5c6a2d22a37aa807
        - quay.io/strimzi/maven-builder@sha256:3d5d664e089651944712361a6d8ba42b578dbd9bb3dfd9972f614520c9cfab75
        - quay.io/strimzi/operator@sha256:8b010c5fb8244b742a37f264feefc116d75bb2abd2d6895375cbeea250727b39
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:edec37e045212f74d160724ffc7b2c8ccf4e60eb95629aae80360494d78d5433
        - quay.io/strimzi/jmxtrans@sha256:3a55a81790dc88b90d1bf858e2cfd7e591ad0e79f763c6d1667b2d3eb0d0c79d
        version: 0.28.0
      entries:
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.28.x
    - currentCSV: strimzi-cluster-operator.v0.29.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:afde94c6d2544207cb7f3c94b54455643558a9d5daaa13b9f736cc8da20e319c
          createdAt: "2022-05-15 00:01:07"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.29 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.29 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.29.0
          * Add support for Apache Kafka 3.0.1, 3.1.1 and 3.2.0
          * Renew user certificates in User Operator only during maintenance windows
          * Remove TLS sidecar from Cruise Control pod. Cruise Control is now configured to not using ZooKeeper, so the TLS sidecar is not needed anymore.
          * Allow Cruise Control topic names to be configured
          * Add support for `spec.rack.topologyKey` property in Mirror Maker 2 to enable "fetch from the closest replica" feature.
          * Experiemntal support for the s390x platform
          * Added new rebalancing modes on the `KafkaRebalance` custom resource to add or remove brokers
          * Experimental KRaft mode (ZooKeeper-less Kafka). Use it for development and testing only!
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:935caab03f1d0365b47ddefec0c1d8fa449fc3de715ccdd298aedef5ce968c73
        - quay.io/strimzi/kafka@sha256:95678e843bc87cbe571f3f299045dd075725816b59e1b87821cd6025876ec559
        - quay.io/strimzi/kafka@sha256:9dfc09273ad8fc4bdc75cbe93b4a061a05a5defb5884a221ae1e178ba602787f
        - quay.io/strimzi/kafka@sha256:284cde40784b6ff7bfb81b6dd28928e1e8c598fe6a72504f025592e5b43fa94c
        - quay.io/strimzi/kafka@sha256:ac190141120c1800cc7131d3a1f701e64efdcd4a5d87f0b2e0e2cadfdef8b438
        - quay.io/strimzi/kaniko-executor@sha256:544c4987f7f3ca558b04e9ef4357be204f088212b7b5b9ed0f909401a8bc5238
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:465f0bef1f167b1d16ba9ae5f2d9a1133d11786b6809698a84c5c962387dbf6f
        - quay.io/strimzi/jmxtrans@sha256:f89e3c9618430908a8b390f2490f5aa43687b12889b434472a962ce0170c6463
        - quay.io/strimzi/operator@sha256:afde94c6d2544207cb7f3c94b54455643558a9d5daaa13b9f736cc8da20e319c
        - quay.io/strimzi/maven-builder@sha256:0c096a59faf8fd224298c01415a895043db4647534c060cb7e53207e9448bf65
        - quay.io/strimzi/kafka-bridge@sha256:b7bc3dd90e87223766f608a0087b521f0bba79d1c21eaa833bc2708c71148b7f
        version: 0.29.0
      entries:
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.29.x
    - currentCSV: strimzi-cluster-operator.v0.30.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:587db6f4389f56209f48853beedbfe249f6d590a4cb0000be2c42b57e43c2adb
          createdAt: "2022-07-16 00:00:10"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: "Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org)
          cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/)
          in various deployment configurations. See our [website](https://strimzi.io)
          for more details about the project.\n### CRD Upgrades\n**!!! IMPORTANT !!!**
          \ This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.
          \ If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed
          for all Strimzi CRDs and CRs before the upgrade to 0.30 is done!  If upgrading
          from Strimzi version earlier than 0.22, you need to first install the CRDs
          from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi
          CRDs and CRs before the upgrade to 0.30 is done!  For more details about
          the CRD upgrades, see the documentation.\n### New in 0.30.0\n* The `UseStrimziPodSets`
          feature gate moves to beta stage. By default, StrimziPodSets are used instead
          of StatefulSets. If needed, `UseStrimziPodSets` can be disabled in the feature
          gates configuration in the Cluster Operator.\n* The `ServiceAccountPatching`
          feature gate moves to GA. It cannot be disabled anymore and will be permanently
          enabled.\n* Remove support for Kafka 3.0.0 and 3.0.1\n* Add support for
          `simple` authorization and for the User Operator to the experimental `UseKRaft`
          feature gate. _(Note: Due to [KAFKA-13909](https://issues.apache.org/jira/browse/KAFKA-13909),
          broker restarts currently don't work when authorization is enabled.)_\n*
          Add CPU and network capacity overrides for Cruise Control capacity config\n*
          Use better encryption and digest algorithms when creating the PKCS12 stores.
          For existing clusters, the certificates will not be updated during upgrade
          but only next time the PKCS12 store is created. \n* Operator emits Kafka
          events to explain why it restarted a Kafka broker\n* Better configurability
          of the Kafka Admin client in the User Operator\n* Update Strimzi Kafka Bridge
          to 0.21.6\n### Supported Features\n* **Manages the Kafka Cluster** - Deploys
          and manages all of the components of this complex application, including
          dependencies like Apache ZooKeeper® that are traditionally hard to administer.\n*
          **Includes Kafka Connect** - Allows for configuration of common data sources
          and sinks to move data into and out of the Kafka cluster.\n* **Topic Management**
          - Creates and manages Kafka Topics within the cluster.\n* **User Management**
          - Creates and manages Kafka Users within the cluster.\n* **Connector Management**
          - Creates and manages Kafka Connect connectors.\n* **Includes Kafka Mirror
          Maker 1 and 2** - Allows for mirroring data between different Apache Kafka®
          clusters.\n* **Includes HTTP Kafka Bridge** - Allows clients to send and
          receive messages through an Apache Kafka® cluster via HTTP protocol.\n*
          **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing
          partition replicas according to specified goals in order to achieve the
          best cluster performance.\n* **Monitoring** - Built-in support for monitoring
          using Prometheus and provided Grafana dashboards\n### Upgrading your Clusters\nThe
          Strimzi Operator understands how to run and upgrade between a set of Kafka
          versions. When specifying a new version in your config, check to make sure
          you aren't using any features that may have been removed. See [the upgrade
          guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str)
          for more information.\n### Storage\nAn efficient data storage infrastructure
          is essential to the optimal performance of Apache Kafka®. Apache Kafka®
          deployed via Strimzi requires block storage. The use of file storage (for
          example, NFS) is not recommended.\nThe Strimzi Operator supports three types
          of data storage:\n* Ephemeral (Recommended for development only!)\n* Persistent\n*
          JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)\nStrimzi
          also supports advanced operations such as adding or removing disks in Apache
          Kafka® brokers or resizing the persistent volumes (where supported by the
          infrastructure).\n### Documentation\nDocumentation to the current _main_
          branch as well as all releases can be found on our [website](https://strimzi.io/documentation).\n###
          Getting help\nIf you encounter any issues while using Strimzi, you can get
          help using:\n* [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n*
          [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          Contributing\nYou can contribute by:\n* Raising any issues you find using
          Strimzi\n* Fixing issues by opening Pull Requests\n* Improving documentation\n*
          Talking about Strimzi\nAll bugs, tasks or enhancements are tracked as [GitHub
          issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues
          which  might be a good start for new contributors are marked with [\"good-start\"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start)
          label.\nThe [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md)
          describes how to build Strimzi and how to  test your changes before submitting
          a patch or opening a PR.\nThe [Documentation Contributor Guide](https://strimzi.io/contributing/guide/)
          describes how to contribute to Strimzi documentation.\nIf you want to get
          in touch with us first before contributing, you can use:\n* [Strimzi mailing
          list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n* [Strimzi
          Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          License\nStrimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).\n"
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/jmxtrans@sha256:de1ca88b713b926b72df535aca2cfad24fb1b2bf40481065d6fa0c421b872320
        - quay.io/strimzi/kaniko-executor@sha256:544c4987f7f3ca558b04e9ef4357be204f088212b7b5b9ed0f909401a8bc5238
        - quay.io/strimzi/maven-builder@sha256:f2cb45234f3a7a010824a370d03032b706271cd0d1d260da929f046f9259d7e0
        - quay.io/strimzi/kafka-bridge@sha256:77fc68da171c74d3a4b75b1030eaaa5eae12e200002f7aa2ee1969385eba1d66
        - quay.io/strimzi/kafka@sha256:5d881605425ab0b37d0b9cac6957d00ba904df0db185ca6181c810151bdab8e7
        - quay.io/strimzi/kafka@sha256:68d6f4cb5cc5ccad44de799bd9cf417c469a09e1024dbe42298942f25a09e004
        - quay.io/strimzi/kafka@sha256:d9258ddd453c3a53ca8e737b989d27725818da95f7a4fc879c9f07fe743c0cef
        - quay.io/strimzi/operator@sha256:587db6f4389f56209f48853beedbfe249f6d590a4cb0000be2c42b57e43c2adb
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:8be098242f971aefa61a4a24d2c6630ecaa7856ece842166c38887a66bce1bda
        version: 0.30.0
      entries:
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.30.x
    - currentCSV: strimzi-cluster-operator.v0.31.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.3",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.3",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:6e5e207c70c25c595d3ce60268c0214c7518e95836c9b1212ef1eb2f008c7a76
          createdAt: "2022-09-20 21:07:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          **This is the last version of Strimzi with support for Kubernetes 1.16, 1.17 and 1.18!**
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.31 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.31 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.31.1
          * Kafka 3.1.2 and 3.2.3 (fixes CVE-2022-34917)
          * Make `sasl.server.max.receive.size` broker option user configurable
          * Update Strimzi Kafka Bridge to 0.22.1
          ### New in 0.31.0
          * Support for Apache Kafka 3.2.1
          * Pluggable Pod Security Profiles with built-in support for _restricted_ Kubernetes Security Profile
          * Support for leader election and running multiple operator replicas (1 active leader replicas and one or more stand-by replicas)
          * Support for IPv6 addresses being used in Strimzi issued certificates
          * `StrimziPodSet` reconciliation metrics
          * Updated Strimzi Kafka Bridge to 0.22.0 and Kafka Exporter to 1.6.0
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:03cc48bc5cf367f898338665b253855bed7d6096fe577adfe344da2f2cddcfe4
        - quay.io/strimzi/kafka@sha256:430b3eb70e47a91d7b5b6f230d5be024c2de853099cc0437e219b443e0ead9f5
        - quay.io/strimzi/kafka@sha256:652924a1dba46aa716caba8381f1e791c09035e31ce62fdcc81f9b69af36cd02
        - quay.io/strimzi/kafka@sha256:9553aae22d35448681cbbf7a831a28149fb159f3df58ccf8c8ec4ca7eb9c1fdf
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:6afbc7ffc98918e3a557b0b3d9b2c3aa80caa47b9a73205fac9e6572c66f4df7
        - quay.io/strimzi/kaniko-executor@sha256:06581fb615f0b13ddfe27fae26ba5836b12c6e28afd55a81cba7685c9ca4bf79
        - quay.io/strimzi/maven-builder@sha256:670ca70900f2229ef140a592b77f2107934601f8b050b79250eab17ff62099b6
        - quay.io/strimzi/kafka@sha256:83acc1e2cc1e64a88bdbb54b9818a6ad3658c3da60e72c4be365f824c5fcf57c
        - quay.io/strimzi/kafka@sha256:b7c059bd72d8b063a96dde788d91d1ad87498bad3e73acba600929d595aeb7d6
        - quay.io/strimzi/operator@sha256:6e5e207c70c25c595d3ce60268c0214c7518e95836c9b1212ef1eb2f008c7a76
        - quay.io/strimzi/jmxtrans@sha256:52dd107062d78c29bb58c905ac654c39df72bbe3c25613023aa33e834930606d
        - quay.io/strimzi/kafka-bridge@sha256:3ddac62a4f8c8a3ebb72d5841d3826f7fd3fbb0e00eb75fb40bced0a576b86a9
        version: 0.31.1
      entries:
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.31.x
    - currentCSV: strimzi-cluster-operator.v0.32.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.3.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.3"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.3.1",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:c5e0e5dca7503a8371b8d366db0f49e3fc68f62ea480262e39b6cc277991c97c
          createdAt: "2022-10-31 17:05:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **From the 0.32.0 release, Strimzi supports only Kubernetes 1.19 and newer! Kubernetes 1.16, 1.17 and 1.18 are not supported anymore.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.32.0/deploying.html#assembly-upgrade-str).
          ### New in 0.32.0
          * Add support for Kafka 3.3.1 and remove support for Kafka 3.1.0, 3.1.1, and 3.1.2
          * Update KafkaConnector CR status so the 'NotReady' condition is added if the connector or any tasks are reporting a 'FAILED' state.
          * Add auto-approval mechanism on KafkaRebalance resource when an optimization proposal is ready
          * The ControlPlaneListener feature gate moves to GA
          * Add client rack-awareness support to Strimzi Bridge pods
          * Add support for OpenTelemetry for distributed tracing
          * ZookeeperRoller considers unready pods
          * Support multiple operations per ACLRule
          * Add new listener type "cluster-ip" which is using per-broker services instead of the pod DNS names
          * Update Strimzi OAuth library to 0.11.0
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:bb97008b7f928ed98939b2008a7baf8909c88e726a59aaf607f2eeba55375cc0
        - quay.io/strimzi/kafka@sha256:4bacf5b54041bd0ab9199c8c5d51e8058758139db4b7abc380cf0400737716ef
        - quay.io/strimzi/kaniko-executor@sha256:dc27d8aeb851245c79fb7276febe98769cc098d678bea096b338caaaf111dd27
        - quay.io/strimzi/operator@sha256:c5e0e5dca7503a8371b8d366db0f49e3fc68f62ea480262e39b6cc277991c97c
        - quay.io/strimzi/jmxtrans@sha256:208928133b2854f60bb34912e07561a3511de895b815960e73d565be2d553918
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:eefdd05485167d490f0011d9e5d2bb6112db1daea25940c79e1f55b3af254548
        - quay.io/strimzi/kafka-bridge@sha256:aad0cee4381cc1c8c6638ab5732b135acd271b5889486ca9a33312cce67e4a02
        - quay.io/strimzi/kafka@sha256:8c9f38b45dd814e617c9c51cc90fd51e23d7dd23e8efe7e9eff013522bd6a5a0
        - quay.io/strimzi/maven-builder@sha256:593e9980b786ca8ad3223151c3e17f16c7652ee0e86d722af4c34b023038ecc2
        - quay.io/strimzi/kafka@sha256:680ae1958dbcb9da8ee4128a67c1163a6ee2744221f7d29f73d8bcc237fd0173
        version: 0.32.0
      entries:
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.32.x
    - currentCSV: strimzi-cluster-operator.v0.33.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.4"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:cf0d41fdb99b20e91063e23eb1d664817c18866c9a2f5c4430eac897e78d5d53
          createdAt: "2023-02-18 21:21:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "Proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **Strimzi 0.33 supports only Kubernetes 1.19 and newer! Kubernetes versions 1.16, 1.17 and 1.18 are not supported anymore since Strimzi 0.32.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.33.2/deploying.html#assembly-upgrade-str).
          ### New in 0.33
          _Note: Strimzi 0.33.2 add support for Kafka 3.4.0 which fixes CVE-2023-25194._
          * Add support for Kafka 3.3.2
          * Automatic restarts of failed Connect or Mirror Maker 2 connectors
          * Redesign of Strimzi User Operator to improve its scalability
          * Move to Java 17
          * Improved FIPS support
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:9eca149cfc436580e3cdd6cee0ca318366b8d0ec53c2cf007e4e2c614b988921
        - quay.io/strimzi/operator@sha256:cf0d41fdb99b20e91063e23eb1d664817c18866c9a2f5c4430eac897e78d5d53
        - quay.io/strimzi/jmxtrans@sha256:5ebdafa7a5e3718ed3274d6254c9e655613c272340094b997b1c97fde2598b4a
        - quay.io/strimzi/kafka@sha256:301dc52ed5891ed4fa33e79ca3c344b1ac0eec7469dd46a5a7ac22064e053fc2
        - quay.io/strimzi/kafka@sha256:40a847f8455ec6ea9ff9fe1fff20b1ed01f848326dc13977d13ac911f0cb40b7
        - quay.io/strimzi/kafka@sha256:fe9d3f8b029ff32d5d725e57384592914957314d63e92fda3abf4028fe4e66f6
        - quay.io/strimzi/maven-builder@sha256:de9e51365e7acc63feae745618804e6286fd730f41c3b31582cbb7319a93b483
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:05e66583757da895fd23c3af9830ae1ac6a84d107107e5b6bbaece57e4d79c9a
        - quay.io/strimzi/kafka@sha256:30945aecb9d63cf8863c672222f130469c89aefa07078c95aaed52c40fd16146
        - quay.io/strimzi/kaniko-executor@sha256:dc27d8aeb851245c79fb7276febe98769cc098d678bea096b338caaaf111dd27
        - quay.io/strimzi/kafka-bridge@sha256:3a380d5f3ea509f90cdf95280d83b42f5de4f86ee3a512e02234e7639f50c9eb
        - quay.io/strimzi/kafka@sha256:116cf543fbadadd0b45007ce24d44a0c79a62280e8faa1fc80df40291fbdf05d
        version: 0.33.2
      entries:
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.33.x
    - currentCSV: strimzi-cluster-operator.v0.34.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.4"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:f4ee3ca482a2dd19785f59634578a0850273444c1173a5699a99cf02f3a018fe
          createdAt: "2023-03-17 13:02:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "Proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **Strimzi 0.34 supports only Kubernetes 1.19 and newer! Kubernetes versions 1.16, 1.17 and 1.18 are not supported anymore since Strimzi 0.32.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.34.0/deploying.html#assembly-upgrade-str).
          ### New in 0.34
          * Add support for Apache Kafka 3.4.0 (fixes CVE-2023-25194) and remove support for Apache Kafka 3.2.x
          * Stable Pod identities for Kafka Connect and MirrorMaker 2 (disabled by default)
          * Use JDK HTTP client in the Kubernetes client instead of the OkHttp client
          * Add truststore configuration for HTTPS connections to Open Policy Agent server
          * Update Strimzi HTTP Bridge to 0.25.0 and strimzi Oauth to 0.12.0
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:1da35fd7b36b113d1343e254fdc6efd97ca8660cc7977d8985aa3a3547d5ebb1
        - quay.io/strimzi/kafka@sha256:37cf8d0fea1d2078511920190a72b49977ff4047b6ecbfed6b394c6f9e1e2ff0
        - quay.io/strimzi/maven-builder@sha256:f781b6b857d437c2de62585462e97b9fae357912c9f6711c1df39f431278878d
        - quay.io/strimzi/kafka@sha256:1ace2cc0db9653ac1b388477fa56c3c1cd97c7b3846eba3c7824dc58ea179476
        - quay.io/strimzi/kaniko-executor@sha256:dc27d8aeb851245c79fb7276febe98769cc098d678bea096b338caaaf111dd27
        - quay.io/strimzi/jmxtrans@sha256:62272e8a03da2144340bd7267f7a824d1ed70f4f3e30dc7aadfba9ee1b9baf76
        - quay.io/strimzi/operator@sha256:f4ee3ca482a2dd19785f59634578a0850273444c1173a5699a99cf02f3a018fe
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:02f53d3395b2b98f92a96b466c83ca15c79a75d82451e2ed8ba921375e727c7f
        - quay.io/strimzi/kafka-bridge@sha256:51babca0f7a328f4db005c6a16daa8ac4a4306c46fe3ca89382919134aa09179
        version: 0.34.0
      entries:
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.34.x
    - currentCSV: strimzi-cluster-operator.v0.35.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.4"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:06a94a3021cf028ccc1a49271f35f79216029e344536e664f196c1725ff2c663
          createdAt: "2023-06-07 16:19:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **Strimzi 0.35 is the last version with support for Kubernetes 1.19 and 1.20. From Strimzi 0.36, only Kubernetes 1.21 and newer will be supported.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.35.1/deploying.html#assembly-upgrade-str).
          ### New in 0.35
          * Move feature gate `UseStrimziPodSets` to GA and remove support for StatefulSets
          * Remove support for JMX Trans
          * Redesigned the Cluster and User Operator configuration to make it more efficient and flexible
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kaniko-executor@sha256:39778b90c2b2afc30261e4ad5135805e1a10a2b60e2e53108fb9f80487f1208a
        - quay.io/strimzi/maven-builder@sha256:88a79eff3b3a386880a630658964b7754caed9e99dd6e645a4c0d23d0fdb47ee
        - quay.io/strimzi/operator@sha256:06a94a3021cf028ccc1a49271f35f79216029e344536e664f196c1725ff2c663
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:8abe0994052e2a328e54c9d30c920dc331e9b816a4606234a3023b9ef65ec4ed
        - quay.io/strimzi/kafka-bridge@sha256:d6be183e492f8f88157ab9fe0af53950df8b6711a8a8c33da465de6064f6f86e
        - quay.io/strimzi/kafka@sha256:0d910e7138cb49e1cd8cd84cef88bce35698b93ddd683a3398f1d485a3162693
        - quay.io/strimzi/kafka@sha256:4de4874a7b722ad813f4dcc58acf509527bca0609999b81e70d81e3b38534d9d
        - quay.io/strimzi/kafka@sha256:54c6b25b31f51ef401c1b6e2a1b27432911e819bf3e502e05186f01be3f798e5
        version: 0.35.1
      entries:
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.35.x
    - currentCSV: strimzi-cluster-operator.v0.36.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:e9e03b31007c0f9b67a6a33e6b644e8c1ba35bd9976804ee3d22a04e4bf511b1
          createdAt: "2023-07-10 21:47:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!! Strimzi 0.36.1 supports only Kubernetes 1.21 and newer! Kubernetes versions 1.19 and 1.20 are not supported anymore since Strimzi 0.36.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.35.1/deploying.html#assembly-upgrade-str).
          ### New in 0.36
          * Add support for Apache Kafka 3.4.1, 3.5.0, and 3.5.1
          * Remove support for 3.3.1 and 3.3.2
          * Add support for _Kafka node pools_
          * Add support for _Unidirectional Topic Operator_
          * Enable SCRAM-SHA authentication in KRaft mode (supported in Apache Kafka 3.5.0 and newer)
          * Add support for insecure flag in Maven artifacts in Kafka Connect Build
          * Improve Kafka rolling update to avoid rolling broker in log recovery
          * Added support for Kafka Exporter topic exclude and consumer group exclude parameters
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:ef3f85e1227e886a131d3ddec3fb431aef6d3daed46115b288246b9ace0e69e2
        - quay.io/strimzi/kafka-bridge@sha256:fefee252895e9f94756ed5c9ea71749e3fa89281df01bc55878a244ca7d17697
        - quay.io/strimzi/kafka@sha256:9f35f40be3d47b0cb1f6628f7ffd9c6a687ab9f564829f341dd66fd0759c064f
        - quay.io/strimzi/kafka@sha256:ea35817ff1ef295c682d70562f209ef658fcd87c61f467a4549d7a2f39e71700
        - quay.io/strimzi/maven-builder@sha256:2a469b40122027b981914db5b5c102be48280e039c3089963422c181174af226
        - quay.io/strimzi/kafka@sha256:67c2b563a65c85c9393608f9af7eaf12ea48dcc0ef5f726d51f27273a3845186
        - quay.io/strimzi/kafka@sha256:a0da6a48b5bcbff355365f07df2d99ef6443d22c5690495f10a6417e761b3799
        - quay.io/strimzi/kaniko-executor@sha256:5ff9fc7d0b7b694875ad0150fc787c582d42da3b4864d807ee8a6524e47b0e4e
        - quay.io/strimzi/operator@sha256:e9e03b31007c0f9b67a6a33e6b644e8c1ba35bd9976804ee3d22a04e4bf511b1
        version: 0.36.1
      entries:
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.36.x
    - currentCSV: strimzi-cluster-operator.v0.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:52f376e64b9b31d74162e26248c278e9bd301d2d8b4240ee5bcf780dfe2f8ef8
          createdAt: "2023-09-03 17:45:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.37.0/deploying.html#assembly-upgrade-str).
          ### New in 0.37
          * The StableConnectIdentites feature gate moves to a beta stage.
          * Support for the ppc64le platform
          * Version fields to the Kafka custom resource status to track installation and upgrade state
          * Infinite auto-restarts of Kafka Connect and Kafka Mirror Maker 2 connectors
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:2997ba1c169eb792a6004d7a41b674560515f3ea6e62ab8b9a1fdb747eab40c1
        - quay.io/strimzi/kafka@sha256:1de6e073e8625a193fcfd11dd1a6717cc17596911c10bcebd792c00b08a7ebaf
        - quay.io/strimzi/kaniko-executor@sha256:5729f1f0511da95e64e358cfabb3980ad9a660af2968118a87d6755f5d652a67
        - quay.io/strimzi/maven-builder@sha256:995be06a50b86c992fcee9f00e44f6a21c3406975e4e35802f10e88b72ffb9df
        - quay.io/strimzi/operator@sha256:52f376e64b9b31d74162e26248c278e9bd301d2d8b4240ee5bcf780dfe2f8ef8
        - quay.io/strimzi/kafka-bridge@sha256:5b821f6f3396002ffa7c5804391b627ff9da3b494b2777dde518c55c2b73cefc
        - quay.io/strimzi/kafka@sha256:38bbadcdb196a373e1698be890caa1dc01134ce91763d8f95c71768a117e1932
        - quay.io/strimzi/kafka@sha256:dfeb1eb7b94107c443b6bc82fcfee7fcf782516c83c6fc64451fb6a7e2de74a6
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:8b9b06ead5e014b920c82034ded615413dca53cf36f804005408726c9bbda66f
        version: 0.37.0
      entries:
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.37.x
    - currentCSV: strimzi-cluster-operator.v0.38.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.6.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.6"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:aee45bbe439335e45a0423e6565bae0d0727d85c7b807812949bfa127d467fe6
          createdAt: "2023-10-14 18:18:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.38.0/deploying.html#assembly-upgrade-str).
          ### New in 0.38
          * Add support for Apache Kafka 3.6.0 and remove support for 3.4.0 and 3.4.1
          * Container signing and SBOMs
          * Stopping Connect and MirrorMaker 2 connectors
          * Manual rolling updates of Kafka Connect and Kafka Mirror Maker 2 pods using annotation
          * Prevent scale-down of brokers that still contain any replicas
          * Run ZooKeeper- and KRaft-based clusters in parallel
          * Unidirectional Topic Operator improvements
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:0cc01438e8596643407b6b8ff05fafcea7ef54fa9410d4ae2492a9dbf41118b1
        - quay.io/strimzi/kafka@sha256:20d451fb32ec82eab3c16891198ace46bb9b9193f1f5511bb60ce249080dd7d4
        - quay.io/strimzi/kafka@sha256:50e24c797455f9cdbb3cdde8e4f26bb8e1f0503469456da5d179017fd3e03ffe
        - quay.io/strimzi/kaniko-executor@sha256:4fe7a3f3f78e93369284a5ab456873c911230926ca071d1d88167e63d8ce376c
        - quay.io/strimzi/maven-builder@sha256:922d91dab9e2b8e14b6db25d8b48d7f4e3521bedd435468cc22039599ac4f888
        - quay.io/strimzi/operator@sha256:aee45bbe439335e45a0423e6565bae0d0727d85c7b807812949bfa127d467fe6
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:51db956f1472ae0498c57b9488448c34cf7e24afab6b9997eb3689b001d73277
        - quay.io/strimzi/kafka-bridge@sha256:13838889cc20a3a382ea64e749cad94f997c0b928840588f2d1befcf19247bea
        version: 0.38.0
      entries:
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.38.x
    - currentCSV: strimzi-cluster-operator.v0.39.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.6.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.6"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.6.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.6.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.6.1",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:50b49f9b5e554cca517fc2794e11319d5aaba1676494b285baa3a74fc79eb501
          createdAt: "2023-12-14 20:28:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.39.0/deploying.html#assembly-upgrade-str).

          **Strimzi 0.39 is the last minor release with support for Kubernetes 1.21 and 1.22.** From Strimzi 0.40 on, only Kubernetes 1.23 and newer will be supported.
          ### New in 0.39
          * Add support for Apache Kafka 3.5.2 and 3.6.1
          * The `StableConnectIdentities` feature gate moves to GA stage and is now permanently enabled without the possibility to disable it.
            All Connect and Mirror Maker 2 operands will now use StrimziPodSets.

          * The `KafkaNodePools` feature gate moves to the beta stage and is enabled by default.
            If needed, `KafkaNodePools` can be disabled in the feature gates configuration in the Cluster Operator.

          * The `UnidirectionalTopicOperator` feature gate moves to the beta stage and is enabled by default.
            If needed, `UnidirectionalTopicOperator` can be disabled in the feature gates configuration in the Cluster Operator.

          * Improved Kafka Connect metrics and dashboard example files
          * Allow specifying and managing KRaft metadata version
          * Add support for KRaft to KRaft upgrades (Apache Kafka upgrades for the KRaft-based clusters)
          * Improved Kafka Mirror Maker 2 dashboard example file
          * Support for rolling updates of KRaft controller nodes
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/maven-builder@sha256:6ce3c16284379d5db9e42a6f3e2b765c981091164a28fdd6bf927b6c5d4ab557
        - quay.io/strimzi/kafka-bridge@sha256:13838889cc20a3a382ea64e749cad94f997c0b928840588f2d1befcf19247bea
        - quay.io/strimzi/kafka@sha256:53b960411e852f5cb182ecc5d395a3562865f83e15e6251f3a9af0eb413feeed
        - quay.io/strimzi/kaniko-executor@sha256:723b7add2473e73c45c81361e1708af4971c321b0391c1298a0557fb8ca4f7f6
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:392f9299c75a3ca4f593eaebdfe515145696f12db9f990bb004cfa58dd6bf0ef
        - quay.io/strimzi/kafka@sha256:49b7530ada1175750ad5a706e545ba3594d85e1e3a90f98b0200a73fa9875057
        - quay.io/strimzi/kafka@sha256:84691b3afb67b312400e01572ff08b64c1e1b1d32a4276e0c21bba10c71c36fe
        - quay.io/strimzi/kafka@sha256:dd1706f36031c96dfcd0da7b3f804168e5f076220caa302973455fdcd76bd03e
        - quay.io/strimzi/operator@sha256:50b49f9b5e554cca517fc2794e11319d5aaba1676494b285baa3a74fc79eb501
        - quay.io/strimzi/kafka@sha256:2badc65532b483bba6c1f6a8b0c9895e993ce24e9ebd3cd953d0d17fbe36d27a
        version: 0.39.0
      entries:
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.39.x
    - currentCSV: strimzi-cluster-operator.v0.40.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:2228d89b53e3524e69d1bcf5c2cd373884ce696d9005389a6c78dad23310e837
          createdAt: "2024-03-09 21:27:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.40.0/deploying.html#assembly-upgrade-str).

          **From Strimzi 0.40 on, we support only Kubernetes 1.23 and newer.** Kubernetes versions 1.21 and 1.22 are no longer supported.
          ### New in 0.40
          * Add support for Apache Kafka 3.7.0. Remove support for Apache Kafka 3.5.0, 3.5.1, and 3.5.2.
          * The `UseKRaft` feature gate moves to beta stage and is enabled by default. If needed, `UseKRaft` can be disabled in the feature gates configuration in the Cluster Operator.
          * Add support for ZooKeeper to KRaft migration by enabling the users to move from using ZooKeeper to store metadata to KRaft.
          * Add support for moving from dedicated controller-only KRaft nodes to mixed KRaft nodes
          * Added support for Kafka Exporter `offset.show-all` parameter
          * Prevent removal of the `broker` process role from KRaft mixed-nodes that have assigned partition-replicas
          * Improve broker scale-down prevention to continue in reconciliation when scale-down cannot be executed
          * Added support for Tiered Storage by enabling the configuration of custom storage plugins through the Kafka custom resource.
          * Update HTTP bridge to the latest 0.28.0 release
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Aapche ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:73deb1af0d93e9fa8955a5a412d0e7138384bdc80e7574e815d21796e446b636
        - quay.io/strimzi/kafka@sha256:2c143eb10b66037ef877311eb767457e4b877d5ff2c47d393c76babec155caff
        - quay.io/strimzi/kafka@sha256:c491a95f9b9b58f406461faf222ef612ad8d2f4d7b53f7f3645b20c99d7d1583
        - quay.io/strimzi/kafka@sha256:e2b9f2835498831bbf30ac2d651de143d57088bcb23943101b066e941db92aca
        - quay.io/strimzi/kaniko-executor@sha256:3fb4ace22589fcf8d3f01b74c37b10b32d87e15d103ea59e0933b61c4e46ff4a
        - quay.io/strimzi/maven-builder@sha256:d02a9b48c77a44eeab6426c9af4adf75405217994bcb01ce0196e616041350d8
        - quay.io/strimzi/operator@sha256:2228d89b53e3524e69d1bcf5c2cd373884ce696d9005389a6c78dad23310e837
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:df4e4dce45f87e684e7e1044a7edb2456160141afb6ba57b9af28088ffbac407
        version: 0.40.0
      entries:
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.40.x
    - currentCSV: strimzi-cluster-operator.v0.41.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:4c687a4fac96ffc22433ca6d00fb1bd31722767b44c9d87c465f95b57fb70089
          createdAt: "2024-05-09 22:23:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.41.0/deploying.html#assembly-upgrade-str).

          **Strimzi 0.41 supports only Kubernetes 1.23 and newer.** Kubernetes versions 1.21 and 1.22 are no longer supported.
          ### New in 0.41
          * Support for Apache Kafka 3.6.2
          * Metrics to monitor CA expiration
          * Support for JBOD storage in KRaft mode. (Note: JBOD support in KRaft mode is considered early access in Apache Kafka 3.7.x)
          * Support for changing topic replication factor by changing the `KafkaTopic` resources.
          * The `KafkaNodePools` feature gate moves to GA stage and is permanently enabled without the possibility to disable it. To use the Kafka Node Pool resources, you still need to use the `strimzi.io/node-pools: enabled` annotation on the `Kafka` custom resources.
          * Support for configuring the `externalIPs` field in node port type services.
          * The `UnidirectionalTopicOperator` feature gate moves to GA stage and is permanently enabled without the possibility to disable it. If the topics whose names start with `strimzi-store-topic` and `strimzi-topic-operator` still exist, you can delete them.
          * Improve validation of `KafkaMirrorMaker2` resource to make sure the Connect cluster is set to the target cluster
          * Continue reconciliation after failed manual rolling update using the `strimzi.io/manual-rolling-update` annotation (when the `ContinueReconciliationOnManualRollingUpdateFailure` feature gate is enabled)
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Aapche ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:fecad1a330421341e6946252f95735ed177a690eab6250be097413ea29ce9473
        - quay.io/strimzi/kaniko-executor@sha256:9404037bd5431b012c8c633ec3345907667453c5532e5bfaaedc78286de22c62
        - quay.io/strimzi/kafka-bridge@sha256:c833f930ead2d1e9054912a20689ee979d335f5e5ca8769e3c6b8a5514a0df96
        - quay.io/strimzi/kafka@sha256:41811bb106d6182978a889eaedffeadffaa5ab1599c4cd8e4f5015b131c7ac30
        - quay.io/strimzi/kafka@sha256:6243d98890c665ef65b5f5fa2ffd046412281ffef31bc7a07cac37bd77b2579d
        - quay.io/strimzi/kafka@sha256:c3a346235ce4dea42986648ca07f2482d8fc0bf654c1d441b1301a23999304db
        - quay.io/strimzi/operator@sha256:4c687a4fac96ffc22433ca6d00fb1bd31722767b44c9d87c465f95b57fb70089
        - quay.io/strimzi/kafka@sha256:bf49499980bbe5d4dd399de0dd396089b0fd9dd29bc46e14d39b20f1e826aec1
        - quay.io/strimzi/maven-builder@sha256:17f09b07fc41a059e6a048cb766046d43a072cfd3a8266c97388a37543dadee8
        version: 0.41.0
      entries:
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.41.x
    - currentCSV: strimzi-cluster-operator.v0.42.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.1",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:ca5c1b70e1196deec4bf519921bfa55a967aa1ea15bd4c182bc56bea08d2e114
          createdAt: "2024-07-03 12:34:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.42.0/deploying.html#assembly-upgrade-str).

          **From version 0.40.0, Strimzi supports only Kubernetes 1.23 and newer.** Kubernetes versions 1.21 and 1.22 are no longer supported.
          ### New in 0.42
          * Support for Apache Kafka 3.7.1
          * The UseKRaft feature gate moves to GA stage and is permanently enabled without the possibility of disabling it. To use KRaft (ZooKeeper-less Apache Kafka), you still need to use the strimzi.io/kraft: enabled annotation on the Kafka custom resources or migrate from an existing ZooKeeper-based cluster.
          * Update the base image used by Strimzi containers from UBI8 to UBI9
          * Add support for filename patterns when configuring trusted certificates
          * Enhance KafkaBridge resource with consumer inactivity timeout and HTTP consumer/producer enablement.
          * Add support for setting publishNotReadyAddresses on services for listener types other than internal.
          * Added support for configuring the quotas plugin with type strimzi or kafka in the Kafka custom resource. The Strimzi Quotas plugin version was updated to 0.3.1.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Aapche ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:fdddffb3de59ba48c05964bb0e760593088d24d1ee35b090112fe6cc6b553cd8
        - quay.io/strimzi/kafka@sha256:841a46e9c10481df3ef702412caf362b55ae07c30a3a5927073356cd36dc049f
        - quay.io/strimzi/kafka@sha256:c56c5abf94897f20f976603cba0678a33cdfbbcd6f9030a193f7684cb9894a6c
        - quay.io/strimzi/kafka@sha256:6527c426f753521c07f3a3df2ee432273a41b109594096b4c6cae2e8e609d669
        - quay.io/strimzi/kafka@sha256:bc49c10b3e839e161e515c3a1e411d1f8df9de5e2c8d71aa7b63ccdbbae9e8d2
        - quay.io/strimzi/kaniko-executor@sha256:11821b0078a270612f1bcc37f5dc716ab273c974648c40f95fa4804352e647a7
        - quay.io/strimzi/maven-builder@sha256:342e8d0086c53cf7334127798e5bd3764b28f5e4909ba67d65f6d937dc3dba05
        - quay.io/strimzi/kafka@sha256:6c519531cdd5f40f326b295d8827344140efe2607a1826f7f1cab8c3427f43f7
        - quay.io/strimzi/operator@sha256:ca5c1b70e1196deec4bf519921bfa55a967aa1ea15bd4c182bc56bea08d2e114
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:9dcf24fecf3ee0d999601c276ac15e8634c275590f2c42b8a6bcb83984bf1445
        version: 0.42.0
      entries:
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.42.x
    - currentCSV: strimzi-cluster-operator.v0.43.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.8.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:d3732245f34afaa6b571f1f912e1cd017891b22003d6367ae8ca059b2a5cb13c
          createdAt: "2024-08-22 15:19:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.43.0/deploying.html#assembly-upgrade-str).

          **Strimzi 0.43 is the last version with support for Kubernetes 1.23 and 1.24.** From Strimzi 0.44, only Kubernetes versions 1.25 and newer will be supported.
          ### New in 0.43
          * Support for Apache Kafka 3.8.0
          * Removed support for Apache Kafka 3.6.0, 3.6.1, and 3.6.2
          * Specifying additional volumes and volume mounts in Strimzi custom resources
          * Support for custom Cruise Control API users
          * Unregistration of KRaft nodes after scale-down
          * Kafka Exporter updated to 1.8.0 (and the Grafana dashboard updated to work with it)
          * Service account based authentication
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/maven-builder@sha256:6414f8f3985f221b0eda53867c00494140108d17579c4dcbbc93934bb00e5d49
        - quay.io/strimzi/operator@sha256:d3732245f34afaa6b571f1f912e1cd017891b22003d6367ae8ca059b2a5cb13c
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:a9950264bfefc536b4e0a0adc2348f92aa41da55dd50a2324ddad0253291b67c
        - quay.io/strimzi/kafka-bridge@sha256:80f329ecd3ba96fac12e75be874dce0debc8395337737581de34238ce11c8fb1
        - quay.io/strimzi/kafka@sha256:ad06ead5125bce87498b1582a76e78143a6d21408ac4b12bb7e6007aa4cabd84
        - quay.io/strimzi/kafka@sha256:b2f4e8895e9ed66228512ce14aec685101fa75dc329128d47cb1c15e3aef3c9c
        - quay.io/strimzi/kafka@sha256:d27cf5bf3624e18ba705246b14f92d12b8a15eb8551b13abf027cf71b549baf0
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        version: 0.43.0
      entries:
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.43.x
    - currentCSV: strimzi-cluster-operator.v0.44.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.8.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:b07b81f7e282dea2e4e29a7c93cfdd911d4715a5c32fe4c4e3d7c71cba3091e8
          createdAt: "2024-08-22 15:19:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.44.0/deploying.html#assembly-upgrade-str).

          **From version 0.44, Strimzi supports only Kuberneets 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.**

          **ZooKeeper support will be soon removed from Apache Kafka and Strimzi.** Currently, the last Strimzi version with ZooKeeper support is expected to be Strimzi 0.45. Please plan your migration to KRaft (ZooKeeper-less Apache Kafka) accordingly. Follow the [documentation](https://strimzi.io/docs/operators/latest/full/deploying.html#assembly-kraft-mode-str) for more details.

          **Kafka Mirror Maker 1 support will be soon removed from Apache Kafka and Strimzi.** Currently, the last Strimzi version with Mirror Maker 1 support is expected to be Strimzi 0.45. Please plan your migration to Mirror Maker 2 or another mirroring tool.

          ### New in 0.44
          * Managing offsets in Connect and Mirror Maker 2 connectors through custom resources
          * Templating `advertisedHost` and `host` fields in listener configuration
          * Configuring environment variables in operands based on Secrets and ConfigMaps
          * Disabling Pod disruption Budget management
          * Auto-rebalancing at scale-up/scale-down
          * `ContinueReconciliationOnManualRollingUpdateFailure` feature gate moves to the beta stage and is enabled by default
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:4d59e60cc75de82bd3f3a063237cef8a5598d315f6d53e803d37589a94929b0e
        - quay.io/strimzi/kafka-bridge@sha256:cc95ce9f496057f3b18d5e8297b40a410cc66f9fd4a2227615971458a26bac25
        - quay.io/strimzi/kafka@sha256:238bb080825b7ecebaa819be09788bc3d056ae8162ebcd41444076dc22f85740
        - quay.io/strimzi/kafka@sha256:98d332b7fa5c9e48f60b516e00ed5812bd9268e014fd2337284e7cc3e664f1eb
        - quay.io/strimzi/kafka@sha256:9a4224635e09ece2c1d3ffe9d715813cf63037461c9f06c1b5f53554aed5ecdc
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        - quay.io/strimzi/maven-builder@sha256:7b55f971a3b62923a9a61a61c82f542e07deeb6ffdbaede68244ba358a0853f2
        - quay.io/strimzi/operator@sha256:b07b81f7e282dea2e4e29a7c93cfdd911d4715a5c32fe4c4e3d7c71cba3091e8
        version: 0.44.0
      entries:
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.44.x
    - currentCSV: strimzi-cluster-operator.v0.45.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.9.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.9"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.9.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.9.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.9.1",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:58e8722216b0b0e8b1dd79109725238fa4016a16cc6a9fca0e327bccb1506810
          createdAt: "2025-06-27 01:38:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.45.1/deploying.html#assembly-upgrade-str).

          **From version 0.45, Strimzi supports only Kuberneets 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.**

          **ZooKeeper and Kafka Mirror Maker 1 support will be removed from Apache Kafka and Strimzi.** Strimzi 0.45 is the last minor Strimzi version with support for ZooKeeper-based Apache Kafka clusters and MirrorMaker 1 deployments. Please make sure to [migrate to KRaft](https://strimzi.io/docs/operators/latest/full/deploying.html#assembly-kraft-mode-str) and MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.

          **Strimzi EnvVar Configuration Provider and Strimzi MirrorMaker 2 Extensions will be removed from Strimzi.** Strimzi 0.45 is the last Strimzi version to include the Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0). Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.
          ### New in 0.45.1
          * Add support for Kafka 3.9.1
          * Update HTTP bridge to 0.31.2
          * Update Strimzi Kafka OAuth library to 0.15.1
          * Fixed bug which may lead to metadata loss within the cluster when restarting a KRaft migration after a previous rollback due to missing `/migration` znode deletion.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        - quay.io/strimzi/operator@sha256:58e8722216b0b0e8b1dd79109725238fa4016a16cc6a9fca0e327bccb1506810
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:40d17d4d0632c272779da152f710fb7c2de50acc3791eb0b9fe445a13c0cb102
        - quay.io/strimzi/kafka-bridge@sha256:c462441a966f0732855e684b4840563bfad45391345c9511fa49e1630ba9c3e3
        - quay.io/strimzi/kafka@sha256:ba52ed046b1dccdbd96f4e68057ce014d862a7c9c1fc670760c023b9aa09f23f
        - quay.io/strimzi/kafka@sha256:e98fbe49cadbc5d3afbd8f17abea218f216c95d52f4fa1fe514a7a988624da24
        - quay.io/strimzi/maven-builder@sha256:770e410f1e7e0e92c31bae6c19831ba36d59dd11b44e90c159aef16a965aa998
        - quay.io/strimzi/kafka@sha256:173cb5793756f75739c51a83bbe06d7f0094fd003a2982160a5cc6e216cd6d28
        - quay.io/strimzi/kafka@sha256:6a05924839a2c7da0431408e6d6223a055e75d88b3f057ac5caa7f9097227f56
        version: 0.45.1
      entries:
      - name: strimzi-cluster-operator.v0.45.1
        version: 0.45.1
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.45.x
    - currentCSV: strimzi-cluster-operator.v0.46.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.0.0",
                      "metadataVersion": "4.0-IV3",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.0.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:6a22e4968e9d409405423d12c04a0e3fecaea2ee2794bd27de7cf21f59453265
          createdAt: "2025-06-26 11:58:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.46.0/deploying.html#assembly-upgrade-str).

          **From version 0.46, Strimzi supports only Kuberneets 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.**
          **Support for ZooKeeper-based clusters and for migration from ZooKeeper-based clusters to KRaft has been removed. Please make sure all your clusters are using KRaft before upgrading to Strimzi 0.46.0 or newer!
          **Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0) plugins were removed from Strimzi container images. Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.
          **Support for MirrorMaker 1 has been removed. Please make sure to migrate to MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.
          ### New in 0.46.1
          * Update CSV file for OLM installation to add missing permission for broker Pods to "get" nodes Kubernetes resource.
          * Allow the injection of annotations on the deployment object in Helm charts.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/operator@sha256:6a22e4968e9d409405423d12c04a0e3fecaea2ee2794bd27de7cf21f59453265
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:8e321dc1bf74ba331b62d21bff4d8993956ab935cf5be32f01e7f7aa6897bf22
        - quay.io/strimzi/kafka-bridge@sha256:3e1815aed3f74b8573cebfced66b2c78ca0cf7c746c26db2002380cd39d09ae6
        - quay.io/strimzi/kafka@sha256:82273d873ce21a73f8f3118bf61627cb15734b43ea7ca92d43b290340b44e485
        - quay.io/strimzi/kafka@sha256:f3837f8cb2a60e906e84486128c41c398424f4085df2348e9e0486bfc12089fd
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        - quay.io/strimzi/maven-builder@sha256:b532234c234fc30fecec992ad1a6154c5ef08ebf9a20ec8bc62e0c88d791ff36
        version: 0.46.1
      entries:
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.46.x
    - currentCSV: strimzi-cluster-operator.v0.47.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.0.0",
                      "metadataVersion": "4.0-IV3",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.0.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:589c4d63641d9a944462dd682f6e5febe8b38ff55b9253949b061aca16feb154
          createdAt: "2025-07-12 17:21:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * **Support for ZooKeeper-based clusters and for migration from ZooKeeper-based clusters to KRaft has been removed.**
            Please make sure all your clusters are using KRaft before upgrading to Strimzi 0.46.0 or newer!

          * **Strimzi 0.47 is the last Strimzi version with support for Kubernetes 1.25 and 1.26.**
            From Strimzi 0.48.0 on, we will support only Kubernetes 1.27 and newer.

          * **Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0) plugins were removed from Strimzi container images.**
            Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.

          * **Support for MirrorMaker 1 has been removed.**
            Please make sure to migrate to MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.

          ### New in 0.47.0
          * Support for Kafka 3.9.1
          * Progress tracking for Cruise Control rebalances
          * Support for Kubernetes Image Volumes to mount custom plugins
          * Support for [JsonTemplateLayout](https://logging.apache.org/log4j/2.x/manual/json-template-layout.html) in Operators, Cruise Control, and Kafka 4.0.0
          * Support for Strimzi Metrics Reporter for the Kafka brokers / controllers
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:428c5587f547dabfc995a73745569d113380c7e6b8bf0b2504c6a9a00d6c4608
        - quay.io/strimzi/kafka@sha256:551882f47a6d2dc8300bcfca251fffffc3379acb2724a7efe16f17c0c4f529fb
        - quay.io/strimzi/kafka@sha256:8a793cdf5084cdb72c6663419530985158b16330a518720e9e9d1d96babbaf7e
        - quay.io/strimzi/kafka@sha256:978e2ed5f0d315e8bf0ab0503ee839acbd9da01ca427e6581b59ac25d36bc9c9
        - quay.io/strimzi/kaniko-executor@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/maven-builder@sha256:c67a3ad3d92420ac8b7f8435eeec53ebffaea4e894e65414a7c47c20e3faba27
        - quay.io/strimzi/operator@sha256:589c4d63641d9a944462dd682f6e5febe8b38ff55b9253949b061aca16feb154
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:16fbdaaf303ab40202d49438737f3307926594a5259081eeeb39595b7ea41f8e
        version: 0.47.0
      entries:
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.47.x
    - currentCSV: strimzi-cluster-operator.v0.48.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.1.0",
                      "metadataVersion": "4.1-IV1",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.1.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:73dc9555c4a73094b497ffb14d816de5ff40144ffc470efd75ccf128afa22778
          createdAt: "2025-09-25 10:32:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * **Support for ZooKeeper-based clusters and for migration from ZooKeeper-based clusters to KRaft has been removed.**
            Please make sure all your clusters are using KRaft before upgrading to Strimzi 0.46.0 or newer!

          * **Strimzi 0.48.0 supports only Kubernetes 1.27 and newer.**
            Kubernetes 1.25 and 1.26 are not supported anymore

          * **Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0) plugins were removed from Strimzi container images.**
            Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.

          * **Support for MirrorMaker 1 has been removed.**
            Please make sure to migrate to MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.

          ### New in 0.48.0
          * Support for Kafka 4.1.0
          * Add monitoring of custom resources using kubernetes-state-metrics (KSM)
          * Support for type: custom client authentication
          * Added support for Strimzi Metrics Reporter to Kafka Connect, Mirror Maker 2 and Kafka Bridge.
          * Added support for KIP-745 in Kafka Connector and Mirror Maker 2, allowing the usage of includeTasks and onlyFailed arguments in Kafka connectors restart.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kaniko-executor@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/maven-builder@sha256:64380efcb8da87fdc0e0de238a20456be9abb830174c2f2331882b7a84657e57
        - quay.io/strimzi/operator@sha256:73dc9555c4a73094b497ffb14d816de5ff40144ffc470efd75ccf128afa22778
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:a4a74cd4bb69717cc58d8996231fd49d8a18be3069a88489ad2409bde4b2a17e
        - quay.io/strimzi/kafka-bridge@sha256:53034f64f0b672f10b5bacea1c7a25132f118df7fd5c9032c4dbf702ed93796a
        - quay.io/strimzi/kafka@sha256:34450afc1a3399a9026fc3c6ec90e9f6adfec9faf6520545b4d84e90cda34964
        - quay.io/strimzi/kafka@sha256:48db05ad2e9fa39eb388089e7e25654bcbf4da1ddc3a5635d675056c28bbcb96
        version: 0.48.0
      entries:
      - name: strimzi-cluster-operator.v0.48.0
        version: 0.48.0
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.48.x
    - currentCSV: strimzi-cluster-operator.v0.49.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.1.1",
                      "metadataVersion": "4.1-IV1",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.1.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "groupId":"my-connect-group",
                  "configStorageTopic":"my-connect-configs",
                  "statusStorageTopic":"my-connect-status",
                  "offsetStorageTopic":"my-connect-offsets",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.1.1",
                  "replicas": 1,
                  "target": {
                    "alias": "cluster-b",
                    "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                    "groupId":"my-mm2-group",
                    "configStorageTopic":"my-mm2-configs",
                    "statusStorageTopic":"my-mm2-status",
                    "offsetStorageTopic":"my-mm2-offsets",
                    "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                    }
                  },
                  "mirrors": [
                    {
                      "source": {
                        "alias": "cluster-a",
                        "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                      },
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
          createdAt: "2025-11-18 15:11:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * ⚠️ **SECURITY: Strimzi 0.49.1 addresses CVE-2025-66623.**
            **If you use Strimzi 0.47.0 or newer, we recommend upgrading to 0.49.1.**

          * **Strimzi 0.49 introduces new API version `v1` to all Strimzi custom resources.**
            The old API versions (`v1alpha1`, `v1beta1`, and `v1beta2`) will continue to be supported until Strimzi 1.0.0 / 0.52.0.
            For more details about the migration to the v1 API and CRD upgrades, see the [documentation](https://strimzi.io/docs/operators/in-development/deploying.html#assembly-api-conversion-str).

          * **Before upgrading to Strimzi 0.49 or newer**, make sure that you update your KafkaUser resources to [use the `.spec.authorization.acls[].operations` field instead of the deprecated `.spec.authorization.acls[].operation`](https://strimzi.io/docs/operators/in-development/deploying.html#con-api-conversion-v1-str).
          * **When rack-awareness is enabled in the `Kafka` custom resource (`.spec.kafka.rack`), Strimzi will not automatically add the best-effort-affinity rules for spreading the Kafka Pods between the zones.**
            Please make sure to set your own `topologySpreadConstraint` or `affinity` rules instead.

          * **From Strimzi 0.48.0, we support only Kubernetes 1.27 and newer.**
            Kubernetes 1.25 and 1.26 are not supported anymore

          ### New in 0.49
          * Support for Kafka 4.0.1 and 4.1.1
          * New v1 API for Strimzi CRDs
          * Refactoring of the KafkaConnect and KafkaMirrorMaker2 custom resources and their structure
          * Changes to how the template fields in Kafka and KafkaNodePool custom resources are handled
          * Removed automatic best-effort affinity rules when rack-awareness is enabled
          * BlockOwnerDeletion is set to true in owner references
          * Support of Buildah for building custom Kafka Connect container images
          * And many more ...
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:928c76a840e7de6f1d9350988238bec7035ed981118e64cfedde4e32d5cb5baf
        - quay.io/strimzi/kaniko-executor@sha256:ba89470b45a49e5e09aaab91a5c3c03ecb14f9013d598bc14b3d756eb9a145b4
        - quay.io/strimzi/buildah@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/kafka-bridge@sha256:53034f64f0b672f10b5bacea1c7a25132f118df7fd5c9032c4dbf702ed93796a
        - quay.io/strimzi/kafka@sha256:8f775ee53622bf68b791c405e40299baa3d845b98e282d1a9269f9466018e990
        - quay.io/strimzi/kafka@sha256:73799dcf5bc7d1bb19f500f345d8892a1f91cf0213e01d9b59d3a1a53cc80aca
        - quay.io/strimzi/kafka@sha256:bfbee54f85beb3731cf41483befa39d8c5ebe5db002df6265c6ea95b6a156749
        - quay.io/strimzi/kafka@sha256:d495d3b6c98d1ea22ed3bdf0d6d06d6cda1c5b35087c817e8cf807892b178520
        - quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
        - quay.io/strimzi/maven-builder@sha256:b8831c2aad621b80dce38484fae353cc5226bfc4dffb0f4c9d8b8d86e0fb3933
        version: 0.49.1
      entries:
      - name: strimzi-cluster-operator.v0.49.1
        version: 0.49.1
      - name: strimzi-cluster-operator.v0.49.0
        version: 0.49.0
      - name: strimzi-cluster-operator.v0.48.0
        version: 0.48.0
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.49.x
    defaultChannel: stable
    packageName: strimzi-kafka-operator
    provider:
      name: Strimzi
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: openshift-builds-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-builds-operator.v1.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "OpenShiftBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "sharedResource": {
                    "state": "Enabled"
                  },
                  "shipwright": {
                    "build": {
                      "state": "Enabled"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.shipwright.io/v1alpha1",
                "kind": "ShipwrightBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "targetNamespace": "openshift-builds"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/openshift-builds/openshift-builds-operator-rhel9
          createdAt: "2025-12-30T13:44:07Z"
          description: Builds for Red Hat OpenShift is a framework for building container
            images on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-builds
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["openshiftbuilds.operator.openshift.io","shipwrightbuilds.operator.shipwright.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/shipwright-io/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OpenShiftBuild describes the desired state of Builds for
              OpenShift, and the status of all deployed components.
            displayName: Open Shift Build
            kind: OpenShiftBuild
            name: openshiftbuilds.operator.openshift.io
            version: v1alpha1
          - description: ShipwrightBuild represents the deployment of Shipwright's
              build controller on a Kubernetes cluster.
            displayName: Shipwright Build
            kind: ShipwrightBuild
            name: shipwrightbuilds.operator.shipwright.io
            version: v1alpha1
        description: "Builds for Red Hat OpenShift is an extensible build framework
          based on the Shipwright project, \nwhich you can use to build container
          images on an OpenShift Container Platform cluster. \nYou can build container
          images from source code and Dockerfile by using image build tools, \nsuch
          as Source-to-Image (S2I), Buildah, and Buildpacks. You can create and apply
          build resources, view logs of build runs, \nand manage builds in your OpenShift
          Container Platform namespaces.\n\n## Prerequisites\n\n* OpenShift Pipelines
          operator must be installed before installing this operator\n\nRead more:
          [https://shipwright.io](https://shipwright.io)\n\n## Features\n\n* Standard
          Kubernetes-native API for building container images from source code and
          Dockerfile\n\n* Support for Source-to-Image (S2I) and Buildah build strategies\n\n*
          Extensibility with your own custom build strategies\n\n* Execution of builds
          from source code in a local directory\n\n* Shipwright CLI for creating and
          viewing logs, and managing builds on the cluster\n\n* Integrated user experience
          with the Developer perspective of the OpenShift Container Platform web console\n"
        displayName: Builds for Red Hat OpenShift Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - build
        - shipwright
        - tekton
        - cicd
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/builds_for_red_hat_openshift/1.4
        - name: Builds for Openshift
          url: https://github.com/redhat-openshift-builds/operator
        maintainers:
        - email: openshift-builds@redhat.com
          name: Red Hat OpenShift Builds Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift-builds/openshift-builds-git-cloner-rhel9@sha256:05c3e7cb8437bbfdbce0caa23eaf19a7fd88b7485cfac710ec05606776d4c426
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-operator-bundle@sha256:2111825788f8e8f63b780c20da94e9b7aa49b505f81e466ad3cd3dc5cec1f775
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-rhel9@sha256:ddedf46115f3dea9e7ef24ebf414e4f16d9fd69b39290d7e66dbb4482208d862
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:ce7050192d9850ed4c35cb3295ccdeec1aa593e27e3a3da6d6aca97cde782abe
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/openshift-builds/openshift-builds-controller-rhel9@sha256:332238b8796ce5441d7ab7e0c99c016c5bd49923549b46b456222c3a763fda69
        - registry.redhat.io/openshift-builds/openshift-builds-image-bundler-rhel9@sha256:58de712d39ab518e2ea41b165b2067bf057335fec58e4becc7c881d04f589b9f
        - registry.redhat.io/openshift-builds/openshift-builds-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        version: 1.6.2
      entries:
      - name: openshift-builds-operator.v1.6.2
        version: 1.6.2
      - name: openshift-builds-operator.v1.6.1
        version: 1.6.1
      - name: openshift-builds-operator.v1.6.0
        version: 1.6.0
      name: builds-1.6
    - currentCSV: openshift-builds-operator.v1.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "OpenShiftBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "sharedResource": {
                    "state": "Enabled"
                  },
                  "shipwright": {
                    "build": {
                      "state": "Enabled"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.shipwright.io/v1alpha1",
                "kind": "ShipwrightBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "targetNamespace": "openshift-builds"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/openshift-builds/openshift-builds-operator-rhel9
          createdAt: "2025-12-30T13:44:07Z"
          description: Builds for Red Hat OpenShift is a framework for building container
            images on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-builds
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["openshiftbuilds.operator.openshift.io","shipwrightbuilds.operator.shipwright.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/shipwright-io/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OpenShiftBuild describes the desired state of Builds for
              OpenShift, and the status of all deployed components.
            displayName: Open Shift Build
            kind: OpenShiftBuild
            name: openshiftbuilds.operator.openshift.io
            version: v1alpha1
          - description: ShipwrightBuild represents the deployment of Shipwright's
              build controller on a Kubernetes cluster.
            displayName: Shipwright Build
            kind: ShipwrightBuild
            name: shipwrightbuilds.operator.shipwright.io
            version: v1alpha1
        description: "Builds for Red Hat OpenShift is an extensible build framework
          based on the Shipwright project, \nwhich you can use to build container
          images on an OpenShift Container Platform cluster. \nYou can build container
          images from source code and Dockerfile by using image build tools, \nsuch
          as Source-to-Image (S2I), Buildah, and Buildpacks. You can create and apply
          build resources, view logs of build runs, \nand manage builds in your OpenShift
          Container Platform namespaces.\n\n## Prerequisites\n\n* OpenShift Pipelines
          operator must be installed before installing this operator\n\nRead more:
          [https://shipwright.io](https://shipwright.io)\n\n## Features\n\n* Standard
          Kubernetes-native API for building container images from source code and
          Dockerfile\n\n* Support for Source-to-Image (S2I) and Buildah build strategies\n\n*
          Extensibility with your own custom build strategies\n\n* Execution of builds
          from source code in a local directory\n\n* Shipwright CLI for creating and
          viewing logs, and managing builds on the cluster\n\n* Integrated user experience
          with the Developer perspective of the OpenShift Container Platform web console\n"
        displayName: Builds for Red Hat OpenShift Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - build
        - shipwright
        - tekton
        - cicd
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/builds_for_red_hat_openshift/1.4
        - name: Builds for Openshift
          url: https://github.com/redhat-openshift-builds/operator
        maintainers:
        - email: openshift-builds@redhat.com
          name: Red Hat OpenShift Builds Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/openshift-builds/openshift-builds-controller-rhel9@sha256:332238b8796ce5441d7ab7e0c99c016c5bd49923549b46b456222c3a763fda69
        - registry.redhat.io/openshift-builds/openshift-builds-operator-bundle@sha256:2111825788f8e8f63b780c20da94e9b7aa49b505f81e466ad3cd3dc5cec1f775
        - registry.redhat.io/openshift-builds/openshift-builds-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:ce7050192d9850ed4c35cb3295ccdeec1aa593e27e3a3da6d6aca97cde782abe
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - registry.redhat.io/openshift-builds/openshift-builds-git-cloner-rhel9@sha256:05c3e7cb8437bbfdbce0caa23eaf19a7fd88b7485cfac710ec05606776d4c426
        - registry.redhat.io/openshift-builds/openshift-builds-image-bundler-rhel9@sha256:58de712d39ab518e2ea41b165b2067bf057335fec58e4becc7c881d04f589b9f
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-rhel9@sha256:ddedf46115f3dea9e7ef24ebf414e4f16d9fd69b39290d7e66dbb4482208d862
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        version: 1.6.2
      entries:
      - name: openshift-builds-operator.v1.6.2
        version: 1.6.2
      - name: openshift-builds-operator.v1.6.1
        version: 1.6.1
      - name: openshift-builds-operator.v1.6.0
        version: 1.6.0
      name: latest
    defaultChannel: latest
    packageName: openshift-builds-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Windup
      provider-url: ""
    name: windup-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: windup-operator.v0.0.25
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
             {
               "apiVersion": "windup.jboss.org/v1",
               "kind": "Windup",
               "metadata": {
                 "name": "windup",
                 "labels": {
                   "application": "windup"
                 }
               },
               "spec": {}
             }
            ]
          capabilities: Basic Install
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/windupeng/windup-operator-native:0.0.25
          createdAt: 01/22/24
          description: Windup is an analysis tool that supports the modernization
            and migration of Java applications.
          imagePullPolicy: Always
          operatorframework.io/suggested-namespace: windup
          repository: https://github.com/windup/windup-operator/
          support: https://issues.redhat.com/projects/WINDUP
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: "Create a Windup Web Console application.  \n\nTo access
              the Windup Web Console application from the \"Developer\" perspective,
              please go to Topology and click on the \"Open URL\" icon on the web-console
              pod.  \n\nAlternatively from the \"Administrator\" perspective, please
              go to Networking->Routes and click on the Location hyperlink.  \n\nKnown
              issue  \nIf you want to customize the Windup Web Console instance's
              parameters and you can not see any in the `Form view`, please switch
              to the `YAML view` and change them as needed.\n"
            displayName: Windup
            kind: Windup
            name: windups.windup.jboss.org
            version: v1
        description: |
          Windup is a web console application that supports large-scale Java application modernization and migration projects across a broad range of transformations and use cases.

          It analyzes application code, supports effort estimation, accelerates code migration, and enables users to move applications to containers.

          For more information please refer to the [https://windup.github.io/](https://windup.github.io/) page.
        displayName: Windup Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - modernization
        - windup
        links:
        - name: Website
          url: https://windup.github.io
        - name: GitHub
          url: https://github.com/windup/windup-operator
        maintainers:
        - email: migrate@redhat.com
          name: Windup
        maturity: alpha
        provider:
          name: Windup
        relatedImages:
        - quay.io/community-operator-pipeline-prod/windup-operator@sha256:4e2bafba54eb01b0ae77555d2ff3da2c34286c7c173756dd20a90de28be36535
        - quay.io/windupeng/windup-operator-native:0.0.25
        version: 0.0.25
      entries:
      - name: windup-operator.v0.0.25
        version: 0.0.25
      - name: windup-operator.v0.0.24
        version: 0.0.24
      - name: windup-operator.v0.0.23
        version: 0.0.23
      - name: windup-operator.v0.0.22
        version: 0.0.22
      - name: windup-operator.v0.0.21
        version: 0.0.21
      - name: windup-operator.v0.0.20
        version: 0.0.20
      - name: windup-operator.v0.0.19
        version: 0.0.19
      - name: windup-operator.v0.0.18
        version: 0.0.18
      - name: windup-operator.v0.0.17
        version: 0.0.17
      - name: windup-operator.v0.0.16
        version: 0.0.16
      - name: windup-operator.v0.0.15
        version: 0.0.15
      - name: windup-operator.v0.0.14
        version: 0.0.14
      - name: windup-operator.v0.0.13
        version: 0.0.13
      - name: windup-operator.v0.0.12
        version: 0.0.12
      - name: windup-operator.v0.0.11
        version: 0.0.11
      name: alpha
    defaultChannel: alpha
    packageName: windup-operator
    provider:
      name: Windup
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: aws-efs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-efs-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"aws-efs.managed.openshift.io/v1alpha1","kind":"SharedVolume","metadata":{"name":"sv1"},"spec":{"accessPointID":
            "fsap-0123456789abcdef", "fileSystemID": "fs-0123cdef"}}]'
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/app-sre/aws-efs-operator:9c87267
          createdAt: "2021-12-20T19:51:50Z"
          description: Manage read-write-many access to AWS EFS volumes in an OpenShift
            cluster.
          repository: https://github.com/openshift/aws-efs-operator
          support: https://github.com/openshift/aws-efs-operator/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Shared Volume
            displayName: SharedVolume
            kind: SharedVolume
            name: sharedvolumes.aws-efs.managed.openshift.io
            version: v1alpha1
        description: |-
          ## About the managed application
          AWS provides Elastic File System, an NFS-based shared storage solution. A couple of mechanisms exist to enable mounting such a file system in containers. Curating these options and making them work in a cluster is nontrivial.
          ## About this Operator
          The aws-efs-operator minimizes the barrier to entry for container use of EFS by:
          - Installing the [AWS EFS CSI Driver](https://github.com/kubernetes-sigs/aws-efs-csi-driver) and supporting infrastructure.
          - Reducing the identification of a shared storage resource to a simple Custom Resource Definition with only two fields.
          - Creating the necessary PersistentVolume and PersistentVolumeClaim resources that can simply be referenced from a Pod specification.

          More information can be found in the operator's [source repository](https://github.com/openshift/aws-efs-operator).
          ## Prerequisites for enabling this Operator
          An OpenShift cluster backed by AWS.
        displayName: AWS EFS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AWS
        - EFS
        - NFS
        - Shared storage
        links:
        - name: README
          url: https://github.com/openshift/aws-efs-operator/blob/master/README.md
        - name: Design
          url: https://github.com/openshift/aws-efs-operator/blob/master/DESIGN.md
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/app-sre/aws-efs-operator:9c87267
        - quay.io/openshift-community-operators/aws-efs-operator@sha256:6372847df81faddc23c938928157c3ac280e537a4eec9f7edd599480260bc566
        version: 0.0.8
      entries:
      - name: aws-efs-operator.v0.0.8
        version: 0.0.8
      name: stable
    defaultChannel: stable
    packageName: aws-efs-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Elastic
      provider-url: ""
    name: elasticsearch-eck-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: elasticsearch-eck-operator-certified.v3.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                    "apiVersion": "elasticsearch.k8s.elastic.co/v1",
                    "kind": "Elasticsearch",
                    "metadata": {
                        "name": "elasticsearch-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "nodeSets": [
                            {
                                "name": "default",
                                "config": {
                                    "node.roles": ["master", "data"],
                                    "node.attr.attr_name": "attr_value",
                                    "node.store.allow_mmap": false
                                },
                                "podTemplate": {
                                    "metadata": {
                                        "labels": {
                                            "foo": "bar"
                                        }
                                    },
                                    "spec": {
                                        "containers": [
                                            {
                                                "name": "elasticsearch",
                                                "resources": {
                                                    "requests": {
                                                        "memory": "4Gi",
                                                        "cpu": 1
                                                    },
                                                    "limits": {
                                                        "memory": "4Gi",
                                                        "cpu": 2
                                                    }
                                                }
                                            }
                                        ]
                                    }
                                },
                                "count": 3
                            }
                        ]
                    }
                },
                {
                    "apiVersion": "kibana.k8s.elastic.co/v1",
                    "kind": "Kibana",
                    "metadata": {
                        "name": "kibana-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        },
                        "podTemplate": {
                            "metadata": {
                                "labels": {
                                    "foo": "bar"
                                }
                            },
                            "spec": {
                                "containers": [
                                    {
                                        "name": "kibana",
                                        "resources": {
                                            "requests": {
                                                "memory": "1Gi",
                                                "cpu": 0.5
                                            },
                                            "limits": {
                                                "memory": "2Gi",
                                                "cpu": 2
                                            }
                                        }
                                    }
                                ]
                            }
                        }
                    }
                },
                {
                    "apiVersion": "apm.k8s.elastic.co/v1",
                    "kind": "ApmServer",
                    "metadata": {
                        "name": "apmserver-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        }
                    }
                },
                {
                    "apiVersion": "enterprisesearch.k8s.elastic.co/v1",
                    "kind": "EnterpriseSearch",
                    "metadata": {
                        "name": "ent-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "config": {
                            "ent_search.external_url": "https://localhost:3002"
                        },
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        }
                    }
                },
                {
                  "apiVersion": "beat.k8s.elastic.co/v1beta1",
                  "kind": "Beat",
                  "metadata": {
                    "name": "heartbeat-sample"
                  },
                  "spec": {
                    "type": "heartbeat",
                    "version": "9.2.0",
                    "elasticsearchRef": {
                      "name": "elasticsearch-sample"
                    },
                    "config": {
                      "heartbeat.monitors": [
                        {
                          "type": "tcp",
                          "schedule": "@every 5s",
                          "hosts": [
                            "elasticsearch-sample-es-http.default.svc:9200"
                          ]
                        }
                      ]
                    },
                    "deployment": {
                      "replicas": 1,
                      "podTemplate": {
                        "spec": {
                          "securityContext": {
                            "runAsUser": 0
                          }
                        }
                      }
                    }
                  }
                },
                {
                  "apiVersion": "agent.k8s.elastic.co/v1alpha1",
                  "kind": "Agent",
                  "metadata": {
                    "name": "agent-sample"
                  },
                  "spec": {
                    "version": "9.2.0",
                    "elasticsearchRefs": [
                      {
                        "name": "elasticsearch-sample"
                      }
                    ],
                    "daemonSet": {},
                    "config": {
                      "inputs": [
                        {
                          "name": "system-1",
                          "revision": 1,
                          "type": "system/metrics",
                          "use_output": "default",
                          "meta": {
                            "package": {
                              "name": "system",
                              "version": "0.9.1"
                            }
                          },
                          "data_stream": {
                            "namespace": "default"
                          },
                          "streams": [
                            {
                              "id": "system/metrics-system.cpu",
                              "data_stream": {
                                "dataset": "system.cpu",
                                "type": "metrics"
                              },
                              "metricsets": [
                                "cpu"
                              ],
                              "cpu.metrics": [
                                "percentages",
                                "normalized_percentages"
                              ],
                              "period": "10s"
                            }
                          ]
                        }
                      ]
                    }
                  }
                },
                {
                    "apiVersion": "maps.k8s.elastic.co/v1alpha1",
                    "kind": "ElasticMapsServer",
                    "metadata": {
                        "name": "ems-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        }
                    }
                },
                {
                    "apiVersion": "logstash.k8s.elastic.co/v1alpha1",
                    "kind": "Logstash",
                    "metadata" : {
                        "name": "logstash-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1
                    }
                }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.connect.redhat.com/elastic/eck-operator@sha256:28925fffef8f7c920b2510810cbcfc0f3dadab5f8a80b01fd5ae500e5c070105
          createdAt: "2025-10-31 20:52:32"
          description: Run Elasticsearch, Kibana, APM Server, Beats, Enterprise Search,
            Elastic Agent, Elastic Maps Server and Logstash on Kubernetes and OpenShift
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: Elastic Basic license
          repository: https://github.com/elastic/cloud-on-k8s
          support: elastic.co
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Elastic Agent instance
            displayName: Elastic Agent
            kind: Agent
            name: agents.agent.k8s.elastic.co
            version: v1alpha1
          - description: APM Server instance
            displayName: APM Server
            kind: ApmServer
            name: apmservers.apm.k8s.elastic.co
            version: v1
          - description: Beats instance
            displayName: Beats
            kind: Beat
            name: beats.beat.k8s.elastic.co
            version: v1beta1
          - description: Elastic Maps Server instance
            displayName: Elastic Maps Server
            kind: ElasticMapsServer
            name: elasticmapsservers.maps.k8s.elastic.co
            version: v1alpha1
          - description: Instance of an Elasticsearch autoscaler
            displayName: Elasticsearch Autoscaler
            kind: ElasticsearchAutoscaler
            name: elasticsearchautoscalers.autoscaling.k8s.elastic.co
            version: v1alpha1
          - description: Instance of an Elasticsearch cluster
            displayName: Elasticsearch Cluster
            kind: Elasticsearch
            name: elasticsearches.elasticsearch.k8s.elastic.co
            version: v1
          - description: Enterprise Search instance
            displayName: Enterprise Search
            kind: EnterpriseSearch
            name: enterprisesearches.enterprisesearch.k8s.elastic.co
            version: v1
          - description: Kibana instance
            displayName: Kibana
            kind: Kibana
            name: kibanas.kibana.k8s.elastic.co
            version: v1
          - description: Logstash instance
            displayName: Logstash
            kind: Logstash
            name: logstashes.logstash.k8s.elastic.co
            version: v1alpha1
          - description: Elastic Stack Config Policy
            displayName: Elastic Stack Config Policy
            kind: StackConfigPolicy
            name: stackconfigpolicies.stackconfigpolicy.k8s.elastic.co
            version: v1alpha1
        description: |-
          Elastic Cloud on Kubernetes (ECK) is the official operator by Elastic for automating the deployment, provisioning, management, and orchestration of Elasticsearch, Kibana, APM Server, Beats, Enterprise Search, Elastic Agent, Elastic Maps Server, and Logstash on Kubernetes.

          Current features:

          *  Elasticsearch, Kibana, APM Server, Enterprise Search, Beats, Elastic Agent, Elastic Maps Server, and Logstash deployments
          *  TLS Certificates management
          *  Safe Elasticsearch cluster configuration and topology changes
          *  Persistent volumes usage
          *  Custom node configuration and attributes
          *  Secure settings keystore updates

          Supported versions:

          * Kubernetes 1.30-1.34
          * OpenShift 4.15-4.19
          * Google Kubernetes Engine (GKE), Azure Kubernetes Service (AKS), and Amazon Elastic Kubernetes Service (EKS)
          * Elasticsearch, Kibana, APM Server: 7.17+, 8+, 9+
          * Enterprise Search: 7.17+, 8+
          * Beats: 7.17+, 8+, 9+
          * Elastic Agent: 7.17+, 8+, 9+
          * Elastic Maps Server: 7.17+, 8+, 9+
          * Logstash 8.12+, 9+

          ECK should work with all conformant installers as listed in these [FAQs](https://github.com/cncf/k8s-conformance/blob/master/faq.md#what-is-a-distribution-hosted-platform-and-an-installer). Distributions include source patches and so may not work as-is with ECK.
          Alpha, beta, and stable API versions follow the same [conventions used by Kubernetes](https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-versioning).
          See the full [Elastic support matrix](https://www.elastic.co/support/matrix#matrix_kubernetes) for more information.
          See the [Quickstart](https://www.elastic.co/guide/en/cloud-on-k8s/3.2/k8s-quickstart.html) to get started with ECK.
        displayName: Elasticsearch (ECK) Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - elasticsearch
        - kibana
        - analytics
        - search
        - database
        - apm
        - logstash
        links:
        - name: Documentation
          url: https://www.elastic.co/guide/en/cloud-on-k8s/3.2/index.html
        maintainers:
        - email: eck@elastic.co
          name: Elastic
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Elastic
        relatedImages:
        - registry.connect.redhat.com/elastic/eck-operator@sha256:28925fffef8f7c920b2510810cbcfc0f3dadab5f8a80b01fd5ae500e5c070105
        - registry.connect.redhat.com/elastic/eck@sha256:815e6949d8b96d832660e6ed715f8fbf080b230f1bccfc3e0f38781585b14eeb
        version: 3.2.0
      entries:
      - name: elasticsearch-eck-operator-certified.v3.2.0
        version: 3.2.0
      - name: elasticsearch-eck-operator-certified.v3.1.0
        version: 3.1.0
      - name: elasticsearch-eck-operator-certified.v3.0.0
        version: 3.0.0
      - name: elasticsearch-eck-operator-certified.v2.16.1
        version: 2.16.1
      - name: elasticsearch-eck-operator-certified.v2.16.0
        version: 2.16.0
      - name: elasticsearch-eck-operator-certified.v2.15.0
        version: 2.15.0
      - name: elasticsearch-eck-operator-certified.v2.14.0
        version: 2.14.0
      - name: elasticsearch-eck-operator-certified.v2.13.0
        version: 2.13.0
      - name: elasticsearch-eck-operator-certified.v2.12.1
        version: 2.12.1
      - name: elasticsearch-eck-operator-certified.v2.12.0
        version: 2.12.0
      - name: elasticsearch-eck-operator-certified.v2.11.1
        version: 2.11.1
      - name: elasticsearch-eck-operator-certified.v2.11.0
        version: 2.11.0
      - name: elasticsearch-eck-operator-certified.v2.10.0
        version: 2.10.0
      - name: elasticsearch-eck-operator-certified.v2.9.0
        version: 2.9.0
      - name: elasticsearch-eck-operator-certified.v2.8.0
        version: 2.8.0
      - name: elasticsearch-eck-operator-certified.v2.7.0
        version: 2.7.0
      - name: elasticsearch-eck-operator-certified.v2.6.2
        version: 2.6.2
      - name: elasticsearch-eck-operator-certified.v2.6.1
        version: 2.6.1
      - name: elasticsearch-eck-operator-certified.v2.5.0
        version: 2.5.0
      - name: elasticsearch-eck-operator-certified.v2.4.0
        version: 2.4.0
      - name: elasticsearch-eck-operator-certified.v2.3.0
        version: 2.3.0
      - name: elasticsearch-eck-operator-certified.v2.2.0
        version: 2.2.0
      - name: elasticsearch-eck-operator-certified.v2.1.0
        version: 2.1.0
      - name: elasticsearch-eck-operator-certified.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: elasticsearch-eck-operator-certified
    provider:
      name: Elastic
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Arctera US LLC
      provider-url: https://www.arctera.io
    name: infoscale-dr-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infoscale-dr-manager.v8.0.220
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com",
                  "resRecord": {
                    "HostName_1": "100.200.30.41",
                    "HostName_2": "100.200.30.43",
                    "abc": "HostName_2",
                    "www": "HostName_1",
                    "xyz": "HostName_3"
                  },
                  "stealthMasters": [
                    "1.2.3.4"
                  ],
                  "tsigKeyFile": "/Kvcslnxdns.com.+157+10641.private"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "dataReplicationPointer": "test-datareplication",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 10,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          olm.skipRange: <8.0.220
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v155481520-155483981)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
            - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v151984431-155483981)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com/
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager-bundle@sha256:5f10cfc1bc8571f44a99d88755adade0743106219673bbdd2e4d3a04ee714778
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager@sha256:a98f9cc51f2c7baeec6dbb4933a42ae8ae20ff1a42c9d48a37174cf5211bbcf8
        version: 8.0.220
      entries:
      - name: infoscale-dr-manager.v8.0.220
        version: 8.0.220
      - name: infoscale-dr-manager.v8.0.100
        version: 8.0.100
      name: 8.0.200x
    - currentCSV: infoscale-dr-manager.v8.0.330
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          createdAt: "2024-06-17T10:14:13Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v155481520-155483981)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v151984431-155483981)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com/
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager-bundle@sha256:9f90cd7ab8c0ab5da6eb12f7f0dbd177df62f07c38fb759a97989899cfcbe75d
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager@sha256:c46cbf78631fc790c77b6c13c1d1d4b5ab35f49164f7c2e36c7ec59220cbdce2
        version: 8.0.330
      entries:
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: 8.0.300x
    - currentCSV: infoscale-dr-manager.v8.0.410
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:7dff20a0aff34e1e66a97c9a39cda883642dd1e94b872c8fc2f62efc7a4db1bb
          createdAt: "2024-02-22T14:14:42Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:7dff20a0aff34e1e66a97c9a39cda883642dd1e94b872c8fc2f62efc7a4db1bb
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:15d6d2d189c8acd42867a8ed6d843b8be819a07e71b42aab24ea5fdb1fd7bfec
        version: 8.0.410
      entries:
      - name: infoscale-dr-manager.v8.0.410
        version: 8.0.410
      - name: infoscale-dr-manager.v8.0.409
        version: 8.0.409
      - name: infoscale-dr-manager.v8.0.400
        version: 8.0.400
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: 8.0.400x
    - currentCSV: infoscale-dr-manager.v9.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:ca65f01cb406bb12faeef07decffe765d1b34954830073d053244a1846a1b24e
          createdAt: "2025-09-12T09:53:51Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API.
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API.
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API.
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API.
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:dc63dad730f6ccee19b6f0ca4274b90fdf8d4ff165bf59501aaf4294ebe139e1
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:ca65f01cb406bb12faeef07decffe765d1b34954830073d053244a1846a1b24e
        version: 9.0.1
      entries:
      - name: infoscale-dr-manager.v9.0.1
        version: 9.0.1
      name: beta
    - currentCSV: infoscale-dr-manager.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
          createdAt: "2025-09-12T09:53:51Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API.
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API.
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API.
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API.
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:85b8dcf4981197a28cfd8a5492668205db2a224369b1b5bfaeea16da619339d2
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
        version: 9.1.0
      entries:
      - name: infoscale-dr-manager.v9.1.0
        version: 9.1.0
      - name: infoscale-dr-manager.v8.0.410
        version: 8.0.410
      - name: infoscale-dr-manager.v8.0.409
        version: 8.0.409
      - name: infoscale-dr-manager.v8.0.400
        version: 8.0.400
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: fast
    - currentCSV: infoscale-dr-manager.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
          createdAt: "2025-09-12T09:53:51Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API.
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API.
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API.
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API.
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:85b8dcf4981197a28cfd8a5492668205db2a224369b1b5bfaeea16da619339d2
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
        version: 9.1.0
      entries:
      - name: infoscale-dr-manager.v9.1.0
        version: 9.1.0
      - name: infoscale-dr-manager.v8.0.410
        version: 8.0.410
      - name: infoscale-dr-manager.v8.0.409
        version: 8.0.409
      - name: infoscale-dr-manager.v8.0.400
        version: 8.0.400
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: stable
    defaultChannel: fast
    packageName: infoscale-dr-manager
    provider:
      name: Arctera US LLC
      url: https://www.arctera.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-pipes-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-pipes-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pipes.services.k8s.aws/v1alpha1",
                "kind": "Pipe",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/pipes-controller:1.2.0
          createdAt: "2025-11-29T03:55:44Z"
          description: AWS EventBridge Pipes controller is a service controller for
            managing Pipes resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Pipe represents the state of an AWS pipes Pipe resource.
            displayName: Pipe
            kind: Pipe
            name: pipes.pipes.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EventBridge Pipes resources in AWS from within your Kubernetes cluster.

          **About Amazon EventBridge Pipes**

          Amazon EventBridge Pipes connects sources to targets. Pipes are intended for point-to-point integrations between supported [sources](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html) and [targets](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-target.html), with support for advanced transformations and [enrichment](https://docs.aws.amazon.com/eventbridge/latest/userguide/pipes-enrichment.html). It reduces the need for specialized knowledge and integration code when developing event-driven architectures, fostering consistency across your company’s applications. To set up a pipe, you choose the source, add optional filtering, define optional enrichment, and choose the target for the event data.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EventBridge Pipes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - pipes
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EventBridge Pipes Developer Resources
          url: https://aws.amazon.com/eventbridge/pipes/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: pipes maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/pipes-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-pipes-controller@sha256:2f105744658b9f0e0a1e09eebecd83f2f9b2511a3e9522b96fca50638e4f38d2
        version: 1.2.0
      entries:
      - name: ack-pipes-controller.v1.2.0
        version: 1.2.0
      - name: ack-pipes-controller.v1.1.3
        version: 1.1.3
      - name: ack-pipes-controller.v1.1.2
        version: 1.1.2
      - name: ack-pipes-controller.v1.1.1
        version: 1.1.1
      - name: ack-pipes-controller.v1.1.0
        version: 1.1.0
      - name: ack-pipes-controller.v1.0.25
        version: 1.0.25
      - name: ack-pipes-controller.v1.0.24
        version: 1.0.24
      - name: ack-pipes-controller.v1.0.23
        version: 1.0.23
      - name: ack-pipes-controller.v1.0.22
        version: 1.0.22
      - name: ack-pipes-controller.v1.0.21
        version: 1.0.21
      - name: ack-pipes-controller.v1.0.20
        version: 1.0.20
      - name: ack-pipes-controller.v1.0.18
        version: 1.0.18
      - name: ack-pipes-controller.v1.0.17
        version: 1.0.17
      - name: ack-pipes-controller.v1.0.16
        version: 1.0.16
      - name: ack-pipes-controller.v1.0.15
        version: 1.0.15
      - name: ack-pipes-controller.v1.0.14
        version: 1.0.14
      - name: ack-pipes-controller.v1.0.13
        version: 1.0.13
      - name: ack-pipes-controller.v1.0.12
        version: 1.0.12
      - name: ack-pipes-controller.v1.0.11
        version: 1.0.11
      - name: ack-pipes-controller.v1.0.10
        version: 1.0.10
      - name: ack-pipes-controller.v1.0.9
        version: 1.0.9
      - name: ack-pipes-controller.v1.0.8
        version: 1.0.8
      - name: ack-pipes-controller.v1.0.6
        version: 1.0.6
      - name: ack-pipes-controller.v1.0.3
        version: 1.0.3
      - name: ack-pipes-controller.v1.0.2
        version: 1.0.2
      - name: ack-pipes-controller.v1.0.1
        version: 1.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-pipes-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: cert-utils-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cert-utils-operator.v1.3.12
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/cert-utils-operator@sha256:0290e7b2800a5aa8eb57b0268908f2a20a93b16403c76df4c61021048161d6ff
          createdAt: "2024-01-23T12:29:04Z"
          description: Set of utilities for TLS certificates
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-utils-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/cert-utils-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Cert utils operator is a set of functionalities around certificates packaged in a [Kubernetes operator](https://github.com/operator-framework/operator-sdk).

          Certificates are assumed to be available in a [secret](https://kubernetes.io/docs/concepts/configuration/secret/) of type `kubernetes.io/tls` (other types of secrets are *ignored* by this operator).
          By convention this type of secrets have three optional entries:

          1. `tls.key`: the private key of the certificate.
          2. `tls.crt`: the actual certificate.
          3. `ca.crt`: the CA bundle that validates the certificate.

          The functionalities are the following:

          1. [Ability to populate route certificates](https://github.com/redhat-cop/cert-utils-operator#Populating-route-certificates)
          2. [Ability to create java keystore and truststore from the certificates](https://github.com/redhat-cop/cert-utils-operator#Creating-java-keystore-and-truststore)
          3. [Ability to show info regarding the certificates](https://github.com/redhat-cop/cert-utils-operator#Showing-info-on-the-certificates)
          4. [Ability to alert when a certificate is about to expire](https://github.com/redhat-cop/cert-utils-operator#Alerting-when-a-certificate-is-about-to-expire)
          5. [Ability to inject ca bundles in ValidatingWebhookConfiguration, MutatingWebhookConfiguration, CustomResourceDefinition object](https://github.com/redhat-cop/cert-utils-operator#CA-injection)

          All these feature are activated via opt-in annotations.
        displayName: Cert Utils Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TLS
        - secrets
        - security
        - certificates
        links:
        - name: Cert Utils Operator
          url: https://github.com/redhat-cop/cert-utils-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/cert-utils-operator
        maintainers:
        - email: rspazzoli@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cert-utils-operator@sha256:92a0c0b893b56330593e0a255b8df61031e92a61d172aecc58be5805d847798a
        - quay.io/redhat-cop/cert-utils-operator@sha256:0290e7b2800a5aa8eb57b0268908f2a20a93b16403c76df4c61021048161d6ff
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.3.12
      entries:
      - name: cert-utils-operator.v1.3.12
        version: 1.3.12
      - name: cert-utils-operator.v1.3.11
        version: 1.3.11
      - name: cert-utils-operator.v1.3.10
        version: 1.3.10
      - name: cert-utils-operator.v1.3.9
        version: 1.3.9
      - name: cert-utils-operator.v1.3.8
        version: 1.3.8
      - name: cert-utils-operator.v1.3.7
        version: 1.3.7
      - name: cert-utils-operator.v1.3.6
        version: 1.3.6
      - name: cert-utils-operator.v1.3.5
        version: 1.3.5
      - name: cert-utils-operator.v1.3.4
        version: 1.3.4
      - name: cert-utils-operator.v1.3.3
        version: 1.3.3
      - name: cert-utils-operator.v1.3.2
        version: 1.3.2
      - name: cert-utils-operator.v1.3.1
        version: 1.3.1
      - name: cert-utils-operator.v1.3.0
        version: 1.3.0
      - name: cert-utils-operator.v1.2.0
        version: 1.2.0
      - name: cert-utils-operator.v1.1.0
        version: 1.1.0
      - name: cert-utils-operator.v1.0.7
        version: 1.0.7
      - name: cert-utils-operator.v1.0.6
        version: 1.0.6
      - name: cert-utils-operator.v1.0.5
        version: 1.0.5
      - name: cert-utils-operator.v1.0.4
        version: 1.0.4
      - name: cert-utils-operator.v1.0.3
        version: 1.0.3
      - name: cert-utils-operator.v1.0.2
        version: 1.0.2
      - name: cert-utils-operator.v1.0.1
        version: 1.0.1
      - name: cert-utils-operator.v1.0.0
        version: 1.0.0
      - name: cert-utils-operator.v0.2.2
        version: 0.2.2
      - name: cert-utils-operator.v0.2.1
        version: 0.2.1
      - name: cert-utils-operator.v0.2.0
        version: 0.2.0
      - name: cert-utils-operator.v0.1.1
        version: 0.1.1
      - name: cert-utils-operator.v0.1.0
        version: 0.1.0
      - name: cert-utils-operator.v0.0.3
        version: 0.0.3
      - name: cert-utils-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: cert-utils-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: ""
    name: percona-xtradb-cluster-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-xtradb-cluster-operator.v1.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pxc.percona.com/v1-9-0",
                "kind": "PerconaXtraDBCluster",
                "metadata": {
                  "name": "cluster1",
                  "finalizers": [
                    "delete-pxc-pods-in-order"
                  ]
                },
                "spec": {
                  "crVersion": "1.9.0",
                  "secretsName": "my-cluster-secrets",
                  "vaultSecretName": "keyring-secret-vault",
                  "sslSecretName": "my-cluster-ssl",
                  "sslInternalSecretName": "my-cluster-ssl-internal",
                  "logCollectorSecretName": "my-log-collector-secrets",
                  "allowUnsafeConfigurations": false,
                  "updateStrategy": "SmartUpdate",
                  "upgradeOptions": {
                    "versionServiceEndpoint": "https://check.percona.com",
                    "apply": "8.0-recommended",
                    "schedule": "0 4 * * *"
                  },
                  "pxc": {
                    "size": 3,
                    "image": "percona/percona-xtradb-cluster:8.0.23-14.1",
                    "autoRecovery": true,
                    "resources": {
                      "requests": {
                        "memory": "1G",
                        "cpu": "600m"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "volumeSpec": {
                      "persistentVolumeClaim": {
                        "resources": {
                          "requests": {
                            "storage": "6G"
                          }
                        }
                      }
                    },
                    "gracePeriod": 600
                  },
                  "haproxy": {
                    "enabled": true,
                    "size": 3,
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-haproxy",
                    "resources": {
                      "requests": {
                        "memory": "1G",
                        "cpu": "600m"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "gracePeriod": 30
                  },
                  "proxysql": {
                    "enabled": false,
                    "size": 3,
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-proxysql",
                    "resources": {
                      "requests": {
                        "memory": "1G",
                        "cpu": "600m"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "volumeSpec": {
                      "persistentVolumeClaim": {
                        "resources": {
                          "requests": {
                            "storage": "2G"
                          }
                        }
                      }
                    },
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "gracePeriod": 30
                  },
                  "logcollector": {
                    "enabled": true,
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-logcollector"
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "percona/pmm-client:2.18.0",
                    "serverHost": "monitoring-service",
                    "serverUser": "admin"
                  },
                  "backup": {
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-pxc8.0-backup",
                    "pitr": {
                      "enabled": false,
                      "storageName": "STORAGE-NAME-HERE",
                      "timeBetweenUploads": 60
                    },
                    "storages": {
                      "s3-us-west": {
                        "type": "s3",
                        "s3": {
                          "bucket": "S3-BACKUP-BUCKET-NAME-HERE",
                          "credentialsSecret": "my-cluster-name-backup-s3",
                          "region": "us-west-2"
                        }
                      },
                      "fs-pvc": {
                        "type": "filesystem",
                        "volume": {
                          "persistentVolumeClaim": {
                            "accessModes": [
                              "ReadWriteOnce"
                            ],
                            "resources": {
                              "requests": {
                                "storage": "6G"
                              }
                            }
                          }
                        }
                      }
                    },
                    "schedule": [
                      {
                        "name": "sat-night-backup",
                        "schedule": "0 0 * * 6",
                        "keep": 3,
                        "storageName": "s3-us-west"
                      },
                      {
                        "name": "daily-backup",
                        "schedule": "0 0 * * *",
                        "keep": 5,
                        "storageName": "fs-pvc"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "fs-pvc"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1alpha1",
                "kind": "PerconaXtraDBBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "s3-us-west"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterRestore",
                "metadata": {
                  "name": "restore1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "backupName": "backup1"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "fs-pvc"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1alpha1",
                "kind": "PerconaXtraDBBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "s3-us-west"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterRestore",
                "metadata": {
                  "name": "restore1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "backupName": "backup1"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: percona/percona-xtradb-cluster-operator:1.9.0
          createdAt: "2021-10-14T13:11:44.000Z"
          description: Percona Distribution for Mysql Operator manages the lifecycle
            of Percona XtraDB cluster instances.
          repository: https://github.com/percona/percona-xtradb-cluster-operator
          support: Percona
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instance of a Percona XtraDB Cluster
            displayName: PerconaXtraDBCluster
            kind: PerconaXtraDBCluster
            name: perconaxtradbclusters.pxc.percona.com
            version: v1-9-0
          - description: Instance of a Percona XtraDB Cluster Backup
            displayName: PerconaXtraDBClusterBackup
            kind: PerconaXtraDBClusterBackup
            name: perconaxtradbclusterbackups.pxc.percona.com
            version: v1
          - description: Instance of a Percona XtraDB Cluster Restore
            displayName: PerconaXtraDBClusterRestore
            kind: PerconaXtraDBClusterRestore
            name: perconaxtradbclusterrestores.pxc.percona.com
            version: v1
          - description: (Legacy) Instance of a Percona XtraDB Cluster Backup
            displayName: PerconaXtraDBBackup
            kind: PerconaXtraDBBackup
            name: perconaxtradbbackups.pxc.percona.com
            version: v1alpha1
        description: |2+

          ## Percona is Cloud Native

          Percona Distribution for Mysql Operator is an open-source drop in replacement for MySQL Enterprise with synchronous replication running on Kubernetes. It automates the deployment and management of the members in your Percona XtraDB Cluster environment. It can be used to instantiate a new Percona XtraDB Cluster, or to scale an existing environment.
          Consult the [documentation](https://percona.github.io/percona-xtradb-cluster-operator/) on the Percona Distribution for Mysql Operator for complete details on capabilities and options.

          ### Supported Features

          * **Scale Your Cluster**  change the `size` parameter to [add or remove members](https://percona.github.io/percona-xtradb-cluster-operator/install/scaling) of the cluster. Three is the minimum recommended size for a functioning cluster.

          * **Automate Your Backups**  [configure cluster backups](https://percona.github.io/percona-xtradb-cluster-operator/configure/operator) to run on a scheduled basis. Backups can be stored on a persistent volume or S3-compatible storage. Leverage [Point-in-time recovery](https://www.percona.com/doc/kubernetes-operator-for-pxc/backups.html#storing-binary-logs-for-point-in-time-recovery) to reduce RPO/RTO.
          * **Proxy integration**  choose HAProxy or ProxySQL as a proxy in front of the Percona XtraDB Cluster. Proxies are deployed and configured automatically with the Operator.
          ### Common Configurations

          * **Set Resource Limits** - set limitation on requests to CPU and memory resources.

          * **Customize Storage** - set the desired Storage Class and Access Mode for your database cluster data.

          * **Control Scheduling** - define how your PXC Pods are scheduled onto the K8S cluster with tolerations, pod disruption budgets, node selector and affinity settings.
          * Automatic synchronization of MySQL users with ProxySQL
          * Fully automated minor version updates (Smart Update)
          * Update Reader members before Writer member at cluster upgrades
          * Support MySQL versions 5.7 and 8.0
          ### Before You Start

          Add the PXC user `Secret` to Kubernetes. User information must be placed in the data section of the `secrets.yaml`
          file with Base64-encoded logins and passwords for the user accounts.

          Below is a sample `secrets.yaml` file for the correct formatting.

          ```
          apiVersion: v1
          kind: Secret
          metadata:
            name: my-cluster-secrets
          type: Opaque
          data:
            root: cm9vdF9wYXNzd29yZA==
            xtrabackup: YmFja3VwX3Bhc3N3b3Jk
            monitor: bW9uaXRvcg==
            clustercheck: Y2x1c3RlcmNoZWNrcGFzc3dvcmQ=
            proxyadmin: YWRtaW5fcGFzc3dvcmQ=
            pmmserver: c3VwYXxefHBheno=
            operator: b3BlcmF0b3JhZG1pbg==
          ```
          ###  Release Highlights

          * Starting from this release, the Operator changes its official name to Percona Distribution for MySQL Operator.
            This new name emphasizes gradual changes which incorporated a collection of Percona’s solutions to run and operate Percona Server for MySQL and Percona XtraDB Cluster, available separately as Percona Distribution for MySQL.
            Now you can see HAProxy metrics in your favorite Percona Monitoring and Management (PMM) dashboards automatically.
          * The cross-site replication feature allows an asynchronous replication between two Percona XtraDB Clusters, including scenarios when one of the clusters is outside of the Kubernetes environment.
            The feature is intended for the following use cases:
              * provide migrations of your Percona XtraDB Cluster to Kubernetes or vice versa,
              * migrate regular MySQL database to Percona XtraDB Cluster under the Operator control, or carry on backward migration,
              * enable disaster recovery capability for your cluster deployment.

        displayName: Percona XtraDB Cluster Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mysql
        - percona
        - database
        - pxc
        - galera
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://percona.github.io/percona-xtradb-cluster-operator/
        - name: Github
          url: https://github.com/percona/percona-xtradb-cluster-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
        relatedImages:
        - percona/percona-xtradb-cluster-operator:1.9.0
        - quay.io/openshift-community-operators/percona-xtradb-cluster-operator@sha256:6138612eaecaac82239d52c2f4eecddcba3aa83d2986cf05b0f01903b72844e6
        version: 1.9.0
      entries:
      - name: percona-xtradb-cluster-operator.v1.9.0
        version: 1.9.0
      name: stable
    defaultChannel: stable
    packageName: percona-xtradb-cluster-operator
    provider:
      name: Percona
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-secretsmanager-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-secretsmanager-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "secretsmanager.services.k8s.aws/v1alpha1",
                "kind": "Secret",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/secretsmanager-controller:1.2.0
          createdAt: "2025-11-29T04:50:21Z"
          description: AWS Secrets Manager controller is a service controller for
            managing Secrets Manager resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Secret represents the state of an AWS secretsmanager Secret
              resource.
            displayName: Secret
            kind: Secret
            name: secrets.secretsmanager.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Secrets Manager resources in AWS from within your Kubernetes cluster.

          **About Amazon Secrets Manager**

          AWS Secrets Manager helps you manage, retrieve, and rotate database credentials, application credentials, OAuth tokens, API keys, and other secrets throughout their lifecycles. [Many AWS services that use secrets](https://docs.aws.amazon.com/secretsmanager/latest/userguide/integrating.html) store them in Secrets Manager.

          Secrets Manager helps you improve your security posture, because you no longer need hard-coded credentials in application source code. Storing the credentials in Secrets Manager helps avoid possible compromise by anyone who can inspect your application or the components. You replace hard-coded credentials with a runtime call to the Secrets Manager service to retrieve credentials dynamically when you need them.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Secrets Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secretsmanager
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Secrets Manager Developer Resources
          url: https://aws.amazon.com/secrets-manager/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: secretsmanager maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/secretsmanager-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-secretsmanager-controller@sha256:0ef52e0e1cfddc7f8f6fcb65b21299e50c5ce34d0391e4c21e36e1abf2d5f04d
        version: 1.2.0
      entries:
      - name: ack-secretsmanager-controller.v1.2.0
        version: 1.2.0
      - name: ack-secretsmanager-controller.v1.1.2
        version: 1.1.2
      - name: ack-secretsmanager-controller.v1.1.1
        version: 1.1.1
      - name: ack-secretsmanager-controller.v1.1.0
        version: 1.1.0
      - name: ack-secretsmanager-controller.v1.0.14
        version: 1.0.14
      - name: ack-secretsmanager-controller.v1.0.13
        version: 1.0.13
      - name: ack-secretsmanager-controller.v1.0.12
        version: 1.0.12
      - name: ack-secretsmanager-controller.v1.0.11
        version: 1.0.11
      - name: ack-secretsmanager-controller.v1.0.10
        version: 1.0.10
      - name: ack-secretsmanager-controller.v1.0.9
        version: 1.0.9
      - name: ack-secretsmanager-controller.v1.0.8
        version: 1.0.8
      - name: ack-secretsmanager-controller.v1.0.7
        version: 1.0.7
      - name: ack-secretsmanager-controller.v1.0.6
        version: 1.0.6
      - name: ack-secretsmanager-controller.v1.0.5
        version: 1.0.5
      - name: ack-secretsmanager-controller.v1.0.4
        version: 1.0.4
      - name: ack-secretsmanager-controller.v1.0.3
        version: 1.0.3
      - name: ack-secretsmanager-controller.v1.0.1
        version: 1.0.1
      - name: ack-secretsmanager-controller.v1.0.0
        version: 1.0.0
      - name: ack-secretsmanager-controller.v0.0.11
        version: 0.0.11
      - name: ack-secretsmanager-controller.v0.0.10
        version: 0.0.10
      - name: ack-secretsmanager-controller.v0.0.9
        version: 0.0.9
      - name: ack-secretsmanager-controller.v0.0.8
        version: 0.0.8
      - name: ack-secretsmanager-controller.v0.0.7
        version: 0.0.7
      - name: ack-secretsmanager-controller.v0.0.2
        version: 0.0.2
      - name: ack-secretsmanager-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-secretsmanager-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Skupper Project
      provider-url: https://skupper.io
    name: skupper-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: alpha
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1
    - currentCSV: skupper-operator.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:e5f8b2ddf378cf3e40f4c7b7ec8482eb3321947cd46481c868d727932c449d78
          createdAt: "2024-02-26T18:22:07Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/flow-collector@sha256:3870c5bc89e623b7cebe21856bfefc22de76313705efa0ec551a5963789fff3b
        - quay.io/skupper/service-controller@sha256:345edf2d9d72b5a97bcce0e8cea8cda82d120f7bf83756d73f9ac114c2fcced8
        - quay.io/skupper/site-controller@sha256:e5f8b2ddf378cf3e40f4c7b7ec8482eb3321947cd46481c868d727932c449d78
        - quay.io/skupper/skupper-router@sha256:bf8d5955ce4e406275a4934278efe51c1af9a1a269a70e8fe642b7d94d80cb81
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:3a96ab2db995d24a9ca064b5566821828d6e73ea20df77c9932d8972cb8e5780
        - quay.io/openshift/origin-oauth-proxy@sha256:a7dff785d821acc4b972d94964947713fade45f007dedb5deee17a2869bf5d24
        - quay.io/prometheus/prometheus@sha256:d2ab0a27783fd4ad96a8853e2847b99a0be0043687b8a5d1ebfb2dd3fa4fd1b8
        - quay.io/skupper/config-sync@sha256:659fe28d1df7c99bba3bb854b1e9991c715ae4de99d91c88d5db5e4f9ef4c852
        version: 1.6.0
      entries:
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.6
    - currentCSV: skupper-operator.v1.7.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:4809db7263d77a95797061798e910f1bdbb5d5fe2db2bb3c743b97f5d0c7b3af
          createdAt: "2024-06-12T14:36:59Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/config-sync@sha256:a884b26a32179af5a2bfa85118bf873852eec6e2930e92da778b57506c0a0880
        - quay.io/skupper/flow-collector@sha256:bf646b0cb75e1c29bbe0261aa9943e06d33118f5e6a5ccb7503c60c974167692
        - quay.io/skupper/service-controller@sha256:624e88e695297df28e485db7e802945ad1978ac6b0c9e9edca8b5e6013af8991
        - quay.io/skupper/site-controller@sha256:4809db7263d77a95797061798e910f1bdbb5d5fe2db2bb3c743b97f5d0c7b3af
        - quay.io/skupper/skupper-router@sha256:5eb258a0927e7706e7c035f1def2eb5211c8c33dd371fafa7210517fd894f68b
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:c2b996e8dac2f4c81a3e48e4203499f48e4e15d0692e98d61dc8c97192e0a776
        - quay.io/openshift/origin-oauth-proxy@sha256:a7dff785d821acc4b972d94964947713fade45f007dedb5deee17a2869bf5d24
        - quay.io/prometheus/prometheus@sha256:d2ab0a27783fd4ad96a8853e2847b99a0be0043687b8a5d1ebfb2dd3fa4fd1b8
        version: 1.7.1
      entries:
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.7
    - currentCSV: skupper-operator.v1.8.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:ffe3ea5067d350b64b69120bdf6d9e3ee9a30e8a2559b77170a10d66635623b8
          createdAt: "2025-03-27T20:11:53Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/skupper-router@sha256:7633b143f1844ee559322e4642ca80e8248a08711c8e814d489c26c39ecf9bd0
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:68eb666168d3a41cc98f91a0f2d74656af73cf76ec2cbe2cc308ae2ffab84875
        - quay.io/openshift/origin-oauth-proxy@sha256:c15baf57dbd17dcc517cd2fa2299462d62124f689d6f5a48a3c9fd154fc77ccf
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:9e96d6a585f037f60ca3d89b5efee27ec92444d353e8b289ca35b94aeed1e309
        - quay.io/skupper/flow-collector@sha256:252244ab6aaf6b80118bfc06b690d4f5e8d7829b999fca60d194a84452fee7f6
        - quay.io/skupper/service-controller@sha256:a45de211b8f8a8294a3588932a0a72766cf0d5ce64b01f4f744832c8d09aaa46
        - quay.io/skupper/site-controller@sha256:ffe3ea5067d350b64b69120bdf6d9e3ee9a30e8a2559b77170a10d66635623b8
        version: 1.8.4
      entries:
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.8
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.9
    defaultChannel: stable
    packageName: skupper-operator
    provider:
      name: Skupper Project
      url: https://skupper.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: submariner.io
      provider-url: ""
    name: submariner
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: submariner.v0.21.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Broker",
                "metadata": {
                  "name": "submariner-broker"
                },
                "spec": {
                  "components": [
                    "service-discovery",
                    "connectivity"
                  ],
                  "defaultGlobalnetClusterSize": 8192,
                  "globalnetEnabled": false
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "ServiceDiscovery",
                "metadata": {
                  "name": "servicediscovery"
                },
                "spec": {
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "clusterID": "cluster1",
                  "debug": false,
                  "globalnetEnabled": false,
                  "namespace": "submariner-operator",
                  "repository": "quay.io/submariner",
                  "version": "v0.21.2"
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Submariner",
                "metadata": {
                  "name": "submariner"
                },
                "spec": {
                  "broker": "k8s",
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "cableDriver": "libreswan",
                  "ceIPSecDebug": false,
                  "ceIPSecIKEPort": 500,
                  "ceIPSecNATTPort": 4500,
                  "ceIPSecPSK": "$(IPSEC_PSK)",
                  "clusterCIDR": "192.168.67.0/24",
                  "clusterID": "cluster1",
                  "connectionHealthCheck": {
                    "enabled": false,
                    "intervalSeconds": 1,
                    "maxPacketLossCount": 5
                  },
                  "debug": false,
                  "globalCIDR": "",
                  "namespace": "submariner-operator",
                  "natEnabled": true,
                  "repository": "quay.io/submariner",
                  "serviceCIDR": "192.168.66.0/24",
                  "serviceDiscoveryEnabled": true,
                  "version": "v0.21.2"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: $(SUBMARINER_OPERATOR_IMAGE)
          createdAt: "2025-11-18 12:44:16"
          description: Creates and manages Submariner deployments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: submariner-operator
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/submariner-io/submariner-operator
          support: Submariner
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Broker is the Schema for the brokers API.
            displayName: Submariner Broker
            kind: Broker
            name: brokers.submariner.io
            version: v1alpha1
          - description: ServiceDiscovery is the Schema for the servicediscoveries
              API.
            displayName: Service Discovery
            kind: ServiceDiscovery
            name: servicediscoveries.submariner.io
            version: v1alpha1
          - description: Submariner is the Schema for the submariners API.
            displayName: Submariner
            kind: Submariner
            name: submariners.submariner.io
            version: v1alpha1
        description: |
          [Submariner](https://submariner.io) enables direct networking between Pods and Services in different Kubernetes
          clusters. With Submariner, your applications and services can span multiple cloud providers, data centers, and regions.

          Submariner is designed to be cloud provider and network plugin (CNI) agnostic.

          Submariner consists of several main components that work in conjunction to securely connect workloads across
          multiple Kubernetes clusters, both on-premise and on public clouds:
          * [Gateway Engine](https://submariner.io/getting-started/architecture/gateway-engine/): manages the secure tunnels to other clusters.
          * [Route Agent](https://submariner.io/getting-started/architecture/route-agent/): routes cross-cluster traffic from nodes
          to the active Gateway Engine.
          * [Broker](https://submariner.io/getting-started/architecture/broker/): facilitates the exchange of metadata between Gateway
          Engines enabling them to discover one another.

          Submariner has optional components that provide additional functionality:
          * [Globalnet Controller](https://submariner.io/getting-started/architecture/globalnet/): handles overlapping CIDRs across clusters.
          * [Service Discovery](https://submariner.io/getting-started/architecture/service-discovery/): provides DNS discovery of services
          across clusters.

          ### Prerequisites
          Submariner has a few requirements to get started, all are documented [here](https://submariner.io/getting-started/quickstart/kind/#prerequisites).

          If running on an OpenShift cluster, perform the following steps to bind the Submariner service accounts to the **privileged** SCC.

          ```shell
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-gateway
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-routeagent
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-globalnet
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-lighthouse-coredns
          ```

          ### Deployment
          Submariner provides an [Operator](https://github.com/submariner-io/submariner-operator) for easy API-based
          installation and management.
          A command line utility, [subctl](https://github.com/submariner-io/submariner-operator/releases), wraps the
          Operator to aid users with manual deployments and easy experimentation.
          subctl greatly simplifies the deployment of Submariner, and is therefore the recommended deployment method.
          For complete information about subctl, please refer to [this page](https://submariner.io/operations/deployment/subctl).
          In addition to Operator and subctl, Submariner also provides [Helm Charts](https://submariner.io/operations/deployment/helm).

          On the broker cluster:
          1. Create the broker namespace called `submariner-k8s-broker`.
          2. Apply the broker RBAC definitions:

              ```shell
              git clone --depth 1 --single-branch --branch release-0.21 https://github.com/submariner-io/submariner-operator
              kubectl apply -k submariner-operator/config/broker -n submariner-k8s-broker
              ```

          3. Install the Submariner Operator from the catalog.
          4. Create a new `Broker` custom resource named **submariner-broker**.

          On connected clusters:
          1. Install the Submariner Operator from the catalog.
          2. Create a new `Submariner` custom resource named **submariner**.

          The following values can be specified for the **Broker** CR:
          * **defaultCustomDomains**: List of domains to use for multicluster service discovery.
          * **defaultGlobalnetClusterSize**: Default cluster size for GlobalCIDR allocated to each cluster (amount of global IPs).
          * **globalnetEnabled**: Enable support for Overlapping CIDRs in connecting clusters (default disabled).
          * **globalnetCIDRRange**: GlobalCIDR supernet range for allocating GlobalCIDRs to each cluster.
          * **components**: List of components to be installed [service-discovery, connectivity].

          The following values can be specified for the **Submariner** CR:
          * **namespace**: The namespace to install in.
          * **serviceCIDR**: The service CIDR.
          * **clusterCIDR**: The cluster CIDR.
          * **clusterID**: The cluster ID used to identify the tunnels.
          * **colorCodes**: The color code(s) for the cluster.
          * **debug**: *'true'* to enable operator debugging information - verbose logging.
          * **natEnabled**: *'true'* if there is NAT between clusters. Typically *'true'* in public cloud or mixed on-prem/public cloud environments and *'false'* when all clusters are on-prem.
          * **broker**: This must be *k8s* currently.
          * **brokerK8sApiServer**: The broker API server URL.
              To retrieve it run the following command on the broker cluster:

              `kubectl -n default get endpoints kubernetes -o
              jsonpath="{.subsets[0].addresses[0].ip}:{.subsets[0].ports[?(@.name=='https')].port}"`

          * **brokerK8sApiServerToken**: The broker API server token.
              To retrieve the token run the following command on the broker cluster, assuming the broker is running in the
              *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data.token != null)] | .[0].data.token' | base64 --decode`

          * **brokerK8sRemoteNamespace**: The broker namespace.
          * **brokerK8sCA**: The broker certificate authority.
              To retrieve the broker CA run the following command on the broker cluster, assuming the broker is running in
              the *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data."ca.crt" != null)] | .[0].data."ca.crt"' | base64 --decode`

          * **ceIPSecPSK**: The IPsec Pre-Shared Key which must be identical in all route agents across the cluster.
              To generate a unique PSK run the following command on your machine:

              `dd if=/dev/urandom count=64 bs=8 | LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 64 | head -n 1`

          * **ceIPSecDebug**: *'true'* to enable logging IPsec debugging information - verbose logging from the IPsec daemon.
          * **ceIPSecIKEPort**: The IPsec IKE port (500 usually).
          * **ceIPSecNATTPort**: The IPsec NAT traversal port (4500 usually).
          * **repository**: The container repository to use.
          * **version**: The container version to use.
          * **imageOverrides**: A string map that overrides the images by defining a path for each component.
                                This field is meant to be used by CI, development or testing.

            **example:**

            ```yaml
            imageOverrides:
              submariner-route-agent=my_repo/my_custom_image:my_tag
              submariner-globalnet=my_repo/my_custom_image:my_tag
            ```
        displayName: Submariner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multi-cluster
        - ipsec
        - tunnel
        - submariner-operator
        links:
        - name: Website
          url: https://submariner.io
        - name: GitHub
          url: https://github.com/submariner-io
        - name: Slack
          url: https://kubernetes.slack.com/archives/C010RJV694M
        - name: YouTube
          url: https://www.youtube.com/channel/UCZ3brSgl2v4boglZoeChClQ/videos
        - name: Twitter
          url: https://twitter.com/submarinerio
        maintainers:
        - email: submariner-dev@googlegroups.com
          name: Submariner project
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: submariner.io
        relatedImages:
        - registry.redhat.io/rhacm2/lighthouse-coredns-rhel9@sha256:37fb020f4e261f01205d9937375958f9ae679dcbae6d6f44a6a3b037ca37daf5
        - registry.redhat.io/rhacm2/nettest-rhel9@sha256:216411b2b30bcbd993553d1e6e801aee2a8d059ff77a2daf34d7f89e2897a87a
        - registry.redhat.io/rhacm2/submariner-gateway-rhel9@sha256:86eb47f7db45c51fc334e12a95ccbcc955d36cff55d302e9b835df0198881ed6
        - registry.redhat.io/rhacm2/submariner-globalnet-rhel9@sha256:f8223f48bca9166c8be441158c8eeffbcf6f4dff55b3bb47c05edfcc001569e8
        - registry.redhat.io/rhacm2/submariner-rhel9-operator@sha256:c18f75ecce7a2ff854ce438110c0441d7ca94c92fd0f6544694921f28d9ae815
        - registry.redhat.io/rhacm2/submariner-route-agent-rhel9@sha256:9d57f677f46236a94987223783d88a61101e8eb44bdb72420c1480fa8f39fd67
        - registry.redhat.io/rhacm2/submariner-operator-bundle@sha256:bee92e4e7d305ab6f48d4a06fa7130f59ceebd004bbe802cd41a1eb4ffb98aee
        - registry.redhat.io/rhacm2/lighthouse-agent-rhel9@sha256:b3d220c9f8dd7ce3f4a2a01365ead67d8306a677e4ed292ad075ae81b90939dd
        version: 0.21.2
      entries:
      - name: submariner.v0.21.2
        version: 0.21.2
      - name: submariner.v0.21.0
        version: 0.21.0
      name: stable-0.21
    - currentCSV: submariner.v0.22.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Broker",
                "metadata": {
                  "name": "submariner-broker"
                },
                "spec": {
                  "components": [
                    "service-discovery",
                    "connectivity"
                  ],
                  "defaultGlobalnetClusterSize": 8192,
                  "globalnetEnabled": false
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "ServiceDiscovery",
                "metadata": {
                  "name": "servicediscovery"
                },
                "spec": {
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "clusterID": "cluster1",
                  "debug": false,
                  "globalnetEnabled": false,
                  "namespace": "submariner-operator",
                  "repository": "quay.io/submariner",
                  "version": "v0.22.0"
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Submariner",
                "metadata": {
                  "name": "submariner"
                },
                "spec": {
                  "broker": "k8s",
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "cableDriver": "libreswan",
                  "ceIPSecDebug": false,
                  "ceIPSecIKEPort": 500,
                  "ceIPSecNATTPort": 4500,
                  "ceIPSecPSK": "$(IPSEC_PSK)",
                  "clusterCIDR": "192.168.67.0/24",
                  "clusterID": "cluster1",
                  "connectionHealthCheck": {
                    "enabled": false,
                    "intervalSeconds": 1,
                    "maxPacketLossCount": 5
                  },
                  "debug": false,
                  "globalCIDR": "",
                  "namespace": "submariner-operator",
                  "natEnabled": true,
                  "repository": "quay.io/submariner",
                  "serviceCIDR": "192.168.66.0/24",
                  "serviceDiscoveryEnabled": true,
                  "version": "v0.22.0"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: $(SUBMARINER_OPERATOR_IMAGE)
          createdAt: "2025-12-04 09:45:04"
          description: Creates and manages Submariner deployments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: submariner-operator
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/submariner-io/submariner-operator
          support: Submariner
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Broker is the Schema for the brokers API.
            displayName: Submariner Broker
            kind: Broker
            name: brokers.submariner.io
            version: v1alpha1
          - description: ServiceDiscovery is the Schema for the servicediscoveries
              API.
            displayName: Service Discovery
            kind: ServiceDiscovery
            name: servicediscoveries.submariner.io
            version: v1alpha1
          - description: Submariner is the Schema for the submariners API.
            displayName: Submariner
            kind: Submariner
            name: submariners.submariner.io
            version: v1alpha1
        description: |
          [Submariner](https://submariner.io) enables direct networking between Pods and Services in different Kubernetes
          clusters. With Submariner, your applications and services can span multiple cloud providers, data centers, and regions.

          Submariner is designed to be cloud provider and network plugin (CNI) agnostic.

          Submariner consists of several main components that work in conjunction to securely connect workloads across
          multiple Kubernetes clusters, both on-premise and on public clouds:
          * [Gateway Engine](https://submariner.io/getting-started/architecture/gateway-engine/): manages the secure tunnels to other clusters.
          * [Route Agent](https://submariner.io/getting-started/architecture/route-agent/): routes cross-cluster traffic from nodes
          to the active Gateway Engine.
          * [Broker](https://submariner.io/getting-started/architecture/broker/): facilitates the exchange of metadata between Gateway
          Engines enabling them to discover one another.

          Submariner has optional components that provide additional functionality:
          * [Globalnet Controller](https://submariner.io/getting-started/architecture/globalnet/): handles overlapping CIDRs across clusters.
          * [Service Discovery](https://submariner.io/getting-started/architecture/service-discovery/): provides DNS discovery of services
          across clusters.

          ### Prerequisites
          Submariner has a few requirements to get started, all are documented [here](https://submariner.io/getting-started/quickstart/kind/#prerequisites).

          If running on an OpenShift cluster, perform the following steps to bind the Submariner service accounts to the **privileged** SCC.

          ```shell
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-gateway
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-routeagent
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-globalnet
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-lighthouse-coredns
          ```

          ### Deployment
          Submariner provides an [Operator](https://github.com/submariner-io/submariner-operator) for easy API-based
          installation and management.
          A command line utility, [subctl](https://github.com/submariner-io/submariner-operator/releases), wraps the
          Operator to aid users with manual deployments and easy experimentation.
          subctl greatly simplifies the deployment of Submariner, and is therefore the recommended deployment method.
          For complete information about subctl, please refer to [this page](https://submariner.io/operations/deployment/subctl).
          In addition to Operator and subctl, Submariner also provides [Helm Charts](https://submariner.io/operations/deployment/helm).

          On the broker cluster:
          1. Create the broker namespace called `submariner-k8s-broker`.
          2. Apply the broker RBAC definitions:

              ```shell
              git clone --depth 1 --single-branch --branch release-0.22 https://github.com/submariner-io/submariner-operator
              kubectl apply -k submariner-operator/config/broker -n submariner-k8s-broker
              ```

          3. Install the Submariner Operator from the catalog.
          4. Create a new `Broker` custom resource named **submariner-broker**.

          On connected clusters:
          1. Install the Submariner Operator from the catalog.
          2. Create a new `Submariner` custom resource named **submariner**.

          The following values can be specified for the **Broker** CR:
          * **defaultCustomDomains**: List of domains to use for multicluster service discovery.
          * **defaultGlobalnetClusterSize**: Default cluster size for GlobalCIDR allocated to each cluster (amount of global IPs).
          * **globalnetEnabled**: Enable support for Overlapping CIDRs in connecting clusters (default disabled).
          * **globalnetCIDRRange**: GlobalCIDR supernet range for allocating GlobalCIDRs to each cluster.
          * **components**: List of components to be installed [service-discovery, connectivity].

          The following values can be specified for the **Submariner** CR:
          * **namespace**: The namespace to install in.
          * **serviceCIDR**: The service CIDR.
          * **clusterCIDR**: The cluster CIDR.
          * **clusterID**: The cluster ID used to identify the tunnels.
          * **colorCodes**: The color code(s) for the cluster.
          * **debug**: *'true'* to enable operator debugging information - verbose logging.
          * **natEnabled**: *'true'* if there is NAT between clusters. Typically *'true'* in public cloud or mixed on-prem/public cloud environments and *'false'* when all clusters are on-prem.
          * **broker**: This must be *k8s* currently.
          * **brokerK8sApiServer**: The broker API server URL.
              To retrieve it run the following command on the broker cluster:

              `kubectl -n default get endpoints kubernetes -o
              jsonpath="{.subsets[0].addresses[0].ip}:{.subsets[0].ports[?(@.name=='https')].port}"`

          * **brokerK8sApiServerToken**: The broker API server token.
              To retrieve the token run the following command on the broker cluster, assuming the broker is running in the
              *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data.token != null)] | .[0].data.token' | base64 --decode`

          * **brokerK8sRemoteNamespace**: The broker namespace.
          * **brokerK8sCA**: The broker certificate authority.
              To retrieve the broker CA run the following command on the broker cluster, assuming the broker is running in
              the *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data."ca.crt" != null)] | .[0].data."ca.crt"' | base64 --decode`

          * **ceIPSecPSK**: The IPsec Pre-Shared Key which must be identical in all route agents across the cluster.
              To generate a unique PSK run the following command on your machine:

              `dd if=/dev/urandom count=64 bs=8 | LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 64 | head -n 1`

          * **ceIPSecDebug**: *'true'* to enable logging IPsec debugging information - verbose logging from the IPsec daemon.
          * **ceIPSecIKEPort**: The IPsec IKE port (500 usually).
          * **ceIPSecNATTPort**: The IPsec NAT traversal port (4500 usually).
          * **repository**: The container repository to use.
          * **version**: The container version to use.
          * **imageOverrides**: A string map that overrides the images by defining a path for each component.
                                This field is meant to be used by CI, development or testing.

            **example:**

            ```yaml
            imageOverrides:
              submariner-route-agent=my_repo/my_custom_image:my_tag
              submariner-globalnet=my_repo/my_custom_image:my_tag
            ```
        displayName: Submariner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multi-cluster
        - ipsec
        - tunnel
        - submariner-operator
        links:
        - name: Website
          url: https://submariner.io
        - name: GitHub
          url: https://github.com/submariner-io
        - name: Slack
          url: https://kubernetes.slack.com/archives/C010RJV694M
        - name: YouTube
          url: https://www.youtube.com/channel/UCZ3brSgl2v4boglZoeChClQ/videos
        - name: Twitter
          url: https://twitter.com/submarinerio
        maintainers:
        - email: submariner-dev@googlegroups.com
          name: Submariner project
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: submariner.io
        relatedImages:
        - registry.redhat.io/rhacm2/nettest-rhel9@sha256:81fd7584951aaf7bcb86d4038089675e3ec4da3791b2a49fe73ae55f217f4303
        - registry.redhat.io/rhacm2/submariner-gateway-rhel9@sha256:1112c506ac82bbd14bf970a859690529b2165945c337b5da04a2e963bb7f6a77
        - registry.redhat.io/rhacm2/submariner-globalnet-rhel9@sha256:ef127d44c1bfa39e2e301eca2a1de736df43285b66e3b766860f372fd2cfb591
        - registry.redhat.io/rhacm2/submariner-rhel9-operator@sha256:3f71495eab9e2f82f74a21df6143c799bfb8a0038aef4e97b766a498bb535c16
        - registry.redhat.io/rhacm2/submariner-route-agent-rhel9@sha256:096c3fa7333d2cca1984d2852af84ca6735de3ca6fabcdd1aff25fee372acf98
        - registry.redhat.io/rhacm2/submariner-operator-bundle@sha256:bb851aac8a0b44e3322da36c4349723e564ff8ce489210859210eddcb8f3c425
        - registry.redhat.io/rhacm2/lighthouse-agent-rhel9@sha256:5ee9a8aff7bd566cc4633c5191c40d7370349abdbfe19ac6e0588956f879c0c8
        - registry.redhat.io/rhacm2/lighthouse-coredns-rhel9@sha256:cd29afa47105e0b49b0f640651c16a73d1190c84fb28aa6feee75d5e89b40b2c
        version: 0.22.0
      entries:
      - name: submariner.v0.22.0
        version: 0.22.0
      name: stable-0.22
    defaultChannel: stable-0.22
    packageName: submariner
    provider:
      name: submariner.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Instana
      provider-url: ""
    name: instana-agent-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: instana-agent-operator.v2.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "instana.io/v1",
                "kind": "InstanaAgent",
                "metadata": {
                  "name": "instana-agent",
                  "namespace": "instana-agent"
                },
                "spec": {
                  "agent": {
                    "configuration_yaml": "# You can leave this empty, or use this to configure your instana agent.\n# See https://github.com/instana/instana-agent-operator/blob/main/config/samples/instana_v1_extended_instanaagent.yaml for the extended version.\n",
                    "endpointHost": "ingress-red-saas.instana.io",
                    "endpointPort": "443",
                    "env": {},
                    "key": "replace-key"
                  },
                  "cluster": {
                    "name": "my-cluster"
                  },
                  "opentelemetry": {
                    "grpc": {
                      "enabled": true
                    },
                    "http": {
                      "enabled": true
                    }
                  },
                  "zone": {
                    "name": "edited-zone"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring,Logging & Tracing,OpenShift Optional
          certified: "false"
          containerImage: icr.io/instana/instana-agent-operator@sha256:c81463e192b47a673797e762c87587bf6646b3d6b48b628236e9fdd6337f6a9b
          description: Fully automated Application Performance Monitoring (APM) for
            microservices.
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/instana/instana-agent-operator
          support: Instana
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InstanaAgent is the Schema for the agents API
            displayName: Instana Agent
            kind: InstanaAgent
            name: agents.instana.io
            version: v1
          - description: InstanaAgentRemote is the Schema for the agents API
            displayName: Instana Agent Remote
            kind: InstanaAgentRemote
            name: agentsremote.instana.io
            version: v1
        description: |
          # Instana

          Instana is an [APM solution](https://www.instana.com/product-overview/) built for microservices that enables IT Ops to build applications faster and deliver higher quality services by automating monitoring, tracing and root cause analysis. The solution is optimized for [Kubernetes](https://www.instana.com/automatic-kubernetes-monitoring/) and [OpenShift](https://www.instana.com/blog/automatic-root-cause-analysis-for-openshift-applications/).

          ## Instana Agent Operator

          This is the Kubernetes Operator for installing the Instana Agent on Kubernetes or OpenShift.

          ## Prerequisites for OpenShift

          Before the agent will be able to run in OpenShift, you need to perform a couple of extra configuration steps.

          You need to set up a project for the Instana Agent and configure it's permissions.

          The project you create here needs to be the namespace where you create the Instana Agent custom resource that the operator will use to deploy the agent.

          For example, create the `instana-agent` project:

              oc new-project instana-agent

          Then, ensure the `instana-agent` service account is in the privileged security context:

              oc adm policy add-scc-to-user privileged -z instana-agent

          The `instana-agent-remote` service account must be allowed to use any userid:

              oc adm policy add-scc-to-user anyuid -z instana-agent-remote -n instana-agent

          This service account will be created by the operator.

          Now you can proceed with installing the operator for the Instana agent.

          ## Installation and Configuration

          First, install this operator from [OperatorHub.io](https://operatorhub.io/), [OpenShift Container Platform](https://www.openshift.com/), or [OKD](https://www.okd.io/).

          Second, create a custom resource with the agent configuration in the target namespace (for now, this MUST always be the `instana-agent` namespace). The operator will pick up the custom resource and install the Instana agent accordingly.

          The following is a minimal template of the custom resource:

          ```yaml
          apiVersion: instana.io/v1
          kind: InstanaAgent
          metadata:
            name: instana-agent
            namespace: instana-agent
          spec:
            zone:
              name: my-zone # (optional) name of the zone of the host
            cluster:
              name: replace-me # replace with the name of your Kubernetes cluster
            agent:
              key: replace-me # replace with your Instana agent key
              endpointHost: ingress-red-saas.instana.io # the monitoring ingress endpoint
              endpointPort: "443" # the monitoring ingress endpoint port, wrapped in quotes
              env:
                INSTANA_AGENT_TAGS: example
              configuration_yaml: |
                # You can leave this empty, or use this to configure your instana agent.
                # See https://ibm.biz/monitoring-k8s
          ```

          Save the template in a file `instana-agent.yaml` and edit the following values:

          * If your target namespace is not `instana-agent`, replace the `namespace:` accordingly.
          * `agent.key` must be set with your Instana agent key.
          * `agent.endpointHost` must be set with the monitoring ingress endpoint, generally either `saas-us-west-2.instana.io` or `saas-eu-west-1.instana.io`.
          * `agent.endpointPort` must be set with the monitoring ingress port, generally "443" (wrapped in quotes).
          * `zone.name` should be set with the name of the Kubernetes cluster that is be displayed in Instana.

          For advanced configuration, you can edit the contents of the `configuration.yaml` file. View documentation [here](https://ibm.biz/monitoring-k8s).

          Apply the custom resource with `kubectl apply -f instana-agent.yaml`. After some time, you should see `instana-agent` Pods being created on each node of your cluster, and your cluster should show on the infrastructure map on your Instana Web interface.

          In addition to the InstanaAgent custom resource, a remote agent can be deployed. This agent will not monitor workload running inside the cluster, but can deploy a single replica of an agent which can get an independent configuration for running remote monitoring for certain sensors.

          ```yaml
          apiVersion: instana.io/v1
          kind: InstanaAgentRemote
          metadata:
            name: remote-agent
            namespace: "instana-agent"
          spec:
            zone:
              name: edited-zone # name of the zone of the host
            hostname:
              name: use-custom-hostname-for-remote-agent # (optional) give your remote agent pod a custom hostname
            agent:
              key: replace-key # replace with your Instana agent key
              endpointHost: ingress-red-saas.instana.io
              endpointPort: "443"
              env: {}
              configuration_yaml: |
                # You can leave this empty, or use this to configure your instana agent.
                # See https://github.com/instana/instana-agent-operator/blob/main/config/samples/instana_v1_extended_instanaagent.yaml for the extended version.
          ```

          ## Uninstalling

          In order to uninstall the Instana agent, simply remove the custom resource with `kubectl delete -f instana-agent.yaml`.

          ## Source Code

          The Instana agent operator is an open source project hosted on [https://github.com/instana/instana-agent-operator](https://github.com/instana/instana-agent-operator/).
        displayName: Instana Agent Operator
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - APM
        - Instana
        links:
        - name: GitHub Repository
          url: https://github.com/instana/instana-agent-operator
        maintainers:
        - email: support@instana.com
          name: Instana
        maturity: stable
        minKubeVersion: 1.11.0
        provider:
          name: Instana
        relatedImages:
        - icr.io/instana/agent@sha256:cafef53efc0baa0e99c3a7fef619d3d8f0311e8ca38c141052c98d9a33ba4f1c
        - icr.io/instana/instana-agent-operator@sha256:c81463e192b47a673797e762c87587bf6646b3d6b48b628236e9fdd6337f6a9b
        - registry.connect.redhat.com/instana/instana-agent-operator-bundle@sha256:18267a5e3a10369ddc462f52edf50ff20023ae5f123b867648fb53383d525a8e
        version: 2.2.4
      entries:
      - name: instana-agent-operator.v2.2.4
        version: 2.2.4
      - name: instana-agent-operator.v2.2.2
        version: 2.2.2
      - name: instana-agent-operator.v2.2.1
        version: 2.2.1
      - name: instana-agent-operator.v2.2.0
        version: 2.2.0
      - name: instana-agent-operator.v2.1.36
        version: 2.1.36
      - name: instana-agent-operator.v2.1.35
        version: 2.1.35
      - name: instana-agent-operator.v2.1.34
        version: 2.1.34
      - name: instana-agent-operator.v2.1.33
        version: 2.1.33
      - name: instana-agent-operator.v2.1.32
        version: 2.1.32
      - name: instana-agent-operator.v2.1.31
        version: 2.1.31
      - name: instana-agent-operator.v2.1.30
        version: 2.1.30
      - name: instana-agent-operator.v2.1.29
        version: 2.1.29
      - name: instana-agent-operator.v2.1.28
        version: 2.1.28
      - name: instana-agent-operator.v2.1.27
        version: 2.1.27
      - name: instana-agent-operator.v2.1.25
        version: 2.1.25
      - name: instana-agent-operator.v2.1.24
        version: 2.1.24
      - name: instana-agent-operator.v2.1.23
        version: 2.1.23
      - name: instana-agent-operator.v2.1.22
        version: 2.1.22
      - name: instana-agent-operator.v2.1.21
        version: 2.1.21
      - name: instana-agent-operator.v2.1.20
        version: 2.1.20
      - name: instana-agent-operator.v2.1.19
        version: 2.1.19
      - name: instana-agent-operator.v2.1.18
        version: 2.1.18
      - name: instana-agent-operator.v2.1.17
        version: 2.1.17
      - name: instana-agent-operator.v2.1.16
        version: 2.1.16
      - name: instana-agent-operator.v2.1.15
        version: 2.1.15
      - name: instana-agent-operator.v2.1.14
        version: 2.1.14
      - name: instana-agent-operator.v2.1.13
        version: 2.1.13
      - name: instana-agent-operator.v2.1.12
        version: 2.1.12
      - name: instana-agent-operator.v2.1.11
        version: 2.1.11
      - name: instana-agent-operator.v2.1.10
        version: 2.1.10
      - name: instana-agent-operator.v2.1.9
        version: 2.1.9
      - name: instana-agent-operator.v2.1.8
        version: 2.1.8
      - name: instana-agent-operator.v2.1.7
        version: 2.1.7
      - name: instana-agent-operator.v2.1.6
        version: 2.1.6
      - name: instana-agent-operator.v2.1.5
        version: 2.1.5
      - name: instana-agent-operator.v2.1.4
        version: 2.1.4
      - name: instana-agent-operator.v2.1.3
        version: 2.1.3
      - name: instana-agent-operator.v2.1.2
        version: 2.1.2
      - name: instana-agent-operator.v2.1.1
        version: 2.1.1
      - name: instana-agent-operator.v2.1.0
        version: 2.1.0
      - name: instana-agent-operator.v2.0.32
        version: 2.0.32
      - name: instana-agent-operator.v2.0.31
        version: 2.0.31
      - name: instana-agent-operator.v2.0.30
        version: 2.0.30
      - name: instana-agent-operator.v2.0.27
        version: 2.0.27
      - name: instana-agent-operator.v2.0.19
        version: 2.0.19
      - name: instana-agent-operator.v2.0.18
        version: 2.0.18
      - name: instana-agent-operator.v2.0.17
        version: 2.0.17
      - name: instana-agent-operator.v2.0.13
        version: 2.0.13
      - name: instana-agent-operator.v2.0.12
        version: 2.0.12
      - name: instana-agent-operator.v2.0.11
        version: 2.0.11
      - name: instana-agent-operator.v2.0.10
        version: 2.0.10
      - name: instana-agent-operator.v2.0.9
        version: 2.0.9
      - name: instana-agent-operator.v2.0.8
        version: 2.0.8
      - name: instana-agent-operator.v2.0.7
        version: 2.0.7
      - name: instana-agent-operator.v2.0.5
        version: 2.0.5
      - name: instana-agent-operator.v2.0.4
        version: 2.0.4
      name: stable
    defaultChannel: stable
    packageName: instana-agent-operator
    provider:
      name: Instana
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: The Jumpstarter Community
      provider-url: https://jumpstarter.dev
    name: jumpstarter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jumpstarter-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "Client",
                "metadata": {
                  "labels": {
                    "type": "developer"
                  },
                  "name": "client-sample"
                },
                "spec": {
                  "username": "keycloak:user-name-in-keycloak"
                }
              },
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "Exporter",
                "metadata": {
                  "labels": {
                    "type": "nxp-imx8mm-evk"
                  },
                  "name": "exporter-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "ExporterAccessPolicy",
                "metadata": {
                  "name": "exporteraccesspolicy-sample"
                },
                "spec": {
                  "exporterSelector": {
                    "matchLabels": {
                      "lab": "jumpstarter"
                    }
                  },
                  "policies": [
                    {
                      "from": [
                        {
                          "clientSelector": {
                            "matchLabels": {
                              "team": "platform"
                            }
                          }
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "Lease",
                "metadata": {
                  "name": "lease-sample"
                },
                "spec": {
                  "clientRef": {
                    "name": "client-sample"
                  },
                  "duration": "1h",
                  "selector": {
                    "matchLabels": {
                      "board": "rcar-s4"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.jumpstarter.dev/v1alpha1",
                "kind": "Jumpstarter",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "jumpstarter-operator"
                  },
                  "name": "jumpstarter-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery
          com.redhat.openshift.versions: v4.18-v4.21
          containerImage: quay.io/jumpstarter-dev/jumpstarter-operator:latest
          createdAt: "2025-11-28T14:46:02Z"
          description: Jumpstarter is a cloud-native framework for Hardware-in-the-Loop
            (HIL) testing and development
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/jumpstarter-dev/jumpstarter-controller
          support: The Jumpstarter Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |
              Client is the schema for the Clients API. Clients represent a user that can access the Jumpstarter Controller. Clients can be associated to external identity OIDC providers by providing Username, i.e. Spec.Username: "kc:user-name-in-keycloak"
            displayName: Client
            kind: Client
            name: clients.jumpstarter.dev
            version: v1alpha1
          - description: Exporter access policies define how exporters can be accessed
              by clients.
            displayName: ExporterAccessPolicy
            kind: ExporterAccessPolicy
            name: exporteraccesspolicies.jumpstarter.dev
            version: v1alpha1
          - description: |
              Exporters represent the services that connect to the physical or virtual devices. They are responsible for providing the access to the devices and for the communication with the devices. A jumpstarter exporter service should be ran on a linux machine, or a pod, with the exporter credentials and the right configuration for this resource to become online. For more information see the Jumpstarter documentation: https://jumpstarter.dev/main/introduction/exporters.html#exporters
            displayName: Exporter
            kind: Exporter
            name: exporters.jumpstarter.dev
            version: v1alpha1
          - description: Jumpstarter is the Schema for the jumpstarters API.
            displayName: Jumpstarter
            kind: Jumpstarter
            name: jumpstarters.operator.jumpstarter.dev
            version: v1alpha1
          - description: |
              Lease is the schema for the Leases API. Leases represent a request for a specific exporter by a client. The lease is acquired by the client and the exporter is assigned to the lease. The lease is released by the client when the client is done with the exporter. For more information see the Jumpstarter documentation:
                https://jumpstarter.dev/main/reference/man-pages/jmp.html#jmp-create-lease
                https://jumpstarter.dev/main/reference/man-pages/jmp.html#jmp-shell
            displayName: Lease
            kind: Lease
            name: leases.jumpstarter.dev
            version: v1alpha1
        description: Jumpstarter is a cloud-native framework for Hardware-in-the-Loop
          (HIL) automation that bridges the gap between embedded development workflows
          and real-world deployment environments. This operator installs and manages
          the Jumpstarter Controller, which acts as the central brain for your testing
          infrastructure. It orchestrates secure, shared access to physical hardware
          and virtual devices (represented as "exporters") directly from your Kubernetes
          or OpenShift cluster.
        displayName: Jumpstarter Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hil
        - hardware-in-the-loop
        - hardware
        - device
        - embedded
        - testing
        - framework
        links:
        - name: Jumpstarter Operator
          url: https://jumpstarter.dev/main/getting-started/installation/service/index.html
        maintainers:
        - email: majopela@redhat.com
          name: Miguel Angel Ajo
        - email: bzlotnik@redhat.com
          name: Benny Zlotnik
        - email: bkhizgiy@redhat.com
          name: Bella Khizgiyaev
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: The Jumpstarter Community
          url: https://jumpstarter.dev
        relatedImages:
        - quay.io/jumpstarter-dev/jumpstarter-operator:latest
        - quay.io/community-operator-pipeline-prod/jumpstarter-operator:0.8.0
        version: 0.8.0
      entries:
      - name: jumpstarter-operator.v0.8.0
        version: 0.8.0
      name: alpha
    defaultChannel: alpha
    packageName: jumpstarter-operator
    provider:
      name: The Jumpstarter Community
      url: https://jumpstarter.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com
    name: ibm-security-verify-access-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-security-verify-access-operator.v23.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ibm.com/v1",
                "kind": "IBMSecurityVerifyAccess",
                "metadata": {
                  "name": "isva-sample"
                },
                "spec": {
                  "image": "icr.io/isva/verify-access-wrp:10.0.5.0",
                  "instance": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: icr.io/isva/verify-access-operator:23.3.0
          createdAt: Mon Mar  20 00:59:34 UTC 2023
          description: The IBM Security Verify Access Operator manages the lifecycle
            of IBM Security Verify Access worker containers.
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/IBM-Security/verify-access-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBMSecurityVerifyAccess is the Schema for the ibmsecurityverifyaccesses
              API.
            displayName: IBMSecurity Verify Access
            kind: IBMSecurityVerifyAccess
            name: ibmsecurityverifyaccesses.ibm.com
            version: v1
        description: |+
          In a world of highly fragmented access management environments, [IBM Security Verify Access](https://www.ibm.com/au-en/products/verify-access) helps you simplify your users' access while more securely adopting web, mobile and cloud technologies. This solution helps you strike a balance between usability and security through the use of risk-based access, single sign-on, integrated access management control, identity federation and its mobile multi-factor authentication capability, IBM Verify. Take back control of your access management with IBM Security Verify Access.

          The IBM Security Verify Access operator provides lifecycle management of the lightweight containers which are used to protect an environment, namely:
          * [Web Reverse Proxy](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-web-reverse-proxy)
          * [Runtime](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-runtime)
          * [Distributed Session Cache](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-distributed-session-cache)

          The operator will manage the deployment of these lightweight IBM Security Verify Access worker containers, and also control the rolling restart of these containers when a configuration snapshot is updated.

          See the project [Readme](https://github.com/IBM-Security/verify-access-operator/blob/master/README.md) for further information and details.

        displayName: IBM Security Verify Access Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - identity and access
        - security
        links:
        - name: Verify Access Product Information
          url: https://www.ibm.com/au-en/products/verify-access
        - name: Verify Access Documentation
          url: https://www.ibm.com/docs/en/sva
        maintainers:
        - email: isamdev@au1.ibm.com
          name: Verify Access Development Team
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: IBM
          url: https://www.ibm.com
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - icr.io/isva/verify-access-operator:23.3.0
        - quay.io/openshift-community-operators/ibm-security-verify-access-operator@sha256:ec3970c7a6a5ee3ac863dfe6f16234fe19cd7ea4a541fd0cbae9a8183d0763a2
        version: 23.3.0
      entries:
      - name: ibm-security-verify-access-operator.v23.3.0
        version: 23.3.0
      - name: ibm-security-verify-access-operator.v22.10.0
        version: 22.10.0
      name: stable
    defaultChannel: stable
    packageName: ibm-security-verify-access-operator
    provider:
      name: IBM
      url: https://www.ibm.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: unsupported
      operatorframework.io/arch.ppc64le: unsupported
      operatorframework.io/arch.s390x: unsupported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: mta-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mta-operator.v6.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:f5d10cd2528bebf5094c7744e47d9de6fe827fd09024c5ffc0e1b74f1a6cc3b4
          createdAt: "2023-04-26T14:04:20Z"
          description: MTA contains tools that support the modernization and migration
            of applications to Kubernetes and OpenShift
          olm.skipRange: '>=0.0.0 <6.0.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/tackle2-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is a collection of tools that supports large-scale application modernization and migration projects to Kubernetes and OpenShift.


          Migration Toolkit for Applications allows users to maintain their portfolio of applications with a full set of metadata and to assess their suitability for modernization leveraging a questionnaire based approach.


          ### Install

          By default, MTA requires a RWX capable storage class for caching purposes, this can be disabled via the rwx_supported parameter in Tackle CR.

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:a66dd030eb99207b6aaacc6b7c7cb5182901da836ebf50373c14f8e5ecb7b642
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:f5d10cd2528bebf5094c7744e47d9de6fe827fd09024c5ffc0e1b74f1a6cc3b4
        - registry.redhat.io/mta/mta-ui-rhel8@sha256:de6cb95ce3663922ecc725b186876b043a9c7794e95510459ffbcba7d668fc26
        - registry.redhat.io/mta/mta-windup-addon-rhel8@sha256:a4200fc0a39df67eae31c53ee9ae0c05769fb410d0312ebd0bbf8bf1567b2a48
        - registry.redhat.io/rhel8/postgresql-12@sha256:3a69efa85af6a6f95665eca69085b007fa1fcb645a37f356895aeb4c9527a621
        - registry.redhat.io/mta/mta-admin-addon-rhel8@sha256:812b8dc621a06bb99cf2c59abb8257da3ceeb165c563e14d258e69803a557cc8
        - registry.redhat.io/mta/mta-hub-rhel8@sha256:c75e1d9d3307d95be392a53440d9123601a6ada3693e3f2573e03022565e4339
        - registry.redhat.io/mta/mta-operator-bundle@sha256:65c0932bfda32b1e62be9edd0f96bb4d6e41e302a2e8080fc6cc794ee5c52276
        version: 6.0.3
      entries:
      - name: mta-operator.v6.0.3
        version: 6.0.3
      - name: mta-operator.v6.0.2
        version: 6.0.2
      - name: mta-operator.v6.0.1
        version: 6.0.1
      - name: mta-operator.v6.0.0
        version: 6.0.0
      name: stable-v6.0
    - currentCSV: mta-operator.v6.1.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:6da71d4caecfbe049e63576d4325d4919002196da2e875f79703d8ff0d5a1705
          createdAt: "2023-10-26T15:29:26Z"
          description: MTA contains tools that support the modernization and migration
            of applications to Kubernetes and OpenShift
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=6.0.0 <6.1.4'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/tackle2-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is a collection of tools that supports large-scale application modernization and migration projects to Kubernetes and OpenShift.


          Migration Toolkit for Applications allows users to maintain their portfolio of applications with a full set of metadata and to assess their suitability for modernization leveraging a questionnaire based approach.


          ### Install

          By default, MTA requires a RWX capable storage class for caching purposes, this can be disabled via the rwx_supported parameter in Tackle CR.

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:6da71d4caecfbe049e63576d4325d4919002196da2e875f79703d8ff0d5a1705
        - registry.redhat.io/mta/mta-ui-rhel8@sha256:3845d6d246003ebeb49bcf1d95d6be2eb9cd05a280a5bf8320b201e878a41427
        - registry.redhat.io/mta/mta-windup-addon-rhel8@sha256:6bcaf8e8b63e169652d6568d77e91a289084e621a586105a2d429b5726569058
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/mta/mta-hub-rhel8@sha256:32624f2bddfe8b6b9c6c1c3f2be541c8c61be29680d13b6d446e8874bdf8e219
        - registry.redhat.io/mta/mta-operator-bundle@sha256:f3d585e24d65905b2e9f594dcdb67721aa95057ab7587ae531c3487aa2f94e53
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:1df881da1e20c2501caf53e1cf59b6b366281d842f0948ca5f91694ec1db829d
        version: 6.1.4
      entries:
      - name: mta-operator.v6.1.4
        version: 6.1.4
      - name: mta-operator.v6.1.3
        version: 6.1.3
      - name: mta-operator.v6.1.2
        version: 6.1.2
      - name: mta-operator.v6.1.1
        version: 6.1.1
      - name: mta-operator.v6.1.0
        version: 6.1.0
      name: stable-v6.1
    - currentCSV: mta-operator.v6.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:6938c3fc6dd8fb032e1765fc11d9586dbfd1aaba4b423b0d87da4120ee0bb60d
          createdAt: "2024-06-10T22:12:58Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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.skipRange: '>=6.0.0 <6.2.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-windup-addon-rhel9@sha256:d1f4939b92dd13c15cb7344ec47a571669f6d108dc2e7d795ce29350f2cb3838
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e52f88555004b575104691fe96f758ee5e6ec832b99107a5a18fc8379d29afda
        - registry.redhat.io/rhel8/postgresql-12@sha256:c4716bee5e2cf2e43698bc99e5aa42f16a0f2d68c1fbdcd3602696bf88e408dc
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:e59725832547e80cab58077a1b6e42c313a4057621defa841f35c0a7627f149d
        - registry.redhat.io/mta/mta-operator-bundle@sha256:a13643117c2867351718a872f7f1b2350c67855ca73a727a1dc140754ffe6589
        - registry.redhat.io/mta/mta-pathfinder-rhel9@sha256:a2a8b6d204d99494a6a005e8cb1fbd92afdc84dc01e4c1de4ad7d8798bd83741
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:6938c3fc6dd8fb032e1765fc11d9586dbfd1aaba4b423b0d87da4120ee0bb60d
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:c35f3ed429a7d351cb8c2d07600b4ad35615a5ba08e5cc9f8b9bd504aea3f7ee
        version: 6.2.3
      entries:
      - name: mta-operator.v6.2.3
        version: 6.2.3
      - name: mta-operator.v6.2.2
        version: 6.2.2
      - name: mta-operator.v6.2.1
        version: 6.2.1
      - name: mta-operator.v6.2.0
        version: 6.2.0
      name: stable-v6.2
    - currentCSV: mta-operator.v7.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:268ecf5efc51af71f9b2bc2d01b410f8cfcf81a948b82d2d476fef6c0cd3e033
          createdAt: "2024-05-10T19:37:30Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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.skipRange: '>=6.2.0 <7.0.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:18c611415589a093e16e9c2f2fba9f3c83d9514f79c8e4fde9704ef0679ea4d5
        - registry.redhat.io/mta/mta-operator-bundle@sha256:9eeb43af2bcab84f5261d1575f7c897903a7696dba011d256abffa1fe850eba2
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:0e1ec99af5666a060176adc52612f20209e3398a9a5a2aa1dcff11ef260b2006
        - registry.redhat.io/mta/mta-windup-shim-rhel9@sha256:e2ea89055936d7ad229b5e890c6ba234c6cb22d8b688515ed4d6a34848efea83
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:af879d8b9b5e396a5308fb675a1d6dba6d70151b9bdbe7829362e081a6adab1c
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:1b5e016046d93b6a2674d63f08e0a46f8050e785bd58fd94ba7a70487efe7e2a
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:d554cc36748fc05e30eb10e6fe816ff6aab2fe07b61cc60e9d93de5c3cf17748
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:268ecf5efc51af71f9b2bc2d01b410f8cfcf81a948b82d2d476fef6c0cd3e033
        - registry.redhat.io/rhel8/postgresql-12@sha256:da619f6617d99790b4fe00fdb23ab4aea0cdb0592590162d51b3ef94aca01a7b
        - registry.redhat.io/mta/mta-analyzer-lsp-rhel9@sha256:0c8f59f35a950ea8b45f16cf71362128ccc335b58a996a099384fd737dd6ff90
        version: 7.0.3
      entries:
      - name: mta-operator.v7.0.3
        version: 7.0.3
      - name: mta-operator.v7.0.2
        version: 7.0.2
      - name: mta-operator.v7.0.1
        version: 7.0.1
      - name: mta-operator.v7.0.0
        version: 7.0.0
      name: stable-v7.0
    - currentCSV: mta-operator.v7.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:08b33b44140397785f8aa1b736796e09cf6e49ac30cf7c386a2fbd8b678d47b1
          createdAt: "2024-09-16T23:45:42Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          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.skipRange: '>=6.2.0 <7.1.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:30a3b1d5a70dec74a9253ca34f18bd8f2cdfaa68b85b0b25dc395158c2596330
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:e4e70201df23c9e1168646d3c6013a8ffa22481a85b07df491f240310c13ebe1
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel8@sha256:582f28e609c1a0466d30c5586d6b6023f1b1de3c28f76cabb498322914ab24d4
        - registry.redhat.io/mta/mta-operator-bundle@sha256:6aef520983fe01351886e108d32b998b20e74116fc0280c754a914bfad03d0bf
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:ee2c8ce2af0be097353758d9ee7eaa7e6b3fcd5f2bf5e04280e450e2b619d2d8
        - registry.redhat.io/rhel8/postgresql-15@sha256:16faf1ee82382263408f713ee4002f47ff13c82d4545e8a69d5b0ebd1d289330
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:4ad19b50cdd6be21e010155f2026abf0dc865e72aac1353e35bbb5eeb8320a4e
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:16cb28d683159ba71a5d7c233404ac1d6b7a07a374b46d24effe551a13a596c3
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:08b33b44140397785f8aa1b736796e09cf6e49ac30cf7c386a2fbd8b678d47b1
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:23c97ac122eb7cd1e953df8da968da420f6db8708baf772759517aca4929748b
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ac38f1c3d34bc718928eb20743835c99783d846f63a3197d13839ea22f1634c8
        version: 7.1.1
      entries:
      - name: mta-operator.v7.1.1
        version: 7.1.1
      - name: mta-operator.v7.1.0
        version: 7.1.0
      name: stable-v7.1
    - currentCSV: mta-operator.v7.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:917d6cd534c158f6c4a7e9c83f0c66fa85ba81037c352d8a039e198581126a7f
          createdAt: "2025-06-17T16:04:15Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          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.skipRange: '>=6.2.0 <7.2.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:2dfc51d5398a90e73273b3e332f70d7ed94bac05e12b142fba22104ecc929436
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel8@sha256:c0643c05833dd1b70ed361bf56c46f56ed6536aac3106b92f0d85b83da1b9d15
        - registry.redhat.io/rhel8/postgresql-15@sha256:dd4aec2775da1cf187c0839384cb16d69268e9781d4330874bbc865f98153a7a
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:70ff3b5e429a8fe0c68752ee05c47ead885b59bf9c8d7235337801270e7fc1de
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:b10fdc78c6f453a34a3d306313dc29fcb3152688a6a1d54cd236d00d9fab88af
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:917d6cd534c158f6c4a7e9c83f0c66fa85ba81037c352d8a039e198581126a7f
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:9d6c02f6463771e747a30126de95fc0728fd95fff4ddfa6c70d828c55e0b6790
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:4cde2c2df482293bd4d6b86a344336e13d2f9f81b29323698f603e656b14b190
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:c9447659195b9eebb8f8a265fd5052ca9b2611d57080017448297a33409863c6
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:10ef4b218d603432508b5e1f3685fb32a80cbce6c327e35952cdcccb0465468b
        - registry.redhat.io/mta/mta-operator-bundle@sha256:0ed10e35f45a140e21d826bee71b3ab96e67f1b4dc8c2f7f1676380fa51b67fe
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        version: 7.2.3
      entries:
      - name: mta-operator.v7.2.3
        version: 7.2.3
      - name: mta-operator.v7.2.2
        version: 7.2.2
      - name: mta-operator.v7.2.1
        version: 7.2.1
      - name: mta-operator.v7.2.0
        version: 7.2.0
      name: stable-v7.2
    - currentCSV: mta-operator.v7.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel9-operator@sha256:6abd6541a955543207c1ff4b903928debcc89dd6ea3d7aeaa3e47465849f7b37
          createdAt: "2025-08-15T16:32:16Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=6.2.0 <7.3.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/mta/mta-operator-bundle@sha256:68953a2a721309fd103e09f3171d0c9d50020413631b575f1a44602a5d2ac855
        - registry.redhat.io/mta/mta-rhel9-operator@sha256:6abd6541a955543207c1ff4b903928debcc89dd6ea3d7aeaa3e47465849f7b37
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel9@sha256:9748d954ad8654ac203257286497ccf19cfdfa211fee40449cbe732ff48c1176
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:b2ff154a4b4ead22311005b7115c02346928b5ebf77d776ef909ad4af1f350bc
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:32328fc0459099ef1de0f92e064c15d29a46d88dfe2f54c88f822d44ab82e3f4
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:072f676323e9abcb2ff22eb5e7a70f6681e9d885d8666ddd81060fbad54c443e
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ef57a58e609e244333d35681a164a1d3bf382c0eee37d33c993b018439814198
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:a93cbb575ff59bc8015602165645204b9ca56e327308b11a3d75b651701db875
        - registry.redhat.io/rhel8/postgresql-15@sha256:854710b428c4c1132c448cbe9ad30087a8a4b3c33ae9c0c3a4de21a15c0ae642
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:6118c1db15667851f26eb2acf6060e045ed9065459e3e649bbdd0e2625d825bd
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:8ca00460b2fb64583a247f5b906c19743b7732b60ff8215f1baec12a766c61d1
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:80aa13813fe121da49e166d81d09d63749393f3375c3b96d762d0b09c6685ca9
        version: 7.3.2
      entries:
      - name: mta-operator.v7.3.2
        version: 7.3.2
      - name: mta-operator.v7.3.1
        version: 7.3.1
      - name: mta-operator.v7.3.0
        version: 7.3.0
      name: stable-v7.3
    - currentCSV: mta-operator.v8.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel9-operator@sha256:fea69ccd89a0632f2ae00b2d90b271bfd1bbcd48733f2b631e8e9b5cd0d3d4a2
          createdAt: "2025-11-19T23:58:24Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=7.3.0 <8.0.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Schema
            displayName: Schema
            kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:229197ca303eb3bd553accde1c29546916b128ffc7e43961b520c8e375e07c84
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:c97afda6c66fd862738961abd73471f1ef4546eeb2157f13da264205d25e3455
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:8d152829867909dfc98853a837ab50dbe4f09a331718010e15961e5468fc3db3
        - registry.redhat.io/mta/mta-operator-bundle@sha256:75127a29a68c19490c96b4dde9146500c38b640f4ddc1bfcb2183372f3c4ce50
        - registry.redhat.io/mta/mta-solution-server-rhel9@sha256:08161faacb63d0842e8dc4abae5922fa84c4c10dede31bbebd2f7485884644fe
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:95393ff3b7f90c2077947d46e539eefa4305d01679cab40cdc27b4a4404256d9
        - registry.redhat.io/mta/mta-rhel9-operator@sha256:fea69ccd89a0632f2ae00b2d90b271bfd1bbcd48733f2b631e8e9b5cd0d3d4a2
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel9@sha256:968075d405848a097f6ef91a2717091c96108a5a0ed8066c69a19c07e5c4ab17
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:2783f01f9c739c89dff0aa1177f9dd46340bfed269dca948529d269c9b3c37f7
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:acff26b2dc0151443b592c71065c271a2f044c985f32365b093685c5e224f3c7
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:fda12c5ebf9de14d17d5d49239cee9815352f6d7e75926f7226d9f5bb0356909
        - registry.redhat.io/mta/mta-platform-addon-rhel9@sha256:a288d5a156006695854c2e76d09dfe356a31136efb72ba4f85f24940a5aac32f
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/rhel8/postgresql-15@sha256:68fc74033591a7c7608adb438a81ffdf232f199adbc7c92df286097debd815d0
        version: 8.0.1
      entries:
      - name: mta-operator.v8.0.1
        version: 8.0.1
      - name: mta-operator.v8.0.0
        version: 8.0.0
      name: stable-v8.0
    defaultChannel: stable-v8.0
    packageName: mta-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Isovalent
      provider-url: ""
    name: cilium-enterprise
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cilium.v1.10.13-xed86eae
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{"endpointRoutes":{"enabled":true},"kubeProxyReplacement":"probe","cni":{"binPath":"/var/lib/cni/bin","confPath":"/var/run/multus/cni/net.d"},"ipam":{"prometheus":{"serviceMonitor":{"enabled":false}},"mode":"cluster-pool"},"hubble":{"tls":{"enabled":false}}}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Cilium Enterprise - eBPF-based Networking, Security, and Observability
        displayName: Cilium Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Cilium Enterprise Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Cilium Enterprise
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/cilium@sha256:6887537789603946543aaa370a3ec592287a235231bf16aa386e091823285515
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:cc1f0e6b27ccda8a843dfb7fa4a8fef052ba29716646557815677c5d1bea2a1a
        - quay.io/cilium/certgen@sha256:0c2b71bb3469990e7990e7e26243617aa344b5a69a4ce465740b8577f9d48ab9
        - quay.io/isovalent/hubble-enterprise-operator@sha256:0d5e6a5d9c07780c18e5aa81d8f1c95c399bff2d36a44fa5f61ac89a788ca83b
        - quay.io/isovalent/clustermesh-apiserver@sha256:eb3ee3d2cb07e6c5966e4bc2e50615949303be5d5128e156d5c0dbe8404dc093
        - quay.io/isovalent/hubble-enterprise-metadata@sha256:72c7aa3961f14df413569cd156820a45553bb24d393b11246a18bf8b6553e022
        - quay.io/isovalent/hubble-rbac@sha256:03f3304c157024356a6de13c3d91b4506b8e54d587920d80ebcc76cbcfeaeda6
        - quay.io/oauth2-proxy/oauth2-proxy@sha256:ecd26b74a01f2b547ddaed4d32d35f8f5e09c378d5c1fc6cfa63f0adf659ac2b
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:3dbb71004362a70683a5ee9f0916bca75c0d1c351d144677fd9d85bcb2ca8bf7
        - quay.io/cilium/startup-script@sha256:1daf817f34000399fcb5da9a94cb299e2810d2c7a52e51de22ba0d4783b6ce84
        - quay.io/isovalent/hubble-export-fluentd@sha256:05cb13f533f2c89b98a47cd58badda07add54077cd22283ca5028cb39f2e4486
        - quay.io/isovalent/hubble-export-s3@sha256:ce4f71f7f13301133b7d471b87fb81108b2c2da7fc29865ef96bc8431b2be72b
        - quay.io/isovalent/hubble-relay@sha256:9145b03acc954efde54e1ab9da878462526c5e820b83a92e32cc24291f784d33
        - quay.io/isovalent/hubble-ui-enterprise-backend@sha256:e892cba6dafcdf6704df3135a0b38d11894a5f276ace40683e74cb62b9c311d8
        - quay.io/isovalent/hubble-ui-enterprise@sha256:c9921c65892a5293a4f1bef787636d6ae58cec1af65da06862a47e3450afdc6e
        - quay.io/isovalent/operator-generic@sha256:1cc0b0d2e71564ad8759be326c66ea13b4955b9441fb67e906da534e1b38aefa
        - quay.io/cilium/cilium-etcd-operator@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/coreos/etcd@sha256:04833b601fa130512450afa45c4fe484fee1293634f34c7ddc231bd193c74017
        - quay.io/isovalent/hubble-enterprise@sha256:1e1d3e6c199546b2398f4166ff64210c04075bb407c8f07c5be8d3db08560d4a
        - quay.io/cilium/hubble-export-stdout@sha256:f1b1475a3c89950481264f5f8ca63eea3b911a45dc83fdf15122d695a0fba9b3
        version: 1.10.13+xed86eae
      entries:
      - name: cilium.v1.10.13-xed86eae
        version: 1.10.13+xed86eae
      - name: cilium.v1.10.12-xb203fae
        version: 1.10.12+xb203fae
      - name: cilium.v1.10.11-x10ae342
        version: 1.10.11+x10ae342
      name: "1.10"
    - currentCSV: cilium.v1.11.21-xd0d07b1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Cilium Enterprise - eBPF-based Networking, Security, and Observability
        displayName: Cilium Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Cilium Enterprise Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Cilium Enterprise
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/hubble-relay:v1.11.21-cee.1@sha256:5933dd1f8111d6bca0c68db9247385b5d215d5b613095bafab8244098f2c5a26
        - quay.io/isovalent/operator-generic:v1.11.21-cee.1@sha256:25b668c1febe1d1a70b63dfe926be4e55fbf77fd186e9df7581e41d7e9813469
        - quay.io/cilium/certgen:v0.1.5@sha256:0c2b71bb3469990e7990e7e26243617aa344b5a69a4ce465740b8577f9d48ab9
        - quay.io/coreos/etcd:v3.4.13@sha256:04833b601fa130512450afa45c4fe484fee1293634f34c7ddc231bd193c74017
        - cgr.dev/chainguard/oauth2-proxy:7.4.0@sha256:54857c70321004d3e0b8b8d7208ce5422c1f71c18db5be02d2543f187ea8e8e2
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:89d480ae76480829660d4cccfede74717faeb7e62a4a48b932750e41a945783d
        - quay.io/isovalent/hubble-export-stdout:v1.0.3@sha256:bef600089c1671fce11bb4bcb98b81f25e65152a1a2f13b64ea637cfc5779c11
        - quay.io/isovalent/hubble-rbac:v1.3.0@sha256:4c106dd133861a678eb24cf98b35d5023cccca0834c954c49b68514c366aedf0
        - quay.io/isovalent/hubble-ui-enterprise:v0.23.0@sha256:02635d1392cca7e09ab7797f69147880068ba7e3b0d865be97eeab33edd646a0
        - quay.io/isovalent/cilium:v1.11.21-cee.1@sha256:f41241a15cd96d26727aa1ec413ace643728ddbe42f7fb7b234dbda22bf3950b
        - quay.io/isovalent/hubble-enterprise-operator:v1.10.5@sha256:31b18a1ea7002936f04dd070549e0c9a02f8a33394666fc5b0523ab1350c6120
        - quay.io/isovalent/hubble-export-fluentd:v1.5.1@sha256:eaf42a84821509b69e2ef2b658796062e79a90e63045a98689da3da99a12e492
        - quay.io/isovalent/hubble-enterprise:v1.10.5@sha256:340700d4e28ded2aa9c50ff9f938996bb43faa84e0b2ba38ec79452648d7e5d7
        - quay.io/cilium/cilium-etcd-operator:v2.0.7@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/isovalent/clustermesh-apiserver:v1.11.21-cee.1@sha256:e16d8375ed8a1c3a872047b3aacf3469bde43552f1a51ee3e159ef2e9fea3e97
        - quay.io/isovalent/hubble-export-s3:v1.0.0@sha256:89c178c0a010166c68819ab5de32ab59b64a88aa23a05d8e4f78adb1a4b6c3d3
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:d3148bf3b9765467936ee067b25b5ef3683d3e55260f517c7fe271ac0e19cb47
        - quay.io/cilium/startup-script:62093c5c233ea914bfa26a10ba41f8780d9b737f@sha256:a1454ca1f93b69ecd2c43482c8e13dc418ae15e28a46009f5934300a20afbdba
        - quay.io/isovalent/hubble-ui-enterprise-backend:v0.23.0@sha256:2fbdad86bb5244075f31487262d790f6fa75cdd993f868b952252905c118621c
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:372511f6fa3523dadfe9128caf77520cf74ce24df4a19e1583ee197375e06014
        version: 1.11.21+xd0d07b1
      entries:
      - name: cilium.v1.11.21-xd0d07b1
        version: 1.11.21+xd0d07b1
      - name: cilium.v1.11.20-x0f6d966
        version: 1.11.20+x0f6d966
      name: "1.11"
    - currentCSV: cilium.v1.12.21-x3861686
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.12.14 <1.12.21'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/hubble-export-stdout:v1.0.3@sha256:bef600089c1671fce11bb4bcb98b81f25e65152a1a2f13b64ea637cfc5779c11
        - quay.io/cilium/certgen:v0.1.8@sha256:4a456552a5f192992a6edcec2febb1c54870d665173a33dc7d876129b199ddbd
        - quay.io/coreos/etcd:v3.5.4@sha256:795d8660c48c439a7c3764c2330ed9222ab5db5bb524d8d0607cac76f7ba82a3
        - quay.io/isovalent/hubble-enterprise-operator:v1.10.5@sha256:31b18a1ea7002936f04dd070549e0c9a02f8a33394666fc5b0523ab1350c6120
        - quay.io/isovalent/hubble-export-fluentd:v1.5.1@sha256:eaf42a84821509b69e2ef2b658796062e79a90e63045a98689da3da99a12e492
        - quay.io/isovalent/hubble-ui-enterprise:v0.28.1@sha256:11dfba0e4fcf43415aa6e8b3b6e98a5c4f468ec67b377328ad48b92037bbfbb0
        - quay.io/isovalent/hubble-rbac:v1.3.0@sha256:4c106dd133861a678eb24cf98b35d5023cccca0834c954c49b68514c366aedf0
        - quay.io/isovalent/oauth2-proxy:7.6.0@sha256:b6e40d76f0925e76f0a5b181be3f6c62728fa3e4aaef979caf9ea245f4ed03da
        - quay.io/isovalent/hubble-ui-enterprise-backend:v0.28.1@sha256:515aeb8166dd6995b04d4cd3333c94a740182943ba4e90a38871ee89c0b64e92
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:f95c9e8002d8e381d604752b1d59b75595badbdb0b11237ac1cac4ecd04f4800
        - quay.io/cilium/startup-script:62093c5c233ea914bfa26a10ba41f8780d9b737f@sha256:a1454ca1f93b69ecd2c43482c8e13dc418ae15e28a46009f5934300a20afbdba
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:71cbb44a41b60ab64c6eae99f819796868a57234a5ff210598bd23b73b3b02c7
        - quay.io/isovalent/hubble-relay:v1.12.21-cee.1@sha256:9d8dadc3f330acf0fa169c428d5fdf1d138d0294065eec5c628f6647106fe8b6
        - quay.io/isovalent/operator-generic:v1.12.21-cee.1@sha256:4e19cda799a747b69f53b5e5a860ba256399d18221d5a4bbf243142ba1c69bb8
        - quay.io/isovalent/cilium:v1.12.21-cee.1@sha256:3a462308cf12b572db987c03d190ee33691ccb04775d01beb192703a52f8d47b
        - quay.io/isovalent/hubble-export-s3:v1.0.0@sha256:89c178c0a010166c68819ab5de32ab59b64a88aa23a05d8e4f78adb1a4b6c3d3
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:a71b6fe33997db924669253992436e1e02d88769bb97376c0871848c2d330fed
        - quay.io/cilium/cilium-etcd-operator:v2.0.7@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/isovalent/clustermesh-apiserver:v1.12.21-cee.1@sha256:3f6549409966086a49e338c7829b9141a73ef2ebeebaac91db430aeb3ccd2e22
        - quay.io/isovalent/hubble-enterprise:v1.10.5@sha256:340700d4e28ded2aa9c50ff9f938996bb43faa84e0b2ba38ec79452648d7e5d7
        version: 1.12.21+x3861686
      entries:
      - name: cilium.v1.12.21-x3861686
        version: 1.12.21+x3861686
      - name: cilium.v1.12.19-xca684e0
        version: 1.12.19+xca684e0
      - name: cilium.v1.12.18-xcb1adcf
        version: 1.12.18+xcb1adcf
      - name: cilium.v1.12.17-xae21c14
        version: 1.12.17+xae21c14
      - name: cilium.v1.12.16-x38e0b62
        version: 1.12.16+x38e0b62
      - name: cilium.v1.12.15-x8ca64a3
        version: 1.12.15+x8ca64a3
      - name: cilium.v1.12.14-xc86b260
        version: 1.12.14+xc86b260
      - name: cilium.v1.12.13-x2b5cec9
        version: 1.12.13+x2b5cec9
      - name: cilium.v1.12.12-xbd7b835
        version: 1.12.12+xbd7b835
      - name: cilium.v1.12.11-xffdea76
        version: 1.12.11+xffdea76
      - name: cilium.v1.12.10-x4a0e9e7
        version: 1.12.10+x4a0e9e7
      - name: cilium.v1.12.9-x4be66e4
        version: 1.12.9+x4be66e4
      - name: cilium.v1.12.8-x87b90a9
        version: 1.12.8+x87b90a9
      - name: cilium.v1.12.7-x53a2aab
        version: 1.12.7+x53a2aab
      name: "1.12"
    - currentCSV: cilium-enterprise.v1.13.21-x96449fb
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.13.7 <1.13.21+x96449fb'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/hubble-export-fluentd:v1.11.0@sha256:50cd2e4c2d04e8befcc2ae1a1463f07cba01edb9b546fb455fe7976311165385
        - quay.io/isovalent/hubble-export-s3:v1.0.2@sha256:518daea1074d260d824c3e03a93ab6b2a7a5f4c22b8e07938770add8257f4a52
        - quay.io/isovalent/hubble-ui-enterprise:v1.0.3@sha256:55bf787c96561f4a460e2bfe5966421e2d85f3f9a38ac2487c6f6486c97cd5af
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:1074f45a625df6ea412a9ffef3d4f4e53f3107ca45bb1de9bb030c47ce6518d9
        - quay.io/cilium/cilium-etcd-operator:v2.0.7@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/isovalent/operator-generic:v1.13.21-cee.2@sha256:6f2d0d575e3f74395c959833992cd5fbb6971f4e292df1b7cf45be8b07be5e7a
        - quay.io/isovalent/hubble-enterprise-operator:v1.11.6@sha256:38253c2e17a8b2e88a226f0976c9cf4a00445212e2886e6f07cbb3a52757324f
        - quay.io/cilium/certgen:v0.1.13@sha256:01802e6a153a9473b06ebade7ee5730f8f2c6cc8db8768508161da3cdd778641
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:71cbb44a41b60ab64c6eae99f819796868a57234a5ff210598bd23b73b3b02c7
        - quay.io/isovalent/cilium:v1.13.21-cee.2@sha256:f760cd85fa64eb8a197ec282644a8db630745a8a2854ee08aa2662cf67188db5
        - quay.io/isovalent/hubble-relay:v1.13.21-cee.2@sha256:aaf5f959a76d6b517e627d2d0b09dab86ae942616819a9a95f057ed4f45ea480
        - quay.io/cilium/startup-script:c54c7edeab7fde4da68e59acd319ab24af242c3f@sha256:a9d0f451353f1b2f29ed3868e230ecfae10150eab9fd521de67adb3c8ca9c33a
        - quay.io/isovalent/clustermesh-apiserver:v1.13.21-cee.2@sha256:980b0235fd16817ecc4457ad4317a4601993b76df2e81b07a53f6f437c2705af
        - quay.io/isovalent/hubble-ui-enterprise-backend:v1.0.3@sha256:6756d2b808c38efce4765f90641d26aa2e0e79329ecc378a123cd3dc2c439640
        - quay.io/isovalent/hubble-export-stdout:v1.0.4@sha256:a0ff77efa890478f18f5deeba2cd1e2dfd6c5c77981adac57b14d7734de71ff1
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:b04e75456359b50b18e75464da5d7b467fdfeb058fc08ce3a10f057ba5f60107
        - quay.io/isovalent/hubble-rbac:v1.5.6@sha256:739ca45ea09829b0fa8a6198901b34eb5254df55be071bc854bbd37cae12a557
        - quay.io/isovalent/oauth2-proxy:7.6.0@sha256:fc7046dee1a204163e68a6d9a42fec200b02129493a7d166f899dd12e2763364
        - quay.io/coreos/etcd:v3.5.4@sha256:795d8660c48c439a7c3764c2330ed9222ab5db5bb524d8d0607cac76f7ba82a3
        - quay.io/isovalent/hubble-enterprise:v1.11.6@sha256:eb60d59d1fb1b136855829274b31805c4206f8d050c3bf068e63a552576c1b38
        version: 1.13.21+x96449fb
      entries:
      - name: cilium-enterprise.v1.13.21-x96449fb
        version: 1.13.21+x96449fb
      - name: cilium-enterprise.v1.13.20-x5b70650
        version: 1.13.20+x5b70650
      - name: cilium-enterprise.v1.13.19-xdb27142
        version: 1.13.19+xdb27142
      - name: cilium-enterprise.v1.13.18-x0c21a94
        version: 1.13.18+x0c21a94
      - name: cilium-enterprise.v1.13.17-xc8f905f
        version: 1.13.17+xc8f905f
      - name: cilium-enterprise.v1.13.16-xcfe62ed
        version: 1.13.16+xcfe62ed
      - name: cilium-enterprise.v1.13.15-x1dfd26f
        version: 1.13.15+x1dfd26f
      - name: cilium.v1.13.14-xb70933f
        version: 1.13.14+xb70933f
      - name: cilium.v1.13.12-x453f6ad
        version: 1.13.12+x453f6ad
      - name: cilium.v1.13.11-xf6d6935
        version: 1.13.11+xf6d6935
      - name: cilium.v1.13.10-x9d57fc7
        version: 1.13.10+x9d57fc7
      - name: cilium.v1.13.9-xe8a359b
        version: 1.13.9+xe8a359b
      - name: cilium.v1.13.8-x96e1ca9
        version: 1.13.8+x96e1ca9
      - name: cilium.v1.13.7-x7320e7d
        version: 1.13.7+x7320e7d
      - name: cilium.v1.13.6-xd3714ef
        version: 1.13.6+xd3714ef
      - name: cilium.v1.13.5-x8386cae
        version: 1.13.5+x8386cae
      - name: cilium.v1.13.4-xc8b22ea
        version: 1.13.4+xc8b22ea
      - name: cilium.v1.13.3-x69e9561
        version: 1.13.3+x69e9561
      - name: cilium.v1.13.2-x4b1c6c8
        version: 1.13.2+x4b1c6c8
      name: "1.13"
    - currentCSV: cilium-enterprise.v1.14.22-x6d86c88
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.14.0 <1.14.22+x6d86c88'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/cilium:v1.14.22-cee.1@sha256:0e664a5a9e0edba38ab1a25eb7fa50861bb15f69ed0bbe3f3c792bd909240da3
        - quay.io/isovalent/hubble-enterprise:v1.11.6@sha256:eb60d59d1fb1b136855829274b31805c4206f8d050c3bf068e63a552576c1b38
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:148b1029eac14049e2ba84d4d75be1ca43ef2d89951adbdeddec392ad7c9fe1e
        - quay.io/cilium/startup-script:c54c7edeab7fde4da68e59acd319ab24af242c3f@sha256:a9d0f451353f1b2f29ed3868e230ecfae10150eab9fd521de67adb3c8ca9c33a
        - quay.io/coreos/etcd:v3.5.4@sha256:a67fb152d4c53223e96e818420c37f11d05c2d92cf62c05ca5604066c37295e9
        - quay.io/isovalent/oauth2-proxy:7.6.0@sha256:fc7046dee1a204163e68a6d9a42fec200b02129493a7d166f899dd12e2763364
        - quay.io/isovalent/operator-generic:v1.14.22-cee.1@sha256:a997fe24ff0b7f7df3ee12748413ae53d6e07c803162b0db4d812b916b0cfc74
        - quay.io/isovalent/hubble-export-s3:v1.0.2@sha256:518daea1074d260d824c3e03a93ab6b2a7a5f4c22b8e07938770add8257f4a52
        - quay.io/isovalent/hubble-enterprise-operator:v1.11.6@sha256:38253c2e17a8b2e88a226f0976c9cf4a00445212e2886e6f07cbb3a52757324f
        - quay.io/isovalent/hubble-ui-enterprise:v1.2.2@sha256:3e03a58f6eea5d2df195f42ee2817f7b28fa20bbe140f5086937eee8da1b8d56
        - quay.io/isovalent/clustermesh-apiserver:v1.14.22-cee.1@sha256:588e2b173ab409288eda2d404571184562d3d9fd12e2d9afe7282a5a7d79113a
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:71cbb44a41b60ab64c6eae99f819796868a57234a5ff210598bd23b73b3b02c7
        - quay.io/isovalent/hubble-relay:v1.14.22-cee.1@sha256:d7ffc880d2e42e0876417ec26115b0e9155ad9a2e7f47c02c434746afa42b29a
        - quay.io/isovalent/hubble-rbac:v1.5.2@sha256:29309837e2246a1b6849d7a09d01ceebfdb43fa0ade973d14584f0e52b856b95
        - quay.io/cilium/cilium-envoy:v1.32.5-1743506100-0821ef0acdf9f824d47d34e02932be522b3e7233@sha256:305c8b7da56ef1b64e4deb0642acf93a3944f2712e40c99a40bb005e6dc9761b
        - quay.io/cilium/certgen:v0.1.17@sha256:07959f3125dae659ab9036c14df046e2536f7a4f6c92dabda837388b0344dc74
        - quay.io/isovalent/hubble-export-stdout:v1.0.4@sha256:a0ff77efa890478f18f5deeba2cd1e2dfd6c5c77981adac57b14d7734de71ff1
        - quay.io/isovalent/hubble-ui-enterprise-backend:v1.2.2@sha256:4258f7e0bff24ff1e0b214f62b37097032b6426ba28edd3dfc4f451a34de0110
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:0543e615d8a48ba6aaf90a8de0b0a79d37689c64bfe71f91c340455d9a359426
        - quay.io/isovalent/hubble-export-fluentd:v1.8.1@sha256:ce0cce63a8473d5ae73872fc65d82c54f2875511bb03f0bc8ee8480148c43ee1
        version: 1.14.22+x6d86c88
      entries:
      - name: cilium-enterprise.v1.14.22-x6d86c88
        version: 1.14.22+x6d86c88
      - name: cilium-enterprise.v1.14.21-xe0c9553
        version: 1.14.21+xe0c9553
      - name: cilium-enterprise.v1.14.20-xe01e743
        version: 1.14.20+xe01e743
      - name: cilium-enterprise.v1.14.19-xc1b9aff
        version: 1.14.19+xc1b9aff
      name: "1.14"
    - currentCSV: cilium-enterprise.v1.15.22-xfb6ee71
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.15.0 <1.15.22+xfb6ee71'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:2aede84df42365c9da6bf3d4e9b77b3e4ea0fc0646df72c7bce382abd0139055
        - quay.io/isovalent/cilium-envoy-ubi:v1.33.4-1752151664-7c2edb0b44cf95f326d628b837fcdd845102ba68@sha256:e81fdde48c3d5cd93111e1d51d9f8554adb32ee937601a9124354e0894933b99
        - quay.io/isovalent/cilium:v1.15.22-cee.1@sha256:ce6331fa084d92ab65047b2b246f8ebae555e263e41722cb14978a152edb667f
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.15.22-cee.1@sha256:c5d1ae516aae27fac17b266cfdcfe659aa0d4e214027e0c2d84ae2970e7a5cf5
        - quay.io/isovalent/hubble-ui-backend-ubi:v1.3.8@sha256:a8bb183635215854b9dcd6340d4b93a123990a2ee8ded75a143c52b01f9b72d8
        - quay.io/isovalent/hubble-ui-frontend-ubi:v1.3.8@sha256:2a8f95d4bfdb0f196e27e5ebe0e00bbbbdab2f963c5beed587538f68618849c0
        - quay.io/isovalent/operator-generic-ubi:v1.15.22-cee.1@sha256:b1db5ebc6fb614a38e53e8d9be5960aeac09b961a5355e558d4ee964a9a6c07c
        - quay.io/isovalent/startup-script-ubi:1755531540-60ee83e@sha256:2e1d5048cbfcd3c77f732da8203a6c792cbf19897b5cf137b9ad23a6a267f6b2
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:eb5db92aa51052943a238aef136daab3ccc5daf60b035a4b569fd04ac02ab8e1
        - quay.io/isovalent/certgen-ubi:v0.1.19@sha256:c32e96b0972c9bcd3896945c46ea23e330c9dea407afee3a637daae637296f4c
        - quay.io/isovalent/hubble-relay-ubi:v1.15.22-cee.1@sha256:887789a333224deaaadeaf3406d5a6133febf097076e7a7f9f55bd0e43afd3b2
        - quay.io/isovalent/oauth2-proxy:7.12.0-20250819@sha256:fe8f76728c36536d498b2a5c11172cb18dc30bbb555df2a6d14c036b29cb9f10
        version: 1.15.22+xfb6ee71
      entries:
      - name: cilium-enterprise.v1.15.22-xfb6ee71
        version: 1.15.22+xfb6ee71
      - name: cilium-enterprise.v1.15.21-x2661a01
        version: 1.15.21+x2661a01
      - name: cilium-enterprise.v1.15.20-x6df37bb
        version: 1.15.20+x6df37bb
      - name: cilium-enterprise.v1.15.19-x0be49ab
        version: 1.15.19+x0be49ab
      - name: cilium-enterprise.v1.15.18-xeeaa70b
        version: 1.15.18+xeeaa70b
      - name: cilium-enterprise.v1.15.17-xdfd9482
        version: 1.15.17+xdfd9482
      - name: cilium-enterprise.v1.15.16-xc7e31ca
        version: 1.15.16+xc7e31ca
      - name: cilium-enterprise.v1.15.15-xf37f22c
        version: 1.15.15+xf37f22c
      - name: cilium-enterprise.v1.15.14-x0e512e3
        version: 1.15.14+x0e512e3
      - name: cilium-enterprise.v1.15.13-x134fa29
        version: 1.15.13+x134fa29
      name: "1.15"
    - currentCSV: cilium-enterprise.v1.16.16-xf0717b8
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.16.0 <1.16.16+xf0717b8'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/cilium-envoy-ubi:v1.16.16-cee.1@sha256:db1439f994966d7f2abda9e46f8a5f2c4df05236ace0f9710f9f19f3eae4f520
        - quay.io/isovalent/startup-script-ubi:v1.16.16-cee.1@sha256:16e6199da8c27cfa44656c8a9326ccfcf7911621080329a8a2f919a10b12002d
        - quay.io/isovalent/certgen-ubi:v1.16.16-cee.1@sha256:caf5b5802091462d8e277a0054c9e4aed62da634c967a0e429b9e7458b0bf32c
        - quay.io/isovalent/cilium-ubi:v1.16.16-cee.1@sha256:825ae0912f4e56068b3a320f4d0fbfcaad5c33295944176d3390d3ce2b83d5f3
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.16.16-cee.1@sha256:cf10ac7c8ef966647359d7c581d5d43537fb0a02e3e777db00e7404885dd3ffa
        - quay.io/isovalent/hubble-relay-ubi:v1.16.16-cee.1@sha256:ec02a881eeeecd7477fbd5cd0760655d321b1e006a79eee82af0918a1c9967b3
        - quay.io/isovalent/operator-generic-ubi:v1.16.16-cee.1@sha256:eb4940955d70fb7cfd9d7fbf4c2260a2243b8a71baa438ab3364c161bc05d644
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:9c6929d43ee16fe8548d41f7ea2be5faa66c4938629d9466546505113371fbf6
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:a0eb3d7bf42f891eb9fba3b39b1133372cb006d5aa08128e3aa1898d4b303e6f
        version: 1.16.16+xf0717b8
      entries:
      - name: cilium-enterprise.v1.16.16-xf0717b8
        version: 1.16.16+xf0717b8
      - name: cilium-enterprise.v1.16.15-x6419e26
        version: 1.16.15+x6419e26
      - name: cilium-enterprise.v1.16.13-xb2de075
        version: 1.16.13+xb2de075
      - name: cilium-enterprise.v1.16.12-xd373871
        version: 1.16.12+xd373871
      - name: cilium-enterprise.v1.16.11-xbd1cd23
        version: 1.16.11+xbd1cd23
      - name: cilium-enterprise.v1.16.10-x89ab4b0
        version: 1.16.10+x89ab4b0
      - name: cilium-enterprise.v1.16.9-x8ec4137
        version: 1.16.9+x8ec4137
      - name: cilium-enterprise.v1.16.8-yd2b50b4
        version: 1.16.8+yd2b50b4
      - name: cilium-enterprise.v1.16.7-x4867421
        version: 1.16.7+x4867421
      - name: cilium-enterprise.v1.16.6-x7e6eb1c
        version: 1.16.6+x7e6eb1c
      name: "1.16"
    defaultChannel: "1.16"
    packageName: cilium-enterprise
    provider:
      name: Isovalent
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-applicationautoscaling-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-applicationautoscaling-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "applicationautoscaling.services.k8s.aws/v1alpha1",
                "kind": "ScalableTarget",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "applicationautoscaling.services.k8s.aws/v1alpha1",
                "kind": "ScalingPolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/applicationautoscaling-controller:1.2.0
          createdAt: "2025-11-29T04:48:11Z"
          description: AWS Application Auto Scaling controller is a service controller
            for managing Application Auto Scaling resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ScalableTarget represents the state of an AWS applicationautoscaling
              ScalableTarget resource.
            displayName: ScalableTarget
            kind: ScalableTarget
            name: scalabletargets.applicationautoscaling.services.k8s.aws
            version: v1alpha1
          - description: ScalingPolicy represents the state of an AWS applicationautoscaling
              ScalingPolicy resource.
            displayName: ScalingPolicy
            kind: ScalingPolicy
            name: scalingpolicies.applicationautoscaling.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Application Auto Scaling resources in AWS from within your Kubernetes cluster.
          **About Amazon Application Auto Scaling**
          Application Auto Scaling is a web service for developers and system administrators who need a solution for automatically scaling their scalable resources for individual AWS services beyond Amazon EC2. Application Auto Scaling allows you to configure automatic scaling for the following resources:
          - AppStream 2.0 fleets
          - Aurora replicas
          - Amazon Comprehend document classification and entity recognizer endpoints
          - DynamoDB tables and global secondary indexes
          - Amazon Elastic Container Service (ECS) services
          - Amazon EMR clusters
          - Amazon Keyspaces (for Apache Cassandra) tables
          - Lambda function provisioned concurrency
          - Amazon Managed Streaming for Apache Kafka (MSK) broker storage
          - SageMaker endpoint variants
          - Spot Fleet requests
          - Custom resources provided by your own applications or services. For more information, see the [GitHub repository](https://github.com/aws/aws-auto-scaling-custom-resource)

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Application Auto Scaling
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - applicationautoscaling
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Application Auto Scaling User Guide
          url: https://docs.aws.amazon.com/autoscaling/application/userguide/what-is-application-auto-scaling.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: application auto scaling maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/applicationautoscaling-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-applicationautoscaling-controller@sha256:bfb1bb568c09825641fc13e7b9cc2a9632d49222be29341cf82f0df1c90229be
        version: 1.2.0
      entries:
      - name: ack-applicationautoscaling-controller.v1.2.0
        version: 1.2.0
      - name: ack-applicationautoscaling-controller.v1.1.2
        version: 1.1.2
      - name: ack-applicationautoscaling-controller.v1.1.1
        version: 1.1.1
      - name: ack-applicationautoscaling-controller.v1.1.0
        version: 1.1.0
      - name: ack-applicationautoscaling-controller.v1.0.30
        version: 1.0.30
      - name: ack-applicationautoscaling-controller.v1.0.29
        version: 1.0.29
      - name: ack-applicationautoscaling-controller.v1.0.27
        version: 1.0.27
      - name: ack-applicationautoscaling-controller.v1.0.26
        version: 1.0.26
      - name: ack-applicationautoscaling-controller.v1.0.25
        version: 1.0.25
      - name: ack-applicationautoscaling-controller.v1.0.24
        version: 1.0.24
      - name: ack-applicationautoscaling-controller.v1.0.23
        version: 1.0.23
      - name: ack-applicationautoscaling-controller.v1.0.22
        version: 1.0.22
      - name: ack-applicationautoscaling-controller.v1.0.21
        version: 1.0.21
      - name: ack-applicationautoscaling-controller.v1.0.19
        version: 1.0.19
      - name: ack-applicationautoscaling-controller.v1.0.18
        version: 1.0.18
      - name: ack-applicationautoscaling-controller.v1.0.17
        version: 1.0.17
      - name: ack-applicationautoscaling-controller.v1.0.16
        version: 1.0.16
      - name: ack-applicationautoscaling-controller.v1.0.15
        version: 1.0.15
      - name: ack-applicationautoscaling-controller.v1.0.11
        version: 1.0.11
      - name: ack-applicationautoscaling-controller.v1.0.9
        version: 1.0.9
      - name: ack-applicationautoscaling-controller.v1.0.8
        version: 1.0.8
      - name: ack-applicationautoscaling-controller.v1.0.7
        version: 1.0.7
      - name: ack-applicationautoscaling-controller.v1.0.6
        version: 1.0.6
      - name: ack-applicationautoscaling-controller.v1.0.5
        version: 1.0.5
      - name: ack-applicationautoscaling-controller.v1.0.4
        version: 1.0.4
      - name: ack-applicationautoscaling-controller.v1.0.3
        version: 1.0.3
      - name: ack-applicationautoscaling-controller.v1.0.2
        version: 1.0.2
      - name: ack-applicationautoscaling-controller.v1.0.0
        version: 1.0.0
      - name: ack-applicationautoscaling-controller.v0.2.16
        version: 0.2.16
      - name: ack-applicationautoscaling-controller.v0.2.15
        version: 0.2.15
      - name: ack-applicationautoscaling-controller.v0.2.14
        version: 0.2.14
      - name: ack-applicationautoscaling-controller.v0.2.13
        version: 0.2.13
      - name: ack-applicationautoscaling-controller.v0.2.12
        version: 0.2.12
      - name: ack-applicationautoscaling-controller.v0.2.10
        version: 0.2.10
      - name: ack-applicationautoscaling-controller.v0.2.9
        version: 0.2.9
      - name: ack-applicationautoscaling-controller.v0.2.8
        version: 0.2.8
      - name: ack-applicationautoscaling-controller.v0.2.7
        version: 0.2.7
      - name: ack-applicationautoscaling-controller.v0.2.6
        version: 0.2.6
      - name: ack-applicationautoscaling-controller.v0.2.5
        version: 0.2.5
      - name: ack-applicationautoscaling-controller.v0.2.4
        version: 0.2.4
      - name: ack-applicationautoscaling-controller.v0.2.3
        version: 0.2.3
      - name: ack-applicationautoscaling-controller.v0.2.2
        version: 0.2.2
      - name: ack-applicationautoscaling-controller.v0.2.1
        version: 0.2.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-applicationautoscaling-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-mq-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-mq-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mq.services.k8s.aws/v1alpha1",
                "kind": "Broker",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/mq-controller:1.2.0
          createdAt: "2025-11-29T03:37:35Z"
          description: AWS MQ controller is a service controller for managing MQ resources
            in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Broker represents the state of an AWS mq Broker resource.
            displayName: Broker
            kind: Broker
            name: brokers.mq.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon MQ resources in AWS from within your Kubernetes cluster.

          **About Amazon MQ**

          Amazon MQ is a managed message broker service for Apache ActiveMQ and RabbitMQ that makes it easy to set up and operate message brokers on AWS. Amazon MQ reduces your operational responsibilities by managing the provisioning, setup, and maintenance of message brokers for you. Because Amazon MQ connects to your current applications with industry-standard APIs and protocols, you can easily migrate to AWS without having to rewrite code.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon MQ
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mq
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon MQ Developer Resources
          url: https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: mq maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/mq-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-mq-controller@sha256:e9a599737eb39ce150b2d31461354d25fb060d4f2cf45557ffa26e10d52c7c8c
        version: 1.2.0
      entries:
      - name: ack-mq-controller.v1.2.0
        version: 1.2.0
      - name: ack-mq-controller.v1.1.3
        version: 1.1.3
      - name: ack-mq-controller.v1.1.2
        version: 1.1.2
      - name: ack-mq-controller.v1.1.1
        version: 1.1.1
      - name: ack-mq-controller.v1.1.0
        version: 1.1.0
      - name: ack-mq-controller.v1.0.13
        version: 1.0.13
      - name: ack-mq-controller.v1.0.11
        version: 1.0.11
      - name: ack-mq-controller.v1.0.10
        version: 1.0.10
      - name: ack-mq-controller.v1.0.9
        version: 1.0.9
      - name: ack-mq-controller.v1.0.8
        version: 1.0.8
      - name: ack-mq-controller.v1.0.7
        version: 1.0.7
      - name: ack-mq-controller.v1.0.6
        version: 1.0.6
      - name: ack-mq-controller.v1.0.5
        version: 1.0.5
      - name: ack-mq-controller.v1.0.2
        version: 1.0.2
      - name: ack-mq-controller.v1.0.1
        version: 1.0.1
      - name: ack-mq-controller.v1.0.0
        version: 1.0.0
      - name: ack-mq-controller.v0.0.36
        version: 0.0.36
      - name: ack-mq-controller.v0.0.35
        version: 0.0.35
      - name: ack-mq-controller.v0.0.34
        version: 0.0.34
      - name: ack-mq-controller.v0.0.31
        version: 0.0.31
      - name: ack-mq-controller.v0.0.29
        version: 0.0.29
      - name: ack-mq-controller.v0.0.27
        version: 0.0.27
      - name: ack-mq-controller.v0.0.26
        version: 0.0.26
      - name: ack-mq-controller.v0.0.25
        version: 0.0.25
      - name: ack-mq-controller.v0.0.24
        version: 0.0.24
      - name: ack-mq-controller.v0.0.23
        version: 0.0.23
      - name: ack-mq-controller.v0.0.22
        version: 0.0.22
      - name: ack-mq-controller.v0.0.21
        version: 0.0.21
      - name: ack-mq-controller.v0.0.20
        version: 0.0.20
      - name: ack-mq-controller.v0.0.19
        version: 0.0.19
      - name: ack-mq-controller.v0.0.18
        version: 0.0.18
      - name: ack-mq-controller.v0.0.17
        version: 0.0.17
      - name: ack-mq-controller.v0.0.16
        version: 0.0.16
      - name: ack-mq-controller.v0.0.15
        version: 0.0.15
      - name: ack-mq-controller.v0.0.14
        version: 0.0.14
      - name: ack-mq-controller.v0.0.13
        version: 0.0.13
      - name: ack-mq-controller.v0.0.12
        version: 0.0.12
      - name: ack-mq-controller.v0.0.11
        version: 0.0.11
      - name: ack-mq-controller.v0.0.10
        version: 0.0.10
      - name: ack-mq-controller.v0.0.9
        version: 0.0.9
      - name: ack-mq-controller.v0.0.8
        version: 0.0.8
      - name: ack-mq-controller.v0.0.7
        version: 0.0.7
      name: alpha
    defaultChannel: alpha
    packageName: ack-mq-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: web-terminal
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: web-terminal.v1.15.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
            ]
          capabilities: Basic Install
          categories: Developer Tools
          certified: "false"
          containerImage: registry.redhat.io/web-terminal/web-terminal-rhel9-operator@sha256:54aee8a20fe456c48d9b5001b08a6bd2a84b37f2abb0966d9d9c5c2ad087d3ae
          createdAt: "2021-10-26T07:24:32Z"
          description: Start a web terminal in your browser with common CLI tools
            for interacting with the cluster
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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: "true"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/redhat-developer/web-terminal-operator/
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          required:
          - kind: DevWorkspaceRouting
            name: devworkspaceroutings.controller.devfile.io
            version: v1alpha1
          - kind: DevWorkspace
            name: devworkspaces.workspace.devfile.io
            version: v1alpha1
        description: |
          Start a web terminal in your browser with common CLI tools for interacting with
          the cluster.

          **Note:** The Web Terminal Operator integrates with the OpenShift Console in
          OpenShift 4.5.3 and higher to simplify web terminal instance creation and
          automate OpenShift login. In earlier versions of OpenShift, the operator can
          be installed but web terminals will have to be created and accessed manually.

          ## Description
          The Web Terminal Operator leverages the
          [DevWorkspace Operator](https://github.com/devfile/devworkspace-operator)
          to provision enviroments which support common cloud CLI tools. When this
          operator is installed, the DevWorkspace Operator will be installed as a
          dependency.

          ## How to Install
          Press the **Install** button, choose the upgrade strategy, and wait for the
          **Installed** Operator status.

          When the operator is installed, you will see a terminal button appear on the
          top right of the console after refreshing the OpenShift console window.

          ## How to Uninstall
          The Web Terminal Operator requires manual steps to fully uninstall the operator.
          As the Web Terminal Operator is designed as a way to access the OpenShift
          cluster, web terminal instances store user credentials. To avoid exposing these
          credentials to unwanted parties, the operator deploys webhooks and finalizers
          that aren't removed when the operator is uninstalled. See the
          [uninstall guide](https://docs.openshift.com/container-platform/latest/web_console/web_terminal/uninstalling-web-terminal.html)
          for more details.

          ## Documentation
          Documentation for this Operator is available at https://docs.openshift.com/container-platform/latest/web\_console/web\_terminal/installing-web-terminal.html
        displayName: Web Terminal
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - workspace
        - devtools
        - developer
        - ide
        - terminal
        links:
        - name: Web Terminal Repo
          url: https://github.com/redhat-developer/web-terminal-operator/
        maintainers:
        - email: dakwon@redhat.com
          name: David Kwon
        - email: ibuziuk@redhat.com
          name: Ilya Buziuk
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/web-terminal/web-terminal-tooling-rhel9@sha256:a107f3d0a1e0046a2a3c089d67b4d54f0b94048154dd2fbd5f8344506c9994cd
        - registry.redhat.io/web-terminal/web-terminal-operator-bundle@sha256:a9be30074f26b71e14cab823718dc4fd03edcc2694826cdd8aa3c06ed2201057
        - registry.redhat.io/web-terminal/web-terminal-exec-rhel9@sha256:f887c71de000744733326c39725e52d7e576c0e8a9177548d59eb98706b97189
        - registry.redhat.io/web-terminal/web-terminal-rhel9-operator@sha256:54aee8a20fe456c48d9b5001b08a6bd2a84b37f2abb0966d9d9c5c2ad087d3ae
        version: 1.15.0
      entries:
      - name: web-terminal.v1.15.0
        version: 1.15.0
      - name: web-terminal.v1.14.0
        version: 1.14.0
      - name: web-terminal.v1.13.0
        version: 1.13.0
      - name: web-terminal.v1.12.1-0.1745393748.p
        version: 1.12.1+0.1745393748.p
      - name: web-terminal.v1.12.1-0.1743657317.p
        version: 1.12.1+0.1743657317.p
      - name: web-terminal.v1.12.1-0.1742484227.p
        version: 1.12.1+0.1742484227.p
      - name: web-terminal.v1.12.1
        version: 1.12.1
      - name: web-terminal.v1.11.1-0.1747215995.p
        version: 1.11.1+0.1747215995.p
      - name: web-terminal.v1.11.1
        version: 1.11.1
      - name: web-terminal.v1.11.0
        version: 1.11.0
      - name: web-terminal.v1.10.1
        version: 1.10.1
      - name: web-terminal.v1.10.1-0.1740684238.p
        version: 1.10.1+0.1740684238.p
      - name: web-terminal.v1.10.0-0.1720402943.p
        version: 1.10.0+0.1720402943.p
      - name: web-terminal.v1.10.0-0.1732652667.p
        version: 1.10.0+0.1732652667.p
      - name: web-terminal.v1.10.0-0.1731481377.p
        version: 1.10.0+0.1731481377.p
      - name: web-terminal.v1.10.0-0.1727169028.p
        version: 1.10.0+0.1727169028.p
      - name: web-terminal.v1.10.0-0.1720435222.p
        version: 1.10.0+0.1720435222.p
      - name: web-terminal.v1.10.0
        version: 1.10.0
      - name: web-terminal.v1.9.0-0.1708477317.p
        version: 1.9.0+0.1708477317.p
      - name: web-terminal.v1.9.0
        version: 1.9.0
      - name: web-terminal.v1.8.0-0.1708477299.p
        version: 1.8.0+0.1708477299.p
      - name: web-terminal.v1.8.0-0.1701199376.p
        version: 1.8.0+0.1701199376.p
      - name: web-terminal.v1.8.0-0.1692219820.p
        version: 1.8.0+0.1692219820.p
      - name: web-terminal.v1.8.0
        version: 1.8.0
      - name: web-terminal.v1.7.0-0.1681197295.p
        version: 1.7.0+0.1681197295.p
      - name: web-terminal.v1.7.0-0.1708477265.p
        version: 1.7.0+0.1708477265.p
      - name: web-terminal.v1.7.0
        version: 1.7.0
      - name: web-terminal.v1.7.0-0.1692219820.p
        version: 1.7.0+0.1692219820.p
      - name: web-terminal.v1.7.0-0.1682321121.p
        version: 1.7.0+0.1682321121.p
      - name: web-terminal.v1.7.0-0.1684429884.p
        version: 1.7.0+0.1684429884.p
      - name: web-terminal.v1.6.0
        version: 1.6.0
      - name: web-terminal.v1.6.0-0.1692219820.p
        version: 1.6.0+0.1692219820.p
      - name: web-terminal.v1.5.1-0.1661829403.p
        version: 1.5.1+0.1661829403.p
      - name: web-terminal.v1.5.1
        version: 1.5.1
      - name: web-terminal.v1.5.0-0.1657220207.p
        version: 1.5.0+0.1657220207.p
      - name: web-terminal.v1.5.0
        version: 1.5.0
      - name: web-terminal.v1.4.0
        version: 1.4.0
      - name: web-terminal.v1.3.0
        version: 1.3.0
      name: fast
    defaultChannel: fast
    packageName: web-terminal
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: devspaces
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: devspacesoperator.v3.25.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "org.eclipse.che/v1",
                "kind": "CheCluster",
                "metadata": {
                  "name": "devspaces",
                  "namespace": "openshift-devspaces"
                },
                "spec": {
                  "auth": {
                    "identityProviderURL": "",
                    "oAuthClientName": "",
                    "oAuthSecret": ""
                  },
                  "database": {
                    "externalDb": false
                  },
                  "k8s": {
                    "ingressDomain": null,
                    "tlsSecretName": null
                  },
                  "metrics": {
                    "enable": true
                  },
                  "server": {
                    "workspaceNamespaceDefault": "<username>-devspaces"
                  },
                  "storage": {
                    "pvcStrategy": "common"
                  }
                }
              },
              {
                "apiVersion": "org.eclipse.che/v2",
                "kind": "CheCluster",
                "metadata": {
                  "name": "devspaces",
                  "namespace": "openshift-devspaces"
                },
                "spec": {
                  "components": {},
                  "containerRegistry": {},
                  "devEnvironments": {},
                  "gitServices": {},
                  "networking": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/devspaces/devspaces-rhel9-operator@sha256:06cb161519fde83b8c5bcced51f6d639f25a4669e3718338c7ab8dfdefbaa746
          createdAt: "2025-12-13T03:50:34+00:00"
          description: Devfile v2 and v1 development solution, 1 instance per cluster,
            for portable, collaborative k8s workspaces.
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/devspaces-images/
          skipRange: '>=3.0.0 <3.25.0'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              The `CheCluster` custom resource allows defining and managing Red Hat OpenShift Dev Spaces server installation.
              Based on these settings, the  Operator automatically creates and maintains several ConfigMaps:
              `che`, `plugin-registry` that will contain the appropriate environment variables
              of the various components of the installation. These generated ConfigMaps must NOT be updated manually.
            displayName: Red Hat OpenShift Dev Spaces instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v2
          - description: The `CheCluster` custom resource allows defining and managing
              a Che server installation
            displayName: Red Hat OpenShift Dev Spaces instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v1
        description: |
          A collaborative Kubernetes-native development solution that delivers OpenShift workspaces and in-browser IDE for rapid cloud application development.
          This operator installs the Plugin and Devfile registries, Dashboard, Gateway and the Red Hat OpenShift Dev Spaces server, and configures these services.
          OpenShift OAuth is used directly for authentication. TLS mode is on.

          ## How to Install
          Press the **Install** button, choose the channel and the upgrade strategy, and wait for the **Installed** Operator status.
          When the operator is installed, create a new Custom Resource (CR) of Kind CheCluster (click the **Create New** button).
          The CR spec contains all defaults. You can start using Red Hat OpenShift Dev Spaces when the CR status is set to **Available**, and you see a URL to Red Hat OpenShift Dev Spaces.

          ## Defaults
          By default, the operator deploys Red Hat OpenShift Dev Spaces with:
          * 10Gi storage
          * Auto-generated passwords
          * Bundled Plugin and Devfile registries

          Use `oc edit checluster/devspaces -n openshift-devspaces` to update Red Hat OpenShift Dev Spaces default installation options.
          See more in the [Installation guide](https://docs.redhat.com/en/documentation/red_hat_openshift_dev_spaces/3.25/html/administration_guide/configuring-devspaces).

          ### Certificates
          Operator uses a default router certificate to secure Red Hat OpenShift Dev Spaces routes.
          Follow the [guide](https://docs.redhat.com/en/documentation/red_hat_openshift_dev_spaces/3.25/html/administration_guide/configuring-devspaces#importing-untrusted-tls-certificates)
          to import certificates into Red Hat OpenShift Dev Spaces.
        displayName: Red Hat OpenShift Dev Spaces
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eclipse che
        - workspaces
        - devtools
        - developer
        - ide
        - java
        - devspaces
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/openshift-dev-spaces/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_openshift_dev_spaces
        - name: Operator GitHub Repo
          url: https://github.com/redhat-developer/devspaces-images/
        maintainers:
        - email: abazko@redhat.com
          name: Anatolii Bazko
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/devspaces/pluginregistry-rhel9@sha256:572df83aa7e8ac0c198731ece8dd321bede3848fa1e6f2e3dc7bdfc5f8942759
        - registry.redhat.io/devspaces/devspaces-rhel9-operator@sha256:06cb161519fde83b8c5bcced51f6d639f25a4669e3718338c7ab8dfdefbaa746
        - registry.redhat.io/devspaces/udi-rhel9@sha256:bb5baa05f316944ca6df56ad718c368b248e8f4b2488551549b1b13c4ed5844b
        - registry.redhat.io/devspaces/code-rhel9@sha256:7b68bf06abf4f2b948d21ffa82401b44f26965b093e4875653344ae2b7fe46c8
        - registry.redhat.io/devspaces/configbump-rhel9@sha256:7f33a59aa8d1820f8a99ed20eb4b7192c1fb57414a8bc83f5432b8ea2363bb0f
        - registry.redhat.io/devspaces/server-rhel9@sha256:fccbb4185e7694f8c53c994b04e140306a72ed8aa5a6befa7f0690f21e4c19dc
        - registry.redhat.io/devspaces/traefik-rhel9@sha256:7bd1c5582082949142aead1db07b45d41840c58c14ddf18b062df45283e1a316
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:af847bf3d0220392de2f8d56fc3d431add3b31986f8200a4758d287b5bd7a6fe
        - registry.redhat.io/devspaces/dashboard-rhel9@sha256:09607fdeaf2567659a10148c50b19ac265b4a548278b800682ced9d975377cb4
        - registry.redhat.io/devspaces/jetbrains-ide-rhel9@sha256:b6e79f77712ede50d385d477b1d09a34ec4aee074785d385556a12a0a596e582
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:d26a9f4fd48c83bd488ebb889ccec7d65f3bd49e2c94e57c98971a3594d90612
        - registry.redhat.io/devspaces/devspaces-operator-bundle@sha256:74b83b79cba88af0545e7fb52dd70df2c1b96cf23b8963517fc779fbfe3e9aac
        - registry.redhat.io/devspaces/code-sshd-rhel9@sha256:938dfb964aaae293190273034af8b09c5a007d614afa09b735756f930b34666f
        version: 3.25.0
      entries:
      - name: devspacesoperator.v3.25.0
        version: 3.25.0
      - name: devspacesoperator.v3.24.1
        version: 3.24.1
      - name: devspacesoperator.v3.24.0
        version: 3.24.0
      - name: devspacesoperator.v3.23.1
        version: 3.23.1
      - name: devspacesoperator.v3.23.0
        version: 3.23.0
      - name: devspacesoperator.v3.22.1
        version: 3.22.1
      - name: devspacesoperator.v3.22.0
        version: 3.22.0
      - name: devspacesoperator.v3.21.0
        version: 3.21.0
      - name: devspacesoperator.v3.20.0
        version: 3.20.0
      - name: devspacesoperator.v3.19.0
        version: 3.19.0
      - name: devspacesoperator.v3.18.1-0.1739475915.p
        version: 3.18.1+0.1739475915.p
      - name: devspacesoperator.v3.18.1
        version: 3.18.1
      - name: devspacesoperator.v3.18.0
        version: 3.18.0
      - name: devspacesoperator.v3.17.0
        version: 3.17.0
      - name: devspacesoperator.v3.16.1
        version: 3.16.1
      - name: devspacesoperator.v3.16.0
        version: 3.16.0
      - name: devspacesoperator.v3.15.0
        version: 3.15.0
      - name: devspacesoperator.v3.14.0
        version: 3.14.0
      - name: devspacesoperator.v3.13.0
        version: 3.13.0
      - name: devspacesoperator.v3.12.0
        version: 3.12.0
      - name: devspacesoperator.v3.12.0-0.1712003563.p
        version: 3.12.0+0.1712003563.p
      - name: devspacesoperator.v3.11.0
        version: 3.11.0
      - name: devspacesoperator.v3.10.1
        version: 3.10.1
      - name: devspacesoperator.v3.10.0
        version: 3.10.0
      - name: devspacesoperator.v3.9.1
        version: 3.9.1
      - name: devspacesoperator.v3.9.0
        version: 3.9.0
      - name: devspacesoperator.v3.8.0
        version: 3.8.0
      - name: devspacesoperator.v3.7.2
        version: 3.7.2
      - name: devspacesoperator.v3.7.1-0.1691548593.p
        version: 3.7.1+0.1691548593.p
      - name: devspacesoperator.v3.7.1-0.1691407091.p
        version: 3.7.1+0.1691407091.p
      - name: devspacesoperator.v3.7.1
        version: 3.7.1
      - name: devspacesoperator.v3.7.0
        version: 3.7.0
      - name: devspacesoperator.v3.6.0-0.1685322634.p
        version: 3.6.0+0.1685322634.p
      - name: devspacesoperator.v3.6.0-0.1685320856.p
        version: 3.6.0+0.1685320856.p
      - name: devspacesoperator.v3.6.0
        version: 3.6.0
      - name: devspacesoperator.v3.5.0
        version: 3.5.0
      - name: devspacesoperator.v3.4.0-0.1675914643.p
        version: 3.4.0+0.1675914643.p
      - name: devspacesoperator.v3.4.0
        version: 3.4.0
      - name: devspacesoperator.v3.3.0-0.1673528130.p
        version: 3.3.0+0.1673528130.p
      - name: devspacesoperator.v3.3.0
        version: 3.3.0
      name: stable
    defaultChannel: stable
    packageName: devspaces
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Advanced Micro Devices, Inc.
      provider-url: ""
    name: amd-gpu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amd-gpu-operator.v1.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "amd.com/v1alpha1",
                "kind": "DeviceConfig",
                "metadata": {
                  "name": "test-deviceconfig",
                  "namespace": "openshift-amd-gpu"
                },
                "spec": {
                  "devicePlugin": {
                    "devicePluginImage": "rocm/k8s-device-plugin:rhubi-latest",
                    "nodeLabellerImage": "rocm/k8s-node-labeller:rhubi-latest"
                  },
                  "driver": {
                    "enable": "true",
                    "version": "7.0"
                  },
                  "selector": {
                    "feature.node.kubernetes.io/amd-gpu": "true"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: AI/Machine Learning,Monitoring
          containerImage: docker.io/rocm/gpu-operator@sha256:619f6d1ddef671df2704e87a8cca82ee4c1b07d645f05c8d5cb2eb9c6604a270
          createdAt: "2025-10-31T08:47:42Z"
          description: |-
            Operator responsible for deploying AMD GPU kernel drivers, device plugin, device test runner and device metrics exporter
            For more information, visit [documentation](https://instinct.docs.amd.com/projects/gpu-operator/en/latest/)
          deviceConfigManagerImage: docker.io/rocm/device-config-manager@sha256:76363ac0cc42617f1723e14eaeb11434d4d1fa2d4d39d67bc49b3525c599c0ba
          devicePluginImage: docker.io/rocm/k8s-device-plugin@sha256:6976ee40f7fcba3759bbbf5a36e3f12daaf306836606df18592b1b67f7f651d7
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          metricsExporterImage: docker.io/rocm/device-metrics-exporter@sha256:3872ca3534c6679159ffbef504a02e937eb3e11b215c18e649456c0d0ca9bc8d
          nodelabellerImage: docker.io/rocm/k8s-node-labeller@sha256:8206d27891606ebc2f234fed6fe45d181cb31c3ff694a0ff9c3f02d62c280eee
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-amd-gpu
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ROCm/gpu-operator
          support: Advanced Micro Devices, Inc.
          testRunnerImage: docker.io/rocm/test-runner@sha256:529a13953979e7fbd4ff9333735bd2268a81eaa4fdf8f187698cce7d8e720beb
          utilsContainerImage: docker.io/rocm/gpu-operator-utils@sha256:9cbe60dce5b3a2ffd93f7148a363ed5f072a320377d5e5bcbbfb1e05d4959287
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DeviceConfig describes how to enable AMD GPU device
            displayName: DeviceConfig
            kind: DeviceConfig
            name: deviceconfigs.amd.com
            version: v1alpha1
        description: |-
          Operator responsible for deploying AMD GPU kernel drivers, device plugin, device test runner and device metrics exporter
          For more information, visit [documentation](https://instinct.docs.amd.com/projects/gpu-operator/en/latest/)
        displayName: amd-gpu-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AMD
        - GPU
        - AI
        - Deep Learning
        - Hardware
        - Driver
        - Monitoring
        links:
        - name: AMD GPU Operator
          url: https://github.com/ROCm/gpu-operator
        maintainers:
        - email: Yan.Sun3@amd.com
          name: Yan Sun
        - email: farshad.ghodsian@amd.com
          name: Farshad Ghodsian
        - email: shrey.ajmera@amd.com
          name: Shrey Ajmera
        maturity: stable
        provider:
          name: Advanced Micro Devices, Inc.
        relatedImages:
        - docker.io/rocm/k8s-device-plugin@sha256:6976ee40f7fcba3759bbbf5a36e3f12daaf306836606df18592b1b67f7f651d7
        - docker.io/rocm/k8s-node-labeller@sha256:8206d27891606ebc2f234fed6fe45d181cb31c3ff694a0ff9c3f02d62c280eee
        - docker.io/rocm/test-runner@sha256:529a13953979e7fbd4ff9333735bd2268a81eaa4fdf8f187698cce7d8e720beb
        - registry.connect.redhat.com/amd/gpu-operator-v1@sha256:4918beef3a778e8e6bb835240f356002a8b41e40ba011112ca360faa88fe57f4
        - docker.io/rocm/device-config-manager@sha256:76363ac0cc42617f1723e14eaeb11434d4d1fa2d4d39d67bc49b3525c599c0ba
        - docker.io/rocm/device-metrics-exporter@sha256:3872ca3534c6679159ffbef504a02e937eb3e11b215c18e649456c0d0ca9bc8d
        - docker.io/rocm/gpu-operator-utils@sha256:9cbe60dce5b3a2ffd93f7148a363ed5f072a320377d5e5bcbbfb1e05d4959287
        - docker.io/rocm/gpu-operator@sha256:619f6d1ddef671df2704e87a8cca82ee4c1b07d645f05c8d5cb2eb9c6604a270
        version: 1.4.1
      entries:
      - name: amd-gpu-operator.v1.4.1
        version: 1.4.1
      - name: amd-gpu-operator.v1.3.2
        version: 1.3.2
      - name: amd-gpu-operator.v1.3.1
        version: 1.3.1
      - name: amd-gpu-operator.v1.2.1
        version: 1.2.1
      - name: amd-gpu-operator.v1.1.1
        version: 1.1.1
      name: alpha
    defaultChannel: alpha
    packageName: amd-gpu-operator
    provider:
      name: Advanced Micro Devices, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Kubecost
      provider-url: https://www.kubecost.com
    name: kubecost-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubecost-operator.v2.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.kubecost.com/v1alpha1",
                "kind": "CostAnalyzer",
                "metadata": {
                  "name": "costanalyzer-sample"
                },
                "spec": {
                  "clusterController": {
                    "image": {
                      "repository": "registry.connect.redhat.com/kubecost/kubecost-cluster-controller@sha256",
                      "tag": "1a6f11dcd7341ab3f24eba23ec06c7b75646a534a7ed960153601806425469d1"
                    }
                  },
                  "forecasting": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-modeling@sha256:8f59f8fd8696964c1b5322ca79fae78befe97323fa56c2b509bdcc67ee4c0edd"
                  },
                  "global": {
                    "platforms": {
                      "openshift": {
                        "createMonitoringClusterRoleBinding": true,
                        "createMonitoringResourceReaderRoleBinding": true,
                        "enabled": true,
                        "scc": {
                          "clusterController": true,
                          "networkCosts": true,
                          "nodeExporter": true
                        }
                      }
                    },
                    "prometheus": {
                      "enabled": false,
                      "fqdn": "https://prometheus-k8s.openshift-monitoring.svc.cluster.local:9091",
                      "kubeRBACProxy": true
                    }
                  },
                  "grafana": {
                    "image": {
                      "repository": "registry.redhat.io/rhel9/grafana@sha256",
                      "tag": "9f71de028c18034e07a8d15dac13ef68afb91cb899b9e8e7d39703547dd0eac1"
                    },
                    "sidecar": {
                      "image": {
                        "repository": "quay.io/kiwigrid/k8s-sidecar@sha256",
                        "tag": "d3749777d5bedf62549b452a7e2ccb205da53588dc7f04927efc75d0da5b6d23"
                      }
                    }
                  },
                  "kubecostAggregator": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:1b9c9f309e6f41addc7fb6418724a6a6b08486290e31fe1f614efc649874bcef"
                  },
                  "kubecostFrontend": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-frontend@sha256:f9b2196dc6ac017b8074f8fe40f1a58e7a2630282c5b7a019ca9f3dbdb670dc8"
                  },
                  "kubecostModel": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:1b9c9f309e6f41addc7fb6418724a6a6b08486290e31fe1f614efc649874bcef"
                  },
                  "networkCosts": {
                    "image": {
                      "repository": "registry.connect.redhat.com/kubecost/kubecost-network-costs@sha256",
                      "tag": "c444d475be4f1aa36680bd84358e1e07303dcfe5d13a95544ad9e59f80d4a5f0"
                    }
                  },
                  "prometheusRule": {
                    "enabled": true
                  },
                  "serviceMonitor": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          createdAt: "2025-08-08T19:34:34Z"
          description: Deploys Kubecost 2.8.2 via the Helm chart.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: Contact Kubecost for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Kubecost.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The CostAnalyzer API describes a deployment of Kubecost and
              its dependencies.
            displayName: CostAnalyzer
            kind: CostAnalyzer
            name: costanalyzers.charts.kubecost.com
            version: v1alpha1
        description: |2-

          IMPORTANT - Before installation, you must run the following command to allow monitoring of the Kubecost namespace by the local OpenShift Promtheus. If you install in a namespace other than "Kubecost", adjust accordingly.

          `oc label namespace kubecost openshift.io/cluster-monitoring=true`

          Kubecost provides real-time cost visibility and insights for teams using Kubernetes, helping you continuously reduce your cloud costs.

          This OpenShift Operator deploys Kubecost from the official Helm chart.

          Kubecost allows you to:

          * See allocated spend across all native Kubernetes concepts and provide your teams with transparent, accurate cost data reconciled with your actual cloud bill.
          * Join in-cluster costs like CPU and memory with out-of-cluster spend from other cloud services.
          * Get complete cost visibility across OpenShift, On-Prem, AWS, GCP, Azure, Oracle, AliCloud + more.
          * Gain insights you can use to save 30-50%+ on your infrastructure spend, without exposing your private information — your data never gets shared externally, even with us.
          * Have real-time alerts and recurring reports, empowering teams to take control of their Kubernetes-enabled infrastructure and stay within budgeted limits.

          Visit the Kubecost website for more details including features, pricing, documentation, and more at www.kubecost.com.
        displayName: Kubecost
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kubernetes
        - cost
        - kubernetes costs
        - kubernetes optimization
        - k8s
        - cost monitoring
        - cloud costs
        - k8s cost
        links:
        - name: Kubecost
          url: https://www.kubecost.com
        maintainers:
        - email: support@kubecost.com
          name: Kubecost Support
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Kubecost
          url: https://www.kubecost.com
        relatedImages:
        - registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:1b9c9f309e6f41addc7fb6418724a6a6b08486290e31fe1f614efc649874bcef
        - registry.connect.redhat.com/kubecost/kubecost-operator-manager@sha256:582223a66a77f35d1f7ca33460032cfca1581a8ff30f75ead289d8cd4cf62bb9
        - registry.redhat.io/rhel9/grafana@sha256:9f71de028c18034e07a8d15dac13ef68afb91cb899b9e8e7d39703547dd0eac1
        - registry.connect.redhat.com/kubecost/kubecost-cluster-controller@sha256:1a6f11dcd7341ab3f24eba23ec06c7b75646a534a7ed960153601806425469d1
        - registry.connect.redhat.com/kubecost/kubecost-frontend@sha256:f9b2196dc6ac017b8074f8fe40f1a58e7a2630282c5b7a019ca9f3dbdb670dc8
        - registry.connect.redhat.com/kubecost/kubecost-network-costs@sha256:c444d475be4f1aa36680bd84358e1e07303dcfe5d13a95544ad9e59f80d4a5f0
        - registry.connect.redhat.com/kubecost/operator@sha256:2cb5ec186af3264cba42333245616dd01f0f9868a849129b1a31afbc51ee1410
        - registry.connect.redhat.com/kubecost/kubecost-modeling@sha256:8f59f8fd8696964c1b5322ca79fae78befe97323fa56c2b509bdcc67ee4c0edd
        - quay.io/kiwigrid/k8s-sidecar@sha256:d3749777d5bedf62549b452a7e2ccb205da53588dc7f04927efc75d0da5b6d23
        version: 2.8.2
      entries:
      - name: kubecost-operator.v2.8.2
        version: 2.8.2
      - name: kubecost-operator.v2.8.1
        version: 2.8.1
      - name: kubecost-operator.v2.8.0
        version: 2.8.0
      - name: kubecost-operator.v2.7.2
        version: 2.7.2
      - name: kubecost-operator.v2.7.1
        version: 2.7.1
      - name: kubecost-operator.v2.5.4
        version: 2.5.4
      name: alpha
    - currentCSV: kubecost-operator.v3.0.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.kubecost.com/v1",
                "kind": "Kubecost",
                "metadata": {
                  "name": "kubecost-sample"
                },
                "spec": {
                  "global": {
                    "clusterId": "SET_A_UNIQUE_CLUSTER_ID_HERE",
                    "platforms": {
                      "cicd": {
                        "enabled": true,
                        "skipSanityChecks": true
                      },
                      "openshift": {
                        "enabled": true,
                        "route": {
                          "annotations": {},
                          "enabled": false
                        },
                        "scc": {
                          "clusterController": true,
                          "networkCosts": true
                        },
                        "securityContext": {
                          "runAsNonRoot": true,
                          "seccompProfile": {
                            "type": "RuntimeDefault"
                          }
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          createdAt: "2025-12-10T23:50:25Z"
          description: Deploys Kubecost 3.0.6 via the Helm chart.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: Contact Kubecost for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Kubecost.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Kubecost
            name: kubecosts.charts.kubecost.com
            version: v1
        description: |-
          Kubecost provides real-time cost visibility and insights for teams using Kubernetes, helping you continuously reduce your cloud costs.

          This OpenShift Operator deploys Kubecost from the official Helm chart.

          Kubecost allows you to:

          * See allocated spend across all native Kubernetes concepts and provide your teams with transparent, accurate cost data reconciled with your actual cloud bill.
          * Join in-cluster costs like CPU and memory with out-of-cluster spend from other cloud services.
          * Get complete cost visibility across OpenShift, On-Prem, AWS, GCP, Azure, Oracle, AliCloud + more.
          * Gain insights you can use to save 30-50%+ on your infrastructure spend, without exposing your private information — your data never gets shared externally, even with us.
          * Have real-time alerts and recurring reports, empowering teams to take control of their Kubernetes-enabled infrastructure and stay within budgeted limits.

          Visit the Kubecost website for more details including features, pricing, documentation, and more at www.kubecost.com.
        displayName: Kubecost
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kubernetes
        - cost
        - kubernetes costs
        - kubernetes optimization
        - k8s
        - cost monitoring
        - cloud costs
        - k8s cost
        links:
        - name: Kubecost
          url: https://www.kubecost.com
        maintainers:
        - email: support@kubecost.com
          name: Kubecost Support
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Kubecost
          url: https://www.kubecost.com
        relatedImages:
        - registry.connect.redhat.com/kubecost/kubecost-frontend@sha256:4e17cf2dfe83c0de79674cbeb6df7876fb572ee551ba4237a3036610770ad8e6
        - registry.connect.redhat.com/kubecost/kubecost-modeling@sha256:5d1e47f806520bfbb5448df19c0713a89e9a5a7b8e153407ac3eb356d44d979b
        - registry.connect.redhat.com/kubecost/kubecost-network-costs@sha256:3fca4e19e1270c64fdf3f3e7770cee1102c276bf86f6e8f1dded7cae8f005ac4
        - registry.connect.redhat.com/kubecost/kubecost-operator-manager@sha256:686bee59ecbdc1f002520f667e9883caaf0869de4a351154e9ae1c6fd60b4054
        - registry.connect.redhat.com/kubecost/operator@sha256:d04943c19d6e07111bcdada1f98af307dafb17f0107892c4dbc860e69510a728
        - registry.connect.redhat.com/kubecost/ibm-finops-agent@sha256:0ae8416f609c986ebc79819c3e5e29ca7957b40501fdbada8efdec7fa6123d01
        - registry.connect.redhat.com/kubecost/kubecost-cluster-controller@sha256:7389dfb6f47de9e0d9ee3a7d22b6cacd6ef120e08476cceaa3c12e6cea4d1a3c
        - registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:59a3a12bd394a428a99a56add3b3624eafd8adb73eaa4465ece431a0d666030d
        version: 3.0.6
      entries:
      - name: kubecost-operator.v3.0.6
        version: 3.0.6
      - name: kubecost-operator.v3.0.5
        version: 3.0.5
      - name: kubecost-operator.v3.0.4
        version: 3.0.4
      - name: kubecost-operator.v3.0.3
        version: 3.0.3
      - name: kubecost-operator.v3.0.2
        version: 3.0.2
      - name: kubecost-operator.v3.0.1
        version: 3.0.1
      - name: kubecost-operator.v3.0.0
        version: 3.0.0
      name: stable
    defaultChannel: stable
    packageName: kubecost-operator
    provider:
      name: Kubecost
      url: https://www.kubecost.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The CloudNativePG Contributors
      provider-url: ""
    name: cloudnative-pg
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cloudnative-pg.v1.28.0-rc2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: ghcr.io/cloudnative-pg/cloudnative-pg@sha256:97e930eb35abbcf91c913b6c2c11082687da071d902b9cdb086b9b2c0cca33fe
          createdAt: "2025-11-29T16:48:48Z"
          description: CloudNativePG is an open source operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/cloudnative-pg/cloudnative-pg
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.cnpg.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.cnpg.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.cnpg.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.io
            version: v1
        description: |
          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnpg` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: CloudNativePG
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnpg
        links:
        - name: CloudNativePG
          url: https://cloudnative-pg.io/
        - name: Documentation
          url: https://cloudnative-pg.io/docs/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: The CloudNativePG Contributors
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloudnative-pg@sha256:98bb34761d25ec5a6d8b6272ac7b64702512ee398c910b1cba5828b29b86622a
        - ghcr.io/cloudnative-pg/cloudnative-pg@sha256:97e930eb35abbcf91c913b6c2c11082687da071d902b9cdb086b9b2c0cca33fe
        - ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891
        - ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b
        version: 1.28.0-rc2
      entries:
      - name: cloudnative-pg.v1.28.0-rc2
        version: 1.28.0-rc2
      - name: cloudnative-pg.v1.28.0-rc1
        version: 1.28.0-rc1
      - name: cloudnative-pg.v1.27.0-rc1
        version: 1.27.0-rc1
      - name: cloudnative-pg.v1.26.0-rc3
        version: 1.26.0-rc3
      - name: cloudnative-pg.v1.26.0-rc2
        version: 1.26.0-rc2
      - name: cloudnative-pg.v1.26.0-rc1
        version: 1.26.0-rc1
      name: candidate
    - currentCSV: cloudnative-pg.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: ghcr.io/cloudnative-pg/cloudnative-pg@sha256:0869f9b996923aaf3eb761abe032b10ef482eaaef32fc6c604605a7223c13c1b
          createdAt: "2025-12-09T17:23:26Z"
          description: CloudNativePG is an open source operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/cloudnative-pg/cloudnative-pg
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.cnpg.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.cnpg.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.cnpg.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.io
            version: v1
        description: |
          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnpg` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: CloudNativePG
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnpg
        links:
        - name: CloudNativePG
          url: https://cloudnative-pg.io/
        - name: Documentation
          url: https://cloudnative-pg.io/docs/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: The CloudNativePG Contributors
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloudnative-pg@sha256:1301ead85309191e6f91d5c94de7e2569e3b0379172f86332d43dc8bddb94409
        - ghcr.io/cloudnative-pg/cloudnative-pg@sha256:0869f9b996923aaf3eb761abe032b10ef482eaaef32fc6c604605a7223c13c1b
        - ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891
        - ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b
        version: 1.28.0
      entries:
      - name: cloudnative-pg.v1.28.0
        version: 1.28.0
      - name: cloudnative-pg.v1.27.1
        version: 1.27.1
      - name: cloudnative-pg.v1.27.0
        version: 1.27.0
      - name: cloudnative-pg.v1.26.1
        version: 1.26.1
      - name: cloudnative-pg.v1.26.0
        version: 1.26.0
      - name: cloudnative-pg.v1.25.1
        version: 1.25.1
      - name: cloudnative-pg.v1.25.0
        version: 1.25.0
      - name: cloudnative-pg.v1.24.1
        version: 1.24.1
      - name: cloudnative-pg.v1.24.0
        version: 1.24.0
      - name: cloudnative-pg.v1.23.3
        version: 1.23.3
      - name: cloudnative-pg.v1.23.2
        version: 1.23.2
      - name: cloudnative-pg.v1.23.1
        version: 1.23.1
      name: stable-v1
    defaultChannel: stable-v1
    packageName: cloudnative-pg
    provider:
      name: The CloudNativePG Contributors
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ecrpublic-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ecrpublic-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ecrpublic-controller:1.2.0
          createdAt: "2025-11-29T03:26:51Z"
          description: AWS ECR PUBLIC controller is a service controller for managing
            ECR PUBLIC resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Repository represents the state of an AWS ecrpublic Repository
              resource.
            displayName: Repository
            kind: Repository
            name: repositories.ecrpublic.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon ECR PUBLIC resources in AWS from within your Kubernetes cluster.

          **About Amazon ECR PUBLIC**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ECR PUBLIC
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecrpublic
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ECR PUBLIC Developer Resources
          url: https://aws.amazon.com/ECR PUBLIC/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ecrpublic maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ecrpublic-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ecrpublic-controller@sha256:f63dd423730053d25be121eeeda0c5189d3e9bbce4d73963348e7a9220913e36
        version: 1.2.0
      entries:
      - name: ack-ecrpublic-controller.v1.2.0
        version: 1.2.0
      - name: ack-ecrpublic-controller.v1.1.2
        version: 1.1.2
      - name: ack-ecrpublic-controller.v1.1.1
        version: 1.1.1
      - name: ack-ecrpublic-controller.v1.1.0
        version: 1.1.0
      - name: ack-ecrpublic-controller.v1.0.14
        version: 1.0.14
      - name: ack-ecrpublic-controller.v1.0.12
        version: 1.0.12
      name: alpha
    defaultChannel: alpha
    packageName: ack-ecrpublic-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: The bpfman Community
      provider-url: https://bpfman.io/
    name: bpfman-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bpfman-operator.v0.5.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "bpfapplication"
                  },
                  "name": "bpfapplication-sample"
                },
                "spec": {
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/go-app-counter:v0.5.6"
                    }
                  },
                  "nodeselector": {},
                  "programs": [
                    {
                      "kprobe": {
                        "bpffunctionname": "kprobe_counter",
                        "func_name": "try_to_wake_up",
                        "offset": 0,
                        "retprobe": false
                      },
                      "type": "Kprobe"
                    },
                    {
                      "tracepoint": {
                        "bpffunctionname": "tracepoint_kill_recorder",
                        "names": [
                          "syscalls/sys_enter_kill"
                        ]
                      },
                      "type": "Tracepoint"
                    },
                    {
                      "tc": {
                        "bpffunctionname": "stats",
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      },
                      "type": "TC"
                    },
                    {
                      "tcx": {
                        "bpffunctionname": "tcx_stats",
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 500
                      },
                      "type": "TCX"
                    },
                    {
                      "type": "Uprobe",
                      "uprobe": {
                        "bpffunctionname": "uprobe_counter",
                        "containers": {
                          "containernames": [
                            "bpfman",
                            "bpfman-agent"
                          ],
                          "namespace": "bpfman",
                          "pods": {
                            "matchLabels": {
                              "name": "bpfman-daemon"
                            }
                          }
                        },
                        "func_name": "malloc",
                        "retprobe": false,
                        "target": "libc"
                      }
                    },
                    {
                      "type": "XDP",
                      "xdp": {
                        "bpffunctionname": "xdp_stats",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfNsApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "bpfnsapplication"
                  },
                  "name": "bpfapplication-sample",
                  "namespace": "acme"
                },
                "spec": {
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/go-app-counter:v0.5.6"
                    }
                  },
                  "nodeselector": {},
                  "programs": [
                    {
                      "tc": {
                        "bpffunctionname": "stats",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      },
                      "type": "TC"
                    },
                    {
                      "tcx": {
                        "bpffunctionname": "tcx_stats",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 500
                      },
                      "type": "TCX"
                    },
                    {
                      "type": "Uprobe",
                      "uprobe": {
                        "bpffunctionname": "uprobe_counter",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "func_name": "malloc",
                        "retprobe": false,
                        "target": "libc"
                      }
                    },
                    {
                      "type": "XDP",
                      "xdp": {
                        "bpffunctionname": "xdp_stats",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "FentryProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "fentryprogram"
                  },
                  "name": "fentry-example"
                },
                "spec": {
                  "bpffunctionname": "test_fentry",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/fentry:v0.5.6"
                    }
                  },
                  "func_name": "do_unlinkat",
                  "nodeselector": {}
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "FexitProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "fexitprogram"
                  },
                  "name": "fexit-example"
                },
                "spec": {
                  "bpffunctionname": "test_fexit",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/fexit:v0.5.6"
                    }
                  },
                  "func_name": "do_unlinkat",
                  "nodeselector": {}
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "KprobeProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "kprobeprogram"
                  },
                  "name": "kprobe-example"
                },
                "spec": {
                  "bpffunctionname": "my_kprobe",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/kprobe:v0.5.6"
                    }
                  },
                  "func_name": "try_to_wake_up",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeselector": {},
                  "offset": 0,
                  "retprobe": false
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcnsprogram"
                  },
                  "name": "tc-containers",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tc_pass:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "interfaces": [
                      "eth0"
                    ]
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcprogram"
                  },
                  "name": "tc-pass-all-nodes"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tc_pass:v0.5.6"
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "primarynodeinterface": true
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcxNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcxnsprogram"
                  },
                  "name": "tcx-containers",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "tcx_next",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tcx_test:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "interfaces": [
                      "eth0"
                    ]
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcxProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcxprogram"
                  },
                  "name": "tcx-pass-all-nodes"
                },
                "spec": {
                  "bpffunctionname": "tcx_pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tcx_test:v0.5.6"
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "primarynodeinterface": true
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TracepointProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tracepointprogram"
                  },
                  "name": "tracepoint-example"
                },
                "spec": {
                  "bpffunctionname": "enter_openat",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tracepoint:v0.5.6"
                    }
                  },
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "names": [
                    "syscalls/sys_enter_openat"
                  ],
                  "nodeselector": {}
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "UprobeNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "uprobensprogram"
                  },
                  "name": "uprobe-example",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "my_uprobe",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/uprobe:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "func_name": "syscall",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeselector": {},
                  "retprobe": false,
                  "target": "libc"
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "UprobeProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "uprobeprogram"
                  },
                  "name": "uprobe-example"
                },
                "spec": {
                  "bpffunctionname": "my_uprobe",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/uprobe:v0.5.6"
                    }
                  },
                  "func_name": "syscall",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeselector": {},
                  "retprobe": false,
                  "target": "libc"
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "XdpNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "xdpnsprogram"
                  },
                  "name": "xdp-ns-pass-all-nodes",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/xdp_pass:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "interfaces": [
                      "eth0"
                    ]
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "XdpProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "xdpprogram"
                  },
                  "name": "xdp-pass-all-nodes"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/xdp_pass:v0.5.6"
                    }
                  },
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "primarynodeinterface": true
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/bpfman/bpfman-operator:v0.5.6
          createdAt: "2025-02-18T13:44:53Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: bpfman
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "bpfman",
                "labels": {
                  "pod-security.kubernetes.io/enforce": "privileged",
                  "pod-security.kubernetes.io/audit": "privileged",
                  "pod-security.kubernetes.io/warn": "privileged",
                },
                "annotations": {
                  "openshift.io/node-selector": ""
                },
              }
            }
          operators.openshift.io/infrastructure-features: '["csi", "disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/bpfman/bpfman
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BpfApplication is the Schema for the bpfapplications API
            displayName: Bpf Application
            kind: BpfApplication
            name: bpfapplications.bpfman.io
            version: v1alpha1
          - description: BpfNsApplication is the Schema for the BpfNsApplications
              API
            displayName: Bpf Namespaced Application
            kind: BpfNsApplication
            name: bpfnsapplications.bpfman.io
            version: v1alpha1
          - description: BpfNsProgram is the Schema for the BpfNsProgram API
            displayName: Bpf Namespaced Program
            kind: BpfNsProgram
            name: bpfnsprograms.bpfman.io
            version: v1alpha1
          - description: BpfProgram is the Schema for the BpfProgram API
            displayName: Bpf Program
            kind: BpfProgram
            name: bpfprograms.bpfman.io
            version: v1alpha1
          - description: FentryProgram is the Schema for the Fentryprograms API
            displayName: Fentry Program
            kind: FentryProgram
            name: fentryprograms.bpfman.io
            version: v1alpha1
          - description: FexitProgram is the Schema for the Fexitprograms API
            displayName: Fexit Program
            kind: FexitProgram
            name: fexitprograms.bpfman.io
            version: v1alpha1
          - description: KprobeProgram is the Schema for the Kprobeprograms API
            displayName: Kprobe Program
            kind: KprobeProgram
            name: kprobeprograms.bpfman.io
            version: v1alpha1
          - description: TcNsProgram is the Schema for the Tcnsprograms API
            displayName: TC Namespaced Program
            kind: TcNsProgram
            name: tcnsprograms.bpfman.io
            version: v1alpha1
          - description: TcProgram is the Schema for the Tcprograms API
            displayName: TC Program
            kind: TcProgram
            name: tcprograms.bpfman.io
            version: v1alpha1
          - description: TcxNsProgram is the Schema for the Tcxnsprograms API
            displayName: TCX Namespaced Program
            kind: TcxNsProgram
            name: tcxnsprograms.bpfman.io
            version: v1alpha1
          - description: TcxProgram is the Schema for the Tcxprograms API
            displayName: TCX Program
            kind: TcxProgram
            name: tcxprograms.bpfman.io
            version: v1alpha1
          - description: TracepointProgram is the Schema for the Tracepointprograms
              API
            displayName: Tracepoint Program
            kind: TracepointProgram
            name: tracepointprograms.bpfman.io
            version: v1alpha1
          - description: UprobeNsProgram is the Schema for the Uprobensprograms API
            displayName: Uprobe Namespaced Program
            kind: UprobeNsProgram
            name: uprobensprograms.bpfman.io
            version: v1alpha1
          - description: UprobeProgram is the Schema for the Uprobeprograms API
            displayName: Uprobe Program
            kind: UprobeProgram
            name: uprobeprograms.bpfman.io
            version: v1alpha1
          - description: XdpNsProgram is the Schema for the Xdpnsprograms API
            displayName: Xdp Namespaced Program
            kind: XdpNsProgram
            name: xdpnsprograms.bpfman.io
            version: v1alpha1
          - description: XdpProgram is the Schema for the Xdpprograms API
            displayName: Xdp Program
            kind: XdpProgram
            name: xdpprograms.bpfman.io
            version: v1alpha1
        description: "The bpfman Operator is a Kubernetes Operator for deploying [bpfman](https://bpfman.netlify.app/),
          a system daemon\nfor managing eBPF programs. It deploys bpfman itself along
          with CRDs to make deploying\neBPF programs in Kubernetes much easier.\n\n##
          Quick Start\n\nTo get bpfman up and running quickly simply click 'install'
          to deploy the bpfman-operator in the bpfman namespace via operator-hub.\n##
          Configuration\n\nThe `bpfman-config` configmap is automatically created
          in the `bpfman` namespace and used to configure the bpfman deployment.\n\nTo
          edit the config simply run\n\n```bash\nkubectl edit cm bpfman-config\n```\n\nThe
          following fields are adjustable\n\n- `bpfman.agent.image`: The image used
          for the bpfman-agent`\n- `bpfman.image`: The image used for bpfman`\n- `bpfman.log.level`:
          the log level for bpfman, currently supports `debug`, `info`, `warn`, `error`,
          and `fatal`, defaults to `info`\n- `bpfman.agent.log.level`: the log level
          for the bpfman-agent currently supports `info`, `debug`, and `trace` \n\nThe
          bpfman operator deploys eBPF programs via CRDs. The following CRDs are currently
          available, \n\n- BpfApplication\n- FentryProgram\n- FexitProgram\n - KprobeProgram\n-
          TcProgram\n- TcxProgram\n- TracepointProgram\n- UprobeProgram\n- XdpProgram\n
          - BpfNsApplication\n- TcNsProgram\n- TcxNsProgram\n- UprobeNsProgram\n-
          XdpNsProgram\n- BpfProgram\n - BpfNsProgram\n\n ## More information\n\nPlease
          checkout the [bpfman community website](https://bpfman.io/) for more information."
        displayName: Bpfman Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ebpf
        - kubernetes
        links:
        - name: bpfman website
          url: https://bpfman.io/
        maintainers:
        - email: astoycos@redhat.com
          name: Andrew Stoycos
        - email: afredette@redhat.com
          name: Andre Fredette
        maturity: alpha
        provider:
          name: The bpfman Community
          url: https://bpfman.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/bpfman-operator@sha256:6b3603c7c1917c67b5aa57202d1d2fdc0d9ac6b3a9373afa7172f322b3b3fa9b
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/bpfman/bpfman-operator:v0.5.6
        version: 0.5.6
      entries:
      - name: bpfman-operator.v0.5.6
        version: 0.5.6
      - name: bpfman-operator.v0.5.5
        version: 0.5.5
      - name: bpfman-operator.v0.5.4
        version: 0.5.4
      - name: bpfman-operator.v0.5.2
        version: 0.5.2
      - name: bpfman-operator.v0.5.1
        version: 0.5.1
      - name: bpfman-operator.v0.5.0
        version: 0.5.0
      name: alpha
    defaultChannel: alpha
    packageName: bpfman-operator
    provider:
      name: The bpfman Community
      url: https://bpfman.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: keepalived-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keepalived-operator.v1.5.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KeepalivedGroup",
                "metadata": {
                  "name": "keepalivedgroup-workers"
                },
                "spec": {
                  "blacklistRouterIDs": [
                    1,
                    2
                  ],
                  "image": "registry.redhat.io/openshift4/ose-keepalived-ipfailover",
                  "interface": "ens3",
                  "nodeSelector": {
                    "node-role.kubernetes.io/loadbalancer": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Networking, Cloud Provider
          certified: "false"
          containerImage: quay.io/redhat-cop/keepalived-operator@sha256:cd0c2f7df82df1178795e4a18a0942da33adb9670b192a7b7a2b1483a5b4ccf8
          createdAt: "2023-03-11T18:48:22Z"
          description: This operator provides a simple way to create self-hosted load
            balancers using keepalived.
          operatorframework.io/suggested-namespace: keepalived-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/keepalived-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: KeepalivedGroup
            name: keepalivedgroups.redhatcop.redhat.io
            version: v1alpha1
        description: "The objective of the keepalived operator is to allow for a way
          to create self-hosted load balancers in an automated way. From a user experience
          point of view the behavior is the same as of when creating [`LoadBalancer`](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
          services with a cloud provider able to manage them.\n\nThe keepalived operator
          can be used in all environments that allows nodes to advertise additional
          IPs on their NICs (and at least for now, in networks that allow multicast),
          however it's mainly aimed at supporting LoadBalancer services and ExternalIPs
          on bare metal installations (or other installation environments where a
          cloud provider is not available).\n\nOne possible use of the keepalived
          operator is also to support [OpenShift Ingresses](https://docs.openshift.com/container-platform/4.5/networking/configuring_ingress_cluster_traffic/overview-traffic.html)
          in environments where an external load balancer cannot be provisioned.\n\n##
          How it works\n\nThe keepalived operator will create one or more [VIPs](https://en.wikipedia.org/wiki/Virtual_IP_address)
          (an HA IP that floats between multiple nodes), based on the [`LoadBalancer`](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
          services and/or services requesting [`ExternalIPs`](https://kubernetes.io/docs/concepts/services-networking/service/#external-ips).\n\nFor
          `LoadBalancer` services the IPs found at `.Status.LoadBalancer.Ingress[].IP`
          will become VIPs.\n\nFor services requesting a `ExternalIPs`, the IPs found
          at `.Spec.ExternalIPs[]` will become VIPs.\n\nNote that a service can be
          of `LoadBalancer` type and also request `ExternalIPs`, it this case both
          sets of IPs will become VIPs.\n\nDue to a [keepalived](https://www.keepalived.org/manpage.html)
          limitation a single keepalived cluster can manage up to 256 VIP configurations.
          Multiple keepalived clusters can coexists in the same network as long as
          they use different multicast ports [TODO verify this statement].\n\nTo address
          this limitation the `KeepalivedGroup` [CRD](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/)
          has been introduced. This CRD is supposed to be configured by an administrator
          and allows you to specify a node selector to pick on which nodes the keepalived
          pods should be deployed. Here is an example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          KeepalivedGroup\nmetadata:\n  name: keepalivedgroup-router\nspec:\n  image:
          registry.redhat.io/openshift4/ose-keepalived-ipfailover\n  interface: ens3\n
          \ nodeSelector:\n    node-role.kubernetes.io/loadbalancer: \"\"\n  blacklistRouterIDs:\n
          \ - 1\n  - 2  \n```\n\nThis KeepalivedGroup will be deployed on all the
          nodes with role `loadbalancer`. One must also specify the network device
          on which the VIPs will be exposed, it is assumed that all the nodes have
          the same network device configuration.\n\nServices must be annotated to
          opt-in to being observed by the keepalived operator and to specify which
          KeepalivedGroup they refer to. The annotation looks like this:\n\n`keepalived-operator.redhat-cop.io/keepalivedgroup:
          <keepalivedgroup namespace>/<keepalivedgroup-name>`\n\nThe image used for
          the keepalived containers can be specified with `.Spec.Image` it will default
          to `registry.redhat.io/openshift4/ose-keepalived-ipfailover` if undefined.
          \n\n## Requirements\n\n### Security Context Constraints\n\nEach KeepalivedGroup
          deploys a [daemonset](https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/)
          that requires the [privileged scc](https://docs.openshift.com/container-platform/4.5/authentication/managing-security-context-constraints.html),
          this permission must be given to the `default` service account in the namespace
          where the keepalived group is created by and administrator.\n\n```shell\noc
          adm policy add-scc-to-user privileged -z default -n keepalived-operator\n```\n\n###
          Cluster Network Operator\n\nIn Openshift, use of an external IP address
          is governed by the following fields in the `Network.config.openshift.io`
          CR named `cluster`\n\n* `spec.externalIP.autoAssignCIDRs` defines an IP
          address block used by the load balancer when choosing an external IP address
          for the service. OpenShift supports only a single IP address block for automatic
          assignment.\n\n* `spec.externalIP.policy` defines the permissible IP address
          blocks when manually specifying an IP address. OpenShift does not apply
          policy rules to IP address blocks defined by `spec.externalIP.autoAssignCIDRs`\n\nThe
          following patch can be used to configure the Cluster Network Operator:\n\n```yaml\nspec:\n
          \ externalIP:\n    policy:\n      allowedCIDRs:\n      - ${ALLOWED_CIDR}\n
          \   autoAssignCIDRs:\n      - \"${AUTOASSIGNED_CIDR}\"\n```\n\nHere is an
          example of how to apply the patch:\n\n```shell\nexport ALLOWED_CIDR=\"192.168.131.128/26\"\nexport
          AUTOASSIGNED_CIDR=\"192.168.131.192/26\"\noc patch network cluster -p \"$(envsubst
          < ./network-patch.yaml | yq r -j -)\" --type=merge\n```\nAdditionally, the
          fields can be edited manually via `oc edit Network.config.openshift.io cluster`\n\n##
          Blacklisting router IDs\n\nIf the Keepalived pods are deployed on nodes
          which are in the same network (same broadcast domain to be precise) with
          other keepalived the process, it's necessary to ensure that there is no
          collision between the used routers it.\nFor this purpose it is possible
          to provide a `blacklistRouterIDs` field with a list of black-listed IDs
          that will not be used.\n\n## OpenShift RHV, vSphere, OSP and bare metal
          IPI instructions\n\nWhen IPI is used for RHV, vSphere, OSP or bare metal
          platforms, three keepalived VIPs are deployed. To make sure that keepalived-operator
          can work in these environment we need to discover and blacklist the corresponding
          VRRP router IDs.\n\nTo discover the VRRP router IDs being used, run the
          following command, you can run this command from you laptop:\n\n```shell\npodman
          run quay.io/openshift/origin-baremetal-runtimecfg:4.5 vr-ids <cluster_name>\n```\n\nIf
          you don't know your cluster name, run this command:\n\n```shell\npodman
          run quay.io/openshift/origin-baremetal-runtimecfg:4.5 vr-ids $(oc get cm
          cluster-config-v1 -n kube-system -o jsonpath='{.data.install-config}'| yq
          -r .metadata.name)\n```\n\nThen use these [instructions](#Blacklisting-router-IDs)
          to blacklist those VRRP router IDs.\n\n## Verbatim Configurations\n\nKeepalived
          has dozens of [configurations](https://www.keepalived.org/manpage.html).
          At the early stage of this project it's difficult to tell which one should
          be modeled in the API. Yet, users of this project may still need to use
          them. To account for that there is a way to pass verbatim options both at
          the keepalived group level (which maps to the keepalived config `global_defs`
          section) and at the service level (which maps to the keepalived config `vrrp_instance`
          section).\n\nKeepalivedGroup-level verbatim configurations can be passed
          as in the following example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          KeepalivedGroup\nmetadata:\n  name: keepalivedgroup-router\nspec:\n  interface:
          ens3\n  nodeSelector:\n    node-role.kubernetes.io/loadbalancer: \"\"\n
          \ verbatimConfig:  \n    vrrp_iptables: my-keepalived\n```\n\nthis will
          map to the following `global_defs`:\n\n```\n    global_defs {\n        router_id
          keepalivedgroup-router\n        vrrp_iptables my-keepalived\n    }\n```\n\nService-level
          verbatim configurations can be passed as in the following example:\n\n```yaml\napiVersion:
          v1\nkind: Service\nmetadata:\n  annotations:\n    keepalived-operator.redhat-cop.io/keepalivedgroup:
          keepalived-operator/keepalivedgroup-router\n    keepalived-operator.redhat-cop.io/verbatimconfig:
          '{ \"track_src_ip\": \"\" }'\n```\n\nthis will map to the following `vrrp_instance`
          section\n\n```\n    vrrp_instance openshift-ingress/router-default {\n        interface
          ens3\n        virtual_router_id 1  \n        virtual_ipaddress {\n          192.168.131.129\n
          \       }\n        track_src_ip\n    }\n```\n\n## Metrics collection\n\nEach
          keepalived pod exposes a [Prometheus](https://prometheus.io/) metrics port
          at `9650`. Metrics are collected with [keepalived_exporter](github.com/gen2brain/keepalived_exporter),
          the available metrics are described in the project documentation.\n\nWhen
          a keepalived group is created a [`PodMonitor`](https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#podmonitor)
          rule to collect those metrics. All PodMonitor resources created that way
          have the label: `metrics: keepalived`. It is up to you to make sure your
          Prometheus instance watches for those `PodMonitor` rules. Here is an example
          of a fragment of a `Prometheus` CR configured to collect the keepalived
          pod metrics:\n\n```yaml\n  podMonitorSelector:\n    matchLabels:\n      metrics:
          keepalived\n```\n"
        displayName: Keepalived Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - loadbalancer
        - keepalived
        - ipfailover
        - externalIP
        - self-hosted
        links:
        - name: Keepalived Operator
          url: https://github.com/redhat-cop/keepalived-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/keepalived-operator
        maintainers:
        - email: rspazzol@redhat.com'
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/keepalived-operator@sha256:5a46fcb72f02a1f0d9cbc72f44948ef4b09149a4b3fe2e45fd31df90d20b3c56
        - quay.io/redhat-cop/keepalived-operator@sha256:cd0c2f7df82df1178795e4a18a0942da33adb9670b192a7b7a2b1483a5b4ccf8
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.5.4
      entries:
      - name: keepalived-operator.v1.5.4
        version: 1.5.4
      - name: keepalived-operator.v1.5.3
        version: 1.5.3
      - name: keepalived-operator.v1.5.2
        version: 1.5.2
      - name: keepalived-operator.v1.5.1
        version: 1.5.1
      - name: keepalived-operator.v1.5.0
        version: 1.5.0
      - name: keepalived-operator.v1.4.2
        version: 1.4.2
      - name: keepalived-operator.v1.4.1
        version: 1.4.1
      - name: keepalived-operator.v1.4.0
        version: 1.4.0
      - name: keepalived-operator.v1.3.4
        version: 1.3.4
      - name: keepalived-operator.v1.3.3
        version: 1.3.3
      - name: keepalived-operator.v1.3.2
        version: 1.3.2
      - name: keepalived-operator.v1.3.1
        version: 1.3.1
      - name: keepalived-operator.v1.3.0
        version: 1.3.0
      - name: keepalived-operator.v1.2.2
        version: 1.2.2
      - name: keepalived-operator.v1.2.1
        version: 1.2.1
      - name: keepalived-operator.v1.2.0
        version: 1.2.0
      - name: keepalived-operator.v1.1.0
        version: 1.1.0
      - name: keepalived-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: keepalived-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Pulp Community
      provider-url: https://github.com/pulp/pulp-operator
    name: pulp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pulp-operator.v1.0.0-alpha.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "Pulp",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "api": {
                    "replicas": 1
                  },
                  "cache_enabled": true,
                  "content": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "file_storage_access_mode": "ReadWriteMany",
                  "file_storage_size": "10Gi",
                  "ingress_type": "Route",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/pulp/"
                  },
                  "storage_type": "File",
                  "worker": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "Pulp",
                "metadata": {
                  "name": "example-pulp"
                },
                "spec": {
                  "api": {
                    "replicas": 1
                  },
                  "cache": {
                    "enabled": true,
                    "redis_storage_class": "standard"
                  },
                  "content": {
                    "replicas": 1
                  },
                  "database": {
                    "postgres_storage_class": "standard"
                  },
                  "deployment_type": "pulp",
                  "file_storage_access_mode": "ReadWriteOnce",
                  "file_storage_size": "2Gi",
                  "file_storage_storage_class": "standard",
                  "image_version": "nightly",
                  "image_web_version": "nightly",
                  "ingress_type": "nodeport",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/pulp/",
                    "telemetry": false
                  },
                  "web": {
                    "replicas": 1
                  },
                  "worker": {
                    "replicas": 1
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "Pulp",
                "metadata": {
                  "name": "galaxy-example"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "api": {
                    "replicas": 1
                  },
                  "content": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "database": {
                    "postgres_storage_class": "standard"
                  },
                  "deployment_type": "galaxy",
                  "file_storage_access_mode": "ReadWriteMany",
                  "file_storage_size": "10Gi",
                  "file_storage_storage_class": "standard",
                  "image": "quay.io/pulp/galaxy-minimal",
                  "image_version": "nightly",
                  "image_web": "quay.io/pulp/galaxy-web",
                  "image_web_version": "nightly",
                  "ingress_type": "nodeport",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/api/galaxy/pulp/",
                    "telemetry": false
                  },
                  "signing_scripts_configmap": "signing-scripts",
                  "signing_secret": "signing-galaxy",
                  "storage_type": "File",
                  "web": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "worker": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "PulpBackup",
                "metadata": {
                  "name": "pulpbackup-sample"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "backup_storage_class": "standard",
                  "deployment_name": "galaxy-example",
                  "deployment_type": "galaxy",
                  "instance_name": "pulp",
                  "postgres_configuration_secret": "galaxy-example-postgres-configuration"
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "PulpRestore",
                "metadata": {
                  "name": "ci-pulprestore"
                },
                "spec": {
                  "backup_name": "pulpbackup-sample",
                  "deployment_name": "galaxy-example"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          containerImage: quay.io/pulp/pulp-operator:v1.0.0-alpha.1
          createdAt: "2021-03-26 16:57:40"
          description: Pulp is a platform for managing repositories of software packages
            and making them available to a large number of consumers.
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/pulp/pulp-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PulpBackup is the Schema for the pulpbackups API
            displayName: Pulp Backup
            kind: PulpBackup
            name: pulpbackups.repo-manager.pulpproject.org
            version: v1alpha1
          - description: PulpRestore is the Schema for the pulprestores API
            displayName: Pulp Restore
            kind: PulpRestore
            name: pulprestores.repo-manager.pulpproject.org
            version: v1alpha1
          - description: Pulp is the Schema for the pulps API
            displayName: Pulp
            kind: Pulp
            name: pulps.repo-manager.pulpproject.org
            version: v1alpha1
        description: |-
          [Pulp](https://pulpproject.org/) is a platform for managing repositories of content, such as software packages, and making them available to a large number of consumers.

          With Pulp you can:

          * Locally mirror all or part of a repository
          * Host your own content in a new repository
          * Manage content from multiple sources in one place
          * Promote content through different repos in an organized way

          If you have dozens, hundreds, or thousands of software packages and need a better way to manage them, Pulp can help.

          Pulp is completely free and open-source!

          * License: GPLv2+
          * Documentation: [https://docs.pulpproject.org/](https://docs.pulpproject.org/)
          * Source: [https://github.com/pulp/pulpcore/](https://github.com/pulp/pulpcore/)

          For more information, check out the project website: [https://pulpproject.org](https://pulpproject.org)

          If you want to evaluate Pulp quickly, try [Pulp in One Container](https://pulpproject.org/pulp-in-one-container/)

          ## Pulp Operator

          Pulp Operator is under active development, with the goal to provide a scalable and robust cluster for Pulp 3.

          Note that Pulp operator works with three different types of service containers (the operator itself, the main service and the web service):

          |           | Operator | Main | Web |
          | --------- | -------- | ---- | --- |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[pulp-minimal](https://quay.io/repository/pulp/pulp-minimal?tab=tags) | [pulp-web](https://quay.io/repository/pulp/pulp-web?tab=tags) |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[galaxy-minimal](https://quay.io/repository/pulp/galaxy-minimal?tab=tags) | [galaxy-web](https://quay.io/repository/pulp/galaxy-web?tab=tags) |

          <br>Pulp operator is manually built and [hosted on quay.io](https://quay.io/repository/pulp/pulp-operator). Read more about the container images [here](https://docs.pulpproject.org/pulp_operator/container/).

          ## Custom Resource Definitions
          Pulp Operator currently provides three different kinds of [Custom Resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#custom-resources): Pulp, Pulp Backup and Pulp Restore.
          ### Pulp
          Manages the Pulp application and its deployments, services, etc.
          ### Pulp Backup
          Manages pulp backup.

          ### Pulp Restore
          Manages the restoration of a pulp backup.

          ## Get Help

          Documentation: [https://docs.pulpproject.org/pulp_operator/](https://docs.pulpproject.org/pulp_operator/)

          Issue Tracker: [https://github.com/pulp/pulp-operator/issues](https://github.com/pulp/pulp-operator/issues)

          Forum: [https://discourse.pulpproject.org/](https://discourse.pulpproject.org/)

          Join [**#pulp** on Matrix](https://matrix.to/#/#pulp:matrix.org)

          Join [**#pulp-dev** on Matrix](https://matrix.to/#/#pulp-dev:matrix.org) for Developer discussion.
        displayName: Pulp Project
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pulp
        - pulpcore
        - content
        - repositories
        - lifecycle
        links:
        - name: Pulp Operator
          url: https://github.com/pulp/pulp-operator
        - name: Pulp Project
          url: https://pulpproject.org/
        - name: Docs
          url: https://docs.pulpproject.org/pulp_operator/
        maintainers:
        - email: pulp-list@redhat.com
          name: Pulp Community
        maturity: beta
        provider:
          name: Pulp Community
          url: https://github.com/pulp/pulp-operator
        relatedImages:
        - docker.io/library/postgres:13
        - docker.io/library/redis:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/openshift-community-operators/pulp-operator@sha256:1926e96b185443ff0c7a2861cefc2e3aded0c0493e0d7f7d78e45447e06750d4
        - quay.io/pulp/pulp-minimal:stable
        - quay.io/pulp/pulp-operator:v1.0.0-alpha.1
        - quay.io/pulp/pulp-web:stable
        version: 1.0.0-alpha.1
      entries:
      - name: pulp-operator.v1.0.0-alpha.1
        version: 1.0.0-alpha.1
      name: alpha
    - currentCSV: pulp-operator.v1.0.0-beta.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "Pulp",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "api": {
                    "replicas": 1
                  },
                  "cache": {
                    "enabled": true
                  },
                  "content": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "ingress_type": "nodeport",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/pulp/"
                  },
                  "worker": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "Pulp",
                "metadata": {
                  "name": "galaxy-example"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "api": {
                    "replicas": 1
                  },
                  "content": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "database": {
                    "postgres_storage_class": "standard"
                  },
                  "deployment_type": "galaxy",
                  "file_storage_access_mode": "ReadWriteMany",
                  "file_storage_size": "10Gi",
                  "file_storage_storage_class": "standard",
                  "image": "quay.io/pulp/galaxy-minimal",
                  "image_version": "4.6.3",
                  "image_web": "quay.io/pulp/galaxy-web",
                  "image_web_version": "4.6.3",
                  "ingress_type": "nodeport",
                  "nodeport_port": 30000,
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "analytics": false,
                    "ansible_api_hostname": "http://nodeport.local:30000",
                    "api_root": "/api/galaxy/pulp/",
                    "content_origin": "http://nodeport.local:30000",
                    "galaxy_feature_flags": {
                      "ai_deny_index": true,
                      "execution_environments": true
                    },
                    "token_server": "http://nodeport.local:30000/token/"
                  },
                  "signing_scripts": "signing-scripts",
                  "signing_secret": "signing-galaxy",
                  "web": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "worker": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "PulpBackup",
                "metadata": {
                  "name": "pulpbackup-sample"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "backup_storage_class": "standard",
                  "deployment_name": "galaxy-example",
                  "deployment_type": "galaxy",
                  "postgres_configuration_secret": "galaxy-example-postgres-configuration"
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "PulpRestore",
                "metadata": {
                  "name": "ci-pulprestore"
                },
                "spec": {
                  "backup_name": "pulpbackup-sample",
                  "deployment_name": "galaxy-example"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/pulp/pulp-operator:v1.0.0-beta.4
          createdAt: "2024-01-18T20:33:37Z"
          description: Pulp is a platform for managing repositories of software packages
            and making them available to a large number of consumers.
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/pulp/pulp-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PulpBackup is the Schema for the pulpbackups API
            displayName: Pulp Backup
            kind: PulpBackup
            name: pulpbackups.repo-manager.pulpproject.org
            version: v1beta2
          - description: PulpRestore is the Schema for the pulprestores API
            displayName: Pulp Restore
            kind: PulpRestore
            name: pulprestores.repo-manager.pulpproject.org
            version: v1beta2
          - description: Pulp is the Schema for the pulps API
            displayName: Pulp
            kind: Pulp
            name: pulps.repo-manager.pulpproject.org
            version: v1beta2
        description: |-
          [Pulp](https://pulpproject.org/) is a platform for managing repositories of content, such as software packages, and making them available to a large number of consumers.

          With Pulp you can:

          * Locally mirror all or part of a repository
          * Host your own content in a new repository
          * Manage content from multiple sources in one place
          * Promote content through different repos in an organized way

          If you have dozens, hundreds, or thousands of software packages and need a better way to manage them, Pulp can help.

          Pulp is completely free and open-source!

          * License: GPLv2+
          * Documentation: [https://docs.pulpproject.org/](https://docs.pulpproject.org/)
          * Source: [https://github.com/pulp/pulpcore/](https://github.com/pulp/pulpcore/)

          For more information, check out the project website: [https://pulpproject.org](https://pulpproject.org)

          If you want to evaluate Pulp quickly, try [Pulp in One Container](https://pulpproject.org/pulp-in-one-container/)

          ## Pulp Operator

          Pulp Operator is under active development, with the goal to provide a scalable and robust cluster for Pulp 3.

          Note that Pulp operator works with three different types of service containers (the operator itself, the main service and the web service):

          |           | Operator | Main | Web |
          | --------- | -------- | ---- | --- |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[pulp-minimal](https://quay.io/repository/pulp/pulp-minimal?tab=tags) | [pulp-web](https://quay.io/repository/pulp/pulp-web?tab=tags) |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[galaxy-minimal](https://quay.io/repository/pulp/galaxy-minimal?tab=tags) | [galaxy-web](https://quay.io/repository/pulp/galaxy-web?tab=tags) |

          <br>Pulp operator is manually built and [hosted on quay.io](https://quay.io/repository/pulp/pulp-operator). Read more about the container images [here](https://docs.pulpproject.org/pulp_operator/container/).

          ## Custom Resource Definitions
          Pulp Operator currently provides three different kinds of [Custom Resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#custom-resources): Pulp, Pulp Backup and Pulp Restore.
          ### Pulp
          Manages the Pulp application and its deployments, services, etc.
          ### Pulp Backup
          Manages pulp backup.

          ### Pulp Restore
          Manages the restoration of a pulp backup.

          ## Get Help

          Documentation: [https://docs.pulpproject.org/pulp_operator/](https://docs.pulpproject.org/pulp_operator/)

          Issue Tracker: [https://github.com/pulp/pulp-operator/issues](https://github.com/pulp/pulp-operator/issues)

          Forum: [https://discourse.pulpproject.org/](https://discourse.pulpproject.org/)

          Join [**#pulp** on Matrix](https://matrix.to/#/#pulp:matrix.org)

          Join [**#pulp-dev** on Matrix](https://matrix.to/#/#pulp-dev:matrix.org) for Developer discussion.
        displayName: Pulp Project
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pulp
        - pulpcore
        - content
        - repositories
        - lifecycle
        links:
        - name: Pulp Operator
          url: https://github.com/pulp/pulp-operator
        - name: Pulp Project
          url: https://pulpproject.org/
        - name: Docs
          url: https://docs.pulpproject.org/pulp_operator/
        maintainers:
        - email: pulp-list@redhat.com
          name: Pulp Community
        maturity: beta
        provider:
          name: Pulp Community
          url: https://github.com/pulp/pulp-operator
        relatedImages:
        - quay.io/pulp/pulp-operator:v1.0.0-beta.4
        - quay.io/pulp/pulp-web:stable
        - docker.io/library/postgres:13
        - docker.io/library/redis:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.14.4
        - quay.io/community-operator-pipeline-prod/pulp-operator@sha256:1e75649538f13cf3bb2e6131160f038a70689d6f92a110bdcec348e865040c4a
        - quay.io/pulp/pulp-minimal:stable
        version: 1.0.0-beta.4
      entries:
      - name: pulp-operator.v1.0.0-beta.4
        version: 1.0.0-beta.4
      - name: pulp-operator.v1.0.0-beta.3
        version: 1.0.0-beta.3
      - name: pulp-operator.v1.0.0-beta.2
        version: 1.0.0-beta.2
      - name: pulp-operator.v1.0.0-beta.1
        version: 1.0.0-beta.1
      - name: pulp-operator.v1.0.0-alpha.9
        version: 1.0.0-alpha.9
      - name: pulp-operator.v1.0.0-alpha.8
        version: 1.0.0-alpha.8
      - name: pulp-operator.v1.0.0-alpha.7
        version: 1.0.0-alpha.7
      - name: pulp-operator.v1.0.0-alpha.6
        version: 1.0.0-alpha.6
      - name: pulp-operator.v1.0.0-alpha.5
        version: 1.0.0-alpha.5
      - name: pulp-operator.v1.0.0-alpha.4
        version: 1.0.0-alpha.4
      - name: pulp-operator.v1.0.0-alpha.3
        version: 1.0.0-alpha.3
      - name: pulp-operator.v1.0.0-alpha.2
        version: 1.0.0-alpha.2
      - name: pulp-operator.v1.0.0-alpha.1
        version: 1.0.0-alpha.1
      name: beta
    defaultChannel: beta
    packageName: pulp-operator
    provider:
      name: Pulp Community
      url: https://github.com/pulp/pulp-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Altair Engineering Inc.
      provider-url: ""
    name: anzounstructured-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: anzounstructured-operator.v3.1.300
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "anzounstructured.clusters.cambridgesemantics.com/v1",
                "kind": "AnzoUnstructured",
                "metadata": {
                  "name": "au01"
                },
                "spec": {
                  "auWorker": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app": "anzounstructured"
                          }
                        },
                        "serviceName": "au-au01-w",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app": "anzounstructured"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzo-unstructured-worker@sha256:94e4686d284c876a3dca36f7dfad7a06755f70ece16bf365b3933138b9283aa2",
                                "name": "w",
                                "resources": {
                                  "limits": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  },
                                  "requests": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  }
                                }
                              }
                            ],
                            "serviceAccountName": "unstructured-operator"
                          }
                        }
                      }
                    }
                  },
                  "msLeader": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app": "anzounstructured"
                          }
                        },
                        "serviceName": "au-au01-ms",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app": "anzounstructured"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzo-microservices-leader@sha256:3575310a78b08818781cab678d98f31160f539cf7c99c3601a86beb5bcf3d9fb",
                                "name": "ms",
                                "resources": {
                                  "limits": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  },
                                  "requests": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  }
                                }
                              }
                            ],
                            "serviceAccountName": "unstructured-operator"
                          }
                        }
                      }
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Basic Install
          categories: Database, Big Data
          certified: "true"
          containerImage: registry.connect.redhat.com/cambridgesemantics/unstructured-operator@sha256:597df02d6e3be3bc42929559c6a14369bc8e5183a39fb6db32f56f1ea6d6b50b
          createdAt: "2025-10-08T07:30:55Z"
          description: Kubernetes Operator for Altair Graph Studio Unstructured
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: unknown
          repository: ""
          support: Cambridge Semantics
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnzoUnstructured is the Schema for the anzounstructureds
              API
            displayName: Altair Graph Studio Unstructured Operator
            kind: AnzoUnstructured
            name: anzounstructureds.anzounstructured.clusters.cambridgesemantics.com
            version: v1
        description: |-
          The Altair Graph Studio Unstructured Operator provides the way to install and configure an anzo unstructured setup on Red Hat K8S environment.
          Currently, this is possible only through existing Anzo installation.

          ### Installation
           Refer [installation instructions]( https://github.com/cambridgesemantics/csi-k8s-operator-anzo-unstructured/blob/v3.1.3/README.md )

          ### Documentation

          You can find our documentation [here.]( https://docs.cambridgesemantics.com/anzo/userdoc/cloud-deployments.htm )

          ### Support

          We offer Support to our customers [here]( https://altair.com/customer-support ) or by emailing the Data Analytics Support team at dasupport@altair.com.
        displayName: Altair Graph Studio Unstructured Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Database
        - Big Data
        links:
        - name: Altair Graph Studio Unstructured Operator
          url: https://github.com/cambridgesemantics/csi-k8s-operator-anzo-unstructured/blob/v3.1.3/README.md
        maintainers:
        - email: fschwichtenberg@altair.com
          name: Frank Schwichtenberg
        maturity: stable
        provider:
          name: Altair Engineering Inc.
        relatedImages:
        - registry.connect.redhat.com/cambridgesemantics/unstructured-operator@sha256:597df02d6e3be3bc42929559c6a14369bc8e5183a39fb6db32f56f1ea6d6b50b
        - registry.connect.redhat.com/cambridgesemantics/anzo-microservices-leader@sha256:3575310a78b08818781cab678d98f31160f539cf7c99c3601a86beb5bcf3d9fb
        - registry.connect.redhat.com/cambridgesemantics/anzo-unstructured-operator-bundle@sha256:cd5c4d5023b5021bae1067ef460bfa65bc50bb804c50331d622edaca6508d9f1
        - registry.connect.redhat.com/cambridgesemantics/anzo-unstructured-worker@sha256:94e4686d284c876a3dca36f7dfad7a06755f70ece16bf365b3933138b9283aa2
        version: 3.1.300
      entries:
      - name: anzounstructured-operator.v3.1.300
        version: 3.1.300
      - name: anzounstructured-operator.v3.1.200
        version: 3.1.200
      - name: anzounstructured-operator.v3.1.104
        version: 3.1.104
      - name: anzounstructured-operator.v3.1.103
        version: 3.1.103
      name: stable
    defaultChannel: stable
    packageName: anzounstructured-operator
    provider:
      name: Altair Engineering Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: mercury-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mercury-operator.1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mercury.redhat.io/v1alpha1",
                "kind": "ServiceDomainInfra",
                "metadata": {
                  "name": "my-example-sdi",
                  "labels": {
                    "app": "examples"
                  }
                },
                "spec": {
                  "kafka": {
                    "replicas": 3,
                    "storage": {
                      "type": "persistent-claim",
                      "size": "100Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "mercury.redhat.io/v1alpha1",
                "kind": "ServiceDomain",
                "metadata": {
                  "name": "example-customer-credit-rating",
                  "labels": {
                    "app": "example"
                  }
                },
                "spec": {
                  "businessImage": "quay.io/ecosystem-appeng/customer-credit-rating-example:1.0.1",
                  "serviceDomainInfra": "my-example-sdi",
                  "type": "CustomerCreditRating",
                  "expose": ["http"]
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/ecosystem-appeng/mercury-operator:1.0.1
          description: Deploys and manages BIAN Service Domains with the Mercury framework
          repository: https://github.com/open-accelerators/mercury
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A Service Domain Infra represents a group of Service Domains that interact between themselves and
              share the same infrastructure resources
            displayName: Service Domain Infra
            kind: ServiceDomainInfra
            name: servicedomaininfras.mercury.redhat.io
            version: v1alpha1
          - description: |-
              A Service Domain is a standalone service representing one of the BIAN defined Service Domains.
              e.g. Customer Offer. A Service Domain must belong to a Service Domain Infra
            displayName: Service Domain
            kind: ServiceDomain
            name: servicedomains.mercury.redhat.io
            version: v1alpha1
          required:
          - kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - kind: Integration
            name: integrations.camel.apache.org
            version: v1
        description: |-
          # An open platform for a modular, digital bank

          Project Mercury aims at developing a solution approach for the modernization of core banking systems, exploring new technologies and ways of operating in an open hybrid cloud. Creating and enabling the foundation of an open platform for modular, digital banking. Using open-source software and open standards currently available, combined with industry best practices.

          The provided reference implementation can serve as an example. While some resulting artifacts leverage the expertise of developing this solution approach can become reusable templates, repeatable processes, and building blocks of cloud-native components and applications.

          We invite the collaboration of technology experts and experienced business practitioners across the financial services industry to join and participate in co-creation.
        displayName: Mercury Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bian
        - mercury
        links:
        - name: GitHub Repository
          url: https://github.com/open-accelerators/mercury
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/mercury-operator@sha256:0c253fd002cb389db40b2438d4d1c9e953a84125dbf0f4b6f5e3a6efd87cf3a6
        - quay.io/ecosystem-appeng/mercury-operator:1.0.1
        version: 1.0.1
      entries:
      - name: mercury-operator.1.0.1
        version: 1.0.1
      name: 1.0.x
    defaultChannel: 1.0.x
    packageName: mercury-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: stolostron
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stolostron.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "operator.open-cluster-management.io/v1",
            "kind": "MultiClusterHub", "metadata": {"name": "multiclusterhub", "namespace":
            "open-cluster-management"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/stolostron/multiclusterhub-operator@sha256:b00318c5b7b8cd04dc80df188e466853d9c007c854fc16fe5c49c3118b87b348
          createdAt: "2025-11-05T18:50:10Z"
          description: Advanced management of OpenShift and Kubernetes clusters
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1",
            "kind":"MultiClusterHub","metadata":{"name":"multiclusterhub","namespace":"stolostron"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: stolostron
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          repository: https://github.com/stolostron/stolostron
          support: Stolostron Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MulticlusterHub defines the configuration
              for an instance of a multicluster hub, a central point for managing multiple
              Kubernetes-based clusters. The deployment of multicluster hub components
              is determined based on the configuration that is defined in this resource.
            displayName: MultiClusterHub
            kind: MultiClusterHub
            name: multiclusterhubs.operator.open-cluster-management.io
            version: v1
        description: 'Stolostron provides the multicluster hub, a central management
          console for managing multiple Kubernetes-based clusters across data centers,
          public clouds, and private clouds. You can use the hub to create Red Hat
          OpenShift Container Platform clusters on selected providers, or import existing
          Kubernetes-based clusters. After the clusters are managed, you can set compliance
          requirements to ensure that the clusters maintain the specified security
          requirements. You can also deploy business applications across your clusters. '
        displayName: Stolostron
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - install
        - multiclusterhub
        links:
        - name: Documentation
          url: https://github.com/stolostron/stolostron
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: pre-release
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/stolostron/postgresql-12@sha256:da0b8d525b173ef472ff4c71fae60b396f518860d6313c4f3287b844aab6d622
        - quay.io/stolostron/flightctl-worker@sha256:7ad048be0df7dae5f3c322bdc48ed4d1ea52c6e78ad5379c839ad2da4aca8c1a
        - quay.io/stolostron/grc-policy-framework-tests@sha256:ca9492e998c82910b6968111f6173a90fda693c0f98661ad51919da080fa1c59
        - quay.io/stolostron/cluster-proxy-addon@sha256:5c9df70888b1cbc5209b0217bd0312991e6320cd9442e72e208f0af1498aa2f1
        - quay.io/stolostron/redis-7-c9s@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/search-operator-bundle@sha256:d3fbacdcc760259c7abda625c6964d1ad4382b6988a98be0f8f33bbd951dc7be
        - quay.io/stolostron/governance-policy-propagator@sha256:33ce7bdfe0a60411398962ef653b3b877cfb87671b8367b95de4118d000768d5
        - quay.io/stolostron/applifecycle-backend-e2e@sha256:05da11b343938866c5afcfe844bcd15d9c513fdb10fd7ea0d3473b455b427c2a
        - quay.io/stolostron/observatorium@sha256:ed9d70744cc9072d5f096b11bf6e24d83e02a4f8824399b52f3eb1916b897e8c
        - quay.io/stolostron/flightctl-ui@sha256:0eb00d63e1e9a52fd09483bd745e1090c93e71c1f1e1cc56851c70ec5810885c
        - quay.io/stolostron/multiclusterhub-operator@sha256:b00318c5b7b8cd04dc80df188e466853d9c007c854fc16fe5c49c3118b87b348
        - quay.io/stolostron/search-e2e@sha256:51dde02f030e09ef60cafdaaaaaa2e3ed2d37b1ffebe6a355d33bb1aaaa1984b
        - quay.io/stolostron/mtv-integrations@sha256:ea42533e46b99b871bc6cc04a376079e96ef0d4e368b01d5c14de18b791a46f5
        - quay.io/stolostron/multicluster-global-hub-operator@sha256:106efd2686b2ed1b975503f69a509b31c5534b11823739c5a411081f4ac65aed
        - quay.io/stolostron/prometheus@sha256:3bb172a2b7eec02d2543cb48a17b8d8749d5a88ccec9f54ec626c68922473756
        - quay.io/stolostron/multiclusterhub-operator-tests@sha256:12fd6f287fecfea68fc06914b90a50cb75f09c101eb66b9c01f1414e3677d31f
        - quay.io/stolostron/cert-policy-controller@sha256:18dd1db4780f97508a41a1fb80524347366ab1fe706e387f27af25f5458e5f6b
        - quay.io/stolostron/search-collector@sha256:87804b34cecd327768d4468f0a41e9994a1dc3b03afa8754a1a6369e8841622f
        - quay.io/stolostron/origin-cli@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/prometheus-alertmanager@sha256:8735f212888379caff4bec1ae5ff1909c5eecd5e2ce3ce51eb1bbd7b9e54a4b4
        - quay.io/stolostron/postgresql-13@sha256:f8c4c4364ab8d27d2c774cbd02a0d02b9d6e3cb6e8d69af728cdd889df312b56
        - quay.io/stolostron/flightctl-userinfo-proxy@sha256:3c09c290fd935bc32b5ba50d347cd83c9216ffbe4fa196229ff4ef5c1a714818
        - quay.io/stolostron/origin-oauth-proxy-48@sha256:c92a1480b2628d50d8fe158df9451598406e2e5cc7177cf5efcb81caba120afd
        - quay.io/stolostron/helloworld@sha256:4465550664bd210cf0df8edfd706de2fc51cacf01b66a962b5607935f9666ebc
        - quay.io/stolostron/klusterlet-addon-controller@sha256:b927b9b80a4016c4564792ed7326faa67468d4e01ca2b35cf9367e4151f01205
        - quay.io/stolostron/endpoint-monitoring-operator@sha256:ffd1920f90eb7b868414528d5c26656c1fddd84753a9a26ecd16700ca7d2abbe
        - quay.io/stolostron/console@sha256:0c35078ebdf547dac53ba04011e8a60304526bf2af38d98889ca5c17754088fc
        - quay.io/stolostron/grafana-dashboard-loader@sha256:901b5239063a2b0dc265ef3d2938a2c6b888ae7745af43b4283901ad63857d18
        - quay.io/community-operator-pipeline-prod/stolostron@sha256:924b3d003d81dc9cddb23276fe1b764f492e8d9d9247793881ff5bacd95ad4d6
        - quay.io/stolostron/flightctl-db-setup@sha256:44d8d92431035647d8639bfbdbe6c1654f058e0b3276dd5dc24947b335df51c0
        - quay.io/stolostron/kube-state-metrics@sha256:8401353f4de5017e3ec39e4c090753927b0eac986142d886920abf859364da99
        - quay.io/stolostron/thanos-receive-controller@sha256:713d979636547ed46a71ffd4cc02ed7be0deabf777cd431434f01efb27113797
        - quay.io/stolostron/multicluster-operators-channel@sha256:608e7ee661e3e33bf24a12d5353f2fddb5b490c1dbce554f890e0e8a3451f0c6
        - quay.io/stolostron/siteconfig-operator@sha256:91287560901e88799f009ae88da62571c70395bacb344dfedc0c1ac8d5f2660f
        - quay.io/stolostron/flightctl-api@sha256:a9f6e3a11e677820d1d37220b3b5c16c442d5cb4a9da2324e6d4388d8c85f960
        - quay.io/stolostron/metrics-collector@sha256:b743b28b54ae38549713ff24e29d7d7fe9367388d77a18d9a29215be44fa83c4
        - quay.io/stolostron/observatorium-operator@sha256:ba7b2ae31f88208647e7f6b1c238fa89b7c1c91591eddba082d90ac4ab3f709d
        - quay.io/stolostron/must-gather@sha256:0634da33001f41e709ad0414c1062187af76799a188f4535e197358b20656a09
        - quay.io/stolostron/flightctl-periodic@sha256:3c30398ca6f2f5da385e7554bb77a95562d595ae29e72c687ac80737931272a1
        - quay.io/stolostron/multicloud-integrations@sha256:20fc5ce8fdff0931d21d6ec556166eb6dbd986dd566105b029a12ac6abd189d1
        - quay.io/stolostron/insights-client@sha256:15ce834bf864b4d415592ca08d45c74447e4c804d7dbace45b761d3772f515ad
        - quay.io/stolostron/prometheus-operator@sha256:d3e2d11a868de9796abc939ffa97ca549845e6463ba20d0493385421ca8ecae3
        - quay.io/stolostron/multicluster-observability-operator@sha256:2bebf578b17058ab00baa51ec3b74d5d924a27faf1c36b9fae7784ebef47b87e
        - quay.io/stolostron/acm-cli@sha256:edd0eca7da92ac675237059b8c774fd39198c4ec39ab3c71f013b816cf95b62b
        - quay.io/stolostron/origin-oauth-proxy-49-and-up@sha256:0e72ed64cdf76828392ef8cfe4ee49d644a013ac00ff1590d6c53774d77615e3
        - quay.io/stolostron/helloprow-go@sha256:0671c58cc5c1f3fb9e00ae58ad6ef2c1f470867e26637b823261e9ab9279f05e
        - quay.io/stolostron/origin-oauth-proxy-415-and-below@sha256:41762eda03298362d3f97e1fd0be4af429d22658b520f94023941655e062d1a1
        - quay.io/stolostron/flightctl-alert-exporter@sha256:6fc5faba5bd241970751b78072a99695c27756ae793395e9e7f8255d15633623
        - quay.io/stolostron/node-exporter@sha256:80f4bba97684bcebd2e8be3460f47db90dec6432f7f1ae025105d9a438345f52
        - quay.io/stolostron/origin-oauth-proxy-416-and-up@sha256:0b1051e9e7a18a81a9156bbc182424ad3eb480968256a4765cfd07c13bf4931a
        - quay.io/stolostron/search-indexer@sha256:29b90a727c1aed8bf2b439bc24b3adf2d1499dca5055275e0d682db632aff237
        - quay.io/stolostron/cluster-permission@sha256:a495b3baff27bb75dbb9e18e7b7e9a38969847bc188f8c7d17868557e5394e3e
        - quay.io/stolostron/origin-oauth-proxy@sha256:c92a1480b2628d50d8fe158df9451598406e2e5cc7177cf5efcb81caba120afd
        - quay.io/stolostron/kube-rbac-proxy@sha256:d90d4dfb5e0f8eec50bcfc86d4c457123f26cc961e632e26e25f24c5d6699a8c
        - quay.io/stolostron/submariner-addon@sha256:765404364ab4a206f6a198b833ad7c3f47f42781487c2e994a1a3a99a30ad4d4
        - quay.io/stolostron/thanos@sha256:38e9d0c45556878b81c3ef8b05ce6c8bef37597859c390153d34c44de183ef91
        - quay.io/stolostron/cluster-proxy@sha256:decd4ebdad2fcadd15fcc4be977ac85f5bb6331afcd96dc862626ae8e1f58691
        - quay.io/stolostron/observability-e2e-test@sha256:bab2ceda615b69d37cb42595eea4d915001ea6115ea7dd1b4a753ac6480307f5
        - quay.io/stolostron/multicluster-operators-subscription@sha256:7cdecaf11316290512e88483b259f682f78589a9e351e334d0b6c109adcf75d8
        - quay.io/stolostron/cluster-templates-operator@sha256:133e5cede92a5dbe9373982c851ca40134fc4de8665e54de60ecc7738f9f50f7
        - quay.io/stolostron/insights-metrics@sha256:ccf217a70625f2b53e76c6ab1916286b31ba89664aa93d638293b54677c73595
        - quay.io/stolostron/postgresql-16@sha256:db2f73275f9cc0f2d262fadb8e8a5da72b089f9d22f7c859bb1364d9f9a8b622
        - quay.io/stolostron/prometheus-config-reloader@sha256:cac144214cd8d76eda94f6aa2bf55d1cda05a5817c1b6152231c7f1473eee35b
        - quay.io/stolostron/cluster-lifecycle-e2e@sha256:1d997d1238d92c852e35162be21c338ff87216e4f92bce24203b997da827197c
        - quay.io/stolostron/grafana@sha256:791c6a90290eb08bbc87d9384042e6246e38e404d2c73958ca962d113c83b83a
        - quay.io/stolostron/flightctl-cli-artifacts@sha256:7bfde294440629efb65c0b5bf22ba0eb12e28a81d0f5da31951eac325501fc85
        - quay.io/stolostron/rbac-query-proxy@sha256:d3496b4c01df742ce8a255f55937335fdb9e55e12a252fd7f8b3ccee1ac8e137
        - quay.io/stolostron/search-v2-api@sha256:f959f84c38b15481e147241772af7a9b840743ac25bd1d02d53751c33f07edb7
        - quay.io/stolostron/multicluster-operators-application@sha256:d5de12b22f933b1c14131d938fd2b6c2081675e039cbb00a8266e94ccd56a375
        - quay.io/stolostron/flightctl-ocp-ui@sha256:5874277619745aacae1b8f8c52cf3c89d70d9097f4e3574a960c1591019ecac1
        - quay.io/stolostron/governance-policy-addon-controller@sha256:0954a617e01bb1b6b052addd29bc99273bd6e9562f36761e87d5735f8debb3e6
        - quay.io/stolostron/search-v2-operator@sha256:0bfe92b74ae6f0f91d3b4c66616aa71c1e8dcfbdafa7ec9a82af792d2bfa92d4
        - quay.io/stolostron/flightctl-alertmanager-proxy@sha256:f5636ff13374fb4fa40d5f3a0b29d10e5d8a04d4275374f7b84a22cb47aa4be5
        - quay.io/stolostron/multicluster-role-assignment@sha256:345b72961a8cc94d21cc7510ae800263e2d97454966d4a8ed4c9a466bc3be19d
        - quay.io/stolostron/volsync-addon-controller@sha256:c95a7e58c42d5ae875cbd7359af0397f2d3cd740c6608240bf4020de1ba73a0e
        - quay.io/stolostron/analytics-recommends@sha256:1d4a3cfb193992bed84578661affc31be25523966af3aea9f13d1d52498bac8b
        - quay.io/stolostron/governance-policy-framework-addon@sha256:a6779f2c42f3f117654a3b380f4c3e9ba858f3bbfe011801fe2fb36fa6168433
        - quay.io/stolostron/iam-policy-controller@sha256:27cefc2f923d7ed216f7e650b569551668d1f67f0047b6b98902d37032f6ab92
        - quay.io/stolostron/bailer@sha256:b6d0f5ff086a0a19e98ef4b60ac4e1c3f61e775863ee772d7829395800eb6492
        - quay.io/stolostron/cluster-backup-controller@sha256:cf3ec9d108e5da4bae12532ab2099eb6244a3015bf347589896367fbcba7c6c9
        - quay.io/stolostron/config-policy-controller@sha256:e9b900ab0b2c04826fea52d88469185d877426b61d023a942570d14c6217591c
        version: 0.8.2
      entries:
      - name: stolostron.v0.8.2
        version: 0.8.2
      - name: stolostron.v0.8.0
        version: 0.8.0
      name: community-0.8
    defaultChannel: community-0.8
    packageName: stolostron
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: namespace-configuration-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: namespace-configuration-operator.v1.2.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupConfig",
                "metadata": {
                  "name": "test-groupconfig"
                },
                "spec": {
                  "labelSelector": {
                    "matchLabels": {
                      "type": "team"
                    }
                  },
                  "templates": [
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-dev\n  labels:\n    group: {{ .Name }}  \n"
                    },
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-qa\n  labels:\n    group: {{ .Name }}          \n"
                    },
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-prod\n  labels:\n    group: {{ .Name }}                           \n"
                    },
                    {
                      "objectTemplate": "apiVersion: quota.openshift.io/v1\nkind: ClusterResourceQuota\nmetadata:\n  name: {{ .Name }}-quota\nspec:\n  quota:\n    hard:\n      pods: \"4\" \n      requests.cpu: \"1\" \n      requests.memory: 1Gi \n      requests.ephemeral-storage: 2Gi \n      limits.cpu: \"2\" \n      limits.memory: 2Gi \n      limits.ephemeral-storage: 4Gi\n  selector:\n    labels:\n      matchLabels:\n        group: {{ .Name }}\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "NamespaceConfig",
                "metadata": {
                  "name": "test-namespaceconfig"
                },
                "spec": {
                  "labelSelector": {
                    "matchLabels": {
                      "type": "secure"
                    }
                  },
                  "templates": [
                    {
                      "objectTemplate": "apiVersion: v1\nkind: ResourceQuota\nmetadata:\n  name: standard-sandbox\n  namespace: {{ .Name }}\nspec:\n  hard:\n    pods: \"4\" \n    requests.cpu: \"1\" \n    requests.memory: 1Gi \n    requests.ephemeral-storage: 2Gi \n    limits.cpu: \"2\" \n    limits.memory: 2Gi \n    limits.ephemeral-storage: 4Gi\n"
                    },
                    {
                      "objectTemplate": "kind: EgressNetworkPolicy\napiVersion: network.openshift.io/v1\nmetadata:\n  name: air-gapped\n  namespace: {{ .Name }}  \nspec:\n  egress:\n  - type: Deny\n    to:\n      cidrSelector: 0.0.0.0/0\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "UserConfig",
                "metadata": {
                  "name": "test-user-config"
                },
                "spec": {
                  "providerName": "my-provider",
                  "templates": [
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-sandbox\n"
                    },
                    {
                      "objectTemplate": "apiVersion: v1\nkind: ResourceQuota\nmetadata:\n  name: standard-sandbox\n  namespace: {{ .Name }}-sandbox\nspec:\n  hard:\n    pods: \"4\" \n    requests.cpu: \"1\" \n    requests.memory: 1Gi \n    requests.ephemeral-storage: 2Gi \n    limits.cpu: \"2\" \n    limits.memory: 2Gi \n    limits.ephemeral-storage: 4Gi\n"
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/namespace-configuration-operator@sha256:49ed7d6155342adaa2b12fd80c6761c3081d8e6149d187cb7ff91a247cdf2e7a
          createdAt: "2023-11-22T15:58:50Z"
          description: This operator provides a facility to define and enforce namespace
            configurations
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: namespace-configuration-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/namespace-configuration-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GroupConfig is the Schema for the groupconfigs API
            displayName: Group Config
            kind: GroupConfig
            name: groupconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: NamespaceConfig is the Schema for the namespaceconfigs API
            displayName: Namespace Config
            kind: NamespaceConfig
            name: namespaceconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: UserConfig is the Schema for the userconfigs API
            displayName: User Config
            kind: UserConfig
            name: userconfigs.redhatcop.redhat.io
            version: v1alpha1
        description: "The `namespace-configuration-operator` helps keeping configurations
          related to Users, Groups and Namespaces aligned with one of more policies
          specified as a CRs. The purpose is to provide the foundational building
          block to create an end-to-end onboarding process. \nBy onboarding process
          we mean all the provisioning steps needed to a developer team working on
          one or more applications to OpenShift.\n This usually involves configuring
          resources such as: Groups, RoleBindings, Namespaces, ResourceQuotas, NetworkPolicies,
          EgressNetworkPolicies, etc.... . Depending on the specific environment the
          list could continue.\nNaturally such a process should be as automatic and
          scalable as possible.\n\nWith the namespace-configuration-operator one can
          create rules that will react to the creation of Users, Groups and Namespace
          and will create and enforce a set of resources.\n\nHere are some examples
          of the type of onboarding processes that one could support:\n\n1. [developer
          sandbox](https://github.com/redhat-cop/namespace-configuration-operator/blob/master/examples/user-sandbox/readme.md)\n
          2. [team onboarding](https://github.com/redhat-cop/namespace-configuration-operator//blob/master/examples/team-onboarding/readme.md)
          with support of the entire SDLC in a multitentant environment.\n\nPolicies
          can be expressed with the following CRDs:\n\n| Watched Resource | CRD |\n|--|--|\n
          | Groups | [GroupConfig](#GroupConfig) |\n| Users | [UserConfig](#UserConfig)
          |\n| Namespace | [NamespaceConfig](#NamespaceConfig) |\n\nThese CRDs all
          share some commonalities:\n\n1. Templated Resources\n2. List of ignored
          jason path\n \n### Templated Resources\n\nEach has a parameter called `templatedResources`,
          which is an array. Each element of the array has two fields `objectTemplate`
          and `excludedPaths` (see below).\n\nThe `objectTemplate` field must contains
          a [go template](https://golang.org/pkg/text/template/) that resolves to
          a single API Resource expressed in `yaml`. The template is merged with the
          object selected by the CR. For example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n
          kind: UserConfig\nmetadata:\n  name: test-user-config\nspec:\n  provider:
          corp-ldap\n  templates:\n  - objectTemplate: |\n      apiVersion: v1\n      kind:
          Namespace\n      metadata:\n        name: {{ .Name }}-sandbox\n```\n\nThis
          create a rule in which every time a user from the `corp-ldap` provider is
          created, a namespace called `<username>-sandbox` is also created.\n\n###
          Excluded Paths\n\nThe logic of the `namespace-configuration-operator` is
          to enforce that the resources resolved by processing the templates \"stays
          in place\". In other words if those resources are changed and/or deleted
          they will be reset by the operator.\nBut there are situations in which at
          least part of a resource is allowed to change. Common use cases are: annotations
          and in general the metadata section of a resource can be updated by the
          various operators watching that resources. The status field is often updated
          by the main operator managing that resources. Finally, when applicable the
          `spec.replicas` field should also be allowed to change.\n\nTo handle special
          use case, one can also specify additional *jsonpaths* that should be ignored
          when comparing the desired resource and the current resource and making
          a decision on whether that resource should be reset.\n\nThe following paths
          are always included:\n \n1. `.metadata`\n2. `.status`\n3. `.spec.replicas`\n\n##
          NamespaceConfig\n\n The `NamespaceConfig` CR allows specifying one or more
          objects that will be created in the selected namespaces.\n\nNamespaces can
          be selected by labels or annotations via a label selector for example:\n\n```yaml\napiVersion:
          redhatcop.redhat.io/v1alpha1\n kind: NamespaceConfig\nmetadata:\n  name:
          small-namespace\n  selector:\n    matchLabels:\n      size: small  \n  resources:\n
          \ - apiVersion: v1\n    kind: ResourceQuota\n    metadata:\n      name:
          small-size  \n    spec:\n      hard:\n        requests.cpu: \"4\"\n        requests.memory:
          \"2Gi\"\n```\n\nHere is a `NamespaceConfig` object using a `matchExpressions`
          selector:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n kind: NamespaceConfig\nmetadata:\n
          \ name: tier-config\nspec:\n  annotationSelector:\n    matchExpressions:\n
          \     - {key: tier, operator: In, values: [gold,silver]}\n ```\n\nAlthough
          not enforced by the operator the general expectation is that the NamespaceConfig
          CR will be used to create objects inside the selected namespace.\n \nExamples
          of NamespaceConfig usages can be found [here](https://github.com/redhat-cop/namespace-configuration-operator/blob/master/examples/namespace-config/readme.md)\n
          \n## GroupConfig\n\nThe `GroupConfig` CR allows specifying one or more objects
          that will be created in the selected Group.\nGroups can be selected by labels
          or annotations via a label selector, similarly to the `NamespaceConfig`.\n\nOften
          groups are created in OpenShift by a job that synchronizes an Identity Provider
          with OCP. So the idea is that when new groups are added or deleted the configuration
          in OpenShift will adapt automatically.\n\nAlthough not enforced by the operator,
          GroupConfig are expected to create cluster-scoped resources like Namespaces,
          ClusterResourceQuotas and potentially some namespaced resources like RoleBindings.\n\n##
          UserConfig\n \nIn OpenShift an external user is defined by two entities:
          Users and Identities. There is a relationship of on to many between Users
          and Identities. Given one user, there can be one Identity per authentication
          mechanism.\n\nThe `UserConfig` CR allows specifying one or more objects
          that will be created in the selected User.\nUsers can be selected by label
          or annotation like `NamespaceConfig` and `UserConfig`.\nUSers can also be
          selected by provider name (the name of the authentication mechanism) and
          identity extra field.\n\nHere is an example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          UserConfig\nmetadata:\n  name: test-user-config\nspec:\n  providerName:
          okta-provider\n  identityExtraFieldSelector:\n    matchLabels:\n      sandbox_enabled:
          \"true\"\n  templates:\n  - objectTemplate: |\n      apiVersion: v1\n      kind:
          Namespace\n      metadata:\n        name: {{ .Name }}-sandbox\n ```\n\nUser
          will be selected by this `UserConfig` only if they login via the *okta-provider*
          and if the extra field was populate with the label `sandbox_enabled: \"true\"
          `. Note that not all authentication provider allow populating the extra
          fields in the Identity object.\n"
        displayName: Namespace Configuration Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - namespace
        - user
        - group
        - configuration
        - policy
        - management
        links:
        - name: Namespace Configuration Operator
          url: https://github.com/redhat-cop/namespace-configuration-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/namespace-configuration-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/namespace-configuration-operator@sha256:971991d2bf717001a98b175c50580cd7db9d230492e72670606c2ed50c53feb0
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/namespace-configuration-operator@sha256:49ed7d6155342adaa2b12fd80c6761c3081d8e6149d187cb7ff91a247cdf2e7a
        version: 1.2.6
      entries:
      - name: namespace-configuration-operator.v1.2.6
        version: 1.2.6
      - name: namespace-configuration-operator.v1.2.5
        version: 1.2.5
      - name: namespace-configuration-operator.v1.2.4
        version: 1.2.4
      - name: namespace-configuration-operator.v1.2.3
        version: 1.2.3
      - name: namespace-configuration-operator.v1.2.2
        version: 1.2.2
      - name: namespace-configuration-operator.v1.2.1
        version: 1.2.1
      - name: namespace-configuration-operator.v1.2.0
        version: 1.2.0
      - name: namespace-configuration-operator.v1.1.0
        version: 1.1.0
      - name: namespace-configuration-operator.v1.0.7
        version: 1.0.7
      - name: namespace-configuration-operator.v1.0.6
        version: 1.0.6
      - name: namespace-configuration-operator.v1.0.5
        version: 1.0.5
      - name: namespace-configuration-operator.v1.0.4
        version: 1.0.4
      - name: namespace-configuration-operator.v1.0.3
        version: 1.0.3
      - name: namespace-configuration-operator.v1.0.2
        version: 1.0.2
      - name: namespace-configuration-operator.v1.0.1
        version: 1.0.1
      - name: namespace-configuration-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: namespace-configuration-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Snyk Ltd.
      provider-url: ""
    name: snyk-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: snyk-operator.v1.92.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.helm.k8s.io/v1alpha1",
                "kind": "SnykMonitor",
                "metadata": {
                  "name": "snyk-monitor"
                },
                "spec": {
                  "clusterName": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "snyk/kubernetes-monitor",
                    "tag": "1.92.0-ubi8"
                  },
                  "integrationApi": "",
                  "monitorSecrets": "snyk-monitor",
                  "scope": "Cluster",
                  "temporaryStorageSize": "50Gi",
                  "pvc": {
                    "enabled": false,
                    "create": false,
                    "name": "snyk-monitor-pvc",
                    "storageClassName": null
                  },
                  "initContainerImage": {
                    "repository": "busybox",
                    "tag": "latest"
                  },
                  "requests": {
                    "memory": "400Mi"
                  },
                  "limits": {
                    "memory": "2Gi"
                  },
                  "nodeAffinity": {
                    "disableBetaArchNodeSelector": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Security
          certified: "false"
          containerImage: docker.io/snyk/kubernetes-operator:1.92.0
          createdAt: "2022-06-09T17:49:36Z"
          description: A Kubernetes Operator for creating and managing Snyk controller
            instances.
          olm.skipRange: <1.68.2
          repository: https://github.com/snyk/kubernetes-monitor
          support: Snyk Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a deployment of the Snyk controller, which scans
              container images in the cluster for vulnerabilities.
            displayName: Snyk Monitor
            kind: SnykMonitor
            name: snykmonitors.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          A Kubernetes Operator for creating and managing Snyk Kubernetes controller instances.

          Snyk integrates with Kubernetes, enabling you to import and test your running workloads and identify vulnerabilities in their associated images and configurations that might make those workloads less secure. Once imported, Snyk continues to monitor those workloads, identifying additional security issues as new images are deployed and the workload configuration changes.

          ## Prerequisites

          To start using the Operator and the Snyk controller that it manages, you will need to create a secret containing your Snyk integrationId and Docker config file:

          ```
          kubectl create namespace snyk-monitor
          kubectl create secret generic snyk-monitor -n snyk-monitor --from-literal=dockercfg.json={} --from-literal=integrationId=${SNYK_INTEGRATION_ID}
          ```

          Refer to the [Snyk documentation](https://support.snyk.io/hc/en-us/articles/360003916138-Kubernetes-integration-overview) for more details.
        displayName: Snyk Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - snyk
        - controller
        - monitor
        - operator
        - security
        - cluster
        - container
        - image
        - security
        - vulnerabilities
        - advisories
        - audit
        - scan
        - scanning
        links:
        - name: Website
          url: https://snyk.io
        - name: Documentation
          url: https://support.snyk.io/hc/en-us/articles/360003916138-Kubernetes-integration-overview
        maintainers:
        - email: support@snyk.io
          name: Snyk Ltd.
        maturity: stable
        provider:
          name: Snyk Ltd.
        relatedImages:
        - quay.io/openshift-community-operators/snyk-operator@sha256:97908144406700ae9c038316661dc7904f3e0f4e01b1bbdf68259b59dfb86d6c
        - docker.io/snyk/kubernetes-operator:1.92.0
        version: 1.92.0
      entries:
      - name: snyk-operator.v1.92.0
        version: 1.92.0
      - name: snyk-operator.v1.90.2
        version: 1.90.2
      - name: snyk-operator.v1.90.1
        version: 1.90.1
      - name: snyk-operator.v1.88.4
        version: 1.88.4
      - name: snyk-operator.v1.85.2
        version: 1.85.2
      - name: snyk-operator.v1.82.1
        version: 1.82.1
      - name: snyk-operator.v1.81.1
        version: 1.81.1
      - name: snyk-operator.v1.80.0
        version: 1.80.0
      - name: snyk-operator.v1.73.0
        version: 1.73.0
      - name: snyk-operator.v1.72.0
        version: 1.72.0
      - name: snyk-operator.v1.70.4
        version: 1.70.4
      - name: snyk-operator.v1.70.1
        version: 1.70.1
      name: stable
    defaultChannel: stable
    packageName: snyk-operator
    provider:
      name: Snyk Ltd.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: keycloak-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keycloak-operator.v19.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "example-keycloakrealm",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realm": {
                    "id": "basic",
                    "realm": "basic",
                    "enabled": true,
                    "displayName": "Basic Realm"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakBackup",
                "metadata": {
                  "name": "example-keycloakbackup"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "client-secret",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  },
                  "client": {
                    "clientId": "client-secret",
                    "secret": "client-secret",
                    "clientAuthenticatorType": "client-secret"
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakUser",
                "metadata": {
                  "name": "example-realm-user",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "user": {
                    "username": "realm_user",
                    "firstName": "John",
                    "lastName": "Doe",
                    "email": "user@example.com",
                    "enabled": true,
                    "emailVerified": false
                  },
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "False"
          containerImage: quay.io/keycloak/keycloak-operator:19.0.3-legacy
          createdAt: "2022-10-07 17:00:00"
          description: An Operator for installing and managing Keycloak
          repository: https://github.com/keycloak/keycloak-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak Realm
            displayName: KeycloakRealm
            kind: KeycloakRealm
            name: keycloakrealms.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak Backup
            displayName: KeycloakBackup
            kind: KeycloakBackup
            name: keycloakbackups.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak Client
            displayName: KeycloakClient
            kind: KeycloakClient
            name: keycloakclients.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak User
            displayName: KeycloakUser
            kind: KeycloakUser
            name: keycloakusers.keycloak.org
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
          * Import Keycloak Clients
          * Import Keycloak Users
          * Create scheduled backups of the database
          * Install Extensions
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/docs/latest/server_installation/index.html#_operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@lists.jboss.org
          name: Keycloak DEV mailing list
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/keycloak/keycloak-operator:19.0.3-legacy
        - quay.io/openshift-community-operators/keycloak-operator@sha256:a4da3bcbb4e99d60b8217d9e62742eeb83eef163dfefb2f7efda131f312e46e3
        version: 19.0.3
      entries:
      - name: keycloak-operator.v19.0.3
        version: 19.0.3
      - name: keycloak-operator.v19.0.2
        version: 19.0.2
      - name: keycloak-operator.v19.0.1
        version: 19.0.1
      - name: keycloak-operator.v19.0.0
        version: 19.0.0
      - name: keycloak-operator.v18.0.2
        version: 18.0.2
      - name: keycloak-operator.v18.0.1
        version: 18.0.1
      - name: keycloak-operator.v18.0.0
        version: 18.0.0
      - name: keycloak-operator.v17.0.1
        version: 17.0.1
      - name: keycloak-operator.v17.0.0
        version: 17.0.0
      - name: keycloak-operator.v16.1.0
        version: 16.1.0
      - name: keycloak-operator.v16.0.0
        version: 16.0.0
      - name: keycloak-operator.v15.1.1
        version: 15.1.1
      - name: keycloak-operator.v15.1.0
        version: 15.1.0
      - name: keycloak-operator.v15.0.2
        version: 15.0.2
      - name: keycloak-operator.v15.0.1
        version: 15.0.1
      - name: keycloak-operator.v15.0.0
        version: 15.0.0
      - name: keycloak-operator.v14.0.0
        version: 14.0.0
      name: alpha
    - currentCSV: keycloak-operator.v20.0.0-alpha.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": "example.org",
                  "tlsSecret": "my-tls-secret"
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "False"
          containerImage: quay.io/keycloak/keycloak-operator:19.0.3
          createdAt: 10/07/22 17:00:00
          description: An Operator for installing and managing Keycloak
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/docs/latest/server_installation/index.html#_operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@lists.jboss.org
          name: Keycloak DEV mailing list
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/keycloak/keycloak-operator:19.0.3
        - quay.io/openshift-community-operators/keycloak-operator@sha256:65fe00f310289b70538a6dde897ef663731d0da44a7bb1d0f55a3001a50e53fa
        version: 20.0.0-alpha.7
      entries:
      - name: keycloak-operator.v20.0.0-alpha.7
        version: 20.0.0-alpha.7
      - name: keycloak-operator.v20.0.0-alpha.6
        version: 20.0.0-alpha.6
      - name: keycloak-operator.v20.0.0-alpha.5
        version: 20.0.0-alpha.5
      - name: keycloak-operator.v20.0.0-alpha.4
        version: 20.0.0-alpha.4
      - name: keycloak-operator.v20.0.0-alpha.3
        version: 20.0.0-alpha.3
      - name: keycloak-operator.v20.0.0-alpha.2
        version: 20.0.0-alpha.2
      - name: keycloak-operator.v20.0.0-alpha.1
        version: 20.0.0-alpha.1
      name: candidate
    - currentCSV: keycloak-operator.v26.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: quay.io/keycloak/keycloak-operator:26.4.7
          createdAt: "2025-12-01T08:24:52Z"
          description: An Operator for installing and managing Keycloak
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: batch
          kind: Job
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: networking.k8s.io
          kind: NetworkPolicy
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/keycloak/keycloak-operator:26.4.7
        - quay.io/community-operator-pipeline-prod/keycloak-operator@sha256:157776c3e6cd0016d7791ffed92f0bfe5ca2658485b427b4e76ddc0c0b37924b
        version: 26.4.7
      entries:
      - name: keycloak-operator.v26.4.7
        version: 26.4.7
      - name: keycloak-operator.v26.4.6
        version: 26.4.6
      - name: keycloak-operator.v26.4.5
        version: 26.4.5
      - name: keycloak-operator.v26.4.4
        version: 26.4.4
      - name: keycloak-operator.v26.4.2
        version: 26.4.2
      - name: keycloak-operator.v26.4.1
        version: 26.4.1
      - name: keycloak-operator.v26.4.0
        version: 26.4.0
      - name: keycloak-operator.v26.3.5
        version: 26.3.5
      - name: keycloak-operator.v26.3.4
        version: 26.3.4
      - name: keycloak-operator.v26.3.3
        version: 26.3.3
      - name: keycloak-operator.v26.3.2
        version: 26.3.2
      - name: keycloak-operator.v26.3.1
        version: 26.3.1
      - name: keycloak-operator.v26.3.0
        version: 26.3.0
      - name: keycloak-operator.v26.2.5
        version: 26.2.5
      - name: keycloak-operator.v26.2.4
        version: 26.2.4
      - name: keycloak-operator.v26.2.3
        version: 26.2.3
      - name: keycloak-operator.v26.2.2
        version: 26.2.2
      - name: keycloak-operator.v26.2.1
        version: 26.2.1
      - name: keycloak-operator.v26.2.0
        version: 26.2.0
      - name: keycloak-operator.v26.1.5
        version: 26.1.5
      - name: keycloak-operator.v26.1.4
        version: 26.1.4
      - name: keycloak-operator.v26.1.3
        version: 26.1.3
      - name: keycloak-operator.v26.1.2
        version: 26.1.2
      - name: keycloak-operator.v26.1.1
        version: 26.1.1
      - name: keycloak-operator.v26.1.0
        version: 26.1.0
      - name: keycloak-operator.v26.0.8
        version: 26.0.8
      - name: keycloak-operator.v26.0.7
        version: 26.0.7
      - name: keycloak-operator.v26.0.6
        version: 26.0.6
      - name: keycloak-operator.v26.0.5
        version: 26.0.5
      - name: keycloak-operator.v26.0.4
        version: 26.0.4
      - name: keycloak-operator.v26.0.2
        version: 26.0.2
      - name: keycloak-operator.v26.0.1
        version: 26.0.1
      - name: keycloak-operator.v26.0.0
        version: 26.0.0
      - name: keycloak-operator.v25.0.6
        version: 25.0.6
      - name: keycloak-operator.v25.0.5
        version: 25.0.5
      - name: keycloak-operator.v25.0.4
        version: 25.0.4
      - name: keycloak-operator.v25.0.2
        version: 25.0.2
      - name: keycloak-operator.v25.0.1
        version: 25.0.1
      - name: keycloak-operator.v25.0.0
        version: 25.0.0
      - name: keycloak-operator.v24.0.5
        version: 24.0.5
      - name: keycloak-operator.v24.0.4
        version: 24.0.4
      - name: keycloak-operator.v24.0.3
        version: 24.0.3
      - name: keycloak-operator.v24.0.2
        version: 24.0.2
      - name: keycloak-operator.v24.0.1
        version: 24.0.1
      - name: keycloak-operator.v24.0.0
        version: 24.0.0
      - name: keycloak-operator.v23.0.7
        version: 23.0.7
      - name: keycloak-operator.v23.0.6
        version: 23.0.6
      - name: keycloak-operator.v23.0.5
        version: 23.0.5
      - name: keycloak-operator.v23.0.4
        version: 23.0.4
      - name: keycloak-operator.v23.0.3
        version: 23.0.3
      - name: keycloak-operator.v23.0.2
        version: 23.0.2
      - name: keycloak-operator.v23.0.1
        version: 23.0.1
      - name: keycloak-operator.v23.0.0
        version: 23.0.0
      - name: keycloak-operator.v22.0.5
        version: 22.0.5
      - name: keycloak-operator.v22.0.4
        version: 22.0.4
      - name: keycloak-operator.v22.0.3
        version: 22.0.3
      - name: keycloak-operator.v22.0.2
        version: 22.0.2
      - name: keycloak-operator.v22.0.1
        version: 22.0.1
      - name: keycloak-operator.v22.0.0
        version: 22.0.0
      - name: keycloak-operator.v21.1.2
        version: 21.1.2
      - name: keycloak-operator.v21.1.1
        version: 21.1.1
      - name: keycloak-operator.v21.1.0
        version: 21.1.0
      - name: keycloak-operator.v21.0.2
        version: 21.0.2
      - name: keycloak-operator.v21.0.1
        version: 21.0.1
      - name: keycloak-operator.v21.0.0
        version: 21.0.0
      - name: keycloak-operator.v20.0.3
        version: 20.0.3
      - name: keycloak-operator.v20.0.2
        version: 20.0.2
      - name: keycloak-operator.v20.0.1
        version: 20.0.1
      - name: keycloak-operator.v20.0.0
        version: 20.0.0
      name: fast
    defaultChannel: fast
    packageName: keycloak-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: logic-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: logic-operator.v1.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "host/namespace",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          createdAt: "2025-09-28T18:26:11Z"
          description: OpenShift Serverless Logic Kubernetes Operator for deploying
            workflow applications based on the CNCF Serverless Workflow specification
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: openshift-serverless-logic
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kubesmarts/kie-tools
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: Sonata Flow Build
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: Sonata Flow Cluster Platform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: Sonata Flow Platform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: Sonata Flow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          OpenShift Serverless Logic Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification v0.8](https://serverlessworkflow.io/).
        displayName: OpenShift Serverless Logic Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        - workflows
        links:
        - name: Documentation
          url: https://docs.openshift.com/serverless/
        - name: Source Repository
          url: https://github.com/kiegroup/kogito-serverless-operator/
        maintainers:
        - email: serverless-logic-team@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/logic-swf-devmode-rhel9@sha256:e51b77bde368c4d34b9e1536677c1bd02182c2d6ee3a999d63f213c6853510ea
        - registry.redhat.io/openshift-serverless-1/logic-data-index-postgresql-rhel9@sha256:071078f5f5963fb07d0b161fa925c4681045229778cc911800a54529a14b3797
        - registry.redhat.io/openshift-serverless-1/logic-operator-bundle@sha256:90f9864ae2872acaedf12afc9c707e26bdaba0ef48623153ad0881b1b9945dc9
        - registry.redhat.io/openshift-serverless-1/logic-rhel9-operator@sha256:e7e35b4a80ed8261f09b474c3449f34071bc9636f151ea6604c1f9efd5195827
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4564ca3dc5bac80d6faddaf94c817fbbc270698a9399d8a21ee1005d85ceda56
        - registry.redhat.io/openshift-serverless-1/logic-data-index-ephemeral-rhel9@sha256:bac7496c5c95f529494625778deb14a7c429f2d2aff988b8fca3968de5751f00
        - registry.redhat.io/openshift-serverless-1/logic-jobs-service-postgresql-rhel9@sha256:10503b5a1f1629df1ee61d9009e720f625c05df515078157ba5ed683c1308012
        - registry.redhat.io/openshift-serverless-1/logic-swf-builder-rhel9@sha256:37490d642d03a627f434d806fffae5b0e1245a4fe0d5fee6b13bfff162314af1
        - registry.redhat.io/openshift-serverless-1/logic-jobs-service-ephemeral-rhel9@sha256:b9522442546f5daf0d2481794e9a565fa08c6db9b6db1f9e8c2a7824b2562e33
        - registry.redhat.io/openshift-serverless-1/logic-db-migrator-tool-rhel9@sha256:6818e069bf9ab89cddd5cea1c2e93c6dd1707c479cc21f116e33d8e6db345ad8
        version: 1.37.0
      entries:
      - name: logic-operator.v1.37.0
        version: 1.37.0
      name: stable
    defaultChannel: stable
    packageName: logic-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.0-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: lvms-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lvms-operator.v4.19.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "my-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "default": true,
                        "fstype": "xfs",
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:3701735419e2e68b3c579a68c48106f00b8fb7c1915200ee37437cc0f73a975a
          description: Logical volume manager storage provides dynamically provisioned
            local storage for container workloads
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.2.0 <4.19.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |-
            {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "test-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
          operatorframework.io/suggested-namespace: openshift-storage
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-storage",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/internal-objects: '["logicalvolumes.topolvm.io",
            "lvmvolumegroups.lvm.topolvm.io", "lvmvolumegroupnodestatuses.lvm.topolvm.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lvm-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: LogicalVolume
            name: logicalvolumes.topolvm.io
            version: v1
          - description: LVMCluster is the Schema for the lvmclusters API
            displayName: LVMCluster
            kind: LVMCluster
            name: lvmclusters.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroupNodeStatus
            name: lvmvolumegroupnodestatuses.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroup
            name: lvmvolumegroups.lvm.topolvm.io
            version: v1alpha1
        description: Logical volume manager storage provides dynamically provisioned
          local storage.
        displayName: LVM Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - local storage
        - operator
        - LVM
        links:
        - name: Source Repository
          url: https://github.com/openshift/lvm-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:1e455df18829d87ac99cc7673e1a236fa8f4cc4cc2f56c922810acc0af98cc65
        - registry.redhat.io/lvms4/lvms-operator-bundle@sha256:db9b7aa0d4feb713d0e9a0d122f9be41c95761de356a592012eea8bc52351209
        - registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:3701735419e2e68b3c579a68c48106f00b8fb7c1915200ee37437cc0f73a975a
        version: 4.19.1
      entries:
      - name: lvms-operator.v4.19.1
        version: 4.19.1
      - name: lvms-operator.v4.19.0
        version: 4.19.0
      name: stable-4.19
    - currentCSV: lvms-operator.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "my-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "default": true,
                        "fstype": "xfs",
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:ffd7f0e091cbc9a788a0c857187a3a558f123b4373f33e556486a2fdf8f57d27
          description: Logical volume manager storage provides dynamically provisioned
            local storage for container workloads
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.2.0 <4.20.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |-
            {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "test-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
          operatorframework.io/suggested-namespace: openshift-lvm-storage
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-lvm-storage",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/must-gather-image: registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:d264281158ca5ac4885905231900d435e273be059ec6432477da5086916a2108
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/internal-objects: '["logicalvolumes.topolvm.io",
            "lvmvolumegroups.lvm.topolvm.io", "lvmvolumegroupnodestatuses.lvm.topolvm.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lvm-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: LogicalVolume
            name: logicalvolumes.topolvm.io
            version: v1
          - description: LVMCluster is the Schema for the lvmclusters API
            displayName: LVMCluster
            kind: LVMCluster
            name: lvmclusters.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroupNodeStatus
            name: lvmvolumegroupnodestatuses.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroup
            name: lvmvolumegroups.lvm.topolvm.io
            version: v1alpha1
        description: Logical volume manager storage provides dynamically provisioned
          local storage.
        displayName: LVM Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - local storage
        - operator
        - LVM
        links:
        - name: Source Repository
          url: https://github.com/openshift/lvm-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:d264281158ca5ac4885905231900d435e273be059ec6432477da5086916a2108
        - registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:ffd7f0e091cbc9a788a0c857187a3a558f123b4373f33e556486a2fdf8f57d27
        - registry.redhat.io/lvms4/lvms-operator-bundle@sha256:f2270236ca0f96bac3d2f616b349b3b5d44ffa3889fa91838508be3d9b58fe3b
        version: 4.20.0
      entries:
      - name: lvms-operator.v4.20.0
        version: 4.20.0
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: lvms-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: samsung
      provider-url: ""
    name: socmmd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: socmmd.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cmmd.samsung.com/v1",
                "kind": "CMMD",
                "metadata": {
                  "name": "my-app",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "allocateMode": "auto",
                  "enable": true,
                  "payload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "metadata": {
                      "name": "my-app"
                    },
                    "spec": {
                      "replicas": 1,
                      "selector": {
                        "matchLabels": {
                          "name": "my-app"
                        }
                      },
                      "template": {
                        "metadata": {
                          "labels": {
                            "name": "my-app"
                          }
                        },
                        "spec": {
                          "containers": [
                            {
                              "image": "quay.io/my-account/my-app:latest",
                              "name": "my-app-01"
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "cmmd.samsung.com/v1",
                "kind": "Label",
                "metadata": {
                  "labels": {
                    "machineconfiguration.openshift.io/role": "cmmd"
                  },
                  "name": "cmmd-node-label",
                  "namespace": "socmmd"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          console.openshift.io/plugins: '["socmmd-console-plugin"]'
          containerImage: quay.io/samsung_sag/socmmd@sha256:2ef361fb15f0fec99e0a8f1ef83ad4dd14f701d579c900cce084c4a62cf805f8
          createdAt: "2024-08-01T05:45:38Z"
          description: Samsung Operator For CMM-D
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "cmmd.samsung.com/v1",
              "kind": "Label",
              "metadata": {
                "name": "cmmd-node-label",
                "namespace": "socmmd",
                "labels": {}
              },
              "spec": {}
            }
          operatorframework.io/suggested-namespace: socmmd-system
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/OpenMPDK/SMDK/tree/main/lib/redhat/socmmd
          support: samsung
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CMMD is the Schema for the cmmds API.
            displayName: CMMD
            kind: CMMD
            name: cmmds.cmmd.samsung.com
            version: v1
          - description: Label is the Schema for the labels API.
            displayName: Node Label
            kind: Label
            name: labels.cmmd.samsung.com
            version: v1
        description: Samsung Operator For CMM-D
        displayName: socmmd
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - samsung
        - memory
        - extend
        - cmm-d
        links:
        - name: Samsung Operator For CMM-D
          url: https://github.com/OpenMPDK/SMDK/tree/main/lib/redhat/socmmd
        maintainers:
        - email: junhyeok.im@samsung.com
          name: junhyeok-im
        maturity: stable
        provider:
          name: samsung
        relatedImages:
        - quay.io/community-operator-pipeline-prod/socmmd@sha256:5adf9706daf49b35cfcf74b6fb07b056f87714b87047803b797a56f138c77486
        - quay.io/samsung_sag/socmmd@sha256:2ef361fb15f0fec99e0a8f1ef83ad4dd14f701d579c900cce084c4a62cf805f8
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        version: 0.0.2
      entries:
      - name: socmmd.v0.0.2
        version: 0.0.2
      - name: socmmd.v0.0.1
        version: 0.0.1
      name: stable
    defaultChannel: stable
    packageName: socmmd
    provider:
      name: samsung
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: volsync-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: volsync-product.v0.14.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationDestination",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationdestination-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationdestination",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationdestination-sample"
                },
                "spec": {
                  "rsync": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "capacity": "10Gi",
                    "copyMethod": "Snapshot",
                    "serviceType": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationsource",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationsource-sample"
                },
                "spec": {
                  "rsync": {
                    "address": "my.host.com",
                    "copyMethod": "Clone",
                    "sshKeys": "secretRef"
                  },
                  "sourcePVC": "pvcname",
                  "trigger": {
                    "schedule": "0 * * * *"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
          createdAt: "2025-10-20T14:45:52Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.4.0 <0.14.0'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/volsync
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A ReplicationDestination is a VolSync resource that you can
              use to define the destination of a VolSync replication or synchronization.
            displayName: Replication Destination
            kind: ReplicationDestination
            name: replicationdestinations.volsync.backube
            version: v1alpha1
          - description: A ReplicationSource is a VolSync resource that you can use
              to define the source PVC and replication mover type, enabling you to
              replicate or synchronize PVC data to a remote location.
            displayName: Replication Source
            kind: ReplicationSource
            name: replicationsources.volsync.backube
            version: v1alpha1
        description: |-
          Asynchronous volume replication for Kubernetes CSI storage

          VolSync is a Kubernetes operator that performs asynchronous replication of
          persistent volumes within, or across, clusters. VolSync supports replication
          independent of the storage system. This means that replication can be used
          with storage systems that do not natively support replication. Data can also be
          replicated across different types (and vendors) of storage.

          VolSync supports both 1:1 replication relationships as well as 1:many
          relationships. This provides the flexibility to support use cases such as:

          - Disaster recovery
          - Mirroring data to a test environment
          - Data distribution to a set of remote clusters from a central site
          - Migrating between storage vendors (changing the StorageClass of a
            persistent volume claim).
          - Creating periodic data backups

          ### How it works

          You specify the details of how, when, and where to replicate the data
          in a ReplicationSource object in the same namespace as the persistent
          volume claim (PVC).

          You create a ReplicationDestination object at the destination, which
          specifies the target for the replicated data.

          VolSync uses multiple replication methods to replicate data:

          - Rclone-based replication for 1:many data distribution:

            Data is replicated from the source to an intermediate cloud storage
            service, which is [supported by Rclone](https://rclone.org/#providers).
            The destinations retrieve the data from the intermediate location.

          - Restic-based backup of PVC contents:

            Data in a PVC is backed up by using the [restic](https://restic.net/)
            program. This method works well when the deployment configuration of
            the application is already source-controlled, and only the
            preservation of its persistent state is needed.

          - Rsync-based replication for one-to-one data replication:

            Data is replicated directly to a remote location. The replication uses
            the [Rsync](https://rsync.samba.org/) utility over an ssh connection
            to securely and efficiently transfer data.

          ### Documentation

          For documentation about installing and using the VolSync Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [VolSync persistent volume replication service](https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync) in the Red Hat Advanced Cluster Management
          documentation.

          For additional information about the VolSync project, including features that might not be supported by Red Hat, see
          the [VolSync community](https://volsync.readthedocs.ioe/) documentation.

          ### Support & Troubleshooting

          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: VolSync
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - csi
        - data
        - disaster recovery
        - replication
        - storage
        links:
        - name: Documentation
          url: https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync
        - name: Source
          url: https://github.com/backube/volsync
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:57cb4ed66c27720b2526ce4ebeda21086a9088305393af9607fb766447df39bd
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        version: 0.14.0
      entries:
      - name: volsync-product.v0.14.0
        version: 0.14.0
      - name: volsync-product.v0.13.1
        version: 0.13.1
      - name: volsync-product.v0.13.0
        version: 0.13.0
      name: stable
    - currentCSV: volsync-product.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationDestination",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationdestination-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationdestination",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationdestination-sample"
                },
                "spec": {
                  "rsync": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "capacity": "10Gi",
                    "copyMethod": "Snapshot",
                    "serviceType": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationsource",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationsource-sample"
                },
                "spec": {
                  "rsync": {
                    "address": "my.host.com",
                    "copyMethod": "Clone",
                    "sshKeys": "secretRef"
                  },
                  "sourcePVC": "pvcname",
                  "trigger": {
                    "schedule": "0 * * * *"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
          createdAt: "2025-08-27T13:12:05Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.4.0 <0.13.1'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/volsync
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A ReplicationDestination is a VolSync resource that you can
              use to define the destination of a VolSync replication or synchronization.
            displayName: Replication Destination
            kind: ReplicationDestination
            name: replicationdestinations.volsync.backube
            version: v1alpha1
          - description: A ReplicationSource is a VolSync resource that you can use
              to define the source PVC and replication mover type, enabling you to
              replicate or synchronize PVC data to a remote location.
            displayName: Replication Source
            kind: ReplicationSource
            name: replicationsources.volsync.backube
            version: v1alpha1
        description: |-
          Asynchronous volume replication for Kubernetes CSI storage

          VolSync is a Kubernetes operator that performs asynchronous replication of
          persistent volumes within, or across, clusters. VolSync supports replication
          independent of the storage system. This means that replication can be used
          with storage systems that do not natively support replication. Data can also be
          replicated across different types (and vendors) of storage.

          VolSync supports both 1:1 replication relationships as well as 1:many
          relationships. This provides the flexibility to support use cases such as:

          - Disaster recovery
          - Mirroring data to a test environment
          - Data distribution to a set of remote clusters from a central site
          - Migrating between storage vendors (changing the StorageClass of a
            persistent volume claim).
          - Creating periodic data backups

          ### How it works

          You specify the details of how, when, and where to replicate the data
          in a ReplicationSource object in the same namespace as the persistent
          volume claim (PVC).

          You create a ReplicationDestination object at the destination, which
          specifies the target for the replicated data.

          VolSync uses multiple replication methods to replicate data:

          - Rclone-based replication for 1:many data distribution:

            Data is replicated from the source to an intermediate cloud storage
            service, which is [supported by Rclone](https://rclone.org/#providers).
            The destinations retrieve the data from the intermediate location.

          - Restic-based backup of PVC contents:

            Data in a PVC is backed up by using the [restic](https://restic.net/)
            program. This method works well when the deployment configuration of
            the application is already source-controlled, and only the
            preservation of its persistent state is needed.

          - Rsync-based replication for one-to-one data replication:

            Data is replicated directly to a remote location. The replication uses
            the [Rsync](https://rsync.samba.org/) utility over an ssh connection
            to securely and efficiently transfer data.

          ### Documentation

          For documentation about installing and using the VolSync Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [VolSync persistent volume replication service](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/business_continuity/business-cont-overview#volsync) in the Red Hat Advanced Cluster Management
          documentation.

          For additional information about the VolSync project, including features that might not be supported by Red Hat, see
          the [VolSync community](https://volsync.readthedocs.ioe/) documentation.

          ### Support & Troubleshooting

          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: VolSync
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - csi
        - data
        - disaster recovery
        - replication
        - storage
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/business_continuity/business-cont-overview#volsync
        - name: Source
          url: https://github.com/backube/volsync
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:32cd9b5812506656ff9ff1c2c9fdacde44f179313ea2bfbbc18564fee635ca67
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:d37a6d10b0fa07370066a31fdaffe2ea553faf4e4e98be7fcef5ec40d62ffe29
        version: 0.13.1
      entries:
      - name: volsync-product.v0.13.1
        version: 0.13.1
      - name: volsync-product.v0.13.0
        version: 0.13.0
      name: stable-0.13
    - currentCSV: volsync-product.v0.14.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationDestination",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationdestination-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationdestination",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationdestination-sample"
                },
                "spec": {
                  "rsync": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "capacity": "10Gi",
                    "copyMethod": "Snapshot",
                    "serviceType": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationsource",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationsource-sample"
                },
                "spec": {
                  "rsync": {
                    "address": "my.host.com",
                    "copyMethod": "Clone",
                    "sshKeys": "secretRef"
                  },
                  "sourcePVC": "pvcname",
                  "trigger": {
                    "schedule": "0 * * * *"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
          createdAt: "2025-10-20T14:45:52Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.4.0 <0.14.0'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/volsync
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A ReplicationDestination is a VolSync resource that you can
              use to define the destination of a VolSync replication or synchronization.
            displayName: Replication Destination
            kind: ReplicationDestination
            name: replicationdestinations.volsync.backube
            version: v1alpha1
          - description: A ReplicationSource is a VolSync resource that you can use
              to define the source PVC and replication mover type, enabling you to
              replicate or synchronize PVC data to a remote location.
            displayName: Replication Source
            kind: ReplicationSource
            name: replicationsources.volsync.backube
            version: v1alpha1
        description: |-
          Asynchronous volume replication for Kubernetes CSI storage

          VolSync is a Kubernetes operator that performs asynchronous replication of
          persistent volumes within, or across, clusters. VolSync supports replication
          independent of the storage system. This means that replication can be used
          with storage systems that do not natively support replication. Data can also be
          replicated across different types (and vendors) of storage.

          VolSync supports both 1:1 replication relationships as well as 1:many
          relationships. This provides the flexibility to support use cases such as:

          - Disaster recovery
          - Mirroring data to a test environment
          - Data distribution to a set of remote clusters from a central site
          - Migrating between storage vendors (changing the StorageClass of a
            persistent volume claim).
          - Creating periodic data backups

          ### How it works

          You specify the details of how, when, and where to replicate the data
          in a ReplicationSource object in the same namespace as the persistent
          volume claim (PVC).

          You create a ReplicationDestination object at the destination, which
          specifies the target for the replicated data.

          VolSync uses multiple replication methods to replicate data:

          - Rclone-based replication for 1:many data distribution:

            Data is replicated from the source to an intermediate cloud storage
            service, which is [supported by Rclone](https://rclone.org/#providers).
            The destinations retrieve the data from the intermediate location.

          - Restic-based backup of PVC contents:

            Data in a PVC is backed up by using the [restic](https://restic.net/)
            program. This method works well when the deployment configuration of
            the application is already source-controlled, and only the
            preservation of its persistent state is needed.

          - Rsync-based replication for one-to-one data replication:

            Data is replicated directly to a remote location. The replication uses
            the [Rsync](https://rsync.samba.org/) utility over an ssh connection
            to securely and efficiently transfer data.

          ### Documentation

          For documentation about installing and using the VolSync Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [VolSync persistent volume replication service](https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync) in the Red Hat Advanced Cluster Management
          documentation.

          For additional information about the VolSync project, including features that might not be supported by Red Hat, see
          the [VolSync community](https://volsync.readthedocs.ioe/) documentation.

          ### Support & Troubleshooting

          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: VolSync
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - csi
        - data
        - disaster recovery
        - replication
        - storage
        links:
        - name: Documentation
          url: https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync
        - name: Source
          url: https://github.com/backube/volsync
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:57cb4ed66c27720b2526ce4ebeda21086a9088305393af9607fb766447df39bd
        version: 0.14.0
      entries:
      - name: volsync-product.v0.14.0
        version: 0.14.0
      name: stable-0.14
    defaultChannel: stable
    packageName: volsync-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com
    name: ibm-application-gateway-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-application-gateway-operator.v25.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ibm.com/v1",
                "kind": "IBMApplicationGateway",
                "metadata": {
                  "name": "iag-instance"
                },
                "spec": {
                  "configuration": [
                    {
                      "dataKey": "config",
                      "name": "test-config",
                      "type": "configmap"
                    },
                    {
                      "discoveryEndpoint": "https://isam.mmfa.ibm.com/mga/sps/oauth/oauth20/metadata/test",
                      "postData": [
                        {
                          "name": "redirect_uris",
                          "values": [
                            "https://isam.mmfa.ibm.com/pkmsoidc"
                          ]
                        },
                        {
                          "name": "client_name",
                          "value": "OperatorTest"
                        },
                        {
                          "name": "enforce_pkce",
                          "value": "false"
                        },
                        {
                          "name": "all_users_entitled",
                          "value": "true"
                        },
                        {
                          "name": "consent_action",
                          "value": "never_prompt"
                        }
                      ],
                      "secret": "oidc-client",
                      "type": "oidc_registration"
                    },
                    {
                      "headers": [
                        {
                          "name": "Authorization",
                          "secretKey": "value",
                          "type": "secret",
                          "value": "githubsecret"
                        }
                      ],
                      "type": "web",
                      "url": "https://raw.github.com/ibm-security/iag-config/master/test/sample1.yaml"
                    },
                    {
                      "type": "literal",
                      "value": "version: \"22.07\"\n\nserver:\n  local_applications:\n    cred_viewer:\n      path_segment: creds\n      enable_html: true\n\nidentity:\n  oidc:\n    discovery_endpoint: \"https://iag-dev.ibmcloudsecurity.com/oidc/endpoint/default/.well-known/openid-configuration\"\n    client_id: 1cbfe647-9e5f-4d99-8e05-8ed1c862eb47\n    client_secret: uPP8rM7N0e\n"
                    }
                  ],
                  "deployment": {
                    "image": "icr.io/ibmappgateway/ibm-application-gateway@sha256:1144b79a2930fe942ce627b0abcc3bed2f0b0770ae8313cb77ffe6772511c1f9",
                    "imagePullPolicy": "Always",
                    "imagePullSecrets": [
                      {
                        "name": "regcred"
                      }
                    ],
                    "lang": "C",
                    "livenessProbe": {
                      "failureThreshold": 6,
                      "initialDelaySeconds": 8,
                      "periodSeconds": 9,
                      "successThreshold": 7,
                      "timeoutSeconds": 1
                    },
                    "readinessProbe": {
                      "failureThreshold": 2,
                      "initialDelaySeconds": 7,
                      "periodSeconds": 8,
                      "successThreshold": 4,
                      "timeoutSeconds": 5
                    },
                    "serviceAccountName": "iag"
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: icr.io/ibmappgateway/ibm-application-gateway-operator@sha256:6a16d4ef802a866942f504b11a948565245d303f322944200c1a1269fe7c371c
          createdAt: "2025-02-05T21:15:37Z"
          description: The IBM Application Gateway operator manages the lifecycle
            of IBM Application Gateway containers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM-Security/ibm-application-gateway-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBMApplicationGateway is the Schema for the ibmapplicationgateways
              API
            displayName: IBMApplication Gateway
            kind: IBMApplicationGateway
            name: ibmapplicationgateways.ibm.com
            version: v1
        description: "The [IBM Application Gateway (IAG)](https://ibm.biz/ibm-app-gateway)
          image provides a containerized secure Web Reverse proxy which is designed
          to sit in front of your application, seamlessly adding authentication and
          authorization protection to your application.\n\nAn IAG instance deployed
          on Kubernetes can be a complex deployment.  In particular the configuration
          can be defined externally in one or more locations, and changes to this
          configuration may require all instances to be reloaded for the changes to
          take effect. \n\nThe internal Kubernetes deployment controller does not
          have any knowledge of how an IBM Application Gateway instance should behave
          when the configuration changes. As such this IBM Application Gateway specific
          Kubernetes operator is available to be deployed. Once deployed the operator
          can manage the lifecycle of the IBM Application Gateway instances.\n\nSee
          the project [Readme](https://github.com/IBM-Security/ibm-application-gateway-operator/blob/master/README.md)
          for further information and details.\n\n"
        displayName: IBM Application Gateway Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - IBM
        - Security
        - Identity and Access
        links:
        - name: IBM Application Gateway product documentation
          url: https://ibm.biz/ibm-app-gateway
        maintainers:
        - email: isamdev@au1.ibm.com
          name: IBM Application Gateway Development Team
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: IBM
          url: https://www.ibm.com
        relatedImages:
        - icr.io/ibmappgateway/ibm-application-gateway-operator@sha256:6a16d4ef802a866942f504b11a948565245d303f322944200c1a1269fe7c371c
        - icr.io/ibmappgateway/ibm-application-gateway@sha256:1144b79a2930fe942ce627b0abcc3bed2f0b0770ae8313cb77ffe6772511c1f9
        - registry.connect.redhat.com/ibm/ibm-application-gateway-operator-bundle@sha256:e4ece7113fa7056980507408ac29d60676cf51c20d71a058a1accf765a6ea7e3
        version: 25.2.0
      entries:
      - name: ibm-application-gateway-operator.v25.2.0
        version: 25.2.0
      - name: ibm-application-gateway-operator.v24.4.0
        version: 24.4.0
      name: stable
    defaultChannel: stable
    packageName: ibm-application-gateway-operator
    provider:
      name: IBM
      url: https://www.ibm.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: multicluster-operators-subscription
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-operators-subscription.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/multicluster-operators-subscription:2.3.0
          createdAt: "2021-07-19T18:00:00Z"
          description: An operator to subscribe resources from object Bucket, helm
            and github types of channels
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:3bc76999ece42fcb3acd913b32be3fa0e0da056832922819b81119dcfb5f1582
        - quay.io/open-cluster-management/multicluster-operators-application:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-channel:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-deployable:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-placementrule:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-subscription:2.3.0
        version: 0.3.0
      entries:
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.3
    - currentCSV: multicluster-operators-subscription.v0.3.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/multicluster-operators-subscription:2.4.0
          createdAt: "2021-09-29T10:23:00Z"
          description: An operator to subscribe resources from object Bucket, helm
            and github types of channels
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1beta1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/open-cluster-management/multicluster-operators-placementrule:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-subscription:2.4.0
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:2aeba259864bbddaa8cdd46ab6d8c3495450a0081469a27b9acde53008d91bed
        - quay.io/open-cluster-management/multicloud-integrations:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-application:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-channel:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-deployable:2.4.0
        version: 0.3.6
      entries:
      - name: multicluster-operators-subscription.v0.3.6
        version: 0.3.6
      - name: multicluster-operators-subscription.v0.3.5
        version: 0.3.5
      - name: multicluster-operators-subscription.v0.3.4
        version: 0.3.4
      - name: multicluster-operators-subscription.v0.3.3
        version: 0.3.3
      - name: multicluster-operators-subscription.v0.3.2
        version: 0.3.2
      - name: multicluster-operators-subscription.v0.3.1
        version: 0.3.1
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.4
    - currentCSV: multicluster-operators-subscription.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/multicluster-operators-subscription:2.5.0
          createdAt: "2022-03-23T18:00:00Z"
          description: An operator for deploying resources from object Bucket, helm
            repo or github repo to multiple managed clusters
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management-io/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: subscription status per cluster per app
            displayName: App Subscription Report
            kind: SubscriptionReport
            name: subscriptionreports.apps.open-cluster-management.io
            version: v1alpha1
          - description: subscription status per package
            displayName: App Subscription Status
            kind: SubscriptionStatus
            name: subscriptionstatuses.apps.open-cluster-management.io
            version: v1alpha1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1beta1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/open-cluster-management/multicluster-operators-subscription:2.5.0
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:f58f60283f6cf9ea745f4a25378ef6690d98af8fda0eb63f663066631e71450b
        - quay.io/open-cluster-management/multicloud-integrations:2.5.0
        - quay.io/open-cluster-management/multicluster-operators-application:2.5.0
        - quay.io/open-cluster-management/multicluster-operators-channel:2.5.0
        version: 0.4.0
      entries:
      - name: multicluster-operators-subscription.v0.4.0
        version: 0.4.0
      - name: multicluster-operators-subscription.v0.3.9
        version: 0.3.9
      - name: multicluster-operators-subscription.v0.3.8
        version: 0.3.8
      - name: multicluster-operators-subscription.v0.3.7
        version: 0.3.7
      - name: multicluster-operators-subscription.v0.3.6
        version: 0.3.6
      - name: multicluster-operators-subscription.v0.3.5
        version: 0.3.5
      - name: multicluster-operators-subscription.v0.3.4
        version: 0.3.4
      - name: multicluster-operators-subscription.v0.3.3
        version: 0.3.3
      - name: multicluster-operators-subscription.v0.3.2
        version: 0.3.2
      - name: multicluster-operators-subscription.v0.3.1
        version: 0.3.1
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.5
    - currentCSV: multicluster-operators-subscription.v0.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/stolostron/multicluster-operators-subscription:2.6.0
          createdAt: "2022-06-06T18:00:00Z"
          description: An operator for deploying resources from object Bucket, helm
            repo or github repo to multiple managed clusters
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management-io/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: subscription status per cluster per app
            displayName: App Subscription Report
            kind: SubscriptionReport
            name: subscriptionreports.apps.open-cluster-management.io
            version: v1alpha1
          - description: subscription status per package
            displayName: App Subscription Status
            kind: SubscriptionStatus
            name: subscriptionstatuses.apps.open-cluster-management.io
            version: v1alpha1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1beta1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/stolostron/multicloud-integrations:2.6.0
        - quay.io/stolostron/multicluster-operators-application:2.6.0
        - quay.io/stolostron/multicluster-operators-channel:2.6.0
        - quay.io/stolostron/multicluster-operators-subscription:2.6.0
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:48b37c9f9417ef442d896e79851b176505045b487bddf77bb4e6d91fd5ad3dd1
        version: 0.4.1
      entries:
      - name: multicluster-operators-subscription.v0.4.1
        version: 0.4.1
      - name: multicluster-operators-subscription.v0.4.0
        version: 0.4.0
      - name: multicluster-operators-subscription.v0.3.9
        version: 0.3.9
      - name: multicluster-operators-subscription.v0.3.8
        version: 0.3.8
      - name: multicluster-operators-subscription.v0.3.7
        version: 0.3.7
      - name: multicluster-operators-subscription.v0.3.6
        version: 0.3.6
      - name: multicluster-operators-subscription.v0.3.5
        version: 0.3.5
      - name: multicluster-operators-subscription.v0.3.4
        version: 0.3.4
      - name: multicluster-operators-subscription.v0.3.3
        version: 0.3.3
      - name: multicluster-operators-subscription.v0.3.2
        version: 0.3.2
      - name: multicluster-operators-subscription.v0.3.1
        version: 0.3.1
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.6
    defaultChannel: release-2.5
    packageName: multicluster-operators-subscription
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apache KIE
      provider-url: ""
    name: sonataflow-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sonataflow-operator.v10.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "docker.io/apache",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: docker.io/apache/incubator-kie-sonataflow-operator:10.0.0
          description: SonataFlow Kubernetes Operator for deploying workflow applications
            based on the CNCF Serverless Workflow specification
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/apache/incubator-kie-tools/packages/sonataflow-operator
          support: Apache Software Foundation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: Sonata Flow Build
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: Sonata Flow Cluster Platform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: Sonata Flow Platform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: Sonata Flow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          SonataFlow Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification](https://serverlessworkflow.io/):

          * Deploy workflow applications using the [dev profile](https://sonataflow.org/serverlessworkflow/latest/cloud/operator/developing-workflows.html), suited for the your development cycle
          * Build workflow applications based on the platform you're currently working on.
        displayName: SonataFlow Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        links:
        - name: Product Page
          url: https://github.com/apache/incubator-kie-tools
        maintainers:
        - email: dev@kie.apache.org
          name: Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Apache Software Foundation
        relatedImages:
        - docker.io/apache/incubator-kie-sonataflow-operator:10.0.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/community-operator-pipeline-prod/sonataflow-operator@sha256:8ad2282afef801c794e316c93a12834d688cfa44766132231f93013c3124944f
        version: 10.0.0
      entries:
      - name: sonataflow-operator.v10.0.0
        version: 10.0.0
      - name: sonataflow-operator.v1.40.1
        version: 1.40.1
      - name: sonataflow-operator.v1.40.0
        version: 1.40.0
      name: alpha
    - currentCSV: sonataflow-operator.v10.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "host/namespace",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: docker.io/apache/incubator-kie-sonataflow-operator:10.1.0
          createdAt: "2025-09-11T14:44:56Z"
          description: SonataFlow Kubernetes Operator for deploying workflow applications
            based on the CNCF Serverless Workflow specification
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/apache/incubator-kie-tools/packages/sonataflow-operator
          support: Apache KIE
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: SonataFlowBuild
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: SonataFlowClusterPlatform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: SonataFlowPlatform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: SonataFlow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          SonataFlow Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification](https://serverlessworkflow.io/):

          * Deploy workflow applications using the [dev profile](https://sonataflow.org/serverlessworkflow/latest/cloud/operator/developing-workflows.html), suited for the your development cycle
          * Build workflow applications based on the platform you're currently working on.
        displayName: SonataFlow Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        links:
        - name: Product Page
          url: https://sonataflow.org/serverlessworkflow/latest/index.html
        maintainers:
        - email: dev@kie.apache.org
          name: Apache KIE
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Apache KIE
        relatedImages:
        - docker.io/apache/incubator-kie-sonataflow-operator:10.1.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/sonataflow-operator@sha256:d4ec9966370c3e770209042e437c53b0780401150f5385069b8476e26c343919
        version: 10.1.0
      entries:
      - name: sonataflow-operator.v10.1.0
        version: 10.1.0
      - name: sonataflow-operator.v10.0.0
        version: 10.0.0
      - name: sonataflow-operator.v1.40.1
        version: 1.40.1
      - name: sonataflow-operator.v1.40.0
        version: 1.40.0
      name: stable
    defaultChannel: stable
    packageName: sonataflow-operator
    provider:
      name: Apache KIE
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: opentelemetry-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opentelemetry-operator.v0.140.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "Instrumentation",
                "metadata": {
                  "name": "instrumentation"
                },
                "spec": {
                  "exporter": {
                    "endpoint": "http://otel-collector-headless:4317"
                  }
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpAMPBridge",
                "metadata": {
                  "name": "opampbridge-sample"
                },
                "spec": {
                  "capabilities": {
                    "AcceptsOpAMPConnectionSettings": true,
                    "AcceptsOtherConnectionSettings": true,
                    "AcceptsRemoteConfig": true,
                    "AcceptsRestartCommand": true,
                    "ReportsEffectiveConfig": true,
                    "ReportsHealth": true,
                    "ReportsOwnLogs": true,
                    "ReportsOwnMetrics": true,
                    "ReportsOwnTraces": true,
                    "ReportsRemoteConfig": true,
                    "ReportsStatus": true
                  },
                  "componentsAllowed": {
                    "exporters": [
                      "debug"
                    ],
                    "processors": [
                      "memory_limiter"
                    ],
                    "receivers": [
                      "otlp"
                    ]
                  },
                  "endpoint": "ws://opamp-server:4320/v1/opamp"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": "receivers:\n  otlp:\n    protocols: \n      grpc: {}\n      http: {}\n\nexporters:\n  debug: {}\n\nservice:\n  pipelines:\n    traces:\n      receivers: [otlp]\n      exporters: [debug]\n"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1beta1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": {
                    "exporters": {
                      "debug": {}
                    },
                    "receivers": {
                      "otlp": {
                        "protocols": {
                          "grpc": {},
                          "http": {}
                        }
                      }
                    },
                    "service": {
                      "pipelines": {
                        "traces": {
                          "exporters": [
                            "debug"
                          ],
                          "receivers": [
                            "otlp"
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/rhosdt/opentelemetry-rhel8-operator@sha256:899d19bc4e6fbde8e8e8ee5bc3ef6e4151bd18ed8d8e6f2cc8280e4a18fd3dfc
          createdAt: 27 Nov 2025, 12:24
          description: Provides the OpenTelemetry components, including the Collector
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.33.0 <0.140.0-1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-opentelemetry-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-telemetry/opentelemetry-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instrumentation is the spec for OpenTelemetry instrumentation.
            displayName: OpenTelemetry Instrumentation
            kind: Instrumentation
            name: instrumentations.opentelemetry.io
            version: v1alpha1
          - description: OpAMPBridge is the Schema for the opampbridges API.
            displayName: OpAMP Bridge
            kind: OpAMPBridge
            name: opampbridges.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1beta1
          - description: TargetAllocator is the Schema for the targetallocators API.
            displayName: Target Allocator
            kind: TargetAllocator
            name: targetallocators.opentelemetry.io
            version: v1alpha1
        description: |-
          Red Hat build of OpenTelemetry is a collection of tools, APIs, and SDKs. You use it to instrument, generate, collect, and export telemetry data (metrics, logs, and traces) for analysis in order to understand your software's performance and behavior.
          This operator was previously called Red Hat OpenShift distributed tracing data collection.

          ### Operator features

          * **Sidecar injection** - annotate your pods and let the operator inject a sidecar.
          * **Managed upgrades** - updating the operator will automatically update your OpenTelemetry collectors.
          * **Deployment modes** - your collector can be deployed as sidecar, daemon set, or regular deployment.
          * **Service port management** - the operator detects which ports need to be exposed based on the provided configuration.

          ## Examples

          There is a list of examples to help you deploy different configurations in [this GitHub repository](https://github.com/os-observability/redhat-rhosdt-samples)

          ### Support & Troubleshooting

          Red Hat build of OpenTelemetry is available as part of a Red Hat OpenShift subscription.
          Checking the [Red Hat Documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/4.17/html/red_hat_build_of_opentelemetry/index) is recommended when installing, configuring, and managing the Operator and instances.
        displayName: Red Hat build of OpenTelemetry
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opentelemetry
        - tracing
        - logging
        - metrics
        - monitoring
        - troubleshooting
        links:
        - name: OpenTelemetry Operator
          url: https://github.com/open-telemetry/opentelemetry-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat support
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhosdt/opentelemetry-target-allocator-rhel8@sha256:fd3fde1995d4271f5e4c36093839c369f403211b3fe9d3a4e09906efe8d000d7
        - registry.redhat.io/rhosdt/opentelemetry-operator-bundle@sha256:6ac3bc6ae3aa20a23b4144b01b1aa5ae50f2194e4951446f02a8d60a397aef68
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:6b6c25b6849139cfe88b02df1a095fa0abbbaec9a987d20f75ca007c3cf4e2b7
        - registry.redhat.io/rhosdt/opentelemetry-collector-rhel8@sha256:adf3760df254b939a476428449b792037f197e64bbea44d39ac7c60661818855
        - registry.redhat.io/rhosdt/opentelemetry-rhel8-operator@sha256:899d19bc4e6fbde8e8e8ee5bc3ef6e4151bd18ed8d8e6f2cc8280e4a18fd3dfc
        version: 0.140.0-1
      entries:
      - name: opentelemetry-operator.v0.140.0-1
        version: 0.140.0-1
      - name: opentelemetry-operator.v0.135.0-1
        version: 0.135.0-1
      - name: opentelemetry-operator.v0.127.0-2
        version: 0.127.0-2
      - name: opentelemetry-operator.v0.127.0-1
        version: 0.127.0-1
      - name: opentelemetry-operator.v0.119.0-2
        version: 0.119.0-2
      - name: opentelemetry-operator.v0.119.0-1
        version: 0.119.0-1
      - name: opentelemetry-operator.v0.113.0-2
        version: 0.113.0-2
      - name: opentelemetry-operator.v0.113.0-1
        version: 0.113.0-1
      - name: opentelemetry-operator.v0.107.0-5
        version: 0.107.0-5
      - name: opentelemetry-operator.v0.107.0-4-0.1727168137.p
        version: 0.107.0-4+0.1727168137.p
      - name: opentelemetry-operator.v0.107.0-4
        version: 0.107.0-4
      - name: opentelemetry-operator.v0.102.0-3
        version: 0.102.0-3
      - name: opentelemetry-operator.v0.102.0-2
        version: 0.102.0-2
      - name: opentelemetry-operator.v0.100.1-3
        version: 0.100.1-3
      - name: opentelemetry-operator.v0.93.0-3
        version: 0.93.0-3
      - name: opentelemetry-operator.v0.93.0-2
        version: 0.93.0-2
      - name: opentelemetry-operator.v0.89.0-3
        version: 0.89.0-3
      - name: opentelemetry-operator.v0.81.1-5
        version: 0.81.1-5
      - name: opentelemetry-operator.v0.74.0-5-0.1687199949.p
        version: 0.74.0-5+0.1687199949.p
      - name: opentelemetry-operator.v0.74.0-5
        version: 0.74.0-5
      - name: opentelemetry-operator.v0.60.0-2
        version: 0.60.0-2
      - name: opentelemetry-operator.v0.56.0-1
        version: 0.56.0-1
      name: stable
    defaultChannel: stable
    packageName: opentelemetry-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: external-dns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: external-dns-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure-private"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/privateDnsZones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
          createdAt: 2025-12-10T16:08:35
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.3.3
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        - registry.redhat.io/edo/external-dns-rhel9@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        version: 1.3.3
      entries:
      - name: external-dns-operator.v1.3.3
        version: 1.3.3
      - name: external-dns-operator.v1.3.2
        version: 1.3.2
      - name: external-dns-operator.v1.3.1
        version: 1.3.1
      - name: external-dns-operator.v1.3.0
        version: 1.3.0
      - name: external-dns-operator.v1.2.0
        version: 1.2.0
      - name: external-dns-operator.v1.1.1
        version: 1.1.1
      - name: external-dns-operator.v1.1.0
        version: 1.1.0
      - deprecation:
          message: |
            external-dns-operator.v1.0.1 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.1
        version: 1.0.1
      - deprecation:
          message: |
            external-dns-operator.v1.0.0 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.0
        version: 1.0.0
      name: stable-v1
    - currentCSV: external-dns-operator.v1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel8-operator@sha256:0877eb0a111efe0bff63173a2dfeb7a06a61afd0efbcdba053322a539e0dc667
          createdAt: 2024-01-22T09:26:37
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.1
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:0a86a1808d9906eb57886d3d3cd5c04cf9578a80860342132d36ecfc411bf807
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:0877eb0a111efe0bff63173a2dfeb7a06a61afd0efbcdba053322a539e0dc667
        - registry.redhat.io/edo/external-dns-rhel8@sha256:17f4127cbb9a9304769e9655c19cbea2260107c7e9371a99a9aa3e85d759c00b
        version: 1.0.1
      deprecation:
        message: |
          The stable-v1.0 channel is no longer supported. Please switch to a supported stable channel to receive the latest updates and support.
      entries:
      - deprecation:
          message: |
            external-dns-operator.v1.0.1 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.1
        version: 1.0.1
      - deprecation:
          message: |
            external-dns-operator.v1.0.0 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    - currentCSV: external-dns-operator.v1.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel8-operator@sha256:9ca751e84b8843cc62dc60550e5c4af741bf09a381ef62220e7eb3760ffe8524
          createdAt: 2024-01-22T09:56:14
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.1.1
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:b02bab3af52a2469ced96618f1d122464568ba21ebc0a3a945b78ec4e6bdc80d
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:9ca751e84b8843cc62dc60550e5c4af741bf09a381ef62220e7eb3760ffe8524
        - registry.redhat.io/edo/external-dns-rhel8@sha256:ffcc3f2e9b9feb889e7882465f7f034aba6b9ee0699a1b6c24e83f501a63ecca
        version: 1.1.1
      entries:
      - name: external-dns-operator.v1.1.1
        version: 1.1.1
      - name: external-dns-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: external-dns-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel8-operator@sha256:15700d4acb4705ec900c03b77fa50eaa7db9e59f33bbc819e4fdfc0b9f362f82
          createdAt: 2023-11-15T09:24:04
          olm.skipRange: <1.2.0
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:15700d4acb4705ec900c03b77fa50eaa7db9e59f33bbc819e4fdfc0b9f362f82
        - registry.redhat.io/edo/external-dns-rhel8@sha256:6263a78b2a170e56dfca2173f14dbf14f0a5bddb6ea600bfdef248c7d5f20e4b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e33874a51971a90917cf437fc6cbeea1da569ba07217f66f1bba96d594f58aed
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:a614ec94c2468e34e129e9ecd4bc0d1895eb67b96e77eb5ad94cd8bd507860f5
        version: 1.2.0
      entries:
      - name: external-dns-operator.v1.2.0
        version: 1.2.0
      name: stable-v1.2
    - currentCSV: external-dns-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure-private"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/privateDnsZones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
          createdAt: 2025-12-10T16:08:35
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.3.3
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        - registry.redhat.io/edo/external-dns-rhel9@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        version: 1.3.3
      entries:
      - name: external-dns-operator.v1.3.3
        version: 1.3.3
      - name: external-dns-operator.v1.3.2
        version: 1.3.2
      - name: external-dns-operator.v1.3.1
        version: 1.3.1
      - name: external-dns-operator.v1.3.0
        version: 1.3.0
      name: stable-v1.3
    defaultChannel: stable-v1
    packageName: external-dns-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: redhat.com
    name: service-binding-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: service-binding-operator.v0.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "service.binding/v1alpha2",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: quay.io/redhat-developer/servicebinding-operator@sha256:b355d2370926063a3de8c7a09c0ca8c2348a8d158d6a7095d0e5e8381cc95be5
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.service.binding
            version: v1alpha2
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/openshift-community-operators/service-binding-operator@sha256:5a5e2f775760aa68c85d0f69b700d23ef2a6be7bb415bd96401d03eb6077f90c
        - quay.io/redhat-developer/servicebinding-operator@sha256:b355d2370926063a3de8c7a09c0ca8c2348a8d158d6a7095d0e5e8381cc95be5
        version: 0.10.0
      entries:
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: beta
    - currentCSV: service-binding-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindablekinds-sample"
                }
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: quay.io/redhat-developer/servicebinding-operator@sha256:c9c9e45321db2d4d3cdc2d364337af844f69c9893d0cc74d2fa56c846ffcf3da
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/openshift-community-operators/service-binding-operator@sha256:79a9191f0cd5d11af004ead87ba9eb5359c67fd658c346db4c3cea3b16b23987
        - quay.io/redhat-developer/servicebinding-operator@sha256:c9c9e45321db2d4d3cdc2d364337af844f69c9893d0cc74d2fa56c846ffcf3da
        version: 0.11.0
      entries:
      - name: service-binding-operator.v0.11.0
        version: 0.11.0
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: candidate
    - currentCSV: service-binding-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindable-kinds"
                },
                "spec": {}
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  },
                  "type": "postgres",
                  "workload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: quay.io/redhat-developer/servicebinding-operator@sha256:ac47f496fb7ecdcbc371f8c809fad2687ec0c35bbc8c522a7ab63b3e5ffd90ea
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'.
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1alpha3
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1beta1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
          - description: Service Binding implementing community specification (https://github.com/k8s-service-bindings/spec)
              describing the connection between a backing service and an application
              workload.
            displayName: Service Binding (Spec API)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1beta1
        description: |
          The Service Binding Operator manages the data plane for applications and backing services. It enables developers to connect their
          applications to backing services (REST API, databases, event buses and others) with a consistent and predictable
          experience. The operator reads data made available by the control plane of backing services and projects the bindings
          data to applications either as accessible files mounted into the application’s container or environment variables.

          In Kubernetes, each service suggests a different way to access their secrets and developers will consume them in their
          application in a custom way. While this provides a good deal of flexibility, it also creates discrepancies and
          complexity dealing with each specific services, which leads large development teams to lose overall velocity.

          Service Binding Operator removes the error-prone manual configuration of binding information, provides service operators
          a low-touch administrative experience to provision and manage access to services and enriches development lifecycle.

          For additional details refer to the project [documentation](https://redhat-developer.github.io/service-binding-operator).

          Get Started with Service Binding Operator
          * Find out about SBO’s [prerequisites](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/installing-service-binding.html).
          * Refer to the [Quick Start Guide](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/quick-start.html) to see SBO in action in a simple scenario.

          Need Help
          * Raise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)

          Licence
          * Service Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE)

          Service Binding Operator is providing and supporting two different APIs.
          * `binding.operators.coreos.com/v1alpha1`: This API is compliant with the Service Binding specification. It is fully supported and considered as the mature API. It’s the API we recommend in production environments.
          * `servicebinding.io/v1beta1`: This API is the one defined in the Service Binding specification. It is available in Service Binding Operator 1.x.

          We’ll consider supporting only the API from the specification, once the Service Binding specification will be officially GA. Of course, that will be a breaking change and handle in a safe way for you.
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Documentation
          url: https://redhat-developer.github.io/service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/redhat-developer/servicebinding-operator@sha256:ac47f496fb7ecdcbc371f8c809fad2687ec0c35bbc8c522a7ab63b3e5ffd90ea
        - quay.io/openshift-community-operators/service-binding-operator@sha256:54ea11add0a1d988e0c965968f9a65e011978190f76fa2f826f1378474bac1d4
        version: 1.4.0
      entries:
      - name: service-binding-operator.v1.4.0
        version: 1.4.0
      - name: service-binding-operator.v1.3.4
        version: 1.3.4
      - name: service-binding-operator.v1.3.3
        version: 1.3.3
      - name: service-binding-operator.v1.3.2
        version: 1.3.2
      - name: service-binding-operator.v1.3.1
        version: 1.3.1
      - name: service-binding-operator.v1.3.0
        version: 1.3.0
      - name: service-binding-operator.v1.2.0
        version: 1.2.0
      - name: service-binding-operator.v1.1.1
        version: 1.1.1
      - name: service-binding-operator.v1.1.0
        version: 1.1.0
      - name: service-binding-operator.v1.0.1
        version: 1.0.1
      - name: service-binding-operator.v1.0.0
        version: 1.0.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: service-binding-operator
    provider:
      name: Red Hat
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/openshift/kueue-operator
    name: kueue-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kueue-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kueue.openshift.io/v1",
                "kind": "Kueue",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kueue-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "config": {
                    "integrations": {
                      "frameworks": [
                        "BatchJob"
                      ]
                    }
                  },
                  "managementState": "Managed"
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-09-17T12:13:48Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-kueue-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Kueue
            name: kueues.kueue.openshift.io
            version: v1
        description: Red Hat build of Kueue is a collection of APIs, based on the
          [Kueue](https://kueue.sigs.k8s.io/docs/) open source project, that extends
          Kubernetes to manage access to resources for jobs. Red Hat build of Kueue
          does not replace any existing components in a Kubernetes cluster, but instead
          integrates with the existing Kubernetes API server, scheduler, and cluster
          autoscaler components to determine when a job waits, is admitted to start
          by creating pods, or should be preempted.
        displayName: Red Hat build of Kueue
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kueue-operator
        links:
        - name: Kueue Operator
          url: https://github.com/openshift/kueue-operator
        maintainers:
        - email: aos-node@redhat.com
          name: Node team
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/kueue-operator
        relatedImages:
        - registry.redhat.io/kueue/kueue-rhel9-operator@sha256:43b1aa1c12ccb31905ae7b9f04ac33f4b56f44076a24f708f514e1ee63f929dc
        - registry.redhat.io/kueue/kueue-rhel9@sha256:dcb9dec563ef3178217e00a544ef0408fb25cd4f3fe155a7e6ad6e6f6ab98613
        - registry.redhat.io/kueue/kueue-must-gather-rhel9@sha256:5db9b63e8917bf1f5c32dbdc438d067fd0c6e424b6bbb8dc575ad322d590396e
        - registry.redhat.io/kueue/kueue-operator-bundle@sha256:c39816efcfdf1566636ab39ebdeb6c2c26c6d3a16a050eb2364548a555cb62b6
        version: 1.1.0
      entries:
      - name: kueue-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: kueue-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kueue.openshift.io/v1",
                "kind": "Kueue",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kueue-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "config": {
                    "integrations": {
                      "frameworks": [
                        "BatchJob"
                      ]
                    }
                  },
                  "managementState": "Managed"
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-11-14T19:51:19Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-kueue-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Kueue is a cluster resource for configuration of the Kueue
              operand
            displayName: Kueue
            kind: Kueue
            name: kueues.kueue.openshift.io
            version: v1
        description: Red Hat build of Kueue is a collection of APIs, based on the
          [Kueue](https://kueue.sigs.k8s.io/docs/) open source project, that extends
          Kubernetes to manage access to resources for jobs. Red Hat build of Kueue
          does not replace any existing components in a Kubernetes cluster, but instead
          integrates with the existing Kubernetes API server, scheduler, and cluster
          autoscaler components to determine when a job waits, is admitted to start
          by creating pods, or should be preempted.
        displayName: Red Hat build of Kueue
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kueue-operator
        links:
        - name: Kueue Operator
          url: https://github.com/openshift/kueue-operator
        maintainers:
        - email: aos-node@redhat.com
          name: Node team
        maturity: stable
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/kueue-operator
        relatedImages:
        - registry.redhat.io/kueue/kueue-must-gather-rhel9@sha256:0d6fe9adb309e62104deb675c5f1b72a4e62821991f2f673182a025cbaa795d0
        - registry.redhat.io/kueue/kueue-operator-bundle@sha256:005047a1a84c92358df9736f9661136e185b1b9d4d9a2eeeb322aa6cb61d63a1
        - registry.redhat.io/kueue/kueue-rhel9-operator@sha256:0e99e54d7b740518813788ca79def5a31ecaae9c154d9b243afb681c30cb5b66
        - registry.redhat.io/kueue/kueue-rhel9@sha256:bdf48afa3c62beec7402edddac8803363e793cf74c1c4cf908ae81845296ce3b
        version: 1.2.0
      entries:
      - name: kueue-operator.v1.2.0
        version: 1.2.0
      name: stable-v1.2
    defaultChannel: stable-v1.2
    packageName: kueue-operator
    provider:
      name: Red Hat, Inc
      url: https://github.com/openshift/kueue-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: advanced-cluster-management
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: advanced-cluster-management.v2.14.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "operator.open-cluster-management.io/v1",
            "kind": "MultiClusterHub", "metadata": {"name": "multiclusterhub", "namespace":
            "open-cluster-management"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-10-27T20:24:30Z"
          description: Advanced provisioning and management of OpenShift and Kubernetes
            clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.13.0 <2.14.1'
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1",
            "kind":"MultiClusterHub","metadata":{"name":"multiclusterhub","namespace":"open-cluster-management"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: open-cluster-management
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:b6eb5df09bfae9f9d0bccef736aefbd561127c02a78b00e38f38e4efb3ec04f2
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          repository: https://github.com/open-cluster-management/multiclusterhub-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MulticlusterHub defines the configuration
              for an instance of a multicluster hub, a central point for managing multiple
              Kubernetes-based clusters. The deployment of multicluster hub components
              is determined based on the configuration that is defined in this resource.
            displayName: MultiClusterHub
            kind: MultiClusterHub
            name: multiclusterhubs.operator.open-cluster-management.io
            version: v1
        description: "Red Hat Advanced Cluster Management for Kubernetes provides
          the multicluster hub, a central management console for managing multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the hub to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can set compliance requirements to ensure
          that the clusters maintain the specified security requirements. You can
          also deploy business applications across your clusters.\n\n## How to install\nUse
          of this Red Hat product requires a licensing and subscription agreement.\n\nInstall
          the Red Hat Advanced Cluster Management for Kubernetes operator by following
          instructions presented when you click the `Install` button. After installing
          the operator, create an instance of the `MultiClusterHub` resource to install
          the hub.\n\nNote that if you will be using the hub to manage non-OpenShift
          4.x clusters, you will need to create a Kubernetes `Secret` resource containing
          your OpenShift pull secret and specify this `Secret` in the `MultiClusterHub`
          resource, as described in the install documentation.\n### Special considerations
          for disconnected network environments\nIf you are installing Red Hat Advanced
          Cluster Management for Kubernetes in a disconnected network environment,
          there are some special install and upgrade requirements.\n#### Include multicluster
          engine for Kubernetes in mirrored catalog\nInstalling an OLM operator in
          a disconnected network environment involves the use of a local mirrored
          operator catalog and image registry. Red Hat Advanced Cluster Management
          for Kubernetes requires (and automatically installs) the multicluster engine
          for Kuberenetes operator so this operator package is needed in your local
          mirrored operator catalog in addition to the one for Red Hat Advanced Cluster
          Management for Kubernetes.\n\nif you are using a full mirror of the Red
          Hat operators catalog, no special action is needed when creating the mirror
          catalog.\n\nIf you are using a filtered (rather than full) mirror of the
          OLM catalog, be sure to include both the `advanced-cluster-management` **and**
          `multicluster-engine` packages in your mirrored catalog when creating it.\n####
          Add annotation to MultiClusterHub resource\nIf you are installing or upgrading
          to a Red Hat Advanced Cluster Management for Kubernetes release prior to
          release 2.7, an `mce-subscription-spec` annotation is required in the instance
          of the `MultiClusterHub` resource you create to set up your hub. This annotation
          identifies the catalog source for your local mirrored operator catalog and
          is required when installing releases prior to release 2.7 regardless of
          whether your local mirrored operator catalog is a full mirror or a filtered
          one.\n\nThe `mce-subscription-spec` annotation is not usually needed, and
          thus can usually be omitted, when installing or upgrading to release 2.7
          or a later release. Starting with release 2.7, the Red Hat Advanced Cluster
          Management for Kubernetes operator is able to automatically determine the
          catalog source to use in typical scenarios.\n\nThe following is an example
          of the `mce-subscription-spec` annotation:\n\n```\n apiVersion: operator.open-cluster-management.io/v1\n
          kind: MultiClusterHub\n metadata:\n \tannotations:\n \t\tinstaller.open-cluster-management.io/mce-subscription-spec:
          '{\"source\": \"my-catalog-source\"}'\n spec: {}\n\n```\n\nReplace `my-catalog-source`
          with the name of your catalog source.\n\nIf you are creating the `MultiClusterHub`
          resource using the OperatorHub UI, switch to the YAML view for the resource
          in order to insert the annotation.\n### Where to find more installation
          information\nYou can find additional installation guidance in the [install
          documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/install/installing). "
        displayName: Advanced Cluster Management for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - acm
        - advanced-cluster-management
        - install
        - multiclusterhub
        - rhacm
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:6cc12edafea8f130331797349cc9f1c06853cef5ee0a238d20205894a77aec96
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:cce2e0c3e48140e70a389821f4238e53ea496473d3ccd74b045059bc3cfd2982
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:ac64da0f40dc39078e7cf604293471e20ca627e90c381826f1f10136c21ac1a2
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:17b7618bd0d09665c97a9ad835ea6389ac4d1540f3675f6a34851916fc19b923
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:0bb769131d07651f425b823e759746ea9d9af1e1006d610341f4e49188450f2d
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:0e137637b57c5c77087f3f0cf81d22c2eb9ecfd60ba96c90ff1e363d2650cf84
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:ee59f307e468e2b7b38f7c040898d587d441f8fb3d59cb022ae23e4717739e3f
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:393c385c8d4424539cd95b9fab090f3015e0812a3688beee83c2c515f1235f24
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:91e009061d720b1d1e5a6deafe295fa4dd7d7dd0c6fe17587639a623ca07159a
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:7a5f323bada97dbe0ad204a64f714c0acf37e9d261776a24f0cc7e0122327354
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:39b5feb4dcf91feb124adfb629c14ec729f96860c6c16e8a2c05b6b2348a6b6c
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:97049a14110198594e3ae815748111262359970937bcd6a83d9c98a70bbd134a
        - registry.redhat.io/rhel8/postgresql-16@sha256:776f420f734f9c1d6e0589fc6d9acee8f1c2bfd1f838348360bb9db584920602
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:f84cad07033b005bed36048f3e4bb00a613800cffd3d3892bfb1e3ccea2a1c58
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:b83f150ab2dd851e3662ad01f3057482e5f454e28d04d50ce1c321efa2090f33
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:e53522a9ce0e3adfabdd809125a442b550c11c4c753d9665794c8ff640b86895
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c3d261bd2eb4842c279a0d35c754699a484ebb320617a893195088579a46fec9
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:7ca1b3ffb295e55b4b6d08ffad5d5a982c8e9d8ce7638eb956ea877580a57975
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:c058a4198b256d998f85bd8ee07882f42628748d827bd978d4a70af05d411665
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:1b1f6f85af0910f1acd029f54a608b25d3a2977c3d8b323266391543324305b4
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:afa4337370e8ea6da0e25d62c7197157b85281916a1fff4c881eafaf14a2c3e8
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:c05ba064ebaad51a625361ceecf30b6d4bd28f3c5d9efb279f39c98afc050a75
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:dd4a7678648872ea4294b867cdc7bca0ac063b81eaeac9bf5d4fddcaffb96bac
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:6c369fa856f18ef60d25a57f0588ec5a0bef18d0226b957db5e5d597fa5158f7
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:7f86f9a33460384c60e62813e665b89bb6288aa3a4d56ca09040063d7b02b9bc
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:0684f07fdb2f648182a8410722156decef4ee503cb1eb66274af32d946bd8d80
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:b42323be8ff41fa98332a5b2fa31af73a0da9605ff746122420ac46aa8f4a8d2
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:a89c3f88ab17823607e3c6af022991263b418b38d667507d4c522acd590680b3
        - registry.redhat.io/rhacm2/console-rhel9@sha256:94cfe0cdb4c01ff7ad602bf0ee6af3010e5b748363845d2205070764dcbb2eb2
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:973eb3ca3da32c87ba308928a21fbd25514b2f6a6662300d4928479cb554cff3
        - registry.redhat.io/rhel9/redis-7@sha256:b4f58ad83ab8719a2e102f38ee526546cd1d56428901afc3add45c9a0e2a2f12
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:f6511171c82d52fef18533eee1d6511f3850c5cf4eda2bd9007a7a8642d0a1c8
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:b8f8f931f498855461ff997f73470fd957a5f32719a62c993f07050e75d76bfe
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:5a86ed779e8a9f68f121029ea7fd21c37a4108ab3202b35dbb371a2b0612f215
        - registry.redhat.io/rhacm2/acm-governance-policy-framework-addon-rhel9@sha256:f60071d35949e2e53cb0b8eec84f7d5c1e24bfd5f3165b34707059b61bb98cb0
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:b6eb5df09bfae9f9d0bccef736aefbd561127c02a78b00e38f38e4efb3ec04f2
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:dec26e10f2c5c0da5a3d2be3d22255c08c55c3afcd9c9c34f53b29330f74efcb
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:d31e3e2b0126f94f12f9eb0af37c8bc08ccdeea06b61068a04d711cbfd9e3b99
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:4c09ad98d2cd3a41f5f437ee7023137ca57084430e00fb44e976a7a687dfadf9
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:973f4e668937fa9faee550fdf8451c74354f48756c54471f5f1a63307e4e5a66
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:940c0564ced75b7912d3ffc923a1f6bab9aed0f4a52962f7f894d08937b7d37e
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:bf26f5a794224b5ac6b5a7c7457f345914612610d24e9af563b92eecea614eba
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:3cdc71fc6932406fb44dc0d162826713a515d7b032ddb8fec5582bfa9a9cb937
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:a74270d8ec7d1d64c86e80fd2c67d8dc8bb0a31b30b996de737491e3c7180e46
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:e20ce08100730812c47977fd754c53d3bc47ce13f57c0716b3f6487fba939c8f
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:f930cda4750df9922781fd8fff84b9f4df219679cd2929e58961c9371dc2c5a1
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:2233fe74d4d9cbd226e130b314a546d5473515e0389cd19c25164c6c543aa54a
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:57f28e416e9d84a9d690b6d262a4263d8da060a3254253c68aa7945414f15535
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:467557f453bde3feaa0129f38c52fba00c3b98acddbf8978bf21ef13a9890fab
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c13557b24b0a172deac742cbc4b6dc6b09090170c0c0a4a9c0dd307a00c54661
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:a72ceef5e2f992ef6d593978623be5fb15a10f1a5276a3bdba0364d26aaaa0fa
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:3491ec932d90112e89f3a4cebe5bdd9ed6a7811f116df43bab8bb5f827129361
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:4628b05c002b6186d07f1bd6bd670bc2f65254168532d868282589b1da48e930
        - registry.redhat.io/rhel9/memcached@sha256:42a0c2506b38ce9f5ee744a299cb135781186e628fdf7c09d2d35ba3b6decef8
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:d28520c44b861c75d1de8544be8b3a8659cb5695c0ea0e7b4ea3a9adfaa26748
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:b297b4deda5906897b8d1949ddbabb6fb90224244ff2b6d86139110ac900fd9b
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:f99086a8e828f25d96249048905743ccd5a21f184b21fca62d01650c898a346f
        version: 2.14.1
      entries:
      - name: advanced-cluster-management.v2.14.1
        version: 2.14.1
      - name: advanced-cluster-management.v2.14.0
        version: 2.14.0
      name: release-2.14
    - currentCSV: advanced-cluster-management.v2.15.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "operator.open-cluster-management.io/v1",
            "kind": "MultiClusterHub", "metadata": {"name": "multiclusterhub", "namespace":
            "open-cluster-management"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-12-03T14:52:20Z"
          description: Advanced provisioning and management of OpenShift and Kubernetes
            clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=2.13.0 <2.15.0'
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1",
            "kind":"MultiClusterHub","metadata":{"name":"multiclusterhub","namespace":"open-cluster-management"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: open-cluster-management
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:5740d54261321739e324665725566bed539687d21b4b46b7edb359cce491dadc
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          repository: https://github.com/open-cluster-management/multiclusterhub-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MulticlusterHub defines the configuration
              for an instance of a multicluster hub, a central point for managing multiple
              Kubernetes-based clusters. The deployment of multicluster hub components
              is determined based on the configuration that is defined in this resource.
            displayName: MultiClusterHub
            kind: MultiClusterHub
            name: multiclusterhubs.operator.open-cluster-management.io
            version: v1
        description: "Red Hat Advanced Cluster Management for Kubernetes provides
          the multicluster hub, a central management console for managing multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the hub to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can set compliance requirements to ensure
          that the clusters maintain the specified security requirements. You can
          also deploy business applications across your clusters.\n\n## How to install\nUse
          of this Red Hat product requires a licensing and subscription agreement.\n\nInstall
          the Red Hat Advanced Cluster Management for Kubernetes operator by following
          instructions presented when you click the `Install` button. After installing
          the operator, create an instance of the `MultiClusterHub` resource to install
          the hub.\n\nNote that if you will be using the hub to manage non-OpenShift
          4.x clusters, you will need to create a Kubernetes `Secret` resource containing
          your OpenShift pull secret and specify this `Secret` in the `MultiClusterHub`
          resource, as described in the install documentation.\n### Special considerations
          for disconnected network environments\nIf you are installing Red Hat Advanced
          Cluster Management for Kubernetes in a disconnected network environment,
          there are some special install and upgrade requirements.\n#### Include multicluster
          engine for Kubernetes in mirrored catalog\nInstalling an OLM operator in
          a disconnected network environment involves the use of a local mirrored
          operator catalog and image registry. Red Hat Advanced Cluster Management
          for Kubernetes requires (and automatically installs) the multicluster engine
          for Kuberenetes operator so this operator package is needed in your local
          mirrored operator catalog in addition to the one for Red Hat Advanced Cluster
          Management for Kubernetes.\n\nif you are using a full mirror of the Red
          Hat operators catalog, no special action is needed when creating the mirror
          catalog.\n\nIf you are using a filtered (rather than full) mirror of the
          OLM catalog, be sure to include both the `advanced-cluster-management` **and**
          `multicluster-engine` packages in your mirrored catalog when creating it.\n####
          Add annotation to MultiClusterHub resource\nIf you are installing or upgrading
          to a Red Hat Advanced Cluster Management for Kubernetes release prior to
          release 2.7, an `mce-subscription-spec` annotation is required in the instance
          of the `MultiClusterHub` resource you create to set up your hub. This annotation
          identifies the catalog source for your local mirrored operator catalog and
          is required when installing releases prior to release 2.7 regardless of
          whether your local mirrored operator catalog is a full mirror or a filtered
          one.\n\nThe `mce-subscription-spec` annotation is not usually needed, and
          thus can usually be omitted, when installing or upgrading to release 2.7
          or a later release. Starting with release 2.7, the Red Hat Advanced Cluster
          Management for Kubernetes operator is able to automatically determine the
          catalog source to use in typical scenarios.\n\nThe following is an example
          of the `mce-subscription-spec` annotation:\n\n```\n apiVersion: operator.open-cluster-management.io/v1\n
          kind: MultiClusterHub\n metadata:\n \tannotations:\n \t\tinstaller.open-cluster-management.io/mce-subscription-spec:
          '{\"source\": \"my-catalog-source\"}'\n spec: {}\n\n```\n\nReplace `my-catalog-source`
          with the name of your catalog source.\n\nIf you are creating the `MultiClusterHub`
          resource using the OperatorHub UI, switch to the YAML view for the resource
          in order to insert the annotation.\n### Where to find more installation
          information\nYou can find additional installation guidance in the [install
          documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.12/html/install/installing). "
        displayName: Advanced Cluster Management for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - acm
        - advanced-cluster-management
        - install
        - multiclusterhub
        - rhacm
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.12/
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c5bc42e57f4bae70f1e0b2fd1de345d0f1ef7e1e41fa6cd790198bcd2023bc1a
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:2c8f89fa9958f0422c6ce6a1acf6e6343967c78d0966937fca19e27e52e7a428
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:90b919807421554282a06cbb5d2e4b4b376b686a884e62566fbf257351f5a31f
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:78c00553182db4b8d923c33afcf64617499cb5c701314a4c977673613b8fa5a6
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:b70ed3f5e36043f6050d6d71455acbf0ac9f6968a26579abbe20e47b71e91203
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:1054b185a0118a9752c18ee6036c486f84d824366ed879d2ab4594c542219099
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:e25d8d0deab4139ba82e64666074e51b4d9c768f4e5e377483bf1d787613d33c
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:833837b3f89a4c9f8925e32c7550418169a839ce14b12915d85de6af095d5847
        - registry.redhat.io/rhem/flightctl-userinfo-proxy-rhel9@sha256:357ce9e08c63c1f91512dcf01fc1073d3d44222ac1d97306709467282e4db9fa
        - registry.redhat.io/rhel9/memcached@sha256:14568dc13790fa3d8827e3ae7ef7bae37096ef32b8a158310b3e489bca5a0ab3
        - registry.redhat.io/rhacm2/console-rhel9@sha256:f96a68657bd4eef8c0fb1c9d86203e73fecfea62b4f87425caa1e5f65173c0b7
        - registry.redhat.io/rhacm2/mtv-integrations-rhel9@sha256:4508924c255a6f352c3868b281c7e8eb19a6d857e32fa5f59d925875384549e7
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:296062e27abf3c960f042757bcdcca3169d9e318627d2fcd94ff6fcfa72ae2f5
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:5740d54261321739e324665725566bed539687d21b4b46b7edb359cce491dadc
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:4228de3d4a7d2240e13cfbb9132f75792a9c4b86e494fb3bb0ed53f6df267573
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:c0fc3b0eeda8340f8ca684c215333c50d7896e861b6f899d4c93317c90f21d65
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:de5f2b08ea7f938bdb8764bec1401d6ee55298754f91e912e14fc2faa0bf0796
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:f22a55f1a6c720d83532a5af45e7aeb1593163f0e467290d2ffadbf4bb8b10cc
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:029a326a842d7645fc944b177234053e416517747ac6a6753675555adf2af328
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:265e3de1cb6b823d2165a109dfb2fae4c7647ae543c920fe66d566698d851360
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:4512e39b757445f9d3d523f121319620208bf81642f39006fe491cb37028a429
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:2b2a285276dcbce1863b2bf535042d3a4cd394f11cf73adc451226e53af54ad9
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:6b57bada2bce96583d5f80ae4bbcf4cdb54fcd1a214e75433e56d626e4a7f0bf
        - registry.redhat.io/rhacm2/acm-governance-policy-framework-addon-rhel9@sha256:a88b2a9ec0b88483294f01848cd35548d82607c8b76ec4f24ad87271b5d7d56e
        - registry.redhat.io/rhem/flightctl-db-setup-rhel9@sha256:2aab6e480a201e202dd7f670caa27838db2c219e08c2726cbea5e7885091d639
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:5bf5ff559fd9f0c06995237cc235d0939b44c023612e0179a9bc8de99cf185e5
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:0ef909e3fa2bd636c2c727bb86ae86904af4eafa77ef533359c52727567e0c4e
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:490ad6fd2150a463cc7783342ad8ffdd5753af9c76cf27dd3266364439e2b6ab
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:ad124178d2f0d7e4184a1c18445a916e289629b382d0ed9fceb76ab8eeaeb6fd
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:435b0f0df603380649b287ec8e0be94905501badbbaa24ae99450fb9c3f20378
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:a4bd68cf7b12b5f9b133983c988bd668f1dcddfd090b9912ee3d069d2f9d7517
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:91f98eefba17fb0766eb3d6b94e7cd276a1ee5baf6c39c153929b4704b3c3b91
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:79c843df370a7ff57d1f9fbba162c252729b7de331d88fb1679b54544cc7caac
        - registry.redhat.io/rhel9/redis-7@sha256:bbce339dd580334f0e1019a31d97b053796bd16bdee79745a3102a22ce2983b0
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:22a6b529dbf9aa27d15f3260bcc6acc1300bb6ac9ad60f47fcc115f24a5b832b
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:9d486e0652b865d109c8fd7592ae96b43c1bfcda6ce154c11d6b91fbc15eb293
        - registry.redhat.io/rhacm2/multicluster-role-assignment-rhel9@sha256:203cc1df7f09512c1578867722c61fcb90518c19d612e9a89b7b626db2805ea9
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        - registry.redhat.io/rhem/flightctl-alertmanager-proxy-rhel9@sha256:1d59b2cdbc4824ae2a8c1b32e7beae87331b410bb1f24c5216efd2629dd08a86
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:b541e86af7b6b458c58755f092147868164c2cbf0b239239d8331876fb6996b9
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:fa26debe735df99a87997ef107ea56b7edf94168b98bd02bfe146f593c3e58c9
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:e1bc46429dc2da167e27400cce84af2082be150f577b37f98912371b6d684bbc
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:4f78bd465a4892788b85f2817c4e950d98fede462a2cc6725546bedc68683281
        - registry.redhat.io/rhem/flightctl-alert-exporter-rhel9@sha256:2a1f1cf703782cc0cb07a8c6f950eadf209f47baf1186a2045210eda6b6d8246
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:3ea6921965c3f90b02a8e71287159f0771cc9fb5bbd37ab8c594df235e79d9fc
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:1c73ab166a99713bb9a7e17d347150213399740849524dc0a9471804c1a80d61
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:7a050603905f8cd0a5545b87475f077ff5639cff3c1c72eba0e6c9adfa1136e2
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:eac5ade5fc49b724ef33c05c81bf960f7bec3f52faa2e44db249d05bcc45c280
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:1621430aed061d140280a41bca527d616b4801f6dec9684792e7372a75fd778e
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:5f1fc557bef7e06ad285e94e20e4c1bb4f2b8b31c6239d195fd93ff02a530f9c
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c1a264cc0484c6f58dd9915cb6575605ca3d6b1c2dc20a4841fc7afd906a8833
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:e27e5adc9169479aacc701677c740bb21c12a81d0df4a55442605d3dceffa91b
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:3329ee154252a8aa0f6208a59d21fd93198c01b42a1022a7310796ece8eeed0d
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:cbd55d9bfd2056b3916581e51e547225b5b007c266c670844fc0881ed2cc67de
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:34e66dd3f7dbc4760c8c6d3c9feae7bed6ff3357c8ee5a1d16e058bd496f7188
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:259bda37cfa2785051894838cf660a22564a36739eed7f25952703bf193c27fd
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:d589008f69fdc4738b2384d1098de2beeb7b7d2ee3dd64309d4f10308ab40afa
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:0e09bf9106e6937212b83c989657f8984547c81b272990cfe6b71158b8966a03
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:19630eb9d520219cb515c2da23090efba4a15f3bdc6539af695c5b546c35d61e
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:ad8ee7504e9d69edace4de3b119cdde99885677bebdbf0a6c11d3e62d92d1aec
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e2681bce57dc9c15701f5591532c2dfe8f19778606661339553a28dc003dbca5
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:a7b322fe65406009776e894d98055e848abe38f3c6e4c5ec7abb40321c066ff6
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:d8645f5266b1cadb7fc8139ae1c8e77732cbbe0642f52547df536e9fbcecc03a
        - registry.redhat.io/rhel8/postgresql-16@sha256:d64b9dff3ebf4a277080adf043d4ad56efc7b14a646f0ea72b911f58e28d50cf
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:e30dc28359ddb8fe2ddaa55e43e69cafed9ffe3a64fecebcb03a850a64fe2c59
        - registry.redhat.io/ubi9/ubi-minimal@sha256:34880b64c07f28f64d95737f82f891516de9a3b43583f39970f7bf8e4cfa48b7
        version: 2.15.0
      entries:
      - name: advanced-cluster-management.v2.15.0
        version: 2.15.0
      name: release-2.15
    defaultChannel: release-2.15
    packageName: advanced-cluster-management
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-kafka-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kafka-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/kafka-operator@sha256:0070de045fb7c4e5962075c4fd259e600d66c64fced1172c0fff0a4f8c2d677f
          description: Stackable Operator for Apache Kafka
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/kafka-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for KafkaClusterSpec via `CustomResource`
            displayName: kafkaclusters.kafka.stackable.tech
            kind: KafkaCluster
            name: kafkaclusters.kafka.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - registry.connect.redhat.com/stackable/stackable-apache-kafka-operator@sha256:59b651c4353f3908af5feee8f44f66385b20caab983a477087c434244f4f9234
        - quay.io/stackable/kafka-operator@sha256:0070de045fb7c4e5962075c4fd259e600d66c64fced1172c0fff0a4f8c2d677f
        version: 25.11.0
      entries:
      - name: kafka-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-kafka-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: SusQL Operator Contributors
      provider-url: https://github.com/sustainable-computing-io/susql-operator
    name: susql-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: susql-operator.v0.0.34
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "susql.ibm.com/v1",
                "kind": "LabelGroup",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "susql-operator",
                    "app.kubernetes.io/instance": "labelgroup-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "susql-operator",
                    "app.kubernetes.io/part-of": "susql-operator"
                  },
                  "name": "labelgroup-sample"
                },
                "spec": {
                  "labels": [
                    "labelgroup-sample-1",
                    "labelgroup-sample-2"
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: quay.io/sustainable_computing_io/susql_operator:0.0.34
          createdAt: "2025-07-10T01:20:37Z"
          description: 'Aggregates energy and CO2 emission data for pods tagged with
            SusQL labels '
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/sustainable-computing-io/susql-operator
          support: https://github.com/sustainable-computing-io/susql-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: LabelGroup is the Schema for the LabelGroups API
            displayName: Label Group
            kind: LabelGroup
            name: labelgroups.susql.ibm.com
            version: v1
        description: |-
          ### About this Operator

          SusQL is a Kubernetes operator that aggregates energy and estimated
          carbon dioxide emission data for pods tagged with SusQL specific
          labels. The energy measurements are taken from Kepler which should
          be deployed in the cluster before using SusQL.

          ### Prerequisites

          1. Deployment of [Kepler](https://sustainable-computing.io/) on the cluster
          2. Ensure that [User Project Monitoring](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)
          is enabled to monitor energy consumed in user projects.
          3. Creation of a SusQL Service Monitor:
                `oc apply -n <NAMESPACE> -f https://raw.githubusercontent.com/sustainable-computing-io/susql-operator/main/hack/susql-servicemonitor.yaml`

          ### API Backward Compatibility

          Until Operator supports **seamless upgrades**, a new version of the operator may
          introduce a change that is **NOT** backwards compatible with the previous version.
          Thus, to upgrade the operator, uninstall the already installed version completely
          (including CRDs) and install the new version. For example to upgrade from 0.1.0
          to 0.2.0, you must first uninstall 0.1.0.

          ### LabelGroup spec Example

          ```
          apiVersion: susql.ibm.com/v1
          kind: LabelGroup
          metadata:
            name: labelgroup-name
            namespace: susql-operator
          spec:
            labels:
              - my-label-1
              - my-label-2
          ```

          ### Documentation

          Documentation can be found at [SusQL Operator](https://github.com/sustainable-computing-io/susql-operator#readme).

          ### Getting help

          If you encounter any issues while using the SusQL Operator, you can create an
          [issue](https://github.com/sustainable-computing-io/susql-operator/issues)
          on our GitHub repo for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by raising [issues](https://github.com/sustainable-computing-io/susql-operator/issues)
          related to susql-operator.

          ### License
          susql-operator is licensed under the Apache 2.0 license
        displayName: SusQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - aggregation
        - sustainability
        - energy
        - kepler
        - susql
        - carbon dioxide (CO2) emissions
        - green computing
        links:
        - name: SusQL Operator
          url: https://github.com/sustainable-computing-io/susql-operator
        - name: Sustainable Computing
          url: https://github.com/sustainable-computing-io
        maintainers:
        - email: trent@jp.ibm.com
          name: Scott Trent
        - email: mohammed.munir.abdi@ibm.com
          name: Mohammed Abdi
        maturity: alpha
        provider:
          name: SusQL Operator Contributors
          url: https://github.com/sustainable-computing-io/susql-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/susql-operator@sha256:aa0934d55377b2d32588794150f80f7e9ac198b63f6cba7aeb42d165899e56d6
        - quay.io/sustainable_computing_io/susql_operator:0.0.34
        version: 0.0.34
      entries:
      - name: susql-operator.v0.0.34
        version: 0.0.34
      name: alpha
    defaultChannel: alpha
    packageName: susql-operator
    provider:
      name: SusQL Operator Contributors
      url: https://github.com/sustainable-computing-io/susql-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hazelcast, Inc
      provider-url: ""
    name: hazelcast-platform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hazelcast-platform-operator.v5.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "cache-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "CronHotBackup",
                "metadata": {
                  "name": "cronhotbackup-sample"
                },
                "spec": {
                  "hotBackupTemplate": {
                    "metadata": {
                      "labels": {
                        "cron-hotbackup": "true"
                      }
                    },
                    "spec": {
                      "hazelcastResourceName": "hazelcast"
                    }
                  },
                  "schedule": "*/30 * * * *"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast"
                },
                "spec": {
                  "clusterSize": 3,
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast-sample"
                },
                "spec": {
                  "clusterSize": 3,
                  "jet": {
                    "bucketConfig": {
                      "bucketURI": "gs://operator-user-code/jetJobs",
                      "secretName": "br-secret-gcp"
                    },
                    "enabled": true,
                    "resourceUploadEnabled": true
                  },
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HazelcastEndpoint",
                "metadata": {
                  "name": "hazelcastendpoint-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "port": 5701,
                  "type": "Discovery"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HotBackup",
                "metadata": {
                  "name": "hot-backup"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-longrun"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-longrun-2.0.0.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-1.0.2.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJobSnapshot",
                "metadata": {
                  "name": "jetjobsnapshot-sample"
                },
                "spec": {
                  "cancelJob": false,
                  "jetJobResourceName": "jet-job"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ManagementCenter",
                "metadata": {
                  "name": "managementcenter"
                },
                "spec": {
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "hazelcastClusters": [
                    {
                      "address": "hazelcast",
                      "name": "dev"
                    }
                  ],
                  "licenseKeySecretName": "hazelcast-license-key",
                  "persistence": {
                    "enabled": true,
                    "size": "10Gi"
                  },
                  "repository": "hazelcast/management-center"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Map",
                "metadata": {
                  "name": "map"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "MultiMap",
                "metadata": {
                  "name": "multimap-sample"
                },
                "spec": {
                  "backupCount": 3,
                  "binary": true,
                  "collectionType": "LIST",
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Queue",
                "metadata": {
                  "name": "queue-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ReplicatedMap",
                "metadata": {
                  "name": "replicatedmap-sample"
                },
                "spec": {
                  "asyncFillup": true,
                  "hazelcastResourceName": "hazelcast",
                  "inMemoryFormat": "OBJECT"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Topic",
                "metadata": {
                  "name": "topic-sample"
                },
                "spec": {
                  "globalOrderingEnabled": true,
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "UserCodeNamespace",
                "metadata": {
                  "name": "ucn-sample"
                },
                "spec": {
                  "bucketConfig": {
                    "bucketURI": "gs://operator-user-code/userCodeNamespace",
                    "secretName": "br-secret-gcp"
                  },
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanReplication",
                "metadata": {
                  "name": "wanreplication-sample"
                },
                "spec": {
                  "endpoints": "35.192.33.252",
                  "resources": [
                    {
                      "kind": "Map",
                      "name": "map-sample"
                    },
                    {
                      "kind": "Hazelcast",
                      "name": "hz-sample"
                    }
                  ],
                  "targetClusterName": "dev"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanSync",
                "metadata": {
                  "name": "wansync-sample"
                },
                "spec": {
                  "wanReplicationResourceName": "wan-replication-sample"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: docker.io/hazelcast/hazelcast-platform-operator@sha256:99005afda5c71ceeac200928dfed4ea35480f871053101e3aeaa44005e3fda14
          createdAt: "2024-07-29T15:35:56Z"
          description: '[DEPRECATED] Use the certified Hazelcast Operator instead'
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/hazelcast/hazelcast-platform-operator/
          support: Hazelcast, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.hazelcast.com
            version: v1alpha1
          - description: CronHotBackup is the Schema for the cronhotbackups API
            displayName: Cron Hot Backup
            kind: CronHotBackup
            name: cronhotbackups.hazelcast.com
            version: v1alpha1
          - description: HazelcastEndpoint is the Schema for the hazelcastendpoints
              API
            displayName: Hazelcast Endpoint
            kind: HazelcastEndpoint
            name: hazelcastendpoints.hazelcast.com
            version: v1alpha1
          - description: Hazelcast is the Schema for the hazelcasts API
            displayName: Hazelcast
            kind: Hazelcast
            name: hazelcasts.hazelcast.com
            version: v1alpha1
          - description: HotBackup is the Schema for the hot backup API
            displayName: Hot Backup
            kind: HotBackup
            name: hotbackups.hazelcast.com
            version: v1alpha1
          - description: JetJob is the Schema for the jetjobs API
            displayName: Jet Job
            kind: JetJob
            name: jetjobs.hazelcast.com
            version: v1alpha1
          - description: JetJobSnapshot is the Schema for the jetjobsnapshots API
            displayName: Jet Job Snapshot
            kind: JetJobSnapshot
            name: jetjobsnapshots.hazelcast.com
            version: v1alpha1
          - description: ManagementCenter is the Schema for the managementcenters
              API
            displayName: Management Center
            kind: ManagementCenter
            name: managementcenters.hazelcast.com
            version: v1alpha1
          - description: Map is the Schema for the maps API
            displayName: Map
            kind: Map
            name: maps.hazelcast.com
            version: v1alpha1
          - description: MultiMap is the Schema for the multimaps API
            displayName: Multi Map
            kind: MultiMap
            name: multimaps.hazelcast.com
            version: v1alpha1
          - description: Queue is the Schema for the queues API
            displayName: Queue
            kind: Queue
            name: queues.hazelcast.com
            version: v1alpha1
          - description: ReplicatedMap is the Schema for the replicatedmaps API
            displayName: Replicated Map
            kind: ReplicatedMap
            name: replicatedmaps.hazelcast.com
            version: v1alpha1
          - description: Topic is the Schema for the topics API
            displayName: Topic
            kind: Topic
            name: topics.hazelcast.com
            version: v1alpha1
          - description: UserCodeNamespace is the Schema for the usercodenamespaces
              API
            displayName: User Code Namespace
            kind: UserCodeNamespace
            name: usercodenamespaces.hazelcast.com
            version: v1alpha1
          - description: WanReplication is the Schema for the wanreplications API
            displayName: Wan Replication
            kind: WanReplication
            name: wanreplications.hazelcast.com
            version: v1alpha1
          - description: WanSync is the Schema for the wansyncs API
            displayName: Wan Sync
            kind: WanSync
            name: wansyncs.hazelcast.com
            version: v1alpha1
        description: |
          ## Deprecated
          Use the certified Hazelcast Operator instead.
          # Hazelcast Platform Operator #

          Easily deploy Hazelcast clusters and Management Center into Kubernetes environments and manage their lifecycles.

          ## Before You Start

          If you are planning to create Hazelcast Platform Enterprise clusters, you need to [create a secret](https://docs.hazelcast.com/operator/latest/get-started#step-2-start-the-hazelcast-cluster) for the license. You can request a trial license key from [here](https://trialrequest.hazelcast.com).

          For Hazelcast Platform clusters, you can simply continue.

          ## Documentation

          1. [Get started](https://docs.hazelcast.com/operator/latest/get-started) with the Operator
          2. [Connect to the cluster from outside Kubernetes](https://guides.hazelcast.org/hazelcast-platform-operator-expose-externally)
          3. [Restore a Cluster from Cloud Storage with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-external-backup-restore)
          4. [Replicate Data between Two Hazelcast Clusters with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-wan-replication)

          ## Features

          Hazelcast Platform Operator supports the features below:

          * Custom resource for Hazelcast Platform (Enterprise) and Management Center
          * Observe status of Hazelcast clusters and Management Center instances
          * High Availability Mode configuration to create clusters that are resilient to node and zone failures
          * Support for TLS connections between members using self-signed certificates
          * Scale up and down Hazelcast clusters
          * Expose Hazelcast cluster to external clients ([Smart & Unisocket](https://docs.hazelcast.com/hazelcast/latest/clients/java#java-client-operation-modes))
          * Backup Hazelcast persistence data to cloud storage with the possibility of scheduling it and restoring the data accordingly
          * WAN Replication feature when you need to synchronize multiple Hazelcast clusters, which are connected by WANs
          * Full and Delta WAN Sync support
          * Tiered Storage support for Hazelcast and Map CRs
          * CP Subsystem configuration support for Hazelcast CR
          * User Code Deployment feature, which allows you to deploy custom and domain classes from cloud storages and URLs to Hazelcast members
          * The User Code Namespaces feature allows you to deploy custom and domain classes at runtime without a members restart
          * Support the configuration of advanced networking options
          * Support Multi-namespace configuration
          * ExecutorService and EntryProcessor support
          * Support several data structures like Map, Topic, MultiMap, ReplicatedMap, Queue and Cache which can be created dynamically via specific Custom Resources
          * MapStore, Near Cache and off-heap memory (HD memory and native memory) support for the Map CR
          * Native Memory support for the Cache CR
          * Support Jet configuration and Jet Job submission using the JetJob CR
          * Support for exporting the snapshots of JetJob CRs using JetJobSnapshot CR
          * Support for custom configurations using ConfigMap
        displayName: '[DEPRECATED] Hazelcast Platform Operator'
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hazelcast
        - keyvalue
        - in-memory
        - database
        - caching
        links:
        - name: Documentation
          url: https://docs.hazelcast.com/operator/latest/
        - name: Source Code
          url: https://github.com/hazelcast/hazelcast-platform-operator
        maintainers:
        - email: cloudnative@hazelcast.com
          name: Hazelcast Cloud Native Team
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Hazelcast, Inc
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hazelcast-platform-operator@sha256:1209876fc9103eb2d69c34e97e4e2e0b384a9a778ae7e6a53222b8552fbf2f26
        - docker.io/hazelcast/hazelcast-platform-operator@sha256:99005afda5c71ceeac200928dfed4ea35480f871053101e3aeaa44005e3fda14
        version: 5.13.0
      entries:
      - name: hazelcast-platform-operator.v5.13.0
        version: 5.13.0
      - name: hazelcast-platform-operator.v5.12.0
        version: 5.12.0
      - name: hazelcast-platform-operator.v5.11.0
        version: 5.11.0
      - name: hazelcast-platform-operator.v5.10.0
        version: 5.10.0
      - name: hazelcast-platform-operator.v5.9.0
        version: 5.9.0
      - name: hazelcast-platform-operator.v5.8.0
        version: 5.8.0
      - name: hazelcast-platform-operator.v5.7.0
        version: 5.7.0
      - name: hazelcast-platform-operator.v5.6.0
        version: 5.6.0
      - name: hazelcast-platform-operator.v5.5.0
        version: 5.5.0
      - name: hazelcast-platform-operator.v5.4.0
        version: 5.4.0
      - name: hazelcast-platform-operator.v5.3.0
        version: 5.3.0
      - name: hazelcast-platform-operator.v5.2.0
        version: 5.2.0
      - name: hazelcast-platform-operator.v5.1.0
        version: 5.1.0
      - name: hazelcast-platform-operator.v5.0.0
        version: 5.0.0
      name: alpha
    defaultChannel: alpha
    packageName: hazelcast-platform-operator
    provider:
      name: Hazelcast, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com/
    name: varnish-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: varnish-operator.v0.27.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "caching.ibm.com/v1alpha1",
                "kind": "VarnishCluster",
                "metadata": {
                  "name": "varnishcluster-sample"
                },
                "spec": {
                  "backend": {
                    "port": "web",
                    "selector": {
                      "app": "nginx"
                    }
                  },
                  "replicas": 1,
                  "service": {
                    "port": 80
                  },
                  "varnish": {
                    "args": [
                      "-p",
                      "default_ttl=3600",
                      "-p",
                      "default_grace=3600"
                    ]
                  },
                  "vcl": {
                    "configMapName": "vcl-files",
                    "entrypointFileName": "entrypoint.vcl"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking
          certified: "false"
          containerImage: ibmcom/varnish-operator:0.27.2
          createdAt: 2021-02-15T11:15:31+0000
          description: Run and manage Varnish clusters on Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/IBM/varnish-operator
          support: https://ibm.github.io/varnish-operator/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VarnishCluster is the Schema for the varnishclusters API
            displayName: Varnish Cluster
            kind: VarnishCluster
            name: varnishclusters.caching.ibm.com
            version: v1alpha1
        description: |
          Run and manage Varnish clusters on Kubernetes

          The operator manages the whole lifecycle of the cluster: creating, deleting and keeping the cluster configuration up to date.

          The operator is responsible for building the VCL configuration using templates defined by the users and keeping the configuration up to date when relevant events occur (backend pod failure, scaling of the deployment, VCL configuration change).

          Example of a simple `VarnishCluster`:

          ```yaml
          apiVersion: caching.ibm.com/v1alpha1
          kind: VarnishCluster
          metadata:
            name: varnishcluster-sample
            namespace: varnish-ns
          spec:
            vcl:
              configMapName: vcl-files
              entrypointFileName: entrypoint.vcl
            replicas: 3
            backend:
              selector:
                app: nginx
            service:
              port: 80
          ```

          Full documentation can be found [here](https://ibm.github.io/varnish-operator/)
        displayName: Varnish Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - varnish
        - cache
        links:
        - name: Varnish Operator Docs
          url: https://ibm.github.io/varnish-operator
        - name: Varnish Operator Source Code
          url: https://github.com/IBM/varnish-operator
        maintainers:
        - email: tomash.sidei@ibm.com
          name: Tomash Sidei
        - email: cingram@us.ibm.com
          name: Craig Ingram
        maturity: alpha
        provider:
          name: IBM
          url: https://www.ibm.com/
        relatedImages:
        - ibmcom/varnish-operator:0.27.2
        - quay.io/openshift-community-operators/varnish-operator@sha256:46de72c5abad80cef3d6426be967131c51c2c15029a6a38744975578c805a44e
        version: 0.27.2
      entries:
      - name: varnish-operator.v0.27.2
        version: 0.27.2
      name: alpha
    defaultChannel: alpha
    packageName: varnish-operator
    provider:
      name: IBM
      url: https://www.ibm.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: clusterresourceoverride
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clusterresourceoverride-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.autoscaling.openshift.io/v1",
                "kind": "ClusterResourceOverride",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "podResourceOverride": {
                    "spec": {
                      "memoryRequestToLimitPercent": 50,
                      "cpuRequestToLimitPercent": 25,
                      "limitCPUToMemoryPercent": 200
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certifiedLevel: Primed
          containerImage: registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9-operator@sha256:549a0aa3c79b04c5443f5c75d41d6b2af8cfb4bc1efd90268760f944ffc6b215
          createdAt: 2019/11/15
          description: An operator to manage the OpenShift ClusterResourceOverride
            Mutating Admission Webhook Server
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          healthIndex: B
          olm.skipRange: '>=4.3.0 <4.20.0-202512081147'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/cluster-resource-override-admission-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an instance of ClusterResourceOverride Admission
              Webhook
            displayName: ClusterResourceOverride
            kind: ClusterResourceOverride
            name: clusterresourceoverrides.operator.autoscaling.openshift.io
            version: v1
        description: "ClusterResourceOverride\n==============\n\nContainers can specify
          compute resource requests and limits. Requests are used for scheduling your
          container and provide a minimum service guarantee. Limits constrain the
          amount of compute resource that may be consumed on your node.\n\nThe scheduler
          attempts to optimize the compute resource use across all nodes in your cluster.
          It places pods onto specific nodes, taking the pods' compute resource requests
          and nodes' available capacity into consideration.\n\nRequests and limits
          enable administrators to allow and manage the overcommitment of resources
          on a node, which may be desirable in development environments where a trade
          off of guaranteed performance for capacity is acceptable.\n\n### Requests
          and Limits\n\nFor each compute resource, a container may specify a resource
          request and limit. Scheduling decisions are made based on the request to
          ensure that a node has enough capacity available to meet the requested value.
          If a container specifies limits, but omits requests, the requests are defaulted
          to the limits. A container is not able to exceed the specified limit on
          the node.\n\nThe enforcement of limits is dependent upon the compute resource
          type. If a container makes no request or limit, the container is scheduled
          to a node with no resource guarantees. In practice, the container is able
          to consume as much of the specified resource as is available with the lowest
          local priority. In low resource situations, containers that specify no resource
          requests are given the lowest quality of service.\n\n### Compute Resources\n\nThe
          node-enforced behavior for compute resources is specific to the resource
          type.\n\n#### CPU\n\nA container is guaranteed the amount of CPU it requests
          and is additionally able to consume excess CPU available on the node, up
          to any limit specified by the container. If multiple containers are attempting
          to use excess CPU, CPU time is distributed based on the amount of CPU requested
          by each container.\n\nFor example, if one container requested 500m of CPU
          time and another container requested 250m of CPU time, then any extra CPU
          time available on the node is distributed among the containers in a 2:1
          ratio. If a container specified a limit, it will be throttled not to use
          more CPU than the specified limit.\n\nCPU requests are enforced using the
          CFS shares support in the Linux kernel. By default, CPU limits are enforced
          using the CFS quota support in the Linux kernel over a 100ms measuring interval,
          though this can be disabled.\n\n#### Memory\n\nA container is guaranteed
          the amount of memory it requests. A container may use more memory than requested,
          but once it exceeds its requested amount, it could be killed in a low memory
          situation on the node.\n\nIf a container uses less memory than requested,
          it will not be killed unless system tasks or daemons need more memory than
          was accounted for in the node’s resource reservation. If a container specifies
          a limit on memory, it is immediately killed if it exceeds the limit amount.\n\n###
          Configuring the Cluster for Overcommitment\n\nScheduling is based on resources
          requested, while quota and hard limits refer to resource limits, which can
          be set higher than requested resources. The difference between request and
          limit determines the level of overcommit; for instance, if a container is
          given a memory request of 1Gi and a memory limit of 2Gi, it is scheduled
          based on the 1Gi request being available on the node, but could use up to
          2Gi; so it is 200% overcommitted. If OpenShift Container Platform administrators
          would like to control the level of overcommit and manage container density
          on nodes, ClusterResourceOverride Admission Webhook can be configured to
          override the ratio between request and limit set on developer containers.
          In conjunction with a per-project LimitRange specifying limits and defaults,
          this adjusts the container limit and request to achieve the desired level
          of overcommit.\n\nThis requires creating a custom resource of `ClusterResourceOverride`
          type as in the following example:\n\n    \n    - apiVersion: operator.autoscaling.openshift.io/v1\n
          \   - kind: ClusterResourceOverride\n    - metadata:\n    -   name: cluster\n
          \   - spec:\n    -   podResourceOverride:\n    -     spec:\n    -       memoryRequestToLimitPercent:
          25\n    -       cpuRequestToLimitPercent: 25\n    -       limitCPUToMemoryPercent:
          200\n    \n **memoryRequestToLimitPercent**: (optional, 1-100) If a container
          memory limit has been specified or defaulted, the memory request is overridden
          to this percentage of the limit.\n\n **cpuRequestToLimitPercent**: (optional,
          1-100) If a container CPU limit has been specified or defaulted, the CPU
          request is overridden to this percentage of the limit.\n\n **limitCPUToMemoryPercent**:
          (optional, positive integer) If a container memory limit has been specified
          or defaulted, the CPU limit is overridden to a percentage of the memory
          limit, with a 100 percentage scaling 1Gi of RAM to equal 1 CPU core. This
          is processed prior to overriding CPU request (if configured).\n\n Note that
          these overrides have no effect if no limits have been set on containers.
          [Create a LimitRange object] (https://docs.openshift.com/container-platform/3.3/admin_guide/limits.html#admin-guide-limits)
          with default limits (per individual project, or in the [project template](https://docs.openshift.com/container-platform/3.3/admin_guide/managing_projects.html#modifying-the-template-for-new-projects))
          in order to ensure that the overrides apply.\n\nWhen configured, overrides
          can be enabled per-project by applying the following label.\n    ```\n    clusterresourceoverrides.admission.autoscaling.openshift.io/enabled:
          \"true\"\n    ```\n\n"
        displayName: ClusterResourceOverride Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - deschedule
        - scale
        - binpack
        - efficiency
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-operator-bundle@sha256:c5f8be89116c08822005cd5026a7fa5b9c6ccf706a076ff6b0a3bd3c1991102c
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9-operator@sha256:549a0aa3c79b04c5443f5c75d41d6b2af8cfb4bc1efd90268760f944ffc6b215
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9@sha256:688729db8a70fa8e3a37a1a00f62dad124b6b6f9c90e46503873bbf40a066225
        version: 4.20.0-202512081147
      entries:
      - name: clusterresourceoverride-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: clusterresourceoverride-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: clusterresourceoverride-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: clusterresourceoverride-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: clusterresourceoverride-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: clusterresourceoverride-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: clusterresourceoverride-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: clusterresourceoverride
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: sriov-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sriov-network-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovIBNetwork",
                "metadata": {
                  "name": "example-sriovibnetwork",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"host-local\",\n  \"subnet\": \"10.56.217.0/24\",\n  \"rangeStart\": \"10.56.217.171\",\n  \"rangeEnd\": \"10.56.217.181\",\n  \"routes\": [{\n    \"dst\": \"0.0.0.0/0\"\n  }],\n  \"gateway\": \"10.56.217.1\"\n}\n",
                  "linkState": "auto",
                  "networkNamespace": "default",
                  "resourceName": "mellanoxnics"
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetwork",
                "metadata": {
                  "name": "example-sriovnetwork",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"host-local\",\n  \"subnet\": \"10.56.217.0/24\",\n  \"rangeStart\": \"10.56.217.171\",\n  \"rangeEnd\": \"10.56.217.181\",\n  \"routes\": [{\n    \"dst\": \"0.0.0.0/0\"\n  }],\n  \"gateway\": \"10.56.217.1\"\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "intelnics",
                  "spoofChk": "on",
                  "trust": "off",
                  "vlan": 0
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetworkNodePolicy",
                "metadata": {
                  "name": "policy-1",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "deviceType": "vfio-pci",
                  "mtu": 9000,
                  "nicSelector": {
                    "pfNames": [
                      "eth1"
                    ],
                    "rootDevices": [
                      "0000:01:00.1"
                    ],
                    "vendor": "8086"
                  },
                  "nodeSelector": {
                    "feature.node.kubernetes.io/network-sriov.capable": "true"
                  },
                  "numVfs": 6,
                  "priority": 99,
                  "resourceName": "intelnics"
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetworkNodeState",
                "metadata": {
                  "name": "minikube",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "interfaces": []
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetworkPoolConfig",
                "metadata": {
                  "name": "sriovnetworkpoolconfig-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovOperatorConfig",
                "metadata": {
                  "name": "default",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "enableInjector": true,
                  "enableOperatorWebhook": true,
                  "logLevel": 2
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-sriov-network-rhel9-operator@sha256:c4b91f426ee2ca995472dc03e04276cab57e1edf01e7af7a57b360c1b0ec5bd0
          createdAt: "2025-08-05T11:50:34Z"
          description: An operator for configuring SR-IOV components and initializing
            SRIOV network devices in Openshift cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.3.0-0 <4.20.0-202512081147'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "sriovnetwork.openshift.io/v1",
              "kind": "SriovOperatorConfig",
              "metadata": {
                "name": "default"
              },
              "spec": {
                "configurationMode": "daemon",
                "disableDrain": false,
                "enableInjector": true,
                "enableOperatorWebhook": true,
                "logLevel": 2,
                "featureGates": {
                    "resourceInjectorMatchCondition": true
                }
              }
            }
          operatorframework.io/suggested-namespace: openshift-sriov-network-operator
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-sriov-network-operator",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/internal-objects: '["sriovnetworknodestates.sriovnetwork.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/k8snetworkplumbingwg/sriov-network-operator
          support: Red Hat
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OVSNetwork is the Schema for the ovsnetworks API
            displayName: OVSNetwork
            kind: OVSNetwork
            name: ovsnetworks.sriovnetwork.openshift.io
            version: v1
          - description: SriovIBNetwork is the Schema for the sriovibnetworks API
            displayName: Sriov IBNetwork
            kind: SriovIBNetwork
            name: sriovibnetworks.sriovnetwork.openshift.io
            version: v1
          - description: SriovNetworkNodePolicy is the Schema for the sriovnetworknodepolicies
              API
            displayName: Sriov Network Node Policy
            kind: SriovNetworkNodePolicy
            name: sriovnetworknodepolicies.sriovnetwork.openshift.io
            version: v1
          - description: SriovNetworkNodeState is the Schema for the sriovnetworknodestates
              API
            displayName: Sriov Network Node State
            kind: SriovNetworkNodeState
            name: sriovnetworknodestates.sriovnetwork.openshift.io
            version: v1
          - kind: SriovNetworkPoolConfig
            name: sriovnetworkpoolconfigs.sriovnetwork.openshift.io
            version: v1
          - description: SriovNetwork is the Schema for the sriovnetworks API
            displayName: Sriov Network
            kind: SriovNetwork
            name: sriovnetworks.sriovnetwork.openshift.io
            version: v1
          - description: SriovOperatorConfig is the Schema for the sriovoperatorconfigs
              API
            displayName: Sriov Operator Config
            kind: SriovOperatorConfig
            name: sriovoperatorconfigs.sriovnetwork.openshift.io
            version: v1
        description: |
          # SR-IOV Network Operator for Openshift

          ## Introduction
          The sriov-network-operator is generally responsible for configuring the sriov components in a openshift cluster.

          ### Supported Features
          * Initialize the SR-IOV NICs on nodes.
          * provision SR-IOV device plugin on selected node.
          * provision SR-IOV CNI plugin on selected nodes.
          * manage configuration of SR-IOV device plugin.
          * generate net-att-def CRs for SR-IOV CNI plugin.

          This operator has to run in namespace 'openshift-sriov-network-operator'. An Operator Group is also required to install this operator:

          ```
          $ oc create namespace openshift-sriov-network-operator

          $ oc create -f - <<EOF
          apiVersion: operators.coreos.com/v1
          kind: OperatorGroup
          metadata:
            name: sriov-network-operators
            namespace: openshift-sriov-network-operator
          spec:
            targetNamespaces:
            - openshift-sriov-network-operator
          EOF
          ```
        displayName: SR-IOV Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - network
        - sr-iov
        - sriov
        links:
        - name: Source Code
          url: https://github.com/k8snetworkplumbingwg/sriov-network-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-sriov-infiniband-cni-rhel9@sha256:b423a3dca275e650fd498e6ca928c9d3c6bd1744c03986d30fb8775f04609b39
        - registry.redhat.io/openshift4/ose-sriov-network-config-daemon-rhel9@sha256:e912e692c32a70f22c34360ca8e8960bdf40bc141f54c5782da3380b972b62ff
        - registry.redhat.io/openshift4/ose-sriov-network-device-plugin-rhel9@sha256:6508614560de3d333fe93d7c72e6b6a1fffb4b5fd75632bf74fc686eb9deaf80
        - registry.redhat.io/openshift4/ose-sriov-network-metrics-exporter-rhel9@sha256:41b94f5b270e5d57b2130de47b0fa25796bfcf64c4dc771058ca0cd433404c05
        - registry.redhat.io/openshift4/ose-sriov-dp-admission-controller-rhel9@sha256:f14abff38a42cb72299e58b957c6f0f09af5182208800a4a6ed55e57e4ab5f28
        - registry.redhat.io/openshift4/ose-sriov-network-operator-bundle@sha256:b85986a39227398c90a8f178da7859900b5eb09e5e77949ca698e8a675904195
        - registry.redhat.io/openshift4/ose-sriov-network-rhel9-operator@sha256:c4b91f426ee2ca995472dc03e04276cab57e1edf01e7af7a57b360c1b0ec5bd0
        - registry.redhat.io/openshift4/ose-sriov-network-webhook-rhel9@sha256:6b23062ab592c3776ff7207ce7caed878474566033e45e377a893c4bac01de82
        - registry.redhat.io/openshift4/ose-sriov-rdma-cni-rhel9@sha256:276e01d4ce0e9407f5f67e015af36ec552f61303fbb7b2d45de5beacdc417937
        - registry.redhat.io/openshift4/sriov-cni-rhel9@sha256:6a3b0070b671a818f094f78073279669c9646ebdc668f7099e44d007380b6060
        version: 4.20.0-202512081147
      entries:
      - name: sriov-network-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: sriov-network-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: sriov-network-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: sriov-network-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: sriov-network-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: sriov-network-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: sriov-network-operator.v4.20.0-202509262224
        version: 4.20.0-202509262224
      name: stable
    defaultChannel: stable
    packageName: sriov-network-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-iam-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-iam-controller.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "Role",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "Group",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "OpenIDConnectProvider",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "Policy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/iam-controller:1.6.0
          createdAt: "2025-11-29T04:48:58Z"
          description: AWS IAM controller is a service controller for managing IAM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Group represents the state of an AWS iam Group resource.
            displayName: Group
            kind: Group
            name: groups.iam.services.k8s.aws
            version: v1alpha1
          - description: InstanceProfile represents the state of an AWS iam InstanceProfile
              resource.
            displayName: InstanceProfile
            kind: InstanceProfile
            name: instanceprofiles.iam.services.k8s.aws
            version: v1alpha1
          - description: OpenIDConnectProvider represents the state of an AWS iam
              OpenIDConnectProvider resource.
            displayName: OpenIDConnectProvider
            kind: OpenIDConnectProvider
            name: openidconnectproviders.iam.services.k8s.aws
            version: v1alpha1
          - description: Policy represents the state of an AWS iam Policy resource.
            displayName: Policy
            kind: Policy
            name: policies.iam.services.k8s.aws
            version: v1alpha1
          - description: Role represents the state of an AWS iam Role resource.
            displayName: Role
            kind: Role
            name: roles.iam.services.k8s.aws
            version: v1alpha1
          - description: ServiceLinkedRole represents the state of an AWS iam ServiceLinkedRole
              resource.
            displayName: ServiceLinkedRole
            kind: ServiceLinkedRole
            name: servicelinkedroles.iam.services.k8s.aws
            version: v1alpha1
          - description: User represents the state of an AWS iam User resource.
            displayName: User
            kind: User
            name: users.iam.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Identity and Access Management (IAM) resources in AWS from within your Kubernetes cluster.

          **About Amazon IAM**

          AWS Identity and Access Management (IAM) is a web service that helps you securely control access to AWS resources. You use IAM to control who is authenticated (signed in) and authorized (has permissions) to use resources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon IAM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - iam
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon IAM Developer Resources
          url: https://aws.amazon.com/iam/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: iam maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/iam-controller:1.6.0
        - quay.io/community-operator-pipeline-prod/ack-iam-controller@sha256:372c8ffd7d949547362a8bf6241b7d3a472190820a12cfddb3c685b85afd1ca7
        version: 1.6.0
      entries:
      - name: ack-iam-controller.v1.6.0
        version: 1.6.0
      - name: ack-iam-controller.v1.5.4
        version: 1.5.4
      - name: ack-iam-controller.v1.5.3
        version: 1.5.3
      - name: ack-iam-controller.v1.5.2
        version: 1.5.2
      - name: ack-iam-controller.v1.5.1
        version: 1.5.1
      - name: ack-iam-controller.v1.5.0
        version: 1.5.0
      - name: ack-iam-controller.v1.4.4
        version: 1.4.4
      - name: ack-iam-controller.v1.4.3
        version: 1.4.3
      - name: ack-iam-controller.v1.4.2
        version: 1.4.2
      - name: ack-iam-controller.v1.4.1
        version: 1.4.1
      - name: ack-iam-controller.v1.4.0
        version: 1.4.0
      - name: ack-iam-controller.v1.3.22
        version: 1.3.22
      - name: ack-iam-controller.v1.3.21
        version: 1.3.21
      - name: ack-iam-controller.v1.3.20
        version: 1.3.20
      - name: ack-iam-controller.v1.3.19
        version: 1.3.19
      - name: ack-iam-controller.v1.3.18
        version: 1.3.18
      - name: ack-iam-controller.v1.3.17
        version: 1.3.17
      - name: ack-iam-controller.v1.3.15
        version: 1.3.15
      - name: ack-iam-controller.v1.3.14
        version: 1.3.14
      - name: ack-iam-controller.v1.3.13
        version: 1.3.13
      - name: ack-iam-controller.v1.3.12
        version: 1.3.12
      - name: ack-iam-controller.v1.3.11
        version: 1.3.11
      - name: ack-iam-controller.v1.3.10
        version: 1.3.10
      - name: ack-iam-controller.v1.3.9
        version: 1.3.9
      - name: ack-iam-controller.v1.3.8
        version: 1.3.8
      - name: ack-iam-controller.v1.3.6
        version: 1.3.6
      - name: ack-iam-controller.v1.3.2
        version: 1.3.2
      - name: ack-iam-controller.v1.3.1
        version: 1.3.1
      - name: ack-iam-controller.v1.3.0
        version: 1.3.0
      - name: ack-iam-controller.v1.2.6
        version: 1.2.6
      - name: ack-iam-controller.v1.2.5
        version: 1.2.5
      - name: ack-iam-controller.v1.2.3
        version: 1.2.3
      - name: ack-iam-controller.v1.2.2
        version: 1.2.2
      - name: ack-iam-controller.v1.2.1
        version: 1.2.1
      - name: ack-iam-controller.v1.2.0
        version: 1.2.0
      - name: ack-iam-controller.v1.1.3
        version: 1.1.3
      - name: ack-iam-controller.v1.1.2
        version: 1.1.2
      - name: ack-iam-controller.v1.1.1
        version: 1.1.1
      - name: ack-iam-controller.v1.1.0
        version: 1.1.0
      - name: ack-iam-controller.v1.0.0
        version: 1.0.0
      - name: ack-iam-controller.v0.1.2
        version: 0.1.2
      - name: ack-iam-controller.v0.1.1
        version: 0.1.1
      - name: ack-iam-controller.v0.1.0
        version: 0.1.0
      - name: ack-iam-controller.v0.0.22
        version: 0.0.22
      - name: ack-iam-controller.v0.0.21
        version: 0.0.21
      - name: ack-iam-controller.v0.0.20
        version: 0.0.20
      - name: ack-iam-controller.v0.0.19
        version: 0.0.19
      - name: ack-iam-controller.v0.0.18
        version: 0.0.18
      - name: ack-iam-controller.v0.0.17
        version: 0.0.17
      - name: ack-iam-controller.v0.0.16
        version: 0.0.16
      - name: ack-iam-controller.v0.0.15
        version: 0.0.15
      - name: ack-iam-controller.v0.0.14
        version: 0.0.14
      - name: ack-iam-controller.v0.0.13
        version: 0.0.13
      - name: ack-iam-controller.v0.0.12
        version: 0.0.12
      - name: ack-iam-controller.v0.0.11
        version: 0.0.11
      - name: ack-iam-controller.v0.0.10
        version: 0.0.10
      - name: ack-iam-controller.v0.0.9
        version: 0.0.9
      - name: ack-iam-controller.v0.0.8
        version: 0.0.8
      - name: ack-iam-controller.v0.0.7
        version: 0.0.7
      - name: ack-iam-controller.v0.0.6
        version: 0.0.6
      - name: ack-iam-controller.v0.0.5
        version: 0.0.5
      - name: ack-iam-controller.v0.0.4
        version: 0.0.4
      - name: ack-iam-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-iam-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://www.medik8s.io/
    name: self-node-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: self-node-remediation.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediation",
                "metadata": {
                  "name": "selfnoderemediation-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationConfig",
                "metadata": {
                  "name": "self-node-remediation-config",
                  "namespace": "self-node-remediation"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationTemplate",
                "metadata": {
                  "name": "selfnoderemediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/self-node-remediation-operator:v0.11.0
          createdAt: "2025-11-24 11:26:35"
          description: Self Node Remediation Operator for remediate itself in case
            of a failure.
          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.skipRange: '>=0.4.0 <0.11.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/self-node-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SelfNodeRemediationConfig is the Schema for the selfnoderemediationconfigs
              API in which a user can configure the self node remediation agents
            displayName: Self Node Remediation Config
            kind: SelfNodeRemediationConfig
            name: selfnoderemediationconfigs.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediation is the Schema for the selfnoderemediations
              API
            displayName: Self Node Remediation
            kind: SelfNodeRemediation
            name: selfnoderemediations.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediationTemplate is the Schema for the selfnoderemediationtemplates
              API
            displayName: Self Node Remediation Template
            kind: SelfNodeRemediationTemplate
            name: selfnoderemediationtemplates.self-node-remediation.medik8s.io
            version: v1alpha1
        description: This self node remediation operator is using an alternate mechanism
          for a node in a cluster to detect its health status and take actions to
          remediate itself in case of a failure. While not all remediation events
          can result in the node returning to a healthy state, the operator does allow
          surviving parts of the cluster to assume the node has reached a safe state
          so that it’s workloads can be automatically recovered. A prerequisite for
          the Self Node Remediation operator is a functioning health detection system
          that implements the external remediation API, such as Node Health Check
          Operator or Machine Health Check Controller (in OCP or Cluster-API based
          clusters). Once a node/machine is unhealthy, the detection system will create
          the SelfNodeRemediation CR, which triggers the Self Node Remediation Operator.
          For this the configuration of the health detection system needs to refer
          to a SelfNodeRemediationTemplate CR. Such a template is created by default
          in the operator's namespace, for usage in other namespaces it needs to be
          created manually. The Node Health Check Operator is configured to use Self
          Node Remediation by default.
        displayName: Self Node Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - fencing
        - remediation
        - auto-healing
        - recovery
        - high-availability
        - baremetal
        - SNR
        links:
        - name: Self Node Remediation
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/self-node-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Medik8s
          url: https://www.medik8s.io/
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/self-node-remediation@sha256:f47ab630017f6eb3884af3bb5e134f3e71a44d99fddbdf261addf2e3b755a6c9
        - quay.io/medik8s/self-node-remediation-operator:v0.11.0
        version: 0.11.0
      entries:
      - name: self-node-remediation.v0.11.0
        version: 0.11.0
      - name: self-node-remediation.v0.10.0
        version: 0.10.0
      - name: self-node-remediation.v0.9.0
        version: 0.9.0
      - name: self-node-remediation.v0.8.0
        version: 0.8.0
      - name: self-node-remediation.v0.7.1
        version: 0.7.1
      - name: self-node-remediation.v0.7.0
        version: 0.7.0
      - name: self-node-remediation.v0.6.1
        version: 0.6.1
      - name: self-node-remediation.v0.6.0
        version: 0.6.0
      - name: self-node-remediation.v0.5.0
        version: 0.5.0
      - name: self-node-remediation.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: self-node-remediation
    provider:
      name: Medik8s
      url: https://www.medik8s.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Airlock
      provider-url: ""
    name: airlock-microgateway
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: airlock-microgateway.v4.5.9
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControl","metadata":{"name":"access-control-example"},"spec":{"policies":[{"requestConditions":{"path":{"matcher":{"exact":"/secure"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}},{"oidc":{"claim":{"name":"roles","value":{"matcher":{"contains":"\"admin\""}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"oidc-example"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"authorization":{}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"secured"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/test/"}}},"authorization":{"requireAny":[{"oidc":{"claim":{"name":"roles","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"group","value":{"matcher":{"exact":"superusers"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-1"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-metadata"}},{"identityPropagationRef":{"name":"test-header-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"exact":"/public"}}},"authorization":{}},{"requestConditions":{"path":{"matcher":{"regex":"^/api/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name"}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-defaults"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-oidc-idtoken"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-bearertoken-metadata"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-idtoken"}}],"onFailure":"Pass"}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurity","metadata":{"name":"content-security-example"},"spec":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-example-1"},"spec":{"value":{"name":"ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-http-filter-example-1"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}}}}},"defaults":{"sessionHandlingRef":{"name":"session-handling-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with TLS information of the downstream connection to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"defaultTimeouts":{"lifetime":"16h"},"prefix":"session_prefix_example"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SidecarGateway","metadata":{"name":"sidecar-gateway-example"},"spec":{"podSelector":{"matchLabels":{"app":"example-app"}},"sessionHandlingRef":{"name":"session-handling-example"},"applications":[{"containerPort":8443,"routes":[{"pathPrefix":"/metrics","unsecured":{}},{"pathPrefix":"/","secured":{"accessControlRef":{"name":"access-control-example"},"contentSecurityRef":{"name":"content-security-example"}}}],"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}},"restrictions":{"http":{"headersLength":"80Ki"}},"protocol":{"auto":{}},"tls":{"enable":true,"secretRef":{"name":"example-tls-secret"},"protocol":{"minimum":"TLSv1_3"},"clientCertificate":{"ignored":{}},"xfcc":"AlwaysForwardOnly"}},"upstream":{"tls":{"enable":true,"protocol":{"minimum":"TLSv1_2"}}},"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-http-filter-example-1"}]},"telemetryRef":{"name":"telemetry-example"}}],"envoyClusterRefs":[{"name":"envoy-cluster-example-1"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-11-26T12:58:13Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: AccessControl
            name: accesscontrols.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurity
            name: contentsecurities.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: SidecarGateway
            name: sidecargateways.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000056)
          * Gateway API
          * (Optional) Airlock Microgateway CNI (Required for [data plane mode sidecar](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000137)).

          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
          2. Check your inbox and save the license file microgateway-license.txt locally.

          *See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000056) to choose the right license type.*

          ### Install Gateway API standard channel
          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ### (Optional) Install Airlock Microgateway CNI
          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          Refer to [our documentation](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000140) for installation instructions

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD_MONITOR\_CREATE | "false" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.5/
        - name: Airlock Microgateway Labs
          url: https://play.instruqt.com/airlock/invite/hyi9fy4b4jzc?icp_referrer=openshift
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:552204cfe7419d394d9eccc8a14135606c412294fc300d95c73373dc5fe54bbe
        - registry.connect.redhat.com/airlock/microgateway@sha256:7693e3131582fe96c85812e20914ef77eead098d314bcee71e52d8cf0f02fcd9
        version: 4.5.9
      entries:
      - name: airlock-microgateway.v4.5.9
        version: 4.5.9
      - name: airlock-microgateway.v4.5.8
        version: 4.5.8
      - name: airlock-microgateway.v4.5.7
        version: 4.5.7
      - name: airlock-microgateway.v4.5.6
        version: 4.5.6
      - name: airlock-microgateway.v4.5.5
        version: 4.5.5
      - name: airlock-microgateway.v4.5.4
        version: 4.5.4
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.5"
    - currentCSV: airlock-microgateway.v4.6.7
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControl","metadata":{"name":"access-control-example"},"spec":{"policies":[{"requestConditions":{"path":{"matcher":{"exact":"/secure"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}},{"oidc":{"claim":{"name":"roles","value":{"matcher":{"contains":"\"admin\""}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"oidc-example"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"tokenExchange":{"onFailure":"Block","actions":[{"tokenExchangeRef":{"name":"token-exchange-example"}}]},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"jwt-example"}}}}},{"authorization":{}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"secured"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/test/"}}},"authorization":{"requireAny":[{"oidc":{"claim":{"name":"roles","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"group","value":{"matcher":{"exact":"superusers"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-1"}}}},"tokenExchange":{"onFailure":"Block","actions":[{"tokenExchangeRef":{"name":"test-token-exchange"}}]},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-metadata"}},{"identityPropagationRef":{"name":"test-header-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"exact":"/public"}}},"authorization":{}},{"requestConditions":{"path":{"matcher":{"regex":"^/api/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name"}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-defaults"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-oidc-idtoken"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-bearertoken-metadata"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-idtoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurity","metadata":{"name":"content-security-example"},"spec":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-example-1"},"spec":{"value":{"name":"ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-http-filter-example-1"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}}}}},"defaults":{"sessionHandlingRef":{"name":"session-handling-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with TLS information of the downstream connection to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"defaultTimeouts":{"lifetime":"16h"},"prefix":"session_prefix_example"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SidecarGateway","metadata":{"name":"sidecar-gateway-example"},"spec":{"podSelector":{"matchLabels":{"app":"example-app"}},"sessionHandlingRef":{"name":"session-handling-example"},"applications":[{"containerPort":8443,"routes":[{"pathPrefix":"/metrics","unsecured":{}},{"pathPrefix":"/","secured":{"accessControlRef":{"name":"access-control-example"},"contentSecurityRef":{"name":"content-security-example"}}}],"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}},"restrictions":{"http":{"headersLength":"80Ki"}},"protocol":{"auto":{}},"tls":{"enable":true,"secretRef":{"name":"example-tls-secret"},"protocol":{"minimum":"TLSv1_3"},"clientCertificate":{"ignored":{}},"xfcc":"AlwaysForwardOnly"}},"upstream":{"tls":{"enable":true,"protocol":{"minimum":"TLSv1_2"}}},"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-http-filter-example-1"}]},"telemetryRef":{"name":"telemetry-example"}}],"envoyClusterRefs":[{"name":"envoy-cluster-example-1"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-10T09:11:36Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: AccessControl
            name: accesscontrols.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurity
            name: contentsecurities.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: SidecarGateway
            name: sidecargateways.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000056)
          * Gateway API
          * (Optional) Airlock Microgateway CNI (Required for [data plane mode sidecar](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000137)).

          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
          2. Check your inbox and save the license file microgateway-license.txt locally.

          *See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000056) to choose the right license type.*

          ### Install Gateway API standard channel
          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.3.0/standard-install.yaml
          ```

          ### (Optional) Install Airlock Microgateway CNI
          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          Refer to [our documentation](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000140) for installation instructions

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD_MONITOR\_CREATE | "false" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.6/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:f7f171ed5f8a72313942d5a1fae8720d41bd753f9a43a63980d96d63d853fa90
        - registry.connect.redhat.com/airlock/microgateway@sha256:4af539fc7ca699e082914e73b886ea5e851259ddb1b9afaa18693669f4b0bbb6
        version: 4.6.7
      entries:
      - name: airlock-microgateway.v4.6.7
        version: 4.6.7
      - name: airlock-microgateway.v4.6.6
        version: 4.6.6
      - name: airlock-microgateway.v4.6.5
        version: 4.6.5
      - name: airlock-microgateway.v4.6.4
        version: 4.6.4
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.6"
    - currentCSV: airlock-microgateway.v4.7.5
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"secured"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/test/"}}},"authorization":{"requireAny":[{"oidc":{"claim":{"name":"roles","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"group","value":{"matcher":{"exact":"superusers"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-1"}}}},"tokenExchange":{"onFailure":"Block","actions":[{"tokenExchangeRef":{"name":"test-token-exchange"}}]},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-metadata"}},{"identityPropagationRef":{"name":"test-header-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"exact":"/public"}}},"authorization":{}},{"requestConditions":{"path":{"matcher":{"regex":"^/api/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name"}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-defaults"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-oidc-idtoken"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-bearertoken-metadata"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-idtoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-ext-authz","namespace":"default"},"spec":{"value":{"name":"envoycluster/default/envoy-cluster-ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyExtensionPolicy","metadata":{"name":"envoy-extension-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-httpfilter-ext-authz"}],"append":[{"name":"lua-transform-request"}]},"envoyClusterRefs":[{"name":"envoy-cluster-ext-authz"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-httpfilter-ext-authz"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"envoycluster/default/envoy-cluster-ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"volumes":[{"name":"vol-1","emptyDir":{}}],"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"volumeMounts":[{"name":"vol-1","mountPath":"/tmp/data"}]}}},"defaults":{"sessionHandlingRef":{"name":"session-handling-example"},"telemetryRef":{"name":"telemetry-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with TLS information of the downstream connection to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"mode":"Enforce","persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"defaultTimeouts":{"idle":"30s","lifetime":"16h"},"prefix":"session_prefix_example","cookie":{"name":"SESS","attributes":{"domain":"example.org","path":"/","sameSite":"Strict","secure":true}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"},"session":{"id":"%SESSION_ID%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-10T12:05:46Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyExtensionPolicy
            name: envoyextensionpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.7/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ***Note:*** Sidecar-based data plane mode is *not* supported by this OLM Bundle.
          If you want to use the Sidecar-based data plane mode, use Helm instead. Please note that the Airlock Microgateway CNI and the Helm charts are not certified for RedHat OpenShift.
          Refer to https://github.com/airlock/microgateway for installation instruction with Helm.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.7/?topic=MGW-00000056)
          * [Gateway API](https://gateway-api.sigs.k8s.io/)

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
          2. Check your inbox and save the license file microgateway-license.txt locally.

          *See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.7/?topic=MGW-00000056) to choose the right license type.*

          ### Install Gateway API standard channel
          ***Note:*** *This step is only required for OpenShift versions below 4.19, as Gateway API is included by default in OpenShift 4.19+.*

          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD\_MONITOR\_CREATE | "true" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gateway API
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.7/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:cd453189f3f50fd20db7744f72e965cbdfc308abfec79a61ed97020aeb12baa2
        - registry.connect.redhat.com/airlock/microgateway@sha256:dd8c021d4333a3eec9360a336089d8984cf56fd0870f03d4e79cdd0f74da9cb6
        version: 4.7.5
      entries:
      - name: airlock-microgateway.v4.7.5
        version: 4.7.5
      - name: airlock-microgateway.v4.7.4
        version: 4.7.4
      - name: airlock-microgateway.v4.7.3
        version: 4.7.3
      - name: airlock-microgateway.v4.7.2
        version: 4.7.2
      - name: airlock-microgateway.v4.7.1
        version: 4.7.1
      - name: airlock-microgateway.v4.7.0
        version: 4.7.0
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.7"
    - currentCSV: airlock-microgateway.v4.8.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/secure"}}},"authorization":{"requireAll":[{"clientCertificate":{"hash":{"in":{"values":["69e4caf01b2b3490cd938b053274a2c9001c45c21b2cb58e3612c550568a42ca","df6ff72fe9116521268f6f2dd4966f51df479883fe7037b39f75916ac3049d1a"]}}}},{"clientCertificate":{"subject":{"field":"Organization","value":{"matcher":{"exact":"Company"}}}}},{"clientCertificate":{"san":{"type":"Email","value":{"matcher":{"suffix":"@company.com"}}}}}]}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/partner/"}}},"authorization":{"requireAll":[{"tokenExchange":{"claim":{"name":"group","value":{"matcher":{"exact":"partner"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"}}}},"tokenExchange":{"actions":[{"tokenExchangeRef":{"name":"token-exchange-example"}}]}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-example"},"spec":{"statusCode":400,"content":[{"contentType":"application/json","headers":[{"name":"X-Request-Id","value":"%STREAM_ID%"},{"name":"X-Some-Header","value":"some-value"}],"body":{"value":"{\n  \"error\":
            \"something went wrong\"\n}"}},{"contentType":"text/html","body":{"value":"<!DOCTYPE
            html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<title>Error</title>\n<style>\n  body
            {\n    font-family: Arial, Helvetica, sans-serif;\n    background-color:
            #222222;\n  }\n  h1 {\n    color: #aaaaaa;\n  }\n</style>\n</head>\n<body>\n<h1>Something
            went wrong!</h1>\n<p>Request ID: %STREAM_ID%</p>\n</body>\n</html>"}},{"contentType":"application/xml","body":{"valueFrom":{"configMapKeyRef":{"name":"custom-response-example","key":"response.xml"}}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponsePolicy","metadata":{"name":"custom-response-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":{"local":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"api-401"}}]},{"requestConditions":{"path":{"matcher":{"prefix":"/default"}}},"responses":[]},{"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}]}],"upstream":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[]},{"responses":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]}]}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-redirect-404-example"},"spec":{"statusCode":302,"content":[{"contentType":"none/none","headers":[{"name":"Location","value":"https://company.com/error/404.html?request_id=%STREAM_ID%"}]}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-ext-authz","namespace":"default"},"spec":{"value":{"name":"envoycluster/default/envoy-cluster-ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyExtensionPolicy","metadata":{"name":"envoy-extension-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-httpfilter-ext-authz"}],"append":[{"name":"lua-transform-request"}]},"envoyClusterRefs":[{"name":"envoy-cluster-ext-authz"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-httpfilter-ext-authz"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"envoycluster/default/envoy-cluster-ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"volumes":[{"name":"vol-1","emptyDir":{}}],"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"volumeMounts":[{"name":"vol-1","mountPath":"/tmp/data"}],"securityContext":{"capabilities":{"add":["BPF"]}}}}},"defaults":{"customResponses":{"local":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}],"upstream":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]},"sessionHandlingRef":{"name":"session-handling-example"},"telemetryRef":{"name":"telemetry-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with downstream TLS connection information to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"bearerToken":{"source":{"jwt":{}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"mode":"Enforce","persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"prefix":"session_prefix_example","agent":{"logging":{"level":"debug"}},"defaultTimeouts":{"idle":"30s","lifetime":"16h"},"cookie":{"name":"SESS","attributes":{"domain":"example.org","path":"/","sameSite":"Strict","secure":true}},"limits":{"sessionsPerIP":{"thresholds":{"logging":1000,"blocking":1500},"exceptions":[{"remoteIP":{"cidrRanges":["192.168.0.0/16"]}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"},"session":{"id":"%SESSION_ID%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"},"tls":{"peer":{"issuer":"%UPSTREAM_PEER_ISSUER%","subject":"%UPSTREAM_PEER_SUBJECT%"}}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-11T08:40:33Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponsePolicy
            name: customresponsepolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponse
            name: customresponses.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyExtensionPolicy
            name: envoyextensionpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056)
          * [Gateway API](https://gateway-api.sigs.k8s.io/)

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          Airlock Microgateway requires a valid license. See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056) to choose the right license type.
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
                A license will be sent automatically within minutes.
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
                Your sales partner will contact you for licensing.
          2. Check your inbox and save the license file microgateway-license.txt locally.

          ### Deploy Airlock Microgateway License
          1. Create the `airlock-microgateway-system` namespace.

          ```console
          oc create project airlock-microgateway-system
          ```
          2. Create a Kubernetes secret with the name `airlock-microgateway-license` and the key `microgateway-license.txt` in the Microgateway Operator namespace to store the license.

          ```console
          oc create secret generic airlock-microgateway-license \
            -n airlock-microgateway-system \
            --from-file=microgateway-license.txt=<path-to-your-local-microgateway-license.txt>
          ```

          ### Install Gateway API standard channel
          ***Note:*** *This step is only required for OpenShift versions below 4.19, as Gateway API is included by default in OpenShift 4.19+.*

          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD\_MONITOR\_CREATE | "true" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gateway API
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.8/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:a0f546d8f705b8c1dd1051a431327bd89a52207ec8abaf236a9570037db5ac49
        - registry.connect.redhat.com/airlock/microgateway@sha256:0dfe84720ab96cbdb5d390d5b481eea05bc6aec9fb37207a8aada5c252aeed31
        version: 4.8.1
      entries:
      - name: airlock-microgateway.v4.8.1
        version: 4.8.1
      - name: airlock-microgateway.v4.8.0
        version: 4.8.0
      - name: airlock-microgateway.v4.7.4
        version: 4.7.4
      - name: airlock-microgateway.v4.7.3
        version: 4.7.3
      - name: airlock-microgateway.v4.7.2
        version: 4.7.2
      - name: airlock-microgateway.v4.7.1
        version: 4.7.1
      - name: airlock-microgateway.v4.7.0
        version: 4.7.0
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.8"
    - currentCSV: airlock-microgateway.v4.8.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/secure"}}},"authorization":{"requireAll":[{"clientCertificate":{"hash":{"in":{"values":["69e4caf01b2b3490cd938b053274a2c9001c45c21b2cb58e3612c550568a42ca","df6ff72fe9116521268f6f2dd4966f51df479883fe7037b39f75916ac3049d1a"]}}}},{"clientCertificate":{"subject":{"field":"Organization","value":{"matcher":{"exact":"Company"}}}}},{"clientCertificate":{"san":{"type":"Email","value":{"matcher":{"suffix":"@company.com"}}}}}]}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/partner/"}}},"authorization":{"requireAll":[{"tokenExchange":{"claim":{"name":"group","value":{"matcher":{"exact":"partner"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"}}}},"tokenExchange":{"actions":[{"tokenExchangeRef":{"name":"token-exchange-example"}}]}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-example"},"spec":{"statusCode":400,"content":[{"contentType":"application/json","headers":[{"name":"X-Request-Id","value":"%STREAM_ID%"},{"name":"X-Some-Header","value":"some-value"}],"body":{"value":"{\n  \"error\":
            \"something went wrong\"\n}"}},{"contentType":"text/html","body":{"value":"<!DOCTYPE
            html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<title>Error</title>\n<style>\n  body
            {\n    font-family: Arial, Helvetica, sans-serif;\n    background-color:
            #222222;\n  }\n  h1 {\n    color: #aaaaaa;\n  }\n</style>\n</head>\n<body>\n<h1>Something
            went wrong!</h1>\n<p>Request ID: %STREAM_ID%</p>\n</body>\n</html>"}},{"contentType":"application/xml","body":{"valueFrom":{"configMapKeyRef":{"name":"custom-response-example","key":"response.xml"}}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponsePolicy","metadata":{"name":"custom-response-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":{"local":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"api-401"}}]},{"requestConditions":{"path":{"matcher":{"prefix":"/default"}}},"responses":[]},{"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}]}],"upstream":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[]},{"responses":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]}]}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-redirect-404-example"},"spec":{"statusCode":302,"content":[{"contentType":"none/none","headers":[{"name":"Location","value":"https://company.com/error/404.html?request_id=%STREAM_ID%"}]}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-ext-authz","namespace":"default"},"spec":{"value":{"name":"envoycluster/default/envoy-cluster-ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyExtensionPolicy","metadata":{"name":"envoy-extension-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-httpfilter-ext-authz"}],"append":[{"name":"lua-transform-request"}]},"envoyClusterRefs":[{"name":"envoy-cluster-ext-authz"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-httpfilter-ext-authz"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"envoycluster/default/envoy-cluster-ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"volumes":[{"name":"vol-1","emptyDir":{}}],"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"volumeMounts":[{"name":"vol-1","mountPath":"/tmp/data"}],"securityContext":{"capabilities":{"add":["BPF"]}}}}},"defaults":{"customResponses":{"local":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}],"upstream":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]},"sessionHandlingRef":{"name":"session-handling-example"},"telemetryRef":{"name":"telemetry-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with downstream TLS connection information to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"bearerToken":{"source":{"jwt":{}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"mode":"Enforce","persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"prefix":"session_prefix_example","agent":{"logging":{"level":"debug"}},"defaultTimeouts":{"idle":"30s","lifetime":"16h"},"cookie":{"name":"SESS","attributes":{"domain":"example.org","path":"/","sameSite":"Strict","secure":true}},"limits":{"sessionsPerIP":{"thresholds":{"logging":1000,"blocking":1500},"exceptions":[{"remoteIP":{"cidrRanges":["192.168.0.0/16"]}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"},"session":{"id":"%SESSION_ID%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"},"tls":{"peer":{"issuer":"%UPSTREAM_PEER_ISSUER%","subject":"%UPSTREAM_PEER_SUBJECT%"}}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-11T08:40:33Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponsePolicy
            name: customresponsepolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponse
            name: customresponses.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyExtensionPolicy
            name: envoyextensionpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056)
          * [Gateway API](https://gateway-api.sigs.k8s.io/)

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          Airlock Microgateway requires a valid license. See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056) to choose the right license type.
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
                A license will be sent automatically within minutes.
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
                Your sales partner will contact you for licensing.
          2. Check your inbox and save the license file microgateway-license.txt locally.

          ### Deploy Airlock Microgateway License
          1. Create the `airlock-microgateway-system` namespace.

          ```console
          oc create project airlock-microgateway-system
          ```
          2. Create a Kubernetes secret with the name `airlock-microgateway-license` and the key `microgateway-license.txt` in the Microgateway Operator namespace to store the license.

          ```console
          oc create secret generic airlock-microgateway-license \
            -n airlock-microgateway-system \
            --from-file=microgateway-license.txt=<path-to-your-local-microgateway-license.txt>
          ```

          ### Install Gateway API standard channel
          ***Note:*** *This step is only required for OpenShift versions below 4.19, as Gateway API is included by default in OpenShift 4.19+.*

          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD\_MONITOR\_CREATE | "true" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gateway API
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.8/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:a0f546d8f705b8c1dd1051a431327bd89a52207ec8abaf236a9570037db5ac49
        - registry.connect.redhat.com/airlock/microgateway@sha256:0dfe84720ab96cbdb5d390d5b481eea05bc6aec9fb37207a8aada5c252aeed31
        version: 4.8.1
      entries:
      - name: airlock-microgateway.v4.8.1
        version: 4.8.1
      - name: airlock-microgateway.v4.8.0
        version: 4.8.0
      - name: airlock-microgateway.v4.7.4
        version: 4.7.4
      - name: airlock-microgateway.v4.7.3
        version: 4.7.3
      - name: airlock-microgateway.v4.7.2
        version: 4.7.2
      - name: airlock-microgateway.v4.7.1
        version: 4.7.1
      - name: airlock-microgateway.v4.7.0
        version: 4.7.0
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: stable
    defaultChannel: "4.8"
    packageName: airlock-microgateway
    provider:
      name: Airlock
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: MariaDB Corporation
      provider-url: ""
    name: mariadb-enterprise-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mariadb-enterprise-operator.v25.8.1-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup"
                },
                "spec": {
                  "args": [
                    "--single-transaction",
                    "--all-databases"
                  ],
                  "logLevel": "info",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "0 0 * * *",
                    "suspend": false
                  },
                  "stagingStorage": {
                    "persistentVolumeClaim": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "1Gi"
                        }
                      }
                    }
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "backups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Connection",
                "metadata": {
                  "name": "connection"
                },
                "spec": {
                  "database": "mariadb",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "secretName": "connection",
                  "secretTemplate": {
                    "key": "dsn"
                  },
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Database",
                "metadata": {
                  "name": "database"
                },
                "spec": {
                  "characterSet": "utf8",
                  "collate": "utf8_general_ci",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "name": "my-logical-database"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Grant",
                "metadata": {
                  "name": "grant"
                },
                "spec": {
                  "database": "*",
                  "grantOption": true,
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "privileges": [
                    "SELECT",
                    "INSERT",
                    "UPDATE"
                  ],
                  "table": "*",
                  "username": "my-user"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "MariaDB",
                "metadata": {
                  "name": "mariadb"
                },
                "spec": {
                  "connection": {
                    "secretName": "mariadb-conn",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "database": "mariadb",
                  "galera": {
                    "enabled": true
                  },
                  "metrics": {
                    "enabled": true,
                    "passwordSecretKeyRef": {
                      "generate": true,
                      "key": "password",
                      "name": "mariadb-metrics"
                    }
                  },
                  "myCnf": "[mariadb]\nbind-address=*\ndefault_storage_engine=InnoDB\nbinlog_format=row\ninnodb_autoinc_lock_mode=2\ninnodb_buffer_pool_size=1024M\nmax_allowed_packet=256M\n",
                  "passwordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-password"
                  },
                  "primaryConnection": {
                    "secretName": "mariadb-conn-primary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "primaryService": {
                    "type": "ClusterIP"
                  },
                  "replicas": 3,
                  "rootPasswordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-root"
                  },
                  "secondaryConnection": {
                    "secretName": "mariadb-conn-secondary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "secondaryService": {
                    "type": "ClusterIP"
                  },
                  "service": {
                    "type": "ClusterIP"
                  },
                  "storage": {
                    "size": "1Gi"
                  },
                  "updateStrategy": {
                    "type": "ReplicasFirstPrimaryLast"
                  },
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "MaxScale",
                "metadata": {
                  "name": "maxscale"
                },
                "spec": {
                  "admin": {
                    "guiEnabled": true,
                    "port": 8989
                  },
                  "auth": {
                    "adminPasswordSecretKeyRef": {
                      "generate": true,
                      "key": "password",
                      "name": "maxscale-admin"
                    },
                    "adminUsername": "mariadb-enterprise-operator",
                    "generate": true
                  },
                  "config": {
                    "sync": {
                      "database": "mysql",
                      "interval": "5s",
                      "timeout": "10s"
                    }
                  },
                  "connection": {
                    "port": 3306,
                    "secretName": "maxscale-conn",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "guiKubernetesService": {
                    "type": "ClusterIP"
                  },
                  "kubernetesService": {
                    "type": "ClusterIP"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "metrics": {
                    "enabled": true
                  },
                  "monitor": {
                    "cooperativeMonitoring": "majority_of_all",
                    "interval": "2s",
                    "params": {
                      "available_when_donor": "false",
                      "disable_master_failback": "false",
                      "disable_master_role_setting": "false"
                    }
                  },
                  "replicas": 2,
                  "requeueInterval": "10s",
                  "services": [
                    {
                      "listener": {
                        "port": 3306,
                        "protocol": "MariaDBProtocol"
                      },
                      "name": "rw-router",
                      "params": {
                        "transaction_replay": "true",
                        "transaction_replay_attempts": "10",
                        "transaction_replay_timeout": "5s"
                      },
                      "router": "readwritesplit"
                    }
                  ]
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "PhysicalBackup",
                "metadata": {
                  "name": "physicalbackup"
                },
                "spec": {
                  "compression": "bzip2",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "podAffinity": true,
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "0 0 * * *",
                    "immediate": true,
                    "suspend": false
                  },
                  "serviceAccountName": "backup",
                  "stagingStorage": {
                    "persistentVolumeClaim": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "1Gi"
                        }
                      }
                    }
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "physicalbackups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "region": "us-east-1",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  },
                  "timeout": "1h"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore"
                },
                "spec": {
                  "backupRef": {
                    "name": "backup"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "targetRecoveryTime": "2023-12-19T09:00:00Z"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "SqlJob",
                "metadata": {
                  "name": "sqljob"
                },
                "spec": {
                  "database": "mariadb",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "suspend": false
                  },
                  "sql": "CREATE TABLE IF NOT EXISTS orders (\n  id bigint PRIMARY KEY AUTO_INCREMENT,\n  customer_id INT,\n  order_date DATE,\n  total_amount_cents INT\n);\nINSERT INTO orders (customer_id, order_date, total_amount_cents) VALUES\n  (101, '2024-05-15', 5000),\n  (102, '2024-05-14', 7525),\n  (103, '2024-05-13', 10050),\n  (104, '2024-05-12', 2575);",
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "user"
                },
                "spec": {
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxUserConnections": 20,
                  "name": "my-user",
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: docker.mariadb.com/mariadb-enterprise-operator@sha256:1effbbfa7632be92c17ef61c18a25f010b187840beec42c31d2410d0209e6985
          createdAt: "2025-08-28T11:35:03Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["MariaDB Enterprise"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: MariaDB Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API. It is used to define
              backup jobs and its storage.
            displayName: Backup
            kind: Backup
            name: backups.enterprise.mariadb.com
            version: v1alpha1
          - description: Connection is the Schema for the connections API. It is used
              to configure connection strings for the applications connecting to MariaDB.
            displayName: Connection
            kind: Connection
            name: connections.enterprise.mariadb.com
            version: v1alpha1
          - description: Database is the Schema for the databases API. It is used
              to define a logical database as if you were running a 'CREATE DATABASE'
              statement.
            displayName: Database
            kind: Database
            name: databases.enterprise.mariadb.com
            version: v1alpha1
          - description: Grant is the Schema for the grants API. It is used to define
              grants as if you were running a 'GRANT' statement.
            displayName: Grant
            kind: Grant
            name: grants.enterprise.mariadb.com
            version: v1alpha1
          - description: MariaDB is the Schema for the mariadbs API. It is used to
              define MariaDB clusters.
            displayName: Maria DB
            kind: MariaDB
            name: mariadbs.enterprise.mariadb.com
            version: v1alpha1
          - description: MaxScale is the Schema for the maxscales API. It is used
              to define MaxScale clusters.
            displayName: Max Scale
            kind: MaxScale
            name: maxscales.enterprise.mariadb.com
            version: v1alpha1
          - description: PhysicalBackup is the Schema for the physicalbackups API.
              It is used to define physical backup jobs and its storage.
            displayName: Physical Backup
            kind: PhysicalBackup
            name: physicalbackups.enterprise.mariadb.com
            version: v1alpha1
          - description: Restore is the Schema for the restores API. It is used to
              define restore jobs and its restoration source.
            displayName: Restore
            kind: Restore
            name: restores.enterprise.mariadb.com
            version: v1alpha1
          - description: SqlJob is the Schema for the sqljobs API. It is used to run
              sql scripts as jobs.
            displayName: Sql Job
            kind: SqlJob
            name: sqljobs.enterprise.mariadb.com
            version: v1alpha1
          - description: User is the Schema for the users API.  It is used to define
              grants as if you were running a 'CREATE USER' statement.
            displayName: User
            kind: User
            name: users.enterprise.mariadb.com
            version: v1alpha1
        description: |
          MariaDB Enterprise Operator for Openshift is an operator that manages MariaDB Enterprise operands declaratively via Custom Resources, with support for the following features:

          * Provision and Configure MariaDB and MaxScale Declaratively: Define MariaDB Enterprise Server and MaxScale clusters in YAML manifests and deploy them with ease in Kubernetes.
          * High Availability with Galera: Ensure availability with MariaDB Enterprise Cluster, providing synchronous multi-master replication.
          * Query and Connection-Based Routing with MaxScale: MaxScale provides query routing and connection load balancing for improved application performance.
          * Cluster-Aware Rolling Updates: Perform rolling updates on MariaDB and MaxScale clusters, ensuring zero-downtime upgrades with no disruptions to your applications.
          * Flexible Storage Configuration and Volume Expansion: Easily configure storage for MariaDB instances, including the ability to expand volumes as needed.
          * Physical Backups based on [mariadb-backup](https://mariadb.com/docs/server/server-usage/backup-and-restore/mariadb-backup/full-backup-and-restore-with-mariadb-backup) and [Kubernetes VolumeSnapshots](https://kubernetes.io/docs/concepts/storage/volume-snapshots/). By leveraging the [BACKUP STAGE](https://mariadb.com/docs/server/reference/sql-statements/administrative-sql-statements/backup-commands/backup-stage) feature, backups are taken without long read locks or service interruptions.
          * Logical Backups based on [mariadb-dump](https://mariadb.com/docs/server/clients-and-utilities/backup-restore-and-import-clients/mariadb-dump).
          * Backup Management: Take, restore, and schedule backups with multiple storage types supported: S3, PVCs, Kubernetes volumes and VolumeSnapshots..
          * Policy-Driven Backup Retention: Implement backup retention policies with bzip2 and gzip compression.
          * Target Recovery Time: Restore your database to the closest available backup based on a specified recovery time.
          * Bootstrap New Instances: Initialize new MariaDB instances from backups, S3, PVCs or VolumeSnapshots to quickly spin up new clusters.
          * TLS Certificate Management: Issue, configure, and rotate TLS certificates and Certificate Authorities (CAs) for secure connections.
          * Advanced TLS Support: customize certificate lifetime, private key algorithm and TLS version.
          * Native Integration with cert-manager: Leverage [cert-manager](https://cert-manager.io/docs/), the de-facto standard for managing certificates in Kubernetes, to enable issuance with private CAs, public CAs and HashiCorp Vault.
          * Prometheus Metrics: Expose metrics using the MariaDB and MaxScale Prometheus exporters.
          * Native Integration with prometheus-operator: Leverage [prometheus-operator](https://github.com/prometheus-operator/prometheus-operator) to scrape metrics from MariaDB and MaxScale instances.
          * Declarative User and Database Management: Manage users, grants, and logical databases in a declarative manner using Kubernetes resources.
          * Secure, immutable and lightweight images based on Red Hat UBI, available for multiple architectires (amd64, arm64 and ppc64le).
          * [Operator certified ](https://catalog.redhat.com/en/software/container-stacks/detail/65789bcbe17f1b31944acb1d#overview) by Red Hat.

          ## Installation

          In order to use this product, you will need a [MariaDB Enterprise subscription](https://mariadb.com/products/enterprise/).

          To be able to pull MariaDB Enterprise images, you will need to configure the MariaDB registry credentials in Openshift using the [MariaDB customer download token](https://customers.mariadb.com/downloads/token/) as described below:

          - Extract your [Openshift global pull secret](https://docs.redhat.com/en/documentation/openshift_container_platform/4.18/html/images/managing-images#images-update-global-pull-secret_using-image-pull-secrets):
            ```bash
            oc extract secret/pull-secret -n openshift-config --confirm
            ```

          - Login in the MariaDB registry providing the customer download token as password:
            ```bash
            oc registry login \
              --registry="docker.mariadb.com" \
              --auth-basic="<email>:<customer-download-token>" \
              --to=.dockerconfigjson
            ```

          - Update the global pull secret:
            ```bash
            oc set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson
            ```

          Alternatively, you can also create a `Secret` named `mariadb-enterprise` in the namespace where are you installing the operator by using the following command:
            ```bash
            oc create secret docker-registry mariadb-enterprise \
              --docker-server=docker.mariadb.com \
              --docker-username=<email> \
              --docker-password=<customer-download-token> \
              -n <operator-namespace>
            ```

          At this point, you can proceed to install the MariaDB Enterprise Operator, either via the Openshift console or by creating a `Subscription` object as described in the [Openshift installation docs](https://mariadb.com/kb/en/openshift/).

          Refer to the [quickstart guide](https://mariadb.com/kb/en/quickstart/), the [examples catalog](https://mariadb.com/kb/en/examples-catalog/) and the [API reference](https://mariadb.com/kb/en/api-reference/) for getting started with the Custom Resources offered by this operator.
        displayName: MariaDB Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mariadb
        - mysql
        - database
        - operator
        - mariadb-enterprise-operator
        - database
        links:
        - name: MariaDB Enterprise
          url: https://mariadb.com/products/enterprise/
        - name: Documentation
          url: https://mariadb.com/kb/en/mariadb-enterprise-operator/
        maintainers:
        - email: operator@mariadb.com
          name: MariaDB Corporation
        - email: support@mariadb.com
          name: Support
        - email: sales-EMEA@mariadb.com
          name: Sales EMEA
        - email: sales-APAC@mariadb.com
          name: Sales APAC
        - email: sales-nam@mariadb.com
          name: Sales Americas
        maturity: beta
        minKubeVersion: 1.29.0
        provider:
          name: MariaDB Corporation
        relatedImages:
        - docker.mariadb.com/mariadb-enterprise-operator@sha256:1effbbfa7632be92c17ef61c18a25f010b187840beec42c31d2410d0209e6985
        - docker.mariadb.com/maxscale@sha256:d9e04a7a406353dab2051e190be0c32ed20b780ed71e56e55cedd4ccb61af416
        - mariadb/mariadb-prometheus-exporter-ubi@sha256:f072175198cad050e80617d13e63f415bacdfe47e2dd177fde7283a96ee56c07
        - mariadb/maxscale-prometheus-exporter-ubi@sha256:cc17c1554795ad01b4d8db799f6aa90e00e41ede431f09d30eec64d9dd4479d9
        - registry.connect.redhat.com/mariadb/mariadb-enterprise-operator-bundle@sha256:73e7f243a6676d559068bf8ab80cc0ffe0db58152675603ca8bd360334439f26
        - docker.mariadb.com/enterprise-server@sha256:9872721d35ebe8d820b1aa9c6dd83b363a7b2df9af11a65bff6b80ff4144460a
        version: 25.8.1-1
      entries:
      - name: mariadb-enterprise-operator.v25.8.1-1
        version: 25.8.1-1
      - name: mariadb-enterprise-operator.v25.8.0
        version: 25.8.0
      - name: mariadb-enterprise-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: mariadb-enterprise-operator
    provider:
      name: MariaDB Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Helm Community
      provider-url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
    name: cockroachdb
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cockroachdb.v5.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.operatorhub.io/v1alpha1",
                "kind": "Cockroachdb",
                "metadata": {
                  "name": "cockroachdb-sample"
                },
                "spec": {
                  "clusterDomain": "cluster.local",
                  "conf": {
                    "attrs": [],
                    "cache": "25%",
                    "cluster-name": "",
                    "disable-cluster-name-verification": false,
                    "http-port": 8080,
                    "join": [],
                    "locality": "",
                    "logtostderr": "INFO",
                    "max-sql-memory": "25%",
                    "port": 26257,
                    "single-node": false,
                    "sql-audit-dir": ""
                  },
                  "image": {
                    "credentials": {},
                    "pullPolicy": "IfNotPresent",
                    "repository": "cockroachdb/cockroach",
                    "tag": "v20.2.4"
                  },
                  "ingress": {
                    "annotations": {},
                    "enabled": false,
                    "hosts": [],
                    "labels": {},
                    "paths": [
                      "/"
                    ],
                    "tls": []
                  },
                  "init": {
                    "affinity": {},
                    "annotations": {},
                    "labels": {
                      "app.kubernetes.io/component": "init"
                    },
                    "nodeSelector": {},
                    "resources": {},
                    "tolerations": []
                  },
                  "labels": {},
                  "networkPolicy": {
                    "enabled": false,
                    "ingress": {
                      "grpc": [],
                      "http": []
                    }
                  },
                  "service": {
                    "discovery": {
                      "annotations": {},
                      "labels": {
                        "app.kubernetes.io/component": "cockroachdb"
                      }
                    },
                    "ports": {
                      "grpc": {
                        "external": {
                          "name": "grpc",
                          "port": 26257
                        },
                        "internal": {
                          "name": "grpc-internal",
                          "port": 26257
                        }
                      },
                      "http": {
                        "name": "http",
                        "port": 8080
                      }
                    },
                    "public": {
                      "annotations": {},
                      "labels": {
                        "app.kubernetes.io/component": "cockroachdb"
                      },
                      "type": "ClusterIP"
                    }
                  },
                  "serviceMonitor": {
                    "annotations": {},
                    "enabled": false,
                    "interval": "10s",
                    "labels": {}
                  },
                  "statefulset": {
                    "annotations": {},
                    "args": [],
                    "budget": {
                      "maxUnavailable": 1
                    },
                    "env": [],
                    "labels": {
                      "app.kubernetes.io/component": "cockroachdb"
                    },
                    "nodeAffinity": {},
                    "nodeSelector": {},
                    "podAffinity": {},
                    "podAntiAffinity": {
                      "topologyKey": "kubernetes.io/hostname",
                      "type": "soft",
                      "weight": 100
                    },
                    "podManagementPolicy": "Parallel",
                    "priorityClassName": "",
                    "replicas": 3,
                    "resources": {},
                    "secretMounts": [],
                    "tolerations": [],
                    "topologySpreadConstraints": {
                      "maxSkew": 1,
                      "topologyKey": "topology.kubernetes.io/zone",
                      "whenUnsatisfiable": "ScheduleAnyway"
                    },
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    }
                  },
                  "storage": {
                    "hostPath": "",
                    "persistentVolume": {
                      "annotations": {},
                      "enabled": true,
                      "labels": {},
                      "size": "100Gi",
                      "storageClass": ""
                    }
                  },
                  "tls": {
                    "certs": {
                      "clientRootSecret": "cockroachdb-root",
                      "nodeSecret": "cockroachdb-node",
                      "provided": false,
                      "tlsSecret": false
                    },
                    "enabled": false,
                    "init": {
                      "image": {
                        "credentials": {},
                        "pullPolicy": "IfNotPresent",
                        "repository": "cockroachdb/cockroach-k8s-request-cert",
                        "tag": "0.4"
                      }
                    },
                    "serviceAccount": {
                      "create": true,
                      "name": ""
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Database
          certified: "false"
          containerImage: quay.io/helmoperators/cockroachdb:v5.0.4
          createdAt: 2021-01-23T10-00-00Z
          description: CockroachDB Operator based on the CockroachDB helm chart
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/dmesser/cockroachdb-operator
          support: dmesser
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a CockroachDB cluster
            displayName: CockroachDB
            kind: Cockroachdb
            name: cockroachdbs.charts.operatorhub.io
            version: v1alpha1
        description: |
          CockroachDB is a scalable, survivable, strongly-consistent SQL database.
          ## About this Operator
          This Operator is based on a Helm chart for CockroachDB. It supports the same parameters like the official [CockroachDB Helm Chart](https://github.com/cockroachdb/helm-charts/tree/master/cockroachdb).

          ## Core capabilities
          * **StatefulSet** - Sets up a dynamically scalable CockroachDB cluster using a Kubernetes StatefulSet
          * **Expand Replicas** - Supports expanding the set of replicas by simply editing your object
          * **Dashboard** - Installs the CockroachDB user interface to administer your cluster. Easily expose it via an Ingress rule.
          Review all of the [confiuguration options](https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration) to best run your database instance. The example configuration is derived from the chart's [`values.yaml`](https://github.com/helm/charts/blob/master/stable/cockroachdb/values.yaml).
          ## Using the cluster
          The resulting cluster endpoint can be consumed from a `Service` that follows the pattern: `<StatefulSet-name>-public`. For example to connect using the command line client, use something like the following to obtain the name of the service:
          ```
          kubectl get service -l chart=cockroachdb-5.0.4
          NAME                                           TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)              AGE
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb          ClusterIP   None             <none>        26257/TCP,8080/TCP   24m
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public   ClusterIP   10.106.249.134   <none>        26257/TCP,8080/TCP   24m
          ```
          Then you can use the CockroachDB command line client to connect to the database cluster:
          ```
          kubectl run -it --rm cockroach-client --image=cockroachdb/cockroach --restart=Never --command -- ./cockroach sql --insecure --host example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public
          ```
          ## Before you start
          This Operator requires a cluster with PV support in order to run correctly.

          Note that for a production cluster, you will likely want to override the following parameters in [`values.yaml`](values.yaml) with your own values.

          - `statefulset.resources.requests.memory` and `statefulset.resources.limits.memory` allocate memory resources to CockroachDB pods in your cluster.
          - `conf.cache` and `conf.max-sql-memory` are memory limits that we recommend setting to 1/4 of the above resource allocation. When running CockroachDB, you must set these limits explicitly to avoid running out of memory.
          - `storage.persistentVolume.size` defaults to `100Gi` of disk space per pod, which you may increase or decrease for your use case.
          - `storage.persistentVolume.storageClass` uses the default storage class for your environment. We strongly recommend that you specify a storage class which uses an SSD.
          - `tls.enabled` must be set to `yes`/`true` to deploy in secure mode.

          For more information on overriding the `values.yaml` parameters, please see:
          > <https://www.cockroachlabs.com/docs/stable/orchestrate-cockroachdb-with-kubernetes.html#step-2-start-cockroachdb>

          If you are running in secure mode (with configuration parameter `tls.enabled` set to `yes`/`true`) and `tls.certs.provided` set to `no`/`false`), then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          When `tls.certs.provided` is set to `yes`/`true`, this chart will use certificates created outside of Kubernetes. You may want to use this if you want to use a different certificate authority from the one being used by Kubernetes or if your Kubernetes cluster doesn't fully support certificate-signing requests. To use this, first set up your certificates and load them into your Kubernetes cluster as Secrets using the commands below:

          ```
          mkdir certs
          mkdir my-safe-directory
          cockroach cert create-ca --certs-dir=certs --ca-key=my-safe-directory/ca.key
          cockroach cert create-client root --certs-dir=certs --ca-key=my-safe-directory/ca.key
          kubectl create secret generic cockroachdb-root --from-file=certs
          cockroach cert create-node --certs-dir=certs --ca-key=my-safe-directory/ca.key localhost 127.0.0.1 eerie-horse-cockroachdb-public eerie-horse-cockroachdb-public.default eerie-horse-cockroachdb-public.default.svc.cluster.local *.eerie-horse-cockroachdb *.eerie-horse-cockroachdb.default *.eerie-horse-cockroachdb.default.svc.cluster.local
          kubectl create secret generic cockroachdb-node --from-file=certs
          ```

          Set `tls.certs.tlsSecret` to `yes/true` if you make use of [cert-manager][3] in your cluster.

          [cert-manager][3] stores generated certificates in dedicated TLS secrets. Thus, they are always named:

          * `ca.crt`
          * `tls.crt`
          * `tls.key`

          On the other hand, CockroachDB also demands dedicated certificate filenames:

          * `ca.crt`
          * `node.crt`
          * `node.key`
          * `client.root.crt`
          * `client.root.key`

          By activating `tls.certs.tlsSecret` we benefit from projected secrets and convert the TLS secret filenames to their according CockroachDB filenames.

          If you are running in secure mode, then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          Confirm that all pods are `Running` successfully and init has been completed:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS      RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running     0          1m
          my-release-cockroachdb-1            1/1       Running     0          1m
          my-release-cockroachdb-2            1/1       Running     0          1m
          my-release-cockroachdb-init-k6jcr   0/1       Completed   0          1m
          ```

          Confirm that persistent volumes are created and claimed for each pod:

          ```shell
          kubectl get pv
          ```

          ```
          NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS    CLAIM                                      STORAGECLASS   REASON    AGE
          pvc-64878ebf-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-0   standard                 51s
          pvc-64945b4f-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-1   standard                 51s
          pvc-649d920d-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-2   standard                 51s
          ```

          ## Upgrading the cluster

          ### Chart version 3.0.0 and after

          Launch a temporary interactive pod and start the built-in SQL client:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          Set `cluster.preserve_downgrade_option`, where `$current_version` is the CockroachDB version currently running (e.g., `19.2`):

          ```sql
          > SET CLUSTER SETTING cluster.preserve_downgrade_option = '$current_version';
          ```

          Exit the shell and delete the temporary pod:

          ```sql
          > \q
          ```

          Kick off the upgrade process by changing the new Docker image, where `$new_version` is the CockroachDB version to which you are upgrading:

          ```shell
          kubectl delete job my-release-cockroachdb-init
          ```

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"image":{"tag":"<new version tag here>"}}}' --type merge
          ```

          Kubernetes will carry out a safe [rolling upgrade](https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets) of your CockroachDB nodes one-by-one. Monitor the cluster's pods until all have been successfully restarted:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS              RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running             0          2m
          my-release-cockroachdb-1            1/1       Running             0          3m
          my-release-cockroachdb-2            1/1       Running             0          3m
          my-release-cockroachdb-3            0/1       ContainerCreating   0          25s
          my-release-cockroachdb-init-nwjkh   0/1       ContainerCreating   0          6s
          ```

          ```shell
          kubectl get pods \
          -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.spec.containers[0].image}{"\n"}'
          ```

          ```
          my-release-cockroachdb-0    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-1    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-2    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-3    cockroachdb/cockroach:v20.2.4
          ```

          Resume normal operations. Once you are comfortable that the stability and performance of the cluster is what you'd expect post-upgrade, finalize the upgrade:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          ```sql
          > RESET CLUSTER SETTING cluster.preserve_downgrade_option;
          > \q
          ```

          ## Configuration

          The following table lists the configurable parameters of the CockroachDB chart and their default values.
          For details see the [`values.yaml`](values.yaml) file.

          | Parameter                                                 | Description                                                     | Default                                          |
          | ---------                                                 | -----------                                                     | -------                                          |
          | `clusterDomain`                                           | Cluster's default DNS domain                                    | `cluster.local`                                  |
          | `conf.attrs`                                              | CockroachDB node attributes                                     | `[]`                                             |
          | `conf.cache`                                              | Size of CockroachDB's in-memory cache                           | `25%`                                            |
          | `conf.cluster-name`                                       | Name of CockroachDB cluster                                     | `""`                                             |
          | `conf.disable-cluster-name-verification`                  | Disable CockroachDB cluster name verification                   | `no`                                             |
          | `conf.join`                                               | List of already-existing CockroachDB instances                  | `[]`                                             |
          | `conf.max-disk-temp-storage`                              | Max storage capacity for temp data                              | `0`                                              |
          | `conf.max-offset`                                         | Max allowed clock offset for CockroachDB cluster                | `500ms`                                          |
          | `conf.max-sql-memory`                                     | Max memory to use processing SQL querie                         | `25%`                                            |
          | `conf.locality`                                           | Locality attribute for this deployment                          | `""`                                             |
          | `conf.single-node`                                        | Disable CockroachDB clustering (standalone mode)                | `no`                                             |
          | `conf.sql-audit-dir`                                      | Directory for SQL audit log                                     | `""`                                             |
          | `conf.port`                                               | CockroachDB primary serving port in Pods                        | `26257`                                          |
          | `conf.http-port`                                          | CockroachDB HTTP port in Pods                                   | `8080`                                           |
          | `image.repository`                                        | Container image name                                            | `cockroachdb/cockroach`                          |
          | `image.tag`                                               | Container image tag                                             | `v20.2.4`                                        |
          | `image.pullPolicy`                                        | Container pull policy                                           | `IfNotPresent`                                   |
          | `image.credentials`                                       | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `statefulset.replicas`                                    | StatefulSet replicas number                                     | `3`                                              |
          | `statefulset.updateStrategy`                              | Update strategy for StatefulSet Pods                            | `{"type": "RollingUpdate"}`                      |
          | `statefulset.podManagementPolicy`                         | `OrderedReady`/`Parallel` Pods creation/deletion order          | `Parallel`                                       |
          | `statefulset.budget.maxUnavailable`                       | k8s PodDisruptionBudget parameter                               | `1`                                              |
          | `statefulset.args`                                        | Extra command-line arguments                                    | `[]`                                             |
          | `statefulset.env`                                         | Extra env vars                                                  | `[]`                                             |
          | `statefulset.secretMounts`                                | Additional Secrets to mount at cluster members                  | `[]`                                             |
          | `statefulset.labels`                                      | Additional labels of StatefulSet and its Pods                   | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `statefulset.annotations`                                 | Additional annotations of StatefulSet Pods                      | `{}`                                             |
          | `statefulset.nodeAffinity`                                | [Node affinity rules][2] of StatefulSet Pods                    | `{}`                                             |
          | `statefulset.podAffinity`                                 | [Inter-Pod affinity rules][1] of StatefulSet Pods               | `{}`                                             |
          | `statefulset.podAntiAffinity`                             | [Anti-affinity rules][1] of StatefulSet Pods                    | auto                                             |
          | `statefulset.podAntiAffinity.topologyKey`                 | The topologyKey for auto [anti-affinity rules][1]               | `kubernetes.io/hostname`                         |
          | `statefulset.podAntiAffinity.type`                        | Type of auto [anti-affinity rules][1]                           | `soft`                                           |
          | `statefulset.podAntiAffinity.weight`                      | Weight for `soft` auto [anti-affinity rules][1]                 | `100`                                            |
          | `statefulset.nodeSelector`                                | Node labels for StatefulSet Pods assignment                     | `{}`                                             |
          | `statefulset.priorityClassName`                           | [PriorityClassName][4] for StatefulSet Pods                     | `""`                                             |
          | `statefulset.tolerations`                                 | Node taints to tolerate by StatefulSet Pods                     | `[]`                                             |
          | `statefulset.topologySpreadConstraints`                   | [Topology Spread Constraints rules][5] of StatefulSet Pods      | auto                                             |
          | `statefulset.topologySpreadConstraints.maxSkew`           | Degree to which Pods may be unevenly distributed                | `1`                                              |
          | `statefulset.topologySpreadConstraints.topologyKey`       | The key of node labels                                          | `topology.kubernetes.io/zone`                    |
          | `statefulset.topologySpreadConstraints.whenUnsatisfiable` | `ScheduleAnyway`/`DoNotSchedule` for unsatisfiable constraints  | `ScheduleAnyway`                                 |
          | `statefulset.resources`                                   | Resource requests and limits for StatefulSet Pods               | `{}`                                             |
          | `service.ports.grpc.external.port`                        | CockroachDB primary serving port in Services                    | `26257`                                          |
          | `service.ports.grpc.external.name`                        | CockroachDB primary serving port name in Services               | `grpc`                                           |
          | `service.ports.grpc.internal.port`                        | CockroachDB inter-communication port in Services                | `26257`                                          |
          | `service.ports.grpc.internal.name`                        | CockroachDB inter-communication port name in Services           | `grpc-internal`                                  |
          | `service.ports.http.port`                                 | CockroachDB HTTP port in Services                               | `8080`                                           |
          | `service.ports.http.name`                                 | CockroachDB HTTP port name in Services                          | `http`                                           |
          | `service.public.type`                                     | Public Service type                                             | `ClusterIP`                                      |
          | `service.public.labels`                                   | Additional labels of public Service                             | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.public.annotations`                              | Additional annotations of public Service                        | `{}`                                             |
          | `service.discovery.labels`                                | Additional labels of discovery Service                          | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.discovery.annotations`                           | Additional annotations of discovery Service                     | `{}`                                             |
          | `ingress.enabled`                                         | Enable ingress resource for CockroachDB                         | `false`                                          |
          | `ingress.labels`                                          | Additional labels of Ingress                                    | `{}`                                             |
          | `ingress.annotations`                                     | Additional annotations of Ingress                               | `{}`                                             |
          | `ingress.paths`                                           | Paths for the default host                                      | `[/]`                                            |
          | `ingress.hosts`                                           | CockroachDB Ingress hostnames                                   | `[]`                                             |
          | `ingress.tls[0].hosts`                                    | CockroachDB Ingress tls hostnames                               | `nil`                                            |
          | `ingress.tls[0].secretName`                               | CockroachDB Ingress tls secret name                             | `nil`                                            |
          | `serviceMonitor.enabled`                                  | Create [ServiceMonitor](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/design.md#servicemonitor) Resource for scraping metrics using [PrometheusOperator](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/user-guides/getting-started.md#prometheus-operator)                     | `false`                                             |
          | `serviceMonitor.labels`                                   | Additional labels of ServiceMonitor                             | `{}`                                             |
          | `serviceMonitor.annotations`                              | Additional annotations of ServiceMonitor                        | `{}`                                             |
          | `serviceMonitor.interval`                                 | ServiceMonitor scrape metrics interval                          | `10s`                                            |
          | `serviceMonitor.scrapeTimeout`                            | ServiceMonitor scrape timeout                                   | `nil`                                            |
          | `storage.hostPath`                                        | Absolute path on host to store data                             | `""`                                             |
          | `storage.persistentVolume.enabled`                        | Whether to use PersistentVolume to store data                   | `yes`                                            |
          | `storage.persistentVolume.size`                           | PersistentVolume size                                           | `100Gi`                                          |
          | `storage.persistentVolume.storageClass`                   | PersistentVolume class                                          | `""`                                             |
          | `storage.persistentVolume.labels`                         | Additional labels of PersistentVolumeClaim                      | `{}`                                             |
          | `storage.persistentVolume.annotations`                    | Additional annotations of PersistentVolumeClaim                 | `{}`                                             |
          | `init.labels`                                             | Additional labels of init Job and its Pod                       | `{"app.kubernetes.io/component": "init"}`        |
          | `init.annotations`                                        | Additional labels of the Pod of init Job                        | `{}`                                             |
          | `init.affinity`                                           | [Affinity rules][2] of init Job Pod                             | `{}`                                             |
          | `init.nodeSelector`                                       | Node labels for init Job Pod assignment                         | `{}`                                             |
          | `init.tolerations`                                        | Node taints to tolerate by init Job Pod                         | `[]`                                             |
          | `init.resources`                                          | Resource requests and limits for the Pod of init Job            | `{}`                                             |
          | `tls.enabled`                                             | Whether to run securely using TLS certificates                  | `no`                                             |
          | `tls.serviceAccount.create`                               | Whether to create a new RBAC service account                    | `yes`                                            |
          | `tls.serviceAccount.name`                                 | Name of RBAC service account to use                             | `""`                                             |
          | `tls.certs.provided`                                      | Bring your own certs scenario, i.e certificates are provided    | `no`                                             |
          | `tls.certs.clientRootSecret`                              | If certs are provided, secret name for client root cert         | `cockroachdb-root`                               |
          | `tls.certs.nodeSecret`                                    | If certs are provided, secret name for node cert                | `cockroachdb-node`                               |
          | `tls.certs.tlsSecret`                                     | Own certs are stored in TLS secret                              | `no`                                             |
          | `tls.init.image.repository`                               | Image to use for requesting TLS certificates                    | `cockroachdb/cockroach-k8s-request-cert`         |
          | `tls.init.image.tag`                                      | Image tag to use for requesting TLS certificates                | `0.4`                                            |
          | `tls.init.image.pullPolicy`                               | Requesting TLS certificates container pull policy               | `IfNotPresent`                                   |
          | `tls.init.image.credentials`                              | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `networkPolicy.enabled`                                   | Enable NetworkPolicy for CockroachDB's Pods                     | `no`                                             |
          | `networkPolicy.ingress.grpc`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |
          | `networkPolicy.ingress.http`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |


          Override the default parameters using the `CockroachDB` custom resource.

          ## Deep dive

          ### Connecting to the CockroachDB cluster

          Once you've created the cluster, you can start talking to it by connecting to its `-public` Service. CockroachDB is PostgreSQL wire protocol compatible, so there's a [wide variety of supported clients](https://www.cockroachlabs.com/docs/install-client-drivers.html). As an example, we'll open up a SQL shell using CockroachDB's built-in shell and play around with it a bit, like this (likely needing to replace `my-release-cockroachdb-public` with the name of the `-public` Service that was created with your installed chart):

          ```shell
          kubectl run cockroach-client --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host my-release-cockroachdb-public
          ```

          ```
          Waiting for pod default/cockroach-client to be running, status is Pending,
          pod ready: false
          If you don't see a command prompt, try pressing enter.
          root@my-release-cockroachdb-public:26257> SHOW DATABASES;
          +--------------------+
          |      Database      |
          +--------------------+
          | information_schema |
          | pg_catalog         |
          | system             |
          +--------------------+
          (3 rows)
          root@my-release-cockroachdb-public:26257> CREATE DATABASE bank;
          CREATE DATABASE
          root@my-release-cockroachdb-public:26257> CREATE TABLE bank.accounts (id INT
          PRIMARY KEY, balance DECIMAL);
          CREATE TABLE
          root@my-release-cockroachdb-public:26257> INSERT INTO bank.accounts VALUES
          (1234, 10000.50);
          INSERT 1
          root@my-release-cockroachdb-public:26257> SELECT * FROM bank.accounts;
          +------+---------+
          |  id  | balance |
          +------+---------+
          | 1234 | 10000.5 |
          +------+---------+
          (1 row)
          root@my-release-cockroachdb-public:26257> \q
          Waiting for pod default/cockroach-client to terminate, status is Running
          pod "cockroach-client" deleted
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          ### Cluster health

          Because our pod spec includes regular health checks of the CockroachDB processes, simply running `kubectl get pods` and looking at the `STATUS` column is sufficient to determine the health of each instance in the cluster.

          If you want more detailed information about the cluster, the best place to look is the Admin UI.

          ### Accessing the Admin UI

          If you want to see information about how the cluster is doing, you can try pulling up the CockroachDB Admin UI by port-forwarding from your local machine to one of the pods (replacing `my-release-cockroachdb-0` with the name of one of your pods:

          ```shell
          kubectl port-forward my-release-cockroachdb-0 8080
          ```

          You should then be able to access the Admin UI by visiting <http://localhost:8080/> in your web browser.

          ### Failover

          If any CockroachDB member fails, it is restarted or recreated automatically by the Kubernetes infrastructure, and will re-join the cluster automatically when it comes back up. You can test this scenario by killing any of the CockroachDB pods:

          ```shell
          kubectl delete pod my-release-cockroachdb-1
          ```

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          After a while:

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-1  1/1       Running       0          20s
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          You can check the state of re-joining from the new pod's logs:

          ```shell
          kubectl logs my-release-cockroachdb-1
          ```

          ```
          [...]
          I161028 19:32:09.754026 1 server/node.go:586  [n1] node connected via gossip and
          verified as part of cluster {"35ecbc27-3f67-4e7d-9b8f-27c31aae17d6"}
          [...]
          cockroachdb-0.my-release-cockroachdb.default.svc.cluster.local:26257
          build:      beta-20161027-55-gd2d3c7f @ 2016/10/28 19:27:25 (go1.7.3)
          admin:      http://0.0.0.0:8080
          sql:
          postgresql://root@my-release-cockroachdb-1.my-release-cockroachdb.default.svc.cluster.local:26257?sslmode=disable
          logs:       cockroach-data/logs
          store[0]:   path=cockroach-data
          status:     restarted pre-existing node
          clusterID:  {35ecbc27-3f67-4e7d-9b8f-27c31aae17d6}
          nodeID:     2
          [...]
          ```

          ### NetworkPolicy

          To enable NetworkPolicy for CockroachDB, install [a networking plugin that implements the Kubernetes NetworkPolicy spec](https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy#before-you-begin), and set `networkPolicy.enabled` to `yes`/`true`.

          For Kubernetes v1.5 & v1.6, you must also turn on NetworkPolicy by setting the `DefaultDeny` Namespace annotation. Note: this will enforce policy for _all_ pods in the Namespace:

          ```shell
          kubectl annotate namespace default "net.beta.kubernetes.io/network-policy={\"ingress\":{\"isolation\":\"DefaultDeny\"}}"
          ```

          For more precise policy, set `networkPolicy.ingress.grpc` and `networkPolicy.ingress.http` rules. This will only allow pods that match the provided rules to connect to CockroachDB.

          ### Scaling

          Scaling should be managed via the `helm upgrade` command. After resizing your cluster on your cloud environment (e.g., GKE or EKS), run the following command to add a pod. This assumes you scaled from 3 to 4 nodes:

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"statefulset":{"replicas":"4"}}}' --type merge
          ```

          Note, that if you are running in secure mode (`tls.enabled` is `yes`/`true`) and increase the size of your cluster, you will also have to approve the CSR (certificate-signing request) of each new node (using `kubectl get csr` and `kubectl certificate approve`).

          [1]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#inter-pod-affinity-and-anti-affinity
          [2]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#node-affinity
          [3]: https://cert-manager.io/
          [4]: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass
          [5]: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
        displayName: CockroachDB Helm Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cockroach
        - cockroachdb
        links:
        - name: Helm Chart Source
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb
        - name: Configuration Options
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration
        - name: CockroachDB Source
          url: https://github.com/cockroachdb/cockroach
        maintainers:
        - email: dmesser@redhat.com
          name: Daniel Messer
        maturity: stable
        minKubeVersion: 1.8.0
        provider:
          name: Helm Community
          url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
        relatedImages:
        - quay.io/openshift-community-operators/cockroachdb@sha256:f42337e7b85a46d83c94694638e2312e10ca16a03542399a65ba783c94a32b63
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/helmoperators/cockroachdb:v5.0.4
        version: 5.0.4
      entries:
      - name: cockroachdb.v5.0.4
        version: 5.0.4
      - name: cockroachdb.v5.0.3
        version: 5.0.3
      name: stable-5.x
    - currentCSV: cockroachdb.v6.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.operatorhub.io/v1alpha1",
                "kind": "Cockroachdb",
                "metadata": {
                  "name": "cockroachdb-sample"
                },
                "spec": {"image":{"repository":"cockroachdb/cockroach","tag":"v22.2.4","pullPolicy":"IfNotPresent","credentials":{}},"labels":{},"clusterDomain":"cluster.local","conf":{"attrs":[],"cache":"25%","cluster-name":"","disable-cluster-name-verification":false,"join":[],"log":{"enabled":false,"config":{}},"logtostderr":"INFO","max-sql-memory":"25%","locality":"","single-node":false,"sql-audit-dir":"","port":26257,"http-port":8080,"path":"cockroach-data","store":{"enabled":false,"type":null,"size":null,"attrs":null}},"statefulset":{"replicas":3,"updateStrategy":{"type":"RollingUpdate"},"podManagementPolicy":"Parallel","budget":{"maxUnavailable":1},"args":[],"env":[],"secretMounts":[],"labels":{"app.kubernetes.io/component":"cockroachdb"},"annotations":{},"nodeAffinity":{},"podAffinity":{},"podAntiAffinity":{"topologyKey":"kubernetes.io/hostname","type":"soft","weight":100},"nodeSelector":{},"priorityClassName":"","tolerations":[],"topologySpreadConstraints":{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"},"resources":{},"customLivenessProbe":{},"customReadinessProbe":{}},"service":{"ports":{"grpc":{"external":{"port":26257,"name":"grpc"},"internal":{"port":26257,"name":"grpc-internal"}},"http":{"port":8080,"name":"http"}},"public":{"type":"ClusterIP","labels":{"app.kubernetes.io/component":"cockroachdb"},"annotations":{}},"discovery":{"labels":{"app.kubernetes.io/component":"cockroachdb"},"annotations":{}}},"ingress":{"enabled":false,"labels":{},"annotations":{},"paths":["/"],"hosts":[],"tls":[]},"prometheus":{"enabled":true},"serviceMonitor":{"enabled":false,"labels":{},"annotations":{},"interval":"10s","namespaced":false},"storage":{"hostPath":"","persistentVolume":{"enabled":true,"size":"100Gi","storageClass":"","labels":{},"annotations":{}}},"init":{"labels":{"app.kubernetes.io/component":"init"},"jobAnnotations":{},"annotations":{},"affinity":{},"nodeSelector":{},"tolerations":[],"resources":{},"provisioning":{"enabled":false,"clusterSettings":null,"users":[],"databases":[]}},"tls":{"enabled":true,"serviceAccount":{"create":true,"name":""},"copyCerts":{"image":"busybox"},"certs":{"provided":false,"clientRootSecret":"cockroachdb-root","nodeSecret":"cockroachdb-node","tlsSecret":false,"selfSigner":{"enabled":true,"caProvided":false,"caSecret":"","minimumCertDuration":"624h","caCertDuration":"43800h","caCertExpiryWindow":"648h","clientCertDuration":"672h","clientCertExpiryWindow":"48h","nodeCertDuration":"8760h","nodeCertExpiryWindow":"168h","rotateCerts":true,"readinessWait":"30s","podUpdateTimeout":"2m"},"certManager":false,"certManagerIssuer":{"group":"cert-manager.io","kind":"Issuer","name":"cockroachdb","clientCertDuration":"672h","clientCertExpiryWindow":"48h","nodeCertDuration":"8760h","nodeCertExpiryWindow":"168h"},"useCertManagerV1CRDs":false},"selfSigner":{"image":{"repository":"cockroachlabs-helm-charts/cockroach-self-signer-cert","tag":"1.3","pullPolicy":"IfNotPresent","credentials":{},"registry":"gcr.io"}}},"networkPolicy":{"enabled":false,"ingress":{"grpc":[],"http":[]}},"iap":{"enabled":false}}
              }
            ]
          capabilities: Basic Install
          categories: Database
          certified: "false"
          containerImage: quay.io/cockroachdb/cockroach-helm-operator:6.0.0
          createdAt: 2021-01-23T10-00-00Z
          description: CockroachDB Operator based on the CockroachDB helm chart
          olm.skipRange: <6.0.0
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/cockroachdb/helm-charts
          support: CockroachDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a CockroachDB cluster
            displayName: CockroachDB
            kind: Cockroachdb
            name: cockroachdbs.charts.operatorhub.io
            version: v1alpha1
        description: |
          CockroachDB is a scalable, survivable, strongly-consistent SQL database.
          ## About this Operator
          This Operator is based on a Helm chart for CockroachDB. It supports reconfiguration for some parameters, but notably does not handle scale down of the replica count in a seamless manner. Scale up works great.

          ## Core capabilities
          * **StatefulSet** - Sets up a dynamically scalable CockroachDB cluster using a Kubernetes StatefulSet
          * **Expand Replicas** - Supports expanding the set of replicas by simply editing your object
          * **Dashboard** - Installs the CockroachDB user interface to administer your cluster. Easily expose it via an Ingress rule.
          Review all of the [confiuguration options](https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration) to best run your database instance. The example configuration is derived from the chart's [`values.yaml`](https://github.com/helm/charts/blob/master/stable/cockroachdb/values.yaml).
          ## Using the cluster
          The resulting cluster endpoint can be consumed from a `Service` that follows the pattern: `<StatefulSet-name>-public`. For example to connect using the command line client, use something like the following to obtain the name of the service:
          ```
          kubectl get service -l chart=cockroachdb-6.0.0
          NAME                                           TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)              AGE
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb          ClusterIP   None             <none>        26257/TCP,8080/TCP   24m
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public   ClusterIP   10.106.249.134   <none>        26257/TCP,8080/TCP   24m
          ```
          Then you can use the CockroachDB command line client to connect to the database cluster:
          ```
          kubectl run -it --rm cockroach-client --image=cockroachdb/cockroach --restart=Never --command -- ./cockroach sql --insecure --host example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public
          ```
          ## Before you start
          This Operator requires a cluster with PV support in order to run correctly.

          Note that for a production cluster, you will likely want to override the following parameters in [`values.yaml`](values.yaml) with your own values.

          - `statefulset.resources.requests.memory` and `statefulset.resources.limits.memory` allocate memory resources to CockroachDB pods in your cluster.
          - `conf.cache` and `conf.max-sql-memory` are memory limits that we recommend setting to 1/4 of the above resource allocation. When running CockroachDB, you must set these limits explicitly to avoid running out of memory.
          - `storage.persistentVolume.size` defaults to `100Gi` of disk space per pod, which you may increase or decrease for your use case.
          - `storage.persistentVolume.storageClass` uses the default storage class for your environment. We strongly recommend that you specify a storage class which uses an SSD.
          - `tls.enabled` must be set to `yes`/`true` to deploy in secure mode.

          For more information on overriding the `values.yaml` parameters, please see:
          > <https://www.cockroachlabs.com/docs/stable/orchestrate-cockroachdb-with-kubernetes.html#step-2-start-cockroachdb>

          If you are running in secure mode (with configuration parameter `tls.enabled` set to `yes`/`true`) and `tls.certs.provided` set to `no`/`false`), then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          When `tls.certs.provided` is set to `yes`/`true`, this chart will use certificates created outside of Kubernetes. You may want to use this if you want to use a different certificate authority from the one being used by Kubernetes or if your Kubernetes cluster doesn't fully support certificate-signing requests. To use this, first set up your certificates and load them into your Kubernetes cluster as Secrets using the commands below:

          ```
          mkdir certs
          mkdir my-safe-directory
          cockroach cert create-ca --certs-dir=certs --ca-key=my-safe-directory/ca.key
          cockroach cert create-client root --certs-dir=certs --ca-key=my-safe-directory/ca.key
          kubectl create secret generic cockroachdb-root --from-file=certs
          cockroach cert create-node --certs-dir=certs --ca-key=my-safe-directory/ca.key localhost 127.0.0.1 eerie-horse-cockroachdb-public eerie-horse-cockroachdb-public.default eerie-horse-cockroachdb-public.default.svc.cluster.local *.eerie-horse-cockroachdb *.eerie-horse-cockroachdb.default *.eerie-horse-cockroachdb.default.svc.cluster.local
          kubectl create secret generic cockroachdb-node --from-file=certs
          ```

          Set `tls.certs.tlsSecret` to `yes/true` if you make use of [cert-manager][3] in your cluster.

          [cert-manager][3] stores generated certificates in dedicated TLS secrets. Thus, they are always named:

          * `ca.crt`
          * `tls.crt`
          * `tls.key`

          On the other hand, CockroachDB also demands dedicated certificate filenames:

          * `ca.crt`
          * `node.crt`
          * `node.key`
          * `client.root.crt`
          * `client.root.key`

          By activating `tls.certs.tlsSecret` we benefit from projected secrets and convert the TLS secret filenames to their according CockroachDB filenames.

          If you are running in secure mode, then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          Confirm that all pods are `Running` successfully and init has been completed:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS      RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running     0          1m
          my-release-cockroachdb-1            1/1       Running     0          1m
          my-release-cockroachdb-2            1/1       Running     0          1m
          my-release-cockroachdb-init-k6jcr   0/1       Completed   0          1m
          ```

          Confirm that persistent volumes are created and claimed for each pod:

          ```shell
          kubectl get pv
          ```

          ```
          NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS    CLAIM                                      STORAGECLASS   REASON    AGE
          pvc-64878ebf-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-0   standard                 51s
          pvc-64945b4f-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-1   standard                 51s
          pvc-649d920d-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-2   standard                 51s
          ```

          ## Upgrading the cluster

          ### Chart version 3.0.0 and after

          Launch a temporary interactive pod and start the built-in SQL client:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          Set `cluster.preserve_downgrade_option`, where `$current_version` is the CockroachDB version currently running (e.g., `19.2`):

          ```sql
          > SET CLUSTER SETTING cluster.preserve_downgrade_option = '$current_version';
          ```

          Exit the shell and delete the temporary pod:

          ```sql
          > \q
          ```

          Kick off the upgrade process by changing the new Docker image, where `$new_version` is the CockroachDB version to which you are upgrading:

          ```shell
          kubectl delete job my-release-cockroachdb-init
          ```

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"image":{"tag":"<new version tag here>"}}}' --type merge
          ```

          Kubernetes will carry out a safe [rolling upgrade](https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets) of your CockroachDB nodes one-by-one. Monitor the cluster's pods until all have been successfully restarted:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS              RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running             0          2m
          my-release-cockroachdb-1            1/1       Running             0          3m
          my-release-cockroachdb-2            1/1       Running             0          3m
          my-release-cockroachdb-3            0/1       ContainerCreating   0          25s
          my-release-cockroachdb-init-nwjkh   0/1       ContainerCreating   0          6s
          ```

          ```shell
          kubectl get pods \
          -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.spec.containers[0].image}{"\n"}'
          ```

          ```
          my-release-cockroachdb-0    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-1    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-2    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-3    cockroachdb/cockroach:v20.2.4
          ```

          Resume normal operations. Once you are comfortable that the stability and performance of the cluster is what you'd expect post-upgrade, finalize the upgrade:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          ```sql
          > RESET CLUSTER SETTING cluster.preserve_downgrade_option;
          > \q
          ```

          ## Configuration

          The following table lists the configurable parameters of the CockroachDB chart and their default values.
          For details see the [`values.yaml`](values.yaml) file.

          | Parameter                                                 | Description                                                     | Default                                          |
          | ---------                                                 | -----------                                                     | -------                                          |
          | `clusterDomain`                                           | Cluster's default DNS domain                                    | `cluster.local`                                  |
          | `conf.attrs`                                              | CockroachDB node attributes                                     | `[]`                                             |
          | `conf.cache`                                              | Size of CockroachDB's in-memory cache                           | `25%`                                            |
          | `conf.cluster-name`                                       | Name of CockroachDB cluster                                     | `""`                                             |
          | `conf.disable-cluster-name-verification`                  | Disable CockroachDB cluster name verification                   | `no`                                             |
          | `conf.join`                                               | List of already-existing CockroachDB instances                  | `[]`                                             |
          | `conf.max-disk-temp-storage`                              | Max storage capacity for temp data                              | `0`                                              |
          | `conf.max-offset`                                         | Max allowed clock offset for CockroachDB cluster                | `500ms`                                          |
          | `conf.max-sql-memory`                                     | Max memory to use processing SQL querie                         | `25%`                                            |
          | `conf.locality`                                           | Locality attribute for this deployment                          | `""`                                             |
          | `conf.single-node`                                        | Disable CockroachDB clustering (standalone mode)                | `no`                                             |
          | `conf.sql-audit-dir`                                      | Directory for SQL audit log                                     | `""`                                             |
          | `conf.port`                                               | CockroachDB primary serving port in Pods                        | `26257`                                          |
          | `conf.http-port`                                          | CockroachDB HTTP port in Pods                                   | `8080`                                           |
          | `image.repository`                                        | Container image name                                            | `cockroachdb/cockroach`                          |
          | `image.tag`                                               | Container image tag                                             | `v20.2.4`                                        |
          | `image.pullPolicy`                                        | Container pull policy                                           | `IfNotPresent`                                   |
          | `image.credentials`                                       | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `statefulset.replicas`                                    | StatefulSet replicas number                                     | `3`                                              |
          | `statefulset.updateStrategy`                              | Update strategy for StatefulSet Pods                            | `{"type": "RollingUpdate"}`                      |
          | `statefulset.podManagementPolicy`                         | `OrderedReady`/`Parallel` Pods creation/deletion order          | `Parallel`                                       |
          | `statefulset.budget.maxUnavailable`                       | k8s PodDisruptionBudget parameter                               | `1`                                              |
          | `statefulset.args`                                        | Extra command-line arguments                                    | `[]`                                             |
          | `statefulset.env`                                         | Extra env vars                                                  | `[]`                                             |
          | `statefulset.secretMounts`                                | Additional Secrets to mount at cluster members                  | `[]`                                             |
          | `statefulset.labels`                                      | Additional labels of StatefulSet and its Pods                   | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `statefulset.annotations`                                 | Additional annotations of StatefulSet Pods                      | `{}`                                             |
          | `statefulset.nodeAffinity`                                | [Node affinity rules][2] of StatefulSet Pods                    | `{}`                                             |
          | `statefulset.podAffinity`                                 | [Inter-Pod affinity rules][1] of StatefulSet Pods               | `{}`                                             |
          | `statefulset.podAntiAffinity`                             | [Anti-affinity rules][1] of StatefulSet Pods                    | auto                                             |
          | `statefulset.podAntiAffinity.topologyKey`                 | The topologyKey for auto [anti-affinity rules][1]               | `kubernetes.io/hostname`                         |
          | `statefulset.podAntiAffinity.type`                        | Type of auto [anti-affinity rules][1]                           | `soft`                                           |
          | `statefulset.podAntiAffinity.weight`                      | Weight for `soft` auto [anti-affinity rules][1]                 | `100`                                            |
          | `statefulset.nodeSelector`                                | Node labels for StatefulSet Pods assignment                     | `{}`                                             |
          | `statefulset.priorityClassName`                           | [PriorityClassName][4] for StatefulSet Pods                     | `""`                                             |
          | `statefulset.tolerations`                                 | Node taints to tolerate by StatefulSet Pods                     | `[]`                                             |
          | `statefulset.topologySpreadConstraints`                   | [Topology Spread Constraints rules][5] of StatefulSet Pods      | auto                                             |
          | `statefulset.topologySpreadConstraints.maxSkew`           | Degree to which Pods may be unevenly distributed                | `1`                                              |
          | `statefulset.topologySpreadConstraints.topologyKey`       | The key of node labels                                          | `topology.kubernetes.io/zone`                    |
          | `statefulset.topologySpreadConstraints.whenUnsatisfiable` | `ScheduleAnyway`/`DoNotSchedule` for unsatisfiable constraints  | `ScheduleAnyway`                                 |
          | `statefulset.resources`                                   | Resource requests and limits for StatefulSet Pods               | `{}`                                             |
          | `service.ports.grpc.external.port`                        | CockroachDB primary serving port in Services                    | `26257`                                          |
          | `service.ports.grpc.external.name`                        | CockroachDB primary serving port name in Services               | `grpc`                                           |
          | `service.ports.grpc.internal.port`                        | CockroachDB inter-communication port in Services                | `26257`                                          |
          | `service.ports.grpc.internal.name`                        | CockroachDB inter-communication port name in Services           | `grpc-internal`                                  |
          | `service.ports.http.port`                                 | CockroachDB HTTP port in Services                               | `8080`                                           |
          | `service.ports.http.name`                                 | CockroachDB HTTP port name in Services                          | `http`                                           |
          | `service.public.type`                                     | Public Service type                                             | `ClusterIP`                                      |
          | `service.public.labels`                                   | Additional labels of public Service                             | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.public.annotations`                              | Additional annotations of public Service                        | `{}`                                             |
          | `service.discovery.labels`                                | Additional labels of discovery Service                          | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.discovery.annotations`                           | Additional annotations of discovery Service                     | `{}`                                             |
          | `ingress.enabled`                                         | Enable ingress resource for CockroachDB                         | `false`                                          |
          | `ingress.labels`                                          | Additional labels of Ingress                                    | `{}`                                             |
          | `ingress.annotations`                                     | Additional annotations of Ingress                               | `{}`                                             |
          | `ingress.paths`                                           | Paths for the default host                                      | `[/]`                                            |
          | `ingress.hosts`                                           | CockroachDB Ingress hostnames                                   | `[]`                                             |
          | `ingress.tls[0].hosts`                                    | CockroachDB Ingress tls hostnames                               | `nil`                                            |
          | `ingress.tls[0].secretName`                               | CockroachDB Ingress tls secret name                             | `nil`                                            |
          | `serviceMonitor.enabled`                                  | Create [ServiceMonitor](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/design.md#servicemonitor) Resource for scraping metrics using [PrometheusOperator](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/user-guides/getting-started.md#prometheus-operator)                     | `false`                                             |
          | `serviceMonitor.labels`                                   | Additional labels of ServiceMonitor                             | `{}`                                             |
          | `serviceMonitor.annotations`                              | Additional annotations of ServiceMonitor                        | `{}`                                             |
          | `serviceMonitor.interval`                                 | ServiceMonitor scrape metrics interval                          | `10s`                                            |
          | `serviceMonitor.scrapeTimeout`                            | ServiceMonitor scrape timeout                                   | `nil`                                            |
          | `storage.hostPath`                                        | Absolute path on host to store data                             | `""`                                             |
          | `storage.persistentVolume.enabled`                        | Whether to use PersistentVolume to store data                   | `yes`                                            |
          | `storage.persistentVolume.size`                           | PersistentVolume size                                           | `100Gi`                                          |
          | `storage.persistentVolume.storageClass`                   | PersistentVolume class                                          | `""`                                             |
          | `storage.persistentVolume.labels`                         | Additional labels of PersistentVolumeClaim                      | `{}`                                             |
          | `storage.persistentVolume.annotations`                    | Additional annotations of PersistentVolumeClaim                 | `{}`                                             |
          | `init.labels`                                             | Additional labels of init Job and its Pod                       | `{"app.kubernetes.io/component": "init"}`        |
          | `init.annotations`                                        | Additional labels of the Pod of init Job                        | `{}`                                             |
          | `init.affinity`                                           | [Affinity rules][2] of init Job Pod                             | `{}`                                             |
          | `init.nodeSelector`                                       | Node labels for init Job Pod assignment                         | `{}`                                             |
          | `init.tolerations`                                        | Node taints to tolerate by init Job Pod                         | `[]`                                             |
          | `init.resources`                                          | Resource requests and limits for the Pod of init Job            | `{}`                                             |
          | `tls.enabled`                                             | Whether to run securely using TLS certificates                  | `no`                                             |
          | `tls.serviceAccount.create`                               | Whether to create a new RBAC service account                    | `yes`                                            |
          | `tls.serviceAccount.name`                                 | Name of RBAC service account to use                             | `""`                                             |
          | `tls.certs.provided`                                      | Bring your own certs scenario, i.e certificates are provided    | `no`                                             |
          | `tls.certs.clientRootSecret`                              | If certs are provided, secret name for client root cert         | `cockroachdb-root`                               |
          | `tls.certs.nodeSecret`                                    | If certs are provided, secret name for node cert                | `cockroachdb-node`                               |
          | `tls.certs.tlsSecret`                                     | Own certs are stored in TLS secret                              | `no`                                             |
          | `tls.init.image.repository`                               | Image to use for requesting TLS certificates                    | `cockroachdb/cockroach-k8s-request-cert`         |
          | `tls.init.image.tag`                                      | Image tag to use for requesting TLS certificates                | `0.4`                                            |
          | `tls.init.image.pullPolicy`                               | Requesting TLS certificates container pull policy               | `IfNotPresent`                                   |
          | `tls.init.image.credentials`                              | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `networkPolicy.enabled`                                   | Enable NetworkPolicy for CockroachDB's Pods                     | `no`                                             |
          | `networkPolicy.ingress.grpc`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |
          | `networkPolicy.ingress.http`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |


          Override the default parameters using the `CockroachDB` custom resource.

          ## Deep dive

          ### Connecting to the CockroachDB cluster

          Once you've created the cluster, you can start talking to it by connecting to its `-public` Service. CockroachDB is PostgreSQL wire protocol compatible, so there's a [wide variety of supported clients](https://www.cockroachlabs.com/docs/install-client-drivers.html). As an example, we'll open up a SQL shell using CockroachDB's built-in shell and play around with it a bit, like this (likely needing to replace `my-release-cockroachdb-public` with the name of the `-public` Service that was created with your installed chart):

          ```shell
          kubectl run cockroach-client --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host my-release-cockroachdb-public
          ```

          ```
          Waiting for pod default/cockroach-client to be running, status is Pending,
          pod ready: false
          If you don't see a command prompt, try pressing enter.
          root@my-release-cockroachdb-public:26257> SHOW DATABASES;
          +--------------------+
          |      Database      |
          +--------------------+
          | information_schema |
          | pg_catalog         |
          | system             |
          +--------------------+
          (3 rows)
          root@my-release-cockroachdb-public:26257> CREATE DATABASE bank;
          CREATE DATABASE
          root@my-release-cockroachdb-public:26257> CREATE TABLE bank.accounts (id INT
          PRIMARY KEY, balance DECIMAL);
          CREATE TABLE
          root@my-release-cockroachdb-public:26257> INSERT INTO bank.accounts VALUES
          (1234, 10000.50);
          INSERT 1
          root@my-release-cockroachdb-public:26257> SELECT * FROM bank.accounts;
          +------+---------+
          |  id  | balance |
          +------+---------+
          | 1234 | 10000.5 |
          +------+---------+
          (1 row)
          root@my-release-cockroachdb-public:26257> \q
          Waiting for pod default/cockroach-client to terminate, status is Running
          pod "cockroach-client" deleted
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          ### Cluster health

          Because our pod spec includes regular health checks of the CockroachDB processes, simply running `kubectl get pods` and looking at the `STATUS` column is sufficient to determine the health of each instance in the cluster.

          If you want more detailed information about the cluster, the best place to look is the Admin UI.

          ### Accessing the Admin UI

          If you want to see information about how the cluster is doing, you can try pulling up the CockroachDB Admin UI by port-forwarding from your local machine to one of the pods (replacing `my-release-cockroachdb-0` with the name of one of your pods:

          ```shell
          kubectl port-forward my-release-cockroachdb-0 8080
          ```

          You should then be able to access the Admin UI by visiting <http://localhost:8080/> in your web browser.

          ### Failover

          If any CockroachDB member fails, it is restarted or recreated automatically by the Kubernetes infrastructure, and will re-join the cluster automatically when it comes back up. You can test this scenario by killing any of the CockroachDB pods:

          ```shell
          kubectl delete pod my-release-cockroachdb-1
          ```

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          After a while:

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-1  1/1       Running       0          20s
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          You can check the state of re-joining from the new pod's logs:

          ```shell
          kubectl logs my-release-cockroachdb-1
          ```

          ```
          [...]
          I161028 19:32:09.754026 1 server/node.go:586  [n1] node connected via gossip and
          verified as part of cluster {"35ecbc27-3f67-4e7d-9b8f-27c31aae17d6"}
          [...]
          cockroachdb-0.my-release-cockroachdb.default.svc.cluster.local:26257
          build:      beta-20161027-55-gd2d3c7f @ 2016/10/28 19:27:25 (go1.7.3)
          admin:      http://0.0.0.0:8080
          sql:
          postgresql://root@my-release-cockroachdb-1.my-release-cockroachdb.default.svc.cluster.local:26257?sslmode=disable
          logs:       cockroach-data/logs
          store[0]:   path=cockroach-data
          status:     restarted pre-existing node
          clusterID:  {35ecbc27-3f67-4e7d-9b8f-27c31aae17d6}
          nodeID:     2
          [...]
          ```

          ### NetworkPolicy

          To enable NetworkPolicy for CockroachDB, install [a networking plugin that implements the Kubernetes NetworkPolicy spec](https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy#before-you-begin), and set `networkPolicy.enabled` to `yes`/`true`.

          For Kubernetes v1.5 & v1.6, you must also turn on NetworkPolicy by setting the `DefaultDeny` Namespace annotation. Note: this will enforce policy for _all_ pods in the Namespace:

          ```shell
          kubectl annotate namespace default "net.beta.kubernetes.io/network-policy={\"ingress\":{\"isolation\":\"DefaultDeny\"}}"
          ```

          For more precise policy, set `networkPolicy.ingress.grpc` and `networkPolicy.ingress.http` rules. This will only allow pods that match the provided rules to connect to CockroachDB.

          ### Scaling

          Scaling should be managed via the `helm upgrade` command. After resizing your cluster on your cloud environment (e.g., GKE or EKS), run the following command to add a pod. This assumes you scaled from 3 to 4 nodes:

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"statefulset":{"replicas":"4"}}}' --type merge
          ```

          Note, that if you are running in secure mode (`tls.enabled` is `yes`/`true`) and increase the size of your cluster, you will also have to approve the CSR (certificate-signing request) of each new node (using `kubectl get csr` and `kubectl certificate approve`).

          [1]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#inter-pod-affinity-and-anti-affinity
          [2]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#node-affinity
          [3]: https://cert-manager.io/
          [4]: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass
          [5]: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
        displayName: CockroachDB Helm Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cockroach
        - cockroachdb
        links:
        - name: Helm Chart Source
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb
        - name: Configuration Options
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration
        - name: CockroachDB Source
          url: https://github.com/cockroachdb/cockroach
        maintainers:
        - email: yandu@cockroachlabs.com
          name: Yandu Oppacher
        maturity: stable
        minKubeVersion: 1.8.0
        provider:
          name: Helm Community
          url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/cockroachdb/cockroach-helm-operator:6.0.0
        - quay.io/openshift-community-operators/cockroachdb@sha256:d3016b1507515fc7712f9c47fd9082baf9ccb070aaab58ed0ef6e5abdedde8ba
        version: 6.0.0
      entries:
      - name: cockroachdb.v6.0.0
        version: 6.0.0
      name: stable-v6.x
    defaultChannel: stable-v6.x
    packageName: cockroachdb
    provider:
      name: Helm Community
      url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OnGres
      provider-url: https://ongres.com
    name: stackgres-community
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stackgres-community.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - quay.io/community-operator-pipeline-prod/stackgres-community@sha256:d6a2bb38278da721b32ea1d84f613cd38fe9e3d570c1f5d3c81e1d812e3e6b09
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        version: 1.18.3
      entries:
      - name: stackgres-community.v1.18.3
        version: 1.18.3
      - name: stackgres-community.v1.18.2
        version: 1.18.2
      - name: stackgres-community.v1.18.1
        version: 1.18.1
      name: candidate
    - currentCSV: stackgres-community.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/stackgres-community@sha256:d6a2bb38278da721b32ea1d84f613cd38fe9e3d570c1f5d3c81e1d812e3e6b09
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        version: 1.18.3
      entries:
      - name: stackgres-community.v1.18.3
        version: 1.18.3
      - name: stackgres-community.v1.18.2
        version: 1.18.2
      - name: stackgres-community.v1.18.1
        version: 1.18.1
      name: fast
    - currentCSV: stackgres-community.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - quay.io/community-operator-pipeline-prod/stackgres-community@sha256:d6a2bb38278da721b32ea1d84f613cd38fe9e3d570c1f5d3c81e1d812e3e6b09
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        version: 1.18.3
      entries:
      - name: stackgres-community.v1.18.3
        version: 1.18.3
      - name: stackgres-community.v1.18.2
        version: 1.18.2
      - name: stackgres-community.v1.18.1
        version: 1.18.1
      name: stable
    defaultChannel: stable
    packageName: stackgres-community
    provider:
      name: OnGres
      url: https://ongres.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: mtv-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mtv-operator.v2.10.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "ForkliftController",
                "metadata": {
                  "name": "forklift-controller",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "feature_ui_plugin": "true",
                  "feature_validation": "true",
                  "feature_volume_populator": "true"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Hook",
                "metadata": {
                  "name": "example-hook",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "image": "quay.io/konveyor/hook-runner",
                  "playbook": "\u003cbase64-encoded-playbook\u003e"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Host",
                "metadata": {
                  "name": "example-host",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "id": "",
                  "ipAddress": "",
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Migration",
                "metadata": {
                  "name": "example-migration",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "plan": {
                    "name": "example-plan",
                    "namespace": "openshift-mtv"
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "NetworkMap",
                "metadata": {
                  "name": "example-networkmap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "name": "",
                        "namespace": "",
                        "type": "pod"
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OpenstackVolumePopulator",
                "metadata": {
                  "name": "example-openstack",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "identityUrl": "",
                  "imageId": "",
                  "secretName": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OvirtVolumePopulator",
                "metadata": {
                  "name": "example-ovirt-imageio",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "diskId": "",
                  "engineSecretName": "",
                  "engineUrl": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Plan",
                "metadata": {
                  "name": "example-plan",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "provider": {
                    "destination": {
                      "name": "",
                      "namespace": ""
                    },
                    "source": {
                      "name": "",
                      "namespace": ""
                    }
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                  "name": "example-provider",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "secret": {
                    "name": "",
                    "namespace": ""
                  },
                  "type": "vmware",
                  "url": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "StorageMap",
                "metadata": {
                  "name": "example-storagemap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "storageClass": ""
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "true"
          containerImage: registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:f364639313bdcd065a5f6c71f74c7c7cf920e2919e1342e6b184780455c8fb6e
          createdAt: "2025-12-16T16:35:23Z"
          description: Facilitates migration of VM workloads to OpenShift Virtualization
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/fipsmode: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "forklift.konveyor.io/v1beta1",
              "kind": "ForkliftController",
              "metadata": {
                "name": "forklift-controller",
                "namespace": "openshift-mtv"
              },
              "spec": {
                "feature_ui_plugin": "true",
                "feature_validation": "true",
                "feature_volume_populator": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mtv
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/kubev2v/forklift
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VM migration controller
            displayName: ForkliftController
            kind: ForkliftController
            name: forkliftcontrollers.forklift.konveyor.io
            version: v1beta1
          - description: Hook schema for the hooks API
            displayName: Hook
            kind: Hook
            name: hooks.forklift.konveyor.io
            version: v1beta1
          - description: VM host
            displayName: Host
            kind: Host
            name: hosts.forklift.konveyor.io
            version: v1beta1
          - description: VM migration
            displayName: Migration
            kind: Migration
            name: migrations.forklift.konveyor.io
            version: v1beta1
          - description: VM network map
            displayName: NetworkMap
            kind: NetworkMap
            name: networkmaps.forklift.konveyor.io
            version: v1beta1
          - description: OpenStack Volume Populator
            displayName: OpenstackVolumePopulator
            kind: OpenstackVolumePopulator
            name: openstackvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: OVA Provider Server
            displayName: OVAProviderServer
            kind: OVAProviderServer
            name: ovaproviderservers.forklift.konveyor.io
            version: v1beta1
          - description: oVirt Volume Populator
            displayName: OvirtVolumePopulator
            kind: OvirtVolumePopulator
            name: ovirtvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: VM migration plan
            displayName: Plan
            kind: Plan
            name: plans.forklift.konveyor.io
            version: v1beta1
          - description: VM provider
            displayName: Provider
            kind: Provider
            name: providers.forklift.konveyor.io
            version: v1beta1
          - description: VM storage map
            displayName: StorageMap
            kind: StorageMap
            name: storagemaps.forklift.konveyor.io
            version: v1beta1
          - description: VSphere Xcopy Volume Populator
            displayName: VSphereXcopyVolumePopulator
            kind: VSphereXcopyVolumePopulator
            name: vspherexcopyvolumepopulators.forklift.konveyor.io
            version: v1beta1
        description: |
          The Migration Toolkit for Virtualization Operator manages the deployment and life cycle of Migration Toolkit for Virtualization on [OpenShift](https://www.openshift.com/) Container Platform.

          ### Installation

          OpenShift Virtualization must be installed on an OpenShift migration target cluster before you can use MTV to transfer any VMs to that cluster

          Once you have successfully installed the Operator, proceed to deploy components by creating the required ForkliftController CR.

          By default, the Operator installs the following components on a target cluster:

          * Controller, to coordinate migration processes.
          * UI, the web console to manage migrations.
          * Validation, a service to validate migration workflows.

          ### Compatibility

          Migration Toolkit for Virtualization 2.9 is supported on OpenShift 4.17, 4.18 and 4.19

          Migration Toolkit for Virtualization 2.10 is supported on OpenShift 4.18, 4.19 and 4.20

          More information on compatibility in the [MTV Lifecycle document](https://access.redhat.com/support/policy/updates/migration-toolkit-for-virtualization).

          ### Documentation
          Documentation can be found on the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization/).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Virtualization Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Creating a case in the [Red Hat Customer Portal](https://access.redhat.com/support/cases/) with any issues you find using Migration Toolkit for Application and its Operator.
          * Fixing issues by opening Pull Requests in the [KubeV2V](https://github.com/kubev2v/) under Forklift Projects.
          * Improving Forklift upstream [documentation](https://github.com/kubev2v/forklift-documentation/).
        displayName: Migration Toolkit for Virtualization Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - forklift
        - konveyor
        - mtv
        links:
        - name: Migration Toolkit for Virtualization Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization
        - name: Forklift Operator
          url: https://github.com/kubev2v/forklift
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:8ae52c3487c3eff996800be4321ef5cd594a6a451c2cfe9ed283c862e9fa5703
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:be16e654be6a8d0513f92ba2e148941cd6ddb8e597085f66be6899c1ba605ce5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:f6e5d3c93ee1c8962828ef889902a099a4bbb1f6665a0975bdffa9e8d6e4cb6d
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fe352650a328af67ba8cb331bafb320f0f147fe8a41782311206b8a6f0255552
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:8bde2126f5f8a6e1ca6b84c559c83771c8580fae0fca338219e94cba3e908e29
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel10@sha256:3d927816fbd65ad819444432c6d80907143944e0fba525826edc10c8ca568849
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:2cbcb294f707d4832de3436df5cb35b442f8db69d24f3fb7c66ca7c2579e7930
        - registry.redhat.io/migration-toolkit-virtualization/mtv-cli-download-rhel9@sha256:220639596f63897fecdb261d9faa7a8f6c1b1b9661c26e449336e3e19585d8f9
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:4417efc0a042ab078138d5a83eb1b32e7f1d6ad90f69efdab40ed43c01d1fe30
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:7b5871df7274de2dd7df16f311fe97b8873b88032571d83216d6e61820aa288f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:018f9305c10388d368b8a29ef6a827494492df23a3279265ff3e41971e1dda43
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:869705843f9c42a664f0e27afad9d609d2f8d56204f1fd2c693e340cc384afd9
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:92fcb195ede1bcc5e1108bbea950aaf953f8058fd1bc3ff4381f7d7d11da1859
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-proxy-rhel9@sha256:d990f6ddd51e468aeef329fe6c0c083ad524e6b72d8dc4ff8fcfe4cea4d16156
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:f364639313bdcd065a5f6c71f74c7c7cf920e2919e1342e6b184780455c8fb6e
        version: 2.10.2
      entries:
      - name: mtv-operator.v2.10.2
        version: 2.10.2
      - name: mtv-operator.v2.10.1
        version: 2.10.1
      - name: mtv-operator.v2.10.0
        version: 2.10.0
      name: release-v2.10
    - currentCSV: mtv-operator.v2.7.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "ForkliftController",
                "metadata": {
                  "name": "forklift-controller",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "feature_ui_plugin": "true",
                  "feature_validation": "true",
                  "feature_volume_populator": "true"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Hook",
                "metadata": {
                  "name": "example-hook",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "image": "quay.io/konveyor/hook-runner",
                  "playbook": "<base64-encoded-playbook>"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Host",
                "metadata": {
                  "name": "example-host",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "id": "",
                  "ipAddress": "",
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Migration",
                "metadata": {
                  "name": "example-migration",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "plan": {
                    "name": "example-plan",
                    "namespace": "openshift-mtv"
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "NetworkMap",
                "metadata": {
                  "name": "example-networkmap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "name": "",
                        "namespace": "",
                        "type": "pod"
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OpenstackVolumePopulator",
                "metadata": {
                  "name": "example-openstack",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "identityUrl": "",
                  "imageId": "",
                  "secretName": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OvirtVolumePopulator",
                "metadata": {
                  "name": "example-ovirt-imageio",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "diskId": "",
                  "engineSecretName": "",
                  "engineUrl": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Plan",
                "metadata": {
                  "name": "example-plan",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "provider": {
                    "destination": {
                      "name": "",
                      "namespace": ""
                    },
                    "source": {
                      "name": "",
                      "namespace": ""
                    }
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                  "name": "example-provider",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "secret": {
                    "name": "",
                    "namespace": ""
                  },
                  "type": "vmware",
                  "url": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "StorageMap",
                "metadata": {
                  "name": "example-storagemap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "storageClass": ""
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "true"
          containerImage: registry.redhat.io/migration-toolkit-virtualization/mtv-rhel8-operator@sha256:8dbeace89a921e0d11f85378099e39cc357702d2f20dfb9d14cebbe150d2500d
          createdAt: "2024-10-11T14:05:47Z"
          description: Facilitates migration of VM workloads to OpenShift Virtualization
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/fipsmode: "true"
          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.skipRange: '>=0.0.0 <2.7.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "forklift.konveyor.io/v1beta1",
              "kind": "ForkliftController",
              "metadata": {
                "name": "forklift-controller",
                "namespace": "openshift-mtv"
              },
              "spec": {
                "feature_ui_plugin": "true",
                "feature_validation": "true",
                "feature_volume_populator": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mtv
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/kubev2v/forklift
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VM migration controller
            displayName: ForkliftController
            kind: ForkliftController
            name: forkliftcontrollers.forklift.konveyor.io
            version: v1beta1
          - description: Hook schema for the hooks API
            displayName: Hook
            kind: Hook
            name: hooks.forklift.konveyor.io
            version: v1beta1
          - description: VM host
            displayName: Host
            kind: Host
            name: hosts.forklift.konveyor.io
            version: v1beta1
          - description: VM migration
            displayName: Migration
            kind: Migration
            name: migrations.forklift.konveyor.io
            version: v1beta1
          - description: VM network map
            displayName: NetworkMap
            kind: NetworkMap
            name: networkmaps.forklift.konveyor.io
            version: v1beta1
          - description: OpenStack Volume Populator
            displayName: OpenstackVolumePopulator
            kind: OpenstackVolumePopulator
            name: openstackvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: oVirt Volume Populator
            displayName: OvirtVolumePopulator
            kind: OvirtVolumePopulator
            name: ovirtvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: VM migration plan
            displayName: Plan
            kind: Plan
            name: plans.forklift.konveyor.io
            version: v1beta1
          - description: VM provider
            displayName: Provider
            kind: Provider
            name: providers.forklift.konveyor.io
            version: v1beta1
          - description: VM storage map
            displayName: StorageMap
            kind: StorageMap
            name: storagemaps.forklift.konveyor.io
            version: v1beta1
        description: |
          The Migration Toolkit for Virtualization Operator manages the deployment and life cycle of Migration Toolkit for Virtualization on [OpenShift](https://www.openshift.com/) Container Platform.

          ### Installation

          OpenShift Virtualization must be installed on an OpenShift migration target cluster before you can use MTV to transfer any VMs to that cluster

          Once you have successfully installed the Operator, proceed to deploy components by creating the required ForkliftController CR.

          By default, the Operator installs the following components on a target cluster:

          * Controller, to coordinate migration processes.
          * UI, the web console to manage migrations.
          * Validation, a service to validate migration workflows.

          ### Compatibility

          Migration Toolkit for Virtualization 2.5 is supported on OpenShift 4.12 and 4.13

          Migration Toolkit for Virtualization 2.6 is supported on OpenShift 4.14 and 4.15

          Migration Toolkit for Virtualization 2.7 is supported on OpenShift 4.16 and 4.17

          More information on compatibility in the [MTV Lifecycle document](https://access.redhat.com/articles/6001751).

          ### Documentation
          Documentation can be found on the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization/).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Virtualization Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Creating a case in the [Red Hat Customer Portal](https://access.redhat.com/support/cases/) with any issues you find using Migration Toolkit for Application and its Operator.
          * Fixing issues by opening Pull Requests in the [KubeV2V](https://github.com/kubev2v/) under Forklift Projects.
          * Improving Forklift upstream [documentation](https://github.com/kubev2v/forklift-documentation/).
        displayName: Migration Toolkit for Virtualization Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - forklift
        - konveyor
        - mtv
        links:
        - name: Migration Toolkit for Virtualization Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization
        - name: Forklift
          url: http://github.com/kubev2v/forklift
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:936fd68d7659683de7789fcf34d2e5873bd4bd1534c01c2d80501647f7c3c442
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:c543dbbb66fcac02345e1d3c12333780721bf049dca0f0a27d4c55b15a5d3e14
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fd6fb83bbeb9010f7e91f0afc91beac0bf38cb79c2de8f533a2bd07b1b238262
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:6d0aeffbccaf9df83b42c530bf82707aa7c1cc16f72a5ef30b66fbd562c01ab3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:8c05a303be5c536f4051ef291475b578d4d38ca0946fb4b4dd8bca376ef432aa
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:e91c2e5473f3e24c185dd25e9843f333e6d7419d9c5f4d4396669717b5969683
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:a65780c5680a6fbbd0e3d0eed423b14a9c9b3d7d17f801c1eb6eb6b777384ca5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel8-operator@sha256:8dbeace89a921e0d11f85378099e39cc357702d2f20dfb9d14cebbe150d2500d
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:4bea07e101740afc36a1617363a79b1c474efcacd584f6e475a53b3f2395a079
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:8337924489a1747d4bbca6dd6ac42210731cf721b549b5830846b271621e2ac1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:1dd8f0f08ff1323d910fea8adfa13cef64c2fd2f01968e4d9d55f71cf42835d3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:365115407964d182de7e7564438c6fd089e2c0bcc0f94ec48621ca0cc2bf0fe4
        version: 2.7.2
      entries:
      - name: mtv-operator.v2.7.2
        version: 2.7.2
      name: release-v2.7
    - currentCSV: mtv-operator.v2.8.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "ForkliftController",
                "metadata": {
                  "name": "forklift-controller",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "feature_ui_plugin": "true",
                  "feature_validation": "true",
                  "feature_volume_populator": "true"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Hook",
                "metadata": {
                  "name": "example-hook",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "image": "quay.io/konveyor/hook-runner",
                  "playbook": "<base64-encoded-playbook>"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Host",
                "metadata": {
                  "name": "example-host",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "id": "",
                  "ipAddress": "",
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Migration",
                "metadata": {
                  "name": "example-migration",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "plan": {
                    "name": "example-plan",
                    "namespace": "openshift-mtv"
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "NetworkMap",
                "metadata": {
                  "name": "example-networkmap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "name": "",
                        "namespace": "",
                        "type": "pod"
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OpenstackVolumePopulator",
                "metadata": {
                  "name": "example-openstack",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "identityUrl": "",
                  "imageId": "",
                  "secretName": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OvirtVolumePopulator",
                "metadata": {
                  "name": "example-ovirt-imageio",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "diskId": "",
                  "engineSecretName": "",
                  "engineUrl": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Plan",
                "metadata": {
                  "name": "example-plan",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "provider": {
                    "destination": {
                      "name": "",
                      "namespace": ""
                    },
                    "source": {
                      "name": "",
                      "namespace": ""
                    }
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                  "name": "example-provider",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "secret": {
                    "name": "",
                    "namespace": ""
                  },
                  "type": "vmware",
                  "url": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "StorageMap",
                "metadata": {
                  "name": "example-storagemap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "storageClass": ""
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "true"
          containerImage: registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:d267c04e414d986daba9750bad590d6387bcb798df64bc583da97d88b182dc9f
          createdAt: "2025-05-29T13:56:42Z"
          description: Facilitates migration of VM workloads to OpenShift Virtualization
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/fipsmode: "true"
          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.skipRange: '>=0.0.0 <2.8.5'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "forklift.konveyor.io/v1beta1",
              "kind": "ForkliftController",
              "metadata": {
                "name": "forklift-controller",
                "namespace": "openshift-mtv"
              },
              "spec": {
                "feature_ui_plugin": "true",
                "feature_validation": "true",
                "feature_volume_populator": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mtv
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/kubev2v/forklift
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VM migration controller
            displayName: ForkliftController
            kind: ForkliftController
            name: forkliftcontrollers.forklift.konveyor.io
            version: v1beta1
          - description: Hook schema for the hooks API
            displayName: Hook
            kind: Hook
            name: hooks.forklift.konveyor.io
            version: v1beta1
          - description: VM host
            displayName: Host
            kind: Host
            name: hosts.forklift.konveyor.io
            version: v1beta1
          - description: VM migration
            displayName: Migration
            kind: Migration
            name: migrations.forklift.konveyor.io
            version: v1beta1
          - description: VM network map
            displayName: NetworkMap
            kind: NetworkMap
            name: networkmaps.forklift.konveyor.io
            version: v1beta1
          - description: OpenStack Volume Populator
            displayName: OpenstackVolumePopulator
            kind: OpenstackVolumePopulator
            name: openstackvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: oVirt Volume Populator
            displayName: OvirtVolumePopulator
            kind: OvirtVolumePopulator
            name: ovirtvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: VM migration plan
            displayName: Plan
            kind: Plan
            name: plans.forklift.konveyor.io
            version: v1beta1
          - description: VM provider
            displayName: Provider
            kind: Provider
            name: providers.forklift.konveyor.io
            version: v1beta1
          - description: VM storage map
            displayName: StorageMap
            kind: StorageMap
            name: storagemaps.forklift.konveyor.io
            version: v1beta1
          - description: VSphere Xcopy Volume Populator
            displayName: VSphereXcopyVolumePopulator
            kind: VSphereXcopyVolumePopulator
            name: vspherexcopyvolumepopulators.forklift.konveyor.io
            version: v1beta1
        description: |
          The Migration Toolkit for Virtualization Operator manages the deployment and life cycle of Migration Toolkit for Virtualization on [OpenShift](https://www.openshift.com/) Container Platform.

          ### Installation

          OpenShift Virtualization must be installed on an OpenShift migration target cluster before you can use MTV to transfer any VMs to that cluster

          Once you have successfully installed the Operator, proceed to deploy components by creating the required ForkliftController CR.

          By default, the Operator installs the following components on a target cluster:

          * Controller, to coordinate migration processes.
          * UI, the web console to manage migrations.
          * Validation, a service to validate migration workflows.

          ### Compatibility

          Migration Toolkit for Virtualization 2.7 is supported on OpenShift 4.15, 4.16 and 4.17

          Migration Toolkit for Virtualization 2.8 is supported on OpenShift 4.16, 4.17, 4.18 and 4.19

          More information on compatibility in the [MTV Lifecycle document](https://access.redhat.com/support/policy/updates/migration-toolkit-for-virtualization).

          ### Documentation
          Documentation can be found on the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization/).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Virtualization Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Creating a case in the [Red Hat Customer Portal](https://access.redhat.com/support/cases/) with any issues you find using Migration Toolkit for Application and its Operator.
          * Fixing issues by opening Pull Requests in the [KubeV2V](https://github.com/kubev2v/) under Forklift Projects.
          * Improving Forklift upstream [documentation](https://github.com/kubev2v/forklift-documentation/).
        displayName: Migration Toolkit for Virtualization Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - forklift
        - konveyor
        - mtv
        links:
        - name: Migration Toolkit for Virtualization Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization
        - name: Forklift
          url: http://github.com/kubev2v/forklift
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:1344719931cedfd7c64acc9419af6fc0cc5850c23b2aa3e597d9f92600b6259b
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:6a3c257eae44adde04d7b2a7e3b0f2bb966f0e6aa53a23302258618bb27d064b
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:49b2a58eeb994c5398f31e89abeb2959b079207de29fae876eb8ab90a2f79b95
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:d2f7d3e51e225c045376eb435169b2a7b11e0b7de98d11e78d2a21d4540565d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:931b5d94251a065c819b3e1b39a9d35e0919174b98b0ffde86dae71a15f2f1d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:8933f1a8dad97352e225e1a1f7f0edbd2820fd60ff1d0c80a49065257b6ca9f1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:4861381a24d81f3f25153af9c066839be83cf74adf5ec900464719197611af27
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:d267c04e414d986daba9750bad590d6387bcb798df64bc583da97d88b182dc9f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:d6ca7787981b6229eedce40893280381abfaa124dd84be3bc1fb6f043a22d2d1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:80fdc43060387a455d177019de81ab274dbdf754b9ab68a61696068d9c4bfaac
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:84998b76aab53a0ca9a83a6b8baf3cb408763fba07008e3c892e2669740b481f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:930d472f486c74d36ffc3e9ed510044e15745a6350503b386f5221c82df2a7f6
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:29ce66f04b7339725d0e3dd7d4cfeca794c33e917e0deef00c44149a86a1c3b9
        version: 2.8.5
      entries:
      - name: mtv-operator.v2.8.5
        version: 2.8.5
      name: release-v2.8
    defaultChannel: release-v2.10
    packageName: mtv-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: apicast-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicast-operator.v0.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:ccd64090b85536ddaf1b81ca07d40279c9f277b1c5911628f11d678b98dc3bad
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: msoriano+apicastoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:f0e9f64c353fdbee3bf7ec0eaf070c3b75330ef659a881ec4ebc874ba584d085
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:9db455e082454734d2a17811dcfec53d3d60c28df6e7fe8bc979a45b28a35061
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:ccd64090b85536ddaf1b81ca07d40279c9f277b1c5911628f11d678b98dc3bad
        version: 0.5.3
      entries:
      - name: apicast-operator.v0.5.3
        version: 0.5.3
      - name: apicast-operator.v0.5.2
        version: 0.5.2
      - name: apicast-operator.v0.5.2-0.1646742993.p
        version: 0.5.2+0.1646742993.p
      - name: apicast-operator.v0.5.2-0.1649688685.p
        version: 0.5.2+0.1649688685.p
      - name: apicast-operator.v0.5.1
        version: 0.5.1
      - name: apicast-operator.v0.5.0
        version: 0.5.0
      - name: apicast-operator.v0.5.0-0.1638885516.p
        version: 0.5.0+0.1638885516.p
      - name: apicast-operator.v0.5.0-0.1638984223.p
        version: 0.5.0+0.1638984223.p
      name: threescale-2.11
    - currentCSV: apicast-operator.v0.6.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:8c7fe66b8d4044ad965e7b3d149e9d8e3846ac4e55465873f7095a25b297b3df
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: msoriano+apicastoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:8c7fe66b8d4044ad965e7b3d149e9d8e3846ac4e55465873f7095a25b297b3df
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:12f7a8e69a1369a51bbcd2b34d4ec8c66dd1fc9fb515349a04e7b202953423e3
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:8650430afd813fd749fcd80ad5f6fd0aeaab3df048e8fe34e6aa72a07ab801fc
        version: 0.6.4
      entries:
      - name: apicast-operator.v0.6.4
        version: 0.6.4
      - name: apicast-operator.v0.6.3
        version: 0.6.3
      - name: apicast-operator.v0.6.2
        version: 0.6.2
      - name: apicast-operator.v0.6.1
        version: 0.6.1
      - name: apicast-operator.v0.6.0
        version: 0.6.0
      - name: apicast-operator.v0.5.3
        version: 0.5.3
      - name: apicast-operator.v0.5.2-0.1649688685.p
        version: 0.5.2+0.1649688685.p
      - name: apicast-operator.v0.5.2-0.1646742993.p
        version: 0.5.2+0.1646742993.p
      - name: apicast-operator.v0.5.2
        version: 0.5.2
      - name: apicast-operator.v0.5.1
        version: 0.5.1
      - name: apicast-operator.v0.5.0
        version: 0.5.0
      - name: apicast-operator.v0.5.0-0.1638984223.p
        version: 0.5.0+0.1638984223.p
      - name: apicast-operator.v0.5.0-0.1638885516.p
        version: 0.5.0+0.1638885516.p
      name: threescale-2.12
    - currentCSV: apicast-operator.v0.7.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:bde44c0fb9f13f212184b24e0bef45db734a8439a92179a2089e5aebd6b87b63
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          olm.skipRange: '>=0.6.2 <0.7.5'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.13/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: msoriano+apicastoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:ed063f507fa8e2f378d0adbde823c110484d0212d124cc72d67efa987e86444e
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:bde44c0fb9f13f212184b24e0bef45db734a8439a92179a2089e5aebd6b87b63
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:88dc7a289c803248efbe151999707325b1bc0aac2d26827ea1707e46e5c71652
        version: 0.7.5
      entries:
      - name: apicast-operator.v0.7.5
        version: 0.7.5
      name: threescale-2.13
    - currentCSV: apicast-operator.v0.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:21db8c1bde63b5d574b66b46ec3ee95eb05a3c34b9541ca32d5bbf4daf18daf4
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          olm.skipRange: '>=0.6.2 <0.8.1'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.14/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:bcc5ed9560667c7347f3044c7fa6148e3867c17e93e83595a62794339a5a6b0d
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:21db8c1bde63b5d574b66b46ec3ee95eb05a3c34b9541ca32d5bbf4daf18daf4
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:68b310ed3cfd65db893ba015ef1d5442365201c0ced006c1915e90edb99933ea
        version: 0.8.1
      entries:
      - name: apicast-operator.v0.8.1
        version: 0.8.1
      name: threescale-2.14
    - currentCSV: apicast-operator.v0.7.9-mas
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-mas/apicast-rhel7-operator@sha256:3fd03155935a1a1946669db9dadc8e82737de46e1fcb0ba92a9815a277ae35aa
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:ea2229948fea841343fcaa337bb7e2854acf5f563d3ffb0af8bda1c21ec2a91f
        - registry.redhat.io/3scale-mas/apicast-operator-bundle@sha256:d3a608b37aa089ea46e803696ba4957585b875f8a810f517e891f385ad105937
        - registry.redhat.io/3scale-mas/apicast-rhel7-operator@sha256:3fd03155935a1a1946669db9dadc8e82737de46e1fcb0ba92a9815a277ae35aa
        version: 0.7.9-mas
      entries:
      - name: apicast-operator.v0.7.9-mas
        version: 0.7.9-mas
      - name: apicast-operator.v0.7.8-mas
        version: 0.7.8-mas
      - name: apicast-operator.v0.7.7-mas
        version: 0.7.7-mas
      - name: apicast-operator.v0.7.6-mas
        version: 0.7.6-mas
      - name: apicast-operator.v0.7.5-mas
        version: 0.7.5-mas
      - name: apicast-operator.v0.7.4-mas
        version: 0.7.4-mas
      - name: apicast-operator.v0.7.3-mas
        version: 0.7.3-mas
      - name: apicast-operator.v0.7.2-mas
        version: 0.7.2-mas
      - name: apicast-operator.v0.7.1-mas
        version: 0.7.1-mas
      - name: apicast-operator.v0.7.0-mas
        version: 0.7.0-mas
      - name: apicast-operator.v0.6.0-mas
        version: 0.6.0-mas
      - name: apicast-operator.v0.5.2-0.1649688685.p
        version: 0.5.2+0.1649688685.p
      - name: apicast-operator.v0.5.2-0.1646742993.p
        version: 0.5.2+0.1646742993.p
      - name: apicast-operator.v0.5.2
        version: 0.5.2
      - name: apicast-operator.v0.5.1
        version: 0.5.1
      - name: apicast-operator.v0.5.0
        version: 0.5.0
      - name: apicast-operator.v0.5.0-0.1638984223.p
        version: 0.5.0+0.1638984223.p
      - name: apicast-operator.v0.5.0-0.1638885516.p
        version: 0.5.0+0.1638885516.p
      name: threescale-mas
    defaultChannel: threescale-2.14
    packageName: apicast-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: github.com/stakater-ab/hibernation-operator
    name: hibernation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hibernation-operator.v0.1.103
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Monitoring
          createdAt: "2025-10-02T05:44:42Z"
          description: Operator to engage and disengage hibernation on k8s resources
            using cron expressions
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.1.103
          operatorframework.io/suggested-namespace: hibernation-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Cluster Resource Supervisor
            kind: ClusterResourceSupervisor
            name: clusterresourcesupervisors.hibernation.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.hibernation.stakater.com
            version: v1beta1
        description: Schedule k8s resources using cron expressions via Hibernation
          Operator
        displayName: Hibernation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - redhat
        - k8s
        - stakater
        - hibernation
        - operator
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maintainers:
        - email: hello@stakater.com
          name: StakaterAB
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Stakater
          url: github.com/stakater-ab/hibernation-operator
        relatedImages:
        - registry.connect.redhat.com/stakater/hibernation-operator-bundle@sha256:ded790c5b21a5b0cadac01943bfb239750d9ac6e340dc4237c9681f243858bdd
        - registry.connect.redhat.com/stakater/hibernation-operator@sha256:3738f82834d53aec4f8fba5caad6258c7adb4bdc23a57bde47c7ec22030fae5c
        version: 0.1.103
      entries:
      - name: hibernation-operator.v0.1.103
        version: 0.1.103
      name: release-0.1
    defaultChannel: release-0.1
    packageName: hibernation-operator
    provider:
      name: Stakater
      url: github.com/stakater-ab/hibernation-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://www.medik8s.io/
    name: customized-user-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: customized-user-remediation.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "customized-user-remediation.medik8s.io/v1alpha1",
                "kind": "CustomizedUserRemediation",
                "metadata": {
                  "name": "customizeduserremediation-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "customized-user-remediation.medik8s.io/v1alpha1",
                "kind": "CustomizedUserRemediationConfig",
                "metadata": {
                  "name": "customizeduserremediationconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "customized-user-remediation.medik8s.io/v1alpha1",
                "kind": "CustomizedUserRemediationTemplate",
                "metadata": {
                  "name": "customizeduserremediationtemplate-sample",
                  "namespace": "openshift-workload-availability"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/customized-user-remediation-operator:v0.1.0
          createdAt: "2024-03-25 16:17:57"
          description: Customized User Remediation Operator will remediate unhealthy
            nodes by running a pre defined user script on the unhealthy node. Since
            the user has full control over the script content, is may be quite risky
            so apply discretion.
          olm.skipRange: '>=0.0.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/customized-user-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CustomizedUserRemediationConfig is the Schema for the customizeduserremediationconfigs
              API
            displayName: Customized User Remediation Config
            kind: CustomizedUserRemediationConfig
            name: customizeduserremediationconfigs.customized-user-remediation.medik8s.io
            version: v1alpha1
          - description: CustomizedUserRemediation is the Schema for the customizeduserremediations
              API
            displayName: Customized User Remediation
            kind: CustomizedUserRemediation
            name: customizeduserremediations.customized-user-remediation.medik8s.io
            version: v1alpha1
          - description: CustomizedUserRemediationTemplate is the Schema for the customizeduserremediationtemplates
              API
            displayName: Customized User Remediation Template
            kind: CustomizedUserRemediationTemplate
            name: customizeduserremediationtemplates.customized-user-remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Customized User Remediation (CUR) works with Node Health Check to remediate unhealthy nodes by running a user customized script on the unhealthy node.
          This operator does not preform any fencing on the remediated node so users should be careful with the scripts that are being used.

          ### Compatibility
          CUR is one of the remediator operators by [Medik8s](https://www.medik8s.io/remediation/remediation/),
          such as [Self Node Remediation](https://github.com/medik8s/self-node-remediation) and [Machine Deletion Remediation](https://github.com/medik8s/machine-deletion-remediation),
          that were designed to run with the Node HealthCheck Operator [(NHC)](https://github.com/medik8s/node-healthcheck-operator) which detects an unhealthy node and creates remediation CR.
          It is recommended to use FAR with NHC for an easier and smoother experience by fully automating the remediation process, but it can be used as a standalone remediator for the more experienced user.

          ### Advantages
          - Flexibility - CUR is quite flexible sine it runs in the remediation process a user customized script.
        displayName: Customized User Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - remediation
        - auto-healing
        - recovery
        - high-availability
        - baremetal
        - script
        - CUR
        links:
        - name: Customized User Remediation
          url: https://customized-user-remediation.domain
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Medik8s
          url: https://www.medik8s.io/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/community-operator-pipeline-prod/customized-user-remediation@sha256:dc517e2349fe993e3417b858865fb73b98b7b163c0b4231d4d7be1f11992bb78
        - quay.io/medik8s/customized-user-remediation-operator:v0.1.0
        version: 0.1.0
      entries:
      - name: customized-user-remediation.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: customized-user-remediation
    provider:
      name: Medik8s
      url: https://www.medik8s.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-bedrockagentcorecontrol-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-bedrockagentcorecontrol-controller.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/bedrockagentcorecontrol-controller:1.1.0
          createdAt: "2025-11-29T04:35:31Z"
          description: Amazon Bedrock Agent Core Control controller is a service controller
            for managing Bedrock Agent Core Control resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AgentRuntimeEndpoint represents the state of an AWS bedrockagentcorecontrol
              AgentRuntimeEndpoint resource.
            displayName: AgentRuntimeEndpoint
            kind: AgentRuntimeEndpoint
            name: agentruntimeendpoints.bedrockagentcorecontrol.services.k8s.aws
            version: v1alpha1
          - description: AgentRuntime represents the state of an AWS bedrockagentcorecontrol
              AgentRuntime resource.
            displayName: AgentRuntime
            kind: AgentRuntime
            name: agentruntimes.bedrockagentcorecontrol.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Bedrock Agent Core Control resources in AWS from within your Kubernetes cluster.

          **About Amazon Bedrock Agent Core Control**

          Amazon Bedrock Agent Core Control is a fully managed service that makes it easy to build and scale generative AI applications. With Bedrock, you can access foundation models from leading AI companies, customize them with your own data, and integrate them into your applications.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Bedrock Agent Core Control
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bedrockagentcorecontrol
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Bedrock Agent Core Control Developer Resources
          url: https://aws.amazon.com/bedrock/dev-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: bedrockagentcorecontrol maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-bedrockagentcorecontrol-controller@sha256:16eb4efd399e2db735c25ddcf9a77dc41123ce8df0ff634ec6907f9e2eab22db
        - public.ecr.aws/aws-controllers-k8s/bedrockagentcorecontrol-controller:1.1.0
        version: 1.1.0
      entries:
      - name: ack-bedrockagentcorecontrol-controller.v1.1.0
        version: 1.1.0
      - name: ack-bedrockagentcorecontrol-controller.v1.0.1
        version: 1.0.1
      - name: ack-bedrockagentcorecontrol-controller.v1.0.0
        version: 1.0.0
      - name: ack-bedrockagentcorecontrol-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-bedrockagentcorecontrol-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-networkfirewall-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-networkfirewall-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "networkfirewall.services.k8s.aws/v1alpha1",
                "kind": "Firewall",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "networkfirewall.services.k8s.aws/v1alpha1",
                "kind": "FirewallPolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "networkfirewall.services.k8s.aws/v1alpha1",
                "kind": "RuleGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/networkfirewall-controller:1.2.0
          createdAt: "2025-11-29T03:54:36Z"
          description: AWS Network Firewall controller is a service controller for
            managing Network Firewall resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FirewallPolicy represents the state of an AWS networkfirewall
              FirewallPolicy resource.
            displayName: FirewallPolicy
            kind: FirewallPolicy
            name: firewallpolicies.networkfirewall.services.k8s.aws
            version: v1alpha1
          - description: Firewall represents the state of an AWS networkfirewall Firewall
              resource.
            displayName: Firewall
            kind: Firewall
            name: firewalls.networkfirewall.services.k8s.aws
            version: v1alpha1
          - description: RuleGroup represents the state of an AWS networkfirewall
              RuleGroup resource.
            displayName: RuleGroup
            kind: RuleGroup
            name: rulegroups.networkfirewall.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Network Firewall resources in AWS from within your Kubernetes cluster.

          **About Amazon Network Firewall**

          AWS Network Firewall is a stateful, managed, network firewall and intrusion detection and prevention service for your virtual private cloud (VPC) that you create in Amazon Virtual Private Cloud (Amazon VPC).
          With Network Firewall, you can filter traffic at the perimeter of your VPC. This includes filtering traffic going to and coming from an internet gateway, NAT gateway, or over VPN or AWS Direct Connect. Network Firewall uses the open source intrusion prevention system (IPS), Suricata, for stateful inspection. Network Firewall supports Suricata compatible rules. For more information, see [Working with stateful rule groups in AWS Network Firewall](https://docs.aws.amazon.com/network-firewall/latest/developerguide/stateful-rule-groups-ips.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Network Firewall
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networkfirewall
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Network Firewall Developer Resources
          url: https://aws.amazon.com/network-firewall/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: network firewall maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-networkfirewall-controller@sha256:f4f39f53a83482b8645cc1b3121b0d988d7c0fa44c07e57502980ff8796d6e76
        - public.ecr.aws/aws-controllers-k8s/networkfirewall-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-networkfirewall-controller.v1.2.0
        version: 1.2.0
      - name: ack-networkfirewall-controller.v1.1.2
        version: 1.1.2
      - name: ack-networkfirewall-controller.v1.1.1
        version: 1.1.1
      - name: ack-networkfirewall-controller.v1.1.0
        version: 1.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-networkfirewall-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: redhat.com
    name: special-resource-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: special-resource-operator.v4.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sro.openshift.io/v1beta1",
                "kind": "SpecialResource",
                "metadata": {
                  "name": "simple-kmod"
                },
                "spec": {
                  "chart": {
                    "name": "simple-kmod",
                    "repository": {
                      "name": "example",
                      "url": "file:///charts/example"
                    },
                    "version": "0.0.1"
                  },
                  "driverContainer": {
                    "source": {
                      "git": {
                        "ref": "master",
                        "uri": "https://github.com/openshift-psap/kvc-simple-kmod.git"
                      }
                    }
                  },
                  "namespace": "simple-kmod",
                  "set": {
                    "apiVersion": "sro.openshift.io/v1beta1",
                    "buildArgs": [
                      {
                        "name": "KMODVER",
                        "value": "SRO"
                      }
                    ],
                    "kind": "Values",
                    "kmodNames": [
                      "simple-kmod",
                      "simple-procfs-kmod"
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional, Storage
          containerImage: quay.io/openshift-psap/special-resource-operator:release-4.9
          description: The special resource operator is an orchestrator for resources
            in a cluster required to deploy special hardware and software. Examples
            include hardware accelerators or software defined storage, where extra
            management or kernel modules are needed.
          olm.skipRange: '>=4.6.0 <4.9.0'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SpecialResource is the Schema for the specialresources API
            displayName: Special Resource
            kind: SpecialResource
            name: specialresources.sro.openshift.io
            version: v1beta1
          required:
          - description: Discovers special resources and labels the nodes with the
              PCI vendor ID.
            displayName: Node Feature Discovery
            kind: NodeFeatureDiscovery
            name: nodefeaturediscoveries.nfd.openshift.io
            version: v1
        description: "## About the managed application \nThe SRO will deploy the complete
          stack for enabling the accelerator in a cluster. \nIt manages the drivers,
          device-plugin, node-exporter, grafana and feature discovery.\n## About this
          Operator\n README: [https://github.com/openshift-psap/special-resource-operator](https://github.com/openshift-psap/special-resource-operator)\n\n##
          Prerequisites for enabling this Operator\nThe SRO has a dependency on NFD
          (Node Feature Discovery)\n"
        displayName: Special Resource Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GPI
        links:
        - name: README
          url: https://github.com/openshift-psap/special-resource-operator
        maintainers:
        - email: zkaiser@redhat.com
          name: Zvonko Kaiser
        - email: dagray@redhat.com
          name: David Gray
        maturity: alpha
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/openshift-psap/special-resource-operator:release-4.9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy
        - quay.io/openshift-community-operators/special-resource-operator@sha256:df87c400713311f2495d6d02769acf29e5251330194f992c11719063095fdaea
        version: 4.9.0
      entries:
      - name: special-resource-operator.v4.9.0
        version: 4.9.0
      - name: special-resource-operator.v4.8.2
        version: 4.8.2
      - name: special-resource-operator.v4.8.1
        version: 4.8.1
      - name: special-resource-operator.v4.8.0
        version: 4.8.0
      name: alpha
    defaultChannel: alpha
    packageName: special-resource-operator
    provider:
      name: Red Hat
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhpam-kogito-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhpam-kogito-operator.7.13.5-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "ruleunit-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogitoinfra-sample"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "kafka.strimzi.io/v1beta2",
                    "kind": "Kafka",
                    "name": "kogito-kafka"
                  }
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/rhpam-7/rhpam-kogito-rhel8-operator@sha256:19497d4aff0ea3ea114dccb0d0e265458bb14ba6d325353eb82b554547dbd2e4
          description: RHPAM Kogito Operator for deployment and management of Kogito
            services.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Process Automation
            Manager", "Red Hat Decision Manager"]'
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/rhpam-kogito-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.rhpam.kiegroup.org
            version: v1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.rhpam.kiegroup.org
            version: v1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.rhpam.kiegroup.org
            version: v1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.rhpam.kiegroup.org
            version: v1
        description: |-
          RHPAM Kogito Operator is designed for deployment and management of Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Builds a RHPAM Kogito service from a remote git repository and creates a custom image for the given runtime: Red Hat build of Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Deploy RHPAM Kogito service from user provided image.
          * Setup Grafana Dashboard when Grafana Operator is available in cluster.
          * Create Prometheus monitor object when Prometheus operator is available in cluster.

          **IMPORTANT!** RHPAM Kogito Operator may need Grafana and Prometheus Operator to configure monitoring in cases if you do not provide these services beforehand. If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the RHPAM Kogito Operator.
        displayName: RHPAM Kogito Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-process-automation-manager
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_process_automation_manager/7.13/html/getting_started_with_red_hat_build_of_kogito_in_red_hat_process_automation_manager/assembly-deploying-kogito-microservices-on-openshift
        - name: Source
          url: https://github.com/kiegroup/kogito-operator/
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9492c67eaa7ab37df6f5fa623c4aac955b7d7ffaab9ae2e57dea745e82907e40
        - registry.redhat.io/rhpam-7/rhpam-kogito-rhel8-operator-bundle@sha256:0192000a2994a62a904ce4aabfc1ff04caf2fa9d779d27c016922b9121877fac
        - registry.redhat.io/rhpam-7/rhpam-kogito-rhel8-operator@sha256:19497d4aff0ea3ea114dccb0d0e265458bb14ba6d325353eb82b554547dbd2e4
        version: 7.13.5-4
      entries:
      - name: rhpam-kogito-operator.7.13.5-4
        version: 7.13.5-4
      - name: rhpam-kogito-operator.7.13.5-3
        version: 7.13.5-3
      - name: rhpam-kogito-operator.7.13.5-2
        version: 7.13.5-2
      - name: rhpam-kogito-operator.7.13.5-1
        version: 7.13.5-1
      - name: rhpam-kogito-operator.7.13.4-3
        version: 7.13.4-3
      - name: rhpam-kogito-operator.7.13.4-2
        version: 7.13.4-2
      - name: rhpam-kogito-operator.7.13.4-1
        version: 7.13.4-1
      - name: rhpam-kogito-operator.7.13.3-1
        version: 7.13.3-1
      - name: rhpam-kogito-operator.7.13.2-3
        version: 7.13.2-3
      - name: rhpam-kogito-operator.7.13.2-2
        version: 7.13.2-2
      - name: rhpam-kogito-operator.7.13.2-1
        version: 7.13.2-1
      - name: rhpam-kogito-operator.7.13.1-2
        version: 7.13.1-2
      - name: rhpam-kogito-operator.7.13.1-1
        version: 7.13.1-1
      - name: rhpam-kogito-operator.7.13.0-1
        version: 7.13.0-1
      - name: rhpam-kogito-operator.v7.12.0-4
        version: 7.12.0-4
      - name: rhpam-kogito-operator.v7.12.0-3
        version: 7.12.0-3
      - name: rhpam-kogito-operator.v7.12.0-2
        version: 7.12.0-2
      name: 7.x
    defaultChannel: 7.x
    packageName: rhpam-kogito-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: t8c
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: t8c-operator.v42.22.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.5"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.22
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.22
        - quay.io/openshift-community-operators/t8c@sha256:3c48e0bb9fd04d86d92bddb5bc2367f7ee4b86af74421c8dcbd809a7ba657770
        version: 42.22.0
      entries:
      - name: t8c-operator.v42.22.0
        version: 42.22.0
      - name: t8c-operator.v42.21.0
        version: 42.21.0
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: stable
    - currentCSV: t8c-operator.v42.10.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.10
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:6e5cbb3287ad3ec69f3064fd5dd88f0e4794fef985bab390c5135c7162c2872c
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.10
        version: 42.10.0
      entries:
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.10.0
    - currentCSV: t8c-operator.v42.10.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.10
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:6e5cbb3287ad3ec69f3064fd5dd88f0e4794fef985bab390c5135c7162c2872c
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.10
        version: 42.10.0
      entries:
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.12.0
    - currentCSV: t8c-operator.v42.13.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.7"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.13
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:088d0eebf60c8f6961ca72c268f61d12648d575aa41552ae6398fefc6d9700cb
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.13
        version: 42.13.0
      entries:
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.13.0
    - currentCSV: t8c-operator.v42.14.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.7"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.14
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:d6d444e642bfd567eb40c7e084f5df743c23b47935e52e35ef541c67fcc00433
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.14
        version: 42.14.0
      entries:
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.14.0
    - currentCSV: t8c-operator.v42.15.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.6.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.15
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:b3469cd953ef2015fad2f7f96d960cee5ecaa6c19df631a9c882154ab5b3de98
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.15
        version: 42.15.0
      entries:
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.15.0
    - currentCSV: t8c-operator.v42.16.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.16
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:f49d3eddbfcec1018fd3716cd0ec2addef9961d2d308099636541868566979b0
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.16
        version: 42.16.0
      entries:
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.16.0
    - currentCSV: t8c-operator.v42.17.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.6.6"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.17
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:403b29a6262ba0e06de117f788aea7224268b798868c3e5b738b05e96df20456
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.17
        version: 42.17.0
      entries:
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.17.0
    - currentCSV: t8c-operator.v42.18.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.1"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.18
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.18
        - quay.io/openshift-community-operators/t8c@sha256:4bfaf97ab09a1aff1316536b99957b1f82763b009dde6d08fc9eea1fdd290fbf
        version: 42.18.0
      entries:
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.18.0
    - currentCSV: t8c-operator.v42.19.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.2"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.19
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:61f1ea9b3851d7272703f5bc21203ff03bb35fd52ed9780d0cf996379c78a00b
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.19
        version: 42.19.0
      entries:
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.19.0
    - currentCSV: t8c-operator.v42.20.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.20
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:48a5a9fbfa92b4b87b3653613467a3fcceacadbbabd274e367b40f6871039cc8
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.20
        version: 42.20.0
      entries:
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.20.0
    - currentCSV: t8c-operator.v42.21.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.4"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.21
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:d65834d8f9946c2764d45666c90c50f428b74afe7b066d666c18e9545994c9a8
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.21
        version: 42.21.0
      entries:
      - name: t8c-operator.v42.21.0
        version: 42.21.0
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.21.0
    - currentCSV: t8c-operator.v42.22.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.5"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.22
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:3c48e0bb9fd04d86d92bddb5bc2367f7ee4b86af74421c8dcbd809a7ba657770
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.22
        version: 42.22.0
      entries:
      - name: t8c-operator.v42.22.0
        version: 42.22.0
      - name: t8c-operator.v42.21.0
        version: 42.21.0
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.22.0
    - currentCSV: t8c-operator.v42.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.4.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.6
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:4964196aba839fde569ce58ab7e4eef438c9638ae4057194f2d7a58eaa5a98d9
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.6
        version: 42.6.0
      entries:
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.6.0
    - currentCSV: t8c-operator.v42.7.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.4.6"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.7
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.7
        - quay.io/openshift-community-operators/t8c@sha256:46c815fa635d58820757f41b1d8f04333638c39471f4d6c901a6500379680b57
        version: 42.7.0
      entries:
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.7.0
    - currentCSV: t8c-operator.v42.8.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.0"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.8
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:d8a575a84dd86d241acaaec53af1e164bc1ff1b95b5eb710851ae698bbed6bf5
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.8
        version: 42.8.0
      entries:
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.8.0
    - currentCSV: t8c-operator.v42.9.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.1"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.9
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:dfdc8fbdfc0ee76b2d5c62f6fd5deac2c50756661871d8b4357e25043e5ce66a
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.9
        version: 42.9.0
      entries:
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.9.0
    defaultChannel: stable
    packageName: t8c
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HPE
      provider-url: ""
    name: hpe-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hpe-csi-operator.v3.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "storage.hpe.com/v1",
                "kind": "HPECSIDriver",
                "metadata": {
                  "name": "hpecsidriver-sample"
                },
                "spec": {
                  "controller": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  },
                  "csp": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  },
                  "disable": {
                    "alletra6000": false,
                    "alletra9000": false,
                    "alletraStorageMP": false,
                    "b10000FileService": false,
                    "nimble": false,
                    "primera": false
                  },
                  "disableHostDeletion": false,
                  "disableNodeConfiguration": false,
                  "disableNodeConformance": false,
                  "disableNodeGetVolumeStats": false,
                  "disableNodeMonitor": false,
                  "disablePreInstallHooks": false,
                  "imagePullPolicy": "IfNotPresent",
                  "images": {
                    "b10000FileServiceCSP": "quay.io/hpestorage/alletrastoragemp-b10000-nfs-csp@sha256:6a1855a2ef1a83b886bb1f45b596e8e420e5e13c84bbf446c8c202eaf27a2013",
                    "csiAttacher": "registry.k8s.io/sig-storage/csi-attacher@sha256:5aaefc24f315b182233c8b6146077f8c32e274d864cb03c632206e78bd0302da",
                    "csiControllerDriver": "quay.io/hpestorage/csi-driver@sha256:27f3bd05372b4ed705b90461d053388a4f6d9cefa0cd3033e2747cbe1a7c045f",
                    "csiExtensions": "quay.io/hpestorage/csi-extensions@sha256:27074aaa8df3b867cfa3d12318612c45f8e541d750c27db5e080734592160c89",
                    "csiNodeDriver": "quay.io/hpestorage/csi-driver@sha256:27f3bd05372b4ed705b90461d053388a4f6d9cefa0cd3033e2747cbe1a7c045f",
                    "csiNodeDriverRegistrar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97",
                    "csiProvisioner": "registry.k8s.io/sig-storage/csi-provisioner@sha256:bb057f866177d5f4139a1527e594499cbe0feeb67b63aaca8679dfdf0a6016f9",
                    "csiResizer": "registry.k8s.io/sig-storage/csi-resizer@sha256:8ddd178ba5d08973f1607f9b84619b58320948de494b31c9d7cd5375b316d6d4",
                    "csiSnapshotter": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:5f4bb469fec51147ce157329dab598c758da1b018bad6dad26f0ff469326d769",
                    "csiVolumeGroupProvisioner": "quay.io/hpestorage/volume-group-provisioner@sha256:0a5f39f52113b963978a695bb8e5a5a3c4d387a02eb4d4a9647b4bc804de7399",
                    "csiVolumeGroupSnapshotter": "quay.io/hpestorage/volume-group-snapshotter@sha256:177d9abf8fbd3ac26ca4c12ca4b4adde20ebab308c79f10b04632f0171746fa8",
                    "csiVolumeMutator": "quay.io/hpestorage/volume-mutator@sha256:bf6beac1af5edcd3c9774f0dcc9579b79ef9cc8e4b74a4238082ab9aa443b5ed",
                    "nfsProvisioner": "quay.io/hpestorage/nfs-provisioner@sha256:5bf5952453ecca28e26724df85ebd5c8f0b7479ae4cb683d4a09c415da00e002",
                    "nimbleCSP": "quay.io/hpestorage/alletra-6000-and-nimble-csp@sha256:5480ffdebd74fdc547bc4a11b4434abac7bbfee3cee349f1ac893fbad84bb8d1",
                    "primera3parCSP": "quay.io/hpestorage/alletra-9000-primera-and-3par-csp@sha256:8af6e87075c47ba8d9714d55848ab2a0fef62b0768681e30d9e63ed7f396b0bf"
                  },
                  "iscsi": {
                    "chapSecretName": ""
                  },
                  "kubeletRootDir": "/var/lib/kubelet",
                  "logLevel": "info",
                  "maxVolumesPerNode": 100,
                  "node": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/hpestorage/csi-driver-operator@sha256:a3db9916f921de1379d4df953904bddb0057eee63705f57b435e40439c52ffca
          createdAt: "2025-12-17T08:03:50Z"
          description: A Container Storage Interface (CSI) driver for HPE storage
            platforms. The CSI driver allows you to use HPE storage with your preferred
            container orchestrator.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=1.0.0 <3.0.2'
          operatorframework.io/suggested-namespace: hpe-storage
          operatorhub.io/ui-metadata-max-k8s-version: "1.33"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/hpe-storage/co-deployments
          support: HPE
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HPE CSI Driver for Kubernetes
            displayName: HPECSIDriver
            kind: HPECSIDriver
            name: hpecsidrivers.storage.hpe.com
            version: v1
        description: |
          The HPE CSI Operator for OpenShift deploys the HPE CSI Driver on Kubernetes and OpenShift for dynamic provisioning of persistent volumes on HPE storage systems.
          The HPE CSI Driver for Kubernetes leverages HPE storage platforms to provide scalable and persistent storage for stateful applications.
          Please refer to our CSI driver [documentation](https://scod.hpedev.io/csi_driver/index.html) for supported HPE platforms and full list of supported CSI features.
          ## Installation
          Refer to the HPE CSI Operator for OpenShift [documentation](https://scod.hpedev.io/csi_driver/deployment.html#operator).
        displayName: HPE CSI Operator for OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - HPE
        - HPE CSI
        - HPE Storage
        - CSI
        links:
        - name: Documentation
          url: https://scod.hpedev.io/csi_driver/index.html
        maintainers:
        - email: dev-hi-containers@hpe.com
          name: HPE Storage Containers Team
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: HPE
        relatedImages:
        - registry.k8s.io/sig-storage/csi-resizer@sha256:8ddd178ba5d08973f1607f9b84619b58320948de494b31c9d7cd5375b316d6d4
        - quay.io/hpestorage/csi-driver@sha256:27f3bd05372b4ed705b90461d053388a4f6d9cefa0cd3033e2747cbe1a7c045f
        - quay.io/hpestorage/volume-group-provisioner@sha256:0a5f39f52113b963978a695bb8e5a5a3c4d387a02eb4d4a9647b4bc804de7399
        - quay.io/hpestorage/volume-group-snapshotter@sha256:177d9abf8fbd3ac26ca4c12ca4b4adde20ebab308c79f10b04632f0171746fa8
        - quay.io/hpestorage/volume-mutator@sha256:bf6beac1af5edcd3c9774f0dcc9579b79ef9cc8e4b74a4238082ab9aa443b5ed
        - registry.k8s.io/sig-storage/csi-attacher@sha256:5aaefc24f315b182233c8b6146077f8c32e274d864cb03c632206e78bd0302da
        - quay.io/hpestorage/alletrastoragemp-b10000-nfs-csp@sha256:6a1855a2ef1a83b886bb1f45b596e8e420e5e13c84bbf446c8c202eaf27a2013
        - registry.connect.redhat.com/hpestorage/csi-driver-operator@sha256:a3db9916f921de1379d4df953904bddb0057eee63705f57b435e40439c52ffca
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97
        - quay.io/hpestorage/alletra-9000-primera-and-3par-csp@sha256:8af6e87075c47ba8d9714d55848ab2a0fef62b0768681e30d9e63ed7f396b0bf
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:5f4bb469fec51147ce157329dab598c758da1b018bad6dad26f0ff469326d769
        - registry.connect.redhat.com/hpestorage/csi-driver-operator-bundle@sha256:ae86d21d2f53c21a2e7b6494937b6cbcf8f1d08c500cd2d1ea3090e40f2da96f
        - quay.io/hpestorage/alletra-6000-and-nimble-csp@sha256:5480ffdebd74fdc547bc4a11b4434abac7bbfee3cee349f1ac893fbad84bb8d1
        - quay.io/hpestorage/nfs-provisioner@sha256:5bf5952453ecca28e26724df85ebd5c8f0b7479ae4cb683d4a09c415da00e002
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:bb057f866177d5f4139a1527e594499cbe0feeb67b63aaca8679dfdf0a6016f9
        - quay.io/hpestorage/csi-extensions@sha256:27074aaa8df3b867cfa3d12318612c45f8e541d750c27db5e080734592160c89
        version: 3.0.2
      entries:
      - name: hpe-csi-operator.v3.0.2
        version: 3.0.2
      name: stable
    defaultChannel: stable
    packageName: hpe-csi-operator
    provider:
      name: HPE
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: GitLab, Inc.
      provider-url: https://gitlab.com
    name: gitlab-runner-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-runner-operator.v1.43.3
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta2",
                "kind": "Runner",
                "metadata": {
                  "name": "gitlab-runner-example",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "gitlabUrl": "https://gitlab.example.com",
                  "token": "runner-token-secret",
                  "tags": "kubernetes,example",
                  "concurrent": 10,
                  "imagePullPolicy": "IfNotPresent"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery, Developer Tools
          containerImage: registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
          createdAt: "2025-11-28T23:15:09Z"
          description: GitLab Runner operator manages lifecycle of GitLab Runner instances
          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: "true"
          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.skipRange: '>=1.11.0 <1.43.3'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: none
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
          support: GitLab, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Runner is the open source project used to run your jobs and
              send the results back to GitLab
            displayName: GitLab Runner
            kind: Runner
            name: runners.apps.gitlab.com
            version: v1beta2
        description: |-
          GitLab Runner is the lightweight, highly-scalable agent that runs your build jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.

              The GitLab Runner operator manages the lifecycle of GitLab Runner in Kubernetes or Openshift clusters. The operator aims to automate the tasks needed to run your CI/CD jobs in your container orchestration platform.

              ## Prerequisites

                For Kubernetes cluster, install cert-manager:

                ```shell
                kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.7.1/cert-manager.yaml
                ```

              ## GitLab Runner version

              This version of **GitLab Runner Operator** ships with **GitLab Runner v18.6.3**.

              To use a different version of **GitLab Runner** change the [`runnerImage` and `helperImage` properties](https://docs.gitlab.com/runner/configuration/configuring_runner_operator.html#operator-properties).

              ## Usage

               To link a GitLab Runner instance to a self-hosted GitLab instance or the hosted [GitLab](https://gitlab.com), you first need to:

               1. Create a secret containing the `runner-token` from your GitLab project.

                ```
                cat > gitlab-runner-secret.yml << EOF
                apiVersion: v1
                kind: Secret
                metadata:
                  name: gitlab-runner-secret
                type: Opaque
                # Only one of the following fields must be set. The Operator will fail to register Runner if both are provided.
                # # NOTE: runner-registration-token is deprecated and will be removed in GitLab 18.0. You should use runner-token instead.
                stringData:
                  runner-token: REPLACE_ME # your project runner token
                  # runner-registration-token: "" # your project runner secret
                EOF
                ```

                ```
                oc apply -f gitlab-runner-secret.yml
                ```

               2. Create the Custom Resource Definition (CRD) file and include the following information. The tags value must be openshift for the job to run.

                 ```
                 cat > gitlab-runner.yml << EOF
                 apiVersion: apps.gitlab.com/v1beta2
                 kind: Runner
                 metadata:
                   name: gitlab-runner
                 spec:
                   gitlabUrl: https://gitlab.example.com
                   buildImage: alpine
                   token: gitlab-runner-secret
                   tags: openshift
                 EOF
                 ```

                ```
                oc apply -f gitlab-runner.yml
                ```

              ## Full documentation

              Visit [Install GitLab Runner Operator](https://docs.gitlab.com/runner/install/operator.html)
        displayName: GitLab Runner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GitLab
        - CI/CD
        - DevOps
        - SAST
        - DAST
        links:
        - name: Gitlab Runner Operator
          url: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
        - name: GitLab Docs
          url: https://docs.gitlab.com
        - name: GitLab Runner
          url: https://docs.gitlab.com/runner/
        - name: GitLab CI/CD
          url: https://docs.gitlab.com/ee/ci/quick_start/
        maintainers:
        - email: support@gitlab.com
          name: Georgi N. Georgiev
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: GitLab, Inc.
          url: https://gitlab.com
        relatedImages:
        - registry.connect.redhat.com/gitlab/gitlab-runner-operator-bundle@sha256:0a633ff6d83e6fe961516724c51c16bb06f84efecfca16c36b17d525d3b937c3
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-helper-ocp@sha256:9c1723a09b7255e8ab13954375e263965de1955d9f1fdc5e64d7610c7495e614
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-ocp@sha256:de78dc586ebc1c1ea6e4be7b8a21e949bc24860051e3eab93f3468751a04ca0a
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/openshift4/ose-kube-rbac-proxy@sha256:bb84ead437042603254efcb703442be8500a9450b10bbcaaee81b48a6ed869ea
        version: 1.43.3
      entries:
      - name: gitlab-runner-operator.v1.43.3
        version: 1.43.3
      - name: gitlab-runner-operator.v1.43.2
        version: 1.43.2
      - name: gitlab-runner-operator.v1.43.1
        version: 1.43.1
      - name: gitlab-runner-operator.v1.43.0
        version: 1.43.0
      name: stable
    defaultChannel: stable
    packageName: gitlab-runner-operator
    provider:
      name: GitLab, Inc.
      url: https://gitlab.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-kms-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-kms-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kms.services.k8s.aws/v1alpha1",
                "kind": "Alias",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "kms.services.k8s.aws/v1alpha1",
                "kind": "Grant",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "kms.services.k8s.aws/v1alpha1",
                "kind": "Key",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/kms-controller:1.2.0
          createdAt: "2025-11-29T03:55:26Z"
          description: AWS KMS controller is a service controller for managing KMS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alias represents the state of an AWS kms Alias resource.
            displayName: Alias
            kind: Alias
            name: aliases.kms.services.k8s.aws
            version: v1alpha1
          - description: Grant represents the state of an AWS kms Grant resource.
            displayName: Grant
            kind: Grant
            name: grants.kms.services.k8s.aws
            version: v1alpha1
          - description: Key represents the state of an AWS kms Key resource.
            displayName: Key
            kind: Key
            name: keys.kms.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Key Management Service (KMS) resources in AWS from within your Kubernetes cluster.

          **About Amazon KMS**

          AWS Key Management Service (AWS KMS) is a managed service that makes it easy for you to create and control the cryptographic keys that are used to protect your data. AWS KMS uses hardware security modules (HSM) to protect and validate your AWS KMS keys under the [FIPS 140-2 Cryptographic Module Validation Program](https://csrc.nist.gov/projects/cryptographic-module-validation-program/Certificate/3139), except in the China (Beijing) and China (Ningxia) Regions.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon KMS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kms
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon KMS Developer Resources
          url: https://aws.amazon.com/kms/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: kms maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/kms-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-kms-controller@sha256:fcadd7b195741affd5ee61bf911911408153dcfa26192ceff8c9d0d830acd6e0
        version: 1.2.0
      entries:
      - name: ack-kms-controller.v1.2.0
        version: 1.2.0
      - name: ack-kms-controller.v1.1.2
        version: 1.1.2
      - name: ack-kms-controller.v1.1.1
        version: 1.1.1
      - name: ack-kms-controller.v1.1.0
        version: 1.1.0
      - name: ack-kms-controller.v1.0.31
        version: 1.0.31
      - name: ack-kms-controller.v1.0.30
        version: 1.0.30
      - name: ack-kms-controller.v1.0.29
        version: 1.0.29
      - name: ack-kms-controller.v1.0.28
        version: 1.0.28
      - name: ack-kms-controller.v1.0.27
        version: 1.0.27
      - name: ack-kms-controller.v1.0.26
        version: 1.0.26
      - name: ack-kms-controller.v1.0.25
        version: 1.0.25
      - name: ack-kms-controller.v1.0.24
        version: 1.0.24
      - name: ack-kms-controller.v1.0.23
        version: 1.0.23
      - name: ack-kms-controller.v1.0.22
        version: 1.0.22
      - name: ack-kms-controller.v1.0.19
        version: 1.0.19
      - name: ack-kms-controller.v1.0.18
        version: 1.0.18
      - name: ack-kms-controller.v1.0.17
        version: 1.0.17
      - name: ack-kms-controller.v1.0.16
        version: 1.0.16
      - name: ack-kms-controller.v1.0.15
        version: 1.0.15
      - name: ack-kms-controller.v1.0.14
        version: 1.0.14
      - name: ack-kms-controller.v1.0.13
        version: 1.0.13
      - name: ack-kms-controller.v1.0.12
        version: 1.0.12
      - name: ack-kms-controller.v1.0.8
        version: 1.0.8
      - name: ack-kms-controller.v1.0.7
        version: 1.0.7
      - name: ack-kms-controller.v1.0.5
        version: 1.0.5
      - name: ack-kms-controller.v1.0.4
        version: 1.0.4
      - name: ack-kms-controller.v1.0.3
        version: 1.0.3
      - name: ack-kms-controller.v1.0.2
        version: 1.0.2
      - name: ack-kms-controller.v1.0.0
        version: 1.0.0
      - name: ack-kms-controller.v0.1.5
        version: 0.1.5
      - name: ack-kms-controller.v0.1.4
        version: 0.1.4
      - name: ack-kms-controller.v0.1.3
        version: 0.1.3
      - name: ack-kms-controller.v0.1.2
        version: 0.1.2
      - name: ack-kms-controller.v0.1.1
        version: 0.1.1
      - name: ack-kms-controller.v0.1.0
        version: 0.1.0
      - name: ack-kms-controller.v0.0.20
        version: 0.0.20
      - name: ack-kms-controller.v0.0.19
        version: 0.0.19
      - name: ack-kms-controller.v0.0.18
        version: 0.0.18
      - name: ack-kms-controller.v0.0.17
        version: 0.0.17
      - name: ack-kms-controller.v0.0.16
        version: 0.0.16
      - name: ack-kms-controller.v0.0.15
        version: 0.0.15
      - name: ack-kms-controller.v0.0.14
        version: 0.0.14
      - name: ack-kms-controller.v0.0.13
        version: 0.0.13
      - name: ack-kms-controller.v0.0.12
        version: 0.0.12
      - name: ack-kms-controller.v0.0.11
        version: 0.0.11
      - name: ack-kms-controller.v0.0.10
        version: 0.0.10
      - name: ack-kms-controller.v0.0.9
        version: 0.0.9
      - name: ack-kms-controller.v0.0.8
        version: 0.0.8
      - name: ack-kms-controller.v0.0.7
        version: 0.0.7
      - name: ack-kms-controller.v0.0.6
        version: 0.0.6
      - name: ack-kms-controller.v0.0.5
        version: 0.0.5
      - name: ack-kms-controller.v0.0.4
        version: 0.0.4
      - name: ack-kms-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-kms-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-prometheus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-prometheus-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:2a74517c3befcac1566f5c65e0f573e4378eafe4ba88816229a46557cc1b2b62
          createdAt: "2024-03-01T23:43:00Z"
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/prometheus-operator/prometheus-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:2a74517c3befcac1566f5c65e0f573e4378eafe4ba88816229a46557cc1b2b62
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:3901127db6a0cb2323651885f04a603391478f58ad2d5bcaa161a9e16332288e
        - registry.redhat.io/odf4/odf-prometheus-operator-bundle@sha256:978e6ca6c295ced191eaa8439ce80bb48ed8122409f34a334b5f05d25899be88
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager-rhel9@sha256:0033bfb29ebb2dcf16323276a9287f6f21339c1d797783f9d140909951b18f90
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader-rhel9@sha256:4eca079cbaf2b8e69eac9e8b8418ef091ef78b4a48a48dfc317d243c53d55758
        version: 4.19.9-rhodf
      entries:
      - name: odf-prometheus-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-prometheus-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-prometheus-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-prometheus-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-prometheus-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-prometheus-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-prometheus-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-prometheus-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-prometheus-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-prometheus-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-prometheus-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:f995093d6fd6c66e2c50cc4bceee9c739d09453ea85eca0232013632371fc594
          createdAt: "2024-03-01T23:43:00Z"
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/prometheus-operator/prometheus-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:101993f6e65d6fda8b90c583b718b720809182961f69bc777295f47e6df4d7ce
        - registry.redhat.io/odf4/odf-prometheus-operator-bundle@sha256:efc835326cd0bf95c479809f9e02c1ce921bedd3dd2a8e67605346ec623e4032
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager-rhel9@sha256:7e7e39f59a298ff2ca6aba00ce861866dc16bf39398e78523ba4e7600c46dea9
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader-rhel9@sha256:b99613494e9d6a4a8207323872d63cc02b830fc80a8bf972e62c64381aa4cd17
        - registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:f995093d6fd6c66e2c50cc4bceee9c739d09453ea85eca0232013632371fc594
        version: 4.20.4-rhodf
      entries:
      - name: odf-prometheus-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-prometheus-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-prometheus-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-prometheus-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-prometheus-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-prometheus-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-activemqartemis: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/
    name: amq-broker-rhel8
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-broker-operator.v7.10.7-opr-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [{
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                    "name": "ex-aao",
                    "application": "ex-aao-app"
                },
                "spec": {
                    "deploymentPlan": {
                        "image": "placeholder",
                        "size": 2,
                        "requireLogin": false,
                        "persistenceEnabled": false,
                        "journalType": "nio",
                        "messageMigration": false,
                        "jolokiaAgentEnabled": false,
                        "managementRBACEnabled": true
                    }
                }
            }, {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                    "name": "ex-aaoaddress"
                },
                "spec": {
                    "addressName": "myAddress0",
                    "queueName": "myQueue0",
                    "routingType": "anycast"
                }
            }, {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                    "name": "ex-aaoscaledown"
                },
                "spec": {
                    "localOnly": "true"
                }
            }, {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                    "name": "ex-keycloak"
                },
                "spec": {
                    "loginModules": {
                        "propertiesLoginModules": [
                            {
                                "name": "prop-module",
                                "users": [
                                    {
                                        "name": "superman",
                                        "roles": [
                                            "root"
                                        ]
                                    }
                                ]
                            }
                        ]
                    },
                    "securityDomains": {
                        "brokerDomain": {
                            "name": "activemq",
                            "loginModules": [
                                {
                                    "name": "prop-module",
                                    "flag": "sufficient"
                                }
                            ]
                        }
                    }
                }
            }]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:1a7aa54d2799d238eb5f49f7a95a78a896f6bf8d222567e9118e0e3963cc9aad
          createdAt: "2021-06-18T00:02:04Z"
          description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A stateful deployment of one or more brokers
            displayName: AMQ Broker
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: Adding and removing addresses via custom resource definitions
            displayName: AMQ Broker Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: Provides message migration on clustered broker scaledown
            displayName: AMQ Broker Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: Security configuration for the broker
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
          to deploy and manage stateful AMQ Broker broker clusters
        displayName: Red Hat Integration - AMQ Broker for RHEL 8 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: rkieley@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:1a7aa54d2799d238eb5f49f7a95a78a896f6bf8d222567e9118e0e3963cc9aad
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c5f4c08e068b9721967cf7c7cbd9a9e93fb5e39b264dd13b653e99d8f3fa9e0e
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:5ff28e3062d3eabb9f52d8271b837fdab06cafbd8b8f732b1bc00de49ad69aad
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9a02decbc460ddfc501d8a4a9b41cd084776090951906b027838c0829e1fc15a
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:e140415e0361cabeab192ba6d22634283cd47749dd25e9cee4a775d3c409cd97
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:61e5a8c1e46f1c18648e0406e2a57c52f911979079020cc57c7a4b06a56940bb
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        version: 7.10.7-opr-1
      entries:
      - name: amq-broker-operator.v7.10.7-opr-1
        version: 7.10.7-opr-1
      - name: amq-broker-operator.v7.10.6-opr-1
        version: 7.10.6-opr-1
      - name: amq-broker-operator.v7.10.5-opr-1
        version: 7.10.5-opr-1
      - name: amq-broker-operator.v7.10.4-opr-1
        version: 7.10.4-opr-1
      - name: amq-broker-operator.v7.10.3-opr-3
        version: 7.10.3-opr-3
      - name: amq-broker-operator.v7.10.3-opr-2
        version: 7.10.3-opr-2
      - name: amq-broker-operator.v7.10.3-opr-1
        version: 7.10.3-opr-1
      - name: amq-broker-operator.v7.10.2-opr-2-0.1676475747.p
        version: 7.10.2-opr-2+0.1676475747.p
      - name: amq-broker-operator.v7.10.2-opr-2-0.1680622941.p
        version: 7.10.2-opr-2+0.1680622941.p
      - name: amq-broker-operator.v7.10.2-opr-2
        version: 7.10.2-opr-2
      - name: amq-broker-operator.v7.10.2-opr-1
        version: 7.10.2-opr-1
      - name: amq-broker-operator.v7.10.1-opr-2
        version: 7.10.1-opr-2
      - name: amq-broker-operator.v7.10.1-opr-1
        version: 7.10.1-opr-1
      - name: amq-broker-operator.v7.10.0-opr-4
        version: 7.10.0-opr-4
      - name: amq-broker-operator.v7.10.0-opr-3
        version: 7.10.0-opr-3
      - name: amq-broker-operator.v7.10.0-opr-2
        version: 7.10.0-opr-2
      - name: amq-broker-operator.v7.10.0-opr-1
        version: 7.10.0-opr-1
      name: 7.10.x
    - currentCSV: amq-broker-operator.v7.11.8-opr-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisSecurity is the Schema for the activemqartemissecurities
              API
            displayName: Active MQArtemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: |
          **Red Hat AMQ Broker** is a pure-Java multiprotocol message broker. It’s built on an efficient, asynchronous core with a fast journal for message persistence.

          You can provision multiple instances and update the broker configuration on the fly using the associated Custom Resource Definitions.
          In addition, you can use the following CRDs to configure your broker environment:

          - **Address CRD**: define addresses and queues for the brokers in your deployment
          - **Security CRD**: define the security configuration for the brokers in your deployment, including:
              - users and roles
              - role based access control
              - console access control

          ## Selecting a channel
          You can specify the channel used to track and receive updates for the Operator by selecting either to track the minor or patch level versions.

          ## Supported Features
          - **Console** - Allows you view the broker topology, clients and messages. Red Hat Fuse users can integrate the broker console into the Fuse console for OpenShift.
          - **Persistence** - ephemeral and stateful deployments.
          - **Advanced queueing** - Last value queues, message groups, topic hierarchies, and large message support.
          - **Multiprotocol** - AMQP 1.0, MQTT, STOMP, OpenWire, and HornetQ Core.
          - **Address Management** - Creates and manages addresses and queues.
          - **User Management** - Creates and manages broker users.
          - **Monitoring** - Support for monitoring using Prometheus and provided Grafana dashboards.
          - **Scaledown** - Ensure consistency of messages using message migration.

          ## Storage
          An efficient data storage infrastructure is essential to the optimal performance of AMQ Broker.  AMQ Broker supports:
            - **Ephemeral** (Recommended for development only!)
            - **Persistent**
              - For example, block or NFS storage.
          Note: Your cloud provider might provide options that are not suitable for AMQ Broker, for example Amazon Elastic File System.  If in doubt, contact Red Hat Support

          ## Documentation
          Documentation for the current release is available from the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq/2021.q4/#category-amq-broker).
        displayName: Red Hat Integration - AMQ Broker for RHEL 8 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c5f4c08e068b9721967cf7c7cbd9a9e93fb5e39b264dd13b653e99d8f3fa9e0e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:4b7796235a0a545db83570add7a675fdd9d82b17f931eb81d0cafbedb1fbf22c
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:5ff28e3062d3eabb9f52d8271b837fdab06cafbd8b8f732b1bc00de49ad69aad
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:d2ae3defac36f00112c6b773e13626336ba15d6f50f905ad1c33f122bfe1a6a9
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:61e5a8c1e46f1c18648e0406e2a57c52f911979079020cc57c7a4b06a56940bb
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9a02decbc460ddfc501d8a4a9b41cd084776090951906b027838c0829e1fc15a
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b0b3684ef1ebf8b44d3a4c46391984173792dde1bd7363ea06d43a8f95a717d0
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:137b893ad15e0cd5353bae134c8fae833257a12641b12d0f774f1565ce66f63c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        version: 7.11.8-opr-1
      entries:
      - name: amq-broker-operator.v7.11.8-opr-1
        version: 7.11.8-opr-1
      - name: amq-broker-operator.v7.11.7-opr-2-1742200979
        version: 7.11.7-opr-2-1742200979
      - name: amq-broker-operator.v7.11.7-opr-2-1740583644
        version: 7.11.7-opr-2-1740583644
      - name: amq-broker-operator.v7.11.7-opr-2-1736956309
        version: 7.11.7-opr-2-1736956309
      - name: amq-broker-operator.v7.11.7-opr-2-1731330819
        version: 7.11.7-opr-2-1731330819
      - name: amq-broker-operator.v7.11.7-opr-2
        version: 7.11.7-opr-2
      - name: amq-broker-operator.v7.11.7-opr-1-1726157430
        version: 7.11.7-opr-1-1726157430
      - name: amq-broker-operator.v7.11.7-opr-1-1723204800
        version: 7.11.7-opr-1-1723204800
      - name: amq-broker-operator.v7.11.7-opr-1
        version: 7.11.7-opr-1
      - name: amq-broker-operator.v7.11.6-opr-2
        version: 7.11.6-opr-2
      - name: amq-broker-operator.v7.11.5-opr-1
        version: 7.11.5-opr-1
      - name: amq-broker-operator.v7.11.4-opr-1
        version: 7.11.4-opr-1
      - name: amq-broker-operator.v7.11.3-opr-1
        version: 7.11.3-opr-1
      - name: amq-broker-operator.v7.11.2-opr-1
        version: 7.11.2-opr-1
      - name: amq-broker-operator.v7.11.1-opr-2
        version: 7.11.1-opr-2
      - name: amq-broker-operator.v7.11.1-opr-1
        version: 7.11.1-opr-1
      - name: amq-broker-operator.v7.11.0-opr-3
        version: 7.11.0-opr-3
      - name: amq-broker-operator.v7.11.0-opr-2
        version: 7.11.0-opr-2
      name: 7.11.x
    - currentCSV: amq-broker-operator.v7.12.5-opr-1-0.1766088985.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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.substitutesFor: amq-broker-operator.v7.12.5-opr-1-0.1764078330.p
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - description: Provides internal message migration on clustered broker scaledown
            displayName: ActiveMQ Artemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: |
          **Red Hat AMQ Broker** is a pure-Java multiprotocol message broker. It’s built on an efficient, asynchronous core with a fast journal for message persistence.

          You can provision multiple instances and update the broker configuration on the fly using the associated Custom Resource Definitions.
          In addition, you can use the following CRDs to configure your broker environment:

          - **Address CRD**: define addresses and queues for the brokers in your deployment
          - **Security CRD**: define the security configuration for the brokers in your deployment, including:
              - users and roles
              - role based access control
              - console access control

          ## Selecting a channel
          You can specify the channel used to track and receive updates for the Operator by selecting either to track the minor or patch level versions.

          ## Supported Features
          - **Console** - Allows you view the broker topology, clients and messages. Red Hat Fuse users can integrate the broker console into the Fuse console for OpenShift.
          - **Persistence** - ephemeral and stateful deployments.
          - **Advanced queueing** - Last value queues, message groups, topic hierarchies, and large message support.
          - **Multiprotocol** - AMQP 1.0, MQTT, STOMP, OpenWire, and HornetQ Core.
          - **Address Management** - Creates and manages addresses and queues.
          - **User Management** - Creates and manages broker users.
          - **Monitoring** - Support for monitoring using Prometheus and provided Grafana dashboards.
          - **Scaledown** - Ensure consistency of messages using message migration.

          ## Storage
          An efficient data storage infrastructure is essential to the optimal performance of AMQ Broker.  AMQ Broker supports:
            - **Ephemeral** (Recommended for development only!)
            - **Persistent**
              - For example, block or NFS storage.
          Note: Your cloud provider might provide options that are not suitable for AMQ Broker, for example Amazon Elastic File System.  If in doubt, contact Red Hat Support

          ## Documentation
          Documentation for the current release is available from the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq/2021.q4/#category-amq-broker).
        displayName: Red Hat Integration - AMQ Broker for RHEL 8 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:92305253e5770277b74bea6f4bddcb918664df174ac1cf1bcfd84f261465f9a4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:47fd4ce2533496828aba37bd1f9715e2164d5c90bd0fc6b25e7e0786d723bf01
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:bb6fbd68475a7852b4d99eea6c4ab313f9267da7963162f0d75375d7063409e7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9cc48eecf1442ae04b8543fa5d4381a13bc2831390850828834d387006d1342b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ffffa9875f0379e9373f89f05eb06e5a193273bb04bc3aa5f85b044357b79098
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:dc13871dfed52402c40fd192900fc3cb5a49da4fa08e4ec4d0e23a879e83db25
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:16253895bc113f395dc6ab5cd511901e43b6ee676369ec80d598a8741c3c9bf4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:36ea76632f4928c6c34087d06b942c44f6d5bdd4f1828ab4e5efe36cdaf0632f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d42d713da0ce6806fdc6492b6342586783e6865a82a8647d3c4288439b1751ee
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:023478b773a0c42739b86e822a4d435e01ef341b8136566ea52463f1b7e447ed
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:eacc4fb55e8c4c30894a51944960d536508001a49fda62782c6cb2ca8767961d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:7f9b921d89b6d4d91b365659afff127d99f1455b94b48a10a6a7f4c38dd8b700
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b2402179b1d0ff9c950defe5d8808195ef9a4c3e13e3c469cae31ab51d5f5014
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7f83cabd3579472283c9a22e5722ddc58b14bc819fa9ba8d2281560920b392e8
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d71506472636d940b5dbd3e708d3e0448d777eeecfd38de61ba49e281d2979c6
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:40920687402fd747ca02d384e63692a5e1db625723a2bf3056a607c92ee8eee1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        version: 7.12.5-opr-1+0.1766088985.p
      entries:
      - name: amq-broker-operator.v7.12.5-opr-1-0.1762191931.p
        version: 7.12.5-opr-1+0.1762191931.p
      - name: amq-broker-operator.v7.12.5-opr-1
        version: 7.12.5-opr-1
      - name: amq-broker-operator.v7.12.5-opr-1-0.1764078330.p
        version: 7.12.5-opr-1+0.1764078330.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1764016479.p
        version: 7.12.5-opr-1+0.1764016479.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1763602793.p
        version: 7.12.5-opr-1+0.1763602793.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1762407308.p
        version: 7.12.5-opr-1+0.1762407308.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1761126305.p
        version: 7.12.5-opr-1+0.1761126305.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1761129569.p
        version: 7.12.5-opr-1+0.1761129569.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1766088985.p
        version: 7.12.5-opr-1+0.1766088985.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1757928550.p
        version: 7.12.5-opr-1+0.1757928550.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1756216162.p
        version: 7.12.5-opr-1+0.1756216162.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1754272113.p
        version: 7.12.5-opr-1+0.1754272113.p
      - name: amq-broker-operator.v7.12.4-opr-1
        version: 7.12.4-opr-1
      - name: amq-broker-operator.v7.12.4-opr-1-0.1747217191.p
        version: 7.12.4-opr-1+0.1747217191.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1730142550.p
        version: 7.12.3-opr-1+0.1730142550.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1731483798.p
        version: 7.12.3-opr-1+0.1731483798.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1739889884.p
        version: 7.12.3-opr-1+0.1739889884.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1739991235.p
        version: 7.12.3-opr-1+0.1739991235.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1741881887.p
        version: 7.12.3-opr-1+0.1741881887.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1741883943.p
        version: 7.12.3-opr-1+0.1741883943.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1741884937.p
        version: 7.12.3-opr-1+0.1741884937.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1738596517.p
        version: 7.12.3-opr-1+0.1738596517.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1737643631.p
        version: 7.12.3-opr-1+0.1737643631.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1733315503.p
        version: 7.12.3-opr-1+0.1733315503.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1732654016.p
        version: 7.12.3-opr-1+0.1732654016.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1739390944.p
        version: 7.12.3-opr-1+0.1739390944.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1730813578.p
        version: 7.12.3-opr-1+0.1730813578.p
      - name: amq-broker-operator.v7.12.3-opr-1
        version: 7.12.3-opr-1
      - name: amq-broker-operator.v7.12.2-opr-1
        version: 7.12.2-opr-1
      - name: amq-broker-operator.v7.12.1-opr-1-0.1724054375.p
        version: 7.12.1-opr-1+0.1724054375.p
      - name: amq-broker-operator.v7.12.1-opr-1-0.1723669176.p
        version: 7.12.1-opr-1+0.1723669176.p
      - name: amq-broker-operator.v7.12.1-opr-1-0.1721247907.p
        version: 7.12.1-opr-1+0.1721247907.p
      - name: amq-broker-operator.v7.12.1-opr-1
        version: 7.12.1-opr-1
      - name: amq-broker-operator.v7.12.0-opr-2
        version: 7.12.0-opr-2
      - name: amq-broker-operator.v7.12.0-opr-1
        version: 7.12.0-opr-1
      name: 7.12.x
    defaultChannel: 7.12.x
    packageName: amq-broker-rhel8
    provider:
      name: Red Hat
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-lambda-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-lambda-controller.v1.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "Alias",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "CodeSigningConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "EventSourceMapping",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "Function",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/lambda-controller:1.10.0
          createdAt: "2025-11-29T05:54:22Z"
          description: AWS Lambda controller is a service controller for managing
            Lambda resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alias represents the state of an AWS lambda Alias resource.
            displayName: Alias
            kind: Alias
            name: aliases.lambda.services.k8s.aws
            version: v1alpha1
          - description: CodeSigningConfig represents the state of an AWS lambda CodeSigningConfig
              resource.
            displayName: CodeSigningConfig
            kind: CodeSigningConfig
            name: codesigningconfigs.lambda.services.k8s.aws
            version: v1alpha1
          - description: EventSourceMapping represents the state of an AWS lambda
              EventSourceMapping resource.
            displayName: EventSourceMapping
            kind: EventSourceMapping
            name: eventsourcemappings.lambda.services.k8s.aws
            version: v1alpha1
          - description: Function represents the state of an AWS lambda Function resource.
            displayName: Function
            kind: Function
            name: functions.lambda.services.k8s.aws
            version: v1alpha1
          - description: FunctionURLConfig represents the state of an AWS lambda FunctionURLConfig
              resource.
            displayName: FunctionURLConfig
            kind: FunctionURLConfig
            name: functionurlconfigs.lambda.services.k8s.aws
            version: v1alpha1
          - description: LayerVersion represents the state of an AWS lambda LayerVersion
              resource.
            displayName: LayerVersion
            kind: LayerVersion
            name: layerversions.lambda.services.k8s.aws
            version: v1alpha1
          - description: Version represents the state of an AWS lambda Version resource.
            displayName: Version
            kind: Version
            name: versions.lambda.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Lambda resources in AWS from within your Kubernetes cluster.

          **About Amazon Lambda**

          Lambda is a compute service that lets you run code without provisioning or managing servers. Lambda runs your code on a high-availability compute infrastructure and performs all of the administration of the compute resources, including server and operating system maintenance, capacity provisioning and automatic scaling, code monitoring and logging. With Lambda, you can run code for virtually any type of application or backend service. All you need to do is supply your code in one of the [languages that Lambda supports](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Lambda
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - lambda
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Lambda Developer Resources
          url: https://aws.amazon.com/lambda/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: lambda maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/lambda-controller:1.10.0
        - quay.io/community-operator-pipeline-prod/ack-lambda-controller@sha256:d6e322492f07052cff6d7d727a56080d52437d56e3f4cf8ee1e19c28656be83d
        version: 1.10.0
      entries:
      - name: ack-lambda-controller.v1.10.0
        version: 1.10.0
      - name: ack-lambda-controller.v1.9.2
        version: 1.9.2
      - name: ack-lambda-controller.v1.9.1
        version: 1.9.1
      - name: ack-lambda-controller.v1.9.0
        version: 1.9.0
      - name: ack-lambda-controller.v1.8.0
        version: 1.8.0
      - name: ack-lambda-controller.v1.7.7
        version: 1.7.7
      - name: ack-lambda-controller.v1.7.6
        version: 1.7.6
      - name: ack-lambda-controller.v1.7.5
        version: 1.7.5
      - name: ack-lambda-controller.v1.7.4
        version: 1.7.4
      - name: ack-lambda-controller.v1.7.2
        version: 1.7.2
      - name: ack-lambda-controller.v1.7.1
        version: 1.7.1
      - name: ack-lambda-controller.v1.7.0
        version: 1.7.0
      - name: ack-lambda-controller.v1.6.3
        version: 1.6.3
      - name: ack-lambda-controller.v1.6.2
        version: 1.6.2
      - name: ack-lambda-controller.v1.6.1
        version: 1.6.1
      - name: ack-lambda-controller.v1.6.0
        version: 1.6.0
      - name: ack-lambda-controller.v1.5.8
        version: 1.5.8
      - name: ack-lambda-controller.v1.5.7
        version: 1.5.7
      - name: ack-lambda-controller.v1.5.6
        version: 1.5.6
      - name: ack-lambda-controller.v1.5.5
        version: 1.5.5
      - name: ack-lambda-controller.v1.5.4
        version: 1.5.4
      - name: ack-lambda-controller.v1.5.3
        version: 1.5.3
      - name: ack-lambda-controller.v1.5.2
        version: 1.5.2
      - name: ack-lambda-controller.v1.5.1
        version: 1.5.1
      - name: ack-lambda-controller.v1.5.0
        version: 1.5.0
      - name: ack-lambda-controller.v1.4.2
        version: 1.4.2
      - name: ack-lambda-controller.v1.4.0
        version: 1.4.0
      - name: ack-lambda-controller.v1.3.4
        version: 1.3.4
      - name: ack-lambda-controller.v1.3.2
        version: 1.3.2
      - name: ack-lambda-controller.v1.3.1
        version: 1.3.1
      - name: ack-lambda-controller.v1.3.0
        version: 1.3.0
      - name: ack-lambda-controller.v1.2.1
        version: 1.2.1
      - name: ack-lambda-controller.v1.2.0
        version: 1.2.0
      - name: ack-lambda-controller.v1.1.1
        version: 1.1.1
      - name: ack-lambda-controller.v1.1.0
        version: 1.1.0
      - name: ack-lambda-controller.v1.0.1
        version: 1.0.1
      - name: ack-lambda-controller.v1.0.0
        version: 1.0.0
      - name: ack-lambda-controller.v0.1.7
        version: 0.1.7
      - name: ack-lambda-controller.v0.1.6
        version: 0.1.6
      - name: ack-lambda-controller.v0.1.5
        version: 0.1.5
      - name: ack-lambda-controller.v0.1.3
        version: 0.1.3
      - name: ack-lambda-controller.v0.1.2
        version: 0.1.2
      - name: ack-lambda-controller.v0.1.1
        version: 0.1.1
      - name: ack-lambda-controller.v0.1.0
        version: 0.1.0
      - name: ack-lambda-controller.v0.0.17
        version: 0.0.17
      - name: ack-lambda-controller.v0.0.16
        version: 0.0.16
      - name: ack-lambda-controller.v0.0.15
        version: 0.0.15
      - name: ack-lambda-controller.v0.0.14
        version: 0.0.14
      - name: ack-lambda-controller.v0.0.13
        version: 0.0.13
      - name: ack-lambda-controller.v0.0.12
        version: 0.0.12
      - name: ack-lambda-controller.v0.0.11
        version: 0.0.11
      - name: ack-lambda-controller.v0.0.10
        version: 0.0.10
      - name: ack-lambda-controller.v0.0.9
        version: 0.0.9
      - name: ack-lambda-controller.v0.0.8
        version: 0.0.8
      - name: ack-lambda-controller.v0.0.7
        version: 0.0.7
      - name: ack-lambda-controller.v0.0.6
        version: 0.0.6
      - name: ack-lambda-controller.v0.0.5
        version: 0.0.5
      - name: ack-lambda-controller.v0.0.4
        version: 0.0.4
      - name: ack-lambda-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-lambda-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: JohnSnowLABS
      provider-url: nlp.johnsnowlabs.com
    name: annotationlab
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: annotationlab.v5.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.johnsnowlabs.com/v1",
                "kind": "Annotationlab",
                "metadata": {
                  "name": "annotationlab"
                },
                "spec": {
                  "activelearning": {
                    "extraEnv": "",
                    "extraVolumeMounts": "",
                    "extraVolumes": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "docker.io/johnsnowlabs/annotationlab",
                      "tag": "active-learning-5.7.0"
                    },
                    "lifecycleHooks": ""
                  },
                  "affinity": "podAntiAffinity:\n  requiredDuringSchedulingIgnoredDuringExecution:\n    - labelSelector:\n        matchLabels:\n          {{- include \"annotationlab.selectorLabels\" . | nindent 10 }}\n        matchExpressions:\n          - key: role\n            operator: NotIn\n            values:\n              - test\n      topologyKey: kubernetes.io/hostname\n  preferredDuringSchedulingIgnoredDuringExecution:\n    - weight: 100\n      podAffinityTerm:\n        labelSelector:\n          matchLabels:\n            {{- include \"annotationlab.selectorLabels\" . | nindent 12 }}\n          matchExpressions:\n            - key: role\n              operator: NotIn\n              values:\n                - test\n        topologyKey: failure-domain.beta.kubernetes.io/zone\n",
                  "airflow": {
                    "activelearning": {
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/johnsnowlabs/annotationlab",
                        "tag": "active-learning-5.7.0"
                      }
                    },
                    "affinity": {},
                    "airflowConfigAnnotations": {},
                    "airflowHome": "/opt/airflow",
                    "airflowLocalSettings": "{{- if semverCompare \"\u003e=2.2.0\" .Values.airflowVersion }}\n{{- if not (or .Values.webserverSecretKey .Values.webserverSecretKeySecretName) }}\nfrom airflow.www.utils import UIAlert\n\nDASHBOARD_UIALERTS = [\n  UIAlert(\n    'Usage of a dynamic webserver secret key detected. We recommend a static webserver secret key instead.'\n    ' See the \u003ca href='\n    '\"https://airflow.apache.org/docs/helm-chart/stable/production-guide.html#webserver-secret-key\"\u003e'\n    'Helm Chart Production Guide\u003c/a\u003e for more details.',\n    category=\"warning\",\n    roles=[\"Admin\"],\n    html=True,\n  )\n]\n{{- end }}\n{{- end }}",
                    "airflowPodAnnotations": {},
                    "airflowVersion": "2.5.1",
                    "allowPodLaunching": true,
                    "cleanup": {
                      "affinity": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow kubernetes cleanup-pods --namespace={{ .Release.Namespace }}"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "failedJobsHistoryLimit": null,
                      "labels": {},
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "resources": {},
                      "schedule": "*/15 * * * *",
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "successfulJobsHistoryLimit": null,
                      "tolerations": [],
                      "topologySpreadConstraints": []
                    },
                    "config": {
                      "api": {
                        "auth_backend": "airflow.api.auth.backend.default"
                      },
                      "celery": {
                        "flower_url_prefix": "{{ .Values.ingress.flower.path }}",
                        "worker_concurrency": 16
                      },
                      "celery_kubernetes_executor": {
                        "kubernetes_queue": "kubernetes"
                      },
                      "core": {
                        "colored_console_log": "False",
                        "dags_are_paused_at_creation": "False",
                        "dags_folder": "{{ include \"airflow_dags\" . }}",
                        "executor": "{{ .Values.executor }}",
                        "load_examples": "False",
                        "remote_logging": "{{- ternary \"True\" \"False\" .Values.elasticsearch.enabled }}"
                      },
                      "elasticsearch": {
                        "json_format": "True",
                        "log_id_template": "{dag_id}_{task_id}_{execution_date}_{try_number}"
                      },
                      "elasticsearch_configs": {
                        "max_retries": 3,
                        "retry_timeout": "True",
                        "timeout": 30
                      },
                      "kerberos": {
                        "ccache": "{{ .Values.kerberos.ccacheMountPath }}/{{ .Values.kerberos.ccacheFileName }}",
                        "keytab": "{{ .Values.kerberos.keytabPath }}",
                        "principal": "{{ .Values.kerberos.principal }}",
                        "reinit_frequency": "{{ .Values.kerberos.reinitFrequency }}"
                      },
                      "kubernetes": {
                        "airflow_configmap": "{{ include \"airflow_config\" . }}",
                        "airflow_local_settings_configmap": "{{ include \"airflow_config\" . }}",
                        "multi_namespace_mode": "{{ ternary \"True\" \"False\" .Values.multiNamespaceMode }}",
                        "namespace": "{{ .Release.Namespace }}",
                        "pod_template_file": "{{ include \"airflow_pod_template_file\" . }}/pod_template_file.yaml",
                        "worker_container_repository": "{{ .Values.images.airflow.repository | default .Values.defaultAirflowRepository }}",
                        "worker_container_tag": "{{ .Values.images.airflow.tag | default .Values.defaultAirflowTag }}"
                      },
                      "logging": {
                        "colored_console_log": "False",
                        "remote_logging": "{{- ternary \"True\" \"False\" .Values.elasticsearch.enabled }}"
                      },
                      "metrics": {
                        "statsd_host": "{{ printf \"%s-statsd\" .Release.Name }}",
                        "statsd_on": "{{ ternary \"True\" \"False\" .Values.statsd.enabled }}",
                        "statsd_port": 9125,
                        "statsd_prefix": "airflow"
                      },
                      "scheduler": {
                        "run_duration": 41460,
                        "standalone_dag_processor": "{{ ternary \"True\" \"False\" .Values.dagProcessor.enabled }}",
                        "statsd_host": "{{ printf \"%s-statsd\" .Release.Name }}",
                        "statsd_on": "{{ ternary \"True\" \"False\" .Values.statsd.enabled }}",
                        "statsd_port": 9125,
                        "statsd_prefix": "airflow"
                      },
                      "webserver": {
                        "authenticate": "False",
                        "base_url": "http://0.0.0.0:8080",
                        "enable_proxy_fix": "True",
                        "rbac": "False"
                      }
                    },
                    "createUserJob": {
                      "affinity": {},
                      "annotations": {},
                      "applyCustomEnv": true,
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"users create\" \"create_user\" }} \"$@\"",
                        "--",
                        "-r",
                        "{{ .Values.webserver.defaultUser.role }}",
                        "-u",
                        "{{ .Values.webserver.defaultUser.username }}",
                        "-e",
                        "{{ .Values.webserver.defaultUser.email }}",
                        "-f",
                        "{{ .Values.webserver.defaultUser.firstName }}",
                        "-l",
                        "{{ .Values.webserver.defaultUser.lastName }}",
                        "-p",
                        "{{ .Values.webserver.defaultUser.password }}"
                      ],
                      "command": null,
                      "env": [],
                      "extraContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "jobAnnotations": {},
                      "labels": {},
                      "nodeSelector": {},
                      "resources": {},
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-create-user-job"
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "useHelmHooks": true
                    },
                    "dagProcessor": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow dag-processor"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "livenessProbe": {
                        "command": null,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "strategy": {
                        "rollingUpdate": {
                          "maxSurge": "100%",
                          "maxUnavailable": "50%"
                        }
                      },
                      "terminationGracePeriodSeconds": 60,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      }
                    },
                    "dags": {
                      "gitSync": {
                        "branch": "v2-2-stable",
                        "containerName": "git-sync",
                        "depth": 1,
                        "enabled": false,
                        "env": [],
                        "extraVolumeMounts": [],
                        "maxFailures": 0,
                        "repo": "https://github.com/apache/airflow.git",
                        "resources": {},
                        "rev": "HEAD",
                        "securityContext": {},
                        "subPath": "tests/dags",
                        "uid": 65533,
                        "wait": 5
                      },
                      "persistence": {
                        "accessMode": "ReadWriteOnce",
                        "enabled": false,
                        "existingClaim": null,
                        "size": "1Gi",
                        "storageClassName": null,
                        "subPath": null
                      }
                    },
                    "data": {
                      "brokerUrl": null,
                      "brokerUrlSecretName": null,
                      "metadataConnection": {
                        "db": "airflow",
                        "pass": "airflow",
                        "port": 5432,
                        "protocol": "postgresql",
                        "sslmode": "disable",
                        "user": "airflow"
                      },
                      "metadataSecretName": null,
                      "resultBackendConnection": null,
                      "resultBackendSecretName": null
                    },
                    "defaultAirflowRepository": "apache/airflow",
                    "defaultAirflowTag": "2.5.1",
                    "elasticsearch": {
                      "connection": {},
                      "enabled": false,
                      "secretName": null
                    },
                    "enableBuiltInSecretEnvVars": {
                      "AIRFLOW_CONN_AIRFLOW_DB": true,
                      "AIRFLOW__CELERY__BROKER_URL": true,
                      "AIRFLOW__CELERY__CELERY_RESULT_BACKEND": true,
                      "AIRFLOW__CELERY__RESULT_BACKEND": true,
                      "AIRFLOW__CORE__FERNET_KEY": true,
                      "AIRFLOW__CORE__SQL_ALCHEMY_CONN": true,
                      "AIRFLOW__DATABASE__SQL_ALCHEMY_CONN": true,
                      "AIRFLOW__ELASTICSEARCH__ELASTICSEARCH_HOST": true,
                      "AIRFLOW__ELASTICSEARCH__HOST": true,
                      "AIRFLOW__WEBSERVER__SECRET_KEY": true
                    },
                    "env": [],
                    "executor": "CeleryExecutor",
                    "extraConfigMaps": {},
                    "extraEnv": "- name: ACTIVE_LEARNING_IMAGE_PULL_POLICY\n  value: \"{{ .Values.activelearning.image.pullPolicy }}\"\n- name: ACTIVE_LEARNING_IMAGE\n  value: \"{{ .Values.activelearning.image.repository }}:{{ .Values.activelearning.image.tag }}\"\n- name: NUMBER_OF_PREANNOTATOR_DAG\n  value: {{ .Values.preannotator_queues.count | quote }}\n- name: AIRFLOW__LOGGING__LOGGING_LEVEL\n  value: INFO\n- name: ANNOTATIONLAB_FULLNAME\n  value: {{ include \"annotationlab.annotationlab.fullname\" . }}\n- name: ANNOTATIONLAB_URL\n  value: http://{{ include \"annotationlab.annotationlab.fullname\" . }}:8200\n- name: AIRFLOW_NAMESPACE\n  value: {{ .Release.Namespace }}\n- name: DATABASE_CONNECTION_STRING\n  valueFrom:\n    secretKeyRef:\n      name: {{ include \"annotationlab.annotationlab.fullname\" . }}-secret\n      key: DATABASE_CONNECTION_STRING\n",
                    "extraEnvFrom": null,
                    "extraSecrets": {},
                    "fernetKey": null,
                    "fernetKeySecretName": null,
                    "flower": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"celery flower\" \"flower\" }}"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "extraContainers": [],
                      "extraNetworkPolicies": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "networkPolicy": {
                        "ingress": {
                          "from": [],
                          "ports": [
                            {
                              "port": "{{ .Values.ports.flowerUI }}"
                            }
                          ]
                        }
                      },
                      "nodeSelector": {},
                      "password": null,
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "secretName": null,
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "loadBalancerIP": null,
                        "loadBalancerSourceRanges": [],
                        "ports": [
                          {
                            "name": "flower-ui",
                            "port": "{{ .Values.ports.flowerUI }}"
                          }
                        ],
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "username": null
                    },
                    "fullnameOverride": "",
                    "gid": 0,
                    "global": {},
                    "image": {
                      "repository": "docker.io/johnsnowlabs/annotationlab"
                    },
                    "images": {
                      "airflow": {
                        "pullPolicy": "IfNotPresent",
                        "repository": null,
                        "tag": "dataflows-5.7.0"
                      },
                      "flower": {
                        "pullPolicy": "IfNotPresent",
                        "repository": null,
                        "tag": null
                      },
                      "gitSync": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "k8s.gcr.io/git-sync/git-sync",
                        "tag": "v3.6.3"
                      },
                      "migrationsWaitTimeout": 60,
                      "pgbouncer": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "apache/airflow",
                        "tag": "airflow-pgbouncer-2021.04.28-1.14.0"
                      },
                      "pgbouncerExporter": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "apache/airflow",
                        "tag": "airflow-pgbouncer-exporter-2021.09.22-0.12.0"
                      },
                      "pod_template": {
                        "pullPolicy": "IfNotPresent",
                        "repository": null,
                        "tag": null
                      },
                      "redis": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/redis",
                        "tag": "alpine3.16"
                      },
                      "statsd": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "quay.io/prometheus/statsd-exporter",
                        "tag": "v0.22.8"
                      },
                      "useDefaultImageForMigration": false
                    },
                    "ingress": {
                      "enabled": false,
                      "flower": {
                        "annotations": {},
                        "enabled": false,
                        "host": "",
                        "hosts": [],
                        "ingressClassName": "",
                        "path": "/",
                        "pathType": "ImplementationSpecific",
                        "tls": {
                          "enabled": false,
                          "secretName": ""
                        }
                      },
                      "web": {
                        "annotations": {},
                        "enabled": false,
                        "host": "",
                        "hosts": [],
                        "ingressClassName": "",
                        "path": "/",
                        "pathType": "ImplementationSpecific",
                        "precedingPaths": [],
                        "succeedingPaths": [],
                        "tls": {
                          "enabled": false,
                          "secretName": ""
                        }
                      }
                    },
                    "kerberos": {
                      "ccacheFileName": "cache",
                      "ccacheMountPath": "/var/kerberos-ccache",
                      "config": "# This is an example config showing how you can use templating and how \"example\" config\n# might look like. It works with the test kerberos server that we are using during integration\n# testing at Apache Airflow (see `scripts/ci/docker-compose/integration-kerberos.yml` but in\n# order to make it production-ready you must replace it with your own configuration that\n# Matches your kerberos deployment. Administrators of your Kerberos instance should\n# provide the right configuration.\n\n[logging]\ndefault = \"FILE:{{ template \"airflow_logs_no_quote\" . }}/kerberos_libs.log\"\nkdc = \"FILE:{{ template \"airflow_logs_no_quote\" . }}/kerberos_kdc.log\"\nadmin_server = \"FILE:{{ template \"airflow_logs_no_quote\" . }}/kadmind.log\"\n\n[libdefaults]\ndefault_realm = FOO.COM\nticket_lifetime = 10h\nrenew_lifetime = 7d\nforwardable = true\n\n[realms]\nFOO.COM = {\n  kdc = kdc-server.foo.com\n  admin_server = admin_server.foo.com\n}\n",
                      "configPath": "/etc/krb5.conf",
                      "enabled": false,
                      "keytabBase64Content": null,
                      "keytabPath": "/etc/airflow.keytab",
                      "principal": "airflow@FOO.COM",
                      "reinitFrequency": 3600
                    },
                    "kubeVersionOverride": "",
                    "labels": {},
                    "limits": [],
                    "logs": {
                      "persistence": {
                        "enabled": false,
                        "existingClaim": null,
                        "size": "100Gi",
                        "storageClassName": null
                      }
                    },
                    "migrateDatabaseJob": {
                      "affinity": {},
                      "annotations": {},
                      "applyCustomEnv": true,
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"db upgrade\" \"upgradedb\" }}"
                      ],
                      "command": null,
                      "enabled": true,
                      "extraContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "jobAnnotations": {},
                      "nodeSelector": {},
                      "resources": {},
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-migrate-database-job"
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "useHelmHooks": true
                    },
                    "multiNamespaceMode": false,
                    "nameOverride": "",
                    "networkPolicies": {
                      "enabled": false
                    },
                    "nodeSelector": {},
                    "pgbouncer": {
                      "affinity": {},
                      "annotations": {},
                      "args": null,
                      "auth_file": "/etc/pgbouncer/users.txt",
                      "auth_type": "md5",
                      "ciphers": "normal",
                      "command": [
                        "pgbouncer",
                        "-u",
                        "nobody",
                        "/etc/pgbouncer/pgbouncer.ini"
                      ],
                      "configSecretName": null,
                      "enabled": false,
                      "extraIni": null,
                      "extraIniMetadata": null,
                      "extraIniResultBackend": null,
                      "extraNetworkPolicies": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "logConnections": 0,
                      "logDisconnections": 0,
                      "maxClientConn": 100,
                      "metadataPoolSize": 10,
                      "metricsExporterSidecar": {
                        "resources": {},
                        "sslmode": "disable"
                      },
                      "nodeSelector": {},
                      "podDisruptionBudget": {
                        "config": {
                          "maxUnavailable": 1
                        },
                        "enabled": false
                      },
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "resultBackendPoolSize": 5,
                      "revisionHistoryLimit": null,
                      "service": {
                        "extraAnnotations": {}
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "ssl": {
                        "ca": null,
                        "cert": null,
                        "key": null
                      },
                      "sslmode": "prefer",
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "uid": 65534,
                      "verbose": 0
                    },
                    "podTemplate": null,
                    "ports": {
                      "airflowUI": 8080,
                      "flowerUI": 5555,
                      "pgbouncer": 6543,
                      "pgbouncerScrape": 9127,
                      "redisDB": 6379,
                      "statsdIngest": 9125,
                      "statsdScrape": 9102,
                      "workerLogs": 8793
                    },
                    "postgresql": {
                      "auth": {
                        "enablePostgresUser": true,
                        "password": null,
                        "postgresPassword": "postgres",
                        "username": null
                      },
                      "common": {
                        "exampleValue": "common-chart",
                        "global": {
                          "postgresql": {}
                        }
                      },
                      "commonAnnotations": {},
                      "enabled": true,
                      "extraEnv": [],
                      "global": {
                        "postgresql": {}
                      },
                      "image": {
                        "debug": false,
                        "pullPolicy": "IfNotPresent",
                        "registry": "docker.io",
                        "repository": "bitnami/postgresql",
                        "tag": "11"
                      },
                      "ldap": {
                        "baseDN": "",
                        "bindDN": "",
                        "enabled": false,
                        "port": "",
                        "prefix": "",
                        "scheme": "",
                        "search_attr": "",
                        "search_filter": "",
                        "server": "",
                        "suffix": "",
                        "tls": false,
                        "url": ""
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 30,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "master": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": [],
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "metrics": {
                        "enabled": false,
                        "extraEnvVars": {},
                        "image": {
                          "pullPolicy": "IfNotPresent",
                          "registry": "docker.io",
                          "repository": "bitnami/postgres-exporter",
                          "tag": "0.8.0-debian-10-r166"
                        },
                        "livenessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "prometheusRule": {
                          "additionalLabels": {},
                          "enabled": false,
                          "namespace": "",
                          "rules": []
                        },
                        "readinessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "securityContext": {},
                        "service": {
                          "annotations": {
                            "prometheus.io/port": "9187",
                            "prometheus.io/scrape": "true"
                          },
                          "type": "ClusterIP"
                        },
                        "serviceMonitor": {
                          "additionalLabels": {},
                          "enabled": false
                        }
                      },
                      "nameOverride": "airflow-postgresql",
                      "networkPolicy": {
                        "allowExternal": true,
                        "enabled": false,
                        "explicitNamespacesSelector": {}
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "enabled": true,
                        "mountPath": "/bitnami/postgresql",
                        "size": "8Gi",
                        "subPath": ""
                      },
                      "postgresqlDataDir": "/bitnami/postgresql/data",
                      "postgresqlDatabase": "airflow",
                      "postgresqlPassword": "airflow",
                      "postgresqlUsername": "airflow",
                      "psp": {
                        "create": false
                      },
                      "rbac": {
                        "create": false
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "replication": {
                        "applicationName": "my_application",
                        "enabled": false,
                        "numSynchronousReplicas": 0,
                        "password": "repl_password",
                        "slaveReplicas": 1,
                        "synchronousCommit": "off",
                        "user": "repl_user"
                      },
                      "resources": {
                        "requests": {
                          "cpu": "250m",
                          "memory": "256Mi"
                        }
                      },
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "port": 5432,
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "enabled": true,
                        "name": "annotationlab-airflow-postgresql"
                      },
                      "shmVolume": {
                        "chmod": {
                          "enabled": true
                        },
                        "enabled": true
                      },
                      "slave": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": "# - name: do-something\n#   image: busybox\n#   command: ['do', 'something']\n",
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "tls": {
                        "certFilename": "",
                        "certKeyFilename": "",
                        "certificatesSecret": "",
                        "enabled": false,
                        "preferServerCiphers": true
                      },
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      },
                      "volumePermissions": {
                        "enabled": false,
                        "image": {
                          "pullPolicy": "Always",
                          "registry": "docker.io",
                          "repository": "bitnami/minideb",
                          "tag": "buster"
                        },
                        "securityContext": {}
                      }
                    },
                    "preannotator_queues": {
                      "count": 5
                    },
                    "quotas": {},
                    "rbac": {
                      "create": true,
                      "createSCCRoleBinding": false
                    },
                    "redis": {
                      "affinity": {},
                      "enabled": true,
                      "nodeSelector": {},
                      "password": "DefaulTRediS-P0ss",
                      "passwordSecretName": null,
                      "persistence": {
                        "annotations": {},
                        "enabled": true,
                        "size": "1Gi",
                        "storageClassName": null
                      },
                      "podAnnotations": {},
                      "resources": {},
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "annotationlab-airflow-redis"
                      },
                      "terminationGracePeriodSeconds": 600,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "uid": 0
                    },
                    "registry": {
                      "connection": {},
                      "secretName": "kubernetesdockerhub"
                    },
                    "registryCredentials": {
                      "pullPolicy": "IfNotPresent",
                      "registryUrl": "docker.io/annotationlab"
                    },
                    "revisionHistoryLimit": null,
                    "scheduler": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow scheduler"
                      ],
                      "command": null,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "livenessProbe": {
                        "command": null,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "logGroomerSidecar": {
                        "args": [
                          "bash",
                          "/clean-logs"
                        ],
                        "command": null,
                        "enabled": true,
                        "resources": {},
                        "retentionDays": 15
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podDisruptionBudget": {
                        "config": {
                          "maxUnavailable": 1
                        },
                        "enabled": false
                      },
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-scheduler"
                      },
                      "strategy": null,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "updateStrategy": null,
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      }
                    },
                    "secret": [],
                    "securityContext": {},
                    "statsd": {
                      "affinity": {},
                      "args": [
                        "--statsd.mapping-config=/etc/statsd-exporter/mappings.yml"
                      ],
                      "enabled": false,
                      "extraMappings": [],
                      "extraNetworkPolicies": [],
                      "nodeSelector": {},
                      "overrideMappings": [],
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "securityContext": {},
                      "service": {
                        "extraAnnotations": {}
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-statsd"
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "uid": 65534
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "triggerer": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow triggerer"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "livenessProbe": {
                        "command": null,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "annotationlab-airflow-triggerer"
                      },
                      "strategy": {
                        "rollingUpdate": {
                          "maxSurge": "100%",
                          "maxUnavailable": "50%"
                        }
                      },
                      "terminationGracePeriodSeconds": 60,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      }
                    },
                    "uid": 50000,
                    "volumeMounts": [],
                    "volumes": [],
                    "webserver": {
                      "affinity": {},
                      "allowPodLogReading": true,
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow webserver"
                      ],
                      "command": null,
                      "defaultUser": {
                        "email": "admin@example.com",
                        "enabled": false,
                        "firstName": "admin",
                        "lastName": "user",
                        "password": "admin",
                        "role": "Admin",
                        "username": "admin"
                      },
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraNetworkPolicies": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "livenessProbe": {
                        "failureThreshold": 20,
                        "initialDelaySeconds": 15,
                        "periodSeconds": 5,
                        "scheme": "HTTP",
                        "timeoutSeconds": 30
                      },
                      "networkPolicy": {
                        "ingress": {
                          "from": [],
                          "ports": [
                            {
                              "port": "{{ .Values.ports.airflowUI }}"
                            }
                          ]
                        }
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podDisruptionBudget": {
                        "config": {
                          "maxUnavailable": 1
                        },
                        "enabled": false
                      },
                      "priorityClassName": null,
                      "readinessProbe": {
                        "failureThreshold": 20,
                        "initialDelaySeconds": 15,
                        "periodSeconds": 5,
                        "scheme": "HTTP",
                        "timeoutSeconds": 30
                      },
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "loadBalancerIP": null,
                        "loadBalancerSourceRanges": [],
                        "ports": [
                          {
                            "name": "airflow-ui",
                            "port": "{{ .Values.ports.airflowUI }}"
                          }
                        ],
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-webserver"
                      },
                      "strategy": null,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      },
                      "webserverConfig": null,
                      "webserverConfigConfigMapName": null
                    },
                    "webserverSecretKey": "f565cd64401775f93c820dc63fc3d4f6",
                    "webserverSecretKeySecretName": null,
                    "workers": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"celery worker\" \"worker\" }}"
                      ],
                      "command": null,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "hostAliases": [],
                      "keda": {
                        "advanced": {},
                        "cooldownPeriod": 30,
                        "enabled": false,
                        "maxReplicaCount": 10,
                        "minReplicaCount": 0,
                        "namespaceLabels": {},
                        "pollingInterval": 5
                      },
                      "kerberosSidecar": {
                        "enabled": false,
                        "resources": {}
                      },
                      "labels": {},
                      "livenessProbe": {
                        "command": null,
                        "enabled": true,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "logGroomerSidecar": {
                        "args": [
                          "bash",
                          "/clean-logs"
                        ],
                        "command": null,
                        "enabled": true,
                        "resources": {},
                        "retentionDays": 15
                      },
                      "nodeSelector": {},
                      "persistence": {
                        "annotations": {},
                        "enabled": true,
                        "fixPermissions": false,
                        "size": "5Gi",
                        "storageClassName": null
                      },
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-worker"
                      },
                      "strategy": {
                        "rollingUpdate": {
                          "maxSurge": "100%",
                          "maxUnavailable": "50%"
                        }
                      },
                      "terminationGracePeriodSeconds": 600,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "updateStrategy": null,
                      "waitForMigrations": {
                        "env": []
                      }
                    }
                  },
                  "backup": {
                    "enable": false,
                    "files": true,
                    "image": {
                      "repository": null,
                      "tag": null
                    },
                    "s3_access_key": "",
                    "s3_bucket_fullpath": "",
                    "s3_secret_key": ""
                  },
                  "configuration": {
                    "FLASK_SECRET_KEY": "rpaQghA-9lmpLwB8qxW0FsW1TJyZZYuB60ppzswpTzM=",
                    "KEYCLOAK_CLIENT_ID": "annotationlab",
                    "KEYCLOAK_CLIENT_SECRET_KEY": "09a71c59-0351-4ce6-bc8f-8fd3feb9d2ff",
                    "KEYCLOAK_REALM_NAME": "master",
                    "PERSISTENT_STORAGE": "/projects"
                  },
                  "extraContainers": "",
                  "extraEnv": "",
                  "extraNetworkPolicies": "- namespaceSelector: {}\n",
                  "extraVolumeMounts": "",
                  "extraVolumes": "",
                  "github_oauth_origin": "https://github.oauth.johnsnowlabs.com",
                  "google_analytics": {
                    "api_secret": "WENfd00yeUxRRWl4N0Utbml5SWt3Zw==",
                    "measurement_id": "Ry1XODBIMDhTTFBZ"
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "docker.io/johnsnowlabs/annotationlab",
                    "tag": "5.7.0"
                  },
                  "ingress": {
                    "annotations": {},
                    "defaultBackend": false,
                    "enabled": true,
                    "hosts": [
                      {
                        "host": "annotationlab",
                        "path": "/"
                      }
                    ],
                    "ingressroute": {
                      "enabled": false
                    },
                    "servicePort": "http",
                    "tls": [],
                    "uploadLimitInMegabytes": 16
                  },
                  "installAirflow": true,
                  "installKeycloak": true,
                  "installPostgresql": true,
                  "keycloak": {
                    "affinity": "podAntiAffinity:\n  requiredDuringSchedulingIgnoredDuringExecution:\n    - labelSelector:\n        matchLabels:\n          {{- include \"keycloak.selectorLabels\" . | nindent 10 }}\n        matchExpressions:\n          - key: app.kubernetes.io/component\n            operator: NotIn\n            values:\n              - test\n      topologyKey: kubernetes.io/hostname\n  preferredDuringSchedulingIgnoredDuringExecution:\n    - weight: 100\n      podAffinityTerm:\n        labelSelector:\n          matchLabels:\n            {{- include \"keycloak.selectorLabels\" . | nindent 12 }}\n          matchExpressions:\n            - key: app.kubernetes.io/component\n              operator: NotIn\n              values:\n                - test\n        topologyKey: topology.kubernetes.io/zone\n",
                    "args": [],
                    "auththeme": {
                      "image": {
                        "repository": "docker.io/johnsnowlabs/annotationlab",
                        "tag": "auth-theme-5.7.0"
                      }
                    },
                    "autoscaling": {
                      "behavior": {
                        "scaleDown": {
                          "policies": [
                            {
                              "periodSeconds": 300,
                              "type": "Pods",
                              "value": 1
                            }
                          ],
                          "stabilizationWindowSeconds": 300
                        }
                      },
                      "enabled": false,
                      "labels": {},
                      "maxReplicas": 10,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 80,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 3
                    },
                    "cache": {
                      "stack": "default"
                    },
                    "clusterDomain": "cluster.local",
                    "command": [
                      "/opt/keycloak/bin/kc.sh",
                      "--verbose",
                      "start",
                      "--http-enabled=true",
                      "--http-port=8080",
                      "--hostname-strict=false",
                      "--hostname-strict-https=false",
                      "--spi-events-listener-jboss-logging-success-level=info",
                      "--spi-events-listener-jboss-logging-error-level=warn"
                    ],
                    "database": {
                      "enabled": true,
                      "postgresqlDatabase": "keycloak",
                      "postgresqlPassword": "keycloak",
                      "postgresqlUsername": "keycloak"
                    },
                    "dbchecker": {
                      "enabled": false,
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/busybox",
                        "tag": 1.32
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "32Mi"
                        },
                        "requests": {
                          "cpu": "20m",
                          "memory": "32Mi"
                        }
                      },
                      "securityContext": {}
                    },
                    "enableServiceLinks": true,
                    "extraContainers": "",
                    "extraEnv": "- name: KC_FEATURES\n  value: \"authorization,account-api,admin-api,admin-fine-grained-authz,ciba,impersonation,kerberos,preview,step-up-authentication,token-exchange,web-authn\"\n- name: KEYCLOAK_ADMIN\n  valueFrom:\n    secretKeyRef:\n      name: {{ include \"keycloak.fullname\" . }}-admincreds\n      key: user\n- name: KEYCLOAK_ADMIN_PASSWORD\n  valueFrom:\n    secretKeyRef:\n      name: {{ include \"keycloak.fullname\" . }}-admincreds\n      key: password\n- name: JAVA_OPTS_APPEND\n  value: \u003e-\n    -XX:+UseContainerSupport\n    -XX:MaxRAMPercentage=50.0\n    -Djava.awt.headless=true\n    -Djgroups.dns.query={{ include \"keycloak.fullname\" . }}-headless\n",
                    "extraEnvFrom": "",
                    "extraInitContainers": "- name: theme-provider\n  image: {{ .Values.auththeme.image.repository }}:{{ .Values.auththeme.image.tag }}\n  imagePullPolicy: IfNotPresent\n  command:\n    - sh\n  args:\n    - -c\n    - |\n      echo \"Copying theme...\"\n      cp -R /johnsnowlabs/* /theme\n  volumeMounts:\n    - name: theme\n      mountPath: /theme\n",
                    "extraPorts": [],
                    "extraServiceMonitor": {
                      "annotations": {},
                      "enabled": false,
                      "interval": "10s",
                      "labels": {},
                      "namespace": "",
                      "namespaceSelector": {},
                      "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/realms/master/metrics",
                      "port": "http",
                      "scrapeTimeout": "10s"
                    },
                    "extraVolumeMounts": "- name: admincreds\n  mountPath: /secrets/admincreds\n  readOnly: true\n- name: theme\n  mountPath: /opt/keycloak/themes/johnsnowlabs\n",
                    "extraVolumes": "- name: admincreds\n  secret:\n    secretName: '{{ include \"annotationlab.keycloak.fullname\" . }}-admincreds'\n- name: theme\n  emptyDir: {}\n",
                    "fullnameOverride": "",
                    "global": {},
                    "health": {
                      "enabled": true
                    },
                    "hostAliases": [],
                    "http": {
                      "relativePath": "/auth"
                    },
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "repository": "docker.io/keycloak/keycloak",
                      "tag": "20.0.3"
                    },
                    "imagePullSecrets": [
                      {
                        "name": "kubernetesdockerhub"
                      }
                    ],
                    "ingress": {
                      "annotations": {
                        "nginx.ingress.kubernetes.io/proxy-buffer-size": "16k"
                      },
                      "console": {
                        "annotations": {},
                        "enabled": false,
                        "ingressClassName": "",
                        "rules": [
                          {
                            "host": "{{ .Release.Name }}.keycloak.example.com",
                            "paths": [
                              {
                                "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/admin",
                                "pathType": "Prefix"
                              }
                            ]
                          }
                        ],
                        "tls": []
                      },
                      "enabled": false,
                      "ingressClassName": "",
                      "labels": {},
                      "rules": [
                        {
                          "host": "keycloak.example.com",
                          "paths": [
                            {
                              "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/",
                              "pathType": "Prefix"
                            }
                          ]
                        }
                      ],
                      "servicePort": "http",
                      "tls": []
                    },
                    "lifecycleHooks": "",
                    "livenessProbe": "httpGet:\n  path: '{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/health/live'\n  port: http\ninitialDelaySeconds: 0\ntimeoutSeconds: 5\n",
                    "metrics": {
                      "enabled": true
                    },
                    "nameOverride": "",
                    "networkPolicy": {
                      "egress": [],
                      "enabled": false,
                      "extraFrom": [],
                      "labels": {}
                    },
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {},
                    "postgresql": {
                      "common": {
                        "exampleValue": "common-chart",
                        "global": {
                          "postgresql": {}
                        }
                      },
                      "commonAnnotations": {},
                      "enabled": true,
                      "extraEnv": [],
                      "global": {
                        "postgresql": {}
                      },
                      "image": {
                        "debug": false,
                        "pullPolicy": "IfNotPresent",
                        "registry": "docker.io",
                        "repository": "bitnami/postgresql",
                        "tag": "11.20.0-debian-11-r12"
                      },
                      "ldap": {
                        "baseDN": "",
                        "bindDN": "",
                        "bind_password": null,
                        "enabled": false,
                        "port": "",
                        "prefix": "",
                        "scheme": "",
                        "search_attr": "",
                        "search_filter": "",
                        "server": "",
                        "suffix": "",
                        "tls": false,
                        "url": ""
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 30,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "master": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": [],
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "metrics": {
                        "enabled": false,
                        "extraEnvVars": {},
                        "image": {
                          "pullPolicy": "IfNotPresent",
                          "registry": "docker.io",
                          "repository": "bitnami/postgres-exporter",
                          "tag": "0.8.0-debian-10-r166"
                        },
                        "livenessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "prometheusRule": {
                          "additionalLabels": {},
                          "enabled": false,
                          "namespace": "",
                          "rules": []
                        },
                        "readinessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "securityContext": {},
                        "service": {
                          "annotations": {
                            "prometheus.io/port": "9187",
                            "prometheus.io/scrape": "true"
                          },
                          "loadBalancerIP": null,
                          "type": "ClusterIP"
                        },
                        "serviceMonitor": {
                          "additionalLabels": {},
                          "enabled": false
                        }
                      },
                      "nameOverride": "keycloak-postgres",
                      "networkPolicy": {
                        "allowExternal": true,
                        "enabled": false,
                        "explicitNamespacesSelector": {}
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "enabled": true,
                        "mountPath": "/bitnami/postgresql",
                        "size": "8Gi",
                        "subPath": ""
                      },
                      "postgresqlDataDir": "/bitnami/postgresql/data",
                      "postgresqlDatabase": "keycloak",
                      "postgresqlPassword": "keycloak",
                      "postgresqlUsername": "keycloak",
                      "psp": {
                        "create": false
                      },
                      "rbac": {
                        "create": false
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "replication": {
                        "applicationName": "my_application",
                        "enabled": false,
                        "numSynchronousReplicas": 0,
                        "password": "repl_password",
                        "slaveReplicas": 1,
                        "synchronousCommit": "off",
                        "user": "repl_user"
                      },
                      "resources": {
                        "requests": {
                          "cpu": "250m",
                          "memory": "256Mi"
                        }
                      },
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "port": 5432,
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "enabled": true,
                        "name": "annotationlab-keycloak-postgresql"
                      },
                      "shmVolume": {
                        "chmod": {
                          "enabled": true
                        },
                        "enabled": true
                      },
                      "slave": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": "# - name: do-something\n#   image: busybox\n#   command: ['do', 'something']\n",
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "tls": {
                        "certCAFilename": null,
                        "certFilename": "",
                        "certKeyFilename": "",
                        "certificatesSecret": "",
                        "crlFilename": null,
                        "enabled": false,
                        "preferServerCiphers": true
                      },
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      },
                      "volumePermissions": {
                        "enabled": false,
                        "image": {
                          "pullPolicy": "Always",
                          "registry": "docker.io",
                          "repository": "bitnami/minideb",
                          "tag": "buster"
                        },
                        "securityContext": {}
                      }
                    },
                    "priorityClassName": "",
                    "prometheusRule": {
                      "annotations": {},
                      "enabled": false,
                      "labels": {},
                      "namespace": "",
                      "rules": []
                    },
                    "proxy": {
                      "enabled": true,
                      "mode": "edge"
                    },
                    "rbac": {
                      "create": false,
                      "rules": []
                    },
                    "readinessProbe": "httpGet:\n  path: '{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/health/ready'\n  port: http\ninitialDelaySeconds: 10\ntimeoutSeconds: 1\n",
                    "replicas": 1,
                    "resources": {},
                    "restartPolicy": "Always",
                    "route": {
                      "annotations": {},
                      "enabled": false,
                      "host": "",
                      "labels": {},
                      "path": "/",
                      "tls": {
                        "enabled": true,
                        "insecureEdgeTerminationPolicy": "Redirect",
                        "termination": "edge"
                      }
                    },
                    "secrets": {
                      "admincreds": {
                        "stringData": {
                          "password": "secret",
                          "user": "admin"
                        }
                      }
                    },
                    "securityContext": {},
                    "service": {
                      "annotations": {},
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "httpNodePort": null,
                      "httpPort": 80,
                      "httpsNodePort": null,
                      "httpsPort": 8443,
                      "labels": {},
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "sessionAffinity": "",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "allowReadPods": false,
                      "annotations": {},
                      "automountServiceAccountToken": true,
                      "create": false,
                      "imagePullSecrets": [],
                      "labels": {},
                      "name": "annotationlab-keyclo"
                    },
                    "serviceHeadless": {
                      "annotations": {}
                    },
                    "serviceMonitor": {
                      "annotations": {},
                      "enabled": false,
                      "interval": "10s",
                      "labels": {},
                      "namespace": "",
                      "namespaceSelector": {},
                      "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/metrics",
                      "port": "http",
                      "scrapeTimeout": "10s"
                    },
                    "skipInitContainers": false,
                    "startupProbe": "httpGet:\n  path: '{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/health'\n  port: http\ninitialDelaySeconds: 15\ntimeoutSeconds: 1\nfailureThreshold: 60\nperiodSeconds: 5\n",
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {},
                    "terminationGracePeriodSeconds": 60,
                    "test": {
                      "deletionPolicy": "before-hook-creation",
                      "enabled": false,
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/seleniarm/standalone-chromium",
                        "tag": "111.0"
                      },
                      "podSecurityContext": {},
                      "securityContext": {}
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": null,
                    "updateStrategy": "RollingUpdate"
                  },
                  "licenseserver": {
                    "origin": "https://license.johnsnowlabs.com"
                  },
                  "lifecycleHooks": "# postStart:\n#   exec:\n#     command: [\"/bin/sh\", \"-c\", \"ls\"]\n",
                  "modelshub_origin": "https://modelshub.johnsnowlabs.com",
                  "myjohnsnowlabs": {
                    "client_id": "UIGgoiIL9szXW8Nnik0O7tPT4to87oVtWvYWfc6r",
                    "origin": "https://my.johnsnowlabs.com"
                  },
                  "networkPolicy": {
                    "enabled": false
                  },
                  "nodeSelector": {},
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "annotations": {},
                    "enabled": true,
                    "size": "8Gi"
                  },
                  "podAnnotations": {},
                  "podLabels": {},
                  "postgresql": {
                    "common": {
                      "exampleValue": "common-chart",
                      "global": {
                        "postgresql": {}
                      }
                    },
                    "commonAnnotations": {},
                    "extraEnv": [],
                    "global": {
                      "postgresql": {}
                    },
                    "image": {
                      "debug": false,
                      "pullPolicy": "IfNotPresent",
                      "registry": "docker.io",
                      "repository": "bitnami/postgresql",
                      "tag": "11.20.0-debian-11-r12"
                    },
                    "ldap": {
                      "baseDN": "",
                      "bindDN": "",
                      "bind_password": null,
                      "enabled": false,
                      "port": "",
                      "prefix": "",
                      "scheme": "",
                      "search_attr": "",
                      "search_filter": "",
                      "server": "",
                      "suffix": "",
                      "tls": false,
                      "url": ""
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "master": {
                      "affinity": {},
                      "annotations": {},
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podLabels": {},
                      "priorityClassName": "",
                      "service": {},
                      "sidecars": [],
                      "tolerations": []
                    },
                    "metrics": {
                      "enabled": false,
                      "extraEnvVars": {},
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "registry": "docker.io",
                        "repository": "bitnami/postgres-exporter",
                        "tag": "0.8.0-debian-10-r166"
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "prometheusRule": {
                        "additionalLabels": {},
                        "enabled": false,
                        "namespace": "",
                        "rules": []
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "securityContext": {},
                      "service": {
                        "annotations": {
                          "prometheus.io/port": "9187",
                          "prometheus.io/scrape": "true"
                        },
                        "loadBalancerIP": null,
                        "type": "ClusterIP"
                      },
                      "serviceMonitor": {
                        "additionalLabels": {},
                        "enabled": false
                      }
                    },
                    "networkPolicy": {
                      "allowExternal": true,
                      "enabled": false,
                      "explicitNamespacesSelector": {}
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "enabled": true,
                      "mountPath": "/bitnami/postgresql",
                      "size": "8Gi",
                      "subPath": ""
                    },
                    "postgresqlDataDir": "/bitnami/postgresql/data",
                    "postgresqlDatabase": "annotationlab",
                    "postgresqlPassword": "annotationlab",
                    "postgresqlUsername": "annotationlab",
                    "psp": {
                      "create": false
                    },
                    "rbac": {
                      "create": false
                    },
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "replication": {
                      "applicationName": "my_application",
                      "enabled": false,
                      "numSynchronousReplicas": 0,
                      "password": "repl_password",
                      "slaveReplicas": 1,
                      "synchronousCommit": "off",
                      "user": "repl_user"
                    },
                    "resources": {
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "securityContext": {},
                    "service": {
                      "annotations": {},
                      "port": 5432,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "enabled": false
                    },
                    "shmVolume": {
                      "chmod": {
                        "enabled": true
                      },
                      "enabled": true
                    },
                    "slave": {
                      "affinity": {},
                      "annotations": {},
                      "extraInitContainers": "# - name: do-something\n#   image: busybox\n#   command: ['do', 'something']\n",
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podLabels": {},
                      "priorityClassName": "",
                      "service": {},
                      "sidecars": [],
                      "tolerations": []
                    },
                    "tls": {
                      "certCAFilename": null,
                      "certFilename": "",
                      "certKeyFilename": "",
                      "certificatesSecret": "",
                      "crlFilename": null,
                      "enabled": false,
                      "preferServerCiphers": true
                    },
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "volumePermissions": {
                      "enabled": false,
                      "image": {
                        "pullPolicy": "Always",
                        "registry": "docker.io",
                        "repository": "bitnami/minideb",
                        "tag": "buster"
                      },
                      "securityContext": {}
                    }
                  },
                  "preannotator_queues": {
                    "count": 5,
                    "service": {
                      "port": 5000,
                      "portName": "http",
                      "type": "ClusterIP"
                    }
                  },
                  "priorityClassName": "",
                  "readinessProbe": "httpGet:\n  path: /healthz\n  port: http\ninitialDelaySeconds: 10\ntimeoutSeconds: 1\n",
                  "registryCredentials": {
                    "create": false,
                    "password": "XXXXX",
                    "secretName": "kubernetesdockerhub",
                    "username": "XXXXX"
                  },
                  "replicas": 1,
                  "resources": {},
                  "restartPolicy": "Always",
                  "securityContext": {
                    "enabled": false,
                    "fsGroup": 65534,
                    "fsGroupChangePolicy": "OnRootMismatch",
                    "runAsUser": 65534
                  },
                  "service": {
                    "port": 8200,
                    "portName": "http",
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": false,
                    "name": "annotationlab"
                  },
                  "sharedData": {
                    "enabled": true,
                    "images": {
                      "storageSize": "5Gi"
                    },
                    "storageSize": "100Gi"
                  },
                  "sqlalchemy_pool_size": 10,
                  "telemetry": {
                    "enabled": true
                  },
                  "terminationGracePeriodSeconds": 60,
                  "tolerations": [],
                  "updateStrategy": {
                    "type": "Recreate"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: registry.johnsnowlabs.com/annotationlab/annotationlab-operator:v5.7.0
          createdAt: "2023-12-19T10:26:54Z"
          marketplace.openshift.io/remote-workflow: https://marketplace.redhat.com/en-us/operators/annotationlab/pricing?utm_source=openshift_console
          marketplace.openshift.io/support-workflow: https://marketplace.redhat.com/en-us/operators/annotationlab/support?utm_source=openshift_console
          operatorframework.io/suggested-namespace: johnsnowlabs-operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: NLP Lab
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Annotationlab
            name: annotationlabs.apps.johnsnowlabs.com
            version: v1
        description: "NLP Lab is a data labeling and annotation tool that helps you\nlabel
          different types of data using a simple interface with a standardized output\nformat.\n\nIt
          contains enterprise features like Project Management and sharing, SSO\nintegration,
          OpenAPI Specification 3.0 compliant API, task management, and active\nlearning/preannotation
          using Spark NLP.\n\nFurthermore, the production deployment of the application
          is done using a helm chart.\nThe same helm chart is also used to create
          an AWS AMI for an EC2 based single server \ndeployment using packer.\n\nMake
          sure you have defined shared storage such as efs/nfs/cephfs prior to installing
          the NLP Lab Operator.\nUpdate the host property in the YAML configuration
          to define the required domain name to use instead of the \ndefault hostname
          annotationlab.\n\nNLP Lab Operator Installtion guide [NLP Lab Operator][]:\n[NLP
          Lab Operator]: https://nlp.johnsnowlabs.com/docs/en/alab/install    \n"
        displayName: NLPLab
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nlplab
        links:
        - name: Annotationlab
          url: https://annotationlab.domain
        maintainers:
        - email: bhandari@johnsnowlabs.com
          name: bikash
        maturity: alpha
        provider:
          name: JohnSnowLABS
          url: nlp.johnsnowlabs.com
        relatedImages:
        - registry.johnsnowlabs.com/annotationlab/annotationlab-operator:v5.7.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/annotationlab@sha256:b69fde0eb341114893aba097d58455c9e316a97cb829b41c0d080987490a83d3
        version: 5.7.0
      entries:
      - name: annotationlab.v5.7.0
        version: 5.7.0
      - name: annotationlab.v5.4.1
        version: 5.4.1
      - name: annotationlab.v4.9.2
        version: 4.9.2
      name: alpha
    defaultChannel: alpha
    packageName: annotationlab
    provider:
      name: JohnSnowLABS
      url: nlp.johnsnowlabs.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-zero-trust-workload-identity-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: zero-trust-workload-identity-manager.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpiffeCSIDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "agentSocketPath": "/run/spire/agent-sockets",
                  "pluginName": "csi.spiffe.io"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpireAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "logFormat": "text",
                  "logLevel": "info",
                  "nodeAttestor": {
                    "k8sPSATEnabled": "true"
                  },
                  "workloadAttestors": {
                    "k8sEnabled": "true",
                    "workloadAttestorsVerification": {
                      "type": "auto"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpireOIDCDiscoveryProvider",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "csiDriverName": "csi.spiffe.io",
                  "jwtIssuer": "https://oidc-discovery.example.com",
                  "logFormat": "text",
                  "logLevel": "info",
                  "managedRoute": "true",
                  "replicaCount": 1
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpireServer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "caKeyType": "rsa-2048",
                  "caSubject": {
                    "commonName": "SPIRE Server CA",
                    "country": "US",
                    "organization": "Example Corp"
                  },
                  "caValidity": "24h",
                  "datastore": {
                    "connectionString": "/run/spire/data/datastore.sqlite3",
                    "databaseType": "sqlite3",
                    "maxIdleConns": 2,
                    "maxOpenConns": 100
                  },
                  "defaultJWTValidity": "5m",
                  "defaultX509Validity": "1h",
                  "federation": {
                    "bundleEndpoint": {
                      "profile": "https_spiffe",
                      "refreshHint": 300
                    },
                    "federatesWith": [
                      {
                        "bundleEndpointProfile": "https_spiffe",
                        "bundleEndpointUrl": "https://federation.partner.example.com:8443",
                        "endpointSpiffeId": "spiffe://partner.example.com/federation/endpoint",
                        "trustDomain": "partner.example.com"
                      }
                    ],
                    "managedRoute": "true"
                  },
                  "jwtIssuer": "https://oidc-discovery.example.com",
                  "logFormat": "text",
                  "logLevel": "info",
                  "persistence": {
                    "accessMode": "ReadWriteOnce",
                    "size": "2Gi",
                    "storageClass": ""
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ZeroTrustWorkloadIdentityManager",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "bundleConfigMap": "spire-bundle",
                  "clusterName": "prod-cluster",
                  "trustDomain": "example.com"
                }
              },
              {
                "apiVersion": "spire.spiffe.io/v1alpha1",
                "kind": "ClusterFederatedTrustDomain",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "example.com"
                },
                "spec": {
                  "bundleEndpointProfile": "https_web",
                  "trustDomain": "example.com"
                }
              },
              {
                "apiVersion": "spire.spiffe.io/v1alpha1",
                "kind": "ClusterSPIFFEID",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "example-workload",
                  "namespace": "default"
                },
                "spec": {
                  "dnsNameTemplates": [
                    "*.example.com"
                  ],
                  "ttl": 3600,
                  "workloadSelector": {
                    "k8sServiceAccount": {
                      "name": "example-sa",
                      "namespace": "example-ns"
                    }
                  }
                }
              },
              {
                "apiVersion": "spire.spiffe.io/v1alpha1",
                "kind": "ClusterStaticEntry",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "example-static-entry",
                  "namespace": "default"
                },
                "spec": {
                  "parentID": "spiffe://example.com/spire/server",
                  "selectors": [
                    {
                      "type": "unix",
                      "value": "uid:1000"
                    }
                  ],
                  "spiffeID": "spiffe://example.com/example-workload",
                  "ttl": 3600
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-rhel9@sha256:9d88df06140dfdfd18f9467fb7ecfdb5508a8f559301b6173c9b6490cc22cc37
          createdAt: 2025-12-17T07:13:42
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: zero-trust-workload-identity-manager
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/zero-trust-workload-identity-manager
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterFederatedTrustDomain
            name: clusterfederatedtrustdomains.spire.spiffe.io
            version: v1alpha1
          - kind: ClusterSPIFFEID
            name: clusterspiffeids.spire.spiffe.io
            version: v1alpha1
          - kind: ClusterStaticEntry
            name: clusterstaticentries.spire.spiffe.io
            version: v1alpha1
          - kind: SpiffeCSIDriver
            name: spiffecsidrivers.operator.openshift.io
            version: v1alpha1
          - kind: SpireAgent
            name: spireagents.operator.openshift.io
            version: v1alpha1
          - kind: SpireOIDCDiscoveryProvider
            name: spireoidcdiscoveryproviders.operator.openshift.io
            version: v1alpha1
          - kind: SpireServer
            name: spireservers.operator.openshift.io
            version: v1alpha1
          - kind: ZeroTrustWorkloadIdentityManager
            name: zerotrustworkloadidentitymanagers.operator.openshift.io
            version: v1alpha1
        description: The Zero Trust Workload Identity Manager is an Openshift Day-2
          Operator designed to automate the setup and management of SPIFFE/SPIRE components
          (like spire-server, spire-agent, spiffe-csi-driver, and oidc-discovery-provider)
          within OpenShift clusters. It enables zero-trust security by dynamically
          issuing and rotating workload identities, enforcing strict identity-based
          authentication across workloads. This manager abstracts complex SPIRE configurations,
          streamlining workload onboarding with secure identities and improving the
          cluster's overall security posture.
        displayName: Zero Trust Workload Identity Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - zero-trust-workload-identity-manager
        - ztwim
        - spire
        - spiffe-spire
        - security
        links:
        - name: Documentation
          url: https://github.com/openshift/zero-trust-workload-identity-manager/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-controller-manager-rhel9@sha256:7ddf330a798dbb112c2f58d2548941100a964db705617680d09969eaa3e07727
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-oidc-discovery-provider-rhel9@sha256:70f04312f96851a37ec9bfcc605d6a7edb4c87b548621007183b7caa2333816a
        - registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-rhel9@sha256:9d88df06140dfdfd18f9467fb7ecfdb5508a8f559301b6173c9b6490cc22cc37
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-csi-driver-rhel9@sha256:5359e8709d1b73386eddef202d59b7c511aa5366ca04f5ee707bbf760977e55d
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:1c480fa5089a32cf804fc84df7219ca64066cbac2eeb962c4385754132c3873b
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-agent-rhel9@sha256:54865d9de74a500528dcef5c24dfe15c0baee8df662e76459e83bf9921dfce4e
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-server-rhel9@sha256:6a14fb03c3b7256a405cff52ae0e5c7e66b1fa1a8e3a955d6670123f5534d4e4
        - registry.access.redhat.com/ubi9@sha256:dec374e05cc13ebbc0975c9f521f3db6942d27f8ccdf06b180160490eef8bdbc
        - registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-operator-bundle@sha256:3776c07bfffdf464660750d69bf3725aa74dfc1f207ee8d1f408a8dc6c11eabb
        version: 1.0.0
      entries:
      - name: zero-trust-workload-identity-manager.v1.0.0
        version: 1.0.0
      name: stable-v1
    defaultChannel: stable-v1
    packageName: openshift-zero-trust-workload-identity-manager
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Altair Engineering Inc.
      provider-url: ""
    name: anzograph-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: anzograph-operator.v3.2.500
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "anzograph.clusters.cambridgesemantics.com/v2",
                "kind": "AnzoGraph",
                "metadata": {
                  "name": "azg01"
                },
                "spec": {
                  "db": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app_data": "anzograph-data-grpc",
                            "app_mgmt": "anzograph-mgmt-grpc"
                          }
                        },
                        "serviceName": "anzograph-azg01",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app_data": "anzograph-data-grpc",
                              "app_mgmt": "anzograph-mgmt-grpc"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzograph-db@sha256:30ed2ec337135701ab8b54e75bb48ad8928a2c48818643c23b9dba4484255a2e",
                                "name": "db",
                                "resources": {
                                  "limits": {
                                    "cpu": "8000m",
                                    "memory": "8Gi"
                                  },
                                  "requests": {
                                    "cpu": "8000m",
                                    "memory": "8Gi"
                                  }
                                }
                              }
                            ],
                            "securityContext": {
                              "fsGroup": 1000,
                              "runAsNonRoot": true,
                              "runAsUser": 1000,
                              "seccompProfile": {
                                "type": "RuntimeDefault"
                              }
                            },
                            "serviceAccountName": "anzograph-operator"
                          }
                        }
                      }
                    }
                  },
                  "deployFrontend": false,
                  "frontend": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app_mgmt": "anzograph-frontend"
                          }
                        },
                        "serviceName": "anzograph-azg01",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app_mgmt": "anzograph-frontend"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzograph-frontend@sha256:e5446b3c04889f2189e955702c4165eb243eb89f47ac797eb417b60b1459647f",
                                "name": "frontend",
                                "resources": {
                                  "limits": {
                                    "cpu": "2000m",
                                    "memory": "4Gi"
                                  },
                                  "requests": {
                                    "cpu": "2000m",
                                    "memory": "4Gi"
                                  }
                                }
                              }
                            ],
                            "securityContext": {
                              "fsGroup": 1000,
                              "runAsNonRoot": true,
                              "runAsUser": 1000,
                              "seccompProfile": {
                                "type": "RuntimeDefault"
                              }
                            },
                            "serviceAccountName": "anzograph-operator"
                          }
                        }
                      }
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Basic Install
          categories: Database, Big Data
          certified: "true"
          containerImage: registry.connect.redhat.com/cambridgesemantics/anzograph-operator@sha256:2333154a14ab7f3a03a601f00c017feeafb9d9814aff5e59c95cef615ab2abd6
          createdAt: "2025-09-22T12:03:18Z"
          description: kubernetes operator for Altair Graph Lakehouse DB
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: unknown
          repository: ""
          support: Altair Engineering Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnzoGraph is the Schema for the anzographs API
            displayName: Altair Graph Lakehouse Operator
            kind: AnzoGraph
            name: anzographs.anzograph.clusters.cambridgesemantics.com
            version: v2
        description: |-
          The Altair Graph Lakehouse Operator provides the way to install and configure an Altair Graph Lakehouse
          cluster on Red Hat K8S environment.

          ### Installation
           Refer [installation instructions]( https://github.com/cambridgesemantics/csi-k8s-operator-anzograph/blob/v3.2.5/README_openshift_marketplace.md )

          ### Documentation

          You can find our documentation [here.]( https://docs.cambridgesemantics.com/anzograph/userdoc/ )

          ### Support

          We offer Support to our customers with the Altair Graph Lakehouse db Enterprise Edition License [here]( https://altair.com/customer-support ) or by emailing the Data Analytics Support team at dasupport@altair.com.
        displayName: Altair Graph Lakehouse Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Big Data
        - Database
        links:
        - name: Anzograph Operator
          url: https://github.com/cambridgesemantics/csi-k8s-operator-anzograph/blob/v3.2.5/README_openshift_marketplace.md
        maintainers:
        - email: fschwichtenberg@altair.com
          name: Frank Schwichtenberg
        maturity: stable
        provider:
          name: Altair Engineering Inc.
        relatedImages:
        - registry.connect.redhat.com/cambridgesemantics/anzograph-frontend@sha256:e5446b3c04889f2189e955702c4165eb243eb89f47ac797eb417b60b1459647f
        - registry.connect.redhat.com/cambridgesemantics/anzograph-operator-bundle@sha256:a7b60f1c65a6fb4ee0109c7b2b0bd12fb9487e2f6edb059bd18cfd2337ea9116
        - registry.connect.redhat.com/cambridgesemantics/anzograph-operator@sha256:2333154a14ab7f3a03a601f00c017feeafb9d9814aff5e59c95cef615ab2abd6
        - registry.connect.redhat.com/cambridgesemantics/anzograph-db@sha256:30ed2ec337135701ab8b54e75bb48ad8928a2c48818643c23b9dba4484255a2e
        version: 3.2.500
      entries:
      - name: anzograph-operator.v3.2.500
        version: 3.2.500
      - name: anzograph-operator.v3.2.300
        version: 3.2.300
      - name: anzograph-operator.v3.2.200
        version: 3.2.200
      - name: anzograph-operator.v3.2.104
        version: 3.2.104
      name: stable
    defaultChannel: stable
    packageName: anzograph-operator
    provider:
      name: Altair Engineering Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Habana Labs Ltd.
      provider-url: https://habana.ai
    name: habana-ai-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: habana-ai-operator.v1.22.2-32-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "habanalabs.habana.ai/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "habana-ai"
                },
                "spec": {
                  "bmc_monitoring": {
                    "image": {
                      "repository": "vault.habana.ai/habana-bmc-exporter/bmc-exporter",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "250Mi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "device_plugin": {
                    "image": {
                      "repository": "vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "20m",
                        "memory": "64Mi"
                      },
                      "requests": {
                        "cpu": "10m",
                        "memory": "32Mi"
                      }
                    }
                  },
                  "driver": {
                    "driver_loader": {
                      "images": {
                        "rhel_9.4": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "rhel_9.6": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "tencentos_3.1": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_22.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_24.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer",
                          "tag": "1.22.2-32"
                        }
                      },
                      "mlnx_ofed_repo_path": "artifactory/gaudi-installer/deps",
                      "mlnx_ofed_version": "mlnx-ofed-5.8-2.0.3.0-rhel8.4-x86_64.tar.gz",
                      "repo_path": "artifactory/gaudi-installer/repos",
                      "repo_server": "vault.habana.ai",
                      "resources": {
                        "limits": {
                          "cpu": "4000m",
                          "memory": "16Gi"
                        },
                        "requests": {
                          "cpu": "2000m",
                          "memory": "8Gi"
                        }
                      }
                    },
                    "driver_runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "feature_discovery": {
                    "nfd_plugin": false,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "image_registry": "vault.habana.ai",
                  "metric_exporter": {
                    "interval": 20,
                    "port": 41611,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/gaudi-metric-exporter/metric-exporter",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "memory": "120Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "100Mi"
                        }
                      }
                    }
                  },
                  "runtime": {
                    "configuration": {
                      "container_engine": "crio"
                    },
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habana-container-runtime",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
          createdAt: "2025-11-29T20:54:26Z"
          description: Manages Intel Gaudi AI accelerators within a Kubernetes cluster
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.9.0 <1.22.2-32-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: habana-ai-operator
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: http://github.com/HabanaAI/habana-ai-operator
          support: Habana Labs Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy is the Schema for the clusterpolicies API.
            displayName: Cluster Policy
            kind: ClusterPolicy
            name: clusterpolicies.habanalabs.habana.ai
            version: v1
        description: |
          Kubernetes provides access to accelerators such as Intel Gaudi AI accelerators and other devices through the [Device Plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The Intel Gaudi uses the [operator framework](https://coreos.com/blog/introducing-operator-framework) within Kubernetes to automate the management of all Intel Gaudi software components needed to provision and monitor the Intel Gaudi AI accelerators. These components include:
          * The Intel Gaudi kernel modules to enable the hardware
          * The Kubernetes DevicePlugin to allow the Intel Gaudi AI accelerator allocation via the kubelet
          ### Documentation
          Visit the [Intel Gaudi developer site](https://developer.habana.ai/) for more information.
          To get started with using Intel Gaudi with OpenShift, see the instructions in the [Intel Gaudi Documentation](https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html).
        displayName: Intel Gaudi Base Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - habanalabs
        - hardware
        - driver
        links:
        - name: Intel Gaudi Documentation
          url: https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html
        maintainers:
        - email: erik.berlin@intel.com
          name: Erik Berlin
        - email: tal.david@intel.com
          name: Tal David
        - email: lukasz.wencel@intel.com
          name: Lukasz Wencel
        maturity: stable
        provider:
          name: Habana Labs Ltd.
          url: https://habana.ai
        relatedImages:
        - vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin@sha256:3d47bdff68c5d277bcc9fbacae0a2a9becd3566b5939eeff0899e37d256ba399
        - vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer@sha256:8e2c240d88f353dcbe583d8a2f080ac8c0d67b262bfa3259cfa977c89ac37926
        - vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer@sha256:b4e0e572f521c4d0ec936e08a57261de595fb60cd949c1f630010a6fdc3adc04
        - vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer@sha256:89c88d3881e678a8a7658abddea4548f43f7271d16d6fc23816b59ac7b54a045
        - vault.habana.ai/habana-ai-operator/habana-container-runtime@sha256:4a518f14a65a30fe0838e8e02246b32f04b90d34c473306e36ed5ca34462253e
        - registry.connect.redhat.com/ospid-627904f807c06bb948c71e73/habana-ai@sha256:5a939703888b51e15248203489a2c86874a31dbc4051fedee104cb2663ce8d45
        - vault.habana.ai/gaudi-metric-exporter/metric-exporter@sha256:535a9737602f35b0e1c706f60b2c10cd7bd3fc84f57f72f1b3eedd6c16035382
        - vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer@sha256:1d9a78720caba968c885884844217034e318e3379db840fd1490911a4baaec8c
        - vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery@sha256:837d781b678f0719e33a9d5b43ead4868b16ae8420d959666cbdfaaf74ff47f8
        - vault.habana.ai/habana-bmc-exporter/bmc-exporter@sha256:158af426fef28f8c14a77f71299314701345f786ff0c079066837bdc201b36e7
        - quay.io/brancz/kube-rbac-proxy@sha256:c2ef3c3fcb4ffcfab30088b19c8ef18931aac8cf072c75ef72c654457e1d632b
        - vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer@sha256:1a6e4c500cce53ec77bfc00cd78dbc30038a8b1c55bc59004e52de0254d9d0d1
        - vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
        version: 1.22.2-32-2
      entries:
      - name: habana-ai-operator.v1.22.2-32-2
        version: 1.22.2-32-2
      name: "1.22"
    - currentCSV: habana-ai-operator.v1.22.2-32-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "habanalabs.habana.ai/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "habana-ai"
                },
                "spec": {
                  "bmc_monitoring": {
                    "image": {
                      "repository": "vault.habana.ai/habana-bmc-exporter/bmc-exporter",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "250Mi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "device_plugin": {
                    "image": {
                      "repository": "vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "20m",
                        "memory": "64Mi"
                      },
                      "requests": {
                        "cpu": "10m",
                        "memory": "32Mi"
                      }
                    }
                  },
                  "driver": {
                    "driver_loader": {
                      "images": {
                        "rhel_9.4": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "rhel_9.6": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "tencentos_3.1": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_22.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_24.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer",
                          "tag": "1.22.2-32"
                        }
                      },
                      "mlnx_ofed_repo_path": "artifactory/gaudi-installer/deps",
                      "mlnx_ofed_version": "mlnx-ofed-5.8-2.0.3.0-rhel8.4-x86_64.tar.gz",
                      "repo_path": "artifactory/gaudi-installer/repos",
                      "repo_server": "vault.habana.ai",
                      "resources": {
                        "limits": {
                          "cpu": "4000m",
                          "memory": "16Gi"
                        },
                        "requests": {
                          "cpu": "2000m",
                          "memory": "8Gi"
                        }
                      }
                    },
                    "driver_runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "feature_discovery": {
                    "nfd_plugin": false,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "image_registry": "vault.habana.ai",
                  "metric_exporter": {
                    "interval": 20,
                    "port": 41611,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/gaudi-metric-exporter/metric-exporter",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "memory": "120Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "100Mi"
                        }
                      }
                    }
                  },
                  "runtime": {
                    "configuration": {
                      "container_engine": "crio"
                    },
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habana-container-runtime",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
          createdAt: "2025-11-29T20:54:26Z"
          description: Manages Intel Gaudi AI accelerators within a Kubernetes cluster
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.9.0 <1.22.2-32-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: habana-ai-operator
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: http://github.com/HabanaAI/habana-ai-operator
          support: Habana Labs Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy is the Schema for the clusterpolicies API.
            displayName: Cluster Policy
            kind: ClusterPolicy
            name: clusterpolicies.habanalabs.habana.ai
            version: v1
        description: |
          Kubernetes provides access to accelerators such as Intel Gaudi AI accelerators and other devices through the [Device Plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The Intel Gaudi uses the [operator framework](https://coreos.com/blog/introducing-operator-framework) within Kubernetes to automate the management of all Intel Gaudi software components needed to provision and monitor the Intel Gaudi AI accelerators. These components include:
          * The Intel Gaudi kernel modules to enable the hardware
          * The Kubernetes DevicePlugin to allow the Intel Gaudi AI accelerator allocation via the kubelet
          ### Documentation
          Visit the [Intel Gaudi developer site](https://developer.habana.ai/) for more information.
          To get started with using Intel Gaudi with OpenShift, see the instructions in the [Intel Gaudi Documentation](https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html).
        displayName: Intel Gaudi Base Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - habanalabs
        - hardware
        - driver
        links:
        - name: Intel Gaudi Documentation
          url: https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html
        maintainers:
        - email: erik.berlin@intel.com
          name: Erik Berlin
        - email: tal.david@intel.com
          name: Tal David
        - email: lukasz.wencel@intel.com
          name: Lukasz Wencel
        maturity: stable
        provider:
          name: Habana Labs Ltd.
          url: https://habana.ai
        relatedImages:
        - vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin@sha256:3d47bdff68c5d277bcc9fbacae0a2a9becd3566b5939eeff0899e37d256ba399
        - vault.habana.ai/gaudi-metric-exporter/metric-exporter@sha256:535a9737602f35b0e1c706f60b2c10cd7bd3fc84f57f72f1b3eedd6c16035382
        - vault.habana.ai/habana-ai-operator/habana-container-runtime@sha256:4a518f14a65a30fe0838e8e02246b32f04b90d34c473306e36ed5ca34462253e
        - quay.io/brancz/kube-rbac-proxy@sha256:c2ef3c3fcb4ffcfab30088b19c8ef18931aac8cf072c75ef72c654457e1d632b
        - vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
        - vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer@sha256:1a6e4c500cce53ec77bfc00cd78dbc30038a8b1c55bc59004e52de0254d9d0d1
        - vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer@sha256:b4e0e572f521c4d0ec936e08a57261de595fb60cd949c1f630010a6fdc3adc04
        - vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer@sha256:89c88d3881e678a8a7658abddea4548f43f7271d16d6fc23816b59ac7b54a045
        - vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery@sha256:837d781b678f0719e33a9d5b43ead4868b16ae8420d959666cbdfaaf74ff47f8
        - vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer@sha256:8e2c240d88f353dcbe583d8a2f080ac8c0d67b262bfa3259cfa977c89ac37926
        - vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer@sha256:1d9a78720caba968c885884844217034e318e3379db840fd1490911a4baaec8c
        - vault.habana.ai/habana-bmc-exporter/bmc-exporter@sha256:158af426fef28f8c14a77f71299314701345f786ff0c079066837bdc201b36e7
        - registry.connect.redhat.com/ospid-627904f807c06bb948c71e73/habana-ai@sha256:5a939703888b51e15248203489a2c86874a31dbc4051fedee104cb2663ce8d45
        version: 1.22.2-32-2
      entries:
      - name: habana-ai-operator.v1.22.2-32-2
        version: 1.22.2-32-2
      name: stable
    defaultChannel: stable
    packageName: habana-ai-operator
    provider:
      name: Habana Labs Ltd.
      url: https://habana.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ptp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ptp-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ptp.openshift.io/v1",
                "kind": "NodePtpDevice",
                "metadata": {
                  "name": "node.example.com"
                },
                "spec": {}
              },
              {
                "apiVersion": "ptp.openshift.io/v1",
                "kind": "PtpConfig",
                "metadata": {
                  "name": "example-ptpconfig"
                },
                "spec": {
                  "profile": [
                    {
                      "interface": "ens787f1",
                      "name": "profile1",
                      "phc2sysOpts": "-a -r",
                      "ptp4lOpts": "-s -2",
                      "ptpClockThreshold": {}
                    }
                  ],
                  "recommend": [
                    {
                      "match": [
                        {
                          "nodeLabel": "node-role.kubernetes.io/worker=",
                          "nodeName": "node.example.com"
                        }
                      ],
                      "priority": 4,
                      "profile": "profile1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "ptp.openshift.io/v1",
                "kind": "PtpOperatorConfig",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "daemonNodeSelector": {
                    "feature.node.kubernetes.io/ptp-capable": "yes",
                    "node-role.kubernetes.io/worker": ""
                  },
                  "ptpEventConfig": {}
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-ptp-rhel9-operator@sha256:60db6e526e38ecc4b5f6bfb7bb036776522052ff2e7b7815f83ca896eeaf07d3
          createdAt: "2024-06-12"
          description: This software enables configuration of Precision Time Protocol(PTP)
            on Kubernetes. It detects hardware capable PTP devices on each node, and
            configures linuxptp processes such as ptp4l, phc2sys and timemaster.
          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: "true"
          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.skipRange: '>=4.3.0-0 <4.20.0-202512090918'
          operatorframework.io/suggested-namespace: openshift-ptp
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.22.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: Red Hat
          repository: https://github.com/k8snetworkplumbingwg/ptp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodePtpDevice is the Schema for the nodeptpdevices API
            displayName: Node Ptp Device
            kind: NodePtpDevice
            name: nodeptpdevices.ptp.openshift.io
            version: v1
          - description: PtpConfig is the Schema for the ptpconfigs API
            displayName: Ptp Config
            kind: PtpConfig
            name: ptpconfigs.ptp.openshift.io
            version: v1
          - description: PtpOperatorConfig is the Schema for the ptpoperatorconfigs
              API
            displayName: Ptp Operator Config
            kind: PtpOperatorConfig
            name: ptpoperatorconfigs.ptp.openshift.io
            version: v1
        description: |
          # Precision Time Protocol (PTP) Operator for Openshift

          ## Introdution
          PTP Operator manages cluster wide PTP configuration.
          This operator has to run in namespace 'openshift-ptp'. An Operator Group is also required to install this operator:
          ```
          $ oc create -f - <<EOF
          apiVersion: v1
          kind: Namespace
          metadata:
            name: openshift-ptp
            labels:
              name: openshift-ptp
              openshift.io/cluster-monitoring: "true"
          EOF

          $ oc create -f - <<EOF
          apiVersion: operators.coreos.com/v1
          kind: OperatorGroup
          metadata:
            name: ptp-operators
            namespace: openshift-ptp
          spec:
            targetNamespaces:
            - openshift-ptp
          EOF
          ```
        displayName: PTP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ptp
        links:
        - name: Documentation operator
          url: https://github.com/k8snetworkplumbingwg/ptp-operator
        - name: Documentation operand
          url: https://github.com/k8snetworkplumbingwg/linuxptp-daemon
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-ptp-operator-bundle@sha256:8c575641252b62703f2c9a925805f6ba29ba2b21f31c3c4ef2752942fda4dc3e
        - registry.redhat.io/openshift4/ose-cloud-event-proxy-rhel9@sha256:d96187c19aff7b750075052828058c1b061a7b476c047598d78414c545b58562
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-ptp-rhel9-operator@sha256:60db6e526e38ecc4b5f6bfb7bb036776522052ff2e7b7815f83ca896eeaf07d3
        - registry.redhat.io/openshift4/ose-ptp-rhel9@sha256:bb0c3bd53144f85bea73066bed2770b0fd49a9c019f56a9f6d6f92e63c8afc81
        version: 4.20.0-202512090918
      entries:
      - name: ptp-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: ptp-operator.v4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: ptp-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: ptp-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: ptp-operator.v4.20.0-202511042325
        version: 4.20.0-202511042325
      - name: ptp-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: ptp-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: ptp-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: ptp-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ODH
      provider-url: ""
    name: opendatahub-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opendatahub-operator.v2.35.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "odh-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "opendatahub",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "opendatahub"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v2.35.0
          createdAt: "2025-10-01T13:12:27Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/opendatahub-io/opendatahub-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odh
        - notebooks
        - serving
        - training
        - pipelines
        - modelmesh
        - workbenches
        - dashboard
        - kserve
        - distributed workloads
        - trustyai
        - modelregistry
        - feast
        - featurestore
        - llamastack
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: opendatahub@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ODH
        relatedImages:
        - quay.io/community-operator-pipeline-prod/opendatahub-operator:2.35.0
        - quay.io/opendatahub/opendatahub-operator:v2.35.0
        version: 2.35.0
      entries:
      - name: opendatahub-operator.v2.35.0
        version: 2.35.0
      - name: opendatahub-operator.v2.34.0
        version: 2.34.0
      - name: opendatahub-operator.v2.33.0
        version: 2.33.0
      - name: opendatahub-operator.v2.32.0
        version: 2.32.0
      - name: opendatahub-operator.v2.31.0
        version: 2.31.0
      - name: opendatahub-operator.v2.30.0
        version: 2.30.0
      - name: opendatahub-operator.v2.29.0
        version: 2.29.0
      - name: opendatahub-operator.v2.28.0
        version: 2.28.0
      - name: opendatahub-operator.v2.27.0
        version: 2.27.0
      - name: opendatahub-operator.v2.26.0
        version: 2.26.0
      - name: opendatahub-operator.v2.25.0
        version: 2.25.0
      - name: opendatahub-operator.v2.24.0
        version: 2.24.0
      - name: opendatahub-operator.v2.23.0
        version: 2.23.0
      - name: opendatahub-operator.v2.22.0
        version: 2.22.0
      - name: opendatahub-operator.v2.21.0
        version: 2.21.0
      - name: opendatahub-operator.v2.20.0
        version: 2.20.0
      - name: opendatahub-operator.v2.19.0
        version: 2.19.0
      - name: opendatahub-operator.v2.18.2
        version: 2.18.2
      - name: opendatahub-operator.v2.18.1
        version: 2.18.1
      - name: opendatahub-operator.v2.18.0
        version: 2.18.0
      - name: opendatahub-operator.v2.17.0
        version: 2.17.0
      - name: opendatahub-operator.v2.16.0
        version: 2.16.0
      - name: opendatahub-operator.v2.15.0
        version: 2.15.0
      - name: opendatahub-operator.v2.14.0
        version: 2.14.0
      - name: opendatahub-operator.v2.13.0
        version: 2.13.0
      - name: opendatahub-operator.v2.12.1
        version: 2.12.1
      - name: opendatahub-operator.v2.12.0
        version: 2.12.0
      - name: opendatahub-operator.v2.11.1
        version: 2.11.1
      - name: opendatahub-operator.v2.11.0
        version: 2.11.0
      - name: opendatahub-operator.v2.10.0
        version: 2.10.0
      name: fast
    - currentCSV: opendatahub-operator.v3.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v2",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "datasciencecluster"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "aipipelines": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "rawDeploymentServiceConfig": "Headed"
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "mlflowoperator": {
                      "managementState": "Removed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "odh-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainer": {
                      "managementState": "Removed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v2",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "dscinitialization"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "opendatahub",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "opendatahub"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v3.2.0
          createdAt: "2025-12-19T00:40:32Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["featuretrackers.features.opendatahub.io",
            "dashboards.components.platform.opendatahub.io", "datasciencepipelines.components.platform.opendatahub.io",
            "kserves.components.platform.opendatahub.io", "kueues.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io",
            "llamastackoperators.components.platform.opendatahub.io", "trainers.components.platform.opendatahub.io",
            "mlflowoperators.components.platform.opendatahub.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/opendatahub-io/opendatahub-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v2
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v2
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: GatewayConfig is the Schema for the gatewayconfigs API
            displayName: Gateway Config
            kind: GatewayConfig
            name: gatewayconfigs.services.platform.opendatahub.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: MLflowOperator is the Schema for the MLflowOperators API
            displayName: MLflow Operator
            kind: MLflowOperator
            name: mlflowoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelsAsService
            name: modelsasservices.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - kind: Trainer
            name: trainers.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: "The Open Data Hub is a machine-learning-as-a-service platform
          built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open
          Data Hub integrates multiple AI/ML open source components into one operator
          that can easily be downloaded and installed by OpenShift users.\n\nOpen
          Data Hub operator allows users to install and manage components of the Open
          Data Hub. Users can mix and match tools from each project to fulfill the
          needs of their use case. Each of the projects share some components, but
          can be mostly seen as an extension of each other to provide a complete solution
          for both novice and skilled enterprise users.\n    \n### Components\n\n*
          Open Data Hub Dashboard - A web dashboard that displays installed Open Data
          Hub components with easy access to component UIs and documentation\n* ODH
          Notebook Controller - Secure management of Jupyter Notebook in Kubernetes
          environments built on top of Kubeflow Notebook Controller with support for
          OAuth\n* Jupyter Notebooks - JupyterLab notebook that provide Python support
          for GPU workloads\n* Data Science Pipelines - Pipeline solution for end
          to end MLOps workflows that support the Kubeflow Pipelines SDK and Argo
          Workflows\n* Model Mesh - ModelMesh Serving is the Controller for managing
          ModelMesh, a general-purpose model serving management/routing layer\n* Distributed
          Workloads(Incubation) - Stack built to make managing distributed compute
          infrastructure in the cloud easy and intuitive for Data Scientists. This
          stack consists of two components\n                                      KubeRay
          and Kueue.\n* Kserve - Kserve is the Controller for for serving machine
          learning (ML) models on arbitrary frameworks\n* Feast - Feature Store is
          the fastest path to manage existing infrastructure to productionize analytic
          data for model training and online inference.\n* Llama Stack – unified open‑source
          APIs for inference, RAG, agents, safety, evals & telemetry\n* MLflow - MLflow
          is an open-source platform, purpose-built to assist machine learning practitioners
          and teams in handling the complexities of the machine learning process.
          MLflow focuses on the full lifecycle for machine learning projects, ensuring
          that each phase is manageable, traceable, and reproducible."
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odh
        - notebooks
        - serving
        - training
        - pipelines
        - workbenches
        - dashboard
        - kserve
        - distributed workloads
        - trustyai
        - modelregistry
        - feast
        - featurestore
        - llamastack
        - mlflow
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: ai-core-platform@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ODH
        relatedImages:
        - quay.io/community-operator-pipeline-prod/opendatahub-operator:3.2.0
        - quay.io/opendatahub/odh-kube-auth-proxy:v3.2.0
        - quay.io/opendatahub/opendatahub-operator:v3.2.0
        version: 3.2.0
      entries:
      - name: opendatahub-operator.v3.2.0
        version: 3.2.0
      - name: opendatahub-operator.v3.1.0
        version: 3.1.0
      - name: opendatahub-operator.v3.0.0
        version: 3.0.0
      name: fast-3
    - currentCSV: opendatahub-operator.v2.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "opendatahub",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "opendatahub"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              },
              {
                "apiVersion": "features.opendatahub.io/v1",
                "kind": "FeatureTracker",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "default-feature",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-feature"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v2.8.0
          createdAt: "2024-2-20T00:00:00Z"
          operatorframework.io/initialization-resource: |-
            {
            "apiVersion": "dscinitialization.opendatahub.io/v1",
            "kind": "DSCInitialization",
            "metadata": {
            "labels": {
             "app.kubernetes.io/created-by": "opendatahub-operator",
             "app.kubernetes.io/instance": "default",
             "app.kubernetes.io/managed-by": "kustomize",
             "app.kubernetes.io/name": "dscinitialization",
             "app.kubernetes.io/part-of": "opendatahub-operator"
            },
            "name": "default-dsci"
            },
            "spec": {
            "applicationsNamespace": "opendatahub",
            "monitoring": {
             "managementState": "Managed",
             "namespace": "opendatahub"
            },
            "serviceMesh": {
             "controlPlane": {
               "metricsCollection": "Istio",
               "name": "data-science-smcp",
               "namespace": "istio-system"
             },
             "managementState": "Managed"
            },
            "trustedCABundle": {
             "customCABundle": "",
             "managementState": "Managed"
            }
            }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/opendatahub-io/opendatahub-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: "The Open Data Hub is a machine-learning-as-a-service platform
          built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open
          Data Hub integrates multiple AI/ML open source components into one operator
          that can easily be downloaded and installed by OpenShift users.\n\nOpen
          Data Hub operator allows users to install and manage components of the Open
          Data Hub. Users can mix and match tools from each project to fulfill the
          needs of their use case. Each of the projects share some components, but
          can be mostly seen as an extension of each other to provide a complete solution
          for both novice and skilled enterprise users.\n    \n### Components\n\n*
          Open Data Hub Dashboard - A web dashboard that displays installed Open Data
          Hub components with easy access to component UIs and documentation\n* ODH
          Notebook Controller - Secure management of Jupyter Notebook in Kubernetes
          environments built on top of Kubeflow Notebook Controller with support for
          OAuth\n* Jupyter Notebooks - JupyterLab notebook that provide Python support
          for GPU workloads\n* Data Science Pipelines - Pipeline solution for end
          to end MLOps workflows that support the Kubeflow Pipelines SDK and Tekton\n*
          Model Mesh - ModelMesh Serving is the Controller for managing ModelMesh,
          a general-purpose model serving management/routing layer\n* Distributed
          Workloads(Incubation) - Stack built to make managing distributed compute
          infrastructure in the cloud easy and intuitive for Data Scientists. This
          stack consists of three components \n                                      Codeflare
          , KubeRay and Kueue.\n* Kserve - Kserve is the Controller for for serving
          machine learning (ML) models on arbitrary frameworks"
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odh
        - notebooks
        - serving
        - training
        - pipelines
        - modelmesh
        - workbenches
        - dashboard
        - kserve
        - distributed-workloads
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: opendatahub@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: ODH
        relatedImages:
        - quay.io/community-operator-pipeline-prod/opendatahub-operator@sha256:d3e3d5ae02b834522481fa9046bf2ad3ea06d706c5cb06a32d32e61e229e4a6c
        - quay.io/opendatahub/opendatahub-operator:v2.8.0
        version: 2.8.1
      entries:
      - name: opendatahub-operator.v2.8.1
        version: 2.8.1
      name: odh-2.8.z
    - currentCSV: opendatahub-operator.v1.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kfdef.apps.kubeflow.org/v1",
                "kind": "KfDef",
                "metadata": {
                  "name": "opendatahub",
                  "namespace": "opendatahub"
                },
                "spec": {
                  "applications": [
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-common"
                        }
                      },
                      "name": "odh-common"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-dashboard"
                        }
                      },
                      "name": "odh-dashboard"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "data-science-pipelines-operator/"
                        }
                      },
                      "name": "data-science-pipelines-operator"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-notebook-controller"
                        }
                      },
                      "name": "odh-notebook-controller"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "notebook-images"
                        }
                      },
                      "name": "notebook-images"
                    },
                    {
                      "kustomizeConfig": {
                        "parameters": [
                          {
                            "name": "monitoring-namespace",
                            "value": "opendatahub"
                          }
                        ],
                        "repoRef": {
                          "name": "manifests",
                          "path": "model-mesh"
                        }
                      },
                      "name": "model-mesh"
                    }
                  ],
                  "repos": [
                    {
                      "name": "manifests",
                      "uri": "file:///opt/manifests/odh-manifests.tar.gz"
                    }
                  ]
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhApplication",
                "metadata": {
                  "name": "example-odhapplication",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started,Model development,Model training,Notebook environments,Package management,Data Management"
                  }
                },
                "spec": {
                  "displayName": "ODHAPPLICATION DISPLAY NAME",
                  "provider": "PROVIDER_NAME",
                  "description": "Description of your ODHApplication",
                  "kfdefApplications": [
                    "<NAME OF THE ODH APPLICATION IN KFDEF>"
                  ],
                  "route": "<APPLICATION_OCP_ROUTE_OBJECT_NAME>",
                  "img": "<svg xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" viewBox=\"-1.13 -1.13 58.50 48.94\"><title>Open Data Hub logo</title><g><g><g fill=\"#4d5258\" stroke-width=\".006\"><path fill=\"#bbb\" d=\"M112.30231 22.797083c-.2034 0-.35737.143517-.35737.337407 0 .192939.15397.339307.35737.339307.20339 0 .35736-.147318.35736-.339307 0-.19294-.15397-.337407-.35736-.337407zm.002.131161c.1112 0 .20149.08934.20149.206246 0 .116904-.0903.208146-.20149.208146-.1112 0-.2053-.09124-.2053-.208146 0-.116904.0931-.206246.2053-.206246zM113.04141 22.801836h-.28228v.665308h.15017v-.190088h.13211c.16918 0 .26612-.08934.26612-.244263 0-.147319-.0969-.230957-.26612-.230957zm-.008.349762h-.12451v-.225255h.12451c.0836 0 .13116.03707.13116.111202 0 .07603-.0475.114053-.13116.114053zM113.40328 22.801836v.665308h.51703v-.124508h-.36687v-.147318h.32125V23.07081h-.32125v-.144467h.35642v-.124507zM114.03814 22.801836v.665308h.14352v-.426748l.3222.426748h.13686v-.665308h-.14257v.427698L114.175 22.801836z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/><path d=\"M115.29685 22.801836h-.28228v.665308h.27658c.21004 0 .35546-.136863.35546-.332654 0-.196741-.14351-.332654-.34976-.332654zm.004.538899h-.13591v-.412491h.12926c.11405 0 .19959.08459.19959.207196 0 .121657-.0817.205295-.19294.205295zM116.21878 23.467144h.16062l-.28418-.665308h-.15492l-.28894.665308h.15493l.0523-.12926h.30794zm-.3108-.249966l.1055-.25852.10455.25852zM116.31525 22.801836v.127359h.20244v.537949h.15017v-.537949h.2034v-.127359zM117.37527 23.467144h.16063l-.28419-.665308h-.15492l-.28893.665308h.15492l.0523-.12926h.30795zm-.31079-.249966l.1055-.25852.10454.25852zM117.83433 22.801836v.665308h.15017v-.262322h.30129v.262322h.15017v-.665308h-.15017v.277528h-.30129v-.277528zM118.72025 23.188665v-.386829h-.15017v.386829c0 .175831.11785.285132.30224.285132.18343 0 .29844-.109301.29844-.285132v-.386829h-.15017v.386829c0 .09599-.0589.153971-.14827.153971-.0893 0-.15207-.05798-.15207-.153971zM119.61059 22.801836h-.30604v.665308h.31649c.15492 0 .25092-.07033.25092-.184385 0-.08744-.0532-.152071-.13876-.168228.0713-.01806.115-.07413.115-.146368 0-.102648-.0912-.166327-.23761-.166327zm-.008.268024h-.14826v-.145418h.14826c.0561 0 .0913.02566.0913.07128 0 .04657-.0352.07413-.0913.07413zm0 .274677h-.14826v-.158723h.14826c.0713 0 .11406.02946.11406.07794 0 .05132-.0428.08079-.11406.08079z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g><g fill=\"#58595b\" stroke-width=\".01\"><path d=\"M112.19192 24.15027h.0381l-.13717-.306759h-.0364l-.1376.306759h.0372l.0342-.07844h.16696zm-.18712-.110871l.0688-.157763.0697.157763zM112.27858 23.843511v.306759h.0351v-.306759zM112.64205 23.843511h-.11525v.306759h.0351v-.09729h.0802c.0758 0 .11964-.039.11964-.10649 0-.0653-.0438-.102983-.11964-.102983zm-.001.177044h-.0789V23.87594h.0789c.0552 0 .0872.02454.0872.07143 0 .0482-.032.07318-.0872.07318zM112.81775 23.825105v.325165h.0342v-.325165zM113.1137 24.15027l-.00044-.152503c-.00044-.04908-.032-.07932-.089-.07932-.0394 0-.0644.01139-.0942.03111l.0145.0241c.0241-.01709.0478-.02673.0732-.02673.0408 0 .0618.0206.0618.05434v.01446h-.0758c-.0543.000439-.0863.02586-.0863.06617 0 .03944.0307.06968.0784.06968.0368 0 .0662-.01227.0846-.03725v.03593zm-.11131-.02717c-.0324 0-.053-.01709-.053-.04251 0-.02585.0202-.03769.0587-.03769h.0719v.02805c-.009.03287-.0386.05215-.0776.05215zM113.29915 24.108201c-.0127.0074-.025.01139-.0368.01183-.0197 0-.0307-.01139-.0307-.03944v-.127086h.0732v-.02673h-.0732v-.06048h-.0337v.06048h-.0333v.02673h.0333v.132783c0 .04558.025.06573.0587.0653.0184 0 .0359-.0061.0521-.01709zM113.44228 23.854466c.0118 0 .0245.0044.0351.01183l.014-.02629c-.014-.01052-.032-.01622-.0495-.01622-.0386-.000438-.0741.02717-.0741.07713v.02586h-.0298v.02673h.0298v.196764h.0337v-.196764h.0662v-.02673h-.0662v-.03024c0-.02717.0184-.04251.0408-.04207zM113.59236 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM113.80323 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM114.22747 23.918448c-.0443.000438-.0767.01972-.0911.06004-.01-.03813-.0394-.06004-.0828-.06004-.0416.000438-.0727.01753-.0881.05346v-.05215h-.0337v.230508h.0337v-.113501c0-.04996.0285-.08458.0758-.08589.0403 0 .064.02454.064.06617v.133221h.0346v-.113501c0-.04996.0276-.08458.0754-.08589.0399 0 .064.02454.064.06617v.133221h.0342V24.00828c0-.05609-.032-.08984-.0859-.08984zM114.63474 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0487.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11088-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM114.89934 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM115.02844 23.919762l.0863.230508h.0355l.0675-.188876.0679.188876h.0355l.0855-.230508h-.0355l-.0675.195888-.0679-.195888h-.0359l-.067.195888-.0684-.195888zM115.53009 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM115.73075 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM115.95034 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11482.116569.0386 0 .071-.01402.0929-.03813l-.0188-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18843c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM116.29474 23.825105v.144615c-.0171-.03287-.0491-.05171-.0903-.05171-.0653 0-.11087.04777-.11087.116569 0 .0688.0456.117445.11131.117445.0412 0 .0727-.01884.0898-.05127v.04952h.0342v-.325165zm-.0833.297557c-.0491 0-.0837-.03637-.0837-.08721 0-.05083.0346-.08765.0837-.08765.0486 0 .0833.03681.0833.08765 0 .05083-.0346.08721-.0833.08721zM116.65984 23.918448c-.0403 0-.0719.01884-.089.05083v-.144177h-.0342v.325165h.0342v-.04952c.0171.03199.0486.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM116.89657 24.183138l.10605-.263376h-.0351l-.0732.191944-.0767-.191944h-.0359l.0955.228756-.01.02191c-.009.02191-.0241.03331-.0421.03331-.0114 0-.0219-.0035-.0324-.01095l-.0145.02717c.014.01139.0294.01665.0486.01665.0307 0 .0548-.01841.0692-.05346zM117.29947 23.842634c-.0898 0-.16083.06793-.16083.154257 0 .08633.071.154694.16083.154694.0894 0 .16039-.06836.16039-.154694 0-.08633-.071-.154257-.16039-.154257zm0 .03243c.0684 0 .12446.0539.12446.121828 0 .06792-.0561.122703-.12446.122703-.0684 0-.12533-.05478-.12533-.122703 0-.06793.057-.121828.12533-.121828zM117.64414 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0486.05083.0898.05083.0653 0 .10999-.04777.10999-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM117.9061 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM118.19616 23.918448c-.0421.000438-.0732.01709-.0894.05215v-.05084h-.0342v.230508h.0342v-.12358c.004-.0447.032-.07494.0776-.07537.0408 0 .0653.02454.0653.06573v.133221h.0342v-.141986c0-.05609-.0324-.08984-.0876-.08984zM118.65836 23.901795l.0149-.03111c-.0254-.01709-.0618-.02848-.0973-.02848-.0635 0-.10605.03068-.10605.07888 0 .109995.17266.06661.17222.148559 0 .0298-.0276.04777-.0719.04777-.0346 0-.0736-.01578-.1021-.04295l-.0158.03024c.0289.02761.0727.04689.11745.04689.0657 0 .11087-.03287.11087-.0837.00044-.11131-.17223-.06968-.17223-.149436 0-.02629.0259-.04207.0653-.04207.0245 0 .057.0075.0846.02542zM118.84168 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .11701-.04777.11701-.117007 0-.06836-.0487-.11613-.11701-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM119.18446 23.919762v.113063c0 .04996-.0281.08502-.0758.08589-.0399 0-.064-.02454-.064-.06573v-.133222h-.0342v.141986c0 .05565.0324.08984.0863.08984.0416-.000438.0723-.01753.0876-.05346v.05215h.0342v-.230508zM119.33586 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM119.62557 23.976294l.0188-.02366c-.021-.02147-.0517-.03418-.089-.03418-.0666 0-.11438.0482-.11438.116568 0 .0688.0473.116569.11438.116569.0399 0 .0719-.0149.0925-.03988l-.0197-.02016c-.0162.01928-.0412.0298-.0714.0298-.0478 0-.082-.03506-.082-.08633 0-.05083.0342-.08589.082-.08589.028 0 .0513.01008.0688.02717zM119.78997 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g></g><g><g><path fill=\"#a586f3\" d=\"m 7808.8125,2097.1875 c -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 v 329.875 c -0.8781,10.2195 7.1804,19 17.4375,19 10.2571,0 19.0227,-8.7805 18.1446,-19 v -77.7324 l 0.4179,-6.1426 c 0,-55.1597 44.2153,-99.5625 99.375,-99.5625 55.1596,0 99.5625,44.4028 99.5625,99.5625 0.01,0.1837 0.015,0.3674 0.027,0.5508 -0.026,0.4409 -0.035,0.8826 -0.027,1.3242 v 110 c 0,9.6822 7.849,17.5312 17.5312,17.5312 9.6823,0 17.5313,-7.849 17.5313,-17.5312 v -110 c 0,-0.3245 -0.012,-0.6488 -0.031,-0.9727 0.018,-0.3004 0.029,-0.6013 0.031,-0.9023 1e-4,-74.075 -60.55,-134.4374 -134.625,-134.4375 -39.9177,1e-4 -75.8465,17.5354 -100.5,45.293 V 2115 c 0.1749,-9.8356 -7.7881,-17.8833 -17.625,-17.8125 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><path fill=\"#5ed3ee\" d=\"m 7765.8027,2098.123 c -0.038,5e-4 -0.077,0 -0.1152,0 -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 V 2361 c 0,41.9333 -26.0162,79.2671 -65.4375,93.5625 -39.4213,14.2954 -83.5594,2.3741 -110.4375,-29.8125 -26.878,-32.1865 -30.6579,-77.5719 -9.5625,-113.8125 21.0955,-36.2406 62.4262,-55.2897 103.6875,-47.8125 9.5173,1.7397 18.6463,-4.5547 20.4043,-14.0686 1.758,-9.514 -4.5187,-18.6551 -14.0293,-20.4314 -55.6354,-10.082 -111.8054,15.8219 -140.25,64.6875 -28.4446,48.8656 -23.3039,110.5381 12.9375,153.9375 36.2415,43.3993 95.908,59.4005 149.0625,40.125 44.7667,-16.2337 77.0286,-54.658 86.0977,-100.1562 0,0 1.9812,-4.7686 2.5898,-9.1563 0.6086,-4.3877 0,-17.0625 0,-17.0625 v -245.0625 c 0.1769,-9.865 -7.8313,-17.9263 -17.6973,-17.8145 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><g fill=\"none\" stroke-width=\".365\" transform=\"translate(-449.265 -83.342) scale(5.91262)\"><circle cx=\"79.677\" cy=\"16.823\" r=\".645\" stroke=\"#c6ea70\"/><path stroke=\"#dff3b1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 80.808656,18.234303 a 1.8088735,1.8088735 0 0 1 -2.309183,-0.03848 1.8088735,1.8088735 0 0 1 -0.389241,-2.276466 1.8088735,1.8088735 0 0 1 2.165211,-0.803532\"/><path stroke=\"#f2fadf\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 82.216272,17.248644 a 2.455857,2.4425189 0 0 1 -2.468226,2.016391 2.455857,2.4425189 0 0 1 -2.383743,-2.114547 2.455857,2.4425189 0 0 1 1.733108,-2.668494\"/></g></g></g></g></svg>",
                  "category": "Open Data Hub",
                  "support": "open data hub",
                  "docsLink": "http://REPLACE.THIS.URL",
                  "quickStart": "example-odhquickstart",
                  "getStartedLink": "http://REPLACE.THIS.URL",
                  "getStartedMarkDown": "# Header for Getting Started MarkDown section\nHere is where you add information about your ODHApplication in markdown format\n\n1. List item\n1. List item\n1. List item"
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhDocument",
                "metadata": {
                  "name": "example-odhdocument",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHDocument",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "type": "how-to",
                  "description": "This is an example of an ODHDocument custom resource",
                  "url": "http://REPLACE.THIS.URL",
                  "durationMinutes": 5
                }
              },
              {
                "apiVersion": "console.openshift.io/v1",
                "kind": "OdhQuickStart",
                "metadata": {
                  "name": "example-odhquickstart",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHQuickstart Name",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "durationMinutes": 5,
                  "description": "Description of an example quickstart",
                  "introduction": "### Introduction Header\nThis is the body of the introduction for an ODHQuickstart",
                  "tasks": [
                    {
                      "title": "Title of the first task",
                      "description": "### Description header for the first task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the first task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    },
                    {
                      "title": "Title of the second task",
                      "description": "### Description header for the second task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the second task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    }
                  ],
                  "conclusion": "Message for the conclusion of the ODHQuickstart",
                  "nextQuickStart": null
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v1.11.0
          createdAt: "2023-10-31T00:00:00Z"
          description: Open Data Hub Operator for deployment and management of Open
            Data Hub
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/opendatahub-io/opendatahub-operator
          support: Open Data Hub
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AcceleratorProfile is the Schema for the acceleratorprofiles
            displayName: AcceleratorProfile
            kind: AcceleratorProfile
            name: acceleratorprofiles.dashboard.opendatahub.io
            version: v1alpha
          - description: KfDef is the Schema for the kfdefs API
            displayName: Kf Def
            kind: KfDef
            name: kfdefs.kfdef.apps.kubeflow.org
            version: v1
          - description: OdhApplication is the Schema for the odhapplications
            displayName: Open Data Hub Dashboard Application
            kind: OdhApplication
            name: odhapplications.dashboard.opendatahub.io
            version: v1
          - description: OdhDashboardConfig is the Schema for the odhdashboardconfigs
            displayName: Open Data Hub Dashboard Configuration
            kind: OdhDashboardConfig
            name: odhdashboardconfigs.opendatahub.io
            version: v1alpha
          - description: OdhDocument is the Schema for the odhdocuments
            displayName: Open Data Hub Dashboard Documentation
            kind: OdhDocument
            name: odhdocuments.dashboard.opendatahub.io
            version: v1
          - description: Extension for guiding user through various workflows in the
              Open Data Hub dashboard.
            displayName: Open Data Hub Dashboard QuickStart
            kind: OdhQuickStart
            name: odhquickstarts.console.openshift.io
            version: v1
        description: |
          The Open Data Hub is a machine-learning-as-a-service platform built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open Data Hub integrates multiple AI/ML open source components into one operator that can easily be downloaded and installed by OpenShift users.

          Open Data Hub operator allows users to install and manage components of the Open Data Hub. Users can mix and match tools from each project to fulfill the needs of their use case. Each of the
          projects share some components, but can be mostly seen as an extension of each other to provide a complete solution for both novice and skilled enterprise users.

          ### Components
          * Open Data Hub Dashboard - A web dashboard that displays installed Open Data Hub components with easy access to component UIs and documentation
          * ODH Notebook Controller - Secure management of Jupyter Notebook in Kubernetes environments built on top of Kubeflow Notebook Controller with support for OAuth
          * Jupyter Notebooks - JupyterLab notebook that provide Python support for GPU workloads
          * Data Science Pipelines - Pipeline solution for end to end MLOps workflows that support the Kubeflow Pipelines SDK and Tekton
          * Model Mesh - ModelMesh Serving is the Controller for managing ModelMesh, a general-purpose model serving management/routing layer.
          * TrustyAI - TrustyAI is an open source AI Explainability (XAI) Toolkit

          To install one or multiple of these components use the default KfDef provided with the operator.
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: opendatahub@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Open Data Hub
        relatedImages:
        - quay.io/openshift-community-operators/opendatahub-operator@sha256:2992841660e8b1664fa2ce06da894aa828d4ea1be3eb5b27476efdd73731486a
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/opendatahub/opendatahub-operator:v1.11.0
        version: 1.11.0
      entries:
      - name: opendatahub-operator.v1.11.0
        version: 1.11.0
      - name: opendatahub-operator.v1.10.1
        version: 1.10.1
      - name: opendatahub-operator.v1.10.0
        version: 1.10.0
      - name: opendatahub-operator.v1.9.0
        version: 1.9.0
      - name: opendatahub-operator.v1.8.0
        version: 1.8.0
      - name: opendatahub-operator.v1.7.0
        version: 1.7.0
      - name: opendatahub-operator.v1.6.0
        version: 1.6.0
      - name: opendatahub-operator.v1.5.0
        version: 1.5.0
      - name: opendatahub-operator.v1.4.2
        version: 1.4.2
      - name: opendatahub-operator.v1.4.1
        version: 1.4.1
      - name: opendatahub-operator.v1.4.0
        version: 1.4.0
      - name: opendatahub-operator.v1.3.0
        version: 1.3.0
      - name: opendatahub-operator.v1.2.0
        version: 1.2.0
      - name: opendatahub-operator.v1.1.2
        version: 1.1.2
      - name: opendatahub-operator.v1.1.1
        version: 1.1.1
      name: rolling
    - currentCSV: opendatahub-operator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kfdef.apps.kubeflow.org/v1",
                "kind": "KfDef",
                "metadata": {
                  "name": "opendatahub",
                  "namespace": "opendatahub"
                },
                "spec": {
                  "applications": [
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-common"
                        }
                      },
                      "name": "odh-common"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-dashboard"
                        }
                      },
                      "name": "odh-dashboard"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "prometheus/cluster"
                        }
                      },
                      "name": "prometheus-cluster"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "prometheus/operator"
                        }
                      },
                      "name": "prometheus-operator"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "grafana/cluster"
                        }
                      },
                      "name": "grafana-cluster"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "grafana/grafana"
                        }
                      },
                      "name": "grafana-instance"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-notebook-controller"
                        }
                      },
                      "name": "odh-notebook-controller"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "notebook-images"
                        }
                      },
                      "name": "notebook-images"
                    },
                    {
                      "kustomizeConfig": {
                        "overlays": [
                          "odh-model-controller"
                        ],
                        "repoRef": {
                          "name": "manifests",
                          "path": "model-mesh"
                        }
                      },
                      "name": "model-mesh"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "data-science-pipelines-operator"
                        }
                      },
                      "name": "data-science-pipelines-operator"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "trustyai-service"
                        }
                      },
                      "name": "trustyai"
                    }
                  ],
                  "repos": [
                    {
                      "name": "manifests",
                      "uri": "https://github.com/opendatahub-io/odh-manifests/tarball/v1.5"
                    }
                  ]
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhApplication",
                "metadata": {
                  "name": "example-odhapplication",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started,Model development,Model training,Notebook environments,Package management,Data Management"
                  }
                },
                "spec": {
                  "displayName": "ODHAPPLICATION DISPLAY NAME",
                  "provider": "PROVIDER_NAME",
                  "description": "Description of your ODHApplication",
                  "kfdefApplications": [
                    "<NAME OF THE ODH APPLICATION IN KFDEF>"
                  ],
                  "route": "<APPLICATION_OCP_ROUTE_OBJECT_NAME>",
                  "img": "<svg xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" viewBox=\"-1.13 -1.13 58.50 48.94\"><title>Open Data Hub logo</title><g><g><g fill=\"#4d5258\" stroke-width=\".006\"><path fill=\"#bbb\" d=\"M112.30231 22.797083c-.2034 0-.35737.143517-.35737.337407 0 .192939.15397.339307.35737.339307.20339 0 .35736-.147318.35736-.339307 0-.19294-.15397-.337407-.35736-.337407zm.002.131161c.1112 0 .20149.08934.20149.206246 0 .116904-.0903.208146-.20149.208146-.1112 0-.2053-.09124-.2053-.208146 0-.116904.0931-.206246.2053-.206246zM113.04141 22.801836h-.28228v.665308h.15017v-.190088h.13211c.16918 0 .26612-.08934.26612-.244263 0-.147319-.0969-.230957-.26612-.230957zm-.008.349762h-.12451v-.225255h.12451c.0836 0 .13116.03707.13116.111202 0 .07603-.0475.114053-.13116.114053zM113.40328 22.801836v.665308h.51703v-.124508h-.36687v-.147318h.32125V23.07081h-.32125v-.144467h.35642v-.124507zM114.03814 22.801836v.665308h.14352v-.426748l.3222.426748h.13686v-.665308h-.14257v.427698L114.175 22.801836z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/><path d=\"M115.29685 22.801836h-.28228v.665308h.27658c.21004 0 .35546-.136863.35546-.332654 0-.196741-.14351-.332654-.34976-.332654zm.004.538899h-.13591v-.412491h.12926c.11405 0 .19959.08459.19959.207196 0 .121657-.0817.205295-.19294.205295zM116.21878 23.467144h.16062l-.28418-.665308h-.15492l-.28894.665308h.15493l.0523-.12926h.30794zm-.3108-.249966l.1055-.25852.10455.25852zM116.31525 22.801836v.127359h.20244v.537949h.15017v-.537949h.2034v-.127359zM117.37527 23.467144h.16063l-.28419-.665308h-.15492l-.28893.665308h.15492l.0523-.12926h.30795zm-.31079-.249966l.1055-.25852.10454.25852zM117.83433 22.801836v.665308h.15017v-.262322h.30129v.262322h.15017v-.665308h-.15017v.277528h-.30129v-.277528zM118.72025 23.188665v-.386829h-.15017v.386829c0 .175831.11785.285132.30224.285132.18343 0 .29844-.109301.29844-.285132v-.386829h-.15017v.386829c0 .09599-.0589.153971-.14827.153971-.0893 0-.15207-.05798-.15207-.153971zM119.61059 22.801836h-.30604v.665308h.31649c.15492 0 .25092-.07033.25092-.184385 0-.08744-.0532-.152071-.13876-.168228.0713-.01806.115-.07413.115-.146368 0-.102648-.0912-.166327-.23761-.166327zm-.008.268024h-.14826v-.145418h.14826c.0561 0 .0913.02566.0913.07128 0 .04657-.0352.07413-.0913.07413zm0 .274677h-.14826v-.158723h.14826c.0713 0 .11406.02946.11406.07794 0 .05132-.0428.08079-.11406.08079z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g><g fill=\"#58595b\" stroke-width=\".01\"><path d=\"M112.19192 24.15027h.0381l-.13717-.306759h-.0364l-.1376.306759h.0372l.0342-.07844h.16696zm-.18712-.110871l.0688-.157763.0697.157763zM112.27858 23.843511v.306759h.0351v-.306759zM112.64205 23.843511h-.11525v.306759h.0351v-.09729h.0802c.0758 0 .11964-.039.11964-.10649 0-.0653-.0438-.102983-.11964-.102983zm-.001.177044h-.0789V23.87594h.0789c.0552 0 .0872.02454.0872.07143 0 .0482-.032.07318-.0872.07318zM112.81775 23.825105v.325165h.0342v-.325165zM113.1137 24.15027l-.00044-.152503c-.00044-.04908-.032-.07932-.089-.07932-.0394 0-.0644.01139-.0942.03111l.0145.0241c.0241-.01709.0478-.02673.0732-.02673.0408 0 .0618.0206.0618.05434v.01446h-.0758c-.0543.000439-.0863.02586-.0863.06617 0 .03944.0307.06968.0784.06968.0368 0 .0662-.01227.0846-.03725v.03593zm-.11131-.02717c-.0324 0-.053-.01709-.053-.04251 0-.02585.0202-.03769.0587-.03769h.0719v.02805c-.009.03287-.0386.05215-.0776.05215zM113.29915 24.108201c-.0127.0074-.025.01139-.0368.01183-.0197 0-.0307-.01139-.0307-.03944v-.127086h.0732v-.02673h-.0732v-.06048h-.0337v.06048h-.0333v.02673h.0333v.132783c0 .04558.025.06573.0587.0653.0184 0 .0359-.0061.0521-.01709zM113.44228 23.854466c.0118 0 .0245.0044.0351.01183l.014-.02629c-.014-.01052-.032-.01622-.0495-.01622-.0386-.000438-.0741.02717-.0741.07713v.02586h-.0298v.02673h.0298v.196764h.0337v-.196764h.0662v-.02673h-.0662v-.03024c0-.02717.0184-.04251.0408-.04207zM113.59236 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM113.80323 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM114.22747 23.918448c-.0443.000438-.0767.01972-.0911.06004-.01-.03813-.0394-.06004-.0828-.06004-.0416.000438-.0727.01753-.0881.05346v-.05215h-.0337v.230508h.0337v-.113501c0-.04996.0285-.08458.0758-.08589.0403 0 .064.02454.064.06617v.133221h.0346v-.113501c0-.04996.0276-.08458.0754-.08589.0399 0 .064.02454.064.06617v.133221h.0342V24.00828c0-.05609-.032-.08984-.0859-.08984zM114.63474 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0487.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11088-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM114.89934 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM115.02844 23.919762l.0863.230508h.0355l.0675-.188876.0679.188876h.0355l.0855-.230508h-.0355l-.0675.195888-.0679-.195888h-.0359l-.067.195888-.0684-.195888zM115.53009 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM115.73075 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM115.95034 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11482.116569.0386 0 .071-.01402.0929-.03813l-.0188-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18843c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM116.29474 23.825105v.144615c-.0171-.03287-.0491-.05171-.0903-.05171-.0653 0-.11087.04777-.11087.116569 0 .0688.0456.117445.11131.117445.0412 0 .0727-.01884.0898-.05127v.04952h.0342v-.325165zm-.0833.297557c-.0491 0-.0837-.03637-.0837-.08721 0-.05083.0346-.08765.0837-.08765.0486 0 .0833.03681.0833.08765 0 .05083-.0346.08721-.0833.08721zM116.65984 23.918448c-.0403 0-.0719.01884-.089.05083v-.144177h-.0342v.325165h.0342v-.04952c.0171.03199.0486.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM116.89657 24.183138l.10605-.263376h-.0351l-.0732.191944-.0767-.191944h-.0359l.0955.228756-.01.02191c-.009.02191-.0241.03331-.0421.03331-.0114 0-.0219-.0035-.0324-.01095l-.0145.02717c.014.01139.0294.01665.0486.01665.0307 0 .0548-.01841.0692-.05346zM117.29947 23.842634c-.0898 0-.16083.06793-.16083.154257 0 .08633.071.154694.16083.154694.0894 0 .16039-.06836.16039-.154694 0-.08633-.071-.154257-.16039-.154257zm0 .03243c.0684 0 .12446.0539.12446.121828 0 .06792-.0561.122703-.12446.122703-.0684 0-.12533-.05478-.12533-.122703 0-.06793.057-.121828.12533-.121828zM117.64414 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0486.05083.0898.05083.0653 0 .10999-.04777.10999-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM117.9061 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM118.19616 23.918448c-.0421.000438-.0732.01709-.0894.05215v-.05084h-.0342v.230508h.0342v-.12358c.004-.0447.032-.07494.0776-.07537.0408 0 .0653.02454.0653.06573v.133221h.0342v-.141986c0-.05609-.0324-.08984-.0876-.08984zM118.65836 23.901795l.0149-.03111c-.0254-.01709-.0618-.02848-.0973-.02848-.0635 0-.10605.03068-.10605.07888 0 .109995.17266.06661.17222.148559 0 .0298-.0276.04777-.0719.04777-.0346 0-.0736-.01578-.1021-.04295l-.0158.03024c.0289.02761.0727.04689.11745.04689.0657 0 .11087-.03287.11087-.0837.00044-.11131-.17223-.06968-.17223-.149436 0-.02629.0259-.04207.0653-.04207.0245 0 .057.0075.0846.02542zM118.84168 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .11701-.04777.11701-.117007 0-.06836-.0487-.11613-.11701-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM119.18446 23.919762v.113063c0 .04996-.0281.08502-.0758.08589-.0399 0-.064-.02454-.064-.06573v-.133222h-.0342v.141986c0 .05565.0324.08984.0863.08984.0416-.000438.0723-.01753.0876-.05346v.05215h.0342v-.230508zM119.33586 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM119.62557 23.976294l.0188-.02366c-.021-.02147-.0517-.03418-.089-.03418-.0666 0-.11438.0482-.11438.116568 0 .0688.0473.116569.11438.116569.0399 0 .0719-.0149.0925-.03988l-.0197-.02016c-.0162.01928-.0412.0298-.0714.0298-.0478 0-.082-.03506-.082-.08633 0-.05083.0342-.08589.082-.08589.028 0 .0513.01008.0688.02717zM119.78997 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g></g><g><g><path fill=\"#a586f3\" d=\"m 7808.8125,2097.1875 c -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 v 329.875 c -0.8781,10.2195 7.1804,19 17.4375,19 10.2571,0 19.0227,-8.7805 18.1446,-19 v -77.7324 l 0.4179,-6.1426 c 0,-55.1597 44.2153,-99.5625 99.375,-99.5625 55.1596,0 99.5625,44.4028 99.5625,99.5625 0.01,0.1837 0.015,0.3674 0.027,0.5508 -0.026,0.4409 -0.035,0.8826 -0.027,1.3242 v 110 c 0,9.6822 7.849,17.5312 17.5312,17.5312 9.6823,0 17.5313,-7.849 17.5313,-17.5312 v -110 c 0,-0.3245 -0.012,-0.6488 -0.031,-0.9727 0.018,-0.3004 0.029,-0.6013 0.031,-0.9023 1e-4,-74.075 -60.55,-134.4374 -134.625,-134.4375 -39.9177,1e-4 -75.8465,17.5354 -100.5,45.293 V 2115 c 0.1749,-9.8356 -7.7881,-17.8833 -17.625,-17.8125 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><path fill=\"#5ed3ee\" d=\"m 7765.8027,2098.123 c -0.038,5e-4 -0.077,0 -0.1152,0 -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 V 2361 c 0,41.9333 -26.0162,79.2671 -65.4375,93.5625 -39.4213,14.2954 -83.5594,2.3741 -110.4375,-29.8125 -26.878,-32.1865 -30.6579,-77.5719 -9.5625,-113.8125 21.0955,-36.2406 62.4262,-55.2897 103.6875,-47.8125 9.5173,1.7397 18.6463,-4.5547 20.4043,-14.0686 1.758,-9.514 -4.5187,-18.6551 -14.0293,-20.4314 -55.6354,-10.082 -111.8054,15.8219 -140.25,64.6875 -28.4446,48.8656 -23.3039,110.5381 12.9375,153.9375 36.2415,43.3993 95.908,59.4005 149.0625,40.125 44.7667,-16.2337 77.0286,-54.658 86.0977,-100.1562 0,0 1.9812,-4.7686 2.5898,-9.1563 0.6086,-4.3877 0,-17.0625 0,-17.0625 v -245.0625 c 0.1769,-9.865 -7.8313,-17.9263 -17.6973,-17.8145 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><g fill=\"none\" stroke-width=\".365\" transform=\"translate(-449.265 -83.342) scale(5.91262)\"><circle cx=\"79.677\" cy=\"16.823\" r=\".645\" stroke=\"#c6ea70\"/><path stroke=\"#dff3b1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 80.808656,18.234303 a 1.8088735,1.8088735 0 0 1 -2.309183,-0.03848 1.8088735,1.8088735 0 0 1 -0.389241,-2.276466 1.8088735,1.8088735 0 0 1 2.165211,-0.803532\"/><path stroke=\"#f2fadf\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 82.216272,17.248644 a 2.455857,2.4425189 0 0 1 -2.468226,2.016391 2.455857,2.4425189 0 0 1 -2.383743,-2.114547 2.455857,2.4425189 0 0 1 1.733108,-2.668494\"/></g></g></g></g></svg>",
                  "category": "Open Data Hub",
                  "support": "open data hub",
                  "docsLink": "http://REPLACE.THIS.URL",
                  "quickStart": "example-odhquickstart",
                  "getStartedLink": "http://REPLACE.THIS.URL",
                  "getStartedMarkDown": "# Header for Getting Started MarkDown section\nHere is where you add information about your ODHApplication in markdown format\n\n1. List item\n1. List item\n1. List item"
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhDocument",
                "metadata": {
                  "name": "example-odhdocument",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHDocument",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "type": "how-to",
                  "description": "This is an example of an ODHDocument custom resource",
                  "url": "http://REPLACE.THIS.URL",
                  "durationMinutes": 5
                }
              },
              {
                "apiVersion": "console.openshift.io/v1",
                "kind": "OdhQuickStart",
                "metadata": {
                  "name": "example-odhquickstart",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHQuickstart Name",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "durationMinutes": 5,
                  "description": "Description of an example quickstart",
                  "introduction": "### Introduction Header\nThis is the body of the introduction for an ODHQuickstart",
                  "tasks": [
                    {
                      "title": "Title of the first task",
                      "description": "### Description header for the first task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the first task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    },
                    {
                      "title": "Title of the second task",
                      "description": "### Description header for the second task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the second task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    }
                  ],
                  "conclusion": "Message for the conclusion of the ODHQuickstart",
                  "nextQuickStart": null
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v1.5.0
          createdAt: "2022-10-18T00:00:00Z"
          description: Open Data Hub Operator for deployment and management of Open
            Data Hub
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/opendatahub-io/opendatahub-operator
          support: Open Data Hub
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KfDef is the Schema for the kfdefs API
            displayName: Kf Def
            kind: KfDef
            name: kfdefs.kfdef.apps.kubeflow.org
            version: v1
          - description: OdhApplication is the Schema for the odhapplications
            displayName: Open Data Hub Dashboard Application
            kind: OdhApplication
            name: odhapplications.dashboard.opendatahub.io
            version: v1
          - description: OdhDashboardConfig is the Schema for the odhdashboardconfigs
            displayName: Open Data Hub Dashboard Configuration
            kind: OdhDashboardConfig
            name: odhdashboardconfigs.opendatahub.io
            version: v1alpha
          - description: OdhDocument is the Schema for the odhdocuments
            displayName: Open Data Hub Dashboard Documentation
            kind: OdhDocument
            name: odhdocuments.dashboard.opendatahub.io
            version: v1
          - description: Extension for guiding user through various workflows in the
              Open Data Hub dashboard.
            displayName: Open Data Hub Dashboard QuickStart
            kind: OdhQuickStart
            name: odhquickstarts.console.openshift.io
            version: v1
        description: |
          The Open Data Hub is a machine-learning-as-a-service platform built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open Data Hub integrates multiple AI/ML open source components into one operator that can easily be downloaded and installed by OpenShift users.

          Open Data Hub operator allows users to install and manage components of the Open Data Hub. Users can mix and match tools from each project to fulfill the needs of their use case. Each of the
          projects share some components, but can be mostly seen as an extension of each other to provide a complete solution for both novice and skilled enterprise users.

          ### Components
          * Open Data Hub Dashboard - A web dashboard that displays installed Open Data Hub components with easy access to component UIs and documentation
          * ODH Notebook Controller - Secure management of Jupyter Notebook in Kubernetes environments built on top of Kubeflow Notebook Controller with support for OAuth
          * Jupyter Notebooks - JupyterLab notebook that provide Python support for GPU workloads
          * Data Science Pipelines - Pipeline solution for end to end MLOps workflows that support the Kubeflow Pipelines SDK and Tekton
          * Model Mesh - ModelMesh Serving is the Controller for managing ModelMesh, a general-purpose model serving management/routing layer.

          To install one or multiple of these components use the default KfDef provided with the operator.

          ### Available Channels

          #### Stable

          Channel `stable` offers the major releases of Open Data Hub operator and ODH manifests. It is based on Kubeflow Operator and Kustomize for deployment configuration. This version is compatible with [Open Data Hub manifests](https://github.com/opendatahub-io/odh-manifests/) as well as [Kubeflow manifests](https://github.com/opendatahub-io/manifests). This channel will offer new components and features that have been thoroughly tested by consumers of the `rolling` channel

          NOTE: The `stable` channel will be deprecated starting with the ODH 1.6 release and we will only be publishing updates on the `rolling` channel for all future releases

          #### Rolling

          Channel `rolling` will offer the latest release of Open Data Hub operator and manifests. Subscribing to this branch will provide faster updates and access to components that will be in developement and testing for the next stable release
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io
        maintainers:
        - email: maintainers@lists.opendatahub.io
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Open Data Hub
        relatedImages:
        - quay.io/opendatahub/opendatahub-operator:v1.5.0
        - quay.io/openshift-community-operators/opendatahub-operator@sha256:bf85a9da8a100a90deb3745497bc1505852910ef23dd12c624fa17de51bd8377
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        version: 1.5.0
      entries:
      - name: opendatahub-operator.v1.5.0
        version: 1.5.0
      - name: opendatahub-operator.v1.4.2
        version: 1.4.2
      - name: opendatahub-operator.v1.4.1
        version: 1.4.1
      - name: opendatahub-operator.v1.4.0
        version: 1.4.0
      - name: opendatahub-operator.v1.3.0
        version: 1.3.0
      - name: opendatahub-operator.v1.2.0
        version: 1.2.0
      - name: opendatahub-operator.v1.1.2
        version: 1.1.2
      - name: opendatahub-operator.v1.1.1
        version: 1.1.1
      name: stable
    defaultChannel: fast-3
    packageName: opendatahub-operator
    provider:
      name: ODH
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: VASTData
      provider-url: https://www.vastdata.com
    name: vast-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vast-csi-operator.v2.6.4
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"storage.vastdata.com/v1","kind":"VastCSIDriver","metadata":{"name":"csi.vastdata.com"},"spec":{"applySecurityContextConstraints":true,"attachRequired":true,"blockHostsAutoPrune":false,"controller":{"dnsPolicy":"Default","extraArgs":{"csiAttacher":[],"csiProvisioner":[],"csiResizer":[],"csiSnapshotter":[]},"nodeAffinity":{},"nodeSelector":{},"podAffinity":{},"podAntiAffinity":{},"resources":{"csiAttacher":{"limits":{"memory":"200Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiProvisioner":{"limits":{"memory":"400Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiResizer":{"limits":{"memory":"300Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiSnapshotter":{"limits":{"memory":"200Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiVastPlugin":{"limits":{"memory":"500Mi"},"requests":{"cpu":"100m","memory":"50Mi"}}},"runOnControlPlane":false,"runOnMaster":false,"tolerations":[]},"deletionViewPolicy":null,"deletionVipPool":null,"dontUseTrashApi":false,"driverType":"nfs","endpoint":null,"image":{"csiAttacher":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-attacher@sha256:b4d611100ece2f9bc980d1cb19c2285b8868da261e3b1ee8f45448ab5512ab94"},"csiNodeDriverRegistrar":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:f25af73ee708ff9c82595ae99493cdef9295bd96953366cddf36305f82555dac"},"csiProvisioner":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-provisioner@sha256:405a14e1aa702f7ea133cea459e8395fe40a6125c088c55569e696d48e1bd385"},"csiResizer":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-resizer@sha256:a541e6cc2d8b011bb21b1d4ffec6b090e85270cce6276ee302d86153eec0af43"},"csiSnapshotter":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-snapshotter@sha256:2e04046334baf9be425bb0fa1d04c2d1720d770825eedbdbcdb10d430da4ad8c"},"csiVastPlugin":{"imagePullPolicy":"IfNotPresent","repository":"registry.connect.redhat.com/vastdataorg/csi@sha256:596e9cbbd456de387ebb926e7fb57377c9c3d95b745b2f4baf8cf106c5e59718"}},"imagePullSecrets":[],"kubeletPath":"/var/lib/kubelet","logLevel":5,"node":{"dnsPolicy":"Default","nodeAffinity":{},"nodeSelector":{},"podAffinity":{},"podAntiAffinity":{},"propagateHostMountOptions":true,"resources":{"csiVastPlugin":{"limits":{"memory":"500Mi"},"requests":{"cpu":"200m","memory":"300Mi"}},"nodeDriverRegistrar":{"limits":{"memory":"100Mi"},"requests":{"cpu":"10m","memory":"20Mi"}}},"tolerations":[]},"numWorkers":10,"operationRetryIntervalMax":60,"operationRetryIntervalStart":10,"operationTimeout":15,"secretName":null,"sslCertsSecretName":null,"truncateVolumeName":64,"useLocalIpForMount":null,"verifySsl":false}},{"apiVersion":"storage.vastdata.com/v1","kind":"VastStorage","metadata":{"name":"vastdata-filesystem"},"spec":{"allowVolumeExpansion":true,"blockingClones":false,"clusterName":"","createSnapshotClass":true,"driverType":"nfs","ephemeralVolumeNameFormat":"csi:{namespace}:{name}:{id}","fsType":"","hostEncryption":null,"mountOptions":[],"provisioner":"","qosPolicy":"","reclaimPolicy":"Delete","secretName":"","secretNamespace":"","setDefaultStorageClass":false,"snapshotClass":{"deletionPolicy":"Delete","setDefaultSnapshotClass":false,"snapshotNameFormat":"csi:{namespace}:{name}:{id}"},"storagePath":"","subsystem":"","tenantName":"","viewPolicy":"","vipPool":"","vipPoolFQDN":null,"volumeGroup":"","volumeNameFormat":"csi:{namespace}:{name}:{id}"}},{"apiVersion":"storage.vastdata.com/v1","kind":"VastCluster","metadata":{"name":"vastcluster-sample"},"spec":{"endpoint":null,"passphrase":null,"password":null,"sslCert":null,"tenant":null,"token":null,"username":null}}]'
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/vastdataorg/csi-operator@sha256:a1c4675c5dd64687b6f4aba223e52708140582bd9ca55d06f88403d5253b823a
          createdAt: "2024-07-01T11:59:59Z"
          description: Kubernetes operator for automated deployment and lifecycle
            management of VAST Data CSI drivers.
          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"
          operatorframework.io/suggested-namespace: vast-csi
          operators.operatorframework.io/builder: operator-sdk-v1.3.0-ocp
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/vast-data/vast-csi
          support: VastData Infra Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VastCSIDriver is a common specification for VAST CSI Controller
              and VAST CSI Node plugins, typically intended for creation in a single
              instance.
            displayName: VastCSIDriver
            kind: VastCSIDriver
            name: vastcsidrivers.storage.vastdata.com
            version: v1
          - description: VastCluster encapsulates the connection details required
              for accessing a VAST cluster. This information is ultimately stored
              in a Kubernetes Secret.
            displayName: VastCluster
            kind: VastCluster
            name: vastclusters.storage.vastdata.com
            version: v1
          - description: Represents VAST storage. Each VastStorage instance generates
              a corresponding storage class that can be used in PVCs to create workloads.
            displayName: VastStorage
            kind: VastStorage
            name: vaststorages.storage.vastdata.com
            version: v1
        description: |-
          VAST CSI Operator supports seamless installation and upgrade of VAST Data's CSI Driver.
          The VAST CSI Driver allows container orchestration frameworks such as Kubernetes to dynamically provision, manage and scale volumes on the [VAST Data Platform](https://www.vastdata.com/platform/overview). VAST provides scalable, reliable, and fast persistent storage that can be accessed remotely by any Kubernetes application container.
          ### Installation
          Refer to the VASTData Operator for Kubernetes [official documentation](https://support.vastdata.com/s/document-item?bundleId=vast-csi-driver-2.6-administrator-s-guide&topicId=deploying-vast-csi-driver/deploying-vast-csi-driver-on-openshift-with-vast-csi-operator.html&_LANG=enus).
        displayName: VAST CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - VAST
        - VASTData
        - CSI
        - Multi Cluster
        - AI
        - High-Performance Computing
        links:
        - name: VAST CSI Plugin
          url: https://github.com/vast-data/vast-csi
        maintainers:
        - email: volodymyr.boiko@vastdata.com
          name: VAST Infrastructure Team
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: VASTData
          url: https://www.vastdata.com
        relatedImages:
        - registry.k8s.io/sig-storage/csi-attacher@sha256:b4d611100ece2f9bc980d1cb19c2285b8868da261e3b1ee8f45448ab5512ab94
        - registry.k8s.io/sig-storage/csi-resizer@sha256:a541e6cc2d8b011bb21b1d4ffec6b090e85270cce6276ee302d86153eec0af43
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:2e04046334baf9be425bb0fa1d04c2d1720d770825eedbdbcdb10d430da4ad8c
        - registry.connect.redhat.com/vastdataorg/csi-operator@sha256:a1c4675c5dd64687b6f4aba223e52708140582bd9ca55d06f88403d5253b823a
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:405a14e1aa702f7ea133cea459e8395fe40a6125c088c55569e696d48e1bd385
        - docker.io/kubebuilder/kube-rbac-proxy@sha256:a2523c532c0c3d51a5396a901d7ded23e402a9a1492c783aae27af6d0c1d2ec5
        - registry.connect.redhat.com/vastdataorg/csi-operator-bundle@sha256:64b6c40b3855c5cbba0aa22f83a0a38a3ed5ae69f8bd522dc00f608566c76bd0
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:f25af73ee708ff9c82595ae99493cdef9295bd96953366cddf36305f82555dac
        - registry.connect.redhat.com/vastdataorg/csi@sha256:596e9cbbd456de387ebb926e7fb57377c9c3d95b745b2f4baf8cf106c5e59718
        version: 2.6.4
      entries:
      - name: vast-csi-operator.v2.6.4
        version: 2.6.4
      name: stable
    defaultChannel: stable
    packageName: vast-csi-operator
    provider:
      name: VASTData
      url: https://www.vastdata.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Lightbits Labs
      provider-url: https://www.lightbitslabs.com
    name: lightbits-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lightbits-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "storage.lightbitslabs.com/v1alpha1",
                "kind": "CSIDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightbits-operator",
                    "app.kubernetes.io/instance": "csidriver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "csidriver",
                    "app.kubernetes.io/part-of": "lightbits-operator"
                  },
                  "name": "csi.lightbitslabs.com",
                  "namespace": "lightbits-operator"
                },
                "spec": {
                  "controller": {
                    "registry": "docker.lightbitslabs.com",
                    "repository": "lightbits-operator/lb-csi-plugin",
                    "tag": "v1.21.0-ubi9"
                  },
                  "node": {
                    "registry": "docker.lightbitslabs.com",
                    "repository": "lightbits-operator/lb-csi-plugin",
                    "sidecars": {
                      "lb-nvme-discovery-client": {
                        "registry": "docker.lightbitslabs.com",
                        "repository": "lightbits-operator/lb-nvme-discovery-client",
                        "tag": "v1.21.0-ubi9"
                      }
                    },
                    "tag": "v1.21.0-ubi9"
                  }
                }
              },
              {
                "apiVersion": "storage.lightbitslabs.com/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightbits-operator",
                    "app.kubernetes.io/instance": "cluster1",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cluster",
                    "app.kubernetes.io/part-of": "lightbits-operator"
                  },
                  "name": "cluster1",
                  "namespace": "lightbits-operator"
                },
                "spec": {
                  "addresses": "192.168.40.46,192.168.40.47,192.168.40.48",
                  "apiService": "192.168.40.46:443,192.168.40.47:443,192.168.40.48:443",
                  "clusterAdminSecretName": "lb-secret",
                  "clusterName": "cluster1"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          com.redhat.openshift.versions: v4.17
          containerImage: docker.lightbitslabs.com/lightbits-operator/lightbits-operator@sha256:9eaec3c91c5403f2f9e26c128da4ca779cacdc0f21f09f721001bdf0ae1a74f5
          createdAt: "2025-11-24T15:33:38Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/supported-versions: v4.17
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/internal-objects: '[]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io/suggested-namespace: lightbits-operator
          repository: https://github.com/LightBitsLabs/lightbits-operator
          support: Lightbits Labs <support@lightbitslabs.com>
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster is the Schema for the clusters API
            displayName: Lightbits Cluster
            kind: Cluster
            name: clusters.storage.lightbitslabs.com
            version: v1alpha1
          - description: CSIDriver is the Schema for the csidrivers API
            displayName: Lightbits CSI Driver
            kind: CSIDriver
            name: csidrivers.storage.lightbitslabs.com
            version: v1alpha1
        description: |-
          Operator for deploying and managing Lightbits CSI driver.

          By using the operator users can quickly and easily deploy and upgrade Lightbits CSI Driver.

          ## Requirements

          - Kernel support for NVMe-TCP
          - Kernel support for NVMe Asymmetric Namespace Access (ANA)

          ## CSI driver Supported Features

          - Filesystem Volumes (xfs/ext4)
          - Raw Block Volumes
          - Dynamic/Static Provisioning
          - Volume Snapshots
          - Volume Clones
          - Multi-Tenancy & Credentials
          - Volume Expansion (Online/Offline)
          - Storage Capacity Tracking
          - Host-Side Encryption (LUKS)
          - Publish ReadOnly volumes

          ## How to install

          See the official documentation [here](https://lightbitslabs.github.io/lightbits-operator/install_lightbits_operator.html#installation)

          ## Documentation

          See the official documentation [here](https://lightbitslabs.github.io/lightbits-operator/)
        displayName: Lightbits Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - storage
        - lightbits
        links:
        - name: Lightbits Operator
          url: https://github.com/lightbitslabs/lightbits-operator
        maintainers:
        - email: k8s@lightbitslabs.com
          name: Lightbits Labs
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Lightbits Labs
          url: https://www.lightbitslabs.com
        relatedImages:
        - docker.lightbitslabs.com/lightbits-operator/lightbits-operator@sha256:9eaec3c91c5403f2f9e26c128da4ca779cacdc0f21f09f721001bdf0ae1a74f5
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d99a8d144816b951a67648c12c0b988936ccd25cf3754f3cd85ab8c01592248f
        - registry.connect.redhat.com/lightbitslabs/lightbits-operator@sha256:fafb27b54cc654d67b0b4c19e6bba00e27aded08019dc93e37a04f1af8418306
        version: 1.2.2
      entries:
      - name: lightbits-operator.v1.2.2
        version: 1.2.2
      name: alpha
    defaultChannel: alpha
    packageName: lightbits-operator
    provider:
      name: Lightbits Labs
      url: https://www.lightbitslabs.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Trilio
      provider-url: ""
    name: k8s-triliovault
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: k8s-triliovault-stable.3.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "800Mi",
                      "cpu": "100m"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          containerImage: registry.connect.redhat.com/trilio/k8s-triliovault-operator@sha256:0e3094945427231ecbb884b903dc4d347dfaa73e5a04eb4c5cbaed6fce1cbbb8
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          olm.skipRange: '>=3.0.0 <3.1.3'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          TrilioVault for Kubernetes is an enterprise-grade, cloud-native platform purpose built for data protection and management of Kubernetes applications for IT managers, administrators and developers. TrilioVault supports upstream Kubernetes and OpenShift environments and offers the following features:
            * Application-Centric - protects both data and metadata for Helm, Operator or custom Label based applications.
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any Storage (CSI, NFS, S3), or any Cloud (Private or Public).
            * Application Deployment & Tooling: Helm, Operators, Labels, Prometheus, Fluentd.
          Tutorials
          ------------
          Please click the link below to access the TrilioVault for Kubernetes "How-To" series for deployment, best practice and use-case videos
          <a href="https://www.trilio.io/triliovault-for-kubernetes">TrilioVault for Kubernetes - Tutorials and How-To </a>”
          Licensing
          --------
          Customers can download a 30-day Free Trial or a 10-node Basic Edition at no cost.  You can also connect with the Trilio team for an Enterprise Edition license with no limitations and Premium Support.
          For more information on license plans please vist:
          <a href="www.trilio.io/plans"> Trilio Vault for Kubernetes licensing and plans </a>
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our TrilioVault technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. www.trilio.io and @triliodata on Twitter.
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://www.trilio.io/
        - name: Product Licensing
          url: https://www.trilio.io/plans
        - name: Tutorials
          url: https://www.trilio.io/triliovault-for-kubernetes/
        - name: Support for Free/Basic Users
          url: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: Trilio
        relatedImages:
        - registry.connect.redhat.com/trilio/control-plane@sha256:01e36ed5b07104865f922d2996d2211b2b6000adc90266197d9bac74d908db97
        - registry.connect.redhat.com/trilio/datamover@sha256:c7bc15f8217899ed73a812d278eb118633edbee1bf284132054b6f9ca2afd801
        - registry.connect.redhat.com/trilio/event-stack@sha256:37c33ae1adddfe739c98fd2b2183c49ec7cfdafc88dec2970ad7c670016ebaac
        - registry.connect.redhat.com/trilio/k8s-triliovault-operator@sha256:0e3094945427231ecbb884b903dc4d347dfaa73e5a04eb4c5cbaed6fce1cbbb8
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:e80f87f289ea944a78b5c38df600c0a22fa470a2ce90f0b1e9453cd63586d75d
        - registry.connect.redhat.com/trilio/web@sha256:76865d8afa8059d40810cb94df29420950a7593a40e87d142d771c57b3319e1d
        - registry.connect.redhat.com/trilio/minio@sha256:cee0f976edc79ff9e7a3f3574a7115dd960042241f3ed5b4636240ad609f9bca
        - registry.connect.redhat.com/trilio/dex@sha256:b6331cf3cb3a6a66d9b9ea639cda3c2559fbf1f92f7174032352c1c7bb5176d9
        - registry.connect.redhat.com/trilio/nats@sha256:47396bfcff3e65efb3410fa8369f11f20d794ab543f9ada87b451448b1813178
        - registry.connect.redhat.com/trilio/trilio-webhook-init@sha256:c45e9b6b75862451d873d3eba29d6bd11cafc64823855f82ccb8c0b3d779ebb0
        version: 3.1.3
      entries:
      - name: k8s-triliovault-stable.3.1.3
        version: 3.1.3
      - name: k8s-triliovault-stable.3.1.2
        version: 3.1.2
      - name: k8s-triliovault-stable.3.1.1
        version: 3.1.1
      - name: k8s-triliovault-stable.3.1.0
        version: 3.1.0
      name: 3.1.x
    - currentCSV: k8s-triliovault-stable.4.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "800Mi",
                      "cpu": "100m"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:69871613ceecefff7f691f21bb0b9147236af5a5dc2c7b36ad5e0cd8551f0e6a
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <4.0.5'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.20.0
        provider:
          name: Trilio
        relatedImages:
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:bddfd4ebd973089f7446cb16ed9668d418f91c3907a5ede22052be4ccbea6d0c
        - quay.io/triliodata/event-stack@sha256:c793418df5a1fc1a49f629d335f4684d9cde1a5f2b462f7c9483ffba904456d2
        - quay.io/triliodata/web@sha256:20de1a2f9477ad238bf24f48c8c16a38521c3a86164f2eb6b10d20f09839016e
        - quay.io/triliodata/dex@sha256:b4b2372fd03be586b9ff8cd269b9001797d813a34155ab37de31a44fe3cab1ea
        - quay.io/triliodata/k8s-triliovault-operator@sha256:69871613ceecefff7f691f21bb0b9147236af5a5dc2c7b36ad5e0cd8551f0e6a
        - quay.io/triliodata/operator-webhook-init@sha256:aa85b787f7f37a71e909f049d2abdda746cdd0627e2f74aaf7476d5e5a7f4401
        - quay.io/triliodata/control-plane@sha256:53368a72a60a38d3ce4293236a841346da6da2380ffd2525e5ffdb8dbcf11c7f
        - quay.io/triliodata/datamover@sha256:e6848d94ba9f81843bde882a030b0f2556aae4bf16d79e2c5b199417cf626c85
        - quay.io/triliodata/nats@sha256:e6723595bcc5674b6201091d45d711d29a5cd1421c8b97c76cf00e468379fddf
        version: 4.0.5
      entries:
      - name: k8s-triliovault-stable.4.0.5
        version: 4.0.5
      - name: k8s-triliovault-stable.4.0.4
        version: 4.0.4
      - name: k8s-triliovault-stable.4.0.3
        version: 4.0.3
      - name: k8s-triliovault-stable.4.0.2
        version: 4.0.2
      - name: k8s-triliovault-stable.4.0.1
        version: 4.0.1
      - name: k8s-triliovault-stable.4.0.0
        version: 4.0.0
      name: 4.0.x
    - currentCSV: k8s-triliovault-stable.5.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "800Mi",
                      "cpu": "100m"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:8d582842dbef1c64bbe3b0ce5eeb64790910bdc0416c5e5561557642dede7022
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <5.0.4'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.20.0
        provider:
          name: Trilio
        relatedImages:
        - quay.io/triliodata/k8s-triliovault-operator@sha256:8d582842dbef1c64bbe3b0ce5eeb64790910bdc0416c5e5561557642dede7022
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:b31ebfab28ec75c0d7110d6f01e3b26fd973c36013308e12f69584ff38ab3779
        - quay.io/triliodata/control-plane@sha256:e60ef0a2c7a5b7879c9718e9a14c223f5290b4710b598fae19466a7558484824
        - quay.io/triliodata/datamover@sha256:104bdca9513c78f81c4340e9a3219df0a3bc8a5b026e4a252363a7e2c10977ba
        - quay.io/triliodata/event-stack@sha256:859535e19e0ebebc8261c649c2446f8ca5fe4b4e5b6236e69b780dcc0d0bb5b9
        - quay.io/triliodata/web@sha256:04c4baadae9c05f4add098ff62774d00102d56581e261626840d17f74effe438
        - quay.io/triliodata/dex@sha256:b4b2372fd03be586b9ff8cd269b9001797d813a34155ab37de31a44fe3cab1ea
        - quay.io/triliodata/nats@sha256:e6723595bcc5674b6201091d45d711d29a5cd1421c8b97c76cf00e468379fddf
        - quay.io/triliodata/operator-webhook-init@sha256:ffcc55e85f884b884947b73fa7d2fb257704ff70ccd7f2dc37d07e02292abed6
        version: 5.0.4
      entries:
      - name: k8s-triliovault-stable.5.0.4
        version: 5.0.4
      - name: k8s-triliovault-stable.5.0.3
        version: 5.0.3
      - name: k8s-triliovault-stable.5.0.2
        version: 5.0.2
      - name: k8s-triliovault-stable.5.0.1
        version: 5.0.1
      - name: k8s-triliovault-stable.5.0.0
        version: 5.0.0
      name: 5.0.x
    - currentCSV: k8s-triliovault-stable.5.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "2Gi",
                      "cpu": "1"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:bdf9407e70ee6425ea9408d6a4b0d85ec1890084b81cf58669c7f0e5725fddf8
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <5.1.2'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.20.0
        provider:
          name: Trilio
        relatedImages:
        - quay.io/triliodata/k8s-triliovault-operator@sha256:bdf9407e70ee6425ea9408d6a4b0d85ec1890084b81cf58669c7f0e5725fddf8
        - quay.io/triliodata/control-plane@sha256:68964e8116f14643c213003a046e5969eb69f53f4bb034852f5b5c1f3447f3e3
        - quay.io/triliodata/filerecovery-vm-ssh-server@sha256:5b8af222755347e64a2362ed7cf0ef0a956364395efdfa99c5181c3432e6452a
        - quay.io/triliodata/filerecovery@sha256:4708c98fb1168d6d2a61f76f670b5918eed765c827de27e0381a428fa1a1f36f
        - quay.io/triliodata/nats@sha256:3bcf9d2e94f118822077c25445118cc8f22479ffadc8c1dcec7ea995bec9f33c
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:3a8747ca2bbb998672051d3d8f5422b205cea02dd56b07138a67ae80a6453ece
        - quay.io/triliodata/datamover@sha256:6116b4c7ca929396f63af887f8923cb3d52226be97bc895cecfc2777eabbd220
        - quay.io/triliodata/dex@sha256:13ef89a9edcfb497a284df11518f30fc9aca37cf963c6cf6cfb574a00ec5d72f
        - quay.io/triliodata/web@sha256:eede3ee96e8b13565597ecd0d99e69feb6fa2cd819ad7d69e110d86c0ff930b1
        - quay.io/triliodata/event-stack@sha256:9a2e454b80ab5b8e768b4b87835700122eb573c2511beae6a9a95e65af25c09f
        version: 5.1.2
      entries:
      - name: k8s-triliovault-stable.5.1.2
        version: 5.1.2
      - name: k8s-triliovault-stable.5.1.1
        version: 5.1.1
      - name: k8s-triliovault-stable.5.1.0
        version: 5.1.0
      name: 5.1.x
    - currentCSV: k8s-triliovault-stable.5.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logConfig": {
                    "logLevel": "Info"
                  },
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "2Gi",
                      "cpu": "1"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:acc4df98d8720fb41c6650e82825105f9a8785f394851ef866b26b217842d4db
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <5.2.0'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Trilio
        relatedImages:
        - quay.io/triliodata/dex@sha256:169607295b90018c16a864943b473a3ffe94b7c41ce67e12b9e810c2daf2c9df
        - quay.io/triliodata/event-stack@sha256:c4190db6212b9ae33cec9fe0d37d49def0df1695dc23d8bf6674c4e1dff374a4
        - quay.io/triliodata/k8s-triliovault-operator@sha256:acc4df98d8720fb41c6650e82825105f9a8785f394851ef866b26b217842d4db
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:5e069f7241b8418a54da73cb838395ae6af21e5d1e008917ddae55331d5a4bdc
        - quay.io/triliodata/control-plane@sha256:f7d596ad5101354d43ed6c0c96dca9fd94705c757008deece013fa3b6fcd8fc4
        - quay.io/triliodata/datamover@sha256:beffcf6d6c0057f480faf2bc05a83b0bc4be00edaac26ee9706dc79a72a95e05
        - quay.io/triliodata/filerecovery-vm-ssh-server@sha256:05865888f267cca29133de733f5bb4f811fc0923b395047ba0a29c6034346f19
        - quay.io/triliodata/filerecovery@sha256:ada85e6b17f88e7cc49e7356d04ac90cf11c12747f19a3c72bb9f94cb90e768e
        - quay.io/triliodata/nats@sha256:35366081d4e81199b2d3e9b933d2594283c10c1582d7676dffa90953b2f0e9a1
        - quay.io/triliodata/web@sha256:cb1ac887e13a8e7c9e091f9ae6dac967237a55fa01ef7cb485f90e7a58035f0c
        version: 5.2.0
      entries:
      - name: k8s-triliovault-stable.5.2.0
        version: 5.2.0
      name: 5.2.x
    defaultChannel: 5.2.x
    packageName: k8s-triliovault
    provider:
      name: Trilio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudfront-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudfront-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
                "kind": "CachePolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
                "kind": "Distribution",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
                "kind": "Function",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudfront-controller:1.3.0
          createdAt: "2025-11-29T04:46:46Z"
          description: AWS CloudFront controller is a service controller for managing
            CloudFront resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CachePolicy represents the state of an AWS cloudfront CachePolicy
              resource.
            displayName: CachePolicy
            kind: CachePolicy
            name: cachepolicies.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: Distribution represents the state of an AWS cloudfront Distribution
              resource.
            displayName: Distribution
            kind: Distribution
            name: distributions.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: Function represents the state of an AWS cloudfront Function
              resource.
            displayName: Function
            kind: Function
            name: functions.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: OriginAccessControl represents the state of an AWS cloudfront
              OriginAccessControl resource.
            displayName: OriginAccessControl
            kind: OriginAccessControl
            name: originaccesscontrols.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: OriginRequestPolicy represents the state of an AWS cloudfront
              OriginRequestPolicy resource.
            displayName: OriginRequestPolicy
            kind: OriginRequestPolicy
            name: originrequestpolicies.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: ResponseHeadersPolicy represents the state of an AWS cloudfront
              ResponseHeadersPolicy resource.
            displayName: ResponseHeadersPolicy
            kind: ResponseHeadersPolicy
            name: responseheaderspolicies.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: VPCOrigin represents the state of an AWS cloudfront VPCOrigin
              resource.
            displayName: VPCOrigin
            kind: VPCOrigin
            name: vpcorigins.cloudfront.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon CloudFront resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudFront**

          Amazon CloudFront is a web service that speeds up distribution of your static and dynamic web content, such as .html, .css, .js, and image files, to your users. CloudFront delivers your content through a worldwide network of data centers called edge locations.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon CloudFront
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudfront
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudFront Developer Resources
          url: https://aws.amazon.com/cloudfront/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudfront maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/cloudfront-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-cloudfront-controller@sha256:9eab71b0aa3305a6cd40801523c750daf181b70c002630ef481d17a8c18fa2c3
        version: 1.3.0
      entries:
      - name: ack-cloudfront-controller.v1.3.0
        version: 1.3.0
      - name: ack-cloudfront-controller.v1.2.2
        version: 1.2.2
      - name: ack-cloudfront-controller.v1.2.1
        version: 1.2.1
      - name: ack-cloudfront-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudfront-controller.v1.1.6
        version: 1.1.6
      - name: ack-cloudfront-controller.v1.1.4
        version: 1.1.4
      - name: ack-cloudfront-controller.v1.1.3
        version: 1.1.3
      - name: ack-cloudfront-controller.v1.1.2
        version: 1.1.2
      - name: ack-cloudfront-controller.v1.1.1
        version: 1.1.1
      - name: ack-cloudfront-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudfront-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudfront-controller.v1.0.9
        version: 1.0.9
      - name: ack-cloudfront-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudfront-controller.v1.0.7
        version: 1.0.7
      - name: ack-cloudfront-controller.v1.0.6
        version: 1.0.6
      - name: ack-cloudfront-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudfront-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudfront-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudfront-controller.v0.0.15
        version: 0.0.15
      - name: ack-cloudfront-controller.v0.0.14
        version: 0.0.14
      - name: ack-cloudfront-controller.v0.0.13
        version: 0.0.13
      - name: ack-cloudfront-controller.v0.0.12
        version: 0.0.12
      - name: ack-cloudfront-controller.v0.0.11
        version: 0.0.11
      - name: ack-cloudfront-controller.v0.0.10
        version: 0.0.10
      - name: ack-cloudfront-controller.v0.0.9
        version: 0.0.9
      - name: ack-cloudfront-controller.v0.0.8
        version: 0.0.8
      - name: ack-cloudfront-controller.v0.0.6
        version: 0.0.6
      - name: ack-cloudfront-controller.v0.0.5
        version: 0.0.5
      - name: ack-cloudfront-controller.v0.0.4
        version: 0.0.4
      - name: ack-cloudfront-controller.v0.0.3
        version: 0.0.3
      - name: ack-cloudfront-controller.v0.0.2
        version: 0.0.2
      - name: ack-cloudfront-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudfront-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio
      provider-url: ""
    name: apicurio-registry
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-registry-operator.v1.1.3-v2.6.4.final
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-mem"
                },
                "spec": {
                  "configuration": {
                    "persistence": "mem"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/apicurio/apicurio-registry-operator:1.1.3
          createdAt: "2024-09-17"
          description: Deploy and manage Apicurio Registry on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Apicurio/apicurio-registry-operator
          support: Apicurio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry represents an Apicurio Registry instance
            displayName: Apicurio Registry
            kind: ApicurioRegistry
            name: apicurioregistries.registry.apicur.io
            version: v1
        description: |
          ## Apicurio Registry

          Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Provides a REST API and web UI to manage the artifacts and artifact meta-data
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL, in-memory
          - Compatible with Confluent and IBM APIs
          - Runs on a lightweight Quarkus platform
          - Includes Maven plugin to integrate with Maven based builds

          ## Apicurio Registry Operator

          Provides a quick and easy way to deploy and manage Apicurio Registry on Kubernetes.

          **Features**
          - Supports installation and configuration of the Registry for all storage options
          - Easily perform a rolling upgrade of Apicurio Registry

          ## Prerequisites

          This operator does not deploy storage for Apicurio Registry. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Apicurio Registry Operator is licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry-operator/blob/main/LICENSE)
        displayName: Apicurio Registry Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        - name: Twitter
          url: https://twitter.com/Apicurio
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Apicurio
        relatedImages:
        - quay.io/apicurio/apicurio-registry-operator:1.1.3
        - quay.io/community-operator-pipeline-prod/apicurio-registry@sha256:7087ec1377c2612edf3b8a76f6e115d66c3ec2b4b20f5d8374638d6bf0037e93
        version: 1.1.3-v2.6.4.final
      entries:
      - name: apicurio-registry-operator.v1.1.3-v2.6.4.final
        version: 1.1.3-v2.6.4.final
      - name: apicurio-registry-operator.v1.1.2-v2.5.11.final
        version: 1.1.2-v2.5.11.final
      - name: apicurio-registry-operator.v1.1.1-v2.5.9.final
        version: 1.1.1-v2.5.9.final
      - name: apicurio-registry-operator.v1.1.0-v2.4.12.final
        version: 1.1.0-v2.4.12.final
      - name: apicurio-registry-operator.v1.0.0-v2.0.0.final
        version: 1.0.0-v2.0.0.final
      name: 2.x
    defaultChannel: 2.x
    packageName: apicurio-registry
    provider:
      name: Apicurio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: machine-deletion-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: machine-deletion-remediation.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediation",
                "metadata": {
                  "name": "machinedeletionremediation-sample"
                },
                "spec": {},
                "status": {
                  "conditions": [
                    {
                      "reason": "RemediationFinished",
                      "status": false,
                      "type": "Processing"
                    },
                    {
                      "reason": "RemediationFinished",
                      "status": true,
                      "type": "Succeeded"
                    },
                    {
                      "reason": "MachineDeletionOnBareMetalProviderReason",
                      "status": false,
                      "type": "PermanentNodeDeletionExpected"
                    }
                  ]
                }
              },
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediationTemplate",
                "metadata": {
                  "name": "machinedeletionremediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: ""
          createdAt: "2025-11-11 13:38:42"
          description: Machine Deletion Remediation operator for reprovisioning unhealthy
            nodes using the Machine API.
          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: "true"
          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.skipRange: '>=0.4.0 <0.5.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/machine-deletion-remediation
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MachineDeletionRemediation is the Schema for the machinedeletionremediations
              API
            displayName: Machine Deletion Remediation
            kind: MachineDeletionRemediation
            name: machinedeletionremediations.machine-deletion-remediation.medik8s.io
            version: v1alpha1
          - description: MachineDeletionRemediationTemplate is the Schema for the
              machinedeletionremediationtemplates API
            displayName: Machine Deletion Remediation Template
            kind: MachineDeletionRemediationTemplate
            name: machinedeletionremediationtemplates.machine-deletion-remediation.medik8s.io
            version: v1alpha1
        description: |
          Machine Deletion Remediation (MDR) is a remediator designed to reprovision unhealthy
          nodes using the Machine API. MDR can be used together with NodeHealthCheck (NHC),
          which detects the unhealthy Node and creates the Custom Resource for MDR.

          # How it works
          MDR follows the annotation on the Node to the associated Machine object, confirms
          that it has an owning controller (e.g. MachineSetController), that will recreate the
          Machine once deleted, and then proceeds with deleting the Machine.

          # How to use MDR with NHC
          To use MDR as remediation mechanism for NHC, it needs to be configured with the
          following steps:

          - Create the MDR Template CR
          - Modify NHC's `.spec.remediationTemplate` to use MDR as it's remediator

          see https://github.com/medik8s/machine-deletion-remediation#readme for configuration examples.
        displayName: Machine Deletion Remediation operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - machine
        - deletion
        - remediation
        - mdr
        links:
        - name: Machine Deletion Remediation
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance/index
        - name: Source Code
          url: https://github.com/medik8s/machine-deletion-remediation
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/workload-availability/machine-deletion-remediation-operator-bundle@sha256:f751650b9213f599d0cca1fcc08b5841c8d612a9e8499b8fd74485ecdc2565cc
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/machine-deletion-remediation-rhel9-operator@sha256:687f6d6b71aab8e0f5db32c9e11c2a7305c6a5746819bd54c38c584b27d6d06a
        version: 0.5.0
      entries:
      - name: machine-deletion-remediation.v0.5.0
        version: 0.5.0
      - name: machine-deletion-remediation.v0.4.1
        version: 0.4.1
      - name: machine-deletion-remediation.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: machine-deletion-remediation
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: F5 NGINX
      provider-url: https://www.f5.com/go/product/welcome-to-nginx
    name: nginx-gateway-fabric
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nginx-gateway-fabric.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "gateway.nginx.org/v1alpha1",
                "kind": "NginxGatewayFabric",
                "metadata": {
                  "name": "nginxgatewayfabric-sample"
                },
                "spec": {
                  "certGenerator": {
                    "affinity": {},
                    "agentTLSSecretName": "agent-tls",
                    "annotations": {},
                    "nodeSelector": {},
                    "overwrite": false,
                    "serverTLSSecretName": "server-tls",
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "ttlSecondsAfterFinished": 30
                  },
                  "clusterDomain": "cluster.local",
                  "gateways": [],
                  "nginx": {
                    "autoscaling": {
                      "enable": false
                    },
                    "config": {},
                    "container": {
                      "hostPorts": [],
                      "lifecycle": {},
                      "readinessProbe": {},
                      "resources": {},
                      "volumeMounts": []
                    },
                    "debug": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/nginx/nginx-gateway-fabric/nginx",
                      "tag": "2.2.2-ubi"
                    },
                    "imagePullSecret": "",
                    "imagePullSecrets": [],
                    "kind": "deployment",
                    "nginxOneConsole": {
                      "dataplaneKeySecretName": "",
                      "endpointHost": "agent.connect.nginx.com",
                      "endpointPort": 443,
                      "skipVerify": false
                    },
                    "patches": [],
                    "plus": false,
                    "pod": {},
                    "replicas": 1,
                    "service": {
                      "externalTrafficPolicy": "Local",
                      "loadBalancerClass": "",
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": [],
                      "patches": [],
                      "type": "LoadBalancer"
                    },
                    "usage": {
                      "caSecretName": "",
                      "clientSSLSecretName": "",
                      "endpoint": "",
                      "enforceInitialReport": true,
                      "resolver": "",
                      "secretName": "nplus-license",
                      "skipVerify": false
                    }
                  },
                  "nginxGateway": {
                    "affinity": {},
                    "autoscaling": {
                      "enable": false
                    },
                    "config": {
                      "logging": {
                        "level": "info"
                      }
                    },
                    "configAnnotations": {},
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "gatewayClassAnnotations": {},
                    "gatewayClassName": "nginx",
                    "gatewayControllerName": "gateway.nginx.org/nginx-gateway-controller",
                    "gwAPIExperimentalFeatures": {
                      "enable": false
                    },
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/nginx/nginx-gateway-fabric",
                      "tag": "2.2.2-ubi"
                    },
                    "kind": "deployment",
                    "labels": {},
                    "leaderElection": {
                      "enable": true,
                      "lockName": ""
                    },
                    "lifecycle": {},
                    "metrics": {
                      "enable": true,
                      "port": 9113,
                      "secure": false
                    },
                    "name": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "productTelemetry": {
                      "enable": true
                    },
                    "readinessProbe": {
                      "enable": true,
                      "initialDelaySeconds": 3,
                      "port": 8081
                    },
                    "replicas": 1,
                    "resources": {},
                    "service": {
                      "annotations": {},
                      "labels": {}
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "imagePullSecret": "",
                      "imagePullSecrets": [],
                      "name": ""
                    },
                    "snippetsFilters": {
                      "enable": false
                    },
                    "terminationGracePeriodSeconds": 30,
                    "tolerations": [],
                    "topologySpreadConstraints": []
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "true"
          com.redhat.openshift.versions: v4.19
          containerImage: ghcr.io/nginx/nginx-gateway-fabric/operator@sha256:726c4744ebb1033b5d81fc6c7d5d1e29680461b839610846245bba092843a152
          createdAt: "2025-12-11T09:36:30Z"
          description: The NGINX Gateway Fabric is a Kubernetes Gateway API implementation
            that provides application traffic management for modern cloud-native applications
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: nginx-gateway
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/nginx/nginx-gateway-fabric
          support: NGINX Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NginxGatewayFabric
            name: nginxgatewayfabrics.gateway.nginx.org
            version: v1alpha1
        description: NGINX Gateway Fabric provides an implementation of the Gateway
          API using NGINX as the data plane
        displayName: NGINX Gateway Fabric
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nginx
        - gateway
        - kubernetes
        - networking
        links:
        - name: Nginx Gateway Fabric
          url: https://github.com/nginx/nginx-gateway-fabric
        maintainers:
        - email: kubernetes@nginx.com
          name: F5NGINX
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: F5 NGINX
          url: https://www.f5.com/go/product/welcome-to-nginx
        relatedImages:
        - ghcr.io/nginx/nginx-gateway-fabric/operator@sha256:726c4744ebb1033b5d81fc6c7d5d1e29680461b839610846245bba092843a152
        - registry.connect.redhat.com/nginx/nginx-gateway-fabric-operator-bundle@sha256:94bd7123cec4eec21fc395df493c2a34415c214f075e0011439c5056f6ce6ae2
        version: 1.0.2
      entries:
      - name: nginx-gateway-fabric.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: nginx-gateway-fabric
    provider:
      name: F5 NGINX
      url: https://www.f5.com/go/product/welcome-to-nginx
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-apigatewayv2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-apigatewayv2-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Deployment",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "API",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Authorizer",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Route",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Stage",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "VPCLink",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/apigatewayv2-controller:1.2.0
          createdAt: "2025-11-29T05:41:40Z"
          description: AWS API Gateway v2 controller is a service controller for managing
            API Gateway v2 resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIMapping represents the state of an AWS apigatewayv2 APIMapping
              resource.
            displayName: APIMapping
            kind: APIMapping
            name: apimappings.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: API represents the state of an AWS apigatewayv2 API resource.
            displayName: API
            kind: API
            name: apis.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Authorizer represents the state of an AWS apigatewayv2 Authorizer
              resource.
            displayName: Authorizer
            kind: Authorizer
            name: authorizers.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Deployment represents the state of an AWS apigatewayv2 Deployment
              resource.
            displayName: Deployment
            kind: Deployment
            name: deployments.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: DomainName represents the state of an AWS apigatewayv2 DomainName
              resource.
            displayName: DomainName
            kind: DomainName
            name: domainnames.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Integration represents the state of an AWS apigatewayv2 Integration
              resource.
            displayName: Integration
            kind: Integration
            name: integrations.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Route represents the state of an AWS apigatewayv2 Route resource.
            displayName: Route
            kind: Route
            name: routes.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Stage represents the state of an AWS apigatewayv2 Stage resource.
            displayName: Stage
            kind: Stage
            name: stages.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: VPCLink represents the state of an AWS apigatewayv2 VPCLink
              resource.
            displayName: VPCLink
            kind: VPCLink
            name: vpclinks.apigatewayv2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon API Gateway v2 resources in AWS from within your Kubernetes cluster. Currently only HTTP APIs are supported. WebSocket API support will be added soon. For HTTP APIs, DomainName and APIMapping resource support will be added soon.

          **About Amazon API Gateway v2**

          Amazon API Gateway is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale. APIs act as the "front door" for applications to access data, business logic, or functionality from your backend services. Using API Gateway, you can create RESTful APIs and WebSocket APIs that enable real-time two-way communication applications. API Gateway supports containerized and serverless workloads, as well as web applications.

          API Gateway handles all the tasks involved in accepting and processing up to hundreds of thousands of concurrent API calls, including traffic management, CORS support, authorization and access control, throttling, monitoring, and API version management. API Gateway has no minimum fees or startup costs. You pay for the API calls you receive and the amount of data transferred out and, with the API Gateway tiered pricing model, you can reduce your cost as your API usage scales.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon API Gateway v2
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apigatewayv2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon API Gateway v2 Developer Resources
          url: https://aws.amazon.com/api-gateway/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: api gateway maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/apigatewayv2-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-apigatewayv2-controller@sha256:1484e3b2d292a0f844b37510aee801631a3f3784ace790910e1a7bc9ba28b336
        version: 1.2.0
      entries:
      - name: ack-apigatewayv2-controller.v1.2.0
        version: 1.2.0
      - name: ack-apigatewayv2-controller.v1.1.1
        version: 1.1.1
      - name: ack-apigatewayv2-controller.v1.1.0
        version: 1.1.0
      - name: ack-apigatewayv2-controller.v1.0.30
        version: 1.0.30
      - name: ack-apigatewayv2-controller.v1.0.29
        version: 1.0.29
      - name: ack-apigatewayv2-controller.v1.0.28
        version: 1.0.28
      - name: ack-apigatewayv2-controller.v1.0.26
        version: 1.0.26
      - name: ack-apigatewayv2-controller.v1.0.25
        version: 1.0.25
      - name: ack-apigatewayv2-controller.v1.0.23
        version: 1.0.23
      - name: ack-apigatewayv2-controller.v1.0.21
        version: 1.0.21
      - name: ack-apigatewayv2-controller.v1.0.17
        version: 1.0.17
      - name: ack-apigatewayv2-controller.v1.0.16
        version: 1.0.16
      - name: ack-apigatewayv2-controller.v1.0.15
        version: 1.0.15
      - name: ack-apigatewayv2-controller.v1.0.13
        version: 1.0.13
      - name: ack-apigatewayv2-controller.v1.0.12
        version: 1.0.12
      - name: ack-apigatewayv2-controller.v1.0.7
        version: 1.0.7
      - name: ack-apigatewayv2-controller.v1.0.6
        version: 1.0.6
      - name: ack-apigatewayv2-controller.v1.0.5
        version: 1.0.5
      - name: ack-apigatewayv2-controller.v1.0.4
        version: 1.0.4
      - name: ack-apigatewayv2-controller.v1.0.3
        version: 1.0.3
      - name: ack-apigatewayv2-controller.v1.0.2
        version: 1.0.2
      - name: ack-apigatewayv2-controller.v1.0.0
        version: 1.0.0
      - name: ack-apigatewayv2-controller.v0.1.6
        version: 0.1.6
      - name: ack-apigatewayv2-controller.v0.1.4
        version: 0.1.4
      - name: ack-apigatewayv2-controller.v0.1.3
        version: 0.1.3
      - name: ack-apigatewayv2-controller.v0.1.2
        version: 0.1.2
      - name: ack-apigatewayv2-controller.v0.1.1
        version: 0.1.1
      - name: ack-apigatewayv2-controller.v0.1.0
        version: 0.1.0
      - name: ack-apigatewayv2-controller.v0.0.22
        version: 0.0.22
      - name: ack-apigatewayv2-controller.v0.0.21
        version: 0.0.21
      - name: ack-apigatewayv2-controller.v0.0.20
        version: 0.0.20
      - name: ack-apigatewayv2-controller.v0.0.19
        version: 0.0.19
      - name: ack-apigatewayv2-controller.v0.0.18
        version: 0.0.18
      - name: ack-apigatewayv2-controller.v0.0.17
        version: 0.0.17
      - name: ack-apigatewayv2-controller.v0.0.16
        version: 0.0.16
      - name: ack-apigatewayv2-controller.v0.0.15
        version: 0.0.15
      - name: ack-apigatewayv2-controller.v0.0.14
        version: 0.0.14
      - name: ack-apigatewayv2-controller.v0.0.13
        version: 0.0.13
      - name: ack-apigatewayv2-controller.v0.0.12
        version: 0.0.12
      - name: ack-apigatewayv2-controller.v0.0.11
        version: 0.0.11
      - name: ack-apigatewayv2-controller.v0.0.10
        version: 0.0.10
      - name: ack-apigatewayv2-controller.v0.0.9
        version: 0.0.9
      name: alpha
    defaultChannel: alpha
    packageName: ack-apigatewayv2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: KEDA Community
      provider-url: ""
    name: keda
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keda.v2.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "KedaController",
                "metadata": {
                  "name": "keda",
                  "namespace": "keda"
                },
                "spec": {
                  "watchNamespace": "",
                  "operator": {
                    "logLevel": "info",
                    "logEncoder": "console"
                  },
                  "metricsServer": {
                    "logLevel": "0"
                  },
                  "serviceAccount": {}
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledJob",
                "metadata": {
                  "name": "scaledjob-sample"
                },
                "spec": {
                  "failedJobsHistoryLimit": 5,
                  "jobTargetRef": {
                    "activeDeadlineSeconds": 600,
                    "backoffLimit": 6,
                    "completions": 1,
                    "parallelism": 1,
                    "template": null
                  },
                  "maxReplicaCount": 100,
                  "pollingInterval": 30,
                  "successfulJobsHistoryLimit": 5,
                  "triggers": [
                    {
                      "metadata": {
                        "property": "examle-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledObject",
                "metadata": {
                  "name": "example-scaledobject"
                },
                "spec": {
                  "cooldownPeriod": 300,
                  "maxReplicaCount": 100,
                  "minReplicaCount": 0,
                  "pollingInterval": 30,
                  "scaleTargetRef": {
                    "name": "example-deployment"
                  },
                  "triggers": [
                    {
                      "metadata": {
                        "property": "examle-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "TriggerAuthentication",
                "metadata": {
                  "name": "example-triggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "exmaple-secret-parameter"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ClusterTriggerAuthentication",
                "metadata": {
                  "name": "example-clustertriggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "exmaple-secret-parameter"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Cloud Provider
          certified: "false"
          containerImage: ghcr.io/kedacore/keda-olm-operator:2.7.1
          createdAt: "2022-05-11T00:00:00.000Z"
          description: '[DEPRECATED] Use Custom Metrics Autoscaler Operator instead'
          operatorframework.io/suggested-namespace: keda
          operators.operatorframework.io/builder: operator-sdk-v1.1.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/kedacore/keda-olm-operator
          support: KEDA Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |
              Represents an installation of a particular version of KEDA Controller.
            displayName: KedaController
            kind: KedaController
            name: kedacontrollers.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your jobs and what the triggers
            displayName: ScaledJob
            kind: ScaledJob
            name: scaledjobs.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your application and what the
              triggers are
            displayName: ScaledObject
            kind: ScaledObject
            name: scaledobjects.keda.sh
            version: v1alpha1
          - description: Describes authentication parameters
            displayName: TriggerAuthentication
            kind: TriggerAuthentication
            name: triggerauthentications.keda.sh
            version: v1alpha1
          - description: Describes cluster wide authentication parameters
            displayName: ClusterTriggerAuthentication
            kind: ClusterTriggerAuthentication
            name: clustertriggerauthentications.keda.sh
            version: v1alpha1
        description: "## Deprecated\n This KEDA community operator is deprecated,
          please use `Custom Metrics Autoscaler` Operator instead.\n## About the managed
          application\nKEDA is a Kubernetes-based event driven autoscaler.  KEDA can
          monitor event sources like Kafka, RabbitMQ, or cloud event sources and feed
          the metrics from those sources into the Kubernetes horizontal pod autoscaler.
          \ With KEDA, you can have event driven and serverless scale of deployments
          within any Kubernetes cluster.\n## About this Operator\nThe KEDA Operator
          deploys and manages installation of KEDA Controller in the cluster. Install
          this operator and follow installation instructions on how to install KEDA
          in you cluster.\n\n## Prerequisites for enabling this Operator\nPlease note
          that you can not run both KEDA 1.x and 2.x on the same Kubernetes cluster.
          You need to uninstall KEDA 1.x first, in order to install and use KEDA 2.x.\n\nDon't
          forget to uninstall KEDA v1 CRDs as well, to ensure that, please run:\n\n```
          oc delete crd scaledobjects.keda.k8s.io ```\n\n``` oc delete crd triggerauthentications.keda.k8s.io
          \ ```\n## How to install KEDA in the cluster\nThe installation of KEDA is
          triggered by the creation of `KedaController` resource, please refer to
          [KedaController Example](https://github.com/kedacore/keda-olm-operator#kedacontroller-spec)
          for more deatils on available options.\n\nOnly resource named `keda` in
          namespace `keda` will trigger the installation, reconfiguration or removal
          of the KEDA Controller resource.\n\nThere could be only one KEDA Controller
          in the cluster. \n"
        displayName: '[DEPRECATED] KEDA'
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - keda
        - scaling
        - event
        links:
        - name: Homepage
          url: https://keda.sh
        - name: Source Code
          url: https://github.com/kedacore/keda
        - name: Slack Channel
          url: https://kubernetes.slack.com/messages/CKZJ36A5D
        maintainers:
        - email: cncf-keda-maintainers@lists.cncf.io
          name: KEDA Community
        maturity: deprecated
        minKubeVersion: 1.17.0
        provider:
          name: KEDA Community
        relatedImages:
        - quay.io/openshift-community-operators/keda@sha256:50816f675c76d36dbc62846579150477018ef87df325861751f3fc02a70c8781
        - ghcr.io/kedacore/keda-olm-operator:2.7.1
        version: 2.7.1
      entries:
      - name: keda.v2.7.1
        version: 2.7.1
      - name: keda.v2.6.1
        version: 2.6.1
      - name: keda.v2.6.0
        version: 2.6.0
      - name: keda.v2.5.0
        version: 2.5.0
      - name: keda.v2.4.0
        version: 2.4.0
      - name: keda.v2.3.0
        version: 2.3.0
      - name: keda.v2.2.0
        version: 2.2.0
      - name: keda.v2.1.0
        version: 2.1.0
      - name: keda.v2.0.0
        version: 2.0.0
      name: alpha
    defaultChannel: alpha
    packageName: keda
    provider:
      name: KEDA Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-airflow-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: airflow-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/airflow-operator@sha256:e7090465bfcce12ce945289421223bdbbc0597dfc816dac95cbafb286454fef8
          description: Stackable Operator for Apache Airflow
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/airflow-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for AirflowClusterSpec via `CustomResource`
            displayName: airflowclusters.airflow.stackable.tech
            kind: AirflowCluster
            name: airflowclusters.airflow.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Airflow
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - airflow
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/airflow-operator@sha256:e7090465bfcce12ce945289421223bdbbc0597dfc816dac95cbafb286454fef8
        - registry.connect.redhat.com/stackable/stackable-apache-airflow-operator@sha256:983b65960949b01b01a60f23271f3072c048c5fa2e23ab3303fe28ebafb40576
        version: 25.11.0
      entries:
      - name: airflow-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-airflow-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Intel® Corporation
      provider-url: https://intel.com
    name: intel-device-plugins-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: intel-device-plugins-operator.v0.32.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "DsaDevicePlugin",
                "metadata": {
                  "name": "dsadeviceplugin-sample"
                },
                "spec": {
                  "image": "registry.connect.redhat.com/intel/intel-dsa-plugin@sha256:2742a13279cc3f301daa09b6389517024530f658d4e1dd13db495cc94d9ba57c",
                  "initImage": "registry.connect.redhat.com/intel/intel-idxd-config-initcontainer@sha256:b74dc43fa81ce14ea97f20ff6b2f726039f6309fdd868d5f45d751d0a8662cc1",
                  "logLevel": 4,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/dsa": "true"
                  },
                  "sharedDevNum": 10
                }
              },
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "GpuDevicePlugin",
                "metadata": {
                  "name": "gpudeviceplugin-sample"
                },
                "spec": {
                  "enableMonitoring": true,
                  "image": "registry.connect.redhat.com/intel/intel-gpu-plugin@sha256:e2c2ce658e78c35c425f16a4f8e85c5f32ce31848d9b53a644a05e7f8b7f71b0",
                  "preferredAllocationPolicy": "none",
                  "logLevel": 4,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gpu": "true"
                  },
                  "sharedDevNum": 1
                }
              },
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "QatDevicePlugin",
                "metadata": {
                  "name": "qatdeviceplugin-sample"
                },
                "spec": {
                  "dpdkDriver": "vfio-pci",
                  "image": "registry.connect.redhat.com/intel/intel-qat-plugin@sha256:8d79dba051b83ec770a4b0fdc3da6ac92264cb19cac8d455b707ed92a6a95d02",
                  "initImage": "registry.connect.redhat.com/intel/intel-qat-initcontainer@sha256:34f0b993ca654ea0b386217cba1a44d5ef3da841b3befc780508f5323e95fa90",
                  "kernelVfDrivers": [
                    "4xxxvf"
                  ],
                  "logLevel": 4,
                  "maxNumDevices": 128,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/qat": "true"
                  }
                }
              },
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "SgxDevicePlugin",
                "metadata": {
                  "name": "sgxdeviceplugin-sample"
                },
                "spec": {
                  "enclaveLimit": 110,
                  "image": "registry.connect.redhat.com/intel/intel-sgx-plugin@sha256:f2c77521c6dae6b4db1896a5784ba8b06a5ebb2a01684184fc90143cfcca7bf4",
                  "logLevel": 4,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/sgx": "true"
                  },
                  "provisionLimit": 110
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Security, AI/Machine Learning
          containerImage: registry.connect.redhat.com/intel/intel-deviceplugin-operator@sha256:5ca1fd11f0ca4e7fb941749c67461c9c66fe9417c9d0f0a9247b6b172b0bcdd5
          description: This operator is a Kubernetes custom controller whose goal
            is to serve the installation and lifecycle management of Intel device
            plugins for Kubernetes.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/intel/intel-technology-enabling-for-openshift
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DsaDevicePlugin is the Schema for the dsadeviceplugins API.
              It represents the DSA device plugin responsible for advertising Intel
              DSA hardware resources to the kubelet.
            displayName: Intel DSA Device Plugin
            kind: DsaDevicePlugin
            name: dsadeviceplugins.deviceplugin.intel.com
            version: v1
          - description: |-
              GpuDevicePlugin is the Schema for the gpudeviceplugins API. It represents
              the GPU device plugin responsible for advertising Intel GPU hardware resources to
              the kubelet.
            displayName: Intel GPU Device Plugin
            kind: GpuDevicePlugin
            name: gpudeviceplugins.deviceplugin.intel.com
            version: v1
          - description: |-
              QatDevicePlugin is the Schema for the qatdeviceplugins API. It represents the QAT device
              plugin responsible for advertising Intel QuickAssist Technology hardware resources
              to the kubelet.
            displayName: Intel QuickAssist Technology Device Plugin
            kind: QatDevicePlugin
            name: qatdeviceplugins.deviceplugin.intel.com
            version: v1
          - description: |-
              SgxDevicePlugin is the Schema for the sgxdeviceplugins API. It represents
              the SGX device plugin responsible for advertising SGX device nodes to
              the kubelet.
            displayName: Intel Software Guard Extensions Device Plugin
            kind: SgxDevicePlugin
            name: sgxdeviceplugins.deviceplugin.intel.com
            version: v1
        description: |
          [Intel Device Plugins for Kubernetes](https://github.com/intel/intel-technology-enabling-for-openshift) is a collection of
          [device plugins](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/) advertising Intel specific hardware resources
          to the kubelet. Currently the operator has basic support for Intel SGX, Intel GPU, Intel QAT and Intel DSA. Intel IAA device plugin will be supported in a future release.
        displayName: Intel Device Plugins Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - fpga
        - qat
        - sgx
        - gpu
        - dsa
        - dlb
        links:
        - name: Intel Device Plugins Operator
          url: https://github.com/intel/intel-technology-enabling-for-openshift
        maintainers:
        - email: martin.xu@intel.com
          name: Martin Xu
        - email: chaitanya.kulkarni@intel.com
          name: Chaitanya kulkarni
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Intel® Corporation
          url: https://intel.com
        relatedImages:
        - registry.connect.redhat.com/intel/intel-device-plugins-operator-bundle@sha256:4a422ca897caeabb9fc3be3dfef3746819868de1674ea61c657cad257fbddf12
        - registry.connect.redhat.com/intel/intel-deviceplugin-operator@sha256:5ca1fd11f0ca4e7fb941749c67461c9c66fe9417c9d0f0a9247b6b172b0bcdd5
        - registry.connect.redhat.com/intel/intel-dsa-plugin@sha256:2742a13279cc3f301daa09b6389517024530f658d4e1dd13db495cc94d9ba57c
        - registry.connect.redhat.com/intel/intel-gpu-plugin@sha256:e2c2ce658e78c35c425f16a4f8e85c5f32ce31848d9b53a644a05e7f8b7f71b0
        - registry.connect.redhat.com/intel/intel-idxd-initcontainer@sha256:b74dc43fa81ce14ea97f20ff6b2f726039f6309fdd868d5f45d751d0a8662cc1
        - registry.connect.redhat.com/intel/intel-qat-initcontainer@sha256:34f0b993ca654ea0b386217cba1a44d5ef3da841b3befc780508f5323e95fa90
        - registry.connect.redhat.com/intel/intel-qat-plugin@sha256:8d79dba051b83ec770a4b0fdc3da6ac92264cb19cac8d455b707ed92a6a95d02
        - registry.connect.redhat.com/intel/intel-sgx-plugin@sha256:f2c77521c6dae6b4db1896a5784ba8b06a5ebb2a01684184fc90143cfcca7bf4
        version: 0.32.1
      entries:
      - name: intel-device-plugins-operator.v0.32.1
        version: 0.32.1
      - name: intel-device-plugins-operator.v0.29.1
        version: 0.29.1
      - name: intel-device-plugins-operator.v0.29.0
        version: 0.29.0
      - name: intel-device-plugins-operator.v0.28.0
        version: 0.28.0
      name: alpha
    defaultChannel: alpha
    packageName: intel-device-plugins-operator
    provider:
      name: Intel® Corporation
      url: https://intel.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: opdev
      provider-url: https://opdev.github.io/
    name: loki-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: loki-helm-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.example.com/v1alpha1",
                "kind": "Loki",
                "metadata": {
                  "annotations": {
                    "helm.sdk.operatorframework.io/install-disable-crds": "true"
                  },
                  "name": "loki-sample"
                },
                "spec": {
                  "global": {
                    "clusterDomain": "cluster.local",
                    "dnsNamespace": "openshift-dns",
                    "dnsService": "dns-default"
                  },
                  "loki": {
                    "auth_enabled": false,
                    "commonConfig": {
                      "replication_factor": 1
                    },
                    "storage": {
                      "type": "filesystem"
                    }
                  },
                  "monitoring": {
                    "dashboards": {
                      "enabled": false
                    },
                    "lokiCanary": {
                      "enabled": false
                    },
                    "rules": {
                      "alerting": false,
                      "enabled": false
                    },
                    "selfMonitoring": {
                      "enabled": false,
                      "grafanaAgent": {
                        "installOperator": false
                      }
                    },
                    "serviceMonitor": {
                      "enabled": false,
                      "metricsInstance": {
                        "enabled": false
                      }
                    }
                  },
                  "rbac": {
                    "sccEnabled": true
                  },
                  "singleBinary": {
                    "replicas": 1
                  },
                  "test": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: quay.io/opdev/loki-helm-operator-controller:0.0.1
          createdAt: "2023-07-14T15:06:17Z"
          description: An experimental operator that installs loki from its official
            helmchart.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: hybrid.helm.sdk.operatorframework.io/v1-alpha
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys the loki operator helm chart
            displayName: Loki
            kind: Loki
            name: lokis.charts.example.com
            version: v1alpha1
        description: Loki operator based on the helm chart with single binary mode
          deployment optionality
        displayName: Loki Helm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - loki
        - single-binary
        - demo
        - helm
        links:
        - name: Loki Helm Operator
          url: https://github.com/skattoju/loki-helm-operator
        maintainers:
        - email: skattoju@redhat.com
          name: Sid Kattoju
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: opdev
          url: https://opdev.github.io/
        relatedImages:
        - quay.io/openshift-community-operators/loki-helm-operator@sha256:fa3662ec16e6cb3f866ad46982a50d8fdefb43c68f3caa13291239013e03af13
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/opdev/loki-helm-operator-controller:0.0.1
        version: 0.0.1
      entries:
      - name: loki-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: loki-helm-operator
    provider:
      name: opdev
      url: https://opdev.github.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: egressip-ipam-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: egressip-ipam-operator.v1.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "EgressIPAM",
                "metadata": {
                  "name": "egressipam-aws"
                },
                "spec": {
                  "cidrAssignments": [
                    {
                      "CIDR": "10.0.128.0/19",
                      "labelValue": "us-west-2a"
                    },
                    {
                      "CIDR": "10.0.160.0/19",
                      "labelValue": "us-west-2b",
                      "reservedIPs": [
                        "10.0.160.126"
                      ]
                    },
                    {
                      "CIDR": "10.0.192.0/19",
                      "labelValue": "us-west-2c"
                    }
                  ],
                  "nodeSelector": {
                    "matchLabels": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "topologyLabel": "failure-domain.beta.kubernetes.io/zone"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "EgressIPAM",
                "metadata": {
                  "name": "egressipam-baremetal"
                },
                "spec": {
                  "cidrAssignments": [
                    {
                      "CIDR": "192.169.0.0/24",
                      "labelValue": "true"
                    }
                  ],
                  "nodeSelector": {
                    "matchLabels": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "topologyLabel": "egressGateway"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Networking, Cloud Provider, Security
          certified: "false"
          containerImage: quay.io/redhat-cop/egressip-ipam-operator@sha256:d6129bd287b87696a23e0da64dcd598958f779dc88ae33b46b3c909dbab80adf
          createdAt: "2022-07-25T15:07:22Z"
          description: This operator provides automation around managing egressIPs.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: egressip-ipam-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/egressip-ipam-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EgressIPAM is the Schema for the egressipams API
            displayName: Egress IPAM
            kind: EgressIPAM
            name: egressipams.redhatcop.redhat.io
            version: v1alpha1
        description: |
          This operator automates the assignment of egressIPs to namespaces.
          Namespaces can opt in to receiving one or more egressIPs with the following annotation `egressip-ipam-operator.redhat-cop.io/egressipam:<egressIPAM>`, where `egressIPAM` is the CRD that controls how egressIPs are assigned.
          IPs assigned to the namespace can be looked up in the following annotation: `egressip-ipam-operator.redhat-cop.io/egressips`.

          EgressIP assignments is managed by the EgressIPAM CRD. Here is an example of it:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: EgressIPAM
          metadata:
            name: example-egressipam
          spec:
            cidrAssignments:
              - labelValue: "true"
                CIDR: 192.169.0.0/24
                reservedIPs:
                - "192.159.0.5"
            topologyLabel: egressGateway
            nodeSelector:
              node-role.kubernetes.io/worker: ""
          ```

          This EgressIPAM specifies that all nodes that comply with the specified node selector and that also have labels `egressGateway: "true"` will be assigned egressIP from the specified CIDR.

          Note that the `cidrAssigments` field is an array and therefore, multiple groups of nodes can be identified with the labelValue and different CIDRs can be assigned to them. This is usually not necessary on a bare metal deployment.

          In the bare metal scenario, when this egressCRD is created, all the `hostsubnet` relative to the nodes selected by this EgressIPAM will be update to have the EgressCIDRs field equal to the specified CIDR (see below for cloud provider scenarios).

          When a namespace is created with the opt-in annotation: `egressip-ipam-operator.redhat-cop.io/egressipam=<egressIPAM>`, an available egressIP is selected from the CIDR and assigned to the namespace.The `netnamespace` associated with this namespace is updated to use that egressIP.

          It is possible to specify a set of reserved IPs. These IPs must belong to the CIDR and will never be assigned.

          ## Passing EgressIPs as input

          The normal mode of operation of this operator is to pick a random IP from the configured CIDR. However, it also supports a scenario where egressIPs are picked by an external process and passed as input.

          In this case IPs must me passed as an annotation to the namespace, like this: `egressip-ipam-operator.redhat-cop.io/egressips=IP1,IP2...`. The value of the annotation is a comma separated array of ip with no spaces.

          There must be exactly one IP per CIDR defined in the referenced egressIPAM. Moreover, each IP must belong to the corresponding CIDR. Because this situation can lead to inconsistencies, failing to have correspondence between IPs in the namespace annotation and CIDRs in the egressIPAM CR will cause the operator to error out and stop processing all the namespaces associated with the given EgressIPAM CR.

          It also also a responsibility of the progress picking the IPs to ensure that those IPs are actually available.

          ## Assumptions

          The following assumptions apply when using this operator:

          1. If multiple EgressIPAMs are defined, their selected nodes MUST NOT overlap.
          2. When using a cloud provider the topology label MUST be `failure-domain.beta.kubernetes.io/zone`.

          ## Support for AWS

          In AWS as well as other cloud providers, one cannot freely assign IPs to machines. Additional steps need to be performed in this case. Considering this EgressIPAM

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: EgressIPAM
          metadata:
            name: egressipam-aws
          spec:
            cidrAssignments:
              - labelValue: "eu-central-1a"
                CIDR: 10.0.128.0/20
              - labelValue: "eu-central-1b"
                CIDR: 10.0.144.0/20
              - labelValue: "eu-central-1c"
                CIDR: 10.0.160.0/20
            topologyLabel: failure-domain.beta.kubernetes.io/zone
            nodeSelector:
              matchLabels:
                node-role.kubernetes.io/worker: ""
          ```

          When a namespace with the opt-in annotation is created, the following happens:

          1. for each of the CIDRs, an available IP is selected and assigned to the namespace
          2. the relative `netnamespace` is update to reflect the assignment (multiple IPs will be assigned in this case).
          3. one node per zone is selected to carry the egressIP
          4. the relative aws machines are assigned the additional IP on the main interface (support for secondary interfaces in not available)
          5. the relative `hostsubnets` are updated to reflect the assigned IP, the `egressIP` field is updated.
        displayName: Egressip Ipam Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - egressIPs
        - high availability
        - firewall support
        - traffic management
        - ipam
        links:
        - name: Egressip Ipam Operator
          url: https://github.com/redhat-cop/egressip-ipam-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/egressip-ipam-operator:v0.1.2
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/egressip-ipam-operator@sha256:1e2443488e0aad361cccece51689e2b8da882862cb62c1208a14ab1b5ec2922d
        - quay.io/redhat-cop/egressip-ipam-operator@sha256:d6129bd287b87696a23e0da64dcd598958f779dc88ae33b46b3c909dbab80adf
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.2.4
      entries:
      - name: egressip-ipam-operator.v1.2.4
        version: 1.2.4
      - name: egressip-ipam-operator.v1.2.3
        version: 1.2.3
      - name: egressip-ipam-operator.v1.2.2
        version: 1.2.2
      - name: egressip-ipam-operator.v1.2.1
        version: 1.2.1
      - name: egressip-ipam-operator.v1.2.0
        version: 1.2.0
      - name: egressip-ipam-operator.v1.1.0
        version: 1.1.0
      - name: egressip-ipam-operator.v1.0.8
        version: 1.0.8
      - name: egressip-ipam-operator.v1.0.7
        version: 1.0.7
      - name: egressip-ipam-operator.v1.0.6
        version: 1.0.6
      - name: egressip-ipam-operator.v1.0.5
        version: 1.0.5
      - name: egressip-ipam-operator.v1.0.4
        version: 1.0.4
      - name: egressip-ipam-operator.v1.0.3
        version: 1.0.3
      - name: egressip-ipam-operator.v1.0.2
        version: 1.0.2
      - name: egressip-ipam-operator.v1.0.1
        version: 1.0.1
      - name: egressip-ipam-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: egressip-ipam-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: windows-machine-config-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: windows-machine-config-operator.v10.20.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          createdAt: "2025-09-16T22:12:55Z"
          description: An operator that enables Windows container workloads on OCP
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=10.19.0 <10.20.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-windows-machine-config-operator
          operators.openshift.io/valid-subscription: '["Red Hat OpenShift support
            for Windows Containers"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/windows-machine-config-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          ### Introduction
          The Windows Machine Config Operator configures Windows Machines into nodes, enabling Windows container workloads to
          be run on OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets),
          or by specifying existing instances through a [ConfigMap](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/byoh-windows-instance)
          The operator completes all the necessary steps to configure the Windows instance so that it can join the cluster as a worker node.

          Usage of this operator requires an OpenShift Container Platform for Windows Containers subscription. Users looking to
          deploy Windows containers workloads in production clusters should acquire a subscription before attempting to
          install this operator. Users without a subscription can try the community operator, a distribution which lacks
          official support.

          ### Pre-requisites
          * A Red Hat OpenShift Container Platform for Windows Containers [subscription](https://access.redhat.com/support/policy/updates/openshift#windows)
          * OCP 4.20 cluster running on Azure, AWS, GCP or vSphere configured with hybrid OVN Kubernetes networking
          * [WMCO prerequisites](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/understanding-windows-container-workloads)

          ### Usage
          Once the `openshift-windows-machine-config-operator` namespace has been created, a secret must be created containing
          the private key that will be used to access the Windows VMs:
          ```
          # Create secret containing the private key in the openshift-windows-machine-config-operator namespace
          oc create secret generic cloud-private-key --from-file=private-key.pem=/path/to/key -n openshift-windows-machine-config-operator
          ```
          We strongly recommend not using the same
          [private key](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/installing_on_azure/installing-on-azure#ssh-agent-using_installing-azure-customizations)
          used when installing the cluster

          Below is an example of a vSphere Windows MachineSet which can create Windows Machines that the WMCO can react upon.
          Please note that the windows-user-data secret will be created by the WMCO lazily when it is configuring the first
          Windows Machine. After that, the windows-user-data will be available for the subsequent MachineSets to be consumed.
          It might take around 10 minutes for the Windows VM to be configured so that it joins the cluster. Please note that
          the MachineSet should have following labels:
          * `machine.openshift.io/os-id: Windows`
          * `machine.openshift.io/cluster-api-machine-role: worker`
          * `machine.openshift.io/cluster-api-machine-type: worker`

          The following label must be added to the Machine spec within the MachineSet spec:
          * `node-role.kubernetes.io/worker: ""`

          Not having these labels will result in the Windows node not being marked as a worker.

          `<infrastructureID>` should be replaced with the output of:
          ```
          oc get -o jsonpath='{.status.infrastructureName}{"\n"}' infrastructure cluster
          ```

          The following template variables need to be replaced as follows with values from your vSphere environment:
          * `<Windows_VM_template>`: template name
          * `<VM Network Name>`: network name
          * `<vCenter DataCenter Name>`: datacenter name
          * `<Path to VM Folder in vCenter>`: path where your OpenShift cluster is running
          * `<vCenter Datastore Name>`: datastore name
          * `<vCenter Server FQDN/IP>`: IP address or FQDN of the vCenter server

          Please note that on vSphere, Windows Machine names cannot be more than 15 characters long. The MachineSet name therefore
          cannot be more than 9 characters long, due to the way Machine names are generated from it.
          ```
          apiVersion: machine.openshift.io/v1beta1
          kind: MachineSet
          metadata:
            labels:
              machine.openshift.io/cluster-api-cluster: <infrastructureID>
            name: winworker
            namespace: openshift-machine-api
          spec:
            replicas: 1
            selector:
              matchLabels:
                machine.openshift.io/cluster-api-cluster: <infrastructureID>
                machine.openshift.io/cluster-api-machineset: winworker
            template:
              metadata:
                labels:
                  machine.openshift.io/cluster-api-cluster: <infrastructureID>
                  machine.openshift.io/cluster-api-machine-role: worker
                  machine.openshift.io/cluster-api-machine-type: worker
                  machine.openshift.io/cluster-api-machineset: winworker
                  machine.openshift.io/os-id: Windows
              spec:
                metadata:
                  labels:
                    node-role.kubernetes.io/worker: ""
                providerSpec:
                  value:
                    apiVersion: vsphereprovider.openshift.io/v1beta1
                    credentialsSecret:
                      name: vsphere-cloud-credentials
                      namespace: openshift-machine-api
                    diskGiB: 128
                    kind: VSphereMachineProviderSpec
                    memoryMiB: 16384
                    metadata:
                      creationTimestamp: null
                    network:
                      devices:
                      - networkName: "<VM Network Name>"
                    numCPUs: 4
                    numCoresPerSocket: 1
                    snapshot: ""
                    template: <Windows_VM_template
                    userDataSecret:
                      name: windows-user-data
                    workspace:
                      datacenter: <vCenter DataCenter Name>
                      datastore: <vCenter Datastore Name>
                      folder: <Path to VM Folder in vCenter> # e.g. /DC/vm/ocp45-2tdrm
                      server: <vCenter Server FQDN/IP>
          ```
          Example MachineSet for other cloud providers:
          - [AWS](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-aws)
          - [Azure](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-azure)
          - [GCP](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-gcp)

          ### Limitations
          #### DeploymentConfigs
          Windows Nodes do not support workloads created via DeploymentConfigs. Please use a normal Deployment, or other method to
          deploy workloads.

          ### Reporting issues
          Support for this distribution of WMCO requires a Red Hat OpenShfit subscription. Support should be requested through the Red Hat Customer Portal.
          Please read through the [troubleshooting document](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/support/troubleshooting)
          before opening a support case.
        displayName: Windows Machine Config Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - windows
        maintainers:
        - email: team-winc@redhat.com
          name: Red Hat, Windows Container Support for OpenShift
        maturity: stable
        minKubeVersion: 1.33.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4-wincw/windows-machine-config-rhel9-operator@sha256:9d5bdca5f80895a316d7af75e8c5316b0e27ded1dd4b4d4fac01ef1c23b7a6fc
        - registry.redhat.io/openshift4-wincw/windows-machine-config-operator-bundle@sha256:e3d896e0f2e6713ad972f733d7424af371a0d75ce6fd0f8b9fadf5ad71c6c22d
        version: 10.20.0
      entries:
      - name: windows-machine-config-operator.v10.20.0
        version: 10.20.0
      name: stable
    defaultChannel: stable
    packageName: windows-machine-config-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-keyspaces-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-keyspaces-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keyspaces.services.k8s.aws/v1alpha1",
                "kind": "Keyspace",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "keyspaces.services.k8s.aws/v1alpha1",
                "kind": "Table",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/keyspaces-controller:1.2.0
          createdAt: "2025-11-29T04:36:08Z"
          description: AWS Keyspaces controller is a service controller for managing
            Keyspaces resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Keyspace represents the state of an AWS keyspaces Keyspace
              resource.
            displayName: Keyspace
            kind: Keyspace
            name: keyspaces.keyspaces.services.k8s.aws
            version: v1alpha1
          - description: Table represents the state of an AWS keyspaces Table resource.
            displayName: Table
            kind: Table
            name: tables.keyspaces.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Keyspaces resources in AWS from within your Kubernetes cluster.

          **About Amazon Keyspaces**

          Amazon Keyspaces (for Apache Cassandra) is a scalable, highly available, and managed Apache Cassandra–compatible database service. With Amazon Keyspaces, you don’t have to provision, patch, or manage servers, and you don’t have to install, maintain, or operate software.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Keyspaces
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - keyspaces
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Keyspaces Developer Resources
          url: https://aws.amazon.com/keyspaces/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: keyspaces maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/keyspaces-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-keyspaces-controller@sha256:95da338a7390cc9e5fbff4b5d22d7741d4e1d67ed4403c874dd39b073e3a0487
        version: 1.2.0
      entries:
      - name: ack-keyspaces-controller.v1.2.0
        version: 1.2.0
      - name: ack-keyspaces-controller.v1.1.2
        version: 1.1.2
      - name: ack-keyspaces-controller.v1.1.1
        version: 1.1.1
      - name: ack-keyspaces-controller.v1.1.0
        version: 1.1.0
      - name: ack-keyspaces-controller.v1.0.14
        version: 1.0.14
      - name: ack-keyspaces-controller.v1.0.12
        version: 1.0.12
      - name: ack-keyspaces-controller.v1.0.11
        version: 1.0.11
      - name: ack-keyspaces-controller.v1.0.10
        version: 1.0.10
      - name: ack-keyspaces-controller.v1.0.9
        version: 1.0.9
      - name: ack-keyspaces-controller.v1.0.7
        version: 1.0.7
      - name: ack-keyspaces-controller.v1.0.6
        version: 1.0.6
      - name: ack-keyspaces-controller.v1.0.5
        version: 1.0.5
      - name: ack-keyspaces-controller.v1.0.3
        version: 1.0.3
      - name: ack-keyspaces-controller.v1.0.2
        version: 1.0.2
      - name: ack-keyspaces-controller.v1.0.1
        version: 1.0.1
      - name: ack-keyspaces-controller.v1.0.0
        version: 1.0.0
      - name: ack-keyspaces-controller.v0.0.16
        version: 0.0.16
      - name: ack-keyspaces-controller.v0.0.15
        version: 0.0.15
      - name: ack-keyspaces-controller.v0.0.14
        version: 0.0.14
      - name: ack-keyspaces-controller.v0.0.13
        version: 0.0.13
      - name: ack-keyspaces-controller.v0.0.12
        version: 0.0.12
      - name: ack-keyspaces-controller.v0.0.11
        version: 0.0.11
      - name: ack-keyspaces-controller.v0.0.10
        version: 0.0.10
      - name: ack-keyspaces-controller.v0.0.9
        version: 0.0.9
      - name: ack-keyspaces-controller.v0.0.8
        version: 0.0.8
      - name: ack-keyspaces-controller.v0.0.7
        version: 0.0.7
      - name: ack-keyspaces-controller.v0.0.6
        version: 0.0.6
      - name: ack-keyspaces-controller.v0.0.5
        version: 0.0.5
      - name: ack-keyspaces-controller.v0.0.4
        version: 0.0.4
      - name: ack-keyspaces-controller.v0.0.3
        version: 0.0.3
      - name: ack-keyspaces-controller.v0.0.2
        version: 0.0.2
      - name: ack-keyspaces-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-keyspaces-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Managed Openshift Black Belt
      provider-url: ""
    name: ecr-secret-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ecr-secret-operator.v0.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecr.mobb.redhat.com/v1alpha1",
                "kind": "Secret",
                "metadata": {
                  "name": "ecr-secret-sample",
                  "namespace": "test-ecr-secret-operator"
                },
                "spec": {
                  "ecr_registry": "ACCOUNT_ID.dkr.ecr.us-east-2.amazonaws.com",
                  "frequency": "10h",
                  "generated_secret_name": "ecr-docker-secret",
                  "region": "us-east-2"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/mobb/ecr-secret-operator:v0.3.2
          operatorframework.io/suggested-namespace: ecr-secret-operator
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-mobb/ecr-secret-operator
          support: Managed Openshift Black Belt
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Secret is the Schema for the secrets API
            displayName: Secret
            kind: Secret
            name: secrets.ecr.mobb.redhat.com
            version: v1alpha1
        description: "# ECR Secret Operator\n\nAmazon Elastic Container Registry [Private
          Registry Authentication](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry_auth.html)
          provides a temporary token that is valid only for 12 hours. It is a challenge
          for automatic container image build process to refresh the token or secret
          in a timely manner.\n\nThis operators frequently talks with AWS ECR GetAuthroization
          Token and create/update the secret, so that the service account can perform
          docker image build.\n\n\n## How to use this operator\n\n### Prerequisites\n\n*
          [Create an ECR private repository](https://docs.aws.amazon.com/AmazonECR/latest/userguide/repository-create.html)\n*
          Create An Openshift Cluster\n* Provide AWS Authentication to the operator.
          Two Options:\n  **Note: You have to provide a secret aws-ecr-cloud-credentials
          in the installed namespace**\n  * [IAM User](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_user.md)\n
          \ * [STS Assume Role](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_assume_role.md)\n\n###
          Install the operator\n\n### Create the ECR Secret CRD\n\n```\napiVersion:
          ecr.mobb.redhat.com/v1alpha1\nkind: Secret\nmetadata:\n  name: ecr-secret\n
          \ namespace: test-ecr-secret-operator\nspec:\n  generated_secret_name: ecr-docker-secret\n
          \ ecr_registry: [ACCOUNT_ID].dkr.ecr.us-east-2.amazonaws.com\n  frequency:
          10h\n  region: us-east-2\n```\n\n```\noc create -f CRD_FILE\n```\n\nA docker
          registry secret is created by the operator momentally and the token is patched
          every 10 hours\n\n```\noc get secret ecr-docker-secret   \nNAME                TYPE
          \                            DATA   AGE\necr-docker-secret   kubernetes.io/dockerconfigjson
          \  1      16h\n```\n\n### A sample build process with generated secret\n\n\nLink
          the secret to builder\n\n```\noc secrets link builder ecr-docker-secret
          \n```\n\nConfigure [build config](https://github.com/rh-mobb/ecr-secret-operator/tree/main/samples/build-config.yaml)
          to point to your ECR Container repository\n\n```\noc create imagestream
          ruby\noc tag openshift/ruby:2.5-ubi8 ruby:2.5\noc create -f samples/build-config.yaml\noc
          start-build ruby-sample-build --wait\n```\n\nBuild should succeed and push
          the image to the the private ECR Container repository\n\n"
        displayName: ECR Secret Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecr
        - aws
        - redhat
        links:
        - name: Ecr Secret Operator
          url: https://github.com/rh-mobb/ecr-secret-operator
        maintainers:
        - email: shading@redhat.com
          name: Shaozhen Ding
        maturity: alpha
        provider:
          name: Managed Openshift Black Belt
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/mobb/ecr-secret-operator:v0.3.2
        - quay.io/openshift-community-operators/ecr-secret-operator@sha256:90f512ce90433a33b50c58613d9b7136e00f116c48e179c4a1be89d6a35f9abc
        version: 0.3.2
      entries:
      - name: ecr-secret-operator.v0.3.2
        version: 0.3.2
      name: v0.3
    - currentCSV: ecr-secret-operator.v0.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecr.mobb.redhat.com/v1alpha1",
                "kind": "Secret",
                "metadata": {
                  "name": "ecr-secret-sample",
                  "namespace": "test-ecr-secret-operator"
                },
                "spec": {
                  "ecr_registry": "ACCOUNT_ID.dkr.ecr.us-east-2.amazonaws.com",
                  "frequency": "10h",
                  "generated_secret_name": "ecr-docker-secret",
                  "region": "us-east-2"
                }
              },
              {
                "apiVersion": "ecr.mobb.redhat.com/v1alpha1",
                "kind": "ArgoHelmRepoSecret",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ecr-secret-operator",
                    "app.kubernetes.io/instance": "argohelmreposecret-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "argohelmreposecret",
                    "app.kubernetes.io/part-of": "ecr-secret-operator"
                  },
                  "name": "argohelmreposecret-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/mobb/ecr-secret-operator:v0.4.1
          createdAt: "2023-04-14T14:52:13Z"
          operatorframework.io/suggested-namespace: ecr-secret-operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-mobb/ecr-secret-operator
          support: Managed Openshift Black Belt
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ArgoHelmRepoSecret is the Schema for the argohelmreposecrets
              API
            displayName: Argo Helm Repo Secret
            kind: ArgoHelmRepoSecret
            name: argohelmreposecrets.ecr.mobb.redhat.com
            version: v1alpha1
          - description: Secret is the Schema for the secrets API
            displayName: Secret
            kind: Secret
            name: secrets.ecr.mobb.redhat.com
            version: v1alpha1
        description: "# ECR Secret Operator\n\nAmazon Elastic Container Registry [Private
          Registry Authentication](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry_auth.html)
          provides a temporary token that is valid only for 12 hours. It is a challenge
          for automatic container image build process to refresh the token or secret
          in a timely manner.\n\nThis operators frequently talks with AWS ECR GetAuthroization
          Token and create/update the secret, so that the service account can perform
          docker image build.\n\n\n## How to use this operator\n\n### Prerequisites\n\n*
          [Create an ECR private repository](https://docs.aws.amazon.com/AmazonECR/latest/userguide/repository-create.html)\n*
          Create An Openshift Cluster\n* Provide AWS Authentication to the operator.
          Two Options:\n  **Note: You have to provide a secret aws-ecr-cloud-credentials
          in the installed namespace**\n  * [IAM User](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_user.md)\n
          \ * [STS Assume Role](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_assume_role.md)\n\n###
          Install the operator\n\n### Create the ECR Secret CRD\n\n```\napiVersion:
          ecr.mobb.redhat.com/v1alpha1\nkind: Secret\nmetadata:\n  name: ecr-secret\n
          \ namespace: test-ecr-secret-operator\nspec:\n  generated_secret_name: ecr-docker-secret\n
          \ ecr_registry: [ACCOUNT_ID].dkr.ecr.us-east-2.amazonaws.com\n  frequency:
          10h\n  region: us-east-2\n```\n\n```\noc create -f CRD_FILE\n```\n\nA docker
          registry secret is created by the operator momentally and the token is patched
          every 10 hours\n\n```\noc get secret ecr-docker-secret   \nNAME                TYPE
          \                            DATA   AGE\necr-docker-secret   kubernetes.io/dockerconfigjson
          \  1      16h\n```\n\n### A sample build process with generated secret\n\n\nLink
          the secret to builder\n\n```\noc secrets link builder ecr-docker-secret
          \n```\n\nConfigure [build config](https://github.com/rh-mobb/ecr-secret-operator/tree/main/samples/build-config.yaml)
          to point to your ECR Container repository\n\n```\noc create imagestream
          ruby\noc tag openshift/ruby:2.5-ubi8 ruby:2.5\noc create -f samples/build-config.yaml\noc
          start-build ruby-sample-build --wait\n```\n\nBuild should succeed and push
          the image to the the private ECR Container repository\n\n"
        displayName: ECR Secret Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecr
        - aws
        - redhat
        links:
        - name: Ecr Secret Operator
          url: https://github.com/rh-mobb/ecr-secret-operator
        maintainers:
        - email: shading@redhat.com
          name: Shaozhen Ding
        maturity: alpha
        provider:
          name: Managed Openshift Black Belt
        relatedImages:
        - quay.io/openshift-community-operators/ecr-secret-operator@sha256:53e73c53c31e0e06c990d3d966c2b4053d559a58a17a781155a3ceff3efac831
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/mobb/ecr-secret-operator:v0.4.1
        version: 0.4.1
      entries:
      - name: ecr-secret-operator.v0.4.1
        version: 0.4.1
      - name: ecr-secret-operator.v0.4.0
        version: 0.4.0
      name: v0.4
    defaultChannel: v0.4
    packageName: ecr-secret-operator
    provider:
      name: Managed Openshift Black Belt
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: node-healthcheck-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-healthcheck-operator.v0.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample"
                },
                "spec": {
                  "minHealthy": "51%",
                  "remediationTemplate": {
                    "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                    "kind": "SelfNodeRemediationTemplate",
                    "name": "self-node-remediation-automatic-strategy-template",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/plugins: '["node-remediation-console-plugin"]'
          containerImage: registry.redhat.io/workload-availability/node-healthcheck-rhel9-operator@sha256:f7ef379b374b824da311a2696351b5bd930717d193515f68f12040b40df8e75c
          createdAt: "2025-11-11 21:43:16"
          description: Detect failed Nodes and trigger remediation with a remediation
            operator.
          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: "true"
          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.skipRange: '>=0.9.0 <0.10.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Hardware is imperfect, and software contains bugs. When node level failures such as kernel hangs or dead NICs
          occur, the work required from the cluster does not decrease - workloads from affected nodes need to be
          restarted somewhere.

          However some workloads, such as RWO volumes and StatefulSets, may require at-most-one semantics.
          Failures affecting these kind of workloads risk data loss and/or corruption if nodes (and the workloads
          running on them) are assumed to be dead whenever we stop hearing from them. For this reason it is important
          to know that the node has reached a safe state before initiating recovery of the workload.

          Unfortunately it is not always practical to require admin intervention in order to confirm the node’s true status.
          In order to automate the recovery of exclusive workloads, we provide operators for failure detection
          and remediation.

          ### Failure detection: Node Health Check operator
          The “Node Health Check” (NHC) operator checks each Node’s set of
          NodeConditions (eg. NotReady) against the criteria and thresholds defined in
          NodeHealthCheck configuration. If the Node is deemed to be in a failed
          state, NHC will initiate recovery by using the SIG Cluster API's “External
          Remediation” API to instantiate the configured remediation template which
          specifies the mechanism/controller to be used.

          ### Failure handling: External remediators
          There are multiple remediators for handling node failure that we recommend:
          - Self Node Remediation (SNR)
          - Fence Agents Remediation (FAR)
          - Machine Deletion Remediation (MDR)

          #### Self Node Remediation (SNR)
          SNR uses watchdog timers and heuristics to ensure nodes enter a safe state
          (no longer hosting workloads) within a known and finite period of time,
          before signaling to the system that all Pods on the failed Node are no longer active
          and can be relocated elsewhere.
          In the case of transient errors, the watchdog’s actions will also result in
          the node rebooting and rejoining the cluster - restoring capacity.

          #### Fence Agents Remediation (FAR)
          FAR uses well-known agents to fence unhealthy nodes, and eventually FAR remediates the nodes.
          The remediation includes rebooting the unhealthy node using a fence agent,
          and then evicting workloads from the unhealthy node.

          #### Machine Deletion Remediation (MDR)
          MDR is limited to OpenShift, and it uses Machine API for reprovisioning unhealthy nodes by deleting their machines.
        displayName: Node Health Check Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - NHC
        - Self Node Remediation
        - SNR
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance
        - name: Source Code
          url: https://github.com/medik8s/node-healthcheck-operator
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/node-healthcheck-must-gather-rhel9@sha256:6bfbfe36d4e01d1b320a6f8a3ffb2d937b7c2cdc17884d63a29f02c1e4e4d658
        - registry.redhat.io/workload-availability/node-healthcheck-rhel9-operator@sha256:f7ef379b374b824da311a2696351b5bd930717d193515f68f12040b40df8e75c
        - registry.redhat.io/workload-availability/node-remediation-console-rhel9@sha256:e476663624956f6c00387cac9e41129973718f8cb46129153d1e58a039357683
        - registry.redhat.io/workload-availability/node-healthcheck-operator-bundle@sha256:e60e749a273732fa4f3c570ecdb250f71e747b81fe379b5ffb75282d293032a8
        version: 0.10.1
      entries:
      - name: node-healthcheck-operator.v0.10.1
        version: 0.10.1
      - name: node-healthcheck-operator.v0.10.0
        version: 0.10.0
      - name: node-healthcheck-operator.v0.9.1
        version: 0.9.1
      - name: node-healthcheck-operator.v0.9.0
        version: 0.9.0
      name: stable
    defaultChannel: stable
    packageName: node-healthcheck-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CephCSI Community
      provider-url: ""
    name: cephcsi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cephcsi-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:50:12Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CephConnection
            name: cephconnections.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfileMapping
            name: clientprofilemappings.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfile
            name: clientprofiles.csi.ceph.io
            version: v1alpha1
          - kind: Driver
            name: drivers.csi.ceph.io
            version: v1alpha1
          - kind: OperatorConfig
            name: operatorconfigs.csi.ceph.io
            version: v1alpha1
        description: Operator to deploy ceph csi drivers.
        displayName: CephCSI operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: Github Repo
          url: https://github.com/ceph/ceph-csi-operator
        maintainers:
        - email: ceph-csi-team@redhat.com
          name: CephCSI Community
        maturity: alpha
        provider:
          name: CephCSI Community
        relatedImages:
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:1bc7b2785534ab8d8a9a00e81cdc961838a817df7c3c5d4de527b0e5eb697d9a
        - registry.redhat.io/odf4/cephcsi-rhel9-operator@sha256:55e3fb0c0f140fa98e90b639cb0bf933874977d5cebaef1b885150fde7dcc77a
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: cephcsi-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: cephcsi-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: cephcsi-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: cephcsi-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: cephcsi-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: cephcsi-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: cephcsi-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: cephcsi-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: cephcsi-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: cephcsi-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: cephcsi-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:35:25Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CephConnection
            name: cephconnections.csi.ceph.io
            version: v1
          - kind: CephConnection
            name: cephconnections.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfileMapping
            name: clientprofilemappings.csi.ceph.io
            version: v1
          - kind: ClientProfileMapping
            name: clientprofilemappings.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfile
            name: clientprofiles.csi.ceph.io
            version: v1
          - kind: ClientProfile
            name: clientprofiles.csi.ceph.io
            version: v1alpha1
          - kind: Driver
            name: drivers.csi.ceph.io
            version: v1
          - kind: Driver
            name: drivers.csi.ceph.io
            version: v1alpha1
          - kind: OperatorConfig
            name: operatorconfigs.csi.ceph.io
            version: v1
          - kind: OperatorConfig
            name: operatorconfigs.csi.ceph.io
            version: v1alpha1
        description: Operator to deploy ceph csi drivers.
        displayName: CephCSI operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: Github Repo
          url: https://github.com/ceph/ceph-csi-operator
        maintainers:
        - email: ceph-csi-team@redhat.com
          name: CephCSI Community
        maturity: alpha
        provider:
          name: CephCSI Community
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:87990cdf6adf9a27e9bf9a4d6935d6c7328939da223bc1d145b0991b2dfea25c
        - registry.redhat.io/odf4/cephcsi-rhel9-operator@sha256:4a25fab343836486ac80c25d69e3d5d1223911085a5e6a7240eecaa1ed7b952d
        version: 4.20.4-rhodf
      entries:
      - name: cephcsi-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: cephcsi-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: cephcsi-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: cephcsi-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: cephcsi-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: cephcsi-operator
    provider:
      name: CephCSI Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: o-cloud-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: o-cloud-manager.v4.20.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ClusterTemplate",
                "metadata": {
                  "name": "clustertemplate-sample.v1.0.0",
                  "namespace": "clustertemplate-a-v4-16-3"
                },
                "spec": {
                  "characteristics": {
                    "age": "31"
                  },
                  "description": "nice description",
                  "metadata": {
                    "apple": "23"
                  },
                  "name": "clustertemplate-a",
                  "release": "4.16.3",
                  "templateParameterSchema": {
                    "properties": {
                      "clusterInstanceParameters": {
                        "description": "clusterInstanceParameters defines the available parameters for cluster installation",
                        "properties": {
                          "additionalNTPSources": {
                            "description": "AdditionalNTPSources is a list of NTP sources (hostname or IP) to be added to all cluster hosts. They are added to any NTP sources that were configured through other means.",
                            "items": {
                              "type": "string"
                            },
                            "type": "array"
                          },
                          "apiVIPs": {
                            "description": "APIVIPs are the virtual IPs used to reach the OpenShift cluster's API. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "baseDomain": {
                            "description": "BaseDomain is the base domain to use for the deployed cluster.",
                            "type": "string"
                          },
                          "clusterName": {
                            "description": "ClusterName is the name of the cluster.",
                            "type": "string"
                          },
                          "extraAnnotations": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide annotations to be applied to the rendered templates",
                            "type": "object"
                          },
                          "extraLabels": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide labels to be applied to the rendered templates",
                            "type": "object"
                          },
                          "ingressVIPs": {
                            "description": "IngressVIPs are the virtual IPs used for cluster ingress traffic. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "machineNetwork": {
                            "description": "MachineNetwork is the list of IP address pools for machines.",
                            "items": {
                              "description": "MachineNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "nodes": {
                            "items": {
                              "description": "NodeSpec",
                              "properties": {
                                "extraAnnotations": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level annotations to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "extraLabels": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level labels to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "hostName": {
                                  "description": "Hostname is the desired hostname for the host",
                                  "type": "string"
                                },
                                "nodeLabels": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "NodeLabels allows the specification of custom roles for your nodes in your managed clusters. These are additional roles are not used by any OpenShift Container Platform components, only by the user. When you add a custom role, it can be associated with a custom machine config pool that references a specific configuration for that role. Adding custom labels or roles during installation makes the deployment process more effective and prevents the need for additional reboots after the installation is complete.",
                                  "type": "object"
                                },
                                "nodeNetwork": {
                                  "description": "NodeNetwork is a set of configurations pertaining to the network settings for the node.",
                                  "properties": {
                                    "config": {
                                      "description": "yaml that can be processed by nmstate, using custom marshaling/unmarshaling that will allow to populate nmstate config as plain yaml.",
                                      "type": "object",
                                      "x-kubernetes-preserve-unknown-fields": true
                                    }
                                  },
                                  "type": "object"
                                }
                              },
                              "required": [
                                "hostName"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "serviceNetwork": {
                            "description": "ServiceNetwork is the list of IP address pools for services.",
                            "items": {
                              "description": "ServiceNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "sshPublicKey": {
                            "description": "SSHPublicKey is the public Secure Shell (SSH) key to provide access to instances. This key will be added to the host to allow ssh access",
                            "type": "string"
                          }
                        },
                        "required": [
                          "clusterName",
                          "nodes"
                        ],
                        "type": "object"
                      },
                      "nodeClusterName": {
                        "type": "string"
                      },
                      "oCloudSiteId": {
                        "type": "string"
                      },
                      "policyTemplateParameters": {
                        "description": "policyTemplateParameters defines the available parameters for cluster configuration",
                        "properties": {
                          "cpu-isolated": {
                            "type": "string"
                          },
                          "cpu-reserved": {
                            "type": "string"
                          },
                          "hugepages-count": {
                            "type": "string"
                          },
                          "hugepages-default": {
                            "type": "string"
                          },
                          "hugepages-size": {
                            "type": "string"
                          },
                          "install-plan-approval": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-1": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-2": {
                            "type": "string"
                          },
                          "sriov-network-vlan-1": {
                            "type": "string"
                          },
                          "sriov-network-vlan-2": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "required": [
                      "nodeClusterName",
                      "oCloudSiteId",
                      "policyTemplateParameters",
                      "clusterInstanceParameters"
                    ],
                    "type": "object"
                  },
                  "templates": {
                    "clusterInstanceDefaults": "clustertemplate-sample.v1.0.0-clusterinstance-defaults",
                    "hwTemplate": "sample-hwtemplate-v1",
                    "policyTemplateDefaults": "clustertemplate-sample.v1.0.0-policytemplate-defaults",
                    "upgradeDefaults": "upgrade-defaults-v1"
                  },
                  "version": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwarePlugin",
                "metadata": {
                  "name": "metal3-hwplugin",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "apiRoot": "https://metal3-hardwareplugin-server.oran-o2ims.svc.cluster.local:8443",
                  "authClientConfig": {
                    "type": "ServiceAccount"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareProfile",
                "metadata": {
                  "name": "hardwareprofile-sample",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bios": {
                    "attributes": {
                      "SriovGlobalEnable": "Enabled",
                      "SysProfile": "Custom",
                      "WorkloadProfile": "TelcoOptimizedProfile"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareTemplate",
                "metadata": {
                  "name": "r740-blue-basic",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hardwareProvisioningTimeout": "60m",
                  "nodeGroupData": [
                    {
                      "hwProfile": "rh-profile-r740-bios-settings",
                      "name": "controller",
                      "resourceSelector": {
                        "resourceselector.clcm.openshift.io/server-colour": "blue",
                        "server-type": "R740"
                      },
                      "role": "master"
                    }
                  ]
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ProvisioningRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "provisioningrequest-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "provisioningrequest",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "123e4567-e89b-12d3-a456-426614174000"
                },
                "spec": {
                  "description": "Provisioning request for setting up a Single Node OpenShift (SNO) in the test environment.",
                  "name": "TestEnv-SNO-Provisioning-site-sno-du-1",
                  "templateName": "clustertemplate-sample",
                  "templateParameters": {
                    "clusterInstanceParameters": {
                      "additionalNTPSources": [
                        "NTP.server1",
                        "1.1.1.1"
                      ],
                      "apiVIPs": [
                        "192.0.2.2"
                      ],
                      "baseDomain": "example.com",
                      "clusterName": "site-sno-du-1",
                      "extraAnnotations": {
                        "AgentClusterInstall": {
                          "extra-annotation-key": "extra-annotation-value"
                        }
                      },
                      "extraLabels": {
                        "AgentClusterInstall": {
                          "extra-label-key": "extra-label-value"
                        },
                        "ManagedCluster": {
                          "cluster-version": "v4.16",
                          "clustertemplate-a-policy": "v1"
                        }
                      },
                      "ingressVIPs": [
                        "192.0.2.3"
                      ],
                      "machineNetwork": [
                        {
                          "cidr": "192.0.2.0/24"
                        }
                      ],
                      "nodes": [
                        {
                          "bootMode": "UEFI",
                          "extraAnnotations": {
                            "BareMetalHost": {
                              "extra-annotation-key": "extra-annotation-value"
                            }
                          },
                          "extraLabels": {
                            "BareMetalHost": {
                              "extra-label-key": "extra-label-value"
                            }
                          },
                          "hostName": "node1.baseDomain.com",
                          "nodeLabels": {
                            "node-role.kubernetes.io/infra": "",
                            "node-role.kubernetes.io/master": ""
                          },
                          "nodeNetwork": {
                            "config": {
                              "dns-resolver": {
                                "config": {
                                  "server": [
                                    "192.0.2.22"
                                  ]
                                }
                              },
                              "interfaces": [
                                {
                                  "ipv4": {
                                    "address": [
                                      {
                                        "ip": "192.0.2.10",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.11",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.12",
                                        "prefix-length": 24
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:601",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:602",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:603",
                                        "prefix-length": 64
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "name": "eno1",
                                  "type": "ethernet"
                                },
                                {
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:1302::100"
                                      }
                                    ],
                                    "enabled": true,
                                    "link-aggregation": {
                                      "mode": "balance-rr",
                                      "options": {
                                        "miimon": "140"
                                      },
                                      "slaves": [
                                        "eth0",
                                        "eth1"
                                      ]
                                    },
                                    "prefix-length": 64
                                  },
                                  "name": "bond99",
                                  "state": "up",
                                  "type": "bond"
                                }
                              ],
                              "routes": {
                                "config": [
                                  {
                                    "destination": "0.0.0.0/0",
                                    "next-hop-address": "192.0.2.254",
                                    "next-hop-interface": "eno1",
                                    "table-id": 254
                                  }
                                ]
                              }
                            }
                          }
                        }
                      ],
                      "serviceNetwork": [
                        {
                          "cidr": "233.252.0.0/24"
                        }
                      ],
                      "sshPublicKey": "ssh-rsa"
                    },
                    "nodeClusterName": "site-sno-du-1",
                    "oCloudSiteId": "local-west-12345",
                    "policyTemplateParameters": {
                      "sriov-network-vlan-1": "114",
                      "sriov-network-vlan-2": "111"
                    }
                  },
                  "templateVersion": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "ocloud.openshift.io/v1alpha1",
                "kind": "Inventory",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "inventory-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "inventory",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "default",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "caBundleName": "o2ims-custom-ca-certs",
                  "cloudID": "b7dcb3ff-583d-42d9-abb5-f484386fc688",
                  "ingress": {
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    }
                  },
                  "smo": {
                    "oauth": {
                      "clientSecretName": "oauth-client-secrets",
                      "groupsClaim": "roles",
                      "scopes": [
                        "openid",
                        "profile",
                        "role:ocloud-manager"
                      ],
                      "tokenEndpoint": "/protocol/openid-connect/token",
                      "url": "https://oauth.example.com:8443/realms/oran",
                      "usernameClaim": "preferred_username"
                    },
                    "registrationEndpoint": "/smo/v1/registration",
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    },
                    "url": "https://smo.example.com"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "AllocatedNode",
                "metadata": {
                  "name": "91c70863-8a83-422a-ab7a-a75f744d5210",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "groupName": "controller",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hwMgrNodeId": "r740xserver1",
                  "hwMgrNodeNs": "r740-pool",
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "nodeAllocationRequest": "metal3-b12f3e77848a4002bf40"
                },
                "status": {
                  "bmc": {
                    "address": "idrac-virtualmedia+https://127.0.0.1/redfish/v1/Systems/System.Embedded.1",
                    "credentialsName": "bmc-secret-r740xserver1"
                  },
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Provisioned",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "interfaces": [
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:19",
                      "name": "ens1f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1a",
                      "name": "ens3f1np1"
                    },
                    {
                      "label": "bootable-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1b",
                      "name": "eno1np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1c",
                      "name": "ens5f3"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1d",
                      "name": "ens5f1"
                    },
                    {
                      "label": "data-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1e",
                      "name": "eno2np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1f",
                      "name": "ens7f0np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:20",
                      "name": "ens7f1np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:21",
                      "name": "ens1f1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:22",
                      "name": "ens5f2"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:23",
                      "name": "ens5f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:24",
                      "name": "ens3f0np0"
                    }
                  ]
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "NodeAllocationRequest",
                "metadata": {
                  "name": "metal3-b12f3e77848a4002bf40",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "clusterId": "cluster1",
                  "configTransactionId": 1,
                  "hardwarePluginRef": "metal3-hwplugin",
                  "nodeGroup": [
                    {
                      "nodeGroupData": {
                        "hwProfile": "rh-profile-r740-bios-settings",
                        "name": "controller",
                        "resourceSelector": {
                          "resourceselector.clcm.openshift.io/server-colour": "blue",
                          "server-type": "R740"
                        },
                        "role": "master"
                      },
                      "size": 1
                    }
                  ],
                  "site": "ottawa"
                },
                "status": {
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Created",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwMgrPlugin": {
                    "observedGeneration": 1
                  },
                  "observedConfigTransactionId": 0,
                  "properties": {
                    "nodeNames": [
                      "91c70863-8a83-422a-ab7a-a75f744d5210"
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
          description: The O-Cloud Manager operator provides an implementation of
            the O-RAN O2 IMS API on top of OpenShift and ACM.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/oran-o2ims
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AllocatedNode is the schema for an allocated node
            displayName: Allocated Node
            kind: AllocatedNode
            name: allocatednodes.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ClusterTemplate is the Schema for the clustertemplates API
            displayName: Cluster Template
            kind: ClusterTemplate
            name: clustertemplates.clcm.openshift.io
            version: v1alpha1
          - description: HardwarePlugin is the Schema for the hardwareplugins API
            displayName: Hardware Plugin
            kind: HardwarePlugin
            name: hardwareplugins.clcm.openshift.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.clcm.openshift.io
            version: v1alpha1
          - description: HardwareTemplate is the Schema for the hardwaretemplates
              API
            displayName: Hardware Template
            kind: HardwareTemplate
            name: hardwaretemplates.clcm.openshift.io
            version: v1alpha1
          - description: Inventory is the Schema for the Inventory API
            displayName: O-Cloud Manager Inventory
            kind: Inventory
            name: inventories.ocloud.openshift.io
            version: v1alpha1
          - description: NodeAllocationRequest is the schema for an allocation request
              of nodes
            displayName: Node Allocation Request
            kind: NodeAllocationRequest
            name: nodeallocationrequests.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ProvisioningRequest is the Schema for the provisioningrequests
              API
            displayName: Provisioning Request
            kind: ProvisioningRequest
            name: provisioningrequests.clcm.openshift.io
            version: v1alpha1
        description: O-cloud manager operator
        displayName: o-cloud manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ORAN
        - O2IMS
        links:
        - name: Oran O2ims
          url: https://oran-o2ims.domain
        maintainers:
        - email: imihai@redhat.com
          name: IrinaMihai
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/o-cloud-manager-operator-bundle@sha256:d403352abf14d6553da6665e47342927500608f2646cb17eac80414f44320ae0
        - registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
        - registry.redhat.io/rhel9/postgresql-16@sha256:4f46bed6bce211be83c110a3452bd3f151a1e8ab150c58f2a02c56e9cc83db98
        version: 4.20.1
      entries:
      - name: o-cloud-manager.v4.20.1
        version: 4.20.1
      - name: o-cloud-manager.v4.20.0
        version: 4.20.0
      name: "4.20"
    - currentCSV: o-cloud-manager.v4.20.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ClusterTemplate",
                "metadata": {
                  "name": "clustertemplate-sample.v1.0.0",
                  "namespace": "clustertemplate-a-v4-16-3"
                },
                "spec": {
                  "characteristics": {
                    "age": "31"
                  },
                  "description": "nice description",
                  "metadata": {
                    "apple": "23"
                  },
                  "name": "clustertemplate-a",
                  "release": "4.16.3",
                  "templateParameterSchema": {
                    "properties": {
                      "clusterInstanceParameters": {
                        "description": "clusterInstanceParameters defines the available parameters for cluster installation",
                        "properties": {
                          "additionalNTPSources": {
                            "description": "AdditionalNTPSources is a list of NTP sources (hostname or IP) to be added to all cluster hosts. They are added to any NTP sources that were configured through other means.",
                            "items": {
                              "type": "string"
                            },
                            "type": "array"
                          },
                          "apiVIPs": {
                            "description": "APIVIPs are the virtual IPs used to reach the OpenShift cluster's API. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "baseDomain": {
                            "description": "BaseDomain is the base domain to use for the deployed cluster.",
                            "type": "string"
                          },
                          "clusterName": {
                            "description": "ClusterName is the name of the cluster.",
                            "type": "string"
                          },
                          "extraAnnotations": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide annotations to be applied to the rendered templates",
                            "type": "object"
                          },
                          "extraLabels": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide labels to be applied to the rendered templates",
                            "type": "object"
                          },
                          "ingressVIPs": {
                            "description": "IngressVIPs are the virtual IPs used for cluster ingress traffic. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "machineNetwork": {
                            "description": "MachineNetwork is the list of IP address pools for machines.",
                            "items": {
                              "description": "MachineNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "nodes": {
                            "items": {
                              "description": "NodeSpec",
                              "properties": {
                                "extraAnnotations": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level annotations to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "extraLabels": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level labels to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "hostName": {
                                  "description": "Hostname is the desired hostname for the host",
                                  "type": "string"
                                },
                                "nodeLabels": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "NodeLabels allows the specification of custom roles for your nodes in your managed clusters. These are additional roles are not used by any OpenShift Container Platform components, only by the user. When you add a custom role, it can be associated with a custom machine config pool that references a specific configuration for that role. Adding custom labels or roles during installation makes the deployment process more effective and prevents the need for additional reboots after the installation is complete.",
                                  "type": "object"
                                },
                                "nodeNetwork": {
                                  "description": "NodeNetwork is a set of configurations pertaining to the network settings for the node.",
                                  "properties": {
                                    "config": {
                                      "description": "yaml that can be processed by nmstate, using custom marshaling/unmarshaling that will allow to populate nmstate config as plain yaml.",
                                      "type": "object",
                                      "x-kubernetes-preserve-unknown-fields": true
                                    }
                                  },
                                  "type": "object"
                                }
                              },
                              "required": [
                                "hostName"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "serviceNetwork": {
                            "description": "ServiceNetwork is the list of IP address pools for services.",
                            "items": {
                              "description": "ServiceNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "sshPublicKey": {
                            "description": "SSHPublicKey is the public Secure Shell (SSH) key to provide access to instances. This key will be added to the host to allow ssh access",
                            "type": "string"
                          }
                        },
                        "required": [
                          "clusterName",
                          "nodes"
                        ],
                        "type": "object"
                      },
                      "nodeClusterName": {
                        "type": "string"
                      },
                      "oCloudSiteId": {
                        "type": "string"
                      },
                      "policyTemplateParameters": {
                        "description": "policyTemplateParameters defines the available parameters for cluster configuration",
                        "properties": {
                          "cpu-isolated": {
                            "type": "string"
                          },
                          "cpu-reserved": {
                            "type": "string"
                          },
                          "hugepages-count": {
                            "type": "string"
                          },
                          "hugepages-default": {
                            "type": "string"
                          },
                          "hugepages-size": {
                            "type": "string"
                          },
                          "install-plan-approval": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-1": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-2": {
                            "type": "string"
                          },
                          "sriov-network-vlan-1": {
                            "type": "string"
                          },
                          "sriov-network-vlan-2": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "required": [
                      "nodeClusterName",
                      "oCloudSiteId",
                      "policyTemplateParameters",
                      "clusterInstanceParameters"
                    ],
                    "type": "object"
                  },
                  "templates": {
                    "clusterInstanceDefaults": "clustertemplate-sample.v1.0.0-clusterinstance-defaults",
                    "hwTemplate": "sample-hwtemplate-v1",
                    "policyTemplateDefaults": "clustertemplate-sample.v1.0.0-policytemplate-defaults",
                    "upgradeDefaults": "upgrade-defaults-v1"
                  },
                  "version": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwarePlugin",
                "metadata": {
                  "name": "metal3-hwplugin",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "apiRoot": "https://metal3-hardwareplugin-server.oran-o2ims.svc.cluster.local:8443",
                  "authClientConfig": {
                    "type": "ServiceAccount"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareProfile",
                "metadata": {
                  "name": "hardwareprofile-sample",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bios": {
                    "attributes": {
                      "SriovGlobalEnable": "Enabled",
                      "SysProfile": "Custom",
                      "WorkloadProfile": "TelcoOptimizedProfile"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareTemplate",
                "metadata": {
                  "name": "r740-blue-basic",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hardwareProvisioningTimeout": "60m",
                  "nodeGroupData": [
                    {
                      "hwProfile": "rh-profile-r740-bios-settings",
                      "name": "controller",
                      "resourceSelector": {
                        "resourceselector.clcm.openshift.io/server-colour": "blue",
                        "server-type": "R740"
                      },
                      "role": "master"
                    }
                  ]
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ProvisioningRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "provisioningrequest-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "provisioningrequest",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "123e4567-e89b-12d3-a456-426614174000"
                },
                "spec": {
                  "description": "Provisioning request for setting up a Single Node OpenShift (SNO) in the test environment.",
                  "name": "TestEnv-SNO-Provisioning-site-sno-du-1",
                  "templateName": "clustertemplate-sample",
                  "templateParameters": {
                    "clusterInstanceParameters": {
                      "additionalNTPSources": [
                        "NTP.server1",
                        "1.1.1.1"
                      ],
                      "apiVIPs": [
                        "192.0.2.2"
                      ],
                      "baseDomain": "example.com",
                      "clusterName": "site-sno-du-1",
                      "extraAnnotations": {
                        "AgentClusterInstall": {
                          "extra-annotation-key": "extra-annotation-value"
                        }
                      },
                      "extraLabels": {
                        "AgentClusterInstall": {
                          "extra-label-key": "extra-label-value"
                        },
                        "ManagedCluster": {
                          "cluster-version": "v4.16",
                          "clustertemplate-a-policy": "v1"
                        }
                      },
                      "ingressVIPs": [
                        "192.0.2.3"
                      ],
                      "machineNetwork": [
                        {
                          "cidr": "192.0.2.0/24"
                        }
                      ],
                      "nodes": [
                        {
                          "bootMode": "UEFI",
                          "extraAnnotations": {
                            "BareMetalHost": {
                              "extra-annotation-key": "extra-annotation-value"
                            }
                          },
                          "extraLabels": {
                            "BareMetalHost": {
                              "extra-label-key": "extra-label-value"
                            }
                          },
                          "hostName": "node1.baseDomain.com",
                          "nodeLabels": {
                            "node-role.kubernetes.io/infra": "",
                            "node-role.kubernetes.io/master": ""
                          },
                          "nodeNetwork": {
                            "config": {
                              "dns-resolver": {
                                "config": {
                                  "server": [
                                    "192.0.2.22"
                                  ]
                                }
                              },
                              "interfaces": [
                                {
                                  "ipv4": {
                                    "address": [
                                      {
                                        "ip": "192.0.2.10",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.11",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.12",
                                        "prefix-length": 24
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:601",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:602",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:603",
                                        "prefix-length": 64
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "name": "eno1",
                                  "type": "ethernet"
                                },
                                {
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:1302::100"
                                      }
                                    ],
                                    "enabled": true,
                                    "link-aggregation": {
                                      "mode": "balance-rr",
                                      "options": {
                                        "miimon": "140"
                                      },
                                      "slaves": [
                                        "eth0",
                                        "eth1"
                                      ]
                                    },
                                    "prefix-length": 64
                                  },
                                  "name": "bond99",
                                  "state": "up",
                                  "type": "bond"
                                }
                              ],
                              "routes": {
                                "config": [
                                  {
                                    "destination": "0.0.0.0/0",
                                    "next-hop-address": "192.0.2.254",
                                    "next-hop-interface": "eno1",
                                    "table-id": 254
                                  }
                                ]
                              }
                            }
                          }
                        }
                      ],
                      "serviceNetwork": [
                        {
                          "cidr": "233.252.0.0/24"
                        }
                      ],
                      "sshPublicKey": "ssh-rsa"
                    },
                    "nodeClusterName": "site-sno-du-1",
                    "oCloudSiteId": "local-west-12345",
                    "policyTemplateParameters": {
                      "sriov-network-vlan-1": "114",
                      "sriov-network-vlan-2": "111"
                    }
                  },
                  "templateVersion": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "ocloud.openshift.io/v1alpha1",
                "kind": "Inventory",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "inventory-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "inventory",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "default",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "caBundleName": "o2ims-custom-ca-certs",
                  "cloudID": "b7dcb3ff-583d-42d9-abb5-f484386fc688",
                  "ingress": {
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    }
                  },
                  "smo": {
                    "oauth": {
                      "clientSecretName": "oauth-client-secrets",
                      "groupsClaim": "roles",
                      "scopes": [
                        "openid",
                        "profile",
                        "role:ocloud-manager"
                      ],
                      "tokenEndpoint": "/protocol/openid-connect/token",
                      "url": "https://oauth.example.com:8443/realms/oran",
                      "usernameClaim": "preferred_username"
                    },
                    "registrationEndpoint": "/smo/v1/registration",
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    },
                    "url": "https://smo.example.com"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "AllocatedNode",
                "metadata": {
                  "name": "91c70863-8a83-422a-ab7a-a75f744d5210",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "groupName": "controller",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hwMgrNodeId": "r740xserver1",
                  "hwMgrNodeNs": "r740-pool",
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "nodeAllocationRequest": "metal3-b12f3e77848a4002bf40"
                },
                "status": {
                  "bmc": {
                    "address": "idrac-virtualmedia+https://127.0.0.1/redfish/v1/Systems/System.Embedded.1",
                    "credentialsName": "bmc-secret-r740xserver1"
                  },
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Provisioned",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "interfaces": [
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:19",
                      "name": "ens1f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1a",
                      "name": "ens3f1np1"
                    },
                    {
                      "label": "bootable-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1b",
                      "name": "eno1np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1c",
                      "name": "ens5f3"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1d",
                      "name": "ens5f1"
                    },
                    {
                      "label": "data-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1e",
                      "name": "eno2np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1f",
                      "name": "ens7f0np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:20",
                      "name": "ens7f1np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:21",
                      "name": "ens1f1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:22",
                      "name": "ens5f2"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:23",
                      "name": "ens5f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:24",
                      "name": "ens3f0np0"
                    }
                  ]
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "NodeAllocationRequest",
                "metadata": {
                  "name": "metal3-b12f3e77848a4002bf40",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "clusterId": "cluster1",
                  "configTransactionId": 1,
                  "hardwarePluginRef": "metal3-hwplugin",
                  "nodeGroup": [
                    {
                      "nodeGroupData": {
                        "hwProfile": "rh-profile-r740-bios-settings",
                        "name": "controller",
                        "resourceSelector": {
                          "resourceselector.clcm.openshift.io/server-colour": "blue",
                          "server-type": "R740"
                        },
                        "role": "master"
                      },
                      "size": 1
                    }
                  ],
                  "site": "ottawa"
                },
                "status": {
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Created",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwMgrPlugin": {
                    "observedGeneration": 1
                  },
                  "observedConfigTransactionId": 0,
                  "properties": {
                    "nodeNames": [
                      "91c70863-8a83-422a-ab7a-a75f744d5210"
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
          description: The O-Cloud Manager operator provides an implementation of
            the O-RAN O2 IMS API on top of OpenShift and ACM.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/oran-o2ims
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AllocatedNode is the schema for an allocated node
            displayName: Allocated Node
            kind: AllocatedNode
            name: allocatednodes.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ClusterTemplate is the Schema for the clustertemplates API
            displayName: Cluster Template
            kind: ClusterTemplate
            name: clustertemplates.clcm.openshift.io
            version: v1alpha1
          - description: HardwarePlugin is the Schema for the hardwareplugins API
            displayName: Hardware Plugin
            kind: HardwarePlugin
            name: hardwareplugins.clcm.openshift.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.clcm.openshift.io
            version: v1alpha1
          - description: HardwareTemplate is the Schema for the hardwaretemplates
              API
            displayName: Hardware Template
            kind: HardwareTemplate
            name: hardwaretemplates.clcm.openshift.io
            version: v1alpha1
          - description: Inventory is the Schema for the Inventory API
            displayName: O-Cloud Manager Inventory
            kind: Inventory
            name: inventories.ocloud.openshift.io
            version: v1alpha1
          - description: NodeAllocationRequest is the schema for an allocation request
              of nodes
            displayName: Node Allocation Request
            kind: NodeAllocationRequest
            name: nodeallocationrequests.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ProvisioningRequest is the Schema for the provisioningrequests
              API
            displayName: Provisioning Request
            kind: ProvisioningRequest
            name: provisioningrequests.clcm.openshift.io
            version: v1alpha1
        description: O-cloud manager operator
        displayName: o-cloud manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ORAN
        - O2IMS
        links:
        - name: Oran O2ims
          url: https://oran-o2ims.domain
        maintainers:
        - email: imihai@redhat.com
          name: IrinaMihai
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
        - registry.redhat.io/rhel9/postgresql-16@sha256:4f46bed6bce211be83c110a3452bd3f151a1e8ab150c58f2a02c56e9cc83db98
        - registry.redhat.io/openshift4/o-cloud-manager-operator-bundle@sha256:d403352abf14d6553da6665e47342927500608f2646cb17eac80414f44320ae0
        version: 4.20.1
      entries:
      - name: o-cloud-manager.v4.20.1
        version: 4.20.1
      - name: o-cloud-manager.v4.20.0
        version: 4.20.0
      name: stable
    defaultChannel: stable
    packageName: o-cloud-manager
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: ibmcloud-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibmcloud-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"ibmcloud.ibm.com/v1","kind":"Service","metadata":{"annotations":{"ibmcloud.ibm.com/self-healing":"enabled"},"name":"mytranslator"},"spec":{"plan":"lite","serviceClass":"language-translator"}},{"apiVersion":"ibmcloud.ibm.com/v1","kind":"Binding","metadata":{"name":"binding-translator"},"spec":{"parameters":[{"name":"serviceid_crn","value":"crn:v1:bluemix:public:iam-identity::a/ACCOUNT_ID::serviceid:SERVICE_ID"}],"secretName":"translator-secret","serviceName":"mytranslator"}}]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: cloudoperators/ibmcloud-operator:1.1.0
          createdAt: "2022-03-17T04:17:40Z"
          description: The IBM Cloud Operator provides a Kubernetes CRD-Based API
            to manage the lifecycle of IBM public cloud services.
          repository: https://github.com/IBM/cloud-operators
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Binding is an instance of a service binding resource on IBM
              Cloud. A Binding creates a secret with the service instance credentials.
            displayName: Binding
            kind: Binding
            name: bindings.ibmcloud.ibm.com
            version: v1
          - description: Service is an instance of a Service resource on IBM Cloud.
            displayName: Service
            kind: Service
            name: services.ibmcloud.ibm.com
            version: v1
        description: |-
          With the IBM Cloud Operator, you can provision and bind [IBM public cloud services](https://cloud.ibm.com/catalog#services) to your Kubernetes cluster in a Kubernetes-native way. The IBM Cloud Operator is based on the [Kubernetes custom resource definition (CRD) API](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) so that your applications can create, update, and delete IBM Cloud services from within the cluster by calling Kubnernetes APIs, instead of needing to use several IBM Cloud APIs in addition to configuring your app for Kubernetes.


          ## Features

          * **Service provisioning**: Create any service with any plan that is available in the [IBM Cloud catalog](https://cloud.ibm.com/catalog#services).

          * **Bindings management**: Automatically create Kubernetes secrets in your Kubernetes cluster with the credentials to bind to any provisioned service to the cluster.


          ## Upgrading the operator


          To upgrade an OperatorHub installation, use the OpenShift web console to perform the upgrade. If upgrading from the `alpha` channel subscription to `stable`, follow the additional upgrade instructions below.

          ### Upgrading to version v0.3 or v1.0
          **IMPORTANT NOTICE:** v0.1 and v0.2 used a different naming scheme for secrets and configmaps. Before you update the IBM Cloud Operator, create secret and configmap resources with these names and copy the contents of your previous resources to the new resources. Then, the upgraded operator recognizes and continues to update the resources.

          Existing `Service` and `Binding` resources **do not** need modification for the upgrade.

          | Previous names (v0.1 and v0.2)         | **Current names (v0.3 and v1.0)**             | Description                                                                           |
          |:---------------------------------------|:--------------------------------------------|:--------------------------------------------------------------------------------------|
          | secret-ibm-cloud-operator              | **ibmcloud-operator-secret**                | Secret with the API key, scoped to the namespace.                                     |
          | config-ibm-cloud-operator              | **ibmcloud-operator-defaults**              | ConfigMap with the default values for new resources.                                  |
          | ibm-cloud-operator                     | **ibmcloud-operator-config**                | ConfigMap with the management namespace configuration.                                |
          | ${namespace}-secret-ibm-cloud-operator | **${namespace}-ibmcloud-operator-secret**   | Management namespace Secret with the API key for ${namespace}.                        |
          | ${namespace}-config-ibm-cloud-operator | **${namespace}-ibmcloud-operator-defaults** | Management namespace ConfigMap with default values for new resources in ${namespace}. |

          **Tip:** Forgot to update the secret and configmap names before upgrading? The operator will not take action on Service and Binding resources until the new secrets and configmaps have been created. Creating these after the upgrade will also work.


          ### OperatorHub stable channel
          Continuous updates and bug fixes are provided in the latest stable channel. Subscribing to the `stable` channel in OperatorHub means you automatically get the latest updates without breaking backward compatibility.

          ### Changelog

          For a list of recent changes, see the [releases page](https://github.com/IBM/cloud-operators/releases).


          ## Prerequisites

          1.  Have an [IBM Cloud account](https://cloud.ibm.com/registration).
          2.  Have a cluster that runs Kubernetes version 1.11 or later (OpenShift 3.11 or later).
          3.  Install the required command line tools.
              *   [IBM Cloud CLI](https://cloud.ibm.com/docs/cli?topic=cloud-cli-getting-started) (`ibmcloud`)
              *   [Kubernetes CLI](https://kubernetes.io/docs/tasks/tools/install-kubectl/) (`kubectl`)
          4.  Log in to your IBM Cloud account from the CLI.

              ```bash
              ibmcloud login
              ```

          5.  Target the appropriate resource group (`-g`) and default region (`-r`) for provisioning services:

              ```bash
              ibmcloud target -g default -r us-south
              ```

          6.  If you also want to provision Cloud Foundry services, target the appropriate `org` and `space` (`--cf`).

              ```bash
              ibmcloud target --cf
              ```

          7.  Set the Kubernetes context of your CLI to your cluster so that you can run `kubectl` commands. For example, if your cluster runs OpenShift, use the `oc login` command.


          ## Setting up the operator

          You can use an installation script to set up the IBM Cloud Operator.
          By default, the installation script stores an API key in a Kubernetes secret in your cluster that can be accessed by the IBM Cloud Operator.
          Next, the script sets default values that are used to provision IBM Cloud services, like the resource group and region to provision the services in. Later, you can override any default value in the `Service` custom resource. Finally, the script deploys the operator in your cluster.

          To use your own API key, set the `IBMCLOUD_API_KEY` environment variable to the key before running the installation script:

              export IBMCLOUD_API_KEY="CUSTOM_API_KEY"

          If installed with Operator Hub, the operator will run in the `openshift-operators` namespace. Otherwise, it will run in the `ibmcloud-operator-system` namespace.

          Prefer to create the secrets and defaults yourself? See the [IBM Cloud Operator installation guide](https://github.com/IBM/cloud-operators/blob/master/docs/install.md).

          ### Using a service ID

          By default, the installation script creates an IBM Cloud API key that impersonates your user credentials, to use to set up the IBM Cloud Operator. However, you might want to create a service ID in IBM Cloud Identity and Access Managment (IAM). By using a service ID, you can control access for the IBM Cloud Operator without having the permissions tied to a particular user, such as if that user leaves the company. For more information, see the [IBM Cloud docs](https://cloud.ibm.com/docs/account?topic=account-serviceids).

          1.  Create a service ID in IBM Cloud IAM. If possible, do not use spaces in the names for your IAM credentials. When you use the operator binding feature, any spaces are replaced with underscores.

              ```bash
              ibmcloud iam service-id-create serviceid-ico -d service-ID-for-ibm-cloud-operator
              ```

          2.  Assign the service ID access to the required permissions to work with the IBM Cloud services that you want the operator to manage. The required permissions vary with each IBM Cloud service. You can also scope an access policy to different regions or resource groups. For example, the following command grants the service ID the **Administrator** platform role in the default resource group in the US South (Dallas) region. For more information, see the [IBM Cloud docs](https://cloud.ibm.com/docs/account?topic=account-userroles).

              ```bash
              ibmcloud iam service-policy-create serviceid-ico --roles Administrator --resource-group-name default --region us-south
              ```

          3.  Create an API key for the service ID.

              ```bash
              ibmcloud iam service-api-key-create apikey-ico serviceid-ico -d api-key-for-ibm-cloud-operator
              ```

          4.  Set the API key of the service ID as your CLI environment variable. Now, when you run the installation script, the script uses the service ID's API key. The following command is an example for macOS.

              ```bash
              export IBMCLOUD_API_KEY=<apikey-ico-value>
              ```

          5.  Confirm that the API key environment variable is set in your CLI.

              ```bash
              echo $IBMCLOUD_API_KEY
              ```

          6.  Follow the [prerequisite steps](https://github.com/IBM/cloud-operators/blob/master/README.md#prerequisites) to log in to the IBM Cloud account that owns the service ID.


          ### Installing the operator for OpenShift clusters

          Before you begin, complete the [prerequisite steps](https://github.com/IBM/cloud-operators/blob/master/README.md#prerequisites) to log in to IBM Cloud and your cluster, and optionally set up a [service ID API key](https://github.com/IBM/cloud-operators/blob/master/README.md#using-a-service-id).

          To configure the latest release for OpenShift before installing via the OperatorHub, run the following script:

          *   **Latest release**:

              ```bash
              curl -sL https://raw.githubusercontent.com/IBM/cloud-operators/master/hack/configure-operator.sh | bash
              ```

          *   **Specific release**: Replace `-v 0.0.0` with the specific version that you want to install.

              ```bash
              curl -sL https://raw.githubusercontent.com/IBM/cloud-operators/master/hack/configure-operator.sh | bash -s -- -v 0.0.0 store-creds
              ```


          ## Using the IBM Cloud Operator

          To use the IBM Cloud Operator, create a service instance and then bind the service to your cluster. For more information, see the [sample configuration files](https://github.com/IBM/cloud-operators/blob/master/config/samples), [user guide](https://github.com/IBM/cloud-operators/blob/master/docs/user-guide.md), and [reference documentation](https://github.com/IBM/cloud-operators/blob/master/README.md#reference).

          #### Step 1: Creating a service instance

          1.  To create an instance of an IBM public cloud service, first create a `Service` custom resource file. For more options, see the [Service properties](https://github.com/IBM/cloud-operators/blob/master/README.md#service-properties) reference doc.
              *   `<SERVICE_CLASS>` is the IBM Cloud service that you want to create. To list IBM Cloud services, run `ibmcloud catalog service-marketplace` and use the **Name** value from the output.
              *   `<PLAN>` is the plan for the IBM Cloud service that you want to create, such as `free` or `standard`. To list available plans, run `ibmcloud catalog service <SERVICE_CLASS> | grep plan`.

              ```yaml
              apiVersion: ibmcloud.ibm.com/v1
              kind: Service
              metadata:
                  name: myservice
              spec:
                  plan: <PLAN>
                  serviceClass: <SERVICE_CLASS>
              ```

          2.  Create the service instance in your cluster.

              ```bash
              kubectl apply -f filepath/myservice.yaml
              ```

          3.  Check that your service status is **Online** in your cluster.

              ```bash
              kubectl get services.ibmcloud
              NAME           STATUS   AGE
              myservice      Online   12s
              ```

          4.  Verify that your service instance is created in IBM Cloud.

              ```bash
              ibmcloud resource service-instances | grep myservice
              ```

          #### Step 2: Binding the service instance

          1.  To bind your service to the cluster so that your apps can use the service, create a `Binding` custom resource, where the `serviceName` field is the name of the `Service` custom resource that you previously created. For more options, see [Binding properties](https://github.com/IBM/cloud-operators/blob/master/README.md#binding-properties).

              ```yaml
              apiVersion: ibmcloud.ibm.com/v1
              kind: Binding
              metadata:
                  name: mybinding
              spec:
                  serviceName: myservice
              ```

          2.  Create the binding in your cluster.

              ```bash
              kubectl apply -f filepath/mybinding.yaml
              ```

          3.  Check that your service status is **Online**.

              ```bash
              kubectl get bindings.ibmcloud
              NAME         STATUS   AGE
              mybinding    Online   25s
              ```

          4.  Check that a secret of the same name as your binding is created. The secret contains the service credentials that apps in your cluster can use to access the service.

              ```bash
              kubectl get secrets
              NAME         TYPE      DATA   AGE
              mybinding    Opaque    6      102s
              ```
        displayName: IBM Cloud Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - IBM
        - Cloud
        links:
        - name: Source on GitHub
          url: https://github.com/ibm/cloud-operators
        maintainers:
        - email: johnstarich@johnstarich.com
          name: John Starich
        - email: mvaziri@us.ibm.com
          name: vazirim
        - email: greg.lanthier@ca.ibm.com
          name: Greg Lanthier
        - email: halacs@users.noreply.github.com
          name: Halacs
        - email: artberger@users.noreply.github.com
          name: Art
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: IBM
        relatedImages:
        - cloudoperators/ibmcloud-operator:1.1.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/openshift-community-operators/ibmcloud-operator@sha256:b22e89daf6b7f0fd55ba6db7eb7d7a48cbaef2844dfe20e558d7b821482e9480
        version: 1.1.0
      entries:
      - name: ibmcloud-operator.v1.1.0
        version: 1.1.0
      name: stable
    defaultChannel: stable
    packageName: ibmcloud-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: dns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dns-operator.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSRecord",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dns-operator",
                    "app.kubernetes.io/instance": "dnsrecord-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dnsrecord",
                    "app.kubernetes.io/part-of": "dns-operator"
                  },
                  "name": "dnsrecord-sample"
                },
                "spec": {
                  "endpoints": [
                    {
                      "dnsName": "dnsrecord-simple.example.com",
                      "recordTTL": 60,
                      "recordType": "A",
                      "targets": [
                        "52.215.108.61",
                        "52.30.101.221"
                      ]
                    }
                  ],
                  "providerRef": {
                    "name": "dns-provider-creds"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/dns-operator:v0.6.0
          createdAt: "2024-09-13T09:55:39Z"
          description: A Kubernetes Operator to manage the lifecycle of DNS resources
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kuadrant/dns-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DNSRecord is the Schema for the dnsrecords API
            displayName: DNSRecord
            kind: DNSRecord
            name: dnsrecords.kuadrant.io
            version: v1alpha1
        description: A Kubernetes Operator to manage the lifecycle of DNS resources
        displayName: DNS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dns
        - kuadrant
        links:
        - name: DNS Operator
          url: https://github.com/Kuadrant/dns-operator
        maintainers:
        - email: mnairn@redhat.com
          name: Michael Nairn
        - email: pbrookes@redhat.com
          name: Phil Brookes
        - email: cbrookes@redhat.com
          name: Craig Brookes
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/dns-operator@sha256:d5eadbf006aade69ac18156c891614da899d0779ba9e8fbaf755a256c46f055c
        - quay.io/kuadrant/dns-operator:v0.6.0
        version: 0.6.0
      entries:
      - name: dns-operator.v0.6.0
        version: 0.6.0
      name: stable
    defaultChannel: stable
    packageName: dns-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: sosivio
      provider-url: https://www.sosiv.io
    name: sosivio
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sosivio-operator.v1.5.1-97
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sosivio.sosiv.io/v1alpha1",
                "kind": "Sosivio",
                "metadata": {
                  "name": "sosivio"
                },
                "spec": {
                  "platform": "ocp4",
                  "useSha": false
                }
              },
              {
                "apiVersion": "sosivio.sosiv.io/v1alpha1",
                "kind": "Sosivio",
                "metadata": {
                  "name": "sosivio"
                },
                "spec": {
                  "platform": "ocp4",
                  "useSha": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Monitoring,Integration & Delivery,Logging & Tracing,Developer
            Tools
          com.redhat.openshift.versions: v4.1-v4.1
          containerImage: quay.io/sosivio/sosivio-operator:v1.5.1-97
          createdAt: "2021-10-28 01:01:01"
          description: Sosivio | Predictive Troubleshooting for Kubernetes
          operatorhub.io/ui-metadata-max-k8s-version: "1.25"
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Sosivio/operator
          support: Sosivio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Sosivio is the Schema for the sosivios API
            displayName: Sosivio
            kind: Sosivio
            name: sosivios.sosivio.sosiv.io
            version: v1alpha1
        description: "# Sosivio Operator\nThe Sosivio Operator for RedHat’s Openshift
          Container Platform allows users to quickly and easily deploy Sosivio’s Kubernetes
          Predictive Troubleshooting Platform on your cluster.\n\n# Sosivio Overview\n\nSosivio
          is the first and only non-intrusive and predictive autonomous cloud-native
          platform built specifically for Kubernetes from the ground up. Sosivio provides
          predictive troubleshooting tools, root cause determination and instant remediation
          for any failures in Kubernetes environments.\n\nPredict and Prevent!\n\nThe
          Operator will deploy and manage Sosivio on Kubernetes and OpenShift. Included
          are the following features;\n-   **Root Cause Analysis and Remediation**
          - predictive troubleshooting to prevent failures before they occur. Instantly
          understand where the root cause is and how to fix it.\n-   **Application
          Profiling** - analyze container resource consumption and recommendations
          for requests and limits.\n-   **Real-time Metrics** - in-depth, granular,
          and accurate real-time data from the process level inside containers (and
          pods) with failure correlation.\n-   **Cluster Health Checks** - proactive
          health checks for cluster infrastructure and applications running on the
          cluster.\n-   **Multi-Cluster View** - management, monitoring, and maintenance
          capabilities for all clusters from one location. \n-   **Kubernetes Components
          Alerting** - notifications sent through Slack, email and other 3rd party
          platforms.\n\n# Installation\nSosivio is completely **non-intrusive** and
          **does not require any persistent storage**. There is **no data offloading**
          outside of your Kubernetes cluster. Applying our Data Swirling methodology
          enables the product to perform at a **remarkably low resource footprint**
          and requires **no persistent volume configurations**.\n\n\nSosivio is installed
          under one namespace (labeled: \"sosivio\") which creates all the required
          components for the product.\n\nAll users will start with 4 weeks of Sosivio
          Premium after which Sosivio will automatically convert to the Community
          Version (free forever).\n\n# Help\nMore information about Sosivio and our
          product usage instructions can be found in our documentation [here](https://docs.sosiv.io/)
          \ \n"
        displayName: Sosivio | Predictive Troubleshooting for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sosivio
        - kubernetes
        - observanility
        - monitoring
        - root cause
        links:
        - name: Sosivio
          url: https://www.sosiv.io
        - name: Documentation
          url: https://docs.sosiv.io
        maintainers:
        - email: info@sosiv.io
          name: Sosivio
        maturity: stable
        minKubeVersion: 1.11.0
        provider:
          name: sosivio
          url: https://www.sosiv.io
        relatedImages:
        - quay.io/sosivio/sosivio-dashboard@sha256:fdfca5bb2123d1008cec2b656cde73c7e9364f84c5ff4f4a6fee5751b1bfb2f8
        - quay.io/sosivio/classifier@sha256:dd8bf145524db23ff333efa1bcdff258dab116d3534f95f73775d8dd339e6963
        - quay.io/sosivio/kube-rbac-proxy:v0.8.0
        - quay.io/sosivio/sosivio-operator@sha256:11bc627773bb5e08b629e0b013e7f600fcb4aaefbd97f2de337d339475616763
        - quay.io/sosivio/sosivio-node-pinger@sha256:937de52ad7b76e6cff4ad5197de9705988d61f285ebadac5ebadb5856f59ee58
        - quay.io/openshift-community-operators/sosivio@sha256:110d7f4fb993d65ff497eca57c42206faab07dc5f5b1f43b1b682387e7cd3a10
        - quay.io/sosivio/correlation-entities@sha256:c00af09b2589bad4740fd44d7a81c69b2e29138c360939b2a45f65edd44b6901
        - quay.io/sosivio/kube-rbac-proxy@sha256:34e8724e0f47e31eb2ec3279ac398b657db5f60f167426ee73138e2e84af6486
        - quay.io/sosivio/sosivio-node-collector@sha256:61ed8dd52de5edc09d16a31b18f2f65ad9344c0b6c9cfab323c3eb3d7e7ed060
        - quay.io/sosivio/crud-manager@sha256:38289a28829fa737917d76dd4810ba6140e123061ead0a4b79fa79b2e246a293
        - quay.io/sosivio/analyzer@sha256:3825608fe7c43ef059108e76665acc99fe72bea77d4d9e3852f6ad45e74379b1
        - quay.io/sosivio/notifier@sha256:35f5f3e8e5ccad914fcfe34fb4b4a1b044ee87f5a6141284cd5273f0b2b3bf22
        - quay.io/sosivio/contract-testing@sha256:cad6fac6ed3fdf2597ceb09ba5dbb7d81f70cf45f483a7064e3968215dd982e3
        - quay.io/sosivio/network-aggregator@sha256:e59d937f4d9c52acad0adadab39c6849d20b4ee72a83e239a33ea137f08323f4
        - quay.io/sosivio/nsq@sha256:781aac23ef0a1ed0af2b8e93d625ae49bd11dbdd98787d3c79dde8d128f3810d
        - quay.io/sosivio/communicator@sha256:fffec9a6c66594fde5f05e2dfb84361544ca9d53a345188c197a0ea6f53bc4b9
        - quay.io/sosivio/sosiviodb@sha256:a3c6c3975bc2b0316135ee5c547f1eb215f3a1f9c8b0a9c8eceff23415f93597
        - quay.io/sosivio/sequence-recognition@sha256:7335cf8f3e40bc46e8ca0de525d99f0655833b7c52d36dc273aa7b096eb70fa2
        - quay.io/sosivio/sosivio-operator:v1.5.1-97
        - quay.io/sosivio/actuator@sha256:a9abe9730800ca2b0a1bbd7a361b2ab3a818cbf127798314e5477fb1cb16ba4c
        - quay.io/sosivio/authentication@sha256:0ea6025f333576792f5b1fc4d96d9ab1a404749f185830410e71248683004da2
        - quay.io/sosivio/sosivio-node-netpacket@sha256:84dd159b1dfdb52dee3eb1c4c93f323bae49ce517ff44663b69978e14bdd8390
        - quay.io/sosivio/discovery-engine@sha256:b87b3f7c9ed3aed80d0a77788fd8925789450d9dc05d25017e89dff611cd82da
        version: 1.5.1
      entries:
      - name: sosivio-operator.v1.5.1-97
        version: 1.5.1
      - name: sosivio-operator.v1.5.0-95
        version: 1.5.0
      - name: sosivio-operator.v1.4.4-85
        version: 1.4.4
      - name: sosivio-operator.v1.4.3-83
        version: 1.4.3
      - name: sosivio-operator.v1.4.2-82
        version: 1.4.2
      - name: sosivio-operator.v1.4.1-81
        version: 1.4.1-81
      - name: sosivio-operator.v1.4.1.1-80
        version: 1.4.1-80
      - name: sosivio-operator.v1.4.1-78
        version: 1.4.1-79
      - name: sosivio-operator.v1.3.1-76
        version: 1.3.1-76
      - name: sosivio-operator.v1.3.0-75
        version: 1.3.0-75
      - name: sosivio-operator.v1.2.1-1
        version: 1.2.1-1
      - name: sosivio-operator.v1.2.0-1
        version: 1.2.0-1
      name: stable
    defaultChannel: stable
    packageName: sosivio
    provider:
      name: sosivio
      url: https://www.sosiv.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EPAM Delivery Platform
      provider-url: https://epam.github.io/edp-install/
    name: nexus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nexus-operator.v3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "Nexus",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexus-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexus",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexus-sample"
                },
                "spec": {
                  "secret": "nexus-secret",
                  "url": "https://nexus-example.com"
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "NexusRepository",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexusrepository-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexusrepository",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexusrepository-sample"
                },
                "spec": {
                  "go": {
                    "proxy": {
                      "cleanup": {
                        "policyNames": [
                          "cleanup-policy"
                        ]
                      },
                      "httpClient": {
                        "autoBlock": true,
                        "blocked": true,
                        "connection": {
                          "retries": 1440,
                          "timeout": 1440,
                          "userAgentSuffix": "user-agent-suffix"
                        }
                      },
                      "name": "go-proxy",
                      "negativeCache": {
                        "enabled": true,
                        "timeToLive": 1440
                      },
                      "online": true,
                      "proxy": {
                        "contentMaxAge": 1440,
                        "metadataMaxAge": 1440,
                        "remoteUrl": "https://test.com"
                      },
                      "routingRule": "routing-rule",
                      "storage": {
                        "blobStoreName": "blob-store-name",
                        "strictContentTypeValidation": true
                      }
                    }
                  },
                  "nexusRef": {
                    "name": "nexus-sample"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "NexusRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexusrole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexusrole",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexusrole-sample"
                },
                "spec": {
                  "description": "test-role",
                  "id": "test-role",
                  "name": "test-role",
                  "nexusRef": {
                    "kind": "Nexus",
                    "name": "nexus-sample"
                  },
                  "privileges": [
                    "nx-blobstores-all"
                  ]
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "NexusUser",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexususer-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexususer",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexususer-sample"
                },
                "spec": {
                  "email": "test@gmail.com",
                  "firstName": "John1",
                  "id": "test-user",
                  "lastName": "Doe",
                  "nexusRef": {
                    "kind": "Nexus",
                    "name": "nexus-sample"
                  },
                  "roles": [
                    "nx-admin"
                  ],
                  "secret": "$user-secret:password"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Developer Tools
          containerImage: docker.io/epamedp/nexus-operator:3.0.0
          createdAt: "2023-12-11T12:54:50Z"
          description: An Operator for managing Nexus entities.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/epam/edp-nexus-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Nexus is the Schema for the nexus API.
            displayName: Nexus
            kind: Nexus
            name: nexuses.edp.epam.com
            version: v1alpha1
          - description: NexusRepository is the Schema for the nexusrepositories API.
            displayName: Nexus Repository
            kind: NexusRepository
            name: nexusrepositories.edp.epam.com
            version: v1alpha1
          - description: NexusRole is the Schema for the nexusroles API.
            displayName: Nexus Role
            kind: NexusRole
            name: nexusroles.edp.epam.com
            version: v1alpha1
          - description: NexusUser is the Schema for the nexususers API.
            displayName: Nexus User
            kind: NexusUser
            name: nexususers.edp.epam.com
            version: v1alpha1
        description: |
          Nexus Operator is an operator that is responsible for establishing
          a connection to provided NexusRepository Server, reconciling Nexus entities (groups,
          users, repositories, etc) according to the created CRs.

          ## Quick Start

          1. Create a User in the Nexus Repository.

          2. Insert newly created user credentials into Kubernetes secret:

              ```yaml
              apiVersion: v1
              kind: Secret
              metadata:
                name:  nexus-secret
              type: Opaque
              data:
                username: dXNlcg==   # base64-encoded value of "user"
                password: cGFzcw==   # base64-encoded value of "pass"
              ```

          3. Create Custom Resource `kind: Nexus` with Nexus instance URL and secret created on the previous step:

              ```yaml
              apiVersion: v1.edp.epam.com/v1alpha1
              kind: Nexus
              metadata:
                name: nexus-sample
              spec:
                secret: nexus-secret                # Secret name
                url: https://nexus.example.com      # Nexus URL
              ```

              Wait for the `.status` field with  `status.connected: true`
        displayName: EDP Nexus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - edp
        - nexus
        - operator
        - artifact
        - storage
        links:
        - name: Nexus Operator
          url: https://github.com/epam/edp-nexus-operator
        maintainers:
        - email: SupportEPMD-EDP@epam.com
          name: epmd-edp
        maturity: alpha
        provider:
          name: EPAM Delivery Platform
          url: https://epam.github.io/edp-install/
        relatedImages:
        - quay.io/openshift-community-operators/nexus-operator@sha256:277b94985c0dc982abb76b5dd8c93b37305ccca32c000d67552d540d4918cbba
        - docker.io/epamedp/nexus-operator:3.0.0
        version: 3.0.0
      entries:
      - name: nexus-operator.v3.0.0
        version: 3.0.0
      name: alpha
    defaultChannel: alpha
    packageName: nexus-operator
    provider:
      name: EPAM Delivery Platform
      url: https://epam.github.io/edp-install/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://access.redhat.com/products/red-hat-integration
    name: red-hat-camel-k
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
          createdAt: "2024-10-07T13:45:51Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          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: "true"
          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.skipRange: '>=1.8.0 <1.10.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:72ed79d0b4bf82ab58d22a174190f69401da83d80a09785648148760e1803d9d
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
        version: 1.10.8+0.1733993735.p
      entries:
      - name: red-hat-camel-k-operator.v1.10.8-0.1731578390.p
        version: 1.10.8+0.1731578390.p
      - name: red-hat-camel-k-operator.v1.10.8
        version: 1.10.8
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993120.p
        version: 1.10.8+0.1733993120.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731485816.p
        version: 1.10.8+0.1731485816.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124835.p
        version: 1.10.8+0.1733124835.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124325.p
        version: 1.10.8+0.1733124325.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731894055.p
        version: 1.10.8+0.1731894055.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731893478.p
        version: 1.10.8+0.1731893478.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
        version: 1.10.8+0.1733993735.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
        version: 1.10.8+0.1733135130.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1723633518.p
        version: 1.10.7+0.1723633518.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724202359.p
        version: 1.10.7+0.1724202359.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724145144.p
        version: 1.10.7+0.1724145144.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724144664.p
        version: 1.10.7+0.1724144664.p
      - name: red-hat-camel-k-operator.v1.10.7
        version: 1.10.7
      - name: red-hat-camel-k-operator.v1.10.7-0.1723632902.p
        version: 1.10.7+0.1723632902.p
      - name: red-hat-camel-k-operator.v1.10.6
        version: 1.10.6
      - name: red-hat-camel-k-operator.v1.10.5
        version: 1.10.5
      - name: red-hat-camel-k-operator.v1.10.5-0.1705608149.p
        version: 1.10.5+0.1705608149.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1699536334.p
        version: 1.10.4+0.1699536334.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1700072719.p
        version: 1.10.4+0.1700072719.p
      - name: red-hat-camel-k-operator.v1.10.4
        version: 1.10.4
      - name: red-hat-camel-k-operator.v1.10.3
        version: 1.10.3
      - name: red-hat-camel-k-operator.v1.10.2
        version: 1.10.2
      - name: red-hat-camel-k-operator.v1.10.1
        version: 1.10.1
      - name: red-hat-camel-k-operator.v1.10.1-0.1695295065.p
        version: 1.10.1+0.1695295065.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693789561.p
        version: 1.10.1+0.1693789561.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693378374.p
        version: 1.10.1+0.1693378374.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1682325781.p
        version: 1.10.0+0.1682325781.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1687356936.p
        version: 1.10.0+0.1687356936.p
      - name: red-hat-camel-k-operator.v1.10.0
        version: 1.10.0
      - name: red-hat-camel-k-operator.v1.10.0-0.1679561624.p
        version: 1.10.0+0.1679561624.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1678893647.p
        version: 1.10.0+0.1678893647.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: 1.10.x
    - currentCSV: red-hat-camel-k-operator.v1.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1beta1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:9e4fb5369e0479d4a68f60725e7d12abdc66c552babe59f1358f6e6b0f26357d
          createdAt: "2020-10-06T02:45:00Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:c60664e5da8eb23bbd918b1c13b83565b1f33a1aa8961b425232fa1ef4d1a6f1
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:9e4fb5369e0479d4a68f60725e7d12abdc66c552babe59f1358f6e6b0f26357d
        version: 1.4.2
      entries:
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: 1.4.x
    - currentCSV: red-hat-camel-k-operator.v1.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
          createdAt: "2022-08-15T20:17:25Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          olm.skipRange: '>=1.6.7 <=1.6.8'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:bcc0ef48ec42c88d212173167615feb2cf276c133b26b866ae3453af7ab1ee80
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
        version: 1.6.10
      entries:
      - name: red-hat-camel-k-operator.v1.6.10
        version: 1.6.10
      - name: red-hat-camel-k-operator.v1.6.9
        version: 1.6.9
      name: 1.6.x
    - currentCSV: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:e916f9040d3f4feb26cc1534d3ab2722890b34c7fe146cdce8b6085b47206e22
          createdAt: "2022-11-28T10:43:18Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          olm.skipRange: '>=1.6.7 <1.8.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:82cafd48db8107dd141064ce7530468b11804c8c54235a317eb450a7606bac3e
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:e916f9040d3f4feb26cc1534d3ab2722890b34c7fe146cdce8b6085b47206e22
        version: 1.8.2+0.1675913507.p
      entries:
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: 1.8.x
    - currentCSV: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
          createdAt: "2024-10-07T13:45:51Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          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: "true"
          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.skipRange: '>=1.8.0 <1.10.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:72ed79d0b4bf82ab58d22a174190f69401da83d80a09785648148760e1803d9d
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
        version: 1.10.8+0.1733993735.p
      entries:
      - name: red-hat-camel-k-operator.v1.10.8-0.1731578390.p
        version: 1.10.8+0.1731578390.p
      - name: red-hat-camel-k-operator.v1.10.8
        version: 1.10.8
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993120.p
        version: 1.10.8+0.1733993120.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731485816.p
        version: 1.10.8+0.1731485816.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124835.p
        version: 1.10.8+0.1733124835.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124325.p
        version: 1.10.8+0.1733124325.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731894055.p
        version: 1.10.8+0.1731894055.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731893478.p
        version: 1.10.8+0.1731893478.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
        version: 1.10.8+0.1733993735.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
        version: 1.10.8+0.1733135130.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1723633518.p
        version: 1.10.7+0.1723633518.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724202359.p
        version: 1.10.7+0.1724202359.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724145144.p
        version: 1.10.7+0.1724145144.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724144664.p
        version: 1.10.7+0.1724144664.p
      - name: red-hat-camel-k-operator.v1.10.7
        version: 1.10.7
      - name: red-hat-camel-k-operator.v1.10.7-0.1723632902.p
        version: 1.10.7+0.1723632902.p
      - name: red-hat-camel-k-operator.v1.10.6
        version: 1.10.6
      - name: red-hat-camel-k-operator.v1.10.5
        version: 1.10.5
      - name: red-hat-camel-k-operator.v1.10.5-0.1705608149.p
        version: 1.10.5+0.1705608149.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1699536334.p
        version: 1.10.4+0.1699536334.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1700072719.p
        version: 1.10.4+0.1700072719.p
      - name: red-hat-camel-k-operator.v1.10.4
        version: 1.10.4
      - name: red-hat-camel-k-operator.v1.10.3
        version: 1.10.3
      - name: red-hat-camel-k-operator.v1.10.2
        version: 1.10.2
      - name: red-hat-camel-k-operator.v1.10.1
        version: 1.10.1
      - name: red-hat-camel-k-operator.v1.10.1-0.1695295065.p
        version: 1.10.1+0.1695295065.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693789561.p
        version: 1.10.1+0.1693789561.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693378374.p
        version: 1.10.1+0.1693378374.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1682325781.p
        version: 1.10.0+0.1682325781.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1687356936.p
        version: 1.10.0+0.1687356936.p
      - name: red-hat-camel-k-operator.v1.10.0
        version: 1.10.0
      - name: red-hat-camel-k-operator.v1.10.0-0.1679561624.p
        version: 1.10.0+0.1679561624.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1678893647.p
        version: 1.10.0+0.1678893647.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: candidate
    - currentCSV: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
          createdAt: "2024-10-07T13:45:51Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          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: "true"
          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.skipRange: '>=1.8.0 <1.10.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:72ed79d0b4bf82ab58d22a174190f69401da83d80a09785648148760e1803d9d
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
        version: 1.10.8+0.1733993735.p
      entries:
      - name: red-hat-camel-k-operator.v1.10.8-0.1731578390.p
        version: 1.10.8+0.1731578390.p
      - name: red-hat-camel-k-operator.v1.10.8
        version: 1.10.8
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993120.p
        version: 1.10.8+0.1733993120.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731485816.p
        version: 1.10.8+0.1731485816.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124835.p
        version: 1.10.8+0.1733124835.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124325.p
        version: 1.10.8+0.1733124325.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731894055.p
        version: 1.10.8+0.1731894055.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731893478.p
        version: 1.10.8+0.1731893478.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
        version: 1.10.8+0.1733993735.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
        version: 1.10.8+0.1733135130.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1723633518.p
        version: 1.10.7+0.1723633518.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724202359.p
        version: 1.10.7+0.1724202359.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724145144.p
        version: 1.10.7+0.1724145144.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724144664.p
        version: 1.10.7+0.1724144664.p
      - name: red-hat-camel-k-operator.v1.10.7
        version: 1.10.7
      - name: red-hat-camel-k-operator.v1.10.7-0.1723632902.p
        version: 1.10.7+0.1723632902.p
      - name: red-hat-camel-k-operator.v1.10.6
        version: 1.10.6
      - name: red-hat-camel-k-operator.v1.10.5
        version: 1.10.5
      - name: red-hat-camel-k-operator.v1.10.5-0.1705608149.p
        version: 1.10.5+0.1705608149.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1699536334.p
        version: 1.10.4+0.1699536334.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1700072719.p
        version: 1.10.4+0.1700072719.p
      - name: red-hat-camel-k-operator.v1.10.4
        version: 1.10.4
      - name: red-hat-camel-k-operator.v1.10.3
        version: 1.10.3
      - name: red-hat-camel-k-operator.v1.10.2
        version: 1.10.2
      - name: red-hat-camel-k-operator.v1.10.1
        version: 1.10.1
      - name: red-hat-camel-k-operator.v1.10.1-0.1695295065.p
        version: 1.10.1+0.1695295065.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693789561.p
        version: 1.10.1+0.1693789561.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693378374.p
        version: 1.10.1+0.1693378374.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1682325781.p
        version: 1.10.0+0.1682325781.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1687356936.p
        version: 1.10.0+0.1687356936.p
      - name: red-hat-camel-k-operator.v1.10.0
        version: 1.10.0
      - name: red-hat-camel-k-operator.v1.10.0-0.1679561624.p
        version: 1.10.0+0.1679561624.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1678893647.p
        version: 1.10.0+0.1678893647.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: latest
    - currentCSV: red-hat-camel-k-operator.v1.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
          createdAt: "2022-08-15T20:17:25Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          olm.skipRange: '>=1.6.7 <=1.6.8'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:bcc0ef48ec42c88d212173167615feb2cf276c133b26b866ae3453af7ab1ee80
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
        version: 1.6.10
      entries:
      - name: red-hat-camel-k-operator.v1.6.10
        version: 1.6.10
      - name: red-hat-camel-k-operator.v1.6.9
        version: 1.6.9
      name: stable
    defaultChannel: 1.10.x
    packageName: red-hat-camel-k
    provider:
      name: Red Hat
      url: https://access.redhat.com/products/red-hat-integration
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://github.com/redhat-developer/app-services-operator/
    name: rhoas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhoas-operator.0.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhoas.redhat.com/v1alpha1",
                "kind": "ServiceRegistryConnection",
                "metadata": {
                  "name": "example",
                  "namespace": "example-namespace",
                  "labels": {
                    "app.kubernetes.io/component": "external-service",
                    "app.kubernetes.io/managed-by": "rhoas"
                  }
                },
                "spec": {
                  "accessTokenSecretName": "rh-managed-services-api-accesstoken",
                  "serviceRegistryId": "exampleId",
                  "credentials": {
                    "serviceAccountSecretName": "service-account-secret"
                  }
                }
              },
              {
                "apiVersion": "rhoas.redhat.com/v1alpha1",
                "kind": "CloudServiceAccountRequest",
                "metadata": {
                  "name": "example",
                  "namespace": "example-namespace"
                },
                "spec": {
                  "serviceAccountName": "rhoas-sa",
                  "serviceAccountDescription": "Operator created service account",
                  "serviceAccountSecretName": "service-account-credentials",
                  "accessTokenSecretName": "rh-managed-services-api-accesstoken"
                }
              },
              {
                "apiVersion": "rhoas.redhat.com/v1alpha1",
                "kind": "CloudServicesRequest",
                "metadata": {
                  "name": "example",
                  "namespace": "example-namespace",
                  "labels": {
                    "app.kubernetes.io/component": "external-service",
                    "app.kubernetes.io/managed-by": "rhoas"
                  }
                },
                "spec": {
                  "accessTokenSecretName": "rh-cloud-services-api-accesstoken"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          certified: "false"
          containerImage: quay.io/rhoas/service-operator:0.13.0
          createdAt: "2023-01-20 16:09:37"
          description: Red Hat OpenShift Application Services Operator
          olm.skipRange: '>=0.0.1 <0.13.0'
          repository: https://github.com/redhat-developer/app-services-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Creates RHOAS Service Accounts
            displayName: Cloud Service Account Request
            kind: CloudServiceAccountRequest
            name: cloudserviceaccountrequests.rhoas.redhat.com
            version: v1alpha1
          - description: Cloud Services Request
            displayName: Cloud Services Request
            kind: CloudServicesRequest
            name: cloudservicesrequests.rhoas.redhat.com
            version: v1alpha1
          - description: Binds Kafka Instance
            displayName: Kafka Connection
            kind: KafkaConnection
            name: kafkaconnections.rhoas.redhat.com
            version: v1alpha1
          - description: Binds Service Registry Instance
            displayName: Service Registry Connection
            kind: ServiceRegistryConnection
            name: serviceregistryconnections.rhoas.redhat.com
            version: v1alpha1
        description: "**OpenShift Application Services Operator (RHOAS-Operator)**
          creates instances of Red Hat OpenShift Application Services in your cluster.
          Operator is currently available as limited Beta and it cannot be consumed
          without invitation.\n\nRed Hat OpenShift Application Services, when added
          to Red Hat OpenShift Dedicated,  provide a streamlined developer experience
          for building, deploying,  and scaling cloud-native applications in open
          hybrid-cloud environments.   \n\nRHOAS-Operator enables developers to connect
          with their Application Services directly in their own cluster by using [RHOAS
          cli](https://github.com/redhat-developer/app-services-cli) and OpenShift
          Console UI.  \n\nRHOAS-Operator requires developers to connect with their
          Red Hat OpenShift Streams for Apache Kafka (RHOSAK) instances.  "
        displayName: OpenShift Application Services (RHOAS)
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - rhoas
        - kafka
        - serviceregistry
        - app-services
        - application
        - services
        links:
        - name: RHOAS Operator Documentation
          url: https://github.com/redhat-developer/app-services-operator/tree/main/docs
        maintainers:
        - email: rhosak-eval-support@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat Inc.
          url: https://github.com/redhat-developer/app-services-operator/
        relatedImages:
        - quay.io/openshift-community-operators/rhoas-operator@sha256:5299cd4c88012692b31d560ef981f80f994a0468552f43e03623adbf89b49ff6
        - quay.io/rhoas/service-operator:0.13.0
        version: 0.13.0
      entries:
      - name: rhoas-operator.0.13.0
        version: 0.13.0
      - name: rhoas-operator.0.12.0
        version: 0.12.0
      - name: rhoas-operator.0.11.0
        version: 0.11.0
      - name: rhoas-operator.0.9.6
        version: 0.9.6
      - name: rhoas-operator.0.9.5
        version: 0.9.5
      - name: rhoas-operator.0.9.3
        version: 0.9.3
      - name: rhoas-operator.0.9.2
        version: 0.9.2
      - name: rhoas-operator.0.9.1
        version: 0.9.1
      - name: rhoas-operator.0.9.0
        version: 0.9.0
      - name: rhoas-operator.0.8.2
        version: 0.8.2
      - name: rhoas-operator.0.7.10
        version: 0.7.10
      - name: rhoas-operator.0.7.9
        version: 0.7.9
      - name: rhoas-operator.0.7.8
        version: 0.7.8
      - name: rhoas-operator.0.7.6
        version: 0.7.6
      - name: rhoas-operator.0.7.2
        version: 0.7.2
      - name: rhoas-operator.0.7.1
        version: 0.7.1
      - name: rhoas-operator.0.6.8
        version: 0.6.8
      name: beta
    defaultChannel: beta
    packageName: rhoas-operator
    provider:
      name: Red Hat Inc.
      url: https://github.com/redhat-developer/app-services-operator/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: m88i Labs
      provider-url: ""
    name: nexus-operator-m88i
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nexus-operator.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.m88i.io/v1alpha1",
                "kind": "Nexus",
                "metadata": {
                  "name": "nexus3"
                },
                "spec": {
                  "networking": {
                    "expose": false
                  },
                  "persistence": {
                    "persistent": false
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "2",
                      "memory": "2Gi"
                    },
                    "requests": {
                      "cpu": "1",
                      "memory": "2Gi"
                    }
                  },
                  "useRedHatImage": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/m88i/nexus-operator:0.6.0
          createdAt: "2019-11-16T13:12:22Z"
          description: Nexus Operator to deploy and manage Nexus 3.x servers
          operators.operatorframework.io/builder: operator-sdk-v1.4.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/m88i/nexus-operator
          support: m88i Labs
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: Nexus
            kind: Nexus
            name: nexus.apps.m88i.io
            version: v1alpha1
        description: |-
          Creates a new Nexus 3.x deployment in a Kubernetes cluster. Will help DevOps to have a quick Nexus application exposed to the world that can be used in a CI/CD process:

          * Deploys a new Nexus 3.x server based on either Community or Red Hat images
          * Creates an [Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) in Kubernetes (1.14+) environments to expose the application to the world
          * On OpenShift, creates a Route to expose the service outside the cluster
          * Automatically creates Apache, Red Hat and JBoss Maven repositories
          * Automatically updates Nexus within the same minor version

          [See our documentation](https://github.com/m88i/nexus-operator/blob/main/README.md) for more installation and usage scenarios.

          If you experience any issues or have any ideas for new features, please [file an issue in our Github repository](https://github.com/m88i/nexus-operator/issues) or send an email to our maillist: [nexus-operator@googlegroups.com](mailto:nexus-operator@googlegroups.com)

          *Please note that the operator is an individual work and it's not provided nor supported by Sonatype.*
        displayName: Nexus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nexus
        - sonatype
        - maven
        - docker
        - ci
        - continuous integration
        - continuous delivery
        - repository
        - repository manager
        - dev tools
        links:
        - name: Documentation
          url: https://github.com/m88i/nexus-operator/blob/main/README.md
        - name: Nexus Operator source code repository
          url: https://github.com/m88i/nexus-operator
        maintainers:
        - email: nexus-operator@googlegroups.com
          name: m88i Labs
        maturity: alpha
        provider:
          name: m88i Labs
        relatedImages:
        - quay.io/m88i/nexus-operator:0.6.0
        - quay.io/openshift-community-operators/nexus-operator-m88i@sha256:46cd06d477b4d09dbfca7ca4434ea58f881314138ed744c6390033bd6fb7dc0f
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        version: 0.6.0
      entries:
      - name: nexus-operator.v0.6.0
        version: 0.6.0
      name: alpha
    defaultChannel: alpha
    packageName: nexus-operator-m88i
    provider:
      name: m88i Labs
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: MinIO
      provider-url: https://min.io
    name: minio-minkms
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: minio-minkms.v2025.12.17191008
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "minkms.min.io/v1alpha1",
                "kind": "MinKMS",
                "metadata": {
                  "name": "my-minkms",
                  "namespace": "ns-1"
                },
                "spec": {
                  "apiKeySecret": {
                    "name": "my-api-key"
                  },
                  "configuration": {
                    "name": "my-kms-server-config"
                  },
                  "hsmSecret": {
                    "name": "my-kms-hsm"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "registry-creds"
                    }
                  ],
                  "replicas": 2,
                  "volumeClaimTemplate": {
                    "metadata": {
                      "name": "minkms-volume"
                    },
                    "spec": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "100Mi"
                        }
                      },
                      "storageClassName": "standard"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security, Storage
          createdAt: "2025-12-17T19:10:08Z"
          description: MinIO AIStor is the standard for building large scale AI data
            infrastructure.
          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"
          operatorframework.io/suggested-namespace: aistor
          operators.openshift.io/valid-subscription: Contact MinIO for subscription
            information.
          operators.operatorframework.io.bundle.channel.default.v1: stable
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: unknown
          support: min.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: MinKMS
            name: minkmses.minkms.min.io
            version: v1alpha1
        description: |-
          Highly available, powerful and operationally simple, MinIO's Enterprise Key Management Server (MinKMS) is optimized for large storage infrastructures where billions of cryptographic keys are required.

          MinIO's AIStor MinKMS establishes its foundational trust using the concept of an hardware security module (but given MinKMS is software, this is only a concept). That module assumes a pivotal role in sealing and unsealing the MinKMS root encryption key. The module responsibility extends to safeguarding the integrity of MinKMS by allowing the unsealing of its encrypted on-disk state and facilitating communication among nodes within a MinKMS cluster.

          It solves the challenges associated with billions of cryptographic keys and hundreds of thousands of cryptographic operations per node per second - which are commonplace in larger deployments.

          <b>High Availability and Fault Tolerance</b>
          In the dynamic landscape of large-scale systems, network or node outages are inevitable. Taking down a cluster for maintenance is rarely feasible. MinIO's AIStor MinKMS ensures uninterrupted availability, even when faced with such disruptions, mitigating cascading effects that can take down the entire storage infrastructure. Specifically, you could lose all but one node of a cluster and still handle any encryption, decryption or data key generation requests.

          <b>Scalability</b>
          While the amount of data usually only increases, the load on a large-scale storage system may vary significantly from time to time. MinIO's AIStor MinKMS supports dynamic cluster resizing and nodes can be added or removed at any point without incurring any downtime.

          <b>Multi-Tenancy</b>
          Large-scale storage infrastructures are often used by many applications and teams across the entire organization. Isolating teams and groups into their own namespaces is a core requirement. MinIO's AIStor MinKMS supports namespacing in the form of enclaves. Each tenant can be assigned its own enclave which is completely independent and isolated from all other enclaves on the MinKMS cluster.

          <b>Predictable Behavior</b>
          MinIO's AIStor MinKMS is designed to be easily managed, providing operators with the ability to comprehend its state intuitively. Due to its simple design, MinIO's AIStor MinKMS is significantly easier to operate than similar solutions that rely on more complex consensus algorithms like Raft, or Paxos.

          <b>Consistent and Performant</b>
          The responsiveness of the MinKMS for GET/PUT operations directly influences the overall efficiency and speed of the storage system. MinIO's AIStor MinKMS nodes don't have to coordinate when handling such requests from the storage system. Therefore, the performance of a MinIO's AIStor MinKMS cluster increases linearly with the number of nodes. Further, MinIO's AIStor MinKMS supports request pipelining to handle hundreds of thousands of cryptographic operations per node and second.

          <b>Simplicity</b>
          Operating a MinKMS cluster does not require expertise in cryptography or distributed systems. Everything can be done from the AIStor Console.

          <a href="https://resources.min.io/request-a-demo-marketplaces/">Request a demo today</a>
        displayName: MinKMS
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AI Storage
        - MinIO
        links:
        - name: Minio AIStor
          url: https://min.io
        - name: Support
          url: https://subnet.min.io
        - name: Github
          url: https://github.com/minio/aistor
        maintainers:
        - email: dev@min.io
          name: MinIO
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: MinIO
          url: https://min.io
        relatedImages:
        - quay.io/minio/aistor/operator@sha256:2c3cb98193815b76f73e89bb3d6311ccd75c3b354bdccd04758715a08b163436
        - registry.connect.redhat.com/minkms/minkms@sha256:2bf2b896bd39e585ed3797f3e37922b7ac60b51e92cc80667199280c4aea5c99
        - quay.io/minio/aistor/minkms-sidecar@sha256:f460aef51e32fd6bd556f3d30f14f026855cb4010f662c82d1964e1596c50f2a
        - quay.io/minio/aistor/minkms@sha256:4c089d787b4ebf862dbce7826ac6eadeca5e0811b1f0379f43fb732f321fda8f
        version: 2025.12.17191008
      entries:
      - name: minio-minkms.v2025.12.17191008
        version: 2025.12.17191008
      - name: minio-minkms.v2025.12.16205103
        version: 2025.12.16205103
      name: stable
    defaultChannel: stable
    packageName: minio-minkms
    provider:
      name: MinIO
      url: https://min.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Nutanix
      provider-url: ""
    name: nutanixcsioperator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nutanixcsioperator.v3.3.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "crd.nutanix.com/v1alpha1",
                "kind": "NutanixCsiStorage",
                "metadata": {
                  "name": "nutanixcsistorage"
                },
                "spec": {
                  "ntnxInitConfigMap": {
                    "usePC": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/nutanix/nutanix-csi-operator@sha256:0c2f43cdc7d530fb0e8730abc225401f557f05806f5de3fcd82aedcf17ecb89e
          createdAt: "2025-11-28T07:13:29Z"
          description: An Operator for deploying and managing the Nutanix CSI Driver
          features.operators.openshift.io/csi: "true"
          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.skipRange: <3.3.9
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi","disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/nutanix/csi-operator
          support: Nutanix Support Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a new instance of Nutanix CSI Driver
            displayName: Nutanix CSI Storage
            kind: NutanixCsiStorage
            name: nutanixcsistorages.crd.nutanix.com
            version: v1alpha1
        description: "# Important\nPlease read the following instructions carefully
          before upgrading from 2.6.x to 3.3.9, for more information please refer
          to [documentation](https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v3_3:CSI-Volume-Driver-v3_3)
          \n- Please do not upgrade to the CSI 3.x operator if:\n    * You are using
          LVM volumes.\n\n- CSI 3.3.9 supports PC service account-based authentication
          in Nutanix Volumes and Nutanix Files. Instead of using username and password
          secrets, Prism Central administrators can now create service accounts, configure
          RBAC, and use generated API keys for secure storage provisioning. Create
          a Nutanix Prism Central secret with service account key as shown [here](#create-a-nutanix-pc-secret)\n\nNote:
          In order to use this feature you should uninstall the driver(delete existing
          nutanixcsistorage resource), create a nutanix-pc-secret with the service
          account key as shown [here](#create-a-nutanix-pc-secret) and install the
          driver again by passing the newly created secret name in pcSecretName and
          authType: \"service-auth\" in nutanixcsistorage spec.\n    \n- To upgrade
          from the CSI 2.6.x to CSI 3.3 (interacting with Prism Central) operator\n
          \   * Create a Nutanix Prism Central secret as explained below.\n    * Delete
          the csidriver object from the cluster:\n\n        ```\n        oc delete
          csidriver csi.nutanix.com\n        ```\n\n    * In the installed operators,
          go to Nutanix CSI Operator and change the subscription channel from stable
          to stable-3.x. \n    If you have installed the operator with automatic update
          approval, the operator will be automatically upgraded to CSI 3.3, and then
          the nutanixcsistorage resource will be upgraded.\n    An update plan will
          be generated for manual updates. Upon approval, the operator will be successfully
          upgraded.\n    \n- Direct upgrades from CSI 2.6.x to CSI 3.3 interacting
          with Prism Element are not supported. \n    The only solution is to recreate
          the nutanixcsistorage instance by following the below procedure:\n    -
          In the installed operators, go to Nutanix CSI Operator and delete the nutanixcsistorage
          instance.\n    - Next change the subscription channel from stable to stable-3.x.\n
          \   - Verify the following points:\n        - Ensure a Nutanix Prism Element
          secret is present in the namespace.\n        - Ensure that all the storage
          classes with provisioner: csi.nutanix.com have a controller publish secret
          as explained below.\n\n            ```\n            csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n            csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n            ```\n\n            If this secret
          is not present in the storage class please delete and recreate the storage
          classes with the required secrets.\n    - Create a new instance of nutanixcsistorage
          from this operator by specifying `usePC: false` in YAML spec section.\n
          \   - Caution: Moving from CSI driver interacting with Prism Central to
          CSI driver interacting with Prism Element is not supported.\n    \n- Troubleshooting:\n
          \   \n    If the upgrade was unsuccessful and you want to revert to version
          CSI 2.6.x, please delete the csidriver object as explained above, uninstall
          the operator (no need to delete the nutanixcsistorage custom resource),
          and install version CSI 2.6.x from the stable channel.\n# Overview \nThe
          Nutanix CSI Operator for Kubernetes packages, deploys, manages, and upgrades
          the Nutanix CSI Driver on Kubernetes and OpenShift for dynamic provisioning
          of persistent volumes on the Nutanix Enterprise Cloud platform.\nThe Nutanix
          Container Storage Interface (CSI) Driver for Kubernetes leverages Nutanix
          Volumes and Nutanix Files to provide scalable and persistent storage for
          stateful applications.\nWith the Nutanix CSI Provider, you can:\n*  **Provide
          persistent storage to your containers**\n    * Leverage PVC resources to
          consume dynamically Nutanix storage\n    * With Files storage classes, applications
          on multiple pods can access the same storage and have the benefit of multi-pod
          read and write access. \n## Warning\nIf you upgrade from a previous version,
          make sure to validate your existing StorageClass parameters against the
          corresponding [documentation](https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v3_3:CSI-Volume-Driver-v3_3)\n##
          Supported Access mode\n| Storage Class mode | ReadWriteOnce | ReadOnlyMany
          | ReadWriteMany |\n|--------------------|---------------|--------------|---------------|\n|
          Nutanix Volumes    | yes           | yes          | no            |\n| Nutanix
          Files      | yes           | yes          | yes           |\n## Supported
          orchestration platforms\nThe following table details orchestration platforms
          suitable for deployment of the Nutanix CSI driver.\n| Orchestration platform
          | Version | Architecture |\n|------------------------|---------|--------------|\n|
          Red Hat OpenShift      | 4.12    | x86          |\n| Red Hat OpenShift      |
          4.13    | x86          |\n| Red Hat OpenShift      | 4.14    | x86          |\n|
          Red Hat OpenShift      | 4.15    | x86          |\n| Red Hat OpenShift      |
          4.16    | x86          |\n| Red Hat OpenShift      | 4.17    | x86          |\n|
          Red Hat OpenShift      | 4.18    | x86          |\n| Red Hat OpenShift      |
          4.19    | x86          |\n| Red Hat OpenShift      | 4.20    | x86          |\n##
          Configuring k8s secret and storage class\nTo use this driver, create the
          relevant storage classes and secrets and deploy your NutanixCsiStorage instance
          by following the [documentation](https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v3_3:CSI-Volume-Driver-v3_3)
          or the example in below section:\n### Create a Nutanix PE secret\n```yaml\napiVersion:
          v1\nkind: Secret\nmetadata:\n  name: ntnx-pe-secret\n  namespace: openshift-cluster-csi-drivers\nstringData:\n
          \ # prism-ip:prism-port:username:password.\n  key: 1.2.3.4:9440:admin:password\n
          \ files-key: \"fileserver01.sample.com:csi:password1\"\n```\n### Create
          a Nutanix PC secret\n- basic authentication\n```yaml\napiVersion: v1\nkind:
          Secret\nmetadata:\n  name: ntnx-pc-secret\n  namespace: openshift-cluster-csi-drivers\nstringData:\n
          \ # prism-ip:prism-port:username:password.\n  key: 1.2.3.4:9440:admin:password\n```\n-
          service account based authentication\n```yaml\napiVersion: v1\nkind: Secret\nmetadata:\n
          \ name: ntnx-pc-secret\n  namespace: openshift-cluster-csi-drivers\ntype:
          Opaque\nstringData:\n  host: 1.2.3.4\n  port: 9440\n  key_type: \"api-key\"\n
          \ key_value: \"xxxxxxxxxxx\"\n  auth_type: \"service-auth\"\n```\n### Create
          a NutanixCsiStorage resource to deploy your driver\nYou can do it directly
          inside the Operator UI with the `Create instance` button or with the following
          resource\n```yaml\napiVersion: crd.nutanix.com/v1alpha1\nkind: NutanixCsiStorage\nmetadata:\n
          \ name: nutanixcsistorage\n  namespace: openshift-cluster-csi-drivers\nspec:
          \n  ntnxInitConfigMap:\n    usePC : true (false for PE based installations.
          Default is true.)\n```\n### Create storage classes\n- volume mode example
          for 3.x installation\n```yaml\nkind: StorageClass\napiVersion: storage.k8s.io/v1\nmetadata:\n
          \ name: nutanix-volume\nprovisioner: csi.nutanix.com\nparameters:\n  csi.storage.k8s.io/provisioner-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/provisioner-secret-namespace: openshift-cluster-csi-drivers\n
          \ csi.storage.k8s.io/node-publish-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/node-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-expand-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-expand-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/fstype: ext4\n  storageContainer:
          default-container\n  storageType: NutanixVolumes\n  #description: \"description
          added to each storage object created by the driver\"\n  #hypervisorAttached:
          ENABLED\nallowVolumeExpansion: true\nreclaimPolicy: Delete\n```\n- volume
          mode example for 2.x installation\n```yaml\nkind: StorageClass\napiVersion:
          storage.k8s.io/v1\nmetadata:\n  name: nutanix-volume\nprovisioner: csi.nutanix.com\nparameters:\n
          \ csi.storage.k8s.io/provisioner-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/provisioner-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/node-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/node-publish-secret-namespace: openshift-cluster-csi-drivers\n
          \ csi.storage.k8s.io/controller-expand-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/controller-expand-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/fstype: ext4\n   storageContainer:
          default-container\n   storageType: NutanixVolumes\n   #description: \"description
          added to each storage object created by the driver\"\n   #isSegmentedIscsiNetwork:
          \"false\"\n   #whitelistIPMode: ENABLED\n   #chapAuth: ENABLED\n   #isLVMVolume:
          \"false\"\n   #numLVMDisks: 4\n allowVolumeExpansion: true\n reclaimPolicy:
          Delete\n```\n- dynamic files mode example\n```yaml\nkind: StorageClass\napiVersion:
          storage.k8s.io/v1\nmetadata:\n    name: nutanix-dynfiles\nprovisioner: csi.nutanix.com\nparameters:\n
          \ dynamicProv: ENABLED\n  nfsServerName: fs\n  csi.storage.k8s.io/provisioner-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/provisioner-secret-namespace: openshift-cluster-csi-drivers\n
          \ csi.storage.k8s.io/node-publish-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/node-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-expand-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-expand-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  storageType: NutanixFiles\n  squashType:
          \"none\"\n  #description: \"description added to each storage object created
          by the driver\"\nallowVolumeExpansion: true\n```"
        displayName: Nutanix CSI Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Nutanix
        - CSI
        - Volumes
        - Files
        - Storage
        links:
        - name: Documentation
          url: https://portal.nutanix.com/page/documents/list?type=software&filterKey=product&filterVal=CSI
        maintainers:
        - email: cloudnative@nutanix.com
          name: Nutanix Cloud Native
        maturity: beta
        provider:
          name: Nutanix
        relatedImages:
        - registry.connect.redhat.com/nutanix/ntnx-csi-os@sha256:92ab85b4f728ad1b1f31b75ec591f569cf37717035ce6df04bf4569577f5f86c
        - registry.connect.redhat.com/nutanix/ntnx-csi-os@sha256:f23dd74af1a094c473983916d04cfd60290c806f8ce6adf379a6211bbdd0b9c3
        - registry.connect.redhat.com/nutanix/nutanix-csi-operator-bundle@sha256:7d6b9e826cd5043f7d8148e5036d2d2cfb070b4b651d7ca86cbd2591f42d6e52
        - registry.connect.redhat.com/nutanix/nutanix-csi-operator@sha256:0c2f43cdc7d530fb0e8730abc225401f557f05806f5de3fcd82aedcf17ecb89e
        - registry.k8s.io/sig-storage/csi-external-health-monitor-controller@sha256:9e581022a4e063b9d8b4f9466a36eabe4d0ced3badc8e353f13b700074ce4553
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:0f64602ea791246712b51df334bbd701a0f31df9950a4cb9c28c059f367baa9e
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:9af9bf28430b00a0cedeb2ec29acadce45e6afcecd8bdf31c793c624cfa75fa7
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:f1bd6ee18c4021c1c94f29edfab89b49b6a4d1b800936c19dbef2d75f8202f2d
        - registry.k8s.io/sig-storage/livenessprobe@sha256:82adbebdf5d5a1f40f246aef8ddbee7f89dea190652aefe83336008e69f9a89f
        - registry.k8s.io/sig-storage/csi-attacher@sha256:d7325367ab72b2d469a5091d87b4fc01142d2d13d1a28b2defbbe3e6fdbc4611
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:04c55b93a032ad8075cae540d60fc740a72c31006590dbdb61ad4ab9813959d0
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:10624570c0aceb03f55f1eb07147b0c537e4676869cca2e9bd4bab113f810ac4
        - registry.k8s.io/sig-storage/csi-resizer@sha256:3c116f543f0590aeff3299c8bb0683f250817d11a77d9e9071b15a0bffdabcd9
        version: 3.3.9
      entries:
      - name: nutanixcsioperator.v3.3.9
        version: 3.3.9
      - name: nutanixcsioperator.v3.3.8
        version: 3.3.8
      - name: nutanixcsioperator.v3.3.4
        version: 3.3.4
      name: stable-3.x
    defaultChannel: stable-3.x
    packageName: nutanixcsioperator
    provider:
      name: Nutanix
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: JohnSnowLabs
      provider-url: ""
    name: nlp-server
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nlp-server.v0.8.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.johnsnowlabs.com/v1",
                "kind": "Nlpserver",
                "metadata": {
                  "name": "nlpserver-sample"
                },
                "spec": {
                  "ExtraEnv": {
                    "johnsnowlabs_client_id": "sI4MKSmLHOX2Pg7XhM3McJS2oyKG5PHcp0BlANEW",
                    "nb_uid": "1000",
                    "nb_user": "johnsnowlabs",
                    "pyspark_version": "3.0.2",
                    "spark_nlp_version": "3.4.4"
                  },
                  "affinity": {},
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "johnsnowlabs/nlp-server",
                    "tag": "0.8.0rc1"
                  },
                  "imagePullSecrets": [],
                  "ingress": {
                    "annotations": {
                      "kubernetes.io/ingress.class": "nginx",
                      "nginx.ingress.kubernetes.io/ssl-redirect": "true"
                    },
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "nlp-server.jsl.aiplatform.eks.test.johnsnowlabs.com",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": [
                      {
                        "hosts": [
                          "nlp-server.jsl.aiplatform.eks.test.johnsnowlabs.com"
                        ],
                        "secretName": "annotationlab-tls-secret"
                      }
                    ]
                  },
                  "livenessProbe": "httpGet:\n  path: /\n  port: http\ninitialDelaySeconds: 15\ntimeoutSeconds: 3\n",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podSecurityContext": {},
                  "readinessProbe": "httpGet:\n  path: /\n  port: http\ninitialDelaySeconds: 15\ntimeoutSeconds: 3\n",
                  "replicaCount": 1,
                  "resources": {},
                  "securityContext": {},
                  "service": {
                    "port": 5000,
                    "portName": "http",
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": "nlp-server-sa"
                  },
                  "tolerations": []
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: registry.johnsnowlabs.com/nlp-server/nlp-server-operator:0.8.6
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Nlpserver
            name: nlpservers.apps.johnsnowlabs.com
            version: v1
        description: NLPServer from JohnSnow labs
        displayName: nlp-server
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nlp-server
        links:
        - name: Nlp Server
          url: https://johnsnowlabs.com
        maturity: alpha
        provider:
          name: JohnSnowLabs
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/openshift-community-operators/nlp-server@sha256:6f80f44822301252540c6b808a20cea327f0eedeadc7643d31fc743de5c5e696
        - registry.johnsnowlabs.com/nlp-server/nlp-server-operator:0.8.6
        version: 0.8.6
      entries:
      - name: nlp-server.v0.8.6
        version: 0.8.6
      name: alpha
    defaultChannel: alpha
    packageName: nlp-server
    provider:
      name: JohnSnowLabs
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ThinkParQ
      provider-url: https://www.thinkparq.com
    name: beegfs-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: beegfs-csi-driver-operator.v1.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "beegfs.csi.netapp.com/v1",
                "kind": "BeegfsDriver",
                "metadata": {
                  "name": "csi-beegfs-cr"
                },
                "spec": {
                  "nodeAffinityControllerService": {
                    "preferredDuringSchedulingIgnoredDuringExecution": [
                      {
                        "preference": {
                          "matchExpressions": [
                            {
                              "key": "node-role.kubernetes.io/master",
                              "operator": "Exists"
                            }
                          ]
                        },
                        "weight": 50
                      }
                    ],
                    "requiredDuringSchedulingIgnoredDuringExecution": {
                      "nodeSelectorTerms": [
                        {
                          "matchExpressions": [
                            {
                              "key": "node.openshift.io/os_id",
                              "operator": "NotIn",
                              "values": [
                                "rhcos"
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  },
                  "nodeAffinityNodeService": {
                    "requiredDuringSchedulingIgnoredDuringExecution": {
                      "nodeSelectorTerms": [
                        {
                          "matchExpressions": [
                            {
                              "key": "node.openshift.io/os_id",
                              "operator": "NotIn",
                              "values": [
                                "rhcos"
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: ghcr.io/thinkparq/beegfs-csi-driver-operator:v1.8.0
          createdAt: 2021-06-30:03:11:00
          description: Install and manage the BeeGFS CSI driver
          operatorframework.io/suggested-namespace: beegfs-csi
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ThinkParQ/beegfs-csi-driver
          support: ThinkParQ
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys the BeeGFS CSI driver
            displayName: BeeGFS Driver
            kind: BeegfsDriver
            name: beegfsdrivers.beegfs.csi.netapp.com
            version: v1
        description: |
          The BeeGFS Container Storage Interface (CSI) driver provides high performing and scalable storage for workloads
          running in container orchestrators like Kubernetes. It allows containers to access existing datasets or request
          on-demand ephemeral or persistent high speed storage backed by BeeGFS parallel file systems.

          This operator eases the installation and management of the BeeGFS CSI driver in an OpenShift or other Operator
          Lifecycle Manager enabled cluster.

          ### Documentation

          Compatibility information and a quick start guide for the BeeGFS CSI driver itself are available on our [main GitHub
          page](https://www.github.com/ThinkParQ/beegfs-csi-driver). Additional detailed documentation for the driver is
          available in the [docs directory](https://www.github.com/ThinkParQ/beegfs-csi-driver/tree/master/docs) and for the
          operator is available in the [operator
          README](https://www.github.com/ThinkParQ/beegfs-csi-driver/tree/master/operator/README.md).

          ### Important Notes

          The BeeGFS client packages and kernel module must be pre-installed on all nodes that will run the driver. See the
          driver ["Getting Started" guide](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/README.md#getting-started)
          for additional information.

          The BeeGFS CSI driver is only supported on nodes running a [BeeGFS supported Linux
          distribution](https://doc.beegfs.io/latest/release_notes.html#supported-linux-distributions-and-kernels). Red Hat
          CoreOS (RHCOS), the default distribution in OpenShift environments, is NOT supported. However, Red Hat Enterprise
          Linux (RHEL) nodes can be added to an OpenShift cluster and RHEL is supported for running BeeGFS. By default, the
          operator will install the driver with a node affinity that ensures it does not run on RHCOS nodes. See the driver
          [compatibility
          matrix](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/README.md#interoperability-and-csi-feature-matrix)
          for additional information.

          We have recently published experimental manifests that enable the BeeGFS CSI driver on OpenShift nodes running
          RHCOS. These manifests are not intended for production use. See [this
          README](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/deploy/openshift-beegfs-client/README.md) for more
          details.

          All driver configuration can be specified through the BeegfsDrivers API (in a BeegfsDriver Custom Resource)
          except for BeeGFS connAuth information, which must be placed separately into a Kubernetes Secret. See the [ConnAuth
          Configuration
          section](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/operator/README.md#connauth-configuration) of the
          operator documentation for additional information.

          Starting with version 1.4.0 of the BeeGFS CSI driver the driver and operator images will be signed using the Cosign
          tool. Refer to the [BeeGFS CSI driver operator
          README](https://www.github.com/ThinkParQ/beegfs-csi-driver/tree/master/operator/README.md)
          for details on how to verify the operator and driver image signatures.
        displayName: BeeGFS CSI Driver
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - CSI
        - BeeGFS
        - ThinkParQ
        - HPC
        - AI
        - High-Performance Computing
        links:
        - name: BeeGFS introduction
          url: https://www.beegfs.io/c/
        - name: BeeGFS documentation
          url: https://doc.beegfs.io/latest/index.html
        - name: BeeGFS CSI driver source code
          url: https://github.com/ThinkParQ/beegfs-csi-driver
        - name: BeeGFS blog posts
          url: https://www.beegfs.io/c/blog/
        maintainers:
        - email: csi-driver@beegfs.io
          name: ThinkParQ
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: ThinkParQ
          url: https://www.thinkparq.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/beegfs-csi-driver-operator@sha256:f62ae88c74faef808733ab2b905e1bc5b80ca3f3cc96bb946a8e939a73ccb59f
        - ghcr.io/thinkparq/beegfs-csi-driver-operator:v1.8.0
        version: 1.8.0
      entries:
      - name: beegfs-csi-driver-operator.v1.8.0
        version: 1.8.0
      - name: beegfs-csi-driver-operator.v1.7.0
        version: 1.7.0
      - name: beegfs-csi-driver-operator.v1.6.0
        version: 1.6.0
      - name: beegfs-csi-driver-operator.v1.5.0
        version: 1.5.0
      - name: beegfs-csi-driver-operator.v1.4.0
        version: 1.4.0
      - name: beegfs-csi-driver-operator.v1.3.0
        version: 1.3.0
      - name: beegfs-csi-driver-operator.v1.2.2
        version: 1.2.2
      - name: beegfs-csi-driver-operator.v1.2.1
        version: 1.2.1
      - name: beegfs-csi-driver-operator.v1.2.0
        version: 1.2.0
      name: stable
    defaultChannel: stable
    packageName: beegfs-csi-driver-operator
    provider:
      name: ThinkParQ
      url: https://www.thinkparq.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: amq-streams
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amqstreams.v2.2.2-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.3",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.3",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:f908d848b5e67de4b162597b190ef18d449ffd4b6540457b24b491445d5c5ea3
          createdAt: "2022-07-01 10:33:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          olm.skipRange: '>=2.1.0-0 <2.2.2-2'
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ", "Red Hat Application Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from AMQ Streams 1.7, migration to `v1beta2` needs to be completed for all AMQ Streams CRDs and CRs before the upgrade to 2.2 is done! If upgrading from AMQ Streams version earlier than 1.7, you need to first install the CRDs from AMQ Streams 1.7 and complete the migration to `v1beta2` for all AMQ Streams CRDs and CRs before the upgrade to 2.2 is done! For more details about the CRD upgrades, see the [documentation](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.2/html/deploying_and_upgrading_amq_streams_on_openshift/assembly-upgrade-str#assembly-upgrade-resources-str).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.2/html/deploying_and upgrading_amq_streams_on_openshift/assembly-upgrade-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: Red Hat Integration - AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-streams-bridge-rhel8@sha256:5d49bd23da40590e74422424b9457398bad89da8276718ff6a8a088e901c8345
        - registry.redhat.io/amq7/amq-streams-kafka-31-rhel8@sha256:d0607285fae95365b9d34b9474466824fb5ad012871204e8b13e52e438b66bf5
        - registry.redhat.io/amq7/amq-streams-kafka-32-rhel8@sha256:e3bbfff505f12c0360e175f4640c2dd9a7adcf3dce1ae2f586f2bde805ed8b1f
        - registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:f908d848b5e67de4b162597b190ef18d449ffd4b6540457b24b491445d5c5ea3
        - registry.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:826354c9c06a06f998e522a88d6a81239e003e1d6a2633e9b7b27b8a61d5fe38
        version: 2.2.2-2
      entries:
      - name: amqstreams.v2.2.2-2
        version: 2.2.2-2
      - name: amqstreams.v2.2.2-1
        version: 2.2.2-1
      - name: amqstreams.v2.2.2-0
        version: 2.2.2-0
      - name: amqstreams.v2.2.1-7
        version: 2.2.1-7
      - name: amqstreams.v2.2.1-6
        version: 2.2.1-6
      - name: amqstreams.v2.2.1-5
        version: 2.2.1-5
      - name: amqstreams.v2.2.1-4
        version: 2.2.1-4
      - name: amqstreams.v2.2.1-3
        version: 2.2.1-3
      - name: amqstreams.v2.2.1-2
        version: 2.2.1-2
      - name: amqstreams.v2.2.1-1
        version: 2.2.1-1
      - name: amqstreams.v2.2.1-0
        version: 2.2.1-0
      - name: amqstreams.v2.2.0-5
        version: 2.2.0-5
      name: amq-streams-2.2.x
    - currentCSV: amqstreams.v2.3.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.3.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.3"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.3.1",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:2e46a25144d697761f0119deaf528c6f1c2ccd04e2acd95c661b0df4f32e1a9f
          createdAt: "2022-10-31 17:05:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          olm.skipRange: '>=2.2.0-0 <2.3.0-4'
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.3.0 release, AMQ Streams supports only OCP 4.8 to 4.12!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 2.2 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more details, see the [documentation](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.3/html/deploying_and_upgrading_amq_streams_on_openshift/assembly-upgrade-str#assembly-upgrade-resources-str

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.3/html/deploying_and upgrading_amq_streams_on_openshift/assembly-upgrade-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-streams-bridge-rhel8@sha256:c822b3d87f7dea233fc523238d8d0516e42f9a3d252f50f4d427c934995f9b22
        - registry.redhat.io/amq7/amq-streams-kafka-32-rhel8@sha256:0152a85f2d0bc85881dacaee62c6e8b0b8b04f57a542b9b82dc93ad5303d6bf9
        - registry.redhat.io/amq7/amq-streams-kafka-33-rhel8@sha256:046c2539fef32bd928fc1f4f4c41e63f9a143b371fcc201d78c66f48fc34ea32
        - registry.redhat.io/amq7/amq-streams-operator-bundle@sha256:a59435a22c2f470b149ff721240f14144d2e56200b141e59a4f1011267a6c925
        - registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:2e46a25144d697761f0119deaf528c6f1c2ccd04e2acd95c661b0df4f32e1a9f
        - registry.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        version: 2.3.0-4
      entries:
      - name: amqstreams.v2.3.0-4
        version: 2.3.0-4
      name: amq-streams-2.3.x
    - currentCSV: amqstreams.v2.4.0-3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.3"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:cd1fefcd199400a504b4b9942c24ba6becafcecc952a9e39fa2729228be79e77
          createdAt: "2022-10-31 17:05:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          olm.skipRange: '>=2.3.0-0 <2.4.0-3'
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.4.0 release, AMQ Streams supports only OCP 4.8 to 4.12!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more details, see the [documentation](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.4/html/deploying_and_managing_amq_streams_on_openshift/assembly-upgrade-str)

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.4/html/deploying_and upgrading_amq_streams_on_openshift/assembly-upgrade-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:8d467fc746b78440df06f6d88d266f6ac9b5a4574a2b17fd870c173a107f8d65
        - registry.redhat.io/amq-streams/kafka-33-rhel8@sha256:aa780a250444c2426be79e95366050a33f4a4c9d68c08b58743413ea67a2d6d7
        - registry.redhat.io/amq-streams/kafka-34-rhel8@sha256:50b3be789993cfeedc4923a8e760c1cf52498b2178be3abfa3719fc2d15ce723
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:1346dcee82f2120bd2af22be9f041e057bdc32f9ad1c3ef717d599ba6519faeb
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:cd1fefcd199400a504b4b9942c24ba6becafcecc952a9e39fa2729228be79e77
        version: 2.4.0-3
      entries:
      - name: amqstreams.v2.4.0-3
        version: 2.4.0-3
      - name: amqstreams.v2.4.0-2
        version: 2.4.0-2
      - name: amqstreams.v2.4.0-1
        version: 2.4.0-1
      name: amq-streams-2.4.x
    - currentCSV: amqstreams.v2.5.2-8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
          createdAt: "2023-07-10 21:47:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.2.0-0 <2.5.2-8'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.5.2 release, AMQ Streams supports only OCP 4.12 to 4.16!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more information, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:4ede5eeed159bddacfe830a768bab4996003d4c57a496fc8ec9b41df916d4acc
        - registry.redhat.io/amq-streams/kafka-34-rhel8@sha256:95bc35951eb545b918114af1e92a7139e2e3323b7d054dcb2a060843c7326d28
        - registry.redhat.io/amq-streams/kafka-35-rhel8@sha256:8c7e8ccb6c2d5da32b70d9d0c3919c303ad73a25447f6993d964f7b19cca1072
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:3d5bcf889f3d534402a8bbfa51fc4a9499b7d6dfaac0d7b11e91363b379be192
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        - registry.redhat.io/ubi8/openjdk-17@sha256:8796da64c626c5f63f31a4e3ac0ac3b179333a7c6d5472a195b9b3f61ccd1099
        version: 2.5.2-8
      entries:
      - name: amqstreams.v2.5.2-8
        version: 2.5.2-8
      - name: amqstreams.v2.5.2-7
        version: 2.5.2-7
      - name: amqstreams.v2.5.2-6
        version: 2.5.2-6
      - name: amqstreams.v2.5.2-5
        version: 2.5.2-5
      - name: amqstreams.v2.5.2-4
        version: 2.5.2-4
      - name: amqstreams.v2.5.2-3
        version: 2.5.2-3
      - name: amqstreams.v2.5.2-2
        version: 2.5.2-2
      - name: amqstreams.v2.5.2-1
        version: 2.5.2-1
      - name: amqstreams.v2.5.2-0
        version: 2.5.2-0
      - name: amqstreams.v2.5.1-5
        version: 2.5.1-5
      - name: amqstreams.v2.5.1-4
        version: 2.5.1-4
      - name: amqstreams.v2.5.1-3
        version: 2.5.1-3
      - name: amqstreams.v2.5.1-2
        version: 2.5.1-2
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.5.x
    - currentCSV: amqstreams.v2.6.0-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.6.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.6"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.6.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:dacf7ddffe7cbe2dc35e7d3290637b3334117e09dde986e6eaeaceded7069fbf
          createdAt: "2023-10-14 18:18:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.5.0-0 <2.6.0-2'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: "**Red Hat AMQ Streams** is a massively scalable, distributed,
          and high performance data streaming platform based on the Apache Kafka®
          project. AMQ Streams provides an event streaming backbone that allows microservices
          and other application components to exchange data with extremely high throughput
          and low latency.\n**From the 2.6.0 release, AMQ Streams supports only OCP
          4.11 to 4.14! \n**The core capabilities include:** * A pub/sub messaging
          model, similar to a traditional enterprise messaging system, in which application
          components publish and consume events to/from an ordered stream\n* The long
          term, fault-tolerant storage of events\n* The ability for a consumer to
          replay streams of events\n* The ability to partition topics for horizontal
          scalability\n### Upgrades\n**!!! IMPORTANT !!!** **Direct upgrade from AMQ
          Stream 1.7 or earlier is not supported!** You have to upgrade first to one
          of the previous versions of AMQ Streams. You will also need to convert the
          CRD resources. For more information, see the [documentation for AMQ Streams
          on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).\n###
          Supported Features\n* **Manages the Kafka Cluster** - Deploys and manages
          all of the components of this complex application, including dependencies
          like Apache ZooKeeper® that are traditionally hard to administer.\n* **Includes
          Kafka Connect** - Allows for configuration of common data sources and sinks
          to move data into and out of the Kafka cluster.\n* **Topic Management**
          - Creates and manages Kafka Topics within the cluster.\n* **User Management**
          - Creates and manages Kafka Users within the cluster.\n* **Connector Management**
          - Creates and manages Kafka Connect connectors.\n* **Includes Kafka Mirror
          Maker 1 and 2** - Allows for mirroring data between different Apache Kafka®
          clusters.\n* **Includes HTTP Kafka Bridge** - Allows clients to send and
          receive messages through an Apache Kafka® cluster via HTTP protocol.\n*
          **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing
          partition replicas according to specified goals in order to achieve the
          best cluster performance.\n* **Monitoring** - Built-in support for monitoring
          using Prometheus and provided Grafana dashboards\n### Upgrading your Clusters\nThe
          AMQ Streams Operator understands how to run and upgrade between a set of
          Kafka versions. When specifying a new version in your config, check to make
          sure you aren't using any features that may have been removed. For more
          information on upgrading, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).\n###
          Storage\nAn efficient data storage infrastructure is essential to the optimal
          performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires
          block storage. The use of file storage (for example, NFS) is not recommended.\nThe
          AMQ Streams Operator supports three types of data storage:\n* Ephemeral
          (Recommended for development only!)\n* Persistent\n* JBOD (Just a Bunch
          of Disks, suitable for Kafka only. Not supported in Zookeeper.)\nAMQ Streams
          also supports advanced operations such as adding or removing disks in Apache
          Kafka® brokers or resizing the persistent volumes (where supported by the
          infrastructure).\n### Documentation\nDocumentation for the current release
          can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).\n"
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:dacf7ddffe7cbe2dc35e7d3290637b3334117e09dde986e6eaeaceded7069fbf
        - registry.redhat.io/ubi8/openjdk-17@sha256:8796da64c626c5f63f31a4e3ac0ac3b179333a7c6d5472a195b9b3f61ccd1099
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:be7466ffd7f624f769eedca2e4106c597d2bf1d95cc9679f235e6dcdec66cfa9
        - registry.redhat.io/amq-streams/kafka-35-rhel8@sha256:fa8361e5089ab4449261f5a0ad57bd0bd059dc254b94bd9ab68340faae386947
        - registry.redhat.io/amq-streams/kafka-36-rhel8@sha256:8b10bfb697b48ba3ed246fb846384f4cc67f05f670e9521edf0f47f829869404
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:44a5c4cc3086e4eac42dc78a72b7492d13df0098017288278d9006e767a480a1
        version: 2.6.0-2
      entries:
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.6.x
    - currentCSV: amqstreams.v2.7.0-7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:671c1a2fcb0856cb208c0ead539fff9571fa2281a1e3d45b3df9ebd3df8c787e
          createdAt: "2024-03-09 21:27:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.6.0-0 <2.7.0-7'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.6.0 release, Streams supports only OCP 4.12 to 4.14!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:be9b82af13cbc120bb415abf4fcc97420e543172d6450b836c47344e4dcacd00
        - registry.redhat.io/amq-streams/kafka-36-rhel9@sha256:8890c3217343d9aa3dd2ab9c7fa1742f960b5a26e09906581ce6075e61dc2888
        - registry.redhat.io/amq-streams/kafka-37-rhel9@sha256:66362c800b78003d26df9471b7f21f5c9ad7fca8e8fd2511428dfc549cdf46c2
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:a7620559f3e5a0a4d5ecee44538619f698158847d9d0a06c7168404ed6f7cd36
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:b9dbbce235b7a4f45f42184cf0b908e91e17094e971bc29a8710f35127a6b06f
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:671c1a2fcb0856cb208c0ead539fff9571fa2281a1e3d45b3df9ebd3df8c787e
        version: 2.7.0-7
      entries:
      - name: amqstreams.v2.7.0-7
        version: 2.7.0-7
      - name: amqstreams.v2.7.0-6
        version: 2.7.0-6
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.7.x
    - currentCSV: amqstreams.v2.8.0-0-0.1738265624.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.8.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:675d4acc375fb20e1a3fd5755184a318341c15f9337a11ea41e902fcda6d0bec
          createdAt: "2024-08-22 15:19:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.7.0-0 <2.8.0-0'
          olm.substitutesFor: amqstreams.v2.8.0-0
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.8.0 release, Streams supports only OCP 4.12 to 4.14!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:b46457a0a7f63518bc12b2789f75afb0e44496e62de918b9b584129c7078de86
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:026418bae8b2d425d45b2b3481f65c241d89e25f455e3fbfcf2f79536d978bca
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:675d4acc375fb20e1a3fd5755184a318341c15f9337a11ea41e902fcda6d0bec
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:4df906cf1490922a4587d96250f3be6ff605fe2caf87dfba7b812c144c5c5774
        - registry.redhat.io/amq-streams/kafka-37-rhel9@sha256:17b2d255439f38c6ef54c0a56929ae636743b12c688d42223ac3fb58729e51ad
        - registry.redhat.io/amq-streams/kafka-38-rhel9@sha256:e771a84a458388c07ecf970ec625e4203c18e5d2bd91e7571d9c44ebb09313de
        version: 2.8.0-0+0.1738265624.p
      entries:
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.8.x
    - currentCSV: amqstreams.v2.9.3-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.9.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.9"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.9.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
          createdAt: "2024-08-22 15:19:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.5.0-0 <2.9.3-2'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.9.0 release, Streams supports only OCP 4.14 to 4.18!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:14a9fcbf0d8590e6182407c534cc207d76ffdaf6571bd6e066a8b5d2cfbe0833
        - registry.redhat.io/amq-streams/kafka-38-rhel9@sha256:f9fa8ced8078e1278e7744227979633bbe085446ce581414b3d6d49b87cb330a
        - registry.redhat.io/amq-streams/kafka-39-rhel9@sha256:f710c3db4fb289e255ebd4d8bfb2eac7a757c94a34e06fb1daecd0285d0938bc
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:f912d1c8ab83b26999b021f7c967649453b4f39928f63905adf6f827495905d0
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:813f793850f89fe48e2e627db980baddb099e7fb285fc3ebd75d73ff5ed0c0b9
        version: 2.9.3-2
      entries:
      - name: amqstreams.v2.9.3-2
        version: 2.9.3-2
      - name: amqstreams.v2.9.3-1
        version: 2.9.3-1
      - name: amqstreams.v2.9.3-0
        version: 2.9.3-0
      - name: amqstreams.v2.9.2-1
        version: 2.9.2-1
      - name: amqstreams.v2.9.2-0
        version: 2.9.2-0
      - name: amqstreams.v2.9.1-2
        version: 2.9.1-2
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.9.x
    - currentCSV: amqstreams.v2.9.3-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.9.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.9"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.9.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
          createdAt: "2024-08-22 15:19:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.5.0-0 <2.9.3-2'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.9.0 release, Streams supports only OCP 4.14 to 4.18!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:14a9fcbf0d8590e6182407c534cc207d76ffdaf6571bd6e066a8b5d2cfbe0833
        - registry.redhat.io/amq-streams/kafka-38-rhel9@sha256:f9fa8ced8078e1278e7744227979633bbe085446ce581414b3d6d49b87cb330a
        - registry.redhat.io/amq-streams/kafka-39-rhel9@sha256:f710c3db4fb289e255ebd4d8bfb2eac7a757c94a34e06fb1daecd0285d0938bc
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:f912d1c8ab83b26999b021f7c967649453b4f39928f63905adf6f827495905d0
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:813f793850f89fe48e2e627db980baddb099e7fb285fc3ebd75d73ff5ed0c0b9
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
        version: 2.9.3-2
      entries:
      - name: amqstreams.v2.9.3-2
        version: 2.9.3-2
      - name: amqstreams.v2.9.3-1
        version: 2.9.3-1
      - name: amqstreams.v2.9.3-0
        version: 2.9.3-0
      - name: amqstreams.v2.9.2-1
        version: 2.9.2-1
      - name: amqstreams.v2.9.2-0
        version: 2.9.2-0
      - name: amqstreams.v2.9.1-2
        version: 2.9.1-2
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.x
    - currentCSV: amqstreams.v3.0.1-7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.0.0",
                    "metadataVersion": "4.0-IV3",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.0.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.0.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:231861dd89a01b949e9713dc2b0049530643059b44ad711e3ba17509ab21564b
          createdAt: "2025-11-14T17:16:59Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.9.0-0 <3.0.1-7'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/kafka-39-rhel9@sha256:9ed77907cbed09eb66172b0d18855d723add80b18a82fcee424148bef81e1886
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:352ab87382fc1d1d3b68833a16770c75e081a0dd07788a8ba0ab9792837c628e
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:99e4a789597e567eea920004364a20c71580a2ca58fc68ffa5ec797160d174bf
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:dd27c81c5a13a01acf5c50a802ce94d737e9280cf4053a1f3739ff4c3c6ba053
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:231861dd89a01b949e9713dc2b0049530643059b44ad711e3ba17509ab21564b
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:5d1e188d3e7b12fbb1b94ed1ac58ea059609a53243ded1bee6d1f179c2b48b4a
        version: 3.0.1-7
      entries:
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-3.0.x
    - currentCSV: amqstreams.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.1.0",
                    "metadataVersion": "4.1-IV1",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
          createdAt: "2025-12-04T17:25:00Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/kafka-41-rhel9@sha256:e2a2d7a93678a4de948fc6bde45e2b251aa129a691f555c93003fef50cac1027
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:1be01356959972d6d8b4683d6449679c8705c08c13dcb0da02f96601ad6ef424
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:03051a89cc209fa54b9cf6c6119167959dcaf38761f50c8450ae3f694ccbd2d7
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:97320d4348dc793278b28345a7bb2c255bff0f1ec12a728b88789fe4b9c07f91
        version: 3.1.0-6
      entries:
      - name: amqstreams.v3.1.0-6
        version: 3.1.0-6
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-3.1.x
    - currentCSV: amqstreams.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.1.0",
                    "metadataVersion": "4.1-IV1",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
          createdAt: "2025-12-04T17:25:00Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:03051a89cc209fa54b9cf6c6119167959dcaf38761f50c8450ae3f694ccbd2d7
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:97320d4348dc793278b28345a7bb2c255bff0f1ec12a728b88789fe4b9c07f91
        - registry.redhat.io/amq-streams/kafka-41-rhel9@sha256:e2a2d7a93678a4de948fc6bde45e2b251aa129a691f555c93003fef50cac1027
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:1be01356959972d6d8b4683d6449679c8705c08c13dcb0da02f96601ad6ef424
        version: 3.1.0-6
      entries:
      - name: amqstreams.v3.1.0-6
        version: 3.1.0-6
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-3.x
    - currentCSV: amqstreams.v2.5.2-8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
          createdAt: "2023-07-10 21:47:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.2.0-0 <2.5.2-8'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.5.2 release, AMQ Streams supports only OCP 4.12 to 4.16!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more information, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/ubi8/openjdk-17@sha256:8796da64c626c5f63f31a4e3ac0ac3b179333a7c6d5472a195b9b3f61ccd1099
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:4ede5eeed159bddacfe830a768bab4996003d4c57a496fc8ec9b41df916d4acc
        - registry.redhat.io/amq-streams/kafka-34-rhel8@sha256:95bc35951eb545b918114af1e92a7139e2e3323b7d054dcb2a060843c7326d28
        - registry.redhat.io/amq-streams/kafka-35-rhel8@sha256:8c7e8ccb6c2d5da32b70d9d0c3919c303ad73a25447f6993d964f7b19cca1072
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:3d5bcf889f3d534402a8bbfa51fc4a9499b7d6dfaac0d7b11e91363b379be192
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        version: 2.5.2-8
      entries:
      - name: amqstreams.v2.5.2-8
        version: 2.5.2-8
      - name: amqstreams.v2.5.2-7
        version: 2.5.2-7
      - name: amqstreams.v2.5.2-6
        version: 2.5.2-6
      - name: amqstreams.v2.5.2-5
        version: 2.5.2-5
      - name: amqstreams.v2.5.2-4
        version: 2.5.2-4
      - name: amqstreams.v2.5.2-3
        version: 2.5.2-3
      - name: amqstreams.v2.5.2-2
        version: 2.5.2-2
      - name: amqstreams.v2.5.2-1
        version: 2.5.2-1
      - name: amqstreams.v2.5.2-0
        version: 2.5.2-0
      - name: amqstreams.v2.5.1-5
        version: 2.5.1-5
      - name: amqstreams.v2.5.1-4
        version: 2.5.1-4
      - name: amqstreams.v2.5.1-3
        version: 2.5.1-3
      - name: amqstreams.v2.5.1-2
        version: 2.5.1-2
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-lts
    - currentCSV: amqstreams.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.1.0",
                    "metadataVersion": "4.1-IV1",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
          createdAt: "2025-12-04T17:25:00Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:03051a89cc209fa54b9cf6c6119167959dcaf38761f50c8450ae3f694ccbd2d7
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:97320d4348dc793278b28345a7bb2c255bff0f1ec12a728b88789fe4b9c07f91
        - registry.redhat.io/amq-streams/kafka-41-rhel9@sha256:e2a2d7a93678a4de948fc6bde45e2b251aa129a691f555c93003fef50cac1027
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:1be01356959972d6d8b4683d6449679c8705c08c13dcb0da02f96601ad6ef424
        version: 3.1.0-6
      entries:
      - name: amqstreams.v3.1.0-6
        version: 3.1.0-6
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: stable
    defaultChannel: stable
    packageName: amq-streams
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Automotive SIG CentOS
      provider-url: ""
    name: automotive-infra
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: automotive-infra.v0.0.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "automotive.sig.centos.org/v1",
                "kind": "ContainerBuild",
                "metadata": {
                  "name": "cb-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "automotive.sig.centos.org/v1",
                "kind": "ImageBuild",
                "metadata": {
                  "name": "imagebuild-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "automotive.sig.centos.org/v1",
                "kind": "OperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "automotive-infra"
                  },
                  "name": "operatorconfig-sample",
                  "namespace": "automotive-infra-operator"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/fedora-sig-robotics/infra-ci-operator:v0.0.10
          createdAt: "2025-03-31T14:06:33Z"
          description: Streamline CI/CD for RHIVOS and its ecosystem using OpenShift
            Pipelines
          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: "true"
          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"
          operatorframework.io/suggested-namespace: automotive-infra-operator
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://gitlab.com/fedora/sigs/robotics/infra/infra-ci-operator
          support: https://gitlab.com/fedora/sigs/robotics/infra/infra-ci-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Client
            name: clients.jumpstarter.dev
            version: v1alpha1
          - kind: ContainerBuild
            name: containerbuilds.automotive.sig.centos.org
            version: v1
          - kind: ExporterAccessPolicy
            name: exporteraccesspolicies.jumpstarter.dev
            version: v1alpha1
          - kind: Exporter
            name: exporters.jumpstarter.dev
            version: v1alpha1
          - kind: ImageBuild
            name: imagebuilds.automotive.sig.centos.org
            version: v1
          - kind: Lease
            name: leases.jumpstarter.dev
            version: v1alpha1
          - kind: OperatorConfig
            name: operatorconfigs.automotive.sig.centos.org
            version: v1
        description: This operator is designed to streamline CI/CD for RHIVOS and
          its ecosystem using OpenShift Pipelines
        displayName: Automotive-CI
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Automotive
        - RHIVOS
        - Pipelines
        - CI
        links:
        - name: Automotive infra Operator
          url: https://gitlab.com/fedora/sigs/robotics/infra/infra-ci-operator
        maintainers:
        - email: automotive-sig@lists.centos.org
          name: Automotive SIG CentOS Community
        maturity: alpha
        provider:
          name: Automotive SIG CentOS
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/community-operator-pipeline-prod/automotive-infra@sha256:6d4180ff6899d4de8ba2cd4a06ece234bbd8f0ec1bd0b4b0ae4b7a0c047121da
        - quay.io/fedora-sig-robotics/infra-ci-operator:v0.0.10
        version: 0.0.10
      entries:
      - name: automotive-infra.v0.0.10
        version: 0.0.10
      - name: automotive-infra.v0.0.9
        version: 0.0.9
      - name: automotive-infra.v0.0.8
        version: 0.0.8
      - name: automotive-infra.v0.0.7
        version: 0.0.7
      - name: automotive-infra.v0.0.6
        version: 0.0.6
      - name: automotive-infra.v0.0.5
        version: 0.0.5
      - name: automotive-infra.v0.0.4
        version: 0.0.4
      - name: automotive-infra.v0.0.3
        version: 0.0.3
      - name: automotive-infra.v0.0.2
        version: 0.0.2
      - name: automotive-infra.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: automotive-infra
    provider:
      name: Automotive SIG CentOS
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-documentdb-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-documentdb-controller.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "documentdb.services.k8s.aws/v1alpha1",
                "kind": "DBCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "documentdb.services.k8s.aws/v1alpha1",
                "kind": "DBInstance",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "documentdb.services.k8s.aws/v1alpha1",
                "kind": "DBSubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/documentdb-controller:1.2.1
          createdAt: "2025-12-18T20:33:13Z"
          description: AWS DocumentDB controller is a service controller for managing
            DocumentDB resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DBCluster represents the state of an AWS documentdb DBCluster
              resource.
            displayName: DBCluster
            kind: DBCluster
            name: dbclusters.documentdb.services.k8s.aws
            version: v1alpha1
          - description: DBInstance represents the state of an AWS documentdb DBInstance
              resource.
            displayName: DBInstance
            kind: DBInstance
            name: dbinstances.documentdb.services.k8s.aws
            version: v1alpha1
          - description: DBSubnetGroup represents the state of an AWS documentdb DBSubnetGroup
              resource.
            displayName: DBSubnetGroup
            kind: DBSubnetGroup
            name: dbsubnetgroups.documentdb.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon DocumentDB resources in AWS from within your Kubernetes cluster.

          **About Amazon DocumentDB**

          Amazon DocumentDB (with MongoDB compatibility) is a fast, reliable, and fully managed database service. Amazon DocumentDB makes it easy to set up, operate, and scale MongoDB-compatible databases in the cloud. With Amazon DocumentDB, you can run the same application code and use the same drivers and tools that you use with MongoDB.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon DocumentDB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - documentdb
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon DocumentDB Developer Resources
          url: https://aws.amazon.com/documentdb/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: documentdb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-documentdb-controller@sha256:07abf00bafb1d030c19d608f4ebb30d0cb9e72ab639a241034ceceefe4599715
        - public.ecr.aws/aws-controllers-k8s/documentdb-controller:1.2.1
        version: 1.2.1
      entries:
      - name: ack-documentdb-controller.v1.2.1
        version: 1.2.1
      - name: ack-documentdb-controller.v1.2.0
        version: 1.2.0
      - name: ack-documentdb-controller.v1.1.2
        version: 1.1.2
      - name: ack-documentdb-controller.v1.1.1
        version: 1.1.1
      - name: ack-documentdb-controller.v1.1.0
        version: 1.1.0
      - name: ack-documentdb-controller.v1.0.14
        version: 1.0.14
      - name: ack-documentdb-controller.v1.0.13
        version: 1.0.13
      - name: ack-documentdb-controller.v1.0.12
        version: 1.0.12
      - name: ack-documentdb-controller.v1.0.11
        version: 1.0.11
      - name: ack-documentdb-controller.v1.0.10
        version: 1.0.10
      - name: ack-documentdb-controller.v1.0.9
        version: 1.0.9
      - name: ack-documentdb-controller.v1.0.7
        version: 1.0.7
      - name: ack-documentdb-controller.v1.0.6
        version: 1.0.6
      - name: ack-documentdb-controller.v1.0.5
        version: 1.0.5
      - name: ack-documentdb-controller.v1.0.2
        version: 1.0.2
      - name: ack-documentdb-controller.v1.0.1
        version: 1.0.1
      - name: ack-documentdb-controller.v1.0.0
        version: 1.0.0
      - name: ack-documentdb-controller.v0.0.9
        version: 0.0.9
      - name: ack-documentdb-controller.v0.0.8
        version: 0.0.8
      - name: ack-documentdb-controller.v0.0.6
        version: 0.0.6
      name: alpha
    defaultChannel: alpha
    packageName: ack-documentdb-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat HPC Community
      provider-url: ""
    name: slurm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: slurm-operator.v0.4.1-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "Accounting",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1"
                  },
                  "name": "slurm",
                  "namespace": "slurm"
                },
                "spec": {
                  "initconf": {
                    "image": "ghcr.io/slinkyproject/sackd:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "jwtHs256KeyRef": {
                    "key": "jwt_hs256.key",
                    "name": "slurm-auth-jwths256"
                  },
                  "slurmKeyRef": {
                    "key": "slurm.key",
                    "name": "slurm-auth-slurm"
                  },
                  "slurmdbd": {
                    "args": [],
                    "image": "ghcr.io/slinkyproject/slurmdbd:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "storageConfig": {
                    "database": "slurm_acct_db",
                    "host": "mariadb",
                    "passwordKeyRef": {
                      "key": "password",
                      "name": "mariadb-password"
                    },
                    "port": 3306,
                    "username": "slurm"
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": []
                    }
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "Controller",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1"
                  },
                  "name": "slurm",
                  "namespace": "slurm"
                },
                "spec": {
                  "accountingRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "epilogScriptRefs": null,
                  "extraConf": "PartitionName=all Nodes=ALL Default=YES MaxTime=UNLIMITED State=UP\n",
                  "jwtHs256KeyRef": {
                    "key": "jwt_hs256.key",
                    "name": "slurm-auth-jwths256"
                  },
                  "logfile": {
                    "image": "docker.io/library/alpine:latest",
                    "resources": {}
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "enabled": true,
                    "resources": {
                      "requests": {
                        "storage": "4Gi"
                      }
                    }
                  },
                  "prologScriptRefs": null,
                  "reconfigure": {
                    "image": "ghcr.io/slinkyproject/slurmctld:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "slurmKeyRef": {
                    "key": "slurm.key",
                    "name": "slurm-auth-slurm"
                  },
                  "slurmctld": {
                    "args": [],
                    "image": "ghcr.io/slinkyproject/slurmctld:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": []
                    }
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "LoginSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1",
                    "loginset.slinky.slurm.net/name": "slurm-login-slinky"
                  },
                  "name": "slurm-login-slinky",
                  "namespace": "slurm"
                },
                "spec": {
                  "controllerRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "login": {
                    "env": [],
                    "image": "ghcr.io/slinkyproject/login:25.05-ubuntu24.04",
                    "resources": {},
                    "securityContext": {
                      "privileged": true
                    },
                    "volumeMounts": []
                  },
                  "replicas": 1,
                  "service": {
                    "spec": {
                      "type": "LoadBalancer"
                    }
                  },
                  "sssdConfRef": {
                    "key": "sssd.conf",
                    "name": "slurm-login-slinky-sssd-conf"
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1",
                        "loginset.slinky.slurm.net/name": "slurm-login-slinky"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": [],
                      "volumes": []
                    }
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "NodeSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1",
                    "nodeset.slinky.slurm.net/name": "slurm-worker-slinky"
                  },
                  "name": "slurm-worker-slinky",
                  "namespace": "slurm"
                },
                "spec": {
                  "controllerRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "logfile": {
                    "image": "docker.io/library/alpine:latest",
                    "resources": {}
                  },
                  "partition": {
                    "enabled": true
                  },
                  "replicas": 1,
                  "slurmd": {
                    "args": [],
                    "env": [
                      {
                        "name": "POD_CPUS",
                        "value": "0"
                      },
                      {
                        "name": "POD_MEMORY",
                        "value": "0"
                      }
                    ],
                    "image": "ghcr.io/slinkyproject/slurmd:25.05-ubuntu24.04",
                    "resources": {},
                    "volumeMounts": []
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1",
                        "nodeset.slinky.slurm.net/name": "slurm-worker-slinky"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "hostname": "slinky-",
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": [],
                      "volumes": []
                    }
                  },
                  "updateStrategy": {
                    "rollingUpdate": {
                      "maxUnavailable": "100%"
                    },
                    "type": "RollingUpdate"
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "RestApi",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1"
                  },
                  "name": "slurm",
                  "namespace": "slurm"
                },
                "spec": {
                  "controllerRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "replicas": 1,
                  "slurmrestd": {
                    "args": [],
                    "env": [],
                    "image": "ghcr.io/slinkyproject/slurmrestd:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": []
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, Big Data
          certified: "false"
          containerImage: ghcr.io/slinkyproject/slurm-operator:0.4.0
          createdAt: "2025-10-29T12:41:12Z"
          description: Run Slurm on Kubernetes, by SchedMD. A Slinky project.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "slinky",
                "labels": {
                  "pod-security.kubernetes.io/enforce": "privileged",
                  "pod-security.kubernetes.io/audit": "privileged",
                  "pod-security.kubernetes.io/warn": "privileged",
                },
                "annotations": {
                  "openshift.io/node-selector": ""
                },
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/redhat-hpc/slinky-on-openshift
          support: SchedMD
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Accounting is the Schema for the accountings API
            displayName: Accounting
            kind: Accounting
            name: accountings.slinky.slurm.net
            version: v1alpha1
          - description: Controller is the Schema for the controllers API
            displayName: Controller
            kind: Controller
            name: controllers.slinky.slurm.net
            version: v1alpha1
          - description: A set of homogeneous login nodes (submit node, jump host)
              for Slurm, which manage user identity via SSSD.
            displayName: LoginSet
            kind: LoginSet
            name: loginsets.slinky.slurm.net
            version: v1alpha1
          - description: A set of homogeneous Slurm workers (compute nodes), which
              are delegated to execute the Slurm workload.
            displayName: NodeSet
            kind: NodeSet
            name: nodesets.slinky.slurm.net
            version: v1alpha1
          - description: Restapi is the Schema for the restapis API
            displayName: RestAPI
            kind: RestApi
            name: restapis.slinky.slurm.net
            version: v1alpha1
          - description: Token CRD to define a secret containing a JWT, generated
              from an HS256 Key
            displayName: Token
            kind: Token
            name: tokens.slinky.slurm.net
            version: v1alpha1
        description: |
          # Kubernetes Operator for Slurm Clusters

          Run [Slurm] on [Kubernetes], by [SchedMD]. A [Slinky] project.

          ## Overview

          [Slurm] and [Kubernetes] are workload managers originally designed for different
          kinds of workloads. In broad strokes: Kubernetes excels at scheduling workloads
          that typically run for an indefinite amount of time, with potentially vague
          resource requirements, on a single node, with loose policy, but can scale its
          resource pool infinitely to meet demand; Slurm excels at quickly scheduling
          workloads that run for a finite amount of time, with well defined resource
          requirements and topology, on multiple nodes, with strict policy, but its
          resource pool is known.

          This project enables the best of both workload managers, unified on Kubernetes.
          It contains a [Kubernetes] operator to deploy and manage certain components of
          [Slurm] clusters. This repository implements [custom-controllers] and
          [custom resource definitions (CRDs)][crds] designed for the lifecycle (creation,
          upgrade, graceful shutdown) of Slurm clusters.

          ### Slurm Cluster

          Slurm clusters are very flexible and can be configured in various ways. Our
          Slurm helm chart provides a reference implementation that is highly customizable
          and tries to expose everything Slurm has to offer.

          ## Features

          ### NodeSets

          A set of homogeneous Slurm workers (compute nodes), which are delegated to
          execute the Slurm workload.

          The operator will take into consideration the running workload among Slurm nodes
          as it needs to scale-in, upgrade, or otherwise handle node failures. Slurm nodes
          will be marked as [drain][slurm-drain] before their eventual termination pending
          scale-in or upgrade.

          Slurm node states (e.g. Idle, Allocated, Mixed, Down, Drain, Not Responding,
          etc...) are applied to each NodeSet pod via their pod conditions; each NodeSet
          pod contains a pod status that reflects their own Slurm node state.

          The operator supports NodeSet scale to zero, scaling the resource down to zero
          replicas. Hence, any Horizontal Pod Autoscaler (HPA) that also support scale to
          zero can be best paired with NodeSets.

          ### LoginSets

          A set of homogeneous login nodes (submit node, jump host) for Slurm, which
          manage user identity via SSSD.

          The operator supports LoginSet scale to zero, scaling the resource down to zero
          replicas. Hence, any Horizontal Pod Autoscaler (HPA) that also support scale to
          zero can be best paired with LoginSets.

          ### Hybrid Support

          Sometimes a Slurm cluster has some, but not all, of its components in
          Kubernetes. The operator and its CRD are designed support these use cases.

          ### Slurm

          Slurm is a full featured HPC workload manager. To highlight a few features:

          - [**Accounting**][slurm-accounting]: collect accounting information for every
            job and job step executed.
          - [**Partitions**][slurm-arch]: job queues with sets of resources and
            constraints (e.g. job size limit, job time limit, users permitted).
          - [**Reservations**][slurm-reservations]: reserve resources for jobs being
            executed by select users and/or select accounts.
          - [**Job Dependencies**][slurm-dependency]: defer the start of jobs until the
            specified dependencies have been satisfied.
          - [**Job Containers**][slurm-containers]: jobs which run an unprivileged OCI
            container bundle.
          - [**MPI**][slurm-mpi]: launch parallel MPI jobs, supports various MPI
            implementations.
          - [**Priority**][slurm-priority]: assigns priorities to jobs upon submission and
            on an ongoing basis (e.g. as they age).
          - [**Preemption**][slurm-preempt]: stop one or more low-priority jobs to let a
            high-priority job run.
          - [**QoS**][slurm-qos]: sets of policies affecting scheduling priority,
            preemption, and resource limits.
          - [**Fairshare**][slurm-fairshare]: distribute resources equitably among users
            and accounts based on historical usage.
          - [**Node Health Check**][slurm-healthcheck]: periodically check node health via
            script.

          ## Compatibility

          | Software   |                             Minimum Version                              |
          | :--------- | :----------------------------------------------------------------------: |
          | Kubernetes | [v1.29](https://kubernetes.io/blog/2023/12/13/kubernetes-v1-29-release/) |
          | Slurm      | [25.05](https://www.schedmd.com/slurm-version-25-05-0-is-now-available/) |

          ## Documentation

          Project documentation is located in the docs directory of [this repository](https://github.com/SlinkyProject/slurm-operator)

          There is also supplemental work in the community for enabling [Slinky On OpenShift](https://github.com/redhat-hpc/slinky-on-openshift)

          ## Support and Development

          Feature requests, code contributions, and bug reports are welcome!

          Github/Gitlab submitted issues and PRs/MRs are handled on a best effort basis.

          The SchedMD official issue tracker is at <https://support.schedmd.com/>.

          To schedule a demo or simply to reach out, please
          [contact SchedMD][contact-schedmd].

          ## License

          Copyright (C) SchedMD LLC.

          Licensed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0) you
          may not use project except in compliance with the license.

          Unless required by applicable law or agreed to in writing, software distributed
          under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
          CONDITIONS OF ANY KIND, either express or implied. See the License for the
          specific language governing permissions and limitations under the License.

          <!-- links -->


          [cert-manager]: https://cert-manager.io/docs/installation/helm/
          [contact-schedmd]: https://www.schedmd.com/slurm-resources/contact-schedmd/
          [crds]: https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#customresourcedefinitions
          [custom-controllers]: https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#custom-controllers

          [kubernetes]: https://kubernetes.io/
          [schedmd]: https://schedmd.com/
          [slinky]: https://slinky.ai/
          [slinky-docs]: https://slinky.schedmd.com/
          [slurm]: https://slurm.schedmd.com/overview.html
          [slurm-accounting]: https://slurm.schedmd.com/accounting.html
          [slurm-arch]: https://slurm.schedmd.com/quickstart.html#arch
          [slurm-containers]: https://slurm.schedmd.com/containers.html
          [slurm-dependency]: https://slurm.schedmd.com/sbatch.html#OPT_dependency

          [slurm-drain]: https://slurm.schedmd.com/scontrol.html#OPT_DRAIN
          [slurm-fairshare]: https://slurm.schedmd.com/fair_tree.html
          [slurm-healthcheck]: https://slurm.schedmd.com/slurm.conf.html#OPT_HealthCheckProgram
          [slurm-mpi]: https://slurm.schedmd.com/mpi_guide.html
          [slurm-preempt]: https://slurm.schedmd.com/preempt.html
          [slurm-priority]: https://slurm.schedmd.com/priority_multifactor.html
          [slurm-qos]: https://slurm.schedmd.com/qos.html
          [slurm-reservations]: https://slurm.schedmd.com/reservations.html
        displayName: Slurm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - slurm-operator
        - slurm
        - slinky
        links:
        - name: Slinky on OpenShift
          url: https://github.com/redhat-hpc/slinky-on-openshift
        - name: Slurm Operator
          url: https://github.com/SlinkyProject/slurm-operator
        maintainers:
        - email: jkincl@redhat.com
          name: Jason Kincl
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: Red Hat HPC Community
        relatedImages:
        - quay.io/community-operator-pipeline-prod/slurm-operator:0.4.1-1
        - ghcr.io/slinkyproject/slurm-operator-webhook:0.4.1
        - ghcr.io/slinkyproject/slurm-operator:0.4.1
        version: 0.4.1-1
      entries:
      - name: slurm-operator.v0.4.1-1
        version: 0.4.1-1
      - name: slurm-operator.v0.4.0
        version: 0.4.0
      name: alpha
    defaultChannel: alpha
    packageName: slurm-operator
    provider:
      name: Red Hat HPC Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: gcp-filestore-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gcp-filestore-csi-driver-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9-operator@sha256:8ddda9375e180daf57f1e526bdddf91b05e736afdab4b7a29add258786cf98be
          createdAt: "2021-07-14T00:00:00Z"
          description: Install and configure GCP Filestore CSI driver.
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=4.11.0-0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/gcp-filestore-csi-driver-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Operator that installs and configures the CSI driver for GCP Filestore.
        displayName: GCP Filestore CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - filestore
        links:
        - name: Documentation
          url: https://github.com/openshift/gcp-filestore-csi-driver-operator
        - name: Source Repository
          url: https://github.com/openshift/gcp-filestore-csi-driver-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9-operator@sha256:8ddda9375e180daf57f1e526bdddf91b05e736afdab4b7a29add258786cf98be
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9@sha256:2e146263311f096251110baa0a88bc49b73d76effe5d1bcc4f2b8d1230206090
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-operator-bundle@sha256:a7ddfc685797cc2f2d26366b6573fb46285097adaf0727198cf19e91c8dc5531
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        version: 4.20.0-202512081147
      entries:
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: gcp-filestore-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-multicluster-orchestrator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-multicluster-orchestrator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multicluster.odf.openshift.io/v1alpha1",
                "kind": "MirrorPeer",
                "metadata": {
                  "name": "mirrorpeer-sample"
                },
                "spec": {
                  "items": [
                    {
                      "clusterName": "local-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    },
                    {
                      "clusterName": "spoke-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    }
                  ],
                  "manageS3": false,
                  "schedulingIntervals": [
                    "5m"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          console.openshift.io/plugins: '["odf-multicluster-console"]'
          createdAt: "2025-12-18T07:59:46Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MirrorPeer is the Schema for the mirrorpeers API
            displayName: Mirror Peer
            kind: MirrorPeer
            name: mirrorpeers.multicluster.odf.openshift.io
            version: v1alpha1
        description: |
          Orchestrator for OpenShift Data Foundation clusters running across multiple OpenShift clusters.
          It uses Red Hat Advanced Cluster Management for Kubernetes as the multicluster control plane.
        displayName: ODF Multicluster Orchestrator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odf
        - multicluster
        - orchestrator
        - storage
        - acm
        links:
        - name: ODF Multicluster Orchestrator
          url: https://github.com/red-hat-storage/odf-multicluster-orchestrator
        maintainers:
        - email: uchapaga@redhat.com
          name: Umanga Chapagain
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-multicluster-operator-bundle@sha256:2041de7d28a07fbc593ef975b59fb9470b5a13070d4eff9ae225c6180b3f9417
        - registry.redhat.io/odf4/odf-multicluster-console-rhel9@sha256:0d937371ad5b44f668e96d35b2fbfe189b72f5ec89ab55faea9359c92d1026ab
        - registry.redhat.io/odf4/odf-multicluster-rhel9-operator@sha256:635869f91d1c5be205545396abf0d6d8c6b2a4efedfb2a3d10f97a9f13b936d2
        version: 4.19.9-rhodf
      entries:
      - name: odf-multicluster-orchestrator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-multicluster-orchestrator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-multicluster-orchestrator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-multicluster-orchestrator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-multicluster-orchestrator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-multicluster-orchestrator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-multicluster-orchestrator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-multicluster-orchestrator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-multicluster-orchestrator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-multicluster-orchestrator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-multicluster-orchestrator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multicluster.odf.openshift.io/v1alpha1",
                "kind": "MirrorPeer",
                "metadata": {
                  "name": "mirrorpeer-sample"
                },
                "spec": {
                  "items": [
                    {
                      "clusterName": "local-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    },
                    {
                      "clusterName": "spoke-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    }
                  ],
                  "manageS3": false,
                  "schedulingIntervals": [
                    "5m"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          console.openshift.io/plugins: '["odf-multicluster-console"]'
          createdAt: "2025-12-18T07:47:53Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MirrorPeer is the Schema for the mirrorpeers API
            displayName: Mirror Peer
            kind: MirrorPeer
            name: mirrorpeers.multicluster.odf.openshift.io
            version: v1alpha1
        description: |
          Orchestrator for OpenShift Data Foundation clusters running across multiple OpenShift clusters.
          It uses Red Hat Advanced Cluster Management for Kubernetes as the multicluster control plane.
        displayName: ODF Multicluster Orchestrator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odf
        - multicluster
        - orchestrator
        - storage
        - acm
        links:
        - name: ODF Multicluster Orchestrator
          url: https://github.com/red-hat-storage/odf-multicluster-orchestrator
        maintainers:
        - email: uchapaga@redhat.com
          name: Umanga Chapagain
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-multicluster-operator-bundle@sha256:fad8bd45737ac4588b79f02c519e153949cbdb2ff4de8b5aff315283004b15a9
        - registry.redhat.io/odf4/odf-multicluster-console-rhel9@sha256:34470d03b82ccd51a32c24697583b485aa2971e83b30f185e35f57468e99c9fb
        - registry.redhat.io/odf4/odf-multicluster-rhel9-operator@sha256:ccb80153311fb5e13ba15eaff3eca09d157bca6aebbf055783418843858e16eb
        version: 4.20.4-rhodf
      entries:
      - name: odf-multicluster-orchestrator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-multicluster-orchestrator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-multicluster-orchestrator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-multicluster-orchestrator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-multicluster-orchestrator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-multicluster-orchestrator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Perficient Inc
      provider-url: http://www.perficient.com
    name: devopsinabox
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: devopsinabox.v0.0.45
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apimc.com.perficient/v1alpha1",
                "kind": "DevSecOpsManager",
                "metadata": {
                  "name": "devsecopsmanager-sample"
                },
                "spec": {
                  "config": {
                    "repoPath": "",
                    "repoUrl": ""
                  },
                  "forwarding": {
                    "fluentd": {
                      "affinity": {},
                      "caFile": "files/default-openshift-logging-fluentd.crt",
                      "image": "registry.redhat.io/openshift4/ose-logging-fluentd:v4.4",
                      "keyFile": "files/default-openshift-logging-fluentd.key",
                      "loglevel": "warn",
                      "nodeSelector": {},
                      "passphrase": "",
                      "persistence": {
                        "accessMode": "ReadWriteOnce",
                        "enabled": false,
                        "size": "10Gi",
                        "storageClass": ""
                      },
                      "port": 24224,
                      "replicas": 2,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "1024Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "512Mi"
                        }
                      },
                      "sharedkey": "splunkforwarding",
                      "ssl": true,
                      "tolerations": [],
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      }
                    },
                    "preserveDefault": true
                  },
                  "fullnameOverride": "",
                  "git": {
                    "password": "",
                    "server": "https://gitlab.com",
                    "token": "",
                    "username": ""
                  },
                  "nameOverride": "",
                  "prometheus": {
                    "token": ""
                  }
                }
              },
              {
                "apiVersion": "apimc.com.perficient/v1alpha1",
                "kind": "ManagedNamespace",
                "metadata": {
                  "name": "managednamespace-sample"
                },
                "spec": {
                  "config": {
                    "repoBranch": "master",
                    "repoPath": "",
                    "repoUrl": ""
                  },
                  "container": {
                    "password": "",
                    "registry": "https://quay.io",
                    "username": ""
                  },
                  "fullnameOverride": "",
                  "git": {
                    "password": "",
                    "server": "https://gitlab.com",
                    "token": "",
                    "username": ""
                  },
                  "manager": {
                    "namespace": ""
                  },
                  "mirrors": {
                    "maven": ""
                  },
                  "nameOverride": ""
                }
              },
              {
                "apiVersion": "apimc.com.perficient/v1alpha1",
                "kind": "SpringBootApp",
                "metadata": {
                  "name": "springbootapp-sample"
                },
                "spec": {
                  "autoscaling": {
                    "enabled": false,
                    "maxReplicas": 100,
                    "minReplicas": 1,
                    "targetCPUUtilizationPercentage": 80
                  },
                  "config": {
                    "repo": ""
                  },
                  "container": {
                    "image": "placeholder",
                    "registry": ""
                  },
                  "fullnameOverride": "",
                  "git": {
                    "branch": "master",
                    "module": "",
                    "url": ""
                  },
                  "management": {
                    "port": 8081
                  },
                  "maven": {
                    "mirror": ""
                  },
                  "nameOverride": "",
                  "podAnnotations": {},
                  "replicaCount": 1,
                  "resources": {},
                  "service": {
                    "port": 8080
                  },
                  "serviceAccount": {
                    "annotations": {}
                  },
                  "version": {
                    "branch": "",
                    "image": "placeholder",
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Modernization & Migration,Developer Tools,Application Runtime
          containerImage: quay.io/mrethers/devopsinabox-operator:v0.0.45
          createdAt: 2021-03-03 10:51:09Z
          description: Perficient's DevSecOps Manager For Kubernetes Applications
          operators.operatorframework.io/builder: operator-sdk-v1.4.2
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/prft-rh/devopsinabox-operator
          support: Matthieu Rethers
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DevSecOpsManager
            name: devsecopsmanagers.apimc.com.perficient
            version: v1alpha1
          - kind: ManagedNamespace
            name: managednamespaces.apimc.com.perficient
            version: v1alpha1
          - kind: SpringBootApp
            name: springbootapps.apimc.com.perficient
            version: v1alpha1
        description: "The devops-in-a-box Operator manages the entire lifecycle of
          your applications in Kubernetes. It encapsulates all the best devsecops
          practices gathered by Perficient over the years working on many large projects.
          Use it to migrate existing applications with minimum changes or deploy new
          ones with little to no knowledge of Kubernetes.\n\nOnce installed, the Devops-in-a-box
          operator provides the following features:\n\n* **Create/Destroy**: Easily
          launch a new DevSecOpsManager instance to bootstrap your cluster and start
          deploying new applications with total confidence.\n\n* **Gitops Simplified**:
          Configure your cluster and individual applications through Git and watch
          your changes propagate instantly. Just point to where your code is and let
          the operator do the rest with preconfigured cloud-native CI/CD pipelines.\n\n*
          **Production-Ready**: Automatically register your applications with Openshift
          logging and monitoring systems and enjoy special additions for Spring Boot
          like custom dashboards and searchable logs.\n\n*Contact us on Github for
          installation and usage instruction*\n\n### Other Supported Features\n\n**Blue/Green,
          Canary, A/B Deployments**\n\nRun multiple versions of your applications
          simultaneously and configure traffic rules to target specific groups of
          users using Service Mesh.\n\n**Updates via automated operations**\n\nGet
          the latest enhancements automatically through the Operator Lifecycle Manager
          and upgrade all your running applications at once. "
        displayName: Devops-in-a-box
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devops
        - devsecops
        - spring
        - boot
        - java
        - gitops
        - cicd
        - argo
        links:
        - name: Devops-in-a-box Operator
          url: https://github.com/prft-rh/devopsinabox-operator
        maintainers:
        - email: matthieu.rethers@perficient.com
          name: Matthieu Rethers
        maturity: alpha
        provider:
          name: Perficient Inc
          url: http://www.perficient.com
        relatedImages:
        - quay.io/mrethers/devopsinabox-operator:v0.0.45
        - quay.io/openshift-community-operators/devopsinabox@sha256:1c2ad76102151a56ecd753d9b86fd9f155d64b912067738d1858d33a02557928
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        version: 0.0.45
      entries:
      - name: devopsinabox.v0.0.45
        version: 0.0.45
      name: alpha
    defaultChannel: alpha
    packageName: devopsinabox
    provider:
      name: Perficient Inc
      url: http://www.perficient.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://access.redhat.com/products/red-hat-fuse
    name: fuse-online
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fuse-online.v7.10.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:ed4faedcb97bb6a45f568586ff19da19da31ecbc304f12e0ae7978381247744a
          createdAt: 2022-01-31 15:55:46 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus@sha256:7f679d6c03535e300dac366f4bc6dd8d781d96dc47592836713f8bb76be36fa9
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:ed4faedcb97bb6a45f568586ff19da19da31ecbc304f12e0ae7978381247744a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:96810c770f75057b8bba6b78a5ba414c8289315d8af1a387f681ae5e4fb7d6dd
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:fcdd0292ebfc7e9edc36241f63b54a9d924a7605329c934ff2b10373af26dbbf
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:df2d55dd8092e9e94d034166890117cf5d1cfd5cf52ef0f90cfa2374cc9e2d06
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:3f0277e2c278740307c9b2d966f539ba12317e306198cb6c4c1c52a2ad9f4f40
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:53777788253eaa1199e1854d14782619aeec0df9844d86b83742fe0005671cde
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:5dd1bc8f6b7e724736f4aeac86409bda3e0f64f62b736688e9572d14411232f1
        - registry.redhat.io/rhel8/postgresql-12@sha256:44215c5b244b190c82d9d371a8ffd39b0c83576bd85c980cc72782a5cf9e6e1b
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:5048cd4fab2f98e6000bc60835c539cc40b70dbe265e927cfe185595347d8054
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:ef229a4c8851ec495f28d0eeab83b137cd02698e283f76ea1b32271b7222621b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:4f8849362e9ed6ff95d318a04e287b7ba33254a2cf7abdaf9b90cab7cbba6646
        version: 7.10.4
      entries:
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.10.x
    - currentCSV: fuse-online.v7.11.1-0.1687357787.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:658af3fc7819efb7cc39cd3a0504dcddc2ce7788c9b1e5178df869f7c9a742a8
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.11.1-0.1684718286.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-12@sha256:9248c4eaa8aeedacc1c06d7e3141ca1457147eef59e329273eb78e32fcd27e79
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:e3a13ea8b84b9e1abd158d394e11113e5f6c04d879547fa1d3e8638f1ac979d8
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:658af3fc7819efb7cc39cd3a0504dcddc2ce7788c9b1e5178df869f7c9a742a8
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:8b9bd777bcbd20b1a1bbbc18274a5076a67bea1f928d772cb243c57fb1da7408
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:4de91e4527022e1b25df8d3835ddf778f773c20334314be9ba01a885c82287f5
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:ac514973ec428d815d7a248d09d27f2a84f762aedfea63b3b48de9e633267ed5
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:251c29e81f8e338f980b475b841647a977807908c388f4c86e18da7bff1b198a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:400a6ee03c3200c19b9b15c5d037a849633156a62e13922fb2e62838024ae69c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:a2b1cd0256f30aff8fa37c332419b4483c0bfe34fb4f574ad8f18b0858969342
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:3d98d775bec85704c9a10c2f0d8e4f8116b7a41494f73c0b763e010262e5cd4d
        version: 7.11.1+0.1687357787.p
      entries:
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.11.x
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.12.x
    - currentCSV: fuse-online.v7.9.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta2",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:c70c5e76dc3db559c722bea2a767eb7dcba1eda786e1ef3a45c4cf32e1aca9ee
          createdAt: 2021-07-21 12:25:15 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta2
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to the product documentation at https://access.redhat.com/documentation/en-us/red_hat_fuse
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bafd85b0fd1256b8a60a2bb368a7e68f5dbad72718e5059a65660e01a425d8e2
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:75d5772c792a7c795281acec3d59e90021c109e9d7d1110868be0b882768aefb
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:eff9f8edf28ccbadcacab2022fff9e6bc93926af97521b49e3968eaf7b6fda65
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:c3e95e808eecba8ac57632452d3553509131ca783f62c68754a582cf5c55efab
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:d6f0c804c179fa559d3baed2e2d106c916a0439dc2215c4d34b878bc2e9bc281
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:c70c5e76dc3db559c722bea2a767eb7dcba1eda786e1ef3a45c4cf32e1aca9ee
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:60d5cf00411b03af3f1149a2bb3aeeb196c063d19625f876a094ae6baf46b54b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:13e9ea359cbcd3e0e94a6589b86b708dc84197f152701fd4092fffa234d11b58
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:c668fe1f5d25baddf627acd79df4c8d2ab8b05309d3d41784ddc0a10dd5f34ad
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:f65600506db985689e5b7cd8b838e646d4268a0c4e272e19d7db3577a8dd7ac4
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:31258400bb37f4b8837ef294820f8a728ae83f8031d4e01ff0392690a315a30f
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:d6df09b15599e776b49e1d46aa01728fd02d5629cee65e77dc277c0166554e0a
        version: 7.9.3
      entries:
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.9.x
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: candidate
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: latest
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: stable
    defaultChannel: latest
    packageName: fuse-online
    provider:
      name: Red Hat
      url: https://access.redhat.com/products/red-hat-fuse
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Mantisnet
      provider-url: https://www.mantisnet.com
    name: tawon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tawon-operator.v2.29.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tawon.mantisnet.com/v1alpha1",
                "kind": "Directive",
                "metadata": {
                  "name": "amf-h2"
                },
                "spec": {
                  "condition": {
                    "equal": {
                      "field": "process.name",
                      "value": "amf"
                    }
                  },
                  "container": {
                    "resources": {
                      "limits": {
                        "cpu": "500m"
                      }
                    }
                  },
                  "pod": {
                    "nodeSelector": {
                      "myNodeType": "nodeType1"
                    }
                  },
                  "tasks": [
                    {
                      "config": {
                        "filter": "port 8080"
                      },
                      "task": "payload"
                    },
                    {
                      "task": "h2"
                    },
                    {
                      "config": {
                        "addr": "nats://nats:4222",
                        "topic": "hello"
                      },
                      "task": "publish"
                    }
                  ]
                }
              },
              {
                "apiVersion": "tawon.mantisnet.com/v1alpha1",
                "kind": "TopologyAggregator",
                "metadata": {
                  "name": "topology-aggregator"
                },
                "spec": {
                  "messaging": {
                    "nats": {
                      "url": "nats://nats:4222"
                    }
                  },
                  "pod": {
                    "nodeSelector": {
                      "myNodeType": "nodeType1"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2023-11-13T01:16:29Z"
          olm.skipRange: '>=2.23.0 <2.29.1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Directive allows to define a Tawon task pipeline that will
              be applied to a Kubernetes cluster.
            displayName: Tawon Directive
            kind: Directive
            name: directives.tawon.mantisnet.com
            version: v1alpha1
          - description: TopologyAggregator is the Schema for the topologyaggregators
              API
            displayName: Tawon Topology Aggregator
            kind: TopologyAggregator
            name: topologyaggregators.tawon.mantisnet.com
            version: v1alpha1
        description: Tawon is a cloud-native observability fabric for deeply instrumenting
          microservice-based applications.
        displayName: Tawon
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - networking
        - metrics
        - ebpf
        links:
        - name: Tawon Docs
          url: https://docs.tawon.xmantis.net
        maintainers:
        - email: elliott@mantisnet.com
          name: Elliott Starin
        - email: nicolas@mantisnet.com
          name: Nicolas Paton
        - email: thiago@mantisnet.com
          name: Thiago Navarro
        maturity: alpha
        provider:
          name: Mantisnet
          url: https://www.mantisnet.com
        relatedImages:
        - registry.connect.redhat.com/a5f1f0cc7ac3db90370970f9b/tawon@sha256:3691c0948c8eb266ada348de504622227af6516f3b3d331eb09fd258dd0609a5
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d99a8d144816b951a67648c12c0b988936ccd25cf3754f3cd85ab8c01592248f
        - quay.io/mantisnet/kernel-headers@sha256:242e837af831b6eed98d522b6bae7416928b9fbe451fb6e02ffa678686771068
        - quay.io/mantisnet/kernel-headers@sha256:2aa3bc7871fe0fc0a79ac812d941e55cd0d25a5f0d1d9b3e2435aab6f3d70c67
        - quay.io/mantisnet/nats@sha256:6afc7ced92181a7c12d709e9693740847297dc5d60ab78cbac7b9b6c859ecdd1
        - quay.io/mantisnet/tawon-operator@sha256:d5669dde46bb30411964baa86844d97721655886769b96809626246a4123caad
        - quay.io/mantisnet/tawon@sha256:83575079fe00ae6e53bb13005b94ef0047cc1974d95015c19e64dd53e13bcb93
        - quay.io/mantisnet/tawonctl@sha256:d436ef902bb08d830f64f34fdb86b20d2bd18d86233c8240014f0722c60e5e94
        version: 2.29.1
      entries:
      - name: tawon-operator.v2.29.1
        version: 2.29.1
      name: alpha
    defaultChannel: alpha
    packageName: tawon-operator
    provider:
      name: Mantisnet
      url: https://www.mantisnet.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Netscaler
      provider-url: https://www.netscaler.com
    name: netscaler-adm-agent-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: netscaler-adm-agent-operator.v141.60.38
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgent",
                "metadata": {
                  "name": "adm-agent"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "adm.cloud.com",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-55.40",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgentOnprem",
                "metadata": {
                  "name": "adm-agent-onprem"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "<adm server ip>",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-60.38",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:9d9c9fbeca81441737ff9a4b371684dbf248212241e400da4c7ad0f4c391ff55
          createdAt: "2025-11-19T07:38:53Z"
          description: This is an operator to deploy container-based ADM agent to
            connect NetScaler CPX with ADM Service for management and monitoring.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler ADM Agent Operator On Prem
            displayName: NetScaler ADM Agent Operator On Prem
            kind: AdmAgentOnprem
            name: admagentonprems.netscaler.com
            version: v1
          - description: To install NetScaler ADM Agent Operator
            displayName: NetScaler ADM Agent Operator for Service
            kind: AdmAgent
            name: admagents.netscaler.com
            version: v1
        description: |-
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster.
          Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Agent Operator for Service](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          2. [NetScaler Agent Operator for On Prem](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          ### Installation

          Refer [installation instructions](https://github.com/netscaler/netscaler-k8s-ingress-controller/blob/master/docs/deploy/deploy-ns-operator.md)
          This operator version contains:
          1. NetScaler ADM Agent for Service [141.55.40](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v1.40.12)
          2. NetScaler ADM Agent for OnPrem[141.60.38](https://docs.netscaler.com/en-us/citrix-adc/14-1/citrix-adc-release-notes/release-notes-14-1-17-38)
          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin)
          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: Netscaler Adm Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Ingress
        - NetScaler
        - ADC
        - Kubernetes
        - OpenShift
        - Citrix
        - Controller
        - Observability
        - Metrices
        links:
        - name: Netscaler Adm Agent Operator
          url: https://netscaler-adm-agent-operator.domain
        maintainers:
        - email: pavan.belani@cloud.com
          name: Pavan Belani
        - email: swapnil.khanderaokakade@cloud.com
          name: Swapnil Khanderao
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Netscaler
          url: https://www.netscaler.com
        relatedImages:
        - quay.io/citrix/adm-agent@sha256:65c052c60999ffb4fe611fb10ba620c248720e1a483313a623e61769228ddd85
        - quay.io/citrix/developers-adm-agent@sha256:d7cbc49faae3e5502f0238c271f51249e827e11f3da1138acce1deced69bff34
        - registry.connect.redhat.com/citrix/admagent-operator-bundle@sha256:a43b3be056522477a467722cc82c492561512f97f6f0e6a4c7004921a07eb568
        - registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:9d9c9fbeca81441737ff9a4b371684dbf248212241e400da4c7ad0f4c391ff55
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        version: 141.60.38
      entries:
      - name: netscaler-adm-agent-operator.v141.60.38
        version: 141.60.38
      name: alpha
    - currentCSV: netscaler-adm-agent-operator.v141.60.54
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgent",
                "metadata": {
                  "name": "adm-agent"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "adm.cloud.com",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-55.40",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgentOnprem",
                "metadata": {
                  "name": "adm-agent-onprem"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "<adm server ip>",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-60.54",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:49a08eb5ed1f23e877d90dcd7fa8f952e2ec7ed4982649995be181c25f8743b1
          createdAt: "2025-12-11T10:08:16Z"
          description: This is an operator to deploy container-based NetScaler Console
            agent to manage NetScaler CPX with NetScaler Console for management and
            monitoring.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler ADM Agent Operator On Prem
            displayName: NetScaler ADM Agent Operator On Prem
            kind: AdmAgentOnprem
            name: admagentonprems.netscaler.com
            version: v1
          - description: To install NetScaler ADM Agent Operator
            displayName: NetScaler ADM Agent Operator for Service
            kind: AdmAgent
            name: admagents.netscaler.com
            version: v1
        description: |-
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster.
          Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Agent Operator for Service](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          2. [NetScaler Agent Operator for On Prem](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          ### Installation
          Refer [installation instructions](https://github.com/netscaler/netscaler-k8s-ingress-controller/blob/master/docs/deploy/deploy-ns-operator.md).

          This operator version contains:
          1. NetScaler ADM Agent for Service [141.55.40](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v1.40.12)
          2. NetScaler ADM Agent for OnPrem[141.60.54](https://docs.netscaler.com/en-us/citrix-adc/14-1/citrix-adc-release-notes/release-notes-14-1-17-38)

          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin).

          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: Netscaler Adm Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Ingress
        - NetScaler
        - ADC
        - Kubernetes
        - OpenShift
        - Citrix
        - Controller
        - Observability
        - Metrices
        links:
        - name: Netscaler Adm Agent Operator
          url: https://netscaler-adm-agent-operator.domain
        maintainers:
        - email: ritesh.padhi@citrix.com
          name: ritesh
        - email: swapnil.khanderaokakade@citrix.com
          name: swapnil
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: Netscaler
          url: https://www.netscaler.com
        relatedImages:
        - registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:49a08eb5ed1f23e877d90dcd7fa8f952e2ec7ed4982649995be181c25f8743b1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - quay.io/citrix/adm-agent@sha256:65c052c60999ffb4fe611fb10ba620c248720e1a483313a623e61769228ddd85
        - quay.io/citrix/developers-adm-agent@sha256:283f2ce4b964cf234c9d12c4955bedfbf1866292a939363e402b26ee544cb57a
        - registry.connect.redhat.com/citrix/admagent-operator-bundle@sha256:148aecf6a21b16940d11d62738f786574fa1d09eb20d441fb94bf956e57ecd3e
        version: 141.60.54
      entries:
      - name: netscaler-adm-agent-operator.v141.60.54
        version: 141.60.54
      name: stable
    defaultChannel: stable
    packageName: netscaler-adm-agent-operator
    provider:
      name: Netscaler
      url: https://www.netscaler.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-route53resolver-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-route53resolver-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "route53resolver.services.k8s.aws/v1alpha1",
                "kind": "ResolverEndpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "route53resolver.services.k8s.aws/v1alpha1",
                "kind": "ResolverRule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/route53resolver-controller:1.2.0
          createdAt: "2025-11-29T04:47:09Z"
          description: AWS Route53Resolver controller is a service controller for
            managing Route53Resolver resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ResolverEndpoint represents the state of an AWS route53resolver
              ResolverEndpoint resource.
            displayName: ResolverEndpoint
            kind: ResolverEndpoint
            name: resolverendpoints.route53resolver.services.k8s.aws
            version: v1alpha1
          - description: ResolverRule represents the state of an AWS route53resolver
              ResolverRule resource.
            displayName: ResolverRule
            kind: ResolverRule
            name: resolverrules.route53resolver.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Route53Resolver resources in AWS from within your Kubernetes cluster.

          **About Amazon Route53Resolver**

          Amazon Route 53 Resolver responds recursively to DNS queries from AWS resources for public records, Amazon VPC-specific DNS names, and Amazon Route 53 private hosted zones, and is available by default in all VPCs.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Route53Resolver
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - route53resolver
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Route53Resolver Developer Resources
          url: https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: route53resolver maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-route53resolver-controller@sha256:cd80c4eb559418ffe863c880b3954251ce13508493bf56d5e7b9e5b282838b36
        - public.ecr.aws/aws-controllers-k8s/route53resolver-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-route53resolver-controller.v1.2.0
        version: 1.2.0
      - name: ack-route53resolver-controller.v1.1.2
        version: 1.1.2
      - name: ack-route53resolver-controller.v1.1.1
        version: 1.1.1
      - name: ack-route53resolver-controller.v1.0.15
        version: 1.0.15
      - name: ack-route53resolver-controller.v1.0.14
        version: 1.0.14
      - name: ack-route53resolver-controller.v1.0.13
        version: 1.0.13
      - name: ack-route53resolver-controller.v1.0.11
        version: 1.0.11
      - name: ack-route53resolver-controller.v1.0.10
        version: 1.0.10
      - name: ack-route53resolver-controller.v1.0.9
        version: 1.0.9
      - name: ack-route53resolver-controller.v1.0.7
        version: 1.0.7
      - name: ack-route53resolver-controller.v1.0.6
        version: 1.0.6
      - name: ack-route53resolver-controller.v1.0.5
        version: 1.0.5
      - name: ack-route53resolver-controller.v1.0.3
        version: 1.0.3
      - name: ack-route53resolver-controller.v1.0.2
        version: 1.0.2
      - name: ack-route53resolver-controller.v1.0.0
        version: 1.0.0
      - name: ack-route53resolver-controller.v0.0.11
        version: 0.0.11
      - name: ack-route53resolver-controller.v0.0.10
        version: 0.0.10
      - name: ack-route53resolver-controller.v0.0.9
        version: 0.0.9
      - name: ack-route53resolver-controller.v0.0.7
        version: 0.0.7
      - name: ack-route53resolver-controller.v0.0.4
        version: 0.0.4
      - name: ack-route53resolver-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-route53resolver-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ram-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ram-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ram-controller:1.2.0
          createdAt: "2025-11-29T05:19:01Z"
          description: AWS RAM controller is a service controller for managing RAM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Permission represents the state of an AWS ram Permission
              resource.
            displayName: Permission
            kind: Permission
            name: permissions.ram.services.k8s.aws
            version: v1alpha1
          - description: ResourceShare represents the state of an AWS ram ResourceShare
              resource.
            displayName: ResourceShare
            kind: ResourceShare
            name: resourceshares.ram.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon RAM resources in AWS from within your Kubernetes cluster.

          **About Amazon RAM**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon RAM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ram
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon RAM Developer Resources
          url: https://aws.amazon.com/RAM/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ram maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ram-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ram-controller@sha256:59b2e55dc3a4154a742dff715ec45e012a64bb6699d837f311e448c7301d7aff
        version: 1.2.0
      entries:
      - name: ack-ram-controller.v1.2.0
        version: 1.2.0
      - name: ack-ram-controller.v1.1.2
        version: 1.1.2
      - name: ack-ram-controller.v1.1.1
        version: 1.1.1
      - name: ack-ram-controller.v1.1.0
        version: 1.1.0
      - name: ack-ram-controller.v1.0.11
        version: 1.0.11
      - name: ack-ram-controller.v1.0.10
        version: 1.0.10
      name: alpha
    defaultChannel: alpha
    packageName: ack-ram-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Dynatrace LLC
      provider-url: www.dynatrace.com
    name: dynatrace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dynatrace-operator.v1.7.2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          containerImage: registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
          createdAt: 2025-11-17T09:03:01.768309
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.7.2
          operatorframework.io/suggested-namespace: dynatrace
          operators.openshift.io/valid-subscription: '["Dynatrace Platform Subscription
            (DPS)","Dynatrace Classic License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Dynatrace/dynatrace-operator
          support: Dynatrace
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta3
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta4
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta5
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha1
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha2
        description: |
          The Dynatrace Operator supports rollout and lifecycle management of various Dynatrace components in Kubernetes and OpenShift.

          Currently the Dynatrace Operator supports the following capabilities:

          ### OneAgent
            * `classicFullStack` rolls out one OneAgent pod per node to monitor its pods and the node itself
            * `applicationMonitoring` is a webhook based injection mechanism for automatic app-only injection
            * `hostMonitoring` monitors only the hosts, i.e., the nodes, in the cluster without app-only injection
          ### ActiveGate
            * `routing` routes OneAgent traffic through the ActiveGate
            * `kubernetes-monitoring` allows monitoring the Kubernetes API
            * `metrics-ingest` routes enriched metrics through an ActiveGate

          For more information please refer to [our DynaKube Custom Resource examples](https://dt-url.net/dynakube-samples).

          ### Installation
          Once you've installed the Dynatrace Operator, you can create a DynaKube custom resource.

          First, please add a Secret within the Project you've deployed the Dynatrace Operator to, which would contain your API and PaaS tokens. Create tokens of type *Dynatrace API* (`API_TOKEN`) and *Platform as a Service* (`PAAS_TOKEN`) and use their values in the following commands respectively.

          For assistance please refer to [Create user-generated access tokens](https://www.dynatrace.com/support/help/shortlink/token#create-user-generated-access-tokens).

          ``` $ oc -n <project> create secret generic dynakube --from-literal="apiToken=API_TOKEN" --from-literal="paasToken=PAAS_TOKEN" ```

          You may update this Secret at any time to rotate the tokens.

          After creation of the secret add the DynaKube object in the project where the Dynatrace Operator has been deployed, configured to your needs.

          ### Required Parameters
          * `apiUrl` - provide the URL to the API of your Dynatrace environment. In Dynatrace SaaS it will look like `https://<ENVIRONMENTID>.live.dynatrace.com/api` . In Dynatrace Managed like `https://<YourDynatraceServerURL>/e/<ENVIRONMENTID>/api` .

          ### Advanced Options
          * **Disable Certificate Checking** - disable any certificate validation that may interact poorly with proxies with in your cluster
          * **Image Override** - use a copy of the ActiveGate container image from a registry other than Docker's or Red Hat's

          For a complete list of supported parameters please consult the [Operator Deploy Guide](https://www.dynatrace.com/support/help/shortlink/openshift-deploy).

          ### Help
          You can find more about our instructions in our [documentation](https://www.dynatrace.com/support/help/shortlink/openshift-deploy#install-dynatrace-operator).
        displayName: Dynatrace Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - dynatrace
        - oneagent
        - activegate
        - observability
        links:
        - name: Dynatrace Operator
          url: https://github.com/Dynatrace/dynatrace-operator
        - name: OpenShift Monitoring Info
          url: https://www.dynatrace.com/technologies/openshift-monitoring
        maintainers:
        - email: support@dynatrace.com
          name: Dynatrace LLC
        maturity: alpha
        provider:
          name: Dynatrace LLC
          url: www.dynatrace.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/dynatrace-operator@sha256:c57565f3a0b29d24d944aa15e10bb4027957f02f7ab9ca18d259fc93657ab75a
        - registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
        version: 1.7.2
      entries:
      - name: dynatrace-operator.v1.7.2
        version: 1.7.2
      - name: dynatrace-operator.v1.7.1
        version: 1.7.1
      - name: dynatrace-operator.v1.7.0
        version: 1.7.0
      - name: dynatrace-operator.v1.6.3
        version: 1.6.3
      - name: dynatrace-operator.v1.6.2
        version: 1.6.2
      - name: dynatrace-operator.v1.6.1
        version: 1.6.1
      - name: dynatrace-operator.v1.6.0
        version: 1.6.0
      - name: dynatrace-operator.v1.5.1
        version: 1.5.1
      - name: dynatrace-operator.v1.4.2
        version: 1.4.2
      - name: dynatrace-operator.v1.4.1
        version: 1.4.1
      - name: dynatrace-operator.v1.4.0
        version: 1.4.0
      - name: dynatrace-operator.v0.6.0
        version: 0.6.0
      - name: dynatrace-operator.v0.5.1
        version: 0.5.1
      - name: dynatrace-operator.v0.5.0
        version: 0.5.0
      name: alpha
    defaultChannel: alpha
    packageName: dynatrace-operator
    provider:
      name: Dynatrace LLC
      url: www.dynatrace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Antline-Soft
      provider-url: ""
    name: cxl-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cxl-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cxl.antline.com/v1",
                "kind": "CXL",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cxl-operator",
                    "app.kubernetes.io/instance": "cxl-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cxl",
                    "app.kubernetes.io/part-of": "cxl-operator"
                  },
                  "name": "cxl-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          createdAt: "2024-05-08T08:36:12Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CXL is the Schema for the cxls API
            displayName: CXL
            kind: CXL
            name: cxls.cxl.antline.com
            version: v1
        description: memory extend operator
        displayName: extend-community-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - memory
        - extend
        - community
        - operator
        links:
        - name: Cxl Operator
          url: https://cxl-operator.domain
        maintainers:
        - email: tomboy@antlinesoft.com
          name: Antline-Soft
        maturity: alpha
        provider:
          name: Antline-Soft
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ncn-community-operator@sha256:15edc1898fe9f8f56708da7d6de3548d06f1df3bdbb3f66a9cf4f7990fe9fad6
        - rasen708/cxl-operator:latest
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        version: 0.0.1
      entries:
      - name: cxl-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: cxl-operator
    provider:
      name: Antline-Soft
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: assisted-service-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: assisted-service-operator.v0.7.74
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-x86_64-live.x86_64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-aarch64-live.aarch64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-s390x-live.s390x.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-x86_64-live.x86_64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-aarch64-live.aarch64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-s390x-live.s390x.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-x86_64-live.x86_64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-aarch64-live.aarch64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-ppc64le-live.ppc64le.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-s390x-live.s390x.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-x86_64-live.x86_64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-aarch64-live.aarch64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-ppc64le-live.ppc64le.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-s390x-live.s390x.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-s390x-live.s390x.iso",
                      "version": "418.94.202409162337-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service:latest
          createdAt: "2024-10-16T17:43:34Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.74'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AgentClassification is the Schema for the AgentClassifications
              API
            displayName: Agent Classification
            kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - description: Agent is the Schema for the hosts API
            displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: Infra Env
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/assisted-service-operator@sha256:0e8a33d795a2d3fa3c5fd409e4e1c40805d5c08a71481afbf9e7b8014b4179ca
        - quay.io/edge-infrastructure/assisted-service:latest
        version: 0.7.74
      entries:
      - name: assisted-service-operator.v0.7.74
        version: 0.7.74
      - name: assisted-service-operator.v0.7.73
        version: 0.7.73
      - name: assisted-service-operator.v0.7.72
        version: 0.7.72
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: assisted-service-operator.v0.7.71
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-x86_64-live.x86_64.iso",
                      "version": "414.92.202310170514-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-aarch64-live.aarch64.iso",
                      "version": "414.92.202310170514-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202309201615-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-s390x-live.s390x.iso",
                      "version": "414.92.202309201615-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "415.92.202310310037-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "415.92.202310310037-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202310310037-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-s390x-live.s390x.iso",
                      "version": "415.92.202310310037-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:cffbdc5fd51c08f16ec2aa484cf226e3b29510919a8aa9668d766007de8f3d79
          createdAt: "2023-12-15T15:26:08Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.71'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:4e12e48d0b2b884de2a0d32682da044cff419aea53bb162915538e2179fcd7f3
        - quay.io/edge-infrastructure/assisted-image-service@sha256:027fa9c5a881848786745aafeac5e48575eefe22417abe29d9e8eb17940b8f80
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:40bafed94547a5fe96deb5492f10225501b965198227c9634869931692bda492
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:98740646fbfc0520f9d85ac5b483d1a898f22e164c5234901be51970bef7fcf3
        - quay.io/edge-infrastructure/assisted-installer@sha256:0f4ecf9a75b6755d02a45f9b70357ac45b6b4db66f24f0e83f888269d64f4293
        - quay.io/edge-infrastructure/assisted-service@sha256:cffbdc5fd51c08f16ec2aa484cf226e3b29510919a8aa9668d766007de8f3d79
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        version: 0.7.71
      entries:
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.10
    - currentCSV: assisted-service-operator.v0.7.73
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-x86_64-live.x86_64.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-aarch64-live.aarch64.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-s390x-live.s390x.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-x86_64-live.x86_64.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-aarch64-live.aarch64.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-s390x-live.s390x.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.16.0-ec.4/rhcos-4.16.0-ec.4-x86_64-live.x86_64.iso",
                      "version": "416.94.202403071059-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-aarch64-live.aarch64.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-s390x-live.s390x.iso",
                      "version": "415.92.202402130021-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:641fb65d8f0117cc6007567337ae38d5e912add454a76905617b60db99b60a64
          createdAt: "2024-03-20T10:08:49Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.73'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/community-operator-pipeline-prod/assisted-service-operator@sha256:9eca42cc297a93293200a1c46e8ed949a61770550366044ef54e36bed9d7a116
        - quay.io/edge-infrastructure/assisted-image-service@sha256:b33068bbe88e38c0444fb158e233e5644fb127416198d52fdc809a3f2e684fde
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:2cc14304ba27c51d61b86db05445f3f0acc68593a4d76081da8eb9d6bae41757
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:d0da07ec81877302fc376e8049dca69c1acdbf56a37aa3e320cd75f2b85a2ed0
        - quay.io/edge-infrastructure/assisted-installer@sha256:234e4680b0ff4376f2c11d6f94a75a5dd6ae16c3218d6b63d2003cf43c65e185
        - quay.io/edge-infrastructure/assisted-service@sha256:641fb65d8f0117cc6007567337ae38d5e912add454a76905617b60db99b60a64
        version: 0.7.73
      entries:
      - name: assisted-service-operator.v0.7.73
        version: 0.7.73
      - name: assisted-service-operator.v0.7.72
        version: 0.7.72
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.11
    - currentCSV: assisted-service-operator.v0.7.74
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-x86_64-live.x86_64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-aarch64-live.aarch64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-s390x-live.s390x.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-x86_64-live.x86_64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-aarch64-live.aarch64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-s390x-live.s390x.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-x86_64-live.x86_64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-aarch64-live.aarch64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-ppc64le-live.ppc64le.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-s390x-live.s390x.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-x86_64-live.x86_64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-aarch64-live.aarch64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-ppc64le-live.ppc64le.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-s390x-live.s390x.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-s390x-live.s390x.iso",
                      "version": "418.94.202409162337-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service:latest
          createdAt: "2024-10-16T17:43:34Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.74'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AgentClassification is the Schema for the AgentClassifications
              API
            displayName: Agent Classification
            kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - description: Agent is the Schema for the hosts API
            displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: Infra Env
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/assisted-service:latest
        - quay.io/community-operator-pipeline-prod/assisted-service-operator@sha256:0e8a33d795a2d3fa3c5fd409e4e1c40805d5c08a71481afbf9e7b8014b4179ca
        version: 0.7.74
      entries:
      - name: assisted-service-operator.v0.7.74
        version: 0.7.74
      - name: assisted-service-operator.v0.7.73
        version: 0.7.73
      - name: assisted-service-operator.v0.7.72
        version: 0.7.72
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.13
    - currentCSV: assisted-service-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "osImages": [
                    {
                      "openshiftVersion": "4.8",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202105062123-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/ocpmetal/assisted-service@sha256:64e88c5aa41c606bc2db2b0991acdbb1166559306474e13f5e2810f325616d64
          createdAt: "2021-09-23T11:11:20Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.0 <0.0.8'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.7.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled, for
              all other names a "Warning" event will be emitted + message logged and
              it will be ignored forever.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent".
          No other name will be accepted.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/ocpmetal/assisted-installer@sha256:db97f7a565a8d5af61f3876d6465996e90c7f79dad6ec71c5bb5cce837444974
        - quay.io/ocpmetal/assisted-service@sha256:64e88c5aa41c606bc2db2b0991acdbb1166559306474e13f5e2810f325616d64
        - quay.io/ocpmetal/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:31eda4f1888b180feb023c42a6ec93478b2e956f13420d55987d9abf7c7797c3
        - quay.io/ocpmetal/assisted-installer-agent@sha256:a391892766d1ce81300bf82943318e7c3be0d2945fc19065527ab9f64fc24cf8
        - quay.io/ocpmetal/assisted-installer-controller@sha256:43b65c310eee985ee0fc20ad8ee684f7557ffe704fd1a2fa53831e3dbc41e849
        version: 0.0.8
      entries:
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.3
    - currentCSV: assisted-service-operator.v0.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.2/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.2/rhcos-4.8.2-x86_64-live.x86_64.iso",
                      "version": "48.84.202107202156-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-x86_64-live.x86_64.iso",
                      "version": "49.84.202110081407-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:c3a852842b88f47c51cf1c62d3a19b102729fb355df19ced0e03e8265739c39c
          createdAt: "2022-04-07T11:23:06Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.1.3'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled, for
              all other names a "Warning" event will be emitted + message logged and
              it will be ignored forever.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent".
          No other name will be accepted.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:7d5f9e02f3d6c3e2ac63f1fd33240dc696ee79563c214d21d2897ee773517e9c
        - quay.io/edge-infrastructure/assisted-image-service@sha256:add19e251cafdfc4f34264d0aec5b660f0ea2dcc13326f4a2c8d50a2e465c0a2
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:979650f2e03e457d71958e8813285fcb7185fe0035f21a6ba956b4277cb29b70
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:658787d1e6c1f733c5f03863655aff315258c0b38e1972573c3878df46e4e463
        - quay.io/edge-infrastructure/assisted-installer@sha256:461d60b21d1d3ccb15a170f937f4871088cd0f83108b2271e84bdf2883a66870
        - quay.io/edge-infrastructure/assisted-service@sha256:c3a852842b88f47c51cf1c62d3a19b102729fb355df19ced0e03e8265739c39c
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        version: 0.1.3
      entries:
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.4
    - currentCSV: assisted-service-operator.v0.3.30
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-x86_64-live.x86_64.iso",
                      "version": "49.84.202110081407-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.9",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-aarch64-live-rootfs.aarch64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-aarch64-live.aarch64.iso",
                      "version": "49.84.202110080947-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.3/rhcos-4.10.3-x86_64-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.3/rhcos-4.10.3-x86_64-live.x86_64.iso",
                      "version": "410.84.202201251210-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:7c13ce52d82f761aec47bc5a6639d7baabe99d0f4f2e2106c4341018c606b458
          createdAt: "2022-06-13T23:16:28Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.3.30'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:5b061126dc3adf1fc9c8c22dfded18f4652bd62537aefca88ddcc585078b94ae
        - quay.io/edge-infrastructure/assisted-image-service@sha256:d6396f9360b877a4f57139ba5b4969f243278db709be4de3573f2fba75e50018
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:6271d639e4c0647bd28fbc85cea54f31143a876c3237376b9c670ec254a9c2fc
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:2267d2d7be38f81d530fed977b0c46f6c976369cd89c123c8e036c3b1dd988d5
        - quay.io/edge-infrastructure/assisted-installer@sha256:57cf8d5fe49067a8c1345bedaf90f2b63aededdd7d615878496182c35a13892e
        - quay.io/edge-infrastructure/assisted-service@sha256:7c13ce52d82f761aec47bc5a6639d7baabe99d0f4f2e2106c4341018c606b458
        version: 0.3.30
      entries:
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.5
    - currentCSV: assisted-service-operator.v0.4.41
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.40/rhcos-4.9.40-x86_64-live.x86_64.iso",
                      "version": "49.84.202206171736-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.16/rhcos-4.10.16-x86_64-live.x86_64.iso",
                      "version": "410.84.202205191234-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.16/rhcos-4.10.16-aarch64-live.aarch64.iso",
                      "version": "410.84.202205191023-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.11.0-rc.2/rhcos-4.11.0-rc.2-x86_64-live.x86_64.iso",
                      "version": "411.86.202207090519-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.11.0-rc.2/rhcos-4.11.0-rc.2-aarch64-live.aarch64.iso",
                      "version": "411.86.202207090159-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:0fa869095185759c26c391f0e353f293c903ea739576f160d6668f5f20404bdb
          createdAt: "2022-09-11T14:56:07Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.4.41'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/assisted-installer@sha256:803168aeb7e01db77e3b2ff7418ceea3d93daccaceeb95f8fc02027144ebac75
        - quay.io/edge-infrastructure/assisted-service@sha256:0fa869095185759c26c391f0e353f293c903ea739576f160d6668f5f20404bdb
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:4ca00219efbc0d9dcce415dadc1039e9495f3a3b00ab3bd575b41554d7934899
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:007a3d43633fe355202002737f766a7c636f537f3daeffa1f62356c0bbf969aa
        - quay.io/edge-infrastructure/assisted-image-service@sha256:104d2aae313c724fb10d3ef3bba78b2370fc0597de31335453894b679a450ab8
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:56484f99799d22f345215bb65c6b81b6ee14e07d26b625c3f283a2ddfdc37238
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:951b9d625bc300b5b72a3916cb382015527ea786f10b7acbeebf83ae854ca51a
        version: 0.4.41
      entries:
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.6
    - currentCSV: assisted-service-operator.v0.4.50
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-x86_64-live.x86_64.iso",
                      "version": "411.86.202210041459-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-aarch64-live.aarch64.iso",
                      "version": "411.86.202210032347-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "412.86.202208101039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "412.86.202208101040-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:0ca1cfe04f088cd4c7318cb91978754d6472ada29e3436d05e22335740bfff49
          createdAt: "2022-11-23T19:17:47Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.4.50'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:87594d78977ead074e53b39a52e905a2d2861d24d69d2f2e33b066077cd279a4
        - quay.io/edge-infrastructure/assisted-image-service@sha256:71e8c9c76caa8fe01255fdb4a1172cda372969f7fe1399a3a54fb93e967e68cf
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:34e0341c0471b1772db11535107db06e511c8d5d9816edc3971e745928164ecd
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:c1c7281b9f06e56330cc55ac8d74185d42ee82dff105ae747db677b8eb059aea
        - quay.io/edge-infrastructure/assisted-installer@sha256:f225c86242b0bfbf58753123ef33b7c07f367a5099641d19cfda5a7121382586
        - quay.io/edge-infrastructure/assisted-service@sha256:0ca1cfe04f088cd4c7318cb91978754d6472ada29e3436d05e22335740bfff49
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:54b39c6cafefb70d258ec1d491b6a0f1dd888cd85bd442c8f40a4805cf4721ca
        version: 0.4.50
      entries:
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.7
    - currentCSV: assisted-service-operator.v0.6.65
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-x86_64-live.x86_64.iso",
                      "version": "411.86.202210041459-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-aarch64-live.aarch64.iso",
                      "version": "411.86.202210032347-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-s390x-live.s390x.iso",
                      "version": "411.86.202210171842-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202210171844-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-x86_64-live.x86_64.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-aarch64-live.aarch64.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-s390x-live.s390x.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-x86_64-live.x86_64.iso",
                      "version": "413.92.202303281804-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-aarch64-live.aarch64.iso",
                      "version": "413.92.202303281804-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202303281804-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-s390x-live.s390x.iso",
                      "version": "413.92.202303281804-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:2dfaf2c3ac58b2987b0088df302c7cf717d0b6640cdb8b2327370aa110120784
          createdAt: "2023-05-24T11:15:57Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.6.65'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:1287d947464fbf5275feb31d106d2feb856c6117f0eaec8d947f2e03bd8618c5
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:ff8e563d97f0d0e42c690ca3e61d3625e920947264ea99c396392c440cd43201
        - quay.io/edge-infrastructure/assisted-image-service@sha256:b1ba1076fe16b2f868ed31a660b16583a957a83634c7ec3cf03574b56e02144c
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:1ad91b13c763437863480df68f5b65576e95c558d4537886432a81c0b8d3cedc
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:a6f99547564cc2e047df74003019817b2dbd3dad992a0c8e53aaaba4f5b02ab6
        - quay.io/edge-infrastructure/assisted-installer@sha256:f8a7e7cb6ff1a4a7daa0cb26f0fab8da17f109653af5979c9d53c35b7ca2c1bb
        - quay.io/edge-infrastructure/assisted-service@sha256:2dfaf2c3ac58b2987b0088df302c7cf717d0b6640cdb8b2327370aa110120784
        version: 0.6.65
      entries:
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.8
    - currentCSV: assisted-service-operator.v0.7.67
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "414.92.202305090606-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "414.92.202305090606-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202305090606-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-s390x-live.s390x.iso",
                      "version": "414.92.202305090606-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:fb0397a1402d42a64e3128e66a0817aa9466e67eb407cb792dda0d380bd5a189
          createdAt: "2023-10-08T07:14:20Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.67'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/assisted-image-service@sha256:69ff087be8e5d8458a97f49d88b8b2025ee341d362dcf5618988c011b66688e0
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:f2aeb4f7d193ea2c5702cae0f6039c02991b9f417d091468d46974408c97efe4
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:35c118d8c07dd72fe3307424cc051d9e0426e916412171449a05e41445b9f599
        - quay.io/edge-infrastructure/assisted-installer@sha256:d85be59bc379927f46d0a88ef04172c5c6733e31e1e4a8188de2d434d5bedb66
        - quay.io/edge-infrastructure/assisted-service@sha256:fb0397a1402d42a64e3128e66a0817aa9466e67eb407cb792dda0d380bd5a189
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:12a02131f13e532a26572a524ae542766092ff75624113994d304824951161b4
        version: 0.7.67
      entries:
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.9
    defaultChannel: alpha
    packageName: assisted-service-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Devfile
      provider-url: https://devfile.io
    name: devworkspace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: devworkspace-operator.v0.38.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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: "true"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.7.1+git
          operators.operatorframework.io/internal-objects: '["devworkspaceroutings.controller.devfile.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DevWorkspaceOperatorConfig
            name: devworkspaceoperatorconfigs.controller.devfile.io
            version: v1alpha1
          - kind: DevWorkspaceRouting
            name: devworkspaceroutings.controller.devfile.io
            version: v1alpha1
          - kind: DevWorkspace
            name: devworkspaces.workspace.devfile.io
            version: v1alpha1
          - kind: DevWorkspace
            name: devworkspaces.workspace.devfile.io
            version: v1alpha2
          - kind: DevWorkspaceTemplate
            name: devworkspacetemplates.workspace.devfile.io
            version: v1alpha1
          - kind: DevWorkspaceTemplate
            name: devworkspacetemplates.workspace.devfile.io
            version: v1alpha2
        description: |
          The DevWorkspace Operator enables cluster-level support for the
          [Devfile 2.0 spec](https://docs.devfile.io), enabling static, reproducible
          configurations for launching cloud-based editors and IDEs in OpenShift and
          Kubernetes clusters.

          Leveraging the language server protocol and the Eclipse Theia web IDE, the
          DevWorkspace operator provides easy configuration of full development
          environments on the cloud with support for a wide variety of languages and
          technologies, including Go, Java, Typescript/Javascript, Python, and more.

          The DevWorkspace Operator is also used in the Web Terminal Operator to
          automatically provision Web Terminal environments.

          ## Installing the operator
          The DevWorkspace Operator can be installed directly from the OperatorHub UI and
          will be available in all namespaces on the cluster. DevWorkspace creation is
          driven by the DevWorkspace custom resource, which can be created in any
          namespace to provision a full development environment. To get started, browse
          the DevWorkspace [spec](https://devfile.io/docs/2.3.0/devfile-schema).

          Once a DevWorkspace is started, it can be accessed via the URL in its
          `.status.mainUrl` field.

          It's recommended to install the DevWorkspace Operator to the
          `openshift-operators` namespace for compatibility.

          ## Uninstalling the operator
          The DevWorkspace Operator utilizes finalizers on resources it creates and
          webhooks to restrict access to development resources. As a result, manual steps
          are required in uninstalling the operator. See the
          [documentation](https://github.com/devfile/devworkspace-operator/blob/main/docs/uninstall.md)
          for details.
        displayName: DevWorkspace Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Devworkspace Operator
        - DevWorkspaces
        - Devfile
        links:
        - name: Devworkspace Operator
          url: https://github.com/devfile/devworkspace-operator
        maintainers:
        - email: dakwon@redhat.com
          name: David Kwon
        - email: ibuziuk@redhat.com
          name: Ilya Buziuk
        maturity: alpha
        provider:
          name: Devfile
          url: https://devfile.io
        relatedImages:
        - registry.redhat.io/ubi9/ubi-minimal@sha256:a50731d3397a4ee28583f1699842183d4d24fadcc565c4688487af9ee4e13a44
        - registry.redhat.io/devworkspace/devworkspace-operator-bundle@sha256:e2b731c676f12ff02781f0ac279ce4aa3652b6e24e90eba5880579c49b737adf
        - registry.redhat.io/devworkspace/devworkspace-project-clone-rhel9@sha256:3f0619571d6fa2259796f837ebfd0eb0fa225054ac38ed0d144245cccce51515
        - registry.redhat.io/devworkspace/devworkspace-rhel9-operator@sha256:5382d54bbd3ade51a7dda1c8a8a86aca30fb5655c61a4a4e85ecceef7e36f168
        version: 0.38.0
      entries:
      - name: devworkspace-operator.v0.38.0
        version: 0.38.0
      - name: devworkspace-operator.v0.37.0
        version: 0.37.0
      - name: devworkspace-operator.v0.36.0
        version: 0.36.0
      - name: devworkspace-operator.v0.35.1
        version: 0.35.1
      - name: devworkspace-operator.v0.34.0
        version: 0.34.0
      - name: devworkspace-operator.v0.33.0
        version: 0.33.0
      - name: devworkspace-operator.v0.32.1
        version: 0.32.1
      - name: devworkspace-operator.v0.31.2
        version: 0.31.2
      - name: devworkspace-operator.v0.31.1
        version: 0.31.1
      - name: devworkspace-operator.v0.31.0
        version: 0.31.0
      - name: devworkspace-operator.v0.30.2
        version: 0.30.2
      - name: devworkspace-operator.v0.30.1
        version: 0.30.1
      - name: devworkspace-operator.v0.30.0
        version: 0.30.0
      - name: devworkspace-operator.v0.29.0
        version: 0.29.0
      - name: devworkspace-operator.v0.28.0-0.1719314743.p
        version: 0.28.0+0.1719314743.p
      - name: devworkspace-operator.v0.28.0
        version: 0.28.0
      - name: devworkspace-operator.v0.27.0-0.1714987663.p
        version: 0.27.0+0.1714987663.p
      - name: devworkspace-operator.v0.27.0
        version: 0.27.0
      - name: devworkspace-operator.v0.26.0
        version: 0.26.0
      - name: devworkspace-operator.v0.25.0
        version: 0.25.0
      - name: devworkspace-operator.v0.24.0
        version: 0.24.0
      - name: devworkspace-operator.v0.23.0
        version: 0.23.0
      - name: devworkspace-operator.v0.22.0
        version: 0.22.0
      - name: devworkspace-operator.v0.21.2
        version: 0.21.2
      - name: devworkspace-operator.v0.21.1
        version: 0.21.1
      - name: devworkspace-operator.v0.20.0
        version: 0.20.0
      - name: devworkspace-operator.v0.19.1
        version: 0.19.1
      - name: devworkspace-operator.v0.19.1-0.1682321189.p
        version: 0.19.1+0.1682321189.p
      - name: devworkspace-operator.v0.19.1-0.1679521112.p
        version: 0.19.1+0.1679521112.p
      - name: devworkspace-operator.v0.18.1
        version: 0.18.1
      - name: devworkspace-operator.v0.18.1-0.1675929565.p
        version: 0.18.1+0.1675929565.p
      - name: devworkspace-operator.v0.17.0
        version: 0.17.0
      - name: devworkspace-operator.v0.16.0-0.1666668361.p
        version: 0.16.0+0.1666668361.p
      - name: devworkspace-operator.v0.16.0
        version: 0.16.0
      - name: devworkspace-operator.v0.15.2-0.1661828401.p
        version: 0.15.2+0.1661828401.p
      - name: devworkspace-operator.v0.15.2
        version: 0.15.2
      - name: devworkspace-operator.v0.14.1
        version: 0.14.1
      - name: devworkspace-operator.v0.13.0
        version: 0.13.0
      - name: devworkspace-operator.v0.12.0
        version: 0.12.0
      - name: devworkspace-operator.v0.11.0
        version: 0.11.0
      - name: devworkspace-operator.v0.10.0
        version: 0.10.0
      - name: devworkspace-operator.v0.9.0
        version: 0.9.0
      name: fast
    defaultChannel: fast
    packageName: devworkspace-operator
    provider:
      name: Devfile
      url: https://devfile.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-opensearch-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opensearch-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/opensearch-operator@sha256:fea1404da760585252a5aa573a04fbfa9662e48164254dff34babbfb6902e332
          description: Stackable Operator for OpenSearch
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/opensearch-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for OpenSearchClusterSpec via
              `CustomResource`
            displayName: opensearchclusters.opensearch.stackable.tech
            kind: OpenSearchCluster
            name: opensearchclusters.opensearch.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for OpenSearch
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opensearch
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/opensearch-operator@sha256:fea1404da760585252a5aa573a04fbfa9662e48164254dff34babbfb6902e332
        - registry.connect.redhat.com/stackable/stackable-opensearch-operator:25.11.0
        version: 25.11.0
      entries:
      - name: opensearch-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-opensearch-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: aws-neuron-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-neuron-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.aws/v1alpha1",
                "kind": "DeviceConfig",
                "metadata": {
                  "name": "device-config",
                  "namespace": "ai-operator-on-aws"
                },
                "spec": {
                  "customSchedulerImage": "public.ecr.aws/eks-distro/kubernetes/kube-scheduler:v1.32.9-eks-1-32-24",
                  "devicePluginImage": "public.ecr.aws/neuron/neuron-device-plugin:2.24.23.0",
                  "driversImage": "public.ecr.aws/q5p6u7h8/neuron-openshift/neuron-kernel-module:2.24.7.0",
                  "schedulerExtensionImage": "public.ecr.aws/neuron/neuron-scheduler:2.24.23.0",
                  "selector": {
                    "feature.node.kubernetes.io/aws-neuron": "true"
                  },
                  "useInTreeDrivers": false
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-10-27T12:17:40Z"
          description: AWS Neuron operator is resposible for deploying AWS Neuron
            kernel drivers, device plugin and customed scheduler
          operatorframework.io/suggested-namespace: ai-operator-on-aws
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DeviceConfig
            name: deviceconfigs.k8s.aws
            version: v1alpha1
        description: AWS Neuron operator is resposible for deploying AWS Neuron kernel
          drivers, device plugin and customed scheduler
        displayName: Aws Neuron Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws-neuron-operator
        links:
        - name: Aws Neuron Operator
          url: https://aws-neuron-operator.domain
        maintainers:
        - email: yshnaidm@redhat.com
          name: Yeggeny Shnaidman
        - email: shapirov@amazon.com
          name: Mikhail Shapirov
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/q5p6u7h8/neuron-openshift/operator:v0.1.1
        - quay.io/community-operator-pipeline-prod/aws-neuron-operator:0.0.3
        version: 0.0.3
      entries:
      - name: aws-neuron-operator.v0.0.3
        version: 0.0.3
      - name: aws-neuron-operator.v0.0.2
        version: 0.0.2
      - name: aws-neuron-operator.v0.0.1
        version: 0.0.1
      name: Fast
    - currentCSV: aws-neuron-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.aws/v1alpha1",
                "kind": "DeviceConfig",
                "metadata": {
                  "name": "device-config",
                  "namespace": "ai-operator-on-aws"
                },
                "spec": {
                  "customSchedulerImage": "public.ecr.aws/eks-distro/kubernetes/kube-scheduler:v1.32.9-eks-1-32-24",
                  "devicePluginImage": "public.ecr.aws/neuron/neuron-device-plugin:2.24.23.0",
                  "driversImage": "public.ecr.aws/q5p6u7h8/neuron-openshift/neuron-kernel-module:2.24.7.0",
                  "schedulerExtensionImage": "public.ecr.aws/neuron/neuron-scheduler:2.24.23.0",
                  "selector": {
                    "feature.node.kubernetes.io/aws-neuron": "true"
                  },
                  "useInTreeDrivers": false
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-10-27T12:17:40Z"
          description: AWS Neuron operator is resposible for deploying AWS Neuron
            kernel drivers, device plugin and customed scheduler
          operatorframework.io/suggested-namespace: ai-operator-on-aws
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DeviceConfig
            name: deviceconfigs.k8s.aws
            version: v1alpha1
        description: AWS Neuron operator is resposible for deploying AWS Neuron kernel
          drivers, device plugin and customed scheduler
        displayName: Aws Neuron Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws-neuron-operator
        links:
        - name: Aws Neuron Operator
          url: https://aws-neuron-operator.domain
        maintainers:
        - email: yshnaidm@redhat.com
          name: Yeggeny Shnaidman
        - email: shapirov@amazon.com
          name: Mikhail Shapirov
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/aws-neuron-operator:0.0.3
        - public.ecr.aws/q5p6u7h8/neuron-openshift/operator:v0.1.1
        version: 0.0.3
      entries:
      - name: aws-neuron-operator.v0.0.3
        version: 0.0.3
      - name: aws-neuron-operator.v0.0.2
        version: 0.0.2
      - name: aws-neuron-operator.v0.0.1
        version: 0.0.1
      name: Stable
    defaultChannel: Fast
    packageName: aws-neuron-operator
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OpenShift Database Access
      provider-url: ""
    name: dbaas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dbaas-operator.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSConnection",
                "metadata": {
                  "name": "dbaasconnection-example"
                },
                "spec": {
                  "databaseServiceID": "instance-example",
                  "databaseServiceType": "instance",
                  "inventoryRef": {
                    "name": "inventory-example",
                    "namespace": "openshift-dbaas-operator"
                  }
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSInstance",
                "metadata": {
                  "name": "dbaasinstance-sample"
                },
                "spec": {
                  "cloudProvider": "AWS",
                  "cloudRegion": "US_EAST_1",
                  "inventoryRef": {
                    "name": "inventory-example",
                    "namespace": "openshift-dbaas-operator"
                  },
                  "name": "my-cluster-free"
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSInventory",
                "metadata": {
                  "name": "inventory-example"
                },
                "spec": {
                  "credentialsRef": {
                    "name": "dbaas-vendor-credentials"
                  },
                  "providerRef": {
                    "name": "provider-example-registration"
                  }
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSPolicy",
                "metadata": {
                  "name": "dbaaspolicy-sample"
                },
                "spec": {
                  "disableProvisions": false
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSProvider",
                "metadata": {
                  "labels": {
                    "related-to": "dbaas-operator",
                    "type": "dbaas-provider-registration"
                  },
                  "name": "provider-example-registration"
                },
                "spec": {
                  "allowsFreeTrial": true,
                  "connectionKind": "ProviderConnection",
                  "credentialFields": [
                    {
                      "displayName": "ProviderAPIKeyD",
                      "helpText": "This is the API Key for the example provider to show on UI",
                      "key": "APIKey",
                      "required": true,
                      "type": "maskedstring"
                    }
                  ],
                  "externalProvisionDescription": "Follow the guide to start a free Provider Serverless (beta) cluster",
                  "externalProvisionURL": "https://www.exmample.com/docs/provider/quickstart.html",
                  "groupVersion": "dbaas.redhat.com/v1beta1",
                  "instanceKind": "ProviderInstance",
                  "inventoryKind": "ProviderInventory",
                  "provider": {
                    "displayDescription": "This is an example for providers on how to implement their operator to integrate with DBaaS.",
                    "displayName": "DBaaS Provider Example ",
                    "icon": {
                      "base64data": "SGVsbG8sIHdvcmxkLg==",
                      "mediatype": "image/png"
                    },
                    "name": "Provider Example"
                  },
                  "provisioningParameters": {
                    "cloudProvider": {
                      "conditionalData": [
                        {
                          "defaultValue": "GCP",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "FREETRIAL"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "Google Cloud Platform",
                              "value": "GCP"
                            }
                          ]
                        },
                        {
                          "defaultValue": "AWS",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "SERVERLESS"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "Amazon Web Services",
                              "value": "AWS"
                            },
                            {
                              "displayValue": "Google Cloud Platform",
                              "value": "GCP"
                            }
                          ]
                        },
                        {
                          "defaultValue": "AWS",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "Amazon Web Services",
                              "value": "AWS"
                            },
                            {
                              "displayValue": "Google Cloud Platform",
                              "value": "GCP"
                            }
                          ]
                        }
                      ],
                      "displayName": "Cloud Provider"
                    },
                    "dedicatedLocationLabel": {
                      "displayName": "Select regions \u0026 nodes",
                      "helpText": "Select the geographical region where you want the database instance to run, and set the number of nodes you want running in this dedicated cluster."
                    },
                    "hardwareLabel": {
                      "displayName": "Hardware per node",
                      "helpText": "Select the compute and storage requirements for this database instance."
                    },
                    "machineType": {
                      "conditionalData": [
                        {
                          "defaultValue": "m5.large",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "AWS"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "2 vCPU, 8 GiB RAM",
                              "value": "m5.large"
                            },
                            {
                              "displayValue": "4 vCPU, 16 GiB RAM",
                              "value": "m5.xlarge"
                            },
                            {
                              "displayValue": "8 vCPU, 32 GiB RAM",
                              "value": "m5.2xlarge"
                            },
                            {
                              "displayValue": "16 vCPU, 64 GiB RAM",
                              "value": "m5.4xlarge"
                            },
                            {
                              "displayValue": "32 vCPU, 128 GiB RAM",
                              "value": "m5.8xlarge"
                            }
                          ]
                        },
                        {
                          "defaultValue": "n1-standard-2",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "GCP"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "2 vCPU, 7.5 GiB RAM",
                              "value": "n1-standard-2"
                            },
                            {
                              "displayValue": "4 vCPU, 15 GiB RAM",
                              "value": "n1-standard-4"
                            },
                            {
                              "displayValue": "8 vCPU, 30 GiB RAM",
                              "value": "n1-standard-8"
                            },
                            {
                              "displayValue": "16 vCPU, 60 GiB RAM",
                              "value": "n1-standard-16"
                            },
                            {
                              "displayValue": "32 vCPU, 120 GiB RAM",
                              "value": "n1-standard-32"
                            }
                          ]
                        }
                      ],
                      "displayName": "Compute"
                    },
                    "name": {
                      "displayName": "Cluster name"
                    },
                    "nodes": {
                      "displayName": "nodes"
                    },
                    "plan": {
                      "conditionalData": [
                        {
                          "defaultValue": "SERVERLESS",
                          "options": [
                            {
                              "displayValue": "Free trial",
                              "value": "FREETRIAL"
                            },
                            {
                              "displayValue": "Serverless",
                              "value": "SERVERLESS"
                            },
                            {
                              "displayValue": "Dedicated",
                              "value": "DEDICATED"
                            }
                          ]
                        }
                      ],
                      "displayName": "Hosting plan"
                    },
                    "planLabel": {
                      "displayName": "Select a plan"
                    },
                    "regions": {
                      "displayName": "us-west-2"
                    },
                    "serverlessLocationLabel": {
                      "displayName": "Select regions",
                      "helpText": "Select the geographical region where you want the database instance to run."
                    },
                    "spendLimit": {
                      "conditionalData": [
                        {
                          "defaultValue": "0",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "SERVERLESS"
                            }
                          ]
                        }
                      ],
                      "displayName": "Spend limit"
                    },
                    "spendLimitLabel": {
                      "displayName": "Spend limit",
                      "helpText": "Set a spending limit on resources for this database instance."
                    },
                    "storageGib": {
                      "conditionalData": [
                        {
                          "defaultValue": "15",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "AWS"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "15 GiB",
                              "value": "15"
                            },
                            {
                              "displayValue": "35 GiB",
                              "value": "35"
                            },
                            {
                              "displayValue": "75 GiB",
                              "value": "75"
                            },
                            {
                              "displayValue": "150 GiB",
                              "value": "150"
                            },
                            {
                              "displayValue": "300 GiB",
                              "value": "300"
                            },
                            {
                              "displayValue": "600 GiB",
                              "value": "600"
                            }
                          ]
                        },
                        {
                          "defaultValue": "15",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "GCP"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "15 GiB",
                              "value": "15"
                            },
                            {
                              "displayValue": "35 GiB",
                              "value": "35"
                            },
                            {
                              "displayValue": "75 GiB",
                              "value": "75"
                            },
                            {
                              "displayValue": "150 GiB",
                              "value": "150"
                            },
                            {
                              "displayValue": "300 GiB",
                              "value": "300"
                            },
                            {
                              "displayValue": "600 GiB",
                              "value": "600"
                            }
                          ]
                        }
                      ],
                      "displayName": "Storage"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Database
          containerImage: quay.io/ecosystem-appeng/dbaas-operator:v0.5.0
          description: Discover & connect with database instances hosted on 3rd-party
            ISV cloud platforms.
          operatorframework.io/suggested-namespace: openshift-dbaas-operator
          operators.operatorframework.io/builder: operator-sdk-v1.22.2
          operators.operatorframework.io/internal-objects: '["dbaasconnections.dbaas.redhat.com","dbaasproviders.dbaas.redhat.com","dbaasplatforms.dbaas.redhat.com","dbaasinstances.dbaas.redhat.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/RHEcosystemAppEng/dbaas-operator
          support: rhoda-requests@redhat.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DBaaSConnection
            name: dbaasconnections.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSConnection defines the schema for the DBaaSConnection
              API.
            displayName: DBaaSConnection
            kind: DBaaSConnection
            name: dbaasconnections.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSInstance
            name: dbaasinstances.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSInstance defines the schema for the DBaaSInstance API.
            displayName: DBaaSInstance
            kind: DBaaSInstance
            name: dbaasinstances.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSInventory
            name: dbaasinventories.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSInventory defines the schema for the DBaaSInventory
              API. Inventory objects must be created in a valid namespace, determined
              by the existence of a DBaaSPolicy object.
            displayName: Provider Account
            kind: DBaaSInventory
            name: dbaasinventories.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSPlatform
            name: dbaasplatforms.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSPlatform defines the schema for the DBaaSPlatform API.
            displayName: DBaaSPlatform
            kind: DBaaSPlatform
            name: dbaasplatforms.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSPolicy
            name: dbaaspolicies.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSPolicy enables administrative capabilities within a
              namespace, and sets a default inventory policy. Policy defaults can
              be overridden on a per-inventory basis.
            displayName: Provider Account Policy
            kind: DBaaSPolicy
            name: dbaaspolicies.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSProvider
            name: dbaasproviders.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSProvider defines the schema for the DBaaSProvider API.
            displayName: DBaaSProvider
            kind: DBaaSProvider
            name: dbaasproviders.dbaas.redhat.com
            version: v1beta1
        description: |
          The OpenShift Database Access Operator enables OpenShift users to discover & connect with database instances
          hosted on 3rd-party ISV cloud platforms such as CrunchyData Bridge & CockroachCloud.

          ## Feedback & Support

          Please contact us at [rhoda-requests@redhat.com](mailto:rhoda-requests@redhat.com)

          For more information on how to use our service, please refer to our [Quick Starts](quickstart?keyword=database).
        displayName: OpenShift Database Access Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rhoda
        - oda
        - dbaas
        - database
        - db
        - data
        - access
        - crunchy
        - bridge
        - cockroach
        - cockroachdb
        - cloud
        - ack
        - amazon
        - rds
        - relational
        links:
        - name: GitHub
          url: https://github.com/RHEcosystemAppEng/dbaas-operator
        maintainers:
        - email: ecosystem-appeng@redhat.com
          name: Red Hat Ecosystem App Engineering
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: OpenShift Database Access
        relatedImages:
        - quay.io/ecosystem-appeng/dbaas-dynamic-plugin:0.5.0
        - quay.io/ecosystem-appeng/dbaas-operator:v0.5.0
        - quay.io/ecosystem-appeng/rds-dbaas-operator-catalog:v0.4.0
        - quay.io/openshift-community-operators/dbaas-operator@sha256:b2474b569406fb0f47a7042042429bbc5cd2edbbd119e701c6f440a139e1b3ac
        - quay.io/openshift/origin-kube-rbac-proxy:4.10.0
        - registry.developers.crunchydata.com/crunchydata/crunchy-bridge-operator-catalog:v0.0.6
        - gcr.io/cockroach-shared/ccapi-k8s-operator-catalog:v0.0.5
        version: 0.5.0
      entries:
      - name: dbaas-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: dbaas-operator
    provider:
      name: OpenShift Database Access
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EPAM Delivery Platform
      provider-url: https://epam.github.io/edp-install/
    name: sonar-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sonar-operator.v3.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "Sonar",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonar-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonar",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonar-sample"
                },
                "spec": {
                  "defaultPermissionTemplate": "edp-default",
                  "secret": "sonar-secret",
                  "settings": [
                    {
                      "key": "sonar.global.exclusions",
                      "values": [
                        "**/*.jsx",
                        "**/*.tsx"
                      ]
                    },
                    {
                      "fieldValues": {
                        "beginBlockRegexp": ".*",
                        "endBlockRegexp": ".*"
                      },
                      "key": "sonar.issue.ignore.block"
                    },
                    {
                      "key": "sonar.dbcleaner.hoursBeforeKeepingOnlyOneSnapshotByDay",
                      "value": "20"
                    }
                  ],
                  "url": "https://example.com"
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarGroup",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonargroup-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonargroup",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonargroup-sample"
                },
                "spec": {
                  "description": "Developers",
                  "name": "sonar-developers",
                  "permissions": [
                    "admin"
                  ],
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarPermissionTemplate",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonarpermissiontemplate-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonarpermissiontemplate",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonarpermissiontemplate-sample"
                },
                "spec": {
                  "default": true,
                  "description": "EDP permission templates",
                  "groupsPermissions": {
                    "sonar-developers": [
                      "scan"
                    ],
                    "sonar-users": [
                      "issueadmin"
                    ]
                  },
                  "name": "edp-default",
                  "projectKeyPattern": ".+",
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarQualityGate",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonarqualitygate-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonarqualitygate",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonarqualitygate-sample"
                },
                "spec": {
                  "conditions": {
                    "new_duplicated_lines_density": {
                      "error": "1",
                      "op": "GT"
                    }
                  },
                  "default": true,
                  "name": "sonarqualitygate-sample",
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarQualityProfile",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonarqualityprofile-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonarqualityprofile",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonarqualityprofile-sample"
                },
                "spec": {
                  "default": true,
                  "language": "go",
                  "name": "sonarqualityprofile-sample",
                  "rules": {
                    "go:S1151": {
                      "params": "max=\"6\"",
                      "severity": "MAJOR"
                    }
                  },
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarUser",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonaruser-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonaruser",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonaruser-sample"
                },
                "spec": {
                  "email": "sonaruser@mail.com",
                  "groups": [
                    "sonar-administrators"
                  ],
                  "login": "sonaruser",
                  "name": "sonar user",
                  "permissions": [
                    "scan"
                  ],
                  "secret": "sonaruser-secret",
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Developer Tools
          containerImage: docker.io/epamedp/sonar-operator:3.1.0
          createdAt: "2023-09-08T12:53:57Z"
          description: An Operator for managing Sonar entities.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/epam/edp-sonar-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonarGroup is the Schema for the sonar group API.
            displayName: Sonar Group
            kind: SonarGroup
            name: sonargroups.edp.epam.com
            version: v1alpha1
          - description: SonarPermissionTemplate is the Schema for the sonar permission
              template API.
            displayName: Sonar Permission Template
            kind: SonarPermissionTemplate
            name: sonarpermissiontemplates.edp.epam.com
            version: v1alpha1
          - description: SonarQualityGate is the Schema for the sonarqualitygates
              API
            displayName: Sonar Quality Gate
            kind: SonarQualityGate
            name: sonarqualitygates.edp.epam.com
            version: v1alpha1
          - description: SonarQualityProfile is the Schema for the sonarqualityprofiles
              API
            displayName: Sonar Quality Profile
            kind: SonarQualityProfile
            name: sonarqualityprofiles.edp.epam.com
            version: v1alpha1
          - description: Sonar is the Schema for the sonars API.
            displayName: Sonar
            kind: Sonar
            name: sonars.edp.epam.com
            version: v1alpha1
          - description: SonarUser is the Schema for the sonarusers API
            displayName: Sonar User
            kind: SonarUser
            name: sonarusers.edp.epam.com
            version: v1alpha1
        description: |
          Sonar Operator is an operator that is responsible for establishing
          a connection to provided SonarQube server, reconciling Sonar entities (users,
          groups, permission templates, etc) according to the created CRs.
        displayName: EDP Sonar Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - analysis
        - automation
        - code
        - continuous
        - devops
        - edp
        - inspection
        - metrics
        - metrics
        - monitoring
        - operator
        - quality
        - security
        - software
        - static
        - technical
        - vulnerabilities
        links:
        - name: Sonar Operator
          url: https://github.com/epam/edp-sonar-operator
        maintainers:
        - email: SupportEPMD-EDP@epam.com
          name: epmd-edp
        maturity: alpha
        provider:
          name: EPAM Delivery Platform
          url: https://epam.github.io/edp-install/
        relatedImages:
        - docker.io/epamedp/sonar-operator:3.1.0
        - quay.io/openshift-community-operators/sonar-operator@sha256:5e7a87f52955162f090c1d7fc69f6d0917444b553355a11c061ab60f289a17d7
        version: 3.1.0
      entries:
      - name: sonar-operator.v3.1.0
        version: 3.1.0
      name: alpha
    defaultChannel: alpha
    packageName: sonar-operator
    provider:
      name: EPAM Delivery Platform
      url: https://epam.github.io/edp-install/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Opstree Solutions
      provider-url: ""
    name: redis-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: redis-operator.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"Redis","metadata":{"name":"redis"},"spec":{"mode":"cluster","size":3,"global":{"image":"quay.io/opstree/redis:v6.2","imagePullPolicy":"IfNotPresent","password":"Opstree@1234","resources":{"requests":{"cpu":"100m","memory":"128Mi"},"limits":{"cpu":"100m","memory":"128Mi"}}},"master":{"service":{"type":"ClusterIP"},"redisConfig":{}},"slave":{"service":{"type":"ClusterIP"},"redisConfig":{}},"service":{"type":"ClusterIP"},"redisConfig":{},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:1.0","imagePullPolicy":"Always","resources":{"requests":{"cpu":"100m","memory":"128Mi"},"limits":{"cpu":"100m","memory":"128Mi"}}},"storage":{"volumeClaimTemplate":{"spec":{"storageClassName":"buildpiper-storage","accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}}}}]'
          capabilities: Seamless Upgrades
          categories: Database, Storage
          certified: "false"
          containerImage: quay.io/opstree/redis-operator:v0.4.0
          createdAt: 06-02-2021
          description: A Golang based redis operator that will make/oversee Redis
            standalone/cluster mode setup on top of the Kubernetes.
          repository: https://github.com/ot-container-kit/redis-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Redis
            displayName: Redis
            kind: Redis
            name: redis.redis.redis.opstreelabs.in
            version: v1beta1
        description: |+
          A Golang based redis operator that will make/oversee Redis standalone/cluster mode setup on top of the Kubernetes. It can create a redis cluster setup with best practices on Cloud as well as the Bare metal environment. Also, it provides an in-built monitoring capability using redis-exporter.

          ### Supported Features

          Here the features which are supported by this operator:-
          - Redis cluster/standalone mode setup
          - Inbuilt monitoring with prometheus exporter
          - Dynamic storage provisioning with pvc template
          - Resources restrictions with k8s requests and limits
          - Password/Password-less setup
          - Node selector and affinity
          - Priority class to manage setup priority
          - SecurityContext to manipulate kernel parameters
          ### Documentation

          [Documentation](https://docs.opstreelabs.in/redis-operator/)

          ### Getting Help

          This project is managed by OpsTree Solutions. If you have any queries or suggestions, mail us at opensource@opstree.com.

          ### Contributing

          You can contribute to this project by:-
          - Raising Bugs and Feature Requests
          - Fixing issue by opening a Pull Request
          - Improving Documentation

          ### License

          Logging Operator is licensed under [Apache License, Version 2.0](https://github.com/OT-CONTAINER-KIT/redis-operator/blob/master/LICENSE)


        displayName: Redis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Database
        - Redis
        - Opstree
        - CRD
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://docs.opstreelabs.in/redis-operator/
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep Rawat
        maturity: beta
        minKubeVersion: 1.11.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/opstree/redis-operator:v0.4.0
        - quay.io/openshift-community-operators/redis-operator@sha256:21f4648e0e71b33ef24b4921ab34b9e2b5e90eac25ade735d51331ac4f7c4cf3
        version: 0.4.0
      entries:
      - name: redis-operator.v0.4.0
        version: 0.4.0
      - name: redis-operator.v0.3.0
        version: 0.3.0
      name: preview
    - currentCSV: redis-operator.v0.15.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"RedisCluster","metadata":{"name":"redis-cluster"},"spec":{"clusterSize":3,"clusterVersion":"v7","securityContext":{"runAsUser":1000,"fsGroup":1000},"persistenceEnabled":true,"kubernetesConfig":{"image":"quay.io/opstree/redis:v7.0.5","imagePullPolicy":"IfNotPresent"},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:v1.44.0","imagePullPolicy":"IfNotPresent"},"storage":{"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}}}},{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"Redis","metadata":{"name":"redis-standalone"},"spec":{"kubernetesConfig":{"image":"quay.io/opstree/redis:v7.0.5","imagePullPolicy":"IfNotPresent"},"storage":{"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:v1.44.0","imagePullPolicy":"IfNotPresent"},"securityContext":{"runAsUser":1000,"fsGroup":1000}}},{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"RedisSentinel","metadata":{"name":"redis-sentinel"},"spec":{"clusterSize":3,"podSecurityContext":{"runAsUser":1000,"fsGroup":1000},"redisSentinelConfig":{"redisReplicationName":"redis-replication"},"kubernetesConfig":{"image":"quay.io/opstree/redis-sentinel:v7.0.7","imagePullPolicy":"IfNotPresent","resources":{"requests":{"cpu":"101m","memory":"128Mi"},"limits":{"cpu":"101m","memory":"128Mi"}}}}},{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"RedisReplication","metadata":{"name":"redis-replication"},"spec":{"clusterSize":3,"kubernetesConfig":{"image":"quay.io/opstree/redis:v7.0.5","imagePullPolicy":"IfNotPresent"},"storage":{"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:v1.44.0","imagePullPolicy":"Always"},"podSecurityContext":{"runAsUser":1000,"fsGroup":1000}}}]'
          capabilities: Seamless Upgrades
          categories: Database, Storage
          certified: "false"
          containerImage: quay.io/opstree/redis-operator:v0.15.1
          createdAt: 24-09-2023
          description: A Golang based redis operator that will make/oversee Redis
            standalone/cluster mode setup on top of the Kubernetes.
          repository: https://github.com/ot-container-kit/redis-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Redis Cluster
            displayName: RedisCluster
            kind: RedisCluster
            name: redisclusters.redis.redis.opstreelabs.in
            version: v1beta1
          - description: Redis Replication
            displayName: RedisReplication
            kind: RedisReplication
            name: redisreplications.redis.redis.opstreelabs.in
            version: v1beta1
          - description: Redis Sentinel
            displayName: RedisSentinel
            kind: RedisSentinel
            name: redissentinels.redis.redis.opstreelabs.in
            version: v1beta1
          - description: Redis
            displayName: Redis
            kind: Redis
            name: redis.redis.redis.opstreelabs.in
            version: v1beta1
        description: "A Golang based redis operator that will make/oversee Redis\nstandalone/cluster
          mode setup on top of the Kubernetes. It can create a\nredis cluster setup
          with best practices on Cloud as well as the Bare metal\nenvironment. Also,
          it provides an in-built monitoring capability using\nredis-exporter.\n\nOrganizations
          that are using Redis Operator to manage their redis workload \ncan be found
          here. If your organization is also using Redis Operator, please \nfree to
          add by creating a PR https://github.com/OT-CONTAINER-KIT/redis-operator/pulls.\n\nThis
          operator only supports versions of redis =>6.\n\n### Supported Features\n\nHere
          the features which are supported by this operator:-\n- Redis cluster and
          standalone mode setup\n- Redis cluster failover and recovery\n- Redis leader
          and follower setup with Sentinel for High Availability\n- Inbuilt monitoring
          with redis exporter\n- Password and password-less setup of redis\n- TLS
          support for additional security layer\n- Ipv4 and Ipv6 support for redis
          setup\n- External configuration support for leader and follower\n- Detailed
          monitoring grafana dashboard\n\n### Documentation\n\n[Documentation](https://ot-redis-operator.netlify.app/)\n\n###
          Getting Help\nThis project is managed by OpsTree Solutions. If you have
          any queries or\nsuggestions, mail us at opensource@opstree.com.\n\n### Contributing\n\nYou
          can contribute to this project by:-\n- Raising Bugs and Feature Requests\n-
          Fixing issue by opening a Pull Request\n- Improving Documentation\n\n###
          License\n\nLogging Operator is licensed under [Apache License, Version\n2.0](https://github.com/OT-CONTAINER-KIT/redis-operator/blob/master/LICENSE)\n"
        displayName: Redis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Database
        - Redis
        - Opstree
        - CRD
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://ot-redis-operator.netlify.app/
        - name: Buildpiper
          url: https://buildpiper.io
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep Rawat
        maturity: beta
        minKubeVersion: 1.20.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/openshift-community-operators/redis-operator@sha256:2ed6bfdf37e36c63cde3633443553dee410201200ad351e6d91a5651f8e20ecc
        - quay.io/opstree/redis-operator:v0.15.1
        version: 0.15.1
      entries:
      - name: redis-operator.v0.15.1
        version: 0.15.1
      - name: redis-operator.v0.15.0
        version: 0.15.0
      - name: redis-operator.v0.14.0
        version: 0.14.0
      - name: redis-operator.v0.13.0
        version: 0.13.0
      - name: redis-operator.v0.8.0
        version: 0.8.0
      - name: redis-operator.v0.6.0
        version: 0.6.0
      - name: redis-operator.v0.5.0
        version: 0.5.0
      - name: redis-operator.v0.4.0
        version: 0.4.0
      - name: redis-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: redis-operator
    provider:
      name: Opstree Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: node-maintenance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-maintenance-operator.v5.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodemaintenance.medik8s.io/v1beta1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "nodeName": "node02",
                  "reason": "Test node maintenance"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: ""
          createdAt: "2025-11-03 11:08:50"
          description: Node Maintenance Operator for cordoning and draining nodes.
          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: "true"
          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.skipRange: '>=5.4.0 <5.5.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-maintenance-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.nodemaintenance.medik8s.io
            version: v1beta1
        description: |
          Node Maintenance Operator (NMO)

          This operator will keep nodes cordoned and drained while a matching NodeMaintenance (nm) custom resource exists.
          This is useful when investigating problems with a machine, or performing an operation on the underlying machine that might result in node failure.
        displayName: Node Maintenance Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - Node-maintenance
        - nmo
        links:
        - name: Node Maintenance Operator
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance/node-maintenance-operator
        - name: Source Code
          url: https://github.com/medik8s/node-maintenance-operator
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: beta
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/workload-availability/node-maintenance-operator-bundle@sha256:6cefc4f419229dbdd5677dd2e672201941117ee52cff715754db2dfd5607dd54
        - registry.redhat.io/workload-availability/node-maintenance-rhel9-operator@sha256:fb1ba771e3a1bbcc635ea0209bc7365b23744744a39e2134266b4e5c3a23573b
        version: 5.5.0
      entries:
      - name: node-maintenance-operator.v5.5.0
        version: 5.5.0
      - name: node-maintenance-operator.v5.4.1
        version: 5.4.1
      - name: node-maintenance-operator.v5.4.0
        version: 5.4.0
      name: stable
    defaultChannel: stable
    packageName: node-maintenance-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: serverless-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: serverless-operator.v1.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>1.36.1 <1.37.0'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel9@sha256:591bc064b99356334b7b53c56e2b14538dd8747577127b37fcffadbbd5df4498
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel9@sha256:052fe86c647d1ebedba9dbe1054c3d94fd7b02bb9670837e434549c5a7544e37
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel9@sha256:abe431c9d7390e6e3032c3ac74532b8162564729be7e5a6bca70c3d2374a3437
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:f64b1bf7dca0906dfa673ae299a2d965527c1c7a714020d046dad277d329f965
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel9@sha256:6886795e240a9d602a3f68c910f543b5f4c7874ede3bc3e229182d77d509e294
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel9@sha256:d9a299304e810eeef13adc7bdac4cad7a6fe80a9e18fa3ce93a2796f0586323b
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel9@sha256:8c4cd89255e0424249cbadc7f77ad0cbee43d7b9fe3cfb67b4ef63ab3fa827f6
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel9@sha256:4a7848b64e1bacadf5205de9a0fd64437c8b7dcf86959dc1095e12d873a4610a
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel9@sha256:615627148f347917a6214b3e036e201d7d23a119445d8b19dfefdde9647546d6
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel9@sha256:43856ee2f87c7ce642b998c48405785a5f940cda17f9f1afbbe626f7f860394c
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel9-operator@sha256:23e10eb061828568dc06cf4d4b3485e8fbd5fe8b711b2424ea954b7e1dd2534f
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel9@sha256:50293c7fe9b2bc102e9eb9a57fa97bf6d6ee7c3334866217aa6debf3fb77e7ec
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel9@sha256:dffaac938538b6a28306e8d3a444ff6c794d50501dfcfb742c7e99558c71296a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel9@sha256:04d23df5bec13af304cf718e66f65d198a5d1d29e022db536b96c9a7f7817a34
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        version: 1.37.0
      entries:
      - name: serverless-operator.v1.37.0
        version: 1.37.0
      - name: serverless-operator.v1.36.1
        version: 1.36.1
      - name: serverless-operator.v1.36.0
        version: 1.36.0
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable
    - currentCSV: serverless-operator.v1.29.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2023-07-28T05:42:31Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          olm.skipRange: '>=1.29.0 <1.29.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of a particular version of Knative
              Serving
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Eventing
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Kafka components
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:f37f494956adf0892ffca34d2a4c9b839ce28dc9f2779ca32e8801fb4f0e9105
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:216f58dc8c8166c0c69fc0312b667daad14cf39b7aeb7bc0fe1e313376f1a5fd
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:fd86ea2a34de43014dea3ba2b8d705a3d94347d3a24a370a8bfd032ed239dc56
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:b780634fffe2257eb845f8c1d25498d9c654d0327c1f8841b40d90c176a2bfe0
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:03a3d6f0314acf4da4f3d3d85f1e273a3ef25828d28f5b22f394441d55a645f3
        - registry.redhat.io/ocp-tools-4-tech-preview/source-to-image-rhel8@sha256:98d8cb3a255641ca6a1bce854e5e2460c20de9fb9b28e3cc67eb459f122873dd
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:04866e16881f64ff2b5edd379eab0731c9d66a47c25ebfe79c8d8ad33d8116e6
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:61fb98802490323bb03ff4a7060334d8fbda9e9f95cd6366b29b1b6494e4ef8b
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:4408d1fcf34c0ffe9327d4c9c0bc772afa969d831bc5de1097164d10b4e8d900
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:16b39335e97bcc7c970a8ba385c61d8333e9912faaee813ccf8520d434b7bb7a
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:3d7801f7ffe6420595779673a170235921a9090333f8ca51d5b7f664e19c82b2
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:aea5f200a845e1d4dc718d76465fdbb1eeac2b20ecae224d5d20a98214ad0357
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ad399867cbb712111db6affaf5c9e3573699ed0eb0def8ce6057de02054ced4f
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:8273842d8e1714fa03c7e0809924b1ffc5ef282f79b9606bd8ac88c03e7a16bd
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:3b7449287adf98f0cf0a1dc74e03b69218be3bcf5538327bc34ef776cc1c69c4
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a10e76aa15707e708f82c8d9e8b5179bf67780d99f3c3e2e99b84ae2a0aa4ecb
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:10788ca67809e5a2d76d6d72df7dd64ea4407773999707a7681e0cf1b5c4695f
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:a59ba5aeb8e66db3d8ba9074b8e553603c59e6b0e35b57b82c4ce3de589b94cc
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:7dd11d385b3d5a178566d901650ecd45e4af395faec2141d57b98af8fc1e5151
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:594c3ac24bf59802e2d3fa127e4051277bc07b6444f934f535fddeb668ccc144
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:de0634d14962bdb8701a8c29e80b7b70684824462bc5203e5fa7f139839cb73b
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:3aab995872336e6ccb590ef6488c097cff38a91348055031145427a00aa6b732
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:c4cff5ad5b0ac79e71a16b88640a312ab320817041317f50caf575f7e12a864e
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:a3c5d5fd8014c432830be912aedebbc58f9c60a8cabd87ae6c42c7b8d27db8f9
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:e5db11a0adb889f907cad797dad9cf2de09c433e5522fa333193cb35575802d8
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:56e48afb1dcbf4e266ace944105f3c45042550d8d4a0528c982225a793d26d56
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:b520305189c7567b2f8ac867b20468259fb22cd3edc5b4576af2bfcdb0c11855
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:31d45f10a8519addec9aac115c5edc8a2e14f9621c875d95f123d1291776ef4b
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:fe916630003194dbcd3894dd880cad8b15a041a5e534cd8f76fde6296db00797
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:a4943c0563c45ceccfda0a01e26be3a01c1437c89d927714c577bf6060495958
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:397eb425f383c1273c7976bea69a603530676a00a61f461ceb5f48d67901c4cd
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:ab90ec9b3cd9203fdcdd7c43abf95f48c9d7479a9c7af479eb1e4b6599ba9642
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c2cb80bce34a74afa76151d2b44dc25ece73fb274cdfc6fdf243b1b0cb7d989f
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:6342358e6aed2339333ebf37fc223a41a0a3e199a0e4a840f3f66e5accf8f233
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:0229a0a4f026f04f8fa0a1cd8e7afea10117fe3f12e21986ec6089769c8afcaf
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c12c471902b8e2596588d9e553ad59b501d979dd04f301d45f7d45e794737a8c
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:557e73127326be051aa6257e7daeb9721e2af04d2f06cc26cfc7a1073666b989
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:bd134e64c156dc5c81d14522c9c9efcc1f56b2e972ac8ecb1bb1b130c76adc60
        version: 1.29.1
      entries:
      - name: serverless-operator.v1.29.1
        version: 1.29.1
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.29
    - currentCSV: serverless-operator.v1.30.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2023-10-30T14:03:25Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          olm.skipRange: '>=1.30.0 <1.30.2'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of a particular version of Knative
              Serving
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Eventing
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Kafka components
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c933641efc6bf919b1945be5a01dfb7774ae865975b1bb1f44653b3e4ca9f1f
        - registry.redhat.io/ocp-tools-4-tech-preview/source-to-image-rhel8@sha256:98d8cb3a255641ca6a1bce854e5e2460c20de9fb9b28e3cc67eb459f122873dd
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:124087e6402caa375b24b976c3b9fd7d53890e20ac3b0b57ba3ac646e352c7ce
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:e8c756b659f6187790bc1a5115e0f71791bff96630859a905bc5b75d14596e0e
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3fb6e7626d2b0c92c2a2fef35e9b8171382b4bdf54393f2ab1281ae7ab441761
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:a9c95fc208cc03625cf49bcebdaac73da823d1fa3bfae4239d7db20d3a0b8723
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:ce4b36c90955a356a5774410356aafdac2b60795526a3488b0b76ac2ec1a018c
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:e97eb2bb7eb529cbfe67c14e823ffa1269d614e2d35723896e89efa12a499c6a
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:1455606c8edf611d996a48e29ead53e0bb4078f55384b7689058bb25fc59fb2c
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c9353a022e6f883b7c0b2d87b1bc4653172feb13806ebf0aa075d6f9f43c264e
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:e9505aba7c44cffc3f261a5dc7617a0e54ed98e78f73ea3c9c7a508560b792ed
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:9a28cb1d4c4f4dd7d494829eeeb7122db2174a27747f915244672c95dc8f9d12
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:2d3e314a6584fc6974517c1a992fb59f5133f54c2f6cfaa42f579c0d332e0300
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:6057a2d18406e00b0b7b1731870f707844e39193d4cce6de50137b77f17d220b
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:3c8bf480dbb05e09e8d07cab12e4736643f61bf9b5d98efa6bc0557eb31887bc
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:06e9e073f092dce67d4227e282fd8eea6dc9f38b90a8d444cf448d80d027b616
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:12bc62246142a605f4efed0f6bb8843aa2df7699cc1c5ab53debb94b0682e9d1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:53d3620bb0490d83aaf6a356bb7d3b9e7147222d1a2017f8317f05fa90cd3de9
        - registry.redhat.io/ubi8/python-39@sha256:0ff58549041d32b685cc850aaa85da32d1ef73f99cd4b6e0f6882dad5f0399bf
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d03f2bf8f5e7cba47102ba26ea0149ae6719076c645d5e451058392d6044b738
        - registry.redhat.io/openshift-serverless-1-tech-preview/eventing-istio-controller-rhel8@sha256:b6ef281fca2b80d379b1e28fe3f23119df8ff765fb2cca291d514053fb512da6
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ef116868c9c60e5ee246060688da49832571ff6a7901cfe143a42d048743736e
        - registry.redhat.io/ubi8/nodejs-16@sha256:8abeddc6ccfffbe313f87e5e069e18cb7047f2c7880ad63cf15bcd0a79ba71ff
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:01c8fee92889a84a19136b0843e4fed5db31c1f2a6d997669f103373fd995e36
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:a0c5a91348ec71697747113990652feb024143fbbd0cdd67e8ae672730383a79
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:3508434d5ab6b38c8a7466256f1158ebcd75e8b751afcc5255da8c21566804f0
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:cd1abeb2067afa44a0f1eca301cce37307582d56c1147820ff86b9b64a40588b
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:51ac9aced282f62c8fb2d3696da3696b8496d8f877e9846fe3a4a743ccd63bea
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:66149df8549380673c24e1487d0c2c8eb638b7e502455671ca64ed6f32ff82c3
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:69ea22c646c09208ca68345d4b3508453d8c49f7f7fd9a4ff4c4cb78be7bff43
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:a5154f9d13a1c373b8ba47e2bcfb9d4474fd03e08db4134c92aa4f049536f1a8
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:21a638b481639c3c58e8b026d875917c30a5874b08fa4ceac40d447076b2bfa4
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:96d6f52711ba433ab2f273be8080840a88e626e989027480424d19c2fe1e9454
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:92a39ca90984cebb1938447a31c9170b52994ae98f83caa860acdb2c3ebb75c7
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:32445e4a73bc7c1e8007775adeb147175d934b17e7d3d4dcf422104dbe80a52b
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:2264d2cd4ee2a720667d625ff42b6f8be4f2cd65b57a91eb6044da086a110740
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:1f7e65009168383cdcb6b2caa22fe4db49e03c71574973a8086f6c332dc5e26e
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:96c135ced2e3bff434addb012368d96d0778ef1d294ba507ae7e624811e20d46
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:85a369d5696771d0932b61760336e52ae3f7c66f9a3def5312aefcac03ba516e
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:16939b802f4c16a3d9d941917d0363325f40cdef28f6e1a982bc95401117674c
        - registry.redhat.io/ubi8/openjdk-17@sha256:af305e087061cbaa4107ce0b304a1ef987f6b54bae3f75bfd529cfd084cba9b5
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:4800c85e8de031bf77f6fae0e4c8e6c1a9912ccdfb77799cc2ea574c37d870ac
        version: 1.30.2
      entries:
      - name: serverless-operator.v1.30.2
        version: 1.30.2
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.30
    - currentCSV: serverless-operator.v1.31.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-02-01T19:15:42Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          olm.skipRange: '>=1.31.0 <1.31.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c078071cd51c7fd5584039b54a2004331c05a897ee8b0689bfcb9204a8ebae80
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:3be4fc173b489d0beb768739f60274e07d95ffee86d70a8423e1f59678c805ea
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:63e08279d2852d494d4f8836c54e2ce942a342f452a23ef437df9640bb2f5bc9
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:eacdad8db61b23634c3f89bffa3f1c30ac5c7bbb5e938c6208003ff00f9595f1
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:d8bdd96c6a9b31f48c961ca438c254511db785fd34bd10b98084b702baf0ebab
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:486bf60d17a5d265ebd65d590a6ee1a7e13bf3953ea797b2f6c2b5910789858f
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:dbd9c0cac86f79b8d91ab65ae7543854144781d4cb17ef16183931ec9bc234a7
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:8353ccb4f0d70597d61e4fd1f799d4bb74e5bc038f6b9916059e712aa70b97c1
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:bf693eaa845373e1a06041626a9314ec00519a6fd2437b12f7f4f3f104864039
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:af5c30fc9f631d9ed110641b815315d8b4aef539f687277a3821d9939ca5dd46
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:99f5dcb92a33c047f0b68236a3a42ffaec78037dd0a5eb79d1144d62d6bfcf43
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:887480662b1bfe09626fbca8ec7c5da879d097c46dca11764ea98474ec78ab5d
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:3181ad775ead55f317f96466c2719b2b73c5b35d31933733da21273955d160c4
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:9221a833ecc66fe2354aee7aaec2a2470b21e2d89cb6ed287ece32edab2a2edb
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:d2a34100f6309c3cbac7c9ccd452b7bdab2a533afc99463bfbf91e3ba2706d54
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3b01ebdb0704dc6a1a993ac076819489495ab3fe32e3c14609e42d1358856be2
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:ef7d28580e75d746449a90cc0e5343ef3f4ddd75bd9fb866d97836bfbc3b314d
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:e49220eaf3143a8958f0cb1f22115b2e834fb7177755433bdc592b753a54a8ec
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:3dab790fa845ed7eda088e5abdc87799da1354884a53ff1ff728739b8e278418
        - registry.redhat.io/ubi8/nodejs-16@sha256:f90b28179d1d5de68d42ef1a9166d70a9dfea85a1c6a4bf12dce2c59eeb2fbb1
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:0a2989f688b966277652957b312df736ada43fff78fd89b17f60b2137e38f115
        - registry.redhat.io/ubi8/python-39@sha256:4f35cbcc6f4e108c69f7d2b70cce5afb138741b0c961506376d524e001b922f4
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:565becc77dbe3bf03d89b1399d6e1853253276a71e80b6b14069285d03cb14b2
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:677be039353b2cee51d5faa5d5a2abd6a7bd46992ffe9521eb033eea9925c785
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:b2480154951109a159acfb88c5472a312a515d6a6b060d832b3f7bfc16f90ac5
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:3a4e7412322755b4c278540c965a403f9e178f138bd4ad7929c1c24a8036dd14
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:22ffe08d6a0d5461158613f2b2a2ac6936025357e282a09197a750c42b5e6922
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:a82288782b61ea46d068cc09ee10608d3201c136abfc767e4d37734775101390
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:9e120ecdbea54eecbc5e0412c1774f8a2ee70d7fca682ecd0757b8627f70680b
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:7941b421b3e18bda8c565305241621fcdf1212cbbe0dc02f38f4ab0565d2bfcb
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b37dd2cf4b459fecb6d681cac36918e486c3bd22501df50b90e20b15fe164d56
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1-tech-preview/eventing-istio-controller-rhel8@sha256:5b38e5c71e422161e40f9c37dd2f46212cb80e8e37b00247767276b957080397
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:cda04e3b7c2c1f37164733ad162ea0c4e52f14fdc8eb8bdef8507f0ed5454640
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:1ee675125f7141e91f4ee57ebce082967834bbdabe1a870c221f31aeb8750be4
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:433821e6c7f43da5ca2e38c0550722feb179a0bab021decd9a97ad020cb78b76
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:df1aee67a161fa19d7f49ba56d53e0682cc1996436e985a12a2068fa419b54ea
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:1fcecc11b55007b9c6969a24940a391968378e4102eebf7ceabbe7efda138575
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:2572d98363cca2dd94984d6cefa573c5054fc206ee70048f901ad4b846d8dd52
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:80361e052d366ffffe9a99893cd83965bd69a9ff81d8c9262976de145bbc6184
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:de62762efa0df95ed23df56f5520490d8a231e47ce13c433c512254ceff81844
        version: 1.31.1
      entries:
      - name: serverless-operator.v1.31.1
        version: 1.31.1
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.31
    - currentCSV: serverless-operator.v1.32.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-08-01T10:56:58Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.32.0 <1.32.2'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:16c026f09b377c44253cdb902b9a5fa0ae766fd0185cca1863798a212e0daee1
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:2f0f84767f7d76dbbf4387ca2e272766267a2c46b5bc29f5d01f05dfa39cb944
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:14ca32e999767776c3e585ff5eb1aa568f7d76fd3e5ae24cae05ce7564678080
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:e1e2273fdf6384d95e1128e54c0794d7d620291a272bfb1f91e0c2723be7f1b7
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:2a30ae808d5c32d812406ff4ac9b472e82b6bb0555e62eee4c2c6a972f8750c2
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:22b4d47725ed8cdd663ee26a03f31198fff9e71dc703532e70c42bdfb4840811
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:828d31bf8a441091b8aed03da213a6b4ffae260070eff58c3319156f9bf04f5a
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:e7e6cbb46720eeca3f0f4b9829dfeeb3db373a83c89cd808b667ded4d5e139a4
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1a1de677297525c0c5d317fe8a7a42684fe3f1b422a7d6bea1f70f0924653b08
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:ab09a1710aa2331e24df9e7283f3909fdb104c1b314dea88e919d0a396f334d3
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:3be20d63d7e82f35ac88274532d6ab7839f9a7306ca272e7d532ac03215faea9
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:1befc9969edd2062b3df69f45aee9771b33a2659c3a14db0aaaf5c3df985af58
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:25cbdf78b67e7f5a360313ccfbe3b6e2c98873b4e9ddee46c115a623e77c7abb
        - registry.redhat.io/ubi8/openjdk-21@sha256:bb95ea866269ac8652f666ee1587d71f4f43da33493c2be7f6a9548bcfd2407c
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:a5a7b2be50f211d4d9d555b2a2e2302096c139ff5011d984cc386f1530007f16
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:0551f1657dc158bd41eb2338dd6514d55c39fc77300cdf1744d8f5ab14e9ed1b
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:7c8cefd5823ad953f112b905c651f12a97491aafc008b2ba0111f0c9e83e50ae
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:9d36cde68bd822016e967148eebd2ef3e7ffab9dcdd37d17f33017e9b703d9b2
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:0729de0f3f03ed220216c6cb718fc34beece0ceacd926b5e2480bdfcf44df5cd
        - registry.redhat.io/ubi8/nodejs-16@sha256:69439fe83fa957089cb6fd3c1042ab71d719f81dd457a5d1fbc56c1e3ea600da
        - registry.redhat.io/ubi8/openjdk-17@sha256:a166bd2fedb99cb62ebf4695ab46e19c7e451f887940cdf0b8245c81e403aea2
        - registry.redhat.io/rhel8/buildah@sha256:55f5c7d88c77e1ab5a2ab8e877172b2b66cb196e21f10dc45148470d0ee8bbae
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:da5f813dea324ffe9679524ea7f3801536fa48f7dbbd8da56a8492b916b15fc3
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:8033b7c1e903ba313134645c626eb3bf7ab1a0d68dc2575bc8e26884ad4f805f
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:4933b76d95d411d597d4dc460fc46c92875d28e107cda661946206a9d934b8b5
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:5930caa25ea875d29dff0ec5e235eaa13cb6dc98980d8045335eba1a09ae761d
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:990962ad245a6d62cd11551bd4e1f8b14dc08abbebe47beddb2f4874f78d4f47
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:46b8dc1c8ea6c40401d4d1a9868ab3edbe8b9e92364a43add6722489e2eefa04
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:04e5b3882223d45a5f5383ce6481efb7b2cbedea57ebd894caafb1454ad8c09d
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:e70dd3a9e067075eb56e5f2772642545e308348cd49b89357c02de3979b1a5be
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:ab9a1b952e9603b4ecc5f197715a1d871abc25ebb0c5e6470d4f0b365ae94276
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:0507ea8745267fdb53329a5274d59d23c387225d2594af51dd2603b4ad99db0f
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:e55c70591c0498b6b85f0d68e304e88b830ea0b35219ba8881143555757be4b7
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:b0db9f0fc85fcdcd5da980633a3a44be2bbabae068f89d0965263de38789e812
        - registry.redhat.io/ubi8/python-39@sha256:8c96e8648cc6651d0cefbd20496a89f208621601f9664554d3fdeef8ced25453
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:42f31eb8f12dd36541c8c0b6572d942c62e2064d5418428482d676d117a6c426
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:b008da825ee2429f04cf39258389740c68056f82cf4bde0cbd3db850b6256885
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:70c26c7ac48d1eaaf1f95ca5c5b8ba8ee6b047a3c9c4a2c2db9c49a506bb2205
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:4c9faea6fd162db3340aee8c11af11a08c9d79bbed104967c25df26c4933c8ae
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3ffcf746df914f0949477b46f90cb2992bb63f8198d73ffd54208e7a777a9cb1
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:9b6524f9c0e7f78e6ffb372a8587eaf5f4f1281eaf64f93dd00b63be84a4c21e
        version: 1.32.2
      entries:
      - name: serverless-operator.v1.32.2
        version: 1.32.2
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.32
    - currentCSV: serverless-operator.v1.33.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-11-20T08:38:34Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.33.0 <1.33.3'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:e1cb1c24333605e52364456f9bd8d86d787d1bae17ef75dd04be61257fdb2256
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:9b94875e0e5d7abdb3b9ba7b04e217a2a9b7b4410d38d1608c86d1c21f929cc1
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:56c6ac59a68976741d2ba676a53e59fc494d04dc44b513d72fdf8a9ad894a54d
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:b871bd08b782c9168e9a54340efffc0b0effadde8079915b848e4eff72bb3e95
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:eb95deb2105f14c6a9f3bb2cdd7306b446109a9b142a7bfc726b6429f270d9e5
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:af66cc7dbed88907d96a390fe5c8807a2a60bbe3276b8cd13b4b061cbaf7b162
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:a9c84ac7e7c3fb1e5dedaf949d54a3aee8a62397d2bd6022094671de00b651da
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:05e3dd6255294b691783523f7722cfaf13aca1a1e1dab344a25eeea72aaf9f9e
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:d8ae7bc888f11121fbbba65074389b879bc22453bbabc551d79d0cee68fc33a3
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:eab4aa93b9d175045b1f01bff09681107d839285e0d633cd5146d2a2efab373c
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:dd1f7c850f7cf2a4d70403deedd8a57ecc6e0ee5455d68fdfc49ff175fe42dde
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:ea9e4de6228d5c3ed494c2ce5317ec290543ad40bcf7c43c2a3d6565e5d94e5d
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:28c9d05a3ba73b76f293e8f4902b574deb44f77a2bae8cf92473b8a8b10cee92
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:f938cc534fc4b24bb9449f1e1e1e904dc588e6646c98474de4b8c81d083b4d96
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c7f29554d04eb9348932953344f2ea0806d14e7704355619381bf395d993f58
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:9b850afa750a67120f68a49f4834ba7f105563df22cbcbc563317fe1545640d1
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ace72435e3e63ab21dff2345f958cf6bd171537ef2846c5d5d91cf821877140d
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b12272e1a9cb4f4bb62c4badc62b0bab110abb99484612dc781c46bfeac13cc0
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:42d16e4d9f14a427e7a5b7e3a4ea07c258e0f2c74984baeee3b4926a8c5e2640
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:993597ff83a4d62a23f642fadc92f182944b953770716b73b7d19492b5a462c3
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:b2be693c71cfc4ce934d5b01efb863dc6e391f93a6b15fe7eeb15914063a8294
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:09060de091d617bd4606f7a289b4528265ae0b7a04737f383e79efd5b0d3eb79
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:672022b6f2a080483d9d6f6f4a5f42e52e522a5797105f3465731809c6cf4947
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:359f8b9fbb4c3c2f79e8c70f3b50c994693b930f6f078c34c87112ebb93037e3
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:a8821b59d495e24598b27c6510b32ef19de2bb04ea1e568fc5afb9135d772036
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:28ae309e4cf7feabaf78ac6067e1173f9f5b33a71c06d6c27cf25e01a0b1ed64
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:2bd241898bd54dcb248ae86470430042dc545d45e7519ed470a1a9c8c63bdc37
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:62bf4bee0ea17ecc60366ecc71431adc79d6f0a5b9f59489913b474128c4adb0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:93b2f5211e79abc38bf92f0b8fb8adf046303efa2fe62c47a2fef9dfb5662f55
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:e1cb1c24333605e52364456f9bd8d86d787d1bae17ef75dd04be61257fdb2256
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:6dbfa2573a2c78e450d3c1c04c6e7cbc50d9272233e828fe9b42e575ecf386c0
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:510e98837a549f489b2d74939f3b9c7ed90a8260ba914910f681d5c0dec7655c
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:879fca768b46676f1df89de1cdc4ded8dac310209c146c2f381ed1deb19b06be
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:e9b38f1df225238836aa829f3a2016372859fb8709cdd2b30496498669a90be1
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ccbda564735555785815f27f8f25ad9c6c27dabe4e262586fc51609331692527
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:c3dee2598088bda36ef474f4748943a29169ed9589aeb0f77bc79a7f6bef9907
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:a0399a993155e755409355740b260d9b0019559a62be3b6253d8693a4fb59286
        version: 1.33.3
      entries:
      - name: serverless-operator.v1.33.3
        version: 1.33.3
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.33
    - currentCSV: serverless-operator.v1.34.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-11-20T08:53:53Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.34.0 <1.34.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:a4b3d75903de1929326041e9885213074473f07fda91b299548d45680c295c00
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.34/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.34/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.34/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:0f126893074cd0398654c4018df6e882b7610e148c82a41ac814f4bf3830bf9d
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:01ea7a06332d60ac16ae0a27adcaaede3f680a98a22ff995259a6c42ac0e358d
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:095629572a40469eb651c9f81d6c10ff46254eff8b9813cadce54d6f0075c2fb
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:946daeff59b41a6f8c4842f8c2668f97ff1b49e2a8afae5d64ba3baa916b1d95
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c0376504edae12e7af6b6cce02ac53b6b374f5058ebefcbdbd32628b551bb0c4
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:76480201188dd142206040af845bd55b44155af92e0c5ee9bcdb8660bea0cdb8
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ef7f34a025e40f93fbd51f3a4596998a6dc508db824f137ffa1fbaf90e88f4a8
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:144883b09d8a999fd4d2a109d074e44d7d8b959987512379aa71c71e4060ca28
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:86ffb8be1762782d643c147cefcfbc2b4723b0f97d017314a99bd2275d05a1cf
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:b9d85323e110d8eb6600223c38f9d4cbe89b50d59e03bf1e6b8808f7cef9a3a5
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:a5950f81cbc64d1edb64ae7f7f120c3435d36afcd14ffc34ae522af297d87e1e
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1252960c0c0a4dc7b39090cde0fd5742a19453b1a65a08b737bc41d044a0882a
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:e520d1b6b87f85dfffab5e53cfb70562ab7edf450061c07609da39e3b2498fdd
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:09dd94090eea9cac7a1935a6d671cb97fd9fd5714c715c9d2aed461e468ca54a
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:633ea30ea3b6d5152bbdb61acb4271e5905d50fbe3c731fb4c8d8640a57f1970
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:586fc8ed88f91298dbff31bc2fc4c63e0d6d9356e3358b2f853f49511c3ff9bf
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:b07010595201d7cfe0ec4f18e612d323eb38464c74eb187f275617a744d9df12
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:d40daf67b36387faa9f55e70e50d10d02accfd19470c0ac11b78bf969947fed1
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:30cb41f09067959cfe3792e070fca62820fcca4035683e5c43dd46d1cce97c01
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3d17f12cc9da578549254ba1b8934b5afc66e453b1d5d667bb90281e45b8795c
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:0f8d006d0e7468783739942a1c82c7aec376c9948f23841132c8ddece8ecba06
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:a9e8583c19ca3e01593f8c0e54731cb73df9b46b2ed47a2b1c711828c2295f82
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:d5ad3c9db7ce8e4fc950261f7c388476214a03d92e0043c7bbc4f0add2b1e69e
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:f94f0e8d21a6b6341b1db00513a1a2ed5cd84fcd898a376ecde942e940a518e7
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:84994eabeb7342a0771c7cb1bdd70e7ee3928dd45874eafa64cde5bb385fe964
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:2adb0124f04d6c4a552ade79dd1499c8ca997edb45855bf438ca8043b2709e19
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:45bc50a993d04b775a153e985a43d587d5455883fc4c6f31b772408297cf9040
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:6d042c614431aa9a9e77cf8ba0064423e903f7c418e367ecc23bc02a24a796c0
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:b801ed7b1cb32d4a1522a959e97f280f2eff6fc92e47fea2ea022f180d37831a
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:d8b94bbce98325fe8079c11c0b7a6c59bad8a7edd0532a7d27ef1632ff0de708
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:33d62d13e16f47db9951ac826671f39fdc048fe7c3fb019eeb4bf9bd0f814222
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:512c4d93dc13cc53d923a6990770a7527d6fb657278e2c5d8f0ece3cd5020155
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:4b6f161c14c68536ec2c7679d30681afa9a1fa2d512548f0f591791a10a8b894
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:75228e70fb1383bbdbcc64d0cf24bf5d977c09112e3f32316824188264c3a2bc
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:1c82d20ccf5eb5f8e7725839f1060f4efdfd1c1b4773a99bd905e690a6e36f38
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:a4b3d75903de1929326041e9885213074473f07fda91b299548d45680c295c00
        version: 1.34.1
      entries:
      - name: serverless-operator.v1.34.1
        version: 1.34.1
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.34
    - currentCSV: serverless-operator.v1.35.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          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.skipRange: '>=1.35.0 <1.35.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:f23d3ab058667c6fe9ee44dc249aa7e8449c1bb9581380ddbc66624511b286d2
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel8@sha256:80a155d2637f47e249fd69760b250c9b7a1eeb6781de9308b54162bb3e1bce71
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:732827652b7a7a49181e86d561831001c28b72b7e12d5e3c1d71b2e496003229
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel8@sha256:ab0342b325ee67cc2a7d321aa1eda9c6797dc91fe2b6f26e3cbab53fadf564c7
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:018459cbba2e3169bc4be6564cf3747c9cd0677445912abf237f8fe6d58e46ac
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:f23d3ab058667c6fe9ee44dc249aa7e8449c1bb9581380ddbc66624511b286d2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:8a4e5e0934197c32e0dfa1efc922d750940587fb61e0df49d476a2d035c53413
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:cb2ebe98481808e788ca70e7f0a9b3402818b622158f327b99a1e87c23226d2d
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:818dc7bd69b453ba5882b4ccb82841f2d48c7552368417bac20bef1df64f52ff
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel8@sha256:dfcd11686f161d44786a205d12f9d628d9e847d40ffdb628ec9aa4a0da0b86f0
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:91456907c61952017daf07e376b565472ef86d67a2925f60e189c639ceb68595
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:d68fae6fc07efa9da9af0532aadb49f897a15afcdf9a98dc7517ff5e17735454
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:da8d975527ba100313b92e87d6d2690fddae9988aa8d82d728221295955b7224
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel8@sha256:acb28d84cf03b8551efa32646864005dc3bc9bb341a696544892dfd0c87fbda6
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:56e7a0158a713c70765ead847732db4e5f8439aacf31e9a4a22672b583028064
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel8@sha256:86074674b7926ad9bfc95556e50820792fcbc5e11ab02879378625ffabdd1889
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:6722aecbbbefa80dfaf93143e033c562cea0982514e2eea27654dd4638e1d072
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:0751b9ea7ca197480c4cbca17654d0653d1c0c760ca3c818c2a1018dc952cdc8
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:477b1ac0db0abf1e16ae31bb22fdb73dd98f4dbd243fa0a7e6e94852b16a813c
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:6f4fa254d923f3260ab0f7d6a0b459554f83b1abfcb575a5ce2c0135fba32427
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:3130a5159adb9b4eaab75a0209d2ac639156d5e9f2346a8b2e6e0e22fad4b45f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:ffaad2214fa897e89e92e574eb5cd1c671edab7f6eab87cf2ffd4ebf162b3cf4
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel8@sha256:2980eca437e4c1cd22a2b6c2ccae9c4d6b55921b3d575fbd4b9241f1f0a8a3a4
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel8@sha256:d00a0059f6134b2519f9b1e034b81a943cae7ce391109703f24db21e56ee923d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel8@sha256:6b842b4eddfc71a2c8f6c1fcebb8f23a05f50c95be1ba2d20a1be660d3014c8e
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:86386b54cc10743023884193b7d6c7159b90052bc5e4a0608a6cdfd47865c966
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:020264063c50f2a4590f3d7524b271f0f77350a1f8fa3c35ca6e28f0162aa9a5
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:b2de6b658a1595084a202203c90704c3f9de018a7a904ca276112ad606e374f1
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:ab8f85bb18311b0bfee00561ef6b5d9faf810358c954ac2c6f39cf2a7739e07c
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:0e58edf5ee340fdfb282faeb6c9bee8cd6323e7f29a9b282dbb91c2622131a9c
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:2cbe84afebac23b5397d144b4d5660af33290df451141fa3625607b6033983e0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel8@sha256:e743dd93b7ae855825716403979db3f34cd300caad130e7d3011172b1aa4eaf7
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:b66bb9531f05cd46360f787955c849208496e3e45541cb50b23bfb6b68570aa8
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:9b176477be4c782ce60d81a72bacb566069a499579ce6df5a987a0841f05ad5c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:f56d21089566330ecbd9aa8acf14da332d3db7360aaf6da00c9a19df83f7334c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:e7aa54986c3d388c1bb00828c9ccb294ca0b6c26376c7593ed6bfddda0ef4e5d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:4ca1bfaf2d7e9477583cddfa40f0b2ce59c20ff9ab20022038774dc3cc49662b
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:b5db9a51bbb46640b23712c61e9c5a1c7bbdbcd9a53b0b92fa36b80dcaffffc0
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:d0650e4d7e72241e07a3796f20931adba231fbf5e401a45d794761f2c5afae48
        version: 1.35.1
      entries:
      - name: serverless-operator.v1.35.1
        version: 1.35.1
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.35
    - currentCSV: serverless-operator.v1.36.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.36.0 <1.36.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:36e589adaf5ff2856f5aada90b3a2be893d9ff89f92b1b2c42ee59523c9c9c8e
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:01d632b69b4a4112426afc4184c72eae6d8816974088e5980c9c808f0782b85c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel8@sha256:3d780ad1ab280b5092b90e277485d589da2a18e8b08090af7d95aecd17af545d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel8@sha256:51b5e18e8d4c1ca81d7c5ddfea6352a3887f757acfcc53bd2f8bd3b01337ed42
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel8@sha256:30b8045ef5f925a36c58941386f1899bec125d005a08aeeeba5edd49b0859149
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:36e589adaf5ff2856f5aada90b3a2be893d9ff89f92b1b2c42ee59523c9c9c8e
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:c39cb88afaddc295d93a3774b8a20d001b82392df540fb502ee02316d82460a9
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:6210a946f373b9c36c9b31293debe6fed090008b8234c0ba17d37fa81646172e
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:4344716eb2940c6a3fa9a278250f936602bb1549fece6037912837719c178b24
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel8@sha256:27e74287774cda208f667bc2a386debe6b6255e8991abfb37c959c8525f2af53
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:631eb3a8dd9d83ceafa7d8a4da4b1e2d4f2740e6017c766828dcc7575cf1322f
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:5352e4eb4e426a41521276decadf204b6d23b4762a298e4d3dc73969e3eddc68
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel8@sha256:4aeb68a22f63300e54391ec6b4cda8c4e665d904b5dcdd3c40155040525742a0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:52ba6b1252b6f3d41e2a0b3b880cb768010ab9dd925ac34596f6adaedcbbe07c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel8@sha256:d9b944e64391a996104afbe8a21f66316a948e9fb7b91734e861847285be59c7
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:ee6533b71cf280877c9d7489dfd821c9209c6802bed7fa3fdb4f8f00fbeacb09
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:a1834b620f875681388f0ae224dd0771773a8b61b1d8e5214a942f232854b87b
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:82e69a1890042f5636ac7bb645b1aaeaba0a4894851eccc1fa1c63296918e31a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel8@sha256:afa634e029bcf79a972f49372498d44b45bcfbdb6eb28ecaf4f0b0b2a0a1824b
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:4274004b6289fa9bea3fa6e56d64077a328a6b5e63a9f0e9c41f6d561f682bd7
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:187fb9d64b53c55a029ffce3c0f9e7c3304683fa8a0e832cfb7134e8a3d0c237
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ed89e221d7a0a1dd82f2fa75e9e70bff3dddcb8979594396590bd3a15673a152
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:3b04e9d8cd4b5e43a07ece838d10478723a6c6529350f010550b4a0d1d0950d1
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel8@sha256:3fe326ad9a00b112fc888ffd345c8d5042f0a22cf32ea575931192c39ce1fece
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:429d5d9568cca31fbe83c663276a300286af4cdbf3d35685afdbe5f6f2f8c6e0
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:0c2cdf917bbad1f5bca8a2a2ef12a96cfcd0c77c190cc35687eb57169b54ab6f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:bf82b37ab8fd29c7a7cd846008a16d14b4cfdc1c09df4f731d71be3957e90123
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:a6f565d73375e827d830dca85838f4c4cb7f08b0c078acb0c0d567b25f0d256a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel8@sha256:f2d112ba9fdfccea988589b99b463c8a7157475f7a3f03678e8999e65b678cc3
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel8@sha256:8fed5ef9a1f39a55077bb5026c8854d0ee7fc8d8ff5da277ce9c1bfc2ab2474b
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:dcfe5fbc57b9f8520adbff368c8bf29eb491c9c26d1a1737a1722cffea83eb1b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel8@sha256:259e5dab50d36cdbfc117a42325128c4e16f34c048ba64b36d4a89132ddb4c1a
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:596a7272d6de714d7dbc6e00e9e50a2872846c269547465252d953172ef0b009
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:77e4689b2ce7a713e905553e0e42b8e128045f40cb6c6d4ee082f126cbc46b00
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel8@sha256:f3d87a7fa5b5f2818effcac3304bd56eddcdb0db97a18ac0f35a06fc7e223e7d
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:e3ae1cc6012f19631c012a07b113fb015977d2ee4f9faab3207fbc2464c25aa7
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel8@sha256:3af4c48030263eb5769e5f36a6dd13fd390d8566efaab37532f39e1df1c95c67
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:074ebfc4494581611647ba90049655a470ca43743610a27be77db66a8633bac6
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:f4d86b196457cdeebdc380b6f1b707c10f8dee789c7779c90ee1332e511af8c4
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:c7c2e738e0d9da1d2d1993f68938e72c4709b1f28a54fa92224ef6a0e456b0aa
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel8@sha256:a47b6b5237a87ccd90e5a49a53d06485fd55c87eebf12d01c335b87fc3a8c494
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel8@sha256:6b7316cce3432d391adc6ac38c92ff0ee86dd7ae0101957cc65cd338cc69e352
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:ed60e889a677fb139f2eb4bd9ab4fda6ecc39fd050ca2b6cc1c19717e428535a
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:78fee4c596f2848487ca704da3fa1074e3c9c99b3f96f66833aeba63836d7b93
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel8@sha256:88323da16360981f27b8e4686fbbb64053e4e0e3c79c65d695edb317b334e1e0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel8@sha256:a903480159ebf1d8652eeaa702d9885fb76bb106c02d75cec5c82c31d77d6410
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:9b328fff0cc8545fb9bb1f24f11d78cfac3ee76dedc11fa4def4262d79a60e8c
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel8@sha256:d6f338e08fa937c8a4ccfec692424de4acded565f7ca3971ea507dffeb351503
        version: 1.36.1
      entries:
      - name: serverless-operator.v1.36.1
        version: 1.36.1
      - name: serverless-operator.v1.36.0
        version: 1.36.0
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.36
    - currentCSV: serverless-operator.v1.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>1.36.1 <1.37.0'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel9@sha256:591bc064b99356334b7b53c56e2b14538dd8747577127b37fcffadbbd5df4498
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel9@sha256:052fe86c647d1ebedba9dbe1054c3d94fd7b02bb9670837e434549c5a7544e37
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel9@sha256:d9a299304e810eeef13adc7bdac4cad7a6fe80a9e18fa3ce93a2796f0586323b
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel9@sha256:6886795e240a9d602a3f68c910f543b5f4c7874ede3bc3e229182d77d509e294
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel9@sha256:8c4cd89255e0424249cbadc7f77ad0cbee43d7b9fe3cfb67b4ef63ab3fa827f6
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel9@sha256:04d23df5bec13af304cf718e66f65d198a5d1d29e022db536b96c9a7f7817a34
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel9@sha256:abe431c9d7390e6e3032c3ac74532b8162564729be7e5a6bca70c3d2374a3437
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel9@sha256:dffaac938538b6a28306e8d3a444ff6c794d50501dfcfb742c7e99558c71296a
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel9@sha256:50293c7fe9b2bc102e9eb9a57fa97bf6d6ee7c3334866217aa6debf3fb77e7ec
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:f64b1bf7dca0906dfa673ae299a2d965527c1c7a714020d046dad277d329f965
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel9@sha256:43856ee2f87c7ce642b998c48405785a5f940cda17f9f1afbbe626f7f860394c
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel9@sha256:615627148f347917a6214b3e036e201d7d23a119445d8b19dfefdde9647546d6
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel9-operator@sha256:23e10eb061828568dc06cf4d4b3485e8fbd5fe8b711b2424ea954b7e1dd2534f
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel9@sha256:4a7848b64e1bacadf5205de9a0fd64437c8b7dcf86959dc1095e12d873a4610a
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        version: 1.37.0
      entries:
      - name: serverless-operator.v1.37.0
        version: 1.37.0
      - name: serverless-operator.v1.36.1
        version: 1.36.1
      - name: serverless-operator.v1.36.0
        version: 1.36.0
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.37
    defaultChannel: stable
    packageName: serverless-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NeuVector
      provider-url: ""
    name: neuvector-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: neuvector-operator.v1.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apm.neuvector.com/v1alpha1",
                "kind": "Neuvector",
                "metadata": {
                  "name": "neuvector"
                },
                "spec": {
                  "openshift": true,
                  "registry": "docker.io",
                  "tag": "5.4.8",
                  "oem": "",
                  "imagePullSecrets": "",
                  "psp": false,
                  "rbac": true,
                  "serviceAccount": "default",
                  "leastPrivilege": false,
                  "global": {
                    "cattle": {
                      "url": ""
                    },
                    "azure": {
                      "enabled": false,
                      "identity": {
                        "clientId": "DONOTMODIFY"
                      },
                      "marketplace": {
                        "planId": "DONOTMODIFY"
                      },
                      "extension": {
                        "resourceId": "DONOTMODIFY"
                      },
                      "serviceAccount": "csp",
                      "imagePullSecrets": "",
                      "images": {
                        "neuvector_csp_pod": {
                          "tag": "latest",
                          "image": "neuvector-billing-azure-by-suse-llc",
                          "registry": "registry.suse.de/suse/sle-15-sp5/update/pubclouds/images",
                          "imagePullPolicy": "IfNotPresent"
                        },
                        "controller": {
                          "tag": "5.2.4",
                          "image": "controller",
                          "registry": "docker.io/neuvector"
                        },
                        "manager": {
                          "tag": "5.2.4",
                          "image": "manager",
                          "registry": "docker.io/neuvector"
                        },
                        "enforcer": {
                          "tag": "5.2.4",
                          "image": "enforcer",
                          "registry": "docker.io/neuvector"
                        }
                      }
                    },
                    "aws": {
                      "enabled": false,
                      "accountNumber": "",
                      "roleName": "",
                      "serviceAccount": "csp",
                      "annotations": {},
                      "imagePullSecrets": "",
                      "image": {
                        "digest": "",
                        "repository": "neuvector/neuvector-csp-adapter",
                        "tag": "latest",
                        "imagePullPolicy": "IfNotPresent"
                      }
                    }
                  },
                  "bootstrapPassword": "",
                  "autoGenerateCert": true,
                  "defaultValidityPeriod": 365,
                  "internal": {
                    "certmanager": {
                      "enabled": false,
                      "secretname": "neuvector-internal"
                    },
                    "autoGenerateCert": true,
                    "autoRotateCert": true
                  },
                  "controller": {
                    "enabled": true,
                    "annotations": {},
                    "strategy": {
                      "type": "RollingUpdate",
                      "rollingUpdate": {
                        "maxSurge": 1,
                        "maxUnavailable": 0
                      }
                    },
                    "image": {
                      "repository": "neuvector/controller",
                      "imagePullPolicy": "IfNotPresent",
                      "hash": ""
                    },
                    "replicas": 3,
                    "disruptionbudget": 0,
                    "schedulerName": "",
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "searchRegistries": "",
                    "env": [],
                    "affinity": {
                      "podAntiAffinity": {
                        "preferredDuringSchedulingIgnoredDuringExecution": [
                          {
                            "weight": 100,
                            "podAffinityTerm": {
                              "labelSelector": {
                                "matchExpressions": [
                                  {
                                    "key": "app",
                                    "operator": "In",
                                    "values": [
                                      "neuvector-controller-pod"
                                    ]
                                  }
                                ]
                              },
                              "topologyKey": "kubernetes.io/hostname"
                            }
                          }
                        ]
                      }
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "nodeSelector": {},
                    "apisvc": {
                      "ctrlServerPort": 10443,
                      "type": "",
                      "annotations": {},
                      "nodePort": "",
                      "route": {
                        "enabled": false,
                        "termination": "passthrough",
                        "host": "",
                        "tls": ""
                      }
                    },
                    "ranchersso": {
                      "enabled": false
                    },
                    "pvc": {
                      "enabled": false,
                      "existingClaim": false,
                      "accessModes": [
                        "ReadWriteMany"
                      ],
                      "storageClass": "",
                      "capacity": ""
                    },
                    "azureFileShare": {
                      "enabled": false,
                      "secretName": "",
                      "shareName": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "federation": {
                      "mastersvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      },
                      "managedsvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      }
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {
                        "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                      },
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "configmap": {
                      "enabled": false,
                      "data": ""
                    },
                    "secret": {
                      "enabled": false,
                      "data": {
                        "userinitcfg.yaml": {
                          "users": [
                            {
                              "Fullname": "admin",
                              "Password": "",
                              "Role": "admin"
                            }
                          ]
                        }
                      }
                    },
                    "certupgrader": {
                      "env": [],
                      "schedule": "",
                      "imagePullPolicy": "IfNotPresent",
                      "timeout": 3600,
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "prime": {
                      "enabled": false,
                      "image": {
                        "repository": "neuvector/compliance-config",
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "1.0.9",
                        "hash": ""
                      }
                    }
                  },
                  "enforcer": {
                    "enabled": true,
                    "image": {
                      "repository": "neuvector/enforcer",
                      "imagePullPolicy": "IfNotPresent",
                      "hash": ""
                    },
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "env": [],
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/master"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/control-plane"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/etcd"
                      }
                    ],
                    "resources": {},
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "manager": {
                    "enabled": true,
                    "image": {
                      "repository": "neuvector/manager",
                      "imagePullPolicy": "IfNotPresent",
                      "hash": ""
                    },
                    "priorityClassName": "",
                    "env": {
                      "ssl": true,
                      "envs": []
                    },
                    "svc": {
                      "mgrServerPort": 8443,
                      "type": "ClusterIP",
                      "nodePort": "",
                      "loadBalancerIP": "",
                      "annotations": {}
                    },
                    "route": {
                      "enabled": true,
                      "termination": "passthrough",
                      "host": "",
                      "tls": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {},
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "topologySpreadConstraints": [],
                    "affinity": {},
                    "podLabels": {},
                    "podAnnotations": {},
                    "tolerations": [],
                    "nodeSelector": {},
                    "runAsUser": "",
                    "probes": {
                      "enabled": false,
                      "timeout": 1,
                      "periodSeconds": 10,
                      "startupFailureThreshold": 30
                    }
                  },
                  "cve": {
                    "adapter": {
                      "enabled": false,
                      "image": {
                        "repository": "neuvector/registry-adapter",
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "0.2.2",
                        "hash": ""
                      },
                      "priorityClassName": "",
                      "resources": {},
                      "affinity": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "env": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": "",
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt"
                      },
                      "harbor": {
                        "protocol": "https",
                        "secretName": ""
                      },
                      "svc": {
                        "type": "ClusterIP",
                        "loadBalancerIP": "",
                        "annotations": {}
                      },
                      "route": {
                        "enabled": true,
                        "termination": "passthrough",
                        "host": "",
                        "tls": ""
                      },
                      "ingress": {
                        "enabled": false,
                        "host": "",
                        "ingressClassName": "",
                        "path": "/",
                        "annotations": {
                          "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                        },
                        "tls": false,
                        "secretName": ""
                      },
                      "internal": {
                        "certificate": {
                          "secret": "",
                          "keyFile": "tls.key",
                          "pemFile": "tls.crt",
                          "caFile": "ca.crt"
                        }
                      }
                    },
                    "updater": {
                      "enabled": true,
                      "secure": false,
                      "cacert": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                      "image": {
                        "registry": "",
                        "repository": "neuvector/updater",
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "0.0.7",
                        "hash": ""
                      },
                      "schedule": "0 0 * * *",
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "scanner": {
                      "enabled": true,
                      "replicas": 3,
                      "dockerPath": "",
                      "strategy": {
                        "type": "RollingUpdate",
                        "rollingUpdate": {
                          "maxSurge": 1,
                          "maxUnavailable": 0
                        }
                      },
                      "image": {
                        "registry": "",
                        "repository": "neuvector/scanner",
                        "imagePullPolicy": "Always",
                        "tag": "6",
                        "hash": ""
                      },
                      "priorityClassName": "",
                      "resources": {},
                      "topologySpreadConstraints": [],
                      "affinity": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "env": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": "",
                      "internal": {
                        "certificate": {
                          "secret": "",
                          "keyFile": "tls.key",
                          "pemFile": "tls.crt",
                          "caFile": "ca.crt"
                        }
                      },
                      "volumes": "",
                      "volumeMounts": ""
                    }
                  },
                  "resources": {},
                  "runtimePath": "",
                  "docker": {
                    "enabled": false,
                    "path": "/var/run/docker.sock"
                  },
                  "k3s": {
                    "enabled": false,
                    "runtimePath": "/run/k3s/containerd/containerd.sock"
                  },
                  "bottlerocket": {
                    "enabled": false,
                    "runtimePath": "/run/dockershim.sock"
                  },
                  "containerd": {
                    "enabled": false,
                    "path": "/var/run/containerd/containerd.sock"
                  },
                  "crio": {
                    "enabled": true,
                    "path": "/var/run/crio/crio.sock"
                  },
                  "admissionwebhook": {
                    "type": "ClusterIP"
                  },
                  "crdwebhooksvc": {
                    "enabled": true
                  },
                  "crdwebhook": {
                    "enabled": true,
                    "type": "ClusterIP"
                  },
                  "lease": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Networking, Security
          certified: "false"
          containerImage: docker.io/neuvector/neuvector-operator@sha256:2b2ef4fbc567e7ae40c7bbc4f763f1806a8b1c872972c7bdbae9d8c58ba64ce4
          createdAt: "2019-11-18T02:09:59Z"
          description: NeuVector delivers the only cloud-native Kubernetes security
            platform with uncompromising end-to-end protection from DevOps vulnerability
            protection to automated run-time security, and featuring a true Layer
            7 container firewall.
          repository: https://github.com/neuvector/neuvector-operator
          support: support@neuvector.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Full LifeCycle Container Security Platform
            displayName: NeuVector
            kind: Neuvector
            name: neuvectors.apm.neuvector.com
            version: v1alpha1
        description: |+
          NeuVector delivers the only cloud-native Kubernetes security platform with uncompromising end-to-end protection from DevOps vulnerability protection to automated run-time security, and featuring a true Layer 7 container firewall.

          The NeuVector Operator runs  in the openshift container platform to deploy and manage the NeuVector Security cluster components. The NeuVector operator contains all necessary information to deploy NeuVector using helm charts. You simply need to install the NeuVector operator from the OpenShift embeded operator hub and create NeuVector instance. You can modify the NeuVector installation configuration by modifying yaml while creating the NeuVector instance such as imagePullSecrets, tag version, etc. Please refer to [github link](https://github.com/neuvector/neuvector-helm) for the values that can be modifed during installation. To upgrade to a newer version of NeuVector, just reapply the NeuVector instance with desired tag , which in turn pulls the specified NeuVector image tags and upgrades as per upgrade plan configured on the helm chart. NeuVector Operator version 1.5.7 deploys NeuVector app version 5.4.8.

          **Complete below steps to create namespace and Grant Service Account Access to the Privileged SCC before installation.**

          Create the NeuVector namespace

                   oc new-project  neuvector
          Login as system:admin account

                   oc login -u system:admin

          Privileged SCC is added to Service Account specified in the deploment yaml by Operator version 1.3.4 and above in new deployment. In case of upgrading NeuVector Operator from previous version to 1.3.4, please delete Privileged SCC before upgrading.

                   oc delete rolebinding -nneuvector system:openshift:scc:privileged

          The following info will be added in the Privileged SCC users:

                   - system:serviceaccount:neuvector:default

          In OpenShift 4.6+ use the following to check:

                   oc get rolebinding system:openshift:scc:privileged -n neuvector -o wide
                   system:openshift:scc:privileged   ClusterRole/system:openshift:scc:privileged   9m22s  neuvector/default


        displayName: NeuVector Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - wavefront
        - wavefront collector
        - wavefront proxy
        links:
        - name: NeuVector Operator
          url: https://github.com/neuvector/neuvector-operator
        maintainers:
        - email: support@neuvector.com
          name: A Full LifeCycle Container Security Platform
        maturity: beta
        provider:
          name: NeuVector
        relatedImages:
        - quay.io/community-operator-pipeline-prod/neuvector-community-operator@sha256:d8088a7d3ecda8bb08a8313a942cf6140f49cca3610255ab70235a5436cb3ffb
        - docker.io/neuvector/neuvector-operator@sha256:2b2ef4fbc567e7ae40c7bbc4f763f1806a8b1c872972c7bdbae9d8c58ba64ce4
        version: 1.5.7
      entries:
      - name: neuvector-operator.v1.5.7
        version: 1.5.7
      - name: neuvector-operator.v1.5.6
        version: 1.5.6
      - name: neuvector-operator.v1.5.5
        version: 1.5.5
      - name: neuvector-operator.v1.5.4
        version: 1.5.4
      - name: neuvector-operator.v1.5.3
        version: 1.5.3
      - name: neuvector-operator.v1.5.2
        version: 1.5.2
      - name: neuvector-operator.v1.5.1
        version: 1.5.1
      - name: neuvector-operator.v1.5.0
        version: 1.5.0
      - name: neuvector-operator.v1.4.9
        version: 1.4.9
      - name: neuvector-operator.v1.4.8
        version: 1.4.8
      - name: neuvector-operator.v1.4.7
        version: 1.4.7
      - name: neuvector-operator.v1.4.6
        version: 1.4.6
      - name: neuvector-operator.v1.4.5
        version: 1.4.5
      - name: neuvector-operator.v1.4.4
        version: 1.4.4
      - name: neuvector-operator.v1.4.3
        version: 1.4.3
      - name: neuvector-operator.v1.4.2
        version: 1.4.2
      - name: neuvector-operator.v1.4.1
        version: 1.4.1
      - name: neuvector-operator.v1.4.0
        version: 1.4.0
      - name: neuvector-operator.v1.3.9
        version: 1.3.9
      - name: neuvector-operator.v1.3.8
        version: 1.3.8
      - name: neuvector-operator.v1.3.7
        version: 1.3.7
      - name: neuvector-operator.v1.3.6
        version: 1.3.6
      - name: neuvector-operator.v1.3.5
        version: 1.3.5
      - name: neuvector-operator.v1.3.4
        version: 1.3.4
      - name: neuvector-operator.v1.3.3
        version: 1.3.3
      - name: neuvector-operator.v1.3.2
        version: 1.3.2
      - name: neuvector-operator.v1.3.1
        version: 1.3.1
      - name: neuvector-operator.v1.3.0
        version: 1.3.0
      - name: neuvector-operator.v1.2.9
        version: 1.2.9
      name: beta
    defaultChannel: beta
    packageName: neuvector-community-operator
    provider:
      name: NeuVector
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-activemqartemis: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/
    name: amq-broker-rhel9
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-broker-operator.v7.13.3-opr-1-0.1766396094.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          description: AMQ Broker Operator for RHEL 9 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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: "true"
          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.substitutesFor: amq-broker-operator.v7.13.3-opr-1
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - description: Provides internal message migration on clustered broker scaledown
            displayName: ActiveMQ Artemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: |
          **Red Hat AMQ Broker** is a pure-Java multiprotocol message broker. It’s built on an efficient, asynchronous core with a fast journal for message persistence.

          You can provision multiple instances and update the broker configuration on the fly using the associated Custom Resource Definitions.
          In addition, you can use the following CRDs to configure your broker environment:

          - **Address CRD**: define addresses and queues for the brokers in your deployment
          - **Security CRD**: define the security configuration for the brokers in your deployment, including:
              - users and roles
              - role based access control
              - console access control

          ## Selecting a channel
          You can specify the channel used to track and receive updates for the Operator by selecting either to track the minor or patch level versions.

          ## Supported Features
          - **Console** - Allows you view the broker topology, clients and messages. Red Hat Fuse users can integrate the broker console into the Fuse console for OpenShift.
          - **Persistence** - ephemeral and stateful deployments.
          - **Advanced queueing** - Last value queues, message groups, topic hierarchies, and large message support.
          - **Multiprotocol** - AMQP 1.0, MQTT, STOMP, OpenWire, and HornetQ Core.
          - **Address Management** - Creates and manages addresses and queues.
          - **User Management** - Creates and manages broker users.
          - **Monitoring** - Support for monitoring using Prometheus and provided Grafana dashboards.
          - **Scaledown** - Ensure consistency of messages using message migration.

          ## Storage
          An efficient data storage infrastructure is essential to the optimal performance of AMQ Broker.  AMQ Broker supports:
            - **Ephemeral** (Recommended for development only!)
            - **Persistent**
              - For example, block or NFS storage.
          Note: Your cloud provider might provide options that are not suitable for AMQ Broker, for example Amazon Elastic File System.  If in doubt, contact Red Hat Support

          ## Documentation
          Documentation for the current release is available from the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq/2021.q4/#category-amq-broker).
        displayName: Red Hat Integration - AMQ Broker for RHEL 9 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9cc48eecf1442ae04b8543fa5d4381a13bc2831390850828834d387006d1342b
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:755d0f7421efba76f52818bb3a8667cd7d2dcff2c7054dac1a4637b74ecac51d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b2402179b1d0ff9c950defe5d8808195ef9a4c3e13e3c469cae31ab51d5f5014
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ffffa9875f0379e9373f89f05eb06e5a193273bb04bc3aa5f85b044357b79098
        - registry.redhat.io/amq7/amq-broker-rhel9-operator-bundle@sha256:7d3c6e3137aae3a0f612731fb8e2d44fa6c7f708fea2b6382ffee0a4d1f15b3e
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:dd84cb2dfdecd4f5a3fc50a9e167ea6970d1d52d8c7427c201a74a76e151d430
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:bb6fbd68475a7852b4d99eea6c4ab313f9267da7963162f0d75375d7063409e7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:47fd4ce2533496828aba37bd1f9715e2164d5c90bd0fc6b25e7e0786d723bf01
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:dc13871dfed52402c40fd192900fc3cb5a49da4fa08e4ec4d0e23a879e83db25
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:f92b41ededb92e88d439caf1fbeb9322354da4b7a298bb4ae6873871a1e3fcad
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:16253895bc113f395dc6ab5cd511901e43b6ee676369ec80d598a8741c3c9bf4
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:c8ccf2fb03e97fcedc3299ada2f63f47beaa7643df4b201fcb30899f923436b9
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:ff80e0a7accda6825bf834d9aec27f48205dd6329991890dd017b4d21d0da5c8
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b3f83d5f406fd902bd9c6773f14c07649474edc4ca40bbcf75142b316a094247
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:54004a7076fff8787f14e238a7c2dd21884a882097fb474412d96b0138ca9249
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:81a004dc9d33eec151ae38f2767fe264a590710d2c3a60e934d440587f9980c4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:7f9b921d89b6d4d91b365659afff127d99f1455b94b48a10a6a7f4c38dd8b700
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:40920687402fd747ca02d384e63692a5e1db625723a2bf3056a607c92ee8eee1
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:80bca92852d08a7657fb090fe44bfda10baf231c31139a24edec83f542f36232
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d42d713da0ce6806fdc6492b6342586783e6865a82a8647d3c4288439b1751ee
        - registry.redhat.io/amq7/amq-broker-rhel9-operator@sha256:6fb2c32028429d50b8ffb26b63b6f9b055c9c3fedb479dde6f7d8dab9465922b
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:7a9c3e61345a8ab7c6f91701babca4a566beeb959bdd6008ea9b75df79a3b532
        version: 7.13.3-opr-1+0.1766396094.p
      entries:
      - name: amq-broker-operator.v7.13.3-opr-1-0.1766396094.p
        version: 7.13.3-opr-1+0.1766396094.p
      - name: amq-broker-operator.v7.13.3-opr-1-0.1766088994.p
        version: 7.13.3-opr-1+0.1766088994.p
      - name: amq-broker-operator.v7.13.3-opr-1-0.1766088986.p
        version: 7.13.3-opr-1+0.1766088986.p
      - name: amq-broker-operator.v7.13.3-opr-1
        version: 7.13.3-opr-1
      - name: amq-broker-operator.v7.13.2-opr-1
        version: 7.13.2-opr-1
      - name: amq-broker-operator.v7.13.2-opr-1-0.1761129569.p
        version: 7.13.2-opr-1+0.1761129569.p
      - name: amq-broker-operator.v7.13.2-opr-1-0.1761126307.p
        version: 7.13.2-opr-1+0.1761126307.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1754564924.p
        version: 7.13.1-opr-1+0.1754564924.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1758027574.p
        version: 7.13.1-opr-1+0.1758027574.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1758024989.p
        version: 7.13.1-opr-1+0.1758024989.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1756381365.p
        version: 7.13.1-opr-1+0.1756381365.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1756374447.p
        version: 7.13.1-opr-1+0.1756374447.p
      - name: amq-broker-operator.v7.13.1-opr-1
        version: 7.13.1-opr-1
      - name: amq-broker-operator.v7.13.0-opr-1
        version: 7.13.0-opr-1
      - name: amq-broker-operator.v7.13.0-opr-1-0.1747658456.p
        version: 7.13.0-opr-1+0.1747658456.p
      - name: amq-broker-operator.v7.13.0-opr-1-0.1747315188.p
        version: 7.13.0-opr-1+0.1747315188.p
      name: 7.13.x
    defaultChannel: 7.13.x
    packageName: amq-broker-rhel9
    provider:
      name: Red Hat
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Oracle Corporation
      provider-url: https://github.com/oracle/coherence-operator
    name: coherence-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: coherence-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "Coherence",
                "metadata": {
                  "name": "coherence-sample"
                },
                "spec": {
                  "replicas": 3
                }
              },
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "CoherenceJob",
                "metadata": {
                  "name": "coherence-job-sample"
                },
                "spec": {
                  "replicas": 1
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          certified: "false"
          containerImage: container-registry.oracle.com/middleware/coherence-operator@sha256:cbdd72331ef89cc44d13f40ae1cff33a3ca83162e1171a40b04630456432550e
          createdAt: "2025-11-24T17:26:13Z"
          description: The Oracle Coherence Kubernetes Operator enables easy management
            of Coherence clusters in a Kubernetes environment.
          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: "true"
          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"
          operatorframework.io/arch.amd64: supported
          operatorframework.io/arch.arm64: supported
          operatorframework.io/os.linux: supported
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/oracle/coherence-operator
          support: Oracle Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Coherence is the top level schema for the Coherence API and
              custom resource definition (CRD).
            displayName: Coherence
            kind: Coherence
            name: coherence.coherence.oracle.com
            version: v1
          - description: |-
              CoherenceJob is the top level schema for the CoherenceJob API and custom resource definition (CRD)
              for configuring Coherence Job workloads.
            displayName: Coherence Job
            kind: CoherenceJob
            name: coherencejob.coherence.oracle.com
            version: v1
        description: |
          The Oracle Coherence Kubernetes Operator enables easy management of Coherence clusters in a Kubernetes environment.

          ### Installation Guide & Configuration

          For the complete installation guide and all configuration options please refer to
          [Coherence Operator Documentation](https://oracle.github.io/coherence-operator/docs/latest/#/about/01_overview).
        displayName: Coherence Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Coherence
        - Oracle
        - In Memory Data
        - Caching
        links:
        - name: Coherence Kubernetes Operator
          url: https://oracle.github.io/coherence-operator/docs/latest
        - name: Oracle Coherence
          url: https://coherence.community
        maintainers:
        - email: jonathan.knight@oracle.com
          name: Jonathan Knight
        maturity: mature
        minKubeVersion: 1.26.0
        provider:
          name: Oracle Corporation
          url: https://github.com/oracle/coherence-operator
        relatedImages:
        - container-registry.oracle.com/middleware/coherence-operator@sha256:cbdd72331ef89cc44d13f40ae1cff33a3ca83162e1171a40b04630456432550e
        - registry.connect.redhat.com/oracle/coherence-operator-bundle@sha256:5f627eb1e51281dc820c2c3b358e762192ec7a0554997407011c0e7a2c66cbb2
        version: 3.5.7
      entries:
      - name: coherence-operator.v3.5.7
        version: 3.5.7
      name: stable
    defaultChannel: stable
    packageName: coherence-operator
    provider:
      name: Oracle Corporation
      url: https://github.com/oracle/coherence-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-eventbridge-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-eventbridge-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eventbridge.services.k8s.aws/v1alpha1",
                "kind": "Archive",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eventbridge.services.k8s.aws/v1alpha1",
                "kind": "Endpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eventbridge.services.k8s.aws/v1alpha1",
                "kind": "EventBus",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eventbridge.services.k8s.aws/v1alpha1",
                "kind": "Rule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/eventbridge-controller:1.2.0
          createdAt: "2025-11-29T03:54:36Z"
          description: AWS EventBridge controller is a service controller for managing
            EventBridge resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Archive represents the state of an AWS eventbridge Archive
              resource.
            displayName: Archive
            kind: Archive
            name: archives.eventbridge.services.k8s.aws
            version: v1alpha1
          - description: Endpoint represents the state of an AWS eventbridge Endpoint
              resource.
            displayName: Endpoint
            kind: Endpoint
            name: endpoints.eventbridge.services.k8s.aws
            version: v1alpha1
          - description: EventBus represents the state of an AWS eventbridge EventBus
              resource.
            displayName: EventBus
            kind: EventBus
            name: eventbuses.eventbridge.services.k8s.aws
            version: v1alpha1
          - description: Rule represents the state of an AWS eventbridge Rule resource.
            displayName: Rule
            kind: Rule
            name: rules.eventbridge.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EventBridge resources in AWS from within your Kubernetes cluster.

          **About Amazon EventBridge**

          EventBridge is a serverless service that uses events to connect application components together, making it easier for you to build scalable event-driven applications. Use it to route events from sources such as home-grown applications, AWS services, and third- party software to consumer applications across your organization. EventBridge provides a simple and consistent way to ingest, filter, transform, and deliver events so you can build new applications quickly.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EventBridge
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eventbridge
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EventBridge Developer Resources
          url: https://aws.amazon.com/eventbridge/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: eventbridge maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/eventbridge-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-eventbridge-controller@sha256:16dd357be53a6fab81b109557f4e2ae5b47438520881b54c538c2aa68623d61d
        version: 1.2.0
      entries:
      - name: ack-eventbridge-controller.v1.2.0
        version: 1.2.0
      - name: ack-eventbridge-controller.v1.1.2
        version: 1.1.2
      - name: ack-eventbridge-controller.v1.1.1
        version: 1.1.1
      - name: ack-eventbridge-controller.v1.1.0
        version: 1.1.0
      - name: ack-eventbridge-controller.v1.0.28
        version: 1.0.28
      - name: ack-eventbridge-controller.v1.0.27
        version: 1.0.27
      - name: ack-eventbridge-controller.v1.0.26
        version: 1.0.26
      - name: ack-eventbridge-controller.v1.0.25
        version: 1.0.25
      - name: ack-eventbridge-controller.v1.0.24
        version: 1.0.24
      - name: ack-eventbridge-controller.v1.0.23
        version: 1.0.23
      - name: ack-eventbridge-controller.v1.0.22
        version: 1.0.22
      - name: ack-eventbridge-controller.v1.0.21
        version: 1.0.21
      - name: ack-eventbridge-controller.v1.0.20
        version: 1.0.20
      - name: ack-eventbridge-controller.v1.0.18
        version: 1.0.18
      - name: ack-eventbridge-controller.v1.0.17
        version: 1.0.17
      - name: ack-eventbridge-controller.v1.0.16
        version: 1.0.16
      - name: ack-eventbridge-controller.v1.0.15
        version: 1.0.15
      - name: ack-eventbridge-controller.v1.0.14
        version: 1.0.14
      - name: ack-eventbridge-controller.v1.0.13
        version: 1.0.13
      - name: ack-eventbridge-controller.v1.0.12
        version: 1.0.12
      - name: ack-eventbridge-controller.v1.0.11
        version: 1.0.11
      - name: ack-eventbridge-controller.v1.0.6
        version: 1.0.6
      - name: ack-eventbridge-controller.v1.0.5
        version: 1.0.5
      - name: ack-eventbridge-controller.v1.0.4
        version: 1.0.4
      - name: ack-eventbridge-controller.v1.0.3
        version: 1.0.3
      - name: ack-eventbridge-controller.v1.0.1
        version: 1.0.1
      - name: ack-eventbridge-controller.v1.0.0
        version: 1.0.0
      - name: ack-eventbridge-controller.v0.0.7
        version: 0.0.7
      - name: ack-eventbridge-controller.v0.0.6
        version: 0.0.6
      - name: ack-eventbridge-controller.v0.0.5
        version: 0.0.5
      - name: ack-eventbridge-controller.v0.0.4
        version: 0.0.4
      - name: ack-eventbridge-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-eventbridge-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: APIMatic.io
      provider-url: https://www.apimatic.io/
    name: apimatic-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apimatic-kubernetes-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicodegen.apimatic.io/v1beta1",
                "kind": "APIMatic",
                "metadata": {
                  "name": "apimatic-sample"
                },
                "spec": {
                  "licensespec": {
                    "licenseSourceName": "apimaticlicense",
                    "licenseSourceType": "ConfigMap"
                  },
                  "podspec": {
                    "apimaticContainerSpec": {
                      "image": "apimaticio/apimatic-codegen",
                      "imagePullSecret": "apimaticimagesecret"
                    }
                  },
                  "replicas": 3,
                  "servicespec": {
                    "apimaticserviceport": {
                      "nodePort": 32000,
                      "port": 8070
                    },
                    "servicetype": "NodePort"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: docker.io/apimaticio/apimatic-kubernetes-operator:v0.0.1
          createdAt: "2021-08-24 12:00:00"
          description: Generate client SDKs and interactive Documentation for your
            APIs in minutes
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/apimatic/apimatic-kubernetes-operator
          support: APIMatic.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIMatic is the Schema for the apimatics API
            displayName: APIMatic App
            kind: APIMatic
            name: apimatics.apicodegen.apimatic.io
            version: v1beta1
        description: "##About APIMatic \n\n APIMatic is a Developer Experience   platform
          for Web APIs that empowers users to create multi-language SDKs with API
          reference docs, dynamic code samples, assisted authentication and more -
          all auto-generated to provide a comprehensive developer experience beyond
          any API documentation tool.\n\n## Table of contents\n\n* [Introduction](#introduction)\n*
          [Features](#features)\n* [Running the Sample](#running-the-sample)\n  *
          [Prerequisites](#prerequisites)\n  * [Steps for Direct Deployment](#steps-for-direct-deployment)\n
          \ * [Steps for OLM Deployment](#steps-for-olm-deployment)\n* [Technical
          Support](#technical-support)\n* [Copyrights](#copyrights)\n\n## Introduction\n\nAPIMatic
          Operator simplifies the configuration and lifecycle management of the APIMatic
          code and docs generation solution on different Kubernetes distributions
          and OpenShift. The Operator encapsulates key operational knowledge on how
          to configure and upgrade the APIMatic CodeGen application, making it easy
          to get up and running.\n\n\nMore information about the underlying APIMatic
          CodeGen API that is exposed\nby this operator can be found [here](https://apimatic-core-v3-docs.netlify.app/#/http/getting-started/overview-apimatic-core).\n\n##
          Features\n\nAPIMatic Operator provides the following features:\n- Deploys
          the APIMatic CodeGen Web API service within the Kubernetes or OpenShift
          cluster.\n- Exposes the APIMatic CodeGen API external to the cluster, using
          Service type as [NodePort](https://kubernetes.io/docs/concepts/services-networking/service/#nodeport),
          [LoadBalancer](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
          or [ExternalName](https://kubernetes.io/docs/concepts/services-networking/service/#externalname).\n-
          For exposing the service through an ingress resource, create an Ingress
          resource in the namespace of your APIMatic CR and set owned APIMatic service
          created by the operator as a backed service. More information can be found
          [here](https://kubernetes.io/docs/concepts/services-networking/ingress/).\n-
          Manual horizontal scaling of pods.\n  ```sh\n  kubectl scale apm apimatic-sample--replicas=2\n
          \ ```\n\n## Running the Sample \n\n### Prerequisites\n\nPlease contact APIMatic
          at [support@apimatic.io](mailto:support@apimatic.io) to register with the
          APIMatic CodeGen Docker Hub registry and acquire a valid license to run
          the APIMatic CodeGen API.\n\nFurther prerequisites for running the sample
          include:\n\n- [go](https://golang.org/) v1.16.*\n- [git](https://git-scm.com/)\n-
          [make](https://www.gnu.org/software/make/)\n- [Operator SDK](https://sdk.operatorframework.io/docs/overview/)\n-
          A running Kubernetes cluster with [kubectl](https://kubernetes.io/docs/reference/kubectl/overview/)
          on client. For testing purposes, you can use [Minikube](https://minikube.sigs.k8s.io/docs/)
          or [kind](https://kind.sigs.k8s.io/)\n- For checking the service created
          by the APIMatic operator on-prem, you can use [MetalLB](https://metallb.org/)\n\n###
          Steps for Direct Deployment\n\nTo run the sample for checking the APIMatic
          operator:\n\n- Clone the APIMatic repository into your working directory
          using the following command:\n  ```sh\n  git clone https://github.com/apimatic/apimatic-kubernetes-operator.git\n
          \ ```\n- Run `make deploy` to set up the APIMatic operator resources. This
          will deploy the '`apimatic-system`' namespace as well as the CRD and the
          RBAC manifests.\n\n- Create a secret named '`apimaticimagesecret`' to allow
          pulling the APIMatic CodeGen image using the Docker Hub username registered
          with APIMatic. If you have not done so, please contact support@apimatic.io
          for the steps required.\n  ```sh\n  kubectl create secret docker-registry
          apimaticimagesecret --docker-server=https://index.docker.io/v1/ --docker-username=<your-name>
          --docker-password=<your-pword> --docker-email=<your-email>\n  ```\n- Create
          a [configmap](https://kubernetes.io/docs/concepts/configuration/configmap/)
          resource named '`apimaticlicense`' that will serve as the volume storing
          the APIMatic license. An example of this is given below which will create
          the ConfigMap using the *License.lic* file located at */usr/local/apimatic/license/*\n
          \ ```sh\n  kubectl create configmap apimaticlicense --from-file /usr/local/apimatic/license/License.lic\n
          \ ```\n- This will deploy a ConfigMap resource with the following definition:\n
          \ ```sh\n  apiVersion: v1\n  data:\n    License.lic: \\\"<License file contents
          here>\\\"\n  kind: ConfigMap\n  metadata:\n    name: apimaticlicense\n    namespace:
          default\n  ```\n- Now run the sample using the following command:\n  ```sh\n
          \ kubectl apply -f config/samples/apicodegen_v1beta1_apimatic.yaml\n  ```\n-
          You will now see a new [Deployment](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/)
          with replica count of 3 and [Service](https://kubernetes.io/docs/concepts/services-networking/service/)
          of type `NodePort` created, both named ***apimatic-sample***. Accessing
          http://localhost:32000 from your browser (or using curl from within the
          Minikube or Kind cluster, if using that) should now show the APIMatic Titan
          page.\n- You can now use the exposed APIMatic CodeGen API to generate API
          SDKs and Docs using [curl](https://curl.se/), [Postman](https://www.postman.com/)
          or your own custom Web application that consumes the APIMatic CodeGen API
          service.\n\n- Once done, you can remove the APIMatic resources using the
          following command:\n  ```sh\n  make undeploy\n  ```\n\n### Steps for OLM
          Deployment\n\nThe following steps can be used to utilize [Operator LifeCycle
          Manager (OLM)](https://olm.operatorframework.io/docs/) to deploy the operator
          and run the sample. The steps are as follows:\n\n- If not already done so,
          clone the APIMatic repository into your working directory:\n  ```sh\n  git
          clone https://github.com/apimatic/apimatic-kubernetes-operator.git\n  ```
          \n- [Install OLM in your Kubernetes cluster](https://olm.operatorframework.io/docs/getting-started/#installing-olm-in-your-cluster).\n\n-
          Run the following script to install the resources required by OLM to deploy
          the APIMatic operator in the Kubernetes cluster within the `apimatic-system`
          namespace. Information about the different resources required can be found
          using the steps given [here](https://olm.operatorframework.io/docs/tasks/).\n
          \ ```sh\n  kubectl apply -f olm/manifests.yaml\n  ```\n\n- This should spin
          up the `ClusterServiceVersion` of the operator in the `apimatic-system`
          namespace, following which the operator pod will spin up. To ensure the
          that the operator installed successfully, check for the `ClusterServiceVersion`
          and the operator deployment in the namespace it was installed in.\n  ```sh\n
          \ kubectl get csv -n apimatic-system\n  \n  kubectl get deployment -n apimatic-system\n
          \ ```\n\n  - Create a secret named `apimaticimagesecret` to allow pulling
          the APIMatic CodeGen image using the Docker Hub username registered with
          APIMatic. If you have not done so, please contact support@apimatic.io for
          the steps required.\n  ```sh\n  kubectl create secret docker-registry apimaticimagesecret
          --docker-server=https://index.docker.io/v1/ --docker-username=<your-name>
          --docker-password=<your-pword> --docker-email=<your-email>\n  ```\n- Create
          a [configmap](https://kubernetes.io/docs/concepts/configuration/configmap/)
          resource named `apimaticlicense` that will serve as the volume storing the
          APIMatic license. An example of this is given below which will create the
          ConfigMap using the *License.lic* file located at */usr/local/apimatic/license/*\n
          \ ```sh\n  kubectl create configmap apimaticlicense --from-file /usr/local/apimatic/license/License.lic\n
          \ ```\n- This will deploy a ConfigMap resource with the following definition:\n
          \ ```sh\n  apiVersion: v1\n  data:\n    License.lic: \\\"<License file contents
          here>\\\"\n  kind: ConfigMap\n  metadata:\n    name: apimaticlicense\n    namespace:
          default\n  ```\n- Now run the sample using the following command:\n  ```sh\n
          \ kubectl apply -f config/samples/apicodegen_v1beta1_apimatic.yaml\n  ```\n\n-
          You will now see a new [Deployment](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/)
          with replica count of 3 and [Service](https://kubernetes.io/docs/concepts/services-networking/service/)
          of type `NodePort` created, both named ***apimatic-sample***. Accessing
          http://localhost:32000 from your browser (or using curl from within the
          Minikube or Kind cluster, if using that) should now show the APIMatic Titan
          page.\n- You can now use the exposed APIMatic CodeGen API to generate API
          SDKs and Docs using [curl](https://curl.se/), [Postman](https://www.postman.com/)
          or your own custom Web application that consumes the APIMatic CodeGen API
          service.\n- Once done, you can remove the APIMatic operator resources using
          the follow script:\n  ```sh\n  kubectl delete -f olm/manifests.yaml\n  ```\n\n##
          Technical Support\n\n- To request additional features in the future, or
          if you notice any discrepancy regarding this document, please drop an email
          to [support@apimatic.io](mailto:support@apimatic.io).\n\n### Copyrights\n\n&copy;
          2021 APIMatic.io\n"
        displayName: APIMatic Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Rest APIs
        - API SDK Generator
        - API Docs Generator
        - API Developer Portal
        - APIMatic
        - Developer Tools
        links:
        - name: Overview
          url: https://www.apimatic.io/
        - name: Developer Experience Portal
          url: https://www.apimatic.io/developer-experience-portal
        - name: Code-Gen as a Service
          url: https://www.apimatic.io/continuous-code-generation
        - name: API Transformer
          url: https://www.apimatic.io/transformer
        - name: Contact
          url: https://www.apimatic.io/contact
        - name: Documentation
          url: https://docs.apimatic.io/
        - name: Blogs
          url: https://www.apimatic.io/blog/
        maintainers:
        - email: support@apimatic.io
          name: Support
        maturity: alpha
        provider:
          name: APIMatic.io
          url: https://www.apimatic.io/
        relatedImages:
        - quay.io/openshift-community-operators/apimatic-kubernetes-operator@sha256:a5f68205291caa9bb7903180afc974fe86252ba87e671978c8b49e0206976d06
        - docker.io/apimaticio/apimatic-kubernetes-operator:v0.0.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.0.1
      entries:
      - name: apimatic-kubernetes-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: apimatic-kubernetes-operator
    provider:
      name: APIMatic.io
      url: https://www.apimatic.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: ansible-cloud-addons-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aca-operator.v2.5.0-0.1761049779
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Cloud Addons Operator manages everything Automation
          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: "true"
          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.skipRange: '>=2.1.1-0.1645500829 <2.5.1'
          operatorframework.io/suggested-namespace: aap
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy an AAP AWS Billing instance
            displayName: AnsibleAutomationPlatformAwsBilling
            kind: AnsibleAutomationPlatformAwsBilling
            name: ansibleautomationplatformawsbillings.platform.ansible.com
            version: v1alpha1
          - description: Deploy an AAP Azure Billing instance
            displayName: AnsibleAutomationPlatformAzureBilling
            kind: AnsibleAutomationPlatformAzureBilling
            name: ansibleautomationplatformazurebillings.platform.ansible.com
            version: v1alpha1
          - description: Deploy an AAP Metrics instance
            displayName: AnsibleAutomationPlatformMetrics
            kind: AnsibleAutomationPlatformMetrics
            name: ansibleautomationplatformmetrics.platform.ansible.com
            version: v1alpha1
          - description: Deploy an AAP UI instance
            displayName: AutomationPlatform
            kind: AutomationPlatform
            name: automationplatforms.platform.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Cloud Addons is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Cloud Addons Operator provides for push-button deployments of Cloud Add-ons into your OpenShift environment. Ansible Cloud Addons deployments include:
            * Cloud Billing - Cloud billing connector for Ansible Automation Platform
            * Cloud UI - Unified welcome page UI for Ansible Automation Platform

          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Cloud Addons operator by following instructions presented when you click the Install button.
        displayName: Ansible Cloud Addons
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-platform
        - ansible-automation-platform
        - aap
        - cloud
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform/cloud-addons-operator-bundle@sha256:dc5e1a714748b7310815fbf177d8d6dbece65d2e50317c92118559c0b5412cd5
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-billing-rhel8-operator@sha256:42d72b27e80757639d48718efec330725a22523aed2b39ec2c979f98ca3af2d3
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-billing-rhel8@sha256:eb7d09283ce86258e1ad2322ffeea00e524557aae1d0edeb5719fe86623ee518
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-metrics-collector-rhel8@sha256:cb739c11db66098a6df8bfe1e1c9d4f9fc7fe6f7e0323fc25c07e24da4a0f9dc
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-ui-rhel8-operator@sha256:bf081586cf195425d2e6cc1e911aca46b4a81bcf941df809880fc070584a11de
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-ui-rhel8@sha256:be4516bad34a4ce25fc615fc0d8ba72c9628d6cbb44bbe8a1e67c9b12a920275
        version: 2.5.0+0.1761049779
      entries:
      - name: aca-operator.v2.5.0-0.1727240231
        version: 2.5.0+0.1727240231
      - name: aca-operator.v2.5.0-0.1727874815
        version: 2.5.0+0.1727874815
      - name: aca-operator.v2.5.0-0.1728516369
        version: 2.5.0+0.1728516369
      - name: aca-operator.v2.5.0-0.1729737962
        version: 2.5.0+0.1729737962
      - name: aca-operator.v2.5.0-0.1731452082
        version: 2.5.0+0.1731452082
      - name: aca-operator.v2.5.0-0.1733188778
        version: 2.5.0+0.1733188778
      - name: aca-operator.v2.5.0-0.1733964232
        version: 2.5.0+0.1733964232
      - name: aca-operator.v2.5.0-0.1736892777
        version: 2.5.0+0.1736892777
      - name: aca-operator.v2.5.0-0.1737095650
        version: 2.5.0+0.1737095650
      - name: aca-operator.v2.5.0-0.1737671171
        version: 2.5.0+0.1737671171
      - name: aca-operator.v2.5.0-0.1739244024
        version: 2.5.0+0.1739244024
      - name: aca-operator.v2.5.0-0.1740088272
        version: 2.5.0+0.1740088272
      - name: aca-operator.v2.5.0-0.1740769078
        version: 2.5.0+0.1740769078
      - name: aca-operator.v2.5.0-0.1741367998
        version: 2.5.0+0.1741367998
      - name: aca-operator.v2.5.0-0.1742427652
        version: 2.5.0+0.1742427652
      - name: aca-operator.v2.5.0-0.1743655743
        version: 2.5.0+0.1743655743
      - name: aca-operator.v2.5.0-0.1746134365
        version: 2.5.0+0.1746134365
      - name: aca-operator.v2.5.0-0.1747339736
        version: 2.5.0+0.1747339736
      - name: aca-operator.v2.5.0-0.1749072064
        version: 2.5.0+0.1749072064
      - name: aca-operator.v2.5.0-0.1750895274
        version: 2.5.0+0.1750895274
      - name: aca-operator.v2.5.0-0.1753899647
        version: 2.5.0+0.1753899647
      - name: aca-operator.v2.5.0-0.1755834478
        version: 2.5.0+0.1755834478
      - name: aca-operator.v2.5.0-0.1758143647
        version: 2.5.0+0.1758143647
      - name: aca-operator.v2.5.0-0.1761049779
        version: 2.5.0+0.1761049779
      name: stable-2.5-cluster-scoped
    defaultChannel: stable-2.5-cluster-scoped
    packageName: ansible-cloud-addons-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhbk-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhbk-operator.v22.0.13-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": "example.org",
                  "tlsSecret": "my-tls-secret"
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:21e808c676cf3e231f0d5592a48ec668c069ba00cbc7c5aaac08f61d52323ad8
          createdAt: "2024-09-17T11:20:22Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:21e808c676cf3e231f0d5592a48ec668c069ba00cbc7c5aaac08f61d52323ad8
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:884afe0ca1698d85a02aa47b6d60b8222e50d70ad280db6f98e1a4bbdbe13c40
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:c342da2a8183de278abebf98ef23332ce382544233a8b1128bf1ff74126e9c14
        version: 22.0.13-opr.1
      entries:
      - name: rhbk-operator.v22.0.13-opr.1
        version: 22.0.13-opr.1
      - name: rhbk-operator.v22.0.12-opr.1
        version: 22.0.12-opr.1
      - name: rhbk-operator.v22.0.11-opr.2
        version: 22.0.11-opr.2
      - name: rhbk-operator.v22.0.11-opr.1
        version: 22.0.11-opr.1
      - name: rhbk-operator.v22.0.10-opr.1
        version: 22.0.10-opr.1
      - name: rhbk-operator.v22.0.9-opr.1
        version: 22.0.9-opr.1
      - name: rhbk-operator.v22.0.8-opr.2
        version: 22.0.8-opr.2
      - name: rhbk-operator.v22.0.8-opr.1
        version: 22.0.8-opr.1
      - name: rhbk-operator.v22.0.7-opr.1
        version: 22.0.7-opr.1
      - name: rhbk-operator.v22.0.6-opr.1
        version: 22.0.6-opr.1
      name: stable-v22
    - currentCSV: rhbk-operator.v22.0.13-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": "example.org",
                  "tlsSecret": "my-tls-secret"
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:21e808c676cf3e231f0d5592a48ec668c069ba00cbc7c5aaac08f61d52323ad8
          createdAt: "2024-09-17T11:20:22Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:c342da2a8183de278abebf98ef23332ce382544233a8b1128bf1ff74126e9c14
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:21e808c676cf3e231f0d5592a48ec668c069ba00cbc7c5aaac08f61d52323ad8
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:884afe0ca1698d85a02aa47b6d60b8222e50d70ad280db6f98e1a4bbdbe13c40
        version: 22.0.13-opr.1
      entries:
      - name: rhbk-operator.v22.0.13-opr.1
        version: 22.0.13-opr.1
      - name: rhbk-operator.v22.0.12-opr.1
        version: 22.0.12-opr.1
      - name: rhbk-operator.v22.0.11-opr.2
        version: 22.0.11-opr.2
      - name: rhbk-operator.v22.0.11-opr.1
        version: 22.0.11-opr.1
      - name: rhbk-operator.v22.0.10-opr.1
        version: 22.0.10-opr.1
      - name: rhbk-operator.v22.0.9-opr.1
        version: 22.0.9-opr.1
      - name: rhbk-operator.v22.0.8-opr.2
        version: 22.0.8-opr.2
      - name: rhbk-operator.v22.0.8-opr.1
        version: 22.0.8-opr.1
      - name: rhbk-operator.v22.0.7-opr.1
        version: 22.0.7-opr.1
      - name: rhbk-operator.v22.0.6-opr.1
        version: 22.0.6-opr.1
      name: stable-v22.0
    - currentCSV: rhbk-operator.v24.0.11-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ee815bf36c438e81b9553f0359a7725f0b3f633a5143f04cc822ea865940801a
          createdAt: "2025-03-26T02:27:51Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ee815bf36c438e81b9553f0359a7725f0b3f633a5143f04cc822ea865940801a
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:d339ecf788d1681ba9945a2ea63ca675caec863ec75f497ef916103f4c898003
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:df74d1b1479c6cf371e45b4775bc6c905a9855cf182fb6ff8a752c6e846f55a6
        version: 24.0.11-opr.1
      entries:
      - name: rhbk-operator.v24.0.11-opr.1
        version: 24.0.11-opr.1
      - name: rhbk-operator.v24.0.10-opr.1
        version: 24.0.10-opr.1
      - name: rhbk-operator.v24.0.9-opr.1
        version: 24.0.9-opr.1
      - name: rhbk-operator.v24.0.8-opr.1
        version: 24.0.8-opr.1
      - name: rhbk-operator.v24.0.7-opr.1
        version: 24.0.7-opr.1
      - name: rhbk-operator.v24.0.6-opr.1
        version: 24.0.6-opr.1
      - name: rhbk-operator.v24.0.5-opr.1
        version: 24.0.5-opr.1
      - name: rhbk-operator.v24.0.4-opr.1
        version: 24.0.4-opr.1
      - name: rhbk-operator.v24.0.3-opr.1
        version: 24.0.3-opr.1
      name: stable-v24
    - currentCSV: rhbk-operator.v24.0.11-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ee815bf36c438e81b9553f0359a7725f0b3f633a5143f04cc822ea865940801a
          createdAt: "2025-03-26T02:27:51Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:df74d1b1479c6cf371e45b4775bc6c905a9855cf182fb6ff8a752c6e846f55a6
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ee815bf36c438e81b9553f0359a7725f0b3f633a5143f04cc822ea865940801a
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:d339ecf788d1681ba9945a2ea63ca675caec863ec75f497ef916103f4c898003
        version: 24.0.11-opr.1
      entries:
      - name: rhbk-operator.v24.0.11-opr.1
        version: 24.0.11-opr.1
      - name: rhbk-operator.v24.0.10-opr.1
        version: 24.0.10-opr.1
      - name: rhbk-operator.v24.0.9-opr.1
        version: 24.0.9-opr.1
      - name: rhbk-operator.v24.0.8-opr.1
        version: 24.0.8-opr.1
      - name: rhbk-operator.v24.0.7-opr.1
        version: 24.0.7-opr.1
      - name: rhbk-operator.v24.0.6-opr.1
        version: 24.0.6-opr.1
      - name: rhbk-operator.v24.0.5-opr.1
        version: 24.0.5-opr.1
      - name: rhbk-operator.v24.0.4-opr.1
        version: 24.0.4-opr.1
      - name: rhbk-operator.v24.0.3-opr.1
        version: 24.0.3-opr.1
      name: stable-v24.0
    - currentCSV: rhbk-operator.v26.4.7-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:8a65029e243ec354f69d71391b9567afd3664e0ce7c8ffd566dcf0cdda1805c9
          createdAt: "2025-12-05T15:23:54Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Red Hat build of Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: batch
          kind: Job
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: networking.k8s.io
          kind: NetworkPolicy
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:550e4bd289be652779bae87764c208ec57636e2eb17fdba928aaaacc450e8112
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:8a65029e243ec354f69d71391b9567afd3664e0ce7c8ffd566dcf0cdda1805c9
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:eaddec56b89ad4a9ad0bf4350e91dc0951f18192e02a5d95be36865a17c83002
        version: 26.4.7-opr.1
      entries:
      - name: rhbk-operator.v26.4.7-opr.1
        version: 26.4.7-opr.1
      - name: rhbk-operator.v26.4.6-opr.1
        version: 26.4.6-opr.1
      - name: rhbk-operator.v26.4.5-opr.1
        version: 26.4.5-opr.1
      - name: rhbk-operator.v26.4.4-opr.1
        version: 26.4.4-opr.1
      - name: rhbk-operator.v26.4.2-opr.1
        version: 26.4.2-opr.1
      - name: rhbk-operator.v26.2.12-opr.1
        version: 26.2.12-opr.1
      - name: rhbk-operator.v26.2.11-opr.1
        version: 26.2.11-opr.1
      - name: rhbk-operator.v26.2.10-opr.1
        version: 26.2.10-opr.1
      - name: rhbk-operator.v26.2.9-opr.1
        version: 26.2.9-opr.1
      - name: rhbk-operator.v26.2.8-opr.1
        version: 26.2.8-opr.1
      - name: rhbk-operator.v26.2.7-opr.1
        version: 26.2.7-opr.1
      - name: rhbk-operator.v26.2.6-opr.1
        version: 26.2.6-opr.1
      - name: rhbk-operator.v26.2.5-opr.1
        version: 26.2.5-opr.1
      - name: rhbk-operator.v26.2.4-opr.2
        version: 26.2.4-opr.2
      - name: rhbk-operator.v26.2.4-opr.1
        version: 26.2.4-opr.1
      - name: rhbk-operator.v26.0.17-opr.1
        version: 26.0.17-opr.1
      - name: rhbk-operator.v26.0.16-opr.1
        version: 26.0.16-opr.1
      - name: rhbk-operator.v26.0.15-opr.1
        version: 26.0.15-opr.1
      - name: rhbk-operator.v26.0.14-opr.1
        version: 26.0.14-opr.1
      - name: rhbk-operator.v26.0.13-opr.1
        version: 26.0.13-opr.1
      - name: rhbk-operator.v26.0.12-opr.1
        version: 26.0.12-opr.1
      - name: rhbk-operator.v26.0.11-opr.1
        version: 26.0.11-opr.1
      - name: rhbk-operator.v26.0.10-opr.1
        version: 26.0.10-opr.1
      - name: rhbk-operator.v26.0.9-opr.1
        version: 26.0.9-opr.1
      - name: rhbk-operator.v26.0.8-opr.1
        version: 26.0.8-opr.1
      - name: rhbk-operator.v26.0.7-opr.1
        version: 26.0.7-opr.1
      - name: rhbk-operator.v26.0.6-opr.1
        version: 26.0.6-opr.1
      - name: rhbk-operator.v26.0.5-opr.1
        version: 26.0.5-opr.1
      name: stable-v26
    - currentCSV: rhbk-operator.v26.0.17-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:9c8b7f9690808a17426a066a840055422a53585ed03beeb8e5adfd678abbc37d
          createdAt: "2025-11-05T03:02:05Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Red Hat build of Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:9c8b7f9690808a17426a066a840055422a53585ed03beeb8e5adfd678abbc37d
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:8c5c8c530c63bf9eaf4909b9e6b7d234a0ff266f31030b60869c4af1b2167b73
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:1696b6f86abea123341f703981c26d79365c8a0c046d7add6970fb7b1848ace2
        version: 26.0.17-opr.1
      entries:
      - name: rhbk-operator.v26.0.17-opr.1
        version: 26.0.17-opr.1
      - name: rhbk-operator.v26.0.16-opr.1
        version: 26.0.16-opr.1
      - name: rhbk-operator.v26.0.15-opr.1
        version: 26.0.15-opr.1
      - name: rhbk-operator.v26.0.14-opr.1
        version: 26.0.14-opr.1
      - name: rhbk-operator.v26.0.13-opr.1
        version: 26.0.13-opr.1
      - name: rhbk-operator.v26.0.12-opr.1
        version: 26.0.12-opr.1
      - name: rhbk-operator.v26.0.11-opr.1
        version: 26.0.11-opr.1
      - name: rhbk-operator.v26.0.10-opr.1
        version: 26.0.10-opr.1
      - name: rhbk-operator.v26.0.9-opr.1
        version: 26.0.9-opr.1
      - name: rhbk-operator.v26.0.8-opr.1
        version: 26.0.8-opr.1
      - name: rhbk-operator.v26.0.7-opr.1
        version: 26.0.7-opr.1
      - name: rhbk-operator.v26.0.6-opr.1
        version: 26.0.6-opr.1
      - name: rhbk-operator.v26.0.5-opr.1
        version: 26.0.5-opr.1
      name: stable-v26.0
    - currentCSV: rhbk-operator.v26.2.12-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ced1c761aa580d1c1a188064d0ae5ab9b4f717c0429df5a6d5e32ad2182f16a5
          createdAt: "2025-12-02T16:40:11Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Red Hat build of Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: batch
          kind: Job
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: networking.k8s.io
          kind: NetworkPolicy
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:905406a14759d960b41f56dbb30170961fafc7b59421efb6c2bba5c6f91a9f39
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ced1c761aa580d1c1a188064d0ae5ab9b4f717c0429df5a6d5e32ad2182f16a5
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:293e3169bad9ed1739b0750d13a7e4572594c2f5eb2eca6cea04b588ed06029e
        version: 26.2.12-opr.1
      entries:
      - name: rhbk-operator.v26.2.12-opr.1
        version: 26.2.12-opr.1
      - name: rhbk-operator.v26.2.11-opr.1
        version: 26.2.11-opr.1
      - name: rhbk-operator.v26.2.10-opr.1
        version: 26.2.10-opr.1
      - name: rhbk-operator.v26.2.9-opr.1
        version: 26.2.9-opr.1
      - name: rhbk-operator.v26.2.8-opr.1
        version: 26.2.8-opr.1
      - name: rhbk-operator.v26.2.7-opr.1
        version: 26.2.7-opr.1
      - name: rhbk-operator.v26.2.6-opr.1
        version: 26.2.6-opr.1
      - name: rhbk-operator.v26.2.5-opr.1
        version: 26.2.5-opr.1
      - name: rhbk-operator.v26.2.4-opr.2
        version: 26.2.4-opr.2
      - name: rhbk-operator.v26.2.4-opr.1
        version: 26.2.4-opr.1
      name: stable-v26.2
    - currentCSV: rhbk-operator.v26.4.7-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:8a65029e243ec354f69d71391b9567afd3664e0ce7c8ffd566dcf0cdda1805c9
          createdAt: "2025-12-05T15:23:54Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Red Hat build of Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: batch
          kind: Job
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: networking.k8s.io
          kind: NetworkPolicy
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:550e4bd289be652779bae87764c208ec57636e2eb17fdba928aaaacc450e8112
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:8a65029e243ec354f69d71391b9567afd3664e0ce7c8ffd566dcf0cdda1805c9
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:eaddec56b89ad4a9ad0bf4350e91dc0951f18192e02a5d95be36865a17c83002
        version: 26.4.7-opr.1
      entries:
      - name: rhbk-operator.v26.4.7-opr.1
        version: 26.4.7-opr.1
      - name: rhbk-operator.v26.4.6-opr.1
        version: 26.4.6-opr.1
      - name: rhbk-operator.v26.4.5-opr.1
        version: 26.4.5-opr.1
      - name: rhbk-operator.v26.4.4-opr.1
        version: 26.4.4-opr.1
      - name: rhbk-operator.v26.4.2-opr.1
        version: 26.4.2-opr.1
      name: stable-v26.4
    defaultChannel: stable-v26.4
    packageName: rhbk-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-dependencies
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-dependencies.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          createdAt: "2025-12-18T07:58:16Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          olm.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          deploys dependencies.
        displayName: Data Foundation Dependencies
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-dependencies-operator-bundle@sha256:7d89cc28cd82e5f4fe0c675d111ee4b795e417e1d16ec10aebaa5529d5cedd38
        version: 4.19.9-rhodf
      entries:
      - name: odf-dependencies.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-dependencies.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-dependencies.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-dependencies.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-dependencies.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-dependencies.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-dependencies.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-dependencies.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-dependencies.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-dependencies.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-dependencies.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          createdAt: "2025-12-18T07:45:08Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          deploys dependencies.
        displayName: Data Foundation Dependencies
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-dependencies-operator-bundle@sha256:55a7e1e729f476187b550f2ceae203ab579418157fa95657ffcbcb70f258c324
        version: 4.20.4-rhodf
      entries:
      - name: odf-dependencies.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-dependencies.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-dependencies.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-dependencies.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-dependencies.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-dependencies
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: mtr-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mtr-operator.1.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
             {
               "apiVersion": "windup.jboss.org/v1",
               "kind": "Windup",
               "metadata": {
                 "namespace": "mtr",
                 "name": "mtr",
                 "labels": {
                   "application": "windup"
                 }
               },
               "spec": {}
             }
            ]
          capabilities: Basic Install
          categories: Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mtr/mtr-rhel8-operator@sha256:4df7c4ad353339e8b958ffc651e811667767c8a0dcdd61f89352c926da52a513
          createdAt: "2024-09-03T17:22:23Z"
          description: Migration Toolkit for Runtimes is an analysis tool that supports
            the modernization and migration of Java applications.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          imagePullPolicy: Always
          operatorframework.io/suggested-namespace: mtr
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/windup/windup-operator/
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: "Create an MTR Web Console application.  \n\nTo access the
              MTR Web Console application from the \"Developer\" perspective, please
              go to Topology and click on the \"Open URL\" icon on the web-console
              pod.  \n\nAlternatively from the \"Administrator\" perspective, please
              go to Networking->Routes and click on the Location hyperlink.  \n\nIn
              order to connect with default login credentials, please use \"migration\"
              as username and \"password\" as password.  \n\nKnown issue  \nIf you
              want to customize the MTR Web Console instance's parameters and you
              can not see any in the `Form view`, please switch to the `YAML view`
              and change them as needed.\n"
            displayName: Migration Toolkit for Runtimes
            kind: Windup
            name: windups.windup.jboss.org
            version: v1
        description: "The Migration Toolkit for Runtimes (MTR) is a web console application
          that supports large-scale Java application modernization and migration projects
          across a broad range of transformations and use cases.  \n\nIt analyzes
          application code, supports effort estimation, accelerates code migration,
          and enables users to move applications to containers.  \n\nFor more information
          please refer to the [https://developers.redhat.com/products/mtr/overview](https://developers.redhat.com/products/mtr/overview)
          page.\n"
        displayName: Migration Toolkit for Runtimes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - monitoring
        - security
        - alerting
        - metric
        - troubleshooting
        - run-time
        - migration
        - modernization
        links:
        - name: Website
          url: https://developers.redhat.com/products/mtr/overview
        - name: GitHub
          url: https://github.com/windup/windup-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_runtimes
        maintainers:
        - email: migrate@redhat.com
          name: Migration Toolkit for Runtimes
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mtr/mtr-rhel8-operator@sha256:4df7c4ad353339e8b958ffc651e811667767c8a0dcdd61f89352c926da52a513
        - registry.redhat.io/mtr/mtr-web-container-rhel8@sha256:cb88a5453b506ca70563537ec6db2f44ff8cb4050c9652ec86eb5128aa313003
        - registry.redhat.io/mtr/mtr-web-executor-container-rhel8@sha256:2f0622774367f33efc321926196681322ab1535144e6a0785608c8050fc59f2e
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/mtr/mtr-operator-bundle@sha256:190a6fa2a6a9b6b182cdf9cab18814d05c203b54ca18dc533e553fa5dcca779e
        version: 1.2.7
      entries:
      - name: mtr-operator.1.2.7
        version: 1.2.7
      - name: mtr-operator.1.2.6
        version: 1.2.6
      - name: mtr-operator.1.2.5
        version: 1.2.5
      - name: mtr-operator.1.2.4
        version: 1.2.4
      - name: mtr-operator.1.2.3
        version: 1.2.3
      - name: mtr-operator.1.2.2
        version: 1.2.2
      - name: mtr-operator.1.2.1
        version: 1.2.1
      - name: mtr-operator.1.2.0
        version: 1.2.0
      - name: mtr-operator.1.1.1
        version: 1.1.1
      - name: mtr-operator.1.1.0
        version: 1.1.0
      - name: mtr-operator.1.0.3
        version: 1.0.3
      - name: mtr-operator.1.0.2
        version: 1.0.2
      - name: mtr-operator.1.0.1
        version: 1.0.1
      - name: mtr-operator.1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: mtr-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NooBaa
      provider-url: ""
    name: mcg-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mcg-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[{"kind":"NooBaa","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"noobaa","creationTimestamp":null},"spec":{"cleanupPolicy":{},"security":{"kms":{}},"loadBalancerSourceSubnets":{},"autoscaler":{},"bucketLogging":{},"bucketNotifications":{"enabled":false}},"status":{"lastKeyRotateTime":null}},{"kind":"BackingStore","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"type":""},"status":{"mode":{}}},{"kind":"NamespaceStore","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"type":""},"status":{"mode":{}}},{"kind":"BucketClass","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{},"status":{}},{"kind":"NooBaaAccount","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"allow_bucket_creation":false},"status":{}}]'
          capabilities: Seamless Upgrades
          categories: Storage,Big Data
          certified: "false"
          containerImage: registry.redhat.io/odf4/mcg-rhel9-operator@sha256:1b5bb3031e350b8bd96029fc46beb17f7f7100f829555cf4017b2cd7a2fcd67f
          createdAt: "2019-07-08T13:10:20.940Z"
          description: NooBaa is an object data service for hybrid and multi cloud
            environments.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/infrastructure-features: ֿ'["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/noobaa/noobaa-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A NooBaa system - Create this to start
            displayName: NooBaa
            kind: NooBaa
            name: noobaas.noobaa.io
            version: v1alpha1
          - description: Storage target spec such as aws-s3, s3-compatible, ibm-cos,
              PV's and more. Used in BucketClass to construct data placement policies.
            displayName: Backing Store
            kind: BackingStore
            name: backingstores.noobaa.io
            version: v1alpha1
          - description: Storage target spec such as aws-s3, s3-compatible, ibm-cos
              and more. Used in BucketClass to construct namespace policies.
            displayName: Namespace Store
            kind: NamespaceStore
            name: namespacestores.noobaa.io
            version: v1alpha1
          - description: Storage policy spec  tiering, mirroring, spreading, namespace
              policy. Combines BackingStores Or NamespaceStores. Referenced by ObjectBucketClaims.
            displayName: Bucket Class
            kind: BucketClass
            name: bucketclasses.noobaa.io
            version: v1alpha1
          - kind: NooBaaAccount
            name: noobaaaccounts.noobaa.io
            version: v1alpha1
          - description: Claim a bucket just like claiming a PV. Automate you app
              bucket provisioning by creating OBC with your app deployment. A secret
              and configmap (name=claim) will be created with access details for the
              app pods.
            displayName: Object Bucket Claim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
          - description: Used under-the-hood. Created per ObjectBucketClaim and keeps
              provisioning information.
            displayName: Object Bucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Backup
            kind: Backup
            name: backups.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ClusterImageCatalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Database
            kind: Database
            name: databases.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: FailoverQuorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ImageCatalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Publication
            kind: Publication
            name: publications.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ScheduledBackup
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.noobaa.io
            version: v1
        description: "The noobaa operator creates and reconciles a NooBaa system in
          a Kubernetes/Openshift cluster.\n\nNooBaa provides an S3 object-store service
          abstraction and data placement policies to create hybrid and multi cloud
          data solutions.\n\nFor more information on using NooBaa refer to [Github](https://github.com/noobaa/noobaa-core)
          / [Website](https://www.noobaa.io) / [Articles](https://noobaa.desk.com).
          \n\n## How does it work?\n\n- The operator deploys the noobaa core pod and
          two services - Mgmt (UI/API) and S3 (object-store).\n- Both services require
          credentials which you will get from a secret that the operator creates -
          use describe noobaa to locate it.\n- The service addresses will also appear
          in the describe output - pick the one that is suitable for your client:\n
          \   - minikube - use the NodePort address.\n    - remote cluster - probably
          need one of the External addresses.\n    - connect an application on the
          same cluster - use Internal DNS (though any address should work)\n    \n-
          Feel free to email us or open github issues on any question.\n\n## Getting
          Started\n\n### Notes:\n- The following instructions are for **minikube**
          but it works on any Kubernetes/Openshift clusters.\n- This will setup noobaa
          in the **my-noobaa-operator** namespace.\n- You will need **jq**, **curl**,
          **kubectl** or **oc**, **aws-cli**.\n\n### 1. Install OLM (if you don't
          have it already):\n```\ncurl -sL https://github.com/operator-framework/operator-lifecycle-manager/releases/download/0.12.0/install.sh
          | bash -s 0.12.0\n```\n\n### 2. Install noobaa-operator:\n```\nkubectl create
          -f https://operatorhub.io/install/noobaa-operator.yaml\n```\nWait for it
          to be ready:\n```\nkubectl wait pod -n my-noobaa-operator -l noobaa-operator
          --for=condition=ready\n```\n\n### 3. Create noobaa system:\n```\ncurl -sL
          https://operatorhub.io/api/operator?packageName=noobaa-operator | \n    jq
          '.operator.customResourceDefinitions[0].yamlExample | .metadata.namespace=\"my-noobaa-operator\"'
          |\n    kubectl create -f -\n```\nWait for it to be ready:\n```\nkubectl
          wait pod -n my-noobaa-operator -l noobaa-core --for=condition=ready\nkubectl
          get noobaa -n my-noobaa-operator -w\n# NAME     PHASE   MGMT-ENDPOINTS                  S3-ENDPOINTS
          \                   IMAGE                    AGE\n# noobaa   **Ready**   [https://192.168.64.12:31121]
          \  [https://192.168.64.12:32557]   noobaa/noobaa-core:4.0   19m\n```\n\n###
          4. Get system information to your shell:\n```\nNOOBAA_SECRET=$(kubectl get
          noobaa noobaa -n my-noobaa-operator -o json | jq -r '.status.accounts.admin.secretRef.name'
          )\nNOOBAA_MGMT=$(kubectl get noobaa noobaa -n my-noobaa-operator -o json
          | jq -r '.status.services.serviceMgmt.nodePorts[0]' )\nNOOBAA_S3=$(kubectl
          get noobaa noobaa -n my-noobaa-operator -o json | jq -r '.status.services.serviceS3.nodePorts[0]'
          )\nNOOBAA_ACCESS_KEY=$(kubectl get secret $NOOBAA_SECRET -n my-noobaa-operator
          -o json | jq -r '.data.AWS_ACCESS_KEY_ID|@base64d')\nNOOBAA_SECRET_KEY=$(kubectl
          get secret $NOOBAA_SECRET -n my-noobaa-operator -o json | jq -r '.data.AWS_SECRET_ACCESS_KEY|@base64d')\n```\n\n###
          5. Connect to Mgmt UI:\n```\n# show email/password from the secret:\nkubectl
          get secret $NOOBAA_SECRET -n my-noobaa-operator -o json | jq '.data|map_values(@base64d)'\n\n#
          open mgmt UI login:\nopen $NOOBAA_MGMT\n```\n\n### 6. Connect to S3 with
          aws-cli:\n```\nalias s3='AWS_ACCESS_KEY_ID=$NOOBAA_ACCESS_KEY AWS_SECRET_ACCESS_KEY=$NOOBAA_SECRET_KEY
          aws --endpoint $NOOBAA_S3 --no-verify-ssl s3'\ns3 ls\ns3 sync /var/log/
          s3://first.bucket\ns3 ls s3://first.bucket\n```\n"
        displayName: NooBaa Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - noobaa
        - kubernetes
        - openshift
        - cloud
        - hybrid
        - multi
        - data
        - storage
        - s3
        - tiering
        - mirroring
        links:
        - name: Github
          url: https://github.com/noobaa/noobaa-core
        - name: Website
          url: https://www.noobaa.io
        - name: Articles
          url: https://noobaa.desk.com
        maintainers:
        - email: gmargali@redhat.com
          name: Guy Margalit
        - email: etamir@redhat.com
          name: Eran Tamir
        - email: nbecker@redhat.com
          name: Nimrod Becker
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: NooBaa
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/mcg-operator-bundle@sha256:d93a51ca539c50ee69799913548d4e09c930fcef902dac542def357fac2d8afa
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:ac173cc6724b867a5cd2cec68cb3bab81a431ea11fdbb23810426dff5e531b03
        - registry.redhat.io/odf4/mcg-rhel9-operator@sha256:1b5bb3031e350b8bd96029fc46beb17f7f7100f829555cf4017b2cd7a2fcd67f
        - registry.redhat.io/odf4/odf-cloudnative-pg-rhel9-operator@sha256:3436b32c7d5edb418aa36d048193bb92ba0e5899914d04295e5dfbfc7f267db5
        - registry.redhat.io/odf4/odf-cosi-sidecar-rhel9@sha256:da477c2268fbeb1985538cada189981694589bd6f0c653976ab67a6623d8a8aa
        version: 4.19.9-rhodf
      entries:
      - name: mcg-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: mcg-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: mcg-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: mcg-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: mcg-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: mcg-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: mcg-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: mcg-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: mcg-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: mcg-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: mcg-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[{"kind":"NooBaa","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"noobaa","creationTimestamp":null},"spec":{"cleanupPolicy":{},"security":{"kms":{}},"loadBalancerSourceSubnets":{},"autoscaler":{},"bucketLogging":{},"bucketNotifications":{"enabled":false}},"status":{"lastKeyRotateTime":null}},{"kind":"BackingStore","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"type":""},"status":{"mode":{}}},{"kind":"NamespaceStore","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"type":""},"status":{"mode":{}}},{"kind":"BucketClass","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{},"status":{}},{"kind":"NooBaaAccount","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"allow_bucket_creation":false},"status":{}}]'
          capabilities: Seamless Upgrades
          categories: Storage,Big Data
          certified: "false"
          containerImage: registry.redhat.io/odf4/mcg-rhel9-operator@sha256:2400c5a97946d6d9a057bf14edca386f8bb283adaccfe612c0fb227241699f02
          createdAt: "2019-07-08T13:10:20.940Z"
          description: NooBaa is an object data service for hybrid and multi cloud
            environments.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/infrastructure-features: ֿ'["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/noobaa/noobaa-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A NooBaa system - Create this to start
            displayName: NooBaa
            kind: NooBaa
            name: noobaas.noobaa.io
            version: v1alpha1
          - description: Storage target spec such as aws-s3, s3-compatible, ibm-cos,
              PV's and more. Used in BucketClass to construct data placement policies.
            displayName: Backing Store
            kind: BackingStore
            name: backingstores.noobaa.io
            version: v1alpha1
          - description: Storage target spec such as aws-s3, s3-compatible, ibm-cos
              and more. Used in BucketClass to construct namespace policies.
            displayName: Namespace Store
            kind: NamespaceStore
            name: namespacestores.noobaa.io
            version: v1alpha1
          - description: Storage policy spec  tiering, mirroring, spreading, namespace
              policy. Combines BackingStores Or NamespaceStores. Referenced by ObjectBucketClaims.
            displayName: Bucket Class
            kind: BucketClass
            name: bucketclasses.noobaa.io
            version: v1alpha1
          - kind: NooBaaAccount
            name: noobaaaccounts.noobaa.io
            version: v1alpha1
          - description: Claim a bucket just like claiming a PV. Automate you app
              bucket provisioning by creating OBC with your app deployment. A secret
              and configmap (name=claim) will be created with access details for the
              app pods.
            displayName: Object Bucket Claim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
          - description: Used under-the-hood. Created per ObjectBucketClaim and keeps
              provisioning information.
            displayName: Object Bucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Backup
            kind: Backup
            name: backups.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ClusterImageCatalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Database
            kind: Database
            name: databases.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: FailoverQuorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ImageCatalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Publication
            kind: Publication
            name: publications.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ScheduledBackup
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.noobaa.io
            version: v1
        description: "The noobaa operator creates and reconciles a NooBaa system in
          a Kubernetes/Openshift cluster.\n\nNooBaa provides an S3 object-store service
          abstraction and data placement policies to create hybrid and multi cloud
          data solutions.\n\nFor more information on using NooBaa refer to [Github](https://github.com/noobaa/noobaa-core)
          / [Website](https://www.noobaa.io) / [Articles](https://noobaa.desk.com).
          \n\n## How does it work?\n\n- The operator deploys the noobaa core pod and
          two services - Mgmt (UI/API) and S3 (object-store).\n- Both services require
          credentials which you will get from a secret that the operator creates -
          use describe noobaa to locate it.\n- The service addresses will also appear
          in the describe output - pick the one that is suitable for your client:\n
          \   - minikube - use the NodePort address.\n    - remote cluster - probably
          need one of the External addresses.\n    - connect an application on the
          same cluster - use Internal DNS (though any address should work)\n    \n-
          Feel free to email us or open github issues on any question.\n\n## Getting
          Started\n\n### Notes:\n- The following instructions are for **minikube**
          but it works on any Kubernetes/Openshift clusters.\n- This will setup noobaa
          in the **my-noobaa-operator** namespace.\n- You will need **jq**, **curl**,
          **kubectl** or **oc**, **aws-cli**.\n\n### 1. Install OLM (if you don't
          have it already):\n```\ncurl -sL https://github.com/operator-framework/operator-lifecycle-manager/releases/download/0.12.0/install.sh
          | bash -s 0.12.0\n```\n\n### 2. Install noobaa-operator:\n```\nkubectl create
          -f https://operatorhub.io/install/noobaa-operator.yaml\n```\nWait for it
          to be ready:\n```\nkubectl wait pod -n my-noobaa-operator -l noobaa-operator
          --for=condition=ready\n```\n\n### 3. Create noobaa system:\n```\ncurl -sL
          https://operatorhub.io/api/operator?packageName=noobaa-operator | \n    jq
          '.operator.customResourceDefinitions[0].yamlExample | .metadata.namespace=\"my-noobaa-operator\"'
          |\n    kubectl create -f -\n```\nWait for it to be ready:\n```\nkubectl
          wait pod -n my-noobaa-operator -l noobaa-core --for=condition=ready\nkubectl
          get noobaa -n my-noobaa-operator -w\n# NAME     PHASE   MGMT-ENDPOINTS                  S3-ENDPOINTS
          \                   IMAGE                    AGE\n# noobaa   **Ready**   [https://192.168.64.12:31121]
          \  [https://192.168.64.12:32557]   noobaa/noobaa-core:4.0   19m\n```\n\n###
          4. Get system information to your shell:\n```\nNOOBAA_SECRET=$(kubectl get
          noobaa noobaa -n my-noobaa-operator -o json | jq -r '.status.accounts.admin.secretRef.name'
          )\nNOOBAA_MGMT=$(kubectl get noobaa noobaa -n my-noobaa-operator -o json
          | jq -r '.status.services.serviceMgmt.nodePorts[0]' )\nNOOBAA_S3=$(kubectl
          get noobaa noobaa -n my-noobaa-operator -o json | jq -r '.status.services.serviceS3.nodePorts[0]'
          )\nNOOBAA_ACCESS_KEY=$(kubectl get secret $NOOBAA_SECRET -n my-noobaa-operator
          -o json | jq -r '.data.AWS_ACCESS_KEY_ID|@base64d')\nNOOBAA_SECRET_KEY=$(kubectl
          get secret $NOOBAA_SECRET -n my-noobaa-operator -o json | jq -r '.data.AWS_SECRET_ACCESS_KEY|@base64d')\n```\n\n###
          5. Connect to Mgmt UI:\n```\n# show email/password from the secret:\nkubectl
          get secret $NOOBAA_SECRET -n my-noobaa-operator -o json | jq '.data|map_values(@base64d)'\n\n#
          open mgmt UI login:\nopen $NOOBAA_MGMT\n```\n\n### 6. Connect to S3 with
          aws-cli:\n```\nalias s3='AWS_ACCESS_KEY_ID=$NOOBAA_ACCESS_KEY AWS_SECRET_ACCESS_KEY=$NOOBAA_SECRET_KEY
          aws --endpoint $NOOBAA_S3 --no-verify-ssl s3'\ns3 ls\ns3 sync /var/log/
          s3://first.bucket\ns3 ls s3://first.bucket\n```\n"
        displayName: NooBaa Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - noobaa
        - kubernetes
        - openshift
        - cloud
        - hybrid
        - multi
        - data
        - storage
        - s3
        - tiering
        - mirroring
        links:
        - name: Github
          url: https://github.com/noobaa/noobaa-core
        - name: Website
          url: https://www.noobaa.io
        - name: Articles
          url: https://noobaa.desk.com
        maintainers:
        - email: gmargali@redhat.com
          name: Guy Margalit
        - email: etamir@redhat.com
          name: Eran Tamir
        - email: nbecker@redhat.com
          name: Nimrod Becker
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: NooBaa
        relatedImages:
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:1e1e53d68779e4575ff7958307c61e1341efffc225ccfdc75c2518e8797f0fd7
        - registry.redhat.io/odf4/mcg-rhel9-operator@sha256:2400c5a97946d6d9a057bf14edca386f8bb283adaccfe612c0fb227241699f02
        - registry.redhat.io/odf4/odf-cloudnative-pg-rhel9-operator@sha256:1769b528ed5ff4fcf2d59318ada4d200d545c0f2633e54708e1251f8ab0f9465
        - registry.redhat.io/odf4/odf-cosi-sidecar-rhel9@sha256:f6f1d8f6d783c81b932280cb8d4923ba4b84aefa748d26351d6392c8673d10ee
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/mcg-operator-bundle@sha256:74e59db870df08fcc30a6869451af3a6f5112777ef25bd7de887984ce015bc5c
        version: 4.20.4-rhodf
      entries:
      - name: mcg-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: mcg-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: mcg-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: mcg-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: mcg-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: mcg-operator
    provider:
      name: NooBaa
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-eks-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-eks-controller.v1.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eks.services.k8s.aws/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eks.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eks.services.k8s.aws/v1alpha1",
                "kind": "FargateProfile",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eks.services.k8s.aws/v1alpha1",
                "kind": "Nodegroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/eks-controller:1.11.0
          createdAt: "2025-12-05T02:21:53Z"
          description: AWS EKS controller is a service controller for managing EKS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AccessEntry represents the state of an AWS eks AccessEntry
              resource.
            displayName: AccessEntry
            kind: AccessEntry
            name: accessentries.eks.services.k8s.aws
            version: v1alpha1
          - description: Addon represents the state of an AWS eks Addon resource.
            displayName: Addon
            kind: Addon
            name: addons.eks.services.k8s.aws
            version: v1alpha1
          - description: Capability represents the state of an AWS eks Capability
              resource.
            displayName: Capability
            kind: Capability
            name: capabilities.eks.services.k8s.aws
            version: v1alpha1
          - description: Cluster represents the state of an AWS eks Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.eks.services.k8s.aws
            version: v1alpha1
          - description: FargateProfile represents the state of an AWS eks FargateProfile
              resource.
            displayName: FargateProfile
            kind: FargateProfile
            name: fargateprofiles.eks.services.k8s.aws
            version: v1alpha1
          - description: IdentityProviderConfig represents the state of an AWS eks
              IdentityProviderConfig resource.
            displayName: IdentityProviderConfig
            kind: IdentityProviderConfig
            name: identityproviderconfigs.eks.services.k8s.aws
            version: v1alpha1
          - description: Nodegroup represents the state of an AWS eks Nodegroup resource.
            displayName: Nodegroup
            kind: Nodegroup
            name: nodegroups.eks.services.k8s.aws
            version: v1alpha1
          - description: PodIdentityAssociation represents the state of an AWS eks
              PodIdentityAssociation resource.
            displayName: PodIdentityAssociation
            kind: PodIdentityAssociation
            name: podidentityassociations.eks.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Elastic Kubernetes Service (EKS) resources in AWS from within your Kubernetes cluster.

          **About Amazon EKS**

          Amazon Elastic Kubernetes Service (Amazon EKS) is a managed service that you can use to run Kubernetes on AWS without needing to install, operate, and maintain your own Kubernetes control plane or nodes. Kubernetes is an open-source system for automating the deployment, scaling, and management of containerized applications.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EKS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eks
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EKS Developer Resources
          url: https://aws.amazon.com/eks/getting-started/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: eks maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/eks-controller:1.11.0
        - quay.io/community-operator-pipeline-prod/ack-eks-controller@sha256:c05877fc8fa9a3cfbf8790db8e153d69f18627c020b8a0efeaabc6c7ae21d038
        version: 1.11.0
      entries:
      - name: ack-eks-controller.v1.11.0
        version: 1.11.0
      - name: ack-eks-controller.v1.10.0
        version: 1.10.0
      - name: ack-eks-controller.v1.9.4
        version: 1.9.4
      - name: ack-eks-controller.v1.9.3
        version: 1.9.3
      - name: ack-eks-controller.v1.9.2
        version: 1.9.2
      - name: ack-eks-controller.v1.9.1
        version: 1.9.1
      - name: ack-eks-controller.v1.9.0
        version: 1.9.0
      - name: ack-eks-controller.v1.8.0
        version: 1.8.0
      - name: ack-eks-controller.v1.7.6
        version: 1.7.6
      - name: ack-eks-controller.v1.7.5
        version: 1.7.5
      - name: ack-eks-controller.v1.7.4
        version: 1.7.4
      - name: ack-eks-controller.v1.7.3
        version: 1.7.3
      - name: ack-eks-controller.v1.7.2
        version: 1.7.2
      - name: ack-eks-controller.v1.6.4
        version: 1.6.4
      - name: ack-eks-controller.v1.6.3
        version: 1.6.3
      - name: ack-eks-controller.v1.6.2
        version: 1.6.2
      - name: ack-eks-controller.v1.6.1
        version: 1.6.1
      - name: ack-eks-controller.v1.6.0
        version: 1.6.0
      - name: ack-eks-controller.v1.5.5
        version: 1.5.5
      - name: ack-eks-controller.v1.5.4
        version: 1.5.4
      - name: ack-eks-controller.v1.5.3
        version: 1.5.3
      - name: ack-eks-controller.v1.5.2
        version: 1.5.2
      - name: ack-eks-controller.v1.5.1
        version: 1.5.1
      - name: ack-eks-controller.v1.5.0
        version: 1.5.0
      - name: ack-eks-controller.v1.4.7
        version: 1.4.7
      - name: ack-eks-controller.v1.4.6
        version: 1.4.6
      - name: ack-eks-controller.v1.4.5
        version: 1.4.5
      - name: ack-eks-controller.v1.4.4
        version: 1.4.4
      - name: ack-eks-controller.v1.4.3
        version: 1.4.3
      - name: ack-eks-controller.v1.4.2
        version: 1.4.2
      - name: ack-eks-controller.v1.4.1
        version: 1.4.1
      - name: ack-eks-controller.v1.4.0
        version: 1.4.0
      - name: ack-eks-controller.v1.3.5
        version: 1.3.5
      - name: ack-eks-controller.v1.3.3
        version: 1.3.3
      - name: ack-eks-controller.v1.3.1
        version: 1.3.1
      - name: ack-eks-controller.v1.3.0
        version: 1.3.0
      - name: ack-eks-controller.v1.2.3
        version: 1.2.3
      - name: ack-eks-controller.v1.2.2
        version: 1.2.2
      - name: ack-eks-controller.v1.2.1
        version: 1.2.1
      - name: ack-eks-controller.v1.2.0
        version: 1.2.0
      - name: ack-eks-controller.v1.1.3
        version: 1.1.3
      - name: ack-eks-controller.v1.1.2
        version: 1.1.2
      - name: ack-eks-controller.v1.1.1
        version: 1.1.1
      - name: ack-eks-controller.v1.1.0
        version: 1.1.0
      - name: ack-eks-controller.v1.0.5
        version: 1.0.5
      - name: ack-eks-controller.v1.0.4
        version: 1.0.4
      - name: ack-eks-controller.v1.0.3
        version: 1.0.3
      - name: ack-eks-controller.v1.0.2
        version: 1.0.2
      - name: ack-eks-controller.v1.0.1
        version: 1.0.1
      - name: ack-eks-controller.v1.0.0
        version: 1.0.0
      - name: ack-eks-controller.v0.1.9
        version: 0.1.9
      - name: ack-eks-controller.v0.1.8
        version: 0.1.8
      - name: ack-eks-controller.v0.1.7
        version: 0.1.7
      - name: ack-eks-controller.v0.1.6
        version: 0.1.6
      - name: ack-eks-controller.v0.1.5
        version: 0.1.5
      - name: ack-eks-controller.v0.1.4
        version: 0.1.4
      - name: ack-eks-controller.v0.1.3
        version: 0.1.3
      - name: ack-eks-controller.v0.1.2
        version: 0.1.2
      - name: ack-eks-controller.v0.1.1
        version: 0.1.1
      - name: ack-eks-controller.v0.1.0
        version: 0.1.0
      - name: ack-eks-controller.v0.0.15
        version: 0.0.15
      - name: ack-eks-controller.v0.0.14
        version: 0.0.14
      - name: ack-eks-controller.v0.0.13
        version: 0.0.13
      - name: ack-eks-controller.v0.0.12
        version: 0.0.12
      - name: ack-eks-controller.v0.0.11
        version: 0.0.11
      - name: ack-eks-controller.v0.0.10
        version: 0.0.10
      - name: ack-eks-controller.v0.0.9
        version: 0.0.9
      - name: ack-eks-controller.v0.0.8
        version: 0.0.8
      - name: ack-eks-controller.v0.0.7
        version: 0.0.7
      - name: ack-eks-controller.v0.0.6
        version: 0.0.6
      - name: ack-eks-controller.v0.0.5
        version: 0.0.5
      - name: ack-eks-controller.v0.0.4
        version: 0.0.4
      - name: ack-eks-controller.v0.0.3
        version: 0.0.3
      - name: ack-eks-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-eks-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-elbv2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-elbv2-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.services.k8s.aws/v1alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elbv2.services.k8s.aws/v1alpha1",
                "kind": "LoadBalancer",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elbv2.services.k8s.aws/v1alpha1",
                "kind": "Rule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elbv2.services.k8s.aws/v1alpha1",
                "kind": "TargetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/elbv2-controller:1.2.0
          createdAt: "2025-11-29T05:54:55Z"
          description: AWS ELB controller is a service controller for managing ELB
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Listener represents the state of an AWS elbv2 Listener resource.
            displayName: Listener
            kind: Listener
            name: listeners.elbv2.services.k8s.aws
            version: v1alpha1
          - description: LoadBalancer represents the state of an AWS elbv2 LoadBalancer
              resource.
            displayName: LoadBalancer
            kind: LoadBalancer
            name: loadbalancers.elbv2.services.k8s.aws
            version: v1alpha1
          - description: Rule represents the state of an AWS elbv2 Rule resource.
            displayName: Rule
            kind: Rule
            name: rules.elbv2.services.k8s.aws
            version: v1alpha1
          - description: TargetGroup represents the state of an AWS elbv2 TargetGroup
              resource.
            displayName: TargetGroup
            kind: TargetGroup
            name: targetgroups.elbv2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Elastic Load Balancing (ELB) resources in AWS from within your Kubernetes cluster.

          **About Amazon ELB**

          Elastic Load Balancing automatically distributes your incoming traffic across multiple targets, such as EC2 instances, containers, and IP addresses, in one or more Availability Zones. It monitors the health of its registered targets, and routes traffic only to the healthy targets. Elastic Load Balancing scales your load balancer capacity automatically in response to changes in incoming traffic.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ELB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - elbv2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ELB Developer Resources
          url: https://aws.amazon.com/elasticloadbalancing
        maintainers:
        - email: ack-maintainers@amazon.com
          name: elb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/elbv2-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-elbv2-controller@sha256:908d40fc7c406369ca775a432386649fef9d8ffd09576ba0c9dad30ae2846a18
        version: 1.2.0
      entries:
      - name: ack-elbv2-controller.v1.2.0
        version: 1.2.0
      - name: ack-elbv2-controller.v1.1.3
        version: 1.1.3
      - name: ack-elbv2-controller.v1.1.2
        version: 1.1.2
      - name: ack-elbv2-controller.v1.1.1
        version: 1.1.1
      - name: ack-elbv2-controller.v1.1.0
        version: 1.1.0
      - name: ack-elbv2-controller.v1.0.13
        version: 1.0.13
      - name: ack-elbv2-controller.v1.0.12
        version: 1.0.12
      - name: ack-elbv2-controller.v1.0.10
        version: 1.0.10
      - name: ack-elbv2-controller.v1.0.9
        version: 1.0.9
      - name: ack-elbv2-controller.v1.0.8
        version: 1.0.8
      - name: ack-elbv2-controller.v1.0.7
        version: 1.0.7
      - name: ack-elbv2-controller.v1.0.6
        version: 1.0.6
      - name: ack-elbv2-controller.v1.0.5
        version: 1.0.5
      - name: ack-elbv2-controller.v1.0.4
        version: 1.0.4
      - name: ack-elbv2-controller.v1.0.3
        version: 1.0.3
      - name: ack-elbv2-controller.v1.0.2
        version: 1.0.2
      - name: ack-elbv2-controller.v1.0.1
        version: 1.0.1
      - name: ack-elbv2-controller.v1.0.0
        version: 1.0.0
      - name: ack-elbv2-controller.v0.0.11
        version: 0.0.11
      - name: ack-elbv2-controller.v0.0.10
        version: 0.0.10
      - name: ack-elbv2-controller.v0.0.9
        version: 0.0.9
      - name: ack-elbv2-controller.v0.0.8
        version: 0.0.8
      - name: ack-elbv2-controller.v0.0.6
        version: 0.0.6
      - name: ack-elbv2-controller.v0.0.5
        version: 0.0.5
      - name: ack-elbv2-controller.v0.0.4
        version: 0.0.4
      - name: ack-elbv2-controller.v0.0.3
        version: 0.0.3
      - name: ack-elbv2-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-elbv2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Sonatype
      provider-url: ""
    name: nxiq-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nxiq-operator-certified.v1.197.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonatype.com/v1alpha1",
                "kind": "NexusIQ",
                "metadata": {
                  "name": "example-nexusiq"
                },
                "spec": {
                  "deployment": {
                    "postStart": {
                      "command": null
                    }
                  },
                  "deploymentStrategy": {
                    "type": "Recreate"
                  },
                  "fullnameOverride": "",
                  "imagePullSecrets": [],
                  "ingress": {
                    "annotations": {},
                    "enabled": false,
                    "hosts": [],
                    "path": "/",
                    "tls": []
                  },
                  "iq": {
                    "adminPort": 8071,
                    "applicationPort": 8070,
                    "env": [
                      {
                        "name": "JAVA_OPTS",
                        "value": "-Djava.util.prefs.userRoot=$(SONATYPE_WORK)/javaprefs -Djavax.net.ssl.trustStore=/etc/nexus-iq-server/jks/keystore.jks"
                      }
                    ],
                    "configYaml": {
                      "sonatypeWork": "/sonatype-work",
                      "createSampleData": true,
                      "server": {
                        "adminConnectors": [
                          {
                            "port": 8071,
                            "type": "http"
                          }
                        ],
                        "applicationConnectors": [
                          {
                            "port": 8070,
                            "type": "http"
                          }
                        ],
                        "requestLog": {
                          "appenders": [
                            {
                              "type": "file",
                              "currentLogFilename": "/var/log/nexus-iq-server/request.log",
                              "logFormat": "%clientHost %l %user [%date] \"%requestURL\" %statusCode %bytesSent %elapsedTime \"%header{User-Agent}\"",
                              "archivedLogFilenamePattern": "/var/log/nexus-iq-server/request-%d.log.gz",
                              "archivedFileCount": 50
                            }
                          ]
                        }
                      },
                      "logging": {
                        "level": "DEBUG",
                        "loggers": {
                          "com.sonatype.insight.scan": "INFO",
                          "eu.medsea.mimeutil.MimeUtil2": "INFO",
                          "org.apache.http": "INFO",
                          "org.apache.http.wire": "ERROR",
                          "org.eclipse.birt.report.engine.layout.pdf.font.FontConfigReader": "WARN",
                          "org.eclipse.jetty": "INFO",
                          "org.apache.shiro.web.filter.authc.BasicHttpAuthenticationFilter": "INFO",
                          "com.sonatype.insight.audit": {
                            "appenders": [
                              {
                                "type": "file",
                                "currentLogFilename": "/var/log/nexus-iq-server/audit.log",
                                "archivedLogFilenamePattern": "/var/log/nexus-iq-server/audit-%d.log.gz",
                                "archivedFileCount": 50
                              }
                            ]
                          },
                          "com.sonatype.insight.policy.violation": {
                            "appenders": [
                              {
                                "type": "console",
                                "threshold": "INFO"
                              }
                            ]
                          }
                        },
                        "appenders": [
                          {
                            "type": "console",
                            "threshold": "INFO",
                            "logFormat": "%d{'yyyy-MM-dd HH:mm:ss,SSSZ'} %level [%thread] %X{username} %logger - %msg%n"
                          },
                          {
                            "type": "file",
                            "threshold": "ALL",
                            "logFormat": "%d{'yyyy-MM-dd HH:mm:ss,SSSZ'} %level [%thread] %X{username} %logger - %msg%n",
                            "currentLogFilename": "/var/log/nexus-iq-server/clm-server.log",
                            "archivedLogFilenamePattern": "/var/log/nexus-iq-server/clm-server-%d.log.gz",
                            "archivedFileCount": 50
                          }
                        ]
                      }
                    },
                    "imageName": "registry.connect.redhat.com/sonatype/nexus-iq-server@sha256:b62cf10b73ee069b8c5d166cdb42a7ce08c3410ff7c027b44843840a430b1ca3",
                    "imagePullPolicy": "IfNotPresent",
                    "imagePullSecret": "",
                    "licenseSecret": "",
                    "memory": "1Gi",
                    "name": "nxiq",
                    "certificates": {}
                  },
                  "nameOverride": "",
                  "persistence": {
                    "accessMode": "ReadWriteOnce",
                    "storageSize": "1Gi"
                  },
                  "service": {
                    "annotations": {},
                    "enabled": false,
                    "labels": {},
                    "ports": [
                      {
                        "name": "nexus-service",
                        "port": 80,
                        "targetPort": 80
                      }
                    ]
                  },
                  "serviceAccount": {
                    "create": true,
                    "name": null
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "true"
          containerImage: registry.connect.redhat.com/sonatype/nxiq-operator-certified@sha256:0c302a42c09dc8dfc41f4256eeaa4ee43866c7ac1a28cb4517f06e6b21374c45
          createdAt: "2020-07-20"
          description: |-
            Nexus Lifecycle is an open source governance platform that continuously identifies risk,
            automatically enforces policy, and provides visibility throughout the entire SDLC.
          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.skipRange: <1.197.0-1
          repository: https://github.com/sonatype/operator-iq
          support: Sonatype
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Nexus IQ Server
            displayName: NexusIQ
            kind: NexusIQ
            name: nexusiqs.sonatype.com
            version: v1alpha1
        description: |-
          Nexus Lifecycle is an open source governance platform that continuously identifies risk,
          automatically enforces policy, and provides visibility throughout the entire SDLC.
          Developers leveraging open source require a solution that helps them make safer choices
          while still delivering at DevOps speed.
          Nexus Lifecycle empowers developers and security teams to choose the best components
          and govern open source usage, ensuring organizations continue to innovate with less risk.

          ## Core Capabilities

          * **Dependency Management**:
            Generate a precise software bill of materials for all applications
            to identify open source components and gather contextual direct
            and transitive dependency information for faster action.
          * **One-Click Remediation**:
            Upgrade to the best components and versions based on real-time intelligence.
            Available in your preferred IDE or a GitHub pull request.
          * **Automated Open Source Policy Enforcement**:
            Create custom security, license, and architectural policies based
            on application type or organization and contextually enforce those policies
            across every stage of the SDLC.
          * **Continuous Monitoring**:
            Real-time notifications of newly discovered defects,
            as well as vulnerabilities based on component,
            risk level or application/container affected.

          ## Extras

          * IDE Integrations: Eclipse, IntelliJ, and Visual Studio
          * Source Control Integrations: GitHub, GitLab, and Bitbucket
          * Chrome Browser Extension
          * Red Hat Clair for Container Scanning

          ## Limitations

          This operator will be released on a quarterly basis.

          ## Controlling Automatic vs Manual Update

          If you use the default configuration for the Nexus IQ Operator installation,
          please notice that on any new operator release, the corresponding deployments are
          also updated without user intervention, resulting in unscheduled downtime.

          If you want to avoid this unscheduled downtime, we recommend installing the operator
          into **its own namespace** with **manual approval** for updates.

          ## Usage

          Once the server instance is created by the operator and running,
          you'll want to expose the service as you see fit:
          1. Create a Route to the new service for iq.applicationPort (8070).
          2. Visit the URL provided by the Route, login, and set new credentials.
            The default credentials are `admin`/`admin123`.

          The Nexus IQ Server can be further configured via the NexusIQ custom resource definition:

          | Parameter            | Description                                                  | Default           |
          | -------------------- | ------------------------------------------------------------ | ----------------- |
          | `iq.applicationPort` | Port of the application connector. Must match the value in the `configYaml` property | `8070`            |
          | `iq.adminPort`       | Port of the application connector. Must match the value in the `configYaml` property | `8071`            |
          | `iq.memory`          | The amount of RAM to allocate                                | `1Gi`             |
          | `iq.env`             | Customize the server environment, including `JAVA_OPTS`      | See example YAML show when ceating a NexusIQ. |
          | `iq.licenseSecret`   | The base-64 encoded license file to be installed at startup  | `""`              |
          | `iq.configYaml`      | A YAML block which will be used as a configuration block for IQ Server. | See example YAML shown when creating a NexusIQ. |
          | `iq.certificates`   | Add your own certificates for your own trusted Certificate Authorities with names and plain armored text. | `{}` |
          | `ingress.enabled`                           | Create an ingress for Nexus         | `true`                                  |
          | `ingress.annotations`                       | Annotations to enhance ingress configuration  | `{}`                          |
          | `ingress.tls.enabled`                       | Enable TLS                          | `true`                                 |
          | `ingress.tls.secretName`                    | Name of the secret storing TLS cert, `false` to use the Ingress' default certificate | `nexus-tls`                             |
          | `ingress.path`                              | Path for ingress rules. GCP users should set to `/*` | `/`                    |
          | `deploymentStrategy.type`                   | Deployment Strategy                 |  `Recreate` |
          | `initContainers`                            | Containers to run before starting the server | `nil` |
          | `deployment.postStart.command`              | Command to run after starting the IQ Server container  | `nil`                    |
          | `deployment.terminationGracePeriodSeconds` | Time to allow for clean shutdown                        | 120                      |
          | `persistence.storageClass` | The provisioner class                        | `-` (disables dynamic provisioning)            |
          | `persistence.storageSize` | The amount of drive space to allocate                        | `1Gi`             |
          | `persistence.accessMode` | Default access mode                        | `ReadWriteOnce`             |
          | `persistence.volumeConfiguration` | A YAML block to configure the persistent volume type. Defaults to `hostPath` which should not be used in production | `hostPath`             |

          ## Configuring IQ Server

          You can define the `config.yml` for IQ Server in your CRD on startup.
          It is the `iq.configYaml` property. For more details, see the [Configuring IQ Server](https://help.sonatype.com/iqserver/configuring) help page.

          ## Installing the License

          The license file can be installed via the UI when IQ server is running, or it can be done as a part of the deploy.
          If you leave the `licenseFile` field empty/commented, IQ Server will start and prompt you to manually install the license
          when you first enter the GUI.

          ### Installing the License Automatically
          To do it automatically, first encode your `.lic` file in Base 64 with no line breaks, eg:

          ```bash
          base64 --wrap=0 mylicense.lic > lic.base64
          ```

          Then add this value to your CRD file as `iq.licenseSecret`, eg:

          ```yaml
          iq:
            licenseSecret: bXkgc2FtcGxlIGxpY2Vuc2U=
          ```

          Specify the `licenseFile` path in `iq.configYaml` as:

          ```yaml
          iq:
            configYaml:
              sonatypeWork: /sonatype-work
              createSampleData: true
              # add this line and the `licenseSecret` above to autoconfigure licensing
              licenseFile: /etc/nexus-iq-license/license_lic
              server:
                applicationConnectors:
                  - type: http
                    port: 8070
                adminConnectors:
                  - type: http
                    port: 8071
          ```

          ## Adding Certificates for Your Own Trusted Certificate Authorities

          Specify a set of certificates to be imported into the Java trust store
          of the running IQ Server. More than one certificate can be provided.

          ```yaml
          iq:
            certificates:
              my-company-cert: |
                -----BEGIN CERTIFICATE-----
                ...
                -----END CERTIFICATE-----
          ```

          ## Running Commands Before Initialization of the Server

          If you need custom initialization, you can use standard Kubernetes
          [`initContainers`](https://kubernetes.io/docs/concepts/workloads/pods/init-containers/)
          to run any series of containers and commands you need.

          ```yaml
          initContainers:
            - name: an-init-container
              image: busybox:1.28
              command: ['/bin/sh', '-c', 'echo "initializing"']
          ```
        displayName: Nexus IQ Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - sonatype
        - licensing
        - policy
        - components
        links:
        - name: Nexus Lifecycle
          url: https://www.sonatype.com/product-nexus-lifecycle
        maintainers:
        - email: support@sonaype.com
          name: Sonatype
        maturity: stable
        provider:
          name: Sonatype
        relatedImages:
        - registry.connect.redhat.com/sonatype/nexus-iq-server@sha256:b62cf10b73ee069b8c5d166cdb42a7ce08c3410ff7c027b44843840a430b1ca3
        - registry.connect.redhat.com/sonatype/nxiq-operator-bundle@sha256:3240bf7c3b0441192ed5cbd3cc5715e6e76605f4f42176876421daa008b5044f
        - registry.connect.redhat.com/sonatype/nxiq-operator-certified@sha256:0c302a42c09dc8dfc41f4256eeaa4ee43866c7ac1a28cb4517f06e6b21374c45
        version: 1.197.0-1
      entries:
      - name: nxiq-operator-certified.v1.197.0-1
        version: 1.197.0-1
      name: stable
    defaultChannel: stable
    packageName: nxiq-operator-certified
    provider:
      name: Sonatype
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Confluent, Inc.
      provider-url: https://confluent.io
    name: confluent-for-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: confluent-for-kubernetes.v3.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "CMFRestClass",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "cmfrestclass-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": null
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ClusterLink",
                "metadata": {
                  "name": "clusterlink-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "aclFilters": [
                    {
                      "accessFilter": {
                        "host": "example.com",
                        "operation": "read",
                        "permissionType": "allow",
                        "principal": "User:Bob"
                      },
                      "resourceFilter": {
                        "name": "coffee",
                        "patternType": "prefixed",
                        "resourceType": "topic"
                      }
                    }
                  ],
                  "configs": {
                    "connections.max.idle.ms": "620000"
                  },
                  "consumerGroupFilters": [
                    {
                      "filterType": "INCLUDE",
                      "name": "filter-example",
                      "patternType": "LITERAL"
                    }
                  ],
                  "destinationKafkaCluster": {
                    "kafkaRestClassRef": {
                      "name": "krc-example"
                    }
                  },
                  "sourceKafkaCluster": {
                    "bootstrapEndpoint": "example.com:9092",
                    "clusterID": "test_kafka_cluster_id"
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ConfluentRolebinding",
                "metadata": {
                  "name": "cfrb-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "clustersScopeByIds": {
                    "schemaRegistryClusterId": "id_schemaregistry_confluent"
                  },
                  "kafkaRestClassRef": {
                    "name": "default"
                  },
                  "principal": {
                    "name": "user-example",
                    "type": "user"
                  },
                  "role": "SecurityAdmin"
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Connect",
                "metadata": {
                  "name": "connect-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "connect-basic-example"
                    },
                    "type": "basic"
                  },
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-server-connect:8.0.3",
                    "init": "confluentinc/confluent-init-container-operator"
                  },
                  "replicas": 2,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Connector",
                "metadata": {
                  "name": "connector-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSinkConnector",
                  "configs": {
                    "file": "/tmp/test.txt",
                    "topics": "test-topic"
                  },
                  "connectClusterRef": {
                    "name": "connect",
                    "namespace": "confluent"
                  },
                  "connectRest": {
                    "authentication": {
                      "secretRef": "basic-credential-example",
                      "type": "basic"
                    }
                  },
                  "restartPolicy": {
                    "maxRetry": 20,
                    "type": "OnFailure"
                  },
                  "taskMax": 4
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ControlCenter",
                "metadata": {
                  "name": "controlcenter-ng-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "controlcenter-basic-example"
                    },
                    "type": "basic"
                  },
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "alertManagerClient": {
                      "url": "http://controlcenter-next-gen.confluent.svc.cluster.local:9093"
                    },
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071"
                    },
                    "prometheusClient": {
                      "url": "http://controlcenter-next-gen.confluent.svc.cluster.local:9090"
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-enterprise-control-center-next-gen:2.2.0",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "replicas": 1,
                  "services": {
                    "alertmanager": {
                      "image": "confluentinc/cp-enterprise-alertmanager:2.2.0"
                    },
                    "prometheus": {
                      "image": "confluentinc/cp-enterprise-prometheus:2.2.0",
                      "pvc": {
                        "dataVolumeCapacity": "10Gi"
                      }
                    }
                  },
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "FlinkApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "flinkapplication-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": null
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "FlinkEnvironment",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "flinkenvironment-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": null
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KRaftController",
                "metadata": {
                  "name": "kraftcontroller-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10G",
                  "image": {
                    "application": "confluentinc/cp-server:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "listeners": {
                    "controller": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential"
                        },
                        "type": "plain"
                      },
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KRaftMigrationJob",
                "metadata": {
                  "name": "kraft-migration-job",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kRaftController": {
                      "name": "kraftcontroller",
                      "namespace": "confluent"
                    },
                    "kafka": {
                      "name": "kafka",
                      "namespace": "confluent"
                    },
                    "zookeeper": {
                      "name": "zookeeper",
                      "namespace": "confluent"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Kafka",
                "metadata": {
                  "name": "kafka-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "zookeeper": {
                      "endpoint": "zookeeper.confluent.svc.cluster.local:2181"
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-server:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "listeners": {
                    "internal": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaRestClass",
                "metadata": {
                  "name": "krc-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "kafkaClusterRef": {
                    "name": "kafka",
                    "namespace": "confluent"
                  },
                  "kafkaRest": {
                    "authentication": {
                      "bearer": {
                        "secretRef": "rest-credential-example"
                      },
                      "type": "bearer"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaRestProxy",
                "metadata": {
                  "name": "krp-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-kafka-rest:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "topic-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "configs": {
                    "cleanup.policy": "compact"
                  },
                  "kafkaClusterRef": {
                    "name": "kafka",
                    "namespace": "confluent"
                  },
                  "partitionCount": 12,
                  "replicas": 1
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KsqlDB",
                "metadata": {
                  "name": "ksqldb-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "ksqldb-basic-example"
                    },
                    "type": "basic"
                  },
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-ksqldb-server:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "replicas": 2,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Schema",
                "metadata": {
                  "name": "schema-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "data": {
                    "configRef": "schema-config",
                    "format": "avro"
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "SchemaExporter",
                "metadata": {
                  "name": "schemaexporter-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "contextName": "mycustom",
                  "destinationCluster": {
                    "schemaRegistryClusterRef": {
                      "name": "schemaregistry",
                      "namespace": "destination"
                    }
                  },
                  "sourceCluster": {
                    "schemaRegistryClusterRef": {
                      "name": "schemaregistry",
                      "namespace": "source"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "SchemaRegistry",
                "metadata": {
                  "name": "schemaregistry-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-schema-registry:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "replicas": 1,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Streaming & Messaging
          containerImage: docker.io/confluentinc/confluent-operator@sha256:fedcd7decc5cccca5454feb56edc9e28323d2696a6215faa755cd9e0565b204e
          createdAt: "2025-12-09T10:17:15Z"
          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: "true"
          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.skipRange: '>=2.11.0 <3.0.0'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Confluent Platform License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Confluent, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterLink is the schema for the ClusterLink API.
            displayName: Cluster Link
            kind: ClusterLink
            name: clusterlinks.platform.confluent.io
            version: v1beta1
          - description: CMFRestClass is the Schema for the cmfrestclasses API
            displayName: CMFRest Class
            kind: CMFRestClass
            name: cmfrestclasses.platform.confluent.io
            version: v1beta1
          - description: ConfluentRolebinding is the schema for the ConfluentRolebinding
              API.
            displayName: Confluent Rolebinding
            kind: ConfluentRolebinding
            name: confluentrolebindings.platform.confluent.io
            version: v1beta1
          - description: Connector is the schema for the Connector API.
            displayName: Connector
            kind: Connector
            name: connectors.platform.confluent.io
            version: v1beta1
          - description: Connect is the schema for the Connect API.
            displayName: Connect
            kind: Connect
            name: connects.platform.confluent.io
            version: v1beta1
          - description: ControlCenter is the schema for the Control Center API.
            displayName: Control Center
            kind: ControlCenter
            name: controlcenters.platform.confluent.io
            version: v1beta1
          - description: FlinkApplication is the Schema for the flinkapplications
              API
            displayName: Flink Application
            kind: FlinkApplication
            name: flinkapplications.platform.confluent.io
            version: v1beta1
          - description: FlinkEnvironment is the Schema for the flinkenvironments
              API
            displayName: Flink Environment
            kind: FlinkEnvironment
            name: flinkenvironments.platform.confluent.io
            version: v1beta1
          - description: KafkaRestClass is the schema for the Kafka REST API.
            displayName: Kafka Rest Class
            kind: KafkaRestClass
            name: kafkarestclasses.platform.confluent.io
            version: v1beta1
          - description: KafkaRestProxy is the schema for the Kafka REST Proxy API.
            displayName: Kafka Rest Proxy
            kind: KafkaRestProxy
            name: kafkarestproxies.platform.confluent.io
            version: v1beta1
          - description: Kafka is the schema for the Kafka API.
            displayName: Kafka
            kind: Kafka
            name: kafkas.platform.confluent.io
            version: v1beta1
          - description: KafkaTopic is the schema for the Kafka Topic API.
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.platform.confluent.io
            version: v1beta1
          - description: KRaftController is the schema for the KRaft Controller API.
            displayName: KRaft Controller
            kind: KRaftController
            name: kraftcontrollers.platform.confluent.io
            version: v1beta1
          - description: KRaftMigrationJob is the schema for the KRaftMigrationJob
              API.
            displayName: KRaft Migration Job
            kind: KRaftMigrationJob
            name: kraftmigrationjobs.platform.confluent.io
            version: v1beta1
          - description: KsqlDB is the schema for the ksqlDB API.
            displayName: Ksql DB
            kind: KsqlDB
            name: ksqldbs.platform.confluent.io
            version: v1beta1
          - description: SchemaExporter is the schema for the SchemaExporter API.
            displayName: Schema Exporter
            kind: SchemaExporter
            name: schemaexporters.platform.confluent.io
            version: v1beta1
          - description: SchemaRegistry is the schema for the Schema Registry API.
            displayName: Schema Registry
            kind: SchemaRegistry
            name: schemaregistries.platform.confluent.io
            version: v1beta1
          - displayName: Schema
            kind: Schema
            name: schemas.platform.confluent.io
            version: v1beta1
          - description: Zookeeper is the schema for the Zookeeper API.
            displayName: Zookeeper
            kind: Zookeeper
            name: zookeepers.platform.confluent.io
            version: v1beta1
        description: Confluent for Kubernetes (CFK) is a cloud-native control plane
          for deploying and managing Confluent in your private cloud environment.
          It provides standard and simple interface to customize, deploy, and manage
          Confluent Platform through declarative API.Confluent for Kubernetes runs
          on Kubernetes, the runtime for private cloud architectures.
        displayName: Confluent for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Confluent
        - Kafka
        - Kubernetes
        - Private Cloud
        - Cloud-Native
        - Event Streaming
        - Data in Motion
        links:
        - name: Documentation
          url: https://docs.confluent.io/operator/current/overview.html
        - name: Examples and Tutorials
          url: https://github.com/confluentinc/confluent-kubernetes-examples
        - name: Product Overview (Blog)
          url: https://www.confluent.io/blog/confluent-for-kubernetes-offers-cloud-native-kafka-automation/
        maintainers:
        - email: confluent-private-cloud-team@confluent.io
          name: Confluent Private Cloud team
        maturity: stable
        provider:
          name: Confluent, Inc.
          url: https://confluent.io
        relatedImages:
        - docker.io/confluentinc/cp-server@sha256:4f1437345c62a9968d734310ac46e6cc2f2a2d999d2fe92eaaa22f85866729d6
        - docker.io/confluentinc/confluent-init-container@sha256:f63b312bad0428928f60b65d0b8017c35ebc500b85afaf62437f4073184e3e91
        - registry.connect.redhat.com/confluentinc/confluent-for-kubernetes-v2@sha256:cc7bf94454d98bdb7425508d2e11056fb8c8cd2c2c3a5a38678d941fe2c2e388
        - confluentinc/confluent-operator@sha256:fedcd7decc5cccca5454feb56edc9e28323d2696a6215faa755cd9e0565b204e
        - docker.io/confluentinc/cp-enterprise-control-center-next-gen@sha256:6378a0174433685ee52a7fe2e48424d3f598827ed2a5570ec74b916102485e0d
        - docker.io/confluentinc/cp-enterprise-prometheus@sha256:db0989ef9859dbc88bc59f9b8ade86f2ba13e9dc36533e654566218328e5ff57
        - docker.io/confluentinc/cp-kafka-rest@sha256:7d3e6f31bfa187058a01cb93bc5225755cd9f10d3ef4926e73a391178747594c
        - docker.io/confluentinc/cp-ksqldb-server@sha256:fadc1ff1f88a4cd81cce912be414ead7c53d8a2d8a526f68e431e09f534afee0
        - docker.io/confluentinc/cp-schema-registry@sha256:c05a05ceb4e2ac9c55231f66597d2d679b57002a9b38617e7cbcce8e64ffac09
        - docker.io/confluentinc/confluent-operator@sha256:fedcd7decc5cccca5454feb56edc9e28323d2696a6215faa755cd9e0565b204e
        - docker.io/confluentinc/cp-enterprise-alertmanager@sha256:fcce6f5311c26cd58427a039530a9f8dfd009249ff5a519694aa945d34502252
        - docker.io/confluentinc/cp-server-connect@sha256:3a3c99ee71de410299d81ed1fa580ab64c73e3660dbd5fe9e2a02275bbc58a7a
        version: 3.0.2
      entries:
      - name: confluent-for-kubernetes.v3.0.2
        version: 3.0.2
      name: "3.0"
    - currentCSV: confluent-for-kubernetes.v3.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "CMFRestClass",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "cmfrestclass-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": null
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ClusterLink",
                "metadata": {
                  "name": "clusterlink-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "aclFilters": [
                    {
                      "accessFilter": {
                        "host": "example.com",
                        "operation": "read",
                        "permissionType": "allow",
                        "principal": "User:Bob"
                      },
                      "resourceFilter": {
                        "name": "coffee",
                        "patternType": "prefixed",
                        "resourceType": "topic"
                      }
                    }
                  ],
                  "configs": {
                    "connections.max.idle.ms": "620000"
                  },
                  "consumerGroupFilters": [
                    {
                      "filterType": "INCLUDE",
                      "name": "filter-example",
                      "patternType": "LITERAL"
                    }
                  ],
                  "destinationKafkaCluster": {
                    "kafkaRestClassRef": {
                      "name": "krc-example"
                    }
                  },
                  "sourceKafkaCluster": {
                    "bootstrapEndpoint": "example.com:9092",
                    "clusterID": "test_kafka_cluster_id"
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ConfluentRolebinding",
                "metadata": {
                  "name": "cfrb-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "clustersScopeByIds": {
                    "schemaRegistryClusterId": "id_schemaregistry_confluent"
                  },
                  "kafkaRestClassRef": {
                    "name": "default"
                  },
                  "principal": {
                    "name": "user-example",
                    "type": "user"
                  },
                  "role": "SecurityAdmin"
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Connect",
                "metadata": {
                  "name": "connect-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "connect-basic-example"
                    },
                    "type": "basic"
                  },
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-server-connect:8.1.1",
                    "init": "confluentinc/confluent-init-container-operator"
                  },
                  "replicas": 2,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Connector",
                "metadata": {
                  "name": "connector-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSinkConnector",
                  "configs": {
                    "file": "/tmp/test.txt",
                    "topics": "test-topic"
                  },
                  "connectClusterRef": {
                    "name": "connect",
                    "namespace": "confluent"
                  },
                  "connectRest": {
                    "authentication": {
                      "secretRef": "basic-credential-example",
                      "type": "basic"
                    }
                  },
                  "restartPolicy": {
                    "maxRetry": 20,
                    "type": "OnFailure"
                  },
                  "taskMax": 4
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ControlCenter",
                "metadata": {
                  "name": "controlcenter-ng-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "controlcenter-basic-example"
                    },
                    "type": "basic"
                  },
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "alertManagerClient": {
                      "url": "http://controlcenter-next-gen.confluent.svc.cluster.local:9093"
                    },
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071"
                    },
                    "prometheusClient": {
                      "url": "http://controlcenter-next-gen.confluent.svc.cluster.local:9090"
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-enterprise-control-center-next-gen:2.2.0",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 1,
                  "services": {
                    "alertmanager": {
                      "image": "confluentinc/cp-enterprise-alertmanager:2.2.0"
                    },
                    "prometheus": {
                      "image": "confluentinc/cp-enterprise-prometheus:2.2.0",
                      "pvc": {
                        "dataVolumeCapacity": "10Gi"
                      }
                    }
                  },
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "FlinkApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "flinkapplication-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "cmfRestClassRef": {
                    "name": "default",
                    "namespace": "operator"
                  },
                  "flinkConfiguration": {
                    "metrics.reporter.prom.factory.class": "org.apache.flink.metrics.prometheus.PrometheusReporterFactory",
                    "metrics.reporter.prom.port": "9249-9250",
                    "rest.profiling.enabled": "true",
                    "taskmanager.numberOfTaskSlots": "2"
                  },
                  "flinkEnvironment": "flinkenvironment-sample",
                  "flinkVersion": "v1_19",
                  "image": "confluentinc/cp-flink:1.19.1-cp1",
                  "job": {
                    "jarURI": "local:///opt/flink/examples/streaming/StateMachineExample.jar",
                    "parallelism": 3,
                    "state": "running",
                    "upgradeMode": "stateless"
                  },
                  "jobManager": {
                    "resource": {
                      "cpu": 1,
                      "memory": "1048m"
                    }
                  },
                  "serviceAccount": "flink",
                  "taskManager": {
                    "resource": {
                      "cpu": 1,
                      "memory": "1048m"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "FlinkEnvironment",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "flinkenvironment-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "cmfRestClassRef": {
                    "name": "default",
                    "namespace": "operator"
                  },
                  "flinkApplicationDefaults": {
                    "metadata": {
                      "annotations": {
                        "fmc.platform.confluent.io/intra-cluster-ssl": "false"
                      }
                    },
                    "spec": {
                      "flinkConfiguration": {
                        "taskmanager.numberOfTaskSlots": "2"
                      }
                    }
                  },
                  "kubernetesNamespace": "default"
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Gateway",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "confluent-gateway",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "image": {
                    "application": "confluentinc/cpc-gateway:1.0.0",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 3,
                  "routes": [
                    {
                      "brokerIdentificationStrategy": {
                        "pattern": "broker{nodeId}.gw.mycompany.com:9092",
                        "type": "host"
                      },
                      "endpoint": "payments_authorization.gw.mycompany.com:9092",
                      "name": "payments_authorization",
                      "security": {
                        "auth": "passthrough",
                        "client": {
                          "tls": {
                            "secretRef": "tls-certs"
                          }
                        }
                      },
                      "streamingDomain": {
                        "bootstrapServerId": "payments_SASL_SSL",
                        "name": "payments"
                      }
                    },
                    {
                      "brokerIdentificationStrategy": {
                        "type": "port"
                      },
                      "endpoint": "orders_notification.gw.mycompany.com:9092",
                      "name": "orders_notification",
                      "security": {
                        "auth": "passthrough"
                      },
                      "streamingDomain": {
                        "bootstrapServerId": "orders_SASL_PLAINTEXT",
                        "name": "orders"
                      }
                    }
                  ],
                  "streamingDomains": [
                    {
                      "kafkaCluster": {
                        "bootstrapServers": [
                          {
                            "endpoint": "SASL_SSL://payments-kafka0.mycompany.com:9092",
                            "id": "payments_SASL_SSL",
                            "tls": {
                              "secretRef": "tls-certs-1"
                            }
                          }
                        ]
                      },
                      "name": "payments",
                      "type": "kafka"
                    },
                    {
                      "kafkaCluster": {
                        "bootstrapServers": [
                          {
                            "endpoint": "SASL_PLAINTEXT://orders-kafka0.mycompany.com:9090",
                            "id": "orders_SASL_PLAINTEXT"
                          }
                        ],
                        "nodeIdRanges": [
                          {
                            "end": 2,
                            "name": "pool-1",
                            "start": 0
                          },
                          {
                            "end": 7,
                            "name": "pool-2",
                            "start": 5
                          }
                        ]
                      },
                      "name": "orders",
                      "type": "kafka"
                    }
                  ]
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KRaftController",
                "metadata": {
                  "name": "kraftcontroller-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10G",
                  "image": {
                    "application": "confluentinc/cp-server:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "listeners": {
                    "controller": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential"
                        },
                        "type": "plain"
                      },
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KRaftMigrationJob",
                "metadata": {
                  "name": "kraft-migration-job",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kRaftController": {
                      "name": "kraftcontroller",
                      "namespace": "confluent"
                    },
                    "kafka": {
                      "name": "kafka",
                      "namespace": "confluent"
                    },
                    "zookeeper": {
                      "name": "zookeeper",
                      "namespace": "confluent"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Kafka",
                "metadata": {
                  "name": "kafka-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "zookeeper": {
                      "endpoint": "zookeeper.confluent.svc.cluster.local:2181"
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-server:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "listeners": {
                    "internal": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaRestClass",
                "metadata": {
                  "name": "krc-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "kafkaClusterRef": {
                    "name": "kafka",
                    "namespace": "confluent"
                  },
                  "kafkaRest": {
                    "authentication": {
                      "bearer": {
                        "secretRef": "rest-credential-example"
                      },
                      "type": "bearer"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaRestProxy",
                "metadata": {
                  "name": "krp-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-kafka-rest:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "topic-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "configs": {
                    "cleanup.policy": "compact"
                  },
                  "kafkaClusterRef": {
                    "name": "kafka",
                    "namespace": "confluent"
                  },
                  "partitionCount": 12,
                  "replicas": 1
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KsqlDB",
                "metadata": {
                  "name": "ksqldb-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "ksqldb-basic-example"
                    },
                    "type": "basic"
                  },
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-ksqldb-server:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 2,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Schema",
                "metadata": {
                  "name": "schema-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "data": {
                    "configRef": "schema-config",
                    "format": "avro"
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "SchemaExporter",
                "metadata": {
                  "name": "schemaexporter-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "contextName": "mycustom",
                  "destinationCluster": {
                    "schemaRegistryClusterRef": {
                      "name": "schemaregistry",
                      "namespace": "destination"
                    }
                  },
                  "sourceCluster": {
                    "schemaRegistryClusterRef": {
                      "name": "schemaregistry",
                      "namespace": "source"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "SchemaRegistry",
                "metadata": {
                  "name": "schemaregistry-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-schema-registry:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 1,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "USMAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "usmagent-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "credential"
                    },
                    "type": "basic"
                  },
                  "confluentCloudClient": {
                    "authentication": {
                      "basic": {
                        "secretRef": "ccloud-credential"
                      },
                      "type": "basic"
                    },
                    "endpoint": "\u003cfrontdoor_url\u003e",
                    "environmentId": "\u003cenv_id\u003e"
                  },
                  "image": {
                    "application": "confluentinc/cp-usm-agent:1.0.0",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 1
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Zookeeper",
                "metadata": {
                  "name": "zookeeper-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10Gi",
                  "image": {
                    "application": "confluentinc/cp-zookeeper",
                    "init": "confluentinc/confluent-init-container"
                  },
                  "logVolumeCapacity": "10Gi",
                  "replicas": 3
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Streaming & Messaging
          containerImage: docker.io/confluentinc/confluent-operator@sha256:c430b476e80e29fce6f3c2827fee1e28ba7aadeca903815c4329af984ff18b8f
          createdAt: "2025-12-09T11:48:55Z"
          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: "true"
          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.skipRange: '>=3.0.0 <3.1.0'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Confluent Platform License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Confluent, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterLink is the schema for the ClusterLink API.
            displayName: Cluster Link
            kind: ClusterLink
            name: clusterlinks.platform.confluent.io
            version: v1beta1
          - description: CMFRestClass is the Schema for the cmfrestclasses API
            displayName: CMFRest Class
            kind: CMFRestClass
            name: cmfrestclasses.platform.confluent.io
            version: v1beta1
          - description: ConfluentRolebinding is the schema for the ConfluentRolebinding
              API.
            displayName: Confluent Rolebinding
            kind: ConfluentRolebinding
            name: confluentrolebindings.platform.confluent.io
            version: v1beta1
          - description: Connector is the schema for the Connector API.
            displayName: Connector
            kind: Connector
            name: connectors.platform.confluent.io
            version: v1beta1
          - description: Connect is the schema for the Connect API.
            displayName: Connect
            kind: Connect
            name: connects.platform.confluent.io
            version: v1beta1
          - description: ControlCenter is the schema for the Control Center API.
            displayName: Control Center
            kind: ControlCenter
            name: controlcenters.platform.confluent.io
            version: v1beta1
          - description: FlinkApplication is the Schema for the flinkapplications
              API
            displayName: Flink Application
            kind: FlinkApplication
            name: flinkapplications.platform.confluent.io
            version: v1beta1
          - description: FlinkEnvironment is the Schema for the flinkenvironments
              API
            displayName: Flink Environment
            kind: FlinkEnvironment
            name: flinkenvironments.platform.confluent.io
            version: v1beta1
          - description: Gateway is the Schema for the gateways API
            displayName: Gateway
            kind: Gateway
            name: gateways.platform.confluent.io
            version: v1beta1
          - description: KafkaRestClass is the schema for the Kafka REST API.
            displayName: Kafka Rest Class
            kind: KafkaRestClass
            name: kafkarestclasses.platform.confluent.io
            version: v1beta1
          - description: KafkaRestProxy is the schema for the Kafka REST Proxy API.
            displayName: Kafka Rest Proxy
            kind: KafkaRestProxy
            name: kafkarestproxies.platform.confluent.io
            version: v1beta1
          - description: Kafka is the schema for the Kafka API.
            displayName: Kafka
            kind: Kafka
            name: kafkas.platform.confluent.io
            version: v1beta1
          - description: KafkaTopic is the schema for the Kafka Topic API.
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.platform.confluent.io
            version: v1beta1
          - description: KRaftController is the schema for the KRaft Controller API.
            displayName: KRaft Controller
            kind: KRaftController
            name: kraftcontrollers.platform.confluent.io
            version: v1beta1
          - description: KRaftMigrationJob is the schema for the KRaftMigrationJob
              API.
            displayName: KRaft Migration Job
            kind: KRaftMigrationJob
            name: kraftmigrationjobs.platform.confluent.io
            version: v1beta1
          - description: KsqlDB is the schema for the ksqlDB API.
            displayName: Ksql DB
            kind: KsqlDB
            name: ksqldbs.platform.confluent.io
            version: v1beta1
          - description: SchemaExporter is the schema for the SchemaExporter API.
            displayName: Schema Exporter
            kind: SchemaExporter
            name: schemaexporters.platform.confluent.io
            version: v1beta1
          - kind: SchemaImporter
            name: schemaimporters.platform.confluent.io
            version: v1beta1
          - description: SchemaRegistry is the schema for the Schema Registry API.
            displayName: Schema Registry
            kind: SchemaRegistry
            name: schemaregistries.platform.confluent.io
            version: v1beta1
          - displayName: Schema
            kind: Schema
            name: schemas.platform.confluent.io
            version: v1beta1
          - description: USMAgent is the Schema for the usmagents API
            displayName: USMAgent
            kind: USMAgent
            name: usmagents.platform.confluent.io
            version: v1beta1
          - description: Zookeeper is the schema for the Zookeeper API.
            displayName: Zookeeper
            kind: Zookeeper
            name: zookeepers.platform.confluent.io
            version: v1beta1
        description: Confluent for Kubernetes (CFK) is a cloud-native control plane
          for deploying and managing Confluent in your private cloud environment.
          It provides standard and simple interface to customize, deploy, and manage
          Confluent Platform through declarative API.Confluent for Kubernetes runs
          on Kubernetes, the runtime for private cloud architectures.
        displayName: Confluent for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Confluent
        - Kafka
        - Kubernetes
        - Private Cloud
        - Cloud-Native
        - Event Streaming
        - Data in Motion
        links:
        - name: Documentation
          url: https://docs.confluent.io/operator/current/overview.html
        - name: Examples and Tutorials
          url: https://github.com/confluentinc/confluent-kubernetes-examples
        - name: Product Overview (Blog)
          url: https://www.confluent.io/blog/confluent-for-kubernetes-offers-cloud-native-kafka-automation/
        maintainers:
        - email: confluent-private-cloud-team@confluent.io
          name: Confluent Private Cloud team
        maturity: stable
        provider:
          name: Confluent, Inc.
          url: https://confluent.io
        relatedImages:
        - docker.io/confluentinc/cp-enterprise-control-center-next-gen@sha256:6378a0174433685ee52a7fe2e48424d3f598827ed2a5570ec74b916102485e0d
        - docker.io/confluentinc/cp-usm-agent@sha256:28cb42bc59ae9d584059bd8b958dd62d5ad99aa8fc0ee36560d6fd3e129f631b
        - docker.io/confluentinc/cp-enterprise-alertmanager@sha256:fcce6f5311c26cd58427a039530a9f8dfd009249ff5a519694aa945d34502252
        - docker.io/confluentinc/cp-ksqldb-server@sha256:eb86c4eef5b7b9b52ca2e6424d20c5df004e9f9ccced4186621ef8b5a5eaf03e
        - docker.io/confluentinc/cp-server-connect@sha256:ae35ba598decf8e996d522899919a2cdf5d3a26a6bfdfe8532265192940f255b
        - docker.io/confluentinc/cp-server@sha256:6881860d5faf38bacfab7d5b0b2abcb8196f46ae3ca1b4a0306913374480788a
        - confluentinc/confluent-operator@sha256:c430b476e80e29fce6f3c2827fee1e28ba7aadeca903815c4329af984ff18b8f
        - docker.io/confluentinc/cp-enterprise-prometheus@sha256:db0989ef9859dbc88bc59f9b8ade86f2ba13e9dc36533e654566218328e5ff57
        - docker.io/confluentinc/cp-kafka-rest@sha256:e9462636ab87b68db3ecc178099224cdc2bad58c72762e5031ea8ec65f965c9d
        - docker.io/confluentinc/cpc-gateway@sha256:2d96d7141579258242367e7084dec64a5c7e19330e833f4c48a132fbdebf6737
        - registry.connect.redhat.com/confluentinc/confluent-for-kubernetes-v2@sha256:6a9a9c3edfe62d8567637ec20b02eb012299004dd12f034e49118f5cc57e4f51
        - docker.io/confluentinc/confluent-init-container@sha256:7b20d6a4ffbbc062662162e75db5365ca057cb95776e94ad5fb221219bb2232a
        - docker.io/confluentinc/cp-schema-registry@sha256:b23fd1be38cddd3e7da3d940d54000384441628148565ae4f43a59242f3a994a
        - docker.io/confluentinc/confluent-operator@sha256:c430b476e80e29fce6f3c2827fee1e28ba7aadeca903815c4329af984ff18b8f
        version: 3.1.1
      entries:
      - name: confluent-for-kubernetes.v3.1.1
        version: 3.1.1
      name: "3.1"
    defaultChannel: "3.1"
    packageName: confluent-for-kubernetes
    provider:
      name: Confluent, Inc.
      url: https://confluent.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: https://horreum.hyperfoil.io
    name: horreum-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: horreum-operator.v0.7.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hyperfoil.io/v1alpha1",
                "kind": "Horreum",
                "metadata": {
                  "name": "horreum"
                },
                "spec": {
                  "nodeHost": "127.0.0.1"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/hyperfoil/horreum-operator:0.7.9
          createdAt: "2023-06-13T10:42:39Z"
          description: Performance results repository
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/hyperfoil/horreum-operator
          support: Red Hat Application Runtimes Performance Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Horreum is the object configuring Horreum performance results
              repository
            displayName: Horreum
            kind: Horreum
            name: horreums.hyperfoil.io
            version: v1alpha1
        description: Performance results repository
        displayName: Horreum
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - performance
        - repository
        - database
        - results
        - hyperfoil
        - benchmark
        links:
        - name: Horreum Operator
          url: https://horreum-operator.domain
        maintainers:
        - email: rvansa@redhat.com
          name: Radim Vansa
        - email: spederse@redhat.com
          name: Ståle W. Pedersen
        - email: wreicher@redhat.com
          name: Will Reichert
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat, Inc.
          url: https://horreum.hyperfoil.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/hyperfoil/horreum-operator:0.7.9
        - quay.io/openshift-community-operators/horreum-operator@sha256:a9d82ce368b015e45b93f917d4069978a0ba323f3dd684d470cdfd262e0c9f05
        version: 0.7.9
      entries:
      - name: horreum-operator.v0.7.9
        version: 0.7.9
      - name: horreum-operator.v0.2.0
        version: 0.2.0
      name: alpha
    defaultChannel: alpha
    packageName: horreum-operator
    provider:
      name: Red Hat, Inc.
      url: https://horreum.hyperfoil.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-memorydb-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-memorydb-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "ACL",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "ParameterGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "Snapshot",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "SubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/memorydb-controller:1.2.0
          createdAt: "2025-11-29T05:06:38Z"
          description: Amazon MemoryDB for Redis controller is a service controller
            for managing MemoryDB resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ACL represents the state of an AWS memorydb ACL resource.
            displayName: ACL
            kind: ACL
            name: acls.memorydb.services.k8s.aws
            version: v1alpha1
          - description: Cluster represents the state of an AWS memorydb Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.memorydb.services.k8s.aws
            version: v1alpha1
          - description: ParameterGroup represents the state of an AWS memorydb ParameterGroup
              resource.
            displayName: ParameterGroup
            kind: ParameterGroup
            name: parametergroups.memorydb.services.k8s.aws
            version: v1alpha1
          - description: Snapshot represents the state of an AWS memorydb Snapshot
              resource.
            displayName: Snapshot
            kind: Snapshot
            name: snapshots.memorydb.services.k8s.aws
            version: v1alpha1
          - description: SubnetGroup represents the state of an AWS memorydb SubnetGroup
              resource.
            displayName: SubnetGroup
            kind: SubnetGroup
            name: subnetgroups.memorydb.services.k8s.aws
            version: v1alpha1
          - description: User represents the state of an AWS memorydb User resource.
            displayName: User
            kind: User
            name: users.memorydb.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon MemoryDB for Redis resources in AWS from within your Kubernetes cluster.

          **About Amazon MemoryDB for Redis**

          MemoryDB for Redis is a durable, in-memory database service that delivers ultra-fast performance. It is purpose-built for modern applications with microservices architectures.
          MemoryDB is compatible with Redis, a popular open source data store, enabling you to quickly build applications using the same flexible and friendly Redis data structures, APIs, and commands that they already use today. With MemoryDB, all of your data is stored in memory, which enables you to achieve microsecond read and single-digit millisecond write latency and high throughput. MemoryDB also stores data durably across multiple Availability Zones (AZs) using a Multi-AZ transactional log to enable fast failover, database recovery, and node restarts.
          Delivering both in-memory performance and Multi-AZ durability, MemoryDB can be used as a high-performance primary database for your microservices applications, eliminating the need to separately manage both a cache and durable database.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - MemoryDB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - memorydb
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon MemoryDB for Redis Developer Resources
          url: https://docs.aws.amazon.com/memorydb/?id=docs_gateway
        maintainers:
        - email: ack-maintainers@amazon.com
          name: memorydb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/memorydb-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-memorydb-controller@sha256:5bd92572f3dae9b8195368ed2491a3a2cc8fea56af1a4cbc60a0742d1461d457
        version: 1.2.0
      entries:
      - name: ack-memorydb-controller.v1.2.0
        version: 1.2.0
      - name: ack-memorydb-controller.v1.1.2
        version: 1.1.2
      - name: ack-memorydb-controller.v1.1.1
        version: 1.1.1
      - name: ack-memorydb-controller.v1.1.0
        version: 1.1.0
      - name: ack-memorydb-controller.v1.0.15
        version: 1.0.15
      - name: ack-memorydb-controller.v1.0.13
        version: 1.0.13
      - name: ack-memorydb-controller.v1.0.12
        version: 1.0.12
      - name: ack-memorydb-controller.v1.0.11
        version: 1.0.11
      - name: ack-memorydb-controller.v1.0.10
        version: 1.0.10
      - name: ack-memorydb-controller.v1.0.9
        version: 1.0.9
      - name: ack-memorydb-controller.v1.0.8
        version: 1.0.8
      - name: ack-memorydb-controller.v1.0.7
        version: 1.0.7
      - name: ack-memorydb-controller.v1.0.6
        version: 1.0.6
      - name: ack-memorydb-controller.v1.0.5
        version: 1.0.5
      - name: ack-memorydb-controller.v1.0.4
        version: 1.0.4
      - name: ack-memorydb-controller.v1.0.3
        version: 1.0.3
      - name: ack-memorydb-controller.v1.0.2
        version: 1.0.2
      - name: ack-memorydb-controller.v1.0.1
        version: 1.0.1
      - name: ack-memorydb-controller.v1.0.0
        version: 1.0.0
      - name: ack-memorydb-controller.v0.0.12
        version: 0.0.12
      - name: ack-memorydb-controller.v0.0.11
        version: 0.0.11
      - name: ack-memorydb-controller.v0.0.10
        version: 0.0.10
      - name: ack-memorydb-controller.v0.0.9
        version: 0.0.9
      - name: ack-memorydb-controller.v0.0.8
        version: 0.0.8
      - name: ack-memorydb-controller.v0.0.7
        version: 0.0.7
      - name: ack-memorydb-controller.v0.0.6
        version: 0.0.6
      - name: ack-memorydb-controller.v0.0.5
        version: 0.0.5
      - name: ack-memorydb-controller.v0.0.4
        version: 0.0.4
      - name: ack-memorydb-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-memorydb-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Arkmq-org
      provider-url: https://arkmq-org.io
    name: arkmq-org-broker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: arkmq-org-broker-operator.v2.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/arkmq-org/activemq-artemis-operator:2.1.1
          createdAt: "2025-04-04 14:35:00"
          description: An operator for managing the Apache ActiveMQ Artemis message
            broker
          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: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/arkmq-org/activemq-artemis-operator
          support: arkmq-org
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - description: Provides internal message migration on clustered broker scaledown
            displayName: ActiveMQ Artemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: ArkMQ Operator manages ActiveMQ Artemis messaging broker in the
          cloud
        displayName: ArkMQ Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - messaging
        - cloud
        - kubernetes
        - activemq
        - artemis
        - integration
        - operator
        links:
        - name: Documentation
          url: https://arkmq-org.io/docs
        - name: Repository
          url: https://github.com/arkmq-org/activemq-artemis-operator
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Arkmq-org
          url: https://arkmq-org.io
        relatedImages:
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:52f337cd5d7d5d199eebf4fc722f8c5279f652506f009efbc0f8f6de88e18718
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:4bba8828e72fd7c9d38c22ba1c2a4f7130817a4e7eac8fb63c13e86465a8e1e7
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:37ab7354273f4dcd19bad6936f10e92220d98b8c0266002221477a0e2d146c81
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:de82344daa0caeabc6559656da0af285436a687e8f371744c0c51bdbc309167d
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:1fd99a46758cd29fce846d0d590021758b2a7a3efedb817bb205359caa7d4f67
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:de52f034dc04bbf1c3a7a68f3ff040d76730bfb64b760c4420526c924613c1a0
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:edbec2276270c2f890572daf9141390bc33b5cf75621eca6e10f11bb144944f3
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:9e1fefc9a94d72a7b5a3f4e2d53ebd23e5ab221df17a5afde42ce973277838f6
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:da95bff69deb63545d9782ed20cbdd17c1a79c6b16165580bf96a1d5191e6a59
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:f63ba7261c3f9b81d3c29251a584a74b153109482753a20a960acf65bd851601
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:005074711b2af77d56309e18e44cd9a7bd7c49b0982ae312d7ca2b120100b351
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:ac9e2d43313412f8c3b4f7687181fa8cdb111937ecb19ad6f416618da8f347a4
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:3fb06f246c1beda919338aae6ab4b9d5ab03f06eb1a61c7c5278af50d822cc48
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:f10983c68aff358e285d89d827c27b3487a3ee3b8e121cdaa295bf5fa8501145
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:49f34122ab46ab5d7ead094b6e40817b62c75b6a809f67db07d68bce750da51e
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:b6f61188379def8c796c738549c099bd40bcd9bb44f5c30682c5edd136347aca
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:ddaf00914e3a412d21ec3a814e24f3d4cc382b5c4d6c21e9b1b94dde16ddf194
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:a4a0d0453f0761b9e114d0d4cc7c14091a2a9c30790f18ffa6bf1e365d5083fe
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:2d155bffd246f26f516a6075ec170babc1373c72bb664cba4e3c58521ffd3558
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:a34bcbf7585078a178e464f047e2f670eb0217ac66e409b08c4da0594f5907d3
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:39f34248f112751b7835f746016990046d21374a6514cb528632e0b06c76616b
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:a4628c2591ec06caf21a3467f6e3faeaede7fa402b4f137d943b25b4dd4ad343
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:895512e378006bc519d0b28196f61eabff27c6800e3a2951b21a19ac74cd5579
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:e2438670831bad39bb08147bbebe67ef9465899fb7750f1a5a185569f99d5fb5
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:264b33a9aad90d32a41258904f35092a141d76dcef0c115d414475444100aace
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:2895b2cf6292c951a0cdde78e755514f5d7cb43ce9f7b6e7dc381d8dfeec31ab
        - quay.io/community-operator-pipeline-prod/arkmq-org-broker-operator@sha256:7394f503ef1760490025304523ee39914c687e043f66b7629f57d235648d5e89
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:decb3932ebb5b848b90a4a23b083f0cb5237eec2844095d8c58a6798da8bb999
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:6f2da9ecd8f5021964d0dfa85144830efcfbd0462d18f18f036971e5f17b3bb6
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:f2c853ff91809282c04d5b1381ceae366518bf07b16649a61aa6c60c47f10714
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:e438bcacf099a92b143793e88c00c6ac0afb31effe4b0eed49a935c9265ad943
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:70d4c799c7d905fac27457d63e662ea72bca9e899a692e425609e4eaa45129e6
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:ffa0d7cb4068df84319776dbfb66210297da1b8466ccd5451318fc3de79736c3
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:fc9b9a4c7550d84fd90335dd4f9e0d8d39c09136c6034b28490a368368cb11f1
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:42230ce9d11a1949a5bb73b6ee218b1581f585bcd553485ee438e1c5b50fcf8b
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:4fa0e5420f0f3fc3669b2268de12abcf441e3b70babf07a5fbdac1b946ab33d0
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:fd94e89353cbfb282f3716da7862e087348e41a81033f5e90c45552938217c55
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:8fbdd1ba728058d5f437186b9055ca28596140068ebc69ecff4fa52717b19a82
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:b05852acb764caa16bec496eef108f5f9b66d8f300e09a0a267b7eaf4c910596
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:634f3d8fd620607b56e0360a191d23a9cb8a32ba0ba1f24fe20791ec52343586
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:474de621b3c892a7fdcb992a7c03b496f39f70c78d23f3c9159294e2db7b4bd4
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:3bbfb6177e4839087f615a01ee54f9e06a95acaddbb083e11851b6af9315dbf0
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:5e768aefade6d18cd65cb1eb5ee233844f9f7e7b52631f93a0982b67d382239d
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:0acbcc75f2d83d54dc10fcf3f59c35979d27085265f13869184d1ea5c372fd25
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:719178251893def955e444e706ff07042ea98d294671315d95da504c1f47de24
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:93168fd8cd4fb32f041795afb8fb0e21cf81081d6cc463a44356e153dc1ad032
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:673384959d87408cab9fc92f305dc47b3e7bad3a81b182de104d47f76e7df4e1
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:58b4effb8b83666c59adb657149dc0f037604254b4cd538de0cfaf50f9c14ddd
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:b293c1269166cc6181f68b8d803fdfcf20fdbd5df2787ed0453724b22e298fb2
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:f3e8ebad14c2385e47b260113beb7d6467f834aa04bc37eb12bc9bbc92b7b8b7
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:9bbb915855f29ea16950a3fd50d0b9bac25f82cba7d197579e04d9c33a5b02c4
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:56bae938a6b4cd87f9f5284931f440f9b9d116cda3b63b13f83a4b1c6c641959
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:88a0098a628fe43a9b422f8ebb774086fb65ed389a195e2779482a4a63447e28
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:d7dbd0c929c7ea0c213fa0824fd8135b381784a8873dee45256a6fb53a85f937
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:81590ec33b2f00775d3c6596f610887b670de7c0b89148b09eab7584f5b0b0ec
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:661931ae563086458a15b387e9d7b2561a64b48d4790529f636ed78cf399f579
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:f25db980c3229e66cf48690aa175f6f93e3dce3974c0e70ab23af6462e7d1893
        - quay.io/arkmq-org/activemq-artemis-operator:2.1.1
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:4be60cfa2a300b2eef9b5f10ea756bd3f55d75fbd8890232d907f8d64080449b
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:c9e0442ed7a2f3d378e52b92b85d6bfbf650896948890ef912e7bedf478fea52
        version: 2.1.1
      entries:
      - name: arkmq-org-broker-operator.v2.1.1
        version: 2.1.1
      - name: arkmq-org-broker-operator.v2.1.0
        version: 2.1.0
      name: stable
    defaultChannel: stable
    packageName: arkmq-org-broker-operator
    provider:
      name: Arkmq-org
      url: https://arkmq-org.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://skupper.io
    name: skupper-netobs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: skupper-netobs-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability.skupper.io/v2alpha1",
                "kind": "NetworkObserver",
                "metadata": {
                  "name": "networkobserver-sample"
                },
                "spec": {
                  "auth": {
                    "basic": {
                      "create": true,
                      "secretName": ""
                    },
                    "openshift": {
                      "cookieSecretName": "",
                      "createCookieSecret": true,
                      "serviceAccount": {
                        "create": true,
                        "nameOverride": ""
                      }
                    },
                    "strategy": "openshift"
                  },
                  "extraArgs": null,
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "registry.redhat.io/service-interconnect/skupper-network-observer-rhel9",
                    "tag": "2.1.2"
                  },
                  "ingress": {
                    "annotations": {},
                    "className": "",
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "chart-example.local",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": []
                  },
                  "nameOverride": "",
                  "nginx": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/ubi9/nginx-124",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": 9.6
                  },
                  "openshiftOauthProxy": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/openshift4/ose-oauth-proxy-rhel9",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": "v4.19.0"
                  },
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "prometheus": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/openshift4/ose-prometheus-rhel9",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": "v4.16.0"
                  },
                  "resources": {},
                  "route": {
                    "enabled": true
                  },
                  "router": {
                    "certificate": {
                      "create": true,
                      "nameOverride": ""
                    },
                    "endpoint": "amqps://skupper-router-local"
                  },
                  "securityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    }
                  },
                  "service": {
                    "port": 443,
                    "type": "ClusterIP"
                  },
                  "skipManagementLabels": false,
                  "tls": {
                    "openshiftIssued": true,
                    "secretName": "",
                    "skupperIssued": false
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-network-observer-rhel9-operator@sha256:c3bf7a7270556aa9fea22bfc71f90260b58d37fc21651704235c4906d7b4f958
          createdAt: "2025-10-21T14:13:17Z"
          description: Red Hat Service Interconnect Network Observer Operator provides
            the ability to monitor and observe a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NetworkObserver
            name: networkobservers.observability.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect Network Observer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-network-observer-operator-bundle@sha256:d5ffeb26ed57dd380b64dfc06c19991eae370dfb34f0a521dc250328430e0afb
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9-operator@sha256:c3bf7a7270556aa9fea22bfc71f90260b58d37fc21651704235c4906d7b4f958
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/ubi9/nginx-124@sha256:aa73fdb10af2bf24611ba714a412c2e65cec88a00eee628a0f2a75e564ec18f2
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:fd28171b7db948fcdb0902265f90ac76cfebb93c06c465736c0fdcceda062ff3
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        version: 2.1.2-rh-2
      entries:
      - name: skupper-netobs-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-netobs-operator.v2.1.1-rh-8
        version: 2.1.1-rh-8
      name: stable-2
    - currentCSV: skupper-netobs-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability.skupper.io/v2alpha1",
                "kind": "NetworkObserver",
                "metadata": {
                  "name": "networkobserver-sample"
                },
                "spec": {
                  "auth": {
                    "basic": {
                      "create": true,
                      "secretName": ""
                    },
                    "openshift": {
                      "cookieSecretName": "",
                      "createCookieSecret": true,
                      "serviceAccount": {
                        "create": true,
                        "nameOverride": ""
                      }
                    },
                    "strategy": "openshift"
                  },
                  "extraArgs": null,
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "registry.redhat.io/service-interconnect/skupper-network-observer-rhel9",
                    "tag": "2.1.2"
                  },
                  "ingress": {
                    "annotations": {},
                    "className": "",
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "chart-example.local",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": []
                  },
                  "nameOverride": "",
                  "nginx": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/ubi9/nginx-124",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": 9.6
                  },
                  "openshiftOauthProxy": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/openshift4/ose-oauth-proxy-rhel9",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": "v4.19.0"
                  },
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "prometheus": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/openshift4/ose-prometheus-rhel9",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": "v4.16.0"
                  },
                  "resources": {},
                  "route": {
                    "enabled": true
                  },
                  "router": {
                    "certificate": {
                      "create": true,
                      "nameOverride": ""
                    },
                    "endpoint": "amqps://skupper-router-local"
                  },
                  "securityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    }
                  },
                  "service": {
                    "port": 443,
                    "type": "ClusterIP"
                  },
                  "skipManagementLabels": false,
                  "tls": {
                    "openshiftIssued": true,
                    "secretName": "",
                    "skupperIssued": false
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-network-observer-rhel9-operator@sha256:c3bf7a7270556aa9fea22bfc71f90260b58d37fc21651704235c4906d7b4f958
          createdAt: "2025-10-21T14:13:17Z"
          description: Red Hat Service Interconnect Network Observer Operator provides
            the ability to monitor and observe a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NetworkObserver
            name: networkobservers.observability.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect Network Observer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/ubi9/nginx-124@sha256:aa73fdb10af2bf24611ba714a412c2e65cec88a00eee628a0f2a75e564ec18f2
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:fd28171b7db948fcdb0902265f90ac76cfebb93c06c465736c0fdcceda062ff3
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        - registry.redhat.io/service-interconnect/skupper-network-observer-operator-bundle@sha256:d5ffeb26ed57dd380b64dfc06c19991eae370dfb34f0a521dc250328430e0afb
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9-operator@sha256:c3bf7a7270556aa9fea22bfc71f90260b58d37fc21651704235c4906d7b4f958
        version: 2.1.2-rh-2
      entries:
      - name: skupper-netobs-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-netobs-operator.v2.1.1-rh-8
        version: 2.1.1-rh-8
      name: stable-2.1
    defaultChannel: stable-2
    packageName: skupper-netobs-operator
    provider:
      name: Red Hat
      url: https://skupper.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: smb-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: smb-csi-driver-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-smb-csi-driver-rhel9-operator@sha256:8adc4f5f3b02a79344012bb44539ed9f5c87534acb771337ab53d527b5b37adf
          createdAt: "2021-07-14T00:00:00Z"
          description: Install and configure CIFS/SMB CSI driver.
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=4.15.0-0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/csi-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          CIFS/SMB CSI Driver Operator provides Server Message Block (SMB) CSI Driver that enables you to create and mount CIFS/SMB PersistentVolumes.
        displayName: CIFS/SMB CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - smb
        - cifs
        links:
        - name: Documentation
          url: https://github.com/openshift/csi-operator
        - name: Source Repository
          url: https://github.com/openshift/csi-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-smb-csi-driver-rhel9-operator@sha256:8adc4f5f3b02a79344012bb44539ed9f5c87534acb771337ab53d527b5b37adf
        - registry.redhat.io/openshift4/ose-smb-csi-driver-rhel9@sha256:a6273e028d0e483241532b3a92cf891ecabedb47f39c167898bfecde5154769c
        - registry.redhat.io/openshift4/ose-smb-csi-driver-operator-bundle@sha256:14912624bed0a1061894c1efbc392f6dec8361fb3b8e92d73b17e9dd95078329
        version: 4.20.0-202512081147
      entries:
      - name: smb-csi-driver-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: smb-csi-driver-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: smb-csi-driver-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: smb-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: smb-csi-driver-operator.v4.20.0-202510290158
        version: 4.20.0-202510290158
      - name: smb-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: smb-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/trustification/trusted-profile-analyzer-operator
    name: rhtpa-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhtpa-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtpa.io/v1",
                "kind": "TrustedProfileAnalyzer",
                "metadata": {
                  "name": "trustedprofileanalyzer-sample"
                },
                "spec": {
                  "appDomain": "change-me",
                  "collector": {},
                  "database": {},
                  "image": {},
                  "infrastructure": {
                    "port": 9010
                  },
                  "ingress": {},
                  "metrics": {
                    "enabled": false
                  },
                  "modules": {
                    "createDatabase": {
                      "enabled": false,
                      "image": {}
                    },
                    "createImporters": {
                      "enabled": false,
                      "image": {},
                      "importers": {}
                    },
                    "importer": {
                      "concurrency": 1,
                      "enabled": true,
                      "image": {},
                      "infrastructure": {},
                      "metrics": {},
                      "replicas": 1,
                      "resources": {
                        "requests": {
                          "cpu": 1,
                          "memory": "8Gi"
                        }
                      },
                      "rust": {},
                      "tracing": {},
                      "workingDirectory": {
                        "size": "32Gi"
                      }
                    },
                    "migrateDatabase": {
                      "enabled": false,
                      "image": {}
                    },
                    "server": {
                      "enabled": true,
                      "image": {},
                      "infrastructure": {},
                      "ingress": {},
                      "metrics": {},
                      "replicas": 1,
                      "resources": {
                        "requests": {
                          "cpu": 1,
                          "memory": "8Gi"
                        }
                      },
                      "rust": {},
                      "tracing": {}
                    }
                  },
                  "oidc": {
                    "clients": {
                      "cli": {
                        "clientSecret": null
                      },
                      "frontend": {}
                    }
                  },
                  "openshift": {
                    "useServiceCa": true
                  },
                  "partOf": "trustify",
                  "replicas": 1,
                  "rust": {},
                  "storage": {},
                  "tls": {},
                  "tracing": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhtpa/rhtpa-rhel9-operator@sha256:82c7c370c029a8fc6a0a918c16ea14e25aab8aa8b87ca586b31f3aa5e8633b39
          createdAt: "2025-11-13T15:04:16Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Profile Analyzer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trustification/trusted-profile-analyzer-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: TrustedProfileAnalyzer
            name: trustedprofileanalyzers.rhtpa.io
            version: v1
        description: |
          Red Hat Trusted Profile Analyzer (RHTPA) provides a single source of truth for your software inventory across all your environments. You can verify the integrity of your in-house and third-party applications against their respective Software Bill of Materials (SBOM) document.  Trusted Profile Analyzer provides vulnerability, component and license transparency, strengthens your software supply chain security, and enables an accurate, up-to-date understanding of your software inventory.

          Features and Benefits:

          Enhanced Software Supply Chain Security: Offers critical transparency and integrity verification across the entire software lifecycle.

          Reduced Operational Risk: Proactively identifies and helps remediate vulnerabilities minimizing risk and compliance violations.

          Improved Compliance and Auditability: Simplifies the process of meeting regulatory requirements for software transparency and integrity by providing verifiable documentation and continuous monitoring.

          Faster Remediation and Incident Response: Provides targeted, actionable insights to prioritize and accelerate the patching and remediation of vulnerabilities.

          Increased Developer Productivity & Trust: Integrates security into existing workflows without significant overhead, allowing developers to build and deploy with greater confidence in the integrity of their code and components.

          Centralized Visibility and Control: Consolidates disparate security information into a single pane of glass, offering a holistic view of your application security posture.

          Red Hat Trusted Profile Analyzer is a crucial tool for any organization running applications on OpenShift that needs to confidently understand, verify, and secure the software they deploy, especially in an era of complex software supply chains and increasing regulatory scrutiny.

          [Documentation](https://docs.redhat.com/en/documentation/red_hat_trusted_profile_analyzer/2.2).
        displayName: Red Hat Trusted Profile Analyzer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - rhtpa
        - trusted-profile-analyzer
        links:
        - name: Trusted Profile Analyzer Operator
          url: https://github.com/trustification/trusted-profile-analyzer-operator
        maintainers:
        - email: rhtpa-support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: Red Hat
          url: https://github.com/trustification/trusted-profile-analyzer-operator
        relatedImages:
        - registry.redhat.io/rhtpa/rhtpa-operator-bundle@sha256:296c7c5ce1236c732583922dcf61dc2dfc5b872cc633203ae8d983b7105535f1
        - registry.redhat.io/rhtpa/rhtpa-rhel9-operator@sha256:82c7c370c029a8fc6a0a918c16ea14e25aab8aa8b87ca586b31f3aa5e8633b39
        version: 1.1.0
      entries:
      - name: rhtpa-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    defaultChannel: stable-v1.1
    packageName: rhtpa-operator
    provider:
      name: Red Hat
      url: https://github.com/trustification/trusted-profile-analyzer-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hitachi
      provider-url: ""
    name: hspc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hspc-operator.v1.17.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.hitachi.com/v1",
                "kind": "HSPC",
                "metadata": {
                  "name": "hspc",
                  "namespace": "kube-system"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Storage
          containerImage: registry.hitachivantara.com/hitachicsi-oci-oss/hspc-operator@sha256:3833ceb961234ea1e57eac144870995f565167ba99367e30187ccd9d4d6c5d23
          createdAt: "2025-12-15T10:35:09Z"
          description: An operator for managing Hitachi Storage Plug-in for Containers
            CSI driver
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          support: Hitachi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HSPC is the Schema for the hspcs API
            displayName: HSPC
            kind: HSPC
            name: hspcs.csi.hitachi.com
            version: v1
        description: |-
          ## About
          Hitachi Storage Plug-in for Containers is a software plugin component for Kubernetes and OpenShift environments that is used to create and manage persistent block storage from Hitachi Virtual Storage Platform One storages.


          For full documentation, go to our [Product Documentation site](https://docs.hitachivantara.com/home) and refer to the reference guide for HSPC v3.17.3.

          ## Requirements

          ### Supported Driver Version

          * HSPC v3.17.3
        displayName: Hitachi Storage Plug-in for Containers
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hitachi
        - Storage
        - Container Storage Interface
        - CSI
        links:
        - name: Product Documentation
          url: https://docs.hitachivantara.com/home
        maintainers:
        - email: Container-info@hitachivantara.com
          name: Hitachi
        maturity: stable
        provider:
          name: Hitachi
        relatedImages:
        - registry.k8s.io/sig-storage/csi-attacher@sha256:5aaefc24f315b182233c8b6146077f8c32e274d864cb03c632206e78bd0302da
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:672e45d6a55678abc1d102de665b5cbd63848e75dc7896f238c8eaaf3c7d322f
        - registry.k8s.io/sig-storage/csi-attacher@sha256:47ab8aebebdc59316004ba8d51a903637d808f4e62a6d0f599ed3c2483cea901
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:bb057f866177d5f4139a1527e594499cbe0feeb67b63aaca8679dfdf0a6016f9
        - registry.hitachivantara.com/hitachicsi-oci-oss/hspc-csi-driver@sha256:dbc6d8eab86e97187589467e8429dd90435fa0679f489ce69c78574053b90250
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:81d32545fb1b2c319bfeb36a70db4b4d3aea9c51c0574b209b8f64750b32d2f0
        - registry.hitachivantara.com/hitachicsi-oci-oss/hspc-operator@sha256:3833ceb961234ea1e57eac144870995f565167ba99367e30187ccd9d4d6c5d23
        - registry.k8s.io/sig-storage/livenessprobe@sha256:13f6b1f9d0514b859e549e20b731d93c90a144186deb68bfc931e3dbf9041afc
        - registry.k8s.io/sig-storage/csi-resizer@sha256:5e7cbb63fd497fa913caa21fee1a69f727c220c6fa83c5f8bb0995e2ad73a474
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:0d23a6fd60c421054deec5e6d0405dc3498095a5a597e175236c0692f4adee0f
        - registry.k8s.io/sig-storage/csi-resizer@sha256:706f7cdcccd30ca5f0e94d548e2e0c658f69c0fe4b68a5bf37818a04ca618d3d
        - registry.connect.redhat.com/hitachi/hspc-operator-bundle@sha256:1c7e40b02bfd5013796e50dbf4b13bd733a23f8599b653faad0f15498063ac0e
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:7b3d53cfefcb1c8836d5ac45f64dfdbf3fe6c813251b0b2ec79af7812cc53bfa
        - registry.k8s.io/sig-storage/livenessprobe@sha256:57dba2ee519e49afacf899af7e265d977b02ec4c1f60c9b636ab0e575612dbfd
        version: 1.17.3
      entries:
      - name: hspc-operator.v1.17.3
        version: 1.17.3
      name: stable
    defaultChannel: stable
    packageName: hspc-operator
    provider:
      name: Hitachi
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EPAM Delivery Platform
      provider-url: https://epam.github.io/edp-install/
    name: edp-keycloak-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: edp-keycloak-operator.v1.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "keycloak-sample"
                },
                "spec": {
                  "secret": "my-keycloak-secret",
                  "url": "https://example.com"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakAuthFlow",
                "metadata": {
                  "name": "keycloakauthflow-sample"
                },
                "spec": {
                  "alias": "MyBrowser",
                  "authenticationExecutions": [
                    {
                      "authenticator": "auth-cookie",
                      "priority": 0,
                      "requirement": "ALTERNATIVE"
                    },
                    {
                      "authenticator": "identity-provider-redirector",
                      "authenticatorConfig": {
                        "alias": "my-alias",
                        "config": {
                          "defaultProvider": "my-alias"
                        }
                      },
                      "priority": 1,
                      "requirement": "REQUIRED"
                    }
                  ],
                  "builtIn": false,
                  "description": "browser with idp",
                  "providerId": "basic-flow",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  },
                  "topLevel": true
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "keycloakclient-sample"
                },
                "spec": {
                  "advancedProtocolMappers": true,
                  "clientId": "agocd",
                  "defaultClientScopes": [
                    "argocd_groups"
                  ],
                  "directAccess": true,
                  "public": false,
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  },
                  "secret": "$client-secret-name:client-secret-key",
                  "webUrl": "https://argocd.example.com"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakClientScope",
                "metadata": {
                  "name": "keycloakclientscope-sample"
                },
                "spec": {
                  "description": "Group Membership",
                  "name": "groups",
                  "protocol": "openid-connect",
                  "protocolMappers": [
                    {
                      "config": {
                        "access.token.claim": "true",
                        "claim.name": "groups",
                        "full.path": "false",
                        "id.token.claim": "true",
                        "userinfo.token.claim": "true"
                      },
                      "name": "groups",
                      "protocol": "openid-connect",
                      "protocolMapper": "oidc-group-membership-mapper"
                    }
                  ],
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "keycloakrealm-sample"
                },
                "spec": {
                  "id": "d1-id-kc-realm-name",
                  "keycloakRef": {
                    "kind": "Keycloak",
                    "name": "keycloak-sample"
                  },
                  "passwordPolicy": [
                    {
                      "type": "forceExpiredPasswordChange",
                      "value": "365"
                    },
                    {
                      "type": "length",
                      "value": "8"
                    }
                  ],
                  "realmEventConfig": {
                    "adminEventsDetailsEnabled": false,
                    "adminEventsEnabled": true,
                    "enabledEventTypes": [
                      "UPDATE_CONSENT_ERROR",
                      "CLIENT_LOGIN"
                    ],
                    "eventsEnabled": true,
                    "eventsExpiration": 15000,
                    "eventsListeners": [
                      "jboss-logging"
                    ]
                  },
                  "realmName": "d2-id-kc-realm-name",
                  "ssoAutoRedirectEnabled": false,
                  "ssoRealmEnabled": false,
                  "ssoRealmName": "openshift"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmComponent",
                "metadata": {
                  "name": "keycloakrealmcomponent-sample"
                },
                "spec": {
                  "config": {
                    "allowPasswordAuthentication": [
                      "true"
                    ],
                    "cachePolicy": [
                      "EVICT_WEEKLY"
                    ],
                    "debug": [
                      "true"
                    ],
                    "editMode": [
                      "READ_ONLY"
                    ],
                    "enabled": [
                      "true"
                    ],
                    "evictionDay": [
                      "3"
                    ],
                    "evictionHour": [
                      "5"
                    ],
                    "evictionMinute": [
                      "7"
                    ],
                    "kerberosRealm": [
                      "test-realm"
                    ],
                    "keyTab": [
                      "test-key-tab"
                    ],
                    "priority": [
                      "0"
                    ],
                    "serverPrincipal": [
                      "srv-principal-test"
                    ],
                    "updateProfileFirstLogin": [
                      "true"
                    ]
                  },
                  "name": "cr-kerb-test",
                  "providerId": "kerberos",
                  "providerType": "org.keycloak.storage.UserStorageProvider",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmGroup",
                "metadata": {
                  "name": "keycloakrealmgroup-sample"
                },
                "spec": {
                  "name": "ArgoCDAdmins",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmIdentityProvider",
                "metadata": {
                  "name": "keycloakrealmidentityprovider-sample"
                },
                "spec": {
                  "alias": "instagram",
                  "authenticateByDefault": false,
                  "config": {
                    "clientId": "foo",
                    "clientSecret": "$secretName:secretKey",
                    "hideOnLoginPage": "true",
                    "syncMode": "IMPORT",
                    "useJwksUrl": "true"
                  },
                  "enabled": true,
                  "firstBrokerLoginFlowAlias": "first broker login",
                  "mappers": [
                    {
                      "config": {
                        "role": "role-tr",
                        "syncMode": "INHERIT"
                      },
                      "identityProviderAlias": "instagram",
                      "identityProviderMapper": "oidc-hardcoded-role-idp-mapper",
                      "name": "test3212"
                    },
                    {
                      "config": {
                        "attribute": "foo",
                        "attribute.value": "bar",
                        "syncMode": "IMPORT"
                      },
                      "identityProviderAlias": "instagram",
                      "identityProviderMapper": "hardcoded-attribute-idp-mapper",
                      "name": "test-33221"
                    }
                  ],
                  "providerId": "instagram",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmRole",
                "metadata": {
                  "name": "keycloakrealmrole-sample"
                },
                "spec": {
                  "composite": true,
                  "description": "default developer role",
                  "name": "developer",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmRoleBatch",
                "metadata": {
                  "name": "keycloakrealmrolebatch-sample"
                },
                "spec": {
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  },
                  "roles": [
                    {
                      "composite": true,
                      "description": "default developer role",
                      "isDefault": false,
                      "name": "developer"
                    },
                    {
                      "composite": true,
                      "description": "default administrator role",
                      "isDefault": false,
                      "name": "administrator"
                    }
                  ]
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmUser",
                "metadata": {
                  "name": "keycloakrealmuser-sample"
                },
                "spec": {
                  "attributes": {
                    "baz": "jazz",
                    "foo": "bar"
                  },
                  "email": "john.snow13@example.com",
                  "emailVerified": true,
                  "enabled": true,
                  "firstName": "John",
                  "keepResource": true,
                  "lastName": "Snow",
                  "password": "12345678",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  },
                  "requiredUserActions": [
                    "UPDATE_PASSWORD"
                  ],
                  "username": "john.snow13"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1alpha1",
                "kind": "ClusterKeycloak",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "edp-keycloak-operator",
                    "app.kubernetes.io/instance": "clusterkeycloak-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "clusterkeycloak",
                    "app.kubernetes.io/part-of": "edp-keycloak-operator"
                  },
                  "name": "clusterkeycloak-sample"
                },
                "spec": {
                  "secret": "keycloak-access",
                  "url": "https://keycloak.example.com"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1alpha1",
                "kind": "ClusterKeycloakRealm",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "edp-keycloak-operator",
                    "app.kubernetes.io/instance": "clusterkeycloakrealm-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "clusterkeycloakrealm",
                    "app.kubernetes.io/part-of": "edp-keycloak-operator"
                  },
                  "name": "clusterkeycloakrealm-sample"
                },
                "spec": {
                  "clusterKeycloakRef": "clusterkeycloak-sample",
                  "realmName": "realm-sample"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          containerImage: docker.io/epamedp/keycloak-operator:1.19.0
          createdAt: "2023-11-15T16:04:45Z"
          description: An Operator for managing Keycloak
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/epam/edp-keycloak-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterKeycloakRealm is the Schema for the clusterkeycloakrealms
              API.
            displayName: Cluster Keycloak Realm
            kind: ClusterKeycloakRealm
            name: clusterkeycloakrealms.v1.edp.epam.com
            version: v1alpha1
          - description: ClusterKeycloak is the Schema for the clusterkeycloaks API.
            displayName: Cluster Keycloak
            kind: ClusterKeycloak
            name: clusterkeycloaks.v1.edp.epam.com
            version: v1alpha1
          - description: KeycloakAuthFlow is the Schema for the keycloak authentication
              flow API.
            displayName: Keycloak Auth Flow
            kind: KeycloakAuthFlow
            name: keycloakauthflows.v1.edp.epam.com
            version: v1
          - description: KeycloakClient is the Schema for the keycloak clients API.
            displayName: Keycloak Client
            kind: KeycloakClient
            name: keycloakclients.v1.edp.epam.com
            version: v1
          - description: KeycloakClientScope is the Schema for the keycloakclientscopes
              API.
            displayName: Keycloak Client Scope
            kind: KeycloakClientScope
            name: keycloakclientscopes.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmComponent is the Schema for the keycloak component
              API.
            displayName: Keycloak Realm Component
            kind: KeycloakRealmComponent
            name: keycloakrealmcomponents.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmGroup is the Schema for the keycloak group API.
            displayName: Keycloak Realm Group
            kind: KeycloakRealmGroup
            name: keycloakrealmgroups.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmIdentityProvider is the Schema for the keycloak
              realm identity provider API.
            displayName: Keycloak Realm Identity Provider
            kind: KeycloakRealmIdentityProvider
            name: keycloakrealmidentityproviders.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmRoleBatch is the Schema for the keycloak roles
              API.
            displayName: Keycloak Realm Role Batch
            kind: KeycloakRealmRoleBatch
            name: keycloakrealmrolebatches.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmRole is the Schema for the keycloak group API.
            displayName: Keycloak Realm Role
            kind: KeycloakRealmRole
            name: keycloakrealmroles.v1.edp.epam.com
            version: v1
          - description: KeycloakRealm is the Schema for the keycloak realms API.
            displayName: Keycloak Realm
            kind: KeycloakRealm
            name: keycloakrealms.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmUser is the Schema for the keycloak user API.
            displayName: Keycloak Realm User
            kind: KeycloakRealmUser
            name: keycloakrealmusers.v1.edp.epam.com
            version: v1
          - description: Keycloak is the Schema for the keycloaks API.
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.v1.edp.epam.com
            version: v1
        description: |
          Keycloak Operator is an operator that is responsible for establishing
          a connection to provided Keycloak Server, reconciling Keycloak entities (realms,
          roles, groups, users, etc) according to the created CRs.

          ## Quick Start

          1. Create a User in the Keycloak `Master` realm, and assign a `create-realm` role.

          2. Insert newly created user credentials into Kubernetes secret:

              ```yaml
              apiVersion: v1
              kind: Secret
              metadata:
                name:  keycloak-access
              type: Opaque
              data:
                username: dXNlcg==   # base64-encoded value of "user"
                password: cGFzcw==   # base64-encoded value of "pass"
              ```

          3. Create Custom Resource `kind: Keycloak` with Keycloak instance URL and secret created on the previous step:

              ```yaml
              apiVersion: v1.edp.epam.com/v1
              kind: Keycloak
              metadata:
                name: keycloak-sample
              spec:
                secret: keycloak-access             # Secret name
                url: https://keycloak.example.com   # Keycloak URL
              ```

              Wait for the `.status` field with  `status.connected: true`

          4. Create Keycloak realm and group using Custom Resources:

            ```yaml
            apiVersion: v1.edp.epam.com/v1
            kind: KeycloakRealm
            metadata:
              name: keycloakrealm-sample
            spec:
              realmName: realm-sample
              keycloakOwner: keycloak-sample   # the name of `kind: Keycloak`
              ```

              ```yaml
              apiVersion: v1.edp.epam.com/v1
              kind: KeycloakRealmGroup
              metadata:
                name: argocd-admins
              spec:
                name: ArgoCDAdmins
                realm: keycloakrealm-sample   # the name of `kind: KeycloakRealm`
              ```
        displayName: EDP Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - authentication
        - authorization
        - edp
        - idp
        - keycloak
        - oauth
        - oidc
        - operator
        - saml
        - sso
        links:
        - name: Edp Keycloak Operator
          url: https://github.com/epam/edp-keycloak-operator
        maintainers:
        - email: SupportEPMD-EDP@epam.com
          name: epmd-edp
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: EPAM Delivery Platform
          url: https://epam.github.io/edp-install/
        relatedImages:
        - docker.io/epamedp/keycloak-operator:1.19.0
        - quay.io/openshift-community-operators/edp-keycloak-operator@sha256:82ff141bb86599f12d4a516fd1b6c5252f9ff24ef2547be6c58e2f3d88219914
        version: 1.19.0
      entries:
      - name: edp-keycloak-operator.v1.19.0
        version: 1.19.0
      - name: edp-keycloak-operator.v1.18.2
        version: 1.18.2
      - name: edp-keycloak-operator.v1.17.1
        version: 1.17.1
      - name: edp-keycloak-operator.v1.13.0
        version: 1.13.0
      name: alpha
    defaultChannel: alpha
    packageName: edp-keycloak-operator
    provider:
      name: EPAM Delivery Platform
      url: https://epam.github.io/edp-install/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      operatorframework.io/os.zos: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/file-integrity-operator
    name: file-integrity-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: file-integrity-operator.v0.1.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fileintegrity.openshift.io/v1alpha1",
                "kind": "FileIntegrity",
                "metadata": {
                  "name": "example-fileintegrity",
                  "namespace": "openshift-file-integrity"
                },
                "spec": {
                  "config": {},
                  "debug": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.6 <0.1.13'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-file-integrity
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          repository: https://github.com/openshift/file-integrity-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileIntegrity is the Schema for the fileintegrities API
            kind: FileIntegrity
            name: fileintegrities.fileintegrity.openshift.io
            version: v1alpha1
          - description: FileIntegrityNodeStatus defines the status of a specific
              node
            kind: FileIntegrityNodeStatus
            name: fileintegritynodestatuses.fileintegrity.openshift.io
            version: v1alpha1
        description: An operator that manages file integrity checks on nodes.
        displayName: File Integrity Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Integrity
        - security
        links:
        - name: File Integrity Operator
          url: https://file-integrity-operator.domain
        maintainers:
        - email: mrogers@redhat.com
          name: Matt Rogers
        maturity: alpha
        provider:
          name: Red Hat
          url: https://github.com/openshift/file-integrity-operator
        relatedImages:
        - registry.redhat.io/openshift4/file-integrity-rhel8-operator-metadata@sha256:7fb2750941193d64f8cca278ff7d81d3ca5e29a2ad0568dff7ddae4396548bb3
        - registry.redhat.io/openshift4/file-integrity-rhel8-operator@sha256:a65f1244636649734763164a5d6155a6f6a7b79b3950ecc03fb3c58188583599
        version: 0.1.13
      entries:
      - name: file-integrity-operator.v0.1.13
        version: 0.1.13
      name: "4.7"
    - currentCSV: file-integrity-operator.v0.1.32
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fileintegrity.openshift.io/v1alpha1",
                "kind": "FileIntegrity",
                "metadata": {
                  "name": "example-fileintegrity",
                  "namespace": "openshift-file-integrity"
                },
                "spec": {
                  "config": {},
                  "debug": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.6 <0.1.32'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-file-integrity
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/file-integrity-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileIntegrity is the Schema for the fileintegrities API
            displayName: File Integrity
            kind: FileIntegrity
            name: fileintegrities.fileintegrity.openshift.io
            version: v1alpha1
          - description: FileIntegrityNodeStatus defines the status of a specific
              node
            kind: FileIntegrityNodeStatus
            name: fileintegritynodestatuses.fileintegrity.openshift.io
            version: v1alpha1
        description: An operator that manages file integrity checks on nodes.
        displayName: File Integrity Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Integrity
        - security
        links:
        - name: File Integrity Operator upstream repo
          url: https://github.com/openshift/file-integrity-operator
        - name: File Integrity Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/file_integrity_operator/file-integrity-operator-understanding.html
        maintainers:
        - email: mrogers@redhat.com
          name: Matt Rogers
        maturity: alpha
        provider:
          name: Red Hat
          url: https://github.com/openshift/file-integrity-operator
        relatedImages:
        - registry.redhat.io/compliance/openshift-file-integrity-operator-bundle@sha256:57e796822bcd705974c0efcd6c190ce39eac2e70b9d6a0c27f69d85dfe966db2
        - registry.redhat.io/compliance/openshift-file-integrity-rhel8-operator@sha256:c3e34e6198eadb48c007cd949d8be38e26ef7d15d2f9047a8c3c89c03201e4ea
        version: 0.1.32
      entries:
      - name: file-integrity-operator.v0.1.32
        version: 0.1.32
      name: release-0.1
    - currentCSV: file-integrity-operator.v1.3.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fileintegrity.openshift.io/v1alpha1",
                "kind": "FileIntegrity",
                "metadata": {
                  "name": "example-fileintegrity",
                  "namespace": "openshift-file-integrity"
                },
                "spec": {
                  "config": {},
                  "debug": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          createdAt: "2024-11-21T18:02:08Z"
          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: "true"
          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.skipRange: '>=1.0.0 <1.3.8'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-file-integrity
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/file-integrity-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileIntegrity is the Schema for the fileintegrities API
            displayName: File Integrity
            kind: FileIntegrity
            name: fileintegrities.fileintegrity.openshift.io
            version: v1alpha1
          - description: FileIntegrityNodeStatus defines the status of a specific
              node
            kind: FileIntegrityNodeStatus
            name: fileintegritynodestatuses.fileintegrity.openshift.io
            version: v1alpha1
        description: An operator that manages file integrity checks on nodes.
        displayName: File Integrity Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Integrity
        - security
        links:
        - name: File Integrity Operator upstream repo
          url: https://github.com/openshift/file-integrity-operator
        - name: File Integrity Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/file_integrity_operator/file-integrity-operator-understanding.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
          url: https://github.com/openshift/file-integrity-operator
        relatedImages:
        - registry.redhat.io/compliance/openshift-file-integrity-operator-bundle@sha256:efb25a29f837eebee8a0b566eb2c8cf8cebce7cb16198e90d87231fe3cc35316
        - registry.redhat.io/compliance/openshift-file-integrity-rhel8-operator@sha256:ce9c08c45902954ac7c26cd3dc89a00bf99c032399db80f7d7c3f2a77584e7f6
        version: 1.3.8
      entries:
      - name: file-integrity-operator.v1.3.8
        version: 1.3.8
      - name: file-integrity-operator.v1.3.7
        version: 1.3.7
      - name: file-integrity-operator.v1.3.6
        version: 1.3.6
      - name: file-integrity-operator.v1.3.5
        version: 1.3.5
      - name: file-integrity-operator.v1.3.4
        version: 1.3.4
      - name: file-integrity-operator.v1.3.3
        version: 1.3.3
      name: stable
    - currentCSV: file-integrity-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fileintegrity.openshift.io/v1alpha1",
                "kind": "FileIntegrity",
                "metadata": {
                  "name": "example-fileintegrity",
                  "namespace": "openshift-file-integrity"
                },
                "spec": {
                  "config": {},
                  "debug": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.6 <1.0.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-file-integrity
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/file-integrity-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileIntegrity is the Schema for the fileintegrities API
            displayName: File Integrity
            kind: FileIntegrity
            name: fileintegrities.fileintegrity.openshift.io
            version: v1alpha1
          - description: FileIntegrityNodeStatus defines the status of a specific
              node
            kind: FileIntegrityNodeStatus
            name: fileintegritynodestatuses.fileintegrity.openshift.io
            version: v1alpha1
        description: An operator that manages file integrity checks on nodes.
        displayName: File Integrity Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Integrity
        - security
        links:
        - name: File Integrity Operator upstream repo
          url: https://github.com/openshift/file-integrity-operator
        - name: File Integrity Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/file_integrity_operator/file-integrity-operator-understanding.html
        maintainers:
        - email: mrogers@redhat.com
          name: Matt Rogers
        maturity: alpha
        provider:
          name: Red Hat
          url: https://github.com/openshift/file-integrity-operator
        relatedImages:
        - registry.redhat.io/compliance/openshift-file-integrity-operator-bundle@sha256:f234e8af232f2d3a9472307ae82834f96756841b8d60b8c42ac4f9ca3fd17545
        - registry.redhat.io/compliance/openshift-file-integrity-rhel8-operator@sha256:dd1dfeccf59214a0de653c3a4c4dbbc8c41640954318d13386cda73891660e4f
        version: 1.0.0
      entries:
      - name: file-integrity-operator.v1.0.0
        version: 1.0.0
      name: v1
    defaultChannel: stable
    packageName: file-integrity-operator
    provider:
      name: Red Hat
      url: https://github.com/openshift/file-integrity-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: servicemeshoperator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: servicemeshoperator.v2.6.11
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"maistra.io/v2\",\n    \"kind\":
            \"ServiceMeshControlPlane\",\n    \"metadata\": {\n      \"name\": \"basic\",\n
            \     \"namespace\": \"control-plane-namespace\"\n    },\n    \"spec\":
            {\n      \"version\": \"v2.6\",\n      \"policy\": {\n         \"type\":
            \"Istiod\"\n      },\n      \"telemetry\": {\n         \"type\": \"Istiod\"\n
            \     },\n      \"addons\": {\n        \"prometheus\": {\n          \"enabled\":
            true\n        },\n        \"kiali\": {\n          \"enabled\": true\n
            \       },\n        \"grafana\": {\n          \"enabled\": true\n        }\n
            \     }\n    }\n  },\n  {\n    \"apiVersion\": \"maistra.io/v1\",\n    \"kind\":
            \"ServiceMeshMemberRoll\",\n    \"metadata\": {\n      \"name\": \"default\",\n
            \     \"namespace\": \"control-plane-namespace\"\n    },\n    \"spec\":
            {\n      \"members\": [\n        \"your-project\",\n        \"another-of-your-projects\"
            \n      ]\n    }\n  },\n  {\n    \"apiVersion\": \"maistra.io/v1\",\n
            \   \"kind\": \"ServiceMeshMember\",\n    \"metadata\": {\n      \"name\":
            \"default\",\n      \"namespace\": \"application-namespace\"\n    },\n
            \   \"spec\": {\n      \"controlPlaneRef\": {\n        \"name\": \"basic\",\n
            \       \"namespace\": \"control-plane-namespace\"\n      }\n    }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
          createdAt: 2025-09-09T13:46:27CEST
          description: The OpenShift Service Mesh 2 Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh 2.6
            and earlier releases. OpenShift Service Mesh 2 is based on the open source
            Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.2 <2.6.11-0'
          operators.openshift.io/infrastructure-features: '["Disconnected","fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/maistra/istio-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Istio control plane installation
            displayName: Istio Service Mesh Control Plane
            kind: ServiceMeshControlPlane
            name: servicemeshcontrolplanes.maistra.io
            version: v2
          - description: Marks the containing namespace as a member of the referenced
              Service Mesh
            displayName: Istio Service Mesh Member
            kind: ServiceMeshMember
            name: servicemeshmembers.maistra.io
            version: v1
          - description: A list of namespaces in Service Mesh
            displayName: Istio Service Mesh Member Roll
            kind: ServiceMeshMemberRoll
            name: servicemeshmemberrolls.maistra.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh 2 is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh 2, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh 2
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh 2 provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh 2 supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### Joining Projects Into a Mesh

          Once an instance of Red Hat OpenShift Service Mesh 2 has been installed, it will only exercise control over services within its own
          project.  Other projects may be added into the mesh using one of two methods:

          1. A **ServiceMeshMember** resource may be created in other projects to add those projects into the mesh.  The
            **ServiceMeshMember** specifies a reference to the **ServiceMeshControlPlane** object that was used to install
            the control plane.  The user creating the **ServiceMeshMember** resource must have permission to *use* the
            **ServiceMeshControlPlane** object.  The adminstrator for the project containing the control plane can grant
            individual users or groups the *use* permissions.

          2. A **ServiceMeshMemberRoll** resource may be created in the project containing the control plane.  This resource
            contains a single *members* list of all the projects that should belong in the mesh.  The resource must be named
            *default*.  The user creating the resource must have *edit* or *admin* permissions for all projects in the
            *members* list.

          ### More Information

          * [Documentation](https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 2
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - maistra
        - servicemesh
        links:
        - name: Red Hat OpenShift Service Mesh 2
          url: https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html
        - name: Istio
          url: https://istio.io/
        - name: Operator Source Code
          url: https://github.com/Maistra/istio-operator
        - name: Bugs
          url: https://issues.redhat.com/projects/OSSM
        maintainers:
        - email: istio-feedback@redhat.com
          name: Red Hat, OpenShift Service Mesh
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d95762c62087072cadee5948c706619f09202a349e1310f0ed81bfb42f11203f
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6b4623c416fc85bd8e38904c16494fa3c4aeae25c90dc0da9763a0a87141bc04
        - registry.redhat.io/openshift4/ose-prometheus@sha256:5337742d305ff580471e9657345b384a950f82be7fd8a55196459008d2fca0a2
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:57eb7ba03f24781501a7ceed2e160ff95317869af6c2caf8f9a83990e6a6c7b9
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:a36d5db6097749c55e946bba3b8ddd13a84b1f6f68b62d0ccbad5a803e9b46fb
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:1ca80927334c6af8e386de8d44704f568b4b35d3f7afbe785a999d0fa4efd0bf
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:f2fa0849e1304457ef69020c090ad79d928faa1a90c3042a6ecaca842c2a97fa
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6fb7d50b188dc27ffb9a396edabbfb21767fe438344fd70d4754d1ec7cf27957
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:4669724b430683bf2e895c5cf941c2d99536117815999d38131e5b6f162bbef0
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:877aa4c6546146f0ed42eca52500e1adfc28a1dda80a08500f9cc9e023254ccd
        - registry.redhat.io/openshift-service-mesh/prometheus-rhel8@sha256:71e193a2d403bb06a7a76686b376985315aa0c32f495b8b9dacd73c7ccce2af3
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:515c5d9e6700fae981b0ea3807436b250acb1534e9ecf50043e5df8474e66dce
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:a3d65983d46dcf47b94f26e7265ed32082208ce08abcf3587a9a4e15c19b274a
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:c77183e50a34d33b5e2fede60350f54b18ab3536c3189e331569d5df862d9979
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:d16a60204d266bf4cc266c005fabf175b533b827500f171013884a713c88857a
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:3dc1bddb070fd530ce6251666989b9a849de90591718a578da4a9900f98d93ec
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:e734ca310e09f737b4f06f3ecfeb9ac12971c63884fdcc27e3bebef9d5b18722
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:49bd04cf8d17d568be9649e706dba4a1a5bd7a7a87c075b97ea3b706dd1ed17c
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:6a420228e684596ce2b900614a874f3e1284a6f2bbbba4c5a71ade158867affe
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-service-mesh/istio-operator-bundle@sha256:4923f618c4f5dca6fb67b3559436f8fdecfdb42965444440b92d15200e126a11
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:ee9c27eea4e786097db0fae63ba99c0272548eb9708c75ce4844e0d43bcaa490
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:b6883bf18708526e22939d083fa0e6b2d0485b61c677b9e39bb4109dc035dc52
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:fdcd165abf3f93810248a6ac14611c1ba7f5e8d48dafb81666a8211d1edf6a5a
        version: 2.6.11-0
      entries:
      - name: servicemeshoperator.v2.6.11
        version: 2.6.11-0
      - name: servicemeshoperator.v2.6.10
        version: 2.6.10-0
      - name: servicemeshoperator.v2.6.9
        version: 2.6.9-0
      - name: servicemeshoperator.v2.6.8
        version: 2.6.8-0
      - name: servicemeshoperator.v2.6.7
        version: 2.6.7-0
      - name: servicemeshoperator.v2.6.6
        version: 2.6.6-0
      - name: servicemeshoperator.v2.6.5
        version: 2.6.5-0
      - name: servicemeshoperator.v2.6.4
        version: 2.6.4-0
      - name: servicemeshoperator.v2.6.3
        version: 2.6.3-0
      - name: servicemeshoperator.v2.6.2
        version: 2.6.2-0
      - name: servicemeshoperator.v2.6.1
        version: 2.6.1-0
      - name: servicemeshoperator.v2.6.0
        version: 2.6.0-0
      - name: servicemeshoperator.v2.5.2
        version: 2.5.2-0
      - name: servicemeshoperator.v2.5.1
        version: 2.5.1-0
      - name: servicemeshoperator.v2.5.0
        version: 2.5.0-0
      - name: servicemeshoperator.v2.4.5
        version: 2.4.5-0
      - name: servicemeshoperator.v2.4.4
        version: 2.4.4-0
      - name: servicemeshoperator.v2.4.3
        version: 2.4.3-0
      - name: servicemeshoperator.v2.4.2
        version: 2.4.2-0
      - name: servicemeshoperator.v2.4.1
        version: 2.4.1-0
      - name: servicemeshoperator.v2.4.0
        version: 2.4.0-0
      - name: servicemeshoperator.v2.3.3
        version: 2.3.3-0
      - name: servicemeshoperator.v2.3.2
        version: 2.3.2-0
      - name: servicemeshoperator.v2.3.1
        version: 2.3.1-0
      - name: servicemeshoperator.v2.3.0
        version: 2.3.0-0
      - name: servicemeshoperator.v2.2.3
        version: 2.2.3-0
      - name: servicemeshoperator.v2.2.2
        version: 2.2.2-0
      - name: servicemeshoperator.v2.2.1
        version: 2.2.1-0
      - name: servicemeshoperator.v2.2.0
        version: 2.2.0-0
      - name: servicemeshoperator.v2.1.3
        version: 2.1.3-0
      - name: servicemeshoperator.v2.1.2
        version: 2.1.2-0
      - name: servicemeshoperator.v2.1.1
        version: 2.1.1-0
      - name: servicemeshoperator.v2.1.0
        version: 2.1.0-0
      - name: servicemeshoperator.v2.0.8
        version: 2.0.8-0
      name: "1.0"
    - currentCSV: servicemeshoperator.v2.6.11
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"maistra.io/v2\",\n    \"kind\":
            \"ServiceMeshControlPlane\",\n    \"metadata\": {\n      \"name\": \"basic\",\n
            \     \"namespace\": \"control-plane-namespace\"\n    },\n    \"spec\":
            {\n      \"version\": \"v2.6\",\n      \"policy\": {\n         \"type\":
            \"Istiod\"\n      },\n      \"telemetry\": {\n         \"type\": \"Istiod\"\n
            \     },\n      \"addons\": {\n        \"prometheus\": {\n          \"enabled\":
            true\n        },\n        \"kiali\": {\n          \"enabled\": true\n
            \       },\n        \"grafana\": {\n          \"enabled\": true\n        }\n
            \     }\n    }\n  },\n  {\n    \"apiVersion\": \"maistra.io/v1\",\n    \"kind\":
            \"ServiceMeshMemberRoll\",\n    \"metadata\": {\n      \"name\": \"default\",\n
            \     \"namespace\": \"control-plane-namespace\"\n    },\n    \"spec\":
            {\n      \"members\": [\n        \"your-project\",\n        \"another-of-your-projects\"
            \n      ]\n    }\n  },\n  {\n    \"apiVersion\": \"maistra.io/v1\",\n
            \   \"kind\": \"ServiceMeshMember\",\n    \"metadata\": {\n      \"name\":
            \"default\",\n      \"namespace\": \"application-namespace\"\n    },\n
            \   \"spec\": {\n      \"controlPlaneRef\": {\n        \"name\": \"basic\",\n
            \       \"namespace\": \"control-plane-namespace\"\n      }\n    }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
          createdAt: 2025-09-09T13:46:27CEST
          description: The OpenShift Service Mesh 2 Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh 2.6
            and earlier releases. OpenShift Service Mesh 2 is based on the open source
            Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.2 <2.6.11-0'
          operators.openshift.io/infrastructure-features: '["Disconnected","fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/maistra/istio-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Istio control plane installation
            displayName: Istio Service Mesh Control Plane
            kind: ServiceMeshControlPlane
            name: servicemeshcontrolplanes.maistra.io
            version: v2
          - description: Marks the containing namespace as a member of the referenced
              Service Mesh
            displayName: Istio Service Mesh Member
            kind: ServiceMeshMember
            name: servicemeshmembers.maistra.io
            version: v1
          - description: A list of namespaces in Service Mesh
            displayName: Istio Service Mesh Member Roll
            kind: ServiceMeshMemberRoll
            name: servicemeshmemberrolls.maistra.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh 2 is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh 2, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh 2
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh 2 provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh 2 supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### Joining Projects Into a Mesh

          Once an instance of Red Hat OpenShift Service Mesh 2 has been installed, it will only exercise control over services within its own
          project.  Other projects may be added into the mesh using one of two methods:

          1. A **ServiceMeshMember** resource may be created in other projects to add those projects into the mesh.  The
            **ServiceMeshMember** specifies a reference to the **ServiceMeshControlPlane** object that was used to install
            the control plane.  The user creating the **ServiceMeshMember** resource must have permission to *use* the
            **ServiceMeshControlPlane** object.  The adminstrator for the project containing the control plane can grant
            individual users or groups the *use* permissions.

          2. A **ServiceMeshMemberRoll** resource may be created in the project containing the control plane.  This resource
            contains a single *members* list of all the projects that should belong in the mesh.  The resource must be named
            *default*.  The user creating the resource must have *edit* or *admin* permissions for all projects in the
            *members* list.

          ### More Information

          * [Documentation](https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 2
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - maistra
        - servicemesh
        links:
        - name: Red Hat OpenShift Service Mesh 2
          url: https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html
        - name: Istio
          url: https://istio.io/
        - name: Operator Source Code
          url: https://github.com/Maistra/istio-operator
        - name: Bugs
          url: https://issues.redhat.com/projects/OSSM
        maintainers:
        - email: istio-feedback@redhat.com
          name: Red Hat, OpenShift Service Mesh
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:a36d5db6097749c55e946bba3b8ddd13a84b1f6f68b62d0ccbad5a803e9b46fb
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:49bd04cf8d17d568be9649e706dba4a1a5bd7a7a87c075b97ea3b706dd1ed17c
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6b4623c416fc85bd8e38904c16494fa3c4aeae25c90dc0da9763a0a87141bc04
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:d16a60204d266bf4cc266c005fabf175b533b827500f171013884a713c88857a
        - registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:f2fa0849e1304457ef69020c090ad79d928faa1a90c3042a6ecaca842c2a97fa
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:4669724b430683bf2e895c5cf941c2d99536117815999d38131e5b6f162bbef0
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:c77183e50a34d33b5e2fede60350f54b18ab3536c3189e331569d5df862d9979
        - registry.redhat.io/openshift4/ose-prometheus@sha256:5337742d305ff580471e9657345b384a950f82be7fd8a55196459008d2fca0a2
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:fdcd165abf3f93810248a6ac14611c1ba7f5e8d48dafb81666a8211d1edf6a5a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:e734ca310e09f737b4f06f3ecfeb9ac12971c63884fdcc27e3bebef9d5b18722
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:b6883bf18708526e22939d083fa0e6b2d0485b61c677b9e39bb4109dc035dc52
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6fb7d50b188dc27ffb9a396edabbfb21767fe438344fd70d4754d1ec7cf27957
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:57eb7ba03f24781501a7ceed2e160ff95317869af6c2caf8f9a83990e6a6c7b9
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d95762c62087072cadee5948c706619f09202a349e1310f0ed81bfb42f11203f
        - registry.redhat.io/openshift-service-mesh/istio-operator-bundle@sha256:4923f618c4f5dca6fb67b3559436f8fdecfdb42965444440b92d15200e126a11
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:6a420228e684596ce2b900614a874f3e1284a6f2bbbba4c5a71ade158867affe
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:1ca80927334c6af8e386de8d44704f568b4b35d3f7afbe785a999d0fa4efd0bf
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:515c5d9e6700fae981b0ea3807436b250acb1534e9ecf50043e5df8474e66dce
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:ee9c27eea4e786097db0fae63ba99c0272548eb9708c75ce4844e0d43bcaa490
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:877aa4c6546146f0ed42eca52500e1adfc28a1dda80a08500f9cc9e023254ccd
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:3dc1bddb070fd530ce6251666989b9a849de90591718a578da4a9900f98d93ec
        - registry.redhat.io/openshift-service-mesh/prometheus-rhel8@sha256:71e193a2d403bb06a7a76686b376985315aa0c32f495b8b9dacd73c7ccce2af3
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:a3d65983d46dcf47b94f26e7265ed32082208ce08abcf3587a9a4e15c19b274a
        version: 2.6.11-0
      entries:
      - name: servicemeshoperator.v2.6.11
        version: 2.6.11-0
      - name: servicemeshoperator.v2.6.10
        version: 2.6.10-0
      - name: servicemeshoperator.v2.6.9
        version: 2.6.9-0
      - name: servicemeshoperator.v2.6.8
        version: 2.6.8-0
      - name: servicemeshoperator.v2.6.7
        version: 2.6.7-0
      - name: servicemeshoperator.v2.6.6
        version: 2.6.6-0
      - name: servicemeshoperator.v2.6.5
        version: 2.6.5-0
      - name: servicemeshoperator.v2.6.4
        version: 2.6.4-0
      - name: servicemeshoperator.v2.6.3
        version: 2.6.3-0
      - name: servicemeshoperator.v2.6.2
        version: 2.6.2-0
      - name: servicemeshoperator.v2.6.1
        version: 2.6.1-0
      - name: servicemeshoperator.v2.6.0
        version: 2.6.0-0
      - name: servicemeshoperator.v2.5.2
        version: 2.5.2-0
      - name: servicemeshoperator.v2.5.1
        version: 2.5.1-0
      - name: servicemeshoperator.v2.5.0
        version: 2.5.0-0
      - name: servicemeshoperator.v2.4.5
        version: 2.4.5-0
      - name: servicemeshoperator.v2.4.4
        version: 2.4.4-0
      - name: servicemeshoperator.v2.4.3
        version: 2.4.3-0
      - name: servicemeshoperator.v2.4.2
        version: 2.4.2-0
      - name: servicemeshoperator.v2.4.1
        version: 2.4.1-0
      - name: servicemeshoperator.v2.4.0
        version: 2.4.0-0
      - name: servicemeshoperator.v2.3.3
        version: 2.3.3-0
      - name: servicemeshoperator.v2.3.2
        version: 2.3.2-0
      - name: servicemeshoperator.v2.3.1
        version: 2.3.1-0
      - name: servicemeshoperator.v2.3.0
        version: 2.3.0-0
      - name: servicemeshoperator.v2.2.3
        version: 2.2.3-0
      - name: servicemeshoperator.v2.2.2
        version: 2.2.2-0
      - name: servicemeshoperator.v2.2.1
        version: 2.2.1-0
      - name: servicemeshoperator.v2.2.0
        version: 2.2.0-0
      - name: servicemeshoperator.v2.1.3
        version: 2.1.3-0
      - name: servicemeshoperator.v2.1.2
        version: 2.1.2-0
      - name: servicemeshoperator.v2.1.1
        version: 2.1.1-0
      - name: servicemeshoperator.v2.1.0
        version: 2.1.0-0
      - name: servicemeshoperator.v2.0.8
        version: 2.0.8-0
      name: stable
    defaultChannel: stable
    packageName: servicemeshoperator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Arctera US LLC
      provider-url: https://www.arctera.io
    name: infoscale-licensing-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infoscale-licensing-operator.v8.0.220
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Developer"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator@sha256:feeabfe4ecd36205306e3f3bf6c11517cfee735d7ae7eb4350abd01e9d76610b
          createdAt: "2022-06-22T16:36:59Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          olm.skipRange: <8.0.220
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Veritas
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Veritas
        - InfoScale
        - Licensing
        - Veritas Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator@sha256:2f3de2bf46920cfe8c251011fc99841b43999561c1d3fe44850b205e94585a68
        - registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator-bundle@sha256:6d9eabdb4f645aa1b8b6c08ca94f9ec89466cdc35b3cb02aaba22e160d8fd9ea
        version: 8.0.220
      entries:
      - name: infoscale-licensing-operator.v8.0.220
        version: 8.0.220
      - name: infoscale-licensing-operator.v8.0.110
        version: 8.0.110
      - name: infoscale-licensing-operator.v8.0.100
        version: 8.0.100
      name: 8.0.200x
    - currentCSV: infoscale-licensing-operator.v8.0.330
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator@sha256:b357b2203466516684c8fbc209757a98a45ec2376981f8699faf7dd5e37486a3
          createdAt: "2022-06-22T16:36:59Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Veritas
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Veritas
        - InfoScale
        - Licensing
        - Veritas Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator-bundle@sha256:5484f8ecf079ee126d24c05e1bcb06467146b3b8e751e90e0fd68f3e933125f0
        - registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator@sha256:b357b2203466516684c8fbc209757a98a45ec2376981f8699faf7dd5e37486a3
        version: 8.0.330
      entries:
      - name: infoscale-licensing-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-licensing-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-licensing-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-licensing-operator.v8.0.301
        version: 8.0.301
      name: 8.0.300x
    - currentCSV: infoscale-licensing-operator.v8.0.410
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:1ebab8aec17e0e5260678616696be43b720f801127c97820b3a07f3a8cb73e6a
          createdAt: "2022-06-22T16:36:59Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Arctera
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Arctera
        - InfoScale
        - Licensing
        - Arctera Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-license-operator-bundle@sha256:f67479555b113a3ff194370dab48a517005001ce412a1d2ef1ecded9dd1c95f5
        - registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:1ebab8aec17e0e5260678616696be43b720f801127c97820b3a07f3a8cb73e6a
        version: 8.0.410
      entries:
      - name: infoscale-licensing-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-licensing-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-licensing-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-licensing-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-licensing-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-licensing-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-licensing-operator.v8.0.301
        version: 8.0.301
      name: 8.0.400x
    - currentCSV: infoscale-licensing-operator.v9.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:89f5066e017b4bff78ce790482dc8369fd180f05f8c5bc6cf69d8bfc8a73a87f
          createdAt: "2025-09-10T10:17:07Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Arctera
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Arctera
        - InfoScale
        - Licensing
        - Arctera Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-license-operator-bundle@sha256:61bc6246f9035d22572a63176f66b9789382d45d412f3585f9a784c3f8647f9c
        - registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:89f5066e017b4bff78ce790482dc8369fd180f05f8c5bc6cf69d8bfc8a73a87f
        version: 9.0.1
      entries:
      - name: infoscale-licensing-operator.v9.0.1
        version: 9.0.1
      name: beta
    - currentCSV: infoscale-licensing-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:a01d6ad7c33203ddbf6e4fc1eef6a83c7727627bff9f64b085a1bd4f38be434c
          createdAt: "2025-09-10T10:17:07Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Arctera
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Arctera
        - InfoScale
        - Licensing
        - Arctera Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-license-operator-bundle@sha256:06064589e5d1c391ad3126757269fec764e60e30e4f778b4ad32e2041198dbad
        - registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:a01d6ad7c33203ddbf6e4fc1eef6a83c7727627bff9f64b085a1bd4f38be434c
        version: 9.1.0
      entries:
      - name: infoscale-licensing-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-licensing-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-licensing-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-licensing-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-licensing-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-licensing-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-licensing-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-licensing-operator.v8.0.301
        version: 8.0.301
      name: fast
    - currentCSV: infoscale-licensing-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:a01d6ad7c33203ddbf6e4fc1eef6a83c7727627bff9f64b085a1bd4f38be434c
          createdAt: "2025-09-10T10:17:07Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Arctera
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Arctera
        - InfoScale
        - Licensing
        - Arctera Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-license-operator-bundle@sha256:06064589e5d1c391ad3126757269fec764e60e30e4f778b4ad32e2041198dbad
        - registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:a01d6ad7c33203ddbf6e4fc1eef6a83c7727627bff9f64b085a1bd4f38be434c
        version: 9.1.0
      entries:
      - name: infoscale-licensing-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-licensing-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-licensing-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-licensing-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-licensing-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-licensing-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-licensing-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-licensing-operator.v8.0.301
        version: 8.0.301
      name: stable
    defaultChannel: fast
    packageName: infoscale-licensing-operator
    provider:
      name: Arctera US LLC
      url: https://www.arctera.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: patch-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: patch-operator.v0.1.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Patch",
                "metadata": {
                  "name": "test-complex-patch"
                },
                "spec": {
                  "patches": {
                    "test-complex-patch": {
                      "patchTemplate": "metadata:\n  annotations:\n    {{ (index . 1).metadata.name }}: {{ (index . 2).metadata.name }}    \n",
                      "patchType": "application/strategic-merge-patch+json",
                      "sourceObjectRefs": [
                        {
                          "apiVersion": "v1",
                          "kind": "Namespace",
                          "name": "test-patch-operator"
                        },
                        {
                          "apiVersion": "v1",
                          "kind": "ServiceAccount",
                          "name": "default",
                          "namespace": "test-patch-operator"
                        }
                      ],
                      "targetObjectRef": {
                        "apiVersion": "v1",
                        "kind": "ServiceAccount",
                        "name": "test",
                        "namespace": "test-patch-operator"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/patch-operator@sha256:030ade9b9428deca3ac6390618dc4d6e6d728577d1467a22dc4d4b68c9848886
          createdAt: "2024-05-10T14:07:19Z"
          description: An operator to apply patches to Kubernetes objects in a declarative
            way.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: patch-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/patch-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Patch
            name: patches.redhatcop.redhat.io
            version: v1alpha1
        description: "The patch operator helps with defining patches in a declarative
          way. This operator has two main features:\n\n1. [ability to patch an object
          at creation time via a mutating webhook](#creation-time-patch-injection)\n2.
          [ability to enforce patches on one or more objects via a controller](#runtime-patch-enforcement)\n
          \n## Creation-time patch injection\n\nWhy apply a patch at creation time
          when you could directly create the correct object? The reason is that sometime
          the correct value depends on configuration set on the specific cluster in
          which the object is being deployed. For example, an ingress/route hostname
          might depend on the specific cluster. Consider the following example based
          on cert-manager:\n \n```yaml\napiVersion: cert-manager.io/v1\nkind: ClusterIssuer\nmetadata:\n
          \ name: letsencrypt-issuer\nspec:\n  acme:\n    server: 'https://acme-v02.api.letsencrypt.org/directory'\n
          \   email: {{ .Values.letsencrypt.email }}\n    privateKeySecretRef:\n      name:
          letsencrypt-staging\n    solvers:  \n    - dns01:\n        route53:\n          accessKeyID:
          << access_key >>\n          secretAccessKeySecretRef:\n            name:
          cert-manager-dns-credentials\n            key: aws_secret_access_key\n          region:
          << region >>\n          hostedZoneID: << hosted_zone_id >>\n ```\n\nIn this
          example the fields: `<< access_key >>`, `<< region >>` and `<< hosted_zone_id
          >>` are dependent on the specific region in which the cluster is being deployed
          and in many cases they are discoverable from other configurations already
          present in the cluster. If you want to deploy the above Cluster Issuer object
          with a gitops approach, then there is no easy way to discover those values.
          The solution so far is to manually discover those values and create a different
          gitops configuration for each cluster. But consider if you could look up
          values at deploy time based on the cluster you are deploying to. Here is
          how this object might look:\n\n```yaml\napiVersion: cert-manager.io/v1\nkind:
          ClusterIssuer\nmetadata:\n  name: letsencrypt-issuer\n  namespace: {{ .Release.Namespace
          }}\n  annotations:\n    \"redhat-cop.redhat.io/patch\": |\n      spec:\n
          \       acme:\n        - dns01:\n            route53:\n              accessKeyID:
          {{ (lookup \"v1\" \"Secret\" .metadata.namespace \"cert-manager-dns-credentials\").data.aws_access_key_id
          | b64dec }}\n              secretAccessKeySecretRef:\n                name:
          cert-manager-dns-credentials\n                key: aws_secret_access_key\n
          \             region: {{ (lookup \"config.openshift.io/v1\" \"Infrastructure\"
          \"\" \"cluster\").status.platformStatus.aws.region }}\n              hostedZoneID:
          {{ (lookup \"config.openshift.io/v1\" \"DNS\" \"\" \"cluster\").spec.publicZone.id
          }} \nspec:\n  acme:\n    server: 'https://acme-v02.api.letsencrypt.org/directory'\n
          \   email: {{ .Values.letsencrypt.email }}\n    privateKeySecretRef:\n      name:
          letsencrypt-staging\n    solvers:  \n    - dns01:\n        route53:\n          accessKeyID:
          << access_key >>\n          secretAccessKeySecretRef:\n            name:
          cert-manager-dns-credentials\n            key: aws_secret_access_key\n          region:
          << region >>\n          hostedZoneID: << hosted_zone_id >>\n ```\n\nThe
          annotation specifies a patch that will be applied by a [MutatingWebhook](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/),
          as you can see the three values are now looked up from different configurations
          in the cluster.\n\nTwo annotations influences the behavior of this MutatingWebhook\n
          \n1. \"redhat-cop.redhat.io/patch\" : this is the patch itself. The patch
          is evaluated as a template with the object itself as it's only parameter.
          The template is expressed in golang template notation and supports the same
          functions as helm template including the [lookup](https://helm.sh/docs/chart_template_guide/functions_and_pipelines/#using-the-lookup-function)
          function which plays a major role here. The patch must be expressed in yaml
          for readability. It will be converted to json by the webhook logic.\n2.
          \"redhat-cop.redhat.io/patch-type\" : this is the type of json patch. The
          possible values are: `application/json-patch+json`, `application/merge-patch+json`
          and `application/strategic-merge-patch+json`. If this annotation is omitted
          it defaults to strategic merge.\n\n### Security Considerations\n \nThe lookup
          function, if used by the template, is executed with a client which impersonates
          the user issuing the object creation/update request. This should prevent
          security permission leakage.\n\n### Installing the creation time webhook\n
          \nThe creation time webhook is not installed by the operator. This is because
          there is no way to know which specific object type should be intercepted
          and intercepting all of the types would be too inefficient. It's up to the
          administrator then to install the webhook. Here is some guidance.\n\nIf
          you installed the operator via OLM, use the following webhook template:\n\n```yaml\napiVersion:
          admissionregistration.k8s.io/v1\n kind: MutatingWebhookConfiguration\nmetadata:\n
          \ name: patch-operator-inject\n  annotations:\n    service.beta.openshift.io/inject-cabundle:
          \"true\"\nwebhooks:\n - admissionReviewVersions:\n  - v1\n  clientConfig:\n
          \   service:\n      name: patch-operator-webhook-service\n      namespace:
          patch-operator\n      path: /inject\n  failurePolicy: Fail\n  name: patch-operator-inject.redhatcop.redhat.io\n
          \ rules:\n  - << add your intercepted objects here >>\n  sideEffects: None\n```\n\nIf
          you installed the operator via the Helm chart and are using cert-manager,
          use the following webhook template:\n\n```yaml\napiVersion: admissionregistration.k8s.io/v1\n
          kind: MutatingWebhookConfiguration\nmetadata:\n  name: patch-operator-inject\n
          \ annotations:\n    cert-manager.io/inject-ca-from: '{{ .Release.Namespace
          }}/webhook-server-cert'\n webhooks:\n- admissionReviewVersions:\n  - v1\n
          \ clientConfig:\n    service:\n      name: patch-operator-webhook-service\n
          \     namespace: patch-operator\n      path: /inject\n  failurePolicy: Fail\n
          \ name: patch-operator-inject.redhatcop.redhat.io\n  rules:\n  - << add
          your intercepted objects here >>\n  sideEffects: None\n```  \n\nYou should
          need to enable the webhook only for `CREATE` operations. So for example
          to enable the webhook on configmaps:\n\n```yaml\n  rules:\n  - apiGroups:\n
          \   - \"\"\n    apiVersions:\n    - v1\n    operations:\n    - CREATE\n
          \   resources:\n    - configmaps\n```\n\n## Runtime patch enforcement\n\nThere
          are situations when we need to patch pre-existing objects. Again this is
          a use case that is hard to model with gitops operators which will work only
          on object that they own. Especially with sophisticated Kubernetes distributions,
          it is not uncommon that a Kubernetes instance, at installation time, is
          configured with some default settings. Changing those configurations means
          patching those objects. For example, let's take the case of OpenShift Oauth
          configuration. This object is present by default and it is expected to be
          patched with any newly enabled authentication mechanism. This is how it
          looks like after installation:\n\n```yaml\napiVersion: config.openshift.io/v1\n
          kind: OAuth\nmetadata:\n  name: cluster\n  ownerReferences:\n    - apiVersion:
          config.openshift.io/v1\n      kind: ClusterVersion\n      name: version\n
          \     uid: 9a9d450b-3076-4e30-ac05-a889d6341fc3\n  resourceVersion: '20405124'\n
          spec: []\n```\n\nIf we need to patch it we can use the patch controller
          and the `Patch` object as follows:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n
          kind: Patch\nmetadata:\n  name: gitlab-ocp-oauth-provider\n  namespace:
          openshift-config\nspec:\n  serviceAccountRef:\n    name: default\n  patches:\n
          \   gitlab-ocp-oauth-provider:\n      targetObjectRef:\n        apiVersion:
          config.openshift.io/v1\n        kind: OAuth\n        name: cluster\n      patchTemplate:
          |\n        spec:\n          identityProviders:\n          - name: my-github
          \n            mappingMethod: claim \n            type: GitHub\n            github:\n
          \             clientID: \"{{ (index . 1).data.client_id | b64dec }}\" \n
          \             clientSecret: \n                name: ocp-github-app-credentials\n
          \             organizations: \n              - my-org\n              teams:
          []            \n      patchType: application/merge-patch+json\n      sourceObjectRefs:\n
          \     - apiVersion: v1\n        kind: Secret\n        name: ocp-github-app-credentials\n
          \       namespace: openshift-config\n```\n\nThis will cause the OAuth object
          to be patched and the patch to be enforced. That means that if anything
          changes on the secret that we use a parameter (which may be rotated) or
          in Oauth object itself, the patch will be reapplied. In this case we are
          adding a gitlab authentication provider.\n\n A `patch` has the following
          fields:\n\n`targetObjectRef` this refers to the object(s) receiving the
          patch. Mutliple object can be selected based on the following rules:\n \n|
          Namespaced Type | Namespace | Name | Selection type |\n| --- | --- | ---
          | --- |\n| yes | null | null | multiple selection across namespaces |\n|
          yes | null | not null | multiple selection across namespaces where the name
          corresponds to the passed name |\n| yes | not null | null | multiple selection
          within a namespace |\n| yes | not null | not nul | single selection |\n|
          no | N/A | null | multiple selection  |\n| no | N/A | not null | single
          selection |\n\nSelection can be further narrowed down by filtering by labels
          and/or annotations using the `labelSelector` and `annotationSelector` fields.
          The patch will be applied to all of the selected instances.\n\n`sourceObjectRefs`
          these are the objects that will be watched and become part of the parameters
          of the patch template. Name and Namespace of sourceRefObjects are interpreted
          as golang templates with the current target instance and the only parameter.
          This allows to select different source object for each target object.\n
          \nSo, for example, with this patch:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n
          kind: Patch\nmetadata:\n  name: multiple-namespaced-targets-patch\nspec:\n
          \ serviceAccountRef:\n    name: default\n  patches:\n    multiple-namespaced-targets-patch:\n
          \     targetObjectRef:\n        apiVersion: v1\n        kind: ServiceAccount\n
          \       name: deployer\n      patchTemplate: |\n        metadata:\n          annotations:\n
          \           {{ (index . 1).metadata.uid }}: {{ (index . 1) }}\n      patchType:
          application/strategic-merge-patch+json\n      sourceObjectRefs:\n      -
          apiVersion: v1\n        kind: ServiceAccount\n        name: default\n        namespace:
          \"{{ .metadata.namespace }}\"\n        fieldPath: $.metadata.uid\n```\n\nThe
          `deployer` service accounts from all namespaces are selected as target of
          this patch, each patch template will receive a different parameter and that
          is the `default` service account of the same namespace as the namespace
          of the `deployer` service account being processed.\n\n`sourceObjectRefs`
          also have the `fieldPath` field which can contain a jsonpath expression.
          If a value is passed the jsonpath expression will be calculate for the current
          source object and the result will be passed as parameter of the template.\n\n`patchTemplate`
          This is the the template that will be evaluated. The result must be a valid
          patch compatible with the requested type and expressed in yaml for readability.
          The parameters passed to the template are the target object and then the
          all of the source object. So if you want to refer to the target object in
          the template you can use this expression `(index . 0)`. Higher indexes refer
          to the sourceObjectRef array. The template is expressed in golang template
          notation and supports the same functions as helm template.\n\n`patchType`
          is the type of the json patch. The possible values are: `application/json-patch+json`,
          `application/merge-patch+json` and `application/strategic-merge-patch+json`.
          If this annotation is omitted it defaults to strategic merge.\n\n### Patch
          Controller Security Considerations\n\nThe patch enforcement enacted by the
          patch controller is executed with a client which uses the service account
          referenced by the `serviceAccountRef` field. So before a patch object can
          actually work an administrator must have granted the needed permissions
          to a service account in the same namespace. The `serviceAccountRef` will
          default to the `default` service account if not specified.\n\n### Patch
          Controller Performance Considerations\n\nThe patch controller will create
          a controller-manager and per `Patch` object and a reconciler for each of
          the `PatchSpec` defined in the array on patches in the `Patch` object.\nThese
          reconcilers share the same cached client. In order to be able to watch changes
          on target and source objects of a `PatchSpec`, all of the target and source
          object type instances will be cached by the client. This is a normal behavior
          of a controller-manager client, but it implies that if you create patches
          on object types that have many instances in etcd (Secrets, ServiceAccounts,
          Namespaces for example), the patch operator instance will require a significant
          amount of memory. A way to contain this issue is to try to aggregate together
          `PatchSpec` that deal with the same object types. This will cause those
          object type instances to cached only once.  \n"
        displayName: Patch Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - patch
        - enforcing
        - declarative
        links:
        - name: Patch Operator
          url: https://github.com/redhat-cop/patch-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/patch-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/community-operator-pipeline-prod/patch-operator@sha256:437f5b7c661d3e9bc2c8ac13b0c8f3565f685b9e5ef52791312bc64d55e2e476
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/patch-operator@sha256:030ade9b9428deca3ac6390618dc4d6e6d728577d1467a22dc4d4b68c9848886
        version: 0.1.11
      entries:
      - name: patch-operator.v0.1.11
        version: 0.1.11
      - name: patch-operator.v0.1.10
        version: 0.1.10
      - name: patch-operator.v0.1.9
        version: 0.1.9
      - name: patch-operator.v0.1.8
        version: 0.1.8
      - name: patch-operator.v0.1.7
        version: 0.1.7
      - name: patch-operator.v0.1.6
        version: 0.1.6
      - name: patch-operator.v0.1.5
        version: 0.1.5
      - name: patch-operator.v0.1.4
        version: 0.1.4
      - name: patch-operator.v0.1.3
        version: 0.1.3
      - name: patch-operator.v0.1.2
        version: 0.1.2
      - name: patch-operator.v0.1.1
        version: 0.1.1
      - name: patch-operator.v0.1.0
        version: 0.1.0
      - name: patch-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: patch-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Performance
      provider-url: ""
    name: cluster-impairment-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-impairment-operator.v1.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "all-impairments"
                },
                "spec": {
                  "duration": 480,
                  "egress": {
                    "bandwidth": 10000,
                    "latency": 50,
                    "loss": 0.02
                  },
                  "ingress": {
                    "bandwidth": 10000,
                    "latency": 50,
                    "loss": 0.02
                  },
                  "interfaces": [
                    "ens2f0"
                  ],
                  "linkFlapping": {
                    "downTime": 30,
                    "enable": true,
                    "upTime": 120
                  },
                  "startDelay": 5
                }
              },
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "duplication"
                },
                "spec": {
                  "duration": 60,
                  "egress": {
                    "duplication": 25
                  },
                  "ingress": {
                    "duplication": 25
                  },
                  "interfaces": [
                    "ens3"
                  ],
                  "startDelay": 5
                }
              },
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "two-min-flap"
                },
                "spec": {
                  "duration": 480,
                  "interfaces": [
                    "ens2f0"
                  ],
                  "linkFlapping": {
                    "downTime": 120,
                    "enable": true,
                    "upTime": 120
                  },
                  "startDelay": 5
                }
              },
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "typical-scenario"
                },
                "spec": {
                  "duration": 30,
                  "egress": {
                    "latency": 50
                  },
                  "ingress": {
                    "latency": 50
                  },
                  "interfaces": [
                    "ens2f0",
                    "eno1"
                  ],
                  "loss": 0.02,
                  "startDelay": 5
                }
              },
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "uneven-latency"
                },
                "spec": {
                  "duration": 60,
                  "egress": {
                    "latency": 100
                  },
                  "ingress": {
                    "latency": 10
                  },
                  "interfaces": [
                    "ens2f0"
                  ],
                  "nodeSelector": {
                    "key": "node-role.kubernetes.io/worker",
                    "value": ""
                  },
                  "startDelay": 5
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking, Developer Tools
          containerImage: quay.io/redhat-performance/cluster-impairment-operator:1.0.4
          createdAt: "2021-08-11 12:15:00"
          description: Run Impairments on Kubernetes/Openshift Nodes
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/redhat-performance/cluster-impairment-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterImpairment
            name: clusterimpairments.apps.redhat.com
            version: v1alpha1
        description: "cluster-impairment-operator is an operator designed to automate
          the application of impairments to the nodes in a cluster.\n\n## Features\n\nTraffic
          Direction:\n\n* Egress impairments affect the traffic going out.    \n*
          Ingress impairments affect the traffic coming in. (Ingress impairments require
          the kernel module IFB.)\n\n### Impairments\n\n| Impairment    | Description
          \                               | Unit    | Uses Netem | Correlation Supported
          |\n|---------------|--------------------------------------------|---------|------------|-----------------------|\n|
          Bandwidth     | The bandwidth limit                        | kbit/s  | Yes
          \       | No                    |\n| Latency       | The delay of the packets
          \                  | ms      | Yes        | Yes                   |\n| Packet
          Loss   | The percent of packets that are dropped    | percent | Yes        |
          Yes                   |\n| Corruption    | The percent of packets that are
          corrupted  | percent | Yes        | Yes                   |\n| Duplication
          \  | The percent of packets that are duplicated | percent | Yes        |
          Yes                   |\n| Link Flapping | Turns the interface on and off
          \            | bool    | No         | No                    |\n\n\nOn the
          tested environment (RHEL CoreOS 48.84), the impairments can be used alongside
          link flapping.\n\n\n#### Latency Options\n\nIn addition to simply delaying
          the packets, there are advanced latency options.\n\n##### Jitter\n\nSemi-randomly
          adds or subtracts from the latency according to the distribution up to the
          amount specified.\nIf latency is 100ms, and jitter is 10ms, the actual latency
          will vary 100±10ms.\n\n\n##### Distribution\n\nThe distribution of the jitter.
          The options are:\n* Normal\n* Uniform\n* Pareto\n* Paretonormal\n\n#####
          Jitter correlation\n\nThe percent chance that the next latency's jitter
          value will correlate with the preceeding latency.\n\n##### Reorder\n\nThe
          percentage of packets that are not delayed, causing a reorder due to them
          being sent before the delayed ones.\nApplying jitter itself has the potential
          to also cause reordering.\n\n##### Reorder correlation\n\nThe percet chance
          that the value for the next reorder will correlate with the preceeding value.\n\n####
          Loss options\n\n##### Correlation\n\nThe percent chance that the previous
          loss value for a packet correlates with the loss value for the next packet.\n\n####
          Corruption options\n\n###### Corruption\n\nThe percent chance that each
          packet will be corrupted.\n\n##### Corruption correlation\n\nThe percet
          chance that the value for the next corruption will correlate with the preceeding
          value.\n\n#### Duplication options\n\n##### Duplication\n\nThe percent chance
          that each packet will be duplicated.\n\n##### Duplication correlation\n\nThe
          percet chance that the value for the next duplication will correlate with
          the preceeding value.\n\n\n\n## Configuration\n\nHere is an example of the
          ClusterImpairment custom resource.\n\n\n```\n\napiVersion: apps.redhat.com/v1alpha1\nkind:
          ClusterImpairment\nmetadata:\n  name: test-impairment-cr\nspec:\n  duration:
          30 # seconds\n  startDelay: 5 # seconds. It typically takes about 2-3 seconds
          for the Daemonset to run\n  interfaces:\n  - \"ens2f0\"\n  ingress: # uses
          ifb\n    bandwidth: 0 # kbit\n    latency: 10 # ms\n    latencyOptions:\n
          \     jitter: 5 # ms\n      jitterCorrelation: 25 # percent\n      distribution:
          normal\n      reorder: 25 # percent of packets that will skip the delay\n
          \     reorderCorrelation: 25 # percent\n    loss: 0 # percent\n    lossOptions:\n
          \     correlation: 25 # percent\n    corruption: 0.1 # percent\n    corruptionOptions:\n
          \     correlation: 25 # percent\n    duplication: 1 # percent\n    duplicationOptions:\n
          \     correlation: 25 # percent\n  egress:\n    bandwidth: 0 # kbit\n    latency:
          100 # ms\n    loss: 0 # percent\n  linkFlapping:\n    enable: false\n    downTime:
          3 # Seconds\n    upTime: 3 # Seconds\n  nodeSelector:\n    key: \"node-role.kubernetes.io/worker\"\n
          \   value: \"\"\n    \n```\n\n#### Interfaces\n\nThe interfaces configuration
          option is a list of all interfaces that the impairments should be applied
          to. The current implementation will error out once it hits an invalid interface.\n\nIf
          an invalid interface is found, it will print out the list of interfaces.\n\n####
          Node Selector\n\nThe default node selector is all worker nodes, but you
          can change it to whatever node selector you want by setting the key and
          value.\nThere is a toleration to allow it to run on master nodes if the
          node selector includes master nodes.\n\n#### Duration\n\nThe number of seconds
          the impairments should run. It will try to sync the start and end time between
          all pods.\nIf set to -1, it will run indefinitely (a year), until you remove
          the ClusterImpairment custom resource. This is good for testing that requires
          steady impairments.\n\nIf the script is link flapping, set this value to
          be short enough so that if the link flap interrupts communication between
          the nodes, the daemonset will remove itself.\n\n#### Start Delay\n\nThe
          delay before starting the script. If you want the pods to be in sync, a
          minimum of a few seconds should be used because the pods take time to start
          up.\n\nYou can also utilize this feature to run an separate impairment after
          another. Just apply two resources at the same time, but add the duration
          and start delay of the first to the start delay of the second.\n\n#### Ingress
          and Egress\n\nThe configuration sections \"ingress\" and \"egress\" apply
          to each direction.\n\n##### Examples:\n\n##### Example 1\n\n\nIn this example,
          egress latency is set to 100ms, but the ingress latency is set to 10ms.
          So the latency to the interface will end up being 10ms, but 100ms going
          out. When pinging, this will result in 110ms of latency.\n\n```\n\napiVersion:
          apps.redhat.com/v1alpha1\nkind: ClusterImpairment\nmetadata:\n  name: uneven-latency\nspec:\n
          \ duration: 60\n  startDelay: 5\n  interfaces:\n  - \"ens2f0\"\n  ingress:\n
          \   latency: 10 # ms\n  egress:\n    latency: 100 # ms\n\n```\n\n##### Example
          2\n\n\nIn this example, link flapping will be enabled, and it will turn
          the interface on and off every 2 minutes. That is long enough for kubernetes
          to determine that a node is unavailable.\n\n```\n\napiVersion: apps.redhat.com/v1alpha1\nkind:
          ClusterImpairment\nmetadata:\n  name: two-min-flap\nspec:\n  duration: 480\n
          \ startDelay: 5\n  interfaces:\n  - \"ens2f0\"\n  linkFlapping:\n    enable:
          true\n    downTime: 120 # Seconds\n    upTime: 120 # Seconds\n\n```\n\n#####
          Example 3\n\n\nIn this example, a realistic set of impairments is applied
          to `ens2f0` and `eno1` for 30 seconds:\n\n```\n\napiVersion: apps.redhat.com/v1alpha1\nkind:
          ClusterImpairment\nmetadata:\n  name: typical-scenario\nspec:\n  duration:
          30 # seconds\n  startDelay: 5 # seconds\n  interfaces:\n  - \"ens2f0\"\n
          \ - \"eno1\"\n  egress:\n    latency: 50 # ms. Bidirectional, so total of
          100ms\n  ingress:\n    latency: 50 # ms. Bidirectional, so total of 100ms\n
          \ loss: 0.02 # percent\n\n```\n\n##### Example 4\n\n\nIn this example, a
          combination of latency, packet loss, bandwidth, and link flapping is applied.\n\n```\n\napiVersion:
          apps.redhat.com/v1alpha1\nkind: ClusterImpairment\nmetadata:\n  name: all-impairments\nspec:\n
          \ duration: 480 # seconds\n  startDelay: 5 # seconds\n  interfaces:\n  -
          \"ens2f0\"\n  egress:\n    latency: 50 # ms. Bidirectional, so total of
          100ms\n    loss: 0.02 # percent\n    bandwidth: 1000 # 1000 kbit/s, about
          1 mbit/s\n  ingress:\n    latency: 50 # ms. Bidirectional, so total of 100ms\n
          \   loss: 0.02 # percent\n    bandwidth: 1000 # 1000 kbit/s, about 1 mbit/s\n
          \ linkFlapping:\n    enable: true\n    downTime: 30 # Seconds\n    upTime:
          120 # Seconds\n\n```\n\n##### Example 5\n\n\nIn this example, packet duplicaiton
          is applied.\n\n\n```\n\napiVersion: apps.redhat.com/v1alpha1\nkind: ClusterImpairment\nmetadata:\n
          \ name: duplication\nspec:\n  duration: 60\n  startDelay: 5\n  interfaces:\n
          \ - \"ens3\"\n  ingress:\n    duplication: 25 # percent\n  egress:\n    duplication:
          25 # percent\n\n```\n\n## Setup\n\n### Requirements\n\n1. You need `make`
          installed.\n2. You need access to the kubernetes cluster with a kubeconfig.\n\n###
          Installation\n\nTo run using the current latest image:\n1. Clone the repository.\n2.
          Run `make deploy` with KUBECONFIG environment variable set to the location
          of the kubeconfig.\n\nTo run with your own code, there are more steps.\n1.
          Fork the repository.\n2. Clone to a machine that has access to the Kubernetes
          cluster and the kubeconfig.\n3. Modify the makefile to change the `IMG`
          variable to your image repository. If you do not have podman installed,
          also change podman to docker.\n4. Run `make docker-build` then `make docker-push`.\n5.
          Then run `make deploy`\n\n### Deploying from operator-hub\n\n*Important*
          You must manually apply the serviceaccount!\n\nFirst, Follow the instructions
          on this site to deploy from here.\n\nNext, apply the manifest \"serviceaccount.yaml\"
          from the manifests folder.\n\nThen you can apply your ClusterImpairment
          resources.\n\n## Running impairments\n\nFirst, configure a ClusterImpairment
          type's spec with the information for the impairment you want to run. Most
          importantly, set the interface(s). You can list the interfaces with `ifconfig`.
          If an invalid interface is set, the pod's logs will show `ifconfig` output.\n\n\nOnce
          the clusterimpairment type is set, apply it and it will work.\n\n\nTo re-run
          an impairment, delete the impairment with `oc delete -f path/to/manifest.yaml`,
          then apply it again.\n\n\n## Limitations\n\n\n### Multiple Impairments\n\n\nYou
          should avoid any configurations that apply impairments to the same interface
          on the same node. There are potential conflicts. The worker pod will attempt
          to remove all impairments on that interface before applying new ones.\n\n\nInstead,
          take advantage of the full control of both ingress and egress impairments
          from within the same ClusterImpairment resource.\n\n\nThere is currently
          a configured limit of 20 ClusterImpairment resources working at the same
          time. If that is a limitation for your use case, you can change it in `config/manager/manager.yaml`
          or you can try to find a way to make each ClusterImpairment do more.\n\n###
          Traffic Control (TC)\n\nTraffic control is how cluster-impairment-operator
          applies the latency, bandwidth, and packet loss impairments. The limitation
          is due to Linux not being realtime operating system, so the impairment will
          not be perfectly consistent.\n\n### Link Flapping\n\nWhen link flapping,
          if you flap the link that Kubernetes uses to communicate with the pods,
          you may be unable to remove the pod until the link is on long enough for
          Kubernetes to communicate with the impaired node.\n\n\nIn this case, it
          is helpful to set the duration properly instead of running for an indefinite
          or large amount of time, because the node will properly go back to the unimpaired
          state at that time.\n\n\nIf the cluster becomes offline due to the link
          flapping when you do not want it to be offline, soft restarting the nodes
          after removing the custom resource should remove all impairments.\n"
        displayName: cluster-impairment-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network
        - impairment
        - kubernetes
        - openshift
        - tc
        - trafficcontrol
        links:
        - name: Cluster Impairment Operator
          url: https://github.com/redhat-performance/cluster-impairment-operator
        maintainers:
        - email: joconnel@redhat.com
          name: Jared O'Connell
        - email: akrzos@redhat.com
          name: Alex Krzos
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat Performance
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/cluster-impairment-operator@sha256:6fd114eb8f525f670e505373c2999a4e66b53beda988e99b267204d2fe0e1b4f
        - quay.io/redhat-performance/cluster-impairment-operator:1.0.4
        version: 1.0.4
      entries:
      - name: cluster-impairment-operator.v1.0.4
        version: 1.0.4
      - name: cluster-impairment-operator.v1.0.3
        version: 1.0.3
      - name: cluster-impairment-operator.v1.0.2
        version: 1.0.2
      - name: cluster-impairment-operator.v1.0.1
        version: 1.0.1
      name: beta
    defaultChannel: beta
    packageName: cluster-impairment-operator
    provider:
      name: Red Hat Performance
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: dpu-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dpu-network-operator.4.13.0-202309181427
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dpu.openshift.io/v1alpha1",
                "kind": "OVNKubeConfig",
                "metadata": {
                  "name": "ovnkubeconfig-sample"
                },
                "spec": {
                  "kubeConfigFile": "tenant-cluster-1-kubeconf",
                  "nodeSelector": {
                    "matchLabels": {
                      "node-role.kubernetes.io/dpu-worker": ""
                    }
                  },
                  "poolName": "dpu"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional, Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/dpu-network-rhel8-operator@sha256:d07b8ecb5d1625599878b5c1e34b0de94188b81d90c829787a2d13969f6d5971
          createdAt: "2023-07-13T18:03:11Z"
          description: The operator is responsible for the life-cycle management of
            the ovn-kube components and the necessary host network initialization
            on DPU cards.
          olm.skipRange: '>=4.10.0-0 <4.13.0-202309181427'
          operatorframework.io/suggested-namespace: openshift-dpu-network-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/dpu-network-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OVNKubeConfig is the Schema for the ovnkubeconfigs API
            displayName: OVNKube Config
            kind: OVNKubeConfig
            name: ovnkubeconfigs.dpu.openshift.io
            version: v1alpha1
        description: The operator to be responsible for the life-cycle management
          of the ovn-kube components and the necessary host network initialization
          on DPU cards.
        displayName: DPU Network Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dpu
        - network
        links:
        - name: Dpu Network Operator
          url: https://dpu-network-operator.domain
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/dpu-network-rhel8-operator@sha256:d07b8ecb5d1625599878b5c1e34b0de94188b81d90c829787a2d13969f6d5971
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:767682dd3bd65651a8204c9fb732b9c48b99127189992b43abc6ecce027f4589
        - registry.redhat.io/openshift4/dpu-network-operator-bundle@sha256:006edc597eec839f960bfd191b75217fc8c6bfaea9d1694e7ac9fa34266f9b4f
        version: 4.13.0-202309181427
      entries:
      - name: dpu-network-operator.4.13.0-202309181427
        version: 4.13.0-202309181427
      name: stable
    defaultChannel: stable
    packageName: dpu-network-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Isovalent, part of Cisco
      provider-url: https://isovalent.com/
    name: clife
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clife.v1.16.17-cee.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cilium.io/v1alpha1",
                "kind": "CiliumConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "clife"
                  },
                  "name": "ciliumconfig"
                },
                "spec": {
                  "cluster": {
                    "name": "default"
                  },
                  "clusterHealthPort": 9940,
                  "cni": {
                    "binPath": "/var/lib/cni/bin",
                    "chainingMode": "portmap",
                    "confPath": "/var/run/multus/cni/net.d",
                    "exclusive": false
                  },
                  "enterprise": {
                    "featureGate": {
                      "approved": [
                        "CNIChainingMode"
                      ]
                    }
                  },
                  "hubble": {
                    "enabled": true
                  },
                  "ipam": {
                    "mode": "cluster-pool"
                  },
                  "kubeProxyReplacement": false,
                  "operator": {
                    "prometheus": {
                      "enabled": true,
                      "serviceMonitor": {
                        "enabled": true
                      }
                    }
                  },
                  "prometheus": {
                    "enabled": true,
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "securityContext": {
                    "privileged": true
                  },
                  "sessionAffinity": true,
                  "tunnelPort": 4789
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Networking,Security
          createdAt: "2025-11-25T07:15:13Z"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CiliumConfig defines the configuration of Isovalent Networking
              for Kubernetes and all its components
            displayName: CiliumConfig
            kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Networking for Kubernetes, built on Cilium, provides
          eBPF-based networking, observability, and security with optimal scale and
          performance for platform teams operating Kubernetes environments across
          cloud and on-prem infrastructure.
        displayName: Isovalent Networking for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Cilium
        - networking
        - observability
        - security
        - eBPF
        - CNI
        links:
        - name: Isovalent Networking for Kubernetes
          url: https://isovalent.com/product/
        maintainers:
        - email: support@isovalent.com
          name: Isovalent, part of Cisco
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Isovalent, part of Cisco
          url: https://isovalent.com/
        relatedImages:
        - quay.io/isovalent/certgen-ubi:v1.16.17-cee.1@sha256:29b6a63fd696f362feb4845f20ac92f42ca7898a62c380b46704801c271f4c5d
        - quay.io/isovalent/clife@sha256:9dd151a5a693d4126745d93c65ffb30871350e5c7ece43d6175e2483a4387071
        - quay.io/isovalent/hubble-relay-ubi:v1.16.17-cee.1@sha256:fdc9152855df11cca45593a99c4982264037843b4ca0461071564e8919364c55
        - quay.io/isovalent/startup-script-ubi:v1.16.17-cee.1@sha256:acd5d43f2cfee6ab165ef7c34af484a67963be5aecf11039c86b5f7bab6bf58d
        - quay.io/isovalent/cilium-envoy-ubi:v1.16.17-cee.1@sha256:bea6ea831a03793390b3575d531a63450b5a13f1dc56d707986d4b09d4f25083
        - quay.io/isovalent/operator-generic-ubi:v1.16.17-cee.1@sha256:2479dd34bcf22d0dca632b3511df79db0c54229d78e9a60b63a983f4e27d07f9
        - quay.io/isovalent/cilium-ubi:v1.16.17-cee.1@sha256:02a6e4a3b599c9aa5f3cab11f824cb60984da996cb0d18dc50f761c3744f4efb
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.16.17-cee.1@sha256:f5f122e52d8f45e290d9da0170f5dd1360e3789ce021e50841d0176371fa7ba7
        - registry.connect.redhat.com/isovalent/clife-bundle@sha256:c1602e6b2b5afdc108e17734ee8a6ef416dd62eb55fb78cfff6776511d996b1c
        version: 1.16.17-cee.1
      entries:
      - name: clife.v1.16.17-cee.1
        version: 1.16.17-cee.1
      name: "1.16"
    - currentCSV: clife.v1.17.10-cee.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cilium.io/v1alpha1",
                "kind": "CiliumConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "clife"
                  },
                  "name": "ciliumconfig"
                },
                "spec": {
                  "cluster": {
                    "name": "default"
                  },
                  "clusterHealthPort": 9940,
                  "cni": {
                    "binPath": "/var/lib/cni/bin",
                    "chainingMode": "portmap",
                    "confPath": "/var/run/multus/cni/net.d",
                    "exclusive": false
                  },
                  "enterprise": {
                    "featureGate": {
                      "approved": [
                        "CNIChainingMode"
                      ]
                    }
                  },
                  "hubble": {
                    "enabled": true
                  },
                  "ipam": {
                    "mode": "cluster-pool"
                  },
                  "kubeProxyReplacement": false,
                  "operator": {
                    "prometheus": {
                      "enabled": true,
                      "serviceMonitor": {
                        "enabled": true
                      }
                    }
                  },
                  "prometheus": {
                    "enabled": true,
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "securityContext": {
                    "privileged": true
                  },
                  "sessionAffinity": true,
                  "tunnelPort": 4789
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Networking,Security
          createdAt: "2025-12-03T02:47:07Z"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CiliumConfig defines the configuration of Isovalent Networking
              for Kubernetes and all its components
            displayName: CiliumConfig
            kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Networking for Kubernetes, built on Cilium, provides
          eBPF-based networking, observability, and security with optimal scale and
          performance for platform teams operating Kubernetes environments across
          cloud and on-prem infrastructure.
        displayName: Isovalent Networking for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Cilium
        - networking
        - observability
        - security
        - eBPF
        - CNI
        links:
        - name: Isovalent Networking for Kubernetes
          url: https://isovalent.com/product/
        maintainers:
        - email: support@isovalent.com
          name: Isovalent, part of Cisco
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Isovalent, part of Cisco
          url: https://isovalent.com/
        relatedImages:
        - registry.connect.redhat.com/isovalent/clife-bundle@sha256:d101066873649de3146929ced913ddb60ba82c57ef2be5b6dad8d57650c65ee8
        - quay.io/isovalent/cilium-ubi:v1.17.10-cee.2@sha256:9f60ad3e84cd3af01ef597de9e8160a0fa6778eb9c9e6ba33edceb2183631bfa
        - quay.io/isovalent/startup-script-ubi:v1.17.10-cee.2@sha256:28920cfccc2001abab830248ae627c313eb6eb1652018972ce7b4931904e1f49
        - quay.io/isovalent/certgen-ubi:v1.17.10-cee.2@sha256:12101c99158461fc2a8d66edad8226825ef38cf383ac673126e08b0b23b4ae72
        - quay.io/isovalent/clife@sha256:49d40a233552fc881bfdd1be35912e1e4392181ccb85937bc42c9475d857284e
        - quay.io/isovalent/cilium-envoy-ubi:v1.17.10-cee.2@sha256:c49bf199b69d159dfb281b33bbd2fa8c5b2534dc04b7062fe53e41d079ed7629
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.17.10-cee.2@sha256:1d5eaafd93007172cbd22e3bde8ba37d4208be6621cc12f4550eb4910f70e7fb
        - quay.io/isovalent/hubble-relay-ubi:v1.17.10-cee.2@sha256:abfcafbf62bced38cd883ff4da609aab9ce94bd36370a7aff3c4fdbd237d4898
        - quay.io/isovalent/operator-generic-ubi:v1.17.10-cee.2@sha256:45c76bd41041f67d77634b83e5e6fbc016ff1b7905afb6424dba6b6c27340561
        version: 1.17.10-cee.2
      entries:
      - name: clife.v1.17.10-cee.2
        version: 1.17.10-cee.2
      - name: clife.v1.17.10-cee.1
        version: 1.17.10-cee.1
      - name: clife.v1.17.9-cee.1
        version: 1.17.9-cee.1
      - name: clife.v1.17.8-cee.1
        version: 1.17.8-cee.1
      - name: clife.v1.17.7-cee.1
        version: 1.17.7-cee.1
      - name: clife.v1.17.5-cee.1
        version: 1.17.5-cee.1
      - name: clife.v1.17.4-cee.1
        version: 1.17.4-cee.1
      - name: clife.v0.0.1
        version: 0.0.1
      name: "1.17"
    - currentCSV: clife.v1.18.4-cee.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cilium.io/v1alpha1",
                "kind": "CiliumConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "clife"
                  },
                  "name": "ciliumconfig"
                },
                "spec": {
                  "cluster": {
                    "name": "default"
                  },
                  "clusterHealthPort": 9940,
                  "cni": {
                    "binPath": "/var/lib/cni/bin",
                    "chainingMode": "portmap",
                    "confPath": "/var/run/multus/cni/net.d",
                    "exclusive": false
                  },
                  "enterprise": {
                    "featureGate": {
                      "approved": [
                        "CNIChainingMode"
                      ]
                    }
                  },
                  "hubble": {
                    "enabled": true
                  },
                  "ipam": {
                    "mode": "cluster-pool"
                  },
                  "kubeProxyReplacement": false,
                  "operator": {
                    "prometheus": {
                      "enabled": true,
                      "serviceMonitor": {
                        "enabled": true
                      }
                    }
                  },
                  "prometheus": {
                    "enabled": true,
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "securityContext": {
                    "privileged": true
                  },
                  "sessionAffinity": true,
                  "tunnelPort": 4789
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Networking,Security
          createdAt: "2025-11-25T07:07:17Z"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CiliumConfig defines the configuration of Isovalent Networking
              for Kubernetes and all its components
            displayName: CiliumConfig
            kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Networking for Kubernetes, built on Cilium, provides
          eBPF-based networking, observability, and security with optimal scale and
          performance for platform teams operating Kubernetes environments across
          cloud and on-prem infrastructure.
        displayName: Isovalent Networking for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Cilium
        - networking
        - observability
        - security
        - eBPF
        - CNI
        links:
        - name: Isovalent Networking for Kubernetes
          url: https://isovalent.com/product/
        maintainers:
        - email: support@isovalent.com
          name: Isovalent, part of Cisco
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Isovalent, part of Cisco
          url: https://isovalent.com/
        relatedImages:
        - quay.io/isovalent/cilium-envoy-ubi:v1.18.4-cee.1@sha256:d40843aa7dbd9e3136d9491f231182a85e7c163f5aab97d64270e12389bc5be4
        - quay.io/isovalent/startup-script-ubi:v1.18.4-cee.1@sha256:d8396159dcf9b80e0b53d368da7b76a815f27439659995116b873070a3a4ba6b
        - registry.connect.redhat.com/isovalent/clife-bundle@sha256:f18fb8ec75c6664461a770dbb358f07822c965f72cff2be79fff733c30b26d26
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.18.4-cee.1@sha256:e6b85075e551fb685f7a87557373d7d315d461d0b59ceeaff353a253290cbcbb
        - quay.io/isovalent/cilium-ubi:v1.18.4-cee.1@sha256:039a42fe11110cc80a522341be889ab9be925532256427b71a240f021155171c
        - quay.io/isovalent/hubble-relay-ubi:v1.18.4-cee.1@sha256:c6ed87627321b26c9451c1a1cd5dad9fde71359106161c855ec2ae52a39e162c
        - quay.io/isovalent/operator-generic-ubi:v1.18.4-cee.1@sha256:15077a75abb86af2c628d600acd76682c4e3cec6f05f51ee1060bf4c43192013
        - quay.io/isovalent/certgen-ubi:v1.18.4-cee.1@sha256:009324b74b0ad203fa8093c57f9d8981d81a4f80a2b8472fc986a70c9cb5bc3d
        - quay.io/isovalent/clife@sha256:bf1953df529e58d15d1ae9ff1293e6eb22e6e38cc628620420b19cfc6e3e9b99
        version: 1.18.4-cee.1
      entries:
      - name: clife.v1.18.4-cee.1
        version: 1.18.4-cee.1
      name: "1.18"
    defaultChannel: "1.17"
    packageName: clife
    provider:
      name: Isovalent, part of Cisco
      url: https://isovalent.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ecr-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ecr-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecr.services.k8s.aws/v1alpha1",
                "kind": "Repository",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ecr-controller:1.4.0
          createdAt: "2025-11-29T03:26:30Z"
          description: AWS ECR controller is a service controller for managing ECR
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PullThroughCacheRule represents the state of an AWS ecr PullThroughCacheRule
              resource.
            displayName: PullThroughCacheRule
            kind: PullThroughCacheRule
            name: pullthroughcacherules.ecr.services.k8s.aws
            version: v1alpha1
          - description: Repository represents the state of an AWS ecr Repository
              resource.
            displayName: Repository
            kind: Repository
            name: repositories.ecr.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Elastic Container Registry (ECR) resources in AWS from within your Kubernetes cluster.

          **About Amazon ECR**

          Amazon Elastic Container Registry (Amazon ECR) is an AWS managed container image registry service that is secure, scalable, and reliable. Amazon ECR supports private repositories with resource-based permissions using AWS IAM. This is so that specified users or Amazon EC2 instances can access your container repositories and images. You can use your preferred CLI to push, pull, and manage Docker images, Open Container Initiative (OCI) images, and OCI compatible artifacts.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ECR
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecr
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ECR Developer Resources
          url: https://aws.amazon.com/ecr/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ecr maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ecr-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-ecr-controller@sha256:07c2be7962f1f53174d5b24c81f0732e834aaabceff3561e06bde2799e300c0d
        version: 1.4.0
      entries:
      - name: ack-ecr-controller.v1.4.0
        version: 1.4.0
      - name: ack-ecr-controller.v1.3.3
        version: 1.3.3
      - name: ack-ecr-controller.v1.3.2
        version: 1.3.2
      - name: ack-ecr-controller.v1.3.1
        version: 1.3.1
      - name: ack-ecr-controller.v1.3.0
        version: 1.3.0
      - name: ack-ecr-controller.v1.2.0
        version: 1.2.0
      - name: ack-ecr-controller.v1.1.0
        version: 1.1.0
      - name: ack-ecr-controller.v1.0.33
        version: 1.0.33
      - name: ack-ecr-controller.v1.0.32
        version: 1.0.32
      - name: ack-ecr-controller.v1.0.31
        version: 1.0.31
      - name: ack-ecr-controller.v1.0.30
        version: 1.0.30
      - name: ack-ecr-controller.v1.0.29
        version: 1.0.29
      - name: ack-ecr-controller.v1.0.28
        version: 1.0.28
      - name: ack-ecr-controller.v1.0.27
        version: 1.0.27
      - name: ack-ecr-controller.v1.0.25
        version: 1.0.25
      - name: ack-ecr-controller.v1.0.24
        version: 1.0.24
      - name: ack-ecr-controller.v1.0.23
        version: 1.0.23
      - name: ack-ecr-controller.v1.0.22
        version: 1.0.22
      - name: ack-ecr-controller.v1.0.21
        version: 1.0.21
      - name: ack-ecr-controller.v1.0.20
        version: 1.0.20
      - name: ack-ecr-controller.v1.0.19
        version: 1.0.19
      - name: ack-ecr-controller.v1.0.17
        version: 1.0.17
      - name: ack-ecr-controller.v1.0.16
        version: 1.0.16
      - name: ack-ecr-controller.v1.0.15
        version: 1.0.15
      - name: ack-ecr-controller.v1.0.14
        version: 1.0.14
      - name: ack-ecr-controller.v1.0.12
        version: 1.0.12
      - name: ack-ecr-controller.v1.0.10
        version: 1.0.10
      - name: ack-ecr-controller.v1.0.9
        version: 1.0.9
      - name: ack-ecr-controller.v1.0.8
        version: 1.0.8
      - name: ack-ecr-controller.v1.0.7
        version: 1.0.7
      - name: ack-ecr-controller.v1.0.6
        version: 1.0.6
      - name: ack-ecr-controller.v1.0.4
        version: 1.0.4
      - name: ack-ecr-controller.v1.0.3
        version: 1.0.3
      - name: ack-ecr-controller.v1.0.2
        version: 1.0.2
      - name: ack-ecr-controller.v1.0.0
        version: 1.0.0
      - name: ack-ecr-controller.v0.1.9
        version: 0.1.9
      - name: ack-ecr-controller.v0.1.7
        version: 0.1.7
      - name: ack-ecr-controller.v0.1.6
        version: 0.1.6
      - name: ack-ecr-controller.v0.1.5
        version: 0.1.5
      - name: ack-ecr-controller.v0.1.4
        version: 0.1.4
      - name: ack-ecr-controller.v0.1.3
        version: 0.1.3
      - name: ack-ecr-controller.v0.1.2
        version: 0.1.2
      - name: ack-ecr-controller.v0.1.1
        version: 0.1.1
      - name: ack-ecr-controller.v0.1.0
        version: 0.1.0
      - name: ack-ecr-controller.v0.0.27
        version: 0.0.27
      - name: ack-ecr-controller.v0.0.26
        version: 0.0.26
      - name: ack-ecr-controller.v0.0.25
        version: 0.0.25
      - name: ack-ecr-controller.v0.0.24
        version: 0.0.24
      - name: ack-ecr-controller.v0.0.23
        version: 0.0.23
      - name: ack-ecr-controller.v0.0.22
        version: 0.0.22
      - name: ack-ecr-controller.v0.0.21
        version: 0.0.21
      - name: ack-ecr-controller.v0.0.20
        version: 0.0.20
      - name: ack-ecr-controller.v0.0.19
        version: 0.0.19
      - name: ack-ecr-controller.v0.0.18
        version: 0.0.18
      - name: ack-ecr-controller.v0.0.17
        version: 0.0.17
      - name: ack-ecr-controller.v0.0.16
        version: 0.0.16
      - name: ack-ecr-controller.v0.0.15
        version: 0.0.15
      - name: ack-ecr-controller.v0.0.14
        version: 0.0.14
      - name: ack-ecr-controller.v0.0.13
        version: 0.0.13
      - name: ack-ecr-controller.v0.0.12
        version: 0.0.12
      - name: ack-ecr-controller.v0.0.11
        version: 0.0.11
      name: alpha
    defaultChannel: alpha
    packageName: ack-ecr-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: kubevirt-hyperconverged
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubevirt-hyperconverged-operator.v4.20.4
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"openshift-cnv"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployVmConsoleProxy":true},"templateValidator":{"replicas":2}}},{"apiVersion":"ssp.kubevirt.io/v1beta3","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "true"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:748b24436b546d7eefacc3fc95803ee5dae4b4def6802e265523415aab09fc86
          createdAt: "2025-12-28 21:17:40"
          description: Creates and maintains an OpenShift Virtualization Deployment
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          openshift.io/required-scc: restricted-v2
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"openshift-cnv"},"spec":{}}'
          operatorframework.io/suggested-namespace: openshift-cnv
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware","fips","sno"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:2357fb1d24d0d7adfabeb4573f00ffaee77a969dd06c8899e42d398d9cb3807d
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: Red Hat
          test-images-nvrs: kubevirt-ssp-operator-test-rhel9:v4.20.4-6,hyperconverged-cluster-operator-test-rhel9:v4.20.4-4,kubevirt-common-instancetypes-test-rhel9:v4.20.4-3,kubevirt-tekton-tasks-test-rhel9:v4.20.4-3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of OpenShift Virtualization
            displayName: OpenShift Virtualization Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta3
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Details
          **OpenShift Virtualization** extends Red Hat OpenShift Container Platform, allowing you to host and manage virtualized workloads on the same platform as container-based workloads. From the OpenShift Container Platform web console, you can import a VMware virtual machine from vSphere, create new or clone existing VMs, perform live migrations between nodes, and more. You can use OpenShift Virtualization to manage both Linux and Windows VMs.

          The technology behind OpenShift Virtualization is developed in the [KubeVirt](https://kubevirt.io) open source community. The KubeVirt project extends [Kubernetes](https://kubernetes.io) by adding additional virtualization resource types through [Custom Resource Definitions](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/) (CRDs). Administrators can use Custom Resource Definitions to manage `VirtualMachine` resources alongside all other resources that Kubernetes provides.
        displayName: OpenShift Virtualization
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        - CNV
        - Container-native virtualization
        - Container native virtualization
        - Virt
        - Virtual
        links:
        - name: Source Code
          url: https://github.com/kubevirt
        - name: OpenShift Virtualization
          url: https://www.openshift.com/learn/topics/virtualization/
        - name: KubeVirt Project
          url: https://kubevirt.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/container-native-virtualization/ocp-virt-validation-checkup-rhel9@sha256:b44ea7853c23ab1320f68f8693defb47e89dba2f7301ad46f5e28d71f1fc99c9
        - registry.redhat.io/container-native-virtualization/virt-artifacts-server-rhel9@sha256:6db561d095d29d656abba9713392fd94cdf031e7ecaf1c9df5b8460c45730df8
        - registry.redhat.io/container-native-virtualization/wasp-agent-rhel9@sha256:2979769ff3b5d494633f221190a9520503a1526dfcdaf930f0d7526e370ea473
        - registry.redhat.io/container-native-virtualization/vm-network-latency-checkup-rhel9@sha256:62b720486b6e60adb9aa86b83117d48197abdcd8e3aef972ec2213b3fbec98b0
        - registry.redhat.io/container-native-virtualization/aaq-controller-rhel9@sha256:8d45195acdeb8aa507ce9d6a89de4197f2564f9f1daae19fbd771090586d2ad3
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:748b24436b546d7eefacc3fc95803ee5dae4b4def6802e265523415aab09fc86
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-create-datavolume-rhel9@sha256:2efcb5bf1bd79d0e8f4b9b0dd3d91d93ad56fa9db5645ce1cba80eb061907624
        - registry.redhat.io/container-native-virtualization/kubevirt-apiserver-proxy-rhel9@sha256:752cd22c335aa4963f4b9311cb05fd18ea6bb89e5031b627459a0d9919d10ad5
        - registry.redhat.io/container-native-virtualization/kubevirt-ssp-operator-rhel9@sha256:c2f128f9001c0c67619386e1a860663cfa8b6b1f790af1ef00670d76c686c4e5
        - registry.redhat.io/container-native-virtualization/virt-controller-rhel9@sha256:8e6a791528a0b8809d38ce153e80e9e1f19c58a2415777e617631ea7876d2b7a
        - registry.redhat.io/container-native-virtualization/virt-cdi-importer-rhel9@sha256:edeb0af7736a94afa9ada1ba7be1254264754a0df41e761f6d53463b5f07fcf5
        - registry.redhat.io/container-native-virtualization/virt-exportserver-rhel9@sha256:45a57cc3913b84e841be83daabdc5f5985d55075c0d371af9daffca1152ac0ad
        - registry.redhat.io/container-native-virtualization/cnv-containernetworking-plugins-rhel9@sha256:a62635a6a458fb26f702fe77afb8976e23e37ee069bfd37f4c7029841ece8d63
        - registry.redhat.io/container-native-virtualization/virt-exportproxy-rhel9@sha256:6c5f2307fee82aa4c09be8250d52f2b5afdcddea6558879f161df0e184df9146
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:ef0dca763d85023bf3b1e3be135177007b1fe5c56bc356a8cf7145b4dd3c669c
        - registry.redhat.io/container-native-virtualization/virt-cdi-controller-rhel9@sha256:c4a38bcc6094b76a0f082d20e5dff3f2912da442930804c4c42c3018aff2709c
        - registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:2357fb1d24d0d7adfabeb4573f00ffaee77a969dd06c8899e42d398d9cb3807d
        - registry.redhat.io/container-native-virtualization/virt-api-rhel9@sha256:e5fbde9eca277212206e4e1b619ea1809e7e6506dd6ea86b6d34a75f128060fa
        - registry.redhat.io/container-native-virtualization/kubevirt-ipam-controller-rhel9@sha256:ec6699bb6f648cd70065a3849c6bf3a57722d0f6fc87c1a8b582e18bb9e4ebce
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-disk-virt-customize-rhel9@sha256:34df9b10d96231666cb0bff52ffe2a2a07c38b73e20472bcd005f5961ae3b7a6
        - registry.redhat.io/container-native-virtualization/vm-console-proxy-rhel9@sha256:cb3d2fee13d9a82ad852495da7d9a2cf1b003edd39bf1edc34096bbd9005d28b
        - registry.redhat.io/container-native-virtualization/virt-synchronization-controller-rhel9@sha256:376d3b416da5afaab1b525d9cbc508ed10e1d9adcd29d0d05e2b51ccefc5ef73
        - registry.redhat.io/container-native-virtualization/virt-migration-controller-rhel9@sha256:8c16cfd74922b28b0adeafd422b7b2dc3896c35d7000c9d5e57be0f566058f78
        - registry.redhat.io/container-native-virtualization/kubevirt-api-lifecycle-automation-rhel9@sha256:c2b07b95fd47a5d968e809303d9ab79286dcde62bf173adc5717586ec182c0fa
        - registry.redhat.io/container-native-virtualization/virt-launcher-rhel9@sha256:8fde93d45a81ecdee95649a281f80a9b2a0a71952771a43f0555cb97ef7d1605
        - registry.redhat.io/container-native-virtualization/virt-handler-rhel9@sha256:6611d88a0c69650f1c2c9b946ed6df976b3312226ecfac1800bdd4e187ac9629
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/container-native-virtualization/kubevirt-common-instancetypes-rhel9@sha256:3cbace21d5a03b007e4fadebbb584d7c5daff150fb974707b2d8d7a2caa33159
        - registry.redhat.io/container-native-virtualization/ovs-cni-plugin-rhel9@sha256:7d9eb580f06b9077c45bb6a42287882e0ead5b4eead67e05a77f0d3345b5256f
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-cni-rhel9@sha256:230ccf9d52838aef4c236d51aef22f71ce0c548f56b384a7361921492c68abdc
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-operator-rhel9@sha256:56f2401c00e5b6f4ff7262725ddce0b4cd431a3eb7e393385b6b9db8e3506b91
        - registry.redhat.io/openshift4/ose-coredns-rhel9@sha256:943018739e3db1763c3184b460dbc409e058abbac76d57b9927faad317be85e4
        - registry.redhat.io/container-native-virtualization/multus-dynamic-networks-rhel9@sha256:cea5e74574f8d3ac40cf63b4084ad107d4efff5f5f6c87f1dd655109b5bb0c8a
        - registry.redhat.io/container-native-virtualization/virt-cdi-operator-rhel9@sha256:abfa2a92650be61f1785643bcd051dfc26c186974430e2c7aaf722665a057e93
        - registry.redhat.io/container-native-virtualization/aaq-server-rhel9@sha256:d3036a5f83bd488ac4d641c17cbad9f7621943edc2dd86be5b0b6119019c9d52
        - registry.redhat.io/container-native-virtualization/virtio-win-rhel9@sha256:d6c330e2a2b56fa9e75f57c3f75e95096862b6c8ca31069de8f41f64e8481e26
        - registry.redhat.io/container-native-virtualization/kubevirt-template-validator-rhel9@sha256:28106cbd0375054cf0d06f3fd55d3add39fc26dde9a35a22cb6a95cd0fe59003
        - registry.redhat.io/container-native-virtualization/kubesecondarydns-rhel9@sha256:d198956224d3333bae0b872616faa2affd98947e19ff4da78e3ec28cd632119e
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadserver-rhel9@sha256:53daad8fa0b71bf5e362ee44c50b0e70cd976b6b30d425d5e29088fb8163f8fc
        - registry.redhat.io/container-native-virtualization/virt-cdi-apiserver-rhel9@sha256:ef3b5088f20b1e0b101f22d307876b87fa9ce0b3248b26e0e1d4e003cd89256b
        - registry.redhat.io/container-native-virtualization/pr-helper-rhel9@sha256:3857e1d21bcb5fe82ef0d8efa8969b90e150c2659fd115b2e357b2c137b19a4c
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/container-native-virtualization/kubevirt-console-plugin-rhel9@sha256:c451d67a6a1154c3f31dee5aa573b87484becc3527ed36a1c553a1013184fcf9
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-sidecar-rhel9@sha256:96bd1b744a5e034cb3831c2c9c45b0ec65130f1ba124946f74633a2795f23fe8
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-rhel9@sha256:e4aece12cd6900642c54597bb774baa476c0d3c09b8f94cd6cb8f30d21204010
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/container-native-virtualization/kubemacpool-rhel9@sha256:600ca5470697e6dc1d8dd51b905943773b8bb602d8f167dbbfe4328168853514
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/container-native-virtualization/hostpath-csi-driver-rhel9@sha256:04096d91f02fae6188a085e456227a0bb52e52f07f966bfc883c63e7f50d6870
        - registry.redhat.io/container-native-virtualization/cluster-network-addons-operator-rhel9@sha256:6ea1f813aa546acc9887f809207a7fd2a5d913ae0f42d944d7923620a4fe877c
        - registry.redhat.io/container-native-virtualization/virt-migration-operator-rhel9@sha256:357057fb344983d0cc0b29ccbc8be12deaa3ca506023064988cfccb41557a645
        - registry.redhat.io/container-native-virtualization/virt-operator-rhel9@sha256:9eb617c02a50e52ff412c97fe2ece275d9a682686bbb127a3a6ce51f6864d6b4
        - registry.redhat.io/container-native-virtualization/virt-cdi-cloner-rhel9@sha256:829714c6d8ae2160e3b3e4e4680e637d3c5abaad985ad6a166a80cef9605c75e
        - registry.redhat.io/container-native-virtualization/kubevirt-storage-checkup-rhel9@sha256:167957fc864966c356d70a6c333b03404c8234e4ece8e8abc6169de86b409983
        - registry.redhat.io/container-native-virtualization/sidecar-shim-rhel9@sha256:74180dbda759a0f30b9c9321585ced206afea318ddbcbb362bbb61f1b6978597
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadproxy-rhel9@sha256:26b86907ad25fe1bddfc69c1227e403879fffd1495c52c9d833ac2ae44ebcb75
        - registry.redhat.io/container-native-virtualization/libguestfs-tools-rhel9@sha256:9997909581c8cd9150f4581a3aec964691dbbfd3b92a06679b0e795830599052
        - registry.redhat.io/container-native-virtualization/bridge-marker-rhel9@sha256:d1d96c13e31b52fd4d0cfa6c463752b496d4561ca1d073ca7d05095221922d60
        - registry.redhat.io/container-native-virtualization/aaq-operator-rhel9@sha256:1ec50edc886c4fcd04bdc9de3e9880e90824741f8d6ae384f69f579fa6ae2c50
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/container-native-virtualization/hco-bundle-registry-rhel9@sha256:dd0f81a803da2b2c520f922039045e2db9b96c61cea26d60eda9c7c9626bc449
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-webhook-rhel9@sha256:34982a06432fbee263892b58d24409e3f2119f649abd510609c8fbc63f7c4953
        version: 4.20.4
      entries:
      - name: kubevirt-hyperconverged-operator.v4.20.4
        version: 4.20.4
      - name: kubevirt-hyperconverged-operator.v4.20.3
        version: 4.20.3
      - name: kubevirt-hyperconverged-operator.v4.20.2
        version: 4.20.2
      - name: kubevirt-hyperconverged-operator.v4.20.1
        version: 4.20.1
      name: candidate
    - currentCSV: kubevirt-hyperconverged-operator.v4.20.3
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"openshift-cnv"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployVmConsoleProxy":true},"templateValidator":{"replicas":2}}},{"apiVersion":"ssp.kubevirt.io/v1beta3","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "true"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:774619385a49ac6c60b3eab5d0b7e81ef1399cbb15dd341f7a445117ad3136f8
          createdAt: "2025-12-12 15:08:43"
          description: Creates and maintains an OpenShift Virtualization Deployment
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          openshift.io/required-scc: restricted-v2
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"openshift-cnv"},"spec":{}}'
          operatorframework.io/suggested-namespace: openshift-cnv
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware","fips","sno"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:cb51501b85b3734f42c933d8a6e20dd4312c426e0c34175ac83c86af789b8878
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: Red Hat
          test-images-nvrs: kubevirt-ssp-operator-test-rhel9:v4.20.3-7,hyperconverged-cluster-operator-test-rhel9:v4.20.3-5,kubevirt-common-instancetypes-test-rhel9:v4.20.3-3,kubevirt-tekton-tasks-test-rhel9:v4.20.3-6
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of OpenShift Virtualization
            displayName: OpenShift Virtualization Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta3
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Details
          **OpenShift Virtualization** extends Red Hat OpenShift Container Platform, allowing you to host and manage virtualized workloads on the same platform as container-based workloads. From the OpenShift Container Platform web console, you can import a VMware virtual machine from vSphere, create new or clone existing VMs, perform live migrations between nodes, and more. You can use OpenShift Virtualization to manage both Linux and Windows VMs.

          The technology behind OpenShift Virtualization is developed in the [KubeVirt](https://kubevirt.io) open source community. The KubeVirt project extends [Kubernetes](https://kubernetes.io) by adding additional virtualization resource types through [Custom Resource Definitions](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/) (CRDs). Administrators can use Custom Resource Definitions to manage `VirtualMachine` resources alongside all other resources that Kubernetes provides.
        displayName: OpenShift Virtualization
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        - CNV
        - Container-native virtualization
        - Container native virtualization
        - Virt
        - Virtual
        links:
        - name: Source Code
          url: https://github.com/kubevirt
        - name: OpenShift Virtualization
          url: https://www.openshift.com/learn/topics/virtualization/
        - name: KubeVirt Project
          url: https://kubevirt.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/container-native-virtualization/libguestfs-tools-rhel9@sha256:4d5457ce137f9984f3a8227be66b51df7ca24d2cee950c7a62fe07e4da8c957a
        - registry.redhat.io/container-native-virtualization/bridge-marker-rhel9@sha256:13475ebdb09e49a5f33cb255491226415752551adbf19f1f11555ade84832490
        - registry.redhat.io/container-native-virtualization/vm-network-latency-checkup-rhel9@sha256:2279ab798e8c18b13c87cbce75e6018a9b5be872666c9a19b4929837ca7784d2
        - registry.redhat.io/container-native-virtualization/virt-cdi-importer-rhel9@sha256:84d3534ff8027475d41f6dee3c827640905b98dc5251c6a31abad5c7d4cdb2dc
        - registry.redhat.io/container-native-virtualization/ovs-cni-plugin-rhel9@sha256:8870efa7ee50541cdef7a9058cda0030e66e31eeee26209443de888aa472fd40
        - registry.redhat.io/container-native-virtualization/virt-migration-controller-rhel9@sha256:bf5236671c5f149cb69c58acc3204a3dbd5531022342b3ab4e70908c46ed75d6
        - registry.redhat.io/container-native-virtualization/hco-bundle-registry-rhel9@sha256:b648126d95b88bf7cd346dd2a112fb77e2686d899ea51fe1090a510bc2ec8f24
        - registry.redhat.io/container-native-virtualization/hostpath-csi-driver-rhel9@sha256:95f0ee74ce70b75c23ffba8d400db7018bb5d8b002ffa20bc4326cadb1aa1434
        - registry.redhat.io/container-native-virtualization/virt-launcher-rhel9@sha256:3138ad3a4471ca69be37fbe50a96be4b89e120de0e2808067ca99ff576f16256
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-operator-rhel9@sha256:304b1845e9b7bf2b443b6c889e2e37e446908f02d70f9733e4206f9799e9e963
        - registry.redhat.io/container-native-virtualization/pr-helper-rhel9@sha256:9a2691eafd72990f03f4600e0fac40e1572479493723387c159f66261a85eeab
        - registry.redhat.io/container-native-virtualization/kubevirt-api-lifecycle-automation-rhel9@sha256:6644a1c779f055ced237d73fa5a92abb0b61119983d1dc966b5e5592e58839f0
        - registry.redhat.io/container-native-virtualization/wasp-agent-rhel9@sha256:554c6882d9c1320274c17336f5efd80a615b5a6b97a4383f452813e080ccd9da
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:5d7478a62742900e39d7b007dde5375cd06c6076ced6dab69d805f5fcce3f342
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadserver-rhel9@sha256:ad84fd70798dab76dd65da6a0e54d34d1b233f042df97b0c2894ce5cba641e03
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-sidecar-rhel9@sha256:665bd5625630898222a3ecf02244ce31f38f310c87f5f6529ab53ca22ecb5237
        - registry.redhat.io/container-native-virtualization/kubevirt-ssp-operator-rhel9@sha256:fad86adf9d9e682e9aff8764c776d2650e78b0d7101fd6c2804a4c445a9daebd
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:1c480fa5089a32cf804fc84df7219ca64066cbac2eeb962c4385754132c3873b
        - registry.redhat.io/container-native-virtualization/virt-cdi-apiserver-rhel9@sha256:18b1188326dc55855da1afe01659fa0ea06fc9f0d5c8a2154f2aedcf49a204dc
        - registry.redhat.io/container-native-virtualization/aaq-controller-rhel9@sha256:7da428ce43d513b042b5f6b58e58b134937071df97f769d8e191ac178a34d5d9
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:774619385a49ac6c60b3eab5d0b7e81ef1399cbb15dd341f7a445117ad3136f8
        - registry.redhat.io/container-native-virtualization/kubemacpool-rhel9@sha256:89beb3c6acc06cf04d97ffa7f1791ab380f873b692e5e694b476558693590759
        - registry.redhat.io/container-native-virtualization/vm-console-proxy-rhel9@sha256:013b3f599fd23278b88ec362c9b89ca3df3f5820a9820bc6ceeeff76f1ec1a2a
        - registry.redhat.io/container-native-virtualization/virt-operator-rhel9@sha256:1823a4c581900087411be32c46297e8224087ebad0c10adafb1e48fc9fb5af8f
        - registry.redhat.io/container-native-virtualization/kubevirt-storage-checkup-rhel9@sha256:ed454addfc02bdde63bfa619f53d036128d107cc1cff3f595819521be1671e59
        - registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:cb51501b85b3734f42c933d8a6e20dd4312c426e0c34175ac83c86af789b8878
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:4cf3eca6e1f958a9b3c14cdb6be536a2b8f11491b475b23dbfee4eee8de8a60d
        - registry.redhat.io/container-native-virtualization/virt-cdi-operator-rhel9@sha256:aa1d79d10ab0f88f472eace2961cc0b83963b13517f636b4db74f9636fbf993d
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadproxy-rhel9@sha256:5bc8eba190a09b03141b866c50c7ee244631e2d7e9fd76c6fb3bdce933b20f9c
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-create-datavolume-rhel9@sha256:6473ce9becf07dac29d2bb597fb1c9088475f2ce3d71c635ac41b13ee6d620c5
        - registry.redhat.io/container-native-virtualization/virt-synchronization-controller-rhel9@sha256:9e46d42b1c81ef70de81b43109b7d3cff9c259899da6454467e6ceef4cd069fc
        - registry.redhat.io/container-native-virtualization/aaq-operator-rhel9@sha256:3c3a543b0cf8b8f7031a31790c474d01fa23ca8ebd581f4a4fc1f42a4c4cce71
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:ef0dca763d85023bf3b1e3be135177007b1fe5c56bc356a8cf7145b4dd3c669c
        - registry.redhat.io/container-native-virtualization/kubevirt-console-plugin-rhel9@sha256:80192f34263a9a9a8ef9812f7b8dc37090ace003e257e74db58902f4a1299887
        - registry.redhat.io/container-native-virtualization/cnv-containernetworking-plugins-rhel9@sha256:fbec311480fc899bada5159771ce6d33ff8adbdd2a2c53e1f08e2bca75b2abac
        - registry.redhat.io/container-native-virtualization/virtio-win-rhel9@sha256:e38fa87ca295c7f750e207b5c29ea9e4c784e51a2e9a365719cd6e45d55642e6
        - registry.redhat.io/container-native-virtualization/kubevirt-template-validator-rhel9@sha256:a1b60487bef71216a67daacfeaa357de08f94294be66187cb219d06645076616
        - registry.redhat.io/openshift4/ose-coredns-rhel9@sha256:2a4fa36bccbd1750c7ba21d8774592205558eefa10c4a59807d0d7fb255c4d7d
        - registry.redhat.io/container-native-virtualization/virt-exportserver-rhel9@sha256:89a4a5077410687afaeceb73af8c43d6330661ceb34225c72a7a18785321a6e1
        - registry.redhat.io/container-native-virtualization/virt-cdi-cloner-rhel9@sha256:ae01e86a9f67be13e9072b9491b86c6fb1682f153dadaf86afdd8269c04e8e58
        - registry.redhat.io/container-native-virtualization/sidecar-shim-rhel9@sha256:6abf158997ac1207a2ae7d0589d830a14e5724905c98e84b32a3b41882211e04
        - registry.redhat.io/container-native-virtualization/virt-controller-rhel9@sha256:9451fbcaaf9b486168195661f3b370a34656bbe856133644cec7364fb0f9327a
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:ea07bb35db9c047015fb6292608d28572fed17b3d190bb2cb3127e63404be654
        - registry.redhat.io/container-native-virtualization/kubevirt-apiserver-proxy-rhel9@sha256:2efdb15604ea5ee3b71dda28c796ed67651e7d3a2811739542f702c285e8873d
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-disk-virt-customize-rhel9@sha256:14eb7f410c4e2fbd7416a3aedbfba5f45e401e3bd9d4f49b68bbb3bbc47ba59f
        - registry.redhat.io/container-native-virtualization/virt-api-rhel9@sha256:dc021c2d95737add38dbe43a961e8ae2ae8245df3cbcf46727b3ad89d8e27af1
        - registry.redhat.io/container-native-virtualization/virt-exportproxy-rhel9@sha256:1fb533343f9eb45062f1817e8be3e46c315887fc24d146fce4d83b53fcdbd6c6
        - registry.redhat.io/container-native-virtualization/virt-handler-rhel9@sha256:fb61c086221a580b2a084611d0163635eda53d584c390f8df52a730e22925922
        - registry.redhat.io/container-native-virtualization/cluster-network-addons-operator-rhel9@sha256:c370e913c758e0a896a1bf47ceec0a44ae3019232f33ea6994b90ed7f4567c65
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-rhel9@sha256:80355df8da40dd604f65b897b4987b64c1c7aca77811a4f013659e0e4abde531
        - registry.redhat.io/container-native-virtualization/kubesecondarydns-rhel9@sha256:c91fc0b7b07743c58c449155d1fcc43844e0f1c909b058fd1126674978afe5f4
        - registry.redhat.io/container-native-virtualization/virt-migration-operator-rhel9@sha256:93d4db5d1afac1364915dc2284c6f58a0d4e1f9cd8395d84177dee0568f8fae5
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-webhook-rhel9@sha256:9f081d7b24658145adb4ba5ed494091be3968cb4c8305f2e197a49f6d61226a3
        - registry.redhat.io/container-native-virtualization/virt-artifacts-server-rhel9@sha256:63f4d29d6724055bc857b9113c7ee2cc686f0a4c70dc0600b24b6a51d03b1ec4
        - registry.redhat.io/container-native-virtualization/kubevirt-common-instancetypes-rhel9@sha256:22790edf1eea155cf40943609499deb577283bdee8d8cf3a5bde67c7806f152c
        - registry.redhat.io/container-native-virtualization/kubevirt-ipam-controller-rhel9@sha256:3dcd47d947a86c87d35dcb26da02dda2b9478bcaafe9c809db76707508353570
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:591720c7e2301931e160cf1280c6b55bba9de1fe6a38545de09e05be38c50fc1
        - registry.redhat.io/container-native-virtualization/aaq-server-rhel9@sha256:65ef0b5b5f2be5c829f9d25a9ef5a0e54505051d40b6233df4353e7761bd2909
        - registry.redhat.io/container-native-virtualization/ocp-virt-validation-checkup-rhel9@sha256:244f5df211adf0631afdd76786d98b2bc01bff8ac11d1d47d87e3022d999ec47
        - registry.redhat.io/container-native-virtualization/virt-cdi-controller-rhel9@sha256:508963662b9172f0d5e3d16b91a3a359c45ce050bdb8e5d0ddb99fdc2b44b260
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-cni-rhel9@sha256:899349fd7dde3ace0171661f61a34d0e794750f16f0e59003073239d109c4ac8
        - registry.redhat.io/container-native-virtualization/multus-dynamic-networks-rhel9@sha256:2bc541d27e9be750363c3706fd0692bdaa5b16b69efa842be7f16046fec2b8a0
        version: 4.20.3
      entries:
      - name: kubevirt-hyperconverged-operator.v4.20.3
        version: 4.20.3
      - name: kubevirt-hyperconverged-operator.v4.20.1
        version: 4.20.1
      - name: kubevirt-hyperconverged-operator.v4.20.0
        version: 4.20.0
      - name: kubevirt-hyperconverged-operator.v4.19.6
        version: 4.19.6
      - name: kubevirt-hyperconverged-operator.v4.19.3
        version: 4.19.3
      - name: kubevirt-hyperconverged-operator.v4.19.1
        version: 4.19.1
      - name: kubevirt-hyperconverged-operator.v4.18.8
        version: 4.18.8
      - name: kubevirt-hyperconverged-operator.v4.18.3
        version: 4.18.3
      - name: kubevirt-hyperconverged-operator.v4.18.2
        version: 4.18.2
      - name: kubevirt-hyperconverged-operator.v4.18.1
        version: 4.18.1
      - name: kubevirt-hyperconverged-operator.v4.18.0
        version: 4.18.0
      - name: kubevirt-hyperconverged-operator.v4.17.4
        version: 4.17.4
      - name: kubevirt-hyperconverged-operator.v4.17.3
        version: 4.17.3
      - name: kubevirt-hyperconverged-operator.v4.17.2
        version: 4.17.2
      - name: kubevirt-hyperconverged-operator.v4.17.1
        version: 4.17.1
      - name: kubevirt-hyperconverged-operator.v4.17.0
        version: 4.17.0
      - name: kubevirt-hyperconverged-operator.v4.16.3
        version: 4.16.3
      - name: kubevirt-hyperconverged-operator.v4.16.2
        version: 4.16.2
      - name: kubevirt-hyperconverged-operator.v4.16.1
        version: 4.16.1
      - name: kubevirt-hyperconverged-operator.v4.16.0
        version: 4.16.0
      - name: kubevirt-hyperconverged-operator.v4.15.2
        version: 4.15.2
      - name: kubevirt-hyperconverged-operator.v4.15.1
        version: 4.15.1
      - name: kubevirt-hyperconverged-operator.v4.15.0
        version: 4.15.0
      - name: kubevirt-hyperconverged-operator.v4.14.3
        version: 4.14.3
      - name: kubevirt-hyperconverged-operator.v4.14.2
        version: 4.14.2
      - name: kubevirt-hyperconverged-operator.v4.14.1
        version: 4.14.1
      - name: kubevirt-hyperconverged-operator.v4.14.0
        version: 4.14.0
      - name: kubevirt-hyperconverged-operator.v4.13.4
        version: 4.13.4
      - name: kubevirt-hyperconverged-operator.v4.13.3
        version: 4.13.3
      - name: kubevirt-hyperconverged-operator.v4.13.2
        version: 4.13.2
      - name: kubevirt-hyperconverged-operator.v4.13.1
        version: 4.13.1
      - name: kubevirt-hyperconverged-operator.v4.13.0
        version: 4.13.0
      - name: kubevirt-hyperconverged-operator.v4.12.2
        version: 4.12.2
      - name: kubevirt-hyperconverged-operator.v4.12.1
        version: 4.12.1
      - name: kubevirt-hyperconverged-operator.v4.12.0
        version: 4.12.0
      name: stable
    defaultChannel: stable
    packageName: kubevirt-hyperconverged
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: LINBIT
      provider-url: https://linbit.com
    name: linstor-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: linstor-operator.v2.10.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "piraeus.io/v1",
                "kind": "LinstorCluster",
                "metadata": {
                  "name": "linstorcluster"
                },
                "spec": {},
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "piraeus.io/v1",
                "kind": "LinstorNodeConnection",
                "metadata": {
                  "name": "example-connection"
                },
                "spec": {},
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "piraeus.io/v1",
                "kind": "LinstorSatellite",
                "metadata": {
                  "name": "example-satellite"
                },
                "spec": {
                  "clusterRef": {
                    "name": "linstorcluster"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "piraeus.io/v1",
                "kind": "LinstorSatelliteConfiguration",
                "metadata": {
                  "name": "all-satellites"
                },
                "spec": {},
                "status": {
                  "conditions": []
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          com.redhat.openshift.versions: v4.7
          containerImage: drbd.io/linstor-operator@sha256:c13c8710c7d508a5a63b996c64031c370b1040c20a48e1a6dbcfa183db58da91
          createdAt: "2025-12-09T14:51:34Z"
          description: LINSTOR Operator deploys LINBIT SDS in the cluster.
          features.operators.openshift.io/csi: "true"
          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"
          operatorframework.io/suggested-namespace: linbit-sds
          operators.openshift.io/valid-subscription: '[''LINBIT SDS Subscription'']'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/internal-objects: '["linstorsatellites.piraeus.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: LINBIT
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster-wide configuration for LINSTOR.
            displayName: Linstor Cluster
            kind: LinstorCluster
            name: linstorclusters.piraeus.io
            version: v1
          - description: Configuration for connections between specific nodes.
            displayName: Linstor Node Connection
            kind: LinstorNodeConnection
            name: linstornodeconnections.piraeus.io
            version: v1
          - description: Configuration for specific Satellites/Nodes in the LINSTOR
              Cluster.
            displayName: Linstor Satellite Configuration
            kind: LinstorSatelliteConfiguration
            name: linstorsatelliteconfigurations.piraeus.io
            version: v1
          - description: Resource to configure a single satellite, managed by the
              Operator itself.
            displayName: Linstor Satellite
            kind: LinstorSatellite
            name: linstorsatellites.piraeus.io
            version: v1
          required:
          - kind: ServiceMonitor
            name: servicemonitors.monitoring.coreos.com
            version: v1
          - kind: PrometheusRule
            name: prometheusrules.monitoring.coreos.com
            version: v1
          - kind: PodMonitor
            name: podmonitors.monitoring.coreos.com
            version: v1
        description: |
          The LINSTOR Operator manages [LINSTOR](https://github.com/LINBIT/linstor-server) clusters in Kubernetes.

          All components of the LINSTOR software stack can be managed by the operator:
          * DRBD
          * LINSTOR
          * LINSTOR CSI driver
          * LINSTOR HA Controller
        displayName: LINSTOR Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        links:
        - name: User Guide
          url: https://linbit.com/drbd-user-guide/linstor-guide-1_0-en/
        - name: LINSTOR Operator
          url: https://charts.linstor.io/
        - name: Source Code
          url: https://github.com/LINBIT/linstor-operator-builder
        maintainers:
        - email: support@linbit.com
          name: LINBIT
        maturity: stable
        minKubeVersion: 1.20.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: DaemonSet
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: storage.k8s.io
          kind: CSIDriver
          version: v1
        provider:
          name: LINBIT
          url: https://linbit.com
        relatedImages:
        - drbd.io/drbd-shutdown-guard@sha256:16793f5aa10b46b198806c9198216fbd1aaec31269c28adea7e526dd17ff6f57
        - drbd.io/drbd9-rhel10@sha256:0e8baeab42e33c543cbdc784f4ff6559ce90ac0fab35c8f599440b8c79de0ffa
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:f5d39776894fdb35e4119a592bb9b2c754a834f542712fd7f57c54d6eceeca29
        - drbd.io/linstor-satellite@sha256:1cff883efa5694babc51987a343c68bbe844427ca23d3744266679697d6b2cc9
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:33c42e88b72c0ea9d58fed8db8cb2175e56399c3d2e988bcbb669bec3de291de
        - registry.connect.redhat.com/linbit/linstor-operator-bundle:v2.10.3
        - registry.k8s.io/sig-storage/csi-external-health-monitor-controller@sha256:ac3963bfd4246da386b82d810a348e9d42a9e4b746acaf4dbcbe0766643cc2fa
        - drbd.io/linstor-operator@sha256:c13c8710c7d508a5a63b996c64031c370b1040c20a48e1a6dbcfa183db58da91
        - drbd.io/drbd9-rhel7@sha256:24a9a3d894668f142751611621fb17d567e4f6b385557784b2d19cf09936352c
        - drbd.io/drbd9-rhel9@sha256:9d2e7e4336b0f97de65e08d95b89318b928f7685cd68c48e576bfc41c84d7a20
        - drbd.io/linstor-controller@sha256:4aaa87ec39e261be7c46834e2a25d8c306688fc7b2b6c793bb09929996406b08
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:13aa61d56d283901b113a49524eb57e447eb541b56d3666f8186fd807cc3c180
        - drbd.io/drbd9-rhel8@sha256:eb091a38c6811391f27df0b22c34cfe7df5ad69bcbe8ec37075edc50d732aeea
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:b54a79b0c5a39a23dc8a1809fffaa376a474945df364a30077112eab87d558dd
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c4a2626cc9c4903a32e67a6fa68b874fb5e67085126030389a8a3210bf766de7
        - drbd.io/ktls-utils@sha256:3351a6e0fc048fe1544499095cdb8fdd221e832cecfa8a9a01f046c271991138
        - drbd.io/linstor-affinity-controller@sha256:de3445f5bcc643e1b9d7c4e880fd289ca05dee300120d3b0d7a83498de91a79f
        - drbd.io/linstor-csi@sha256:6615bc6b5a0a6b504588a460b028ec4a185c0a26e61b1f45e3ac9910ba165fe2
        - drbd.io/linstor-k8s-ha-controller@sha256:13bc9273fe4b752aaa9a0aa0add2c4261589f80fae2d367ab36728b8abc93d0e
        - drbd.io/drbd-reactor@sha256:95a2422d55394bcc322c5ce9c85e234b055d8c9976a69102ba5e12f7c24a311d
        - drbd.io/nfs-server@sha256:e999aa5c4a38c49e63b6258503db405d57f1d4e5ab8735ff1400cbd4f23d4b88
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a9d0a3f14e303f80c1e0b81cf38af700d1e038b875834bbc6d1a31ad60b16d8f
        version: 2.10.3
      entries:
      - name: linstor-operator.v2.10.3
        version: 2.10.3
      - name: linstor-operator.v2.10.2
        version: 2.10.2
      - name: linstor-operator.v2.10.1
        version: 2.10.1
      - name: linstor-operator.v2.10.1-0.gbf3c346
        version: 2.10.1-0.gbf3c346
      - name: linstor-operator.v2.9.1
        version: 2.9.1
      - name: linstor-operator.v2.9.0
        version: 2.9.0
      - name: linstor-operator.v2.8.1
        version: 2.8.1
      name: stable-v2
    defaultChannel: stable-v2
    packageName: linstor-operator
    provider:
      name: LINBIT
      url: https://linbit.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-firehose-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-firehose-controller.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/firehose-controller:0.2.0
          createdAt: "2025-11-29T03:46:06Z"
          description: AWS Firehose controller is a service controller for managing
            Firehose resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DeliveryStream represents the state of an AWS firehose DeliveryStream
              resource.
            displayName: DeliveryStream
            kind: DeliveryStream
            name: deliverystreams.firehose.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Firehose resources in AWS from within your Kubernetes cluster.

          **About Amazon Firehose**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Firehose
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - firehose
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Firehose Developer Resources
          url: https://aws.amazon.com/Firehose/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: firehose maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-firehose-controller@sha256:72fb109fd6b29d10b0b5e6ffd02809dc00ee8e54791c553d1e5f34a7c0a4e0c5
        - public.ecr.aws/aws-controllers-k8s/firehose-controller:0.2.0
        version: 0.2.0
      entries:
      - name: ack-firehose-controller.v0.2.0
        version: 0.2.0
      - name: ack-firehose-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-firehose-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stolostron
      provider-url: ""
    name: cluster-aas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-aas-operator.v0.1.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clustertemplate.openshift.io/v1alpha1",
                "kind": "ClusterTemplate",
                "metadata": {
                  "name": "clustertemplate-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "clustertemplate.openshift.io/v1alpha1",
                "kind": "ClusterTemplateInstance",
                "metadata": {
                  "name": "clustertemplateinstance-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "clustertemplate.openshift.io/v1alpha1",
                "kind": "ClusterTemplateQuota",
                "metadata": {
                  "name": "clustertemplatequota-sample"
                },
                "spec": {}
              }
            ]
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/stolostron/cluster-templates-operator:2.11.0-0c3131154065397d37e3b66ae635d7ea88650bf9
          createdAt: "2024-06-06T19:34:44Z"
          description: Easily install fully configured clusters with guard-rails.
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/cluster-templates-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents instance of a cluster
            displayName: Cluster template instance
            kind: ClusterTemplateInstance
            name: clustertemplateinstances.clustertemplate.openshift.io
            version: v1alpha1
          - description: Defines which ClusterTemplates can be used in a given namespace
            displayName: Cluster template quota
            kind: ClusterTemplateQuota
            name: clustertemplatequotas.clustertemplate.openshift.io
            version: v1alpha1
          - description: Template of a cluster - both installation and post-install
              setup are defined as ArgoCD application spec. Any application source
              is supported - typically a Helm chart
            displayName: Cluster template
            kind: ClusterTemplate
            name: clustertemplates.clustertemplate.openshift.io
            version: v1alpha1
          - kind: ClusterTemplateSetup
            name: clustertemplatesetup.clustertemplate.openshift.io
            version: v1alpha1
          - kind: Config
            name: config.clustertemplate.openshift.io
            version: v1alpha1
        description: |
          **Self-service clusters with guardrails!**
          Cluster as a service operator provides an easy way to define clusters as templates and allows creating instances of those templates even for non-privileged developer/devops engineers. Cluster templates operator also allows specifing quotas for the developer/devops engineers.

          ### User Interface
          The User interface is installed but is not enabled by default. To enable go to `Home` -> `Overview` -> in the status card click `Dynamic Plugins` -> click `View all` -> click the `pencil` icon -> pick `Enable` and hit `Save`. You can access the UI in the `All Clusters` perspective under `Infrastructure` -> `Cluster Templates`.

          ### Documentation
          Documentation can be found on our [website](https://github.com/stolostron/cluster-templates-operator).

          ### Getting help
          To report any issues or ask questions, create an issue on our [Github repo](https://github.com/stolostron/cluster-templates-operator/issues)
        displayName: Cluster as a service operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cluster
        - templates
        - hive
        - hypershift
        - selfservice
        - openshift
        - multicluster
        - quota
        - helm
        - argocd
        links:
        - name: Cluster as a service operator
          url: https://github.com/stolostron/cluster-templates-operator
        maintainers:
        - email: rawagner@redhat.com
          name: Rastislav Wagner
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Stolostron
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/community-operator-pipeline-prod/cluster-aas-operator@sha256:aad6afc2f6f1f4e3b2c0d14b6c178d6f71ef318b0d3efc97faa5fdb736eaa721
        - quay.io/stolostron/cluster-templates-operator:2.11.0-0c3131154065397d37e3b66ae635d7ea88650bf9
        version: 0.1.5
      entries:
      - name: cluster-aas-operator.v0.1.5
        version: 0.1.5
      - name: cluster-aas-operator.v0.1.4
        version: 0.1.4
      - name: cluster-aas-operator.v0.1.3
        version: 0.1.3
      - name: cluster-aas-operator.v0.1.2
        version: 0.1.2
      - name: cluster-aas-operator.v0.1.1
        version: 0.1.1
      - name: cluster-aas-operator.v0.1.0
        version: 0.1.0
      - name: cluster-aas-operator.v0.0.6
        version: 0.0.6
      - name: cluster-aas-operator.v0.0.5
        version: 0.0.5
      - name: cluster-aas-operator.v0.0.4
        version: 0.0.4
      - name: cluster-aas-operator.v0.0.3
        version: 0.0.3
      - name: cluster-aas-operator.v0.0.2
        version: 0.0.2
      - name: cluster-aas-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: cluster-aas-operator
    provider:
      name: Stolostron
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Google
      provider-url: https://cloud.google.com/alloydb/omni
    name: alloydb-omni-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: alloydb-omni-operator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "backupPlanRef": "backupplan1",
                  "dbclusterRef": "dbcluster-sample",
                  "manual": true,
                  "physicalBackupSpec": {
                    "backupType": "full"
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "BackupPlan",
                "metadata": {
                  "name": "backupplan1"
                },
                "spec": {
                  "backupRetainDays": 14,
                  "backupSchedules": {
                    "full": "0 0 * * 0",
                    "incremental": "0 21 * * *"
                  },
                  "dbclusterRef": "dbcluster-sample",
                  "paused": false
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "clone1"
                },
                "spec": {
                  "clonedDBClusterConfig": {
                    "dbclusterName": "new-dbcluster-sample"
                  },
                  "pointInTime": "2024-02-23T19:59:43Z",
                  "sourceDBCluster": "dbcluster-sample"
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "DBCluster",
                "metadata": {
                  "name": "dbcluster-sample"
                },
                "spec": {
                  "databaseVersion": "16.3.0",
                  "primarySpec": {
                    "adminUser": {
                      "passwordRef": {
                        "name": "db-pw-dbcluster-sample"
                      }
                    },
                    "resources": {
                      "cpu": 1,
                      "disks": [
                        {
                          "name": "DataDisk",
                          "size": "10Gi"
                        }
                      ],
                      "memory": "5Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "DBInstance",
                "metadata": {
                  "name": "dbcluster-sample-rp-1"
                },
                "spec": {
                  "dbcParent": {
                    "name": "dbcluster-sample"
                  },
                  "instanceType": "ReadPool",
                  "nodeCount": 2,
                  "resources": {
                    "cpu": 2,
                    "disks": [
                      {
                        "name": "DataDisk",
                        "size": "15Gi"
                      }
                    ],
                    "memory": "6Gi"
                  },
                  "schedulingconfig": {
                    "nodeaffinity": {
                      "preferredDuringSchedulingIgnoredDuringExecution": [
                        {
                          "preference": {
                            "matchExpressions": [
                              {
                                "key": "another-node-label-key",
                                "operator": "In",
                                "values": [
                                  "another-node-label-value"
                                ]
                              }
                            ]
                          },
                          "weight": 1
                        }
                      ]
                    },
                    "podAffinity": {
                      "preferredDuringSchedulingIgnoredDuringExecution": [
                        {
                          "podAffinityTerm": {
                            "labelSelector": {
                              "matchExpressions": [
                                {
                                  "key": "app",
                                  "operator": "In",
                                  "values": [
                                    "store"
                                  ]
                                }
                              ]
                            },
                            "topologyKey": "kubernetes.io/hostname"
                          },
                          "weight": 1
                        }
                      ]
                    },
                    "podAntiAffinity": {
                      "preferredDuringSchedulingIgnoredDuringExecution": [
                        {
                          "podAffinityTerm": {
                            "labelSelector": {
                              "matchExpressions": [
                                {
                                  "key": "security",
                                  "operator": "In",
                                  "values": [
                                    "S1"
                                  ]
                                }
                              ]
                            },
                            "topologyKey": "topology.kubernetes.io/zone"
                          },
                          "weight": 1
                        }
                      ]
                    },
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/control-plane",
                        "operator": "Exists"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Failover",
                "metadata": {
                  "name": "failover-sample"
                },
                "spec": {
                  "dbclusterRef": "dbcluster-sample"
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "PgBouncer",
                "metadata": {
                  "name": "mypgbouncer"
                },
                "spec": {
                  "allowSuperUserAccess": true,
                  "dbclusterRef": "dbcluster-sample",
                  "parameters": {
                    "default_pool_size": "15",
                    "ignore_startup_parameters": "extra_float_digits",
                    "max_client_conn": "800",
                    "max_db_connections": "160",
                    "pool_mode": "transaction"
                  },
                  "podSpec": {
                    "image": "gcr.io/alloydb-omni/operator/g-pgbouncer:1.5.0",
                    "resources": {
                      "cpu": 1,
                      "memory": "1Gi"
                    }
                  },
                  "replicaCount": 1,
                  "serviceOptions": {
                    "type": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Replication",
                "metadata": {
                  "name": "replication-downstream-sample"
                },
                "spec": {
                  "dbcluster": {
                    "name": "dbcluster-sample"
                  },
                  "downstream": {
                    "control": "setup",
                    "host": "10.10.10.10",
                    "password": {
                      "name": "ha-rep-pw-dbcluster-sample"
                    },
                    "port": 5432,
                    "replicationSlotName": "dbcluster_sample_replication_upstream_sample",
                    "username": "alloydbreplica"
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Replication",
                "metadata": {
                  "name": "replication-upstream-sample"
                },
                "spec": {
                  "dbcluster": {
                    "name": "dbcluster-sample"
                  },
                  "upstream": {}
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore1"
                },
                "spec": {
                  "backup": "backup1",
                  "sourceDBCluster": "dbcluster-sample"
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Sidecar",
                "metadata": {
                  "name": "sidecar-sample"
                },
                "spec": {
                  "sidecars": [
                    {
                      "args": [
                        "-c",
                        "while [ true ]\ndo\ndate\nset -x\nls -lh /logs/diagnostic\nset +x\ndone\n"
                      ],
                      "command": [
                        "/bin/sh"
                      ],
                      "image": "busybox",
                      "name": "sidecar-sample",
                      "volumeMounts": [
                        {
                          "mountPath": "/logs",
                          "name": "obsdisk"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Switchover",
                "metadata": {
                  "name": "switchover-sample"
                },
                "spec": {
                  "dbclusterRef": "dbcluster-sample",
                  "newPrimary": "aaaa-dbcluster-sample"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: gcr.io/alloydb-omni/operator/fleet-operator:1.5.0
          createdAt: "2025-07-25T04:12:04Z"
          operatorframework.io/suggested-namespace: alloydb-omni-system
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["backuprepositories.alloydbomni.internal.dbadmin.goog",
            "failovers.alloydbomni.internal.dbadmin.goog", "instancebackupplans.alloydbomni.internal.dbadmin.goog","instancebackups.alloydbomni.internal.dbadmin.goog","instancerestores.alloydbomni.internal.dbadmin.goog","instances.alloydbomni.internal.dbadmin.goog","instanceswitchovers.alloydbomni.internal.dbadmin.goog","instanceuserdefinedauthentications.alloydbomni.internal.dbadmin.goog","lrojobs.alloydbomni.internal.dbadmin.goog","replicationconfigs.alloydbomni.internal.dbadmin.goog","sidecars.alloydbomni.internal.dbadmin.goog","createstandbyjobs.alloydbomni.internal.dbadmin.goog","deletestandbyjobs.alloydbomni.internal.dbadmin.goog"]'
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BackupPlan is the Schema for the backupplans API.
            displayName: Backup Plan
            kind: BackupPlan
            name: backupplans.alloydbomni.dbadmin.goog
            version: v1
          - description: Backup is the Schema for the backups API.
            displayName: Backup
            kind: Backup
            name: backups.alloydbomni.dbadmin.goog
            version: v1
          - description: CreateStandbyJob is an internal workflow tracking object.
              Users should not directly interact with this.
            displayName: (Internal) Create Standby Job
            kind: CreateStandbyJob
            name: createstandbyjobs.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: DBCluster is the Schema for the DBClusters API.
            displayName: DB Cluster
            kind: DBCluster
            name: dbclusters.alloydbomni.dbadmin.goog
            version: v1
          - description: DBInstance is the Schema for the DBInstances API.
            displayName: DB Instance
            kind: DBInstance
            name: dbinstances.alloydbomni.dbadmin.goog
            version: v1
          - description: DeleteStandbyJob is an internal workflow tracking object.
              Users should not directly interact with this.
            displayName: (Internal) Delete Standby Job
            kind: DeleteStandbyJob
            name: deletestandbyjobs.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: Failover represents the parameters and status of a single
              failover operation.
            displayName: Failover
            kind: Failover
            name: failovers.alloydbomni.dbadmin.goog
            version: v1
          - description: PgBouncer is the Schema for the PgBouncer API.
            displayName: PgBouncer
            kind: PgBouncer
            name: pgbouncers.alloydbomni.dbadmin.goog
            version: v1
          - description: Replication is the Schema for the Replications API.
            displayName: Replication
            kind: Replication
            name: replications.alloydbomni.dbadmin.goog
            version: v1
          - description: Restore is the Schema for the Restores API.
            displayName: Restore
            kind: Restore
            name: restores.alloydbomni.dbadmin.goog
            version: v1
          - description: Sidecar is the Schema for the Sidecar API.
            displayName: Sidecar
            kind: Sidecar
            name: sidecars.alloydbomni.dbadmin.goog
            version: v1
          - description: Switchover represents the parameters and status of a single
              switchover.
            displayName: Switchover
            kind: Switchover
            name: switchovers.alloydbomni.dbadmin.goog
            version: v1
          - description: UserDefinedAuthentication is the Schema for the UserDefinedAuthentications
              API.
            displayName: User Defined Authentication
            kind: UserDefinedAuthentication
            name: userdefinedauthentications.alloydbomni.dbadmin.goog
            version: v1
          - description: BackupRepository is the Schema for the backuprepositories
              API.
            displayName: (Internal) Backup Repository
            kind: BackupRepository
            name: backuprepositories.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: Failover is the Schema for the failover API.
            displayName: (Internal) Failover
            kind: Failover
            name: failovers.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceBackupPlan is the Schema for the InstanceBackupPlan
              API.
            displayName: (Internal) Instance Backup Plan
            kind: InstanceBackupPlan
            name: instancebackupplans.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceBackup is the Schema for the InstanceBackup API.
            displayName: (Internal) Instance Backup
            kind: InstanceBackup
            name: instancebackups.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceRestore is the Schema for the InstanceRestore API.
            displayName: (Internal) Instance Restore
            kind: InstanceRestore
            name: instancerestores.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: Instance is the Schema for the Instance API.
            displayName: (Internal) Instance
            kind: Instance
            name: instances.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceSwitchover is the Schema for the InstanceSwitchover
              API.
            displayName: (Internal) Instance Switchover
            kind: InstanceSwitchover
            name: instanceswitchovers.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceUserDefinedAuthentication is the Schema for the InstanceUserDefinedAuthentication
              API.
            displayName: (Internal) Instance User Defined Authentication
            kind: InstanceUserDefinedAuthentication
            name: instanceuserdefinedauthentications.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: LROJob is the Schema for the LROJob API.
            displayName: (Internal) LRO Job
            kind: LROJob
            name: lrojobs.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: ReplicationConfig is the Schema for the ReplicationConfig
              API.
            displayName: (Internal) Replication Config
            kind: ReplicationConfig
            name: replicationconfigs.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: Sidecar is the Schema for the Sidecar API.
            displayName: (Internal) Sidecar
            kind: Sidecar
            name: sidecars.alloydbomni.internal.dbadmin.goog
            version: v1
        description: |-
          AlloyDB Omni is a database that lets you deploy a streamlined edition of AlloyDB for PostgreSQL in your own computing environment. While being 100% compatible with PostgreSQL applications and tools, AlloyDB Omni delivers higher performance for both OLTP and OLAP workloads and makes administration easy with a number of autopilots. AlloyDB AI provides powerful tools to build generative AI applications with the ability to create, store, and index vector embeddings right in your database.

          ## Post-installation

          After installing the operator, you need to manually create the cert-manager resources in your cluster as this is a strict dependency for our operator. For this, follow these steps:

          ```
          kubectl create ns ${NAMESPACE:?}
          ```

          ```
          kubectl apply -f - <<EOF
          apiVersion: cert-manager.io/v1
          kind: ClusterIssuer
          metadata:
            name: alloydbomni-selfsigned-cluster-issuer
          spec:
            selfSigned: {}
          ---
          apiVersion: cert-manager.io/v1
          kind: Issuer
          metadata:
            name: fleet-selfsigned-issuer
            namespace: ${NAMESPACE:?}
          spec:
            selfSigned: {}
          ---
          apiVersion: cert-manager.io/v1
          kind: Certificate
          metadata:
            name: fleet-serving-cert
            namespace: ${NAMESPACE:?}
          spec:
            dnsNames:
            - fleet-webhook-service.alloydb-omni-system.svc
            - fleet-webhook-service.alloydb-omni-system.svc.cluster.local
            issuerRef:
              kind: Issuer
              name: fleet-selfsigned-issuer
            secretName: fleet-webhook-server-cert
          ---
          apiVersion: cert-manager.io/v1
          kind: Issuer
          metadata:
            name: local-selfsigned-issuer
            namespace: ${NAMESPACE:?}
          spec:
            selfSigned: {}
          ---
          apiVersion: cert-manager.io/v1
          kind: Certificate
          metadata:
            name: local-serving-cert
            namespace: ${NAMESPACE:?}
          spec:
            dnsNames:
            - local-webhook-service.alloydb-omni-system.svc
            - local-webhook-service.alloydb-omni-system.svc.cluster.local
            issuerRef:
              kind: Issuer
              name: local-selfsigned-issuer
            secretName: local-webhook-server-cert
          EOF
          ```

          Replace the following:
          * `NAMESPACE` : the namespace where you have installed your operator. Suggested namespace: `alloydb-omni-system`.

          ## Creating a database cluster

          After you install the AlloyDB Omni operator on your Kubernetes cluster, you can create an AlloyDB Omni database cluster. For each database cluster you create, you must first create a password secret using the following format:

          ```
          apiVersion: v1
          kind: Secret
          metadata:
            name: db-pw-${DB_CLUSTER_NAME:s?}
            namespace: ${DB_CLUSTER_NAMESPACE:?}
          type: Opaque
          data:
            ${DB_CLUSTER_NAME:?}: "ENCODED_PASSWORD"
          ```

          Replace the following:
          * `DB_CLUSTER_NAME`: the name of this database cluster. For example, `my-db-cluster`.
          * `DB_CLUSTER_NAMESPACE` (Optional): the namespace where you want to create the database cluster. For example, `my-db-cluster-namespace`.
          * `ENCODED_PASSWORD`: the database login password for the default postgres user role, encoded as a base64 string. For example, `Q2hhbmdlTWUxMjM=` for password `ChangeMe123`.

          Follow [these][database-cluster] steps for creating a database cluster.

          ## Connect to AlloyDB Omni running on Kubernetes
          Follow [these][connect] steps to connect to AlloyDB Omni.

          [database-cluster]: https://cloud.google.com/alloydb/omni/docs/deploy-kubernetes#create
          [connect]: https://cloud.google.com/alloydb/omni/docs/run-connect#connect-kubernetes
        displayName: AlloyDB Omni Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - database
        - sql
        - postgres
        - vector
        - ai
        - analytics
        - postgresql
        - alloydb
        links:
        - name: Documentation
          url: https://cloud.google.com/alloydb/omni/docs
        - name: Release Notes
          url: https://cloud.google.com/alloydb/docs/release-notes
        maintainers:
        - email: alloydb-omni-ext@google.com
          name: Google Cloud
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Google
          url: https://cloud.google.com/alloydb/omni
        relatedImages:
        - quay.io/community-operator-pipeline-prod/alloydb-omni-operator@sha256:08fafb811f709780c0ccb3c22e3c6417cb14a70a9305e46a7b50457647a82102
        - gcr.io/alloydb-omni/operator/fleet-operator:1.5.0
        - gcr.io/alloydb-omni/operator/local-operator:1.5.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.14.1
        version: 1.5.0
      entries:
      - name: alloydb-omni-operator.v1.5.0
        version: 1.5.0
      - name: alloydb-omni-operator.v1.4.1
        version: 1.4.1
      - name: alloydb-omni-operator.v1.4.0
        version: 1.4.0
      - name: alloydb-omni-operator.v1.3.0
        version: 1.3.0
      name: stable
    defaultChannel: stable
    packageName: alloydb-omni-operator
    provider:
      name: Google
      url: https://cloud.google.com/alloydb/omni
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: VictoriaMetrics
      provider-url: ""
    name: victoriametrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: victoriametrics-operator.v0.66.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.victoriametrics.com/v1",
                "kind": "VLAgent",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "persistentVolumeClaimRetentionPolicy": {
                    "whenDeleted": "Delete"
                  },
                  "remoteWrite": [
                    {
                      "maxDiskUsage": "10GB",
                      "url": "http://vlsingle-example-0.default.svc:9428/internal/insert"
                    }
                  ],
                  "remoteWriteSettings": {
                    "maxBlockSize": "30MB"
                  },
                  "replicaCount": 2,
                  "resources": {
                    "limits": {
                      "cpu": "500m",
                      "memory": "850Mi"
                    },
                    "requests": {
                      "cpu": "50m",
                      "memory": "350Mi"
                    }
                  },
                  "storage": {
                    "volumeClaimTemplate": {
                      "spec": {
                        "resources": {
                          "requests": {
                            "storage": "50Gi"
                          }
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1",
                "kind": "VLCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "victoriametrics-operator"
                  },
                  "name": "example"
                },
                "spec": {
                  "requestsLoadBalancer": {
                    "enabled": true,
                    "spec": {}
                  },
                  "vlinsert": {
                    "replicaCount": 1
                  },
                  "vlselect": {
                    "replicaCount": 1
                  },
                  "vlstorage": {
                    "replicaCount": 2,
                    "retentionPeriod": "1y",
                    "storage": {
                      "volumeClaimTemplate": {
                        "spec": {
                          "resources": {
                            "requests": {
                              "storage": "50Gi"
                            }
                          }
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1",
                "kind": "VLSingle",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "victoriametrics-operator"
                  },
                  "name": "sample"
                },
                "spec": {
                  "retentionMaxDiskSpaceUsageBytes": "20GB",
                  "retentionPeriod": "1y",
                  "storage": {
                    "resources": {
                      "requests": {
                        "storage": "50Gi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VLogs",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "retentionPeriod": "2"
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAgent",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "extraArgs": {
                    "memory.allowedPercent": "40"
                  },
                  "remoteWrite": [
                    {
                      "maxDiskUsage": "10GB",
                      "url": "http://vmsingle-dc-1.default.svc:8429/api/v1/write"
                    },
                    {
                      "maxDiskUsage": "15GB",
                      "url": "http://vmsingle-dc-2.default.svc:8429/api/v1/write"
                    },
                    {
                      "url": "http://vminsert-main.default.svc:8480/insert/1:1/prometheus/api/v1/write"
                    }
                  ],
                  "remoteWriteSettings": {
                    "maxDiskUsagePerURL": "5GB"
                  },
                  "replicaCount": 1,
                  "resources": {
                    "limits": {
                      "cpu": "500m",
                      "memory": "850Mi"
                    },
                    "requests": {
                      "cpu": "50m",
                      "memory": "350Mi"
                    }
                  },
                  "selectAllByDefault": true
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAlert",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "datasource": {
                    "url": "http://vmsingle-example-pvc.default.svc:8429"
                  },
                  "evaluationInterval": "30s",
                  "notifier": {
                    "url": "http://vmalertmanager-example.default.svc:9093"
                  },
                  "replicaCount": 1,
                  "selectAllByDefault": true
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAlertmanager",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "configSecret": "am-global-config",
                  "replicaCount": 1,
                  "selectAllByDefault": true,
                  "storage": {
                    "volumeClaimTemplate": {
                      "spec": {
                        "resources": {
                          "requests": {
                            "storage": "2Gi"
                          }
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAlertmanagerConfig",
                "metadata": {
                  "name": "example-email-web"
                },
                "spec": {
                  "receivers": [
                    {
                      "email_configs": [
                        {
                          "from": "alerting@example.com",
                          "smarthost": "example.com:25",
                          "text": "ALARM",
                          "to": "some-email@example.com"
                        }
                      ],
                      "name": "email",
                      "webhook_configs": [
                        {
                          "url": "http://some-other-wh"
                        }
                      ]
                    }
                  ],
                  "route": {
                    "group_interval": "1m",
                    "receiver": "email",
                    "routes": [
                      {
                        "receiver": "email"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAuth",
                "metadata": {
                  "name": "vmauth-sample"
                },
                "spec": {
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "victoriametrics/vmauth"
                  },
                  "replicaCount": 1,
                  "resources": {
                    "limits": {
                      "cpu": "500m",
                      "memory": "850Mi"
                    },
                    "requests": {
                      "cpu": "250m",
                      "memory": "350Mi"
                    }
                  },
                  "selectAllByDefault": true
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMCluster",
                "metadata": {
                  "name": "example-persistent"
                },
                "spec": {
                  "replicationFactor": 2,
                  "retentionPeriod": "4",
                  "vminsert": {
                    "replicaCount": 2,
                    "resources": {
                      "limits": {
                        "cpu": "1",
                        "memory": "1000Mi"
                      },
                      "requests": {
                        "cpu": "0.5",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "vmselect": {
                    "cacheMountPath": "/select-cache",
                    "replicaCount": 2,
                    "resources": {
                      "limits": {
                        "cpu": "1",
                        "memory": "1000Mi"
                      },
                      "requests": {
                        "cpu": "0.5",
                        "memory": "500Mi"
                      }
                    },
                    "storage": {
                      "volumeClaimTemplate": {
                        "spec": {
                          "resources": {
                            "requests": {
                              "storage": "2Gi"
                            }
                          }
                        }
                      }
                    }
                  },
                  "vmstorage": {
                    "replicaCount": 2,
                    "resources": {
                      "limits": {
                        "cpu": "1",
                        "memory": "1500Mi"
                      }
                    },
                    "storage": {
                      "volumeClaimTemplate": {
                        "spec": {
                          "resources": {
                            "requests": {
                              "storage": "10Gi"
                            }
                          }
                        }
                      }
                    },
                    "storageDataPath": "/vm-data"
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMNodeScrape",
                "metadata": {
                  "name": "cadvisor-metrics"
                },
                "spec": {
                  "bearerTokenFile": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                  "interval": "10s",
                  "relabelConfigs": [
                    {
                      "action": "labelmap",
                      "regex": "__meta_kubernetes_node_label_(.+)"
                    },
                    {
                      "replacement": "kubernetes.default.svc:443",
                      "targetLabel": "__address__"
                    },
                    {
                      "regex": "(.+)",
                      "replacement": "/api/v1/nodes/$1/proxy/metrics/cadvisor",
                      "sourceLabels": [
                        "__meta_kubernetes_node_name"
                      ],
                      "targetLabel": "__metrics_path__"
                    }
                  ],
                  "scheme": "https",
                  "scrapeTimeout": "2s",
                  "selector": {},
                  "tlsConfig": {
                    "caFile": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                    "insecureSkipVerify": true
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMPodScrape",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "podMetricsEndpoints": [
                    {
                      "port": "metrics",
                      "scheme": "http"
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app.kubernetes.io/name": "example-application",
                      "monitored-by": "vm-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMProbe",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "interval": "2s",
                  "jobName": "static-probe",
                  "module": "http_2xx",
                  "targets": {
                    "staticConfig": {
                      "targets": [
                        "vmagent-example.default.svc:8429/health"
                      ]
                    }
                  },
                  "vmProberSpec": {
                    "url": "prometheus-blackbox-exporter.default.svc:9115"
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMRule",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "groups": [
                    {
                      "name": "kafka",
                      "rules": [
                        {
                          "alert": "coordinator down",
                          "annotations": {
                            "description": "kafka coordinator is down",
                            "value": "{{ $value }}"
                          },
                          "expr": "ml_app_gauge{exec_context=\"consumer_group_state\"} == 0",
                          "for": "60s",
                          "labels": {
                            "job": "{{ $labels.job }}",
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMScrapeConfig",
                "metadata": {
                  "name": "mongodb"
                },
                "spec": {
                  "consulSDConfigs": [
                    {
                      "server": "https://consul-dns:8500",
                      "services": [
                        "mongodb"
                      ]
                    }
                  ],
                  "relabelConfigs": [
                    {
                      "action": "replace",
                      "sourceLabels": [
                        "__meta_consul_service"
                      ],
                      "targetLabel": "job"
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMServiceScrape",
                "metadata": {
                  "name": "example-scrape"
                },
                "spec": {
                  "endpoints": [
                    {
                      "port": "http"
                    }
                  ],
                  "namespaceSelector": {},
                  "selector": {
                    "matchLabels": {
                      "app.kubernetes.io/name": "example-application",
                      "monitored-by": "vm-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMSingle",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "retentionPeriod": "1"
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMSingle",
                "metadata": {
                  "name": "example-pvc"
                },
                "spec": {
                  "removePvcAfterDelete": true,
                  "retentionPeriod": "1",
                  "storage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "1Gi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMStaticScrape",
                "metadata": {
                  "name": "vmstaticscrape-sample"
                },
                "spec": {
                  "jobName": "static",
                  "targetEndpoints": [
                    {
                      "labels": {
                        "env": "dev",
                        "project": "operator"
                      },
                      "targets": [
                        "192.168.0.1:9100",
                        "196.168.0.50:9100"
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMUser",
                "metadata": {
                  "name": "vmuser-tenant-1"
                },
                "spec": {
                  "bearerToken": "some-token",
                  "targetRefs": [
                    {
                      "crd": {
                        "kind": "VMCluster/vminsert",
                        "name": "test-persistent",
                        "namespace": "vm"
                      },
                      "target_path_suffix": "/insert/1"
                    },
                    {
                      "crd": {
                        "kind": "VMCluster/vmselect",
                        "name": "test-persistent",
                        "namespace": "vm"
                      },
                      "target_path_suffix": "/select/1"
                    },
                    {
                      "paths": [
                        "/internal/resetRollupResultCache"
                      ],
                      "static": {
                        "url": "http://vmselect-test-persistent.default.svc:8481/"
                      }
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/victoriametrics/operator@sha256:f4d54f2892712fdab87e0371066c59b54903a8c4fadd68bc38218e995718a722
          createdAt: "2025-12-06T15:03:12Z"
          description: Provides monitoring capabilities for kubernetes clusters and
            applications
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorhub.io/ui-metadata-max-k8s-version: "1.30"
          operators.openshift.io/infrastructure-features: '[fips]'
          operators.operatorframework.io.bundle.channel.default.v1: beta
          operators.operatorframework.io.bundle.channels.v1: beta
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/VictoriaMetrics/operator
          support: VictoriaMetrics
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VLAgent - is a tiny but brave agent, which helps you collect
              logs from various sources and stores them in VictoriaLogs.
            displayName: VLAgent
            kind: VLAgent
            name: vlagents.operator.victoriametrics.com
            version: v1
          - description: VLCluster is fast, cost-effective and scalable logs database.
            displayName: VLCluster
            kind: VLCluster
            name: vlclusters.operator.victoriametrics.com
            version: v1
          - description: |-
              VLogs is fast, cost-effective and scalable logs database.
              VLogs is the Schema for the vlogs API
            displayName: VLogs
            kind: VLogs
            name: vlogs.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VLSingle is fast, cost-effective and scalable logs database.
              VLSingle is the Schema for the API
            displayName: VLSingle
            kind: VLSingle
            name: vlsingles.operator.victoriametrics.com
            version: v1
          - description: |-
              VMAgent - is a tiny but brave agent, which helps you collect metrics from various sources and stores them in VictoriaMetrics
              or any other Prometheus-compatible storage system that supports the remote_write protocol.
            displayName: VMAgent
            kind: VMAgent
            name: vmagents.operator.victoriametrics.com
            version: v1beta1
          - description: VMAlertmanagerConfig is the Schema for the vmalertmanagerconfigs
              API
            displayName: VMAlertmanager Config
            kind: VMAlertmanagerConfig
            name: vmalertmanagerconfigs.operator.victoriametrics.com
            version: v1beta1
          - description: VMAlertmanager represents Victoria-Metrics deployment for
              Alertmanager.
            displayName: VMAlertmanager
            kind: VMAlertmanager
            name: vmalertmanagers.operator.victoriametrics.com
            version: v1beta1
          - description: VMAlert  executes a list of given alerting or recording rules
              against configured address.
            displayName: VMAlert
            kind: VMAlert
            name: vmalerts.operator.victoriametrics.com
            version: v1beta1
          - description: VMAnomaly is the Schema for the vmanomalies API.
            displayName: VMAnomaly
            kind: VMAnomaly
            name: vmanomalies.operator.victoriametrics.com
            version: v1
          - description: VMAuth is the Schema for the vmauths API
            displayName: VMAuth
            kind: VMAuth
            name: vmauths.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMCluster is fast, cost-effective and scalable time-series database.
              Cluster version with
            displayName: VMCluster
            kind: VMCluster
            name: vmclusters.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMNodeScrape defines discovery for targets placed on kubernetes nodes,
              usually its node-exporters and other host services.
              InternalIP is used as __address__ for scraping.
            displayName: VMNode Scrape
            kind: VMNodeScrape
            name: vmnodescrapes.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMPodScrape is scrape configuration for pods,
              it generates vmagent's config for scraping pod targets
              based on selectors.
            displayName: VMPod Scrape
            kind: VMPodScrape
            name: vmpodscrapes.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMProbe defines a probe for targets, that will be executed with prober,
              like blackbox exporter.
              It helps to monitor reachability of target with various checks.
            displayName: VMProbe
            kind: VMProbe
            name: vmprobes.operator.victoriametrics.com
            version: v1beta1
          - description: VMRule defines rule records for vmalert application
            displayName: VMRule
            kind: VMRule
            name: vmrules.operator.victoriametrics.com
            version: v1beta1
          - description: VMScrapeConfig specifies a set of targets and parameters
              describing how to scrape them.
            displayName: VMScrape Config
            kind: VMScrapeConfig
            name: vmscrapeconfigs.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMServiceScrape is scrape configuration for endpoints associated with
              kubernetes service,
              it generates scrape configuration for vmagent based on selectors.
              result config will scrape service endpoints
            displayName: VMService Scrape
            kind: VMServiceScrape
            name: vmservicescrapes.operator.victoriametrics.com
            version: v1beta1
          - description: VMSingle  is fast, cost-effective and scalable time-series
              database.
            displayName: VMSingle
            kind: VMSingle
            name: vmsingles.operator.victoriametrics.com
            version: v1beta1
          - description: VMStaticScrape  defines static targets configuration for
              scraping.
            displayName: VMStatic Scrape
            kind: VMStaticScrape
            name: vmstaticscrapes.operator.victoriametrics.com
            version: v1beta1
          - description: VMUser is the Schema for the vmusers API
            displayName: VMUser
            kind: VMUser
            name: vmusers.operator.victoriametrics.com
            version: v1beta1
          - description: VTCluster is fast, cost-effective and scalable traces database.
            displayName: VTCluster
            kind: VTCluster
            name: vtclusters.operator.victoriametrics.com
            version: v1
          - description: |-
              VTSingle is fast, cost-effective and scalable traces database.
              VTSingle is the Schema for the API
            displayName: VTSingle
            kind: VTSingle
            name: vtsingles.operator.victoriametrics.com
            version: v1
        description: |
          Operator manages VictoriaMetrics applications and provides monitoring features for applications running inside and outside kubernetes cluster. It has support for prometheus-operator objects and
          provides migration mechanism.

          Operator designed to use existing installation of VictoriaMetrics inside or outside kubernetes cluster or it could
          bring own resources and fully manages them.

           You can read more about operator at docs:
            - quick start [doc](https://github.com/VictoriaMetrics/operator/blob/master/docs/quick-start.md)
            - high availability [doc](https://github.com/VictoriaMetrics/operator/blob/master/docs/high-availability.md)
            - design and description of implementation [design](https://github.com/VictoriaMetrics/operator/blob/master/docs/design.md)
            - operator objects description [doc](https://github.com/VictoriaMetrics/operator/blob/master/docs/api.md)

          # VictoriaMetrics
          * VictoriaMetrics can be used as long-term storage for Prometheus or for [vmagent](https://github.com/VictoriaMetrics/VictoriaMetrics/blob/master/app/vmagent/README.md).
          See [these docs](https://github.com/VictoriaMetrics/VictoriaMetrics#prometheus-setup) for details.
          * Supports [Prometheus querying API](https://prometheus.io/docs/prometheus/latest/querying/api/), so it can be used as Prometheus drop-in replacement in Grafana.
          VictoriaMetrics implements [MetricsQL](https://github.com/VictoriaMetrics/VictoriaMetrics/wiki/MetricsQL) query language, which is inspired by PromQL.
          * Supports global query view. Multiple Prometheus instances may write data into VictoriaMetrics. Later this data may be used in a single query.
          * High performance and good scalability for both [inserts](https://medium.com/@valyala/high-cardinality-tsdb-benchmarks-victoriametrics-vs-timescaledb-vs-influxdb-13e6ee64dd6b)
          and [selects](https://medium.com/@valyala/when-size-matters-benchmarking-victoriametrics-vs-timescale-and-influxdb-6035811952d4).
          [Outperforms InfluxDB and TimescaleDB by up to 20x](https://medium.com/@valyala/measuring-vertical-scalability-for-time-series-databases-in-google-cloud-92550d78d8ae).
          * [Uses 10x less RAM than InfluxDB](https://medium.com/@valyala/insert-benchmarks-with-inch-influxdb-vs-victoriametrics-e31a41ae2893) when working with millions of unique time series (aka high cardinality).
          * Optimized for time series with high churn rate. Think about [prometheus-operator](https://github.com/coreos/prometheus-operator) metrics from frequent deployments in Kubernetes.
          * High data compression, so [up to 70x more data points](https://medium.com/@valyala/when-size-matters-benchmarking-victoriametrics-vs-timescale-and-influxdb-6035811952d4)
          may be crammed into limited storage comparing to TimescaleDB.
          * Optimized for storage with high-latency IO and low IOPS (HDD and network storage in AWS, Google Cloud, Microsoft Azure, etc). See [graphs from these benchmarks](https://medium.com/@valyala/high-cardinality-tsdb-benchmarks-victoriametrics-vs-timescaledb-vs-influxdb-13e6ee64dd6b).
          * A single-node VictoriaMetrics may substitute moderately sized clusters built with competing solutions such as Thanos, M3DB, Cortex, InfluxDB or TimescaleDB.
          See [vertical scalability benchmarks](https://medium.com/@valyala/measuring-vertical-scalability-for-time-series-databases-in-google-cloud-92550d78d8ae),
          [comparing Thanos to VictoriaMetrics cluster](https://medium.com/@valyala/comparing-thanos-to-victoriametrics-cluster-b193bea1683)
          and [Remote Write Storage Wars](https://promcon.io/2019-munich/talks/remote-write-storage-wars/) talk
          from [PromCon 2019](https://promcon.io/2019-munich/talks/remote-write-storage-wars/).
          * Easy operation:
              * VictoriaMetrics consists of a single [small executable](https://medium.com/@valyala/stripping-dependency-bloat-in-victoriametrics-docker-image-983fb5912b0d) without external dependencies.
              * All the configuration is done via explicit command-line flags with reasonable defaults.
              * All the data is stored in a single directory pointed by `-storageDataPath` flag.
              * Easy and fast backups from [instant snapshots](https://medium.com/@valyala/how-victoriametrics-makes-instant-snapshots-for-multi-terabyte-time-series-data-e1f3fb0e0282)
              to S3 or GCS with [vmbackup](https://github.com/VictoriaMetrics/VictoriaMetrics/blob/master/app/vmbackup/README.md) / [vmrestore](https://github.com/VictoriaMetrics/VictoriaMetrics/blob/master/app/vmrestore/README.md).
              See [this article](https://medium.com/@valyala/speeding-up-backups-for-big-time-series-databases-533c1a927883) for more details.
          * Storage is protected from corruption on unclean shutdown (i.e. OOM, hardware reset or `kill -9`) thanks to [the storage architecture](https://medium.com/@valyala/how-victoriametrics-makes-instant-snapshots-for-multi-terabyte-time-series-data-e1f3fb0e0282).
          * Supports metrics' scraping, ingestion and [backfilling](https://github.com/VictoriaMetrics/VictoriaMetrics#backfilling) via the following protocols:
            * [Metrics from Prometheus exporters](https://github.com/prometheus/docs/blob/master/content/docs/instrumenting/exposition_formats.md#text-based-format)
              such as [node_exporter](https://github.com/prometheus/node_exporter). See [these docs](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-scrape-prometheus-exporters-such-as-node-exporter) for details.
              * [Prometheus remote write API](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#remote_write)
              * [InfluxDB line protocol](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-send-data-from-influxdb-compatible-agents-such-as-telegraf) over HTTP, TCP and UDP.
              * [Graphite plaintext protocol](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-send-data-from-graphite-compatible-agents-such-as-statsd) with [tags](https://graphite.readthedocs.io/en/latest/tags.html#carbon)
              if `-graphiteListenAddr` is set.
              * [OpenTSDB put message](https://github.com/VictoriaMetrics/VictoriaMetrics#sending-data-via-telnet-put-protocol) if `-opentsdbListenAddr` is set.
              * [HTTP OpenTSDB /api/put requests](https://github.com/VictoriaMetrics/VictoriaMetrics#sending-opentsdb-data-via-http-apiput-requests) if `-opentsdbHTTPListenAddr` is set.
              * [How to import time series data](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-import-time-series-data).
              * [Prometheus exposition format](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-import-data-in-prometheus-exposition-format).
              * [Arbitrary CSV data](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-import-csv-data).
          * Supports metrics' relabeling. See [these docs](https://github.com/VictoriaMetrics/VictoriaMetrics#relabeling) for details.
          * Ideally works with big amounts of time series data from Kubernetes, IoT sensors, connected cars, industrial telemetry, financial data and various Enterprise workloads.
        displayName: VictoriaMetrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - prometheus
        - victoriametrics
        links:
        - name: VictoriaMetrics
          url: https://victoriametrics.com
        maintainers:
        - email: nik@victoriametrics.com
          name: f41gh7
        - email: info@victoriametrics.com
          name: info
        maturity: beta
        minKubeVersion: 1.23.0
        provider:
          name: VictoriaMetrics
        relatedImages:
        - docker.io/victoriametrics/operator:v0.66.1
        - quay.io/community-operator-pipeline-prod/victoriametrics-operator:0.66.1
        version: 0.66.1
      entries:
      - name: victoriametrics-operator.v0.66.1
        version: 0.66.1
      - name: victoriametrics-operator.v0.66.0
        version: 0.66.0
      - name: victoriametrics-operator.v0.65.0
        version: 0.65.0
      - name: victoriametrics-operator.v0.64.1
        version: 0.64.1
      - name: victoriametrics-operator.v0.64.0
        version: 0.64.0
      - name: victoriametrics-operator.v0.63.0
        version: 0.63.0
      - name: victoriametrics-operator.v0.62.0
        version: 0.62.0
      - name: victoriametrics-operator.v0.61.2
        version: 0.61.2
      - name: victoriametrics-operator.v0.61.1
        version: 0.61.1
      - name: victoriametrics-operator.v0.61.0
        version: 0.61.0
      - name: victoriametrics-operator.v0.60.2
        version: 0.60.2
      - name: victoriametrics-operator.v0.60.1
        version: 0.60.1
      - name: victoriametrics-operator.v0.60.0
        version: 0.60.0
      - name: victoriametrics-operator.v0.59.2
        version: 0.59.2
      - name: victoriametrics-operator.v0.59.1
        version: 0.59.1
      - name: victoriametrics-operator.v0.59.0
        version: 0.59.0
      - name: victoriametrics-operator.v0.58.1
        version: 0.58.1
      - name: victoriametrics-operator.v0.58.0
        version: 0.58.0
      - name: victoriametrics-operator.v0.57.0
        version: 0.57.0
      - name: victoriametrics-operator.v0.56.0
        version: 0.56.0
      - name: victoriametrics-operator.v0.55.0
        version: 0.55.0
      - name: victoriametrics-operator.v0.54.1
        version: 0.54.1
      - name: victoriametrics-operator.v0.53.0
        version: 0.53.0
      - name: victoriametrics-operator.v0.52.0
        version: 0.52.0
      name: beta
    defaultChannel: beta
    packageName: victoriametrics-operator
    provider:
      name: VictoriaMetrics
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: job-set
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jobset-operator.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "JobSetOperator",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-jobset-operator"
                },
                "spec": {
                  "managementState": "Managed",
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-08-26"
          description: |
            The JobSet Operator provides the ability to deploy a JobSet controller in OpenShift.
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-jobset-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          repository: https://github.com/openshift/jobset-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: Job Set Operator
            kind: JobSetOperator
            name: jobsetoperators.operator.openshift.io
            version: v1
        description: |
          The JobSet Operator provides the ability to deploy a JobSet controller in OpenShift.
        displayName: Job Set Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - jobset-operator
        - jobset
        links:
        - name: Source Code
          url: https://github.com/openshift/kubernetes-sigs-jobset
        - name: Source Code
          url: https://github.com/openshift/jobset-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.31.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/job-set/jobset-operator-bundle@sha256:1f8fd0e1c6636b04dcc7cf4cf27d33edd70c31db5b6c5fc305e415df8a5b10d5
        - registry.redhat.io/job-set/jobset-rhel9-operator@sha256:e5b874a603a2f6cb97b4312ea2b00275cc4304773bcd9fca0782f1335576cd0b
        - registry.redhat.io/job-set/jobset-rhel9@sha256:104e8a00fea252ffeb7fbef678be0b2f57c6e0cdde8dcae0134c2a4d681cb63b
        version: 0.1.0
      entries:
      - name: jobset-operator.v0.1.0
        version: 0.1.0
      name: tech-preview-v0.1
    defaultChannel: tech-preview-v0.1
    packageName: job-set
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: CyberArk
      provider-url: https://www.cyberark.com/
    name: vcp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vcp-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "installer.venafi.com/v1alpha1",
                "kind": "VenafiInstall",
                "metadata": {
                  "name": "install-venafi-enhanced-issuer"
                },
                "spec": {
                  "certManager": {
                    "install": true
                  },
                  "globals": {
                    "imagePullSecretNames": [
                      "venafi"
                    ]
                  },
                  "venafiConnection": {
                    "install": true
                  },
                  "venafiEnhancedIssuer": {
                    "install": true
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.venafi.cloud/public/venafi-images/vcp-operator@sha256:9da79fd0941c21e433f22aaaccc43ebbd4646e685aea0050194954d8b4019c05
          createdAt: "2024-05-30T11:35:41Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              VenafiInstall is an object for installing Venafi components onto a Kubernetes
              cluster
            displayName: VenafiInstall
            kind: VenafiInstall
            name: venafiinstalls.installer.venafi.com
            version: v1alpha1
        description: |
          Venafi Control Plane Operator for Red Hat OpenShift simplifies deployment of Venafi's enterprise components and dependencies.

          The enterprise components include:
          - Enterprise cert-manager: An enhanced version of cert-manager designed for application certificate management within your clusters.
          - Venafi Enhanced Issuer: Enables seamless certificate enrollment for your clusters directly from the Venafi Control Plane.
          - Venafi Firefly: A high-performance, lightweight issuer for certificates, centrally managed by the Venafi Control Plane.
          - Venafi Kubernetes Agent: Provides real-time visibility into certificates and Kubernetes resources directly within the Venafi Control Plane.
        displayName: Venafi Control Plane Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - venafi
        - vcp-operator
        links:
        - name: Documentation
          url: https://docs.venafi.cloud/
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: Venafi
          url: https://venafi.com
        relatedImages:
        - registry.connect.redhat.com/venafi/vcp-operator@sha256:9d24507aabd06856c7c35d73417b6ce065164f9c966053b494d68f14f0e260b7
        - registry.venafi.cloud/public/venafi-images/vcp-operator@sha256:9da79fd0941c21e433f22aaaccc43ebbd4646e685aea0050194954d8b4019c05
        version: 1.0.0
      entries:
      - name: vcp-operator.v1.0.0
        version: 1.0.0
      name: alpha
    - currentCSV: vcp-operator.v1.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "installer.venafi.com/v1alpha1",
                "kind": "VenafiInstall",
                "metadata": {
                  "name": "install-venafi-enhanced-issuer"
                },
                "spec": {
                  "certManager": {
                    "install": true
                  },
                  "globals": {
                    "imagePullSecretNames": [
                      "venafi"
                    ]
                  },
                  "venafiConnection": {
                    "install": true
                  },
                  "venafiEnhancedIssuer": {
                    "install": true
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.venafi.cloud/public/venafi-images/vcp-operator@sha256:e866acaacd26a0d586c0a7d3cc01b72d611054a267f79d34b8a9ef3cafc300b0
          createdAt: "2025-11-10T13:26:46Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              VenafiInstall is an object for installing CyberArk components onto a Kubernetes
              cluster
            displayName: VenafiInstall
            kind: VenafiInstall
            name: venafiinstalls.installer.venafi.com
            version: v1alpha1
        description: |
          The CyberArk Certificate Manager Operator for Red Hat OpenShift, formerly known as the Venafi Control Plane Operator, simplifies the deployment of enterprise components part of the CyberArk Certificate Manager for Kubernetes.

          The components include:
          - cert-manager: An enterprise distribution of cert-manager designed for application certificate management within your clusters.
          - Enterprise Issuer: Enables seamless certificate enrollment directly from the Certificate Manager.
          - Workload Identity Manager: A high-performance issuer for certificates, centrally managed by the Certificate Manager.
          - Agent: Provides real-time visibility into cluster resources directly within the Certificate Manager.
        displayName: CyberArk Certificate Manager Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cyberark
        - vcp-operator
        links:
        - name: Documentation
          url: https://docs.venafi.cloud/vaas/k8s-components/c-vcpo-overview/
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/venafi/vcp-operator@sha256:ba1267a2046585c3b24c78198365dd8a13c6aaebbdbe76d6e666b89f11e9429d
        - registry.venafi.cloud/public/venafi-images/vcp-operator@sha256:e866acaacd26a0d586c0a7d3cc01b72d611054a267f79d34b8a9ef3cafc300b0
        version: 1.8.2
      entries:
      - name: vcp-operator.v1.8.2
        version: 1.8.2
      - name: vcp-operator.v1.8.1
        version: 1.8.1
      - name: vcp-operator.v1.8.0
        version: 1.8.0
      - name: vcp-operator.v1.7.0
        version: 1.7.0
      - name: vcp-operator.v1.6.0
        version: 1.6.0
      - name: vcp-operator.v1.5.0
        version: 1.5.0
      - name: vcp-operator.v1.4.0
        version: 1.4.0
      - name: vcp-operator.v1.3.0
        version: 1.3.0
      - name: vcp-operator.v1.2.1
        version: 1.2.1
      - name: vcp-operator.v1.2.0
        version: 1.2.0
      - name: vcp-operator.v1.1.1
        version: 1.1.1
      name: stable
    defaultChannel: stable
    packageName: vcp-operator
    provider:
      name: CyberArk
      url: https://www.cyberark.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Fusion Access for SAN Team
      provider-url: ""
    name: openshift-fusion-access-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-fusion-access-operator.v1.1.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fusion.storage.openshift.io/v1alpha1",
                "kind": "FileSystemClaim",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "openshift-fusion-access-operator"
                  },
                  "name": "filesystemclaim-sample"
                },
                "spec": {
                  "devices": [
                    "uuid.58d49490-25b4-56a2-a78f-bcdb9112f72b",
                    "uuid.e9751ba1-37d2-53b2-82e7-6a9b661c9556",
                    "eui.0025388b21109b01"
                  ]
                }
              },
              {
                "apiVersion": "fusion.storage.openshift.io/v1alpha1",
                "kind": "FusionAccess",
                "metadata": {
                  "name": "fusionaccess-object"
                },
                "spec": {
                  "storageDeviceDiscovery": {
                    "create": true
                  },
                  "storageScaleVersion": "v5.2.3.5"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-12-17T06:26:05Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/initialization-resource: '{"apiVersion":"fusion.storage.openshift.io/v1alpha1","kind":"FusionAccess","metadata":{"name":"fusionaccess-object"},"spec":{"storageDeviceDiscovery":{"create":true},"storageScaleVersion":"v5.2.3.5"}}'
          operatorframework.io/suggested-namespace: ibm-fusion-access
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Openshift Container Platform","OpenShift
            Virtualization Engine"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["localvolumediscoveryresults.fusion.storage.openshift.io","localvolumediscoveries.fusion.storage.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileSystemClaim is the Schema for the filesystemclaims API.
            displayName: File System Claim
            kind: FileSystemClaim
            name: filesystemclaims.fusion.storage.openshift.io
            version: v1alpha1
          - description: FusionAccess is the Schema for the fusionaccesses API
            displayName: Fusion Access
            kind: FusionAccess
            name: fusionaccesses.fusion.storage.openshift.io
            version: v1alpha1
          - kind: LocalVolumeDiscovery
            name: localvolumediscoveries.fusion.storage.openshift.io
            version: v1alpha1
          - kind: LocalVolumeDiscoveryResult
            name: localvolumediscoveryresults.fusion.storage.openshift.io
            version: v1alpha1
        description: "IBM Fusion Access for SAN is a cloud-native storage solution
          designed to\nhelp enterprises transition smoothly from traditional virtualization\nenvironments
          to OpenShift. \n\nBuilt on IBM Storage Scale technology, it provides a consistent,\nhigh-performance
          datastore-like experience while reusing existing SAN\ninfrastructure. With
          enhanced observability, platform-storage separation, and\ntrue storage abstraction,
          Fusion Access simplifies management and boosts\nefficiency.\n\n## Prerequisites
          and warnings\n\n- storage clusters require at least 3 available nodes\n-
          each available node must have at least 20 GiB of RAM\n\nFor more information,
          see [Prerequisites and configuration](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/virtualization/storage#fusion-access-san-prereqs_install-configure-fusion-access-san).\n\nThis
          operator will need an IBM Fusion Entitlement. See [https://access.ibmfusion.eu/](https://access.ibmfusion.eu/)\nfor
          additional information.\n"
        displayName: Fusion Access for SAN
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gpfs
        - storage
        - virtualization
        links:
        - name: Fusion Access for SAN
          url: https://access.ibmfusion.eu/
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/virtualization/storage#install-configure-fusion-access-san
        maintainers:
        - email: sughosh@redhat.com
          name: Suvro
        - email: nlevanon@redhat.com
          name: Nadav
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Fusion Access for SAN Team
        relatedImages:
        - icr.io/cpopen/fusion-access/devicefinder-rhel9@sha256:7aa10cd4c1b7d58f981355ba8ab7a61ef8f8dd22b4d5f685980deb2b1bd5f034
        - registry.connect.redhat.com/ibm/fusion-access-bundle@sha256:edf8351ab0a7c942e0dbabdc1e3e5b75c5e463a429d347d4579a73dfeef5858e
        - icr.io/cpopen/fusion-access-controller-rhel9-operator@sha256:f5286af9394931f61b727c923324fadc20b6ea77539be79614d198fd2e7504a7
        - icr.io/cpopen/fusion-access/console-plugin-rhel9@sha256:fcfc796b0c51b55fe743c49e8afa2e5ff1ac25ae360879920902a65ddfd54881
        version: 1.1.0-1
      entries:
      - name: openshift-fusion-access-operator.v1.1.0-1
        version: 1.1.0-1
      - name: openshift-fusion-access-operator.v1.0.1
        version: 1.0.1
      - name: openshift-fusion-access-operator.v1.0.0
        version: 1.0.0
      - name: openshift-fusion-access-operator.v0.9.3
        version: 0.9.3
      name: stable-v1
    defaultChannel: stable-v1
    packageName: openshift-fusion-access-operator
    provider:
      name: Fusion Access for SAN Team
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: community-windows-machine-config-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: community-windows-machine-config-operator.v6.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-windows/community-windows-machine-config-operator:community-4.11-6c3601f
          createdAt: "2022-08-31T18:57:22Z"
          description: An operator that enables Windows container workloads on OCP
          olm.skipRange: '>=5.0.0 <6.0.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-windows-machine-config-operator
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/windows-machine-config-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          ## WARNING
          Community distribution of the Windows Machine Config Operator.
          This is a preview build, and is not meant for production workloads.
          Issues with this distribution of WMCO can be opened against the [WMCO repository](https://github.com/openshift/windows-machine-config-operator).
          Please read through the [troubleshooting doc](https://github.com/openshift/windows-machine-config-operator/blob/community-4.11/docs/TROUBLESHOOTING.md)
          before opening an issue.
          Please ensure that when installing this operator the starting CSV you subscribe to is supported on the
          version of OKD/OCP you are using. This CSV is meant for OKD/OCP community-4.11.
          ## Documentation
          ### Introduction
          The Windows Machine Config Operator configures Windows instances into nodes, enabling Windows container workloads
          to be ran within OKD/OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.openshift.com/container-platform/latest/machine_management/creating_machinesets/creating-machineset-aws.html#machine-api-overview_creating-machineset-aws),
          or by specifying existing instances through a [ConfigMap](https://github.com/openshift/windows-machine-config-operator/blob/community-4.11/README.md#configuring-byoh-bring-your-own-host-windows-instances).
          The operator will do all the necessary steps to configure the instance so that it can join the cluster as a worker node.
          ### Pre-requisites
          - [Cluster and OS pre-requisites](https://github.com/openshift/windows-machine-config-operator/blob/community-4.11/docs/wmco-prerequisites.md)
          ### Usage
          Please see the usage section of [README.md](https://github.com/openshift/windows-machine-config-operator/blob/community-4.11/README.md#usage).
          ### Limitations
          #### DeploymentConfigs
          Windows Nodes do not support workloads created via DeploymentConfigs. Please use a normal Deployment, or other method to
          deploy workloads.
        displayName: Community Windows Machine Config Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - windows
        maintainers:
        - email: team-winc@redhat.com
          name: Red Hat, Windows Container Support for OpenShift
        maturity: preview
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/community-windows-machine-config-operator@sha256:2b79f0e6b8bc069fac7d6cb5c86783fdc98ccae30d279ca0492f1eca96b6ea3f
        - quay.io/openshift-windows/community-windows-machine-config-operator:community-4.11-6c3601f
        version: 6.0.0
      entries:
      - name: community-windows-machine-config-operator.v6.0.0
        version: 6.0.0
      name: preview
    defaultChannel: preview
    packageName: community-windows-machine-config-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Infinispan
      provider-url: ""
    name: infinispan
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infinispan-operator.v2.2.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: quay.io/infinispan/operator:2.2.5.Final
          description: Create and manage Infinispan clusters.
          olm.skipRange: '>=2.1.x <2.2.1'
          operators.operatorframework.io/builder: operator-sdk-v1.3.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Infinispan is an in-memory data store and open-source project.

          ### Infinispan
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Infinispan cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Infinispan pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Infinispan Operator lets you adjust resource allocation to suit your requirements.
        displayName: Infinispan Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Blog
          url: https://blog.infinispan.org/
        - name: Documentation
          url: https://infinispan.org/documentation
        - name: Chat
          url: https://infinispan.zulipchat.com/#narrow/stream/185835-infinispan-cloud
        - name: Operator Source Code
          url: https://github.com/infinispan/infinispan-operator
        maintainers:
        - email: infinispan-dev@lists.jboss.org
          name: Infinispan Community
        maturity: alpha
        provider:
          name: Infinispan
        relatedImages:
        - quay.io/infinispan/operator:2.2.5.Final
        - quay.io/openshift-community-operators/infinispan@sha256:3ba9d20e83825f3c041a7dfd195b0800f74fa0f5cd1e6218fbd3547fedd85d64
        version: 2.2.5
      entries:
      - name: infinispan-operator.v2.2.5
        version: 2.2.5
      - name: infinispan-operator.v2.2.4
        version: 2.2.4
      - name: infinispan-operator.v2.2.3
        version: 2.2.3
      - name: infinispan-operator.v2.2.2
        version: 2.2.2
      - name: infinispan-operator.v2.2.1
        version: 2.2.1
      - name: infinispan-operator.v2.2.0
        version: 2.2.0
      name: 2.2.x
    - currentCSV: infinispan-operator.v2.3.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: quay.io/infinispan/operator:2.3.7.Final
          description: Create and manage Infinispan clusters.
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Infinispan is an in-memory data store and open-source project.

          ### Infinispan
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Infinispan cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Infinispan pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Infinispan Operator lets you adjust resource allocation to suit your requirements.
        displayName: Infinispan Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Blog
          url: https://blog.infinispan.org/
        - name: Documentation
          url: https://infinispan.org/documentation
        - name: Chat
          url: https://infinispan.zulipchat.com/#narrow/stream/185835-infinispan-cloud
        - name: Operator Source Code
          url: https://github.com/infinispan/infinispan-operator
        maintainers:
        - email: infinispan-dev@lists.jboss.org
          name: Infinispan Community
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Infinispan
        relatedImages:
        - quay.io/community-operator-pipeline-prod/infinispan@sha256:f165693aa550903d7a26b429ed4d093f60194a7a04148e65e61c52d67b527fad
        - quay.io/infinispan/operator:2.3.7.Final
        version: 2.3.8
      entries:
      - name: infinispan-operator.v2.3.8
        version: 2.3.8
      - name: infinispan-operator.v2.3.7
        version: 2.3.7
      - name: infinispan-operator.v2.3.6
        version: 2.3.6
      - name: infinispan-operator.v2.3.5
        version: 2.3.5
      - name: infinispan-operator.v2.3.4
        version: 2.3.4
      - name: infinispan-operator.v2.3.3
        version: 2.3.3
      - name: infinispan-operator.v2.3.2
        version: 2.3.2
      - name: infinispan-operator.v2.3.1
        version: 2.3.1
      - name: infinispan-operator.v2.3.0
        version: 2.3.0
      name: 2.3.x
    - currentCSV: infinispan-operator.v2.4.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create counter --concurrency-level=1 --initial-value=5 --storage=VOLATILE --type=weak batch-counter\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "template": "\u003cdistributed-cache /\u003e"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: quay.io/infinispan/operator:2.4.17.Final
          description: Create and manage Infinispan clusters.
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Infinispan is an in-memory data store and open-source project.

          ### Infinispan
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Infinispan cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Infinispan pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Infinispan Operator lets you adjust resource allocation to suit your requirements.
        displayName: Infinispan Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Blog
          url: https://blog.infinispan.org/
        - name: Documentation
          url: https://infinispan.org/documentation
        - name: Chat
          url: https://infinispan.zulipchat.com/#narrow/stream/185835-infinispan-cloud
        - name: Operator Source Code
          url: https://github.com/infinispan/infinispan-operator
        maintainers:
        - email: infinispan-dev@lists.jboss.org
          name: Infinispan Community
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Infinispan
        relatedImages:
        - quay.io/community-operator-pipeline-prod/infinispan@sha256:5e1a1fdb5a78a34155abe77754c774c65335ea8cbfdec2a222ee22a062c2db46
        - quay.io/infinispan/operator:2.4.17.Final
        version: 2.4.17
      entries:
      - name: infinispan-operator.v2.4.17
        version: 2.4.17
      - name: infinispan-operator.v2.4.16
        version: 2.4.16
      - name: infinispan-operator.v2.4.15
        version: 2.4.15
      - name: infinispan-operator.v2.4.14
        version: 2.4.14
      - name: infinispan-operator.v2.4.13
        version: 2.4.13
      - name: infinispan-operator.v2.4.12
        version: 2.4.12
      - name: infinispan-operator.v2.4.11
        version: 2.4.11
      - name: infinispan-operator.v2.4.10
        version: 2.4.10
      - name: infinispan-operator.v2.4.9
        version: 2.4.9
      - name: infinispan-operator.v2.4.8
        version: 2.4.8
      - name: infinispan-operator.v2.4.7
        version: 2.4.7
      - name: infinispan-operator.v2.4.6
        version: 2.4.6
      - name: infinispan-operator.v2.4.5
        version: 2.4.5
      - name: infinispan-operator.v2.4.4
        version: 2.4.4
      - name: infinispan-operator.v2.4.3
        version: 2.4.3
      - name: infinispan-operator.v2.4.2
        version: 2.4.2
      - name: infinispan-operator.v2.4.1
        version: 2.4.1
      - name: infinispan-operator.v2.4.0
        version: 2.4.0
      - name: infinispan-operator.v2.3.8
        version: 2.3.8
      - name: infinispan-operator.v2.3.7
        version: 2.3.7
      - name: infinispan-operator.v2.3.6
        version: 2.3.6
      - name: infinispan-operator.v2.3.5
        version: 2.3.5
      - name: infinispan-operator.v2.3.4
        version: 2.3.4
      - name: infinispan-operator.v2.3.3
        version: 2.3.3
      - name: infinispan-operator.v2.3.2
        version: 2.3.2
      - name: infinispan-operator.v2.3.1
        version: 2.3.1
      - name: infinispan-operator.v2.3.0
        version: 2.3.0
      name: 2.4.x
    - currentCSV: infinispan-operator.v2.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create counter --concurrency-level=1 --initial-value=5 --storage=VOLATILE --type=weak batch-counter\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "template": "\u003cdistributed-cache /\u003e"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: quay.io/infinispan/operator:2.5.0
          description: Create and manage Infinispan clusters.
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Infinispan is an in-memory data store and open-source project.

          ### Infinispan
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Infinispan cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Infinispan pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Infinispan Operator lets you adjust resource allocation to suit your requirements.
        displayName: Infinispan Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Blog
          url: https://blog.infinispan.org/
        - name: Documentation
          url: https://infinispan.org/documentation
        - name: Chat
          url: https://infinispan.zulipchat.com/#narrow/stream/185835-infinispan-cloud
        - name: Operator Source Code
          url: https://github.com/infinispan/infinispan-operator
        maintainers:
        - email: infinispan-dev@lists.jboss.org
          name: Infinispan Community
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Infinispan
        relatedImages:
        - quay.io/infinispan/operator:2.5.0
        - quay.io/community-operator-pipeline-prod/infinispan@sha256:251d904a78bf70811acfdce2d7e914d7b81068527e56867c2828c5f34a35ec50
        version: 2.5.0
      entries:
      - name: infinispan-operator.v2.5.0
        version: 2.5.0
      - name: infinispan-operator.v2.4.18
        version: 2.4.18
      - name: infinispan-operator.v2.4.16
        version: 2.4.16
      - name: infinispan-operator.v2.4.15
        version: 2.4.15
      - name: infinispan-operator.v2.4.14
        version: 2.4.14
      - name: infinispan-operator.v2.4.13
        version: 2.4.13
      - name: infinispan-operator.v2.4.12
        version: 2.4.12
      - name: infinispan-operator.v2.4.11
        version: 2.4.11
      - name: infinispan-operator.v2.4.10
        version: 2.4.10
      - name: infinispan-operator.v2.4.9
        version: 2.4.9
      - name: infinispan-operator.v2.4.8
        version: 2.4.8
      - name: infinispan-operator.v2.4.7
        version: 2.4.7
      - name: infinispan-operator.v2.4.6
        version: 2.4.6
      - name: infinispan-operator.v2.4.5
        version: 2.4.5
      - name: infinispan-operator.v2.4.4
        version: 2.4.4
      - name: infinispan-operator.v2.4.3
        version: 2.4.3
      - name: infinispan-operator.v2.4.2
        version: 2.4.2
      - name: infinispan-operator.v2.4.1
        version: 2.4.1
      - name: infinispan-operator.v2.4.0
        version: 2.4.0
      - name: infinispan-operator.v2.3.8
        version: 2.3.8
      - name: infinispan-operator.v2.3.7
        version: 2.3.7
      - name: infinispan-operator.v2.3.6
        version: 2.3.6
      - name: infinispan-operator.v2.3.5
        version: 2.3.5
      - name: infinispan-operator.v2.3.4
        version: 2.3.4
      - name: infinispan-operator.v2.3.3
        version: 2.3.3
      - name: infinispan-operator.v2.3.2
        version: 2.3.2
      - name: infinispan-operator.v2.3.1
        version: 2.3.1
      - name: infinispan-operator.v2.3.0
        version: 2.3.0
      name: stable
    defaultChannel: stable
    packageName: infinispan
    provider:
      name: Infinispan
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/kuadrant-operator
    name: rhcl-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhcl-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1",
                "kind": "AuthPolicy",
                "metadata": {
                  "name": "authpolicy-sample"
                },
                "spec": {
                  "rules": {
                    "authentication": {
                      "apikey": {
                        "apiKey": {
                          "selector": {}
                        },
                        "credentials": {
                          "authorizationHeader": {
                            "prefix": "APIKEY"
                          }
                        }
                      }
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1",
                "kind": "DNSPolicy",
                "metadata": {
                  "name": "dnspolicy-sample"
                },
                "spec": {
                  "healthCheck": {
                    "protocol": "HTTP"
                  },
                  "providerRefs": [
                    {
                      "name": "provider-ref"
                    }
                  ],
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1",
                "kind": "RateLimitPolicy",
                "metadata": {
                  "name": "ratelimitpolicy-sample"
                },
                "spec": {
                  "limits": {
                    "toys": {
                      "rates": [
                        {
                          "limit": 50,
                          "window": "1m"
                        }
                      ]
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1",
                "kind": "TLSPolicy",
                "metadata": {
                  "name": "tlspolicy-sample"
                },
                "spec": {
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "self-signed-ca"
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "Kuadrant",
                "metadata": {
                  "name": "kuadrant-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/rhcl-rhel9-operator@sha256:1afb2fe0fe38bb0ef02c4b8cb9edb83f7847da47f8ddad766223664dc05ce272
          createdAt: 27 Nov 2025, 19:24
          description: Red Hat Connectivity Link enables you to secure, protect, and
            connect your APIs and applications in multicluster, multicloud, and hybrid
            cloud environments
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kuadrant/kuadrant-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AuthPolicy enables authentication and authorization for service
              workloads in a Gateway API network
            displayName: AuthPolicy
            kind: AuthPolicy
            name: authpolicies.kuadrant.io
            version: v1
          - description: DNSPolicy configures how North-South based traffic should
              be balanced and reach the gateways
            displayName: DNSPolicy
            kind: DNSPolicy
            name: dnspolicies.kuadrant.io
            version: v1
          - description: Kuadrant configures installations of Kuadrant Service Protection
              components
            displayName: Kuadrant
            kind: Kuadrant
            name: kuadrants.kuadrant.io
            version: v1beta1
          - kind: OIDCPolicy
            name: oidcpolicies.extensions.kuadrant.io
            version: v1alpha1
          - kind: PlanPolicy
            name: planpolicies.extensions.kuadrant.io
            version: v1alpha1
          - description: RateLimitPolicy enables rate limiting for service workloads
              in a Gateway API network
            displayName: RateLimitPolicy
            kind: RateLimitPolicy
            name: ratelimitpolicies.kuadrant.io
            version: v1
          - kind: TelemetryPolicy
            name: telemetrypolicies.extensions.kuadrant.io
            version: v1alpha1
          - description: TLSPolicy provides tls for gateway listeners by managing
              the lifecycle of tls certificates
            displayName: TLSPolicy
            kind: TLSPolicy
            name: tlspolicies.kuadrant.io
            version: v1
          - kind: TokenRateLimitPolicy
            name: tokenratelimitpolicies.kuadrant.io
            version: v1alpha1
        description: A Kubernetes Operator to manage the lifecycle of the Kuadrant
          system
        displayName: Red Hat Connectivity Link
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - api-management
        - Kuadrant
        - kubernetes
        - openshift
        - cloud-service-protection
        - rate-limiting
        - authentication
        - authorization
        links:
        - name: Kuadrant Operator
          url: https://github.com/Kuadrant/kuadrant-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/kuadrant-operator
        relatedImages:
        - registry.access.redhat.com/rhcl-1/wasm-shim-rhel9@sha256:aa524e9278976aa3ef0f2d3aeb981e28d2ea6ed6fc5fede05a5dd33db0bb3de2
        - registry.redhat.io/rhcl-1/rhcl-operator-bundle@sha256:f9f233b605c7468e0b3923e8e53156ae3efaf43ab4c73f4fde9937518d1ad59b
        - registry.redhat.io/rhcl-1/rhcl-rhel9-operator@sha256:1afb2fe0fe38bb0ef02c4b8cb9edb83f7847da47f8ddad766223664dc05ce272
        version: 1.2.1
      entries:
      - name: rhcl-operator.v1.2.1
        version: 1.2.1
      - name: rhcl-operator.v1.2.0
        version: 1.2.0
      - name: rhcl-operator.v1.1.1
        version: 1.1.1
      - name: rhcl-operator.v1.1.0
        version: 1.1.0
      - name: rhcl-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: rhcl-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/kuadrant-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-s3-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-s3-controller.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "s3.services.k8s.aws/v1alpha1",
                "kind": "Bucket",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/s3-controller:1.2.1
          createdAt: "2025-12-30T00:58:23Z"
          description: AWS S3 controller is a service controller for managing S3 resources
            in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Bucket represents the state of an AWS s3 Bucket resource.
            displayName: Bucket
            kind: Bucket
            name: buckets.s3.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Simple Storage Service (S3) resources in AWS from within your Kubernetes cluster.

          **About Amazon S3**

          Amazon Simple Storage Service (Amazon S3) is an object storage service that offers industry-leading scalability, data availability, security, and performance. This means customers of all sizes and industries can use it to store and protect any amount of data for a range of use cases, such as data lakes, websites, mobile applications, backup and restore, archive, enterprise applications, IoT devices, and big data analytics. Amazon S3 provides easy-to-use management features so you can organize your data and configure finely-tuned access controls to meet your specific business, organizational, and compliance requirements. Amazon S3 is designed for 99.999999999% (11 9s) of durability, and stores data for millions of applications for companies all around the world.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon S3
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - s3
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon S3 Developer Resources
          url: https://aws.amazon.com/s3/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: s3 maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/s3-controller:1.2.1
        - quay.io/community-operator-pipeline-prod/ack-s3-controller@sha256:557e1570664b2a98577c7a6fb095a64c020b3cc4e58c8729ebef6189445edc9a
        version: 1.2.1
      entries:
      - name: ack-s3-controller.v1.2.1
        version: 1.2.1
      - name: ack-s3-controller.v1.2.0
        version: 1.2.0
      - name: ack-s3-controller.v1.1.3
        version: 1.1.3
      - name: ack-s3-controller.v1.1.2
        version: 1.1.2
      - name: ack-s3-controller.v1.1.1
        version: 1.1.1
      - name: ack-s3-controller.v1.1.0
        version: 1.1.0
      - name: ack-s3-controller.v1.0.35
        version: 1.0.35
      - name: ack-s3-controller.v1.0.33
        version: 1.0.33
      - name: ack-s3-controller.v1.0.32
        version: 1.0.32
      - name: ack-s3-controller.v1.0.31
        version: 1.0.31
      - name: ack-s3-controller.v1.0.30
        version: 1.0.30
      - name: ack-s3-controller.v1.0.29
        version: 1.0.29
      - name: ack-s3-controller.v1.0.28
        version: 1.0.28
      - name: ack-s3-controller.v1.0.27
        version: 1.0.27
      - name: ack-s3-controller.v1.0.26
        version: 1.0.26
      - name: ack-s3-controller.v1.0.25
        version: 1.0.25
      - name: ack-s3-controller.v1.0.24
        version: 1.0.24
      - name: ack-s3-controller.v1.0.23
        version: 1.0.23
      - name: ack-s3-controller.v1.0.21
        version: 1.0.21
      - name: ack-s3-controller.v1.0.20
        version: 1.0.20
      - name: ack-s3-controller.v1.0.19
        version: 1.0.19
      - name: ack-s3-controller.v1.0.18
        version: 1.0.18
      - name: ack-s3-controller.v1.0.17
        version: 1.0.17
      - name: ack-s3-controller.v1.0.16
        version: 1.0.16
      - name: ack-s3-controller.v1.0.15
        version: 1.0.15
      - name: ack-s3-controller.v1.0.14
        version: 1.0.14
      - name: ack-s3-controller.v1.0.13
        version: 1.0.13
      - name: ack-s3-controller.v1.0.12
        version: 1.0.12
      - name: ack-s3-controller.v1.0.11
        version: 1.0.11
      - name: ack-s3-controller.v1.0.9
        version: 1.0.9
      - name: ack-s3-controller.v1.0.7
        version: 1.0.7
      - name: ack-s3-controller.v1.0.6
        version: 1.0.6
      - name: ack-s3-controller.v1.0.5
        version: 1.0.5
      - name: ack-s3-controller.v1.0.4
        version: 1.0.4
      - name: ack-s3-controller.v1.0.3
        version: 1.0.3
      - name: ack-s3-controller.v1.0.2
        version: 1.0.2
      - name: ack-s3-controller.v1.0.1
        version: 1.0.1
      - name: ack-s3-controller.v1.0.0
        version: 1.0.0
      - name: ack-s3-controller.v0.1.8
        version: 0.1.8
      - name: ack-s3-controller.v0.1.7
        version: 0.1.7
      - name: ack-s3-controller.v0.1.6
        version: 0.1.6
      - name: ack-s3-controller.v0.1.5
        version: 0.1.5
      - name: ack-s3-controller.v0.1.4
        version: 0.1.4
      - name: ack-s3-controller.v0.1.3
        version: 0.1.3
      - name: ack-s3-controller.v0.1.2
        version: 0.1.2
      - name: ack-s3-controller.v0.1.1
        version: 0.1.1
      - name: ack-s3-controller.v0.1.0
        version: 0.1.0
      - name: ack-s3-controller.v0.0.20
        version: 0.0.20
      - name: ack-s3-controller.v0.0.19
        version: 0.0.19
      - name: ack-s3-controller.v0.0.18
        version: 0.0.18
      - name: ack-s3-controller.v0.0.17
        version: 0.0.17
      - name: ack-s3-controller.v0.0.16
        version: 0.0.16
      - name: ack-s3-controller.v0.0.15
        version: 0.0.15
      - name: ack-s3-controller.v0.0.14
        version: 0.0.14
      - name: ack-s3-controller.v0.0.13
        version: 0.0.13
      - name: ack-s3-controller.v0.0.12
        version: 0.0.12
      - name: ack-s3-controller.v0.0.11
        version: 0.0.11
      - name: ack-s3-controller.v0.0.10
        version: 0.0.10
      - name: ack-s3-controller.v0.0.9
        version: 0.0.9
      - name: ack-s3-controller.v0.0.8
        version: 0.0.8
      - name: ack-s3-controller.v0.0.7
        version: 0.0.7
      name: alpha
    defaultChannel: alpha
    packageName: ack-s3-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-rds-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-rds-controller.v1.7.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rds.services.k8s.aws/v1alpha1",
                "kind": "DBParameterGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "rds.services.k8s.aws/v1alpha1",
                "kind": "DBSubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/rds-controller:1.7.2
          createdAt: "2025-12-29T22:18:45Z"
          description: AWS RDS controller is a service controller for managing RDS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DBClusterEndpoint represents the state of an AWS rds DBClusterEndpoint
              resource.
            displayName: DBClusterEndpoint
            kind: DBClusterEndpoint
            name: dbclusterendpoints.rds.services.k8s.aws
            version: v1alpha1
          - description: DBClusterParameterGroup represents the state of an AWS rds
              DBClusterParameterGroup resource.
            displayName: DBClusterParameterGroup
            kind: DBClusterParameterGroup
            name: dbclusterparametergroups.rds.services.k8s.aws
            version: v1alpha1
          - description: DBCluster represents the state of an AWS rds DBCluster resource.
            displayName: DBCluster
            kind: DBCluster
            name: dbclusters.rds.services.k8s.aws
            version: v1alpha1
          - description: DBClusterSnapshot represents the state of an AWS rds DBClusterSnapshot
              resource.
            displayName: DBClusterSnapshot
            kind: DBClusterSnapshot
            name: dbclustersnapshots.rds.services.k8s.aws
            version: v1alpha1
          - description: DBInstance represents the state of an AWS rds DBInstance
              resource.
            displayName: DBInstance
            kind: DBInstance
            name: dbinstances.rds.services.k8s.aws
            version: v1alpha1
          - description: DBParameterGroup represents the state of an AWS rds DBParameterGroup
              resource.
            displayName: DBParameterGroup
            kind: DBParameterGroup
            name: dbparametergroups.rds.services.k8s.aws
            version: v1alpha1
          - description: DBProxy represents the state of an AWS rds DBProxy resource.
            displayName: DBProxy
            kind: DBProxy
            name: dbproxies.rds.services.k8s.aws
            version: v1alpha1
          - description: DBSnapshot represents the state of an AWS rds DBSnapshot
              resource.
            displayName: DBSnapshot
            kind: DBSnapshot
            name: dbsnapshots.rds.services.k8s.aws
            version: v1alpha1
          - description: DBSubnetGroup represents the state of an AWS rds DBSubnetGroup
              resource.
            displayName: DBSubnetGroup
            kind: DBSubnetGroup
            name: dbsubnetgroups.rds.services.k8s.aws
            version: v1alpha1
          - description: GlobalCluster represents the state of an AWS rds GlobalCluster
              resource.
            displayName: GlobalCluster
            kind: GlobalCluster
            name: globalclusters.rds.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Relational Database Service ("RDS") resources in AWS from within your Kubernetes cluster.

          **About Amazon RDS**

          Amazon Relational Database Service (Amazon RDS) makes it easy to set up, operate, and scale a relational database in the cloud. It provides cost-efficient and resizable capacity while automating time-consuming administration tasks such as hardware provisioning, database setup, patching and backups. It frees you to focus on your applications so you can give them the fast performance, high availability, security and compatibility they need.

          Amazon RDS is available on several database instance types - optimized for memory, performance or I/O -and provides you with six familiar database engines to choose from, including Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle Database, and SQL Server. You can use the AWS Database Migration Service to easily migrate or replicate your existing databases to Amazon RDS.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon RDS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rds
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon RDS Developer Resources
          url: https://aws.amazon.com/rds/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: rds maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/rds-controller:1.7.2
        - quay.io/community-operator-pipeline-prod/ack-rds-controller@sha256:082446fd6d91abc8b8467a1b230b55c7d628e38551c2033238b5ca388c9b7352
        version: 1.7.2
      entries:
      - name: ack-rds-controller.v1.7.2
        version: 1.7.2
      - name: ack-rds-controller.v1.7.1
        version: 1.7.1
      - name: ack-rds-controller.v1.7.0
        version: 1.7.0
      - name: ack-rds-controller.v1.6.3
        version: 1.6.3
      - name: ack-rds-controller.v1.6.2
        version: 1.6.2
      - name: ack-rds-controller.v1.6.1
        version: 1.6.1
      - name: ack-rds-controller.v1.6.0
        version: 1.6.0
      - name: ack-rds-controller.v1.5.0
        version: 1.5.0
      - name: ack-rds-controller.v1.4.26
        version: 1.4.26
      - name: ack-rds-controller.v1.4.25
        version: 1.4.25
      - name: ack-rds-controller.v1.4.24
        version: 1.4.24
      - name: ack-rds-controller.v1.4.22
        version: 1.4.22
      - name: ack-rds-controller.v1.4.21
        version: 1.4.21
      - name: ack-rds-controller.v1.4.20
        version: 1.4.20
      - name: ack-rds-controller.v1.4.19
        version: 1.4.19
      - name: ack-rds-controller.v1.4.18
        version: 1.4.18
      - name: ack-rds-controller.v1.4.17
        version: 1.4.17
      - name: ack-rds-controller.v1.4.16
        version: 1.4.16
      - name: ack-rds-controller.v1.4.15
        version: 1.4.15
      - name: ack-rds-controller.v1.4.14
        version: 1.4.14
      - name: ack-rds-controller.v1.4.13
        version: 1.4.13
      - name: ack-rds-controller.v1.4.12
        version: 1.4.12
      - name: ack-rds-controller.v1.4.11
        version: 1.4.11
      - name: ack-rds-controller.v1.4.10
        version: 1.4.10
      - name: ack-rds-controller.v1.4.8
        version: 1.4.8
      - name: ack-rds-controller.v1.4.7
        version: 1.4.7
      - name: ack-rds-controller.v1.4.6
        version: 1.4.6
      - name: ack-rds-controller.v1.4.4
        version: 1.4.4
      - name: ack-rds-controller.v1.4.3
        version: 1.4.3
      - name: ack-rds-controller.v1.4.2
        version: 1.4.2
      - name: ack-rds-controller.v1.4.1
        version: 1.4.1
      - name: ack-rds-controller.v1.4.0
        version: 1.4.0
      - name: ack-rds-controller.v1.3.0
        version: 1.3.0
      - name: ack-rds-controller.v1.2.5
        version: 1.2.5
      - name: ack-rds-controller.v1.2.4
        version: 1.2.4
      - name: ack-rds-controller.v1.2.3
        version: 1.2.3
      - name: ack-rds-controller.v1.2.2
        version: 1.2.2
      - name: ack-rds-controller.v1.2.1
        version: 1.2.1
      - name: ack-rds-controller.v1.2.0
        version: 1.2.0
      - name: ack-rds-controller.v1.1.11
        version: 1.1.11
      - name: ack-rds-controller.v1.1.9
        version: 1.1.9
      - name: ack-rds-controller.v1.1.8
        version: 1.1.8
      - name: ack-rds-controller.v1.1.7
        version: 1.1.7
      - name: ack-rds-controller.v1.1.6
        version: 1.1.6
      - name: ack-rds-controller.v1.1.5
        version: 1.1.5
      - name: ack-rds-controller.v1.1.4
        version: 1.1.4
      - name: ack-rds-controller.v1.1.3
        version: 1.1.3
      - name: ack-rds-controller.v1.1.2
        version: 1.1.2
      - name: ack-rds-controller.v1.1.1
        version: 1.1.1
      - name: ack-rds-controller.v1.1.0
        version: 1.1.0
      - name: ack-rds-controller.v1.0.0
        version: 1.0.0
      - name: ack-rds-controller.v0.1.3
        version: 0.1.3
      - name: ack-rds-controller.v0.1.1
        version: 0.1.1
      - name: ack-rds-controller.v0.1.0
        version: 0.1.0
      - name: ack-rds-controller.v0.0.30
        version: 0.0.30
      - name: ack-rds-controller.v0.0.29
        version: 0.0.29
      - name: ack-rds-controller.v0.0.28
        version: 0.0.28
      - name: ack-rds-controller.v0.0.27
        version: 0.0.27
      - name: ack-rds-controller.v0.0.26
        version: 0.0.26
      - name: ack-rds-controller.v0.0.25
        version: 0.0.25
      - name: ack-rds-controller.v0.0.24
        version: 0.0.24
      - name: ack-rds-controller.v0.0.23
        version: 0.0.23
      - name: ack-rds-controller.v0.0.22
        version: 0.0.22
      - name: ack-rds-controller.v0.0.21
        version: 0.0.21
      - name: ack-rds-controller.v0.0.20
        version: 0.0.20
      - name: ack-rds-controller.v0.0.19
        version: 0.0.19
      - name: ack-rds-controller.v0.0.18
        version: 0.0.18
      - name: ack-rds-controller.v0.0.17
        version: 0.0.17
      - name: ack-rds-controller.v0.0.16
        version: 0.0.16
      - name: ack-rds-controller.v0.0.15
        version: 0.0.15
      - name: ack-rds-controller.v0.0.14
        version: 0.0.14
      - name: ack-rds-controller.v0.0.13
        version: 0.0.13
      - name: ack-rds-controller.v0.0.12
        version: 0.0.12
      name: alpha
    defaultChannel: alpha
    packageName: ack-rds-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: apicast-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicast-community-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/apicast-operator:v0.8.0
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway built on top of NGINX. It is part
            of the Red Hat 3scale API Management Platform
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |
          The APIcast Operator creates and maintains the Red Hat 3scale API Gateway in several deployment configurations.

          APIcast is an API gateway built on top of [NGINX](https://www.nginx.com/). It is part of the [Red Hat 3scale API Management Platform](https://www.redhat.com/en/technologies/jboss-middleware/3scale).

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator/blob/v0.8.0/doc/operator-user-guide.md#upgrading-APIcast) for more information.

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/apicast-operator/tree/v0.8.0).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: APIcast
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://github.com/3scale/apicast-operator/tree/v0.8.0
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/apicast-community-operator@sha256:b0e697be3b4af0554de09306016b5852a4dadacd1962ab9417f6e682491519cd
        - quay.io/3scale/apicast-operator:v0.8.0
        version: 0.8.0
      entries:
      - name: apicast-community-operator.v0.8.0
        version: 0.8.0
      - name: apicast-community-operator.v0.7.1
        version: 0.7.1
      - name: apicast-community-operator.v0.6.0
        version: 0.6.0
      - name: apicast-community-operator.v0.5.1
        version: 0.5.1
      name: alpha
    - currentCSV: apicast-community-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/apicast-operator:v0.8.0
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway built on top of NGINX. It is part
            of the Red Hat 3scale API Management Platform
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |
          The APIcast Operator creates and maintains the Red Hat 3scale API Gateway in several deployment configurations.

          APIcast is an API gateway built on top of [NGINX](https://www.nginx.com/). It is part of the [Red Hat 3scale API Management Platform](https://www.redhat.com/en/technologies/jboss-middleware/3scale).

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator/blob/v0.8.0/doc/operator-user-guide.md#upgrading-APIcast) for more information.

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/apicast-operator/tree/v0.8.0).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: APIcast
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://github.com/3scale/apicast-operator/tree/v0.8.0
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/apicast-operator:v0.8.0
        - quay.io/community-operator-pipeline-prod/apicast-community-operator@sha256:b0e697be3b4af0554de09306016b5852a4dadacd1962ab9417f6e682491519cd
        version: 0.8.0
      entries:
      - name: apicast-community-operator.v0.8.0
        version: 0.8.0
      - name: apicast-community-operator.v0.7.1
        version: 0.7.1
      - name: apicast-community-operator.v0.6.0
        version: 0.6.0
      - name: apicast-community-operator.v0.5.1
        version: 0.5.1
      name: stable
    defaultChannel: stable
    packageName: apicast-community-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Odoo Community Association
      provider-url: ""
    name: odoo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odoo-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"odoo-community.org/v1alpha1","kind":"Odoo","metadata":{"name":"example"},"spec":{"postgresqlVolumeSize":"4Gi","odooVolumeSize":"4Gi"}}]'
          capabilities: Full Lifecycle
          categories: Application Runtime
          certified: "false"
          containerImage: ursa/odoo-operator:0.0.2
          createdAt: "2021-04-26T12:00:00Z"
          description: Operator to manage Odoo instances within an OpenShift cluster
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          repository: https://github.com/ursais/odoo-operator
          support: Open Source Integrators
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Odoo
            displayName: Odoo
            kind: Odoo
            name: odoos.odoo-community.org
            version: v1alpha1
        description: |
          ## About Odoo

          [Odoo](https://odoo-community.org), is a suite of business management software tools including CRM, e-commerce, billing, accounting, manufacturing, warehouse, project management, and inventory management to name a few.
          ## About the Odoo Operator

          This is an Ansible-based operator created with operator-sdk v1.5.0.

          The upgrade is handled by the Odoo container itself using [Marabunta](https://pypi.org/project/marabunta/) and [Anthem](https://pypi.org/project/anthem/).

          ## Roadmap
          * Add horizontal pod autoscaler
          * Add cronjob for backup
          ## Prerequisites for enabling this Operator

          Please refer to the README file on the [GitHub project](https://github.com/ursais/odoo-operator).
        displayName: Odoo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ERP
        - Business Software
        links:
        - name: Odoo Community Association
          url: https://odoo-community.org
        - name: GitHub Repository
          url: https://github.com/ursais/odoo-operator
        - name: Open Source Integrators
          url: https://opensourceintegrators.com
        maintainers:
        - email: mchambreuil@opensourceintegrators.com
          name: Maxime Chambreuil
        maturity: alpha
        provider:
          name: Odoo Community Association
        relatedImages:
        - quay.io/openshift-community-operators/odoo-operator@sha256:616e1067ebf8deb66636d57cae2ac1f9981b83419d8e7f023bc7df1c1b745536
        - ursa/odoo-operator:0.0.2
        version: 0.0.2
      entries:
      - name: odoo-operator.v0.0.2
        version: 0.0.2
      - name: odoo-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: odoo-operator
    provider:
      name: Odoo Community Association
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: New England Research Cloud
      provider-url: https://nerc.mghpcc.org/
    name: keycloak-permissions-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keycloak-permissions-operator.v1.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.nerc.mghpcc.org/v1",
                "kind": "KeycloakAuthorization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "keycloak-permissions-operator",
                    "app.kubernetes.io/instance": "keycloakauthorization-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "keycloakauthorization",
                    "app.kubernetes.io/part-of": "keycloak-permissions-operator"
                  },
                  "name": "example"
                },
                "spec": {
                  "cleanupUndefinedAuthorizations": false,
                  "description": "",
                  "keycloak": {
                    "adminSecret": {
                      "name": "keycloak-initial-admin",
                      "passwordKey": "password",
                      "usernameKey": "username"
                    }
                  },
                  "managementState": "Managed",
                  "realm": null,
                  "validateCerts": true
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          com.redhat.openshift.versions: v4.11
          containerImage: quay.io/nerc-images/keycloak-permissions-operator:1.4.1
          createdAt: "2024-05-07T21:09:02Z"
          description: Managing Keycloak resources, scopes, policies, and permissions
            for fine-grained resource permissions
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/nerc-images/keycloak-permissions-operator
          support: New England Research Cloud
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Manages Keycloak resources, scopes, policies, and permissions
              for fine-grained resource permissions.
            displayName: Keycloak Authorization
            kind: KeycloakAuthorization
            name: keycloakauthorizations.keycloak.nerc.mghpcc.org
            version: v1
        description: "An OpenShift Operator for managing Keycloak resources, scopes,
          policies,\nand permissions for fine-grained resource permissions.\nAccording
          to the [Keycloak Authorization Services documentation](https://www.keycloak.org/docs/23.0.7/authorization_services/):\n\n-
          A resource can be a web page, a RESTFul resource, a file in your file system,
          or other entity you wish to authorize access to.\n- Scopes usually represent
          the actions that can be performed on a resource, but they are not limited
          to that. You can also use scopes to represent one or more attributes within
          a resource.\n- Policies define the conditions that must be satisfied to
          access or perform operations on something (resource or scope), but they
          are not tied to what they are protecting. They are generic and can be reused
          to build permissions or even more complex policies.\n- Permissions are coupled
          with the resource they are protecting. Here you specify what you want to
          protect (resource or scope) and the policies that must be satisfied to grant
          or deny permission.\n\n## Getting started with the Keycloak Permissions
          Operator\n\nStart by defining the name of your KeycloakAuthorization and
          the same namespace where Keycloak is deployed.\n\n```yaml\napiVersion: keycloak.nerc.mghpcc.org/v1\nkind:
          KeycloakAuthorization\nmetadata:\n  name: example\n  namespace: keycloak\n```\n\n##
          KeycloakAuthorization spec\n\nNext, define the spec. \n\n- `validateCerts:
          false` If your Keycloak does not have valid certificates, if you are deploying
          to OpenShift Local for example. You don't need this line if Keycloak has
          valid certificates.\n- `cleanupUndefinedAuthorizations: true` if you would
          like to remove any undefined authorizations that may have been added manually.
          This is useful for keeping in sync with GitOps. If you do not want the operator
          removing any resources, policies, or permissions, then remove this line.\n\n```yaml\nspec:\n
          \ validateCerts: false\n  cleanupUndefinedAuthorizations: true\n```\n\n##
          Keycloak admin credentials\n\nSpecify the details to connect to keycloak,
          including the `baseUrl`, and the Secret name containing the Keycloak admin
          usernameKey and passwordKey.\n\n```yaml\n  keycloak:\n    baseUrl: https://keycloak-service:8443\n
          \   adminSecret:\n      name: keycloak-initial-admin\n      usernameKey:
          username\n      passwordKey: password\n```\n\n## Realm\n\nSpecify the realm
          id you wish to add authorization configuration to. If you want to add authorization
          configuration to multiple realms, then create a KeycloakAuthorization resource
          for each realm.\n\n```yaml\n  realm:\n    id: NERC\n```\n\n## Clients\n\nFor
          each client in the realm you wish to configure, add authorizationSettings.\n\n```yaml\n
          \   clients:\n      - id: ai4cloudops\n        authorizationSettings:\n```\n\n##
          Authorization Scopes\n\nList the scopes you wish to define for the client.\n\n```yaml\n
          \         scopes:\n            - id: prod\n              name: prod\n              displayName:
          Production\n            - id: test\n              name: test\n              displayName:
          Test\n```\n\n## Authorization Resources\n\nList the resources and corresponding
          scopes you wish to define for the client.\n\n```yaml\n          resources:\n
          \           - name: cluster\n              displayName: cluster\n              scopes:\n
          \               - id: prod\n                  name: prod\n                  displayName:
          Production\n                - id: test\n                  name: test\n                  displayName:
          Test\n```\n\n## Authorization Policies\n\nDefine the policies you wish to
          use in your permissions. You can choose from all the different types of
          permissions, including: aggregated, client, client-scope, group, regex,
          role, time, and user.\n\n```yaml\n          policies:\n            - id:
          client-example\n              name: client-example\n              logic:
          POSITIVE\n              decisionStrategy: UNANIMOUS\n              type:\n
          \               client:\n                  clients:\n                    -
          example\n            - id: group-example\n              name: group-example\n
          \             logic: POSITIVE\n              decisionStrategy: UNANIMOUS\n
          \             type:\n                group:\n                  groups:\n
          \                   - id: example\n```\n\n## Authorization Permissions\n\nDefine
          the permissions, connecting the resources, scopes, and policies together.\n\n```yaml\n
          \         permissions:\n            - name: group-example-cluster-test\n
          \             client: test\n              policy: group-example\n              resource:
          cluster\n            - name: client-example-cluster-test\n              client:
          example\n              policy: client-test\n              resource: cluster\n
          \             scope: test\n```\n\n## Other details\n\nResources, scopes,
          policies, and permissions will all be applied to Keycloak if you have configured
          the admin credentials to Keycloak successfully.\nWhen the KeycloakAuthorization
          is deleted, then the configured resources, policies, and permissions will
          be deleted as well. "
        displayName: Keycloak Permissions Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - fine-grained resource permissions
        - keycloak
        - resources
        - scopes
        - policies
        - permissions
        links:
        - name: Keycloak Permissions Operator
          url: https://keycloak-permissions-operator.domain
        maintainers:
        - email: computate@computate.org
          name: Christopher Tate
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: New England Research Cloud
          url: https://nerc.mghpcc.org/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/keycloak-permissions-operator@sha256:4de19e52e84cdba0963bdd852a63912f097280800d65add8d474c0953da478a0
        - quay.io/nerc-images/keycloak-permissions-operator:1.4.1
        version: 1.4.1
      entries:
      - name: keycloak-permissions-operator.v1.4.1
        version: 1.4.1
      - name: keycloak-permissions-operator.v1.3.0
        version: 1.3.0
      - name: keycloak-permissions-operator.v1.2.0
        version: 1.2.0
      name: alpha
    defaultChannel: alpha
    packageName: keycloak-permissions-operator
    provider:
      name: New England Research Cloud
      url: https://nerc.mghpcc.org/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/
    name: bpfman-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bpfman-operator.v0.5.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "bpfapplication"
                  },
                  "name": "bpfapplication-sample",
                  "namespace": "acme"
                },
                "spec": {
                  "byteCode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/app-test:latest"
                    }
                  },
                  "globalData": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeSelector": {},
                  "programs": [
                    {
                      "name": "tc_pass_test",
                      "tc": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "priority": 55
                          }
                        ]
                      },
                      "type": "TC"
                    },
                    {
                      "name": "tcx_next_test",
                      "tcx": {
                        "links": [
                          {
                            "direction": "Egress",
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      },
                      "type": "TCX"
                    },
                    {
                      "name": "uprobe_test",
                      "type": "UProbe",
                      "uprobe": {
                        "links": [
                          {
                            "containers": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "function": "malloc",
                            "target": "libc"
                          }
                        ]
                      }
                    },
                    {
                      "name": "uretprobe_test",
                      "type": "URetProbe",
                      "uretprobe": {
                        "links": [
                          {
                            "containers": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "function": "malloc",
                            "target": "libc"
                          }
                        ]
                      }
                    },
                    {
                      "name": "xdp_pass_test",
                      "type": "XDP",
                      "xdp": {
                        "links": [
                          {
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfApplicationState",
                "metadata": {
                  "creationTimestamp": "2025-04-30T20:59:17Z",
                  "finalizers": [
                    "bpfman.io.nsbpfapplicationcontroller/finalizer"
                  ],
                  "generation": 1,
                  "labels": {
                    "bpfman.io/ownedByProgram": "bpfapplication-sample",
                    "kubernetes.io/hostname": "bpfman-deployment-control-plane"
                  },
                  "name": "bpfapplication-sample-ed7beed4",
                  "namespace": "acme",
                  "ownerReferences": [
                    {
                      "apiVersion": "bpfman.io/v1alpha1",
                      "blockOwnerDeletion": true,
                      "controller": true,
                      "kind": "BpfApplication",
                      "name": "bpfapplication-sample",
                      "uid": "a3897014-2014-4585-90a1-ccdb70adeef9"
                    }
                  ],
                  "resourceVersion": "1348",
                  "uid": "5728d3b2-a576-4144-be74-e5c83619344e"
                },
                "status": {
                  "appLoadStatus": "LoadSuccess",
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-04-30T21:01:50Z",
                      "message": "The BPF application has been successfully loaded and attached",
                      "reason": "Success",
                      "status": "True",
                      "type": "Success"
                    }
                  ],
                  "node": "bpfman-deployment-control-plane",
                  "programs": [
                    {
                      "name": "tc_pass_test",
                      "programId": 1398,
                      "programLinkStatus": "Success",
                      "tc": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 1909324080,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3041/ns/net",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "38e00746-b7be-4bcf-bf14-622ad349b4fa"
                          },
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 1342701196,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3032/ns/net",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "ba806cdf-5980-4e7f-8d8f-d819e6a57220"
                          },
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 2698014225,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2792/ns/net",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "e74fa413-d5df-4aa8-8d17-b580b6cb42a5"
                          },
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 184300305,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2833/ns/net",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "cef8985d-f184-4b18-9ee2-fe21018fae77"
                          }
                        ]
                      },
                      "type": "TC"
                    },
                    {
                      "name": "tcx_next_test",
                      "programId": 1399,
                      "programLinkStatus": "Success",
                      "tcx": {
                        "links": [
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 1256673356,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3041/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "3feed40b-fe4b-4a69-8e91-49624df45673"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 18009714,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3032/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "37b02539-0884-418d-bee4-31456384495e"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 3446068106,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2792/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "24a56373-8967-46f4-bbd4-423a7872f18b"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 733646956,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2833/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "4c855178-0a35-4ac6-abf7-83e61541aca4"
                          }
                        ]
                      },
                      "type": "TCX"
                    },
                    {
                      "name": "uprobe_test",
                      "programId": 1400,
                      "programLinkStatus": "Success",
                      "type": "UProbe",
                      "uprobe": {
                        "links": [
                          {
                            "containerPid": 3041,
                            "function": "malloc",
                            "linkId": 3629930733,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "ed72f8a7-cdc9-4245-8c40-c645fa5969d7"
                          },
                          {
                            "containerPid": 3032,
                            "function": "malloc",
                            "linkId": 1860984127,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "5c3b196d-bbe9-4b2c-8c5c-9d78c5ed6512"
                          },
                          {
                            "containerPid": 2792,
                            "function": "malloc",
                            "linkId": 3256920823,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "927071d2-c574-4c1f-87f2-baa5e7cfcc8f"
                          },
                          {
                            "containerPid": 2833,
                            "function": "malloc",
                            "linkId": 3700254381,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "fd351a1a-fb83-4b6c-af2f-c84906c6b54b"
                          }
                        ]
                      }
                    },
                    {
                      "name": "uretprobe_test",
                      "programId": 1401,
                      "programLinkStatus": "Success",
                      "type": "URetProbe",
                      "uretprobe": {
                        "links": [
                          {
                            "containerPid": 3041,
                            "function": "malloc",
                            "linkId": 4161687115,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "2c8ad027-eca0-4da9-baa6-f7b6f0fc25fd"
                          },
                          {
                            "containerPid": 3032,
                            "function": "malloc",
                            "linkId": 3445215503,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "623f2642-9f85-45ca-bab4-8f98d8a31079"
                          },
                          {
                            "containerPid": 2792,
                            "function": "malloc",
                            "linkId": 1387817990,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "fe81f29b-493d-41a9-b1c7-35733c9ee861"
                          },
                          {
                            "containerPid": 2833,
                            "function": "malloc",
                            "linkId": 2271422622,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "d6af1106-2c72-4f7d-9ee9-5c32e59e03b7"
                          }
                        ]
                      }
                    },
                    {
                      "name": "xdp_pass_test",
                      "programId": 1402,
                      "programLinkStatus": "Success",
                      "type": "XDP",
                      "xdp": {
                        "links": [
                          {
                            "interfaceName": "eth0",
                            "linkId": 1752219747,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3041/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "17760ccc-5ca7-4d21-9590-5f6e5c0fd4ab"
                          },
                          {
                            "interfaceName": "eth0",
                            "linkId": 3877814802,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3032/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "194d2096-a15f-417f-9be6-2032217f3e86"
                          },
                          {
                            "interfaceName": "eth0",
                            "linkId": 2514284800,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2792/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "de0f43b3-6a0e-4c22-8127-9fb519a0238b"
                          },
                          {
                            "interfaceName": "eth0",
                            "linkId": 1682543086,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2833/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "84289766-bff1-4af5-a0bd-5d150747a29a"
                          }
                        ]
                      }
                    }
                  ],
                  "updateCount": 2
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "ClusterBpfApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "clusterbpfapplication"
                  },
                  "name": "clusterbpfapplication-sample"
                },
                "spec": {
                  "byteCode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/app-test:latest"
                    }
                  },
                  "globalData": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeSelector": {},
                  "programs": [
                    {
                      "kprobe": {
                        "links": [
                          {
                            "function": "try_to_wake_up",
                            "offset": 0
                          }
                        ]
                      },
                      "name": "kprobe_test",
                      "type": "KProbe"
                    },
                    {
                      "kretprobe": {
                        "links": [
                          {
                            "function": "try_to_wake_up"
                          }
                        ]
                      },
                      "name": "kretprobe_test",
                      "type": "KRetProbe"
                    },
                    {
                      "name": "tracepoint_test",
                      "tracepoint": {
                        "links": [
                          {
                            "name": "syscalls/sys_enter_openat"
                          }
                        ]
                      },
                      "type": "TracePoint"
                    },
                    {
                      "name": "tc_pass_test",
                      "tc": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceSelector": {
                              "primaryNodeInterface": true
                            },
                            "priority": 55
                          },
                          {
                            "direction": "Egress",
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      },
                      "type": "TC"
                    },
                    {
                      "name": "tcx_next_test",
                      "tcx": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceSelector": {
                              "primaryNodeInterface": true
                            },
                            "priority": 500
                          },
                          {
                            "direction": "Egress",
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      },
                      "type": "TCX"
                    },
                    {
                      "name": "uprobe_test",
                      "type": "UProbe",
                      "uprobe": {
                        "links": [
                          {
                            "containers": {
                              "containerNames": [
                                "bpfman",
                                "bpfman-agent"
                              ],
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "function": "malloc",
                            "target": "libc"
                          }
                        ]
                      }
                    },
                    {
                      "name": "uretprobe_test",
                      "type": "URetProbe",
                      "uretprobe": {
                        "links": [
                          {
                            "containers": {
                              "containerNames": [
                                "bpfman",
                                "bpfman-agent"
                              ],
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "function": "malloc",
                            "target": "libc"
                          }
                        ]
                      }
                    },
                    {
                      "name": "xdp_pass_test",
                      "type": "XDP",
                      "xdp": {
                        "links": [
                          {
                            "interfaceSelector": {
                              "primaryNodeInterface": true
                            },
                            "priority": 55
                          },
                          {
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      }
                    },
                    {
                      "fentry": {
                        "function": "do_unlinkat",
                        "links": [
                          {
                            "mode": "Attach"
                          }
                        ]
                      },
                      "name": "fentry_test",
                      "type": "FEntry"
                    },
                    {
                      "fexit": {
                        "function": "do_unlinkat",
                        "links": [
                          {
                            "mode": "Attach"
                          }
                        ]
                      },
                      "name": "fexit_test",
                      "type": "FExit"
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "ClusterBpfApplicationState",
                "metadata": {
                  "creationTimestamp": "2025-04-30T20:58:34Z",
                  "finalizers": [
                    "bpfman.io.clbpfapplicationcontroller/finalizer"
                  ],
                  "generation": 1,
                  "labels": {
                    "bpfman.io/ownedByProgram": "clusterbpfapplication-sample",
                    "kubernetes.io/hostname": "bpfman-deployment-control-plane"
                  },
                  "name": "clusterbpfapplication-sample-d3cc4fee",
                  "ownerReferences": [
                    {
                      "apiVersion": "bpfman.io/v1alpha1",
                      "blockOwnerDeletion": true,
                      "controller": true,
                      "kind": "ClusterBpfApplication",
                      "name": "clusterbpfapplication-sample",
                      "uid": "ab16b9a6-16bd-4a22-98ec-4268efaf8c8d"
                    }
                  ],
                  "resourceVersion": "1176",
                  "uid": "6e7e7446-306f-46ae-98e6-6ff28d9b5bcd"
                },
                "status": {
                  "appLoadStatus": "LoadSuccess",
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-04-30T21:00:16Z",
                      "message": "The BPF application has been successfully loaded and attached",
                      "reason": "Success",
                      "status": "True",
                      "type": "Success"
                    }
                  ],
                  "node": "bpfman-deployment-control-plane",
                  "programs": [
                    {
                      "kprobe": {
                        "links": [
                          {
                            "function": "try_to_wake_up",
                            "linkId": 818584239,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "uuid": "3c71185f-8d68-4be8-92cb-32a14a6f118b"
                          }
                        ]
                      },
                      "name": "kprobe_test",
                      "programId": 1323,
                      "programLinkStatus": "Success",
                      "type": "KProbe"
                    },
                    {
                      "kretprobe": {
                        "links": [
                          {
                            "function": "try_to_wake_up",
                            "linkId": 3409359936,
                            "linkStatus": "Attached",
                            "shouldAttach": true,
                            "uuid": "44c75019-f175-4b1e-bb34-d8896e3b0456"
                          }
                        ]
                      },
                      "name": "kretprobe_test",
                      "programId": 1324,
                      "programLinkStatus": "Success",
                      "type": "KRetProbe"
                    },
                    {
                      "name": "tracepoint_test",
                      "programId": 1325,
                      "programLinkStatus": "Success",
                      "tracepoint": {
                        "links": [
                          {
                            "linkId": 2625161294,
                            "linkStatus": "Attached",
                            "name": "syscalls/sys_enter_openat",
                            "shouldAttach": true,
                            "uuid": "40164d8a-5b55-4ff6-8e73-aa53d9180a6d"
                          }
                        ]
                      },
                      "type": "TracePoint"
                    },
                    {
                      "name": "tc_pass_test",
                      "programId": 1327,
                      "programLinkStatus": "Success",
                      "tc": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 1304307969,
                            "linkStatus": "Attached",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "44e6491e-ca98-44a0-b1b7-647b494c84fa"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 1425071644,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2196/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "89a05d8f-bb4a-448a-af11-2605d0094b98"
                          }
                        ]
                      },
                      "type": "TC"
                    },
                    {
                      "name": "tcx_next_test",
                      "programId": 1328,
                      "programLinkStatus": "Success",
                      "tcx": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 858546813,
                            "linkStatus": "Attached",
                            "priority": 500,
                            "shouldAttach": true,
                            "uuid": "6dff4163-4d62-4c93-bc34-739a796ddbb4"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 5042726,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2196/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "c066df6a-667e-4382-9e2f-a59f64bc1b7e"
                          }
                        ]
                      },
                      "type": "TCX"
                    },
                    {
                      "name": "uprobe_test",
                      "programId": 1329,
                      "programLinkStatus": "Success",
                      "type": "UProbe",
                      "uprobe": {
                        "links": [
                          {
                            "containerPid": 2089,
                            "function": "malloc",
                            "linkId": 2687038538,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "e48f1563-f56b-41fa-a87d-b8593fc5faca"
                          },
                          {
                            "containerPid": 2040,
                            "function": "malloc",
                            "linkId": 1651822558,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "e0d778df-4791-413b-b0f4-13ed1088500c"
                          }
                        ]
                      }
                    },
                    {
                      "name": "uretprobe_test",
                      "programId": 1330,
                      "programLinkStatus": "Success",
                      "type": "URetProbe",
                      "uretprobe": {
                        "links": [
                          {
                            "containerPid": 2089,
                            "function": "malloc",
                            "linkId": 3774838420,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "2f37f466-6ff4-47a1-9c8d-8dd1f97528bb"
                          },
                          {
                            "containerPid": 2040,
                            "function": "malloc",
                            "linkId": 1373645282,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "319bbaf0-1c8a-45b4-9d99-5dec27e2e5f1"
                          }
                        ]
                      }
                    },
                    {
                      "name": "xdp_pass_test",
                      "programId": 1332,
                      "programLinkStatus": "Success",
                      "type": "XDP",
                      "xdp": {
                        "links": [
                          {
                            "interfaceName": "eth0",
                            "linkId": 4243141192,
                            "linkStatus": "Attached",
                            "priority": 55,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "c3bea5b9-d3e0-4784-9a17-c286b6661fc2"
                          },
                          {
                            "interfaceName": "eth0",
                            "linkId": 1465833891,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2196/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "1e24df86-f3ff-4e0a-8f20-6759272ddb08"
                          }
                        ]
                      }
                    },
                    {
                      "fentry": {
                        "function": "do_unlinkat",
                        "links": [
                          {
                            "linkId": 950386839,
                            "linkStatus": "Attached",
                            "shouldAttach": true,
                            "uuid": "2eda2367-4540-478b-a40d-cc984475a570"
                          }
                        ]
                      },
                      "name": "fentry_test",
                      "programId": 1333,
                      "programLinkStatus": "Success",
                      "type": "FEntry"
                    },
                    {
                      "fexit": {
                        "function": "do_unlinkat",
                        "links": [
                          {
                            "linkId": 2243237521,
                            "linkStatus": "Attached",
                            "shouldAttach": true,
                            "uuid": "98910fe0-cad6-457f-8797-9f8200106511"
                          }
                        ]
                      },
                      "name": "fexit_test",
                      "programId": 1334,
                      "programLinkStatus": "Success",
                      "type": "FExit"
                    }
                  ],
                  "updateCount": 2
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: registry.redhat.io/bpfman/bpfman-rhel9-operator@sha256:d168cb1d5472ca5726aa3621e239005eb3b54d5f5d5d5ffad9a61f95a7c1ed23
          createdAt: 18 Nov 2025, 14:36
          description: The eBPF manager Operator is designed to manage eBPF programs
            for applications.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: bpfman
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "bpfman",
                "labels": {
                  "pod-security.kubernetes.io/enforce": "privileged",
                  "pod-security.kubernetes.io/audit": "privileged",
                  "pod-security.kubernetes.io/warn": "privileged",
                },
                "annotations": {
                  "openshift.io/node-selector": ""
                },
              }
            }
          operators.openshift.io/infrastructure-features: '["csi", "disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/bpfman-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BpfApplication is the Schema for the BpfApplications API
            displayName: Namespaced Bpf Application
            kind: BpfApplication
            name: bpfapplications.bpfman.io
            version: v1alpha1
          - description: BpfApplicationState is the Schema for the BpfApplicationState
              API
            displayName: Namespaced Bpf Application State
            kind: BpfApplicationState
            name: bpfapplicationstates.bpfman.io
            version: v1alpha1
          - description: ClusterBpfApplication is the Schema for the clusterbpfapplications
              API
            displayName: Cluster Bpf Application
            kind: ClusterBpfApplication
            name: clusterbpfapplications.bpfman.io
            version: v1alpha1
          - description: ClusterBpfApplicationState is the Schema for the ClusterBpfApplicationState
              API
            displayName: Cluster Bpf Application State
            kind: ClusterBpfApplicationState
            name: clusterbpfapplicationstates.bpfman.io
            version: v1alpha1
        description: "The eBPF manager Operator is a Kubernetes Operator for deploying
          [bpfman](https://github.com/openshift/bpfman-operator), a system daemon\nfor
          managing eBPF programs. It deploys bpfman itself along with CRDs to make
          deploying\neBPF programs in Kubernetes much easier.\n\n## Quick Start\n\nTo
          get bpfman up and running quickly simply click 'install' to deploy the bpfman-operator
          in the bpfman namespace via operator-hub.\n## Configuration\n\nThe `bpfman-config`
          configmap is automatically created in the `bpfman` namespace and used to
          configure the bpfman deployment.\n\nTo edit the config simply run\n\n```bash\nkubectl
          edit cm bpfman-config\n```\n\nThe following fields are adjustable\n\n- `bpfman.agent.image`:
          The image used for the bpfman-agent`\n- `bpfman.image`: The image used for
          bpfman`\n- `bpfman.log.level`: the log level for bpfman, currently supports
          `debug`, `info`, `warn`, `error`, and `fatal`, defaults to `info`\n- `bpfman.agent.log.level`:
          the log level for the bpfman-agent currently supports `info`, `debug`, and
          `trace` \n\nThe bpfman operator deploys eBPF programs via CRDs. The following
          CRDs are currently available, \n\n- BpfApplication\n- ClusterBpfApplication\n
          - BpfApplicationState\n- ClusterBpfApplicationState\n\n ## More information\n\nPlease
          checkout the [bpfman community website](https://bpfman.io/) for more information."
        displayName: eBPF Manager Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ebpf
        - kubernetes
        links:
        - name: bpfman website
          url: https://www.redhat.com/
        maintainers:
        - email: afredette@redhat.com
          name: Andre Fredette
        - email: mmahmoud@redhat.com
          name: Mohamed Mahmoud
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/bpfman/bpfman-operator-bundle@sha256:f015580da52da53c9fa9e5629804b9ac6b3026208d271f8d7ac0bd55f887bad7
        - registry.redhat.io/bpfman/bpfman-rhel9-operator@sha256:d168cb1d5472ca5726aa3621e239005eb3b54d5f5d5d5ffad9a61f95a7c1ed23
        version: 0.5.10
      entries:
      - name: bpfman-operator.v0.5.10
        version: 0.5.10
      - name: bpfman-operator.v0.5.9
        version: 0.5.9
      - name: bpfman-operator.v0.5.8
        version: 0.5.8
      name: stable
    defaultChannel: stable
    packageName: bpfman-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HashiCorp
      provider-url: https://www.hashicorp.com/
    name: hcp-terraform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hcp-terraform-operator.v2.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "AgentPool",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "agentTokens": [
                    {
                      "name": "token"
                    }
                  ],
                  "name": "NAME",
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "AgentToken",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "agentPool": {
                    "name": "AGENT_POOL_NAME"
                  },
                  "agentTokens": [
                    {
                      "name": "token-a"
                    },
                    {
                      "name": "token-b"
                    }
                  ],
                  "deletionPolicy": "destroy",
                  "managementPolicy": "merge",
                  "organization": "HCP_TF_ORG_NAME",
                  "secretName": "SECRET_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "Module",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "module": {
                    "source": "redeux/terraform-cloud-agent/kubernetes",
                    "version": "1.0.1"
                  },
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  },
                  "workspace": {
                    "id": "WORKSPACE_ID"
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "Project",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "name": "NAME",
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "RunsCollector",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "agentPool": {
                    "name": "AGENT_POOL_NAME"
                  },
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "Workspace",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "name": "NAME",
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.connect.redhat.com/hashicorp/hcp-terraform-operator@sha256:a80e83e7b6c08783e89be972588d5c24a6f9efafeb66eb63a3dd490642857c91
          createdAt: "2025-12-22T09:35:34Z"
          description: HCP Terraform Operator for Kubernetes allows managing HCP Terraform
            / Terraform Enterprise resources via Kubernetes Custom Resources.
          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"
          operators.openshift.io/valid-subscription: Valid HCP Terraform / Terraform
            Enterprise subscription is required
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/hashicorp/hcp-terraform-operator
          support: HashiCorp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              AgentPool manages HCP Terraform Agent Pools, HCP Terraform Agent Tokens and can perform HCP Terraform Agent scaling.
              More infromation:
                - https://developer.hashicorp.com/terraform/cloud-docs/agents/agent-pools
                - https://developer.hashicorp.com/terraform/cloud-docs/users-teams-organizations/api-tokens#agent-api-tokens
                - https://developer.hashicorp.com/terraform/cloud-docs/agents
            displayName: Agent Pool
            kind: AgentPool
            name: agentpools.app.terraform.io
            version: v1alpha2
          - description: |-
              AgentToken manages HCP Terraform Agent Tokens.
              More information:
              - https://developer.hashicorp.com/terraform/cloud-docs/users-teams-organizations/api-tokens#agent-api-tokens
            displayName: Agent Token
            kind: AgentToken
            name: agenttokens.app.terraform.io
            version: v1alpha2
          - description: |-
              Module implements API-driven Run Workflows.
              More information:
                - https://developer.hashicorp.com/terraform/cloud-docs/run/api
            displayName: Module
            kind: Module
            name: modules.app.terraform.io
            version: v1alpha2
          - description: |-
              Project manages HCP Terraform Projects.
              More information:
                - https://developer.hashicorp.com/terraform/cloud-docs/projects/manage
            displayName: Project
            kind: Project
            name: projects.app.terraform.io
            version: v1alpha2
          - description: |-
              RunsCollector scraptes HCP Terraform Run statuses from a given Agent Pool and exposes them as Prometheus-compatible metrics.
              More information:
                - https://developer.hashicorp.com/terraform/cloud-docs/run/remote-operations
            displayName: Runs Collector
            kind: RunsCollector
            name: runscollectors.app.terraform.io
            version: v1alpha2
          - description: |-
              Workspace manages HCP Terraform Workspaces.
              More information:
                - https://developer.hashicorp.com/terraform/cloud-docs/workspaces
            displayName: Workspace
            kind: Workspace
            name: workspaces.app.terraform.io
            version: v1alpha2
        description: HCP Terraform Operator for Kubernetes allows managing HCP Terraform
          / Terraform Enterprise resources via Kubernetes Custom Resources.
        displayName: HCP Terraform Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - terraform
        links:
        - name: HCP Terraform Operator
          url: https://github.com/hashicorp/hcp-terraform-operator
        maintainers:
        - email: hcp-tf-operator@hashicorp.com
          name: HashiCorp
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: HashiCorp
          url: https://www.hashicorp.com/
        relatedImages:
        - registry.connect.redhat.com/hashicorp/hcp-terraform-operator@sha256:a80e83e7b6c08783e89be972588d5c24a6f9efafeb66eb63a3dd490642857c91
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c8336efb1269a7f40113aa9767c6dc9affe4fd830a1ca6004206bcef1d0274a3
        - registry.connect.redhat.com/hashicorp/hcp-terraform-operator-bundle@sha256:611fc96e2c82aca4b8252fcddb67d5b39e730a0377ded4f7693104128a49069d
        version: 2.11.0
      entries:
      - name: hcp-terraform-operator.v2.11.0
        version: 2.11.0
      - name: hcp-terraform-operator.v2.9.2
        version: 2.9.2
      - name: hcp-terraform-operator.v2.9.1
        version: 2.9.1
      - name: hcp-terraform-operator.v2.9.0
        version: 2.9.0
      - name: hcp-terraform-operator.v2.8.1
        version: 2.8.1
      - name: hcp-terraform-operator.v2.8.0
        version: 2.8.0
      name: alpha
    defaultChannel: alpha
    packageName: hcp-terraform-operator
    provider:
      name: HashiCorp
      url: https://www.hashicorp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/component: operator
      app.kubernetes.io/managed-by: kustomize
      app.kubernetes.io/name: zabbix-operator-certified
      app.kubernetes.io/part-of: zabbix-operator-certified
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Zabbix LLC
      provider-url: ""
    name: zabbix-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: zabbix-operator-certified.v6.0.42
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixAgent",
                "metadata": {
                  "labels": {
                    "app": "agent",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-agent"
                },
                "spec": {
                  "active_allow": true,
                  "activeservers": "",
                  "allow_key": "",
                  "allow_privileged": true,
                  "buffer_send": 5,
                  "buffer_size": 100,
                  "debug_level": 3,
                  "deny_key": "system.run[*]",
                  "host_interface": "",
                  "host_interface_item": "",
                  "hostname": "",
                  "hostname_item": "system.hostname",
                  "load_module": "",
                  "log_remote_commands": true,
                  "max_lines_per_second": 20,
                  "metadata": "",
                  "metadata_item": "",
                  "passive_allow": true,
                  "passive_servers": "",
                  "refresh_active_checks": 120,
                  "server_host": "zabbix-server",
                  "start_agents": 3,
                  "timeout": 3,
                  "tls_accept": "unencrypted",
                  "tls_ca_file_name": "",
                  "tls_cert_file_name": "",
                  "tls_cipher_all": "",
                  "tls_cipher_all_13": "",
                  "tls_cipher_cert": "",
                  "tls_cipher_cert_13": "",
                  "tls_cipher_psk": "",
                  "tls_cipher_psk_13": "",
                  "tls_connect": "unencrypted",
                  "tls_crl_file_name": "",
                  "tls_key_file_name": "",
                  "tls_psk_file_name": "",
                  "tls_psk_identity": "",
                  "tls_server_cert_issuer": "",
                  "tls_server_cert_subject": "",
                  "unsafe_user_parameters": false,
                  "use_host_node_name": true
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixAgent2",
                "metadata": {
                  "labels": {
                    "app": "agent2",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-agent2"
                },
                "spec": {
                  "active_allow": true,
                  "activeservers": "",
                  "allow_key": "",
                  "allow_privileged": true,
                  "buffer_send": 5,
                  "buffer_size": 100,
                  "debug_level": 3,
                  "deny_key": "system.run[*]",
                  "enable_persistent_buffer": false,
                  "enable_status_port": false,
                  "host_interface": "",
                  "host_interface_item": "",
                  "hostname": "",
                  "hostname_item": "system.hostname",
                  "load_module": "",
                  "metadata": "",
                  "metadata_item": "",
                  "passive_allow": true,
                  "passive_servers": "",
                  "persistent_buffer_claim": "",
                  "persistent_buffer_period": "1h",
                  "refresh_active_checks": 120,
                  "server_host": "zabbix-server",
                  "start_agents": 3,
                  "timeout": 3,
                  "tls_accept": "unencrypted",
                  "tls_ca_file_name": "",
                  "tls_cert_file_name": "",
                  "tls_cipher_all": "",
                  "tls_cipher_all_13": "",
                  "tls_cipher_cert": "",
                  "tls_cipher_cert_13": "",
                  "tls_cipher_psk": "",
                  "tls_cipher_psk_13": "",
                  "tls_connect": "unencrypted",
                  "tls_crl_file_name": "",
                  "tls_key_file_name": "",
                  "tls_psk_file_name": "",
                  "tls_psk_identity": "",
                  "tls_server_cert_issuer": "",
                  "tls_server_cert_subject": "",
                  "unsafe_user_parameters": false,
                  "use_host_node_name": true
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixFull",
                "metadata": {
                  "labels": {
                    "app": "server",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-full"
                },
                "spec": {
                  "builtin_report_service": true,
                  "enable_report_service": false,
                  "enable_snmp_traps": false,
                  "history_storage_url": "",
                  "java_gateway": {
                    "debug_level": "info",
                    "start_pollers": 5,
                    "timeout": 3
                  },
                  "java_gateway_size": 1,
                  "server": {
                    "allow_unsupported_db_versions": false,
                    "cache_size": "32M",
                    "cache_update_frequency": 60,
                    "db_tls_cipher": "",
                    "db_tls_cipher_13": "",
                    "db_tls_connect": "",
                    "debug_level": 3,
                    "export_file_size": "",
                    "history_cache_size": "16M",
                    "history_index_cache_size": "4M",
                    "history_storage_date_index": true,
                    "history_storage_types": "",
                    "housekeeping_frequency": 1,
                    "load_module": "",
                    "log_slow_queries": 0,
                    "max_housekeeper_delete": 5000,
                    "proxy_config_frequency": 3600,
                    "proxy_data_frequency": 1,
                    "service_manager_sync_frequency": 60,
                    "start_alerters": 3,
                    "start_db_syncers": 4,
                    "start_discoverers": 1,
                    "start_escalators": 1,
                    "start_history_pollers": 5,
                    "start_http_pollers": 1,
                    "start_ipmi_pollers": 0,
                    "start_java_pollers": 5,
                    "start_lld_processors": 2,
                    "start_odbc_pollers": 1,
                    "start_pingers": 1,
                    "start_pollers": 5,
                    "start_pollers_unreachable": 1,
                    "start_preprocessors": 3,
                    "start_proxy_pollers": 0,
                    "start_report_writers": 1,
                    "start_timers": 1,
                    "start_trappers": 5,
                    "start_vmware_collectors": 0,
                    "stats_allowed_ip": "",
                    "timeout": 4,
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_cipher_all": "",
                    "tls_cipher_all_13": "",
                    "tls_cipher_cert": "",
                    "tls_cipher_cert_13": "",
                    "tls_cipher_psk": "",
                    "tls_cipher_psk_13": "",
                    "tls_crl_file_name": "",
                    "tls_key_file_name": "",
                    "trapper_timeout": 300,
                    "trend_cache_size": "4M",
                    "trend_function_cache_size": "4M",
                    "unavailable_delay": 60,
                    "unreachable_delay": 15,
                    "unreachable_period": 45,
                    "value_cache_size": "8M",
                    "vault_db_path": "",
                    "vmware_cache_size": "8M",
                    "vmware_frequency": 60,
                    "vmware_perf_frequency": 60,
                    "vmware_timeout": 10,
                    "web_service_url": ""
                  },
                  "snmp_traps_volumeclaim": "",
                  "snmptraps": {
                    "snmp_trap_date_format": "+%Y%m%d.%H%M%S",
                    "snmp_trap_format": "\\n"
                  },
                  "vault_token": "",
                  "vault_url": "",
                  "web": {
                    "db_cipher_list": "",
                    "db_double_ieee754": true,
                    "db_encryption": false,
                    "db_verify_host": false,
                    "deny_gui_access": false,
                    "enable_web_access_log": true,
                    "gui_access_ip_range": "",
                    "gui_warning_msg": "Zabbix is under maintenance.",
                    "history_storage_types": "",
                    "max_execution_time": 300,
                    "max_input_time": 300,
                    "memory_limit": "128M",
                    "post_max_size": "16M",
                    "server_name": "Kubernetes installation",
                    "session_name": "zbx_sessionid",
                    "sso_settings": "",
                    "timezone": "Europe/Riga",
                    "upload_max_filesize": "2M",
                    "vault_db_path": ""
                  },
                  "web_enable_route": true,
                  "web_service": {
                    "allowed_ip": "0.0.0.0/0",
                    "debug_level": 3,
                    "ignore_url_cert_errors": false,
                    "timeout": 3,
                    "tls_accept": "unencrypted",
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_key_file_name": ""
                  },
                  "web_size": 2,
                  "zabbix_mysql_volumeclaim": "mysql-full-zabbix",
                  "zabbix_mysqlsecret": "zabbix-full-secrets"
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixProxyMysql",
                "metadata": {
                  "labels": {
                    "app": "proxy",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-proxy-mysql"
                },
                "spec": {
                  "db_server_port": 3306,
                  "enable_snmp_traps": false,
                  "internal_db": true,
                  "java_gateway": {
                    "debug_level": "info",
                    "start_pollers": 5,
                    "timeout": 3
                  },
                  "java_gateway_size": 1,
                  "mysql_database": "zabbix_proxy",
                  "proxy": {
                    "allow_unsupported_db_versions": false,
                    "cache_size": "8M",
                    "config_frequency": 3600,
                    "data_sender_frequency": 1,
                    "db_tls_cipher": "",
                    "db_tls_cipher_13": "",
                    "db_tls_connect": "",
                    "debug_level": 3,
                    "enable_remote_commands": false,
                    "history_cache_size": "16M",
                    "history_index_cache_size": "4M",
                    "hostname": "",
                    "hostname_item": "system.hostname",
                    "housekeeping_frequency": 1,
                    "log_remote_commands": true,
                    "log_slow_queries": 0,
                    "proxy_heartbeat_frequency": 60,
                    "proxy_local_buffer": 0,
                    "proxy_mode": 0,
                    "proxy_offline_buffer": 1,
                    "server_host": "zabbix-server",
                    "start_db_syncers": 4,
                    "start_discoverers": 1,
                    "start_history_pollers": 1,
                    "start_http_pollers": 1,
                    "start_ipmi_pollers": 0,
                    "start_java_pollers": 5,
                    "start_odbc_pollers": 1,
                    "start_pingers": 1,
                    "start_pollers": 5,
                    "start_pollers_unreachable": 1,
                    "start_preprocessors": 3,
                    "start_trappers": 5,
                    "start_vmware_collectors": 0,
                    "timeout": 4,
                    "tls_accept": "unencrypted",
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_cipher_all": "",
                    "tls_cipher_all_13": "",
                    "tls_cipher_cert": "",
                    "tls_cipher_cert_13": "",
                    "tls_cipher_psk": "",
                    "tls_cipher_psk_13": "",
                    "tls_connect": "unencrypted",
                    "tls_crl_file_name": "",
                    "tls_key_file_name": "",
                    "tls_psk_file_name": "",
                    "tls_psk_identity": "",
                    "tls_server_cert_issuer": "",
                    "tls_server_cert_subject": "",
                    "trapper_timeout": 300,
                    "unavailable_delay": 60,
                    "unreachable_delay": 15,
                    "unreachable_period": 45,
                    "vault_db_path": "",
                    "vmware_cache_size": "8M",
                    "vmware_frequency": 60,
                    "vmware_perf_frequency": 60,
                    "vmware_timeout": 10
                  },
                  "snmp_traps_volumeclaim": "zabbix-snmptraps",
                  "snmptraps": {
                    "snmp_trap_date_format": "+%Y%m%d.%H%M%S",
                    "snmp_trap_format": "\\n"
                  },
                  "vault_token": "",
                  "vault_url": "",
                  "zabbix_mysql_volumeclaim": "mysql-proxy-zabbix",
                  "zabbix_mysqlsecret": "zabbix-full-secrets"
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixProxySqlite",
                "metadata": {
                  "labels": {
                    "app": "proxy",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-proxy-sqlite"
                },
                "spec": {
                  "db_data_volumeclaim": "zabbix-proxy-sqlite",
                  "enable_snmp_traps": false,
                  "java_gateway": {
                    "debug_level": "info",
                    "start_pollers": 5,
                    "timeout": 3
                  },
                  "java_gateway_size": 1,
                  "proxy": {
                    "cache_size": "8M",
                    "config_frequency": 3600,
                    "data_sender_frequency": 1,
                    "debug_level": 3,
                    "enable_remote_commands": false,
                    "history_cache_size": "16M",
                    "history_index_cache_size": "4M",
                    "hostname": "",
                    "hostname_item": "system.hostname",
                    "housekeeping_frequency": 1,
                    "log_remote_commands": true,
                    "log_slow_queries": 0,
                    "node_name_as_db_name": true,
                    "proxy_heartbeat_frequency": 60,
                    "proxy_local_buffer": 0,
                    "proxy_mode": 0,
                    "proxy_offline_buffer": 1,
                    "server_host": "zabbix-server",
                    "start_db_syncers": 4,
                    "start_discoverers": 1,
                    "start_history_pollers": 1,
                    "start_http_pollers": 1,
                    "start_ipmi_pollers": 0,
                    "start_java_pollers": 5,
                    "start_odbc_pollers": 1,
                    "start_pingers": 1,
                    "start_pollers": 5,
                    "start_pollers_unreachable": 1,
                    "start_preprocessors": 3,
                    "start_trappers": 5,
                    "start_vmware_collectors": 0,
                    "timeout": 4,
                    "tls_accept": "unencrypted",
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_cipher_all": "",
                    "tls_cipher_all_13": "",
                    "tls_cipher_cert": "",
                    "tls_cipher_cert_13": "",
                    "tls_cipher_psk": "",
                    "tls_cipher_psk_13": "",
                    "tls_connect": "unencrypted",
                    "tls_crl_file_name": "",
                    "tls_key_file_name": "",
                    "tls_psk_file_name": "",
                    "tls_psk_identity": "",
                    "tls_server_cert_issuer": "",
                    "tls_server_cert_subject": "",
                    "trapper_timeout": 300,
                    "unavailable_delay": 60,
                    "unreachable_delay": 15,
                    "unreachable_period": 45,
                    "vmware_cache_size": "8M",
                    "vmware_frequency": 60,
                    "vmware_perf_frequency": 60,
                    "vmware_timeout": 10
                  },
                  "proxy_size": 1,
                  "snmp_traps_volumeclaim": "zabbix-snmptraps",
                  "snmptraps": {
                    "snmp_trap_date_format": "+%Y%m%d.%H%M%S",
                    "snmp_trap_format": "\\n"
                  }
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixServer",
                "metadata": {
                  "labels": {
                    "app": "server",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-server"
                },
                "spec": {
                  "builtin_report_service": true,
                  "db_server_host": "mysql-server",
                  "db_server_port": 3306,
                  "enable_report_service": false,
                  "enable_snmp_traps": false,
                  "history_storage_url": "",
                  "java_gateway": {
                    "debug_level": "info",
                    "start_pollers": 5,
                    "timeout": 3
                  },
                  "java_gateway_size": 1,
                  "mysql_database": "zabbix",
                  "server": {
                    "allow_unsupported_db_versions": false,
                    "cache_size": "32M",
                    "cache_update_frequency": 60,
                    "db_tls_cipher": "",
                    "db_tls_cipher_13": "",
                    "db_tls_connect": "",
                    "debug_level": 3,
                    "export_file_size": "",
                    "history_cache_size": "16M",
                    "history_index_cache_size": "4M",
                    "history_storage_date_index": true,
                    "history_storage_types": "",
                    "housekeeping_frequency": 1,
                    "load_module": "",
                    "log_slow_queries": 0,
                    "max_housekeeper_delete": 5000,
                    "proxy_config_frequency": 3600,
                    "proxy_data_frequency": 1,
                    "service_manager_sync_frequency": 60,
                    "start_alerters": 3,
                    "start_db_syncers": 4,
                    "start_discoverers": 1,
                    "start_escalators": 1,
                    "start_history_pollers": 5,
                    "start_http_pollers": 1,
                    "start_ipmi_pollers": 0,
                    "start_java_pollers": 5,
                    "start_lld_processors": 2,
                    "start_odbc_pollers": 1,
                    "start_pingers": 1,
                    "start_pollers": 5,
                    "start_pollers_unreachable": 1,
                    "start_preprocessors": 3,
                    "start_proxy_pollers": 0,
                    "start_report_writers": 1,
                    "start_timers": 1,
                    "start_trappers": 5,
                    "start_vmware_collectors": 0,
                    "stats_allowed_ip": "",
                    "timeout": 4,
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_cipher_all": "",
                    "tls_cipher_all_13": "",
                    "tls_cipher_cert": "",
                    "tls_cipher_cert_13": "",
                    "tls_cipher_psk": "",
                    "tls_cipher_psk_13": "",
                    "tls_crl_file_name": "",
                    "tls_key_file_name": "",
                    "trapper_timeout": 300,
                    "trend_cache_size": "4M",
                    "trend_function_cache_size": "4M",
                    "unavailable_delay": 60,
                    "unreachable_delay": 15,
                    "unreachable_period": 45,
                    "value_cache_size": "8M",
                    "vault_db_path": "",
                    "vmware_cache_size": "8M",
                    "vmware_frequency": 60,
                    "vmware_perf_frequency": 60,
                    "vmware_timeout": 10,
                    "web_service_url": ""
                  },
                  "snmp_traps_volumeclaim": "",
                  "snmptraps": {
                    "snmp_trap_date_format": "+%Y%m%d.%H%M%S",
                    "snmp_trap_format": "\\n"
                  },
                  "vault_token": "",
                  "vault_url": "",
                  "web": {
                    "db_cipher_list": "",
                    "db_double_ieee754": true,
                    "db_encryption": false,
                    "db_verify_host": false,
                    "deny_gui_access": false,
                    "enable_web_access_log": true,
                    "gui_access_ip_range": "",
                    "gui_warning_msg": "Zabbix is under maintenance.",
                    "history_storage_types": "",
                    "max_execution_time": 300,
                    "max_input_time": 300,
                    "memory_limit": "128M",
                    "post_max_size": "16M",
                    "server_name": "Kubernetes installation",
                    "session_name": "zbx_sessionid",
                    "sso_settings": "",
                    "timezone": "Europe/Riga",
                    "upload_max_filesize": "2M",
                    "vault_db_path": ""
                  },
                  "web_enable_route": true,
                  "web_service": {
                    "allowed_ip": "0.0.0.0/0",
                    "debug_level": 3,
                    "ignore_url_cert_errors": false,
                    "timeout": 3,
                    "tls_accept": "unencrypted",
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_key_file_name": ""
                  },
                  "web_size": 2,
                  "zabbix_mysqlsecret": "zabbix-full-secrets"
                }
              }
            ]
          ansible.operator-sdk/reconcile-period: 5s
          capabilities: Seamless Upgrades
          categories: Monitoring, Networking
          certified: "true"
          containerImage: registry.connect.redhat.com/zabbix/zabbixoperator-certified@sha256:77e30cbaade0405adfab5d3b25c95fa45c40c29c6552308922062512b71af614
          createdAt: "2025-10-21T02:46:43Z"
          description: Zabbix operator with multiple deployment variants and different
            components
          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.skipRange: <6.0.42
          operatorframework.io/suggested-namespace: zabbix
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: ""
          support: Zabbix
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Zabbix agent 2 is a new generation of Zabbix agent and may
              be used in place of Zabbix agent
            displayName: Zabbix agent 2
            kind: ZabbixAgent2
            name: zabbixagent2s.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix agent is deployed on a monitoring nodes to actively
              monitor local resources and applications
            displayName: Zabbix agent
            kind: ZabbixAgent
            name: zabbixagents.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix server with MySQL database server, Nginx web-server
              and Zabbix Java Gateway
            displayName: Zabbix Full
            kind: ZabbixFull
            name: zabbixfulls.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix proxy with MySQL database server
            displayName: Zabbix proxy (MySQL)
            kind: ZabbixProxyMysql
            name: zabbixproxymysqls.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix proxy with SQLite database
            displayName: Zabbix proxy (SQLite3)
            kind: ZabbixProxySqlite
            name: zabbixproxysqlites.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix server with MySQL database support, Nginx web-server
              and Zabbix Java Gateway
            displayName: Zabbix Server
            kind: ZabbixServer
            name: zabbixservers.kubernetes.zabbix.com
            version: v1alpha1
        description: "## About this Operator\n\nZabbix helps you to real-time monitoring
          of millions of metrics collected from tens of thousands of servers, virtual
          machines and network devices.\nThe Zabbix Operator allows users to easily
          deploy, manage, and maintain Zabbix deployments on OpenShift. By installing
          this integration you will be able to deploy Zabbix server / proxies and
          other components with a single command.\n## Supported Features\n* **Zabbix
          Server** - Simple Zabbix installation with included Zabbix server, Zabbix
          web-interface and Zabbix Java Gateway with MySQL database support. The feature
          does not provide MySQL service and requires an external MySQL database.
          \n* **Zabbix Server (Full)** - Zabbix installation with included Zabbix
          server, Zabbix web-interface, Zabbix Java Gateway and MySQL server instance.\n*
          **Zabbix proxy (SQLite3)** - Very simple way to gain power of Zabbix proxy.
          The feature has  SQLite3 support for Zabbix proxies and allow to specify
          amount of proxies. \n* **Zabbix proxy (MySQL)** - Another option of Zabbix
          proxy. The option support and deliver MySQL database.\n* **Zabbix agent**
          - Zabbix agent can be deployed on each available node for stability and
          performance monitoring on remote nodes. It allows to gather metrics with
          full automation!* \n## Prerequisites\nAll deployment options are require
          additional information during deployment. Please, check the following instructions
          and provide required configuration:\n* **Zabbix Server** - MySQL database
          host information and MySQL database credentials in specially formatted *Secret*.
          Additionally it is possible to specify SSL certificates for HTTPS support
          in *Secret*.\n* **Zabbix Server (Full)** - MySQL database credentials in
          specially formatted *Secret*. MySQL database volume name information. Additionally
          it is possible to specify SSL certificates for HTTPS support in *Secret*.\n*
          **Zabbix proxy (SQLite3)** - Zabbix server host information only.\n* **Zabbix
          proxy (MySQL)** - MySQL database credentials in specially formatted *Secrets*
          and Zabbix server host information.\n* **Zabbix agent** - Zabbix server
          host information only for outgoing and incoming connections. Zabbix agent
          uses \"privileged\" mode to monitor node resources! For example, running
          processes.* \n### MySQL credentials\n```\nkind: Secret\napiVersion: v1\nmetadata:\n
          \ name: zabbix-full-secrets\ndata:\n  mysql_root_password: emFiYml4X3N1cGVyX3Jvb3Q=
          [1]\n  mysql_zabbix_password: emFiYml4X3VzZXJfcGFzc3dvcmQ= [2]\n  mysql_zabbix_username:
          emFiYml4 [3]\ntype: Opaque\n```\nUsing MySQL root password (*mysqlrootpassword*
          [1]) Zabbix server / proxy will try to create MySQL database schema with
          grant permissions to *mysqlzabbixusername* [2] and *mysqlzabbixpassword*
          [3].\n### SSL certificates for HTTPS\n```\nkind: Secret\napiVersion: v1\nmetadata:\n
          \ name: zabbix-web-sslsecret\ndata:\n  ssl.crt: >-\n   < ssl.crt data>\n
          \ ssl.key: >-\n\t < ssl.key data >\n  dhparam.pem: >-\n   <  dhparam.pem
          data >\n```\nFiles *ssl.crt*, *ssl.key* and *dhparam.perm* are required
          for Zabbix web-interface for SSL support.\n"
        displayName: Zabbix Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - monitoring
        - zabbix
        - appliance
        - agent
        - metrics
        links:
        - name: Zabbix
          url: https://www.zabbix.com
        - name: Zabbix Official Documentation
          url: https://www.zabbix.com/documentation/6.0/en/manual/quickstart
        - name: Zabbix Operator Installation
          url: https://www.zabbix.com/documentation/6.0/en/manual/installation/containers/openshift
        - name: Downloads
          url: https://www.zabbix.com/download
        maintainers:
        - email: alexey.pustovalov@zabbix.com
          name: Alexey Pustovalov
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Zabbix LLC
        relatedImages:
        - registry.connect.redhat.com/zabbix/zabbix-java-gateway-60@sha256:19437b3d912fe852fe568592cca5c45c0d1cee717981b94f2aed3a56a36f98ee
        - registry.connect.redhat.com/zabbix/zabbix-proxy-mysql-60@sha256:a32212ca9914b6b615d3218cb8c31b46e79a24b95408bbf7d2ae2bc2438b994d
        - registry.connect.redhat.com/zabbix/zabbix-server-mysql-60@sha256:d6a72aa83d6b33539d95363a3b1f551913323423034cb9d601d8350a3202e900
        - registry.connect.redhat.com/zabbix/zabbix-web-service-60@sha256:8fd7c44bd53a432656ff1b867001294ccdc96e307c1b5ef0efdabfd38c64d792
        - registry.connect.redhat.com/zabbix/zabbix-agent-60@sha256:c70bc90da7b35b7a1a1d9e990bd74cbcd19b152d480575af6ebc470a77ba3654
        - registry.connect.redhat.com/zabbix/zabbix-snmptraps-60@sha256:9fff7dd44cfdb94772f44e45bf09522c136d6b31e430a01182bb583f8add08b6
        - registry.connect.redhat.com/zabbix/zabbix-web-mysql-60@sha256:0d0004d7e2d16e824833dddd797a03f56df98da4aad84aa94156593c8d4c1391
        - registry.connect.redhat.com/zabbix/zabbixoperator-certified-bundle@sha256:9e2c710933fd100f9a26eb8efc9ec26a674e4295e35e62c008639436d357bbb8
        - registry.connect.redhat.com/zabbix/zabbix-proxy-sqlite-60@sha256:1eca475781f58a299d7b432a2c58c1a28bf1624b55b963837b05934ed29c2539
        - registry.connect.redhat.com/zabbix/zabbixoperator-certified@sha256:77e30cbaade0405adfab5d3b25c95fa45c40c29c6552308922062512b71af614
        - registry.redhat.io/rhel9/mysql-80@sha256:9e9d7d742346b0c8f8a244255e9b029f2c50d87eef71cdd809f3bda7b47d81ec
        - registry.connect.redhat.com/zabbix/zabbix-agent2-60@sha256:41e5a21d000096d40b8d4eab8dd295e97d34e1185064a5e16ce321f80996a154
        version: 6.0.42
      entries:
      - name: zabbix-operator-certified.v6.0.42
        version: 6.0.42
      - name: zabbix-operator-certified.v6.0.40
        version: 6.0.40
      - name: zabbix-operator-certified.v6.0.38
        version: 6.0.38
      - name: zabbix-operator-certified.v6.0.36
        version: 6.0.36
      - name: zabbix-operator-certified.v6.0.33
        version: 6.0.33
      - name: zabbix-operator-certified.v6.0.29
        version: 6.0.29
      - name: zabbix-operator-certified.v6.0.27
        version: 6.0.27
      - name: zabbix-operator-certified.v6.0.26
        version: 6.0.26
      - name: zabbix-operator-certified.v6.0.17
        version: 6.0.17
      - name: zabbix-operator-certified.v6.0.14
        version: 6.0.14
      - name: zabbix-operator-certified.v6.0.13
        version: 6.0.13
      name: lts
    defaultChannel: lts
    packageName: zabbix-operator-certified
    provider:
      name: Zabbix LLC
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: open-liberty-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: open-liberty-operator.v0.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4",
                  "expose": true,
                  "replicas": 1
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread",
                    "heap"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: registry.connect.redhat.com/ibm/open-liberty-operator-controller@sha256:18f188e48725c785557c8edea46f69c464d6f81ab47860a3bb0ec978c20a26db
          createdAt: "2022-03-25T14:00:00Z"
          description: Deploy and manage applications running on Liberty
          olm.skipRange: <0.8.1
          operators.operatorframework.io/builder: operator-sdk-v1.6.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          This advanced Operator can be used to deploy and manage Open Liberty applications with consistent, production-grade QoS. This operator is based on the [Runtime Component Operator](https://github.com/application-stacks/runtime-component-operator) and provides all of its capabilities in addition to Open Liberty specific features such as gathering traces and dumps (Day-2 operations) and easily configuring and managing the single sign-on information for your Open Liberty applications.

          Open Liberty Operator enables enterprise architects to govern the way their applications get deployed & managed in the cluster, while dramatically reducing the learning curve for developers to deploy into Kubernetes - allowing them to focus on writing the code!

          Here are some key features:

          #### Application Lifecyle
          You can deploy your Open Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the Operator will watch for any updates and will re-deploy the modified image.

          #### Custom RBAC
          This Operator is capable of using a custom ServiceAccount from the caller, allowing it to follow RBAC restrictions. By default it creates a ServiceAccount if one is not specified, which can also be bound with specific roles.

          #### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as: labels, annotations, and environment variables from a ConfigMap, a Secret or a value.

          #### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configuration, such as TLS settings, are also easily enabled.

          #### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto scaling to create (and delete) instances based on resource consumption.

          #### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you.
          This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart.
          We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          You can also easily configure and use a single storage for serviceability related Day-2 operations, such as gatherig server traces and dumps.

          #### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating kubernetes Secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to its required services without any intervention or interruption.

          #### Single Sign-On (SSO)
          Open Liberty provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows to easily configure and manage the single sign-on information for your applications.

          #### Exposing metrics to Prometheus
          Expose the Open Liberty application's metrics via the Prometheus Operator.
          You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `spec.monitoring` field to control configurations such as poll interval and security credentials.

          #### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply add the following configuration (to specify the volume size and the location to persist) to your OpenLibertyApplication CR:
          ``` storage: size: 2Gi mountPath: "/logs" ```

          #### Integration with OpenShift Serverless
          Deploy your serverless runtime component using a single toggle.  The Operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing your pod to automatically scale to 0 when it is idle.

          #### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and how they are connected.

          See our [**documentation**](https://github.com/OpenLiberty/open-liberty-operator/tree/main/doc/) for more information.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://github.com/OpenLiberty/open-liberty-operator/tree/main/doc
        - name: Open Liberty
          url: https://openliberty.io/
        - name: Open Liberty Container Images
          url: https://github.com/OpenLiberty/ci.docker
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: beta
        provider:
          name: IBM
        relatedImages:
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:591fc4b5867dff26df1952653423b33889c0f56ba3f756057694d4c0e396eeb0
        - registry.connect.redhat.com/ibm/open-liberty-operator-controller@sha256:18f188e48725c785557c8edea46f69c464d6f81ab47860a3bb0ec978c20a26db
        - registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4
        version: 0.8.1
      entries:
      - name: open-liberty-operator.v0.8.1
        version: 0.8.1
      - name: open-liberty-operator.v0.8.0
        version: 0.8.0
      name: beta2
    - currentCSV: open-liberty-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread",
                    "heap"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread",
                    "heap"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/open-liberty-operator@sha256:d45c296d43dc4c4100f38bb736f073e04c8b4d72b68ddf1189e311aff8ad66e3
          createdAt: "2023-08-28T16:39:10Z"
          description: Deploy and manage containerized Liberty applications
          olm.skipRange: '>=0.8.0 <1.2.2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          Open Liberty is a lightweight open framework for building fast and efficient cloud-native Java microservices. Open Liberty is the most flexible server runtime available to Java developers in this solar system. It is optimized for modern cloud technologies and practices, making it an ideal choice for container and Kubernetes-based deployments.

          Open Liberty Operator allows you to deploy and manage containerized Liberty applications securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform Day-2 operations such as gathering traces and memory dumps easily using the operator.
          ## Documentation
          See our [**documentation**](https://ibm.biz/olo-docs) for more information. If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/olo-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Application Lifecycle
          You can deploy your Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Integration with Semeru Cloud Compiler
          Use a single toggle to stand up a compatible Semeru Cloud Compiler instance to handle compilation requests from the multiple instances of the same application. Liberty Operator automatically sets up encrypted communication between the compiler and the application. It also handles application upgrade scenarios gracefully to ensure compiler and application instances remain compatible.
          ### Exposing metrics to Prometheus
          Expose the Liberty application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Single Sign-On (SSO)
          Liberty runtime provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows you to easily configure and manage the single sign-on information for your applications.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the OpenLibertyApplication's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your applications can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless applications using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the Liberty server.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode. You can also easily configure and use single storage for serviceability-related day-2 operations, such as gathering server traces and dumps.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://ibm.biz/olo-docs
        - name: Open Liberty
          url: https://openliberty.io
        - name: Open Liberty Container Images
          url: https://ibm.biz/ol-images
        maintainers:
        - email: support@ibm.com
          name: IBM Support
        maturity: stable
        provider:
          name: IBM
        relatedImages:
        - icr.io/appcafe/open-liberty-operator@sha256:d45c296d43dc4c4100f38bb736f073e04c8b4d72b68ddf1189e311aff8ad66e3
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:3225c49cf30a146784533496ce478466034d4549ff9721752958bac342fdec77
        version: 1.2.2
      entries:
      - name: open-liberty-operator.v1.2.2
        version: 1.2.2
      name: v1.2
    - currentCSV: open-liberty-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/open-liberty-operator@sha256:d68bb66a8133702a198f7be655d7cff5f500bb620c460a81547971e00124ef73
          createdAt: "2024-08-01T20:19:13Z"
          description: Deploy and manage containerized Liberty applications
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.3.3'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          Open Liberty is a lightweight open framework for building fast and efficient cloud-native Java microservices. Open Liberty is the most flexible server runtime available to Java developers in this solar system. It is optimized for modern cloud technologies and practices, making it an ideal choice for container and Kubernetes-based deployments.

          Open Liberty Operator allows you to deploy and manage containerized Liberty applications securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform Day-2 operations such as gathering traces and memory dumps easily using the operator.
          ## Documentation
          See our [**documentation**](https://ibm.biz/olo-docs) for more information. If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/olo-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Application Lifecycle
          You can deploy your Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Management of Lightweight Third-Party Authentication (LTPA)
          LTPA provides a method of SSO configuration to authenticate users to access applications. The Liberty operator can generate and manage the LTPA key for applications. A single LTPA key can be used per each namespace and shared with participating microservices and applications to allow users to authenticate only once.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Integration with Semeru Cloud Compiler
          Use a single toggle to stand up a compatible Semeru Cloud Compiler instance to handle compilation requests from the multiple instances of the same application. Liberty Operator automatically sets up encrypted communication between the compiler and the application. It also handles application upgrade scenarios gracefully to ensure compiler and application instances remain compatible.
          ### Exposing metrics to Prometheus
          Expose the Liberty application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Single Sign-On (SSO)
          Liberty runtime provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows you to easily configure and manage the single sign-on information for your applications.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the OpenLibertyApplication's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your applications can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless applications using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the Liberty server.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode. You can also easily configure and use single storage for serviceability-related day-2 operations, such as gathering server traces and dumps.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://ibm.biz/olo-docs
        - name: Open Liberty
          url: https://openliberty.io
        - name: Open Liberty Container Images
          url: https://ibm.biz/ol-images
        maintainers:
        - email: support@ibm.com
          name: IBM Support
        maturity: stable
        provider:
          name: IBM
        relatedImages:
        - icr.io/appcafe/open-liberty-operator@sha256:d68bb66a8133702a198f7be655d7cff5f500bb620c460a81547971e00124ef73
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:b0fa6b0356d83626509289b33dfa669bd7d32542aba986a18d296b85ce63389a
        version: 1.3.3
      entries:
      - name: open-liberty-operator.v1.3.3
        version: 1.3.3
      name: v1.3
    - currentCSV: open-liberty-operator.v1.4.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/open-liberty-operator@sha256:67b5b46dfed008dab4ea7fd176d3bc31dae8940d72194a10aebb98b1dea9043e
          createdAt: "2025-07-18T20:45:06Z"
          description: Deploy and manage containerized Liberty applications
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.4.4'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          Open Liberty is a lightweight open framework for building fast and efficient cloud-native Java microservices. Open Liberty is the most flexible server runtime available to Java developers in this solar system. It is optimized for modern cloud technologies and practices, making it an ideal choice for container and Kubernetes-based deployments.

          Open Liberty Operator allows you to deploy and manage containerized Liberty applications securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform Day-2 operations such as gathering traces and memory dumps easily using the operator.
          ## Documentation
          See our [**documentation**](https://ibm.biz/olo-docs) for more information. If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/olo-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Application Lifecycle
          You can deploy your Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Management of Lightweight Third-Party Authentication (LTPA)
          LTPA provides a method of SSO configuration to authenticate users to access applications. The Liberty operator can generate and manage the LTPA key for applications. A single LTPA key can be used per each namespace and shared with participating microservices and applications to allow users to authenticate only once.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Integration with Semeru Cloud Compiler
          Use a single toggle to stand up a compatible Semeru Cloud Compiler instance to handle compilation requests from the multiple instances of the same application. Liberty Operator automatically sets up encrypted communication between the compiler and the application. It also handles application upgrade scenarios gracefully to ensure compiler and application instances remain compatible.
          ### Exposing metrics to Prometheus
          Expose the Liberty application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Single Sign-On (SSO)
          Liberty runtime provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows you to easily configure and manage the single sign-on information for your applications.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the OpenLibertyApplication's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your applications can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless applications using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the Liberty server.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode. You can also easily configure and use single storage for serviceability-related day-2 operations, such as gathering server traces and dumps.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://ibm.biz/olo-docs
        - name: Open Liberty
          url: https://openliberty.io
        - name: Open Liberty Container Images
          url: https://ibm.biz/ol-images
        maintainers:
        - email: support@ibm.com
          name: IBM Support
        maturity: stable
        provider:
          name: IBM
        relatedImages:
        - icr.io/appcafe/open-liberty-operator@sha256:67b5b46dfed008dab4ea7fd176d3bc31dae8940d72194a10aebb98b1dea9043e
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:fe759127885502dc66423530ff03e37973355c5566a1c27e988b59d71528dd2b
        version: 1.4.4
      entries:
      - name: open-liberty-operator.v1.4.4
        version: 1.4.4
      name: v1.4
    - currentCSV: open-liberty-operator.v1.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyPerformanceData",
                "metadata": {
                  "name": "openliberty-performance-data-sample"
                },
                "spec": {
                  "interval": 30,
                  "podName": "Specify_Pod_Name_Here",
                  "timespan": 240
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/open-liberty-operator@sha256:f7df04f70c2eb6d93610cea7efe7c351169ccb92cd9a4644fbed3a1d00ec6cfc
          createdAt: "2025-12-08T17:02:43Z"
          description: Deploy and manage containerized Liberty applications
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.5.2'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server performance data
            displayName: OpenLibertyPerformanceData
            kind: OpenLibertyPerformanceData
            name: openlibertyperformancedata.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          Open Liberty is a lightweight open framework for building fast and efficient cloud-native Java microservices. Open Liberty is the most flexible server runtime available to Java developers in this solar system. It is optimized for modern cloud technologies and practices, making it an ideal choice for container and Kubernetes-based deployments.

          Open Liberty Operator allows you to deploy and manage containerized Liberty applications securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform Day-2 operations such as gathering traces and memory dumps easily using the operator.
          ## Documentation
          See our [**documentation**](https://ibm.biz/olo-docs) for more information. If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/olo-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Application Lifecycle
          You can deploy your Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Management of Lightweight Third-Party Authentication (LTPA)
          LTPA provides a method of SSO configuration to authenticate users to access applications. The Liberty operator can generate and manage the LTPA key for applications. A single LTPA key can be used per each namespace and shared with participating microservices and applications to allow users to authenticate only once.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Integration with Semeru Cloud Compiler
          Use a single toggle to stand up a compatible Semeru Cloud Compiler instance to handle compilation requests from the multiple instances of the same application. Liberty Operator automatically sets up encrypted communication between the compiler and the application. It also handles application upgrade scenarios gracefully to ensure compiler and application instances remain compatible.
          ### Exposing metrics to Prometheus
          Expose the Liberty application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Single Sign-On (SSO)
          Liberty runtime provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows you to easily configure and manage the single sign-on information for your applications.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the OpenLibertyApplication's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your applications can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless applications using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the Liberty server.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode. You can also easily configure and use single storage for serviceability-related day-2 operations, such as gathering server traces and dumps.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://ibm.biz/olo-docs
        - name: Open Liberty
          url: https://openliberty.io
        - name: Open Liberty Container Images
          url: https://ibm.biz/ol-images
        maintainers:
        - email: support@ibm.com
          name: IBM Support
        maturity: stable
        provider:
          name: IBM
        relatedImages:
        - icr.io/appcafe/open-liberty-operator@sha256:f7df04f70c2eb6d93610cea7efe7c351169ccb92cd9a4644fbed3a1d00ec6cfc
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:42ff7b444c7dddd77f54483e5b6e0144e4eaea054ae79913567817f389df24b5
        version: 1.5.2
      entries:
      - name: open-liberty-operator.v1.5.2
        version: 1.5.2
      name: v1.5
    defaultChannel: v1.5
    packageName: open-liberty-certified
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Opstree Solutions
      provider-url: ""
    name: mongodb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"opstreelabs.in/v1alpha1","kind":"MongoDB","metadata":{"name":"mongodb"},"spec":{"kubernetesConfig":{"image":"quay.io/opstree/mongo:v5.0.6","imagePullPolicy":"IfNotPresent","securityContext":{"fsGroup":1001}},"storage":{"accessModes":["ReadWriteOnce"],"storageSize":"1Gi","storageClass":"gp2"},"mongoDBSecurity":{"mongoDBAdminUser":"admin","secretRef":{"name":"mongodb-secret","key":"password"}}}},{"apiVersion":"opstreelabs.in/v1alpha1","kind":"MongoDBCluster","metadata":{"name":"mongodb"},"spec":{"clusterSize":3,"kubernetesConfig":{"image":"quay.io/opstree/mongo:v5.0.6","imagePullPolicy":"IfNotPresent","securityContext":{"fsGroup":1001}},"storage":{"accessModes":["ReadWriteOnce"],"storageSize":"1Gi","storageClass":"gp2"},"mongoDBSecurity":{"mongoDBAdminUser":"admin","secretRef":{"name":"mongodb-secret","key":"password"}}}}]'
          capabilities: Seamless Upgrades
          categories: Database,  OpenShift Optional, Storage
          certified: "false"
          containerImage: quay.io/opstree/mongodb-operator:v0.3.0
          createdAt: 05-04-2022
          description: A golang based operator to create and manage MongoDB standalone
            setup and cluster setup
          k8sMaxVersion: ""
          k8sMinVersion: 1.17.0
          repository: https://github.com/ot-container-kit/mongodb-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Mongo DB Cluster
            displayName: MongoDBCluster
            kind: MongoDBCluster
            name: mongodbclusters.opstreelabs.in
            version: v1alpha1
          - description: Mongo DB
            displayName: MongoDB
            kind: MongoDB
            name: mongodbs.opstreelabs.in
            version: v1alpha1
        description: |+
          MongoDB Operator is an operator created in Golang to create, update, and manage MongoDB standalone, replicated, and arbiter replicated setup on Kubernetes and Openshift clusters. This operator is capable of doing the setup for MongoDB with all the required best practices.

          ### Supported Features

          * MongoDB replicated cluster setup
          * MongoDB standalone setup
          * MongoDB replicated cluster failover and recovery
          * Monitoring support with MongoDB Exporter
          * Password based authentication for MongoDB
          * Kubernetes's resources for MongoDB standalone and cluster
          * Customizable configuration changes in MongoDB
          * Insightful Grafana dashboards

          ### Documentation

          **[Documentation](https://ot-mongodb-operator.netlify.app/)**
          ### Getting Help

          This project is managed by OpsTree Solutions. If you have any queries or suggestions, mail us at opensource@opstree.com.
          ### Contributing
          You can contribute to this project by:-

          * Raising Bugs and Feature Requests
          * Fixing issue by opening a Pull Request
          * Improving Documentation

          ### License

          MongoDB  Operator is licensed under [Apache License, Version 2.0](https://github.com/OT-CONTAINER-KIT/mongodb-operator/blob/master/LICENSE)


        displayName: MongoDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Database
        - MongoDB
        - Opstree
        - Operatork
        - Cloud Native
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://ot-mongodb-operator.netlify.app/
        - name: Buildpiper
          url: https://buildpiper.io
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep Rawat
        maturity: alpha
        minKubeVersion: 1.17.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/openshift-community-operators/mongodb-operator@sha256:1c06d3e936348ceeed773eb45144c9dd702e50ba293610421a93e3b3942ac9ef
        - quay.io/opstree/mongodb-operator:v0.3.0
        version: 0.3.0
      entries:
      - name: mongodb-operator.v0.3.0
        version: 0.3.0
      name: alpha
    defaultChannel: alpha
    packageName: mongodb-operator
    provider:
      name: Opstree Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: TrendMicro
      provider-url: trendmicro.com
    name: visionone-containersecurity
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: visionone-containersecurity.v0.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "container-security.trendmicro.com/v1alpha1",
                "kind": "VisionOneContainerSecurity",
                "metadata": {
                  "name": "sample",
                  "namespace": "trendmicro-system"
                },
                "spec": {
                  "visionOne": {
                    "bootstrapToken": "",
                    "clusterRegistrationKey": false,
                    "endpoint": "https://api.xdr.trendmicro.com/external/v2/direct/vcs/external/vcs",
                    "exclusion": {
                      "namespaces": [
                        "kube-system",
                        "openshift",
                        "openshift-apiserver",
                        "openshift-apiserver-operator",
                        "openshift-aqua",
                        "openshift-authentication",
                        "openshift-authentication-operator",
                        "openshift-backplane",
                        "openshift-backplane-cee",
                        "openshift-backplane-srep",
                        "openshift-build-test",
                        "openshift-cloud-credential-operator",
                        "openshift-cloud-ingress-operator",
                        "openshift-cluster-csi-drivers",
                        "openshift-cluster-machine-approver",
                        "openshift-cluster-node-tuning-operator",
                        "openshift-cluster-samples-operator",
                        "openshift-cluster-storage-operator",
                        "openshift-cluster-version",
                        "openshift-codeready-workspaces",
                        "openshift-config",
                        "openshift-config-managed",
                        "openshift-config-operator",
                        "openshift-console",
                        "openshift-console-operator",
                        "openshift-console-user-settings",
                        "openshift-controller-manager",
                        "openshift-controller-manager-operator",
                        "openshift-custom-domains-operator",
                        "openshift-customer-monitoring",
                        "openshift-dns",
                        "openshift-dns-operator",
                        "openshift-etcd",
                        "openshift-etcd-operator",
                        "openshift-host-network",
                        "openshift-image-registry",
                        "openshift-infra",
                        "openshift-ingress",
                        "openshift-ingress-canary",
                        "openshift-ingress-operator",
                        "openshift-insights",
                        "openshift-kni-infra",
                        "openshift-kube-apiserver",
                        "openshift-kube-apiserver-operator",
                        "openshift-kube-controller-manager",
                        "openshift-kube-controller-manager-operator",
                        "openshift-kube-scheduler",
                        "openshift-kube-scheduler-operator",
                        "openshift-kube-storage-version-migrator",
                        "openshift-kube-storage-version-migrator-operator",
                        "openshift-kubevirt-infra",
                        "openshift-logging",
                        "openshift-machine-api",
                        "openshift-machine-config-operator",
                        "openshift-managed-upgrade-operator",
                        "openshift-marketplace",
                        "openshift-monitoring",
                        "openshift-multus",
                        "openshift-must-gather-operator",
                        "openshift-network-diagnostics",
                        "openshift-network-operator",
                        "openshift-node",
                        "openshift-oauth-apiserver",
                        "openshift-openstack-infra",
                        "openshift-operator-lifecycle-manager",
                        "openshift-operators",
                        "openshift-operators-redhat",
                        "openshift-osd-metrics",
                        "openshift-ovirt-infra",
                        "openshift-rbac-permissions",
                        "openshift-route-monitor-operator",
                        "openshift-sdn",
                        "openshift-security",
                        "openshift-service-ca",
                        "openshift-service-ca-operator",
                        "openshift-splunk-forwarder-operator",
                        "openshift-sre-pruning",
                        "openshift-sre-sshd",
                        "openshift-strimzi",
                        "openshift-user-workload-monitoring",
                        "openshift-validation-webhook",
                        "openshift-velero",
                        "openshift-vsphere-infra",
                        "openshift-addon-operator",
                        "openshift-backplane-managed-scripts",
                        "openshift-cloud-controller-manager-operator",
                        "openshift-cloud-network-config-controller",
                        "openshift-deployment-validation-operator",
                        "openshift-managed-node-metadata-operator",
                        "openshift-ocm-agent-operator",
                        "openshift-ovn-kubernetes",
                        "openshift-azure-operator",
                        "openshift-azure-loggi",
                        "openshift-cloud-controller-manager",
                        "openshift-nutanix-infra",
                        "openshift-route-controller-manager",
                        "dedicated-admin",
                        "default",
                        "openshift-aws-vpce-operator",
                        "openshift-backplane-csa",
                        "openshift-backplane-cse",
                        "openshift-backplane-csm",
                        "openshift-backplane-mobb",
                        "openshift-backplane-tam",
                        "openshift-cluster-api",
                        "openshift-compliance",
                        "openshift-compliance-monkey",
                        "openshift-container-security",
                        "openshift-file-integrity",
                        "openshift-observability-operator",
                        "openshift-platform-operators",
                        "openshift-scanning",
                        "openshift-suricata"
                      ]
                    },
                    "inventoryCollection": {
                      "enabled": true
                    },
                    "malwareScanning": {
                      "enabled": true
                    },
                    "runtimeSecurity": {
                      "enabled": true
                    },
                    "secretScanning": {
                      "enabled": true
                    },
                    "vulnerabilityScanning": {
                      "enabled": true
                    }
                  }
                }
              },
              {
                "apiVersion": "container-security.trendmicro.com/v1alpha1",
                "kind": "VisionOneContainerSecurity",
                "metadata": {
                  "name": "visionone-containersecurity-sample",
                  "namespace": "trendmicro-system"
                },
                "spec": {
                  "visionOne": {
                    "bootstrapToken": "",
                    "clusterRegistrationKey": false,
                    "endpoint": "https://api.xdr.trendmicro.com/external/v2/direct/vcs/external/vcs",
                    "exclusion": {
                      "namespaces": [
                        "kube-system",
                        "openshift",
                        "openshift-apiserver",
                        "openshift-apiserver-operator",
                        "openshift-aqua",
                        "openshift-authentication",
                        "openshift-authentication-operator",
                        "openshift-backplane",
                        "openshift-backplane-cee",
                        "openshift-backplane-srep",
                        "openshift-build-test",
                        "openshift-cloud-credential-operator",
                        "openshift-cloud-ingress-operator",
                        "openshift-cluster-csi-drivers",
                        "openshift-cluster-machine-approver",
                        "openshift-cluster-node-tuning-operator",
                        "openshift-cluster-samples-operator",
                        "openshift-cluster-storage-operator",
                        "openshift-cluster-version",
                        "openshift-codeready-workspaces",
                        "openshift-config",
                        "openshift-config-managed",
                        "openshift-config-operator",
                        "openshift-console",
                        "openshift-console-operator",
                        "openshift-console-user-settings",
                        "openshift-controller-manager",
                        "openshift-controller-manager-operator",
                        "openshift-custom-domains-operator",
                        "openshift-customer-monitoring",
                        "openshift-dns",
                        "openshift-dns-operator",
                        "openshift-etcd",
                        "openshift-etcd-operator",
                        "openshift-host-network",
                        "openshift-image-registry",
                        "openshift-infra",
                        "openshift-ingress",
                        "openshift-ingress-canary",
                        "openshift-ingress-operator",
                        "openshift-insights",
                        "openshift-kni-infra",
                        "openshift-kube-apiserver",
                        "openshift-kube-apiserver-operator",
                        "openshift-kube-controller-manager",
                        "openshift-kube-controller-manager-operator",
                        "openshift-kube-scheduler",
                        "openshift-kube-scheduler-operator",
                        "openshift-kube-storage-version-migrator",
                        "openshift-kube-storage-version-migrator-operator",
                        "openshift-kubevirt-infra",
                        "openshift-logging",
                        "openshift-machine-api",
                        "openshift-machine-config-operator",
                        "openshift-managed-upgrade-operator",
                        "openshift-marketplace",
                        "openshift-monitoring",
                        "openshift-multus",
                        "openshift-must-gather-operator",
                        "openshift-network-diagnostics",
                        "openshift-network-operator",
                        "openshift-node",
                        "openshift-oauth-apiserver",
                        "openshift-openstack-infra",
                        "openshift-operator-lifecycle-manager",
                        "openshift-operators",
                        "openshift-operators-redhat",
                        "openshift-osd-metrics",
                        "openshift-ovirt-infra",
                        "openshift-rbac-permissions",
                        "openshift-route-monitor-operator",
                        "openshift-sdn",
                        "openshift-security",
                        "openshift-service-ca",
                        "openshift-service-ca-operator",
                        "openshift-splunk-forwarder-operator",
                        "openshift-sre-pruning",
                        "openshift-sre-sshd",
                        "openshift-strimzi",
                        "openshift-user-workload-monitoring",
                        "openshift-validation-webhook",
                        "openshift-velero",
                        "openshift-vsphere-infra",
                        "openshift-addon-operator",
                        "openshift-backplane-managed-scripts",
                        "openshift-cloud-controller-manager-operator",
                        "openshift-cloud-network-config-controller",
                        "openshift-deployment-validation-operator",
                        "openshift-managed-node-metadata-operator",
                        "openshift-ocm-agent-operator",
                        "openshift-ovn-kubernetes",
                        "openshift-azure-operator",
                        "openshift-azure-loggi",
                        "openshift-cloud-controller-manager",
                        "openshift-nutanix-infra",
                        "openshift-route-controller-manager",
                        "dedicated-admin",
                        "default",
                        "openshift-aws-vpce-operator",
                        "openshift-backplane-csa",
                        "openshift-backplane-cse",
                        "openshift-backplane-csm",
                        "openshift-backplane-mobb",
                        "openshift-backplane-tam",
                        "openshift-cluster-api",
                        "openshift-compliance",
                        "openshift-compliance-monkey",
                        "openshift-container-security",
                        "openshift-file-integrity",
                        "openshift-observability-operator",
                        "openshift-platform-operators",
                        "openshift-scanning",
                        "openshift-suricata"
                      ]
                    },
                    "inventoryCollection": {
                      "enabled": true
                    },
                    "malwareScanning": {
                      "enabled": true
                    },
                    "runtimeSecurity": {
                      "enabled": true
                    },
                    "secretScanning": {
                      "enabled": true
                    },
                    "vulnerabilityScanning": {
                      "enabled": true
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          com.redhat.openshift.versions: v4.12-v4.20
          containerImage: public.ecr.aws/trendmicro/container-security/visionone-containersecurity-operator:v0.0.5
          createdAt: "2025-12-16T17:00:49Z"
          description: Trend Vision One™ Container Security delivers full lifecycle
            protection for containers with real-time threat detection, policy enforcement,
            compliance assurance, and rapid incident response.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: trendmicro-system
          operatorhub.io/ui-metadata-max-k8s-version: "1.26"
          operators.openshift.io/valid-subscription: VisionOneContainerSecurity Subscription
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trendmicro/visionone-container-security-helm
          support: TrendMicro Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trend Vision One™ Container Security delivers full lifecycle
              protection for containers with real-time threat detection, policy enforcement,
              compliance assurance, and rapid incident response.
            displayName: VisionOneContainerSecurity
            kind: VisionOneContainerSecurity
            name: visiononecontainersecurities.container-security.trendmicro.com
            version: v1alpha1
        description: "[Trend Vision One™ Container Security](https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-container-security)
          delivers comprehensive, end-to-end\n protection for containerized workloads
          across OpenShift and Kubernetes environments.\n It continuously monitors
          for threats, vulnerabilities, policy violations, and\n exposed secrets ensuring
          compliance and enabling rapid, automated response. Purpose-built\n for hybrid
          cloud, it instantly isolates compromised containers to prevent lateral\n
          movement and minimize impact. Seamlessly integrating into OpenShift DevSecOps\n
          pipelines, it empowers security teams to enforce policies while enabling
          developers\n to innovate and deploy with confidence without disrupting workflows
          or compromising\n agility.\n\n **Installation**\n \n - Use the recommended
          `trendmicro-system` namespace.\n - Refer to the [Trend Vision One™ Documentation](https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-red-hat-openshift-operator)
          for registration and installation steps.\n"
        displayName: Trend Vision One™ Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trendmicro
        - visionone
        - container-security
        links:
        - name: Documentation
          url: https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-red-hat-openshift-operator
        maintainers:
        - email: support@trendmicro.com
          name: TrendMicro VisionOne Support Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: TrendMicro
          url: trendmicro.com
        relatedImages:
        - public.ecr.aws/trendmicro/container-security/visionone-containersecurity-operator:v0.0.5
        - quay.io/community-operator-pipeline-prod/visionone-containersecurity:0.0.5
        version: 0.0.5
      entries:
      - name: visionone-containersecurity.v0.0.5
        version: 0.0.5
      - name: visionone-containersecurity.v0.0.4
        version: 0.0.4
      - name: visionone-containersecurity.v0.0.3
        version: 0.0.3
      - name: visionone-containersecurity.v0.0.2
        version: 0.0.2
      - name: visionone-containersecurity.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: visionone-containersecurity.v0.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "container-security.trendmicro.com/v1alpha1",
                "kind": "VisionOneContainerSecurity",
                "metadata": {
                  "name": "sample",
                  "namespace": "trendmicro-system"
                },
                "spec": {
                  "visionOne": {
                    "bootstrapToken": "",
                    "clusterRegistrationKey": false,
                    "endpoint": "https://api.xdr.trendmicro.com/external/v2/direct/vcs/external/vcs",
                    "exclusion": {
                      "namespaces": [
                        "kube-system",
                        "openshift",
                        "openshift-apiserver",
                        "openshift-apiserver-operator",
                        "openshift-aqua",
                        "openshift-authentication",
                        "openshift-authentication-operator",
                        "openshift-backplane",
                        "openshift-backplane-cee",
                        "openshift-backplane-srep",
                        "openshift-build-test",
                        "openshift-cloud-credential-operator",
                        "openshift-cloud-ingress-operator",
                        "openshift-cluster-csi-drivers",
                        "openshift-cluster-machine-approver",
                        "openshift-cluster-node-tuning-operator",
                        "openshift-cluster-samples-operator",
                        "openshift-cluster-storage-operator",
                        "openshift-cluster-version",
                        "openshift-codeready-workspaces",
                        "openshift-config",
                        "openshift-config-managed",
                        "openshift-config-operator",
                        "openshift-console",
                        "openshift-console-operator",
                        "openshift-console-user-settings",
                        "openshift-controller-manager",
                        "openshift-controller-manager-operator",
                        "openshift-custom-domains-operator",
                        "openshift-customer-monitoring",
                        "openshift-dns",
                        "openshift-dns-operator",
                        "openshift-etcd",
                        "openshift-etcd-operator",
                        "openshift-host-network",
                        "openshift-image-registry",
                        "openshift-infra",
                        "openshift-ingress",
                        "openshift-ingress-canary",
                        "openshift-ingress-operator",
                        "openshift-insights",
                        "openshift-kni-infra",
                        "openshift-kube-apiserver",
                        "openshift-kube-apiserver-operator",
                        "openshift-kube-controller-manager",
                        "openshift-kube-controller-manager-operator",
                        "openshift-kube-scheduler",
                        "openshift-kube-scheduler-operator",
                        "openshift-kube-storage-version-migrator",
                        "openshift-kube-storage-version-migrator-operator",
                        "openshift-kubevirt-infra",
                        "openshift-logging",
                        "openshift-machine-api",
                        "openshift-machine-config-operator",
                        "openshift-managed-upgrade-operator",
                        "openshift-marketplace",
                        "openshift-monitoring",
                        "openshift-multus",
                        "openshift-must-gather-operator",
                        "openshift-network-diagnostics",
                        "openshift-network-operator",
                        "openshift-node",
                        "openshift-oauth-apiserver",
                        "openshift-openstack-infra",
                        "openshift-operator-lifecycle-manager",
                        "openshift-operators",
                        "openshift-operators-redhat",
                        "openshift-osd-metrics",
                        "openshift-ovirt-infra",
                        "openshift-rbac-permissions",
                        "openshift-route-monitor-operator",
                        "openshift-sdn",
                        "openshift-security",
                        "openshift-service-ca",
                        "openshift-service-ca-operator",
                        "openshift-splunk-forwarder-operator",
                        "openshift-sre-pruning",
                        "openshift-sre-sshd",
                        "openshift-strimzi",
                        "openshift-user-workload-monitoring",
                        "openshift-validation-webhook",
                        "openshift-velero",
                        "openshift-vsphere-infra",
                        "openshift-addon-operator",
                        "openshift-backplane-managed-scripts",
                        "openshift-cloud-controller-manager-operator",
                        "openshift-cloud-network-config-controller",
                        "openshift-deployment-validation-operator",
                        "openshift-managed-node-metadata-operator",
                        "openshift-ocm-agent-operator",
                        "openshift-ovn-kubernetes",
                        "openshift-azure-operator",
                        "openshift-azure-loggi",
                        "openshift-cloud-controller-manager",
                        "openshift-nutanix-infra",
                        "openshift-route-controller-manager",
                        "dedicated-admin",
                        "default",
                        "openshift-aws-vpce-operator",
                        "openshift-backplane-csa",
                        "openshift-backplane-cse",
                        "openshift-backplane-csm",
                        "openshift-backplane-mobb",
                        "openshift-backplane-tam",
                        "openshift-cluster-api",
                        "openshift-compliance",
                        "openshift-compliance-monkey",
                        "openshift-container-security",
                        "openshift-file-integrity",
                        "openshift-observability-operator",
                        "openshift-platform-operators",
                        "openshift-scanning",
                        "openshift-suricata"
                      ]
                    },
                    "inventoryCollection": {
                      "enabled": true
                    },
                    "malwareScanning": {
                      "enabled": true
                    },
                    "runtimeSecurity": {
                      "enabled": true
                    },
                    "secretScanning": {
                      "enabled": true
                    },
                    "vulnerabilityScanning": {
                      "enabled": true
                    }
                  }
                }
              },
              {
                "apiVersion": "container-security.trendmicro.com/v1alpha1",
                "kind": "VisionOneContainerSecurity",
                "metadata": {
                  "name": "visionone-containersecurity-sample",
                  "namespace": "trendmicro-system"
                },
                "spec": {
                  "visionOne": {
                    "bootstrapToken": "",
                    "clusterRegistrationKey": false,
                    "endpoint": "https://api.xdr.trendmicro.com/external/v2/direct/vcs/external/vcs",
                    "exclusion": {
                      "namespaces": [
                        "kube-system",
                        "openshift",
                        "openshift-apiserver",
                        "openshift-apiserver-operator",
                        "openshift-aqua",
                        "openshift-authentication",
                        "openshift-authentication-operator",
                        "openshift-backplane",
                        "openshift-backplane-cee",
                        "openshift-backplane-srep",
                        "openshift-build-test",
                        "openshift-cloud-credential-operator",
                        "openshift-cloud-ingress-operator",
                        "openshift-cluster-csi-drivers",
                        "openshift-cluster-machine-approver",
                        "openshift-cluster-node-tuning-operator",
                        "openshift-cluster-samples-operator",
                        "openshift-cluster-storage-operator",
                        "openshift-cluster-version",
                        "openshift-codeready-workspaces",
                        "openshift-config",
                        "openshift-config-managed",
                        "openshift-config-operator",
                        "openshift-console",
                        "openshift-console-operator",
                        "openshift-console-user-settings",
                        "openshift-controller-manager",
                        "openshift-controller-manager-operator",
                        "openshift-custom-domains-operator",
                        "openshift-customer-monitoring",
                        "openshift-dns",
                        "openshift-dns-operator",
                        "openshift-etcd",
                        "openshift-etcd-operator",
                        "openshift-host-network",
                        "openshift-image-registry",
                        "openshift-infra",
                        "openshift-ingress",
                        "openshift-ingress-canary",
                        "openshift-ingress-operator",
                        "openshift-insights",
                        "openshift-kni-infra",
                        "openshift-kube-apiserver",
                        "openshift-kube-apiserver-operator",
                        "openshift-kube-controller-manager",
                        "openshift-kube-controller-manager-operator",
                        "openshift-kube-scheduler",
                        "openshift-kube-scheduler-operator",
                        "openshift-kube-storage-version-migrator",
                        "openshift-kube-storage-version-migrator-operator",
                        "openshift-kubevirt-infra",
                        "openshift-logging",
                        "openshift-machine-api",
                        "openshift-machine-config-operator",
                        "openshift-managed-upgrade-operator",
                        "openshift-marketplace",
                        "openshift-monitoring",
                        "openshift-multus",
                        "openshift-must-gather-operator",
                        "openshift-network-diagnostics",
                        "openshift-network-operator",
                        "openshift-node",
                        "openshift-oauth-apiserver",
                        "openshift-openstack-infra",
                        "openshift-operator-lifecycle-manager",
                        "openshift-operators",
                        "openshift-operators-redhat",
                        "openshift-osd-metrics",
                        "openshift-ovirt-infra",
                        "openshift-rbac-permissions",
                        "openshift-route-monitor-operator",
                        "openshift-sdn",
                        "openshift-security",
                        "openshift-service-ca",
                        "openshift-service-ca-operator",
                        "openshift-splunk-forwarder-operator",
                        "openshift-sre-pruning",
                        "openshift-sre-sshd",
                        "openshift-strimzi",
                        "openshift-user-workload-monitoring",
                        "openshift-validation-webhook",
                        "openshift-velero",
                        "openshift-vsphere-infra",
                        "openshift-addon-operator",
                        "openshift-backplane-managed-scripts",
                        "openshift-cloud-controller-manager-operator",
                        "openshift-cloud-network-config-controller",
                        "openshift-deployment-validation-operator",
                        "openshift-managed-node-metadata-operator",
                        "openshift-ocm-agent-operator",
                        "openshift-ovn-kubernetes",
                        "openshift-azure-operator",
                        "openshift-azure-loggi",
                        "openshift-cloud-controller-manager",
                        "openshift-nutanix-infra",
                        "openshift-route-controller-manager",
                        "dedicated-admin",
                        "default",
                        "openshift-aws-vpce-operator",
                        "openshift-backplane-csa",
                        "openshift-backplane-cse",
                        "openshift-backplane-csm",
                        "openshift-backplane-mobb",
                        "openshift-backplane-tam",
                        "openshift-cluster-api",
                        "openshift-compliance",
                        "openshift-compliance-monkey",
                        "openshift-container-security",
                        "openshift-file-integrity",
                        "openshift-observability-operator",
                        "openshift-platform-operators",
                        "openshift-scanning",
                        "openshift-suricata"
                      ]
                    },
                    "inventoryCollection": {
                      "enabled": true
                    },
                    "malwareScanning": {
                      "enabled": true
                    },
                    "runtimeSecurity": {
                      "enabled": true
                    },
                    "secretScanning": {
                      "enabled": true
                    },
                    "vulnerabilityScanning": {
                      "enabled": true
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          com.redhat.openshift.versions: v4.12-v4.20
          containerImage: public.ecr.aws/trendmicro/container-security/visionone-containersecurity-operator:v0.0.5
          createdAt: "2025-12-16T17:00:49Z"
          description: Trend Vision One™ Container Security delivers full lifecycle
            protection for containers with real-time threat detection, policy enforcement,
            compliance assurance, and rapid incident response.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: trendmicro-system
          operatorhub.io/ui-metadata-max-k8s-version: "1.26"
          operators.openshift.io/valid-subscription: VisionOneContainerSecurity Subscription
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trendmicro/visionone-container-security-helm
          support: TrendMicro Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trend Vision One™ Container Security delivers full lifecycle
              protection for containers with real-time threat detection, policy enforcement,
              compliance assurance, and rapid incident response.
            displayName: VisionOneContainerSecurity
            kind: VisionOneContainerSecurity
            name: visiononecontainersecurities.container-security.trendmicro.com
            version: v1alpha1
        description: "[Trend Vision One™ Container Security](https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-container-security)
          delivers comprehensive, end-to-end\n protection for containerized workloads
          across OpenShift and Kubernetes environments.\n It continuously monitors
          for threats, vulnerabilities, policy violations, and\n exposed secrets ensuring
          compliance and enabling rapid, automated response. Purpose-built\n for hybrid
          cloud, it instantly isolates compromised containers to prevent lateral\n
          movement and minimize impact. Seamlessly integrating into OpenShift DevSecOps\n
          pipelines, it empowers security teams to enforce policies while enabling
          developers\n to innovate and deploy with confidence without disrupting workflows
          or compromising\n agility.\n\n **Installation**\n \n - Use the recommended
          `trendmicro-system` namespace.\n - Refer to the [Trend Vision One™ Documentation](https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-red-hat-openshift-operator)
          for registration and installation steps.\n"
        displayName: Trend Vision One™ Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trendmicro
        - visionone
        - container-security
        links:
        - name: Documentation
          url: https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-red-hat-openshift-operator
        maintainers:
        - email: support@trendmicro.com
          name: TrendMicro VisionOne Support Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: TrendMicro
          url: trendmicro.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/visionone-containersecurity:0.0.5
        - public.ecr.aws/trendmicro/container-security/visionone-containersecurity-operator:v0.0.5
        version: 0.0.5
      entries:
      - name: visionone-containersecurity.v0.0.5
        version: 0.0.5
      - name: visionone-containersecurity.v0.0.4
        version: 0.0.4
      - name: visionone-containersecurity.v0.0.3
        version: 0.0.3
      - name: visionone-containersecurity.v0.0.2
        version: 0.0.2
      name: stable
    defaultChannel: stable
    packageName: visionone-containersecurity
    provider:
      name: TrendMicro
      url: trendmicro.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: logic-operator-rhel8
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: logic-operator-rhel8.v1.36.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "host/namespace",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          createdAt: "2025-05-26T14:10:15Z"
          description: OpenShift Serverless Logic Kubernetes Operator for deploying
            workflow applications based on the CNCF Serverless Workflow specification
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: openshift-serverless-logic
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kubesmarts/kie-tools
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: Sonata Flow Build
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: Sonata Flow Cluster Platform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: Sonata Flow Platform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: Sonata Flow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          OpenShift Serverless Logic Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification v0.8](https://serverlessworkflow.io/).
        displayName: OpenShift Serverless Logic Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        - workflows
        links:
        - name: Documentation
          url: https://docs.openshift.com/serverless/
        - name: Source Repository
          url: https://github.com/kiegroup/kogito-serverless-operator/
        maintainers:
        - email: serverless-logic-team@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4564ca3dc5bac80d6faddaf94c817fbbc270698a9399d8a21ee1005d85ceda56
        - registry.redhat.io/openshift-serverless-1/logic-operator-bundle@sha256:5fff2717f7b08df2c90a2be7bfb36c27e13be188d23546497ed9ce266f1c03f4
        - registry.redhat.io/openshift-serverless-1/logic-rhel8-operator@sha256:8d3682448ebdac3aeabb2d23842b7e67a252b95f959c408af805037f9728fd3c
        version: 1.36.0
      entries:
      - name: logic-operator-rhel8.v1.36.0
        version: 1.36.0
      - name: logic-operator-rhel8.v1.35.0
        version: 1.35.0
      - name: logic-operator-rhel8.v1.34.0
        version: 1.34.0
      - name: logic-operator-rhel8.v1.33.0
        version: 1.33.0
      name: alpha
    defaultChannel: alpha
    packageName: logic-operator-rhel8
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: numaresources-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: numaresources-operator.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodetopology.openshift.io/v1alpha1",
                "kind": "NUMAResourcesOperator",
                "metadata": {
                  "name": "numaresourcesoperator"
                },
                "spec": {
                  "nodeGroups": [
                    {
                      "machineConfigPoolSelector": {
                        "matchLabels": {
                          "pools.operator.machineconfiguration.openshift.io/worker": ""
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "nodetopology.openshift.io/v1alpha1",
                "kind": "NUMAResourcesScheduler",
                "metadata": {
                  "name": "numaresourcesscheduler"
                },
                "spec": {
                  "imageSpec": "URL_OF_SCHEDULER_IMAGE_FROM_REDHAT_REGISTRY",
                  "logLevel": "Normal",
                  "schedulerName": "topo-aware-scheduler"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-08-08T10:00:51Z"
          features.operators.openshift.io/cnf: "true"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.19.0 <4.20.0'
          operatorframework.io/cluster-monitoring: "true"
          operators.openshift.io/valid-subscription: |-
            [
              "OpenShift Kubernetes Engine",
              "OpenShift Container Platform",
              "OpenShift Platform Plus"
            ]
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NUMAResourcesOperator is the Schema for the numaresourcesoperators
              API
            displayName: NUMA Resources Operator
            kind: NUMAResourcesOperator
            name: numaresourcesoperators.nodetopology.openshift.io
            version: v1
          - description: NUMAResourcesOperator is the Schema for the numaresourcesoperators
              API
            displayName: NUMA Resources Operator
            kind: NUMAResourcesOperator
            name: numaresourcesoperators.nodetopology.openshift.io
            version: v1alpha1
          - description: NUMAResourcesScheduler is the Schema for the numaresourcesschedulers
              API
            displayName: NUMA Aware Scheduler
            kind: NUMAResourcesScheduler
            name: numaresourcesschedulers.nodetopology.openshift.io
            version: v1
          - description: NUMAResourcesScheduler is the Schema for the numaresourcesschedulers
              API
            displayName: NUMA Aware Scheduler
            kind: NUMAResourcesScheduler
            name: numaresourcesschedulers.nodetopology.openshift.io
            version: v1alpha1
        description: NUMA resources exporter operator
        displayName: numaresources-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - RTE
        - NUMA
        links:
        - name: Numaresources Operator
          url: https://github.com/openshift-kni/numaresources-operator
        maintainers:
        - email: fromani@redhat.com
          name: fromani
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/numaresources-operator-bundle@sha256:68958183a9e33d86ca9d4d1cb1d1915952a9e34b5e8823430aeb8acf2d3566c0
        - registry.redhat.io/openshift4/numaresources-rhel9-operator@sha256:4c5e69588adca9d3d0c62b25397190f23243ea2fb15fac8c862ce943197791cc
        version: 4.20.0
      entries:
      - name: numaresources-operator.v4.20.0
        version: 4.20.0
      name: "4.20"
    defaultChannel: "4.20"
    packageName: numaresources-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OpenTelemetry Community
      provider-url: ""
    name: opentelemetry-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opentelemetry-operator.v0.141.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "Instrumentation",
                "metadata": {
                  "name": "instrumentation"
                },
                "spec": {
                  "exporter": {
                    "endpoint": "http://otel-collector-headless:4317"
                  }
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpAMPBridge",
                "metadata": {
                  "name": "opampbridge-sample"
                },
                "spec": {
                  "capabilities": {
                    "AcceptsOpAMPConnectionSettings": true,
                    "AcceptsOtherConnectionSettings": true,
                    "AcceptsRemoteConfig": true,
                    "AcceptsRestartCommand": true,
                    "ReportsEffectiveConfig": true,
                    "ReportsHealth": true,
                    "ReportsOwnLogs": true,
                    "ReportsOwnMetrics": true,
                    "ReportsOwnTraces": true,
                    "ReportsRemoteConfig": true,
                    "ReportsStatus": true
                  },
                  "componentsAllowed": {
                    "exporters": [
                      "debug"
                    ],
                    "processors": [
                      "memory_limiter"
                    ],
                    "receivers": [
                      "otlp"
                    ]
                  },
                  "endpoint": "ws://opamp-server:4320/v1/opamp"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": "receivers:\n  otlp:\n    protocols: \n      grpc: {}\n      http: {}\n\nexporters:\n  debug: {}\n\nservice:\n  pipelines:\n    traces:\n      receivers: [otlp]\n      exporters: [debug]\n"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1beta1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": {
                    "exporters": {
                      "debug": {}
                    },
                    "receivers": {
                      "otlp": {
                        "protocols": {
                          "grpc": {},
                          "http": {}
                        }
                      }
                    },
                    "service": {
                      "pipelines": {
                        "traces": {
                          "exporters": [
                            "debug"
                          ],
                          "receivers": [
                            "otlp"
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          certified: "false"
          containerImage: ghcr.io/open-telemetry/opentelemetry-operator/opentelemetry-operator
          createdAt: "2025-12-05T22:10:57Z"
          description: Provides the OpenTelemetry components, including the Collector
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/open-telemetry/opentelemetry-operator
          support: OpenTelemetry Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instrumentation is the spec for OpenTelemetry instrumentation.
            displayName: OpenTelemetry Instrumentation
            kind: Instrumentation
            name: instrumentations.opentelemetry.io
            version: v1alpha1
          - description: OpAMPBridge is the Schema for the opampbridges API.
            displayName: OpAMP Bridge
            kind: OpAMPBridge
            name: opampbridges.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1beta1
          - description: TargetAllocator is the Schema for the targetallocators API.
            displayName: Target Allocator
            kind: TargetAllocator
            name: targetallocators.opentelemetry.io
            version: v1alpha1
        description: |-
          OpenTelemetry is a collection of tools, APIs, and SDKs. You use it to instrument, generate, collect, and export telemetry data (metrics, logs, and traces) for analysis in order to understand your software's performance and behavior.

          ### Operator features

          * **Sidecar injection** - annotate your pods and let the operator inject a sidecar.
          * **Managed upgrades** - updating the operator will automatically update your OpenTelemetry collectors.
          * **Deployment modes** - your collector can be deployed as sidecar, daemon set, or regular deployment.
          * **Service port management** - the operator detects which ports need to be exposed based on the provided configuration.
        displayName: Community OpenTelemetry Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opentelemetry
        - tracing
        - logging
        - metrics
        - monitoring
        - troubleshooting
        links:
        - name: OpenTelemetry Operator
          url: https://github.com/open-telemetry/opentelemetry-operator
        maintainers:
        - email: jpkroehling@redhat.com
          name: Juraci Paixão Kröhling
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: OpenTelemetry Community
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/opentelemetry-operator@sha256:66a8780dc96bb46056c9682a3608d2328e36832d2958763888ccd802e97d5784
        - ghcr.io/open-telemetry/opentelemetry-operator/opentelemetry-operator:0.141.0
        version: 0.141.0
      entries:
      - name: opentelemetry-operator.v0.141.0
        version: 0.141.0
      - name: opentelemetry-operator.v0.140.0
        version: 0.140.0
      - name: opentelemetry-operator.v0.139.0
        version: 0.139.0
      - name: opentelemetry-operator.v0.138.0
        version: 0.138.0
      - name: opentelemetry-operator.v0.137.0
        version: 0.137.0
      - name: opentelemetry-operator.v0.136.0
        version: 0.136.0
      - name: opentelemetry-operator.v0.135.0
        version: 0.135.0
      - name: opentelemetry-operator.v0.134.0
        version: 0.134.0
      - name: opentelemetry-operator.v0.132.0
        version: 0.132.0
      - name: opentelemetry-operator.v0.131.0
        version: 0.131.0
      - name: opentelemetry-operator.v0.129.1
        version: 0.129.1
      - name: opentelemetry-operator.v0.127.0
        version: 0.127.0
      - name: opentelemetry-operator.v0.126.0
        version: 0.126.0
      - name: opentelemetry-operator.v0.125.0
        version: 0.125.0
      - name: opentelemetry-operator.v0.124.0
        version: 0.124.0
      - name: opentelemetry-operator.v0.123.0
        version: 0.123.0
      - name: opentelemetry-operator.v0.122.0
        version: 0.122.0
      - name: opentelemetry-operator.v0.121.0
        version: 0.121.0
      - name: opentelemetry-operator.v0.120.0
        version: 0.120.0
      - name: opentelemetry-operator.v0.119.0
        version: 0.119.0
      - name: opentelemetry-operator.v0.118.0
        version: 0.118.0
      - name: opentelemetry-operator.v0.117.0
        version: 0.117.0
      - name: opentelemetry-operator.v0.116.0
        version: 0.116.0
      - name: opentelemetry-operator.v0.115.0
        version: 0.115.0
      - name: opentelemetry-operator.v0.114.1
        version: 0.114.1
      - name: opentelemetry-operator.v0.112.0
        version: 0.112.0
      - name: opentelemetry-operator.v0.111.0
        version: 0.111.0
      - name: opentelemetry-operator.v0.110.0
        version: 0.110.0
      - name: opentelemetry-operator.v0.109.0
        version: 0.109.0
      - name: opentelemetry-operator.v0.108.0
        version: 0.108.0
      - name: opentelemetry-operator.v0.107.0
        version: 0.107.0
      - name: opentelemetry-operator.v0.106.0
        version: 0.106.0
      - name: opentelemetry-operator.v0.105.0
        version: 0.105.0
      name: alpha
    defaultChannel: alpha
    packageName: opentelemetry-operator
    provider:
      name: OpenTelemetry Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Managed OpenShift Black Belt
      provider-url: https://github.com/rh-mobb/ocm-operator
    name: ocm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ocm-operator.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ocm.mobb.redhat.com/v1alpha1",
                "kind": "GitLabIdentityProvider",
                "metadata": {
                  "name": "gitlab-sample"
                },
                "spec": {
                  "clientID": "gitlab",
                  "clientSecret": {
                    "name": "gitlab"
                  },
                  "clusterName": "my-cluster",
                  "displayName": "gitlab-sample",
                  "mappingMethod": "claim",
                  "url": "https://gitlab.com"
                }
              },
              {
                "apiVersion": "ocm.mobb.redhat.com/v1alpha1",
                "kind": "LDAPIdentityProvider",
                "metadata": {
                  "name": "ldap-sample"
                },
                "spec": {
                  "bindDN": "CN=test,OU=Users,DC=example,DC=com",
                  "bindPassword": {
                    "name": "test"
                  },
                  "clusterName": "my-cluster",
                  "displayName": "ldap-sample",
                  "mappingMethod": "claim",
                  "url": "ldap://test.example.com:389"
                }
              },
              {
                "apiVersion": "ocm.mobb.redhat.com/v1alpha1",
                "kind": "MachinePool",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "aws": {
                    "spotInstances": {
                      "enabled": false
                    }
                  },
                  "clusterName": "my-cluster",
                  "instanceType": "m5.xlarge",
                  "labels": {
                    "owner": "my-user"
                  },
                  "maximumNodesPerZone": 1,
                  "minimumNodesPerZone": 1,
                  "wait": false
                }
              },
              {
                "apiVersion": "ocm.mobb.redhat.com/v1alpha1",
                "kind": "ROSACluster",
                "metadata": {
                  "name": "rosa-sample"
                },
                "spec": {
                  "accountID": "111111111111",
                  "defaultMachinePool": {
                    "instanceType": "m5.xlarge",
                    "labels": {
                      "owner": "my-owner"
                    },
                    "minimumNodesPerZone": 2
                  },
                  "displayName": "my-cluster",
                  "iam": {
                    "userRole": "arn:aws:iam::111111111111:role/ManagedOpenShift-User-my_user-Role"
                  },
                  "tags": {
                    "owner": "my-owner"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/mobb/ocm-operator:v0.1.0
          createdAt: "2023-06-02T17:32:25Z"
          operatorframework.io/suggested-namespace: ocm-operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-mobb/ocm-operator
          support: Managed Openshift Black Belt
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLabIdentityProvider is the Schema for the gitlabidentityproviders
              API.
            displayName: Git Lab Identity Provider
            kind: GitLabIdentityProvider
            name: gitlabidentityproviders.ocm.mobb.redhat.com
            version: v1alpha1
          - description: LDAPIdentityProvider is the Schema for the ldapidentityproviders
              API.
            displayName: LDAPIdentity Provider
            kind: LDAPIdentityProvider
            name: ldapidentityproviders.ocm.mobb.redhat.com
            version: v1alpha1
          - description: MachinePool is the Schema for the machinepools API.
            displayName: Machine Pool
            kind: MachinePool
            name: machinepools.ocm.mobb.redhat.com
            version: v1alpha1
          - description: ROSACluster is the Schema for the clusters API.
            displayName: ROSACluster
            kind: ROSACluster
            name: rosaclusters.ocm.mobb.redhat.com
            version: v1alpha1
        description: "# Quick Start\n\n## Prerequisites\n\n- [oc](https://docs.openshift.com/container-platform/4.8/cli_reference/openshift_cli/getting-started-cli.html)\n-
          [aws](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)\n-
          [ROSA Cluster (4.12+)](https://mobb.ninja/docs/rosa/sts/)\n\n> **Warning:**\n>
          This is only tested on ROSA, but may work on other Kubernetes and OpenShift
          variants.  It requires\n> an AWS STS-enabled cluster.  Additionally, OpenShift
          versions 4.12+ are recommended, as they \n> enable [CRD CEL validation](https://kubernetes.io/blog/2022/09/23/crd-validation-rules-beta/).
          \ Versions\n> prior to 4.12 provide a lower version of Kubernetes that does
          not enable this feature.  They may \n> work, but provide no input validation
          when submitting custom resources to the cluster.\n\nBefore installing this
          operator, there are a couple secrets that must be created.\n\n1. OCM Token:
          used to authenticate against the OCM API.  The controller will not start
          without\nthis token as it used for all calls into OCM.\n2. AWS Credentials:
          uses an assume role to a role created in the instructions below in order\nto
          access AWS resources.  This is needed for cluster creation.  See \n[Create
          AWS IAM Policies and Roles](#create-aws-iam-policies-and-roles) for more
          details.\n\n> **Note:**\n> Certain custom resources have their own specific
          prerequisites.  Please use `oc explain` \n> or read the docs [here](https://github.com/rh-mobb/ocm-operator/tree/main/docs)
          for more details.\n\n### Create OCM Token Secret\n\n1. Create a namespace
          where you wish to install the operator:\n\n```bash\noc new-project ocm-operator\n```\n\n2.
          Create a secret containing the OCM_TOKEN.  This token can be obtained form
          \nhttps://console.redhat.com/openshift/token and is used by the operator
          to authenticate \nagainst the OCM API.  This token must exist in the same
          namespace that the operator \nis running and be named `ocm-token`.  It also
          expects the key to be called `OCM_TOKEN` \nas the operator is expecting
          this value as an environment variable.\n\n```bash\noc create secret generic
          ocm-token \\\n  --namespace=ocm-operator \\\n  --from-literal=OCM_TOKEN=${MY_OCM_TOKEN}\n```\n\n###
          Create AWS IAM Policies and Roles\n\nThe operator will need to elevate privileges
          in order to perform things like \ncreating the operator-roles for the clusters.
          \ Because of this, the operator \nmust have a specific role created to allow
          it these permissions.\n\n**NOTE:** please understand what you are doing
          if you deviate from the known good \npolicies.  If errors or more stringent
          security lockdowns are found, please submit a PR \nso that we can get this
          fixed.\n\n1. Set `ACCOUNT_ID` environment variable to define your AWS account
          ID:\n\n```bash\nexport ACCOUNT_ID=111111111111\n```\n\n2. Create the permissions
          boundary.  Because the operator needs to create policies and \nroles, the
          boundary ensures that the operator is not allowed to create additional\npermissions
          outside of the defined boundary.  The sample permission set is located \nat
          `test/aws/boundary.json` in this repository:\n\n```bash\nboundary=$(curl
          -s \"https://raw.githubusercontent.com/rh-mobb/ocm-operator/main/test/aws/boundary.json\")\naws
          iam create-policy \\\n  --policy-name \"OCMOperatorBoundary\" \\\n  --policy-document
          \"$boundary\"\n```\n\n3. Create the policy.  This policy sets what the operator
          is allowed to do.  For any \n`iam` permission, the boundary created above
          is used.  The sample permission set is \nlocated at `test/aws/iam_policy.json`
          in this repository:\n\n```bash\npolicy=$(curl -s \"https://raw.githubusercontent.com/rh-mobb/ocm-operator/main/test/aws/iam_policy.json\")\naws
          iam create-policy \\\n  --policy-name \"OCMOperator\" \\\n  --policy-document
          \"$policy\"\n```\n\n4. Create the role using a trust policy and attach the
          previously created role.  The trust \npolicy is located at `test/aws/trust_policy.json`
          in this repository.  Please note that \nthe trust policy requires an OIDC
          configuration.  The OIDC configuration refers to \n**where the operator
          is running, NOT what it is provisioning**:\n\n```bash\ntrust_policy=$(curl
          -s \"https://raw.githubusercontent.com/rh-mobb/ocm-operator/main/test/aws/trust_policy.json\")\naws
          iam create-role \\\n    --role-name OCMOperator \\\n    --assume-role-policy-document
          \"$trust_policy\"\naws iam attach-role-policy \\\n    --role-name OCMOperator
          \\\n    --policy-arn arn:aws:iam::$ACCOUNT_ID:policy/OCMOperator\n```\n\n5.
          Finally, create the secret containing the assume role credentials.  The
          previous steps allow \nthe operator to assume the role you created in the
          previous step with the permissions created \nvia the previous policies.\n\n```bash\ncat
          <<EOF > /tmp/credentials\n[default]\nrole_arn = arn:aws:iam::$ACCOUNT_ID:role/OCMOperator\nweb_identity_token_file
          = /var/run/secrets/openshift/serviceaccount/token\nEOF\n\noc create secret
          generic aws-credentials \\\n  --namespace=ocm-operator \\\n  --from-file=credentials=/tmp/credentials\n```\n\n##
          Install the Operator\n\n```bash\ncat <<EOF | oc apply -f -\napiVersion:
          operators.coreos.com/v1alpha1\nkind: Subscription\nmetadata:\n  name: ocm-operator\n
          \ namespace: ocm-operator\nspec:\n  channel: v0.1\n  installPlanApproval:
          Automatic\n  name: ocm-operator\n  source: community-operators\n  sourceNamespace:
          ocm-operator\n  startingCSV: ocm-operator.v0.1.0\nEOF\n```\n\n## Provision
          Resources\n\nOnce the operator is available and running, you can provision
          any of the \nresources that it manages.  Also note that documentation is
          always available \nonce the operator is installed as well by using the `oc
          explain` command.  For \nexample, `oc explain rosacluster.spec.clusterName`
          will give you detailed documentation \nabout what the field does.\n\nSee
          the following documentation for details:\n\n* [ROSA Clusters](https://github.com/rh-mobb/ocm-operator/blob/main/docs/clusters.md)\n*
          [Machine Pools](https://github.com/rh-mobb/ocm-operator/blob/main/docs/machinepools.md)\n*
          [Identity Providers](https://github.com/rh-mobb/ocm-operator/blob/main/docs/identityproviders.md)\n"
        displayName: OpenShift Cluster Manager Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ocm
        - rosa
        - redhat
        - machinepool
        - mobb
        links:
        - name: OCM Machine Pool Operator
          url: https://github.com/rh-mobb/ocm-operator
        maintainers:
        - email: dscott@redhat.com
          name: Dustin Scott
        maturity: alpha
        provider:
          name: Managed OpenShift Black Belt
          url: https://github.com/rh-mobb/ocm-operator
        relatedImages:
        - quay.io/openshift-community-operators/ocm-operator@sha256:ca6a3b24ca4ecfcab52ee0402e007d6f14b23fa7f3408d740923806989b170e4
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/mobb/ocm-operator:v0.1.0
        version: 0.1.0
      entries:
      - name: ocm-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ocm-operator
    provider:
      name: Managed OpenShift Black Belt
      url: https://github.com/rh-mobb/ocm-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cincinnati-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: update-service-operator.v5.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "updateservice.operator.openshift.io/v1",
                "kind": "UpdateService",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          description: Creates and maintains an OpenShift Update Service instance
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-update-service
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: UpdateService is the Schema for the updateservices API.
            displayName: Update Service
            kind: UpdateService
            name: updateservices.updateservice.operator.openshift.io
            version: v1
        description: |-
          # Use Case
          Running an Update Service instance in a cluster is appealing for offline OpenShift
          clusters or for admins that want to provide their own graph data instead of
          using [https://github.com/openshift/cincinnati-graph-data](https://github.com/openshift/cincinnati-graph-data/).

          # About Update Service
          Update Service uses **Cincinnati** which is an update protocol designed to facilitate
          automatic updates. It describes a particular method for representing transitions between
          releases of a project and allowing a client to perform automatic updates between these
          releases.

          ## Components
          A **Graph Builder** iterates over the release payloads hosted by the
          storage component and builds a DAG of the releases. It is responsible for
          verifying that the graph described by the releases is acyclic and connected.

          A **Policy Engine** is in charge of altering a client's view of the graph
          by applying a set of filters which are defined within the particular Policy
          Engine instance. Both the input to and the output from Policy Engines is a
          graph, allowing multiple Policy Engines to be chained together. The first
          Policy Engine in a chain will fetch its graph from the Graph Builder and the
          last Policy Engine in a chain will serve the modified graph to the client.

          An **Update Service client** is the end consumer of the release payloads. The
          client periodically queries the Policy Engine for updates and applys them if
          available.

          # Query OpenShift's Update Service Endpoint
          $ curl --silent --header 'Accept:application/json' 'https://api.openshift.com/api/upgrades_info/v1/graph?arch=amd64&channel=stable-4.2' | jq '. as $graph | $graph.nodes | map(.version == "4.2.13") | index(true) as $orig | $graph.edges | map(select(.[0] == $orig)[1]) | map($graph.nodes[.])'
        displayName: OpenShift Update Service
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Update Service
        - UpdateService
        - update-service
        - OSUS
        - Cincinnati
        - version
        - upgrade
        links:
        - name: Update Service Operator
          url: https://github.com/openshift/cincinnati-operator
        - name: OpenShift Update Service
          url: https://github.com/openshift/cincinnati
        - name: OpenShift Graph Data
          url: https://github.com/openshift/cincinnati-graph-data
        maintainers:
        - email: aos-team-ota@redhat.com
          name: OpenShift Update Service maintainers
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8@sha256:a9468a662babb272917df92bc9c827535b4b37883edb440b6d2d7c32ffb2145e
        - registry.redhat.io/openshift-update-service/cincinnati-operator-bundle@sha256:50e9c88ca31182c54f9c4bc6682642a5115fa280044e6c125f99626c69d999ad
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8-operator@sha256:759f4de107a5b429933c5e44046ffb4ed75c674aea75440513a6df8fa93a83a3
        version: 5.0.3
      entries:
      - name: update-service-operator.v5.0.3
        version: 5.0.3
      - name: update-service-operator.v5.0.2
        version: 5.0.2
      - name: update-service-operator.v5.0.1
        version: 5.0.1
      - name: update-service-operator.v5.0.0
        version: 5.0.0
      - name: update-service-operator.v4.9.1
        version: 4.9.1
      - name: update-service-operator.v4.9.0
        version: 4.9.0
      name: v1
    defaultChannel: v1
    packageName: cincinnati-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: kubernetes-nmstate-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubernetes-nmstate-operator.4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nmstate.io/v1",
                "kind": "NMState",
                "metadata": {
                  "name": "nmstate"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:b18c8571422372834e54a388f7b826c6b647b24bad46063484adaa5758a8b31d
          createdAt: "2025-08-20T05:45:09Z"
          description: |
            Kubernetes NMState is a declaritive means of configuring NetworkManager.
          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: "true"
          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.skipRange: '>=4.3.0 <4.20.0-202512081147'
          operatorframework.io/suggested-namespace: openshift-nmstate
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/kubernetes-nmstate
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an NMState deployment.
            displayName: NMState
            kind: NMState
            name: nmstates.nmstate.io
            version: v1
        description: A Kubernetes Operator to install Kubernetes NMState
        displayName: Kubernetes NMState Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - nmstate
        - networking
        - NetworkManager
        links:
        - name: Kubernetes Nmstate Operator
          url: https://github.com/nmstate/kubernetes-nmstate
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: GA
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/nmstate-console-plugin-rhel9@sha256:fb2ec4f44752bf8fa661ae34b1b2bda8a34e06468ea7b072dc46a670c95d3729
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:e3a542bff2590c0936aa112dd3e51486101b2b76e1b4a4cc56db83a80d6647f2
        - registry.redhat.io/openshift4/kubernetes-nmstate-operator-bundle@sha256:c6d75810e8565ff5ec92b0429eb2936a381b88d3ba33d918c0b0e39399958c0c
        - registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:b18c8571422372834e54a388f7b826c6b647b24bad46063484adaa5758a8b31d
        version: 4.20.0-202512081147
      entries:
      - name: kubernetes-nmstate-operator.4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: kubernetes-nmstate-operator.4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: kubernetes-nmstate-operator.4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: kubernetes-nmstate-operator.4.20.0-202511110624
        version: 4.20.0-202511110624
      - name: kubernetes-nmstate-operator.4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: kubernetes-nmstate-operator.4.20.0-202510220756
        version: 4.20.0-202510220756
      - name: kubernetes-nmstate-operator.4.20.0-202510151915
        version: 4.20.0-202510151915
      name: stable
    defaultChannel: stable
    packageName: kubernetes-nmstate-operator
    provider:
      name: Red Hat, Inc.
kind: List
metadata:
  resourceVersion: ""
apiVersion: v1
items:
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Splunk Inc.
      provider-url: www.splunk.com
    name: splunk-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: splunk-operator.v3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "IndexerCluster",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "indexercluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "LicenseMaster",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "licensemaster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "MonitoringConsole",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "monitoringconsole-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "SearchHeadCluster",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "searchheadcluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "Standalone",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "standalone-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "ClusterManager",
                "metadata": {
                  "name": "clustermanager-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "IndexerCluster",
                "metadata": {
                  "name": "indexercluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "LicenseManager",
                "metadata": {
                  "name": "licensemanager-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "MonitoringConsole",
                "metadata": {
                  "name": "monitoringconsole-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "SearchHeadCluster",
                "metadata": {
                  "name": "searchheadcluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "Standalone",
                "metadata": {
                  "name": "standalone-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Big Data, Logging & Tracing, Monitoring, Security, AI/Machine
            Learning
          containerImage: splunk/splunk-operator@sha256:ed02561995d46ff8eea143fa78f5da118ee6fdb500832e9a33b42d059a67e229
          createdAt: "2025-09-08T10:17:59Z"
          description: The Splunk Operator for Kubernetes enables you to quickly and
            easily deploy Splunk Enterprise on your choice of private or public cloud
            provider. The Operator simplifies scaling and management of Splunk Enterprise
            by automating administrative workflows using Kubernetes best practices.
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.19"}]'
          olm.skipRange: '>=2.4.0 <3.0.0'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/splunk/splunk-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterManager is the Schema for the cluster manager API
            displayName: Cluster Manager
            kind: ClusterManager
            name: clustermanagers.enterprise.splunk.com
            version: v4
          - description: ClusterMaster is the Schema for the cluster manager API
            displayName: Cluster Master
            kind: ClusterMaster
            name: clustermasters.enterprise.splunk.com
            version: v3
          - kind: ClusterMaster
            name: clustermasters.enterprise.splunk.com
            version: v1
          - kind: ClusterMaster
            name: clustermasters.enterprise.splunk.com
            version: v2
          - description: IndexerCluster is the Schema for a Splunk Enterprise indexer
              cluster
            displayName: Indexer Cluster
            kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v3
          - description: IndexerCluster is the Schema for a Splunk Enterprise indexer
              cluster
            displayName: Indexer Cluster
            kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v4
          - kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v1
          - kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v2
          - description: LicenseManager is the Schema for a Splunk Enterprise license
              manager.
            displayName: License Manager
            kind: LicenseManager
            name: licensemanagers.enterprise.splunk.com
            version: v4
          - description: LicenseMaster is the Schema for a Splunk Enterprise license
              master.
            displayName: License Master
            kind: LicenseMaster
            name: licensemasters.enterprise.splunk.com
            version: v3
          - kind: LicenseMaster
            name: licensemasters.enterprise.splunk.com
            version: v1
          - kind: LicenseMaster
            name: licensemasters.enterprise.splunk.com
            version: v2
          - description: MonitoringConsole is the Schema for the monitoringconsole
              API
            displayName: Monitoring Console
            kind: MonitoringConsole
            name: monitoringconsoles.enterprise.splunk.com
            version: v3
          - description: MonitoringConsole is the Schema for the monitoringconsole
              API
            displayName: Monitoring Console
            kind: MonitoringConsole
            name: monitoringconsoles.enterprise.splunk.com
            version: v4
          - description: SearchHeadCluster is the Schema for a Splunk Enterprise search
              head cluster
            displayName: Search Head Cluster
            kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v3
          - description: SearchHeadCluster is the Schema for a Splunk Enterprise search
              head cluster
            displayName: Search Head Cluster
            kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v4
          - kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v1
          - kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v2
          - description: Standalone is the Schema for a Splunk Enterprise standalone
              instances.
            displayName: Standalone
            kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v3
          - description: Standalone is the Schema for a Splunk Enterprise standalone
              instances.
            displayName: Standalone
            kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v4
          - kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v1
          - kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v2
        description: The Splunk Operator for Kubernetes enables you to quickly and
          easily deploy Splunk Enterprise on your choice of private or public cloud
          provider. The Operator simplifies scaling and management of Splunk Enterprise
          by automating administrative workflows using Kubernetes best practices.
        displayName: Splunk Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Splunk
        - Enterprise
        - Operator
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://github.com/splunk/splunk-operator/tree/main/docs
        maintainers:
        - email: support@splunk.com
          name: Splunk Operator Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Splunk Inc.
          url: www.splunk.com
        relatedImages:
        - registry.connect.redhat.com/splunk/splunk-operator-bundle@sha256:0d128cb47f562351a407c7e0153736fbbc14daba121c1d7422f6ecea8967788e
        - splunk/splunk-operator@sha256:ed02561995d46ff8eea143fa78f5da118ee6fdb500832e9a33b42d059a67e229
        - splunk/splunk@sha256:4a5ce5a7b4e84a87396f0664895095c6510a0f2bf52e8747a373c7357f3ee313
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d4883d7c622683b3319b5e6b3a7edfbf2594c18060131a8bf64504805f875522
        version: 3.0.0
      entries:
      - name: splunk-operator.v3.0.0
        version: 3.0.0
      - name: splunk-operator.v2.8.1
        version: 2.8.1
      - name: splunk-operator.v2.8.0
        version: 2.8.0
      - name: splunk-operator.v2.7.1
        version: 2.7.1
      - name: splunk-operator.v2.7.0
        version: 2.7.0
      name: stable
    defaultChannel: stable
    packageName: splunk-operator
    provider:
      name: Splunk Inc.
      url: www.splunk.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: https://www.percona.com/
    name: percona-postgresql-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-postgresql-operator-certified.v2.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgv2.percona.com/v2",
                "kind": "PerconaPGCluster",
                "metadata": {
                  "name": "cluster1"
                },
                "spec": {
                  "crVersion": "2.8.2",
                  "initContainer" : {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4"
                    },
                  "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227",
                  "imagePullPolicy": "Always",
                  "postgresVersion": 17,
                  "instances": [
                    {
                      "name": "instance1",
                      "replicas": 3,
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/data": "postgres"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      },
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      }
                    }
                  ],
                  "proxy": {
                    "pgBouncer": {
                      "replicas": 3,
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb",
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/role": "pgbouncer"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      }
                    }
                  },
                  "backups": {
                    "pgbackrest": {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27",
                      "repoHost": {
                        "affinity": {
                          "podAntiAffinity": {
                            "preferredDuringSchedulingIgnoredDuringExecution": [
                              {
                                "weight": 1,
                                "podAffinityTerm": {
                                  "labelSelector": {
                                    "matchLabels": {
                                      "postgres-operator.crunchydata.com/data": "pgbackrest"
                                    }
                                  },
                                  "topologyKey": "kubernetes.io/hostname"
                                }
                              }
                            ]
                          }
                        }
                      },
                      "manual": {
                        "repoName": "repo1",
                        "options": [
                          "--type=full"
                        ]
                      },
                      "repos": [
                        {
                          "name": "repo1",
                          "schedules": {
                            "full": "0 0 * * 6"
                          },
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1",
                    "secret": "cluster1-pmm-secret",
                    "serverHost": "monitoring-service"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
          createdAt: "2025-12-24T20:59:08Z"
          description: Percona Operator for PostgreSQL manages the lifecycle of Percona
            PostgreSQL cluster instances.
          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"
          repository: https://github.com/percona/percona-postgresql-operator
          support: percona.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaPGCluster is the CRD that defines a Percona PG Cluster
            displayName: Percona PGCluster
            kind: PerconaPGCluster
            name: perconapgclusters.pgv2.percona.com
            version: v2
          - description: PerconaPGBackup is the CRD that defines a Percona PostgreSQL
              Backup
            displayName: Percona PGBackup
            kind: PerconaPGBackup
            name: perconapgbackups.pgv2.percona.com
            version: v2
          - description: PerconaPGRestore is the CRD that defines a Percona PostgreSQL
              Restore
            displayName: Percona PGRestore
            kind: PerconaPGRestore
            name: perconapgrestores.pgv2.percona.com
            version: v2
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API This Custom Resource requires enabling CrunchyBridgeClusters feature
              gate
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PerconaPGUpgrade is the Schema for the perconapgupgrades
              API
            displayName: Percona PGUpgrade
            kind: PerconaPGUpgrade
            name: perconapgupgrades.pgv2.percona.com
            version: v2
          - description: PGAdmin is the Schema for the pgadmins API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          ## Percona is Cloud Native


          Percona Operator for PostgreSQL automates and simplifies deploying and managing
          open source PostgreSQL clusters on Kubernetes. Percona Operator for PostgreSQL is based on Postgres Operator developed by Crunchy Data.

          Whether you need to get a simple PostgreSQL cluster up and running, need to deploy a high availability,
          fault tolerant cluster in production, or are running your own database-as-a-service, the Operator provides the essential
          features you need to keep your clusters healthy.

          Consult the
          [documentation](https://www.percona.com/doc/kubernetes-operator-for-postgresql/index.html)
          on the Percona Operator for PostgreSQL for complete details on capabilities
          and options.

          ### Supported Features

          * **PostgreSQL Cluster Provisioning**

          Create, Scale, & Delete PostgreSQL clusters with ease, while fully customizing your Pods and PostgreSQL configuration.

          * **High Availability**

              Safe, automated failover backed by a distributed consensus based high-availability solution. Uses Pod Anti-Affinity to help resiliency; you can configure how much
              enforced this can be. Failed primaries automatically heal, allowing for faster recovery time. Support for standby PostgreSQL clusters that work both within and
              across multiple Kubernetes clusters.

          * **Disaster Recovery**

              Backups and restores leverage the open source pgBackRest utility and includes support for full, incremental, and differential backups as well as efficient delta
              restores. Set how long you want your backups retained for. Works great with very large databases!

          * **Communication Security**

              Secure communication between your applications and data servers by enabling TLS for your PostgreSQL servers, including the ability to enforce all of your connections
              to use TLS.

          * **Monitoring**

              Track the health of your PostgreSQL clusters with Percona Monitoring and Management (PMM).

          * **PostgreSQL User Management**

              Quickly add and remove users from your PostgreSQL clusters with powerful commands. Manage password expiration policies or use your preferred PostgreSQL authentication
              scheme.

          * **Updates Management**

              Safely apply PostgreSQL updates with minimal availability impact to your PostgreSQL clusters.

          * **Advanced Replication Support**

              Choose between asynchronous replication and synchronous replication for workloads that are sensitive to losing transactions.

          * **Clone**

              Create new clusters from your existing clusters or backups.

          * **Connection Pooling**

              Use [pgBouncer](https://access.crunchydata.com/documentation/postgres-operator/latest/tutorial/pgbouncer/) for connection pooling

          * **Affinity and Tolerations**

              Have your PostgreSQL clusters deployed to Kubernetes Nodes of your preference with node affinity, or designate which nodes Kubernetes can schedule PostgreSQL instances
              to with Kubernetes  tolerations.

          * **Scheduled Backups**

              Choose the type of backup (full, incremental, differential) and how frequently you want it to occur on each PostgreSQL cluster.

          * **Backup to S3**

              Store your backups in Amazon S3 or any object storage system that supports the S3 protocol. The Operator can backup, restore, and create new clusters from these backups.

          * **Multi-Namespace Support**

              You can control how the Operator leverages Kubernetes Namespaces with several different deployment models:

              * Deploy the Operator and all PostgreSQL clusters to the same namespace
              * Deploy the Operator to one Namespace, and all PostgreSQL clusters to a different Namespace
              * Deploy the Operator to one Namespace, and have your PostgreSQL clusters managed across multiple Namespaces

          * **Full Customizability**

              The Operator not only makes it easy to get PostgreSQL up and running on Kubernetes-enabled platforms, but also allows you to further customize your deployments:

              * Selecting different storage classes for your primary, replica, and backup storage
              * Select your own container resources class for each PostgreSQL cluster deployment; differentiate between resources applied for primary and replica clusters
              * Use your own container image repository, including `imagePullSecrets` and private repositories  support
              * Customize your PostgreSQL configuration
              * Bring your own trusted certificate authority (CA) for use with the Operator API server
              * Override your PostgreSQL configuration for each cluster
              * Use your own custom images, re-define the image for each container separately
        displayName: Percona Operator for PostgreSQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - percona
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-postgresql/index.html
        - name: Github
          url: https://github.com/percona/percona-postgresql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
          url: https://www.percona.com/
        relatedImages:
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:f632d8d344484f5127fb2d7099932ed61659d4e6a365c5e8d5160829a48f2d95
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:9625b4723334fe682dc84473b1ed6062dfccb8ba8aa1151bdf2951014af1eccd
        - registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:20abf8fbdd159fcd4e7a76fc3007adcb4cf13181666c57e92c041479b1dae469
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4325dfd18945f91656624770b66815a987ff7bd71ed50584f701cf70d30b527c
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:dd5d46542699ee7581127e378d50d5ebea8b988cec94af5ca0afc7b1526af03d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7d1f8a886ec7e649cb8d025b54f2d54b3000d8c3c9b1f1faca0c9f7d33df7d4f
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4eaf41681c1af8e5a22c8ddf0fe03cbb39c0e86e8f44db769dea8302d9999378
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8db1cadc211b9fe8dca7b6fbebe0e278673053f0e367d4a14096dee67ff3d6c9
        - registry.connect.redhat.com/percona/percona-postgresql-operator-bundle@sha256:91416d3fbcaf47deec7945948744a4509a3b2ac9609c78390f2f55271ecee7b1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:11bda023af2f45f340bcabb12cc4bcb67b3ba97f8c452d15863ba8d28236150d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7596e1e5c1d2cd6c178e592870e27ca6c47762b7de0c38b6485925ba9d08d612
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4e67a8b906bc0932d14ae69fb922c0de246dad463dff5250dbfe6689887fabec
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7a7bb90523d29acdfc7c05f2d43f725c121b55bdad0d681d0e4794011def43c1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1
        version: 2.8.2
      entries:
      - name: percona-postgresql-operator-certified.v2.8.2
        version: 2.8.2
      - name: percona-postgresql-operator-certified.v2.8.1
        version: 2.8.1
      - name: percona-postgresql-operator-certified.v2.8.0
        version: 2.8.0
      name: stable
    - currentCSV: percona-postgresql-operator-certified.v2.8.2-cw
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgv2.percona.com/v2",
                "kind": "PerconaPGCluster",
                "metadata": {
                  "name": "cluster1"
                },
                "spec": {
                  "crVersion": "2.8.2",
                  "initContainer" : {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4"
                    },
                  "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227",
                  "imagePullPolicy": "Always",
                  "postgresVersion": 17,
                  "instances": [
                    {
                      "name": "instance1",
                      "replicas": 3,
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/data": "postgres"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      },
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      }
                    }
                  ],
                  "proxy": {
                    "pgBouncer": {
                      "replicas": 3,
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb",
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/role": "pgbouncer"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      }
                    }
                  },
                  "backups": {
                    "pgbackrest": {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27",
                      "repoHost": {
                        "affinity": {
                          "podAntiAffinity": {
                            "preferredDuringSchedulingIgnoredDuringExecution": [
                              {
                                "weight": 1,
                                "podAffinityTerm": {
                                  "labelSelector": {
                                    "matchLabels": {
                                      "postgres-operator.crunchydata.com/data": "pgbackrest"
                                    }
                                  },
                                  "topologyKey": "kubernetes.io/hostname"
                                }
                              }
                            ]
                          }
                        }
                      },
                      "manual": {
                        "repoName": "repo1",
                        "options": [
                          "--type=full"
                        ]
                      },
                      "repos": [
                        {
                          "name": "repo1",
                          "schedules": {
                            "full": "0 0 * * 6"
                          },
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1",
                    "secret": "cluster1-pmm-secret",
                    "serverHost": "monitoring-service"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
          createdAt: "2025-12-24T20:59:08Z"
          description: Percona Operator for PostgreSQL manages the lifecycle of Percona
            PostgreSQL cluster instances.
          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"
          repository: https://github.com/percona/percona-postgresql-operator
          support: percona.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaPGCluster is the CRD that defines a Percona PG Cluster
            displayName: Percona PGCluster
            kind: PerconaPGCluster
            name: perconapgclusters.pgv2.percona.com
            version: v2
          - description: PerconaPGBackup is the CRD that defines a Percona PostgreSQL
              Backup
            displayName: Percona PGBackup
            kind: PerconaPGBackup
            name: perconapgbackups.pgv2.percona.com
            version: v2
          - description: PerconaPGRestore is the CRD that defines a Percona PostgreSQL
              Restore
            displayName: Percona PGRestore
            kind: PerconaPGRestore
            name: perconapgrestores.pgv2.percona.com
            version: v2
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API This Custom Resource requires enabling CrunchyBridgeClusters feature
              gate
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PerconaPGUpgrade is the Schema for the perconapgupgrades
              API
            displayName: Percona PGUpgrade
            kind: PerconaPGUpgrade
            name: perconapgupgrades.pgv2.percona.com
            version: v2
          - description: PGAdmin is the Schema for the pgadmins API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          ## Percona is Cloud Native


          Percona Operator for PostgreSQL automates and simplifies deploying and managing
          open source PostgreSQL clusters on Kubernetes. Percona Operator for PostgreSQL is based on Postgres Operator developed by Crunchy Data.

          Whether you need to get a simple PostgreSQL cluster up and running, need to deploy a high availability,
          fault tolerant cluster in production, or are running your own database-as-a-service, the Operator provides the essential
          features you need to keep your clusters healthy.

          Consult the
          [documentation](https://www.percona.com/doc/kubernetes-operator-for-postgresql/index.html)
          on the Percona Operator for PostgreSQL for complete details on capabilities
          and options.

          ### Supported Features

          * **PostgreSQL Cluster Provisioning**

          Create, Scale, & Delete PostgreSQL clusters with ease, while fully customizing your Pods and PostgreSQL configuration.

          * **High Availability**

              Safe, automated failover backed by a distributed consensus based high-availability solution. Uses Pod Anti-Affinity to help resiliency; you can configure how much
              enforced this can be. Failed primaries automatically heal, allowing for faster recovery time. Support for standby PostgreSQL clusters that work both within and
              across multiple Kubernetes clusters.

          * **Disaster Recovery**

              Backups and restores leverage the open source pgBackRest utility and includes support for full, incremental, and differential backups as well as efficient delta
              restores. Set how long you want your backups retained for. Works great with very large databases!

          * **Communication Security**

              Secure communication between your applications and data servers by enabling TLS for your PostgreSQL servers, including the ability to enforce all of your connections
              to use TLS.

          * **Monitoring**

              Track the health of your PostgreSQL clusters with Percona Monitoring and Management (PMM).

          * **PostgreSQL User Management**

              Quickly add and remove users from your PostgreSQL clusters with powerful commands. Manage password expiration policies or use your preferred PostgreSQL authentication
              scheme.

          * **Updates Management**

              Safely apply PostgreSQL updates with minimal availability impact to your PostgreSQL clusters.

          * **Advanced Replication Support**

              Choose between asynchronous replication and synchronous replication for workloads that are sensitive to losing transactions.

          * **Clone**

              Create new clusters from your existing clusters or backups.

          * **Connection Pooling**

              Use [pgBouncer](https://access.crunchydata.com/documentation/postgres-operator/latest/tutorial/pgbouncer/) for connection pooling

          * **Affinity and Tolerations**

              Have your PostgreSQL clusters deployed to Kubernetes Nodes of your preference with node affinity, or designate which nodes Kubernetes can schedule PostgreSQL instances
              to with Kubernetes  tolerations.

          * **Scheduled Backups**

              Choose the type of backup (full, incremental, differential) and how frequently you want it to occur on each PostgreSQL cluster.

          * **Backup to S3**

              Store your backups in Amazon S3 or any object storage system that supports the S3 protocol. The Operator can backup, restore, and create new clusters from these backups.

          * **Multi-Namespace Support**

              You can control how the Operator leverages Kubernetes Namespaces with several different deployment models:

              * Deploy the Operator and all PostgreSQL clusters to the same namespace
              * Deploy the Operator to one Namespace, and all PostgreSQL clusters to a different Namespace
              * Deploy the Operator to one Namespace, and have your PostgreSQL clusters managed across multiple Namespaces

          * **Full Customizability**

              The Operator not only makes it easy to get PostgreSQL up and running on Kubernetes-enabled platforms, but also allows you to further customize your deployments:

              * Selecting different storage classes for your primary, replica, and backup storage
              * Select your own container resources class for each PostgreSQL cluster deployment; differentiate between resources applied for primary and replica clusters
              * Use your own container image repository, including `imagePullSecrets` and private repositories  support
              * Customize your PostgreSQL configuration
              * Bring your own trusted certificate authority (CA) for use with the Operator API server
              * Override your PostgreSQL configuration for each cluster
              * Use your own custom images, re-define the image for each container separately
        displayName: Percona Operator for PostgreSQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - percona
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-postgresql/index.html
        - name: Github
          url: https://github.com/percona/percona-postgresql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
          url: https://www.percona.com/
        relatedImages:
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4325dfd18945f91656624770b66815a987ff7bd71ed50584f701cf70d30b527c
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7d1f8a886ec7e649cb8d025b54f2d54b3000d8c3c9b1f1faca0c9f7d33df7d4f
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:dd5d46542699ee7581127e378d50d5ebea8b988cec94af5ca0afc7b1526af03d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4e67a8b906bc0932d14ae69fb922c0de246dad463dff5250dbfe6689887fabec
        - registry.connect.redhat.com/percona/percona-postgresql-operator-bundle@sha256:426327aea4e178081a84aedf1217abb2785a911d4889a1c9134160ef26c248aa
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:11bda023af2f45f340bcabb12cc4bcb67b3ba97f8c452d15863ba8d28236150d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27
        - registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7a7bb90523d29acdfc7c05f2d43f725c121b55bdad0d681d0e4794011def43c1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8db1cadc211b9fe8dca7b6fbebe0e278673053f0e367d4a14096dee67ff3d6c9
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:9625b4723334fe682dc84473b1ed6062dfccb8ba8aa1151bdf2951014af1eccd
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7596e1e5c1d2cd6c178e592870e27ca6c47762b7de0c38b6485925ba9d08d612
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4eaf41681c1af8e5a22c8ddf0fe03cbb39c0e86e8f44db769dea8302d9999378
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:20abf8fbdd159fcd4e7a76fc3007adcb4cf13181666c57e92c041479b1dae469
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:f632d8d344484f5127fb2d7099932ed61659d4e6a365c5e8d5160829a48f2d95
        version: 2.8.2-cw
      entries:
      - name: percona-postgresql-operator-certified.v2.8.2-cw
        version: 2.8.2-cw
      - name: percona-postgresql-operator-certified.v2.8.1-cw
        version: 2.8.1-cw
      - name: percona-postgresql-operator-certified.v2.8.0-cw
        version: 2.8.0-cw
      name: stable-cw
    defaultChannel: stable
    packageName: percona-postgresql-operator-certified
    provider:
      name: Percona
      url: https://www.percona.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: GitLab Inc
      provider-url: https://about.gitlab.com/
    name: gitlab-operator-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:17:00Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/gitlab-operator-kubernetes@sha256:63811c7853c3ef9ad6e04b1af146db41086b3d947e5d6069f77e9c5c57eb1f84
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: stable
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:17:00Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/gitlab-operator-kubernetes@sha256:63811c7853c3ef9ad6e04b1af146db41086b3d947e5d6069f77e9c5c57eb1f84
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: unstable
    defaultChannel: stable
    packageName: gitlab-operator-kubernetes
    provider:
      name: GitLab Inc
      url: https://about.gitlab.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: netobserv-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: network-observability-operator.v1.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "flows.netobserv.io/v1alpha1",
                "kind": "FlowMetric",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "netobserv-operator",
                    "app.kubernetes.io/instance": "flowmetric-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "flowmetric",
                    "app.kubernetes.io/part-of": "netobserv-operator"
                  },
                  "name": "flowmetric-sample"
                },
                "spec": {
                  "charts": [
                    {
                      "dashboardName": "Main",
                      "queries": [
                        {
                          "legend": "",
                          "promQL": "sum(rate($METRIC[2m]))"
                        }
                      ],
                      "title": "External ingress traffic",
                      "type": "SingleStat",
                      "unit": "Bps"
                    },
                    {
                      "dashboardName": "Main",
                      "queries": [
                        {
                          "legend": "{{DstK8S_Namespace}} / {{DstK8S_OwnerName}}",
                          "promQL": "sum(rate($METRIC{DstK8S_Namespace!=\"\"}[2m])) by (DstK8S_Namespace, DstK8S_OwnerName)"
                        }
                      ],
                      "sectionName": "External",
                      "title": "Top external ingress traffic per workload",
                      "type": "StackArea",
                      "unit": "Bps"
                    }
                  ],
                  "direction": "Ingress",
                  "filters": [
                    {
                      "field": "SrcSubnetLabel",
                      "matchType": "Absence"
                    }
                  ],
                  "labels": [
                    "DstK8S_HostName",
                    "DstK8S_Namespace",
                    "DstK8S_OwnerName",
                    "DstK8S_OwnerType"
                  ],
                  "metricName": "cluster_external_ingress_bytes_total",
                  "type": "Counter",
                  "valueField": "Bytes"
                }
              },
              {
                "apiVersion": "flows.netobserv.io/v1beta2",
                "kind": "FlowCollector",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "agent": {
                    "ebpf": {
                      "cacheActiveTimeout": "5s",
                      "cacheMaxFlows": 100000,
                      "excludeInterfaces": [
                        "lo"
                      ],
                      "imagePullPolicy": "IfNotPresent",
                      "interfaces": [],
                      "kafkaBatchSize": 1048576,
                      "logLevel": "info",
                      "metrics": {
                        "server": {
                          "port": 9400
                        }
                      },
                      "privileged": false,
                      "resources": {
                        "limits": {
                          "memory": "800Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      },
                      "sampling": 50
                    },
                    "type": "eBPF"
                  },
                  "consolePlugin": {
                    "autoscaler": {
                      "maxReplicas": 3,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 50,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 1,
                      "status": "Disabled"
                    },
                    "enable": true,
                    "imagePullPolicy": "IfNotPresent",
                    "logLevel": "info",
                    "portNaming": {
                      "enable": true,
                      "portNames": {
                        "3100": "loki"
                      }
                    },
                    "quickFilters": [
                      {
                        "default": true,
                        "filter": {
                          "flow_layer": "\"app\""
                        },
                        "name": "Applications"
                      },
                      {
                        "filter": {
                          "flow_layer": "\"infra\""
                        },
                        "name": "Infrastructure"
                      },
                      {
                        "default": true,
                        "filter": {
                          "dst_kind": "\"Pod\"",
                          "src_kind": "\"Pod\""
                        },
                        "name": "Pods network"
                      },
                      {
                        "filter": {
                          "dst_kind": "\"Service\""
                        },
                        "name": "Services network"
                      }
                    ],
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "memory": "100Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    }
                  },
                  "deploymentModel": "Direct",
                  "exporters": [],
                  "kafka": {
                    "address": "kafka-cluster-kafka-bootstrap.netobserv",
                    "tls": {
                      "caCert": {
                        "certFile": "ca.crt",
                        "name": "kafka-cluster-cluster-ca-cert",
                        "type": "secret"
                      },
                      "enable": false,
                      "userCert": {
                        "certFile": "user.crt",
                        "certKey": "user.key",
                        "name": "flp-kafka",
                        "type": "secret"
                      }
                    },
                    "topic": "network-flows"
                  },
                  "loki": {
                    "enable": true,
                    "lokiStack": {
                      "name": "loki"
                    },
                    "mode": "Monolithic",
                    "monolithic": {
                      "tenantID": "netobserv",
                      "tls": {
                        "caCert": {
                          "certFile": "service-ca.crt",
                          "name": "loki-gateway-ca-bundle",
                          "type": "configmap"
                        },
                        "enable": false
                      },
                      "url": "http://loki.netobserv.svc:3100/"
                    },
                    "readTimeout": "30s",
                    "writeBatchSize": 10485760,
                    "writeBatchWait": "1s",
                    "writeTimeout": "10s"
                  },
                  "namespace": "netobserv",
                  "networkPolicy": {
                    "additionalNamespaces": [],
                    "enable": true
                  },
                  "processor": {
                    "imagePullPolicy": "IfNotPresent",
                    "kafkaConsumerAutoscaler": null,
                    "kafkaConsumerBatchSize": 10485760,
                    "kafkaConsumerQueueCapacity": 1000,
                    "kafkaConsumerReplicas": 3,
                    "logLevel": "info",
                    "logTypes": "Flows",
                    "metrics": {
                      "disableAlerts": [],
                      "server": {
                        "port": 9401
                      }
                    },
                    "resources": {
                      "limits": {
                        "memory": "800Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "prometheus": {
                    "querier": {
                      "enable": true,
                      "mode": "Auto",
                      "timeout": "30s"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring, Networking, Observability, OpenShift Optional
          console.openshift.io/plugins: '["netobserv-plugin"]'
          containerImage: registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:d4f8f312c04c4c719c0812545382a4945e0afafd69ee3361e00f557dacbd8458
          createdAt: 2025-12-04T13:37:09
          description: Network flows collector and monitoring solution
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: '{"apiVersion":"flows.netobserv.io/v1beta2",
            "kind":"FlowCollector","metadata":{"name":"cluster"},"spec": {}}'
          operatorframework.io/suggested-namespace: openshift-netobserv-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/netobserv/network-observability-operator
          support: NetObserv team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: '`FlowCollector` is the schema for the network flows collection
              API, which pilots and configures the underlying deployments.'
            displayName: Flow Collector
            kind: FlowCollector
            name: flowcollectors.flows.netobserv.io
            version: v1beta2
          - description: '`FlowMetric` is the schema for the custom metrics API, which
              allows to generate more metrics out of flow logs. You can find examples
              here: https://github.com/netobserv/network-observability-operator/tree/main/config/samples/flowmetrics'
            displayName: Flow Metric
            kind: FlowMetric
            name: flowmetrics.flows.netobserv.io
            version: v1alpha1
        description: |
          Network Observability is an OpenShift operator that deploys a monitoring pipeline consisting in:
          - an eBPF agent, that generates network flows from captured packets
          - flowlogs-pipeline, a component that collects, enriches and exports these flows
          - a Console plugin for flows visualization with powerful filtering options, a topology representation and more

          Flow data is then available in multiple ways, each optional:

          - As Cluster Monitoring metrics
          - As raw flow logs stored in Grafana Loki
          - As raw flow logs exported to a collector

          ## Dependencies

          ### Loki

          [Loki](https://grafana.com/oss/loki/), from GrafanaLabs, can optionally be used as the backend to store all collected flows. The Network Observability operator does not install Loki directly, however we provide some guidance to help you there.

          - For a production or production-like environment usage, refer to [the operator documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/network_observability/installing-network-observability-operators).

          - For a quick try that is not suitable for production and not scalable (it deploys a single pod, configures a 10GB storage PVC, with 24 hours of retention), you can simply run the following commands:

          ```
          oc create namespace netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/5410e65b8e05aaabd1244a9524cfedd8ac8c56b5/examples/zero-click-loki/1-storage.yaml) -n netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/5410e65b8e05aaabd1244a9524cfedd8ac8c56b5/examples/zero-click-loki/2-loki.yaml) -n netobserv
          ```

          If you prefer to not use Loki, you must set `spec.loki.enable` to `false` in `FlowCollector`.
          In that case, you can still get the Prometheus metrics or export raw flows to a custom collector. But be aware that some of the Console plugin features will be disabled. For instance, you will not be able to view raw flows there, and the metrics / topology will have a more limited level of details, missing information such as pods or IPs.

          ### Kafka

          [Apache Kafka](https://kafka.apache.org/) can optionally be used for a more resilient and scalable architecture. You can use for example [Strimzi](https://strimzi.io/), an operator-based distribution of Kafka for Kubernetes and OpenShift.

          ### Grafana

          [Grafana](https://grafana.com/oss/grafana/) can optionally be installed for custom dashboards and query capabilities.

          ## Configuration

          The `FlowCollector` resource is used to configure the operator and its managed components. A comprehensive documentation is [available here](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/docs/FlowCollector.md), and a full sample file [there](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/config/samples/flows_v1beta2_flowcollector.yaml).

          To edit configuration in cluster, run:

          ```bash
          oc edit flowcollector cluster
          ```

          As it operates cluster-wide on every node, only a single `FlowCollector` is allowed, and it has to be named `cluster`.

          A couple of settings deserve special attention:

          - Sampling (`spec.agent.ebpf.sampling`): a value of `100` means: one flow every 100 is sampled. `1` means all flows are sampled. The lower it is, the more flows you get, and the more accurate are derived metrics, but the higher amount of resources are consumed. By default, sampling is set to 50 (ie. 1:50). Note that more sampled flows also means more storage needed. We recommend to start with default values and refine empirically, to figure out which setting your cluster can manage.

          - Loki (`spec.loki`): configure here how to reach Loki. The default values match the Loki quick install paths mentioned above, but you might have to configure differently if you used another installation method. Make sure to disable it (`spec.loki.enable`) if you don't want to use Loki.

          - Quick filters (`spec.consolePlugin.quickFilters`): configure preset filters to be displayed in the Console plugin. They offer a way to quickly switch from filters to others, such as showing / hiding pods network, or infrastructure network, or application network, etc. They can be tuned to reflect the different workloads running on your cluster. For a list of available filters, [check this page](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/docs/QuickFilters.md).

          - Kafka (`spec.deploymentModel: KAFKA` and `spec.kafka`): when enabled, integrates the flow collection pipeline with Kafka, by splitting ingestion from transformation (kube enrichment, derived metrics, ...). Kafka can provide better scalability, resiliency and high availability ([view more details](https://www.redhat.com/en/topics/integration/what-is-apache-kafka)). Assumes Kafka is already deployed and a topic is created.

          - Exporters (`spec.exporters`) an optional list of exporters to which to send enriched flows. KAFKA and IPFIX exporters are supported. This allows you to define any custom storage or processing that can read from Kafka or use the IPFIX standard.

          - To enable availability zones awareness, set `spec.processor.addZone` to `true`.

          ## Resource considerations

          The following table outlines examples of resource considerations for clusters with certain workload sizes.
          The examples outlined in the table demonstrate scenarios that are tailored to specific workloads. Consider each example only as a baseline from which adjustments can be made to accommodate your workload needs.


          | Resource recommendations                        | Extra small (10 nodes) | Small (25 nodes)       | Medium (65 nodes) **    | Large (120 nodes) **          |
          | ----------------------------------------------- | ---------------------- | ---------------------- | ----------------------- | ----------------------------- |
          | *Worker Node vCPU and memory*                   | 4 vCPUs\| 16GiB mem *  | 16 vCPUs\| 64GiB mem * | 16 vCPUs\| 64GiB mem  * |16 vCPUs\| 64GiB Mem *         |
          | *LokiStack size*                                | `1x.extra-small`       | `1x.small`             | `1x.small`              | `1x.medium`                   |
          | *Network Observability controller memory limit* | 400Mi (default)        | 400Mi (default)        | 400Mi (default)         | 800Mi                         |
          | *eBPF sampling interval*                        | 50 (default)           | 50 (default)           | 50 (default)            | 50 (default)                  |
          | *eBPF memory limit*                             | 800Mi (default)        | 800Mi (default)        | 2000Mi                  | 800Mi (default)               |
          | *FLP memory limit*                              | 800Mi (default)        | 800Mi (default)        | 800Mi (default)         | 800Mi (default)               |
          | *FLP Kafka partitions*                          | N/A                    | 48                     | 48                      | 48                            |
          | *Kafka consumer replicas*                       | N/A                    | 24                     | 24                      | 24                            |
          | *Kafka brokers*                                 | N/A                    | 3 (default)            | 3 (default)             | 3 (default)                   |

          *. Tested with AWS M6i instances.
          **. In addition to this worker and its controller, 3 infra nodes (size `M6i.12xlarge`) and 1 workload node (size `M6i.8xlarge`) were tested.

          ## Further reading

          Please refer to the documentation on GitHub for more information.

          This documentation includes:

          - An [overview](https://github.com/netobserv/network-observability-operator#openshift-console) of the features, with screenshots
          - More information on [configuring metrics](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/docs/Metrics.md).
          - A [performance](https://github.com/netobserv/network-observability-operator#performance-fine-tuning) section, for fine-tuning
          - A [security](https://github.com/netobserv/network-observability-operator#securing-data-and-communications) section
          - An [F.A.Q.](https://github.com/netobserv/network-observability-operator#faq--troubleshooting) section
        displayName: Network Observability
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network observability
        - ebpf
        - ipfix
        - flow tracing
        - flows
        - topology
        - network
        - observability
        links:
        - name: Project page
          url: https://github.com/netobserv/network-observability-operator
        - name: Issue tracker
          url: https://github.com/netobserv/network-observability-operator/issues
        - name: Discussion board
          url: https://github.com/netobserv/network-observability-operator/discussions
        maintainers:
        - email: jpinsonn@redhat.com
          name: Julien Pinsonneau
        - email: jtakvori@redhat.com
          name: Joel Takvorian
        - email: lberetta@redhat.com
          name: Leandro Beretta
        - email: ljira@redhat.com
          name: Luis Jira
        - email: mmahmoud@redhat.com
          name: Mohamed S. Mahmoud
        - email: ocazade@redhat.com
          name: Olivier Cazade
        - email: stlee@redhat.com
          name: Steven Lee
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:d4f8f312c04c4c719c0812545382a4945e0afafd69ee3361e00f557dacbd8458
        - registry.redhat.io/network-observability/network-observability-operator-bundle@sha256:672475bad5c9d33f2c1ed309a6774394774b6b221f6c7d2ad1685228dd69fc52
        - registry.redhat.io/network-observability/network-observability-console-plugin-compat-rhel9@sha256:7f15b6a86320aa1efb6623f1d75eccc0725d689db3a7d2cb13170a48d31e8159
        - registry.redhat.io/network-observability/network-observability-console-plugin-rhel9@sha256:cf85daa46634b0ef40d2935e3f5c0f55ba70762e6423d9ed084b09bb45503c65
        - registry.redhat.io/network-observability/network-observability-ebpf-agent-rhel9@sha256:4ff0cc14bfd0974cdb4cd90b69549c07d6852355bb32b1894f41eb70844132e4
        - registry.redhat.io/network-observability/network-observability-flowlogs-pipeline-rhel9@sha256:7b9aa110a11f695d113914164afde675039078528eff441b6541010272e31da5
        version: 1.10.1
      entries:
      - name: network-observability-operator.v1.10.1
        version: 1.10.1
      - name: network-observability-operator.v1.10.0
        version: 1.10.0
      - name: network-observability-operator.v1.9.3
        version: 1.9.3
      - name: network-observability-operator.v1.9.2
        version: 1.9.2
      - name: network-observability-operator.v1.9.1
        version: 1.9.1
      - name: network-observability-operator.v1.9.0
        version: 1.9.0
      - name: network-observability-operator.v1.8.1
        version: 1.8.1
      - name: network-observability-operator.v1.8.0
        version: 1.8.0
      - name: network-observability-operator.v1.7.0
        version: 1.7.0
      - name: network-observability-operator.v1.6.2
        version: 1.6.2
      - name: network-observability-operator.v1.6.1
        version: 1.6.1
      - name: network-observability-operator.v1.6.0
        version: 1.6.0
      - name: network-observability-operator.v1.5.0
        version: 1.5.0
      - name: network-observability-operator.v1.4.2
        version: 1.4.2
      - name: network-observability-operator.v1.4.1
        version: 1.4.1
      - name: network-observability-operator.v1.4.0
        version: 1.4.0
      - name: network-observability-operator.v1.3.0
        version: 1.3.0
      - name: network-observability-operator.v1.2.0
        version: 1.2.0
      - name: network-observability-operator.v1.1.0-202302110050
        version: 1.1.0
      - name: network-observability-operator.v1.0.0-202301070345
        version: 1.0.0
      name: stable
    - currentCSV: network-observability-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "flows.netobserv.io/v1alpha1",
                "kind": "FlowCollector",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "agent": {
                    "ebpf": {
                      "cacheActiveTimeout": "5s",
                      "cacheMaxFlows": 100000,
                      "excludeInterfaces": [
                        "lo"
                      ],
                      "imagePullPolicy": "IfNotPresent",
                      "interfaces": [],
                      "kafkaBatchSize": 10485760,
                      "logLevel": "info",
                      "resources": {
                        "limits": {
                          "memory": "800Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      },
                      "sampling": 50
                    },
                    "type": "EBPF"
                  },
                  "consolePlugin": {
                    "autoscaler": {
                      "maxReplicas": 3,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 50,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 1,
                      "status": "DISABLED"
                    },
                    "imagePullPolicy": "IfNotPresent",
                    "logLevel": "info",
                    "port": 9001,
                    "portNaming": {
                      "enable": true,
                      "portNames": {
                        "3100": "loki"
                      }
                    },
                    "quickFilters": [
                      {
                        "default": true,
                        "filter": {
                          "dst_namespace!": "openshift-,netobserv",
                          "src_namespace!": "openshift-,netobserv"
                        },
                        "name": "Applications"
                      },
                      {
                        "filter": {
                          "dst_namespace": "openshift-,netobserv",
                          "src_namespace": "openshift-,netobserv"
                        },
                        "name": "Infrastructure"
                      },
                      {
                        "default": true,
                        "filter": {
                          "dst_kind": "Pod",
                          "src_kind": "Pod"
                        },
                        "name": "Pods network"
                      },
                      {
                        "filter": {
                          "dst_kind": "Service"
                        },
                        "name": "Services network"
                      }
                    ],
                    "register": true
                  },
                  "deploymentModel": "DIRECT",
                  "exporters": [],
                  "kafka": {
                    "address": "kafka-cluster-kafka-bootstrap.netobserv",
                    "tls": {
                      "caCert": {
                        "certFile": "ca.crt",
                        "name": "kafka-cluster-cluster-ca-cert",
                        "type": "secret"
                      },
                      "enable": false,
                      "userCert": {
                        "certFile": "user.crt",
                        "certKey": "user.key",
                        "name": "flp-kafka",
                        "type": "secret"
                      }
                    },
                    "topic": "network-flows"
                  },
                  "loki": {
                    "batchSize": 10485760,
                    "batchWait": "1s",
                    "maxBackoff": "5s",
                    "maxRetries": 2,
                    "minBackoff": "1s",
                    "tls": {
                      "caCert": {
                        "certFile": "service-ca.crt",
                        "name": "loki-gateway-ca-bundle",
                        "type": "configmap"
                      },
                      "enable": false,
                      "insecureSkipVerify": false
                    },
                    "url": "http://loki.netobserv.svc:3100/"
                  },
                  "namespace": "netobserv",
                  "processor": {
                    "dropUnusedFields": true,
                    "imagePullPolicy": "IfNotPresent",
                    "kafkaConsumerAutoscaler": null,
                    "kafkaConsumerBatchSize": 10485760,
                    "kafkaConsumerQueueCapacity": 1000,
                    "kafkaConsumerReplicas": 3,
                    "logLevel": "info",
                    "metrics": {
                      "ignoreTags": [
                        "egress",
                        "packets"
                      ],
                      "server": {
                        "port": 9102
                      }
                    },
                    "port": 2055,
                    "profilePort": 6060,
                    "resources": {
                      "limits": {
                        "memory": "800Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "100Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "flows.netobserv.io/v1beta1",
                "kind": "FlowCollector",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "agent": {
                    "ebpf": {
                      "cacheActiveTimeout": "5s",
                      "cacheMaxFlows": 100000,
                      "excludeInterfaces": [
                        "lo"
                      ],
                      "imagePullPolicy": "IfNotPresent",
                      "interfaces": [],
                      "kafkaBatchSize": 10485760,
                      "logLevel": "info",
                      "resources": {
                        "limits": {
                          "memory": "800Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      },
                      "sampling": 50
                    },
                    "type": "EBPF"
                  },
                  "consolePlugin": {
                    "autoscaler": {
                      "maxReplicas": 3,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 50,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 1,
                      "status": "DISABLED"
                    },
                    "imagePullPolicy": "IfNotPresent",
                    "logLevel": "info",
                    "port": 9001,
                    "portNaming": {
                      "enable": true,
                      "portNames": {
                        "3100": "loki"
                      }
                    },
                    "quickFilters": [
                      {
                        "default": true,
                        "filter": {
                          "dst_namespace!": "openshift-,netobserv",
                          "src_namespace!": "openshift-,netobserv"
                        },
                        "name": "Applications"
                      },
                      {
                        "filter": {
                          "dst_namespace": "openshift-,netobserv",
                          "src_namespace": "openshift-,netobserv"
                        },
                        "name": "Infrastructure"
                      },
                      {
                        "default": true,
                        "filter": {
                          "dst_kind": "Pod",
                          "src_kind": "Pod"
                        },
                        "name": "Pods network"
                      },
                      {
                        "filter": {
                          "dst_kind": "Service"
                        },
                        "name": "Services network"
                      }
                    ],
                    "register": true
                  },
                  "deploymentModel": "DIRECT",
                  "exporters": [],
                  "kafka": {
                    "address": "kafka-cluster-kafka-bootstrap.netobserv",
                    "tls": {
                      "caCert": {
                        "certFile": "ca.crt",
                        "name": "kafka-cluster-cluster-ca-cert",
                        "type": "secret"
                      },
                      "enable": false,
                      "userCert": {
                        "certFile": "user.crt",
                        "certKey": "user.key",
                        "name": "flp-kafka",
                        "type": "secret"
                      }
                    },
                    "topic": "network-flows"
                  },
                  "loki": {
                    "batchSize": 10485760,
                    "batchWait": "1s",
                    "maxBackoff": "5s",
                    "maxRetries": 2,
                    "minBackoff": "1s",
                    "statusTls": {
                      "caCert": {
                        "certFile": "service-ca.crt",
                        "name": "loki-ca-bundle",
                        "type": "configmap"
                      },
                      "enable": false,
                      "insecureSkipVerify": false,
                      "userCert": {
                        "certFile": "tls.crt",
                        "certKey": "tls.key",
                        "name": "loki-query-frontend-http",
                        "type": "secret"
                      }
                    },
                    "tls": {
                      "caCert": {
                        "certFile": "service-ca.crt",
                        "name": "loki-gateway-ca-bundle",
                        "type": "configmap"
                      },
                      "enable": false,
                      "insecureSkipVerify": false
                    },
                    "url": "http://loki.netobserv.svc:3100/"
                  },
                  "namespace": "netobserv",
                  "processor": {
                    "conversationEndTimeout": "10s",
                    "conversationHeartbeatInterval": "30s",
                    "conversationTerminatingTimeout": "5s",
                    "dropUnusedFields": true,
                    "imagePullPolicy": "IfNotPresent",
                    "kafkaConsumerAutoscaler": null,
                    "kafkaConsumerBatchSize": 10485760,
                    "kafkaConsumerQueueCapacity": 1000,
                    "kafkaConsumerReplicas": 3,
                    "logLevel": "info",
                    "logTypes": "FLOWS",
                    "metrics": {
                      "disableAlerts": [],
                      "ignoreTags": [
                        "egress",
                        "packets"
                      ],
                      "server": {
                        "port": 9102
                      }
                    },
                    "port": 2055,
                    "profilePort": 6060,
                    "resources": {
                      "limits": {
                        "memory": "800Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "100Mi"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          console.openshift.io/plugins: '["netobserv-plugin"]'
          containerImage: registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:fd943746840cba26996dabb47b1beb3445571fa43cb1b859fb073e4aa114b376
          createdAt: 2023-06-22T09:31:50
          description: Network flows collector and monitoring solution
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-netobserv-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.3
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/netobserv/network-observability-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FlowCollector is the Schema for the flowcollectors API, which
              pilots and configures netflow collection.
            displayName: Flow Collector
            kind: FlowCollector
            name: flowcollectors.flows.netobserv.io
            version: v1alpha1
          - description: FlowCollector is the schema for the network flows collection
              API, which pilots and configures the underlying deployments.
            displayName: Flow Collector
            kind: FlowCollector
            name: flowcollectors.flows.netobserv.io
            version: v1beta1
        description: |
          Network Observability is an OpenShift operator that deploys a monitoring pipeline to collect and enrich network flows that are produced by the Network Observability eBPF agent.

          The operator provides dashboards, metrics, and keeps flows accessible in a queryable log store, Grafana Loki. When a `FlowCollector` instance is created, new views are available in the Console.

          ## Dependencies

          ### Loki

          [Loki](https://grafana.com/oss/loki/), from GrafanaLabs, is the backend that is used to store all collected flows. The NetObserv Operator does not install Loki directly, however we provide some guidance to help you there.

          For normal usage, we recommend two options:

          - Installing the [Loki Operator](https://docs.openshift.com/container-platform/4.11//logging/cluster-logging-loki.html). We have written [a guide](https://github.com/netobserv/documents/blob/main/loki_operator.md) to help you through those steps. Please note that it requires configuring an object storage. Note also that the Loki Operator can also be used for [OpenShift cluster logging](https://docs.openshift.com/container-platform/4.11/logging/cluster-logging.html). If you do so, you should not share the same `LokiStack` for Logging and NetObserv.

          - Installing using [Grafana's official documentation](https://grafana.com/docs/loki/latest/). Here also we wrote a ["distributed Loki" step by step guide](https://github.com/netobserv/documents/blob/main/loki_distributed.md).

          For a quick try that is not suitable for production and not scalable (it deploys a single pod, configures a 1GB storage PVC, with 24 hours of retention), you can simply run the following commands:

          ```
          oc create namespace netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/252bb624cf0425a1b66f59ce68fb939f246ef77b/examples/zero-click-loki/1-storage.yaml) -n netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/252bb624cf0425a1b66f59ce68fb939f246ef77b/examples/zero-click-loki/2-loki.yaml) -n netobserv
          ```

          ### Kafka

          [Apache Kafka](https://kafka.apache.org/) can optionally be used for a more resilient and scalable architecture. You can use for instance [Strimzi](https://strimzi.io/), an operator-based distribution of Kafka for Kubernetes and OpenShift.

          ### Grafana

          [Grafana](https://grafana.com/oss/grafana/) can optionally be installed for custom dashboards and query capabilities.

          ## Configuration

          The `FlowCollector` resource is used to configure the operator and its managed components. A comprehensive documentation is [available here](https://github.com/netobserv/network-observability-operator/blob/1.0.2/docs/FlowCollector.md), and a full sample file [there](https://github.com/netobserv/network-observability-operator/blob/1.0.2/config/samples/flows_v1beta1_flowcollector.yaml).

          To edit configuration in cluster, run:

          ```bash
          oc edit flowcollector cluster
          ```

          As it operates cluster-wide, only a single `FlowCollector` is allowed, and it has to be named `cluster`.

          A couple of settings deserve special attention:

          - Sampling (`spec.agent.ebpf.sampling`): a value of `100` means: one flow every 100 is sampled. `1` means all flows are sampled. The lower it is, the more flows you get, and the more accurate are derived metrics, but the higher amount of resources are consumed. By default, sampling is set to 50 (ie. 1:50). Note that more sampled flows also means more storage needed. We recommend to start with default values and refine empirically, to figure out which setting your cluster can manage.

          - Loki (`spec.loki`): configure here how to reach Loki. The default values match the Loki quick install paths mentioned above, but you may have to configure differently if you used another installation method.

          - Quick filters (`spec.consolePlugin.quickFilters`): configure preset filters to be displayed in the Console plugin. They offer a way to quickly switch from filters to others, such as showing / hiding pods network, or infrastructure network, or application network, etc. They can be tuned to reflect the different workloads running on your cluster. For a list of available filters, [check this page](https://github.com/netobserv/network-observability-operator/blob/1.0.2/docs/QuickFilters.md).

          - Kafka (`spec.deploymentModel: KAFKA` and `spec.kafka`): when enabled, integrates the flow collection pipeline with Kafka, by splitting ingestion from transformation (kube enrichment, derived metrics, ...). Kafka can provide better scalability, resiliency and high availability ([view more details](https://www.redhat.com/en/topics/integration/what-is-apache-kafka)). Assumes Kafka is already deployed and a topic is created.

          - Exporters (`spec.exporters`, _experimental_) an optional list of exporters to which to send enriched flows. Currently only KAFKA is supported. This allows you to define any custom storage or processing that can read from Kafka. This feature is flagged as _experimental_ as it has not been thoroughly or stress tested yet, so use at your own risk.

          ## Further reading

          Please refer to the documentation on GitHub for more information.

          This documentation includes:

          - An [overview](https://github.com/netobserv/network-observability-operator#openshift-console) of the features, with screenshots
          - A [performance](https://github.com/netobserv/network-observability-operator#performance-fine-tuning) section, for fine-tuning
          - A [security](https://github.com/netobserv/network-observability-operator#securing-data-and-communications) section
          - An [F.A.Q.](https://github.com/netobserv/network-observability-operator#faq--troubleshooting) section
        displayName: Network Observability
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network observability
        - ebpf
        - flow tracing
        - flows
        - topology
        - network
        - observability
        links:
        - name: Project page
          url: https://github.com/netobserv/network-observability-operator
        - name: Issue tracker
          url: https://github.com/netobserv/network-observability-operator/issues
        - name: Discussion board
          url: https://github.com/netobserv/network-observability-operator/discussions
        maintainers:
        - email: jpinsonn@redhat.com
          name: Julien Pinsonneau
        - email: jtakvori@redhat.com
          name: Joel Takvorian
        - email: kmeth@redhat.com
          name: Kalman Meth
        - email: mmahmoud@redhat.com
          name: Mohamed S. Mahmoud
        - email: ocazade@redhat.com
          name: Olivier Cazade
        - email: rschaffe@redhat.com
          name: Ronen Schaffer
        - email: stlee@redhat.com
          name: Steven Lee
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/network-observability/network-observability-flowlogs-pipeline-rhel9@sha256:7c7c42fff63e0599bb943a9e9617b43181360d5a5254b27f368010af275cf0c3
        - registry.redhat.io/network-observability/network-observability-operator-bundle@sha256:b03f4e88ab1fed4744356a584d673fb2fdb15de7e1de7786bdd222b853690670
        - registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:fd943746840cba26996dabb47b1beb3445571fa43cb1b859fb073e4aa114b376
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:37b3c9b2eed351d9d1a39c99045bbc7993ccb819f67f7b390deaa34930f45946
        - registry.redhat.io/network-observability/network-observability-console-plugin-rhel9@sha256:880c0812a2cd4b7194f417e31fbdcee951ce76776fa06e33c5c9cd479a854daa
        - registry.redhat.io/network-observability/network-observability-ebpf-agent-rhel9@sha256:e31acc12d8690c339e13b5dd22d33e707701362bdd31086c9b4c0f48cad62cc3
        version: 1.3.0
      entries:
      - name: network-observability-operator.v1.3.0
        version: 1.3.0
      - name: network-observability-operator.v1.2.0
        version: 1.2.0
      - name: network-observability-operator.v1.1.0-202302110050
        version: 1.1.0
      - name: network-observability-operator.v1.0.0-202301070345
        version: 1.0.0
      name: v1.0.x
    defaultChannel: stable
    packageName: netobserv-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: fuse-console
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fuse-console.v7.10.3-0.1655306919.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "replicas": 1,
                  "version": "1.10",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "100Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:37dc38375f5d553ac1d9f20f66ce005ed9495354b81d7915ae3bd7dd6af132f3
          createdAt: "2020-09-14T10:59:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.10.3'
          olm.substitutesFor: fuse-console.v7.10.3-0.1652362834.p
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.10/html/managing_fuse
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:bbfddd7cb4a6cb7a131a0cef174054890fd39956d63e737c92fe8233ad8f98e4
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:37dc38375f5d553ac1d9f20f66ce005ed9495354b81d7915ae3bd7dd6af132f3
        version: 7.10.3+0.1655306919.p
      entries:
      - name: fuse-console.v7.10.3
        version: 7.10.3
      - name: fuse-console.v7.10.3-0.1652362834.p
        version: 7.10.3+0.1652362834.p
      - name: fuse-console.v7.10.3-0.1655306919.p
        version: 7.10.3+0.1655306919.p
      name: 7.10.x
    - currentCSV: fuse-console.v7.11.1-0.1681224695.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.11",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:518b5ace9178e2aafd7b6f247fd41d9392abd1a7bccb4cb53783531820611193
          createdAt: "2022-09-07T14:03:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.11.1'
          olm.substitutesFor: fuse-console.v7.11.1-0.1675972857.p
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.11/html/managing_fuse_on_openshift
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:5a35593357fbf280561a1d4a64ecc0d5c2044409acff3ce6cb490a4a61462a4e
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:518b5ace9178e2aafd7b6f247fd41d9392abd1a7bccb4cb53783531820611193
        version: 7.11.1+0.1681224695.p
      entries:
      - name: fuse-console.v7.11.1
        version: 7.11.1
      - name: fuse-console.v7.11.1-0.1669922044.p
        version: 7.11.1+0.1669922044.p
      - name: fuse-console.v7.11.1-0.1675972857.p
        version: 7.11.1+0.1675972857.p
      - name: fuse-console.v7.11.1-0.1681224695.p
        version: 7.11.1+0.1681224695.p
      name: 7.11.x
    - currentCSV: fuse-console.v7.12.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.12",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:4e6889bf76d323956e0b594db7381e8162fea6b108f53f9e6dd0b38cf3596c8d
          createdAt: "2022-09-07T14:03:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.12.1'
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.12/html/managing_fuse_on_openshift
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:791ac512370af5cde1e089de3def760e7dbce69badc03137051520ce316d63e2
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:4e6889bf76d323956e0b594db7381e8162fea6b108f53f9e6dd0b38cf3596c8d
        version: 7.12.1
      entries:
      - name: fuse-console.v7.12.1
        version: 7.12.1
      name: 7.12.x
    - currentCSV: fuse-console.v7.13.0-0.1766137500.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.13",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:445cfa19464d1417f051989d9ba63dd7970b70806c92b5f936d77cdef80b57d0
          createdAt: "2022-09-07T14:03:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=7.7.0 <7.13.0'
          olm.substitutesFor: fuse-console.v7.13.0
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.13/html/managing_fuse_on_openshift
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:604011e60b1ea342db34ffe9c4ad5c13f6417667cde611f21c2cd1094552aad3
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:445cfa19464d1417f051989d9ba63dd7970b70806c92b5f936d77cdef80b57d0
        version: 7.13.0+0.1766137500.p
      entries:
      - name: fuse-console.v7.13.0-0.1748960166.p
        version: 7.13.0+0.1748960166.p
      - name: fuse-console.v7.13.0-0.1751291353.p
        version: 7.13.0+0.1751291353.p
      - name: fuse-console.v7.13.0-0.1719822976.p
        version: 7.13.0+0.1719822976.p
      - name: fuse-console.v7.13.0-0.1721224332.p
        version: 7.13.0+0.1721224332.p
      - name: fuse-console.v7.13.0-0.1723709432.p
        version: 7.13.0+0.1723709432.p
      - name: fuse-console.v7.13.0-0.1724659726.p
        version: 7.13.0+0.1724659726.p
      - name: fuse-console.v7.13.0-0.1725026290.p
        version: 7.13.0+0.1725026290.p
      - name: fuse-console.v7.13.0-0.1731460809.p
        version: 7.13.0+0.1731460809.p
      - name: fuse-console.v7.13.0-0.1738056254.p
        version: 7.13.0+0.1738056254.p
      - name: fuse-console.v7.13.0-0.1739885034.p
        version: 7.13.0+0.1739885034.p
      - name: fuse-console.v7.13.0-0.1741875974.p
        version: 7.13.0+0.1741875974.p
      - name: fuse-console.v7.13.0-0.1741884704.p
        version: 7.13.0+0.1741884704.p
      - name: fuse-console.v7.13.0-0.1744281421.p
        version: 7.13.0+0.1744281421.p
      - name: fuse-console.v7.13.0-0.1744737026.p
        version: 7.13.0+0.1744737026.p
      - name: fuse-console.v7.13.0
        version: 7.13.0
      - name: fuse-console.v7.13.0-0.1766137500.p
        version: 7.13.0+0.1766137500.p
      - name: fuse-console.v7.13.0-0.1753778626.p
        version: 7.13.0+0.1753778626.p
      - name: fuse-console.v7.13.0-0.1753702606.p
        version: 7.13.0+0.1753702606.p
      - name: fuse-console.v7.13.0-0.1749640277.p
        version: 7.13.0+0.1749640277.p
      - name: fuse-console.v7.13.0-0.1753785080.p
        version: 7.13.0+0.1753785080.p
      - name: fuse-console.v7.13.0-0.1753860418.p
        version: 7.13.0+0.1753860418.p
      - name: fuse-console.v7.13.0-0.1754303647.p
        version: 7.13.0+0.1754303647.p
      - name: fuse-console.v7.13.0-0.1754559584.p
        version: 7.13.0+0.1754559584.p
      - name: fuse-console.v7.13.0-0.1754567932.p
        version: 7.13.0+0.1754567932.p
      - name: fuse-console.v7.13.0-0.1757604404.p
        version: 7.13.0+0.1757604404.p
      - name: fuse-console.v7.13.0-0.1760430814.p
        version: 7.13.0+0.1760430814.p
      - name: fuse-console.v7.13.0-0.1761246177.p
        version: 7.13.0+0.1761246177.p
      - name: fuse-console.v7.13.0-0.1763465880.p
        version: 7.13.0+0.1763465880.p
      - name: fuse-console.v7.13.0-0.1764232107.p
        version: 7.13.0+0.1764232107.p
      - name: fuse-console.v7.13.0-0.1764853444.p
        version: 7.13.0+0.1764853444.p
      - name: fuse-console.v7.12.1
        version: 7.12.1
      name: 7.13.x
    - currentCSV: fuse-console.v7.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "replicas": 1,
                  "version": "1.9",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "100Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:846d57f3fd9f307a98b0169b6733c26299209d99ed189f219c48f36ba771b198
          createdAt: "2020-09-14T10:59:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.9.0'
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.9/html/managing_fuse
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:ddfdf850c9238a6988889e1840efe3175f03dad2489a5651e21cac62ac44e23e
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:846d57f3fd9f307a98b0169b6733c26299209d99ed189f219c48f36ba771b198
        version: 7.9.0
      entries:
      - name: fuse-console.v7.9.0
        version: 7.9.0
      name: 7.9.x
    defaultChannel: 7.13.x
    packageName: fuse-console
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: sandboxed-containers-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sandboxed-containers-operator.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:051bd7f1dad8cc3251430fee32184be8d64077aba78580184cef0255d267bdcf
          createdAt: 2021-06-07-13:38:06
          olm.skipRange: <1.0.2
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/openshift/sandboxed-containers-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Details
          OpenShift sandboxed containers based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift’s Defense-in-Depth strategy. For more information
          [see](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5).

          # Features & benefits
          - **Isolated Developer Environments & Priviliges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as CAP_ADMIN or CAP_BPF. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select preview-1.0 from the list of available Update Channel options.
            This ensures that you install the version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              openshift-sandboxed-containers-operator namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              openshift-sandboxed-containers-operator causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a KataConfig CRD instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/4.8/sandboxed_containers/understanding-sandboxed-containers.html).
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kernel-isolated containers
        links:
        - name: OpenShift sandboxed containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        provider:
          name: Red Hat
          url: https://www.github.com/openshift/sandboxed-containers-operator
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:051bd7f1dad8cc3251430fee32184be8d64077aba78580184cef0255d267bdcf
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:c6c589d5e47ba9564c66c84fc2bc7e5e046dae1d56a3dc99d7343f01e42e4d31
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-operator-bundle@sha256:2808a0397495982b4ea0001ede078803a043d5c9b0285662b08044fe4c11f243
        version: 1.0.2
      deprecation:
        message: |
          The preview-1.0 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.0.2
        version: 1.0.2
      name: preview-1.0
    - currentCSV: sandboxed-containers-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "false"
          containerImage: registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:b1e824e126c579db0f56d04c3d1796d82ed033110c6bc923de66d95b67099611
          createdAt: "2021-10-08T13:20:20.250789Z"
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/openshift/sandboxed-containers-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          OpenShift sandboxed containers based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift’s Defense-in-Depth strategy. For more information
          [see](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5).

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `preview-1.1` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CRD instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/4.8/sandboxed_containers/understanding-sandboxed-containers.html).
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kernel-isolated containers
        links:
        - name: OpenShift sandboxed containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        provider:
          name: Red Hat
          url: https://www.github.com/openshift/sandboxed-containers-operator
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-operator-bundle@sha256:a91cee14f47824ce49759628d06bf4e48276e67dae00b50123d3233d78531720
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:b1e824e126c579db0f56d04c3d1796d82ed033110c6bc923de66d95b67099611
        version: 1.1.0
      deprecation:
        message: |
          The preview-1.1 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.1.0
        version: 1.1.0
      - name: sandboxed-containers-operator.v1.0.2
        version: 1.0.2
      name: preview-1.1
    - currentCSV: sandboxed-containers-operator.v1.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-04T15:20:34Z"
          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.skipRange: '>=1.1.0 <1.11.1'
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/internal-objects: '["peerpods.confidentialcontainers.org","peerpodconfigs.confidentialcontainers.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/sandboxed-containers-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
          - kind: PeerPod
            name: peerpods.confidentialcontainers.org
            version: v1alpha1
        description: |-
          OpenShift sandboxed containers, based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift's Defense-in-Depth strategy. Click [this link](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5) for
          more information.

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `candidate` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CustomResourceDefinition(CRD) instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the [OpenShift sandboxed containers documentation](https://docs.redhat.com/en/documentation/openshift_sandboxed_containers/).
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sandboxed-containers
        - kata
        links:
        - name: Sandboxed Containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        maintainers:
        - email: support@redhat.com'
          name: '''Red Hat'
        maturity: beta
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-rhel9@sha256:408eaaac58d01892aa2087153eda6f451788c02b8b719dca8e710a8916b2e081
        - registry.redhat.io/openshift-sandboxed-containers/osc-must-gather-rhel9@sha256:e4bb201c368afbc80eced2aea0869d152e026253a14349a01e2088f5dac5e214
        - registry.redhat.io/openshift-sandboxed-containers/osc-pccs@sha256:de64fc7b13aaa7e466e825d62207f77e7c63a4f9da98663c3ab06abc45f2334d
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-webhook-rhel9@sha256:4a533f77a4f1415b8eed0d3f5a4ba9d62edd329bf304f26f23b0c1d886dddb71
        - registry.redhat.io/openshift-sandboxed-containers/osc-podvm-builder-rhel9@sha256:9efde29746c28defaabce25c2f0c6da7567ca7dc7fe97845886d7d9e750ea094
        - registry.redhat.io/openshift-sandboxed-containers/osc-tdx-qgs@sha256:86b23461c4eea073f4535a777374a54e934c37ac8c96c6180030f92ebf970524
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:7b2035904ec464fe32c55ace525f573a491b046b5ef7cd5721d7a67cfc8dae25
        - registry.redhat.io/openshift-sandboxed-containers/osc-podvm-payload-rhel9@sha256:7317c2d8c0ac8e542e39d695851c4add301593d2b52af80c77fd4f996efbe2b8
        - registry.redhat.io/openshift-sandboxed-containers/osc-dm-verity-image@sha256:0eb5efd518128ac6df93fec2e5d24c4c5662d5407e016d1f66579cc9ce4529ea
        - registry.redhat.io/openshift-sandboxed-containers/osc-monitor-rhel9@sha256:3c1434943628c01f102615115e89e384b4d46ccf2fd6c0abd5205917afc4d05a
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel9-operator@sha256:b59db913c24f866a700d7662f3fd2de238b4a71550f2f04673ef3ba62ce35aa6
        - registry.redhat.io/openshift-sandboxed-containers/osc-storage-helper@sha256:c9b31c8acd23c6925d6bf193696817f14a52b0f0fcbd8459023b5d69da93482e
        version: 1.11.1
      entries:
      - name: sandboxed-containers-operator.v1.11.1
        version: 1.11.1
      - name: sandboxed-containers-operator.v1.11.0
        version: 1.11.0
      - name: sandboxed-containers-operator.v1.10.3
        version: 1.10.3
      - name: sandboxed-containers-operator.v1.10.2
        version: 1.10.2
      - name: sandboxed-containers-operator.v1.10.1
        version: 1.10.1
      - name: sandboxed-containers-operator.v1.10.0
        version: 1.10.0
      - name: sandboxed-containers-operator.v1.9.0
        version: 1.9.0
      - name: sandboxed-containers-operator.v1.8.1
        version: 1.8.1
      - name: sandboxed-containers-operator.v1.7.0
        version: 1.7.0
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.6.0
        version: 1.6.0
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.3
        version: 1.5.3
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.2
        version: 1.5.2
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.1
        version: 1.5.1
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.0
        version: 1.5.0
      name: stable
    - currentCSV: sandboxed-containers-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "false"
          containerImage: registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:8f30a9129d817c3f4e404d2c43fb47e196d8c8da3badba4c48f65d440a4d7584
          createdAt: "2021-11-22T14:44:50.817336Z"
          olm.skipRange: '>=1.1.0 <1.2.2'
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/sandboxed-containers-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          OpenShift sandboxed containers, based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift's Defense-in-Depth strategy. Click [this link](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5) for
          more information.

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `stable-1.2` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CustomResourceDefinition(CRD) instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/4.9/sandboxed_containers/understanding-sandboxed-containers.html)
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sandboxed-containers
        - kata
        links:
        - name: Sandboxed Containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        maintainers:
        - email: support@redhat.com'
          name: '''Red Hat'
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:ff2bb666c2696fed365df55de78141a02e372044647b8031e6d06e7583478af4
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:8f30a9129d817c3f4e404d2c43fb47e196d8c8da3badba4c48f65d440a4d7584
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:a660f0b54b9139bed9a3aeef3408001c0d50ba60648364a98a09059b466fbcc1
        version: 1.2.2
      deprecation:
        message: |
          The stable-1.2 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.2.2
        version: 1.2.2
      name: stable-1.2
    - currentCSV: sandboxed-containers-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          olm.skipRange: '>=1.1.0 <1.3.3'
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/sandboxed-containers-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          OpenShift sandboxed containers, based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift's Defense-in-Depth strategy. Click [this link](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5) for
          more information.

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `stable-1.3` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CustomResourceDefinition(CRD) instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/latest/sandboxed_containers/understanding-sandboxed-containers.html)
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sandboxed-containers
        - kata
        links:
        - name: Sandboxed Containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        maintainers:
        - email: support@redhat.com'
          name: '''Red Hat'
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:8da62ba1c19c905bc1b87a6233ead475b047a766dc2acb7569149ac5cfe7f0f1
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:5d2b03721043e5221dfb0cf164cf59eba396ba3aae40a56c53aa3496c625eea0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:cb836456974e510eb4bccbffadbc6d99d5f57c36caec54c767a158ffd8a025d5
        version: 1.3.3
      deprecation:
        message: |
          The stable-1.3 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.3.3
        version: 1.3.3
      name: stable-1.3
    defaultChannel: stable
    packageName: sandboxed-containers-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-enterprise
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-enterprise.v1.33.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "my-replica-set"
                },
                "spec": {
                  "credentials": "my-credentials",
                  "members": 3,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "sample-sharded-cluster"
                },
                "spec": {
                  "configServerCount": 3,
                  "credentials": "my-credentials",
                  "mongodsPerShardCount": 3,
                  "mongosCount": 2,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "shardCount": 1,
                  "type": "ShardedCluster",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBMultiCluster",
                "metadata": {
                  "name": "multi-replica-set"
                },
                "spec": {
                  "clusterSpecList": [
                    {
                      "clusterName": "e2e.cluster1.mongokubernetes.com",
                      "members": 2
                    },
                    {
                      "clusterName": "e2e.cluster2.mongokubernetes.com",
                      "members": 1
                    },
                    {
                      "clusterName": "e2e.cluster3.mongokubernetes.com",
                      "members": 2
                    }
                  ],
                  "credentials": "my-credentials",
                  "duplicateServiceObjects": false,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBOpsManager",
                "metadata": {
                  "name": "ops-manager"
                },
                "spec": {
                  "adminCredentials": "ops-manager-admin",
                  "applicationDatabase": {
                    "members": 3,
                    "podSpec": {
                      "cpu": 1
                    }
                  },
                  "configuration": {
                    "mms.fromEmailAddr": "admin@thecompany.com"
                  },
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "version": "6.0.3"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBUser",
                "metadata": {
                  "name": "my-replica-set-x509-user"
                },
                "spec": {
                  "db": "$external",
                  "mongodbResourceRef": {
                    "name": "my-replica-set"
                  },
                  "roles": [
                    {
                      "db": "admin",
                      "name": "dbOwner"
                    }
                  ],
                  "username": "CN=my-replica-set-x509-user,OU=cloud,O=MongoDB,L=New York,ST=New York,C=US"
                },
                "status": {
                  "phase": "Updated"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/mongodb/mongodb-enterprise-operator-ubi@sha256:6d394a5247cc346c4421bd9b37948c0378970dd3f4fc5d6eaac681f4c9655957
          createdAt: "2025-04-15T11:32:47Z"
          description: The MongoDB Enterprise Kubernetes Operator enables easy deploys
            of MongoDB into Kubernetes clusters, using our management, monitoring
            and backup platforms, Ops Manager and Cloud Manager.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.26.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/mongodb/mongodb-enterprise-kubernetes
          support: support@mongodb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MongoDB Deployment
            displayName: MongoDB Deployment
            kind: MongoDB
            name: mongodb.mongodb.com
            version: v1
          - description: MongoDB Multi Deployment
            displayName: MongoDB Multi Deployment
            kind: MongoDBMultiCluster
            name: mongodbmulticluster.mongodb.com
            version: v1
          - description: MongoDB x509 User
            displayName: MongoDB User
            kind: MongoDBUser
            name: mongodbusers.mongodb.com
            version: v1
          - description: MongoDB Ops Manager
            displayName: MongoDB Ops Manager
            kind: MongoDBOpsManager
            name: opsmanagers.mongodb.com
            version: v1
        description: |
          The MongoDB Enterprise Kubernetes Operator enables easy deploys of MongoDB
          into Kubernetes clusters, using our management, monitoring and backup
          platforms, Ops Manager and Cloud Manager.

          ## Before You Start

          To start using the operator you''ll need an account in MongoDB Cloud Manager or
          a MongoDB Ops Manager deployment.

          * [Create a Secret with your OpsManager API key](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-operator-credentials/#procedure)

          * [Create a ConfigMap with your OpsManager project ID and URL](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-project-using-configmap/)

          By installing this integration, you will be able to deploy MongoDB instances
          with a single simple command.

          ## Required Parameters

          * `opsManager` or `cloudManager` - Enter the name of the ConfigMap containing project information
          * `credentials` - Enter the name of the Secret containing your OpsManager credentials
          * `type` - Enter MongoDB Deployment Types ("Standalone", "ReplicaSet", "ShardedCluster"

          ## Supported MongoDB Deployment Types ##

          * Standalone: An instance of mongod that is running as a single server and
          not as part of a replica set, this is, it does not do any kind of
          replication.

          * Replica Set: A replica set in MongoDB is a group of mongod processes that
          maintain the same data set. Replica sets provide redundancy and high
          availability, and are the basis for all production deployments. This section
          introduces replication in MongoDB as well as the components and architecture
          of replica sets. The section also provides tutorials for common tasks
          related to replica sets.

          * Sharded Cluster: The set of nodes comprising a sharded MongoDB deployment.
          A sharded cluster consists of config servers, shards, and one or more mongos
          routing processes. Sharding is a A database architecture that partitions
          data by key ranges and distributes the data among two or more database
          instances. Sharding enables horizontal scaling.

          ## Requirements for deploying MongoDB OpsManager

          * In order to deploy resources of type MongoDB OpsManager, you will need to
          create a secret containing the [credentials](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/plan-om-resource/#om-rsrc-prereqs)
          for the Global Owner user

          ## Security ##

          The operator can enable TLS for all traffic between servers and also between
          clients and servers. Before enabling `security.tls.enabled` to `true` you
          should create your certificates.  or you can leave the operator to create all
          the certificates for you. The operator ability to create certs is been
          deprecated due to Kubernetes API changes.

          For more information, please read the official MongoDB
          Kubernetes Operator  [docs](https://docs.mongodb.com/kubernetes-operator/stable/).
        displayName: MongoDB Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mongodb
        - databases
        - nosql
        links:
        - name: Documentation
          url: https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/index.html
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: stable
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:d3248506b6bd6b01c5973ab7bdac51ee41efa0ec8dd6211be4cc0b76a53a40c1
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7aa00dca44559318356627e88440765576dd6706187044edd1f21d0d0dcb0bf6
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:83af86f8098e3c81b6e0879eabd582592ef6cbb1d6592f5e175c0794b9df2a0e
        - quay.io/mongodb/mongodb-enterprise-operator-ubi@sha256:6d394a5247cc346c4421bd9b37948c0378970dd3f4fc5d6eaac681f4c9655957
        - quay.io/mongodb/mongodb-enterprise-init-appdb-ubi@sha256:be4295843d92ce0f325b8daaeb3a5490c11772d0348cbd9ea35a6126d038b7fb
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:985f770667e6c4c083e0c4bb79a948b83efa0cdc4ed3012b1dbf72fe48b38986
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0b2d01d543d38feddcc9d351e711df33a0a5187b22d95cdb926f6015ee1093bd
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:7d93aee462c60cacc4e5e66729f5131c5c0fa434e6e6400c8e2ccac4bd5e20ba
        - quay.io/mongodb/mongodb-agent-ubi@sha256:411f85772e7a4b2c76e21d26d320b7743612080bf0cb4c7900d9a626cfeea33b
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8445d59d491a6d3890ea9c8b421214bcd0fdcfbc420ed40497a790b79f0bc89e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:ca2aaf57d70a0b9d743a6533c4e1b88324056197453de540d3352e679a3c9c92
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0ee80032abe873b330537d4b64511ee76c5efb512af95287f28ddeffab13bb6d
        - quay.io/mongodb/mongodb-enterprise-server@sha256:67238129df09d33ee4746ff1acb5515d699a29d9f42350eae3f3f69ccb7fbf54
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8d7e5361c2a1604dec3fc671d629806fe6ddc6df524b69a441b86933a4b30093
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7885ab6e88214f9289d8babf5189136dde0dd4c84a15a5481ccd3ef512b2e66f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:a48a4d5c275fd669a27469649fb39ea38c728dbcf9f0a9da4e7cf27a2ce912ed
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c54eeb910855594ed4bf5dcbbbcc14aa6f733e97313896a8381fb4be6aeac583
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d323c1bcd14118cc537ac282996ea5a58756d20b6b73f1eec0efa8710d246077
        - quay.io/mongodb/mongodb-enterprise-server@sha256:19925e1297ab652db59c35f53e7b7c8b2b277f8ecdc4215682961aaf2b3e924e
        - quay.io/mongodb/mongodb-agent-ubi@sha256:bd868284d9dfcb7c5a20e1160218d0172358384229b556c37e0789af0030eb24
        - quay.io/mongodb/mongodb-enterprise-server@sha256:1d418c65d82ccad205b7889be4ba161d3cbfa8b1fb75b21c8fcf02de38fad9ca
        - quay.io/mongodb/mongodb-enterprise-server@sha256:13186ad45a2ba3ab55ed5c2a008eca494ee3937c8519475379476cc8e6f1d055
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa8683500e8d3632c4588bbcdddb4e3186a01f48aefe1b6d95f8860dae8b6c76
        - quay.io/mongodb/mongodb-agent-ubi@sha256:9d1f21df008b14ca721c9ed0ff905af23e1a56b64cd4eddab4df1e8e9b63df8c
        - quay.io/mongodb/mongodb-enterprise-server@sha256:110a560f5a0ebe1fde1b2c20ae5ff5638682229d1c8656b993bdaf7b71eb94bc
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3add8b68bfbaa42596fe5dbbee4623ba5ff1a826b18bb71301525adf574dcb94
        - quay.io/mongodb/mongodb-agent-ubi@sha256:23d962d038888c6aba5540c8f5d81d7e86c4ccfaa07b9e159825d98676609f8e
        - quay.io/mongodb/mongodb-agent-ubi@sha256:85f883076bc8edc516800704e2290c54b1bee14a9a533df84928c7ce1ae807d2
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:c9a211a2c31b97eed3a25a814198547f2aa3470df93d661ca3700b828100d8de
        - quay.io/mongodb/mongodb-agent-ubi@sha256:6d007271faed24bdf06eb64f2b54e5cdc3e11ce71840a7f586dabe2ee02c640e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:83db493ac6158d654d3ce55619f312d53cfbac258e0faf22e9110ca004e174bd
        - quay.io/mongodb/mongodb-agent-ubi@sha256:8c11348eac180f5faa113db2804817302ec78847472e1891b063744adba4aa60
        - quay.io/mongodb/mongodb-agent-ubi@sha256:0f8d102780a9d2ce54b7453f9575d0e24b15f014cd9b74816b1e6a4090b979b2
        - quay.io/mongodb/mongodb-enterprise-server@sha256:584255582db31d0bb1f9593feb3b675d934d8750766fc98d3a1b3340feae4995
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8f8735d377d214f64961381b5b1ed7cd3c306e6354dbc6b45c51134a25444b93
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f1bae6375f846af6fca7faeeff4aedf9fab41a9d45b515ba74e9fd7336408617
        - quay.io/mongodb/mongodb-agent-ubi@sha256:f5f3b14ee6533b21d89d9ed6d4af47dbdee9e071f909dc686dfcdf6742179e46
        - quay.io/mongodb/mongodb-enterprise-server@sha256:ef732e3eea91cc86caf2eabedc0c9115ed235a8d204f33e74bbf090a0b0259fb
        - registry.connect.redhat.com/mongodb/enterprise-operator-bundle@sha256:23c3c8387eb9377b52327d7193f59eeea5831f4050248b3cbb54cbcd9437fc71
        - quay.io/mongodb/mongodb-agent-ubi@sha256:66b49d9dce414dcd657c3550b26f71964b82edfb67a41a3ce8d2386b04ef07e8
        - quay.io/mongodb/mongodb-agent-ubi@sha256:c96ad084edbdc6a6d907f57795fa38f39199b730328dbc64997d56ea50d55dfc
        - quay.io/mongodb/mongodb-agent-ubi@sha256:bd7edb8d0931dd952524f1f0ef99f61b0f69385d9e61efd034a4f45fd315a40b
        - quay.io/mongodb/mongodb-agent-ubi@sha256:766e6cbeec27f995211aa509ff7f118b6945f3e728141f28f9c4ea0dd2297af5
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d876f57ea45582e84748b02459748e440af443a7eb0882585638973409c08f6a
        - quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi@sha256:6ccc8148c266a9037ea744e8d19875146b1c231909f29a8f01c7ce415ca15936
        - quay.io/mongodb/mongodb-agent-ubi@sha256:36c84115c6c645fd7d65d1004d2507ef3592aa1f07176645b1ee8e8b2a4f5f73
        - quay.io/mongodb/mongodb-agent-ubi@sha256:575a43be4c667f3249f46f1fdcc06dd2e68cacc9eed989da0f6edd7e214d51b7
        - quay.io/mongodb/mongodb-enterprise-server@sha256:15e31285c8949a4666f7702df53416b0905d76945a28575a6028a876cc8a6f0f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:b2bd8eb7f8b96adb874468ff1b0ebae2db4ebe490b6e1da4c9a6c5108f813ff5
        - quay.io/mongodb/mongodb-enterprise-database-ubi@sha256:e2ca129f04ad6bf4e0dbb988badb083187725f28bac01bb7080cc80cad9ac316
        - quay.io/mongodb/mongodb-agent-ubi@sha256:97bb6bb5ecd5a802e8a91e69aa10d8bde0f648b106dc5591d49ee94209822daa
        - quay.io/mongodb/mongodb-enterprise-server@sha256:37af0913742b6de339c7e664b30f35dcef04506529e4a09a9bbbdd57643f7149
        - quay.io/mongodb/mongodb-enterprise-server@sha256:b00ac773623e1bf422b47e6d783263d2d08737865abe9abbe106d86d1ea25165
        - quay.io/mongodb/mongodb-enterprise-server@sha256:9a3a6496be0d2d446e6d654eb56386c7726e0cd2d7232f6dcec579923edf0014
        - quay.io/mongodb/mongodb-enterprise-server@sha256:85c1d669c073caf9cbaac815e4c8ea2ca18b71deefa03bf84cd6d8b8ebd53e12
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f2d9a3264a8814f33143b73c56624572fb80afeab184133d3a901713a31c1a87
        - quay.io/mongodb/mongodb-enterprise-server@sha256:523566f44cbb6bbf0cd12b1adae939a883f2254c78dc4b8c9d0098581337b1db
        - quay.io/mongodb/mongodb-enterprise-server@sha256:33a30d11969eb21952681108092fe7f916e25c8e1de43e6a4e40e126025a2bec
        - quay.io/mongodb/mongodb-enterprise-server@sha256:db63f6d93e03a3e644ef6ef4846ed7d24576c688ffb584226c78e1d1fba38878
        - quay.io/mongodb/mongodb-agent-ubi@sha256:5119a1ceeae6440dbe88b89550a7ae18de8e85c9a2059f467ad66adf7ec5d75f
        - quay.io/mongodb/mongodb-agent-ubi@sha256:2395fe9d38a1a9160f7cb2f400b776ea3fc2e72187d23b6dee7fd1e4fb9ca721
        - quay.io/mongodb/mongodb-agent-ubi@sha256:3b57a03dc17a301fda86c8afed1917c10d9b98947680116399c975ece944f5de
        - quay.io/mongodb/mongodb-enterprise-server@sha256:605dcca06a45e5ea127edb9ff262a1c3ddafdab2f30b6d3a18f73bfb8a6acdb0
        - quay.io/mongodb/mongodb-enterprise-server@sha256:dfd4277f0c16ed476ac7de51894739e8c8d13a65ea5024b9a97b3dce0f6c6975
        - quay.io/mongodb/mongodb-agent-ubi@sha256:2dbaaece4dd48087370e43d9bcf6b0a0312f86cb5dfe916e8725323bd5401992
        - quay.io/mongodb/mongodb-enterprise-server@sha256:cd0cdf1b2a58f4c3b514e602cc1d96543410f631825045bbf65bd3fb84113f1f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:172e338a43df01ee5408d8d1e3cb038d2c55e77761c1a2ac6ed37959d1525140
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:2be0c6c89898b18618932b6a6303aeefdde60f48ec37d5c1fca5b8d04a00fd78
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d49417ea85ee1ddb84429552a5aac87a82c2843904d8c0300a43b657b7a49e0e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:5421e00c0935b7a9ced51a11e935773ef5df4d259f3e1b1930fbf2f1b9d46586
        - quay.io/mongodb/mongodb-agent-ubi@sha256:695074fbbfcadf454230b80fbf1094260e631f6108cefb2050473edaee2a217a
        - quay.io/mongodb/mongodb-agent-ubi@sha256:03763de5018fd5fa14843444d24adfc5e387605970b531801ef2d0916233a010
        - quay.io/mongodb/mongodb-agent-ubi@sha256:8467b1c2924a19929fc101ef2ff8d7e53cb0115a0cdc2e371dc0733bd0262395
        - quay.io/mongodb/mongodb-agent-ubi@sha256:d927afa9d3d569d943518f0a684e19afd4adb0875f55df7c904b9dd019589e5e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:fb8397cbcdbf7c33f6ad142492792771127f0d9a8c46388f350b6927405ee590
        - quay.io/mongodb/mongodb-enterprise-server@sha256:35b263861d6ea66b541abc190ce1aaf4d4e36f128e5d8ba2a5e9fa8e25d84446
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:f64d99a77d6a6b9ed10de9a28b1b8b8155414eca2e561f3fdb04bd66914fb3c5
        - quay.io/mongodb/mongodb-enterprise-server@sha256:655896bac9e82de8e9729d59a36c3a31f66235f22b93449260a2ccb7709de084
        - quay.io/mongodb/mongodb-enterprise-server@sha256:df6081325ea2fe01d1b27d0c70005dec8232aaf51a43d91661b722b8a1761263
        - quay.io/mongodb/mongodb-agent-ubi@sha256:442f5d99d02674099525abaa69daa42cec758ce5554198f978927aa5c49006c8
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa300abf739e26350a258f643fa8e57aedacd041055c7b923bd22b21ef554cdb
        - quay.io/mongodb/mongodb-agent-ubi@sha256:b23cfa639c5a4d20381245772dfe396ec915af3a3046df5d9b10016b900431f5
        - quay.io/mongodb/mongodb-agent-ubi@sha256:b175972792aa1be268d5fb3cf3ad0156f4aecffa323e1b473360fc2a3a8d8891
        - quay.io/mongodb/mongodb-agent-ubi@sha256:ee150e969c0bb786969c7e0a45fb1812766b752aee539072e28648817826433b
        - quay.io/mongodb/mongodb-agent-ubi@sha256:31cfefd2660da3efe1b6d63e39090464c28ae006d6ed1dffb2189a09183b9c61
        - quay.io/mongodb/mongodb-agent-ubi@sha256:6ebe232ed0ea87045792e578ecb11dd46411333ad0ea61383c247704b4a0efe9
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:2127d7f2684ae36b123422f55237055aad02fdb71c4c21a5b8f0b0f6d8baedfc
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:dfec259209995bb040a1eff1fcafb1d6c3fdd145129f12c04a56ec74834b80a6
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c07f20f8e7a5479e43cac7c74fc9f18cb4d4a1bd8b6b46f7dcc6f7ec7525fe28
        - quay.io/mongodb/mongodb-agent-ubi@sha256:7144ac5e5038e92a6d142bf39eba46554c1b5fafeb8ea59f0390896a0d35ed17
        - quay.io/mongodb/mongodb-agent-ubi@sha256:c03e4a7663206f54c5ef39974502816f66d8d64936c19849f0337ea4547e614e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c752a7f0726d21d55f204a359b85fa29cd727a5fe571b37289ae3ea52d6206b0
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0fde236fe26d5b20210d6f246aadacd7845874712def516cbe2eec11d79d5181
        - quay.io/mongodb/mongodb-enterprise-server@sha256:11ab324698f919f84a5dab5a964d93fe63f98a48146bb3b86974cba7606d30ec
        - quay.io/mongodb/mongodb-agent-ubi@sha256:38175af108178d89e4d3359ee2754534e5e9b24e843f12711fc14fe1dead516a
        - quay.io/mongodb/mongodb-enterprise-init-database-ubi@sha256:ab12a330e6b40735ee516168073887a4f37b58694bd10026a451eb9972e55500
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d21c65780cadc9d8668d2c28935d492625d6993f13ba562722200a819281cbcc
        version: 1.33.0
      entries:
      - name: mongodb-enterprise.v1.33.0
        version: 1.33.0
      - name: mongodb-enterprise.v1.32.0
        version: 1.32.0
      - name: mongodb-enterprise.v1.31.0
        version: 1.31.0
      - name: mongodb-enterprise.v1.30.0
        version: 1.30.0
      - name: mongodb-enterprise.v1.29.0
        version: 1.29.0
      - name: mongodb-enterprise.v1.28.0
        version: 1.28.0
      - name: mongodb-enterprise.v1.27.0
        version: 1.27.0
      - name: mongodb-enterprise.v1.26.0
        version: 1.26.0
      - name: mongodb-enterprise.v1.25.0
        version: 1.25.0
      - name: mongodb-enterprise.v1.24.0
        version: 1.24.0
      - name: mongodb-enterprise.v1.23.0
        version: 1.23.0
      - name: mongodb-enterprise.v1.22.0
        version: 1.22.0
      - name: mongodb-enterprise.v1.21.0
        version: 1.21.0
      - name: mongodb-enterprise.v1.20.1
        version: 1.20.1
      - name: mongodb-enterprise.v1.19.1
        version: 1.19.1
      - name: mongodb-enterprise.v1.18.0
        version: 1.18.0
      - name: mongodb-enterprise.v1.17.2
        version: 1.17.2
      - name: mongodb-enterprise.v1.17.1
        version: 1.17.1
      - name: mongodb-enterprise.v1.17.0
        version: 1.17.0
      - name: mongodb-enterprise.v1.16.4
        version: 1.16.4
      - name: mongodb-enterprise.v1.16.3
        version: 1.16.3
      - name: mongodb-enterprise.v1.16.2
        version: 1.16.2
      - name: mongodb-enterprise.v1.16.1
        version: 1.16.1
      name: stable
    defaultChannel: stable
    packageName: mongodb-enterprise
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio
      provider-url: ""
    name: apicurio-api-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-api-controller.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry3",
                "metadata": {
                  "name": "example-registry-with-studio"
                },
                "spec": {
                  "app": {
                    "host": "example-registry-with-studio-app.apps.yourcluster.example"
                  },
                  "studioUi": {
                    "enabled": true,
                    "host": "example-registry-with-studio-studio-ui.apps.yourcluster.example"
                  },
                  "ui": {
                    "host": "example-registry-with-studio-ui.apps.yourcluster.example"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurio-registry-operator:3.0.5
          createdAt: "2024-12-03T11:30:52Z"
          description: Deploy and manage Apicurio API Controller on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/Apicurio/apicurio-registry/tree/main/operator
          support: Apicurio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry3 represents an instance of Apicurio API
              Controller.
            displayName: Apicurio Registry 3
            kind: ApicurioRegistry3
            name: apicurioregistries3.registry.apicur.io
            version: v1
        description: |
          ## Apicurio API Controller

          Apicurio API Controller consists of 2 components:
           - Apicurio Registry 3
           - Apicurio Studio

          Storage options: PostgreSQL, Kafka, MySQL, SQL Server, in-memory.

          ## Apicurio API Controller Operator

          Provides a quick and easy way to deploy and manage Apicurio API Controller on Kubernetes.

          **Features**
          - Supports installation and configuration of Apicurio API Controller
          - Perform a rolling upgrade of Apicurio API Controller

          ## Prerequisites

          This operator does not deploy storage for Apicurio API Controller. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Apicurio API Controller and Apicurio API Controller Operator are licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry/blob/main/LICENSE)
        displayName: Apicurio API Controller
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - API Management
        - Apicurio Registry
        - Apicurio Studio
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Apicurio
        relatedImages:
        - quay.io/apicurio/apicurio-registry-operator:3.0.5
        - quay.io/community-operator-pipeline-prod/apicurio-api-controller@sha256:c783cd6db1ae5a6152848f5e4258e89b37077a177199be905d0cfe451a48e5ef
        version: 0.0.1
      entries:
      - name: apicurio-api-controller.v0.0.1
        version: 0.0.1
      name: 0.x
    defaultChannel: 0.x
    packageName: apicurio-api-controller
    provider:
      name: Apicurio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-custom-metrics-autoscaler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: custom-metrics-autoscaler.v2.17.2-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eventing.keda.sh/v1alpha1",
                "kind": "CloudEventSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "keda",
                    "app.kubernetes.io/instance": "cloudeventsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cloudeventsource",
                    "app.kubernetes.io/part-of": "keda"
                  },
                  "name": "cloudeventsource-sample"
                },
                "spec": {
                  "clusterName": "cluster-sample",
                  "destination": {
                    "http": {
                      "uri": "http://foo.bar"
                    }
                  }
                }
              },
              {
                "apiVersion": "eventing.keda.sh/v1alpha1",
                "kind": "ClusterCloudEventSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "keda",
                    "app.kubernetes.io/instance": "clustercloudeventsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "clustercloudeventsource",
                    "app.kubernetes.io/part-of": "keda"
                  },
                  "name": "clustercloudeventsource-sample"
                },
                "spec": {
                  "clusterName": "clustercluster-sample",
                  "destination": {
                    "http": {
                      "uri": "http://foo.bar"
                    }
                  }
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ClusterTriggerAuthentication",
                "metadata": {
                  "name": "example-clustertriggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "example-secret-parameter"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "KedaController",
                "metadata": {
                  "name": "keda",
                  "namespace": "openshift-keda"
                },
                "spec": {
                  "admissionWebhooks": {
                    "logEncoder": "console",
                    "logLevel": "info"
                  },
                  "metricsServer": {
                    "logLevel": "0"
                  },
                  "operator": {
                    "logEncoder": "console",
                    "logLevel": "info"
                  },
                  "serviceAccount": null,
                  "watchNamespace": ""
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledJob",
                "metadata": {
                  "name": "scaledjob-sample"
                },
                "spec": {
                  "failedJobsHistoryLimit": 5,
                  "jobTargetRef": {
                    "activeDeadlineSeconds": 600,
                    "backoffLimit": 6,
                    "completions": 1,
                    "parallelism": 1,
                    "template": null
                  },
                  "maxReplicaCount": 100,
                  "pollingInterval": 30,
                  "successfulJobsHistoryLimit": 5,
                  "triggers": [
                    {
                      "metadata": {
                        "property": "example-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledObject",
                "metadata": {
                  "name": "example-scaledobject"
                },
                "spec": {
                  "cooldownPeriod": 300,
                  "maxReplicaCount": 100,
                  "minReplicaCount": 0,
                  "pollingInterval": 30,
                  "scaleTargetRef": {
                    "name": "example-deployment"
                  },
                  "triggers": [
                    {
                      "metadata": {
                        "property": "example-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "TriggerAuthentication",
                "metadata": {
                  "name": "example-triggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "example-secret-parameter"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Cloud Provider
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9-operator@sha256:f281ddee3c9d29e2b55afc734fd238d443c21b4b4824e35b50aaf31cf126b819
          createdAt: 07 Oct 2025, 19:50
          description: Custom Metrics Autoscaler Operator, an event-driven autoscaler
            based upon KEDA
          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: "true"
          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.skipRange: '>=2.7.1 <2.17.2-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-keda
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/custom-metrics-autoscaler-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CloudEventSource
            name: cloudeventsources.eventing.keda.sh
            version: v1alpha1
          - kind: ClusterCloudEventSource
            name: clustercloudeventsources.eventing.keda.sh
            version: v1alpha1
          - description: Describes cluster wide authentication parameters
            displayName: ClusterTriggerAuthentication
            kind: ClusterTriggerAuthentication
            name: clustertriggerauthentications.keda.sh
            version: v1alpha1
          - description: |
              Represents an installation of a particular version of KEDA Controller.
            displayName: KedaController
            kind: KedaController
            name: kedacontrollers.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your jobs and what the triggers
            displayName: ScaledJob
            kind: ScaledJob
            name: scaledjobs.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your application and what the
              triggers are
            displayName: ScaledObject
            kind: ScaledObject
            name: scaledobjects.keda.sh
            version: v1alpha1
          - description: Describes authentication parameters
            displayName: TriggerAuthentication
            kind: TriggerAuthentication
            name: triggerauthentications.keda.sh
            version: v1alpha1
        description: |
          ## About the managed application
          Custom Metrics Autoscaler for OpenShift is an event driven autoscaler based upon KEDA.  Custom Metrics Autoscaler can monitor event sources like Kafka, RabbitMQ, or cloud event sources and feed the metrics from those sources into the Kubernetes horizontal pod autoscaler.  With Custom Metrics Autoscaler, you can have event driven and serverless scale of deployments within any Kubernetes cluster.
          ## About this Operator
          The Custom Metrics Autoscaler Operator deploys and manages installation of KEDA Controller in the cluster. Install this operator and follow installation instructions on how to install Custom Metrics Autoscaler in your cluster.

          ## Prerequisites for enabling this Operator
          ## How to install Custom Metrics Autoscaler in the cluster
          The installation of Custom Metrics Autoscaler is triggered by the creation of `KedaController` resource. Please refer to the [KedaController Spec](https://github.com/openshift/custom-metrics-autoscaler-operator/blob/main/README.md#the-kedacontroller-custom-resource) for more details on available options.

          Only a resource named `keda` in the namespace where the operator is installed will trigger the installation, reconfiguration or removal of the KEDA Controller resource.

          There should be only one KEDA Controller in the cluster.

          The operator will behave in this manner whether it is installed with the `AllNamespaces` or `OwnNamespace` install mode. While the operator more closely matches the `OwnNamespace` semantics, `AllNamespaces` is a supported installation mode to allow it to be installed to namespaces with existing `OperatorGroups` which require that installation mode, such as `openshift-operators`.
        displayName: Custom Metrics Autoscaler
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - keda
        - scaling
        - event
        links:
        - name: Custom Metrics Autoscaler Documentation
          url: https://docs.openshift.com/container-platform/latest/nodes/cma/nodes-cma-autoscaling-custom.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9-operator@sha256:f281ddee3c9d29e2b55afc734fd238d443c21b4b4824e35b50aaf31cf126b819
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9@sha256:3216b5b55e1b068d31154cb806fcaf8233663af209d355975b7374157d265f4e
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-operator-bundle@sha256:3682a40a5309c9eb7507082a55164679e3e47e40b5368ffba7727361600ff02b
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-adapter-rhel9@sha256:b9401d749596bbf112e62e6a59b991bf1e156e70bb7e8bb8f81f274a4ad01986
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-admission-webhooks-rhel9@sha256:a562d423b2b1d7b8b12d5497c9d665dcb530c0ec7a63f47122fef9ca4be17826
        version: 2.17.2-2
      entries:
      - name: custom-metrics-autoscaler.v2.17.2-2
        version: 2.17.2-2
      - name: custom-metrics-autoscaler.v2.17.2-1
        version: 2.17.2-1
      - name: custom-metrics-autoscaler.v2.15.1-6
        version: 2.15.1-6
      - name: custom-metrics-autoscaler.v2.15.1-4
        version: 2.15.1-4
      - name: custom-metrics-autoscaler.v2.14.1-467
        version: 2.14.1-467
      - name: custom-metrics-autoscaler.v2.14.1-454
        version: 2.14.1-454
      - name: custom-metrics-autoscaler.v2.13.1-427
        version: 2.13.1-427
      - name: custom-metrics-autoscaler.v2.12.1-394
        version: 2.12.1-394
      - name: custom-metrics-autoscaler.v2.11.2-322
        version: 2.11.2-322
      - name: custom-metrics-autoscaler.v2.11.2-311
        version: 2.11.2-311
      - name: custom-metrics-autoscaler.v2.10.1-267
        version: 2.10.1-267
      name: stable
    defaultChannel: stable
    packageName: openshift-custom-metrics-autoscaler-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Fujitsu
      provider-url: https://www.postgresql.fastware.com/
    name: fujitsu-enterprise-postgres-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fujitsu-enterprise-postgres-operator.v5.1.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPAction",
                "metadata": {
                  "name": "new-fep-action"
                },
                "spec": {
                  "fepAction": {
                    "args": [
                      "new-fep-sts-0",
                      "new-fep-sts-1"
                    ],
                    "type": "reload"
                  },
                  "sysExtraEvent": true,
                  "sysExtraLogging": false,
                  "targetClusterName": "new-fep"
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPExporter",
                "metadata": {
                  "name": "new-fep-exporter"
                },
                "spec": {
                  "fepExporter": {
                    "exporterLogLevel": "error",
                    "fepClusterList": [
                      "new-fep1"
                    ],
                    "image": {
                      "pullPolicy": "IfNotPresent"
                    },
                    "mcSpec": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "700Mi"
                      },
                      "requests": {
                        "cpu": "200m",
                        "memory": "512Mi"
                      }
                    },
                    "restartRequired": false,
                    "sysExtraEvent": true,
                    "sysExtraLogging": false,
                    "userCustomQueries": "usr_example:\n  query: \"SELECT EXTRACT(EPOCH FROM (now() - pg_last_xact_replay_timestamp())) as lag\"\n  master: true\n  metrics:\n    - lag:\n        usage: \"GAUGE\"\n        description: \"Replication lag behind master in seconds\""
                  }
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPLogging",
                "metadata": {
                  "name": "new-fep-logging"
                },
                "spec": {
                  "fepLogging": {
                    "image": {
                      "pullPolicy": "IfNotPresent"
                    },
                    "mcSpec": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "700Mi"
                      },
                      "requests": {
                        "cpu": "200m",
                        "memory": "512Mi"
                      }
                    },
                    "restartRequired": false,
                    "sysExtraEvent": true,
                    "sysExtraLogging": false
                  }
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPPgpool2",
                "metadata": {
                  "name": "new-fep-pgpool2"
                },
                "spec": {
                  "count": 2,
                  "customhba": "local   all         all                               trust\nhost    all         all         127.0.0.1/32          trust\nhost    all         all         ::1/128               trust\n",
                  "customlogsize": "128Mi",
                  "customparams": "listen_addresses = '*'\npcp_listen_addresses = '*'\nnum_init_children = 32\nreserved_connections = 0\nenable_pool_hba = off\nallow_clear_text_frontend_auth = off\nauthentication_timeout = 80\nbackend_weight0 = 1\nbackend_weight1 = 1\nbackend_flag0 = 'ALWAYS_PRIMARY'\nbackend_flag1 = 'DISALLOW_TO_FAILOVER'\nconnection_cache = on\nmax_pool = 4\nlisten_backlog_multiplier = 2\nserialize_accept = off\nchild_life_time = 300\nclient_idle_limit = 0\nchild_max_connections = 0\nconnection_life_time = 0\nreset_query_list = 'ABORT; DISCARD ALL'\nclient_min_messages = info\nlog_min_messages = debug1\nlog_statement = on\nlog_per_node_statement = on\nlog_client_messages = on\nlog_hostname = on\nlog_connections = on\nlog_line_prefix = '%t: pid %p: '\nload_balance_mode = on\nignore_leading_white_space = on\nwhite_function_list = ''\nblack_function_list = 'currval,lastval,nextval,setval'\nblack_query_pattern_list = ''\ndatabase_redirect_preference_list = ''\napp_name_redirect_preference_list = ''\nallow_sql_comments = off\ndisable_load_balance_on_write = 'transaction'\nstatement_level_load_balance = on\nsr_check_period = 0\nsr_check_user = 'postgres'\ndelay_threshold = 0\nlog_standby_delay = 'none'\nssl = on\nssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL'\nssl_prefer_server_ciphers = off\nssl_ecdh_curve = 'prime256v1'\nssl_dh_params_file = ''\nrelcache_expire = 0\nrelcache_size = 256\ncheck_temp_table = catalog\ncheck_unlogged_table = on\nenable_shared_relcache = off\nrelcache_query_target = primary\nwd_port0 = 9000\nfailover_on_backend_error = off\n",
                  "custompcp": "none",
                  "customsslcacert": "none",
                  "customsslcert": "-----BEGIN CERTIFICATE-----\nMIIDTzCCAjegAwIBAgIUYssQ8I74US5g+1+Z7CHuaDgkZnEwDQYJKoZIhvcNAQEL\nBQAwNzEQMA4GA1UECgwHRnVqaXRzdTEjMCEGA1UEAwwaRkVQIFJvb3QgQ0EgZm9y\nIEt1YmVybmV0ZXMwHhcNMjEwMjA2MDM1MjI4WhcNMzEwMjA0MDM1MjI4WjA3MRAw\nDgYDVQQKDAdGdWppdHN1MSMwIQYDVQQDDBpGRVAgUm9vdCBDQSBmb3IgS3ViZXJu\nZXRlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMs97gUF0xkUzCgL\n7MiiDju9ySr/ziwjvcYU7jA9ML+SLmftMs3HtcYbAmSntqI+MDBSR/FAJTOoytuT\npV+mCFcGj2YAjDpliHPeNcUpbryy4YMChF3+MovkIwGCksxo5rhiWhGmoBYpA48P\n4Xe8SPlzqMzhFvNeKzyiUhvjutS2Y1Ss38lsTaurFPx64vQ2PaC54XzdwMptXtpb\ntYmWSzCpJWwxZ6lF3vitdA2w0tnBWNyctAd0+RIM/fvArxiIqseAux9t0uogm5to\nlRIhvekuxOpXBPEqtIYQ4j9XUW2JH8vUDnzPkPvjrq+A3Ug8OyyfGVrW7+VYXozu\nc4aP7P0CAwEAAaNTMFEwHQYDVR0OBBYEFBzCutQ7S74WEhS5V2sNEJBGyLpmMB8G\nA1UdIwQYMBaAFBzCutQ7S74WEhS5V2sNEJBGyLpmMA8GA1UdEwEB/wQFMAMBAf8w\nDQYJKoZIhvcNAQELBQADggEBAMDwD85RAaWEBptFgLzKw+9xEUy1vcZaonAuA1qc\nT342XTueyAugxkC11HwdCGgGS34VyctfMGqj4AW6pA2ez4tLrbOps4DmV4sw8uBL\n8pgRDgfly3ob9FEg2wa0hmrwX9jH5Bt4vySUE2785uPAqaspT2UNtTBxS85BUi1T\nsKId2Rtil6an281Z81wyWVI6Jm2D4MG0mbsiGcTPlCtdg/UljvDYymXlAvd4vNhl\nk9hDa13TgDqJKgKdTIcmZoNQdpEVgFcO0h9AEUy5AuLqxHq60dLfZ6ESGPlMI7Lm\ni4PzYbCnBmOe+7TnHcPSyrnehs66Ik+oifRd82eYS7vKjFw=\n-----END CERTIFICATE-----",
                  "customsslkey": "none",
                  "fepclustername": "new-fep",
                  "imagePullPolicy": "IfNotPresent",
                  "limits": {
                    "cpu": "400m",
                    "memory": "512Mi"
                  },
                  "requests": {
                    "cpu": "200m",
                    "memory": "256Mi"
                  },
                  "serviceport": 9999,
                  "statusport": 9898
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPRestore",
                "metadata": {
                  "name": "new-fep-restore"
                },
                "spec": {
                  "fromFEPcluster": "new-fep",
                  "imagePullPolicy": "IfNotPresent",
                  "mcSpec": {
                    "limits": {
                      "cpu": "200m",
                      "memory": "300Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "200Mi"
                    }
                  },
                  "restoretype": "latest",
                  "sysExtraEvent": true,
                  "sysExtraLogging": false,
                  "toFEPcluster": "new-fep-2"
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v2",
                "kind": "FEPCluster",
                "metadata": {
                  "name": "new-fep"
                },
                "spec": {
                  "fep": {
                    "customAnnotations": {
                      "allDeployments": {}
                    },
                    "forceSsl": true,
                    "image": {
                      "pullPolicy": "IfNotPresent"
                    },
                    "instances": 1,
                    "mcSpec": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "700Mi"
                      },
                      "requests": {
                        "cpu": "200m",
                        "memory": "512Mi"
                      }
                    },
                    "podAntiAffinity": false,
                    "podDisruptionBudget": false,
                    "servicePort": 27500,
                    "syncMode": "off",
                    "sysExtraEvent": true,
                    "sysExtraLogging": false,
                    "usePodName": true
                  },
                  "fepChildCrVal": {
                    "backup": {
                      "image": {
                        "pullPolicy": "IfNotPresent"
                      },
                      "mcSpec": {
                        "limits": {
                          "cpu": 0.2,
                          "memory": "300Mi"
                        },
                        "requests": {
                          "cpu": 0.1,
                          "memory": "200Mi"
                        }
                      },
                      "pgbackrestParams": "# if log volume is not defined, log_directory should be\n# changed to '/database/userdata/data/log'\n[global]\nrepo1-retention-full=7\nrepo1-retention-full-type=time\nlog-path=/database/log/backup\n",
                      "postScript": " ",
                      "preScript": " ",
                      "schedule": {
                        "num": 2
                      },
                      "schedule1": {
                        "schedule": "15 0 * * 0",
                        "type": "full"
                      },
                      "schedule2": {
                        "schedule": "15 0 * * 1-6",
                        "type": "incr"
                      },
                      "schedule3": {
                        "schedule": " ",
                        "type": " "
                      },
                      "schedule4": {
                        "schedule": " ",
                        "type": " "
                      },
                      "schedule5": {
                        "schedule": " ",
                        "type": " "
                      }
                    },
                    "customPgAudit": "# define pg audit custom params here to override defaults.\n# if log volume is not defined, log_directory should be\n# changed to '/database/userdata/data/log'\n[output]\nlogger = 'auditlog'\nlog_directory = '/database/log/audit'\nlog_truncate_on_rotation = on\nlog_filename = 'pgaudit-%a.log'\nlog_rotation_age = 1d\nlog_rotation_size = 0\n[rule]\n",
                    "customPgHba": "# define pg_hba custom rules here to be merged with default rules.\n# TYPE     DATABASE        USER        ADDRESS        METHOD\n",
                    "customPgParams": "# define custom postgresql.conf parameters below to override defaults.\n# Current values are as per default FEP deployment\n# If you add a library to shared_preload_libraries, add it after the default value.\n# fsep_operator_security is available in FEP15 and later container images.\nshared_preload_libraries='pgx_datamasking,pg_prewarm,pg_stat_statements,fsep_operator_security'\nsession_preload_libraries='pg_prewarm'\nmax_prepared_transactions = 100\nmax_worker_processes = 30\nmax_connections = 100\nwork_mem = 1MB\nmaintenance_work_mem = 12MB\nshared_buffers = 128MB\neffective_cache_size = 384MB\ncheckpoint_completion_target = 0.8\n# tcp parameters\ntcp_keepalives_idle = 30\ntcp_keepalives_interval = 10\ntcp_keepalives_count = 3\n# logging parameters in default fep installation\n# if log volume is not defined, log_directory should be\n# changed to '/database/userdata/data/log'\nlog_directory = '/database/log'\nlog_filename = 'logfile-%a.log'\nlog_file_mode = 0600\nlog_truncate_on_rotation = on\nlog_rotation_age = 1d\nlog_rotation_size = 0\nlog_checkpoints = on\nlog_line_prefix = '%e %t [%p]: [%l-1] user=%u,db=%d,app=%a,client=%h'\nlog_lock_waits = on\nlog_autovacuum_min_duration = 60s\nlogging_collector = on\npgaudit.config_file='/opt/app-root/src/pgaudit-cfg/pgaudit.conf'\nlog_replication_commands = on\nlog_min_messages = WARNING\nlog_destination = csvlog\n# wal_archive parameters in default fep installation\narchive_mode = on\narchive_command = 'pgbackrest --stanza=backupstanza --config=/database/userdata/pgbackrest.conf archive-push %p'\nwal_level = replica\nmax_wal_senders = 12\nwal_keep_segments = 64\ntrack_activities = on\ntrack_counts = on\npassword_encryption = 'md5'\n",
                    "storage": {
                      "archivewalVol": {
                        "size": "1Gi"
                      },
                      "backupVol": {
                        "size": "2Gi"
                      },
                      "dataVol": {
                        "size": "2Gi"
                      },
                      "logVol": {
                        "size": "1Gi"
                      },
                      "tablespaceVol": {
                        "size": "512Mi"
                      },
                      "walVol": {
                        "size": "1200Mi"
                      }
                    },
                    "sysUsers": {
                      "pgRewindPassword": "rewind_password",
                      "pgRewindUser": "rewind_user",
                      "pgdb": "mydb",
                      "pgpassword": "mydbpassword",
                      "pgreplpassword": "repluserpwd",
                      "pgrepluser": "repluser",
                      "pguser": "mydbuser",
                      "tdepassphrase": "tde-passphrase"
                    },
                    "systemCertificates": {
                      "cacrt": "-----BEGIN CERTIFICATE-----\nMIIDTzCCAjegAwIBAgIUYssQ8I74US5g+1+Z7CHuaDgkZnEwDQYJKoZIhvcNAQEL\nBQAwNzEQMA4GA1UECgwHRnVqaXRzdTEjMCEGA1UEAwwaRkVQIFJvb3QgQ0EgZm9y\nIEt1YmVybmV0ZXMwHhcNMjEwMjA2MDM1MjI4WhcNMzEwMjA0MDM1MjI4WjA3MRAw\nDgYDVQQKDAdGdWppdHN1MSMwIQYDVQQDDBpGRVAgUm9vdCBDQSBmb3IgS3ViZXJu\nZXRlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMs97gUF0xkUzCgL\n7MiiDju9ySr/ziwjvcYU7jA9ML+SLmftMs3HtcYbAmSntqI+MDBSR/FAJTOoytuT\npV+mCFcGj2YAjDpliHPeNcUpbryy4YMChF3+MovkIwGCksxo5rhiWhGmoBYpA48P\n4Xe8SPlzqMzhFvNeKzyiUhvjutS2Y1Ss38lsTaurFPx64vQ2PaC54XzdwMptXtpb\ntYmWSzCpJWwxZ6lF3vitdA2w0tnBWNyctAd0+RIM/fvArxiIqseAux9t0uogm5to\nlRIhvekuxOpXBPEqtIYQ4j9XUW2JH8vUDnzPkPvjrq+A3Ug8OyyfGVrW7+VYXozu\nc4aP7P0CAwEAAaNTMFEwHQYDVR0OBBYEFBzCutQ7S74WEhS5V2sNEJBGyLpmMB8G\nA1UdIwQYMBaAFBzCutQ7S74WEhS5V2sNEJBGyLpmMA8GA1UdEwEB/wQFMAMBAf8w\nDQYJKoZIhvcNAQELBQADggEBAMDwD85RAaWEBptFgLzKw+9xEUy1vcZaonAuA1qc\nT342XTueyAugxkC11HwdCGgGS34VyctfMGqj4AW6pA2ez4tLrbOps4DmV4sw8uBL\n8pgRDgfly3ob9FEg2wa0hmrwX9jH5Bt4vySUE2785uPAqaspT2UNtTBxS85BUi1T\nsKId2Rtil6an281Z81wyWVI6Jm2D4MG0mbsiGcTPlCtdg/UljvDYymXlAvd4vNhl\nk9hDa13TgDqJKgKdTIcmZoNQdpEVgFcO0h9AEUy5AuLqxHq60dLfZ6ESGPlMI7Lm\ni4PzYbCnBmOe+7TnHcPSyrnehs66Ik+oifRd82eYS7vKjFw=\n-----END CERTIFICATE-----",
                      "crt": "-----BEGIN CERTIFICATE-----\nMIIDUTCCAjmgAwIBAgIRAMocW3qMoHrD6qRvMPppMkMwDQYJKoZIhvcNAQELBQAw\nNzEQMA4GA1UECgwHRnVqaXRzdTEjMCEGA1UEAwwaRkVQIFJvb3QgQ0EgZm9yIEt1\nYmVybmV0ZXMwHhcNMjEwMjA2MDQzMjM2WhcNMjYwMjA1MDQzMjM2WjA/MRAwDgYD\nVQQKEwdGdWppdHN1MSswKQYDVQQDEyJGVUpJVFNVIEVudGVycHJpc2UgUG9zdGdy\nZXMgU2VydmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4AI33yvH\nZws+jta6qpV6wzJqF8odIfTIpCfbrVcUUtLFKJ1I2e4SceTKi6O3C/I1XuvWlpng\n5IO65+fQQLO06z1/AuQT78YUn/Wlm9x1aHVsv4ANB5JWWqDOjrRT3o7nRPGXfila\nbP0rGE2mJJcVR9nExJ3IeaktgT3sb8YlXvtchyYpmjdbfxabTz07ig0+6/cwKoRR\nxOK8Uf7f5euE0cI/490J6r5Rs4lgD8sIQNCUFlTFYvmAH7gcdssSFBt8NPlUATHE\nsoFmlW0DKCJWNhTLOht+s6L/1zwTHLjPG2pdkG6Wdgmu5H2pDml8CDNLDv98Aj7i\n+I5SRKKcVPlnuQIDAQABo1AwTjAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUH\nAwIwDAYDVR0TAQH/BAIwADAfBgNVHSMEGDAWgBQcwrrUO0u+FhIUuVdrDRCQRsi6\nZjANBgkqhkiG9w0BAQsFAAOCAQEAm5dxBoI9pScOCvRAchg4CprdRDSJb9K6yB3O\nnCAxnM47iHeXnY3WlnI388kHu8DU7O4ba1tJbGs3KY9KzioPk43pU12jWkO1onoF\n+mTDjx/Ef1cYWA9r5q/LtgTa6Q2sxV4O2x67QW82aAnaxO34dV5zWCPIvAoovZBV\nHRT+BgCg3r2vD1RGKK2nl1aYJtWhO1SZubam+VttdZ/vbM9oOJctxmImsEtBXjkY\nKteePdQtLL5o03JhyXWyRshCq+HMmKf2KgyY8gvydGcP4eLQdBWcW40LcnVq6UjT\n0kJycJEKngMVademq1ZWHGaiYB7hyT6GhgIcHUJ2cKrPgbEh1Q==\n-----END CERTIFICATE-----",
                      "key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEA4AI33yvHZws+jta6qpV6wzJqF8odIfTIpCfbrVcUUtLFKJ1I\n2e4SceTKi6O3C/I1XuvWlpng5IO65+fQQLO06z1/AuQT78YUn/Wlm9x1aHVsv4AN\nB5JWWqDOjrRT3o7nRPGXfilabP0rGE2mJJcVR9nExJ3IeaktgT3sb8YlXvtchyYp\nmjdbfxabTz07ig0+6/cwKoRRxOK8Uf7f5euE0cI/490J6r5Rs4lgD8sIQNCUFlTF\nYvmAH7gcdssSFBt8NPlUATHEsoFmlW0DKCJWNhTLOht+s6L/1zwTHLjPG2pdkG6W\ndgmu5H2pDml8CDNLDv98Aj7i+I5SRKKcVPlnuQIDAQABAoIBAFPQYKlOzw/+BA0b\nyMIUpdctIMb/54CR/xR0mVw1DbSjigNVPjHUQvB8Y1B2FAITQObgJO06bAv0QdWN\nRb0/v/yYiNJDFjaLjaIAHlO/2+oWrXbFaZqgpVDJhB+e1xaZr2x7XGxm+p925k30\nl6pvIRY+I8JRKvZiV1VZHwL/R3JOtPr++xMZtLVjVOI+f+ySqJ+TZHuAjm49EKxj\ncEmmJ28b7QcziXsvKy00f+zbqLIBKXQdZAFU5eEr1BsDRXdRW+Kf0XIvftuy4BJZ\nvoKT+VGhEvF/qysswL4+6IAO6tpuYnnM0Y2d3sOGoWPkTcQK0MekYKzL/WmtCjNs\n9hodJtECgYEA5EWyhEOf4uOKe5TDp697UCUvXLoOR58FDe/S8XNvScn29jjOkqIg\nOMoqo9xAkJTNTzqn5UUdt1x/pgM2NxlPLFijrc0zQlX3SoOO2ryDd9WNi7YKtN16\nKJqa536WeZu2OEbuAZ+S3GALVy1RPeTNPnUOmKnF06DjDUGzLNCZy10CgYEA+zfw\n952DWuz1U0Z4wvAEqqcgUKXPKrkTXV/iUnjkDkrLYVr0ZofDNTXrdHl+UedFmaOC\ncieZn6DNhcdz5tKtyysGMH3g/qs9PfoGUngvcXsy0Egk04l3x1jc8TTCLqXZXYaQ\nHMsx51n+R58oncPtzYSUOr9qQ6PbC2CstTbFJA0CgYEAjGEsUliAB/jknfEzjXjG\nPdhQUxb8VyE864Az2lah9t/kJzFyIAziAeqZ5GE7t247AGFTBRTHHI8e1Qoemi3P\nWbc9GVIbFs1lIYbcIDpUIyrKPEP8O5QEXtoNLxXTFgAjRGKiVY87spjCAJ+W2ZhO\ne/1it5GYXfgQCYQA2yuBmOUCgYANRkR2YR1axaCk+NlSu6oTdmdPu6M5x7PNQE7O\nOtMaKjua9lppvIzFGAdMDUtueoEEAE7ZR1xnwfB6PDLUpJdIYAqgr1YfPt8qkjaZ\nTv56yZ7CwL0pbF8m6nwqRrZoDp1wwraEvvvxFKFKGY/k3kCHlpTakdjEoDjn3gDi\nRnWeVQKBgCEneMSzucei5LRppRtRaJw/Btll8qlPMlX3W7dxQ3cLwpmLOn0m51Fp\nPIZ44zYK8R6fu4+/sSrlfaIg86Ugeufp6YNxyNROKxUGza5vDIu5OftwWtBeg+UK\nZ8lLWNdX6pp7WMujmF3H1DrkBbauYMUKZ4UxUYtelgHERMePIxwb\n-----END RSA PRIVATE KEY-----"
                    }
                  }
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "false"
          containerImage: quay.io/fujitsu/fujitsu-enterprise-postgres-operator@sha256:6b6ffb32a23a386cc4ea5cf05e92809ebc3774cda1d3df0044ce2d5ee5c3e1a8
          createdAt: "2023-09-12"
          description: OpenShift Operator for Fujitsu Enterprise Postgres
          olm.skipRange: <5.1.7
          operators.operatorframework.io/builder: operator-sdk-v1.25.4-ocp
          operators.operatorframework.io/internal-objects: '["fepautoscales.fep.fujitsu.io","fepconfigs.fep.fujitsu.io","fepusers.fep.fujitsu.io","fepcerts.fep.fujitsu.io","fepvolumes.fep.fujitsu.io","fepbackups.fep.fujitsu.io"]'
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          support: pgtechenquiry@fast.au.fujitsu.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: FEPAction
            name: fepactions.fep.fujitsu.io
            version: v1
          - kind: FEPAutoscale
            name: fepautoscales.fep.fujitsu.io
            version: v1
          - kind: FEPBackup
            name: fepbackups.fep.fujitsu.io
            version: v1
          - kind: FEPCert
            name: fepcerts.fep.fujitsu.io
            version: v1
          - kind: FEPCluster
            name: fepclusters.fep.fujitsu.io
            version: v2
          - kind: FEPConfig
            name: fepconfigs.fep.fujitsu.io
            version: v1
          - kind: FEPExporter
            name: fepexporters.fep.fujitsu.io
            version: v1
          - kind: FEPLogging
            name: feploggings.fep.fujitsu.io
            version: v1
          - kind: FEPPgpool2Cert
            name: feppgpool2certs.fep.fujitsu.io
            version: v1
          - kind: FEPPgpool2
            name: feppgpool2s.fep.fujitsu.io
            version: v1
          - kind: FEPRestore
            name: feprestores.fep.fujitsu.io
            version: v1
          - kind: FEPUpgrade
            name: fepupgrades.fep.fujitsu.io
            version: v1
          - kind: FEPUser
            name: fepusers.fep.fujitsu.io
            version: v1
          - kind: FEPVolume
            name: fepvolumes.fep.fujitsu.io
            version: v1
        description: "Fujitsu Enterprise Postgres 15 delivers an enterprise-grade
          PostgreSQL on OpenShift Container Platform.\n\nThis solution provides the
          flexibility of a hybrid cloud solution while delivering an enhanced distribution
          of PostgreSQL to support enterprise-level workloads and provide improved
          deployment and management, availability, performance, data governance and
          security.  \n\nAvailable as a multi-architecture container built for both
          amd64, s390x and ppc64le.\n\nThe download and Use of the Product is strictly
          subject to the terms of the End User License Agreement with Fujitsu Limited
          found at https://www.fast.fujitsu.com/fujitsu-enterprise-postgres-license-agreements.
          Where the Product that has been embedded as a whole or part into a third
          party program, only Authorised Customers may download and use the Product.\n"
        displayName: Fujitsu Enterprise Postgres Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - Fujitsu
        - fep
        links:
        - name: Fujitsu Enterprise Postgres
          url: https://www.postgresql.fastware.com/
        maintainers:
        - email: pgtechenquiry@au.fujitsu.com
          name: Fujitsu
        maturity: stable
        provider:
          name: Fujitsu
          url: https://www.postgresql.fastware.com/
        relatedImages:
        - quay.io/fujitsu/fujitsu-enterprise-postgres-exporter@sha256:63368e2e057387e7e281afebcea9c491ec4fd90c719f792557667a277ffe1072
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-backup@sha256:4359f12dbccd66a0d7b2ef8b553e8122c64db2c34acb179519bf2f30f1ab0bbe
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-pgpool2@sha256:8bf6989725663cb1f4a4a7ce2f319801ed9386ca99aad09644d93f88390c0f24
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-restore@sha256:ad5e1896216f68c2d7a3aa32cdce75c4ab76b419fe52b019f4e0d77bea1f89fd
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-pgpool2@sha256:a4f059404c649c96bbd692d1c579d937b4eb246b5205565fc88ce11042633e79
        - quay.io/fujitsu/fujitsu-enterprise-postgres-fluentd@sha256:a5f5353fd4a66b99683635a1bb117c0cd566a900f83d52f65536bc7b1d7c7a2f
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-upgrade@sha256:6dae7c8eb44e0014e47b002460869cba213ce465f5e31a3b703e4e8a1272d00c
        - quay.io/fujitsu/fujitsu-enterprise-postgres-cronjob@sha256:7dc349dacb3aea9a836db40e0827155df39756c7fe3a523c05ed46a9c5514f2c
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-server@sha256:75ff0e603f98f9ca515b245e642cc34e463f2db50298c0f1eaf82876657dafec
        - quay.io/fujitsu/fujitsu-enterprise-postgres-operator@sha256:6b6ffb32a23a386cc4ea5cf05e92809ebc3774cda1d3df0044ce2d5ee5c3e1a8
        - quay.io/fujitsu/fujitsu-enterprise-postgres-fluentbit@sha256:7f791b5a0df90fd89b83abb973ec95d5741899c9bb271d452d30bfac185185cb
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-backup@sha256:0051a05af956cbc9b9ae1eb6b0014291fd6210f9127a6d7ec1ec5e73d68a45ff
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-exporter@sha256:1723eb674319ae28f65e3b175cee1317d9474bbde51a50f7bb662add811812a1
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-pgpool2@sha256:942e41d3c42261cffe67bb3202dd688fdd83f26a8c4dfbee9d39c8892be8c051
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-restore@sha256:f35b9a96176d8905860d5ad859b06ce39637fcf562357822f8263ce6ef4f809c
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-upgrade@sha256:3c9a0a27c24ea1a0d862b6e9e38d2cb83575e32df7d7413c07c919ca6da62f11
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-server@sha256:399f60a29543cc609ce8f18d40da90d716bf43e0b0428121009ef11fd9ae2b1f
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-restore@sha256:990539446864b280e5c84aa4cf626d767fd1ca5cfa5fceed3555452138cbadc1
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-server@sha256:a38fea06de9d2f3382fa6ea7500ba393563a001a397582ff0d73c8a2ba216745
        - registry.connect.redhat.com/fujitsu-postgres/fujitsu-enterprise-postgres-operator-bundle@sha256:a277ed7be25798d22310b191bb1e783b7439fc8b78dd0ec30d73ba31d6058f32
        - quay.io/fujitsu/fujitsu-enterprise-postgres-utils@sha256:0643f0bf4c8d5aa7ed898840b1578b627adf90c129f96f21953f28c73dad0c65
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-backup@sha256:0eb3f39f564ac90e2a04191ccdc49badc1ef85296860ed7d1ff98e3ab32996c8
        version: 5.1.7
      entries:
      - name: fujitsu-enterprise-postgres-operator.v5.1.7
        version: 5.1.7
      name: stable
    defaultChannel: stable
    packageName: fujitsu-enterprise-postgres-operator
    provider:
      name: Fujitsu
      url: https://www.postgresql.fastware.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Eclipse Foundation
      provider-url: ""
    name: eclipse-che
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eclipse-che.v7.113.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "org.eclipse.che/v1",
                "kind": "CheCluster",
                "metadata": {
                  "name": "eclipse-che",
                  "namespace": "eclipse-che"
                },
                "spec": {
                  "auth": {
                    "identityProviderURL": "",
                    "oAuthClientName": "",
                    "oAuthSecret": ""
                  },
                  "database": {
                    "externalDb": false
                  },
                  "k8s": {
                    "ingressDomain": null,
                    "tlsSecretName": null
                  },
                  "metrics": {
                    "enable": true
                  },
                  "server": {
                    "externalDevfileRegistries": [
                      {
                        "url": "https://registry.devfile.io"
                      }
                    ],
                    "externalDevfileRegistry": true,
                    "externalPluginRegistry": true,
                    "workspaceNamespaceDefault": "<username>-che"
                  },
                  "storage": {
                    "pvcStrategy": "common"
                  }
                }
              },
              {
                "apiVersion": "org.eclipse.che/v2",
                "kind": "CheCluster",
                "metadata": {
                  "name": "eclipse-che",
                  "namespace": "eclipse-che"
                },
                "spec": {
                  "components": {
                    "devfileRegistry": {
                      "disableInternalRegistry": true,
                      "externalDevfileRegistries": [
                        {
                          "url": "https://registry.devfile.io"
                        }
                      ]
                    },
                    "pluginRegistry": {
                      "disableInternalRegistry": true
                    }
                  },
                  "containerRegistry": {},
                  "devEnvironments": {},
                  "gitServices": {},
                  "networking": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/eclipse/che-operator@sha256:5d52236cfb5dd97b539737092458535d98386c083c17640894465aa065dea06d
          createdAt: "2025-12-19T05:37:01Z"
          description: A Kube-native development solution that delivers portable and
            collaborative developer workspaces.
          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: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/eclipse-che/che-operator
          support: Eclipse Foundation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              The `CheCluster` custom resource allows defining and managing Eclipse Che server installation.
              Based on these settings, the  Operator automatically creates and maintains several ConfigMaps:
              `che`, `plugin-registry` that will contain the appropriate environment variables
              of the various components of the installation. These generated ConfigMaps must NOT be updated manually.
            displayName: Eclipse Che instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v2
          - description: The `CheCluster` custom resource allows defining and managing
              a Che server installation
            displayName: Eclipse Che instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v1
        description: |
          A collaborative Kubernetes-native development solution that delivers OpenShift workspaces and in-browser IDE for rapid cloud application development.
          This operator installs the Plugin and Devfile registries, Dashboard, Gateway and the Eclipse Che server, and configures these services.
          OpenShift OAuth is used directly for authentication. TLS mode is on.

          ## How to Install
          Press the **Install** button, choose the channel and the upgrade strategy, and wait for the **Installed** Operator status.
          When the operator is installed, create a new Custom Resource (CR) of Kind CheCluster (click the **Create New** button).
          The CR spec contains all defaults. You can start using Eclipse Che when the CR status is set to **Available**, and you see a URL to Eclipse Che.

          ## Defaults
          By default, the operator deploys Eclipse Che with:
          * 10Gi storage
          * Auto-generated passwords
          * Bundled Plugin and Devfile registries

          Use `oc edit checluster/eclipse-che -n eclipse-che` to update Eclipse Che default installation options.
          See more in the [Installation guide](https://www.eclipse.org/che/docs/stable/administration-guide/configuring-che/).

          ### Certificates
          Operator uses a default router certificate to secure Eclipse Che routes.
          Follow the [guide](https://www.eclipse.org/che/docs/stable/administration-guide/importing-untrusted-tls-certificates/)
          to import certificates into Eclipse Che.
        displayName: Eclipse Che
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eclipse che
        - workspaces
        - devtools
        - developer
        - ide
        - java
        links:
        - name: Product Page
          url: https://www.eclipse.org/che
        - name: Documentation
          url: https://www.eclipse.org/che/docs
        - name: Operator GitHub Repo
          url: https://github.com/eclipse-che/che-operator
        maintainers:
        - email: abazko@redhat.com
          name: Anatolii Bazko
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Eclipse Foundation
        relatedImages:
        - quay.io/eclipse/che-operator@sha256:5d52236cfb5dd97b539737092458535d98386c083c17640894465aa065dea06d
        - quay.io/brancz/kube-rbac-proxy@sha256:738c854322f56d63ebab75de5210abcdd5e0782ce2d30c0ecd4620f63b24694d
        - quay.io/che-incubator/che-code@sha256:6b4ff425d9fd68f6121def1483ac374aba0cf3e1669d9d2b6628100a128292b4
        - quay.io/che-incubator/che-code-server@sha256:2093baab1a73e9682f5892f80582481abfbef99d744472ee6098e2d82fb2899f
        - quay.io/oauth2-proxy/oauth2-proxy@sha256:dcb6ff8dd21bf3058f6a22c6fa385fa5b897a9cd3914c88a2cc2bb0a85f8065d
        - quay.io/community-operator-pipeline-prod/eclipse-che@sha256:bac399fad1dff8d939d9f5498c30c7e1291733643b912ac3c0c10ca6605f23bb
        - quay.io/eclipse/che-server@sha256:dc3d452108c4f02b9c07717aeb0510652fae25ef1ee3de49e7d5d2069e9cc4e1
        - quay.io/devfile/universal-developer-image@sha256:69ed3c6d08d37134b7b6651fd5b9666a1e5e2f6d602285a8e40512cbb1615f6a
        - quay.io/eclipse/che-plugin-registry@sha256:e941647b1622c586bb9f60b931dbf28a290308757d2e8529eceecae0d80625d6
        - quay.io/che-incubator/configbump@sha256:99253a669c76fe53d05801e1dfaa03095e55e6d49919183e30386811e0e48bbb
        - quay.io/che-incubator/header-rewrite-proxy@sha256:bd7873b8feef35f218f54c6251ea224bea2c8bf202a328230019a0ba2941245d
        - quay.io/eclipse/che-dashboard@sha256:36e4af6d9aeb8c59a1c7c372a3767f59af8785790df2a00aadd6fd3187671fda
        - quay.io/che-incubator/che-idea-dev-server@sha256:ee6a854a7a9af9381551802b6848f82f11b37443552ad347bffe5bd3032e2f12
        - quay.io/che-incubator/che-code-server@sha256:357c95297ce2182ef0a792038ea122075fdeb6c8e835099be09e8d4f105eac2a
        - quay.io/eclipse/che--traefik@sha256:4cf907247939b5d20bf4eff73abd21cb413c339600dde76dbc94a874b2578a27
        - quay.io/eclipse/che-tls-secret-creator@sha256:cbb2fd8ce903d822377f2093af1aa2543672ed8c516d607a7a9dd857379dac5d
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:354fc75eb7a21a934381e93d03ef9d42bc2c8ae8989fdcacecfb39b863b96ced
        - quay.io/openshift/origin-oauth-proxy@sha256:870bfe92a4663720775c0dfe5728ecbb10a17f0644eef5f57276ec135034c6a1
        - quay.io/che-incubator/che-code-sshd@sha256:82a4ef390d7d0bc8ebd0cbb7206707ae3ab68e9936b531c3c716cce46fca404a
        - quay.io/che-incubator/che-code@sha256:69822e636795efde3655c279e045f48a59333cb0fc83a0694cf8b0dec2b875e2
        version: 7.113.0
      entries:
      - name: eclipse-che.v7.113.0
        version: 7.113.0
      - name: eclipse-che.v7.112.0
        version: 7.112.0
      - name: eclipse-che.v7.111.0
        version: 7.111.0
      - name: eclipse-che.v7.110.0
        version: 7.110.0
      - name: eclipse-che.v7.109.0
        version: 7.109.0
      - name: eclipse-che.v7.108.0
        version: 7.108.0
      - name: eclipse-che.v7.106.0
        version: 7.106.0
      - name: eclipse-che.v7.105.0
        version: 7.105.0
      - name: eclipse-che.v7.104.0
        version: 7.104.0
      - name: eclipse-che.v7.103.0
        version: 7.103.0
      - name: eclipse-che.v7.102.0
        version: 7.102.0
      - name: eclipse-che.v7.101.0
        version: 7.101.0
      - name: eclipse-che.v7.100.0
        version: 7.100.0
      - name: eclipse-che.v7.99.0
        version: 7.99.0
      - name: eclipse-che.v7.98.0
        version: 7.98.0
      - name: eclipse-che.v7.97.0
        version: 7.97.0
      - name: eclipse-che.v7.96.0
        version: 7.96.0
      - name: eclipse-che.v7.95.0
        version: 7.95.0
      - name: eclipse-che.v7.94.0
        version: 7.94.0
      - name: eclipse-che.v7.93.0
        version: 7.93.0
      - name: eclipse-che.v7.92.0
        version: 7.92.0
      - name: eclipse-che.v7.91.0
        version: 7.91.0
      - name: eclipse-che.v7.90.0
        version: 7.90.0
      - name: eclipse-che.v7.89.0
        version: 7.89.0
      - name: eclipse-che.v7.88.0
        version: 7.88.0
      - name: eclipse-che.v7.87.0
        version: 7.87.0
      - name: eclipse-che.v7.86.0
        version: 7.86.0
      - name: eclipse-che.v7.85.0
        version: 7.85.0
      - name: eclipse-che.v7.84.0
        version: 7.84.0
      - name: eclipse-che.v7.83.0
        version: 7.83.0
      - name: eclipse-che.v7.82.0
        version: 7.82.0
      - name: eclipse-che.v7.81.0
        version: 7.81.0
      - name: eclipse-che.v7.80.0
        version: 7.80.0
      - name: eclipse-che.v7.79.0
        version: 7.79.0
      - name: eclipse-che.v7.78.0
        version: 7.78.0
      - name: eclipse-che.v7.77.0
        version: 7.77.0
      - name: eclipse-che.v7.76.0
        version: 7.76.0
      - name: eclipse-che.v7.75.0
        version: 7.75.0
      - name: eclipse-che.v7.74.0
        version: 7.74.0
      - name: eclipse-che.v7.73.0
        version: 7.73.0
      - name: eclipse-che.v7.72.0
        version: 7.72.0
      - name: eclipse-che.v7.71.0
        version: 7.71.0
      - name: eclipse-che.v7.70.0
        version: 7.70.0
      - name: eclipse-che.v7.69.0
        version: 7.69.0
      - name: eclipse-che.v7.68.0
        version: 7.68.0
      - name: eclipse-che.v7.67.0
        version: 7.67.0
      - name: eclipse-che.v7.66.0
        version: 7.66.0
      - name: eclipse-che.v7.65.0
        version: 7.65.0
      - name: eclipse-che.v7.64.0
        version: 7.64.0
      - name: eclipse-che.v7.63.0
        version: 7.63.0
      - name: eclipse-che.v7.62.0
        version: 7.62.0
      - name: eclipse-che.v7.61.0
        version: 7.61.0
      - name: eclipse-che.v7.60.1
        version: 7.60.1
      - name: eclipse-che.v7.60.0
        version: 7.60.0
      - name: eclipse-che.v7.59.0
        version: 7.59.0
      - name: eclipse-che.v7.58.0
        version: 7.58.0
      - name: eclipse-che.v7.57.0
        version: 7.57.0
      - name: eclipse-che.v7.56.0
        version: 7.56.0
      - name: eclipse-che.v7.55.0
        version: 7.55.0
      - name: eclipse-che.v7.54.0
        version: 7.54.0
      - name: eclipse-che.v7.53.0
        version: 7.53.0
      - name: eclipse-che.v7.52.0
        version: 7.52.0
      - name: eclipse-che.v7.51.0
        version: 7.51.0
      - name: eclipse-che.v7.50.0
        version: 7.50.0
      - name: eclipse-che.v7.49.0
        version: 7.49.0
      - name: eclipse-che.v7.48.1
        version: 7.48.1
      - name: eclipse-che.v7.47.0
        version: 7.47.0
      - name: eclipse-che.v7.46.0
        version: 7.46.0
      - name: eclipse-che.v7.45.0
        version: 7.45.0
      - name: eclipse-che.v7.44.0
        version: 7.44.0
      - name: eclipse-che.v7.42.0
        version: 7.42.0
      - name: eclipse-che.v7.41.2
        version: 7.41.2
      - name: eclipse-che.v7.41.1
        version: 7.41.1
      - name: eclipse-che.v7.41.0
        version: 7.41.0
      - name: eclipse-che.v7.40.2
        version: 7.40.2
      - name: eclipse-che.v7.40.1
        version: 7.40.1
      name: stable
    defaultChannel: stable
    packageName: eclipse-che
    provider:
      name: Eclipse Foundation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: dapr.io
      provider-url: https://dapr.io
    name: dapr-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dapr-kubernetes-operator.v0.0.12
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.dapr.io/v1alpha1",
                "kind": "DaprControlPlane",
                "metadata": {
                  "name": "dapr-control-plane",
                  "namespace": "dapr-system"
                },
                "spec": {
                  "values": {}
                }
              },
              {
                "apiVersion": "operator.dapr.io/v1alpha1",
                "kind": "DaprCruiseControl",
                "metadata": {
                  "name": "dapr-cruise-control",
                  "namespace": "dapr-system"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.dapr.io/v1alpha1",
                "kind": "DaprInstance",
                "metadata": {
                  "name": "dapr-instance",
                  "namespace": "dapr-system"
                },
                "spec": {
                  "values": {}
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          containerImage: docker.io/daprio/kubernetes-operator@sha256:da599a273943bf28812314a11df1052411237dd1887edf0fe6104c5857f439b0
          createdAt: "2025-10-06T18:47:59Z"
          description: Dapr Control Plane Operator
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/dapr/kubernetes-operator
          support: contact@dapr.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DaprControlPlane is the Schema for the Dapr ControlPlane
              API.
            displayName: DaprControlPlane
            kind: DaprControlPlane
            name: daprcontrolplanes.operator.dapr.io
            version: v1alpha1
          - kind: DaprCruiseControl
            name: daprcruiscontrols.operator.dapr.io
            version: v1alpha1
          - description: DaprInstance is the Schema for the Dapr Instance API.
            displayName: DaprInstance
            kind: DaprInstance
            name: daprinstances.operator.dapr.io
            version: v1alpha1
        description: Dapr Control Plane Operator
        displayName: Dapr Control Plane Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dapr
        links:
        - name: Dapr
          url: https://dapr.io
        - name: Dapr Kubernetes Operator
          url: https://github.com/dapr/kubernetes-operator
        maintainers:
        - email: lburgazzoli@gmail.com
          name: Luca Burgazzoli
        - email: salaboy@gmail.com
          name: Mauricio Salatino
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: dapr.io
          url: https://dapr.io
        relatedImages:
        - docker.io/daprio/kubernetes-operator@sha256:da599a273943bf28812314a11df1052411237dd1887edf0fe6104c5857f439b0
        - quay.io/community-operator-pipeline-prod/dapr-kubernetes-operator@sha256:3c1487eb881cdc825bd53f0f51eb92b180e8dafcae92a62dc616f1402625124b
        version: 0.0.12
      entries:
      - name: dapr-kubernetes-operator.v0.0.12
        version: 0.0.12
      - name: dapr-kubernetes-operator.v0.0.11
        version: 0.0.11
      - name: dapr-kubernetes-operator.v0.0.10
        version: 0.0.10
      - name: dapr-kubernetes-operator.v0.0.9
        version: 0.0.9
      - name: dapr-kubernetes-operator.v0.0.8
        version: 0.0.8
      - name: dapr-kubernetes-operator.v0.0.6
        version: 0.0.6
      - name: dapr-kubernetes-operator.v0.0.5
        version: 0.0.5
      - name: dapr-kubernetes-operator.v0.0.4
        version: 0.0.4
      - name: dapr-kubernetes-operator.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: dapr-kubernetes-operator
    provider:
      name: dapr.io
      url: https://dapr.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: raftt.io
      provider-url: https:///www.raftt.io
    name: raftt-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: raftt-operator.v1.25.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "raftt.io/v1beta1",
                "kind": "Raftt",
                "metadata": {
                  "name": "raftt",
                  "namespace": "raftt"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: quay.io/raftt/raftt-operator@sha256:73edc6d8416ee3815d7e59bb26c33e3d35d97cf1ceadd8fa457041be13e175ca
          createdAt: "2025-04-29T11:31:02Z"
          description: This operator installs and configures a Raftt instance
          features.operators.openshift.io/disconnected: "false"
          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"
          marketplace.openshift.io/remote-workflow: https://marketplace.redhat.com/en-us/operators/raftt-operator/pricing?utm_source=openshift_console
          marketplace.openshift.io/support-workflow: https://marketplace.redhat.com/en-us/operators/raftt-operator/support?utm_source=openshift_console
          operatorframework.io/suggested-namespace: raftt
          operators.openshift.io/valid-subscription: Raftt commercial license
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Raftt systems
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Raftt represents an installation of Raftt cluster controller
              & supporting services
            displayName: Raftt
            kind: Raftt
            name: raftts.raftt.io
            version: v1beta1
        description: |
          Raftt allows fast code iterations and debugging over complex Kubernetes environments.
          Raftt provides a localhost development experience for applications running on Kubernetes.
          You can use Raftt to orchestrate the environments for you, so you get the optimal development experience -
          iterations that take under a second, OOTB debugging of your code as it runs in the cluster, easy introspection, and more.
        displayName: Raftt
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dx
        - development
        - debugging
        links:
        - name: Raftt Operator
          url: https://raftt-operator.domain
        - name: Documentation
          url: https://docs.raftt.io
        maintainers:
        - email: ops@raftt.io
          name: Raftt
        maturity: alpha
        provider:
          name: raftt.io
          url: https:///www.raftt.io
        relatedImages:
        - quay.io/raftt/raftt-operator@sha256:73edc6d8416ee3815d7e59bb26c33e3d35d97cf1ceadd8fa457041be13e175ca
        - registry.connect.redhat.com/raftt/operator-bundle@sha256:7108686c168c35acd996e61a981bdd885b454837cf6823a48a28cdeeebbb0af9
        version: 1.25.2
      entries:
      - name: raftt-operator.v1.25.2
        version: 1.25.2
      name: alpha
    defaultChannel: alpha
    packageName: raftt-operator
    provider:
      name: raftt.io
      url: https:///www.raftt.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio Project
      provider-url: ""
    name: apicurito
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        - quay.io/apicurio/apicurito-operator:1.0.3
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: 1.0.x
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        - quay.io/apicurio/apicurito-operator:1.0.3
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: candidate
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/apicurio/apicurito-operator:1.0.3
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: latest
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/apicurio/apicurito-operator:1.0.3
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: latest
    packageName: apicurito
    provider:
      name: Apicurio Project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: www.redhat.com
    name: dpu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dpu-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "config.openshift.io/v1",
                "kind": "DpuOperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dpu-operator",
                    "app.kubernetes.io/instance": "dpuoperatorconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dpuoperatorconfig",
                    "app.kubernetes.io/part-of": "dpu-operator"
                  },
                  "name": "dpuoperatorconfig-sample"
                },
                "spec": {
                  "mode": "host"
                }
              },
              {
                "apiVersion": "config.openshift.io/v1",
                "kind": "ServiceFunctionChain",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dpu-operator",
                    "app.kubernetes.io/instance": "servicefunctionchain-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "servicefunctionchain",
                    "app.kubernetes.io/part-of": "dpu-operator"
                  },
                  "name": "servicefunctionchain-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-08-12T16:14:09Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-dpu-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DpuOperatorConfig is the Schema for the dpuoperatorconfigs
              API
            displayName: Dpu Operator Config
            kind: DpuOperatorConfig
            name: dpuoperatorconfigs.config.openshift.io
            version: v1
          - description: ServiceFunctionChain is the Schema for the servicefunctionchains
              API
            displayName: Service Function Chain
            kind: ServiceFunctionChain
            name: servicefunctionchains.config.openshift.io
            version: v1
        description: This operator will manage and configure data processing unit
          (DPUs) to be used in accelerating/offloading k8s networking functions
        displayName: DPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dpu
        - dpu-operator
        - ipu
        links:
        - name: Dpu Operator
          url: https://github.com/openshift/dpu-operator
        maintainers:
        - email: wizhao@redhat.com
          name: William Zhao
        - email: bnemeth@redhat.com
          name: Balazs Nemeth
        maturity: alpha
        provider:
          name: Red Hat
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-dpu-rhel9-operator@sha256:82ea8006f9d969c4b6f9e52d75ff81d7129ef0bee37ad7056769b485c0760aa9
        - registry.redhat.io/openshift4/ose-dpu-operator-bundle@sha256:2b968beb8b658b8f16257842d2594f4489116adeb76d5965b7642c982ed9d18c
        - registry.redhat.io/openshift4/ose-dpu-daemon-rhel9@sha256:7421edb9be136cc7102bbe8f263108fde6cce3ed411afecc241d8551ad56961a
        version: 4.20.0-202512081147
      entries:
      - name: dpu-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: dpu-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: dpu-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: dpu-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: dpu-operator.v4.20.0-202511040554
        version: 4.20.0-202511040554
      - name: dpu-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: dpu-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: dpu-operator
    provider:
      name: Red Hat
      url: www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Marketplace
      provider-url: ""
    name: ibm-metrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-metrics-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MarketplaceConfig",
                "metadata": {
                  "name": "marketplaceconfig"
                },
                "spec": {
                  "features": {
                    "deployment": true,
                    "meterDefinitionCatalogServer": false,
                    "registration": true
                  },
                  "installIBMCatalogSource": true,
                  "isDisconnected": false,
                  "license": {
                    "accept": false
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterBase",
                "metadata": {
                  "name": "meterbase"
                },
                "spec": {
                  "enabled": true,
                  "prometheus": {
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      },
                      "requests": {
                        "cpu": "1",
                        "memory": "1G"
                      }
                    },
                    "storage": {
                      "size": "20Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterReport",
                "metadata": {
                  "name": "example-meterreport"
                },
                "spec": {
                  "endTime": "2020-08-05T00:00:00Z",
                  "prometheusService": {
                    "name": "rhm-prometheus-meterbase",
                    "namespace": "openshift-redhat-marketplace",
                    "targetPort": "rbac"
                  },
                  "startTime": "2020-08-04T00:00:00Z"
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "example-meterdefinition-4"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "meterdefinition-sample"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
          createdAt: "2025-12-17T09:32:46Z"
          description: The IBM Metrics Operator provides workload metering and reporting
            for IBM and Red Hat Marketplace customers.
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MarketplaceConfig is configuration manager for our Red Hat Marketplace controllers
              By installing this product you accept the license terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterBase is the resource that sets up Metering for Red Hat Marketplace.
              This is an internal resource not meant to be modified directly.
            displayName: Meter Base
            kind: MeterBase
            name: meterbases.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterDefinition defines the meter workloads used to enable pay for
              use billing.
            displayName: Meter Definition
            kind: MeterDefinition
            name: meterdefinitions.marketplace.redhat.com
            version: v1beta1
          - kind: MeterReport
            name: meterreports.marketplace.redhat.com
            version: v1alpha1
        description: "The IBM Metrics Operator provides workload metering and reporting
          for IBM Software Central and Red Hat Marketplace customers.\n### **Important
          Note**\nA set of instructions for onboarding is provided here. For more
          detailed onboarding instructions or information about what is installed
          please visit [swc.saas.ibm.com](https://swc.saas.ibm.com).\n\nUsage metrics
          may be monitored through [https://swc.saas.ibm.com](https://swc.saas.ibm.com)
          with only IBM Metrics Operator and a Red Hat Marketplace account.\n\n###
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n### Prerequisites\n1. Installations are required
          to [enable monitoring for user-defined projects](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)
          as the Prometheus provider.\n2. Edit the cluster-monitoring-config ConfigMap
          object:\n\n   ```sh\n   $ oc -n openshift-monitoring edit configmap cluster-monitoring-config\n
          \   ```\n\n3. Add enableUserWorkload: true under data/config.yaml:\n  \n
          \   ```sh\n    apiVersion: v1\n    kind: ConfigMap\n    metadata:\n      name:
          cluster-monitoring-config\n        namespace: openshift-monitoring\n    data:\n
          \     config.yaml: |\n        enableUserWorkload: true\n    ```\n\n4. Configure
          the user-workload-monitoring-config ConfigMap object:\n\n    ```sh\n    $
          oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config\n
          \   ```\n\n5. Configure a minimum retention time of 168h and minimum storage
          capacity of 40Gi\n  \n    ```sh\n    apiVersion: v1\n    kind: ConfigMap\n
          \   metadata:\n      name: user-workload-monitoring-config\n      namespace:
          openshift-user-workload-monitoring\n\n    data:\n      config.yaml: |\n
          \       prometheus:\n          retention: 168h\n          volumeClaimTemplate:\n
          \           spec:\n              resources:\n                requests:\n
          \                 storage: 40Gi\n    ```\n\n### Resources Required\n\nMinimum
          system resources required:\n\n| Operator                | Memory (MB) |
          CPU (cores) | Disk (GB) | Nodes |\n| ----------------------- | -----------
          | ----------- | --------- | ----- |\n| **Metrics**   |        750  |     0.25
          \   | 3x1       |    3  |\n| **Deployment** |        250  |     0.25    |
          -         |    1  |\n\n| Prometheus Provider  | Memory (GB) | CPU (cores)
          | Disk (GB) | Nodes |\n| --------- | ----------- | ----------- | ---------
          | ----- |\n| **[Openshift User Workload Monitoring](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)**
          |          1  |     0.1       | 2x40        |   2    |\n\nMultiple nodes
          are required to provide pod scheduling for high availability for IBM Metrics
          Operator Data Service and Prometheus.\n\nThe IBM Metrics Operator automatically
          creates 3 x 1Gi PersistentVolumeClaims to store reports as part of the data
          service, with _ReadWriteOnce_ access mode. Te PersistentVolumeClaims are
          automatically created by the ibm-metrics-operator after creating a `redhat-marketplace-pull-secret`
          and accepting the license in `marketplaceconfig`.\n\n| NAME                                |
          CAPACITY | ACCESS MODES |\n| ----------------------------------- | --------
          | ------------ |\n| rhm-data-service-rhm-data-service-0 | 1Gi | RWO |\n|
          rhm-data-service-rhm-data-service-1 | 1Gi | RWO |\n| rhm-data-service-rhm-data-service-2
          | 1Gi | RWO |\n\n### Supported Storage Providers\n\n- OpenShift Container
          Storage / OpenShift Data Foundation version 4.x, from version 4.2 or higher\n-
          IBM Cloud Block storage and IBM Cloud File storage\n- IBM Storage Suite
          for IBM Cloud Paks:\n  - File storage from IBM Spectrum Fusion/Scale \n
          \ - Block storage from IBM Spectrum Virtualize, FlashSystem or DS8K\n- Portworx
          Storage, version 2.5.5 or above\n- Amazon Elastic File Storage\n- Azure
          Disk Storage (disk.csi.azure.com)\n\n#### Known Problematic Storage Providers\n\n-
          Azure File Storage (file.csi.azure.com)\n\n### Access Modes required\n\n
          - ReadWriteOnce (RWO)\n\n### Provisioning Options supported\n\nChoose one
          of the following options to provision storage for the ibm-metrics-operator
          data-service\n\n#### Dynamic provisioning using a default StorageClass\n
          \  - A StorageClass is defined with a `metadata.annotations: storageclass.kubernetes.io/is-default-class:
          \"true\"`\n   - PersistentVolumes will be provisioned automatically for
          the generated PersistentVolumeClaims\n--- \n#### Manually create each PersistentVolumeClaim
          with a specific StorageClass\n   - Must be performed before creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`. Otherwise, the automatically
          generated PersistentVolumeClaims are immutable.\n```\napiVersion: v1\nkind:
          PersistentVolumeClaim\nmetadata:\n  labels:\n    app: rhm-data-service\n
          \ name: rhm-data-service-rhm-data-service-0\n  namespace: ibm-software-central\nspec:\n
          \ storageClassName: rook-cephfs\n  accessModes:\n  - ReadWriteOnce\n  resources:\n
          \   requests:\n      storage: 1Gi\n```\n---\n#### Manually provision each
          PersistentVolume for the generated PersistentVolumeClaims with a specific
          StorageClass\n  - May be performed before or after creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`.  \n```\napiVersion: v1\nkind:
          PersistentVolume\nmetadata:\n  name: rhm-data-service-rhm-data-service-0\nspec:\n
          \ csi:\n    driver: rook-ceph.cephfs.csi.ceph.com\n    volumeHandle: rhm-data-service-rhm-data-service-0\n
          \ capacity:\n    storage: 1Gi\n  accessModes:\n    - ReadWriteOnce\n  persistentVolumeReclaimPolicy:
          Delete\n  storageClassName: rook-cephfs\n  volumeMode: Filesystem\n  claimRef:\n
          \   kind: PersistentVolumeClaim\n    namespace: ibm-software-central\n    name:
          rhm-data-service-rhm-data-service-0\n```\n\n### Kyverno Policies\n\nThe
          IBM Metrics Operator makes a best effort to comply with the Kyverno policies
          defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Metrics Operator is not replicated\n  - Service uptime is not considered
          critial, and can be rescheduled\n- metric-state is not replicated\n  - Service
          uptime is not considered critial, and can be rescheduled\n\n### Installation\n1.
          Create or get your [pull secret](https://swc.saas.ibm.com/en-us/documentation/clusters#get-pull-secret).\n2.
          Install the IBM Metrics Operator\n3. Create a Kubernetes secret in the installed
          namespace with the name `redhat-marketplace-pull-secret` and key `PULL_SECRET`
          with the value of the pull secret.\n    ```sh\n    # Replace ${PULL_SECRET}
          with your pull secret\n    oc create secret generic redhat-marketplace-pull-secret
          -n ibm-software-central --from-literal=PULL_SECRET=${PULL_SECRET}\n    ```\n4.
          Use of the platform is governed by the:\n\n    [IBM Cloud Services Agreement](https://www.ibm.com/support/customer/csol/terms/?id=Z126-6304_WS&_ga=2.116312197.2046730452.1684328846-812467790.1684328846)
          (or other base agreement between you and IBM such as a [Passport Advantage
          Agreement](https://www.ibm.com/software/passportadvantage/pa_agreements.html?_ga=2.116312197.2046730452.1684328846-812467790.1684328846))
          and the [Service Description for the Red Hat Marketplace](https://www.ibm.com/support/customer/csol/terms/?id=i126-8719&_ga=2.83289621.2046730452.1684328846-812467790.1684328846).\n
          \   \n5. Update MarketplaceConfig to accept the license.\n    ```\n    oc
          patch marketplaceconfig marketplaceconfig -n ibm-software-central --type='merge'
          -p '{\"spec\": {\"license\": {\"accept\": true}}}'\n    ```\n6. Install
          the pull secret as a global pull secret on the cluster.\n\n    These steps
          require `oc`, `jq`, and `base64` to be available on your machine.\n\n    ```sh\n
          \   # Create the docker pull secret file using your pull secret.\n    #
          Store it in a file called entitledregistryconfigjson.\n    oc create secret
          docker-registry entitled-registry --docker-server=registry.marketplace.redhat.com
          --docker-username \"cp\" --docker-password \"${PULL_SECRET}\" --dry-run=client
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > entitledregistryconfigjson\n
          \   # Get the current global secrets on the cluster and store it as a file
          named dockerconfigjson\n    oc get secret pull-secret -n openshift-config
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > dockerconfigjson\n
          \   # Merge the two dockerconfigs together into a file called dockerconfigjson-merged.\n
          \   jq -s '.[0] * .[1]' dockerconfigjson entitledregistryconfigjson > dockerconfigjson-merged\n
          \   # Set the cluster's dockerconfig file to the new merged version.\n    oc
          set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=dockerconfigjson-merged\n
          \   ```\n  7. (Optional) Your IBM product may have installed IBM Metrics
          Operator using an `ibm-entitlement-key` for authentication to IBM Software
          Central. To authorize the automatic creation of an IBM Software Central
          account for the IBM account owning the `ibm-entitlement-key`\n      ```\n
          \     oc patch marketplaceconfig marketplaceconfig -n ibm-software-central
          --type='merge' -p '{\"spec\": {\"authorizeAccountCreation\": true}}'\n      ```\n\n###
          Why is a global pull secret required?\nIn order to successfully install
          the products hosted by the container image registry, you will need to make
          the pull secret available across the cluster. This can be achieved by applying
          the pull as a [global pull secret](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html#images-update-global-pull-secret_using-image-pull-secrets).
          For alternative approaches, please see the official OpenShift [documentation](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html).\n\n\n###
          SecurityContextConstraints requirements\n\nThe Operators and their components
          support running under the OpenShift Container Platform default restricted
          and restricted-v2 security context constraints.\n\n### Installation Namespace
          and ClusterRoleBinding requirements\n\nThe IBM Metrics Operator components
          require specific ClusterRoleBindings.\n- The metric-state component requires
          a ClusterRoleBinding for the the `view` ClusterRole.\n  - Ability to read
          non-sensitive CustomResources. \n  - The `view` ClusterRole dynamically
          adds new CustomResourceDefinitions.\n- The operator & reporter component
          requires a ClusterRoleBinding for the the `cluster-monitoring-view` ClusterRole.\n
          \ - Ability to view Prometheus metrics. \n  - The underlying ClusterRole
          RBAC often updated between OpenShift versions.\n\nDue to limitations of
          Operator Lifecycle Manager (OLM), this ClusterRoleBinding can not be provided
          dynamically for arbitrary installation target namespaces.\n\nA static ClusterRoleBinding
          is included for installation to the default namespace of `ibm-software-central`,
          and namespaces `openshift-redhat-marketplace`,  `redhat-marketplace`, `ibm-common-services`.\n\nTo
          create the ClusterRoleBindings for installation to an alternate namespace\n```\noc
          project INSTALL-NAMESPACE\noc adm policy add-cluster-role-to-user view -z
          ibm-metrics-operator-metric-state\noc adm policy add-cluster-role-to-user
          cluster-monitoring-view -z ibm-metrics-operator-controller-manager,ibm-metrics-operator-reporter\n```\n\n###
          Metric State scoping requirements\nThe metric-state Deployment obtains `get/list/watch`
          access to metered resources via the `view` ClusterRole. For operators deployed
          using Operator Lifecycle Manager (OLM), permissions are added to `clusterrole/view`
          dynamically via a generated and annotated `-view` ClusterRole. If you wish
          to meter an operator, and its Custom Resource Definitions (CRDs) are not
          deployed through OLM, one of two options are required\n1. Add the following
          label to a clusterrole that has get/list/watch access to your CRD: `rbac.authorization.k8s.io/aggregate-to-view:
          \"true\"`, thereby dynamically adding it to `clusterrole/view`\n2. Create
          a ClusterRole that has get/list/watch access to your CRD, and create a ClusterRoleBinding
          for the metric-state ServiceAccount\n\nAttempting to meter a resource with
          a MeterDefinition without the required permissions will log an `AccessDeniedError`
          in metric-state.\n\n### Disaster Recovery\n\nTo plan for disaster recovery,
          note the PhysicalVolumeClaims `rhm-data-service-rhm-data-service-N`. \n-
          In connected environments, MeterReport data upload attempts occur hourly,
          and are then removed from data-service. There is a low risk of losing much
          unreported data.\n- In an airgap environment, MeterReport data must be pulled
          from data-service and uploaded manually using [datactl](https://github.com/redhat-marketplace/datactl/).
          To prevent data loss in a disaster scenario, the data-service volumes should
          be considered in a recovery plan.\n\n### Subscription Config\n\nIt is possible
          to [configure](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md)
          how OLM deploys an Operator via the `config` field in the [Subscription](https://github.com/operator-framework/olm-book/blob/master/docs/subscriptions.md)
          object.\n\nThe IBM Metrics Operator will also read the `config` and append
          it to the operands. The primary use case is to control scheduling using
          [Tolerations](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/)
          and [NodeSelectors](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/).\n\nA
          limitation is that the `config` elements are only appended to the operands.
          The elements in the operands are not removed if the `config` is removed
          from the `Subscripion`. The operand must be modified manually, or deleted
          and recreated by the controller.\n\n### Cluster permission requirements\n\n|API
          group             |Resources              |Verbs                                     |\n|----------------------|-----------------------|------------------------------------------|\n|apps
          \                 |statefulsets           |get;list;watch                            |\n|authentication.k8s.io
          |tokenreviews           |create                                    |\n|authorization.k8s.io
          \ |subjectaccessreviews   |create                                    |\n|config.openshift.io
          \  |clusterversions        |get;list;watch                            |\n|marketplace.redhat.com|meterdefinitions
          \      |get;list;watch;create;update;patch;delete |\n|operators.coreos.com
          \ |clusterserviceversions |get;list;watch                            |\n|operators.coreos.com
          \ |subscriptions          |get;list;watch                            |\n|operators.coreos.com
          \ |operatorgroups         |get;list                                  |\n|storage.k8s.io
          \       |storageclasses         |get;list;watch                            |\n|
          \                     |namespaces             |get;list;watch                            |\n|
          \                     |configmaps             |get;list;watch                            |\n|
          \                     |services               |get;list;watch                            |\n|
          \                     |**clusterrole/view**   |                                          |\n\n\n###
          Documentation\nYou can find our documentation [here.](https://swc.saas.ibm.com/en-us/documentation/)\n\n###
          Getting help\nIf you encounter any issues while using the operators, you
          can create an issue on our [Github\nrepo](https://github.com/redhat-marketplace/redhat-marketplace-operator)
          for bugs, enhancements, or other requests. You can also visit our main page
          and\nreview our [support](https://swc.saas.ibm.com/en-us/support) and [documentation](https://swc.saas.ibm.com/en-us/documentation/).\n\n###
          Readme\nYou can find our readme [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/README.md)\n\n###
          License information\nYou can find our license information [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/LICENSE)\n"
        displayName: IBM Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        - buy
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - registry.connect.redhat.com/rh-marketplace/ibm-metrics-operator-bundle@sha256:a9294ebb6036eca0746bb1ec8d4155727e4dc7ff25060c70bbd10c0604558c37
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
        - quay.io/rh-marketplace/redhat-marketplace-authcheck@sha256:1d48baed94b33491edd62a525c776b3d0866a9255c60ad14ce1aee6735ffe07f
        - quay.io/rh-marketplace/redhat-marketplace-data-service@sha256:9b82b79f9324bb0c394b42e45e5db11854b86d70a40d6b5951ae3af873ab9760
        - quay.io/rh-marketplace/redhat-marketplace-metric-state@sha256:f59cb18b99ccf9c184b0e3cdb941ab90a54262dff177177eaf3e6318dda36213
        - quay.io/rh-marketplace/redhat-marketplace-reporter@sha256:4c46af0f581620fbd0dac4005e31a76f2746eb3b60a881f5fcb13c1547b15c98
        version: 2.23.1
      entries:
      - name: ibm-metrics-operator.v2.23.1
        version: 2.23.1
      name: beta
    - currentCSV: ibm-metrics-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MarketplaceConfig",
                "metadata": {
                  "name": "marketplaceconfig"
                },
                "spec": {
                  "features": {
                    "deployment": true,
                    "meterDefinitionCatalogServer": false,
                    "registration": true
                  },
                  "installIBMCatalogSource": true,
                  "isDisconnected": false,
                  "license": {
                    "accept": false
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterBase",
                "metadata": {
                  "name": "meterbase"
                },
                "spec": {
                  "enabled": true,
                  "prometheus": {
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      },
                      "requests": {
                        "cpu": "1",
                        "memory": "1G"
                      }
                    },
                    "storage": {
                      "size": "20Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterReport",
                "metadata": {
                  "name": "example-meterreport"
                },
                "spec": {
                  "endTime": "2020-08-05T00:00:00Z",
                  "prometheusService": {
                    "name": "rhm-prometheus-meterbase",
                    "namespace": "openshift-redhat-marketplace",
                    "targetPort": "rbac"
                  },
                  "startTime": "2020-08-04T00:00:00Z"
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "example-meterdefinition-4"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "meterdefinition-sample"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
          createdAt: "2025-12-17T09:32:46Z"
          description: The IBM Metrics Operator provides workload metering and reporting
            for IBM and Red Hat Marketplace customers.
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MarketplaceConfig is configuration manager for our Red Hat Marketplace controllers
              By installing this product you accept the license terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterBase is the resource that sets up Metering for Red Hat Marketplace.
              This is an internal resource not meant to be modified directly.
            displayName: Meter Base
            kind: MeterBase
            name: meterbases.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterDefinition defines the meter workloads used to enable pay for
              use billing.
            displayName: Meter Definition
            kind: MeterDefinition
            name: meterdefinitions.marketplace.redhat.com
            version: v1beta1
          - kind: MeterReport
            name: meterreports.marketplace.redhat.com
            version: v1alpha1
        description: "The IBM Metrics Operator provides workload metering and reporting
          for IBM Software Central and Red Hat Marketplace customers.\n### **Important
          Note**\nA set of instructions for onboarding is provided here. For more
          detailed onboarding instructions or information about what is installed
          please visit [swc.saas.ibm.com](https://swc.saas.ibm.com).\n\nUsage metrics
          may be monitored through [https://swc.saas.ibm.com](https://swc.saas.ibm.com)
          with only IBM Metrics Operator and a Red Hat Marketplace account.\n\n###
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n### Prerequisites\n1. Installations are required
          to [enable monitoring for user-defined projects](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)
          as the Prometheus provider.\n2. Edit the cluster-monitoring-config ConfigMap
          object:\n\n   ```sh\n   $ oc -n openshift-monitoring edit configmap cluster-monitoring-config\n
          \   ```\n\n3. Add enableUserWorkload: true under data/config.yaml:\n  \n
          \   ```sh\n    apiVersion: v1\n    kind: ConfigMap\n    metadata:\n      name:
          cluster-monitoring-config\n        namespace: openshift-monitoring\n    data:\n
          \     config.yaml: |\n        enableUserWorkload: true\n    ```\n\n4. Configure
          the user-workload-monitoring-config ConfigMap object:\n\n    ```sh\n    $
          oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config\n
          \   ```\n\n5. Configure a minimum retention time of 168h and minimum storage
          capacity of 40Gi\n  \n    ```sh\n    apiVersion: v1\n    kind: ConfigMap\n
          \   metadata:\n      name: user-workload-monitoring-config\n      namespace:
          openshift-user-workload-monitoring\n\n    data:\n      config.yaml: |\n
          \       prometheus:\n          retention: 168h\n          volumeClaimTemplate:\n
          \           spec:\n              resources:\n                requests:\n
          \                 storage: 40Gi\n    ```\n\n### Resources Required\n\nMinimum
          system resources required:\n\n| Operator                | Memory (MB) |
          CPU (cores) | Disk (GB) | Nodes |\n| ----------------------- | -----------
          | ----------- | --------- | ----- |\n| **Metrics**   |        750  |     0.25
          \   | 3x1       |    3  |\n| **Deployment** |        250  |     0.25    |
          -         |    1  |\n\n| Prometheus Provider  | Memory (GB) | CPU (cores)
          | Disk (GB) | Nodes |\n| --------- | ----------- | ----------- | ---------
          | ----- |\n| **[Openshift User Workload Monitoring](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)**
          |          1  |     0.1       | 2x40        |   2    |\n\nMultiple nodes
          are required to provide pod scheduling for high availability for IBM Metrics
          Operator Data Service and Prometheus.\n\nThe IBM Metrics Operator automatically
          creates 3 x 1Gi PersistentVolumeClaims to store reports as part of the data
          service, with _ReadWriteOnce_ access mode. Te PersistentVolumeClaims are
          automatically created by the ibm-metrics-operator after creating a `redhat-marketplace-pull-secret`
          and accepting the license in `marketplaceconfig`.\n\n| NAME                                |
          CAPACITY | ACCESS MODES |\n| ----------------------------------- | --------
          | ------------ |\n| rhm-data-service-rhm-data-service-0 | 1Gi | RWO |\n|
          rhm-data-service-rhm-data-service-1 | 1Gi | RWO |\n| rhm-data-service-rhm-data-service-2
          | 1Gi | RWO |\n\n### Supported Storage Providers\n\n- OpenShift Container
          Storage / OpenShift Data Foundation version 4.x, from version 4.2 or higher\n-
          IBM Cloud Block storage and IBM Cloud File storage\n- IBM Storage Suite
          for IBM Cloud Paks:\n  - File storage from IBM Spectrum Fusion/Scale \n
          \ - Block storage from IBM Spectrum Virtualize, FlashSystem or DS8K\n- Portworx
          Storage, version 2.5.5 or above\n- Amazon Elastic File Storage\n- Azure
          Disk Storage (disk.csi.azure.com)\n\n#### Known Problematic Storage Providers\n\n-
          Azure File Storage (file.csi.azure.com)\n\n### Access Modes required\n\n
          - ReadWriteOnce (RWO)\n\n### Provisioning Options supported\n\nChoose one
          of the following options to provision storage for the ibm-metrics-operator
          data-service\n\n#### Dynamic provisioning using a default StorageClass\n
          \  - A StorageClass is defined with a `metadata.annotations: storageclass.kubernetes.io/is-default-class:
          \"true\"`\n   - PersistentVolumes will be provisioned automatically for
          the generated PersistentVolumeClaims\n--- \n#### Manually create each PersistentVolumeClaim
          with a specific StorageClass\n   - Must be performed before creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`. Otherwise, the automatically
          generated PersistentVolumeClaims are immutable.\n```\napiVersion: v1\nkind:
          PersistentVolumeClaim\nmetadata:\n  labels:\n    app: rhm-data-service\n
          \ name: rhm-data-service-rhm-data-service-0\n  namespace: ibm-software-central\nspec:\n
          \ storageClassName: rook-cephfs\n  accessModes:\n  - ReadWriteOnce\n  resources:\n
          \   requests:\n      storage: 1Gi\n```\n---\n#### Manually provision each
          PersistentVolume for the generated PersistentVolumeClaims with a specific
          StorageClass\n  - May be performed before or after creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`.  \n```\napiVersion: v1\nkind:
          PersistentVolume\nmetadata:\n  name: rhm-data-service-rhm-data-service-0\nspec:\n
          \ csi:\n    driver: rook-ceph.cephfs.csi.ceph.com\n    volumeHandle: rhm-data-service-rhm-data-service-0\n
          \ capacity:\n    storage: 1Gi\n  accessModes:\n    - ReadWriteOnce\n  persistentVolumeReclaimPolicy:
          Delete\n  storageClassName: rook-cephfs\n  volumeMode: Filesystem\n  claimRef:\n
          \   kind: PersistentVolumeClaim\n    namespace: ibm-software-central\n    name:
          rhm-data-service-rhm-data-service-0\n```\n\n### Kyverno Policies\n\nThe
          IBM Metrics Operator makes a best effort to comply with the Kyverno policies
          defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Metrics Operator is not replicated\n  - Service uptime is not considered
          critial, and can be rescheduled\n- metric-state is not replicated\n  - Service
          uptime is not considered critial, and can be rescheduled\n\n### Installation\n1.
          Create or get your [pull secret](https://swc.saas.ibm.com/en-us/documentation/clusters#get-pull-secret).\n2.
          Install the IBM Metrics Operator\n3. Create a Kubernetes secret in the installed
          namespace with the name `redhat-marketplace-pull-secret` and key `PULL_SECRET`
          with the value of the pull secret.\n    ```sh\n    # Replace ${PULL_SECRET}
          with your pull secret\n    oc create secret generic redhat-marketplace-pull-secret
          -n ibm-software-central --from-literal=PULL_SECRET=${PULL_SECRET}\n    ```\n4.
          Use of the platform is governed by the:\n\n    [IBM Cloud Services Agreement](https://www.ibm.com/support/customer/csol/terms/?id=Z126-6304_WS&_ga=2.116312197.2046730452.1684328846-812467790.1684328846)
          (or other base agreement between you and IBM such as a [Passport Advantage
          Agreement](https://www.ibm.com/software/passportadvantage/pa_agreements.html?_ga=2.116312197.2046730452.1684328846-812467790.1684328846))
          and the [Service Description for the Red Hat Marketplace](https://www.ibm.com/support/customer/csol/terms/?id=i126-8719&_ga=2.83289621.2046730452.1684328846-812467790.1684328846).\n
          \   \n5. Update MarketplaceConfig to accept the license.\n    ```\n    oc
          patch marketplaceconfig marketplaceconfig -n ibm-software-central --type='merge'
          -p '{\"spec\": {\"license\": {\"accept\": true}}}'\n    ```\n6. Install
          the pull secret as a global pull secret on the cluster.\n\n    These steps
          require `oc`, `jq`, and `base64` to be available on your machine.\n\n    ```sh\n
          \   # Create the docker pull secret file using your pull secret.\n    #
          Store it in a file called entitledregistryconfigjson.\n    oc create secret
          docker-registry entitled-registry --docker-server=registry.marketplace.redhat.com
          --docker-username \"cp\" --docker-password \"${PULL_SECRET}\" --dry-run=client
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > entitledregistryconfigjson\n
          \   # Get the current global secrets on the cluster and store it as a file
          named dockerconfigjson\n    oc get secret pull-secret -n openshift-config
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > dockerconfigjson\n
          \   # Merge the two dockerconfigs together into a file called dockerconfigjson-merged.\n
          \   jq -s '.[0] * .[1]' dockerconfigjson entitledregistryconfigjson > dockerconfigjson-merged\n
          \   # Set the cluster's dockerconfig file to the new merged version.\n    oc
          set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=dockerconfigjson-merged\n
          \   ```\n  7. (Optional) Your IBM product may have installed IBM Metrics
          Operator using an `ibm-entitlement-key` for authentication to IBM Software
          Central. To authorize the automatic creation of an IBM Software Central
          account for the IBM account owning the `ibm-entitlement-key`\n      ```\n
          \     oc patch marketplaceconfig marketplaceconfig -n ibm-software-central
          --type='merge' -p '{\"spec\": {\"authorizeAccountCreation\": true}}'\n      ```\n\n###
          Why is a global pull secret required?\nIn order to successfully install
          the products hosted by the container image registry, you will need to make
          the pull secret available across the cluster. This can be achieved by applying
          the pull as a [global pull secret](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html#images-update-global-pull-secret_using-image-pull-secrets).
          For alternative approaches, please see the official OpenShift [documentation](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html).\n\n\n###
          SecurityContextConstraints requirements\n\nThe Operators and their components
          support running under the OpenShift Container Platform default restricted
          and restricted-v2 security context constraints.\n\n### Installation Namespace
          and ClusterRoleBinding requirements\n\nThe IBM Metrics Operator components
          require specific ClusterRoleBindings.\n- The metric-state component requires
          a ClusterRoleBinding for the the `view` ClusterRole.\n  - Ability to read
          non-sensitive CustomResources. \n  - The `view` ClusterRole dynamically
          adds new CustomResourceDefinitions.\n- The operator & reporter component
          requires a ClusterRoleBinding for the the `cluster-monitoring-view` ClusterRole.\n
          \ - Ability to view Prometheus metrics. \n  - The underlying ClusterRole
          RBAC often updated between OpenShift versions.\n\nDue to limitations of
          Operator Lifecycle Manager (OLM), this ClusterRoleBinding can not be provided
          dynamically for arbitrary installation target namespaces.\n\nA static ClusterRoleBinding
          is included for installation to the default namespace of `ibm-software-central`,
          and namespaces `openshift-redhat-marketplace`,  `redhat-marketplace`, `ibm-common-services`.\n\nTo
          create the ClusterRoleBindings for installation to an alternate namespace\n```\noc
          project INSTALL-NAMESPACE\noc adm policy add-cluster-role-to-user view -z
          ibm-metrics-operator-metric-state\noc adm policy add-cluster-role-to-user
          cluster-monitoring-view -z ibm-metrics-operator-controller-manager,ibm-metrics-operator-reporter\n```\n\n###
          Metric State scoping requirements\nThe metric-state Deployment obtains `get/list/watch`
          access to metered resources via the `view` ClusterRole. For operators deployed
          using Operator Lifecycle Manager (OLM), permissions are added to `clusterrole/view`
          dynamically via a generated and annotated `-view` ClusterRole. If you wish
          to meter an operator, and its Custom Resource Definitions (CRDs) are not
          deployed through OLM, one of two options are required\n1. Add the following
          label to a clusterrole that has get/list/watch access to your CRD: `rbac.authorization.k8s.io/aggregate-to-view:
          \"true\"`, thereby dynamically adding it to `clusterrole/view`\n2. Create
          a ClusterRole that has get/list/watch access to your CRD, and create a ClusterRoleBinding
          for the metric-state ServiceAccount\n\nAttempting to meter a resource with
          a MeterDefinition without the required permissions will log an `AccessDeniedError`
          in metric-state.\n\n### Disaster Recovery\n\nTo plan for disaster recovery,
          note the PhysicalVolumeClaims `rhm-data-service-rhm-data-service-N`. \n-
          In connected environments, MeterReport data upload attempts occur hourly,
          and are then removed from data-service. There is a low risk of losing much
          unreported data.\n- In an airgap environment, MeterReport data must be pulled
          from data-service and uploaded manually using [datactl](https://github.com/redhat-marketplace/datactl/).
          To prevent data loss in a disaster scenario, the data-service volumes should
          be considered in a recovery plan.\n\n### Subscription Config\n\nIt is possible
          to [configure](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md)
          how OLM deploys an Operator via the `config` field in the [Subscription](https://github.com/operator-framework/olm-book/blob/master/docs/subscriptions.md)
          object.\n\nThe IBM Metrics Operator will also read the `config` and append
          it to the operands. The primary use case is to control scheduling using
          [Tolerations](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/)
          and [NodeSelectors](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/).\n\nA
          limitation is that the `config` elements are only appended to the operands.
          The elements in the operands are not removed if the `config` is removed
          from the `Subscripion`. The operand must be modified manually, or deleted
          and recreated by the controller.\n\n### Cluster permission requirements\n\n|API
          group             |Resources              |Verbs                                     |\n|----------------------|-----------------------|------------------------------------------|\n|apps
          \                 |statefulsets           |get;list;watch                            |\n|authentication.k8s.io
          |tokenreviews           |create                                    |\n|authorization.k8s.io
          \ |subjectaccessreviews   |create                                    |\n|config.openshift.io
          \  |clusterversions        |get;list;watch                            |\n|marketplace.redhat.com|meterdefinitions
          \      |get;list;watch;create;update;patch;delete |\n|operators.coreos.com
          \ |clusterserviceversions |get;list;watch                            |\n|operators.coreos.com
          \ |subscriptions          |get;list;watch                            |\n|operators.coreos.com
          \ |operatorgroups         |get;list                                  |\n|storage.k8s.io
          \       |storageclasses         |get;list;watch                            |\n|
          \                     |namespaces             |get;list;watch                            |\n|
          \                     |configmaps             |get;list;watch                            |\n|
          \                     |services               |get;list;watch                            |\n|
          \                     |**clusterrole/view**   |                                          |\n\n\n###
          Documentation\nYou can find our documentation [here.](https://swc.saas.ibm.com/en-us/documentation/)\n\n###
          Getting help\nIf you encounter any issues while using the operators, you
          can create an issue on our [Github\nrepo](https://github.com/redhat-marketplace/redhat-marketplace-operator)
          for bugs, enhancements, or other requests. You can also visit our main page
          and\nreview our [support](https://swc.saas.ibm.com/en-us/support) and [documentation](https://swc.saas.ibm.com/en-us/documentation/).\n\n###
          Readme\nYou can find our readme [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/README.md)\n\n###
          License information\nYou can find our license information [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/LICENSE)\n"
        displayName: IBM Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        - buy
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
        - quay.io/rh-marketplace/redhat-marketplace-authcheck@sha256:1d48baed94b33491edd62a525c776b3d0866a9255c60ad14ce1aee6735ffe07f
        - quay.io/rh-marketplace/redhat-marketplace-data-service@sha256:9b82b79f9324bb0c394b42e45e5db11854b86d70a40d6b5951ae3af873ab9760
        - quay.io/rh-marketplace/redhat-marketplace-metric-state@sha256:f59cb18b99ccf9c184b0e3cdb941ab90a54262dff177177eaf3e6318dda36213
        - quay.io/rh-marketplace/redhat-marketplace-reporter@sha256:4c46af0f581620fbd0dac4005e31a76f2746eb3b60a881f5fcb13c1547b15c98
        - registry.connect.redhat.com/rh-marketplace/ibm-metrics-operator-bundle@sha256:a9294ebb6036eca0746bb1ec8d4155727e4dc7ff25060c70bbd10c0604558c37
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 2.23.1
      entries:
      - name: ibm-metrics-operator.v2.23.1
        version: 2.23.1
      name: stable
    defaultChannel: stable
    packageName: ibm-metrics-operator
    provider:
      name: Red Hat Marketplace
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-hive-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hive-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/hive-operator@sha256:747e784c89fcd8cd7b1fd7868d4c768dd971d6859c5f261fe8cb8eaf72f7946b
          description: Stackable Operator for Apache Hive
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/hive-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for HiveClusterSpec via `CustomResource`
            displayName: hiveclusters.hive.stackable.tech
            kind: HiveCluster
            name: hiveclusters.hive.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Hive
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hive
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/hive-operator@sha256:747e784c89fcd8cd7b1fd7868d4c768dd971d6859c5f261fe8cb8eaf72f7946b
        - registry.connect.redhat.com/stackable/stackable-apache-hive-operator@sha256:e5e7f52e18a640ea5a7b11897b9609352c9e7dd1c44ff26d387dae0a2ac4146e
        version: 25.11.0
      entries:
      - name: hive-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-hive-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-acm-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-acm-controller.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acm.services.k8s.aws/v1alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/acm-controller:1.3.1
          createdAt: "2026-01-06T21:08:05Z"
          description: AWS ACM controller is a service controller for managing ACM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Certificate represents the state of an AWS acm Certificate
              resource.
            displayName: Certificate
            kind: Certificate
            name: certificates.acm.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage AWS Certificate Manager (ACM) resources in AWS from within your Kubernetes cluster.

          **About Amazon ACM**

          AWS Certificate Manager (ACM) handles the complexity of creating, storing, and renewing public and private SSL/TLS X.509 certificates and keys that protect your AWS websites and applications. You can provide certificates for your [integrated AWS services](https://docs.aws.amazon.com/acm/latest/userguide/acm-services.html) either by issuing them directly with ACM or by [importing](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) third-party certificates into the ACM management system. ACM certificates can secure singular domain names, multiple specific domain names, wildcard domains, or combinations of these. ACM wildcard certificates can protect an unlimited number of subdomains. You can also [export](https://docs.aws.amazon.com/acm/latest/userguide/export-private.html) ACM certificates signed by AWS Private CA for use anywhere in your internal PKI.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon ACM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acm
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ACM Developer Resources
          url: https://aws.amazon.com/certificate-manager/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: acm maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/acm-controller:1.3.1
        - quay.io/community-operator-pipeline-prod/ack-acm-controller@sha256:24162be9245765e977980ef0868d3ed5b823ef412a14cfefdc7c2fcf36d00036
        version: 1.3.1
      entries:
      - name: ack-acm-controller.v1.3.1
        version: 1.3.1
      - name: ack-acm-controller.v1.3.0
        version: 1.3.0
      - name: ack-acm-controller.v1.2.0
        version: 1.2.0
      - name: ack-acm-controller.v1.1.2
        version: 1.1.2
      - name: ack-acm-controller.v1.1.1
        version: 1.1.1
      - name: ack-acm-controller.v1.1.0
        version: 1.1.0
      - name: ack-acm-controller.v1.0.13
        version: 1.0.13
      - name: ack-acm-controller.v1.0.12
        version: 1.0.12
      - name: ack-acm-controller.v1.0.11
        version: 1.0.11
      - name: ack-acm-controller.v1.0.10
        version: 1.0.10
      - name: ack-acm-controller.v1.0.9
        version: 1.0.9
      - name: ack-acm-controller.v1.0.8
        version: 1.0.8
      - name: ack-acm-controller.v1.0.7
        version: 1.0.7
      - name: ack-acm-controller.v1.0.6
        version: 1.0.6
      - name: ack-acm-controller.v1.0.5
        version: 1.0.5
      - name: ack-acm-controller.v1.0.4
        version: 1.0.4
      - name: ack-acm-controller.v1.0.1
        version: 1.0.1
      - name: ack-acm-controller.v1.0.0
        version: 1.0.0
      - name: ack-acm-controller.v0.0.20
        version: 0.0.20
      - name: ack-acm-controller.v0.0.19
        version: 0.0.19
      - name: ack-acm-controller.v0.0.18
        version: 0.0.18
      - name: ack-acm-controller.v0.0.17
        version: 0.0.17
      - name: ack-acm-controller.v0.0.16
        version: 0.0.16
      - name: ack-acm-controller.v0.0.12
        version: 0.0.12
      - name: ack-acm-controller.v0.0.10
        version: 0.0.10
      - name: ack-acm-controller.v0.0.9
        version: 0.0.9
      - name: ack-acm-controller.v0.0.6
        version: 0.0.6
      - name: ack-acm-controller.v0.0.5
        version: 0.0.5
      - name: ack-acm-controller.v0.0.4
        version: 0.0.4
      - name: ack-acm-controller.v0.0.2
        version: 0.0.2
      - name: ack-acm-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-acm-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: External Secrets
      provider-url: https://external-secrets.io
    name: external-secrets-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: external-secrets-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": "1234"
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "key": "provider-key",
                      "property": "provider-key-property",
                      "version": "provider-key-version"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "name": "hello-world"
                },
                "spec": {
                  "externalSecretName": "hello-world-es",
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "provider-key",
                          "property": "provider-key-property",
                          "version": "provider-key-version"
                        },
                        "secretKey": "secret-key-to-be-managed"
                      }
                    ],
                    "dataFrom": [
                      {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "SecretStore",
                      "name": "secret-store-name"
                    },
                    "target": {
                      "creationPolicy": "Merge",
                      "name": "my-secret",
                      "template": {
                        "data": {
                          "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                        },
                        "metadata": {
                          "annotations": {},
                          "labels": {}
                        },
                        "templateFrom": [
                          {
                            "configMap": {
                              "items": [
                                {
                                  "key": "alertmanager.yaml"
                                }
                              ],
                              "name": "alertmanager"
                            }
                          }
                        ],
                        "type": "kubernetes.io/dockerconfigjson"
                      }
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "cool": "label"
                    }
                  },
                  "refreshTime": "1m"
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": 1234
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "extract": {
                        "conversionStrategy": "Default",
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    },
                    {
                      "find": {
                        "conversionStrategy": "Unicode",
                        "name": {
                          "regexp": ".*foobar.*"
                        },
                        "path": "path-to-filter",
                        "tags": {
                          "foo": "bar"
                        }
                      }
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "deletionPolicy": "Retain",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.external-secrets.io/v1alpha1",
                "kind": "OperatorConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "affinity": {},
                  "certController": {
                    "affinity": {},
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "requeueInterval": "5m",
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  },
                  "concurrent": 1,
                  "controllerClass": "",
                  "crds": {
                    "createClusterExternalSecret": true,
                    "createClusterSecretStore": true
                  },
                  "createOperator": true,
                  "deploymentAnnotations": {},
                  "extraArgs": {},
                  "extraEnv": [],
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/external-secrets/external-secrets",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "installCRDs": false,
                  "leaderElect": false,
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": "",
                  "processClusterExternalSecret": true,
                  "processClusterStore": true,
                  "prometheus": {
                    "enabled": false,
                    "service": {
                      "port": 8080
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 1,
                  "resources": {},
                  "scopedNamespace": "",
                  "scopedRBAC": false,
                  "securityContext": {},
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": ""
                  },
                  "tolerations": [],
                  "webhook": {
                    "affinity": {},
                    "certCheckInterval": "5m",
                    "certDir": "/tmp/certs",
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
          createdAt: "2024-12-03T10:44:19Z"
          description: Operator to configure external-secrets helm-chart based operator
          operatorframework.io/cluster-monitoring: "true"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/external-secrets/external-secrets-helm-operator
          support: external-secrets
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster scoped resource that allows you to manage ExternalSecrets
              across namespaces
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1beta1
          - kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1alpha1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1beta1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1beta1
          - kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1alpha1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1beta1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1beta1
          - kind: Fake
            name: fakes.generators.external-secrets.io
            version: v1alpha1
          - kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Configures external-secrets helm-chart based operator
            displayName: OperatorConfig
            kind: OperatorConfig
            name: operatorconfigs.operator.external-secrets.io
            version: v1alpha1
          - kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1alpha1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1beta1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1beta1
          - kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK (Helm version) to configure **[official external-secrets operator helm chart](https://github.com/external-secrets/external-secrets)**, so it can be installed via OLM without having to do any change on current Helm Charts.

          Before any other resources provided by this Operator can be deployed, it is essential to create an
          OperatorConfig resource.

          The usual Helm Chart file `values.yaml`, like:
          ```yaml
          prometheus:
            enabled: true
            service:
              port: 8080
          resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          need to be encapsulated into a new custom resource called `OperatorConfig`:
          ```yaml
          apiVersion: operator.external-secrets.io/v1alpha1
          kind: OperatorConfig
          metadata:
            name: cluster
          spec:
            prometheus:
              enabled: true
              service:
                port: 8080
            resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          Once the OperatorConfig resource is deployed, the operator will create all helm chart resources, using the custom resource name as a preffix for all resources names, like for example a `Deployment` called `cluster-external-secrets`.

          ## Documentation

          * [Upstream Documentation](https://external-secrets.io)
          * [Helm Operator Install](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/install.md)
          * [Helm Operator Development](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/development.md)
          * [Helm Operator Release](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/release.md)

          ## Contributing

          You can contribute by:

          * Raising any issues you find using External Secrets Operator
          * Fixing issues by opening [Pull Requests](https://github.com/external-secrets/external-secrets-helm-operator/pulls)
          * Submitting a patch or opening a PR
          * Improving documentation
          * Talking about External Secrets Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/external-secrets/external-secrets-helm-operator/issues).

          ## License

          External Secrets Operator is under Apache 2.0 license. See the [LICENSE](LICENSE) file for details.
        displayName: External Secrets Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secrets
        - secrets-manager
        - vault
        - aws
        - azure
        - google
        - ibm
        - akeyless
        - yandex
        - gitlab
        - oracle
        links:
        - name: External Secrets Operator
          url: https://external-secrets.io
        - name: GitHub
          url: https://github.com/external-secrets/external-secrets
        - name: Slack
          url: https://kubernetes.slack.com/messages/external-secrets
        maintainers:
        - email: contact@external-secrets.io
          name: external-secrets community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: External Secrets
          url: https://external-secrets.io
        relatedImages:
        - ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
        - quay.io/community-operator-pipeline-prod/external-secrets-operator@sha256:6fa2ddca55d1d134b0938b47ea8a861de7408fa566ad806b200a379b8500a2a1
        version: 0.11.0
      entries:
      - name: external-secrets-operator.v0.11.0
        version: 0.11.0
      - name: external-secrets-operator.v0.10.7
        version: 0.10.7
      - name: external-secrets-operator.v0.10.6
        version: 0.10.6
      - name: external-secrets-operator.v0.10.5
        version: 0.10.5
      - name: external-secrets-operator.v0.10.4
        version: 0.10.4
      - name: external-secrets-operator.v0.10.3
        version: 0.10.3
      - name: external-secrets-operator.v0.10.2
        version: 0.10.2
      - name: external-secrets-operator.v0.10.1
        version: 0.10.1
      - name: external-secrets-operator.v0.10.0
        version: 0.10.0
      - name: external-secrets-operator.v0.9.20
        version: 0.9.20
      - name: external-secrets-operator.v0.9.19
        version: 0.9.19
      - name: external-secrets-operator.v0.9.18
        version: 0.9.18
      - name: external-secrets-operator.v0.9.17
        version: 0.9.17
      - name: external-secrets-operator.v0.9.16
        version: 0.9.16
      - name: external-secrets-operator.v0.9.15-2
        version: 0.9.15-2
      - name: external-secrets-operator.v0.9.14
        version: 0.9.14
      - name: external-secrets-operator.v0.9.13
        version: 0.9.13
      - name: external-secrets-operator.v0.9.12
        version: 0.9.12
      - name: external-secrets-operator.v0.9.11
        version: 0.9.11
      - name: external-secrets-operator.v0.9.10
        version: 0.9.10
      - name: external-secrets-operator.v0.9.9
        version: 0.9.9
      - name: external-secrets-operator.v0.9.8
        version: 0.9.8
      - name: external-secrets-operator.v0.9.7
        version: 0.9.7
      - name: external-secrets-operator.v0.9.6
        version: 0.9.6
      - name: external-secrets-operator.v0.9.5
        version: 0.9.5
      - name: external-secrets-operator.v0.9.4
        version: 0.9.4
      - name: external-secrets-operator.v0.9.3
        version: 0.9.3
      - name: external-secrets-operator.v0.9.2
        version: 0.9.2
      - name: external-secrets-operator.v0.9.1
        version: 0.9.1
      - name: external-secrets-operator.v0.9.0
        version: 0.9.0
      - name: external-secrets-operator.v0.8.7
        version: 0.8.7
      - name: external-secrets-operator.v0.8.6
        version: 0.8.6
      - name: external-secrets-operator.v0.8.5
        version: 0.8.5
      - name: external-secrets-operator.v0.8.4
        version: 0.8.4
      - name: external-secrets-operator.v0.8.3
        version: 0.8.3
      - name: external-secrets-operator.v0.8.2
        version: 0.8.2
      - name: external-secrets-operator.v0.8.1
        version: 0.8.1
      - name: external-secrets-operator.v0.8.0
        version: 0.8.0
      - name: external-secrets-operator.v0.7.2
        version: 0.7.2
      - name: external-secrets-operator.v0.7.1
        version: 0.7.1
      - name: external-secrets-operator.v0.7.0
        version: 0.7.0
      - name: external-secrets-operator.v0.7.0-rc1
        version: 0.7.0-rc1
      - name: external-secrets-operator.v0.6.1
        version: 0.6.1
      - name: external-secrets-operator.v0.6.0
        version: 0.6.0
      - name: external-secrets-operator.v0.6.0-rc1
        version: 0.6.0-rc1
      - name: external-secrets-operator.v0.5.9
        version: 0.5.9
      - name: external-secrets-operator.v0.5.8
        version: 0.5.8
      - name: external-secrets-operator.v0.5.7
        version: 0.5.7
      - name: external-secrets-operator.v0.5.6
        version: 0.5.6
      - name: external-secrets-operator.v0.5.5
        version: 0.5.5
      - name: external-secrets-operator.v0.5.4
        version: 0.5.4
      - name: external-secrets-operator.v0.5.3
        version: 0.5.3
      - name: external-secrets-operator.v0.5.2
        version: 0.5.2
      - name: external-secrets-operator.v0.5.1
        version: 0.5.1
      - name: external-secrets-operator.v0.5.0
        version: 0.5.0
      - name: external-secrets-operator.v0.4.4
        version: 0.4.4
      - name: external-secrets-operator.v0.4.3
        version: 0.4.3
      - name: external-secrets-operator.v0.4.2
        version: 0.4.2
      - name: external-secrets-operator.v0.4.1
        version: 0.4.1
      - name: external-secrets-operator.v0.3.11
        version: 0.3.11
      - name: external-secrets-operator.v0.3.10
        version: 0.3.10
      - name: external-secrets-operator.v0.3.9
        version: 0.3.9
      - name: external-secrets-operator.v0.3.8
        version: 0.3.8
      name: alpha
    - currentCSV: external-secrets-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": "1234"
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "key": "provider-key",
                      "property": "provider-key-property",
                      "version": "provider-key-version"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "name": "hello-world"
                },
                "spec": {
                  "externalSecretName": "hello-world-es",
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "provider-key",
                          "property": "provider-key-property",
                          "version": "provider-key-version"
                        },
                        "secretKey": "secret-key-to-be-managed"
                      }
                    ],
                    "dataFrom": [
                      {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "SecretStore",
                      "name": "secret-store-name"
                    },
                    "target": {
                      "creationPolicy": "Merge",
                      "name": "my-secret",
                      "template": {
                        "data": {
                          "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                        },
                        "metadata": {
                          "annotations": {},
                          "labels": {}
                        },
                        "templateFrom": [
                          {
                            "configMap": {
                              "items": [
                                {
                                  "key": "alertmanager.yaml"
                                }
                              ],
                              "name": "alertmanager"
                            }
                          }
                        ],
                        "type": "kubernetes.io/dockerconfigjson"
                      }
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "cool": "label"
                    }
                  },
                  "refreshTime": "1m"
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": 1234
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "extract": {
                        "conversionStrategy": "Default",
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    },
                    {
                      "find": {
                        "conversionStrategy": "Unicode",
                        "name": {
                          "regexp": ".*foobar.*"
                        },
                        "path": "path-to-filter",
                        "tags": {
                          "foo": "bar"
                        }
                      }
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "deletionPolicy": "Retain",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.external-secrets.io/v1alpha1",
                "kind": "OperatorConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "affinity": {},
                  "certController": {
                    "affinity": {},
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "requeueInterval": "5m",
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  },
                  "concurrent": 1,
                  "controllerClass": "",
                  "crds": {
                    "createClusterExternalSecret": true,
                    "createClusterSecretStore": true
                  },
                  "createOperator": true,
                  "deploymentAnnotations": {},
                  "extraArgs": {},
                  "extraEnv": [],
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/external-secrets/external-secrets",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "installCRDs": false,
                  "leaderElect": false,
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": "",
                  "processClusterExternalSecret": true,
                  "processClusterStore": true,
                  "prometheus": {
                    "enabled": false,
                    "service": {
                      "port": 8080
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 1,
                  "resources": {},
                  "scopedNamespace": "",
                  "scopedRBAC": false,
                  "securityContext": {},
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": ""
                  },
                  "tolerations": [],
                  "webhook": {
                    "affinity": {},
                    "certCheckInterval": "5m",
                    "certDir": "/tmp/certs",
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
          createdAt: "2024-12-03T10:44:19Z"
          description: Operator to configure external-secrets helm-chart based operator
          operatorframework.io/cluster-monitoring: "true"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/external-secrets/external-secrets-helm-operator
          support: external-secrets
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster scoped resource that allows you to manage ExternalSecrets
              across namespaces
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1beta1
          - kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1alpha1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1beta1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1beta1
          - kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1alpha1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1beta1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1beta1
          - kind: Fake
            name: fakes.generators.external-secrets.io
            version: v1alpha1
          - kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Configures external-secrets helm-chart based operator
            displayName: OperatorConfig
            kind: OperatorConfig
            name: operatorconfigs.operator.external-secrets.io
            version: v1alpha1
          - kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1alpha1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1beta1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1beta1
          - kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK (Helm version) to configure **[official external-secrets operator helm chart](https://github.com/external-secrets/external-secrets)**, so it can be installed via OLM without having to do any change on current Helm Charts.

          Before any other resources provided by this Operator can be deployed, it is essential to create an
          OperatorConfig resource.

          The usual Helm Chart file `values.yaml`, like:
          ```yaml
          prometheus:
            enabled: true
            service:
              port: 8080
          resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          need to be encapsulated into a new custom resource called `OperatorConfig`:
          ```yaml
          apiVersion: operator.external-secrets.io/v1alpha1
          kind: OperatorConfig
          metadata:
            name: cluster
          spec:
            prometheus:
              enabled: true
              service:
                port: 8080
            resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          Once the OperatorConfig resource is deployed, the operator will create all helm chart resources, using the custom resource name as a preffix for all resources names, like for example a `Deployment` called `cluster-external-secrets`.

          ## Documentation

          * [Upstream Documentation](https://external-secrets.io)
          * [Helm Operator Install](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/install.md)
          * [Helm Operator Development](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/development.md)
          * [Helm Operator Release](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/release.md)

          ## Contributing

          You can contribute by:

          * Raising any issues you find using External Secrets Operator
          * Fixing issues by opening [Pull Requests](https://github.com/external-secrets/external-secrets-helm-operator/pulls)
          * Submitting a patch or opening a PR
          * Improving documentation
          * Talking about External Secrets Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/external-secrets/external-secrets-helm-operator/issues).

          ## License

          External Secrets Operator is under Apache 2.0 license. See the [LICENSE](LICENSE) file for details.
        displayName: External Secrets Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secrets
        - secrets-manager
        - vault
        - aws
        - azure
        - google
        - ibm
        - akeyless
        - yandex
        - gitlab
        - oracle
        links:
        - name: External Secrets Operator
          url: https://external-secrets.io
        - name: GitHub
          url: https://github.com/external-secrets/external-secrets
        - name: Slack
          url: https://kubernetes.slack.com/messages/external-secrets
        maintainers:
        - email: contact@external-secrets.io
          name: external-secrets community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: External Secrets
          url: https://external-secrets.io
        relatedImages:
        - ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
        - quay.io/community-operator-pipeline-prod/external-secrets-operator@sha256:6fa2ddca55d1d134b0938b47ea8a861de7408fa566ad806b200a379b8500a2a1
        version: 0.11.0
      entries:
      - name: external-secrets-operator.v0.11.0
        version: 0.11.0
      - name: external-secrets-operator.v0.10.7
        version: 0.10.7
      - name: external-secrets-operator.v0.10.6
        version: 0.10.6
      - name: external-secrets-operator.v0.10.5
        version: 0.10.5
      - name: external-secrets-operator.v0.10.4
        version: 0.10.4
      - name: external-secrets-operator.v0.10.3
        version: 0.10.3
      - name: external-secrets-operator.v0.10.2
        version: 0.10.2
      - name: external-secrets-operator.v0.10.1
        version: 0.10.1
      - name: external-secrets-operator.v0.10.0
        version: 0.10.0
      - name: external-secrets-operator.v0.9.20
        version: 0.9.20
      - name: external-secrets-operator.v0.9.19
        version: 0.9.19
      - name: external-secrets-operator.v0.9.18
        version: 0.9.18
      - name: external-secrets-operator.v0.9.17
        version: 0.9.17
      - name: external-secrets-operator.v0.9.16
        version: 0.9.16
      - name: external-secrets-operator.v0.9.15-2
        version: 0.9.15-2
      - name: external-secrets-operator.v0.9.14
        version: 0.9.14
      - name: external-secrets-operator.v0.9.13
        version: 0.9.13
      - name: external-secrets-operator.v0.9.12
        version: 0.9.12
      - name: external-secrets-operator.v0.9.11
        version: 0.9.11
      - name: external-secrets-operator.v0.9.10
        version: 0.9.10
      - name: external-secrets-operator.v0.9.9
        version: 0.9.9
      - name: external-secrets-operator.v0.9.8
        version: 0.9.8
      - name: external-secrets-operator.v0.9.7
        version: 0.9.7
      - name: external-secrets-operator.v0.9.6
        version: 0.9.6
      - name: external-secrets-operator.v0.9.5
        version: 0.9.5
      - name: external-secrets-operator.v0.9.4
        version: 0.9.4
      - name: external-secrets-operator.v0.9.3
        version: 0.9.3
      - name: external-secrets-operator.v0.9.2
        version: 0.9.2
      - name: external-secrets-operator.v0.9.1
        version: 0.9.1
      - name: external-secrets-operator.v0.9.0
        version: 0.9.0
      - name: external-secrets-operator.v0.8.7
        version: 0.8.7
      - name: external-secrets-operator.v0.8.6
        version: 0.8.6
      - name: external-secrets-operator.v0.8.5
        version: 0.8.5
      - name: external-secrets-operator.v0.8.4
        version: 0.8.4
      - name: external-secrets-operator.v0.8.3
        version: 0.8.3
      - name: external-secrets-operator.v0.8.2
        version: 0.8.2
      - name: external-secrets-operator.v0.8.1
        version: 0.8.1
      - name: external-secrets-operator.v0.8.0
        version: 0.8.0
      - name: external-secrets-operator.v0.7.2
        version: 0.7.2
      - name: external-secrets-operator.v0.7.1
        version: 0.7.1
      - name: external-secrets-operator.v0.7.0
        version: 0.7.0
      - name: external-secrets-operator.v0.7.0-rc1
        version: 0.7.0-rc1
      - name: external-secrets-operator.v0.6.1
        version: 0.6.1
      - name: external-secrets-operator.v0.6.0
        version: 0.6.0
      - name: external-secrets-operator.v0.5.9
        version: 0.5.9
      - name: external-secrets-operator.v0.5.8
        version: 0.5.8
      - name: external-secrets-operator.v0.5.7
        version: 0.5.7
      - name: external-secrets-operator.v0.5.6
        version: 0.5.6
      - name: external-secrets-operator.v0.5.5
        version: 0.5.5
      - name: external-secrets-operator.v0.5.4
        version: 0.5.4
      - name: external-secrets-operator.v0.5.3
        version: 0.5.3
      - name: external-secrets-operator.v0.5.2
        version: 0.5.2
      - name: external-secrets-operator.v0.5.1
        version: 0.5.1
      - name: external-secrets-operator.v0.5.0
        version: 0.5.0
      - name: external-secrets-operator.v0.4.4
        version: 0.4.4
      - name: external-secrets-operator.v0.4.2
        version: 0.4.2
      - name: external-secrets-operator.v0.4.1
        version: 0.4.1
      - name: external-secrets-operator.v0.3.11
        version: 0.3.11
      - name: external-secrets-operator.v0.3.10
        version: 0.3.10
      - name: external-secrets-operator.v0.3.9
        version: 0.3.9
      name: stable
    defaultChannel: alpha
    packageName: external-secrets-operator
    provider:
      name: External Secrets
      url: https://external-secrets.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhsso-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhsso-operator.7.5.1-opr-005
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "example-keycloakrealm"
                },
                "spec": {
                  "realm": {
                    "id": "basic",
                    "realm": "basic",
                    "enabled": true,
                    "displayName": "Basic Realm"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakBackup",
                "metadata": {
                  "name": "example-keycloakbackup"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "client-secret",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  },
                  "client": {
                    "clientId": "client-secret",
                    "secret": "client-secret",
                    "clientAuthenticatorType": "client-secret"
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakUser",
                "metadata": {
                  "name": "example-realm-user",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "user": {
                    "username": "realm_user",
                    "firstName": "John",
                    "lastName": "Doe",
                    "email": "user@example.com",
                    "enabled": true,
                    "emailVerified": false
                  },
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "False"
          containerImage: registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:66577ec32a9a975f304e52b8ab49b9f7602158dcab1ef5d8c28a5d3455491336
          createdAt: "2021-08-09 00:00:00"
          description: An Operator for installing and managing Red Hat Single Sign-On
          olm.skipRange: <7.5.0
          repository: https://github.com/keycloak/keycloak-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Red Hat Single Sign-On Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Realm
            displayName: KeycloakRealm
            kind: KeycloakRealm
            name: keycloakrealms.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Backup
            displayName: KeycloakBackup
            kind: KeycloakBackup
            name: keycloakbackups.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Client
            displayName: KeycloakClient
            kind: KeycloakClient
            name: keycloakclients.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On User
            displayName: KeycloakUser
            kind: KeycloakUser
            name: keycloakusers.keycloak.org
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Red Hat Single Sign-On.

          Red Hat Single Sign-On lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
          * Import Keycloak Clients
          * Import Keycloak Users
          * Create scheduled backups of the database
        displayName: Red Hat Single Sign-On Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://access.redhat.com/products/red-hat-single-sign-on
        - name: Keycloak
          url: https://www.keycloak.org/
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat Customer Service
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:5f0840a69642d13016430151892ec987fd67e711563b1dfb1a57353037c3bf79
        - registry.redhat.io/rh-sso-7/sso7-rhel8-init-container@sha256:614a9b1d7975769e8559e0b8c1578d16f6e3f7fee0778283797f4d62f5fc2100
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator-bundle@sha256:9fcdfa4615b91a5bb919aff71fc4df046365b2ee6d540b5f5f47f9ccaeb9877c
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:66577ec32a9a975f304e52b8ab49b9f7602158dcab1ef5d8c28a5d3455491336
        - registry.redhat.io/rh-sso-7/sso75-openj9-openshift-rhel8@sha256:2d4ea7226f43e7e8e8d3fcef6d425eb5104a15acf07791355033300b80db2901
        version: 7.5.1-opr-005
      entries:
      - name: rhsso-operator.7.5.1-opr-005
        version: 7.5.1-opr-005
      - name: rhsso-operator.7.5.1-opr-004
        version: 7.5.1-opr-004
      - name: rhsso-operator.7.5.1-opr-003
        version: 7.5.1-opr-003
      - name: rhsso-operator.7.5.1-opr-002
        version: 7.5.1-opr-002
      - name: rhsso-operator.7.5.1-opr-001
        version: 7.5.1-opr-001
      - name: rhsso-operator.7.5.0
        version: 7.5.0
      name: alpha
    - currentCSV: rhsso-operator.7.6.12-opr-005
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "example-keycloakrealm"
                },
                "spec": {
                  "realm": {
                    "id": "basic",
                    "realm": "basic",
                    "enabled": true,
                    "displayName": "Basic Realm"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakBackup",
                "metadata": {
                  "name": "example-keycloakbackup"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "client-secret",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  },
                  "client": {
                    "clientId": "client-secret",
                    "secret": "client-secret",
                    "clientAuthenticatorType": "client-secret"
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakUser",
                "metadata": {
                  "name": "example-realm-user",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "user": {
                    "username": "realm_user",
                    "firstName": "John",
                    "lastName": "Doe",
                    "email": "user@example.com",
                    "enabled": true,
                    "emailVerified": false
                  },
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "False"
          containerImage: registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:1d3048c0a324abbd8d47d9dffb42030e9cb4803e263a613451ba1f37424c427b
          createdAt: "2021-08-09 00:00:00"
          description: An Operator for installing and managing Red Hat Single Sign-On
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Red Hat Single Sign-On Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Realm
            displayName: KeycloakRealm
            kind: KeycloakRealm
            name: keycloakrealms.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Backup
            displayName: KeycloakBackup
            kind: KeycloakBackup
            name: keycloakbackups.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Client
            displayName: KeycloakClient
            kind: KeycloakClient
            name: keycloakclients.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On User
            displayName: KeycloakUser
            kind: KeycloakUser
            name: keycloakusers.keycloak.org
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Red Hat Single Sign-On.

          Red Hat Single Sign-On lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
          * Import Keycloak Clients
          * Import Keycloak Users
          * Create scheduled backups of the database
        displayName: Red Hat Single Sign-On Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://access.redhat.com/products/red-hat-single-sign-on
        - name: Keycloak
          url: https://www.keycloak.org/
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat Customer Service
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:1d3048c0a324abbd8d47d9dffb42030e9cb4803e263a613451ba1f37424c427b
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/rh-sso-7/sso7-rhel8-init-container@sha256:2e63f15a19d60447d9dfd11b0d04ba634932a9c43e63773051069cdc1f5ad504
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator-bundle@sha256:c542bd411eff7a4e875b942b23452aeed8e5d60e606f87a73e16f48420fa2400
        version: 7.6.12-opr-005
      entries:
      - name: rhsso-operator.7.6.12-opr-005
        version: 7.6.12-opr-005
      - name: rhsso-operator.7.6.12-opr-004
        version: 7.6.12-opr-004
      - name: rhsso-operator.7.6.12-opr-003
        version: 7.6.12-opr-003
      - name: rhsso-operator.7.6.12-opr-002
        version: 7.6.12-opr-002
      - name: rhsso-operator.7.6.12-opr-001
        version: 7.6.12-opr-001
      - name: rhsso-operator.7.6.11-opr-006
        version: 7.6.11-opr-006
      - name: rhsso-operator.7.6.11-opr-005
        version: 7.6.11-opr-005
      - name: rhsso-operator.7.6.11-opr-004
        version: 7.6.11-opr-004
      - name: rhsso-operator.7.6.11-opr-003
        version: 7.6.11-opr-003
      - name: rhsso-operator.7.6.11-opr-002
        version: 7.6.11-opr-002
      - name: rhsso-operator.7.6.11-opr-001
        version: 7.6.11-opr-001
      - name: rhsso-operator.7.6.10-opr-001
        version: 7.6.10-opr-001
      - name: rhsso-operator.7.6.9-opr-003
        version: 7.6.9-opr-003
      - name: rhsso-operator.7.6.9-opr-002
        version: 7.6.9-opr-002
      - name: rhsso-operator.7.6.9-opr-001
        version: 7.6.9-opr-001
      - name: rhsso-operator.7.6.8-opr-002
        version: 7.6.8-opr-002
      - name: rhsso-operator.7.6.8-opr-001
        version: 7.6.8-opr-001
      - name: rhsso-operator.7.6.7-opr-002
        version: 7.6.7-opr-002
      - name: rhsso-operator.7.6.7-opr-001
        version: 7.6.7-opr-001
      - name: rhsso-operator.7.6.6-opr-004
        version: 7.6.6-opr-004
      - name: rhsso-operator.7.6.6-opr-003
        version: 7.6.6-opr-003
      - name: rhsso-operator.7.6.6-opr-002
        version: 7.6.6-opr-002
      - name: rhsso-operator.7.6.6-opr-001
        version: 7.6.6-opr-001
      - name: rhsso-operator.7.6.5-opr-004
        version: 7.6.5-opr-004
      - name: rhsso-operator.7.6.5-opr-003
        version: 7.6.5-opr-003
      - name: rhsso-operator.7.6.5-opr-002
        version: 7.6.5-opr-002
      - name: rhsso-operator.7.6.5-opr-001
        version: 7.6.5-opr-001
      - name: rhsso-operator.7.6.4-opr-003
        version: 7.6.4-opr-003
      - name: rhsso-operator.7.6.4-opr-002
        version: 7.6.4-opr-002
      - name: rhsso-operator.7.6.4-opr-001
        version: 7.6.4-opr-001
      - name: rhsso-operator.7.6.3-opr-002
        version: 7.6.3-opr-002
      - name: rhsso-operator.7.6.3-opr-001
        version: 7.6.3-opr-001
      - name: rhsso-operator.7.6.2-opr-003
        version: 7.6.2-opr-003
      - name: rhsso-operator.7.6.2-opr-002
        version: 7.6.2-opr-002
      - name: rhsso-operator.7.6.2-opr-001
        version: 7.6.2-opr-001
      - name: rhsso-operator.7.6.1-opr-005
        version: 7.6.1-opr-005
      - name: rhsso-operator.7.6.1-opr-004
        version: 7.6.1-opr-004
      - name: rhsso-operator.7.6.1-opr-003
        version: 7.6.1-opr-003
      - name: rhsso-operator.7.6.1-opr-002
        version: 7.6.1-opr-002
      - name: rhsso-operator.7.6.1-opr-001
        version: 7.6.1-opr-001
      - name: rhsso-operator.7.6.0-opr-005
        version: 7.6.0-opr-005
      - name: rhsso-operator.7.6.0-opr-004
        version: 7.6.0-opr-004
      - name: rhsso-operator.7.6.0-opr-003
        version: 7.6.0-opr-003
      - name: rhsso-operator.7.6.0-opr-002
        version: 7.6.0-opr-002
      - name: rhsso-operator.7.6.0-opr-001
        version: 7.6.0-opr-001
      - name: rhsso-operator.7.5.2-opr-003
        version: 7.5.2-opr-003
      - name: rhsso-operator.7.5.2-opr-002
        version: 7.5.2-opr-002
      - name: rhsso-operator.7.5.2-opr-001
        version: 7.5.2-opr-001
      - name: rhsso-operator.7.5.1-opr-011
        version: 7.5.1-opr-011
      - name: rhsso-operator.7.5.1-opr-010
        version: 7.5.1-opr-010
      - name: rhsso-operator.7.5.1-opr-009
        version: 7.5.1-opr-009
      - name: rhsso-operator.7.5.1-opr-009-0.1646836600.p
        version: 7.5.1-opr-009+0.1646836600.p
      - name: rhsso-operator.7.5.1-opr-008
        version: 7.5.1-opr-008
      - name: rhsso-operator.7.5.1-opr-007
        version: 7.5.1-opr-007
      - name: rhsso-operator.7.5.1-opr-006
        version: 7.5.1-opr-006
      - name: rhsso-operator.7.5.1-opr-005
        version: 7.5.1-opr-005
      - name: rhsso-operator.7.5.1-opr-004
        version: 7.5.1-opr-004
      - name: rhsso-operator.7.5.1-opr-003
        version: 7.5.1-opr-003
      - name: rhsso-operator.7.5.1-opr-002
        version: 7.5.1-opr-002
      - name: rhsso-operator.7.5.1-opr-001
        version: 7.5.1-opr-001
      - name: rhsso-operator.7.5.0
        version: 7.5.0
      name: stable
    defaultChannel: stable
    packageName: rhsso-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: amq7-interconnect-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq7-interconnect-operator.v1.10.20
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"interconnectedcloud.github.io/v1alpha1","kind":"Interconnect","metadata":{"name":"amq-interconnect"},"spec":{"deploymentPlan":{"size":2,"role":"interior","placement":"Any"}}}]'
          capabilities: Basic Install
          categories: Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
          createdAt: "2019-06-28T22:00:00Z"
          description: Layer 7 Networking
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: https://github.com/interconnectedcloud/qdr-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An instance of AMQ Interconnect
            displayName: Red Hat Integration - AMQ Interconnect
            kind: Interconnect
            name: interconnects.interconnectedcloud.github.io
            version: v1alpha1
        description: |2

          AMQ Interconnect is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and IoT/edge deployments. AMQ Interconnect transparently learns the addresses of messaging endpoints (such as clients, servers, and message brokers) and flexibly routes messages between them.

          ### Core Capabilities

          * High throughput, low latency, shortest path message forwarding based on Layer 7 address routing mechanisms

          * `Interior` mode deployments for any arbitrary topology of geographically-distributed and interconnected routers

          * `Edge` mode deployments for extremely large scale device endpoint connectivity

          * Automatic message traffic rerouting when the network topology changes (resiliency without restrictions)

          * Flexible addressing schemes and delivery semantics (anycast, multicast, closest, balanced)

          * Integrated management with full support for the draft AMQP management specification

          * Full-featured security capabilities for authentication, authorization, and policy-based resource access control

          ### Operator Features

          * **Flexible deployment plans** - Configurable deployment plans are available for `interior` and `edge` mode scenarios. These plans include all dependent resources

          * **Placement directives** - Directives are provided to control how the pods should be scheduled

          * **Connectivity configuration defaults** - Configuration defaults are automatically generated for listeners, connectors, and SSL/TLS setup

          * **Exposes the service** - Integrated management of OpenShift Routes for exposed listener services for client, inter-router, and edge communications

          * **Security certificate management** - Certificates are created and managed through integration with AMQ Certificate Manager

          ### Troubleshooting

          After deploying Interconnect, check any of the following to verify that it is operating correctly:

          * The Interconnect instance

          * The Deployment (or DaemonSet) instance

          * An individual pod for the Deployment (or DaemonSet)

          * A Route created for exposed services

          In addition, use `qdstat` commands to verify connectivity. This can be done using `oc exec` against an interconnect pod, for example `oc exec -it <podname> -- qdstat -c`
          to list connections.

          ### Documentation

          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/products/red_hat_amq#interconnect).
        displayName: Red Hat Integration - AMQ Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq#interconnect
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-interconnect-operator-metadata@sha256:d7b2c9cc8181eb372c787bb29323dc2d4cd1bb30ddb9e4bb15081a7a61e516a0
        - registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
        - registry.redhat.io/amq7/amq-interconnect@sha256:31d87473fa684178a694f9ee331d3c80f2653f9533cb65c2a325752166a077e9
        version: 1.10.20
      entries:
      - name: amq7-interconnect-operator.v1.10.20
        version: 1.10.20
      - name: amq7-interconnect-operator.v1.10.19
        version: 1.10.19
      - name: amq7-interconnect-operator.v1.10.18
        version: 1.10.18
      - name: amq7-interconnect-operator.v1.10.17
        version: 1.10.17
      - name: amq7-interconnect-operator.v1.10.16
        version: 1.10.16
      - name: amq7-interconnect-operator.v1.10.15
        version: 1.10.15
      - name: amq7-interconnect-operator.v1.10.14
        version: 1.10.14
      - name: amq7-interconnect-operator.v1.10.13
        version: 1.10.13
      - name: amq7-interconnect-operator.v1.10.12
        version: 1.10.12
      - name: amq7-interconnect-operator.v1.10.11
        version: 1.10.11
      - name: amq7-interconnect-operator.v1.10.10
        version: 1.10.10
      - name: amq7-interconnect-operator.v1.10.9
        version: 1.10.9
      - name: amq7-interconnect-operator.v1.10.8
        version: 1.10.8
      - name: amq7-interconnect-operator.v1.10.7
        version: 1.10.7
      - name: amq7-interconnect-operator.v1.10.6
        version: 1.10.6
      - name: amq7-interconnect-operator.v1.10.5
        version: 1.10.5
      - name: amq7-interconnect-operator.v1.10.4
        version: 1.10.4
      - name: amq7-interconnect-operator.v1.10.3
        version: 1.10.3
      - name: amq7-interconnect-operator.v1.10.2
        version: 1.10.2
      name: 1.10.x
    - currentCSV: amq7-interconnect-operator.v1.10.20
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"interconnectedcloud.github.io/v1alpha1","kind":"Interconnect","metadata":{"name":"amq-interconnect"},"spec":{"deploymentPlan":{"size":2,"role":"interior","placement":"Any"}}}]'
          capabilities: Basic Install
          categories: Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
          createdAt: "2019-06-28T22:00:00Z"
          description: Layer 7 Networking
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: https://github.com/interconnectedcloud/qdr-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An instance of AMQ Interconnect
            displayName: Red Hat Integration - AMQ Interconnect
            kind: Interconnect
            name: interconnects.interconnectedcloud.github.io
            version: v1alpha1
        description: |2

          AMQ Interconnect is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and IoT/edge deployments. AMQ Interconnect transparently learns the addresses of messaging endpoints (such as clients, servers, and message brokers) and flexibly routes messages between them.

          ### Core Capabilities

          * High throughput, low latency, shortest path message forwarding based on Layer 7 address routing mechanisms

          * `Interior` mode deployments for any arbitrary topology of geographically-distributed and interconnected routers

          * `Edge` mode deployments for extremely large scale device endpoint connectivity

          * Automatic message traffic rerouting when the network topology changes (resiliency without restrictions)

          * Flexible addressing schemes and delivery semantics (anycast, multicast, closest, balanced)

          * Integrated management with full support for the draft AMQP management specification

          * Full-featured security capabilities for authentication, authorization, and policy-based resource access control

          ### Operator Features

          * **Flexible deployment plans** - Configurable deployment plans are available for `interior` and `edge` mode scenarios. These plans include all dependent resources

          * **Placement directives** - Directives are provided to control how the pods should be scheduled

          * **Connectivity configuration defaults** - Configuration defaults are automatically generated for listeners, connectors, and SSL/TLS setup

          * **Exposes the service** - Integrated management of OpenShift Routes for exposed listener services for client, inter-router, and edge communications

          * **Security certificate management** - Certificates are created and managed through integration with AMQ Certificate Manager

          ### Troubleshooting

          After deploying Interconnect, check any of the following to verify that it is operating correctly:

          * The Interconnect instance

          * The Deployment (or DaemonSet) instance

          * An individual pod for the Deployment (or DaemonSet)

          * A Route created for exposed services

          In addition, use `qdstat` commands to verify connectivity. This can be done using `oc exec` against an interconnect pod, for example `oc exec -it <podname> -- qdstat -c`
          to list connections.

          ### Documentation

          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/products/red_hat_amq#interconnect).
        displayName: Red Hat Integration - AMQ Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq#interconnect
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-interconnect-operator-metadata@sha256:d7b2c9cc8181eb372c787bb29323dc2d4cd1bb30ddb9e4bb15081a7a61e516a0
        - registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
        - registry.redhat.io/amq7/amq-interconnect@sha256:31d87473fa684178a694f9ee331d3c80f2653f9533cb65c2a325752166a077e9
        version: 1.10.20
      entries:
      - name: amq7-interconnect-operator.v1.10.20
        version: 1.10.20
      - name: amq7-interconnect-operator.v1.10.19
        version: 1.10.19
      - name: amq7-interconnect-operator.v1.10.18
        version: 1.10.18
      - name: amq7-interconnect-operator.v1.10.17
        version: 1.10.17
      - name: amq7-interconnect-operator.v1.10.16
        version: 1.10.16
      - name: amq7-interconnect-operator.v1.10.15
        version: 1.10.15
      - name: amq7-interconnect-operator.v1.10.14
        version: 1.10.14
      - name: amq7-interconnect-operator.v1.10.13
        version: 1.10.13
      - name: amq7-interconnect-operator.v1.10.12
        version: 1.10.12
      - name: amq7-interconnect-operator.v1.10.11
        version: 1.10.11
      - name: amq7-interconnect-operator.v1.10.10
        version: 1.10.10
      - name: amq7-interconnect-operator.v1.10.9
        version: 1.10.9
      - name: amq7-interconnect-operator.v1.10.8
        version: 1.10.8
      - name: amq7-interconnect-operator.v1.10.7
        version: 1.10.7
      - name: amq7-interconnect-operator.v1.10.6
        version: 1.10.6
      - name: amq7-interconnect-operator.v1.10.5
        version: 1.10.5
      - name: amq7-interconnect-operator.v1.10.4
        version: 1.10.4
      - name: amq7-interconnect-operator.v1.10.3
        version: 1.10.3
      - name: amq7-interconnect-operator.v1.10.2
        version: 1.10.2
      name: 1.2.0
    - currentCSV: amq7-interconnect-operator.v1.10.20
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"interconnectedcloud.github.io/v1alpha1","kind":"Interconnect","metadata":{"name":"amq-interconnect"},"spec":{"deploymentPlan":{"size":2,"role":"interior","placement":"Any"}}}]'
          capabilities: Basic Install
          categories: Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
          createdAt: "2019-06-28T22:00:00Z"
          description: Layer 7 Networking
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: https://github.com/interconnectedcloud/qdr-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An instance of AMQ Interconnect
            displayName: Red Hat Integration - AMQ Interconnect
            kind: Interconnect
            name: interconnects.interconnectedcloud.github.io
            version: v1alpha1
        description: |2

          AMQ Interconnect is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and IoT/edge deployments. AMQ Interconnect transparently learns the addresses of messaging endpoints (such as clients, servers, and message brokers) and flexibly routes messages between them.

          ### Core Capabilities

          * High throughput, low latency, shortest path message forwarding based on Layer 7 address routing mechanisms

          * `Interior` mode deployments for any arbitrary topology of geographically-distributed and interconnected routers

          * `Edge` mode deployments for extremely large scale device endpoint connectivity

          * Automatic message traffic rerouting when the network topology changes (resiliency without restrictions)

          * Flexible addressing schemes and delivery semantics (anycast, multicast, closest, balanced)

          * Integrated management with full support for the draft AMQP management specification

          * Full-featured security capabilities for authentication, authorization, and policy-based resource access control

          ### Operator Features

          * **Flexible deployment plans** - Configurable deployment plans are available for `interior` and `edge` mode scenarios. These plans include all dependent resources

          * **Placement directives** - Directives are provided to control how the pods should be scheduled

          * **Connectivity configuration defaults** - Configuration defaults are automatically generated for listeners, connectors, and SSL/TLS setup

          * **Exposes the service** - Integrated management of OpenShift Routes for exposed listener services for client, inter-router, and edge communications

          * **Security certificate management** - Certificates are created and managed through integration with AMQ Certificate Manager

          ### Troubleshooting

          After deploying Interconnect, check any of the following to verify that it is operating correctly:

          * The Interconnect instance

          * The Deployment (or DaemonSet) instance

          * An individual pod for the Deployment (or DaemonSet)

          * A Route created for exposed services

          In addition, use `qdstat` commands to verify connectivity. This can be done using `oc exec` against an interconnect pod, for example `oc exec -it <podname> -- qdstat -c`
          to list connections.

          ### Documentation

          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/products/red_hat_amq#interconnect).
        displayName: Red Hat Integration - AMQ Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq#interconnect
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-interconnect@sha256:31d87473fa684178a694f9ee331d3c80f2653f9533cb65c2a325752166a077e9
        - registry.redhat.io/amq7/amq-interconnect-operator-metadata@sha256:d7b2c9cc8181eb372c787bb29323dc2d4cd1bb30ddb9e4bb15081a7a61e516a0
        - registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
        version: 1.10.20
      entries:
      - name: amq7-interconnect-operator.v1.10.20
        version: 1.10.20
      - name: amq7-interconnect-operator.v1.10.19
        version: 1.10.19
      - name: amq7-interconnect-operator.v1.10.18
        version: 1.10.18
      - name: amq7-interconnect-operator.v1.10.17
        version: 1.10.17
      - name: amq7-interconnect-operator.v1.10.16
        version: 1.10.16
      - name: amq7-interconnect-operator.v1.10.15
        version: 1.10.15
      - name: amq7-interconnect-operator.v1.10.14
        version: 1.10.14
      - name: amq7-interconnect-operator.v1.10.13
        version: 1.10.13
      - name: amq7-interconnect-operator.v1.10.12
        version: 1.10.12
      - name: amq7-interconnect-operator.v1.10.11
        version: 1.10.11
      - name: amq7-interconnect-operator.v1.10.10
        version: 1.10.10
      - name: amq7-interconnect-operator.v1.10.9
        version: 1.10.9
      - name: amq7-interconnect-operator.v1.10.8
        version: 1.10.8
      - name: amq7-interconnect-operator.v1.10.7
        version: 1.10.7
      - name: amq7-interconnect-operator.v1.10.6
        version: 1.10.6
      - name: amq7-interconnect-operator.v1.10.5
        version: 1.10.5
      - name: amq7-interconnect-operator.v1.10.4
        version: 1.10.4
      - name: amq7-interconnect-operator.v1.10.3
        version: 1.10.3
      - name: amq7-interconnect-operator.v1.10.2
        version: 1.10.2
      name: latest
    defaultChannel: 1.10.x
    packageName: amq7-interconnect-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Altair Engineering Inc.
      provider-url: ""
    name: anzo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: anzo-operator.v3.1.300
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "anzo.cambridgesemantics.com/v2",
                "kind": "Anzo",
                "metadata": {
                  "name": "no-persistence"
                },
                "spec": {
                  "jsonActivation": true,
                  "jvmMemory": "4096m",
                  "nodeConfig": {
                    "spec": {
                      "replicas": 1,
                      "selector": {
                        "matchLabels": {
                          "app": "anzo"
                        }
                      },
                      "serviceName": "anzo-no-persistence",
                      "template": {
                        "metadata": {
                          "annotations": {
                            "cluster-autoscaler.kubernetes.io/safe-to-evict": "false"
                          },
                          "labels": {
                            "app": "anzo"
                          }
                        },
                        "spec": {
                          "containers": [
                            {
                              "image": "registry.connect.redhat.com/cambridgesemantics/anzo@sha256:5e5050fed0362b35f0f4c95deb85fc22caf59e387b58efb0d593102e2a793938",
                              "imagePullPolicy": "Always",
                              "name": "anzo",
                              "resources": {
                                "limits": {
                                  "cpu": "2.0",
                                  "memory": "8.0Gi"
                                },
                                "requests": {
                                  "cpu": "2.0",
                                  "memory": "8.0Gi"
                                }
                              }
                            }
                          ],
                          "initContainers": [
                            {
                              "name": "anzo-init",
                              "resources": {
                                "limits": {
                                  "cpu": "0.5",
                                  "memory": "2Gi"
                                },
                                "requests": {
                                  "cpu": "0.5",
                                  "memory": "2Gi"
                                }
                              }
                            }
                          ],
                          "securityContext": {
                            "fsGroup": 1001
                          },
                          "serviceAccountName": "anzo-operator"
                        }
                      }
                    }
                  },
                  "role": "AnzoServer"
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          certified: "true"
          containerImage: registry.connect.redhat.com/cambridgesemantics/anzo-operator@sha256:29dc94eafcd5ce589c6ebfa6549b88d0269bd20f9baf1116b698a78c5992368c
          createdAt: "2025-10-08T06:53:22Z"
          description: kubernetes operator for Altair Graph Studio
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: unknown
          repository: ""
          support: Altair Customer Support
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnzoBackup is the Schema for the anzobackups API
            displayName: Altair Graph Studio Backup
            kind: AnzoBackup
            name: anzobackups.anzobackup.cambridgesemantics.com
            version: v1beta1
          - description: Altair Graph Studio is the Schema for the anzos API
            displayName: Altair Graph Studio Operator
            kind: Anzo
            name: anzos.anzo.cambridgesemantics.com
            version: v2
        description: |-
          The Altair Graph Studio Operator provides the way to install and configure an altair graph studio server and agent setup on Red Hat K8S environment.

          ### Installation
           Refer [installation instructions]( https://github.com/cambridgesemantics/csi-k8s-operator-anzo/blob/v3.1.3/README.md )

          ### Documentation

          You can find our documentation [here.]( https://docs.cambridgesemantics.com/anzo/userdoc/deploy-k8s.htm )

          ### Support

          We offer Support to our customers [here]( https://altair.com/customer-support ) or by emailing the Data Analytics Support team at dasupport@altair.com.
        displayName: Altair Graph Studio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Big Data
        links:
        - name: Altair Graph Studio Operator
          url: https://github.com/cambridgesemantics/csi-k8s-operator-anzo/blob/v3.1.3/README_openshift.md
        maintainers:
        - email: fschwichtenberg@altair.com
          name: Frank Schwichtenberg
        maturity: stable
        provider:
          name: Altair Engineering Inc.
        relatedImages:
        - registry.connect.redhat.com/cambridgesemantics/anzo-operator@sha256:29dc94eafcd5ce589c6ebfa6549b88d0269bd20f9baf1116b698a78c5992368c
        - registry.connect.redhat.com/cambridgesemantics/anzo@sha256:5e5050fed0362b35f0f4c95deb85fc22caf59e387b58efb0d593102e2a793938
        - registry.connect.redhat.com/cambridgesemantics/anzo-operator-bundle@sha256:5a7000171e26cee4028c2bd91b50ad37bccf5e168ac413c19689a9ee914a2219
        version: 3.1.300
      entries:
      - name: anzo-operator.v3.1.300
        version: 3.1.300
      - name: anzo-operator.v3.1.200
        version: 3.1.200
      - name: anzo-operator.v3.1.106
        version: 3.1.106
      - name: anzo-operator.v3.1.105
        version: 3.1.105
      name: stable
    defaultChannel: stable
    packageName: anzo-operator
    provider:
      name: Altair Engineering Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: ""
    name: percona-server-mysql-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-server-mysql-operator-certified.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQL",
              "metadata": {
                "name": "ps-cluster1",
                "finalizers": [
                  "percona.com/delete-mysql-pods-in-order"
                ]
              },
              "spec": {
                "crVersion": "1.0.0",
                "secretsName": "ps-cluster1-secrets",
                "sslSecretName": "ps-cluster1-ssl",
                "updateStrategy": "SmartUpdate",
                "upgradeOptions": {
                  "versionServiceEndpoint": "https://check.percona.com",
                  "apply": "disabled"
                },
                "initContainer" : {
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator@sha256:71850c11e72e87c09e2f423c57963c143f5e3fac9ac7d062119f5e4254f158f7"
                },
                "mysql": {
                  "clusterType": "group-replication",
                  "autoRecovery": true,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:ea97c9df3e362728fc3819c28c841498f5a1765945b9556bc964b218b7d4dc97",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "resources": {
                    "requests": {
                      "memory": "2Gi"
                    },
                    "limits": {
                      "memory": "4Gi"
                    }
                  },
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "exposePrimary": {
                    "enabled": true
                  },
                  "volumeSpec": {
                    "persistentVolumeClaim": {
                      "resources": {
                        "requests": {
                          "storage": "2Gi"
                        }
                      }
                    }
                  },
                  "gracePeriod": 600
                },
                "proxy": {
                  "haproxy": {
                    "enabled": true,
                    "size": 3,
                    "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e64e468ac0ed2036ee164631469cc71821dcb84a6d568883f704d0eacaf84bb4",
                    "imagePullPolicy": "Always",
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "1Gi",
                        "cpu": "600m"
                      }
                    },
                    "gracePeriod": 30,
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    }
                  },
                  "router": {
                    "enabled": false,
                    "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e083c632c118cd4af472d9030a7900401f4b338e069c91996fe33747b77be985",
                    "imagePullPolicy": "Always",
                    "size": 3,
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "256M"
                      },
                      "limits": {
                        "memory": "256M"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "gracePeriod": 30
                  }
                },
                "orchestrator": {
                  "enabled": false,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:a8a70f8882925b0a1a46893376e29af73646117b22e1eeb5a0a89876a907651f",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "gracePeriod": 30,
                  "resources": {
                    "requests": {
                      "memory": "128M"
                    },
                    "limits": {
                      "memory": "256M"
                    }
                  }
                },
                "pmm": {
                  "enabled": false,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:1c59d7188f8404e0294f4bfb3d2c3600107f808a023668a170a6b8036c56619b",
                  "imagePullPolicy": "Always",
                  "resources": {
                    "requests": {
                      "memory": "150M",
                      "cpu": "300m"
                    }
                  },
                  "serverHost": "monitoring-service"
                },
                "backup": {
                  "enabled": true,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:423d64bdb0220c7df34300b88ec10b3706443d8f4c9111d0bd752c9279eebbe3",
                  "imagePullPolicy": "Always",
                  "storages": {
                    "s3-us-west": {
                      "type": "s3",
                      "verifyTLS": true,
                      "s3": {
                        "bucket": "S3-BACKUP-BUCKET-NAME-HERE",
                        "credentialsSecret": "ps-cluster1-s3-credentials",
                        "region": "us-west-2"
                      }
                    }
                  }
                },
                "toolkit": {
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:b7a4a2ca71ebf2b35786ab614221cbefb032fd5dfb5c5a478efcdd23931dd70b",
                  "imagePullPolicy": "Always"
                }
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLBackup",
              "metadata": {
                "name": "backup1",
                "finalizers": [
                  "percona.com/delete-backup"
                ]
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "storageName": "minio"
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLRestore",
              "metadata": {
                "name": "restore1"
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "backupName": "backup1"
              }
            }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: registry.connect.redhat.com/percona/percona-server-mysql-operator@sha256:71850c11e72e87c09e2f423c57963c143f5e3fac9ac7d062119f5e4254f158f7
          createdAt: "2025-11-13T08:00:00.000Z"
          description: Percona Operator for MySQL based on Percona Server for MySQL
            automates the creation and management of highly available, enterprise-ready
            MySQL database clusters on Kubernetes.
          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"
          repository: https://github.com/percona/percona-server-mysql-operator
          support: Percona
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaServerMySQLBackup is the Schema for the perconaservermysqlbackups
              API
            displayName: Percona Server MySQL Backup
            kind: PerconaServerMySQLBackup
            name: perconaservermysqlbackups.ps.percona.com
            version: v1
          - description: PerconaServerMySQLRestore is the Schema for the perconaservermysqlrestores
              API
            displayName: Percona Server MySQL Restore
            kind: PerconaServerMySQLRestore
            name: perconaservermysqlrestores.ps.percona.com
            version: v1
          - description: PerconaServerMySQL is the Schema for the perconaservermysqls
              API
            displayName: Percona Server MySQL
            kind: PerconaServerMySQL
            name: perconaservermysqls.ps.percona.com
            version: v1
        description: |2+

          ## Percona is Cloud Native

          Percona Operator for MySQL based on Percona Server for MySQL follows our best practices for deployment and configuration of highly-available, fault-tolerant MySQL instances in a Kubernetes-based environment on-premises or in the cloud. It provides the following capabilities:
          * Deploy group replication MySQL clusters with HAProxy or MySQL Router
          * Deploy asynchronous replication MySQL clusters with Orchestrator and HAProxy
          * Expose clusters with regular Kubernetes Services
          * Monitor the cluster with Percona Monitoring and Management
          * Customize MySQL configuration
          * Manage system user passwords

        displayName: Percona Operator for MySQL based on Percona Server for MySQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mysql
        - percona
        - database
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-mysql/ps/
        - name: Github
          url: https://github.com/percona/percona-server-mysql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
        relatedImages:
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e083c632c118cd4af472d9030a7900401f4b338e069c91996fe33747b77be985
        - registry.connect.redhat.com/percona/percona-server-mysql-operator@sha256:71850c11e72e87c09e2f423c57963c143f5e3fac9ac7d062119f5e4254f158f7
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:1c59d7188f8404e0294f4bfb3d2c3600107f808a023668a170a6b8036c56619b
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:315efeac572c48cc6f118bba7e0b2545ad396142f60328f2db9620ae0ad57e45
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:b7a4a2ca71ebf2b35786ab614221cbefb032fd5dfb5c5a478efcdd23931dd70b
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e64e468ac0ed2036ee164631469cc71821dcb84a6d568883f704d0eacaf84bb4
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-bundle@sha256:bb3bf3339f0719b37fbdd9d2d6d47aeff1fa063e319bc6aeb24c384cce5cc061
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:3a420b803cd39c7c2a3ff414d45d1858df39599961339f5c02df0681f558ccdd
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@ssha256:967bafa0823c90aa8fa9c25a9012be36b0deef64e255294a09148d77ce6aea68
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:423d64bdb0220c7df34300b88ec10b3706443d8f4c9111d0bd752c9279eebbe3
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:a8a70f8882925b0a1a46893376e29af73646117b22e1eeb5a0a89876a907651f
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:ea97c9df3e362728fc3819c28c841498f5a1765945b9556bc964b218b7d4dc97
        version: 1.0.0
      entries:
      - name: percona-server-mysql-operator-certified.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: percona-server-mysql-operator-certified
    provider:
      name: Percona
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Arctera US LLC
      provider-url: https://www.arctera.io
    name: infoscale-sds-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infoscale-sds-operator.v8.0.230
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "8.0.230"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleStoragePool",
                "metadata": {
                  "name": "infoscalestoragepool-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:f4947eab2b31fccc86b5d5d0d3fd4eb1f7513fd8325e379cc259f5ccd1dfc3e4
          createdAt: "2023-10-26T20:36:59Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          olm.skipRange: <8.0.230
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.22.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleStoragePool is the Schema for the infoscalestoragepools
              API
            displayName: InfoScale Storage Pool
            kind: InfoScaleStoragePool
            name: infoscalestoragepools.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Veritas InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/151215298-151215302-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >

          spec:
            version: "8.0.230"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Veritas recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator-bundle@sha256:12d6ae3f139daf33dbf104499c195d9915470b957f401b5f622cfde92350a6c1
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:f4947eab2b31fccc86b5d5d0d3fd4eb1f7513fd8325e379cc259f5ccd1dfc3e4
        version: 8.0.230
      entries:
      - name: infoscale-sds-operator.v8.0.230
        version: 8.0.230
      - name: infoscale-sds-operator.v8.0.220
        version: 8.0.220
      - name: infoscale-sds-operator.v8.0.110
        version: 8.0.110
      - name: infoscale-sds-operator.v8.0.100
        version: 8.0.100
      name: 8.0.200x
    - currentCSV: infoscale-sds-operator.v8.0.330
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "8.0.330"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:dab501b99373c840c7e8e3ab479fa273b39f9bf8a896f3f1e4e945f4ab81f64e
          createdAt: "2024-06-24T09:03:32Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Veritas InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/151215298-151215302-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >

          spec:
            version: "8.0.330"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Veritas recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator-bundle@sha256:965ec7875eccc6a5fc56c3b8f0da668d826d34580117ba1438a607a9d0d13b73
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:dab501b99373c840c7e8e3ab479fa273b39f9bf8a896f3f1e4e945f4ab81f64e
        version: 8.0.330
      entries:
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: 8.0.300x
    - currentCSV: infoscale-sds-operator.v8.0.410
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "8.0.410"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:43397ed6430691b35c71bc4a4ff4eddcbd685e84cf0a3e3604e19feb4f363d9f
          createdAt: "2024-07-30T09:00:57Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >

          spec:
            version: "8.0.410"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:a51a626126460cbf8e614fd3287bce3419fc5b728788c5cb9b1ab1fa1cf98259
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:43397ed6430691b35c71bc4a4ff4eddcbd685e84cf0a3e3604e19feb4f363d9f
        version: 8.0.410
      entries:
      - name: infoscale-sds-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-sds-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-sds-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: 8.0.400x
    - currentCSV: infoscale-sds-operator.v9.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "9.1.0"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:8c5db3e0553bf9feed1f1728d4a51a28769dd9b002c9d937c6b867e3a3981780
          createdAt: "2025-09-11T19:37:19Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >
            namespace: < Infoscale Cluster Namespace >

          spec:
            version: "9.1.0"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:b7a875f1c540ea0a3c944f956c1b7b0f0b6ba55dcadaee6e9420513a3e979577
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:8c5db3e0553bf9feed1f1728d4a51a28769dd9b002c9d937c6b867e3a3981780
        version: 9.0.1
      entries:
      - name: infoscale-sds-operator.v9.0.1
        version: 9.0.1
      name: beta
    - currentCSV: infoscale-sds-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "9.1.0"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
          createdAt: "2025-09-11T19:37:19Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >
            namespace: < Infoscale Cluster Namespace >

          spec:
            version: "9.1.0"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:3f9cc14ae694c6a51d65fa5e32cfb737654c4c870f01e5522ff9ba5e2ad7f937
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
        version: 9.1.0
      entries:
      - name: infoscale-sds-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-sds-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-sds-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-sds-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: fast
    - currentCSV: infoscale-sds-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "9.1.0"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
          createdAt: "2025-09-11T19:37:19Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >
            namespace: < Infoscale Cluster Namespace >

          spec:
            version: "9.1.0"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:3f9cc14ae694c6a51d65fa5e32cfb737654c4c870f01e5522ff9ba5e2ad7f937
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
        version: 9.1.0
      entries:
      - name: infoscale-sds-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-sds-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-sds-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-sds-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: stable
    defaultChannel: fast
    packageName: infoscale-sds-operator
    provider:
      name: Arctera US LLC
      url: https://www.arctera.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Redis
      provider-url: ""
    name: redis-enterprise-operator-cert
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: redis-enterprise-operator.v8.0.2-6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/services-manager@sha256:1e858656f7ec0fa64cd6b159ae4748b24aac274b5ec4418409a485a6ad38cb9f
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:d751658d4a1b56e54ee404b8ff995f3c4056cb71020a3dfcbb064e86366f4a44
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:65b77d4e8d4d733812dd5de1890f25f3b85dae94b92e6c35f89ab45c2c8ab337
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:750c5f78fd0dedcaecb7aba2bb3afa527622db928fec696733ad07e5fa856f85
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:bbe02b59de239cef008edb84508a2800080423d6aa17e1b2de6c81e3897d5a93
        version: 8.0.2-6.1
      entries:
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.2
    - currentCSV: redis-enterprise-operator.v8.0.2-2.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:8ee164c4aa7e1a6eb2b9a717ba2ef10399962db8d08989b9d28d4a6bb55ed434
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:8487e6a03404387d1d749080fb7e1e5025b1a762a9b617ca1f211e2999bb55d8
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:bd85f2f6dbff84eba2eab6ade2dde9adc07afedfaf2b40471079eb09c3677e8d
        - registry.connect.redhat.com/redislabs/services-manager@sha256:f13145b0998d9267871b7526c12018da4ba4bfc35aa4c56199a022dc96ddcb96
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:2ed588ff843778a111539e0857f7961a5a64393c70a1794a27502b488cffb38c
        version: 8.0.2-2.9
      entries:
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.2-2.9
    - currentCSV: redis-enterprise-operator.v8.0.2-6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:d751658d4a1b56e54ee404b8ff995f3c4056cb71020a3dfcbb064e86366f4a44
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:65b77d4e8d4d733812dd5de1890f25f3b85dae94b92e6c35f89ab45c2c8ab337
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:750c5f78fd0dedcaecb7aba2bb3afa527622db928fec696733ad07e5fa856f85
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:bbe02b59de239cef008edb84508a2800080423d6aa17e1b2de6c81e3897d5a93
        - registry.connect.redhat.com/redislabs/services-manager@sha256:1e858656f7ec0fa64cd6b159ae4748b24aac274b5ec4418409a485a6ad38cb9f
        version: 8.0.2-6.1
      entries:
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.2-6.1
    - currentCSV: redis-enterprise-operator.v8.0.6-8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:10c2630183aaf357bca793dbe239e7011d2527dfa6ff5f15c0278bbc501eaeb4
        - registry.connect.redhat.com/redislabs/services-manager@sha256:8cf316b7c8381387cb092d691a9a5bf098b8604229cabf95994eeb105d962037
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:5540b0c0150e0b1b3979cd0d96ad2853472cd9fafdc03af5835d0e34ec329c82
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:4f070787e98014dfa13587931e73751e616cb56848236346a1cccd31cc0543bf
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:7c9a0c2c41d4104a4e4d319b63cc7188ff1e72ed3f75ec51f8ee1a022ac83e16
        version: 8.0.6-8.0
      entries:
      - name: redis-enterprise-operator.v8.0.6-8.0
        version: 8.0.6-8.0
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.6
    - currentCSV: redis-enterprise-operator.v8.0.6-8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/services-manager@sha256:8cf316b7c8381387cb092d691a9a5bf098b8604229cabf95994eeb105d962037
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:5540b0c0150e0b1b3979cd0d96ad2853472cd9fafdc03af5835d0e34ec329c82
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:4f070787e98014dfa13587931e73751e616cb56848236346a1cccd31cc0543bf
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:7c9a0c2c41d4104a4e4d319b63cc7188ff1e72ed3f75ec51f8ee1a022ac83e16
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:10c2630183aaf357bca793dbe239e7011d2527dfa6ff5f15c0278bbc501eaeb4
        version: 8.0.6-8.0
      entries:
      - name: redis-enterprise-operator.v8.0.6-8.0
        version: 8.0.6-8.0
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.6-8.0
    - currentCSV: redis-enterprise-operator.v8.0.6-8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:5540b0c0150e0b1b3979cd0d96ad2853472cd9fafdc03af5835d0e34ec329c82
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:4f070787e98014dfa13587931e73751e616cb56848236346a1cccd31cc0543bf
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:7c9a0c2c41d4104a4e4d319b63cc7188ff1e72ed3f75ec51f8ee1a022ac83e16
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:10c2630183aaf357bca793dbe239e7011d2527dfa6ff5f15c0278bbc501eaeb4
        - registry.connect.redhat.com/redislabs/services-manager@sha256:8cf316b7c8381387cb092d691a9a5bf098b8604229cabf95994eeb105d962037
        version: 8.0.6-8.0
      entries:
      - name: redis-enterprise-operator.v8.0.6-8.0
        version: 8.0.6-8.0
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: production
    defaultChannel: production
    packageName: redis-enterprise-operator-cert
    provider:
      name: Redis
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Cloudera
      provider-url: https://cloudera.com
    name: cfm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cfm-operator.v2.9.0-b96
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "Nifi",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifi-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifi",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifi-sample"
                },
                "spec": {
                  "hostName": "nifi.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifi-k8s",
                    "tag": "2.8.0-b94-nifi_1.25.0.2.3.13.0-36"
                  },
                  "replicas": 1,
                  "stateManagement": {
                    "clusterProvider": {
                      "class": "org.apache.nifi.kubernetes.state.provider.KubernetesConfigMapStateProvider",
                      "id": "kubernetes-provider"
                    }
                  },
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.8.0-b94"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              },
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "NifiRegistry",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifiregistry-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifiregistry",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifiregistry-sample"
                },
                "spec": {
                  "hostName": "registry.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s",
                    "tag": "2.8.0-b94-nifi_1.25.0.2.3.13.0-36"
                  },
                  "replicas": 1,
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.8.0-b94"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning,Big Data
          com.redhat.openshift.versions: v4.10
          containerImage: container.repository.cloudera.com/cloudera/cfm-operator@sha256:890d81188143ccf9ebe2c2fe5e039cdff3a2df53f7512555673f0468147e991e
          createdAt: "2024-12-06T19:03:24Z"
          description: Cloudera Flow Management - Kubernetes Operator for Apache NiFideploys
            and operates Apache NiFi
          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"
          operators.openshift.io/valid-subscription: A valid Cloudera license is required.
            Contact a Cloudera account team to learn more.
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NifiRegistry is the Schema for the nifiregistries API.
            displayName: Nifi Registry
            kind: NifiRegistry
            name: nifiregistries.cfm.cloudera.com
            version: v1alpha1
          - description: Nifi is the Schema for the nifis API.
            displayName: Nifi
            kind: Nifi
            name: nifis.cfm.cloudera.com
            version: v1alpha1
        description: |-
          Cloudera Flow Management - Kubernetes Operator for Apache NiFi brings enterprise-grade NiFi and NiFi Registry deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of NiFi and NiFi Registry for enterprise deployments.
          To learn more about Cloudera Flow Management - Kubernetes Operator for Apache NiFi read this
          [deep dive blog post](https://community.cloudera.com/t5/Community-Articles/Cloudera-Flow-Management-Operator-A-technical-deep-dive/ta-p/390473).

          Cloudera Flow Management - Kubernetes Operator for Apache NiFi consists of and ships multiple components including Apache NiFi, Apache NiFi Registry,
          and a custom sidecar image for logging aggregation.

          ## Installation prerequisites

          Installing Cloudera Flow Management - Kubernetes Operator for Apache NiFi requires the a valid license as well as Cloudera credentials
          (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly.
          The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) from which installation artifacts are pulled.

          ### Obtaining a license
          Contact [Cloudera sales](https://cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets
          Before installation, create two `Secrets`. One containing your Cloudera credentials and one containing your license. Cloudera credentials are provided to you
          together with your license.

          1. Create a `Secret` containing your Cloudera credentials.
              `oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***]
               --docker-server=container.repository.cloudera.com`

          2. Create a `Secret` containing your license.
              `oc create secret generic cfm-operator-license --from-file=license.txt=[***PATH TO LICENSE FILE***]`

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces in which you
            plan to deploy NiFi clusters or NiFi Registry deployments. Cloudera recommends that you create the `Secret` in all required namespaces before installation
            if you know which namespaces you will be using to deploy NiFi clusters or NiFi Registry deployments.

          ## Learn more
          To learn more, visit the [Cloudera Flow Management - Kubernetes Operator for Apache NiFi documentation library](https://docs.cloudera.com/cfm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Flow Management - Kubernetes Operator for Apache NiFi, visit the following resources:
          * [Apache NiFi](https://nifi.apache.org/)
          * [Apache NiFi Registry](https://nifi.apache.org/registry.html)
        displayName: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nifi
        - nifiregistry
        - cloudera
        - cfm
        links:
        - name: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
          url: https://docs.cloudera.com/cfm-operator
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/cfm-nifi-k8s@sha256:0d700b7eff096dfc362868345826c3a6460fa43a700273b1422e95015b7727ee
        - container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s@sha256:914dcde9ee97894fa6f5deec285e53bf81d196e071a997cabb40fedd52deccc3
        - container.repository.cloudera.com/cloudera/cfm-operator@sha256:890d81188143ccf9ebe2c2fe5e039cdff3a2df53f7512555673f0468147e991e
        - container.repository.cloudera.com/cloudera/cfm-tini@sha256:6493d23e20fca8daf31823403fca3dd9b42da983464fbe788a6863e141e8b66b
        - registry.connect.redhat.com/cloudera/cfm-operator-bundle@sha256:ca70ebce43d451d040aedcec036413f986e620234fd9a56d45983805396db0b5
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:86af06fb3b6c17b22be47118b0a8c797fa7fdd3c00dbe99a2d2a593ca8fc3d63
        version: 2.9.0-b96
      entries:
      - name: cfm-operator.v2.9.0-b96
        version: 2.9.0-b96
      name: alpha
    - currentCSV: cfm-operator.v2.11.0-b57
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "Nifi",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifi-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifi",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifi-sample"
                },
                "spec": {
                  "hostName": "nifi.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifi-k8s",
                    "tag": "2.9.0-b96-nifi_1.27.0.2.3.14.0-14"
                  },
                  "replicas": 1,
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.9.0-b96"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              },
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "NifiRegistry",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifiregistry-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifiregistry",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifiregistry-sample"
                },
                "spec": {
                  "hostName": "registry.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s",
                    "tag": "2.9.0-b96-nifi_1.27.0.2.3.14.0-14"
                  },
                  "replicas": 1,
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.9.0-b96"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              },
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "NifiRegistryBinding",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cfm-operator"
                  },
                  "name": "nifiregistrybinding-sample"
                },
                "spec": null
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning,Big Data
          com.redhat.openshift.versions: v4.10
          containerImage: container.repository.cloudera.com/cloudera/cfm-operator@sha256:88eb0813317d6f7984dffa0ad9aef3a24fb69890682086a1a78f63c1fe6438ff
          createdAt: "2025-10-08T16:02:41Z"
          description: Cloudera Flow Management - Kubernetes Operator for Apache NiFideploys
            and operates Apache NiFi
          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"
          operators.openshift.io/valid-subscription: A valid Cloudera license is required.
            Contact a Cloudera account team to learn more.
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NifiRegistry is the Schema for the nifiregistries API.
            displayName: Nifi Registry
            kind: NifiRegistry
            name: nifiregistries.cfm.cloudera.com
            version: v1alpha1
          - description: NifiRegistryBinding is the Schema for the nifiregistrybindings
              API
            displayName: Nifi Registry Binding
            kind: NifiRegistryBinding
            name: nifiregistrybindings.cfm.cloudera.com
            version: v1alpha1
          - description: Nifi is the Schema for the nifis API.
            displayName: Nifi
            kind: Nifi
            name: nifis.cfm.cloudera.com
            version: v1alpha1
        description: |-
          Cloudera Flow Management - Kubernetes Operator for Apache NiFi brings enterprise-grade NiFi and NiFi Registry deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of NiFi and NiFi Registry for enterprise deployments.
          To learn more about Cloudera Flow Management - Kubernetes Operator for Apache NiFi read this
          [deep dive blog post](https://community.cloudera.com/t5/Community-Articles/Cloudera-Flow-Management-Operator-A-technical-deep-dive/ta-p/390473).

          Cloudera Flow Management - Kubernetes Operator for Apache NiFi consists of and ships multiple components including Apache NiFi, Apache NiFi Registry,
          and a custom sidecar image for logging aggregation.

          ## Installation prerequisites

          Installing Cloudera Flow Management - Kubernetes Operator for Apache NiFi requires the a valid license as well as Cloudera credentials
          (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly.
          The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) from which installation artifacts are pulled.

          ### Obtaining a license
          Contact [Cloudera sales](https://cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets
          Before installation, create two `Secrets`. One containing your Cloudera credentials and one containing your license. Cloudera credentials are provided to you
          together with your license.

          1. Create a `Secret` containing your Cloudera credentials.
              `oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***]
               --docker-server=container.repository.cloudera.com --namespace [***OPERATOR INSTALL NAMESPACE***]`

          2. Create a `Secret` containing your license.
              `oc create secret generic cfm-operator-license --from-file=license.txt=[***PATH TO LICENSE FILE***] --namespace [***OPERATOR INSTALL NAMESPACE***]`

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces in which you
            plan to deploy NiFi clusters or NiFi Registry deployments. Cloudera recommends that you create the `Secret` in all required namespaces before installation
            if you know which namespaces you will be using to deploy NiFi clusters or NiFi Registry deployments.

          ## Learn more
          To learn more, visit the [Cloudera Flow Management - Kubernetes Operator for Apache NiFi documentation library](https://docs.cloudera.com/cfm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Flow Management - Kubernetes Operator for Apache NiFi, visit the following resources:
          * [Apache NiFi](https://nifi.apache.org/)
          * [Apache NiFi Registry](https://nifi.apache.org/registry.html)
        displayName: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nifi
        - nifiregistry
        - cloudera
        - cfm
        links:
        - name: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
          url: https://docs.cloudera.com/cfm-operator
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/cfm-operator@sha256:88eb0813317d6f7984dffa0ad9aef3a24fb69890682086a1a78f63c1fe6438ff
        - container.repository.cloudera.com/cloudera/cfm-tini@sha256:50eee4783b59129b673c72d5e53a44bfd785a298c85577b36624e5e44a890a59
        - registry.connect.redhat.com/cloudera/cfm-operator-bundle@sha256:699e4b3766cd42da370f6d8826b9e906fedfa0cd1b5ed1ca11b2917d661ee272
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:86af06fb3b6c17b22be47118b0a8c797fa7fdd3c00dbe99a2d2a593ca8fc3d63
        - container.repository.cloudera.com/cloudera/cfm-nifi-k8s@sha256:fe8ce86deb7b8e02f6b4f1fa7580853d31e44af82dd197d81f578ed9df759587
        - container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s@sha256:96cf36d77f4231d2429af378879c155336ec80a5b64966602ceb6811684dfe04
        version: 2.11.0-b57
      entries:
      - name: cfm-operator.v2.11.0-b57
        version: 2.11.0-b57
      name: stable
    defaultChannel: stable
    packageName: cfm-operator
    provider:
      name: Cloudera
      url: https://cloudera.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: AppDynamics LLC
      provider-url: https://www.appdynamics.com/
    name: appdynamics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: appdynamics-operator.v24.7.0-861
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cluster.appdynamics.com/v1alpha1",
                "kind": "Clusteragent",
                "metadata": {
                  "name": "k8s-cluster-agent",
                  "namespace": "appdynamics"
                },
                "spec": {
                  "appName": "<app-name>",
                  "controllerUrl": "<appdynamics-controller-url",
                  "account": "<appdynamics-account-name>",
                  "image": "<your-docker-registry>/appdynamics/cluster-agent:tag"
                }
              },
              {
                "apiVersion": "cluster.appdynamics.com/v1alpha1",
                "kind": "InfraViz",
                "metadata": {
                  "name": "appdynamics-infraviz",
                  "namespace": "appdynamics"
                },
                "spec": {
                  "controllerUrl": "<appdynamics-controller-url",
                  "account": "<appdynamics-account-name>",
                  "image": "<your-docker-registry>/appdynamics/machine-agent:latest"
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring,Logging & Tracing
          certified: "false"
          containerImage: registry.connect.redhat.com/appdynamics/cluster-agent-operator@sha256:3c420cce8b626d8f5cf424410527c6a7a17ca3348e903dd8cdfcd74819b8de41
          createdAt: "2023-02-06T14:26:07Z"
          description: AppDynamics Operator to install AppDynamics Cluster Agent &
            AppDynamics Machine Agent for K8s Monitoring for various Cloud Providers
            like EKS, AKS etc.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: appdynamics
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: support@appdynamics.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Clusteragent is the Schema for the clusteragents API
            displayName: Clusteragent
            kind: Clusteragent
            name: clusteragents.cluster.appdynamics.com
            version: v1alpha1
          - description: InfraViz is the Schema for the infravizs API
            displayName: Infra Viz
            kind: InfraViz
            name: infravizs.cluster.appdynamics.com
            version: v1alpha1
        description: |-
          AppDynamics Operator to install AppDynamics Cluster Agent & Machine Agent for K8s Monitoring on various Cloud Providers like EKS, AKS, GCP, Openshift etc.
          **About AppDynamics Operator**
          AppDynamics Operator simplifies the installation and lifecycle management of the AppDynamics ClusterAgent and the AppDynamics Machine Agent for K8s Monitoring on different Cloud Providers like EKS, AKS, GCP, OpenShift etc.
          **Installation Steps**
          Please refer below links for installation guide:
          [Install AppDynamics Cluster Agent](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-the-kubernetes-cli)
          [Install AppDynamics Machine Agent](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-the-kubernetes-cli)
          [Install AppDynamics Cluster Agent Using Helm Charts](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-helm-charts)
          [Install Appdynamics Machine Agent Using Helm Charts](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-helm-charts)
        displayName: AppDynamics Operator for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AppDynamics
        - Operator
        - AppDynamics Cluster Agent
        - AppDynamics Machine Agent
        - AppDynamics K8s Monitoring
        links:
        - name: AppDynamics Kubernetes Monitoring Overview
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent
        - name: AppDynamics Cluster Agent Overview
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/overview-of-cluster-monitoring
        - name: AppDynamics Cluster Agent Requirements
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/cluster-agent-requirements-and-supported-environments
        - name: Install AppDynamics Cluster Agent
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-the-kubernetes-cli
        - name: Install AppDynamics Cluster Agent Using Helm Charts
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-helm-charts
        - name: Install AppDynamics Machine Agent & NetViz Agent
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-the-kubernetes-cli
        - name: Install AppDynamics Machine Agent & NetViz Agent Using Helm Charts
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-helm-charts
        maintainers:
        - email: support@appdynamics.com
          name: AppDynamics
        maturity: alpha
        provider:
          name: AppDynamics LLC
          url: https://www.appdynamics.com/
        relatedImages:
        - registry.connect.redhat.com/appdynamics/cluster-agent-operator@sha256:3c420cce8b626d8f5cf424410527c6a7a17ca3348e903dd8cdfcd74819b8de41
        - registry.connect.redhat.com/appdynamics/cluster-agent-operator-bundle@sha256:b2bc3e161311f8f5d2f5fc967815259697ce30bf94e980214bc05aa0e1529d55
        version: 24.7.0-861
      entries:
      - name: appdynamics-operator.v24.7.0-861
        version: 24.7.0-861
      name: alpha
    defaultChannel: alpha
    packageName: appdynamics-operator
    provider:
      name: AppDynamics LLC
      url: https://www.appdynamics.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: https://www.percona.com/
    name: percona-postgresql-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-postgresql-operator.v2.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgv2.percona.com/v2",
                "kind": "PerconaPGCluster",
                "metadata": {
                  "name": "cluster1"
                },
                "spec": {
                  "crVersion": "2.8.2",
                  "image": "docker.io/percona/percona-distribution-postgresql:17.7-2",
                  "imagePullPolicy": "Always",
                  "postgresVersion": 17,
                  "instances": [
                    {
                      "name": "instance1",
                      "replicas": 3,
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/data": "postgres"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      },
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      }
                    }
                  ],
                  "proxy": {
                    "pgBouncer": {
                      "replicas": 3,
                      "image": "docker.io/percona/percona-pgbouncer:1.25.0-1",
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/role": "pgbouncer"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      }
                    }
                  },
                  "backups": {
                    "pgbackrest": {
                      "image": "docker.io/percona/percona-pgbackrest:2.57.0-1",
                      "repoHost": {
                        "affinity": {
                          "podAntiAffinity": {
                            "preferredDuringSchedulingIgnoredDuringExecution": [
                              {
                                "weight": 1,
                                "podAffinityTerm": {
                                  "labelSelector": {
                                    "matchLabels": {
                                      "postgres-operator.crunchydata.com/data": "pgbackrest"
                                    }
                                  },
                                  "topologyKey": "kubernetes.io/hostname"
                                }
                              }
                            ]
                          }
                        }
                      },
                      "manual": {
                        "repoName": "repo1",
                        "options": [
                          "--type=full"
                        ]
                      },
                      "repos": [
                        {
                          "name": "repo1",
                          "schedules": {
                            "full": "0 0 * * 6"
                          },
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "docker.io/percona/pmm-client:3.5.0",
                    "secret": "cluster1-pmm-secret",
                    "serverHost": "monitoring-service"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: docker.io/percona/percona-postgresql-operator:2.8.2
          createdAt: "2025-12-24T20:59:08Z"
          description: Percona Operator for PostgreSQL manages the lifecycle of Percona
            PostgreSQL cluster instances.
          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.skipRange: <v2.8.2
          repository: https://github.com/percona/percona-postgresql-operator
          support: percona.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaPGCluster is the CRD that defines a Percona PG Cluster
            displayName: Percona PGCluster
            kind: PerconaPGCluster
            name: perconapgclusters.pgv2.percona.com
            version: v2
          - description: PerconaPGBackup is the CRD that defines a Percona PostgreSQL
              Backup
            displayName: Percona PGBackup
            kind: PerconaPGBackup
            name: perconapgbackups.pgv2.percona.com
            version: v2
          - description: PerconaPGRestore is the CRD that defines a Percona PostgreSQL
              Restore
            displayName: Percona PGRestore
            kind: PerconaPGRestore
            name: perconapgrestores.pgv2.percona.com
            version: v2
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API This Custom Resource requires enabling CrunchyBridgeClusters feature
              gate
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PerconaPGUpgrade is the Schema for the perconapgupgrades
              API
            displayName: Percona PGUpgrade
            kind: PerconaPGUpgrade
            name: perconapgupgrades.pgv2.percona.com
            version: v2
          - description: PGAdmin is the Schema for the pgadmins API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          ## Percona is Cloud Native

          Percona Operator for PostgreSQL automates and simplifies deploying and managing
          open source PostgreSQL clusters on Kubernetes. Percona Operator for PostgreSQL is based on Postgres Operator developed by Crunchy Data.

          Whether you need to get a simple PostgreSQL cluster up and running, need to deploy a high availability,
          fault tolerant cluster in production, or are running your own database-as-a-service, the Operator provides the essential
          features you need to keep your clusters healthy.

          Consult the
          [documentation](https://www.percona.com/doc/kubernetes-operator-for-postgresql/index.html)
          on the Percona Operator for PostgreSQL for complete details on capabilities
          and options.

          ### Supported Features

          * **PostgreSQL Cluster Provisioning**

          Create, Scale, & Delete PostgreSQL clusters with ease, while fully customizing your Pods and PostgreSQL configuration.

          * **High Availability**

              Safe, automated failover backed by a distributed consensus based high-availability solution. Uses Pod Anti-Affinity to help resiliency; you can configure how much
              enforced this can be. Failed primaries automatically heal, allowing for faster recovery time. Support for standby PostgreSQL clusters that work both within and
              across multiple Kubernetes clusters.

          * **Disaster Recovery**

              Backups and restores leverage the open source pgBackRest utility and includes support for full, incremental, and differential backups as well as efficient delta
              restores. Set how long you want your backups retained for. Works great with very large databases!

          * **Communication Security**

              Secure communication between your applications and data servers by enabling TLS for your PostgreSQL servers, including the ability to enforce all of your connections
              to use TLS.

          * **Monitoring**

              Track the health of your PostgreSQL clusters with Percona Monitoring and Management (PMM).

          * **PostgreSQL User Management**

              Quickly add and remove users from your PostgreSQL clusters with powerful commands. Manage password expiration policies or use your preferred PostgreSQL authentication
              scheme.

          * **Updates Management**

              Safely apply PostgreSQL updates with minimal availability impact to your PostgreSQL clusters.

          * **Advanced Replication Support**

              Choose between asynchronous replication and synchronous replication for workloads that are sensitive to losing transactions.

          * **Clone**

              Create new clusters from your existing clusters or backups.

          * **Connection Pooling**

              Use [pgBouncer](https://access.crunchydata.com/documentation/postgres-operator/latest/tutorial/pgbouncer/) for connection pooling

          * **Affinity and Tolerations**

              Have your PostgreSQL clusters deployed to Kubernetes Nodes of your preference with node affinity, or designate which nodes Kubernetes can schedule PostgreSQL instances
              to with Kubernetes  tolerations.

          * **Scheduled Backups**

              Choose the type of backup (full, incremental, differential) and how frequently you want it to occur on each PostgreSQL cluster.

          * **Backup to S3**

              Store your backups in Amazon S3 or any object storage system that supports the S3 protocol. The Operator can backup, restore, and create new clusters from these backups.

          * **Multi-Namespace Support**

              You can control how the Operator leverages Kubernetes Namespaces with several different deployment models:

              * Deploy the Operator and all PostgreSQL clusters to the same namespace
              * Deploy the Operator to one Namespace, and all PostgreSQL clusters to a different Namespace
              * Deploy the Operator to one Namespace, and have your PostgreSQL clusters managed across multiple Namespaces

          * **Full Customizability**

              The Operator not only makes it easy to get PostgreSQL up and running on Kubernetes-enabled platforms, but also allows you to further customize your deployments:

              * Selecting different storage classes for your primary, replica, and backup storage
              * Select your own container resources class for each PostgreSQL cluster deployment; differentiate between resources applied for primary and replica clusters
              * Use your own container image repository, including `imagePullSecrets` and private repositories  support
              * Customize your PostgreSQL configuration
              * Bring your own trusted certificate authority (CA) for use with the Operator API server
              * Override your PostgreSQL configuration for each cluster
              * Use your own custom images, re-define the image for each container separately
        displayName: Percona Operator for PostgreSQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - percona
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-postgresql/index.html
        - name: Github
          url: https://github.com/percona/percona-postgresql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
          url: https://www.percona.com/
        relatedImages:
        - docker.io/percona/percona-postgresql-operator:2.8.2
        - quay.io/community-operator-pipeline-prod/percona-postgresql-operator@sha256:338df3b168eb9323d5afcac160a3d2ccf8a1faca16125c80a89251d569627f7c
        version: 2.8.2
      entries:
      - name: percona-postgresql-operator.v2.8.2
        version: 2.8.2
      - name: percona-postgresql-operator.v2.8.1
        version: 2.8.1
      - name: percona-postgresql-operator.v2.8.0
        version: 2.8.0
      name: stable
    defaultChannel: stable
    packageName: percona-postgresql-operator
    provider:
      name: Percona
      url: https://www.percona.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: opdev
      provider-url: opdev.github.io
    name: spark-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: spark-helm-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apachespark.apache.org/v1alpha1",
                "kind": "Spark",
                "metadata": {
                  "annotations": {
                    "helm.sdk.operatorframework.io/install-disable-crds": "true"
                  },
                  "name": "spark-operator"
                },
                "spec": {
                  "affinity": {},
                  "batchScheduler": {
                    "enable": false
                  },
                  "controllerThreads": 10,
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/googlecloudplatform/spark-operator",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "ingressUrlFormat": "",
                  "istio": {
                    "enabled": false
                  },
                  "labelSelectorFilter": "",
                  "leaderElection": {
                    "lockName": "spark-operator-lock",
                    "lockNamespace": ""
                  },
                  "logLevel": 2,
                  "metrics": {
                    "enable": true,
                    "endpoint": "/metrics",
                    "port": 10254,
                    "portName": "metrics",
                    "prefix": ""
                  },
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podLabels": {},
                  "podMonitor": {
                    "enable": false,
                    "jobLabel": "spark-operator-podmonitor",
                    "labels": {},
                    "podMetricsEndpoint": {
                      "interval": "5s",
                      "scheme": "http"
                    }
                  },
                  "podSecurityContext": {},
                  "rbac": {
                    "create": false,
                    "createClusterRole": true,
                    "createRole": true
                  },
                  "replicaCount": 1,
                  "resourceQuotaEnforcement": {
                    "enable": false
                  },
                  "resources": {},
                  "resyncInterval": 30,
                  "securityContext": {},
                  "serviceAccounts": {
                    "spark": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "sparkoperator": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    }
                  },
                  "sparkJobNamespace": "",
                  "tolerations": [],
                  "uiService": {
                    "enable": true
                  },
                  "volumeMounts": [],
                  "volumes": [],
                  "webhook": {
                    "cleanupAnnotations": {
                      "helm.sh/hook": "pre-delete, pre-upgrade",
                      "helm.sh/hook-delete-policy": "hook-succeeded"
                    },
                    "enable": false,
                    "initAnnotations": {
                      "helm.sh/hook": "pre-install, pre-upgrade",
                      "helm.sh/hook-weight": "50"
                    },
                    "namespaceSelector": "",
                    "port": 8080,
                    "timeout": 30
                  }
                }
              },
              {
                "apiVersion": "sparkoperator.k8s.io/v1beta2",
                "kind": "ScheduledSparkApplication",
                "metadata": {
                  "name": "spark-pi-scheduled",
                  "namespace": "spark-operator"
                },
                "spec": {
                  "concurrencyPolicy": "Allow",
                  "schedule": "@every 5m",
                  "template": {
                    "driver": {
                      "coreLimit": "1200m",
                      "cores": 1,
                      "labels": {
                        "version": "3.1.1"
                      },
                      "memory": "512m",
                      "serviceAccount": "spark-operator-spark",
                      "volumeMounts": [
                        {
                          "mountPath": "/tmp",
                          "name": "test-volume"
                        }
                      ]
                    },
                    "executor": {
                      "cores": 1,
                      "instances": 1,
                      "labels": {
                        "version": "3.1.1"
                      },
                      "memory": "512m",
                      "volumeMounts": [
                        {
                          "mountPath": "/tmp",
                          "name": "test-volume"
                        }
                      ]
                    },
                    "image": "gcr.io/spark-operator/spark:v3.1.1",
                    "imagePullPolicy": "Always",
                    "mainApplicationFile": "local:///opt/spark/examples/jars/spark-examples_2.12-3.1.1.jar",
                    "mainClass": "org.apache.spark.examples.SparkPi",
                    "mode": "cluster",
                    "restartPolicy": {
                      "type": "Never"
                    },
                    "sparkVersion": "3.1.1",
                    "type": "Scala",
                    "volumes": [
                      {
                        "hostPath": {
                          "path": "/tmp",
                          "type": "Directory"
                        },
                        "name": "test-volume"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sparkoperator.k8s.io/v1beta2",
                "kind": "SparkApplication",
                "metadata": {
                  "name": "pyspark-pi",
                  "namespace": "spark-operator"
                },
                "spec": {
                  "driver": {
                    "coreLimit": "1200m",
                    "cores": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "serviceAccount": "spark-operator-spark",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "executor": {
                    "cores": 1,
                    "instances": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "image": "gcr.io/spark-operator/spark-py:v3.1.1",
                  "imagePullPolicy": "Always",
                  "mainApplicationFile": "local:///opt/spark/examples/src/main/python/pi.py",
                  "mode": "cluster",
                  "pythonVersion": "3",
                  "restartPolicy": {
                    "onFailureRetries": 3,
                    "onFailureRetryInterval": 10,
                    "onSubmissionFailureRetries": 5,
                    "onSubmissionFailureRetryInterval": 20,
                    "type": "OnFailure"
                  },
                  "sparkVersion": "3.1.1",
                  "type": "Python",
                  "volumes": [
                    {
                      "hostPath": {
                        "path": "/tmp",
                        "type": "Directory"
                      },
                      "name": "test-volume"
                    }
                  ]
                }
              },
              {
                "apiVersion": "sparkoperator.k8s.io/v1beta2",
                "kind": "SparkApplication",
                "metadata": {
                  "name": "spark-pi",
                  "namespace": "spark-operator"
                },
                "spec": {
                  "driver": {
                    "coreLimit": "1200m",
                    "cores": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "serviceAccount": "spark-operator-spark",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "executor": {
                    "cores": 1,
                    "instances": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "image": "gcr.io/spark-operator/spark:v3.1.1",
                  "imagePullPolicy": "Always",
                  "mainApplicationFile": "local:///opt/spark/examples/jars/spark-examples_2.12-3.1.1.jar",
                  "mainClass": "org.apache.spark.examples.SparkPi",
                  "mode": "cluster",
                  "restartPolicy": {
                    "type": "Never"
                  },
                  "sparkVersion": "3.1.1",
                  "type": "Scala",
                  "volumes": [
                    {
                      "hostPath": {
                        "path": "/tmp",
                        "type": "Directory"
                      },
                      "name": "test-volume"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: quay.io/opdev/spark-helm-operator-controller:0.0.2
          createdAt: "2023-07-14T17:57:44Z"
          description: An experimental operator that installs the spark on k8s operator
            from its helm chart.
          operatorframework.io/initialization-resource: "{\n  \"apiVersion\": \"apachespark.apache.org/v1alpha1\",\n
            \ \"kind\": \"Spark\",\n  \"metadata\": {\n    \"name\": \"spark-operator\"\n
            \ },\n  \"spec\": {\n    \"affinity\": {},\n    \"batchScheduler\": {\n
            \     \"enable\": false\n    },\n    \"controllerThreads\": 10,\n    \"fullnameOverride\":
            \"\",\n    \"image\": {\n      \"pullPolicy\": \"IfNotPresent\",\n      \"repository\":
            \"ghcr.io/googlecloudplatform/spark-operator\",\n      \"tag\": \"\"\n
            \   },\n    \"imagePullSecrets\": [],\n    \"ingressUrlFormat\": \"\",\n
            \   \"istio\": {\n      \"enabled\": false\n    },\n    \"labelSelectorFilter\":
            \"\",\n    \"leaderElection\": {\n      \"lockName\": \"spark-operator-lock\",\n
            \     \"lockNamespace\": \"\"\n    },\n    \"logLevel\": 2,\n    \"metrics\":
            {\n      \"enable\": true,\n      \"endpoint\": \"/metrics\",\n      \"port\":
            10254,\n      \"portName\": \"metrics\",\n      \"prefix\": \"\"\n    },\n
            \   \"nameOverride\": \"\",\n    \"nodeSelector\": {},\n    \"podAnnotations\":
            {},\n    \"podLabels\": {},\n    \"podMonitor\": {\n      \"enable\":
            false,\n      \"jobLabel\": \"spark-operator-podmonitor\",\n      \"labels\":
            {},\n      \"podMetricsEndpoint\": {\n        \"interval\": \"5s\",\n
            \       \"scheme\": \"http\"\n      }\n    },\n    \"podSecurityContext\":
            {},\n    \"rbac\": {\n      \"create\": false,\n      \"createClusterRole\":
            true,\n      \"createRole\": true\n    },\n    \"replicaCount\": 1,\n
            \   \"resourceQuotaEnforcement\": {\n      \"enable\": false\n    },\n
            \   \"resources\": {},\n    \"resyncInterval\": 30,\n    \"securityContext\":
            {},\n    \"serviceAccounts\": {\n      \"spark\": {\n        \"annotations\":
            {},\n        \"create\": true,\n        \"name\": \"\"\n      },\n      \"sparkoperator\":
            {\n        \"annotations\": {},\n        \"create\": true,\n        \"name\":
            \"\"\n      }\n    },\n    \"sparkJobNamespace\": \"\",\n    \"tolerations\":
            [],\n    \"uiService\": {\n      \"enable\": true\n    },\n    \"volumeMounts\":
            [],\n    \"volumes\": [],\n    \"webhook\": {\n      \"cleanupAnnotations\":
            {\n        \"helm.sh/hook\": \"pre-delete, pre-upgrade\",\n        \"helm.sh/hook-delete-policy\":
            \"hook-succeeded\"\n      },\n      \"enable\": false,\n      \"initAnnotations\":
            {\n        \"helm.sh/hook\": \"pre-install, pre-upgrade\",\n        \"helm.sh/hook-weight\":
            \"50\"\n      },\n      \"namespaceSelector\": \"\",\n      \"port\":
            8080,\n      \"timeout\": 30\n    }\n  }\n}    "
          operatorframework.io/suggested-namespace: spark-operator
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: hybrid.helm.sdk.operatorframework.io/v1-alpha
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys a scheduled spark application based on the spec provided
            displayName: Scheduled Spark Application
            kind: ScheduledSparkApplication
            name: scheduledsparkapplications.sparkoperator.k8s.io
            version: v1beta2
          - description: Deploys a spark application based on the spec provided
            displayName: Spark Application
            kind: SparkApplication
            name: sparkapplications.sparkoperator.k8s.io
            version: v1beta2
          - description: Deploys the spark operator based on the google cloud platform
              helm chart
            displayName: Spark Operator
            kind: Spark
            name: sparks.apachespark.apache.org
            version: v1alpha1
        description: An experimental helm based operator that wraps the spark on k8s
          helm chart from google cloud platform enabling installation and workload
          management of Apache Spark
        displayName: Spark Helm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - big data
        - map reduce
        - data science
        links:
        - name: Spark Helm Operator
          url: https://github.com/skattoju/spark-helm-operator
        maintainers:
        - email: skattoju@redhat.com
          name: Sid Kattoju
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: opdev
          url: opdev.github.io
        relatedImages:
        - quay.io/openshift-community-operators/spark-helm-operator@sha256:9bd49276e02f2fb28bb1ff116112cd7ebe0aa12bdb9f1e46aae2501fd9e4e755
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/opdev/spark-helm-operator-controller:0.0.2
        version: 0.0.2
      entries:
      - name: spark-helm-operator.v0.0.2
        version: 0.0.2
      - name: spark-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: spark-helm-operator
    provider:
      name: opdev
      url: opdev.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ocs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ocs-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |2-

            [
                {
                    "apiVersion": "ocs.openshift.io/v1",
                    "kind": "StorageCluster",
                    "metadata": {
                        "name": "example-storagecluster",
                        "namespace": "openshift-storage"
                    },
                    "spec": {
                        "manageNodes": false,
                        "monPVCTemplate": {
                            "spec": {
                                "accessModes": [
                                    "ReadWriteOnce"
                                ],
                                "resources": {
                                    "requests": {
                                        "storage": "10Gi"
                                    }
                                },
                                "storageClassName": "gp2-csi"
                            }
                        },
                        "storageDeviceSets": [
                            {
                                "count": 3,
                                "dataPVCTemplate": {
                                    "spec": {
                                        "accessModes": [
                                            "ReadWriteOnce"
                                        ],
                                        "resources": {
                                            "requests": {
                                                "storage": "1Ti"
                                            }
                                        },
                                        "storageClassName": "gp2-csi",
                                        "volumeMode": "Block"
                                    }
                                },
                                "name": "example-deviceset",
                                "placement": {},
                                "portable": true,
                                "resources": {}
                            }
                        ]
                    }
                }
            ]
          capabilities: Deep Insights
          categories: Storage
          containerImage: registry.redhat.io/odf4/ocs-rhel9-operator@sha256:8656bc7d8466b33d3b7910bf567de11199126cef0dd01f1bf4615faa84515921
          description: Red Hat OpenShift Container Storage provides hyperconverged
            storage for applications within an OpenShift cluster.
          external.features.ocs.openshift.io/supported-platforms: '["BareMetal", "None",
            "VSphere", "OpenStack", "oVirt"]'
          external.features.ocs.openshift.io/validation: '{"secrets":["rook-ceph-operator-creds",
            "rook-csi-rbd-node", "rook-csi-rbd-provisioner"], "configMaps": ["rook-ceph-mon-endpoints",
            "rook-ceph-mon"], "storageClasses": ["ceph-rbd"], "cephClusters": ["monitoring-endpoint"]}'
          features.ocs.openshift.io/disabled: '["ss-list", "install-wizard", "block-pool",
            "mcg-resource", "odf-dashboard", "common", "storage-provider", "storage-provisioner",
            "dashboard-resources", "csv-actions", "inventory-item", "alert-actions"]'
          features.ocs.openshift.io/enabled: '["kms", "arbiter", "flexible-scaling",
            "multus", "pool-management", "namespace-store", "mcg-standalone", "taint-nodes",
            "vault-sa-kms", "hpcs-kms"]'
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/initialization-resource: "\n    {\n        \"apiVersion\":
            \"ocs.openshift.io/v1\",\n        \"kind\": \"StorageCluster\",\n        \"metadata\":
            {\n            \"name\": \"example-storagecluster\",\n            \"namespace\":
            \"openshift-storage\"\n        },\n        \"spec\": {\n            \"manageNodes\":
            false,\n            \"monPVCTemplate\": {\n                \"spec\": {\n
            \                   \"accessModes\": [\n                        \"ReadWriteOnce\"\n
            \                   ],\n                    \"resources\": {\n                        \"requests\":
            {\n                            \"storage\": \"10Gi\"\n                        }\n
            \                   },\n                    \"storageClassName\": \"gp2-csi\"\n
            \               }\n            },\n            \"storageDeviceSets\":
            [\n                {\n                    \"count\": 3,\n                    \"dataPVCTemplate\":
            {\n                        \"spec\": {\n                            \"accessModes\":
            [\n                                \"ReadWriteOnce\"\n                            ],\n
            \                           \"resources\": {\n                                \"requests\":
            {\n                                    \"storage\": \"1Ti\"\n                                }\n
            \                           },\n                            \"storageClassName\":
            \"gp2-csi\",\n                            \"volumeMode\": \"Block\"\n
            \                       }\n                    },\n                    \"name\":
            \"example-deviceset\",\n                    \"placement\": {},\n                    \"portable\":
            true,\n                    \"resources\": {}\n                }\n            ]\n
            \       }\n    }\n\t"
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:16f27c8673487f2a3671319fbf01357726e6e416aa8b26300cccd88302400289
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.4
          operators.operatorframework.io/internal-objects: '["ocsinitializations.ocs.openshift.io","storageautoscalers.ocs.openshift.io","storageclusterpeers.ocs.openshift.io","storageconsumers.ocs.openshift.io"]'
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/ocs-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OCSInitialization represents the initial data to be created
              when the operator is installed.
            displayName: OCS Initialization
            kind: OCSInitialization
            name: ocsinitializations.ocs.openshift.io
            version: v1
          - description: StorageAutoScaler represents the automatic storage scaling
              for storage cluster.
            displayName: Storage Auto Scaling
            kind: StorageAutoScaler
            name: storageautoscalers.ocs.openshift.io
            version: v1
          - description: StorageClusterPeer is the Schema for the storageclusterpeers
              API
            displayName: Storage Cluster Peer
            kind: StorageClusterPeer
            name: storageclusterpeers.ocs.openshift.io
            version: v1
          - description: StorageCluster represents a cluster including Ceph Cluster,
              NooBaa and all the storage and compute resources required.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.ocs.openshift.io
            version: v1
          - description: StorageConsumer is the Schema for the storageconsumers API
            displayName: Storage Consumer
            kind: StorageConsumer
            name: storageconsumers.ocs.openshift.io
            version: v1alpha1
        description: |
          **Red Hat OpenShift Container Storage** deploys three operators.

          ### OpenShift Container Storage operator

          The OpenShift Container Storage operator is the primary operator for OpenShift Container Storage. It serves to facilitate the other operators in OpenShift Container Storage by performing administrative tasks outside their scope as well as watching and configuring their CustomResources.

          ### Rook

          [Rook][1] deploys and manages Ceph on OpenShift, which provides block and file storage.

          # Core Capabilities

          * **Self-managing service:** No matter which supported storage technologies you choose, OpenShift Container Storage ensures that resources can be deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Container Storage you can either build dedicated storage clusters or hyper-converged clusters where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Container Storage:** OpenShift Container Storage integrates Ceph with multiple storage presentations including object storage (compatible with S3), block storage, and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Container Storage efficiently distributes and replicates your data across your cluster to minimize the risk of data loss. With snapshots, cloning, and versioning, no more losing sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data storage for your workloads, using a single namespace.

          [1]: https://rook.io
        displayName: OpenShift Container Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        - rook
        - ceph
        - block storage
        - shared filesystem
        - object storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ocs-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/ocs-rhel9-operator@sha256:8656bc7d8466b33d3b7910bf567de11199126cef0dd01f1bf4615faa84515921
        - registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:16f27c8673487f2a3671319fbf01357726e6e416aa8b26300cccd88302400289
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:3538d484f80837f2164f15bcd1edb75fbcb73d72cbd94cd74c87f99da035fd84
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:a0f327daabcd97e59a855450a4ac642e45e8dbffa6a5f006f23525215f1c1a22
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:d5b404530b7d6ca8c7eec484dbcff32544c3ce8727a4d61c703396ae3fded62d
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:ac173cc6724b867a5cd2cec68cb3bab81a431ea11fdbb23810426dff5e531b03
        version: 4.19.9-rhodf
      entries:
      - name: ocs-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: ocs-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: ocs-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: ocs-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: ocs-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: ocs-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: ocs-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: ocs-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: ocs-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: ocs-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: ocs-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |2-

            [
                {
                    "apiVersion": "ocs.openshift.io/v1",
                    "kind": "StorageCluster",
                    "metadata": {
                        "name": "example-storagecluster",
                        "namespace": "openshift-storage"
                    },
                    "spec": {
                        "monPVCTemplate": {
                            "spec": {
                                "accessModes": [
                                    "ReadWriteOnce"
                                ],
                                "resources": {
                                    "requests": {
                                        "storage": "10Gi"
                                    }
                                },
                                "storageClassName": "gp2-csi"
                            }
                        },
                        "storageDeviceSets": [
                            {
                                "count": 3,
                                "dataPVCTemplate": {
                                    "spec": {
                                        "accessModes": [
                                            "ReadWriteOnce"
                                        ],
                                        "resources": {
                                            "requests": {
                                                "storage": "1Ti"
                                            }
                                        },
                                        "storageClassName": "gp2-csi",
                                        "volumeMode": "Block"
                                    }
                                },
                                "name": "example-deviceset",
                                "placement": {},
                                "portable": true,
                                "resources": {}
                            }
                        ]
                    }
                }
            ]
          capabilities: Deep Insights
          categories: Storage
          containerImage: registry.redhat.io/odf4/ocs-rhel9-operator@sha256:a4d564a143f44ec47012ee224d4d2b99db537809c7228c0f5adcb91434b67a44
          createdAt: "2025-12-18T07:42:24Z"
          description: Red Hat OpenShift Container Storage provides hyperconverged
            storage for applications within an OpenShift cluster.
          external.features.ocs.openshift.io/supported-platforms: '["BareMetal", "None",
            "VSphere", "OpenStack", "oVirt"]'
          external.features.ocs.openshift.io/validation: '{"secrets":["rook-ceph-operator-creds",
            "rook-csi-rbd-node", "rook-csi-rbd-provisioner"], "configMaps": ["rook-ceph-mon-endpoints",
            "rook-ceph-mon"], "storageClasses": ["ceph-rbd"], "cephClusters": ["monitoring-endpoint"]}'
          features.ocs.openshift.io/disabled: '["ss-list", "install-wizard", "block-pool",
            "mcg-resource", "odf-dashboard", "common", "storage-provider", "storage-provisioner",
            "dashboard-resources", "csv-actions", "inventory-item", "alert-actions"]'
          features.ocs.openshift.io/enabled: '["kms", "arbiter", "flexible-scaling",
            "multus", "pool-management", "namespace-store", "mcg-standalone", "taint-nodes",
            "vault-sa-kms", "hpcs-kms"]'
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/initialization-resource: "\n    {\n        \"apiVersion\":
            \"ocs.openshift.io/v1\",\n        \"kind\": \"StorageCluster\",\n        \"metadata\":
            {\n            \"name\": \"example-storagecluster\",\n            \"namespace\":
            \"openshift-storage\"\n        },\n        \"spec\": {\n            \"monPVCTemplate\":
            {\n                \"spec\": {\n                    \"accessModes\": [\n
            \                       \"ReadWriteOnce\"\n                    ],\n                    \"resources\":
            {\n                        \"requests\": {\n                            \"storage\":
            \"10Gi\"\n                        }\n                    },\n                    \"storageClassName\":
            \"gp2-csi\"\n                }\n            },\n            \"storageDeviceSets\":
            [\n                {\n                    \"count\": 3,\n                    \"dataPVCTemplate\":
            {\n                        \"spec\": {\n                            \"accessModes\":
            [\n                                \"ReadWriteOnce\"\n                            ],\n
            \                           \"resources\": {\n                                \"requests\":
            {\n                                    \"storage\": \"1Ti\"\n                                }\n
            \                           },\n                            \"storageClassName\":
            \"gp2-csi\",\n                            \"volumeMode\": \"Block\"\n
            \                       }\n                    },\n                    \"name\":
            \"example-deviceset\",\n                    \"placement\": {},\n                    \"portable\":
            true,\n                    \"resources\": {}\n                }\n            ]\n
            \       }\n    }\n\t"
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:7889a3443f24821d3946b734f630a5c34cd5923fe52912661766d170bf3b56c6
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/internal-objects: '["ocsinitializations.ocs.openshift.io","storageautoscalers.ocs.openshift.io","storageclusterpeers.ocs.openshift.io","storageconsumers.ocs.openshift.io"]'
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/ocs-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OCSInitialization represents the initial data to be created
              when the operator is installed.
            displayName: OCS Initialization
            kind: OCSInitialization
            name: ocsinitializations.ocs.openshift.io
            version: v1
          - description: StorageAutoScaler represents the automatic storage scaling
              for storage cluster.
            displayName: Storage Auto Scaling
            kind: StorageAutoScaler
            name: storageautoscalers.ocs.openshift.io
            version: v1
          - description: StorageClusterPeer is the Schema for the storageclusterpeers
              API
            displayName: Storage Cluster Peer
            kind: StorageClusterPeer
            name: storageclusterpeers.ocs.openshift.io
            version: v1
          - description: StorageCluster represents a cluster including Ceph Cluster,
              NooBaa and all the storage and compute resources required.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.ocs.openshift.io
            version: v1
          - description: StorageConsumer is the Schema for the storageconsumers API
            displayName: Storage Consumer
            kind: StorageConsumer
            name: storageconsumers.ocs.openshift.io
            version: v1alpha1
        description: |
          **Red Hat OpenShift Container Storage** deploys three operators.

          ### OpenShift Container Storage operator

          The OpenShift Container Storage operator is the primary operator for OpenShift Container Storage. It serves to facilitate the other operators in OpenShift Container Storage by performing administrative tasks outside their scope as well as watching and configuring their CustomResources.

          ### Rook

          [Rook][1] deploys and manages Ceph on OpenShift, which provides block and file storage.

          # Core Capabilities

          * **Self-managing service:** No matter which supported storage technologies you choose, OpenShift Container Storage ensures that resources can be deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Container Storage you can either build dedicated storage clusters or hyper-converged clusters where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Container Storage:** OpenShift Container Storage integrates Ceph with multiple storage presentations including object storage (compatible with S3), block storage, and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Container Storage efficiently distributes and replicates your data across your cluster to minimize the risk of data loss. With snapshots, cloning, and versioning, no more losing sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data storage for your workloads, using a single namespace.

          [1]: https://rook.io
        displayName: OpenShift Container Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        - rook
        - ceph
        - block storage
        - shared filesystem
        - object storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ocs-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:64537ae6999feb2c7e449d8d5a1cdf5f64450b45934a7dba2b82542a5f6adc20
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:1e1e53d68779e4575ff7958307c61e1341efffc225ccfdc75c2518e8797f0fd7
        - registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:7889a3443f24821d3946b734f630a5c34cd5923fe52912661766d170bf3b56c6
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:0a2285aea9606696c4ea75644f2019bd199c6632de4b7f459f4024d5b3f66048
        - registry.redhat.io/odf4/ocs-rhel9-operator@sha256:a4d564a143f44ec47012ee224d4d2b99db537809c7228c0f5adcb91434b67a44
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
        version: 4.20.4-rhodf
      entries:
      - name: ocs-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: ocs-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: ocs-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: ocs-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: ocs-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: ocs-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Dynatrace LLC
      provider-url: www.dynatrace.com
    name: dynatrace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dynatrace-operator.v1.7.2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          containerImage: registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
          createdAt: 2025-11-17T09:03:01.768309
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.7.2
          operatorframework.io/suggested-namespace: dynatrace
          operators.openshift.io/valid-subscription: '["Dynatrace Platform Subscription
            (DPS)","Dynatrace Classic License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Dynatrace/dynatrace-operator
          support: Dynatrace
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta3
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta4
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta5
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha1
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha2
        description: |
          The Dynatrace Operator supports rollout and lifecycle management of various Dynatrace components in Kubernetes and OpenShift.

          Currently the Dynatrace Operator supports the following capabilities:

          ### OneAgent
            * `classicFullStack` rolls out one OneAgent pod per node to monitor its pods and the node itself
            * `applicationMonitoring` is a webhook based injection mechanism for automatic app-only injection
            * `hostMonitoring` monitors only the hosts, i.e., the nodes, in the cluster without app-only injection
          ### ActiveGate
            * `routing` routes OneAgent traffic through the ActiveGate
            * `kubernetes-monitoring` allows monitoring the Kubernetes API
            * `metrics-ingest` routes enriched metrics through an ActiveGate

          For more information please refer to [our DynaKube Custom Resource examples](https://dt-url.net/dynakube-samples).

          ### Installation
          Once you've installed the Dynatrace Operator, you can create a DynaKube custom resource.

          First, please add a Secret within the Project you've deployed the Dynatrace Operator to, which would contain your API and PaaS tokens. Create tokens of type *Dynatrace API* (`API_TOKEN`) and *Platform as a Service* (`PAAS_TOKEN`) and use their values in the following commands respectively.

          For assistance please refer to [Create user-generated access tokens](https://www.dynatrace.com/support/help/shortlink/token#create-user-generated-access-tokens).

          ``` $ oc -n <project> create secret generic dynakube --from-literal="apiToken=API_TOKEN" --from-literal="paasToken=PAAS_TOKEN" ```

          You may update this Secret at any time to rotate the tokens.

          After creation of the secret add the DynaKube object in the project where the Dynatrace Operator has been deployed, configured to your needs.

          ### Required Parameters
          * `apiUrl` - provide the URL to the API of your Dynatrace environment. In Dynatrace SaaS it will look like `https://<ENVIRONMENTID>.live.dynatrace.com/api` . In Dynatrace Managed like `https://<YourDynatraceServerURL>/e/<ENVIRONMENTID>/api` .

          ### Advanced Options
          * **Disable Certificate Checking** - disable any certificate validation that may interact poorly with proxies with in your cluster
          * **Image Override** - use a copy of the ActiveGate container image from a registry other than Docker's or Red Hat's

          For a complete list of supported parameters please consult the [Operator Deploy Guide](https://www.dynatrace.com/support/help/shortlink/openshift-deploy).

          ### Help
          You can find more about our instructions in our [documentation](https://www.dynatrace.com/support/help/shortlink/openshift-deploy#install-dynatrace-operator).
        displayName: Dynatrace Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - dynatrace
        - oneagent
        - activegate
        - observability
        links:
        - name: Dynatrace Operator
          url: https://github.com/Dynatrace/dynatrace-operator
        - name: OpenShift Monitoring Info
          url: https://www.dynatrace.com/technologies/openshift-monitoring
        maintainers:
        - email: support@dynatrace.com
          name: Dynatrace LLC
        maturity: alpha
        provider:
          name: Dynatrace LLC
          url: www.dynatrace.com
        relatedImages:
        - registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
        - registry.connect.redhat.com/dynatrace/dynatrace-operator-bundle@sha256:7311dca05f1b6131b176ee5410165bee1f8aa01549da2e5c58c3c53bafc36a18
        version: 1.7.2
      entries:
      - name: dynatrace-operator.v1.7.2
        version: 1.7.2
      - name: dynatrace-operator.v1.7.1
        version: 1.7.1
      - name: dynatrace-operator.v1.7.0
        version: 1.7.0
      - name: dynatrace-operator.v1.6.2
        version: 1.6.2
      - name: dynatrace-operator.v1.6.1
        version: 1.6.1
      - name: dynatrace-operator.v1.6.0
        version: 1.6.0
      - name: dynatrace-operator.v1.5.1
        version: 1.5.1
      - name: dynatrace-operator.v1.5.0
        version: 1.5.0
      - name: dynatrace-operator.v1.4.2
        version: 1.4.2
      - name: dynatrace-operator.v1.4.1
        version: 1.4.1
      - name: dynatrace-operator.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: alpha
    packageName: dynatrace-operator
    provider:
      name: Dynatrace LLC
      url: www.dynatrace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-trino-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trino-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/trino-operator@sha256:0aa26778c788e829b7226c51fd3ea384b4e9f23d3c3ef37f05390a9400448322
          description: Stackable Operator for Trino
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/trino-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for TrinoClusterSpec via `CustomResource`
            displayName: trinoclusters.trino.stackable.tech
            kind: TrinoCluster
            name: trinoclusters.trino.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for TrinoCatalogSpec via `CustomResource`
            displayName: trinocatalogs.trino.stackable.tech
            kind: TrinoCatalog
            name: trinocatalogs.trino.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Trino
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - trino
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/trino-operator@sha256:0aa26778c788e829b7226c51fd3ea384b4e9f23d3c3ef37f05390a9400448322
        - registry.connect.redhat.com/stackable/stackable-trino-operator@sha256:448b119ee427df47019b35103dfc5fbc79f52dc06cfdc71a81410593fdde9d7c
        version: 25.11.0
      entries:
      - name: trino-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-trino-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-emrcontainers-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-emrcontainers-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "emrcontainers.services.k8s.aws/v1alpha1",
                "kind": "VirtualCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/emrcontainers-controller:1.3.0
          createdAt: "2025-12-30T22:04:30Z"
          description: AWS EMR on EKS controller is a service controller for managing
            EMR on EKS resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: JobRun represents the state of an AWS emrcontainers JobRun
              resource.
            displayName: JobRun
            kind: JobRun
            name: jobruns.emrcontainers.services.k8s.aws
            version: v1alpha1
          - description: VirtualCluster represents the state of an AWS emrcontainers
              VirtualCluster resource.
            displayName: VirtualCluster
            kind: VirtualCluster
            name: virtualclusters.emrcontainers.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EMR on EKS resources in AWS from within your Kubernetes cluster.

          **About Amazon EMR on EKS**

          Amazon EMR on EKS provides a deployment option for Amazon EMR that allows you to run open-source big data frameworks on Amazon Elastic Kubernetes Service (Amazon EKS). With this deployment option, you can focus on running analytics workloads while Amazon EMR on EKS builds, configures, and manages containers for open-source applications.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EMR on EKS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - emrcontainers
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EMR on EKS Developer Resources
          url: https://docs.aws.amazon.com/emr/latest/EMR-on-EKS-DevelopmentGuide/emr-eks.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: emr on eks maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/emrcontainers-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-emrcontainers-controller@sha256:5b0174f334c167599cd3b4f3f23cd195b15ff246bb757c9c00343925b54b15ce
        version: 1.3.0
      entries:
      - name: ack-emrcontainers-controller.v1.3.0
        version: 1.3.0
      - name: ack-emrcontainers-controller.v1.2.0
        version: 1.2.0
      - name: ack-emrcontainers-controller.v1.1.2
        version: 1.1.2
      - name: ack-emrcontainers-controller.v1.1.1
        version: 1.1.1
      - name: ack-emrcontainers-controller.v1.1.0
        version: 1.1.0
      - name: ack-emrcontainers-controller.v1.0.27
        version: 1.0.27
      - name: ack-emrcontainers-controller.v1.0.25
        version: 1.0.25
      - name: ack-emrcontainers-controller.v1.0.24
        version: 1.0.24
      - name: ack-emrcontainers-controller.v1.0.23
        version: 1.0.23
      - name: ack-emrcontainers-controller.v1.0.22
        version: 1.0.22
      - name: ack-emrcontainers-controller.v1.0.21
        version: 1.0.21
      - name: ack-emrcontainers-controller.v1.0.18
        version: 1.0.18
      - name: ack-emrcontainers-controller.v1.0.16
        version: 1.0.16
      - name: ack-emrcontainers-controller.v1.0.15
        version: 1.0.15
      - name: ack-emrcontainers-controller.v1.0.14
        version: 1.0.14
      - name: ack-emrcontainers-controller.v1.0.13
        version: 1.0.13
      - name: ack-emrcontainers-controller.v1.0.12
        version: 1.0.12
      - name: ack-emrcontainers-controller.v1.0.11
        version: 1.0.11
      - name: ack-emrcontainers-controller.v1.0.9
        version: 1.0.9
      - name: ack-emrcontainers-controller.v1.0.8
        version: 1.0.8
      - name: ack-emrcontainers-controller.v1.0.4
        version: 1.0.4
      - name: ack-emrcontainers-controller.v1.0.3
        version: 1.0.3
      - name: ack-emrcontainers-controller.v1.0.1
        version: 1.0.1
      - name: ack-emrcontainers-controller.v1.0.0
        version: 1.0.0
      - name: ack-emrcontainers-controller.v0.1.2
        version: 0.1.2
      - name: ack-emrcontainers-controller.v0.1.0
        version: 0.1.0
      - name: ack-emrcontainers-controller.v0.0.10
        version: 0.0.10
      - name: ack-emrcontainers-controller.v0.0.9
        version: 0.0.9
      - name: ack-emrcontainers-controller.v0.0.8
        version: 0.0.8
      - name: ack-emrcontainers-controller.v0.0.7
        version: 0.0.7
      - name: ack-emrcontainers-controller.v0.0.6
        version: 0.0.6
      - name: ack-emrcontainers-controller.v0.0.5
        version: 0.0.5
      - name: ack-emrcontainers-controller.v0.0.4
        version: 0.0.4
      - name: ack-emrcontainers-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-emrcontainers-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Protocol Labs
      provider-url: ""
    name: ipfs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ipfs-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cluster.ipfs.io/v1alpha1",
                "kind": "CircuitRelay",
                "metadata": {
                  "name": "circuitrelay-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "cluster.ipfs.io/v1alpha1",
                "kind": "IpfsCluster",
                "metadata": {
                  "name": "ipfscluster-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Storage, Networking, Big Data
          containerImage: quay.io/redhat-et-ipfs/ipfs-operator:v0.0.1
          createdAt: 2022-04-05T15:50:37-0400
          operatorframework.io/suggested-namespace: ipfs-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ipfs-cluster/ipfs-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CircuitRelay is the Schema for the circuitrelays API.
            displayName: Circuit Relay
            kind: CircuitRelay
            name: circuitrelays.cluster.ipfs.io
            version: v1alpha1
          - description: IpfsCluster is the Schema for the ipfs API.
            displayName: Ipfs Cluster
            kind: IpfsCluster
            name: ipfsclusters.cluster.ipfs.io
            version: v1alpha1
        description: "The IPFS Operator enables users to easily create IPFS Cluster
          instances\nwithin their Kubernetes or OpenShift clusters. \n\n### Supported
          Features\n* Horizontal scaling\n* Joining collaborative clusters\n* Controlling
          IPFS node resource usage\n* Specifying reprovider settings  \n\n### Documentation
          \nDocumentation can be found on our [read-the-docs page](https://ipfs-operator.readthedocs.io/en/latest/),
          as well as our [GitHub repository](https://github.com/ipfs-cluster/ipfs-operator).\n\n###
          Getting Help\nIn case you run into issues while using the operator, please
          create an issue in our [GitHub\nrepository](https://github.com/ipfs-cluster/ipfs-operator).\n\n###
          Contributing\nWe welcome contributions of all types and sizes! You can find
          open issues\nin our [GitHub Repository](https://github.com/ipfs-cluster/ipfs-operator/issues),\nas
          well as make your own issue if you feel that something is missing.\n\n###
          License\nIPFS Operator is licensed under the [Apache 2.0 License](https://github.com/ipfs-cluster/ipfs-operator/blob/main/LICENSE)"
        displayName: IPFS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ipfs
        - ipfs cluster
        - decentralized storage
        - peer-to-peer
        - distributed hash table
        - content-addressed
        links:
        - name: IPFS Operator GitHub page
          url: https://github.com/ipfs-cluster/ipfs-operator
        - name: IPFS Cluster
          url: https://ipfscluster.io/
        - name: IPFS
          url: https://ipfs.io/
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Protocol Labs
        relatedImages:
        - quay.io/openshift-community-operators/ipfs-operator@sha256:03a61ef328feb626408d42904cdfb9d45f66e022d5a1e1088a15b74455487743
        - quay.io/redhat-et-ipfs/ipfs-operator:v0.0.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.0.2
      entries:
      - name: ipfs-operator.v0.0.2
        version: 0.0.2
      - name: ipfs-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ipfs-operator
    provider:
      name: Protocol Labs
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: lib-bucket-provisioner
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lib-bucket-provisioner.v2.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Storage,Big Data
          certified: "false"
          containerImage: quay.io/noobaa/pause
          createdAt: "2020-07-01T06:28:48Z"
          description: Library for the dynamic provisioning of object store buckets
            to be used by object store providers.
          repository: https://github.com/kube-object-storage/lib-bucket-provisioner
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          required:
          - description: Claim a bucket just like claiming a PV. Automate you app
              bucket provisioning by creating OBC with your app deployment. A secret
              and configmap (name=claim) will be created with access details for the
              app pods.
            displayName: ObjectBucketClaim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
          - description: Used under-the-hood. Created per ObjectBucketClaim and keeps
              provisioning information
            displayName: ObjectBucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
        description: |
          ### CRD-only Operator

          This operator package is **CRD-only** and the operator is a no-op operator.

          Instead, bucket provisioners using this library are using these CRD's and using CSV [required-crds](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/Documentation/design/building-your-csv.md#required-crds) them so that OLM can install it as a dependency.

          ### Generic Bucket Provisioning

          Kubernetes natively supports dynamic provisioning for many types of file and block storage, but lacks support for object bucket provisioning.

          This repo is a placeholder for an object store bucket provisioning library, very similar to the Kubernetes [sig-storage-lib-external-provisioner](https://github.com/kubernetes-sigs/sig-storage-lib-external-provisioner/blob/master/controller/controller.go) library.

          ### Known Provisioners
          - https://github.com/noobaa/noobaa-operator (NooBaa)
          - https://github.com/rook/rook (Rook-Ceph)
          - https://github.com/yard-turkey/aws-s3-provisioner (AWS-S3)
        displayName: lib-bucket-provisioner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - object
        - bucket
        - storage
        - cloud
        - s3
        links:
        - name: Github
          url: https://github.com/kube-object-storage/lib-bucket-provisioner
        maintainers:
        - email: jcope@redhat.com
          name: Jon Cope
        - email: jvance@redhat.com
          name: Jeff Vance
        - email: gmargali@redhat.com
          name: Guy Margalit
        - email: dzaken@redhat.com
          name: Danny Zaken
        - email: nbecker@redhat.com
          name: Nimrod Becker
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/noobaa/pause
        - quay.io/openshift-community-operators/lib-bucket-provisioner@sha256:132ecc88db79fb8b117a7a7974ca8f704600bac489923d918b78fd00378d5a5f
        version: 2.0.0
      entries:
      - name: lib-bucket-provisioner.v2.0.0
        version: 2.0.0
      name: alpha
    defaultChannel: alpha
    packageName: lib-bucket-provisioner
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: https://github.com/che-incubator/kubernetes-image-puller-operator
    name: kubernetes-imagepuller-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubernetes-imagepuller-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "che.eclipse.org/v1alpha1",
                "kind": "KubernetesImagePuller",
                "metadata": {
                  "name": "image-puller"
                },
                "spec": {
                  "daemonsetName": "k8s-image-puller",
                  "images": "java11-maven=quay.io/eclipse/che-java11-maven:next;che-theia=quay.io/eclipse/che-theia:next"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/eclipse/kubernetes-image-puller-operator:1.1.0
          createdAt: "2024-01-15T16:23:04Z"
          description: Create and manage kubernetes-image-puller instances.
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/che-incubator/kubernetes-image-puller-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubernetesImagePuller is the Schema for the kubernetesimagepullers
              API
            displayName: Kubernetes Image Puller
            kind: KubernetesImagePuller
            name: kubernetesimagepullers.che.eclipse.org
            version: v1alpha1
        description: "## About the managed application\n\nCreate a `KubernetesImagePuller`
          custom resource to automatically configure and run an instance of the [kubernetes-image-puller.](https://github.com/che-incubator/kubernetes-image-puller)\n##
          About this Operator\n\nThe `KubernetesImagePuller` custom resource understands
          the following fields in the `spec`:\n\n1. `configMapName` - The name of
          the `ConfigMap` to create\t\n2. `daemonsetName` - The name of the `DaemonSet`
          to be create.\n3. `deploymentName` - The name of the `kubernetes-image-puller`
          `Deployment` to create.\n4. `images` - A list of key-value pairs separated
          by semicolons of images to pull.  For example: `java=quay.io/eclipse/che-java8-maven:latest;theia=quay.io/eclipse/che-theia:next`\n5.
          `cachingIntervalHours` - The amount of time, in hours, between `DaemonSet`
          health checks.\n6. `cachingMemoryRequest` - The memory request for each
          cached image when the puller is running.\n7. `cachingMemoryLimit` - The
          memory limit for each cached image when the puller is running.\n8. `nodeSelector`
          - Node selector applied to pods created by the `DaemonSet`.\n## Prerequisites
          for enabling this Operator\n\nThe operator requires an existing namespace
          to be installed in.\nCheck the [README](https://github.com/che-incubator/kubernetes-image-puller-operator#installing-the-operator)
          for more details.\n"
        displayName: Kubernetes Image Puller Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - che
        - kubernetes-image-puller
        links:
        - name: Repository
          url: https://github.com/che-incubator/kubernetes-image-puller-operator
        maintainers:
        - email: ibuziuk@redhat.com
          name: Ilya Buziuk
        - email: abazko@redhat.com
          name: Anatolii Bazko
        maturity: stable
        provider:
          name: Red Hat, Inc.
          url: https://github.com/che-incubator/kubernetes-image-puller-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/kubernetes-imagepuller-operator@sha256:a72e3728dcf395667820c10c4c5ccb3f3d040ae5d04f50680e193398d3b72b88
        - quay.io/eclipse/kubernetes-image-puller-operator:1.1.0
        - quay.io/brancz/kube-rbac-proxy:v0.11.0
        version: 1.1.0
      entries:
      - name: kubernetes-imagepuller-operator.v1.1.0
        version: 1.1.0
      - name: kubernetes-imagepuller-operator.v1.0.6
        version: 1.0.6
      - name: kubernetes-imagepuller-operator.v1.0.5
        version: 1.0.5
      - name: kubernetes-imagepuller-operator.v1.0.4
        version: 1.0.4
      - name: kubernetes-imagepuller-operator.v1.0.3
        version: 1.0.3
      - name: kubernetes-imagepuller-operator.v1.0.2
        version: 1.0.2
      - name: kubernetes-imagepuller-operator.v1.0.1
        version: 1.0.1
      - name: kubernetes-imagepuller-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: kubernetes-imagepuller-operator
    provider:
      name: Red Hat, Inc.
      url: https://github.com/che-incubator/kubernetes-image-puller-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudwatchlogs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudwatchlogs-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cloudwatchlogs.services.k8s.aws/v1alpha1",
                "kind": "LogGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudwatchlogs-controller:1.2.0
          createdAt: "2025-11-29T03:46:37Z"
          description: AWS CloudWatch Logs controller is a service controller for
            managing CloudWatch Logs resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: LogGroup represents the state of an AWS cloudwatchlogs LogGroup
              resource.
            displayName: LogGroup
            kind: LogGroup
            name: loggroups.cloudwatchlogs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon CloudWatch Logs resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudWatch Logs**

          You can use Amazon CloudWatch Logs to monitor, store, and access your log files from Amazon Elastic Compute Cloud (Amazon EC2) instances, AWS CloudTrail, Route 53, and other sources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon CloudWatch Logs
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudwatchlogs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudWatch Logs Developer Resources
          url: https://aws.amazon.com/cloudwatch/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudwatch maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/cloudwatchlogs-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-cloudwatchlogs-controller@sha256:97870c245aa628ca61062685d89e93050a9a47b5abcbc11b1c22358e5d5da2f3
        version: 1.2.0
      entries:
      - name: ack-cloudwatchlogs-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudwatchlogs-controller.v1.1.2
        version: 1.1.2
      - name: ack-cloudwatchlogs-controller.v1.1.1
        version: 1.1.1
      - name: ack-cloudwatchlogs-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudwatchlogs-controller.v1.0.14
        version: 1.0.14
      - name: ack-cloudwatchlogs-controller.v1.0.13
        version: 1.0.13
      - name: ack-cloudwatchlogs-controller.v1.0.12
        version: 1.0.12
      - name: ack-cloudwatchlogs-controller.v1.0.11
        version: 1.0.11
      - name: ack-cloudwatchlogs-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudwatchlogs-controller.v1.0.9
        version: 1.0.9
      - name: ack-cloudwatchlogs-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudwatchlogs-controller.v1.0.7
        version: 1.0.7
      - name: ack-cloudwatchlogs-controller.v1.0.6
        version: 1.0.6
      - name: ack-cloudwatchlogs-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudwatchlogs-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudwatchlogs-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudwatchlogs-controller.v0.0.11
        version: 0.0.11
      - name: ack-cloudwatchlogs-controller.v0.0.10
        version: 0.0.10
      - name: ack-cloudwatchlogs-controller.v0.0.9
        version: 0.0.9
      - name: ack-cloudwatchlogs-controller.v0.0.8
        version: 0.0.8
      - name: ack-cloudwatchlogs-controller.v0.0.7
        version: 0.0.7
      - name: ack-cloudwatchlogs-controller.v0.0.4
        version: 0.0.4
      - name: ack-cloudwatchlogs-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudwatchlogs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudwatch-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudwatch-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudwatch-controller:1.4.0
          createdAt: "2025-11-29T03:47:43Z"
          description: AWS CloudWatch controller is a service controller for managing
            CloudWatch resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Dashboard represents the state of an AWS cloudwatch Dashboard
              resource.
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.cloudwatch.services.k8s.aws
            version: v1alpha1
          - description: MetricAlarm represents the state of an AWS cloudwatch MetricAlarm
              resource.
            displayName: MetricAlarm
            kind: MetricAlarm
            name: metricalarms.cloudwatch.services.k8s.aws
            version: v1alpha1
          - description: MetricStream represents the state of an AWS cloudwatch MetricStream
              resource.
            displayName: MetricStream
            kind: MetricStream
            name: metricstreams.cloudwatch.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon CloudWatch resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudWatch**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon CloudWatch
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudwatch
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudWatch Developer Resources
          url: https://aws.amazon.com/CloudWatch/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudwatch maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/cloudwatch-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-cloudwatch-controller@sha256:a4bcbbc9b6fa21797f47a34b93e09674200b98d67cbe9f704905dd0c91d67101
        version: 1.4.0
      entries:
      - name: ack-cloudwatch-controller.v1.4.0
        version: 1.4.0
      - name: ack-cloudwatch-controller.v1.3.1
        version: 1.3.1
      - name: ack-cloudwatch-controller.v1.3.0
        version: 1.3.0
      - name: ack-cloudwatch-controller.v1.2.1
        version: 1.2.1
      - name: ack-cloudwatch-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudwatch-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudwatch-controller.v1.0.13
        version: 1.0.13
      - name: ack-cloudwatch-controller.v1.0.12
        version: 1.0.12
      - name: ack-cloudwatch-controller.v1.0.11
        version: 1.0.11
      - name: ack-cloudwatch-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudwatch-controller.v1.0.9
        version: 1.0.9
      - name: ack-cloudwatch-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudwatch-controller.v1.0.7
        version: 1.0.7
      - name: ack-cloudwatch-controller.v1.0.6
        version: 1.0.6
      - name: ack-cloudwatch-controller.v1.0.5
        version: 1.0.5
      - name: ack-cloudwatch-controller.v1.0.4
        version: 1.0.4
      - name: ack-cloudwatch-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudwatch-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudwatch-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudwatch-controller.v0.0.12
        version: 0.0.12
      - name: ack-cloudwatch-controller.v0.0.11
        version: 0.0.11
      - name: ack-cloudwatch-controller.v0.0.10
        version: 0.0.10
      - name: ack-cloudwatch-controller.v0.0.9
        version: 0.0.9
      - name: ack-cloudwatch-controller.v0.0.8
        version: 0.0.8
      - name: ack-cloudwatch-controller.v0.0.3
        version: 0.0.3
      - name: ack-cloudwatch-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudwatch-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: odr-cluster-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odr-cluster-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRClusterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ramen",
                    "app.kubernetes.io/instance": "drclusterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "drclusterconfig",
                    "app.kubernetes.io/part-of": "ramen"
                  },
                  "name": "drclusterconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "VolumeReplicationGroup",
                "metadata": {
                  "name": "volumereplicationgroup-sample"
                },
                "spec": {
                  "async": {
                    "schedulingInterval": "10m"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ],
                        "name": "cpd"
                      },
                      {
                        "includedResources": [
                          "Deployment"
                        ],
                        "name": "deployments"
                      },
                      {
                        "excludedResources": [
                          ""
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includeClusterResources": true,
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "cpd",
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      },
                      {
                        "backupName": "deployments",
                        "includedResources": [
                          "Deployment"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "excludedResources": [
                          "ConfigMap",
                          "Secret",
                          "Deployment",
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      }
                    ]
                  },
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  },
                  "replicationState": "primary",
                  "s3Profiles": [
                    "s3-profile-of-east",
                    "s3-profile-of-west"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T08:01:01Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DRClusterConfig
            name: drclusterconfigs.ramendr.openshift.io
            version: v1alpha1
          - kind: MaintenanceMode
            name: maintenancemodes.ramendr.openshift.io
            version: v1alpha1
          - kind: ProtectedVolumeReplicationGroupList
            name: protectedvolumereplicationgrouplists.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupDestination
            name: replicationgroupdestinations.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupSource
            name: replicationgroupsources.ramendr.openshift.io
            version: v1alpha1
          - description: VolumeReplicationGroup is the Schema for the volumereplicationgroups
              API
            displayName: Volume Replication Group
            kind: VolumeReplicationGroup
            name: volumereplicationgroups.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Cluster is a disaster-recovery orchestrator for
          stateful applications, that operates from an Advanced Cluster Management
          (ACM) managed cluster and is controlled by Openshift DR Hub operator to
          orchestrate the life-cycle of an application, and its state on the managed
          cluster.
        displayName: Openshift DR Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-cluster-operator-bundle@sha256:08b88eee1cc768f2cebad6f50a42bcb0ac88dcb95b292b71ae9aed5ecefbc45f
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: odr-cluster-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odr-cluster-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odr-cluster-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odr-cluster-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odr-cluster-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odr-cluster-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odr-cluster-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odr-cluster-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odr-cluster-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odr-cluster-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odr-cluster-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRClusterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ramen",
                    "app.kubernetes.io/instance": "drclusterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "drclusterconfig",
                    "app.kubernetes.io/part-of": "ramen"
                  },
                  "name": "drclusterconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "VolumeReplicationGroup",
                "metadata": {
                  "name": "volumereplicationgroup-sample"
                },
                "spec": {
                  "async": {
                    "schedulingInterval": "10m"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ],
                        "name": "cpd"
                      },
                      {
                        "includedResources": [
                          "Deployment"
                        ],
                        "name": "deployments"
                      },
                      {
                        "excludedResources": [
                          ""
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includeClusterResources": true,
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "cpd",
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      },
                      {
                        "backupName": "deployments",
                        "includedResources": [
                          "Deployment"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "excludedResources": [
                          "ConfigMap",
                          "Secret",
                          "Deployment",
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      }
                    ]
                  },
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  },
                  "replicationState": "primary",
                  "s3Profiles": [
                    "s3-profile-of-east",
                    "s3-profile-of-west"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:49:42Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DRClusterConfig
            name: drclusterconfigs.ramendr.openshift.io
            version: v1alpha1
          - kind: MaintenanceMode
            name: maintenancemodes.ramendr.openshift.io
            version: v1alpha1
          - kind: ProtectedVolumeReplicationGroupList
            name: protectedvolumereplicationgrouplists.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupDestination
            name: replicationgroupdestinations.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupSource
            name: replicationgroupsources.ramendr.openshift.io
            version: v1alpha1
          - description: VolumeReplicationGroup is the Schema for the volumereplicationgroups
              API
            displayName: Volume Replication Group
            kind: VolumeReplicationGroup
            name: volumereplicationgroups.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Cluster is a disaster-recovery orchestrator for
          stateful applications, that operates from an Advanced Cluster Management
          (ACM) managed cluster and is controlled by Openshift DR Hub operator to
          orchestrate the life-cycle of an application, and its state on the managed
          cluster.
        displayName: Openshift DR Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-cluster-operator-bundle@sha256:f6047276c48b66bd6e2d34eb38e5f7278963e98355ae1a131f1eb3df7827c7d2
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 4.20.4-rhodf
      entries:
      - name: odr-cluster-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odr-cluster-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odr-cluster-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odr-cluster-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odr-cluster-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odr-cluster-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: JFrog
      provider-url: ""
    name: openshiftartifactoryha-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: artifactory-ha-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.helm.k8s.io/v1",
                "kind": "OpenshiftArtifactoryHa",
                "metadata": {
                  "name": "openshiftartifactoryha"
                },
                "spec": {
                  "artifactory-ha": {
                    "artifactory": {
                      "joinKey": "OVERRIDE",
                      "masterKey": "OVERRIDE",
                      "node": {
                        "replicaCount": 2,
                        "waitForPrimaryStartup": {
                          "enabled": false
                        }
                      }
                    },
                    "databaseUpgradeReady": true,
                    "database": {
                      "driver": "OVERRIDE",
                      "password": "OVERRIDE",
                      "type": "OVERRIDE",
                      "url": "OVERRIDE",
                      "user": "OVERRIDE"
                    },
                    "nginx": {
                      "http": {
                        "externalPort": 80,
                        "internalPort": 8080
                      },
                      "https": {
                        "externalPort": 443,
                        "internalPort": 8443
                      },
                      "service": {
                        "ssloffload": false
                      },
                      "tlsSecretName": "OVERRIDE"
                    },
                    "postgresql": {
                      "enabled": false
                    },
                    "waitForDatabase": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools,Integration & Delivery
          certified: "true"
          containerImage: registry.connect.redhat.com/jfrog/artifactory-operator@sha256:de69bb16052d5ac6fed9882eb65d49446b6fa1cc5ba830dd2a39e882712b1347
          createdAt: 2024-03-23 00:00:00+00:00
          description: JFrog Artifactory Enterprise deploys Artifactory in a high
            availability environment across multiple pods
          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"
          operators.openshift.io/valid-subscription: Not required
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/jfrog/JFrog-Cloud-Installers/tree/openshift4/Openshift4
          support: JFrog
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents Artifactory HA Instances
            displayName: Artifactory HA
            kind: OpenshiftArtifactoryHa
            name: openshiftartifactoryhas.charts.helm.k8s.io
            version: v1
        description: |2+
           ## Breaking change
          Please update to version 1.1.10 of the operator.
          Version 1.1.8 and 1.1.9 have issues. Please skip these versions.
          If you are using operator version < 1.2.0 there is a issue with upgrade where artifactory version is not updated if you update operator version. As workaround you can update the Custom Resource OpenshiftArtifactoryHa which has hardcored image value.After upgrading to version 1.2.0 you can remove the below parameters from your CR so that future upgrade works without workaround. ``` artifactory-ha.artifactory.image.registry artifactory-ha.artifactory.image.repository artifactory-ha.artifactory.image.tag ```
          ## Overview
          Openshift Operator to deploy JFrog Artifactory Enterprise into your Openshift cluster.
          ## Security Context Constraints
          To deploy this helm chart you will need to be a cluster admin w/ access to the anyuid scc and add the operator service account to the anyuid scc.
          ```
          oc adm policy add-scc-to-user anyuid -z artifactory-ha-operator -n openshift-operators
          ```
          Add the service account for the Artifactory chart to deploy successfully:
          ``` oc adm policy add-scc-to-user anyuid -z openshiftartifactoryha-artifactory-ha -n artifactory ```
          ### Usage

          An external DB is required. The operator will not deploy a DB but will require you to specify the configuration values to connect to it.

          Search for JFrog and click JFrog Artifactory Enterprise Operator to install.

          Go to the Installed Operators.

          Wait for the JFrog Artifactory Enterprise Operator to complete the installation.

          Open the Operator and click on the provided API: Artifactory HA.

          Click Create New Instance and provide the following parameters for your DB configuration:

          ```
          DATABASE_TYPE
          DATABASE_DRIVER
          DATABASE_URL
          DATABASE_USER
          DATABASE_PASSWORD
          ```
          Master key and Join key must be supplied. To generate a new key for each run the command below:

          ```
          # Create a key
          export JOIN_KEY=$(openssl rand -hex 32)
          echo ${JOIN_KEY}
          ```

          To use TLS you will need to first create a k8s tls secret to store your .crt and .key file into.
          Then supply the value of this k8s secret into the TLS_SECRET field.
          ``` oc create secret tls my_tls_secret --cert=tls.crt --key=tls.key --namespace=my_namespace ```
          Click Create for Artifactory Enterprise to deploy into OpenShift and connect to it on the external IP exposed by the load balancer.
          ### Create a route
          To expose Artifactory from Openshift we recommend you create a new route in Openshift.
          You can either use the oc command line tool or the Openshift web console to generate a new route.
          Depending upon where you terminate TLS you will need to either specify pass through or edge.
          Command Line (Edge):
          ``` oc create route edge --service=openshiftartifactory-ha --cert=tls.crt --key=tls.key --ca-cert=ca.crt --hostname=www.example.com ```
          Or for more information visit the official Openshift documentation on routes here:
          https://docs.openshift.com/container-platform/4.6/networking/routes/route-configuration.html

        displayName: JFrog Artifactory Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - CI/CD
        - Developers
        - Software
        - Productivity
        - Artifact Repository
        - Repository Manager
        - Docker
        - Maven
        - Git
        - Helm
        - npm
        - go
        - golang
        - kubernetes
        - k8s
        - rpm
        - yum
        links:
        - name: JFrog
          url: https://www.jfrog.com
        - name: JFrog Artifact Repository
          url: https://jfrog.com/artifactory/
        - name: Artifactory Video
          url: https://www.youtube.com/watch?v=r2_A5CPo43U
        maintainers:
        - email: partner-support@jfrog.com
          name: JFrog
        maturity: alpha
        provider:
          name: JFrog
        relatedImages:
        - registry.connect.redhat.com/jfrog/artifactory-operator@sha256:de69bb16052d5ac6fed9882eb65d49446b6fa1cc5ba830dd2a39e882712b1347
        - registry.connect.redhat.com/jfrog/artifactory-pro@sha256:0986ca71419ae628892db11e7ca7da5ac1c60219c144ce9aeb2de6e683a45262
        - registry.redhat.io/rhel8/nginx-120@sha256:87f658744af695273c434fac8246b716728b691a17d5d0c5b89247362e61e45c
        - registry.connect.redhat.com/jfrog/artifactory-operator-bundle@sha256:d7bd0e90aff6e8fc9fbc4119e5f1ec89eba93487b84356e3af95208c1250fe44
        version: 1.3.3
      entries:
      - name: artifactory-ha-operator.v1.3.3
        version: 1.3.3
      name: alpha
    - currentCSV: artifactory-ha-operator.v1.1.18
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.helm.k8s.io/v1",
                "kind": "OpenshiftArtifactoryHa",
                "metadata": {
                  "name": "openshiftartifactoryha"
                },
                "spec": {
                  "artifactory-ha": {
                    "artifactory": {
                      "image": {
                        "registry": "registry.connect.redhat.com",
                        "repository": "jfrog/artifactory-pro",
                        "tag": "7.27.3-1"
                      },
                      "joinKey": "OVERRIDE",
                      "masterKey": "OVERRIDE",
                      "uid": "1000721030",
                      "node": {
                        "replicaCount": 2,
                        "waitForPrimaryStartup": {
                          "enabled": false
                        }
                      }
                    },
                    "databaseUpgradeReady": true,
                    "database": {
                      "driver": "OVERRIDE",
                      "password": "OVERRIDE",
                      "type": "OVERRIDE",
                      "url": "OVERRIDE",
                      "user": "OVERRIDE"
                    },
                    "initContainerImage": "registry.connect.redhat.com/jfrog/init@sha256:164b41720a37f75c6129c8a28d05cc56f821022313d44ff918cce4a2146d93e8",
                    "nginx": {
                      "uid": "1000720104",
                      "gid": "1000720107",
                      "http": {
                        "externalPort": 80,
                        "internalPort": 8080
                      },
                      "https": {
                        "externalPort": 443,
                        "internalPort": 8443
                      },
                      "image": {
                        "registry": "registry.redhat.io",
                        "repository": "rhel8/nginx-116",
                        "tag": "latest"
                      },
                      "service": {
                        "ssloffload": false
                      },
                      "tlsSecretName": "OVERRIDE"
                    },
                    "postgresql": {
                      "enabled": false
                    },
                    "waitForDatabase": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools,Integration & Delivery
          certified: "true"
          containerImage: registry.connect.redhat.com/jfrog/artifactory-operator@sha256:e292553e1b6e792ff19276c7f6565d7ed61dd95289eb176066329954bc93e371
          createdAt: 2020-03-25 00:00:00+00:00
          description: JFrog Artifactory Enterprise deploys Artifactory in a high
            availability environment across multiple pods
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/jfrog/JFrog-Cloud-Installers/tree/openshift4/Openshift4
          support: JFrog
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents Artifactory HA Instances
            displayName: Artifactory HA
            kind: OpenshiftArtifactoryHa
            name: openshiftartifactoryhas.charts.helm.k8s.io
            version: v1
        description: |2+
           ## Breaking change
          Please update to version 1.1.10 of the operator.
          Version 1.1.8 and 1.1.9 have issues. Please skip these versions.

          ## Overview
          Openshift Operator to deploy JFrog Artifactory Enterprise into your Openshift cluster.
          ## Security Context Constraints
          To deploy this helm chart you will need to be a cluster admin w/ access to the anyuid scc and add the operator service account to the anyuid scc.
          ```
          oc adm policy add-scc-to-user anyuid -z artifactory-ha-operator -n openshift-operators
          ```
          Add the service account for the Artifactory chart to deploy successfully:
          ``` oc adm policy add-scc-to-user anyuid -z openshiftartifactoryha-artifactory-ha -n artifactory ```
          ### Usage

          An external DB is required. The operator will not deploy a DB but will require you to specify the configuration values to connect to it.

          Search for JFrog and click JFrog Artifactory Enterprise Operator to install.

          Go to the Installed Operators.

          Wait for the JFrog Artifactory Enterprise Operator to complete the installation.

          Open the Operator and click on the provided API: Artifactory HA.

          Click Create New Instance and provide the following parameters for your DB configuration:

          ```
          DATABASE_TYPE
          DATABASE_DRIVER
          DATABASE_URL
          DATABASE_USER
          DATABASE_PASSWORD
          ```
          Master key and Join key must be supplied. To generate a new key for each run the command below:

          ```
          # Create a key
          export JOIN_KEY=$(openssl rand -hex 32)
          echo ${JOIN_KEY}
          ```

          To use TLS you will need to first create a k8s tls secret to store your .crt and .key file into.
          Then supply the value of this k8s secret into the TLS_SECRET field.
          ``` oc create secret tls my_tls_secret --cert=tls.crt --key=tls.key --namespace=my_namespace ```
          Click Create for Artifactory Enterprise to deploy into OpenShift and connect to it on the external IP exposed by the load balancer.
          ### Create a route
          To expose Artifactory from Openshift we recommend you create a new route in Openshift.
          You can either use the oc command line tool or the Openshift web console to generate a new route.
          Depending upon where you terminate TLS you will need to either specify pass through or edge.
          Command Line (Edge):
          ``` oc create route edge --service=openshiftartifactory-ha --cert=tls.crt --key=tls.key --ca-cert=ca.crt --hostname=www.example.com ```
          Or for more information visit the official Openshift documentation on routes here:
          https://docs.openshift.com/container-platform/4.6/networking/routes/route-configuration.html

        displayName: JFrog Artifactory Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - CI/CD
        - Developers
        - Software
        - Productivity
        - Artifact Repository
        - Repository Manager
        - Docker
        - Maven
        - Git
        - Helm
        - npm
        - go
        - golang
        - kubernetes
        - k8s
        - rpm
        - yum
        links:
        - name: JFrog
          url: https://www.jfrog.com
        - name: JFrog Artifact Repository
          url: https://jfrog.com/artifactory/
        - name: Artifactory Video
          url: https://www.youtube.com/watch?v=r2_A5CPo43U
        maintainers:
        - email: partner-support@jfrog.com
          name: JFrog
        maturity: stable
        provider:
          name: JFrog
        relatedImages:
        - registry.connect.redhat.com/jfrog/init@sha256:164b41720a37f75c6129c8a28d05cc56f821022313d44ff918cce4a2146d93e8
        - registry.redhat.io/rhel8/nginx-116@sha256:d71d368d6094a5777000a8d99164959ccb97fca355e855e24bd92c13a8df04f6
        - registry.connect.redhat.com/jfrog/artifactory-operator-bundle@sha256:fc374491270b9566b0a5c80f3dd665b2227b1e8fb224eada7e5c98c82926ae08
        - registry.connect.redhat.com/jfrog/artifactory-operator@sha256:e292553e1b6e792ff19276c7f6565d7ed61dd95289eb176066329954bc93e371
        - registry.connect.redhat.com/jfrog/artifactory-pro@sha256:7289dde95d1e4d8e161a28cffd9c4a0cc96f92f7536d069ab63ec304a92254fd
        version: 1.1.18
      entries:
      - name: artifactory-ha-operator.v1.1.18
        version: 1.1.18
      name: stable
    defaultChannel: alpha
    packageName: openshiftartifactoryha-operator
    provider:
      name: JFrog
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: service-registry-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: service-registry-operator.v2.0.7-0.1662549961.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-kafkasql"
                },
                "spec": {
                  "configuration": {
                    "kafkasql": {
                      "bootstrapServers": "\u003cservice name\u003e.\u003cnamespace\u003e.svc:9092"
                    },
                    "persistence": "kafkasql"
                  }
                }
              },
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-sql"
                },
                "spec": {
                  "configuration": {
                    "persistence": "sql",
                    "sql": {
                      "dataSource": {
                        "password": "\u003cpassword\u003e",
                        "url": "jdbc:postgresql://\u003cservice name\u003e.\u003cnamespace\u003e.svc:5432/\u003cdatabase name\u003e",
                        "userName": "postgres"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/integration/service-registry-rhel8-operator@sha256:6dfd539951a739ec06fb6620b79c42c6159d4ee148c0d9d336547e786cd4780c
          createdAt: "2022-06-24"
          description: Deploy and manage Red Hat Integration service registry on OpenShift.
          olm.substitutesFor: service-registry-operator.v2.0.7-0.1661784420.p
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: https://github.com/Apicurio/apicurio-registry-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry represents a Red Hat Integration Service
              Registry instance
            displayName: Apicurio Registry
            kind: ApicurioRegistry
            name: apicurioregistries.registry.apicur.io
            version: v1
        description: |
          ## Service Registry
          Service Registry stores and retrieves API designs and event schemas, and gives you control of their evolution.
          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf - Provides a REST API and web UI to manage the artifacts and artifact meta-data - Includes Serializers and Deserializers for Kafka client integration - Configurable rules to control schema validity and evolution (compatibility) - Storage options: Kafka, PostgreSQL - Compatible with Confluent and IBM APIs - Runs on a lightweight Quarkus platform - Includes Maven plugin to integrate with Maven based builds
          ## Service Registry Operator
          Provides a quick and easy way to deploy and manage service registry on OpenShift.
          **Features**
          - Supports installation and configuration of the Registry for all storage options - Easily perform a rolling upgrade of the Registry
          ## Prerequisites
          This operator does not deploy storage for the Registry. Therefore, some storage options require that the chosen persistence service is already set up.
          ## License
          Red Hat Service Registry Operator is licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - Service Registry Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - service
        - service-registry
        links:
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        - name: Twitter
          url: https://twitter.com/Apicurio
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        - email: jsenko+apicurio@redhat.com
          name: Jakub Senko
        - email: ewittman+apicurio@redhat.com
          name: Eric Wittmann
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/integration/service-registry-kafkasql-rhel8@sha256:fc97a2a08b2f77d620ea86ec77bb4f750bfc0109ede3ad1080c2cb694019f8b8
        - registry.redhat.io/integration/service-registry-rhel8-operator-metadata@sha256:a2f0513cd8b96d71855464384cad7f1cd8c39f8d445be1ff1c1b91f22008d16d
        - registry.redhat.io/integration/service-registry-rhel8-operator@sha256:6dfd539951a739ec06fb6620b79c42c6159d4ee148c0d9d336547e786cd4780c
        - registry.redhat.io/integration/service-registry-sql-rhel8@sha256:6c97fa8ead1f6f0323811f8f35a80ae33f0e160f6c58f2bdb31713dbeaa3f014
        version: 2.0.7+0.1662549961.p
      entries:
      - name: service-registry-operator.v2.0.7-0.1662549961.p
        version: 2.0.7+0.1662549961.p
      - name: service-registry-operator.v2.0.7-0.1661784420.p
        version: 2.0.7+0.1661784420.p
      - name: service-registry-operator.v2.0.7
        version: 2.0.7
      - name: service-registry-operator.v2.0.6
        version: 2.0.6
      - name: service-registry-operator.v2.0.5-0.1654503709.p
        version: 2.0.5+0.1654503709.p
      - name: service-registry-operator.v2.0.5-0.1652887585.p
        version: 2.0.5+0.1652887585.p
      - name: service-registry-operator.v2.0.5-0.1646309885.p
        version: 2.0.5+0.1646309885.p
      - name: service-registry-operator.v2.0.5-0.1647938417.p
        version: 2.0.5+0.1647938417.p
      - name: service-registry-operator.v2.0.5-0.1648813064.p
        version: 2.0.5+0.1648813064.p
      - name: service-registry-operator.v2.0.5-0.1651047781.p
        version: 2.0.5+0.1651047781.p
      - name: service-registry-operator.v2.0.5-0.1652429755.p
        version: 2.0.5+0.1652429755.p
      - name: service-registry-operator.v2.0.5
        version: 2.0.5
      - name: service-registry-operator.v2.0.5-0.1655396591.p
        version: 2.0.5+0.1655396591.p
      - name: service-registry-operator.v2.0.4
        version: 2.0.4
      - name: service-registry-operator.v2.0.3
        version: 2.0.3
      - name: service-registry-operator.v2.0.2
        version: 2.0.2
      - name: service-registry-operator.v2.0.1
        version: 2.0.1
      - name: service-registry-operator.v2.0.0
        version: 2.0.0
      name: 2.0.x
    - currentCSV: service-registry-operator.v2.6.13-r2-0.1765811602.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-kafkasql"
                },
                "spec": {
                  "configuration": {
                    "kafkasql": {
                      "bootstrapServers": "\u003cservice name\u003e.\u003cnamespace\u003e.svc:9092"
                    },
                    "persistence": "kafkasql"
                  }
                }
              },
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-sql"
                },
                "spec": {
                  "configuration": {
                    "persistence": "sql",
                    "sql": {
                      "dataSource": {
                        "password": "\u003cpassword\u003e",
                        "url": "jdbc:postgresql://\u003cservice name\u003e.\u003cnamespace\u003e.svc:5432/\u003cdatabase name\u003e",
                        "userName": "postgres"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/apicurio/apicurio-registry-rhel8-operator@sha256:61f00395b51819312dda7abcdaa47190a11a83b1e2b523101be0ba776b1c5b7c
          createdAt: "2025-09-15"
          description: Deploy and manage Red Hat build of Apicurio Registry on OpenShift.
          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: "true"
          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.substitutesFor: service-registry-operator.v2.6.13-r2-0.1763986602.p
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations",
            "Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Apicurio/apicurio-registry-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry represents a Red Hat build of Apicurio Registry
              instance
            displayName: Apicurio Registry
            kind: ApicurioRegistry
            name: apicurioregistries.registry.apicur.io
            version: v1
        description: |
          ## Red Hat build of Apicurio Registry

          Red Hat build of Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Provides a REST API and web UI to manage the artifacts and artifact meta-data
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL
          - Compatible with Confluent and IBM APIs
          - Runs on a lightweight Quarkus platform
          - Includes Maven plugin to integrate with Maven based builds

          ## Red Hat build of Apicurio Registry Operator

          Provides a quick and easy way to deploy and manage Red Hat build of Apicurio Registry on OpenShift.

          **Features**
          - Supports installation and configuration of the Registry for all storage options
          - Easily perform a rolling upgrade of Red Hat build of Apicurio Registry

          ## Prerequisites

          This operator does not deploy storage for Red Hat build of Apicurio Registry. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Red Hat build of Apicurio Registry Operator is licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry-operator/blob/main/LICENSE)
        displayName: Red Hat build of Apicurio Registry
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - service
        - service-registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        - name: Twitter
          url: https://twitter.com/Apicurio
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        - email: jsenko+apicurio@redhat.com
          name: Jakub Senko
        - email: ewittman+apicurio@redhat.com
          name: Eric Wittmann
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/apicurio/apicurio-registry-operator-bundle@sha256:807f6c8f10a0f14789605e0dc64506e7aad7cce7789446da5079a49e79b8721e
        - registry.redhat.io/apicurio/apicurio-registry-rhel8-operator@sha256:61f00395b51819312dda7abcdaa47190a11a83b1e2b523101be0ba776b1c5b7c
        - registry.redhat.io/apicurio/apicurio-registry-sql-rhel8@sha256:0e5b7ed0d9c2aa07896f4d1f12c6ce6937f31a72f8d496b95c9c151121f46758
        - registry.redhat.io/apicurio/apicurio-registry-kafkasql-rhel8@sha256:f8f826084f842293de019ccc9ad0268e4ec0957e0db8fec58b069be2d6fa7cfe
        version: 2.6.13-r2+0.1765811602.p
      entries:
      - name: service-registry-operator.v2.6.13-r2-0.1763986602.p
        version: 2.6.13-r2+0.1763986602.p
      - name: service-registry-operator.v2.6.13-r2-0.1761835940.p
        version: 2.6.13-r2+0.1761835940.p
      - name: service-registry-operator.v2.6.13-r2-0.1765811602.p
        version: 2.6.13-r2+0.1765811602.p
      - name: service-registry-operator.v2.6.13-r2
        version: 2.6.13-r2
      - name: service-registry-operator.v2.6.13-r1
        version: 2.6.13-r1
      - name: service-registry-operator.v2.6.12-r1
        version: 2.6.12-r1
      - name: service-registry-operator.v2.6.11-r1
        version: 2.6.11-r1
      - name: service-registry-operator.v2.6.10
        version: 2.6.10
      - name: service-registry-operator.v2.6.9
        version: 2.6.9
      - name: service-registry-operator.v2.6.8-0.1739457262.p
        version: 2.6.8+0.1739457262.p
      - name: service-registry-operator.v2.6.8
        version: 2.6.8
      - name: service-registry-operator.v2.6.8-0.1740477005.p
        version: 2.6.8+0.1740477005.p
      - name: service-registry-operator.v2.6.6
        version: 2.6.6
      - name: service-registry-operator.v2.6.6-0.1736942038.p
        version: 2.6.6+0.1736942038.p
      - name: service-registry-operator.v2.6.5-0.1731946870.p
        version: 2.6.5+0.1731946870.p
      - name: service-registry-operator.v2.6.5
        version: 2.6.5
      - name: service-registry-operator.v2.6.5-0.1729511936.p
        version: 2.6.5+0.1729511936.p
      - name: service-registry-operator.v2.6.5-0.1730982111.p
        version: 2.6.5+0.1730982111.p
      - name: service-registry-operator.v2.6.3
        version: 2.6.3
      - name: service-registry-operator.v2.6.1
        version: 2.6.1
      - name: service-registry-operator.v2.6.1-0.1724927626.p
        version: 2.6.1+0.1724927626.p
      - name: service-registry-operator.v2.3.5
        version: 2.3.5
      - name: service-registry-operator.v2.3.4-0.1716987426.p
        version: 2.3.4+0.1716987426.p
      - name: service-registry-operator.v2.3.4
        version: 2.3.4
      - name: service-registry-operator.v2.3.3
        version: 2.3.3
      - name: service-registry-operator.v2.3.2
        version: 2.3.2
      - name: service-registry-operator.v2.3.1-0.1706181988.p
        version: 2.3.1+0.1706181988.p
      - name: service-registry-operator.v2.3.1
        version: 2.3.1
      - name: service-registry-operator.v2.3.0
        version: 2.3.0
      - name: service-registry-operator.v2.2.3
        version: 2.2.3
      - name: service-registry-operator.v2.2.3-0.1698369839.p
        version: 2.2.3+0.1698369839.p
      - name: service-registry-operator.v2.2.2-0.1697116886.p
        version: 2.2.2+0.1697116886.p
      - name: service-registry-operator.v2.2.2
        version: 2.2.2
      - name: service-registry-operator.v2.2.1
        version: 2.2.1
      - name: service-registry-operator.v2.2.0
        version: 2.2.0
      - name: service-registry-operator.v2.1.5
        version: 2.1.5
      - name: service-registry-operator.v2.1.4
        version: 2.1.4
      - name: service-registry-operator.v2.1.3
        version: 2.1.3
      - name: service-registry-operator.v2.1.2-0.1676389596.p
        version: 2.1.2+0.1676389596.p
      - name: service-registry-operator.v2.1.2
        version: 2.1.2
      - name: service-registry-operator.v2.1.1
        version: 2.1.1
      - name: service-registry-operator.v2.1.0
        version: 2.1.0
      - name: service-registry-operator.v2.0.7-0.1661784420.p
        version: 2.0.7+0.1661784420.p
      - name: service-registry-operator.v2.0.7-0.1662549961.p
        version: 2.0.7+0.1662549961.p
      - name: service-registry-operator.v2.0.7
        version: 2.0.7
      - name: service-registry-operator.v2.0.6
        version: 2.0.6
      - name: service-registry-operator.v2.0.5-0.1651047781.p
        version: 2.0.5+0.1651047781.p
      - name: service-registry-operator.v2.0.5-0.1647938417.p
        version: 2.0.5+0.1647938417.p
      - name: service-registry-operator.v2.0.5-0.1654503709.p
        version: 2.0.5+0.1654503709.p
      - name: service-registry-operator.v2.0.5-0.1652887585.p
        version: 2.0.5+0.1652887585.p
      - name: service-registry-operator.v2.0.5-0.1652429755.p
        version: 2.0.5+0.1652429755.p
      - name: service-registry-operator.v2.0.5
        version: 2.0.5
      - name: service-registry-operator.v2.0.5-0.1648813064.p
        version: 2.0.5+0.1648813064.p
      - name: service-registry-operator.v2.0.5-0.1655396591.p
        version: 2.0.5+0.1655396591.p
      - name: service-registry-operator.v2.0.5-0.1646309885.p
        version: 2.0.5+0.1646309885.p
      - name: service-registry-operator.v2.0.4
        version: 2.0.4
      - name: service-registry-operator.v2.0.3
        version: 2.0.3
      - name: service-registry-operator.v2.0.2
        version: 2.0.2
      - name: service-registry-operator.v2.0.1
        version: 2.0.1
      - name: service-registry-operator.v2.0.0
        version: 2.0.0
      name: 2.x
    defaultChannel: 2.x
    packageName: service-registry-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: rook-ceph-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rook-ceph-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephCluster",
                "metadata": {
                  "name": "my-rook-ceph",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "cephVersion": {
                    "image": "registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92"
                  },
                  "dataDirHostPath": "/var/lib/rook",
                  "mon": {
                    "count": 3
                  },
                  "dashboard": {
                    "enabled": true
                  },
                  "network": {
                    "hostNetwork": false
                  },
                  "rbdMirroring": {
                    "workers": 0
                  },
                  "storage": {
                    "useAllNodes": true,
                    "useAllDevices": true
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephBlockPool",
                "metadata": {
                  "name": "replicapool",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "failureDomain": "host",
                  "replicated": {
                    "size": 3
                  },
                  "annotations": null
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStore",
                "metadata": {
                  "name": "my-store",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "metadataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "dataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "gateway": {
                    "type": "s3",
                    "sslCertificateRef": null,
                    "port": 8080,
                    "securePort": null,
                    "instances": 1,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStoreUser",
                "metadata": {
                  "name": "my-user",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "store": "my-store",
                  "displayName": "my display name"
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephNFS",
                "metadata": {
                  "name": "my-nfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "rados": {
                    "pool": "myfs-data0",
                    "namespace": "nfs-ns"
                  },
                  "server": {
                    "active": 3,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephClient",
                "metadata": {
                  "name": "cinder",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "caps": {
                    "mon": "profile rbd",
                    "osd": "profile rbd pool=volumes, profile rbd pool=vms, profile rbd-read-only pool=images"
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephFilesystem",
                "metadata": {
                  "name": "myfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "dataPools": [
                    {
                      "compressionMode": "",
                      "crushRoot": "",
                      "deviceClass": "",
                      "erasureCoded": {
                        "algorithm": "",
                        "codingChunks": 0,
                        "dataChunks": 0
                      },
                      "failureDomain": "host",
                      "replicated": {
                        "requireSafeReplicaSize": false,
                        "size": 1,
                        "targetSizeRatio": 0.5
                      }
                    }
                  ],
                  "metadataPool": {
                    "compressionMode": "",
                    "crushRoot": "",
                    "deviceClass": "",
                    "erasureCoded": {
                      "algorithm": "",
                      "codingChunks": 0,
                      "dataChunks": 0
                    },
                    "failureDomain": "",
                    "replicated": {
                      "requireSafeReplicaSize": false,
                      "size": 1,
                      "targetSizeRatio": 0
                    }
                  },
                  "metadataServer": {
                    "activeCount": 1,
                    "activeStandby": true,
                    "placement": {},
                    "resources": {}
                  },
                  "preservePoolsOnDelete": false,
                  "preserveFilesystemOnDelete": false
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephRBDMirror",
                "metadata": {
                  "name": "my-rbd-mirror",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "annotations": null,
                  "count": 1,
                  "placement": {
                    "topologyKey": "kubernetes.io/hostname"
                  },
                  "resources": null
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:3538d484f80837f2164f15bcd1edb75fbcb73d72cbd94cd74c87f99da035fd84
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/red-hat-storage/rook
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Ceph cluster.
            displayName: Ceph Cluster
            kind: CephCluster
            name: cephclusters.ceph.rook.io
            version: v1
          - description: Represents a Ceph Block Pool.
            displayName: Ceph Block Pool
            kind: CephBlockPool
            name: cephblockpools.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store.
            displayName: Ceph Object Store
            kind: CephObjectStore
            name: cephobjectstores.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store User.
            displayName: Ceph Object Store User
            kind: CephObjectStoreUser
            name: cephobjectstoreusers.ceph.rook.io
            version: v1
          - description: Represents a cluster of Ceph NFS ganesha gateways.
            displayName: Ceph NFS
            kind: CephNFS
            name: cephnfses.ceph.rook.io
            version: v1
          - description: Represents a Ceph User.
            displayName: Ceph Client
            kind: CephClient
            name: cephclients.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem.
            displayName: Ceph Filesystem
            kind: CephFilesystem
            name: cephfilesystems.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem Mirror.
            displayName: Ceph Filesystem Mirror
            kind: CephFilesystemMirror
            name: cephfilesystemmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph RBD Mirror.
            displayName: Ceph RBD Mirror
            kind: CephRBDMirror
            name: cephrbdmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Realm.
            displayName: Ceph Object Store Realm
            kind: CephObjectRealm
            name: cephobjectrealms.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone Group.
            displayName: Ceph Object Store Zone Group
            kind: CephObjectZoneGroup
            name: cephobjectzonegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone.
            displayName: Ceph Object Store Zone
            kind: CephObjectZone
            name: cephobjectzones.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Notification.
            displayName: Ceph Bucket Notification
            kind: CephBucketNotification
            name: cephbucketnotifications.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Topic.
            displayName: Ceph Bucket Topic
            kind: CephBucketTopic
            name: cephbuckettopics.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem SubVolumeGroup.
            displayName: Ceph Filesystem SubVolumeGroup
            kind: CephFilesystemSubVolumeGroup
            name: cephfilesystemsubvolumegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph BlockPool Rados Namespace.
            displayName: Ceph BlockPool Rados Namespace
            kind: CephBlockPoolRadosNamespace
            name: cephblockpoolradosnamespaces.ceph.rook.io
            version: v1
          - description: Represents a Ceph COSI Driver.
            displayName: Ceph COSI Driver
            kind: CephCOSIDriver
            name: cephcosidrivers.ceph.rook.io
            version: v1
        description: |2

          The Rook-Ceph storage operator packages, deploys, manages, upgrades and scales Ceph storage for providing persistent storage to infrastructure services (Logging, Metrics, Registry) as well as stateful applications in Kubernetes clusters.

          ## Rook-Ceph Storage Operator

          Rook runs as a cloud-native service in Kubernetes clusters for optimal integration with applications in need of storage, and handles the heavy-lifting behind the scenes such as provisioning and management.
          Rook orchestrates battle-tested open-source storage technology Ceph, which has years of production deployments and runs some of the worlds largest clusters.

          Ceph is a massively scalable, software-defined, cloud native storage platform that offers block, file and object storage services.
          Ceph can be used to back a wide variety of applications including relational databases, NoSQL databases, CI/CD tool-sets, messaging, AI/ML and analytics applications.
          Ceph is a proven storage platform that backs some of the world's largest storage deployments and has a large vibrant open source community backing the project.

          ## Supported features
          * **High Availability and resiliency** - Ceph has no single point of failures (SPOF) and all its components work natively in a highly available fashion
          * **Data Protection** - Ceph periodically scrub for inconsistent objects and repair them if necessary, making sure your replicas are always coherent
          * **Consistent storage platform across hybrid cloud** - Ceph can be deployed anywhere (on-premise or bare metal) and thus offers a similar experience regardless
          * **Block, File & Object storage service** - Ceph can expose your data through several storage interfaces, solving all the application use cases
          * **Scale up/down** - addition and removal of storage is fully covered by the operator.
          * **Dashboard** - The Operator deploys a dashboard for monitoring and introspecting your cluster.

          ## Before you start
          https://rook.io/docs/rook/v1.0/k8s-pre-reqs.html
        displayName: Rook-Ceph
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - rook
        - ceph
        - storage
        - object storage
        - open source
        - block storage
        - shared filesystem
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/rook
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:3101db7b7f493e476ffe2c91083792ded3e2030d431c3be7d7176ad7df185324
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:3538d484f80837f2164f15bcd1edb75fbcb73d72cbd94cd74c87f99da035fd84
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        version: 4.19.9-rhodf
      entries:
      - name: rook-ceph-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: rook-ceph-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: rook-ceph-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: rook-ceph-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: rook-ceph-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: rook-ceph-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: rook-ceph-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: rook-ceph-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: rook-ceph-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: rook-ceph-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: rook-ceph-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephCluster",
                "metadata": {
                  "name": "my-rook-ceph",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "cephVersion": {
                    "image": "registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92"
                  },
                  "dataDirHostPath": "/var/lib/rook",
                  "mon": {
                    "count": 3
                  },
                  "dashboard": {
                    "enabled": true
                  },
                  "network": {
                    "hostNetwork": false
                  },
                  "rbdMirroring": {
                    "workers": 0
                  },
                  "storage": {
                    "useAllNodes": true,
                    "useAllDevices": true
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephBlockPool",
                "metadata": {
                  "name": "replicapool",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "failureDomain": "host",
                  "replicated": {
                    "size": 3
                  },
                  "annotations": null
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStore",
                "metadata": {
                  "name": "my-store",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "metadataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "dataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "gateway": {
                    "type": "s3",
                    "sslCertificateRef": null,
                    "port": 8080,
                    "securePort": null,
                    "instances": 1,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStoreUser",
                "metadata": {
                  "name": "my-user",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "store": "my-store",
                  "displayName": "my display name"
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephNFS",
                "metadata": {
                  "name": "my-nfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "rados": {
                    "pool": "myfs-data0",
                    "namespace": "nfs-ns"
                  },
                  "server": {
                    "active": 3,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephClient",
                "metadata": {
                  "name": "cinder",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "caps": {
                    "mon": "profile rbd",
                    "osd": "profile rbd pool=volumes, profile rbd pool=vms, profile rbd-read-only pool=images"
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephFilesystem",
                "metadata": {
                  "name": "myfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "dataPools": [
                    {
                      "compressionMode": "",
                      "crushRoot": "",
                      "deviceClass": "",
                      "erasureCoded": {
                        "algorithm": "",
                        "codingChunks": 0,
                        "dataChunks": 0
                      },
                      "failureDomain": "host",
                      "replicated": {
                        "requireSafeReplicaSize": false,
                        "size": 1,
                        "targetSizeRatio": 0.5
                      }
                    }
                  ],
                  "metadataPool": {
                    "compressionMode": "",
                    "crushRoot": "",
                    "deviceClass": "",
                    "erasureCoded": {
                      "algorithm": "",
                      "codingChunks": 0,
                      "dataChunks": 0
                    },
                    "failureDomain": "",
                    "replicated": {
                      "requireSafeReplicaSize": false,
                      "size": 1,
                      "targetSizeRatio": 0
                    }
                  },
                  "metadataServer": {
                    "activeCount": 1,
                    "activeStandby": true,
                    "placement": {},
                    "resources": {}
                  },
                  "preservePoolsOnDelete": false,
                  "preserveFilesystemOnDelete": false
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephRBDMirror",
                "metadata": {
                  "name": "my-rbd-mirror",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "annotations": null,
                  "count": 1,
                  "placement": {
                    "topologyKey": "kubernetes.io/hostname"
                  },
                  "resources": null
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/red-hat-storage/rook
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Ceph cluster.
            displayName: Ceph Cluster
            kind: CephCluster
            name: cephclusters.ceph.rook.io
            version: v1
          - description: Represents a Ceph Block Pool.
            displayName: Ceph Block Pool
            kind: CephBlockPool
            name: cephblockpools.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store.
            displayName: Ceph Object Store
            kind: CephObjectStore
            name: cephobjectstores.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store User.
            displayName: Ceph Object Store User
            kind: CephObjectStoreUser
            name: cephobjectstoreusers.ceph.rook.io
            version: v1
          - description: Represents a cluster of Ceph NFS ganesha gateways.
            displayName: Ceph NFS
            kind: CephNFS
            name: cephnfses.ceph.rook.io
            version: v1
          - description: Represents a Ceph User.
            displayName: Ceph Client
            kind: CephClient
            name: cephclients.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem.
            displayName: Ceph Filesystem
            kind: CephFilesystem
            name: cephfilesystems.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem Mirror.
            displayName: Ceph Filesystem Mirror
            kind: CephFilesystemMirror
            name: cephfilesystemmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph RBD Mirror.
            displayName: Ceph RBD Mirror
            kind: CephRBDMirror
            name: cephrbdmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Realm.
            displayName: Ceph Object Store Realm
            kind: CephObjectRealm
            name: cephobjectrealms.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone Group.
            displayName: Ceph Object Store Zone Group
            kind: CephObjectZoneGroup
            name: cephobjectzonegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone.
            displayName: Ceph Object Store Zone
            kind: CephObjectZone
            name: cephobjectzones.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Notification.
            displayName: Ceph Bucket Notification
            kind: CephBucketNotification
            name: cephbucketnotifications.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Topic.
            displayName: Ceph Bucket Topic
            kind: CephBucketTopic
            name: cephbuckettopics.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem SubVolumeGroup.
            displayName: Ceph Filesystem SubVolumeGroup
            kind: CephFilesystemSubVolumeGroup
            name: cephfilesystemsubvolumegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph BlockPool Rados Namespace.
            displayName: Ceph BlockPool Rados Namespace
            kind: CephBlockPoolRadosNamespace
            name: cephblockpoolradosnamespaces.ceph.rook.io
            version: v1
          - description: Represents a Ceph COSI Driver.
            displayName: Ceph COSI Driver
            kind: CephCOSIDriver
            name: cephcosidrivers.ceph.rook.io
            version: v1
        description: |2

          The Rook-Ceph storage operator packages, deploys, manages, upgrades and scales Ceph storage for providing persistent storage to infrastructure services (Logging, Metrics, Registry) as well as stateful applications in Kubernetes clusters.

          ## Rook-Ceph Storage Operator

          Rook runs as a cloud-native service in Kubernetes clusters for optimal integration with applications in need of storage, and handles the heavy-lifting behind the scenes such as provisioning and management.
          Rook orchestrates battle-tested open-source storage technology Ceph, which has years of production deployments and runs some of the worlds largest clusters.

          Ceph is a massively scalable, software-defined, cloud native storage platform that offers block, file and object storage services.
          Ceph can be used to back a wide variety of applications including relational databases, NoSQL databases, CI/CD tool-sets, messaging, AI/ML and analytics applications.
          Ceph is a proven storage platform that backs some of the world's largest storage deployments and has a large vibrant open source community backing the project.

          ## Supported features
          * **High Availability and resiliency** - Ceph has no single point of failures (SPOF) and all its components work natively in a highly available fashion
          * **Data Protection** - Ceph periodically scrub for inconsistent objects and repair them if necessary, making sure your replicas are always coherent
          * **Consistent storage platform across hybrid cloud** - Ceph can be deployed anywhere (on-premise or bare metal) and thus offers a similar experience regardless
          * **Block, File & Object storage service** - Ceph can expose your data through several storage interfaces, solving all the application use cases
          * **Scale up/down** - addition and removal of storage is fully covered by the operator.
          * **Dashboard** - The Operator deploys a dashboard for monitoring and introspecting your cluster.

          ## Before you start
          https://rook.io/docs/rook/v1.0/k8s-pre-reqs.html
        displayName: Rook-Ceph
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - rook
        - ceph
        - storage
        - object storage
        - open source
        - block storage
        - shared filesystem
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/rook
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:7ae5cd1afb0ba1a7e28acb6631b3fe7ec3e23fbba782162baa2df847de61b28e
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:231965a888729ba42bbac8d844d128e18468e5a21916dcd525d43ef028ccea5f
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        version: 4.20.4-rhodf
      entries:
      - name: rook-ceph-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: rook-ceph-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: rook-ceph-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: rook-ceph-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: rook-ceph-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: rook-ceph-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataDirect Networks
      provider-url: https://www.ddn.com
    name: vmstore-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vmstore-csi-driver-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.tintri.com/v1alpha1",
                "kind": "VmstoreCsi",
                "metadata": {
                  "name": "vmstorecsi-sample"
                },
                "spec": {
                  "config": {
                    "debug": true,
                    "vmstore_map": {
                      "vmstore2": {
                        "dataIp": "\u003cdataIp\u003e",
                        "managementAddress": "\u003cmanagementAddress\u003e",
                        "mountPoint": "/tintri-csi",
                        "password": "tintri99",
                        "username": "admin",
                        "vmstoreFS": "/tintri/csi"
                      }
                    }
                  },
                  "csi_snapshotter": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                    "resources": null,
                    "tag": "v5.0.1",
                    "timeout": "120m"
                  },
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "tintri/vmstore-csi-driver",
                    "tag": "v1.0.1"
                  },
                  "priorityClassName": "system-cluster-critical",
                  "provisioner": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                    "resources": null,
                    "tag": "v4.0.1",
                    "timeout": "120m"
                  },
                  "registrar": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                    "resources": null,
                    "tag": "v2.10.1"
                  },
                  "resizer": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-resizer",
                    "resources": null,
                    "tag": "v1.12.0"
                  },
                  "resources": {
                    "limits": {
                      "cpu": "512m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "64Mi"
                    }
                  },
                  "secretName": "vmstore-csi-file-driver-config",
                  "volumeNamePrefix": "pvc-vmstore"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-07-02T23:11:08Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: VmstoreCsi
            name: vmstorecsis.charts.tintri.com
            version: v1alpha1
        description: "A Container Storage Interface (CSI) Driver for Tintri Vmstore
          filesystems. This operator eases the installation\nand management of the
          Vmstore CSI Driver in an OpenShift or other Operator Lifecycle Manager enabled
          cluster.\n\n\n## Prerequisites\nMake sure that the top level folder where
          the CSI volumes will be created exists on VMStore and is shared over NFS.\nFor
          example `tintri/csi`.\n## Usage\n\n### Dynamically provisioned volumes\n\nFor
          dynamic volume provisioning, the administrator needs to set up a _StorageClass_
          in the PV yaml (examples/nginx-dynamic-volume.yaml for this example) pointing
          to the driver.\nFor dynamically provisioned volumes, Kubernetes generates
          volume name automatically (for example `pvc-vmstore-cfc67950-fe3c-11e8-a3ca-005056b857f8`).\n\n```yaml\napiVersion:
          storage.k8s.io/v1\nkind: StorageClass\nmetadata:\n  name: vmstore-csi-file-driver-sc\nprovisioner:
          vmstore.csi.tintri.com\nallowVolumeExpansion: true\n```\n\n#### Example\n\nRun
          Nginx pod with dynamically provisioned volume:\n\n```bash\noc apply -f examples/nginx-dynamic-volume.yaml\n\n#
          to delete this pod:\noc delete -f examples/nginx-dynamic-volume.yaml\n```\n\n###
          Static (pre-provisioned) volumes\n\nThe driver can use already existing
          Vmstore filesystem,\nin this case, _StorageClass_, _PersistentVolume_ and
          _PersistentVolumeClaim_ should be configured.\n\n#### _StorageClass_ configuration\n\n```yaml\napiVersion:
          storage.k8s.io/v1\nkind: StorageClass\nmetadata:\n  name: vmstore-csi-file-driver-sc-nginx-persistent\nprovisioner:
          vmstore.csi.tintri.com\nallowVolumeExpansion: true\nallowedTopologies:\n-
          matchLabelExpressions:\n  - key: topology.vmstore.csi.tintri.com/zone\n
          \   values:\n    - zone-1\nmountOptions:                         # list
          of options for `mount -o ...` command\n#  - noatime                          #\n```\n\n####
          _PersistentVolume_ configuration\n\n```yaml\napiVersion: v1\nkind: PersistentVolume\nmetadata:\n
          \ name: vmstore-csi-file-driver-pv-nginx-persistent\n  labels:\n    name:
          vmstore-csi-file-driver-pv-nginx-persistent\nspec:\n  storageClassName:
          vmstore-csi-file-driver-sc-nginx-persistent\n  accessModes:\n    - ReadWriteOnce\n
          \ capacity:\n    storage: 1Gi\n  csi:\n    driver: vmstore.csi.tintri.com\n
          \   volumeHandle: vmstore1/172.30.230.128:/tintri/csi/vmstorefs-mnt/persistent/volumefile-persistent.img\n```\n\n####
          _PersistentVolumeClaim_ (pointing to created _PersistentVolume_)\n\n```yaml\napiVersion:
          v1\nkind: PersistentVolumeClaim\nmetadata:\n  name: vmstore-csi-file-driver-pvc-nginx-persistent\nspec:\n
          \ storageClassName: vmstore-csi-file-driver-sc-nginx-persistent\n  accessModes:\n
          \   - ReadWriteOnce\n  resources:\n    requests:\n      storage: 1Gi\n  selector:\n
          \   matchLabels:\n      # to create 1-1 relationship for pod - persistent
          volume use unique labels\n      name: vmstore-csi-file-driver-pv-nginx-persistent\n```\n\n###
          Topology configuration\nIn order to configure CSI driver with kubernetes
          topology, use the `zone` parameter in driver config or storageClass parameters.
          Example config file with zones:\n  ```bash\n  vmstore_map:\n    vmstore1:\n
          \     mountPoint: /tintri-csi                            # mountpoint on
          the host where the tintri fs will be mounted\n      dataIp: 172.30.200.37\n
          \     managementAddress: tafzq23.tintri.com\n      vmstoreFS: /tintri/fs01\n
          \     zone: zone-1\n      username: admin\n      password: password\n\n
          \   vmstore2:\n      mountPoint: /tintri-csi                            #
          mountpoint on the host where the tintri fs will be mounted\n      dataIp:
          10.136.40.71\n      managementAddress: tafbm05.tintri.com\n      vmstoreFS:
          /tintri/csi\n      zone: zone-2\n      username: admin\n      password:
          password\n  ```\n\nThis will assign volumes to be created on Vmstore that
          correspond with the zones requested by allowedTopologies values.\n\n\n###
          Defaults/Configuration/Parameter options\n\n| Default  | Config               |
          \ Parameter    |  Desc                             |\n|----------|----------------------|---------------|-----------------------------------|\n|
          \  -      | dataIp               |   dataIp      | Data address used to
          mount Vmstore filesystem |\n| -    | mountPoint       |    -      | Mount
          point inside of the driver container where Vmstore filesystem will be mounted|\n|
          \  -      | username             |      -        | Vmstore API username
          |\n|   -      | password             |      -        | Vmstore API password
          |\n|   -      | zone                 |      -        | Zone to match topology.vmstore.csi.tintri.com/zone
          \           |\n|   -      | vmstoreFS            |   vmstoreFS   | Path
          to filesystem on Vmstore |\n|   -      | managementAddress    |      -        |
          FQDN for Vmstore management operations |\n|   -      | defaultMountOptions
          \ |   mountOptions| Mount options |\n|   0777   | mountPointPermissions|
          \  mountPointPermissions | File permissions to be set on mount point |\n\n####
          Example\n\nRun nginx server using PersistentVolume.\n\n**Note:** Pre-configured
          volume file should exist on the Vmstore:\n`/tintri/csi/vmstorefs-mnt/persistent/volumefile-persistent.img`.\n\n```bash\noc
          apply -f nginx-persistent-volume.yaml\n\n# to delete this pod and volume:\noc
          delete -f nginx-persistent-volume.yaml\n```\n\n## Snapshots\nTo use CSI
          snapshots, the snapshot CRDs along with the csi-snapshotter must be installed.\n```bash\noc
          apply -f deploy/kubernetes/snapshots/\n```\n\nAfter that the snapshot class
          for VMStore CSI must be created\n\n```bash\noc apply -f examples/snapshot-class.yaml\n```\n\nNow
          a snapshot can be created, for example\n```bash\noc apply -f examples/snapshot-from-dynamic.yaml\n```\n\nWe
          can create a volume using the snapshot\n```bash\noc apply -f examples/nginx-from-snapshot.yaml\n```\n\n##
          Troubleshooting\n### Driver logs\nTo collect all driver related logs, you
          can use the `oc logs` command.\nAll in on command:\n```bash\nmkdir vmstore-csi-logs\nfor
          name in $(oc get pod -owide | grep vmstore | awk '{print $1}'); do oc logs
          $name --all-containers > vmstore-csi-logs/$name; done\n```\n\nTo get logs
          from all containers of a single pod \n```bash\noc logs <pod_name> --all-containers\n```\n\nLogs
          from a single container of a pod\n```bash\noc logs <pod_name> -c driver\n```\n\n####
          Driver secret\n```bash\noc get secret vmstore-csi-file-driver-config -o
          json | jq '.data | map_values(@base64d)' > vmstore-csi-logs/vmstore-csi-file-driver-config\n```\n\n####
          PV/PVC/Pod data\n```bash\noc get pvc > vmstore-csi-logs/pvcs\noc get pv
          > vmstore-csi-logs/pvs\noc get pod > vmstore-csi-logs/pods\n```\n\n####
          Extended info about a PV/PVC/Pod:\n```bash\noc describe pvc <pvc_name> >
          vmstore-csi-logs/<pvc_name>\noc describe pv <pv_name> > vmstore-csi-logs/<pv_name>\noc
          describe pod <pod_name> > vmstore-csi-logs/<pod_name>\n```"
        displayName: Vmstore CSI file driver
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - CSI
        - Vmstore
        - storage
        - Tintri
        - DDN
        links:
        - name: DDN vmstore Filesystem
          url: https://www.ddn.com/products/lustre-file-system-vmstore/
        maintainers:
        - email: akhodos@tintri.com
          name: Alexey Khodos
        - email: rrethinam@tintri.com
          name: Ranjith Rethinam
        maturity: alpha
        provider:
          name: DataDirect Networks
          url: https://www.ddn.com
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d4883d7c622683b3319b5e6b3a7edfbf2594c18060131a8bf64504805f875522
        - registry.connect.redhat.com/ddn/vmstore-csi-file-driver-operator@sha256:5aabe66a616dd7639b0638c7743118e585e3af6caca203f42a7187cd681442fd
        - tintri/vmstore-csi-driver-operator-controller@sha256:2cc0f04ed3da09b0af6ae737237d4f54772d04bf888c597361f67f6e6618799f
        version: 1.0.0
      entries:
      - name: vmstore-csi-driver-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: vmstore-csi-driver-operator
    provider:
      name: DataDirect Networks
      url: https://www.ddn.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: prometurbo-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometurbo-operator.v8.18.40-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5-beta.1 <8.18.40-beta.1'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
          - kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.

          ### Get Started
          Please follow [this](https://www.ibm.com/docs/en/tarm/8.15.x?topic=configuration-prometheus) for an overview of Prometurbo and deployment instructions.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/prometurbo
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/prometurbo-operator@sha256:9b6bb8cf444dc44b7709bf95962151d0817c635ce68fce8042122ab3f99bc0ee
        - registry.connect.redhat.com/turbonomic/prometurbo-operator-bundle@sha256:26190af9271c0600c7ec0a3dc4ee23a1290657615379124bcf6b4d389cda90fc
        version: 8.18.40-beta.1
      entries:
      - name: prometurbo-operator.v8.18.40-beta.1
        version: 8.18.40-beta.1
      name: beta
    - currentCSV: prometurbo-operator.v8.18.30
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5 <8.18.30'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
          - kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.

          ### Get Started
          Please follow [this](https://www.ibm.com/docs/en/tarm/8.15.x?topic=configuration-prometheus) for an overview of Prometurbo and deployment instructions.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/prometurbo
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/prometurbo-operator-bundle@sha256:3c90ee4515d44efe835994f44fd883a6a1715826d19068241b91144c83632b45
        - icr.io/cpopen/prometurbo-operator@sha256:59b410c33ebc6e5420ff3f278f364837bae483b3f8a367e31822da8820cae33b
        version: 8.18.30
      entries:
      - name: prometurbo-operator.v8.18.30
        version: 8.18.30
      name: stable
    defaultChannel: stable
    packageName: prometurbo-certified
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/en/products/edge/validated-patterns
    name: patterns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: patterns-operator.v0.0.63
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "gitops.hybrid-cloud-patterns.io/v1alpha1",
                "kind": "Pattern",
                "metadata": {
                  "name": "pattern-sample"
                },
                "spec": {
                  "clusterGroupName": "hub",
                  "gitSpec": {
                    "targetRepo": "https://github.com/validatedpatterns/multicloud-gitops",
                    "targetRevision": "main"
                  },
                  "multiSourceConfig": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/validatedpatterns/patterns-operator:0.0.63
          createdAt: "2025-10-29 13:50:47"
          description: "An operator to deploy and manage architecture patterns from
            https://validatedpatterns.io. \nThis operator collects some Analytics
            like cluster version, cloud type, etc. To disable this\nadd \"ANALYTICS:
            false\" to the environment variables in the subscription."
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/must-gather-image: quay.io/validatedpatterns/must-gather@sha256:ac23dfe8c3b8404f75f4bdf0eb54470acc98bbb5f892de34d2580066e93ee63d
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/validatedpatterns/patterns-operator
          support: validatedpatterns@googlegroups.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Pattern is the Schema for the patterns API
            displayName: Pattern
            kind: Pattern
            name: patterns.gitops.hybrid-cloud-patterns.io
            version: v1alpha1
        description: Deploys and manages architecture patterns from https://validatedpatterns.io
        displayName: Validated Patterns Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Validated
        - Pattern
        - Blueprint
        - Architecture
        links:
        - name: Hybrid Cloud Patterns
          url: https://validatedpatterns.io
        maintainers:
        - email: validatedpatterns@googlegroups.com
          name: patterns-team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/en/products/edge/validated-patterns
        relatedImages:
        - quay.io/community-operator-pipeline-prod/patterns-operator:0.0.63
        - quay.io/validatedpatterns/must-gather@sha256:ac23dfe8c3b8404f75f4bdf0eb54470acc98bbb5f892de34d2580066e93ee63d
        - quay.io/validatedpatterns/patterns-operator@sha256:f1fd6cf65ece516f7e413e6f2f3483982d0831bcea31c0e0aae11ba47c71659c
        version: 0.0.63
      entries:
      - name: patterns-operator.v0.0.63
        version: 0.0.63
      - name: patterns-operator.v0.0.62
        version: 0.0.62
      - name: patterns-operator.v0.0.61
        version: 0.0.61
      - name: patterns-operator.v0.0.60
        version: 0.0.60
      - name: patterns-operator.v0.0.59
        version: 0.0.59
      - name: patterns-operator.v0.0.58
        version: 0.0.58
      - name: patterns-operator.v0.0.57
        version: 0.0.57
      - name: patterns-operator.v0.0.56
        version: 0.0.56
      - name: patterns-operator.v0.0.55
        version: 0.0.55
      - name: patterns-operator.v0.0.54
        version: 0.0.54
      - name: patterns-operator.v0.0.53
        version: 0.0.53
      - name: patterns-operator.v0.0.52
        version: 0.0.52
      - name: patterns-operator.v0.0.51
        version: 0.0.51
      - name: patterns-operator.v0.0.50
        version: 0.0.50
      - name: patterns-operator.v0.0.49
        version: 0.0.49
      - name: patterns-operator.v0.0.48
        version: 0.0.48
      - name: patterns-operator.v0.0.47
        version: 0.0.47
      - name: patterns-operator.v0.0.46
        version: 0.0.46
      - name: patterns-operator.v0.0.45
        version: 0.0.45
      - name: patterns-operator.v0.0.44
        version: 0.0.44
      - name: patterns-operator.v0.0.43
        version: 0.0.43
      - name: patterns-operator.v0.0.42
        version: 0.0.42
      - name: patterns-operator.v0.0.41
        version: 0.0.41
      - name: patterns-operator.v0.0.40
        version: 0.0.40
      - name: patterns-operator.v0.0.39
        version: 0.0.39
      - name: patterns-operator.v0.0.38
        version: 0.0.38
      - name: patterns-operator.v0.0.37
        version: 0.0.37
      - name: patterns-operator.v0.0.36
        version: 0.0.36
      - name: patterns-operator.v0.0.35
        version: 0.0.35
      - name: patterns-operator.v0.0.34
        version: 0.0.34
      - name: patterns-operator.v0.0.33
        version: 0.0.33
      - name: patterns-operator.v0.0.32
        version: 0.0.32
      - name: patterns-operator.v0.0.31
        version: 0.0.31
      - name: patterns-operator.v0.0.30
        version: 0.0.30
      - name: patterns-operator.v0.0.29
        version: 0.0.29
      - name: patterns-operator.v0.0.28
        version: 0.0.28
      - name: patterns-operator.v0.0.27
        version: 0.0.27
      - name: patterns-operator.v0.0.26
        version: 0.0.26
      - name: patterns-operator.v0.0.25
        version: 0.0.25
      - name: patterns-operator.v0.0.24
        version: 0.0.24
      - name: patterns-operator.v0.0.23
        version: 0.0.23
      - name: patterns-operator.v0.0.22
        version: 0.0.22
      - name: patterns-operator.v0.0.21
        version: 0.0.21
      - name: patterns-operator.v0.0.20
        version: 0.0.20
      - name: patterns-operator.v0.0.19
        version: 0.0.19
      - name: patterns-operator.v0.0.18
        version: 0.0.18
      - name: patterns-operator.v0.0.17
        version: 0.0.17
      - name: patterns-operator.v0.0.16
        version: 0.0.16
      - name: patterns-operator.v0.0.15
        version: 0.0.15
      - name: patterns-operator.v0.0.14
        version: 0.0.14
      - name: patterns-operator.v0.0.13
        version: 0.0.13
      - name: patterns-operator.v0.0.12
        version: 0.0.12
      - name: patterns-operator.v0.0.11
        version: 0.0.11
      - name: patterns-operator.v0.0.10
        version: 0.0.10
      - name: patterns-operator.v0.0.9
        version: 0.0.9
      - name: patterns-operator.v0.0.8
        version: 0.0.8
      - name: patterns-operator.v0.0.7
        version: 0.0.7
      - name: patterns-operator.v0.0.6
        version: 0.0.6
      - name: patterns-operator.v0.0.5
        version: 0.0.5
      - name: patterns-operator.v0.0.4
        version: 0.0.4
      - name: patterns-operator.v0.0.3
        version: 0.0.3
      - name: patterns-operator.v0.0.2
        version: 0.0.2
      - name: patterns-operator.v0.0.1
        version: 0.0.1
      name: fast
    defaultChannel: fast
    packageName: patterns-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com/en/products/edge/validated-patterns
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/openshift/lightspeed-service
    name: lightspeed-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lightspeed-operator.v1.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ols.openshift.io/v1alpha1",
                "kind": "OLSConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightspeed-operator",
                    "app.kubernetes.io/instance": "olsconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "olsconfig",
                    "app.kubernetes.io/part-of": "lightspeed-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "llm": {
                    "providers": [
                      {
                        "credentialsSecretRef": {
                          "name": "credentials"
                        },
                        "models": [
                          {
                            "name": "gpt-3.5-turbo-1106"
                          }
                        ],
                        "name": "OpenAI"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-10-10T17:31:05Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-lightspeed
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus", "OpenShift Kubernetes Engine", "OpenShift Virtualization
            Engine"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lightspeed-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Red Hat OpenShift Lightspeed instance. OLSConfig is the Schema
              for the olsconfigs API
            displayName: OLSConfig
            kind: OLSConfig
            name: olsconfigs.ols.openshift.io
            version: v1alpha1
        description: |-
          OpenShift Lightspeed Operator provides generative AI-based virtual assistant which integrates into the OpenShift web console. OpenShift Lightspeed can answer natural language questions related to OpenShift Container Platform.

          To configure the OpenShift Lightspeed Operator, you need a Large Language Model (LLM) . You can host the LLM using RHELAI or RHOAI or use one of the models from the following Software-as-a-Service providers:

          - OpenAI
          - Microsoft Azure OpenAI
          - IBM WatsonX

          For more information, see [About OpenShift Lightspeed](https://docs.redhat.com/en/documentation/red_hat_openshift_lightspeed/1.0tp1/html/about/ols-about-openshift-lightspeed) in the official product documentation.

          Questions, comments, concerns, or just want to talk to the OpenShift Lightspeed team? [Email us](mailto:openshift-lightspeed-contact-requests@redhat.com)!
        displayName: OpenShift Lightspeed Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ai
        - assistant
        - openshift
        - llm
        links:
        - name: Lightspeed Operator
          url: https://github.com/openshift/lightspeed-operator
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/lightspeed-service
        relatedImages:
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/lightspeed-service-api-rhel9@sha256:c9cd5a1a14a310ee25de231208b7ebd7c9dbcd16205caa03b96a379d7988d022
        - registry.redhat.io/openshift-lightspeed/lightspeed-rhel9-operator@sha256:477acc1afc8df694c5d661f0da917b65c58a21ca3f9b115979278a6ae475b9ee
        - registry.redhat.io/openshift-lightspeed/lightspeed-ocp-rag-rhel9@sha256:3b73a841b0388f659f5a6f8f40a2b903e17ee4a7a57f074aa396b9e050cccc97
        - registry.redhat.io/rhel9/postgresql-16@sha256:42f385ac3c9b8913426da7c57e70bc6617cd237aaf697c667f6385a8c0b0118b
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-rhel9@sha256:830d900d133947ff0041bb0f8ad66d77db78483331a73278e47d89eece76eb9a
        - registry.redhat.io/openshift-lightspeed/openshift-mcp-server-rhel9@sha256:d8f0081fcabbdaa9e5aa4fce5ed15e2a3222a277f6ef55f5a05583480d92dda3
        - registry.redhat.io/openshift-lightspeed/lightspeed-operator-bundle@sha256:6ddfddfd63d7b8b1fc59c7d8062562b9c1e0dbfaa7b6126db3c6bdc19342a6d6
        - registry.redhat.io/openshift-lightspeed/lightspeed-to-dataverse-exporter-rhel9@sha256:d4f3fa25a0dc60de849658ee59d900fcdf314984b27f4c07bdfb667f22001053
        version: 1.0.8
      entries:
      - name: lightspeed-operator.v1.0.8
        version: 1.0.8
      name: alpha
    - currentCSV: lightspeed-operator.v1.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ols.openshift.io/v1alpha1",
                "kind": "OLSConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightspeed-operator",
                    "app.kubernetes.io/instance": "olsconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "olsconfig",
                    "app.kubernetes.io/part-of": "lightspeed-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "llm": {
                    "providers": [
                      {
                        "credentialsSecretRef": {
                          "name": "credentials"
                        },
                        "models": [
                          {
                            "name": "gpt-3.5-turbo-1106"
                          }
                        ],
                        "name": "OpenAI"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-10-10T17:31:05Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-lightspeed
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus", "OpenShift Kubernetes Engine", "OpenShift Virtualization
            Engine"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lightspeed-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Red Hat OpenShift Lightspeed instance. OLSConfig is the Schema
              for the olsconfigs API
            displayName: OLSConfig
            kind: OLSConfig
            name: olsconfigs.ols.openshift.io
            version: v1alpha1
        description: |-
          OpenShift Lightspeed Operator provides generative AI-based virtual assistant which integrates into the OpenShift web console. OpenShift Lightspeed can answer natural language questions related to OpenShift Container Platform.

          To configure the OpenShift Lightspeed Operator, you need a Large Language Model (LLM) . You can host the LLM using RHELAI or RHOAI or use one of the models from the following Software-as-a-Service providers:

          - OpenAI
          - Microsoft Azure OpenAI
          - IBM WatsonX

          For more information, see [About OpenShift Lightspeed](https://docs.redhat.com/en/documentation/red_hat_openshift_lightspeed/1.0tp1/html/about/ols-about-openshift-lightspeed) in the official product documentation.

          Questions, comments, concerns, or just want to talk to the OpenShift Lightspeed team? [Email us](mailto:openshift-lightspeed-contact-requests@redhat.com)!
        displayName: OpenShift Lightspeed Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ai
        - assistant
        - openshift
        - llm
        links:
        - name: Lightspeed Operator
          url: https://github.com/openshift/lightspeed-operator
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/lightspeed-service
        relatedImages:
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-rhel9@sha256:830d900d133947ff0041bb0f8ad66d77db78483331a73278e47d89eece76eb9a
        - registry.redhat.io/openshift-lightspeed/lightspeed-rhel9-operator@sha256:477acc1afc8df694c5d661f0da917b65c58a21ca3f9b115979278a6ae475b9ee
        - registry.redhat.io/openshift-lightspeed/lightspeed-to-dataverse-exporter-rhel9@sha256:d4f3fa25a0dc60de849658ee59d900fcdf314984b27f4c07bdfb667f22001053
        - registry.redhat.io/rhel9/postgresql-16@sha256:42f385ac3c9b8913426da7c57e70bc6617cd237aaf697c667f6385a8c0b0118b
        - registry.redhat.io/openshift-lightspeed/lightspeed-operator-bundle@sha256:6ddfddfd63d7b8b1fc59c7d8062562b9c1e0dbfaa7b6126db3c6bdc19342a6d6
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/openshift-mcp-server-rhel9@sha256:d8f0081fcabbdaa9e5aa4fce5ed15e2a3222a277f6ef55f5a05583480d92dda3
        - registry.redhat.io/openshift-lightspeed/lightspeed-ocp-rag-rhel9@sha256:3b73a841b0388f659f5a6f8f40a2b903e17ee4a7a57f074aa396b9e050cccc97
        - registry.redhat.io/openshift-lightspeed/lightspeed-service-api-rhel9@sha256:c9cd5a1a14a310ee25de231208b7ebd7c9dbcd16205caa03b96a379d7988d022
        version: 1.0.8
      entries:
      - name: lightspeed-operator.v1.0.8
        version: 1.0.8
      name: stable
    defaultChannel: stable
    packageName: lightspeed-operator
    provider:
      name: Red Hat, Inc
      url: https://github.com/openshift/lightspeed-service
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: cluster-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-manager.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.open-cluster-management.io/v1",
                "kind": "ClusterManager",
                "metadata": {
                  "name": "cluster-manager"
                },
                "spec": {
                  "addOnManagerImagePullSpec": "quay.io/open-cluster-management/addon-manager:v0.13.1",
                  "deployOption": {
                    "mode": "Default"
                  },
                  "placementImagePullSpec": "quay.io/open-cluster-management/placement:v0.13.1",
                  "registrationConfiguration": {
                    "featureGates": [
                      {
                        "feature": "DefaultClusterSet",
                        "mode": "Enable"
                      }
                    ]
                  },
                  "registrationImagePullSpec": "quay.io/open-cluster-management/registration:v0.13.1",
                  "workImagePullSpec": "quay.io/open-cluster-management/work:v0.13.1"
                }
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1",
                "kind": "ClusterManager",
                "metadata": {
                  "name": "cluster-manager"
                },
                "spec": {
                  "addOnManagerImagePullSpec": "quay.io/open-cluster-management/addon-manager:v0.13.1",
                  "deployOption": {
                    "hosted": {
                      "registrationWebhookConfiguration": {
                        "address": "management-control-plane",
                        "port": 30443
                      },
                      "workWebhookConfiguration": {
                        "address": "management-control-plane",
                        "port": 31443
                      }
                    },
                    "mode": "Hosted"
                  },
                  "placementImagePullSpec": "quay.io/open-cluster-management/placement:v0.13.1",
                  "registrationImagePullSpec": "quay.io/open-cluster-management/registration:v0.13.1",
                  "workImagePullSpec": "quay.io/open-cluster-management/work:v0.13.1"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/registration-operator:v0.13.1
          createdAt: "2024-04-10T15:27:49Z"
          description: Manages the installation and upgrade of the ClusterManager.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management-io/ocm
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterManager defines the configurations of controllers
              running hub that govern registration and work distribution for attached
              Klusterlets
            displayName: ClusterManager
            kind: ClusterManager
            name: clustermanagers.operator.open-cluster-management.io
            version: v1
        description: "Note: This operator will stop updating, please use the latest
          operator in OperatorHub.io https://operatorhub.io/operator/cluster-manager.
          \n\nThe Cluster Manager provides the multicluster hub, which can manage
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. This operator supports the installation and upgrade of ClusterManager.\n\n##
          How to Install\nInstall ClusterManager operator by following instructions
          in top right button `Install`. After installing the operator, create an
          instance of the ClusterManager resource to install the ClusterManager.\n\nThe
          pods of ClusterManager are created in the `open-cluster-management-hub`
          namespace:\n\n```\n$ kubectl get pods -n open-cluster-management-hub\nNAME
          \                                                      READY   STATUS    RESTARTS
          \  AGE\ncluster-manager-addon-manager-controller-7fcc67bfdf-x7hbz  1/1     Running
          \  0          61m\ncluster-manager-placement-controller-dbcfd4975-26jpw
          \      1/1     Running   0          61m\ncluster-manager-registration-controller-7949d97899-wwtg4
          \  1/1     Running   0          61m\ncluster-manager-registration-webhook-7f675bc4bb-v4rhj
          \     1/1     Running   0          61m\ncluster-manager-work-webhook-6c9d65fb95-jh97b
          \             1/1     Running   0          61m\n```\n\nThere is a ManagedCluster
          created in the Hub cluster when the managed cluster is registered to the
          Hub cluster.\n\n```\n$ kubectl get managedclusters.cluster.open-cluster-management.io\nNAME
          \                  HUB ACCEPTED   MANAGED CLUSTER URLS     JOINED   AVAILABLE
          \  AGE\ncluster-dev            true                                    True
          \    True        7h20m\ncluster-test           false          https://127.0.0.1:8443
          \                       7h25m\n```\n"
        displayName: Cluster Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open-cluster-management
        - ClusterManager
        links:
        - name: Registration Operator
          url: https://github.com/open-cluster-management-io/ocm
        maintainers:
        - email: zyin@redhat.com
          name: Zhiwei Yin
        - email: deads@redhat.com
          name: David Eads
        - email: jqiu@redhat.com
          name: Jian Qiu
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cluster-manager@sha256:a4c8a54148538b371e5cea3b2f2d4109f7b6bc4a7f2e5b52a840c9340fbf5e47
        - quay.io/open-cluster-management/registration-operator:v0.13.1
        version: 0.13.1
      entries:
      - name: cluster-manager.v0.13.1
        version: 0.13.1
      - name: cluster-manager.v0.13.0
        version: 0.13.0
      - name: cluster-manager.v0.12.0
        version: 0.12.0
      - name: cluster-manager.v0.11.0
        version: 0.11.0
      - name: cluster-manager.v0.10.0
        version: 0.10.0
      - name: cluster-manager.v0.9.1
        version: 0.9.1
      - name: cluster-manager.v0.8.0
        version: 0.8.0
      - name: cluster-manager.v0.7.0
        version: 0.7.0
      - name: cluster-manager.v0.6.0
        version: 0.6.0
      - name: cluster-manager.v0.5.0
        version: 0.5.0
      - name: cluster-manager.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: cluster-manager
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Ian Boden
      provider-url: ""
    name: eclipse-amlen-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eclipse-amlen-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eclipse.org/v1",
                "kind": "Amlen",
                "metadata": {
                  "name": "amlen-sample"
                },
                "spec": {
                  "_amlen_image_tag": "latest",
                  "_amlen_monitor_image_tag": "latest",
                  "_amlen_name": "amlen-sample",
                  "_amlen_namespace": "osdk-test",
                  "_amlen_persistence": "false",
                  "config": "amlen-config",
                  "device_cert_issuer": {
                    "mode": "automatic",
                    "name": "amlen-selfsigned-issuer"
                  },
                  "ha": {
                    "cert_issuer": {
                      "name": "amlen-selfsigned-issuer"
                    },
                    "enabled": true
                  },
                  "size": 2
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/amlen/operator:v1.0.1a
          createdAt: "2022-11-24T15:31:00Z"
          description: An operator to run the Eclipse Amlen MQTT Broker
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/eclipse/amlen
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Amlen
            name: amlens.eclipse.org
            version: v1
        description: Operator for the eclipse Amlen MQTT Broker\n\n### Supported Feature\n\nCurrently
          supports:\n* Install - simple install process\n* Upgrade - non-disruptive
          upgrade\n*High Availability - can be enabled/disabled via the CRD\n\n###
          Documentation\nThe main Amlen website has links to product documentation,
          forum, blog and the slack channel\nhttp://www.eclipse.org/amlen\n\n### Getting
          help\nThe quickest way to get help is to use the slack channel but the forum
          is monitored as well\n\nIssues can also be added to the github repository
          https://github.com/eclipse/amlen\n\n### License\nEclipse Amlen Operator
          is licensed under the [Eclipse Public License - v 2.0](https://www.eclipse.org/legal/epl-2.0/)
        displayName: eclipse-amlen-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - amlen
        - mqtt
        - broker
        links:
        - name: Eclipse Amlen Operator
          url: https://eclipse.org/amlen
        maintainers:
        - email: ianboden@uk.ibm.com
          name: Ian Boden
        maturity: stable
        provider:
          name: Ian Boden
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/amlen/operator:v1.0.1a
        - quay.io/openshift-community-operators/eclipse-amlen-operator@sha256:bb89e2a7cb1c9172b080c72ad3227017d135fc30076d2a68b4e215fa8fa55846
        version: 1.0.0
      entries:
      - name: eclipse-amlen-operator.v1.0.0
        version: 1.0.0
      - name: eclipse-amlen-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: eclipse-amlen-operator.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eclipse.org/v1",
                "kind": "Amlen",
                "metadata": {
                  "name": "amlen-sample"
                },
                "spec": {
                  "config": "amlen-config",
                  "device_cert_issuer": {
                    "mode": "automatic",
                    "name": "amlen-selfsigned-issuer"
                  },
                  "ha": {
                    "cert_issuer": {
                      "name": "amlen-selfsigned-issuer"
                    },
                    "enabled": true
                  },
                  "ldap": {
                    "cert_issuer": {
                      "name": "amlen-selfsigned-issuer"
                    },
                    "enabled": true
                  },
                  "size": 2
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/amlen/operator:v1.1.3
          createdAt: "2025-05-22T10:00:00Z"
          description: An operator to run the Eclipse Amlen MQTT Broker
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/eclipse-amlen/amlen
          support: Eclipse
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Amlen
            name: amlens.eclipse.org
            version: v1
        description: |-
          Operator for the eclipse Amlen MQTT Broker

          ### Supported Feature

          Currently supports:
          * Install - simple install process
          * Upgrade - non-disruptive upgrade
          * High Availability - can be enabled/disabled via the CRD

          ### Documentation
          The main Amlen website has links to product documentation, forum, blog and the slack channel
          http://www.eclipse.org/amlen

          ### Getting help
          The quickest way to get help is to use the slack channel but the forum is monitored as well
          Issues can also be added to the github repository https://github.com/eclipse-amlen/amlen

          ### License
          Eclipse Amlen Operator is licensed under [Eclipse Public License - v 2.0](https://www.eclipse.org/legal/epl-2.0/)
        displayName: eclipse-amlen-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - amlen
        - mqtt
        - broker
        links:
        - name: Eclipse Amlen Operator
          url: https://eclipse.org/amlen
        maintainers:
        - email: ianboden@uk.ibm.com
          name: Ian Boden
        maturity: stable
        provider:
          name: Eclipse Amlen
          url: https://eclipse.org/amlen
        relatedImages:
        - controller:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/community-operator-pipeline-prod/eclipse-amlen-operator@sha256:5fbfb0bd4f764643cdc1021e99e489514a1f035d85131b13e56b11a3045883c2
        version: 1.1.3
      entries:
      - name: eclipse-amlen-operator.v1.1.3
        version: 1.1.3
      - name: eclipse-amlen-operator.v1.1.0
        version: 1.1.0
      - name: eclipse-amlen-operator.v1.0.2
        version: 1.0.2
      - name: eclipse-amlen-operator.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: alpha
    packageName: eclipse-amlen-operator
    provider:
      name: Ian Boden
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: observability-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: observability-operator.v0.0.28
      currentCSVDesc:
        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: quay.io/rhobs/observability-operator:0.0.28
          createdAt: "2023-11-09T07:43:16Z"
          description: A Go based Kubernetes operator to setup and manage highly available
            Monitoring Stack using Prometheus, Alertmanager and Thanos Querier.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            [
              "prometheuses.monitoring.rhobs", "alertmanagers.monitoring.rhobs",
              "thanosrulers.monitoring.rhobs"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/rhobs/observability-operator
        apiservicedefinitions: {}
        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
          - 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: |2+

          Observability Operator is a Go based Kubernetes operator to setup and manage highly available Monitoring stack using Prometheus, Alertmanager and Thanos Querier.
          ### 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
          ### Documentation
          - **[Documentation](https://github.com/rhobs/observability-operator/tree/main/docs)**
          - **[Developer Docs](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md)**
          ### Contributing
          **[See Contribution Guidelines](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md#contributions)** to contribute to the project by
          - Raising Bugs and Feature Requests
          - Fixing Issues by opening a Pull Request
          - Improving Documentation
          ###  License
          Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)

        displayName: Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - monitoring
        - prometheus
        - thanos
        links:
        - name: Observability Operator
          url: https://rhobs-handbook.netlify.app/products/observability-operator
        - name: GitHub
          url: https://github.com/rhobs/observability-operator
        maintainers:
        - email: jfajersk@redhat.com
          name: Jan Fajerski
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: spasquie@redhat.com
          name: Simon Pasquier
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/observability-operator@sha256:182b95a93db9b95606405c24686cbb96054efb0c2236822569f30b6c27992534
        - quay.io/rhobs/obo-admission-webhook:v0.69.0-rhobs1
        - quay.io/rhobs/obo-prometheus-operator:v0.69.0-rhobs1
        - quay.io/rhobs/observability-operator:0.0.28
        version: 0.0.28
      entries:
      - name: observability-operator.v0.0.28
        version: 0.0.28
      - name: observability-operator.v0.0.25
        version: 0.0.25
      name: candidate
    - currentCSV: observability-operator.v0.0.28
      currentCSVDesc:
        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: quay.io/rhobs/observability-operator:0.0.28
          createdAt: "2023-11-09T07:43:16Z"
          description: A Go based Kubernetes operator to setup and manage highly available
            Monitoring Stack using Prometheus, Alertmanager and Thanos Querier.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            [
              "prometheuses.monitoring.rhobs", "alertmanagers.monitoring.rhobs",
              "thanosrulers.monitoring.rhobs"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/rhobs/observability-operator
        apiservicedefinitions: {}
        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
          - 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: |2+

          Observability Operator is a Go based Kubernetes operator to setup and manage highly available Monitoring stack using Prometheus, Alertmanager and Thanos Querier.
          ### 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
          ### Documentation
          - **[Documentation](https://github.com/rhobs/observability-operator/tree/main/docs)**
          - **[Developer Docs](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md)**
          ### Contributing
          **[See Contribution Guidelines](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md#contributions)** to contribute to the project by
          - Raising Bugs and Feature Requests
          - Fixing Issues by opening a Pull Request
          - Improving Documentation
          ###  License
          Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)

        displayName: Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - monitoring
        - prometheus
        - thanos
        links:
        - name: Observability Operator
          url: https://rhobs-handbook.netlify.app/products/observability-operator
        - name: GitHub
          url: https://github.com/rhobs/observability-operator
        maintainers:
        - email: jfajersk@redhat.com
          name: Jan Fajerski
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: spasquie@redhat.com
          name: Simon Pasquier
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/observability-operator@sha256:182b95a93db9b95606405c24686cbb96054efb0c2236822569f30b6c27992534
        - quay.io/rhobs/obo-admission-webhook:v0.69.0-rhobs1
        - quay.io/rhobs/obo-prometheus-operator:v0.69.0-rhobs1
        - quay.io/rhobs/observability-operator:0.0.28
        version: 0.0.28
      entries:
      - name: observability-operator.v0.0.28
        version: 0.0.28
      - name: observability-operator.v0.0.25
        version: 0.0.25
      - name: observability-operator.v0.0.22
        version: 0.0.22
      name: development
    - currentCSV: observability-operator.v0.0.28
      currentCSVDesc:
        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: quay.io/rhobs/observability-operator:0.0.28
          createdAt: "2023-11-09T07:43:16Z"
          description: A Go based Kubernetes operator to setup and manage highly available
            Monitoring Stack using Prometheus, Alertmanager and Thanos Querier.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            [
              "prometheuses.monitoring.rhobs", "alertmanagers.monitoring.rhobs",
              "thanosrulers.monitoring.rhobs"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/rhobs/observability-operator
        apiservicedefinitions: {}
        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
          - 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: |2+

          Observability Operator is a Go based Kubernetes operator to setup and manage highly available Monitoring stack using Prometheus, Alertmanager and Thanos Querier.
          ### 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
          ### Documentation
          - **[Documentation](https://github.com/rhobs/observability-operator/tree/main/docs)**
          - **[Developer Docs](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md)**
          ### Contributing
          **[See Contribution Guidelines](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md#contributions)** to contribute to the project by
          - Raising Bugs and Feature Requests
          - Fixing Issues by opening a Pull Request
          - Improving Documentation
          ###  License
          Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)

        displayName: Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - monitoring
        - prometheus
        - thanos
        links:
        - name: Observability Operator
          url: https://rhobs-handbook.netlify.app/products/observability-operator
        - name: GitHub
          url: https://github.com/rhobs/observability-operator
        maintainers:
        - email: jfajersk@redhat.com
          name: Jan Fajerski
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: spasquie@redhat.com
          name: Simon Pasquier
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/observability-operator@sha256:182b95a93db9b95606405c24686cbb96054efb0c2236822569f30b6c27992534
        - quay.io/rhobs/obo-admission-webhook:v0.69.0-rhobs1
        - quay.io/rhobs/obo-prometheus-operator:v0.69.0-rhobs1
        - quay.io/rhobs/observability-operator:0.0.28
        version: 0.0.28
      entries:
      - name: observability-operator.v0.0.28
        version: 0.0.28
      - name: observability-operator.v0.0.25
        version: 0.0.25
      name: stable
    defaultChannel: stable
    packageName: observability-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://www.redhat.com/
    name: rhdh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhdh-operator.v1.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha4",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
          createdAt: "2025-11-10T18:16:19Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.8.1'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha4
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.8/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:8b5ec4b6085ecb32ea52c33d97adecc313341681b41d891f5346e9b9f8b8a249
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
        - registry.redhat.io/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:9f870202198dca9d941ebb5321334c45cc2309bb079d2a9e602d8a099f8ffa6f
        version: 1.8.1
      entries:
      - name: rhdh-operator.v1.8.1
        version: 1.8.1
      - name: rhdh-operator.v1.8.0
        version: 1.8.0
      - name: rhdh-operator.v1.7.3
        version: 1.7.3
      - name: rhdh-operator.v1.7.2
        version: 1.7.2
      - name: rhdh-operator.v1.7.1
        version: 1.7.1
      - name: rhdh-operator.v1.7.0
        version: 1.7.0
      - name: rhdh-operator.v1.6.5
        version: 1.6.5
      - name: rhdh-operator.v1.6.4
        version: 1.6.4
      - name: rhdh-operator.v1.6.3
        version: 1.6.3
      - name: rhdh-operator.v1.6.2
        version: 1.6.2
      - name: rhdh-operator.v1.6.1
        version: 1.6.1
      - name: rhdh-operator.v1.6.0
        version: 1.6.0
      - name: rhdh-operator.v1.5.3
        version: 1.5.3
      - name: rhdh-operator.v1.5.2
        version: 1.5.2
      - name: rhdh-operator.v1.5.1
        version: 1.5.1
      - name: rhdh-operator.v1.4.3
        version: 1.4.3
      - name: rhdh-operator.v1.4.2
        version: 1.4.2
      - name: rhdh-operator.v1.4.1
        version: 1.4.1
      - name: rhdh-operator.v1.4.0
        version: 1.4.0
      - name: rhdh-operator.v1.3.5
        version: 1.3.5
      - name: rhdh-operator.v1.3.4
        version: 1.3.4
      - name: rhdh-operator.v1.3.3
        version: 1.3.3
      - name: rhdh-operator.v1.3.1
        version: 1.3.1
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast
    - currentCSV: rhdh-operator.v1.1.2-0.1714688890.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:9bea7eabdea44342248dfd6091a8f5c3b6e65884c916b3c2a073a4a64481aa6f
          createdAt: "2023-03-20T16:11:34Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins, configuration settings, and deployment
            mechanisms, which can help streamline the process of setting up a self-managed
            internal developer portal for adopters who are just starting out.
          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.substitutesFor: rhdh-operator.v1.1.2
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.1.0 <1.2.0'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/janus-idp/operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: asoro@redhat.com
          name: Armel Soro
        - email: gazarenk@redhat.com
          name: Gennady Azarenkov
        - email: jianrzha@redhat.com
          name: Jianrong Zhang
        - email: nboldt@redhat.com
          name: Nick Boldt
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-15@sha256:d5f3d496ecd55688e384cc0627700a97af6924582123bcf00749c375724af3de
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:95ed239eb427c7b1e422ece28c5277b5018efb751c2b472bf502b8216219c047
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:d7ae2456857cab09a9e9acf69c9990ef18deb7f920046b8c2483fbfd0d42bbfc
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a93b382258a34e0b56ef6616a8490e5f44ef1c6aa5d29c0d08d2147ae5b440e6
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:9bea7eabdea44342248dfd6091a8f5c3b6e65884c916b3c2a073a4a64481aa6f
        version: 1.1.2+0.1714688890.p
      entries:
      - name: rhdh-operator.v1.1.2
        version: 1.1.2
      - name: rhdh-operator.v1.1.2-0.1714608881.p
        version: 1.1.2+0.1714608881.p
      - name: rhdh-operator.v1.1.2-0.1714688618.p
        version: 1.1.2+0.1714688618.p
      - name: rhdh-operator.v1.1.2-0.1714688890.p
        version: 1.1.2+0.1714688890.p
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast-1.1
    - currentCSV: rhdh-operator.v1.2.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:c9051a6c339cd40cbc7474a33b32a6b94913af964e12ca5da0c0b7e1c6f444d5
          createdAt: "2024-11-28T17:55:19Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.2.6'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.2/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.2/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: asoro@redhat.com
          name: Armel Soro
        - email: cdaley@redhat.com
          name: Corey Daley
        - email: gazarenk@redhat.com
          name: Gennady Azarenkov
        - email: nboldt@redhat.com
          name: Nick Boldt
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ef29f2b340a6dc52c5014239876d54a54f7c0f0bf4ea917391438a69c94a8532
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:025eb58c69b9cf5992ecf2fccb29a3d36061cbcf62652a1c6878f0c4d767c1fb
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:3170da029869d15a246ad31d0debd4b9c03ba13855fb877a754cfdffb2286b80
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:c9051a6c339cd40cbc7474a33b32a6b94913af964e12ca5da0c0b7e1c6f444d5
        version: 1.2.6
      entries:
      - name: rhdh-operator.v1.2.6
        version: 1.2.6
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast-1.2
    - currentCSV: rhdh-operator.v1.3.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:5ce579edc10bde5c1c400104f7e0d9f86ca277cd565aaf3dd84b8636f5b949a8
          createdAt: "2025-02-10T18:12:52Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.3.5'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.3/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a7ce92f7f4aadca2781c44839bc357615395587bc8b68a735642967cf8694362
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:5ce579edc10bde5c1c400104f7e0d9f86ca277cd565aaf3dd84b8636f5b949a8
        - registry.redhat.io/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:b4934c45ba595b36e65c73b734c58d1517e7f43b7cfc309ca8bc853733582f76
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:c044fed8485a62a5051ac726525da546936be22f268db05491bf81582e0e6194
        version: 1.3.5
      entries:
      - name: rhdh-operator.v1.3.5
        version: 1.3.5
      - name: rhdh-operator.v1.3.4
        version: 1.3.4
      - name: rhdh-operator.v1.3.3
        version: 1.3.3
      - name: rhdh-operator.v1.3.1
        version: 1.3.1
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast-1.3
    - currentCSV: rhdh-operator.v1.4.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:ae5b52c1b35e82f3c564402e367a2a2028e16806867bba0868643089ba7ed223
          createdAt: "2025-04-03T05:42:32Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.4.3'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.4/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:093c6a66d4faa1d980e4319a048db8b2869eba8f13f40f02615d6696257e6719
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:ae5b52c1b35e82f3c564402e367a2a2028e16806867bba0868643089ba7ed223
        version: 1.4.3
      entries:
      - name: rhdh-operator.v1.4.3
        version: 1.4.3
      - name: rhdh-operator.v1.4.2
        version: 1.4.2
      - name: rhdh-operator.v1.4.1
        version: 1.4.1
      - name: rhdh-operator.v1.4.0
        version: 1.4.0
      name: fast-1.4
    - currentCSV: rhdh-operator.v1.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:8fe167cc649a1c53994c376f3cf3eed8c6e318741a0c08e5aaf07cb0b74e7f8a
          createdAt: "2025-06-05T14:31:21Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.5.3'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.5/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:2ad8c87e82df27c2b6ceba94179d1f0a40fe775368663c1b5572611888e0e02b
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:5a19032dda9a0f584b41cbe9e729ed23e6003d90ebbb026eb9e7bb9769d4a4e4
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:8fe167cc649a1c53994c376f3cf3eed8c6e318741a0c08e5aaf07cb0b74e7f8a
        - registry.redhat.io/rhel9/postgresql-15@sha256:74377f5a61dd7e3e0ba5d2fa880b7107025433a026396567c79eac927b4212bc
        version: 1.5.3
      entries:
      - name: rhdh-operator.v1.5.3
        version: 1.5.3
      - name: rhdh-operator.v1.5.2
        version: 1.5.2
      - name: rhdh-operator.v1.5.1
        version: 1.5.1
      name: fast-1.5
    - currentCSV: rhdh-operator.v1.6.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:50f20300c81621221260d03d22b1442750e3f1d2e62f3e511d63925d84c4d1f9
          createdAt: "2025-08-27T18:43:12Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.6.5'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.6/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:50f20300c81621221260d03d22b1442750e3f1d2e62f3e511d63925d84c4d1f9
        - registry.redhat.io/rhel9/postgresql-15@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:177a7308f61a6b1ba21bc0f7bf550a93d4478e52479e2c94a2437f2152e3d8ff
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:3b2cf972e1ced0a46d3559da4eb1a1b32c50457293ede4958a13538a84b45316
        version: 1.6.5
      entries:
      - name: rhdh-operator.v1.6.5
        version: 1.6.5
      - name: rhdh-operator.v1.6.4
        version: 1.6.4
      - name: rhdh-operator.v1.6.3
        version: 1.6.3
      - name: rhdh-operator.v1.6.2
        version: 1.6.2
      - name: rhdh-operator.v1.6.1
        version: 1.6.1
      - name: rhdh-operator.v1.6.0
        version: 1.6.0
      name: fast-1.6
    - currentCSV: rhdh-operator.v1.7.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:6ebf90f0b2419efa5c159b52ee30adde1e7aa7d0ad8486f143d80fe5bd9dd06f
          createdAt: "2025-11-04T05:38:01Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.7.3'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.7/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:b5ffbb3cc1caac4e020abf1d711566aef859b08e479ab181e5b39ce9da7a5b73
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:54c5cd2a4865a372ba9465908f73928382745e04ad446c97b28adde213d13309
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:6ebf90f0b2419efa5c159b52ee30adde1e7aa7d0ad8486f143d80fe5bd9dd06f
        - registry.redhat.io/rhel9/postgresql-15@sha256:990be59eeb55860a62455375fef7795854d78ce15ac3e7568b9bdb4680bfcd97
        version: 1.7.3
      entries:
      - name: rhdh-operator.v1.7.3
        version: 1.7.3
      - name: rhdh-operator.v1.7.2
        version: 1.7.2
      - name: rhdh-operator.v1.7.1
        version: 1.7.1
      - name: rhdh-operator.v1.7.0
        version: 1.7.0
      name: fast-1.7
    - currentCSV: rhdh-operator.v1.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha4",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
          createdAt: "2025-11-10T18:16:19Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.8.1'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha4
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.8/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:9f870202198dca9d941ebb5321334c45cc2309bb079d2a9e602d8a099f8ffa6f
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:8b5ec4b6085ecb32ea52c33d97adecc313341681b41d891f5346e9b9f8b8a249
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
        - registry.redhat.io/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        version: 1.8.1
      entries:
      - name: rhdh-operator.v1.8.1
        version: 1.8.1
      - name: rhdh-operator.v1.8.0
        version: 1.8.0
      name: fast-1.8
    defaultChannel: fast
    packageName: rhdh
    provider:
      name: Red Hat Inc.
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-kinesis-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-kinesis-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kinesis.services.k8s.aws/v1alpha1",
                "kind": "Stream",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/kinesis-controller:1.2.0
          createdAt: "2025-11-29T05:53:34Z"
          description: AWS Kinesis controller is a service controller for managing
            Kinesis resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Stream represents the state of an AWS kinesis Stream resource.
            displayName: Stream
            kind: Stream
            name: streams.kinesis.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Kinesis resources in AWS from within your Kubernetes cluster.

          **About Amazon Kinesis**

          You can use Amazon Kinesis Data Streams to collect and process large streams of data records in real time. You can create data-processing applications, known as Kinesis Data Streams applications. A typical Kinesis Data Streams application reads data from a data stream as data records. These applications can use the Kinesis Client Library, and they can run on Amazon EC2 instances.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Kinesis
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kinesis
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Kinesis Developer Resources
          url: https://aws.amazon.com/kinesis/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: kinesis maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-kinesis-controller@sha256:739135f195f5bb2a2a6ca7095f1a0806e95aeec163b99cea67f72caab6f36358
        - public.ecr.aws/aws-controllers-k8s/kinesis-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-kinesis-controller.v1.2.0
        version: 1.2.0
      - name: ack-kinesis-controller.v1.1.1
        version: 1.1.1
      - name: ack-kinesis-controller.v1.1.0
        version: 1.1.0
      - name: ack-kinesis-controller.v1.0.16
        version: 1.0.16
      - name: ack-kinesis-controller.v1.0.15
        version: 1.0.15
      - name: ack-kinesis-controller.v1.0.14
        version: 1.0.14
      - name: ack-kinesis-controller.v1.0.13
        version: 1.0.13
      - name: ack-kinesis-controller.v1.0.12
        version: 1.0.12
      - name: ack-kinesis-controller.v1.0.11
        version: 1.0.11
      - name: ack-kinesis-controller.v1.0.10
        version: 1.0.10
      - name: ack-kinesis-controller.v1.0.9
        version: 1.0.9
      - name: ack-kinesis-controller.v1.0.8
        version: 1.0.8
      - name: ack-kinesis-controller.v1.0.7
        version: 1.0.7
      - name: ack-kinesis-controller.v1.0.6
        version: 1.0.6
      - name: ack-kinesis-controller.v1.0.5
        version: 1.0.5
      - name: ack-kinesis-controller.v1.0.4
        version: 1.0.4
      - name: ack-kinesis-controller.v1.0.3
        version: 1.0.3
      - name: ack-kinesis-controller.v1.0.2
        version: 1.0.2
      - name: ack-kinesis-controller.v1.0.1
        version: 1.0.1
      - name: ack-kinesis-controller.v1.0.0
        version: 1.0.0
      - name: ack-kinesis-controller.v0.0.19
        version: 0.0.19
      - name: ack-kinesis-controller.v0.0.18
        version: 0.0.18
      - name: ack-kinesis-controller.v0.0.17
        version: 0.0.17
      - name: ack-kinesis-controller.v0.0.16
        version: 0.0.16
      - name: ack-kinesis-controller.v0.0.15
        version: 0.0.15
      - name: ack-kinesis-controller.v0.0.10
        version: 0.0.10
      - name: ack-kinesis-controller.v0.0.9
        version: 0.0.9
      - name: ack-kinesis-controller.v0.0.8
        version: 0.0.8
      - name: ack-kinesis-controller.v0.0.6
        version: 0.0.6
      - name: ack-kinesis-controller.v0.0.5
        version: 0.0.5
      - name: ack-kinesis-controller.v0.0.4
        version: 0.0.4
      - name: ack-kinesis-controller.v0.0.3
        version: 0.0.3
      - name: ack-kinesis-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-kinesis-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Oracle Corporation
      provider-url: https://github.com/oracle/coherence-operator
    name: coherence-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: coherence-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "Coherence",
                "metadata": {
                  "name": "coherence-sample"
                },
                "spec": {
                  "replicas": 3
                }
              },
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "CoherenceJob",
                "metadata": {
                  "name": "coherence-job-sample"
                },
                "spec": {
                  "replicas": 1
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          certified: "false"
          containerImage: container-registry.oracle.com/middleware/coherence-operator:3.5.7
          createdAt: "2025-11-24T17:26:13Z"
          description: '[DEPRECATED] Use the certified Coherence Kubernetes Operator
            instead'
          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: "true"
          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"
          operatorframework.io/arch.amd64: supported
          operatorframework.io/arch.arm64: supported
          operatorframework.io/os.linux: supported
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/oracle/coherence-operator
          support: Oracle Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Coherence is the top level schema for the Coherence API and
              custom resource definition (CRD).
            displayName: Coherence
            kind: Coherence
            name: coherence.coherence.oracle.com
            version: v1
          - description: |-
              CoherenceJob is the top level schema for the CoherenceJob API and custom resource definition (CRD)
              for configuring Coherence Job workloads.
            displayName: Coherence Job
            kind: CoherenceJob
            name: coherencejob.coherence.oracle.com
            version: v1
        description: |
          The Oracle Coherence Kubernetes Operator enables easy management of Coherence clusters in a Kubernetes environment.

          ### Installation Guide & Configuration

          For the complete installation guide and all configuration options please refer to
          [Coherence Operator Documentation](https://oracle.github.io/coherence-operator/docs/latest/#/about/01_overview).
        displayName: Coherence Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Coherence
        - Oracle
        - In Memory Data
        - Caching
        links:
        - name: Coherence Kubernetes Operator
          url: https://oracle.github.io/coherence-operator/docs/latest
        - name: Oracle Coherence
          url: https://coherence.community
        maintainers:
        - email: jonathan.knight@oracle.com
          name: Jonathan Knight
        maturity: mature
        minKubeVersion: 1.26.0
        provider:
          name: Oracle Corporation
          url: https://github.com/oracle/coherence-operator
        relatedImages:
        - container-registry.oracle.com/middleware/coherence-operator:3.5.7
        - quay.io/community-operator-pipeline-prod/coherence-operator:3.5.7
        version: 3.5.7
      entries:
      - name: coherence-operator.v3.5.7
        version: 3.5.7
      - name: coherence-operator.v3.5.6
        version: 3.5.6
      - name: coherence-operator.v3.5.5
        version: 3.5.5
      - name: coherence-operator.v3.5.4
        version: 3.5.4
      - name: coherence-operator.v3.5.2
        version: 3.5.2
      - name: coherence-operator.v3.5.0
        version: 3.5.0
      - name: coherence-operator.v3.4.3
        version: 3.4.3
      name: stable
    defaultChannel: stable
    packageName: coherence-operator
    provider:
      name: Oracle Corporation
      url: https://github.com/oracle/coherence-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-opensearchservice-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-opensearchservice-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "opensearchservice.services.k8s.aws/v1alpha1",
                "kind": "Domain",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/opensearchservice-controller:1.2.0
          createdAt: "2025-11-29T05:41:58Z"
          description: AWS OpenSearch Service controller is a service controller for
            managing OpenSearch Service resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Domain represents the state of an AWS opensearchservice Domain
              resource.
            displayName: Domain
            kind: Domain
            name: domains.opensearchservice.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage OpenSearch Service resources in AWS from within your Kubernetes cluster.

          **About Amazon OpenSearch Service**

          Amazon OpenSearch Service (successor to Amazon Elasticsearch Service) is a managed service that makes it easy to deploy, operate, and scale OpenSearch clusters in the AWS Cloud. Amazon OpenSearch Service supports OpenSearch and legacy Elasticsearch OSS. When you create a cluster, you have the option of which search engine to use. OpenSearch Service offers broad compatibility with Elasticsearch OSS 7.10, the final open source version of the software. For information about what changed with the recent service renaming, and the actions you might need to take, see [Amazon OpenSearch Service - Summary of changes](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/rename.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon OpenSearch Service
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opensearchservice
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon OpenSearch Service Developer Resources
          url: https://aws.amazon.com/opensearch-service/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: opensearch service maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-opensearchservice-controller@sha256:7409b53d11987aa2d46f2bd031a3953a2ffe129769aee87f544c9ff4a4b5173e
        - public.ecr.aws/aws-controllers-k8s/opensearchservice-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-opensearchservice-controller.v1.2.0
        version: 1.2.0
      - name: ack-opensearchservice-controller.v1.1.2
        version: 1.1.2
      - name: ack-opensearchservice-controller.v1.1.1
        version: 1.1.1
      - name: ack-opensearchservice-controller.v1.1.0
        version: 1.1.0
      - name: ack-opensearchservice-controller.v1.0.15
        version: 1.0.15
      - name: ack-opensearchservice-controller.v1.0.12
        version: 1.0.12
      - name: ack-opensearchservice-controller.v1.0.10
        version: 1.0.10
      - name: ack-opensearchservice-controller.v1.0.9
        version: 1.0.9
      - name: ack-opensearchservice-controller.v1.0.8
        version: 1.0.8
      - name: ack-opensearchservice-controller.v1.0.7
        version: 1.0.7
      - name: ack-opensearchservice-controller.v1.0.6
        version: 1.0.6
      - name: ack-opensearchservice-controller.v1.0.5
        version: 1.0.5
      - name: ack-opensearchservice-controller.v1.0.4
        version: 1.0.4
      - name: ack-opensearchservice-controller.v1.0.2
        version: 1.0.2
      - name: ack-opensearchservice-controller.v1.0.1
        version: 1.0.1
      - name: ack-opensearchservice-controller.v1.0.0
        version: 1.0.0
      - name: ack-opensearchservice-controller.v0.0.28
        version: 0.0.28
      - name: ack-opensearchservice-controller.v0.0.27
        version: 0.0.27
      - name: ack-opensearchservice-controller.v0.0.26
        version: 0.0.26
      - name: ack-opensearchservice-controller.v0.0.24
        version: 0.0.24
      - name: ack-opensearchservice-controller.v0.0.23
        version: 0.0.23
      - name: ack-opensearchservice-controller.v0.0.19
        version: 0.0.19
      - name: ack-opensearchservice-controller.v0.0.17
        version: 0.0.17
      - name: ack-opensearchservice-controller.v0.0.15
        version: 0.0.15
      - name: ack-opensearchservice-controller.v0.0.14
        version: 0.0.14
      - name: ack-opensearchservice-controller.v0.0.13
        version: 0.0.13
      - name: ack-opensearchservice-controller.v0.0.12
        version: 0.0.12
      - name: ack-opensearchservice-controller.v0.0.11
        version: 0.0.11
      - name: ack-opensearchservice-controller.v0.0.10
        version: 0.0.10
      - name: ack-opensearchservice-controller.v0.0.9
        version: 0.0.9
      - name: ack-opensearchservice-controller.v0.0.8
        version: 0.0.8
      - name: ack-opensearchservice-controller.v0.0.7
        version: 0.0.7
      - name: ack-opensearchservice-controller.v0.0.6
        version: 0.0.6
      - name: ack-opensearchservice-controller.v0.0.5
        version: 0.0.5
      - name: ack-opensearchservice-controller.v0.0.4
        version: 0.0.4
      name: alpha
    defaultChannel: alpha
    packageName: ack-opensearchservice-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: mariadb-operator
      provider-url: https://github.com/mariadb-operator/mariadb-operator
    name: mariadb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mariadb-operator.v25.10.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "helm.mariadb.mmontes.io/v1alpha1",
                "kind": "MariadbOperator",
                "metadata": {
                  "name": "mariadb-operator"
                },
                "spec": {
                  "affinity": {},
                  "certController": {
                    "affinity": {},
                    "caValidity": "35064h",
                    "certValidity": "8766h",
                    "enabled": true,
                    "extrArgs": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "ha": {
                      "enabled": false,
                      "replicas": 3
                    },
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/mariadb-operator/mariadb-operator",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "lookaheadValidity": "2160h",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podSecurityContext": {},
                    "requeueDuration": "5m",
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "automount": true,
                      "enabled": true,
                      "extraLabels": {},
                      "name": ""
                    },
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "enabled": true,
                      "interval": "30s",
                      "scrapeTimeout": "25s"
                    },
                    "tolerations": []
                  },
                  "clusterName": "cluster.local",
                  "extrArgs": [],
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "fullnameOverride": "",
                  "ha": {
                    "enabled": false,
                    "replicas": 3
                  },
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/mariadb-operator/mariadb-operator",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "logLevel": "INFO",
                  "metrics": {
                    "enabled": false,
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "enabled": true,
                      "interval": "30s",
                      "scrapeTimeout": "25s"
                    }
                  },
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podSecurityContext": {},
                  "rbac": {
                    "enabled": true
                  },
                  "resources": {},
                  "securityContext": {},
                  "serviceAccount": {
                    "annotations": {},
                    "automount": true,
                    "enabled": true,
                    "extraLabels": {},
                    "name": ""
                  },
                  "tolerations": [],
                  "webhook": {
                    "affinity": {},
                    "annotations": {},
                    "cert": {
                      "caPath": "/tmp/k8s-webhook-server/certificate-authority",
                      "certManager": {
                        "duration": "",
                        "enabled": false,
                        "issuerRef": {},
                        "renewBefore": ""
                      },
                      "path": "/tmp/k8s-webhook-server/serving-certs",
                      "secretAnnotations": {}
                    },
                    "extrArgs": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "ha": {
                      "enabled": false,
                      "replicas": 3
                    },
                    "hostNetwork": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/mariadb-operator/mariadb-operator",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podSecurityContext": {},
                    "port": 10250,
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "automount": true,
                      "enabled": true,
                      "extraLabels": {},
                      "name": ""
                    },
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "enabled": true,
                      "interval": "30s",
                      "scrapeTimeout": "25s"
                    },
                    "tolerations": []
                  }
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup"
                },
                "spec": {
                  "args": [
                    "--single-transaction",
                    "--all-databases"
                  ],
                  "logLevel": "info",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "suspend": false
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "backups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Connection",
                "metadata": {
                  "name": "connection"
                },
                "spec": {
                  "database": "mariadb",
                  "healthCheck": {
                    "interval": "10s",
                    "retryInterval": "3s"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "params": {
                    "parseTime": "true"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "secretName": "connection",
                  "secretTemplate": {
                    "annotations": {
                      "k8s.mariadb.com/connection": "sample"
                    },
                    "databaseKey": "database",
                    "hostKey": "host",
                    "key": "dsn",
                    "labels": {
                      "k8s.mariadb.com/connection": "sample"
                    },
                    "passwordKey": "password",
                    "portKey": "port",
                    "usernameKey": "username"
                  },
                  "serviceName": "mariadb",
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Database",
                "metadata": {
                  "name": "data-test"
                },
                "spec": {
                  "characterSet": "utf8",
                  "collate": "utf8_general_ci",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "retryInterval": "5s"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "ExternalMariaDB",
                "metadata": {
                  "name": "external-mariadb"
                },
                "spec": {
                  "connection": {
                    "healthCheck": {
                      "interval": "5s"
                    },
                    "secretName": "external-mariadb"
                  },
                  "host": "mariadb.default.svc.cluster.local",
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "port": 3306,
                  "username": "root"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Grant",
                "metadata": {
                  "name": "grant"
                },
                "spec": {
                  "database": "*",
                  "grantOption": true,
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "privileges": [
                    "SELECT",
                    "INSERT",
                    "UPDATE"
                  ],
                  "requeueInterval": "30s",
                  "retryInterval": "5s",
                  "table": "*",
                  "username": "user"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "MariaDB",
                "metadata": {
                  "name": "mariadb"
                },
                "spec": {
                  "connection": {
                    "secretName": "mariadb-conn",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "database": "mariadb",
                  "galera": {
                    "enabled": true
                  },
                  "metrics": {
                    "enabled": true,
                    "passwordSecretKeyRef": {
                      "generate": true,
                      "key": "password",
                      "name": "mariadb-metrics"
                    }
                  },
                  "myCnf": "[mariadb]\nbind-address=*\ndefault_storage_engine=InnoDB\nbinlog_format=row\ninnodb_autoinc_lock_mode=2\ninnodb_buffer_pool_size=1024M\nmax_allowed_packet=256M\n",
                  "passwordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-password"
                  },
                  "primaryConnection": {
                    "secretName": "mariadb-conn-primary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "primaryService": {
                    "type": "ClusterIP"
                  },
                  "replicas": 3,
                  "rootPasswordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-root"
                  },
                  "secondaryConnection": {
                    "secretName": "mariadb-conn-secondary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "secondaryService": {
                    "type": "ClusterIP"
                  },
                  "service": {
                    "type": "ClusterIP"
                  },
                  "storage": {
                    "size": "1Gi"
                  },
                  "updateStrategy": {
                    "type": "ReplicasFirstPrimaryLast"
                  },
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "MaxScale",
                "metadata": {
                  "name": "maxscale-galera"
                },
                "spec": {
                  "admin": {
                    "guiEnabled": true,
                    "port": 8989
                  },
                  "auth": {
                    "generate": true
                  },
                  "config": {
                    "sync": {
                      "database": "mysql",
                      "interval": "5s",
                      "timeout": "10s"
                    }
                  },
                  "connection": {
                    "port": 3306,
                    "secretName": "mxs-galera-conn"
                  },
                  "guiKubernetesService": {
                    "metadata": {
                      "annotations": {
                        "metallb.universe.tf/loadBalancerIPs": "172.18.0.231"
                      }
                    },
                    "type": "LoadBalancer"
                  },
                  "kubernetesService": {
                    "annotations": {
                      "metallb.universe.tf/loadBalancerIPs": "172.18.0.224"
                    },
                    "type": "LoadBalancer"
                  },
                  "mariaDbRef": {
                    "name": "mariadb-galera"
                  },
                  "monitor": {
                    "cooperativeMonitoring": "majority_of_all",
                    "interval": "2s",
                    "params": {
                      "available_when_donor": "false",
                      "disable_master_failback": "false",
                      "disable_master_role_setting": "false"
                    }
                  },
                  "replicas": 3,
                  "requeueInterval": "10s",
                  "services": [
                    {
                      "listener": {
                        "params": {
                          "connection_metadata": "tx_isolation=auto"
                        },
                        "port": 3306,
                        "protocol": "MariaDBProtocol"
                      },
                      "name": "rw-router",
                      "params": {
                        "master_accept_reads": "true",
                        "max_replication_lag": "3s",
                        "max_slave_connections": "255",
                        "transaction_replay": "true",
                        "transaction_replay_attempts": "10",
                        "transaction_replay_timeout": "5s"
                      },
                      "router": "readwritesplit"
                    },
                    {
                      "listener": {
                        "port": 3307
                      },
                      "name": "rconn-master-router",
                      "params": {
                        "master_accept_reads": "true",
                        "max_replication_lag": "3s",
                        "router_options": "master"
                      },
                      "router": "readconnroute"
                    },
                    {
                      "listener": {
                        "port": 3308
                      },
                      "name": "rconn-slave-router",
                      "params": {
                        "max_replication_lag": "3s",
                        "router_options": "slave"
                      },
                      "router": "readconnroute"
                    }
                  ]
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "PhysicalBackup",
                "metadata": {
                  "name": "physicalbackup"
                },
                "spec": {
                  "compression": "bzip2",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "podAffinity": true,
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "immediate": true,
                    "suspend": false
                  },
                  "serviceAccountName": "backup",
                  "stagingStorage": {
                    "persistentVolumeClaim": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "1Gi"
                        }
                      }
                    }
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "physicalbackups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "region": "us-east-1",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  },
                  "timeout": "1h"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore"
                },
                "spec": {
                  "backupRef": {
                    "name": "backup"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "targetRecoveryTime": "2023-12-19T09:00:00Z"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "SqlJob",
                "metadata": {
                  "name": "03-stars"
                },
                "spec": {
                  "database": "mariadb",
                  "dependsOn": [
                    {
                      "name": "01-users"
                    },
                    {
                      "name": "02-repos"
                    }
                  ],
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "suspend": false
                  },
                  "sql": "CREATE TABLE IF NOT EXISTS stars (\n  id bigint PRIMARY KEY AUTO_INCREMENT,\n  user_id bigint NOT NULL,\n  repo_id bigint NOT NULL,\n  FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,\n  FOREIGN KEY (repo_id) REFERENCES repos(id) ON DELETE CASCADE,\n  UNIQUE KEY (user_id, repo_id)\n);\nINSERT INTO stars(user_id, repo_id) \n  VALUES((SELECT id FROM users ORDER BY RAND() LIMIT 1), (SELECT id FROM repos ORDER BY RAND() LIMIT 1))\n  ON DUPLICATE KEY UPDATE id=id;\nDELETE FROM stars WHERE id = (SELECT id FROM stars ORDER BY RAND() LIMIT 1);\nSELECT r.name AS repo, COUNT(*) AS stars\nFROM stars s\nJOIN repos r\nON s.repo_id = r.id\nGROUP BY r.id\nORDER BY stars DESC;",
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "user"
                },
                "spec": {
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxUserConnections": 20,
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "retryInterval": "5s"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: ghcr.io/mariadb-operator/mariadb-operator-helm:25.10.3
          createdAt: "2025-12-24T12:25:03Z"
          description: Run and operate MariaDB in a cloud native way
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/mariadb-operator/mariadb-operator
          support: mariadb-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Configures a backup
            displayName: Backup
            kind: Backup
            name: backups.k8s.mariadb.com
            version: v1alpha1
          - description: Configures a connection
            displayName: Connection
            kind: Connection
            name: connections.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a logical database
            displayName: Database
            kind: Database
            name: databases.k8s.mariadb.com
            version: v1alpha1
          - description: Configures an external MariaDB resource
            displayName: ExternalMariaDB
            kind: ExternalMariaDB
            name: externalmariadbs.k8s.mariadb.com
            version: v1alpha1
          - description: Grants permissions to an user in a database
            displayName: Grant
            kind: Grant
            name: grants.k8s.mariadb.com
            version: v1alpha1
          - description: Configures MariaDB helm chart based operator
            displayName: MariadbOperator
            kind: MariadbOperator
            name: mariadboperators.helm.mariadb.mmontes.io
            version: v1alpha1
          - description: Provisions a MariaDB instance
            displayName: MariaDB
            kind: MariaDB
            name: mariadbs.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a MaxScale database proxy
            displayName: MaxScale
            kind: MaxScale
            name: maxscales.k8s.mariadb.com
            version: v1alpha1
          - description: Configures a physical backup
            displayName: PhysicalBackup
            kind: PhysicalBackup
            name: physicalbackups.k8s.mariadb.com
            version: v1alpha1
          - description: Restores a backup
            displayName: Restore
            kind: Restore
            name: restores.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a SQL job
            displayName: SqlJob
            kind: SqlJob
            name: sqljobs.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a user
            displayName: User
            kind: User
            name: users.k8s.mariadb.com
            version: v1alpha1
        description: |
          Install [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) via [OLM](https://olm.operatorframework.io/) using the [helm chart](https://artifacthub.io/packages/helm/mariadb-operator/mariadb-operator).

          This helm operator provides provides a 1:1 mapping between the official helm chart and the [`MariadbOperator`](https://github.com/mariadb-operator/mariadb-operator-helm/blob/main/config/samples/helm_v1alpha1_mariadboperator.yaml) CRD, allowing to install [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) via OLM without having to do any change in the helm chart.

          Normally, you would install [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) providing this `values.yaml` to the helm chart:
          ```yaml
          image:
            repository: ghcr.io/mariadb-operator/mariadb-operator
            pullPolicy: IfNotPresent
          logLevel: INFO
          ha:
            enabled: true
          metrics:
            enabled: true
            serviceMonitor:
              enabled: true
          webhook:
            cert:
              certManager:
                enabled: true
          ```

          This helm chart installation is abstracted in the [`MariadbOperator`](https://github.com/mariadb-operator/mariadb-operator-helm/blob/main/config/samples/helm_v1alpha1_mariadboperator.yaml) CRD, which will be reconciled by the helm operator:
          ```yaml
          apiVersion: helm.k8s.mariadb.com/v1alpha1
          kind: MariadbOperator
          metadata:
            name: mariadb-operator
          spec:
            image:
              repository: ghcr.io/mariadb-operator/mariadb-operator
              pullPolicy: IfNotPresent
            logLevel: INFO
            ha:
              enabled: true
            metrics:
              enabled: true
              serviceMonitor:
                enabled: true
            webhook:
              cert:
                certManager:
                  enabled: true
          ```

          Once you have installed the operator, you will able to install a [`MariaDB`](https://github.com/mariadb-operator/mariadb-operator/blob/main/examples/manifests/mariadb_v1alpha1_mariadb.yaml) instance. Refer to the main [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) documentation for getting started with the rest of CRDs.

          ## Documentation
          * [mariadb-operator](https://github.com/mariadb-operator/mariadb-operator/blob/main/README.md)
          * [mariadb-operator-helm](https://github.com/mariadb-operator/mariadb-operator-helm/blob/main/README.md)

          ## Releases
          This operator is automatically published in the following repositories whenever a new version of the [helm chart](https://artifacthub.io/packages/helm/mariadb-operator/mariadb-operator) is released:
          - [k8s-operatorhub/community-operators](https://github.com/k8s-operatorhub/community-operators)
          - [redhat-openshift-ecosystem/community-operators-prod](https://github.com/redhat-openshift-ecosystem/community-operators-prod)

          ## Roadmap
          Take a look at our [roadmap](https://github.com/mariadb-operator/mariadb-operator/blob/main/ROADMAP.md) and feel free to open an issue to suggest new features.

          ## Contributing
          We welcome and encourage contributions to this project! Please check our [contributing](https://github.com/mariadb-operator/mariadb-operator/blob/main/CONTRIBUTING.md) and [development](https://github.com/mariadb-operator/mariadb-operator/blob/main/docs/DEVELOPMENT.md) guides. PRs welcome!

          ## Get in touch
          Join us on Slack: **[MariaDB Community Slack](https://r.mariadb.com/join-community-slack)**.
        displayName: MariaDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mariadb
        - mysql
        - operator
        - mariadb-operator
        - database
        - maxscale
        links:
        - name: GitHub
          url: https://github.com/mariadb-operator/mariadb-operator
        maintainers:
        - email: mariadb-operator@proton.me
          name: mmontes11
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: mariadb-operator
          url: https://github.com/mariadb-operator/mariadb-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/mariadb-operator@sha256:472977c3b911835b41c6e9a7486d0caa7c22e6beb44fb67cb0fb4b64f09084b9
        - ghcr.io/mariadb-operator/mariadb-operator-helm:25.10.3
        version: 25.10.3
      entries:
      - name: mariadb-operator.v25.10.3
        version: 25.10.3
      - name: mariadb-operator.v25.10.2
        version: 25.10.2
      - name: mariadb-operator.v25.10.1
        version: 25.10.1
      - name: mariadb-operator.v25.10.0
        version: 25.10.0
      - name: mariadb-operator.v25.8.4
        version: 25.8.4
      - name: mariadb-operator.v25.8.3
        version: 25.8.3
      - name: mariadb-operator.v25.8.2
        version: 25.8.2
      - name: mariadb-operator.v25.8.1
        version: 25.8.1
      - name: mariadb-operator.v25.8.0
        version: 25.8.0
      - name: mariadb-operator.v0.38.0
        version: 0.38.0
      - name: mariadb-operator.v0.37.1
        version: 0.37.1
      - name: mariadb-operator.v0.37.0
        version: 0.37.0
      - name: mariadb-operator.v0.36.0
        version: 0.36.0
      - name: mariadb-operator.v0.35.1
        version: 0.35.1
      - name: mariadb-operator.v0.35.0
        version: 0.35.0
      - name: mariadb-operator.v0.34.0
        version: 0.34.0
      - name: mariadb-operator.v0.33.0
        version: 0.33.0
      - name: mariadb-operator.v0.32.0
        version: 0.32.0
      - name: mariadb-operator.v0.31.0
        version: 0.31.0
      - name: mariadb-operator.v0.30.0
        version: 0.30.0
      - name: mariadb-operator.v0.29.0
        version: 0.29.0
      - name: mariadb-operator.v0.28.1
        version: 0.28.1
      - name: mariadb-operator.v0.27.0
        version: 0.27.0
      - name: mariadb-operator.v0.26.0
        version: 0.26.0
      - name: mariadb-operator.v0.24.0
        version: 0.24.0
      - name: mariadb-operator.v0.23.1
        version: 0.23.1
      - name: mariadb-operator.v0.23.0
        version: 0.23.0
      - name: mariadb-operator.v0.22.0
        version: 0.22.0
      - name: mariadb-operator.v0.21.0
        version: 0.21.0
      - name: mariadb-operator.v0.20.0
        version: 0.20.0
      - name: mariadb-operator.v0.19.0
        version: 0.19.0
      - name: mariadb-operator.v0.18.0
        version: 0.18.0
      - name: mariadb-operator.v0.17.0
        version: 0.17.0
      - name: mariadb-operator.v0.16.0
        version: 0.16.0
      - name: mariadb-operator.v0.15.1
        version: 0.15.1
      - name: mariadb-operator.v0.15.0
        version: 0.15.0
      - name: mariadb-operator.v0.14.0
        version: 0.14.0
      - name: mariadb-operator.v0.13.0
        version: 0.13.0
      - name: mariadb-operator.v0.11.0
        version: 0.11.0
      - name: mariadb-operator.v0.10.0
        version: 0.10.0
      - name: mariadb-operator.v0.9.1
        version: 0.9.1
      - name: mariadb-operator.v0.9.0
        version: 0.9.0
      - name: mariadb-operator.v0.8.0
        version: 0.8.0
      - name: mariadb-operator.v0.7.1
        version: 0.7.1
      - name: mariadb-operator.v0.7.0
        version: 0.7.0
      - name: mariadb-operator.v0.6.7
        version: 0.6.7
      - name: mariadb-operator.v0.6.6
        version: 0.6.6
      - name: mariadb-operator.v0.6.5
        version: 0.6.5
      - name: mariadb-operator.v0.6.4
        version: 0.6.4
      name: alpha
    defaultChannel: alpha
    packageName: mariadb-operator
    provider:
      name: mariadb-operator
      url: https://github.com/mariadb-operator/mariadb-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: tempo-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tempo-operator.v0.19.0-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoMonolithic",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "jaegerui": {
                    "enabled": true,
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "resources": {
                    "limits": {
                      "cpu": "2",
                      "memory": "2Gi"
                    }
                  },
                  "storage": {
                    "traces": {
                      "backend": "memory"
                    }
                  }
                }
              },
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoStack",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "resources": {
                    "total": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2Gi"
                      }
                    }
                  },
                  "storage": {
                    "secret": {
                      "name": "my-storage-secret",
                      "type": "s3"
                    }
                  },
                  "storageSize": "1Gi",
                  "template": {
                    "queryFrontend": {
                      "jaegerQuery": {
                        "enabled": true,
                        "ingress": {
                          "type": "route"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/rhosdt/tempo-rhel8-operator@sha256:2b2a842990cabc139c7cc4fdeb4c681cc2221e95d49f713a3b9608dadbc51265
          createdAt: 16 Dec 2025, 17:37
          description: Create and manage deployments of Tempo, a high-scale distributed
            tracing backend.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=0.6.0 <0.19.0-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-tempo-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/grafana/tempo-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TempoMonolithic manages a Tempo deployment in monolithic
              mode.
            displayName: TempoMonolithic
            kind: TempoMonolithic
            name: tempomonolithics.tempo.grafana.com
            version: v1alpha1
          - description: TempoStack manages a Tempo deployment in microservices mode.
            displayName: TempoStack
            kind: TempoStack
            name: tempostacks.tempo.grafana.com
            version: v1alpha1
        description: |-
          Red Hat OpenShift distributed tracing platform based on Tempo. Tempo is an open-source, easy-to-use, and highly scalable distributed tracing backend. It provides observability for microservices architectures by allowing developers to track requests as they flow through distributed systems. Tempo is optimized to handle large volumes of trace data and is designed to be highly performant even under heavy loads.
          It can ingest common open source tracing protocols including Jaeger, Zipkin, and OpenTelemetry and requires only object storage to operate.

          The Tempo Operator supports Tempo deployments in Microservices mode (`TempoStack` CR) and Monolithic mode (`TempoMonolithic` CR).

          ### Core capabilities
          Tempo is used for monitoring and troubleshooting microservices-based distributed systems, including:
          * Distributed transaction monitoring
          * Root cause analysis
          * Performance / latency optimization

          ### Operator features
          * **Resource Limits** - Specify overall resource requests and limits in the `TempoStack` CR; the operator assigns fractions of it to each component
          * **AuthN and AuthZ** - Supports OpenID Control (OIDC) and role-based access control (RBAC)
          * **Managed upgrades** - Updating the operator will automatically update all managed Tempo clusters
          * **Multitenancy** - Multiple tenants can send traces to the same Tempo cluster
          * **mTLS** - Communication between the Tempo components can be secured via mTLS
          * **Jaeger UI** - Traces can be visualized in Jaeger UI and exposed via Ingress or OpenShift Route
          * **Observability** - The operator and `TempoStack` operands expose telemetry (metrics, traces) and integrate with Prometheus `ServiceMonitor` and `PrometheusRule`

          ### Before you start
          `TempoStack` requires object storage to store its traces. `TempoMonolithic` can store traces in-memory, in a Persistent Volume and in object storage.
          Please ensure that your system has a compatible object storage solution that is supported, such as OpenShift Data Foundation, Minio, AWS S3, Azure Storage, or Google Cloud Storage.

          ### Examples
          There is a list of examples to help you deploy different configurations in [this GitHub repository](https://github.com/os-observability/redhat-rhosdt-samples).

          ### Support & Troubleshooting
          Tempo Operator is available and supported as part of a Red Hat OpenShift subscription.
          Checking the [Red Hat Documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/distributed_tracing) is recommended when installing, configuring, and managing the Operator and instances.
        displayName: Tempo Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tempo
        - tracing
        - observability
        - monitoring
        - database
        links:
        - name: Tempo Operator
          url: https://github.com/grafana/tempo-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat support
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6bcfa981a7a75c242a16afa6dab36bf6e3b8a1442fa863875919ad551f48eceb
        - registry.redhat.io/rhosdt/tempo-gateway-opa-rhel8@sha256:18b76c6fd9ad82b8c62830f89332f85fa8d68e583f647a48b478fc44793d1261
        - registry.redhat.io/rhosdt/tempo-gateway-rhel8@sha256:b49ff19c40327b90a149edc98a57887f44c88310489dfca33c62b201d1faee58
        - registry.redhat.io/rhosdt/tempo-jaeger-query-rhel8@sha256:2c587b52015b07feea05c7cdb79e20362675bb5073e50eee1114476a9ca405dc
        - registry.redhat.io/rhosdt/tempo-query-rhel8@sha256:3aa486ed176f695af57b2b8d58dc53a070fbcef3ba0f233afdde0656eb55d5f6
        - registry.redhat.io/rhosdt/tempo-rhel8-operator@sha256:2b2a842990cabc139c7cc4fdeb4c681cc2221e95d49f713a3b9608dadbc51265
        - registry.redhat.io/rhosdt/tempo-rhel8@sha256:49c858da31e0bbede4ad67a1b34fac2910a777677ea46d2460b3c11ac51c6bab
        - registry.redhat.io/rhosdt/tempo-operator-bundle@sha256:59faa931ced3fb7d6121c0dd212e0a43e99d6e09d01a8eb0cf77694dabaabdac
        version: 0.19.0-2
      entries:
      - name: tempo-operator.v0.19.0-2
        version: 0.19.0-2
      - name: tempo-operator.v0.19.0-1
        version: 0.19.0-1
      - name: tempo-operator.v0.18.0-2
        version: 0.18.0-2
      - name: tempo-operator.v0.18.0-1
        version: 0.18.0-1
      - name: tempo-operator.v0.16.0-2
        version: 0.16.0-2
      - name: tempo-operator.v0.16.0-1
        version: 0.16.0-1
      - name: tempo-operator.v0.15.4-1
        version: 0.15.4-1
      - name: tempo-operator.v0.15.3-1
        version: 0.15.3-1
      - name: tempo-operator.v0.14.1-2
        version: 0.14.1-2
      - name: tempo-operator.v0.14.1-1
        version: 0.14.1-1
      - name: tempo-operator.v0.13.0-1-0.1730817419.p
        version: 0.13.0-1+0.1730817419.p
      - name: tempo-operator.v0.13.0-1
        version: 0.13.0-1
      - name: tempo-operator.v0.10.0-8
        version: 0.10.0-8
      - name: tempo-operator.v0.10.0-7
        version: 0.10.0-7
      - name: tempo-operator.v0.10.0-6
        version: 0.10.0-6
      - name: tempo-operator.v0.8.0-3
        version: 0.8.0-3
      - name: tempo-operator.v0.8.0-2
        version: 0.8.0-2
      - name: tempo-operator.v0.6.0-2
        version: 0.6.0-2
      - name: tempo-operator.v0.3.1-3
        version: 0.3.1-3
      - name: tempo-operator.v0.1.0-6
        version: 0.1.0-6
      - name: tempo-operator.v0.1.0-6-0.1687199947.p
        version: 0.1.0-6+0.1687199947.p
      name: stable
    defaultChannel: stable
    packageName: tempo-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-elasticache-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-elasticache-controller.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "CacheParameterGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "CacheSubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "ReplicationGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "Snapshot",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "UserGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/elasticache-controller:1.3.1
          createdAt: "2025-12-24T21:35:58Z"
          description: AWS ElastiCache controller is a service controller for managing
            ElastiCache resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CacheCluster represents the state of an AWS elasticache CacheCluster
              resource.
            displayName: CacheCluster
            kind: CacheCluster
            name: cacheclusters.elasticache.services.k8s.aws
            version: v1alpha1
          - description: CacheParameterGroup represents the state of an AWS elasticache
              CacheParameterGroup resource.
            displayName: CacheParameterGroup
            kind: CacheParameterGroup
            name: cacheparametergroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: CacheSubnetGroup represents the state of an AWS elasticache
              CacheSubnetGroup resource.
            displayName: CacheSubnetGroup
            kind: CacheSubnetGroup
            name: cachesubnetgroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: ReplicationGroup represents the state of an AWS elasticache
              ReplicationGroup resource.
            displayName: ReplicationGroup
            kind: ReplicationGroup
            name: replicationgroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: ServerlessCache represents the state of an AWS elasticache
              ServerlessCache resource.
            displayName: ServerlessCache
            kind: ServerlessCache
            name: serverlesscaches.elasticache.services.k8s.aws
            version: v1alpha1
          - description: ServerlessCacheSnapshot represents the state of an AWS elasticache
              ServerlessCacheSnapshot resource.
            displayName: ServerlessCacheSnapshot
            kind: ServerlessCacheSnapshot
            name: serverlesscachesnapshots.elasticache.services.k8s.aws
            version: v1alpha1
          - description: Snapshot represents the state of an AWS elasticache Snapshot
              resource.
            displayName: Snapshot
            kind: Snapshot
            name: snapshots.elasticache.services.k8s.aws
            version: v1alpha1
          - description: UserGroup represents the state of an AWS elasticache UserGroup
              resource.
            displayName: UserGroup
            kind: UserGroup
            name: usergroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: User represents the state of an AWS elasticache User resource.
            displayName: User
            kind: User
            name: users.elasticache.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon ElastiCache resources in AWS from within your Kubernetes cluster.

          **About Amazon ElastiCache**

          Amazon ElastiCache allows you to seamlessly set up, run, and scale popular open-source compatible in-memory data stores in the cloud. Build data-intensive apps or boost the performance of your existing databases by retrieving data from high throughput and low latency in-memory data stores. Amazon ElastiCache is a popular choice for real-time use cases like Caching, Session Stores, Gaming, Geospatial Services, Real-Time Analytics, and Queuing.

          Amazon ElastiCache offers fully managed Redis, voted the most loved database by developers in the Stack Overflow 2020 Developer Survey, and Memcached for your most demanding applications that require sub-millisecond response times.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ElastiCache
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - elasticache
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ElastiCache Developer Resources
          url: https://aws.amazon.com/elasticache/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: elasticache maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/elasticache-controller:1.3.1
        - quay.io/community-operator-pipeline-prod/ack-elasticache-controller@sha256:baece0405590a42b0406416b7475a82618e9d6857f2cf2feae6c9ddc8e484157
        version: 1.3.1
      entries:
      - name: ack-elasticache-controller.v1.3.1
        version: 1.3.1
      - name: ack-elasticache-controller.v1.3.0
        version: 1.3.0
      - name: ack-elasticache-controller.v1.2.4
        version: 1.2.4
      - name: ack-elasticache-controller.v1.2.3
        version: 1.2.3
      - name: ack-elasticache-controller.v1.2.2
        version: 1.2.2
      - name: ack-elasticache-controller.v1.2.1
        version: 1.2.1
      - name: ack-elasticache-controller.v1.2.0
        version: 1.2.0
      - name: ack-elasticache-controller.v1.1.0
        version: 1.1.0
      - name: ack-elasticache-controller.v1.0.7
        version: 1.0.7
      - name: ack-elasticache-controller.v1.0.6
        version: 1.0.6
      - name: ack-elasticache-controller.v1.0.5
        version: 1.0.5
      - name: ack-elasticache-controller.v1.0.4
        version: 1.0.4
      - name: ack-elasticache-controller.v1.0.3
        version: 1.0.3
      - name: ack-elasticache-controller.v1.0.2
        version: 1.0.2
      - name: ack-elasticache-controller.v1.0.1
        version: 1.0.1
      - name: ack-elasticache-controller.v1.0.0
        version: 1.0.0
      - name: ack-elasticache-controller.v0.2.6
        version: 0.2.6
      - name: ack-elasticache-controller.v0.2.5
        version: 0.2.5
      - name: ack-elasticache-controller.v0.2.4
        version: 0.2.4
      - name: ack-elasticache-controller.v0.2.3
        version: 0.2.3
      - name: ack-elasticache-controller.v0.2.2
        version: 0.2.2
      - name: ack-elasticache-controller.v0.2.1
        version: 0.2.1
      - name: ack-elasticache-controller.v0.2.0
        version: 0.2.0
      - name: ack-elasticache-controller.v0.1.1
        version: 0.1.1
      - name: ack-elasticache-controller.v0.1.0
        version: 0.1.0
      - name: ack-elasticache-controller.v0.0.31
        version: 0.0.31
      - name: ack-elasticache-controller.v0.0.30
        version: 0.0.30
      - name: ack-elasticache-controller.v0.0.29
        version: 0.0.29
      - name: ack-elasticache-controller.v0.0.28
        version: 0.0.28
      - name: ack-elasticache-controller.v0.0.27
        version: 0.0.27
      - name: ack-elasticache-controller.v0.0.26
        version: 0.0.26
      - name: ack-elasticache-controller.v0.0.25
        version: 0.0.25
      - name: ack-elasticache-controller.v0.0.24
        version: 0.0.24
      - name: ack-elasticache-controller.v0.0.23
        version: 0.0.23
      - name: ack-elasticache-controller.v0.0.22
        version: 0.0.22
      - name: ack-elasticache-controller.v0.0.21
        version: 0.0.21
      - name: ack-elasticache-controller.v0.0.20
        version: 0.0.20
      - name: ack-elasticache-controller.v0.0.19
        version: 0.0.19
      - name: ack-elasticache-controller.v0.0.18
        version: 0.0.18
      - name: ack-elasticache-controller.v0.0.17
        version: 0.0.17
      - name: ack-elasticache-controller.v0.0.16
        version: 0.0.16
      - name: ack-elasticache-controller.v0.0.15
        version: 0.0.15
      - name: ack-elasticache-controller.v0.0.14
        version: 0.0.14
      - name: ack-elasticache-controller.v0.0.13
        version: 0.0.13
      - name: ack-elasticache-controller.v0.0.12
        version: 0.0.12
      - name: ack-elasticache-controller.v0.0.11
        version: 0.0.11
      - name: ack-elasticache-controller.v0.0.10
        version: 0.0.10
      - name: ack-elasticache-controller.v0.0.9
        version: 0.0.9
      - name: ack-elasticache-controller.v0.0.8
        version: 0.0.8
      name: alpha
    defaultChannel: alpha
    packageName: ack-elasticache-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudtrail-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudtrail-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cloudtrail.services.k8s.aws/v1alpha1",
                "kind": "EventDataStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "cloudtrail.services.k8s.aws/v1alpha1",
                "kind": "Trail",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudtrail-controller:1.2.0
          createdAt: "2025-11-29T04:04:51Z"
          description: AWS CloudTrail controller is a service controller for managing
            CloudTrail resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EventDataStore represents the state of an AWS cloudtrail
              EventDataStore resource.
            displayName: EventDataStore
            kind: EventDataStore
            name: eventdatastores.cloudtrail.services.k8s.aws
            version: v1alpha1
          - description: Trail represents the state of an AWS cloudtrail Trail resource.
            displayName: Trail
            kind: Trail
            name: trails.cloudtrail.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Elastic Compute Cloud (CloudTrail) resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudTrail**

          AWS CloudTrail is an AWS service that helps you enable operational and risk auditing, governance, and compliance of your AWS account. Actions taken by a user, role, or an AWS service are recorded as events in CloudTrail. Events include actions taken in the AWS Management Console, AWS Command Line Interface, and AWS SDKs and APIs.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon CloudTrail
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudtrail
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudTrail Developer Resources
          url: https://aws.amazon.com/cloudtrail/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudtrail maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-cloudtrail-controller@sha256:afee911b61274480b95dfdd96b7266d867c8ec5ad9b38d473d509e32dd279e1b
        - public.ecr.aws/aws-controllers-k8s/cloudtrail-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-cloudtrail-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudtrail-controller.v1.1.1
        version: 1.1.1
      - name: ack-cloudtrail-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudtrail-controller.v1.0.28
        version: 1.0.28
      - name: ack-cloudtrail-controller.v1.0.26
        version: 1.0.26
      - name: ack-cloudtrail-controller.v1.0.25
        version: 1.0.25
      - name: ack-cloudtrail-controller.v1.0.24
        version: 1.0.24
      - name: ack-cloudtrail-controller.v1.0.23
        version: 1.0.23
      - name: ack-cloudtrail-controller.v1.0.22
        version: 1.0.22
      - name: ack-cloudtrail-controller.v1.0.21
        version: 1.0.21
      - name: ack-cloudtrail-controller.v1.0.20
        version: 1.0.20
      - name: ack-cloudtrail-controller.v1.0.19
        version: 1.0.19
      - name: ack-cloudtrail-controller.v1.0.16
        version: 1.0.16
      - name: ack-cloudtrail-controller.v1.0.15
        version: 1.0.15
      - name: ack-cloudtrail-controller.v1.0.14
        version: 1.0.14
      - name: ack-cloudtrail-controller.v1.0.13
        version: 1.0.13
      - name: ack-cloudtrail-controller.v1.0.12
        version: 1.0.12
      - name: ack-cloudtrail-controller.v1.0.11
        version: 1.0.11
      - name: ack-cloudtrail-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudtrail-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudtrail-controller.v1.0.5
        version: 1.0.5
      - name: ack-cloudtrail-controller.v1.0.4
        version: 1.0.4
      - name: ack-cloudtrail-controller.v1.0.3
        version: 1.0.3
      - name: ack-cloudtrail-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudtrail-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudtrail-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudtrail-controller.v0.1.3
        version: 0.1.3
      - name: ack-cloudtrail-controller.v0.1.2
        version: 0.1.2
      - name: ack-cloudtrail-controller.v0.1.1
        version: 0.1.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudtrail-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: cloud-bulldozer
      provider-url: ""
    name: ripsaw
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ripsaw.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery, Cloud Provider
          containerImage: quay.io/cloud-bulldozer/benchmark-operator:latest
          description: '[Benchmark-operator](https://github.com/cloud-bulldozer/ripsaw/)
            is a benchmarking tool to benchmark your kubernetes cluster. The intent
            of this Operator is to deploy common workloads to establish a performance
            baseline of Kubernetes cluster'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/cloud-bulldozer/benchmark-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Benchmark
            name: benchmarks.ripsaw.cloudbulldozer.io
            version: v1alpha1
        description: '[Benchmark-operator](https://github.com/cloud-bulldozer/benchmark-operator/)
          is a benchmarking tool to benchmark your kubernetes cluster. The intent
          of this Operator is to deploy common workloads to establish a performance
          baseline of Kubernetes cluster'
        displayName: benchmark-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - performance
        - benchmark
        links:
        - name: Site
          url: https://github.com/cloud-bulldozer/benchmark-operator
        - name: Documentation
          url: https://github.com/cloud-bulldozer/benchmark-operator/tree/master/docs
        maintainers:
        - email: rsevilla@redhat.com
          name: rsevilla87
        - email: jtaleric@redhat.com
          name: jtaleric
        - email: rzaleski@redhat.com
          name: dry939
        - email: kwhitley@redhat.com
          name: whitleykeith
        maturity: alpha
        provider:
          name: cloud-bulldozer
        relatedImages:
        - quay.io/cloud-bulldozer/benchmark-operator:latest
        - quay.io/openshift-community-operators/ripsaw@sha256:ff8d796d5bd6c8cb0e155b3ced631122397758eb472470223e30352eeddba480
        - k8s.gcr.io/redis:v1
        version: 0.1.0
      entries:
      - name: ripsaw.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ripsaw
    provider:
      name: cloud-bulldozer
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ocs-client-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ocs-client-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-client-console"]'
          containerImage: registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:b2fe175cc0154906ecab7e0a0a4712e76f204db55fc9b4d32fcda27446e5f1be
          createdAt: "2025-12-18T07:54:46Z"
          description: OpenShift Data Foundation client operator enables consumption
            of storage services from a remote centralized OpenShift Data Foundation
            provider cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/red-hat-storage/ocs-client-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StorageClient is the Schema for the storageclients API
            displayName: Storage Client
            kind: StorageClient
            name: storageclients.ocs.openshift.io
            version: v1alpha1
        description: OpenShift Data Foundation client operator enables consumption
          of storage services from a remote centralized OpenShift Data Foundation
          provider cluster.
        displayName: OpenShift Data Foundation Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: OCS Client Operator
          url: https://github.com/red-hat-storage/ocs-client-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/ocs-client-operator-bundle@sha256:8417c655f110b508f858c1ff2a3d0315e0dab9baba9afec846f61c71cb294477
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:de6cd74955a0403d8ff97490a657b941316d69922e901fa3513f1837fb8d981b
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:5ee2a17163eb3a989d45c1ae90175a88b35d2f5ac4dd824f8210626d58627449
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:b2fe175cc0154906ecab7e0a0a4712e76f204db55fc9b4d32fcda27446e5f1be
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:e1d824c160ed39df2024e6cccd2269f0de9a3933986765d9d5d038b2c95e447f
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        version: 4.19.9-rhodf
      entries:
      - name: ocs-client-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: ocs-client-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: ocs-client-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: ocs-client-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: ocs-client-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: ocs-client-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: ocs-client-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: ocs-client-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: ocs-client-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: ocs-client-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: ocs-client-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-client-console"]'
          containerImage: registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:f1553f73f4ce2390424d5f9153851e303564e7c50d769b5710adfe0ec5aca3cd
          createdAt: "2025-12-18T07:41:10Z"
          description: OpenShift Data Foundation client operator enables consumption
            of storage services from a remote centralized OpenShift Data Foundation
            provider cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/red-hat-storage/ocs-client-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StorageClient is the Schema for the storageclients API
            displayName: Storage Client
            kind: StorageClient
            name: storageclients.ocs.openshift.io
            version: v1alpha1
        description: OpenShift Data Foundation client operator enables consumption
          of storage services from a remote centralized OpenShift Data Foundation
          provider cluster.
        displayName: OpenShift Data Foundation Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: OCS Client Operator
          url: https://github.com/red-hat-storage/ocs-client-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        - registry.redhat.io/odf4/odf-external-snapshotter-sidecar-rhel9@sha256:87b5909be13793b80ab8cb916458c8863bdff29a7391630af0707b39080b8ebb
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:5ee2a17163eb3a989d45c1ae90175a88b35d2f5ac4dd824f8210626d58627449
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:7ae5cd1afb0ba1a7e28acb6631b3fe7ec3e23fbba782162baa2df847de61b28e
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:f1553f73f4ce2390424d5f9153851e303564e7c50d769b5710adfe0ec5aca3cd
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        - registry.redhat.io/openshift4/ose-csi-external-snapshot-metadata-rhel9@sha256:da5c73b33774046408736738fac6e4bd82fc0f7c0a6e966e788941e81746fd28
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/odf4/ocs-client-operator-bundle@sha256:a7a7533e91939980298a9b097ae535a40fb179a4f4d26b3194b13c396b845d17
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:e1d824c160ed39df2024e6cccd2269f0de9a3933986765d9d5d038b2c95e447f
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:954212cfe5ee83f95fb844f0b59d2c5230c0a0a0135ab4953f24e29ef4cd0157
        version: 4.20.4-rhodf
      entries:
      - name: ocs-client-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: ocs-client-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: ocs-client-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: ocs-client-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: ocs-client-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: ocs-client-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-wafv2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-wafv2-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wafv2.services.k8s.aws/v1alpha1",
                "kind": "IPSet",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/wafv2-controller:1.2.0
          createdAt: "2025-11-29T05:17:18Z"
          description: AWS WAFV2 controller is a service controller for managing WAFV2
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IPSet represents the state of an AWS wafv2 IPSet resource.
            displayName: IPSet
            kind: IPSet
            name: ipsets.wafv2.services.k8s.aws
            version: v1alpha1
          - description: RuleGroup represents the state of an AWS wafv2 RuleGroup
              resource.
            displayName: RuleGroup
            kind: RuleGroup
            name: rulegroups.wafv2.services.k8s.aws
            version: v1alpha1
          - description: WebACL represents the state of an AWS wafv2 WebACL resource.
            displayName: WebACL
            kind: WebACL
            name: webacls.wafv2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Web Application Firewall (Amazon WAFV2) resources in AWS from within your Kubernetes cluster.

          **About Amazon WAFV2**

          AWS WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to your protected web application resources. You can protect the following resource types:
          - Amazon CloudFront distribution
          - Amazon API Gateway REST API
          - Application Load Balancer
          - AWS AppSync GraphQL API
          - Amazon Cognito user pool
          - AWS App Runner service
          - AWS Verified Access instance

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon WAFV2
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - wafv2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon WAFV2 Developer Resources
          url: https://aws.amazon.com/waf/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: wafv2 maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/wafv2-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-wafv2-controller@sha256:0c0cc3819a4833ca703d36bb86c094f44886b30fd547f638761e5718358085ba
        version: 1.2.0
      entries:
      - name: ack-wafv2-controller.v1.2.0
        version: 1.2.0
      - name: ack-wafv2-controller.v1.1.2
        version: 1.1.2
      - name: ack-wafv2-controller.v1.1.1
        version: 1.1.1
      - name: ack-wafv2-controller.v1.1.0
        version: 1.1.0
      - name: ack-wafv2-controller.v1.0.14
        version: 1.0.14
      - name: ack-wafv2-controller.v1.0.13
        version: 1.0.13
      - name: ack-wafv2-controller.v1.0.12
        version: 1.0.12
      - name: ack-wafv2-controller.v1.0.10
        version: 1.0.10
      - name: ack-wafv2-controller.v1.0.9
        version: 1.0.9
      - name: ack-wafv2-controller.v1.0.8
        version: 1.0.8
      - name: ack-wafv2-controller.v1.0.6
        version: 1.0.6
      - name: ack-wafv2-controller.v1.0.5
        version: 1.0.5
      - name: ack-wafv2-controller.v1.0.4
        version: 1.0.4
      - name: ack-wafv2-controller.v1.0.1
        version: 1.0.1
      - name: ack-wafv2-controller.v1.0.0
        version: 1.0.0
      - name: ack-wafv2-controller.v0.0.4
        version: 0.0.4
      - name: ack-wafv2-controller.v0.0.3
        version: 0.0.3
      - name: ack-wafv2-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-wafv2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/limitador-operator
    name: limitador-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: limitador-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "limitador.kuadrant.io/v1alpha1",
                "kind": "Limitador",
                "metadata": {
                  "name": "limitador-sample"
                },
                "spec": {
                  "limits": [
                    {
                      "conditions": [
                        "get_toy == 'yes'"
                      ],
                      "max_value": 2,
                      "name": "toy_get_route",
                      "namespace": "toystore-app",
                      "seconds": 30,
                      "variables": []
                    }
                  ],
                  "listener": {
                    "grpc": {
                      "port": 8081
                    },
                    "http": {
                      "port": 8080
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/limitador-rhel9-operator@sha256:6092c510b04a4cee253a52c07b77b625e90d863fa9ccd8727eb901bd81b4e071
          createdAt: 07 Oct 2025, 11:32
          description: Enables rate limiting for Gateways and applications in a Gateway
            API network
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kuadrant/limitador-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Limitador is the Schema for the limitadors API
            displayName: Limitador
            kind: Limitador
            name: limitadors.limitador.kuadrant.io
            version: v1alpha1
        description: The Limitador operator installs and maintains limitador instances
        displayName: Limitador
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - rate-limit
        - kuadrant
        links:
        - name: Limitador Operator
          url: https://github.com/Kuadrant/limitador-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: asnaps@redhat.com
          name: Alex Snaps
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/limitador-operator
        relatedImages:
        - registry.redhat.io/rhcl-1/limitador-rhel9@sha256:aff28d76f9cfeefafd6b652e055bb25e1a2bf250e062e3e9b5e54db873f9eeb7
        - registry.redhat.io/rhcl-1/limitador-operator-bundle@sha256:fc0ee45511674e99f3ecd1b807a660e4bcf49af77bf5d66af935d1cb16336bc4
        - registry.redhat.io/rhcl-1/limitador-rhel9-operator@sha256:6092c510b04a4cee253a52c07b77b625e90d863fa9ccd8727eb901bd81b4e071
        version: 1.2.0
      entries:
      - name: limitador-operator.v1.2.0
        version: 1.2.0
      - name: limitador-operator.v1.1.1
        version: 1.1.1
      - name: limitador-operator.v1.1.0
        version: 1.1.0
      - name: limitador-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: limitador-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/limitador-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: openshift
      provider-url: ""
    name: pf-status-relay-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pf-status-relay-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pfstatusrelay.openshift.io/v1alpha1",
                "kind": "PFLACPMonitor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "pf-status-relay-operator"
                  },
                  "name": "pflacpmonitor-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.3.0-0 <4.19.0'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PFLACPMonitor is the Schema for the pflacpmonitors API
            displayName: PFLACPMonitor
            kind: PFLACPMonitor
            name: pflacpmonitors.pfstatusrelay.openshift.io
            version: v1alpha1
        description: It deploys the pf-status-relay application.
        displayName: pf-status-relay-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pf-status-relay
        - sriov
        - lacp
        links:
        - name: Pf Status Relay Operator
          url: https://pf-status-relay-operator.domain
        maintainers:
        - email: marguerr@redhat.com
          name: Marcelo Guerrero
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: openshift
        relatedImages:
        - registry.redhat.io/openshift4/pf-status-relay-rhel9-operator@sha256:d3429e65675d7b1bda2158db44a771c3b55fe6a3f269e08fe6ff9ef224226772
        - registry.redhat.io/openshift4/pf-status-relay-rhel9@sha256:0f7d8c9aa266a124f571ca2e58f0705ec7257e2cc96f353dd5c41a6f9de00f4a
        - registry.redhat.io/openshift4/pf-status-relay-operator-bundle@sha256:14ac9f4b837706b9ff92cf899f395e0c9f3758d2ab5c1f2e094a6ede45b24023
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 4.20.0-202512081147
      entries:
      - name: pf-status-relay-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: pf-status-relay-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: pf-status-relay-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: pf-status-relay-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: pf-status-relay-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: pf-status-relay-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: pf-status-relay-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: pf-status-relay-operator
    provider:
      name: openshift
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: https://stakater.com
    name: template-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: template-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-07-04T00:40:36Z"
          description: Operator to distribute plain kubernetes manifests, helm charts
            and, copy secrets and configmaps to multiple namespaces
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.0.1
          operatorframework.io/suggested-namespace: template-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterTemplateInstance is the Schema for the clustertemplateinstances
              API
            displayName: Cluster Template Instance
            kind: ClusterTemplateInstance
            name: clustertemplateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateGroupInstance is the Schema for the TemplateGroupInstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.templates.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
        description: '"Operator to distribute plain kubernetes manifests, helm charts
          and, copy secrets and configmaps to multiple namespaces"'
        displayName: Template Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - templates
        - secrets
        - configmaps
        - distribution
        - stakater
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/template-operator-bundle@sha256:6ef2956b297795a9d0c83119e71309549975df3ae5652e6a98cef035ace5d51a
        - registry.connect.redhat.com/stakater/template-operator@sha256:ad8312417e4e9621b74d3ad03020516840feef9c4b52c4f0d894dbb6dc6f906a
        version: 0.0.1
      entries:
      - name: template-operator.v0.0.1
        version: 0.0.1
      name: release-0.0
    - currentCSV: template-operator.v0.1.5
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-08-29T06:41:42Z"
          description: Operator to distribute plain kubernetes manifests, helm charts
            and, copy secrets and configmaps to multiple namespaces
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.1.5
          operatorframework.io/suggested-namespace: template-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterTemplateInstance is the Schema for the clustertemplateinstances
              API
            displayName: Cluster Template Instance
            kind: ClusterTemplateInstance
            name: clustertemplateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateGroupInstance is the Schema for the TemplateGroupInstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.templates.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
        description: '"Operator to distribute plain kubernetes manifests, helm charts
          and, copy secrets and configmaps to multiple namespaces"'
        displayName: Template Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - templates
        - secrets
        - configmaps
        - distribution
        - stakater
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/template-operator-bundle@sha256:8831faee6979acfb5bd031b64cbc09fb90e9ea4f48bbff15e9d39ccdf6bf3d95
        - registry.connect.redhat.com/stakater/template-operator@sha256:88f722baf22ac07704503f098f2b0ea7d76815a1ab0552474b1c9ba6639d8142
        version: 0.1.5
      entries:
      - name: template-operator.v0.1.5
        version: 0.1.5
      name: release-0.1
    defaultChannel: release-0.1
    packageName: template-operator
    provider:
      name: Stakater
      url: https://stakater.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: GitLab Inc
      provider-url: https://about.gitlab.com/
    name: gitlab-operator-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:24:14Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - registry.connect.redhat.com/gitlab/gitlab-operator-bundle@sha256:3ce324ad0b7aa2c357a89b134b595e317ec929dcd7f4ff8bf3323fdeea97a8e7
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: stable
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:24:14Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - registry.connect.redhat.com/gitlab/gitlab-operator-bundle@sha256:3ce324ad0b7aa2c357a89b134b595e317ec929dcd7f4ff8bf3323fdeea97a8e7
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: unstable
    defaultChannel: stable
    packageName: gitlab-operator-kubernetes
    provider:
      name: GitLab Inc
      url: https://about.gitlab.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Datadog
      provider-url: ""
    name: datadog-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datadog-operator.v0.8.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadog"
                },
                "spec": {
                  "agent": {
                    "apm": {
                      "enabled": false
                    },
                    "log": {
                      "enabled": false,
                      "logsConfigContainerCollectAll": false
                    },
                    "process": {
                      "enabled": true,
                      "processCollection": false
                    },
                    "security": {
                      "compliance": {
                        "enabled": false
                      },
                      "runtime": {
                        "enabled": false
                      }
                    },
                    "systemProbe": {
                      "bpfDebugEnabled": false
                    }
                  },
                  "clusterAgent": {
                    "config": {
                      "admissionController": {
                        "enabled": false
                      },
                      "clusterChecksEnabled": false,
                      "externalMetrics": {
                        "enabled": false
                      }
                    },
                    "replicas": 2
                  },
                  "clusterChecksRunner": {
                    "replicas": 2
                  },
                  "clusterName": "\u003cCLUSTER_NAME\u003e",
                  "credentials": {
                    "apiKey": "\u003cDATADOG_API_KEY\u003e",
                    "appKey": "\u003cDATADOG_APP_KEY\u003e",
                    "token": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e"
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: gcr.io/datadoghq/operator:0.8.4
          description: Datadog provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with Datadog Operator.
          olm.skipRange: <0.8.4
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/DataDog/datadog-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgent Deployment with Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v1alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
        description: Datadog provides a modern monitoring and analytics platform.
          Gather metrics, logs and traces for full observability of your Kubernetes
          cluster with Datadog Operator.
        displayName: Datadog Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - gcr.io/datadoghq/operator:0.8.4
        - quay.io/openshift-community-operators/datadog-operator@sha256:b1977170e5991e1f08c49037d6f34873c8543d29d3a2c3692ebb1d66734f5b3e
        version: 0.8.4
      entries:
      - name: datadog-operator.v0.8.4
        version: 0.8.4
      - name: datadog-operator.v0.8.2
        version: 0.8.2
      - name: datadog-operator.v0.8.1
        version: 0.8.1
      - name: datadog-operator.v0.8.0
        version: 0.8.0
      name: alpha
    - currentCSV: datadog-operator.v1.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgentProfile",
                "metadata": {
                  "name": "datadogagentprofile-sample"
                },
                "spec": {
                  "config": {
                    "override": {
                      "nodeAgent": {
                        "containers": {
                          "agent": {
                            "resources": {
                              "requests": {
                                "cpu": "256m"
                              }
                            }
                          }
                        }
                      }
                    }
                  },
                  "profileAffinity": {
                    "profileNodeAffinity": [
                      {
                        "key": "kubernetes.io/os",
                        "operator": "In",
                        "values": [
                          "linux"
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogDashboard",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "datadog-operator",
                    "app.kubernetes.io/instance": "datadogdashboard-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datadogdashboard",
                    "app.kubernetes.io/part-of": "datadog-operator"
                  },
                  "name": "datadogdashboard-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogGenericResource",
                "metadata": {
                  "name": "datadoggenericresource-notebook-sample"
                },
                "spec": {
                  "jsonSpec": "{\n  \"data\": {\n    \"attributes\": {\n      \"cells\": [\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"text\": \"## Some test markdown\\n\\n```js\\nvar x, y;\\nx = 5;\\ny = 6;\\n```\",\n              \"type\": \"markdown\"\n            }\n          },\n          \"type\": \"notebook_cells\"\n        },\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"requests\": [\n                {\n                  \"display_type\": \"line\",\n                  \"q\": \"avg:system.load.1{*}\",\n                  \"style\": {\n                    \"line_type\": \"solid\",\n                    \"line_width\": \"normal\",\n                    \"palette\": \"dog_classic\"\n                  }\n                }\n              ],\n              \"show_legend\": true,\n              \"type\": \"timeseries\",\n              \"yaxis\": {\n                \"scale\": \"linear\"\n              }\n            },\n            \"graph_size\": \"m\",\n            \"split_by\": {\n              \"keys\": [],\n              \"tags\": []\n            },\n            \"time\": null\n          },\n          \"type\": \"notebook_cells\"\n        }\n      ],\n      \"name\": \"Example-Notebook\",\n      \"status\": \"published\",\n      \"time\": {\n        \"live_span\": \"1h\"\n      }\n    },\n    \"type\": \"notebooks\"\n  }\n}",
                  "type": "notebook"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogPodAutoscaler",
                "metadata": {
                  "name": "datadogpodautoscaler-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogSLO",
                "metadata": {
                  "name": "datadogslo-sample"
                },
                "spec": {
                  "description": "This is an example metric SLO from datadog-operator",
                  "name": "datadogslo-sample",
                  "query": {
                    "denominator": "sum:requests.total{service:example,env:prod}.as_count()",
                    "numerator": "sum:requests.success{service:example,env:prod}.as_count()"
                  },
                  "tags": [
                    "service:example",
                    "env:prod"
                  ],
                  "targetThreshold": "99.9",
                  "timeframe": "7d",
                  "type": "metric"
                }
              },
              {
                "apiVersion": "datadoghq.com/v2alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadogagent-sample"
                },
                "spec": {
                  "features": {
                    "admissionController": {
                      "enabled": false
                    },
                    "apm": {
                      "enabled": false
                    },
                    "clusterChecks": {
                      "enabled": true,
                      "useClusterChecksRunners": true
                    },
                    "liveProcessCollection": {
                      "enabled": false
                    },
                    "logCollection": {
                      "containerCollectAll": true,
                      "enabled": true
                    }
                  },
                  "global": {
                    "clusterAgentToken": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e",
                    "clusterName": "\u003cCLUSTER_NAME\u003e",
                    "credentials": {
                      "apiKey": "\u003cDATADOG_API_KEY\u003e",
                      "appKey": "\u003cDATADOG_APP_KEY\u003e"
                    },
                    "criSocketPath": "/var/run/crio/crio.sock",
                    "kubelet": {
                      "tlsVerify": false
                    }
                  },
                  "override": {
                    "clusterAgent": {
                      "containers": {
                        "cluster-agent": {
                          "securityContext": {
                            "readOnlyRootFilesystem": false
                          }
                        }
                      },
                      "replicas": 2,
                      "serviceAccountName": "datadog-agent-scc"
                    },
                    "clusterChecksRunner": {
                      "replicas": 2
                    },
                    "nodeAgent": {
                      "hostNetwork": true,
                      "securityContext": {
                        "runAsUser": 0,
                        "seLinuxOptions": {
                          "level": "s0",
                          "role": "system_r",
                          "type": "spc_t",
                          "user": "system_u"
                        }
                      },
                      "serviceAccountName": "datadog-agent-scc"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: gcr.io/datadoghq/operator:1.20.0
          createdAt: "2025-11-11 19:36:47"
          description: Datadog provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with Datadog Operator.
          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.skipRange: '>=1.7.0 <1.20.0'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/DataDog/datadog-operator
          support: Datadog, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgentInternal is the Schema for the datadogagentinternals
              API
            displayName: Datadog Agent Internal
            kind: DatadogAgentInternal
            name: datadogagentinternals.datadoghq.com
            version: v1alpha1
          - description: DatadogAgentProfile is the Schema for the datadogagentprofiles
              API
            displayName: Datadog Agent Profile
            kind: DatadogAgentProfile
            name: datadogagentprofiles.datadoghq.com
            version: v1alpha1
          - description: DatadogAgent Deployment with the Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v2alpha1
          - description: DatadogDashboard is the Schema for the datadogdashboards
              API
            displayName: Datadog Dashboard
            kind: DatadogDashboard
            name: datadogdashboards.datadoghq.com
            version: v1alpha1
          - kind: DatadogGenericResource
            name: datadoggenericresources.datadoghq.com
            version: v1alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha2
          - description: DatadogSLO allows a user to define and manage datadog SLOs
              from Kubernetes cluster.
            displayName: Datadog SLO
            kind: DatadogSLO
            name: datadogslos.datadoghq.com
            version: v1alpha1
        description: Datadog provides a modern monitoring and analytics platform.
          Gather metrics, logs and traces for full observability of your Kubernetes
          cluster with Datadog Operator.
        displayName: Datadog Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - quay.io/community-operator-pipeline-prod/datadog-operator@sha256:e5dd17a7de9ae6bd921ab5b07a1d56c803784920c6b7a24151669ab7d24509ae
        - gcr.io/datadoghq/operator:1.20.0
        version: 1.20.0
      entries:
      - name: datadog-operator.v1.20.0
        version: 1.20.0
      - name: datadog-operator.v1.19.1
        version: 1.19.1
      - name: datadog-operator.v1.18.0
        version: 1.18.0
      - name: datadog-operator.v1.17.0
        version: 1.17.0
      - name: datadog-operator.v1.16.0
        version: 1.16.0
      - name: datadog-operator.v1.15.1
        version: 1.15.1
      - name: datadog-operator.v1.14.0
        version: 1.14.0
      - name: datadog-operator.v1.13.0
        version: 1.13.0
      - name: datadog-operator.v1.12.1
        version: 1.12.1
      - name: datadog-operator.v1.11.1
        version: 1.11.1
      - name: datadog-operator.v1.10.0
        version: 1.10.0
      - name: datadog-operator.v1.9.0
        version: 1.9.0
      - name: datadog-operator.v1.8.0
        version: 1.8.0
      - name: datadog-operator.v1.7.0
        version: 1.7.0
      - name: datadog-operator.v1.6.0
        version: 1.6.0
      - name: datadog-operator.v1.5.0
        version: 1.5.0
      - name: datadog-operator.v1.4.2
        version: 1.4.2
      - name: datadog-operator.v1.4.1
        version: 1.4.1
      - name: datadog-operator.v1.4.0
        version: 1.4.0
      - name: datadog-operator.v1.3.0
        version: 1.3.0
      - name: datadog-operator.v1.2.1
        version: 1.2.1
      - name: datadog-operator.v1.2.0
        version: 1.2.0
      - name: datadog-operator.v1.1.0
        version: 1.1.0
      name: stable
    defaultChannel: stable
    packageName: datadog-operator
    provider:
      name: Datadog
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: fuse-apicurito
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fuse-apicurito.v7.10.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1alpha1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:8d19ad579f874d6b9a08f127c8900906913a5a7c1e69cbe4b5cb0333b8d86152
          createdAt: 2022-02-28 09:35:38 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.10.3'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:4530ed52522a74051aaedabd62b99d5c5274a0ab72eb28d4e75207d9e9d3391b
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:8d19ad579f874d6b9a08f127c8900906913a5a7c1e69cbe4b5cb0333b8d86152
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:8dbeeb8b04c81f41d896f71db90813de57e67493fa85389b63ac23f390785043
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:c02c218ccfbb385ea29af98409995a3d9c26cb0b4c76caf2e0779fa233b5ff8c
        version: 7.10.3
      entries:
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.10.x
    - currentCSV: fuse-apicurito.v7.11.1-0.1687357785.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:2f8d4450187839f0e0c761e5ddcf61b03f5996acfe3d75b60120e76e5b0167c1
          createdAt: 2022-08-31 15:11:41 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.11.2'
          olm.substitutesFor: fuse-apicurito.v7.11.1-0.1682509045.p
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:02e6baf8619cc2b782cbb1f3072e554a7638eaf3fd804abe1ba5f43f692e511b
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:2f8d4450187839f0e0c761e5ddcf61b03f5996acfe3d75b60120e76e5b0167c1
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:df61aafc4023b9068a8636c35eabb0d5fda400f523b64cb1fc5d8c480272c435
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:4c493a2d690d0d7c1684c53d15c06b47d691aeffdde6dd471b6e75fed2fec6a9
        version: 7.11.1+0.1687357785.p
      entries:
      - name: fuse-apicurito.v7.11.1
        version: 7.11.1
      - name: fuse-apicurito.v7.11.1-0.1687357785.p
        version: 7.11.1+0.1687357785.p
      - name: fuse-apicurito.v7.11.1-0.1682509045.p
        version: 7.11.1+0.1682509045.p
      - name: fuse-apicurito.v7.11.1-0.1681224697.p
        version: 7.11.1+0.1681224697.p
      - name: fuse-apicurito.v7.11.1-0.1679272341.p
        version: 7.11.1+0.1679272341.p
      - name: fuse-apicurito.v7.11.1-0.1675972858.p
        version: 7.11.1+0.1675972858.p
      - name: fuse-apicurito.v7.11.1-0.1673364838.p
        version: 7.11.1+0.1673364838.p
      - name: fuse-apicurito.v7.11.0-0.1665994968.p
        version: 7.11.0+0.1665994968.p
      - name: fuse-apicurito.v7.11.0-0.1666805761.p
        version: 7.11.0+0.1666805761.p
      - name: fuse-apicurito.v7.11.0-0.1662457152.p
        version: 7.11.0+0.1662457152.p
      - name: fuse-apicurito.v7.11.0-0.1659517292.p
        version: 7.11.0+0.1659517292.p
      - name: fuse-apicurito.v7.11.0
        version: 7.11.0
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.11.x
    - currentCSV: fuse-apicurito.v7.12.1-0.1706187670.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:7ccefee63165e7eaf9a609e8a9f978a06f27deff69a318fe399a29292ad99106
          createdAt: 2022-08-31 15:11:41 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.12.1'
          olm.substitutesFor: fuse-apicurito.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:df59ef548b82e9d72fecd06aa6b9c569f96485693c8a4ecb8ec278ae92df436f
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:7ccefee63165e7eaf9a609e8a9f978a06f27deff69a318fe399a29292ad99106
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:4cd612283e8136839f1f48a3a220dac7c6c38adf14b61bc03a981e514baefe9b
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:bee0eeaa7898af835f80c5217059d73361daa42197fa6cbbaf416e1ba373eb54
        version: 7.12.1+0.1706187670.p
      entries:
      - name: fuse-apicurito.v7.12.1-0.1706187670.p
        version: 7.12.1+0.1706187670.p
      - name: fuse-apicurito.v7.12.1
        version: 7.12.1
      - name: fuse-apicurito.v7.12.0
        version: 7.12.0
      - name: fuse-apicurito.v7.12.0-0.1697748407.p
        version: 7.12.0+0.1697748407.p
      - name: fuse-apicurito.v7.12.0-0.1697419531.p
        version: 7.12.0+0.1697419531.p
      - name: fuse-apicurito.v7.12.0-0.1694087055.p
        version: 7.12.0+0.1694087055.p
      - name: fuse-apicurito.v7.11.1-0.1675972858.p
        version: 7.11.1+0.1675972858.p
      - name: fuse-apicurito.v7.11.1-0.1682509045.p
        version: 7.11.1+0.1682509045.p
      - name: fuse-apicurito.v7.11.1-0.1687357785.p
        version: 7.11.1+0.1687357785.p
      - name: fuse-apicurito.v7.11.1-0.1681224697.p
        version: 7.11.1+0.1681224697.p
      - name: fuse-apicurito.v7.11.1
        version: 7.11.1
      - name: fuse-apicurito.v7.11.1-0.1673364838.p
        version: 7.11.1+0.1673364838.p
      - name: fuse-apicurito.v7.11.1-0.1679272341.p
        version: 7.11.1+0.1679272341.p
      - name: fuse-apicurito.v7.11.0-0.1666805761.p
        version: 7.11.0+0.1666805761.p
      - name: fuse-apicurito.v7.11.0-0.1662457152.p
        version: 7.11.0+0.1662457152.p
      - name: fuse-apicurito.v7.11.0-0.1665994968.p
        version: 7.11.0+0.1665994968.p
      - name: fuse-apicurito.v7.11.0-0.1659517292.p
        version: 7.11.0+0.1659517292.p
      - name: fuse-apicurito.v7.11.0
        version: 7.11.0
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.12.x
    - currentCSV: fuse-apicurito.v7.13.0-0.1767583497.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:112f86a152a0bd90776881417c43f2b768b4756471fc39d07e3690301d4fd57b
          createdAt: 2022-08-31 15:11:41 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=7.7.0 <7.13.0'
          olm.substitutesFor: fuse-apicurito.v7.13.0-0.1766137200.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:323f7d1fa408dfa958afa2aba0fcfff69cef78073a9b1cd4d70d3908e46fb8f5
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:c828ea828ffa81ac936f445f78ca4465f37fc2fff2161d7d0c562fcfb5ac3a49
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:3c5557eced22a6e3760782a62523b5187321895a57a0b260f8d668a2f2d3e274
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:112f86a152a0bd90776881417c43f2b768b4756471fc39d07e3690301d4fd57b
        version: 7.13.0+0.1767583497.p
      entries:
      - name: fuse-apicurito.v7.13.0-0.1744280419.p
        version: 7.13.0+0.1744280419.p
      - name: fuse-apicurito.v7.13.0-0.1745523192.p
        version: 7.13.0+0.1745523192.p
      - name: fuse-apicurito.v7.13.0-0.1767583497.p
        version: 7.13.0+0.1767583497.p
      - name: fuse-apicurito.v7.13.0-0.1766137200.p
        version: 7.13.0+0.1766137200.p
      - name: fuse-apicurito.v7.13.0-0.1764853445.p
        version: 7.13.0+0.1764853445.p
      - name: fuse-apicurito.v7.13.0-0.1764853165.p
        version: 7.13.0+0.1764853165.p
      - name: fuse-apicurito.v7.13.0-0.1764239907.p
        version: 7.13.0+0.1764239907.p
      - name: fuse-apicurito.v7.13.0-0.1763465460.p
        version: 7.13.0+0.1763465460.p
      - name: fuse-apicurito.v7.13.0-0.1753785079.p
        version: 7.13.0+0.1753785079.p
      - name: fuse-apicurito.v7.13.0-0.1753778936.p
        version: 7.13.0+0.1753778936.p
      - name: fuse-apicurito.v7.13.0-0.1753778625.p
        version: 7.13.0+0.1753778625.p
      - name: fuse-apicurito.v7.13.0-0.1753702605.p
        version: 7.13.0+0.1753702605.p
      - name: fuse-apicurito.v7.13.0-0.1753701210.p
        version: 7.13.0+0.1753701210.p
      - name: fuse-apicurito.v7.13.0-0.1751291353.p
        version: 7.13.0+0.1751291353.p
      - name: fuse-apicurito.v7.13.0-0.1748960166.p
        version: 7.13.0+0.1748960166.p
      - name: fuse-apicurito.v7.13.0-0.1721607497.p
        version: 7.13.0+0.1721607497.p
      - name: fuse-apicurito.v7.13.0-0.1724053718.p
        version: 7.13.0+0.1724053718.p
      - name: fuse-apicurito.v7.13.0-0.1741884705.p
        version: 7.13.0+0.1741884705.p
      - name: fuse-apicurito.v7.13.0-0.1723709434.p
        version: 7.13.0+0.1723709434.p
      - name: fuse-apicurito.v7.13.0-0.1739885035.p
        version: 7.13.0+0.1739885035.p
      - name: fuse-apicurito.v7.13.0-0.1739473863.p
        version: 7.13.0+0.1739473863.p
      - name: fuse-apicurito.v7.13.0-0.1738056248.p
        version: 7.13.0+0.1738056248.p
      - name: fuse-apicurito.v7.13.0-0.1731460815.p
        version: 7.13.0+0.1731460815.p
      - name: fuse-apicurito.v7.13.0
        version: 7.13.0
      - name: fuse-apicurito.v7.13.0-0.1717672390.p
        version: 7.13.0+0.1717672390.p
      - name: fuse-apicurito.v7.13.0-0.1718285973.p
        version: 7.13.0+0.1718285973.p
      - name: fuse-apicurito.v7.13.0-0.1720707249.p
        version: 7.13.0+0.1720707249.p
      - name: fuse-apicurito.v7.13.0-0.1721224330.p
        version: 7.13.0+0.1721224330.p
      - name: fuse-apicurito.v7.13.0-0.1729189341.p
        version: 7.13.0+0.1729189341.p
      - name: fuse-apicurito.v7.13.0-0.1741875975.p
        version: 7.13.0+0.1741875975.p
      - name: fuse-apicurito.v7.13.0-0.1744737027.p
        version: 7.13.0+0.1744737027.p
      - name: fuse-apicurito.v7.13.0-0.1724659732.p
        version: 7.13.0+0.1724659732.p
      - name: fuse-apicurito.v7.13.0-0.1725022690.p
        version: 7.13.0+0.1725022690.p
      - name: fuse-apicurito.v7.13.0-0.1727193594.p
        version: 7.13.0+0.1727193594.p
      - name: fuse-apicurito.v7.13.0-0.1727957847.p
        version: 7.13.0+0.1727957847.p
      - name: fuse-apicurito.v7.12.1
        version: 7.12.1
      - name: fuse-apicurito.v7.12.1-0.1706187670.p
        version: 7.12.1+0.1706187670.p
      - name: fuse-apicurito.v7.12.0
        version: 7.12.0
      - name: fuse-apicurito.v7.12.0-0.1697748407.p
        version: 7.12.0+0.1697748407.p
      - name: fuse-apicurito.v7.12.0-0.1697419531.p
        version: 7.12.0+0.1697419531.p
      - name: fuse-apicurito.v7.12.0-0.1694087055.p
        version: 7.12.0+0.1694087055.p
      - name: fuse-apicurito.v7.11.1-0.1679272341.p
        version: 7.11.1+0.1679272341.p
      - name: fuse-apicurito.v7.11.1-0.1675972858.p
        version: 7.11.1+0.1675972858.p
      - name: fuse-apicurito.v7.11.1-0.1687357785.p
        version: 7.11.1+0.1687357785.p
      - name: fuse-apicurito.v7.11.1-0.1682509045.p
        version: 7.11.1+0.1682509045.p
      - name: fuse-apicurito.v7.11.1-0.1681224697.p
        version: 7.11.1+0.1681224697.p
      - name: fuse-apicurito.v7.11.1-0.1673364838.p
        version: 7.11.1+0.1673364838.p
      - name: fuse-apicurito.v7.11.1
        version: 7.11.1
      - name: fuse-apicurito.v7.11.0-0.1659517292.p
        version: 7.11.0+0.1659517292.p
      - name: fuse-apicurito.v7.11.0-0.1666805761.p
        version: 7.11.0+0.1666805761.p
      - name: fuse-apicurito.v7.11.0-0.1665994968.p
        version: 7.11.0+0.1665994968.p
      - name: fuse-apicurito.v7.11.0-0.1662457152.p
        version: 7.11.0+0.1662457152.p
      - name: fuse-apicurito.v7.11.0
        version: 7.11.0
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.13.x
    - currentCSV: fuse-apicurito.v7.9.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [{
                    "apiVersion": "apicur.io/v1alpha1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
            }]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:05c9676aada2d34a985a59abcf55105a3765d75b0d3764089d2b32e9ca5d367c
          createdAt: "2020-10-06 12:48:47"
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.9.3'
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito Project
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CRD for Apicurito
            displayName: Apicurito CRD
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:8ce258f36d3baab3175b29d5ed6df89588f128d249285bb1e7cb45539933c511
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:05c9676aada2d34a985a59abcf55105a3765d75b0d3764089d2b32e9ca5d367c
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:5535864ce393ae0ae5ee52ed0c7661e0351fb7df2f9235da70608245519530b2
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:dc39b79c360511ff999eba5b2c299db3e08c9c244a0a1f3da8c90c02695e506d
        version: 7.9.3
      entries:
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.9.x
    defaultChannel: fuse-apicurito-7.13.x
    packageName: fuse-apicurito
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MySQL
      provider-url: https://artifacthub.io/packages/helm/mysql-ndb-operator/ndb-operator
    name: ndb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ndb-operator.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "mysql.oracle.com/v1","kind": "NdbCluster","metadata":
            {"name": "example-ndb"},"spec": {"redundancyLevel": 2,"dataNode": {"nodeCount":
            2},"mysqlNode": {"nodeCount":2}}}]'
          capabilities: Seamless Upgrades
          categories: Database
          containerImage: container-registry.oracle.com/mysql/community-ndb-operator:9.1.0-1.6.0
          createdAt: "2024-12-18T15:05:46.000Z"
          description: The MySQL NDB Operator is a Kubernetes operator for managing
            a MySQL NDB Cluster setup inside a Kubernetes Cluster.
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instance of a Ndb Cluster
            displayName: NdbCluster
            kind: NdbCluster
            name: ndbclusters.mysql.oracle.com
            version: v1
        description: |
          ## NdbCluster Custom Resource
          The NdbCluster custom resource is defined with custom fields that map to the configuration of a MySQL Cluster. To deploy a MySQL Cluster inside the K8s Cluster, an NdbCluster object with the desired configuration of the MySQL Cluster has to be created in the K8s Cluster. The NDB Operator watches for any changes made to any NdbCluster objects and will receive an event when the NdbCluster object is created in the K8s Cluster. It will then start deploying the MySQL Cluster, with the specified configuration, inside the K8s Cluster using native Kubernetes workloads and resources. Once the MySQL Cluster is ready, the NdbCluster resource can be further modified to make changes to the MySQL Cluster configuration. The Operator will receive this event as well and will update the configuration of the already running MySQL Cluster.

          The documentation at [NdbCluster-CRD.md](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/NdbCluster-CRD.md) explains the various custom fields of the NdbCluster CRD and the effect they have on the MySQL Cluster configuration. The [examples](https://github.com/mysql/mysql-ndb-operator/tree/main/docs/examples) folder has a few examples of the NdbCluster resource objects which can be used to deploy MySQL Cluster inside the K8s Cluster.
          ## Deploy a simple MySQL Cluster

          The [examples/example-ndb.yaml](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/examples/example-ndb.yaml) file has a NdbCluster object example-ndb that defines a simple MySQL Cluster with 2 data nodes and 2 MySQL Servers. To create this object in the default namespace of the K8s Cluster, run this command from the root of the repo :
          ```
          kubectl apply -f docs/examples/example-ndb.yaml
          ```

          Various NdbCluster status fields report back the actual status of the MySQL Cluster running inside the K8s Cluster. Wait for the MySQL Cluster nodes to be started and become ready using the [UpToDate](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/NdbCluster-CRD.md#ndbclusterconditiontypestring-alias) Condition defined in the NdbCluster object status :
          ```
          kubectl wait --for=condition=UpToDate ndb example-ndb --timeout=10m
          ```
          The MySQL Cluster is ready for transactions once the NdbCluster is UpToDate, i.e. the UpToDate condition becomes true.

          At any point, a brief status of an NdbCluster object can be viewed using kubectl get ndb command.
          ```
          kubectl get ndb example-ndb
          ```

          The output of the command gives a short summary the MySQL Cluster nodes controlled by the respective NdbCluster object.
          ```
          NAME          REPLICA   MANAGEMENT NODES   DATA NODES   MYSQL SERVERS AGE   UP-TO-DATE
          example-ndb   2         Ready:2/2          Ready:2/2    Ready:2/2 3m    True
          ```

          To list all the pods created by the NDB Operator, run :
          ```
          kubectl get pods -l mysql.oracle.com/v1=example-ndb
          ```

          For example-ndb NdbCluster object, two management nodes (*-mgmd-* pods), two multi-threaded data nodes (*-ndbmtd-* pods) and two MySQL Servers (*-mysqld-*) would have been created by the NDB operator :
          ```
          NAME                   READY   STATUS    RESTARTS   AGE
          example-ndb-mgmd-0     1/1     Running   0          3m53s
          example-ndb-mgmd-1     1/1     Running   0          2m5s
          example-ndb-mysqld-0   1/1     Running   0          78s
          example-ndb-mysqld-1   1/1     Running   0          78s
          example-ndb-ndbmtd-0   1/1     Running   0          3m53s
          example-ndb-ndbmtd-1   1/1     Running   0          3m53s
          ```
          If running inside a openshift cluster, pods from statefulset "example-ndb-mysqld" will not start up. By default openshift runs all the pod with "restricted" scc, but the statefulset "example-ndb-mysqld" required higher privilege. Use the below command to check the exact scc required
          ```
          oc get pods example-ndb-mysqld-0 -o yaml | oc adm policy scc-subject-review -f -
          ```
          Create a user account with the scc and set the user to the statefulset "example-ndb-mysqld". Below commands creates an user with "anyuid" and assign it to the statefulset.
          ```
          oc create sa any-uid-user
          oc adm policy add-scc-to-user anyuid -z any-uid-user
          oc set sa sts example-ndb-mysqld any-uid-user
          ```
          ## Connect to the MySQL Cluster

          The NDB Operator, by default, creates few Services to expose the services offered by the MySQL Cluster nodes within the Kubernetes Cluster.
          ```
          kubectl get services -l mysql.oracle.com/v1=example-ndb
          ```

          The above command will generate an output similar to :
          ```
          NAME                 TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S) AGE
          example-ndb-mgmd     ClusterIP   10.100.207.255   <none>        1186/TCP 5m
          example-ndb-mysqld   ClusterIP   10.103.182.157   <none>        3306/TCP 5m
          example-ndb-ndbmtd   ClusterIP   None             <none>        1186/TCP 5m
          ```

          The NDB Operator will also create a root user with a random password on all the MySQL Servers. The root password will be stored in a K8s Secret which can be retrieved from the NdbCluster object status :
          ```
          kubectl get ndb example-ndb -o jsonpath={.status.generatedRootPasswordSecretName}
          ```

          To extract and decode the password from the Secret :
          ```
          base64 -d <<< \
          $(kubectl get secret example-ndb-mysqld-root-password \
          -o jsonpath={.data.password})
          ```

          One can also specify the password and host to be used with the root account via the NdbCluster spec. See the [CRD documentation](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/NdbCluster-CRD.md#ndbmysqldspec) for more details on this.
          ## Access MySQL Cluster from inside K8s

          To connect to the Management and MySQL Servers from within the Kubernetes Cluster, you can use the example-ndb-mgmd and example-ndb-mysqld services as the MySQL Cluster connectstring and MySQL host respectively. You can also use the mgmd and mysqld pods' hostnames to directly connect to that particular pod. The mysql, ndb_mgm clients and any other ndb tools will work as expected.

          A demonstration is available at [connect-from-inside-k8s-demo.md](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/connect-from-inside-k8s-demo.md).
          ## Access MySQL Cluster from outside K8s

          By default, the Management and MySQL services created by the NDB Operator are of type [ClusterIP](https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types) and are accessible only from within the K8s Cluster. To expose them outside the K8s Cluster, the services have to be upgraded into a LoadBalancer type. This can be done by setting the spec.managementNode.enableLoadBalancer and spec.mysqlNode.enableLoadBalancer fields of the NdbCluster resource to true. These options can be enabled when the NdbCluster resource object is created or via an update to the object when the MySQL Cluster is already running.

          Once enabled, the previously ClusterIP type example-ndb-mgmd and example-ndb-mysqld services will be upgraded to LoadBalancer type, and they will be available at the external IP assigned to them by the cloud provider.

          Another way to access these services without enabling the LoadBalancers support is to use the kubectl port-forward command.

          In both ways, only the mysql and ndb_mgm clients work. Any NDB tool which uses the NDBAPI to connect to the MySQL data nodes will not work as expected from outside the K8s Cluster.

          A demonstration is available at [connect-from-outside-k8s-demo.md](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/connect-from-outside-k8s-demo.md).
          ## Updating MySQL Cluster Configuration

          Once a MySQL Cluster has been deployed by the NDB Operator inside the K8s Cluster, its configuration can be updated by updating the spec of the NdbCluster resource object that represents it. The NDB Operator will pick up any changes made to the NdbCluster resource object and will apply the updated configuration to the respective MySQL Cluster. The NDB Operator takes care of updating the MySQL Cluster config file and restarting all the management/data nodes if required. When the update is being handled by the NdbOperator, it will set the UpToDate condition of the NdbCluster resource object to false and will not accept any further updates until it completes the current one.

          The kubectl get ndb example-ndb command will report the UpToDate status of an NdbCluster. It can be used to check if the current update has been completed.
          ```
          $ kubectl get ndb example-ndb
          NAME          REPLICA   MANAGEMENT NODES   DATA NODES   MYSQL SERVERS AGE   UP-TO-DATE
          example-ndb   2         Ready:2/2          Ready:1/2    Ready:2/2 10m   False
          ```

          The UpToDate condition can also be used to wait for the operator to complete the update.
          ```
          kubectl wait --for=condition=UpToDate ndb example-ndb --timeout=10m
          ```

          Once the update is complete, the UpToDate condition will be set back to true by the operator.
          ```
          $ kubectl get ndb example-ndb
          NAME          REPLICA   MANAGEMENT NODES   DATA NODES   MYSQL SERVERS AGE      UP-TO-DATE
          example-ndb   2         Ready:2/2          Ready:2/2    Ready:2/2 10m50s   True
          ```

          ## Delete a MySQL Cluster

          To stop and remove the MySQL Cluster running inside the K8s Cluster, delete the NdbCluster resource object.
          ```
          kubectl delete -f docs/examples/example-ndb.yaml
          ```

          (or)
          ```
          kubectl delete ndb example-ndb
          ```

          This will delete all the data, the pods running the MySQL Cluster nodes and also delete all other associated K8s resources created by the NDB Operator.
        displayName: Ndb Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mysql
        - ndb
        - in-memory
        links:
        - name: Document
          url: https://dev.mysql.com/doc/ndb-operator/en/
        maintainers:
        - email: paulo.p.silva@oracle.com
          name: paulofasilva
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: MySQL
          url: https://artifacthub.io/packages/helm/mysql-ndb-operator/ndb-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ndb-operator@sha256:5f33c2a8181ea8e91844afd1f4042affbd9eb878266b6b2bcc6906f0829ed00b
        - container-registry.oracle.com/mysql/community-ndb-operator:9.1.0-1.6.0
        version: 1.6.0
      entries:
      - name: ndb-operator.v1.6.0
        version: 1.6.0
      name: alpha
    defaultChannel: alpha
    packageName: ndb-operator
    provider:
      name: MySQL
      url: https://artifacthub.io/packages/helm/mysql-ndb-operator/ndb-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: vault-config-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vault-config-operator.v0.8.37
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Audit",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "audit-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "audit",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "audit-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "options": {
                    "enable_list_responses": "true",
                    "file_path": "stdout",
                    "hmac_accessor": "false"
                  },
                  "path": "audit-sample",
                  "type": "file"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AuditRequestHeader",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "auditrequestheader-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "auditrequestheader",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "auditrequestheader-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "hmac": true,
                  "name": "custom-header"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AuthEngineMount",
                "metadata": {
                  "name": "authenginemount-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "kube-authengine-mount-sample",
                  "type": "kubernetes"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureAuthEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azureauthengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azureauthengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azureauthengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "azureCredentials": {
                    "passwordKey": "clientsecret",
                    "secret": {
                      "name": "aad-credentials"
                    },
                    "usernameKey": "clientid"
                  },
                  "clientID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "environment": "AzurePublicCloud",
                  "maxRetries": 3,
                  "maxRetryDelay": 60,
                  "path": "azure/test",
                  "resource": "https://management.azure.com/",
                  "retryDelay": 4,
                  "tenantID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureAuthEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azureauthenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azureauthenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azureauthenginerole-sample"
                },
                "spec": {
                  "BoundResourceGroups": [
                    "resourcegroup1",
                    "resourcegroup2"
                  ],
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "boundGroupIDs": [
                    "group1",
                    "group2"
                  ],
                  "boundLocations": [
                    "location1",
                    "location2"
                  ],
                  "boundScaleSets": [
                    "scaleset1",
                    "scaleset1"
                  ],
                  "boundServicePrincipalIDs": [
                    "sp1",
                    "sp2"
                  ],
                  "boundSubscriptionIDs": [
                    "subscription1",
                    "subscription2"
                  ],
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "name": "dev-role",
                  "path": "azure",
                  "policies": [
                    "policy1",
                    "policy2"
                  ],
                  "tokenBoundCIDRs": [
                    "10.20.102.13",
                    "10.20.102.15"
                  ],
                  "tokenExplicitMaxTTL": "",
                  "tokenMaxTTL": "",
                  "tokenNoDefaultPolicy": false,
                  "tokenNumUses": 0,
                  "tokenPeriod": 0,
                  "tokenPolicies": [
                    "policy1",
                    "policy2"
                  ],
                  "tokenTTL": "",
                  "tokenType": ""
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureSecretEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azuresecretengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azuresecretengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azuresecretengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "azureCredentials": {
                    "passwordKey": "clientsecret",
                    "secret": {
                      "name": "aad-credentials"
                    },
                    "usernameKey": "clientid"
                  },
                  "clientID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "environment": "AzurePublicCloud",
                  "passwordPolicy": "",
                  "path": "azure",
                  "rootPasswordTTL": "128d",
                  "subscriptionID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
                  "tenantID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureSecretEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azuresecretenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azuresecretenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azuresecretenginerole-sample"
                },
                "spec": {
                  "TTL": "",
                  "applicationObjectID": "",
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "azureGroups": "",
                  "azureRoles": "",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "maxTTL": "",
                  "name": "azure-role",
                  "path": "azure",
                  "permanentlyDelete": "",
                  "persistApp": "",
                  "signInAudience": "",
                  "tags": ""
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "CertAuthEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "certauthengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "certauthengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "certauthengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "name": "test",
                  "path": "cert"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "CertAuthEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "certauthenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "certauthenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "certauthenginerole-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "certificate": "-----BEGIN CERTIFICATE-----\nMIIDJTCCAg2gAwIBAgIUF119kmCNlnMwK6yOOpfRs4JGhAAwDQYJKoZIhvcNAQEL\nBQAwFjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjUwMTIxMTM0MjExWhcNMjYw\nMTIxMTM0MjExWjAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBALad4Sx97VyFSfOepJoXUGYljg7hL+z20pVL2/M8\n8HXAQl4qf/i45b//Qz8VogMxdg3Y9J7O/M0n9hxbL18i1gm270VjEFyzjJCyUq0R\n72WMM4Sr3OjQPnVtJoQkWnH7wR3zsWK2N4NuIPdE3Ofb48Olyachffv7xCI+MLIa\n/adcyRggM4Z5f2nBCMcXL8D/eY03qCgd/U1aaPJ0WyJTZHLL4euL0ewKlKtB1JnU\n4MrRa5mbPQ3B+OhxcaD/7BNV6hPXAe2zftEv8LcimhbVoj3XmLJ+om58YIaEMadk\nJj61xnXbf+F/iV41onzwvTPNWCSWiLowDl8P3zkabuS583sCAwEAAaNrMGkwHQYD\nVR0OBBYEFH971CwrqkTvUz2qrUncWMS5ULwKMB8GA1UdIwQYMBaAFH971CwrqkTv\nUz2qrUncWMS5ULwKMA8GA1UdEwEB/wQFMAMBAf8wFgYDVR0RBA8wDYILZXhhbXBs\nZS5jb20wDQYJKoZIhvcNAQELBQADggEBAIQzT113TQC9BqitOCOoDFCJqcM+BHmf\nITEKlEhlqubPvA40lD4wkz67RP2SdQbF1glzZW5sDTxMjpHL+8nhdmo65CJpsQGP\nyMPwnOvx7W5JWQJa1Yt+48JNhgIymDMun+xwDsjNnlBqp0Kr7HkOxPimMPWN4R6B\nydG96puDGBYqxB1ujx5seOGfGvxPBBr3h8kNg054rtIIDrUG2iUTfpNIILJrd8Q2\nshop9//3VcIpUJO7Z1brvK/Hp4DrcKBZVo7vd8n+5uCx3vBA0tjqNAXYtFnSRvDZ\n6XV+rCZecDBFkaLuJ5YgYEK15gGe6lQAez6DTVLXMAKhZ52kceefnwM=\n-----END CERTIFICATE-----\n",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "name": "test-role",
                  "path": "cert/test"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "DatabaseSecretEngineConfig",
                "metadata": {
                  "name": "my-postgresql-database"
                },
                "spec": {
                  "allowedRoles": [
                    "read-only"
                  ],
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "connectionURL": "postgresql://{{username}}:{{password}}@my-postgresql-database.test-vault-config-operator.svc:5432",
                  "path": "test-vault-config-operator/database",
                  "pluginName": "postgresql-database-plugin",
                  "rootCredentials": {
                    "passwordKey": "postgresql-password",
                    "secret": {
                      "name": "postgresql-admin-password"
                    }
                  },
                  "username": "postgres"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "DatabaseSecretEngineRole",
                "metadata": {
                  "name": "read-only"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "creationStatements": [
                    "CREATE ROLE \"{{name}}\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}'; GRANT SELECT ON ALL TABLES IN SCHEMA public TO \"{{name}}\";"
                  ],
                  "dBName": "my-postgresql-database",
                  "defaultTTL": "1h",
                  "maxTTL": "24h",
                  "path": "test-vault-config-operator/database"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "DatabaseSecretEngineStaticRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "databasesecretenginestaticrole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "databasesecretenginestaticrole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "databasesecretenginestaticrole-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "dBName": "db-name",
                  "path": "test-vault-config-operator/database",
                  "rotationPeriod": "24h",
                  "rotationStatements": [
                    "ALTER ROLE \"{{name}}\" WITH PASSWORD '{{password}}';git add"
                  ],
                  "username": "db-user"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GCPAuthEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "gcpauthengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "gcpauthengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "gcpauthengineconfig-sample"
                },
                "spec": {
                  "GCEalias": "role_id",
                  "GCEmetadata": "default",
                  "GCPCredentials": {
                    "passwordKey": "credentials",
                    "secret": {
                      "name": "gcp-serviceaccount-credentials"
                    },
                    "usernameKey": "serviceaccount"
                  },
                  "IAMalias": "default",
                  "IAMmetadata": "default",
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "customEndpoint": {},
                  "path": "azure",
                  "serviceAccount": "vault-sa"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GCPAuthEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "gcpauthenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "gcpauthenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "gcpauthenginerole-sample"
                },
                "spec": {
                  "addGroupAliases": false,
                  "allowGCEInference": false,
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "boundInstanceGroups": [],
                  "boundLabels": [],
                  "boundProjects": {},
                  "boundRegions": [],
                  "boundServiceAccounts": {},
                  "boundZones": [],
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "maxJWTExp": "",
                  "name": "gcp-iam-role",
                  "path": "gcp",
                  "policies": [],
                  "tokenBoundCIDRs": [],
                  "tokenExplicitMaxTTL": "",
                  "tokenMaxTTL": "",
                  "tokenNoDefaultPolicy": false,
                  "tokenNumUses": 0,
                  "tokenPeriod": 0,
                  "tokenPolicies": [],
                  "tokenTTL": "",
                  "tokenType": "",
                  "type": "iam"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GitHubSecretEngineConfig",
                "metadata": {
                  "name": "githubsecretengineconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GitHubSecretEngineRole",
                "metadata": {
                  "name": "githubsecretenginerole-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Group",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "group-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "group",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "group-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "metadata": {
                    "team": "team-abc"
                  },
                  "policies": [
                    "team-abc-access"
                  ],
                  "type": "external"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupAlias",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "groupalias-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "groupalias",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "groupalias-sample"
                },
                "spec": {
                  "authEngineMountPath": "kubernetes",
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "groupName": "group-sample"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "JWTOIDCAuthEngineConfig",
                "metadata": {
                  "name": "azure-oidc-config"
                },
                "spec": {
                  "OIDCClientID": "000000000-0000-0000-0000-000000000",
                  "OIDCCredentials": {
                    "passwordKey": "oidc_client_secret",
                    "secret": {
                      "name": "oidccredentials"
                    },
                    "usernameKey": "oidc_client_id"
                  },
                  "OIDCDiscoveryURL": "https://login.microsoftonline.com/000000000-0000-0000-0000-000000000/v2.0",
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "oidc/azuread-oidc/"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "JWTOIDCAuthEngineRole",
                "metadata": {
                  "name": "azure-oidc-dev-role"
                },
                "spec": {
                  "OIDCScopes": [
                    "https://graph.microsoft.com/.default"
                  ],
                  "allowedRedirectURIs": [
                    "http://localhost:8250/oidc/callback",
                    "http://localhost:8200/ui/vault/auth/oidc/azuread-oidc/oidc/callback"
                  ],
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "groupsClaim": "groups",
                  "name": "dev-role",
                  "path": "oidc-aad/azuread-oidc",
                  "roleType": "oidc",
                  "tokenPolicies": [
                    "dev",
                    "prod"
                  ],
                  "userClaim": "email"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesAuthEngineConfig",
                "metadata": {
                  "name": "kubernetesauthengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "kube-authengine-mount-sample"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesAuthEngineRole",
                "metadata": {
                  "name": "database-engine-admin"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "kubernetes",
                  "policies": [
                    "database-engine-admin"
                  ],
                  "targetNamespaces": {
                    "targetNamespaceSelector": {
                      "matchLabels": {
                        "database-engine-admin": "true"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesSecretEngineConfig",
                "metadata": {
                  "name": "kubernetessecretengineconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesSecretEngineRole",
                "metadata": {
                  "name": "kubernetessecretenginerole-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "LDAPAuthEngineConfig",
                "metadata": {
                  "name": "ldapauthengineconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "LDAPAuthEngineGroup",
                "metadata": {
                  "name": "ldapauthenginegroup-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin",
                    "serviceAccount": {
                      "name": "default"
                    }
                  },
                  "name": "test-group",
                  "path": "ldap/test"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "PKISecretEngineConfig",
                "metadata": {
                  "name": "pkisecretengineconfig-sample"
                },
                "spec": {
                  "TTL": "8760h",
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "commonName": "pki-vault-demo.internal.io",
                  "crlDistributionPoints": [
                    "https://vault-internal.vault.svc:8200/v1/test-vault-config-operator/pki/crl\""
                  ],
                  "issuingCertificates": [
                    "https://vault-internal.vault.svc:8200/v1/test-vault-config-operator/pki/ca"
                  ],
                  "path": "test-vault-config-operator/pki",
                  "privateKeyType": "internal",
                  "type": "root"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "PKISecretEngineRole",
                "metadata": {
                  "name": "pkisecretenginerole-sample"
                },
                "spec": {
                  "allowGlobDomains": true,
                  "allowSubdomains": true,
                  "allowedDomains": [
                    "internal.io",
                    "pki-vault-demo.svc",
                    "example.com"
                  ],
                  "allowedOtherSans": "*",
                  "allowedURISans": [
                    "*-pki-vault-demo.apps.example.com"
                  ],
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "maxTTL": "8760h",
                  "path": "test-vault-config-operator/pki"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "PasswordPolicy",
                "metadata": {
                  "name": "simple-password-policy"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "passwordPolicy": "length = 20\nrule \"charset\" {\n  charset = \"abcdefghijklmnopqrstuvwxyz\"\n}"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Policy",
                "metadata": {
                  "name": "database-engine-admin"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "policy": "# mount database secrets engines\npath \"/sys/mounts/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n  allowed_parameters = {\n    \"type\" = [\"database\"]\n    \"*\"   = []\n  }\n}\n\n# tune database secrets engines\npath \"/sys/mounts/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database/tune\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n}\n\n# Configure database secrets engines\npath \"/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database/config/+\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n}\n\n# Configure database roles\npath \"/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database/roles/+\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n}\n"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuaySecretEngineConfig",
                "metadata": {
                  "name": "quaysecretengineconfig-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuaySecretEngineRole",
                "metadata": {
                  "name": "quaysecretenginerole-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuaySecretEngineStaticRole",
                "metadata": {
                  "name": "quaysecretenginestaticrole-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "RabbitMQSecretEngineConfig",
                "metadata": {
                  "name": "rabbitmqsecretengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "rabbitMQ-engine-admin"
                  },
                  "connectionURI": "https://test.com",
                  "leaseMaxTTL": 86400,
                  "leaseTTL": 86400,
                  "path": "vault-config-operator/rabbitmq"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "RabbitMQSecretEngineRole",
                "metadata": {
                  "name": "rabbitmqsecretenginerole-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "rabbitmq-engine-admin"
                  },
                  "path": "vault-config-operator/rabbitmq",
                  "tags": "administrator",
                  "vhostTopics": [
                    {
                      "topics": [
                        {
                          "permissions": {
                            "configure": ".*",
                            "read": ".*",
                            "write": ".*"
                          },
                          "topicName": "my-topic"
                        },
                        {
                          "permissions": {
                            "read": ".*"
                          },
                          "topicName": "my-read-topic"
                        }
                      ],
                      "vhostName": "/"
                    }
                  ],
                  "vhosts": [
                    {
                      "permissions": {
                        "configure": ".*",
                        "read": ".*",
                        "write": ".*"
                      },
                      "vhostName": "/"
                    },
                    {
                      "permissions": {
                        "read": "my-queue",
                        "write": "my-exchange"
                      },
                      "vhostName": "my-vhost"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "RandomSecret",
                "metadata": {
                  "name": "randomsecret-password"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "secret-writer"
                  },
                  "path": "test-vault-config-operator/kv",
                  "secretFormat": {
                    "passwordPolicyName": "simple-password-policy"
                  },
                  "secretKey": "password"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "SecretEngineMount",
                "metadata": {
                  "name": "database"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "path": "test-vault-config-operator",
                  "type": "database"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "VaultSecret",
                "metadata": {
                  "name": "vaultsecret-sample"
                },
                "spec": {
                  "output": {
                    "annotations": {
                      "refresh": "every-minute"
                    },
                    "labels": {
                      "app": "test-vault-config-operator"
                    },
                    "name": "randomsecret",
                    "stringData": {
                      "anotherpassword": "{{ .anotherrandomsecret.password }}",
                      "password": "{{ .randomsecret.password }}"
                    },
                    "type": "Opaque"
                  },
                  "refreshPeriod": "3m0s",
                  "vaultSecretDefinitions": [
                    {
                      "authentication": {
                        "path": "kubernetes",
                        "role": "secret-reader",
                        "serviceAccount": {
                          "name": "default"
                        }
                      },
                      "name": "randomsecret",
                      "path": "test-vault-config-operator/kv/randomsecret-password"
                    },
                    {
                      "authentication": {
                        "path": "kubernetes",
                        "role": "secret-reader",
                        "serviceAccount": {
                          "name": "default"
                        }
                      },
                      "name": "anotherrandomsecret",
                      "path": "test-vault-config-operator/kv/another-password"
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/vault-config-operator@sha256:ca58fbf75ceb8f09db43c134ec0f99eafb257e8e0dae80f7cb4298f37e12d486
          createdAt: "2026-01-06T13:45:44Z"
          description: This operator provides primitives to declaratively configure
            Hashicorp Vault.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: vault-config-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/vault-config-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AuditRequestHeader is the Schema for the auditrequestheaders
              API
            displayName: Audit Request Header
            kind: AuditRequestHeader
            name: auditrequestheaders.redhatcop.redhat.io
            version: v1alpha1
          - description: Audit is the Schema for the audits API
            displayName: Audit
            kind: Audit
            name: audits.redhatcop.redhat.io
            version: v1alpha1
          - description: AuthEngineMount is the Schema for the authenginemounts API
            displayName: Auth Engine Mount
            kind: AuthEngineMount
            name: authenginemounts.redhatcop.redhat.io
            version: v1alpha1
          - description: AzureAuthEngineConfig is the Schema for the azureauthengineconfigs
              API
            displayName: Azure Auth Engine Config
            kind: AzureAuthEngineConfig
            name: azureauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: AzureAuthEngineRole is the Schema for the azureauthengineroles
              API
            displayName: Azure Auth Engine Role
            kind: AzureAuthEngineRole
            name: azureauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - kind: AzureSecretEngineConfig
            name: azuresecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: AzureSecretEngineRole is the Schema for the azuresecretengineroles
              API
            displayName: Azure Secret Engine Role
            kind: AzureSecretEngineRole
            name: azuresecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: CertAuthEngineConfig is the Schema for the certauthengineconfigs
              API
            displayName: Cert Auth Engine Config
            kind: CertAuthEngineConfig
            name: certauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: CertAuthEngineRole is the Schema for the certauthengineroles
              API
            displayName: Cert Auth Engine Role
            kind: CertAuthEngineRole
            name: certauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: DatabaseSecretEngineConfig is the Schema for the databasesecretengineconfigs
              API
            displayName: Database Secret Engine Config
            kind: DatabaseSecretEngineConfig
            name: databasesecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: DatabaseSecretEngineRole is the Schema for the databasesecretengineroles
              API
            displayName: Database Secret Engine Role
            kind: DatabaseSecretEngineRole
            name: databasesecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: DatabaseSecretEngineStaticRole is the Schema for the databasesecretenginestaticroles
              API
            displayName: Database Secret Engine Static Role
            kind: DatabaseSecretEngineStaticRole
            name: databasesecretenginestaticroles.redhatcop.redhat.io
            version: v1alpha1
          - description: GCPAuthEngineConfig is the Schema for the gcpauthengineconfigs
              API
            displayName: GCPAuth Engine Config
            kind: GCPAuthEngineConfig
            name: gcpauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: GCPAuthEngineRole is the Schema for the gcpauthengineroles
              API
            displayName: GCPAuth Engine Role
            kind: GCPAuthEngineRole
            name: gcpauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: GitHubSecretEngineConfig is the Schema for the githubsecretengineconfigs
              API
            displayName: Git Hub Secret Engine Config
            kind: GitHubSecretEngineConfig
            name: githubsecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: GitHubSecretEngineRole is the Schema for the githubsecretengineroles
              API
            displayName: Git Hub Secret Engine Role
            kind: GitHubSecretEngineRole
            name: githubsecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: GroupAlias is the Schema for the groupaliases API
            displayName: Group Alias
            kind: GroupAlias
            name: groupaliases.redhatcop.redhat.io
            version: v1alpha1
          - description: Group is the Schema for the groups API
            displayName: Group
            kind: Group
            name: groups.redhatcop.redhat.io
            version: v1alpha1
          - description: JWTOIDCAuthEngineConfig is the Schema for the jwtoidcauthengineconfigs
              API
            displayName: JWTOIDCAuth Engine Config
            kind: JWTOIDCAuthEngineConfig
            name: jwtoidcauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: JWTOIDCAuthEngineRole is the Schema for the jwtoidcauthengineroles
              API
            displayName: JWTOIDCAuth Engine Role
            kind: JWTOIDCAuthEngineRole
            name: jwtoidcauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesAuthEngineConfig is the Schema for the kubernetesauthengineconfigs
              API
            displayName: Kubernetes Auth Engine Config
            kind: KubernetesAuthEngineConfig
            name: kubernetesauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesAuthEngineRole can be used to define a KubernetesAuthEngineRole
              for the kube-auth authentication method
            displayName: Kubernetes Auth Engine Role
            kind: KubernetesAuthEngineRole
            name: kubernetesauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesSecretEngineConfig is the Schema for the kubernetessecretengineconfigs
              API
            displayName: Kubernetes Secret Engine Config
            kind: KubernetesSecretEngineConfig
            name: kubernetessecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesSecretEngineRole is the Schema for the kubernetessecretengineroles
              API
            displayName: Kubernetes Secret Engine Role
            kind: KubernetesSecretEngineRole
            name: kubernetessecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: LDAPAuthEngineConfig is the Schema for the ldapauthengineconfigs
              API
            displayName: LDAPAuth Engine Config
            kind: LDAPAuthEngineConfig
            name: ldapauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: LDAPAuthEngineGroup is the Schema for the ldapauthenginegroups
              API
            displayName: LDAPAuth Engine Group
            kind: LDAPAuthEngineGroup
            name: ldapauthenginegroups.redhatcop.redhat.io
            version: v1alpha1
          - description: PasswordPolicy is the Schema for the passwordpolicies API
            displayName: Password Policy
            kind: PasswordPolicy
            name: passwordpolicies.redhatcop.redhat.io
            version: v1alpha1
          - description: PKISecretEngineConfig is the Schema for the pkisecretengineconfigs
              API
            displayName: PKISecret Engine Config
            kind: PKISecretEngineConfig
            name: pkisecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: PKISecretEngineRole is the Schema for the pkisecretengineroles
              API
            displayName: PKISecret Engine Role
            kind: PKISecretEngineRole
            name: pkisecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: Policy is the Schema for the policies API
            displayName: Policy
            kind: Policy
            name: policies.redhatcop.redhat.io
            version: v1alpha1
          - description: QuaySecretEngineConfig is the Schema for the quaysecretengineconfigs
              API
            displayName: Quay Secret Engine Config
            kind: QuaySecretEngineConfig
            name: quaysecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: QuaySecretEngineRole is the Schema for the quaysecretengineroles
              API
            displayName: Quay Secret Engine Role
            kind: QuaySecretEngineRole
            name: quaysecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: QuaySecretEngineStaticRole is the Schema for the quaysecretenginestaticroles
              API
            displayName: Quay Secret Engine Static Role
            kind: QuaySecretEngineStaticRole
            name: quaysecretenginestaticroles.redhatcop.redhat.io
            version: v1alpha1
          - description: RabbitMQSecretEngineConfig is the Schema for the rabbitmqsecretengineconfigs
              API
            displayName: Rabbit MQSecret Engine Config
            kind: RabbitMQSecretEngineConfig
            name: rabbitmqsecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: RabbitMQSecretEngineRole is the Schema for the rabbitmqsecretengineroles
              API
            displayName: Rabbit MQSecret Engine Role
            kind: RabbitMQSecretEngineRole
            name: rabbitmqsecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: RandomSecret is the Schema for the randomsecrets API
            displayName: Random Secret
            kind: RandomSecret
            name: randomsecrets.redhatcop.redhat.io
            version: v1alpha1
          - description: SecretEngineMount is the Schema for the secretenginemounts
              API
            displayName: Secret Engine Mount
            kind: SecretEngineMount
            name: secretenginemounts.redhatcop.redhat.io
            version: v1alpha1
          - description: VaultSecret is the Schema for the vaultsecrets API
            displayName: Vault Secret
            kind: VaultSecret
            name: vaultsecrets.redhatcop.redhat.io
            version: v1alpha1
        description: |
          This operator helps set up Vault Configurations. The main intent is to do so such that subsequently pods can consume the secrets made available.
          There are two main principles through all of the capabilities of this operator:

          1. high-fidelity API. The CRD exposed by this operator reflect field by field the Vault APIs. This is because we don't want to make any assumption on the kinds of configuration workflow that user will set up. That being said the Vault API is very extensive and we are starting with enough API coverage to support, we think, some simple and very common configuration workflows.
          2. attention to security (after all we are integrating with a security tool). To prevent credential leaks we give no permissions to the operator itself against Vault. All APIs exposed by this operator contains enough information to authenticate to Vault using a local service account (local to the namespace where the API exist). In other word for a namespace user to be abel to successfully configure Vault, a service account in that namespace must have been previously given the needed Vault permissions.

          Currently this operator supports the following CRDs:

          1. [Policy](https://github.com/redhat-cop/vault-config-operator#policy) Configures Vault [Policies](https://www.vaultproject.io/docs/concepts/policies)
          2. [KubernetesAuthEngineRole](https://github.com/redhat-cop/vault-config-operator#KubernetesAuthEngineRole) Configures a Vault [Kubernetes Authentication](https://www.vaultproject.io/docs/auth/kubernetes) Role
          3. [SecretEngineMount](https://github.com/redhat-cop/vault-config-operator#SecretEngineMount) Configures a Mount point for a [SecretEngine](https://www.vaultproject.io/docs/secrets)
          4. [DatabaseSecretEngineConfig](https://github.com/redhat-cop/vault-config-operator#DatabaseSecretEngineConfig) Configures a [Database Secret Engine](https://www.vaultproject.io/docs/secrets/databases) Connection
          5. [DatabaseSecretEngineRole](https://github.com/redhat-cop/vault-config-operator#DatabaseSecretEngineRole) Configures a [Database Secret Engine](https://www.vaultproject.io/docs/secrets/databases) Role
          6. [RandomSecret](https://github.com/redhat-cop/vault-config-operator#RandomSecret) Creates a random secret in a vault [kv Secret Engine](https://www.vaultproject.io/docs/secrets/kv) with one password field generated using a [PasswordPolicy](https://www.vaultproject.io/docs/concepts/password-policies)vault-config-operator
        displayName: Vault Config Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - secrets
        - gitops
        - policy
        - credentials
        links:
        - name: Vault Config Operator
          url: https://github.com/redhat-cop/vault-config-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/vault-config-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/redhat-cop/vault-config-operator@sha256:ca58fbf75ceb8f09db43c134ec0f99eafb257e8e0dae80f7cb4298f37e12d486
        - quay.io/community-operator-pipeline-prod/vault-config-operator@sha256:b2dc0c534d0cae9349d3cf2971d65725bad41fc3de8082ba43ec915152e08c8b
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 0.8.37
      entries:
      - name: vault-config-operator.v0.8.37
        version: 0.8.37
      - name: vault-config-operator.v0.8.36
        version: 0.8.36
      - name: vault-config-operator.v0.8.35
        version: 0.8.35
      - name: vault-config-operator.v0.8.34
        version: 0.8.34
      - name: vault-config-operator.v0.8.33
        version: 0.8.33
      - name: vault-config-operator.v0.8.32
        version: 0.8.32
      - name: vault-config-operator.v0.8.31
        version: 0.8.31
      - name: vault-config-operator.v0.8.30
        version: 0.8.30
      - name: vault-config-operator.v0.8.29
        version: 0.8.29
      - name: vault-config-operator.v0.8.28
        version: 0.8.28
      - name: vault-config-operator.v0.8.27
        version: 0.8.27
      - name: vault-config-operator.v0.8.25
        version: 0.8.25
      - name: vault-config-operator.v0.8.24
        version: 0.8.24
      - name: vault-config-operator.v0.8.23
        version: 0.8.23
      - name: vault-config-operator.v0.8.22
        version: 0.8.22
      - name: vault-config-operator.v0.8.21
        version: 0.8.21
      - name: vault-config-operator.v0.8.20
        version: 0.8.20
      - name: vault-config-operator.v0.8.19
        version: 0.8.19
      - name: vault-config-operator.v0.8.18
        version: 0.8.18
      - name: vault-config-operator.v0.8.17
        version: 0.8.17
      - name: vault-config-operator.v0.8.16
        version: 0.8.16
      - name: vault-config-operator.v0.8.15
        version: 0.8.15
      - name: vault-config-operator.v0.8.14
        version: 0.8.14
      - name: vault-config-operator.v0.8.13
        version: 0.8.13
      - name: vault-config-operator.v0.8.12
        version: 0.8.12
      - name: vault-config-operator.v0.8.11
        version: 0.8.11
      - name: vault-config-operator.v0.8.10
        version: 0.8.10
      - name: vault-config-operator.v0.8.9
        version: 0.8.9
      - name: vault-config-operator.v0.8.7
        version: 0.8.7
      - name: vault-config-operator.v0.8.5
        version: 0.8.5
      - name: vault-config-operator.v0.8.4
        version: 0.8.4
      - name: vault-config-operator.v0.8.3
        version: 0.8.3
      - name: vault-config-operator.v0.8.2
        version: 0.8.2
      - name: vault-config-operator.v0.8.0
        version: 0.8.0
      - name: vault-config-operator.v0.7.1
        version: 0.7.1
      - name: vault-config-operator.v0.6.5
        version: 0.6.5
      - name: vault-config-operator.v0.6.4
        version: 0.6.4
      - name: vault-config-operator.v0.6.3
        version: 0.6.3
      - name: vault-config-operator.v0.6.2
        version: 0.6.2
      - name: vault-config-operator.v0.6.1
        version: 0.6.1
      - name: vault-config-operator.v0.6.0
        version: 0.6.0
      - name: vault-config-operator.v0.5.1
        version: 0.5.1
      - name: vault-config-operator.v0.5.0
        version: 0.5.0
      - name: vault-config-operator.v0.4.1
        version: 0.4.1
      - name: vault-config-operator.v0.4.0
        version: 0.4.0
      - name: vault-config-operator.v0.3.1
        version: 0.3.1
      - name: vault-config-operator.v0.3.0
        version: 0.3.0
      - name: vault-config-operator.v0.2.0
        version: 0.2.0
      - name: vault-config-operator.v0.1.2
        version: 0.1.2
      - name: vault-config-operator.v0.1.1
        version: 0.1.1
      - name: vault-config-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: vault-config-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Kepler Operator Contributors
      provider-url: https://sustainable-computing.io/
    name: kepler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kepler-operator.v0.23.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kepler.system.sustainable.computing.io/v1alpha1",
                "kind": "PowerMonitor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "powermonitor",
                    "app.kubernetes.io/name": "powermonitor",
                    "app.kubernetes.io/part-of": "kepler-operator"
                  },
                  "name": "power-monitor"
                },
                "spec": {
                  "kepler": {
                    "config": {
                      "logLevel": "info"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          containerImage: quay.io/sustainable_computing_io/kepler-operator:0.23.0
          createdAt: "2025-11-27T12:36:15Z"
          description: Deploys and Manages Kepler on Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: |-
            [
              "powermonitorinternals.kepler.system.sustainable.computing.io"
            ]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/sustainable-computing-io/kepler-operator
          support: https://github.com/sustainable-computing-io/kepler-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PowerMonitorInternal is the Schema for internal/unsupported
              API
            displayName: PowerMonitorInternal
            kind: PowerMonitorInternal
            name: powermonitorinternals.kepler.system.sustainable.computing.io
            version: v1alpha1
          - description: PowerMonitor is the Schema for the powermonitors API
            displayName: PowerMonitor
            kind: PowerMonitor
            name: powermonitors.kepler.system.sustainable.computing.io
            version: v1alpha1
        description: |-
          Kepler (Kubernetes-based Efficient Power Level Exporter) is a Prometheus exporter that
          measures energy consumption metrics at the container, pod, and node level in Kubernetes clusters.

          ### Prerequisites
          To view the metrics exposed by Kepler, **[User Workload Monitoring](https://docs.redhat.com/documentation/openshift_container_platform/latest/html/monitoring/configuring-user-workload-monitoring)**
          MUST be enabled in your cluster.

          ### Documentation
          * [User Documentation](https://github.com/sustainable-computing-io/kepler-operator/blob/main/README.md)
          * [Developer Guide](https://github.com/sustainable-computing-io/kepler-operator/tree/main/docs/developer)

          ### Contributing
          * [Report Bugs](https://github.com/sustainable-computing-io/kepler-operator/issues/new?template=bug_report.md) - Found a bug? Let us know!
          * [Browse Issues](https://github.com/sustainable-computing-io/kepler-operator/issues) - See what we're working on

          ### License
          Licensed under [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
        displayName: Kepler
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Kepler
        - power
        - energy
        - monitoring
        links:
        - name: Installation Guide
          url: https://sustainable-computing.io/installation/community-operator/
        - name: Kepler Project
          url: https://sustainable-computing.io/
        maintainers:
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: vprashar@redhat.com
          name: Vibhu Prashar
        - email: vimalkum@redhat.com
          name: Vimal Kumar
        - email: kaliu@redhat.com
          name: Kaiyi Liu
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Kepler Operator Contributors
          url: https://sustainable-computing.io/
        relatedImages:
        - quay.io/sustainable_computing_io/kepler:v0.11.3
        - quay.io/brancz/kube-rbac-proxy:v0.19.0
        - quay.io/community-operator-pipeline-prod/kepler-operator:0.23.0
        - quay.io/sustainable_computing_io/kepler-operator:0.23.0
        version: 0.23.0
      entries:
      - name: kepler-operator.v0.23.0
        version: 0.23.0
      - name: kepler-operator.v0.22.0
        version: 0.22.0
      - name: kepler-operator.v0.21.0
        version: 0.21.0
      - name: kepler-operator.v0.20.0
        version: 0.20.0
      name: alpha
    defaultChannel: alpha
    packageName: kepler-operator
    provider:
      name: Kepler Operator Contributors
      url: https://sustainable-computing.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app: enmasse
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: amq-online
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-online.1.7.4-0.1657725339.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "admin.enmasse.io/v1beta1",
                "kind": "StandardInfraConfig",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "broker": {
                    "resources": {
                      "memory": "1Gi",
                      "storage": "5Gi"
                    },
                    "addressFullPolicy": "FAIL"
                  },
                  "router": {
                    "linkCapacity": 50,
                    "resources": {
                      "memory": "512Mi"
                    }
                  }
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta1",
                "kind": "BrokeredInfraConfig",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "broker": {
                    "resources": {
                      "memory": "4Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta2",
                "kind": "AddressPlan",
                "metadata": {
                  "name": "standard-small-queue"
                },
                "spec": {
                  "addressType": "queue",
                  "shortDescription": "Small Queue",
                  "resources": {
                    "router": 0.01,
                    "broker": 0.1
                  }
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta2",
                "kind": "AddressSpacePlan",
                "metadata": {
                  "name": "standard-small"
                },
                "spec": {
                  "addressSpaceType": "standard",
                  "infraConfigRef": "default",
                  "shortDescription": "Small Address Space Plan",
                  "resourceLimits": {
                    "router": 1.0,
                    "broker": 2.0,
                    "aggregate": 2.0
                  },
                  "addressPlans": [
                    "standard-small-queue"
                  ]
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta1",
                "kind": "AuthenticationService",
                "metadata": {
                  "name": "standard-authservice"
                },
                "spec": {
                  "type": "standard",
                  "standard": {
                    "storage": {
                      "claimName": "standard-authservice",
                      "deleteClaim": true,
                      "size": "1Gi",
                      "type": "persistent-claim"
                    }
                  }
                }
              },
              {
                "apiVersion": "enmasse.io/v1beta1",
                "kind": "AddressSpace",
                "metadata": {
                  "name": "myspace"
                },
                "spec": {
                  "plan": "standard-small",
                  "type": "standard"
                }
              },
              {
                "apiVersion": "enmasse.io/v1beta1",
                "kind": "Address",
                "metadata": {
                  "name": "myspace.myqueue"
                },
                "spec": {
                  "address": "myqueue",
                  "plan": "standard-small-queue",
                  "type": "queue"
                }
              },
              {
                "apiVersion": "user.enmasse.io/v1beta1",
                "kind": "MessagingUser",
                "metadata": {
                  "name": "myspace.user"
                },
                "spec": {
                  "authentication": {
                    "password": "ZW5tYXNzZQ==",
                    "type": "password"
                  },
                  "authorization": [
                    {
                      "addresses": [
                        "myqueue"
                      ],
                      "operations": [
                        "send",
                        "recv"
                      ]
                    }
                  ],
                  "username": "user"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator@sha256:2aaf87224a96aa56dc595e96d8e7ec8d138aaf20240afa25a1e805b405941355
          createdAt: "2019-02-19T00:00:00Z"
          description: Red Hat Integration - AMQ Online provides messaging as a managed
            service on OpenShift
          olm.substitutesFor: amq-online.1.7.4
          operators.openshift.io/capability: '["license-required"]'
          operators.openshift.io/valid-licenses: '["Red Hat AMQ", "Red Hat Integration"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: ""
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A messaging user that can connect to an Address Space
            displayName: Messaging User
            kind: MessagingUser
            name: messagingusers.user.enmasse.io
            version: v1beta1
          - description: A resource representing the available schema of plans and
              authentication services
            displayName: AddressSpaceSchema
            kind: AddressSpaceSchema
            name: addressspaceschemas.enmasse.io
            version: v1beta1
          - description: A group of messaging addresses that can be accessed via the
              same endpoint
            displayName: Address Space
            kind: AddressSpace
            name: addressspaces.enmasse.io
            version: v1beta1
          - description: A messaging address that can be used to send/receive messages
              to/from
            displayName: Address
            kind: Address
            name: addresses.enmasse.io
            version: v1beta1
          - description: Infrastructure configuration template for the standard address
              space type
            displayName: Standard Infra Config
            kind: StandardInfraConfig
            name: standardinfraconfigs.admin.enmasse.io
            version: v1beta1
          - description: Infrastructure configuration template for the brokered address
              space type
            displayName: Brokered Infra Config
            kind: BrokeredInfraConfig
            name: brokeredinfraconfigs.admin.enmasse.io
            version: v1beta1
          - description: Plan describing the resource usage of a given address type
            displayName: Address Plan
            kind: AddressPlan
            name: addressplans.admin.enmasse.io
            version: v1beta2
          - description: Plan describing the capabilities and resource limits of a
              given address space type
            displayName: Address Space Plan
            kind: AddressSpacePlan
            name: addressspaceplans.admin.enmasse.io
            version: v1beta2
          - description: Authentication service configuration available to address
              spaces.
            displayName: Authentication Service
            kind: AuthenticationService
            name: authenticationservices.admin.enmasse.io
            version: v1beta1
          - description: Console Service Singleton for deploying global console.
            displayName: Console Service
            kind: ConsoleService
            name: consoleservices.admin.enmasse.io
            version: v1beta1
        description: "**Red Hat Integration - AMQ Online** provides messaging as a
          managed service on OpenShift.\nWith Red Hat Integration - AMQ Online, administrators
          can configure a cloud-native,\nmulti-tenant messaging service either in
          the cloud or on premise.\nDevelopers can provision messaging using the Red
          Hat Integration - AMQ Online Console.\nMultiple development teams can provision
          the brokers and queues from the\nconsole, without requiring each team to
          install, configure, deploy,\nmaintain, or patch any software. \n\n**The
          core capabilities include:**\n\n  * **Built-in authentication and authorization**
          - Use the built-in authentication service or\n    plug in your own authentication
          service for authentication and\n    authorization of messaging clients.\n\n
          \ * **Self-service messaging for applications** - The service administrator
          deploys\n    and manages the messaging infrastructure, while applications
          can request\n    messaging resources regardless of the messaging infrastructure.\n\n
          \ * **Support for a wide variety of messaging patterns** - Choose between\n
          \   JMS-style messaging with strict guarantees, or messaging that supports\n
          \   a larger number of connections and higher throughput.\n\n## Post-installation
          tasks\n\nTo fully use Red Hat Integration - AMQ Online, you need to create
          a few\ninfrastructure components after the installation, including:\n\n
          \ * An authentication service\n  * Infrastructure configuration for the
          standard and brokered address space\n  * Address and address space plans\n
          \ * (Optional) Create RBAC roles to allow users to discover available plans\n
          \ * (Optional) Create RBAC roles to allow users to self-manage addresses
          and\n    address spaces.\n\nFor a complete overview of how to configure
          Red Hat Integration - AMQ Online, see\n[Configuring Red Hat Integration
          - AMQ Online](https://access.redhat.com/documentation/en-us/red_hat_amq/7.7/html/installing_and_managing_amq_online_on_openshift/configuring-messaging).\n\n###
          Quickstart infrastructure configuration\n\nIf you simply want to get started
          quickly, you can import the following\nYAML by saving the content to a file
          and apply it by running the \n`oc apply -f <file>` command. You can also
          split the content (at the `---` marker)\nand import the single YAML document
          using the Web UI: \n\n~~~yaml\n---\napiVersion: admin.enmasse.io/v1beta1\nkind:
          StandardInfraConfig\nmetadata:\n  name: default\n---\napiVersion: admin.enmasse.io/v1beta2\nkind:
          AddressPlan\nmetadata:\n  name: standard-small-queue\nspec:\n  addressType:
          queue\n  resources:\n    router: 0.01\n    broker: 0.1\n---\napiVersion:
          admin.enmasse.io/v1beta2\nkind: AddressSpacePlan\nmetadata:\n  name: standard-small\nspec:\n
          \ addressSpaceType: standard\n  infraConfigRef: default\n  addressPlans:\n
          \ - standard-small-queue\n  resourceLimits:\n    router: 2.0\n    broker:
          3.0\n    aggregate: 4.0\n---\napiVersion: admin.enmasse.io/v1beta1\nkind:
          AuthenticationService\nmetadata:\n  name: standard-authservice\nspec:\n
          \ type: standard\n  standard:\n    storage:\n      claimName: standard-authservice\n
          \     deleteClaim: true\n      size: 1Gi\n      type: persistent-claim\n~~~\n\n###
          Create RBAC roles to allow users to discover available plans\n\nFor users
          to discover the available plans, cluster-wide roles to read the available\nschema
          can be created.  Import the following YAML by saving the content to a file
          and apply it by running the \n`oc apply -f <file>` command. You can also
          split the content (at the `---` marker)\nand import the single YAML document
          using the Web UI: \n\n~~~yaml\n---\napiVersion: rbac.authorization.k8s.io/v1\nkind:
          ClusterRole\nmetadata:\n  name: enmasse.io:schema\n  labels:\n    app: enmasse\nrules:\n
          \ - apiGroups: [ \"enmasse.io\" ]\n    resources: [ \"addressspaceschemas\"
          ]\n    verbs: [ \"get\", \"list\", \"watch\" ]\n---\napiVersion: rbac.authorization.k8s.io/v1\nkind:
          ClusterRoleBinding\nmetadata:\n  name: \"enmasse.io:schema\"\n  labels:\n
          \   app: enmasse\nroleRef:\n  apiGroup: rbac.authorization.k8s.io\n  kind:
          ClusterRole\n  name: enmasse.io:schema\nsubjects:\n- kind: Group\n  name:
          system:authenticated\n~~~\n\n### Creating infrastructure using the Web UI\n\nYou
          must create a new instance of each of the following custom resources. You
          can\nuse the example data directly, which is provided when using the\nWeb
          UI:\n\n  * *Authentication Service* – Create an authentication service.\n
          \ * *Brokered Infra Config* – Create the broker infrastructure configuration.\n
          \ * *Standard Infra Config* – Create the standard infrastructure\n    configuration.\n\nYou
          must also create at least one address space plan and one address plan.\n\n*Note*:
          The name of the address space plan and address plan is required\nlater when
          creating new addresses. Some examples use specific plan\nnames, which might
          not be available in your environment. You can\ncreate those plans, or edit
          the examples to use different plan names.\n\n## Configuration for messaging
          tenants\n\nWhile service administrators perform the infrastructure configuration,
          the following\nresources are for the actual users of the system, the messaging
          tenants.\n\nYou need to create those resources to satisfy your particular
          use case.\n\n  * *Address space* – A container for addresses\n  * *Address*
          – A messaging address (address, topic, queue, and so on)\n  * *Messaging
          user* – Manages access to an address\n"
        displayName: Red Hat Integration - AMQ Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - amq
        - messaging
        - amqp
        - iot
        - mqtt
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/7.7/html/using_amq_online_on_openshift/index
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-broker@sha256:1ec0437bbd82722148fdbb02dc55682b114c311cd6f521a8bc621a8c1cb4b32b
        - registry.redhat.io/amq7/amq-online-1-address-space-controller@sha256:9acc555c8e869aec7d72f53b60320e1a96cc82d748638e0d50970837229fdbee
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator@sha256:2aaf87224a96aa56dc595e96d8e7ec8d138aaf20240afa25a1e805b405941355
        - registry.redhat.io/amq7/amq-online-1-broker-plugin@sha256:2466a336c0d78b196635de3fad636aeff2d9265839f7271b8ef94f3ba97d9bc0
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator-metadata@sha256:d6d0e71f5451e8255edfff87ef28ba7743fe7057efd53b25bbbd01bf9e1d0307
        - registry.redhat.io/amq7/amq-online-1-console-server-rhel7@sha256:1dcb3d0cc7bc6e84f4f96962ff88849511b7a7686a1f5dbd9300c4c2c8c05e2f
        - registry.redhat.io/amq7/amq-online-1-auth-plugin@sha256:68926f434b2f6ce4d9698938bc3c53d514c21c3f76c73b6b4cdf7fcf51f7cb0d
        - registry.redhat.io/amq7/amq-online-1-console-init@sha256:0970804909b82fdc3d4e7d5d88280e41157d743107de8bfa2d1baa1367543176
        - registry.redhat.io/amq7/amq-interconnect@sha256:5ebd4c4a0ed0db2725ae466550c915531b32933c420344cc2083c616da3f326f
        - registry.redhat.io/amq7/amq-online-1-none-auth-service@sha256:a013fb1806c002b408a7753ff943cee24fbcdf8a657eff1e9582c42b5a7b0844
        - registry.redhat.io/amq7/amq-online-1-topic-forwarder@sha256:de33a701339d91a4e9275f7cf65f917ff75368a59b8ab36dd66c90bc306875aa
        - registry.redhat.io/amq7/amq-online-1-standard-controller@sha256:070349af30cec52fa8efc185fc940077a64bb40e3e36310d7cc6e39ce0971436
        - registry.redhat.io/openshift3/oauth-proxy@sha256:59b20f23c03d0012ec5c95c4725892ee64277c22dedc9d0a90a7b6b0bc80fc72
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6d489a7897bd831ec273034f1ff0e223427a40afd01b9835ebb020a8bf9ddc66
        - registry.redhat.io/redhat-sso-7/sso73-openshift@sha256:18d15980f28f0d0c6b8582131a1f062d84463577512875b5391a612c3d7d1096
        - registry.redhat.io/amq7/amq-online-1-agent@sha256:f98ed8ee97ac59d8fdd40ec8b2c063a5afd360a3e183057c186e7a77a32801ee
        version: 1.7.4+0.1657725339.p
      entries:
      - name: amq-online.1.7.4
        version: 1.7.4
      - name: amq-online.1.7.4-0.1657725339.p
        version: 1.7.4+0.1657725339.p
      - name: amq-online.1.7.3
        version: 1.7.3
      - name: amq-online.1.7.2
        version: 1.7.2
      - name: amq-online.1.7.1
        version: 1.7.1
      - name: amq-online.1.7.1-0.1628610187.p
        version: 1.7.1+0.1628610187.p
      - name: amq-online.1.7.0
        version: 1.7.0
      name: stable
    defaultChannel: stable
    packageName: amq-online
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: tang-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tang-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "daemons.redhat.com/v1alpha1",
                "kind": "TangServer",
                "metadata": {
                  "finalizers": [
                    "finalizer.daemons.tangserver.redhat.com"
                  ],
                  "name": "tangserver",
                  "namespace": "nbde"
                },
                "spec": {
                  "healthScript": "/usr/bin/tangd-health-check",
                  "image": "registry.redhat.io/rhel9/tang",
                  "keyPath": "/var/db/tang",
                  "persistentVolumeClaim": "tangserver-pvc",
                  "replicas": 1,
                  "version": "latest"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:f43c96035f43040b3644e37119a3b35fc433f366d4b636459d1b9b02a05b5d3d
          createdAt: 2023-11-23T12:49:40
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TangServer is the Schema for the tangservers API
            displayName: Tang Server
            kind: TangServer
            name: tangservers.daemons.redhat.com
            version: v1alpha1
        description: NBDE Tang Server operator allows Tang Server deployment on OpenShift
        displayName: NBDE Tang Server
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nbde
        - tang
        links:
        - name: Tang Operator
          url: https://github.com/latchset/tang-operator
        maintainers:
        - email: sarroutb@redhat.com
          name: Sergio Arroutbi Braojos
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/nbde-tang-server/tang-operator-bundle@sha256:a77d39ded03271f2deb8b438abd4328a1846ee0d4886cce14d869ba61f84d600
        - registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:f43c96035f43040b3644e37119a3b35fc433f366d4b636459d1b9b02a05b5d3d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:97cade2c1ee468261aec5400728c8d44de387b459134aec7a4c3b5ec5a335d2c
        version: 1.0.0
      entries:
      - name: tang-operator.v1.0.0
        version: 1.0.0
      name: alpha
    - currentCSV: tang-operator.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "daemons.redhat.com/v1alpha1",
                "kind": "TangServer",
                "metadata": {
                  "finalizers": [
                    "finalizer.daemons.tangserver.redhat.com"
                  ],
                  "name": "tangserver",
                  "namespace": "nbde"
                },
                "spec": {
                  "healthScript": "/usr/bin/tangd-health-check",
                  "image": "registry.redhat.io/rhel9/tang",
                  "keyPath": "/var/db/tang",
                  "persistentVolumeClaim": "tangserver-pvc",
                  "replicas": 1,
                  "version": "latest"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:1cb2f794689817282ac570cacb106d75a2751a1926d89d3b83b619e02d869e5e
          createdAt: 2024-12-04T19:01:27
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TangServer is the Schema for the tangservers API
            displayName: Tang Server
            kind: TangServer
            name: tangservers.daemons.redhat.com
            version: v1alpha1
        description: NBDE Tang Server operator allows Tang Server deployment on OpenShift
        displayName: NBDE Tang Server
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nbde
        - tang
        links:
        - name: Tang Operator
          url: https://github.com/latchset/tang-operator
        maintainers:
        - email: sarroutb@redhat.com
          name: Sergio Arroutbi Braojos
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/nbde-tang-server/tang-operator-bundle@sha256:a6f3a3a8aa52de4441ef3249a76dcff1b6b6defba417a9fdbba37eb458adee04
        - registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:1cb2f794689817282ac570cacb106d75a2751a1926d89d3b83b619e02d869e5e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1172e150fff22c5eeab572f26961f3f53fbf896ee76d08c7503cfe2777c55458
        version: 1.0.3
      entries:
      - name: tang-operator.v1.0.3
        version: 1.0.3
      name: stable
    defaultChannel: alpha
    packageName: tang-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: SAP LinuxLab - Red Hat
      provider-url: https://github.com/sap-linuxlab
    name: sap-hana-express-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sap-hana-express-operator.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "db.sap-redhat.io/v1alpha1",
                "kind": "HanaExpress",
                "metadata": {
                  "name": "hanaexpress-sample"
                },
                "spec": {
                  "credential": {
                    "key": "hxepasswd.json",
                    "name": "hxepasswd"
                  },
                  "pvcSize": "1Gi"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/redhat-sap-cop/sap-hanaexpress-operator:0.1.4
          createdAt: "2023-07-16T20:53:02Z"
          description: Manage the lifecycle of SAP Hana Express
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HanaExpress is the Schema for the hanaexpresses API
            displayName: Hana Express
            kind: HanaExpress
            name: hanaexpresses.db.sap-redhat.io
            version: v1alpha1
        description: Operator for managing the lifecycle of SAP Hana Express on Kubernetes
          platform
        displayName: SAP Hana Express Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Database
        - SAP
        links:
        - name: Sap Hana Express Operator
          url: https://github.com/redhat-sap/sap-hana-express-operator
        maintainers:
        - email: mjiao@redhat.com
          name: RedHat@SAPLinuxLab
        maturity: alpha
        provider:
          name: SAP LinuxLab - Red Hat
          url: https://github.com/sap-linuxlab
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/openshift-community-operators/sap-hana-express-operator@sha256:0fa4f29bd7669690be87a08405bed95d3ead2293a125b28149de2b10b02d2cd6
        - quay.io/redhat-sap-cop/sap-hanaexpress-operator:0.1.4
        version: 1.0.2
      entries:
      - name: sap-hana-express-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: sap-hana-express-operator
    provider:
      name: SAP LinuxLab - Red Hat
      url: https://github.com/sap-linuxlab
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/limitador-operator
    name: limitador-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: limitador-operator.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "limitador.kuadrant.io/v1alpha1",
                "kind": "Limitador",
                "metadata": {
                  "name": "limitador-sample"
                },
                "spec": {
                  "limits": [
                    {
                      "conditions": [
                        "get_toy == 'yes'"
                      ],
                      "max_value": 2,
                      "namespace": "toystore-app",
                      "seconds": 30,
                      "variables": []
                    }
                  ],
                  "listener": {
                    "grpc": {
                      "port": 8081
                    },
                    "http": {
                      "port": 8080
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/limitador-operator:v0.5.0
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/limitador-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Limitador
            name: limitadors.limitador.kuadrant.io
            version: v1alpha1
        description: The Limitador operator installs and maintains limitador instances
        displayName: Limitador
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - rate-limit
        links:
        - name: Limitador Operator
          url: https://github.com/Kuadrant/limitador-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: asnaps@redhat.com
          name: Alex Snaps
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/limitador-operator
        relatedImages:
        - quay.io/kuadrant/limitador:v1.2.0
        - quay.io/openshift-community-operators/limitador-operator@sha256:7aa0a4fe55e5e099e2e6e4c2cd44b9bfeba69d8cfade10500ccba3092fb60dd2
        - quay.io/kuadrant/limitador-operator:v0.5.0
        version: 0.5.0
      entries:
      - name: limitador-operator.v0.5.0
        version: 0.5.0
      - name: limitador-operator.v0.4.0
        version: 0.4.0
      - name: limitador-operator.v0.3.0
        version: 0.3.0
      name: alpha
    - currentCSV: limitador-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "limitador.kuadrant.io/v1alpha1",
                "kind": "Limitador",
                "metadata": {
                  "name": "limitador-sample"
                },
                "spec": {
                  "limits": [
                    {
                      "conditions": [
                        "get_toy == 'yes'"
                      ],
                      "max_value": 2,
                      "name": "toy_get_route",
                      "namespace": "toystore-app",
                      "seconds": 30,
                      "variables": []
                    }
                  ],
                  "listener": {
                    "grpc": {
                      "port": 8081
                    },
                    "http": {
                      "port": 8080
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/limitador-operator:v0.11.0
          createdAt: "2024-10-02T10:46:31Z"
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/limitador-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Limitador
            name: limitadors.limitador.kuadrant.io
            version: v1alpha1
        description: The Limitador operator installs and maintains limitador instances
        displayName: Limitador
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - rate-limit
        links:
        - name: Limitador Operator
          url: https://github.com/Kuadrant/limitador-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: asnaps@redhat.com
          name: Alex Snaps
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/limitador-operator
        relatedImages:
        - quay.io/kuadrant/limitador:v1.6.0
        - quay.io/community-operator-pipeline-prod/limitador-operator@sha256:450f9bf43b57b83e9975a1865981af22e28c725193573354d1180f406887664a
        - quay.io/kuadrant/limitador-operator:v0.11.0
        version: 0.11.0
      entries:
      - name: limitador-operator.v0.11.0
        version: 0.11.0
      - name: limitador-operator.v0.10.0
        version: 0.10.0
      - name: limitador-operator.v0.6.0
        version: 0.6.0
      - name: limitador-operator.v0.5.0
        version: 0.5.0
      - name: limitador-operator.v0.4.0
        version: 0.4.0
      - name: limitador-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: limitador-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/limitador-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: apicurio-registry-3
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-registry-3.v3.1.0-r1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry3",
                "metadata": {
                  "name": "simple"
                },
                "spec": {
                  "app": {
                    "ingress": {
                      "host": "simple-app.apps.cluster.example"
                    }
                  },
                  "ui": {
                    "ingress": {
                      "host": "simple-ui.apps.cluster.example"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/apicurio/apicurio-registry-rhel9-operator@sha256:ce7f4559a6942e9f41205fe6da95fdf333ff108bd41961a5bd62879021f30d20
          createdAt: "2025-10-15"
          description: Deploy and manage Red Hat build of Apicurio Registry 3 on OpenShift.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations",
            "Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/Apicurio/apicurio-registry/tree/main/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry3 represents an instance of Red Hat build
              of Apicurio Registry version 3.
            displayName: Apicurio Registry 3
            kind: ApicurioRegistry3
            name: apicurioregistries3.registry.apicur.io
            version: v1
        description: |
          ## Red Hat build of Apicurio Registry 3

          Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Allows you manage event schemas and API designs using the Apicurio Registry web console, REST API, Maven plug-in, or Java client
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL, MySQL\*, SQL Server\*, in-memory\*
          - Compatible with Confluent APIs
          - Runs on a lightweight Quarkus platform

          _Note: Storage options marked with * have not yet been tested by Red Hat for production deployments._

          ## Red Hat build of Apicurio Registry 3 Operator

          Provides a quick and easy way to deploy and manage Red Hat build of Apicurio Registry 3 on OpenShift.

          **Features**
          - Supports installation and configuration of Red Hat build of Apicurio Registry 3
          - Perform a rolling upgrade of Red Hat build of Apicurio Registry 3

          ## Prerequisites

          This operator does not deploy storage for Red Hat build of Apicurio Registry 3. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Red Hat build of Apicurio Registry 3 and Apicurio Registry 3 Operator are licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry/blob/main/LICENSE)
        displayName: Red Hat build of Apicurio Registry 3
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        - email: jsenko+apicurio@redhat.com
          name: Jakub Senko
        - email: ewittman+apicurio@redhat.com
          name: Eric Wittmann
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/apicurio/apicurio-registry-ui-rhel9@sha256:9daa045d14192754950aabb4c0a741f29ff4f0f431cb19c12bd1268ad21de639
        - registry.redhat.io/apicurio/apicurio-registry-3-operator-bundle@sha256:0c29e835e253ff6bc0dfb2a9ca01e94756c8995f3396ddca07dde95c9e16e633
        - registry.redhat.io/apicurio/apicurio-registry-rhel9-operator@sha256:ce7f4559a6942e9f41205fe6da95fdf333ff108bd41961a5bd62879021f30d20
        - registry.redhat.io/apicurio/apicurio-registry-rhel9@sha256:fb3fdbb49017c86c25058c824d833be061cd4f51cfe6b43ab5d7f799f0a87e78
        version: 3.1.0-r1
      entries:
      - name: apicurio-registry-3.v3.1.0-r1
        version: 3.1.0-r1
      - name: apicurio-registry-3.v3.0.15-r1
        version: 3.0.15-r1
      - name: apicurio-registry-3.v3.0.9-r3
        version: 3.0.9-r3
      - name: apicurio-registry-3.v3.0.9-r2
        version: 3.0.9-r2
      - name: apicurio-registry-3.v3.0.9-r1
        version: 3.0.9-r1
      - name: apicurio-registry-3.v3.0.7-r2
        version: 3.0.7-r2
      - name: apicurio-registry-3.v3.0.7-r1
        version: 3.0.7-r1
      - name: apicurio-registry-3.v3.0.6-beta.r1
        version: 3.0.6-beta.r1
      - name: apicurio-registry-3.v3.0.6-beta.r1-0.1740495889.p
        version: 3.0.6-beta.r1+0.1740495889.p
      - name: apicurio-registry-3.v3.0.6-beta
        version: 3.0.6-beta
      name: 3.x
    defaultChannel: 3.x
    packageName: apicurio-registry-3
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/stolostron/multicluster-global-hub
    name: multicluster-global-hub-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-global-hub-operator.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "global-hub.open-cluster-management.io/v1alpha1",
                "kind": "ManagedClusterMigration",
                "metadata": {
                  "name": "migration-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha1",
                "kind": "MulticlusterGlobalHubAgent",
                "metadata": {
                  "name": "multiclusterglobalhubagent"
                },
                "spec": {
                  "transportConfigSecretName": "transport-config"
                }
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha4",
                "kind": "MulticlusterGlobalHub",
                "metadata": {
                  "name": "multiclusterglobalhub"
                },
                "spec": {
                  "dataLayer": {
                    "postgres": {
                      "retention": "18m"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-operator-globalhub-1-6@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
          createdAt: "2025-08-27T07:10:21Z"
          description: Manages the installation and upgrade of the Multicluster Global
            Hub.
          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: "true"
          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"
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1alpha4",
            "kind":"MulticlusterGlobalHub","metadata":{"name":"multiclusterglobalhub","namespace":"multicluster-global-hub"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-global-hub
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/multicluster-global-hub
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterMigration is a global hub resource that allows
              you to migrate managed clusters from one hub to another
            displayName: Managed Cluster Migration
            kind: ManagedClusterMigration
            name: managedclustermigrations.global-hub.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHubAgent is the Schema for the multiclusterglobalhubagents
              API
            displayName: Multicluster Global Hub Agent
            kind: MulticlusterGlobalHubAgent
            name: multiclusterglobalhubagents.operator.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHub defines the configuration for an instance
              of the multiCluster global hub
            displayName: Multicluster Global Hub
            kind: MulticlusterGlobalHub
            name: multiclusterglobalhubs.operator.open-cluster-management.io
            version: v1alpha4
        description: |
          The Multicluster Global Hub Operator contains the components of multicluster global hub. The Operator deploys all of the required components for global multicluster management. The components include `multicluster-global-hub-manager` and `multicluster-global-hub-grafana` in the global hub cluster and `multicluster-global-hub-agent` in the managed hub clusters.
          The Operator also deploys the strimzi kafka and crunchy postgres if you do not bring your own kafka and postgres.

          ## Prerequisites
          - Red Hat Advanced Cluster Management for Kubernetes needs to be installed. You can find the support matrix in the official document.

          ## How to Install
          Install the Multicluster Global Hub Operator by following the instructions that are displayed after you select the Install button.
          A pod will be created in `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                             READY   STATUS    RESTARTS   AGE
          multicluster-global-hub-operator-5ccbbc878d-98fdp                1/1     Running   0          19s
          ```
          The operator is now providing new Custom Resources Definitions: `multiclusterglobalhubs.operator.open-cluster-management.io`

          ## Using the Multicluster Global Hub Operator
          After installed the operator, create an instance of the MulticlusterGlobalHub resource to instantiate the Multicluster Global Hub.
          Once an instance of the MulticlusterGlobalHub is created, the following pods are created in the `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                    READY   STATUS    RESTARTS   AGE
          kafka-entity-operator-68dcd446f4-pg257                  3/3     Running   0          19m
          kafka-kraft-0                                           1/1     Running   0          20m
          kafka-kraft-1                                           1/1     Running   0          20m
          kafka-kraft-2                                           1/1     Running   0          20m
          multicluster-global-hub-grafana-5b7cfb6876-5rcnn        2/2     Running   0          19m
          multicluster-global-hub-grafana-5b7cfb6876-wq99v        2/2     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-hzfvw        1/1     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-wbkzl        1/1     Running   0          19m
          multicluster-global-hub-operator-768bd5bd4f-59xjd       1/1     Running   0          22m
          multicluster-global-hub-postgresql-0                    2/2     Running   0          22m
          strimzi-cluster-operator-v0.43.0-6fff49d5b5-5j22r       1/1     Running   0          22m
          ```
          ## Documentation
          For documentation about installing and using the Multicluster GlobalHub Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [Multicluser GlobalHub Documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html-single/multicluster_global_hub/index#doc-wrapper) in the Red Hat Advanced Cluster Management
          documentation.

          ## Support & Troubleshooting
          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: Multicluster Global Hub Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multicluster-global-hub
        - multiple-hubs
        links:
        - name: Multicluster Global Hub Operator
          url: https://github.com/stolostron/multicluster-global-hub
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: stable
        provider:
          name: Red Hat, Inc
          url: https://github.com/stolostron/multicluster-global-hub
        relatedImages:
        - quay.io/community-operator-pipeline-prod/multicluster-global-hub-operator:1.6.0
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/glo-grafana-globalhub-1-6@sha256:870866e86ce870ad8d97ee060483e3c9042076f4ec987d4769e09d8daddd963d
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-agent-globalhub-1-6@sha256:903aea3e61d68f13d60c33f98bc9fa220eb8426ccedb43948015b6dfd50e8cf0
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-manager-globalhub-1-6@sha256:98273949e754fc81aa9240b507ab13e12fe2e9ecb6dafe601756567af18a077c
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-operator-globalhub-1-6@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/postgres-exporter-globalhub-1-6@sha256:2a68afbc8b4208e8aa16e7f0a8266246a16a2e97d4d6f930318888fc1e0c7306
        - quay.io/stolostron/postgresql-16@sha256:db2f73275f9cc0f2d262fadb8e8a5da72b089f9d22f7c859bb1364d9f9a8b622
        version: 1.6.0
      entries:
      - name: multicluster-global-hub-operator.v1.6.0
        version: 1.6.0
      name: release-1.6
    defaultChannel: release-1.6
    packageName: multicluster-global-hub-operator
    provider:
      name: Red Hat, Inc
      url: https://github.com/stolostron/multicluster-global-hub
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Internal
      provider-url: redhat.com
    name: l5-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: l5-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pets.bestie.com/v1",
                "kind": "Bestie",
                "metadata": {
                  "name": "bestie"
                },
                "spec": {
                  "image": "quay.io/opdev/bestie",
                  "maxReplicas": 10,
                  "size": 3,
                  "version": "1.3"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Application Runtime
          certified: "false"
          containerImage: quay.io/opdev/l5-operator:v0.0.3
          createdAt: "2023-06-27T16:56:10Z"
          description: L5 Operator is a demo operator that aims to demonstrate level
            5 capabilities for web applications.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          relatedImages: quay.io/opdev/bestie@sha256:0e99ada2b1de19043845dd9076789584aeddc2646402e5f0987dd00424be1ee7
          repository: https://github.com/opdev/l5-operator-demo
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Bestie is the Schema for the besties API.
            displayName: Bestie
            kind: Bestie
            name: besties.pets.bestie.com
            version: v1
        description: |
          ## Usage
          The L5 operator is meant to demonstrate a minimum viable prototype of all capability levels outilned in the operator framework. The L5 operator is compatible with both Kubernetes and OpenShift clusters. When running on vanilla kubernetes a few prerequisites need to be kept in mind which may not be available out of the box. These include an ingress controller and a prometheus operator for level 4 capability. The L5 operator also depends on the Crunchy Data PostgreSQL operator. On openshift when installing via the Operator Lifecycle Manager, this will automatically be installed when installing the operator via the embdeded operator hub. The Operator Lifecycle Manager is also available for vanilla kubernetes however it may not be installed out of the box. In this case the Crunchy Data PostgreSQL operator must be installed manually. The Crunchy Data PostgreSQL operator can be installed on vanilla kuberentes using the [instructions provided by Crunchy Data](https://access.crunchydata.com/documentation/postgres-operator/4.7.5/installation/postgres-operator/) More documentation and examples can be found on [github](https://github.com/opdev/l5-operator-demo).
        displayName: L5 Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - l5-operator
        links:
        - name: L5 Operator
          url: https://opdev.github.io/l5-operator-demo/
        maintainers:
        - email: partnereng@redhat.com
          name: OpDev Team
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat Internal
          url: redhat.com
        relatedImages:
        - quay.io/opdev/l5-operator:v0.0.3
        - quay.io/openshift-community-operators/l5-operator@sha256:e4cb13801a80753c99a47f009ca0a29416b3e04afe5314d07d97c2464a6f0d75
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.0.3
      entries:
      - name: l5-operator.v0.0.3
        version: 0.0.3
      - name: l5-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: l5-operator
    provider:
      name: Red Hat Internal
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: fence-agents-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fence-agents-remediation.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediation",
                "metadata": {
                  "name": "worker-1"
                },
                "spec": {
                  "agent": "fence_ipmilan",
                  "nodeSecretNames": {
                    "master-0": "fence-agents-credentials-master0",
                    "master-1": "fence-agents-credentials-master1",
                    "master-2": "fence-agents-credentials-master2",
                    "worker-0": "fence-agents-credentials-worker0",
                    "worker-1": "fence-agents-credentials-worker1",
                    "worker-2": "fence-agents-credentials-worker2"
                  },
                  "nodeparameters": {
                    "--ipport": {
                      "master-0": "6230",
                      "master-1": "6231",
                      "master-2": "6232",
                      "worker-0": "6233",
                      "worker-1": "6234",
                      "worker-2": "6235"
                    }
                  },
                  "remediationStrategy": "ResourceDeletion",
                  "retrycount": 5,
                  "retryinterval": "5s",
                  "sharedSecretName": "fence-agents-credentials-shared",
                  "sharedparameters": {
                    "--action": "reboot",
                    "--ip": "192.168.111.1",
                    "--lanplus": "",
                    "--username": "admin"
                  },
                  "timeout": "60s"
                }
              },
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediationTemplate",
                "metadata": {
                  "name": "fenceagentsremediationtemplate-default"
                },
                "spec": {
                  "template": {
                    "spec": {
                      "agent": "fence_ipmilan",
                      "nodeSecretNames": {
                        "master-0": "fence-agents-credentials-master0",
                        "master-1": "fence-agents-credentials-master1",
                        "master-2": "fence-agents-credentials-master2",
                        "worker-0": "fence-agents-credentials-worker0",
                        "worker-1": "fence-agents-credentials-worker1",
                        "worker-2": "fence-agents-credentials-worker2"
                      },
                      "nodeparameters": {
                        "--ipport": {
                          "master-0": "6230",
                          "master-1": "6231",
                          "master-2": "6232",
                          "worker-0": "6233",
                          "worker-1": "6234",
                          "worker-2": "6235"
                        }
                      },
                      "remediationStrategy": "ResourceDeletion",
                      "retrycount": 5,
                      "retryinterval": "5s",
                      "sharedSecretName": "fence-agents-credentials-shared",
                      "sharedparameters": {
                        "--action": "reboot",
                        "--ip": "192.168.111.1",
                        "--lanplus": "",
                        "--username": "admin"
                      },
                      "timeout": "60s"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: ""
          createdAt: "2025-09-08 09:19:00"
          description: Fence Agents Remediation Operator uses well-known agents to
            fence and remediate unhealthy nodes. The remediation includes rebooting
            the unhealthy node using a fence agent, and then evicting workloads from
            the unhealthy node.
          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: "true"
          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.skipRange: '>=0.5.0 <0.6.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/fence-agents-remediation
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FenceAgentsRemediation is the Schema for the fenceagentsremediations
              API
            displayName: Fence Agents Remediation
            kind: FenceAgentsRemediation
            name: fenceagentsremediations.fence-agents-remediation.medik8s.io
            version: v1alpha1
          - description: FenceAgentsRemediationTemplate is the Schema for the fenceagentsremediationtemplates
              API
            displayName: Fence Agents Remediation Template
            kind: FenceAgentsRemediationTemplate
            name: fenceagentsremediationtemplates.fence-agents-remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Fence Agents Remediation (FAR) is a Kubernetes operator that uses well-known agents to fence and remediate unhealthy nodes.
          The remediation includes rebooting the unhealthy node using a fence agent and then evicting workloads from the unhealthy node.

          ### Compatibility
          FAR is one of the remediator operators by [Medik8s](https://www.medik8s.io/remediation/remediation/),
          such as [Self Node Remediation](https://github.com/medik8s/self-node-remediation) and [Machine Deletion Remediation](https://github.com/medik8s/machine-deletion-remediation),
          that were designed to run with the Node HealthCheck Operator [(NHC)](https://github.com/medik8s/node-healthcheck-operator) which detects an unhealthy node and creates remediation CR.
          It is recommended to use FAR with NHC for an easier and smoother experience by fully automating the remediation process, but it can be used as a standalone remediator for the more experienced user.

          ### Advantages
          - Robustness - FAR has direct feedback from the traditional Application Programming Interface (API) call (e.g., IPMI) about the result of the fence action without using the Kubernetes API.
          - Speed - FAR is rapid since it can reboot a node and receive an acknowledgment from the API call while other remediators might need to wait a safe time till they can expect the node to be rebooted.
          - Diversity - FAR includes several fence agents from a large known set of upstream fencing agents for bare metal servers, virtual machines, cloud platforms, etc.
          - Adjustability - FAR allows to set up different parameters for running the API call that remediates the node.
        displayName: Fence Agents Remediation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - fencing
        - auto-healing
        - recovery
        - high-availability
        - fence-agents
        - fence-agents-remediation
        - remediation
        - far
        - baremetal
        links:
        - name: Fence Agents Remediation
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.8/html/remediation_fencing_and_maintenance/about-remediation-fencing-maintenance
        - name: Source Code
          url: https://www.github.com/medik8s/fence-agents-remediation
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/workload-availability/fence-agents-remediation-operator-bundle@sha256:6c0899610a78d2737c2096552e5146d9d5602b5568fab24b51b409dbffcf1961
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:d37a6d10b0fa07370066a31fdaffe2ea553faf4e4e98be7fcef5ec40d62ffe29
        - registry.redhat.io/workload-availability/fence-agents-remediation-rhel9-operator@sha256:eef1a298718650a22a3da4a07c140ce21b6f287d87af79801610317fa8f63d52
        version: 0.6.0
      entries:
      - name: fence-agents-remediation.v0.6.0
        version: 0.6.0
      - name: fence-agents-remediation.v0.5.1
        version: 0.5.1
      - name: fence-agents-remediation.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: fence-agents-remediation
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: runtimes-inventory-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runtimes-inventory-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          containerImage: registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-rhel9-operator@sha256:a4e12329119133ab09754489d29110f13f1793b01e30b5d19b9ab0b9525b7360
          createdAt: 15 Dec 2025, 21:14
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/RedHatInsights/runtimes-inventory-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: Operator support for Runtimes Inventory
        displayName: Runtimes Inventory Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - insights
        - java
        - runtimes
        - red hat
        links:
        - name: Runtimes Inventory Operator
          url: https://github.com/RedHatInsights/runtimes-inventory-operator
        maintainers:
        - email: ebaron@redhat.com
          name: Elliott Baron
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-agent-init-rhel9@sha256:6aede889f665445ea2f9ad3584f4b7004c6bfda8e6b1b4b3771d56da56347e2e
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-rhel9-operator@sha256:a4e12329119133ab09754489d29110f13f1793b01e30b5d19b9ab0b9525b7360
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-operator-bundle@sha256:b5f0ff2579eaa5f85452b009a2f7735238f87a05c3f7d503218807f0741c1a9f
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        version: 1.0.0
      entries:
      - name: runtimes-inventory-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: runtimes-inventory-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: authorino-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: authorino-operator.v1.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "authorino.kuadrant.io/v1beta2",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "authorino.kuadrant.io/v1beta3",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/authorino-rhel9-operator@sha256:0b60bb9afa31a549d0eac9331f6024e461ab3aed5b1fb2d461dd4db8ddeebeb9
          createdAt: 25 Sep 2025, 09:37
          description: Enables authentication and authorization for Gateways and applications
            in a Gateway API network.
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta2
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta3
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: The operator to manage instances of Authorino
        displayName: Authorino Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: Authorino Operator
          url: https://github.com/Kuadrant/authorino-operator
        - name: Authorino
          url: https://github.com/Kuadrant/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhcl-1/authorino-operator-bundle@sha256:fc75af6e706a8d2e3ca9e4206baa64745a4d2ff7a0ea8bae8e187ea5b79c7e4d
        - registry.redhat.io/rhcl-1/authorino-rhel9-operator@sha256:0b60bb9afa31a549d0eac9331f6024e461ab3aed5b1fb2d461dd4db8ddeebeb9
        - registry.redhat.io/rhcl-1/authorino-rhel9@sha256:be77901b29529646bbec6baf0d1a7c350be0db291b07a845f353181c25d89f78
        version: 1.2.4
      entries:
      - name: authorino-operator.v1.2.4
        version: 1.2.4
      - name: authorino-operator.v1.2.3
        version: 1.2.3
      - name: authorino-operator.v1.2.2
        version: 1.2.2
      - name: authorino-operator.v1.2.1
        version: 1.2.1
      - name: authorino-operator.v1.1.3
        version: 1.1.3
      - name: authorino-operator.v1.1.2
        version: 1.1.2
      - name: authorino-operator.v1.1.1
        version: 1.1.1
      - name: authorino-operator.v1.1.0
        version: 1.1.0
      - name: authorino-operator.v1.0.2
        version: 1.0.2
      name: stable
    - currentCSV: authorino-operator.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "authorino.kuadrant.io/v1beta1",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "hosts": [
                    "my-api.io"
                  ],
                  "identity": [
                    {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "in": "authorization_header",
                        "keySelector": "APIKEY"
                      },
                      "name": "api-key-users"
                    }
                  ]
                }
              },
              {
                "apiVersion": "authorino.kuadrant.io/v1beta2",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/3scale-tech-preview/authorino-rhel9-operator@sha256:eb574781cf39917f8f5d9e5c806f520534601f819ee1ebcbb751832da8938008
          createdAt: "2024-11-08T11:06:33Z"
          description: Authorino
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta1
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta2
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: |-
          [Authorino](https://docs.kuadrant.io/authorino/) is Red Hat's Kubernetes-native lightweight external authorization service for tailor-made Zero Trust API security.

          Install this Red Hat official distribution of [Authorino Operator](https://docs.kuadrant.io/authorino-operator/) to manage instances of Authorino in this cluster.

          The current state of this distribution of the operator is: **_Technical Preview_**.

          The Community version of Authorino Operator, based on upstream public images, is available in [OperatorHub.io](https://operatorhub.io/operator/authorino-operator).

          ## Getting started

          After installing the Operator, request an instance of the external authorization service by creating an `Authorino` custom resource.

          **Minimal example (namespaced)**

          ```yaml
          apiVersion: operator.authorino.kuadrant.io/v1beta1
          kind: Authorino
          metadata:
            name: authorino
          spec:
            listener:
              tls:
                enabled: false
            oidcServer:
              tls:
                enabled: false
          ```

          **Extended example**

          ```yaml
          apiVersion: operator.authorino.kuadrant.io/v1beta1
          kind: Authorino
          metadata:
            name: authorino
          spec:
            clusterWide: true
            authConfigLabelSelectors: environment=production
            secretLabelSelectors: authorino.kuadrant.io/component=authorino,environment=production

            replicas: 2

            evaluatorCacheSize: 2 # mb

            logLevel: info
            logMode: production

            listener:
              ports:
                grpc: 50001
                http: 5001
              tls:
                certSecretRef:
                  name: authorino-server-cert # secret must contain `tls.crt` and `tls.key` entries
              timeout: 2

            oidcServer:
              port: 8083
              tls:
                certSecretRef:
                  name: authorino-oidc-server-cert # secret must contain `tls.crt` and `tls.key` entries

            metrics:
              port: 8080
              deep: true

            healthz:
              port: 8081

            tracing:
              endpoint: rpc://otel-collector.observability.svc.cluster.local:4317
              insecure: true

            volumes:
              items:
                - name: keycloak-tls-cert
                  mountPath: /etc/ssl/certs
                  configMaps:
                    - keycloak-tls-cert
                  items: # details to mount the k8s configmap in the authorino pods
                    - key: keycloak.crt
                      path: keycloak.crt
              defaultMode: 420
          ```

          ### Cluster-wide vs Namespaced

          Namespaced instances only watch auth resources (`AuthConfig` and `Secrets`) created in the same namespace as the Authorino service. Use this mode for dedicated instances that do not require elevated privileges.

          Cluster-wide instances watch resources across the entire cluster (all namespaces.) Deploying and running Authorino in this mode requires elevated privileges.

          ### Multi-tenancy

          Use the `authConfigLabelSelectors` field of the `Authorino` custom resource to narrow the scope of the Authorino instance.

          Only `AuthConfig` custom resources whose labels match the value of this field will be handled by the Authorino instance.

          ## Protect a host

          To protect a host, create an `AuthConfig` custom resource for the host. E.g.:

          ```yaml
          apiVersion: authorino.kuadrant.io/v1beta2
          kind: AuthConfig
          metadata:
            name: my-api-protection
          spec:
            hosts:
            - my-api.io

            authentication:
              "keycloak":
                jwt:
                  issuerUrl: https://keycloak.keycloak.svc.cluster.local:8080/realms/my-realm

            authorization:
              "k8s-rbac":
                kubernetesSubjectAccessReview:
                  user:
                    selector: auth.identity.user.username
                  resourceAttributes:
                    resource:
                      value: my-api
                    verb:
                      selector: request.method
                cache:
                  key:
                    selector: auth.identity.user.username
                  ttl: 30
              "after-2am-only":
                rego: |
                  allow {
                    [hour, _, _] := time.clock(time.now_ns())
                    hour >= 2
                  }
          ```

          Make sure all requests to the host are fisrt checked with the Authorino instance, by configuring an Envoy proxy for external authz:

          ```yaml
          clusters:
          - name: my-api
            …
          - name: authorino
            connect_timeout: 0.25s
            type: STRICT_DNS
            lb_policy: ROUND_ROBIN
            http2_protocol_options: {}
            load_assignment:
              cluster_name: authorino
              endpoints:
              - lb_endpoints:
                - endpoint:
                    address:
                      socket_address:
                        address: authorino-authorino-authorization
                        port_value: 50051
          listeners:
          - filter_chains:
            - filters:
              name: envoy.http_connection_manager
              typed_config:
                "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
                use_remote_address: true
                route_config:
                  name: my-api-config
                  virtual_hosts:
                  - name: my-api-vs
                    domains:
                    - my-api.io
                    routes:
                    - match:
                        prefix: /
                      route:
                        cluster: my-api
                http_filters:
                - name: envoy.filters.http.ext_authz
                  typed_config:
                    "@type": type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz
                    transport_api_version: V3
                    failure_mode_allow: false
                    include_peer_certificate: true
                    grpc_service:
                      envoy_grpc:
                        cluster_name: authorino
                      timeout: 1s
          ```

          ...or, if using Istio, by creating an [`AuthorizationPolicy`](https://istio.io/latest/docs/reference/config/security/authorization-policy/#AuthorizationPolicy) custom resource. Use `action: CUSTOM` in the resource and the Authorino authorization service configured in the mesh extension provider settings.

          ## Features

          **Authentication**

          * JWT validation (with OpenID Connect Discovery)
          * OAuth 2.0 Token Introspection (opaque tokens)
          * Kubernetes TokenReview (ServiceAccount tokens)
          * API key authentication
          * X.509 client certificate authentication
          * Anonymous access
          * Proxy-handled (authentication performed by the proxy)

          **Authorization**

          * Built-in simple pattern matching (e.g. JWT claims, request attributes checking)
          * OPA policies (inline Rego and fetch from external registry)
          * Kubernetes SubjectAccessReview (resource and non-resource attributes)
          * Authzed SpiceDB

          **External metadata**

          * HTTP request
          * OpenID Connect User Info
          * UMA-protected resource attributes

          **Custom responses**

          * Header injection (Festival Wristbands tokens, JSON, plain text)
          * Envoy Dynamic Metadata
          * Custom HTTP response (status code, headers, messages, body, etc)

          **Callbacks**

          * HTTP webhooks

          **Caching**

          * OpenID Connect and User-Managed Access configs
          * JSON Web Keys (JWKs) and JSON Web Key Sets (JWKS)
          * Access tokens
          * External metadata
          * Precompiled Rego policies
          * Policy evaluation

          Check out the full [Feature Specification](https://docs.kuadrant.io/authorino/docs/features/) and how-to guides in the [Kuadrant Docs](https://docs.kuadrant.io) website.
        displayName: Red Hat - Authorino (Technical Preview)
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: GitHub
          url: https://github.com/kuadrant/authorino-operator
        - name: Documentation
          url: https://docs.kuadrant.io/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:3a398158d10018bfac5df291d6998b513cf9a30e5477bcaefddcf66d229627c7
        - registry.redhat.io/3scale-tech-preview/authorino-operator-bundle@sha256:75cb78f7a40d3daedbc11cbbb5505e029328b4120f0de11d4f6423de943e92d8
        - registry.redhat.io/3scale-tech-preview/authorino-rhel9-operator@sha256:eb574781cf39917f8f5d9e5c806f520534601f819ee1ebcbb751832da8938008
        - registry.redhat.io/3scale-tech-preview/authorino-rhel9@sha256:a473dae20e71e3e813ac30ba978f2ab3c5e19d7d39b501ae9103dca892107c87
        version: 1.1.3
      entries:
      - name: authorino-operator.v1.1.3
        version: 1.1.3
      - name: authorino-operator.v1.1.2
        version: 1.1.2
      - name: authorino-operator.v1.1.1
        version: 1.1.1
      - name: authorino-operator.v1.1.0
        version: 1.1.0
      - name: authorino-operator.v1.0.2
        version: 1.0.2
      name: tech-preview-v1
    defaultChannel: stable
    packageName: authorino-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-druid-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: druid-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/druid-operator@sha256:ff1a696b13db48980e86003ba1f439b8996b08e7f5c0f527edd3d3dd4ca858f9
          description: Stackable Operator for Apache Druid
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/druid-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for DruidClusterSpec via `CustomResource`
            displayName: druidclusters.druid.stackable.tech
            kind: DruidCluster
            name: druidclusters.druid.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Druid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - druid
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - registry.connect.redhat.com/stackable/stackable-apache-druid-operator@sha256:2167a293d682cad01573dbfefb91c0a4cf2feb18566922893d3e1f12dee10854
        - quay.io/stackable/druid-operator@sha256:ff1a696b13db48980e86003ba1f439b8996b08e7f5c0f527edd3d3dd4ca858f9
        version: 25.11.0
      entries:
      - name: druid-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-druid-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Vertica
      provider-url: http://www.vertica.com
    name: verticadb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: verticadb-operator.v1.11.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "EventTrigger",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "verticadb-operator",
                    "app.kubernetes.io/instance": "eventtrigger-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "eventtrigger",
                    "app.kubernetes.io/part-of": "verticadb-operator"
                  },
                  "name": "eventtrigger-sample"
                },
                "spec": {
                  "matches": [
                    {
                      "condition": {
                        "status": "True",
                        "type": "DBInitialized"
                      }
                    }
                  ],
                  "references": [
                    {
                      "object": {
                        "apiVersion": "vertica.com/v1beta1",
                        "kind": "VerticaDB",
                        "name": "verticadb-sample"
                      }
                    }
                  ],
                  "template": {
                    "metadata": {
                      "generateName": "create-user-table-"
                    },
                    "spec": {
                      "template": {
                        "spec": {
                          "containers": [
                            {
                              "command": [
                                "/opt/vertica/bin/vsql",
                                "-h",
                                "verticadb-sample-defaultsubcluster",
                                "-c",
                                "CREATE TABLE T1 (C1 INT);"
                              ],
                              "image": "vertica/vertica-k8s:latest",
                              "name": "main"
                            }
                          ],
                          "restartPolicy": "OnFailure"
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaAutoscaler",
                "metadata": {
                  "name": "verticaautoscaler-sample"
                },
                "spec": {
                  "serviceName": "defaultsubcluster",
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaDB",
                "metadata": {
                  "name": "verticadb-sample"
                },
                "spec": {
                  "communal": {
                    "endpoint": "https://s3.amazonaws.com"
                  },
                  "image": "vertica/vertica-k8s:23.3.0-0-minimal",
                  "subclusters": [
                    {
                      "name": "default_subcluster",
                      "size": 3
                    }
                  ]
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          containerImage: docker.io/vertica/verticadb-operator:1.11.2
          createdAt: "2023-08-02T11:29:39Z"
          description: Operator that manages a Vertica Eon Mode database.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/vertica/vertica-kubernetes
          support: Vertica
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EventTrigger is the Schema for the eventtriggers API
            displayName: Event Trigger
            kind: EventTrigger
            name: eventtriggers.vertica.com
            version: v1beta1
          - description: VerticaAutoscaler is a CR that allows you to autoscale one
              or more subclusters in a VerticaDB.
            displayName: Vertica Autoscaler
            kind: VerticaAutoscaler
            name: verticaautoscalers.vertica.com
            version: v1beta1
          - description: VerticaDB is the CR that defines a Vertica Eon mode cluster
              that is managed by the verticadb-operator.
            displayName: Vertica DB
            kind: VerticaDB
            name: verticadbs.vertica.com
            version: v1beta1
        description: |-
          ### What is Vertica?
          Vertica is a unified analytics platform, based on a massively scalable architecture with the broadest set of analytical functions spanning event and time series, pattern matching, geospatial and end-to-end in-database machine learning. Vertica enables you to easily apply these powerful functions to the largest and most demanding analytical workloads, arming you and your customers with predictive business insights faster than any analytics data warehouse in the market. Vertica provides a unified analytics platform across major public clouds and on-premises data centers and integrates data in cloud object storage and HDFS without forcing you to move any of your data.

          ### What does this operator do?
          This operator manages a Vertica Eon Mode database, and automates the following administrative tasks:

          * Installing Vertica
          * Creating and reviving a Vertica database
          * Restarting and rescheduling DOWN pods to maintain quorum
          * Upgrading Vertica to a new version while keeping the database online
          * Subcluster scaling, both manually and automatically with the Horizontal Pod Autoscaler
          * Service management and health monitoring for pods
          * Load balancing for internal and external traffic
          * Expose a metrics endpoint to integrate with Prometheus to monitor the operator's health

          For a brief overview on how to create a cluster, see the [Vertica GitHub repository](https://github.com/vertica/vertica-kubernetes). For an in-depth look at Vertica on Kubernetes, see the [Vertica documentation](https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm).
        displayName: VerticaDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - database
        - vertica
        links:
        - name: Documentation
          url: https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm
        - name: Vertica Container Images
          url: https://hub.docker.com/u/vertica
        maintainers:
        - email: matt.spilchen@vertica.com
          name: Matt Spilchen
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Vertica
          url: http://www.vertica.com
        relatedImages:
        - docker.io/vertica/verticadb-operator:1.11.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/openshift-community-operators/verticadb-operator@sha256:b7691da906474a8ab829966bb3da4a846eaf12909c97bd0d9cb6a1e5e7ff6c03
        version: 1.11.2
      entries:
      - name: verticadb-operator.v1.11.2
        version: 1.11.2
      - name: verticadb-operator.v1.11.1
        version: 1.11.1
      - name: verticadb-operator.v1.11.0
        version: 1.11.0
      - name: verticadb-operator.v1.10.2
        version: 1.10.2
      - name: verticadb-operator.v1.10.1
        version: 1.10.1
      - name: verticadb-operator.v1.10.0
        version: 1.10.0
      - name: verticadb-operator.v1.9.0
        version: 1.9.0
      - name: verticadb-operator.v1.8.0
        version: 1.8.0
      - name: verticadb-operator.v1.7.0
        version: 1.7.0
      - name: verticadb-operator.v1.6.0
        version: 1.6.0
      - name: verticadb-operator.v1.5.0
        version: 1.5.0
      - name: verticadb-operator.v1.4.0
        version: 1.4.0
      - name: verticadb-operator.v1.3.1
        version: 1.3.1
      - name: verticadb-operator.v1.3.0
        version: 1.3.0
      - name: verticadb-operator.v1.2.0
        version: 1.2.0
      name: stable
    - currentCSV: verticadb-operator.v25.4.0-0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vertica.com/v1",
                "kind": "VerticaAutoscaler",
                "metadata": {
                  "name": "verticaautoscaler-sample"
                },
                "spec": {
                  "customAutoscaler": {},
                  "scalingGranularity": "Subcluster",
                  "serviceName": "default-subcluster",
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1",
                "kind": "VerticaDB",
                "metadata": {
                  "name": "verticadb-sample"
                },
                "spec": {
                  "communal": {
                    "endpoint": "https://s3.amazonaws.com"
                  },
                  "image": "opentext/vertica-k8s:24.1.0-0-minimal",
                  "subclusters": [
                    {
                      "name": "default_subcluster",
                      "size": 3
                    }
                  ]
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "EventTrigger",
                "metadata": {
                  "name": "eventtrigger-sample"
                },
                "spec": {
                  "matches": [
                    {
                      "condition": {
                        "status": "True",
                        "type": "DBInitialized"
                      }
                    }
                  ],
                  "references": [
                    {
                      "object": {
                        "apiVersion": "vertica.com/v1beta1",
                        "kind": "VerticaDB",
                        "name": "verticadb-sample"
                      }
                    }
                  ],
                  "template": {
                    "metadata": {
                      "generateName": "create-user-table-"
                    },
                    "spec": {
                      "template": {
                        "spec": {
                          "containers": [
                            {
                              "command": [
                                "/opt/vertica/bin/vsql",
                                "-h",
                                "verticadb-sample-defaultsubcluster",
                                "-c",
                                "CREATE TABLE T1 (C1 INT);"
                              ],
                              "image": "opentext/vertica-k8s:23.4.0-0-minimal",
                              "name": "main"
                            }
                          ],
                          "restartPolicy": "OnFailure"
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaAutoscaler",
                "metadata": {
                  "name": "verticaautoscaler-sample"
                },
                "spec": {
                  "customAutoscaler": {},
                  "scalingGranularity": "Subcluster",
                  "serviceName": "default-subcluster",
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaReplicator",
                "metadata": {
                  "name": "verticareplicator-sample"
                },
                "spec": {
                  "source": {
                    "verticaDB": "sourceDBName"
                  },
                  "target": {
                    "verticaDB": "targetDBName"
                  }
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaRestorePointsQuery",
                "metadata": {
                  "name": "verticarestorepointsquery-sample"
                },
                "spec": {
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaScrutinize",
                "metadata": {
                  "name": "verticascrutinize-sample"
                },
                "spec": {
                  "verticaDBName": "verticadb-sample"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          containerImage: docker.io/opentext/verticadb-operator:25.4.0-0
          createdAt: "2025-10-20T17:45:02Z"
          description: Operator that manages a Vertica Eon Mode database.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/vertica/vertica-kubernetes
          support: Vertica
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EventTrigger is the Schema for the eventtriggers API
            displayName: Event Trigger
            kind: EventTrigger
            name: eventtriggers.vertica.com
            version: v1beta1
          - description: |-
              VerticaAutoscaler is a CR that allows you to autoscale one or more
              subclusters in a VerticaDB.
            displayName: Vertica Autoscaler
            kind: VerticaAutoscaler
            name: verticaautoscalers.vertica.com
            version: v1
          - description: |-
              VerticaAutoscaler is a CR that allows you to autoscale one or more
              subclusters in a VerticaDB.
            displayName: Vertica Autoscaler
            kind: VerticaAutoscaler
            name: verticaautoscalers.vertica.com
            version: v1beta1
          - description: VerticaDB is the CR that defines a Vertica Eon mode cluster
              that is managed by the verticadb-operator.
            displayName: Vertica DB
            kind: VerticaDB
            name: verticadbs.vertica.com
            version: v1
          - description: VerticaReplicator is the Schema for the verticareplicators
              API
            displayName: Vertica Replicator
            kind: VerticaReplicator
            name: verticareplicators.vertica.com
            version: v1beta1
          - description: VerticaRestorePointsQuery is the Schema for the verticarestorepointsqueries
              API
            displayName: Vertica Restore Points Query
            kind: VerticaRestorePointsQuery
            name: verticarestorepointsqueries.vertica.com
            version: v1beta1
          - description: VerticaScrutinize is the schema for verticascrutinize API
            displayName: Vertica Scrutinize
            kind: VerticaScrutinize
            name: verticascrutinizers.vertica.com
            version: v1beta1
        description: |-
          ### What is Vertica?
          Vertica is a unified analytics platform, based on a massively scalable architecture with the broadest set of analytical functions spanning event and time series, pattern matching, geospatial and end-to-end in-database machine learning. Vertica enables you to easily apply these powerful functions to the largest and most demanding analytical workloads, arming you and your customers with predictive business insights faster than any analytics data warehouse in the market. Vertica provides a unified analytics platform across major public clouds and on-premises data centers and integrates data in cloud object storage and HDFS without forcing you to move any of your data.

          ### What does this operator do?
          This operator manages a Vertica Eon Mode database, and automates the following administrative tasks:

          * Installing Vertica
          * Creating and reviving a Vertica database
          * Restarting and rescheduling DOWN pods to maintain quorum
          * Upgrading Vertica to a new version while keeping the database online
          * Subcluster scaling, both manually and automatically with the Horizontal Pod Autoscaler
          * Service management and health monitoring for pods
          * Load balancing for internal and external traffic
          * Expose a metrics endpoint to integrate with Prometheus to monitor the operator's health

          For a brief overview on how to create a cluster, see the [Vertica GitHub repository](https://github.com/vertica/vertica-kubernetes). For an in-depth look at Vertica on Kubernetes, see the [Vertica documentation](https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm).
        displayName: VerticaDB Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - database
        - vertica
        links:
        - name: Documentation
          url: https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm
        - name: Vertica Container Images
          url: https://hub.docker.com/u/vertica
        maintainers:
        - email: cchen8@opentext.com
          name: Cai Chen
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Vertica
          url: http://www.vertica.com
        relatedImages:
        - docker.io/opentext/verticadb-operator:25.4.0-0
        - quay.io/community-operator-pipeline-prod/verticadb-operator@sha256:8dade6084828c98f805bd33d1885e8eb9c8eff3d2fb3283091a6691419d54922
        version: 25.4.0-0
      entries:
      - name: verticadb-operator.v25.4.0-0
        version: 25.4.0-0
      - name: verticadb-operator.v25.3.1-0
        version: 25.3.1-0
      - name: verticadb-operator.v25.3.0-0
        version: 25.3.0-0
      - name: verticadb-operator.v25.2.1-0
        version: 25.2.1-0
      - name: verticadb-operator.v25.2.0-0
        version: 25.2.0-0
      - name: verticadb-operator.v25.1.0-0
        version: 25.1.0-0
      - name: verticadb-operator.v24.4.0-0
        version: 24.4.0-0
      - name: verticadb-operator.v2.2.0
        version: 2.2.0
      - name: verticadb-operator.v2.1.3
        version: 2.1.3
      - name: verticadb-operator.v2.1.2
        version: 2.1.2
      - name: verticadb-operator.v2.1.1
        version: 2.1.1
      - name: verticadb-operator.v2.1.0
        version: 2.1.0
      - name: verticadb-operator.v2.0.2
        version: 2.0.2
      - name: verticadb-operator.v2.0.1
        version: 2.0.1
      - name: verticadb-operator.v2.0.0
        version: 2.0.0
      name: v2-stable
    defaultChannel: v2-stable
    packageName: verticadb-operator
    provider:
      name: Vertica
      url: http://www.vertica.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: dns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dns-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSHealthCheckProbe",
                "metadata": {
                  "name": "$NAME"
                },
                "spec": {
                  "additionalHeadersRef": {
                    "name": "headers"
                  },
                  "address": "192.168.0.16",
                  "allowInsecureCertificate": true,
                  "failureThreshold": 5,
                  "hostname": "test.com",
                  "interval": "60s",
                  "path": "/healthz",
                  "port": 443,
                  "protocol": "HTTPS"
                }
              },
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSRecord",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dns-operator",
                    "app.kubernetes.io/instance": "dnsrecord-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dnsrecord",
                    "app.kubernetes.io/part-of": "dns-operator"
                  },
                  "name": "dnsrecord-sample"
                },
                "spec": {
                  "endpoints": [
                    {
                      "dnsName": "dnsrecord-simple.example.com",
                      "recordTTL": 60,
                      "recordType": "A",
                      "targets": [
                        "52.215.108.61",
                        "52.30.101.221"
                      ]
                    }
                  ],
                  "providerRef": {
                    "name": "dns-provider-creds"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/dns-rhel9-operator@sha256:61e8a471cf20273fe879031eb302a1c7179b5423db4f0a8b9dccefae753ffdf4
          createdAt: 25 Sep 2025, 13:03
          description: Configures how north-south traffic from outside the network
            is balanced and reaches Gateways.
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kuadrant/dns-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DNSHealthCheckProbe is the Schema for the dnshealthcheckprobes
              API
            displayName: DNSHealthCheckProbe
            kind: DNSHealthCheckProbe
            name: dnshealthcheckprobes.kuadrant.io
            version: v1alpha1
          - description: DNSRecord is the Schema for the dnsrecords API
            displayName: DNSRecord
            kind: DNSRecord
            name: dnsrecords.kuadrant.io
            version: v1alpha1
        description: A Kubernetes Operator to manage the lifecycle of DNS resources
        displayName: DNS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dns
        - kuadrant
        links:
        - name: DNS Operator
          url: https://github.com/Kuadrant/dns-operator
        maintainers:
        - email: mnairn@redhat.com
          name: Michael Nairn
        - email: pbrookes@redhat.com
          name: Phil Brookes
        - email: cbrookes@redhat.com
          name: Craig Brookes
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhcl-1/dns-operator-bundle@sha256:0139dbf3b822012c56a0ce2f17b8607c4e08d367ec2fbfb096892bb5e648803e
        - registry.redhat.io/rhcl-1/dns-rhel9-operator@sha256:61e8a471cf20273fe879031eb302a1c7179b5423db4f0a8b9dccefae753ffdf4
        version: 1.2.0
      entries:
      - name: dns-operator.v1.2.0
        version: 1.2.0
      - name: dns-operator.v1.1.1
        version: 1.1.1
      - name: dns-operator.v1.1.0
        version: 1.1.0
      - name: dns-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: dns-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Ab Initio
      provider-url: ""
    name: abinitio-runtime-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: abinitio-runtime-operator.v4.3.3-1
      currentCSVDesc:
        annotations:
          capabilities: Basic Install
          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"
          operatorframework.io/suggested-namespace: abinitio-system
          operators.operatorframework.io/builder: operator-sdk-v1.8.0-ocp
          operators.operatorframework.io/internal-objects: '["cooperatingsystemruntimepoolmetrics.cloud.abinitio.com",
            "cooperatingsystemruntimeprofiles.cloud.abinitio.com"]'
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Defines a *runtime claim*, an interface for reserving a runtime
              object (CoOperatingSystemRuntime) in a runtime pool (CoOperatingSystemRuntimePool)
              in order to launch a job.
            displayName: Co>Operating System Runtime Claim
            kind: CoOperatingSystemRuntimeClaim
            name: cooperatingsystemruntimeclaims.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Pool Metric
            kind: CoOperatingSystemRuntimePoolMetric
            name: cooperatingsystemruntimepoolmetrics.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime pool*, a set of templated runtime objects
              (CoOperatingSystemRuntime) that are available on demand for running
              jobs. A runtime pool's capacity is configurable and can be scheduled
              in response to usage patterns.
            displayName: Co>Operating System Runtime Pool
            kind: CoOperatingSystemRuntimePool
            name: cooperatingsystemruntimepools.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Profile
            kind: CoOperatingSystemRuntimeProfile
            name: cooperatingsystemruntimeprofiles.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime object*, a set of coordinated resources
              used to run a data processing job in parallel across a launcher pod
              and a dynamically scaled set of worker pods. Such a job leverages the
              full power of the Co>Operating System for processing complex enterprise
              data.
            displayName: Co>Operating System Runtime
            kind: CoOperatingSystemRuntime
            name: cooperatingsystemruntimes.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime template*, a reusable specification (CoOperatingSystemRuntimeSpec)
              that can be referenced and overridden by runtime objects as needed,
              making it possible to specify jobs concisely. The runtime objects in
              a runtime pool (CoOperatingSystemRuntimePool) are created from a runtime
              template.
            displayName: Co>Operating System Runtime Template
            kind: CoOperatingSystemRuntimeTemplate
            name: cooperatingsystemruntimetemplates.cloud.abinitio.com
            version: v1
        description: |-
          The Co>Operating System runtime operator brings the power of Ab Initio's Co>Operating
          System to Kubernetes by defining a set of custom API resources for provisioning and
          running data processing jobs.

          The operator is installed along with the following custom resource definitions (CRDs):

          - CoOperatingSystemRuntime
          - CoOperatingSystemRuntimeClaim
          - CoOperatingSystemRuntimePool
          - CoOperatingSystemRuntimeTemplate

          In combination, these resources give you significant flexibility in scheduling, running,
          and monitoring your jobs, which can run in parallel across a dynamically scaled set of
          containers. For reference documentation for these resources, see
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-FOUR-Reference/Co-Operating-System-runtime-operator-API-reference)
          in the Ab Initio Help.

          The following topics describe the basic requirements and procedures for creating custom
          resources for running jobs after you have installed the runtime operator.

          ## Requirements for using custom resources

          The runtime operator is fully configured when you install it in your OpenShift cluster
          through OperatorHub. Importantly, the operator is installed in unrestricted mode,
          which means it can manage the CoOperatingSystemRuntime family of CRDs in any namespace
          in your cluster.

          For creating custom resources in order to run jobs using the operator, you must meet
          the requirements and configure the settings described in the following sections.

          ### Container images for job agents

          To run jobs of kind CoOperatingSystemRuntime, you must have a way to build the following
          OCI container images:

          - A *processing* image with the Co>Operating System server software installed in it.
          - A *sandbox workspace* image with the graphs and other files needed to run your jobs.
          This image is based on the Co>Operating System image and functions as the job's launcher
          agent, which coordinates with a set of worker agents (processing containers) in order to
          run a job in parallel.

          For building and managing these container images, you need the following:

          - A Co>Operating System installation package.
          - Access to a technical repository containing the projects that make up your application.
          - A container-building tool.
          - Access to a private container registry for hosting the images you build. You need pull
          and push access to this registry from your container build context and pull access from
          your OpenShift cluster (for example, via a Kubernetes Secret).

          > WARNING! Never push container images with Ab Initio software to a public registry. Push
          them to a private container registry only.

          The Co>Operating System includes reference Dockerfiles and example scripts for building
          container images. Typically, you build these images as part of your CI/CD pipeline. For
          more information, contact your Ab Initio administrator or Ab Initio Support.

          ### Ab Initio key servers

          The key servers that you use to enable jobs must be reachable from your cluster. You
          specify these key servers via the `AB_HOSTNAME_KEYSERVER_URLS` configuration variable in
          the pod specifications for launcher and worker agents in the CoOperatingSystemRuntime
          resource.

          To discuss the software activation key requirements for jobs that run in Kubernetes,
          contact your key server administrator or Ab Initio Support.

          ### Namespace and role considerations

          The runtime operator is installed with the cluster-wide RBAC roles and role bindings that
          it needs in order to manage custom resources and run jobs.

          You typically use a separate namespace or namespaces for creating and managing custom
          resources to run jobs. Each of these namespaces must be equipped with a service
          account that can list pod limits and get and patch CoOperatingSystemRuntime resources.

          For each namespace in which you intend to create custom resources, create the needed RBAC
          role and role binding by applying the following Role and RoleBinding manifests:

          ```yaml
          apiVersion: rbac.authorization.k8s.io/v1
          kind: Role
          metadata:
            name: cooperatingsystemruntime-role
          rules:
          - apiGroups:
            - ""
            resources:
            - limitranges
            verbs:
            - list
          - apiGroups:
            - cloud.abinitio.com
            resources:
            - cooperatingsystemruntimes
            verbs:
            - get
            - patch
          ---
          apiVersion: rbac.authorization.k8s.io/v1
          kind: RoleBinding
          metadata:
            name: run-cooperatingsystemruntime-rolebinding
          subjects:
          - kind: ServiceAccount
            name: default
          roleRef:
            kind: Role
            name: cooperatingsystemruntime-role
            apiGroup: rbac.authorization.k8s.io
          ```

          One way to do this is to save these manifests to a file and specify a namespace when
          using `oc` to apply them to the cluster. In the following example, the manifests are
          saved to a file named `runtime-rbac.yaml` and the role and role binding are to be created
          for the `default` service account in the `hello-world` namespace:

          ```
          oc -n hello-world apply -f runtime-rbac.yaml
          ```

          To bind the role to a service account other than `default`, simply update the value of
          `subjects[0].name` in the provided RoleBinding manifest.

          ### Dynamic volume provisioning

          The launcher and worker template sections of the CoOperatingSystemRuntime resource
          require you to specify persistent volume claims (PVCs) for job recovery data. To ensure
          that these PVCs can be bound to approriate storage volumes, dynamic volume provisioning
          must be enabled in your cluster.

          Work with your cluster administrator to identify the storage needs of your jobs and to
          ensure that dynamic volume provisioning is enabled so that PVCs can be matched to
          persistent volumes of the right storage class.

          For more information about dynamic storage provisioning, see the
          [OpenShift documentation](https://docs.openshift.com/container-platform/latest/storage/dynamic-provisioning.html).

          ## Quick start and examples

          For an overview of the key concepts associated with running jobs in Kubernetes, see
          ["About running jobs in Kubernetes"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-TWO-Running-jobs-in-Kubernetes/About-running-jobs-in-Kubernetes)
          in the Ab Initio Help.

          As described in this topic, you might begin by creating a CoOperatingSystemRuntime
          manifest that defines the configuration and compute resources needed for a standalone test
          job. You could then use the specification for this job to create a CoOperatingSystemRuntimeTemplate
          resource, which would collect common settings and make it possible to concisely specify
          CoOperatingSystemRuntime jobs.

          You could also use a runtime pool (of kind CoOperatingSystemRuntime) to extend these basic
          resources: such a pool consists of an actively running group of templated runtime objects whose
          pods can be used to run jobs on demand. Finally, for reserving resources in a pool, you could
          create a CoOperatingSystemRuntimeClaim resource.

          For more information about these custom resources, refer to the
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-FOUR-Reference/Co-Operating-System-runtime-operator-API-reference).

          For a set of integrated examples (including complete YAML manifests) that show you how to
          create and use the custom resources, see ["Example manifests for running jobs"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-TWO-Running-jobs-in-Kubernetes/Configuring-and-running-Co-Operating-System-jobs-in-Kubernetes/Example-manifests-for-CoOperatingSystemRuntime-jobs).
        displayName: Co>Operating System Runtime Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - abinitio
        - runtime
        - operator
        links:
        - name: Ab Initio
          url: https://www.abinitio.com/
        maintainers:
        - email: support@abinitio.com
          name: Ab Initio Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Ab Initio
        relatedImages:
        - registry.connect.redhat.com/abinitio/cooperating-system-runtime-operator@sha256:665efa8cc2ba97ad31f219161cdd53e15c1aef16b6c05ac60506be9bbc9ffc9a
        - registry.connect.redhat.com/abinitio/runtime-operator-bundle@sha256:d0bd55bad99bfd1ce09da5ee885a38229829570ebf80e1acc4341dff17a54e64
        version: 4.3.3-1
      entries:
      - name: abinitio-runtime-operator.v4.3.3-1
        version: 4.3.3-1
      - name: abinitio-runtime-operator.v4.3.1-0
        version: 4.3.1-0
      name: release-4.3
    - currentCSV: abinitio-runtime-operator.v4.2.3-0
      currentCSVDesc:
        annotations:
          capabilities: Basic Install
          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"
          operatorframework.io/suggested-namespace: abinitio-system
          operators.operatorframework.io/builder: operator-sdk-v1.8.0-ocp
          operators.operatorframework.io/internal-objects: '["cooperatingsystemruntimepoolmetrics.cloud.abinitio.com",
            "cooperatingsystemruntimeprofiles.cloud.abinitio.com"]'
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Defines a *runtime claim*, an interface for reserving a runtime
              object (CoOperatingSystemRuntime) in a runtime pool (CoOperatingSystemRuntimePool)
              in order to launch a job.
            displayName: Co>Operating System Runtime Claim
            kind: CoOperatingSystemRuntimeClaim
            name: cooperatingsystemruntimeclaims.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Pool Metric
            kind: CoOperatingSystemRuntimePoolMetric
            name: cooperatingsystemruntimepoolmetrics.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime pool*, a set of templated runtime objects
              (CoOperatingSystemRuntime) that are available on demand for running
              jobs. A runtime pool's capacity is configurable and can be scheduled
              in response to usage patterns.
            displayName: Co>Operating System Runtime Pool
            kind: CoOperatingSystemRuntimePool
            name: cooperatingsystemruntimepools.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Profile
            kind: CoOperatingSystemRuntimeProfile
            name: cooperatingsystemruntimeprofiles.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime object*, a set of coordinated resources
              used to run a data processing job in parallel across a launcher pod
              and a dynamically scaled set of worker pods. Such a job leverages the
              full power of the Co>Operating System for processing complex enterprise
              data.
            displayName: Co>Operating System Runtime
            kind: CoOperatingSystemRuntime
            name: cooperatingsystemruntimes.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime template*, a reusable specification (CoOperatingSystemRuntimeSpec)
              that can be referenced and overridden by runtime objects as needed,
              making it possible to specify jobs concisely. The runtime objects in
              a runtime pool (CoOperatingSystemRuntimePool) are created from a runtime
              template.
            displayName: Co>Operating System Runtime Template
            kind: CoOperatingSystemRuntimeTemplate
            name: cooperatingsystemruntimetemplates.cloud.abinitio.com
            version: v1
        description: |-
          The Co>Operating System runtime operator brings the power of Ab Initio's Co>Operating
          System to Kubernetes by defining a set of custom API resources for provisioning and
          running data processing jobs.

          The operator is installed along with the following custom resource definitions (CRDs):

          - CoOperatingSystemRuntime
          - CoOperatingSystemRuntimeClaim
          - CoOperatingSystemRuntimePool
          - CoOperatingSystemRuntimeTemplate

          In combination, these resources give you significant flexibility in scheduling, running,
          and monitoring your jobs, which can run in parallel across a dynamically scaled set of
          containers. For reference documentation for these resources, see
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Co_Operating_System_runtime_operator_API_reference)
          in the Ab Initio Help.

          The following topics describe the basic requirements and procedures for creating custom
          resources for running jobs after you have installed the runtime operator.

          ## Requirements for using custom resources

          The runtime operator is fully configured when you install it in your OpenShift cluster
          through OperatorHub. Importantly, the operator is installed in unrestricted mode,
          which means it can manage the CoOperatingSystemRuntime family of CRDs in any namespace
          in your cluster.

          For creating custom resources in order to run jobs using the operator, you must meet
          the requirements and configure the settings described in the following sections.

          ### Container images for job agents

          To run jobs of kind CoOperatingSystemRuntime, you must have a way to build the following
          OCI container images:

          - A *processing* image with the Co>Operating System server software installed in it.
          - A *sandbox workspace* image with the graphs and other files needed to run your jobs.
          This image is based on the Co>Operating System image and functions as the job's launcher
          agent, which coordinates with a set of worker agents (processing containers) in order to
          run a job in parallel.

          For building and managing these container images, you need the following:

          - A Co>Operating System installation package.
          - Access to a technical repository containing the projects that make up your application.
          - A container-building tool.
          - Access to a private container registry for hosting the images you build. You need pull
          and push access to this registry from your container build context and pull access from
          your OpenShift cluster (for example, via a Kubernetes Secret).

          > WARNING! Never push container images with Ab Initio software to a public registry. Push
          them to a private container registry only.

          The Co>Operating System includes reference Dockerfiles and example scripts for building
          container images. Typically, you build these images as part of your CI/CD pipeline. For
          more information, contact your Ab Initio administrator or Ab Initio Support.

          ### Ab Initio key servers

          The key servers that you use to enable jobs must be reachable from your cluster. You
          specify these key servers via the `AB_HOSTNAME_KEYSERVER_URLS` configuration variable in
          the pod specifications for launcher and worker agents in the CoOperatingSystemRuntime
          resource.

          To discuss the software activation key requirements for jobs that run in Kubernetes,
          contact your key server administrator or Ab Initio Support.

          ### Namespace and role considerations

          The runtime operator is installed with the cluster-wide RBAC roles and role bindings that
          it needs in order to manage custom resources and run jobs.

          You typically use a separate namespace or namespaces for creating and managing custom
          resources to run jobs. Each of these namespaces must be equipped with a service
          account that can list pod limits and get and patch CoOperatingSystemRuntime resources.

          For each namespace in which you intend to create custom resources, create the needed RBAC
          role and role binding by applying the following Role and RoleBinding manifests:

          ```yaml
          apiVersion: rbac.authorization.k8s.io/v1
          kind: Role
          metadata:
            name: cooperatingsystemruntime-role
          rules:
          - apiGroups:
            - ""
            resources:
            - limitranges
            verbs:
            - list
          - apiGroups:
            - cloud.abinitio.com
            resources:
            - cooperatingsystemruntimes
            verbs:
            - get
            - patch
          ---
          apiVersion: rbac.authorization.k8s.io/v1
          kind: RoleBinding
          metadata:
            name: run-cooperatingsystemruntime-rolebinding
          subjects:
          - kind: ServiceAccount
            name: default
          roleRef:
            kind: Role
            name: cooperatingsystemruntime-role
            apiGroup: rbac.authorization.k8s.io
          ```

          One way to do this is to save these manifests to a file and specify a namespace when
          using `oc` to apply them to the cluster. In the following example, the manifests are
          saved to a file named `runtime-rbac.yaml` and the role and role binding are to be created
          for the `default` service account in the `hello-world` namespace:

          ```
          oc -n hello-world apply -f runtime-rbac.yaml
          ```

          To bind the role to a service account other than `default`, simply update the value of
          `subjects[0].name` in the provided RoleBinding manifest.

          ### Dynamic volume provisioning

          The launcher and worker template sections of the CoOperatingSystemRuntime resource
          require you to specify persistent volume claims (PVCs) for job recovery data. To ensure
          that these PVCs can be bound to approriate storage volumes, dynamic volume provisioning
          must be enabled in your cluster.

          Work with your cluster administrator to identify the storage needs of your jobs and to
          ensure that dynamic volume provisioning is enabled so that PVCs can be matched to
          persistent volumes of the right storage class.

          For more information about dynamic storage provisioning, see the
          [OpenShift documentation](https://docs.openshift.com/container-platform/latest/storage/dynamic-provisioning.html).

          ## Quick start and examples

          For an overview of the key concepts associated with running jobs in Kubernetes, see
          ["About running jobs in Kubernetes"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Configuring_and_running_Co_Operating_System_jobs_in_Kubernetes/About_running_jobs_in_Kubernetes)
          in the Ab Initio Help.

          As described in this topic, you might begin by creating a CoOperatingSystemRuntime
          manifest that defines the configuration and compute resources needed for a standalone test
          job. You could then use the specification for this job to create a CoOperatingSystemRuntimeTemplate
          resource, which would collect common settings and make it possible to concisely specify
          CoOperatingSystemRuntime jobs.

          You could also use a runtime pool (of kind CoOperatingSystemRuntime) to extend these basic
          resources: such a pool consists of an actively running group of templated runtime objects whose
          pods can be used to run jobs on demand. Finally, for reserving resources in a pool, you could
          create a CoOperatingSystemRuntimeClaim resource.

          For more information about these custom resources, refer to the
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Co_Operating_System_runtime_operator_API_reference).

          For a set of integrated examples (including complete YAML manifests) that show you how to
          create and use the custom resources, see ["Example manifests for running jobs"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Configuring_and_running_Co_Operating_System_jobs_in_Kubernetes/Creating_custom_resources_for_running_jobs/Example_manifests_for_running_jobs).
        displayName: Co>Operating System Runtime Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - abinitio
        - runtime
        - operator
        links:
        - name: Ab Initio
          url: https://www.abinitio.com/
        maintainers:
        - email: support@abinitio.com
          name: Ab Initio Support
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Ab Initio
        relatedImages:
        - registry.connect.redhat.com/abinitio/cooperating-system-runtime-operator@sha256:ee30210a153e8b3ba09080737216d881cc6a07e1a888e9684be0d17fd4ff791d
        - registry.connect.redhat.com/abinitio/runtime-operator-bundle@sha256:b9ffc18b2d88dfab92583af35b27e0ae36bceac7778cb448ab2ea2eae2ab3e94
        version: 4.2.3-0
      entries:
      - name: abinitio-runtime-operator.v4.2.3-0
        version: 4.2.3-0
      name: stable
    defaultChannel: release-4.3
    packageName: abinitio-runtime-operator
    provider:
      name: Ab Initio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Trilio
      provider-url: https://trilio.io/
    name: tvo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tvo-operator.6.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tvo.trilio.io/v1",
                "kind": "TVOControlPlane",
                "metadata": {
                  "name": "tvocontrolplane-sample"
                },
                "spec": {
                  "crdType": "TVOControlPlane",
                  "common": {
                    "dmapi_workers": "16",
                    "memcached_servers": "",
                    "my_ip": {
                      "host_interface": null
                    },
                    "nova_group_id": "42436",
                    "nova_user_id": "42436",
                    "oslo_enable_proxy_headers_parsing": false,
                    "trustee_role": "creator"
                  },
                  "database": {
                    "common": {
                      "host": "EDIT_DB_HOSTNAME",
                      "root_password": "EDIT_PASSWORD",
                      "root_user_name": "root"
                    },
                    "datamover_api": {
                      "database": "dmapi",
                      "password": "EDIT_PASSWORD",
                      "user": "dmapi"
                    },
                    "wlm_api": {
                      "database": "workloadmgr",
                      "password": "EDIT_PASSWORD",
                      "user": "workloadmgr"
                    }
                  },
                  "helm3_hook": true,
                  "images": {
                    "triliovault_datamover_api": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_datamover_db_sync": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_object_store": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_api": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_cloud_trust": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_cron": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_db_sync": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_scheduler": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_workloads": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1"
                  },
                  "keystone": {
                    "common": {
                      "admin_role_name": "admin",
                      "auth_uri": "",
                      "auth_url": "",
                      "ca_cert": "CERT MULTIPLE LINES\n",
                      "cloud_admin_domain_name": "Default",
                      "cloud_admin_project_name": "admin",
                      "cloud_admin_user_name": "admin",
                      "cloud_admin_user_password": "",
                      "is_self_signed_ssl_cert": true,
                      "keystone_auth_host": "",
                      "keystone_auth_port": "",
                      "keystone_auth_protocol": "",
                      "region_name": "regionOne",
                      "service_project_domain_name": "Default",
                      "service_project_name": "service"
                    },
                    "datamover_api": {
                      "internal_endpoint": "ENDPOINT_PROTOCOL_INTERNAL://ENDPOINT_HOST_INTERNAL:8784/v2",
                      "password": "EDIT_PASSWORD",
                      "public_auth_host": "",
                      "public_endpoint": "ENDPOINT_PROTOCOL_PUBLIC://ENDPOINT_HOST_PUBLIC:8784/v2",
                      "service_desc": "TrilioVault Datamover Api Service",
                      "service_name": "dmapi",
                      "service_type": "datamover",
                      "user": "dmapi"
                    },
                    "identity": null,
                    "keystone_interface": "internal",
                    "wlm_api": {
                      "internal_endpoint": "ENDPOINT_PROTOCOL_INTERNAL://ENDPOINT_HOST_INTERNAL:8781/v1/$(tenant_id)s",
                      "password": "EDIT_PASSWORD",
                      "public_auth_host": "",
                      "public_endpoint": "ENDPOINT_PROTOCOL_PUBLIC://ENDPOINT_HOST_PUBLIC:8781/v1/$(tenant_id)s",
                      "service_desc": "TrilioVault Workloadmgr Api Service",
                      "service_name": "TrilioVaultWLM",
                      "service_type": "workloads",
                      "user": "triliovault"
                    }
                  },
                  "labels": {
                    "datamover_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_cron": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_scheduler": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_workloads": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    }
                  },
                  "pod": {
                    "replicas": {
                      "triliovault_datamover_api": 3,
                      "triliovault_object_store": 3,
                      "triliovault_wlm_api": 3,
                      "triliovault_wlm_cron": 1,
                      "triliovault_wlm_scheduler": 3,
                      "triliovault_wlm_workloads": 3
                    },
                    "security_context": {
                      "triliovault": {
                        "container": {
                          "triliovault_datamover_api": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 0,
                            "runAsUser": 63630
                          },
                          "triliovault_datamover_api_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 63630,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_api": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_cron": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_scheduler": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_workloads": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "wlm_cloud_trust_creation": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 42436
                          }
                        }
                      }
                    }
                  },
                  "rabbitmq": {
                    "common": {
                      "admin_password": "EDIT_PASSWORD",
                      "admin_user": "admin",
                      "driver": "messagingv2",
                      "host": "EDIT_HOST",
                      "port": "5672"
                    },
                    "datamover_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "",
                      "user": "dmapi",
                      "vhost": "dmapi"
                    },
                    "wlm_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "",
                      "user": "workloadmgr",
                      "vhost": "workloadmgr"
                    }
                  },
                  "triliovault_backup_targets": [
                    {
                      "backup_target_name": "S3_BT1",
                      "backup_target_type": "s3",
                      "is_default": true,
                      "s3_access_key": "ACCESSKEY1",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "BUCKET1",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "ENDPOINT_URL1",
                      "s3_region_name": "REGION1",
                      "s3_secret_key": "SECRETKEY1",
                      "s3_self_signed_cert": false,
                      "s3_signature_version": "default",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "amazon_s3"
                    },
                    {
                      "backup_target_name": "S3_BT2",
                      "backup_target_type": "s3",
                      "is_default": true,
                      "s3_access_key": "ACCESSKEY2",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "BUCKET2",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "ENDPOINT_URL2",
                      "s3_region_name": "REGION2",
                      "s3_secret_key": "SECRETKEY2",
                      "s3_self_signed_cert": true,
                      "s3_signature_version": "default",
                      "s3_ssl_ca_cert": "SSL_CERT_LINE_1\n",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "amazon_s3"
                    },
                    {
                      "backup_target_name": "NFS_BT3",
                      "backup_target_type": "nfs",
                      "is_default": false,
                      "nfs_options": "nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10",
                      "nfs_shares": "11.30.1.10:/mnt/share"
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "true"
          containerImage: registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:3d80cad27a1043fb61735e7a6fb156c98b269cfcc68f8b9712713a7d4f6ad6bd
          createdAt: "2025-01-14T11:20:30Z"
          description: Cloud-Native Data Protection for OpenStack
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: trilio-openstack
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trilioData/triliovault-cfg-scripts
          support: Trilio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trilio for OpenStack Control Plane. Includes all control
              plane components like Datamover Api, Trilio object store and Workloadmgr
              services.
            displayName: Trilio for OpenStack Control Plane
            kind: TVOControlPlane
            name: tvocontrolplanes.tvo.trilio.io
            version: v1
          - description: Trilio for OpenStack Backup Target. This CR is responsible
              to add a new backup target.
            displayName: Trilio for OpenStack Backup Target
            kind: TVOBackupTarget
            name: tvobackuptargets.tvo.trilio.io
            version: v1
        description: |-
          Trilio for OpenStack provides scalable, native, agentless, multi-tenant backup and recovery solutions, ensuring seamless protection of workloads with flexible storage options for dynamic cloud environments.

            * OpenStack Backup and Recovery: Recover any OpenStack application quickly in the event of data loss or misconfiguration. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Such as One-Click-Restore to entire project recovery on different clusters.
            * Disaster Recovery: Recover any OpenStack application quickly in the event of a disaster. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Trilio makes OpenStack disaster recovery easy.

            * Migration: A tenant or administrator can capture an application and its data and non-disruptively migrate that exact point-in-time to another OpenStack cloud. The need to migrate OpenStack workloads can be driven by economics, security or test/dev.

            * Network Functions Virtualization backup and recovery: Business critical services like NFV can quickly be configured to any state, assuring the optimal quality of service. Trilio provides recovery from data damage and allows restoration of entire VNFs, selected VNFs, or individual data items using a point-in-time working copy. The platform also allows recovery from a disaster by restoring the OpenStack network topology and populating it with a working copy of the entire NFV.

          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for OpenStack
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OpenStack
        - Backup
        - Recovery
        - RHOSO Backup
        - Disaster Recovery
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/openstack-backup-and-recovery/
        - name: Operator Documentation
          url: https://docs.trilio.io/openstack
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        provider:
          name: Trilio
          url: https://trilio.io/
        relatedImages:
        - registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:3d80cad27a1043fb61735e7a6fb156c98b269cfcc68f8b9712713a7d4f6ad6bd
        - registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1
        - registry.connect.redhat.com/trilio/tvo-operator-rhoso@sha256:50b7f0a5f3fdd98cfb0294d664cc01ffd1e5359be66a3da14f5552e9cb3bae2c
        - registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82
        version: 6.1.1
      entries:
      - name: tvo-operator.6.1.1
        version: 6.1.1
      name: 6.0.x
    - currentCSV: tvo-operator.6.1.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tvo.trilio.io/v1",
                "kind": "TVOControlPlane",
                "metadata": {
                  "name": "tvocontrolplane-sample",
                  "namespace": "trilio-openstack"
                },
                "spec": {
                  "common": {
                    "dmapi_workers": "16",
                    "memcached_servers": "memcached-0.memcached.openstack.svc:11212",
                    "nova_group_id": "42436",
                    "nova_user_id": "42436",
                    "oslo_enable_proxy_headers_parsing": false,
                    "trustee_role": "member"
                  },
                  "crdType": "TVOControlPlane",
                  "database": {
                    "common": {
                      "host": "openstack.openstack.svc",
                      "port": 3306,
                      "root_password": "openstack",
                      "root_user_name": "root"
                    },
                    "datamover_api": {
                      "database": "dmapi",
                      "password": "dsw21aSyH5gHH6XE72k11Y3t3C308jY5rP02ndwJW",
                      "user": "dmapi"
                    },
                    "wlm_api": {
                      "database": "workloadmgr",
                      "password": "dfeeYb72OwUzX5YuRKcVjxXJaELV8YT0jZczIQwys0v",
                      "user": "workloadmgr"
                    }
                  },
                  "helm3_hook": true,
                  "images": {
                    "triliovault_datamover_api": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_datamover_db_sync": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_object_store": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_api": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_cloud_trust": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_cron": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_db_sync": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_scheduler": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_workloads": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd"
                  },
                  "keystone": {
                    "common": {
                      "admin_role_name": "admin",
                      "auth_uri": "https://keystone-internal.openstack.svc:5000/v3",
                      "auth_url": "https://keystone-internal.openstack.svc:5000",
                      "cloud_admin_domain_name": "Default",
                      "cloud_admin_project_name": "admin",
                      "cloud_admin_user_name": "admin",
                      "cloud_admin_user_password": "openstack",
                      "is_self_signed_ssl_cert": true,
                      "keystone_auth_host": "keystone-internal.openstack.svc",
                      "keystone_auth_port": "5000",
                      "keystone_auth_protocol": "https",
                      "region_name": "regionOne",
                      "service_project_domain_name": "Default",
                      "service_project_name": "service"
                    },
                    "datamover_api": {
                      "internal_endpoint": "https://triliovault-datamover-internal.trilio-openstack.svc:8784/v2",
                      "password": "defajgh48zgt88wFzzhwEt3xHGeCOdExYbLGQN2XRm",
                      "public_auth_host": "triliovault-datamover-public-trilio-openstack.apps.trilio.trilio.bos2",
                      "public_endpoint": "https://triliovault-datamover-public-trilio-openstack.apps.trilio.trilio.bos2/v2",
                      "service_desc": "TrilioVault Datamover Api Service",
                      "service_name": "dmapi",
                      "service_type": "datamover",
                      "user": "dmapi"
                    },
                    "keystone_interface": "internal",
                    "wlm_api": {
                      "internal_endpoint": "https://triliovault-wlm-internal.trilio-openstack.svc:8781/v1/$(tenant_id)s",
                      "password": "dsdeJl8axy0gv14fURwUUxy0qUOQbugUUOfXikz6j",
                      "public_auth_host": "triliovault-wlm-public-trilio-openstack.apps.trilio.trilio.bos2",
                      "public_endpoint": "https://triliovault-wlm-public-trilio-openstack.apps.trilio.trilio.bos2/v1/$(tenant_id)s",
                      "service_desc": "TrilioVault Workloadmgr Api Service",
                      "service_name": "TrilioVaultWLM",
                      "service_type": "workloads",
                      "user": "triliovault"
                    }
                  },
                  "labels": {
                    "datamover_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_cron": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_scheduler": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_workloads": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    }
                  },
                  "pod": {
                    "replicas": {
                      "triliovault_datamover_api": 3,
                      "triliovault_object_store": 3,
                      "triliovault_wlm_api": 3,
                      "triliovault_wlm_cron": 1,
                      "triliovault_wlm_scheduler": 3,
                      "triliovault_wlm_workloads": 3
                    },
                    "security_context": {
                      "triliovault": {
                        "container": {
                          "triliovault_datamover_api": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 0,
                            "runAsUser": 63630
                          },
                          "triliovault_datamover_api_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 63630,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_api": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_cron": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_scheduler": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_workloads": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "wlm_cloud_trust_creation": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 42436
                          }
                        }
                      }
                    }
                  },
                  "rabbitmq": {
                    "common": {
                      "admin_password": "EDIT_PASSWORD",
                      "admin_user": "admin",
                      "driver": "messagingv2",
                      "host": "EDIT_HOST",
                      "port": "15671",
                      "ssl": true
                    },
                    "datamover_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "rabbit://dmapi:${PASSWORD}@${RABBITMQ_HOST}:5671/dmapi?ssl=1",
                      "user": "dmapi",
                      "vhost": "dmapi"
                    },
                    "wlm_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "rabbit://workloadmgr:${PASSWORD}@${RABBITMQ_HOST}:5671/workloadmgr?ssl=1",
                      "user": "workloadmgr",
                      "vhost": "workloadmgr"
                    }
                  },
                  "triliovault_backup_targets": [
                    {
                      "backup_target_name": "BT1_S3",
                      "backup_target_type": "s3",
                      "is_default": false,
                      "s3_access_key": "",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "",
                      "s3_region_name": "",
                      "s3_secret_key": "",
                      "s3_self_signed_cert": false,
                      "s3_signature_version": "default",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "amazon_s3"
                    },
                    {
                      "backup_target_name": "BT2_Other_S3",
                      "backup_target_type": "s3",
                      "is_default": true,
                      "s3_access_key": "ACCESSKEY2",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "BUCKET2",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "ENDPOINT_URL2",
                      "s3_region_name": "REGION2",
                      "s3_secret_key": "SECRETKEY2",
                      "s3_self_signed_cert": true,
                      "s3_signature_version": "default",
                      "s3_ssl_ca_cert": "SSL_CERT_LINE_1\nSSL_CERT_LINE_2\nSSL_CERT_LINE_N\n",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "other_s3"
                    },
                    {
                      "backup_target_name": "BT3_NFS",
                      "backup_target_type": "nfs",
                      "is_default": false,
                      "nfs_options": "nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10",
                      "nfs_shares": "192.168.2.3:/nfs/share"
                    }
                  ]
                }
              },
              {
                "apiVersion": "tvo.trilio.io/v1",
                "kind": "TVOBackupTarget",
                "metadata": {
                  "name": "tvobackuptarget-sample",
                  "namespace": "trilio-openstack"
                },
                "spec": {
                  "crdType": "TVOBackupTarget",
                  "images": {
                    "triliovault_wlm_api": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_object_store": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd"
                  },
                  "triliovault_backup_target": {
                    "backup_target_name": "S3_BT4",
                    "backup_target_type": "s3",
                    "is_default": false,
                    "s3_type": "other_s3",
                    "s3_access_key": "",
                    "s3_secret_key": "",
                    "s3_region_name": "",
                    "s3_bucket": "",
                    "s3_endpoint_url": "",
                    "s3_signature_version": "default",
                    "s3_auth_version": "DEFAULT",
                    "s3_bucket_object_lock_enabled": false,
                    "s3_ssl_enabled": true,
                    "s3_ssl_verify": true,
                    "s3_self_signed_cert": true,
                    "s3_ssl_ca_cert": "SSL_CERT_LINE_1\nSSL_CERT_LINE_2\nSSL_CERT_LINE_N",
                    "nfs_shares": "192.168.2.30:/nfs/share",
                    "nfs_options": "nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "true"
          containerImage: registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:1ac93a84ea57a554e84fadf43839016324a432825b50e168702c88af5fcfd4d5
          createdAt: "2025-01-14T11:20:30Z"
          description: Cloud-Native Data Protection for OpenStack
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: tvo-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trilioData/triliovault-cfg-scripts
          support: Trilio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trilio for OpenStack Control Plane. Includes all control
              plane components like Datamover Api, Trilio object store and Workloadmgr
              services.
            displayName: Trilio for OpenStack Control Plane
            kind: TVOControlPlane
            name: tvocontrolplanes.tvo.trilio.io
            version: v1
          - description: Trilio for OpenStack Backup Target. This CR is responsible
              to add a new backup target.
            displayName: Trilio for OpenStack Backup Target
            kind: TVOBackupTarget
            name: tvobackuptargets.tvo.trilio.io
            version: v1
        description: |-
          Trilio for OpenStack provides scalable, native, agentless, multi-tenant backup and recovery solutions, ensuring seamless protection of workloads with flexible storage options for dynamic cloud environments.

            * OpenStack Backup and Recovery: Recover any OpenStack application quickly in the event of data loss or misconfiguration. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Such as One-Click-Restore to entire project recovery on different clusters.
            * Disaster Recovery: Recover any OpenStack application quickly in the event of a disaster. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Trilio makes OpenStack disaster recovery easy.

            * Migration: A tenant or administrator can capture an application and its data and non-disruptively migrate that exact point-in-time to another OpenStack cloud. The need to migrate OpenStack workloads can be driven by economics, security or test/dev.

            * Network Functions Virtualization backup and recovery: Business critical services like NFV can quickly be configured to any state, assuring the optimal quality of service. Trilio provides recovery from data damage and allows restoration of entire VNFs, selected VNFs, or individual data items using a point-in-time working copy. The platform also allows recovery from a disaster by restoring the OpenStack network topology and populating it with a working copy of the entire NFV.

          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for OpenStack
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OpenStack
        - Backup
        - Recovery
        - RHOSO Backup
        - Disaster Recovery
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/openstack-backup-and-recovery/
        - name: Operator Documentation
          url: https://docs.trilio.io/openstack
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        provider:
          name: Trilio
          url: https://trilio.io/
        relatedImages:
        - registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82
        - registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:1ac93a84ea57a554e84fadf43839016324a432825b50e168702c88af5fcfd4d5
        - registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd
        - registry.connect.redhat.com/trilio/tvo-operator-rhoso@sha256:8073e7f803f0922c5b6532fdb99be45b6b2652bcd9d0ed554453d5e81ad1326a
        version: 6.1.10
      entries:
      - name: tvo-operator.6.1.10
        version: 6.1.10
      name: 6.1.x
    defaultChannel: 6.0.x
    packageName: tvo-operator
    provider:
      name: Trilio
      url: https://trilio.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: prometheus-exporter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometheus-exporter-operator.v0.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "monitoring.3scale.net/v1alpha1",
                "kind": "PrometheusExporter",
                "metadata": {
                  "name": "example-memcached"
                },
                "spec": {
                  "dbHost": "your-memcached-host",
                  "dbPort": 11211,
                  "grafanaDashboard": {
                    "label": {
                      "key": "autodiscovery",
                      "value": "enabled"
                    }
                  },
                  "type": "memcached"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/3scale/prometheus-exporter-operator:v0.7.0
          createdAt: "2023-09-07 00:00:00"
          description: Operator to setup 3rd party prometheus exporters, with a collection
            of grafana dashboards
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/3scale-ops/prometheus-exporter-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Configures a prometheus exporter to monitor a memcached instance
            displayName: PrometheusExporter
            kind: PrometheusExporter
            name: prometheusexporters.monitoring.3scale.net
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK to centralize the setup of 3rd party prometheus exporters on **Kubernetes/OpenShift**, with a collection of grafana dashboards.

          By just providing a few parameters like *dbHost* or *dbPort* (operator manage the container image, port, argument, command, volumes... and also prometheus `ServiceMonitor` and `GrafanaDashboard` k8s objects), you can setup different prometheus exporters to monitor:
          * The **internals from different databases**
          * **HTTP/TCP endpoints** (availability, latency, SSL/TLS certificate expiration...)
          * Any available **cloudwatch metric from any AWS Service**
          * Sendgrid email statistics (delivered, bounces, errors, spam...)

          Current prometheus exporters types supported, managed by same prometheus-exporter-operator:
          * memcached
          * redis
          * mysql
          * postgresql
          * sphinx
          * es (elasticsearch)
          * cloudwatch
          * probe (blackbox)
          * sendgrid

          The operator manages the lifecycle of the following objects:
          * Deployment (one per CR)
          * Service (one per CR)
          * ServiceMonitor (optional, one per CR)
          * GrafanaDashboard (optional, one per Namespace)

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale-ops/prometheus-exporter-operator#documentation).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale-ops/prometheus-exporter-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:
          * Raising any issues you find using Prometheus Exporter Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale-ops/prometheus-exporter-operator/pulls)
          * Submitting a patch or opening a PR
          * Improving [documentation](https://github.com/3scale-ops/prometheus-exporter-operator)
          * Talking about Prometheus Exporter Operator
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale-ops/prometheus-exporter-operator/issues).

          ### License
          Prometheus Exporter Operator is licensed under the [Apache 2.0 license](https://github.com/3scale-ops/prometheus-exporter-operator/blob/main/LICENSE)
        displayName: Prometheus Exporter Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - metrics
        - observability
        - prometheus
        - exporter
        - grafana
        - mysql
        - postgresql
        - memcached
        - redis
        - sphinx
        - elasticsearch
        - cloudwatch
        - blackbox
        - sendgrid
        links:
        - name: GitHub
          url: https://github.com/3scale-ops/prometheus-exporter-operator
        maintainers:
        - email: 3scale-operations@redhat.com
          name: 3scale Ops
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - quay.io/3scale/prometheus-exporter-operator:v0.7.0
        - quay.io/openshift-community-operators/prometheus-exporter-operator@sha256:e62276f4c7e583d1fb24997fa970662f1a8d510de0baea159ba796b48cff709b
        version: 0.7.0
      entries:
      - name: prometheus-exporter-operator.v0.7.0
        version: 0.7.0
      - name: prometheus-exporter-operator.v0.3.4
        version: 0.3.4
      name: alpha
    defaultChannel: alpha
    packageName: prometheus-exporter-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: volume-expander-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: volume-expander-operator.v0.3.6
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Storage,Monitoring
          certified: "false"
          containerImage: quay.io/redhat-cop/volume-expander-operator@sha256:e4059a66a9af7c786c8c651abb8a57a55a0e528342e3a59f8c264b40f87d6e25
          createdAt: "2022-05-05T13:25:53Z"
          description: This operator provides automation expanding pod's volumes when
            they are about to run out of space.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: volume-expander-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/volume-expander-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The purpose of the volume-expander-operator is to expand volumes when they are running out of space.
          This is achieved by using the [volume expansion feature](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#expanding-persistent-volumes-claims).

          The operator periodically checks the `kubelet_volume_stats_used_bytes` and `kubelet_volume_stats_capacity_bytes published` by the kubelets to decide when to expand a volume.
          Notice that these metrics are generated only when a volume is mounted to a pod. Also the kubelet takes a minute or two to start generating accurate values for these metrics. The operator accounts for that.

          This operator works based on the following annotations to PersistentVolumeClaim resources:

          | Annotation | Default &nbsp;  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  | Description  |
          | :--- | :--- | :--- |
          | `volume-expander-operator.redhat-cop.io/autoexpand`  | N/A  | if set to "true" enables the volume-expander-operator to watch on this PVC  |
          | `volume-expander-operator.redhat-cop.io/polling-frequency`  | `"30s"` | How frequently to poll the volume metrics. Express this value as a valid golang [Duration](https://golang.org/pkg/time/#ParseDuration)  |
          | `volume-expander-operator.redhat-cop.io/expand-threshold-percent` | `"80"` | the percentage of used storage after which the volume will be expanded. This must be a positive integer. |
          | `volume-expander-operator.redhat-cop.io/expand-by-percent` | `"25"` | the percentage by which the volume will be expanded, relative to the current size. This must be an integer between 0 and 100 |
          | `volume-expander-operator.redhat-cop.io/expand-up-to` | MaxInt64 | the upper bound for this volume to be expanded to. The default value is the largest quantity representable and is intended to be interpreted as infinite. If the default is used it is recommend to ensure the namespace has a quota on the used storage class. |

          Note that not all of the storage driver implementations support volume expansion. It is a responsibility of the user/platform administrator to ensure that storage class and the persistent volume claim meet all the requirements needed for the volume expansion feature to work properly.

          This operator was tested with [OCS](https://www.redhat.com/en/technologies/cloud-computing/openshift-container-storage), but should work with any other storage driver that supports volume expansion.
        displayName: Volume Expander Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - volume
        - storage
        - csi
        - expansion
        links:
        - name: Volume Expander Operator
          url: https://github.com/redhat-cop/volume-expander-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/volume-expander-operator@sha256:e4059a66a9af7c786c8c651abb8a57a55a0e528342e3a59f8c264b40f87d6e25
        - quay.io/openshift-community-operators/volume-expander-operator@sha256:b775df99f891e2cee9c2169e9c948a8d61d65b4cc90f36752b46a56e2d4be602
        version: 0.3.6
      entries:
      - name: volume-expander-operator.v0.3.6
        version: 0.3.6
      - name: volume-expander-operator.v0.3.5
        version: 0.3.5
      - name: volume-expander-operator.v0.3.4
        version: 0.3.4
      - name: volume-expander-operator.v0.3.3
        version: 0.3.3
      - name: volume-expander-operator.v0.3.2
        version: 0.3.2
      - name: volume-expander-operator.v0.3.1
        version: 0.3.1
      - name: volume-expander-operator.v0.3.0
        version: 0.3.0
      - name: volume-expander-operator.v0.2.0
        version: 0.2.0
      - name: volume-expander-operator.v0.1.8
        version: 0.1.8
      - name: volume-expander-operator.v0.1.7
        version: 0.1.7
      - name: volume-expander-operator.v0.1.6
        version: 0.1.6
      - name: volume-expander-operator.v0.1.5
        version: 0.1.5
      - name: volume-expander-operator.v0.1.4
        version: 0.1.4
      - name: volume-expander-operator.v0.1.3
        version: 0.1.3
      - name: volume-expander-operator.v0.1.2
        version: 0.1.2
      - name: volume-expander-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: volume-expander-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc
      provider-url: ""
    name: openshift-gitops-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-gitops-operator.v1.10.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:b0dc693854319ada341e2e3872b34d7db9823b470ed369edfde88d3ae73a40e1
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.8.19\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:2bec31b0c5407ffcecfd8b860d8afb1629eaab31a250f60191f94a824e0a52f4
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:c779ad87a7f71d851c2af818abf16e5151c43d3fd54e64eac2fc7117c00753f5
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:a74e0a1fe3589ebe9f226a2bad20e9a5d5601a0e62c5f3290902f466f55b7160
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:ed530db9b4a29fb591ea208cd0c6b3b83b49537ff5a0a4f501b54ce667f9b303
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:b0dc693854319ada341e2e3872b34d7db9823b470ed369edfde88d3ae73a40e1
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:b5c8a6c7438a45125fc7fd970946f715ab7193b7446d625fae80dde9d1f3f914
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:ece2fee4227ad1becadca47028b78ceaf8717a98ec84e3f1b5188a135c4b093c
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:0905ba3f5cf87780a1e95b6a00ea7cd340d4ed1b5054e4b2c82406270baeaefa
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:d35dff5d59e748ef0404e7e76b0237ea96b2bb19b86fa04a3a34df7a379277b2
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:da5d5061dbc2ec5082cf14b6c600fb5400b83cf91d7ccebfa80680a238d275db
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:4c842f0ea8f0e9b53eb16d94488fc2f4298bd8e4be2f48713be9157da24549e6
        version: 1.10.6
      entries:
      - name: openshift-gitops-operator.v1.10.6
        version: 1.10.6
      - name: openshift-gitops-operator.v1.10.5
        version: 1.10.5
      - name: openshift-gitops-operator.v1.10.4
        version: 1.10.4
      - name: openshift-gitops-operator.v1.10.3
        version: 1.10.3
      - name: openshift-gitops-operator.v1.10.2
        version: 1.10.2
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.10
    - currentCSV: openshift-gitops-operator.v1.11.7-0.1724840231.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d6ad2ee900bf99a3672049cc8ce9c94870d41176501ded1abbc1b229b9553401
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          olm.substitutesFor: openshift-gitops-operator.v1.11.7
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.9.21\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:4d22a7a6cc2f0442889512267ae3d9356f05ff0dfdbbe137c3d8ebebc24818c8
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:0b926fc9eae775425faa1ab9709a36fdac15afe4bfe523720e17ecf5df45bb28
        - registry.redhat.io/rhel8/redis-6@sha256:c4a98010f7dd5faec2047bb9803061704233a8efc930be2a02386ac16d062d86
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:42f809f32f1d43186b849e3cc78063d3ebb2b54c55b2a1b77908af09a5ce044b
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d6ad2ee900bf99a3672049cc8ce9c94870d41176501ded1abbc1b229b9553401
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:c94c2167dc957856682a104b9a6187d3d321dec71ae794acc0dc37794d2cc373
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:31bdff225bd825d02ce0f468b1edc77541ce85b7b9111f14a583c418c984232f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:0df37cf0a0e48efae02a0711c6da61c6165e7856db97097e98d56c8b6a137bb9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:eade50b8321c1b2e0a8ac4dcb34596d43dea0a137b8b97b6eb68c6d469c8b200
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:959de6a95ef8978f66fdbe1033bcaa0ddeff9a376023e5d1d2698c5acb417305
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:7ea96000768b3cf7711150531c4c1c7edff2c45a2f29fe10bd9811ab6b281909
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        version: 1.11.7+0.1724840231.p
      entries:
      - name: openshift-gitops-operator.v1.11.7-0.1724840231.p
        version: 1.11.7+0.1724840231.p
      - name: openshift-gitops-operator.v1.11.7
        version: 1.11.7
      - name: openshift-gitops-operator.v1.11.6
        version: 1.11.6
      - name: openshift-gitops-operator.v1.11.5
        version: 1.11.5
      - name: openshift-gitops-operator.v1.11.4
        version: 1.11.4
      - name: openshift-gitops-operator.v1.11.3
        version: 1.11.3
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.11
    - currentCSV: openshift-gitops-operator.v1.12.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:48dd1254fd3a887aef2eae9239f68637eae18514a50f72ea504414d83dc727b8
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.10.18\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:33bbb88343285a0510670384b87d0226dd6de8aa12c78b68921362c4d6f5a6aa
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:7d82c719b1cef64607d30e8aaa5ab293955771c5b1dbd430e0befc988a43356d
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:80198f65f7e3f9022a34e0342e9423807b855dcb7bda810172eebc9a27afb5c2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:73918f3b3c507fc64006b7a500ecfa9d58151d694852f696c41a4412edffc78e
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:1cf485a889c7586cb4944f000b53c0e97d08f97ba14e580bec57dad7cb13712e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:a1d4e26ea755181818401697f18260b9e876aa441be14830f9142081ee22a24d
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:06a6637c4776f4285bcb295d327ee60b1aed61b7adc5f7ab52898d79281ced70
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9e0fee30842a16d7b8a39d336123c80c5271cb2ceb50759fc7ee51a4ed09ceb3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:dbf3038daf7c797123c511f9a609c3485cb1a5bcae53c614fad17e0a65fa7ee3
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:b5736d1106db29fcdf42328ca20b96382d4339f90b97a07120ea73ee174ea1ad
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:48dd1254fd3a887aef2eae9239f68637eae18514a50f72ea504414d83dc727b8
        - registry.redhat.io/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        version: 1.12.6
      entries:
      - name: openshift-gitops-operator.v1.12.6
        version: 1.12.6
      - name: openshift-gitops-operator.v1.12.5-0.1727371523.p
        version: 1.12.5+0.1727371523.p
      - name: openshift-gitops-operator.v1.12.5
        version: 1.12.5
      - name: openshift-gitops-operator.v1.12.4
        version: 1.12.4
      - name: openshift-gitops-operator.v1.12.3
        version: 1.12.3
      - name: openshift-gitops-operator.v1.12.2
        version: 1.12.2
      - name: openshift-gitops-operator.v1.12.1
        version: 1.12.1
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.12
    - currentCSV: openshift-gitops-operator.v1.13.3-0.1741683398.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d41034bcf5c28bcb8afef08678793d0cc27a4032e2811a0c496c3bd0f10ecc17
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          olm.substitutesFor: openshift-gitops-operator.v1.13.3-0.1738142397.p
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.22.2
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.11.12\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_gitops/
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d4d5724f67859d24c32f0f5735f5af3e325f77db97f58bc7f17ed4b831b7e534
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d41034bcf5c28bcb8afef08678793d0cc27a4032e2811a0c496c3bd0f10ecc17
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:3f2804bc2af437ff1f06c214b48a1a780dfcfab995650d901c03270057eb9f3c
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:f04d565eb5162fd5a9c78cd8443af6a3b184a660277537f1d6d575caa2e85441
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c02dc2c79ee24ce5450ea4e19493ac2a1997eeb5bfd359291642c529826d0cdd
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:b982df02ea7c45a7603d83fe82cac12e1faac303a1b72af6a727512bb97441df
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:06a6637c4776f4285bcb295d327ee60b1aed61b7adc5f7ab52898d79281ced70
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:8a7c3e31ce414e6c6fecf1652343b22c52502902676bf4d7a75bf42bdabfca06
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:a366229e6ee26ebe2d7f765b2a2da6057a29e783835655b5d97545ac563b541a
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:e87515d016565bb69cb2c2ac40432e0127dd2cb20a490ac82019836032ba15e5
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:bde11fa83b7e708677b08ea995041f480b88edfb93e4a62c10380d101c0a349c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        version: 1.13.3+0.1741683398.p
      entries:
      - name: openshift-gitops-operator.v1.13.3-0.1741683398.p
        version: 1.13.3+0.1741683398.p
      - name: openshift-gitops-operator.v1.13.3-0.1738142397.p
        version: 1.13.3+0.1738142397.p
      - name: openshift-gitops-operator.v1.13.3
        version: 1.13.3
      - name: openshift-gitops-operator.v1.13.2
        version: 1.13.2
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.13
    - currentCSV: openshift-gitops-operator.v1.14.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:7cf924af77d9c56e70710b99e080ed8aee162f05ec472f32085a76ef85cf9879
          createdAt: "2025-05-22 12:40:45"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.12.13-1\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_gitops/
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bcf6b3136a5e71803cb518c8763c165bb46ee37ef7bf55503911d7fcb36b3a8f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:7cf924af77d9c56e70710b99e080ed8aee162f05ec472f32085a76ef85cf9879
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:2c45cfc01f9ec7577afc09cadc4c1a6f470836f6a0a7c24d66b791913f89bb05
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8096f824bd96e3148cf4b6936766c888d1fff0af9e9d0be440ae4feb6adc03f2
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:773592dfb9964970f444871a8812e8b74db3f205faaa0bf148defa1a2b87b649
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:42a79aad641e8607fc339e4ce7f9cf1d258be01f863dbc31a94d2c27edb645bd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1ed3b514bf9af6ac0d386e3739874d1d964e667d54e041c2d67edd769b0009fb
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c369df980874aae270ca7bc6455f1ca45467d75d25fe80d7bcb06a7826bdeaa3
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:7358787959af7e7e589edfc043a97d80ebab87536bde365d33be7a600071bf0e
        - registry.redhat.io/rhel8/redis-6@sha256:a9f30ed08abcab0122556a5485fbcf6e0fc03860f19954dcebdbf5e754876a45
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:1112160243f227a5d393eeee165bd4fed0d3f42646a9280cbe9af60ef728aeb2
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:b7d3c882fc25fbbea28951afb197d4d47ace253864889339396e20f0c6897a7f
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:cd4965d91c163160bcf43a02c54ca60b8704281c95de904f904df942bfd83bcd
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:97e32825f59c33cca7d8dba3580095205c20435ccd15b91cf0aff37db9841e0e
        version: 1.14.4
      entries:
      - name: openshift-gitops-operator.v1.14.4
        version: 1.14.4
      - name: openshift-gitops-operator.v1.14.3-0.1746016855.p
        version: 1.14.3+0.1746016855.p
      - name: openshift-gitops-operator.v1.14.3-0.1742836272.p
        version: 1.14.3+0.1742836272.p
      - name: openshift-gitops-operator.v1.14.3
        version: 1.14.3
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.14
    - currentCSV: openshift-gitops-operator.v1.15.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad49a3d14f843bde0d2365093d00ffa6d3b9d59a75c81e0c56710ad37b53bd92
          createdAt: "2024-11-25T03:57:37Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v2.13.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:911733d78ae6f36f642b4d63f044cd102b7eee170508eaf518ac7acf0f339698
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:41717c27915251bda8afeef651b609b8a9ed410e0fa09c4cf8fa7e91d6a94292
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad49a3d14f843bde0d2365093d00ffa6d3b9d59a75c81e0c56710ad37b53bd92
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:56653df97e4498ecd67b9645d75e44f65c625594e312dbcf0f09937b57d76010
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d41454824632475f0e88aa6e0031ec643bd37e1d575df36cd3ee63daf1403281
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:0c7f72546d0d918bfd21aff7157b983ff7c832b269f5efb84d2ed723a09bf612
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:6cec76d7ea70d77923cf4285177e375d34e96e3aecbe77b68cd5ff769e6e540b
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:2dd72760f736ab13e87d6e507e654c390d2d6af3154c6adb85610b5f58085b9c
        - registry.redhat.io/rhel9/redis-7@sha256:2fca0decc49230122f044afb2e7cd8f64921a00141c8c22c2f1402f3564f87f8
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:0b1771f697a700263c5b827dbde56a5c9bab610e9d7df55ef93885a4e54cc0e9
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:a9e2360f00c5c9840a100a6748bd905b8f34169140a33fb0ca4af9cf6db71642
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:5bda26e2c16beebf66dd8f3c3c55d48e2f00db870f2d9d4d44570d9d3b8bddb0
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:4d945dd1a6fc0e8b6cfc16f4359128f1427b094e76efd4ff31325a1839246107
        version: 1.15.4
      entries:
      - name: openshift-gitops-operator.v1.15.4
        version: 1.15.4
      - name: openshift-gitops-operator.v1.15.3
        version: 1.15.3
      - name: openshift-gitops-operator.v1.15.2
        version: 1.15.2
      - name: openshift-gitops-operator.v1.15.1
        version: 1.15.1
      - name: openshift-gitops-operator.v1.15.0-0.1738074324.p
        version: 1.15.0+0.1738074324.p
      - name: openshift-gitops-operator.v1.15.0
        version: 1.15.0
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.15
    - currentCSV: openshift-gitops-operator.v1.16.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:5672066f6a9d79c2ad2b8e44713fa67f384f5e1af803ce92c1bb807e12eb2ab4
          createdAt: "2025-09-30T07:01:55Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:3a58f07c4a562d106ec65fbeac3329fd06035e0da4627199cc984200e8365fac
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v2.14.21\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:3a58f07c4a562d106ec65fbeac3329fd06035e0da4627199cc984200e8365fac
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:1e7fb9262023798711dc58fecf9c57c2fbd260a7f942eef2a9fd2822dbfb0b74
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:636d307f13d82dd8984e362490fb3c8938b05d452e65f44c7c247e7fc4a8be8c
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:1a4d9d6d6c917a161fa3797fedf722a1ba9211eaa4c52cf976bebb629eabe40c
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:1935460f871ad2cc9fe097e1a7e32a67b4b4a3c58aa0412cffc28823f4ffb49f
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:2d361df79b6ea75f15eed2d6726303351298b47b4fee75aa8aac255a19e1ddbf
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:cebe39bdefb8ffc375f3d5f14bee4249f9886678a75fc5c80e43c6daabc5ef16
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:306ddf66c42edbebfdd35199b00edec8e3b01080e320b8d26f4527e89ff81f82
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:5672066f6a9d79c2ad2b8e44713fa67f384f5e1af803ce92c1bb807e12eb2ab4
        version: 1.16.5
      entries:
      - name: openshift-gitops-operator.v1.16.5
        version: 1.16.5
      - name: openshift-gitops-operator.v1.16.4
        version: 1.16.4
      - name: openshift-gitops-operator.v1.16.3
        version: 1.16.3
      - name: openshift-gitops-operator.v1.16.2
        version: 1.16.2
      - name: openshift-gitops-operator.v1.16.1
        version: 1.16.1
      - name: openshift-gitops-operator.v1.16.0-0.1746014725.p
        version: 1.16.0+0.1746014725.p
      - name: openshift-gitops-operator.v1.16.0
        version: 1.16.0
      - name: openshift-gitops-operator.v1.15.1
        version: 1.15.1
      - name: openshift-gitops-operator.v1.15.0
        version: 1.15.0
      - name: openshift-gitops-operator.v1.15.0-0.1738074324.p
        version: 1.15.0+0.1738074324.p
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.16
    - currentCSV: openshift-gitops-operator.v1.17.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad283faec7d54c2d4d255800929963c4e9ba929ddae1e779ff661088d7ceab0d
          createdAt: "2025-12-08T07:34:14Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:acc435158c325019d6c479c7d41107945207518869b434ea5c827c8c9babd00b
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.0.20\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:e1101b02df32a56a9aec80639372248b72963240dc86add446d0d07da65baca7
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:c02ad9e0709fbe52a34d9e8c146c90782cd49e351ce27e74e299cb9762246562
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad283faec7d54c2d4d255800929963c4e9ba929ddae1e779ff661088d7ceab0d
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8ea41862301665deb2eafd16fa19d4d76663cd20829256b575ba7090889cff82
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:d5233a088e71464f08d05f8a1f04efc236684634c89afcb93dbf3ac81a740a82
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bafe22c773f034d4cb4c0498f2f669abff23927378b424a05ba13b196f242710
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:eb6bb1adf263abf1cc4f297f9db8289aff4c8bd73c3f9b8968facc1bdd2ee17a
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:acc435158c325019d6c479c7d41107945207518869b434ea5c827c8c9babd00b
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:56ea8e384f20a903c9b42da1d244f0ec98c77916e4efebb53f876e459761038e
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:724b4f15d0c255cc9c096cb44331ddc2e6456d4909d03ce463478af76b33304e
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        version: 1.17.3
      entries:
      - name: openshift-gitops-operator.v1.17.3
        version: 1.17.3
      - name: openshift-gitops-operator.v1.17.2
        version: 1.17.2
      - name: openshift-gitops-operator.v1.17.1
        version: 1.17.1
      - name: openshift-gitops-operator.v1.17.0
        version: 1.17.0
      name: gitops-1.17
    - currentCSV: openshift-gitops-operator.v1.18.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - \"\"\n  - discovery.k8s.io\n  kinds:\n  - Endpoints\n  - EndpointSlice\n- apiGroups:\n  - apiregistration.k8s.io\n  kinds:\n  - APIService\n- apiGroups:\n  - coordination.k8s.io\n  kinds:\n  - Lease\n- apiGroups:\n  - authentication.k8s.io\n  - authorization.k8s.io\n  kinds:\n  - SelfSubjectReview\n  - TokenReview\n  - LocalSubjectAccessReview\n  - SelfSubjectAccessReview\n  - SelfSubjectRulesReview\n  - SubjectAccessReview\n- apiGroups:\n  - certificates.k8s.io\n  kinds:\n  - CertificateSigningRequest\n- apiGroups:\n  - cert-manager.io\n  kinds:\n  - CertificateRequest\n- apiGroups:\n  - cilium.io\n  kinds:\n  - CiliumIdentity\n  - CiliumEndpoint\n  - CiliumEndpointSlice\n- apiGroups:\n  - kyverno.io\n  - reports.kyverno.io\n  - wgpolicyk8s.io\n  kinds:\n  - PolicyReport\n  - ClusterPolicyReport\n  - EphemeralReport\n  - ClusterEphemeralReport\n  - AdmissionReport\n  - ClusterAdmissionReport\n  - BackgroundScanReport\n  - ClusterBackgroundScanReport\n  - UpdateRequest\n- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun\n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:95aa28b8b04efde78d2e4495d2c58e7f8ebd5b399cb2afda927eb01011d2061e
          createdAt: "2025-11-20T04:44:08Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:93d8de005289f52067f01295aad9ac47a1a618dd2f0865d2d8e2a3130281383d
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.1.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:684edd8ef336440fe06964bd977c0051ffb1b4df00c47ccabed710c48d19bbc3
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:93d8de005289f52067f01295aad9ac47a1a618dd2f0865d2d8e2a3130281383d
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b4d6b30d562e1cacbb1ca461e8c14b95c0d42be1baf876599c446669f2584feb
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c0e231e430daaff0b7a5b06f9b8628a2fe0ea3a82a314d42a364fe7f883f075a
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:337d52feb9a42ad04aa91211f41040db48e2de3a09266a516183882f9f587a6a
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:89263c0ed73f6f3bf6f73d9ed32c459489e1adf2b423ab73926b5343064d88a8
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:d5cf5da89528ed1505c0695183f432f1501b0226ce6402e84b7895ad14620d5d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:d7cec49c3e3ef02a3378ecd94f64a7e94f5ed93b5e7e6ff81f8d758eeabcb7c0
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:772adc241b808829d62631a288cef0b3d9cfb617f00d84aa3893616e48e30885
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:95aa28b8b04efde78d2e4495d2c58e7f8ebd5b399cb2afda927eb01011d2061e
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        version: 1.18.2
      entries:
      - name: openshift-gitops-operator.v1.18.2
        version: 1.18.2
      - name: openshift-gitops-operator.v1.18.1
        version: 1.18.1
      - name: openshift-gitops-operator.v1.18.0
        version: 1.18.0
      name: gitops-1.18
    - currentCSV: openshift-gitops-operator.v1.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - \"\"\n  - discovery.k8s.io\n  kinds:\n  - Endpoints\n  - EndpointSlice\n- apiGroups:\n  - apiregistration.k8s.io\n  kinds:\n  - APIService\n- apiGroups:\n  - coordination.k8s.io\n  kinds:\n  - Lease\n- apiGroups:\n  - authentication.k8s.io\n  - authorization.k8s.io\n  kinds:\n  - SelfSubjectReview\n  - TokenReview\n  - LocalSubjectAccessReview\n  - SelfSubjectAccessReview\n  - SelfSubjectRulesReview\n  - SubjectAccessReview\n- apiGroups:\n  - certificates.k8s.io\n  kinds:\n  - CertificateSigningRequest\n- apiGroups:\n  - cert-manager.io\n  kinds:\n  - CertificateRequest\n- apiGroups:\n  - cilium.io\n  kinds:\n  - CiliumIdentity\n  - CiliumEndpoint\n  - CiliumEndpointSlice\n- apiGroups:\n  - kyverno.io\n  - reports.kyverno.io\n  - wgpolicyk8s.io\n  kinds:\n  - PolicyReport\n  - ClusterPolicyReport\n  - EphemeralReport\n  - ClusterEphemeralReport\n  - AdmissionReport\n  - ClusterAdmissionReport\n  - BackgroundScanReport\n  - ClusterBackgroundScanReport\n  - UpdateRequest\n- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun\n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
          createdAt: "2025-11-20T04:37:10Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.0 <1.19.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: ImageUpdater
            name: imageupdaters.argocd-image-updater.argoproj.io
            version: v1alpha1
          - kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.1.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:5e78b9e6a98218c209af1d85e60c2000172a90f178f32f06f0e3b6bc11f33cce
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:5365dfcdcedde372b9d7cc787107b05f997c7526fd1d473e26f843718a5be92d
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c650147ab5940d7095eaee89ba75956726838595057ab6b216d41d0f09265f30
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8afea9d7876656c931f8050979d6d92c85b01069c7a5f2de46c0f65002663458
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
        version: 1.19.0
      entries:
      - name: openshift-gitops-operator.v1.19.0
        version: 1.19.0
      name: gitops-1.19
    - currentCSV: openshift-gitops-operator.v1.6.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:104cc7564fcc3261faa3fbf9c95720b4434e15103b876c080ed012b244ef1dae
          createdAt: "2021-09-15T22:31:21Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD v2.4.28\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces. \n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc.
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:104cc7564fcc3261faa3fbf9c95720b4434e15103b876c080ed012b244ef1dae
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0cc4fa704e581cd5581c816668183f602fae6ef9ab3c04ce0d99d561287ef140
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:dbcad68b70ab7918e944099aef4177c9bc3378e9ca49499dbb94a175927d3209
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:e9e2f950cda8153cff112e43872b98e4977d3cbdf59713b8de92defef6d34b6d
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:06f1150114d4c0bd236d2a5d4716c9c3e95a9733058297790389d6ba2a1bf264
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b22190de3162d3e03481cae8904ce563912756eea7ac7e7feec0acbbdae5e6f6
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        version: 1.6.6
      entries:
      - name: openshift-gitops-operator.v1.6.6
        version: 1.6.6
      - name: openshift-gitops-operator.v1.6.5
        version: 1.6.5
      - name: openshift-gitops-operator.v1.6.4
        version: 1.6.4
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.6
    - currentCSV: openshift-gitops-operator.v1.7.4-0.1690486082.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:e0967a4058fe5a9bfe7e998a3347529c99536cf3a44de9e40f9632035ff5a2fe
          createdAt: "2021-09-15T22:31:21Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          olm.substitutesFor: openshift-gitops-operator.v1.7.4
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD v2.5.16\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficient privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces. \n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc.
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:f1371d2012796e9aaca105112190ff89ec3d0be95968e05b19db101480f67975
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:c2f39be75173b4cc57498c5845b14c464bf9af92b49716df9661c8135ac2cf7a
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:45789c49d9334e0ed062641313714c101bd0117dc5633316b1ec63e7a6c76c15
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:5c11be8ec9db54331893f2f298aa27006e77b0eaded2d88d0531c77da91a421f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:e0967a4058fe5a9bfe7e998a3347529c99536cf3a44de9e40f9632035ff5a2fe
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c55aadf45397083bec4e42d6c0514ed79169a07fd3d9d75671904df2c0520e52
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:26050fb95978e90e8d00e895032045e77cb236008a0e1417459e1aeca8a48c69
        version: 1.7.4+0.1690486082.p
      entries:
      - name: openshift-gitops-operator.v1.7.4-0.1690486082.p
        version: 1.7.4+0.1690486082.p
      - name: openshift-gitops-operator.v1.7.4
        version: 1.7.4
      - name: openshift-gitops-operator.v1.7.3
        version: 1.7.3
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.7
    - currentCSV: openshift-gitops-operator.v1.8.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:f32df77b3c23d6a833ff887386285ca7a5bd436641f0ec1ffc934c8247fa315f
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          olm.skipRange: ""
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.6.153\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8cc59901689858e06f5c2942f8c975449c17454fa8364da6153d9b5a3538a985
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b2d58f4dc20eb7e17e09af0e8c5de55fa04f9f4f697e10c6be81a7a6a08381b2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:f32df77b3c23d6a833ff887386285ca7a5bd436641f0ec1ffc934c8247fa315f
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0d13c03048b4435d9f5045a6fb7bd4b8808461b26aeca60c0047fa5937e1d45d
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:f77594bc053be144b33ff9603ee9675c7e82946ec0dbfb04d8f942c8d73155da
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:8aa68fddef88921aeeede24a849d3dabbceff01dc03185342c21e6ee58033eaf
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:16d9184345e6d5a19f326a7b52f76d8a59b96763f233c50546ff017a625e5ff5
        version: 1.8.6
      entries:
      - name: openshift-gitops-operator.v1.8.6
        version: 1.8.6
      - name: openshift-gitops-operator.v1.8.5
        version: 1.8.5
      - name: openshift-gitops-operator.v1.8.4-0.1693214052.p
        version: 1.8.4+0.1693214052.p
      - name: openshift-gitops-operator.v1.8.4
        version: 1.8.4
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.8
    - currentCSV: openshift-gitops-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "argo-rollout"
                },
                "spec": null
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:11a6084e11aa32511a34bd6cfb4f4995aec690c1f5ed61861e99f6e42d62afb4
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          olm.skipRange: ""
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.7.16\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:11a6084e11aa32511a34bd6cfb4f4995aec690c1f5ed61861e99f6e42d62afb4
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:3873d1f18b5643e1de2601419410270342650a21428bb26a4cbee20c0c63f98b
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:136d3a936759e112d3ea2e78f7c02bd882b0fd3011f4c452f45c32c43822772d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:43bb961d847477902e66a92edd1539322cac8d5f74706b048a458ad037a0c7a3
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:80f92842fe4cba008a873ad2ab6059a3a24e76e16671d8ece034dbbe666996bc
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:86012145d4b8798dc12f6f4f07a9316a193188aaac865e324b63f4e60e8ec584
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:3d17786e2f4063154b9e3a40b96bf8ec0a14b86395cea5fe7ca18c5b43764478
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:27efa0ab1d9c69047a924bc1dcd2b56108f5f390a6da56afb6ab7a37cb4578e2
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:a568c8c647e2e2d6abdf12138eeef8f8bdde1fdcbf786e9ca8c8f93bc79acaf9
        version: 1.9.4
      entries:
      - name: openshift-gitops-operator.v1.9.4
        version: 1.9.4
      - name: openshift-gitops-operator.v1.9.3
        version: 1.9.3
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.9
    - currentCSV: openshift-gitops-operator.v1.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - \"\"\n  - discovery.k8s.io\n  kinds:\n  - Endpoints\n  - EndpointSlice\n- apiGroups:\n  - apiregistration.k8s.io\n  kinds:\n  - APIService\n- apiGroups:\n  - coordination.k8s.io\n  kinds:\n  - Lease\n- apiGroups:\n  - authentication.k8s.io\n  - authorization.k8s.io\n  kinds:\n  - SelfSubjectReview\n  - TokenReview\n  - LocalSubjectAccessReview\n  - SelfSubjectAccessReview\n  - SelfSubjectRulesReview\n  - SubjectAccessReview\n- apiGroups:\n  - certificates.k8s.io\n  kinds:\n  - CertificateSigningRequest\n- apiGroups:\n  - cert-manager.io\n  kinds:\n  - CertificateRequest\n- apiGroups:\n  - cilium.io\n  kinds:\n  - CiliumIdentity\n  - CiliumEndpoint\n  - CiliumEndpointSlice\n- apiGroups:\n  - kyverno.io\n  - reports.kyverno.io\n  - wgpolicyk8s.io\n  kinds:\n  - PolicyReport\n  - ClusterPolicyReport\n  - EphemeralReport\n  - ClusterEphemeralReport\n  - AdmissionReport\n  - ClusterAdmissionReport\n  - BackgroundScanReport\n  - ClusterBackgroundScanReport\n  - UpdateRequest\n- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun\n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
          createdAt: "2025-11-20T04:37:10Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.0 <1.19.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: ImageUpdater
            name: imageupdaters.argocd-image-updater.argoproj.io
            version: v1alpha1
          - kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.1.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:5e78b9e6a98218c209af1d85e60c2000172a90f178f32f06f0e3b6bc11f33cce
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8afea9d7876656c931f8050979d6d92c85b01069c7a5f2de46c0f65002663458
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:5365dfcdcedde372b9d7cc787107b05f997c7526fd1d473e26f843718a5be92d
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c650147ab5940d7095eaee89ba75956726838595057ab6b216d41d0f09265f30
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        version: 1.19.0
      entries:
      - name: openshift-gitops-operator.v1.19.0
        version: 1.19.0
      - name: openshift-gitops-operator.v1.18.2
        version: 1.18.2
      - name: openshift-gitops-operator.v1.18.1
        version: 1.18.1
      - name: openshift-gitops-operator.v1.18.0
        version: 1.18.0
      - name: openshift-gitops-operator.v1.17.1
        version: 1.17.1
      - name: openshift-gitops-operator.v1.17.0
        version: 1.17.0
      - name: openshift-gitops-operator.v1.16.2
        version: 1.16.2
      - name: openshift-gitops-operator.v1.16.1
        version: 1.16.1
      - name: openshift-gitops-operator.v1.16.0-0.1746014725.p
        version: 1.16.0+0.1746014725.p
      - name: openshift-gitops-operator.v1.16.0
        version: 1.16.0
      - name: openshift-gitops-operator.v1.15.1
        version: 1.15.1
      - name: openshift-gitops-operator.v1.15.0-0.1738074324.p
        version: 1.15.0+0.1738074324.p
      - name: openshift-gitops-operator.v1.15.0
        version: 1.15.0
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: latest
    defaultChannel: latest
    packageName: openshift-gitops-operator
    provider:
      name: Red Hat Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CyberArk
      provider-url: https://www.cyberark.com/
    name: conjur-follower-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: conjur-follower-operator.v2.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "conjur.cyberark.com/v1",
                "kind": "ConjurFollower",
                "metadata": {
                  "labels": {
                    "app": "conjur-follower"
                  },
                  "name": "my-conjur-follower",
                  "namespace": "cyberark-conjur"
                },
                "spec": {
                  "images": {
                    "configurator": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:75fb5de2c111084ffcc3d973e6c63f1adfae78e29f6fd02152419fbca553ce7b",
                    "conjur": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:bee2cd31b3620a31e98f9d21326a2cdcecb36479099b06cc9660e4e83354d940",
                    "failoverRebaser": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:383776c23556a0a327a0bacc843d22c4b1516082ddd0cfb8a8275500f2eb841a",
                    "info": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:a9b109c7f3bfba5553aa4366338fa211896564f8e33856d75b4918acf8429f1e",
                    "nginx": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:b3096c17e7f3b9d723c906619dde293ea084e78c0da48c534335a8eee07b23c7",
                    "postgres": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:680a2044bc0e94fbc9376cd1eed9d067de91657f566c9752654480c939447841",
                    "syslogNg": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:ed53aea1866b1e2262386ac38cb9e1e47cc3f9047ae47f49070e2f506af6ca5a"
                  },
                  "livenessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "master": {
                    "account": "demo",
                    "audience": "https://conjur.host.name/",
                    "authentication": "authn-jwt",
                    "authenticatorID": "my-authenticator-id",
                    "caCertificateFrom": {
                      "configMapKeyRef": {
                        "key": "ca.crt",
                        "name": "conjur-master-ca.crt"
                      }
                    },
                    "hostname": "conjur-master.mycompany.local"
                  },
                  "readinessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          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: "true"
          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.skipRange: '>=2.5.0 <2.5.3'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: CyberArk
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConjurFollower is the Schema for the conjurfollowers API
            displayName: ConjurFollower
            kind: ConjurFollower
            name: conjurfollowers.conjur.cyberark.com
            version: v1
        description: |-
          Use this Operator for managing Conjur Followers in an OpenShift cluster.

          CyberArk products secure your most sensitive and high-value assets—and supporting your Identity Security goals is our top priority. We offer 24/7 service for high priority issues to all customers with resources across ten countries and in all continents.

          CyberArk Conjur makes secrets management simple. Conjur provides a seamless open source interface to securely authenticate, control, and audit non-human access across tools, applications, containers, and cloud environments via robust secrets management.
        displayName: Conjur Enterprise Follower Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - credential
        - cyber
        - cyberark
        - conjur
        - enterprise
        - management
        - password
        - secret
        - secrets management
        - security
        - vault
        links:
        - name: Conjur Secrets Manager Enterprise Documentation
          url: https://docs.cyberark.com/Product-Doc/OnlineHelp/AAM-DAP/Latest/en/Content/Resources/_TopNav/cc_Home.htm
        maintainers:
        - email: conj_maintainers@cyberark.com
          name: Conjur Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:383776c23556a0a327a0bacc843d22c4b1516082ddd0cfb8a8275500f2eb841a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:75fb5de2c111084ffcc3d973e6c63f1adfae78e29f6fd02152419fbca553ce7b
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:ed53aea1866b1e2262386ac38cb9e1e47cc3f9047ae47f49070e2f506af6ca5a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:a9b109c7f3bfba5553aa4366338fa211896564f8e33856d75b4918acf8429f1e
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:b3096c17e7f3b9d723c906619dde293ea084e78c0da48c534335a8eee07b23c7
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:680a2044bc0e94fbc9376cd1eed9d067de91657f566c9752654480c939447841
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:bee2cd31b3620a31e98f9d21326a2cdcecb36479099b06cc9660e4e83354d940
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator-bundle@sha256:60b293c23587072b3376f83afee95b0207228c5c7b80483b025adda572c3551d
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator@sha256:cf46bdb4238cdb1dc51329822da55b7836958be2344d26f9e1819c0aa97fece6
        version: 2.5.3
      entries:
      - name: conjur-follower-operator.v2.5.3
        version: 2.5.3
      name: "2.5"
    - currentCSV: conjur-follower-operator.v2.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "conjur.cyberark.com/v1",
                "kind": "ConjurFollower",
                "metadata": {
                  "labels": {
                    "app": "conjur-follower"
                  },
                  "name": "my-conjur-follower",
                  "namespace": "cyberark-conjur"
                },
                "spec": {
                  "images": {
                    "configurator": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473",
                    "conjur": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e",
                    "ephemeralSecrets": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b",
                    "failoverRebaser": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3",
                    "info": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5",
                    "nginx": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6",
                    "postgres": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46",
                    "syslogNg": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a"
                  },
                  "livenessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "master": {
                    "account": "demo",
                    "audience": "https://conjur.host.name/",
                    "authentication": "authn-jwt",
                    "authenticatorID": "my-authenticator-id",
                    "caCertificateFrom": {
                      "configMapKeyRef": {
                        "key": "ca.crt",
                        "name": "conjur-master-ca.crt"
                      }
                    },
                    "hostname": "conjur-master.mycompany.local"
                  },
                  "readinessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          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: "true"
          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.skipRange: ""
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: CyberArk
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConjurFollower is the Schema for the conjurfollowers API
            displayName: ConjurFollower
            kind: ConjurFollower
            name: conjurfollowers.conjur.cyberark.com
            version: v1
        description: |-
          Use this Operator for managing Conjur Followers in an OpenShift cluster.

          CyberArk products secure your most sensitive and high-value assets—and supporting your Identity Security goals is our top priority. We offer 24/7 service for high priority issues to all customers with resources across ten countries and in all continents.

          CyberArk Conjur makes secrets management simple. Conjur provides a seamless open source interface to securely authenticate, control, and audit non-human access across tools, applications, containers, and cloud environments via robust secrets management.
        displayName: Conjur Enterprise Follower Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - credential
        - cyber
        - cyberark
        - conjur
        - enterprise
        - management
        - password
        - secret
        - secrets management
        - security
        - vault
        links:
        - name: Conjur Secrets Manager Enterprise Documentation
          url: https://docs.cyberark.com/Product-Doc/OnlineHelp/AAM-DAP/Latest/en/Content/Resources/_TopNav/cc_Home.htm
        maintainers:
        - email: conj_maintainers@cyberark.com
          name: Conjur Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator@sha256:69d276feb493b8450c42efeeb56d0a741855004505e1e3776e5a9d382358f7ad
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator-bundle@sha256:bb3beb8cd763b581c9471ff7f38d76ae3bc124587b5c3aa5b3af145641059582
        version: 2.7.1
      entries:
      - name: conjur-follower-operator.v2.7.1
        version: 2.7.1
      - name: conjur-follower-operator.v2.7.0
        version: 2.7.0
      - name: conjur-follower-operator.v2.6.3
        version: 2.6.3
      - name: conjur-follower-operator.v2.6.2
        version: 2.6.2
      - name: conjur-follower-operator.v2.6.1
        version: 2.6.1
      - name: conjur-follower-operator.v2.6.0
        version: 2.6.0
      - name: conjur-follower-operator.v2.5.0
        version: 2.5.0
      - name: conjur-follower-operator.v2.4.4
        version: 2.4.4
      - name: conjur-follower-operator.v2.4.3
        version: 2.4.3
      - name: conjur-follower-operator.v2.4.2
        version: 2.4.2
      - name: conjur-follower-operator.v2.3.5
        version: 2.3.5
      - name: conjur-follower-operator.v2.3.4
        version: 2.3.4
      - name: conjur-follower-operator.v2.3.1-290
        version: 2.3.1
      - name: conjur-follower-operator.v2.3.0
        version: 2.3.0
      - name: conjur-follower-operator.v2.2.4
        version: 2.2.4
      - name: conjur-follower-operator.v2.2.2
        version: 2.2.2
      - name: conjur-follower-operator.v2.2.1
        version: 2.2.1
      name: preview
    - currentCSV: conjur-follower-operator.v2.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "conjur.cyberark.com/v1",
                "kind": "ConjurFollower",
                "metadata": {
                  "labels": {
                    "app": "conjur-follower"
                  },
                  "name": "my-conjur-follower",
                  "namespace": "cyberark-conjur"
                },
                "spec": {
                  "images": {
                    "configurator": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473",
                    "conjur": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e",
                    "ephemeralSecrets": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b",
                    "failoverRebaser": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3",
                    "info": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5",
                    "nginx": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6",
                    "postgres": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46",
                    "syslogNg": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a"
                  },
                  "livenessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "master": {
                    "account": "demo",
                    "audience": "https://conjur.host.name/",
                    "authentication": "authn-jwt",
                    "authenticatorID": "my-authenticator-id",
                    "caCertificateFrom": {
                      "configMapKeyRef": {
                        "key": "ca.crt",
                        "name": "conjur-master-ca.crt"
                      }
                    },
                    "hostname": "conjur-master.mycompany.local"
                  },
                  "readinessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          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: "true"
          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.skipRange: ""
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: CyberArk
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConjurFollower is the Schema for the conjurfollowers API
            displayName: ConjurFollower
            kind: ConjurFollower
            name: conjurfollowers.conjur.cyberark.com
            version: v1
        description: |-
          Use this Operator for managing Conjur Followers in an OpenShift cluster.

          CyberArk products secure your most sensitive and high-value assets—and supporting your Identity Security goals is our top priority. We offer 24/7 service for high priority issues to all customers with resources across ten countries and in all continents.

          CyberArk Conjur makes secrets management simple. Conjur provides a seamless open source interface to securely authenticate, control, and audit non-human access across tools, applications, containers, and cloud environments via robust secrets management.
        displayName: Conjur Enterprise Follower Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - credential
        - cyber
        - cyberark
        - conjur
        - enterprise
        - management
        - password
        - secret
        - secrets management
        - security
        - vault
        links:
        - name: Conjur Secrets Manager Enterprise Documentation
          url: https://docs.cyberark.com/Product-Doc/OnlineHelp/AAM-DAP/Latest/en/Content/Resources/_TopNav/cc_Home.htm
        maintainers:
        - email: conj_maintainers@cyberark.com
          name: Conjur Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator-bundle@sha256:bb3beb8cd763b581c9471ff7f38d76ae3bc124587b5c3aa5b3af145641059582
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator@sha256:69d276feb493b8450c42efeeb56d0a741855004505e1e3776e5a9d382358f7ad
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5
        version: 2.7.1
      entries:
      - name: conjur-follower-operator.v2.7.1
        version: 2.7.1
      - name: conjur-follower-operator.v2.7.0
        version: 2.7.0
      - name: conjur-follower-operator.v2.6.3
        version: 2.6.3
      - name: conjur-follower-operator.v2.6.2
        version: 2.6.2
      - name: conjur-follower-operator.v2.6.1
        version: 2.6.1
      - name: conjur-follower-operator.v2.6.0
        version: 2.6.0
      - name: conjur-follower-operator.v2.5.0
        version: 2.5.0
      - name: conjur-follower-operator.v2.4.4
        version: 2.4.4
      - name: conjur-follower-operator.v2.4.3
        version: 2.4.3
      - name: conjur-follower-operator.v2.4.2
        version: 2.4.2
      - name: conjur-follower-operator.v2.3.5
        version: 2.3.5
      - name: conjur-follower-operator.v2.3.4
        version: 2.3.4
      - name: conjur-follower-operator.v2.3.1-290
        version: 2.3.1
      - name: conjur-follower-operator.v2.3.0
        version: 2.3.0
      - name: conjur-follower-operator.v2.2.4
        version: 2.2.4
      - name: conjur-follower-operator.v2.2.2
        version: 2.2.2
      - name: conjur-follower-operator.v2.2.1
        version: 2.2.1
      name: stable
    defaultChannel: stable
    packageName: conjur-follower-operator
    provider:
      name: CyberArk
      url: https://www.cyberark.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Aerospike
      provider-url: ""
    name: aerospike-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aerospike-kubernetes-operator.v2.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeCluster",
                "metadata": {
                  "name": "aerocluster",
                  "namespace": "aerospike"
                },
                "spec": {
                  "aerospikeConfig": {
                    "namespaces": [
                      {
                        "memory-size": 3000000000,
                        "name": "test",
                        "replication-factor": 2,
                        "storage-engine": {
                          "type": "memory"
                        }
                      }
                    ],
                    "network": {
                      "fabric": {
                        "port": 3001
                      },
                      "heartbeat": {
                        "port": 3002
                      },
                      "service": {
                        "port": 3000
                      }
                    },
                    "service": {
                      "feature-key-file": "/etc/aerospike/secret/features.conf"
                    }
                  },
                  "image": "aerospike/aerospike-server-enterprise:6.3.0.0",
                  "podSpec": {
                    "multiPodPerHost": true
                  },
                  "size": 2,
                  "storage": {
                    "volumes": [
                      {
                        "aerospike": {
                          "path": "/etc/aerospike/secret"
                        },
                        "name": "aerospike-config-secret",
                        "source": {
                          "secret": {
                            "secretName": "aerospike-secret"
                          }
                        }
                      }
                    ]
                  },
                  "validationPolicy": {
                    "skipWorkDirValidate": true,
                    "skipXdrDlogFileValidate": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Database
          containerImage: docker.io/aerospike/aerospike-kubernetes-operator:2.5.0
          createdAt: 2023-05-04T09:32:47UTC
          description: The Aerospike Kubernetes Operator automates the deployment
            and management of Aerospike enterprise clusters on Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/aerospike/aerospike-kubernetes-operator/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AerospikeCluster is the schema for the AerospikeCluster API
            displayName: Aerospike Cluster
            kind: AerospikeCluster
            name: aerospikeclusters.asdb.aerospike.com
            version: v1beta1
        description: |
          The Aerospike Kubernetes Operator automates the deployment and management of Aerospike enterprise clusters on Kubernetes. The operator allows you to deploy multi-node Aerospike clusters, recover automatically from node failures, scale up or down automatically as load changes, ensure nodes are evenly split across racks or zones, automatically update to new versions of Aerospike and manage configuration changes in your clusters.

          ### Capabilities:

           -   Deploy Aerospike clusters
           -   Scale up and down existing Aerospike clusters
           -   Version upgrade and downgrade
           -   Configure persistent storage and resource allocation
           -   Standardize and validate configurations
           -   Cluster security management
        displayName: Aerospike Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Aerospike
        links:
        - name: Documentation
          url: https://docs.aerospike.com/cloud/kubernetes/operator
        - name: Aerospike
          url: https://aerospike.com
        maintainers:
        - email: developers@aerospike.com
          name: Aerospike, Inc.
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Aerospike
        relatedImages:
        - docker.io/aerospike/aerospike-kubernetes-operator:2.5.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/openshift-community-operators/aerospike-kubernetes-operator@sha256:bfa83ff729ef8b3a4ebca27b02e223327d3e1351d8bc78a06c18873d288dfb02
        version: 2.5.0
      entries:
      - name: aerospike-kubernetes-operator.v2.5.0
        version: 2.5.0
      - name: aerospike-kubernetes-operator.v2.4.0
        version: 2.4.0
      - name: aerospike-kubernetes-operator.v2.3.0
        version: 2.3.0
      - name: aerospike-kubernetes-operator.v2.2.1
        version: 2.2.1
      - name: aerospike-kubernetes-operator.v2.2.0
        version: 2.2.0
      - name: aerospike-kubernetes-operator.v2.1.0
        version: 2.1.0
      name: alpha
    - currentCSV: aerospike-kubernetes-operator.v4.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "asdb.aerospike.com/v1",
                "kind": "AerospikeCluster",
                "metadata": {
                  "name": "aerocluster",
                  "namespace": "aerospike"
                },
                "spec": {
                  "aerospikeConfig": {
                    "namespaces": [
                      {
                        "name": "test",
                        "replication-factor": 2,
                        "storage-engine": {
                          "data-size": 1073741824,
                          "type": "memory"
                        }
                      }
                    ],
                    "network": {
                      "fabric": {
                        "port": 3001
                      },
                      "heartbeat": {
                        "port": 3002
                      },
                      "service": {
                        "port": 3000
                      }
                    },
                    "service": {
                      "feature-key-file": "/etc/aerospike/secret/features.conf"
                    }
                  },
                  "image": "aerospike/aerospike-server-enterprise:8.1.0.0",
                  "podSpec": {
                    "multiPodPerHost": true
                  },
                  "size": 2,
                  "storage": {
                    "volumes": [
                      {
                        "aerospike": {
                          "path": "/etc/aerospike/secret"
                        },
                        "name": "aerospike-config-secret",
                        "source": {
                          "secret": {
                            "secretName": "aerospike-secret"
                          }
                        }
                      }
                    ]
                  },
                  "validationPolicy": {
                    "skipWorkDirValidate": true,
                    "skipXdrDlogFileValidate": true
                  }
                }
              },
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeBackup",
                "metadata": {
                  "name": "aerospikebackup",
                  "namespace": "aerospike"
                },
                "spec": {
                  "backupService": {
                    "name": "aerospikebackupservice-sample",
                    "namespace": "aerospike"
                  },
                  "config": {
                    "aerospike-cluster": {
                      "aerospike-aerospikebackup-test-cluster": {
                        "credentials": {
                          "password": "admin123",
                          "user": "admin"
                        },
                        "seed-nodes": [
                          {
                            "host-name": "aerocluster.aerospike.svc.cluster.local",
                            "port": 3000
                          }
                        ]
                      }
                    },
                    "backup-routines": {
                      "aerospike-aerospikebackup-test-routine": {
                        "backup-policy": "test-policy",
                        "incr-interval-cron": "@hourly",
                        "interval-cron": "@daily",
                        "namespaces": [
                          "test"
                        ],
                        "source-cluster": "aerospike-aerospikebackup-test-cluster",
                        "storage": "local"
                      },
                      "aerospike-aerospikebackup-test-routine1": {
                        "backup-policy": "test-policy1",
                        "incr-interval-cron": "@hourly",
                        "interval-cron": "@daily",
                        "namespaces": [
                          "test"
                        ],
                        "source-cluster": "aerospike-aerospikebackup-test-cluster",
                        "storage": "s3Storage"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeBackupService",
                "metadata": {
                  "name": "aerospikebackupservice-sample",
                  "namespace": "aerospike"
                },
                "spec": {
                  "config": {
                    "backup-policies": {
                      "test-policy": {
                        "parallel": 3
                      },
                      "test-policy1": {
                        "parallel": 3
                      }
                    },
                    "service": {
                      "http": {
                        "port": 8081
                      }
                    },
                    "storage": {
                      "local": {
                        "local-storage": {
                          "path": "/tmp/localStorage"
                        }
                      },
                      "s3Storage": {
                        "s3-storage": {
                          "bucket": "aerospike-kubernetes-operator-test",
                          "s3-profile": "default",
                          "s3-region": "us-east-1"
                        }
                      }
                    }
                  },
                  "image": "aerospike/aerospike-backup-service:3.2.0",
                  "secrets": [
                    {
                      "secretName": "aws-secret",
                      "volumeMount": {
                        "mountPath": "/root/.aws/credentials",
                        "name": "aws-secret",
                        "subPath": "credentials"
                      }
                    }
                  ],
                  "service": {
                    "type": "LoadBalancer"
                  }
                }
              },
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeRestore",
                "metadata": {
                  "name": "aerospikerestore-sample",
                  "namespace": "aerospike"
                },
                "spec": {
                  "backupService": {
                    "name": "aerospikebackupservice-sample",
                    "namespace": "aerospike"
                  },
                  "config": {
                    "backup-data-path": "aerospike-aerospikebackup-test-routine/backup/1733506015827/data/test",
                    "destination": {
                      "credentials": {
                        "password": "admin123",
                        "user": "admin"
                      },
                      "label": "destinationCluster",
                      "seed-nodes": [
                        {
                          "host-name": "aerocluster.test.svc.cluster.local",
                          "port": 3000
                        }
                      ]
                    },
                    "policy": {
                      "no-generation": true,
                      "no-indexes": true,
                      "parallel": 3
                    },
                    "source": {
                      "local-storage": {
                        "path": "/tmp/localStorage"
                      }
                    }
                  },
                  "type": "Full"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: docker.io/aerospike/aerospike-kubernetes-operator:4.1.2
          createdAt: "2025-12-04T06:56:33Z"
          description: The Aerospike Kubernetes Operator automates the deployment
            and management of Aerospike enterprise clusters on Kubernetes.
          olm.skipRange: '>=4.0.0 <4.1.2'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/aerospike/aerospike-kubernetes-operator/
          support: Aerospike
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AerospikeBackup is the Schema for the aerospikebackup API
            displayName: Aerospike Backup
            kind: AerospikeBackup
            name: aerospikebackups.asdb.aerospike.com
            version: v1beta1
          - description: AerospikeBackupService is the Schema for the aerospikebackupservices
              API
            displayName: Aerospike Backup Service
            kind: AerospikeBackupService
            name: aerospikebackupservices.asdb.aerospike.com
            version: v1beta1
          - description: AerospikeCluster is the schema for the AerospikeCluster API
            displayName: Aerospike Cluster
            kind: AerospikeCluster
            name: aerospikeclusters.asdb.aerospike.com
            version: v1
          - description: AerospikeRestore is the Schema for the aerospikerestores
              API
            displayName: Aerospike Restore
            kind: AerospikeRestore
            name: aerospikerestores.asdb.aerospike.com
            version: v1beta1
        description: |
          The Aerospike Kubernetes Operator automates the deployment and management of Aerospike enterprise clusters on Kubernetes. The operator allows you to deploy multi-node Aerospike clusters, recover automatically from node failures, scale up or down automatically as load changes, ensure nodes are evenly split across racks or zones, automatically update to new versions of Aerospike and manage configuration changes in your clusters.

          ### Capabilities:

           -   Deploy Aerospike clusters
           -   Scale up and down existing Aerospike clusters
           -   Version upgrade and downgrade
           -   Configure persistent storage and resource allocation
           -   Standardize and validate configurations
           -   Cluster security management
           -   Aerospike cluster monitoring
           -   Backup and restore Aerospike clusters
        displayName: Aerospike Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Aerospike
        links:
        - name: Documentation
          url: https://docs.aerospike.com/cloud/kubernetes/operator
        - name: Aerospike
          url: https://aerospike.com
        maintainers:
        - email: developers@aerospike.com
          name: Aerospike, Inc.
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Aerospike
        relatedImages:
        - docker.io/aerospike/aerospike-kubernetes-operator:4.1.2
        - quay.io/community-operator-pipeline-prod/aerospike-kubernetes-operator@sha256:b01aad90e4fa053a5e419b8fb9a1c49e328c7a30ef8e4b5dec57881fcc2e620e
        version: 4.1.2
      entries:
      - name: aerospike-kubernetes-operator.v4.1.2
        version: 4.1.2
      - name: aerospike-kubernetes-operator.v4.1.1
        version: 4.1.1
      - name: aerospike-kubernetes-operator.v4.1.0
        version: 4.1.0
      - name: aerospike-kubernetes-operator.v4.0.2
        version: 4.0.2
      - name: aerospike-kubernetes-operator.v4.0.1
        version: 4.0.1
      - name: aerospike-kubernetes-operator.v4.0.0
        version: 4.0.0
      - name: aerospike-kubernetes-operator.v3.4.1
        version: 3.4.1
      - name: aerospike-kubernetes-operator.v3.4.0
        version: 3.4.0
      - name: aerospike-kubernetes-operator.v3.3.1
        version: 3.3.1
      - name: aerospike-kubernetes-operator.v3.3.0
        version: 3.3.0
      - name: aerospike-kubernetes-operator.v3.2.2
        version: 3.2.2
      - name: aerospike-kubernetes-operator.v3.2.1
        version: 3.2.1
      - name: aerospike-kubernetes-operator.v3.2.0
        version: 3.2.0
      - name: aerospike-kubernetes-operator.v3.1.0
        version: 3.1.0
      - name: aerospike-kubernetes-operator.v3.0.0
        version: 3.0.0
      name: stable
    defaultChannel: stable
    packageName: aerospike-kubernetes-operator
    provider:
      name: Aerospike
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/cluster-nfd-operator
    name: nfd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nfd.4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nfd.k8s-sigs.io/v1alpha1",
                "kind": "NodeFeatureRule",
                "metadata": {
                  "name": "my-sample-rule-object"
                },
                "spec": {
                  "rules": [
                    {
                      "labels": {
                        "my-sample-feature": "true"
                      },
                      "matchFeatures": [
                        {
                          "feature": "kernel.loadedmodule",
                          "matchExpressions": {
                            "dummy": {
                              "op": "Exists"
                            }
                          }
                        },
                        {
                          "feature": "kernel.config",
                          "matchExpressions": {
                            "X86": {
                              "op": "In",
                              "value": [
                                "y"
                              ]
                            }
                          }
                        }
                      ],
                      "name": "my sample rule"
                    }
                  ]
                }
              },
              {
                "apiVersion": "nfd.openshift.io/v1",
                "kind": "NodeFeatureDiscovery",
                "metadata": {
                  "name": "nfd-instance",
                  "namespace": "openshift-nfd"
                },
                "spec": {
                  "customConfig": {
                    "configData": "#    - name: \"more.kernel.features\"\n#      matchOn:\n#      - loadedKMod: [\"example_kmod3\"]\n#    - name: \"more.features.by.nodename\"\n#      value: customValue\n#      matchOn:\n#      - nodename: [\"special-.*-node-.*\"]\n"
                  },
                  "operand": {
                    "imagePullPolicy": "IfNotPresent",
                    "servicePort": 12000
                  },
                  "workerConfig": {
                    "configData": "core:\n#  labelWhiteList:\n#  noPublish: false\n  sleepInterval: 60s\n#  sources: [all]\n#  klog:\n#    addDirHeader: false\n#    alsologtostderr: false\n#    logBacktraceAt:\n#    logtostderr: true\n#    skipHeaders: false\n#    stderrthreshold: 2\n#    v: 0\n#    vmodule:\n##   NOTE: the following options are not dynamically run-time \n##          configurable and require a nfd-worker restart to take effect\n##          after being changed\n#    logDir:\n#    logFile:\n#    logFileMaxSize: 1800\n#    skipLogHeaders: false\nsources:\n#  cpu:\n#    cpuid:\n##     NOTE: whitelist has priority over blacklist\n#      attributeBlacklist:\n#        - \"BMI1\"\n#        - \"BMI2\"\n#        - \"CLMUL\"\n#        - \"CMOV\"\n#        - \"CX16\"\n#        - \"ERMS\"\n#        - \"F16C\"\n#        - \"HTT\"\n#        - \"LZCNT\"\n#        - \"MMX\"\n#        - \"MMXEXT\"\n#        - \"NX\"\n#        - \"POPCNT\"\n#        - \"RDRAND\"\n#        - \"RDSEED\"\n#        - \"RDTSCP\"\n#        - \"SGX\"\n#        - \"SSE\"\n#        - \"SSE2\"\n#        - \"SSE3\"\n#        - \"SSE4.1\"\n#        - \"SSE4.2\"\n#        - \"SSSE3\"\n#      attributeWhitelist:\n#  kernel:\n#    kconfigFile: \"/path/to/kconfig\"\n#    configOpts:\n#      - \"NO_HZ\"\n#      - \"X86\"\n#      - \"DMI\"\n  pci:\n    deviceClassWhitelist:\n      - \"0200\"\n      - \"03\"\n      - \"12\"\n    deviceLabelFields:\n#      - \"class\"\n      - \"vendor\"\n#      - \"device\"\n#      - \"subsystem_vendor\"\n#      - \"subsystem_device\"\n#  usb:\n#    deviceClassWhitelist:\n#      - \"0e\"\n#      - \"ef\"\n#      - \"fe\"\n#      - \"ff\"\n#    deviceLabelFields:\n#      - \"class\"\n#      - \"vendor\"\n#      - \"device\"\n#  custom:\n#    - name: \"my.kernel.feature\"\n#      matchOn:\n#        - loadedKMod: [\"example_kmod1\", \"example_kmod2\"]\n#    - name: \"my.pci.feature\"\n#      matchOn:\n#        - pciId:\n#            class: [\"0200\"]\n#            vendor: [\"15b3\"]\n#            device: [\"1014\", \"1017\"]\n#        - pciId :\n#            vendor: [\"8086\"]\n#            device: [\"1000\", \"1100\"]\n#    - name: \"my.usb.feature\"\n#      matchOn:\n#        - usbId:\n#          class: [\"ff\"]\n#          vendor: [\"03e7\"]\n#          device: [\"2485\"]\n#        - usbId:\n#          class: [\"fe\"]\n#          vendor: [\"1a6e\"]\n#          device: [\"089a\"]\n#    - name: \"my.combined.feature\"\n#      matchOn:\n#        - pciId:\n#            vendor: [\"15b3\"]\n#            device: [\"1014\", \"1017\"]\n#          loadedKMod : [\"vendor_kmod1\", \"vendor_kmod2\"]\n"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery,OpenShift Optional
          containerImage: registry.redhat.io/openshift4/ose-cluster-nfd-rhel9-operator@sha256:5d03fdb900b6779fb260b186a112eed15ae66d64ce08122bda3d01a3bce316e6
          createdAt: "2025-04-20T11:31:43Z"
          description: |-
            The Node Feature Discovery Operator manages the detection of hardware features and configuration in a Kubernetes cluster by labeling the nodes with hardware-specific information. The Node Feature Discovery (NFD) will label the host with node-specific attributes, like PCI cards, kernel, or OS version, and many more.

            NFD consists  of the following software components:

            The NFD Operator is based on the Operator Framework an open source toolkit to manage Kubernetes native applications, called Operators, in an effective, automated, and scalable way.

            ##NFD-Master
            NFD-Master is the daemon responsible for communication towards the Kubernetes API. That is, it receives labeling requests from the worker and modifies node objects accordingly.

            ##NFD-Worker
            NFD-Worker is a daemon responsible for feature detection. It then communicates the information to nfd-master which does the actual node labeling. One instance of nfd-worker is supposed to be running on each node of the cluster.

            ##NFD-Topology-Updater
            NFD-Topology-Updater is a daemon responsible for examining allocated resources on a worker node to account for resources available to be allocated to new pod on a per-zone basis (where a zone can be a NUMA node). It then communicates the information to nfd-master which does the NodeResourceTopology CR creation corresponding to all the nodes in the cluster. One instance of nfd-topology-updater is supposed to be running on each node of the cluster.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.9.0 <4.20.0-202512081147'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-nfd
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/internal-objects: '["noderesourcetopologies.topology.node.k8s.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: Red Hat
          repository: https://github.com/openshift/cluster-nfd-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |
              The NodeFeatureDiscovery instance is the CustomResource being watched by the NFD-Operator, and holds all the needed information to setup the behaviour of the master and worker pods
            kind: NodeFeatureDiscovery
            name: nodefeaturediscoveries.nfd.openshift.io
            version: v1
          - kind: NodeFeatureGroup
            name: nodefeaturegroups.nfd.k8s-sigs.io
            version: v1alpha1
          - kind: NodeFeatureRule
            name: nodefeaturerules.nfd.k8s-sigs.io
            version: v1alpha1
          - description: |
              NodeFeatureRule resource specifies a configuration for feature-based customization of node objects, such as node labeling.
            kind: NodeFeatureRule
            name: nodefeaturerules.nfd.openshift.io
            version: v1alpha1
          - kind: NodeFeature
            name: nodefeatures.nfd.k8s-sigs.io
            version: v1alpha1
          - kind: NodeFeature
            name: nodefeatures.nfd.openshift.io
            version: v1alpha1
        description: |-
          The Node Feature Discovery Operator manages the detection of hardware features and configuration in a Kubernetes cluster by labeling the nodes with hardware-specific information. The Node Feature Discovery (NFD) will label the host with node-specific attributes, like PCI cards, kernel, or OS version, and many more.

          NFD consists  of the following software components:

          The NFD Operator is based on the Operator Framework an open source toolkit to manage Kubernetes native applications, called Operators, in an effective, automated, and scalable way.

          ##NFD-Master
          NFD-Master is the daemon responsible for communication towards the Kubernetes API. That is, it receives labeling requests from the worker and modifies node objects accordingly.

          ##NFD-Worker
          NFD-Worker is a daemon responsible for feature detection. It then communicates the information to nfd-master which does the actual node labeling. One instance of nfd-worker is supposed to be running on each node of the cluster.

          ##NFD-Topology-Updater
          NFD-Topology-Updater is a daemon responsible for examining allocated resources on a worker node to account for resources available to be allocated to new pod on a per-zone basis (where a zone can be a NUMA node). It then communicates the information to nfd-master which does the NodeResourceTopology CR creation corresponding to all the nodes in the cluster. One instance of nfd-topology-updater is supposed to be running on each node of the cluster.
        displayName: Node Feature Discovery Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - feature-discovery
        - feature-detection
        - node-labels
        links:
        - name: Node Feature Discovery Operator
          url: https://docs.openshift.com/container-platform/4.20/hardware_enablement/psap-node-feature-discovery-operator.html
        - name: Node Feature Discovery Documentation
          url: https://kubernetes-sigs.github.io/node-feature-discovery/stable/get-started/index.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://github.com/openshift/cluster-nfd-operator
        relatedImages:
        - registry.redhat.io/openshift4/ose-cluster-nfd-operator-bundle@sha256:84c08fe3720f5309f468eab26ab5b4a744629d4b3fb941bbbf95c5194a6ea633
        - registry.redhat.io/openshift4/ose-cluster-nfd-rhel9-operator@sha256:5d03fdb900b6779fb260b186a112eed15ae66d64ce08122bda3d01a3bce316e6
        - registry.redhat.io/openshift4/ose-node-feature-discovery-rhel9@sha256:fbd8db340dd4e4cda793b1f0453d42988bb8102d1061388827777bb848b067f2
        version: 4.20.0-202512081147
      entries:
      - name: nfd.4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: nfd.4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: nfd.4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: nfd.4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: nfd.4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: nfd.4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: nfd.4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: nfd
    provider:
      name: Red Hat
      url: https://github.com/openshift/cluster-nfd-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://redhat.com
    name: aws-load-balancer-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-load-balancer-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
          createdAt: 2025-12-16T11:55:37
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.3.0
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:dbad5680cdb7bbe998b569533d1135b9df8a37786ed64893373152a7f16b3e12
        - registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel9@sha256:03106a145ba31ae648092a48016d28d3b41dca737f76efdc82eae4628e4fa905
        version: 1.3.0
      entries:
      - name: aws-load-balancer-operator.v1.3.0
        version: 1.3.0
      - name: aws-load-balancer-operator.v1.2.0
        version: 1.2.0
      - name: aws-load-balancer-operator.v1.1.1
        version: 1.1.1
      - name: aws-load-balancer-operator.v1.1.0
        version: 1.1.0
      name: stable-v1
    - currentCSV: aws-load-balancer-operator.v1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:6e15df39a3d25755a79888f739e1af8b052c3fba57bf8f6b3434ef58fd4288cf
          createdAt: 2024-01-24T09:13:21
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.1
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify management of aws-load-balancer-controller

          ### Prerequisites for installation
          The operator requires AWS credentials in the installation namespace before it can be installed.

          1. Create the operator namespace with the following command:
          ```bash
          oc create namespace aws-load-balancer-operator
          ```
          2. Create the `CredentialsRequest` in the `openshift-cloud-credential-operator`
             namespace with the following command:

          ```
          cat <<EOF | oc create -f -
          apiVersion: cloudcredential.openshift.io/v1
          kind: CredentialsRequest
          metadata:
            name: aws-load-balancer-operator
            namespace: openshift-cloud-credential-operator
          spec:
            providerSpec:
              apiVersion: cloudcredential.openshift.io/v1
              kind: AWSProviderSpec
              statementEntries:
                - action:
                    - ec2:DescribeSubnets
                  effect: Allow
                  resource: "*"
                - action:
                    - ec2:CreateTags
                    - ec2:DeleteTags
                  effect: Allow
                  resource: arn:aws:ec2:*:*:subnet/*
                - action:
                    - ec2:DescribeVpcs
                  effect: Allow
                  resource: "*"
            secretRef:
              name: aws-load-balancer-operator
              namespace: aws-load-balancer-operator
            serviceAccountNames:
              - aws-load-balancer-operator-controller-manager
          EOF
          ```
          3. Ensure the credentials have been correctly provisioned
          ```bash
          oc get secret -n aws-load-balancer-operator aws-load-balancer-operator
          ```

          After this the operator can be installated through the console or through the command line.

          __Note about UPI:__ For UPI based installs, additional documentation can be found in
          [VPC and subnets](https://github.com/openshift/aws-load-balancer-operator/blob/release-1.0/docs/prerequisites.md#vpc-and-subnets)

          __Note about STS:__ For clusters using STS, use the [STS documentation](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#for-sts-clusters) instead.
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:6e15df39a3d25755a79888f739e1af8b052c3fba57bf8f6b3434ef58fd4288cf
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9f9f8f69ab98c1f25cc301572339e0cc5c5b76f2e29ed26e10ac91ad20e0090c
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel8@sha256:73db97d20ee9415e9a8941cc6a36ed81d901d760d9949e95e10c90866ef8bf64
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:59ff4966f4f653e49d42d97bfed6351d3730128db74f666ee4ecacff11790baf
        version: 1.0.1
      deprecation:
        message: |
          The stable-v1.0 channel is no longer supported. Please switch to a supported stable channel to receive the latest updates and support.
      entries:
      - deprecation:
          message: |
            aws-load-balancer-operator.v1.0.1 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: aws-load-balancer-operator.v1.0.1
        version: 1.0.1
      - deprecation:
          message: |
            aws-load-balancer-operator.v1.0.0 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: aws-load-balancer-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    - currentCSV: aws-load-balancer-operator.v1.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:16e9ffed36107527a37713ac5bd34a7bc20f042269a81077429fb5884914c4d0
          createdAt: 2024-01-23T11:21:00
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.1.1
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:01f2ca529d2486f113bcefc9fedce6a6fd07bcb48aaf534394b5b04c353f8853
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:16e9ffed36107527a37713ac5bd34a7bc20f042269a81077429fb5884914c4d0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel8@sha256:2e0b9332a44d8d9c23e19c7accab0813a651f39210257820db508cac28876595
        version: 1.1.1
      entries:
      - name: aws-load-balancer-operator.v1.1.1
        version: 1.1.1
      - name: aws-load-balancer-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: aws-load-balancer-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:53f14e88f05641545b675ff4edbcff6909d752659c02a1babf7491734f347153
          createdAt: 2024-12-20T15:52:44
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.2.0
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4a2324acaea757bae3b01b1aec59f49f4dd79bd1868e69d3418d57c210a6dfd9
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel8@sha256:f0b47b8200f85b557497a4f03d7b186cf415c4137e9cc0361633b67891cf2a24
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:e371c45e259eaf54d79b1bfc6c47b1093d87965a8d6076205d4860047146ed43
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:53f14e88f05641545b675ff4edbcff6909d752659c02a1babf7491734f347153
        version: 1.2.0
      entries:
      - name: aws-load-balancer-operator.v1.2.0
        version: 1.2.0
      - name: aws-load-balancer-operator.v1.1.1
        version: 1.1.1
      - name: aws-load-balancer-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.2
    - currentCSV: aws-load-balancer-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
          createdAt: 2025-12-16T11:55:37
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.3.0
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel9@sha256:03106a145ba31ae648092a48016d28d3b41dca737f76efdc82eae4628e4fa905
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:dbad5680cdb7bbe998b569533d1135b9df8a37786ed64893373152a7f16b3e12
        - registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        version: 1.3.0
      entries:
      - name: aws-load-balancer-operator.v1.3.0
        version: 1.3.0
      name: stable-v1.3
    defaultChannel: stable-v1
    packageName: aws-load-balancer-operator
    provider:
      name: Red Hat Inc.
      url: https://redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: loki-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: loki-operator.v6.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "summary": "High request latency"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "page"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "message": "{{ $labels.job }} is leaking http basic auth credentials."
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({namespace=\"prod\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.16-v4.20
          containerImage: registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:f7fde57f19ef352510cfca9f073ab4f73cd769bd097e1b1d771070d58f682240
          createdAt: "2025-03-06T11:32:52Z"
          description: |
            The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
            ## Prerequisites and Requirements
            ### Loki Operator Namespace
            The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
            ### Memory Considerations
            Loki is a memory intensive application.  The initial
            set of OCP nodes may not be large enough to support the Loki stack.  Additional OCP nodes must be added
            to the OCP cluster if you desire to run with the recommended (or better) memory.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=6.0.0-0 <6.2.7'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators-redhat
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.2
          operators.operatorframework.io.bundle.channels.v1: stable-6.2
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: loki-operator
          operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
          operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io.test.config.v1: tests/scorecard/
          operators.operatorframework.io.test.mediatype.v1: scorecard+v1
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Cluster Logging
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |
          The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
          ## Prerequisites and Requirements
          ### Loki Operator Namespace
          The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
          ### Memory Considerations
          Loki is a memory intensive application.  The initial
          set of OCP nodes may not be large enough to support the Loki cluster.  Additional OCP nodes must be added
          to the OCP cluster if you desire to run with the recommended (or better) memory.
        displayName: Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Loki Operator
          url: https://github.com/grafana/loki
        maintainers:
        - email: team-logging@redhat.com
          name: Red Hat, AOS Logging
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/loki-operator-bundle@sha256:7122d656b12bd9ae0c0db81acf99778d5e7ebe570e203eb1fa87a981cc9aa81e
        - registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:f7fde57f19ef352510cfca9f073ab4f73cd769bd097e1b1d771070d58f682240
        - registry.redhat.io/openshift-logging/lokistack-gateway-rhel9@sha256:574afd46f23637b1685ddb00b647bb71d2e2d527611182fd2826bb818c5eb198
        - registry.redhat.io/openshift-logging/opa-openshift-rhel9@sha256:182dc5ab627d64b5e565a2edb170903ac381fc534b4366fc5ffae088ea0de5e5
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:145e9784b681ac7defa0a1547c03a6db9a587bf9be2820428eee84f58f8f1f24
        - registry.redhat.io/openshift-logging/logging-loki-rhel9@sha256:8c073f8de8288bf63489a400d7f93e96562652832965d33e0515f48d46282459
        version: 6.2.7
      entries:
      - name: loki-operator.v6.2.7
        version: 6.2.7
      - name: loki-operator.v6.2.6
        version: 6.2.6
      - name: loki-operator.v6.2.5
        version: 6.2.5
      - name: loki-operator.v6.2.4
        version: 6.2.4
      - name: loki-operator.v6.2.3
        version: 6.2.3
      - name: loki-operator.v6.2.2
        version: 6.2.2
      - name: loki-operator.v6.2.1
        version: 6.2.1
      - name: loki-operator.v6.2.0
        version: 6.2.0
      name: stable-6.2
    - currentCSV: loki-operator.v6.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "summary": "High request latency"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "page"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "message": "{{ $labels.job }} is leaking http basic auth credentials."
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({namespace=\"prod\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.17-v4.20
          containerImage: registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:bc3216fceafcea24d7d7eaeaab400248431ec43bdaf45ca00201e6c7aea588f6
          createdAt: "2025-06-11T13:21:40Z"
          description: |
            The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
            ## Prerequisites and Requirements
            ### Loki Operator Namespace
            The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
            ### Memory Considerations
            Loki is a memory intensive application.  The initial
            set of OCP nodes may not be large enough to support the Loki stack.  Additional OCP nodes must be added
            to the OCP cluster if you desire to run with the recommended (or better) memory.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=6.1.0-0 <6.3.2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators-redhat
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.3
          operators.operatorframework.io.bundle.channels.v1: stable-6.3
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: loki-operator
          operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
          operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io.test.config.v1: tests/scorecard/
          operators.operatorframework.io.test.mediatype.v1: scorecard+v1
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Cluster Logging
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |
          The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
          ## Prerequisites and Requirements
          ### Loki Operator Namespace
          The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
          ### Memory Considerations
          Loki is a memory intensive application.  The initial
          set of OCP nodes may not be large enough to support the Loki cluster.  Additional OCP nodes must be added
          to the OCP cluster if you desire to run with the recommended (or better) memory.
        displayName: Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Loki Operator
          url: https://github.com/grafana/loki
        maintainers:
        - email: team-logging@redhat.com
          name: Red Hat, AOS Logging
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:145e9784b681ac7defa0a1547c03a6db9a587bf9be2820428eee84f58f8f1f24
        - registry.redhat.io/openshift-logging/logging-loki-rhel9@sha256:d1082544887b6f250b41002104689b4553c2962b82480eb2ea61c10ed1490f27
        - registry.redhat.io/openshift-logging/loki-operator-bundle@sha256:7909874cd7653aae0f55e08d3c63b22a02e324650967acefc5e40545f8c1f1a8
        - registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:bc3216fceafcea24d7d7eaeaab400248431ec43bdaf45ca00201e6c7aea588f6
        - registry.redhat.io/openshift-logging/lokistack-gateway-rhel9@sha256:686249a9891b9e0000ce63ec54b7fc8885fff3975ea94b7d0e53a2dad6ab3ca7
        - registry.redhat.io/openshift-logging/opa-openshift-rhel9@sha256:0d5c3c1eecb920c880644bf667fdfb5a4edb864b2e456b8f6ab8540b6b3b879f
        version: 6.3.2
      entries:
      - name: loki-operator.v6.3.2
        version: 6.3.2
      - name: loki-operator.v6.3.1
        version: 6.3.1
      - name: loki-operator.v6.3.0
        version: 6.3.0
      name: stable-6.3
    - currentCSV: loki-operator.v6.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in namespace example-namespace has an error rate above 5% for more than 10 minutes.",
                            "summary": "High error rate detected"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "warning"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in pod {{ $labels.pod }} is leaking HTTP basic auth credentials in logs.",
                            "summary": "HTTP credentials leaked in logs"
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({kubernetes_namespace_name=\"example-namespace\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "application"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.18-v4.21
          containerImage: registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:73dc60568c8ade290b53e4816c88f227054c4a63efb664857f793d5d59d15586
          createdAt: "2025-11-03T17:23:40Z"
          description: |
            The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
            ## Prerequisites and Requirements
            ### Loki Operator Namespace
            The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
            ### Memory Considerations
            Loki is a memory intensive application.  The initial
            set of OCP nodes may not be large enough to support the Loki stack.  Additional OCP nodes must be added
            to the OCP cluster if you desire to run with the recommended (or better) memory.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=6.2.0-0 <6.4.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators-redhat
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.4
          operators.operatorframework.io.bundle.channels.v1: stable-6.4
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: loki-operator
          operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
          operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io.test.config.v1: tests/scorecard/
          operators.operatorframework.io.test.mediatype.v1: scorecard+v1
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Cluster Logging
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |
          The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
          ## Prerequisites and Requirements
          ### Loki Operator Namespace
          The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
          ### Memory Considerations
          Loki is a memory intensive application.  The initial
          set of OCP nodes may not be large enough to support the Loki cluster.  Additional OCP nodes must be added
          to the OCP cluster if you desire to run with the recommended (or better) memory.
        displayName: Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Loki Operator
          url: https://github.com/grafana/loki
        maintainers:
        - email: team-logging@redhat.com
          name: Red Hat, AOS Logging
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/lokistack-gateway-rhel9@sha256:74d61619b9420655da84bc9939e37f76040b437a70e9c96eeb3267f00dfe88ad
        - registry.redhat.io/openshift-logging/opa-openshift-rhel9@sha256:bd5619a05a193763628b027ee36d68b4eff5caae80b974161acfb8c1d37f7d3e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.19@sha256:145e9784b681ac7defa0a1547c03a6db9a587bf9be2820428eee84f58f8f1f24
        - registry.redhat.io/openshift-logging/logging-loki-rhel9@sha256:2b491fcb180423632d30811515a439a7a7f41023c1cfe4780647f18969b85a1d
        - registry.redhat.io/openshift-logging/loki-operator-bundle@sha256:f671ac595873a42b28b30f5021205372782c352c05b7148246b15eaf7b161196
        - registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:73dc60568c8ade290b53e4816c88f227054c4a63efb664857f793d5d59d15586
        version: 6.4.1
      entries:
      - name: loki-operator.v6.4.1
        version: 6.4.1
      - name: loki-operator.v6.4.0
        version: 6.4.0
      name: stable-6.4
    defaultChannel: stable-6.4
    packageName: loki-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: https://www.turbonomic.com/
    name: t8c-tsc-client-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: t8c-tsc-client-certified.v1.4.3-candidate-20251022123244000
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "TurbonomicClient",
                "metadata": {
                  "name": "turbonomicclient-release"
                },
                "spec": {
                  "global": {
                    "version": "8.16.1"
                  },
                  "probes": {
                    "actionScript": {
                      "enabled": false
                    },
                    "actionStreamKafka": {
                      "enabled": false
                    },
                    "appDynamics": {
                      "enabled": false
                    },
                    "compellent": {
                      "enabled": false
                    },
                    "datadog": {
                      "enabled": false
                    },
                    "dynatrace": {
                      "enabled": false
                    },
                    "flexera": {
                      "enabled": false
                    },
                    "hds": {
                      "enabled": false
                    },
                    "hpe3par": {
                      "enabled": false
                    },
                    "hyperFlex": {
                      "enabled": false
                    },
                    "hyperV": {
                      "enabled": false
                    },
                    "ibmStorageFlashSystem": {
                      "enabled": false
                    },
                    "instana": {
                      "enabled": false
                    },
                    "jvm": {
                      "enabled": false
                    },
                    "mssql": {
                      "enabled": false
                    },
                    "mysql": {
                      "enabled": false
                    },
                    "netApp": {
                      "enabled": false
                    },
                    "newRelic": {
                      "enabled": false
                    },
                    "nutanix": {
                      "enabled": false
                    },
                    "oneView": {
                      "enabled": false
                    },
                    "oracle": {
                      "enabled": false
                    },
                    "powerVM": {
                      "enabled": false
                    },
                    "pure": {
                      "enabled": false
                    },
                    "scaleIO": {
                      "enabled": false
                    },
                    "serviceNow": {
                      "enabled": false
                    },
                    "snmp": {
                      "enabled": false
                    },
                    "terraform": {
                      "enabled": false
                    },
                    "tomcat": {
                      "enabled": false
                    },
                    "ucs": {
                      "enabled": false
                    },
                    "vCenter": {
                      "enabled": false
                    },
                    "vmax": {
                      "enabled": false
                    },
                    "vmm": {
                      "enabled": false
                    },
                    "vplex": {
                      "enabled": false
                    },
                    "webLogic": {
                      "enabled": false
                    },
                    "webSphere": {
                      "enabled": false
                    },
                    "wmi": {
                      "enabled": false
                    },
                    "xtremIO": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "VersionManager",
                "metadata": {
                  "name": "versionmanager-release"
                },
                "spec": {
                  "url": "http://remote-nginx-tunnel:9080/cluster-manager/clusterConfiguration"
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-client-operator@sha256:bd207d0c85f83e590dfa763eada9bbcb173a54c729ba93015485df487a4c3806
          createdAt: "2025-10-22T16:48:12Z"
          description: Turbonomic Secure Connect for Hybrid environment management
          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.skipRange: '>=1.1.0 <1.4.3-candidate-20251022123244000'
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TurbonomicClient is the Schema for the turbonomicclients
              API
            displayName: Turbonomic Client
            kind: TurbonomicClient
            name: turbonomicclients.clients.turbonomic.ibm.com
            version: v1alpha1
          - description: VersionManager is the Schema for the versionmanagers API
            displayName: Version Manager
            kind: VersionManager
            name: versionmanagers.clients.turbonomic.ibm.com
            version: v1alpha1
        description: "### Turbonomic Secure Connect for Hybrid environment management\nTurbonomic
          Workload Automation for Multicloud simultaneously optimizes performance,
          compliance, and cost in real-time. Workloads are precisely resourced, automatically,
          to perform while satisfying business constraints:\n* Continuous placement
          of workload across multiple clouds both on-prem and public clouds providers.\n*
          Continuous scaling for applications and the underlying infrastructure.\n*
          Capability to connect both public cloud and on-prem targets on single saas
          instance\nIt assures application performance by giving workloads the resources
          they need when they need them.\n\n### How do I start?\nTurbonomic documentation
          can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm.\nTo
          setup Turbonomic Secure Connect client, follow the instructions below:\n1.
          Click Install on the landing page\n2. Upon moving to Install Operator page,
          do not modify the default selection for any of the configuration\n3. Select
          the Installed namespace from the drop down or add a new namespace and click
          on create project to create the entered namespace.\n4. Click Install on
          the Install Operator page.\nAt this point operator is installed.\n\nOn the
          Details tab, under Provided APIs: \n1. Click Create instance for the Turbonomic
          Client API. Enable/Disable the probes based on the requirement, and click
          Create.\n2. Click Create instance for the Version Manager API. Do not modify
          the JSON/YAML file, click on Create.\n\n### How does it work?\nTurbonomic
          uses a public APIs already exposed by application and infrastructure instrumentation
          to discover and monitor your environment.\nTurbonomic determines the right
          actions that drive continuous health, including continuous placement and
          continuous scaling for applications and the underlying cluster.\nTurbonomic
          leverages the built-on orchestration provided by the application and infrastructure
          deployment tools and automates the execution of these actions to continiously
          meet the respective service level objective of each application service."
        displayName: Turbonomic Secure Connect Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - turbonomic
        - turbo secure connect
        links:
        - name: T8c Tsc Client Certified
          url: https://t8c-tsc-certified.domain
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        relatedImages:
        - icr.io/cpopen/t8c-client-operator@sha256:bd207d0c85f83e590dfa763eada9bbcb173a54c729ba93015485df487a4c3806
        - registry.connect.redhat.com/turbonomic/t8c-tsc-client-operator-bundle@sha256:14207fa7bc67daab46205107aec44d68d26354980c77bda1289fa968044bb2f2
        version: 1.4.3-candidate-20251022123244000
      entries:
      - name: t8c-tsc-client-certified.v1.4.3-candidate-20251022123244000
        version: 1.4.3-candidate-20251022123244000
      name: candidate
    - currentCSV: t8c-tsc-client-certified.v1.4.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "TurbonomicClient",
                "metadata": {
                  "name": "turbonomicclient-release"
                },
                "spec": {
                  "global": {
                    "version": "8.16.1"
                  },
                  "probes": {
                    "actionScript": {
                      "enabled": false
                    },
                    "actionStreamKafka": {
                      "enabled": false
                    },
                    "appDynamics": {
                      "enabled": false
                    },
                    "compellent": {
                      "enabled": false
                    },
                    "datadog": {
                      "enabled": false
                    },
                    "dynatrace": {
                      "enabled": false
                    },
                    "flexera": {
                      "enabled": false
                    },
                    "hds": {
                      "enabled": false
                    },
                    "hpe3par": {
                      "enabled": false
                    },
                    "hyperFlex": {
                      "enabled": false
                    },
                    "hyperV": {
                      "enabled": false
                    },
                    "ibmStorageFlashSystem": {
                      "enabled": false
                    },
                    "instana": {
                      "enabled": false
                    },
                    "jvm": {
                      "enabled": false
                    },
                    "mssql": {
                      "enabled": false
                    },
                    "mysql": {
                      "enabled": false
                    },
                    "netApp": {
                      "enabled": false
                    },
                    "newRelic": {
                      "enabled": false
                    },
                    "nutanix": {
                      "enabled": false
                    },
                    "oneView": {
                      "enabled": false
                    },
                    "oracle": {
                      "enabled": false
                    },
                    "powerVM": {
                      "enabled": false
                    },
                    "pure": {
                      "enabled": false
                    },
                    "scaleIO": {
                      "enabled": false
                    },
                    "serviceNow": {
                      "enabled": false
                    },
                    "snmp": {
                      "enabled": false
                    },
                    "terraform": {
                      "enabled": false
                    },
                    "tomcat": {
                      "enabled": false
                    },
                    "ucs": {
                      "enabled": false
                    },
                    "vCenter": {
                      "enabled": false
                    },
                    "vmax": {
                      "enabled": false
                    },
                    "vmm": {
                      "enabled": false
                    },
                    "vplex": {
                      "enabled": false
                    },
                    "webLogic": {
                      "enabled": false
                    },
                    "webSphere": {
                      "enabled": false
                    },
                    "wmi": {
                      "enabled": false
                    },
                    "xtremIO": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "VersionManager",
                "metadata": {
                  "name": "versionmanager-release"
                },
                "spec": {
                  "url": "http://remote-nginx-tunnel:9080/cluster-manager/clusterConfiguration"
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-client-operator@sha256:372569f1b26ccdebae386e5a3e5da42722255ab6e604f1c420b922bb35baf716
          createdAt: "2025-10-24T17:03:25Z"
          description: Turbonomic Secure Connect for Hybrid environment management
          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.skipRange: '>=1.1.0 <1.4.3'
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TurbonomicClient is the Schema for the turbonomicclients
              API
            displayName: Turbonomic Client
            kind: TurbonomicClient
            name: turbonomicclients.clients.turbonomic.ibm.com
            version: v1alpha1
          - description: VersionManager is the Schema for the versionmanagers API
            displayName: Version Manager
            kind: VersionManager
            name: versionmanagers.clients.turbonomic.ibm.com
            version: v1alpha1
        description: "### Turbonomic Secure Connect for Hybrid environment management\nTurbonomic
          Workload Automation for Multicloud simultaneously optimizes performance,
          compliance, and cost in real-time. Workloads are precisely resourced, automatically,
          to perform while satisfying business constraints:\n* Continuous placement
          of workload across multiple clouds both on-prem and public clouds providers.\n*
          Continuous scaling for applications and the underlying infrastructure.\n*
          Capability to connect both public cloud and on-prem targets on single saas
          instance\nIt assures application performance by giving workloads the resources
          they need when they need them.\n\n### How do I start?\nTurbonomic documentation
          can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm.\nTo
          setup Turbonomic Secure Connect client, follow the instructions below:\n1.
          Click Install on the landing page\n2. Upon moving to Install Operator page,
          do not modify the default selection for any of the configuration\n3. Select
          the Installed namespace from the drop down or add a new namespace and click
          on create project to create the entered namespace.\n4. Click Install on
          the Install Operator page.\nAt this point operator is installed.\n\nOn the
          Details tab, under Provided APIs: \n1. Click Create instance for the Turbonomic
          Client API. Enable/Disable the probes based on the requirement, and click
          Create.\n2. Click Create instance for the Version Manager API. Do not modify
          the JSON/YAML file, click on Create.\n\n### How does it work?\nTurbonomic
          uses a public APIs already exposed by application and infrastructure instrumentation
          to discover and monitor your environment.\nTurbonomic determines the right
          actions that drive continuous health, including continuous placement and
          continuous scaling for applications and the underlying cluster.\nTurbonomic
          leverages the built-on orchestration provided by the application and infrastructure
          deployment tools and automates the execution of these actions to continiously
          meet the respective service level objective of each application service."
        displayName: Turbonomic Secure Connect Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - turbonomic
        - turbo secure connect
        links:
        - name: T8c Tsc Client Certified
          url: https://t8c-tsc-certified.domain
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        relatedImages:
        - icr.io/cpopen/t8c-client-operator@sha256:372569f1b26ccdebae386e5a3e5da42722255ab6e604f1c420b922bb35baf716
        - registry.connect.redhat.com/turbonomic/t8c-tsc-client-operator-bundle@sha256:164c19fcede19adde16d688ddc3c076bf5240e17ea8ba62203166fde1ae34823
        version: 1.4.3
      entries:
      - name: t8c-tsc-client-certified.v1.4.3
        version: 1.4.3
      name: stable
    defaultChannel: stable
    packageName: t8c-tsc-client-certified
    provider:
      name: Turbonomic, Inc.
      url: https://www.turbonomic.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Digital.ai
      provider-url: https://digital.ai
    name: digitalai-release-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: digitalai-release-operator.v25.1.0-beta.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "small"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "cluster": {
                    "manager": "xlr-legacy",
                    "mode": "full",
                    "name": "xl-release_cluster",
                    "node": {
                      "datacenter": "default"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"${XLR_CLUSTER_NAME}\"\n    manager = \"${XLR_CLUSTER_MANAGER}\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n      {{- if .Values.storage.reportingEngine.downingProviderClass }}\n      cluster {\n        downing-provider-class = {{.Values.storage.reportingEngine.downingProviderClass | quote}}\n      }\n      {{- end }}\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n    {{- if or .Values.storage.reportingEngine.s3.enabled .Values.storage.reportingEngine.cleanupInterval }}\n    engine {\n      {{- if .Values.storage.reportingEngine.cleanupInterval }}\n      cleanUpInterval = \"{{ .Values.storage.reportingEngine.cleanupInterval }}\"\n      {{- end }}\n      {{- if or .Values.storage.reportingEngine.s3.enabled }}\n      type = \"xlr-s3\"\n      s3 {\n        bucket = \"{{ .Values.storage.reportingEngine.s3.bucket | required \"storage.reportingEngine.s3.bucket is required\" }}\"\n        base-key = \"{{ .Values.storage.reportingEngine.s3.baseKey | required \"storage.reportingEngine.s3.baseKey is required\" }}\"\n        region = \"{{ .Values.storage.reportingEngine.s3.region | required \"storage.reportingEngine.s3.region is required\" }}\"\n        {{- if .Values.storage.reportingEngine.s3.endpointUri }}\n        endpoint-uri = \"{{ .Values.storage.reportingEngine.s3.endpointUri }}\"\n        {{- end }}\n      }\n      {{- end }}\n    }\n    {{- end }}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  {{- if or .Values.storage.jobLog.s3.enabled .Values.storage.jobLog.cleanupInterval .Values.storage.jobLog.maxItemsPerCleanup }}\n  job-log {\n    {{- if .Values.storage.jobLog.cleanupInterval }}\n    cleanup-interval = \"{{ .Values.storage.jobLog.cleanupInterval }}\"\n    {{- end }}\n    {{- if .Values.storage.jobLog.maxItemsPerCleanup }}\n    max-items-per-cleanup = \"{{ .Values.storage.jobLog.maxItemsPerCleanup }}\"\n    {{- end }}\n    {{- if or .Values.storage.jobLog.s3.enabled }}\n    type = \"xlr-s3\"\n    s3 {\n      bucket = \"{{ .Values.storage.jobLog.s3.bucket | required \"storage.jobLog.s3.bucket is required\" }}\"\n      base-key = \"{{ .Values.storage.jobLog.s3.baseKey | required \"storage.jobLog.s3.baseKey is required\" }}\"\n      region = \"{{ .Values.storage.jobLog.s3.region | required \"storage.jobLog.s3.region is required\" }}\"\n      {{- if .Values.storage.jobLog.s3.endpointUri }}\n      endpoint-uri = \"{{ .Values.storage.jobLog.s3.endpointUri }}\"\n      {{- end }}\n    }\n    {{- end }}\n  }\n  {{- end }}\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    },
                    "node-conf_xl-release-conf-template": {
                      "content": "# The ${APP_HOME}/node-conf/xl-release.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-release.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-release.conf and this is specified in ${APP_HOME}/conf/xlr-wrapper-linux.conf\nxl {\n  cluster {\n    node {\n      id = ${XL_NODE_NAME}\n      hostname = ${XL_NODE_NAME}\n      datacenter = ${XLR_CLUSTER_DATACENTER}\n      clusterPort = 5531\n    }\n  }\n}\n",
                      "mode": 432,
                      "path": "node-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "readOnlyRootFilesystem": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-dair",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": "cd /tmp; \n/opt/xebialabs/xl-client/xl kube upgrade \\\n  --skip-context-check \\\n  --local-repo /opt/xebialabs/xl-op-blueprints \\\n  --answers /opt/xebialabs/xl-client/generated_answers.yaml\n",
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    }
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "livenessProbe": {
                    "enabled": true,
                    "failureThreshold": 3,
                    "initialDelaySeconds": 10,
                    "path": "s/actuator/health/liveness",
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 20
                  },
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.12.0-debian-12-r12"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "emptyDirPaths": [
                      "/opt/xebialabs/xl-release-server/cache",
                      "/opt/xebialabs/xl-release-server/conf",
                      "/opt/xebialabs/xl-release-server/driver/jdbc",
                      "/opt/xebialabs/xl-release-server/driver/mq",
                      "/opt/xebialabs/xl-release-server/log",
                      "/opt/xebialabs/xl-release-server/node-conf",
                      "/opt/xebialabs/xl-release-server/plugins",
                      "/opt/xebialabs/xl-release-server/work",
                      "/tmp"
                    ],
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "17.2.0-debian-12-r12"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "4.0.7-debian-12-r0"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "readinessProbe": {
                    "enabled": true,
                    "failureThreshold": 3,
                    "initialDelaySeconds": 10,
                    "path": "s/actuator/health/readiness",
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 20
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "startupProbe": {
                    "enabled": true,
                    "failureThreshold": 12,
                    "initialDelaySeconds": 60,
                    "path": "s/actuator/health/readiness",
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 20
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "storage": {
                    "jobLog": {
                      "cleanupInterval": null,
                      "maxItemsPerCleanup": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    },
                    "reportingEngine": {
                      "cleanupInterval": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    }
                  },
                  "terminationGracePeriodSeconds": 450,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r39"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabsunsupported/release-operator@sha256:13ba64f395ea66740d4f424a85ca94c0b018913c1ab672448b31d652b09ece5f '
          createdAt: "2025-04-09T14:48:21Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind: DigitalaiRelease\nmetadata:\n
          \ name: dair-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    enabled: false\n  containerSecurityContext:\n
          \   enabled: false\n  volumePermissions:\n    enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          JSESSIONID\n      haproxy.router.openshift.io/disable_cookies: 'false'\n
          \     haproxy.router.openshift.io/rewrite-target: /\n      haproxy.router.openshift.io/timeout:
          120s\n    hostname: '<mandatory-release-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n        enabled:
          false\n      containerSecurityContext:\n        enabled: false\n    volumePermissions:\n
          \     enabled: false\n  rabbitmq:\n    install: true\n    persistence:\n
          \     size: 1Gi\n      storageClass: ''\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n```\n\n#### Configuration
          Details\n\nThe sample configuration uses:\n\n- Autogenerated limited license\n-
          Simple administrator initial password\n- Default keystore setup\n- Only
          one replica is set for all pods\n- All Pods are missing resource limit setup\n-
          Default storage class and minimal size for persistent storage\n- Release
          pods are using persistence access mode `ReadWriteOnce`, for Release pods
          the requirement is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB
          management\n- Embedded RabbitMQ for message queue management\n\n#### Security
          Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined ranges (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:155a3bf3b1111eb17a78c72c50e36edfcb331b7fb0298692c59f1ef6b7a068ac
        - docker.io/xebialabsunsupported/release-operator@sha256:13ba64f395ea66740d4f424a85ca94c0b018913c1ab672448b31d652b09ece5f
        - docker.io/xebialabsunsupported/xl-release@sha256:7297abc6529aa2cc8d43d4df5caa6fc63eae412ab06e4a59f8da45524b3937f6
        version: 25.1.0-beta.6
      entries:
      - name: digitalai-release-operator.v25.1.0-beta.6
        version: 25.1.0-beta.6
      name: beta
    - currentCSV: digitalai-release-operator.v24.1.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "fsGroup": null,
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "fsGroup": null,
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"xl-release_cluster\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  jvm {\n      override-jvm-options = {{ .Values.jvm.overrideOptions }}\n      networkaddress.cache.ttl = {{ index .Values.jvm.options \"networkaddress.cache.ttl\" }}\n  }\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "ingressClass": "haproxy-dair",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "health": {
                    "enabled": true,
                    "periodScans": 10,
                    "probeFailureThreshold": 12,
                    "probesLivenessTimeout": 60,
                    "probesReadinessTimeout": 60
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-client/xl",
                        "kube",
                        "upgrade",
                        "--skip-context-check",
                        "--local-repo",
                        "/opt/xebialabs/xl-op-blueprints",
                        "--answers",
                        "/opt/xebialabs/xl-client/generated_answers.yaml"
                      ],
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    },
                    "overrideOptions": true
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.0-debian-12-r1"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.10.1-debian-12-r5"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "15.6.0-debian-12-r7"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.13-debian-12-r2"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "terminationGracePeriodSeconds": 200,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r16"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator without SCC creation and with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: docker.io/xebialabs/release-operator@sha256:47d6e31f66fce52c6566240b85fb028890409ad3addeea134120d1afa4814883
          createdAt: "2024-10-16T04:25:19Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind:
          DigitalaiRelease\nmetadata:\n  name: dair-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    runAsUser: null\n    runAsGroup: null\n
          \   fsGroup: null\n  containerSecurityContext:\n    runAsUser: null\n    runAsGroup:
          null\n  securityContextConstraints:\n    enabled: false\n  volumePermissions:\n
          \   enabled: false\n  route:\n    enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          JSESSIONID\n      haproxy.router.openshift.io/disable_cookies: 'false'\n
          \     haproxy.router.openshift.io/rewrite-target: /\n      haproxy.router.openshift.io/timeout:
          120s\n    hostname: '<mandatory-release-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n        enabled:
          false\n        runAsUser: null\n        runAsGroup: null\n        fsGroup:
          null\n      containerSecurityContext:\n        enabled: false\n        runAsUser:
          null\n        runAsGroup: null\n      securityContextConstraints:\n        enabled:
          false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n    install:
          true\n    persistence:\n      size: 1Gi\n      storageClass: ''\n    replicaCount:
          1\n    podSecurityContext:\n      enabled: false\n      runAsUser: null\n
          \     runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     enabled: false\n      runAsUser: null\n      runAsGroup: null\n    securityContextConstraints:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\nIf
          SCC is required, it must be managed manually. The necessary permissions
          for accessing SecurityContextConstraints must be granted when SCC is enabled;
          otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"dair-doc-digitalai-release-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xlr-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Release pods are using
          persistence access mode `ReadWriteOnce`, for Release pods the requirement
          is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB management\n- Embedded
          RabbitMQ for message queue management\n\n#### Security Configuration Details\n\n-
          `securityContextConstraints.enabled: false` - disables creation of SCCs;\n-
          `podSecurityContext/containerSecurityContext` - that disables the use of
          specific UIDs or GIDs, so the IDs can be assigned from the defined ranges
          (for example from restricted SCC);\n- `volumePermissions.enabled: false`
          - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/release-operator@sha256:47d6e31f66fce52c6566240b85fb028890409ad3addeea134120d1afa4814883
        - docker.io/xebialabs/xl-release@sha256:d1b65493ed524d37c60483f44b8bcc877ff398c81d36c7e767f2254dadec98cc
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:771a9a173e033a3ad8b46f5c00a7036eaa88c8d8d1fbd89217325168998113ea
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:a85d4f1c8a686abc0b9032dddda75991216d44dfade214625723d7009be314d3
        version: 24.1.10
      entries:
      - name: digitalai-release-operator.v24.1.10
        version: 24.1.10
      name: stable
    - currentCSV: digitalai-release-operator.v24.1.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"xl-release_cluster\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  jvm {\n      override-jvm-options = {{ .Values.jvm.overrideOptions }}\n      networkaddress.cache.ttl = {{ index .Values.jvm.options \"networkaddress.cache.ttl\" }}\n  }\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "image": {
                        "tag": "v0.14.7"
                      },
                      "ingressClass": "haproxy-dair",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "health": {
                    "enabled": true,
                    "periodScans": 10,
                    "probeFailureThreshold": 12,
                    "probesLivenessTimeout": 60,
                    "probesReadinessTimeout": 60
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-client/xl",
                        "kube",
                        "upgrade",
                        "--skip-context-check",
                        "--local-repo",
                        "/opt/xebialabs/xl-op-blueprints",
                        "--answers",
                        "/opt/xebialabs/xl-client/generated_answers.yaml"
                      ],
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    },
                    "overrideOptions": true
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.2-debian-12-r10"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r0"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "15.6.0-debian-12-r20"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.14-debian-12-r7"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "terminationGracePeriodSeconds": 200,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r40"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator without SCC creation and with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/release-operator@sha256:a190db714dfbba61077d21eb8917831b6b4d039299e2ce2fd3ea3934ff457171 '
          createdAt: "2025-04-07T05:35:54Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind:
          DigitalaiRelease\nmetadata:\n  name: dair-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    enabled: false\n  containerSecurityContext:\n
          \   enabled: false\n  securityContextConstraints:\n    enabled: false\n
          \ volumePermissions:\n    enabled: false\n  route:\n    enabled: false\n
          \   annotations:\n      haproxy.router.openshift.io/cookie_name: JSESSIONID\n
          \     haproxy.router.openshift.io/disable_cookies: 'false'\n      haproxy.router.openshift.io/rewrite-target:
          /\n      haproxy.router.openshift.io/timeout: 120s\n    hostname: '<mandatory-release-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n
          \       enabled: false\n      containerSecurityContext:\n        enabled:
          false\n      securityContextConstraints:\n        enabled: false\n    volumePermissions:\n
          \     enabled: false\n  rabbitmq:\n    install: true\n    persistence:\n
          \     size: 1Gi\n      storageClass: ''\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   securityContextConstraints:\n      enabled: false\n    volumePermissions:\n
          \     enabled: false\n```\n\nIf SCC is required, it must be managed manually.
          The necessary permissions for accessing SecurityContextConstraints must
          be granted when SCC is enabled; otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"dair-doc-digitalai-release-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xlr-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Release pods are using
          persistence access mode `ReadWriteOnce`, for Release pods the requirement
          is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB management\n- Embedded
          RabbitMQ for message queue management\n\n#### Security Configuration Details\n\n-
          `securityContextConstraints.enabled: false` - disables creation of SCCs;\n-
          `podSecurityContext/containerSecurityContext` - that disables the use of
          specific UIDs or GIDs, so the IDs can be assigned from the defined ranges
          (for example from restricted SCC);\n- `volumePermissions.enabled: false`
          - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/xl-release@sha256:c990bfa8c783898536aa78a8cbcff03644de1241a201af4a14835c81c9c654d9
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:7169b97771d93f504de73a3696dbd1d184ba987cb51ae1ab81bf4bef17b42bcf
        - docker.io/xebialabs/release-operator@sha256:a190db714dfbba61077d21eb8917831b6b4d039299e2ce2fd3ea3934ff457171
        version: 24.1.17
      entries:
      - name: digitalai-release-operator.v24.1.17
        version: 24.1.17
      - name: digitalai-release-operator.v24.1.14
        version: 24.1.14
      - name: digitalai-release-operator.v24.1.10
        version: 24.1.10
      name: stable-v24.1
    - currentCSV: digitalai-release-operator.v24.3.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "small"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"xl-release_cluster\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n    {{- if or .Values.storage.reportingEngine.s3.enabled .Values.storage.reportingEngine.cleanupInterval }}\n    engine {\n      {{- if .Values.storage.reportingEngine.cleanupInterval }}\n      cleanUpInterval = \"{{ .Values.storage.reportingEngine.cleanupInterval }}\"\n      {{- end }}\n      {{- if or .Values.storage.reportingEngine.s3.enabled }}\n      type = \"xlr-s3\"\n      s3 {\n        bucket = \"{{ .Values.storage.reportingEngine.s3.bucket | required \"storage.reportingEngine.s3.bucket is required\" }}\"\n        base-key = \"{{ .Values.storage.reportingEngine.s3.baseKey | required \"storage.reportingEngine.s3.baseKey is required\" }}\"\n        region = \"{{ .Values.storage.reportingEngine.s3.region | required \"storage.reportingEngine.s3.region is required\" }}\"\n        {{- if .Values.storage.reportingEngine.s3.endpointUri }}\n        endpoint-uri = \"{{ .Values.storage.reportingEngine.s3.endpointUri }}\"\n        {{- end }}\n      }\n      {{- end }}\n    }\n    {{- end }}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  {{- if or .Values.storage.jobLog.s3.enabled .Values.storage.jobLog.cleanupInterval .Values.storage.jobLog.maxItemsPerCleanup }}\n  job-log {\n    {{- if .Values.storage.jobLog.cleanupInterval }}\n    cleanup-interval = \"{{ .Values.storage.jobLog.cleanupInterval }}\"\n    {{- end }}\n    {{- if .Values.storage.jobLog.maxItemsPerCleanup }}\n    max-items-per-cleanup = \"{{ .Values.storage.jobLog.maxItemsPerCleanup }}\"\n    {{- end }}\n    {{- if or .Values.storage.jobLog.s3.enabled }}\n    type = \"xlr-s3\"\n    s3 {\n      bucket = \"{{ .Values.storage.jobLog.s3.bucket | required \"storage.jobLog.s3.bucket is required\" }}\"\n      base-key = \"{{ .Values.storage.jobLog.s3.baseKey | required \"storage.jobLog.s3.baseKey is required\" }}\"\n      region = \"{{ .Values.storage.jobLog.s3.region | required \"storage.jobLog.s3.region is required\" }}\"\n      {{- if .Values.storage.jobLog.s3.endpointUri }}\n      endpoint-uri = \"{{ .Values.storage.jobLog.s3.endpointUri }}\"\n      {{- end }}\n    }\n    {{- end }}\n  }\n  {{- end }}\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    },
                    "node-conf_xl-release-conf-template": {
                      "content": "# The ${APP_HOME}/node-conf/xl-release.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-release.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-release.conf and this is specified in ${APP_HOME}/conf/xlr-wrapper-linux.conf\nxl {\n  cluster {\n    node {\n      id = ${XL_NODE_NAME}\n      hostname = ${XL_NODE_NAME}\n      clusterPort = 5531\n    }\n  }\n}\n",
                      "mode": 432,
                      "path": "node-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "readOnlyRootFilesystem": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-dair",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "health": {
                    "enabled": true,
                    "periodScans": 10,
                    "probeFailureThreshold": 12,
                    "probesLivenessTimeout": 60,
                    "probesReadinessTimeout": 60
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": "cd /tmp; \n/opt/xebialabs/xl-client/xl kube upgrade \\\n  --skip-context-check \\\n  --local-repo /opt/xebialabs/xl-op-blueprints \\\n  --answers /opt/xebialabs/xl-client/generated_answers.yaml\n",
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    }
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r3"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "emptyDirPaths": [
                      "/opt/xebialabs/xl-release-server/cache",
                      "/opt/xebialabs/xl-release-server/conf",
                      "/opt/xebialabs/xl-release-server/driver/jdbc",
                      "/opt/xebialabs/xl-release-server/driver/mq",
                      "/opt/xebialabs/xl-release-server/log",
                      "/opt/xebialabs/xl-release-server/node-conf",
                      "/opt/xebialabs/xl-release-server/plugins",
                      "/opt/xebialabs/xl-release-server/work",
                      "/tmp"
                    ],
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "16.3.0-debian-12-r23"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n{{ if eq .Values.queueType \"quorum\" -}}\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n{{- end }}\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.13.7-debian-12-r5"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "queueType": "classic",
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "storage": {
                    "jobLog": {
                      "cleanupInterval": null,
                      "maxItemsPerCleanup": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    },
                    "reportingEngine": {
                      "cleanupInterval": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    }
                  },
                  "terminationGracePeriodSeconds": 200,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r42"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/release-operator@sha256:f07c3a505e28db618b8991c7cf8a6b9a9423313be2757bacc776b9e59dfc9f45 '
          createdAt: "2025-04-08T15:13:48Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind: DigitalaiRelease\nmetadata:\n
          \ name: dair-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    enabled: false\n  containerSecurityContext:\n
          \   enabled: false\n  volumePermissions:\n    enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          JSESSIONID\n      haproxy.router.openshift.io/disable_cookies: 'false'\n
          \     haproxy.router.openshift.io/rewrite-target: /\n      haproxy.router.openshift.io/timeout:
          120s\n    hostname: '<mandatory-release-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n        enabled:
          false\n      containerSecurityContext:\n        enabled: false\n    volumePermissions:\n
          \     enabled: false\n  rabbitmq:\n    install: true\n    persistence:\n
          \     size: 1Gi\n      storageClass: ''\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n```\n\n#### Configuration
          Details\n\nThe sample configuration uses:\n\n- Autogenerated limited license\n-
          Simple administrator initial password\n- Default keystore setup\n- Only
          one replica is set for all pods\n- All Pods are missing resource limit setup\n-
          Default storage class and minimal size for persistent storage\n- Release
          pods are using persistence access mode `ReadWriteOnce`, for Release pods
          the requirement is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB
          management\n- Embedded RabbitMQ for message queue management\n\n#### Security
          Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined ranges (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/xl-release@sha256:263fb67b774953a264f03945aa861fe6ed2ceb1ee25828ea11844f946e4619cf
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:49919225644f55e6e752c7e64ce3afb3260d0201962939e0d9bb2b6088a8841b
        - docker.io/xebialabs/release-operator@sha256:f07c3a505e28db618b8991c7cf8a6b9a9423313be2757bacc776b9e59dfc9f45
        version: 24.3.6
      entries:
      - name: digitalai-release-operator.v24.3.6
        version: 24.3.6
      - name: digitalai-release-operator.v24.3.5
        version: 24.3.5
      name: stable-v24.3
    defaultChannel: stable-v24.3
    packageName: digitalai-release-operator
    provider:
      name: Digital.ai
      url: https://digital.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Broadcom
      provider-url: https://www.broadcom.com/
    name: layer7-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: layer7-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "security.brcmlabs.com/v1",
                "kind": "Gateway",
                "metadata": {
                  "name": "ssg"
                },
                "spec": {
                  "app": {
                    "image": "docker.io/caapim/gateway:11.1.3",
                    "management": {
                      "cluster": {
                        "hostname": "gateway.brcmlabs.com",
                        "password": "7layer"
                      },
                      "password": "7layer",
                      "username": "admin"
                    },
                    "replicas": 1,
                    "service": {
                      "ports": [
                        {
                          "name": "https",
                          "port": 8443,
                          "protocol": "TCP",
                          "targetPort": 8443
                        },
                        {
                          "name": "management",
                          "port": 9443,
                          "protocol": "TCP",
                          "targetPort": 9443
                        }
                      ],
                      "type": "LoadBalancer"
                    }
                  },
                  "license": {
                    "accept": false,
                    "secretName": "gateway-license"
                  },
                  "version": "11.1.3"
                },
                "status": {}
              },
              {
                "apiVersion": "security.brcmlabs.com/v1",
                "kind": "Repository",
                "metadata": {
                  "name": "my-repository"
                },
                "spec": {
                  "auth": {},
                  "branch": "main",
                  "enabled": true,
                  "endpoint": "https://github.com/\u003cusername\u003e/\u003crepository\u003e",
                  "type": "git"
                }
              },
              {
                "apiVersion": "security.brcmlabs.com/v1alpha1",
                "kind": "L7Api",
                "metadata": {
                  "name": "l7api-sample"
                },
                "spec": {
                  "deploymentTags": [
                    "ssg",
                    "ssg1"
                  ],
                  "graphmanBundle": "jsongz",
                  "portalPublished": false,
                  "serviceUrl": "/v1/api"
                }
              },
              {
                "apiVersion": "security.brcmlabs.com/v1alpha1",
                "kind": "L7Portal",
                "metadata": {
                  "name": "dev-portal"
                },
                "spec": {
                  "auth": {},
                  "deploymentTags": [
                    "ssg"
                  ],
                  "enabled": true,
                  "endpoint": "dev-ssg.brcmlabs.com",
                  "enrollmentBundle": "",
                  "portalTenant": "portal"
                }
              },
              {
                "apiVersion": "security.brcmlabs.com/v1alpha1",
                "kind": "L7StateStore",
                "metadata": {
                  "name": "state-store-example"
                },
                "spec": {
                  "redis": {
                    "database": 0,
                    "groupName": "l7gw",
                    "masterPassword": "7layer",
                    "standalone": {
                      "host": "redis-standalone",
                      "port": 6379
                    },
                    "storeId": "test",
                    "type": "standalone"
                  },
                  "type": "redis"
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: docker.io/caapim/layer7-operator:v1.2.2
          createdAt: "2025-11-28T13:43:31Z"
          description: The Layer7 Operator covers all aspects of deploying, maintaining
            and upgrading Layer7 API Gateways in Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: layer7-operator-system
          operators.openshift.io/valid-subscription: Layer7 (Broadcom) API Gateway
            license
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/caapim/layer7-operator
          support: Broadcom Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gateway is the Schema for the Gateway Custom Resource
            displayName: Gateway
            kind: Gateway
            name: gateways.security.brcmlabs.com
            version: v1
          - description: L7Api is the Schema for the l7apis API
            displayName: L7 Api
            kind: L7Api
            name: l7apis.security.brcmlabs.com
            version: v1alpha1
          - description: L7Portal is the Schema for the l7portals API
            displayName: L7 Portal
            kind: L7Portal
            name: l7portals.security.brcmlabs.com
            version: v1alpha1
          - description: L7StateStore is the Schema for the l7statestores API
            displayName: L7 State Store
            kind: L7StateStore
            name: l7statestores.security.brcmlabs.com
            version: v1alpha1
          - description: Repository is the Schema for the repositories API
            displayName: Repository
            kind: Repository
            name: repositories.security.brcmlabs.com
            version: v1
        description: |
          The [Layer7 Operator](https://github.com/CAAPIM/layer7-operator) covers all aspects of deploying, maintaining and upgrading Layer7 API Gateways in Kubernetes. The Layer7 Operator is exclusive to Kubernetes and utilizes the Container Gateway with specific emphasis on running in Ephemeral mode (without an external MySQL policy database).

          ## Getting Started
          This [Getting Started](https://github.com/CAAPIM/layer7-operator/wiki/Getting-Started) guide covers a simple introduction to the Layer7 Operator. You can find more documentation [here](https://github.com/CAAPIM/layer7-operator/wiki).
        displayName: Layer7 Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - layer7-operator
        links:
        - name: Layer7 Operator
          url: https://github.com/caapim/layer7-operator
        maintainers:
        - email: gary.vermeulen@broadcom.com
          name: Gary Vermeulen
        maturity: alpha
        provider:
          name: Broadcom
          url: https://www.broadcom.com/
        relatedImages:
        - docker.io/caapim/layer7-operator:v1.2.2
        - quay.io/community-operator-pipeline-prod/layer7-operator:1.2.2
        - docker.io/caapim/gateway:11.1.3
        - docker.io/caapim/graphman-static-init:1.0.4
        version: 1.2.2
      entries:
      - name: layer7-operator.v1.2.2
        version: 1.2.2
      - name: layer7-operator.v1.2.1
        version: 1.2.1
      - name: layer7-operator.v1.2.0
        version: 1.2.0
      name: preview
    defaultChannel: preview
    packageName: layer7-operator
    provider:
      name: Broadcom
      url: https://www.broadcom.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: ibm-block-csi-operator-community
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-block-csi-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "IBMBlockCSI",
                "metadata": {
                  "name": "ibm-block-csi"
                },
                "spec": {
                  "controller": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-controller",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "node": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-node",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "sidecars": [
                    {
                      "name": "csi-node-driver-registrar",
                      "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                      "tag": "v2.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-provisioner",
                      "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                      "tag": "v4.0.1",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-attacher",
                      "repository": "registry.k8s.io/sig-storage/csi-attacher",
                      "tag": "v4.9.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-snapshotter",
                      "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                      "tag": "v8.3.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-resizer",
                      "repository": "registry.k8s.io/sig-storage/csi-resizer",
                      "tag": "v1.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-addons-replicator",
                      "repository": "quay.io/ibmcsiblock/csi-block-volumereplication-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-volume-group",
                      "repository": "quay.io/ibmcsiblock/csi-volume-group-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "livenessprobe",
                      "repository": "registry.k8s.io/sig-storage/livenessprobe",
                      "tag": "v2.16.0",
                      "imagePullPolicy": "IfNotPresent"
                    }
                  ]
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefinition",
                "metadata": {
                  "name": "host-definition"
                },
                "spec": {
                  "hostDefinition": {
                    "nodeName": "node-name"
                  }
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefiner",
                "metadata": {
                  "name": "host-definer"
                },
                "spec": {
                  "hostDefiner": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-host-definer",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage,Cloud Provider
          certified: "true"
          containerImage: quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
          createdAt: "2024-08-27T11:00:00Z"
          description: Run IBM block storage CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.openshift.io/valid-subscription: ""
          repository: https://github.com/IBM/ibm-block-csi-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a block storage CSI driver
            displayName: IBM block storage CSI driver
            kind: IBMBlockCSI
            name: ibmblockcsis.csi.ibm.com
            version: v1
          - description: Represents a Host Definition for IBM block storage
            displayName: IBM block storage Host Definition
            kind: HostDefinition
            name: hostdefinitions.csi.ibm.com
            version: v1
          - description: Represents Host Definer for block storage CSI driver
            displayName: IBM block storage Host Definer
            kind: HostDefiner
            name: hostdefiners.csi.ibm.com
            version: v1
        description: |
          The Container Storage Interface (CSI) Driver for IBM block storage systems enables container orchestrators such as Kubernetes to manage the life cycle of persistent storage.

          This is the official operator to deploy and manage IBM block storage CSI driver.

          For compatibility, prerequisites, release notes, and other user information, see [IBM block storage CSI driver documentation](https://www.ibm.com/docs/en/stg-block-csi-driver).
        displayName: IBM block storage CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - BlockStorage
        - CSI
        links:
        - name: Source Code
          url: https://github.com/IBM/ibm-block-csi-operator
        maintainers:
        - email: csi.block1@il.ibm.com
          name: IBM Block CSI Team
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: IBM
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ibm-block-csi-operator-community@sha256:34f608627ff14d9e24f222306f3a481982a82ecaddfb855dbadcb140bb7283a5
        - quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
        version: 1.13.0
      entries:
      - name: ibm-block-csi-operator.v1.13.0
        version: 1.13.0
      name: stable
    - currentCSV: ibm-block-csi-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "IBMBlockCSI",
                "metadata": {
                  "name": "ibm-block-csi"
                },
                "spec": {
                  "controller": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-controller",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "node": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-node",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "sidecars": [
                    {
                      "name": "csi-node-driver-registrar",
                      "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                      "tag": "v2.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-provisioner",
                      "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                      "tag": "v4.0.1",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-attacher",
                      "repository": "registry.k8s.io/sig-storage/csi-attacher",
                      "tag": "v4.9.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-snapshotter",
                      "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                      "tag": "v8.3.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-resizer",
                      "repository": "registry.k8s.io/sig-storage/csi-resizer",
                      "tag": "v1.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-addons-replicator",
                      "repository": "quay.io/ibmcsiblock/csi-block-volumereplication-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-volume-group",
                      "repository": "quay.io/ibmcsiblock/csi-volume-group-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "livenessprobe",
                      "repository": "registry.k8s.io/sig-storage/livenessprobe",
                      "tag": "v2.16.0",
                      "imagePullPolicy": "IfNotPresent"
                    }
                  ]
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefinition",
                "metadata": {
                  "name": "host-definition"
                },
                "spec": {
                  "hostDefinition": {
                    "nodeName": "node-name"
                  }
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefiner",
                "metadata": {
                  "name": "host-definer"
                },
                "spec": {
                  "hostDefiner": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-host-definer",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage,Cloud Provider
          certified: "true"
          containerImage: quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
          createdAt: "2024-08-27T11:00:00Z"
          description: Run IBM block storage CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.openshift.io/valid-subscription: ""
          repository: https://github.com/IBM/ibm-block-csi-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a block storage CSI driver
            displayName: IBM block storage CSI driver
            kind: IBMBlockCSI
            name: ibmblockcsis.csi.ibm.com
            version: v1
          - description: Represents a Host Definition for IBM block storage
            displayName: IBM block storage Host Definition
            kind: HostDefinition
            name: hostdefinitions.csi.ibm.com
            version: v1
          - description: Represents Host Definer for block storage CSI driver
            displayName: IBM block storage Host Definer
            kind: HostDefiner
            name: hostdefiners.csi.ibm.com
            version: v1
        description: |
          The Container Storage Interface (CSI) Driver for IBM block storage systems enables container orchestrators such as Kubernetes to manage the life cycle of persistent storage.

          This is the official operator to deploy and manage IBM block storage CSI driver.

          For compatibility, prerequisites, release notes, and other user information, see [IBM block storage CSI driver documentation](https://www.ibm.com/docs/en/stg-block-csi-driver).
        displayName: IBM block storage CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - BlockStorage
        - CSI
        links:
        - name: Source Code
          url: https://github.com/IBM/ibm-block-csi-operator
        maintainers:
        - email: csi.block1@il.ibm.com
          name: IBM Block CSI Team
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: IBM
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ibm-block-csi-operator-community@sha256:34f608627ff14d9e24f222306f3a481982a82ecaddfb855dbadcb140bb7283a5
        - quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
        version: 1.13.0
      entries:
      - name: ibm-block-csi-operator.v1.13.0
        version: 1.13.0
      name: stable-v1.13
    - currentCSV: ibm-block-csi-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "IBMBlockCSI",
                "metadata": {
                  "name": "ibm-block-csi"
                },
                "spec": {
                  "controller": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-controller",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "node": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-node",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "sidecars": [
                    {
                      "name": "csi-node-driver-registrar",
                      "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                      "tag": "v2.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-provisioner",
                      "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                      "tag": "v4.0.1",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-attacher",
                      "repository": "registry.k8s.io/sig-storage/csi-attacher",
                      "tag": "v4.9.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-snapshotter",
                      "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                      "tag": "v8.3.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-resizer",
                      "repository": "registry.k8s.io/sig-storage/csi-resizer",
                      "tag": "v1.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-addons-replicator",
                      "repository": "quay.io/ibmcsiblock/csi-block-volumereplication-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-volume-group",
                      "repository": "quay.io/ibmcsiblock/csi-volume-group-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "livenessprobe",
                      "repository": "registry.k8s.io/sig-storage/livenessprobe",
                      "tag": "v2.16.0",
                      "imagePullPolicy": "IfNotPresent"
                    }
                  ]
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefinition",
                "metadata": {
                  "name": "host-definition"
                },
                "spec": {
                  "hostDefinition": {
                    "nodeName": "node-name"
                  }
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefiner",
                "metadata": {
                  "name": "host-definer"
                },
                "spec": {
                  "hostDefiner": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-host-definer",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage,Cloud Provider
          certified: "true"
          containerImage: quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
          createdAt: "2024-08-27T11:00:00Z"
          description: Run IBM block storage CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.openshift.io/valid-subscription: ""
          repository: https://github.com/IBM/ibm-block-csi-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a block storage CSI driver
            displayName: IBM block storage CSI driver
            kind: IBMBlockCSI
            name: ibmblockcsis.csi.ibm.com
            version: v1
          - description: Represents a Host Definition for IBM block storage
            displayName: IBM block storage Host Definition
            kind: HostDefinition
            name: hostdefinitions.csi.ibm.com
            version: v1
          - description: Represents Host Definer for block storage CSI driver
            displayName: IBM block storage Host Definer
            kind: HostDefiner
            name: hostdefiners.csi.ibm.com
            version: v1
        description: |
          The Container Storage Interface (CSI) Driver for IBM block storage systems enables container orchestrators such as Kubernetes to manage the life cycle of persistent storage.

          This is the official operator to deploy and manage IBM block storage CSI driver.

          For compatibility, prerequisites, release notes, and other user information, see [IBM block storage CSI driver documentation](https://www.ibm.com/docs/en/stg-block-csi-driver).
        displayName: IBM block storage CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - BlockStorage
        - CSI
        links:
        - name: Source Code
          url: https://github.com/IBM/ibm-block-csi-operator
        maintainers:
        - email: csi.block1@il.ibm.com
          name: IBM Block CSI Team
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: IBM
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ibm-block-csi-operator-community@sha256:34f608627ff14d9e24f222306f3a481982a82ecaddfb855dbadcb140bb7283a5
        - quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
        version: 1.13.0
      entries:
      - name: ibm-block-csi-operator.v1.13.0
        version: 1.13.0
      name: stable-v1.13.0
    defaultChannel: stable
    packageName: ibm-block-csi-operator-community
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-s3control-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-s3control-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/s3control-controller:1.2.0
          createdAt: "2025-11-29T03:56:06Z"
          description: AWS S3 Control controller is a service controller for managing
            S3 Control resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AccessPoint represents the state of an AWS s3control AccessPoint
              resource.
            displayName: AccessPoint
            kind: AccessPoint
            name: accesspoints.s3control.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon S3 Control resources in AWS from within your Kubernetes cluster.

          **About Amazon S3 Control**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon S3 Control
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - s3control
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon S3 Control Developer Resources
          url: https://aws.amazon.com/S3 Control/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: s3control maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/s3control-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-s3control-controller@sha256:9d6407d14686ee07e5c704e7fa78b09e4f493b2e62b186541fb5d0c22f98364f
        version: 1.2.0
      entries:
      - name: ack-s3control-controller.v1.2.0
        version: 1.2.0
      - name: ack-s3control-controller.v1.1.2
        version: 1.1.2
      - name: ack-s3control-controller.v1.1.1
        version: 1.1.1
      - name: ack-s3control-controller.v1.1.0
        version: 1.1.0
      - name: ack-s3control-controller.v1.0.11
        version: 1.0.11
      - name: ack-s3control-controller.v1.0.10
        version: 1.0.10
      name: alpha
    defaultChannel: alpha
    packageName: ack-s3control-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Intel Corporation
      provider-url: https://builders.intel.com/docs/networkbuilders/intel-vran-dedicated-accelerator-acc100-product-brief.pdf
    name: sriov-fec
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sriov-fec.v2.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecClusterConfig",
                "metadata": {
                  "name": "acc100SampleConfig",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "acceleratorSelector": {
                    "deviceID": "someDevice",
                    "driver": "someDriver",
                    "maxVirtualFunctions": 2,
                    "pciAddress": "somePciAddress",
                    "vendorID": "someVendor"
                  },
                  "drainSkip": false,
                  "nodeSelector": {
                    "expectedLabel1": "valueOfExpectedLabel1",
                    "expectedLabelN": "valueOfExpectedLabelN"
                  },
                  "physicalFunction": {
                    "bbDevConfig": {
                      "acc100": {
                        "downlink4G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 0
                        },
                        "downlink5G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 4
                        },
                        "maxQueueSize": 1024,
                        "numVfBundles": 16,
                        "pfMode": true,
                        "uplink4G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 0
                        },
                        "uplink5G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 4
                        }
                      }
                    },
                    "pfDriver": "pci-pf-stub",
                    "vfAmount": 2,
                    "vfDriver": "vfio-pci"
                  },
                  "priority": 100
                }
              },
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecClusterConfig",
                "metadata": {
                  "name": "n3000SampleConfig",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "acceleratorSelector": {
                    "deviceID": "someDevice",
                    "driver": "someDriver",
                    "maxVirtualFunctions": 2,
                    "pciAddress": "somePciAddress",
                    "vendorID": "someVendor"
                  },
                  "drainSkip": false,
                  "nodeSelector": {
                    "expectedLabel1": "valueOfExpectedLabel1",
                    "expectedLabelN": "valueOfExpectedLabelN"
                  },
                  "physicalFunction": {
                    "bbDevConfig": {
                      "n3000": {
                        "downlink": {
                          "bandwidth": 3,
                          "loadBalance": 128,
                          "queues": {
                            "vf0": 16,
                            "vf1": 16,
                            "vf2": 0,
                            "vf3": 0,
                            "vf4": 0,
                            "vf5": 0,
                            "vf6": 0,
                            "vf7": 0
                          }
                        },
                        "flrTimeout": 610,
                        "networkType": "FPGA_5GNR",
                        "pfMode": true,
                        "uplink": {
                          "bandwidth": 3,
                          "loadBalance": 128,
                          "queues": {
                            "vf0": 16,
                            "vf1": 16,
                            "vf2": 0,
                            "vf3": 0,
                            "vf4": 0,
                            "vf5": 0,
                            "vf6": 0,
                            "vf7": 0
                          }
                        }
                      }
                    },
                    "pfDriver": "pci-pf-stub",
                    "vfAmount": 2,
                    "vfDriver": "vfio-pci"
                  },
                  "priority": 100
                }
              },
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecNodeConfig",
                "metadata": {
                  "name": "acc100-worker",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "drainSkip": false,
                  "physicalFunctions": [
                    {
                      "bbDevConfig": {
                        "acc100": {
                          "downlink4G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 0
                          },
                          "downlink5G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 4
                          },
                          "maxQueueSize": 1024,
                          "numVfBundles": 16,
                          "pfMode": true,
                          "uplink4G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 0
                          },
                          "uplink5G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 4
                          }
                        }
                      },
                      "pci_addr": "somePciAddress",
                      "pf_driver": "pci-pf-stub",
                      "vf_amount": 2,
                      "vf_driver": "vfio-pci"
                    }
                  ]
                }
              },
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecNodeConfig",
                "metadata": {
                  "name": "n3000-worker",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "drainSkip": false,
                  "physicalFunctions": [
                    {
                      "bbDevConfig": {
                        "n3000": {
                          "downlink": {
                            "bandwidth": 3,
                            "loadBalance": 128,
                            "queues": {
                              "vf0": 16,
                              "vf1": 16,
                              "vf2": 0,
                              "vf3": 0,
                              "vf4": 0,
                              "vf5": 0,
                              "vf6": 0,
                              "vf7": 0
                            }
                          },
                          "flrTimeout": 610,
                          "networkType": "FPGA_5GNR",
                          "pfMode": true,
                          "uplink": {
                            "bandwidth": 3,
                            "loadBalance": 128,
                            "queues": {
                              "vf0": 16,
                              "vf1": 16,
                              "vf2": 0,
                              "vf3": 0,
                              "vf4": 0,
                              "vf5": 0,
                              "vf6": 0,
                              "vf7": 0
                            }
                          }
                        }
                      },
                      "pci_addr": "somePciAddress",
                      "pf_driver": "pci-pf-stub",
                      "vf_amount": 2,
                      "vf_driver": "vfio-pci"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/intel/sriov-fec-operator@sha256:adb6a4c2da6399c8ed40c906f790bce13bfcefae3326a047f6a50592b3f5e485
          createdAt: "2025-01-15"
          description: An operator for Intel Wireless FEC Accelerator to orchestrate
            and manage the resources/devices exposed by a range of Intel's vRAN FEC
            acceleration devices/hardware within the OpenShift cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/intel/sriov-fec-operator
          support: Intel Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SriovFecClusterConfig is the Schema for the sriovfecclusterconfigs
              API
            displayName: SriovFecClusterConfig
            kind: SriovFecClusterConfig
            name: sriovfecclusterconfigs.sriovfec.intel.com
            version: v2
          - description: SriovFecNodeConfig is the Schema for the sriovfecnodeconfigs
              API
            displayName: SriovFecNodeConfig
            kind: SriovFecNodeConfig
            name: sriovfecnodeconfigs.sriovfec.intel.com
            version: v2
          - description: SriovVrbClusterConfig is the Schema for the sriovvrbclusterconfigs
              API
            displayName: SriovVrbClusterConfig
            kind: SriovVrbClusterConfig
            name: sriovvrbclusterconfigs.sriovvrb.intel.com
            version: v1
          - description: SriovVrbNodeConfig is the Schema for the sriovvrbnodeconfigs
              API
            displayName: SriovVrbNodeConfig
            kind: SriovVrbNodeConfig
            name: sriovvrbnodeconfigs.sriovvrb.intel.com
            version: v1
        description: The Intel vRAN Boost family of accelerators ACC100/VRB1/VRB2,
          to offload and accelerate the computing-intensive process of forward error
          correction (FEC) and more for 4G/LTE and 5G technology, freeing up processing
          power. It allows the optimization of data plane performance to reduce total
          cost of ownership while maintaining a high degree of flexibility.  The Intel
          vRAN Boost accelerators ACC100/VRB1/VRB2 plays a key role in accelerating
          5G and network functions virtualization (NFV) adoption for ecosystem partners
          such as telecommunications equipment manufacturers (TEMs) virtual network
          functions (VNF) vendors, system integrators and telcos, to bring scalable
          and high-performance solutions to market. The Intel ACC100 includes a variant
          that is design to be Network Equipment Building System (NEBS)-friendly,
          and features a Root-of-Trust device that helps protect systems from FPGA
          host security exploits.
        displayName: SRIOV-FEC Operator for Intel vRAN Boost Accelerators
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ACC100
        - vRAN
        - ORAN
        links:
        - name: SRIOV-FEC source code
          url: https://github.com/intel/sriov-fec-operator
        maturity: alpha
        provider:
          name: Intel Corporation
          url: https://builders.intel.com/docs/networkbuilders/intel-vran-dedicated-accelerator-acc100-product-brief.pdf
        relatedImages:
        - registry.connect.redhat.com/intel/n3000-labeler@sha256:b417cfcedc998a35491784005cc7eee3d9c647b84eac5ca41cb459076870b8f6
        - registry.connect.redhat.com/intel/sriov-fec-daemon@sha256:5b0c60b67bcf5d7b2797deab0d5e3fa079577179f0acc6b0062533584ea0bc23
        - registry.connect.redhat.com/intel/sriov-fec-operator-bundle@sha256:c30849cbf451eb016786bc367e3716389b1d45676ad298c4de6a492c7bb00f4f
        - registry.connect.redhat.com/intel/sriov-fec-operator@sha256:adb6a4c2da6399c8ed40c906f790bce13bfcefae3326a047f6a50592b3f5e485
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1ed3b514bf9af6ac0d386e3739874d1d964e667d54e041c2d67edd769b0009fb
        - registry.redhat.io/openshift4/ose-sriov-network-device-plugin@sha256:d0fcb6e9135d9a19ea26851bcdb4ac72c04bd747706fc5123020460e9dbfc21b
        version: 2.11.1
      entries:
      - name: sriov-fec.v2.11.1
        version: 2.11.1
      - name: sriov-fec.v2.11.0
        version: 2.11.0
      - name: sriov-fec.v2.10.0
        version: 2.10.0
      - name: sriov-fec.v2.9.0
        version: 2.9.0
      - name: sriov-fec.v2.8.0
        version: 2.8.0
      - name: sriov-fec.v2.7.2
        version: 2.7.2
      - name: sriov-fec.v2.7.1
        version: 2.7.1
      name: stable
    defaultChannel: stable
    packageName: sriov-fec
    provider:
      name: Intel Corporation
      url: https://builders.intel.com/docs/networkbuilders/intel-vran-dedicated-accelerator-acc100-product-brief.pdf
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: node-maintenance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-maintenance-operator.v0.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodemaintenance.medik8s.io/v1beta1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "nodeName": "node02",
                  "reason": "Test node maintenance"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/node-maintenance-operator:v0.19.0
          createdAt: "2025-11-24 11:25:52"
          description: Node Maintenance Operator for cordoning and draining nodes.
          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.skipRange: '>=0.12.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-maintenance-operator
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.nodemaintenance.medik8s.io
            version: v1beta1
        description: |
          Node Maintenance Operator (NMO)

          This operator will keep nodes cordoned and drained while a matching NodeMaintenance (nm) custom resource exists.
          This is useful when investigating problems with a machine, or performing an operation on the underlying machine that might result in node failure.
        displayName: Node Maintenance Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - Node-maintenance
        - nmo
        links:
        - name: Node Maintenance Operator
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/node-maintenance-operator
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: beta
        minKubeVersion: 1.23.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/community-operator-pipeline-prod/node-maintenance-operator@sha256:8074aa66432f27565fefdd0e0354c6f1cc0727cbe5a51037a716e0f0c4c1f750
        - quay.io/medik8s/node-maintenance-operator:v0.19.0
        version: 0.19.0
      entries:
      - name: node-maintenance-operator.v0.19.0
        version: 0.19.0
      - name: node-maintenance-operator.v0.18.0
        version: 0.18.0
      - name: node-maintenance-operator.v0.17.0
        version: 0.17.0
      - name: node-maintenance-operator.v0.16.1
        version: 0.16.1
      - name: node-maintenance-operator.v0.16.0
        version: 0.16.0
      - name: node-maintenance-operator.v0.15.0
        version: 0.15.0
      - name: node-maintenance-operator.v0.14.0
        version: 0.14.0
      - name: node-maintenance-operator.v0.13.0
        version: 0.13.0
      - name: node-maintenance-operator.v0.12.1
        version: 0.12.1
      name: stable
    defaultChannel: stable
    packageName: node-maintenance-operator
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Apache Software Foundation
      provider-url: ""
    name: camel-karavan-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: camel-karavan-operator.v3.20.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Karavan",
                "metadata": {
                  "labels": {
                    "app": "karavan"
                  },
                  "name": "karavan"
                },
                "spec": {
                  "instances": 1,
                  "auth": "public",
                  "environment": "dev",
                  "runtimes": "quarkus,spring-boot",
                  "gitPullInterval": "10s"
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          containerImage: ghcr.io/apache/camel-karavan-operator:3.20.1
          repository: https://github.com/apache/camel-karavan
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Karavan
            name: karavans.camel.apache.org
            version: v1
        description: |
          Apache Camel Karavan
          ====================
          Karavan is an Integration Toolkit for Apache Camel, which makes integration easy and fun through the visualization of pipelines,
          integration with runtimes and package, image build and deploy to kubernetes out-of-the-box.

          ## Installation

          1. Install Apache Camel Karavan Operator
          2. Install Tekton operator
          3. Create namespace, ex: `karavan`
          4. Create `Secret` in the namespace, ex:
          ```
          kind: Secret
          apiVersion: v1
          metadata:
            name: karavan
            namespace: karavan
          type: Opaque
          stringData:
            master-password: karavan
            oidc-secret: secret
            oidc-server-url: https://hostname/auth/realms/karavan
            oidc-frontend-url: https://hostname/auth
            git-repository: https://github.com/repository/projects.git
            git-password: password
            git-username: username
            git-branch: main
            image-registry: image-registry.openshift-image-registry.svc:5000
          ```
          5. Create `Karavan` instance in the namespace, ex:
          ```
          apiVersion: camel.apache.org/v1
          kind: Karavan
          metadata:
            name: karavan
            namespace: karavan
          spec:
            instances: 1
            auth: public
            environment: dev
            runtimes: quarkus,spring-boot
            gitPullInterval: 10s
          ```
        displayName: Camel Karavan Operator
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - camel
        - karavan
        - integration
        - microservices
        - low-code
        links:
        - name: Apache Camel Karavan source code repository
          url: https://github.com/apache/camel-karavan
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - ghcr.io/apache/camel-karavan-operator:3.20.1
        - quay.io/openshift-community-operators/camel-karavan-operator@sha256:6dc78ecdf6e1936872626c02d41986d6553c1500002d85692c97e86fa77c129d
        version: 3.20.1
      entries:
      - name: camel-karavan-operator.v3.20.1
        version: 3.20.1
      - name: camel-karavan-operator.v3.20.0
        version: 3.20.0
      - name: camel-karavan-operator.v3.18.5
        version: 3.18.5
      name: alpha
    defaultChannel: alpha
    packageName: camel-karavan-operator
    provider:
      name: The Apache Software Foundation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-efs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-efs-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "efs.services.k8s.aws/v1alpha1",
                "kind": "AccessPoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "efs.services.k8s.aws/v1alpha1",
                "kind": "FileSystem",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "efs.services.k8s.aws/v1alpha1",
                "kind": "MountTarget",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/efs-controller:1.2.0
          createdAt: "2025-11-29T03:26:52Z"
          description: AWS EFS controller is a service controller for managing EFS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AccessPoint represents the state of an AWS efs AccessPoint
              resource.
            displayName: AccessPoint
            kind: AccessPoint
            name: accesspoints.efs.services.k8s.aws
            version: v1alpha1
          - description: FileSystem represents the state of an AWS efs FileSystem
              resource.
            displayName: FileSystem
            kind: FileSystem
            name: filesystems.efs.services.k8s.aws
            version: v1alpha1
          - description: MountTarget represents the state of an AWS efs MountTarget
              resource.
            displayName: MountTarget
            kind: MountTarget
            name: mounttargets.efs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EFS resources in AWS from within your Kubernetes cluster.

          **About Amazon Elastic File System (Amazon EFS)**

          Amazon Elastic File System (Amazon EFS) provides serverless, fully elastic file storage so that you can share file data without provisioning or managing storage capacity and performance. Amazon EFS is built to scale on demand to petabytes without disrupting applications, growing and shrinking automatically as you add and remove files. Because Amazon EFS has a simple web services interface, you can create and configure file systems quickly and easily. The service manages all the file storage infrastructure for you, meaning that you can avoid the complexity of deploying, patching, and maintaining complex file system configurations.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Elastic File System (Amazon
          EFS)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - efs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EFS Developer Resources
          url: https://aws.amazon.com/efs/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: efs maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/efs-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-efs-controller@sha256:6b4bdb765f656e6fef9d1d27889dd0d6ec2a102190a50590e6c4bca65e928808
        version: 1.2.0
      entries:
      - name: ack-efs-controller.v1.2.0
        version: 1.2.0
      - name: ack-efs-controller.v1.1.2
        version: 1.1.2
      - name: ack-efs-controller.v1.1.1
        version: 1.1.1
      - name: ack-efs-controller.v1.1.0
        version: 1.1.0
      - name: ack-efs-controller.v1.0.19
        version: 1.0.19
      - name: ack-efs-controller.v1.0.18
        version: 1.0.18
      - name: ack-efs-controller.v1.0.17
        version: 1.0.17
      - name: ack-efs-controller.v1.0.16
        version: 1.0.16
      - name: ack-efs-controller.v1.0.15
        version: 1.0.15
      - name: ack-efs-controller.v1.0.14
        version: 1.0.14
      - name: ack-efs-controller.v1.0.13
        version: 1.0.13
      - name: ack-efs-controller.v1.0.12
        version: 1.0.12
      - name: ack-efs-controller.v1.0.11
        version: 1.0.11
      - name: ack-efs-controller.v1.0.10
        version: 1.0.10
      - name: ack-efs-controller.v1.0.8
        version: 1.0.8
      - name: ack-efs-controller.v1.0.6
        version: 1.0.6
      - name: ack-efs-controller.v1.0.5
        version: 1.0.5
      - name: ack-efs-controller.v1.0.3
        version: 1.0.3
      - name: ack-efs-controller.v1.0.2
        version: 1.0.2
      - name: ack-efs-controller.v1.0.0
        version: 1.0.0
      - name: ack-efs-controller.v0.0.9
        version: 0.0.9
      - name: ack-efs-controller.v0.0.8
        version: 0.0.8
      - name: ack-efs-controller.v0.0.7
        version: 0.0.7
      - name: ack-efs-controller.v0.0.6
        version: 0.0.6
      - name: ack-efs-controller.v0.0.5
        version: 0.0.5
      - name: ack-efs-controller.v0.0.4
        version: 0.0.4
      name: alpha
    defaultChannel: alpha
    packageName: ack-efs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: The cert-manager maintainers
      provider-url: https://cert-manager.io/
    name: cert-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cert-manager.v1.16.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "example-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "example-clusterissuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "example-certificate"
                },
                "spec": {
                  "dnsNames": [
                    "example.com"
                  ],
                  "issuerRef": {
                    "name": "example-issuer"
                  },
                  "secretName": "example-certificate-tls"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "name": "example-certificaterequest"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "name": "example-order"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "example-challenge"
                },
                "spec": {}
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: quay.io/jetstack/cert-manager-controller:v1.16.5
          createdAt: 2025-05-02T09:11:31
          olm.skipRange: '>=1.16.0 <1.16.5'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/internal-objects: |-
            [
              "challenges.acme.cert-manager.io",
              "orders.acme.cert-manager.io"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/cert-manager/cert-manager
          support: The cert-manager maintainers
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: (Internal) Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: Order is a type to represent an Order with an ACME server
            displayName: (Internal) Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          cert-manager is a Kubernetes add-on to automate the management and issuance of TLS certificates from various issuing sources.
          It will ensure certificates are valid and up to date periodically, and attempt to renew certificates at an appropriate time before expiry.

          cert-manager has the following [built in issuers][]:

          * ACME: sign certificates using Let's Encrypt (or any other [ACME][] compliant signer).
          * Vault: sign certificates using HashiCorp Vault.
          * Venafi: sign certificates using Venafi Cloud or Venafi Trust Protection Platform.
          * SelfSigned: the private key of the certificate will be used to sign the certificate.
          * CA: a private key stored as a Kubernetes Secret will be used to sign the certificate.

          [built in issuers]: https://cert-manager.io/docs/configuration/#supported-issuer-types
          [ACME]: https://datatracker.ietf.org/doc/html/rfc8555

          cert-manager also supports [external issuers][],
          which are out-of-tree components that provide support for other certificate authorities, such as:
          [Google Cloud Certificate Authority](https://github.com/jetstack/google-cas-issuer),
          [AWS Private Certificate Authority](https://github.com/cert-manager/aws-privateca-issuer), and
          [Cloudflare Origin CA](https://github.com/cloudflare/origin-ca-issuer)

          [external issuers]: https://cert-manager.io/docs/configuration/external/

          In order to configure cert-manager to issue certificates, you must first create an Issuer or ClusterIssuer.
          These resources represent a particular signing authority and tell cert-manager how to handle your certificate requests.
          The [Issuer Documentation][] has more detail.

          [configure cert-manager]: https://cert-manager.io/docs/configuration/
          [Issuer Documentation]: https://cert-manager.io/docs/concepts/issuer/

          Once an Issuer has been configured, you can create a Certificate resource,
          which is a definition of a certificate request that is to be honored by an issuer
          and which is to be kept up-to-date.
          This is the usual way that you will interact with cert-manager to request signed certificates.
          The [Certificate Documentation][] has more detail.

          [Certificate Documentation]: https://cert-manager.io/docs/usage/certificate/
        displayName: cert-manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TLS
        - secrets
        - security
        - certificates
        links:
        - name: Documentation
          url: https://cert-manager.io/
        - name: Release Notes
          url: https://cert-manager.io/docs/release-notes
        maintainers:
        - email: cert-manager-maintainers@googlegroups.com
          name: The cert-manager maintainers
        maturity: stable
        minKubeVersion: 1.19.0-0
        provider:
          name: The cert-manager maintainers
          url: https://cert-manager.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cert-manager@sha256:d8037cd7653b257737cec92308042cf71d559c6c2886d07b1879b5e432eeebcd
        - quay.io/jetstack/cert-manager-cainjector:v1.16.5
        - quay.io/jetstack/cert-manager-controller:v1.16.5
        - quay.io/jetstack/cert-manager-webhook:v1.16.5
        version: 1.16.5
      entries:
      - name: cert-manager.v1.16.5
        version: 1.16.5
      - name: cert-manager.v1.16.1
        version: 1.16.1
      - name: cert-manager.v1.16.0-beta.0
        version: 1.16.0-beta.0
      - name: cert-manager.v1.15.2
        version: 1.15.2
      - name: cert-manager.v1.15.0
        version: 1.15.0
      - name: cert-manager.v1.14.2
        version: 1.14.2
      - name: cert-manager.v1.14.2-rc1
        version: 1.14.2-rc1
      - name: cert-manager.v1.14.1-rc1
        version: 1.14.1-rc1
      - name: cert-manager.v1.13.3
        version: 1.13.3
      - name: cert-manager.v1.13.3-rc1
        version: 1.13.3-rc1
      - name: cert-manager.v1.13.1
        version: 1.13.1
      - name: cert-manager.v1.13.1-rc1
        version: 1.13.1-rc1
      - name: cert-manager.v1.12.2
        version: 1.12.2
      - name: cert-manager.v1.12.2-rc1
        version: 1.12.2-rc1
      - name: cert-manager.v1.11.4
        version: 1.11.4
      - name: cert-manager.v1.11.4-rc1
        version: 1.11.4-rc1
      - name: cert-manager.v1.11.3-rc1
        version: 1.11.3-rc1
      - name: cert-manager.v1.11.0
        version: 1.11.0
      - name: cert-manager.v1.11.0-rc1
        version: 1.11.0-rc1
      - name: cert-manager.v1.10.2
        version: 1.10.2
      - name: cert-manager.v1.10.2-rc1
        version: 1.10.2-rc1
      - name: cert-manager.v1.10.1
        version: 1.10.1
      - name: cert-manager.v1.10.1-rc1
        version: 1.10.1-rc1
      - name: cert-manager.v1.10.0
        version: 1.10.0
      - name: cert-manager.v1.10.0-rc1
        version: 1.10.0-rc1
      - name: cert-manager.v1.9.1
        version: 1.9.1
      - name: cert-manager.v1.9.1-rc1
        version: 1.9.1-rc1
      - name: cert-manager.v1.8.2
        version: 1.8.2
      - name: cert-manager.v1.8.2-rc1
        version: 1.8.2-rc1
      - name: cert-manager.v1.8.0
        version: 1.8.0
      - name: cert-manager.v1.8.0-rc1
        version: 1.8.0-rc1
      - name: cert-manager.v1.7.2
        version: 1.7.2
      - name: cert-manager.v1.7.1
        version: 1.7.1
      - name: cert-manager.v1.7.1-rc1
        version: 1.7.1-rc1
      - name: cert-manager.v1.6.2
        version: 1.6.2
      - name: cert-manager.v1.6.2-rc1
        version: 1.6.2-rc1
      name: candidate
    - currentCSV: cert-manager.v1.16.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "example-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "example-clusterissuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "example-certificate"
                },
                "spec": {
                  "dnsNames": [
                    "example.com"
                  ],
                  "issuerRef": {
                    "name": "example-issuer"
                  },
                  "secretName": "example-certificate-tls"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "name": "example-certificaterequest"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "name": "example-order"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "example-challenge"
                },
                "spec": {}
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: quay.io/jetstack/cert-manager-controller:v1.16.5
          createdAt: 2025-05-02T09:11:31
          olm.skipRange: '>=1.16.0 <1.16.5'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/internal-objects: |-
            [
              "challenges.acme.cert-manager.io",
              "orders.acme.cert-manager.io"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/cert-manager/cert-manager
          support: The cert-manager maintainers
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: (Internal) Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: Order is a type to represent an Order with an ACME server
            displayName: (Internal) Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          cert-manager is a Kubernetes add-on to automate the management and issuance of TLS certificates from various issuing sources.
          It will ensure certificates are valid and up to date periodically, and attempt to renew certificates at an appropriate time before expiry.

          cert-manager has the following [built in issuers][]:

          * ACME: sign certificates using Let's Encrypt (or any other [ACME][] compliant signer).
          * Vault: sign certificates using HashiCorp Vault.
          * Venafi: sign certificates using Venafi Cloud or Venafi Trust Protection Platform.
          * SelfSigned: the private key of the certificate will be used to sign the certificate.
          * CA: a private key stored as a Kubernetes Secret will be used to sign the certificate.

          [built in issuers]: https://cert-manager.io/docs/configuration/#supported-issuer-types
          [ACME]: https://datatracker.ietf.org/doc/html/rfc8555

          cert-manager also supports [external issuers][],
          which are out-of-tree components that provide support for other certificate authorities, such as:
          [Google Cloud Certificate Authority](https://github.com/jetstack/google-cas-issuer),
          [AWS Private Certificate Authority](https://github.com/cert-manager/aws-privateca-issuer), and
          [Cloudflare Origin CA](https://github.com/cloudflare/origin-ca-issuer)

          [external issuers]: https://cert-manager.io/docs/configuration/external/

          In order to configure cert-manager to issue certificates, you must first create an Issuer or ClusterIssuer.
          These resources represent a particular signing authority and tell cert-manager how to handle your certificate requests.
          The [Issuer Documentation][] has more detail.

          [configure cert-manager]: https://cert-manager.io/docs/configuration/
          [Issuer Documentation]: https://cert-manager.io/docs/concepts/issuer/

          Once an Issuer has been configured, you can create a Certificate resource,
          which is a definition of a certificate request that is to be honored by an issuer
          and which is to be kept up-to-date.
          This is the usual way that you will interact with cert-manager to request signed certificates.
          The [Certificate Documentation][] has more detail.

          [Certificate Documentation]: https://cert-manager.io/docs/usage/certificate/
        displayName: cert-manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TLS
        - secrets
        - security
        - certificates
        links:
        - name: Documentation
          url: https://cert-manager.io/
        - name: Release Notes
          url: https://cert-manager.io/docs/release-notes
        maintainers:
        - email: cert-manager-maintainers@googlegroups.com
          name: The cert-manager maintainers
        maturity: stable
        minKubeVersion: 1.19.0-0
        provider:
          name: The cert-manager maintainers
          url: https://cert-manager.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cert-manager@sha256:d8037cd7653b257737cec92308042cf71d559c6c2886d07b1879b5e432eeebcd
        - quay.io/jetstack/cert-manager-cainjector:v1.16.5
        - quay.io/jetstack/cert-manager-controller:v1.16.5
        - quay.io/jetstack/cert-manager-webhook:v1.16.5
        version: 1.16.5
      entries:
      - name: cert-manager.v1.16.5
        version: 1.16.5
      - name: cert-manager.v1.16.1
        version: 1.16.1
      - name: cert-manager.v1.15.2
        version: 1.15.2
      - name: cert-manager.v1.15.0
        version: 1.15.0
      - name: cert-manager.v1.14.2
        version: 1.14.2
      - name: cert-manager.v1.13.3
        version: 1.13.3
      - name: cert-manager.v1.13.1
        version: 1.13.1
      - name: cert-manager.v1.13.1-rc1
        version: 1.13.1-rc1
      - name: cert-manager.v1.12.2
        version: 1.12.2
      - name: cert-manager.v1.11.4
        version: 1.11.4
      - name: cert-manager.v1.11.0
        version: 1.11.0
      - name: cert-manager.v1.10.2
        version: 1.10.2
      - name: cert-manager.v1.10.1
        version: 1.10.1
      - name: cert-manager.v1.10.0
        version: 1.10.0
      - name: cert-manager.v1.9.1
        version: 1.9.1
      - name: cert-manager.v1.8.2
        version: 1.8.2
      - name: cert-manager.v1.8.0
        version: 1.8.0
      - name: cert-manager.v1.7.2
        version: 1.7.2
      - name: cert-manager.v1.7.1
        version: 1.7.1
      - name: cert-manager.v1.6.2
        version: 1.6.2
      - name: cert-manager.v1.6.1
        version: 1.6.1
      - name: cert-manager.v1.6.0
        version: 1.6.0
      - name: cert-manager.v1.5.4
        version: 1.5.4
      - name: cert-manager.v1.5.3
        version: 1.5.3
      - name: cert-manager.v1.4.4
        version: 1.4.4
      - name: cert-manager.v1.4.3
        version: 1.4.3
      - name: cert-manager.v1.4.2
        version: 1.4.2
      - name: cert-manager.v1.4.1
        version: 1.4.1
      - name: cert-manager.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: cert-manager
    provider:
      name: The cert-manager maintainers
      url: https://cert-manager.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: project-quay
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: quay-operator.v3.10.0-nightly.20231014
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.10.0-nightly.20231014
          createdAt: 2023-10-14 06:26 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.10.0-nightly.20231014'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.10.0-nightly.20231014
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:add5d14653f57ac1e3254c2d1c70fc9232959f76ee6286fe5cb572696a5a4fd3
        - quay.io/projectquay/quay-operator:3.10.0-nightly.20231014
        version: 3.10.0-nightly.20231014
      entries:
      - name: quay-operator.v3.10.0-nightly.20231014
        version: 3.10.0-nightly.20231014
      - name: quay-operator.v3.10.0-nightly.20231013
        version: 3.10.0-nightly.20231013
      - name: quay-operator.v3.10.0-nightly.20231012
        version: 3.10.0-nightly.20231012
      - name: quay-operator.v3.10.0-nightly.20231011
        version: 3.10.0-nightly.20231011
      - name: quay-operator.v3.10.0-nightly.20231010
        version: 3.10.0-nightly.20231010
      - name: quay-operator.v3.10.0-nightly.20231009
        version: 3.10.0-nightly.20231009
      - name: quay-operator.v3.10.0-nightly.20231008
        version: 3.10.0-nightly.20231008
      - name: quay-operator.v3.10.0-nightly.20231007
        version: 3.10.0-nightly.20231007
      - name: quay-operator.v3.10.0-nightly.20231006
        version: 3.10.0-nightly.20231006
      - name: quay-operator.v3.10.0-nightly.20231005
        version: 3.10.0-nightly.20231005
      - name: quay-operator.v3.10.0-nightly.20231002
        version: 3.10.0-nightly.20231002
      - name: quay-operator.v3.10.0-nightly.20230930
        version: 3.10.0-nightly.20230930
      - name: quay-operator.v3.10.0-nightly.20230929
        version: 3.10.0-nightly.20230929
      - name: quay-operator.v3.10.0-nightly.20230928
        version: 3.10.0-nightly.20230928
      - name: quay-operator.v3.10.0-nightly.20230926
        version: 3.10.0-nightly.20230926
      - name: quay-operator.v3.10.0-nightly.20230925
        version: 3.10.0-nightly.20230925
      - name: quay-operator.v3.10.0-nightly.20230923
        version: 3.10.0-nightly.20230923
      - name: quay-operator.v3.10.0-nightly.20230922
        version: 3.10.0-nightly.20230922
      - name: quay-operator.v3.10.0-nightly.20230921
        version: 3.10.0-nightly.20230921
      - name: quay-operator.v3.10.0-nightly.20230920
        version: 3.10.0-nightly.20230920
      - name: quay-operator.v3.10.0-nightly.20230919
        version: 3.10.0-nightly.20230919
      - name: quay-operator.v3.10.0-nightly.20230918
        version: 3.10.0-nightly.20230918
      - name: quay-operator.v3.10.0-nightly.20230917
        version: 3.10.0-nightly.20230917
      - name: quay-operator.v3.10.0-nightly.20230916
        version: 3.10.0-nightly.20230916
      - name: quay-operator.v3.10.0-nightly.20230915
        version: 3.10.0-nightly.20230915
      - name: quay-operator.v3.10.0-nightly.20230914
        version: 3.10.0-nightly.20230914
      - name: quay-operator.v3.10.0-nightly.20230913
        version: 3.10.0-nightly.20230913
      name: candidate-3.10
    - currentCSV: quay-operator.v3.9.0-nightly.20230812
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.9.0-nightly.20230812
          createdAt: 2023-08-12 06:06 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.9.0-nightly.20230812'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.9.0-nightly.20230812
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:7fc4d97b5ee63085672fc9a562ebdad3d4c00d1b555e06679d1dd9ac945f1bb9
        - quay.io/projectquay/quay-operator:3.9.0-nightly.20230812
        version: 3.9.0-nightly.20230812
      entries:
      - name: quay-operator.v3.9.0-nightly.20230812
        version: 3.9.0-nightly.20230812
      - name: quay-operator.v3.9.0-nightly.20230724
        version: 3.9.0-nightly.20230724
      - name: quay-operator.v3.9.0-nightly.20230723
        version: 3.9.0-nightly.20230723
      - name: quay-operator.v3.9.0-nightly.20230722
        version: 3.9.0-nightly.20230722
      - name: quay-operator.v3.9.0-nightly.20230721
        version: 3.9.0-nightly.20230721
      - name: quay-operator.v3.9.0-nightly.20230720
        version: 3.9.0-nightly.20230720
      - name: quay-operator.v3.9.0-nightly.20230717
        version: 3.9.0-nightly.20230717
      - name: quay-operator.v3.9.0-nightly.20230716
        version: 3.9.0-nightly.20230716
      - name: quay-operator.v3.9.0-nightly.20230715
        version: 3.9.0-nightly.20230715
      - name: quay-operator.v3.9.0-nightly.20230714
        version: 3.9.0-nightly.20230714
      - name: quay-operator.v3.9.0-nightly.20230712
        version: 3.9.0-nightly.20230712
      - name: quay-operator.v3.9.0-nightly.20230711
        version: 3.9.0-nightly.20230711
      name: candidate-3.9
    - currentCSV: quay-operator.v3.7.0-rc.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.7.0-rc.4
          createdAt: 2022-05-17 14:05 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.3.x <3.7.0-rc.4'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.7.0-rc.4
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:05e12cc4caaebb7f185f651f8ca876c442c02d79794e561b743beba0d189fa04
        - quay.io/projectquay/quay-operator:3.7.0-rc.4
        version: 3.7.0-rc.4
      entries:
      - name: quay-operator.v3.7.0-rc.4
        version: 3.7.0-rc.4
      - name: quay-operator.v3.7.0-rc.3
        version: 3.7.0-rc.3
      - name: quay-operator.v3.7.0-rc.2
        version: 3.7.0-rc.2
      - name: quay-operator.v3.7.0-rc.1
        version: 3.7.0-rc.1
      name: preview-3.7
    - currentCSV: quay-operator.v3.8.0-rc.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.8.0-rc.7
          createdAt: 2022-11-29 15:11 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.8.0-rc.7'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.8.0-rc.7
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.8.0-rc.7
        - quay.io/openshift-community-operators/project-quay@sha256:84796005b6e71efa5d783c55b1f72bcc3762944bf32740cb75498bf8b908bffb
        version: 3.8.0-rc.7
      entries:
      - name: quay-operator.v3.8.0-rc.7
        version: 3.8.0-rc.7
      - name: quay-operator.v3.8.0-rc.6
        version: 3.8.0-rc.6
      - name: quay-operator.v3.8.0-rc.5
        version: 3.8.0-rc.5
      - name: quay-operator.v3.8.0-rc.4
        version: 3.8.0-rc.4
      - name: quay-operator.v3.8.0-rc.3
        version: 3.8.0-rc.3
      - name: quay-operator.v3.8.0-rc.2
        version: 3.8.0-rc.2
      - name: quay-operator.v3.8.0-rc.1
        version: 3.8.0-rc.1
      name: preview-3.8
    - currentCSV: quay-operator.v3.10.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.10.17
          createdAt: "2025-12-16T16:07:34Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.10.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.10.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:df1ae4cc8aa9e3c53b7e0b223aab2a9eda1130372348721444f507c22de51e66
        - quay.io/projectquay/quay-operator:3.10.17
        version: 3.10.17
      entries:
      - name: quay-operator.v3.10.17
        version: 3.10.17
      - name: quay-operator.v3.10.16
        version: 3.10.16
      - name: quay-operator.v3.10.15
        version: 3.10.15
      - name: quay-operator.v3.10.14
        version: 3.10.14
      - name: quay-operator.v3.10.13
        version: 3.10.13
      - name: quay-operator.v3.10.12
        version: 3.10.12
      - name: quay-operator.v3.10.11
        version: 3.10.11
      - name: quay-operator.v3.10.10
        version: 3.10.10
      - name: quay-operator.v3.10.9
        version: 3.10.9
      - name: quay-operator.v3.10.8
        version: 3.10.8
      - name: quay-operator.v3.10.7
        version: 3.10.7
      - name: quay-operator.v3.10.6
        version: 3.10.6
      - name: quay-operator.v3.10.5
        version: 3.10.5
      - name: quay-operator.v3.10.4
        version: 3.10.4
      - name: quay-operator.v3.10.3
        version: 3.10.3
      - name: quay-operator.v3.10.2
        version: 3.10.2
      - name: quay-operator.v3.10.1
        version: 3.10.1
      - name: quay-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: quay-operator.v3.11.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.11.13
          createdAt: "2025-09-02T06:02:15Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.11.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.11.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:9d505bf561650eb9785811ba50c920480d85679eac6a611a1c5794544e175934
        - quay.io/projectquay/quay-operator:3.11.13
        version: 3.11.13
      entries:
      - name: quay-operator.v3.11.13
        version: 3.11.13
      - name: quay-operator.v3.11.12
        version: 3.11.12
      - name: quay-operator.v3.11.11
        version: 3.11.11
      - name: quay-operator.v3.11.10
        version: 3.11.10
      - name: quay-operator.v3.11.9
        version: 3.11.9
      - name: quay-operator.v3.11.8
        version: 3.11.8
      - name: quay-operator.v3.11.7
        version: 3.11.7
      - name: quay-operator.v3.11.6
        version: 3.11.6
      - name: quay-operator.v3.11.5
        version: 3.11.5
      - name: quay-operator.v3.11.4
        version: 3.11.4
      - name: quay-operator.v3.11.3
        version: 3.11.3
      - name: quay-operator.v3.11.2
        version: 3.11.2
      - name: quay-operator.v3.11.1
        version: 3.11.1
      - name: quay-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: quay-operator.v3.12.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.12.13
          createdAt: "2025-12-17T02:20:28Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.12.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.12.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.12.13
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:a2d7545e0585785e90f3d5d1b7e2f6f2344b2e12c99014495f99fbc284c20baf
        version: 3.12.13
      entries:
      - name: quay-operator.v3.12.13
        version: 3.12.13
      - name: quay-operator.v3.12.12
        version: 3.12.12
      - name: quay-operator.v3.12.11
        version: 3.12.11
      - name: quay-operator.v3.12.10
        version: 3.12.10
      - name: quay-operator.v3.12.9
        version: 3.12.9
      - name: quay-operator.v3.12.8
        version: 3.12.8
      - name: quay-operator.v3.12.7
        version: 3.12.7
      - name: quay-operator.v3.12.6
        version: 3.12.6
      - name: quay-operator.v3.12.5
        version: 3.12.5
      - name: quay-operator.v3.12.4
        version: 3.12.4
      - name: quay-operator.v3.12.3
        version: 3.12.3
      - name: quay-operator.v3.12.2
        version: 3.12.2
      - name: quay-operator.v3.12.1
        version: 3.12.1
      - name: quay-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: quay-operator.v3.13.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.13.10
          createdAt: "2025-12-17T02:24:00Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.13.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.13.10
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.13.10
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:f3ffc40ee13bc38ccbe8b7cdeed93c6d9eee4b09ac6db237764c98e6abb4f99f
        version: 3.13.10
      entries:
      - name: quay-operator.v3.13.10
        version: 3.13.10
      - name: quay-operator.v3.13.9
        version: 3.13.9
      - name: quay-operator.v3.13.8
        version: 3.13.8
      - name: quay-operator.v3.13.7
        version: 3.13.7
      - name: quay-operator.v3.13.6
        version: 3.13.6
      - name: quay-operator.v3.13.5
        version: 3.13.5
      - name: quay-operator.v3.13.4
        version: 3.13.4
      - name: quay-operator.v3.13.3
        version: 3.13.3
      - name: quay-operator.v3.13.2
        version: 3.13.2
      - name: quay-operator.v3.13.1
        version: 3.13.1
      - name: quay-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: quay-operator.v3.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.14.5
          createdAt: "2025-09-22T14:19:49Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.14.5'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.14.5
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:023b9cc1e4ec2542b8d68b636b21a2e8c4eb143424581c62d16598fddb47da6a
        - quay.io/projectquay/quay-operator:3.14.5
        version: 3.14.5
      entries:
      - name: quay-operator.v3.14.5
        version: 3.14.5
      - name: quay-operator.v3.14.4
        version: 3.14.4
      - name: quay-operator.v3.14.3
        version: 3.14.3
      - name: quay-operator.v3.14.2
        version: 3.14.2
      - name: quay-operator.v3.14.1
        version: 3.14.1
      - name: quay-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: quay-operator.v3.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.15.2
          createdAt: "2025-09-22T13:44:32Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.15.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.15.2
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.15.2
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:3843fd48c57be102576db93e8483a30f8efe8cd46b5e09c704ac0bc5f18553a3
        version: 3.15.2
      entries:
      - name: quay-operator.v3.15.2
        version: 3.15.2
      - name: quay-operator.v3.15.1
        version: 3.15.1
      - name: quay-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: quay-operator.v3.6.2
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"quay.redhat.com/v1\",\n    \"kind\":
            \"QuayRegistry\",\n    \"metadata\": {\n      \"name\": \"example-registry\"\n
            \   },\n    \"spec\": {\n      \"components\": [\n        {\"kind\": \"clair\",
            \"managed\": true},\n        {\"kind\": \"postgres\", \"managed\": true},\n
            \       {\"kind\": \"objectstorage\", \"managed\": true},\n        {\"kind\":
            \"redis\", \"managed\": true},\n        {\"kind\": \"horizontalpodautoscaler\",
            \"managed\": true},\n        {\"kind\": \"route\", \"managed\": true},\n
            \       {\"kind\": \"mirror\", \"managed\": true},\n        {\"kind\":
            \"monitoring\", \"managed\": true},\n        {\"kind\": \"tls\", \"managed\":
            true}\n      ]\n    }\n  }, \n  {\n    \"apiVersion\": \"redhatcop.redhat.io/v1alpha1\",\n
            \   \"kind\": \"QuayEcosystem\",\n    \"metadata\": {\n      \"name\":
            \"example-quayecosystem\"\n    },\n    \"spec\": {}\n  }\n]"
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:v3.6.2
          createdAt: 2021-04-23 10:04 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.5.x <3.6.2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: v3.6.2
          repository: https://github.com/quay/quay-operator
          support: Quay Team
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Project Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        - quay
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:v3.6.2
        - quay.io/openshift-community-operators/project-quay@sha256:55bb4133abc945ce7b75e6c01c6beaf63c19c129fc8fbfb48f1b53b8e28aae97
        version: 3.6.2
      entries:
      - name: quay-operator.v3.6.2
        version: 3.6.2
      name: stable-3.6
    - currentCSV: quay-operator.v3.7.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.7.11
          createdAt: 2023-02-22 10:02 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.3.x <3.7.11'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.7.11
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:43b959fcdcf107b70e4224d80b63d1c123560c3af055109bbcc7d68476546584
        - quay.io/projectquay/quay-operator:3.7.11
        version: 3.7.11
      entries:
      - name: quay-operator.v3.7.11
        version: 3.7.11
      - name: quay-operator.v3.7.10
        version: 3.7.10
      - name: quay-operator.v3.7.9
        version: 3.7.9
      - name: quay-operator.v3.7.8
        version: 3.7.8
      - name: quay-operator.v3.7.7
        version: 3.7.7
      - name: quay-operator.v3.7.6
        version: 3.7.6
      - name: quay-operator.v3.7.5
        version: 3.7.5
      - name: quay-operator.v3.7.4
        version: 3.7.4
      - name: quay-operator.v3.7.3
        version: 3.7.3
      - name: quay-operator.v3.7.2
        version: 3.7.2
      - name: quay-operator.v3.7.1
        version: 3.7.1
      - name: quay-operator.v3.7.0
        version: 3.7.0
      name: stable-3.7
    - currentCSV: quay-operator.v3.8.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.8.13
          createdAt: 2023-10-17 16:13 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.8.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.8.13
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.8.13
        - quay.io/openshift-community-operators/project-quay@sha256:2845843f32b895dee0242e31380b44625e3f8381caee7ecb3258648311c302f7
        version: 3.8.13
      entries:
      - name: quay-operator.v3.8.13
        version: 3.8.13
      - name: quay-operator.v3.8.12
        version: 3.8.12
      - name: quay-operator.v3.8.11
        version: 3.8.11
      - name: quay-operator.v3.8.10
        version: 3.8.10
      - name: quay-operator.v3.8.8
        version: 3.8.8
      - name: quay-operator.v3.8.7
        version: 3.8.7
      - name: quay-operator.v3.8.6
        version: 3.8.6
      - name: quay-operator.v3.8.5
        version: 3.8.5
      - name: quay-operator.v3.8.4
        version: 3.8.4
      - name: quay-operator.v3.8.3
        version: 3.8.3
      - name: quay-operator.v3.8.2
        version: 3.8.2
      - name: quay-operator.v3.8.1
        version: 3.8.1
      - name: quay-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: quay-operator.v3.9.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.9.17
          createdAt: "2025-12-16T16:36:17Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.9.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:3d5f35b0766ce91a1aceb0ccad72adc22c4d1707948b40e4ceaabae921c5486a
        - quay.io/projectquay/quay-operator:3.9.17
        version: 3.9.17
      entries:
      - name: quay-operator.v3.9.17
        version: 3.9.17
      - name: quay-operator.v3.9.16
        version: 3.9.16
      - name: quay-operator.v3.9.15
        version: 3.9.15
      - name: quay-operator.v3.9.14
        version: 3.9.14
      - name: quay-operator.v3.9.13
        version: 3.9.13
      - name: quay-operator.v3.9.12
        version: 3.9.12
      - name: quay-operator.v3.9.11
        version: 3.9.11
      - name: quay-operator.v3.9.10
        version: 3.9.10
      - name: quay-operator.v3.9.9
        version: 3.9.9
      - name: quay-operator.v3.9.6
        version: 3.9.6
      - name: quay-operator.v3.9.5
        version: 3.9.5
      - name: quay-operator.v3.9.4
        version: 3.9.4
      - name: quay-operator.v3.9.3
        version: 3.9.3
      - name: quay-operator.v3.9.2
        version: 3.9.2
      - name: quay-operator.v3.9.1
        version: 3.9.1
      - name: quay-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.15
    packageName: project-quay
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Weights & Biases
      provider-url: https://wandb.ai
    name: wandb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: wandb-operator.v1.21.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.wandb.com/v1",
                "kind": "WeightsAndBiases",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "wandb-operator",
                    "app.kubernetes.io/instance": "weightsandbiases-sample",
                    "app.kubernetes.io/managed-by": "olm",
                    "app.kubernetes.io/name": "weightsandbiases",
                    "app.kubernetes.io/part-of": "wandb-operator"
                  },
                  "name": "weightsandbiases-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning,Developer Tools
          certified: "false"
          containerImage: quay.io/wandb_tools/wandb-k8s-operator:1.21.2
          createdAt: "2024-10-10T14:46:54Z"
          description: Operator for Weights and Biases, enabling seamless integration
            and management of machine learning experiments in Kubernetes environments.
          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"
          operatorframework.io/suggested-namespace: wandb-system
          repository: https://github.com/wandb/operator
          support: WeightsAndBiases
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WeightsAndBiases is a custom resource for managing W&B configurations.
            displayName: Weights And Biases
            kind: WeightsAndBiases
            name: weightsandbiases.apps.wandb.com
            version: v1
        description: |-
          The Weights and Biases Operator simplifies the management of machine learning experiments, tracking, and infrastructure. It integrates with Kubernetes to deploy and manage Weights and Biases instances.
          Features:
          - Experiment Tracking
          - Hyperparameter Tuning
          - Model Management
          - Integration with popular ML frameworks
        displayName: Weights & Biases Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - machine learning
        - experiment tracking
        - ML infrastructure
        - weights and biases
        links:
        - name: Weights & Biases Documentation
          url: https://docs.wandb.ai/
        maintainers:
        - email: abhinav.garg@domain.com
          name: Abhinav Garg
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Weights & Biases
          url: https://wandb.ai
        relatedImages:
        - quay.io/wandb_tools/wandb-k8s-operator:1.21.2
        - quay.io/community-operator-pipeline-prod/wandb-operator@sha256:e6b970a12d5ea0d5531dd88c1707c53c0a490de0145ee869bdfc1dc1218c7b29
        version: 1.21.2
      entries:
      - name: wandb-operator.v1.21.2
        version: 1.21.2
      - name: wandb-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: wandb-operator
    provider:
      name: Weights & Biases
      url: https://wandb.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ec2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ec2-controller.v1.9.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "DHCPOptions",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "ElasticIPAddress",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "Instance",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "InternetGateway",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "NATGateway",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "RouteTable",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "SecurityGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "Subnet",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "TransitGateway",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "VPC",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "VPCEndpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ec2-controller:1.9.1
          createdAt: "2026-01-06T21:44:24Z"
          description: AWS EC2 controller is a service controller for managing EC2
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CapacityReservation represents the state of an AWS ec2 CapacityReservation
              resource.
            displayName: CapacityReservation
            kind: CapacityReservation
            name: capacityreservations.ec2.services.k8s.aws
            version: v1alpha1
          - description: DHCPOptions represents the state of an AWS ec2 DHCPOptions
              resource.
            displayName: DHCPOptions
            kind: DHCPOptions
            name: dhcpoptions.ec2.services.k8s.aws
            version: v1alpha1
          - description: ElasticIPAddress represents the state of an AWS ec2 ElasticIPAddress
              resource.
            displayName: ElasticIPAddress
            kind: ElasticIPAddress
            name: elasticipaddresses.ec2.services.k8s.aws
            version: v1alpha1
          - description: FlowLog represents the state of an AWS ec2 FlowLog resource.
            displayName: FlowLog
            kind: FlowLog
            name: flowlogs.ec2.services.k8s.aws
            version: v1alpha1
          - description: Instance represents the state of an AWS ec2 Instance resource.
            displayName: Instance
            kind: Instance
            name: instances.ec2.services.k8s.aws
            version: v1alpha1
          - description: InternetGateway represents the state of an AWS ec2 InternetGateway
              resource.
            displayName: InternetGateway
            kind: InternetGateway
            name: internetgateways.ec2.services.k8s.aws
            version: v1alpha1
          - description: LaunchTemplate represents the state of an AWS ec2 LaunchTemplate
              resource.
            displayName: LaunchTemplate
            kind: LaunchTemplate
            name: launchtemplates.ec2.services.k8s.aws
            version: v1alpha1
          - description: ManagedPrefixList represents the state of an AWS ec2 ManagedPrefixList
              resource.
            displayName: ManagedPrefixList
            kind: ManagedPrefixList
            name: managedprefixlists.ec2.services.k8s.aws
            version: v1alpha1
          - description: NATGateway represents the state of an AWS ec2 NATGateway
              resource.
            displayName: NATGateway
            kind: NATGateway
            name: natgateways.ec2.services.k8s.aws
            version: v1alpha1
          - description: NetworkACL represents the state of an AWS ec2 NetworkACL
              resource.
            displayName: NetworkACL
            kind: NetworkACL
            name: networkacls.ec2.services.k8s.aws
            version: v1alpha1
          - description: RouteTable represents the state of an AWS ec2 RouteTable
              resource.
            displayName: RouteTable
            kind: RouteTable
            name: routetables.ec2.services.k8s.aws
            version: v1alpha1
          - description: SecurityGroup represents the state of an AWS ec2 SecurityGroup
              resource.
            displayName: SecurityGroup
            kind: SecurityGroup
            name: securitygroups.ec2.services.k8s.aws
            version: v1alpha1
          - description: Subnet represents the state of an AWS ec2 Subnet resource.
            displayName: Subnet
            kind: Subnet
            name: subnets.ec2.services.k8s.aws
            version: v1alpha1
          - description: TransitGateway represents the state of an AWS ec2 TransitGateway
              resource.
            displayName: TransitGateway
            kind: TransitGateway
            name: transitgateways.ec2.services.k8s.aws
            version: v1alpha1
          - description: TransitGatewayVPCAttachment represents the state of an AWS
              ec2 TransitGatewayVPCAttachment resource.
            displayName: TransitGatewayVPCAttachment
            kind: TransitGatewayVPCAttachment
            name: transitgatewayvpcattachments.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPCEndpoint represents the state of an AWS ec2 VPCEndpoint
              resource.
            displayName: VPCEndpoint
            kind: VPCEndpoint
            name: vpcendpoints.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPCEndpointServiceConfiguration represents the state of an
              AWS ec2 VPCEndpointServiceConfiguration resource.
            displayName: VPCEndpointServiceConfiguration
            kind: VPCEndpointServiceConfiguration
            name: vpcendpointserviceconfigurations.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPCPeeringConnection represents the state of an AWS ec2 VPCPeeringConnection
              resource.
            displayName: VPCPeeringConnection
            kind: VPCPeeringConnection
            name: vpcpeeringconnections.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPC represents the state of an AWS ec2 VPC resource.
            displayName: VPC
            kind: VPC
            name: vpcs.ec2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Elastic Compute Cloud (EC2) resources in AWS from within your Kubernetes cluster.

          **About Amazon EC2**

          Amazon Elastic Compute Cloud (Amazon EC2) provides scalable computing capacity in the Amazon Web Services (AWS) Cloud. Using Amazon EC2 eliminates your need to invest in hardware up front, so you can develop and deploy applications faster. You can use Amazon EC2 to launch as many or as few virtual servers as you need, configure security and networking, and manage storage. Amazon EC2 enables you to scale up or down to handle changes in requirements or spikes in popularity, reducing your need to forecast traffic.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EC2
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ec2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EC2 Developer Resources
          url: https://aws.amazon.com/ec2/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ec2 maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ec2-controller:1.9.1
        - quay.io/community-operator-pipeline-prod/ack-ec2-controller@sha256:84bb2fdba33925ac6845422483bdbeb38de6070ac190e9cd15be196dcfa1e770
        version: 1.9.1
      entries:
      - name: ack-ec2-controller.v1.9.1
        version: 1.9.1
      - name: ack-ec2-controller.v1.9.0
        version: 1.9.0
      - name: ack-ec2-controller.v1.8.0
        version: 1.8.0
      - name: ack-ec2-controller.v1.7.1
        version: 1.7.1
      - name: ack-ec2-controller.v1.7.0
        version: 1.7.0
      - name: ack-ec2-controller.v1.6.2
        version: 1.6.2
      - name: ack-ec2-controller.v1.6.1
        version: 1.6.1
      - name: ack-ec2-controller.v1.6.0
        version: 1.6.0
      - name: ack-ec2-controller.v1.4.11
        version: 1.4.11
      - name: ack-ec2-controller.v1.4.10
        version: 1.4.10
      - name: ack-ec2-controller.v1.4.9
        version: 1.4.9
      - name: ack-ec2-controller.v1.4.8
        version: 1.4.8
      - name: ack-ec2-controller.v1.4.7
        version: 1.4.7
      - name: ack-ec2-controller.v1.4.6
        version: 1.4.6
      - name: ack-ec2-controller.v1.4.5
        version: 1.4.5
      - name: ack-ec2-controller.v1.4.4
        version: 1.4.4
      - name: ack-ec2-controller.v1.4.2
        version: 1.4.2
      - name: ack-ec2-controller.v1.4.1
        version: 1.4.1
      - name: ack-ec2-controller.v1.4.0
        version: 1.4.0
      - name: ack-ec2-controller.v1.3.7
        version: 1.3.7
      - name: ack-ec2-controller.v1.3.6
        version: 1.3.6
      - name: ack-ec2-controller.v1.3.5
        version: 1.3.5
      - name: ack-ec2-controller.v1.3.4
        version: 1.3.4
      - name: ack-ec2-controller.v1.3.3
        version: 1.3.3
      - name: ack-ec2-controller.v1.3.1
        version: 1.3.1
      - name: ack-ec2-controller.v1.3.0
        version: 1.3.0
      - name: ack-ec2-controller.v1.2.28
        version: 1.2.28
      - name: ack-ec2-controller.v1.2.27
        version: 1.2.27
      - name: ack-ec2-controller.v1.2.26
        version: 1.2.26
      - name: ack-ec2-controller.v1.2.25
        version: 1.2.25
      - name: ack-ec2-controller.v1.2.24
        version: 1.2.24
      - name: ack-ec2-controller.v1.2.23
        version: 1.2.23
      - name: ack-ec2-controller.v1.2.22
        version: 1.2.22
      - name: ack-ec2-controller.v1.2.21
        version: 1.2.21
      - name: ack-ec2-controller.v1.2.20
        version: 1.2.20
      - name: ack-ec2-controller.v1.2.17
        version: 1.2.17
      - name: ack-ec2-controller.v1.2.16
        version: 1.2.16
      - name: ack-ec2-controller.v1.2.15
        version: 1.2.15
      - name: ack-ec2-controller.v1.2.14
        version: 1.2.14
      - name: ack-ec2-controller.v1.2.13
        version: 1.2.13
      - name: ack-ec2-controller.v1.2.12
        version: 1.2.12
      - name: ack-ec2-controller.v1.2.11
        version: 1.2.11
      - name: ack-ec2-controller.v1.2.10
        version: 1.2.10
      - name: ack-ec2-controller.v1.2.9
        version: 1.2.9
      - name: ack-ec2-controller.v1.2.8
        version: 1.2.8
      - name: ack-ec2-controller.v1.2.7
        version: 1.2.7
      - name: ack-ec2-controller.v1.2.6
        version: 1.2.6
      - name: ack-ec2-controller.v1.2.4
        version: 1.2.4
      - name: ack-ec2-controller.v1.2.1
        version: 1.2.1
      - name: ack-ec2-controller.v1.2.0
        version: 1.2.0
      - name: ack-ec2-controller.v1.1.2
        version: 1.1.2
      - name: ack-ec2-controller.v1.1.1
        version: 1.1.1
      - name: ack-ec2-controller.v1.1.0
        version: 1.1.0
      - name: ack-ec2-controller.v1.0.7
        version: 1.0.7
      - name: ack-ec2-controller.v1.0.6
        version: 1.0.6
      - name: ack-ec2-controller.v1.0.4
        version: 1.0.4
      - name: ack-ec2-controller.v1.0.3
        version: 1.0.3
      - name: ack-ec2-controller.v1.0.2
        version: 1.0.2
      - name: ack-ec2-controller.v1.0.1
        version: 1.0.1
      - name: ack-ec2-controller.v1.0.0
        version: 1.0.0
      - name: ack-ec2-controller.v0.1.1
        version: 0.1.1
      - name: ack-ec2-controller.v0.1.0
        version: 0.1.0
      - name: ack-ec2-controller.v0.0.21
        version: 0.0.21
      - name: ack-ec2-controller.v0.0.20
        version: 0.0.20
      - name: ack-ec2-controller.v0.0.19
        version: 0.0.19
      - name: ack-ec2-controller.v0.0.18
        version: 0.0.18
      - name: ack-ec2-controller.v0.0.17
        version: 0.0.17
      - name: ack-ec2-controller.v0.0.16
        version: 0.0.16
      - name: ack-ec2-controller.v0.0.15
        version: 0.0.15
      - name: ack-ec2-controller.v0.0.14
        version: 0.0.14
      - name: ack-ec2-controller.v0.0.13
        version: 0.0.13
      - name: ack-ec2-controller.v0.0.12
        version: 0.0.12
      - name: ack-ec2-controller.v0.0.11
        version: 0.0.11
      - name: ack-ec2-controller.v0.0.10
        version: 0.0.10
      - name: ack-ec2-controller.v0.0.9
        version: 0.0.9
      - name: ack-ec2-controller.v0.0.8
        version: 0.0.8
      - name: ack-ec2-controller.v0.0.7
        version: 0.0.7
      - name: ack-ec2-controller.v0.0.6
        version: 0.0.6
      - name: ack-ec2-controller.v0.0.5
        version: 0.0.5
      - name: ack-ec2-controller.v0.0.4
        version: 0.0.4
      - name: ack-ec2-controller.v0.0.3
        version: 0.0.3
      - name: ack-ec2-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-ec2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: sailoperator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sailoperator.v1.29.0-nightly-2026-01-05
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.28.1"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:9fea08273c18001666e4d33ae4b951c08bdb6eea24340fab55d0d2ca3613ffcb
          createdAt: "2026-01-05T03:50:08Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.28-latest
          - v1.28.1
          - v1.28.0
          - v1.27-latest
          - v1.27.4
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.7
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0
          - master
          - v1.29-alpha.33f91585

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - quay.io/community-operator-pipeline-prod/sailoperator:1.29.0-nightly-2026-01-05
        - gcr.io/istio-release/pilot@sha256:5109ab9a1e7f1cdc60430e8823957655710dcc4977479b67de3d43bbab18a3f6
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/proxyv2@sha256:8ff7b0d50cea9aa80512b6b9a75afc9021de6dc4d4151ce7946c5e04812a3de2
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/proxyv2@sha256:c68e79b821ba47c63af844422114af6d5cc01cc1fd8f1b0184c42be330afc1d2
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/pilot@sha256:dcc1431b635a2151f891ba17e8911d56f1aa1e4acaff0c543d0036b849cb0369
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/install-cni@sha256:ba4c1ad3c67be6681883162c8543e15b2ea78a79658665a450bce0f475674de5
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/pilot@sha256:43e24609869d90ea7c12c878474e5905b02676e7dd827903be42c15599cde1b7
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/ztunnel@sha256:f562d8dd28e803061ee63853e7e1da07188ec24e734ebf0d95ec2126b41ac392
        - gcr.io/istio-release/install-cni@sha256:a84971fd29ce54181dc4ceee6dbde8032bebd5a72301319a0468e5bc39902080
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/proxyv2@sha256:f95a5e91204afbfad9d33d6f1bc0556a96bf997b18edede6c9e6b86eb07543a1
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/ztunnel@sha256:352baf7040b916b2d3de03388f14a8da0da5fa5e02a2589218261119b39a4594
        - gcr.io/istio-release/install-cni@sha256:81295e43028ab50028f173a7ed2bf3d435201539b6b70f5938079771fe9e4561
        - gcr.io/istio-testing/proxyv2@sha256:0f0666237e310e2049aa328eec13dd40b062689295df2329b0770edd82708946
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/pilot@sha256:d0930e5cf028deeb636364595b4d0a42e05d5745850013bae297b32a9315ab18
        - gcr.io/istio-release/proxyv2@sha256:4c830a386c93683bdf88249e089bc971361c419365663dc35aa1d5ba6be73c19
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - quay.io/sail-dev/sail-operator@sha256:9fea08273c18001666e4d33ae4b951c08bdb6eea24340fab55d0d2ca3613ffcb
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/ztunnel@sha256:5991f9a9202c9a1a59c41efb7e8b89e7a9cfc0dc39f71afe91cdd78c6ecf697c
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/install-cni@sha256:8dda5692bbed6069d837acc084d5b142c325bba2491622a04ec42198c44562b4
        - gcr.io/istio-testing/pilot@sha256:4cce73203bf2a679876f8c3edcf688a59fd25b4fd55f7da72de8850d105ed4fa
        - gcr.io/istio-testing/ztunnel@sha256:79ad54a5b95cabc98ca973d71f5acfa54c850e3f56d2407b5b0436b174e85ea1
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-testing/install-cni@sha256:595ea71bc523b724db6e0a3447b37092b571590d433e508a8ab0d05d096fd48b
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/ztunnel@sha256:836e3f8b34527139523effc176cc138b93e69b4506ccb3dca75460e0ccb96138
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        version: 1.29.0-nightly-2026-01-05
      entries:
      - name: sailoperator.v1.29.0-nightly-2026-01-05
        version: 1.29.0-nightly-2026-01-05
      - name: sailoperator.v1.29.0-nightly-2026-01-04
        version: 1.29.0-nightly-2026-01-04
      - name: sailoperator.v1.29.0-nightly-2026-01-03
        version: 1.29.0-nightly-2026-01-03
      - name: sailoperator.v1.29.0-nightly-2026-01-02
        version: 1.29.0-nightly-2026-01-02
      - name: sailoperator.v1.29.0-nightly-2026-01-01
        version: 1.29.0-nightly-2026-01-01
      - name: sailoperator.v1.29.0-nightly-2025-12-31
        version: 1.29.0-nightly-2025-12-31
      - name: sailoperator.v1.29.0-nightly-2025-12-30
        version: 1.29.0-nightly-2025-12-30
      - name: sailoperator.v1.29.0-nightly-2025-12-29
        version: 1.29.0-nightly-2025-12-29
      - name: sailoperator.v1.29.0-nightly-2025-12-28
        version: 1.29.0-nightly-2025-12-28
      - name: sailoperator.v1.29.0-nightly-2025-12-27
        version: 1.29.0-nightly-2025-12-27
      - name: sailoperator.v1.29.0-nightly-2025-12-26
        version: 1.29.0-nightly-2025-12-26
      - name: sailoperator.v1.29.0-nightly-2025-12-25
        version: 1.29.0-nightly-2025-12-25
      - name: sailoperator.v1.29.0-nightly-2025-12-24
        version: 1.29.0-nightly-2025-12-24
      name: 1.29-nightly
    - currentCSV: sailoperator.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.23.0"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.23.0"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/maistra-dev/sail-operator:0.1-latest
          createdAt: "2024-08-20T11:54:30Z"
          description: Experimental operator for installing Istio service mesh
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1alpha1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1alpha1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1alpha1
          - description: |-
              RemoteIstio represents a remote Istio Service Mesh deployment consisting of one or more
              remote control plane instances (represented by one or more IstioRevision objects).
            displayName: Remote Istio
            kind: RemoteIstio
            name: remoteistios.sailoperator.io
            version: v1alpha1
        description: |-
          This is an experimental operator for installing Istio service mesh.

          This version of the operator supports the following Istio versions:

          - v1.23.0
          - v1.22.4

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - docker.io/istio/pilot:1.23.0
        - docker.io/istio/install-cni:1.23.0
        - docker.io/istio/ztunnel:1.23.0
        - quay.io/community-operator-pipeline-prod/sailoperator@sha256:a5698068f57fb27c6e4b8c385878c4651967ae5f17412c6ea6cf8bd34bfe76a1
        - docker.io/istio/install-cni:1.22.4
        - docker.io/istio/pilot:1.22.4
        - docker.io/istio/proxyv2:1.23.0
        - docker.io/istio/ztunnel:1.22.4
        - quay.io/maistra-dev/sail-operator:0.1-latest
        - docker.io/istio/proxyv2:1.22.4
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.16.0
        version: 0.1.0
      entries:
      - name: sailoperator.v0.1.0
        version: 0.1.0
      - name: sailoperator.v0.1.0-rc.1
        version: 0.1.0-rc.1
      name: candidates
    - currentCSV: sailoperator.v1.28.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
          createdAt: "2025-12-10T15:50:55Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.28-latest
          - v1.28.1
          - v1.28.0
          - v1.27-latest
          - v1.27.4
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.7
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - gcr.io/istio-release/proxyv2@sha256:8ff7b0d50cea9aa80512b6b9a75afc9021de6dc4d4151ce7946c5e04812a3de2
        - quay.io/community-operator-pipeline-prod/sailoperator:1.28.1
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/proxyv2@sha256:4c830a386c93683bdf88249e089bc971361c419365663dc35aa1d5ba6be73c19
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        - gcr.io/istio-release/install-cni@sha256:a84971fd29ce54181dc4ceee6dbde8032bebd5a72301319a0468e5bc39902080
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/install-cni@sha256:8dda5692bbed6069d837acc084d5b142c325bba2491622a04ec42198c44562b4
        - gcr.io/istio-release/pilot@sha256:d0930e5cf028deeb636364595b4d0a42e05d5745850013bae297b32a9315ab18
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/pilot@sha256:dcc1431b635a2151f891ba17e8911d56f1aa1e4acaff0c543d0036b849cb0369
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/ztunnel@sha256:f562d8dd28e803061ee63853e7e1da07188ec24e734ebf0d95ec2126b41ac392
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/pilot@sha256:5109ab9a1e7f1cdc60430e8823957655710dcc4977479b67de3d43bbab18a3f6
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:f95a5e91204afbfad9d33d6f1bc0556a96bf997b18edede6c9e6b86eb07543a1
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/ztunnel@sha256:352baf7040b916b2d3de03388f14a8da0da5fa5e02a2589218261119b39a4594
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/install-cni@sha256:ba4c1ad3c67be6681883162c8543e15b2ea78a79658665a450bce0f475674de5
        - gcr.io/istio-release/proxyv2@sha256:c68e79b821ba47c63af844422114af6d5cc01cc1fd8f1b0184c42be330afc1d2
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/ztunnel@sha256:5991f9a9202c9a1a59c41efb7e8b89e7a9cfc0dc39f71afe91cdd78c6ecf697c
        - gcr.io/istio-release/pilot@sha256:43e24609869d90ea7c12c878474e5905b02676e7dd827903be42c15599cde1b7
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/install-cni@sha256:81295e43028ab50028f173a7ed2bf3d435201539b6b70f5938079771fe9e4561
        - quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/ztunnel@sha256:836e3f8b34527139523effc176cc138b93e69b4506ccb3dca75460e0ccb96138
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        version: 1.28.1
      entries:
      - name: sailoperator.v1.28.1
        version: 1.28.1
      - name: sailoperator.v1.28.0
        version: 1.28.0
      - name: sailoperator.v1.27.3
        version: 1.27.3
      - name: sailoperator.v1.27.2
        version: 1.27.2
      - name: sailoperator.v1.27.1
        version: 1.27.1
      - name: sailoperator.v1.27.0
        version: 1.27.0
      - name: sailoperator.v1.26.3
        version: 1.26.3
      - name: sailoperator.v1.26.2
        version: 1.26.2
      - name: sailoperator.v1.26.1
        version: 1.26.1
      - name: sailoperator.v1.26.0
        version: 1.26.0
      - name: sailoperator.v1.25.2
        version: 1.25.2
      - name: sailoperator.v1.25.1
        version: 1.25.1
      - name: sailoperator.v1.25.0
        version: 1.25.0
      name: stable
    - currentCSV: sailoperator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.24.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.24.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator:1.0-latest
          createdAt: "2025-03-07T10:17:30Z"
          description: Experimental operator for installing Istio service mesh
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          This is an experimental operator for installing Istio service mesh.

          This version of the operator supports the following Istio versions:

          - v1.24-latest
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.23-latest
          - v1.23.5
          - v1.23.4
          - v1.23.3
          - v1.23.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/pilot:1.24.3
        - gcr.io/istio-release/ztunnel:1.24.1
        - gcr.io/istio-release/install-cni:1.23.0
        - gcr.io/istio-release/pilot:1.24.2
        - gcr.io/istio-release/pilot:1.23.4
        - gcr.io/istio-release/proxyv2:1.24.3
        - gcr.io/istio-release/ztunnel:1.23.0
        - gcr.io/istio-release/ztunnel:1.24.3
        - gcr.io/istio-release/proxyv2:1.24.1
        - gcr.io/istio-release/ztunnel:1.23.5
        - gcr.io/istio-release/pilot:1.23.0
        - gcr.io/istio-release/install-cni:1.23.4
        - gcr.io/istio-release/pilot:1.24.1
        - gcr.io/istio-release/proxyv2:1.23.4
        - gcr.io/istio-release/ztunnel:1.23.4
        - gcr.io/istio-release/ztunnel:1.24.2
        - gcr.io/istio-release/install-cni:1.24.2
        - quay.io/community-operator-pipeline-prod/sailoperator@sha256:5416c5fc62c7d9498349ed771bf93bfc0f712ad8da0b8ee109dc49d1e684fa56
        - gcr.io/istio-release/install-cni:1.23.3
        - gcr.io/istio-release/proxyv2:1.23.0
        - gcr.io/istio-release/pilot:1.23.5
        - gcr.io/istio-release/install-cni:1.23.5
        - gcr.io/istio-release/proxyv2:1.23.5
        - gcr.io/istio-release/ztunnel:1.23.3
        - gcr.io/istio-release/install-cni:1.24.3
        - gcr.io/istio-release/pilot:1.23.3
        - gcr.io/istio-release/install-cni:1.24.1
        - quay.io/sail-dev/sail-operator:1.0-latest
        - gcr.io/istio-release/proxyv2:1.23.3
        - gcr.io/istio-release/proxyv2:1.24.2
        version: 1.0.0
      entries:
      - name: sailoperator.v1.0.0
        version: 1.0.0
      name: stable-1.0
    - currentCSV: sailoperator.v1.25.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.25.2"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.25.2"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator:1.25.2
          createdAt: "2025-05-07T19:44:51Z"
          description: Experimental operator for installing Istio service mesh
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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.skipRange: '>=1.0.0 <1.25.2'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          This is an experimental operator for installing Istio service mesh.

          This version of the operator supports the following Istio versions:

          - v1.25-latest
          - v1.25.2
          - v1.25.1
          - v1.24-latest
          - v1.24.4
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.24.0
          - v1.23-latest
          - v1.23.5
          - v1.23.4
          - v1.23.3
          - v1.23.2
          - v1.22-latest
          - v1.22.8
          - v1.22.7
          - v1.22.6
          - v1.22.5
          - v1.21.6

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/ztunnel:1.23.4
        - gcr.io/istio-release/ztunnel:1.24.3
        - gcr.io/istio-release/ztunnel:1.21.6
        - gcr.io/istio-release/ztunnel:1.22.8
        - gcr.io/istio-release/proxyv2:1.24.0
        - gcr.io/istio-release/install-cni:1.21.6
        - gcr.io/istio-release/pilot:1.22.8
        - gcr.io/istio-release/pilot:1.25.1
        - gcr.io/istio-release/proxyv2:1.22.6
        - gcr.io/istio-release/proxyv2:1.22.7
        - gcr.io/istio-release/proxyv2:1.21.6
        - gcr.io/istio-release/ztunnel:1.25.2
        - gcr.io/istio-release/install-cni:1.22.5
        - quay.io/community-operator-pipeline-prod/sailoperator@sha256:9cc4d5a9f46e4d05f8adb5232459002a073c101cc813330325afb6682e2138ae
        - gcr.io/istio-release/pilot:1.25.2
        - gcr.io/istio-release/pilot:1.23.5
        - gcr.io/istio-release/install-cni:1.23.5
        - gcr.io/istio-release/install-cni:1.24.4
        - gcr.io/istio-release/proxyv2:1.23.2
        - gcr.io/istio-release/install-cni:1.25.2
        - gcr.io/istio-release/ztunnel:1.23.3
        - gcr.io/istio-release/install-cni:1.25.1
        - gcr.io/istio-release/proxyv2:1.22.8
        - gcr.io/istio-release/proxyv2:1.25.1
        - gcr.io/istio-release/proxyv2:1.24.3
        - gcr.io/istio-release/proxyv2:1.25.2
        - gcr.io/istio-release/pilot:1.23.2
        - gcr.io/istio-release/pilot:1.24.0
        - gcr.io/istio-release/proxyv2:1.23.4
        - gcr.io/istio-release/install-cni:1.22.8
        - gcr.io/istio-release/ztunnel:1.24.2
        - gcr.io/istio-release/pilot:1.24.4
        - gcr.io/istio-release/install-cni:1.24.0
        - quay.io/sail-dev/sail-operator:1.25.2
        - gcr.io/istio-release/proxyv2:1.24.4
        - gcr.io/istio-release/pilot:1.24.2
        - gcr.io/istio-release/pilot:1.23.4
        - gcr.io/istio-release/install-cni:1.22.7
        - gcr.io/istio-release/proxyv2:1.23.3
        - gcr.io/istio-release/pilot:1.22.5
        - gcr.io/istio-release/proxyv2:1.23.5
        - gcr.io/istio-release/ztunnel:1.23.2
        - gcr.io/istio-release/install-cni:1.24.2
        - gcr.io/istio-release/install-cni:1.24.1
        - gcr.io/istio-release/install-cni:1.23.4
        - gcr.io/istio-release/proxyv2:1.24.2
        - gcr.io/istio-release/ztunnel:1.22.7
        - gcr.io/istio-release/install-cni:1.22.6
        - gcr.io/istio-release/install-cni:1.23.3
        - gcr.io/istio-release/ztunnel:1.24.1
        - gcr.io/istio-release/pilot:1.21.6
        - gcr.io/istio-release/proxyv2:1.22.5
        - gcr.io/istio-release/ztunnel:1.24.4
        - gcr.io/istio-release/install-cni:1.23.2
        - gcr.io/istio-release/ztunnel:1.24.0
        - gcr.io/istio-release/pilot:1.22.7
        - gcr.io/istio-release/ztunnel:1.25.1
        - gcr.io/istio-release/ztunnel:1.22.6
        - gcr.io/istio-release/ztunnel:1.23.5
        - gcr.io/istio-release/proxyv2:1.24.1
        - gcr.io/istio-release/install-cni:1.24.3
        - gcr.io/istio-release/pilot:1.23.3
        - gcr.io/istio-release/pilot:1.24.1
        - gcr.io/istio-release/pilot:1.22.6
        - gcr.io/istio-release/pilot:1.24.3
        - gcr.io/istio-release/ztunnel:1.22.5
        version: 1.25.2
      entries:
      - name: sailoperator.v1.25.2
        version: 1.25.2
      - name: sailoperator.v1.25.1
        version: 1.25.1
      - name: sailoperator.v1.25.0
        version: 1.25.0
      name: stable-1.25
    - currentCSV: sailoperator.v1.26.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.26.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.26.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:d37258646d76a9f708a69fbaa081a0a95908a2b0c8837a14d7ecbfcf505f9bd4
          createdAt: "2025-08-04T06:23:45Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.26-latest
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0
          - v1.25-latest
          - v1.25.3
          - v1.25.2
          - v1.25.1
          - v1.24-latest
          - v1.24.6
          - v1.24.5
          - v1.24.4
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.24.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/proxyv2@sha256:445156b5f4a780242d079a47b7d88199cbbb5959c92358469b721af490eca1ae
        - gcr.io/istio-release/pilot@sha256:e082a6f27001101942d1e2be71764b17ad350ed0d289038020426e7ee603eb56
        - gcr.io/istio-release/pilot@sha256:f0bcb10a51dbb2b9e5552e7f82aa7fcc2ff4dd6d0d7d2224986036b1645b855b
        - gcr.io/istio-release/ztunnel@sha256:0e680a1b33d458e5dfd6f91808c8bd61d00a1103084545ea6a1956c935e7554e
        - gcr.io/istio-release/proxyv2@sha256:d62cc7585450bce8573338c3d147961f4e1df045ffcf5956abea29841cb5aaa4
        - gcr.io/istio-release/install-cni@sha256:3107b1947e755abe698fe2d5c3ed7ba5f228f0b4ff5ff30f484fcc984514b97e
        - gcr.io/istio-release/proxyv2@sha256:49ed9dd2c06383c0a847877a707a3563d0968d83779ad8d13a0c022a48c5c407
        - gcr.io/istio-release/pilot@sha256:32d0f6bd6c1259de78dbc79dfd88cf5f4dc8941613560ff2ca7dbabcf04dfd68
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:ee6565e57319e01b5e45b929335eb9dc3d4b30d531b4652467e6939ae81b41f7
        - gcr.io/istio-release/install-cni@sha256:d28af093e5b7f33e8750364e9077c8b2c464145d1904cae8be48227ec0110b04
        - gcr.io/istio-release/ztunnel@sha256:74ee23f374ea28b3455ad2eca2bea62da95bc2a23b865b7c8c301139046650d5
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/install-cni@sha256:7b12bcfabd92c5756e4b12bf82e373f4abcdd3ccf81ac0b93fe0aa6f8ccce63c
        - gcr.io/istio-release/pilot@sha256:7ccda8c22307ee796cb7ba3f4ce224ef533c3c683c063dcc92fd5a244d8a5c9d
        - gcr.io/istio-release/proxyv2@sha256:91382859f73b1a66ac113631f89ef73dabf9c931d6baf0bd7eb618c0fa958b34
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/install-cni@sha256:313165b70241f65c79b5984797b8e3bc43a264acfeaeda4f33fe3a7f89a2fdb8
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/pilot@sha256:4ad6b0c3839a11622e66323a1296c7fc19dcbbb2c371b2e3edd58bd4f763f19f
        - gcr.io/istio-release/pilot@sha256:c8ac4894f2e667eb439d1c960a47ac7fbc80aad3f0adb98f5fd9330d9c515696
        - gcr.io/istio-release/proxyv2@sha256:2edf332e1c7ddd46466e337d009eda091bcd43f827b6f460175b772addc8055a
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/proxyv2@sha256:a5f2c1804ac4397448149b63a67f6cfd1979d304b99a726667a4859d201c6305
        - quay.io/sail-dev/sail-operator@sha256:d37258646d76a9f708a69fbaa081a0a95908a2b0c8837a14d7ecbfcf505f9bd4
        - gcr.io/istio-release/ztunnel@sha256:ca14b3f869aa998da30c6f8f8d14b2e9cd61a40b78b05196b951cac9613d76d8
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/ztunnel@sha256:2402a1c71dce11c409b6da171d8ae27dff62c539d58aac41817499e1fcd7beb3
        - gcr.io/istio-release/install-cni@sha256:d241cd11295b7c7af6c1c7e22096db886b07ab1945b4b7b2fe3d7f95ef41b277
        - gcr.io/istio-release/install-cni@sha256:1d963aca195f1e06459925431c592cf556112d77b824c61e06555fbc31ee415f
        - gcr.io/istio-release/proxyv2@sha256:640733abb924663df83761e2ec95a2bddca797daf1ca37672ec0b045969cdeb1
        - gcr.io/istio-release/pilot@sha256:93d6b52a61e7e9891fe114e4f7d503b36e8d1566a22e82e5635084a2001eb14a
        - gcr.io/istio-release/ztunnel@sha256:eaae7b8ed53a3f18b0291f08db0e3330d7c958d39919fce9dbc43f3027bf2089
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/proxyv2@sha256:2cd83a25202af6c5aef48b432f7fed50b6de460c795ce7c84f80bf630f51ca4d
        - gcr.io/istio-release/install-cni@sha256:d85b955875b2fbfc2ca8166cf2aa0e4ac3d78dd00f4ec4140a2a22dd17e7deb9
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/pilot@sha256:21b6cdaf12e7eb8bb0ad1d493c32a76e7d34f574a41ece86ded0c79e7191e875
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/ztunnel@sha256:96daeeb4e71a304edbf2ee2d37bc4bd4b88b9da26d7e6cc0c34c94c1cd6e6cca
        - gcr.io/istio-release/ztunnel@sha256:56afd26e9384ff41a0244a8c637a0e3aa8654015b8d32b494df8b5023f213ec7
        - gcr.io/istio-release/ztunnel@sha256:ae90c4e06a4560898dbf414226e3ea879b8d0b10387af27b0c2907e8488fc5d1
        - gcr.io/istio-release/ztunnel@sha256:73b3ad311c9c9a2618e9c2f10259a3bf5414bb4fc6fd407baa6280bdd8d227f0
        - gcr.io/istio-release/pilot@sha256:29cccf38a413fe81a88d02e0bf924ca84a9cf1d6a3c9ece024c0636b1e3cb029
        - gcr.io/istio-release/install-cni@sha256:4b10d810228e553bf34924222b7d62fdfafbce5ed67dc54973d168bda384a4cd
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - quay.io/community-operator-pipeline-prod/sailoperator:1.26.3
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/install-cni@sha256:0f27cb9e3423a3ed8a444dd2137ae05f31a03df2bdd549b21ef8f0f3949e3cef
        - gcr.io/istio-release/ztunnel@sha256:45807d4c512e9a0e4855eb1a2535532319b698302ebbf4d4eaccf462997bb374
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/proxyv2@sha256:534f7589b085450b5b94e6c955f5106892df88d81676f53ac5e06a0cf5ec45da
        - gcr.io/istio-release/pilot@sha256:2961bf88463e475f1e53d82a118405841ecbb9d8a6e0b35c73c77bee53bc0c3e
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - gcr.io/istio-release/install-cni@sha256:a80a96d9e4e859d1568fe1db1b12525db8c26d153e4bb783ba4efb3c5b16f877
        version: 1.26.3
      entries:
      - name: sailoperator.v1.26.3
        version: 1.26.3
      - name: sailoperator.v1.26.2
        version: 1.26.2
      - name: sailoperator.v1.26.1
        version: 1.26.1
      - name: sailoperator.v1.26.0
        version: 1.26.0
      name: stable-1.26
    - currentCSV: sailoperator.v1.27.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:89bae0d643a074d759550ab497aa43af670ce7717db3f6fac50daaa32e61d371
          createdAt: "2025-10-21T10:12:31Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.27-latest
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0
          - v1.25-latest
          - v1.25.5
          - v1.25.4
          - v1.25.3
          - v1.25.2
          - v1.25.1
          - v1.24-latest
          - v1.24.6
          - v1.24.5
          - v1.24.4
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.24.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/ztunnel@sha256:56afd26e9384ff41a0244a8c637a0e3aa8654015b8d32b494df8b5023f213ec7
        - gcr.io/istio-release/ztunnel@sha256:eaae7b8ed53a3f18b0291f08db0e3330d7c958d39919fce9dbc43f3027bf2089
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/install-cni@sha256:313165b70241f65c79b5984797b8e3bc43a264acfeaeda4f33fe3a7f89a2fdb8
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/install-cni@sha256:3107b1947e755abe698fe2d5c3ed7ba5f228f0b4ff5ff30f484fcc984514b97e
        - gcr.io/istio-release/proxyv2@sha256:640733abb924663df83761e2ec95a2bddca797daf1ca37672ec0b045969cdeb1
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/install-cni@sha256:d241cd11295b7c7af6c1c7e22096db886b07ab1945b4b7b2fe3d7f95ef41b277
        - gcr.io/istio-release/pilot@sha256:32d0f6bd6c1259de78dbc79dfd88cf5f4dc8941613560ff2ca7dbabcf04dfd68
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/proxyv2@sha256:ee6565e57319e01b5e45b929335eb9dc3d4b30d531b4652467e6939ae81b41f7
        - gcr.io/istio-release/ztunnel@sha256:2402a1c71dce11c409b6da171d8ae27dff62c539d58aac41817499e1fcd7beb3
        - gcr.io/istio-release/pilot@sha256:e082a6f27001101942d1e2be71764b17ad350ed0d289038020426e7ee603eb56
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/ztunnel@sha256:96daeeb4e71a304edbf2ee2d37bc4bd4b88b9da26d7e6cc0c34c94c1cd6e6cca
        - gcr.io/istio-release/pilot@sha256:0d06b179025862f13150dda22608e0700a74a0127d0a1b66eebcadf18d3d4bd7
        - gcr.io/istio-release/proxyv2@sha256:75e272cbe8dd31fda4c193aedc251ee2e26593f0b7b4f305225f9ad804cc6f0d
        - gcr.io/istio-release/install-cni@sha256:f8043a943106f8638dc67ed9b8cce5ced0a25d0b8c9217281f7c7ff1dbd41c15
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/pilot@sha256:f0bcb10a51dbb2b9e5552e7f82aa7fcc2ff4dd6d0d7d2224986036b1645b855b
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/proxyv2@sha256:a5f2c1804ac4397448149b63a67f6cfd1979d304b99a726667a4859d201c6305
        - gcr.io/istio-release/pilot@sha256:c8ac4894f2e667eb439d1c960a47ac7fbc80aad3f0adb98f5fd9330d9c515696
        - gcr.io/istio-release/proxyv2@sha256:91382859f73b1a66ac113631f89ef73dabf9c931d6baf0bd7eb618c0fa958b34
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/install-cni@sha256:a80a96d9e4e859d1568fe1db1b12525db8c26d153e4bb783ba4efb3c5b16f877
        - gcr.io/istio-release/install-cni@sha256:d28af093e5b7f33e8750364e9077c8b2c464145d1904cae8be48227ec0110b04
        - gcr.io/istio-release/proxyv2@sha256:534f7589b085450b5b94e6c955f5106892df88d81676f53ac5e06a0cf5ec45da
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/proxyv2@sha256:2cd83a25202af6c5aef48b432f7fed50b6de460c795ce7c84f80bf630f51ca4d
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/proxyv2@sha256:445156b5f4a780242d079a47b7d88199cbbb5959c92358469b721af490eca1ae
        - gcr.io/istio-release/proxyv2@sha256:2edf332e1c7ddd46466e337d009eda091bcd43f827b6f460175b772addc8055a
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/pilot@sha256:7ccda8c22307ee796cb7ba3f4ce224ef533c3c683c063dcc92fd5a244d8a5c9d
        - quay.io/sail-dev/sail-operator@sha256:89bae0d643a074d759550ab497aa43af670ce7717db3f6fac50daaa32e61d371
        - gcr.io/istio-release/ztunnel@sha256:73b3ad311c9c9a2618e9c2f10259a3bf5414bb4fc6fd407baa6280bdd8d227f0
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/install-cni@sha256:f6e234ab501fabdd9643f1469f90bf0ff3696caa0f6456652e28c1a608644700
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/ztunnel@sha256:ca14b3f869aa998da30c6f8f8d14b2e9cd61a40b78b05196b951cac9613d76d8
        - gcr.io/istio-release/proxyv2@sha256:ac598d6c98415bfb323b4930ba1423b9c3d17a90c205de1ad2e5f28179275c75
        - gcr.io/istio-release/proxyv2@sha256:49ed9dd2c06383c0a847877a707a3563d0968d83779ad8d13a0c022a48c5c407
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/install-cni@sha256:d85b955875b2fbfc2ca8166cf2aa0e4ac3d78dd00f4ec4140a2a22dd17e7deb9
        - gcr.io/istio-release/pilot@sha256:2961bf88463e475f1e53d82a118405841ecbb9d8a6e0b35c73c77bee53bc0c3e
        - gcr.io/istio-release/ztunnel@sha256:0e680a1b33d458e5dfd6f91808c8bd61d00a1103084545ea6a1956c935e7554e
        - gcr.io/istio-release/install-cni@sha256:1d963aca195f1e06459925431c592cf556112d77b824c61e06555fbc31ee415f
        - gcr.io/istio-release/install-cni@sha256:0f27cb9e3423a3ed8a444dd2137ae05f31a03df2bdd549b21ef8f0f3949e3cef
        - gcr.io/istio-release/pilot@sha256:29cccf38a413fe81a88d02e0bf924ca84a9cf1d6a3c9ece024c0636b1e3cb029
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/install-cni@sha256:4b10d810228e553bf34924222b7d62fdfafbce5ed67dc54973d168bda384a4cd
        - gcr.io/istio-release/pilot@sha256:4ad6b0c3839a11622e66323a1296c7fc19dcbbb2c371b2e3edd58bd4f763f19f
        - gcr.io/istio-release/ztunnel@sha256:45807d4c512e9a0e4855eb1a2535532319b698302ebbf4d4eaccf462997bb374
        - gcr.io/istio-release/pilot@sha256:93d6b52a61e7e9891fe114e4f7d503b36e8d1566a22e82e5635084a2001eb14a
        - gcr.io/istio-release/proxyv2@sha256:d62cc7585450bce8573338c3d147961f4e1df045ffcf5956abea29841cb5aaa4
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/ztunnel@sha256:ae90c4e06a4560898dbf414226e3ea879b8d0b10387af27b0c2907e8488fc5d1
        - gcr.io/istio-release/ztunnel@sha256:74ee23f374ea28b3455ad2eca2bea62da95bc2a23b865b7c8c301139046650d5
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/install-cni@sha256:7b12bcfabd92c5756e4b12bf82e373f4abcdd3ccf81ac0b93fe0aa6f8ccce63c
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/ztunnel@sha256:45e0288894c9beed590bd4caed1dc04a96be7231de3cdd5e2c45f1c08f194503
        - gcr.io/istio-release/ztunnel@sha256:144093bb2d220b7ee402626dc5ea9ed7ddce2675ebe5ab4bf83646b4762484dd
        - gcr.io/istio-release/pilot@sha256:21b6cdaf12e7eb8bb0ad1d493c32a76e7d34f574a41ece86ded0c79e7191e875
        - quay.io/community-operator-pipeline-prod/sailoperator:1.27.3
        - gcr.io/istio-release/pilot@sha256:a6e8f88e35f886a45ae645bce076305d1f66a703f80059b6449026159ef767a8
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        version: 1.27.3
      entries:
      - name: sailoperator.v1.27.3
        version: 1.27.3
      - name: sailoperator.v1.27.2
        version: 1.27.2
      - name: sailoperator.v1.27.1
        version: 1.27.1
      - name: sailoperator.v1.27.0
        version: 1.27.0
      name: stable-1.27
    - currentCSV: sailoperator.v1.28.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
          createdAt: "2025-12-10T15:50:55Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.28-latest
          - v1.28.1
          - v1.28.0
          - v1.27-latest
          - v1.27.4
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.7
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/proxyv2@sha256:8ff7b0d50cea9aa80512b6b9a75afc9021de6dc4d4151ce7946c5e04812a3de2
        - gcr.io/istio-release/proxyv2@sha256:4c830a386c93683bdf88249e089bc971361c419365663dc35aa1d5ba6be73c19
        - quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
        - gcr.io/istio-release/pilot@sha256:dcc1431b635a2151f891ba17e8911d56f1aa1e4acaff0c543d0036b849cb0369
        - gcr.io/istio-release/ztunnel@sha256:5991f9a9202c9a1a59c41efb7e8b89e7a9cfc0dc39f71afe91cdd78c6ecf697c
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/ztunnel@sha256:836e3f8b34527139523effc176cc138b93e69b4506ccb3dca75460e0ccb96138
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/install-cni@sha256:ba4c1ad3c67be6681883162c8543e15b2ea78a79658665a450bce0f475674de5
        - gcr.io/istio-release/proxyv2@sha256:f95a5e91204afbfad9d33d6f1bc0556a96bf997b18edede6c9e6b86eb07543a1
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/ztunnel@sha256:352baf7040b916b2d3de03388f14a8da0da5fa5e02a2589218261119b39a4594
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/install-cni@sha256:81295e43028ab50028f173a7ed2bf3d435201539b6b70f5938079771fe9e4561
        - quay.io/community-operator-pipeline-prod/sailoperator:1.28.1
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/pilot@sha256:5109ab9a1e7f1cdc60430e8823957655710dcc4977479b67de3d43bbab18a3f6
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/install-cni@sha256:8dda5692bbed6069d837acc084d5b142c325bba2491622a04ec42198c44562b4
        - gcr.io/istio-release/ztunnel@sha256:f562d8dd28e803061ee63853e7e1da07188ec24e734ebf0d95ec2126b41ac392
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        - gcr.io/istio-release/pilot@sha256:43e24609869d90ea7c12c878474e5905b02676e7dd827903be42c15599cde1b7
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/install-cni@sha256:a84971fd29ce54181dc4ceee6dbde8032bebd5a72301319a0468e5bc39902080
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/pilot@sha256:d0930e5cf028deeb636364595b4d0a42e05d5745850013bae297b32a9315ab18
        - gcr.io/istio-release/proxyv2@sha256:c68e79b821ba47c63af844422114af6d5cc01cc1fd8f1b0184c42be330afc1d2
        version: 1.28.1
      entries:
      - name: sailoperator.v1.28.1
        version: 1.28.1
      - name: sailoperator.v1.28.0
        version: 1.28.0
      name: stable-1.28
    defaultChannel: stable
    packageName: sailoperator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: ""
    name: ingress-node-firewall
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ingress-node-firewall.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ingressnodefirewall.openshift.io/v1alpha1",
                "kind": "IngressNodeFirewall",
                "metadata": {
                  "name": "ingressnodefirewall-demo2"
                },
                "spec": {
                  "ingress": [
                    {
                      "rules": [
                        {
                          "action": "Deny",
                          "order": 10,
                          "protocolConfig": {
                            "icmp": {
                              "icmpType": 8
                            },
                            "protocol": "ICMP"
                          }
                        },
                        {
                          "action": "Deny",
                          "order": 20,
                          "protocolConfig": {
                            "protocol": "TCP",
                            "tcp": {
                              "ports": "8000-9000"
                            }
                          }
                        }
                      ],
                      "sourceCIDRs": [
                        "172.16.0.0/12"
                      ]
                    },
                    {
                      "rules": [
                        {
                          "action": "Deny",
                          "order": 10,
                          "protocolConfig": {
                            "icmpv6": {
                              "icmpType": 128
                            },
                            "protocol": "ICMPv6"
                          }
                        }
                      ],
                      "sourceCIDRs": [
                        "fc00:f853:ccd:e793::0/64"
                      ]
                    }
                  ],
                  "interfaces": [
                    "eth0"
                  ],
                  "nodeSelector": {
                    "matchLabels": {
                      "do-node-ingress-firewall": "true"
                    }
                  }
                }
              },
              {
                "apiVersion": "ingressnodefirewall.openshift.io/v1alpha1",
                "kind": "IngressNodeFirewallConfig",
                "metadata": {
                  "name": "ingressnodefirewallconfig",
                  "namespace": "ingress-node-firewall-system"
                },
                "spec": {
                  "debug": false,
                  "ebpfProgramManagerMode": false,
                  "nodeSelector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ingress-node-firewall-rhel9-operator@sha256:be9d43da922a7128c25945c296cb7b05f25c91417baf286d22330f43c3fbb9ff
          createdAt: "2025-09-04T08:25:04Z"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.11.0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-ingress-node-firewall
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/ingress-node-firewall
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: IngressNodeFirewallConfig
            name: ingressnodefirewallconfigs.ingressnodefirewall.openshift.io
            version: v1alpha1
          - kind: IngressNodeFirewallNodeState
            name: ingressnodefirewallnodestates.ingressnodefirewall.openshift.io
            version: v1alpha1
          - kind: IngressNodeFirewall
            name: ingressnodefirewalls.ingressnodefirewall.openshift.io
            version: v1alpha1
        description: The Ingress node firewall operator, manages the configuration
          of cluster scoped Ingress Node firewall rules for Kubernetes.
        displayName: Ingress Node Firewall Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ingressnodefirewall
        links:
        - name: Ingress Node Firewall
          url: https://github.com/openshift/ingress-node-firewall
        maintainers:
        - email: mmahmoud@redhat.com
          name: msherif1234
        maturity: alpha
        provider:
          name: Red Hat, Inc
        relatedImages:
        - registry.redhat.io/openshift4/ingress-node-firewall-operator-bundle@sha256:82df35fea3406d71cb5f49f06098ea2946cd3efb4685b662eee0f60d27ecf33c
        - registry.redhat.io/openshift4/ingress-node-firewall-rhel9-operator@sha256:be9d43da922a7128c25945c296cb7b05f25c91417baf286d22330f43c3fbb9ff
        - registry.redhat.io/openshift4/ingress-node-firewall-rhel9@sha256:9d305bfa5f20dcdec7dd826670814ec8a92c7c177b00b9bddaae4c8a1cb31403
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 4.20.0-202512081147
      entries:
      - name: ingress-node-firewall.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: ingress-node-firewall.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: ingress-node-firewall.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: ingress-node-firewall.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: ingress-node-firewall.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: ingress-node-firewall.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: ingress-node-firewall.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: ingress-node-firewall
    provider:
      name: Red Hat, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://skupper.io
    name: skupper-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: skupper-operator.v1.4.8-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:1fd908e80ef21fe7d7051c400cb099f2f3ca51c8cdd698705ef9784d34688911
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:4c9cc9df83baa1ef37cfb429babe5b86a962b8bb096209b3fb74291c67c94000
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:0f6c6faf7fdf7b6d69bc5cc4b0266064d0035e295d0562b957d95c8c81699f2b
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:c665677c639699d6a5ef24aed5a1a3d9c0a5ee25f077a6db42a9fc6247d93132
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:eedde9f2019d4e919612bcc18f427c0d88b4846e773751af231ba0e560d48869
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:65602221cdff7f718d4149f4dead167d05dbbe0cea1eaa8bf4b98be588135583
        version: 1.4.8-rh-1
      entries:
      - name: skupper-operator.v1.4.8-rh-1
        version: 1.4.8-rh-1
      - name: skupper-operator.v1.4.7-rh-3
        version: 1.4.7-rh-3
      - name: skupper-operator.v1.4.7-rh-2
        version: 1.4.7-rh-2
      - name: skupper-operator.v1.4.7-rh-1
        version: 1.4.7-rh-1
      - name: skupper-operator.v1.4.5-rh-4
        version: 1.4.5-rh-4
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: alpha
    - currentCSV: skupper-operator.v1.9.4-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.9.4-rh-1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:97f1a693c36b909b31a8b3141a5ea07b9c369acb98f9f89771de8db09d209fad
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:9abea7559799ec9315c646ac00688582044a2783973efb0caf01f8c401ca4c82
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:b981b42e7ba47169636ab14f3ec092aadfdc374399b5856d77a0cefd5295fca1
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:8010bd9fa41fcd706a84d20bf54c27f59ab1f6c6e1a10881e42e1f71a1c7e237
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:039fcc42f7935dc3a5fea4da1b9b858ae0dabf6855a101543edd5fcea2b57392
        version: 1.9.4-rh-1
      entries:
      - name: skupper-operator.v1.9.4-rh-1
        version: 1.9.4-rh-1
      - name: skupper-operator.v1.9.2-rh-1
        version: 1.9.2-rh-1
      - name: skupper-operator.v1.9.1-rh-1
        version: 1.9.1-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable
    - currentCSV: skupper-operator.v1.9.4-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.9.4-rh-1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:9abea7559799ec9315c646ac00688582044a2783973efb0caf01f8c401ca4c82
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:b981b42e7ba47169636ab14f3ec092aadfdc374399b5856d77a0cefd5295fca1
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:8010bd9fa41fcd706a84d20bf54c27f59ab1f6c6e1a10881e42e1f71a1c7e237
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:039fcc42f7935dc3a5fea4da1b9b858ae0dabf6855a101543edd5fcea2b57392
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:97f1a693c36b909b31a8b3141a5ea07b9c369acb98f9f89771de8db09d209fad
        version: 1.9.4-rh-1
      entries:
      - name: skupper-operator.v1.9.4-rh-1
        version: 1.9.4-rh-1
      - name: skupper-operator.v1.9.2-rh-1
        version: 1.9.2-rh-1
      - name: skupper-operator.v1.9.1-rh-1
        version: 1.9.1-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1
    - currentCSV: skupper-operator.v1.4.8-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:1fd908e80ef21fe7d7051c400cb099f2f3ca51c8cdd698705ef9784d34688911
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:4c9cc9df83baa1ef37cfb429babe5b86a962b8bb096209b3fb74291c67c94000
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:0f6c6faf7fdf7b6d69bc5cc4b0266064d0035e295d0562b957d95c8c81699f2b
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:c665677c639699d6a5ef24aed5a1a3d9c0a5ee25f077a6db42a9fc6247d93132
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:eedde9f2019d4e919612bcc18f427c0d88b4846e773751af231ba0e560d48869
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:65602221cdff7f718d4149f4dead167d05dbbe0cea1eaa8bf4b98be588135583
        version: 1.4.8-rh-1
      entries:
      - name: skupper-operator.v1.4.8-rh-1
        version: 1.4.8-rh-1
      - name: skupper-operator.v1.4.7-rh-3
        version: 1.4.7-rh-3
      - name: skupper-operator.v1.4.7-rh-2
        version: 1.4.7-rh-2
      - name: skupper-operator.v1.4.7-rh-1
        version: 1.4.7-rh-1
      - name: skupper-operator.v1.4.5-rh-4
        version: 1.4.5-rh-4
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.4
    - currentCSV: skupper-operator.v1.5.5-rh-6
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:9e9e1f2288f0218e3ba2abf4bebac9731d7cf9f9c567e0f6de6767b0b66cbee4
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:1de071dabf620265252f3922c632f17f676ba716ce4c3df931a0ccb3871dbb6c
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:9e9e1f2288f0218e3ba2abf4bebac9731d7cf9f9c567e0f6de6767b0b66cbee4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:3e78ec8cdb729a704d5a26e54697f285ba7c0b9afee6160b7ecc703876120dea
        - registry.redhat.io/openshift4/ose-prometheus@sha256:53afaf53975807765fc3777314edd218c789c17680c1f57a8e33a8f9a76f38bf
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:5f8621d0013febcecbed4d7c82db11a4dded99ad8ce6b6d83858b9bdbe79ee5a
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:a5d7c1b2b9db672548126c0873d062a55667d93291fd3e32809d3c9c900c548e
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:aa261c79b421bd49f7b46974a3bb5a790d5a1a73dd8dea4e1d8a4634fb68a51f
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:be9dbcd2a3a1e1e536921390dcfd283fc45dc4423d2705376ef37a9fb53f7cf1
        version: 1.5.5-rh-6
      entries:
      - name: skupper-operator.v1.5.5-rh-6
        version: 1.5.5-rh-6
      - name: skupper-operator.v1.5.5-rh-5
        version: 1.5.5-rh-5
      - name: skupper-operator.v1.5.5-rh-4
        version: 1.5.5-rh-4
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.5
    - currentCSV: skupper-operator.v1.8.7-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:b0d43628b779a101a24e4b271318a34c21f3b71bcba2bf20804f941a93d27455
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.8.7-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:3adeef827eca0382cd410f7c3e99a0fee9b50791cb0e0c6fc130b72a2550684f
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5ea36e96f878577104ab7601e57e7a2a233f11dbdc533454f95e2e14a066d21f
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:56b8fde75a6e7df235c560a0f4b9114398da5ba8b20f75f1ea7338f48ce19506
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:d7d252cff08ba1589afd8707ed349f87d3b6214906a4fb49932bda0a4d19fee4
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:123488f0877c054a348f5b4135e68d77c17523bc4e5ea14dd73168372592f4ce
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:f798745e799515065af099a816057b9c98a741e951d30a0f45ed47ca50e6724e
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:61542c5f0989f51ac5d6c96f5d0e29aca75614b79e7626299c77c5a74636b564
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:b0d43628b779a101a24e4b271318a34c21f3b71bcba2bf20804f941a93d27455
        version: 1.8.7-rh-2
      entries:
      - name: skupper-operator.v1.8.7-rh-2
        version: 1.8.7-rh-2
      - name: skupper-operator.v1.8.7-rh-1
        version: 1.8.7-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.8
    - currentCSV: skupper-operator.v1.9.4-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.9.4-rh-1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:b981b42e7ba47169636ab14f3ec092aadfdc374399b5856d77a0cefd5295fca1
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:8010bd9fa41fcd706a84d20bf54c27f59ab1f6c6e1a10881e42e1f71a1c7e237
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:039fcc42f7935dc3a5fea4da1b9b858ae0dabf6855a101543edd5fcea2b57392
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:97f1a693c36b909b31a8b3141a5ea07b9c369acb98f9f89771de8db09d209fad
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:9abea7559799ec9315c646ac00688582044a2783973efb0caf01f8c401ca4c82
        version: 1.9.4-rh-1
      entries:
      - name: skupper-operator.v1.9.4-rh-1
        version: 1.9.4-rh-1
      - name: skupper-operator.v1.9.2-rh-1
        version: 1.9.2-rh-1
      - name: skupper-operator.v1.9.1-rh-1
        version: 1.9.1-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.9
    - currentCSV: skupper-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessGrant",
                "metadata": {
                  "name": "my-grant"
                },
                "spec": {
                  "expirationWindow": "1h",
                  "redemptionsAllowed": 10
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessToken",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "ca": "-----BEGIN CERTIFICATE-----\nMIIDNzCCAh+ … Q=\n-----END CERTIFICATE-----\n",
                  "code": "L1qCl2mZ7D81gbXp3ax4YT0K",
                  "url": "https://10.107.241.191:9090/86b80f6b-2b02-47ac-bab4-d285bb4f7b9d"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnector",
                "metadata": {
                  "name": "backend",
                  "namespace": "other"
                },
                "spec": {
                  "port": 8080,
                  "selector": "app=backend",
                  "siteNamespace": "west"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnectorBinding",
                "metadata": {
                  "name": "backend",
                  "namespace": "west"
                },
                "spec": {
                  "connectorNamespace": "other",
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "west-certificate"
                },
                "spec": {
                  "client": true
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Connector",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "port": 8080,
                  "routingKey": "backend",
                  "selector": "app=backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Link",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "endpoints": [
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "inter-router",
                      "port": "55671"
                    },
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "edge",
                      "port": "45671"
                    }
                  ],
                  "tlsCredentials": "my-token"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "host": "backend",
                  "port": 8080,
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "RouterAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "SecuredAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Site",
                "metadata": {
                  "name": "west"
                },
                "spec": {
                  "ha": true,
                  "linkAccess": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
          createdAt: "2025-10-21T19:59:28Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessGrant
            name: accessgrants.skupper.io
            version: v2alpha1
          - kind: AccessToken
            name: accesstokens.skupper.io
            version: v2alpha1
          - kind: AttachedConnectorBinding
            name: attachedconnectorbindings.skupper.io
            version: v2alpha1
          - kind: AttachedConnector
            name: attachedconnectors.skupper.io
            version: v2alpha1
          - kind: Certificate
            name: certificates.skupper.io
            version: v2alpha1
          - kind: Connector
            name: connectors.skupper.io
            version: v2alpha1
          - kind: Link
            name: links.skupper.io
            version: v2alpha1
          - kind: Listener
            name: listeners.skupper.io
            version: v2alpha1
          - kind: RouterAccess
            name: routeraccesses.skupper.io
            version: v2alpha1
          - kind: SecuredAccess
            name: securedaccesses.skupper.io
            version: v2alpha1
          - kind: Site
            name: sites.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:912185defb2a16b8cc9070e5decc704f1a0b363858e26c19701655ea34adf35a
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:c0f5768b542346686b8bd0132238f047d644a2ea1a7e3692d6d947f8f977dc93
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:ca6b432e34aa02e67e32f707bf1b4234760afc681a2561c19d85a503ecac00f0
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
        - registry.redhat.io/service-interconnect/skupper-kube-adaptor-rhel9@sha256:80cb17acc05e13c9aa3556d186a7ab8557085039db4105e21f0366d34b2074fe
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:d401f69273344a89767c1f385d74b7b5a4eb3b9552336dd097e06859e40ca4e5
        version: 2.1.2-rh-2
      entries:
      - name: skupper-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-operator.v2.1.1-rh-3
        version: 2.1.1-rh-3
      - name: skupper-operator.v2.0.1-rh-2
        version: 2.0.1-rh-2
      - name: skupper-operator.v2.0.0-rh-11
        version: 2.0.0-rh-11
      name: stable-2
    - currentCSV: skupper-operator.v2.0.1-rh-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessGrant",
                "metadata": {
                  "name": "my-grant"
                },
                "spec": {
                  "expirationWindow": "1h",
                  "redemptionsAllowed": 10
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessToken",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "ca": "-----BEGIN CERTIFICATE-----\nMIIDNzCCAh+ … Q=\n-----END CERTIFICATE-----\n",
                  "code": "L1qCl2mZ7D81gbXp3ax4YT0K",
                  "url": "https://10.107.241.191:9090/86b80f6b-2b02-47ac-bab4-d285bb4f7b9d"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnector",
                "metadata": {
                  "name": "backend",
                  "namespace": "other"
                },
                "spec": {
                  "port": 8080,
                  "selector": "app=backend",
                  "siteNamespace": "west"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnectorBinding",
                "metadata": {
                  "name": "backend",
                  "namespace": "west"
                },
                "spec": {
                  "connectorNamespace": "other",
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "west-certificate"
                },
                "spec": {
                  "client": true
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Connector",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "port": 8080,
                  "routingKey": "backend",
                  "selector": "app=backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Link",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "endpoints": [
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "inter-router",
                      "port": "55671"
                    },
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "edge",
                      "port": "45671"
                    }
                  ],
                  "tlsCredentials": "my-token"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "host": "backend",
                  "port": 8080,
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "RouterAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "SecuredAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Site",
                "metadata": {
                  "name": "west"
                },
                "spec": {
                  "ha": true,
                  "linkAccess": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:b092400308feb51d76d61616a26a76b1ec4f9962719e012187fdf931f0b93f25
          createdAt: "2025-11-28T14:26:01Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>2.0.0-rh-1 <2.0.1-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessGrant
            name: accessgrants.skupper.io
            version: v2alpha1
          - kind: AccessToken
            name: accesstokens.skupper.io
            version: v2alpha1
          - kind: AttachedConnectorBinding
            name: attachedconnectorbindings.skupper.io
            version: v2alpha1
          - kind: AttachedConnector
            name: attachedconnectors.skupper.io
            version: v2alpha1
          - kind: Certificate
            name: certificates.skupper.io
            version: v2alpha1
          - kind: Connector
            name: connectors.skupper.io
            version: v2alpha1
          - kind: Link
            name: links.skupper.io
            version: v2alpha1
          - kind: Listener
            name: listeners.skupper.io
            version: v2alpha1
          - kind: RouterAccess
            name: routeraccesses.skupper.io
            version: v2alpha1
          - kind: SecuredAccess
            name: securedaccesses.skupper.io
            version: v2alpha1
          - kind: Site
            name: sites.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:fe0081a3339698f20c44bdcf33885747f5a44d69aa7dcebc460dea586231b37f
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:96cae6bbe557d0f60cb9364919a7b12ea7c462c5d4c663d2084433393938cf2a
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:b8308c9c9eecf421756643ec0eaeacbacda70dfdbe5ec2c0883578e9db474952
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:b092400308feb51d76d61616a26a76b1ec4f9962719e012187fdf931f0b93f25
        - registry.redhat.io/service-interconnect/skupper-kube-adaptor-rhel9@sha256:215ead3803dc808532748db1105884c577e151a79170fa50bc4249161c335f49
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:c76a55e1687fb53e17e66d2b0e57849d637835147247acf7182b8a9eb4ce1575
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:aec9e002029591c20e94725cf0b09b0ae575139ac0bd0e3805f67e2446d4a702
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:f3430023e46fe5404176fd48b93cc6008836d2454131f09b00c38dacc0147e2b
        version: 2.0.1-rh-4
      entries:
      - name: skupper-operator.v2.0.1-rh-4
        version: 2.0.1-rh-4
      - name: skupper-operator.v2.0.1-rh-2
        version: 2.0.1-rh-2
      - name: skupper-operator.v2.0.0-rh-11
        version: 2.0.0-rh-11
      name: stable-2.0
    - currentCSV: skupper-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessGrant",
                "metadata": {
                  "name": "my-grant"
                },
                "spec": {
                  "expirationWindow": "1h",
                  "redemptionsAllowed": 10
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessToken",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "ca": "-----BEGIN CERTIFICATE-----\nMIIDNzCCAh+ … Q=\n-----END CERTIFICATE-----\n",
                  "code": "L1qCl2mZ7D81gbXp3ax4YT0K",
                  "url": "https://10.107.241.191:9090/86b80f6b-2b02-47ac-bab4-d285bb4f7b9d"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnector",
                "metadata": {
                  "name": "backend",
                  "namespace": "other"
                },
                "spec": {
                  "port": 8080,
                  "selector": "app=backend",
                  "siteNamespace": "west"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnectorBinding",
                "metadata": {
                  "name": "backend",
                  "namespace": "west"
                },
                "spec": {
                  "connectorNamespace": "other",
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "west-certificate"
                },
                "spec": {
                  "client": true
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Connector",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "port": 8080,
                  "routingKey": "backend",
                  "selector": "app=backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Link",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "endpoints": [
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "inter-router",
                      "port": "55671"
                    },
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "edge",
                      "port": "45671"
                    }
                  ],
                  "tlsCredentials": "my-token"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "host": "backend",
                  "port": 8080,
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "RouterAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "SecuredAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Site",
                "metadata": {
                  "name": "west"
                },
                "spec": {
                  "ha": true,
                  "linkAccess": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
          createdAt: "2025-10-21T19:59:28Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessGrant
            name: accessgrants.skupper.io
            version: v2alpha1
          - kind: AccessToken
            name: accesstokens.skupper.io
            version: v2alpha1
          - kind: AttachedConnectorBinding
            name: attachedconnectorbindings.skupper.io
            version: v2alpha1
          - kind: AttachedConnector
            name: attachedconnectors.skupper.io
            version: v2alpha1
          - kind: Certificate
            name: certificates.skupper.io
            version: v2alpha1
          - kind: Connector
            name: connectors.skupper.io
            version: v2alpha1
          - kind: Link
            name: links.skupper.io
            version: v2alpha1
          - kind: Listener
            name: listeners.skupper.io
            version: v2alpha1
          - kind: RouterAccess
            name: routeraccesses.skupper.io
            version: v2alpha1
          - kind: SecuredAccess
            name: securedaccesses.skupper.io
            version: v2alpha1
          - kind: Site
            name: sites.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:ca6b432e34aa02e67e32f707bf1b4234760afc681a2561c19d85a503ecac00f0
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
        - registry.redhat.io/service-interconnect/skupper-kube-adaptor-rhel9@sha256:80cb17acc05e13c9aa3556d186a7ab8557085039db4105e21f0366d34b2074fe
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:d401f69273344a89767c1f385d74b7b5a4eb3b9552336dd097e06859e40ca4e5
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:912185defb2a16b8cc9070e5decc704f1a0b363858e26c19701655ea34adf35a
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:c0f5768b542346686b8bd0132238f047d644a2ea1a7e3692d6d947f8f977dc93
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        version: 2.1.2-rh-2
      entries:
      - name: skupper-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-operator.v2.1.1-rh-3
        version: 2.1.1-rh-3
      - name: skupper-operator.v2.0.1-rh-2
        version: 2.0.1-rh-2
      - name: skupper-operator.v2.0.0-rh-11
        version: 2.0.0-rh-11
      name: stable-2.1
    defaultChannel: stable-2
    packageName: skupper-operator
    provider:
      name: Red Hat
      url: https://skupper.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: eG Innovations
      provider-url: https://www.eginnovations.com
    name: eginnovations-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eginnovations-operator.v0.0.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eginnovations.com/v1beta1",
                "kind": "EgUniversalAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "eginnovations-operator"
                  },
                  "name": "eguniversalagent",
                  "namespace": "egagent"
                },
                "spec": {
                  "agent": {
                    "env": [
                      {
                        "name": "EG_MANAGER",
                        "value": "Replace with eG Manager IP"
                      },
                      {
                        "name": "EG_MANAGER_PORT",
                        "value": "Replace with eG Manager Port"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "true"
          containerImage: docker.io/eginnovations/universal-agent-operator@sha256:b8e3e26dca1b94fabfd79496feb36f3f2de4434331ef9ca810125892a936dca7
          createdAt: "2025-09-11T20:08:00Z"
          description: eG Innovations provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with eG Universal Agent Operator.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/eginnovations/universal-agent-operator
          support: eG Innovations
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EgUniversalAgent is the Schema for the eguniversalagents
              API
            displayName: Eg Universal Agent
            kind: EgUniversalAgent
            name: eguniversalagents.eginnovations.com
            version: v1beta1
        description: |
          eG Innovations’ converged application and infrastructure performance monitoring capabilities provide end-to-end visibility and correlated analytics for every layer, every tier of your IT landscape.

          The eG Enterprise Universal Agent Operator automatically configures a host agent on every Kubernetes worker node. The host agent auto-discovers the worker nodes and application containers running as Pods on each node and tracks their performance and utilization levels. In-depth monitoring of applications running on containers is also provided using the same host agent. No additional agents are required for the containers.

          ### Capabilities
            * Rolls out the egagent pod per node to monitor its pods and the node itself
            * Automatic BTM profiler injection using webhook based injection for deep application monitoring and transection tracing.

          ### Installation
            1. Create the namespace "egagent" for installing eG Agent on OpenShift Cluster.

               <br />``` $ oc create ns egagent ```
            2. Add "egagent" serviceaccount to scc( Security Context Constraints ) of OpenShift Cluster as privileged using below command.

               <br />``` $ oc adm policy add-scc-to-user privileged -z egagent -n egagent ```
            2. Install eG Innovations Universal Agent operator from [OpenShift Container Platform](https://www.openshift.com/) OperatorHub.
            3. Create the eG Universal Agent CRD (Custom Resource Definition)
               a. Click "View YAML Example" and copy the yaml contents and save it to (filename).yaml on your host.
               b. To apply the CRD run the following command

               <br />``` $ oc apply -f (filename).yaml ```

          ### Required Parameters
            * EG\_MANAGER, EG\_MANAGER\_PORT - provide the ip and port of your eG Manager Installation.

          ### Advanced Options
            * Disable Certificate Checking - disable any certificate validation that may interact poorly with proxies within your cluster
            * Image Override - use a copy of the eG Iniversal Agent container image from a registry other that Docker's or Red Hat's
            * Environment variables - define environment variables for the eG Universal Agent container of for APM profiler.
            * Namespace Selectors- select a subset of namesapces to enable instrumentation for applications.

          For complete list of supported parameters and the detailed documentation available in [eG Innovations Docs](https://docs.eginnovations.com)
        displayName: eG Innovations Universal Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Monitoring
        - Tracing
        links:
        - name: eG Innovations Kubernetes Monitoring Overview
          url: https://www.eginnovations.com/documentation/Kubernetes/Introduction-to-Monitoring-Kubernetes.htm
        maintainers:
        - email: devops@eginnovations.com
          name: eG Innovations
        maturity: beta
        minKubeVersion: 1.26.0
        provider:
          name: eG Innovations
          url: https://www.eginnovations.com
        relatedImages:
        - docker.io/eginnovations/universal-agent-operator@sha256:b8e3e26dca1b94fabfd79496feb36f3f2de4434331ef9ca810125892a936dca7
        - registry.connect.redhat.com/eginnovations/universal-agent-operator@sha256:65f851074e0e1db57a62b559c0f10f9d30543011727aec3b832f9a35468139e9
        version: 0.0.11
      entries:
      - name: eginnovations-operator.v0.0.11
        version: 0.0.11
      name: beta
    defaultChannel: beta
    packageName: eginnovations-operator
    provider:
      name: eG Innovations
      url: https://www.eginnovations.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Aqua Security, Inc.
      provider-url: ""
    name: aqua-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aqua-operator.2022.4.860
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaCsp",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "namespace": "aqua",
                    "version": "2022.4",
                    "requirements": true
                  },
                  "common": {
                    "dbDiskSize": 10,
                    "databaseSecret": {
                      "key": "db-password",
                      "name": "aqua-database-password"
                    }
                  },
                  "database": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  },
                  "gateway": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  },
                  "server": {
                    "replicas": 1,
                    "service": "LoadBalancer"
                  },
                  "route": true,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaDatabase",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "splitDB": false
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  },
                  "diskSize": 10,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "runAsNonRoot": false,
                  "gateway": {
                    "host": "aqua-gateway",
                    "port": 8443
                  },
                  "token": "<<your-token>>"
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaKubeEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "version": "2022.4",
                    "serviceAccount": "aqua-kube-enforcer-sa"
                  },
                  "config": {
                    "gateway_address": "aqua-gateway.aqua:8443",
                    "cluster_name": "aqua-secure",
                    "imagePullSecret": "aqua-registry"
                  },
                  "deploy": {
                    "service": "ClusterIP"
                  },
                  "starboard": {
                    "infra": {
                      "serviceAccount": "starboard-operator"
                    },
                    "config": {
                      "imagePullSecret": "aqua-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    }
                  },
                  "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>"
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaGateway",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  }
                },
                "runAsNonRoot": false
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaScanner",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "deploy": {
                    "replicas": 1
                  },
                  "env": [],
                  "runAsNonRoot": false,
                  "login": {
                    "username": "<<YOUR AQUA USER NAME>>",
                    "password": "<<YOUR AQUA USER PASSWORD>>",
                    "host": "http://aqua-server:8080"
                  }
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaServer",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "LoadBalancer"
                  }
                },
                "runAsNonRoot": false
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaLightning",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "global": {
                    "gateway_address": "aqua-gateway.aqua:8443",
                    "cluster_name": "Default-cluster-name"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry"
                  },
                  "kubeEnforcer": {
                    "infra": {
                      "serviceAccount": "aqua-kube-enforcer-sa"
                    },
                    "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>",
                    "deploy": {
                      "service": "ClusterIP"
                    },
                    "starboard": {
                      "infra": {
                        "serviceAccount": "aqua-kube-enforcer-sa"
                      },
                      "config": {
                        "imagePullSecret": "aqua-registry"
                      },
                      "deploy": {
                        "replicas": 1
                      }
                    },
                    "env": []
                  },
                  "enforcer": {
                    "infra": {
                      "serviceAccount": "aqua-sa",
                      "version": "2022.4"
                    },
                    "deploy": null,
                    "token": "<<ENFORCER_GROUP_TOKEN>>",
                    "env": [
                    ],
                    "secret": {
                      "name": null,
                      "key": null
                    },
                    "runAsNonRoot": null,
                    "rhcosVersion": null
                  }
                }
              },
            {
                  "apiVersion": "operator.aquasec.com/v1alpha1",
                  "kind": "AquaCloudConnector",
                  "metadata": {
                    "name": "aqua"
                  },
                  "spec": {
                    "infra": {
                      "serviceAccount": "aqua-sa",
                      "version": "2022.4"
                    },
                    "common": {
                      "imagePullSecret": "aqua-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    },
                    "runAsNonRoot": false,
                    "gateway": {
                      "host": "aqua-gateway",
                      "port": "8443"
                    },
                    "login": {
                      "host": "aqua-gateway:8443",
                      "password": "<<YOUR AQUA USER PASSWORD>>",
                      "token": "<<YOUR AQUA CLOUD CONNECTOR TOKEN>>",
                      "username": "<<YOUR AQUA USER NAME>>"
                    },
                    "tunnels": [
                      {
                        "host": "<account>.azurecr.io",
                        "port": "443"
                      },
                      {
                        "host": "gke.gcr.io",
                        "port": "443"
                      },
                      {
                        "host": "<account>.jfrog.io",
                        "port": "443"
                      },
                      {
                        "host": "1.1.1.1",
                        "port": "443"
                      },
                      {
                        "region": "us-east1",
                        "type": "ecr"
                      }
                    ]
                  }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "true"
          containerImage: registry.connect.redhat.com/aquasec/aquasec@sha256:4f80ed26014ffc3f08e078a8be96072fa211297000e306816f600e0a6d1d8fb1
          createdAt: ""
          description: The Aqua Security Operator runs within a Openshift cluster
            and provides a means to deploy and manage Aqua Security cluster and components.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=1.0.2 <2022.4.860'
          operators.operatorframework.io/internal-objects: '["aquastarboards.aquasecurity.github.io","configauditreports.aquasecurity.github.io",
            "clusterconfigauditreports.aquasecurity.github.io"]'
          repository: https://github.com/aquasecurity/aqua-operator
          support: Aqua Security, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Aqua Security CSP Deployment with Aqua Operator
            displayName: AquaCsp
            kind: AquaCsp
            name: aquacsps.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Lightning Enforcers Deployment with Aqua Operator
            displayName: AquaLightningEnforcers
            kind: AquaLightning
            name: aqualightnings.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Database Deployment with Aqua Operator
            displayName: AquaDatabase
            kind: AquaDatabase
            name: aquadatabases.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Enforcer Deployment with Aqua Operator
            displayName: AquaEnforcer
            kind: AquaEnforcer
            name: aquaenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security KubeEnforcer Deployment with Aqua Operator
            displayName: AquaKubeEnforcer
            kind: AquaKubeEnforcer
            name: aquakubeenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Gateway Deployment with Aqua Operator
            displayName: AquaGateway
            kind: AquaGateway
            name: aquagateways.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Scanner Deployment with Aqua Operator
            displayName: AquaScanner
            kind: AquaScanner
            name: aquascanners.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Server Deployment with Aqua Operator
            displayName: AquaServer
            kind: AquaServer
            name: aquaservers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Starboard for kube-enforcer.
            displayName: AquaStarboard
            kind: AquaStarboard
            name: aquastarboards.aquasecurity.github.io
            version: v1alpha1
          - description: Aqua Cloud Connector Deployment with Aqua Operator
            displayName: AquaCloudConnector
            kind: AquaCloudConnector
            name: aquacloudconnectors.operator.aquasec.com
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ClusterConfigAuditReport
            kind: ClusterConfigAuditReport
            name: clusterconfigauditreports.aquasecurity.github.io
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ConfigAuditReport
            kind: ConfigAuditReport
            name: configauditreports.aquasecurity.github.io
            version: v1alpha1
        description: |-
          The Aqua Security Operator runs within an OpenShift cluster and provides a means to deploy and manage the Aqua Security cluster and components :
          * Server (aka “console”)
          * Database (for production environments we recommend to use an external database and not the Aqua default database)
          * Gateway
          * Enforcer (aka “agent”)
          * KubeEnforcer
          * Scanner
          * CSP (package that contains the Server, Database, and Gateway)
          * LightningEnforcer (package that contains Enforcer and Kube Enforcer) - Do not deploy using Certified Operator.
          * AquaCloudConnector.

          Use the Aqua-Operator to
          * Deploy Aqua Security components on OpenShift
          * Scale up Aqua Security components with extra replicas
          * Assign metadata tags to Aqua Security components

          The Aqua Operator provides a few [Custom Resources](https://github.com/aquasecurity/aqua-operator/tree/master/config/crd) for managing the Aqua CSP platform.

          ## Prerequisites
          There are only 4 prerequisites:
          1. Verify that the OpenShift version is officially supported [Verify Here](https://docs.aquasec.com/saas/workload-protection/product-information/system-requirements/)
          2. Make sure you have a license and to obtain one, please contact Aqua Security at [Contact Us](mailto:cloudsales@aquasec.com).
          3. Create a new project for aqua

              ```oc new-project aqua```

          4. Create the secret for Aqua Database password. If you are using an External Database, make sure you use those credentials.
          NOTE: This step is optional and you can specify the Database password when creating the CRs.

              ```oc create secret generic aqua-database-password --from-literal=db-password=<password> -n aqua```

          Please note that for the certified operator, the Docker registry secret is NOT needed. For the Red Hat certified operator, the Aqua application images are stored in the Red Hat Connect registry and will be automatically pulled by the Aqua operator.

          ## Choosing the right channel

          Channels are a flexible publishing mechanism that offers you different Aqua versions to deploy, at any point. These channels map to their respective Aqua versions, describing the maturity based on where they are in their lifecycle:
          * 4.6: This maps to the older version of Aqua 4.6.0
          * 5.0: This maps to the Aqua version 5.0.0
          * 5.3: This maps to the Aqua version 5.3.0
          * 6.0: This maps to the Aqua version 6.0.0
          * 6.2: This maps to the Aqua version 6.2.0
          * 6.5: This maps to the Aqua version 6.5.0
          * 2022.4: This is the latest and greatest version of Aqua (default)

          ## Deploying the Aqua Operator

          Aqua Operator follows an easy push button deployment that installs the operator in its own aqua namespace.
          Please refer to the instructions [here](https://github.com/aquasecurity/aqua-operator/blob/2022.4.0/docs/DeployOpenShiftOperator.md).

          ## Configuring the Aqua Operator

          Operators leverage CRDs as a configuration mechanism for the application. Aqua offers a number of CRDs that can be tweaked and configured as per your needs. Please refer to this [link](https://github.com/aquasecurity/aqua-operator/blob/6.2.0/docs/DeployOpenShiftOperator.md#aquacsp-crds) for Custom Resource examples for popular scenarios.

          ## Support

          For support please contact support@aquasec.com.
        displayName: Aqua Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - aqua-security
        - scanning
        - security
        - runtime-security
        links:
        - name: Aqua Security
          url: https://www.aquasec.com/
        - name: Aqua Operator Github
          url: https://github.com/aquasecurity/aqua-operator
        maintainers:
        - email: support@aquasec.com
          name: Aqua Support, Aqua Security
        maturity: alpha
        provider:
          name: Aqua Security, Inc.
        relatedImages:
        - registry.connect.redhat.com/aquasec/aquasec@sha256:4f80ed26014ffc3f08e078a8be96072fa211297000e306816f600e0a6d1d8fb1
        - registry.connect.redhat.com/aquasec/kube-bench@sha256:ee897dfaaa5db7d71c619f8df77f35407d522cd3de998d6b9d7ab7045fc18398
        - registry.connect.redhat.com/aquasec/console@sha256:94bc4ba34a0821bd1e563a3120757907aeab9bd927896dc88c7bef8f63e809fb
        - registry.connect.redhat.com/aquasec/gateway@sha256:224d105b6377b95132b817836e6ac958f50f8263c253131c7502a80d00acfb1c
        - registry.connect.redhat.com/aquasec/kube-enforcer@sha256:f4e6bfd885c0cb7d725cbf202a2c12f91822582594e3d08b930a7bd6a17b3bfd
        - registry.connect.redhat.com/aquasec/scanner@sha256:29a6c291b749e648151402e9dc1673cfc6bee8506a8a9fa0f502ff74b67fc32f
        - registry.connect.redhat.com/aquasec/aquasec-operator-bundle@sha256:ee3bb301dd248c9d367e90c5c8f8b9ce7fa1b21b59394f56a9b6b3ad6bdc2f70
        - registry.connect.redhat.com/aquasec/cloud-connector@sha256:f9da1936ac5e4b8e4537dca69f920c682fb9fac98d091680e01d2122f2b0f85f
        - registry.connect.redhat.com/aquasec/starboard@sha256:e57d0b89c3118d0b552eb59b1b4ada090597620d45d966a71da495f7841ad411
        - registry.connect.redhat.com/aquasec/database@sha256:c91ae82b0179c3ec4e156835a9f23b66767ba15514ff33fb268b35d8f04d6fde
        - registry.connect.redhat.com/aquasec/enforcer@sha256:22fa84ded89046e349ea31ce5dd4b1b269df797bf72e91d50ab47de0530f7cb1
        version: 2022.4.860
      entries:
      - name: aqua-operator.2022.4.860
        version: 2022.4.860
      - name: aqua-operator.2022.4.848
        version: 2022.4.848
      - name: aqua-operator.2022.4.836
        version: 2022.4.836
      - name: aqua-operator.2022.4.829
        version: 2022.4.829
      - name: aqua-operator.2022.4.818
        version: 2022.4.818
      - name: aqua-operator.2022.4.805
        version: 2022.4.805
      - name: aqua-operator.2022.4.760
        version: 2022.4.760
      - name: aqua-operator.2022.4.759
        version: 2022.4.759
      - name: aqua-operator.2022.4.720
        version: 2022.4.720
      - name: aqua-operator.2022.4.683
        version: 2022.4.683
      - name: aqua-operator.2022.4.662
        version: 2022.4.662
      - name: aqua-operator.2022.4.588
        version: 2022.4.588
      - name: aqua-operator.2022.4.587
        version: 2022.4.587
      - name: aqua-operator.2022.4.519
        version: 2022.4.519
      - name: aqua-operator.2022.4.518
        version: 2022.4.518
      name: "2022.4"
    defaultChannel: "2022.4"
    packageName: aqua-operator-certified
    provider:
      name: Aqua Security, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Fossul Framework
      provider-url: https://github.com/fossul/fossul
    name: fossul-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fossul-operator.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"fossul.io/v1\",\n    \"kind\":
            \"Backup\",\n    \"metadata\": {\n      \"name\": \"mariadb-sample\"\n
            \   },\n    \"spec\": {\n      \"deployment_name\": \"mariadb\",\n      \"policy\":
            \"daily\"\n    }\n  },\n  {\n    \"apiVersion\": \"fossul.io/v1\",\n    \"kind\":
            \"Restore\",\n    \"metadata\": {\n      \"name\": \"mariadb-sample\"\n
            \   },\n    \"spec\": {\n      \"deployment_name\": \"mariadb\",\n      \"policy\":
            \"daily\",\n      \"workflow_id\": \"xxxx\"\n    }\n  },        \n  {\n
            \   \"apiVersion\": \"fossul.io/v1\",\n    \"kind\": \"BackupConfig\",\n
            \   \"metadata\": {\n      \"name\": \"mariadb-sample\"\n    },\n    \"spec\":
            {\n      \"container_platform\": \"openshift\",\n      \"operator_controlled\":
            true,\n      \"auto_discovery\": false,\n      \"deployment_name\": \"mariadb\",\n
            \     \"deployment_type\": \"DeploymentConfig\",\n      \"job_retention\":
            50,\n      \"overwrite_pcv_on_restore\": true,\n      \"policies\": [\n
            \       {\n          \"policy\": \"hourly\",\n          \"retentionNumber\":
            3\n        },\n        {\n          \"policy\": \"daily\",\n          \"retentionNumber\":
            10\n        }\n      ],\n      \"pvc_deletion_timeout\": 300,\n      \"restore_to_new_pvc\":
            false,\n      \"snapshot_timeout\": 180,\n      \"storage_plugin\": \"csi.so\",\n
            \     \"app_plugin\": \"mariadb.so\"\n    }\n  },\n  {\n    \"apiVersion\":
            \"fossul.io/v1\",\n    \"kind\": \"BackupSchedule\",\n    \"metadata\":
            {\n      \"name\": \"mariadb-sample\"\n    },\n    \"spec\": {\n      \"cron_schedule\":
            \"59 23 * * *\",\n      \"deployment_name\": \"mariadb\",\n      \"policy\":
            \"daily\"\n\n    }\n  },\n  {\n    \"apiVersion\": \"fossul.io/v1\",\n
            \   \"kind\": \"Fossul\",\n    \"metadata\": {\n      \"name\": \"fossul-sample\"\n
            \   },\n    \"spec\": {\n      \"enable_routes\": false,\n      \"enable_virtualmachines\":
            false,\n      \"container_platform\": \"openshift\"\n    }\n  }\n]"
          capabilities: Full Lifecycle
          categories: Storage
          certified: "false"
          containerImage: quay.io/fossul/fossul-operator:v0.6.0
          createdAt: "2022-01-25T20:09:00Z"
          description: Fossul is a application centric container native backup and
            restore framework for databases or applications
          operators.operatorframework.io/builder: operator-sdk-v1.10.1-ocp
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/fossul/fossul
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Manages application backup configurations
            kind: BackupConfig
            name: backupconfigs.fossul.io
            version: v1
          - description: Manages application backups
            kind: Backup
            name: backups.fossul.io
            version: v1
          - description: Manages application restores
            kind: Restore
            name: restores.fossul.io
            version: v1
          - description: Manages application backup scheduling
            kind: BackupSchedule
            name: backupschedules.fossul.io
            version: v1
          - description: Manages deployment of the Fossul Framework
            kind: Fossul
            name: fossuls.fossul.io
            version: v1
        description: "## Fossul Framework\nApplication backup and restore framework
          for container native applications on Kubernetes and OpenShift. Fossul provides
          application centric backup and recovery enabling integration with the application
          creating an application consistent backup. Since there are many applications
          and providers for storage or archive Fossul enables plugins that allow proper
          integration. Fossul provides plugins for postgresql, mariadb, mysql and
          mongo as well as plugin to integrate with CSI snapshots. Plugins can be
          written in any language. The Fossul operator deploys Fossul via the Fossul
          custom resource and additionally provides BackupConfig, Backup, BackupSchedule
          and Restore custom resources. Each user can configure and manage their own
          backups with simple custom resources that can be part of CI/CD or source
          control. Users can also opt to manage backups through Fossul CLI/API instead
          of the custom resources provided by the operator.\n\n## Installation\nIt
          is recommended to install the operator into the openshift-operators namespace
          which is the default location for operators. Once the operator is installed
          create a new project called ```fossul``` and create the Fossul custom resource
          under the fossul namespace. This will deploy the Fossul Framework. You can
          choose another namespace for the Fossul Framework but then also need to
          provide the optional 'fossul_namespace' parameter with the spec for all
          the additional custom resources. This is required so the Fossul operator
          can communicate with Fossul.\n\nOnce Fossul is deployed you can manage backups
          either through custom resources provided by the operator or the Fossul CLI/API.
          If using the customer resources, first create a BackupConfig custom resource
          for every application you want to backup. Once that is done, you can optionally
          create a backup by simply creating a Backup custom resource. You can also
          create a BackupSchedule custom resource using cron syntax which will schedule
          your backup to occur on a regular interval or do so via a Kubernetes job.
          Finally if a backup has been created you can perform a restore through a
          custom resource as well, providing the workflow id from the completed backup.
          If you are creating backups through the custom resource the workflow id
          will be appended to the spec once the backup completes. If you are using
          the Fossul CLI/API to create backups you will need to get the workflow id
          through the Fossul CLI/API directly using the backupList action.\n\nFor
          users of the cli, a cli pod is deployed with credentials and if desired
          you can create or manage backups from within that pod. To use the API you
          need the credentials stored in the fossul secret. The cli has already been
          pre-configured with these credentials. The API can also be optionally exposed
          via routes and API documentation is under ```/api/v1/index.html```.\n\n##
          Quick Setup\nWhen creating Fossul custom resources generally you will only
          need to update the ```deployment_name``` and ```deployment_type``` (DeploymentConfig,
          Deployment or VirtualMachine). All custom resources must be created in the
          namespace where the database or application exists. \n\n### Deploy Fossul
          in fossul namespace\n```$ oc new-project fossul```\n<pre>\n$ vi fossul.yaml\nkind:
          Fossul\napiVersion: fossul.io/v1\nmetadata:\n  name: fossul-sample\n  namespace:
          fossul\nspec: {}\n</pre>\n```$ oc create -f fossul.yaml```\n\n### Deploy
          Mariadb Database\nMake sure you create all Fossul custom resources in the
          same namespace as the database, application or virtual machine\n\n### Create
          MariaDB Fossul BackupConfig\nCreates a backup configuration for MariaDB
          or MySQL databases\n\n```$ vi backupconfig.yaml```\n<pre>\nkind: BackupConfig\napiVersion:
          fossul.io/v1\nmetadata:\n  name: mariadb-sample\n  namespace: databases\nspec:\n
          \ container_platform: openshift\n  operator_controlled: true\n  auto_discovery:
          false\n  deployment_name: mariadb\n  deployment_type: DeploymentConfig\n
          \ job_retention: 50\n  overwrite_pcv_on_restore: true\n  policies:\n    -
          policy: hourly\n      retentionNumber: 3\n    - policy: daily\n      retentionNumber:
          10\n  pvc_deletion_timeout: 300\n  restore_to_new_pvc: false\n  snapshot_timeout:
          180\n  storage_plugin: csi.so\n  app_plugin: mariadb.so \n</pre>\n```$ oc
          create -f backupconfig.yaml```\n\n### Create PostgreSQL Fossul BackupConfig\nCreates
          a backup config for PostgreSQL databases, you need to ensure the user defined
          in secret has backup permissions\n\n```$ vi backupconfig.yaml```\n<pre>\nkind:
          BackupConfig\napiVersion: fossul.io/v1\nmetadata:\n  name: postgresql-sample\n
          \ namespace: databases\nspec:\n  container_platform: openshift\n  operator_controlled:
          true    \n  auto_discovery: false\n  deployment_name: postgresql \n  deployment_type:
          DeploymentConfig\n  job_retention: 50\n  overwrite_pcv_on_restore: true\n
          \ policies:\n    - policy: hourly\n      retentionNumber: 3\n    - policy:
          daily\n      retentionNumber: 10\n  pvc_deletion_timeout: 300\n  restore_to_new_pvc:
          false\n  snapshot_timeout: 180\n  storage_plugin: csi.so\n  app_plugin:
          postgres.so \n</pre>\n```$ oc create -f backupconfig.yaml```\n\n### Create
          Kubevirt Fossul BackupConfig\nCreates a backup configuration for virtual
          machines\n\n```$ vi backupconfig.yaml```\n<pre>\nkind: BackupConfig\napiVersion:
          fossul.io/v1\nmetadata:\n  name: rhel8-vm-sample\n  namespace: virtualmachines\nspec:\n
          \ container_platform: openshift\n  operator_controlled: true    \n  auto_discovery:
          false\n  deployment_name: rhel8-vm\n  deployment_type: VirtualMachine\n
          \ job_retention: 50\n  overwrite_pcv_on_restore: true\n  policies:\n    -
          policy: hourly\n      retentionNumber: 3\n    - policy: daily\n      retentionNumber:
          10\n  pvc_deletion_timeout: 300\n  restore_to_new_pvc: false\n  snapshot_timeout:
          180\n  storage_plugin: csi.so\n  app_plugin: kubevirt.so \n</pre>\n```$
          oc create -f backupconfig.yaml```\n\n### Create Tar Fossul BackupConfig\nCreates
          a backup config using tar to backup folders and files where csi snapshots
          are not desired\n\n```$ vi backupconfig.yaml```\n<pre>\nkind: BackupConfig\napiVersion:
          fossul.io/v1\nmetadata:\n  name: tar-sample\n  namespace: databases\nspec:\n
          \ container_platform: openshift\n  operator_controlled: true    \n  auto_discovery:
          false\n  deployment_name: anyname\n  job_retention: 50\n  policies:\n    -
          policy: hourly\n      retentionNumber: 3\n    - policy: daily\n      retentionNumber:
          10\n  backup_source_paths: /opt/app-root/src/test\n  storage_plugin: tar.so\n</pre>\n```$
          oc create -f backupconfig.yaml```\n\n### Create BackupSchedule\nA backup
          can be scheduled per policy, defined by backup configuration using cron
          syntax\n\n```$ vi backupschedule.yaml```\n<pre>\nkind: BackupSchedule\napiVersion:
          fossul.io/v1\nmetadata:\n  name: mariadb-sample\n  namespace: databases\nspec:\n
          \ cron_schedule: '59 23 * * *'\n  deployment_name: mariadb\n  policy: daily\n</pre>\n```$
          oc create -f backupschedule.yaml```\n\n### Create Backup\nA backup will
          be created according to policy and deleted either manually or as defined
          in retention policy\n\n```$ vi backup.yaml```\n<pre>\nkind: Backup\napiVersion:
          fossul.io/v1\nmetadata:\n  name: mariadb-sample\n  namespace: databases\nspec:\n
          \ deployment_name: mariadb\n  policy: daily\n</pre>\n```$ oc create -f backup.yaml```\n\n###
          Perform Restore\nA restore requires a workflow_id located in the backup
          spec, upon a successful restore the custom resource will deleted automatically\n\n```$
          vi restore.yaml```\n<pre>\nkind: Restore\napiVersion: fossul.io/v1\nmetadata:\n
          \ name: mariadb-sample\n  namespace: databases\nspec:\n  deployment_name:
          mariadb\n  policy: daily\n  workflow_id: xxxx\n</pre>\n```$ oc create -f
          restore.yaml```\n"
        displayName: Fossul Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - application
        - consistent
        links:
        - name: Fossul Framework Community
          url: https://github.com/fossul/fossul
        maintainers:
        - email: ktenzer@redhat.com
          name: Keith Tenzer
        maturity: alpha
        provider:
          name: Fossul Framework
          url: https://github.com/fossul/fossul
        relatedImages:
        - quay.io/openshift-community-operators/fossul-operator@sha256:95c043ddc818f44a303e27508e0acdcbbcb3d9b1329712c85a8e3fd4cb647e9a
        - quay.io/fossul/fossul-operator:v0.6.0
        version: 0.6.0
      entries:
      - name: fossul-operator.v0.6.0
        version: 0.6.0
      - name: fossul-operator.v0.5.0
        version: 0.5.0
      - name: fossul-operator.v0.4.0
        version: 0.4.0
      - name: fossul-operator.v0.3.0
        version: 0.3.0
      - name: fossul-operator.v0.2.0
        version: 0.2.0
      - name: fossul-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: fossul-operator
    provider:
      name: Fossul Framework
      url: https://github.com/fossul/fossul
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: NGINX Inc
      provider-url: ""
    name: nginx-ingress-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nginx-ingress-operator.v3.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.nginx.org/v1alpha1",
                "kind": "NginxIngress",
                "metadata": {
                  "name": "nginxingress-sample"
                },
                "spec": {
                  "controller": {
                    "affinity": {},
                    "annotations": {},
                    "appprotect": {
                      "enable": false
                    },
                    "appprotectdos": {
                      "debug": false,
                      "enable": false,
                      "maxDaemons": 0,
                      "maxWorkers": 0,
                      "memory": 0
                    },
                    "autoscaling": {
                      "annotations": {},
                      "behavior": {},
                      "enabled": false,
                      "maxReplicas": 3,
                      "minReplicas": 1,
                      "targetCPUUtilizationPercentage": 50,
                      "targetMemoryUtilizationPercentage": 50
                    },
                    "config": {
                      "annotations": {},
                      "entries": {}
                    },
                    "containerPort": {
                      "http": 80,
                      "https": 443
                    },
                    "customConfigMap": "",
                    "customPorts": [],
                    "defaultHTTPListenerPort": 80,
                    "defaultHTTPSListenerPort": 443,
                    "defaultTLS": {
                      "cert": "",
                      "key": "",
                      "secret": ""
                    },
                    "disableIPV6": false,
                    "dnsPolicy": "ClusterFirst",
                    "enableCertManager": false,
                    "enableCustomResources": true,
                    "enableExternalDNS": false,
                    "enableLatencyMetrics": false,
                    "enableOIDC": false,
                    "enableSSLDynamicReload": true,
                    "enableSnippets": false,
                    "enableTLSPassthrough": false,
                    "env": [],
                    "extraContainers": [],
                    "globalConfiguration": {
                      "create": false,
                      "spec": {}
                    },
                    "healthStatus": false,
                    "healthStatusURI": "/nginx-health",
                    "hostNetwork": false,
                    "hostPort": {
                      "enable": false,
                      "http": 80,
                      "https": 443
                    },
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "nginx/nginx-ingress",
                      "tag": "5.3.1-ubi"
                    },
                    "ingressClass": {
                      "create": true,
                      "name": "nginx",
                      "setAsDefaultIngress": false
                    },
                    "initContainerResources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "initContainers": [],
                    "kind": "deployment",
                    "lifecycle": {},
                    "logFormat": "glog",
                    "logLevel": "info",
                    "mgmt": {
                      "licenseTokenSecretName": "license-token"
                    },
                    "minReadySeconds": 0,
                    "name": "controller",
                    "nginxDebug": false,
                    "nginxReloadTimeout": 60000,
                    "nginxStatus": {
                      "allowCidrs": "127.0.0.1",
                      "enable": true,
                      "port": 8080
                    },
                    "nginxplus": false,
                    "pod": {
                      "annotations": {},
                      "extraLabels": {}
                    },
                    "podDisruptionBudget": {
                      "annotations": {},
                      "enabled": false
                    },
                    "readOnlyRootFilesystem": false,
                    "readyStatus": {
                      "enable": true,
                      "initialDelaySeconds": 0,
                      "port": 8081
                    },
                    "replicaCount": 1,
                    "reportIngressStatus": {
                      "annotations": {},
                      "enable": true,
                      "enableLeaderElection": true,
                      "ingressLink": "",
                      "leaderElectionLockName": "nginx-ingress-leader"
                    },
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "selectorLabels": {},
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "create": true,
                      "customPorts": [],
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraLabels": {},
                      "httpPort": {
                        "enable": true,
                        "port": 80,
                        "targetPort": 80
                      },
                      "httpsPort": {
                        "enable": true,
                        "port": 443,
                        "targetPort": 443
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "type": "LoadBalancer"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "imagePullSecretName": "",
                      "imagePullSecretsNames": []
                    },
                    "shareProcessNamespace": false,
                    "strategy": {},
                    "terminationGracePeriodSeconds": 30,
                    "tlsPassthroughPort": 443,
                    "tolerations": [],
                    "volumeMounts": [],
                    "volumes": [],
                    "watchNamespace": "",
                    "watchNamespaceLabel": "",
                    "watchSecretNamespace": "",
                    "wildcardTLS": {
                      "cert": "",
                      "key": "",
                      "secret": ""
                    }
                  },
                  "nginxServiceMesh": {
                    "enable": false,
                    "enableEgress": false
                  },
                  "prometheus": {
                    "create": true,
                    "port": 9113,
                    "scheme": "http",
                    "secret": "",
                    "service": {
                      "create": false,
                      "labels": {
                        "service": "nginx-ingress-prometheus-service"
                      }
                    },
                    "serviceMonitor": {
                      "create": false,
                      "endpoints": [
                        {
                          "port": "prometheus"
                        }
                      ],
                      "labels": {},
                      "selectorMatchLabels": {
                        "service": "nginx-ingress-prometheus-service"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "serviceInsight": {
                    "create": false,
                    "port": 9114,
                    "scheme": "http",
                    "secret": ""
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Networking
          certified: "true"
          containerImage: quay.io/nginx/nginx-ingress-operator@sha256:d304c31f6bad9b06eda91a4a685f41348680da3c43fb26dfbae0e508b4e0be64
          createdAt: "2025-12-17T16:13:02Z"
          description: The NGINX Ingress Operator is a Kubernetes/OpenShift component
            which deploys and manages one or more NGINX/NGINX Plus Ingress Controllers
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: nginx-ingress
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/nginx/nginx-ingress-helm-operator
          support: NGINX Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The `NginxIngress` Custom Resource is the definition of a
              deployment of the Ingress Controller.
            displayName: Nginx Ingress Controller
            kind: NginxIngress
            name: nginxingresses.charts.nginx.org
            version: v1alpha1
        description: The NGINX Ingress Operator is a Kubernetes/OpenShift component
          which deploys and manages one or more NGINX/NGINX Plus Ingress Controllers
        displayName: Nginx Ingress Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nginx
        - ingress-controller
        - ingress
        - controller
        - kubernetes
        - openshift
        links:
        - name: Nginx Ingress Operator
          url: https://github.com/nginx/nginx-ingress-helm-operator
        maintainers:
        - email: kubernetes@nginx.com
          name: NGINX Inc
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: NGINX Inc
        relatedImages:
        - registry.connect.redhat.com/nginx/nginx-ingress-operator-bundle@sha256:d7572b2333b06a085849f284b9abc800b2bc2d3ce040747813e65193f52b9578
        - quay.io/brancz/kube-rbac-proxy@sha256:f5fbfec6a2b28726763880345f231d293fabb016f7abf6ad725c884bb0508edd
        - quay.io/nginx/nginx-ingress-operator@sha256:d304c31f6bad9b06eda91a4a685f41348680da3c43fb26dfbae0e508b4e0be64
        version: 3.4.1
      entries:
      - name: nginx-ingress-operator.v3.4.1
        version: 3.4.1
      - name: nginx-ingress-operator.v3.4.0
        version: 3.4.0
      - name: nginx-ingress-operator.v3.3.1
        version: 3.3.1
      name: alpha
    defaultChannel: alpha
    packageName: nginx-ingress-operator
    provider:
      name: NGINX Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stackwatch
      provider-url: www.kubecost.com
    name: kubecost
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubecost.v2.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.kubecost.com/v1alpha1",
                "kind": "CostAnalyzer",
                "metadata": {
                  "name": "costanalyzer-sample"
                },
                "spec": {
                  "global": {
                    "prometheus": {
                      "enabled": true,
                      "fqdn": "http://cost-analyzer-prometheus-server.default.svc"
                    },
                    "grafana": {
                      "enabled": false,
                      "domainName": "cost-analyzer-grafana.default.svc",
                      "scheme": "http",
                      "proxy": false
                    },
                    "gcpstore": {
                      "enabled": false
                    },
                    "gmp": {
                      "enabled": false,
                      "prometheusServerEndpoint": "http://localhost:8085/",
                      "gmpProxy": {
                        "enabled": false,
                        "image": "gke.gcr.io/prometheus-engine/frontend:v0.4.1-gke.0",
                        "imagePullPolicy": "Always",
                        "name": "gmp-proxy",
                        "port": 8085,
                        "projectId": "YOUR_PROJECT_ID"
                      }
                    },
                    "amp": {
                      "enabled": false,
                      "prometheusServerEndpoint": "http://localhost:8005/workspaces/<workspaceId>/",
                      "remoteWriteService": "https://aps-workspaces.us-west-2.amazonaws.com/workspaces/<workspaceId>/api/v1/remote_write",
                      "sigv4": {
                        "region": "us-west-2"
                      }
                    },
                    "mimirProxy": {
                      "enabled": false,
                      "name": "mimir-proxy",
                      "image": "nginxinc/nginx-unprivileged",
                      "port": 8085,
                      "mimirEndpoint": "$mimir_endpoint",
                      "orgIdentifier": "$your_tenant_ID"
                    },
                    "notifications": {
                      "alertmanager": {
                        "enabled": false,
                        "fqdn": "http://cost-analyzer-prometheus-server.default.svc"
                      }
                    },
                    "savedReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Example Saved Report 0",
                          "window": "today",
                          "aggregateBy": "namespace",
                          "chartDisplay": "category",
                          "idle": "separate",
                          "rate": "cumulative",
                          "accumulate": false,
                          "filters": [
                            {
                              "key": "cluster",
                              "operator": ":",
                              "value": "dev"
                            }
                          ]
                        },
                        {
                          "title": "Example Saved Report 1",
                          "window": "month",
                          "aggregateBy": "controllerKind",
                          "chartDisplay": "category",
                          "idle": "share",
                          "rate": "monthly",
                          "accumulate": false,
                          "filters": [
                            {
                              "key": "namespace",
                              "operator": "!:",
                              "value": "kubecost"
                            }
                          ]
                        },
                        {
                          "title": "Example Saved Report 2",
                          "window": "2020-11-11T00:00:00Z,2020-12-09T23:59:59Z",
                          "aggregateBy": "service",
                          "chartDisplay": "category",
                          "idle": "hide",
                          "rate": "daily",
                          "accumulate": true,
                          "filters": []
                        }
                      ]
                    },
                    "assetReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Example Asset Report 0",
                          "window": "today",
                          "aggregateBy": "type",
                          "accumulate": false,
                          "filters": [
                            {
                              "property": "cluster",
                              "value": "cluster-one"
                            }
                          ]
                        }
                      ]
                    },
                    "advancedReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Example Advanced Report 0",
                          "window": "7d",
                          "aggregateBy": "namespace",
                          "filters": [
                            {
                              "key": "cluster",
                              "operator": ":",
                              "value": "dev"
                            }
                          ],
                          "cloudBreakdown": "service",
                          "cloudJoin": "label:kubernetes_namespace"
                        }
                      ]
                    },
                    "cloudCostReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Cloud Cost Report 0",
                          "window": "today",
                          "aggregateBy": "service",
                          "accumulate": false
                        }
                      ]
                    },
                    "podAnnotations": {},
                    "additionalLabels": {},
                    "securityContext": {
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      },
                      "fsGroup": 1001,
                      "runAsGroup": 1001,
                      "runAsUser": 1001,
                      "fsGroupChangePolicy": "OnRootMismatch"
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "platforms": {
                      "openshift": {
                        "enabled": true,
                        "route": {
                          "enabled": false,
                          "annotations": {}
                        },
                        "scc": {
                          "nodeExporter": false,
                          "networkCosts": false
                        },
                        "securityContext": {
                          "runAsNonRoot": true,
                          "seccompProfile": {
                            "type": "RuntimeDefault"
                          }
                        }
                      },
                      "cicd": {
                        "enabled": true,
                        "skipSanityChecks": true
                      }
                    }
                  },
                  "upgrade": {
                    "toV2": false
                  },
                  "kubecostToken": null,
                  "pricingCsv": {
                    "enabled": false,
                    "location": {
                      "provider": "AWS",
                      "region": "us-east-1",
                      "URI": "s3://kc-csv-test/pricing_schema.csv",
                      "csvAccessCredentials": "pricing-schema-access-secret"
                    }
                  },
                  "saml": {
                    "enabled": false,
                    "rbac": {
                      "enabled": false
                    }
                  },
                  "oidc": {
                    "enabled": false,
                    "clientID": "",
                    "clientSecret": "",
                    "existingCustomSecret": {
                      "enabled": false,
                      "name": ""
                    },
                    "skipOnlineTokenValidation": false,
                    "rbac": {
                      "enabled": false
                    }
                  },
                  "systemProxy": {
                    "enabled": false,
                    "httpProxyUrl": "",
                    "httpsProxyUrl": "",
                    "noProxy": ""
                  },
                  "kubecostFrontend": {
                    "enabled": true,
                    "deployMethod": "singlepod",
                    "haReplicas": 2,
                    "image": "gcr.io/kubecost1/frontend",
                    "imagePullPolicy": "Always",
                    "resources": {
                      "requests": {
                        "cpu": "10m",
                        "memory": "55Mi"
                      }
                    },
                    "deploymentStrategy": {},
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 1,
                      "periodSeconds": 5,
                      "failureThreshold": 6
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 1,
                      "periodSeconds": 5,
                      "failureThreshold": 6
                    },
                    "ipv6": {
                      "enabled": true
                    },
                    "useDefaultFqdn": false
                  },
                  "kubecostMetrics": {
                    "exporter": {
                      "enabled": false,
                      "port": 9005,
                      "prometheusScrape": true,
                      "resources": {},
                      "tolerations": [],
                      "affinity": {},
                      "service": {
                        "annotations": {}
                      },
                      "serviceMonitor": {
                        "enabled": false,
                        "additionalLabels": {},
                        "metricRelabelings": [],
                        "relabelings": []
                      },
                      "priorityClassName": "",
                      "additionalLabels": {},
                      "nodeSelector": {},
                      "extraArgs": []
                    }
                  },
                  "sigV4Proxy": {
                    "image": "public.ecr.aws/aws-observability/aws-sigv4-proxy:latest",
                    "imagePullPolicy": "Always",
                    "name": "aps",
                    "port": 8005,
                    "region": "us-west-2",
                    "host": "aps-workspaces.us-west-2.amazonaws.com",
                    "extraEnv": null,
                    "resources": {}
                  },
                  "kubecostModel": {
                    "image": "gcr.io/kubecost1/cost-model",
                    "imagePullPolicy": "Always",
                    "outOfClusterPromMetricsEnabled": false,
                    "warmCache": false,
                    "etl": true,
                    "etlFileStoreEnabled": true,
                    "etlDailyStoreDurationDays": 91,
                    "etlHourlyStoreDurationHours": 49,
                    "etlWeeklyStoreDurationWeeks": 53,
                    "etlReadOnlyMode": false,
                    "plugins": {
                      "enabled": false,
                      "install": {
                        "enabled": false,
                        "fullImageName": "curlimages/curl:latest",
                        "securityContext": {
                          "allowPrivilegeEscalation": false,
                          "seccompProfile": {
                            "type": "RuntimeDefault"
                          },
                          "capabilities": {
                            "drop": [
                              "ALL"
                            ]
                          },
                          "readOnlyRootFilesystem": true,
                          "runAsNonRoot": true,
                          "runAsUser": 1001
                        }
                      },
                      "folder": "/opt/opencost/plugin",
                      "enabledPlugins": [],
                      "configSecret": "kubecost-plugin-secret"
                    },
                    "cloudCost": {
                      "labelList": {
                        "IsIncludeList": false,
                        "labels": ""
                      },
                      "topNItems": 1000
                    },
                    "allocation": null,
                    "containerStatsEnabled": true,
                    "maxQueryConcurrency": 5,
                    "resources": {
                      "requests": {
                        "cpu": "200m",
                        "memory": "55Mi"
                      }
                    },
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "extraArgs": [],
                    "ingress": {
                      "enabled": false,
                      "labels": null,
                      "annotations": null,
                      "paths": [
                        "/"
                      ],
                      "pathType": "ImplementationSpecific",
                      "hosts": [
                        "cost-analyzer-model.local"
                      ],
                      "tls": []
                    },
                    "utcOffset": "+00:00",
                    "extraPorts": []
                  },
                  "etlUtils": {
                    "enabled": false,
                    "fullImageName": null,
                    "resources": {},
                    "env": {},
                    "nodeSelector": {},
                    "tolerations": {},
                    "affinity": {}
                  },
                  "ingress": {
                    "enabled": false,
                    "labels": null,
                    "annotations": null,
                    "paths": [
                      "/"
                    ],
                    "pathType": "ImplementationSpecific",
                    "hosts": [
                      "cost-analyzer.local"
                    ],
                    "tls": []
                  },
                  "nodeSelector": {},
                  "tolerations": [],
                  "affinity": {},
                  "topologySpreadConstraints": [],
                  "priority": {
                    "enabled": false,
                    "name": ""
                  },
                  "networkPolicy": {
                    "enabled": false,
                    "denyEgress": true,
                    "sameNamespace": true,
                    "costAnalyzer": {
                      "enabled": false,
                      "annotations": {},
                      "additionalLabels": {}
                    }
                  },
                  "extraVolumes": [],
                  "extraVolumeMounts": [],
                  "persistentVolume": {
                    "size": "32Gi",
                    "dbSize": "32.0Gi",
                    "enabled": true,
                    "labels": {},
                    "annotations": {},
                    "dbPVEnabled": false
                  },
                  "service": {
                    "type": "ClusterIP",
                    "port": 9090,
                    "targetPort": 9090,
                    "nodePort": {},
                    "labels": {},
                    "annotations": {},
                    "sessionAffinity": {
                      "enabled": false,
                      "timeoutSeconds": 10800
                    }
                  },
                  "prometheus": {
                    "rbac": {
                      "create": true
                    },
                    "serviceAccounts": {
                      "alertmanager": {
                        "create": true,
                        "name": null
                      },
                      "nodeExporter": {
                        "create": true,
                        "name": null
                      },
                      "pushgateway": {
                        "create": true,
                        "name": null
                      },
                      "server": {
                        "create": true,
                        "name": null,
                        "annotations": {}
                      }
                    },
                    "imagePullSecrets": null,
                    "extraScrapeConfigs": "- job_name: kubecost\n  honor_labels: true\n  scrape_interval: 1m\n  scrape_timeout: 60s\n  metrics_path: /metrics\n  scheme: http\n  dns_sd_configs:\n  - names:\n    - {{ template \"cost-analyzer.serviceName\" . }}\n    type: 'A'\n    port: 9003\n- job_name: kubecost-networking\n  kubernetes_sd_configs:\n    - role: pod\n  relabel_configs:\n  # Scrape only the the targets matching the following metadata\n    - source_labels: [__meta_kubernetes_pod_label_app_kubernetes_io_instance]\n      action: keep\n      regex:  kubecost\n    - source_labels: [__meta_kubernetes_pod_label_app_kubernetes_io_name]\n      action: keep\n      regex:  network-costs\n",
                    "server": {
                      "enabled": true,
                      "name": "server",
                      "sidecarContainers": null,
                      "strategy": {
                        "type": "Recreate",
                        "rollingUpdate": null
                      },
                      "image": {
                        "repository": "quay.io/prometheus/prometheus",
                        "tag": "v2.50.1",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "prefixURL": "",
                      "baseURL": "",
                      "env": [],
                      "extraFlags": [
                        "web.enable-lifecycle"
                      ],
                      "configPath": "/etc/config/prometheus.yml",
                      "global": {
                        "scrape_interval": "1m",
                        "scrape_timeout": "60s",
                        "evaluation_interval": "1m",
                        "external_labels": {
                          "cluster_id": "cluster-one"
                        }
                      },
                      "remoteWrite": {},
                      "remoteRead": {},
                      "extraArgs": {
                        "query.max-concurrency": 1,
                        "query.max-samples": 100000000
                      },
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "extraHostPathMounts": [],
                      "extraConfigmapMounts": [],
                      "extraSecretMounts": [],
                      "configMapOverrideName": "",
                      "ingress": {
                        "enabled": false,
                        "annotations": {},
                        "extraLabels": {},
                        "hosts": [],
                        "pathType": "Prefix",
                        "extraPaths": [],
                        "tls": []
                      },
                      "tolerations": [],
                      "nodeSelector": {},
                      "affinity": {},
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "persistentVolume": {
                        "enabled": true,
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "existingClaim": "",
                        "mountPath": "/data",
                        "size": "32Gi",
                        "subPath": ""
                      },
                      "emptyDir": {
                        "sizeLimit": ""
                      },
                      "podAnnotations": {},
                      "deploymentAnnotations": {},
                      "podLabels": {},
                      "alertmanagers": [],
                      "replicaCount": 1,
                      "statefulSet": {
                        "enabled": false,
                        "annotations": {},
                        "labels": {},
                        "podManagementPolicy": "OrderedReady",
                        "headless": {
                          "annotations": {},
                          "labels": {},
                          "servicePort": 80
                        }
                      },
                      "readinessProbeInitialDelay": 5,
                      "readinessProbeTimeout": 3,
                      "readinessProbeFailureThreshold": 3,
                      "readinessProbeSuccessThreshold": 1,
                      "livenessProbeInitialDelay": 5,
                      "livenessProbeTimeout": 3,
                      "livenessProbeFailureThreshold": 3,
                      "livenessProbeSuccessThreshold": 1,
                      "resources": {},
                      "verticalAutoscaler": {
                        "enabled": false
                      },
                      "securityContext": {},
                      "containerSecurityContext": {},
                      "service": {
                        "annotations": {},
                        "labels": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 80,
                        "sessionAffinity": "None",
                        "type": "ClusterIP",
                        "gRPC": {
                          "enabled": false,
                          "servicePort": 10901
                        },
                        "statefulsetReplica": {
                          "enabled": false,
                          "replica": 0
                        }
                      },
                      "terminationGracePeriodSeconds": 300,
                      "retention": "97h"
                    },
                    "alertmanager": {
                      "enabled": false,
                      "strategy": {
                        "type": "Recreate",
                        "rollingUpdate": null
                      },
                      "name": "alertmanager",
                      "image": {
                        "repository": "quay.io/prometheus/alertmanager",
                        "tag": "v0.27.0",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "extraArgs": {},
                      "prefixURL": "",
                      "baseURL": "http://localhost:9093",
                      "extraEnv": {},
                      "extraSecretMounts": [],
                      "configMapOverrideName": "",
                      "configFromSecret": "",
                      "configFileName": "alertmanager.yml",
                      "ingress": {
                        "enabled": false,
                        "annotations": {},
                        "extraLabels": {},
                        "hosts": [],
                        "extraPaths": [],
                        "tls": []
                      },
                      "tolerations": [],
                      "nodeSelector": {},
                      "affinity": {},
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "persistentVolume": {
                        "enabled": true,
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "existingClaim": "",
                        "mountPath": "/data",
                        "size": "2Gi",
                        "subPath": ""
                      },
                      "podAnnotations": {},
                      "podLabels": {},
                      "replicaCount": 1,
                      "statefulSet": {
                        "enabled": false,
                        "podManagementPolicy": "OrderedReady",
                        "headless": {
                          "annotations": {},
                          "labels": {},
                          "servicePort": 80
                        }
                      },
                      "resources": {},
                      "securityContext": {
                        "runAsUser": 1001,
                        "runAsNonRoot": true,
                        "runAsGroup": 1001,
                        "fsGroup": 1001
                      },
                      "service": {
                        "annotations": {},
                        "labels": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 80,
                        "sessionAffinity": "None",
                        "type": "ClusterIP"
                      }
                    },
                    "alertmanagerFiles": {
                      "alertmanager.yml": {
                        "global": {},
                        "receivers": [
                          {
                            "name": "default-receiver"
                          }
                        ],
                        "route": {
                          "group_wait": "10s",
                          "group_interval": "5m",
                          "receiver": "default-receiver",
                          "repeat_interval": "3h"
                        }
                      }
                    },
                    "configmapReload": {
                      "prometheus": {
                        "enabled": false,
                        "name": "configmap-reload",
                        "image": {
                          "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                          "tag": "v0.72.0",
                          "pullPolicy": "IfNotPresent"
                        },
                        "extraArgs": {},
                        "extraVolumeDirs": [],
                        "extraConfigmapMounts": [],
                        "resources": {},
                        "containerSecurityContext": {}
                      },
                      "alertmanager": {
                        "enabled": false,
                        "name": "configmap-reload",
                        "image": {
                          "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                          "tag": "v0.72.0",
                          "pullPolicy": "IfNotPresent"
                        },
                        "extraArgs": {},
                        "extraVolumeDirs": [],
                        "extraConfigmapMounts": [],
                        "resources": {}
                      }
                    },
                    "nodeExporter": {
                      "enabled": false,
                      "hostNetwork": true,
                      "hostPID": true,
                      "dnsPolicy": "ClusterFirstWithHostNet",
                      "name": "node-exporter",
                      "image": {
                        "repository": "prom/node-exporter",
                        "tag": "v1.7.0",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      },
                      "extraArgs": {},
                      "extraHostPathMounts": [],
                      "extraConfigmapMounts": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "deploymentAnnotations": {},
                      "pod": {
                        "labels": {}
                      },
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "resources": {},
                      "securityContext": {},
                      "service": {
                        "annotations": {
                          "prometheus.io/scrape": "true"
                        },
                        "labels": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "hostPort": 9100,
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 9100,
                        "type": "ClusterIP"
                      }
                    },
                    "pushgateway": {
                      "enabled": false,
                      "name": "pushgateway",
                      "image": {
                        "repository": "prom/pushgateway",
                        "tag": "v1.6.2",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "extraArgs": {},
                      "ingress": {
                        "enabled": false,
                        "annotations": {},
                        "hosts": [],
                        "extraPaths": [],
                        "tls": []
                      },
                      "tolerations": [],
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "replicaCount": 1,
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "resources": {},
                      "securityContext": {
                        "runAsUser": 1001,
                        "runAsNonRoot": true
                      },
                      "service": {
                        "annotations": {
                          "prometheus.io/probe": "pushgateway"
                        },
                        "labels": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 9091,
                        "type": "ClusterIP"
                      },
                      "strategy": {
                        "type": "Recreate",
                        "rollingUpdate": null
                      },
                      "persistentVolume": {
                        "enabled": true,
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "existingClaim": "",
                        "mountPath": "/data",
                        "size": "2Gi",
                        "subPath": ""
                      }
                    },
                    "serverFiles": {
                      "alerting_rules.yml": {},
                      "alerts": {},
                      "recording_rules.yml": {},
                      "prometheus.yml": {
                        "rule_files": [
                          "/etc/config/recording_rules.yml",
                          "/etc/config/alerting_rules.yml",
                          "/etc/config/rules",
                          "/etc/config/alerts"
                        ],
                        "scrape_configs": [
                          {
                            "job_name": "prometheus",
                            "static_configs": [
                              {
                                "targets": [
                                  "localhost:9090"
                                ]
                              }
                            ]
                          },
                          {
                            "job_name": "kubernetes-nodes-cadvisor",
                            "scheme": "https",
                            "tls_config": {
                              "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                              "insecure_skip_verify": true
                            },
                            "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                            "kubernetes_sd_configs": [
                              {
                                "role": "node"
                              }
                            ],
                            "relabel_configs": [
                              {
                                "action": "labelmap",
                                "regex": "__meta_kubernetes_node_label_(.+)"
                              },
                              {
                                "target_label": "__address__",
                                "replacement": "kubernetes.default.svc:443"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_node_name"
                                ],
                                "regex": "(.+)",
                                "target_label": "__metrics_path__",
                                "replacement": "/api/v1/nodes/$1/proxy/metrics/cadvisor"
                              }
                            ],
                            "metric_relabel_configs": [
                              {
                                "source_labels": [
                                  "__name__"
                                ],
                                "regex": "(container_cpu_usage_seconds_total|container_memory_working_set_bytes|container_network_receive_errors_total|container_network_transmit_errors_total|container_network_receive_packets_dropped_total|container_network_transmit_packets_dropped_total|container_memory_usage_bytes|container_cpu_cfs_throttled_periods_total|container_cpu_cfs_periods_total|container_fs_usage_bytes|container_fs_limit_bytes|container_cpu_cfs_periods_total|container_fs_inodes_free|container_fs_inodes_total|container_fs_usage_bytes|container_fs_limit_bytes|container_cpu_cfs_throttled_periods_total|container_cpu_cfs_periods_total|container_network_receive_bytes_total|container_network_transmit_bytes_total|container_fs_inodes_free|container_fs_inodes_total|container_fs_usage_bytes|container_fs_limit_bytes|container_spec_cpu_shares|container_spec_memory_limit_bytes|container_network_receive_bytes_total|container_network_transmit_bytes_total|container_fs_reads_bytes_total|container_network_receive_bytes_total|container_fs_writes_bytes_total|container_fs_reads_bytes_total|cadvisor_version_info|kubecost_pv_info)",
                                "action": "keep"
                              },
                              {
                                "source_labels": [
                                  "container"
                                ],
                                "target_label": "container_name",
                                "regex": "(.+)",
                                "action": "replace"
                              },
                              {
                                "source_labels": [
                                  "pod"
                                ],
                                "target_label": "pod_name",
                                "regex": "(.+)",
                                "action": "replace"
                              }
                            ]
                          },
                          {
                            "job_name": "kubernetes-nodes",
                            "scheme": "https",
                            "tls_config": {
                              "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                              "insecure_skip_verify": true
                            },
                            "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                            "kubernetes_sd_configs": [
                              {
                                "role": "node"
                              }
                            ],
                            "relabel_configs": [
                              {
                                "action": "labelmap",
                                "regex": "__meta_kubernetes_node_label_(.+)"
                              },
                              {
                                "target_label": "__address__",
                                "replacement": "kubernetes.default.svc:443"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_node_name"
                                ],
                                "regex": "(.+)",
                                "target_label": "__metrics_path__",
                                "replacement": "/api/v1/nodes/$1/proxy/metrics"
                              }
                            ],
                            "metric_relabel_configs": [
                              {
                                "source_labels": [
                                  "__name__"
                                ],
                                "regex": "(kubelet_volume_stats_used_bytes)",
                                "action": "keep"
                              }
                            ]
                          },
                          {
                            "job_name": "kubernetes-service-endpoints",
                            "kubernetes_sd_configs": [
                              {
                                "role": "endpoints"
                              }
                            ],
                            "relabel_configs": [
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_annotation_prometheus_io_scrape"
                                ],
                                "action": "keep",
                                "regex": true
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_endpoints_name"
                                ],
                                "action": "keep",
                                "regex": "(.*node-exporter|kubecost-network-costs)"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_annotation_prometheus_io_scheme"
                                ],
                                "action": "replace",
                                "target_label": "__scheme__",
                                "regex": "(https?)"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_annotation_prometheus_io_path"
                                ],
                                "action": "replace",
                                "target_label": "__metrics_path__",
                                "regex": "(.+)"
                              },
                              {
                                "source_labels": [
                                  "__address__",
                                  "__meta_kubernetes_service_annotation_prometheus_io_port"
                                ],
                                "action": "replace",
                                "target_label": "__address__",
                                "regex": "([^:]+)(?::\\d+)?;(\\d+)",
                                "replacement": "$1:$2"
                              },
                              {
                                "action": "labelmap",
                                "regex": "__meta_kubernetes_service_label_(.+)"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_namespace"
                                ],
                                "action": "replace",
                                "target_label": "kubernetes_namespace"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_name"
                                ],
                                "action": "replace",
                                "target_label": "kubernetes_name"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_pod_node_name"
                                ],
                                "action": "replace",
                                "target_label": "kubernetes_node"
                              }
                            ],
                            "metric_relabel_configs": [
                              {
                                "source_labels": [
                                  "__name__"
                                ],
                                "regex": "(container_cpu_allocation|container_cpu_usage_seconds_total|container_fs_limit_bytes|container_fs_writes_bytes_total|container_gpu_allocation|container_memory_allocation_bytes|container_memory_usage_bytes|container_memory_working_set_bytes|container_network_receive_bytes_total|container_network_transmit_bytes_total|DCGM_FI_DEV_GPU_UTIL|deployment_match_labels|kube_daemonset_status_desired_number_scheduled|kube_daemonset_status_number_ready|kube_deployment_spec_replicas|kube_deployment_status_replicas|kube_deployment_status_replicas_available|kube_job_status_failed|kube_namespace_annotations|kube_namespace_labels|kube_node_info|kube_node_labels|kube_node_status_allocatable|kube_node_status_allocatable_cpu_cores|kube_node_status_allocatable_memory_bytes|kube_node_status_capacity|kube_node_status_capacity_cpu_cores|kube_node_status_capacity_memory_bytes|kube_node_status_condition|kube_persistentvolume_capacity_bytes|kube_persistentvolume_status_phase|kube_persistentvolumeclaim_info|kube_persistentvolumeclaim_resource_requests_storage_bytes|kube_pod_container_info|kube_pod_container_resource_limits|kube_pod_container_resource_limits_cpu_cores|kube_pod_container_resource_limits_memory_bytes|kube_pod_container_resource_requests|kube_pod_container_resource_requests_cpu_cores|kube_pod_container_resource_requests_memory_bytes|kube_pod_container_status_restarts_total|kube_pod_container_status_running|kube_pod_container_status_terminated_reason|kube_pod_labels|kube_pod_owner|kube_pod_status_phase|kube_replicaset_owner|kube_statefulset_replicas|kube_statefulset_status_replicas|kubecost_cluster_info|kubecost_cluster_management_cost|kubecost_cluster_memory_working_set_bytes|kubecost_load_balancer_cost|kubecost_network_internet_egress_cost|kubecost_network_region_egress_cost|kubecost_network_zone_egress_cost|kubecost_node_is_spot|kubecost_pod_network_egress_bytes_total|node_cpu_hourly_cost|node_cpu_seconds_total|node_disk_reads_completed|node_disk_reads_completed_total|node_disk_writes_completed|node_disk_writes_completed_total|node_filesystem_device_error|node_gpu_count|node_gpu_hourly_cost|node_memory_Buffers_bytes|node_memory_Cached_bytes|node_memory_MemAvailable_bytes|node_memory_MemFree_bytes|node_memory_MemTotal_bytes|node_network_transmit_bytes_total|node_ram_hourly_cost|node_total_hourly_cost|pod_pvc_allocation|pv_hourly_cost|service_selector_labels|statefulSet_match_labels|kubecost_pv_info|up)",
                                "action": "keep"
                              }
                            ]
                          }
                        ]
                      },
                      "rules": {
                        "groups": [
                          {
                            "name": "CPU",
                            "rules": [
                              {
                                "expr": "sum(rate(container_cpu_usage_seconds_total{container!=\"\"}[5m]))",
                                "record": "cluster:cpu_usage:rate5m"
                              },
                              {
                                "expr": "rate(container_cpu_usage_seconds_total{container!=\"\"}[5m])",
                                "record": "cluster:cpu_usage_nosum:rate5m"
                              },
                              {
                                "expr": "avg(irate(container_cpu_usage_seconds_total{container!=\"POD\", container!=\"\"}[5m])) by (container,pod,namespace)",
                                "record": "kubecost_container_cpu_usage_irate"
                              },
                              {
                                "expr": "sum(container_memory_working_set_bytes{container!=\"POD\",container!=\"\"}) by (container,pod,namespace)",
                                "record": "kubecost_container_memory_working_set_bytes"
                              },
                              {
                                "expr": "sum(container_memory_working_set_bytes{container!=\"POD\",container!=\"\"})",
                                "record": "kubecost_cluster_memory_working_set_bytes"
                              }
                            ]
                          },
                          {
                            "name": "Savings",
                            "rules": [
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind!=\"DaemonSet\"}) by (pod) * sum(container_cpu_allocation) by (pod))",
                                "record": "kubecost_savings_cpu_allocation",
                                "labels": {
                                  "daemonset": "false"
                                }
                              },
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind=\"DaemonSet\"}) by (pod) * sum(container_cpu_allocation) by (pod)) / sum(kube_node_info)",
                                "record": "kubecost_savings_cpu_allocation",
                                "labels": {
                                  "daemonset": "true"
                                }
                              },
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind!=\"DaemonSet\"}) by (pod) * sum(container_memory_allocation_bytes) by (pod))",
                                "record": "kubecost_savings_memory_allocation_bytes",
                                "labels": {
                                  "daemonset": "false"
                                }
                              },
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind=\"DaemonSet\"}) by (pod) * sum(container_memory_allocation_bytes) by (pod)) / sum(kube_node_info)",
                                "record": "kubecost_savings_memory_allocation_bytes",
                                "labels": {
                                  "daemonset": "true"
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    "alertRelabelConfigs": null,
                    "networkPolicy": {
                      "enabled": false
                    }
                  },
                  "networkCosts": {
                    "enabled": false,
                    "image": {
                      "repository": "gcr.io/kubecost1/kubecost-network-costs",
                      "tag": "v0.17.3"
                    },
                    "imagePullPolicy": "Always",
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "prometheusScrape": false,
                    "trafficLogging": true,
                    "logLevel": "info",
                    "port": 3001,
                    "resources": {
                      "limits": {
                        "cpu": "500m"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "20Mi"
                      }
                    },
                    "extraArgs": [],
                    "config": {
                      "destinations": {
                        "in-zone": [
                          "127.0.0.0/8",
                          "169.254.0.0/16",
                          "10.0.0.0/8",
                          "172.16.0.0/12",
                          "192.168.0.0/16"
                        ],
                        "in-region": [],
                        "cross-region": [],
                        "internet": [],
                        "direct-classification": []
                      },
                      "services": {
                        "google-cloud-services": false,
                        "amazon-web-services": false,
                        "azure-cloud-services": false
                      }
                    },
                    "tolerations": [],
                    "affinity": {},
                    "service": {
                      "annotations": {},
                      "labels": {}
                    },
                    "priorityClassName": "",
                    "podMonitor": {
                      "enabled": false,
                      "additionalLabels": {}
                    },
                    "additionalLabels": {},
                    "nodeSelector": {},
                    "annotations": {},
                    "healthCheckProbes": {},
                    "additionalSecurityContext": {}
                  },
                  "kubecostDeployment": {
                    "replicas": 1,
                    "labels": {},
                    "annotations": {}
                  },
                  "forecasting": {
                    "enabled": true,
                    "fullImageName": "gcr.io/kubecost1/kubecost-modeling:v0.1.6",
                    "resources": {
                      "requests": {
                        "cpu": "200m",
                        "memory": "300Mi"
                      },
                      "limits": {
                        "cpu": "1500m",
                        "memory": "1Gi"
                      }
                    },
                    "env": {
                      "GUNICORN_CMD_ARGS": "--log-level info -t 1200"
                    },
                    "priority": {
                      "enabled": false,
                      "name": ""
                    },
                    "nodeSelector": {},
                    "tolerations": {},
                    "affinity": {},
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    }
                  },
                  "kubecostAggregator": {
                    "deployMethod": "singlepod",
                    "enabled": false,
                    "replicas": 1,
                    "stagingEmptyDirSizeLimit": "2Gi",
                    "numDBCopyPartitions": 25,
                    "env": {
                      "LOG_LEVEL": "info",
                      "DB_READ_THREADS": "1",
                      "DB_WRITE_THREADS": "1",
                      "DB_CONCURRENT_INGESTION_COUNT": "3"
                    },
                    "persistentConfigsStorage": {
                      "storageClass": "",
                      "storageRequest": "1Gi"
                    },
                    "aggregatorDbStorage": {
                      "storageClass": "",
                      "storageRequest": "128Gi"
                    },
                    "resources": {},
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "cloudCost": {
                      "enabled": false,
                      "resources": {},
                      "readinessProbe": {
                        "enabled": true,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 10,
                        "failureThreshold": 200
                      }
                    },
                    "jaeger": {
                      "enabled": false,
                      "image": "jaegertracing/all-in-one",
                      "imageVersion": "latest"
                    }
                  },
                  "diagnostics": {
                    "enabled": true,
                    "primary": {
                      "enabled": false,
                      "retention": "7d",
                      "readonly": false
                    },
                    "pollingInterval": "300s",
                    "keepDiagnosticHistory": false,
                    "collectHelmValues": false,
                    "deployment": {
                      "enabled": false,
                      "resources": {
                        "requests": {
                          "cpu": "10m",
                          "memory": "20Mi"
                        }
                      },
                      "env": {},
                      "labels": {},
                      "securityContext": {},
                      "containerSecurityContext": {},
                      "nodeSelector": {},
                      "tolerations": {},
                      "affinity": {}
                    }
                  },
                  "clusterController": {
                    "enabled": false,
                    "image": {
                      "repository": "gcr.io/kubecost1/cluster-controller",
                      "tag": "v0.16.0"
                    },
                    "imagePullPolicy": "Always",
                    "priorityClassName": "",
                    "tolerations": [],
                    "actionConfigs": {
                      "clusterTurndown": [],
                      "namespaceTurndown": null,
                      "clusterRightsize": null,
                      "containerRightsize": null
                    },
                    "kubescaler": {
                      "defaultResizeAll": false
                    },
                    "namespaceTurndown": {
                      "rbac": {
                        "enabled": true
                      }
                    }
                  },
                  "reporting": {
                    "logCollection": true,
                    "productAnalytics": true,
                    "errorReporting": true,
                    "valuesReporting": true
                  },
                  "serviceMonitor": {
                    "enabled": false,
                    "additionalLabels": {},
                    "metricRelabelings": [],
                    "relabelings": [],
                    "networkCosts": {
                      "enabled": false,
                      "scrapeTimeout": "10s",
                      "additionalLabels": {},
                      "metricRelabelings": [],
                      "relabelings": []
                    }
                  },
                  "prometheusRule": {
                    "enabled": false,
                    "additionalLabels": {}
                  },
                  "supportNFS": false,
                  "initChownDataImage": "busybox",
                  "initChownData": {
                    "resources": {}
                  },
                  "grafana": {
                    "rbac": {
                      "create": true
                    },
                    "serviceAccount": {
                      "create": true,
                      "name": ""
                    },
                    "replicas": 1,
                    "deploymentStrategy": "RollingUpdate",
                    "readinessProbe": {
                      "httpGet": {
                        "path": "/api/health",
                        "port": 3000
                      }
                    },
                    "livenessProbe": {
                      "httpGet": {
                        "path": "/api/health",
                        "port": 3000
                      },
                      "initialDelaySeconds": 60,
                      "timeoutSeconds": 30,
                      "failureThreshold": 10
                    },
                    "image": {
                      "repository": "grafana/grafana",
                      "tag": "10.3.4",
                      "pullPolicy": "IfNotPresent"
                    },
                    "securityContext": {},
                    "priorityClassName": "",
                    "downloadDashboardsImage": {
                      "repository": "curlimages/curl",
                      "tag": "latest",
                      "pullPolicy": "IfNotPresent"
                    },
                    "podAnnotations": {},
                    "annotations": {},
                    "service": {
                      "type": "ClusterIP",
                      "port": 80,
                      "annotations": {},
                      "labels": {}
                    },
                    "ingress": {
                      "enabled": false,
                      "annotations": {},
                      "labels": {},
                      "path": "/",
                      "pathType": "Prefix",
                      "hosts": [
                        "chart-example.local"
                      ],
                      "tls": []
                    },
                    "resources": {},
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "persistence": {
                      "enabled": false
                    },
                    "adminUser": "admin",
                    "adminPassword": "strongpassword",
                    "env": {},
                    "envFromSecret": "",
                    "extraSecretMounts": [],
                    "plugins": [],
                    "dashboardProviders": {},
                    "dashboards": {},
                    "dashboardsConfigMaps": {},
                    "ldap": {
                      "existingSecret": "",
                      "config": ""
                    },
                    "smtp": {
                      "existingSecret": ""
                    },
                    "sidecar": {
                      "image": {
                        "repository": "kiwigrid/k8s-sidecar",
                        "tag": "1.26.0",
                        "pullPolicy": "IfNotPresent"
                      },
                      "resources": {},
                      "dashboards": {
                        "enabled": true,
                        "label": "grafana_dashboard",
                        "labelValue": "1",
                        "annotations": {},
                        "error_throttle_sleep": 0,
                        "folder": "/tmp/dashboards"
                      },
                      "datasources": {
                        "enabled": false,
                        "error_throttle_sleep": 0,
                        "label": "grafana_datasource"
                      }
                    },
                    "grafana.ini": {
                      "server": {
                        "serve_from_sub_path": false,
                        "root_url": "%(protocol)s://%(domain)s:%(http_port)s/grafana"
                      },
                      "paths": {
                        "data": "/var/lib/grafana/data",
                        "logs": "/var/log/grafana",
                        "plugins": "/var/lib/grafana/plugins",
                        "provisioning": "/etc/grafana/provisioning"
                      },
                      "analytics": {
                        "check_for_updates": true
                      },
                      "log": {
                        "mode": "console"
                      },
                      "grafana_net": {
                        "url": "https://grafana.net"
                      },
                      "auth.anonymous": {
                        "enabled": true,
                        "org_role": "Editor",
                        "org_name": "Main Org."
                      }
                    }
                  },
                  "serviceAccount": {
                    "create": true,
                    "annotations": {}
                  },
                  "awsstore": {
                    "useAwsStore": false,
                    "imageNameAndVersion": "gcr.io/kubecost1/awsstore:latest",
                    "createServiceAccount": false,
                    "priorityClassName": "",
                    "nodeSelector": {},
                    "annotations": {}
                  },
                  "federatedETL": {
                    "agentOnly": false,
                    "federatedCluster": false,
                    "redirectS3Backup": false,
                    "useMultiClusterDB": false
                  },
                  "kubecostAdmissionController": {
                    "enabled": false,
                    "secretName": "webhook-server-tls",
                    "caBundle": "${CA_BUNDLE}"
                  },
                  "costEventsAudit": {
                    "enabled": false
                  },
                  "extraObjects": []
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: gcr.io/kubecost1/operator/kubecost-operator-controller:v2.2.4
          createdAt: "2024-05-19T20:46:35Z"
          description: An operator that deploys Kubecost 2.2.4 via the Helm chart.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Stackwatch
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The CostAnalyzer API describes a deployment of Kubecost and
              its dependencies.
            displayName: CostAnalyzer
            kind: CostAnalyzer
            name: costanalyzers.charts.kubecost.com
            version: v1alpha1
        description: |-
          Kubecost provides real-time cost visibility and insights for teams using Kubernetes, helping you continuously reduce your cloud costs.

          This OpenShift operator deploys Kubecost from the official Helm chart.

          Kubecost allows you to:

          * See allocated spend across all native Kubernetes concepts, so you can provide your teams with transparent, accurate cost data reconciled with your actual cloud bill.
          * Join in-cluster costs like CPU and memory with out-of-cluster spend from cloud infrastructure services for complete cost visibility—all services from AWS, GCP, and Microsoft Azure are supported.
          * Gain insights you can use to save 30-50% or more on your infrastructure spend, without exposing your private information—your data never gets shared externally, even with us.
          * Have real-time alerts and recurring reports, empowering teams to take control of their Kubernetes-enabled infrastructure, stay within budgeted limits, and address monitoring interruptions immediately.

          Visit the Kubecost website for more details including features, pricing, documentation, and more at www.kubecost.com.
        displayName: Kubecost
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubecost
        - cost
        - kubernetes
        links:
        - name: Kubecost
          url: https://www.kubecost.com
        maintainers:
        - email: czoller@kubecost.com
          name: Chip Zoller
        maturity: alpha
        provider:
          name: Stackwatch
          url: www.kubecost.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/kubecost@sha256:ff1e00f5a04e49fe9daf06db6b60c2ca14692efd098a38ecd622ef6bc5de8dd5
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - gcr.io/kubecost1/operator/kubecost-operator-controller:v2.2.4
        version: 2.2.4
      entries:
      - name: kubecost.v2.2.4
        version: 2.2.4
      - name: kubecost.v2.1.0
        version: 2.1.0
      - name: kubecost-operator.v1.107.1
        version: 1.107.1
      - name: kubecost-operator.v1.106.2
        version: 1.106.2
      - name: kubecost-operator.v1.106.0
        version: 1.106.0
      - name: kubecost.v1.99.0
        version: 1.99.0
      - name: kubecost.v1.97.0
        version: 1.97.0
      name: alpha
    defaultChannel: alpha
    packageName: kubecost
    provider:
      name: Stackwatch
      url: www.kubecost.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Net AI
      provider-url: https://netai.tech
    name: netai-demo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: netai-demo-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "deployments.netai.tech/v1alpha1",
                "kind": "AntennaDeployment",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netai-demo-operator"
                  },
                  "name": "antennadeployment-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, Networking
          com.redhat.openshift.versions: v4.18
          containerImage: ghcr.io/net-ai-tech/netai-demo-operator@sha256:fae0da9ec2f7a9fd6cfe0ec3e9dfb3b10bf6feaa964b81f081088297649c8bcb
          createdAt: "2025-07-09T11:33:08Z"
          description: Net AI Operator that uses EnergAIze engine forecasts to scale
            Red Hat OpenShift resources.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Net AI
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AntennaDeployment is the Schema for the antennadeployments
              API
            displayName: Antenna Deployment
            kind: AntennaDeployment
            name: antennadeployments.deployments.netai.tech
            version: v1alpha1
          - description: Demo is the Schema for the Demo API
            displayName: Demo
            kind: Demo
            name: demos.deployments.netai.tech
            version: v1alpha1
        description: POC Operator that uses saved EnergAize forecasts to manage OpenShift
          Custom Resources
        displayName: netai-demo-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - energaize
        - scaling
        - scale
        - manage
        - forecast
        - cells
        - 5g
        - networking
        - net
        - ai
        - network
        - telecommunication
        - xapp
        links:
        - name: Netai Demo Operator
          url: https://netai-demo-operator.domain
        maturity: alpha
        minKubeVersion: 1.27.0
        provider:
          name: Net AI
          url: https://netai.tech
        relatedImages:
        - registry.access.redhat.com/ubi8/ubi@sha256:68fecea0d255ee253acbf0c860eaebb7017ef5ef007c25bee9eeffd29ce85b29
        - registry.connect.redhat.com/net-ai/demo-operator-bundle@sha256:b1a30de1e984da0487a7d042bd940876bedb5a2f43dd73c7895e684a3a35d81e
        - ghcr.io/net-ai-tech/netai-demo-operator-bundle@sha256:0783aba7b039a569b49de2a61ef6dc6ff1d1f301d93c26d623b7f652321871c5
        - ghcr.io/net-ai-tech/netai-demo-operator@sha256:fae0da9ec2f7a9fd6cfe0ec3e9dfb3b10bf6feaa964b81f081088297649c8bcb
        version: 0.0.1
      entries:
      - name: netai-demo-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: netai-demo-operator
    provider:
      name: Net AI
      url: https://netai.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-athena-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-athena-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "athena.services.k8s.aws/v1alpha1",
                "kind": "WorkGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/athena-controller:1.2.0
          createdAt: "2025-11-29T04:51:07Z"
          description: AWS Athena controller is a service controller for managing
            Athena resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PreparedStatement represents the state of an AWS athena PreparedStatement
              resource.
            displayName: PreparedStatement
            kind: PreparedStatement
            name: preparedstatements.athena.services.k8s.aws
            version: v1alpha1
          - description: WorkGroup represents the state of an AWS athena WorkGroup
              resource.
            displayName: WorkGroup
            kind: WorkGroup
            name: workgroups.athena.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Athena resources in AWS from within your Kubernetes cluster.

          **About Amazon Athena**

          Amazon Athena is an interactive query service that makes it easy to analyze data directly in Amazon Simple Storage Service (Amazon S3) using standard SQL. With a few actions in the AWS Management Console, you can point Athena at your data stored in Amazon S3 and begin using standard SQL to run ad-hoc queries and get results in seconds.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Athena
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - athena
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Athena Developer Resources
          url: https://aws.amazon.com/athena/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: athena maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/athena-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-athena-controller@sha256:391d422e57dcc2960e2d89d83f6a58f0d9dfa6eac69634b751cb7c2bdf185fe9
        version: 1.2.0
      entries:
      - name: ack-athena-controller.v1.2.0
        version: 1.2.0
      - name: ack-athena-controller.v1.1.2
        version: 1.1.2
      - name: ack-athena-controller.v1.1.1
        version: 1.1.1
      - name: ack-athena-controller.v1.1.0
        version: 1.1.0
      - name: ack-athena-controller.v1.0.14
        version: 1.0.14
      - name: ack-athena-controller.v1.0.13
        version: 1.0.13
      - name: ack-athena-controller.v1.0.12
        version: 1.0.12
      - name: ack-athena-controller.v1.0.11
        version: 1.0.11
      - name: ack-athena-controller.v1.0.10
        version: 1.0.10
      - name: ack-athena-controller.v1.0.9
        version: 1.0.9
      - name: ack-athena-controller.v1.0.8
        version: 1.0.8
      - name: ack-athena-controller.v1.0.7
        version: 1.0.7
      - name: ack-athena-controller.v1.0.6
        version: 1.0.6
      - name: ack-athena-controller.v1.0.5
        version: 1.0.5
      - name: ack-athena-controller.v1.0.4
        version: 1.0.4
      - name: ack-athena-controller.v1.0.1
        version: 1.0.1
      - name: ack-athena-controller.v1.0.0
        version: 1.0.0
      - name: ack-athena-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-athena-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: opdev
      provider-url: opdev.github.io
    name: airflow-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: airflow-helm-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "workflow.apache.org/v1alpha1",
                "kind": "AirFlow",
                "metadata": {
                  "name": "airflow-helm"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: quay.io/opdev/airflow-helm-operator:0.0.1
          createdAt: "2023-06-28T16:57:21Z"
          description: An experimental operator that installs Apache Airflow.
          operatorframework.io/suggested-namespace: airflow-helm
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: hybrid.helm.sdk.operatorframework.io/v1-alpha
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys Apache Airflow based on the official helm chart in
              openshift
            kind: AirFlow
            name: airflows.workflow.apache.org
            version: v1alpha1
        description: Deploys Apache Airflow based on the official helm chart with
          openshift specific modifications applied by default
        displayName: Airflow Helm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - airflow
        - data
        - batch
        - scheduler
        - data workflow
        links:
        - name: Airflow Helm Operator
          url: https://airflow-helm-operator.domain
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: opdev
          url: opdev.github.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/opdev/airflow-helm-operator:0.0.1
        - quay.io/openshift-community-operators/airflow-helm-operator@sha256:b3d05d2e2b4ff8ae64e4fc0338fcfa1ffdc345c6fdda8eaefed4e9108750fe58
        version: 0.0.1
      entries:
      - name: airflow-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: airflow-helm-operator
    provider:
      name: opdev
      url: opdev.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataTrucker.IO
      provider-url: https://www.datatrucker.io/
    name: datatrucker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datatrucker-operator.v2.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datatrucker.datatrucker.io/v1",
                "kind": "DatatruckerConfig",
                "metadata": {
                  "name": "datatruckerconfig-sample"
                },
                "spec": {
                  "API": {
                    "crypto": {
                      "CredentailEncryption": {
                        "Algorithm": "aes-256-cbc",
                        "IV": "eThWmZq4t7w!z$C\u0026",
                        "Key": "JaNdRgUkXp2s5u8x/A?D(G+KbPeShVmY"
                      },
                      "JWT": {
                        "authorization_keys": {
                          "private_key": "privateJWT.key",
                          "public_key": "publicJWT.key"
                        },
                        "signOptions": {
                          "algorithm": "RS256",
                          "expiresIn": "60m",
                          "issuer": "datatrucker"
                        },
                        "verify": {
                          "issuer": "datatrucker"
                        }
                      },
                      "keycloak": {
                        "client_id": "nodejs",
                        "client_secret": "7c5542ae-7264-420d-bf5f-766f4ab39ad3",
                        "jwt_publickey_verifier": "keycloak.key",
                        "realm": "TestRealm",
                        "url": "http://localhost:30015"
                      },
                      "passwordHash": {
                        "Algorithm": "sha256",
                        "SaltLength": 16
                      }
                    },
                    "cryptokeys": {
                      "keycloakkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUF4ZnhGY1gxb3RmTUN6SWlkZ09tMndZakZWZXZHN1BQT1h5dTNrTEFuTWtTVkUxUXl4TzJ4SFFvSGcydDFVcUU4SVNXeTN3ZkZTbERzdU1VK0J1VVkvaWI5L04vSlpBV3k5MGRET0YxREdIeGVwM21HMVBTUllMQWFGQ0I3NTVsbWZjL1dna3VzZFdLdmxOTmZuNkd6S1J6OXBmV3RNUnhWWkFrejhmNlVUeG0zWE02Q0tOMUludThubEcxU3ZzaFc5cmt3Lyt6UmVvOFVCV2pPcTh5RjdPV0tnS0ZZZlhENFREa090OWFxN3RaaSsxaExYOE5iV2xxRnJZYmhJcFZINXlLSko3ZTA5cUVIRkVEelg5QXJzVVNHamNjbFFFYTl1dmJxU2d4Rzc3RUZVbk82aDZxUkNnU3lNNnVYdk9qcWlIMHp4RTNmRHB4R2NhY2pvTW1EMlFJREFRQUIKLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0t",
                      "privateJWTkey": "LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQ0KTUlJRW9RSUJBQUtDQVFCVWd1ZDN1OFlXcUJCWWtYZ3M2K25pMS84bnM5YjRGNkZudzA4RDRKdGRlalg5L1ZaMg0KWFdOamJ1ekMxUkRHMnVseFM4QjZIdTZYeEhYWU9XU2ZzOEY0UHZ2eC9TUWdmRWtWUlNDL1pQN3pzM1ZETllaMA0Kc1JScDNSZzUza29qUG80T3o2azFaeGprbFRFZEpMWUtqYlZud3U1M3A3MTFsVTJkV3B4R3VEeGYxVTJuUWgrWA0KaUhKZkhyUmxTZVA1aVhYQkpxd21VTDFkK25lTU5BOXlGakR0MnNZMG5iSDRySDVxbk1VRk4xMEpsZ3V4NFdiUw0KaGFUNklNN3h1dUVHbDRDckVENmdTejBNNGF1UVk4ekZxQWxJNlFWUTlML28zQnBCRmxYUUMwWmowb3lwQVFKLw0KQ1VLaU9FcEhLRHgram02RU9KOE1aejlMQ01yTmdLME5KSWlaQWdNQkFBRUNnZ0VBRTBMMnNLSjZob1Z0bkZJag0KZXRHV01CNmN5QmJFSXkxM215ZTNwYUdXcDVxSUhjaVU0VXR0c0tjQ2pYRjBibTVNa0liOGFwa01Oa2tQdHVWMQ0KMnJSa254eHozZmFkT2s0NWRnQ1ljeWI0dU9DcEZGVnB2TVR6YXlGNk9RNUNCWUJuYmxiRU1TaTdVclh5U0xzcQ0KUm9OLzJoTml1S0RobktBWDNZcGVYZnYxdnIyaWIrMGtiRDVvMVZLcnB6SlJ5emlsWHFwQWJwNDQ4RExFZHVGeA0KTnJKc0tWb1dXMVhmS1FvR2VDMXZqNFJudzdhWkNyU1BjMEhvMUdKb29xSXlrNjRXZnhGWjhpVElsWDJMU1gzbQ0KQm1pN1ZXZnVJK0QvUXRtWEVpN05oTE1jUmExVXB4QkdiK1ZPZXlucEVyMEpxM3VZSmlva1VIZzloOGIzSDM1Yg0KK0lJaEFRS0JnUUNtbzUrRUNpOEJUcFRHdlpqQXBtdmxGZ055NkpWd0RvVHJLSGdCcHJHVHpsVGt6Q0tLYzJhTw0KTTMvQmVIVUQ1NVFqcTdUM094eGgzQUk3cG9kT0tCWS84eXgzenlYUExQUmVCMlR0eTNVQjE5YU5CclhNUGQ5RQ0KTG5hbUQ0SmZQeTV0WHpWWEloWVB0UzBiNjdGbjZnZFl4MlNBbGFYYWFjejU4eURLZnlZL3VRS0JnUUNCMUxNYg0KTFZNTU1Pd1U4R2xsVVB1V0Q5VnBsMnlURytCN2Nnd0ZiYTlrWVlVSFQ4TmlvaUdxQzlLZWxqeklKNnlUdyt3aA0KQisvNGNJU1o5Y0JDNHB0VnRlTWJwUkg3UTQwK20xU3M1SmQzU1VFcDBMOW5VbmdVNDhrMzlpSTV5aEgxU3JTRw0KREtBamVka2Rjb3hNVWFwUHB6cVprOVNKdGVHckVsTHY5WmcvNFFLQmdHcExQTmt3MWNMenFSc01uWDlscUxVOA0KVVg3ZXRWUUJMdkFCcEdzSk5ZU2V2TEFsTm5NeUlWemJwTVo0Vzh2ZDBEVGd0bEp0dGpFRjhiYXpCdVBuMWlsOA0KcUFUVWNiMnhZejhIWUczK3RlZ3pFWHhycDFOY3RDbjlxVmxMMDFHR0w4czhTLzRFbENYNDM0bEwwcUlDT2lWNw0KS3JTS3dIeU51RjVIbzhjSFRCS2hBb0dBVjhVRVpENEs0N1g3RTlqSFY3QWN0UUQxUkpJUzI0ekFBSlJFSGpOZA0KbkIzMVFkRWhoSCtaQkkxRGtPUitLTTN4ZEYvQ05UNVpjM29WbXNPeGUwWVl2eVBjYWViNU5nVWY2cEExK1QvOA0KU2E4ak4zS2d3dWZVdUVLWjJKUXo1UjkvYm5WWGZ6dnYwcXZnSkhFNCthdEgyTnR6MlRsQU9PelZwOElXZ1pSbA0KbmVFQ2dZQXpVS0RLS1ZKaXBYdC9TRC8xd2ZzWElCazFxYWpmdENHOFVTcFlGWGp5VzVYMlZ5bTlVTldmVEdJcA0KQlJkVldXamdFbWhyOU5Da1UrVEU4WEVjTXJNRnhWbXBEeTQ4YmxsQWltWFJtOEhNMlhKODQ4TlArTG5GdEtHdA0KTWswT3JuUHdPYitualZGcXdWUllNQ0QzeFN0Z2RnZUppUHFYcWd3SDhjR0M0OGVmZ0E9PQ0KLS0tLS1FTkQgUlNBIFBSSVZBVEUgS0VZLS0tLS0=",
                      "publicJWTkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJVEFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUTRBTUlJQkNRS0NBUUJVZ3VkM3U4WVdxQkJZa1hnczYrbmkNCjEvOG5zOWI0RjZGbncwOEQ0SnRkZWpYOS9WWjJYV05qYnV6QzFSREcydWx4UzhCNkh1Nlh4SFhZT1dTZnM4RjQNClB2dngvU1FnZkVrVlJTQy9aUDd6czNWRE5ZWjBzUlJwM1JnNTNrb2pQbzRPejZrMVp4amtsVEVkSkxZS2piVm4NCnd1NTNwNzExbFUyZFdweEd1RHhmMVUyblFoK1hpSEpmSHJSbFNlUDVpWFhCSnF3bVVMMWQrbmVNTkE5eUZqRHQNCjJzWTBuYkg0ckg1cW5NVUZOMTBKbGd1eDRXYlNoYVQ2SU03eHV1RUdsNENyRUQ2Z1N6ME00YXVRWTh6RnFBbEkNCjZRVlE5TC9vM0JwQkZsWFFDMFpqMG95cEFRSi9DVUtpT0VwSEtEeCtqbTZFT0o4TVp6OUxDTXJOZ0swTkpJaVoNCkFnTUJBQUU9DQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0=",
                      "truckerapicrt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUQxVENDQXIyZ0F3SUJBZ0lVUFVzZ2NYVXZRYWtuQldjeUFDeEw2dmt3b204d0RRWUpLb1pJaHZjTkFRRUwKQlFBd2RqRUxNQWtHQTFVRUJoTUNRMEV4Q3pBSkJnTlZCQWdNQWs5T01ROHdEUVlEVlFRSERBWk5hV3gwYjI0eApGekFWQmdOVkJBb01Ea1JoZEdGVWNuVmphMlZ5TGtsUE1SUXdFZ1lEVlFRTERBdEZibWRwYm1WbGNtbHVaekVhCk1CZ0dBMVVFQXd3UlJHRjBZVlJ5ZFdOclpYSlNiMjkwUTBFd0hoY05NakF4TURFeU1UWXlOalV5V2hjTk1qTXcKTVRFMU1UWXlOalV5V2pCM01Rc3dDUVlEVlFRR0V3SkRRVEVMTUFrR0ExVUVDQXdDVDA0eER6QU5CZ05WQkFjTQpCazFwYkhSdmJqRVhNQlVHQTFVRUNnd09SR0YwWVZSeWRXTnJaWEl1U1U4eEZEQVNCZ05WQkFzTUMwVnVaMmx1ClpXVnlhVzVuTVJzd0dRWURWUVFEREJKa1lYUmhkSEoxWTJ0bGNpMWhjR2t1YVc4d2dnRWlNQTBHQ1NxR1NJYjMKRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEakM4ZmVCVEg4L3NnejFQcTJQYU9QQjc5YWtyeUZvWVpGV292bQpWOXNvMmJNRHp4NVBZSFJydVFGYmJQRzlVVlc2QWZpSHdEb1p2Z3NTVXpyS3ZyR1RlYjluNUhSVlVOMTl0NExTCjdtUFppNzFRbGE4bVR3QmdvTnE4TFppcnZUdzV0S2I4K3NmcFJxQUlUQkVsRmxVUEZISzllcDl2eFdvaHhwdGgKS1dPVkwvV2ZtWldhWXlRdjlLNDBkWUJpRWpGcTFKZVB4MDlnUFdHM2pOT1VYTTZQUVlMaHJDUXFFcy9VME9GWQpwVFRHUmNXZEx4TFVFZVNkcHJKK1ZEc3lEK1lVeUFRR2phYk14VmVTVlRUN1FGbFBjLzc3OVZsRkdXMC8xWVVaCmpqakNsSkFLUWZOTHg5bG85cWJERVBZL3grZmhnRnYyWUVaSTNTdGVyZWUvVDJoWEFnTUJBQUdqV2pCWU1COEcKQTFVZEl3UVlNQmFBRkNJVy9JYkZIUUNBeEdxZC9FVFpXbVhGeGMvQ01Ba0dBMVVkRXdRQ01BQXdDd1lEVlIwUApCQVFEQWdUd01CMEdBMVVkRVFRV01CU0NFbVJoZEdGMGNuVmphMlZ5TFdGd2FTNXBiekFOQmdrcWhraUc5dzBCCkFRc0ZBQU9DQVFFQUxrMlJDbnVweDA5Wmx0SmN3M1pUaFIveUZGNS9KVlVsWkdHTnc3MlAwQmR6SEloQncrVk4KRkNucGFPMjJ0WGF1NlJVeTVNUWhwc3JrbFNKYVdJT25jOUg0Uk0vbGh3YWsyRXN0MkFhdUFwNUdYSVFJMDVBeAo3NmtDZXEyMnUyalNXRWpFS1hGRnRiZXVDZnFpWlpqNWFLcGF1YlZWRG4ydEZTWjJRMFRib2RRN2dpTFdNUTBLCk5ycVgwQWNSU2J0ZnRSNjBhdGQ1YW41aFNXY0dyZUg5ZHdFUVRvVVNFblg2RFRZSURoeElsZStjQ2V5VjVSWk8KVS9hck5RZ0lFY3ZrZUM1d1lZaFFFL1FUN3lNb1lNajFnckxmOTZSZkRhbEVFNE1seUtDWm9wYWNJWUdzSmhuKwpLMWFISEQvbGZxTC9zbnNtY3pXdHlLUncxTDF1WkxPcjJnPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=",
                      "truckerapikey": "LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb3dJQkFBS0NBUUVBNHd2SDNnVXgvUDdJTTlUNnRqMmpqd2UvV3BLOGhhR0dSVnFMNWxmYktObXpBODhlClQyQjBhN2tCVzJ6eHZWRlZ1Z0g0aDhBNkdiNExFbE02eXI2eGszbS9aK1IwVlZEZGZiZUMwdTVqMll1OVVKV3YKSms4QVlLRGF2QzJZcTcwOE9iU20vUHJINlVhZ0NFd1JKUlpWRHhSeXZYcWZiOFZxSWNhYllTbGpsUy8xbjVtVgptbU1rTC9TdU5IV0FZaEl4YXRTWGo4ZFBZRDFodDR6VGxGek9qMEdDNGF3a0toTFAxTkRoV0tVMHhrWEZuUzhTCjFCSGtuYWF5ZmxRN01nL21GTWdFQm8ybXpNVlhrbFUwKzBCWlQzUCsrL1ZaUlJsdFA5V0ZHWTQ0d3BTUUNrSHoKUzhmWmFQYW13eEQyUDhmbjRZQmI5bUJHU04wclhxM252MDlvVndJREFRQUJBb0lCQUZSbFo2aiswMk1RcmdpZQpUWWQ2aUJhOXNZS1FjdVZWY2x6TFdKK0ozdHhqZCtpZGo4Mi9zK2JyQVRjajJ3UWRmTGxFekVaaHpQY09ybnprClZVRlIreDR2cmxlSEV6czNjTzJ2VGtEci9rKzZZdWZXakNHNFVoS1pHRlhFdVRCMWlqS0ZGV0dLTXM5aXdrL3oKUHBoRG9lQ1dJRVNRbFQxdDY1S2NpZHRuRUM0K3oxaURxR21ZZEVEa2xEZFFIVHorRGpseS80VzV2MFpVQWN2Vwo1Unkvd0JldmNURlBXQy9uZGFrN3hGUnVrU2xNZUlhTWhvTlllOU5uVCt2Nmh5VVh1MXp6cG45UEFJRTVpQWpOCnBsZkFEZitwakwrZFJDbW9sWW1LR3NQVjEzSmtCY1p2cEVoUWgrUmJnaWFwczJLc2plQ0NmTmtST0hndHc0MU0KeGxOTU1Ha0NnWUVBOHM1akpuZ2FMblIvTzZtakZEb0wvd1p2UWdnT1h3Z1RBN2tsQ0trbjBYM0xJS0hhaTZESgpyOVRGQktMdkhUazVFK1Y4NkhIZ29VMUFQQnYyMWJpaHhuQXhUYm8wSHZMdG5QOXU3YnZJejFNOWMyd2ZlWUgzCmliMG1FNkV0Y2wvNnVIUHdMVlZtRGh5bllneEZpeTRRRXp1ZHZwaFIvSnlPazQvUytQUzh2ZXNDZ1lFQTcySW8KWDlkY0xvUmYzSk0vRTF1SXhrRGRLZm1VakN6Mk1NN3pyRkpNUERobTFSUlJhQjdidHNxUzl4Mm5KeTI5amtoSQpndTR0Y2s5STdncm9WRXY0cEtkU0lOVzVNVUg0MXJPckxTbFBobCtMaTM5QXNrTERFVXVQbkFmYko3YWZibFFHCjNFWE1Ka1d2WFQxRG90aE11MUpUMTFPMjhmYlBmb3R3YVRucXFFVUNnWUE1RnArblh0dkJDbkVUNVJuTDJxNFIKWTBEcmhKdGthckNWMG9WTG1RSWN0bmY1RHpVa1dVU3lpOU5hK0xoQjViOXUxeWxjT2RJMytzTGNuektWSTVrZAo0Q2tuZmwxYzNYOVN4NWdjVzJlbW40cTJSYmpNeCtzY3ZwVmlUaVl5V3pESEI3Tno1VDFlbWd3YytJZXRac0l1CjAzaU9aSi82UmhFYnp0Z3E0dGd4eXdLQmdCanhwSDFnSm9YZVcxTFRzUlhtU3RsRnR3WUJzTDN1alhUR2k5T2YKKzd1bXNPaHhKbzV2OExzYVhyZ0xTZmltSm9ObCt0QlIyMEIzRElWcGM0NGRJSHFmeU1vTkd6QUx6TThxaDZLOApGRUpQUUc0M3cxa1A1ZDJ1ZnZkbVJpcmNONzY2V01DcE1UMm5zejlHKy81REJiUGJQMHRIdU45N3RXRmRURWhhCnRaMzFBb0dCQU5xZnVycEV4ZHozdXRNUm91RnJjTmVkV2s4VlVpVVZIV1hZMjhNNWQvRjcxMExIOTZuOW12V08Kc1cwcDFjcXBJMEsyQko2WlYwNVpybnlyRHBsVVpVdVpSQWxGR3hYR1dLU2trQzlmWm90SkFOWDBkR29KSitqTwpEYUNLNGxlcXdOMHNPRE1YZFErMlFPaUtlSUxkNU5KcDNUSW1YV1Z0RFlXUkRwOW9iSUdlCi0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg=="
                    },
                    "jobsServer": {
                      "ajv": {
                        "customOptions": {
                          "allErrors": true,
                          "coerceTypes": true,
                          "jsPropertySyntax": true,
                          "keepErrors": false,
                          "singleError": true
                        }
                      },
                      "bind": "0.0.0.0",
                      "compression": {
                        "threshold": 2048
                      },
                      "fastify": {
                        "ignoreTrailingSlash": true,
                        "logger": {
                          "level": "debug"
                        }
                      },
                      "helmet": {
                        "framegaurd": {
                          "action": "deny"
                        }
                      },
                      "jobResponseErrors": true,
                      "keycloak": true,
                      "pluginsEnable": {
                        "DB": true,
                        "FileSFTP": true,
                        "IOTKafka": true,
                        "IOTProxy": false,
                        "IOTRedis": true,
                        "Login": false,
                        "ScriptJS": true,
                        "ScriptSSH": true,
                        "ScriptShell": true,
                        "UtilEcho": true,
                        "UtilFuzzy": true,
                        "UtilSentiment": true,
                        "credentials": false,
                        "jobs": true,
                        "resources": false,
                        "statuschecks": true,
                        "ui": false,
                        "usermanagement": false
                      },
                      "port": "8080",
                      "protocol": {
                        "http2": false,
                        "httpsconfig": {
                          "allowHTTP1": true,
                          "cert": "truckerapi.crt",
                          "key": "truckerapi.key"
                        },
                        "type": "http"
                      },
                      "requestLog": false,
                      "serverID": "ServerHandler",
                      "writableResource": false
                    },
                    "loginServer": {
                      "ajv": {
                        "customOptions": {
                          "allErrors": true,
                          "coerceTypes": true,
                          "jsPropertySyntax": true,
                          "keepErrors": false,
                          "singleError": true
                        }
                      },
                      "bind": "0.0.0.0",
                      "compression": {
                        "threshold": 2048
                      },
                      "fastify": {
                        "ignoreTrailingSlash": true,
                        "logger": {
                          "level": "info"
                        }
                      },
                      "helmet": {
                        "framegaurd": {
                          "action": "deny"
                        }
                      },
                      "jobResponseErrors": true,
                      "keycloak": true,
                      "pluginsEnable": {
                        "DB": false,
                        "FileSFTP": false,
                        "IOTKafka": false,
                        "IOTProxy": false,
                        "IOTRedis": false,
                        "Login": true,
                        "ScriptJS": false,
                        "ScriptSSH": false,
                        "ScriptShell": false,
                        "UtilEcho": false,
                        "UtilFuzzy": false,
                        "UtilSentiment": false,
                        "credentials": false,
                        "jobs": false,
                        "resources": false,
                        "statuschecks": true,
                        "ui": false,
                        "usermanagement": false
                      },
                      "port": "8080",
                      "protocol": {
                        "http2": false,
                        "httpsconfig": {
                          "allowHTTP1": true,
                          "cert": "truckerapi.crt",
                          "key": "truckerapi.key"
                        },
                        "type": "http"
                      },
                      "requestLog": false,
                      "serverID": "ServerHandler",
                      "writableResource": false
                    },
                    "managementServer": {
                      "ajv": {
                        "customOptions": {
                          "allErrors": true,
                          "coerceTypes": true,
                          "jsPropertySyntax": true,
                          "keepErrors": false,
                          "singleError": true
                        }
                      },
                      "bind": "0.0.0.0",
                      "compression": {
                        "threshold": 2048
                      },
                      "fastify": {
                        "ignoreTrailingSlash": true,
                        "logger": {
                          "level": "debug"
                        }
                      },
                      "helmet": {
                        "framegaurd": {
                          "action": "deny"
                        }
                      },
                      "jobResponseErrors": true,
                      "keycloak": true,
                      "pluginsEnable": {
                        "DB": false,
                        "FileSFTP": false,
                        "IOTKafka": false,
                        "IOTProxy": false,
                        "IOTRedis": false,
                        "Login": true,
                        "ScriptJS": false,
                        "ScriptSSH": false,
                        "ScriptShell": false,
                        "UtilEcho": false,
                        "UtilFuzzy": false,
                        "UtilSentiment": false,
                        "credentials": true,
                        "jobs": false,
                        "resources": false,
                        "statuschecks": true,
                        "ui": true,
                        "usermanagement": true
                      },
                      "port": "8080",
                      "protocol": {
                        "http2": false,
                        "httpsconfig": {
                          "allowHTTP1": true,
                          "cert": "truckerapi.crt",
                          "key": "truckerapi.key"
                        },
                        "type": "http"
                      },
                      "requestLog": false,
                      "serverID": "ServerHandler",
                      "writableResource": false
                    },
                    "name": "API",
                    "resource": {
                      "Cache": {
                        "Creds": false,
                        "CredsFlush": 10,
                        "Resource": false,
                        "ResourceFlush": 10
                      },
                      "Templates": {
                        "Scripts": "scripts",
                        "Shell": "shell",
                        "keys": "keys",
                        "resourcedefinitions": "resourcedefinitions"
                      }
                    }
                  },
                  "DB": {
                    "databasename": "userdb",
                    "hostname": "db",
                    "password": "password",
                    "port": 5432,
                    "type": "pg",
                    "user": "testuser"
                  },
                  "TempDB": {
                    "enabled": false,
                    "pvc": "samplepvc"
                  }
                }
              },
              {
                "apiVersion": "datatrucker.datatrucker.io/v1",
                "kind": "DatatruckerFlow",
                "metadata": {
                  "name": "datatruckerflow-sample"
                },
                "spec": {
                  "API": {
                    "Image": {
                      "imageName": "datatrucker-server/datatrucker-api",
                      "imageNameUI": "datatruckerio/datatrucker-ui",
                      "repository": "registry.gitlab.com/datatruckerio",
                      "tagName": "latest"
                    },
                    "name": "api"
                  },
                  "DatatruckerConfig": "datatruckerconfig-sample",
                  "JobDefinitions": [
                    {
                      "name": "echoapi",
                      "restmethod": "GET",
                      "tenant": "Admin",
                      "type": "Util-Echo",
                      "validations": {
                        "properties": {
                          "voila": {
                            "enum": [
                              "true",
                              "false"
                            ],
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    }
                  ],
                  "Keys": {
                    "configmap": "placeholder"
                  },
                  "Replicas": 1,
                  "Resources": {
                    "limits": {
                      "cpu": "500m",
                      "memory": "256Mi"
                    },
                    "requests": {
                      "cpu": "250m",
                      "memory": "256Mi"
                    }
                  },
                  "Scripts": {
                    "configmap": "placeholder"
                  },
                  "Type": "Job"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/datatruckerio/datatrucker-operator:2.0.0
          createdAt: "2021-09-08 01:01:01"
          operators.operatorframework.io/builder: operator-sdk-v1.10.1-ocp
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: hhttps://gitlab.com/datatruckerio/datatrucker-server.git
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              - creates secrets to hold server configs
              - create tempDB for protoypting
              - create configs for seperating Login, management and Jobs endpoints
              - Create crypto configs
            displayName: Datatrucker Config
            kind: DatatruckerConfig
            name: datatruckerconfigs.datatrucker.datatrucker.io
            version: v1
          - description: '- creates an API as per Job Definitions'
            displayName: Datatrucker Flow
            kind: DatatruckerFlow
            name: datatruckerflows.datatrucker.datatrucker.io
            version: v1
        description: "## DataTrucker.IO\n\nDataTrucker.IO is a simple no-code / less-code
          API Backend\n\n### What does it do ?\n\nDatatrucker.IO is a product capable
          of reading simple json/yaml configs and building th code necessary for converting
          it into an API.\nAlong with building the code, it will also host the code
          base on a nodejs server , i.e. it will immediately make it available for
          consumption.\n\n### What does it offload from a developer ?\n\nDataTrucker
          is capable of removing the most common activities which a developer needs
          to do on every new project A few of such common activities are\n\n- Creating
          an API endpoint with a specified business logic (using simple plugins)\n-
          Applying standard RBAC\n- Applying Authorization logic\n- Applying hardening
          on endpoints\n- Log management\n- Connecting to variety of systems\n- Modularizing
          business logic\n- The best of doing it with little to no code\n\n### watch
          the quick elevator pitch to understand datatrucker.io\n\n https://youtu.be/DKLFDqhjs5M\n "
        displayName: DataTrucker.IO
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - datatrucker
        - operator
        - nocode
        - apibuilder
        links:
        - name: Website
          url: https://www.datatrucker.io/
        - name: Git Repo
          url: https://gitlab.com/datatruckerio/datatrucker-server.git
        maintainers:
        - email: gauravshankar.can@gmail.com
          name: Gaurav Shankar
        maturity: alpha
        provider:
          name: DataTrucker.IO
          url: https://www.datatrucker.io/
        relatedImages:
        - docker.io/datatruckerio/datatrucker-operator:2.0.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/openshift-community-operators/datatrucker-operator@sha256:4ab1d683d95d3eeba944b977594aff2e3b3e7203f56598b2fb2f7cff75354be3
        version: 2.0.0
      entries:
      - name: datatrucker-operator.v2.0.0
        version: 2.0.0
      - name: datatrucker-operator.v1.3.2
        version: 1.3.2
      - name: datatrucker-operator.v1.3.1
        version: 1.3.1
      - name: datatrucker-operator.v1.3.0
        version: 1.3.0
      name: alpha
    defaultChannel: alpha
    packageName: datatrucker-operator
    provider:
      name: DataTrucker.IO
      url: https://www.datatrucker.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: ""
    name: percona-server-mysql-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-server-mysql-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQL",
              "metadata": {
                "name": "ps-cluster1",
                "finalizers": [
                  "percona.com/delete-mysql-pods-in-order"
                ]
              },
              "spec": {
                "crVersion": "1.0.0",
                "secretsName": "ps-cluster1-secrets",
                "sslSecretName": "ps-cluster1-ssl",
                "updateStrategy": "SmartUpdate",
                "upgradeOptions": {
                  "versionServiceEndpoint": "https://check.percona.com",
                  "apply": "disabled"
                },
                "mysql": {
                  "clusterType": "group-replication",
                  "autoRecovery": true,
                  "image": "docker.io/percona/percona-server:8.4.6-6.1",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "resources": {
                    "requests": {
                      "memory": "2Gi"
                    },
                    "limits": {
                      "memory": "4Gi"
                    }
                  },
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "exposePrimary": {
                    "enabled": true
                  },
                  "volumeSpec": {
                    "persistentVolumeClaim": {
                      "resources": {
                        "requests": {
                          "storage": "2Gi"
                        }
                      }
                    }
                  },
                  "gracePeriod": 600
                },
                "proxy": {
                  "haproxy": {
                    "enabled": true,
                    "size": 3,
                    "image": "docker.io/percona/haproxy:2.8.15",
                    "imagePullPolicy": "Always",
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "1Gi",
                        "cpu": "600m"
                      }
                    },
                    "gracePeriod": 30,
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    }
                  },
                  "router": {
                    "enabled": false,
                    "image": "docker.io/percona/percona-mysql-router:8.4.6",
                    "imagePullPolicy": "Always",
                    "size": 3,
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "256M"
                      },
                      "limits": {
                        "memory": "256M"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "gracePeriod": 30
                  }
                },
                "orchestrator": {
                  "enabled": false,
                  "image": "docker.io/percona/percona-orchestrator:3.2.6-18",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "gracePeriod": 30,
                  "resources": {
                    "requests": {
                      "memory": "128M"
                    },
                    "limits": {
                      "memory": "256M"
                    }
                  }
                },
                "pmm": {
                  "enabled": false,
                  "image": "docker.io/percona/pmm-client:3.4.1",
                  "imagePullPolicy": "Always",
                  "resources": {
                    "requests": {
                      "memory": "150M",
                      "cpu": "300m"
                    }
                  },
                  "serverHost": "monitoring-service"
                },
                "backup": {
                  "enabled": true,
                  "image": "docker.io/percona/percona-xtrabackup:8.4.0-4.1",
                  "imagePullPolicy": "Always",
                  "storages": {
                    "s3-us-west": {
                      "type": "s3",
                      "verifyTLS": true,
                      "s3": {
                        "bucket": "S3-BACKUP-BUCKET-NAME-HERE",
                        "credentialsSecret": "ps-cluster1-s3-credentials",
                        "region": "us-west-2"
                      }
                    }
                  }
                },
                "toolkit": {
                  "image": "docker.io/percona/percona-toolkit:3.7.0-2",
                  "imagePullPolicy": "Always"
                }
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLBackup",
              "metadata": {
                "name": "backup1",
                "finalizers": [
                  "percona.com/delete-backup"
                ]
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "storageName": "minio"
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLRestore",
              "metadata": {
                "name": "restore1"
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "backupName": "backup1"
              }
            }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: docker.io/percona/percona-server-mysql-operator:1.0.0
          createdAt: "2025-11-13T08:00:00.000Z"
          description: Percona Operator for MySQL based on Percona Server for MySQL
            automates the creation and management of highly available, enterprise-ready
            MySQL database clusters on Kubernetes.
          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"
          repository: https://github.com/percona/percona-server-mysql-operator
          support: Percona
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaServerMySQLBackup is the Schema for the perconaservermysqlbackups
              API
            displayName: Percona Server MySQL Backup
            kind: PerconaServerMySQLBackup
            name: perconaservermysqlbackups.ps.percona.com
            version: v1
          - description: PerconaServerMySQLRestore is the Schema for the perconaservermysqlrestores
              API
            displayName: Percona Server MySQL Restore
            kind: PerconaServerMySQLRestore
            name: perconaservermysqlrestores.ps.percona.com
            version: v1
          - description: PerconaServerMySQL is the Schema for the perconaservermysqls
              API
            displayName: Percona Server MySQL
            kind: PerconaServerMySQL
            name: perconaservermysqls.ps.percona.com
            version: v1
        description: |2+

          ## Percona is Cloud Native

          Percona Operator for MySQL based on Percona Server for MySQL follows our best practices for deployment and configuration of highly-available, fault-tolerant MySQL instances in a Kubernetes-based environment on-premises or in the cloud. It provides the following capabilities:
          * Deploy group replication MySQL clusters with HAProxy or MySQL Router
          * Deploy asynchronous replication MySQL clusters with Orchestrator and HAProxy
          * Expose clusters with regular Kubernetes Services
          * Monitor the cluster with Percona Monitoring and Management
          * Customize MySQL configuration
          * Manage system user passwords

        displayName: Percona Operator for MySQL based on Percona Server for MySQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mysql
        - percona
        - database
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-mysql/ps/
        - name: Github
          url: https://github.com/percona/percona-server-mysql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
        relatedImages:
        - quay.io/community-operator-pipeline-prod/percona-server-mysql-operator@sha256:b0e67a16cd6ba5e3e6ec109316b013ca01ede4149661ba48ef549f80b17a0504
        - docker.io/percona/percona-server-mysql-operator:1.0.0
        version: 1.0.0
      entries:
      - name: percona-server-mysql-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: percona-server-mysql-operator
    provider:
      name: Percona
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Foundation Model Stack
      provider-url: ""
    name: multi-nic-cni-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multi-nic-cni-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nic-cni-operator-multi-nicd",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.3.1",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nicd"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.3.1",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "multi-nic-cni-operator-highspeed",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "highspeed"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-node-1",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "node-1"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3-192.168.0.0-26"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "ipvlanl3"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.3.1
          createdAt: "2025-11-04T05:18:29Z"
          operators.operatorframework.io/builder: operator-sdk-v1.41.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CIDR is the Schema for the cidrs API
            displayName: CIDR
            kind: CIDR
            name: cidrs.multinic.fms.io
            version: v1
          - description: Config is the Schema for the configs API
            displayName: Config
            kind: Config
            name: configs.multinic.fms.io
            version: v1
          - description: DeviceClass is the Schema for the deviceclasses API
            displayName: Device Class
            kind: DeviceClass
            name: deviceclasses.multinic.fms.io
            version: v1
          - description: HostInterface is the Schema for the hostinterfaces API
            displayName: Host Interface
            kind: HostInterface
            name: hostinterfaces.multinic.fms.io
            version: v1
          - description: IPPool is the Schema for the ippools API
            displayName: IPPool
            kind: IPPool
            name: ippools.multinic.fms.io
            version: v1
          - description: MultiNicNetwork is the Schema for the multinicnetworks API
            displayName: Multi Nic Network
            kind: MultiNicNetwork
            name: multinicnetworks.multinic.fms.io
            version: v1
        description: "Multi-NIC CNI Operator helps to attaching secondary network
          interfaces that is linked to \ndifferent network interfaces on host (NIC)
          to pod provides benefits of network segmentation \nand top-up network bandwidth
          in the containerization system.\n\nMulti-NIC CNI is the CNI plugin operating
          on top of Multus CNI. \nHowever, instead of defining and handling each secondary
          network interface one by one, \nthis CNI automatically discovers all available
          secondary interfaces and handles them as a NIC pool. \nWith this manner,
          it can provide the following benefits.\n\ni) Common secondary network definition:
          User can manage only one network definition for \n   multiple secondary
          interfaces with a common CNI main plugin such as ipvlan, macvlan, and sr-iov.\n\nii)
          Common NAT-bypassing network solution: All secondary NICs on each host can
          be assigned \n    with non-conflict CIDR and non-conflict L3 routing configuration
          that can omit an overlay networking overhead. \n    Particularyly, the CNI
          is built-in with L3 IPVLAN solution composing of the following functionalities.\n\n
          \   1. Interface-host-devision CIDR Computation: compute allocating CIDR
          range for each host and each interface \n       from a single global subnet
          with the number of bits for hosts and for interface.\n    2. L3 Host Route
          Configuration: configure L3 routes (next hop via dev) in host route table
          according to the computed CIDR.\n    3. Distributed IP Allocation Management:
          manage IP allocation/deallocation distributedly via the communication \n
          \      between CNI program and daemon at each host.\n\niii) Policy-based
          secondary network attachment: Instead of statically set the desired \n     host's
          master interface name one by one, user can define a policy on attaching
          multiple secondary network \n     interfaces such as specifying only the
          number of desired interfaces, filtering only highspeed NICs.\n\n## Instructions\n\nPlease
          check the [User Guide](https://foundation-model-stack.github.io/multi-nic-cni/user_guide/)"
        displayName: multi-nic-cni-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multi-nic
        - cni
        - network
        links:
        - name: Multi-NIC CNI Operator
          url: https://github.com/foundation-model-stack/multi-nic-cni
        maintainers:
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: minzhang@redhat.com
          name: Min Zhang
        - email: ebendror@redhat.com
          name: Eran Ben Dror
        maturity: alpha
        provider:
          name: Foundation Model Stack
        relatedImages:
        - ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.3.1
        - quay.io/community-operator-pipeline-prod/multi-nic-cni-operator:1.3.1
        version: 1.3.1
      entries:
      - name: multi-nic-cni-operator.v1.3.1
        version: 1.3.1
      - name: multi-nic-cni-operator.v1.3.0
        version: 1.3.0
      - name: multi-nic-cni-operator.v1.2.9
        version: 1.2.9
      - name: multi-nic-cni-operator.v1.2.8
        version: 1.2.8
      - name: multi-nic-cni-operator.v1.2.2
        version: 1.2.2
      - name: multi-nic-cni-operator.v1.2.1
        version: 1.2.1
      - name: multi-nic-cni-operator.v1.0.2
        version: 1.0.2
      name: alpha
    - currentCSV: multi-nic-cni-operator.v1.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nic-cni-operator-multi-nicd",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.7",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nicd"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.7",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "multi-nic-cni-operator-highspeed",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "highspeed"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-node-1",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "node-1"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3-192.168.0.0-26"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "ipvlanl3"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.7
          createdAt: "2025-05-09T12:45:12Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CIDR is the Schema for the cidrs API
            displayName: CIDR
            kind: CIDR
            name: cidrs.multinic.fms.io
            version: v1
          - description: Config is the Schema for the configs API
            displayName: Config
            kind: Config
            name: configs.multinic.fms.io
            version: v1
          - description: DeviceClass is the Schema for the deviceclasses API
            displayName: Device Class
            kind: DeviceClass
            name: deviceclasses.multinic.fms.io
            version: v1
          - description: HostInterface is the Schema for the hostinterfaces API
            displayName: Host Interface
            kind: HostInterface
            name: hostinterfaces.multinic.fms.io
            version: v1
          - description: IPPool is the Schema for the ippools API
            displayName: IPPool
            kind: IPPool
            name: ippools.multinic.fms.io
            version: v1
          - description: MultiNicNetwork is the Schema for the multinicnetworks API
            displayName: Multi Nic Network
            kind: MultiNicNetwork
            name: multinicnetworks.multinic.fms.io
            version: v1
        description: "Multi-NIC CNI Operator helps to attaching secondary network
          interfaces that is linked to \ndifferent network interfaces on host (NIC)
          to pod provides benefits of network segmentation \nand top-up network bandwidth
          in the containerization system.\n\nMulti-NIC CNI is the CNI plugin operating
          on top of Multus CNI. \nHowever, instead of defining and handling each secondary
          network interface one by one, \nthis CNI automatically discovers all available
          secondary interfaces and handles them as a NIC pool. \nWith this manner,
          it can provide the following benefits.\n\ni) Common secondary network definition:
          User can manage only one network definition for \n   multiple secondary
          interfaces with a common CNI main plugin such as ipvlan, macvlan, and sr-iov.\n\nii)
          Common NAT-bypassing network solution: All secondary NICs on each host can
          be assigned \n    with non-conflict CIDR and non-conflict L3 routing configuration
          that can omit an overlay networking overhead. \n    Particularyly, the CNI
          is built-in with L3 IPVLAN solution composing of the following functionalities.\n\n
          \   1. Interface-host-devision CIDR Computation: compute allocating CIDR
          range for each host and each interface \n       from a single global subnet
          with the number of bits for hosts and for interface.\n    2. L3 Host Route
          Configuration: configure L3 routes (next hop via dev) in host route table
          according to the computed CIDR.\n    3. Distributed IP Allocation Management:
          manage IP allocation/deallocation distributedly via the communication \n
          \      between CNI program and daemon at each host.\n\niii) Policy-based
          secondary network attachment: Instead of statically set the desired \n     host's
          master interface name one by one, user can define a policy on attaching
          multiple secondary network \n     interfaces such as specifying only the
          number of desired interfaces, filtering only highspeed NICs.\n\n## Instructions\n\nPlease
          check the [User Guide](https://foundation-model-stack.github.io/multi-nic-cni/user_guide/)"
        displayName: multi-nic-cni-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multi-nic
        - cni
        - network
        links:
        - name: Multi-NIC CNI Operator
          url: https://github.com/foundation-model-stack/multi-nic-cni
        maintainers:
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: minzhang@redhat.com
          name: Min Zhang
        - email: ebendror@redhat.com
          name: Eran Ben Dror
        maturity: alpha
        provider:
          name: Foundation Model Stack
        relatedImages:
        - ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.7
        - quay.io/community-operator-pipeline-prod/multi-nic-cni-operator:1.2.7
        version: 1.2.7
      entries:
      - name: multi-nic-cni-operator.v1.2.7
        version: 1.2.7
      - name: multi-nic-cni-operator.v1.2.3
        version: 1.2.3
      - name: multi-nic-cni-operator.v1.2.0
        version: 1.2.0
      - name: multi-nic-cni-operator.v1.1.0
        version: 1.1.0
      name: beta
    - currentCSV: multi-nic-cni-operator.v1.2.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nic-cni-operator-multi-nicd",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.6",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nicd"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.6",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "multi-nic-cni-operator-highspeed",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "highspeed"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-node-1",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "node-1"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3-192.168.0.0-26"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "ipvlanl3"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.6
          createdAt: "2025-03-24T14:49:54Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CIDR is the Schema for the cidrs API
            displayName: CIDR
            kind: CIDR
            name: cidrs.multinic.fms.io
            version: v1
          - description: Config is the Schema for the configs API
            displayName: Config
            kind: Config
            name: configs.multinic.fms.io
            version: v1
          - description: DeviceClass is the Schema for the deviceclasses API
            displayName: Device Class
            kind: DeviceClass
            name: deviceclasses.multinic.fms.io
            version: v1
          - description: HostInterface is the Schema for the hostinterfaces API
            displayName: Host Interface
            kind: HostInterface
            name: hostinterfaces.multinic.fms.io
            version: v1
          - description: IPPool is the Schema for the ippools API
            displayName: IPPool
            kind: IPPool
            name: ippools.multinic.fms.io
            version: v1
          - description: MultiNicNetwork is the Schema for the multinicnetworks API
            displayName: Multi Nic Network
            kind: MultiNicNetwork
            name: multinicnetworks.multinic.fms.io
            version: v1
        description: "Multi-NIC CNI Operator helps to attaching secondary network
          interfaces that is linked to \ndifferent network interfaces on host (NIC)
          to pod provides benefits of network segmentation \nand top-up network bandwidth
          in the containerization system.\n\nMulti-NIC CNI is the CNI plugin operating
          on top of Multus CNI. \nHowever, instead of defining and handling each secondary
          network interface one by one, \nthis CNI automatically discovers all available
          secondary interfaces and handles them as a NIC pool. \nWith this manner,
          it can provide the following benefits.\n\ni) Common secondary network definition:
          User can manage only one network definition for \n   multiple secondary
          interfaces with a common CNI main plugin such as ipvlan, macvlan, and sr-iov.\n\nii)
          Common NAT-bypassing network solution: All secondary NICs on each host can
          be assigned \n    with non-conflict CIDR and non-conflict L3 routing configuration
          that can omit an overlay networking overhead. \n    Particularyly, the CNI
          is built-in with L3 IPVLAN solution composing of the following functionalities.\n\n
          \   1. Interface-host-devision CIDR Computation: compute allocating CIDR
          range for each host and each interface \n       from a single global subnet
          with the number of bits for hosts and for interface.\n    2. L3 Host Route
          Configuration: configure L3 routes (next hop via dev) in host route table
          according to the computed CIDR.\n    3. Distributed IP Allocation Management:
          manage IP allocation/deallocation distributedly via the communication \n
          \      between CNI program and daemon at each host.\n\niii) Policy-based
          secondary network attachment: Instead of statically set the desired \n     host's
          master interface name one by one, user can define a policy on attaching
          multiple secondary network \n     interfaces such as specifying only the
          number of desired interfaces, filtering only highspeed NICs.\n\n## Instructions\n\nPlease
          check the [User Guide](https://foundation-model-stack.github.io/multi-nic-cni/user_guide/)"
        displayName: multi-nic-cni-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multi-nic
        - cni
        - network
        links:
        - name: Multi-NIC CNI Operator
          url: https://github.com/foundation-model-stack/multi-nic-cni
        maintainers:
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: minzhang@redhat.com
          name: Min Zhang
        - email: ebendror@redhat.com
          name: Eran Ben Dror
        maturity: alpha
        provider:
          name: Foundation Model Stack
        relatedImages:
        - ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.6
        - quay.io/community-operator-pipeline-prod/multi-nic-cni-operator:1.2.6
        version: 1.2.6
      entries:
      - name: multi-nic-cni-operator.v1.2.6
        version: 1.2.6
      - name: multi-nic-cni-operator.v1.2.5
        version: 1.2.5
      - name: multi-nic-cni-operator.v1.2.4
        version: 1.2.4
      - name: multi-nic-cni-operator.v1.0.5
        version: 1.0.5
      - name: multi-nic-cni-operator.v1.0.4
        version: 1.0.4
      - name: multi-nic-cni-operator.v1.0.3
        version: 1.0.3
      name: stable
    defaultChannel: stable
    packageName: multi-nic-cni-operator
    provider:
      name: Foundation Model Stack
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sns-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sns-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sns.services.k8s.aws/v1alpha1",
                "kind": "PlatformApplication",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sns.services.k8s.aws/v1alpha1",
                "kind": "PlatformEndpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sns.services.k8s.aws/v1alpha1",
                "kind": "Topic",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sns-controller:1.3.0
          createdAt: "2025-11-29T04:10:34Z"
          description: AWS SNS controller is a service controller for managing SNS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PlatformApplication represents the state of an AWS sns PlatformApplication
              resource.
            displayName: PlatformApplication
            kind: PlatformApplication
            name: platformapplications.sns.services.k8s.aws
            version: v1alpha1
          - description: PlatformEndpoint represents the state of an AWS sns PlatformEndpoint
              resource.
            displayName: PlatformEndpoint
            kind: PlatformEndpoint
            name: platformendpoints.sns.services.k8s.aws
            version: v1alpha1
          - description: Subscription represents the state of an AWS sns Subscription
              resource.
            displayName: Subscription
            kind: Subscription
            name: subscriptions.sns.services.k8s.aws
            version: v1alpha1
          - description: Topic represents the state of an AWS sns Topic resource.
            displayName: Topic
            kind: Topic
            name: topics.sns.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Simple Notification Service (SNS) resources in AWS from within your Kubernetes cluster.

          **About Amazon SNS**

          Amazon Simple Notification Service (Amazon SNS) is a managed service that provides message delivery from publishers to subscribers (also known as producers and consumers). Publishers communicate asynchronously with subscribers by sending messages to a topic, which is a logical access point and communication channel. Clients can subscribe to the SNS topic and receive published messages using a supported endpoint type, such as Amazon Kinesis Data Firehose, Amazon SQS, AWS Lambda, HTTP, email, mobile push notifications, and mobile text messages (SMS).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SNS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sns
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SNS Developer Resources
          url: https://aws.amazon.com/sns/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: sns maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sns-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-sns-controller@sha256:49d4f5f5a7747cdbdae724153d6afce7fdea9a340707e6c6aa0e946bd9295d79
        version: 1.3.0
      entries:
      - name: ack-sns-controller.v1.3.0
        version: 1.3.0
      - name: ack-sns-controller.v1.2.3
        version: 1.2.3
      - name: ack-sns-controller.v1.2.2
        version: 1.2.2
      - name: ack-sns-controller.v1.2.1
        version: 1.2.1
      - name: ack-sns-controller.v1.2.0
        version: 1.2.0
      - name: ack-sns-controller.v1.1.16
        version: 1.1.16
      name: alpha
    defaultChannel: alpha
    packageName: ack-sns-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Microsoft
      provider-url: ""
    name: azure-service-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: azure-service-operator.v1.0.59040
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "APIMgmtAPI",
                "metadata": {
                  "name": "aso-apimgmtapi-sample"
                },
                "spec": {
                  "apiId": "apiId0",
                  "apiService": "apimservice-sample",
                  "location": "westus",
                  "properties": {
                    "apiVersionDescription": "API version description",
                    "description": "API description",
                    "displayName": "aso-apimgmtapi-sample",
                    "isCurrent": true,
                    "isOnline": true,
                    "path": "/api/test",
                    "protocols": [
                      "http"
                    ],
                    "subscriptionRequired": false
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "ApimService",
                "metadata": {
                  "name": "apimservice-sample"
                },
                "spec": {
                  "appInsightsName": "appinsights-sample-wmm",
                  "appInsightsResourceGroup": "resourcegroup-azure-operators-wmm",
                  "location": "westus",
                  "publisherEmail": {
                    "Your email": ""
                  },
                  "publisherName": {
                    "Your name": ""
                  },
                  "resourceGroup": "resourcegroup-azure-operators",
                  "tier": "premium",
                  "vnetName": "virtualnetwork-sample",
                  "vnetResourceGroup": "resourcegroup-azure-operators",
                  "vnetSubnetName": "test1",
                  "vnetType": "none"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AppInsights",
                "metadata": {
                  "name": "appinsights-sample"
                },
                "spec": {
                  "applicationType": "other",
                  "kind": "other",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AppInsightsApiKey",
                "metadata": {
                  "name": "key-sample"
                },
                "spec": {
                  "appInsights": "appinsights-sample",
                  "authSDKControlChannel": true,
                  "readTelemetry": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "writeAnnotations": true
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureLoadBalancer",
                "metadata": {
                  "name": "lb-sample-01"
                },
                "spec": {
                  "backendAddressPoolName": "test",
                  "backendPort": 3000,
                  "frontendPortRangeEnd": 2000,
                  "frontendPortRangeStart": 1001,
                  "inboundNatPoolName": "test",
                  "location": "SouthCentralUS",
                  "publicIPAddressName": "lb-pip-sample-01",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureNetworkInterface",
                "metadata": {
                  "name": "nic-sample-01"
                },
                "spec": {
                  "location": "SouthCentralUS",
                  "publicIPAddressName": "nic-pip-sample-01",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnetName": "test1",
                  "vnetName": "vnet-sample-01"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureNetworkInterface",
                "metadata": {
                  "name": "nic-sample-02"
                },
                "spec": {
                  "location": "SouthCentralUS",
                  "publicIPAddressName": "nic-pip-sample-02",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnetName": "test1",
                  "vnetName": "vnet-sample-02"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzurePublicIPAddress",
                "metadata": {
                  "name": "lb-pip-sample-01"
                },
                "spec": {
                  "idleTimeoutInMinutes": 10,
                  "location": "SouthCentralUS",
                  "publicIPAddressVersion": "IPv4",
                  "publicIPAllocationMethod": "Static",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "skuName": "Basic"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzurePublicIPAddress",
                "metadata": {
                  "name": "nic-pip-sample-01"
                },
                "spec": {
                  "idleTimeoutInMinutes": 10,
                  "location": "SouthCentralUS",
                  "publicIPAddressVersion": "IPv4",
                  "publicIPAllocationMethod": "Static",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "skuName": "Basic"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzurePublicIPAddress",
                "metadata": {
                  "name": "nic-pip-sample-02"
                },
                "spec": {
                  "idleTimeoutInMinutes": 10,
                  "location": "SouthCentralUS",
                  "publicIPAddressVersion": "IPv4",
                  "publicIPAllocationMethod": "Static",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "skuName": "Basic"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSQLManagedUser",
                "metadata": {
                  "name": "azuresqlmanageduser-sample"
                },
                "spec": {
                  "dbName": "azuresqldatabase-sample",
                  "managedIdentityClientId": null,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "db_owner"
                  ],
                  "server": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSQLUser",
                "metadata": {
                  "name": "sqluser-sample"
                },
                "spec": {
                  "dbName": "azuresqldatabase-sample1",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "db_owner"
                  ],
                  "server": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSQLVNetRule",
                "metadata": {
                  "name": "azuresqlvnetrule-sample"
                },
                "spec": {
                  "ignoreMissingServiceEndpoint": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "subnetName": "test1",
                  "vNetName": "virtualnetwork-sample",
                  "vNetResourceGroup": "resourcegroup-vnet",
                  "vNetSubscriptionID": {
                    "vnet_subscription_id": ""
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlAction",
                "metadata": {
                  "name": "azuresqlaction-sample"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverName": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlDatabase",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "azuresqldatabase-sample1"
                },
                "spec": {
                  "edition": 0,
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlDatabase",
                "metadata": {
                  "labels": {
                    "tag1": "valueA",
                    "tag2": "valueB"
                  },
                  "name": "azuresqldatabase-sample3"
                },
                "spec": {
                  "edition": 0,
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlFailoverGroup",
                "metadata": {
                  "name": "azuresqlfailovergroup-sample"
                },
                "spec": {
                  "databaselist": [
                    "azuresqldatabase-sample1",
                    "azuresqldatabase-sample2"
                  ],
                  "failovergraceperiod": 30,
                  "failoverpolicy": "Automatic",
                  "location": "eastus",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "secondaryserver": "sqlserver-samplesec",
                  "secondaryserverresourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-samplepri"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlFirewallRule",
                "metadata": {
                  "name": "sqlf-allowazuresvcaccess"
                },
                "spec": {
                  "endipaddress": "0.0.0.0",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "startipaddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "sqlserver-sample-777"
                },
                "spec": {
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "sqlserver-sample777"
                },
                "spec": {
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVMScaleSet",
                "metadata": {
                  "name": "vmss-sample-01"
                },
                "spec": {
                  "adminUserName": "azureuser7",
                  "backendAddressPoolName": "test",
                  "capacity": 3,
                  "inboundNatPoolName": "test",
                  "loadBalancerName": "lb-sample-01",
                  "location": "SouthCentralUS",
                  "osType": "Linux",
                  "platformImageURN": "Canonical:UbuntuServer:16.04-LTS:latest",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sshPublicKeyData": "{ssh public key}",
                  "subnetName": "test1",
                  "virtualNetworkName": "vnet-sample-01",
                  "vmSize": "Standard_DS1_v2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVirtualMachine",
                "metadata": {
                  "name": "hpfvm1"
                },
                "spec": {
                  "adminUserName": "azureuser",
                  "location": "SouthCentralUS",
                  "networkInterfaceName": "nic-sample-02",
                  "osType": "Linux",
                  "platformImageURN": "Canonical:UbuntuServer:16.04-LTS:latest",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sshPublicKeyData": {
                    "ssh key": ""
                  },
                  "vmSize": "Standard_DS1_v2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVirtualMachine",
                "metadata": {
                  "name": "hpfvm20"
                },
                "spec": {
                  "adminUserName": "azureuser",
                  "location": "SouthCentralUS",
                  "networkInterfaceName": "nic-sample-01",
                  "osType": "Linux",
                  "platformImageURN": "Canonical:UbuntuServer:16.04-LTS:latest",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sshPublicKeyData": "{ssh public key}",
                  "vmSize": "Standard_DS1_v2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVirtualMachineExtension",
                "metadata": {
                  "name": "vmext20a"
                },
                "spec": {
                  "autoUpgradeMinorVersion": true,
                  "forceUpdateTag": "Test2",
                  "location": "SouthCentralUS",
                  "protectedSettings": "{}",
                  "publisher": "Microsoft.Azure.Extensions",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "settings": "{\"commandToExecute\":\"echo 'hello, world'\"}",
                  "typeHandlerVersion": "2.1",
                  "typeName": "CustomScript",
                  "vmName": "vm20"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "BlobContainer",
                "metadata": {
                  "name": "blobcontainer-sample"
                },
                "spec": {
                  "accesslevel": "Container",
                  "accountname": "storageaccountsample777",
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "ConsumerGroup",
                "metadata": {
                  "name": "consumergroup-sample-1"
                },
                "spec": {
                  "eventHub": "eventhub-sample-1",
                  "namespace": "eventhubnamespace-sample-1",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "CosmosDB",
                "metadata": {
                  "name": "cosmosdb-sample-1"
                },
                "spec": {
                  "kind": "GlobalDocumentDB",
                  "location": "westus",
                  "properties": {
                    "databaseAccountOfferType": "Standard",
                    "isVirtualNetworkFilterEnabled": true
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "CosmosDB",
                "metadata": {
                  "labels": {
                    "CosmosAccountType": "Production"
                  },
                  "name": "cosmosdb-sample-2"
                },
                "spec": {
                  "ipRules": [
                    "104.42.195.92,40.76.54.131,52.176.6.30,52.169.50.45,52.187.184.26"
                  ],
                  "kind": "GlobalDocumentDB",
                  "location": "eastus",
                  "locations": [
                    {
                      "failoverPriority": 0,
                      "isZoneRedundant": true,
                      "locationName": "eastus"
                    },
                    {
                      "failoverPriority": 1,
                      "locationName": "westus"
                    }
                  ],
                  "properties": {
                    "databaseAccountOfferType": "Standard",
                    "enableMultipleWriteLocations": true
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "Eventhub",
                "metadata": {
                  "name": "eventhub-sample-1"
                },
                "spec": {
                  "authorizationRule": {
                    "name": "RootManageSharedAccessKey",
                    "rights": [
                      "Listen",
                      "Manage",
                      "Send"
                    ]
                  },
                  "location": "westus",
                  "namespace": "eventhubnamespace-sample-1",
                  "properties": {
                    "messageRetentionInDays": 7,
                    "partitionCount": 2
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "Eventhub",
                "metadata": {
                  "name": "eventhub-sample-2307-10-capture"
                },
                "spec": {
                  "authorizationRule": {
                    "name": "RootManageSharedAccessKey",
                    "rights": [
                      "Listen",
                      "Manage",
                      "Send"
                    ]
                  },
                  "location": "westus",
                  "namespace": "eventhubnamespace-sample-1",
                  "properties": {
                    "captureDescription": {
                      "destination": {
                        "archiveNameFormat": "{Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}",
                        "blobContainer": "capturecontainer",
                        "name": "EventHubArchive.AzureBlockBlob",
                        "storageAccount": {
                          "accountName": "storageaccountauv1",
                          "resourceGroup": "my-resource-group"
                        }
                      },
                      "enabled": true,
                      "intervalInSeconds": 120,
                      "sizeLimitInBytes": 524288000
                    },
                    "messageRetentionInDays": 7,
                    "partitionCount": 2
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "EventhubNamespace",
                "metadata": {
                  "name": "eventhubnamespace-sample-1"
                },
                "spec": {
                  "location": "westus",
                  "properties": {
                    "isAutoInflateEnabled": false,
                    "kafkaEnabled": false,
                    "maximumThroughputUnits": 0
                  },
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sku": {
                    "capacity": 1,
                    "name": "Standard",
                    "tier": "Standard"
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "KeyVault",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "keyvaultsample123"
                },
                "spec": {
                  "accessPolicies": [
                    {
                      "objectID": "\u003cobjectID\u003e",
                      "permissions": {
                        "certificates": [
                          "list",
                          "get"
                        ],
                        "keys": [
                          "list",
                          "get"
                        ],
                        "secrets": [
                          "list",
                          "get"
                        ],
                        "storage": [
                          "list",
                          "get"
                        ]
                      },
                      "tenantID": "\u003ctenantID\u003e"
                    }
                  ],
                  "enableSoftDelete": false,
                  "location": "westus",
                  "networkPolicies": {
                    "bypass": "AzureServices",
                    "defaultAction": "Allow",
                    "ipRules": [
                      "172.16.0.0/24",
                      "172.16.1.0/24"
                    ],
                    "virtualNetworkRules": [
                      "/subscriptions/\u003csubid\u003e/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1",
                      "/subscriptions/\u003csubid\u003e/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet2"
                    ]
                  },
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sku": {
                    "name": "standard"
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "KeyVault",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "keyvaultsample123-simple"
                },
                "spec": {
                  "enableSoftDelete": false,
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "KeyVaultKey",
                "metadata": {
                  "name": "keyvaultkey-sample"
                },
                "spec": {
                  "keySize": 4096,
                  "keyVault": "keyvaultsample123",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "type": "RSA"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLDatabase",
                "metadata": {
                  "name": "mysqldatabase-sample"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLDatabase",
                "metadata": {
                  "name": "mysqldatabase-sample2"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLFirewallRule",
                "metadata": {
                  "name": "mysqlfirewallrule-sample"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLFirewallRule",
                "metadata": {
                  "name": "mysqlfirewallrule-sample2"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample2",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLServer",
                "metadata": {
                  "name": "mysqlserver-replica"
                },
                "spec": {
                  "createMode": "Replica",
                  "location": "eastus2",
                  "replicaProperties": {
                    "sourceServerId": "/subscriptions/{SUBID}/resourceGroups/resourcegroup-azure-operators/providers/Microsoft.DBforMySQL/servers/mysqlserver-sample"
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLServer",
                "metadata": {
                  "name": "mysqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus2",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "8.0",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLServer",
                "metadata": {
                  "name": "mysqlserver-sample2"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus2",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "8.0",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLUser",
                "metadata": {
                  "name": "mysqluser-sample"
                },
                "spec": {
                  "dbName": "mysqldatabase-sample",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "SELECT"
                  ],
                  "server": "mysqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLVNetRule",
                "metadata": {
                  "name": "mysqlvnetrule-sample"
                },
                "spec": {
                  "ignoreMissingServiceEndpoint": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample",
                  "subnetName": "test1",
                  "vNetName": "virtualnetwork-sample",
                  "vNetResourceGroup": "resourcegroup-vnet",
                  "vNetSubscriptionID": {
                    "vnet_subscription_id": ""
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLDatabase",
                "metadata": {
                  "name": "postgresqldatabase-sample"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLDatabase",
                "metadata": {
                  "name": "postgresqldatabase-sample2"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLFirewallRule",
                "metadata": {
                  "name": "postgresqlfirewallrule-sample"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLFirewallRule",
                "metadata": {
                  "name": "postgresqlfirewallrule-sample2"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample2",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "name": "postgresqlserver-replica3"
                },
                "spec": {
                  "createMode": "Replica",
                  "location": "eastus",
                  "replicaProperties": {
                    "sourceServerId": "/subscriptions/{subscription ID}/resourceGroups/resourcegroup-azure-operators/providers/Microsoft.DBforPostgreSQL/servers/postgresqlserver-sample"
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "name": "postgresqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "10",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "name": "postgresqlserver-sample2"
                },
                "spec": {
                  "location": "southcentralus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "10",
                  "sku": {
                    "capacity": 2,
                    "family": "Gen5",
                    "name": "B_Gen5_2",
                    "size": "51200",
                    "tier": "Basic"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLUser",
                "metadata": {
                  "name": "psqluser-sample"
                },
                "spec": {
                  "dbName": "postgresqldatabase-sample",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "azure_pg_admin"
                  ],
                  "server": "postgresqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLVNetRule",
                "metadata": {
                  "name": "postgresqlvnetrule-sample1"
                },
                "spec": {
                  "ignoreMissingServiceEndpoint": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample",
                  "subnetName": "test1",
                  "vNetName": "virtualnetwork-sample",
                  "vNetResourceGroup": "resourcegroup-azure-operators",
                  "vNetSubscriptionID": {
                    "vnet_subscription_id": ""
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "RedisCache",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "rediscache-sample-1"
                },
                "spec": {
                  "location": "westus",
                  "properties": {
                    "enableNonSslPort": true,
                    "sku": {
                      "capacity": 1,
                      "family": "C",
                      "name": "Basic"
                    }
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "RedisCacheAction",
                "metadata": {
                  "name": "rediscacheaction-sample-1"
                },
                "spec": {
                  "actionName": "rollallkeys",
                  "cacheName": "rediscache-sample-1",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "RedisCacheFirewallRule",
                "metadata": {
                  "name": "rediscachefirewallrule"
                },
                "spec": {
                  "properties": {
                    "endIP": "0.0.0.0",
                    "startIP": "0.0.0.0"
                  },
                  "redisCache": "rediscache-sample-1",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "ResourceGroup",
                "metadata": {
                  "name": "resourcegroup-azure-operators"
                },
                "spec": {
                  "location": "westus"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "StorageAccount",
                "metadata": {
                  "name": "storageaccountsample777"
                },
                "spec": {
                  "accessTier": "Hot",
                  "kind": "StorageV2",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sku": {
                    "name": "Standard_RAGRS"
                  },
                  "supportsHttpsTrafficOnly": true
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "VirtualNetwork",
                "metadata": {
                  "name": "vnet-sample-01"
                },
                "spec": {
                  "addressSpace": "10.0.0.0/8",
                  "location": "SouthCentralUS",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnets": [
                    {
                      "subnetAddressPrefix": "10.1.0.0/16",
                      "subnetName": "test1"
                    },
                    {
                      "subnetAddressPrefix": "10.2.0.0/16",
                      "subnetName": "test2"
                    }
                  ]
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "VirtualNetwork",
                "metadata": {
                  "name": "vnet-sample-02"
                },
                "spec": {
                  "addressSpace": "10.0.0.0/8",
                  "location": "SouthCentralUS",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnets": [
                    {
                      "subnetAddressPrefix": "10.1.0.0/16",
                      "subnetName": "test1"
                    },
                    {
                      "subnetAddressPrefix": "10.2.0.0/16",
                      "subnetName": "test2"
                    }
                  ]
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha2",
                "kind": "BlobContainer",
                "metadata": {
                  "name": "blobcontainer-sample"
                },
                "spec": {
                  "accessLevel": "Container",
                  "accountName": "storageaccountsample777",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha2",
                "kind": "MySQLServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "mysqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus2",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "8.0",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha2",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "postgresqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "10",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlDatabase",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "azuresqldatabase-sample"
                },
                "spec": {
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "sku": {
                    "name": "Basic",
                    "tier": "Basic"
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlFailoverGroup",
                "metadata": {
                  "name": "azuresqlfailovergroup-sample"
                },
                "spec": {
                  "databaseList": [
                    "azuresqldatabase-sample",
                    "azuresqldatabase-sample2"
                  ],
                  "failoverGracePeriod": 30,
                  "failoverPolicy": "automatic",
                  "location": "eastus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "secondaryServer": "sqlserver-samplesec",
                  "secondaryServerResourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-samplepri"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlFirewallRule",
                "metadata": {
                  "name": "sqlf-allowazuresvcaccess"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "sqlserver-sample-777"
                },
                "spec": {
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Cloud Provider
          certified: "false"
          containerImage: mcr.microsoft.com/k8s/azureserviceoperator:1.0.59040
          createdAt: Mon 12 Jun 2023 04:24:02 UTC
          description: The Azure Service Operator helps you provision Azure resources
            and connect your applications to them from within Kubernetes.
          displayName: Azure Service Operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Azure/azure-service-operator
          support: https://github.com/Azure/azure-service-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Creates an API with the specified properties in the specified
              API Management service.
            displayName: APIMgmtAPI
            kind: APIMgmtAPI
            name: apimgmtapis.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an API Management instance into a specified Resource
              Group at the specified location. It also provides the option to link
              to an Application Insights instance for logging, and to place the API
              Management instance in a specified Virtual Network.
            displayName: ApimService
            kind: ApimService
            name: apimservices.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Application Insights instance into a specified
              Resource Group at the specified location.
            displayName: AppInsights
            kind: AppInsights
            name: appinsights.azure.microsoft.com
            version: v1alpha1
          - description: Creates an Api Key to access a given Application Insights
              instance.
            displayName: AppInsightsApiKey
            kind: AppInsightsApiKey
            name: appinsightsapikeys.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Load Balancer (LB) into a specified Resource
              Group at the specified location.
            displayName: AzureLoadBalancer
            kind: AzureLoadBalancer
            name: azureloadbalancers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Network Interface (NIC) into a specified
              Resource Group at the specified location. Users can specify underlying
              public IP address and virtual network configurations in their NIC setup.
            displayName: AzureNetworkInterface
            kind: AzureNetworkInterface
            name: azurenetworkinterfaces.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Public IP Address (PIP) into a specified
              Resource Group at the specified location. Users can specify IP allocation
              method, idle timeout, IP address version, and SKU.
            displayName: AzurePublicIPAddress
            kind: AzurePublicIPAddress
            name: azurepublicipaddresses.azure.microsoft.com
            version: v1alpha1
          - description: Allows you to roll the password for the specified SQL server.
            displayName: AzureSqlAction
            kind: AzureSqlAction
            name: azuresqlactions.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an SQL database given the SQL server.
            displayName: AzureSqlDatabase
            kind: AzureSqlDatabase
            name: azuresqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an SQL database given the SQL server
            displayName: AzureSqlDatabase
            kind: AzureSqlDatabase
            name: azuresqldatabases.azure.microsoft.com
            version: v1beta1
          - description: Deploys a failover group on a specified Azure SQL server
              given the secondary server and the databases to failover.
            displayName: AzureSqlFailoverGroup
            kind: AzureSqlFailoverGroup
            name: azuresqlfailovergroups.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a failover group on a specified Azure SQL server
              given the secondary server and the databases to failover.
            displayName: AzureSqlFailoverGroup
            kind: AzureSqlFailoverGroup
            name: azuresqlfailovergroups.azure.microsoft.com
            version: v1beta1
          - description: Deploys a firewall rule to allow access to the SQL server
              from specific IPs.
            displayName: AzureSqlFirewallRule
            kind: AzureSqlFirewallRule
            name: azuresqlfirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the SQL server
              from specific IPs.
            displayName: AzureSqlFirewallRule
            kind: AzureSqlFirewallRule
            name: azuresqlfirewallrules.azure.microsoft.com
            version: v1beta1
          - description: Binds a specified Managed Identity as a user on the SQL database
            displayName: AzureSQLManagedUser
            kind: AzureSQLManagedUser
            name: azuresqlmanagedusers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure SQL server given the location and Resource
              Group.
            displayName: AzureSqlServer
            kind: AzureSqlServer
            name: azuresqlservers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure SQL server given the location and Resource
              Group.
            displayName: AzureSqlServer
            kind: AzureSqlServer
            name: azuresqlservers.azure.microsoft.com
            version: v1beta1
          - description: Creates an user on the specified Azure SQL database and stores
              the username/password as secrets.
            displayName: AzureSQLUser
            kind: AzureSQLUser
            name: azuresqlusers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a VirtualNetwork rule to allow access to the SQL
              server from specific VNets.
            displayName: AzureSQLVNetRule
            kind: AzureSQLVNetRule
            name: azuresqlvnetrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys Azure Virtual Machine Extensions to provide post-deployment
              configuration and automation on Azure VMs.
            displayName: AzureVirtualMachineExtension
            kind: AzureVirtualMachineExtension
            name: azurevirtualmachineextensions.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Virtual Machine (VM) into a specified Resource
              Group at the specified location. Users can specify platform image, size,
              user name and public SSH key, etc. for the VM.
            displayName: AzureVirtualMachine
            kind: AzureVirtualMachine
            name: azurevirtualmachines.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Virtual Machine Scale Set (VMSS) into a
              specified Resource Group at the specified location. Users can specify
              platform image, size, user name and public SSH key, etc. for the VMSS.
            displayName: AzureVMScaleSet
            kind: AzureVMScaleSet
            name: azurevmscalesets.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a Blob Container into a specified Resource Group
              at the specified location. A Storage Account must first be created prior
              to creating a Blob Container.
            displayName: BlobContainer
            kind: BlobContainer
            name: blobcontainers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a Blob Container into a specified Resource Group
              at the specified location. A Storage Account must first be created prior
              to creating a Blob Container.
            displayName: BlobContainer
            kind: BlobContainer
            name: blobcontainers.azure.microsoft.com
            version: v1alpha2
          - description: Deploys a consumer group given the Event Hub, Event Hubs
              namespace and Resource Group.
            displayName: ConsumerGroup
            kind: ConsumerGroup
            name: consumergroups.azure.microsoft.com
            version: v1alpha1
          - description: Provision a CosmosDB instance given the Cosmos DB instance
              type, location, and Resource Group.
            displayName: CosmosDB
            kind: CosmosDB
            name: cosmosdbs.azure.microsoft.com
            version: v1alpha1
          - kind: CosmosDBSQLDatabase
            name: cosmosdbsqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Event Hubs namespace given the Resource Group
              and location. Also has the ability to configure SKU, properties, and
              network rules.
            displayName: EventhubNamespace
            kind: EventhubNamespace
            name: eventhubnamespaces.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Event Hubs instance given the Event Hubs namespace,
              Resource Group and Location.
            displayName: Eventhub
            kind: Eventhub
            name: eventhubs.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Key Vault key given the location and Resource
              Group.
            displayName: KeyVaultKey
            kind: KeyVaultKey
            name: keyvaultkeys.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Key Vault given the location and Resource
              Group.
            displayName: KeyVault
            kind: KeyVault
            name: keyvaults.azure.microsoft.com
            version: v1alpha1
          - description: Add an AAD user to an existing MySQL database.
            kind: MySQLAADUser
            name: mysqlaadusers.azure.microsoft.com
            version: v1alpha1
          - description: Add an AAD user to an existing MySQL database.
            kind: MySQLAADUser
            name: mysqlaadusers.azure.microsoft.com
            version: v1alpha2
          - description: Deploys a database under the given Azure Database for MySQL
              server
            displayName: MySQLDatabase
            kind: MySQLDatabase
            name: mysqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the Azure Database
              for MySQL server from the specified IP range.
            displayName: MySQLFirewallRule
            kind: MySQLFirewallRule
            name: mysqlfirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Create an AAD-based admininistrative user in a MySQL server.
            kind: MySQLServerAdministrator
            name: mysqlserveradministrators.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for MySQL server given the Location,
              Resource Group and other properties. Also helps creating read replicas
              for MySQL server.
            displayName: MySQLServer
            kind: MySQLServer
            name: mysqlservers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for MySQL server given the Location,
              Resource Group and other properties. Also helps creating read replicas
              for MySQL server.
            displayName: MySQLServer
            kind: MySQLServer
            name: mysqlservers.azure.microsoft.com
            version: v1alpha2
          - description: Add a new user to an existing MySQL database.
            displayName: MySQLUser
            kind: MySQLUser
            name: mysqlusers.azure.microsoft.com
            version: v1alpha1
          - description: Add a new user to an existing MySQL database.
            kind: MySQLUser
            name: mysqlusers.azure.microsoft.com
            version: v1alpha2
          - description: Add virtual network rules to the MySQL server.
            displayName: MySQLVNetRule
            kind: MySQLVNetRule
            name: mysqlvnetrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a database under the given Azure Database for PostgreSQL
              server.
            displayName: PostgreSQLDatabase
            kind: PostgreSQLDatabase
            name: postgresqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the Azure Database
              for PostgreSQL server from the specified IP range.
            displayName: PostgreSQLFirewallRule
            kind: PostgreSQLFirewallRule
            name: postgresqlfirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for PostgreSQL server given the
              Location and Resource Group.
            displayName: PostgreSQLServer
            kind: PostgreSQLServer
            name: postgresqlservers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for PostgreSQL server given the
              Location and Resource Group.
            displayName: PostgreSQLServer
            kind: PostgreSQLServer
            name: postgresqlservers.azure.microsoft.com
            version: v1alpha2
          - description: Create and Manage Users for Azure Database for PostgreSQL
              server.
            displayName: PostgreSQLUser
            kind: PostgreSQLUser
            name: postgresqlusers.azure.microsoft.com
            version: v1alpha1
          - description: Create and manage VNet service endpoints and VNet rules in
              Azure Database for PostgreSQL.
            displayName: PostgreSQLVNetRule
            kind: PostgreSQLVNetRule
            name: postgresqlvnetrules.azure.microsoft.com
            version: v1alpha1
          - description: Allows you to regenerate keys and reboot the RedisCache cluster.
            displayName: RedisCacheAction
            kind: RedisCacheAction
            name: rediscacheactions.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the RedisCache
              from the specified IP range.
            displayName: RedisCacheFirewallRule
            kind: RedisCacheFirewallRule
            name: rediscachefirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Cache for Redis into a specified Resource
              Group at the specified location.
            displayName: RedisCache
            kind: RedisCache
            name: rediscaches.azure.microsoft.com
            version: v1alpha1
          - description: Provisions a Resource Group given the location and a name.
            displayName: ResourceGroup
            kind: ResourceGroup
            name: resourcegroups.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Storage Account into a specified Resource
              Group at the specified location.
            displayName: StorageAccount
            kind: StorageAccount
            name: storageaccounts.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Virtual Network into a specified Resource
              Group at the specified location, in the address space provided. Users
              are also able to add subnets to their virtual network through the operator.
            displayName: VirtualNetwork
            kind: VirtualNetwork
            name: virtualnetworks.azure.microsoft.com
            version: v1alpha1
        description: |
          ## Overview

          The Azure Service Operator comprises of:

          - The Custom Resource Definitions (CRDs) for each of the Azure services a Kubernetes user can provision.
          - The Kubernetes controller that watches for requests to create Custom Resources for each of these CRDs and creates them.

          The project was built using [Kubebuilder](https://book.kubebuilder.io/).

          Curious to see how it all works? Check out our [control flow diagrams](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/controlflow.md).

          **Note**: The current version of Azure Service Operator only supports watching all namespaces in the cluster.

          ## Supported Azure Services

          - [Resource Group](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/resourcegroup/resourcegroup.md)
          - [Event Hubs](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/eventhub/eventhub.md)
          - [Azure SQL](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/azuresql/azuresql.md)
          - [Azure Database for PostgreSQL](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/postgresql/postgresql.md)
          - [Azure Database for MySQL](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/mysql/mysql.md)
          - [Azure Key Vault](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/keyvault/keyvault.md)
          - [Azure Cache for Redis](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/rediscache/rediscache.md)
          - [Storage Account](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/storage/storageaccount.md)
          - [Blob Storage](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/storage/blobcontainer.md)
          - [Virtual Network](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/virtualnetwork/virtualnetwork.md)
          - [Application Insights](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/appinsights/appinsights.md)
          - [API Management](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/apimgmt/apimgmt.md)
          - [Cosmos DB](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/cosmosdb/cosmosdb.md)
          - [Virtual Machine](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/virtualmachine/virtualmachine.md)
          - [Virtual Machine Scale Set](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/vmscaleset/vmscaleset.md)

          ## Instructions - Please read before installing

          Before you begin, verify you're running the Azure CLI version 2.0.53 or later. Run `az --version` to find the version. If you need to install or upgrade, see [Install Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli).

          1. Create an Azure Service Principal. You'll need this to grant Azure Service Operator permissions to create resources in your subscription.

              First, set the following environment variables to your Azure Tenant ID and Subscription ID with your values:
              ```yaml
              AZURE_TENANT_ID=<your-tenant-id-goes-here>
              AZURE_SUBSCRIPTION_ID=<your-subscription-id-goes-here>
              ```

              You can find these values by using the [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/?view=azure-cli-latest):
              ```sh
              az account show
              ```

          2. Next, we'll create a Service Principal with Contributor permissions for your subscription, so ASO can create resources in your subscription on your behalf. Note that the [ServicePrincipal](https://docs.microsoft.com/en-us/cli/azure/create-an-azure-service-principal-azure-cli) you pass to the command below needs to have access to create resources in your subscription. If you'd like to use Managed Identity for authorization instead, check out instructions [here](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/managedidentity.md).

              ```sh
              az ad sp create-for-rbac -n "azure-service-operator" --role contributor \
                  --scopes /subscriptions/$AZURE_SUBSCRIPTION_ID
              ```

              This should give you output like the following:
              ```sh
              "appId": "xxxxxxxxxx",
              "displayName": "azure-service-operator",
              "name": "http://azure-service-operator",
              "password": "xxxxxxxxxxx",
              "tenant": "xxxxxxxxxxxxx"
              ```

          3.  Once you have created a Service Principal, gather the following values:

              `AZURE_TENANT_ID` is the Tenant ID from Step 1.

              `AZURE_SUBSCRIPTION_ID` is the Subscription ID from Step 1.

              `AZURE_CLIENT_ID` is the appID from the Service Principal created in Step 2.

              `AZURE_CLIENT_SECRET` is the password from the service Principal we created in Step 2.

              `AZURE_CLOUD_ENV` is the Azure Environment you'd like to use, i.e. AzurePublicCloud, AzureUSGovernmentCloud, AzureChinaCloud, AzureGermanCloud.

          4.  Set those values in a `Secret` called `azureoperatorsettings` within the `operators` Namespace:
              ```yaml
              apiVersion: v1
              kind: Secret
              metadata:
                name: azureoperatorsettings
                namespace: operators
              stringData:
                AZURE_TENANT_ID: <your-tenant-id-goes-here>
                AZURE_SUBSCRIPTION_ID: <your-subscription-id-goes-here>
                AZURE_CLIENT_ID: <your-client-id>
                AZURE_CLIENT_SECRET: <your-client-secret>
                AZURE_CLOUD_ENV: <your-azure-cloud-environment>
              ```

          5. Now you can proceed to install the Azure Service Operator to the `operators` Namespace via the Install button on the top right of this page. After the operator is installed, you will then see the Azure Service Operator pod running in your cluster:

              ```console
              $ kubectl get pods -n operators
              NAME                                                READY   STATUS    RESTARTS   AGE
              azureoperator-controller-manager-7dd75bbd97-mk4s9   2/2     Running   0          35s
              ```

          ## About the project

          This project maintains [releases of the Azure Service Operator](https://github.com/Azure/azure-service-operator/releases).

          Please see the [FAQ](https://github.com/Azure/azure-service-operator/blob/main/docs/faq.md) for answers to commonly asked questions about the Azure Service Operator.

          Have more questions? Feel free to consult our documentation [here](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/contents.md).

          ## Contributing

          The [contribution guide](https://github.com/Azure/azure-service-operator/blob/main/CONTRIBUTING.md) covers everything you need to know about how you can contribute to Azure Service Operators. The [developer guide](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/contents.md#developing-azure-service-operator) will help you onboard as a developer.

          ## Support

          Azure Service Operator is an open source project that is **not** covered by the [Microsoft Azure support policy](https://support.microsoft.com/en-us/help/2941892/support-for-linux-and-open-source-technology-in-azure). Please search open issues [here](https://github.com/Azure/azure-service-operator/issues). If your issue isn't already represented, please [open a new one](https://github.com/Azure/azure-service-operator/issues/new/choose). The Azure Service Operator project maintainers will respond to the best of their abilities.

          ## Code of conduct

          This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information, see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.
        displayName: Azure Service Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - azure, microsoft, cloud service broker
        links:
        - name: Azure Service Operator
          url: https://github.com/Azure/azure-service-operator
        maintainers:
        - email: christian.muirhead@microsoft.com
          name: Christian Muirhead
        maturity: stable
        provider:
          name: Microsoft
        relatedImages:
        - mcr.microsoft.com/k8s/azureserviceoperator:1.0.59040
        - quay.io/openshift-community-operators/azure-service-operator@sha256:2430ebe724ead60e84f12aa485c8dae4af82af10d14400ce76356392030c8c0b
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 1.0.59040
      entries:
      - name: azure-service-operator.v1.0.59040
        version: 1.0.59040
      name: stable
    defaultChannel: stable
    packageName: azure-service-operator
    provider:
      name: Microsoft
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: KubeVirt project
      provider-url: ""
    name: community-kubevirt-hyperconverged
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubevirt-hyperconverged-operator.v1.10.7
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployTektonTaskResources":true,"deployVmConsoleProxy":true},"tektonPipelines":{"namespace":"kubevirt"},"tektonTasks":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"mtq.kubevirt.io/v1alpha1","kind":"MTQ","metadata":{"name":"mtq","namespace":"mtq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: quay.io/kubevirt/hyperconverged-cluster-operator@sha256:0ee30557d5d5a42dec19121e70ed77fbdacd8932f55b11e2c7c1a3d5ad5df4aa
          createdAt: "2024-02-09 14:34:30"
          description: A unified operator deploying and controlling KubeVirt and its
            supporting operators with opinionated defaults
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}}'
          operatorframework.io/suggested-namespace: kubevirt-hyperconverged
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","mtqs.mtq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: "false"
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of HyperConverged Cluster Operator
            displayName: HyperConverged Cluster Operator Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a MTQ deployment
            displayName: MTQ deployment
            kind: MTQ
            name: mtqs.mtq.kubevirt.io
            version: v1alpha1
        description: |-
          **HyperConverged Cluster Operator** is an Operator pattern for managing multi-operator products.
          Specifically, the HyperConverged Cluster Operator manages the deployment of KubeVirt,
          Containerized Data Importer (CDI), Virtual Machine import operator and Cluster Network Addons (CNA) operators.

          **KubeVirt** is a virtual machine management add-on for Kubernetes.
          The aim is to provide a common ground for virtualization solutions on top of
          Kubernetes.

          # Virtualization extension for Kubernetes

          At its core, KubeVirt extends [Kubernetes](https://kubernetes.io) by adding
          additional virtualization resource types (especially the `VirtualMachine` type) through
          [Kubernetes's Custom Resource Definitions API](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/).
          By using this mechanism, the Kubernetes API can be used to manage these `VirtualMachine`
          resources alongside all other resources Kubernetes provides.

          The resources themselves are not enough to launch virtual machines.
          For this to happen the _functionality and business logic_ needs to be added to
          the cluster. The functionality is not added to Kubernetes itself, but rather
          added to a Kubernetes cluster by _running_ additional controllers and agents
          on an existing cluster.

          The necessary controllers and agents are provided by KubeVirt.

          As of today KubeVirt can be used to declaratively

            * Create a predefined VM
            * Schedule a VM on a Kubernetes cluster
            * Launch a VM
            * Migrate a VM
            * Stop a VM
            * Delete a VM

          # Start using KubeVirt

            * Try our quickstart at [kubevirt.io](http://kubevirt.io/get_kubevirt/).
            * See our user documentation at [kubevirt.io/docs](http://kubevirt.io/user-guide).

          # Start developing KubeVirt

          To set up a development environment please read our
          [Getting Started Guide](https://github.com/kubevirt/kubevirt/blob/master/docs/getting-started.md).
          To learn how to contribute, please read our [contribution guide](https://github.com/kubevirt/kubevirt/blob/master/CONTRIBUTING.md).

          You can learn more about how KubeVirt is designed (and why it is that way),
          and learn more about the major components by taking a look at our developer documentation:

            * [Architecture](https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md) - High-level view on the architecture
            * [Components](https://github.com/kubevirt/kubevirt/blob/master/docs/components.md) - Detailed look at all components
            * [API Reference](https://github.com/kubevirt/kubevirt/blob/master/https://www.kubevirt.io/api-reference/)

          # Community

          If you got enough of code and want to speak to people, then you got a couple of options:

            * Follow us on [Twitter](https://twitter.com/kubevirt)
            * Chat with us in the #virtualization channel of the [Kubernetes Slack](https://slack.k8s.io/)
            * Discuss with us on the [kubevirt-dev Google Group](https://groups.google.com/forum/#!forum/kubevirt-dev)
            * Stay informed about designs and upcoming events by watching our [community content](https://github.com/kubevirt/community/)

          # License

          KubeVirt is distributed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt).
        displayName: KubeVirt HyperConverged Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        links:
        - name: KubeVirt project
          url: https://kubevirt.io
        - name: Source Code
          url: https://github.com/kubevirt/hyperconverged-cluster-operator
        maintainers:
        - email: kubevirt-dev@googlegroups.com
          name: KubeVirt project
        maturity: alpha
        provider:
          name: KubeVirt project
        relatedImages:
        - quay.io/kubevirt/virt-launcher@sha256:4c5fce3de2e2589197de72fb0c9436490ea318aca952c05a622c43e067023f35
        - quay.io/kubevirt/virt-exportserver@sha256:73311f79a9c71007f8572b3cc40cd6f6da404c7ef0a9c6509fb717d979546582
        - quay.io/kubevirt/virtio-container-disk@sha256:f8e71a3a930ce95d646d80862d5ff6f9d3ed7ef2541dd2e2acec0bce26274734
        - quay.io/kubevirt/cdi-uploadproxy@sha256:551221d79902a5053d1c734b81163d69f087217e2ac13c49bdf6900336ef0786
        - quay.io/kubevirt/hostpath-csi-driver@sha256:0ca8b50b0adb20afd4e20da9974200f3290b6d51aa7c1129de6e1b953bf26594
        - quay.io/kubevirt/virt-exportproxy@sha256:f14444b0200a85efb4b3c176caefe70aabba7d295e33d2af14027a59ce297e24
        - quay.io/kubevirt/hostpath-provisioner-operator@sha256:16ecabb1d733aa17084cd16d88963c5255d04f389e0f4d41941d67e8be973594
        - quay.io/kubevirt/kubemacpool@sha256:3214020c21204c189cdf2d767beb8efb61ee3ef65dd8de7f0f1edc61e13e8adf
        - quay.io/kubevirt/hyperconverged-cluster-webhook@sha256:86c10c122767661e31ee26a9e9de7ea606c2c1168b32793b4ea567ede2ae3b21
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:5ff5392cb762a41ee9bc4767e3a693249ae08b46a4322f623f24ad6b63dd06b5
        - quay.io/kubevirt/cdi-cloner@sha256:9d31b14f23259398c5bac636f5ead13ad0afd6fe8eeab4499e8e047b4d85074f
        - quay.io/kubevirt/cdi-controller@sha256:27c47883a08226f83757971d3adafb0cd9bcb26e58fbcf7208236070e0adf37e
        - registry.k8s.io/sig-storage/livenessprobe@sha256:4dc0b87ccd69f9865b89234d8555d3a614ab0a16ed94a3016ffd27f8106132ce
        - quay.io/kubevirt/cdi-operator@sha256:6c63521d835578b0fbb77d3145b648f95ab0932d5d1b36ff2068ed8fcd91bc5a
        - quay.io/kubevirt/cdi-importer@sha256:3143bbc67cdc6267eb48b7eaac664b8551ac4c11401dfbf4921efd3f233e6ce9
        - quay.io/kubevirt/cluster-network-addons-operator@sha256:f64ab5981d9ddef1662dd0a05888783f5dbadda8ede596585ba80bfc97a0f51e
        - quay.io/kubevirt/hyperconverged-cluster-operator@sha256:0ee30557d5d5a42dec19121e70ed77fbdacd8932f55b11e2c7c1a3d5ad5df4aa
        - quay.io/kubevirt/mtq-operator@sha256:ef5c4bb1fa72f9e6e75d5585ca352f7563720389e6c9876aa8b07d12d1be6194
        - quay.io/kubevirt-ui/kubevirt-apiserver-proxy@sha256:38293a1050bce9c7cb786cbe8719be1edb91a922a6c583eedb61e56729ed4c72
        - quay.io/kubevirt/virt-controller@sha256:0789fafed2913b35a771e3db882748502b3250be04ece86d97f30201779b4e54
        - quay.io/kubevirt/virt-artifacts-server:1.10.7-unstable
        - quay.io/kubevirt/ovs-cni-plugin@sha256:08f72edf2bef876bba0b0f5513d30225304ad5e7ad6912a61c083664acdb99ff
        - quay.io/kubevirt/bridge-marker@sha256:bba066e3b5ff3fb8c5e20861fe8abe51e3c9b50ad6ce3b2616af9cb5479a06d0
        - quay.io/kubevirt/mtq-lock-server@sha256:9614df0d5af7c998bcceaf73b548f2e3b29ff8ee4ca64c32613bfbdd6e452f6c
        - quay.io/kubevirt/kubevirt-template-validator@sha256:a148b6e812b70f326b48d0439b1e44a967a6e1f8cf2f98b1a08e9294a93674eb
        - quay.io/kubevirt/macvtap-cni@sha256:434420511e09b2b5ede785a2c9062b6658ffbc26fbdd4629ce06110f9039c600
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d078dc174323407e8cc6f0f9abd4efaac5db27838f1564d0253d5e3233e3f17f
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:f6717ce72a2615c7fbc746b4068f788e78579c54c43b8716e5ce650d97af2df1
        - quay.io/kubevirt/ssp-operator@sha256:49cac00844f091d6e80301573e00235d685415185ec29c89b4bd7361f938711e
        - quay.io/kubevirt/virt-api@sha256:707003b221496b4432da2f507d1e36e528b45888b5d321e06d460f0678da44ae
        - quay.io/kubevirt-ui/kubevirt-plugin@sha256:e79027973b09aac75860f267c7d7f830599978c38a081001f404b9a1c3d2990f
        - quay.io/kubevirt/hostpath-provisioner@sha256:eae30f37b3e837478a4500144b7bc8eb4f5ddf15f49fa7354bc9d5e240ea8aea
        - quay.io/community-operator-pipeline-prod/community-kubevirt-hyperconverged@sha256:e5e0c3b3a25c13ea916d70fa6f6ddc20f2c730bd9909aa2654672280c27afda2
        - quay.io/kubevirt/virt-operator@sha256:cbca7f93afbb18a840f7e763e4c03aeeb1fd97967f381c12c443cc179b51da29
        - quay.io/kubevirt/cni-default-plugins@sha256:825e3f9fec1996c54a52cec806154945b38f76476b160d554c36e38dfffe5e61
        - quay.io/kubevirt/cdi-apiserver@sha256:e9e39408413b1478d2e98eba68913f9e20c93000558b190b47de73bdfd1d9ac4
        - quay.io/kubevirt/mtq-controller@sha256:96dd73ea0d7847d9f6322192559747bd85655e25ee25482d112e6e3c6fef21b2
        - registry.k8s.io/coredns/coredns@sha256:a0ead06651cf580044aeb0a0feba63591858fb2e43ade8c9dea45a6a89ae7e5e
        - ghcr.io/k8snetworkplumbingwg/multus-cni@sha256:3fbcc32bd4e4d15bd93c96def784a229cd84cca27942bf4858b581f31c97ee02
        - ghcr.io/kubevirt/kubesecondarydns@sha256:e87e829380a1e576384145f78ccaa885ba1d5690d5de7d0b73d40cfb804ea24d
        - quay.io/kubevirt/cdi-uploadserver@sha256:30f1827d3696cf996b081c22c3267ca78e7219c872fdb54950198fa54359f6ee
        - quay.io/kubevirt/libguestfs-tools@sha256:b7e248be783691daad1326cf41641d5042be80c5c057ebc5315ca7a1619b0581
        - quay.io/kubevirt/virt-handler@sha256:138dfda5fea8622f3da0d6413fe214fef80c2fd6a6f9533592a0dbfa7e1865b5
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:f7567bea7f24184da06c3ed87b396c804342fcfd89f54989622780ce0b7b0724
        - ghcr.io/k8snetworkplumbingwg/multus-dynamic-networks-controller@sha256:57573a24923e5588bca6bc337a8b2b08406c5b77583974365d2cf063c0dd5d06
        version: 1.10.7
      entries:
      - name: kubevirt-hyperconverged-operator.v1.10.7
        version: 1.10.7
      name: 1.10.7
    - currentCSV: kubevirt-hyperconverged-operator.v1.11.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployTektonTaskResources":true,"deployVmConsoleProxy":true},"tektonPipelines":{"namespace":"kubevirt"},"tektonTasks":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"mtq.kubevirt.io/v1alpha1","kind":"MTQ","metadata":{"name":"mtq","namespace":"mtq"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: quay.io/kubevirt/hyperconverged-cluster-operator@sha256:dd6538e720f18b723b0807037ca7cc1014cba09e57b20706e10e6eb641ac6acc
          createdAt: "2024-03-06 15:11:00"
          description: A unified operator deploying and controlling KubeVirt and its
            supporting operators with opinionated defaults
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}}'
          operatorframework.io/suggested-namespace: kubevirt-hyperconverged
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: quay.io/kubevirt/must-gather
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","mtqs.mtq.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: "false"
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of HyperConverged Cluster Operator
            displayName: HyperConverged Cluster Operator Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a MTQ deployment
            displayName: MTQ deployment
            kind: MTQ
            name: mtqs.mtq.kubevirt.io
            version: v1alpha1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          **HyperConverged Cluster Operator** is an Operator pattern for managing multi-operator products.
          Specifically, the HyperConverged Cluster Operator manages the deployment of KubeVirt,
          Containerized Data Importer (CDI), Virtual Machine import operator and Cluster Network Addons (CNA) operators.

          **KubeVirt** is a virtual machine management add-on for Kubernetes.
          The aim is to provide a common ground for virtualization solutions on top of
          Kubernetes.

          # Virtualization extension for Kubernetes

          At its core, KubeVirt extends [Kubernetes](https://kubernetes.io) by adding
          additional virtualization resource types (especially the `VirtualMachine` type) through
          [Kubernetes's Custom Resource Definitions API](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/).
          By using this mechanism, the Kubernetes API can be used to manage these `VirtualMachine`
          resources alongside all other resources Kubernetes provides.

          The resources themselves are not enough to launch virtual machines.
          For this to happen the _functionality and business logic_ needs to be added to
          the cluster. The functionality is not added to Kubernetes itself, but rather
          added to a Kubernetes cluster by _running_ additional controllers and agents
          on an existing cluster.

          The necessary controllers and agents are provided by KubeVirt.

          As of today KubeVirt can be used to declaratively

            * Create a predefined VM
            * Schedule a VM on a Kubernetes cluster
            * Launch a VM
            * Migrate a VM
            * Stop a VM
            * Delete a VM

          # Start using KubeVirt

            * Try our quickstart at [kubevirt.io](http://kubevirt.io/get_kubevirt/).
            * See our user documentation at [kubevirt.io/docs](http://kubevirt.io/user-guide).

          # Start developing KubeVirt

          To set up a development environment please read our
          [Getting Started Guide](https://github.com/kubevirt/kubevirt/blob/master/docs/getting-started.md).
          To learn how to contribute, please read our [contribution guide](https://github.com/kubevirt/kubevirt/blob/master/CONTRIBUTING.md).

          You can learn more about how KubeVirt is designed (and why it is that way),
          and learn more about the major components by taking a look at our developer documentation:

            * [Architecture](https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md) - High-level view on the architecture
            * [Components](https://github.com/kubevirt/kubevirt/blob/master/docs/components.md) - Detailed look at all components
            * [API Reference](https://github.com/kubevirt/kubevirt/blob/master/https://www.kubevirt.io/api-reference/)

          # Community

          If you got enough of code and want to speak to people, then you got a couple of options:

            * Follow us on [Twitter](https://twitter.com/kubevirt)
            * Chat with us in the #virtualization channel of the [Kubernetes Slack](https://slack.k8s.io/)
            * Discuss with us on the [kubevirt-dev Google Group](https://groups.google.com/forum/#!forum/kubevirt-dev)
            * Stay informed about designs and upcoming events by watching our [community content](https://github.com/kubevirt/community/)

          # License

          KubeVirt is distributed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt).
        displayName: KubeVirt HyperConverged Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        links:
        - name: KubeVirt project
          url: https://kubevirt.io
        - name: Source Code
          url: https://github.com/kubevirt/hyperconverged-cluster-operator
        maintainers:
        - email: kubevirt-dev@googlegroups.com
          name: KubeVirt project
        maturity: alpha
        provider:
          name: KubeVirt project
        relatedImages:
        - quay.io/kubevirt/cdi-uploadproxy@sha256:b89104ef5513d63cab43b34ac52f752c3d935cb986d5527d920c2c31d3b6f239
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d078dc174323407e8cc6f0f9abd4efaac5db27838f1564d0253d5e3233e3f17f
        - quay.io/kubevirt/macvtap-cni@sha256:850b89343ace7c7ea6b18dd8e11964613974e9d1f7377af03854d407fb15230a
        - quay.io/kubevirt/cdi-controller@sha256:606de89e68be2ac911466e6713345932bda496c1e4f20e34ef5efa270456c9fd
        - quay.io/kubevirt/cni-default-plugins@sha256:c884d6d08f8c0db98964f1eb3877b44ade41fa106083802a9914775df17d5291
        - quay.io/kubevirt/cdi-apiserver@sha256:95f6e71b36883abcb9ec463cfea2332f5490ec9eb3e4868bdf0a4da769279094
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:f1bd6ee18c4021c1c94f29edfab89b49b6a4d1b800936c19dbef2d75f8202f2d
        - quay.io/kubevirt/hostpath-provisioner-operator@sha256:dd2948ca8e62d17eafba40bdcaad8367a97f092fd3b8d9849b2d62aec3152a72
        - quay.io/kubevirt/virt-handler@sha256:238550bb263608ba334b44a15647cbf875482ccfb46049713c14af5d5f0cc788
        - quay.io/kubevirt/kubevirt-template-validator@sha256:f6db539fe4d4b752644c6bc8a308f5a80ae09a71da5c5d535114dc4c3cf18e0a
        - quay.io/kubevirt-ui/kubevirt-apiserver-proxy@sha256:38293a1050bce9c7cb786cbe8719be1edb91a922a6c583eedb61e56729ed4c72
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:e2def4213ec0657e72eb790ae8a115511d5b8f164a62d3568d2f1bff189917e8
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:c53535af8a7f7e3164609838c4b191b42b2d81238d75c1b2a2b582ada62a9780
        - quay.io/kubevirt/mtq-operator@sha256:90c7608b0ba085582a65ccdc11d089049c5e6b0438d018dd9dc76eb3490383c7
        - quay.io/kubevirt/cdi-cloner@sha256:b22985af0ee7b1ce4e1dedded08c853d90d9e7209f98c5d470897bbefce2a063
        - quay.io/kubevirt/ssp-operator@sha256:d57ef05fea09c4690dbe728ebe6a39d9df1a3574dfa7d18346bf3fe66afed702
        - quay.io/kubevirt/bridge-marker@sha256:bba066e3b5ff3fb8c5e20861fe8abe51e3c9b50ad6ce3b2616af9cb5479a06d0
        - quay.io/kubevirt/virt-api@sha256:735662c824da3d6069624d40674163d758c2256f8043cf6f02f505c3a724afa3
        - quay.io/kubevirt/cdi-importer@sha256:7320dce01f4628363992997b592200b4804daf15a9f237cd50a4a6acab7798e8
        - quay.io/kubevirt/virt-artifacts-server@sha256:22fa3218deca38dc98fa0e905df16173a47ccec85707eb91404a367da6480817
        - quay.io/kubevirt/kubemacpool@sha256:cf8daa57ae6603b776d3af512331b143fa03bc2f4b72f28420fddcf5e4156d0a
        - quay.io/kubevirt/virt-exportserver@sha256:f8473fc824f8bac5f21c64b71cdb4227de28f9bb25c049932f1259216b874a86
        - ghcr.io/k8snetworkplumbingwg/multus-cni@sha256:3fbcc32bd4e4d15bd93c96def784a229cd84cca27942bf4858b581f31c97ee02
        - quay.io/kubevirt/hostpath-csi-driver@sha256:8d84b9a33e0ec3749aece7c5f9879d1e0d248e8028ab3f776528a044d387033c
        - quay.io/kubevirt/virtio-container-disk@sha256:f8e71a3a930ce95d646d80862d5ff6f9d3ed7ef2541dd2e2acec0bce26274734
        - quay.io/community-operator-pipeline-prod/community-kubevirt-hyperconverged@sha256:8c65e65bbaf0ebb10dba03655c5854c69c82ddc0e6b2a29293eee029222e5efa
        - registry.k8s.io/sig-storage/livenessprobe@sha256:5baeb4a6d7d517434292758928bb33efc6397368cbb48c8a4cf29496abf4e987
        - quay.io/kubevirt/hyperconverged-cluster-operator@sha256:dd6538e720f18b723b0807037ca7cc1014cba09e57b20706e10e6eb641ac6acc
        - ghcr.io/k8snetworkplumbingwg/multus-dynamic-networks-controller@sha256:57573a24923e5588bca6bc337a8b2b08406c5b77583974365d2cf063c0dd5d06
        - quay.io/kubevirt/aaq-server@sha256:0c6b01c48030e03e99b3ff2b319658c2bf2b2001f4e3e030ba70d1143b25717a
        - quay.io/kubevirt/hyperconverged-cluster-webhook@sha256:70efc16ab2bfec04f73ccc292064d080870659cfd47c2e0c9017ff7b6fd78863
        - quay.io/kubevirt/hostpath-provisioner@sha256:adb1d33e95e8991dc47107926172469b5ecbeace509391ce021ca42d305a41d3
        - ghcr.io/kubevirt/kubesecondarydns@sha256:e87e829380a1e576384145f78ccaa885ba1d5690d5de7d0b73d40cfb804ea24d
        - quay.io/kubevirt/cdi-operator@sha256:8a27e1450c3bf8c1d8924e74470a62419d02ed2202924b082a74e2414b1fc21a
        - quay.io/kubevirt/virt-exportproxy@sha256:942c548d4848a87945eba51683002797eb4e1f5c463a1873115b2ec0e1e6e169
        - quay.io/kubevirt/libguestfs-tools@sha256:4971af1ee42959d366a3db6129ab684d11064e00bbd3c2b36324ad14e90cb903
        - quay.io/kubevirt/mtq-controller@sha256:ae7dd07e4018c63414b021eba34aa4776a6c7d6ff4fcdf9fd2d7ca30aae98a29
        - quay.io/kubevirt/cdi-uploadserver@sha256:16d257e575b2bd504f148f63b57dc181fa6058d33a11ada64888183c3e4d4863
        - quay.io/kubevirt/mtq-lock-server@sha256:8e686107dd9990dab1a3d90ee1068541938f673bf54ea9e1308b2ed7218546b0
        - quay.io/kubevirt/ovs-cni-plugin@sha256:e16ac74343da21abb8fb668ce71e728053d00503a992dae2164b9e94a280113e
        - quay.io/kubevirt/virt-launcher@sha256:4fbfd76561667e98fafc75c0b804f77df251f96471d1121d69f149cf8fb9a4d8
        - quay.io/kubevirt/virt-operator@sha256:0e6d56ea0ebdf9bb832f29ab0dc4603f0f619474bb8bc02a01e0a06e9d8d6f4a
        - registry.k8s.io/coredns/coredns@sha256:a0ead06651cf580044aeb0a0feba63591858fb2e43ade8c9dea45a6a89ae7e5e
        - quay.io/kubevirt-ui/kubevirt-plugin@sha256:4ed1f37116cbaf883edd8783201d091fbbe121fcb84e7184ee531d3b1abd77ab
        - quay.io/kubevirt/aaq-operator@sha256:590d24742401eeff3fb6a9c8ed977c63442f8f0a0505509fae69aa1bf8aa84ae
        - quay.io/kubevirt/virt-controller@sha256:4f576e30b83db7b9f96dde77896898bde87db3517963c4227634d0c3e96bb86d
        - quay.io/kubevirt/cluster-network-addons-operator@sha256:bf17da674ed6dac95aa4fd7637173fd4e026ebb4523b66f529c0eff394a25bcc
        - quay.io/kubevirt/aaq-controller@sha256:cb2fa52ae3f6a1a99b2de77b58c5db54c43ba8ee86c6540b4844c901180ce611
        version: 1.11.0
      entries:
      - name: kubevirt-hyperconverged-operator.v1.11.0
        version: 1.11.0
      name: 1.11.0
    - currentCSV: kubevirt-hyperconverged-operator.v1.16.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployVmConsoleProxy":true},"templateValidator":{"replicas":2}}},{"apiVersion":"ssp.kubevirt.io/v1beta3","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: quay.io/kubevirt/hyperconverged-cluster-operator@sha256:78a1a9f656da5dea20022706ebf61982dd9b63dd5cb4dd75ae98d643e671fbde
          createdAt: "2025-11-11 08:46:34"
          description: A unified operator deploying and controlling KubeVirt and its
            supporting operators with opinionated defaults
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          openshift.io/required-scc: restricted-v2
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}}'
          operatorframework.io/suggested-namespace: kubevirt-hyperconverged
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: quay.io/kubevirt/must-gather
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: "false"
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of HyperConverged Cluster Operator
            displayName: HyperConverged Cluster Operator Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta3
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          **HyperConverged Cluster Operator** is an Operator pattern for managing multi-operator products.
          Specifically, the HyperConverged Cluster Operator manages the deployment of KubeVirt,
          Containerized Data Importer (CDI), Virtual Machine import operator and Cluster Network Addons (CNA) operators.

          **KubeVirt** is a virtual machine management add-on for Kubernetes.
          The aim is to provide a common ground for virtualization solutions on top of
          Kubernetes.

          # Virtualization extension for Kubernetes

          At its core, KubeVirt extends [Kubernetes](https://kubernetes.io) by adding
          additional virtualization resource types (especially the `VirtualMachine` type) through
          [Kubernetes's Custom Resource Definitions API](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/).
          By using this mechanism, the Kubernetes API can be used to manage these `VirtualMachine`
          resources alongside all other resources Kubernetes provides.

          The resources themselves are not enough to launch virtual machines.
          For this to happen the _functionality and business logic_ needs to be added to
          the cluster. The functionality is not added to Kubernetes itself, but rather
          added to a Kubernetes cluster by _running_ additional controllers and agents
          on an existing cluster.

          The necessary controllers and agents are provided by KubeVirt.

          As of today KubeVirt can be used to declaratively

            * Create a predefined VM
            * Schedule a VM on a Kubernetes cluster
            * Launch a VM
            * Migrate a VM
            * Stop a VM
            * Delete a VM

          # Start using KubeVirt

            * Try our quickstart at [kubevirt.io](http://kubevirt.io/get_kubevirt/).
            * See our user documentation at [kubevirt.io/docs](http://kubevirt.io/user-guide).

          # Start developing KubeVirt

          To set up a development environment please read our
          [Getting Started Guide](https://github.com/kubevirt/kubevirt/blob/master/docs/getting-started.md).
          To learn how to contribute, please read our [contribution guide](https://github.com/kubevirt/kubevirt/blob/master/CONTRIBUTING.md).

          You can learn more about how KubeVirt is designed (and why it is that way),
          and learn more about the major components by taking a look at our developer documentation:

            * [Architecture](https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md) - High-level view on the architecture
            * [Components](https://github.com/kubevirt/kubevirt/blob/master/docs/components.md) - Detailed look at all components
            * [API Reference](https://github.com/kubevirt/kubevirt/blob/master/https://www.kubevirt.io/api-reference/)

          # Community

          If you got enough of code and want to speak to people, then you got a couple of options:

            * Follow us on [Twitter](https://twitter.com/kubevirt)
            * Chat with us in the #virtualization channel of the [Kubernetes Slack](https://slack.k8s.io/)
            * Discuss with us on the [kubevirt-dev Google Group](https://groups.google.com/forum/#!forum/kubevirt-dev)
            * Stay informed about designs and upcoming events by watching our [community content](https://github.com/kubevirt/community/)

          # License

          KubeVirt is distributed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt).
        displayName: KubeVirt HyperConverged Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        links:
        - name: KubeVirt project
          url: https://kubevirt.io
        - name: Source Code
          url: https://github.com/kubevirt/hyperconverged-cluster-operator
        maintainers:
        - email: kubevirt-dev@googlegroups.com
          name: KubeVirt project
        maturity: alpha
        provider:
          name: KubeVirt project
        relatedImages:
        - registry.k8s.io/sig-storage/livenessprobe@sha256:88092d100909918ae0a768956cf78c88bc59cd7232720f7cdbdfb5d2e235001e
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d078dc174323407e8cc6f0f9abd4efaac5db27838f1564d0253d5e3233e3f17f
        - quay.io/kubevirt/hostpath-provisioner@sha256:a024ad8d0534d1e3ec6edd9a2a503a2aaa3853bf4c9e3181c6ace559d7cb6b23
        - quay.io/kubevirt/cni-default-plugins@sha256:976a24392c2a096c38c2663d234b2d3131f5c24558889196d30b9ac1b6716788
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97
        - quay.io/kubevirt/virt-handler@sha256:4e4a4c12d5781ebbcb8cbebef6fb2b9cb54b25f3804f1c19bbfd7fdb9dd383cc
        - quay.io/kubevirt/ssp-operator@sha256:7a8d04480403bcbbdd5cd854701013bfe57a4d7ae57aad6e9c83aae331e91bfa
        - quay.io/kubevirt/virt-exportproxy@sha256:fa49d5f034cf56ae73367879660bff402dfea4251db91d33364c376ddfa1e999
        - quay.io/kubevirt/network-passt-binding-cni@sha256:8e9a0fe4c0096abfea49f4eb36038842621bcb770ab6358ff5a6315016b6a243
        - ghcr.io/kubevirt/ipam-controller@sha256:4fdc9c77b9e683f274a31fcb7f6dbcf765799596efd93bc37512fb860f07b02f
        - quay.io/kubevirt/bridge-marker@sha256:bf269af61e618857e7b14439cfc003aac2d65db9ee633147a73f5d9648dab377
        - quay.io/kubevirt/cdi-controller@sha256:a173f818e6e7f2be3db6390b638399dd496bc2b5595550e4381ef9586a81c144
        - quay.io/kubevirt/cdi-importer@sha256:2ab689c89a7c9256fde8ccf7e13a6cfae7c89b7288fc756f139caf5930c39d10
        - quay.io/kubevirt/hyperconverged-cluster-webhook@sha256:5281c95090e27a492beb205c750f7661b15a24b438ceedc2d12c106da160f9fc
        - quay.io/kubevirt/kubemacpool@sha256:f9e5151798acc03798a007eacf51bc7a579c5e5a57851836eae601cc1eaa1c30
        - quay.io/kubevirt/virt-synchronization-controller@sha256:e9a3347c0c140aaf0f4864cca1299db33421ad795c744292322ed4d3e2fbb6f8
        - quay.io/openshift-virtualization/wasp-agent@sha256:eabfa6a425213f520f7a9e5b81b43e8b6430779d42c5c8b1bfd48a4f1730447a
        - ghcr.io/k8snetworkplumbingwg/multus-cni@sha256:a60a21ee1d00c9f215b0b2fa03b3d5e384ab7ddb9ea0d231d36aef220e95a69c
        - quay.io/kubevirt/hostpath-csi-driver@sha256:696e7b6c9fb92353579b8c003a43a27a7d78ce224a8119db3b3997295d330e3c
        - quay.io/kubevirt/virtio-container-disk@sha256:bf2c634591d7fca1b90479785084fa108a66fe9da6777c4312bb4f57cc837faa
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:e2def4213ec0657e72eb790ae8a115511d5b8f164a62d3568d2f1bff189917e8
        - quay.io/kubevirt/aaq-server@sha256:dfb46682eb734e73a1142b9af5f94f2f70aa9a7e04a7c804565f2a89fbf0f989
        - quay.io/kubevirt/cdi-uploadserver@sha256:db3bf75d7a940e545b1a38d0bfff7fdc271cfc1d64a77609e07a5d0f2e6683ad
        - ghcr.io/kubevirt/kubesecondarydns@sha256:f5fe9c98fb6d7e5e57a6df23fe82e43e65db5953d76af44adda9ab40c46ad0bf
        - quay.io/kubevirt/cdi-operator@sha256:8b2028dc3695d1e3ec4b5d3ad0fff4e356f6e22f0c407cc70e5c551a55afaf47
        - ghcr.io/k8snetworkplumbingwg/multus-dynamic-networks-controller@sha256:2a2bb32c0ea8b232b3dbe81c0323a107e8b05f8cad06704fca2efd0d993a87be
        - quay.io/community-operator-pipeline-prod/community-kubevirt-hyperconverged@sha256:4ed2717b6f140841cc75b49adc664641399a05d2bae3455da01280dbee1eeba7
        - registry.k8s.io/coredns/coredns@sha256:a0ead06651cf580044aeb0a0feba63591858fb2e43ade8c9dea45a6a89ae7e5e
        - quay.io/kubevirt/macvtap-cni@sha256:af31faae20c0128a469dd4c1aa866d6bf78d1d2f5972127adf4c9438dcde10f4
        - quay.io/kubevirt/network-passt-binding@sha256:11cf7036b49f30c4f6b5c28feb274ea231533df981a58fce9e191f9f815f0a1c
        - quay.io/kubevirt/aaq-operator@sha256:98c4d2e73c733468f3c4724c72c4d42411f49706cdfa843ce1d507c356621088
        - quay.io/kubevirt/virt-operator@sha256:2d6ed0d12c13d86117d77233ef98626f0418c273e45730e922882ddedac3c4a0
        - quay.io/kubevirt/aaq-controller@sha256:04199fad9d42e0d9206ae042545b48da4c3bf14995d87aa6d8c804b0f9beeea4
        - quay.io/kubevirt/sidecar-shim@sha256:0252893b5cd3df04e417d82a8817b6dc1fc60ef475d73d7e87a36318c3257d0b
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:bc7be893ecc3ad524194aa6573b2f5c06cd469bdf21a500ab6c99c2ba1c4d64d
        - quay.io/kubevirt/virt-exportserver@sha256:371e217b1a7e68722a79203d4251e7034ef8c08e5ef5aec282a93cdcc0014cf7
        - quay.io/kubevirt/cdi-apiserver@sha256:7e36cab28362127345282b5f65ca358607cf275a4eacbfff9bafce18128d58e7
        - quay.io/kubevirt/virt-controller@sha256:8a3788c01a667a4a52bfde3ea284cde459afcf54af2644d0b4e62feb42ec9d97
        - quay.io/kubevirt/virt-launcher@sha256:66f02bfd67bfdbe59ea9c0139270d9efba4e1491e1ef81bccde5bd6c7794333d
        - quay.io/kubevirt-ui/kubevirt-apiserver-proxy@sha256:935475c2850466aa5ac57e4de627fb177515cb2c402a95842ead095d82b6df5f
        - quay.io/kubevirt/kubevirt-template-validator@sha256:87350bb8e68683509b8ffa72738ad719b22f48192b88bc58ab6223980c4ccee9
        - quay.io/kubevirt-ui/kubevirt-plugin@sha256:89269df1481bed69cac7095c8d8d875acbfa238e4b5735ab802cda90c9375a1b
        - quay.io/kubevirt/pr-helper@sha256:812fcb543d7519282607a4da991faaf7c734ff37e0c04dbf1083c9a9430ca168
        - quay.io/kubevirt/cdi-cloner@sha256:ff5c705081d59bc62141138979178ca542ebe31ff29906eca23b6d8b5c89aca0
        - quay.io/kubevirt/hyperconverged-cluster-operator@sha256:78a1a9f656da5dea20022706ebf61982dd9b63dd5cb4dd75ae98d643e671fbde
        - ghcr.io/k8snetworkplumbingwg/ovs-cni-plugin@sha256:435f374b434b3bc70a5cfaba0011fdcf5f433d96b98b06d29306cbd8db3a8c21
        - quay.io/kubevirt/virt-api@sha256:15dcc9da661ff1738fefa5746b22471ac8e954d8e4d3dbd884e8cf399fbbbe6f
        - quay.io/kubevirt/hostpath-provisioner-operator@sha256:ac0c005304acb52033f3c4ad4af2aab81361346d5327c92ec6bcbd98097ae88b
        - quay.io/kubevirt/libguestfs-tools@sha256:677e53432ac080d7b93031d501a9a8f2e6fa35ce67c48f5d43a05967e04467e5
        - quay.io/kubevirt/cdi-uploadproxy@sha256:b6b3cfaad4886faa1762888c0dc92105cc90d678f4ac14e12917af77f49d91a6
        - quay.io/kubevirt/cluster-network-addons-operator@sha256:0ec8c28176c12c2078ef34905c72da3031a9af51f76d4c2d23e22f75e9e1dbee
        - quay.io/kubevirt/virt-artifacts-server@sha256:edd66038da14527b205220e3d208c1bd598b3bed682dbd28413f1e9850e5f116
        version: 1.16.0
      entries:
      - name: kubevirt-hyperconverged-operator.v1.16.0
        version: 1.16.0
      - name: kubevirt-hyperconverged-operator.v1.15.2
        version: 1.15.2
      - name: kubevirt-hyperconverged-operator.v1.15.0
        version: 1.15.0
      - name: kubevirt-hyperconverged-operator.v1.14.0
        version: 1.14.0
      - name: kubevirt-hyperconverged-operator.v1.13.0
        version: 1.13.0
      - name: kubevirt-hyperconverged-operator.v1.12.0
        version: 1.12.0
      - name: kubevirt-hyperconverged-operator.v1.11.1
        version: 1.11.1
      - name: kubevirt-hyperconverged-operator.v1.10.0
        version: 1.10.0
      - name: kubevirt-hyperconverged-operator.v1.9.0
        version: 1.9.0
      - name: kubevirt-hyperconverged-operator.v1.8.2
        version: 1.8.2
      - name: kubevirt-hyperconverged-operator.v1.8.1
        version: 1.8.1
      - name: kubevirt-hyperconverged-operator.v1.8.0
        version: 1.8.0
      - name: kubevirt-hyperconverged-operator.v1.7.0
        version: 1.7.0
      - name: kubevirt-hyperconverged-operator.v1.6.0
        version: 1.6.0
      - name: kubevirt-hyperconverged-operator.v1.5.2
        version: 1.5.2
      - name: kubevirt-hyperconverged-operator.v1.5.1
        version: 1.5.1
      - name: kubevirt-hyperconverged-operator.v1.5.0
        version: 1.5.0
      - name: kubevirt-hyperconverged-operator.v1.4.4
        version: 1.4.4
      - name: kubevirt-hyperconverged-operator.v1.4.3
        version: 1.4.3
      - name: kubevirt-hyperconverged-operator.v1.4.2
        version: 1.4.2
      - name: kubevirt-hyperconverged-operator.v1.4.1
        version: 1.4.1
      - name: kubevirt-hyperconverged-operator.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: community-kubevirt-hyperconverged
    provider:
      name: KubeVirt project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-bamoe-businessautomation: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: bamoe-businessautomation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bamoe-businessautomation-operator.8.0.8-1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"app.kiegroup.org/v2","kind":"KieApp","metadata":{"name":"rhpam-trial"},"spec":{"environment":"rhpam-trial"}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/ibm-bamoe/bamoe-rhel8-operator@sha256:0646da8707d10b3cc2e2344269abd8797db34127a3326bf76bbc1547aa4bbd73
          createdAt: "2025-07-22 17:40:17"
          description: Deploys and manages IBM Business Automation Manager Open Editions
            environment.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["IBM Business Automation Manager
            Open Edition"]'
          repository: https://github.com/kiegroup/kie-cloud-operator
          support: https://www.ibm.com/mysupport
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A project prescription running an IBM BAMOE environment.
            displayName: KieApp
            kind: KieApp
            name: kieapps.app.kiegroup.org
            version: v2
        description: |-
          Deploys and manages IBM Business Automation Manager Open Editions environment.

          * **IBM Process Automation Manager** is a platform for developing containerized microservices and applications that automate business decisions and processes. It includes business process management (BPM), business rules management (BRM), and business resource optimization and complex event processing (CEP) technologies. It also includes a user experience platform to create engaging user interfaces for process and decision services with minimal coding.
        displayName: IBM Business Automation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kieapp
        - pam
        - decision
        - kie
        - cloud
        - bpm
        - process
        - automation
        - operator
        links:
        - name: Product Page
          url: https://ibm.com
        - name: Documentation
          url: https://www.ibm.com/docs/en/ibamoe
        maintainers:
        - email: mysphelp@us.ibm.com
          name: IBM
        maturity: 8.x-stable
        provider:
          name: IBM
        relatedImages:
        - registry.redhat.io/amq7/amq-broker@sha256:792c1cb19e62519cc47d834650fe5a6a6ca589a37d0b53d4f4549e80cabae3f9
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:2f1a7519617b5c0d082f943de0db295370649d968d699d76cfd829f4c9826a0f
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:82d8ebde7eb3ecfbf72e5b71e7e392d3a3597fc084b6cf35e8fec23bfe41210d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:98e9a6618558bc8a1b9cb91d1c9b3380968d335092f6e953d1abe6af96abf65c
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:b3b7388b3b116ef37aabbb04b5d2c3e36e58d2fc95f1e59795b423010e071fc3
        - registry.redhat.io/openshift4/ose-cli@sha256:b2b93def4eb5edeccfa2d8ba22e493646325842674dff0446b45677bf641a342
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:25025e489c15108edffe5270d257e1ed9be0a67aa067bcfc184647793aac2617
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:5ed8821328413ec11859ae317679f0692afff9945f134fc8909e07a3ac387794
        - registry.redhat.io/jboss-datagrid-7/datagrid73-openshift@sha256:4056b1cf8ff5995f56eecfdc087d9ece56a216dba6bd73acc5693f0778e8d573
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:c9f08ddc6111cdd74faa0db5721d5730fc7716fccf4dc2a658595f7e0c184c10
        - registry.redhat.io/ibm-bamoe/bamoe-operator-bundle@sha256:54df7eba0292459c0491ba39c15bfcf793e1c0aef042a4b3f6c587b0d45f77af
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:efa55e17190b0ebe1618452f786876ef354b8fbec25c316aed7ed5bb1ce88116
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:f714b9c1555e7f27a3c9cf2cf687a74188f36b1283d4e09cec4db3c084d9fe64
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:ef1d77bb085172f927ee53d1674c85e2acaf1f580d7cad55bae8bf2c33c49c01
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:01bf97beffb3647968aae052cdd401d6d562c35f3e78ac483dbf55c44a71dc2f
        - registry.redhat.io/ibm-bamoe/bamoe-controller-rhel8@sha256:6cd0f07856d612dca46b0a01a93b796f7a0f112b98cedfd6754f9fd770ee843d
        - registry.redhat.io/rhscl/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:c3553707936cb9eee8a6a622643f72c91e1b0c11add5ec9ad5865242a9e133b4
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:a287a2fbaded371b8fcae5e4124b2d905bb228f94da0fc899ca2600b378dca0d
        - registry.redhat.io/ibm-bamoe/bamoe-rhel8-operator@sha256:0646da8707d10b3cc2e2344269abd8797db34127a3326bf76bbc1547aa4bbd73
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:457fc73423fa94591bc7e35729a25c58d3465583afccf342fb338b6e11188575
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:191237ccffc476e764714a69e35d9421dcee5ddd7184442d7a8306a06b97e6bb
        - registry.redhat.io/ibm-bamoe/bamoe-controller-rhel8@sha256:3fcd9ae0bc194c198cbb5ee94272e80f302658733e467766bd1789357e9fd015
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:3fd45f2dabca7220772d823275a5697b42dd35f53c27671b093117933ef2d4f6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:fb326be806b337b0ae1711f974d15e073aebcbad77aaa1123a63cf4f331da5f2
        version: 8.0.8-1
      entries:
      - name: bamoe-businessautomation-operator.8.0.8-1
        version: 8.0.8-1
      - name: bamoe-businessautomation-operator.8.0.7-2
        version: 8.0.7-2
      - name: bamoe-businessautomation-operator.8.0.7-1
        version: 8.0.7-1
      - name: bamoe-businessautomation-operator.8.0.6-3
        version: 8.0.6-3
      - name: bamoe-businessautomation-operator.8.0.6-2
        version: 8.0.6-2
      - name: bamoe-businessautomation-operator.8.0.6-1
        version: 8.0.6-1
      - name: bamoe-businessautomation-operator.8.0.5-3
        version: 8.0.5-3
      - name: bamoe-businessautomation-operator.8.0.5-2
        version: 8.0.5-2
      - name: bamoe-businessautomation-operator.8.0.5-1
        version: 8.0.5-1
      - name: bamoe-businessautomation-operator.8.0.4-3
        version: 8.0.4-3
      - name: bamoe-businessautomation-operator.8.0.4-2
        version: 8.0.4-2
      - name: bamoe-businessautomation-operator.8.0.4-1
        version: 8.0.4-1
      - name: bamoe-businessautomation-operator.8.0.3-4
        version: 8.0.3-4
      - name: bamoe-businessautomation-operator.8.0.3-3
        version: 8.0.3-3
      - name: bamoe-businessautomation-operator.8.0.3-2
        version: 8.0.3-2
      - name: bamoe-businessautomation-operator.8.0.3-1
        version: 8.0.3-1
      - name: bamoe-businessautomation-operator.8.0.2-3
        version: 8.0.2-3
      - name: bamoe-businessautomation-operator.8.0.2-2
        version: 8.0.2-2
      - name: bamoe-businessautomation-operator.8.0.2-1
        version: 8.0.2-1
      - name: bamoe-businessautomation-operator.8.0.1-2
        version: 8.0.1-2
      - name: bamoe-businessautomation-operator.8.0.1-1
        version: 8.0.1-1
      - name: bamoe-businessautomation-operator.8.0.0-1
        version: 8.0.0-1
      name: 8.x-stable
    defaultChannel: 8.x-stable
    packageName: bamoe-businessautomation-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Keysight
      provider-url: keysight.com
    name: keysight-loadcore-agents
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keysight-loadcore-agents.v0.1.21
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.loadcore.keysight.com/v1alpha1",
                "kind": "Agents",
                "metadata": {
                  "name": "loadcore-agents-sample",
                  "namespace": "keysight-loadcore-agents"
                },
                "spec": {
                  "agents": [
                    {
                      "args": {
                        "adminInterface": "eth0",
                        "middlewareAddr": "nats-core.keysight-wap.svc.cluster.local:4222",
                        "testInterfaces": [
                          "net1"
                        ]
                      },
                      "exposeIngress": true,
                      "lifecycle": {
                        "postStart": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "echo Hello from the postStart handler"
                            ]
                          }
                        },
                        "preStop": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "killall -0 tail"
                            ]
                          }
                        }
                      },
                      "livenessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "initialDelaySeconds": 60
                      },
                      "name": "agent1",
                      "networks": [
                        "keysight-loadcore-agents/loadcore-agent-network"
                      ],
                      "privileged": true,
                      "readinessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 30,
                        "periodSeconds": 20
                      },
                      "replicas": 2,
                      "startupProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 10,
                        "periodSeconds": 5
                      },
                      "terminationMessagePolicy": "FallbackToLogsOnError"
                    },
                    {
                      "args": {
                        "adminInterface": "eth0",
                        "middlewareAddr": "nats-core.keysight-wap.svc.cluster.local:4222",
                        "testInterfaces": [
                          "net1"
                        ]
                      },
                      "exposeIngress": true,
                      "lifecycle": {
                        "postStart": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "echo Hello from the postStart handler"
                            ]
                          }
                        },
                        "preStop": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "killall -0 tail"
                            ]
                          }
                        }
                      },
                      "livenessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "initialDelaySeconds": 60
                      },
                      "name": "agent2",
                      "networks": [
                        "keysight-loadcore-agents/loadcore-agent-network"
                      ],
                      "privileged": true,
                      "readinessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 30,
                        "periodSeconds": 20
                      },
                      "startupProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 10,
                        "periodSeconds": 5
                      },
                      "terminationMessagePolicy": "FallbackToLogsOnError"
                    }
                  ],
                  "image": {
                    "registry": "prod.harbor.keysight.digital",
                    "repository": "loadcore/loadcore-agent",
                    "tag": "UBI8-0.1-7d990d7254"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "regcred"
                    }
                  ],
                  "networks": [
                    {
                      "config": "{ \"cniVersion\": \"0.3.1\", \"type\": \"ipvlan\", \"master\": \"ens192\", \"mode\": \"l2\", \"ipam\": { \"type\": \"whereabouts\", \"range\": \"192.168.1.0/24\", \"routes\": [ { \"dst\": \"0.0.0.0/0\" } ] } }",
                      "name": "loadcore-agent-network"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2023-09-19T12:53:55Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Agents
            name: agents.app.loadcore.keysight.com
            version: v1alpha1
        description: Keysight LoadCore Agents Operator
        displayName: Keysight LoadCore Agents Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - loadcore
        - keysight
        links:
        - name: Keysight Loadcore Agents
          url: https://keysight-loadcore-agents.domain
        maintainers:
        - email: vlad.butusina@keysight.com
          name: Vlad Butusina
        maturity: alpha
        provider:
          name: Keysight
          url: keysight.com
        relatedImages:
        - prod.harbor.keysight.digital/loadcore/keysight-loadcore-agents@sha256:f1d1e9f2aca11505407785bc33905744b667bc8aea49df73fcc50db379c0b375
        - registry.connect.redhat.com/loadcore/keysight-loadcore-agents-bundle@sha256:f16fcea424cb7b1eb647f3e9d3c08bd93c8a1b8bb7eab71a4e756da72a7a56a0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0848d89e9f94be04f17beeee75807d7fd11102737e6483ee674f2cf3ae28f213
        version: 0.1.21
      entries:
      - name: keysight-loadcore-agents.v0.1.21
        version: 0.1.21
      name: alpha
    defaultChannel: alpha
    packageName: keysight-loadcore-agents
    provider:
      name: Keysight
      url: keysight.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Solace Corporation
      provider-url: www.solace.com
    name: pubsubplus-eventbroker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pubsubplus-eventbroker-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pubsubplus.solace.com/v1beta1",
                "kind": "PubSubPlusEventBroker",
                "metadata": {
                  "name": "non-ha-standalone-example"
                },
                "spec": {
                  "redundancy": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "true"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.10
          containerImage: registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator@sha256:d68db92bcb217d94dc0ad0a1cea625a0a9c9299d886d325a903163f9f887dcd5
          createdAt: "2025-07-31T19:48:36Z"
          description: The Solace PubSub+ Event Broker Operator deploys and manages
            the lifecycle of PubSub+ Event Brokers
          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"
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
          support: Solace Products
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PubSub+ Event Broker
            displayName: PubSub+ Event Broker
            kind: PubSubPlusEventBroker
            name: pubsubpluseventbrokers.pubsubplus.solace.com
            version: v1beta1
        description: |
          ## Solace PubSub+ Platform
          Solace [PubSub+ Platform](https://solace.com/products/platform/) is a complete event streaming and management platform
          for real-time enterprises. The [PubSub+ Software Event Broker](https://solace.com/products/event-broker/software/) efficiently streams
          event-driven information between applications, IoT devices, and user interfaces running in the cloud, on-premises,
          and in hybrid environments using open APIs and protocols like AMQP, JMS, MQTT, REST and WebSocket.
          It can be installed into a variety of public and private clouds, PaaS, and on-premises environments.
          Event brokers in multiple locations can be linked together in an [Event Mesh](https://solace.com/what-is-an-event-mesh/)
          to dynamically share events across the distributed enterprise.

          ## Solace PubSub+ Event Broker Operator
          Solace Pubsub+ Event Broker Operator automatically deploys and manages PubSub+ Software Event Brokers on Kubernetes and OpenShift environments.

          Features include:
          * Initial deployment configuration: Production-ready HA, non-HA or for developers
          * Rolling update for configuration changes or broker upgrades
          * Prometheus monitoring support

          ## Getting started
          Refer to the [Solace PubSub+ Event Broker Operator Quick Start](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/README.md)
        displayName: Solace PubSub+ Event Broker Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - solace
        - pubsubplus
        - pubsub+
        - pubsub
        - messaging
        - advanced event broker
        - event broker
        - event mesh
        - event streaming
        - data streaming
        - event integration
        - middleware
        links:
        - name: Operator QuickStart
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
        - name: Operator Documentation
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/docs/EventBrokerOperatorUserGuide.md
        - name: Solace.com
          url: https://solace.com
        - name: Understanding Solace Technology
          url: https://solace.com/products/platform/
        - name: Solace PubSub+ Technical Documentation
          url: https://docs.solace.com/
        - name: Solace Developer Portal
          url: https://www.solace.dev/
        - name: Solace Community
          url: https://solace.community/
        maintainers:
        - email: support@solace.com
          name: Solace R&D
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Solace Corporation
          url: www.solace.com
        relatedImages:
        - registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator-bundle@sha256:85e75ec797f70c5807ec1ea25208cf0bb1990daa05eca9fbc82bc38aa4a840ab
        - registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator@sha256:d68db92bcb217d94dc0ad0a1cea625a0a9c9299d886d325a903163f9f887dcd5
        version: 1.4.0
      entries:
      - name: pubsubplus-eventbroker-operator.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: pubsubplus-eventbroker-operator
    provider:
      name: Solace Corporation
      url: www.solace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Weaveworks
      provider-url: ""
    name: tf-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tf-controller.v0.9.0-rc.8
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"infra.contrib.fluxcd.io/v1alpha1\",\n
            \   \"kind\": \"Terraform\",\n    \"metadata\": {\n        \"name\": \"helloworld-tf\",\n
            \       \"namespace\": \"flux-system\"\n    },\n    \"spec\": {\n        \"interval\":
            \"5m\",\n        \"approvePlan\": \"auto\",\n        \"path\": \"./\",\n
            \       \"sourceRef\": {\n          \"kind\": \"GitRepository\",\n          \"name\":
            \"helloworld\",\n          \"namespace\": \"flux-system\"\n        }      \n
            \   }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: ghcr.io/weaveworks/tf-controller:v0.9.0-rc.8
          description: Weave TF-controller is a Flux controller that brings GitOps
            to Terraform resources.
          operatorframework.io/suggested-namespace: flux-system
          support: Weaveworks
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Terraform
            displayName: Terraform
            kind: Terraform
            name: terraforms.infra.contrib.fluxcd.io
            version: v1alpha1
        description: "**Weave GitOps Terraform Controller** (aka Weave TF-controller)
          is a Flux controller for reconciling Terraform resources in the GitOps way.
          \nWith the power of Flux together with Terraform, TF-controller allows you
          to GitOps-ify infrastructure, \nand application resources, in the Kubernetes
          and Terraform universe, together at your own pace.\n\nTF-controller offers
          many GitOps models:\n  1. **GitOps Automation Model:** GitOps your Terraform
          resources from the provision steps to the enforcement steps, like a whole
          EKS cluster.\n  2. **Hybrid GitOps Automation Model:** GitOps parts of your
          existing infrastructure resources. For example, you have an existing EKS
          cluster. You can choose to GitOps only its nodegroup, or its security group.\n
          \ 3. **State Enforcement Model:** You have a TFSTATE file, and you'd like
          to use GitOps enforce it, without changing anything else.\n  4. **Drift
          Detection Model:** You have a TFSTATE file, and you'd like to use GitOps
          just for drift detection, so you can decide to do things later when a drift
          occurs.\n\nFeatures\n  * GitOps Automation for Terraform\n  * Drift detection\n
          \ * Plan and Manual Approve"
        displayName: Weave GitOps Terraform Controller
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - weave
        - flux
        - cd
        - continuous delivery
        - terraform
        - gitops
        links:
        - name: Weave GitOps Terraform Controller
          url: https://github.com/weaveworks/tf-controller
        - name: Documentation
          url: https://weaveworks.github.io/tf-controller/
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Weaveworks
        relatedImages:
        - ghcr.io/weaveworks/tf-controller:v0.9.0-rc.8
        - quay.io/openshift-community-operators/tf-controller@sha256:cdaeb470d9b331a3fa08167e5c904befb00be983e1354651670e21e13560bf9b
        version: 0.9.0-rc.8
      entries:
      - name: tf-controller.v0.9.0-rc.8
        version: 0.9.0-rc.8
      - name: tf-controller.v0.9.0-rc.3
        version: 0.9.0-rc.3
      name: stable
    defaultChannel: stable
    packageName: tf-controller
    provider:
      name: Weaveworks
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: node-healthcheck-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-healthcheck-operator.v0.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "maxUnhealthy": "49%",
                  "remediationTemplate": {
                    "apiVersion": "poison-pill.medik8s.io/v1alpha1",
                    "kind": "PoisonPillRemediationTemplate",
                    "name": "group-x",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/node-healthcheck-operator:0.1.0-latest
          createdAt: "2021-04-20 12:00:00"
          description: An operator to monitor node healthcheck and remdiate via 3rd
            party providers like poison-pill.
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: This operator deploys the Node Health Check controller and its
          artifacts
        displayName: Node Health Check Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://node-healthcheck-operator.domain
        maintainers:
        - email: medik8s@googlegroups.com
          name: medik8s team
        maturity: alpha
        provider:
          name: medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/medik8s/node-healthcheck-operator:0.1.0-latest
        - quay.io/openshift-community-operators/node-healthcheck-operator@sha256:30264b9f49912cc0e6bed59001869e3168caace20b292c9dad4cc2d4947d289d
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.1.1
      entries:
      - name: node-healthcheck-operator.v0.1.1
        version: 0.1.1
      name: alpha
    - currentCSV: node-healthcheck-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample"
                },
                "spec": {
                  "minHealthy": "51%",
                  "remediationTemplate": {
                    "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                    "kind": "SelfNodeRemediationTemplate",
                    "name": "self-node-remediation-resource-deletion-template",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/node-healthcheck-operator:v0.3.0
          createdAt: "2022-08-24 11:40:38"
          description: Detect failed Nodes and trigger remediation with e.g. Self
            Node Remediation.
          olm.skipRange: '>=0.2.0 <0.3.0'
          operators.operatorframework.io/builder: operator-sdk-v1.18.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Hardware is imperfect, and software contains bugs. When node level failures such as kernel hangs or dead NICs
          occur, the work required from the cluster does not decrease - workloads from affected nodes need to be
          restarted somewhere.

          However some workloads, such as RWO volumes and StatefulSets, may require at-most-one semantics.
          Failures affecting these kind of workloads risk data loss and/or corruption if nodes (and the workloads
          running on them) are assumed to be dead whenever we stop hearing from them. For this reason it is important
          to know that the node has reached a safe state before initiating recovery of the workload.

          Unfortunately it is not always practical to require admin intervention in order to confirm the node’s true status.
          In order to automate the recovery of exclusive workloads, we provide operators for failure detection
          and remediation.

          ### Failure detection: Node Health Check operator
          The “Node Health Check” (NHC) operator checks each Node’s set of
          NodeConditions (eg. NotReady) against the criteria and thresholds defined in
          NodeHealthCheck configuration. If the Node is deemed to be in a failed
          state, NHC will initiate recovery by using the SIG Cluster API's “External
          Remediation” API to instantiate the configured remediation template which
          specifies the mechanism/controller to be used.

          ### Failure handling: Self Node Remediation
          By default NHC depends on the “Self Node Remediation” (SNR) operator, which
          is installed automatically.
          SNR uses watchdog timers and heuristics to ensure nodes enter a safe state
          (no longer hosting workloads) within a known and finite period of time,
          before signaling to the system that all Pods and VolumeAttachments on the
          failed Node are no longer active and can be relocated elsewhere.
          In the case of transient errors, the watchdog’s actions will also result in
          the node rebooting and rejoining the cluster - restoring capacity.
        displayName: Node Health Check Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - NHC
        - Self Node Remediation
        - SNR
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/node-healthcheck-operator
        maintainers:
        - email: medik8s@googlegroups.com
          name: medik8s team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: medik8s
          url: https://github.com/medik8s
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/medik8s/node-healthcheck-operator:v0.3.0
        - quay.io/openshift-community-operators/node-healthcheck-operator@sha256:d7cc6d2575eb252fb3e2468106e801f192da7844b0b153dc3c6a12cf7cc0a8fe
        version: 0.3.0
      entries:
      - name: node-healthcheck-operator.v0.3.0
        version: 0.3.0
      name: candidate
    - currentCSV: node-healthcheck-operator.v0.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample"
                },
                "spec": {
                  "minHealthy": "51%",
                  "remediationTemplate": {
                    "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                    "kind": "SelfNodeRemediationTemplate",
                    "name": "self-node-remediation-automatic-strategy-template",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/plugins: '["node-remediation-console-plugin"]'
          containerImage: quay.io/medik8s/node-healthcheck-operator:v0.10.0
          createdAt: "2025-11-24T11:39:14Z"
          description: Detect failed Nodes and trigger remediation with a remediation
            operator.
          olm.skipRange: '>=0.9.0 <0.10.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Hardware is imperfect, and software contains bugs. When node level failures such as kernel hangs or dead NICs
          occur, the work required from the cluster does not decrease - workloads from affected nodes need to be
          restarted somewhere.

          However some workloads, such as RWO volumes and StatefulSets, may require at-most-one semantics.
          Failures affecting these kind of workloads risk data loss and/or corruption if nodes (and the workloads
          running on them) are assumed to be dead whenever we stop hearing from them. For this reason it is important
          to know that the node has reached a safe state before initiating recovery of the workload.

          Unfortunately it is not always practical to require admin intervention in order to confirm the node’s true status.
          In order to automate the recovery of exclusive workloads, we provide operators for failure detection
          and remediation.

          ### Failure detection: Node Health Check operator
          The “Node Health Check” (NHC) operator checks each Node’s set of
          NodeConditions (eg. NotReady) against the criteria and thresholds defined in
          NodeHealthCheck configuration. If the Node is deemed to be in a failed
          state, NHC will initiate recovery by using the SIG Cluster API's “External
          Remediation” API to instantiate the configured remediation template which
          specifies the mechanism/controller to be used.

          ### Failure handling: External remediators
          There are multiple remediators for handling node failure that we recommend:
          - Self Node Remediation (SNR)
          - Fence Agents Remediation (FAR)
          - Machine Deletion Remediation (MDR)

          #### Self Node Remediation (SNR)
          SNR uses watchdog timers and heuristics to ensure nodes enter a safe state
          (no longer hosting workloads) within a known and finite period of time,
          before signaling to the system that all Pods on the failed Node are no longer active
          and can be relocated elsewhere.
          In the case of transient errors, the watchdog’s actions will also result in
          the node rebooting and rejoining the cluster - restoring capacity.

          #### Fence Agents Remediation (FAR)
          FAR uses well-known agents to fence unhealthy nodes, and eventually FAR remediates the nodes.
          The remediation includes rebooting the unhealthy node using a fence agent,
          and then evicting workloads from the unhealthy node.

          #### Machine Deletion Remediation (MDR)
          MDR is limited to OpenShift, and it uses Machine API for reprovisioning unhealthy nodes by deleting their machines.
        displayName: Node Health Check Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - NHC
        - Self Node Remediation
        - SNR
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/node-healthcheck-operator
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/medik8s/node-remediation-console:v0.10.1
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/node-healthcheck-operator@sha256:3824834753d392fd0c11d3fedd3055b5adab519a2f2777754296569ea077e675
        - quay.io/medik8s/node-healthcheck-operator:v0.10.0
        version: 0.10.0
      entries:
      - name: node-healthcheck-operator.v0.10.0
        version: 0.10.0
      - name: node-healthcheck-operator.v0.9.0
        version: 0.9.0
      - name: node-healthcheck-operator.v0.8.0
        version: 0.8.0
      - name: node-healthcheck-operator.v0.6.1
        version: 0.6.1
      - name: node-healthcheck-operator.v0.6.0
        version: 0.6.0
      - name: node-healthcheck-operator.v0.5.0
        version: 0.5.0
      - name: node-healthcheck-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: node-healthcheck-operator
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: lifecycle-agent
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lifecycle-agent.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "ImageBasedUpgrade",
                "metadata": {
                  "name": "upgrade"
                },
                "spec": {
                  "autoRollbackOnFailure": {},
                  "extraManifests": [
                    {
                      "name": "sno-extramanifests",
                      "namespace": "openshift-lifecycle-agent"
                    }
                  ],
                  "oadpContent": [
                    {
                      "name": "oadp-cm-sno-backup",
                      "namespace": "openshift-adp"
                    }
                  ],
                  "seedImageRef": {
                    "image": "quay.io/xyz",
                    "version": "4.16.0"
                  },
                  "stage": "Idle"
                }
              },
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "SeedGenerator",
                "metadata": {
                  "name": "seedimage"
                },
                "spec": {
                  "seedImage": "quay.io/xyz"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
          description: The Lifecycle Agent for OpenShift provides local lifecycle
            management services for Single Node Openshift (SNO) clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-lifecycle-agent
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-lifecycle-agent",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/lifecycle-agent
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ImageBasedUpgrade is the Schema for the ImageBasedUpgrades
              API
            displayName: Image-based Cluster Upgrade
            kind: ImageBasedUpgrade
            name: imagebasedupgrades.lca.openshift.io
            version: v1
          - description: SeedGenerator is the Schema for the seedgenerators API
            displayName: Seed Generator
            kind: SeedGenerator
            name: seedgenerators.lca.openshift.io
            version: v1
        description: |-
          Lifecycle Agent for OpenShift
          The Lifecycle Agent for OpenShift provides local lifecycle management services
          for Single Node Openshift (SNO) clusters.

          You can find additional guidance in the upstream repository: https://github.com/openshift-kni/lifecycle-agent
        displayName: Lifecycle Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - upgrade
        links:
        - name: Lifecycle Agent
          url: https://lifecycle-agent.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/lifecycle-agent-operator-bundle@sha256:251f1b0929695dff69795adbe8aa25da051decab877ea318d8317930c1dd4bb2
        - registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
        - registry.redhat.io/openshift4/recert-rhel9@sha256:db975b2012b3377e24fadbd65a829579cd17eb2db2419781eee7e34c8900f7df
        version: 4.20.0
      entries:
      - name: lifecycle-agent.v4.20.0
        version: 4.20.0
      name: "4.20"
    - currentCSV: lifecycle-agent.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "ImageBasedUpgrade",
                "metadata": {
                  "name": "upgrade"
                },
                "spec": {
                  "autoRollbackOnFailure": {},
                  "extraManifests": [
                    {
                      "name": "sno-extramanifests",
                      "namespace": "openshift-lifecycle-agent"
                    }
                  ],
                  "oadpContent": [
                    {
                      "name": "oadp-cm-sno-backup",
                      "namespace": "openshift-adp"
                    }
                  ],
                  "seedImageRef": {
                    "image": "quay.io/xyz",
                    "version": "4.16.0"
                  },
                  "stage": "Idle"
                }
              },
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "SeedGenerator",
                "metadata": {
                  "name": "seedimage"
                },
                "spec": {
                  "seedImage": "quay.io/xyz"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
          description: The Lifecycle Agent for OpenShift provides local lifecycle
            management services for Single Node Openshift (SNO) clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-lifecycle-agent
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-lifecycle-agent",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/lifecycle-agent
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ImageBasedUpgrade is the Schema for the ImageBasedUpgrades
              API
            displayName: Image-based Cluster Upgrade
            kind: ImageBasedUpgrade
            name: imagebasedupgrades.lca.openshift.io
            version: v1
          - description: SeedGenerator is the Schema for the seedgenerators API
            displayName: Seed Generator
            kind: SeedGenerator
            name: seedgenerators.lca.openshift.io
            version: v1
        description: |-
          Lifecycle Agent for OpenShift
          The Lifecycle Agent for OpenShift provides local lifecycle management services
          for Single Node Openshift (SNO) clusters.

          You can find additional guidance in the upstream repository: https://github.com/openshift-kni/lifecycle-agent
        displayName: Lifecycle Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - upgrade
        links:
        - name: Lifecycle Agent
          url: https://lifecycle-agent.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/lifecycle-agent-operator-bundle@sha256:251f1b0929695dff69795adbe8aa25da051decab877ea318d8317930c1dd4bb2
        - registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
        - registry.redhat.io/openshift4/recert-rhel9@sha256:db975b2012b3377e24fadbd65a829579cd17eb2db2419781eee7e34c8900f7df
        version: 4.20.0
      entries:
      - name: lifecycle-agent.v4.20.0
        version: 4.20.0
      name: stable
    defaultChannel: stable
    packageName: lifecycle-agent
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/streamshub
    name: amq-streams-console
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-streams-console.v3.0.1-5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
          createdAt: "2025-11-11T16:09:40Z"
          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: "true"
          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.skipRange: '>=2.9.0-0 <3.0.1-5'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:ce399e40e9467bce9b81c8d280d523732ba3e75d8f6c67e15cfcecd1842e024f
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:395103ad8ca8e1d2dcd3f05e7c3cc7abedef65189e008fe2d83928bc29558900
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        version: 3.0.1-5
      entries:
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: alpha
    - currentCSV: amq-streams-console.v2.8.0-13-0.1738265629.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:1b1b80710885b43600e22ff2a24930b5cab06cd91fad439ad8a282c00b4564b9
          createdAt: "2024-11-12T15:34:06Z"
          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: "true"
          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.substitutesFor: amq-streams-console.v2.8.0-13
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/2.8
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.23.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:366d60ff48fb9ba32dc73d92a775046d7b1eb1df21c93e31605372c7858f16ca
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:b83c3263e77904ce1c0f95b7bfab969605c97297a5598fd794d64daf508c52c0
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:1b1b80710885b43600e22ff2a24930b5cab06cd91fad439ad8a282c00b4564b9
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:38b80d81e54d59667c1f7dfa4da4125d5c7430816da130ddc84678a4e3cff6cf
        version: 2.8.0-13+0.1738265629.p
      entries:
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-2.8.x
    - currentCSV: amq-streams-console.v2.9.3-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
          createdAt: "2025-12-09T16:50:20Z"
          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: "true"
          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.skipRange: '>=2.8.0-0 <2.9.3-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/2.9
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:7d2e83b4cd9413f81a3dd196dd9b8585f46bf0ce15de20b064ec9d9184f0c506
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:fc53acbd342d479519c8ebfec15d2b6c46ff9d68b80cd4ccfb6f0232b75e48c3
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:1b10411e7ed6635720b0bc0928ab5b51bcd5f23e42cf6f50dc44428a99cade31
        version: 2.9.3-6
      entries:
      - name: amq-streams-console.v2.9.3-6
        version: 2.9.3-6
      - name: amq-streams-console.v2.9.3-5
        version: 2.9.3-5
      - name: amq-streams-console.v2.9.3-2
        version: 2.9.3-2
      - name: amq-streams-console.v2.9.2-2
        version: 2.9.2-2
      - name: amq-streams-console.v2.9.2-1
        version: 2.9.2-1
      - name: amq-streams-console.v2.9.1-7
        version: 2.9.1-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-2.9.x
    - currentCSV: amq-streams-console.v2.9.3-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
          createdAt: "2025-12-09T16:50:20Z"
          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: "true"
          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.skipRange: '>=2.8.0-0 <2.9.3-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/2.9
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:7d2e83b4cd9413f81a3dd196dd9b8585f46bf0ce15de20b064ec9d9184f0c506
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:fc53acbd342d479519c8ebfec15d2b6c46ff9d68b80cd4ccfb6f0232b75e48c3
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:1b10411e7ed6635720b0bc0928ab5b51bcd5f23e42cf6f50dc44428a99cade31
        version: 2.9.3-6
      entries:
      - name: amq-streams-console.v2.9.3-6
        version: 2.9.3-6
      - name: amq-streams-console.v2.9.3-5
        version: 2.9.3-5
      - name: amq-streams-console.v2.9.3-2
        version: 2.9.3-2
      - name: amq-streams-console.v2.9.2-2
        version: 2.9.2-2
      - name: amq-streams-console.v2.9.2-1
        version: 2.9.2-1
      - name: amq-streams-console.v2.9.1-7
        version: 2.9.1-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-2.x
    - currentCSV: amq-streams-console.v3.0.1-5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
          createdAt: "2025-11-11T16:09:40Z"
          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: "true"
          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.skipRange: '>=2.9.0-0 <3.0.1-5'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:ce399e40e9467bce9b81c8d280d523732ba3e75d8f6c67e15cfcecd1842e024f
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:395103ad8ca8e1d2dcd3f05e7c3cc7abedef65189e008fe2d83928bc29558900
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        version: 3.0.1-5
      entries:
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-3.0.x
    - currentCSV: amq-streams-console.v3.1.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
          createdAt: "2025-12-04T18:26:37Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:bb7b7b7936d953e4d320d964defd5931bd6b9a07dd73ed3bbcf3ebaea59ea6f1
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:9038f28c2e875eea355957375dff6827fe463bd28b299a4231714311622ded19
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
        version: 3.1.0-4
      entries:
      - name: amq-streams-console.v3.1.0-4
        version: 3.1.0-4
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-3.1.x
    - currentCSV: amq-streams-console.v3.1.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
          createdAt: "2025-12-04T18:26:37Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:9038f28c2e875eea355957375dff6827fe463bd28b299a4231714311622ded19
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:bb7b7b7936d953e4d320d964defd5931bd6b9a07dd73ed3bbcf3ebaea59ea6f1
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        version: 3.1.0-4
      entries:
      - name: amq-streams-console.v3.1.0-4
        version: 3.1.0-4
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-3.x
    - currentCSV: amq-streams-console.v3.1.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
          createdAt: "2025-12-04T18:26:37Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:bb7b7b7936d953e4d320d964defd5931bd6b9a07dd73ed3bbcf3ebaea59ea6f1
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:9038f28c2e875eea355957375dff6827fe463bd28b299a4231714311622ded19
        version: 3.1.0-4
      entries:
      - name: amq-streams-console.v3.1.0-4
        version: 3.1.0-4
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: stable
    defaultChannel: stable
    packageName: amq-streams-console
    provider:
      name: Red Hat
      url: https://github.com/streamshub
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: ""
    name: runtime-component-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runtime-component.v0.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: registry.connect.redhat.com/ibm/runtime-component-operator@sha256:d37b3f62575c9ad1ffcb22c89e2c3886275c326bf27aa49fb1808acba475853d
          createdAt: "2022-03-25T14:00:00Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          olm.skipRange: <0.8.1
          operators.operatorframework.io/builder: operator-sdk-v1.6.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          This advanced Operator is capable of deploying any runtime component image with consistent, production-grade QoS. It enables enterprise architects to govern the way their applications get deployed & managed in the cluster, while dramatically reducing the learning curve for developers to deploy into Kubernetes - allowing them to focus on writing the code!
          Here are some key features:

          #### Application Lifecyle
          You can deploy your runtime component container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the Operator will watch for any updates and will re-deploy the modified image.

          #### Custom RBAC
          This Operator is capable of using a custom ServiceAccount from the caller, allowing it to follow RBAC restrictions. By default it creates a ServiceAccount if one is not specified, which can also be bound with specific roles.

          #### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as: labels, annotations, and environment variables from a ConfigMap, a Secret or a value.

          #### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configuration, such as TLS settings, are also easily enabled.

          #### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto scaling to create (and delete) instances based on resource consumption.

          #### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you.
          This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart.
          We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.

          #### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating kubernetes Secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to its required services without any intervention or interruption.

          #### Exposing metrics to Prometheus
          The Runtime Component Operator exposes the runtime container's metrics via the Prometheus Operator.
          You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `spec.monitoring` field to control configurations such as the poll interval and security credentials.

          #### Easily mount logs and transaction directories
          If you need to mount the logs and transaction data from your runtime component to an external volume such as NFS (or any storage supported in your cluster), simply add the following (to specify the volume size and the location to persist) to your RuntimeComponent CR:
          ``` storage: size: 2Gi mountPath: "/logs" ```

          #### Integration with OpenShift Serverless
          Deploy your serverless runtime component using a single toggle.  The Operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing your pod to automatically scale to 0 when it is idle.

          #### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and how they are connected.

          See our [**documentation**](https://github.com/application-stacks/runtime-component-operator/tree/main/doc/) for more information.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://github.com/application-stacks/runtime-component-operator/tree/main/doc
        - name: Repository
          url: https://github.com/application-stacks/runtime-component-operator
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: beta
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator@sha256:d37b3f62575c9ad1ffcb22c89e2c3886275c326bf27aa49fb1808acba475853d
        - registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:4603bf04e53ce948bbf0ee5d239d5e265b40598044ef9e1f4539f4e466e59cb2
        version: 0.8.1
      entries:
      - name: runtime-component.v0.8.1
        version: 0.8.1
      - name: runtime-component.v0.8.0
        version: 0.8.0
      name: beta2
    - currentCSV: runtime-component.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:1b818f1a9c27baab6a39ae42d86f78bac085d772cae5cd97b357d0ee5799cf85
          createdAt: "2023-08-28T16:46:50Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          olm.skipRange: '>=0.8.0 <1.2.2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:a178716e62ab8a752bcb9023ad9631af2dbc72357266cd13b43398e21f230828
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02
        - icr.io/appcafe/runtime-component-operator@sha256:1b818f1a9c27baab6a39ae42d86f78bac085d772cae5cd97b357d0ee5799cf85
        version: 1.2.2
      entries:
      - name: runtime-component.v1.2.2
        version: 1.2.2
      name: v1.2
    - currentCSV: runtime-component.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  },
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:682c5cb3e24566bf2933b1d4a4f6bf520d9b546edcedc1ee3214ec1ac4d48629
          createdAt: "2024-08-01T20:26:42Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.3.3'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:c5288fea5b2ef8125f7b1ff7f7633eccd4e52d14ac9cfc5e473c2e317018ca3d
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91
        - icr.io/appcafe/runtime-component-operator@sha256:682c5cb3e24566bf2933b1d4a4f6bf520d9b546edcedc1ee3214ec1ac4d48629
        version: 1.3.3
      entries:
      - name: runtime-component.v1.3.3
        version: 1.3.3
      name: v1.3
    - currentCSV: runtime-component.v1.4.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  },
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:6f527c5173421c28d175b42d8c690eb63c4d1c5092c31d5350fd7a5e93661eaa
          createdAt: "2025-07-18T20:38:10Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.4.4'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:704925128f81d4ffadc4dcfaa69fc8011cf3d0f431d24222a8d7a03bad675331
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3
        - icr.io/appcafe/runtime-component-operator@sha256:6f527c5173421c28d175b42d8c690eb63c4d1c5092c31d5350fd7a5e93661eaa
        version: 1.4.4
      entries:
      - name: runtime-component.v1.4.4
        version: 1.4.4
      name: v1.4
    - currentCSV: runtime-component.v1.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  },
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:38959a0d24fdbaca34903095e21f263d9b8ed774b7b86d5fc0cebb53b274e012
          createdAt: "2025-12-08T16:01:38Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.5.2'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:71533cea0d96615d3ffbbb3d7abb4dc378fa83393ba93dc1310883e74c05e3ac
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f
        - icr.io/appcafe/runtime-component-operator@sha256:38959a0d24fdbaca34903095e21f263d9b8ed774b7b86d5fc0cebb53b274e012
        version: 1.5.2
      entries:
      - name: runtime-component.v1.5.2
        version: 1.5.2
      name: v1.5
    defaultChannel: v1.5
    packageName: runtime-component-operator-certified
    provider:
      name: Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Seldon Technologies
      provider-url: ""
    name: seldon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: seldon-operator.v1.14.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machinelearning.seldon.io/v1",
                "kind": "SeldonDeployment",
                "metadata": {
                  "labels": {
                    "app": "seldon",
                    "app.kubernetes.io/instance": "seldon1",
                    "app.kubernetes.io/name": "seldon",
                    "app.kubernetes.io/version": "v0.5"
                  },
                  "name": "seldon-model"
                },
                "spec": {
                  "name": "test-deployment",
                  "predictors": [
                    {
                      "componentSpecs": [
                        {
                          "spec": {
                            "containers": [
                              {
                                "image": "seldonio/mock_classifier:1.6.0",
                                "name": "classifier"
                              }
                            ]
                          }
                        }
                      ],
                      "graph": {
                        "children": [],
                        "name": "classifier",
                        "type": "MODEL"
                      },
                      "name": "example",
                      "replicas": 1
                    }
                  ]
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: AI/Machine Learning
          certified: "false"
          containerImage: docker.io/seldonio/seldon-core-operator:1.14.1
          createdAt: "2019-05-21 15:00:00"
          description: The Seldon operator for management, monitoring and operations
            of machine learning systems through the Seldon Engine. Once installed,
            the Seldon Operator provides multiple functions which facilitate the productisation,
            monitoring and maintenance of machine learning systems at scale.
          olm.skipRange: <1.13.1
          operators.operatorframework.io/builder: operator-sdk-v1.22.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/SeldonIO/seldon-core
          support: Clive Cox
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A seldon engine deployment
            displayName: Seldon Deployment
            kind: SeldonDeployment
            name: seldondeployments.machinelearning.seldon.io
            version: v1
        description: "The Seldon operator enables for native operation of production
          machine learning workloads, including monitoring and operations of language-agnostic
          models with the benefits of real-time metrics and log analysis.\n   \n##
          Overview\nSeldon Core is an open source platform for deploying machine learning
          models on a Kubernetes cluster.\n\n* Deploy machine learning models in the
          cloud or on-premise.\n* Get metrics and ensure proper governance and compliance
          for your running machine learning models.\n* Create powerful inference graphs
          made up of multiple components.\n* Provide a consistent serving layer for
          models built using heterogeneous ML toolkits.\n\nYou can get started by
          following the guides in our documentation at https://docs.seldon.io/projects/seldon-core/en/latest/workflow/README.html\n"
        displayName: Seldon Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mlops
        - aiops
        - production
        - monitoring
        links:
        - name: Website
          url: https://www.seldon.io/
        - name: Documentation
          url: https://docs.seldon.io/projects/seldon-core/en/latest/
        maintainers:
        - email: hello@seldon.io
          name: Seldon Technologies
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Seldon Technologies
        relatedImages:
        - docker.io/seldonio/seldon-core-operator:1.14.1
        - quay.io/openshift-community-operators/seldon-operator@sha256:864e87ef21e81624010a1cbcee6b17c8c816dcb0a699c66badd32eec3baf39fd
        - ""
        version: 1.14.1
      entries:
      - name: seldon-operator.v1.14.1
        version: 1.14.1
      name: stable
    defaultChannel: stable
    packageName: seldon-operator
    provider:
      name: Seldon Technologies
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Backube
      provider-url: https://github.com/backube
    name: snapscheduler
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: snapscheduler.v3.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "snapscheduler.backube/v1",
                "kind": "SnapshotSchedule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "snapscheduler",
                    "app.kubernetes.io/instance": "daily",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "snapshotschedule",
                    "app.kubernetes.io/part-of": "snapscheduler"
                  },
                  "name": "daily"
                },
                "spec": {
                  "retention": {
                    "maxCount": 7
                  },
                  "schedule": "0 0 * * *"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          certified: "false"
          containerImage: quay.io/backube/snapscheduler:3.5.0
          createdAt: "2025-05-14T14:46:43Z"
          description: The SnapScheduler operator takes snapshots of Kubernetes CSI-based
            persistent volumes according to user-supplied schedules.
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/snapscheduler
          support: https://github.com/backube/snapscheduler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SnapshotSchedule defines a schedule for taking automated
              snapshots of PVC(s)
            displayName: Snapshot Schedule
            kind: SnapshotSchedule
            name: snapshotschedules.snapscheduler.backube
            version: v1
        description: |-
          ## About this operator

          The SnapScheduler operator takes snapshots of CSI-based PersistentVolumes
          according to a configurable
          [Cron-like](https://en.wikipedia.org/wiki/Cron#Overview) schedule. The
          schedules include configurable retention policies for snapshots as well as
          selectors to limit the volumes that are snapshotted. An example schedule
          could be:

          > *Snapshot **all volumes** in a namespace **daily at midnight**, retaining
          > the most recent **7** snapshots for each volume.*

          Multiple schedules can be combined to provide more elaborate protection
          schemes. For example, a given volume (or collection of volumes) could be
          protected with:

          - 6 hourly snapshots
          - 7 daily snapshots
          - 4 weekly snapshots
          - 12 monthly snapshots

          ### How it works

          The operator watches for `SnapshotSchedule` CRs in each namespace. When the
          current time matches the schedule's cronspec, the operator creates a
          `VolumeSnapshot` object for each `PersistentVolumeClaim` in the namespace
          (or subset thereof if a label selector is provided). The `VolumeSnapshot`
          objects are named according to the template:
          `<pvcname>-<schedulename>-<timestamp>`. After creating the new snapshots,
          the oldest snapshots are removed if necessary, according to the retention
          policy of the schedule.

          Please see the [full
          documentation](https://backube.github.io/snapscheduler/) for more
          information.

          ## Requirements

          - OpenShift >= 4.7 (Kubernetes >= 1.20)
          - CSI-based storage driver that supports snapshots (i.e. has the
            `CREATE_DELETE_SNAPSHOT` capability)

          ## Examples

          The schedule for snapshotting is controlled by the
          `snapshotschedules.snapscheduler.backube` Custom Resource. This is a
          namespaced resource that applies only to the PersistentVolumeClaims in its
          namespace.

          Below is a simple example that keeps 7 daily (taken at midnight) snapshots
          of all PVCs in a given namespace:

          ```yaml
          ---
          apiVersion: snapscheduler.backube/v1
          kind: SnapshotSchedule
          metadata:
            name: daily
          spec:
            retention:
              maxCount: 7
            schedule: "0 0 * * *"
          ```

          See the [usage
          documentation](https://backube.github.io/snapscheduler/usage.html) for full
          details, including how to:

          - add label selectors to restrict which PVCs this schedule applies to
          - set the VolumeSnapshotClass used by the schedule
          - apply custom labels to the automatically created VolumeSnapshot objects
        displayName: SnapScheduler
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - snapshot
        - storage
        - scheduler
        links:
        - name: Documentation
          url: https://backube.github.io/snapscheduler/
        - name: Source
          url: https://github.com/backube/snapscheduler
        - name: Blog
          url: https://backube.github.io/
        maintainers:
        - email: jstrunk@redhat.com
          name: John Strunk
        maturity: stable
        minKubeVersion: 1.20.0-0
        provider:
          name: Backube
          url: https://github.com/backube
        relatedImages:
        - quay.io/community-operator-pipeline-prod/snapscheduler@sha256:53902ba6ef33ee750285bdeacc6701027d90dada0184fd162c7a587cfdb57585
        - quay.io/backube/snapscheduler:3.5.0
        - quay.io/brancz/kube-rbac-proxy:v0.19.1
        version: 3.5.0
      entries:
      - name: snapscheduler.v3.5.0
        version: 3.5.0
      - name: snapscheduler.v3.4.0
        version: 3.4.0
      - name: snapscheduler.v3.3.0
        version: 3.3.0
      - name: snapscheduler.v3.2.0
        version: 3.2.0
      - name: snapscheduler.v3.1.0
        version: 3.1.0
      - name: snapscheduler.v3.0.0
        version: 3.0.0
      - name: snapscheduler.v2.1.0
        version: 2.1.0
      - name: snapscheduler.v2.0.0
        version: 2.0.0
      name: candidate
    - currentCSV: snapscheduler.v3.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "snapscheduler.backube/v1",
                "kind": "SnapshotSchedule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "snapscheduler",
                    "app.kubernetes.io/instance": "daily",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "snapshotschedule",
                    "app.kubernetes.io/part-of": "snapscheduler"
                  },
                  "name": "daily"
                },
                "spec": {
                  "retention": {
                    "maxCount": 7
                  },
                  "schedule": "0 0 * * *"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          certified: "false"
          containerImage: quay.io/backube/snapscheduler:3.5.0
          createdAt: "2025-05-14T14:46:43Z"
          description: The SnapScheduler operator takes snapshots of Kubernetes CSI-based
            persistent volumes according to user-supplied schedules.
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/snapscheduler
          support: https://github.com/backube/snapscheduler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SnapshotSchedule defines a schedule for taking automated
              snapshots of PVC(s)
            displayName: Snapshot Schedule
            kind: SnapshotSchedule
            name: snapshotschedules.snapscheduler.backube
            version: v1
        description: |-
          ## About this operator

          The SnapScheduler operator takes snapshots of CSI-based PersistentVolumes
          according to a configurable
          [Cron-like](https://en.wikipedia.org/wiki/Cron#Overview) schedule. The
          schedules include configurable retention policies for snapshots as well as
          selectors to limit the volumes that are snapshotted. An example schedule
          could be:

          > *Snapshot **all volumes** in a namespace **daily at midnight**, retaining
          > the most recent **7** snapshots for each volume.*

          Multiple schedules can be combined to provide more elaborate protection
          schemes. For example, a given volume (or collection of volumes) could be
          protected with:

          - 6 hourly snapshots
          - 7 daily snapshots
          - 4 weekly snapshots
          - 12 monthly snapshots

          ### How it works

          The operator watches for `SnapshotSchedule` CRs in each namespace. When the
          current time matches the schedule's cronspec, the operator creates a
          `VolumeSnapshot` object for each `PersistentVolumeClaim` in the namespace
          (or subset thereof if a label selector is provided). The `VolumeSnapshot`
          objects are named according to the template:
          `<pvcname>-<schedulename>-<timestamp>`. After creating the new snapshots,
          the oldest snapshots are removed if necessary, according to the retention
          policy of the schedule.

          Please see the [full
          documentation](https://backube.github.io/snapscheduler/) for more
          information.

          ## Requirements

          - OpenShift >= 4.7 (Kubernetes >= 1.20)
          - CSI-based storage driver that supports snapshots (i.e. has the
            `CREATE_DELETE_SNAPSHOT` capability)

          ## Examples

          The schedule for snapshotting is controlled by the
          `snapshotschedules.snapscheduler.backube` Custom Resource. This is a
          namespaced resource that applies only to the PersistentVolumeClaims in its
          namespace.

          Below is a simple example that keeps 7 daily (taken at midnight) snapshots
          of all PVCs in a given namespace:

          ```yaml
          ---
          apiVersion: snapscheduler.backube/v1
          kind: SnapshotSchedule
          metadata:
            name: daily
          spec:
            retention:
              maxCount: 7
            schedule: "0 0 * * *"
          ```

          See the [usage
          documentation](https://backube.github.io/snapscheduler/usage.html) for full
          details, including how to:

          - add label selectors to restrict which PVCs this schedule applies to
          - set the VolumeSnapshotClass used by the schedule
          - apply custom labels to the automatically created VolumeSnapshot objects
        displayName: SnapScheduler
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - snapshot
        - storage
        - scheduler
        links:
        - name: Documentation
          url: https://backube.github.io/snapscheduler/
        - name: Source
          url: https://github.com/backube/snapscheduler
        - name: Blog
          url: https://backube.github.io/
        maintainers:
        - email: jstrunk@redhat.com
          name: John Strunk
        maturity: stable
        minKubeVersion: 1.20.0-0
        provider:
          name: Backube
          url: https://github.com/backube
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.19.1
        - quay.io/community-operator-pipeline-prod/snapscheduler@sha256:53902ba6ef33ee750285bdeacc6701027d90dada0184fd162c7a587cfdb57585
        - quay.io/backube/snapscheduler:3.5.0
        version: 3.5.0
      entries:
      - name: snapscheduler.v3.5.0
        version: 3.5.0
      - name: snapscheduler.v3.4.0
        version: 3.4.0
      - name: snapscheduler.v3.3.0
        version: 3.3.0
      - name: snapscheduler.v3.2.0
        version: 3.2.0
      - name: snapscheduler.v3.1.0
        version: 3.1.0
      - name: snapscheduler.v3.0.0
        version: 3.0.0
      - name: snapscheduler.v2.1.0
        version: 2.1.0
      - name: snapscheduler.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: snapscheduler
    provider:
      name: Backube
      url: https://github.com/backube
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/securesign/secure-sign-operator
    name: rhtas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhtas-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": {
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname-intermediate",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname-leaf",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname-root",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname-intermediate",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname-leaf",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname-root",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": {
                  "database": {
                    "create": true
                  },
                  "server": {
                    "replicas": 1
                  },
                  "signer": {
                    "replicas": 1
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
          createdAt: "2025-11-21T12:45:10Z"
          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: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.1-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        version: 1.3.1
      entries:
      - name: rhtas-operator.v1.3.1
        version: 1.3.1
      - name: rhtas-operator.v1.3.0
        version: 1.3.0
      - name: rhtas-operator.v1.2.1
        version: 1.2.1
      - name: rhtas-operator.v1.2.0
        version: 1.2.0
      - deprecation:
          message: rhtas-operator.v1.1.2 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.2
        version: 1.1.2
      - deprecation:
          message: rhtas-operator.v1.1.1 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.1
        version: 1.1.1
      - deprecation:
          message: rhtas-operator.v1.1.0 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.0
        version: 1.1.0
      name: stable
    - currentCSV: rhtas-operator.v1.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": null,
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:e52d07e2cd8cbdc2ccd0336a4fd29cbb2e5b8a1be628350294a54579cc2636ed
          createdAt: "2025-04-08T09:29:59Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:75f1049431f9e92898a4217870309cbbb3b39c8362e929c0bad3b53cad4459db
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:e52d07e2cd8cbdc2ccd0336a4fd29cbb2e5b8a1be628350294a54579cc2636ed
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:329a0dad7842d4ef60430b0e3f188231bea9e579427443ecd42eb62a5c282266
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:7ce611aefdfedd8b2a633def482cf41f390c95b8f8c800b6163a585f117a9e2e
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:09b8259ec9e982a33bde84c7c901ad70c79f3e5f6dd7880b1b1e573dafcbd56c
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:dc994a95be22b0f4bab022fc362c4f44c6a7d1887a2eb0d04870d75654ec013b
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:603a2ffa54df0bd45ff42ac710dd16331560eda2be93442232b045c959773c4d
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:540556453c98db3919e5f305a99c699e767e2891a95fe7527ace578f3c67a308
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:76c24a38ac89ed632d38e44049f37e4997abfa27fa8cadbb8afb42575031296f
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:571c48ecb2658ce70199c06dc483ea48a16e032a764a6830388ad845f508d981
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:5a752cefdaf28bfc53847185cdd5fef1ee47e3dcff8472f8a8bf7bbdc224ef57
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:775b261b8f258b369213246f2da5c91218678acb5e3b8bb4670b143f487767af
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:796860a3e85712c60398c36983e0ff4d45325c7a4de869da2ebf1b6ba4b19825
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:6131053778ea04e437f3005f90d1138aa11ebc58e3a9295e2a8d8ef6713a52be
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:3b8f49c41df15022f8ffdf3a8f8605b14c14f4e10eae754a06a86b6585d158b3
        - registry.redhat.io/ubi9/httpd-24@sha256:366cc5bc3b96069fecaa0abeb9d3510c507e69a20de1d205d881da8ae8561ab4
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1f5a30a285a16635a7234c3c1763dfb385c8bffd605fc862b782bdb5c6c61ea3
        version: 1.1.2
      deprecation:
        message: stable-v1.1 is no longer supported. Please switch to channel 'stable'
          or channel 'stable-v1.2' for continued support.
      entries:
      - deprecation:
          message: rhtas-operator.v1.1.2 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.2
        version: 1.1.2
      - deprecation:
          message: rhtas-operator.v1.1.1 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.1
        version: 1.1.1
      - deprecation:
          message: rhtas-operator.v1.1.0 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: rhtas-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": null,
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:7395b169066adc88a530c421ab9534d61bd2a680c61f86b9afabf9cf8bfd4b7e
          createdAt: "2025-08-17T21:52:06Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:6270ba29adf779de5d3916d5e82f1cd9491ba89d4ae2042347b6ad6d1819dd26
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:02fbd4772c185edf38fcee4e5c5e1c9dad82b77c9da824addaebc445b67d35ac
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:640633823a54c11fe2a8b3d05e571399fda415b6f0b3adf1ba9806882a94bdd4
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:7c4e739622f68cd924afcb41cc788cdadc34c725283a097e564d620f39637bac
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:a93df3206409de75613d398e7dcd8b30ff7cc36eb00349c435784f73f00a2335
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:531603563c69aac6905cd6b8157d30781040527404ac2313acba5a9310e0b713
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:fe31830df2d99359749cb86cd1ac2f32fcc3de07aae427d2f2cd3998d31d2833
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:c22cdb9a17f85e13c00412cba83aa644e90a0faea0236029d0f1c53fe212e227
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:7395b169066adc88a530c421ab9534d61bd2a680c61f86b9afabf9cf8bfd4b7e
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:030986ea26f33db3a192c67a93cd2bde352f23c68a17b062fc062955675c3c51
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:fc018a45b7eb48690c46c83f52cac55fa40089e6b02686bc21265dc7c2205b8f
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:09b4aeeb607c88c72f69e6f87cb840c82ef5752c64a58fa13551db749fac2530
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:eb38e98dbb9828fe033a5388609132f7246fe77d2f4d258d015a94ea30752b24
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:1c2201d50469d70ec6e21546c7c74bd52251d420dc1dcfa5375c1cf61dd3a9fd
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:12b438ea70f83ee6edb12c96b507f92510f4afba824eac34c8f50793c4199db6
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1d782a127d2f8bdab633f287cb2df2e400ae91bf5d4b913473539d8512dfaab6
        - registry.redhat.io/ubi9/httpd-24@sha256:badeee0aa3477e61de64f6a2b93e8a3673edd38fc860125f7536506f3d592132
        version: 1.2.1
      entries:
      - name: rhtas-operator.v1.2.1
        version: 1.2.1
      - name: rhtas-operator.v1.2.0
        version: 1.2.0
      name: stable-v1.2
    - currentCSV: rhtas-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": {
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname-intermediate",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname-leaf",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname-root",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname-intermediate",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname-leaf",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname-root",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": {
                  "database": {
                    "create": true
                  },
                  "server": {
                    "replicas": 1
                  },
                  "signer": {
                    "replicas": 1
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
          createdAt: "2025-11-21T12:45:10Z"
          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: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.1-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        version: 1.3.1
      entries:
      - name: rhtas-operator.v1.3.1
        version: 1.3.1
      - name: rhtas-operator.v1.3.0
        version: 1.3.0
      name: stable-v1.3
    defaultChannel: stable
    packageName: rhtas-operator
    provider:
      name: Red Hat
      url: https://github.com/securesign/secure-sign-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: HashiCorp
      provider-url: https://www.hashicorp.com/
    name: vault-secrets-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vault-secrets-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "secrets.hashicorp.com/v1beta1",
                "kind": "VaultConnection",
                "metadata": {
                  "name": "vaultconnection-sample",
                  "namespace": "tenant-1"
                },
                "spec": {
                  "address": "http://vault.vault.svc.cluster.local:8200"
                }
              },
              {
                "apiVersion": "secrets.hashicorp.com/v1beta1",
                "kind": "VaultAuth",
                "metadata": {
                  "name": "vaultauth-sample",
                  "namespace": "tenant-1"
                },
                "spec": {
                  "vaultConnectionRef": "vaultconnection-sample",
                  "method": "kubernetes",
                  "mount": "kubernetes",
                  "kubernetes": {
                    "role": "sample",
                    "serviceAccount": "default"
                  }
                }
              },
              {
                "apiVersion": "secrets.hashicorp.com/v1beta1",
                "kind": "VaultStaticSecret",
                "metadata": {
                  "name": "vaultstaticsecret-sample",
                  "namespace": "tenant-1"
                },
                "spec": {
                  "vaultAuthRef": "vaultauth-sample",
                  "mount": "kvv2",
                  "type": "kv-v2",
                  "path": "secret",
                  "refreshAfter": "5s",
                  "destination": {
                    "create": true,
                    "name": "secret1"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.connect.redhat.com/hashicorp/vault-secrets-operator@sha256:81f01193c67de89984d51c41d18d807c7e9b44eb949677caa5c191d008cf1562
          createdAt: "2025-12-12T23:37:58Z"
          description: The Vault Secrets Operator (VSO) allows Pods to consume Vault
            secrets natively from Kubernetes Secrets.
          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: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/hashicorp/vault-secrets-operator
          support: HashiCorp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CSISecrets
            name: csisecrets.secrets.hashicorp.com
            version: v1beta1
          - description: HCPAuth is the Schema for the hcpauths API
            displayName: HCPAuth
            kind: HCPAuth
            name: hcpauths.secrets.hashicorp.com
            version: v1beta1
          - description: HCPVaultSecretsApp is the Schema for the hcpvaultsecretsapps
              API
            displayName: HCPVault Secrets App
            kind: HCPVaultSecretsApp
            name: hcpvaultsecretsapps.secrets.hashicorp.com
            version: v1beta1
          - description: SecretTransformation is the Schema for the secrettransformations
              API
            displayName: Secret Transformation
            kind: SecretTransformation
            name: secrettransformations.secrets.hashicorp.com
            version: v1beta1
          - description: VaultAuthGlobal is the Schema for the vaultauthglobals API
            displayName: Vault Auth Global
            kind: VaultAuthGlobal
            name: vaultauthglobals.secrets.hashicorp.com
            version: v1beta1
          - description: VaultAuth is the Schema for the vaultauths API
            displayName: Vault Auth
            kind: VaultAuth
            name: vaultauths.secrets.hashicorp.com
            version: v1beta1
          - description: VaultConnection is the Schema for the vaultconnections API
            displayName: Vault Connection
            kind: VaultConnection
            name: vaultconnections.secrets.hashicorp.com
            version: v1beta1
          - description: VaultDynamicSecret is the Schema for the vaultdynamicsecrets
              API
            displayName: Vault Dynamic Secret
            kind: VaultDynamicSecret
            name: vaultdynamicsecrets.secrets.hashicorp.com
            version: v1beta1
          - description: VaultPKISecret is the Schema for the vaultpkisecrets API
            displayName: Vault PKISecret
            kind: VaultPKISecret
            name: vaultpkisecrets.secrets.hashicorp.com
            version: v1beta1
          - description: VaultStaticSecret is the Schema for the vaultstaticsecrets
              API
            displayName: Vault Static Secret
            kind: VaultStaticSecret
            name: vaultstaticsecrets.secrets.hashicorp.com
            version: v1beta1
        description: |-
          The Vault Secrets Operator (VSO) allows Pods to consume Vault secrets
          natively from Kubernetes Secrets.

          ## Overview

          The Vault Secrets Operator operates by watching for changes to its supported set of Custom Resource Definitions (CRD).
          Each CRD provides the specification required to allow the *Operator* to synchronize a Vault Secrets to a Kubernetes Secret.
          The *Operator* writes the *source* Vault secret data directly to the *destination* Kubernetes Secret, ensuring that any
          changes made to the *source* are replicated to the *destination* over its lifetime. In this way, an application only needs
          to have access to the *destination* secret in order to make use of the secret data contained within.

          See the developer docs for more info [here](https://developer.hashicorp.com/vault/docs/platform/k8s/vso), including
          [examples](https://developer.hashicorp.com/vault/docs/platform/k8s/vso/examples) and a
          [tutorial](https://developer.hashicorp.com/vault/tutorials/kubernetes/vault-secrets-operator)
          for getting started.
        displayName: Vault Secrets Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vault
        - security
        - secrets
        links:
        - name: Vault Secrets Operator
          url: https://github.com/hashicorp/vault-secrets-operator
        - name: Documentation
          url: https://developer.hashicorp.com/vault/docs/platform/k8s/vso
        maintainers:
        - email: support@hashicorp.com
          name: HashiCorp Support
        maturity: stable
        provider:
          name: HashiCorp
          url: https://www.hashicorp.com/
        relatedImages:
        - registry.connect.redhat.com/hashicorp/vault-secrets-operator-bundle@sha256:728c46ce4a9bbf785de180367f43b50ceebdfba815efbe41abe45020361e6ac7
        - registry.connect.redhat.com/hashicorp/vault-secrets-operator@sha256:81f01193c67de89984d51c41d18d807c7e9b44eb949677caa5c191d008cf1562
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:5b333f3daa2eebe3c3a959e30736993d8ebabbe594c6d3f1b7e14296485637d5
        version: 1.1.0
      entries:
      - name: vault-secrets-operator.v1.1.0
        version: 1.1.0
      - name: vault-secrets-operator.v1.0.1
        version: 1.0.1
      - name: vault-secrets-operator.v1.0.0
        version: 1.0.0
      - name: vault-secrets-operator.v0.10.0
        version: 0.10.0
      - name: vault-secrets-operator.v0.9.1
        version: 0.9.1
      - name: vault-secrets-operator.v0.9.0
        version: 0.9.0
      - name: vault-secrets-operator.v0.8.1
        version: 0.8.1
      - name: vault-secrets-operator.v0.8.0
        version: 0.8.0
      - name: vault-secrets-operator.v0.7.0
        version: 0.7.0
      - name: vault-secrets-operator.v0.6.0
        version: 0.6.0
      - name: vault-secrets-operator.v0.5.2
        version: 0.5.2
      - name: vault-secrets-operator.v0.5.1
        version: 0.5.1
      - name: vault-secrets-operator.v0.5.0
        version: 0.5.0
      - name: vault-secrets-operator.v0.4.3
        version: 0.4.3
      name: stable
    defaultChannel: stable
    packageName: vault-secrets-operator
    provider:
      name: HashiCorp
      url: https://www.hashicorp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Strimzi
      provider-url: ""
    name: strimzi-kafka-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: strimzi-cluster-operator.v0.49.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.1.1",
                      "metadataVersion": "4.1-IV1",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.1.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "groupId":"my-connect-group",
                  "configStorageTopic":"my-connect-configs",
                  "statusStorageTopic":"my-connect-status",
                  "offsetStorageTopic":"my-connect-offsets",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.1.1",
                  "replicas": 1,
                  "target": {
                    "alias": "cluster-b",
                    "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                    "groupId":"my-mm2-group",
                    "configStorageTopic":"my-mm2-configs",
                    "statusStorageTopic":"my-mm2-status",
                    "offsetStorageTopic":"my-mm2-offsets",
                    "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                    }
                  },
                  "mirrors": [
                    {
                      "source": {
                        "alias": "cluster-a",
                        "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                      },
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
          createdAt: "2025-11-18 15:11:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * ⚠️ **SECURITY: Strimzi 0.49.1 addresses CVE-2025-66623.**
            **If you use Strimzi 0.47.0 or newer, we recommend upgrading to 0.49.1.**

          * **Strimzi 0.49 introduces new API version `v1` to all Strimzi custom resources.**
            The old API versions (`v1alpha1`, `v1beta1`, and `v1beta2`) will continue to be supported until Strimzi 1.0.0 / 0.52.0.
            For more details about the migration to the v1 API and CRD upgrades, see the [documentation](https://strimzi.io/docs/operators/in-development/deploying.html#assembly-api-conversion-str).

          * **Before upgrading to Strimzi 0.49 or newer**, make sure that you update your KafkaUser resources to [use the `.spec.authorization.acls[].operations` field instead of the deprecated `.spec.authorization.acls[].operation`](https://strimzi.io/docs/operators/in-development/deploying.html#con-api-conversion-v1-str).
          * **When rack-awareness is enabled in the `Kafka` custom resource (`.spec.kafka.rack`), Strimzi will not automatically add the best-effort-affinity rules for spreading the Kafka Pods between the zones.**
            Please make sure to set your own `topologySpreadConstraint` or `affinity` rules instead.

          * **From Strimzi 0.48.0, we support only Kubernetes 1.27 and newer.**
            Kubernetes 1.25 and 1.26 are not supported anymore

          ### New in 0.49
          * Support for Kafka 4.0.1 and 4.1.1
          * New v1 API for Strimzi CRDs
          * Refactoring of the KafkaConnect and KafkaMirrorMaker2 custom resources and their structure
          * Changes to how the template fields in Kafka and KafkaNodePool custom resources are handled
          * Removed automatic best-effort affinity rules when rack-awareness is enabled
          * BlockOwnerDeletion is set to true in owner references
          * Support of Buildah for building custom Kafka Connect container images
          * And many more ...
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:d495d3b6c98d1ea22ed3bdf0d6d06d6cda1c5b35087c817e8cf807892b178520
        - quay.io/strimzi/kaniko-executor@sha256:ba89470b45a49e5e09aaab91a5c3c03ecb14f9013d598bc14b3d756eb9a145b4
        - quay.io/strimzi/maven-builder@sha256:b8831c2aad621b80dce38484fae353cc5226bfc4dffb0f4c9d8b8d86e0fb3933
        - quay.io/strimzi/kafka@sha256:8f775ee53622bf68b791c405e40299baa3d845b98e282d1a9269f9466018e990
        - quay.io/strimzi/kafka@sha256:bfbee54f85beb3731cf41483befa39d8c5ebe5db002df6265c6ea95b6a156749
        - quay.io/strimzi/buildah@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/kafka-bridge@sha256:53034f64f0b672f10b5bacea1c7a25132f118df7fd5c9032c4dbf702ed93796a
        - quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:928c76a840e7de6f1d9350988238bec7035ed981118e64cfedde4e32d5cb5baf
        - quay.io/strimzi/kafka@sha256:73799dcf5bc7d1bb19f500f345d8892a1f91cf0213e01d9b59d3a1a53cc80aca
        version: 0.49.1
      entries:
      - name: strimzi-cluster-operator.v0.49.1
        version: 0.49.1
      - name: strimzi-cluster-operator.v0.49.0
        version: 0.49.0
      - name: strimzi-cluster-operator.v0.48.0
        version: 0.48.0
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: stable
    - currentCSV: strimzi-cluster-operator.v0.23.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"2.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"2.8",
                        "inter.broker.protocol.version":"2.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnectS2I",
                "metadata":{
                  "name":"my-connect-s2i-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "whitelist":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 2,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"2.8.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": 1,
                        "offset.storage.replication.factor": 1,
                        "status.storage.replication.factor": 1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "NetworkOutboundCapacityGoal",
                    "CpuCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster with S2I support"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:59d939f342f96d0e8a54c96fd187832c4b19cd4137bf55ace53d486728ae6c5f
          createdAt: "2021-05-14 11:37:13"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster with Source 2 Image support
            displayName: Kafka Connect Source to Image
            kind: KafkaConnectS2I
            name: kafkaconnects2is.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  Starting with Strimzi 0.23, we support only the `v1beta2` API version of all Strimzi custom resources.  This is a required for migration to `apiextensions/v1` which is needed because Kubernetes 1.22 will remove support for `apiextensions/v1beta1`.  Migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs **before upgrading to Strimzi 0.23**. For more details about the CRD upgrades, see the [documentation](https://strimzi.io/docs/operators/0.23.0/deploying.html#assembly-upgrade-resources-str).
          ### New in 0.23
          * Migrate to CRD v1 (required by Kubernetes 1.22+)
          * Strimzi API versions `v1alpha1` and `v1beta1` were removed from all Strimzi custom resources apart from `KafkaTopic` and `KafkaUser` (use `v1beta2` versions instead)
          * Add support for Kafka 2.8.0 and 2.6.2, remove support for Kafka 2.5.x
          * Make it possible to configure maximum number of connections and maximum connection creation rate in listener configuration
          * Add support for configuring finalizers for `loadbalancer` type listeners
          * Use dedicated Service Account for Kafka Connect Build on Kubernetes
          * Remove direct ZooKeeper access for handling user quotas in the User Operator. Add usage of Admin Client API instead.
          * Support for configuring custom Authorizer implementation
          * Changed Reconciliation interval for Topic Operator from 90 to 120 seconds (to keep it the same as for other operators)
          * Changed Zookeeper session timeout default value to 18 seconds for Topic and User Operators (for improved resiliency)
          * Removed requirement for replicas and partitions KafkaTopic spec making these parameters optional
          * Support to configure a custom filter for parent CR's labels propagation into subresources
          * Allow disabling service links (environment variables describing Kubernetes services) in Pod template
          * Add support for separate control plane listener (disabled by default, available via the `ControlPlaneListener` feature gate)
          * Support for Dual Stack networking
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _master_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/master/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/master/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:e90695b35d6dd5db20c9900dd0dab95d1ef908f3145b4f9f436b903303c88549
        - quay.io/strimzi/operator@sha256:59d939f342f96d0e8a54c96fd187832c4b19cd4137bf55ace53d486728ae6c5f
        - quay.io/strimzi/kafka@sha256:641f46114c59d61577bcb3f4ef5af16aea3ed42c2a575f8d3641c82848df85e8
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:68cdc37990bc7da8a6bbe3a4908378c8026e5ff980bf8c44c0277f689006fc51
        - quay.io/strimzi/jmxtrans@sha256:b4ec1844f4cc5eb74cd0aac83d74b81b977e178bf670d1136d1af0b68663d0a3
        - quay.io/strimzi/kafka@sha256:699bff48ee445d8ba381a791cd0340015e3ecede8d169f41bc151095ab7fb5cc
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        - quay.io/strimzi/kafka-bridge@sha256:bed07186355a4c04ee50e90048e3bd3a023264093a9ef28f0278cce44640e93f
        - quay.io/strimzi/kafka@sha256:d2745f48ed262290ce66c3362ffb9b9a8cfeb9c76beac40c995f72f3f06ad10e
        - quay.io/strimzi/kafka@sha256:dbc53bb374d2cb9513a5bb8f80fea751c91b249cabd36d8b3c04af5e5c961738
        version: 0.23.0
      entries:
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.23.x
    - currentCSV: strimzi-cluster-operator.v0.24.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"2.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"2.8",
                        "inter.broker.protocol.version":"2.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnectS2I",
                "metadata":{
                  "name":"my-connect-s2i-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 2,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"2.8.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster with S2I support"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:786ea69c77e0651f009a73a8b3ce0b3d41b3cd71b917dc0d9bdc61c725f494a6
          createdAt: "2021-06-24 13:13:13"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster with Source 2 Image support
            displayName: Kafka Connect Source to Image
            kind: KafkaConnectS2I
            name: kafkaconnects2is.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: "Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org)
          cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/)
          in various deployment configurations. See our [website](https://strimzi.io)
          for more details about the project.\n### CRD Upgrades\n**!!! IMPORTANT !!!**
          \ This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.
          \ If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed
          for all Strimzi CRDs and CRs before the upgrade to 0.24 is done!  If upgrading
          from Strimzi version earlier than 0.22, you need to first install the CRDs
          from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi
          CRDs and CRs before the upgrade to 0.24 is done!  For more details about
          the CRD upgrades, see the documentation.\n### New in 0.24\n* Add support
          for Kafka 2.7.1 and remove support for 2.6.0, 2.6.1, and 2.6.2\n* Add support
          for [Kubernetes Configuration Provider for Apache Kafka](https://github.com/strimzi/kafka-kubernetes-config-provider)\n*
          Use Red Hat UBI8 base image\n* Support for patching of service accounts
          and configuring their labels and annotations. The feature is disabled by
          default and enabled using the new `ServiceAccountPatching` feature gate.\n*
          Added support for configuring cluster-operator's worker thread pool size
          that is used for various sync and async tasks\n* Add Kafka Quotas plugin
          with produce, consume, and storage quotas\n* Support pausing reconciliation
          of KafkaTopic CR with annotation `strimzi.io/pause-reconciliation`\n* Update
          cruise control to 2.5.57\n* Update to Strimzi Kafka Bridge to 0.20.1\n*
          Support for broker load information added to the rebalance optimization
          proposal. Information on the load difference, before and after a rebalance
          is stored in a ConfigMap\n* Add support for selectively changing the verbosity
          of logging for individual CRs, using markers.\n* Added support for `controller_mutation_rate'
          quota. Creation/Deletion of topics and creation of partitions can be configured
          through this.\n* Use newer version of Kafka Exporter with different bugfixes
          \n### Supported Features\n* **Manages the Kafka Cluster** - Deploys and
          manages all of the components of this complex application, including dependencies
          like Apache ZooKeeper® that are traditionally hard to administer.\n* **Includes
          Kafka Connect** - Allows for configuration of common data sources and sinks
          to move data into and out of the Kafka cluster.\n* **Topic Management**
          - Creates and manages Kafka Topics within the cluster.\n* **User Management**
          - Creates and manages Kafka Users within the cluster.\n* **Connector Management**
          - Creates and manages Kafka Connect connectors.\n* **Includes Kafka Mirror
          Maker 1 and 2** - Allows for morroring data between different Apache Kafka®
          clusters.\n* **Includes HTTP Kafka Bridge** - Allows clients to send and
          receive messages through an Apache Kafka® cluster via HTTP protocol.\n*
          **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes
          partition replicas according to specified goals in order to achieve the
          best cluster performance.\n* **Monitoring** - Built-in support for monitoring
          using Prometheus and provided Grafana dashabords\n### Upgrading your Clusters\nThe
          Strimzi Operator understands how to run and upgrade between a set of Kafka
          versions. When specifying a new version in your config, check to make sure
          you aren't using any features that may have been removed. See [the upgrade
          guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str)
          for more information.\n### Storage\nAn efficient data storage infrastructure
          is essential to the optimal performance of Apache Kafka®. Apache Kafka®
          deployed via Strimzi requires block storage. The use of file storage (for
          example, NFS) is not recommended.\nThe Strimzi Operator supports three types
          of data storage:\n* Ephemeral (Recommended for development only!)\n* Persistent\n*
          JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)\nStrimzi
          also supports advanced operations such as adding or removing disks in Apache
          Kafka® brokers or resizing the persistent volumes (where supported by the
          infrastructure).\n### Documentation\nDocumentation to the current _main_
          branch as well as all releases can be found on our [website](https://strimzi.io/documentation).\n###
          Getting help\nIf you encounter any issues while using Strimzi, you can get
          help using:\n* [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n*
          [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          Contributing\nYou can contribute by:\n* Raising any issues you find using
          Strimzi\n* Fixing issues by opening Pull Requests\n* Improving documentation\n*
          Talking about Strimzi\n\nAll bugs, tasks or enhancements are tracked as
          [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues).
          Issues which  might be a good start for new contributors are marked with
          [\"good-start\"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start)
          label.\n\nThe [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md)
          describes how to build Strimzi and how to  test your changes before submitting
          a patch or opening a PR.\n\nThe [Documentation Contributor Guide](https://strimzi.io/contributing/guide/)
          describes how to contribute to Strimzi documentation.\n\nIf you want to
          get in touch with us first before contributing, you can use:\n* [Strimzi
          mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n*
          [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          License\nStrimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).\n"
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:fbb08410d9595029bc4a02ed859971264e6ce2dc85dd6a9855eaa7bb58b52a25
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        - quay.io/strimzi/operator@sha256:786ea69c77e0651f009a73a8b3ce0b3d41b3cd71b917dc0d9bdc61c725f494a6
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:97762fcd8bfeec64fe4d3d43a6e60bc705ff2c8773354357e545adf31c8f85c5
        - quay.io/strimzi/jmxtrans@sha256:2c54adabf6f31c087dbb898057f9c5e200aaf4c5b39fb3a47bbaf7f6587df72d
        - quay.io/strimzi/kafka-bridge@sha256:537ea10e87619251204747ebc1005c632a6c6ed270f5ef06f86c0c3ae4a7553b
        - quay.io/strimzi/kafka@sha256:8959b7968ab8b3306906cdbff2ebb8d63329af37e58124a601843795c4ef5bd6
        - quay.io/strimzi/kafka@sha256:95cfe9000afda2f7def269ca46472d3803ee85146c521884884d8505a7187daf
        version: 0.24.0
      entries:
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.24.x
    - currentCSV: strimzi-cluster-operator.v0.25.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"2.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"2.8",
                        "inter.broker.protocol.version":"2.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"2.8.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster with S2I support"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:afaf1dd1f2f696ae80674d74159661ea239ae609f78a73a1423c7a17a39e5044
          createdAt: "2021-06-24 13:13:13"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.25 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.25 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.25
          * Move from Scala 2.12 to Scala 2.13
          * Open Policy Agent authorizer updated to a new version supporting Scala 2.13.
            The new version of the authroizer uses different format of the input data sent to the OPA server and might require you to update your policies.
            See [release notes](https://github.com/strimzi/strimzi-kafka-operator/releases/tag/0.25.0) for more details.

          * Allow a custom password to be set for SCRAM-SHA-512 users by referencing a secret in the `KafkaUser` resource
          * Add support for [EnvVar Configuration Provider for Apache Kafka](https://github.com/strimzi/kafka-env-var-config-provider)
          * Add support for `tls-external` authentication to User Operator to allow management of ACLs and Quotas for TLS users with user certificates generated externally
          * Support for disabling the automatic generation of network policies by the Cluster Operator
          * Configure fixed size limit for `emptyDir` volumes used for temporary files
          * Update Strimzi Kafka Bridge to 0.20.2
          * The `KafkaConnectS2I` resource has been removed and is no longer supported by the operator.
            Please use the [migration guide](https://strimzi.io/docs/operators/0.24.0/full/using.html#proc-migrating-kafka-connect-s2i-str) to migrate your `KafkaConnectS2I` deployments to [`KafkaConnect` Build](https://strimzi.io/docs/operators/latest/full/deploying.html#creating-new-image-using-kafka-connect-build-str) instead.

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/jmxtrans@sha256:af5eb8459ac9a0acbca51e67c6e0217f62ba404cba9f2251968c927dcef75252
        - quay.io/strimzi/kafka-bridge@sha256:a005e20d7fbe04d6f587f2093e21a00556ec62b850df757b9f7d9d57e3141c40
        - quay.io/strimzi/kafka@sha256:56a33815f7d50a97ea9bb4cce1e3a6d04d918b841b5aa285f16b792d8930059e
        - quay.io/strimzi/kafka@sha256:d8991608ec71f17e850c33714ee02ca87ba94bc0f077be62ad1ed127ca244823
        - quay.io/strimzi/kafka@sha256:ee17eb3611019b0cfa5e9e196610edc1dbd7084471fb20990f055c89da8eef45
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        - quay.io/strimzi/operator@sha256:afaf1dd1f2f696ae80674d74159661ea239ae609f78a73a1423c7a17a39e5044
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:4fa7a30eb3f679a495aeb96794056ffd003237686b2b60e693c8cabf6bc15bae
        version: 0.25.0
      entries:
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.25.x
    - currentCSV: strimzi-cluster-operator.v0.26.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.0.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"3.0",
                        "inter.broker.protocol.version":"3.0"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.0.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:5d90caa66f57939ba62a9a50efa00fce319ba596e719a3f8a42170d7635ee3f4
          createdAt: "2021-12-14 00:16:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.26 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.26 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.26.1
          * **Updated Log4j2 to fix CVE-2021-44228**
          ### New in 0.26.0
          * Add support for Kafka 2.8.1 and 3.0.0; remove Kafka 2.7.0 and 2.7.1
          * Add support for exposing JMX in Zookeeper
          * Allow configuring labels and annotations for JMX authentication secrets
          * Enable Cruise Control anomaly.detection configurations
          * Add support for building connector images from the Maven coordinates
          * Allow Kafka Connect Build artifacts to be downloaded from insecure servers
          * Add option to specify pull secret in Kafka Connect Build on OpenShift
          * Configurable authentication, authorization, and SSL for Cruise Control API
          * Allow to configure `/tmp` volume size via Pod template. By default `1Mi` is used.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/jmxtrans@sha256:bff5d3bab575d0b9ed95dd79d2d22518cc00c4d1c9dbb5614ed16149d4920a1b
        - quay.io/strimzi/kafka-bridge@sha256:d3899c79747e4cb3a6df5a9fcd80b81f038ca0634a97329c1d160499469876dd
        - quay.io/strimzi/kafka@sha256:bd22a134b0c351ddfc78a3263850c2f16733c52f57ac92984cbe0ffff477c724
        - quay.io/strimzi/operator@sha256:5d90caa66f57939ba62a9a50efa00fce319ba596e719a3f8a42170d7635ee3f4
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:6dce519730a6eb73bc18bef8372cdde65c29af3cb52eb78afc808d8582526fd3
        - quay.io/strimzi/kafka@sha256:6367b0fbba9593e3ac736040ea2d7ef71296b1ec144d3b54d9370352141b90e4
        - quay.io/strimzi/maven-builder@sha256:663eb81388ae8f824e7920c272f6d2e2274cf6c140d61416607261cdce9d50e2
        - quay.io/strimzi/kafka@sha256:8c022a8535742b2eea691737f863af5ddef1e8df08b415b8139ecd02a79052a5
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        version: 0.26.1
      entries:
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.26.x
    - currentCSV: strimzi-cluster-operator.v0.27.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.0.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"3.0",
                        "inter.broker.protocol.version":"3.0"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.0.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:9ea49407a04006d0bddfaaee822adfb95f5857af32ffcee81ba60ce891b07ba8
          createdAt: "2022-01-14 20:00:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.27 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.27 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.27.1
          * Updated Log4j2 to version 2.17.1 and Fabric8 Kubernetes Client to 5.10.2
          ### New in 0.27.0
          * Updated Log4j2 to version 2.17.0 (adresses CVE-2021-44228, CVE-2021-45046, CVE-2021-45105)
          * (Experimental) support for AArch64 / ARM64 architecture
          * `ControlPlaneListener` and `ServiceAccountPatching` feature gates are now in the beta phase and are enabled by default
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:a3ec567ca529df2fa41f8986d21e86dde66be94aa4baa56faa66db4dcb3b258e
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:9f2c01e88b29154ba7a0f70a1c69a49c86a567808cf057cb5d115159278cf2cf
        - quay.io/strimzi/jmxtrans@sha256:d2d2477517eb1ac98b51ad6d64d8c1c578141637afa8d46037076f0013183c0b
        - quay.io/strimzi/kaniko-executor@sha256:a07ebe6600d6baba09980abdde2931b3b6abd2f75aeb2cac5c6a2d22a37aa807
        - quay.io/strimzi/maven-builder@sha256:9acd178cc504be8acaa70a39f3c17830aae1f0e93a656110790f9476b09260d5
        - quay.io/strimzi/operator@sha256:9ea49407a04006d0bddfaaee822adfb95f5857af32ffcee81ba60ce891b07ba8
        - quay.io/strimzi/kafka-bridge@sha256:55a52316aead02efa2004174e11ad4728bb8b6f1c1415f725f597f1d2f2da188
        - quay.io/strimzi/kafka@sha256:f4d68bb94447c6612f70de7f6587e9e7ef712c83769ea1f11a8dbda0d241a059
        - quay.io/strimzi/kafka@sha256:5682a6bfcc4ee13d53a30d587c8f96bc40abe3618880989336c5af274ea3cefa
        version: 0.27.1
      entries:
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.27.x
    - currentCSV: strimzi-cluster-operator.v0.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.1.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.1"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.1.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.1.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.1.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:8b010c5fb8244b742a37f264feefc116d75bb2abd2d6895375cbeea250727b39
          createdAt: "2022-02-12 23:02:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.28 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.28 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.28.0
          * Support for Kafka 3.1.0
          * Support for `StrimziPodSet` resources (disabled by default through the `UseStrimziPodSets` feature gate)
          * Support custom authentication mechanisms in Kafka listeners
          * Intra-broker disk balancing using Cruise Control
          * Add support for disabling the FIPS mode in OpenJDK
          * Fix renewing your own CA certificates
          * Added the option `createBootstrapService` to disable the creation of the bootstrap service for the Load Balancer Type Listener
          * Dependency updates (Strimzi Kafka Bridge, Strimzi OAuth, Open Policy Agent Authroizer plugin and others)
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:c345c783d8fbbee4edeca2ebc47e7c454fcc2e26686820b8037de97369280ba0
        - quay.io/strimzi/kafka@sha256:06e9bda15495feb2b92d9950e834cdeed6ef20064f021a879610f1b59dd46950
        - quay.io/strimzi/kafka@sha256:7c04f65e216bb941458aeadffb85e9eeee43d5ca67da566017c2c93a0664c98e
        - quay.io/strimzi/kaniko-executor@sha256:a07ebe6600d6baba09980abdde2931b3b6abd2f75aeb2cac5c6a2d22a37aa807
        - quay.io/strimzi/maven-builder@sha256:3d5d664e089651944712361a6d8ba42b578dbd9bb3dfd9972f614520c9cfab75
        - quay.io/strimzi/operator@sha256:8b010c5fb8244b742a37f264feefc116d75bb2abd2d6895375cbeea250727b39
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:edec37e045212f74d160724ffc7b2c8ccf4e60eb95629aae80360494d78d5433
        - quay.io/strimzi/jmxtrans@sha256:3a55a81790dc88b90d1bf858e2cfd7e591ad0e79f763c6d1667b2d3eb0d0c79d
        version: 0.28.0
      entries:
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.28.x
    - currentCSV: strimzi-cluster-operator.v0.29.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:afde94c6d2544207cb7f3c94b54455643558a9d5daaa13b9f736cc8da20e319c
          createdAt: "2022-05-15 00:01:07"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.29 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.29 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.29.0
          * Add support for Apache Kafka 3.0.1, 3.1.1 and 3.2.0
          * Renew user certificates in User Operator only during maintenance windows
          * Remove TLS sidecar from Cruise Control pod. Cruise Control is now configured to not using ZooKeeper, so the TLS sidecar is not needed anymore.
          * Allow Cruise Control topic names to be configured
          * Add support for `spec.rack.topologyKey` property in Mirror Maker 2 to enable "fetch from the closest replica" feature.
          * Experiemntal support for the s390x platform
          * Added new rebalancing modes on the `KafkaRebalance` custom resource to add or remove brokers
          * Experimental KRaft mode (ZooKeeper-less Kafka). Use it for development and testing only!
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:935caab03f1d0365b47ddefec0c1d8fa449fc3de715ccdd298aedef5ce968c73
        - quay.io/strimzi/kafka@sha256:95678e843bc87cbe571f3f299045dd075725816b59e1b87821cd6025876ec559
        - quay.io/strimzi/kafka@sha256:9dfc09273ad8fc4bdc75cbe93b4a061a05a5defb5884a221ae1e178ba602787f
        - quay.io/strimzi/kafka@sha256:284cde40784b6ff7bfb81b6dd28928e1e8c598fe6a72504f025592e5b43fa94c
        - quay.io/strimzi/kafka@sha256:ac190141120c1800cc7131d3a1f701e64efdcd4a5d87f0b2e0e2cadfdef8b438
        - quay.io/strimzi/kaniko-executor@sha256:544c4987f7f3ca558b04e9ef4357be204f088212b7b5b9ed0f909401a8bc5238
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:465f0bef1f167b1d16ba9ae5f2d9a1133d11786b6809698a84c5c962387dbf6f
        - quay.io/strimzi/jmxtrans@sha256:f89e3c9618430908a8b390f2490f5aa43687b12889b434472a962ce0170c6463
        - quay.io/strimzi/operator@sha256:afde94c6d2544207cb7f3c94b54455643558a9d5daaa13b9f736cc8da20e319c
        - quay.io/strimzi/maven-builder@sha256:0c096a59faf8fd224298c01415a895043db4647534c060cb7e53207e9448bf65
        - quay.io/strimzi/kafka-bridge@sha256:b7bc3dd90e87223766f608a0087b521f0bba79d1c21eaa833bc2708c71148b7f
        version: 0.29.0
      entries:
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.29.x
    - currentCSV: strimzi-cluster-operator.v0.30.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:587db6f4389f56209f48853beedbfe249f6d590a4cb0000be2c42b57e43c2adb
          createdAt: "2022-07-16 00:00:10"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: "Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org)
          cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/)
          in various deployment configurations. See our [website](https://strimzi.io)
          for more details about the project.\n### CRD Upgrades\n**!!! IMPORTANT !!!**
          \ This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.
          \ If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed
          for all Strimzi CRDs and CRs before the upgrade to 0.30 is done!  If upgrading
          from Strimzi version earlier than 0.22, you need to first install the CRDs
          from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi
          CRDs and CRs before the upgrade to 0.30 is done!  For more details about
          the CRD upgrades, see the documentation.\n### New in 0.30.0\n* The `UseStrimziPodSets`
          feature gate moves to beta stage. By default, StrimziPodSets are used instead
          of StatefulSets. If needed, `UseStrimziPodSets` can be disabled in the feature
          gates configuration in the Cluster Operator.\n* The `ServiceAccountPatching`
          feature gate moves to GA. It cannot be disabled anymore and will be permanently
          enabled.\n* Remove support for Kafka 3.0.0 and 3.0.1\n* Add support for
          `simple` authorization and for the User Operator to the experimental `UseKRaft`
          feature gate. _(Note: Due to [KAFKA-13909](https://issues.apache.org/jira/browse/KAFKA-13909),
          broker restarts currently don't work when authorization is enabled.)_\n*
          Add CPU and network capacity overrides for Cruise Control capacity config\n*
          Use better encryption and digest algorithms when creating the PKCS12 stores.
          For existing clusters, the certificates will not be updated during upgrade
          but only next time the PKCS12 store is created. \n* Operator emits Kafka
          events to explain why it restarted a Kafka broker\n* Better configurability
          of the Kafka Admin client in the User Operator\n* Update Strimzi Kafka Bridge
          to 0.21.6\n### Supported Features\n* **Manages the Kafka Cluster** - Deploys
          and manages all of the components of this complex application, including
          dependencies like Apache ZooKeeper® that are traditionally hard to administer.\n*
          **Includes Kafka Connect** - Allows for configuration of common data sources
          and sinks to move data into and out of the Kafka cluster.\n* **Topic Management**
          - Creates and manages Kafka Topics within the cluster.\n* **User Management**
          - Creates and manages Kafka Users within the cluster.\n* **Connector Management**
          - Creates and manages Kafka Connect connectors.\n* **Includes Kafka Mirror
          Maker 1 and 2** - Allows for mirroring data between different Apache Kafka®
          clusters.\n* **Includes HTTP Kafka Bridge** - Allows clients to send and
          receive messages through an Apache Kafka® cluster via HTTP protocol.\n*
          **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing
          partition replicas according to specified goals in order to achieve the
          best cluster performance.\n* **Monitoring** - Built-in support for monitoring
          using Prometheus and provided Grafana dashboards\n### Upgrading your Clusters\nThe
          Strimzi Operator understands how to run and upgrade between a set of Kafka
          versions. When specifying a new version in your config, check to make sure
          you aren't using any features that may have been removed. See [the upgrade
          guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str)
          for more information.\n### Storage\nAn efficient data storage infrastructure
          is essential to the optimal performance of Apache Kafka®. Apache Kafka®
          deployed via Strimzi requires block storage. The use of file storage (for
          example, NFS) is not recommended.\nThe Strimzi Operator supports three types
          of data storage:\n* Ephemeral (Recommended for development only!)\n* Persistent\n*
          JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)\nStrimzi
          also supports advanced operations such as adding or removing disks in Apache
          Kafka® brokers or resizing the persistent volumes (where supported by the
          infrastructure).\n### Documentation\nDocumentation to the current _main_
          branch as well as all releases can be found on our [website](https://strimzi.io/documentation).\n###
          Getting help\nIf you encounter any issues while using Strimzi, you can get
          help using:\n* [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n*
          [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          Contributing\nYou can contribute by:\n* Raising any issues you find using
          Strimzi\n* Fixing issues by opening Pull Requests\n* Improving documentation\n*
          Talking about Strimzi\nAll bugs, tasks or enhancements are tracked as [GitHub
          issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues
          which  might be a good start for new contributors are marked with [\"good-start\"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start)
          label.\nThe [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md)
          describes how to build Strimzi and how to  test your changes before submitting
          a patch or opening a PR.\nThe [Documentation Contributor Guide](https://strimzi.io/contributing/guide/)
          describes how to contribute to Strimzi documentation.\nIf you want to get
          in touch with us first before contributing, you can use:\n* [Strimzi mailing
          list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n* [Strimzi
          Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          License\nStrimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).\n"
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/jmxtrans@sha256:de1ca88b713b926b72df535aca2cfad24fb1b2bf40481065d6fa0c421b872320
        - quay.io/strimzi/kaniko-executor@sha256:544c4987f7f3ca558b04e9ef4357be204f088212b7b5b9ed0f909401a8bc5238
        - quay.io/strimzi/maven-builder@sha256:f2cb45234f3a7a010824a370d03032b706271cd0d1d260da929f046f9259d7e0
        - quay.io/strimzi/kafka-bridge@sha256:77fc68da171c74d3a4b75b1030eaaa5eae12e200002f7aa2ee1969385eba1d66
        - quay.io/strimzi/kafka@sha256:5d881605425ab0b37d0b9cac6957d00ba904df0db185ca6181c810151bdab8e7
        - quay.io/strimzi/kafka@sha256:68d6f4cb5cc5ccad44de799bd9cf417c469a09e1024dbe42298942f25a09e004
        - quay.io/strimzi/kafka@sha256:d9258ddd453c3a53ca8e737b989d27725818da95f7a4fc879c9f07fe743c0cef
        - quay.io/strimzi/operator@sha256:587db6f4389f56209f48853beedbfe249f6d590a4cb0000be2c42b57e43c2adb
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:8be098242f971aefa61a4a24d2c6630ecaa7856ece842166c38887a66bce1bda
        version: 0.30.0
      entries:
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.30.x
    - currentCSV: strimzi-cluster-operator.v0.31.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.3",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.3",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:6e5e207c70c25c595d3ce60268c0214c7518e95836c9b1212ef1eb2f008c7a76
          createdAt: "2022-09-20 21:07:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          **This is the last version of Strimzi with support for Kubernetes 1.16, 1.17 and 1.18!**
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.31 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.31 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.31.1
          * Kafka 3.1.2 and 3.2.3 (fixes CVE-2022-34917)
          * Make `sasl.server.max.receive.size` broker option user configurable
          * Update Strimzi Kafka Bridge to 0.22.1
          ### New in 0.31.0
          * Support for Apache Kafka 3.2.1
          * Pluggable Pod Security Profiles with built-in support for _restricted_ Kubernetes Security Profile
          * Support for leader election and running multiple operator replicas (1 active leader replicas and one or more stand-by replicas)
          * Support for IPv6 addresses being used in Strimzi issued certificates
          * `StrimziPodSet` reconciliation metrics
          * Updated Strimzi Kafka Bridge to 0.22.0 and Kafka Exporter to 1.6.0
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:03cc48bc5cf367f898338665b253855bed7d6096fe577adfe344da2f2cddcfe4
        - quay.io/strimzi/kafka@sha256:430b3eb70e47a91d7b5b6f230d5be024c2de853099cc0437e219b443e0ead9f5
        - quay.io/strimzi/kafka@sha256:652924a1dba46aa716caba8381f1e791c09035e31ce62fdcc81f9b69af36cd02
        - quay.io/strimzi/kafka@sha256:9553aae22d35448681cbbf7a831a28149fb159f3df58ccf8c8ec4ca7eb9c1fdf
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:6afbc7ffc98918e3a557b0b3d9b2c3aa80caa47b9a73205fac9e6572c66f4df7
        - quay.io/strimzi/kaniko-executor@sha256:06581fb615f0b13ddfe27fae26ba5836b12c6e28afd55a81cba7685c9ca4bf79
        - quay.io/strimzi/maven-builder@sha256:670ca70900f2229ef140a592b77f2107934601f8b050b79250eab17ff62099b6
        - quay.io/strimzi/kafka@sha256:83acc1e2cc1e64a88bdbb54b9818a6ad3658c3da60e72c4be365f824c5fcf57c
        - quay.io/strimzi/kafka@sha256:b7c059bd72d8b063a96dde788d91d1ad87498bad3e73acba600929d595aeb7d6
        - quay.io/strimzi/operator@sha256:6e5e207c70c25c595d3ce60268c0214c7518e95836c9b1212ef1eb2f008c7a76
        - quay.io/strimzi/jmxtrans@sha256:52dd107062d78c29bb58c905ac654c39df72bbe3c25613023aa33e834930606d
        - quay.io/strimzi/kafka-bridge@sha256:3ddac62a4f8c8a3ebb72d5841d3826f7fd3fbb0e00eb75fb40bced0a576b86a9
        version: 0.31.1
      entries:
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.31.x
    - currentCSV: strimzi-cluster-operator.v0.32.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.3.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.3"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.3.1",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:c5e0e5dca7503a8371b8d366db0f49e3fc68f62ea480262e39b6cc277991c97c
          createdAt: "2022-10-31 17:05:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **From the 0.32.0 release, Strimzi supports only Kubernetes 1.19 and newer! Kubernetes 1.16, 1.17 and 1.18 are not supported anymore.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.32.0/deploying.html#assembly-upgrade-str).
          ### New in 0.32.0
          * Add support for Kafka 3.3.1 and remove support for Kafka 3.1.0, 3.1.1, and 3.1.2
          * Update KafkaConnector CR status so the 'NotReady' condition is added if the connector or any tasks are reporting a 'FAILED' state.
          * Add auto-approval mechanism on KafkaRebalance resource when an optimization proposal is ready
          * The ControlPlaneListener feature gate moves to GA
          * Add client rack-awareness support to Strimzi Bridge pods
          * Add support for OpenTelemetry for distributed tracing
          * ZookeeperRoller considers unready pods
          * Support multiple operations per ACLRule
          * Add new listener type "cluster-ip" which is using per-broker services instead of the pod DNS names
          * Update Strimzi OAuth library to 0.11.0
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:bb97008b7f928ed98939b2008a7baf8909c88e726a59aaf607f2eeba55375cc0
        - quay.io/strimzi/kafka@sha256:4bacf5b54041bd0ab9199c8c5d51e8058758139db4b7abc380cf0400737716ef
        - quay.io/strimzi/kaniko-executor@sha256:dc27d8aeb851245c79fb7276febe98769cc098d678bea096b338caaaf111dd27
        - quay.io/strimzi/operator@sha256:c5e0e5dca7503a8371b8d366db0f49e3fc68f62ea480262e39b6cc277991c97c
        - quay.io/strimzi/jmxtrans@sha256:208928133b2854f60bb34912e07561a3511de895b815960e73d565be2d553918
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:eefdd05485167d490f0011d9e5d2bb6112db1daea25940c79e1f55b3af254548
        - quay.io/strimzi/kafka-bridge@sha256:aad0cee4381cc1c8c6638ab5732b135acd271b5889486ca9a33312cce67e4a02
        - quay.io/strimzi/kafka@sha256:8c9f38b45dd814e617c9c51cc90fd51e23d7dd23e8efe7e9eff013522bd6a5a0
        - quay.io/strimzi/maven-builder@sha256:593e9980b786ca8ad3223151c3e17f16c7652ee0e86d722af4c34b023038ecc2
        - quay.io/strimzi/kafka@sha256:680ae1958dbcb9da8ee4128a67c1163a6ee2744221f7d29f73d8bcc237fd0173
        version: 0.32.0
      entries:
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.32.x
    - currentCSV: strimzi-cluster-operator.v0.33.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.4"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:cf0d41fdb99b20e91063e23eb1d664817c18866c9a2f5c4430eac897e78d5d53
          createdAt: "2023-02-18 21:21:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "Proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **Strimzi 0.33 supports only Kubernetes 1.19 and newer! Kubernetes versions 1.16, 1.17 and 1.18 are not supported anymore since Strimzi 0.32.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.33.2/deploying.html#assembly-upgrade-str).
          ### New in 0.33
          _Note: Strimzi 0.33.2 add support for Kafka 3.4.0 which fixes CVE-2023-25194._
          * Add support for Kafka 3.3.2
          * Automatic restarts of failed Connect or Mirror Maker 2 connectors
          * Redesign of Strimzi User Operator to improve its scalability
          * Move to Java 17
          * Improved FIPS support
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:9eca149cfc436580e3cdd6cee0ca318366b8d0ec53c2cf007e4e2c614b988921
        - quay.io/strimzi/operator@sha256:cf0d41fdb99b20e91063e23eb1d664817c18866c9a2f5c4430eac897e78d5d53
        - quay.io/strimzi/jmxtrans@sha256:5ebdafa7a5e3718ed3274d6254c9e655613c272340094b997b1c97fde2598b4a
        - quay.io/strimzi/kafka@sha256:301dc52ed5891ed4fa33e79ca3c344b1ac0eec7469dd46a5a7ac22064e053fc2
        - quay.io/strimzi/kafka@sha256:40a847f8455ec6ea9ff9fe1fff20b1ed01f848326dc13977d13ac911f0cb40b7
        - quay.io/strimzi/kafka@sha256:fe9d3f8b029ff32d5d725e57384592914957314d63e92fda3abf4028fe4e66f6
        - quay.io/strimzi/maven-builder@sha256:de9e51365e7acc63feae745618804e6286fd730f41c3b31582cbb7319a93b483
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:05e66583757da895fd23c3af9830ae1ac6a84d107107e5b6bbaece57e4d79c9a
        - quay.io/strimzi/kafka@sha256:30945aecb9d63cf8863c672222f130469c89aefa07078c95aaed52c40fd16146
        - quay.io/strimzi/kaniko-executor@sha256:dc27d8aeb851245c79fb7276febe98769cc098d678bea096b338caaaf111dd27
        - quay.io/strimzi/kafka-bridge@sha256:3a380d5f3ea509f90cdf95280d83b42f5de4f86ee3a512e02234e7639f50c9eb
        - quay.io/strimzi/kafka@sha256:116cf543fbadadd0b45007ce24d44a0c79a62280e8faa1fc80df40291fbdf05d
        version: 0.33.2
      entries:
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.33.x
    - currentCSV: strimzi-cluster-operator.v0.34.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.4"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:f4ee3ca482a2dd19785f59634578a0850273444c1173a5699a99cf02f3a018fe
          createdAt: "2023-03-17 13:02:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "Proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **Strimzi 0.34 supports only Kubernetes 1.19 and newer! Kubernetes versions 1.16, 1.17 and 1.18 are not supported anymore since Strimzi 0.32.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.34.0/deploying.html#assembly-upgrade-str).
          ### New in 0.34
          * Add support for Apache Kafka 3.4.0 (fixes CVE-2023-25194) and remove support for Apache Kafka 3.2.x
          * Stable Pod identities for Kafka Connect and MirrorMaker 2 (disabled by default)
          * Use JDK HTTP client in the Kubernetes client instead of the OkHttp client
          * Add truststore configuration for HTTPS connections to Open Policy Agent server
          * Update Strimzi HTTP Bridge to 0.25.0 and strimzi Oauth to 0.12.0
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:1da35fd7b36b113d1343e254fdc6efd97ca8660cc7977d8985aa3a3547d5ebb1
        - quay.io/strimzi/kafka@sha256:37cf8d0fea1d2078511920190a72b49977ff4047b6ecbfed6b394c6f9e1e2ff0
        - quay.io/strimzi/maven-builder@sha256:f781b6b857d437c2de62585462e97b9fae357912c9f6711c1df39f431278878d
        - quay.io/strimzi/kafka@sha256:1ace2cc0db9653ac1b388477fa56c3c1cd97c7b3846eba3c7824dc58ea179476
        - quay.io/strimzi/kaniko-executor@sha256:dc27d8aeb851245c79fb7276febe98769cc098d678bea096b338caaaf111dd27
        - quay.io/strimzi/jmxtrans@sha256:62272e8a03da2144340bd7267f7a824d1ed70f4f3e30dc7aadfba9ee1b9baf76
        - quay.io/strimzi/operator@sha256:f4ee3ca482a2dd19785f59634578a0850273444c1173a5699a99cf02f3a018fe
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:02f53d3395b2b98f92a96b466c83ca15c79a75d82451e2ed8ba921375e727c7f
        - quay.io/strimzi/kafka-bridge@sha256:51babca0f7a328f4db005c6a16daa8ac4a4306c46fe3ca89382919134aa09179
        version: 0.34.0
      entries:
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.34.x
    - currentCSV: strimzi-cluster-operator.v0.35.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.4"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:06a94a3021cf028ccc1a49271f35f79216029e344536e664f196c1725ff2c663
          createdAt: "2023-06-07 16:19:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **Strimzi 0.35 is the last version with support for Kubernetes 1.19 and 1.20. From Strimzi 0.36, only Kubernetes 1.21 and newer will be supported.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.35.1/deploying.html#assembly-upgrade-str).
          ### New in 0.35
          * Move feature gate `UseStrimziPodSets` to GA and remove support for StatefulSets
          * Remove support for JMX Trans
          * Redesigned the Cluster and User Operator configuration to make it more efficient and flexible
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kaniko-executor@sha256:39778b90c2b2afc30261e4ad5135805e1a10a2b60e2e53108fb9f80487f1208a
        - quay.io/strimzi/maven-builder@sha256:88a79eff3b3a386880a630658964b7754caed9e99dd6e645a4c0d23d0fdb47ee
        - quay.io/strimzi/operator@sha256:06a94a3021cf028ccc1a49271f35f79216029e344536e664f196c1725ff2c663
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:8abe0994052e2a328e54c9d30c920dc331e9b816a4606234a3023b9ef65ec4ed
        - quay.io/strimzi/kafka-bridge@sha256:d6be183e492f8f88157ab9fe0af53950df8b6711a8a8c33da465de6064f6f86e
        - quay.io/strimzi/kafka@sha256:0d910e7138cb49e1cd8cd84cef88bce35698b93ddd683a3398f1d485a3162693
        - quay.io/strimzi/kafka@sha256:4de4874a7b722ad813f4dcc58acf509527bca0609999b81e70d81e3b38534d9d
        - quay.io/strimzi/kafka@sha256:54c6b25b31f51ef401c1b6e2a1b27432911e819bf3e502e05186f01be3f798e5
        version: 0.35.1
      entries:
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.35.x
    - currentCSV: strimzi-cluster-operator.v0.36.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:e9e03b31007c0f9b67a6a33e6b644e8c1ba35bd9976804ee3d22a04e4bf511b1
          createdAt: "2023-07-10 21:47:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!! Strimzi 0.36.1 supports only Kubernetes 1.21 and newer! Kubernetes versions 1.19 and 1.20 are not supported anymore since Strimzi 0.36.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.35.1/deploying.html#assembly-upgrade-str).
          ### New in 0.36
          * Add support for Apache Kafka 3.4.1, 3.5.0, and 3.5.1
          * Remove support for 3.3.1 and 3.3.2
          * Add support for _Kafka node pools_
          * Add support for _Unidirectional Topic Operator_
          * Enable SCRAM-SHA authentication in KRaft mode (supported in Apache Kafka 3.5.0 and newer)
          * Add support for insecure flag in Maven artifacts in Kafka Connect Build
          * Improve Kafka rolling update to avoid rolling broker in log recovery
          * Added support for Kafka Exporter topic exclude and consumer group exclude parameters
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:ef3f85e1227e886a131d3ddec3fb431aef6d3daed46115b288246b9ace0e69e2
        - quay.io/strimzi/kafka-bridge@sha256:fefee252895e9f94756ed5c9ea71749e3fa89281df01bc55878a244ca7d17697
        - quay.io/strimzi/kafka@sha256:9f35f40be3d47b0cb1f6628f7ffd9c6a687ab9f564829f341dd66fd0759c064f
        - quay.io/strimzi/kafka@sha256:ea35817ff1ef295c682d70562f209ef658fcd87c61f467a4549d7a2f39e71700
        - quay.io/strimzi/maven-builder@sha256:2a469b40122027b981914db5b5c102be48280e039c3089963422c181174af226
        - quay.io/strimzi/kafka@sha256:67c2b563a65c85c9393608f9af7eaf12ea48dcc0ef5f726d51f27273a3845186
        - quay.io/strimzi/kafka@sha256:a0da6a48b5bcbff355365f07df2d99ef6443d22c5690495f10a6417e761b3799
        - quay.io/strimzi/kaniko-executor@sha256:5ff9fc7d0b7b694875ad0150fc787c582d42da3b4864d807ee8a6524e47b0e4e
        - quay.io/strimzi/operator@sha256:e9e03b31007c0f9b67a6a33e6b644e8c1ba35bd9976804ee3d22a04e4bf511b1
        version: 0.36.1
      entries:
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.36.x
    - currentCSV: strimzi-cluster-operator.v0.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:52f376e64b9b31d74162e26248c278e9bd301d2d8b4240ee5bcf780dfe2f8ef8
          createdAt: "2023-09-03 17:45:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.37.0/deploying.html#assembly-upgrade-str).
          ### New in 0.37
          * The StableConnectIdentites feature gate moves to a beta stage.
          * Support for the ppc64le platform
          * Version fields to the Kafka custom resource status to track installation and upgrade state
          * Infinite auto-restarts of Kafka Connect and Kafka Mirror Maker 2 connectors
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:2997ba1c169eb792a6004d7a41b674560515f3ea6e62ab8b9a1fdb747eab40c1
        - quay.io/strimzi/kafka@sha256:1de6e073e8625a193fcfd11dd1a6717cc17596911c10bcebd792c00b08a7ebaf
        - quay.io/strimzi/kaniko-executor@sha256:5729f1f0511da95e64e358cfabb3980ad9a660af2968118a87d6755f5d652a67
        - quay.io/strimzi/maven-builder@sha256:995be06a50b86c992fcee9f00e44f6a21c3406975e4e35802f10e88b72ffb9df
        - quay.io/strimzi/operator@sha256:52f376e64b9b31d74162e26248c278e9bd301d2d8b4240ee5bcf780dfe2f8ef8
        - quay.io/strimzi/kafka-bridge@sha256:5b821f6f3396002ffa7c5804391b627ff9da3b494b2777dde518c55c2b73cefc
        - quay.io/strimzi/kafka@sha256:38bbadcdb196a373e1698be890caa1dc01134ce91763d8f95c71768a117e1932
        - quay.io/strimzi/kafka@sha256:dfeb1eb7b94107c443b6bc82fcfee7fcf782516c83c6fc64451fb6a7e2de74a6
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:8b9b06ead5e014b920c82034ded615413dca53cf36f804005408726c9bbda66f
        version: 0.37.0
      entries:
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.37.x
    - currentCSV: strimzi-cluster-operator.v0.38.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.6.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.6"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:aee45bbe439335e45a0423e6565bae0d0727d85c7b807812949bfa127d467fe6
          createdAt: "2023-10-14 18:18:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.38.0/deploying.html#assembly-upgrade-str).
          ### New in 0.38
          * Add support for Apache Kafka 3.6.0 and remove support for 3.4.0 and 3.4.1
          * Container signing and SBOMs
          * Stopping Connect and MirrorMaker 2 connectors
          * Manual rolling updates of Kafka Connect and Kafka Mirror Maker 2 pods using annotation
          * Prevent scale-down of brokers that still contain any replicas
          * Run ZooKeeper- and KRaft-based clusters in parallel
          * Unidirectional Topic Operator improvements
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:0cc01438e8596643407b6b8ff05fafcea7ef54fa9410d4ae2492a9dbf41118b1
        - quay.io/strimzi/kafka@sha256:20d451fb32ec82eab3c16891198ace46bb9b9193f1f5511bb60ce249080dd7d4
        - quay.io/strimzi/kafka@sha256:50e24c797455f9cdbb3cdde8e4f26bb8e1f0503469456da5d179017fd3e03ffe
        - quay.io/strimzi/kaniko-executor@sha256:4fe7a3f3f78e93369284a5ab456873c911230926ca071d1d88167e63d8ce376c
        - quay.io/strimzi/maven-builder@sha256:922d91dab9e2b8e14b6db25d8b48d7f4e3521bedd435468cc22039599ac4f888
        - quay.io/strimzi/operator@sha256:aee45bbe439335e45a0423e6565bae0d0727d85c7b807812949bfa127d467fe6
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:51db956f1472ae0498c57b9488448c34cf7e24afab6b9997eb3689b001d73277
        - quay.io/strimzi/kafka-bridge@sha256:13838889cc20a3a382ea64e749cad94f997c0b928840588f2d1befcf19247bea
        version: 0.38.0
      entries:
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.38.x
    - currentCSV: strimzi-cluster-operator.v0.39.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.6.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.6"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.6.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.6.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.6.1",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:50b49f9b5e554cca517fc2794e11319d5aaba1676494b285baa3a74fc79eb501
          createdAt: "2023-12-14 20:28:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.39.0/deploying.html#assembly-upgrade-str).

          **Strimzi 0.39 is the last minor release with support for Kubernetes 1.21 and 1.22.** From Strimzi 0.40 on, only Kubernetes 1.23 and newer will be supported.
          ### New in 0.39
          * Add support for Apache Kafka 3.5.2 and 3.6.1
          * The `StableConnectIdentities` feature gate moves to GA stage and is now permanently enabled without the possibility to disable it.
            All Connect and Mirror Maker 2 operands will now use StrimziPodSets.

          * The `KafkaNodePools` feature gate moves to the beta stage and is enabled by default.
            If needed, `KafkaNodePools` can be disabled in the feature gates configuration in the Cluster Operator.

          * The `UnidirectionalTopicOperator` feature gate moves to the beta stage and is enabled by default.
            If needed, `UnidirectionalTopicOperator` can be disabled in the feature gates configuration in the Cluster Operator.

          * Improved Kafka Connect metrics and dashboard example files
          * Allow specifying and managing KRaft metadata version
          * Add support for KRaft to KRaft upgrades (Apache Kafka upgrades for the KRaft-based clusters)
          * Improved Kafka Mirror Maker 2 dashboard example file
          * Support for rolling updates of KRaft controller nodes
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/maven-builder@sha256:6ce3c16284379d5db9e42a6f3e2b765c981091164a28fdd6bf927b6c5d4ab557
        - quay.io/strimzi/kafka-bridge@sha256:13838889cc20a3a382ea64e749cad94f997c0b928840588f2d1befcf19247bea
        - quay.io/strimzi/kafka@sha256:53b960411e852f5cb182ecc5d395a3562865f83e15e6251f3a9af0eb413feeed
        - quay.io/strimzi/kaniko-executor@sha256:723b7add2473e73c45c81361e1708af4971c321b0391c1298a0557fb8ca4f7f6
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:392f9299c75a3ca4f593eaebdfe515145696f12db9f990bb004cfa58dd6bf0ef
        - quay.io/strimzi/kafka@sha256:49b7530ada1175750ad5a706e545ba3594d85e1e3a90f98b0200a73fa9875057
        - quay.io/strimzi/kafka@sha256:84691b3afb67b312400e01572ff08b64c1e1b1d32a4276e0c21bba10c71c36fe
        - quay.io/strimzi/kafka@sha256:dd1706f36031c96dfcd0da7b3f804168e5f076220caa302973455fdcd76bd03e
        - quay.io/strimzi/operator@sha256:50b49f9b5e554cca517fc2794e11319d5aaba1676494b285baa3a74fc79eb501
        - quay.io/strimzi/kafka@sha256:2badc65532b483bba6c1f6a8b0c9895e993ce24e9ebd3cd953d0d17fbe36d27a
        version: 0.39.0
      entries:
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.39.x
    - currentCSV: strimzi-cluster-operator.v0.40.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:2228d89b53e3524e69d1bcf5c2cd373884ce696d9005389a6c78dad23310e837
          createdAt: "2024-03-09 21:27:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.40.0/deploying.html#assembly-upgrade-str).

          **From Strimzi 0.40 on, we support only Kubernetes 1.23 and newer.** Kubernetes versions 1.21 and 1.22 are no longer supported.
          ### New in 0.40
          * Add support for Apache Kafka 3.7.0. Remove support for Apache Kafka 3.5.0, 3.5.1, and 3.5.2.
          * The `UseKRaft` feature gate moves to beta stage and is enabled by default. If needed, `UseKRaft` can be disabled in the feature gates configuration in the Cluster Operator.
          * Add support for ZooKeeper to KRaft migration by enabling the users to move from using ZooKeeper to store metadata to KRaft.
          * Add support for moving from dedicated controller-only KRaft nodes to mixed KRaft nodes
          * Added support for Kafka Exporter `offset.show-all` parameter
          * Prevent removal of the `broker` process role from KRaft mixed-nodes that have assigned partition-replicas
          * Improve broker scale-down prevention to continue in reconciliation when scale-down cannot be executed
          * Added support for Tiered Storage by enabling the configuration of custom storage plugins through the Kafka custom resource.
          * Update HTTP bridge to the latest 0.28.0 release
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Aapche ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:73deb1af0d93e9fa8955a5a412d0e7138384bdc80e7574e815d21796e446b636
        - quay.io/strimzi/kafka@sha256:2c143eb10b66037ef877311eb767457e4b877d5ff2c47d393c76babec155caff
        - quay.io/strimzi/kafka@sha256:c491a95f9b9b58f406461faf222ef612ad8d2f4d7b53f7f3645b20c99d7d1583
        - quay.io/strimzi/kafka@sha256:e2b9f2835498831bbf30ac2d651de143d57088bcb23943101b066e941db92aca
        - quay.io/strimzi/kaniko-executor@sha256:3fb4ace22589fcf8d3f01b74c37b10b32d87e15d103ea59e0933b61c4e46ff4a
        - quay.io/strimzi/maven-builder@sha256:d02a9b48c77a44eeab6426c9af4adf75405217994bcb01ce0196e616041350d8
        - quay.io/strimzi/operator@sha256:2228d89b53e3524e69d1bcf5c2cd373884ce696d9005389a6c78dad23310e837
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:df4e4dce45f87e684e7e1044a7edb2456160141afb6ba57b9af28088ffbac407
        version: 0.40.0
      entries:
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.40.x
    - currentCSV: strimzi-cluster-operator.v0.41.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:4c687a4fac96ffc22433ca6d00fb1bd31722767b44c9d87c465f95b57fb70089
          createdAt: "2024-05-09 22:23:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.41.0/deploying.html#assembly-upgrade-str).

          **Strimzi 0.41 supports only Kubernetes 1.23 and newer.** Kubernetes versions 1.21 and 1.22 are no longer supported.
          ### New in 0.41
          * Support for Apache Kafka 3.6.2
          * Metrics to monitor CA expiration
          * Support for JBOD storage in KRaft mode. (Note: JBOD support in KRaft mode is considered early access in Apache Kafka 3.7.x)
          * Support for changing topic replication factor by changing the `KafkaTopic` resources.
          * The `KafkaNodePools` feature gate moves to GA stage and is permanently enabled without the possibility to disable it. To use the Kafka Node Pool resources, you still need to use the `strimzi.io/node-pools: enabled` annotation on the `Kafka` custom resources.
          * Support for configuring the `externalIPs` field in node port type services.
          * The `UnidirectionalTopicOperator` feature gate moves to GA stage and is permanently enabled without the possibility to disable it. If the topics whose names start with `strimzi-store-topic` and `strimzi-topic-operator` still exist, you can delete them.
          * Improve validation of `KafkaMirrorMaker2` resource to make sure the Connect cluster is set to the target cluster
          * Continue reconciliation after failed manual rolling update using the `strimzi.io/manual-rolling-update` annotation (when the `ContinueReconciliationOnManualRollingUpdateFailure` feature gate is enabled)
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Aapche ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:fecad1a330421341e6946252f95735ed177a690eab6250be097413ea29ce9473
        - quay.io/strimzi/kaniko-executor@sha256:9404037bd5431b012c8c633ec3345907667453c5532e5bfaaedc78286de22c62
        - quay.io/strimzi/kafka-bridge@sha256:c833f930ead2d1e9054912a20689ee979d335f5e5ca8769e3c6b8a5514a0df96
        - quay.io/strimzi/kafka@sha256:41811bb106d6182978a889eaedffeadffaa5ab1599c4cd8e4f5015b131c7ac30
        - quay.io/strimzi/kafka@sha256:6243d98890c665ef65b5f5fa2ffd046412281ffef31bc7a07cac37bd77b2579d
        - quay.io/strimzi/kafka@sha256:c3a346235ce4dea42986648ca07f2482d8fc0bf654c1d441b1301a23999304db
        - quay.io/strimzi/operator@sha256:4c687a4fac96ffc22433ca6d00fb1bd31722767b44c9d87c465f95b57fb70089
        - quay.io/strimzi/kafka@sha256:bf49499980bbe5d4dd399de0dd396089b0fd9dd29bc46e14d39b20f1e826aec1
        - quay.io/strimzi/maven-builder@sha256:17f09b07fc41a059e6a048cb766046d43a072cfd3a8266c97388a37543dadee8
        version: 0.41.0
      entries:
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.41.x
    - currentCSV: strimzi-cluster-operator.v0.42.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.1",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:ca5c1b70e1196deec4bf519921bfa55a967aa1ea15bd4c182bc56bea08d2e114
          createdAt: "2024-07-03 12:34:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.42.0/deploying.html#assembly-upgrade-str).

          **From version 0.40.0, Strimzi supports only Kubernetes 1.23 and newer.** Kubernetes versions 1.21 and 1.22 are no longer supported.
          ### New in 0.42
          * Support for Apache Kafka 3.7.1
          * The UseKRaft feature gate moves to GA stage and is permanently enabled without the possibility of disabling it. To use KRaft (ZooKeeper-less Apache Kafka), you still need to use the strimzi.io/kraft: enabled annotation on the Kafka custom resources or migrate from an existing ZooKeeper-based cluster.
          * Update the base image used by Strimzi containers from UBI8 to UBI9
          * Add support for filename patterns when configuring trusted certificates
          * Enhance KafkaBridge resource with consumer inactivity timeout and HTTP consumer/producer enablement.
          * Add support for setting publishNotReadyAddresses on services for listener types other than internal.
          * Added support for configuring the quotas plugin with type strimzi or kafka in the Kafka custom resource. The Strimzi Quotas plugin version was updated to 0.3.1.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Aapche ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:fdddffb3de59ba48c05964bb0e760593088d24d1ee35b090112fe6cc6b553cd8
        - quay.io/strimzi/kafka@sha256:841a46e9c10481df3ef702412caf362b55ae07c30a3a5927073356cd36dc049f
        - quay.io/strimzi/kafka@sha256:c56c5abf94897f20f976603cba0678a33cdfbbcd6f9030a193f7684cb9894a6c
        - quay.io/strimzi/kafka@sha256:6527c426f753521c07f3a3df2ee432273a41b109594096b4c6cae2e8e609d669
        - quay.io/strimzi/kafka@sha256:bc49c10b3e839e161e515c3a1e411d1f8df9de5e2c8d71aa7b63ccdbbae9e8d2
        - quay.io/strimzi/kaniko-executor@sha256:11821b0078a270612f1bcc37f5dc716ab273c974648c40f95fa4804352e647a7
        - quay.io/strimzi/maven-builder@sha256:342e8d0086c53cf7334127798e5bd3764b28f5e4909ba67d65f6d937dc3dba05
        - quay.io/strimzi/kafka@sha256:6c519531cdd5f40f326b295d8827344140efe2607a1826f7f1cab8c3427f43f7
        - quay.io/strimzi/operator@sha256:ca5c1b70e1196deec4bf519921bfa55a967aa1ea15bd4c182bc56bea08d2e114
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:9dcf24fecf3ee0d999601c276ac15e8634c275590f2c42b8a6bcb83984bf1445
        version: 0.42.0
      entries:
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.42.x
    - currentCSV: strimzi-cluster-operator.v0.43.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.8.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:d3732245f34afaa6b571f1f912e1cd017891b22003d6367ae8ca059b2a5cb13c
          createdAt: "2024-08-22 15:19:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.43.0/deploying.html#assembly-upgrade-str).

          **Strimzi 0.43 is the last version with support for Kubernetes 1.23 and 1.24.** From Strimzi 0.44, only Kubernetes versions 1.25 and newer will be supported.
          ### New in 0.43
          * Support for Apache Kafka 3.8.0
          * Removed support for Apache Kafka 3.6.0, 3.6.1, and 3.6.2
          * Specifying additional volumes and volume mounts in Strimzi custom resources
          * Support for custom Cruise Control API users
          * Unregistration of KRaft nodes after scale-down
          * Kafka Exporter updated to 1.8.0 (and the Grafana dashboard updated to work with it)
          * Service account based authentication
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/maven-builder@sha256:6414f8f3985f221b0eda53867c00494140108d17579c4dcbbc93934bb00e5d49
        - quay.io/strimzi/operator@sha256:d3732245f34afaa6b571f1f912e1cd017891b22003d6367ae8ca059b2a5cb13c
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:a9950264bfefc536b4e0a0adc2348f92aa41da55dd50a2324ddad0253291b67c
        - quay.io/strimzi/kafka-bridge@sha256:80f329ecd3ba96fac12e75be874dce0debc8395337737581de34238ce11c8fb1
        - quay.io/strimzi/kafka@sha256:ad06ead5125bce87498b1582a76e78143a6d21408ac4b12bb7e6007aa4cabd84
        - quay.io/strimzi/kafka@sha256:b2f4e8895e9ed66228512ce14aec685101fa75dc329128d47cb1c15e3aef3c9c
        - quay.io/strimzi/kafka@sha256:d27cf5bf3624e18ba705246b14f92d12b8a15eb8551b13abf027cf71b549baf0
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        version: 0.43.0
      entries:
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.43.x
    - currentCSV: strimzi-cluster-operator.v0.44.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.8.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:b07b81f7e282dea2e4e29a7c93cfdd911d4715a5c32fe4c4e3d7c71cba3091e8
          createdAt: "2024-08-22 15:19:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.44.0/deploying.html#assembly-upgrade-str).

          **From version 0.44, Strimzi supports only Kuberneets 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.**

          **ZooKeeper support will be soon removed from Apache Kafka and Strimzi.** Currently, the last Strimzi version with ZooKeeper support is expected to be Strimzi 0.45. Please plan your migration to KRaft (ZooKeeper-less Apache Kafka) accordingly. Follow the [documentation](https://strimzi.io/docs/operators/latest/full/deploying.html#assembly-kraft-mode-str) for more details.

          **Kafka Mirror Maker 1 support will be soon removed from Apache Kafka and Strimzi.** Currently, the last Strimzi version with Mirror Maker 1 support is expected to be Strimzi 0.45. Please plan your migration to Mirror Maker 2 or another mirroring tool.

          ### New in 0.44
          * Managing offsets in Connect and Mirror Maker 2 connectors through custom resources
          * Templating `advertisedHost` and `host` fields in listener configuration
          * Configuring environment variables in operands based on Secrets and ConfigMaps
          * Disabling Pod disruption Budget management
          * Auto-rebalancing at scale-up/scale-down
          * `ContinueReconciliationOnManualRollingUpdateFailure` feature gate moves to the beta stage and is enabled by default
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:4d59e60cc75de82bd3f3a063237cef8a5598d315f6d53e803d37589a94929b0e
        - quay.io/strimzi/kafka-bridge@sha256:cc95ce9f496057f3b18d5e8297b40a410cc66f9fd4a2227615971458a26bac25
        - quay.io/strimzi/kafka@sha256:238bb080825b7ecebaa819be09788bc3d056ae8162ebcd41444076dc22f85740
        - quay.io/strimzi/kafka@sha256:98d332b7fa5c9e48f60b516e00ed5812bd9268e014fd2337284e7cc3e664f1eb
        - quay.io/strimzi/kafka@sha256:9a4224635e09ece2c1d3ffe9d715813cf63037461c9f06c1b5f53554aed5ecdc
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        - quay.io/strimzi/maven-builder@sha256:7b55f971a3b62923a9a61a61c82f542e07deeb6ffdbaede68244ba358a0853f2
        - quay.io/strimzi/operator@sha256:b07b81f7e282dea2e4e29a7c93cfdd911d4715a5c32fe4c4e3d7c71cba3091e8
        version: 0.44.0
      entries:
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.44.x
    - currentCSV: strimzi-cluster-operator.v0.45.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.9.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.9"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.9.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.9.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.9.1",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:58e8722216b0b0e8b1dd79109725238fa4016a16cc6a9fca0e327bccb1506810
          createdAt: "2025-06-27 01:38:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.45.1/deploying.html#assembly-upgrade-str).

          **From version 0.45, Strimzi supports only Kuberneets 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.**

          **ZooKeeper and Kafka Mirror Maker 1 support will be removed from Apache Kafka and Strimzi.** Strimzi 0.45 is the last minor Strimzi version with support for ZooKeeper-based Apache Kafka clusters and MirrorMaker 1 deployments. Please make sure to [migrate to KRaft](https://strimzi.io/docs/operators/latest/full/deploying.html#assembly-kraft-mode-str) and MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.

          **Strimzi EnvVar Configuration Provider and Strimzi MirrorMaker 2 Extensions will be removed from Strimzi.** Strimzi 0.45 is the last Strimzi version to include the Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0). Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.
          ### New in 0.45.1
          * Add support for Kafka 3.9.1
          * Update HTTP bridge to 0.31.2
          * Update Strimzi Kafka OAuth library to 0.15.1
          * Fixed bug which may lead to metadata loss within the cluster when restarting a KRaft migration after a previous rollback due to missing `/migration` znode deletion.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        - quay.io/strimzi/operator@sha256:58e8722216b0b0e8b1dd79109725238fa4016a16cc6a9fca0e327bccb1506810
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:40d17d4d0632c272779da152f710fb7c2de50acc3791eb0b9fe445a13c0cb102
        - quay.io/strimzi/kafka-bridge@sha256:c462441a966f0732855e684b4840563bfad45391345c9511fa49e1630ba9c3e3
        - quay.io/strimzi/kafka@sha256:ba52ed046b1dccdbd96f4e68057ce014d862a7c9c1fc670760c023b9aa09f23f
        - quay.io/strimzi/kafka@sha256:e98fbe49cadbc5d3afbd8f17abea218f216c95d52f4fa1fe514a7a988624da24
        - quay.io/strimzi/maven-builder@sha256:770e410f1e7e0e92c31bae6c19831ba36d59dd11b44e90c159aef16a965aa998
        - quay.io/strimzi/kafka@sha256:173cb5793756f75739c51a83bbe06d7f0094fd003a2982160a5cc6e216cd6d28
        - quay.io/strimzi/kafka@sha256:6a05924839a2c7da0431408e6d6223a055e75d88b3f057ac5caa7f9097227f56
        version: 0.45.1
      entries:
      - name: strimzi-cluster-operator.v0.45.1
        version: 0.45.1
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.45.x
    - currentCSV: strimzi-cluster-operator.v0.46.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.0.0",
                      "metadataVersion": "4.0-IV3",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.0.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:6a22e4968e9d409405423d12c04a0e3fecaea2ee2794bd27de7cf21f59453265
          createdAt: "2025-06-26 11:58:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.46.0/deploying.html#assembly-upgrade-str).

          **From version 0.46, Strimzi supports only Kuberneets 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.**
          **Support for ZooKeeper-based clusters and for migration from ZooKeeper-based clusters to KRaft has been removed. Please make sure all your clusters are using KRaft before upgrading to Strimzi 0.46.0 or newer!
          **Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0) plugins were removed from Strimzi container images. Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.
          **Support for MirrorMaker 1 has been removed. Please make sure to migrate to MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.
          ### New in 0.46.1
          * Update CSV file for OLM installation to add missing permission for broker Pods to "get" nodes Kubernetes resource.
          * Allow the injection of annotations on the deployment object in Helm charts.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/operator@sha256:6a22e4968e9d409405423d12c04a0e3fecaea2ee2794bd27de7cf21f59453265
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:8e321dc1bf74ba331b62d21bff4d8993956ab935cf5be32f01e7f7aa6897bf22
        - quay.io/strimzi/kafka-bridge@sha256:3e1815aed3f74b8573cebfced66b2c78ca0cf7c746c26db2002380cd39d09ae6
        - quay.io/strimzi/kafka@sha256:82273d873ce21a73f8f3118bf61627cb15734b43ea7ca92d43b290340b44e485
        - quay.io/strimzi/kafka@sha256:f3837f8cb2a60e906e84486128c41c398424f4085df2348e9e0486bfc12089fd
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        - quay.io/strimzi/maven-builder@sha256:b532234c234fc30fecec992ad1a6154c5ef08ebf9a20ec8bc62e0c88d791ff36
        version: 0.46.1
      entries:
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.46.x
    - currentCSV: strimzi-cluster-operator.v0.47.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.0.0",
                      "metadataVersion": "4.0-IV3",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.0.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:589c4d63641d9a944462dd682f6e5febe8b38ff55b9253949b061aca16feb154
          createdAt: "2025-07-12 17:21:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * **Support for ZooKeeper-based clusters and for migration from ZooKeeper-based clusters to KRaft has been removed.**
            Please make sure all your clusters are using KRaft before upgrading to Strimzi 0.46.0 or newer!

          * **Strimzi 0.47 is the last Strimzi version with support for Kubernetes 1.25 and 1.26.**
            From Strimzi 0.48.0 on, we will support only Kubernetes 1.27 and newer.

          * **Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0) plugins were removed from Strimzi container images.**
            Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.

          * **Support for MirrorMaker 1 has been removed.**
            Please make sure to migrate to MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.

          ### New in 0.47.0
          * Support for Kafka 3.9.1
          * Progress tracking for Cruise Control rebalances
          * Support for Kubernetes Image Volumes to mount custom plugins
          * Support for [JsonTemplateLayout](https://logging.apache.org/log4j/2.x/manual/json-template-layout.html) in Operators, Cruise Control, and Kafka 4.0.0
          * Support for Strimzi Metrics Reporter for the Kafka brokers / controllers
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:428c5587f547dabfc995a73745569d113380c7e6b8bf0b2504c6a9a00d6c4608
        - quay.io/strimzi/kafka@sha256:551882f47a6d2dc8300bcfca251fffffc3379acb2724a7efe16f17c0c4f529fb
        - quay.io/strimzi/kafka@sha256:8a793cdf5084cdb72c6663419530985158b16330a518720e9e9d1d96babbaf7e
        - quay.io/strimzi/kafka@sha256:978e2ed5f0d315e8bf0ab0503ee839acbd9da01ca427e6581b59ac25d36bc9c9
        - quay.io/strimzi/kaniko-executor@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/maven-builder@sha256:c67a3ad3d92420ac8b7f8435eeec53ebffaea4e894e65414a7c47c20e3faba27
        - quay.io/strimzi/operator@sha256:589c4d63641d9a944462dd682f6e5febe8b38ff55b9253949b061aca16feb154
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:16fbdaaf303ab40202d49438737f3307926594a5259081eeeb39595b7ea41f8e
        version: 0.47.0
      entries:
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.47.x
    - currentCSV: strimzi-cluster-operator.v0.48.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.1.0",
                      "metadataVersion": "4.1-IV1",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.1.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:73dc9555c4a73094b497ffb14d816de5ff40144ffc470efd75ccf128afa22778
          createdAt: "2025-09-25 10:32:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * **Support for ZooKeeper-based clusters and for migration from ZooKeeper-based clusters to KRaft has been removed.**
            Please make sure all your clusters are using KRaft before upgrading to Strimzi 0.46.0 or newer!

          * **Strimzi 0.48.0 supports only Kubernetes 1.27 and newer.**
            Kubernetes 1.25 and 1.26 are not supported anymore

          * **Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0) plugins were removed from Strimzi container images.**
            Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.

          * **Support for MirrorMaker 1 has been removed.**
            Please make sure to migrate to MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.

          ### New in 0.48.0
          * Support for Kafka 4.1.0
          * Add monitoring of custom resources using kubernetes-state-metrics (KSM)
          * Support for type: custom client authentication
          * Added support for Strimzi Metrics Reporter to Kafka Connect, Mirror Maker 2 and Kafka Bridge.
          * Added support for KIP-745 in Kafka Connector and Mirror Maker 2, allowing the usage of includeTasks and onlyFailed arguments in Kafka connectors restart.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kaniko-executor@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/maven-builder@sha256:64380efcb8da87fdc0e0de238a20456be9abb830174c2f2331882b7a84657e57
        - quay.io/strimzi/operator@sha256:73dc9555c4a73094b497ffb14d816de5ff40144ffc470efd75ccf128afa22778
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:a4a74cd4bb69717cc58d8996231fd49d8a18be3069a88489ad2409bde4b2a17e
        - quay.io/strimzi/kafka-bridge@sha256:53034f64f0b672f10b5bacea1c7a25132f118df7fd5c9032c4dbf702ed93796a
        - quay.io/strimzi/kafka@sha256:34450afc1a3399a9026fc3c6ec90e9f6adfec9faf6520545b4d84e90cda34964
        - quay.io/strimzi/kafka@sha256:48db05ad2e9fa39eb388089e7e25654bcbf4da1ddc3a5635d675056c28bbcb96
        version: 0.48.0
      entries:
      - name: strimzi-cluster-operator.v0.48.0
        version: 0.48.0
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.48.x
    - currentCSV: strimzi-cluster-operator.v0.49.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.1.1",
                      "metadataVersion": "4.1-IV1",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.1.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "groupId":"my-connect-group",
                  "configStorageTopic":"my-connect-configs",
                  "statusStorageTopic":"my-connect-status",
                  "offsetStorageTopic":"my-connect-offsets",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.1.1",
                  "replicas": 1,
                  "target": {
                    "alias": "cluster-b",
                    "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                    "groupId":"my-mm2-group",
                    "configStorageTopic":"my-mm2-configs",
                    "statusStorageTopic":"my-mm2-status",
                    "offsetStorageTopic":"my-mm2-offsets",
                    "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                    }
                  },
                  "mirrors": [
                    {
                      "source": {
                        "alias": "cluster-a",
                        "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                      },
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
          createdAt: "2025-11-18 15:11:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * ⚠️ **SECURITY: Strimzi 0.49.1 addresses CVE-2025-66623.**
            **If you use Strimzi 0.47.0 or newer, we recommend upgrading to 0.49.1.**

          * **Strimzi 0.49 introduces new API version `v1` to all Strimzi custom resources.**
            The old API versions (`v1alpha1`, `v1beta1`, and `v1beta2`) will continue to be supported until Strimzi 1.0.0 / 0.52.0.
            For more details about the migration to the v1 API and CRD upgrades, see the [documentation](https://strimzi.io/docs/operators/in-development/deploying.html#assembly-api-conversion-str).

          * **Before upgrading to Strimzi 0.49 or newer**, make sure that you update your KafkaUser resources to [use the `.spec.authorization.acls[].operations` field instead of the deprecated `.spec.authorization.acls[].operation`](https://strimzi.io/docs/operators/in-development/deploying.html#con-api-conversion-v1-str).
          * **When rack-awareness is enabled in the `Kafka` custom resource (`.spec.kafka.rack`), Strimzi will not automatically add the best-effort-affinity rules for spreading the Kafka Pods between the zones.**
            Please make sure to set your own `topologySpreadConstraint` or `affinity` rules instead.

          * **From Strimzi 0.48.0, we support only Kubernetes 1.27 and newer.**
            Kubernetes 1.25 and 1.26 are not supported anymore

          ### New in 0.49
          * Support for Kafka 4.0.1 and 4.1.1
          * New v1 API for Strimzi CRDs
          * Refactoring of the KafkaConnect and KafkaMirrorMaker2 custom resources and their structure
          * Changes to how the template fields in Kafka and KafkaNodePool custom resources are handled
          * Removed automatic best-effort affinity rules when rack-awareness is enabled
          * BlockOwnerDeletion is set to true in owner references
          * Support of Buildah for building custom Kafka Connect container images
          * And many more ...
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:928c76a840e7de6f1d9350988238bec7035ed981118e64cfedde4e32d5cb5baf
        - quay.io/strimzi/kaniko-executor@sha256:ba89470b45a49e5e09aaab91a5c3c03ecb14f9013d598bc14b3d756eb9a145b4
        - quay.io/strimzi/buildah@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/kafka-bridge@sha256:53034f64f0b672f10b5bacea1c7a25132f118df7fd5c9032c4dbf702ed93796a
        - quay.io/strimzi/kafka@sha256:8f775ee53622bf68b791c405e40299baa3d845b98e282d1a9269f9466018e990
        - quay.io/strimzi/kafka@sha256:73799dcf5bc7d1bb19f500f345d8892a1f91cf0213e01d9b59d3a1a53cc80aca
        - quay.io/strimzi/kafka@sha256:bfbee54f85beb3731cf41483befa39d8c5ebe5db002df6265c6ea95b6a156749
        - quay.io/strimzi/kafka@sha256:d495d3b6c98d1ea22ed3bdf0d6d06d6cda1c5b35087c817e8cf807892b178520
        - quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
        - quay.io/strimzi/maven-builder@sha256:b8831c2aad621b80dce38484fae353cc5226bfc4dffb0f4c9d8b8d86e0fb3933
        version: 0.49.1
      entries:
      - name: strimzi-cluster-operator.v0.49.1
        version: 0.49.1
      - name: strimzi-cluster-operator.v0.49.0
        version: 0.49.0
      - name: strimzi-cluster-operator.v0.48.0
        version: 0.48.0
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.49.x
    defaultChannel: stable
    packageName: strimzi-kafka-operator
    provider:
      name: Strimzi
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: openshift-builds-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-builds-operator.v1.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "OpenShiftBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "sharedResource": {
                    "state": "Enabled"
                  },
                  "shipwright": {
                    "build": {
                      "state": "Enabled"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.shipwright.io/v1alpha1",
                "kind": "ShipwrightBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "targetNamespace": "openshift-builds"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/openshift-builds/openshift-builds-operator-rhel9
          createdAt: "2025-12-30T13:44:07Z"
          description: Builds for Red Hat OpenShift is a framework for building container
            images on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-builds
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["openshiftbuilds.operator.openshift.io","shipwrightbuilds.operator.shipwright.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/shipwright-io/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OpenShiftBuild describes the desired state of Builds for
              OpenShift, and the status of all deployed components.
            displayName: Open Shift Build
            kind: OpenShiftBuild
            name: openshiftbuilds.operator.openshift.io
            version: v1alpha1
          - description: ShipwrightBuild represents the deployment of Shipwright's
              build controller on a Kubernetes cluster.
            displayName: Shipwright Build
            kind: ShipwrightBuild
            name: shipwrightbuilds.operator.shipwright.io
            version: v1alpha1
        description: "Builds for Red Hat OpenShift is an extensible build framework
          based on the Shipwright project, \nwhich you can use to build container
          images on an OpenShift Container Platform cluster. \nYou can build container
          images from source code and Dockerfile by using image build tools, \nsuch
          as Source-to-Image (S2I), Buildah, and Buildpacks. You can create and apply
          build resources, view logs of build runs, \nand manage builds in your OpenShift
          Container Platform namespaces.\n\n## Prerequisites\n\n* OpenShift Pipelines
          operator must be installed before installing this operator\n\nRead more:
          [https://shipwright.io](https://shipwright.io)\n\n## Features\n\n* Standard
          Kubernetes-native API for building container images from source code and
          Dockerfile\n\n* Support for Source-to-Image (S2I) and Buildah build strategies\n\n*
          Extensibility with your own custom build strategies\n\n* Execution of builds
          from source code in a local directory\n\n* Shipwright CLI for creating and
          viewing logs, and managing builds on the cluster\n\n* Integrated user experience
          with the Developer perspective of the OpenShift Container Platform web console\n"
        displayName: Builds for Red Hat OpenShift Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - build
        - shipwright
        - tekton
        - cicd
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/builds_for_red_hat_openshift/1.4
        - name: Builds for Openshift
          url: https://github.com/redhat-openshift-builds/operator
        maintainers:
        - email: openshift-builds@redhat.com
          name: Red Hat OpenShift Builds Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift-builds/openshift-builds-git-cloner-rhel9@sha256:05c3e7cb8437bbfdbce0caa23eaf19a7fd88b7485cfac710ec05606776d4c426
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-operator-bundle@sha256:2111825788f8e8f63b780c20da94e9b7aa49b505f81e466ad3cd3dc5cec1f775
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-rhel9@sha256:ddedf46115f3dea9e7ef24ebf414e4f16d9fd69b39290d7e66dbb4482208d862
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:ce7050192d9850ed4c35cb3295ccdeec1aa593e27e3a3da6d6aca97cde782abe
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/openshift-builds/openshift-builds-controller-rhel9@sha256:332238b8796ce5441d7ab7e0c99c016c5bd49923549b46b456222c3a763fda69
        - registry.redhat.io/openshift-builds/openshift-builds-image-bundler-rhel9@sha256:58de712d39ab518e2ea41b165b2067bf057335fec58e4becc7c881d04f589b9f
        - registry.redhat.io/openshift-builds/openshift-builds-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        version: 1.6.2
      entries:
      - name: openshift-builds-operator.v1.6.2
        version: 1.6.2
      - name: openshift-builds-operator.v1.6.1
        version: 1.6.1
      - name: openshift-builds-operator.v1.6.0
        version: 1.6.0
      name: builds-1.6
    - currentCSV: openshift-builds-operator.v1.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "OpenShiftBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "sharedResource": {
                    "state": "Enabled"
                  },
                  "shipwright": {
                    "build": {
                      "state": "Enabled"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.shipwright.io/v1alpha1",
                "kind": "ShipwrightBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "targetNamespace": "openshift-builds"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/openshift-builds/openshift-builds-operator-rhel9
          createdAt: "2025-12-30T13:44:07Z"
          description: Builds for Red Hat OpenShift is a framework for building container
            images on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-builds
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["openshiftbuilds.operator.openshift.io","shipwrightbuilds.operator.shipwright.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/shipwright-io/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OpenShiftBuild describes the desired state of Builds for
              OpenShift, and the status of all deployed components.
            displayName: Open Shift Build
            kind: OpenShiftBuild
            name: openshiftbuilds.operator.openshift.io
            version: v1alpha1
          - description: ShipwrightBuild represents the deployment of Shipwright's
              build controller on a Kubernetes cluster.
            displayName: Shipwright Build
            kind: ShipwrightBuild
            name: shipwrightbuilds.operator.shipwright.io
            version: v1alpha1
        description: "Builds for Red Hat OpenShift is an extensible build framework
          based on the Shipwright project, \nwhich you can use to build container
          images on an OpenShift Container Platform cluster. \nYou can build container
          images from source code and Dockerfile by using image build tools, \nsuch
          as Source-to-Image (S2I), Buildah, and Buildpacks. You can create and apply
          build resources, view logs of build runs, \nand manage builds in your OpenShift
          Container Platform namespaces.\n\n## Prerequisites\n\n* OpenShift Pipelines
          operator must be installed before installing this operator\n\nRead more:
          [https://shipwright.io](https://shipwright.io)\n\n## Features\n\n* Standard
          Kubernetes-native API for building container images from source code and
          Dockerfile\n\n* Support for Source-to-Image (S2I) and Buildah build strategies\n\n*
          Extensibility with your own custom build strategies\n\n* Execution of builds
          from source code in a local directory\n\n* Shipwright CLI for creating and
          viewing logs, and managing builds on the cluster\n\n* Integrated user experience
          with the Developer perspective of the OpenShift Container Platform web console\n"
        displayName: Builds for Red Hat OpenShift Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - build
        - shipwright
        - tekton
        - cicd
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/builds_for_red_hat_openshift/1.4
        - name: Builds for Openshift
          url: https://github.com/redhat-openshift-builds/operator
        maintainers:
        - email: openshift-builds@redhat.com
          name: Red Hat OpenShift Builds Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/openshift-builds/openshift-builds-controller-rhel9@sha256:332238b8796ce5441d7ab7e0c99c016c5bd49923549b46b456222c3a763fda69
        - registry.redhat.io/openshift-builds/openshift-builds-operator-bundle@sha256:2111825788f8e8f63b780c20da94e9b7aa49b505f81e466ad3cd3dc5cec1f775
        - registry.redhat.io/openshift-builds/openshift-builds-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:ce7050192d9850ed4c35cb3295ccdeec1aa593e27e3a3da6d6aca97cde782abe
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - registry.redhat.io/openshift-builds/openshift-builds-git-cloner-rhel9@sha256:05c3e7cb8437bbfdbce0caa23eaf19a7fd88b7485cfac710ec05606776d4c426
        - registry.redhat.io/openshift-builds/openshift-builds-image-bundler-rhel9@sha256:58de712d39ab518e2ea41b165b2067bf057335fec58e4becc7c881d04f589b9f
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-rhel9@sha256:ddedf46115f3dea9e7ef24ebf414e4f16d9fd69b39290d7e66dbb4482208d862
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        version: 1.6.2
      entries:
      - name: openshift-builds-operator.v1.6.2
        version: 1.6.2
      - name: openshift-builds-operator.v1.6.1
        version: 1.6.1
      - name: openshift-builds-operator.v1.6.0
        version: 1.6.0
      name: latest
    defaultChannel: latest
    packageName: openshift-builds-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Windup
      provider-url: ""
    name: windup-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: windup-operator.v0.0.25
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
             {
               "apiVersion": "windup.jboss.org/v1",
               "kind": "Windup",
               "metadata": {
                 "name": "windup",
                 "labels": {
                   "application": "windup"
                 }
               },
               "spec": {}
             }
            ]
          capabilities: Basic Install
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/windupeng/windup-operator-native:0.0.25
          createdAt: 01/22/24
          description: Windup is an analysis tool that supports the modernization
            and migration of Java applications.
          imagePullPolicy: Always
          operatorframework.io/suggested-namespace: windup
          repository: https://github.com/windup/windup-operator/
          support: https://issues.redhat.com/projects/WINDUP
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: "Create a Windup Web Console application.  \n\nTo access
              the Windup Web Console application from the \"Developer\" perspective,
              please go to Topology and click on the \"Open URL\" icon on the web-console
              pod.  \n\nAlternatively from the \"Administrator\" perspective, please
              go to Networking->Routes and click on the Location hyperlink.  \n\nKnown
              issue  \nIf you want to customize the Windup Web Console instance's
              parameters and you can not see any in the `Form view`, please switch
              to the `YAML view` and change them as needed.\n"
            displayName: Windup
            kind: Windup
            name: windups.windup.jboss.org
            version: v1
        description: |
          Windup is a web console application that supports large-scale Java application modernization and migration projects across a broad range of transformations and use cases.

          It analyzes application code, supports effort estimation, accelerates code migration, and enables users to move applications to containers.

          For more information please refer to the [https://windup.github.io/](https://windup.github.io/) page.
        displayName: Windup Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - modernization
        - windup
        links:
        - name: Website
          url: https://windup.github.io
        - name: GitHub
          url: https://github.com/windup/windup-operator
        maintainers:
        - email: migrate@redhat.com
          name: Windup
        maturity: alpha
        provider:
          name: Windup
        relatedImages:
        - quay.io/community-operator-pipeline-prod/windup-operator@sha256:4e2bafba54eb01b0ae77555d2ff3da2c34286c7c173756dd20a90de28be36535
        - quay.io/windupeng/windup-operator-native:0.0.25
        version: 0.0.25
      entries:
      - name: windup-operator.v0.0.25
        version: 0.0.25
      - name: windup-operator.v0.0.24
        version: 0.0.24
      - name: windup-operator.v0.0.23
        version: 0.0.23
      - name: windup-operator.v0.0.22
        version: 0.0.22
      - name: windup-operator.v0.0.21
        version: 0.0.21
      - name: windup-operator.v0.0.20
        version: 0.0.20
      - name: windup-operator.v0.0.19
        version: 0.0.19
      - name: windup-operator.v0.0.18
        version: 0.0.18
      - name: windup-operator.v0.0.17
        version: 0.0.17
      - name: windup-operator.v0.0.16
        version: 0.0.16
      - name: windup-operator.v0.0.15
        version: 0.0.15
      - name: windup-operator.v0.0.14
        version: 0.0.14
      - name: windup-operator.v0.0.13
        version: 0.0.13
      - name: windup-operator.v0.0.12
        version: 0.0.12
      - name: windup-operator.v0.0.11
        version: 0.0.11
      name: alpha
    defaultChannel: alpha
    packageName: windup-operator
    provider:
      name: Windup
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: aws-efs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-efs-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"aws-efs.managed.openshift.io/v1alpha1","kind":"SharedVolume","metadata":{"name":"sv1"},"spec":{"accessPointID":
            "fsap-0123456789abcdef", "fileSystemID": "fs-0123cdef"}}]'
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/app-sre/aws-efs-operator:9c87267
          createdAt: "2021-12-20T19:51:50Z"
          description: Manage read-write-many access to AWS EFS volumes in an OpenShift
            cluster.
          repository: https://github.com/openshift/aws-efs-operator
          support: https://github.com/openshift/aws-efs-operator/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Shared Volume
            displayName: SharedVolume
            kind: SharedVolume
            name: sharedvolumes.aws-efs.managed.openshift.io
            version: v1alpha1
        description: |-
          ## About the managed application
          AWS provides Elastic File System, an NFS-based shared storage solution. A couple of mechanisms exist to enable mounting such a file system in containers. Curating these options and making them work in a cluster is nontrivial.
          ## About this Operator
          The aws-efs-operator minimizes the barrier to entry for container use of EFS by:
          - Installing the [AWS EFS CSI Driver](https://github.com/kubernetes-sigs/aws-efs-csi-driver) and supporting infrastructure.
          - Reducing the identification of a shared storage resource to a simple Custom Resource Definition with only two fields.
          - Creating the necessary PersistentVolume and PersistentVolumeClaim resources that can simply be referenced from a Pod specification.

          More information can be found in the operator's [source repository](https://github.com/openshift/aws-efs-operator).
          ## Prerequisites for enabling this Operator
          An OpenShift cluster backed by AWS.
        displayName: AWS EFS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AWS
        - EFS
        - NFS
        - Shared storage
        links:
        - name: README
          url: https://github.com/openshift/aws-efs-operator/blob/master/README.md
        - name: Design
          url: https://github.com/openshift/aws-efs-operator/blob/master/DESIGN.md
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/app-sre/aws-efs-operator:9c87267
        - quay.io/openshift-community-operators/aws-efs-operator@sha256:6372847df81faddc23c938928157c3ac280e537a4eec9f7edd599480260bc566
        version: 0.0.8
      entries:
      - name: aws-efs-operator.v0.0.8
        version: 0.0.8
      name: stable
    defaultChannel: stable
    packageName: aws-efs-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Elastic
      provider-url: ""
    name: elasticsearch-eck-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: elasticsearch-eck-operator-certified.v3.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                    "apiVersion": "elasticsearch.k8s.elastic.co/v1",
                    "kind": "Elasticsearch",
                    "metadata": {
                        "name": "elasticsearch-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "nodeSets": [
                            {
                                "name": "default",
                                "config": {
                                    "node.roles": ["master", "data"],
                                    "node.attr.attr_name": "attr_value",
                                    "node.store.allow_mmap": false
                                },
                                "podTemplate": {
                                    "metadata": {
                                        "labels": {
                                            "foo": "bar"
                                        }
                                    },
                                    "spec": {
                                        "containers": [
                                            {
                                                "name": "elasticsearch",
                                                "resources": {
                                                    "requests": {
                                                        "memory": "4Gi",
                                                        "cpu": 1
                                                    },
                                                    "limits": {
                                                        "memory": "4Gi",
                                                        "cpu": 2
                                                    }
                                                }
                                            }
                                        ]
                                    }
                                },
                                "count": 3
                            }
                        ]
                    }
                },
                {
                    "apiVersion": "kibana.k8s.elastic.co/v1",
                    "kind": "Kibana",
                    "metadata": {
                        "name": "kibana-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        },
                        "podTemplate": {
                            "metadata": {
                                "labels": {
                                    "foo": "bar"
                                }
                            },
                            "spec": {
                                "containers": [
                                    {
                                        "name": "kibana",
                                        "resources": {
                                            "requests": {
                                                "memory": "1Gi",
                                                "cpu": 0.5
                                            },
                                            "limits": {
                                                "memory": "2Gi",
                                                "cpu": 2
                                            }
                                        }
                                    }
                                ]
                            }
                        }
                    }
                },
                {
                    "apiVersion": "apm.k8s.elastic.co/v1",
                    "kind": "ApmServer",
                    "metadata": {
                        "name": "apmserver-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        }
                    }
                },
                {
                    "apiVersion": "enterprisesearch.k8s.elastic.co/v1",
                    "kind": "EnterpriseSearch",
                    "metadata": {
                        "name": "ent-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "config": {
                            "ent_search.external_url": "https://localhost:3002"
                        },
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        }
                    }
                },
                {
                  "apiVersion": "beat.k8s.elastic.co/v1beta1",
                  "kind": "Beat",
                  "metadata": {
                    "name": "heartbeat-sample"
                  },
                  "spec": {
                    "type": "heartbeat",
                    "version": "9.2.0",
                    "elasticsearchRef": {
                      "name": "elasticsearch-sample"
                    },
                    "config": {
                      "heartbeat.monitors": [
                        {
                          "type": "tcp",
                          "schedule": "@every 5s",
                          "hosts": [
                            "elasticsearch-sample-es-http.default.svc:9200"
                          ]
                        }
                      ]
                    },
                    "deployment": {
                      "replicas": 1,
                      "podTemplate": {
                        "spec": {
                          "securityContext": {
                            "runAsUser": 0
                          }
                        }
                      }
                    }
                  }
                },
                {
                  "apiVersion": "agent.k8s.elastic.co/v1alpha1",
                  "kind": "Agent",
                  "metadata": {
                    "name": "agent-sample"
                  },
                  "spec": {
                    "version": "9.2.0",
                    "elasticsearchRefs": [
                      {
                        "name": "elasticsearch-sample"
                      }
                    ],
                    "daemonSet": {},
                    "config": {
                      "inputs": [
                        {
                          "name": "system-1",
                          "revision": 1,
                          "type": "system/metrics",
                          "use_output": "default",
                          "meta": {
                            "package": {
                              "name": "system",
                              "version": "0.9.1"
                            }
                          },
                          "data_stream": {
                            "namespace": "default"
                          },
                          "streams": [
                            {
                              "id": "system/metrics-system.cpu",
                              "data_stream": {
                                "dataset": "system.cpu",
                                "type": "metrics"
                              },
                              "metricsets": [
                                "cpu"
                              ],
                              "cpu.metrics": [
                                "percentages",
                                "normalized_percentages"
                              ],
                              "period": "10s"
                            }
                          ]
                        }
                      ]
                    }
                  }
                },
                {
                    "apiVersion": "maps.k8s.elastic.co/v1alpha1",
                    "kind": "ElasticMapsServer",
                    "metadata": {
                        "name": "ems-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        }
                    }
                },
                {
                    "apiVersion": "logstash.k8s.elastic.co/v1alpha1",
                    "kind": "Logstash",
                    "metadata" : {
                        "name": "logstash-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1
                    }
                }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.connect.redhat.com/elastic/eck-operator@sha256:28925fffef8f7c920b2510810cbcfc0f3dadab5f8a80b01fd5ae500e5c070105
          createdAt: "2025-10-31 20:52:32"
          description: Run Elasticsearch, Kibana, APM Server, Beats, Enterprise Search,
            Elastic Agent, Elastic Maps Server and Logstash on Kubernetes and OpenShift
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: Elastic Basic license
          repository: https://github.com/elastic/cloud-on-k8s
          support: elastic.co
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Elastic Agent instance
            displayName: Elastic Agent
            kind: Agent
            name: agents.agent.k8s.elastic.co
            version: v1alpha1
          - description: APM Server instance
            displayName: APM Server
            kind: ApmServer
            name: apmservers.apm.k8s.elastic.co
            version: v1
          - description: Beats instance
            displayName: Beats
            kind: Beat
            name: beats.beat.k8s.elastic.co
            version: v1beta1
          - description: Elastic Maps Server instance
            displayName: Elastic Maps Server
            kind: ElasticMapsServer
            name: elasticmapsservers.maps.k8s.elastic.co
            version: v1alpha1
          - description: Instance of an Elasticsearch autoscaler
            displayName: Elasticsearch Autoscaler
            kind: ElasticsearchAutoscaler
            name: elasticsearchautoscalers.autoscaling.k8s.elastic.co
            version: v1alpha1
          - description: Instance of an Elasticsearch cluster
            displayName: Elasticsearch Cluster
            kind: Elasticsearch
            name: elasticsearches.elasticsearch.k8s.elastic.co
            version: v1
          - description: Enterprise Search instance
            displayName: Enterprise Search
            kind: EnterpriseSearch
            name: enterprisesearches.enterprisesearch.k8s.elastic.co
            version: v1
          - description: Kibana instance
            displayName: Kibana
            kind: Kibana
            name: kibanas.kibana.k8s.elastic.co
            version: v1
          - description: Logstash instance
            displayName: Logstash
            kind: Logstash
            name: logstashes.logstash.k8s.elastic.co
            version: v1alpha1
          - description: Elastic Stack Config Policy
            displayName: Elastic Stack Config Policy
            kind: StackConfigPolicy
            name: stackconfigpolicies.stackconfigpolicy.k8s.elastic.co
            version: v1alpha1
        description: |-
          Elastic Cloud on Kubernetes (ECK) is the official operator by Elastic for automating the deployment, provisioning, management, and orchestration of Elasticsearch, Kibana, APM Server, Beats, Enterprise Search, Elastic Agent, Elastic Maps Server, and Logstash on Kubernetes.

          Current features:

          *  Elasticsearch, Kibana, APM Server, Enterprise Search, Beats, Elastic Agent, Elastic Maps Server, and Logstash deployments
          *  TLS Certificates management
          *  Safe Elasticsearch cluster configuration and topology changes
          *  Persistent volumes usage
          *  Custom node configuration and attributes
          *  Secure settings keystore updates

          Supported versions:

          * Kubernetes 1.30-1.34
          * OpenShift 4.15-4.19
          * Google Kubernetes Engine (GKE), Azure Kubernetes Service (AKS), and Amazon Elastic Kubernetes Service (EKS)
          * Elasticsearch, Kibana, APM Server: 7.17+, 8+, 9+
          * Enterprise Search: 7.17+, 8+
          * Beats: 7.17+, 8+, 9+
          * Elastic Agent: 7.17+, 8+, 9+
          * Elastic Maps Server: 7.17+, 8+, 9+
          * Logstash 8.12+, 9+

          ECK should work with all conformant installers as listed in these [FAQs](https://github.com/cncf/k8s-conformance/blob/master/faq.md#what-is-a-distribution-hosted-platform-and-an-installer). Distributions include source patches and so may not work as-is with ECK.
          Alpha, beta, and stable API versions follow the same [conventions used by Kubernetes](https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-versioning).
          See the full [Elastic support matrix](https://www.elastic.co/support/matrix#matrix_kubernetes) for more information.
          See the [Quickstart](https://www.elastic.co/guide/en/cloud-on-k8s/3.2/k8s-quickstart.html) to get started with ECK.
        displayName: Elasticsearch (ECK) Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - elasticsearch
        - kibana
        - analytics
        - search
        - database
        - apm
        - logstash
        links:
        - name: Documentation
          url: https://www.elastic.co/guide/en/cloud-on-k8s/3.2/index.html
        maintainers:
        - email: eck@elastic.co
          name: Elastic
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Elastic
        relatedImages:
        - registry.connect.redhat.com/elastic/eck-operator@sha256:28925fffef8f7c920b2510810cbcfc0f3dadab5f8a80b01fd5ae500e5c070105
        - registry.connect.redhat.com/elastic/eck@sha256:815e6949d8b96d832660e6ed715f8fbf080b230f1bccfc3e0f38781585b14eeb
        version: 3.2.0
      entries:
      - name: elasticsearch-eck-operator-certified.v3.2.0
        version: 3.2.0
      - name: elasticsearch-eck-operator-certified.v3.1.0
        version: 3.1.0
      - name: elasticsearch-eck-operator-certified.v3.0.0
        version: 3.0.0
      - name: elasticsearch-eck-operator-certified.v2.16.1
        version: 2.16.1
      - name: elasticsearch-eck-operator-certified.v2.16.0
        version: 2.16.0
      - name: elasticsearch-eck-operator-certified.v2.15.0
        version: 2.15.0
      - name: elasticsearch-eck-operator-certified.v2.14.0
        version: 2.14.0
      - name: elasticsearch-eck-operator-certified.v2.13.0
        version: 2.13.0
      - name: elasticsearch-eck-operator-certified.v2.12.1
        version: 2.12.1
      - name: elasticsearch-eck-operator-certified.v2.12.0
        version: 2.12.0
      - name: elasticsearch-eck-operator-certified.v2.11.1
        version: 2.11.1
      - name: elasticsearch-eck-operator-certified.v2.11.0
        version: 2.11.0
      - name: elasticsearch-eck-operator-certified.v2.10.0
        version: 2.10.0
      - name: elasticsearch-eck-operator-certified.v2.9.0
        version: 2.9.0
      - name: elasticsearch-eck-operator-certified.v2.8.0
        version: 2.8.0
      - name: elasticsearch-eck-operator-certified.v2.7.0
        version: 2.7.0
      - name: elasticsearch-eck-operator-certified.v2.6.2
        version: 2.6.2
      - name: elasticsearch-eck-operator-certified.v2.6.1
        version: 2.6.1
      - name: elasticsearch-eck-operator-certified.v2.5.0
        version: 2.5.0
      - name: elasticsearch-eck-operator-certified.v2.4.0
        version: 2.4.0
      - name: elasticsearch-eck-operator-certified.v2.3.0
        version: 2.3.0
      - name: elasticsearch-eck-operator-certified.v2.2.0
        version: 2.2.0
      - name: elasticsearch-eck-operator-certified.v2.1.0
        version: 2.1.0
      - name: elasticsearch-eck-operator-certified.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: elasticsearch-eck-operator-certified
    provider:
      name: Elastic
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Arctera US LLC
      provider-url: https://www.arctera.io
    name: infoscale-dr-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infoscale-dr-manager.v8.0.220
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com",
                  "resRecord": {
                    "HostName_1": "100.200.30.41",
                    "HostName_2": "100.200.30.43",
                    "abc": "HostName_2",
                    "www": "HostName_1",
                    "xyz": "HostName_3"
                  },
                  "stealthMasters": [
                    "1.2.3.4"
                  ],
                  "tsigKeyFile": "/Kvcslnxdns.com.+157+10641.private"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "dataReplicationPointer": "test-datareplication",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 10,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          olm.skipRange: <8.0.220
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v155481520-155483981)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
            - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v151984431-155483981)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com/
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager-bundle@sha256:5f10cfc1bc8571f44a99d88755adade0743106219673bbdd2e4d3a04ee714778
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager@sha256:a98f9cc51f2c7baeec6dbb4933a42ae8ae20ff1a42c9d48a37174cf5211bbcf8
        version: 8.0.220
      entries:
      - name: infoscale-dr-manager.v8.0.220
        version: 8.0.220
      - name: infoscale-dr-manager.v8.0.100
        version: 8.0.100
      name: 8.0.200x
    - currentCSV: infoscale-dr-manager.v8.0.330
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          createdAt: "2024-06-17T10:14:13Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v155481520-155483981)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v151984431-155483981)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com/
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager-bundle@sha256:9f90cd7ab8c0ab5da6eb12f7f0dbd177df62f07c38fb759a97989899cfcbe75d
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager@sha256:c46cbf78631fc790c77b6c13c1d1d4b5ab35f49164f7c2e36c7ec59220cbdce2
        version: 8.0.330
      entries:
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: 8.0.300x
    - currentCSV: infoscale-dr-manager.v8.0.410
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:7dff20a0aff34e1e66a97c9a39cda883642dd1e94b872c8fc2f62efc7a4db1bb
          createdAt: "2024-02-22T14:14:42Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:7dff20a0aff34e1e66a97c9a39cda883642dd1e94b872c8fc2f62efc7a4db1bb
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:15d6d2d189c8acd42867a8ed6d843b8be819a07e71b42aab24ea5fdb1fd7bfec
        version: 8.0.410
      entries:
      - name: infoscale-dr-manager.v8.0.410
        version: 8.0.410
      - name: infoscale-dr-manager.v8.0.409
        version: 8.0.409
      - name: infoscale-dr-manager.v8.0.400
        version: 8.0.400
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: 8.0.400x
    - currentCSV: infoscale-dr-manager.v9.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:ca65f01cb406bb12faeef07decffe765d1b34954830073d053244a1846a1b24e
          createdAt: "2025-09-12T09:53:51Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API.
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API.
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API.
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API.
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:dc63dad730f6ccee19b6f0ca4274b90fdf8d4ff165bf59501aaf4294ebe139e1
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:ca65f01cb406bb12faeef07decffe765d1b34954830073d053244a1846a1b24e
        version: 9.0.1
      entries:
      - name: infoscale-dr-manager.v9.0.1
        version: 9.0.1
      name: beta
    - currentCSV: infoscale-dr-manager.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
          createdAt: "2025-09-12T09:53:51Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API.
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API.
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API.
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API.
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:85b8dcf4981197a28cfd8a5492668205db2a224369b1b5bfaeea16da619339d2
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
        version: 9.1.0
      entries:
      - name: infoscale-dr-manager.v9.1.0
        version: 9.1.0
      - name: infoscale-dr-manager.v8.0.410
        version: 8.0.410
      - name: infoscale-dr-manager.v8.0.409
        version: 8.0.409
      - name: infoscale-dr-manager.v8.0.400
        version: 8.0.400
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: fast
    - currentCSV: infoscale-dr-manager.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
          createdAt: "2025-09-12T09:53:51Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API.
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API.
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API.
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API.
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:85b8dcf4981197a28cfd8a5492668205db2a224369b1b5bfaeea16da619339d2
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
        version: 9.1.0
      entries:
      - name: infoscale-dr-manager.v9.1.0
        version: 9.1.0
      - name: infoscale-dr-manager.v8.0.410
        version: 8.0.410
      - name: infoscale-dr-manager.v8.0.409
        version: 8.0.409
      - name: infoscale-dr-manager.v8.0.400
        version: 8.0.400
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: stable
    defaultChannel: fast
    packageName: infoscale-dr-manager
    provider:
      name: Arctera US LLC
      url: https://www.arctera.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-pipes-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-pipes-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pipes.services.k8s.aws/v1alpha1",
                "kind": "Pipe",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/pipes-controller:1.2.0
          createdAt: "2025-11-29T03:55:44Z"
          description: AWS EventBridge Pipes controller is a service controller for
            managing Pipes resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Pipe represents the state of an AWS pipes Pipe resource.
            displayName: Pipe
            kind: Pipe
            name: pipes.pipes.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EventBridge Pipes resources in AWS from within your Kubernetes cluster.

          **About Amazon EventBridge Pipes**

          Amazon EventBridge Pipes connects sources to targets. Pipes are intended for point-to-point integrations between supported [sources](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html) and [targets](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-target.html), with support for advanced transformations and [enrichment](https://docs.aws.amazon.com/eventbridge/latest/userguide/pipes-enrichment.html). It reduces the need for specialized knowledge and integration code when developing event-driven architectures, fostering consistency across your company’s applications. To set up a pipe, you choose the source, add optional filtering, define optional enrichment, and choose the target for the event data.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EventBridge Pipes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - pipes
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EventBridge Pipes Developer Resources
          url: https://aws.amazon.com/eventbridge/pipes/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: pipes maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/pipes-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-pipes-controller@sha256:2f105744658b9f0e0a1e09eebecd83f2f9b2511a3e9522b96fca50638e4f38d2
        version: 1.2.0
      entries:
      - name: ack-pipes-controller.v1.2.0
        version: 1.2.0
      - name: ack-pipes-controller.v1.1.3
        version: 1.1.3
      - name: ack-pipes-controller.v1.1.2
        version: 1.1.2
      - name: ack-pipes-controller.v1.1.1
        version: 1.1.1
      - name: ack-pipes-controller.v1.1.0
        version: 1.1.0
      - name: ack-pipes-controller.v1.0.25
        version: 1.0.25
      - name: ack-pipes-controller.v1.0.24
        version: 1.0.24
      - name: ack-pipes-controller.v1.0.23
        version: 1.0.23
      - name: ack-pipes-controller.v1.0.22
        version: 1.0.22
      - name: ack-pipes-controller.v1.0.21
        version: 1.0.21
      - name: ack-pipes-controller.v1.0.20
        version: 1.0.20
      - name: ack-pipes-controller.v1.0.18
        version: 1.0.18
      - name: ack-pipes-controller.v1.0.17
        version: 1.0.17
      - name: ack-pipes-controller.v1.0.16
        version: 1.0.16
      - name: ack-pipes-controller.v1.0.15
        version: 1.0.15
      - name: ack-pipes-controller.v1.0.14
        version: 1.0.14
      - name: ack-pipes-controller.v1.0.13
        version: 1.0.13
      - name: ack-pipes-controller.v1.0.12
        version: 1.0.12
      - name: ack-pipes-controller.v1.0.11
        version: 1.0.11
      - name: ack-pipes-controller.v1.0.10
        version: 1.0.10
      - name: ack-pipes-controller.v1.0.9
        version: 1.0.9
      - name: ack-pipes-controller.v1.0.8
        version: 1.0.8
      - name: ack-pipes-controller.v1.0.6
        version: 1.0.6
      - name: ack-pipes-controller.v1.0.3
        version: 1.0.3
      - name: ack-pipes-controller.v1.0.2
        version: 1.0.2
      - name: ack-pipes-controller.v1.0.1
        version: 1.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-pipes-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: cert-utils-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cert-utils-operator.v1.3.12
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/cert-utils-operator@sha256:0290e7b2800a5aa8eb57b0268908f2a20a93b16403c76df4c61021048161d6ff
          createdAt: "2024-01-23T12:29:04Z"
          description: Set of utilities for TLS certificates
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-utils-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/cert-utils-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Cert utils operator is a set of functionalities around certificates packaged in a [Kubernetes operator](https://github.com/operator-framework/operator-sdk).

          Certificates are assumed to be available in a [secret](https://kubernetes.io/docs/concepts/configuration/secret/) of type `kubernetes.io/tls` (other types of secrets are *ignored* by this operator).
          By convention this type of secrets have three optional entries:

          1. `tls.key`: the private key of the certificate.
          2. `tls.crt`: the actual certificate.
          3. `ca.crt`: the CA bundle that validates the certificate.

          The functionalities are the following:

          1. [Ability to populate route certificates](https://github.com/redhat-cop/cert-utils-operator#Populating-route-certificates)
          2. [Ability to create java keystore and truststore from the certificates](https://github.com/redhat-cop/cert-utils-operator#Creating-java-keystore-and-truststore)
          3. [Ability to show info regarding the certificates](https://github.com/redhat-cop/cert-utils-operator#Showing-info-on-the-certificates)
          4. [Ability to alert when a certificate is about to expire](https://github.com/redhat-cop/cert-utils-operator#Alerting-when-a-certificate-is-about-to-expire)
          5. [Ability to inject ca bundles in ValidatingWebhookConfiguration, MutatingWebhookConfiguration, CustomResourceDefinition object](https://github.com/redhat-cop/cert-utils-operator#CA-injection)

          All these feature are activated via opt-in annotations.
        displayName: Cert Utils Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TLS
        - secrets
        - security
        - certificates
        links:
        - name: Cert Utils Operator
          url: https://github.com/redhat-cop/cert-utils-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/cert-utils-operator
        maintainers:
        - email: rspazzoli@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cert-utils-operator@sha256:92a0c0b893b56330593e0a255b8df61031e92a61d172aecc58be5805d847798a
        - quay.io/redhat-cop/cert-utils-operator@sha256:0290e7b2800a5aa8eb57b0268908f2a20a93b16403c76df4c61021048161d6ff
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.3.12
      entries:
      - name: cert-utils-operator.v1.3.12
        version: 1.3.12
      - name: cert-utils-operator.v1.3.11
        version: 1.3.11
      - name: cert-utils-operator.v1.3.10
        version: 1.3.10
      - name: cert-utils-operator.v1.3.9
        version: 1.3.9
      - name: cert-utils-operator.v1.3.8
        version: 1.3.8
      - name: cert-utils-operator.v1.3.7
        version: 1.3.7
      - name: cert-utils-operator.v1.3.6
        version: 1.3.6
      - name: cert-utils-operator.v1.3.5
        version: 1.3.5
      - name: cert-utils-operator.v1.3.4
        version: 1.3.4
      - name: cert-utils-operator.v1.3.3
        version: 1.3.3
      - name: cert-utils-operator.v1.3.2
        version: 1.3.2
      - name: cert-utils-operator.v1.3.1
        version: 1.3.1
      - name: cert-utils-operator.v1.3.0
        version: 1.3.0
      - name: cert-utils-operator.v1.2.0
        version: 1.2.0
      - name: cert-utils-operator.v1.1.0
        version: 1.1.0
      - name: cert-utils-operator.v1.0.7
        version: 1.0.7
      - name: cert-utils-operator.v1.0.6
        version: 1.0.6
      - name: cert-utils-operator.v1.0.5
        version: 1.0.5
      - name: cert-utils-operator.v1.0.4
        version: 1.0.4
      - name: cert-utils-operator.v1.0.3
        version: 1.0.3
      - name: cert-utils-operator.v1.0.2
        version: 1.0.2
      - name: cert-utils-operator.v1.0.1
        version: 1.0.1
      - name: cert-utils-operator.v1.0.0
        version: 1.0.0
      - name: cert-utils-operator.v0.2.2
        version: 0.2.2
      - name: cert-utils-operator.v0.2.1
        version: 0.2.1
      - name: cert-utils-operator.v0.2.0
        version: 0.2.0
      - name: cert-utils-operator.v0.1.1
        version: 0.1.1
      - name: cert-utils-operator.v0.1.0
        version: 0.1.0
      - name: cert-utils-operator.v0.0.3
        version: 0.0.3
      - name: cert-utils-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: cert-utils-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: ""
    name: percona-xtradb-cluster-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-xtradb-cluster-operator.v1.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pxc.percona.com/v1-9-0",
                "kind": "PerconaXtraDBCluster",
                "metadata": {
                  "name": "cluster1",
                  "finalizers": [
                    "delete-pxc-pods-in-order"
                  ]
                },
                "spec": {
                  "crVersion": "1.9.0",
                  "secretsName": "my-cluster-secrets",
                  "vaultSecretName": "keyring-secret-vault",
                  "sslSecretName": "my-cluster-ssl",
                  "sslInternalSecretName": "my-cluster-ssl-internal",
                  "logCollectorSecretName": "my-log-collector-secrets",
                  "allowUnsafeConfigurations": false,
                  "updateStrategy": "SmartUpdate",
                  "upgradeOptions": {
                    "versionServiceEndpoint": "https://check.percona.com",
                    "apply": "8.0-recommended",
                    "schedule": "0 4 * * *"
                  },
                  "pxc": {
                    "size": 3,
                    "image": "percona/percona-xtradb-cluster:8.0.23-14.1",
                    "autoRecovery": true,
                    "resources": {
                      "requests": {
                        "memory": "1G",
                        "cpu": "600m"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "volumeSpec": {
                      "persistentVolumeClaim": {
                        "resources": {
                          "requests": {
                            "storage": "6G"
                          }
                        }
                      }
                    },
                    "gracePeriod": 600
                  },
                  "haproxy": {
                    "enabled": true,
                    "size": 3,
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-haproxy",
                    "resources": {
                      "requests": {
                        "memory": "1G",
                        "cpu": "600m"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "gracePeriod": 30
                  },
                  "proxysql": {
                    "enabled": false,
                    "size": 3,
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-proxysql",
                    "resources": {
                      "requests": {
                        "memory": "1G",
                        "cpu": "600m"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "volumeSpec": {
                      "persistentVolumeClaim": {
                        "resources": {
                          "requests": {
                            "storage": "2G"
                          }
                        }
                      }
                    },
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "gracePeriod": 30
                  },
                  "logcollector": {
                    "enabled": true,
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-logcollector"
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "percona/pmm-client:2.18.0",
                    "serverHost": "monitoring-service",
                    "serverUser": "admin"
                  },
                  "backup": {
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-pxc8.0-backup",
                    "pitr": {
                      "enabled": false,
                      "storageName": "STORAGE-NAME-HERE",
                      "timeBetweenUploads": 60
                    },
                    "storages": {
                      "s3-us-west": {
                        "type": "s3",
                        "s3": {
                          "bucket": "S3-BACKUP-BUCKET-NAME-HERE",
                          "credentialsSecret": "my-cluster-name-backup-s3",
                          "region": "us-west-2"
                        }
                      },
                      "fs-pvc": {
                        "type": "filesystem",
                        "volume": {
                          "persistentVolumeClaim": {
                            "accessModes": [
                              "ReadWriteOnce"
                            ],
                            "resources": {
                              "requests": {
                                "storage": "6G"
                              }
                            }
                          }
                        }
                      }
                    },
                    "schedule": [
                      {
                        "name": "sat-night-backup",
                        "schedule": "0 0 * * 6",
                        "keep": 3,
                        "storageName": "s3-us-west"
                      },
                      {
                        "name": "daily-backup",
                        "schedule": "0 0 * * *",
                        "keep": 5,
                        "storageName": "fs-pvc"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "fs-pvc"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1alpha1",
                "kind": "PerconaXtraDBBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "s3-us-west"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterRestore",
                "metadata": {
                  "name": "restore1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "backupName": "backup1"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "fs-pvc"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1alpha1",
                "kind": "PerconaXtraDBBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "s3-us-west"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterRestore",
                "metadata": {
                  "name": "restore1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "backupName": "backup1"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: percona/percona-xtradb-cluster-operator:1.9.0
          createdAt: "2021-10-14T13:11:44.000Z"
          description: Percona Distribution for Mysql Operator manages the lifecycle
            of Percona XtraDB cluster instances.
          repository: https://github.com/percona/percona-xtradb-cluster-operator
          support: Percona
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instance of a Percona XtraDB Cluster
            displayName: PerconaXtraDBCluster
            kind: PerconaXtraDBCluster
            name: perconaxtradbclusters.pxc.percona.com
            version: v1-9-0
          - description: Instance of a Percona XtraDB Cluster Backup
            displayName: PerconaXtraDBClusterBackup
            kind: PerconaXtraDBClusterBackup
            name: perconaxtradbclusterbackups.pxc.percona.com
            version: v1
          - description: Instance of a Percona XtraDB Cluster Restore
            displayName: PerconaXtraDBClusterRestore
            kind: PerconaXtraDBClusterRestore
            name: perconaxtradbclusterrestores.pxc.percona.com
            version: v1
          - description: (Legacy) Instance of a Percona XtraDB Cluster Backup
            displayName: PerconaXtraDBBackup
            kind: PerconaXtraDBBackup
            name: perconaxtradbbackups.pxc.percona.com
            version: v1alpha1
        description: |2+

          ## Percona is Cloud Native

          Percona Distribution for Mysql Operator is an open-source drop in replacement for MySQL Enterprise with synchronous replication running on Kubernetes. It automates the deployment and management of the members in your Percona XtraDB Cluster environment. It can be used to instantiate a new Percona XtraDB Cluster, or to scale an existing environment.
          Consult the [documentation](https://percona.github.io/percona-xtradb-cluster-operator/) on the Percona Distribution for Mysql Operator for complete details on capabilities and options.

          ### Supported Features

          * **Scale Your Cluster**  change the `size` parameter to [add or remove members](https://percona.github.io/percona-xtradb-cluster-operator/install/scaling) of the cluster. Three is the minimum recommended size for a functioning cluster.

          * **Automate Your Backups**  [configure cluster backups](https://percona.github.io/percona-xtradb-cluster-operator/configure/operator) to run on a scheduled basis. Backups can be stored on a persistent volume or S3-compatible storage. Leverage [Point-in-time recovery](https://www.percona.com/doc/kubernetes-operator-for-pxc/backups.html#storing-binary-logs-for-point-in-time-recovery) to reduce RPO/RTO.
          * **Proxy integration**  choose HAProxy or ProxySQL as a proxy in front of the Percona XtraDB Cluster. Proxies are deployed and configured automatically with the Operator.
          ### Common Configurations

          * **Set Resource Limits** - set limitation on requests to CPU and memory resources.

          * **Customize Storage** - set the desired Storage Class and Access Mode for your database cluster data.

          * **Control Scheduling** - define how your PXC Pods are scheduled onto the K8S cluster with tolerations, pod disruption budgets, node selector and affinity settings.
          * Automatic synchronization of MySQL users with ProxySQL
          * Fully automated minor version updates (Smart Update)
          * Update Reader members before Writer member at cluster upgrades
          * Support MySQL versions 5.7 and 8.0
          ### Before You Start

          Add the PXC user `Secret` to Kubernetes. User information must be placed in the data section of the `secrets.yaml`
          file with Base64-encoded logins and passwords for the user accounts.

          Below is a sample `secrets.yaml` file for the correct formatting.

          ```
          apiVersion: v1
          kind: Secret
          metadata:
            name: my-cluster-secrets
          type: Opaque
          data:
            root: cm9vdF9wYXNzd29yZA==
            xtrabackup: YmFja3VwX3Bhc3N3b3Jk
            monitor: bW9uaXRvcg==
            clustercheck: Y2x1c3RlcmNoZWNrcGFzc3dvcmQ=
            proxyadmin: YWRtaW5fcGFzc3dvcmQ=
            pmmserver: c3VwYXxefHBheno=
            operator: b3BlcmF0b3JhZG1pbg==
          ```
          ###  Release Highlights

          * Starting from this release, the Operator changes its official name to Percona Distribution for MySQL Operator.
            This new name emphasizes gradual changes which incorporated a collection of Percona’s solutions to run and operate Percona Server for MySQL and Percona XtraDB Cluster, available separately as Percona Distribution for MySQL.
            Now you can see HAProxy metrics in your favorite Percona Monitoring and Management (PMM) dashboards automatically.
          * The cross-site replication feature allows an asynchronous replication between two Percona XtraDB Clusters, including scenarios when one of the clusters is outside of the Kubernetes environment.
            The feature is intended for the following use cases:
              * provide migrations of your Percona XtraDB Cluster to Kubernetes or vice versa,
              * migrate regular MySQL database to Percona XtraDB Cluster under the Operator control, or carry on backward migration,
              * enable disaster recovery capability for your cluster deployment.

        displayName: Percona XtraDB Cluster Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mysql
        - percona
        - database
        - pxc
        - galera
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://percona.github.io/percona-xtradb-cluster-operator/
        - name: Github
          url: https://github.com/percona/percona-xtradb-cluster-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
        relatedImages:
        - percona/percona-xtradb-cluster-operator:1.9.0
        - quay.io/openshift-community-operators/percona-xtradb-cluster-operator@sha256:6138612eaecaac82239d52c2f4eecddcba3aa83d2986cf05b0f01903b72844e6
        version: 1.9.0
      entries:
      - name: percona-xtradb-cluster-operator.v1.9.0
        version: 1.9.0
      name: stable
    defaultChannel: stable
    packageName: percona-xtradb-cluster-operator
    provider:
      name: Percona
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-secretsmanager-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-secretsmanager-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "secretsmanager.services.k8s.aws/v1alpha1",
                "kind": "Secret",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/secretsmanager-controller:1.2.0
          createdAt: "2025-11-29T04:50:21Z"
          description: AWS Secrets Manager controller is a service controller for
            managing Secrets Manager resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Secret represents the state of an AWS secretsmanager Secret
              resource.
            displayName: Secret
            kind: Secret
            name: secrets.secretsmanager.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Secrets Manager resources in AWS from within your Kubernetes cluster.

          **About Amazon Secrets Manager**

          AWS Secrets Manager helps you manage, retrieve, and rotate database credentials, application credentials, OAuth tokens, API keys, and other secrets throughout their lifecycles. [Many AWS services that use secrets](https://docs.aws.amazon.com/secretsmanager/latest/userguide/integrating.html) store them in Secrets Manager.

          Secrets Manager helps you improve your security posture, because you no longer need hard-coded credentials in application source code. Storing the credentials in Secrets Manager helps avoid possible compromise by anyone who can inspect your application or the components. You replace hard-coded credentials with a runtime call to the Secrets Manager service to retrieve credentials dynamically when you need them.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Secrets Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secretsmanager
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Secrets Manager Developer Resources
          url: https://aws.amazon.com/secrets-manager/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: secretsmanager maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/secretsmanager-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-secretsmanager-controller@sha256:0ef52e0e1cfddc7f8f6fcb65b21299e50c5ce34d0391e4c21e36e1abf2d5f04d
        version: 1.2.0
      entries:
      - name: ack-secretsmanager-controller.v1.2.0
        version: 1.2.0
      - name: ack-secretsmanager-controller.v1.1.2
        version: 1.1.2
      - name: ack-secretsmanager-controller.v1.1.1
        version: 1.1.1
      - name: ack-secretsmanager-controller.v1.1.0
        version: 1.1.0
      - name: ack-secretsmanager-controller.v1.0.14
        version: 1.0.14
      - name: ack-secretsmanager-controller.v1.0.13
        version: 1.0.13
      - name: ack-secretsmanager-controller.v1.0.12
        version: 1.0.12
      - name: ack-secretsmanager-controller.v1.0.11
        version: 1.0.11
      - name: ack-secretsmanager-controller.v1.0.10
        version: 1.0.10
      - name: ack-secretsmanager-controller.v1.0.9
        version: 1.0.9
      - name: ack-secretsmanager-controller.v1.0.8
        version: 1.0.8
      - name: ack-secretsmanager-controller.v1.0.7
        version: 1.0.7
      - name: ack-secretsmanager-controller.v1.0.6
        version: 1.0.6
      - name: ack-secretsmanager-controller.v1.0.5
        version: 1.0.5
      - name: ack-secretsmanager-controller.v1.0.4
        version: 1.0.4
      - name: ack-secretsmanager-controller.v1.0.3
        version: 1.0.3
      - name: ack-secretsmanager-controller.v1.0.1
        version: 1.0.1
      - name: ack-secretsmanager-controller.v1.0.0
        version: 1.0.0
      - name: ack-secretsmanager-controller.v0.0.11
        version: 0.0.11
      - name: ack-secretsmanager-controller.v0.0.10
        version: 0.0.10
      - name: ack-secretsmanager-controller.v0.0.9
        version: 0.0.9
      - name: ack-secretsmanager-controller.v0.0.8
        version: 0.0.8
      - name: ack-secretsmanager-controller.v0.0.7
        version: 0.0.7
      - name: ack-secretsmanager-controller.v0.0.2
        version: 0.0.2
      - name: ack-secretsmanager-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-secretsmanager-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Skupper Project
      provider-url: https://skupper.io
    name: skupper-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: alpha
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1
    - currentCSV: skupper-operator.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:e5f8b2ddf378cf3e40f4c7b7ec8482eb3321947cd46481c868d727932c449d78
          createdAt: "2024-02-26T18:22:07Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/flow-collector@sha256:3870c5bc89e623b7cebe21856bfefc22de76313705efa0ec551a5963789fff3b
        - quay.io/skupper/service-controller@sha256:345edf2d9d72b5a97bcce0e8cea8cda82d120f7bf83756d73f9ac114c2fcced8
        - quay.io/skupper/site-controller@sha256:e5f8b2ddf378cf3e40f4c7b7ec8482eb3321947cd46481c868d727932c449d78
        - quay.io/skupper/skupper-router@sha256:bf8d5955ce4e406275a4934278efe51c1af9a1a269a70e8fe642b7d94d80cb81
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:3a96ab2db995d24a9ca064b5566821828d6e73ea20df77c9932d8972cb8e5780
        - quay.io/openshift/origin-oauth-proxy@sha256:a7dff785d821acc4b972d94964947713fade45f007dedb5deee17a2869bf5d24
        - quay.io/prometheus/prometheus@sha256:d2ab0a27783fd4ad96a8853e2847b99a0be0043687b8a5d1ebfb2dd3fa4fd1b8
        - quay.io/skupper/config-sync@sha256:659fe28d1df7c99bba3bb854b1e9991c715ae4de99d91c88d5db5e4f9ef4c852
        version: 1.6.0
      entries:
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.6
    - currentCSV: skupper-operator.v1.7.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:4809db7263d77a95797061798e910f1bdbb5d5fe2db2bb3c743b97f5d0c7b3af
          createdAt: "2024-06-12T14:36:59Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/config-sync@sha256:a884b26a32179af5a2bfa85118bf873852eec6e2930e92da778b57506c0a0880
        - quay.io/skupper/flow-collector@sha256:bf646b0cb75e1c29bbe0261aa9943e06d33118f5e6a5ccb7503c60c974167692
        - quay.io/skupper/service-controller@sha256:624e88e695297df28e485db7e802945ad1978ac6b0c9e9edca8b5e6013af8991
        - quay.io/skupper/site-controller@sha256:4809db7263d77a95797061798e910f1bdbb5d5fe2db2bb3c743b97f5d0c7b3af
        - quay.io/skupper/skupper-router@sha256:5eb258a0927e7706e7c035f1def2eb5211c8c33dd371fafa7210517fd894f68b
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:c2b996e8dac2f4c81a3e48e4203499f48e4e15d0692e98d61dc8c97192e0a776
        - quay.io/openshift/origin-oauth-proxy@sha256:a7dff785d821acc4b972d94964947713fade45f007dedb5deee17a2869bf5d24
        - quay.io/prometheus/prometheus@sha256:d2ab0a27783fd4ad96a8853e2847b99a0be0043687b8a5d1ebfb2dd3fa4fd1b8
        version: 1.7.1
      entries:
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.7
    - currentCSV: skupper-operator.v1.8.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:ffe3ea5067d350b64b69120bdf6d9e3ee9a30e8a2559b77170a10d66635623b8
          createdAt: "2025-03-27T20:11:53Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/skupper-router@sha256:7633b143f1844ee559322e4642ca80e8248a08711c8e814d489c26c39ecf9bd0
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:68eb666168d3a41cc98f91a0f2d74656af73cf76ec2cbe2cc308ae2ffab84875
        - quay.io/openshift/origin-oauth-proxy@sha256:c15baf57dbd17dcc517cd2fa2299462d62124f689d6f5a48a3c9fd154fc77ccf
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:9e96d6a585f037f60ca3d89b5efee27ec92444d353e8b289ca35b94aeed1e309
        - quay.io/skupper/flow-collector@sha256:252244ab6aaf6b80118bfc06b690d4f5e8d7829b999fca60d194a84452fee7f6
        - quay.io/skupper/service-controller@sha256:a45de211b8f8a8294a3588932a0a72766cf0d5ce64b01f4f744832c8d09aaa46
        - quay.io/skupper/site-controller@sha256:ffe3ea5067d350b64b69120bdf6d9e3ee9a30e8a2559b77170a10d66635623b8
        version: 1.8.4
      entries:
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.8
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.9
    defaultChannel: stable
    packageName: skupper-operator
    provider:
      name: Skupper Project
      url: https://skupper.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: submariner.io
      provider-url: ""
    name: submariner
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: submariner.v0.21.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Broker",
                "metadata": {
                  "name": "submariner-broker"
                },
                "spec": {
                  "components": [
                    "service-discovery",
                    "connectivity"
                  ],
                  "defaultGlobalnetClusterSize": 8192,
                  "globalnetEnabled": false
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "ServiceDiscovery",
                "metadata": {
                  "name": "servicediscovery"
                },
                "spec": {
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "clusterID": "cluster1",
                  "debug": false,
                  "globalnetEnabled": false,
                  "namespace": "submariner-operator",
                  "repository": "quay.io/submariner",
                  "version": "v0.21.2"
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Submariner",
                "metadata": {
                  "name": "submariner"
                },
                "spec": {
                  "broker": "k8s",
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "cableDriver": "libreswan",
                  "ceIPSecDebug": false,
                  "ceIPSecIKEPort": 500,
                  "ceIPSecNATTPort": 4500,
                  "ceIPSecPSK": "$(IPSEC_PSK)",
                  "clusterCIDR": "192.168.67.0/24",
                  "clusterID": "cluster1",
                  "connectionHealthCheck": {
                    "enabled": false,
                    "intervalSeconds": 1,
                    "maxPacketLossCount": 5
                  },
                  "debug": false,
                  "globalCIDR": "",
                  "namespace": "submariner-operator",
                  "natEnabled": true,
                  "repository": "quay.io/submariner",
                  "serviceCIDR": "192.168.66.0/24",
                  "serviceDiscoveryEnabled": true,
                  "version": "v0.21.2"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: $(SUBMARINER_OPERATOR_IMAGE)
          createdAt: "2025-11-18 12:44:16"
          description: Creates and manages Submariner deployments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: submariner-operator
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/submariner-io/submariner-operator
          support: Submariner
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Broker is the Schema for the brokers API.
            displayName: Submariner Broker
            kind: Broker
            name: brokers.submariner.io
            version: v1alpha1
          - description: ServiceDiscovery is the Schema for the servicediscoveries
              API.
            displayName: Service Discovery
            kind: ServiceDiscovery
            name: servicediscoveries.submariner.io
            version: v1alpha1
          - description: Submariner is the Schema for the submariners API.
            displayName: Submariner
            kind: Submariner
            name: submariners.submariner.io
            version: v1alpha1
        description: |
          [Submariner](https://submariner.io) enables direct networking between Pods and Services in different Kubernetes
          clusters. With Submariner, your applications and services can span multiple cloud providers, data centers, and regions.

          Submariner is designed to be cloud provider and network plugin (CNI) agnostic.

          Submariner consists of several main components that work in conjunction to securely connect workloads across
          multiple Kubernetes clusters, both on-premise and on public clouds:
          * [Gateway Engine](https://submariner.io/getting-started/architecture/gateway-engine/): manages the secure tunnels to other clusters.
          * [Route Agent](https://submariner.io/getting-started/architecture/route-agent/): routes cross-cluster traffic from nodes
          to the active Gateway Engine.
          * [Broker](https://submariner.io/getting-started/architecture/broker/): facilitates the exchange of metadata between Gateway
          Engines enabling them to discover one another.

          Submariner has optional components that provide additional functionality:
          * [Globalnet Controller](https://submariner.io/getting-started/architecture/globalnet/): handles overlapping CIDRs across clusters.
          * [Service Discovery](https://submariner.io/getting-started/architecture/service-discovery/): provides DNS discovery of services
          across clusters.

          ### Prerequisites
          Submariner has a few requirements to get started, all are documented [here](https://submariner.io/getting-started/quickstart/kind/#prerequisites).

          If running on an OpenShift cluster, perform the following steps to bind the Submariner service accounts to the **privileged** SCC.

          ```shell
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-gateway
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-routeagent
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-globalnet
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-lighthouse-coredns
          ```

          ### Deployment
          Submariner provides an [Operator](https://github.com/submariner-io/submariner-operator) for easy API-based
          installation and management.
          A command line utility, [subctl](https://github.com/submariner-io/submariner-operator/releases), wraps the
          Operator to aid users with manual deployments and easy experimentation.
          subctl greatly simplifies the deployment of Submariner, and is therefore the recommended deployment method.
          For complete information about subctl, please refer to [this page](https://submariner.io/operations/deployment/subctl).
          In addition to Operator and subctl, Submariner also provides [Helm Charts](https://submariner.io/operations/deployment/helm).

          On the broker cluster:
          1. Create the broker namespace called `submariner-k8s-broker`.
          2. Apply the broker RBAC definitions:

              ```shell
              git clone --depth 1 --single-branch --branch release-0.21 https://github.com/submariner-io/submariner-operator
              kubectl apply -k submariner-operator/config/broker -n submariner-k8s-broker
              ```

          3. Install the Submariner Operator from the catalog.
          4. Create a new `Broker` custom resource named **submariner-broker**.

          On connected clusters:
          1. Install the Submariner Operator from the catalog.
          2. Create a new `Submariner` custom resource named **submariner**.

          The following values can be specified for the **Broker** CR:
          * **defaultCustomDomains**: List of domains to use for multicluster service discovery.
          * **defaultGlobalnetClusterSize**: Default cluster size for GlobalCIDR allocated to each cluster (amount of global IPs).
          * **globalnetEnabled**: Enable support for Overlapping CIDRs in connecting clusters (default disabled).
          * **globalnetCIDRRange**: GlobalCIDR supernet range for allocating GlobalCIDRs to each cluster.
          * **components**: List of components to be installed [service-discovery, connectivity].

          The following values can be specified for the **Submariner** CR:
          * **namespace**: The namespace to install in.
          * **serviceCIDR**: The service CIDR.
          * **clusterCIDR**: The cluster CIDR.
          * **clusterID**: The cluster ID used to identify the tunnels.
          * **colorCodes**: The color code(s) for the cluster.
          * **debug**: *'true'* to enable operator debugging information - verbose logging.
          * **natEnabled**: *'true'* if there is NAT between clusters. Typically *'true'* in public cloud or mixed on-prem/public cloud environments and *'false'* when all clusters are on-prem.
          * **broker**: This must be *k8s* currently.
          * **brokerK8sApiServer**: The broker API server URL.
              To retrieve it run the following command on the broker cluster:

              `kubectl -n default get endpoints kubernetes -o
              jsonpath="{.subsets[0].addresses[0].ip}:{.subsets[0].ports[?(@.name=='https')].port}"`

          * **brokerK8sApiServerToken**: The broker API server token.
              To retrieve the token run the following command on the broker cluster, assuming the broker is running in the
              *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data.token != null)] | .[0].data.token' | base64 --decode`

          * **brokerK8sRemoteNamespace**: The broker namespace.
          * **brokerK8sCA**: The broker certificate authority.
              To retrieve the broker CA run the following command on the broker cluster, assuming the broker is running in
              the *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data."ca.crt" != null)] | .[0].data."ca.crt"' | base64 --decode`

          * **ceIPSecPSK**: The IPsec Pre-Shared Key which must be identical in all route agents across the cluster.
              To generate a unique PSK run the following command on your machine:

              `dd if=/dev/urandom count=64 bs=8 | LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 64 | head -n 1`

          * **ceIPSecDebug**: *'true'* to enable logging IPsec debugging information - verbose logging from the IPsec daemon.
          * **ceIPSecIKEPort**: The IPsec IKE port (500 usually).
          * **ceIPSecNATTPort**: The IPsec NAT traversal port (4500 usually).
          * **repository**: The container repository to use.
          * **version**: The container version to use.
          * **imageOverrides**: A string map that overrides the images by defining a path for each component.
                                This field is meant to be used by CI, development or testing.

            **example:**

            ```yaml
            imageOverrides:
              submariner-route-agent=my_repo/my_custom_image:my_tag
              submariner-globalnet=my_repo/my_custom_image:my_tag
            ```
        displayName: Submariner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multi-cluster
        - ipsec
        - tunnel
        - submariner-operator
        links:
        - name: Website
          url: https://submariner.io
        - name: GitHub
          url: https://github.com/submariner-io
        - name: Slack
          url: https://kubernetes.slack.com/archives/C010RJV694M
        - name: YouTube
          url: https://www.youtube.com/channel/UCZ3brSgl2v4boglZoeChClQ/videos
        - name: Twitter
          url: https://twitter.com/submarinerio
        maintainers:
        - email: submariner-dev@googlegroups.com
          name: Submariner project
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: submariner.io
        relatedImages:
        - registry.redhat.io/rhacm2/lighthouse-coredns-rhel9@sha256:37fb020f4e261f01205d9937375958f9ae679dcbae6d6f44a6a3b037ca37daf5
        - registry.redhat.io/rhacm2/nettest-rhel9@sha256:216411b2b30bcbd993553d1e6e801aee2a8d059ff77a2daf34d7f89e2897a87a
        - registry.redhat.io/rhacm2/submariner-gateway-rhel9@sha256:86eb47f7db45c51fc334e12a95ccbcc955d36cff55d302e9b835df0198881ed6
        - registry.redhat.io/rhacm2/submariner-globalnet-rhel9@sha256:f8223f48bca9166c8be441158c8eeffbcf6f4dff55b3bb47c05edfcc001569e8
        - registry.redhat.io/rhacm2/submariner-rhel9-operator@sha256:c18f75ecce7a2ff854ce438110c0441d7ca94c92fd0f6544694921f28d9ae815
        - registry.redhat.io/rhacm2/submariner-route-agent-rhel9@sha256:9d57f677f46236a94987223783d88a61101e8eb44bdb72420c1480fa8f39fd67
        - registry.redhat.io/rhacm2/submariner-operator-bundle@sha256:bee92e4e7d305ab6f48d4a06fa7130f59ceebd004bbe802cd41a1eb4ffb98aee
        - registry.redhat.io/rhacm2/lighthouse-agent-rhel9@sha256:b3d220c9f8dd7ce3f4a2a01365ead67d8306a677e4ed292ad075ae81b90939dd
        version: 0.21.2
      entries:
      - name: submariner.v0.21.2
        version: 0.21.2
      - name: submariner.v0.21.0
        version: 0.21.0
      name: stable-0.21
    - currentCSV: submariner.v0.22.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Broker",
                "metadata": {
                  "name": "submariner-broker"
                },
                "spec": {
                  "components": [
                    "service-discovery",
                    "connectivity"
                  ],
                  "defaultGlobalnetClusterSize": 8192,
                  "globalnetEnabled": false
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "ServiceDiscovery",
                "metadata": {
                  "name": "servicediscovery"
                },
                "spec": {
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "clusterID": "cluster1",
                  "debug": false,
                  "globalnetEnabled": false,
                  "namespace": "submariner-operator",
                  "repository": "quay.io/submariner",
                  "version": "v0.22.0"
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Submariner",
                "metadata": {
                  "name": "submariner"
                },
                "spec": {
                  "broker": "k8s",
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "cableDriver": "libreswan",
                  "ceIPSecDebug": false,
                  "ceIPSecIKEPort": 500,
                  "ceIPSecNATTPort": 4500,
                  "ceIPSecPSK": "$(IPSEC_PSK)",
                  "clusterCIDR": "192.168.67.0/24",
                  "clusterID": "cluster1",
                  "connectionHealthCheck": {
                    "enabled": false,
                    "intervalSeconds": 1,
                    "maxPacketLossCount": 5
                  },
                  "debug": false,
                  "globalCIDR": "",
                  "namespace": "submariner-operator",
                  "natEnabled": true,
                  "repository": "quay.io/submariner",
                  "serviceCIDR": "192.168.66.0/24",
                  "serviceDiscoveryEnabled": true,
                  "version": "v0.22.0"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: $(SUBMARINER_OPERATOR_IMAGE)
          createdAt: "2025-12-04 09:45:04"
          description: Creates and manages Submariner deployments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: submariner-operator
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/submariner-io/submariner-operator
          support: Submariner
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Broker is the Schema for the brokers API.
            displayName: Submariner Broker
            kind: Broker
            name: brokers.submariner.io
            version: v1alpha1
          - description: ServiceDiscovery is the Schema for the servicediscoveries
              API.
            displayName: Service Discovery
            kind: ServiceDiscovery
            name: servicediscoveries.submariner.io
            version: v1alpha1
          - description: Submariner is the Schema for the submariners API.
            displayName: Submariner
            kind: Submariner
            name: submariners.submariner.io
            version: v1alpha1
        description: |
          [Submariner](https://submariner.io) enables direct networking between Pods and Services in different Kubernetes
          clusters. With Submariner, your applications and services can span multiple cloud providers, data centers, and regions.

          Submariner is designed to be cloud provider and network plugin (CNI) agnostic.

          Submariner consists of several main components that work in conjunction to securely connect workloads across
          multiple Kubernetes clusters, both on-premise and on public clouds:
          * [Gateway Engine](https://submariner.io/getting-started/architecture/gateway-engine/): manages the secure tunnels to other clusters.
          * [Route Agent](https://submariner.io/getting-started/architecture/route-agent/): routes cross-cluster traffic from nodes
          to the active Gateway Engine.
          * [Broker](https://submariner.io/getting-started/architecture/broker/): facilitates the exchange of metadata between Gateway
          Engines enabling them to discover one another.

          Submariner has optional components that provide additional functionality:
          * [Globalnet Controller](https://submariner.io/getting-started/architecture/globalnet/): handles overlapping CIDRs across clusters.
          * [Service Discovery](https://submariner.io/getting-started/architecture/service-discovery/): provides DNS discovery of services
          across clusters.

          ### Prerequisites
          Submariner has a few requirements to get started, all are documented [here](https://submariner.io/getting-started/quickstart/kind/#prerequisites).

          If running on an OpenShift cluster, perform the following steps to bind the Submariner service accounts to the **privileged** SCC.

          ```shell
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-gateway
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-routeagent
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-globalnet
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-lighthouse-coredns
          ```

          ### Deployment
          Submariner provides an [Operator](https://github.com/submariner-io/submariner-operator) for easy API-based
          installation and management.
          A command line utility, [subctl](https://github.com/submariner-io/submariner-operator/releases), wraps the
          Operator to aid users with manual deployments and easy experimentation.
          subctl greatly simplifies the deployment of Submariner, and is therefore the recommended deployment method.
          For complete information about subctl, please refer to [this page](https://submariner.io/operations/deployment/subctl).
          In addition to Operator and subctl, Submariner also provides [Helm Charts](https://submariner.io/operations/deployment/helm).

          On the broker cluster:
          1. Create the broker namespace called `submariner-k8s-broker`.
          2. Apply the broker RBAC definitions:

              ```shell
              git clone --depth 1 --single-branch --branch release-0.22 https://github.com/submariner-io/submariner-operator
              kubectl apply -k submariner-operator/config/broker -n submariner-k8s-broker
              ```

          3. Install the Submariner Operator from the catalog.
          4. Create a new `Broker` custom resource named **submariner-broker**.

          On connected clusters:
          1. Install the Submariner Operator from the catalog.
          2. Create a new `Submariner` custom resource named **submariner**.

          The following values can be specified for the **Broker** CR:
          * **defaultCustomDomains**: List of domains to use for multicluster service discovery.
          * **defaultGlobalnetClusterSize**: Default cluster size for GlobalCIDR allocated to each cluster (amount of global IPs).
          * **globalnetEnabled**: Enable support for Overlapping CIDRs in connecting clusters (default disabled).
          * **globalnetCIDRRange**: GlobalCIDR supernet range for allocating GlobalCIDRs to each cluster.
          * **components**: List of components to be installed [service-discovery, connectivity].

          The following values can be specified for the **Submariner** CR:
          * **namespace**: The namespace to install in.
          * **serviceCIDR**: The service CIDR.
          * **clusterCIDR**: The cluster CIDR.
          * **clusterID**: The cluster ID used to identify the tunnels.
          * **colorCodes**: The color code(s) for the cluster.
          * **debug**: *'true'* to enable operator debugging information - verbose logging.
          * **natEnabled**: *'true'* if there is NAT between clusters. Typically *'true'* in public cloud or mixed on-prem/public cloud environments and *'false'* when all clusters are on-prem.
          * **broker**: This must be *k8s* currently.
          * **brokerK8sApiServer**: The broker API server URL.
              To retrieve it run the following command on the broker cluster:

              `kubectl -n default get endpoints kubernetes -o
              jsonpath="{.subsets[0].addresses[0].ip}:{.subsets[0].ports[?(@.name=='https')].port}"`

          * **brokerK8sApiServerToken**: The broker API server token.
              To retrieve the token run the following command on the broker cluster, assuming the broker is running in the
              *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data.token != null)] | .[0].data.token' | base64 --decode`

          * **brokerK8sRemoteNamespace**: The broker namespace.
          * **brokerK8sCA**: The broker certificate authority.
              To retrieve the broker CA run the following command on the broker cluster, assuming the broker is running in
              the *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data."ca.crt" != null)] | .[0].data."ca.crt"' | base64 --decode`

          * **ceIPSecPSK**: The IPsec Pre-Shared Key which must be identical in all route agents across the cluster.
              To generate a unique PSK run the following command on your machine:

              `dd if=/dev/urandom count=64 bs=8 | LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 64 | head -n 1`

          * **ceIPSecDebug**: *'true'* to enable logging IPsec debugging information - verbose logging from the IPsec daemon.
          * **ceIPSecIKEPort**: The IPsec IKE port (500 usually).
          * **ceIPSecNATTPort**: The IPsec NAT traversal port (4500 usually).
          * **repository**: The container repository to use.
          * **version**: The container version to use.
          * **imageOverrides**: A string map that overrides the images by defining a path for each component.
                                This field is meant to be used by CI, development or testing.

            **example:**

            ```yaml
            imageOverrides:
              submariner-route-agent=my_repo/my_custom_image:my_tag
              submariner-globalnet=my_repo/my_custom_image:my_tag
            ```
        displayName: Submariner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multi-cluster
        - ipsec
        - tunnel
        - submariner-operator
        links:
        - name: Website
          url: https://submariner.io
        - name: GitHub
          url: https://github.com/submariner-io
        - name: Slack
          url: https://kubernetes.slack.com/archives/C010RJV694M
        - name: YouTube
          url: https://www.youtube.com/channel/UCZ3brSgl2v4boglZoeChClQ/videos
        - name: Twitter
          url: https://twitter.com/submarinerio
        maintainers:
        - email: submariner-dev@googlegroups.com
          name: Submariner project
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: submariner.io
        relatedImages:
        - registry.redhat.io/rhacm2/nettest-rhel9@sha256:81fd7584951aaf7bcb86d4038089675e3ec4da3791b2a49fe73ae55f217f4303
        - registry.redhat.io/rhacm2/submariner-gateway-rhel9@sha256:1112c506ac82bbd14bf970a859690529b2165945c337b5da04a2e963bb7f6a77
        - registry.redhat.io/rhacm2/submariner-globalnet-rhel9@sha256:ef127d44c1bfa39e2e301eca2a1de736df43285b66e3b766860f372fd2cfb591
        - registry.redhat.io/rhacm2/submariner-rhel9-operator@sha256:3f71495eab9e2f82f74a21df6143c799bfb8a0038aef4e97b766a498bb535c16
        - registry.redhat.io/rhacm2/submariner-route-agent-rhel9@sha256:096c3fa7333d2cca1984d2852af84ca6735de3ca6fabcdd1aff25fee372acf98
        - registry.redhat.io/rhacm2/submariner-operator-bundle@sha256:bb851aac8a0b44e3322da36c4349723e564ff8ce489210859210eddcb8f3c425
        - registry.redhat.io/rhacm2/lighthouse-agent-rhel9@sha256:5ee9a8aff7bd566cc4633c5191c40d7370349abdbfe19ac6e0588956f879c0c8
        - registry.redhat.io/rhacm2/lighthouse-coredns-rhel9@sha256:cd29afa47105e0b49b0f640651c16a73d1190c84fb28aa6feee75d5e89b40b2c
        version: 0.22.0
      entries:
      - name: submariner.v0.22.0
        version: 0.22.0
      name: stable-0.22
    defaultChannel: stable-0.22
    packageName: submariner
    provider:
      name: submariner.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Instana
      provider-url: ""
    name: instana-agent-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: instana-agent-operator.v2.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "instana.io/v1",
                "kind": "InstanaAgent",
                "metadata": {
                  "name": "instana-agent",
                  "namespace": "instana-agent"
                },
                "spec": {
                  "agent": {
                    "configuration_yaml": "# You can leave this empty, or use this to configure your instana agent.\n# See https://github.com/instana/instana-agent-operator/blob/main/config/samples/instana_v1_extended_instanaagent.yaml for the extended version.\n",
                    "endpointHost": "ingress-red-saas.instana.io",
                    "endpointPort": "443",
                    "env": {},
                    "key": "replace-key"
                  },
                  "cluster": {
                    "name": "my-cluster"
                  },
                  "opentelemetry": {
                    "grpc": {
                      "enabled": true
                    },
                    "http": {
                      "enabled": true
                    }
                  },
                  "zone": {
                    "name": "edited-zone"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring,Logging & Tracing,OpenShift Optional
          certified: "false"
          containerImage: icr.io/instana/instana-agent-operator@sha256:c81463e192b47a673797e762c87587bf6646b3d6b48b628236e9fdd6337f6a9b
          description: Fully automated Application Performance Monitoring (APM) for
            microservices.
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/instana/instana-agent-operator
          support: Instana
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InstanaAgent is the Schema for the agents API
            displayName: Instana Agent
            kind: InstanaAgent
            name: agents.instana.io
            version: v1
          - description: InstanaAgentRemote is the Schema for the agents API
            displayName: Instana Agent Remote
            kind: InstanaAgentRemote
            name: agentsremote.instana.io
            version: v1
        description: |
          # Instana

          Instana is an [APM solution](https://www.instana.com/product-overview/) built for microservices that enables IT Ops to build applications faster and deliver higher quality services by automating monitoring, tracing and root cause analysis. The solution is optimized for [Kubernetes](https://www.instana.com/automatic-kubernetes-monitoring/) and [OpenShift](https://www.instana.com/blog/automatic-root-cause-analysis-for-openshift-applications/).

          ## Instana Agent Operator

          This is the Kubernetes Operator for installing the Instana Agent on Kubernetes or OpenShift.

          ## Prerequisites for OpenShift

          Before the agent will be able to run in OpenShift, you need to perform a couple of extra configuration steps.

          You need to set up a project for the Instana Agent and configure it's permissions.

          The project you create here needs to be the namespace where you create the Instana Agent custom resource that the operator will use to deploy the agent.

          For example, create the `instana-agent` project:

              oc new-project instana-agent

          Then, ensure the `instana-agent` service account is in the privileged security context:

              oc adm policy add-scc-to-user privileged -z instana-agent

          The `instana-agent-remote` service account must be allowed to use any userid:

              oc adm policy add-scc-to-user anyuid -z instana-agent-remote -n instana-agent

          This service account will be created by the operator.

          Now you can proceed with installing the operator for the Instana agent.

          ## Installation and Configuration

          First, install this operator from [OperatorHub.io](https://operatorhub.io/), [OpenShift Container Platform](https://www.openshift.com/), or [OKD](https://www.okd.io/).

          Second, create a custom resource with the agent configuration in the target namespace (for now, this MUST always be the `instana-agent` namespace). The operator will pick up the custom resource and install the Instana agent accordingly.

          The following is a minimal template of the custom resource:

          ```yaml
          apiVersion: instana.io/v1
          kind: InstanaAgent
          metadata:
            name: instana-agent
            namespace: instana-agent
          spec:
            zone:
              name: my-zone # (optional) name of the zone of the host
            cluster:
              name: replace-me # replace with the name of your Kubernetes cluster
            agent:
              key: replace-me # replace with your Instana agent key
              endpointHost: ingress-red-saas.instana.io # the monitoring ingress endpoint
              endpointPort: "443" # the monitoring ingress endpoint port, wrapped in quotes
              env:
                INSTANA_AGENT_TAGS: example
              configuration_yaml: |
                # You can leave this empty, or use this to configure your instana agent.
                # See https://ibm.biz/monitoring-k8s
          ```

          Save the template in a file `instana-agent.yaml` and edit the following values:

          * If your target namespace is not `instana-agent`, replace the `namespace:` accordingly.
          * `agent.key` must be set with your Instana agent key.
          * `agent.endpointHost` must be set with the monitoring ingress endpoint, generally either `saas-us-west-2.instana.io` or `saas-eu-west-1.instana.io`.
          * `agent.endpointPort` must be set with the monitoring ingress port, generally "443" (wrapped in quotes).
          * `zone.name` should be set with the name of the Kubernetes cluster that is be displayed in Instana.

          For advanced configuration, you can edit the contents of the `configuration.yaml` file. View documentation [here](https://ibm.biz/monitoring-k8s).

          Apply the custom resource with `kubectl apply -f instana-agent.yaml`. After some time, you should see `instana-agent` Pods being created on each node of your cluster, and your cluster should show on the infrastructure map on your Instana Web interface.

          In addition to the InstanaAgent custom resource, a remote agent can be deployed. This agent will not monitor workload running inside the cluster, but can deploy a single replica of an agent which can get an independent configuration for running remote monitoring for certain sensors.

          ```yaml
          apiVersion: instana.io/v1
          kind: InstanaAgentRemote
          metadata:
            name: remote-agent
            namespace: "instana-agent"
          spec:
            zone:
              name: edited-zone # name of the zone of the host
            hostname:
              name: use-custom-hostname-for-remote-agent # (optional) give your remote agent pod a custom hostname
            agent:
              key: replace-key # replace with your Instana agent key
              endpointHost: ingress-red-saas.instana.io
              endpointPort: "443"
              env: {}
              configuration_yaml: |
                # You can leave this empty, or use this to configure your instana agent.
                # See https://github.com/instana/instana-agent-operator/blob/main/config/samples/instana_v1_extended_instanaagent.yaml for the extended version.
          ```

          ## Uninstalling

          In order to uninstall the Instana agent, simply remove the custom resource with `kubectl delete -f instana-agent.yaml`.

          ## Source Code

          The Instana agent operator is an open source project hosted on [https://github.com/instana/instana-agent-operator](https://github.com/instana/instana-agent-operator/).
        displayName: Instana Agent Operator
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - APM
        - Instana
        links:
        - name: GitHub Repository
          url: https://github.com/instana/instana-agent-operator
        maintainers:
        - email: support@instana.com
          name: Instana
        maturity: stable
        minKubeVersion: 1.11.0
        provider:
          name: Instana
        relatedImages:
        - icr.io/instana/agent@sha256:cafef53efc0baa0e99c3a7fef619d3d8f0311e8ca38c141052c98d9a33ba4f1c
        - icr.io/instana/instana-agent-operator@sha256:c81463e192b47a673797e762c87587bf6646b3d6b48b628236e9fdd6337f6a9b
        - registry.connect.redhat.com/instana/instana-agent-operator-bundle@sha256:18267a5e3a10369ddc462f52edf50ff20023ae5f123b867648fb53383d525a8e
        version: 2.2.4
      entries:
      - name: instana-agent-operator.v2.2.4
        version: 2.2.4
      - name: instana-agent-operator.v2.2.2
        version: 2.2.2
      - name: instana-agent-operator.v2.2.1
        version: 2.2.1
      - name: instana-agent-operator.v2.2.0
        version: 2.2.0
      - name: instana-agent-operator.v2.1.36
        version: 2.1.36
      - name: instana-agent-operator.v2.1.35
        version: 2.1.35
      - name: instana-agent-operator.v2.1.34
        version: 2.1.34
      - name: instana-agent-operator.v2.1.33
        version: 2.1.33
      - name: instana-agent-operator.v2.1.32
        version: 2.1.32
      - name: instana-agent-operator.v2.1.31
        version: 2.1.31
      - name: instana-agent-operator.v2.1.30
        version: 2.1.30
      - name: instana-agent-operator.v2.1.29
        version: 2.1.29
      - name: instana-agent-operator.v2.1.28
        version: 2.1.28
      - name: instana-agent-operator.v2.1.27
        version: 2.1.27
      - name: instana-agent-operator.v2.1.25
        version: 2.1.25
      - name: instana-agent-operator.v2.1.24
        version: 2.1.24
      - name: instana-agent-operator.v2.1.23
        version: 2.1.23
      - name: instana-agent-operator.v2.1.22
        version: 2.1.22
      - name: instana-agent-operator.v2.1.21
        version: 2.1.21
      - name: instana-agent-operator.v2.1.20
        version: 2.1.20
      - name: instana-agent-operator.v2.1.19
        version: 2.1.19
      - name: instana-agent-operator.v2.1.18
        version: 2.1.18
      - name: instana-agent-operator.v2.1.17
        version: 2.1.17
      - name: instana-agent-operator.v2.1.16
        version: 2.1.16
      - name: instana-agent-operator.v2.1.15
        version: 2.1.15
      - name: instana-agent-operator.v2.1.14
        version: 2.1.14
      - name: instana-agent-operator.v2.1.13
        version: 2.1.13
      - name: instana-agent-operator.v2.1.12
        version: 2.1.12
      - name: instana-agent-operator.v2.1.11
        version: 2.1.11
      - name: instana-agent-operator.v2.1.10
        version: 2.1.10
      - name: instana-agent-operator.v2.1.9
        version: 2.1.9
      - name: instana-agent-operator.v2.1.8
        version: 2.1.8
      - name: instana-agent-operator.v2.1.7
        version: 2.1.7
      - name: instana-agent-operator.v2.1.6
        version: 2.1.6
      - name: instana-agent-operator.v2.1.5
        version: 2.1.5
      - name: instana-agent-operator.v2.1.4
        version: 2.1.4
      - name: instana-agent-operator.v2.1.3
        version: 2.1.3
      - name: instana-agent-operator.v2.1.2
        version: 2.1.2
      - name: instana-agent-operator.v2.1.1
        version: 2.1.1
      - name: instana-agent-operator.v2.1.0
        version: 2.1.0
      - name: instana-agent-operator.v2.0.32
        version: 2.0.32
      - name: instana-agent-operator.v2.0.31
        version: 2.0.31
      - name: instana-agent-operator.v2.0.30
        version: 2.0.30
      - name: instana-agent-operator.v2.0.27
        version: 2.0.27
      - name: instana-agent-operator.v2.0.19
        version: 2.0.19
      - name: instana-agent-operator.v2.0.18
        version: 2.0.18
      - name: instana-agent-operator.v2.0.17
        version: 2.0.17
      - name: instana-agent-operator.v2.0.13
        version: 2.0.13
      - name: instana-agent-operator.v2.0.12
        version: 2.0.12
      - name: instana-agent-operator.v2.0.11
        version: 2.0.11
      - name: instana-agent-operator.v2.0.10
        version: 2.0.10
      - name: instana-agent-operator.v2.0.9
        version: 2.0.9
      - name: instana-agent-operator.v2.0.8
        version: 2.0.8
      - name: instana-agent-operator.v2.0.7
        version: 2.0.7
      - name: instana-agent-operator.v2.0.5
        version: 2.0.5
      - name: instana-agent-operator.v2.0.4
        version: 2.0.4
      name: stable
    defaultChannel: stable
    packageName: instana-agent-operator
    provider:
      name: Instana
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: The Jumpstarter Community
      provider-url: https://jumpstarter.dev
    name: jumpstarter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jumpstarter-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "Client",
                "metadata": {
                  "labels": {
                    "type": "developer"
                  },
                  "name": "client-sample"
                },
                "spec": {
                  "username": "keycloak:user-name-in-keycloak"
                }
              },
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "Exporter",
                "metadata": {
                  "labels": {
                    "type": "nxp-imx8mm-evk"
                  },
                  "name": "exporter-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "ExporterAccessPolicy",
                "metadata": {
                  "name": "exporteraccesspolicy-sample"
                },
                "spec": {
                  "exporterSelector": {
                    "matchLabels": {
                      "lab": "jumpstarter"
                    }
                  },
                  "policies": [
                    {
                      "from": [
                        {
                          "clientSelector": {
                            "matchLabels": {
                              "team": "platform"
                            }
                          }
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "Lease",
                "metadata": {
                  "name": "lease-sample"
                },
                "spec": {
                  "clientRef": {
                    "name": "client-sample"
                  },
                  "duration": "1h",
                  "selector": {
                    "matchLabels": {
                      "board": "rcar-s4"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.jumpstarter.dev/v1alpha1",
                "kind": "Jumpstarter",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "jumpstarter-operator"
                  },
                  "name": "jumpstarter-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery
          com.redhat.openshift.versions: v4.18-v4.21
          containerImage: quay.io/jumpstarter-dev/jumpstarter-operator:latest
          createdAt: "2025-11-28T14:46:02Z"
          description: Jumpstarter is a cloud-native framework for Hardware-in-the-Loop
            (HIL) testing and development
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/jumpstarter-dev/jumpstarter-controller
          support: The Jumpstarter Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |
              Client is the schema for the Clients API. Clients represent a user that can access the Jumpstarter Controller. Clients can be associated to external identity OIDC providers by providing Username, i.e. Spec.Username: "kc:user-name-in-keycloak"
            displayName: Client
            kind: Client
            name: clients.jumpstarter.dev
            version: v1alpha1
          - description: Exporter access policies define how exporters can be accessed
              by clients.
            displayName: ExporterAccessPolicy
            kind: ExporterAccessPolicy
            name: exporteraccesspolicies.jumpstarter.dev
            version: v1alpha1
          - description: |
              Exporters represent the services that connect to the physical or virtual devices. They are responsible for providing the access to the devices and for the communication with the devices. A jumpstarter exporter service should be ran on a linux machine, or a pod, with the exporter credentials and the right configuration for this resource to become online. For more information see the Jumpstarter documentation: https://jumpstarter.dev/main/introduction/exporters.html#exporters
            displayName: Exporter
            kind: Exporter
            name: exporters.jumpstarter.dev
            version: v1alpha1
          - description: Jumpstarter is the Schema for the jumpstarters API.
            displayName: Jumpstarter
            kind: Jumpstarter
            name: jumpstarters.operator.jumpstarter.dev
            version: v1alpha1
          - description: |
              Lease is the schema for the Leases API. Leases represent a request for a specific exporter by a client. The lease is acquired by the client and the exporter is assigned to the lease. The lease is released by the client when the client is done with the exporter. For more information see the Jumpstarter documentation:
                https://jumpstarter.dev/main/reference/man-pages/jmp.html#jmp-create-lease
                https://jumpstarter.dev/main/reference/man-pages/jmp.html#jmp-shell
            displayName: Lease
            kind: Lease
            name: leases.jumpstarter.dev
            version: v1alpha1
        description: Jumpstarter is a cloud-native framework for Hardware-in-the-Loop
          (HIL) automation that bridges the gap between embedded development workflows
          and real-world deployment environments. This operator installs and manages
          the Jumpstarter Controller, which acts as the central brain for your testing
          infrastructure. It orchestrates secure, shared access to physical hardware
          and virtual devices (represented as "exporters") directly from your Kubernetes
          or OpenShift cluster.
        displayName: Jumpstarter Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hil
        - hardware-in-the-loop
        - hardware
        - device
        - embedded
        - testing
        - framework
        links:
        - name: Jumpstarter Operator
          url: https://jumpstarter.dev/main/getting-started/installation/service/index.html
        maintainers:
        - email: majopela@redhat.com
          name: Miguel Angel Ajo
        - email: bzlotnik@redhat.com
          name: Benny Zlotnik
        - email: bkhizgiy@redhat.com
          name: Bella Khizgiyaev
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: The Jumpstarter Community
          url: https://jumpstarter.dev
        relatedImages:
        - quay.io/jumpstarter-dev/jumpstarter-operator:latest
        - quay.io/community-operator-pipeline-prod/jumpstarter-operator:0.8.0
        version: 0.8.0
      entries:
      - name: jumpstarter-operator.v0.8.0
        version: 0.8.0
      name: alpha
    defaultChannel: alpha
    packageName: jumpstarter-operator
    provider:
      name: The Jumpstarter Community
      url: https://jumpstarter.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com
    name: ibm-security-verify-access-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-security-verify-access-operator.v23.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ibm.com/v1",
                "kind": "IBMSecurityVerifyAccess",
                "metadata": {
                  "name": "isva-sample"
                },
                "spec": {
                  "image": "icr.io/isva/verify-access-wrp:10.0.5.0",
                  "instance": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: icr.io/isva/verify-access-operator:23.3.0
          createdAt: Mon Mar  20 00:59:34 UTC 2023
          description: The IBM Security Verify Access Operator manages the lifecycle
            of IBM Security Verify Access worker containers.
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/IBM-Security/verify-access-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBMSecurityVerifyAccess is the Schema for the ibmsecurityverifyaccesses
              API.
            displayName: IBMSecurity Verify Access
            kind: IBMSecurityVerifyAccess
            name: ibmsecurityverifyaccesses.ibm.com
            version: v1
        description: |+
          In a world of highly fragmented access management environments, [IBM Security Verify Access](https://www.ibm.com/au-en/products/verify-access) helps you simplify your users' access while more securely adopting web, mobile and cloud technologies. This solution helps you strike a balance between usability and security through the use of risk-based access, single sign-on, integrated access management control, identity federation and its mobile multi-factor authentication capability, IBM Verify. Take back control of your access management with IBM Security Verify Access.

          The IBM Security Verify Access operator provides lifecycle management of the lightweight containers which are used to protect an environment, namely:
          * [Web Reverse Proxy](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-web-reverse-proxy)
          * [Runtime](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-runtime)
          * [Distributed Session Cache](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-distributed-session-cache)

          The operator will manage the deployment of these lightweight IBM Security Verify Access worker containers, and also control the rolling restart of these containers when a configuration snapshot is updated.

          See the project [Readme](https://github.com/IBM-Security/verify-access-operator/blob/master/README.md) for further information and details.

        displayName: IBM Security Verify Access Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - identity and access
        - security
        links:
        - name: Verify Access Product Information
          url: https://www.ibm.com/au-en/products/verify-access
        - name: Verify Access Documentation
          url: https://www.ibm.com/docs/en/sva
        maintainers:
        - email: isamdev@au1.ibm.com
          name: Verify Access Development Team
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: IBM
          url: https://www.ibm.com
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - icr.io/isva/verify-access-operator:23.3.0
        - quay.io/openshift-community-operators/ibm-security-verify-access-operator@sha256:ec3970c7a6a5ee3ac863dfe6f16234fe19cd7ea4a541fd0cbae9a8183d0763a2
        version: 23.3.0
      entries:
      - name: ibm-security-verify-access-operator.v23.3.0
        version: 23.3.0
      - name: ibm-security-verify-access-operator.v22.10.0
        version: 22.10.0
      name: stable
    defaultChannel: stable
    packageName: ibm-security-verify-access-operator
    provider:
      name: IBM
      url: https://www.ibm.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: unsupported
      operatorframework.io/arch.ppc64le: unsupported
      operatorframework.io/arch.s390x: unsupported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: mta-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mta-operator.v6.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:f5d10cd2528bebf5094c7744e47d9de6fe827fd09024c5ffc0e1b74f1a6cc3b4
          createdAt: "2023-04-26T14:04:20Z"
          description: MTA contains tools that support the modernization and migration
            of applications to Kubernetes and OpenShift
          olm.skipRange: '>=0.0.0 <6.0.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/tackle2-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is a collection of tools that supports large-scale application modernization and migration projects to Kubernetes and OpenShift.


          Migration Toolkit for Applications allows users to maintain their portfolio of applications with a full set of metadata and to assess their suitability for modernization leveraging a questionnaire based approach.


          ### Install

          By default, MTA requires a RWX capable storage class for caching purposes, this can be disabled via the rwx_supported parameter in Tackle CR.

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:a66dd030eb99207b6aaacc6b7c7cb5182901da836ebf50373c14f8e5ecb7b642
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:f5d10cd2528bebf5094c7744e47d9de6fe827fd09024c5ffc0e1b74f1a6cc3b4
        - registry.redhat.io/mta/mta-ui-rhel8@sha256:de6cb95ce3663922ecc725b186876b043a9c7794e95510459ffbcba7d668fc26
        - registry.redhat.io/mta/mta-windup-addon-rhel8@sha256:a4200fc0a39df67eae31c53ee9ae0c05769fb410d0312ebd0bbf8bf1567b2a48
        - registry.redhat.io/rhel8/postgresql-12@sha256:3a69efa85af6a6f95665eca69085b007fa1fcb645a37f356895aeb4c9527a621
        - registry.redhat.io/mta/mta-admin-addon-rhel8@sha256:812b8dc621a06bb99cf2c59abb8257da3ceeb165c563e14d258e69803a557cc8
        - registry.redhat.io/mta/mta-hub-rhel8@sha256:c75e1d9d3307d95be392a53440d9123601a6ada3693e3f2573e03022565e4339
        - registry.redhat.io/mta/mta-operator-bundle@sha256:65c0932bfda32b1e62be9edd0f96bb4d6e41e302a2e8080fc6cc794ee5c52276
        version: 6.0.3
      entries:
      - name: mta-operator.v6.0.3
        version: 6.0.3
      - name: mta-operator.v6.0.2
        version: 6.0.2
      - name: mta-operator.v6.0.1
        version: 6.0.1
      - name: mta-operator.v6.0.0
        version: 6.0.0
      name: stable-v6.0
    - currentCSV: mta-operator.v6.1.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:6da71d4caecfbe049e63576d4325d4919002196da2e875f79703d8ff0d5a1705
          createdAt: "2023-10-26T15:29:26Z"
          description: MTA contains tools that support the modernization and migration
            of applications to Kubernetes and OpenShift
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=6.0.0 <6.1.4'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/tackle2-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is a collection of tools that supports large-scale application modernization and migration projects to Kubernetes and OpenShift.


          Migration Toolkit for Applications allows users to maintain their portfolio of applications with a full set of metadata and to assess their suitability for modernization leveraging a questionnaire based approach.


          ### Install

          By default, MTA requires a RWX capable storage class for caching purposes, this can be disabled via the rwx_supported parameter in Tackle CR.

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:6da71d4caecfbe049e63576d4325d4919002196da2e875f79703d8ff0d5a1705
        - registry.redhat.io/mta/mta-ui-rhel8@sha256:3845d6d246003ebeb49bcf1d95d6be2eb9cd05a280a5bf8320b201e878a41427
        - registry.redhat.io/mta/mta-windup-addon-rhel8@sha256:6bcaf8e8b63e169652d6568d77e91a289084e621a586105a2d429b5726569058
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/mta/mta-hub-rhel8@sha256:32624f2bddfe8b6b9c6c1c3f2be541c8c61be29680d13b6d446e8874bdf8e219
        - registry.redhat.io/mta/mta-operator-bundle@sha256:f3d585e24d65905b2e9f594dcdb67721aa95057ab7587ae531c3487aa2f94e53
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:1df881da1e20c2501caf53e1cf59b6b366281d842f0948ca5f91694ec1db829d
        version: 6.1.4
      entries:
      - name: mta-operator.v6.1.4
        version: 6.1.4
      - name: mta-operator.v6.1.3
        version: 6.1.3
      - name: mta-operator.v6.1.2
        version: 6.1.2
      - name: mta-operator.v6.1.1
        version: 6.1.1
      - name: mta-operator.v6.1.0
        version: 6.1.0
      name: stable-v6.1
    - currentCSV: mta-operator.v6.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:6938c3fc6dd8fb032e1765fc11d9586dbfd1aaba4b423b0d87da4120ee0bb60d
          createdAt: "2024-06-10T22:12:58Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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.skipRange: '>=6.0.0 <6.2.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-windup-addon-rhel9@sha256:d1f4939b92dd13c15cb7344ec47a571669f6d108dc2e7d795ce29350f2cb3838
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e52f88555004b575104691fe96f758ee5e6ec832b99107a5a18fc8379d29afda
        - registry.redhat.io/rhel8/postgresql-12@sha256:c4716bee5e2cf2e43698bc99e5aa42f16a0f2d68c1fbdcd3602696bf88e408dc
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:e59725832547e80cab58077a1b6e42c313a4057621defa841f35c0a7627f149d
        - registry.redhat.io/mta/mta-operator-bundle@sha256:a13643117c2867351718a872f7f1b2350c67855ca73a727a1dc140754ffe6589
        - registry.redhat.io/mta/mta-pathfinder-rhel9@sha256:a2a8b6d204d99494a6a005e8cb1fbd92afdc84dc01e4c1de4ad7d8798bd83741
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:6938c3fc6dd8fb032e1765fc11d9586dbfd1aaba4b423b0d87da4120ee0bb60d
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:c35f3ed429a7d351cb8c2d07600b4ad35615a5ba08e5cc9f8b9bd504aea3f7ee
        version: 6.2.3
      entries:
      - name: mta-operator.v6.2.3
        version: 6.2.3
      - name: mta-operator.v6.2.2
        version: 6.2.2
      - name: mta-operator.v6.2.1
        version: 6.2.1
      - name: mta-operator.v6.2.0
        version: 6.2.0
      name: stable-v6.2
    - currentCSV: mta-operator.v7.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:268ecf5efc51af71f9b2bc2d01b410f8cfcf81a948b82d2d476fef6c0cd3e033
          createdAt: "2024-05-10T19:37:30Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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.skipRange: '>=6.2.0 <7.0.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:18c611415589a093e16e9c2f2fba9f3c83d9514f79c8e4fde9704ef0679ea4d5
        - registry.redhat.io/mta/mta-operator-bundle@sha256:9eeb43af2bcab84f5261d1575f7c897903a7696dba011d256abffa1fe850eba2
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:0e1ec99af5666a060176adc52612f20209e3398a9a5a2aa1dcff11ef260b2006
        - registry.redhat.io/mta/mta-windup-shim-rhel9@sha256:e2ea89055936d7ad229b5e890c6ba234c6cb22d8b688515ed4d6a34848efea83
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:af879d8b9b5e396a5308fb675a1d6dba6d70151b9bdbe7829362e081a6adab1c
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:1b5e016046d93b6a2674d63f08e0a46f8050e785bd58fd94ba7a70487efe7e2a
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:d554cc36748fc05e30eb10e6fe816ff6aab2fe07b61cc60e9d93de5c3cf17748
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:268ecf5efc51af71f9b2bc2d01b410f8cfcf81a948b82d2d476fef6c0cd3e033
        - registry.redhat.io/rhel8/postgresql-12@sha256:da619f6617d99790b4fe00fdb23ab4aea0cdb0592590162d51b3ef94aca01a7b
        - registry.redhat.io/mta/mta-analyzer-lsp-rhel9@sha256:0c8f59f35a950ea8b45f16cf71362128ccc335b58a996a099384fd737dd6ff90
        version: 7.0.3
      entries:
      - name: mta-operator.v7.0.3
        version: 7.0.3
      - name: mta-operator.v7.0.2
        version: 7.0.2
      - name: mta-operator.v7.0.1
        version: 7.0.1
      - name: mta-operator.v7.0.0
        version: 7.0.0
      name: stable-v7.0
    - currentCSV: mta-operator.v7.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:08b33b44140397785f8aa1b736796e09cf6e49ac30cf7c386a2fbd8b678d47b1
          createdAt: "2024-09-16T23:45:42Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          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.skipRange: '>=6.2.0 <7.1.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:30a3b1d5a70dec74a9253ca34f18bd8f2cdfaa68b85b0b25dc395158c2596330
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:e4e70201df23c9e1168646d3c6013a8ffa22481a85b07df491f240310c13ebe1
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel8@sha256:582f28e609c1a0466d30c5586d6b6023f1b1de3c28f76cabb498322914ab24d4
        - registry.redhat.io/mta/mta-operator-bundle@sha256:6aef520983fe01351886e108d32b998b20e74116fc0280c754a914bfad03d0bf
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:ee2c8ce2af0be097353758d9ee7eaa7e6b3fcd5f2bf5e04280e450e2b619d2d8
        - registry.redhat.io/rhel8/postgresql-15@sha256:16faf1ee82382263408f713ee4002f47ff13c82d4545e8a69d5b0ebd1d289330
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:4ad19b50cdd6be21e010155f2026abf0dc865e72aac1353e35bbb5eeb8320a4e
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:16cb28d683159ba71a5d7c233404ac1d6b7a07a374b46d24effe551a13a596c3
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:08b33b44140397785f8aa1b736796e09cf6e49ac30cf7c386a2fbd8b678d47b1
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:23c97ac122eb7cd1e953df8da968da420f6db8708baf772759517aca4929748b
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ac38f1c3d34bc718928eb20743835c99783d846f63a3197d13839ea22f1634c8
        version: 7.1.1
      entries:
      - name: mta-operator.v7.1.1
        version: 7.1.1
      - name: mta-operator.v7.1.0
        version: 7.1.0
      name: stable-v7.1
    - currentCSV: mta-operator.v7.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:917d6cd534c158f6c4a7e9c83f0c66fa85ba81037c352d8a039e198581126a7f
          createdAt: "2025-06-17T16:04:15Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          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.skipRange: '>=6.2.0 <7.2.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:2dfc51d5398a90e73273b3e332f70d7ed94bac05e12b142fba22104ecc929436
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel8@sha256:c0643c05833dd1b70ed361bf56c46f56ed6536aac3106b92f0d85b83da1b9d15
        - registry.redhat.io/rhel8/postgresql-15@sha256:dd4aec2775da1cf187c0839384cb16d69268e9781d4330874bbc865f98153a7a
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:70ff3b5e429a8fe0c68752ee05c47ead885b59bf9c8d7235337801270e7fc1de
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:b10fdc78c6f453a34a3d306313dc29fcb3152688a6a1d54cd236d00d9fab88af
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:917d6cd534c158f6c4a7e9c83f0c66fa85ba81037c352d8a039e198581126a7f
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:9d6c02f6463771e747a30126de95fc0728fd95fff4ddfa6c70d828c55e0b6790
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:4cde2c2df482293bd4d6b86a344336e13d2f9f81b29323698f603e656b14b190
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:c9447659195b9eebb8f8a265fd5052ca9b2611d57080017448297a33409863c6
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:10ef4b218d603432508b5e1f3685fb32a80cbce6c327e35952cdcccb0465468b
        - registry.redhat.io/mta/mta-operator-bundle@sha256:0ed10e35f45a140e21d826bee71b3ab96e67f1b4dc8c2f7f1676380fa51b67fe
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        version: 7.2.3
      entries:
      - name: mta-operator.v7.2.3
        version: 7.2.3
      - name: mta-operator.v7.2.2
        version: 7.2.2
      - name: mta-operator.v7.2.1
        version: 7.2.1
      - name: mta-operator.v7.2.0
        version: 7.2.0
      name: stable-v7.2
    - currentCSV: mta-operator.v7.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel9-operator@sha256:6abd6541a955543207c1ff4b903928debcc89dd6ea3d7aeaa3e47465849f7b37
          createdAt: "2025-08-15T16:32:16Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=6.2.0 <7.3.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/mta/mta-operator-bundle@sha256:68953a2a721309fd103e09f3171d0c9d50020413631b575f1a44602a5d2ac855
        - registry.redhat.io/mta/mta-rhel9-operator@sha256:6abd6541a955543207c1ff4b903928debcc89dd6ea3d7aeaa3e47465849f7b37
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel9@sha256:9748d954ad8654ac203257286497ccf19cfdfa211fee40449cbe732ff48c1176
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:b2ff154a4b4ead22311005b7115c02346928b5ebf77d776ef909ad4af1f350bc
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:32328fc0459099ef1de0f92e064c15d29a46d88dfe2f54c88f822d44ab82e3f4
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:072f676323e9abcb2ff22eb5e7a70f6681e9d885d8666ddd81060fbad54c443e
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ef57a58e609e244333d35681a164a1d3bf382c0eee37d33c993b018439814198
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:a93cbb575ff59bc8015602165645204b9ca56e327308b11a3d75b651701db875
        - registry.redhat.io/rhel8/postgresql-15@sha256:854710b428c4c1132c448cbe9ad30087a8a4b3c33ae9c0c3a4de21a15c0ae642
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:6118c1db15667851f26eb2acf6060e045ed9065459e3e649bbdd0e2625d825bd
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:8ca00460b2fb64583a247f5b906c19743b7732b60ff8215f1baec12a766c61d1
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:80aa13813fe121da49e166d81d09d63749393f3375c3b96d762d0b09c6685ca9
        version: 7.3.2
      entries:
      - name: mta-operator.v7.3.2
        version: 7.3.2
      - name: mta-operator.v7.3.1
        version: 7.3.1
      - name: mta-operator.v7.3.0
        version: 7.3.0
      name: stable-v7.3
    - currentCSV: mta-operator.v8.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel9-operator@sha256:fea69ccd89a0632f2ae00b2d90b271bfd1bbcd48733f2b631e8e9b5cd0d3d4a2
          createdAt: "2025-11-19T23:58:24Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=7.3.0 <8.0.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Schema
            displayName: Schema
            kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:229197ca303eb3bd553accde1c29546916b128ffc7e43961b520c8e375e07c84
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:c97afda6c66fd862738961abd73471f1ef4546eeb2157f13da264205d25e3455
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:8d152829867909dfc98853a837ab50dbe4f09a331718010e15961e5468fc3db3
        - registry.redhat.io/mta/mta-operator-bundle@sha256:75127a29a68c19490c96b4dde9146500c38b640f4ddc1bfcb2183372f3c4ce50
        - registry.redhat.io/mta/mta-solution-server-rhel9@sha256:08161faacb63d0842e8dc4abae5922fa84c4c10dede31bbebd2f7485884644fe
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:95393ff3b7f90c2077947d46e539eefa4305d01679cab40cdc27b4a4404256d9
        - registry.redhat.io/mta/mta-rhel9-operator@sha256:fea69ccd89a0632f2ae00b2d90b271bfd1bbcd48733f2b631e8e9b5cd0d3d4a2
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel9@sha256:968075d405848a097f6ef91a2717091c96108a5a0ed8066c69a19c07e5c4ab17
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:2783f01f9c739c89dff0aa1177f9dd46340bfed269dca948529d269c9b3c37f7
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:acff26b2dc0151443b592c71065c271a2f044c985f32365b093685c5e224f3c7
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:fda12c5ebf9de14d17d5d49239cee9815352f6d7e75926f7226d9f5bb0356909
        - registry.redhat.io/mta/mta-platform-addon-rhel9@sha256:a288d5a156006695854c2e76d09dfe356a31136efb72ba4f85f24940a5aac32f
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/rhel8/postgresql-15@sha256:68fc74033591a7c7608adb438a81ffdf232f199adbc7c92df286097debd815d0
        version: 8.0.1
      entries:
      - name: mta-operator.v8.0.1
        version: 8.0.1
      - name: mta-operator.v8.0.0
        version: 8.0.0
      name: stable-v8.0
    defaultChannel: stable-v8.0
    packageName: mta-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Isovalent
      provider-url: ""
    name: cilium-enterprise
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cilium.v1.10.13-xed86eae
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{"endpointRoutes":{"enabled":true},"kubeProxyReplacement":"probe","cni":{"binPath":"/var/lib/cni/bin","confPath":"/var/run/multus/cni/net.d"},"ipam":{"prometheus":{"serviceMonitor":{"enabled":false}},"mode":"cluster-pool"},"hubble":{"tls":{"enabled":false}}}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Cilium Enterprise - eBPF-based Networking, Security, and Observability
        displayName: Cilium Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Cilium Enterprise Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Cilium Enterprise
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/cilium@sha256:6887537789603946543aaa370a3ec592287a235231bf16aa386e091823285515
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:cc1f0e6b27ccda8a843dfb7fa4a8fef052ba29716646557815677c5d1bea2a1a
        - quay.io/cilium/certgen@sha256:0c2b71bb3469990e7990e7e26243617aa344b5a69a4ce465740b8577f9d48ab9
        - quay.io/isovalent/hubble-enterprise-operator@sha256:0d5e6a5d9c07780c18e5aa81d8f1c95c399bff2d36a44fa5f61ac89a788ca83b
        - quay.io/isovalent/clustermesh-apiserver@sha256:eb3ee3d2cb07e6c5966e4bc2e50615949303be5d5128e156d5c0dbe8404dc093
        - quay.io/isovalent/hubble-enterprise-metadata@sha256:72c7aa3961f14df413569cd156820a45553bb24d393b11246a18bf8b6553e022
        - quay.io/isovalent/hubble-rbac@sha256:03f3304c157024356a6de13c3d91b4506b8e54d587920d80ebcc76cbcfeaeda6
        - quay.io/oauth2-proxy/oauth2-proxy@sha256:ecd26b74a01f2b547ddaed4d32d35f8f5e09c378d5c1fc6cfa63f0adf659ac2b
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:3dbb71004362a70683a5ee9f0916bca75c0d1c351d144677fd9d85bcb2ca8bf7
        - quay.io/cilium/startup-script@sha256:1daf817f34000399fcb5da9a94cb299e2810d2c7a52e51de22ba0d4783b6ce84
        - quay.io/isovalent/hubble-export-fluentd@sha256:05cb13f533f2c89b98a47cd58badda07add54077cd22283ca5028cb39f2e4486
        - quay.io/isovalent/hubble-export-s3@sha256:ce4f71f7f13301133b7d471b87fb81108b2c2da7fc29865ef96bc8431b2be72b
        - quay.io/isovalent/hubble-relay@sha256:9145b03acc954efde54e1ab9da878462526c5e820b83a92e32cc24291f784d33
        - quay.io/isovalent/hubble-ui-enterprise-backend@sha256:e892cba6dafcdf6704df3135a0b38d11894a5f276ace40683e74cb62b9c311d8
        - quay.io/isovalent/hubble-ui-enterprise@sha256:c9921c65892a5293a4f1bef787636d6ae58cec1af65da06862a47e3450afdc6e
        - quay.io/isovalent/operator-generic@sha256:1cc0b0d2e71564ad8759be326c66ea13b4955b9441fb67e906da534e1b38aefa
        - quay.io/cilium/cilium-etcd-operator@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/coreos/etcd@sha256:04833b601fa130512450afa45c4fe484fee1293634f34c7ddc231bd193c74017
        - quay.io/isovalent/hubble-enterprise@sha256:1e1d3e6c199546b2398f4166ff64210c04075bb407c8f07c5be8d3db08560d4a
        - quay.io/cilium/hubble-export-stdout@sha256:f1b1475a3c89950481264f5f8ca63eea3b911a45dc83fdf15122d695a0fba9b3
        version: 1.10.13+xed86eae
      entries:
      - name: cilium.v1.10.13-xed86eae
        version: 1.10.13+xed86eae
      - name: cilium.v1.10.12-xb203fae
        version: 1.10.12+xb203fae
      - name: cilium.v1.10.11-x10ae342
        version: 1.10.11+x10ae342
      name: "1.10"
    - currentCSV: cilium.v1.11.21-xd0d07b1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Cilium Enterprise - eBPF-based Networking, Security, and Observability
        displayName: Cilium Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Cilium Enterprise Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Cilium Enterprise
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/hubble-relay:v1.11.21-cee.1@sha256:5933dd1f8111d6bca0c68db9247385b5d215d5b613095bafab8244098f2c5a26
        - quay.io/isovalent/operator-generic:v1.11.21-cee.1@sha256:25b668c1febe1d1a70b63dfe926be4e55fbf77fd186e9df7581e41d7e9813469
        - quay.io/cilium/certgen:v0.1.5@sha256:0c2b71bb3469990e7990e7e26243617aa344b5a69a4ce465740b8577f9d48ab9
        - quay.io/coreos/etcd:v3.4.13@sha256:04833b601fa130512450afa45c4fe484fee1293634f34c7ddc231bd193c74017
        - cgr.dev/chainguard/oauth2-proxy:7.4.0@sha256:54857c70321004d3e0b8b8d7208ce5422c1f71c18db5be02d2543f187ea8e8e2
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:89d480ae76480829660d4cccfede74717faeb7e62a4a48b932750e41a945783d
        - quay.io/isovalent/hubble-export-stdout:v1.0.3@sha256:bef600089c1671fce11bb4bcb98b81f25e65152a1a2f13b64ea637cfc5779c11
        - quay.io/isovalent/hubble-rbac:v1.3.0@sha256:4c106dd133861a678eb24cf98b35d5023cccca0834c954c49b68514c366aedf0
        - quay.io/isovalent/hubble-ui-enterprise:v0.23.0@sha256:02635d1392cca7e09ab7797f69147880068ba7e3b0d865be97eeab33edd646a0
        - quay.io/isovalent/cilium:v1.11.21-cee.1@sha256:f41241a15cd96d26727aa1ec413ace643728ddbe42f7fb7b234dbda22bf3950b
        - quay.io/isovalent/hubble-enterprise-operator:v1.10.5@sha256:31b18a1ea7002936f04dd070549e0c9a02f8a33394666fc5b0523ab1350c6120
        - quay.io/isovalent/hubble-export-fluentd:v1.5.1@sha256:eaf42a84821509b69e2ef2b658796062e79a90e63045a98689da3da99a12e492
        - quay.io/isovalent/hubble-enterprise:v1.10.5@sha256:340700d4e28ded2aa9c50ff9f938996bb43faa84e0b2ba38ec79452648d7e5d7
        - quay.io/cilium/cilium-etcd-operator:v2.0.7@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/isovalent/clustermesh-apiserver:v1.11.21-cee.1@sha256:e16d8375ed8a1c3a872047b3aacf3469bde43552f1a51ee3e159ef2e9fea3e97
        - quay.io/isovalent/hubble-export-s3:v1.0.0@sha256:89c178c0a010166c68819ab5de32ab59b64a88aa23a05d8e4f78adb1a4b6c3d3
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:d3148bf3b9765467936ee067b25b5ef3683d3e55260f517c7fe271ac0e19cb47
        - quay.io/cilium/startup-script:62093c5c233ea914bfa26a10ba41f8780d9b737f@sha256:a1454ca1f93b69ecd2c43482c8e13dc418ae15e28a46009f5934300a20afbdba
        - quay.io/isovalent/hubble-ui-enterprise-backend:v0.23.0@sha256:2fbdad86bb5244075f31487262d790f6fa75cdd993f868b952252905c118621c
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:372511f6fa3523dadfe9128caf77520cf74ce24df4a19e1583ee197375e06014
        version: 1.11.21+xd0d07b1
      entries:
      - name: cilium.v1.11.21-xd0d07b1
        version: 1.11.21+xd0d07b1
      - name: cilium.v1.11.20-x0f6d966
        version: 1.11.20+x0f6d966
      name: "1.11"
    - currentCSV: cilium.v1.12.21-x3861686
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.12.14 <1.12.21'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/hubble-export-stdout:v1.0.3@sha256:bef600089c1671fce11bb4bcb98b81f25e65152a1a2f13b64ea637cfc5779c11
        - quay.io/cilium/certgen:v0.1.8@sha256:4a456552a5f192992a6edcec2febb1c54870d665173a33dc7d876129b199ddbd
        - quay.io/coreos/etcd:v3.5.4@sha256:795d8660c48c439a7c3764c2330ed9222ab5db5bb524d8d0607cac76f7ba82a3
        - quay.io/isovalent/hubble-enterprise-operator:v1.10.5@sha256:31b18a1ea7002936f04dd070549e0c9a02f8a33394666fc5b0523ab1350c6120
        - quay.io/isovalent/hubble-export-fluentd:v1.5.1@sha256:eaf42a84821509b69e2ef2b658796062e79a90e63045a98689da3da99a12e492
        - quay.io/isovalent/hubble-ui-enterprise:v0.28.1@sha256:11dfba0e4fcf43415aa6e8b3b6e98a5c4f468ec67b377328ad48b92037bbfbb0
        - quay.io/isovalent/hubble-rbac:v1.3.0@sha256:4c106dd133861a678eb24cf98b35d5023cccca0834c954c49b68514c366aedf0
        - quay.io/isovalent/oauth2-proxy:7.6.0@sha256:b6e40d76f0925e76f0a5b181be3f6c62728fa3e4aaef979caf9ea245f4ed03da
        - quay.io/isovalent/hubble-ui-enterprise-backend:v0.28.1@sha256:515aeb8166dd6995b04d4cd3333c94a740182943ba4e90a38871ee89c0b64e92
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:f95c9e8002d8e381d604752b1d59b75595badbdb0b11237ac1cac4ecd04f4800
        - quay.io/cilium/startup-script:62093c5c233ea914bfa26a10ba41f8780d9b737f@sha256:a1454ca1f93b69ecd2c43482c8e13dc418ae15e28a46009f5934300a20afbdba
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:71cbb44a41b60ab64c6eae99f819796868a57234a5ff210598bd23b73b3b02c7
        - quay.io/isovalent/hubble-relay:v1.12.21-cee.1@sha256:9d8dadc3f330acf0fa169c428d5fdf1d138d0294065eec5c628f6647106fe8b6
        - quay.io/isovalent/operator-generic:v1.12.21-cee.1@sha256:4e19cda799a747b69f53b5e5a860ba256399d18221d5a4bbf243142ba1c69bb8
        - quay.io/isovalent/cilium:v1.12.21-cee.1@sha256:3a462308cf12b572db987c03d190ee33691ccb04775d01beb192703a52f8d47b
        - quay.io/isovalent/hubble-export-s3:v1.0.0@sha256:89c178c0a010166c68819ab5de32ab59b64a88aa23a05d8e4f78adb1a4b6c3d3
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:a71b6fe33997db924669253992436e1e02d88769bb97376c0871848c2d330fed
        - quay.io/cilium/cilium-etcd-operator:v2.0.7@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/isovalent/clustermesh-apiserver:v1.12.21-cee.1@sha256:3f6549409966086a49e338c7829b9141a73ef2ebeebaac91db430aeb3ccd2e22
        - quay.io/isovalent/hubble-enterprise:v1.10.5@sha256:340700d4e28ded2aa9c50ff9f938996bb43faa84e0b2ba38ec79452648d7e5d7
        version: 1.12.21+x3861686
      entries:
      - name: cilium.v1.12.21-x3861686
        version: 1.12.21+x3861686
      - name: cilium.v1.12.19-xca684e0
        version: 1.12.19+xca684e0
      - name: cilium.v1.12.18-xcb1adcf
        version: 1.12.18+xcb1adcf
      - name: cilium.v1.12.17-xae21c14
        version: 1.12.17+xae21c14
      - name: cilium.v1.12.16-x38e0b62
        version: 1.12.16+x38e0b62
      - name: cilium.v1.12.15-x8ca64a3
        version: 1.12.15+x8ca64a3
      - name: cilium.v1.12.14-xc86b260
        version: 1.12.14+xc86b260
      - name: cilium.v1.12.13-x2b5cec9
        version: 1.12.13+x2b5cec9
      - name: cilium.v1.12.12-xbd7b835
        version: 1.12.12+xbd7b835
      - name: cilium.v1.12.11-xffdea76
        version: 1.12.11+xffdea76
      - name: cilium.v1.12.10-x4a0e9e7
        version: 1.12.10+x4a0e9e7
      - name: cilium.v1.12.9-x4be66e4
        version: 1.12.9+x4be66e4
      - name: cilium.v1.12.8-x87b90a9
        version: 1.12.8+x87b90a9
      - name: cilium.v1.12.7-x53a2aab
        version: 1.12.7+x53a2aab
      name: "1.12"
    - currentCSV: cilium-enterprise.v1.13.21-x96449fb
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.13.7 <1.13.21+x96449fb'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/hubble-export-fluentd:v1.11.0@sha256:50cd2e4c2d04e8befcc2ae1a1463f07cba01edb9b546fb455fe7976311165385
        - quay.io/isovalent/hubble-export-s3:v1.0.2@sha256:518daea1074d260d824c3e03a93ab6b2a7a5f4c22b8e07938770add8257f4a52
        - quay.io/isovalent/hubble-ui-enterprise:v1.0.3@sha256:55bf787c96561f4a460e2bfe5966421e2d85f3f9a38ac2487c6f6486c97cd5af
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:1074f45a625df6ea412a9ffef3d4f4e53f3107ca45bb1de9bb030c47ce6518d9
        - quay.io/cilium/cilium-etcd-operator:v2.0.7@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/isovalent/operator-generic:v1.13.21-cee.2@sha256:6f2d0d575e3f74395c959833992cd5fbb6971f4e292df1b7cf45be8b07be5e7a
        - quay.io/isovalent/hubble-enterprise-operator:v1.11.6@sha256:38253c2e17a8b2e88a226f0976c9cf4a00445212e2886e6f07cbb3a52757324f
        - quay.io/cilium/certgen:v0.1.13@sha256:01802e6a153a9473b06ebade7ee5730f8f2c6cc8db8768508161da3cdd778641
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:71cbb44a41b60ab64c6eae99f819796868a57234a5ff210598bd23b73b3b02c7
        - quay.io/isovalent/cilium:v1.13.21-cee.2@sha256:f760cd85fa64eb8a197ec282644a8db630745a8a2854ee08aa2662cf67188db5
        - quay.io/isovalent/hubble-relay:v1.13.21-cee.2@sha256:aaf5f959a76d6b517e627d2d0b09dab86ae942616819a9a95f057ed4f45ea480
        - quay.io/cilium/startup-script:c54c7edeab7fde4da68e59acd319ab24af242c3f@sha256:a9d0f451353f1b2f29ed3868e230ecfae10150eab9fd521de67adb3c8ca9c33a
        - quay.io/isovalent/clustermesh-apiserver:v1.13.21-cee.2@sha256:980b0235fd16817ecc4457ad4317a4601993b76df2e81b07a53f6f437c2705af
        - quay.io/isovalent/hubble-ui-enterprise-backend:v1.0.3@sha256:6756d2b808c38efce4765f90641d26aa2e0e79329ecc378a123cd3dc2c439640
        - quay.io/isovalent/hubble-export-stdout:v1.0.4@sha256:a0ff77efa890478f18f5deeba2cd1e2dfd6c5c77981adac57b14d7734de71ff1
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:b04e75456359b50b18e75464da5d7b467fdfeb058fc08ce3a10f057ba5f60107
        - quay.io/isovalent/hubble-rbac:v1.5.6@sha256:739ca45ea09829b0fa8a6198901b34eb5254df55be071bc854bbd37cae12a557
        - quay.io/isovalent/oauth2-proxy:7.6.0@sha256:fc7046dee1a204163e68a6d9a42fec200b02129493a7d166f899dd12e2763364
        - quay.io/coreos/etcd:v3.5.4@sha256:795d8660c48c439a7c3764c2330ed9222ab5db5bb524d8d0607cac76f7ba82a3
        - quay.io/isovalent/hubble-enterprise:v1.11.6@sha256:eb60d59d1fb1b136855829274b31805c4206f8d050c3bf068e63a552576c1b38
        version: 1.13.21+x96449fb
      entries:
      - name: cilium-enterprise.v1.13.21-x96449fb
        version: 1.13.21+x96449fb
      - name: cilium-enterprise.v1.13.20-x5b70650
        version: 1.13.20+x5b70650
      - name: cilium-enterprise.v1.13.19-xdb27142
        version: 1.13.19+xdb27142
      - name: cilium-enterprise.v1.13.18-x0c21a94
        version: 1.13.18+x0c21a94
      - name: cilium-enterprise.v1.13.17-xc8f905f
        version: 1.13.17+xc8f905f
      - name: cilium-enterprise.v1.13.16-xcfe62ed
        version: 1.13.16+xcfe62ed
      - name: cilium-enterprise.v1.13.15-x1dfd26f
        version: 1.13.15+x1dfd26f
      - name: cilium.v1.13.14-xb70933f
        version: 1.13.14+xb70933f
      - name: cilium.v1.13.12-x453f6ad
        version: 1.13.12+x453f6ad
      - name: cilium.v1.13.11-xf6d6935
        version: 1.13.11+xf6d6935
      - name: cilium.v1.13.10-x9d57fc7
        version: 1.13.10+x9d57fc7
      - name: cilium.v1.13.9-xe8a359b
        version: 1.13.9+xe8a359b
      - name: cilium.v1.13.8-x96e1ca9
        version: 1.13.8+x96e1ca9
      - name: cilium.v1.13.7-x7320e7d
        version: 1.13.7+x7320e7d
      - name: cilium.v1.13.6-xd3714ef
        version: 1.13.6+xd3714ef
      - name: cilium.v1.13.5-x8386cae
        version: 1.13.5+x8386cae
      - name: cilium.v1.13.4-xc8b22ea
        version: 1.13.4+xc8b22ea
      - name: cilium.v1.13.3-x69e9561
        version: 1.13.3+x69e9561
      - name: cilium.v1.13.2-x4b1c6c8
        version: 1.13.2+x4b1c6c8
      name: "1.13"
    - currentCSV: cilium-enterprise.v1.14.22-x6d86c88
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.14.0 <1.14.22+x6d86c88'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/cilium:v1.14.22-cee.1@sha256:0e664a5a9e0edba38ab1a25eb7fa50861bb15f69ed0bbe3f3c792bd909240da3
        - quay.io/isovalent/hubble-enterprise:v1.11.6@sha256:eb60d59d1fb1b136855829274b31805c4206f8d050c3bf068e63a552576c1b38
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:148b1029eac14049e2ba84d4d75be1ca43ef2d89951adbdeddec392ad7c9fe1e
        - quay.io/cilium/startup-script:c54c7edeab7fde4da68e59acd319ab24af242c3f@sha256:a9d0f451353f1b2f29ed3868e230ecfae10150eab9fd521de67adb3c8ca9c33a
        - quay.io/coreos/etcd:v3.5.4@sha256:a67fb152d4c53223e96e818420c37f11d05c2d92cf62c05ca5604066c37295e9
        - quay.io/isovalent/oauth2-proxy:7.6.0@sha256:fc7046dee1a204163e68a6d9a42fec200b02129493a7d166f899dd12e2763364
        - quay.io/isovalent/operator-generic:v1.14.22-cee.1@sha256:a997fe24ff0b7f7df3ee12748413ae53d6e07c803162b0db4d812b916b0cfc74
        - quay.io/isovalent/hubble-export-s3:v1.0.2@sha256:518daea1074d260d824c3e03a93ab6b2a7a5f4c22b8e07938770add8257f4a52
        - quay.io/isovalent/hubble-enterprise-operator:v1.11.6@sha256:38253c2e17a8b2e88a226f0976c9cf4a00445212e2886e6f07cbb3a52757324f
        - quay.io/isovalent/hubble-ui-enterprise:v1.2.2@sha256:3e03a58f6eea5d2df195f42ee2817f7b28fa20bbe140f5086937eee8da1b8d56
        - quay.io/isovalent/clustermesh-apiserver:v1.14.22-cee.1@sha256:588e2b173ab409288eda2d404571184562d3d9fd12e2d9afe7282a5a7d79113a
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:71cbb44a41b60ab64c6eae99f819796868a57234a5ff210598bd23b73b3b02c7
        - quay.io/isovalent/hubble-relay:v1.14.22-cee.1@sha256:d7ffc880d2e42e0876417ec26115b0e9155ad9a2e7f47c02c434746afa42b29a
        - quay.io/isovalent/hubble-rbac:v1.5.2@sha256:29309837e2246a1b6849d7a09d01ceebfdb43fa0ade973d14584f0e52b856b95
        - quay.io/cilium/cilium-envoy:v1.32.5-1743506100-0821ef0acdf9f824d47d34e02932be522b3e7233@sha256:305c8b7da56ef1b64e4deb0642acf93a3944f2712e40c99a40bb005e6dc9761b
        - quay.io/cilium/certgen:v0.1.17@sha256:07959f3125dae659ab9036c14df046e2536f7a4f6c92dabda837388b0344dc74
        - quay.io/isovalent/hubble-export-stdout:v1.0.4@sha256:a0ff77efa890478f18f5deeba2cd1e2dfd6c5c77981adac57b14d7734de71ff1
        - quay.io/isovalent/hubble-ui-enterprise-backend:v1.2.2@sha256:4258f7e0bff24ff1e0b214f62b37097032b6426ba28edd3dfc4f451a34de0110
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:0543e615d8a48ba6aaf90a8de0b0a79d37689c64bfe71f91c340455d9a359426
        - quay.io/isovalent/hubble-export-fluentd:v1.8.1@sha256:ce0cce63a8473d5ae73872fc65d82c54f2875511bb03f0bc8ee8480148c43ee1
        version: 1.14.22+x6d86c88
      entries:
      - name: cilium-enterprise.v1.14.22-x6d86c88
        version: 1.14.22+x6d86c88
      - name: cilium-enterprise.v1.14.21-xe0c9553
        version: 1.14.21+xe0c9553
      - name: cilium-enterprise.v1.14.20-xe01e743
        version: 1.14.20+xe01e743
      - name: cilium-enterprise.v1.14.19-xc1b9aff
        version: 1.14.19+xc1b9aff
      name: "1.14"
    - currentCSV: cilium-enterprise.v1.15.22-xfb6ee71
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.15.0 <1.15.22+xfb6ee71'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:2aede84df42365c9da6bf3d4e9b77b3e4ea0fc0646df72c7bce382abd0139055
        - quay.io/isovalent/cilium-envoy-ubi:v1.33.4-1752151664-7c2edb0b44cf95f326d628b837fcdd845102ba68@sha256:e81fdde48c3d5cd93111e1d51d9f8554adb32ee937601a9124354e0894933b99
        - quay.io/isovalent/cilium:v1.15.22-cee.1@sha256:ce6331fa084d92ab65047b2b246f8ebae555e263e41722cb14978a152edb667f
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.15.22-cee.1@sha256:c5d1ae516aae27fac17b266cfdcfe659aa0d4e214027e0c2d84ae2970e7a5cf5
        - quay.io/isovalent/hubble-ui-backend-ubi:v1.3.8@sha256:a8bb183635215854b9dcd6340d4b93a123990a2ee8ded75a143c52b01f9b72d8
        - quay.io/isovalent/hubble-ui-frontend-ubi:v1.3.8@sha256:2a8f95d4bfdb0f196e27e5ebe0e00bbbbdab2f963c5beed587538f68618849c0
        - quay.io/isovalent/operator-generic-ubi:v1.15.22-cee.1@sha256:b1db5ebc6fb614a38e53e8d9be5960aeac09b961a5355e558d4ee964a9a6c07c
        - quay.io/isovalent/startup-script-ubi:1755531540-60ee83e@sha256:2e1d5048cbfcd3c77f732da8203a6c792cbf19897b5cf137b9ad23a6a267f6b2
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:eb5db92aa51052943a238aef136daab3ccc5daf60b035a4b569fd04ac02ab8e1
        - quay.io/isovalent/certgen-ubi:v0.1.19@sha256:c32e96b0972c9bcd3896945c46ea23e330c9dea407afee3a637daae637296f4c
        - quay.io/isovalent/hubble-relay-ubi:v1.15.22-cee.1@sha256:887789a333224deaaadeaf3406d5a6133febf097076e7a7f9f55bd0e43afd3b2
        - quay.io/isovalent/oauth2-proxy:7.12.0-20250819@sha256:fe8f76728c36536d498b2a5c11172cb18dc30bbb555df2a6d14c036b29cb9f10
        version: 1.15.22+xfb6ee71
      entries:
      - name: cilium-enterprise.v1.15.22-xfb6ee71
        version: 1.15.22+xfb6ee71
      - name: cilium-enterprise.v1.15.21-x2661a01
        version: 1.15.21+x2661a01
      - name: cilium-enterprise.v1.15.20-x6df37bb
        version: 1.15.20+x6df37bb
      - name: cilium-enterprise.v1.15.19-x0be49ab
        version: 1.15.19+x0be49ab
      - name: cilium-enterprise.v1.15.18-xeeaa70b
        version: 1.15.18+xeeaa70b
      - name: cilium-enterprise.v1.15.17-xdfd9482
        version: 1.15.17+xdfd9482
      - name: cilium-enterprise.v1.15.16-xc7e31ca
        version: 1.15.16+xc7e31ca
      - name: cilium-enterprise.v1.15.15-xf37f22c
        version: 1.15.15+xf37f22c
      - name: cilium-enterprise.v1.15.14-x0e512e3
        version: 1.15.14+x0e512e3
      - name: cilium-enterprise.v1.15.13-x134fa29
        version: 1.15.13+x134fa29
      name: "1.15"
    - currentCSV: cilium-enterprise.v1.16.16-xf0717b8
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.16.0 <1.16.16+xf0717b8'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/cilium-envoy-ubi:v1.16.16-cee.1@sha256:db1439f994966d7f2abda9e46f8a5f2c4df05236ace0f9710f9f19f3eae4f520
        - quay.io/isovalent/startup-script-ubi:v1.16.16-cee.1@sha256:16e6199da8c27cfa44656c8a9326ccfcf7911621080329a8a2f919a10b12002d
        - quay.io/isovalent/certgen-ubi:v1.16.16-cee.1@sha256:caf5b5802091462d8e277a0054c9e4aed62da634c967a0e429b9e7458b0bf32c
        - quay.io/isovalent/cilium-ubi:v1.16.16-cee.1@sha256:825ae0912f4e56068b3a320f4d0fbfcaad5c33295944176d3390d3ce2b83d5f3
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.16.16-cee.1@sha256:cf10ac7c8ef966647359d7c581d5d43537fb0a02e3e777db00e7404885dd3ffa
        - quay.io/isovalent/hubble-relay-ubi:v1.16.16-cee.1@sha256:ec02a881eeeecd7477fbd5cd0760655d321b1e006a79eee82af0918a1c9967b3
        - quay.io/isovalent/operator-generic-ubi:v1.16.16-cee.1@sha256:eb4940955d70fb7cfd9d7fbf4c2260a2243b8a71baa438ab3364c161bc05d644
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:9c6929d43ee16fe8548d41f7ea2be5faa66c4938629d9466546505113371fbf6
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:a0eb3d7bf42f891eb9fba3b39b1133372cb006d5aa08128e3aa1898d4b303e6f
        version: 1.16.16+xf0717b8
      entries:
      - name: cilium-enterprise.v1.16.16-xf0717b8
        version: 1.16.16+xf0717b8
      - name: cilium-enterprise.v1.16.15-x6419e26
        version: 1.16.15+x6419e26
      - name: cilium-enterprise.v1.16.13-xb2de075
        version: 1.16.13+xb2de075
      - name: cilium-enterprise.v1.16.12-xd373871
        version: 1.16.12+xd373871
      - name: cilium-enterprise.v1.16.11-xbd1cd23
        version: 1.16.11+xbd1cd23
      - name: cilium-enterprise.v1.16.10-x89ab4b0
        version: 1.16.10+x89ab4b0
      - name: cilium-enterprise.v1.16.9-x8ec4137
        version: 1.16.9+x8ec4137
      - name: cilium-enterprise.v1.16.8-yd2b50b4
        version: 1.16.8+yd2b50b4
      - name: cilium-enterprise.v1.16.7-x4867421
        version: 1.16.7+x4867421
      - name: cilium-enterprise.v1.16.6-x7e6eb1c
        version: 1.16.6+x7e6eb1c
      name: "1.16"
    defaultChannel: "1.16"
    packageName: cilium-enterprise
    provider:
      name: Isovalent
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-applicationautoscaling-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-applicationautoscaling-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "applicationautoscaling.services.k8s.aws/v1alpha1",
                "kind": "ScalableTarget",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "applicationautoscaling.services.k8s.aws/v1alpha1",
                "kind": "ScalingPolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/applicationautoscaling-controller:1.2.0
          createdAt: "2025-11-29T04:48:11Z"
          description: AWS Application Auto Scaling controller is a service controller
            for managing Application Auto Scaling resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ScalableTarget represents the state of an AWS applicationautoscaling
              ScalableTarget resource.
            displayName: ScalableTarget
            kind: ScalableTarget
            name: scalabletargets.applicationautoscaling.services.k8s.aws
            version: v1alpha1
          - description: ScalingPolicy represents the state of an AWS applicationautoscaling
              ScalingPolicy resource.
            displayName: ScalingPolicy
            kind: ScalingPolicy
            name: scalingpolicies.applicationautoscaling.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Application Auto Scaling resources in AWS from within your Kubernetes cluster.
          **About Amazon Application Auto Scaling**
          Application Auto Scaling is a web service for developers and system administrators who need a solution for automatically scaling their scalable resources for individual AWS services beyond Amazon EC2. Application Auto Scaling allows you to configure automatic scaling for the following resources:
          - AppStream 2.0 fleets
          - Aurora replicas
          - Amazon Comprehend document classification and entity recognizer endpoints
          - DynamoDB tables and global secondary indexes
          - Amazon Elastic Container Service (ECS) services
          - Amazon EMR clusters
          - Amazon Keyspaces (for Apache Cassandra) tables
          - Lambda function provisioned concurrency
          - Amazon Managed Streaming for Apache Kafka (MSK) broker storage
          - SageMaker endpoint variants
          - Spot Fleet requests
          - Custom resources provided by your own applications or services. For more information, see the [GitHub repository](https://github.com/aws/aws-auto-scaling-custom-resource)

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Application Auto Scaling
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - applicationautoscaling
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Application Auto Scaling User Guide
          url: https://docs.aws.amazon.com/autoscaling/application/userguide/what-is-application-auto-scaling.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: application auto scaling maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/applicationautoscaling-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-applicationautoscaling-controller@sha256:bfb1bb568c09825641fc13e7b9cc2a9632d49222be29341cf82f0df1c90229be
        version: 1.2.0
      entries:
      - name: ack-applicationautoscaling-controller.v1.2.0
        version: 1.2.0
      - name: ack-applicationautoscaling-controller.v1.1.2
        version: 1.1.2
      - name: ack-applicationautoscaling-controller.v1.1.1
        version: 1.1.1
      - name: ack-applicationautoscaling-controller.v1.1.0
        version: 1.1.0
      - name: ack-applicationautoscaling-controller.v1.0.30
        version: 1.0.30
      - name: ack-applicationautoscaling-controller.v1.0.29
        version: 1.0.29
      - name: ack-applicationautoscaling-controller.v1.0.27
        version: 1.0.27
      - name: ack-applicationautoscaling-controller.v1.0.26
        version: 1.0.26
      - name: ack-applicationautoscaling-controller.v1.0.25
        version: 1.0.25
      - name: ack-applicationautoscaling-controller.v1.0.24
        version: 1.0.24
      - name: ack-applicationautoscaling-controller.v1.0.23
        version: 1.0.23
      - name: ack-applicationautoscaling-controller.v1.0.22
        version: 1.0.22
      - name: ack-applicationautoscaling-controller.v1.0.21
        version: 1.0.21
      - name: ack-applicationautoscaling-controller.v1.0.19
        version: 1.0.19
      - name: ack-applicationautoscaling-controller.v1.0.18
        version: 1.0.18
      - name: ack-applicationautoscaling-controller.v1.0.17
        version: 1.0.17
      - name: ack-applicationautoscaling-controller.v1.0.16
        version: 1.0.16
      - name: ack-applicationautoscaling-controller.v1.0.15
        version: 1.0.15
      - name: ack-applicationautoscaling-controller.v1.0.11
        version: 1.0.11
      - name: ack-applicationautoscaling-controller.v1.0.9
        version: 1.0.9
      - name: ack-applicationautoscaling-controller.v1.0.8
        version: 1.0.8
      - name: ack-applicationautoscaling-controller.v1.0.7
        version: 1.0.7
      - name: ack-applicationautoscaling-controller.v1.0.6
        version: 1.0.6
      - name: ack-applicationautoscaling-controller.v1.0.5
        version: 1.0.5
      - name: ack-applicationautoscaling-controller.v1.0.4
        version: 1.0.4
      - name: ack-applicationautoscaling-controller.v1.0.3
        version: 1.0.3
      - name: ack-applicationautoscaling-controller.v1.0.2
        version: 1.0.2
      - name: ack-applicationautoscaling-controller.v1.0.0
        version: 1.0.0
      - name: ack-applicationautoscaling-controller.v0.2.16
        version: 0.2.16
      - name: ack-applicationautoscaling-controller.v0.2.15
        version: 0.2.15
      - name: ack-applicationautoscaling-controller.v0.2.14
        version: 0.2.14
      - name: ack-applicationautoscaling-controller.v0.2.13
        version: 0.2.13
      - name: ack-applicationautoscaling-controller.v0.2.12
        version: 0.2.12
      - name: ack-applicationautoscaling-controller.v0.2.10
        version: 0.2.10
      - name: ack-applicationautoscaling-controller.v0.2.9
        version: 0.2.9
      - name: ack-applicationautoscaling-controller.v0.2.8
        version: 0.2.8
      - name: ack-applicationautoscaling-controller.v0.2.7
        version: 0.2.7
      - name: ack-applicationautoscaling-controller.v0.2.6
        version: 0.2.6
      - name: ack-applicationautoscaling-controller.v0.2.5
        version: 0.2.5
      - name: ack-applicationautoscaling-controller.v0.2.4
        version: 0.2.4
      - name: ack-applicationautoscaling-controller.v0.2.3
        version: 0.2.3
      - name: ack-applicationautoscaling-controller.v0.2.2
        version: 0.2.2
      - name: ack-applicationautoscaling-controller.v0.2.1
        version: 0.2.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-applicationautoscaling-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-mq-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-mq-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mq.services.k8s.aws/v1alpha1",
                "kind": "Broker",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/mq-controller:1.2.0
          createdAt: "2025-11-29T03:37:35Z"
          description: AWS MQ controller is a service controller for managing MQ resources
            in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Broker represents the state of an AWS mq Broker resource.
            displayName: Broker
            kind: Broker
            name: brokers.mq.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon MQ resources in AWS from within your Kubernetes cluster.

          **About Amazon MQ**

          Amazon MQ is a managed message broker service for Apache ActiveMQ and RabbitMQ that makes it easy to set up and operate message brokers on AWS. Amazon MQ reduces your operational responsibilities by managing the provisioning, setup, and maintenance of message brokers for you. Because Amazon MQ connects to your current applications with industry-standard APIs and protocols, you can easily migrate to AWS without having to rewrite code.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon MQ
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mq
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon MQ Developer Resources
          url: https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: mq maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/mq-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-mq-controller@sha256:e9a599737eb39ce150b2d31461354d25fb060d4f2cf45557ffa26e10d52c7c8c
        version: 1.2.0
      entries:
      - name: ack-mq-controller.v1.2.0
        version: 1.2.0
      - name: ack-mq-controller.v1.1.3
        version: 1.1.3
      - name: ack-mq-controller.v1.1.2
        version: 1.1.2
      - name: ack-mq-controller.v1.1.1
        version: 1.1.1
      - name: ack-mq-controller.v1.1.0
        version: 1.1.0
      - name: ack-mq-controller.v1.0.13
        version: 1.0.13
      - name: ack-mq-controller.v1.0.11
        version: 1.0.11
      - name: ack-mq-controller.v1.0.10
        version: 1.0.10
      - name: ack-mq-controller.v1.0.9
        version: 1.0.9
      - name: ack-mq-controller.v1.0.8
        version: 1.0.8
      - name: ack-mq-controller.v1.0.7
        version: 1.0.7
      - name: ack-mq-controller.v1.0.6
        version: 1.0.6
      - name: ack-mq-controller.v1.0.5
        version: 1.0.5
      - name: ack-mq-controller.v1.0.2
        version: 1.0.2
      - name: ack-mq-controller.v1.0.1
        version: 1.0.1
      - name: ack-mq-controller.v1.0.0
        version: 1.0.0
      - name: ack-mq-controller.v0.0.36
        version: 0.0.36
      - name: ack-mq-controller.v0.0.35
        version: 0.0.35
      - name: ack-mq-controller.v0.0.34
        version: 0.0.34
      - name: ack-mq-controller.v0.0.31
        version: 0.0.31
      - name: ack-mq-controller.v0.0.29
        version: 0.0.29
      - name: ack-mq-controller.v0.0.27
        version: 0.0.27
      - name: ack-mq-controller.v0.0.26
        version: 0.0.26
      - name: ack-mq-controller.v0.0.25
        version: 0.0.25
      - name: ack-mq-controller.v0.0.24
        version: 0.0.24
      - name: ack-mq-controller.v0.0.23
        version: 0.0.23
      - name: ack-mq-controller.v0.0.22
        version: 0.0.22
      - name: ack-mq-controller.v0.0.21
        version: 0.0.21
      - name: ack-mq-controller.v0.0.20
        version: 0.0.20
      - name: ack-mq-controller.v0.0.19
        version: 0.0.19
      - name: ack-mq-controller.v0.0.18
        version: 0.0.18
      - name: ack-mq-controller.v0.0.17
        version: 0.0.17
      - name: ack-mq-controller.v0.0.16
        version: 0.0.16
      - name: ack-mq-controller.v0.0.15
        version: 0.0.15
      - name: ack-mq-controller.v0.0.14
        version: 0.0.14
      - name: ack-mq-controller.v0.0.13
        version: 0.0.13
      - name: ack-mq-controller.v0.0.12
        version: 0.0.12
      - name: ack-mq-controller.v0.0.11
        version: 0.0.11
      - name: ack-mq-controller.v0.0.10
        version: 0.0.10
      - name: ack-mq-controller.v0.0.9
        version: 0.0.9
      - name: ack-mq-controller.v0.0.8
        version: 0.0.8
      - name: ack-mq-controller.v0.0.7
        version: 0.0.7
      name: alpha
    defaultChannel: alpha
    packageName: ack-mq-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: web-terminal
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: web-terminal.v1.15.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
            ]
          capabilities: Basic Install
          categories: Developer Tools
          certified: "false"
          containerImage: registry.redhat.io/web-terminal/web-terminal-rhel9-operator@sha256:54aee8a20fe456c48d9b5001b08a6bd2a84b37f2abb0966d9d9c5c2ad087d3ae
          createdAt: "2021-10-26T07:24:32Z"
          description: Start a web terminal in your browser with common CLI tools
            for interacting with the cluster
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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: "true"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/redhat-developer/web-terminal-operator/
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          required:
          - kind: DevWorkspaceRouting
            name: devworkspaceroutings.controller.devfile.io
            version: v1alpha1
          - kind: DevWorkspace
            name: devworkspaces.workspace.devfile.io
            version: v1alpha1
        description: |
          Start a web terminal in your browser with common CLI tools for interacting with
          the cluster.

          **Note:** The Web Terminal Operator integrates with the OpenShift Console in
          OpenShift 4.5.3 and higher to simplify web terminal instance creation and
          automate OpenShift login. In earlier versions of OpenShift, the operator can
          be installed but web terminals will have to be created and accessed manually.

          ## Description
          The Web Terminal Operator leverages the
          [DevWorkspace Operator](https://github.com/devfile/devworkspace-operator)
          to provision enviroments which support common cloud CLI tools. When this
          operator is installed, the DevWorkspace Operator will be installed as a
          dependency.

          ## How to Install
          Press the **Install** button, choose the upgrade strategy, and wait for the
          **Installed** Operator status.

          When the operator is installed, you will see a terminal button appear on the
          top right of the console after refreshing the OpenShift console window.

          ## How to Uninstall
          The Web Terminal Operator requires manual steps to fully uninstall the operator.
          As the Web Terminal Operator is designed as a way to access the OpenShift
          cluster, web terminal instances store user credentials. To avoid exposing these
          credentials to unwanted parties, the operator deploys webhooks and finalizers
          that aren't removed when the operator is uninstalled. See the
          [uninstall guide](https://docs.openshift.com/container-platform/latest/web_console/web_terminal/uninstalling-web-terminal.html)
          for more details.

          ## Documentation
          Documentation for this Operator is available at https://docs.openshift.com/container-platform/latest/web\_console/web\_terminal/installing-web-terminal.html
        displayName: Web Terminal
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - workspace
        - devtools
        - developer
        - ide
        - terminal
        links:
        - name: Web Terminal Repo
          url: https://github.com/redhat-developer/web-terminal-operator/
        maintainers:
        - email: dakwon@redhat.com
          name: David Kwon
        - email: ibuziuk@redhat.com
          name: Ilya Buziuk
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/web-terminal/web-terminal-tooling-rhel9@sha256:a107f3d0a1e0046a2a3c089d67b4d54f0b94048154dd2fbd5f8344506c9994cd
        - registry.redhat.io/web-terminal/web-terminal-operator-bundle@sha256:a9be30074f26b71e14cab823718dc4fd03edcc2694826cdd8aa3c06ed2201057
        - registry.redhat.io/web-terminal/web-terminal-exec-rhel9@sha256:f887c71de000744733326c39725e52d7e576c0e8a9177548d59eb98706b97189
        - registry.redhat.io/web-terminal/web-terminal-rhel9-operator@sha256:54aee8a20fe456c48d9b5001b08a6bd2a84b37f2abb0966d9d9c5c2ad087d3ae
        version: 1.15.0
      entries:
      - name: web-terminal.v1.15.0
        version: 1.15.0
      - name: web-terminal.v1.14.0
        version: 1.14.0
      - name: web-terminal.v1.13.0
        version: 1.13.0
      - name: web-terminal.v1.12.1-0.1745393748.p
        version: 1.12.1+0.1745393748.p
      - name: web-terminal.v1.12.1-0.1743657317.p
        version: 1.12.1+0.1743657317.p
      - name: web-terminal.v1.12.1-0.1742484227.p
        version: 1.12.1+0.1742484227.p
      - name: web-terminal.v1.12.1
        version: 1.12.1
      - name: web-terminal.v1.11.1-0.1747215995.p
        version: 1.11.1+0.1747215995.p
      - name: web-terminal.v1.11.1
        version: 1.11.1
      - name: web-terminal.v1.11.0
        version: 1.11.0
      - name: web-terminal.v1.10.1
        version: 1.10.1
      - name: web-terminal.v1.10.1-0.1740684238.p
        version: 1.10.1+0.1740684238.p
      - name: web-terminal.v1.10.0-0.1720402943.p
        version: 1.10.0+0.1720402943.p
      - name: web-terminal.v1.10.0-0.1732652667.p
        version: 1.10.0+0.1732652667.p
      - name: web-terminal.v1.10.0-0.1731481377.p
        version: 1.10.0+0.1731481377.p
      - name: web-terminal.v1.10.0-0.1727169028.p
        version: 1.10.0+0.1727169028.p
      - name: web-terminal.v1.10.0-0.1720435222.p
        version: 1.10.0+0.1720435222.p
      - name: web-terminal.v1.10.0
        version: 1.10.0
      - name: web-terminal.v1.9.0-0.1708477317.p
        version: 1.9.0+0.1708477317.p
      - name: web-terminal.v1.9.0
        version: 1.9.0
      - name: web-terminal.v1.8.0-0.1708477299.p
        version: 1.8.0+0.1708477299.p
      - name: web-terminal.v1.8.0-0.1701199376.p
        version: 1.8.0+0.1701199376.p
      - name: web-terminal.v1.8.0-0.1692219820.p
        version: 1.8.0+0.1692219820.p
      - name: web-terminal.v1.8.0
        version: 1.8.0
      - name: web-terminal.v1.7.0-0.1681197295.p
        version: 1.7.0+0.1681197295.p
      - name: web-terminal.v1.7.0-0.1708477265.p
        version: 1.7.0+0.1708477265.p
      - name: web-terminal.v1.7.0
        version: 1.7.0
      - name: web-terminal.v1.7.0-0.1692219820.p
        version: 1.7.0+0.1692219820.p
      - name: web-terminal.v1.7.0-0.1682321121.p
        version: 1.7.0+0.1682321121.p
      - name: web-terminal.v1.7.0-0.1684429884.p
        version: 1.7.0+0.1684429884.p
      - name: web-terminal.v1.6.0
        version: 1.6.0
      - name: web-terminal.v1.6.0-0.1692219820.p
        version: 1.6.0+0.1692219820.p
      - name: web-terminal.v1.5.1-0.1661829403.p
        version: 1.5.1+0.1661829403.p
      - name: web-terminal.v1.5.1
        version: 1.5.1
      - name: web-terminal.v1.5.0-0.1657220207.p
        version: 1.5.0+0.1657220207.p
      - name: web-terminal.v1.5.0
        version: 1.5.0
      - name: web-terminal.v1.4.0
        version: 1.4.0
      - name: web-terminal.v1.3.0
        version: 1.3.0
      name: fast
    defaultChannel: fast
    packageName: web-terminal
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: devspaces
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: devspacesoperator.v3.25.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "org.eclipse.che/v1",
                "kind": "CheCluster",
                "metadata": {
                  "name": "devspaces",
                  "namespace": "openshift-devspaces"
                },
                "spec": {
                  "auth": {
                    "identityProviderURL": "",
                    "oAuthClientName": "",
                    "oAuthSecret": ""
                  },
                  "database": {
                    "externalDb": false
                  },
                  "k8s": {
                    "ingressDomain": null,
                    "tlsSecretName": null
                  },
                  "metrics": {
                    "enable": true
                  },
                  "server": {
                    "workspaceNamespaceDefault": "<username>-devspaces"
                  },
                  "storage": {
                    "pvcStrategy": "common"
                  }
                }
              },
              {
                "apiVersion": "org.eclipse.che/v2",
                "kind": "CheCluster",
                "metadata": {
                  "name": "devspaces",
                  "namespace": "openshift-devspaces"
                },
                "spec": {
                  "components": {},
                  "containerRegistry": {},
                  "devEnvironments": {},
                  "gitServices": {},
                  "networking": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/devspaces/devspaces-rhel9-operator@sha256:06cb161519fde83b8c5bcced51f6d639f25a4669e3718338c7ab8dfdefbaa746
          createdAt: "2025-12-13T03:50:34+00:00"
          description: Devfile v2 and v1 development solution, 1 instance per cluster,
            for portable, collaborative k8s workspaces.
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/devspaces-images/
          skipRange: '>=3.0.0 <3.25.0'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              The `CheCluster` custom resource allows defining and managing Red Hat OpenShift Dev Spaces server installation.
              Based on these settings, the  Operator automatically creates and maintains several ConfigMaps:
              `che`, `plugin-registry` that will contain the appropriate environment variables
              of the various components of the installation. These generated ConfigMaps must NOT be updated manually.
            displayName: Red Hat OpenShift Dev Spaces instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v2
          - description: The `CheCluster` custom resource allows defining and managing
              a Che server installation
            displayName: Red Hat OpenShift Dev Spaces instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v1
        description: |
          A collaborative Kubernetes-native development solution that delivers OpenShift workspaces and in-browser IDE for rapid cloud application development.
          This operator installs the Plugin and Devfile registries, Dashboard, Gateway and the Red Hat OpenShift Dev Spaces server, and configures these services.
          OpenShift OAuth is used directly for authentication. TLS mode is on.

          ## How to Install
          Press the **Install** button, choose the channel and the upgrade strategy, and wait for the **Installed** Operator status.
          When the operator is installed, create a new Custom Resource (CR) of Kind CheCluster (click the **Create New** button).
          The CR spec contains all defaults. You can start using Red Hat OpenShift Dev Spaces when the CR status is set to **Available**, and you see a URL to Red Hat OpenShift Dev Spaces.

          ## Defaults
          By default, the operator deploys Red Hat OpenShift Dev Spaces with:
          * 10Gi storage
          * Auto-generated passwords
          * Bundled Plugin and Devfile registries

          Use `oc edit checluster/devspaces -n openshift-devspaces` to update Red Hat OpenShift Dev Spaces default installation options.
          See more in the [Installation guide](https://docs.redhat.com/en/documentation/red_hat_openshift_dev_spaces/3.25/html/administration_guide/configuring-devspaces).

          ### Certificates
          Operator uses a default router certificate to secure Red Hat OpenShift Dev Spaces routes.
          Follow the [guide](https://docs.redhat.com/en/documentation/red_hat_openshift_dev_spaces/3.25/html/administration_guide/configuring-devspaces#importing-untrusted-tls-certificates)
          to import certificates into Red Hat OpenShift Dev Spaces.
        displayName: Red Hat OpenShift Dev Spaces
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eclipse che
        - workspaces
        - devtools
        - developer
        - ide
        - java
        - devspaces
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/openshift-dev-spaces/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_openshift_dev_spaces
        - name: Operator GitHub Repo
          url: https://github.com/redhat-developer/devspaces-images/
        maintainers:
        - email: abazko@redhat.com
          name: Anatolii Bazko
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/devspaces/pluginregistry-rhel9@sha256:572df83aa7e8ac0c198731ece8dd321bede3848fa1e6f2e3dc7bdfc5f8942759
        - registry.redhat.io/devspaces/devspaces-rhel9-operator@sha256:06cb161519fde83b8c5bcced51f6d639f25a4669e3718338c7ab8dfdefbaa746
        - registry.redhat.io/devspaces/udi-rhel9@sha256:bb5baa05f316944ca6df56ad718c368b248e8f4b2488551549b1b13c4ed5844b
        - registry.redhat.io/devspaces/code-rhel9@sha256:7b68bf06abf4f2b948d21ffa82401b44f26965b093e4875653344ae2b7fe46c8
        - registry.redhat.io/devspaces/configbump-rhel9@sha256:7f33a59aa8d1820f8a99ed20eb4b7192c1fb57414a8bc83f5432b8ea2363bb0f
        - registry.redhat.io/devspaces/server-rhel9@sha256:fccbb4185e7694f8c53c994b04e140306a72ed8aa5a6befa7f0690f21e4c19dc
        - registry.redhat.io/devspaces/traefik-rhel9@sha256:7bd1c5582082949142aead1db07b45d41840c58c14ddf18b062df45283e1a316
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:af847bf3d0220392de2f8d56fc3d431add3b31986f8200a4758d287b5bd7a6fe
        - registry.redhat.io/devspaces/dashboard-rhel9@sha256:09607fdeaf2567659a10148c50b19ac265b4a548278b800682ced9d975377cb4
        - registry.redhat.io/devspaces/jetbrains-ide-rhel9@sha256:b6e79f77712ede50d385d477b1d09a34ec4aee074785d385556a12a0a596e582
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:d26a9f4fd48c83bd488ebb889ccec7d65f3bd49e2c94e57c98971a3594d90612
        - registry.redhat.io/devspaces/devspaces-operator-bundle@sha256:74b83b79cba88af0545e7fb52dd70df2c1b96cf23b8963517fc779fbfe3e9aac
        - registry.redhat.io/devspaces/code-sshd-rhel9@sha256:938dfb964aaae293190273034af8b09c5a007d614afa09b735756f930b34666f
        version: 3.25.0
      entries:
      - name: devspacesoperator.v3.25.0
        version: 3.25.0
      - name: devspacesoperator.v3.24.1
        version: 3.24.1
      - name: devspacesoperator.v3.24.0
        version: 3.24.0
      - name: devspacesoperator.v3.23.1
        version: 3.23.1
      - name: devspacesoperator.v3.23.0
        version: 3.23.0
      - name: devspacesoperator.v3.22.1
        version: 3.22.1
      - name: devspacesoperator.v3.22.0
        version: 3.22.0
      - name: devspacesoperator.v3.21.0
        version: 3.21.0
      - name: devspacesoperator.v3.20.0
        version: 3.20.0
      - name: devspacesoperator.v3.19.0
        version: 3.19.0
      - name: devspacesoperator.v3.18.1-0.1739475915.p
        version: 3.18.1+0.1739475915.p
      - name: devspacesoperator.v3.18.1
        version: 3.18.1
      - name: devspacesoperator.v3.18.0
        version: 3.18.0
      - name: devspacesoperator.v3.17.0
        version: 3.17.0
      - name: devspacesoperator.v3.16.1
        version: 3.16.1
      - name: devspacesoperator.v3.16.0
        version: 3.16.0
      - name: devspacesoperator.v3.15.0
        version: 3.15.0
      - name: devspacesoperator.v3.14.0
        version: 3.14.0
      - name: devspacesoperator.v3.13.0
        version: 3.13.0
      - name: devspacesoperator.v3.12.0
        version: 3.12.0
      - name: devspacesoperator.v3.12.0-0.1712003563.p
        version: 3.12.0+0.1712003563.p
      - name: devspacesoperator.v3.11.0
        version: 3.11.0
      - name: devspacesoperator.v3.10.1
        version: 3.10.1
      - name: devspacesoperator.v3.10.0
        version: 3.10.0
      - name: devspacesoperator.v3.9.1
        version: 3.9.1
      - name: devspacesoperator.v3.9.0
        version: 3.9.0
      - name: devspacesoperator.v3.8.0
        version: 3.8.0
      - name: devspacesoperator.v3.7.2
        version: 3.7.2
      - name: devspacesoperator.v3.7.1-0.1691548593.p
        version: 3.7.1+0.1691548593.p
      - name: devspacesoperator.v3.7.1-0.1691407091.p
        version: 3.7.1+0.1691407091.p
      - name: devspacesoperator.v3.7.1
        version: 3.7.1
      - name: devspacesoperator.v3.7.0
        version: 3.7.0
      - name: devspacesoperator.v3.6.0-0.1685322634.p
        version: 3.6.0+0.1685322634.p
      - name: devspacesoperator.v3.6.0-0.1685320856.p
        version: 3.6.0+0.1685320856.p
      - name: devspacesoperator.v3.6.0
        version: 3.6.0
      - name: devspacesoperator.v3.5.0
        version: 3.5.0
      - name: devspacesoperator.v3.4.0-0.1675914643.p
        version: 3.4.0+0.1675914643.p
      - name: devspacesoperator.v3.4.0
        version: 3.4.0
      - name: devspacesoperator.v3.3.0-0.1673528130.p
        version: 3.3.0+0.1673528130.p
      - name: devspacesoperator.v3.3.0
        version: 3.3.0
      name: stable
    defaultChannel: stable
    packageName: devspaces
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Advanced Micro Devices, Inc.
      provider-url: ""
    name: amd-gpu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amd-gpu-operator.v1.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "amd.com/v1alpha1",
                "kind": "DeviceConfig",
                "metadata": {
                  "name": "test-deviceconfig",
                  "namespace": "openshift-amd-gpu"
                },
                "spec": {
                  "devicePlugin": {
                    "devicePluginImage": "rocm/k8s-device-plugin:rhubi-latest",
                    "nodeLabellerImage": "rocm/k8s-node-labeller:rhubi-latest"
                  },
                  "driver": {
                    "enable": "true",
                    "version": "7.0"
                  },
                  "selector": {
                    "feature.node.kubernetes.io/amd-gpu": "true"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: AI/Machine Learning,Monitoring
          containerImage: docker.io/rocm/gpu-operator@sha256:619f6d1ddef671df2704e87a8cca82ee4c1b07d645f05c8d5cb2eb9c6604a270
          createdAt: "2025-10-31T08:47:42Z"
          description: |-
            Operator responsible for deploying AMD GPU kernel drivers, device plugin, device test runner and device metrics exporter
            For more information, visit [documentation](https://instinct.docs.amd.com/projects/gpu-operator/en/latest/)
          deviceConfigManagerImage: docker.io/rocm/device-config-manager@sha256:76363ac0cc42617f1723e14eaeb11434d4d1fa2d4d39d67bc49b3525c599c0ba
          devicePluginImage: docker.io/rocm/k8s-device-plugin@sha256:6976ee40f7fcba3759bbbf5a36e3f12daaf306836606df18592b1b67f7f651d7
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          metricsExporterImage: docker.io/rocm/device-metrics-exporter@sha256:3872ca3534c6679159ffbef504a02e937eb3e11b215c18e649456c0d0ca9bc8d
          nodelabellerImage: docker.io/rocm/k8s-node-labeller@sha256:8206d27891606ebc2f234fed6fe45d181cb31c3ff694a0ff9c3f02d62c280eee
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-amd-gpu
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ROCm/gpu-operator
          support: Advanced Micro Devices, Inc.
          testRunnerImage: docker.io/rocm/test-runner@sha256:529a13953979e7fbd4ff9333735bd2268a81eaa4fdf8f187698cce7d8e720beb
          utilsContainerImage: docker.io/rocm/gpu-operator-utils@sha256:9cbe60dce5b3a2ffd93f7148a363ed5f072a320377d5e5bcbbfb1e05d4959287
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DeviceConfig describes how to enable AMD GPU device
            displayName: DeviceConfig
            kind: DeviceConfig
            name: deviceconfigs.amd.com
            version: v1alpha1
        description: |-
          Operator responsible for deploying AMD GPU kernel drivers, device plugin, device test runner and device metrics exporter
          For more information, visit [documentation](https://instinct.docs.amd.com/projects/gpu-operator/en/latest/)
        displayName: amd-gpu-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AMD
        - GPU
        - AI
        - Deep Learning
        - Hardware
        - Driver
        - Monitoring
        links:
        - name: AMD GPU Operator
          url: https://github.com/ROCm/gpu-operator
        maintainers:
        - email: Yan.Sun3@amd.com
          name: Yan Sun
        - email: farshad.ghodsian@amd.com
          name: Farshad Ghodsian
        - email: shrey.ajmera@amd.com
          name: Shrey Ajmera
        maturity: stable
        provider:
          name: Advanced Micro Devices, Inc.
        relatedImages:
        - docker.io/rocm/k8s-device-plugin@sha256:6976ee40f7fcba3759bbbf5a36e3f12daaf306836606df18592b1b67f7f651d7
        - docker.io/rocm/k8s-node-labeller@sha256:8206d27891606ebc2f234fed6fe45d181cb31c3ff694a0ff9c3f02d62c280eee
        - docker.io/rocm/test-runner@sha256:529a13953979e7fbd4ff9333735bd2268a81eaa4fdf8f187698cce7d8e720beb
        - registry.connect.redhat.com/amd/gpu-operator-v1@sha256:4918beef3a778e8e6bb835240f356002a8b41e40ba011112ca360faa88fe57f4
        - docker.io/rocm/device-config-manager@sha256:76363ac0cc42617f1723e14eaeb11434d4d1fa2d4d39d67bc49b3525c599c0ba
        - docker.io/rocm/device-metrics-exporter@sha256:3872ca3534c6679159ffbef504a02e937eb3e11b215c18e649456c0d0ca9bc8d
        - docker.io/rocm/gpu-operator-utils@sha256:9cbe60dce5b3a2ffd93f7148a363ed5f072a320377d5e5bcbbfb1e05d4959287
        - docker.io/rocm/gpu-operator@sha256:619f6d1ddef671df2704e87a8cca82ee4c1b07d645f05c8d5cb2eb9c6604a270
        version: 1.4.1
      entries:
      - name: amd-gpu-operator.v1.4.1
        version: 1.4.1
      - name: amd-gpu-operator.v1.3.2
        version: 1.3.2
      - name: amd-gpu-operator.v1.3.1
        version: 1.3.1
      - name: amd-gpu-operator.v1.2.1
        version: 1.2.1
      - name: amd-gpu-operator.v1.1.1
        version: 1.1.1
      name: alpha
    defaultChannel: alpha
    packageName: amd-gpu-operator
    provider:
      name: Advanced Micro Devices, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Kubecost
      provider-url: https://www.kubecost.com
    name: kubecost-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubecost-operator.v2.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.kubecost.com/v1alpha1",
                "kind": "CostAnalyzer",
                "metadata": {
                  "name": "costanalyzer-sample"
                },
                "spec": {
                  "clusterController": {
                    "image": {
                      "repository": "registry.connect.redhat.com/kubecost/kubecost-cluster-controller@sha256",
                      "tag": "1a6f11dcd7341ab3f24eba23ec06c7b75646a534a7ed960153601806425469d1"
                    }
                  },
                  "forecasting": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-modeling@sha256:8f59f8fd8696964c1b5322ca79fae78befe97323fa56c2b509bdcc67ee4c0edd"
                  },
                  "global": {
                    "platforms": {
                      "openshift": {
                        "createMonitoringClusterRoleBinding": true,
                        "createMonitoringResourceReaderRoleBinding": true,
                        "enabled": true,
                        "scc": {
                          "clusterController": true,
                          "networkCosts": true,
                          "nodeExporter": true
                        }
                      }
                    },
                    "prometheus": {
                      "enabled": false,
                      "fqdn": "https://prometheus-k8s.openshift-monitoring.svc.cluster.local:9091",
                      "kubeRBACProxy": true
                    }
                  },
                  "grafana": {
                    "image": {
                      "repository": "registry.redhat.io/rhel9/grafana@sha256",
                      "tag": "9f71de028c18034e07a8d15dac13ef68afb91cb899b9e8e7d39703547dd0eac1"
                    },
                    "sidecar": {
                      "image": {
                        "repository": "quay.io/kiwigrid/k8s-sidecar@sha256",
                        "tag": "d3749777d5bedf62549b452a7e2ccb205da53588dc7f04927efc75d0da5b6d23"
                      }
                    }
                  },
                  "kubecostAggregator": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:1b9c9f309e6f41addc7fb6418724a6a6b08486290e31fe1f614efc649874bcef"
                  },
                  "kubecostFrontend": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-frontend@sha256:f9b2196dc6ac017b8074f8fe40f1a58e7a2630282c5b7a019ca9f3dbdb670dc8"
                  },
                  "kubecostModel": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:1b9c9f309e6f41addc7fb6418724a6a6b08486290e31fe1f614efc649874bcef"
                  },
                  "networkCosts": {
                    "image": {
                      "repository": "registry.connect.redhat.com/kubecost/kubecost-network-costs@sha256",
                      "tag": "c444d475be4f1aa36680bd84358e1e07303dcfe5d13a95544ad9e59f80d4a5f0"
                    }
                  },
                  "prometheusRule": {
                    "enabled": true
                  },
                  "serviceMonitor": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          createdAt: "2025-08-08T19:34:34Z"
          description: Deploys Kubecost 2.8.2 via the Helm chart.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: Contact Kubecost for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Kubecost.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The CostAnalyzer API describes a deployment of Kubecost and
              its dependencies.
            displayName: CostAnalyzer
            kind: CostAnalyzer
            name: costanalyzers.charts.kubecost.com
            version: v1alpha1
        description: |2-

          IMPORTANT - Before installation, you must run the following command to allow monitoring of the Kubecost namespace by the local OpenShift Promtheus. If you install in a namespace other than "Kubecost", adjust accordingly.

          `oc label namespace kubecost openshift.io/cluster-monitoring=true`

          Kubecost provides real-time cost visibility and insights for teams using Kubernetes, helping you continuously reduce your cloud costs.

          This OpenShift Operator deploys Kubecost from the official Helm chart.

          Kubecost allows you to:

          * See allocated spend across all native Kubernetes concepts and provide your teams with transparent, accurate cost data reconciled with your actual cloud bill.
          * Join in-cluster costs like CPU and memory with out-of-cluster spend from other cloud services.
          * Get complete cost visibility across OpenShift, On-Prem, AWS, GCP, Azure, Oracle, AliCloud + more.
          * Gain insights you can use to save 30-50%+ on your infrastructure spend, without exposing your private information — your data never gets shared externally, even with us.
          * Have real-time alerts and recurring reports, empowering teams to take control of their Kubernetes-enabled infrastructure and stay within budgeted limits.

          Visit the Kubecost website for more details including features, pricing, documentation, and more at www.kubecost.com.
        displayName: Kubecost
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kubernetes
        - cost
        - kubernetes costs
        - kubernetes optimization
        - k8s
        - cost monitoring
        - cloud costs
        - k8s cost
        links:
        - name: Kubecost
          url: https://www.kubecost.com
        maintainers:
        - email: support@kubecost.com
          name: Kubecost Support
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Kubecost
          url: https://www.kubecost.com
        relatedImages:
        - registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:1b9c9f309e6f41addc7fb6418724a6a6b08486290e31fe1f614efc649874bcef
        - registry.connect.redhat.com/kubecost/kubecost-operator-manager@sha256:582223a66a77f35d1f7ca33460032cfca1581a8ff30f75ead289d8cd4cf62bb9
        - registry.redhat.io/rhel9/grafana@sha256:9f71de028c18034e07a8d15dac13ef68afb91cb899b9e8e7d39703547dd0eac1
        - registry.connect.redhat.com/kubecost/kubecost-cluster-controller@sha256:1a6f11dcd7341ab3f24eba23ec06c7b75646a534a7ed960153601806425469d1
        - registry.connect.redhat.com/kubecost/kubecost-frontend@sha256:f9b2196dc6ac017b8074f8fe40f1a58e7a2630282c5b7a019ca9f3dbdb670dc8
        - registry.connect.redhat.com/kubecost/kubecost-network-costs@sha256:c444d475be4f1aa36680bd84358e1e07303dcfe5d13a95544ad9e59f80d4a5f0
        - registry.connect.redhat.com/kubecost/operator@sha256:2cb5ec186af3264cba42333245616dd01f0f9868a849129b1a31afbc51ee1410
        - registry.connect.redhat.com/kubecost/kubecost-modeling@sha256:8f59f8fd8696964c1b5322ca79fae78befe97323fa56c2b509bdcc67ee4c0edd
        - quay.io/kiwigrid/k8s-sidecar@sha256:d3749777d5bedf62549b452a7e2ccb205da53588dc7f04927efc75d0da5b6d23
        version: 2.8.2
      entries:
      - name: kubecost-operator.v2.8.2
        version: 2.8.2
      - name: kubecost-operator.v2.8.1
        version: 2.8.1
      - name: kubecost-operator.v2.8.0
        version: 2.8.0
      - name: kubecost-operator.v2.7.2
        version: 2.7.2
      - name: kubecost-operator.v2.7.1
        version: 2.7.1
      - name: kubecost-operator.v2.5.4
        version: 2.5.4
      name: alpha
    - currentCSV: kubecost-operator.v3.0.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.kubecost.com/v1",
                "kind": "Kubecost",
                "metadata": {
                  "name": "kubecost-sample"
                },
                "spec": {
                  "global": {
                    "clusterId": "SET_A_UNIQUE_CLUSTER_ID_HERE",
                    "platforms": {
                      "cicd": {
                        "enabled": true,
                        "skipSanityChecks": true
                      },
                      "openshift": {
                        "enabled": true,
                        "route": {
                          "annotations": {},
                          "enabled": false
                        },
                        "scc": {
                          "clusterController": true,
                          "networkCosts": true
                        },
                        "securityContext": {
                          "runAsNonRoot": true,
                          "seccompProfile": {
                            "type": "RuntimeDefault"
                          }
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          createdAt: "2025-12-10T23:50:25Z"
          description: Deploys Kubecost 3.0.6 via the Helm chart.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: Contact Kubecost for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Kubecost.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Kubecost
            name: kubecosts.charts.kubecost.com
            version: v1
        description: |-
          Kubecost provides real-time cost visibility and insights for teams using Kubernetes, helping you continuously reduce your cloud costs.

          This OpenShift Operator deploys Kubecost from the official Helm chart.

          Kubecost allows you to:

          * See allocated spend across all native Kubernetes concepts and provide your teams with transparent, accurate cost data reconciled with your actual cloud bill.
          * Join in-cluster costs like CPU and memory with out-of-cluster spend from other cloud services.
          * Get complete cost visibility across OpenShift, On-Prem, AWS, GCP, Azure, Oracle, AliCloud + more.
          * Gain insights you can use to save 30-50%+ on your infrastructure spend, without exposing your private information — your data never gets shared externally, even with us.
          * Have real-time alerts and recurring reports, empowering teams to take control of their Kubernetes-enabled infrastructure and stay within budgeted limits.

          Visit the Kubecost website for more details including features, pricing, documentation, and more at www.kubecost.com.
        displayName: Kubecost
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kubernetes
        - cost
        - kubernetes costs
        - kubernetes optimization
        - k8s
        - cost monitoring
        - cloud costs
        - k8s cost
        links:
        - name: Kubecost
          url: https://www.kubecost.com
        maintainers:
        - email: support@kubecost.com
          name: Kubecost Support
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Kubecost
          url: https://www.kubecost.com
        relatedImages:
        - registry.connect.redhat.com/kubecost/kubecost-frontend@sha256:4e17cf2dfe83c0de79674cbeb6df7876fb572ee551ba4237a3036610770ad8e6
        - registry.connect.redhat.com/kubecost/kubecost-modeling@sha256:5d1e47f806520bfbb5448df19c0713a89e9a5a7b8e153407ac3eb356d44d979b
        - registry.connect.redhat.com/kubecost/kubecost-network-costs@sha256:3fca4e19e1270c64fdf3f3e7770cee1102c276bf86f6e8f1dded7cae8f005ac4
        - registry.connect.redhat.com/kubecost/kubecost-operator-manager@sha256:686bee59ecbdc1f002520f667e9883caaf0869de4a351154e9ae1c6fd60b4054
        - registry.connect.redhat.com/kubecost/operator@sha256:d04943c19d6e07111bcdada1f98af307dafb17f0107892c4dbc860e69510a728
        - registry.connect.redhat.com/kubecost/ibm-finops-agent@sha256:0ae8416f609c986ebc79819c3e5e29ca7957b40501fdbada8efdec7fa6123d01
        - registry.connect.redhat.com/kubecost/kubecost-cluster-controller@sha256:7389dfb6f47de9e0d9ee3a7d22b6cacd6ef120e08476cceaa3c12e6cea4d1a3c
        - registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:59a3a12bd394a428a99a56add3b3624eafd8adb73eaa4465ece431a0d666030d
        version: 3.0.6
      entries:
      - name: kubecost-operator.v3.0.6
        version: 3.0.6
      - name: kubecost-operator.v3.0.5
        version: 3.0.5
      - name: kubecost-operator.v3.0.4
        version: 3.0.4
      - name: kubecost-operator.v3.0.3
        version: 3.0.3
      - name: kubecost-operator.v3.0.2
        version: 3.0.2
      - name: kubecost-operator.v3.0.1
        version: 3.0.1
      - name: kubecost-operator.v3.0.0
        version: 3.0.0
      name: stable
    defaultChannel: stable
    packageName: kubecost-operator
    provider:
      name: Kubecost
      url: https://www.kubecost.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The CloudNativePG Contributors
      provider-url: ""
    name: cloudnative-pg
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cloudnative-pg.v1.28.0-rc2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: ghcr.io/cloudnative-pg/cloudnative-pg@sha256:97e930eb35abbcf91c913b6c2c11082687da071d902b9cdb086b9b2c0cca33fe
          createdAt: "2025-11-29T16:48:48Z"
          description: CloudNativePG is an open source operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/cloudnative-pg/cloudnative-pg
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.cnpg.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.cnpg.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.cnpg.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.io
            version: v1
        description: |
          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnpg` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: CloudNativePG
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnpg
        links:
        - name: CloudNativePG
          url: https://cloudnative-pg.io/
        - name: Documentation
          url: https://cloudnative-pg.io/docs/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: The CloudNativePG Contributors
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloudnative-pg@sha256:98bb34761d25ec5a6d8b6272ac7b64702512ee398c910b1cba5828b29b86622a
        - ghcr.io/cloudnative-pg/cloudnative-pg@sha256:97e930eb35abbcf91c913b6c2c11082687da071d902b9cdb086b9b2c0cca33fe
        - ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891
        - ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b
        version: 1.28.0-rc2
      entries:
      - name: cloudnative-pg.v1.28.0-rc2
        version: 1.28.0-rc2
      - name: cloudnative-pg.v1.28.0-rc1
        version: 1.28.0-rc1
      - name: cloudnative-pg.v1.27.0-rc1
        version: 1.27.0-rc1
      - name: cloudnative-pg.v1.26.0-rc3
        version: 1.26.0-rc3
      - name: cloudnative-pg.v1.26.0-rc2
        version: 1.26.0-rc2
      - name: cloudnative-pg.v1.26.0-rc1
        version: 1.26.0-rc1
      name: candidate
    - currentCSV: cloudnative-pg.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: ghcr.io/cloudnative-pg/cloudnative-pg@sha256:0869f9b996923aaf3eb761abe032b10ef482eaaef32fc6c604605a7223c13c1b
          createdAt: "2025-12-09T17:23:26Z"
          description: CloudNativePG is an open source operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/cloudnative-pg/cloudnative-pg
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.cnpg.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.cnpg.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.cnpg.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.io
            version: v1
        description: |
          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnpg` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: CloudNativePG
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnpg
        links:
        - name: CloudNativePG
          url: https://cloudnative-pg.io/
        - name: Documentation
          url: https://cloudnative-pg.io/docs/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: The CloudNativePG Contributors
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloudnative-pg@sha256:1301ead85309191e6f91d5c94de7e2569e3b0379172f86332d43dc8bddb94409
        - ghcr.io/cloudnative-pg/cloudnative-pg@sha256:0869f9b996923aaf3eb761abe032b10ef482eaaef32fc6c604605a7223c13c1b
        - ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891
        - ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b
        version: 1.28.0
      entries:
      - name: cloudnative-pg.v1.28.0
        version: 1.28.0
      - name: cloudnative-pg.v1.27.1
        version: 1.27.1
      - name: cloudnative-pg.v1.27.0
        version: 1.27.0
      - name: cloudnative-pg.v1.26.1
        version: 1.26.1
      - name: cloudnative-pg.v1.26.0
        version: 1.26.0
      - name: cloudnative-pg.v1.25.1
        version: 1.25.1
      - name: cloudnative-pg.v1.25.0
        version: 1.25.0
      - name: cloudnative-pg.v1.24.1
        version: 1.24.1
      - name: cloudnative-pg.v1.24.0
        version: 1.24.0
      - name: cloudnative-pg.v1.23.3
        version: 1.23.3
      - name: cloudnative-pg.v1.23.2
        version: 1.23.2
      - name: cloudnative-pg.v1.23.1
        version: 1.23.1
      name: stable-v1
    defaultChannel: stable-v1
    packageName: cloudnative-pg
    provider:
      name: The CloudNativePG Contributors
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ecrpublic-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ecrpublic-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ecrpublic-controller:1.2.0
          createdAt: "2025-11-29T03:26:51Z"
          description: AWS ECR PUBLIC controller is a service controller for managing
            ECR PUBLIC resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Repository represents the state of an AWS ecrpublic Repository
              resource.
            displayName: Repository
            kind: Repository
            name: repositories.ecrpublic.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon ECR PUBLIC resources in AWS from within your Kubernetes cluster.

          **About Amazon ECR PUBLIC**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ECR PUBLIC
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecrpublic
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ECR PUBLIC Developer Resources
          url: https://aws.amazon.com/ECR PUBLIC/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ecrpublic maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ecrpublic-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ecrpublic-controller@sha256:f63dd423730053d25be121eeeda0c5189d3e9bbce4d73963348e7a9220913e36
        version: 1.2.0
      entries:
      - name: ack-ecrpublic-controller.v1.2.0
        version: 1.2.0
      - name: ack-ecrpublic-controller.v1.1.2
        version: 1.1.2
      - name: ack-ecrpublic-controller.v1.1.1
        version: 1.1.1
      - name: ack-ecrpublic-controller.v1.1.0
        version: 1.1.0
      - name: ack-ecrpublic-controller.v1.0.14
        version: 1.0.14
      - name: ack-ecrpublic-controller.v1.0.12
        version: 1.0.12
      name: alpha
    defaultChannel: alpha
    packageName: ack-ecrpublic-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: The bpfman Community
      provider-url: https://bpfman.io/
    name: bpfman-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bpfman-operator.v0.5.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "bpfapplication"
                  },
                  "name": "bpfapplication-sample"
                },
                "spec": {
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/go-app-counter:v0.5.6"
                    }
                  },
                  "nodeselector": {},
                  "programs": [
                    {
                      "kprobe": {
                        "bpffunctionname": "kprobe_counter",
                        "func_name": "try_to_wake_up",
                        "offset": 0,
                        "retprobe": false
                      },
                      "type": "Kprobe"
                    },
                    {
                      "tracepoint": {
                        "bpffunctionname": "tracepoint_kill_recorder",
                        "names": [
                          "syscalls/sys_enter_kill"
                        ]
                      },
                      "type": "Tracepoint"
                    },
                    {
                      "tc": {
                        "bpffunctionname": "stats",
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      },
                      "type": "TC"
                    },
                    {
                      "tcx": {
                        "bpffunctionname": "tcx_stats",
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 500
                      },
                      "type": "TCX"
                    },
                    {
                      "type": "Uprobe",
                      "uprobe": {
                        "bpffunctionname": "uprobe_counter",
                        "containers": {
                          "containernames": [
                            "bpfman",
                            "bpfman-agent"
                          ],
                          "namespace": "bpfman",
                          "pods": {
                            "matchLabels": {
                              "name": "bpfman-daemon"
                            }
                          }
                        },
                        "func_name": "malloc",
                        "retprobe": false,
                        "target": "libc"
                      }
                    },
                    {
                      "type": "XDP",
                      "xdp": {
                        "bpffunctionname": "xdp_stats",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfNsApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "bpfnsapplication"
                  },
                  "name": "bpfapplication-sample",
                  "namespace": "acme"
                },
                "spec": {
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/go-app-counter:v0.5.6"
                    }
                  },
                  "nodeselector": {},
                  "programs": [
                    {
                      "tc": {
                        "bpffunctionname": "stats",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      },
                      "type": "TC"
                    },
                    {
                      "tcx": {
                        "bpffunctionname": "tcx_stats",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 500
                      },
                      "type": "TCX"
                    },
                    {
                      "type": "Uprobe",
                      "uprobe": {
                        "bpffunctionname": "uprobe_counter",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "func_name": "malloc",
                        "retprobe": false,
                        "target": "libc"
                      }
                    },
                    {
                      "type": "XDP",
                      "xdp": {
                        "bpffunctionname": "xdp_stats",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "FentryProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "fentryprogram"
                  },
                  "name": "fentry-example"
                },
                "spec": {
                  "bpffunctionname": "test_fentry",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/fentry:v0.5.6"
                    }
                  },
                  "func_name": "do_unlinkat",
                  "nodeselector": {}
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "FexitProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "fexitprogram"
                  },
                  "name": "fexit-example"
                },
                "spec": {
                  "bpffunctionname": "test_fexit",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/fexit:v0.5.6"
                    }
                  },
                  "func_name": "do_unlinkat",
                  "nodeselector": {}
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "KprobeProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "kprobeprogram"
                  },
                  "name": "kprobe-example"
                },
                "spec": {
                  "bpffunctionname": "my_kprobe",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/kprobe:v0.5.6"
                    }
                  },
                  "func_name": "try_to_wake_up",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeselector": {},
                  "offset": 0,
                  "retprobe": false
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcnsprogram"
                  },
                  "name": "tc-containers",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tc_pass:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "interfaces": [
                      "eth0"
                    ]
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcprogram"
                  },
                  "name": "tc-pass-all-nodes"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tc_pass:v0.5.6"
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "primarynodeinterface": true
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcxNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcxnsprogram"
                  },
                  "name": "tcx-containers",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "tcx_next",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tcx_test:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "interfaces": [
                      "eth0"
                    ]
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcxProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcxprogram"
                  },
                  "name": "tcx-pass-all-nodes"
                },
                "spec": {
                  "bpffunctionname": "tcx_pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tcx_test:v0.5.6"
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "primarynodeinterface": true
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TracepointProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tracepointprogram"
                  },
                  "name": "tracepoint-example"
                },
                "spec": {
                  "bpffunctionname": "enter_openat",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tracepoint:v0.5.6"
                    }
                  },
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "names": [
                    "syscalls/sys_enter_openat"
                  ],
                  "nodeselector": {}
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "UprobeNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "uprobensprogram"
                  },
                  "name": "uprobe-example",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "my_uprobe",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/uprobe:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "func_name": "syscall",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeselector": {},
                  "retprobe": false,
                  "target": "libc"
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "UprobeProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "uprobeprogram"
                  },
                  "name": "uprobe-example"
                },
                "spec": {
                  "bpffunctionname": "my_uprobe",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/uprobe:v0.5.6"
                    }
                  },
                  "func_name": "syscall",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeselector": {},
                  "retprobe": false,
                  "target": "libc"
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "XdpNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "xdpnsprogram"
                  },
                  "name": "xdp-ns-pass-all-nodes",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/xdp_pass:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "interfaces": [
                      "eth0"
                    ]
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "XdpProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "xdpprogram"
                  },
                  "name": "xdp-pass-all-nodes"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/xdp_pass:v0.5.6"
                    }
                  },
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "primarynodeinterface": true
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/bpfman/bpfman-operator:v0.5.6
          createdAt: "2025-02-18T13:44:53Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: bpfman
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "bpfman",
                "labels": {
                  "pod-security.kubernetes.io/enforce": "privileged",
                  "pod-security.kubernetes.io/audit": "privileged",
                  "pod-security.kubernetes.io/warn": "privileged",
                },
                "annotations": {
                  "openshift.io/node-selector": ""
                },
              }
            }
          operators.openshift.io/infrastructure-features: '["csi", "disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/bpfman/bpfman
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BpfApplication is the Schema for the bpfapplications API
            displayName: Bpf Application
            kind: BpfApplication
            name: bpfapplications.bpfman.io
            version: v1alpha1
          - description: BpfNsApplication is the Schema for the BpfNsApplications
              API
            displayName: Bpf Namespaced Application
            kind: BpfNsApplication
            name: bpfnsapplications.bpfman.io
            version: v1alpha1
          - description: BpfNsProgram is the Schema for the BpfNsProgram API
            displayName: Bpf Namespaced Program
            kind: BpfNsProgram
            name: bpfnsprograms.bpfman.io
            version: v1alpha1
          - description: BpfProgram is the Schema for the BpfProgram API
            displayName: Bpf Program
            kind: BpfProgram
            name: bpfprograms.bpfman.io
            version: v1alpha1
          - description: FentryProgram is the Schema for the Fentryprograms API
            displayName: Fentry Program
            kind: FentryProgram
            name: fentryprograms.bpfman.io
            version: v1alpha1
          - description: FexitProgram is the Schema for the Fexitprograms API
            displayName: Fexit Program
            kind: FexitProgram
            name: fexitprograms.bpfman.io
            version: v1alpha1
          - description: KprobeProgram is the Schema for the Kprobeprograms API
            displayName: Kprobe Program
            kind: KprobeProgram
            name: kprobeprograms.bpfman.io
            version: v1alpha1
          - description: TcNsProgram is the Schema for the Tcnsprograms API
            displayName: TC Namespaced Program
            kind: TcNsProgram
            name: tcnsprograms.bpfman.io
            version: v1alpha1
          - description: TcProgram is the Schema for the Tcprograms API
            displayName: TC Program
            kind: TcProgram
            name: tcprograms.bpfman.io
            version: v1alpha1
          - description: TcxNsProgram is the Schema for the Tcxnsprograms API
            displayName: TCX Namespaced Program
            kind: TcxNsProgram
            name: tcxnsprograms.bpfman.io
            version: v1alpha1
          - description: TcxProgram is the Schema for the Tcxprograms API
            displayName: TCX Program
            kind: TcxProgram
            name: tcxprograms.bpfman.io
            version: v1alpha1
          - description: TracepointProgram is the Schema for the Tracepointprograms
              API
            displayName: Tracepoint Program
            kind: TracepointProgram
            name: tracepointprograms.bpfman.io
            version: v1alpha1
          - description: UprobeNsProgram is the Schema for the Uprobensprograms API
            displayName: Uprobe Namespaced Program
            kind: UprobeNsProgram
            name: uprobensprograms.bpfman.io
            version: v1alpha1
          - description: UprobeProgram is the Schema for the Uprobeprograms API
            displayName: Uprobe Program
            kind: UprobeProgram
            name: uprobeprograms.bpfman.io
            version: v1alpha1
          - description: XdpNsProgram is the Schema for the Xdpnsprograms API
            displayName: Xdp Namespaced Program
            kind: XdpNsProgram
            name: xdpnsprograms.bpfman.io
            version: v1alpha1
          - description: XdpProgram is the Schema for the Xdpprograms API
            displayName: Xdp Program
            kind: XdpProgram
            name: xdpprograms.bpfman.io
            version: v1alpha1
        description: "The bpfman Operator is a Kubernetes Operator for deploying [bpfman](https://bpfman.netlify.app/),
          a system daemon\nfor managing eBPF programs. It deploys bpfman itself along
          with CRDs to make deploying\neBPF programs in Kubernetes much easier.\n\n##
          Quick Start\n\nTo get bpfman up and running quickly simply click 'install'
          to deploy the bpfman-operator in the bpfman namespace via operator-hub.\n##
          Configuration\n\nThe `bpfman-config` configmap is automatically created
          in the `bpfman` namespace and used to configure the bpfman deployment.\n\nTo
          edit the config simply run\n\n```bash\nkubectl edit cm bpfman-config\n```\n\nThe
          following fields are adjustable\n\n- `bpfman.agent.image`: The image used
          for the bpfman-agent`\n- `bpfman.image`: The image used for bpfman`\n- `bpfman.log.level`:
          the log level for bpfman, currently supports `debug`, `info`, `warn`, `error`,
          and `fatal`, defaults to `info`\n- `bpfman.agent.log.level`: the log level
          for the bpfman-agent currently supports `info`, `debug`, and `trace` \n\nThe
          bpfman operator deploys eBPF programs via CRDs. The following CRDs are currently
          available, \n\n- BpfApplication\n- FentryProgram\n- FexitProgram\n - KprobeProgram\n-
          TcProgram\n- TcxProgram\n- TracepointProgram\n- UprobeProgram\n- XdpProgram\n
          - BpfNsApplication\n- TcNsProgram\n- TcxNsProgram\n- UprobeNsProgram\n-
          XdpNsProgram\n- BpfProgram\n - BpfNsProgram\n\n ## More information\n\nPlease
          checkout the [bpfman community website](https://bpfman.io/) for more information."
        displayName: Bpfman Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ebpf
        - kubernetes
        links:
        - name: bpfman website
          url: https://bpfman.io/
        maintainers:
        - email: astoycos@redhat.com
          name: Andrew Stoycos
        - email: afredette@redhat.com
          name: Andre Fredette
        maturity: alpha
        provider:
          name: The bpfman Community
          url: https://bpfman.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/bpfman-operator@sha256:6b3603c7c1917c67b5aa57202d1d2fdc0d9ac6b3a9373afa7172f322b3b3fa9b
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/bpfman/bpfman-operator:v0.5.6
        version: 0.5.6
      entries:
      - name: bpfman-operator.v0.5.6
        version: 0.5.6
      - name: bpfman-operator.v0.5.5
        version: 0.5.5
      - name: bpfman-operator.v0.5.4
        version: 0.5.4
      - name: bpfman-operator.v0.5.2
        version: 0.5.2
      - name: bpfman-operator.v0.5.1
        version: 0.5.1
      - name: bpfman-operator.v0.5.0
        version: 0.5.0
      name: alpha
    defaultChannel: alpha
    packageName: bpfman-operator
    provider:
      name: The bpfman Community
      url: https://bpfman.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: keepalived-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keepalived-operator.v1.5.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KeepalivedGroup",
                "metadata": {
                  "name": "keepalivedgroup-workers"
                },
                "spec": {
                  "blacklistRouterIDs": [
                    1,
                    2
                  ],
                  "image": "registry.redhat.io/openshift4/ose-keepalived-ipfailover",
                  "interface": "ens3",
                  "nodeSelector": {
                    "node-role.kubernetes.io/loadbalancer": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Networking, Cloud Provider
          certified: "false"
          containerImage: quay.io/redhat-cop/keepalived-operator@sha256:cd0c2f7df82df1178795e4a18a0942da33adb9670b192a7b7a2b1483a5b4ccf8
          createdAt: "2023-03-11T18:48:22Z"
          description: This operator provides a simple way to create self-hosted load
            balancers using keepalived.
          operatorframework.io/suggested-namespace: keepalived-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/keepalived-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: KeepalivedGroup
            name: keepalivedgroups.redhatcop.redhat.io
            version: v1alpha1
        description: "The objective of the keepalived operator is to allow for a way
          to create self-hosted load balancers in an automated way. From a user experience
          point of view the behavior is the same as of when creating [`LoadBalancer`](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
          services with a cloud provider able to manage them.\n\nThe keepalived operator
          can be used in all environments that allows nodes to advertise additional
          IPs on their NICs (and at least for now, in networks that allow multicast),
          however it's mainly aimed at supporting LoadBalancer services and ExternalIPs
          on bare metal installations (or other installation environments where a
          cloud provider is not available).\n\nOne possible use of the keepalived
          operator is also to support [OpenShift Ingresses](https://docs.openshift.com/container-platform/4.5/networking/configuring_ingress_cluster_traffic/overview-traffic.html)
          in environments where an external load balancer cannot be provisioned.\n\n##
          How it works\n\nThe keepalived operator will create one or more [VIPs](https://en.wikipedia.org/wiki/Virtual_IP_address)
          (an HA IP that floats between multiple nodes), based on the [`LoadBalancer`](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
          services and/or services requesting [`ExternalIPs`](https://kubernetes.io/docs/concepts/services-networking/service/#external-ips).\n\nFor
          `LoadBalancer` services the IPs found at `.Status.LoadBalancer.Ingress[].IP`
          will become VIPs.\n\nFor services requesting a `ExternalIPs`, the IPs found
          at `.Spec.ExternalIPs[]` will become VIPs.\n\nNote that a service can be
          of `LoadBalancer` type and also request `ExternalIPs`, it this case both
          sets of IPs will become VIPs.\n\nDue to a [keepalived](https://www.keepalived.org/manpage.html)
          limitation a single keepalived cluster can manage up to 256 VIP configurations.
          Multiple keepalived clusters can coexists in the same network as long as
          they use different multicast ports [TODO verify this statement].\n\nTo address
          this limitation the `KeepalivedGroup` [CRD](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/)
          has been introduced. This CRD is supposed to be configured by an administrator
          and allows you to specify a node selector to pick on which nodes the keepalived
          pods should be deployed. Here is an example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          KeepalivedGroup\nmetadata:\n  name: keepalivedgroup-router\nspec:\n  image:
          registry.redhat.io/openshift4/ose-keepalived-ipfailover\n  interface: ens3\n
          \ nodeSelector:\n    node-role.kubernetes.io/loadbalancer: \"\"\n  blacklistRouterIDs:\n
          \ - 1\n  - 2  \n```\n\nThis KeepalivedGroup will be deployed on all the
          nodes with role `loadbalancer`. One must also specify the network device
          on which the VIPs will be exposed, it is assumed that all the nodes have
          the same network device configuration.\n\nServices must be annotated to
          opt-in to being observed by the keepalived operator and to specify which
          KeepalivedGroup they refer to. The annotation looks like this:\n\n`keepalived-operator.redhat-cop.io/keepalivedgroup:
          <keepalivedgroup namespace>/<keepalivedgroup-name>`\n\nThe image used for
          the keepalived containers can be specified with `.Spec.Image` it will default
          to `registry.redhat.io/openshift4/ose-keepalived-ipfailover` if undefined.
          \n\n## Requirements\n\n### Security Context Constraints\n\nEach KeepalivedGroup
          deploys a [daemonset](https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/)
          that requires the [privileged scc](https://docs.openshift.com/container-platform/4.5/authentication/managing-security-context-constraints.html),
          this permission must be given to the `default` service account in the namespace
          where the keepalived group is created by and administrator.\n\n```shell\noc
          adm policy add-scc-to-user privileged -z default -n keepalived-operator\n```\n\n###
          Cluster Network Operator\n\nIn Openshift, use of an external IP address
          is governed by the following fields in the `Network.config.openshift.io`
          CR named `cluster`\n\n* `spec.externalIP.autoAssignCIDRs` defines an IP
          address block used by the load balancer when choosing an external IP address
          for the service. OpenShift supports only a single IP address block for automatic
          assignment.\n\n* `spec.externalIP.policy` defines the permissible IP address
          blocks when manually specifying an IP address. OpenShift does not apply
          policy rules to IP address blocks defined by `spec.externalIP.autoAssignCIDRs`\n\nThe
          following patch can be used to configure the Cluster Network Operator:\n\n```yaml\nspec:\n
          \ externalIP:\n    policy:\n      allowedCIDRs:\n      - ${ALLOWED_CIDR}\n
          \   autoAssignCIDRs:\n      - \"${AUTOASSIGNED_CIDR}\"\n```\n\nHere is an
          example of how to apply the patch:\n\n```shell\nexport ALLOWED_CIDR=\"192.168.131.128/26\"\nexport
          AUTOASSIGNED_CIDR=\"192.168.131.192/26\"\noc patch network cluster -p \"$(envsubst
          < ./network-patch.yaml | yq r -j -)\" --type=merge\n```\nAdditionally, the
          fields can be edited manually via `oc edit Network.config.openshift.io cluster`\n\n##
          Blacklisting router IDs\n\nIf the Keepalived pods are deployed on nodes
          which are in the same network (same broadcast domain to be precise) with
          other keepalived the process, it's necessary to ensure that there is no
          collision between the used routers it.\nFor this purpose it is possible
          to provide a `blacklistRouterIDs` field with a list of black-listed IDs
          that will not be used.\n\n## OpenShift RHV, vSphere, OSP and bare metal
          IPI instructions\n\nWhen IPI is used for RHV, vSphere, OSP or bare metal
          platforms, three keepalived VIPs are deployed. To make sure that keepalived-operator
          can work in these environment we need to discover and blacklist the corresponding
          VRRP router IDs.\n\nTo discover the VRRP router IDs being used, run the
          following command, you can run this command from you laptop:\n\n```shell\npodman
          run quay.io/openshift/origin-baremetal-runtimecfg:4.5 vr-ids <cluster_name>\n```\n\nIf
          you don't know your cluster name, run this command:\n\n```shell\npodman
          run quay.io/openshift/origin-baremetal-runtimecfg:4.5 vr-ids $(oc get cm
          cluster-config-v1 -n kube-system -o jsonpath='{.data.install-config}'| yq
          -r .metadata.name)\n```\n\nThen use these [instructions](#Blacklisting-router-IDs)
          to blacklist those VRRP router IDs.\n\n## Verbatim Configurations\n\nKeepalived
          has dozens of [configurations](https://www.keepalived.org/manpage.html).
          At the early stage of this project it's difficult to tell which one should
          be modeled in the API. Yet, users of this project may still need to use
          them. To account for that there is a way to pass verbatim options both at
          the keepalived group level (which maps to the keepalived config `global_defs`
          section) and at the service level (which maps to the keepalived config `vrrp_instance`
          section).\n\nKeepalivedGroup-level verbatim configurations can be passed
          as in the following example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          KeepalivedGroup\nmetadata:\n  name: keepalivedgroup-router\nspec:\n  interface:
          ens3\n  nodeSelector:\n    node-role.kubernetes.io/loadbalancer: \"\"\n
          \ verbatimConfig:  \n    vrrp_iptables: my-keepalived\n```\n\nthis will
          map to the following `global_defs`:\n\n```\n    global_defs {\n        router_id
          keepalivedgroup-router\n        vrrp_iptables my-keepalived\n    }\n```\n\nService-level
          verbatim configurations can be passed as in the following example:\n\n```yaml\napiVersion:
          v1\nkind: Service\nmetadata:\n  annotations:\n    keepalived-operator.redhat-cop.io/keepalivedgroup:
          keepalived-operator/keepalivedgroup-router\n    keepalived-operator.redhat-cop.io/verbatimconfig:
          '{ \"track_src_ip\": \"\" }'\n```\n\nthis will map to the following `vrrp_instance`
          section\n\n```\n    vrrp_instance openshift-ingress/router-default {\n        interface
          ens3\n        virtual_router_id 1  \n        virtual_ipaddress {\n          192.168.131.129\n
          \       }\n        track_src_ip\n    }\n```\n\n## Metrics collection\n\nEach
          keepalived pod exposes a [Prometheus](https://prometheus.io/) metrics port
          at `9650`. Metrics are collected with [keepalived_exporter](github.com/gen2brain/keepalived_exporter),
          the available metrics are described in the project documentation.\n\nWhen
          a keepalived group is created a [`PodMonitor`](https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#podmonitor)
          rule to collect those metrics. All PodMonitor resources created that way
          have the label: `metrics: keepalived`. It is up to you to make sure your
          Prometheus instance watches for those `PodMonitor` rules. Here is an example
          of a fragment of a `Prometheus` CR configured to collect the keepalived
          pod metrics:\n\n```yaml\n  podMonitorSelector:\n    matchLabels:\n      metrics:
          keepalived\n```\n"
        displayName: Keepalived Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - loadbalancer
        - keepalived
        - ipfailover
        - externalIP
        - self-hosted
        links:
        - name: Keepalived Operator
          url: https://github.com/redhat-cop/keepalived-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/keepalived-operator
        maintainers:
        - email: rspazzol@redhat.com'
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/keepalived-operator@sha256:5a46fcb72f02a1f0d9cbc72f44948ef4b09149a4b3fe2e45fd31df90d20b3c56
        - quay.io/redhat-cop/keepalived-operator@sha256:cd0c2f7df82df1178795e4a18a0942da33adb9670b192a7b7a2b1483a5b4ccf8
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.5.4
      entries:
      - name: keepalived-operator.v1.5.4
        version: 1.5.4
      - name: keepalived-operator.v1.5.3
        version: 1.5.3
      - name: keepalived-operator.v1.5.2
        version: 1.5.2
      - name: keepalived-operator.v1.5.1
        version: 1.5.1
      - name: keepalived-operator.v1.5.0
        version: 1.5.0
      - name: keepalived-operator.v1.4.2
        version: 1.4.2
      - name: keepalived-operator.v1.4.1
        version: 1.4.1
      - name: keepalived-operator.v1.4.0
        version: 1.4.0
      - name: keepalived-operator.v1.3.4
        version: 1.3.4
      - name: keepalived-operator.v1.3.3
        version: 1.3.3
      - name: keepalived-operator.v1.3.2
        version: 1.3.2
      - name: keepalived-operator.v1.3.1
        version: 1.3.1
      - name: keepalived-operator.v1.3.0
        version: 1.3.0
      - name: keepalived-operator.v1.2.2
        version: 1.2.2
      - name: keepalived-operator.v1.2.1
        version: 1.2.1
      - name: keepalived-operator.v1.2.0
        version: 1.2.0
      - name: keepalived-operator.v1.1.0
        version: 1.1.0
      - name: keepalived-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: keepalived-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Pulp Community
      provider-url: https://github.com/pulp/pulp-operator
    name: pulp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pulp-operator.v1.0.0-alpha.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "Pulp",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "api": {
                    "replicas": 1
                  },
                  "cache_enabled": true,
                  "content": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "file_storage_access_mode": "ReadWriteMany",
                  "file_storage_size": "10Gi",
                  "ingress_type": "Route",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/pulp/"
                  },
                  "storage_type": "File",
                  "worker": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "Pulp",
                "metadata": {
                  "name": "example-pulp"
                },
                "spec": {
                  "api": {
                    "replicas": 1
                  },
                  "cache": {
                    "enabled": true,
                    "redis_storage_class": "standard"
                  },
                  "content": {
                    "replicas": 1
                  },
                  "database": {
                    "postgres_storage_class": "standard"
                  },
                  "deployment_type": "pulp",
                  "file_storage_access_mode": "ReadWriteOnce",
                  "file_storage_size": "2Gi",
                  "file_storage_storage_class": "standard",
                  "image_version": "nightly",
                  "image_web_version": "nightly",
                  "ingress_type": "nodeport",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/pulp/",
                    "telemetry": false
                  },
                  "web": {
                    "replicas": 1
                  },
                  "worker": {
                    "replicas": 1
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "Pulp",
                "metadata": {
                  "name": "galaxy-example"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "api": {
                    "replicas": 1
                  },
                  "content": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "database": {
                    "postgres_storage_class": "standard"
                  },
                  "deployment_type": "galaxy",
                  "file_storage_access_mode": "ReadWriteMany",
                  "file_storage_size": "10Gi",
                  "file_storage_storage_class": "standard",
                  "image": "quay.io/pulp/galaxy-minimal",
                  "image_version": "nightly",
                  "image_web": "quay.io/pulp/galaxy-web",
                  "image_web_version": "nightly",
                  "ingress_type": "nodeport",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/api/galaxy/pulp/",
                    "telemetry": false
                  },
                  "signing_scripts_configmap": "signing-scripts",
                  "signing_secret": "signing-galaxy",
                  "storage_type": "File",
                  "web": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "worker": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "PulpBackup",
                "metadata": {
                  "name": "pulpbackup-sample"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "backup_storage_class": "standard",
                  "deployment_name": "galaxy-example",
                  "deployment_type": "galaxy",
                  "instance_name": "pulp",
                  "postgres_configuration_secret": "galaxy-example-postgres-configuration"
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "PulpRestore",
                "metadata": {
                  "name": "ci-pulprestore"
                },
                "spec": {
                  "backup_name": "pulpbackup-sample",
                  "deployment_name": "galaxy-example"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          containerImage: quay.io/pulp/pulp-operator:v1.0.0-alpha.1
          createdAt: "2021-03-26 16:57:40"
          description: Pulp is a platform for managing repositories of software packages
            and making them available to a large number of consumers.
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/pulp/pulp-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PulpBackup is the Schema for the pulpbackups API
            displayName: Pulp Backup
            kind: PulpBackup
            name: pulpbackups.repo-manager.pulpproject.org
            version: v1alpha1
          - description: PulpRestore is the Schema for the pulprestores API
            displayName: Pulp Restore
            kind: PulpRestore
            name: pulprestores.repo-manager.pulpproject.org
            version: v1alpha1
          - description: Pulp is the Schema for the pulps API
            displayName: Pulp
            kind: Pulp
            name: pulps.repo-manager.pulpproject.org
            version: v1alpha1
        description: |-
          [Pulp](https://pulpproject.org/) is a platform for managing repositories of content, such as software packages, and making them available to a large number of consumers.

          With Pulp you can:

          * Locally mirror all or part of a repository
          * Host your own content in a new repository
          * Manage content from multiple sources in one place
          * Promote content through different repos in an organized way

          If you have dozens, hundreds, or thousands of software packages and need a better way to manage them, Pulp can help.

          Pulp is completely free and open-source!

          * License: GPLv2+
          * Documentation: [https://docs.pulpproject.org/](https://docs.pulpproject.org/)
          * Source: [https://github.com/pulp/pulpcore/](https://github.com/pulp/pulpcore/)

          For more information, check out the project website: [https://pulpproject.org](https://pulpproject.org)

          If you want to evaluate Pulp quickly, try [Pulp in One Container](https://pulpproject.org/pulp-in-one-container/)

          ## Pulp Operator

          Pulp Operator is under active development, with the goal to provide a scalable and robust cluster for Pulp 3.

          Note that Pulp operator works with three different types of service containers (the operator itself, the main service and the web service):

          |           | Operator | Main | Web |
          | --------- | -------- | ---- | --- |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[pulp-minimal](https://quay.io/repository/pulp/pulp-minimal?tab=tags) | [pulp-web](https://quay.io/repository/pulp/pulp-web?tab=tags) |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[galaxy-minimal](https://quay.io/repository/pulp/galaxy-minimal?tab=tags) | [galaxy-web](https://quay.io/repository/pulp/galaxy-web?tab=tags) |

          <br>Pulp operator is manually built and [hosted on quay.io](https://quay.io/repository/pulp/pulp-operator). Read more about the container images [here](https://docs.pulpproject.org/pulp_operator/container/).

          ## Custom Resource Definitions
          Pulp Operator currently provides three different kinds of [Custom Resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#custom-resources): Pulp, Pulp Backup and Pulp Restore.
          ### Pulp
          Manages the Pulp application and its deployments, services, etc.
          ### Pulp Backup
          Manages pulp backup.

          ### Pulp Restore
          Manages the restoration of a pulp backup.

          ## Get Help

          Documentation: [https://docs.pulpproject.org/pulp_operator/](https://docs.pulpproject.org/pulp_operator/)

          Issue Tracker: [https://github.com/pulp/pulp-operator/issues](https://github.com/pulp/pulp-operator/issues)

          Forum: [https://discourse.pulpproject.org/](https://discourse.pulpproject.org/)

          Join [**#pulp** on Matrix](https://matrix.to/#/#pulp:matrix.org)

          Join [**#pulp-dev** on Matrix](https://matrix.to/#/#pulp-dev:matrix.org) for Developer discussion.
        displayName: Pulp Project
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pulp
        - pulpcore
        - content
        - repositories
        - lifecycle
        links:
        - name: Pulp Operator
          url: https://github.com/pulp/pulp-operator
        - name: Pulp Project
          url: https://pulpproject.org/
        - name: Docs
          url: https://docs.pulpproject.org/pulp_operator/
        maintainers:
        - email: pulp-list@redhat.com
          name: Pulp Community
        maturity: beta
        provider:
          name: Pulp Community
          url: https://github.com/pulp/pulp-operator
        relatedImages:
        - docker.io/library/postgres:13
        - docker.io/library/redis:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/openshift-community-operators/pulp-operator@sha256:1926e96b185443ff0c7a2861cefc2e3aded0c0493e0d7f7d78e45447e06750d4
        - quay.io/pulp/pulp-minimal:stable
        - quay.io/pulp/pulp-operator:v1.0.0-alpha.1
        - quay.io/pulp/pulp-web:stable
        version: 1.0.0-alpha.1
      entries:
      - name: pulp-operator.v1.0.0-alpha.1
        version: 1.0.0-alpha.1
      name: alpha
    - currentCSV: pulp-operator.v1.0.0-beta.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "Pulp",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "api": {
                    "replicas": 1
                  },
                  "cache": {
                    "enabled": true
                  },
                  "content": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "ingress_type": "nodeport",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/pulp/"
                  },
                  "worker": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "Pulp",
                "metadata": {
                  "name": "galaxy-example"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "api": {
                    "replicas": 1
                  },
                  "content": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "database": {
                    "postgres_storage_class": "standard"
                  },
                  "deployment_type": "galaxy",
                  "file_storage_access_mode": "ReadWriteMany",
                  "file_storage_size": "10Gi",
                  "file_storage_storage_class": "standard",
                  "image": "quay.io/pulp/galaxy-minimal",
                  "image_version": "4.6.3",
                  "image_web": "quay.io/pulp/galaxy-web",
                  "image_web_version": "4.6.3",
                  "ingress_type": "nodeport",
                  "nodeport_port": 30000,
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "analytics": false,
                    "ansible_api_hostname": "http://nodeport.local:30000",
                    "api_root": "/api/galaxy/pulp/",
                    "content_origin": "http://nodeport.local:30000",
                    "galaxy_feature_flags": {
                      "ai_deny_index": true,
                      "execution_environments": true
                    },
                    "token_server": "http://nodeport.local:30000/token/"
                  },
                  "signing_scripts": "signing-scripts",
                  "signing_secret": "signing-galaxy",
                  "web": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "worker": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "PulpBackup",
                "metadata": {
                  "name": "pulpbackup-sample"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "backup_storage_class": "standard",
                  "deployment_name": "galaxy-example",
                  "deployment_type": "galaxy",
                  "postgres_configuration_secret": "galaxy-example-postgres-configuration"
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "PulpRestore",
                "metadata": {
                  "name": "ci-pulprestore"
                },
                "spec": {
                  "backup_name": "pulpbackup-sample",
                  "deployment_name": "galaxy-example"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/pulp/pulp-operator:v1.0.0-beta.4
          createdAt: "2024-01-18T20:33:37Z"
          description: Pulp is a platform for managing repositories of software packages
            and making them available to a large number of consumers.
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/pulp/pulp-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PulpBackup is the Schema for the pulpbackups API
            displayName: Pulp Backup
            kind: PulpBackup
            name: pulpbackups.repo-manager.pulpproject.org
            version: v1beta2
          - description: PulpRestore is the Schema for the pulprestores API
            displayName: Pulp Restore
            kind: PulpRestore
            name: pulprestores.repo-manager.pulpproject.org
            version: v1beta2
          - description: Pulp is the Schema for the pulps API
            displayName: Pulp
            kind: Pulp
            name: pulps.repo-manager.pulpproject.org
            version: v1beta2
        description: |-
          [Pulp](https://pulpproject.org/) is a platform for managing repositories of content, such as software packages, and making them available to a large number of consumers.

          With Pulp you can:

          * Locally mirror all or part of a repository
          * Host your own content in a new repository
          * Manage content from multiple sources in one place
          * Promote content through different repos in an organized way

          If you have dozens, hundreds, or thousands of software packages and need a better way to manage them, Pulp can help.

          Pulp is completely free and open-source!

          * License: GPLv2+
          * Documentation: [https://docs.pulpproject.org/](https://docs.pulpproject.org/)
          * Source: [https://github.com/pulp/pulpcore/](https://github.com/pulp/pulpcore/)

          For more information, check out the project website: [https://pulpproject.org](https://pulpproject.org)

          If you want to evaluate Pulp quickly, try [Pulp in One Container](https://pulpproject.org/pulp-in-one-container/)

          ## Pulp Operator

          Pulp Operator is under active development, with the goal to provide a scalable and robust cluster for Pulp 3.

          Note that Pulp operator works with three different types of service containers (the operator itself, the main service and the web service):

          |           | Operator | Main | Web |
          | --------- | -------- | ---- | --- |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[pulp-minimal](https://quay.io/repository/pulp/pulp-minimal?tab=tags) | [pulp-web](https://quay.io/repository/pulp/pulp-web?tab=tags) |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[galaxy-minimal](https://quay.io/repository/pulp/galaxy-minimal?tab=tags) | [galaxy-web](https://quay.io/repository/pulp/galaxy-web?tab=tags) |

          <br>Pulp operator is manually built and [hosted on quay.io](https://quay.io/repository/pulp/pulp-operator). Read more about the container images [here](https://docs.pulpproject.org/pulp_operator/container/).

          ## Custom Resource Definitions
          Pulp Operator currently provides three different kinds of [Custom Resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#custom-resources): Pulp, Pulp Backup and Pulp Restore.
          ### Pulp
          Manages the Pulp application and its deployments, services, etc.
          ### Pulp Backup
          Manages pulp backup.

          ### Pulp Restore
          Manages the restoration of a pulp backup.

          ## Get Help

          Documentation: [https://docs.pulpproject.org/pulp_operator/](https://docs.pulpproject.org/pulp_operator/)

          Issue Tracker: [https://github.com/pulp/pulp-operator/issues](https://github.com/pulp/pulp-operator/issues)

          Forum: [https://discourse.pulpproject.org/](https://discourse.pulpproject.org/)

          Join [**#pulp** on Matrix](https://matrix.to/#/#pulp:matrix.org)

          Join [**#pulp-dev** on Matrix](https://matrix.to/#/#pulp-dev:matrix.org) for Developer discussion.
        displayName: Pulp Project
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pulp
        - pulpcore
        - content
        - repositories
        - lifecycle
        links:
        - name: Pulp Operator
          url: https://github.com/pulp/pulp-operator
        - name: Pulp Project
          url: https://pulpproject.org/
        - name: Docs
          url: https://docs.pulpproject.org/pulp_operator/
        maintainers:
        - email: pulp-list@redhat.com
          name: Pulp Community
        maturity: beta
        provider:
          name: Pulp Community
          url: https://github.com/pulp/pulp-operator
        relatedImages:
        - quay.io/pulp/pulp-operator:v1.0.0-beta.4
        - quay.io/pulp/pulp-web:stable
        - docker.io/library/postgres:13
        - docker.io/library/redis:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.14.4
        - quay.io/community-operator-pipeline-prod/pulp-operator@sha256:1e75649538f13cf3bb2e6131160f038a70689d6f92a110bdcec348e865040c4a
        - quay.io/pulp/pulp-minimal:stable
        version: 1.0.0-beta.4
      entries:
      - name: pulp-operator.v1.0.0-beta.4
        version: 1.0.0-beta.4
      - name: pulp-operator.v1.0.0-beta.3
        version: 1.0.0-beta.3
      - name: pulp-operator.v1.0.0-beta.2
        version: 1.0.0-beta.2
      - name: pulp-operator.v1.0.0-beta.1
        version: 1.0.0-beta.1
      - name: pulp-operator.v1.0.0-alpha.9
        version: 1.0.0-alpha.9
      - name: pulp-operator.v1.0.0-alpha.8
        version: 1.0.0-alpha.8
      - name: pulp-operator.v1.0.0-alpha.7
        version: 1.0.0-alpha.7
      - name: pulp-operator.v1.0.0-alpha.6
        version: 1.0.0-alpha.6
      - name: pulp-operator.v1.0.0-alpha.5
        version: 1.0.0-alpha.5
      - name: pulp-operator.v1.0.0-alpha.4
        version: 1.0.0-alpha.4
      - name: pulp-operator.v1.0.0-alpha.3
        version: 1.0.0-alpha.3
      - name: pulp-operator.v1.0.0-alpha.2
        version: 1.0.0-alpha.2
      - name: pulp-operator.v1.0.0-alpha.1
        version: 1.0.0-alpha.1
      name: beta
    defaultChannel: beta
    packageName: pulp-operator
    provider:
      name: Pulp Community
      url: https://github.com/pulp/pulp-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Altair Engineering Inc.
      provider-url: ""
    name: anzounstructured-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: anzounstructured-operator.v3.1.300
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "anzounstructured.clusters.cambridgesemantics.com/v1",
                "kind": "AnzoUnstructured",
                "metadata": {
                  "name": "au01"
                },
                "spec": {
                  "auWorker": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app": "anzounstructured"
                          }
                        },
                        "serviceName": "au-au01-w",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app": "anzounstructured"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzo-unstructured-worker@sha256:94e4686d284c876a3dca36f7dfad7a06755f70ece16bf365b3933138b9283aa2",
                                "name": "w",
                                "resources": {
                                  "limits": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  },
                                  "requests": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  }
                                }
                              }
                            ],
                            "serviceAccountName": "unstructured-operator"
                          }
                        }
                      }
                    }
                  },
                  "msLeader": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app": "anzounstructured"
                          }
                        },
                        "serviceName": "au-au01-ms",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app": "anzounstructured"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzo-microservices-leader@sha256:3575310a78b08818781cab678d98f31160f539cf7c99c3601a86beb5bcf3d9fb",
                                "name": "ms",
                                "resources": {
                                  "limits": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  },
                                  "requests": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  }
                                }
                              }
                            ],
                            "serviceAccountName": "unstructured-operator"
                          }
                        }
                      }
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Basic Install
          categories: Database, Big Data
          certified: "true"
          containerImage: registry.connect.redhat.com/cambridgesemantics/unstructured-operator@sha256:597df02d6e3be3bc42929559c6a14369bc8e5183a39fb6db32f56f1ea6d6b50b
          createdAt: "2025-10-08T07:30:55Z"
          description: Kubernetes Operator for Altair Graph Studio Unstructured
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: unknown
          repository: ""
          support: Cambridge Semantics
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnzoUnstructured is the Schema for the anzounstructureds
              API
            displayName: Altair Graph Studio Unstructured Operator
            kind: AnzoUnstructured
            name: anzounstructureds.anzounstructured.clusters.cambridgesemantics.com
            version: v1
        description: |-
          The Altair Graph Studio Unstructured Operator provides the way to install and configure an anzo unstructured setup on Red Hat K8S environment.
          Currently, this is possible only through existing Anzo installation.

          ### Installation
           Refer [installation instructions]( https://github.com/cambridgesemantics/csi-k8s-operator-anzo-unstructured/blob/v3.1.3/README.md )

          ### Documentation

          You can find our documentation [here.]( https://docs.cambridgesemantics.com/anzo/userdoc/cloud-deployments.htm )

          ### Support

          We offer Support to our customers [here]( https://altair.com/customer-support ) or by emailing the Data Analytics Support team at dasupport@altair.com.
        displayName: Altair Graph Studio Unstructured Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Database
        - Big Data
        links:
        - name: Altair Graph Studio Unstructured Operator
          url: https://github.com/cambridgesemantics/csi-k8s-operator-anzo-unstructured/blob/v3.1.3/README.md
        maintainers:
        - email: fschwichtenberg@altair.com
          name: Frank Schwichtenberg
        maturity: stable
        provider:
          name: Altair Engineering Inc.
        relatedImages:
        - registry.connect.redhat.com/cambridgesemantics/unstructured-operator@sha256:597df02d6e3be3bc42929559c6a14369bc8e5183a39fb6db32f56f1ea6d6b50b
        - registry.connect.redhat.com/cambridgesemantics/anzo-microservices-leader@sha256:3575310a78b08818781cab678d98f31160f539cf7c99c3601a86beb5bcf3d9fb
        - registry.connect.redhat.com/cambridgesemantics/anzo-unstructured-operator-bundle@sha256:cd5c4d5023b5021bae1067ef460bfa65bc50bb804c50331d622edaca6508d9f1
        - registry.connect.redhat.com/cambridgesemantics/anzo-unstructured-worker@sha256:94e4686d284c876a3dca36f7dfad7a06755f70ece16bf365b3933138b9283aa2
        version: 3.1.300
      entries:
      - name: anzounstructured-operator.v3.1.300
        version: 3.1.300
      - name: anzounstructured-operator.v3.1.200
        version: 3.1.200
      - name: anzounstructured-operator.v3.1.104
        version: 3.1.104
      - name: anzounstructured-operator.v3.1.103
        version: 3.1.103
      name: stable
    defaultChannel: stable
    packageName: anzounstructured-operator
    provider:
      name: Altair Engineering Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: mercury-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mercury-operator.1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mercury.redhat.io/v1alpha1",
                "kind": "ServiceDomainInfra",
                "metadata": {
                  "name": "my-example-sdi",
                  "labels": {
                    "app": "examples"
                  }
                },
                "spec": {
                  "kafka": {
                    "replicas": 3,
                    "storage": {
                      "type": "persistent-claim",
                      "size": "100Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "mercury.redhat.io/v1alpha1",
                "kind": "ServiceDomain",
                "metadata": {
                  "name": "example-customer-credit-rating",
                  "labels": {
                    "app": "example"
                  }
                },
                "spec": {
                  "businessImage": "quay.io/ecosystem-appeng/customer-credit-rating-example:1.0.1",
                  "serviceDomainInfra": "my-example-sdi",
                  "type": "CustomerCreditRating",
                  "expose": ["http"]
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/ecosystem-appeng/mercury-operator:1.0.1
          description: Deploys and manages BIAN Service Domains with the Mercury framework
          repository: https://github.com/open-accelerators/mercury
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A Service Domain Infra represents a group of Service Domains that interact between themselves and
              share the same infrastructure resources
            displayName: Service Domain Infra
            kind: ServiceDomainInfra
            name: servicedomaininfras.mercury.redhat.io
            version: v1alpha1
          - description: |-
              A Service Domain is a standalone service representing one of the BIAN defined Service Domains.
              e.g. Customer Offer. A Service Domain must belong to a Service Domain Infra
            displayName: Service Domain
            kind: ServiceDomain
            name: servicedomains.mercury.redhat.io
            version: v1alpha1
          required:
          - kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - kind: Integration
            name: integrations.camel.apache.org
            version: v1
        description: |-
          # An open platform for a modular, digital bank

          Project Mercury aims at developing a solution approach for the modernization of core banking systems, exploring new technologies and ways of operating in an open hybrid cloud. Creating and enabling the foundation of an open platform for modular, digital banking. Using open-source software and open standards currently available, combined with industry best practices.

          The provided reference implementation can serve as an example. While some resulting artifacts leverage the expertise of developing this solution approach can become reusable templates, repeatable processes, and building blocks of cloud-native components and applications.

          We invite the collaboration of technology experts and experienced business practitioners across the financial services industry to join and participate in co-creation.
        displayName: Mercury Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bian
        - mercury
        links:
        - name: GitHub Repository
          url: https://github.com/open-accelerators/mercury
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/mercury-operator@sha256:0c253fd002cb389db40b2438d4d1c9e953a84125dbf0f4b6f5e3a6efd87cf3a6
        - quay.io/ecosystem-appeng/mercury-operator:1.0.1
        version: 1.0.1
      entries:
      - name: mercury-operator.1.0.1
        version: 1.0.1
      name: 1.0.x
    defaultChannel: 1.0.x
    packageName: mercury-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: stolostron
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stolostron.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "operator.open-cluster-management.io/v1",
            "kind": "MultiClusterHub", "metadata": {"name": "multiclusterhub", "namespace":
            "open-cluster-management"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/stolostron/multiclusterhub-operator@sha256:b00318c5b7b8cd04dc80df188e466853d9c007c854fc16fe5c49c3118b87b348
          createdAt: "2025-11-05T18:50:10Z"
          description: Advanced management of OpenShift and Kubernetes clusters
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1",
            "kind":"MultiClusterHub","metadata":{"name":"multiclusterhub","namespace":"stolostron"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: stolostron
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          repository: https://github.com/stolostron/stolostron
          support: Stolostron Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MulticlusterHub defines the configuration
              for an instance of a multicluster hub, a central point for managing multiple
              Kubernetes-based clusters. The deployment of multicluster hub components
              is determined based on the configuration that is defined in this resource.
            displayName: MultiClusterHub
            kind: MultiClusterHub
            name: multiclusterhubs.operator.open-cluster-management.io
            version: v1
        description: 'Stolostron provides the multicluster hub, a central management
          console for managing multiple Kubernetes-based clusters across data centers,
          public clouds, and private clouds. You can use the hub to create Red Hat
          OpenShift Container Platform clusters on selected providers, or import existing
          Kubernetes-based clusters. After the clusters are managed, you can set compliance
          requirements to ensure that the clusters maintain the specified security
          requirements. You can also deploy business applications across your clusters. '
        displayName: Stolostron
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - install
        - multiclusterhub
        links:
        - name: Documentation
          url: https://github.com/stolostron/stolostron
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: pre-release
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/stolostron/postgresql-12@sha256:da0b8d525b173ef472ff4c71fae60b396f518860d6313c4f3287b844aab6d622
        - quay.io/stolostron/flightctl-worker@sha256:7ad048be0df7dae5f3c322bdc48ed4d1ea52c6e78ad5379c839ad2da4aca8c1a
        - quay.io/stolostron/grc-policy-framework-tests@sha256:ca9492e998c82910b6968111f6173a90fda693c0f98661ad51919da080fa1c59
        - quay.io/stolostron/cluster-proxy-addon@sha256:5c9df70888b1cbc5209b0217bd0312991e6320cd9442e72e208f0af1498aa2f1
        - quay.io/stolostron/redis-7-c9s@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/search-operator-bundle@sha256:d3fbacdcc760259c7abda625c6964d1ad4382b6988a98be0f8f33bbd951dc7be
        - quay.io/stolostron/governance-policy-propagator@sha256:33ce7bdfe0a60411398962ef653b3b877cfb87671b8367b95de4118d000768d5
        - quay.io/stolostron/applifecycle-backend-e2e@sha256:05da11b343938866c5afcfe844bcd15d9c513fdb10fd7ea0d3473b455b427c2a
        - quay.io/stolostron/observatorium@sha256:ed9d70744cc9072d5f096b11bf6e24d83e02a4f8824399b52f3eb1916b897e8c
        - quay.io/stolostron/flightctl-ui@sha256:0eb00d63e1e9a52fd09483bd745e1090c93e71c1f1e1cc56851c70ec5810885c
        - quay.io/stolostron/multiclusterhub-operator@sha256:b00318c5b7b8cd04dc80df188e466853d9c007c854fc16fe5c49c3118b87b348
        - quay.io/stolostron/search-e2e@sha256:51dde02f030e09ef60cafdaaaaaa2e3ed2d37b1ffebe6a355d33bb1aaaa1984b
        - quay.io/stolostron/mtv-integrations@sha256:ea42533e46b99b871bc6cc04a376079e96ef0d4e368b01d5c14de18b791a46f5
        - quay.io/stolostron/multicluster-global-hub-operator@sha256:106efd2686b2ed1b975503f69a509b31c5534b11823739c5a411081f4ac65aed
        - quay.io/stolostron/prometheus@sha256:3bb172a2b7eec02d2543cb48a17b8d8749d5a88ccec9f54ec626c68922473756
        - quay.io/stolostron/multiclusterhub-operator-tests@sha256:12fd6f287fecfea68fc06914b90a50cb75f09c101eb66b9c01f1414e3677d31f
        - quay.io/stolostron/cert-policy-controller@sha256:18dd1db4780f97508a41a1fb80524347366ab1fe706e387f27af25f5458e5f6b
        - quay.io/stolostron/search-collector@sha256:87804b34cecd327768d4468f0a41e9994a1dc3b03afa8754a1a6369e8841622f
        - quay.io/stolostron/origin-cli@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/prometheus-alertmanager@sha256:8735f212888379caff4bec1ae5ff1909c5eecd5e2ce3ce51eb1bbd7b9e54a4b4
        - quay.io/stolostron/postgresql-13@sha256:f8c4c4364ab8d27d2c774cbd02a0d02b9d6e3cb6e8d69af728cdd889df312b56
        - quay.io/stolostron/flightctl-userinfo-proxy@sha256:3c09c290fd935bc32b5ba50d347cd83c9216ffbe4fa196229ff4ef5c1a714818
        - quay.io/stolostron/origin-oauth-proxy-48@sha256:c92a1480b2628d50d8fe158df9451598406e2e5cc7177cf5efcb81caba120afd
        - quay.io/stolostron/helloworld@sha256:4465550664bd210cf0df8edfd706de2fc51cacf01b66a962b5607935f9666ebc
        - quay.io/stolostron/klusterlet-addon-controller@sha256:b927b9b80a4016c4564792ed7326faa67468d4e01ca2b35cf9367e4151f01205
        - quay.io/stolostron/endpoint-monitoring-operator@sha256:ffd1920f90eb7b868414528d5c26656c1fddd84753a9a26ecd16700ca7d2abbe
        - quay.io/stolostron/console@sha256:0c35078ebdf547dac53ba04011e8a60304526bf2af38d98889ca5c17754088fc
        - quay.io/stolostron/grafana-dashboard-loader@sha256:901b5239063a2b0dc265ef3d2938a2c6b888ae7745af43b4283901ad63857d18
        - quay.io/community-operator-pipeline-prod/stolostron@sha256:924b3d003d81dc9cddb23276fe1b764f492e8d9d9247793881ff5bacd95ad4d6
        - quay.io/stolostron/flightctl-db-setup@sha256:44d8d92431035647d8639bfbdbe6c1654f058e0b3276dd5dc24947b335df51c0
        - quay.io/stolostron/kube-state-metrics@sha256:8401353f4de5017e3ec39e4c090753927b0eac986142d886920abf859364da99
        - quay.io/stolostron/thanos-receive-controller@sha256:713d979636547ed46a71ffd4cc02ed7be0deabf777cd431434f01efb27113797
        - quay.io/stolostron/multicluster-operators-channel@sha256:608e7ee661e3e33bf24a12d5353f2fddb5b490c1dbce554f890e0e8a3451f0c6
        - quay.io/stolostron/siteconfig-operator@sha256:91287560901e88799f009ae88da62571c70395bacb344dfedc0c1ac8d5f2660f
        - quay.io/stolostron/flightctl-api@sha256:a9f6e3a11e677820d1d37220b3b5c16c442d5cb4a9da2324e6d4388d8c85f960
        - quay.io/stolostron/metrics-collector@sha256:b743b28b54ae38549713ff24e29d7d7fe9367388d77a18d9a29215be44fa83c4
        - quay.io/stolostron/observatorium-operator@sha256:ba7b2ae31f88208647e7f6b1c238fa89b7c1c91591eddba082d90ac4ab3f709d
        - quay.io/stolostron/must-gather@sha256:0634da33001f41e709ad0414c1062187af76799a188f4535e197358b20656a09
        - quay.io/stolostron/flightctl-periodic@sha256:3c30398ca6f2f5da385e7554bb77a95562d595ae29e72c687ac80737931272a1
        - quay.io/stolostron/multicloud-integrations@sha256:20fc5ce8fdff0931d21d6ec556166eb6dbd986dd566105b029a12ac6abd189d1
        - quay.io/stolostron/insights-client@sha256:15ce834bf864b4d415592ca08d45c74447e4c804d7dbace45b761d3772f515ad
        - quay.io/stolostron/prometheus-operator@sha256:d3e2d11a868de9796abc939ffa97ca549845e6463ba20d0493385421ca8ecae3
        - quay.io/stolostron/multicluster-observability-operator@sha256:2bebf578b17058ab00baa51ec3b74d5d924a27faf1c36b9fae7784ebef47b87e
        - quay.io/stolostron/acm-cli@sha256:edd0eca7da92ac675237059b8c774fd39198c4ec39ab3c71f013b816cf95b62b
        - quay.io/stolostron/origin-oauth-proxy-49-and-up@sha256:0e72ed64cdf76828392ef8cfe4ee49d644a013ac00ff1590d6c53774d77615e3
        - quay.io/stolostron/helloprow-go@sha256:0671c58cc5c1f3fb9e00ae58ad6ef2c1f470867e26637b823261e9ab9279f05e
        - quay.io/stolostron/origin-oauth-proxy-415-and-below@sha256:41762eda03298362d3f97e1fd0be4af429d22658b520f94023941655e062d1a1
        - quay.io/stolostron/flightctl-alert-exporter@sha256:6fc5faba5bd241970751b78072a99695c27756ae793395e9e7f8255d15633623
        - quay.io/stolostron/node-exporter@sha256:80f4bba97684bcebd2e8be3460f47db90dec6432f7f1ae025105d9a438345f52
        - quay.io/stolostron/origin-oauth-proxy-416-and-up@sha256:0b1051e9e7a18a81a9156bbc182424ad3eb480968256a4765cfd07c13bf4931a
        - quay.io/stolostron/search-indexer@sha256:29b90a727c1aed8bf2b439bc24b3adf2d1499dca5055275e0d682db632aff237
        - quay.io/stolostron/cluster-permission@sha256:a495b3baff27bb75dbb9e18e7b7e9a38969847bc188f8c7d17868557e5394e3e
        - quay.io/stolostron/origin-oauth-proxy@sha256:c92a1480b2628d50d8fe158df9451598406e2e5cc7177cf5efcb81caba120afd
        - quay.io/stolostron/kube-rbac-proxy@sha256:d90d4dfb5e0f8eec50bcfc86d4c457123f26cc961e632e26e25f24c5d6699a8c
        - quay.io/stolostron/submariner-addon@sha256:765404364ab4a206f6a198b833ad7c3f47f42781487c2e994a1a3a99a30ad4d4
        - quay.io/stolostron/thanos@sha256:38e9d0c45556878b81c3ef8b05ce6c8bef37597859c390153d34c44de183ef91
        - quay.io/stolostron/cluster-proxy@sha256:decd4ebdad2fcadd15fcc4be977ac85f5bb6331afcd96dc862626ae8e1f58691
        - quay.io/stolostron/observability-e2e-test@sha256:bab2ceda615b69d37cb42595eea4d915001ea6115ea7dd1b4a753ac6480307f5
        - quay.io/stolostron/multicluster-operators-subscription@sha256:7cdecaf11316290512e88483b259f682f78589a9e351e334d0b6c109adcf75d8
        - quay.io/stolostron/cluster-templates-operator@sha256:133e5cede92a5dbe9373982c851ca40134fc4de8665e54de60ecc7738f9f50f7
        - quay.io/stolostron/insights-metrics@sha256:ccf217a70625f2b53e76c6ab1916286b31ba89664aa93d638293b54677c73595
        - quay.io/stolostron/postgresql-16@sha256:db2f73275f9cc0f2d262fadb8e8a5da72b089f9d22f7c859bb1364d9f9a8b622
        - quay.io/stolostron/prometheus-config-reloader@sha256:cac144214cd8d76eda94f6aa2bf55d1cda05a5817c1b6152231c7f1473eee35b
        - quay.io/stolostron/cluster-lifecycle-e2e@sha256:1d997d1238d92c852e35162be21c338ff87216e4f92bce24203b997da827197c
        - quay.io/stolostron/grafana@sha256:791c6a90290eb08bbc87d9384042e6246e38e404d2c73958ca962d113c83b83a
        - quay.io/stolostron/flightctl-cli-artifacts@sha256:7bfde294440629efb65c0b5bf22ba0eb12e28a81d0f5da31951eac325501fc85
        - quay.io/stolostron/rbac-query-proxy@sha256:d3496b4c01df742ce8a255f55937335fdb9e55e12a252fd7f8b3ccee1ac8e137
        - quay.io/stolostron/search-v2-api@sha256:f959f84c38b15481e147241772af7a9b840743ac25bd1d02d53751c33f07edb7
        - quay.io/stolostron/multicluster-operators-application@sha256:d5de12b22f933b1c14131d938fd2b6c2081675e039cbb00a8266e94ccd56a375
        - quay.io/stolostron/flightctl-ocp-ui@sha256:5874277619745aacae1b8f8c52cf3c89d70d9097f4e3574a960c1591019ecac1
        - quay.io/stolostron/governance-policy-addon-controller@sha256:0954a617e01bb1b6b052addd29bc99273bd6e9562f36761e87d5735f8debb3e6
        - quay.io/stolostron/search-v2-operator@sha256:0bfe92b74ae6f0f91d3b4c66616aa71c1e8dcfbdafa7ec9a82af792d2bfa92d4
        - quay.io/stolostron/flightctl-alertmanager-proxy@sha256:f5636ff13374fb4fa40d5f3a0b29d10e5d8a04d4275374f7b84a22cb47aa4be5
        - quay.io/stolostron/multicluster-role-assignment@sha256:345b72961a8cc94d21cc7510ae800263e2d97454966d4a8ed4c9a466bc3be19d
        - quay.io/stolostron/volsync-addon-controller@sha256:c95a7e58c42d5ae875cbd7359af0397f2d3cd740c6608240bf4020de1ba73a0e
        - quay.io/stolostron/analytics-recommends@sha256:1d4a3cfb193992bed84578661affc31be25523966af3aea9f13d1d52498bac8b
        - quay.io/stolostron/governance-policy-framework-addon@sha256:a6779f2c42f3f117654a3b380f4c3e9ba858f3bbfe011801fe2fb36fa6168433
        - quay.io/stolostron/iam-policy-controller@sha256:27cefc2f923d7ed216f7e650b569551668d1f67f0047b6b98902d37032f6ab92
        - quay.io/stolostron/bailer@sha256:b6d0f5ff086a0a19e98ef4b60ac4e1c3f61e775863ee772d7829395800eb6492
        - quay.io/stolostron/cluster-backup-controller@sha256:cf3ec9d108e5da4bae12532ab2099eb6244a3015bf347589896367fbcba7c6c9
        - quay.io/stolostron/config-policy-controller@sha256:e9b900ab0b2c04826fea52d88469185d877426b61d023a942570d14c6217591c
        version: 0.8.2
      entries:
      - name: stolostron.v0.8.2
        version: 0.8.2
      - name: stolostron.v0.8.0
        version: 0.8.0
      name: community-0.8
    defaultChannel: community-0.8
    packageName: stolostron
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: namespace-configuration-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: namespace-configuration-operator.v1.2.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupConfig",
                "metadata": {
                  "name": "test-groupconfig"
                },
                "spec": {
                  "labelSelector": {
                    "matchLabels": {
                      "type": "team"
                    }
                  },
                  "templates": [
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-dev\n  labels:\n    group: {{ .Name }}  \n"
                    },
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-qa\n  labels:\n    group: {{ .Name }}          \n"
                    },
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-prod\n  labels:\n    group: {{ .Name }}                           \n"
                    },
                    {
                      "objectTemplate": "apiVersion: quota.openshift.io/v1\nkind: ClusterResourceQuota\nmetadata:\n  name: {{ .Name }}-quota\nspec:\n  quota:\n    hard:\n      pods: \"4\" \n      requests.cpu: \"1\" \n      requests.memory: 1Gi \n      requests.ephemeral-storage: 2Gi \n      limits.cpu: \"2\" \n      limits.memory: 2Gi \n      limits.ephemeral-storage: 4Gi\n  selector:\n    labels:\n      matchLabels:\n        group: {{ .Name }}\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "NamespaceConfig",
                "metadata": {
                  "name": "test-namespaceconfig"
                },
                "spec": {
                  "labelSelector": {
                    "matchLabels": {
                      "type": "secure"
                    }
                  },
                  "templates": [
                    {
                      "objectTemplate": "apiVersion: v1\nkind: ResourceQuota\nmetadata:\n  name: standard-sandbox\n  namespace: {{ .Name }}\nspec:\n  hard:\n    pods: \"4\" \n    requests.cpu: \"1\" \n    requests.memory: 1Gi \n    requests.ephemeral-storage: 2Gi \n    limits.cpu: \"2\" \n    limits.memory: 2Gi \n    limits.ephemeral-storage: 4Gi\n"
                    },
                    {
                      "objectTemplate": "kind: EgressNetworkPolicy\napiVersion: network.openshift.io/v1\nmetadata:\n  name: air-gapped\n  namespace: {{ .Name }}  \nspec:\n  egress:\n  - type: Deny\n    to:\n      cidrSelector: 0.0.0.0/0\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "UserConfig",
                "metadata": {
                  "name": "test-user-config"
                },
                "spec": {
                  "providerName": "my-provider",
                  "templates": [
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-sandbox\n"
                    },
                    {
                      "objectTemplate": "apiVersion: v1\nkind: ResourceQuota\nmetadata:\n  name: standard-sandbox\n  namespace: {{ .Name }}-sandbox\nspec:\n  hard:\n    pods: \"4\" \n    requests.cpu: \"1\" \n    requests.memory: 1Gi \n    requests.ephemeral-storage: 2Gi \n    limits.cpu: \"2\" \n    limits.memory: 2Gi \n    limits.ephemeral-storage: 4Gi\n"
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/namespace-configuration-operator@sha256:49ed7d6155342adaa2b12fd80c6761c3081d8e6149d187cb7ff91a247cdf2e7a
          createdAt: "2023-11-22T15:58:50Z"
          description: This operator provides a facility to define and enforce namespace
            configurations
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: namespace-configuration-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/namespace-configuration-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GroupConfig is the Schema for the groupconfigs API
            displayName: Group Config
            kind: GroupConfig
            name: groupconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: NamespaceConfig is the Schema for the namespaceconfigs API
            displayName: Namespace Config
            kind: NamespaceConfig
            name: namespaceconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: UserConfig is the Schema for the userconfigs API
            displayName: User Config
            kind: UserConfig
            name: userconfigs.redhatcop.redhat.io
            version: v1alpha1
        description: "The `namespace-configuration-operator` helps keeping configurations
          related to Users, Groups and Namespaces aligned with one of more policies
          specified as a CRs. The purpose is to provide the foundational building
          block to create an end-to-end onboarding process. \nBy onboarding process
          we mean all the provisioning steps needed to a developer team working on
          one or more applications to OpenShift.\n This usually involves configuring
          resources such as: Groups, RoleBindings, Namespaces, ResourceQuotas, NetworkPolicies,
          EgressNetworkPolicies, etc.... . Depending on the specific environment the
          list could continue.\nNaturally such a process should be as automatic and
          scalable as possible.\n\nWith the namespace-configuration-operator one can
          create rules that will react to the creation of Users, Groups and Namespace
          and will create and enforce a set of resources.\n\nHere are some examples
          of the type of onboarding processes that one could support:\n\n1. [developer
          sandbox](https://github.com/redhat-cop/namespace-configuration-operator/blob/master/examples/user-sandbox/readme.md)\n
          2. [team onboarding](https://github.com/redhat-cop/namespace-configuration-operator//blob/master/examples/team-onboarding/readme.md)
          with support of the entire SDLC in a multitentant environment.\n\nPolicies
          can be expressed with the following CRDs:\n\n| Watched Resource | CRD |\n|--|--|\n
          | Groups | [GroupConfig](#GroupConfig) |\n| Users | [UserConfig](#UserConfig)
          |\n| Namespace | [NamespaceConfig](#NamespaceConfig) |\n\nThese CRDs all
          share some commonalities:\n\n1. Templated Resources\n2. List of ignored
          jason path\n \n### Templated Resources\n\nEach has a parameter called `templatedResources`,
          which is an array. Each element of the array has two fields `objectTemplate`
          and `excludedPaths` (see below).\n\nThe `objectTemplate` field must contains
          a [go template](https://golang.org/pkg/text/template/) that resolves to
          a single API Resource expressed in `yaml`. The template is merged with the
          object selected by the CR. For example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n
          kind: UserConfig\nmetadata:\n  name: test-user-config\nspec:\n  provider:
          corp-ldap\n  templates:\n  - objectTemplate: |\n      apiVersion: v1\n      kind:
          Namespace\n      metadata:\n        name: {{ .Name }}-sandbox\n```\n\nThis
          create a rule in which every time a user from the `corp-ldap` provider is
          created, a namespace called `<username>-sandbox` is also created.\n\n###
          Excluded Paths\n\nThe logic of the `namespace-configuration-operator` is
          to enforce that the resources resolved by processing the templates \"stays
          in place\". In other words if those resources are changed and/or deleted
          they will be reset by the operator.\nBut there are situations in which at
          least part of a resource is allowed to change. Common use cases are: annotations
          and in general the metadata section of a resource can be updated by the
          various operators watching that resources. The status field is often updated
          by the main operator managing that resources. Finally, when applicable the
          `spec.replicas` field should also be allowed to change.\n\nTo handle special
          use case, one can also specify additional *jsonpaths* that should be ignored
          when comparing the desired resource and the current resource and making
          a decision on whether that resource should be reset.\n\nThe following paths
          are always included:\n \n1. `.metadata`\n2. `.status`\n3. `.spec.replicas`\n\n##
          NamespaceConfig\n\n The `NamespaceConfig` CR allows specifying one or more
          objects that will be created in the selected namespaces.\n\nNamespaces can
          be selected by labels or annotations via a label selector for example:\n\n```yaml\napiVersion:
          redhatcop.redhat.io/v1alpha1\n kind: NamespaceConfig\nmetadata:\n  name:
          small-namespace\n  selector:\n    matchLabels:\n      size: small  \n  resources:\n
          \ - apiVersion: v1\n    kind: ResourceQuota\n    metadata:\n      name:
          small-size  \n    spec:\n      hard:\n        requests.cpu: \"4\"\n        requests.memory:
          \"2Gi\"\n```\n\nHere is a `NamespaceConfig` object using a `matchExpressions`
          selector:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n kind: NamespaceConfig\nmetadata:\n
          \ name: tier-config\nspec:\n  annotationSelector:\n    matchExpressions:\n
          \     - {key: tier, operator: In, values: [gold,silver]}\n ```\n\nAlthough
          not enforced by the operator the general expectation is that the NamespaceConfig
          CR will be used to create objects inside the selected namespace.\n \nExamples
          of NamespaceConfig usages can be found [here](https://github.com/redhat-cop/namespace-configuration-operator/blob/master/examples/namespace-config/readme.md)\n
          \n## GroupConfig\n\nThe `GroupConfig` CR allows specifying one or more objects
          that will be created in the selected Group.\nGroups can be selected by labels
          or annotations via a label selector, similarly to the `NamespaceConfig`.\n\nOften
          groups are created in OpenShift by a job that synchronizes an Identity Provider
          with OCP. So the idea is that when new groups are added or deleted the configuration
          in OpenShift will adapt automatically.\n\nAlthough not enforced by the operator,
          GroupConfig are expected to create cluster-scoped resources like Namespaces,
          ClusterResourceQuotas and potentially some namespaced resources like RoleBindings.\n\n##
          UserConfig\n \nIn OpenShift an external user is defined by two entities:
          Users and Identities. There is a relationship of on to many between Users
          and Identities. Given one user, there can be one Identity per authentication
          mechanism.\n\nThe `UserConfig` CR allows specifying one or more objects
          that will be created in the selected User.\nUsers can be selected by label
          or annotation like `NamespaceConfig` and `UserConfig`.\nUSers can also be
          selected by provider name (the name of the authentication mechanism) and
          identity extra field.\n\nHere is an example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          UserConfig\nmetadata:\n  name: test-user-config\nspec:\n  providerName:
          okta-provider\n  identityExtraFieldSelector:\n    matchLabels:\n      sandbox_enabled:
          \"true\"\n  templates:\n  - objectTemplate: |\n      apiVersion: v1\n      kind:
          Namespace\n      metadata:\n        name: {{ .Name }}-sandbox\n ```\n\nUser
          will be selected by this `UserConfig` only if they login via the *okta-provider*
          and if the extra field was populate with the label `sandbox_enabled: \"true\"
          `. Note that not all authentication provider allow populating the extra
          fields in the Identity object.\n"
        displayName: Namespace Configuration Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - namespace
        - user
        - group
        - configuration
        - policy
        - management
        links:
        - name: Namespace Configuration Operator
          url: https://github.com/redhat-cop/namespace-configuration-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/namespace-configuration-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/namespace-configuration-operator@sha256:971991d2bf717001a98b175c50580cd7db9d230492e72670606c2ed50c53feb0
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/namespace-configuration-operator@sha256:49ed7d6155342adaa2b12fd80c6761c3081d8e6149d187cb7ff91a247cdf2e7a
        version: 1.2.6
      entries:
      - name: namespace-configuration-operator.v1.2.6
        version: 1.2.6
      - name: namespace-configuration-operator.v1.2.5
        version: 1.2.5
      - name: namespace-configuration-operator.v1.2.4
        version: 1.2.4
      - name: namespace-configuration-operator.v1.2.3
        version: 1.2.3
      - name: namespace-configuration-operator.v1.2.2
        version: 1.2.2
      - name: namespace-configuration-operator.v1.2.1
        version: 1.2.1
      - name: namespace-configuration-operator.v1.2.0
        version: 1.2.0
      - name: namespace-configuration-operator.v1.1.0
        version: 1.1.0
      - name: namespace-configuration-operator.v1.0.7
        version: 1.0.7
      - name: namespace-configuration-operator.v1.0.6
        version: 1.0.6
      - name: namespace-configuration-operator.v1.0.5
        version: 1.0.5
      - name: namespace-configuration-operator.v1.0.4
        version: 1.0.4
      - name: namespace-configuration-operator.v1.0.3
        version: 1.0.3
      - name: namespace-configuration-operator.v1.0.2
        version: 1.0.2
      - name: namespace-configuration-operator.v1.0.1
        version: 1.0.1
      - name: namespace-configuration-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: namespace-configuration-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Snyk Ltd.
      provider-url: ""
    name: snyk-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: snyk-operator.v1.92.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.helm.k8s.io/v1alpha1",
                "kind": "SnykMonitor",
                "metadata": {
                  "name": "snyk-monitor"
                },
                "spec": {
                  "clusterName": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "snyk/kubernetes-monitor",
                    "tag": "1.92.0-ubi8"
                  },
                  "integrationApi": "",
                  "monitorSecrets": "snyk-monitor",
                  "scope": "Cluster",
                  "temporaryStorageSize": "50Gi",
                  "pvc": {
                    "enabled": false,
                    "create": false,
                    "name": "snyk-monitor-pvc",
                    "storageClassName": null
                  },
                  "initContainerImage": {
                    "repository": "busybox",
                    "tag": "latest"
                  },
                  "requests": {
                    "memory": "400Mi"
                  },
                  "limits": {
                    "memory": "2Gi"
                  },
                  "nodeAffinity": {
                    "disableBetaArchNodeSelector": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Security
          certified: "false"
          containerImage: docker.io/snyk/kubernetes-operator:1.92.0
          createdAt: "2022-06-09T17:49:36Z"
          description: A Kubernetes Operator for creating and managing Snyk controller
            instances.
          olm.skipRange: <1.68.2
          repository: https://github.com/snyk/kubernetes-monitor
          support: Snyk Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a deployment of the Snyk controller, which scans
              container images in the cluster for vulnerabilities.
            displayName: Snyk Monitor
            kind: SnykMonitor
            name: snykmonitors.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          A Kubernetes Operator for creating and managing Snyk Kubernetes controller instances.

          Snyk integrates with Kubernetes, enabling you to import and test your running workloads and identify vulnerabilities in their associated images and configurations that might make those workloads less secure. Once imported, Snyk continues to monitor those workloads, identifying additional security issues as new images are deployed and the workload configuration changes.

          ## Prerequisites

          To start using the Operator and the Snyk controller that it manages, you will need to create a secret containing your Snyk integrationId and Docker config file:

          ```
          kubectl create namespace snyk-monitor
          kubectl create secret generic snyk-monitor -n snyk-monitor --from-literal=dockercfg.json={} --from-literal=integrationId=${SNYK_INTEGRATION_ID}
          ```

          Refer to the [Snyk documentation](https://support.snyk.io/hc/en-us/articles/360003916138-Kubernetes-integration-overview) for more details.
        displayName: Snyk Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - snyk
        - controller
        - monitor
        - operator
        - security
        - cluster
        - container
        - image
        - security
        - vulnerabilities
        - advisories
        - audit
        - scan
        - scanning
        links:
        - name: Website
          url: https://snyk.io
        - name: Documentation
          url: https://support.snyk.io/hc/en-us/articles/360003916138-Kubernetes-integration-overview
        maintainers:
        - email: support@snyk.io
          name: Snyk Ltd.
        maturity: stable
        provider:
          name: Snyk Ltd.
        relatedImages:
        - quay.io/openshift-community-operators/snyk-operator@sha256:97908144406700ae9c038316661dc7904f3e0f4e01b1bbdf68259b59dfb86d6c
        - docker.io/snyk/kubernetes-operator:1.92.0
        version: 1.92.0
      entries:
      - name: snyk-operator.v1.92.0
        version: 1.92.0
      - name: snyk-operator.v1.90.2
        version: 1.90.2
      - name: snyk-operator.v1.90.1
        version: 1.90.1
      - name: snyk-operator.v1.88.4
        version: 1.88.4
      - name: snyk-operator.v1.85.2
        version: 1.85.2
      - name: snyk-operator.v1.82.1
        version: 1.82.1
      - name: snyk-operator.v1.81.1
        version: 1.81.1
      - name: snyk-operator.v1.80.0
        version: 1.80.0
      - name: snyk-operator.v1.73.0
        version: 1.73.0
      - name: snyk-operator.v1.72.0
        version: 1.72.0
      - name: snyk-operator.v1.70.4
        version: 1.70.4
      - name: snyk-operator.v1.70.1
        version: 1.70.1
      name: stable
    defaultChannel: stable
    packageName: snyk-operator
    provider:
      name: Snyk Ltd.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: keycloak-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keycloak-operator.v19.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "example-keycloakrealm",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realm": {
                    "id": "basic",
                    "realm": "basic",
                    "enabled": true,
                    "displayName": "Basic Realm"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakBackup",
                "metadata": {
                  "name": "example-keycloakbackup"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "client-secret",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  },
                  "client": {
                    "clientId": "client-secret",
                    "secret": "client-secret",
                    "clientAuthenticatorType": "client-secret"
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakUser",
                "metadata": {
                  "name": "example-realm-user",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "user": {
                    "username": "realm_user",
                    "firstName": "John",
                    "lastName": "Doe",
                    "email": "user@example.com",
                    "enabled": true,
                    "emailVerified": false
                  },
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "False"
          containerImage: quay.io/keycloak/keycloak-operator:19.0.3-legacy
          createdAt: "2022-10-07 17:00:00"
          description: An Operator for installing and managing Keycloak
          repository: https://github.com/keycloak/keycloak-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak Realm
            displayName: KeycloakRealm
            kind: KeycloakRealm
            name: keycloakrealms.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak Backup
            displayName: KeycloakBackup
            kind: KeycloakBackup
            name: keycloakbackups.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak Client
            displayName: KeycloakClient
            kind: KeycloakClient
            name: keycloakclients.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak User
            displayName: KeycloakUser
            kind: KeycloakUser
            name: keycloakusers.keycloak.org
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
          * Import Keycloak Clients
          * Import Keycloak Users
          * Create scheduled backups of the database
          * Install Extensions
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/docs/latest/server_installation/index.html#_operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@lists.jboss.org
          name: Keycloak DEV mailing list
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/keycloak/keycloak-operator:19.0.3-legacy
        - quay.io/openshift-community-operators/keycloak-operator@sha256:a4da3bcbb4e99d60b8217d9e62742eeb83eef163dfefb2f7efda131f312e46e3
        version: 19.0.3
      entries:
      - name: keycloak-operator.v19.0.3
        version: 19.0.3
      - name: keycloak-operator.v19.0.2
        version: 19.0.2
      - name: keycloak-operator.v19.0.1
        version: 19.0.1
      - name: keycloak-operator.v19.0.0
        version: 19.0.0
      - name: keycloak-operator.v18.0.2
        version: 18.0.2
      - name: keycloak-operator.v18.0.1
        version: 18.0.1
      - name: keycloak-operator.v18.0.0
        version: 18.0.0
      - name: keycloak-operator.v17.0.1
        version: 17.0.1
      - name: keycloak-operator.v17.0.0
        version: 17.0.0
      - name: keycloak-operator.v16.1.0
        version: 16.1.0
      - name: keycloak-operator.v16.0.0
        version: 16.0.0
      - name: keycloak-operator.v15.1.1
        version: 15.1.1
      - name: keycloak-operator.v15.1.0
        version: 15.1.0
      - name: keycloak-operator.v15.0.2
        version: 15.0.2
      - name: keycloak-operator.v15.0.1
        version: 15.0.1
      - name: keycloak-operator.v15.0.0
        version: 15.0.0
      - name: keycloak-operator.v14.0.0
        version: 14.0.0
      name: alpha
    - currentCSV: keycloak-operator.v20.0.0-alpha.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": "example.org",
                  "tlsSecret": "my-tls-secret"
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "False"
          containerImage: quay.io/keycloak/keycloak-operator:19.0.3
          createdAt: 10/07/22 17:00:00
          description: An Operator for installing and managing Keycloak
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/docs/latest/server_installation/index.html#_operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@lists.jboss.org
          name: Keycloak DEV mailing list
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/keycloak/keycloak-operator:19.0.3
        - quay.io/openshift-community-operators/keycloak-operator@sha256:65fe00f310289b70538a6dde897ef663731d0da44a7bb1d0f55a3001a50e53fa
        version: 20.0.0-alpha.7
      entries:
      - name: keycloak-operator.v20.0.0-alpha.7
        version: 20.0.0-alpha.7
      - name: keycloak-operator.v20.0.0-alpha.6
        version: 20.0.0-alpha.6
      - name: keycloak-operator.v20.0.0-alpha.5
        version: 20.0.0-alpha.5
      - name: keycloak-operator.v20.0.0-alpha.4
        version: 20.0.0-alpha.4
      - name: keycloak-operator.v20.0.0-alpha.3
        version: 20.0.0-alpha.3
      - name: keycloak-operator.v20.0.0-alpha.2
        version: 20.0.0-alpha.2
      - name: keycloak-operator.v20.0.0-alpha.1
        version: 20.0.0-alpha.1
      name: candidate
    - currentCSV: keycloak-operator.v26.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: quay.io/keycloak/keycloak-operator:26.4.7
          createdAt: "2025-12-01T08:24:52Z"
          description: An Operator for installing and managing Keycloak
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: batch
          kind: Job
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: networking.k8s.io
          kind: NetworkPolicy
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/keycloak/keycloak-operator:26.4.7
        - quay.io/community-operator-pipeline-prod/keycloak-operator@sha256:157776c3e6cd0016d7791ffed92f0bfe5ca2658485b427b4e76ddc0c0b37924b
        version: 26.4.7
      entries:
      - name: keycloak-operator.v26.4.7
        version: 26.4.7
      - name: keycloak-operator.v26.4.6
        version: 26.4.6
      - name: keycloak-operator.v26.4.5
        version: 26.4.5
      - name: keycloak-operator.v26.4.4
        version: 26.4.4
      - name: keycloak-operator.v26.4.2
        version: 26.4.2
      - name: keycloak-operator.v26.4.1
        version: 26.4.1
      - name: keycloak-operator.v26.4.0
        version: 26.4.0
      - name: keycloak-operator.v26.3.5
        version: 26.3.5
      - name: keycloak-operator.v26.3.4
        version: 26.3.4
      - name: keycloak-operator.v26.3.3
        version: 26.3.3
      - name: keycloak-operator.v26.3.2
        version: 26.3.2
      - name: keycloak-operator.v26.3.1
        version: 26.3.1
      - name: keycloak-operator.v26.3.0
        version: 26.3.0
      - name: keycloak-operator.v26.2.5
        version: 26.2.5
      - name: keycloak-operator.v26.2.4
        version: 26.2.4
      - name: keycloak-operator.v26.2.3
        version: 26.2.3
      - name: keycloak-operator.v26.2.2
        version: 26.2.2
      - name: keycloak-operator.v26.2.1
        version: 26.2.1
      - name: keycloak-operator.v26.2.0
        version: 26.2.0
      - name: keycloak-operator.v26.1.5
        version: 26.1.5
      - name: keycloak-operator.v26.1.4
        version: 26.1.4
      - name: keycloak-operator.v26.1.3
        version: 26.1.3
      - name: keycloak-operator.v26.1.2
        version: 26.1.2
      - name: keycloak-operator.v26.1.1
        version: 26.1.1
      - name: keycloak-operator.v26.1.0
        version: 26.1.0
      - name: keycloak-operator.v26.0.8
        version: 26.0.8
      - name: keycloak-operator.v26.0.7
        version: 26.0.7
      - name: keycloak-operator.v26.0.6
        version: 26.0.6
      - name: keycloak-operator.v26.0.5
        version: 26.0.5
      - name: keycloak-operator.v26.0.4
        version: 26.0.4
      - name: keycloak-operator.v26.0.2
        version: 26.0.2
      - name: keycloak-operator.v26.0.1
        version: 26.0.1
      - name: keycloak-operator.v26.0.0
        version: 26.0.0
      - name: keycloak-operator.v25.0.6
        version: 25.0.6
      - name: keycloak-operator.v25.0.5
        version: 25.0.5
      - name: keycloak-operator.v25.0.4
        version: 25.0.4
      - name: keycloak-operator.v25.0.2
        version: 25.0.2
      - name: keycloak-operator.v25.0.1
        version: 25.0.1
      - name: keycloak-operator.v25.0.0
        version: 25.0.0
      - name: keycloak-operator.v24.0.5
        version: 24.0.5
      - name: keycloak-operator.v24.0.4
        version: 24.0.4
      - name: keycloak-operator.v24.0.3
        version: 24.0.3
      - name: keycloak-operator.v24.0.2
        version: 24.0.2
      - name: keycloak-operator.v24.0.1
        version: 24.0.1
      - name: keycloak-operator.v24.0.0
        version: 24.0.0
      - name: keycloak-operator.v23.0.7
        version: 23.0.7
      - name: keycloak-operator.v23.0.6
        version: 23.0.6
      - name: keycloak-operator.v23.0.5
        version: 23.0.5
      - name: keycloak-operator.v23.0.4
        version: 23.0.4
      - name: keycloak-operator.v23.0.3
        version: 23.0.3
      - name: keycloak-operator.v23.0.2
        version: 23.0.2
      - name: keycloak-operator.v23.0.1
        version: 23.0.1
      - name: keycloak-operator.v23.0.0
        version: 23.0.0
      - name: keycloak-operator.v22.0.5
        version: 22.0.5
      - name: keycloak-operator.v22.0.4
        version: 22.0.4
      - name: keycloak-operator.v22.0.3
        version: 22.0.3
      - name: keycloak-operator.v22.0.2
        version: 22.0.2
      - name: keycloak-operator.v22.0.1
        version: 22.0.1
      - name: keycloak-operator.v22.0.0
        version: 22.0.0
      - name: keycloak-operator.v21.1.2
        version: 21.1.2
      - name: keycloak-operator.v21.1.1
        version: 21.1.1
      - name: keycloak-operator.v21.1.0
        version: 21.1.0
      - name: keycloak-operator.v21.0.2
        version: 21.0.2
      - name: keycloak-operator.v21.0.1
        version: 21.0.1
      - name: keycloak-operator.v21.0.0
        version: 21.0.0
      - name: keycloak-operator.v20.0.3
        version: 20.0.3
      - name: keycloak-operator.v20.0.2
        version: 20.0.2
      - name: keycloak-operator.v20.0.1
        version: 20.0.1
      - name: keycloak-operator.v20.0.0
        version: 20.0.0
      name: fast
    defaultChannel: fast
    packageName: keycloak-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: logic-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: logic-operator.v1.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "host/namespace",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          createdAt: "2025-09-28T18:26:11Z"
          description: OpenShift Serverless Logic Kubernetes Operator for deploying
            workflow applications based on the CNCF Serverless Workflow specification
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: openshift-serverless-logic
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kubesmarts/kie-tools
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: Sonata Flow Build
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: Sonata Flow Cluster Platform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: Sonata Flow Platform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: Sonata Flow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          OpenShift Serverless Logic Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification v0.8](https://serverlessworkflow.io/).
        displayName: OpenShift Serverless Logic Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        - workflows
        links:
        - name: Documentation
          url: https://docs.openshift.com/serverless/
        - name: Source Repository
          url: https://github.com/kiegroup/kogito-serverless-operator/
        maintainers:
        - email: serverless-logic-team@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/logic-swf-devmode-rhel9@sha256:e51b77bde368c4d34b9e1536677c1bd02182c2d6ee3a999d63f213c6853510ea
        - registry.redhat.io/openshift-serverless-1/logic-data-index-postgresql-rhel9@sha256:071078f5f5963fb07d0b161fa925c4681045229778cc911800a54529a14b3797
        - registry.redhat.io/openshift-serverless-1/logic-operator-bundle@sha256:90f9864ae2872acaedf12afc9c707e26bdaba0ef48623153ad0881b1b9945dc9
        - registry.redhat.io/openshift-serverless-1/logic-rhel9-operator@sha256:e7e35b4a80ed8261f09b474c3449f34071bc9636f151ea6604c1f9efd5195827
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4564ca3dc5bac80d6faddaf94c817fbbc270698a9399d8a21ee1005d85ceda56
        - registry.redhat.io/openshift-serverless-1/logic-data-index-ephemeral-rhel9@sha256:bac7496c5c95f529494625778deb14a7c429f2d2aff988b8fca3968de5751f00
        - registry.redhat.io/openshift-serverless-1/logic-jobs-service-postgresql-rhel9@sha256:10503b5a1f1629df1ee61d9009e720f625c05df515078157ba5ed683c1308012
        - registry.redhat.io/openshift-serverless-1/logic-swf-builder-rhel9@sha256:37490d642d03a627f434d806fffae5b0e1245a4fe0d5fee6b13bfff162314af1
        - registry.redhat.io/openshift-serverless-1/logic-jobs-service-ephemeral-rhel9@sha256:b9522442546f5daf0d2481794e9a565fa08c6db9b6db1f9e8c2a7824b2562e33
        - registry.redhat.io/openshift-serverless-1/logic-db-migrator-tool-rhel9@sha256:6818e069bf9ab89cddd5cea1c2e93c6dd1707c479cc21f116e33d8e6db345ad8
        version: 1.37.0
      entries:
      - name: logic-operator.v1.37.0
        version: 1.37.0
      name: stable
    defaultChannel: stable
    packageName: logic-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.0-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: lvms-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lvms-operator.v4.19.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "my-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "default": true,
                        "fstype": "xfs",
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:3701735419e2e68b3c579a68c48106f00b8fb7c1915200ee37437cc0f73a975a
          description: Logical volume manager storage provides dynamically provisioned
            local storage for container workloads
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.2.0 <4.19.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |-
            {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "test-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
          operatorframework.io/suggested-namespace: openshift-storage
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-storage",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/internal-objects: '["logicalvolumes.topolvm.io",
            "lvmvolumegroups.lvm.topolvm.io", "lvmvolumegroupnodestatuses.lvm.topolvm.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lvm-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: LogicalVolume
            name: logicalvolumes.topolvm.io
            version: v1
          - description: LVMCluster is the Schema for the lvmclusters API
            displayName: LVMCluster
            kind: LVMCluster
            name: lvmclusters.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroupNodeStatus
            name: lvmvolumegroupnodestatuses.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroup
            name: lvmvolumegroups.lvm.topolvm.io
            version: v1alpha1
        description: Logical volume manager storage provides dynamically provisioned
          local storage.
        displayName: LVM Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - local storage
        - operator
        - LVM
        links:
        - name: Source Repository
          url: https://github.com/openshift/lvm-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:1e455df18829d87ac99cc7673e1a236fa8f4cc4cc2f56c922810acc0af98cc65
        - registry.redhat.io/lvms4/lvms-operator-bundle@sha256:db9b7aa0d4feb713d0e9a0d122f9be41c95761de356a592012eea8bc52351209
        - registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:3701735419e2e68b3c579a68c48106f00b8fb7c1915200ee37437cc0f73a975a
        version: 4.19.1
      entries:
      - name: lvms-operator.v4.19.1
        version: 4.19.1
      - name: lvms-operator.v4.19.0
        version: 4.19.0
      name: stable-4.19
    - currentCSV: lvms-operator.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "my-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "default": true,
                        "fstype": "xfs",
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:ffd7f0e091cbc9a788a0c857187a3a558f123b4373f33e556486a2fdf8f57d27
          description: Logical volume manager storage provides dynamically provisioned
            local storage for container workloads
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.2.0 <4.20.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |-
            {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "test-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
          operatorframework.io/suggested-namespace: openshift-lvm-storage
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-lvm-storage",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/must-gather-image: registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:d264281158ca5ac4885905231900d435e273be059ec6432477da5086916a2108
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/internal-objects: '["logicalvolumes.topolvm.io",
            "lvmvolumegroups.lvm.topolvm.io", "lvmvolumegroupnodestatuses.lvm.topolvm.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lvm-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: LogicalVolume
            name: logicalvolumes.topolvm.io
            version: v1
          - description: LVMCluster is the Schema for the lvmclusters API
            displayName: LVMCluster
            kind: LVMCluster
            name: lvmclusters.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroupNodeStatus
            name: lvmvolumegroupnodestatuses.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroup
            name: lvmvolumegroups.lvm.topolvm.io
            version: v1alpha1
        description: Logical volume manager storage provides dynamically provisioned
          local storage.
        displayName: LVM Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - local storage
        - operator
        - LVM
        links:
        - name: Source Repository
          url: https://github.com/openshift/lvm-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:d264281158ca5ac4885905231900d435e273be059ec6432477da5086916a2108
        - registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:ffd7f0e091cbc9a788a0c857187a3a558f123b4373f33e556486a2fdf8f57d27
        - registry.redhat.io/lvms4/lvms-operator-bundle@sha256:f2270236ca0f96bac3d2f616b349b3b5d44ffa3889fa91838508be3d9b58fe3b
        version: 4.20.0
      entries:
      - name: lvms-operator.v4.20.0
        version: 4.20.0
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: lvms-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: samsung
      provider-url: ""
    name: socmmd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: socmmd.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cmmd.samsung.com/v1",
                "kind": "CMMD",
                "metadata": {
                  "name": "my-app",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "allocateMode": "auto",
                  "enable": true,
                  "payload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "metadata": {
                      "name": "my-app"
                    },
                    "spec": {
                      "replicas": 1,
                      "selector": {
                        "matchLabels": {
                          "name": "my-app"
                        }
                      },
                      "template": {
                        "metadata": {
                          "labels": {
                            "name": "my-app"
                          }
                        },
                        "spec": {
                          "containers": [
                            {
                              "image": "quay.io/my-account/my-app:latest",
                              "name": "my-app-01"
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "cmmd.samsung.com/v1",
                "kind": "Label",
                "metadata": {
                  "labels": {
                    "machineconfiguration.openshift.io/role": "cmmd"
                  },
                  "name": "cmmd-node-label",
                  "namespace": "socmmd"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          console.openshift.io/plugins: '["socmmd-console-plugin"]'
          containerImage: quay.io/samsung_sag/socmmd@sha256:2ef361fb15f0fec99e0a8f1ef83ad4dd14f701d579c900cce084c4a62cf805f8
          createdAt: "2024-08-01T05:45:38Z"
          description: Samsung Operator For CMM-D
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "cmmd.samsung.com/v1",
              "kind": "Label",
              "metadata": {
                "name": "cmmd-node-label",
                "namespace": "socmmd",
                "labels": {}
              },
              "spec": {}
            }
          operatorframework.io/suggested-namespace: socmmd-system
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/OpenMPDK/SMDK/tree/main/lib/redhat/socmmd
          support: samsung
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CMMD is the Schema for the cmmds API.
            displayName: CMMD
            kind: CMMD
            name: cmmds.cmmd.samsung.com
            version: v1
          - description: Label is the Schema for the labels API.
            displayName: Node Label
            kind: Label
            name: labels.cmmd.samsung.com
            version: v1
        description: Samsung Operator For CMM-D
        displayName: socmmd
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - samsung
        - memory
        - extend
        - cmm-d
        links:
        - name: Samsung Operator For CMM-D
          url: https://github.com/OpenMPDK/SMDK/tree/main/lib/redhat/socmmd
        maintainers:
        - email: junhyeok.im@samsung.com
          name: junhyeok-im
        maturity: stable
        provider:
          name: samsung
        relatedImages:
        - quay.io/community-operator-pipeline-prod/socmmd@sha256:5adf9706daf49b35cfcf74b6fb07b056f87714b87047803b797a56f138c77486
        - quay.io/samsung_sag/socmmd@sha256:2ef361fb15f0fec99e0a8f1ef83ad4dd14f701d579c900cce084c4a62cf805f8
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        version: 0.0.2
      entries:
      - name: socmmd.v0.0.2
        version: 0.0.2
      - name: socmmd.v0.0.1
        version: 0.0.1
      name: stable
    defaultChannel: stable
    packageName: socmmd
    provider:
      name: samsung
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: volsync-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: volsync-product.v0.14.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationDestination",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationdestination-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationdestination",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationdestination-sample"
                },
                "spec": {
                  "rsync": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "capacity": "10Gi",
                    "copyMethod": "Snapshot",
                    "serviceType": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationsource",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationsource-sample"
                },
                "spec": {
                  "rsync": {
                    "address": "my.host.com",
                    "copyMethod": "Clone",
                    "sshKeys": "secretRef"
                  },
                  "sourcePVC": "pvcname",
                  "trigger": {
                    "schedule": "0 * * * *"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
          createdAt: "2025-10-20T14:45:52Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.4.0 <0.14.0'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/volsync
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A ReplicationDestination is a VolSync resource that you can
              use to define the destination of a VolSync replication or synchronization.
            displayName: Replication Destination
            kind: ReplicationDestination
            name: replicationdestinations.volsync.backube
            version: v1alpha1
          - description: A ReplicationSource is a VolSync resource that you can use
              to define the source PVC and replication mover type, enabling you to
              replicate or synchronize PVC data to a remote location.
            displayName: Replication Source
            kind: ReplicationSource
            name: replicationsources.volsync.backube
            version: v1alpha1
        description: |-
          Asynchronous volume replication for Kubernetes CSI storage

          VolSync is a Kubernetes operator that performs asynchronous replication of
          persistent volumes within, or across, clusters. VolSync supports replication
          independent of the storage system. This means that replication can be used
          with storage systems that do not natively support replication. Data can also be
          replicated across different types (and vendors) of storage.

          VolSync supports both 1:1 replication relationships as well as 1:many
          relationships. This provides the flexibility to support use cases such as:

          - Disaster recovery
          - Mirroring data to a test environment
          - Data distribution to a set of remote clusters from a central site
          - Migrating between storage vendors (changing the StorageClass of a
            persistent volume claim).
          - Creating periodic data backups

          ### How it works

          You specify the details of how, when, and where to replicate the data
          in a ReplicationSource object in the same namespace as the persistent
          volume claim (PVC).

          You create a ReplicationDestination object at the destination, which
          specifies the target for the replicated data.

          VolSync uses multiple replication methods to replicate data:

          - Rclone-based replication for 1:many data distribution:

            Data is replicated from the source to an intermediate cloud storage
            service, which is [supported by Rclone](https://rclone.org/#providers).
            The destinations retrieve the data from the intermediate location.

          - Restic-based backup of PVC contents:

            Data in a PVC is backed up by using the [restic](https://restic.net/)
            program. This method works well when the deployment configuration of
            the application is already source-controlled, and only the
            preservation of its persistent state is needed.

          - Rsync-based replication for one-to-one data replication:

            Data is replicated directly to a remote location. The replication uses
            the [Rsync](https://rsync.samba.org/) utility over an ssh connection
            to securely and efficiently transfer data.

          ### Documentation

          For documentation about installing and using the VolSync Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [VolSync persistent volume replication service](https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync) in the Red Hat Advanced Cluster Management
          documentation.

          For additional information about the VolSync project, including features that might not be supported by Red Hat, see
          the [VolSync community](https://volsync.readthedocs.ioe/) documentation.

          ### Support & Troubleshooting

          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: VolSync
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - csi
        - data
        - disaster recovery
        - replication
        - storage
        links:
        - name: Documentation
          url: https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync
        - name: Source
          url: https://github.com/backube/volsync
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:57cb4ed66c27720b2526ce4ebeda21086a9088305393af9607fb766447df39bd
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        version: 0.14.0
      entries:
      - name: volsync-product.v0.14.0
        version: 0.14.0
      - name: volsync-product.v0.13.1
        version: 0.13.1
      - name: volsync-product.v0.13.0
        version: 0.13.0
      name: stable
    - currentCSV: volsync-product.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationDestination",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationdestination-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationdestination",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationdestination-sample"
                },
                "spec": {
                  "rsync": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "capacity": "10Gi",
                    "copyMethod": "Snapshot",
                    "serviceType": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationsource",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationsource-sample"
                },
                "spec": {
                  "rsync": {
                    "address": "my.host.com",
                    "copyMethod": "Clone",
                    "sshKeys": "secretRef"
                  },
                  "sourcePVC": "pvcname",
                  "trigger": {
                    "schedule": "0 * * * *"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
          createdAt: "2025-08-27T13:12:05Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.4.0 <0.13.1'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/volsync
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A ReplicationDestination is a VolSync resource that you can
              use to define the destination of a VolSync replication or synchronization.
            displayName: Replication Destination
            kind: ReplicationDestination
            name: replicationdestinations.volsync.backube
            version: v1alpha1
          - description: A ReplicationSource is a VolSync resource that you can use
              to define the source PVC and replication mover type, enabling you to
              replicate or synchronize PVC data to a remote location.
            displayName: Replication Source
            kind: ReplicationSource
            name: replicationsources.volsync.backube
            version: v1alpha1
        description: |-
          Asynchronous volume replication for Kubernetes CSI storage

          VolSync is a Kubernetes operator that performs asynchronous replication of
          persistent volumes within, or across, clusters. VolSync supports replication
          independent of the storage system. This means that replication can be used
          with storage systems that do not natively support replication. Data can also be
          replicated across different types (and vendors) of storage.

          VolSync supports both 1:1 replication relationships as well as 1:many
          relationships. This provides the flexibility to support use cases such as:

          - Disaster recovery
          - Mirroring data to a test environment
          - Data distribution to a set of remote clusters from a central site
          - Migrating between storage vendors (changing the StorageClass of a
            persistent volume claim).
          - Creating periodic data backups

          ### How it works

          You specify the details of how, when, and where to replicate the data
          in a ReplicationSource object in the same namespace as the persistent
          volume claim (PVC).

          You create a ReplicationDestination object at the destination, which
          specifies the target for the replicated data.

          VolSync uses multiple replication methods to replicate data:

          - Rclone-based replication for 1:many data distribution:

            Data is replicated from the source to an intermediate cloud storage
            service, which is [supported by Rclone](https://rclone.org/#providers).
            The destinations retrieve the data from the intermediate location.

          - Restic-based backup of PVC contents:

            Data in a PVC is backed up by using the [restic](https://restic.net/)
            program. This method works well when the deployment configuration of
            the application is already source-controlled, and only the
            preservation of its persistent state is needed.

          - Rsync-based replication for one-to-one data replication:

            Data is replicated directly to a remote location. The replication uses
            the [Rsync](https://rsync.samba.org/) utility over an ssh connection
            to securely and efficiently transfer data.

          ### Documentation

          For documentation about installing and using the VolSync Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [VolSync persistent volume replication service](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/business_continuity/business-cont-overview#volsync) in the Red Hat Advanced Cluster Management
          documentation.

          For additional information about the VolSync project, including features that might not be supported by Red Hat, see
          the [VolSync community](https://volsync.readthedocs.ioe/) documentation.

          ### Support & Troubleshooting

          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: VolSync
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - csi
        - data
        - disaster recovery
        - replication
        - storage
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/business_continuity/business-cont-overview#volsync
        - name: Source
          url: https://github.com/backube/volsync
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:32cd9b5812506656ff9ff1c2c9fdacde44f179313ea2bfbbc18564fee635ca67
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:d37a6d10b0fa07370066a31fdaffe2ea553faf4e4e98be7fcef5ec40d62ffe29
        version: 0.13.1
      entries:
      - name: volsync-product.v0.13.1
        version: 0.13.1
      - name: volsync-product.v0.13.0
        version: 0.13.0
      name: stable-0.13
    - currentCSV: volsync-product.v0.14.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationDestination",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationdestination-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationdestination",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationdestination-sample"
                },
                "spec": {
                  "rsync": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "capacity": "10Gi",
                    "copyMethod": "Snapshot",
                    "serviceType": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationsource",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationsource-sample"
                },
                "spec": {
                  "rsync": {
                    "address": "my.host.com",
                    "copyMethod": "Clone",
                    "sshKeys": "secretRef"
                  },
                  "sourcePVC": "pvcname",
                  "trigger": {
                    "schedule": "0 * * * *"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
          createdAt: "2025-10-20T14:45:52Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.4.0 <0.14.0'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/volsync
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A ReplicationDestination is a VolSync resource that you can
              use to define the destination of a VolSync replication or synchronization.
            displayName: Replication Destination
            kind: ReplicationDestination
            name: replicationdestinations.volsync.backube
            version: v1alpha1
          - description: A ReplicationSource is a VolSync resource that you can use
              to define the source PVC and replication mover type, enabling you to
              replicate or synchronize PVC data to a remote location.
            displayName: Replication Source
            kind: ReplicationSource
            name: replicationsources.volsync.backube
            version: v1alpha1
        description: |-
          Asynchronous volume replication for Kubernetes CSI storage

          VolSync is a Kubernetes operator that performs asynchronous replication of
          persistent volumes within, or across, clusters. VolSync supports replication
          independent of the storage system. This means that replication can be used
          with storage systems that do not natively support replication. Data can also be
          replicated across different types (and vendors) of storage.

          VolSync supports both 1:1 replication relationships as well as 1:many
          relationships. This provides the flexibility to support use cases such as:

          - Disaster recovery
          - Mirroring data to a test environment
          - Data distribution to a set of remote clusters from a central site
          - Migrating between storage vendors (changing the StorageClass of a
            persistent volume claim).
          - Creating periodic data backups

          ### How it works

          You specify the details of how, when, and where to replicate the data
          in a ReplicationSource object in the same namespace as the persistent
          volume claim (PVC).

          You create a ReplicationDestination object at the destination, which
          specifies the target for the replicated data.

          VolSync uses multiple replication methods to replicate data:

          - Rclone-based replication for 1:many data distribution:

            Data is replicated from the source to an intermediate cloud storage
            service, which is [supported by Rclone](https://rclone.org/#providers).
            The destinations retrieve the data from the intermediate location.

          - Restic-based backup of PVC contents:

            Data in a PVC is backed up by using the [restic](https://restic.net/)
            program. This method works well when the deployment configuration of
            the application is already source-controlled, and only the
            preservation of its persistent state is needed.

          - Rsync-based replication for one-to-one data replication:

            Data is replicated directly to a remote location. The replication uses
            the [Rsync](https://rsync.samba.org/) utility over an ssh connection
            to securely and efficiently transfer data.

          ### Documentation

          For documentation about installing and using the VolSync Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [VolSync persistent volume replication service](https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync) in the Red Hat Advanced Cluster Management
          documentation.

          For additional information about the VolSync project, including features that might not be supported by Red Hat, see
          the [VolSync community](https://volsync.readthedocs.ioe/) documentation.

          ### Support & Troubleshooting

          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: VolSync
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - csi
        - data
        - disaster recovery
        - replication
        - storage
        links:
        - name: Documentation
          url: https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync
        - name: Source
          url: https://github.com/backube/volsync
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:57cb4ed66c27720b2526ce4ebeda21086a9088305393af9607fb766447df39bd
        version: 0.14.0
      entries:
      - name: volsync-product.v0.14.0
        version: 0.14.0
      name: stable-0.14
    defaultChannel: stable
    packageName: volsync-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com
    name: ibm-application-gateway-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-application-gateway-operator.v25.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ibm.com/v1",
                "kind": "IBMApplicationGateway",
                "metadata": {
                  "name": "iag-instance"
                },
                "spec": {
                  "configuration": [
                    {
                      "dataKey": "config",
                      "name": "test-config",
                      "type": "configmap"
                    },
                    {
                      "discoveryEndpoint": "https://isam.mmfa.ibm.com/mga/sps/oauth/oauth20/metadata/test",
                      "postData": [
                        {
                          "name": "redirect_uris",
                          "values": [
                            "https://isam.mmfa.ibm.com/pkmsoidc"
                          ]
                        },
                        {
                          "name": "client_name",
                          "value": "OperatorTest"
                        },
                        {
                          "name": "enforce_pkce",
                          "value": "false"
                        },
                        {
                          "name": "all_users_entitled",
                          "value": "true"
                        },
                        {
                          "name": "consent_action",
                          "value": "never_prompt"
                        }
                      ],
                      "secret": "oidc-client",
                      "type": "oidc_registration"
                    },
                    {
                      "headers": [
                        {
                          "name": "Authorization",
                          "secretKey": "value",
                          "type": "secret",
                          "value": "githubsecret"
                        }
                      ],
                      "type": "web",
                      "url": "https://raw.github.com/ibm-security/iag-config/master/test/sample1.yaml"
                    },
                    {
                      "type": "literal",
                      "value": "version: \"22.07\"\n\nserver:\n  local_applications:\n    cred_viewer:\n      path_segment: creds\n      enable_html: true\n\nidentity:\n  oidc:\n    discovery_endpoint: \"https://iag-dev.ibmcloudsecurity.com/oidc/endpoint/default/.well-known/openid-configuration\"\n    client_id: 1cbfe647-9e5f-4d99-8e05-8ed1c862eb47\n    client_secret: uPP8rM7N0e\n"
                    }
                  ],
                  "deployment": {
                    "image": "icr.io/ibmappgateway/ibm-application-gateway@sha256:1144b79a2930fe942ce627b0abcc3bed2f0b0770ae8313cb77ffe6772511c1f9",
                    "imagePullPolicy": "Always",
                    "imagePullSecrets": [
                      {
                        "name": "regcred"
                      }
                    ],
                    "lang": "C",
                    "livenessProbe": {
                      "failureThreshold": 6,
                      "initialDelaySeconds": 8,
                      "periodSeconds": 9,
                      "successThreshold": 7,
                      "timeoutSeconds": 1
                    },
                    "readinessProbe": {
                      "failureThreshold": 2,
                      "initialDelaySeconds": 7,
                      "periodSeconds": 8,
                      "successThreshold": 4,
                      "timeoutSeconds": 5
                    },
                    "serviceAccountName": "iag"
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: icr.io/ibmappgateway/ibm-application-gateway-operator@sha256:6a16d4ef802a866942f504b11a948565245d303f322944200c1a1269fe7c371c
          createdAt: "2025-02-05T21:15:37Z"
          description: The IBM Application Gateway operator manages the lifecycle
            of IBM Application Gateway containers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM-Security/ibm-application-gateway-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBMApplicationGateway is the Schema for the ibmapplicationgateways
              API
            displayName: IBMApplication Gateway
            kind: IBMApplicationGateway
            name: ibmapplicationgateways.ibm.com
            version: v1
        description: "The [IBM Application Gateway (IAG)](https://ibm.biz/ibm-app-gateway)
          image provides a containerized secure Web Reverse proxy which is designed
          to sit in front of your application, seamlessly adding authentication and
          authorization protection to your application.\n\nAn IAG instance deployed
          on Kubernetes can be a complex deployment.  In particular the configuration
          can be defined externally in one or more locations, and changes to this
          configuration may require all instances to be reloaded for the changes to
          take effect. \n\nThe internal Kubernetes deployment controller does not
          have any knowledge of how an IBM Application Gateway instance should behave
          when the configuration changes. As such this IBM Application Gateway specific
          Kubernetes operator is available to be deployed. Once deployed the operator
          can manage the lifecycle of the IBM Application Gateway instances.\n\nSee
          the project [Readme](https://github.com/IBM-Security/ibm-application-gateway-operator/blob/master/README.md)
          for further information and details.\n\n"
        displayName: IBM Application Gateway Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - IBM
        - Security
        - Identity and Access
        links:
        - name: IBM Application Gateway product documentation
          url: https://ibm.biz/ibm-app-gateway
        maintainers:
        - email: isamdev@au1.ibm.com
          name: IBM Application Gateway Development Team
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: IBM
          url: https://www.ibm.com
        relatedImages:
        - icr.io/ibmappgateway/ibm-application-gateway-operator@sha256:6a16d4ef802a866942f504b11a948565245d303f322944200c1a1269fe7c371c
        - icr.io/ibmappgateway/ibm-application-gateway@sha256:1144b79a2930fe942ce627b0abcc3bed2f0b0770ae8313cb77ffe6772511c1f9
        - registry.connect.redhat.com/ibm/ibm-application-gateway-operator-bundle@sha256:e4ece7113fa7056980507408ac29d60676cf51c20d71a058a1accf765a6ea7e3
        version: 25.2.0
      entries:
      - name: ibm-application-gateway-operator.v25.2.0
        version: 25.2.0
      - name: ibm-application-gateway-operator.v24.4.0
        version: 24.4.0
      name: stable
    defaultChannel: stable
    packageName: ibm-application-gateway-operator
    provider:
      name: IBM
      url: https://www.ibm.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: multicluster-operators-subscription
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-operators-subscription.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/multicluster-operators-subscription:2.3.0
          createdAt: "2021-07-19T18:00:00Z"
          description: An operator to subscribe resources from object Bucket, helm
            and github types of channels
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:3bc76999ece42fcb3acd913b32be3fa0e0da056832922819b81119dcfb5f1582
        - quay.io/open-cluster-management/multicluster-operators-application:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-channel:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-deployable:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-placementrule:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-subscription:2.3.0
        version: 0.3.0
      entries:
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.3
    - currentCSV: multicluster-operators-subscription.v0.3.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/multicluster-operators-subscription:2.4.0
          createdAt: "2021-09-29T10:23:00Z"
          description: An operator to subscribe resources from object Bucket, helm
            and github types of channels
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1beta1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/open-cluster-management/multicluster-operators-placementrule:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-subscription:2.4.0
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:2aeba259864bbddaa8cdd46ab6d8c3495450a0081469a27b9acde53008d91bed
        - quay.io/open-cluster-management/multicloud-integrations:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-application:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-channel:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-deployable:2.4.0
        version: 0.3.6
      entries:
      - name: multicluster-operators-subscription.v0.3.6
        version: 0.3.6
      - name: multicluster-operators-subscription.v0.3.5
        version: 0.3.5
      - name: multicluster-operators-subscription.v0.3.4
        version: 0.3.4
      - name: multicluster-operators-subscription.v0.3.3
        version: 0.3.3
      - name: multicluster-operators-subscription.v0.3.2
        version: 0.3.2
      - name: multicluster-operators-subscription.v0.3.1
        version: 0.3.1
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.4
    - currentCSV: multicluster-operators-subscription.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/multicluster-operators-subscription:2.5.0
          createdAt: "2022-03-23T18:00:00Z"
          description: An operator for deploying resources from object Bucket, helm
            repo or github repo to multiple managed clusters
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management-io/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: subscription status per cluster per app
            displayName: App Subscription Report
            kind: SubscriptionReport
            name: subscriptionreports.apps.open-cluster-management.io
            version: v1alpha1
          - description: subscription status per package
            displayName: App Subscription Status
            kind: SubscriptionStatus
            name: subscriptionstatuses.apps.open-cluster-management.io
            version: v1alpha1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1beta1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/open-cluster-management/multicluster-operators-subscription:2.5.0
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:f58f60283f6cf9ea745f4a25378ef6690d98af8fda0eb63f663066631e71450b
        - quay.io/open-cluster-management/multicloud-integrations:2.5.0
        - quay.io/open-cluster-management/multicluster-operators-application:2.5.0
        - quay.io/open-cluster-management/multicluster-operators-channel:2.5.0
        version: 0.4.0
      entries:
      - name: multicluster-operators-subscription.v0.4.0
        version: 0.4.0
      - name: multicluster-operators-subscription.v0.3.9
        version: 0.3.9
      - name: multicluster-operators-subscription.v0.3.8
        version: 0.3.8
      - name: multicluster-operators-subscription.v0.3.7
        version: 0.3.7
      - name: multicluster-operators-subscription.v0.3.6
        version: 0.3.6
      - name: multicluster-operators-subscription.v0.3.5
        version: 0.3.5
      - name: multicluster-operators-subscription.v0.3.4
        version: 0.3.4
      - name: multicluster-operators-subscription.v0.3.3
        version: 0.3.3
      - name: multicluster-operators-subscription.v0.3.2
        version: 0.3.2
      - name: multicluster-operators-subscription.v0.3.1
        version: 0.3.1
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.5
    - currentCSV: multicluster-operators-subscription.v0.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/stolostron/multicluster-operators-subscription:2.6.0
          createdAt: "2022-06-06T18:00:00Z"
          description: An operator for deploying resources from object Bucket, helm
            repo or github repo to multiple managed clusters
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management-io/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: subscription status per cluster per app
            displayName: App Subscription Report
            kind: SubscriptionReport
            name: subscriptionreports.apps.open-cluster-management.io
            version: v1alpha1
          - description: subscription status per package
            displayName: App Subscription Status
            kind: SubscriptionStatus
            name: subscriptionstatuses.apps.open-cluster-management.io
            version: v1alpha1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1beta1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/stolostron/multicloud-integrations:2.6.0
        - quay.io/stolostron/multicluster-operators-application:2.6.0
        - quay.io/stolostron/multicluster-operators-channel:2.6.0
        - quay.io/stolostron/multicluster-operators-subscription:2.6.0
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:48b37c9f9417ef442d896e79851b176505045b487bddf77bb4e6d91fd5ad3dd1
        version: 0.4.1
      entries:
      - name: multicluster-operators-subscription.v0.4.1
        version: 0.4.1
      - name: multicluster-operators-subscription.v0.4.0
        version: 0.4.0
      - name: multicluster-operators-subscription.v0.3.9
        version: 0.3.9
      - name: multicluster-operators-subscription.v0.3.8
        version: 0.3.8
      - name: multicluster-operators-subscription.v0.3.7
        version: 0.3.7
      - name: multicluster-operators-subscription.v0.3.6
        version: 0.3.6
      - name: multicluster-operators-subscription.v0.3.5
        version: 0.3.5
      - name: multicluster-operators-subscription.v0.3.4
        version: 0.3.4
      - name: multicluster-operators-subscription.v0.3.3
        version: 0.3.3
      - name: multicluster-operators-subscription.v0.3.2
        version: 0.3.2
      - name: multicluster-operators-subscription.v0.3.1
        version: 0.3.1
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.6
    defaultChannel: release-2.5
    packageName: multicluster-operators-subscription
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apache KIE
      provider-url: ""
    name: sonataflow-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sonataflow-operator.v10.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "docker.io/apache",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: docker.io/apache/incubator-kie-sonataflow-operator:10.0.0
          description: SonataFlow Kubernetes Operator for deploying workflow applications
            based on the CNCF Serverless Workflow specification
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/apache/incubator-kie-tools/packages/sonataflow-operator
          support: Apache Software Foundation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: Sonata Flow Build
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: Sonata Flow Cluster Platform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: Sonata Flow Platform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: Sonata Flow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          SonataFlow Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification](https://serverlessworkflow.io/):

          * Deploy workflow applications using the [dev profile](https://sonataflow.org/serverlessworkflow/latest/cloud/operator/developing-workflows.html), suited for the your development cycle
          * Build workflow applications based on the platform you're currently working on.
        displayName: SonataFlow Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        links:
        - name: Product Page
          url: https://github.com/apache/incubator-kie-tools
        maintainers:
        - email: dev@kie.apache.org
          name: Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Apache Software Foundation
        relatedImages:
        - docker.io/apache/incubator-kie-sonataflow-operator:10.0.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/community-operator-pipeline-prod/sonataflow-operator@sha256:8ad2282afef801c794e316c93a12834d688cfa44766132231f93013c3124944f
        version: 10.0.0
      entries:
      - name: sonataflow-operator.v10.0.0
        version: 10.0.0
      - name: sonataflow-operator.v1.40.1
        version: 1.40.1
      - name: sonataflow-operator.v1.40.0
        version: 1.40.0
      name: alpha
    - currentCSV: sonataflow-operator.v10.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "host/namespace",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: docker.io/apache/incubator-kie-sonataflow-operator:10.1.0
          createdAt: "2025-09-11T14:44:56Z"
          description: SonataFlow Kubernetes Operator for deploying workflow applications
            based on the CNCF Serverless Workflow specification
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/apache/incubator-kie-tools/packages/sonataflow-operator
          support: Apache KIE
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: SonataFlowBuild
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: SonataFlowClusterPlatform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: SonataFlowPlatform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: SonataFlow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          SonataFlow Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification](https://serverlessworkflow.io/):

          * Deploy workflow applications using the [dev profile](https://sonataflow.org/serverlessworkflow/latest/cloud/operator/developing-workflows.html), suited for the your development cycle
          * Build workflow applications based on the platform you're currently working on.
        displayName: SonataFlow Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        links:
        - name: Product Page
          url: https://sonataflow.org/serverlessworkflow/latest/index.html
        maintainers:
        - email: dev@kie.apache.org
          name: Apache KIE
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Apache KIE
        relatedImages:
        - docker.io/apache/incubator-kie-sonataflow-operator:10.1.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/sonataflow-operator@sha256:d4ec9966370c3e770209042e437c53b0780401150f5385069b8476e26c343919
        version: 10.1.0
      entries:
      - name: sonataflow-operator.v10.1.0
        version: 10.1.0
      - name: sonataflow-operator.v10.0.0
        version: 10.0.0
      - name: sonataflow-operator.v1.40.1
        version: 1.40.1
      - name: sonataflow-operator.v1.40.0
        version: 1.40.0
      name: stable
    defaultChannel: stable
    packageName: sonataflow-operator
    provider:
      name: Apache KIE
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: opentelemetry-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opentelemetry-operator.v0.140.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "Instrumentation",
                "metadata": {
                  "name": "instrumentation"
                },
                "spec": {
                  "exporter": {
                    "endpoint": "http://otel-collector-headless:4317"
                  }
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpAMPBridge",
                "metadata": {
                  "name": "opampbridge-sample"
                },
                "spec": {
                  "capabilities": {
                    "AcceptsOpAMPConnectionSettings": true,
                    "AcceptsOtherConnectionSettings": true,
                    "AcceptsRemoteConfig": true,
                    "AcceptsRestartCommand": true,
                    "ReportsEffectiveConfig": true,
                    "ReportsHealth": true,
                    "ReportsOwnLogs": true,
                    "ReportsOwnMetrics": true,
                    "ReportsOwnTraces": true,
                    "ReportsRemoteConfig": true,
                    "ReportsStatus": true
                  },
                  "componentsAllowed": {
                    "exporters": [
                      "debug"
                    ],
                    "processors": [
                      "memory_limiter"
                    ],
                    "receivers": [
                      "otlp"
                    ]
                  },
                  "endpoint": "ws://opamp-server:4320/v1/opamp"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": "receivers:\n  otlp:\n    protocols: \n      grpc: {}\n      http: {}\n\nexporters:\n  debug: {}\n\nservice:\n  pipelines:\n    traces:\n      receivers: [otlp]\n      exporters: [debug]\n"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1beta1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": {
                    "exporters": {
                      "debug": {}
                    },
                    "receivers": {
                      "otlp": {
                        "protocols": {
                          "grpc": {},
                          "http": {}
                        }
                      }
                    },
                    "service": {
                      "pipelines": {
                        "traces": {
                          "exporters": [
                            "debug"
                          ],
                          "receivers": [
                            "otlp"
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/rhosdt/opentelemetry-rhel8-operator@sha256:899d19bc4e6fbde8e8e8ee5bc3ef6e4151bd18ed8d8e6f2cc8280e4a18fd3dfc
          createdAt: 27 Nov 2025, 12:24
          description: Provides the OpenTelemetry components, including the Collector
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.33.0 <0.140.0-1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-opentelemetry-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-telemetry/opentelemetry-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instrumentation is the spec for OpenTelemetry instrumentation.
            displayName: OpenTelemetry Instrumentation
            kind: Instrumentation
            name: instrumentations.opentelemetry.io
            version: v1alpha1
          - description: OpAMPBridge is the Schema for the opampbridges API.
            displayName: OpAMP Bridge
            kind: OpAMPBridge
            name: opampbridges.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1beta1
          - description: TargetAllocator is the Schema for the targetallocators API.
            displayName: Target Allocator
            kind: TargetAllocator
            name: targetallocators.opentelemetry.io
            version: v1alpha1
        description: |-
          Red Hat build of OpenTelemetry is a collection of tools, APIs, and SDKs. You use it to instrument, generate, collect, and export telemetry data (metrics, logs, and traces) for analysis in order to understand your software's performance and behavior.
          This operator was previously called Red Hat OpenShift distributed tracing data collection.

          ### Operator features

          * **Sidecar injection** - annotate your pods and let the operator inject a sidecar.
          * **Managed upgrades** - updating the operator will automatically update your OpenTelemetry collectors.
          * **Deployment modes** - your collector can be deployed as sidecar, daemon set, or regular deployment.
          * **Service port management** - the operator detects which ports need to be exposed based on the provided configuration.

          ## Examples

          There is a list of examples to help you deploy different configurations in [this GitHub repository](https://github.com/os-observability/redhat-rhosdt-samples)

          ### Support & Troubleshooting

          Red Hat build of OpenTelemetry is available as part of a Red Hat OpenShift subscription.
          Checking the [Red Hat Documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/4.17/html/red_hat_build_of_opentelemetry/index) is recommended when installing, configuring, and managing the Operator and instances.
        displayName: Red Hat build of OpenTelemetry
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opentelemetry
        - tracing
        - logging
        - metrics
        - monitoring
        - troubleshooting
        links:
        - name: OpenTelemetry Operator
          url: https://github.com/open-telemetry/opentelemetry-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat support
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhosdt/opentelemetry-target-allocator-rhel8@sha256:fd3fde1995d4271f5e4c36093839c369f403211b3fe9d3a4e09906efe8d000d7
        - registry.redhat.io/rhosdt/opentelemetry-operator-bundle@sha256:6ac3bc6ae3aa20a23b4144b01b1aa5ae50f2194e4951446f02a8d60a397aef68
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:6b6c25b6849139cfe88b02df1a095fa0abbbaec9a987d20f75ca007c3cf4e2b7
        - registry.redhat.io/rhosdt/opentelemetry-collector-rhel8@sha256:adf3760df254b939a476428449b792037f197e64bbea44d39ac7c60661818855
        - registry.redhat.io/rhosdt/opentelemetry-rhel8-operator@sha256:899d19bc4e6fbde8e8e8ee5bc3ef6e4151bd18ed8d8e6f2cc8280e4a18fd3dfc
        version: 0.140.0-1
      entries:
      - name: opentelemetry-operator.v0.140.0-1
        version: 0.140.0-1
      - name: opentelemetry-operator.v0.135.0-1
        version: 0.135.0-1
      - name: opentelemetry-operator.v0.127.0-2
        version: 0.127.0-2
      - name: opentelemetry-operator.v0.127.0-1
        version: 0.127.0-1
      - name: opentelemetry-operator.v0.119.0-2
        version: 0.119.0-2
      - name: opentelemetry-operator.v0.119.0-1
        version: 0.119.0-1
      - name: opentelemetry-operator.v0.113.0-2
        version: 0.113.0-2
      - name: opentelemetry-operator.v0.113.0-1
        version: 0.113.0-1
      - name: opentelemetry-operator.v0.107.0-5
        version: 0.107.0-5
      - name: opentelemetry-operator.v0.107.0-4-0.1727168137.p
        version: 0.107.0-4+0.1727168137.p
      - name: opentelemetry-operator.v0.107.0-4
        version: 0.107.0-4
      - name: opentelemetry-operator.v0.102.0-3
        version: 0.102.0-3
      - name: opentelemetry-operator.v0.102.0-2
        version: 0.102.0-2
      - name: opentelemetry-operator.v0.100.1-3
        version: 0.100.1-3
      - name: opentelemetry-operator.v0.93.0-3
        version: 0.93.0-3
      - name: opentelemetry-operator.v0.93.0-2
        version: 0.93.0-2
      - name: opentelemetry-operator.v0.89.0-3
        version: 0.89.0-3
      - name: opentelemetry-operator.v0.81.1-5
        version: 0.81.1-5
      - name: opentelemetry-operator.v0.74.0-5-0.1687199949.p
        version: 0.74.0-5+0.1687199949.p
      - name: opentelemetry-operator.v0.74.0-5
        version: 0.74.0-5
      - name: opentelemetry-operator.v0.60.0-2
        version: 0.60.0-2
      - name: opentelemetry-operator.v0.56.0-1
        version: 0.56.0-1
      name: stable
    defaultChannel: stable
    packageName: opentelemetry-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: external-dns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: external-dns-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure-private"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/privateDnsZones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
          createdAt: 2025-12-10T16:08:35
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.3.3
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        - registry.redhat.io/edo/external-dns-rhel9@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        version: 1.3.3
      entries:
      - name: external-dns-operator.v1.3.3
        version: 1.3.3
      - name: external-dns-operator.v1.3.2
        version: 1.3.2
      - name: external-dns-operator.v1.3.1
        version: 1.3.1
      - name: external-dns-operator.v1.3.0
        version: 1.3.0
      - name: external-dns-operator.v1.2.0
        version: 1.2.0
      - name: external-dns-operator.v1.1.1
        version: 1.1.1
      - name: external-dns-operator.v1.1.0
        version: 1.1.0
      - deprecation:
          message: |
            external-dns-operator.v1.0.1 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.1
        version: 1.0.1
      - deprecation:
          message: |
            external-dns-operator.v1.0.0 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.0
        version: 1.0.0
      name: stable-v1
    - currentCSV: external-dns-operator.v1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel8-operator@sha256:0877eb0a111efe0bff63173a2dfeb7a06a61afd0efbcdba053322a539e0dc667
          createdAt: 2024-01-22T09:26:37
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.1
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:0a86a1808d9906eb57886d3d3cd5c04cf9578a80860342132d36ecfc411bf807
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:0877eb0a111efe0bff63173a2dfeb7a06a61afd0efbcdba053322a539e0dc667
        - registry.redhat.io/edo/external-dns-rhel8@sha256:17f4127cbb9a9304769e9655c19cbea2260107c7e9371a99a9aa3e85d759c00b
        version: 1.0.1
      deprecation:
        message: |
          The stable-v1.0 channel is no longer supported. Please switch to a supported stable channel to receive the latest updates and support.
      entries:
      - deprecation:
          message: |
            external-dns-operator.v1.0.1 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.1
        version: 1.0.1
      - deprecation:
          message: |
            external-dns-operator.v1.0.0 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    - currentCSV: external-dns-operator.v1.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel8-operator@sha256:9ca751e84b8843cc62dc60550e5c4af741bf09a381ef62220e7eb3760ffe8524
          createdAt: 2024-01-22T09:56:14
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.1.1
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:b02bab3af52a2469ced96618f1d122464568ba21ebc0a3a945b78ec4e6bdc80d
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:9ca751e84b8843cc62dc60550e5c4af741bf09a381ef62220e7eb3760ffe8524
        - registry.redhat.io/edo/external-dns-rhel8@sha256:ffcc3f2e9b9feb889e7882465f7f034aba6b9ee0699a1b6c24e83f501a63ecca
        version: 1.1.1
      entries:
      - name: external-dns-operator.v1.1.1
        version: 1.1.1
      - name: external-dns-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: external-dns-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel8-operator@sha256:15700d4acb4705ec900c03b77fa50eaa7db9e59f33bbc819e4fdfc0b9f362f82
          createdAt: 2023-11-15T09:24:04
          olm.skipRange: <1.2.0
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:15700d4acb4705ec900c03b77fa50eaa7db9e59f33bbc819e4fdfc0b9f362f82
        - registry.redhat.io/edo/external-dns-rhel8@sha256:6263a78b2a170e56dfca2173f14dbf14f0a5bddb6ea600bfdef248c7d5f20e4b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e33874a51971a90917cf437fc6cbeea1da569ba07217f66f1bba96d594f58aed
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:a614ec94c2468e34e129e9ecd4bc0d1895eb67b96e77eb5ad94cd8bd507860f5
        version: 1.2.0
      entries:
      - name: external-dns-operator.v1.2.0
        version: 1.2.0
      name: stable-v1.2
    - currentCSV: external-dns-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure-private"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/privateDnsZones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
          createdAt: 2025-12-10T16:08:35
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.3.3
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        - registry.redhat.io/edo/external-dns-rhel9@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        version: 1.3.3
      entries:
      - name: external-dns-operator.v1.3.3
        version: 1.3.3
      - name: external-dns-operator.v1.3.2
        version: 1.3.2
      - name: external-dns-operator.v1.3.1
        version: 1.3.1
      - name: external-dns-operator.v1.3.0
        version: 1.3.0
      name: stable-v1.3
    defaultChannel: stable-v1
    packageName: external-dns-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: redhat.com
    name: service-binding-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: service-binding-operator.v0.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "service.binding/v1alpha2",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: quay.io/redhat-developer/servicebinding-operator@sha256:b355d2370926063a3de8c7a09c0ca8c2348a8d158d6a7095d0e5e8381cc95be5
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.service.binding
            version: v1alpha2
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/openshift-community-operators/service-binding-operator@sha256:5a5e2f775760aa68c85d0f69b700d23ef2a6be7bb415bd96401d03eb6077f90c
        - quay.io/redhat-developer/servicebinding-operator@sha256:b355d2370926063a3de8c7a09c0ca8c2348a8d158d6a7095d0e5e8381cc95be5
        version: 0.10.0
      entries:
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: beta
    - currentCSV: service-binding-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindablekinds-sample"
                }
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: quay.io/redhat-developer/servicebinding-operator@sha256:c9c9e45321db2d4d3cdc2d364337af844f69c9893d0cc74d2fa56c846ffcf3da
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/openshift-community-operators/service-binding-operator@sha256:79a9191f0cd5d11af004ead87ba9eb5359c67fd658c346db4c3cea3b16b23987
        - quay.io/redhat-developer/servicebinding-operator@sha256:c9c9e45321db2d4d3cdc2d364337af844f69c9893d0cc74d2fa56c846ffcf3da
        version: 0.11.0
      entries:
      - name: service-binding-operator.v0.11.0
        version: 0.11.0
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: candidate
    - currentCSV: service-binding-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindable-kinds"
                },
                "spec": {}
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  },
                  "type": "postgres",
                  "workload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: quay.io/redhat-developer/servicebinding-operator@sha256:ac47f496fb7ecdcbc371f8c809fad2687ec0c35bbc8c522a7ab63b3e5ffd90ea
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'.
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1alpha3
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1beta1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
          - description: Service Binding implementing community specification (https://github.com/k8s-service-bindings/spec)
              describing the connection between a backing service and an application
              workload.
            displayName: Service Binding (Spec API)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1beta1
        description: |
          The Service Binding Operator manages the data plane for applications and backing services. It enables developers to connect their
          applications to backing services (REST API, databases, event buses and others) with a consistent and predictable
          experience. The operator reads data made available by the control plane of backing services and projects the bindings
          data to applications either as accessible files mounted into the application’s container or environment variables.

          In Kubernetes, each service suggests a different way to access their secrets and developers will consume them in their
          application in a custom way. While this provides a good deal of flexibility, it also creates discrepancies and
          complexity dealing with each specific services, which leads large development teams to lose overall velocity.

          Service Binding Operator removes the error-prone manual configuration of binding information, provides service operators
          a low-touch administrative experience to provision and manage access to services and enriches development lifecycle.

          For additional details refer to the project [documentation](https://redhat-developer.github.io/service-binding-operator).

          Get Started with Service Binding Operator
          * Find out about SBO’s [prerequisites](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/installing-service-binding.html).
          * Refer to the [Quick Start Guide](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/quick-start.html) to see SBO in action in a simple scenario.

          Need Help
          * Raise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)

          Licence
          * Service Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE)

          Service Binding Operator is providing and supporting two different APIs.
          * `binding.operators.coreos.com/v1alpha1`: This API is compliant with the Service Binding specification. It is fully supported and considered as the mature API. It’s the API we recommend in production environments.
          * `servicebinding.io/v1beta1`: This API is the one defined in the Service Binding specification. It is available in Service Binding Operator 1.x.

          We’ll consider supporting only the API from the specification, once the Service Binding specification will be officially GA. Of course, that will be a breaking change and handle in a safe way for you.
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Documentation
          url: https://redhat-developer.github.io/service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/redhat-developer/servicebinding-operator@sha256:ac47f496fb7ecdcbc371f8c809fad2687ec0c35bbc8c522a7ab63b3e5ffd90ea
        - quay.io/openshift-community-operators/service-binding-operator@sha256:54ea11add0a1d988e0c965968f9a65e011978190f76fa2f826f1378474bac1d4
        version: 1.4.0
      entries:
      - name: service-binding-operator.v1.4.0
        version: 1.4.0
      - name: service-binding-operator.v1.3.4
        version: 1.3.4
      - name: service-binding-operator.v1.3.3
        version: 1.3.3
      - name: service-binding-operator.v1.3.2
        version: 1.3.2
      - name: service-binding-operator.v1.3.1
        version: 1.3.1
      - name: service-binding-operator.v1.3.0
        version: 1.3.0
      - name: service-binding-operator.v1.2.0
        version: 1.2.0
      - name: service-binding-operator.v1.1.1
        version: 1.1.1
      - name: service-binding-operator.v1.1.0
        version: 1.1.0
      - name: service-binding-operator.v1.0.1
        version: 1.0.1
      - name: service-binding-operator.v1.0.0
        version: 1.0.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: service-binding-operator
    provider:
      name: Red Hat
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/openshift/kueue-operator
    name: kueue-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kueue-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kueue.openshift.io/v1",
                "kind": "Kueue",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kueue-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "config": {
                    "integrations": {
                      "frameworks": [
                        "BatchJob"
                      ]
                    }
                  },
                  "managementState": "Managed"
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-09-17T12:13:48Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-kueue-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Kueue
            name: kueues.kueue.openshift.io
            version: v1
        description: Red Hat build of Kueue is a collection of APIs, based on the
          [Kueue](https://kueue.sigs.k8s.io/docs/) open source project, that extends
          Kubernetes to manage access to resources for jobs. Red Hat build of Kueue
          does not replace any existing components in a Kubernetes cluster, but instead
          integrates with the existing Kubernetes API server, scheduler, and cluster
          autoscaler components to determine when a job waits, is admitted to start
          by creating pods, or should be preempted.
        displayName: Red Hat build of Kueue
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kueue-operator
        links:
        - name: Kueue Operator
          url: https://github.com/openshift/kueue-operator
        maintainers:
        - email: aos-node@redhat.com
          name: Node team
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/kueue-operator
        relatedImages:
        - registry.redhat.io/kueue/kueue-rhel9-operator@sha256:43b1aa1c12ccb31905ae7b9f04ac33f4b56f44076a24f708f514e1ee63f929dc
        - registry.redhat.io/kueue/kueue-rhel9@sha256:dcb9dec563ef3178217e00a544ef0408fb25cd4f3fe155a7e6ad6e6f6ab98613
        - registry.redhat.io/kueue/kueue-must-gather-rhel9@sha256:5db9b63e8917bf1f5c32dbdc438d067fd0c6e424b6bbb8dc575ad322d590396e
        - registry.redhat.io/kueue/kueue-operator-bundle@sha256:c39816efcfdf1566636ab39ebdeb6c2c26c6d3a16a050eb2364548a555cb62b6
        version: 1.1.0
      entries:
      - name: kueue-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: kueue-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kueue.openshift.io/v1",
                "kind": "Kueue",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kueue-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "config": {
                    "integrations": {
                      "frameworks": [
                        "BatchJob"
                      ]
                    }
                  },
                  "managementState": "Managed"
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-11-14T19:51:19Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-kueue-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Kueue is a cluster resource for configuration of the Kueue
              operand
            displayName: Kueue
            kind: Kueue
            name: kueues.kueue.openshift.io
            version: v1
        description: Red Hat build of Kueue is a collection of APIs, based on the
          [Kueue](https://kueue.sigs.k8s.io/docs/) open source project, that extends
          Kubernetes to manage access to resources for jobs. Red Hat build of Kueue
          does not replace any existing components in a Kubernetes cluster, but instead
          integrates with the existing Kubernetes API server, scheduler, and cluster
          autoscaler components to determine when a job waits, is admitted to start
          by creating pods, or should be preempted.
        displayName: Red Hat build of Kueue
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kueue-operator
        links:
        - name: Kueue Operator
          url: https://github.com/openshift/kueue-operator
        maintainers:
        - email: aos-node@redhat.com
          name: Node team
        maturity: stable
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/kueue-operator
        relatedImages:
        - registry.redhat.io/kueue/kueue-must-gather-rhel9@sha256:0d6fe9adb309e62104deb675c5f1b72a4e62821991f2f673182a025cbaa795d0
        - registry.redhat.io/kueue/kueue-operator-bundle@sha256:005047a1a84c92358df9736f9661136e185b1b9d4d9a2eeeb322aa6cb61d63a1
        - registry.redhat.io/kueue/kueue-rhel9-operator@sha256:0e99e54d7b740518813788ca79def5a31ecaae9c154d9b243afb681c30cb5b66
        - registry.redhat.io/kueue/kueue-rhel9@sha256:bdf48afa3c62beec7402edddac8803363e793cf74c1c4cf908ae81845296ce3b
        version: 1.2.0
      entries:
      - name: kueue-operator.v1.2.0
        version: 1.2.0
      name: stable-v1.2
    defaultChannel: stable-v1.2
    packageName: kueue-operator
    provider:
      name: Red Hat, Inc
      url: https://github.com/openshift/kueue-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: advanced-cluster-management
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: advanced-cluster-management.v2.14.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "operator.open-cluster-management.io/v1",
            "kind": "MultiClusterHub", "metadata": {"name": "multiclusterhub", "namespace":
            "open-cluster-management"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-10-27T20:24:30Z"
          description: Advanced provisioning and management of OpenShift and Kubernetes
            clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.13.0 <2.14.1'
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1",
            "kind":"MultiClusterHub","metadata":{"name":"multiclusterhub","namespace":"open-cluster-management"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: open-cluster-management
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:b6eb5df09bfae9f9d0bccef736aefbd561127c02a78b00e38f38e4efb3ec04f2
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          repository: https://github.com/open-cluster-management/multiclusterhub-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MulticlusterHub defines the configuration
              for an instance of a multicluster hub, a central point for managing multiple
              Kubernetes-based clusters. The deployment of multicluster hub components
              is determined based on the configuration that is defined in this resource.
            displayName: MultiClusterHub
            kind: MultiClusterHub
            name: multiclusterhubs.operator.open-cluster-management.io
            version: v1
        description: "Red Hat Advanced Cluster Management for Kubernetes provides
          the multicluster hub, a central management console for managing multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the hub to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can set compliance requirements to ensure
          that the clusters maintain the specified security requirements. You can
          also deploy business applications across your clusters.\n\n## How to install\nUse
          of this Red Hat product requires a licensing and subscription agreement.\n\nInstall
          the Red Hat Advanced Cluster Management for Kubernetes operator by following
          instructions presented when you click the `Install` button. After installing
          the operator, create an instance of the `MultiClusterHub` resource to install
          the hub.\n\nNote that if you will be using the hub to manage non-OpenShift
          4.x clusters, you will need to create a Kubernetes `Secret` resource containing
          your OpenShift pull secret and specify this `Secret` in the `MultiClusterHub`
          resource, as described in the install documentation.\n### Special considerations
          for disconnected network environments\nIf you are installing Red Hat Advanced
          Cluster Management for Kubernetes in a disconnected network environment,
          there are some special install and upgrade requirements.\n#### Include multicluster
          engine for Kubernetes in mirrored catalog\nInstalling an OLM operator in
          a disconnected network environment involves the use of a local mirrored
          operator catalog and image registry. Red Hat Advanced Cluster Management
          for Kubernetes requires (and automatically installs) the multicluster engine
          for Kuberenetes operator so this operator package is needed in your local
          mirrored operator catalog in addition to the one for Red Hat Advanced Cluster
          Management for Kubernetes.\n\nif you are using a full mirror of the Red
          Hat operators catalog, no special action is needed when creating the mirror
          catalog.\n\nIf you are using a filtered (rather than full) mirror of the
          OLM catalog, be sure to include both the `advanced-cluster-management` **and**
          `multicluster-engine` packages in your mirrored catalog when creating it.\n####
          Add annotation to MultiClusterHub resource\nIf you are installing or upgrading
          to a Red Hat Advanced Cluster Management for Kubernetes release prior to
          release 2.7, an `mce-subscription-spec` annotation is required in the instance
          of the `MultiClusterHub` resource you create to set up your hub. This annotation
          identifies the catalog source for your local mirrored operator catalog and
          is required when installing releases prior to release 2.7 regardless of
          whether your local mirrored operator catalog is a full mirror or a filtered
          one.\n\nThe `mce-subscription-spec` annotation is not usually needed, and
          thus can usually be omitted, when installing or upgrading to release 2.7
          or a later release. Starting with release 2.7, the Red Hat Advanced Cluster
          Management for Kubernetes operator is able to automatically determine the
          catalog source to use in typical scenarios.\n\nThe following is an example
          of the `mce-subscription-spec` annotation:\n\n```\n apiVersion: operator.open-cluster-management.io/v1\n
          kind: MultiClusterHub\n metadata:\n \tannotations:\n \t\tinstaller.open-cluster-management.io/mce-subscription-spec:
          '{\"source\": \"my-catalog-source\"}'\n spec: {}\n\n```\n\nReplace `my-catalog-source`
          with the name of your catalog source.\n\nIf you are creating the `MultiClusterHub`
          resource using the OperatorHub UI, switch to the YAML view for the resource
          in order to insert the annotation.\n### Where to find more installation
          information\nYou can find additional installation guidance in the [install
          documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/install/installing). "
        displayName: Advanced Cluster Management for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - acm
        - advanced-cluster-management
        - install
        - multiclusterhub
        - rhacm
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:6cc12edafea8f130331797349cc9f1c06853cef5ee0a238d20205894a77aec96
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:cce2e0c3e48140e70a389821f4238e53ea496473d3ccd74b045059bc3cfd2982
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:ac64da0f40dc39078e7cf604293471e20ca627e90c381826f1f10136c21ac1a2
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:17b7618bd0d09665c97a9ad835ea6389ac4d1540f3675f6a34851916fc19b923
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:0bb769131d07651f425b823e759746ea9d9af1e1006d610341f4e49188450f2d
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:0e137637b57c5c77087f3f0cf81d22c2eb9ecfd60ba96c90ff1e363d2650cf84
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:ee59f307e468e2b7b38f7c040898d587d441f8fb3d59cb022ae23e4717739e3f
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:393c385c8d4424539cd95b9fab090f3015e0812a3688beee83c2c515f1235f24
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:91e009061d720b1d1e5a6deafe295fa4dd7d7dd0c6fe17587639a623ca07159a
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:7a5f323bada97dbe0ad204a64f714c0acf37e9d261776a24f0cc7e0122327354
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:39b5feb4dcf91feb124adfb629c14ec729f96860c6c16e8a2c05b6b2348a6b6c
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:97049a14110198594e3ae815748111262359970937bcd6a83d9c98a70bbd134a
        - registry.redhat.io/rhel8/postgresql-16@sha256:776f420f734f9c1d6e0589fc6d9acee8f1c2bfd1f838348360bb9db584920602
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:f84cad07033b005bed36048f3e4bb00a613800cffd3d3892bfb1e3ccea2a1c58
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:b83f150ab2dd851e3662ad01f3057482e5f454e28d04d50ce1c321efa2090f33
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:e53522a9ce0e3adfabdd809125a442b550c11c4c753d9665794c8ff640b86895
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c3d261bd2eb4842c279a0d35c754699a484ebb320617a893195088579a46fec9
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:7ca1b3ffb295e55b4b6d08ffad5d5a982c8e9d8ce7638eb956ea877580a57975
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:c058a4198b256d998f85bd8ee07882f42628748d827bd978d4a70af05d411665
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:1b1f6f85af0910f1acd029f54a608b25d3a2977c3d8b323266391543324305b4
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:afa4337370e8ea6da0e25d62c7197157b85281916a1fff4c881eafaf14a2c3e8
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:c05ba064ebaad51a625361ceecf30b6d4bd28f3c5d9efb279f39c98afc050a75
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:dd4a7678648872ea4294b867cdc7bca0ac063b81eaeac9bf5d4fddcaffb96bac
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:6c369fa856f18ef60d25a57f0588ec5a0bef18d0226b957db5e5d597fa5158f7
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:7f86f9a33460384c60e62813e665b89bb6288aa3a4d56ca09040063d7b02b9bc
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:0684f07fdb2f648182a8410722156decef4ee503cb1eb66274af32d946bd8d80
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:b42323be8ff41fa98332a5b2fa31af73a0da9605ff746122420ac46aa8f4a8d2
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:a89c3f88ab17823607e3c6af022991263b418b38d667507d4c522acd590680b3
        - registry.redhat.io/rhacm2/console-rhel9@sha256:94cfe0cdb4c01ff7ad602bf0ee6af3010e5b748363845d2205070764dcbb2eb2
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:973eb3ca3da32c87ba308928a21fbd25514b2f6a6662300d4928479cb554cff3
        - registry.redhat.io/rhel9/redis-7@sha256:b4f58ad83ab8719a2e102f38ee526546cd1d56428901afc3add45c9a0e2a2f12
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:f6511171c82d52fef18533eee1d6511f3850c5cf4eda2bd9007a7a8642d0a1c8
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:b8f8f931f498855461ff997f73470fd957a5f32719a62c993f07050e75d76bfe
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:5a86ed779e8a9f68f121029ea7fd21c37a4108ab3202b35dbb371a2b0612f215
        - registry.redhat.io/rhacm2/acm-governance-policy-framework-addon-rhel9@sha256:f60071d35949e2e53cb0b8eec84f7d5c1e24bfd5f3165b34707059b61bb98cb0
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:b6eb5df09bfae9f9d0bccef736aefbd561127c02a78b00e38f38e4efb3ec04f2
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:dec26e10f2c5c0da5a3d2be3d22255c08c55c3afcd9c9c34f53b29330f74efcb
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:d31e3e2b0126f94f12f9eb0af37c8bc08ccdeea06b61068a04d711cbfd9e3b99
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:4c09ad98d2cd3a41f5f437ee7023137ca57084430e00fb44e976a7a687dfadf9
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:973f4e668937fa9faee550fdf8451c74354f48756c54471f5f1a63307e4e5a66
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:940c0564ced75b7912d3ffc923a1f6bab9aed0f4a52962f7f894d08937b7d37e
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:bf26f5a794224b5ac6b5a7c7457f345914612610d24e9af563b92eecea614eba
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:3cdc71fc6932406fb44dc0d162826713a515d7b032ddb8fec5582bfa9a9cb937
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:a74270d8ec7d1d64c86e80fd2c67d8dc8bb0a31b30b996de737491e3c7180e46
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:e20ce08100730812c47977fd754c53d3bc47ce13f57c0716b3f6487fba939c8f
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:f930cda4750df9922781fd8fff84b9f4df219679cd2929e58961c9371dc2c5a1
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:2233fe74d4d9cbd226e130b314a546d5473515e0389cd19c25164c6c543aa54a
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:57f28e416e9d84a9d690b6d262a4263d8da060a3254253c68aa7945414f15535
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:467557f453bde3feaa0129f38c52fba00c3b98acddbf8978bf21ef13a9890fab
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c13557b24b0a172deac742cbc4b6dc6b09090170c0c0a4a9c0dd307a00c54661
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:a72ceef5e2f992ef6d593978623be5fb15a10f1a5276a3bdba0364d26aaaa0fa
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:3491ec932d90112e89f3a4cebe5bdd9ed6a7811f116df43bab8bb5f827129361
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:4628b05c002b6186d07f1bd6bd670bc2f65254168532d868282589b1da48e930
        - registry.redhat.io/rhel9/memcached@sha256:42a0c2506b38ce9f5ee744a299cb135781186e628fdf7c09d2d35ba3b6decef8
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:d28520c44b861c75d1de8544be8b3a8659cb5695c0ea0e7b4ea3a9adfaa26748
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:b297b4deda5906897b8d1949ddbabb6fb90224244ff2b6d86139110ac900fd9b
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:f99086a8e828f25d96249048905743ccd5a21f184b21fca62d01650c898a346f
        version: 2.14.1
      entries:
      - name: advanced-cluster-management.v2.14.1
        version: 2.14.1
      - name: advanced-cluster-management.v2.14.0
        version: 2.14.0
      name: release-2.14
    - currentCSV: advanced-cluster-management.v2.15.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "operator.open-cluster-management.io/v1",
            "kind": "MultiClusterHub", "metadata": {"name": "multiclusterhub", "namespace":
            "open-cluster-management"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-12-03T14:52:20Z"
          description: Advanced provisioning and management of OpenShift and Kubernetes
            clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=2.13.0 <2.15.0'
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1",
            "kind":"MultiClusterHub","metadata":{"name":"multiclusterhub","namespace":"open-cluster-management"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: open-cluster-management
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:5740d54261321739e324665725566bed539687d21b4b46b7edb359cce491dadc
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          repository: https://github.com/open-cluster-management/multiclusterhub-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MulticlusterHub defines the configuration
              for an instance of a multicluster hub, a central point for managing multiple
              Kubernetes-based clusters. The deployment of multicluster hub components
              is determined based on the configuration that is defined in this resource.
            displayName: MultiClusterHub
            kind: MultiClusterHub
            name: multiclusterhubs.operator.open-cluster-management.io
            version: v1
        description: "Red Hat Advanced Cluster Management for Kubernetes provides
          the multicluster hub, a central management console for managing multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the hub to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can set compliance requirements to ensure
          that the clusters maintain the specified security requirements. You can
          also deploy business applications across your clusters.\n\n## How to install\nUse
          of this Red Hat product requires a licensing and subscription agreement.\n\nInstall
          the Red Hat Advanced Cluster Management for Kubernetes operator by following
          instructions presented when you click the `Install` button. After installing
          the operator, create an instance of the `MultiClusterHub` resource to install
          the hub.\n\nNote that if you will be using the hub to manage non-OpenShift
          4.x clusters, you will need to create a Kubernetes `Secret` resource containing
          your OpenShift pull secret and specify this `Secret` in the `MultiClusterHub`
          resource, as described in the install documentation.\n### Special considerations
          for disconnected network environments\nIf you are installing Red Hat Advanced
          Cluster Management for Kubernetes in a disconnected network environment,
          there are some special install and upgrade requirements.\n#### Include multicluster
          engine for Kubernetes in mirrored catalog\nInstalling an OLM operator in
          a disconnected network environment involves the use of a local mirrored
          operator catalog and image registry. Red Hat Advanced Cluster Management
          for Kubernetes requires (and automatically installs) the multicluster engine
          for Kuberenetes operator so this operator package is needed in your local
          mirrored operator catalog in addition to the one for Red Hat Advanced Cluster
          Management for Kubernetes.\n\nif you are using a full mirror of the Red
          Hat operators catalog, no special action is needed when creating the mirror
          catalog.\n\nIf you are using a filtered (rather than full) mirror of the
          OLM catalog, be sure to include both the `advanced-cluster-management` **and**
          `multicluster-engine` packages in your mirrored catalog when creating it.\n####
          Add annotation to MultiClusterHub resource\nIf you are installing or upgrading
          to a Red Hat Advanced Cluster Management for Kubernetes release prior to
          release 2.7, an `mce-subscription-spec` annotation is required in the instance
          of the `MultiClusterHub` resource you create to set up your hub. This annotation
          identifies the catalog source for your local mirrored operator catalog and
          is required when installing releases prior to release 2.7 regardless of
          whether your local mirrored operator catalog is a full mirror or a filtered
          one.\n\nThe `mce-subscription-spec` annotation is not usually needed, and
          thus can usually be omitted, when installing or upgrading to release 2.7
          or a later release. Starting with release 2.7, the Red Hat Advanced Cluster
          Management for Kubernetes operator is able to automatically determine the
          catalog source to use in typical scenarios.\n\nThe following is an example
          of the `mce-subscription-spec` annotation:\n\n```\n apiVersion: operator.open-cluster-management.io/v1\n
          kind: MultiClusterHub\n metadata:\n \tannotations:\n \t\tinstaller.open-cluster-management.io/mce-subscription-spec:
          '{\"source\": \"my-catalog-source\"}'\n spec: {}\n\n```\n\nReplace `my-catalog-source`
          with the name of your catalog source.\n\nIf you are creating the `MultiClusterHub`
          resource using the OperatorHub UI, switch to the YAML view for the resource
          in order to insert the annotation.\n### Where to find more installation
          information\nYou can find additional installation guidance in the [install
          documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.12/html/install/installing). "
        displayName: Advanced Cluster Management for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - acm
        - advanced-cluster-management
        - install
        - multiclusterhub
        - rhacm
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.12/
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c5bc42e57f4bae70f1e0b2fd1de345d0f1ef7e1e41fa6cd790198bcd2023bc1a
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:2c8f89fa9958f0422c6ce6a1acf6e6343967c78d0966937fca19e27e52e7a428
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:90b919807421554282a06cbb5d2e4b4b376b686a884e62566fbf257351f5a31f
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:78c00553182db4b8d923c33afcf64617499cb5c701314a4c977673613b8fa5a6
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:b70ed3f5e36043f6050d6d71455acbf0ac9f6968a26579abbe20e47b71e91203
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:1054b185a0118a9752c18ee6036c486f84d824366ed879d2ab4594c542219099
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:e25d8d0deab4139ba82e64666074e51b4d9c768f4e5e377483bf1d787613d33c
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:833837b3f89a4c9f8925e32c7550418169a839ce14b12915d85de6af095d5847
        - registry.redhat.io/rhem/flightctl-userinfo-proxy-rhel9@sha256:357ce9e08c63c1f91512dcf01fc1073d3d44222ac1d97306709467282e4db9fa
        - registry.redhat.io/rhel9/memcached@sha256:14568dc13790fa3d8827e3ae7ef7bae37096ef32b8a158310b3e489bca5a0ab3
        - registry.redhat.io/rhacm2/console-rhel9@sha256:f96a68657bd4eef8c0fb1c9d86203e73fecfea62b4f87425caa1e5f65173c0b7
        - registry.redhat.io/rhacm2/mtv-integrations-rhel9@sha256:4508924c255a6f352c3868b281c7e8eb19a6d857e32fa5f59d925875384549e7
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:296062e27abf3c960f042757bcdcca3169d9e318627d2fcd94ff6fcfa72ae2f5
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:5740d54261321739e324665725566bed539687d21b4b46b7edb359cce491dadc
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:4228de3d4a7d2240e13cfbb9132f75792a9c4b86e494fb3bb0ed53f6df267573
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:c0fc3b0eeda8340f8ca684c215333c50d7896e861b6f899d4c93317c90f21d65
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:de5f2b08ea7f938bdb8764bec1401d6ee55298754f91e912e14fc2faa0bf0796
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:f22a55f1a6c720d83532a5af45e7aeb1593163f0e467290d2ffadbf4bb8b10cc
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:029a326a842d7645fc944b177234053e416517747ac6a6753675555adf2af328
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:265e3de1cb6b823d2165a109dfb2fae4c7647ae543c920fe66d566698d851360
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:4512e39b757445f9d3d523f121319620208bf81642f39006fe491cb37028a429
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:2b2a285276dcbce1863b2bf535042d3a4cd394f11cf73adc451226e53af54ad9
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:6b57bada2bce96583d5f80ae4bbcf4cdb54fcd1a214e75433e56d626e4a7f0bf
        - registry.redhat.io/rhacm2/acm-governance-policy-framework-addon-rhel9@sha256:a88b2a9ec0b88483294f01848cd35548d82607c8b76ec4f24ad87271b5d7d56e
        - registry.redhat.io/rhem/flightctl-db-setup-rhel9@sha256:2aab6e480a201e202dd7f670caa27838db2c219e08c2726cbea5e7885091d639
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:5bf5ff559fd9f0c06995237cc235d0939b44c023612e0179a9bc8de99cf185e5
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:0ef909e3fa2bd636c2c727bb86ae86904af4eafa77ef533359c52727567e0c4e
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:490ad6fd2150a463cc7783342ad8ffdd5753af9c76cf27dd3266364439e2b6ab
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:ad124178d2f0d7e4184a1c18445a916e289629b382d0ed9fceb76ab8eeaeb6fd
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:435b0f0df603380649b287ec8e0be94905501badbbaa24ae99450fb9c3f20378
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:a4bd68cf7b12b5f9b133983c988bd668f1dcddfd090b9912ee3d069d2f9d7517
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:91f98eefba17fb0766eb3d6b94e7cd276a1ee5baf6c39c153929b4704b3c3b91
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:79c843df370a7ff57d1f9fbba162c252729b7de331d88fb1679b54544cc7caac
        - registry.redhat.io/rhel9/redis-7@sha256:bbce339dd580334f0e1019a31d97b053796bd16bdee79745a3102a22ce2983b0
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:22a6b529dbf9aa27d15f3260bcc6acc1300bb6ac9ad60f47fcc115f24a5b832b
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:9d486e0652b865d109c8fd7592ae96b43c1bfcda6ce154c11d6b91fbc15eb293
        - registry.redhat.io/rhacm2/multicluster-role-assignment-rhel9@sha256:203cc1df7f09512c1578867722c61fcb90518c19d612e9a89b7b626db2805ea9
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        - registry.redhat.io/rhem/flightctl-alertmanager-proxy-rhel9@sha256:1d59b2cdbc4824ae2a8c1b32e7beae87331b410bb1f24c5216efd2629dd08a86
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:b541e86af7b6b458c58755f092147868164c2cbf0b239239d8331876fb6996b9
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:fa26debe735df99a87997ef107ea56b7edf94168b98bd02bfe146f593c3e58c9
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:e1bc46429dc2da167e27400cce84af2082be150f577b37f98912371b6d684bbc
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:4f78bd465a4892788b85f2817c4e950d98fede462a2cc6725546bedc68683281
        - registry.redhat.io/rhem/flightctl-alert-exporter-rhel9@sha256:2a1f1cf703782cc0cb07a8c6f950eadf209f47baf1186a2045210eda6b6d8246
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:3ea6921965c3f90b02a8e71287159f0771cc9fb5bbd37ab8c594df235e79d9fc
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:1c73ab166a99713bb9a7e17d347150213399740849524dc0a9471804c1a80d61
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:7a050603905f8cd0a5545b87475f077ff5639cff3c1c72eba0e6c9adfa1136e2
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:eac5ade5fc49b724ef33c05c81bf960f7bec3f52faa2e44db249d05bcc45c280
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:1621430aed061d140280a41bca527d616b4801f6dec9684792e7372a75fd778e
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:5f1fc557bef7e06ad285e94e20e4c1bb4f2b8b31c6239d195fd93ff02a530f9c
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c1a264cc0484c6f58dd9915cb6575605ca3d6b1c2dc20a4841fc7afd906a8833
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:e27e5adc9169479aacc701677c740bb21c12a81d0df4a55442605d3dceffa91b
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:3329ee154252a8aa0f6208a59d21fd93198c01b42a1022a7310796ece8eeed0d
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:cbd55d9bfd2056b3916581e51e547225b5b007c266c670844fc0881ed2cc67de
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:34e66dd3f7dbc4760c8c6d3c9feae7bed6ff3357c8ee5a1d16e058bd496f7188
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:259bda37cfa2785051894838cf660a22564a36739eed7f25952703bf193c27fd
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:d589008f69fdc4738b2384d1098de2beeb7b7d2ee3dd64309d4f10308ab40afa
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:0e09bf9106e6937212b83c989657f8984547c81b272990cfe6b71158b8966a03
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:19630eb9d520219cb515c2da23090efba4a15f3bdc6539af695c5b546c35d61e
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:ad8ee7504e9d69edace4de3b119cdde99885677bebdbf0a6c11d3e62d92d1aec
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e2681bce57dc9c15701f5591532c2dfe8f19778606661339553a28dc003dbca5
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:a7b322fe65406009776e894d98055e848abe38f3c6e4c5ec7abb40321c066ff6
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:d8645f5266b1cadb7fc8139ae1c8e77732cbbe0642f52547df536e9fbcecc03a
        - registry.redhat.io/rhel8/postgresql-16@sha256:d64b9dff3ebf4a277080adf043d4ad56efc7b14a646f0ea72b911f58e28d50cf
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:e30dc28359ddb8fe2ddaa55e43e69cafed9ffe3a64fecebcb03a850a64fe2c59
        - registry.redhat.io/ubi9/ubi-minimal@sha256:34880b64c07f28f64d95737f82f891516de9a3b43583f39970f7bf8e4cfa48b7
        version: 2.15.0
      entries:
      - name: advanced-cluster-management.v2.15.0
        version: 2.15.0
      name: release-2.15
    defaultChannel: release-2.15
    packageName: advanced-cluster-management
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-kafka-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kafka-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/kafka-operator@sha256:0070de045fb7c4e5962075c4fd259e600d66c64fced1172c0fff0a4f8c2d677f
          description: Stackable Operator for Apache Kafka
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/kafka-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for KafkaClusterSpec via `CustomResource`
            displayName: kafkaclusters.kafka.stackable.tech
            kind: KafkaCluster
            name: kafkaclusters.kafka.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - registry.connect.redhat.com/stackable/stackable-apache-kafka-operator@sha256:59b651c4353f3908af5feee8f44f66385b20caab983a477087c434244f4f9234
        - quay.io/stackable/kafka-operator@sha256:0070de045fb7c4e5962075c4fd259e600d66c64fced1172c0fff0a4f8c2d677f
        version: 25.11.0
      entries:
      - name: kafka-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-kafka-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: SusQL Operator Contributors
      provider-url: https://github.com/sustainable-computing-io/susql-operator
    name: susql-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: susql-operator.v0.0.34
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "susql.ibm.com/v1",
                "kind": "LabelGroup",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "susql-operator",
                    "app.kubernetes.io/instance": "labelgroup-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "susql-operator",
                    "app.kubernetes.io/part-of": "susql-operator"
                  },
                  "name": "labelgroup-sample"
                },
                "spec": {
                  "labels": [
                    "labelgroup-sample-1",
                    "labelgroup-sample-2"
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: quay.io/sustainable_computing_io/susql_operator:0.0.34
          createdAt: "2025-07-10T01:20:37Z"
          description: 'Aggregates energy and CO2 emission data for pods tagged with
            SusQL labels '
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/sustainable-computing-io/susql-operator
          support: https://github.com/sustainable-computing-io/susql-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: LabelGroup is the Schema for the LabelGroups API
            displayName: Label Group
            kind: LabelGroup
            name: labelgroups.susql.ibm.com
            version: v1
        description: |-
          ### About this Operator

          SusQL is a Kubernetes operator that aggregates energy and estimated
          carbon dioxide emission data for pods tagged with SusQL specific
          labels. The energy measurements are taken from Kepler which should
          be deployed in the cluster before using SusQL.

          ### Prerequisites

          1. Deployment of [Kepler](https://sustainable-computing.io/) on the cluster
          2. Ensure that [User Project Monitoring](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)
          is enabled to monitor energy consumed in user projects.
          3. Creation of a SusQL Service Monitor:
                `oc apply -n <NAMESPACE> -f https://raw.githubusercontent.com/sustainable-computing-io/susql-operator/main/hack/susql-servicemonitor.yaml`

          ### API Backward Compatibility

          Until Operator supports **seamless upgrades**, a new version of the operator may
          introduce a change that is **NOT** backwards compatible with the previous version.
          Thus, to upgrade the operator, uninstall the already installed version completely
          (including CRDs) and install the new version. For example to upgrade from 0.1.0
          to 0.2.0, you must first uninstall 0.1.0.

          ### LabelGroup spec Example

          ```
          apiVersion: susql.ibm.com/v1
          kind: LabelGroup
          metadata:
            name: labelgroup-name
            namespace: susql-operator
          spec:
            labels:
              - my-label-1
              - my-label-2
          ```

          ### Documentation

          Documentation can be found at [SusQL Operator](https://github.com/sustainable-computing-io/susql-operator#readme).

          ### Getting help

          If you encounter any issues while using the SusQL Operator, you can create an
          [issue](https://github.com/sustainable-computing-io/susql-operator/issues)
          on our GitHub repo for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by raising [issues](https://github.com/sustainable-computing-io/susql-operator/issues)
          related to susql-operator.

          ### License
          susql-operator is licensed under the Apache 2.0 license
        displayName: SusQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - aggregation
        - sustainability
        - energy
        - kepler
        - susql
        - carbon dioxide (CO2) emissions
        - green computing
        links:
        - name: SusQL Operator
          url: https://github.com/sustainable-computing-io/susql-operator
        - name: Sustainable Computing
          url: https://github.com/sustainable-computing-io
        maintainers:
        - email: trent@jp.ibm.com
          name: Scott Trent
        - email: mohammed.munir.abdi@ibm.com
          name: Mohammed Abdi
        maturity: alpha
        provider:
          name: SusQL Operator Contributors
          url: https://github.com/sustainable-computing-io/susql-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/susql-operator@sha256:aa0934d55377b2d32588794150f80f7e9ac198b63f6cba7aeb42d165899e56d6
        - quay.io/sustainable_computing_io/susql_operator:0.0.34
        version: 0.0.34
      entries:
      - name: susql-operator.v0.0.34
        version: 0.0.34
      name: alpha
    defaultChannel: alpha
    packageName: susql-operator
    provider:
      name: SusQL Operator Contributors
      url: https://github.com/sustainable-computing-io/susql-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hazelcast, Inc
      provider-url: ""
    name: hazelcast-platform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hazelcast-platform-operator.v5.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "cache-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "CronHotBackup",
                "metadata": {
                  "name": "cronhotbackup-sample"
                },
                "spec": {
                  "hotBackupTemplate": {
                    "metadata": {
                      "labels": {
                        "cron-hotbackup": "true"
                      }
                    },
                    "spec": {
                      "hazelcastResourceName": "hazelcast"
                    }
                  },
                  "schedule": "*/30 * * * *"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast"
                },
                "spec": {
                  "clusterSize": 3,
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast-sample"
                },
                "spec": {
                  "clusterSize": 3,
                  "jet": {
                    "bucketConfig": {
                      "bucketURI": "gs://operator-user-code/jetJobs",
                      "secretName": "br-secret-gcp"
                    },
                    "enabled": true,
                    "resourceUploadEnabled": true
                  },
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HazelcastEndpoint",
                "metadata": {
                  "name": "hazelcastendpoint-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "port": 5701,
                  "type": "Discovery"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HotBackup",
                "metadata": {
                  "name": "hot-backup"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-longrun"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-longrun-2.0.0.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-1.0.2.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJobSnapshot",
                "metadata": {
                  "name": "jetjobsnapshot-sample"
                },
                "spec": {
                  "cancelJob": false,
                  "jetJobResourceName": "jet-job"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ManagementCenter",
                "metadata": {
                  "name": "managementcenter"
                },
                "spec": {
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "hazelcastClusters": [
                    {
                      "address": "hazelcast",
                      "name": "dev"
                    }
                  ],
                  "licenseKeySecretName": "hazelcast-license-key",
                  "persistence": {
                    "enabled": true,
                    "size": "10Gi"
                  },
                  "repository": "hazelcast/management-center"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Map",
                "metadata": {
                  "name": "map"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "MultiMap",
                "metadata": {
                  "name": "multimap-sample"
                },
                "spec": {
                  "backupCount": 3,
                  "binary": true,
                  "collectionType": "LIST",
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Queue",
                "metadata": {
                  "name": "queue-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ReplicatedMap",
                "metadata": {
                  "name": "replicatedmap-sample"
                },
                "spec": {
                  "asyncFillup": true,
                  "hazelcastResourceName": "hazelcast",
                  "inMemoryFormat": "OBJECT"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Topic",
                "metadata": {
                  "name": "topic-sample"
                },
                "spec": {
                  "globalOrderingEnabled": true,
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "UserCodeNamespace",
                "metadata": {
                  "name": "ucn-sample"
                },
                "spec": {
                  "bucketConfig": {
                    "bucketURI": "gs://operator-user-code/userCodeNamespace",
                    "secretName": "br-secret-gcp"
                  },
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanReplication",
                "metadata": {
                  "name": "wanreplication-sample"
                },
                "spec": {
                  "endpoints": "35.192.33.252",
                  "resources": [
                    {
                      "kind": "Map",
                      "name": "map-sample"
                    },
                    {
                      "kind": "Hazelcast",
                      "name": "hz-sample"
                    }
                  ],
                  "targetClusterName": "dev"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanSync",
                "metadata": {
                  "name": "wansync-sample"
                },
                "spec": {
                  "wanReplicationResourceName": "wan-replication-sample"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: docker.io/hazelcast/hazelcast-platform-operator@sha256:99005afda5c71ceeac200928dfed4ea35480f871053101e3aeaa44005e3fda14
          createdAt: "2024-07-29T15:35:56Z"
          description: '[DEPRECATED] Use the certified Hazelcast Operator instead'
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/hazelcast/hazelcast-platform-operator/
          support: Hazelcast, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.hazelcast.com
            version: v1alpha1
          - description: CronHotBackup is the Schema for the cronhotbackups API
            displayName: Cron Hot Backup
            kind: CronHotBackup
            name: cronhotbackups.hazelcast.com
            version: v1alpha1
          - description: HazelcastEndpoint is the Schema for the hazelcastendpoints
              API
            displayName: Hazelcast Endpoint
            kind: HazelcastEndpoint
            name: hazelcastendpoints.hazelcast.com
            version: v1alpha1
          - description: Hazelcast is the Schema for the hazelcasts API
            displayName: Hazelcast
            kind: Hazelcast
            name: hazelcasts.hazelcast.com
            version: v1alpha1
          - description: HotBackup is the Schema for the hot backup API
            displayName: Hot Backup
            kind: HotBackup
            name: hotbackups.hazelcast.com
            version: v1alpha1
          - description: JetJob is the Schema for the jetjobs API
            displayName: Jet Job
            kind: JetJob
            name: jetjobs.hazelcast.com
            version: v1alpha1
          - description: JetJobSnapshot is the Schema for the jetjobsnapshots API
            displayName: Jet Job Snapshot
            kind: JetJobSnapshot
            name: jetjobsnapshots.hazelcast.com
            version: v1alpha1
          - description: ManagementCenter is the Schema for the managementcenters
              API
            displayName: Management Center
            kind: ManagementCenter
            name: managementcenters.hazelcast.com
            version: v1alpha1
          - description: Map is the Schema for the maps API
            displayName: Map
            kind: Map
            name: maps.hazelcast.com
            version: v1alpha1
          - description: MultiMap is the Schema for the multimaps API
            displayName: Multi Map
            kind: MultiMap
            name: multimaps.hazelcast.com
            version: v1alpha1
          - description: Queue is the Schema for the queues API
            displayName: Queue
            kind: Queue
            name: queues.hazelcast.com
            version: v1alpha1
          - description: ReplicatedMap is the Schema for the replicatedmaps API
            displayName: Replicated Map
            kind: ReplicatedMap
            name: replicatedmaps.hazelcast.com
            version: v1alpha1
          - description: Topic is the Schema for the topics API
            displayName: Topic
            kind: Topic
            name: topics.hazelcast.com
            version: v1alpha1
          - description: UserCodeNamespace is the Schema for the usercodenamespaces
              API
            displayName: User Code Namespace
            kind: UserCodeNamespace
            name: usercodenamespaces.hazelcast.com
            version: v1alpha1
          - description: WanReplication is the Schema for the wanreplications API
            displayName: Wan Replication
            kind: WanReplication
            name: wanreplications.hazelcast.com
            version: v1alpha1
          - description: WanSync is the Schema for the wansyncs API
            displayName: Wan Sync
            kind: WanSync
            name: wansyncs.hazelcast.com
            version: v1alpha1
        description: |
          ## Deprecated
          Use the certified Hazelcast Operator instead.
          # Hazelcast Platform Operator #

          Easily deploy Hazelcast clusters and Management Center into Kubernetes environments and manage their lifecycles.

          ## Before You Start

          If you are planning to create Hazelcast Platform Enterprise clusters, you need to [create a secret](https://docs.hazelcast.com/operator/latest/get-started#step-2-start-the-hazelcast-cluster) for the license. You can request a trial license key from [here](https://trialrequest.hazelcast.com).

          For Hazelcast Platform clusters, you can simply continue.

          ## Documentation

          1. [Get started](https://docs.hazelcast.com/operator/latest/get-started) with the Operator
          2. [Connect to the cluster from outside Kubernetes](https://guides.hazelcast.org/hazelcast-platform-operator-expose-externally)
          3. [Restore a Cluster from Cloud Storage with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-external-backup-restore)
          4. [Replicate Data between Two Hazelcast Clusters with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-wan-replication)

          ## Features

          Hazelcast Platform Operator supports the features below:

          * Custom resource for Hazelcast Platform (Enterprise) and Management Center
          * Observe status of Hazelcast clusters and Management Center instances
          * High Availability Mode configuration to create clusters that are resilient to node and zone failures
          * Support for TLS connections between members using self-signed certificates
          * Scale up and down Hazelcast clusters
          * Expose Hazelcast cluster to external clients ([Smart & Unisocket](https://docs.hazelcast.com/hazelcast/latest/clients/java#java-client-operation-modes))
          * Backup Hazelcast persistence data to cloud storage with the possibility of scheduling it and restoring the data accordingly
          * WAN Replication feature when you need to synchronize multiple Hazelcast clusters, which are connected by WANs
          * Full and Delta WAN Sync support
          * Tiered Storage support for Hazelcast and Map CRs
          * CP Subsystem configuration support for Hazelcast CR
          * User Code Deployment feature, which allows you to deploy custom and domain classes from cloud storages and URLs to Hazelcast members
          * The User Code Namespaces feature allows you to deploy custom and domain classes at runtime without a members restart
          * Support the configuration of advanced networking options
          * Support Multi-namespace configuration
          * ExecutorService and EntryProcessor support
          * Support several data structures like Map, Topic, MultiMap, ReplicatedMap, Queue and Cache which can be created dynamically via specific Custom Resources
          * MapStore, Near Cache and off-heap memory (HD memory and native memory) support for the Map CR
          * Native Memory support for the Cache CR
          * Support Jet configuration and Jet Job submission using the JetJob CR
          * Support for exporting the snapshots of JetJob CRs using JetJobSnapshot CR
          * Support for custom configurations using ConfigMap
        displayName: '[DEPRECATED] Hazelcast Platform Operator'
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hazelcast
        - keyvalue
        - in-memory
        - database
        - caching
        links:
        - name: Documentation
          url: https://docs.hazelcast.com/operator/latest/
        - name: Source Code
          url: https://github.com/hazelcast/hazelcast-platform-operator
        maintainers:
        - email: cloudnative@hazelcast.com
          name: Hazelcast Cloud Native Team
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Hazelcast, Inc
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hazelcast-platform-operator@sha256:1209876fc9103eb2d69c34e97e4e2e0b384a9a778ae7e6a53222b8552fbf2f26
        - docker.io/hazelcast/hazelcast-platform-operator@sha256:99005afda5c71ceeac200928dfed4ea35480f871053101e3aeaa44005e3fda14
        version: 5.13.0
      entries:
      - name: hazelcast-platform-operator.v5.13.0
        version: 5.13.0
      - name: hazelcast-platform-operator.v5.12.0
        version: 5.12.0
      - name: hazelcast-platform-operator.v5.11.0
        version: 5.11.0
      - name: hazelcast-platform-operator.v5.10.0
        version: 5.10.0
      - name: hazelcast-platform-operator.v5.9.0
        version: 5.9.0
      - name: hazelcast-platform-operator.v5.8.0
        version: 5.8.0
      - name: hazelcast-platform-operator.v5.7.0
        version: 5.7.0
      - name: hazelcast-platform-operator.v5.6.0
        version: 5.6.0
      - name: hazelcast-platform-operator.v5.5.0
        version: 5.5.0
      - name: hazelcast-platform-operator.v5.4.0
        version: 5.4.0
      - name: hazelcast-platform-operator.v5.3.0
        version: 5.3.0
      - name: hazelcast-platform-operator.v5.2.0
        version: 5.2.0
      - name: hazelcast-platform-operator.v5.1.0
        version: 5.1.0
      - name: hazelcast-platform-operator.v5.0.0
        version: 5.0.0
      name: alpha
    defaultChannel: alpha
    packageName: hazelcast-platform-operator
    provider:
      name: Hazelcast, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com/
    name: varnish-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: varnish-operator.v0.27.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "caching.ibm.com/v1alpha1",
                "kind": "VarnishCluster",
                "metadata": {
                  "name": "varnishcluster-sample"
                },
                "spec": {
                  "backend": {
                    "port": "web",
                    "selector": {
                      "app": "nginx"
                    }
                  },
                  "replicas": 1,
                  "service": {
                    "port": 80
                  },
                  "varnish": {
                    "args": [
                      "-p",
                      "default_ttl=3600",
                      "-p",
                      "default_grace=3600"
                    ]
                  },
                  "vcl": {
                    "configMapName": "vcl-files",
                    "entrypointFileName": "entrypoint.vcl"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking
          certified: "false"
          containerImage: ibmcom/varnish-operator:0.27.2
          createdAt: 2021-02-15T11:15:31+0000
          description: Run and manage Varnish clusters on Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/IBM/varnish-operator
          support: https://ibm.github.io/varnish-operator/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VarnishCluster is the Schema for the varnishclusters API
            displayName: Varnish Cluster
            kind: VarnishCluster
            name: varnishclusters.caching.ibm.com
            version: v1alpha1
        description: |
          Run and manage Varnish clusters on Kubernetes

          The operator manages the whole lifecycle of the cluster: creating, deleting and keeping the cluster configuration up to date.

          The operator is responsible for building the VCL configuration using templates defined by the users and keeping the configuration up to date when relevant events occur (backend pod failure, scaling of the deployment, VCL configuration change).

          Example of a simple `VarnishCluster`:

          ```yaml
          apiVersion: caching.ibm.com/v1alpha1
          kind: VarnishCluster
          metadata:
            name: varnishcluster-sample
            namespace: varnish-ns
          spec:
            vcl:
              configMapName: vcl-files
              entrypointFileName: entrypoint.vcl
            replicas: 3
            backend:
              selector:
                app: nginx
            service:
              port: 80
          ```

          Full documentation can be found [here](https://ibm.github.io/varnish-operator/)
        displayName: Varnish Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - varnish
        - cache
        links:
        - name: Varnish Operator Docs
          url: https://ibm.github.io/varnish-operator
        - name: Varnish Operator Source Code
          url: https://github.com/IBM/varnish-operator
        maintainers:
        - email: tomash.sidei@ibm.com
          name: Tomash Sidei
        - email: cingram@us.ibm.com
          name: Craig Ingram
        maturity: alpha
        provider:
          name: IBM
          url: https://www.ibm.com/
        relatedImages:
        - ibmcom/varnish-operator:0.27.2
        - quay.io/openshift-community-operators/varnish-operator@sha256:46de72c5abad80cef3d6426be967131c51c2c15029a6a38744975578c805a44e
        version: 0.27.2
      entries:
      - name: varnish-operator.v0.27.2
        version: 0.27.2
      name: alpha
    defaultChannel: alpha
    packageName: varnish-operator
    provider:
      name: IBM
      url: https://www.ibm.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: clusterresourceoverride
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clusterresourceoverride-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.autoscaling.openshift.io/v1",
                "kind": "ClusterResourceOverride",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "podResourceOverride": {
                    "spec": {
                      "memoryRequestToLimitPercent": 50,
                      "cpuRequestToLimitPercent": 25,
                      "limitCPUToMemoryPercent": 200
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certifiedLevel: Primed
          containerImage: registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9-operator@sha256:549a0aa3c79b04c5443f5c75d41d6b2af8cfb4bc1efd90268760f944ffc6b215
          createdAt: 2019/11/15
          description: An operator to manage the OpenShift ClusterResourceOverride
            Mutating Admission Webhook Server
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          healthIndex: B
          olm.skipRange: '>=4.3.0 <4.20.0-202512081147'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/cluster-resource-override-admission-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an instance of ClusterResourceOverride Admission
              Webhook
            displayName: ClusterResourceOverride
            kind: ClusterResourceOverride
            name: clusterresourceoverrides.operator.autoscaling.openshift.io
            version: v1
        description: "ClusterResourceOverride\n==============\n\nContainers can specify
          compute resource requests and limits. Requests are used for scheduling your
          container and provide a minimum service guarantee. Limits constrain the
          amount of compute resource that may be consumed on your node.\n\nThe scheduler
          attempts to optimize the compute resource use across all nodes in your cluster.
          It places pods onto specific nodes, taking the pods' compute resource requests
          and nodes' available capacity into consideration.\n\nRequests and limits
          enable administrators to allow and manage the overcommitment of resources
          on a node, which may be desirable in development environments where a trade
          off of guaranteed performance for capacity is acceptable.\n\n### Requests
          and Limits\n\nFor each compute resource, a container may specify a resource
          request and limit. Scheduling decisions are made based on the request to
          ensure that a node has enough capacity available to meet the requested value.
          If a container specifies limits, but omits requests, the requests are defaulted
          to the limits. A container is not able to exceed the specified limit on
          the node.\n\nThe enforcement of limits is dependent upon the compute resource
          type. If a container makes no request or limit, the container is scheduled
          to a node with no resource guarantees. In practice, the container is able
          to consume as much of the specified resource as is available with the lowest
          local priority. In low resource situations, containers that specify no resource
          requests are given the lowest quality of service.\n\n### Compute Resources\n\nThe
          node-enforced behavior for compute resources is specific to the resource
          type.\n\n#### CPU\n\nA container is guaranteed the amount of CPU it requests
          and is additionally able to consume excess CPU available on the node, up
          to any limit specified by the container. If multiple containers are attempting
          to use excess CPU, CPU time is distributed based on the amount of CPU requested
          by each container.\n\nFor example, if one container requested 500m of CPU
          time and another container requested 250m of CPU time, then any extra CPU
          time available on the node is distributed among the containers in a 2:1
          ratio. If a container specified a limit, it will be throttled not to use
          more CPU than the specified limit.\n\nCPU requests are enforced using the
          CFS shares support in the Linux kernel. By default, CPU limits are enforced
          using the CFS quota support in the Linux kernel over a 100ms measuring interval,
          though this can be disabled.\n\n#### Memory\n\nA container is guaranteed
          the amount of memory it requests. A container may use more memory than requested,
          but once it exceeds its requested amount, it could be killed in a low memory
          situation on the node.\n\nIf a container uses less memory than requested,
          it will not be killed unless system tasks or daemons need more memory than
          was accounted for in the node’s resource reservation. If a container specifies
          a limit on memory, it is immediately killed if it exceeds the limit amount.\n\n###
          Configuring the Cluster for Overcommitment\n\nScheduling is based on resources
          requested, while quota and hard limits refer to resource limits, which can
          be set higher than requested resources. The difference between request and
          limit determines the level of overcommit; for instance, if a container is
          given a memory request of 1Gi and a memory limit of 2Gi, it is scheduled
          based on the 1Gi request being available on the node, but could use up to
          2Gi; so it is 200% overcommitted. If OpenShift Container Platform administrators
          would like to control the level of overcommit and manage container density
          on nodes, ClusterResourceOverride Admission Webhook can be configured to
          override the ratio between request and limit set on developer containers.
          In conjunction with a per-project LimitRange specifying limits and defaults,
          this adjusts the container limit and request to achieve the desired level
          of overcommit.\n\nThis requires creating a custom resource of `ClusterResourceOverride`
          type as in the following example:\n\n    \n    - apiVersion: operator.autoscaling.openshift.io/v1\n
          \   - kind: ClusterResourceOverride\n    - metadata:\n    -   name: cluster\n
          \   - spec:\n    -   podResourceOverride:\n    -     spec:\n    -       memoryRequestToLimitPercent:
          25\n    -       cpuRequestToLimitPercent: 25\n    -       limitCPUToMemoryPercent:
          200\n    \n **memoryRequestToLimitPercent**: (optional, 1-100) If a container
          memory limit has been specified or defaulted, the memory request is overridden
          to this percentage of the limit.\n\n **cpuRequestToLimitPercent**: (optional,
          1-100) If a container CPU limit has been specified or defaulted, the CPU
          request is overridden to this percentage of the limit.\n\n **limitCPUToMemoryPercent**:
          (optional, positive integer) If a container memory limit has been specified
          or defaulted, the CPU limit is overridden to a percentage of the memory
          limit, with a 100 percentage scaling 1Gi of RAM to equal 1 CPU core. This
          is processed prior to overriding CPU request (if configured).\n\n Note that
          these overrides have no effect if no limits have been set on containers.
          [Create a LimitRange object] (https://docs.openshift.com/container-platform/3.3/admin_guide/limits.html#admin-guide-limits)
          with default limits (per individual project, or in the [project template](https://docs.openshift.com/container-platform/3.3/admin_guide/managing_projects.html#modifying-the-template-for-new-projects))
          in order to ensure that the overrides apply.\n\nWhen configured, overrides
          can be enabled per-project by applying the following label.\n    ```\n    clusterresourceoverrides.admission.autoscaling.openshift.io/enabled:
          \"true\"\n    ```\n\n"
        displayName: ClusterResourceOverride Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - deschedule
        - scale
        - binpack
        - efficiency
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-operator-bundle@sha256:c5f8be89116c08822005cd5026a7fa5b9c6ccf706a076ff6b0a3bd3c1991102c
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9-operator@sha256:549a0aa3c79b04c5443f5c75d41d6b2af8cfb4bc1efd90268760f944ffc6b215
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9@sha256:688729db8a70fa8e3a37a1a00f62dad124b6b6f9c90e46503873bbf40a066225
        version: 4.20.0-202512081147
      entries:
      - name: clusterresourceoverride-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: clusterresourceoverride-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: clusterresourceoverride-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: clusterresourceoverride-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: clusterresourceoverride-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: clusterresourceoverride-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: clusterresourceoverride-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: clusterresourceoverride
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: sriov-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sriov-network-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovIBNetwork",
                "metadata": {
                  "name": "example-sriovibnetwork",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"host-local\",\n  \"subnet\": \"10.56.217.0/24\",\n  \"rangeStart\": \"10.56.217.171\",\n  \"rangeEnd\": \"10.56.217.181\",\n  \"routes\": [{\n    \"dst\": \"0.0.0.0/0\"\n  }],\n  \"gateway\": \"10.56.217.1\"\n}\n",
                  "linkState": "auto",
                  "networkNamespace": "default",
                  "resourceName": "mellanoxnics"
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetwork",
                "metadata": {
                  "name": "example-sriovnetwork",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"host-local\",\n  \"subnet\": \"10.56.217.0/24\",\n  \"rangeStart\": \"10.56.217.171\",\n  \"rangeEnd\": \"10.56.217.181\",\n  \"routes\": [{\n    \"dst\": \"0.0.0.0/0\"\n  }],\n  \"gateway\": \"10.56.217.1\"\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "intelnics",
                  "spoofChk": "on",
                  "trust": "off",
                  "vlan": 0
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetworkNodePolicy",
                "metadata": {
                  "name": "policy-1",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "deviceType": "vfio-pci",
                  "mtu": 9000,
                  "nicSelector": {
                    "pfNames": [
                      "eth1"
                    ],
                    "rootDevices": [
                      "0000:01:00.1"
                    ],
                    "vendor": "8086"
                  },
                  "nodeSelector": {
                    "feature.node.kubernetes.io/network-sriov.capable": "true"
                  },
                  "numVfs": 6,
                  "priority": 99,
                  "resourceName": "intelnics"
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetworkNodeState",
                "metadata": {
                  "name": "minikube",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "interfaces": []
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetworkPoolConfig",
                "metadata": {
                  "name": "sriovnetworkpoolconfig-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovOperatorConfig",
                "metadata": {
                  "name": "default",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "enableInjector": true,
                  "enableOperatorWebhook": true,
                  "logLevel": 2
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-sriov-network-rhel9-operator@sha256:c4b91f426ee2ca995472dc03e04276cab57e1edf01e7af7a57b360c1b0ec5bd0
          createdAt: "2025-08-05T11:50:34Z"
          description: An operator for configuring SR-IOV components and initializing
            SRIOV network devices in Openshift cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.3.0-0 <4.20.0-202512081147'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "sriovnetwork.openshift.io/v1",
              "kind": "SriovOperatorConfig",
              "metadata": {
                "name": "default"
              },
              "spec": {
                "configurationMode": "daemon",
                "disableDrain": false,
                "enableInjector": true,
                "enableOperatorWebhook": true,
                "logLevel": 2,
                "featureGates": {
                    "resourceInjectorMatchCondition": true
                }
              }
            }
          operatorframework.io/suggested-namespace: openshift-sriov-network-operator
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-sriov-network-operator",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/internal-objects: '["sriovnetworknodestates.sriovnetwork.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/k8snetworkplumbingwg/sriov-network-operator
          support: Red Hat
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OVSNetwork is the Schema for the ovsnetworks API
            displayName: OVSNetwork
            kind: OVSNetwork
            name: ovsnetworks.sriovnetwork.openshift.io
            version: v1
          - description: SriovIBNetwork is the Schema for the sriovibnetworks API
            displayName: Sriov IBNetwork
            kind: SriovIBNetwork
            name: sriovibnetworks.sriovnetwork.openshift.io
            version: v1
          - description: SriovNetworkNodePolicy is the Schema for the sriovnetworknodepolicies
              API
            displayName: Sriov Network Node Policy
            kind: SriovNetworkNodePolicy
            name: sriovnetworknodepolicies.sriovnetwork.openshift.io
            version: v1
          - description: SriovNetworkNodeState is the Schema for the sriovnetworknodestates
              API
            displayName: Sriov Network Node State
            kind: SriovNetworkNodeState
            name: sriovnetworknodestates.sriovnetwork.openshift.io
            version: v1
          - kind: SriovNetworkPoolConfig
            name: sriovnetworkpoolconfigs.sriovnetwork.openshift.io
            version: v1
          - description: SriovNetwork is the Schema for the sriovnetworks API
            displayName: Sriov Network
            kind: SriovNetwork
            name: sriovnetworks.sriovnetwork.openshift.io
            version: v1
          - description: SriovOperatorConfig is the Schema for the sriovoperatorconfigs
              API
            displayName: Sriov Operator Config
            kind: SriovOperatorConfig
            name: sriovoperatorconfigs.sriovnetwork.openshift.io
            version: v1
        description: |
          # SR-IOV Network Operator for Openshift

          ## Introduction
          The sriov-network-operator is generally responsible for configuring the sriov components in a openshift cluster.

          ### Supported Features
          * Initialize the SR-IOV NICs on nodes.
          * provision SR-IOV device plugin on selected node.
          * provision SR-IOV CNI plugin on selected nodes.
          * manage configuration of SR-IOV device plugin.
          * generate net-att-def CRs for SR-IOV CNI plugin.

          This operator has to run in namespace 'openshift-sriov-network-operator'. An Operator Group is also required to install this operator:

          ```
          $ oc create namespace openshift-sriov-network-operator

          $ oc create -f - <<EOF
          apiVersion: operators.coreos.com/v1
          kind: OperatorGroup
          metadata:
            name: sriov-network-operators
            namespace: openshift-sriov-network-operator
          spec:
            targetNamespaces:
            - openshift-sriov-network-operator
          EOF
          ```
        displayName: SR-IOV Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - network
        - sr-iov
        - sriov
        links:
        - name: Source Code
          url: https://github.com/k8snetworkplumbingwg/sriov-network-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-sriov-infiniband-cni-rhel9@sha256:b423a3dca275e650fd498e6ca928c9d3c6bd1744c03986d30fb8775f04609b39
        - registry.redhat.io/openshift4/ose-sriov-network-config-daemon-rhel9@sha256:e912e692c32a70f22c34360ca8e8960bdf40bc141f54c5782da3380b972b62ff
        - registry.redhat.io/openshift4/ose-sriov-network-device-plugin-rhel9@sha256:6508614560de3d333fe93d7c72e6b6a1fffb4b5fd75632bf74fc686eb9deaf80
        - registry.redhat.io/openshift4/ose-sriov-network-metrics-exporter-rhel9@sha256:41b94f5b270e5d57b2130de47b0fa25796bfcf64c4dc771058ca0cd433404c05
        - registry.redhat.io/openshift4/ose-sriov-dp-admission-controller-rhel9@sha256:f14abff38a42cb72299e58b957c6f0f09af5182208800a4a6ed55e57e4ab5f28
        - registry.redhat.io/openshift4/ose-sriov-network-operator-bundle@sha256:b85986a39227398c90a8f178da7859900b5eb09e5e77949ca698e8a675904195
        - registry.redhat.io/openshift4/ose-sriov-network-rhel9-operator@sha256:c4b91f426ee2ca995472dc03e04276cab57e1edf01e7af7a57b360c1b0ec5bd0
        - registry.redhat.io/openshift4/ose-sriov-network-webhook-rhel9@sha256:6b23062ab592c3776ff7207ce7caed878474566033e45e377a893c4bac01de82
        - registry.redhat.io/openshift4/ose-sriov-rdma-cni-rhel9@sha256:276e01d4ce0e9407f5f67e015af36ec552f61303fbb7b2d45de5beacdc417937
        - registry.redhat.io/openshift4/sriov-cni-rhel9@sha256:6a3b0070b671a818f094f78073279669c9646ebdc668f7099e44d007380b6060
        version: 4.20.0-202512081147
      entries:
      - name: sriov-network-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: sriov-network-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: sriov-network-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: sriov-network-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: sriov-network-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: sriov-network-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: sriov-network-operator.v4.20.0-202509262224
        version: 4.20.0-202509262224
      name: stable
    defaultChannel: stable
    packageName: sriov-network-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-iam-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-iam-controller.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "Role",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "Group",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "OpenIDConnectProvider",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "Policy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/iam-controller:1.6.0
          createdAt: "2025-11-29T04:48:58Z"
          description: AWS IAM controller is a service controller for managing IAM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Group represents the state of an AWS iam Group resource.
            displayName: Group
            kind: Group
            name: groups.iam.services.k8s.aws
            version: v1alpha1
          - description: InstanceProfile represents the state of an AWS iam InstanceProfile
              resource.
            displayName: InstanceProfile
            kind: InstanceProfile
            name: instanceprofiles.iam.services.k8s.aws
            version: v1alpha1
          - description: OpenIDConnectProvider represents the state of an AWS iam
              OpenIDConnectProvider resource.
            displayName: OpenIDConnectProvider
            kind: OpenIDConnectProvider
            name: openidconnectproviders.iam.services.k8s.aws
            version: v1alpha1
          - description: Policy represents the state of an AWS iam Policy resource.
            displayName: Policy
            kind: Policy
            name: policies.iam.services.k8s.aws
            version: v1alpha1
          - description: Role represents the state of an AWS iam Role resource.
            displayName: Role
            kind: Role
            name: roles.iam.services.k8s.aws
            version: v1alpha1
          - description: ServiceLinkedRole represents the state of an AWS iam ServiceLinkedRole
              resource.
            displayName: ServiceLinkedRole
            kind: ServiceLinkedRole
            name: servicelinkedroles.iam.services.k8s.aws
            version: v1alpha1
          - description: User represents the state of an AWS iam User resource.
            displayName: User
            kind: User
            name: users.iam.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Identity and Access Management (IAM) resources in AWS from within your Kubernetes cluster.

          **About Amazon IAM**

          AWS Identity and Access Management (IAM) is a web service that helps you securely control access to AWS resources. You use IAM to control who is authenticated (signed in) and authorized (has permissions) to use resources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon IAM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - iam
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon IAM Developer Resources
          url: https://aws.amazon.com/iam/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: iam maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/iam-controller:1.6.0
        - quay.io/community-operator-pipeline-prod/ack-iam-controller@sha256:372c8ffd7d949547362a8bf6241b7d3a472190820a12cfddb3c685b85afd1ca7
        version: 1.6.0
      entries:
      - name: ack-iam-controller.v1.6.0
        version: 1.6.0
      - name: ack-iam-controller.v1.5.4
        version: 1.5.4
      - name: ack-iam-controller.v1.5.3
        version: 1.5.3
      - name: ack-iam-controller.v1.5.2
        version: 1.5.2
      - name: ack-iam-controller.v1.5.1
        version: 1.5.1
      - name: ack-iam-controller.v1.5.0
        version: 1.5.0
      - name: ack-iam-controller.v1.4.4
        version: 1.4.4
      - name: ack-iam-controller.v1.4.3
        version: 1.4.3
      - name: ack-iam-controller.v1.4.2
        version: 1.4.2
      - name: ack-iam-controller.v1.4.1
        version: 1.4.1
      - name: ack-iam-controller.v1.4.0
        version: 1.4.0
      - name: ack-iam-controller.v1.3.22
        version: 1.3.22
      - name: ack-iam-controller.v1.3.21
        version: 1.3.21
      - name: ack-iam-controller.v1.3.20
        version: 1.3.20
      - name: ack-iam-controller.v1.3.19
        version: 1.3.19
      - name: ack-iam-controller.v1.3.18
        version: 1.3.18
      - name: ack-iam-controller.v1.3.17
        version: 1.3.17
      - name: ack-iam-controller.v1.3.15
        version: 1.3.15
      - name: ack-iam-controller.v1.3.14
        version: 1.3.14
      - name: ack-iam-controller.v1.3.13
        version: 1.3.13
      - name: ack-iam-controller.v1.3.12
        version: 1.3.12
      - name: ack-iam-controller.v1.3.11
        version: 1.3.11
      - name: ack-iam-controller.v1.3.10
        version: 1.3.10
      - name: ack-iam-controller.v1.3.9
        version: 1.3.9
      - name: ack-iam-controller.v1.3.8
        version: 1.3.8
      - name: ack-iam-controller.v1.3.6
        version: 1.3.6
      - name: ack-iam-controller.v1.3.2
        version: 1.3.2
      - name: ack-iam-controller.v1.3.1
        version: 1.3.1
      - name: ack-iam-controller.v1.3.0
        version: 1.3.0
      - name: ack-iam-controller.v1.2.6
        version: 1.2.6
      - name: ack-iam-controller.v1.2.5
        version: 1.2.5
      - name: ack-iam-controller.v1.2.3
        version: 1.2.3
      - name: ack-iam-controller.v1.2.2
        version: 1.2.2
      - name: ack-iam-controller.v1.2.1
        version: 1.2.1
      - name: ack-iam-controller.v1.2.0
        version: 1.2.0
      - name: ack-iam-controller.v1.1.3
        version: 1.1.3
      - name: ack-iam-controller.v1.1.2
        version: 1.1.2
      - name: ack-iam-controller.v1.1.1
        version: 1.1.1
      - name: ack-iam-controller.v1.1.0
        version: 1.1.0
      - name: ack-iam-controller.v1.0.0
        version: 1.0.0
      - name: ack-iam-controller.v0.1.2
        version: 0.1.2
      - name: ack-iam-controller.v0.1.1
        version: 0.1.1
      - name: ack-iam-controller.v0.1.0
        version: 0.1.0
      - name: ack-iam-controller.v0.0.22
        version: 0.0.22
      - name: ack-iam-controller.v0.0.21
        version: 0.0.21
      - name: ack-iam-controller.v0.0.20
        version: 0.0.20
      - name: ack-iam-controller.v0.0.19
        version: 0.0.19
      - name: ack-iam-controller.v0.0.18
        version: 0.0.18
      - name: ack-iam-controller.v0.0.17
        version: 0.0.17
      - name: ack-iam-controller.v0.0.16
        version: 0.0.16
      - name: ack-iam-controller.v0.0.15
        version: 0.0.15
      - name: ack-iam-controller.v0.0.14
        version: 0.0.14
      - name: ack-iam-controller.v0.0.13
        version: 0.0.13
      - name: ack-iam-controller.v0.0.12
        version: 0.0.12
      - name: ack-iam-controller.v0.0.11
        version: 0.0.11
      - name: ack-iam-controller.v0.0.10
        version: 0.0.10
      - name: ack-iam-controller.v0.0.9
        version: 0.0.9
      - name: ack-iam-controller.v0.0.8
        version: 0.0.8
      - name: ack-iam-controller.v0.0.7
        version: 0.0.7
      - name: ack-iam-controller.v0.0.6
        version: 0.0.6
      - name: ack-iam-controller.v0.0.5
        version: 0.0.5
      - name: ack-iam-controller.v0.0.4
        version: 0.0.4
      - name: ack-iam-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-iam-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://www.medik8s.io/
    name: self-node-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: self-node-remediation.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediation",
                "metadata": {
                  "name": "selfnoderemediation-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationConfig",
                "metadata": {
                  "name": "self-node-remediation-config",
                  "namespace": "self-node-remediation"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationTemplate",
                "metadata": {
                  "name": "selfnoderemediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/self-node-remediation-operator:v0.11.0
          createdAt: "2025-11-24 11:26:35"
          description: Self Node Remediation Operator for remediate itself in case
            of a failure.
          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.skipRange: '>=0.4.0 <0.11.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/self-node-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SelfNodeRemediationConfig is the Schema for the selfnoderemediationconfigs
              API in which a user can configure the self node remediation agents
            displayName: Self Node Remediation Config
            kind: SelfNodeRemediationConfig
            name: selfnoderemediationconfigs.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediation is the Schema for the selfnoderemediations
              API
            displayName: Self Node Remediation
            kind: SelfNodeRemediation
            name: selfnoderemediations.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediationTemplate is the Schema for the selfnoderemediationtemplates
              API
            displayName: Self Node Remediation Template
            kind: SelfNodeRemediationTemplate
            name: selfnoderemediationtemplates.self-node-remediation.medik8s.io
            version: v1alpha1
        description: This self node remediation operator is using an alternate mechanism
          for a node in a cluster to detect its health status and take actions to
          remediate itself in case of a failure. While not all remediation events
          can result in the node returning to a healthy state, the operator does allow
          surviving parts of the cluster to assume the node has reached a safe state
          so that it’s workloads can be automatically recovered. A prerequisite for
          the Self Node Remediation operator is a functioning health detection system
          that implements the external remediation API, such as Node Health Check
          Operator or Machine Health Check Controller (in OCP or Cluster-API based
          clusters). Once a node/machine is unhealthy, the detection system will create
          the SelfNodeRemediation CR, which triggers the Self Node Remediation Operator.
          For this the configuration of the health detection system needs to refer
          to a SelfNodeRemediationTemplate CR. Such a template is created by default
          in the operator's namespace, for usage in other namespaces it needs to be
          created manually. The Node Health Check Operator is configured to use Self
          Node Remediation by default.
        displayName: Self Node Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - fencing
        - remediation
        - auto-healing
        - recovery
        - high-availability
        - baremetal
        - SNR
        links:
        - name: Self Node Remediation
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/self-node-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Medik8s
          url: https://www.medik8s.io/
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/self-node-remediation@sha256:f47ab630017f6eb3884af3bb5e134f3e71a44d99fddbdf261addf2e3b755a6c9
        - quay.io/medik8s/self-node-remediation-operator:v0.11.0
        version: 0.11.0
      entries:
      - name: self-node-remediation.v0.11.0
        version: 0.11.0
      - name: self-node-remediation.v0.10.0
        version: 0.10.0
      - name: self-node-remediation.v0.9.0
        version: 0.9.0
      - name: self-node-remediation.v0.8.0
        version: 0.8.0
      - name: self-node-remediation.v0.7.1
        version: 0.7.1
      - name: self-node-remediation.v0.7.0
        version: 0.7.0
      - name: self-node-remediation.v0.6.1
        version: 0.6.1
      - name: self-node-remediation.v0.6.0
        version: 0.6.0
      - name: self-node-remediation.v0.5.0
        version: 0.5.0
      - name: self-node-remediation.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: self-node-remediation
    provider:
      name: Medik8s
      url: https://www.medik8s.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Airlock
      provider-url: ""
    name: airlock-microgateway
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: airlock-microgateway.v4.5.9
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControl","metadata":{"name":"access-control-example"},"spec":{"policies":[{"requestConditions":{"path":{"matcher":{"exact":"/secure"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}},{"oidc":{"claim":{"name":"roles","value":{"matcher":{"contains":"\"admin\""}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"oidc-example"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"authorization":{}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"secured"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/test/"}}},"authorization":{"requireAny":[{"oidc":{"claim":{"name":"roles","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"group","value":{"matcher":{"exact":"superusers"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-1"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-metadata"}},{"identityPropagationRef":{"name":"test-header-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"exact":"/public"}}},"authorization":{}},{"requestConditions":{"path":{"matcher":{"regex":"^/api/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name"}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-defaults"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-oidc-idtoken"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-bearertoken-metadata"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-idtoken"}}],"onFailure":"Pass"}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurity","metadata":{"name":"content-security-example"},"spec":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-example-1"},"spec":{"value":{"name":"ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-http-filter-example-1"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}}}}},"defaults":{"sessionHandlingRef":{"name":"session-handling-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with TLS information of the downstream connection to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"defaultTimeouts":{"lifetime":"16h"},"prefix":"session_prefix_example"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SidecarGateway","metadata":{"name":"sidecar-gateway-example"},"spec":{"podSelector":{"matchLabels":{"app":"example-app"}},"sessionHandlingRef":{"name":"session-handling-example"},"applications":[{"containerPort":8443,"routes":[{"pathPrefix":"/metrics","unsecured":{}},{"pathPrefix":"/","secured":{"accessControlRef":{"name":"access-control-example"},"contentSecurityRef":{"name":"content-security-example"}}}],"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}},"restrictions":{"http":{"headersLength":"80Ki"}},"protocol":{"auto":{}},"tls":{"enable":true,"secretRef":{"name":"example-tls-secret"},"protocol":{"minimum":"TLSv1_3"},"clientCertificate":{"ignored":{}},"xfcc":"AlwaysForwardOnly"}},"upstream":{"tls":{"enable":true,"protocol":{"minimum":"TLSv1_2"}}},"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-http-filter-example-1"}]},"telemetryRef":{"name":"telemetry-example"}}],"envoyClusterRefs":[{"name":"envoy-cluster-example-1"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-11-26T12:58:13Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: AccessControl
            name: accesscontrols.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurity
            name: contentsecurities.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: SidecarGateway
            name: sidecargateways.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000056)
          * Gateway API
          * (Optional) Airlock Microgateway CNI (Required for [data plane mode sidecar](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000137)).

          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
          2. Check your inbox and save the license file microgateway-license.txt locally.

          *See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000056) to choose the right license type.*

          ### Install Gateway API standard channel
          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ### (Optional) Install Airlock Microgateway CNI
          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          Refer to [our documentation](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000140) for installation instructions

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD_MONITOR\_CREATE | "false" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.5/
        - name: Airlock Microgateway Labs
          url: https://play.instruqt.com/airlock/invite/hyi9fy4b4jzc?icp_referrer=openshift
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:552204cfe7419d394d9eccc8a14135606c412294fc300d95c73373dc5fe54bbe
        - registry.connect.redhat.com/airlock/microgateway@sha256:7693e3131582fe96c85812e20914ef77eead098d314bcee71e52d8cf0f02fcd9
        version: 4.5.9
      entries:
      - name: airlock-microgateway.v4.5.9
        version: 4.5.9
      - name: airlock-microgateway.v4.5.8
        version: 4.5.8
      - name: airlock-microgateway.v4.5.7
        version: 4.5.7
      - name: airlock-microgateway.v4.5.6
        version: 4.5.6
      - name: airlock-microgateway.v4.5.5
        version: 4.5.5
      - name: airlock-microgateway.v4.5.4
        version: 4.5.4
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.5"
    - currentCSV: airlock-microgateway.v4.6.7
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControl","metadata":{"name":"access-control-example"},"spec":{"policies":[{"requestConditions":{"path":{"matcher":{"exact":"/secure"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}},{"oidc":{"claim":{"name":"roles","value":{"matcher":{"contains":"\"admin\""}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"oidc-example"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"tokenExchange":{"onFailure":"Block","actions":[{"tokenExchangeRef":{"name":"token-exchange-example"}}]},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"jwt-example"}}}}},{"authorization":{}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"secured"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/test/"}}},"authorization":{"requireAny":[{"oidc":{"claim":{"name":"roles","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"group","value":{"matcher":{"exact":"superusers"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-1"}}}},"tokenExchange":{"onFailure":"Block","actions":[{"tokenExchangeRef":{"name":"test-token-exchange"}}]},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-metadata"}},{"identityPropagationRef":{"name":"test-header-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"exact":"/public"}}},"authorization":{}},{"requestConditions":{"path":{"matcher":{"regex":"^/api/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name"}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-defaults"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-oidc-idtoken"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-bearertoken-metadata"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-idtoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurity","metadata":{"name":"content-security-example"},"spec":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-example-1"},"spec":{"value":{"name":"ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-http-filter-example-1"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}}}}},"defaults":{"sessionHandlingRef":{"name":"session-handling-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with TLS information of the downstream connection to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"defaultTimeouts":{"lifetime":"16h"},"prefix":"session_prefix_example"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SidecarGateway","metadata":{"name":"sidecar-gateway-example"},"spec":{"podSelector":{"matchLabels":{"app":"example-app"}},"sessionHandlingRef":{"name":"session-handling-example"},"applications":[{"containerPort":8443,"routes":[{"pathPrefix":"/metrics","unsecured":{}},{"pathPrefix":"/","secured":{"accessControlRef":{"name":"access-control-example"},"contentSecurityRef":{"name":"content-security-example"}}}],"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}},"restrictions":{"http":{"headersLength":"80Ki"}},"protocol":{"auto":{}},"tls":{"enable":true,"secretRef":{"name":"example-tls-secret"},"protocol":{"minimum":"TLSv1_3"},"clientCertificate":{"ignored":{}},"xfcc":"AlwaysForwardOnly"}},"upstream":{"tls":{"enable":true,"protocol":{"minimum":"TLSv1_2"}}},"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-http-filter-example-1"}]},"telemetryRef":{"name":"telemetry-example"}}],"envoyClusterRefs":[{"name":"envoy-cluster-example-1"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-10T09:11:36Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: AccessControl
            name: accesscontrols.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurity
            name: contentsecurities.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: SidecarGateway
            name: sidecargateways.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000056)
          * Gateway API
          * (Optional) Airlock Microgateway CNI (Required for [data plane mode sidecar](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000137)).

          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
          2. Check your inbox and save the license file microgateway-license.txt locally.

          *See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000056) to choose the right license type.*

          ### Install Gateway API standard channel
          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.3.0/standard-install.yaml
          ```

          ### (Optional) Install Airlock Microgateway CNI
          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          Refer to [our documentation](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000140) for installation instructions

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD_MONITOR\_CREATE | "false" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.6/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:f7f171ed5f8a72313942d5a1fae8720d41bd753f9a43a63980d96d63d853fa90
        - registry.connect.redhat.com/airlock/microgateway@sha256:4af539fc7ca699e082914e73b886ea5e851259ddb1b9afaa18693669f4b0bbb6
        version: 4.6.7
      entries:
      - name: airlock-microgateway.v4.6.7
        version: 4.6.7
      - name: airlock-microgateway.v4.6.6
        version: 4.6.6
      - name: airlock-microgateway.v4.6.5
        version: 4.6.5
      - name: airlock-microgateway.v4.6.4
        version: 4.6.4
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.6"
    - currentCSV: airlock-microgateway.v4.7.5
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"secured"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/test/"}}},"authorization":{"requireAny":[{"oidc":{"claim":{"name":"roles","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"group","value":{"matcher":{"exact":"superusers"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-1"}}}},"tokenExchange":{"onFailure":"Block","actions":[{"tokenExchangeRef":{"name":"test-token-exchange"}}]},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-metadata"}},{"identityPropagationRef":{"name":"test-header-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"exact":"/public"}}},"authorization":{}},{"requestConditions":{"path":{"matcher":{"regex":"^/api/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name"}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-defaults"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-oidc-idtoken"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-bearertoken-metadata"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-idtoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-ext-authz","namespace":"default"},"spec":{"value":{"name":"envoycluster/default/envoy-cluster-ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyExtensionPolicy","metadata":{"name":"envoy-extension-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-httpfilter-ext-authz"}],"append":[{"name":"lua-transform-request"}]},"envoyClusterRefs":[{"name":"envoy-cluster-ext-authz"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-httpfilter-ext-authz"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"envoycluster/default/envoy-cluster-ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"volumes":[{"name":"vol-1","emptyDir":{}}],"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"volumeMounts":[{"name":"vol-1","mountPath":"/tmp/data"}]}}},"defaults":{"sessionHandlingRef":{"name":"session-handling-example"},"telemetryRef":{"name":"telemetry-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with TLS information of the downstream connection to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"mode":"Enforce","persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"defaultTimeouts":{"idle":"30s","lifetime":"16h"},"prefix":"session_prefix_example","cookie":{"name":"SESS","attributes":{"domain":"example.org","path":"/","sameSite":"Strict","secure":true}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"},"session":{"id":"%SESSION_ID%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-10T12:05:46Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyExtensionPolicy
            name: envoyextensionpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.7/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ***Note:*** Sidecar-based data plane mode is *not* supported by this OLM Bundle.
          If you want to use the Sidecar-based data plane mode, use Helm instead. Please note that the Airlock Microgateway CNI and the Helm charts are not certified for RedHat OpenShift.
          Refer to https://github.com/airlock/microgateway for installation instruction with Helm.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.7/?topic=MGW-00000056)
          * [Gateway API](https://gateway-api.sigs.k8s.io/)

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
          2. Check your inbox and save the license file microgateway-license.txt locally.

          *See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.7/?topic=MGW-00000056) to choose the right license type.*

          ### Install Gateway API standard channel
          ***Note:*** *This step is only required for OpenShift versions below 4.19, as Gateway API is included by default in OpenShift 4.19+.*

          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD\_MONITOR\_CREATE | "true" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gateway API
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.7/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:cd453189f3f50fd20db7744f72e965cbdfc308abfec79a61ed97020aeb12baa2
        - registry.connect.redhat.com/airlock/microgateway@sha256:dd8c021d4333a3eec9360a336089d8984cf56fd0870f03d4e79cdd0f74da9cb6
        version: 4.7.5
      entries:
      - name: airlock-microgateway.v4.7.5
        version: 4.7.5
      - name: airlock-microgateway.v4.7.4
        version: 4.7.4
      - name: airlock-microgateway.v4.7.3
        version: 4.7.3
      - name: airlock-microgateway.v4.7.2
        version: 4.7.2
      - name: airlock-microgateway.v4.7.1
        version: 4.7.1
      - name: airlock-microgateway.v4.7.0
        version: 4.7.0
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.7"
    - currentCSV: airlock-microgateway.v4.8.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/secure"}}},"authorization":{"requireAll":[{"clientCertificate":{"hash":{"in":{"values":["69e4caf01b2b3490cd938b053274a2c9001c45c21b2cb58e3612c550568a42ca","df6ff72fe9116521268f6f2dd4966f51df479883fe7037b39f75916ac3049d1a"]}}}},{"clientCertificate":{"subject":{"field":"Organization","value":{"matcher":{"exact":"Company"}}}}},{"clientCertificate":{"san":{"type":"Email","value":{"matcher":{"suffix":"@company.com"}}}}}]}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/partner/"}}},"authorization":{"requireAll":[{"tokenExchange":{"claim":{"name":"group","value":{"matcher":{"exact":"partner"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"}}}},"tokenExchange":{"actions":[{"tokenExchangeRef":{"name":"token-exchange-example"}}]}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-example"},"spec":{"statusCode":400,"content":[{"contentType":"application/json","headers":[{"name":"X-Request-Id","value":"%STREAM_ID%"},{"name":"X-Some-Header","value":"some-value"}],"body":{"value":"{\n  \"error\":
            \"something went wrong\"\n}"}},{"contentType":"text/html","body":{"value":"<!DOCTYPE
            html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<title>Error</title>\n<style>\n  body
            {\n    font-family: Arial, Helvetica, sans-serif;\n    background-color:
            #222222;\n  }\n  h1 {\n    color: #aaaaaa;\n  }\n</style>\n</head>\n<body>\n<h1>Something
            went wrong!</h1>\n<p>Request ID: %STREAM_ID%</p>\n</body>\n</html>"}},{"contentType":"application/xml","body":{"valueFrom":{"configMapKeyRef":{"name":"custom-response-example","key":"response.xml"}}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponsePolicy","metadata":{"name":"custom-response-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":{"local":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"api-401"}}]},{"requestConditions":{"path":{"matcher":{"prefix":"/default"}}},"responses":[]},{"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}]}],"upstream":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[]},{"responses":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]}]}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-redirect-404-example"},"spec":{"statusCode":302,"content":[{"contentType":"none/none","headers":[{"name":"Location","value":"https://company.com/error/404.html?request_id=%STREAM_ID%"}]}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-ext-authz","namespace":"default"},"spec":{"value":{"name":"envoycluster/default/envoy-cluster-ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyExtensionPolicy","metadata":{"name":"envoy-extension-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-httpfilter-ext-authz"}],"append":[{"name":"lua-transform-request"}]},"envoyClusterRefs":[{"name":"envoy-cluster-ext-authz"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-httpfilter-ext-authz"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"envoycluster/default/envoy-cluster-ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"volumes":[{"name":"vol-1","emptyDir":{}}],"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"volumeMounts":[{"name":"vol-1","mountPath":"/tmp/data"}],"securityContext":{"capabilities":{"add":["BPF"]}}}}},"defaults":{"customResponses":{"local":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}],"upstream":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]},"sessionHandlingRef":{"name":"session-handling-example"},"telemetryRef":{"name":"telemetry-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with downstream TLS connection information to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"bearerToken":{"source":{"jwt":{}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"mode":"Enforce","persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"prefix":"session_prefix_example","agent":{"logging":{"level":"debug"}},"defaultTimeouts":{"idle":"30s","lifetime":"16h"},"cookie":{"name":"SESS","attributes":{"domain":"example.org","path":"/","sameSite":"Strict","secure":true}},"limits":{"sessionsPerIP":{"thresholds":{"logging":1000,"blocking":1500},"exceptions":[{"remoteIP":{"cidrRanges":["192.168.0.0/16"]}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"},"session":{"id":"%SESSION_ID%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"},"tls":{"peer":{"issuer":"%UPSTREAM_PEER_ISSUER%","subject":"%UPSTREAM_PEER_SUBJECT%"}}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-11T08:40:33Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponsePolicy
            name: customresponsepolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponse
            name: customresponses.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyExtensionPolicy
            name: envoyextensionpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056)
          * [Gateway API](https://gateway-api.sigs.k8s.io/)

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          Airlock Microgateway requires a valid license. See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056) to choose the right license type.
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
                A license will be sent automatically within minutes.
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
                Your sales partner will contact you for licensing.
          2. Check your inbox and save the license file microgateway-license.txt locally.

          ### Deploy Airlock Microgateway License
          1. Create the `airlock-microgateway-system` namespace.

          ```console
          oc create project airlock-microgateway-system
          ```
          2. Create a Kubernetes secret with the name `airlock-microgateway-license` and the key `microgateway-license.txt` in the Microgateway Operator namespace to store the license.

          ```console
          oc create secret generic airlock-microgateway-license \
            -n airlock-microgateway-system \
            --from-file=microgateway-license.txt=<path-to-your-local-microgateway-license.txt>
          ```

          ### Install Gateway API standard channel
          ***Note:*** *This step is only required for OpenShift versions below 4.19, as Gateway API is included by default in OpenShift 4.19+.*

          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD\_MONITOR\_CREATE | "true" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gateway API
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.8/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:a0f546d8f705b8c1dd1051a431327bd89a52207ec8abaf236a9570037db5ac49
        - registry.connect.redhat.com/airlock/microgateway@sha256:0dfe84720ab96cbdb5d390d5b481eea05bc6aec9fb37207a8aada5c252aeed31
        version: 4.8.1
      entries:
      - name: airlock-microgateway.v4.8.1
        version: 4.8.1
      - name: airlock-microgateway.v4.8.0
        version: 4.8.0
      - name: airlock-microgateway.v4.7.4
        version: 4.7.4
      - name: airlock-microgateway.v4.7.3
        version: 4.7.3
      - name: airlock-microgateway.v4.7.2
        version: 4.7.2
      - name: airlock-microgateway.v4.7.1
        version: 4.7.1
      - name: airlock-microgateway.v4.7.0
        version: 4.7.0
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.8"
    - currentCSV: airlock-microgateway.v4.8.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/secure"}}},"authorization":{"requireAll":[{"clientCertificate":{"hash":{"in":{"values":["69e4caf01b2b3490cd938b053274a2c9001c45c21b2cb58e3612c550568a42ca","df6ff72fe9116521268f6f2dd4966f51df479883fe7037b39f75916ac3049d1a"]}}}},{"clientCertificate":{"subject":{"field":"Organization","value":{"matcher":{"exact":"Company"}}}}},{"clientCertificate":{"san":{"type":"Email","value":{"matcher":{"suffix":"@company.com"}}}}}]}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/partner/"}}},"authorization":{"requireAll":[{"tokenExchange":{"claim":{"name":"group","value":{"matcher":{"exact":"partner"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"}}}},"tokenExchange":{"actions":[{"tokenExchangeRef":{"name":"token-exchange-example"}}]}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-example"},"spec":{"statusCode":400,"content":[{"contentType":"application/json","headers":[{"name":"X-Request-Id","value":"%STREAM_ID%"},{"name":"X-Some-Header","value":"some-value"}],"body":{"value":"{\n  \"error\":
            \"something went wrong\"\n}"}},{"contentType":"text/html","body":{"value":"<!DOCTYPE
            html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<title>Error</title>\n<style>\n  body
            {\n    font-family: Arial, Helvetica, sans-serif;\n    background-color:
            #222222;\n  }\n  h1 {\n    color: #aaaaaa;\n  }\n</style>\n</head>\n<body>\n<h1>Something
            went wrong!</h1>\n<p>Request ID: %STREAM_ID%</p>\n</body>\n</html>"}},{"contentType":"application/xml","body":{"valueFrom":{"configMapKeyRef":{"name":"custom-response-example","key":"response.xml"}}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponsePolicy","metadata":{"name":"custom-response-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":{"local":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"api-401"}}]},{"requestConditions":{"path":{"matcher":{"prefix":"/default"}}},"responses":[]},{"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}]}],"upstream":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[]},{"responses":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]}]}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-redirect-404-example"},"spec":{"statusCode":302,"content":[{"contentType":"none/none","headers":[{"name":"Location","value":"https://company.com/error/404.html?request_id=%STREAM_ID%"}]}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-ext-authz","namespace":"default"},"spec":{"value":{"name":"envoycluster/default/envoy-cluster-ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyExtensionPolicy","metadata":{"name":"envoy-extension-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-httpfilter-ext-authz"}],"append":[{"name":"lua-transform-request"}]},"envoyClusterRefs":[{"name":"envoy-cluster-ext-authz"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-httpfilter-ext-authz"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"envoycluster/default/envoy-cluster-ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"volumes":[{"name":"vol-1","emptyDir":{}}],"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"volumeMounts":[{"name":"vol-1","mountPath":"/tmp/data"}],"securityContext":{"capabilities":{"add":["BPF"]}}}}},"defaults":{"customResponses":{"local":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}],"upstream":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]},"sessionHandlingRef":{"name":"session-handling-example"},"telemetryRef":{"name":"telemetry-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with downstream TLS connection information to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"bearerToken":{"source":{"jwt":{}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"mode":"Enforce","persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"prefix":"session_prefix_example","agent":{"logging":{"level":"debug"}},"defaultTimeouts":{"idle":"30s","lifetime":"16h"},"cookie":{"name":"SESS","attributes":{"domain":"example.org","path":"/","sameSite":"Strict","secure":true}},"limits":{"sessionsPerIP":{"thresholds":{"logging":1000,"blocking":1500},"exceptions":[{"remoteIP":{"cidrRanges":["192.168.0.0/16"]}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"},"session":{"id":"%SESSION_ID%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"},"tls":{"peer":{"issuer":"%UPSTREAM_PEER_ISSUER%","subject":"%UPSTREAM_PEER_SUBJECT%"}}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-11T08:40:33Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponsePolicy
            name: customresponsepolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponse
            name: customresponses.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyExtensionPolicy
            name: envoyextensionpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056)
          * [Gateway API](https://gateway-api.sigs.k8s.io/)

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          Airlock Microgateway requires a valid license. See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056) to choose the right license type.
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
                A license will be sent automatically within minutes.
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
                Your sales partner will contact you for licensing.
          2. Check your inbox and save the license file microgateway-license.txt locally.

          ### Deploy Airlock Microgateway License
          1. Create the `airlock-microgateway-system` namespace.

          ```console
          oc create project airlock-microgateway-system
          ```
          2. Create a Kubernetes secret with the name `airlock-microgateway-license` and the key `microgateway-license.txt` in the Microgateway Operator namespace to store the license.

          ```console
          oc create secret generic airlock-microgateway-license \
            -n airlock-microgateway-system \
            --from-file=microgateway-license.txt=<path-to-your-local-microgateway-license.txt>
          ```

          ### Install Gateway API standard channel
          ***Note:*** *This step is only required for OpenShift versions below 4.19, as Gateway API is included by default in OpenShift 4.19+.*

          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD\_MONITOR\_CREATE | "true" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gateway API
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.8/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:a0f546d8f705b8c1dd1051a431327bd89a52207ec8abaf236a9570037db5ac49
        - registry.connect.redhat.com/airlock/microgateway@sha256:0dfe84720ab96cbdb5d390d5b481eea05bc6aec9fb37207a8aada5c252aeed31
        version: 4.8.1
      entries:
      - name: airlock-microgateway.v4.8.1
        version: 4.8.1
      - name: airlock-microgateway.v4.8.0
        version: 4.8.0
      - name: airlock-microgateway.v4.7.4
        version: 4.7.4
      - name: airlock-microgateway.v4.7.3
        version: 4.7.3
      - name: airlock-microgateway.v4.7.2
        version: 4.7.2
      - name: airlock-microgateway.v4.7.1
        version: 4.7.1
      - name: airlock-microgateway.v4.7.0
        version: 4.7.0
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: stable
    defaultChannel: "4.8"
    packageName: airlock-microgateway
    provider:
      name: Airlock
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: MariaDB Corporation
      provider-url: ""
    name: mariadb-enterprise-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mariadb-enterprise-operator.v25.8.1-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup"
                },
                "spec": {
                  "args": [
                    "--single-transaction",
                    "--all-databases"
                  ],
                  "logLevel": "info",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "0 0 * * *",
                    "suspend": false
                  },
                  "stagingStorage": {
                    "persistentVolumeClaim": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "1Gi"
                        }
                      }
                    }
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "backups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Connection",
                "metadata": {
                  "name": "connection"
                },
                "spec": {
                  "database": "mariadb",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "secretName": "connection",
                  "secretTemplate": {
                    "key": "dsn"
                  },
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Database",
                "metadata": {
                  "name": "database"
                },
                "spec": {
                  "characterSet": "utf8",
                  "collate": "utf8_general_ci",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "name": "my-logical-database"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Grant",
                "metadata": {
                  "name": "grant"
                },
                "spec": {
                  "database": "*",
                  "grantOption": true,
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "privileges": [
                    "SELECT",
                    "INSERT",
                    "UPDATE"
                  ],
                  "table": "*",
                  "username": "my-user"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "MariaDB",
                "metadata": {
                  "name": "mariadb"
                },
                "spec": {
                  "connection": {
                    "secretName": "mariadb-conn",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "database": "mariadb",
                  "galera": {
                    "enabled": true
                  },
                  "metrics": {
                    "enabled": true,
                    "passwordSecretKeyRef": {
                      "generate": true,
                      "key": "password",
                      "name": "mariadb-metrics"
                    }
                  },
                  "myCnf": "[mariadb]\nbind-address=*\ndefault_storage_engine=InnoDB\nbinlog_format=row\ninnodb_autoinc_lock_mode=2\ninnodb_buffer_pool_size=1024M\nmax_allowed_packet=256M\n",
                  "passwordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-password"
                  },
                  "primaryConnection": {
                    "secretName": "mariadb-conn-primary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "primaryService": {
                    "type": "ClusterIP"
                  },
                  "replicas": 3,
                  "rootPasswordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-root"
                  },
                  "secondaryConnection": {
                    "secretName": "mariadb-conn-secondary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "secondaryService": {
                    "type": "ClusterIP"
                  },
                  "service": {
                    "type": "ClusterIP"
                  },
                  "storage": {
                    "size": "1Gi"
                  },
                  "updateStrategy": {
                    "type": "ReplicasFirstPrimaryLast"
                  },
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "MaxScale",
                "metadata": {
                  "name": "maxscale"
                },
                "spec": {
                  "admin": {
                    "guiEnabled": true,
                    "port": 8989
                  },
                  "auth": {
                    "adminPasswordSecretKeyRef": {
                      "generate": true,
                      "key": "password",
                      "name": "maxscale-admin"
                    },
                    "adminUsername": "mariadb-enterprise-operator",
                    "generate": true
                  },
                  "config": {
                    "sync": {
                      "database": "mysql",
                      "interval": "5s",
                      "timeout": "10s"
                    }
                  },
                  "connection": {
                    "port": 3306,
                    "secretName": "maxscale-conn",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "guiKubernetesService": {
                    "type": "ClusterIP"
                  },
                  "kubernetesService": {
                    "type": "ClusterIP"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "metrics": {
                    "enabled": true
                  },
                  "monitor": {
                    "cooperativeMonitoring": "majority_of_all",
                    "interval": "2s",
                    "params": {
                      "available_when_donor": "false",
                      "disable_master_failback": "false",
                      "disable_master_role_setting": "false"
                    }
                  },
                  "replicas": 2,
                  "requeueInterval": "10s",
                  "services": [
                    {
                      "listener": {
                        "port": 3306,
                        "protocol": "MariaDBProtocol"
                      },
                      "name": "rw-router",
                      "params": {
                        "transaction_replay": "true",
                        "transaction_replay_attempts": "10",
                        "transaction_replay_timeout": "5s"
                      },
                      "router": "readwritesplit"
                    }
                  ]
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "PhysicalBackup",
                "metadata": {
                  "name": "physicalbackup"
                },
                "spec": {
                  "compression": "bzip2",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "podAffinity": true,
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "0 0 * * *",
                    "immediate": true,
                    "suspend": false
                  },
                  "serviceAccountName": "backup",
                  "stagingStorage": {
                    "persistentVolumeClaim": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "1Gi"
                        }
                      }
                    }
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "physicalbackups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "region": "us-east-1",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  },
                  "timeout": "1h"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore"
                },
                "spec": {
                  "backupRef": {
                    "name": "backup"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "targetRecoveryTime": "2023-12-19T09:00:00Z"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "SqlJob",
                "metadata": {
                  "name": "sqljob"
                },
                "spec": {
                  "database": "mariadb",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "suspend": false
                  },
                  "sql": "CREATE TABLE IF NOT EXISTS orders (\n  id bigint PRIMARY KEY AUTO_INCREMENT,\n  customer_id INT,\n  order_date DATE,\n  total_amount_cents INT\n);\nINSERT INTO orders (customer_id, order_date, total_amount_cents) VALUES\n  (101, '2024-05-15', 5000),\n  (102, '2024-05-14', 7525),\n  (103, '2024-05-13', 10050),\n  (104, '2024-05-12', 2575);",
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "user"
                },
                "spec": {
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxUserConnections": 20,
                  "name": "my-user",
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: docker.mariadb.com/mariadb-enterprise-operator@sha256:1effbbfa7632be92c17ef61c18a25f010b187840beec42c31d2410d0209e6985
          createdAt: "2025-08-28T11:35:03Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["MariaDB Enterprise"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: MariaDB Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API. It is used to define
              backup jobs and its storage.
            displayName: Backup
            kind: Backup
            name: backups.enterprise.mariadb.com
            version: v1alpha1
          - description: Connection is the Schema for the connections API. It is used
              to configure connection strings for the applications connecting to MariaDB.
            displayName: Connection
            kind: Connection
            name: connections.enterprise.mariadb.com
            version: v1alpha1
          - description: Database is the Schema for the databases API. It is used
              to define a logical database as if you were running a 'CREATE DATABASE'
              statement.
            displayName: Database
            kind: Database
            name: databases.enterprise.mariadb.com
            version: v1alpha1
          - description: Grant is the Schema for the grants API. It is used to define
              grants as if you were running a 'GRANT' statement.
            displayName: Grant
            kind: Grant
            name: grants.enterprise.mariadb.com
            version: v1alpha1
          - description: MariaDB is the Schema for the mariadbs API. It is used to
              define MariaDB clusters.
            displayName: Maria DB
            kind: MariaDB
            name: mariadbs.enterprise.mariadb.com
            version: v1alpha1
          - description: MaxScale is the Schema for the maxscales API. It is used
              to define MaxScale clusters.
            displayName: Max Scale
            kind: MaxScale
            name: maxscales.enterprise.mariadb.com
            version: v1alpha1
          - description: PhysicalBackup is the Schema for the physicalbackups API.
              It is used to define physical backup jobs and its storage.
            displayName: Physical Backup
            kind: PhysicalBackup
            name: physicalbackups.enterprise.mariadb.com
            version: v1alpha1
          - description: Restore is the Schema for the restores API. It is used to
              define restore jobs and its restoration source.
            displayName: Restore
            kind: Restore
            name: restores.enterprise.mariadb.com
            version: v1alpha1
          - description: SqlJob is the Schema for the sqljobs API. It is used to run
              sql scripts as jobs.
            displayName: Sql Job
            kind: SqlJob
            name: sqljobs.enterprise.mariadb.com
            version: v1alpha1
          - description: User is the Schema for the users API.  It is used to define
              grants as if you were running a 'CREATE USER' statement.
            displayName: User
            kind: User
            name: users.enterprise.mariadb.com
            version: v1alpha1
        description: |
          MariaDB Enterprise Operator for Openshift is an operator that manages MariaDB Enterprise operands declaratively via Custom Resources, with support for the following features:

          * Provision and Configure MariaDB and MaxScale Declaratively: Define MariaDB Enterprise Server and MaxScale clusters in YAML manifests and deploy them with ease in Kubernetes.
          * High Availability with Galera: Ensure availability with MariaDB Enterprise Cluster, providing synchronous multi-master replication.
          * Query and Connection-Based Routing with MaxScale: MaxScale provides query routing and connection load balancing for improved application performance.
          * Cluster-Aware Rolling Updates: Perform rolling updates on MariaDB and MaxScale clusters, ensuring zero-downtime upgrades with no disruptions to your applications.
          * Flexible Storage Configuration and Volume Expansion: Easily configure storage for MariaDB instances, including the ability to expand volumes as needed.
          * Physical Backups based on [mariadb-backup](https://mariadb.com/docs/server/server-usage/backup-and-restore/mariadb-backup/full-backup-and-restore-with-mariadb-backup) and [Kubernetes VolumeSnapshots](https://kubernetes.io/docs/concepts/storage/volume-snapshots/). By leveraging the [BACKUP STAGE](https://mariadb.com/docs/server/reference/sql-statements/administrative-sql-statements/backup-commands/backup-stage) feature, backups are taken without long read locks or service interruptions.
          * Logical Backups based on [mariadb-dump](https://mariadb.com/docs/server/clients-and-utilities/backup-restore-and-import-clients/mariadb-dump).
          * Backup Management: Take, restore, and schedule backups with multiple storage types supported: S3, PVCs, Kubernetes volumes and VolumeSnapshots..
          * Policy-Driven Backup Retention: Implement backup retention policies with bzip2 and gzip compression.
          * Target Recovery Time: Restore your database to the closest available backup based on a specified recovery time.
          * Bootstrap New Instances: Initialize new MariaDB instances from backups, S3, PVCs or VolumeSnapshots to quickly spin up new clusters.
          * TLS Certificate Management: Issue, configure, and rotate TLS certificates and Certificate Authorities (CAs) for secure connections.
          * Advanced TLS Support: customize certificate lifetime, private key algorithm and TLS version.
          * Native Integration with cert-manager: Leverage [cert-manager](https://cert-manager.io/docs/), the de-facto standard for managing certificates in Kubernetes, to enable issuance with private CAs, public CAs and HashiCorp Vault.
          * Prometheus Metrics: Expose metrics using the MariaDB and MaxScale Prometheus exporters.
          * Native Integration with prometheus-operator: Leverage [prometheus-operator](https://github.com/prometheus-operator/prometheus-operator) to scrape metrics from MariaDB and MaxScale instances.
          * Declarative User and Database Management: Manage users, grants, and logical databases in a declarative manner using Kubernetes resources.
          * Secure, immutable and lightweight images based on Red Hat UBI, available for multiple architectires (amd64, arm64 and ppc64le).
          * [Operator certified ](https://catalog.redhat.com/en/software/container-stacks/detail/65789bcbe17f1b31944acb1d#overview) by Red Hat.

          ## Installation

          In order to use this product, you will need a [MariaDB Enterprise subscription](https://mariadb.com/products/enterprise/).

          To be able to pull MariaDB Enterprise images, you will need to configure the MariaDB registry credentials in Openshift using the [MariaDB customer download token](https://customers.mariadb.com/downloads/token/) as described below:

          - Extract your [Openshift global pull secret](https://docs.redhat.com/en/documentation/openshift_container_platform/4.18/html/images/managing-images#images-update-global-pull-secret_using-image-pull-secrets):
            ```bash
            oc extract secret/pull-secret -n openshift-config --confirm
            ```

          - Login in the MariaDB registry providing the customer download token as password:
            ```bash
            oc registry login \
              --registry="docker.mariadb.com" \
              --auth-basic="<email>:<customer-download-token>" \
              --to=.dockerconfigjson
            ```

          - Update the global pull secret:
            ```bash
            oc set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson
            ```

          Alternatively, you can also create a `Secret` named `mariadb-enterprise` in the namespace where are you installing the operator by using the following command:
            ```bash
            oc create secret docker-registry mariadb-enterprise \
              --docker-server=docker.mariadb.com \
              --docker-username=<email> \
              --docker-password=<customer-download-token> \
              -n <operator-namespace>
            ```

          At this point, you can proceed to install the MariaDB Enterprise Operator, either via the Openshift console or by creating a `Subscription` object as described in the [Openshift installation docs](https://mariadb.com/kb/en/openshift/).

          Refer to the [quickstart guide](https://mariadb.com/kb/en/quickstart/), the [examples catalog](https://mariadb.com/kb/en/examples-catalog/) and the [API reference](https://mariadb.com/kb/en/api-reference/) for getting started with the Custom Resources offered by this operator.
        displayName: MariaDB Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mariadb
        - mysql
        - database
        - operator
        - mariadb-enterprise-operator
        - database
        links:
        - name: MariaDB Enterprise
          url: https://mariadb.com/products/enterprise/
        - name: Documentation
          url: https://mariadb.com/kb/en/mariadb-enterprise-operator/
        maintainers:
        - email: operator@mariadb.com
          name: MariaDB Corporation
        - email: support@mariadb.com
          name: Support
        - email: sales-EMEA@mariadb.com
          name: Sales EMEA
        - email: sales-APAC@mariadb.com
          name: Sales APAC
        - email: sales-nam@mariadb.com
          name: Sales Americas
        maturity: beta
        minKubeVersion: 1.29.0
        provider:
          name: MariaDB Corporation
        relatedImages:
        - docker.mariadb.com/mariadb-enterprise-operator@sha256:1effbbfa7632be92c17ef61c18a25f010b187840beec42c31d2410d0209e6985
        - docker.mariadb.com/maxscale@sha256:d9e04a7a406353dab2051e190be0c32ed20b780ed71e56e55cedd4ccb61af416
        - mariadb/mariadb-prometheus-exporter-ubi@sha256:f072175198cad050e80617d13e63f415bacdfe47e2dd177fde7283a96ee56c07
        - mariadb/maxscale-prometheus-exporter-ubi@sha256:cc17c1554795ad01b4d8db799f6aa90e00e41ede431f09d30eec64d9dd4479d9
        - registry.connect.redhat.com/mariadb/mariadb-enterprise-operator-bundle@sha256:73e7f243a6676d559068bf8ab80cc0ffe0db58152675603ca8bd360334439f26
        - docker.mariadb.com/enterprise-server@sha256:9872721d35ebe8d820b1aa9c6dd83b363a7b2df9af11a65bff6b80ff4144460a
        version: 25.8.1-1
      entries:
      - name: mariadb-enterprise-operator.v25.8.1-1
        version: 25.8.1-1
      - name: mariadb-enterprise-operator.v25.8.0
        version: 25.8.0
      - name: mariadb-enterprise-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: mariadb-enterprise-operator
    provider:
      name: MariaDB Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Helm Community
      provider-url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
    name: cockroachdb
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cockroachdb.v5.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.operatorhub.io/v1alpha1",
                "kind": "Cockroachdb",
                "metadata": {
                  "name": "cockroachdb-sample"
                },
                "spec": {
                  "clusterDomain": "cluster.local",
                  "conf": {
                    "attrs": [],
                    "cache": "25%",
                    "cluster-name": "",
                    "disable-cluster-name-verification": false,
                    "http-port": 8080,
                    "join": [],
                    "locality": "",
                    "logtostderr": "INFO",
                    "max-sql-memory": "25%",
                    "port": 26257,
                    "single-node": false,
                    "sql-audit-dir": ""
                  },
                  "image": {
                    "credentials": {},
                    "pullPolicy": "IfNotPresent",
                    "repository": "cockroachdb/cockroach",
                    "tag": "v20.2.4"
                  },
                  "ingress": {
                    "annotations": {},
                    "enabled": false,
                    "hosts": [],
                    "labels": {},
                    "paths": [
                      "/"
                    ],
                    "tls": []
                  },
                  "init": {
                    "affinity": {},
                    "annotations": {},
                    "labels": {
                      "app.kubernetes.io/component": "init"
                    },
                    "nodeSelector": {},
                    "resources": {},
                    "tolerations": []
                  },
                  "labels": {},
                  "networkPolicy": {
                    "enabled": false,
                    "ingress": {
                      "grpc": [],
                      "http": []
                    }
                  },
                  "service": {
                    "discovery": {
                      "annotations": {},
                      "labels": {
                        "app.kubernetes.io/component": "cockroachdb"
                      }
                    },
                    "ports": {
                      "grpc": {
                        "external": {
                          "name": "grpc",
                          "port": 26257
                        },
                        "internal": {
                          "name": "grpc-internal",
                          "port": 26257
                        }
                      },
                      "http": {
                        "name": "http",
                        "port": 8080
                      }
                    },
                    "public": {
                      "annotations": {},
                      "labels": {
                        "app.kubernetes.io/component": "cockroachdb"
                      },
                      "type": "ClusterIP"
                    }
                  },
                  "serviceMonitor": {
                    "annotations": {},
                    "enabled": false,
                    "interval": "10s",
                    "labels": {}
                  },
                  "statefulset": {
                    "annotations": {},
                    "args": [],
                    "budget": {
                      "maxUnavailable": 1
                    },
                    "env": [],
                    "labels": {
                      "app.kubernetes.io/component": "cockroachdb"
                    },
                    "nodeAffinity": {},
                    "nodeSelector": {},
                    "podAffinity": {},
                    "podAntiAffinity": {
                      "topologyKey": "kubernetes.io/hostname",
                      "type": "soft",
                      "weight": 100
                    },
                    "podManagementPolicy": "Parallel",
                    "priorityClassName": "",
                    "replicas": 3,
                    "resources": {},
                    "secretMounts": [],
                    "tolerations": [],
                    "topologySpreadConstraints": {
                      "maxSkew": 1,
                      "topologyKey": "topology.kubernetes.io/zone",
                      "whenUnsatisfiable": "ScheduleAnyway"
                    },
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    }
                  },
                  "storage": {
                    "hostPath": "",
                    "persistentVolume": {
                      "annotations": {},
                      "enabled": true,
                      "labels": {},
                      "size": "100Gi",
                      "storageClass": ""
                    }
                  },
                  "tls": {
                    "certs": {
                      "clientRootSecret": "cockroachdb-root",
                      "nodeSecret": "cockroachdb-node",
                      "provided": false,
                      "tlsSecret": false
                    },
                    "enabled": false,
                    "init": {
                      "image": {
                        "credentials": {},
                        "pullPolicy": "IfNotPresent",
                        "repository": "cockroachdb/cockroach-k8s-request-cert",
                        "tag": "0.4"
                      }
                    },
                    "serviceAccount": {
                      "create": true,
                      "name": ""
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Database
          certified: "false"
          containerImage: quay.io/helmoperators/cockroachdb:v5.0.4
          createdAt: 2021-01-23T10-00-00Z
          description: CockroachDB Operator based on the CockroachDB helm chart
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/dmesser/cockroachdb-operator
          support: dmesser
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a CockroachDB cluster
            displayName: CockroachDB
            kind: Cockroachdb
            name: cockroachdbs.charts.operatorhub.io
            version: v1alpha1
        description: |
          CockroachDB is a scalable, survivable, strongly-consistent SQL database.
          ## About this Operator
          This Operator is based on a Helm chart for CockroachDB. It supports the same parameters like the official [CockroachDB Helm Chart](https://github.com/cockroachdb/helm-charts/tree/master/cockroachdb).

          ## Core capabilities
          * **StatefulSet** - Sets up a dynamically scalable CockroachDB cluster using a Kubernetes StatefulSet
          * **Expand Replicas** - Supports expanding the set of replicas by simply editing your object
          * **Dashboard** - Installs the CockroachDB user interface to administer your cluster. Easily expose it via an Ingress rule.
          Review all of the [confiuguration options](https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration) to best run your database instance. The example configuration is derived from the chart's [`values.yaml`](https://github.com/helm/charts/blob/master/stable/cockroachdb/values.yaml).
          ## Using the cluster
          The resulting cluster endpoint can be consumed from a `Service` that follows the pattern: `<StatefulSet-name>-public`. For example to connect using the command line client, use something like the following to obtain the name of the service:
          ```
          kubectl get service -l chart=cockroachdb-5.0.4
          NAME                                           TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)              AGE
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb          ClusterIP   None             <none>        26257/TCP,8080/TCP   24m
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public   ClusterIP   10.106.249.134   <none>        26257/TCP,8080/TCP   24m
          ```
          Then you can use the CockroachDB command line client to connect to the database cluster:
          ```
          kubectl run -it --rm cockroach-client --image=cockroachdb/cockroach --restart=Never --command -- ./cockroach sql --insecure --host example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public
          ```
          ## Before you start
          This Operator requires a cluster with PV support in order to run correctly.

          Note that for a production cluster, you will likely want to override the following parameters in [`values.yaml`](values.yaml) with your own values.

          - `statefulset.resources.requests.memory` and `statefulset.resources.limits.memory` allocate memory resources to CockroachDB pods in your cluster.
          - `conf.cache` and `conf.max-sql-memory` are memory limits that we recommend setting to 1/4 of the above resource allocation. When running CockroachDB, you must set these limits explicitly to avoid running out of memory.
          - `storage.persistentVolume.size` defaults to `100Gi` of disk space per pod, which you may increase or decrease for your use case.
          - `storage.persistentVolume.storageClass` uses the default storage class for your environment. We strongly recommend that you specify a storage class which uses an SSD.
          - `tls.enabled` must be set to `yes`/`true` to deploy in secure mode.

          For more information on overriding the `values.yaml` parameters, please see:
          > <https://www.cockroachlabs.com/docs/stable/orchestrate-cockroachdb-with-kubernetes.html#step-2-start-cockroachdb>

          If you are running in secure mode (with configuration parameter `tls.enabled` set to `yes`/`true`) and `tls.certs.provided` set to `no`/`false`), then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          When `tls.certs.provided` is set to `yes`/`true`, this chart will use certificates created outside of Kubernetes. You may want to use this if you want to use a different certificate authority from the one being used by Kubernetes or if your Kubernetes cluster doesn't fully support certificate-signing requests. To use this, first set up your certificates and load them into your Kubernetes cluster as Secrets using the commands below:

          ```
          mkdir certs
          mkdir my-safe-directory
          cockroach cert create-ca --certs-dir=certs --ca-key=my-safe-directory/ca.key
          cockroach cert create-client root --certs-dir=certs --ca-key=my-safe-directory/ca.key
          kubectl create secret generic cockroachdb-root --from-file=certs
          cockroach cert create-node --certs-dir=certs --ca-key=my-safe-directory/ca.key localhost 127.0.0.1 eerie-horse-cockroachdb-public eerie-horse-cockroachdb-public.default eerie-horse-cockroachdb-public.default.svc.cluster.local *.eerie-horse-cockroachdb *.eerie-horse-cockroachdb.default *.eerie-horse-cockroachdb.default.svc.cluster.local
          kubectl create secret generic cockroachdb-node --from-file=certs
          ```

          Set `tls.certs.tlsSecret` to `yes/true` if you make use of [cert-manager][3] in your cluster.

          [cert-manager][3] stores generated certificates in dedicated TLS secrets. Thus, they are always named:

          * `ca.crt`
          * `tls.crt`
          * `tls.key`

          On the other hand, CockroachDB also demands dedicated certificate filenames:

          * `ca.crt`
          * `node.crt`
          * `node.key`
          * `client.root.crt`
          * `client.root.key`

          By activating `tls.certs.tlsSecret` we benefit from projected secrets and convert the TLS secret filenames to their according CockroachDB filenames.

          If you are running in secure mode, then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          Confirm that all pods are `Running` successfully and init has been completed:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS      RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running     0          1m
          my-release-cockroachdb-1            1/1       Running     0          1m
          my-release-cockroachdb-2            1/1       Running     0          1m
          my-release-cockroachdb-init-k6jcr   0/1       Completed   0          1m
          ```

          Confirm that persistent volumes are created and claimed for each pod:

          ```shell
          kubectl get pv
          ```

          ```
          NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS    CLAIM                                      STORAGECLASS   REASON    AGE
          pvc-64878ebf-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-0   standard                 51s
          pvc-64945b4f-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-1   standard                 51s
          pvc-649d920d-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-2   standard                 51s
          ```

          ## Upgrading the cluster

          ### Chart version 3.0.0 and after

          Launch a temporary interactive pod and start the built-in SQL client:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          Set `cluster.preserve_downgrade_option`, where `$current_version` is the CockroachDB version currently running (e.g., `19.2`):

          ```sql
          > SET CLUSTER SETTING cluster.preserve_downgrade_option = '$current_version';
          ```

          Exit the shell and delete the temporary pod:

          ```sql
          > \q
          ```

          Kick off the upgrade process by changing the new Docker image, where `$new_version` is the CockroachDB version to which you are upgrading:

          ```shell
          kubectl delete job my-release-cockroachdb-init
          ```

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"image":{"tag":"<new version tag here>"}}}' --type merge
          ```

          Kubernetes will carry out a safe [rolling upgrade](https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets) of your CockroachDB nodes one-by-one. Monitor the cluster's pods until all have been successfully restarted:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS              RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running             0          2m
          my-release-cockroachdb-1            1/1       Running             0          3m
          my-release-cockroachdb-2            1/1       Running             0          3m
          my-release-cockroachdb-3            0/1       ContainerCreating   0          25s
          my-release-cockroachdb-init-nwjkh   0/1       ContainerCreating   0          6s
          ```

          ```shell
          kubectl get pods \
          -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.spec.containers[0].image}{"\n"}'
          ```

          ```
          my-release-cockroachdb-0    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-1    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-2    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-3    cockroachdb/cockroach:v20.2.4
          ```

          Resume normal operations. Once you are comfortable that the stability and performance of the cluster is what you'd expect post-upgrade, finalize the upgrade:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          ```sql
          > RESET CLUSTER SETTING cluster.preserve_downgrade_option;
          > \q
          ```

          ## Configuration

          The following table lists the configurable parameters of the CockroachDB chart and their default values.
          For details see the [`values.yaml`](values.yaml) file.

          | Parameter                                                 | Description                                                     | Default                                          |
          | ---------                                                 | -----------                                                     | -------                                          |
          | `clusterDomain`                                           | Cluster's default DNS domain                                    | `cluster.local`                                  |
          | `conf.attrs`                                              | CockroachDB node attributes                                     | `[]`                                             |
          | `conf.cache`                                              | Size of CockroachDB's in-memory cache                           | `25%`                                            |
          | `conf.cluster-name`                                       | Name of CockroachDB cluster                                     | `""`                                             |
          | `conf.disable-cluster-name-verification`                  | Disable CockroachDB cluster name verification                   | `no`                                             |
          | `conf.join`                                               | List of already-existing CockroachDB instances                  | `[]`                                             |
          | `conf.max-disk-temp-storage`                              | Max storage capacity for temp data                              | `0`                                              |
          | `conf.max-offset`                                         | Max allowed clock offset for CockroachDB cluster                | `500ms`                                          |
          | `conf.max-sql-memory`                                     | Max memory to use processing SQL querie                         | `25%`                                            |
          | `conf.locality`                                           | Locality attribute for this deployment                          | `""`                                             |
          | `conf.single-node`                                        | Disable CockroachDB clustering (standalone mode)                | `no`                                             |
          | `conf.sql-audit-dir`                                      | Directory for SQL audit log                                     | `""`                                             |
          | `conf.port`                                               | CockroachDB primary serving port in Pods                        | `26257`                                          |
          | `conf.http-port`                                          | CockroachDB HTTP port in Pods                                   | `8080`                                           |
          | `image.repository`                                        | Container image name                                            | `cockroachdb/cockroach`                          |
          | `image.tag`                                               | Container image tag                                             | `v20.2.4`                                        |
          | `image.pullPolicy`                                        | Container pull policy                                           | `IfNotPresent`                                   |
          | `image.credentials`                                       | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `statefulset.replicas`                                    | StatefulSet replicas number                                     | `3`                                              |
          | `statefulset.updateStrategy`                              | Update strategy for StatefulSet Pods                            | `{"type": "RollingUpdate"}`                      |
          | `statefulset.podManagementPolicy`                         | `OrderedReady`/`Parallel` Pods creation/deletion order          | `Parallel`                                       |
          | `statefulset.budget.maxUnavailable`                       | k8s PodDisruptionBudget parameter                               | `1`                                              |
          | `statefulset.args`                                        | Extra command-line arguments                                    | `[]`                                             |
          | `statefulset.env`                                         | Extra env vars                                                  | `[]`                                             |
          | `statefulset.secretMounts`                                | Additional Secrets to mount at cluster members                  | `[]`                                             |
          | `statefulset.labels`                                      | Additional labels of StatefulSet and its Pods                   | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `statefulset.annotations`                                 | Additional annotations of StatefulSet Pods                      | `{}`                                             |
          | `statefulset.nodeAffinity`                                | [Node affinity rules][2] of StatefulSet Pods                    | `{}`                                             |
          | `statefulset.podAffinity`                                 | [Inter-Pod affinity rules][1] of StatefulSet Pods               | `{}`                                             |
          | `statefulset.podAntiAffinity`                             | [Anti-affinity rules][1] of StatefulSet Pods                    | auto                                             |
          | `statefulset.podAntiAffinity.topologyKey`                 | The topologyKey for auto [anti-affinity rules][1]               | `kubernetes.io/hostname`                         |
          | `statefulset.podAntiAffinity.type`                        | Type of auto [anti-affinity rules][1]                           | `soft`                                           |
          | `statefulset.podAntiAffinity.weight`                      | Weight for `soft` auto [anti-affinity rules][1]                 | `100`                                            |
          | `statefulset.nodeSelector`                                | Node labels for StatefulSet Pods assignment                     | `{}`                                             |
          | `statefulset.priorityClassName`                           | [PriorityClassName][4] for StatefulSet Pods                     | `""`                                             |
          | `statefulset.tolerations`                                 | Node taints to tolerate by StatefulSet Pods                     | `[]`                                             |
          | `statefulset.topologySpreadConstraints`                   | [Topology Spread Constraints rules][5] of StatefulSet Pods      | auto                                             |
          | `statefulset.topologySpreadConstraints.maxSkew`           | Degree to which Pods may be unevenly distributed                | `1`                                              |
          | `statefulset.topologySpreadConstraints.topologyKey`       | The key of node labels                                          | `topology.kubernetes.io/zone`                    |
          | `statefulset.topologySpreadConstraints.whenUnsatisfiable` | `ScheduleAnyway`/`DoNotSchedule` for unsatisfiable constraints  | `ScheduleAnyway`                                 |
          | `statefulset.resources`                                   | Resource requests and limits for StatefulSet Pods               | `{}`                                             |
          | `service.ports.grpc.external.port`                        | CockroachDB primary serving port in Services                    | `26257`                                          |
          | `service.ports.grpc.external.name`                        | CockroachDB primary serving port name in Services               | `grpc`                                           |
          | `service.ports.grpc.internal.port`                        | CockroachDB inter-communication port in Services                | `26257`                                          |
          | `service.ports.grpc.internal.name`                        | CockroachDB inter-communication port name in Services           | `grpc-internal`                                  |
          | `service.ports.http.port`                                 | CockroachDB HTTP port in Services                               | `8080`                                           |
          | `service.ports.http.name`                                 | CockroachDB HTTP port name in Services                          | `http`                                           |
          | `service.public.type`                                     | Public Service type                                             | `ClusterIP`                                      |
          | `service.public.labels`                                   | Additional labels of public Service                             | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.public.annotations`                              | Additional annotations of public Service                        | `{}`                                             |
          | `service.discovery.labels`                                | Additional labels of discovery Service                          | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.discovery.annotations`                           | Additional annotations of discovery Service                     | `{}`                                             |
          | `ingress.enabled`                                         | Enable ingress resource for CockroachDB                         | `false`                                          |
          | `ingress.labels`                                          | Additional labels of Ingress                                    | `{}`                                             |
          | `ingress.annotations`                                     | Additional annotations of Ingress                               | `{}`                                             |
          | `ingress.paths`                                           | Paths for the default host                                      | `[/]`                                            |
          | `ingress.hosts`                                           | CockroachDB Ingress hostnames                                   | `[]`                                             |
          | `ingress.tls[0].hosts`                                    | CockroachDB Ingress tls hostnames                               | `nil`                                            |
          | `ingress.tls[0].secretName`                               | CockroachDB Ingress tls secret name                             | `nil`                                            |
          | `serviceMonitor.enabled`                                  | Create [ServiceMonitor](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/design.md#servicemonitor) Resource for scraping metrics using [PrometheusOperator](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/user-guides/getting-started.md#prometheus-operator)                     | `false`                                             |
          | `serviceMonitor.labels`                                   | Additional labels of ServiceMonitor                             | `{}`                                             |
          | `serviceMonitor.annotations`                              | Additional annotations of ServiceMonitor                        | `{}`                                             |
          | `serviceMonitor.interval`                                 | ServiceMonitor scrape metrics interval                          | `10s`                                            |
          | `serviceMonitor.scrapeTimeout`                            | ServiceMonitor scrape timeout                                   | `nil`                                            |
          | `storage.hostPath`                                        | Absolute path on host to store data                             | `""`                                             |
          | `storage.persistentVolume.enabled`                        | Whether to use PersistentVolume to store data                   | `yes`                                            |
          | `storage.persistentVolume.size`                           | PersistentVolume size                                           | `100Gi`                                          |
          | `storage.persistentVolume.storageClass`                   | PersistentVolume class                                          | `""`                                             |
          | `storage.persistentVolume.labels`                         | Additional labels of PersistentVolumeClaim                      | `{}`                                             |
          | `storage.persistentVolume.annotations`                    | Additional annotations of PersistentVolumeClaim                 | `{}`                                             |
          | `init.labels`                                             | Additional labels of init Job and its Pod                       | `{"app.kubernetes.io/component": "init"}`        |
          | `init.annotations`                                        | Additional labels of the Pod of init Job                        | `{}`                                             |
          | `init.affinity`                                           | [Affinity rules][2] of init Job Pod                             | `{}`                                             |
          | `init.nodeSelector`                                       | Node labels for init Job Pod assignment                         | `{}`                                             |
          | `init.tolerations`                                        | Node taints to tolerate by init Job Pod                         | `[]`                                             |
          | `init.resources`                                          | Resource requests and limits for the Pod of init Job            | `{}`                                             |
          | `tls.enabled`                                             | Whether to run securely using TLS certificates                  | `no`                                             |
          | `tls.serviceAccount.create`                               | Whether to create a new RBAC service account                    | `yes`                                            |
          | `tls.serviceAccount.name`                                 | Name of RBAC service account to use                             | `""`                                             |
          | `tls.certs.provided`                                      | Bring your own certs scenario, i.e certificates are provided    | `no`                                             |
          | `tls.certs.clientRootSecret`                              | If certs are provided, secret name for client root cert         | `cockroachdb-root`                               |
          | `tls.certs.nodeSecret`                                    | If certs are provided, secret name for node cert                | `cockroachdb-node`                               |
          | `tls.certs.tlsSecret`                                     | Own certs are stored in TLS secret                              | `no`                                             |
          | `tls.init.image.repository`                               | Image to use for requesting TLS certificates                    | `cockroachdb/cockroach-k8s-request-cert`         |
          | `tls.init.image.tag`                                      | Image tag to use for requesting TLS certificates                | `0.4`                                            |
          | `tls.init.image.pullPolicy`                               | Requesting TLS certificates container pull policy               | `IfNotPresent`                                   |
          | `tls.init.image.credentials`                              | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `networkPolicy.enabled`                                   | Enable NetworkPolicy for CockroachDB's Pods                     | `no`                                             |
          | `networkPolicy.ingress.grpc`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |
          | `networkPolicy.ingress.http`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |


          Override the default parameters using the `CockroachDB` custom resource.

          ## Deep dive

          ### Connecting to the CockroachDB cluster

          Once you've created the cluster, you can start talking to it by connecting to its `-public` Service. CockroachDB is PostgreSQL wire protocol compatible, so there's a [wide variety of supported clients](https://www.cockroachlabs.com/docs/install-client-drivers.html). As an example, we'll open up a SQL shell using CockroachDB's built-in shell and play around with it a bit, like this (likely needing to replace `my-release-cockroachdb-public` with the name of the `-public` Service that was created with your installed chart):

          ```shell
          kubectl run cockroach-client --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host my-release-cockroachdb-public
          ```

          ```
          Waiting for pod default/cockroach-client to be running, status is Pending,
          pod ready: false
          If you don't see a command prompt, try pressing enter.
          root@my-release-cockroachdb-public:26257> SHOW DATABASES;
          +--------------------+
          |      Database      |
          +--------------------+
          | information_schema |
          | pg_catalog         |
          | system             |
          +--------------------+
          (3 rows)
          root@my-release-cockroachdb-public:26257> CREATE DATABASE bank;
          CREATE DATABASE
          root@my-release-cockroachdb-public:26257> CREATE TABLE bank.accounts (id INT
          PRIMARY KEY, balance DECIMAL);
          CREATE TABLE
          root@my-release-cockroachdb-public:26257> INSERT INTO bank.accounts VALUES
          (1234, 10000.50);
          INSERT 1
          root@my-release-cockroachdb-public:26257> SELECT * FROM bank.accounts;
          +------+---------+
          |  id  | balance |
          +------+---------+
          | 1234 | 10000.5 |
          +------+---------+
          (1 row)
          root@my-release-cockroachdb-public:26257> \q
          Waiting for pod default/cockroach-client to terminate, status is Running
          pod "cockroach-client" deleted
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          ### Cluster health

          Because our pod spec includes regular health checks of the CockroachDB processes, simply running `kubectl get pods` and looking at the `STATUS` column is sufficient to determine the health of each instance in the cluster.

          If you want more detailed information about the cluster, the best place to look is the Admin UI.

          ### Accessing the Admin UI

          If you want to see information about how the cluster is doing, you can try pulling up the CockroachDB Admin UI by port-forwarding from your local machine to one of the pods (replacing `my-release-cockroachdb-0` with the name of one of your pods:

          ```shell
          kubectl port-forward my-release-cockroachdb-0 8080
          ```

          You should then be able to access the Admin UI by visiting <http://localhost:8080/> in your web browser.

          ### Failover

          If any CockroachDB member fails, it is restarted or recreated automatically by the Kubernetes infrastructure, and will re-join the cluster automatically when it comes back up. You can test this scenario by killing any of the CockroachDB pods:

          ```shell
          kubectl delete pod my-release-cockroachdb-1
          ```

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          After a while:

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-1  1/1       Running       0          20s
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          You can check the state of re-joining from the new pod's logs:

          ```shell
          kubectl logs my-release-cockroachdb-1
          ```

          ```
          [...]
          I161028 19:32:09.754026 1 server/node.go:586  [n1] node connected via gossip and
          verified as part of cluster {"35ecbc27-3f67-4e7d-9b8f-27c31aae17d6"}
          [...]
          cockroachdb-0.my-release-cockroachdb.default.svc.cluster.local:26257
          build:      beta-20161027-55-gd2d3c7f @ 2016/10/28 19:27:25 (go1.7.3)
          admin:      http://0.0.0.0:8080
          sql:
          postgresql://root@my-release-cockroachdb-1.my-release-cockroachdb.default.svc.cluster.local:26257?sslmode=disable
          logs:       cockroach-data/logs
          store[0]:   path=cockroach-data
          status:     restarted pre-existing node
          clusterID:  {35ecbc27-3f67-4e7d-9b8f-27c31aae17d6}
          nodeID:     2
          [...]
          ```

          ### NetworkPolicy

          To enable NetworkPolicy for CockroachDB, install [a networking plugin that implements the Kubernetes NetworkPolicy spec](https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy#before-you-begin), and set `networkPolicy.enabled` to `yes`/`true`.

          For Kubernetes v1.5 & v1.6, you must also turn on NetworkPolicy by setting the `DefaultDeny` Namespace annotation. Note: this will enforce policy for _all_ pods in the Namespace:

          ```shell
          kubectl annotate namespace default "net.beta.kubernetes.io/network-policy={\"ingress\":{\"isolation\":\"DefaultDeny\"}}"
          ```

          For more precise policy, set `networkPolicy.ingress.grpc` and `networkPolicy.ingress.http` rules. This will only allow pods that match the provided rules to connect to CockroachDB.

          ### Scaling

          Scaling should be managed via the `helm upgrade` command. After resizing your cluster on your cloud environment (e.g., GKE or EKS), run the following command to add a pod. This assumes you scaled from 3 to 4 nodes:

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"statefulset":{"replicas":"4"}}}' --type merge
          ```

          Note, that if you are running in secure mode (`tls.enabled` is `yes`/`true`) and increase the size of your cluster, you will also have to approve the CSR (certificate-signing request) of each new node (using `kubectl get csr` and `kubectl certificate approve`).

          [1]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#inter-pod-affinity-and-anti-affinity
          [2]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#node-affinity
          [3]: https://cert-manager.io/
          [4]: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass
          [5]: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
        displayName: CockroachDB Helm Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cockroach
        - cockroachdb
        links:
        - name: Helm Chart Source
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb
        - name: Configuration Options
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration
        - name: CockroachDB Source
          url: https://github.com/cockroachdb/cockroach
        maintainers:
        - email: dmesser@redhat.com
          name: Daniel Messer
        maturity: stable
        minKubeVersion: 1.8.0
        provider:
          name: Helm Community
          url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
        relatedImages:
        - quay.io/openshift-community-operators/cockroachdb@sha256:f42337e7b85a46d83c94694638e2312e10ca16a03542399a65ba783c94a32b63
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/helmoperators/cockroachdb:v5.0.4
        version: 5.0.4
      entries:
      - name: cockroachdb.v5.0.4
        version: 5.0.4
      - name: cockroachdb.v5.0.3
        version: 5.0.3
      name: stable-5.x
    - currentCSV: cockroachdb.v6.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.operatorhub.io/v1alpha1",
                "kind": "Cockroachdb",
                "metadata": {
                  "name": "cockroachdb-sample"
                },
                "spec": {"image":{"repository":"cockroachdb/cockroach","tag":"v22.2.4","pullPolicy":"IfNotPresent","credentials":{}},"labels":{},"clusterDomain":"cluster.local","conf":{"attrs":[],"cache":"25%","cluster-name":"","disable-cluster-name-verification":false,"join":[],"log":{"enabled":false,"config":{}},"logtostderr":"INFO","max-sql-memory":"25%","locality":"","single-node":false,"sql-audit-dir":"","port":26257,"http-port":8080,"path":"cockroach-data","store":{"enabled":false,"type":null,"size":null,"attrs":null}},"statefulset":{"replicas":3,"updateStrategy":{"type":"RollingUpdate"},"podManagementPolicy":"Parallel","budget":{"maxUnavailable":1},"args":[],"env":[],"secretMounts":[],"labels":{"app.kubernetes.io/component":"cockroachdb"},"annotations":{},"nodeAffinity":{},"podAffinity":{},"podAntiAffinity":{"topologyKey":"kubernetes.io/hostname","type":"soft","weight":100},"nodeSelector":{},"priorityClassName":"","tolerations":[],"topologySpreadConstraints":{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"},"resources":{},"customLivenessProbe":{},"customReadinessProbe":{}},"service":{"ports":{"grpc":{"external":{"port":26257,"name":"grpc"},"internal":{"port":26257,"name":"grpc-internal"}},"http":{"port":8080,"name":"http"}},"public":{"type":"ClusterIP","labels":{"app.kubernetes.io/component":"cockroachdb"},"annotations":{}},"discovery":{"labels":{"app.kubernetes.io/component":"cockroachdb"},"annotations":{}}},"ingress":{"enabled":false,"labels":{},"annotations":{},"paths":["/"],"hosts":[],"tls":[]},"prometheus":{"enabled":true},"serviceMonitor":{"enabled":false,"labels":{},"annotations":{},"interval":"10s","namespaced":false},"storage":{"hostPath":"","persistentVolume":{"enabled":true,"size":"100Gi","storageClass":"","labels":{},"annotations":{}}},"init":{"labels":{"app.kubernetes.io/component":"init"},"jobAnnotations":{},"annotations":{},"affinity":{},"nodeSelector":{},"tolerations":[],"resources":{},"provisioning":{"enabled":false,"clusterSettings":null,"users":[],"databases":[]}},"tls":{"enabled":true,"serviceAccount":{"create":true,"name":""},"copyCerts":{"image":"busybox"},"certs":{"provided":false,"clientRootSecret":"cockroachdb-root","nodeSecret":"cockroachdb-node","tlsSecret":false,"selfSigner":{"enabled":true,"caProvided":false,"caSecret":"","minimumCertDuration":"624h","caCertDuration":"43800h","caCertExpiryWindow":"648h","clientCertDuration":"672h","clientCertExpiryWindow":"48h","nodeCertDuration":"8760h","nodeCertExpiryWindow":"168h","rotateCerts":true,"readinessWait":"30s","podUpdateTimeout":"2m"},"certManager":false,"certManagerIssuer":{"group":"cert-manager.io","kind":"Issuer","name":"cockroachdb","clientCertDuration":"672h","clientCertExpiryWindow":"48h","nodeCertDuration":"8760h","nodeCertExpiryWindow":"168h"},"useCertManagerV1CRDs":false},"selfSigner":{"image":{"repository":"cockroachlabs-helm-charts/cockroach-self-signer-cert","tag":"1.3","pullPolicy":"IfNotPresent","credentials":{},"registry":"gcr.io"}}},"networkPolicy":{"enabled":false,"ingress":{"grpc":[],"http":[]}},"iap":{"enabled":false}}
              }
            ]
          capabilities: Basic Install
          categories: Database
          certified: "false"
          containerImage: quay.io/cockroachdb/cockroach-helm-operator:6.0.0
          createdAt: 2021-01-23T10-00-00Z
          description: CockroachDB Operator based on the CockroachDB helm chart
          olm.skipRange: <6.0.0
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/cockroachdb/helm-charts
          support: CockroachDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a CockroachDB cluster
            displayName: CockroachDB
            kind: Cockroachdb
            name: cockroachdbs.charts.operatorhub.io
            version: v1alpha1
        description: |
          CockroachDB is a scalable, survivable, strongly-consistent SQL database.
          ## About this Operator
          This Operator is based on a Helm chart for CockroachDB. It supports reconfiguration for some parameters, but notably does not handle scale down of the replica count in a seamless manner. Scale up works great.

          ## Core capabilities
          * **StatefulSet** - Sets up a dynamically scalable CockroachDB cluster using a Kubernetes StatefulSet
          * **Expand Replicas** - Supports expanding the set of replicas by simply editing your object
          * **Dashboard** - Installs the CockroachDB user interface to administer your cluster. Easily expose it via an Ingress rule.
          Review all of the [confiuguration options](https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration) to best run your database instance. The example configuration is derived from the chart's [`values.yaml`](https://github.com/helm/charts/blob/master/stable/cockroachdb/values.yaml).
          ## Using the cluster
          The resulting cluster endpoint can be consumed from a `Service` that follows the pattern: `<StatefulSet-name>-public`. For example to connect using the command line client, use something like the following to obtain the name of the service:
          ```
          kubectl get service -l chart=cockroachdb-6.0.0
          NAME                                           TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)              AGE
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb          ClusterIP   None             <none>        26257/TCP,8080/TCP   24m
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public   ClusterIP   10.106.249.134   <none>        26257/TCP,8080/TCP   24m
          ```
          Then you can use the CockroachDB command line client to connect to the database cluster:
          ```
          kubectl run -it --rm cockroach-client --image=cockroachdb/cockroach --restart=Never --command -- ./cockroach sql --insecure --host example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public
          ```
          ## Before you start
          This Operator requires a cluster with PV support in order to run correctly.

          Note that for a production cluster, you will likely want to override the following parameters in [`values.yaml`](values.yaml) with your own values.

          - `statefulset.resources.requests.memory` and `statefulset.resources.limits.memory` allocate memory resources to CockroachDB pods in your cluster.
          - `conf.cache` and `conf.max-sql-memory` are memory limits that we recommend setting to 1/4 of the above resource allocation. When running CockroachDB, you must set these limits explicitly to avoid running out of memory.
          - `storage.persistentVolume.size` defaults to `100Gi` of disk space per pod, which you may increase or decrease for your use case.
          - `storage.persistentVolume.storageClass` uses the default storage class for your environment. We strongly recommend that you specify a storage class which uses an SSD.
          - `tls.enabled` must be set to `yes`/`true` to deploy in secure mode.

          For more information on overriding the `values.yaml` parameters, please see:
          > <https://www.cockroachlabs.com/docs/stable/orchestrate-cockroachdb-with-kubernetes.html#step-2-start-cockroachdb>

          If you are running in secure mode (with configuration parameter `tls.enabled` set to `yes`/`true`) and `tls.certs.provided` set to `no`/`false`), then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          When `tls.certs.provided` is set to `yes`/`true`, this chart will use certificates created outside of Kubernetes. You may want to use this if you want to use a different certificate authority from the one being used by Kubernetes or if your Kubernetes cluster doesn't fully support certificate-signing requests. To use this, first set up your certificates and load them into your Kubernetes cluster as Secrets using the commands below:

          ```
          mkdir certs
          mkdir my-safe-directory
          cockroach cert create-ca --certs-dir=certs --ca-key=my-safe-directory/ca.key
          cockroach cert create-client root --certs-dir=certs --ca-key=my-safe-directory/ca.key
          kubectl create secret generic cockroachdb-root --from-file=certs
          cockroach cert create-node --certs-dir=certs --ca-key=my-safe-directory/ca.key localhost 127.0.0.1 eerie-horse-cockroachdb-public eerie-horse-cockroachdb-public.default eerie-horse-cockroachdb-public.default.svc.cluster.local *.eerie-horse-cockroachdb *.eerie-horse-cockroachdb.default *.eerie-horse-cockroachdb.default.svc.cluster.local
          kubectl create secret generic cockroachdb-node --from-file=certs
          ```

          Set `tls.certs.tlsSecret` to `yes/true` if you make use of [cert-manager][3] in your cluster.

          [cert-manager][3] stores generated certificates in dedicated TLS secrets. Thus, they are always named:

          * `ca.crt`
          * `tls.crt`
          * `tls.key`

          On the other hand, CockroachDB also demands dedicated certificate filenames:

          * `ca.crt`
          * `node.crt`
          * `node.key`
          * `client.root.crt`
          * `client.root.key`

          By activating `tls.certs.tlsSecret` we benefit from projected secrets and convert the TLS secret filenames to their according CockroachDB filenames.

          If you are running in secure mode, then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          Confirm that all pods are `Running` successfully and init has been completed:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS      RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running     0          1m
          my-release-cockroachdb-1            1/1       Running     0          1m
          my-release-cockroachdb-2            1/1       Running     0          1m
          my-release-cockroachdb-init-k6jcr   0/1       Completed   0          1m
          ```

          Confirm that persistent volumes are created and claimed for each pod:

          ```shell
          kubectl get pv
          ```

          ```
          NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS    CLAIM                                      STORAGECLASS   REASON    AGE
          pvc-64878ebf-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-0   standard                 51s
          pvc-64945b4f-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-1   standard                 51s
          pvc-649d920d-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-2   standard                 51s
          ```

          ## Upgrading the cluster

          ### Chart version 3.0.0 and after

          Launch a temporary interactive pod and start the built-in SQL client:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          Set `cluster.preserve_downgrade_option`, where `$current_version` is the CockroachDB version currently running (e.g., `19.2`):

          ```sql
          > SET CLUSTER SETTING cluster.preserve_downgrade_option = '$current_version';
          ```

          Exit the shell and delete the temporary pod:

          ```sql
          > \q
          ```

          Kick off the upgrade process by changing the new Docker image, where `$new_version` is the CockroachDB version to which you are upgrading:

          ```shell
          kubectl delete job my-release-cockroachdb-init
          ```

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"image":{"tag":"<new version tag here>"}}}' --type merge
          ```

          Kubernetes will carry out a safe [rolling upgrade](https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets) of your CockroachDB nodes one-by-one. Monitor the cluster's pods until all have been successfully restarted:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS              RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running             0          2m
          my-release-cockroachdb-1            1/1       Running             0          3m
          my-release-cockroachdb-2            1/1       Running             0          3m
          my-release-cockroachdb-3            0/1       ContainerCreating   0          25s
          my-release-cockroachdb-init-nwjkh   0/1       ContainerCreating   0          6s
          ```

          ```shell
          kubectl get pods \
          -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.spec.containers[0].image}{"\n"}'
          ```

          ```
          my-release-cockroachdb-0    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-1    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-2    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-3    cockroachdb/cockroach:v20.2.4
          ```

          Resume normal operations. Once you are comfortable that the stability and performance of the cluster is what you'd expect post-upgrade, finalize the upgrade:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          ```sql
          > RESET CLUSTER SETTING cluster.preserve_downgrade_option;
          > \q
          ```

          ## Configuration

          The following table lists the configurable parameters of the CockroachDB chart and their default values.
          For details see the [`values.yaml`](values.yaml) file.

          | Parameter                                                 | Description                                                     | Default                                          |
          | ---------                                                 | -----------                                                     | -------                                          |
          | `clusterDomain`                                           | Cluster's default DNS domain                                    | `cluster.local`                                  |
          | `conf.attrs`                                              | CockroachDB node attributes                                     | `[]`                                             |
          | `conf.cache`                                              | Size of CockroachDB's in-memory cache                           | `25%`                                            |
          | `conf.cluster-name`                                       | Name of CockroachDB cluster                                     | `""`                                             |
          | `conf.disable-cluster-name-verification`                  | Disable CockroachDB cluster name verification                   | `no`                                             |
          | `conf.join`                                               | List of already-existing CockroachDB instances                  | `[]`                                             |
          | `conf.max-disk-temp-storage`                              | Max storage capacity for temp data                              | `0`                                              |
          | `conf.max-offset`                                         | Max allowed clock offset for CockroachDB cluster                | `500ms`                                          |
          | `conf.max-sql-memory`                                     | Max memory to use processing SQL querie                         | `25%`                                            |
          | `conf.locality`                                           | Locality attribute for this deployment                          | `""`                                             |
          | `conf.single-node`                                        | Disable CockroachDB clustering (standalone mode)                | `no`                                             |
          | `conf.sql-audit-dir`                                      | Directory for SQL audit log                                     | `""`                                             |
          | `conf.port`                                               | CockroachDB primary serving port in Pods                        | `26257`                                          |
          | `conf.http-port`                                          | CockroachDB HTTP port in Pods                                   | `8080`                                           |
          | `image.repository`                                        | Container image name                                            | `cockroachdb/cockroach`                          |
          | `image.tag`                                               | Container image tag                                             | `v20.2.4`                                        |
          | `image.pullPolicy`                                        | Container pull policy                                           | `IfNotPresent`                                   |
          | `image.credentials`                                       | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `statefulset.replicas`                                    | StatefulSet replicas number                                     | `3`                                              |
          | `statefulset.updateStrategy`                              | Update strategy for StatefulSet Pods                            | `{"type": "RollingUpdate"}`                      |
          | `statefulset.podManagementPolicy`                         | `OrderedReady`/`Parallel` Pods creation/deletion order          | `Parallel`                                       |
          | `statefulset.budget.maxUnavailable`                       | k8s PodDisruptionBudget parameter                               | `1`                                              |
          | `statefulset.args`                                        | Extra command-line arguments                                    | `[]`                                             |
          | `statefulset.env`                                         | Extra env vars                                                  | `[]`                                             |
          | `statefulset.secretMounts`                                | Additional Secrets to mount at cluster members                  | `[]`                                             |
          | `statefulset.labels`                                      | Additional labels of StatefulSet and its Pods                   | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `statefulset.annotations`                                 | Additional annotations of StatefulSet Pods                      | `{}`                                             |
          | `statefulset.nodeAffinity`                                | [Node affinity rules][2] of StatefulSet Pods                    | `{}`                                             |
          | `statefulset.podAffinity`                                 | [Inter-Pod affinity rules][1] of StatefulSet Pods               | `{}`                                             |
          | `statefulset.podAntiAffinity`                             | [Anti-affinity rules][1] of StatefulSet Pods                    | auto                                             |
          | `statefulset.podAntiAffinity.topologyKey`                 | The topologyKey for auto [anti-affinity rules][1]               | `kubernetes.io/hostname`                         |
          | `statefulset.podAntiAffinity.type`                        | Type of auto [anti-affinity rules][1]                           | `soft`                                           |
          | `statefulset.podAntiAffinity.weight`                      | Weight for `soft` auto [anti-affinity rules][1]                 | `100`                                            |
          | `statefulset.nodeSelector`                                | Node labels for StatefulSet Pods assignment                     | `{}`                                             |
          | `statefulset.priorityClassName`                           | [PriorityClassName][4] for StatefulSet Pods                     | `""`                                             |
          | `statefulset.tolerations`                                 | Node taints to tolerate by StatefulSet Pods                     | `[]`                                             |
          | `statefulset.topologySpreadConstraints`                   | [Topology Spread Constraints rules][5] of StatefulSet Pods      | auto                                             |
          | `statefulset.topologySpreadConstraints.maxSkew`           | Degree to which Pods may be unevenly distributed                | `1`                                              |
          | `statefulset.topologySpreadConstraints.topologyKey`       | The key of node labels                                          | `topology.kubernetes.io/zone`                    |
          | `statefulset.topologySpreadConstraints.whenUnsatisfiable` | `ScheduleAnyway`/`DoNotSchedule` for unsatisfiable constraints  | `ScheduleAnyway`                                 |
          | `statefulset.resources`                                   | Resource requests and limits for StatefulSet Pods               | `{}`                                             |
          | `service.ports.grpc.external.port`                        | CockroachDB primary serving port in Services                    | `26257`                                          |
          | `service.ports.grpc.external.name`                        | CockroachDB primary serving port name in Services               | `grpc`                                           |
          | `service.ports.grpc.internal.port`                        | CockroachDB inter-communication port in Services                | `26257`                                          |
          | `service.ports.grpc.internal.name`                        | CockroachDB inter-communication port name in Services           | `grpc-internal`                                  |
          | `service.ports.http.port`                                 | CockroachDB HTTP port in Services                               | `8080`                                           |
          | `service.ports.http.name`                                 | CockroachDB HTTP port name in Services                          | `http`                                           |
          | `service.public.type`                                     | Public Service type                                             | `ClusterIP`                                      |
          | `service.public.labels`                                   | Additional labels of public Service                             | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.public.annotations`                              | Additional annotations of public Service                        | `{}`                                             |
          | `service.discovery.labels`                                | Additional labels of discovery Service                          | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.discovery.annotations`                           | Additional annotations of discovery Service                     | `{}`                                             |
          | `ingress.enabled`                                         | Enable ingress resource for CockroachDB                         | `false`                                          |
          | `ingress.labels`                                          | Additional labels of Ingress                                    | `{}`                                             |
          | `ingress.annotations`                                     | Additional annotations of Ingress                               | `{}`                                             |
          | `ingress.paths`                                           | Paths for the default host                                      | `[/]`                                            |
          | `ingress.hosts`                                           | CockroachDB Ingress hostnames                                   | `[]`                                             |
          | `ingress.tls[0].hosts`                                    | CockroachDB Ingress tls hostnames                               | `nil`                                            |
          | `ingress.tls[0].secretName`                               | CockroachDB Ingress tls secret name                             | `nil`                                            |
          | `serviceMonitor.enabled`                                  | Create [ServiceMonitor](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/design.md#servicemonitor) Resource for scraping metrics using [PrometheusOperator](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/user-guides/getting-started.md#prometheus-operator)                     | `false`                                             |
          | `serviceMonitor.labels`                                   | Additional labels of ServiceMonitor                             | `{}`                                             |
          | `serviceMonitor.annotations`                              | Additional annotations of ServiceMonitor                        | `{}`                                             |
          | `serviceMonitor.interval`                                 | ServiceMonitor scrape metrics interval                          | `10s`                                            |
          | `serviceMonitor.scrapeTimeout`                            | ServiceMonitor scrape timeout                                   | `nil`                                            |
          | `storage.hostPath`                                        | Absolute path on host to store data                             | `""`                                             |
          | `storage.persistentVolume.enabled`                        | Whether to use PersistentVolume to store data                   | `yes`                                            |
          | `storage.persistentVolume.size`                           | PersistentVolume size                                           | `100Gi`                                          |
          | `storage.persistentVolume.storageClass`                   | PersistentVolume class                                          | `""`                                             |
          | `storage.persistentVolume.labels`                         | Additional labels of PersistentVolumeClaim                      | `{}`                                             |
          | `storage.persistentVolume.annotations`                    | Additional annotations of PersistentVolumeClaim                 | `{}`                                             |
          | `init.labels`                                             | Additional labels of init Job and its Pod                       | `{"app.kubernetes.io/component": "init"}`        |
          | `init.annotations`                                        | Additional labels of the Pod of init Job                        | `{}`                                             |
          | `init.affinity`                                           | [Affinity rules][2] of init Job Pod                             | `{}`                                             |
          | `init.nodeSelector`                                       | Node labels for init Job Pod assignment                         | `{}`                                             |
          | `init.tolerations`                                        | Node taints to tolerate by init Job Pod                         | `[]`                                             |
          | `init.resources`                                          | Resource requests and limits for the Pod of init Job            | `{}`                                             |
          | `tls.enabled`                                             | Whether to run securely using TLS certificates                  | `no`                                             |
          | `tls.serviceAccount.create`                               | Whether to create a new RBAC service account                    | `yes`                                            |
          | `tls.serviceAccount.name`                                 | Name of RBAC service account to use                             | `""`                                             |
          | `tls.certs.provided`                                      | Bring your own certs scenario, i.e certificates are provided    | `no`                                             |
          | `tls.certs.clientRootSecret`                              | If certs are provided, secret name for client root cert         | `cockroachdb-root`                               |
          | `tls.certs.nodeSecret`                                    | If certs are provided, secret name for node cert                | `cockroachdb-node`                               |
          | `tls.certs.tlsSecret`                                     | Own certs are stored in TLS secret                              | `no`                                             |
          | `tls.init.image.repository`                               | Image to use for requesting TLS certificates                    | `cockroachdb/cockroach-k8s-request-cert`         |
          | `tls.init.image.tag`                                      | Image tag to use for requesting TLS certificates                | `0.4`                                            |
          | `tls.init.image.pullPolicy`                               | Requesting TLS certificates container pull policy               | `IfNotPresent`                                   |
          | `tls.init.image.credentials`                              | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `networkPolicy.enabled`                                   | Enable NetworkPolicy for CockroachDB's Pods                     | `no`                                             |
          | `networkPolicy.ingress.grpc`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |
          | `networkPolicy.ingress.http`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |


          Override the default parameters using the `CockroachDB` custom resource.

          ## Deep dive

          ### Connecting to the CockroachDB cluster

          Once you've created the cluster, you can start talking to it by connecting to its `-public` Service. CockroachDB is PostgreSQL wire protocol compatible, so there's a [wide variety of supported clients](https://www.cockroachlabs.com/docs/install-client-drivers.html). As an example, we'll open up a SQL shell using CockroachDB's built-in shell and play around with it a bit, like this (likely needing to replace `my-release-cockroachdb-public` with the name of the `-public` Service that was created with your installed chart):

          ```shell
          kubectl run cockroach-client --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host my-release-cockroachdb-public
          ```

          ```
          Waiting for pod default/cockroach-client to be running, status is Pending,
          pod ready: false
          If you don't see a command prompt, try pressing enter.
          root@my-release-cockroachdb-public:26257> SHOW DATABASES;
          +--------------------+
          |      Database      |
          +--------------------+
          | information_schema |
          | pg_catalog         |
          | system             |
          +--------------------+
          (3 rows)
          root@my-release-cockroachdb-public:26257> CREATE DATABASE bank;
          CREATE DATABASE
          root@my-release-cockroachdb-public:26257> CREATE TABLE bank.accounts (id INT
          PRIMARY KEY, balance DECIMAL);
          CREATE TABLE
          root@my-release-cockroachdb-public:26257> INSERT INTO bank.accounts VALUES
          (1234, 10000.50);
          INSERT 1
          root@my-release-cockroachdb-public:26257> SELECT * FROM bank.accounts;
          +------+---------+
          |  id  | balance |
          +------+---------+
          | 1234 | 10000.5 |
          +------+---------+
          (1 row)
          root@my-release-cockroachdb-public:26257> \q
          Waiting for pod default/cockroach-client to terminate, status is Running
          pod "cockroach-client" deleted
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          ### Cluster health

          Because our pod spec includes regular health checks of the CockroachDB processes, simply running `kubectl get pods` and looking at the `STATUS` column is sufficient to determine the health of each instance in the cluster.

          If you want more detailed information about the cluster, the best place to look is the Admin UI.

          ### Accessing the Admin UI

          If you want to see information about how the cluster is doing, you can try pulling up the CockroachDB Admin UI by port-forwarding from your local machine to one of the pods (replacing `my-release-cockroachdb-0` with the name of one of your pods:

          ```shell
          kubectl port-forward my-release-cockroachdb-0 8080
          ```

          You should then be able to access the Admin UI by visiting <http://localhost:8080/> in your web browser.

          ### Failover

          If any CockroachDB member fails, it is restarted or recreated automatically by the Kubernetes infrastructure, and will re-join the cluster automatically when it comes back up. You can test this scenario by killing any of the CockroachDB pods:

          ```shell
          kubectl delete pod my-release-cockroachdb-1
          ```

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          After a while:

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-1  1/1       Running       0          20s
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          You can check the state of re-joining from the new pod's logs:

          ```shell
          kubectl logs my-release-cockroachdb-1
          ```

          ```
          [...]
          I161028 19:32:09.754026 1 server/node.go:586  [n1] node connected via gossip and
          verified as part of cluster {"35ecbc27-3f67-4e7d-9b8f-27c31aae17d6"}
          [...]
          cockroachdb-0.my-release-cockroachdb.default.svc.cluster.local:26257
          build:      beta-20161027-55-gd2d3c7f @ 2016/10/28 19:27:25 (go1.7.3)
          admin:      http://0.0.0.0:8080
          sql:
          postgresql://root@my-release-cockroachdb-1.my-release-cockroachdb.default.svc.cluster.local:26257?sslmode=disable
          logs:       cockroach-data/logs
          store[0]:   path=cockroach-data
          status:     restarted pre-existing node
          clusterID:  {35ecbc27-3f67-4e7d-9b8f-27c31aae17d6}
          nodeID:     2
          [...]
          ```

          ### NetworkPolicy

          To enable NetworkPolicy for CockroachDB, install [a networking plugin that implements the Kubernetes NetworkPolicy spec](https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy#before-you-begin), and set `networkPolicy.enabled` to `yes`/`true`.

          For Kubernetes v1.5 & v1.6, you must also turn on NetworkPolicy by setting the `DefaultDeny` Namespace annotation. Note: this will enforce policy for _all_ pods in the Namespace:

          ```shell
          kubectl annotate namespace default "net.beta.kubernetes.io/network-policy={\"ingress\":{\"isolation\":\"DefaultDeny\"}}"
          ```

          For more precise policy, set `networkPolicy.ingress.grpc` and `networkPolicy.ingress.http` rules. This will only allow pods that match the provided rules to connect to CockroachDB.

          ### Scaling

          Scaling should be managed via the `helm upgrade` command. After resizing your cluster on your cloud environment (e.g., GKE or EKS), run the following command to add a pod. This assumes you scaled from 3 to 4 nodes:

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"statefulset":{"replicas":"4"}}}' --type merge
          ```

          Note, that if you are running in secure mode (`tls.enabled` is `yes`/`true`) and increase the size of your cluster, you will also have to approve the CSR (certificate-signing request) of each new node (using `kubectl get csr` and `kubectl certificate approve`).

          [1]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#inter-pod-affinity-and-anti-affinity
          [2]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#node-affinity
          [3]: https://cert-manager.io/
          [4]: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass
          [5]: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
        displayName: CockroachDB Helm Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cockroach
        - cockroachdb
        links:
        - name: Helm Chart Source
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb
        - name: Configuration Options
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration
        - name: CockroachDB Source
          url: https://github.com/cockroachdb/cockroach
        maintainers:
        - email: yandu@cockroachlabs.com
          name: Yandu Oppacher
        maturity: stable
        minKubeVersion: 1.8.0
        provider:
          name: Helm Community
          url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/cockroachdb/cockroach-helm-operator:6.0.0
        - quay.io/openshift-community-operators/cockroachdb@sha256:d3016b1507515fc7712f9c47fd9082baf9ccb070aaab58ed0ef6e5abdedde8ba
        version: 6.0.0
      entries:
      - name: cockroachdb.v6.0.0
        version: 6.0.0
      name: stable-v6.x
    defaultChannel: stable-v6.x
    packageName: cockroachdb
    provider:
      name: Helm Community
      url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OnGres
      provider-url: https://ongres.com
    name: stackgres-community
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stackgres-community.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - quay.io/community-operator-pipeline-prod/stackgres-community@sha256:d6a2bb38278da721b32ea1d84f613cd38fe9e3d570c1f5d3c81e1d812e3e6b09
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        version: 1.18.3
      entries:
      - name: stackgres-community.v1.18.3
        version: 1.18.3
      - name: stackgres-community.v1.18.2
        version: 1.18.2
      - name: stackgres-community.v1.18.1
        version: 1.18.1
      name: candidate
    - currentCSV: stackgres-community.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/stackgres-community@sha256:d6a2bb38278da721b32ea1d84f613cd38fe9e3d570c1f5d3c81e1d812e3e6b09
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        version: 1.18.3
      entries:
      - name: stackgres-community.v1.18.3
        version: 1.18.3
      - name: stackgres-community.v1.18.2
        version: 1.18.2
      - name: stackgres-community.v1.18.1
        version: 1.18.1
      name: fast
    - currentCSV: stackgres-community.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - quay.io/community-operator-pipeline-prod/stackgres-community@sha256:d6a2bb38278da721b32ea1d84f613cd38fe9e3d570c1f5d3c81e1d812e3e6b09
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        version: 1.18.3
      entries:
      - name: stackgres-community.v1.18.3
        version: 1.18.3
      - name: stackgres-community.v1.18.2
        version: 1.18.2
      - name: stackgres-community.v1.18.1
        version: 1.18.1
      name: stable
    defaultChannel: stable
    packageName: stackgres-community
    provider:
      name: OnGres
      url: https://ongres.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: mtv-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mtv-operator.v2.10.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "ForkliftController",
                "metadata": {
                  "name": "forklift-controller",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "feature_ui_plugin": "true",
                  "feature_validation": "true",
                  "feature_volume_populator": "true"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Hook",
                "metadata": {
                  "name": "example-hook",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "image": "quay.io/konveyor/hook-runner",
                  "playbook": "\u003cbase64-encoded-playbook\u003e"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Host",
                "metadata": {
                  "name": "example-host",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "id": "",
                  "ipAddress": "",
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Migration",
                "metadata": {
                  "name": "example-migration",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "plan": {
                    "name": "example-plan",
                    "namespace": "openshift-mtv"
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "NetworkMap",
                "metadata": {
                  "name": "example-networkmap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "name": "",
                        "namespace": "",
                        "type": "pod"
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OpenstackVolumePopulator",
                "metadata": {
                  "name": "example-openstack",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "identityUrl": "",
                  "imageId": "",
                  "secretName": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OvirtVolumePopulator",
                "metadata": {
                  "name": "example-ovirt-imageio",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "diskId": "",
                  "engineSecretName": "",
                  "engineUrl": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Plan",
                "metadata": {
                  "name": "example-plan",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "provider": {
                    "destination": {
                      "name": "",
                      "namespace": ""
                    },
                    "source": {
                      "name": "",
                      "namespace": ""
                    }
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                  "name": "example-provider",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "secret": {
                    "name": "",
                    "namespace": ""
                  },
                  "type": "vmware",
                  "url": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "StorageMap",
                "metadata": {
                  "name": "example-storagemap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "storageClass": ""
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "true"
          containerImage: registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:f364639313bdcd065a5f6c71f74c7c7cf920e2919e1342e6b184780455c8fb6e
          createdAt: "2025-12-16T16:35:23Z"
          description: Facilitates migration of VM workloads to OpenShift Virtualization
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/fipsmode: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "forklift.konveyor.io/v1beta1",
              "kind": "ForkliftController",
              "metadata": {
                "name": "forklift-controller",
                "namespace": "openshift-mtv"
              },
              "spec": {
                "feature_ui_plugin": "true",
                "feature_validation": "true",
                "feature_volume_populator": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mtv
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/kubev2v/forklift
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VM migration controller
            displayName: ForkliftController
            kind: ForkliftController
            name: forkliftcontrollers.forklift.konveyor.io
            version: v1beta1
          - description: Hook schema for the hooks API
            displayName: Hook
            kind: Hook
            name: hooks.forklift.konveyor.io
            version: v1beta1
          - description: VM host
            displayName: Host
            kind: Host
            name: hosts.forklift.konveyor.io
            version: v1beta1
          - description: VM migration
            displayName: Migration
            kind: Migration
            name: migrations.forklift.konveyor.io
            version: v1beta1
          - description: VM network map
            displayName: NetworkMap
            kind: NetworkMap
            name: networkmaps.forklift.konveyor.io
            version: v1beta1
          - description: OpenStack Volume Populator
            displayName: OpenstackVolumePopulator
            kind: OpenstackVolumePopulator
            name: openstackvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: OVA Provider Server
            displayName: OVAProviderServer
            kind: OVAProviderServer
            name: ovaproviderservers.forklift.konveyor.io
            version: v1beta1
          - description: oVirt Volume Populator
            displayName: OvirtVolumePopulator
            kind: OvirtVolumePopulator
            name: ovirtvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: VM migration plan
            displayName: Plan
            kind: Plan
            name: plans.forklift.konveyor.io
            version: v1beta1
          - description: VM provider
            displayName: Provider
            kind: Provider
            name: providers.forklift.konveyor.io
            version: v1beta1
          - description: VM storage map
            displayName: StorageMap
            kind: StorageMap
            name: storagemaps.forklift.konveyor.io
            version: v1beta1
          - description: VSphere Xcopy Volume Populator
            displayName: VSphereXcopyVolumePopulator
            kind: VSphereXcopyVolumePopulator
            name: vspherexcopyvolumepopulators.forklift.konveyor.io
            version: v1beta1
        description: |
          The Migration Toolkit for Virtualization Operator manages the deployment and life cycle of Migration Toolkit for Virtualization on [OpenShift](https://www.openshift.com/) Container Platform.

          ### Installation

          OpenShift Virtualization must be installed on an OpenShift migration target cluster before you can use MTV to transfer any VMs to that cluster

          Once you have successfully installed the Operator, proceed to deploy components by creating the required ForkliftController CR.

          By default, the Operator installs the following components on a target cluster:

          * Controller, to coordinate migration processes.
          * UI, the web console to manage migrations.
          * Validation, a service to validate migration workflows.

          ### Compatibility

          Migration Toolkit for Virtualization 2.9 is supported on OpenShift 4.17, 4.18 and 4.19

          Migration Toolkit for Virtualization 2.10 is supported on OpenShift 4.18, 4.19 and 4.20

          More information on compatibility in the [MTV Lifecycle document](https://access.redhat.com/support/policy/updates/migration-toolkit-for-virtualization).

          ### Documentation
          Documentation can be found on the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization/).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Virtualization Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Creating a case in the [Red Hat Customer Portal](https://access.redhat.com/support/cases/) with any issues you find using Migration Toolkit for Application and its Operator.
          * Fixing issues by opening Pull Requests in the [KubeV2V](https://github.com/kubev2v/) under Forklift Projects.
          * Improving Forklift upstream [documentation](https://github.com/kubev2v/forklift-documentation/).
        displayName: Migration Toolkit for Virtualization Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - forklift
        - konveyor
        - mtv
        links:
        - name: Migration Toolkit for Virtualization Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization
        - name: Forklift Operator
          url: https://github.com/kubev2v/forklift
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:8ae52c3487c3eff996800be4321ef5cd594a6a451c2cfe9ed283c862e9fa5703
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:be16e654be6a8d0513f92ba2e148941cd6ddb8e597085f66be6899c1ba605ce5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:f6e5d3c93ee1c8962828ef889902a099a4bbb1f6665a0975bdffa9e8d6e4cb6d
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fe352650a328af67ba8cb331bafb320f0f147fe8a41782311206b8a6f0255552
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:8bde2126f5f8a6e1ca6b84c559c83771c8580fae0fca338219e94cba3e908e29
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel10@sha256:3d927816fbd65ad819444432c6d80907143944e0fba525826edc10c8ca568849
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:2cbcb294f707d4832de3436df5cb35b442f8db69d24f3fb7c66ca7c2579e7930
        - registry.redhat.io/migration-toolkit-virtualization/mtv-cli-download-rhel9@sha256:220639596f63897fecdb261d9faa7a8f6c1b1b9661c26e449336e3e19585d8f9
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:4417efc0a042ab078138d5a83eb1b32e7f1d6ad90f69efdab40ed43c01d1fe30
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:7b5871df7274de2dd7df16f311fe97b8873b88032571d83216d6e61820aa288f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:018f9305c10388d368b8a29ef6a827494492df23a3279265ff3e41971e1dda43
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:869705843f9c42a664f0e27afad9d609d2f8d56204f1fd2c693e340cc384afd9
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:92fcb195ede1bcc5e1108bbea950aaf953f8058fd1bc3ff4381f7d7d11da1859
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-proxy-rhel9@sha256:d990f6ddd51e468aeef329fe6c0c083ad524e6b72d8dc4ff8fcfe4cea4d16156
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:f364639313bdcd065a5f6c71f74c7c7cf920e2919e1342e6b184780455c8fb6e
        version: 2.10.2
      entries:
      - name: mtv-operator.v2.10.2
        version: 2.10.2
      - name: mtv-operator.v2.10.1
        version: 2.10.1
      - name: mtv-operator.v2.10.0
        version: 2.10.0
      name: release-v2.10
    - currentCSV: mtv-operator.v2.7.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "ForkliftController",
                "metadata": {
                  "name": "forklift-controller",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "feature_ui_plugin": "true",
                  "feature_validation": "true",
                  "feature_volume_populator": "true"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Hook",
                "metadata": {
                  "name": "example-hook",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "image": "quay.io/konveyor/hook-runner",
                  "playbook": "<base64-encoded-playbook>"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Host",
                "metadata": {
                  "name": "example-host",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "id": "",
                  "ipAddress": "",
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Migration",
                "metadata": {
                  "name": "example-migration",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "plan": {
                    "name": "example-plan",
                    "namespace": "openshift-mtv"
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "NetworkMap",
                "metadata": {
                  "name": "example-networkmap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "name": "",
                        "namespace": "",
                        "type": "pod"
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OpenstackVolumePopulator",
                "metadata": {
                  "name": "example-openstack",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "identityUrl": "",
                  "imageId": "",
                  "secretName": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OvirtVolumePopulator",
                "metadata": {
                  "name": "example-ovirt-imageio",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "diskId": "",
                  "engineSecretName": "",
                  "engineUrl": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Plan",
                "metadata": {
                  "name": "example-plan",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "provider": {
                    "destination": {
                      "name": "",
                      "namespace": ""
                    },
                    "source": {
                      "name": "",
                      "namespace": ""
                    }
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                  "name": "example-provider",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "secret": {
                    "name": "",
                    "namespace": ""
                  },
                  "type": "vmware",
                  "url": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "StorageMap",
                "metadata": {
                  "name": "example-storagemap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "storageClass": ""
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "true"
          containerImage: registry.redhat.io/migration-toolkit-virtualization/mtv-rhel8-operator@sha256:8dbeace89a921e0d11f85378099e39cc357702d2f20dfb9d14cebbe150d2500d
          createdAt: "2024-10-11T14:05:47Z"
          description: Facilitates migration of VM workloads to OpenShift Virtualization
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/fipsmode: "true"
          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.skipRange: '>=0.0.0 <2.7.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "forklift.konveyor.io/v1beta1",
              "kind": "ForkliftController",
              "metadata": {
                "name": "forklift-controller",
                "namespace": "openshift-mtv"
              },
              "spec": {
                "feature_ui_plugin": "true",
                "feature_validation": "true",
                "feature_volume_populator": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mtv
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/kubev2v/forklift
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VM migration controller
            displayName: ForkliftController
            kind: ForkliftController
            name: forkliftcontrollers.forklift.konveyor.io
            version: v1beta1
          - description: Hook schema for the hooks API
            displayName: Hook
            kind: Hook
            name: hooks.forklift.konveyor.io
            version: v1beta1
          - description: VM host
            displayName: Host
            kind: Host
            name: hosts.forklift.konveyor.io
            version: v1beta1
          - description: VM migration
            displayName: Migration
            kind: Migration
            name: migrations.forklift.konveyor.io
            version: v1beta1
          - description: VM network map
            displayName: NetworkMap
            kind: NetworkMap
            name: networkmaps.forklift.konveyor.io
            version: v1beta1
          - description: OpenStack Volume Populator
            displayName: OpenstackVolumePopulator
            kind: OpenstackVolumePopulator
            name: openstackvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: oVirt Volume Populator
            displayName: OvirtVolumePopulator
            kind: OvirtVolumePopulator
            name: ovirtvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: VM migration plan
            displayName: Plan
            kind: Plan
            name: plans.forklift.konveyor.io
            version: v1beta1
          - description: VM provider
            displayName: Provider
            kind: Provider
            name: providers.forklift.konveyor.io
            version: v1beta1
          - description: VM storage map
            displayName: StorageMap
            kind: StorageMap
            name: storagemaps.forklift.konveyor.io
            version: v1beta1
        description: |
          The Migration Toolkit for Virtualization Operator manages the deployment and life cycle of Migration Toolkit for Virtualization on [OpenShift](https://www.openshift.com/) Container Platform.

          ### Installation

          OpenShift Virtualization must be installed on an OpenShift migration target cluster before you can use MTV to transfer any VMs to that cluster

          Once you have successfully installed the Operator, proceed to deploy components by creating the required ForkliftController CR.

          By default, the Operator installs the following components on a target cluster:

          * Controller, to coordinate migration processes.
          * UI, the web console to manage migrations.
          * Validation, a service to validate migration workflows.

          ### Compatibility

          Migration Toolkit for Virtualization 2.5 is supported on OpenShift 4.12 and 4.13

          Migration Toolkit for Virtualization 2.6 is supported on OpenShift 4.14 and 4.15

          Migration Toolkit for Virtualization 2.7 is supported on OpenShift 4.16 and 4.17

          More information on compatibility in the [MTV Lifecycle document](https://access.redhat.com/articles/6001751).

          ### Documentation
          Documentation can be found on the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization/).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Virtualization Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Creating a case in the [Red Hat Customer Portal](https://access.redhat.com/support/cases/) with any issues you find using Migration Toolkit for Application and its Operator.
          * Fixing issues by opening Pull Requests in the [KubeV2V](https://github.com/kubev2v/) under Forklift Projects.
          * Improving Forklift upstream [documentation](https://github.com/kubev2v/forklift-documentation/).
        displayName: Migration Toolkit for Virtualization Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - forklift
        - konveyor
        - mtv
        links:
        - name: Migration Toolkit for Virtualization Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization
        - name: Forklift
          url: http://github.com/kubev2v/forklift
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:936fd68d7659683de7789fcf34d2e5873bd4bd1534c01c2d80501647f7c3c442
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:c543dbbb66fcac02345e1d3c12333780721bf049dca0f0a27d4c55b15a5d3e14
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fd6fb83bbeb9010f7e91f0afc91beac0bf38cb79c2de8f533a2bd07b1b238262
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:6d0aeffbccaf9df83b42c530bf82707aa7c1cc16f72a5ef30b66fbd562c01ab3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:8c05a303be5c536f4051ef291475b578d4d38ca0946fb4b4dd8bca376ef432aa
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:e91c2e5473f3e24c185dd25e9843f333e6d7419d9c5f4d4396669717b5969683
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:a65780c5680a6fbbd0e3d0eed423b14a9c9b3d7d17f801c1eb6eb6b777384ca5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel8-operator@sha256:8dbeace89a921e0d11f85378099e39cc357702d2f20dfb9d14cebbe150d2500d
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:4bea07e101740afc36a1617363a79b1c474efcacd584f6e475a53b3f2395a079
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:8337924489a1747d4bbca6dd6ac42210731cf721b549b5830846b271621e2ac1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:1dd8f0f08ff1323d910fea8adfa13cef64c2fd2f01968e4d9d55f71cf42835d3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:365115407964d182de7e7564438c6fd089e2c0bcc0f94ec48621ca0cc2bf0fe4
        version: 2.7.2
      entries:
      - name: mtv-operator.v2.7.2
        version: 2.7.2
      name: release-v2.7
    - currentCSV: mtv-operator.v2.8.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "ForkliftController",
                "metadata": {
                  "name": "forklift-controller",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "feature_ui_plugin": "true",
                  "feature_validation": "true",
                  "feature_volume_populator": "true"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Hook",
                "metadata": {
                  "name": "example-hook",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "image": "quay.io/konveyor/hook-runner",
                  "playbook": "<base64-encoded-playbook>"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Host",
                "metadata": {
                  "name": "example-host",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "id": "",
                  "ipAddress": "",
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Migration",
                "metadata": {
                  "name": "example-migration",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "plan": {
                    "name": "example-plan",
                    "namespace": "openshift-mtv"
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "NetworkMap",
                "metadata": {
                  "name": "example-networkmap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "name": "",
                        "namespace": "",
                        "type": "pod"
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OpenstackVolumePopulator",
                "metadata": {
                  "name": "example-openstack",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "identityUrl": "",
                  "imageId": "",
                  "secretName": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OvirtVolumePopulator",
                "metadata": {
                  "name": "example-ovirt-imageio",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "diskId": "",
                  "engineSecretName": "",
                  "engineUrl": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Plan",
                "metadata": {
                  "name": "example-plan",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "provider": {
                    "destination": {
                      "name": "",
                      "namespace": ""
                    },
                    "source": {
                      "name": "",
                      "namespace": ""
                    }
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                  "name": "example-provider",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "secret": {
                    "name": "",
                    "namespace": ""
                  },
                  "type": "vmware",
                  "url": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "StorageMap",
                "metadata": {
                  "name": "example-storagemap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "storageClass": ""
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "true"
          containerImage: registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:d267c04e414d986daba9750bad590d6387bcb798df64bc583da97d88b182dc9f
          createdAt: "2025-05-29T13:56:42Z"
          description: Facilitates migration of VM workloads to OpenShift Virtualization
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/fipsmode: "true"
          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.skipRange: '>=0.0.0 <2.8.5'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "forklift.konveyor.io/v1beta1",
              "kind": "ForkliftController",
              "metadata": {
                "name": "forklift-controller",
                "namespace": "openshift-mtv"
              },
              "spec": {
                "feature_ui_plugin": "true",
                "feature_validation": "true",
                "feature_volume_populator": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mtv
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/kubev2v/forklift
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VM migration controller
            displayName: ForkliftController
            kind: ForkliftController
            name: forkliftcontrollers.forklift.konveyor.io
            version: v1beta1
          - description: Hook schema for the hooks API
            displayName: Hook
            kind: Hook
            name: hooks.forklift.konveyor.io
            version: v1beta1
          - description: VM host
            displayName: Host
            kind: Host
            name: hosts.forklift.konveyor.io
            version: v1beta1
          - description: VM migration
            displayName: Migration
            kind: Migration
            name: migrations.forklift.konveyor.io
            version: v1beta1
          - description: VM network map
            displayName: NetworkMap
            kind: NetworkMap
            name: networkmaps.forklift.konveyor.io
            version: v1beta1
          - description: OpenStack Volume Populator
            displayName: OpenstackVolumePopulator
            kind: OpenstackVolumePopulator
            name: openstackvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: oVirt Volume Populator
            displayName: OvirtVolumePopulator
            kind: OvirtVolumePopulator
            name: ovirtvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: VM migration plan
            displayName: Plan
            kind: Plan
            name: plans.forklift.konveyor.io
            version: v1beta1
          - description: VM provider
            displayName: Provider
            kind: Provider
            name: providers.forklift.konveyor.io
            version: v1beta1
          - description: VM storage map
            displayName: StorageMap
            kind: StorageMap
            name: storagemaps.forklift.konveyor.io
            version: v1beta1
          - description: VSphere Xcopy Volume Populator
            displayName: VSphereXcopyVolumePopulator
            kind: VSphereXcopyVolumePopulator
            name: vspherexcopyvolumepopulators.forklift.konveyor.io
            version: v1beta1
        description: |
          The Migration Toolkit for Virtualization Operator manages the deployment and life cycle of Migration Toolkit for Virtualization on [OpenShift](https://www.openshift.com/) Container Platform.

          ### Installation

          OpenShift Virtualization must be installed on an OpenShift migration target cluster before you can use MTV to transfer any VMs to that cluster

          Once you have successfully installed the Operator, proceed to deploy components by creating the required ForkliftController CR.

          By default, the Operator installs the following components on a target cluster:

          * Controller, to coordinate migration processes.
          * UI, the web console to manage migrations.
          * Validation, a service to validate migration workflows.

          ### Compatibility

          Migration Toolkit for Virtualization 2.7 is supported on OpenShift 4.15, 4.16 and 4.17

          Migration Toolkit for Virtualization 2.8 is supported on OpenShift 4.16, 4.17, 4.18 and 4.19

          More information on compatibility in the [MTV Lifecycle document](https://access.redhat.com/support/policy/updates/migration-toolkit-for-virtualization).

          ### Documentation
          Documentation can be found on the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization/).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Virtualization Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Creating a case in the [Red Hat Customer Portal](https://access.redhat.com/support/cases/) with any issues you find using Migration Toolkit for Application and its Operator.
          * Fixing issues by opening Pull Requests in the [KubeV2V](https://github.com/kubev2v/) under Forklift Projects.
          * Improving Forklift upstream [documentation](https://github.com/kubev2v/forklift-documentation/).
        displayName: Migration Toolkit for Virtualization Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - forklift
        - konveyor
        - mtv
        links:
        - name: Migration Toolkit for Virtualization Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization
        - name: Forklift
          url: http://github.com/kubev2v/forklift
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:1344719931cedfd7c64acc9419af6fc0cc5850c23b2aa3e597d9f92600b6259b
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:6a3c257eae44adde04d7b2a7e3b0f2bb966f0e6aa53a23302258618bb27d064b
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:49b2a58eeb994c5398f31e89abeb2959b079207de29fae876eb8ab90a2f79b95
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:d2f7d3e51e225c045376eb435169b2a7b11e0b7de98d11e78d2a21d4540565d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:931b5d94251a065c819b3e1b39a9d35e0919174b98b0ffde86dae71a15f2f1d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:8933f1a8dad97352e225e1a1f7f0edbd2820fd60ff1d0c80a49065257b6ca9f1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:4861381a24d81f3f25153af9c066839be83cf74adf5ec900464719197611af27
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:d267c04e414d986daba9750bad590d6387bcb798df64bc583da97d88b182dc9f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:d6ca7787981b6229eedce40893280381abfaa124dd84be3bc1fb6f043a22d2d1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:80fdc43060387a455d177019de81ab274dbdf754b9ab68a61696068d9c4bfaac
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:84998b76aab53a0ca9a83a6b8baf3cb408763fba07008e3c892e2669740b481f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:930d472f486c74d36ffc3e9ed510044e15745a6350503b386f5221c82df2a7f6
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:29ce66f04b7339725d0e3dd7d4cfeca794c33e917e0deef00c44149a86a1c3b9
        version: 2.8.5
      entries:
      - name: mtv-operator.v2.8.5
        version: 2.8.5
      name: release-v2.8
    defaultChannel: release-v2.10
    packageName: mtv-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: apicast-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicast-operator.v0.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:ccd64090b85536ddaf1b81ca07d40279c9f277b1c5911628f11d678b98dc3bad
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: msoriano+apicastoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:f0e9f64c353fdbee3bf7ec0eaf070c3b75330ef659a881ec4ebc874ba584d085
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:9db455e082454734d2a17811dcfec53d3d60c28df6e7fe8bc979a45b28a35061
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:ccd64090b85536ddaf1b81ca07d40279c9f277b1c5911628f11d678b98dc3bad
        version: 0.5.3
      entries:
      - name: apicast-operator.v0.5.3
        version: 0.5.3
      - name: apicast-operator.v0.5.2
        version: 0.5.2
      - name: apicast-operator.v0.5.2-0.1646742993.p
        version: 0.5.2+0.1646742993.p
      - name: apicast-operator.v0.5.2-0.1649688685.p
        version: 0.5.2+0.1649688685.p
      - name: apicast-operator.v0.5.1
        version: 0.5.1
      - name: apicast-operator.v0.5.0
        version: 0.5.0
      - name: apicast-operator.v0.5.0-0.1638885516.p
        version: 0.5.0+0.1638885516.p
      - name: apicast-operator.v0.5.0-0.1638984223.p
        version: 0.5.0+0.1638984223.p
      name: threescale-2.11
    - currentCSV: apicast-operator.v0.6.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:8c7fe66b8d4044ad965e7b3d149e9d8e3846ac4e55465873f7095a25b297b3df
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: msoriano+apicastoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:8c7fe66b8d4044ad965e7b3d149e9d8e3846ac4e55465873f7095a25b297b3df
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:12f7a8e69a1369a51bbcd2b34d4ec8c66dd1fc9fb515349a04e7b202953423e3
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:8650430afd813fd749fcd80ad5f6fd0aeaab3df048e8fe34e6aa72a07ab801fc
        version: 0.6.4
      entries:
      - name: apicast-operator.v0.6.4
        version: 0.6.4
      - name: apicast-operator.v0.6.3
        version: 0.6.3
      - name: apicast-operator.v0.6.2
        version: 0.6.2
      - name: apicast-operator.v0.6.1
        version: 0.6.1
      - name: apicast-operator.v0.6.0
        version: 0.6.0
      - name: apicast-operator.v0.5.3
        version: 0.5.3
      - name: apicast-operator.v0.5.2-0.1649688685.p
        version: 0.5.2+0.1649688685.p
      - name: apicast-operator.v0.5.2-0.1646742993.p
        version: 0.5.2+0.1646742993.p
      - name: apicast-operator.v0.5.2
        version: 0.5.2
      - name: apicast-operator.v0.5.1
        version: 0.5.1
      - name: apicast-operator.v0.5.0
        version: 0.5.0
      - name: apicast-operator.v0.5.0-0.1638984223.p
        version: 0.5.0+0.1638984223.p
      - name: apicast-operator.v0.5.0-0.1638885516.p
        version: 0.5.0+0.1638885516.p
      name: threescale-2.12
    - currentCSV: apicast-operator.v0.7.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:bde44c0fb9f13f212184b24e0bef45db734a8439a92179a2089e5aebd6b87b63
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          olm.skipRange: '>=0.6.2 <0.7.5'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.13/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: msoriano+apicastoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:ed063f507fa8e2f378d0adbde823c110484d0212d124cc72d67efa987e86444e
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:bde44c0fb9f13f212184b24e0bef45db734a8439a92179a2089e5aebd6b87b63
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:88dc7a289c803248efbe151999707325b1bc0aac2d26827ea1707e46e5c71652
        version: 0.7.5
      entries:
      - name: apicast-operator.v0.7.5
        version: 0.7.5
      name: threescale-2.13
    - currentCSV: apicast-operator.v0.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:21db8c1bde63b5d574b66b46ec3ee95eb05a3c34b9541ca32d5bbf4daf18daf4
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          olm.skipRange: '>=0.6.2 <0.8.1'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.14/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:bcc5ed9560667c7347f3044c7fa6148e3867c17e93e83595a62794339a5a6b0d
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:21db8c1bde63b5d574b66b46ec3ee95eb05a3c34b9541ca32d5bbf4daf18daf4
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:68b310ed3cfd65db893ba015ef1d5442365201c0ced006c1915e90edb99933ea
        version: 0.8.1
      entries:
      - name: apicast-operator.v0.8.1
        version: 0.8.1
      name: threescale-2.14
    - currentCSV: apicast-operator.v0.7.9-mas
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-mas/apicast-rhel7-operator@sha256:3fd03155935a1a1946669db9dadc8e82737de46e1fcb0ba92a9815a277ae35aa
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:ea2229948fea841343fcaa337bb7e2854acf5f563d3ffb0af8bda1c21ec2a91f
        - registry.redhat.io/3scale-mas/apicast-operator-bundle@sha256:d3a608b37aa089ea46e803696ba4957585b875f8a810f517e891f385ad105937
        - registry.redhat.io/3scale-mas/apicast-rhel7-operator@sha256:3fd03155935a1a1946669db9dadc8e82737de46e1fcb0ba92a9815a277ae35aa
        version: 0.7.9-mas
      entries:
      - name: apicast-operator.v0.7.9-mas
        version: 0.7.9-mas
      - name: apicast-operator.v0.7.8-mas
        version: 0.7.8-mas
      - name: apicast-operator.v0.7.7-mas
        version: 0.7.7-mas
      - name: apicast-operator.v0.7.6-mas
        version: 0.7.6-mas
      - name: apicast-operator.v0.7.5-mas
        version: 0.7.5-mas
      - name: apicast-operator.v0.7.4-mas
        version: 0.7.4-mas
      - name: apicast-operator.v0.7.3-mas
        version: 0.7.3-mas
      - name: apicast-operator.v0.7.2-mas
        version: 0.7.2-mas
      - name: apicast-operator.v0.7.1-mas
        version: 0.7.1-mas
      - name: apicast-operator.v0.7.0-mas
        version: 0.7.0-mas
      - name: apicast-operator.v0.6.0-mas
        version: 0.6.0-mas
      - name: apicast-operator.v0.5.2-0.1649688685.p
        version: 0.5.2+0.1649688685.p
      - name: apicast-operator.v0.5.2-0.1646742993.p
        version: 0.5.2+0.1646742993.p
      - name: apicast-operator.v0.5.2
        version: 0.5.2
      - name: apicast-operator.v0.5.1
        version: 0.5.1
      - name: apicast-operator.v0.5.0
        version: 0.5.0
      - name: apicast-operator.v0.5.0-0.1638984223.p
        version: 0.5.0+0.1638984223.p
      - name: apicast-operator.v0.5.0-0.1638885516.p
        version: 0.5.0+0.1638885516.p
      name: threescale-mas
    defaultChannel: threescale-2.14
    packageName: apicast-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: github.com/stakater-ab/hibernation-operator
    name: hibernation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hibernation-operator.v0.1.103
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Monitoring
          createdAt: "2025-10-02T05:44:42Z"
          description: Operator to engage and disengage hibernation on k8s resources
            using cron expressions
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.1.103
          operatorframework.io/suggested-namespace: hibernation-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Cluster Resource Supervisor
            kind: ClusterResourceSupervisor
            name: clusterresourcesupervisors.hibernation.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.hibernation.stakater.com
            version: v1beta1
        description: Schedule k8s resources using cron expressions via Hibernation
          Operator
        displayName: Hibernation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - redhat
        - k8s
        - stakater
        - hibernation
        - operator
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maintainers:
        - email: hello@stakater.com
          name: StakaterAB
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Stakater
          url: github.com/stakater-ab/hibernation-operator
        relatedImages:
        - registry.connect.redhat.com/stakater/hibernation-operator-bundle@sha256:ded790c5b21a5b0cadac01943bfb239750d9ac6e340dc4237c9681f243858bdd
        - registry.connect.redhat.com/stakater/hibernation-operator@sha256:3738f82834d53aec4f8fba5caad6258c7adb4bdc23a57bde47c7ec22030fae5c
        version: 0.1.103
      entries:
      - name: hibernation-operator.v0.1.103
        version: 0.1.103
      name: release-0.1
    defaultChannel: release-0.1
    packageName: hibernation-operator
    provider:
      name: Stakater
      url: github.com/stakater-ab/hibernation-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://www.medik8s.io/
    name: customized-user-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: customized-user-remediation.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "customized-user-remediation.medik8s.io/v1alpha1",
                "kind": "CustomizedUserRemediation",
                "metadata": {
                  "name": "customizeduserremediation-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "customized-user-remediation.medik8s.io/v1alpha1",
                "kind": "CustomizedUserRemediationConfig",
                "metadata": {
                  "name": "customizeduserremediationconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "customized-user-remediation.medik8s.io/v1alpha1",
                "kind": "CustomizedUserRemediationTemplate",
                "metadata": {
                  "name": "customizeduserremediationtemplate-sample",
                  "namespace": "openshift-workload-availability"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/customized-user-remediation-operator:v0.1.0
          createdAt: "2024-03-25 16:17:57"
          description: Customized User Remediation Operator will remediate unhealthy
            nodes by running a pre defined user script on the unhealthy node. Since
            the user has full control over the script content, is may be quite risky
            so apply discretion.
          olm.skipRange: '>=0.0.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/customized-user-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CustomizedUserRemediationConfig is the Schema for the customizeduserremediationconfigs
              API
            displayName: Customized User Remediation Config
            kind: CustomizedUserRemediationConfig
            name: customizeduserremediationconfigs.customized-user-remediation.medik8s.io
            version: v1alpha1
          - description: CustomizedUserRemediation is the Schema for the customizeduserremediations
              API
            displayName: Customized User Remediation
            kind: CustomizedUserRemediation
            name: customizeduserremediations.customized-user-remediation.medik8s.io
            version: v1alpha1
          - description: CustomizedUserRemediationTemplate is the Schema for the customizeduserremediationtemplates
              API
            displayName: Customized User Remediation Template
            kind: CustomizedUserRemediationTemplate
            name: customizeduserremediationtemplates.customized-user-remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Customized User Remediation (CUR) works with Node Health Check to remediate unhealthy nodes by running a user customized script on the unhealthy node.
          This operator does not preform any fencing on the remediated node so users should be careful with the scripts that are being used.

          ### Compatibility
          CUR is one of the remediator operators by [Medik8s](https://www.medik8s.io/remediation/remediation/),
          such as [Self Node Remediation](https://github.com/medik8s/self-node-remediation) and [Machine Deletion Remediation](https://github.com/medik8s/machine-deletion-remediation),
          that were designed to run with the Node HealthCheck Operator [(NHC)](https://github.com/medik8s/node-healthcheck-operator) which detects an unhealthy node and creates remediation CR.
          It is recommended to use FAR with NHC for an easier and smoother experience by fully automating the remediation process, but it can be used as a standalone remediator for the more experienced user.

          ### Advantages
          - Flexibility - CUR is quite flexible sine it runs in the remediation process a user customized script.
        displayName: Customized User Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - remediation
        - auto-healing
        - recovery
        - high-availability
        - baremetal
        - script
        - CUR
        links:
        - name: Customized User Remediation
          url: https://customized-user-remediation.domain
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Medik8s
          url: https://www.medik8s.io/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/community-operator-pipeline-prod/customized-user-remediation@sha256:dc517e2349fe993e3417b858865fb73b98b7b163c0b4231d4d7be1f11992bb78
        - quay.io/medik8s/customized-user-remediation-operator:v0.1.0
        version: 0.1.0
      entries:
      - name: customized-user-remediation.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: customized-user-remediation
    provider:
      name: Medik8s
      url: https://www.medik8s.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-bedrockagentcorecontrol-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-bedrockagentcorecontrol-controller.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/bedrockagentcorecontrol-controller:1.1.0
          createdAt: "2025-11-29T04:35:31Z"
          description: Amazon Bedrock Agent Core Control controller is a service controller
            for managing Bedrock Agent Core Control resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AgentRuntimeEndpoint represents the state of an AWS bedrockagentcorecontrol
              AgentRuntimeEndpoint resource.
            displayName: AgentRuntimeEndpoint
            kind: AgentRuntimeEndpoint
            name: agentruntimeendpoints.bedrockagentcorecontrol.services.k8s.aws
            version: v1alpha1
          - description: AgentRuntime represents the state of an AWS bedrockagentcorecontrol
              AgentRuntime resource.
            displayName: AgentRuntime
            kind: AgentRuntime
            name: agentruntimes.bedrockagentcorecontrol.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Bedrock Agent Core Control resources in AWS from within your Kubernetes cluster.

          **About Amazon Bedrock Agent Core Control**

          Amazon Bedrock Agent Core Control is a fully managed service that makes it easy to build and scale generative AI applications. With Bedrock, you can access foundation models from leading AI companies, customize them with your own data, and integrate them into your applications.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Bedrock Agent Core Control
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bedrockagentcorecontrol
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Bedrock Agent Core Control Developer Resources
          url: https://aws.amazon.com/bedrock/dev-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: bedrockagentcorecontrol maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-bedrockagentcorecontrol-controller@sha256:16eb4efd399e2db735c25ddcf9a77dc41123ce8df0ff634ec6907f9e2eab22db
        - public.ecr.aws/aws-controllers-k8s/bedrockagentcorecontrol-controller:1.1.0
        version: 1.1.0
      entries:
      - name: ack-bedrockagentcorecontrol-controller.v1.1.0
        version: 1.1.0
      - name: ack-bedrockagentcorecontrol-controller.v1.0.1
        version: 1.0.1
      - name: ack-bedrockagentcorecontrol-controller.v1.0.0
        version: 1.0.0
      - name: ack-bedrockagentcorecontrol-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-bedrockagentcorecontrol-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-networkfirewall-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-networkfirewall-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "networkfirewall.services.k8s.aws/v1alpha1",
                "kind": "Firewall",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "networkfirewall.services.k8s.aws/v1alpha1",
                "kind": "FirewallPolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "networkfirewall.services.k8s.aws/v1alpha1",
                "kind": "RuleGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/networkfirewall-controller:1.2.0
          createdAt: "2025-11-29T03:54:36Z"
          description: AWS Network Firewall controller is a service controller for
            managing Network Firewall resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FirewallPolicy represents the state of an AWS networkfirewall
              FirewallPolicy resource.
            displayName: FirewallPolicy
            kind: FirewallPolicy
            name: firewallpolicies.networkfirewall.services.k8s.aws
            version: v1alpha1
          - description: Firewall represents the state of an AWS networkfirewall Firewall
              resource.
            displayName: Firewall
            kind: Firewall
            name: firewalls.networkfirewall.services.k8s.aws
            version: v1alpha1
          - description: RuleGroup represents the state of an AWS networkfirewall
              RuleGroup resource.
            displayName: RuleGroup
            kind: RuleGroup
            name: rulegroups.networkfirewall.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Network Firewall resources in AWS from within your Kubernetes cluster.

          **About Amazon Network Firewall**

          AWS Network Firewall is a stateful, managed, network firewall and intrusion detection and prevention service for your virtual private cloud (VPC) that you create in Amazon Virtual Private Cloud (Amazon VPC).
          With Network Firewall, you can filter traffic at the perimeter of your VPC. This includes filtering traffic going to and coming from an internet gateway, NAT gateway, or over VPN or AWS Direct Connect. Network Firewall uses the open source intrusion prevention system (IPS), Suricata, for stateful inspection. Network Firewall supports Suricata compatible rules. For more information, see [Working with stateful rule groups in AWS Network Firewall](https://docs.aws.amazon.com/network-firewall/latest/developerguide/stateful-rule-groups-ips.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Network Firewall
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networkfirewall
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Network Firewall Developer Resources
          url: https://aws.amazon.com/network-firewall/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: network firewall maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-networkfirewall-controller@sha256:f4f39f53a83482b8645cc1b3121b0d988d7c0fa44c07e57502980ff8796d6e76
        - public.ecr.aws/aws-controllers-k8s/networkfirewall-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-networkfirewall-controller.v1.2.0
        version: 1.2.0
      - name: ack-networkfirewall-controller.v1.1.2
        version: 1.1.2
      - name: ack-networkfirewall-controller.v1.1.1
        version: 1.1.1
      - name: ack-networkfirewall-controller.v1.1.0
        version: 1.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-networkfirewall-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: redhat.com
    name: special-resource-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: special-resource-operator.v4.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sro.openshift.io/v1beta1",
                "kind": "SpecialResource",
                "metadata": {
                  "name": "simple-kmod"
                },
                "spec": {
                  "chart": {
                    "name": "simple-kmod",
                    "repository": {
                      "name": "example",
                      "url": "file:///charts/example"
                    },
                    "version": "0.0.1"
                  },
                  "driverContainer": {
                    "source": {
                      "git": {
                        "ref": "master",
                        "uri": "https://github.com/openshift-psap/kvc-simple-kmod.git"
                      }
                    }
                  },
                  "namespace": "simple-kmod",
                  "set": {
                    "apiVersion": "sro.openshift.io/v1beta1",
                    "buildArgs": [
                      {
                        "name": "KMODVER",
                        "value": "SRO"
                      }
                    ],
                    "kind": "Values",
                    "kmodNames": [
                      "simple-kmod",
                      "simple-procfs-kmod"
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional, Storage
          containerImage: quay.io/openshift-psap/special-resource-operator:release-4.9
          description: The special resource operator is an orchestrator for resources
            in a cluster required to deploy special hardware and software. Examples
            include hardware accelerators or software defined storage, where extra
            management or kernel modules are needed.
          olm.skipRange: '>=4.6.0 <4.9.0'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SpecialResource is the Schema for the specialresources API
            displayName: Special Resource
            kind: SpecialResource
            name: specialresources.sro.openshift.io
            version: v1beta1
          required:
          - description: Discovers special resources and labels the nodes with the
              PCI vendor ID.
            displayName: Node Feature Discovery
            kind: NodeFeatureDiscovery
            name: nodefeaturediscoveries.nfd.openshift.io
            version: v1
        description: "## About the managed application \nThe SRO will deploy the complete
          stack for enabling the accelerator in a cluster. \nIt manages the drivers,
          device-plugin, node-exporter, grafana and feature discovery.\n## About this
          Operator\n README: [https://github.com/openshift-psap/special-resource-operator](https://github.com/openshift-psap/special-resource-operator)\n\n##
          Prerequisites for enabling this Operator\nThe SRO has a dependency on NFD
          (Node Feature Discovery)\n"
        displayName: Special Resource Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GPI
        links:
        - name: README
          url: https://github.com/openshift-psap/special-resource-operator
        maintainers:
        - email: zkaiser@redhat.com
          name: Zvonko Kaiser
        - email: dagray@redhat.com
          name: David Gray
        maturity: alpha
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/openshift-psap/special-resource-operator:release-4.9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy
        - quay.io/openshift-community-operators/special-resource-operator@sha256:df87c400713311f2495d6d02769acf29e5251330194f992c11719063095fdaea
        version: 4.9.0
      entries:
      - name: special-resource-operator.v4.9.0
        version: 4.9.0
      - name: special-resource-operator.v4.8.2
        version: 4.8.2
      - name: special-resource-operator.v4.8.1
        version: 4.8.1
      - name: special-resource-operator.v4.8.0
        version: 4.8.0
      name: alpha
    defaultChannel: alpha
    packageName: special-resource-operator
    provider:
      name: Red Hat
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhpam-kogito-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhpam-kogito-operator.7.13.5-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "ruleunit-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogitoinfra-sample"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "kafka.strimzi.io/v1beta2",
                    "kind": "Kafka",
                    "name": "kogito-kafka"
                  }
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/rhpam-7/rhpam-kogito-rhel8-operator@sha256:19497d4aff0ea3ea114dccb0d0e265458bb14ba6d325353eb82b554547dbd2e4
          description: RHPAM Kogito Operator for deployment and management of Kogito
            services.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Process Automation
            Manager", "Red Hat Decision Manager"]'
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/rhpam-kogito-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.rhpam.kiegroup.org
            version: v1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.rhpam.kiegroup.org
            version: v1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.rhpam.kiegroup.org
            version: v1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.rhpam.kiegroup.org
            version: v1
        description: |-
          RHPAM Kogito Operator is designed for deployment and management of Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Builds a RHPAM Kogito service from a remote git repository and creates a custom image for the given runtime: Red Hat build of Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Deploy RHPAM Kogito service from user provided image.
          * Setup Grafana Dashboard when Grafana Operator is available in cluster.
          * Create Prometheus monitor object when Prometheus operator is available in cluster.

          **IMPORTANT!** RHPAM Kogito Operator may need Grafana and Prometheus Operator to configure monitoring in cases if you do not provide these services beforehand. If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the RHPAM Kogito Operator.
        displayName: RHPAM Kogito Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-process-automation-manager
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_process_automation_manager/7.13/html/getting_started_with_red_hat_build_of_kogito_in_red_hat_process_automation_manager/assembly-deploying-kogito-microservices-on-openshift
        - name: Source
          url: https://github.com/kiegroup/kogito-operator/
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9492c67eaa7ab37df6f5fa623c4aac955b7d7ffaab9ae2e57dea745e82907e40
        - registry.redhat.io/rhpam-7/rhpam-kogito-rhel8-operator-bundle@sha256:0192000a2994a62a904ce4aabfc1ff04caf2fa9d779d27c016922b9121877fac
        - registry.redhat.io/rhpam-7/rhpam-kogito-rhel8-operator@sha256:19497d4aff0ea3ea114dccb0d0e265458bb14ba6d325353eb82b554547dbd2e4
        version: 7.13.5-4
      entries:
      - name: rhpam-kogito-operator.7.13.5-4
        version: 7.13.5-4
      - name: rhpam-kogito-operator.7.13.5-3
        version: 7.13.5-3
      - name: rhpam-kogito-operator.7.13.5-2
        version: 7.13.5-2
      - name: rhpam-kogito-operator.7.13.5-1
        version: 7.13.5-1
      - name: rhpam-kogito-operator.7.13.4-3
        version: 7.13.4-3
      - name: rhpam-kogito-operator.7.13.4-2
        version: 7.13.4-2
      - name: rhpam-kogito-operator.7.13.4-1
        version: 7.13.4-1
      - name: rhpam-kogito-operator.7.13.3-1
        version: 7.13.3-1
      - name: rhpam-kogito-operator.7.13.2-3
        version: 7.13.2-3
      - name: rhpam-kogito-operator.7.13.2-2
        version: 7.13.2-2
      - name: rhpam-kogito-operator.7.13.2-1
        version: 7.13.2-1
      - name: rhpam-kogito-operator.7.13.1-2
        version: 7.13.1-2
      - name: rhpam-kogito-operator.7.13.1-1
        version: 7.13.1-1
      - name: rhpam-kogito-operator.7.13.0-1
        version: 7.13.0-1
      - name: rhpam-kogito-operator.v7.12.0-4
        version: 7.12.0-4
      - name: rhpam-kogito-operator.v7.12.0-3
        version: 7.12.0-3
      - name: rhpam-kogito-operator.v7.12.0-2
        version: 7.12.0-2
      name: 7.x
    defaultChannel: 7.x
    packageName: rhpam-kogito-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: t8c
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: t8c-operator.v42.22.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.5"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.22
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.22
        - quay.io/openshift-community-operators/t8c@sha256:3c48e0bb9fd04d86d92bddb5bc2367f7ee4b86af74421c8dcbd809a7ba657770
        version: 42.22.0
      entries:
      - name: t8c-operator.v42.22.0
        version: 42.22.0
      - name: t8c-operator.v42.21.0
        version: 42.21.0
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: stable
    - currentCSV: t8c-operator.v42.10.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.10
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:6e5cbb3287ad3ec69f3064fd5dd88f0e4794fef985bab390c5135c7162c2872c
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.10
        version: 42.10.0
      entries:
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.10.0
    - currentCSV: t8c-operator.v42.10.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.10
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:6e5cbb3287ad3ec69f3064fd5dd88f0e4794fef985bab390c5135c7162c2872c
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.10
        version: 42.10.0
      entries:
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.12.0
    - currentCSV: t8c-operator.v42.13.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.7"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.13
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:088d0eebf60c8f6961ca72c268f61d12648d575aa41552ae6398fefc6d9700cb
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.13
        version: 42.13.0
      entries:
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.13.0
    - currentCSV: t8c-operator.v42.14.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.7"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.14
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:d6d444e642bfd567eb40c7e084f5df743c23b47935e52e35ef541c67fcc00433
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.14
        version: 42.14.0
      entries:
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.14.0
    - currentCSV: t8c-operator.v42.15.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.6.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.15
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:b3469cd953ef2015fad2f7f96d960cee5ecaa6c19df631a9c882154ab5b3de98
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.15
        version: 42.15.0
      entries:
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.15.0
    - currentCSV: t8c-operator.v42.16.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.16
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:f49d3eddbfcec1018fd3716cd0ec2addef9961d2d308099636541868566979b0
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.16
        version: 42.16.0
      entries:
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.16.0
    - currentCSV: t8c-operator.v42.17.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.6.6"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.17
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:403b29a6262ba0e06de117f788aea7224268b798868c3e5b738b05e96df20456
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.17
        version: 42.17.0
      entries:
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.17.0
    - currentCSV: t8c-operator.v42.18.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.1"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.18
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.18
        - quay.io/openshift-community-operators/t8c@sha256:4bfaf97ab09a1aff1316536b99957b1f82763b009dde6d08fc9eea1fdd290fbf
        version: 42.18.0
      entries:
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.18.0
    - currentCSV: t8c-operator.v42.19.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.2"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.19
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:61f1ea9b3851d7272703f5bc21203ff03bb35fd52ed9780d0cf996379c78a00b
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.19
        version: 42.19.0
      entries:
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.19.0
    - currentCSV: t8c-operator.v42.20.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.20
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:48a5a9fbfa92b4b87b3653613467a3fcceacadbbabd274e367b40f6871039cc8
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.20
        version: 42.20.0
      entries:
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.20.0
    - currentCSV: t8c-operator.v42.21.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.4"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.21
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:d65834d8f9946c2764d45666c90c50f428b74afe7b066d666c18e9545994c9a8
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.21
        version: 42.21.0
      entries:
      - name: t8c-operator.v42.21.0
        version: 42.21.0
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.21.0
    - currentCSV: t8c-operator.v42.22.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.5"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.22
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:3c48e0bb9fd04d86d92bddb5bc2367f7ee4b86af74421c8dcbd809a7ba657770
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.22
        version: 42.22.0
      entries:
      - name: t8c-operator.v42.22.0
        version: 42.22.0
      - name: t8c-operator.v42.21.0
        version: 42.21.0
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.22.0
    - currentCSV: t8c-operator.v42.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.4.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.6
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:4964196aba839fde569ce58ab7e4eef438c9638ae4057194f2d7a58eaa5a98d9
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.6
        version: 42.6.0
      entries:
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.6.0
    - currentCSV: t8c-operator.v42.7.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.4.6"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.7
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.7
        - quay.io/openshift-community-operators/t8c@sha256:46c815fa635d58820757f41b1d8f04333638c39471f4d6c901a6500379680b57
        version: 42.7.0
      entries:
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.7.0
    - currentCSV: t8c-operator.v42.8.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.0"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.8
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:d8a575a84dd86d241acaaec53af1e164bc1ff1b95b5eb710851ae698bbed6bf5
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.8
        version: 42.8.0
      entries:
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.8.0
    - currentCSV: t8c-operator.v42.9.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.1"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.9
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:dfdc8fbdfc0ee76b2d5c62f6fd5deac2c50756661871d8b4357e25043e5ce66a
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.9
        version: 42.9.0
      entries:
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.9.0
    defaultChannel: stable
    packageName: t8c
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HPE
      provider-url: ""
    name: hpe-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hpe-csi-operator.v3.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "storage.hpe.com/v1",
                "kind": "HPECSIDriver",
                "metadata": {
                  "name": "hpecsidriver-sample"
                },
                "spec": {
                  "controller": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  },
                  "csp": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  },
                  "disable": {
                    "alletra6000": false,
                    "alletra9000": false,
                    "alletraStorageMP": false,
                    "b10000FileService": false,
                    "nimble": false,
                    "primera": false
                  },
                  "disableHostDeletion": false,
                  "disableNodeConfiguration": false,
                  "disableNodeConformance": false,
                  "disableNodeGetVolumeStats": false,
                  "disableNodeMonitor": false,
                  "disablePreInstallHooks": false,
                  "imagePullPolicy": "IfNotPresent",
                  "images": {
                    "b10000FileServiceCSP": "quay.io/hpestorage/alletrastoragemp-b10000-nfs-csp@sha256:6a1855a2ef1a83b886bb1f45b596e8e420e5e13c84bbf446c8c202eaf27a2013",
                    "csiAttacher": "registry.k8s.io/sig-storage/csi-attacher@sha256:5aaefc24f315b182233c8b6146077f8c32e274d864cb03c632206e78bd0302da",
                    "csiControllerDriver": "quay.io/hpestorage/csi-driver@sha256:27f3bd05372b4ed705b90461d053388a4f6d9cefa0cd3033e2747cbe1a7c045f",
                    "csiExtensions": "quay.io/hpestorage/csi-extensions@sha256:27074aaa8df3b867cfa3d12318612c45f8e541d750c27db5e080734592160c89",
                    "csiNodeDriver": "quay.io/hpestorage/csi-driver@sha256:27f3bd05372b4ed705b90461d053388a4f6d9cefa0cd3033e2747cbe1a7c045f",
                    "csiNodeDriverRegistrar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97",
                    "csiProvisioner": "registry.k8s.io/sig-storage/csi-provisioner@sha256:bb057f866177d5f4139a1527e594499cbe0feeb67b63aaca8679dfdf0a6016f9",
                    "csiResizer": "registry.k8s.io/sig-storage/csi-resizer@sha256:8ddd178ba5d08973f1607f9b84619b58320948de494b31c9d7cd5375b316d6d4",
                    "csiSnapshotter": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:5f4bb469fec51147ce157329dab598c758da1b018bad6dad26f0ff469326d769",
                    "csiVolumeGroupProvisioner": "quay.io/hpestorage/volume-group-provisioner@sha256:0a5f39f52113b963978a695bb8e5a5a3c4d387a02eb4d4a9647b4bc804de7399",
                    "csiVolumeGroupSnapshotter": "quay.io/hpestorage/volume-group-snapshotter@sha256:177d9abf8fbd3ac26ca4c12ca4b4adde20ebab308c79f10b04632f0171746fa8",
                    "csiVolumeMutator": "quay.io/hpestorage/volume-mutator@sha256:bf6beac1af5edcd3c9774f0dcc9579b79ef9cc8e4b74a4238082ab9aa443b5ed",
                    "nfsProvisioner": "quay.io/hpestorage/nfs-provisioner@sha256:5bf5952453ecca28e26724df85ebd5c8f0b7479ae4cb683d4a09c415da00e002",
                    "nimbleCSP": "quay.io/hpestorage/alletra-6000-and-nimble-csp@sha256:5480ffdebd74fdc547bc4a11b4434abac7bbfee3cee349f1ac893fbad84bb8d1",
                    "primera3parCSP": "quay.io/hpestorage/alletra-9000-primera-and-3par-csp@sha256:8af6e87075c47ba8d9714d55848ab2a0fef62b0768681e30d9e63ed7f396b0bf"
                  },
                  "iscsi": {
                    "chapSecretName": ""
                  },
                  "kubeletRootDir": "/var/lib/kubelet",
                  "logLevel": "info",
                  "maxVolumesPerNode": 100,
                  "node": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/hpestorage/csi-driver-operator@sha256:a3db9916f921de1379d4df953904bddb0057eee63705f57b435e40439c52ffca
          createdAt: "2025-12-17T08:03:50Z"
          description: A Container Storage Interface (CSI) driver for HPE storage
            platforms. The CSI driver allows you to use HPE storage with your preferred
            container orchestrator.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=1.0.0 <3.0.2'
          operatorframework.io/suggested-namespace: hpe-storage
          operatorhub.io/ui-metadata-max-k8s-version: "1.33"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/hpe-storage/co-deployments
          support: HPE
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HPE CSI Driver for Kubernetes
            displayName: HPECSIDriver
            kind: HPECSIDriver
            name: hpecsidrivers.storage.hpe.com
            version: v1
        description: |
          The HPE CSI Operator for OpenShift deploys the HPE CSI Driver on Kubernetes and OpenShift for dynamic provisioning of persistent volumes on HPE storage systems.
          The HPE CSI Driver for Kubernetes leverages HPE storage platforms to provide scalable and persistent storage for stateful applications.
          Please refer to our CSI driver [documentation](https://scod.hpedev.io/csi_driver/index.html) for supported HPE platforms and full list of supported CSI features.
          ## Installation
          Refer to the HPE CSI Operator for OpenShift [documentation](https://scod.hpedev.io/csi_driver/deployment.html#operator).
        displayName: HPE CSI Operator for OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - HPE
        - HPE CSI
        - HPE Storage
        - CSI
        links:
        - name: Documentation
          url: https://scod.hpedev.io/csi_driver/index.html
        maintainers:
        - email: dev-hi-containers@hpe.com
          name: HPE Storage Containers Team
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: HPE
        relatedImages:
        - registry.k8s.io/sig-storage/csi-resizer@sha256:8ddd178ba5d08973f1607f9b84619b58320948de494b31c9d7cd5375b316d6d4
        - quay.io/hpestorage/csi-driver@sha256:27f3bd05372b4ed705b90461d053388a4f6d9cefa0cd3033e2747cbe1a7c045f
        - quay.io/hpestorage/volume-group-provisioner@sha256:0a5f39f52113b963978a695bb8e5a5a3c4d387a02eb4d4a9647b4bc804de7399
        - quay.io/hpestorage/volume-group-snapshotter@sha256:177d9abf8fbd3ac26ca4c12ca4b4adde20ebab308c79f10b04632f0171746fa8
        - quay.io/hpestorage/volume-mutator@sha256:bf6beac1af5edcd3c9774f0dcc9579b79ef9cc8e4b74a4238082ab9aa443b5ed
        - registry.k8s.io/sig-storage/csi-attacher@sha256:5aaefc24f315b182233c8b6146077f8c32e274d864cb03c632206e78bd0302da
        - quay.io/hpestorage/alletrastoragemp-b10000-nfs-csp@sha256:6a1855a2ef1a83b886bb1f45b596e8e420e5e13c84bbf446c8c202eaf27a2013
        - registry.connect.redhat.com/hpestorage/csi-driver-operator@sha256:a3db9916f921de1379d4df953904bddb0057eee63705f57b435e40439c52ffca
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97
        - quay.io/hpestorage/alletra-9000-primera-and-3par-csp@sha256:8af6e87075c47ba8d9714d55848ab2a0fef62b0768681e30d9e63ed7f396b0bf
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:5f4bb469fec51147ce157329dab598c758da1b018bad6dad26f0ff469326d769
        - registry.connect.redhat.com/hpestorage/csi-driver-operator-bundle@sha256:ae86d21d2f53c21a2e7b6494937b6cbcf8f1d08c500cd2d1ea3090e40f2da96f
        - quay.io/hpestorage/alletra-6000-and-nimble-csp@sha256:5480ffdebd74fdc547bc4a11b4434abac7bbfee3cee349f1ac893fbad84bb8d1
        - quay.io/hpestorage/nfs-provisioner@sha256:5bf5952453ecca28e26724df85ebd5c8f0b7479ae4cb683d4a09c415da00e002
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:bb057f866177d5f4139a1527e594499cbe0feeb67b63aaca8679dfdf0a6016f9
        - quay.io/hpestorage/csi-extensions@sha256:27074aaa8df3b867cfa3d12318612c45f8e541d750c27db5e080734592160c89
        version: 3.0.2
      entries:
      - name: hpe-csi-operator.v3.0.2
        version: 3.0.2
      name: stable
    defaultChannel: stable
    packageName: hpe-csi-operator
    provider:
      name: HPE
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: GitLab, Inc.
      provider-url: https://gitlab.com
    name: gitlab-runner-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-runner-operator.v1.43.3
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta2",
                "kind": "Runner",
                "metadata": {
                  "name": "gitlab-runner-example",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "gitlabUrl": "https://gitlab.example.com",
                  "token": "runner-token-secret",
                  "tags": "kubernetes,example",
                  "concurrent": 10,
                  "imagePullPolicy": "IfNotPresent"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery, Developer Tools
          containerImage: registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
          createdAt: "2025-11-28T23:15:09Z"
          description: GitLab Runner operator manages lifecycle of GitLab Runner instances
          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: "true"
          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.skipRange: '>=1.11.0 <1.43.3'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: none
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
          support: GitLab, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Runner is the open source project used to run your jobs and
              send the results back to GitLab
            displayName: GitLab Runner
            kind: Runner
            name: runners.apps.gitlab.com
            version: v1beta2
        description: |-
          GitLab Runner is the lightweight, highly-scalable agent that runs your build jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.

              The GitLab Runner operator manages the lifecycle of GitLab Runner in Kubernetes or Openshift clusters. The operator aims to automate the tasks needed to run your CI/CD jobs in your container orchestration platform.

              ## Prerequisites

                For Kubernetes cluster, install cert-manager:

                ```shell
                kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.7.1/cert-manager.yaml
                ```

              ## GitLab Runner version

              This version of **GitLab Runner Operator** ships with **GitLab Runner v18.6.3**.

              To use a different version of **GitLab Runner** change the [`runnerImage` and `helperImage` properties](https://docs.gitlab.com/runner/configuration/configuring_runner_operator.html#operator-properties).

              ## Usage

               To link a GitLab Runner instance to a self-hosted GitLab instance or the hosted [GitLab](https://gitlab.com), you first need to:

               1. Create a secret containing the `runner-token` from your GitLab project.

                ```
                cat > gitlab-runner-secret.yml << EOF
                apiVersion: v1
                kind: Secret
                metadata:
                  name: gitlab-runner-secret
                type: Opaque
                # Only one of the following fields must be set. The Operator will fail to register Runner if both are provided.
                # # NOTE: runner-registration-token is deprecated and will be removed in GitLab 18.0. You should use runner-token instead.
                stringData:
                  runner-token: REPLACE_ME # your project runner token
                  # runner-registration-token: "" # your project runner secret
                EOF
                ```

                ```
                oc apply -f gitlab-runner-secret.yml
                ```

               2. Create the Custom Resource Definition (CRD) file and include the following information. The tags value must be openshift for the job to run.

                 ```
                 cat > gitlab-runner.yml << EOF
                 apiVersion: apps.gitlab.com/v1beta2
                 kind: Runner
                 metadata:
                   name: gitlab-runner
                 spec:
                   gitlabUrl: https://gitlab.example.com
                   buildImage: alpine
                   token: gitlab-runner-secret
                   tags: openshift
                 EOF
                 ```

                ```
                oc apply -f gitlab-runner.yml
                ```

              ## Full documentation

              Visit [Install GitLab Runner Operator](https://docs.gitlab.com/runner/install/operator.html)
        displayName: GitLab Runner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GitLab
        - CI/CD
        - DevOps
        - SAST
        - DAST
        links:
        - name: Gitlab Runner Operator
          url: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
        - name: GitLab Docs
          url: https://docs.gitlab.com
        - name: GitLab Runner
          url: https://docs.gitlab.com/runner/
        - name: GitLab CI/CD
          url: https://docs.gitlab.com/ee/ci/quick_start/
        maintainers:
        - email: support@gitlab.com
          name: Georgi N. Georgiev
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: GitLab, Inc.
          url: https://gitlab.com
        relatedImages:
        - registry.connect.redhat.com/gitlab/gitlab-runner-operator-bundle@sha256:0a633ff6d83e6fe961516724c51c16bb06f84efecfca16c36b17d525d3b937c3
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-helper-ocp@sha256:9c1723a09b7255e8ab13954375e263965de1955d9f1fdc5e64d7610c7495e614
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-ocp@sha256:de78dc586ebc1c1ea6e4be7b8a21e949bc24860051e3eab93f3468751a04ca0a
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/openshift4/ose-kube-rbac-proxy@sha256:bb84ead437042603254efcb703442be8500a9450b10bbcaaee81b48a6ed869ea
        version: 1.43.3
      entries:
      - name: gitlab-runner-operator.v1.43.3
        version: 1.43.3
      - name: gitlab-runner-operator.v1.43.2
        version: 1.43.2
      - name: gitlab-runner-operator.v1.43.1
        version: 1.43.1
      - name: gitlab-runner-operator.v1.43.0
        version: 1.43.0
      name: stable
    defaultChannel: stable
    packageName: gitlab-runner-operator
    provider:
      name: GitLab, Inc.
      url: https://gitlab.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-kms-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-kms-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kms.services.k8s.aws/v1alpha1",
                "kind": "Alias",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "kms.services.k8s.aws/v1alpha1",
                "kind": "Grant",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "kms.services.k8s.aws/v1alpha1",
                "kind": "Key",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/kms-controller:1.2.0
          createdAt: "2025-11-29T03:55:26Z"
          description: AWS KMS controller is a service controller for managing KMS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alias represents the state of an AWS kms Alias resource.
            displayName: Alias
            kind: Alias
            name: aliases.kms.services.k8s.aws
            version: v1alpha1
          - description: Grant represents the state of an AWS kms Grant resource.
            displayName: Grant
            kind: Grant
            name: grants.kms.services.k8s.aws
            version: v1alpha1
          - description: Key represents the state of an AWS kms Key resource.
            displayName: Key
            kind: Key
            name: keys.kms.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Key Management Service (KMS) resources in AWS from within your Kubernetes cluster.

          **About Amazon KMS**

          AWS Key Management Service (AWS KMS) is a managed service that makes it easy for you to create and control the cryptographic keys that are used to protect your data. AWS KMS uses hardware security modules (HSM) to protect and validate your AWS KMS keys under the [FIPS 140-2 Cryptographic Module Validation Program](https://csrc.nist.gov/projects/cryptographic-module-validation-program/Certificate/3139), except in the China (Beijing) and China (Ningxia) Regions.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon KMS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kms
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon KMS Developer Resources
          url: https://aws.amazon.com/kms/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: kms maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/kms-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-kms-controller@sha256:fcadd7b195741affd5ee61bf911911408153dcfa26192ceff8c9d0d830acd6e0
        version: 1.2.0
      entries:
      - name: ack-kms-controller.v1.2.0
        version: 1.2.0
      - name: ack-kms-controller.v1.1.2
        version: 1.1.2
      - name: ack-kms-controller.v1.1.1
        version: 1.1.1
      - name: ack-kms-controller.v1.1.0
        version: 1.1.0
      - name: ack-kms-controller.v1.0.31
        version: 1.0.31
      - name: ack-kms-controller.v1.0.30
        version: 1.0.30
      - name: ack-kms-controller.v1.0.29
        version: 1.0.29
      - name: ack-kms-controller.v1.0.28
        version: 1.0.28
      - name: ack-kms-controller.v1.0.27
        version: 1.0.27
      - name: ack-kms-controller.v1.0.26
        version: 1.0.26
      - name: ack-kms-controller.v1.0.25
        version: 1.0.25
      - name: ack-kms-controller.v1.0.24
        version: 1.0.24
      - name: ack-kms-controller.v1.0.23
        version: 1.0.23
      - name: ack-kms-controller.v1.0.22
        version: 1.0.22
      - name: ack-kms-controller.v1.0.19
        version: 1.0.19
      - name: ack-kms-controller.v1.0.18
        version: 1.0.18
      - name: ack-kms-controller.v1.0.17
        version: 1.0.17
      - name: ack-kms-controller.v1.0.16
        version: 1.0.16
      - name: ack-kms-controller.v1.0.15
        version: 1.0.15
      - name: ack-kms-controller.v1.0.14
        version: 1.0.14
      - name: ack-kms-controller.v1.0.13
        version: 1.0.13
      - name: ack-kms-controller.v1.0.12
        version: 1.0.12
      - name: ack-kms-controller.v1.0.8
        version: 1.0.8
      - name: ack-kms-controller.v1.0.7
        version: 1.0.7
      - name: ack-kms-controller.v1.0.5
        version: 1.0.5
      - name: ack-kms-controller.v1.0.4
        version: 1.0.4
      - name: ack-kms-controller.v1.0.3
        version: 1.0.3
      - name: ack-kms-controller.v1.0.2
        version: 1.0.2
      - name: ack-kms-controller.v1.0.0
        version: 1.0.0
      - name: ack-kms-controller.v0.1.5
        version: 0.1.5
      - name: ack-kms-controller.v0.1.4
        version: 0.1.4
      - name: ack-kms-controller.v0.1.3
        version: 0.1.3
      - name: ack-kms-controller.v0.1.2
        version: 0.1.2
      - name: ack-kms-controller.v0.1.1
        version: 0.1.1
      - name: ack-kms-controller.v0.1.0
        version: 0.1.0
      - name: ack-kms-controller.v0.0.20
        version: 0.0.20
      - name: ack-kms-controller.v0.0.19
        version: 0.0.19
      - name: ack-kms-controller.v0.0.18
        version: 0.0.18
      - name: ack-kms-controller.v0.0.17
        version: 0.0.17
      - name: ack-kms-controller.v0.0.16
        version: 0.0.16
      - name: ack-kms-controller.v0.0.15
        version: 0.0.15
      - name: ack-kms-controller.v0.0.14
        version: 0.0.14
      - name: ack-kms-controller.v0.0.13
        version: 0.0.13
      - name: ack-kms-controller.v0.0.12
        version: 0.0.12
      - name: ack-kms-controller.v0.0.11
        version: 0.0.11
      - name: ack-kms-controller.v0.0.10
        version: 0.0.10
      - name: ack-kms-controller.v0.0.9
        version: 0.0.9
      - name: ack-kms-controller.v0.0.8
        version: 0.0.8
      - name: ack-kms-controller.v0.0.7
        version: 0.0.7
      - name: ack-kms-controller.v0.0.6
        version: 0.0.6
      - name: ack-kms-controller.v0.0.5
        version: 0.0.5
      - name: ack-kms-controller.v0.0.4
        version: 0.0.4
      - name: ack-kms-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-kms-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-prometheus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-prometheus-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:2a74517c3befcac1566f5c65e0f573e4378eafe4ba88816229a46557cc1b2b62
          createdAt: "2024-03-01T23:43:00Z"
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/prometheus-operator/prometheus-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:2a74517c3befcac1566f5c65e0f573e4378eafe4ba88816229a46557cc1b2b62
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:3901127db6a0cb2323651885f04a603391478f58ad2d5bcaa161a9e16332288e
        - registry.redhat.io/odf4/odf-prometheus-operator-bundle@sha256:978e6ca6c295ced191eaa8439ce80bb48ed8122409f34a334b5f05d25899be88
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager-rhel9@sha256:0033bfb29ebb2dcf16323276a9287f6f21339c1d797783f9d140909951b18f90
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader-rhel9@sha256:4eca079cbaf2b8e69eac9e8b8418ef091ef78b4a48a48dfc317d243c53d55758
        version: 4.19.9-rhodf
      entries:
      - name: odf-prometheus-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-prometheus-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-prometheus-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-prometheus-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-prometheus-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-prometheus-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-prometheus-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-prometheus-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-prometheus-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-prometheus-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-prometheus-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:f995093d6fd6c66e2c50cc4bceee9c739d09453ea85eca0232013632371fc594
          createdAt: "2024-03-01T23:43:00Z"
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/prometheus-operator/prometheus-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:101993f6e65d6fda8b90c583b718b720809182961f69bc777295f47e6df4d7ce
        - registry.redhat.io/odf4/odf-prometheus-operator-bundle@sha256:efc835326cd0bf95c479809f9e02c1ce921bedd3dd2a8e67605346ec623e4032
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager-rhel9@sha256:7e7e39f59a298ff2ca6aba00ce861866dc16bf39398e78523ba4e7600c46dea9
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader-rhel9@sha256:b99613494e9d6a4a8207323872d63cc02b830fc80a8bf972e62c64381aa4cd17
        - registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:f995093d6fd6c66e2c50cc4bceee9c739d09453ea85eca0232013632371fc594
        version: 4.20.4-rhodf
      entries:
      - name: odf-prometheus-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-prometheus-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-prometheus-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-prometheus-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-prometheus-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-prometheus-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-activemqartemis: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/
    name: amq-broker-rhel8
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-broker-operator.v7.10.7-opr-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [{
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                    "name": "ex-aao",
                    "application": "ex-aao-app"
                },
                "spec": {
                    "deploymentPlan": {
                        "image": "placeholder",
                        "size": 2,
                        "requireLogin": false,
                        "persistenceEnabled": false,
                        "journalType": "nio",
                        "messageMigration": false,
                        "jolokiaAgentEnabled": false,
                        "managementRBACEnabled": true
                    }
                }
            }, {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                    "name": "ex-aaoaddress"
                },
                "spec": {
                    "addressName": "myAddress0",
                    "queueName": "myQueue0",
                    "routingType": "anycast"
                }
            }, {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                    "name": "ex-aaoscaledown"
                },
                "spec": {
                    "localOnly": "true"
                }
            }, {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                    "name": "ex-keycloak"
                },
                "spec": {
                    "loginModules": {
                        "propertiesLoginModules": [
                            {
                                "name": "prop-module",
                                "users": [
                                    {
                                        "name": "superman",
                                        "roles": [
                                            "root"
                                        ]
                                    }
                                ]
                            }
                        ]
                    },
                    "securityDomains": {
                        "brokerDomain": {
                            "name": "activemq",
                            "loginModules": [
                                {
                                    "name": "prop-module",
                                    "flag": "sufficient"
                                }
                            ]
                        }
                    }
                }
            }]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:1a7aa54d2799d238eb5f49f7a95a78a896f6bf8d222567e9118e0e3963cc9aad
          createdAt: "2021-06-18T00:02:04Z"
          description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A stateful deployment of one or more brokers
            displayName: AMQ Broker
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: Adding and removing addresses via custom resource definitions
            displayName: AMQ Broker Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: Provides message migration on clustered broker scaledown
            displayName: AMQ Broker Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: Security configuration for the broker
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
          to deploy and manage stateful AMQ Broker broker clusters
        displayName: Red Hat Integration - AMQ Broker for RHEL 8 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: rkieley@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:1a7aa54d2799d238eb5f49f7a95a78a896f6bf8d222567e9118e0e3963cc9aad
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c5f4c08e068b9721967cf7c7cbd9a9e93fb5e39b264dd13b653e99d8f3fa9e0e
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:5ff28e3062d3eabb9f52d8271b837fdab06cafbd8b8f732b1bc00de49ad69aad
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9a02decbc460ddfc501d8a4a9b41cd084776090951906b027838c0829e1fc15a
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:e140415e0361cabeab192ba6d22634283cd47749dd25e9cee4a775d3c409cd97
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:61e5a8c1e46f1c18648e0406e2a57c52f911979079020cc57c7a4b06a56940bb
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        version: 7.10.7-opr-1
      entries:
      - name: amq-broker-operator.v7.10.7-opr-1
        version: 7.10.7-opr-1
      - name: amq-broker-operator.v7.10.6-opr-1
        version: 7.10.6-opr-1
      - name: amq-broker-operator.v7.10.5-opr-1
        version: 7.10.5-opr-1
      - name: amq-broker-operator.v7.10.4-opr-1
        version: 7.10.4-opr-1
      - name: amq-broker-operator.v7.10.3-opr-3
        version: 7.10.3-opr-3
      - name: amq-broker-operator.v7.10.3-opr-2
        version: 7.10.3-opr-2
      - name: amq-broker-operator.v7.10.3-opr-1
        version: 7.10.3-opr-1
      - name: amq-broker-operator.v7.10.2-opr-2-0.1676475747.p
        version: 7.10.2-opr-2+0.1676475747.p
      - name: amq-broker-operator.v7.10.2-opr-2-0.1680622941.p
        version: 7.10.2-opr-2+0.1680622941.p
      - name: amq-broker-operator.v7.10.2-opr-2
        version: 7.10.2-opr-2
      - name: amq-broker-operator.v7.10.2-opr-1
        version: 7.10.2-opr-1
      - name: amq-broker-operator.v7.10.1-opr-2
        version: 7.10.1-opr-2
      - name: amq-broker-operator.v7.10.1-opr-1
        version: 7.10.1-opr-1
      - name: amq-broker-operator.v7.10.0-opr-4
        version: 7.10.0-opr-4
      - name: amq-broker-operator.v7.10.0-opr-3
        version: 7.10.0-opr-3
      - name: amq-broker-operator.v7.10.0-opr-2
        version: 7.10.0-opr-2
      - name: amq-broker-operator.v7.10.0-opr-1
        version: 7.10.0-opr-1
      name: 7.10.x
    - currentCSV: amq-broker-operator.v7.11.8-opr-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisSecurity is the Schema for the activemqartemissecurities
              API
            displayName: Active MQArtemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: |
          **Red Hat AMQ Broker** is a pure-Java multiprotocol message broker. It’s built on an efficient, asynchronous core with a fast journal for message persistence.

          You can provision multiple instances and update the broker configuration on the fly using the associated Custom Resource Definitions.
          In addition, you can use the following CRDs to configure your broker environment:

          - **Address CRD**: define addresses and queues for the brokers in your deployment
          - **Security CRD**: define the security configuration for the brokers in your deployment, including:
              - users and roles
              - role based access control
              - console access control

          ## Selecting a channel
          You can specify the channel used to track and receive updates for the Operator by selecting either to track the minor or patch level versions.

          ## Supported Features
          - **Console** - Allows you view the broker topology, clients and messages. Red Hat Fuse users can integrate the broker console into the Fuse console for OpenShift.
          - **Persistence** - ephemeral and stateful deployments.
          - **Advanced queueing** - Last value queues, message groups, topic hierarchies, and large message support.
          - **Multiprotocol** - AMQP 1.0, MQTT, STOMP, OpenWire, and HornetQ Core.
          - **Address Management** - Creates and manages addresses and queues.
          - **User Management** - Creates and manages broker users.
          - **Monitoring** - Support for monitoring using Prometheus and provided Grafana dashboards.
          - **Scaledown** - Ensure consistency of messages using message migration.

          ## Storage
          An efficient data storage infrastructure is essential to the optimal performance of AMQ Broker.  AMQ Broker supports:
            - **Ephemeral** (Recommended for development only!)
            - **Persistent**
              - For example, block or NFS storage.
          Note: Your cloud provider might provide options that are not suitable for AMQ Broker, for example Amazon Elastic File System.  If in doubt, contact Red Hat Support

          ## Documentation
          Documentation for the current release is available from the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq/2021.q4/#category-amq-broker).
        displayName: Red Hat Integration - AMQ Broker for RHEL 8 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c5f4c08e068b9721967cf7c7cbd9a9e93fb5e39b264dd13b653e99d8f3fa9e0e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:4b7796235a0a545db83570add7a675fdd9d82b17f931eb81d0cafbedb1fbf22c
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:5ff28e3062d3eabb9f52d8271b837fdab06cafbd8b8f732b1bc00de49ad69aad
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:d2ae3defac36f00112c6b773e13626336ba15d6f50f905ad1c33f122bfe1a6a9
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:61e5a8c1e46f1c18648e0406e2a57c52f911979079020cc57c7a4b06a56940bb
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9a02decbc460ddfc501d8a4a9b41cd084776090951906b027838c0829e1fc15a
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b0b3684ef1ebf8b44d3a4c46391984173792dde1bd7363ea06d43a8f95a717d0
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:137b893ad15e0cd5353bae134c8fae833257a12641b12d0f774f1565ce66f63c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        version: 7.11.8-opr-1
      entries:
      - name: amq-broker-operator.v7.11.8-opr-1
        version: 7.11.8-opr-1
      - name: amq-broker-operator.v7.11.7-opr-2-1742200979
        version: 7.11.7-opr-2-1742200979
      - name: amq-broker-operator.v7.11.7-opr-2-1740583644
        version: 7.11.7-opr-2-1740583644
      - name: amq-broker-operator.v7.11.7-opr-2-1736956309
        version: 7.11.7-opr-2-1736956309
      - name: amq-broker-operator.v7.11.7-opr-2-1731330819
        version: 7.11.7-opr-2-1731330819
      - name: amq-broker-operator.v7.11.7-opr-2
        version: 7.11.7-opr-2
      - name: amq-broker-operator.v7.11.7-opr-1-1726157430
        version: 7.11.7-opr-1-1726157430
      - name: amq-broker-operator.v7.11.7-opr-1-1723204800
        version: 7.11.7-opr-1-1723204800
      - name: amq-broker-operator.v7.11.7-opr-1
        version: 7.11.7-opr-1
      - name: amq-broker-operator.v7.11.6-opr-2
        version: 7.11.6-opr-2
      - name: amq-broker-operator.v7.11.5-opr-1
        version: 7.11.5-opr-1
      - name: amq-broker-operator.v7.11.4-opr-1
        version: 7.11.4-opr-1
      - name: amq-broker-operator.v7.11.3-opr-1
        version: 7.11.3-opr-1
      - name: amq-broker-operator.v7.11.2-opr-1
        version: 7.11.2-opr-1
      - name: amq-broker-operator.v7.11.1-opr-2
        version: 7.11.1-opr-2
      - name: amq-broker-operator.v7.11.1-opr-1
        version: 7.11.1-opr-1
      - name: amq-broker-operator.v7.11.0-opr-3
        version: 7.11.0-opr-3
      - name: amq-broker-operator.v7.11.0-opr-2
        version: 7.11.0-opr-2
      name: 7.11.x
    - currentCSV: amq-broker-operator.v7.12.5-opr-1-0.1766088985.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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.substitutesFor: amq-broker-operator.v7.12.5-opr-1-0.1764078330.p
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - description: Provides internal message migration on clustered broker scaledown
            displayName: ActiveMQ Artemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: |
          **Red Hat AMQ Broker** is a pure-Java multiprotocol message broker. It’s built on an efficient, asynchronous core with a fast journal for message persistence.

          You can provision multiple instances and update the broker configuration on the fly using the associated Custom Resource Definitions.
          In addition, you can use the following CRDs to configure your broker environment:

          - **Address CRD**: define addresses and queues for the brokers in your deployment
          - **Security CRD**: define the security configuration for the brokers in your deployment, including:
              - users and roles
              - role based access control
              - console access control

          ## Selecting a channel
          You can specify the channel used to track and receive updates for the Operator by selecting either to track the minor or patch level versions.

          ## Supported Features
          - **Console** - Allows you view the broker topology, clients and messages. Red Hat Fuse users can integrate the broker console into the Fuse console for OpenShift.
          - **Persistence** - ephemeral and stateful deployments.
          - **Advanced queueing** - Last value queues, message groups, topic hierarchies, and large message support.
          - **Multiprotocol** - AMQP 1.0, MQTT, STOMP, OpenWire, and HornetQ Core.
          - **Address Management** - Creates and manages addresses and queues.
          - **User Management** - Creates and manages broker users.
          - **Monitoring** - Support for monitoring using Prometheus and provided Grafana dashboards.
          - **Scaledown** - Ensure consistency of messages using message migration.

          ## Storage
          An efficient data storage infrastructure is essential to the optimal performance of AMQ Broker.  AMQ Broker supports:
            - **Ephemeral** (Recommended for development only!)
            - **Persistent**
              - For example, block or NFS storage.
          Note: Your cloud provider might provide options that are not suitable for AMQ Broker, for example Amazon Elastic File System.  If in doubt, contact Red Hat Support

          ## Documentation
          Documentation for the current release is available from the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq/2021.q4/#category-amq-broker).
        displayName: Red Hat Integration - AMQ Broker for RHEL 8 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:92305253e5770277b74bea6f4bddcb918664df174ac1cf1bcfd84f261465f9a4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:47fd4ce2533496828aba37bd1f9715e2164d5c90bd0fc6b25e7e0786d723bf01
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:bb6fbd68475a7852b4d99eea6c4ab313f9267da7963162f0d75375d7063409e7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9cc48eecf1442ae04b8543fa5d4381a13bc2831390850828834d387006d1342b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ffffa9875f0379e9373f89f05eb06e5a193273bb04bc3aa5f85b044357b79098
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:dc13871dfed52402c40fd192900fc3cb5a49da4fa08e4ec4d0e23a879e83db25
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:16253895bc113f395dc6ab5cd511901e43b6ee676369ec80d598a8741c3c9bf4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:36ea76632f4928c6c34087d06b942c44f6d5bdd4f1828ab4e5efe36cdaf0632f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d42d713da0ce6806fdc6492b6342586783e6865a82a8647d3c4288439b1751ee
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:023478b773a0c42739b86e822a4d435e01ef341b8136566ea52463f1b7e447ed
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:eacc4fb55e8c4c30894a51944960d536508001a49fda62782c6cb2ca8767961d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:7f9b921d89b6d4d91b365659afff127d99f1455b94b48a10a6a7f4c38dd8b700
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b2402179b1d0ff9c950defe5d8808195ef9a4c3e13e3c469cae31ab51d5f5014
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7f83cabd3579472283c9a22e5722ddc58b14bc819fa9ba8d2281560920b392e8
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d71506472636d940b5dbd3e708d3e0448d777eeecfd38de61ba49e281d2979c6
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:40920687402fd747ca02d384e63692a5e1db625723a2bf3056a607c92ee8eee1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        version: 7.12.5-opr-1+0.1766088985.p
      entries:
      - name: amq-broker-operator.v7.12.5-opr-1-0.1762191931.p
        version: 7.12.5-opr-1+0.1762191931.p
      - name: amq-broker-operator.v7.12.5-opr-1
        version: 7.12.5-opr-1
      - name: amq-broker-operator.v7.12.5-opr-1-0.1764078330.p
        version: 7.12.5-opr-1+0.1764078330.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1764016479.p
        version: 7.12.5-opr-1+0.1764016479.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1763602793.p
        version: 7.12.5-opr-1+0.1763602793.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1762407308.p
        version: 7.12.5-opr-1+0.1762407308.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1761126305.p
        version: 7.12.5-opr-1+0.1761126305.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1761129569.p
        version: 7.12.5-opr-1+0.1761129569.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1766088985.p
        version: 7.12.5-opr-1+0.1766088985.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1757928550.p
        version: 7.12.5-opr-1+0.1757928550.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1756216162.p
        version: 7.12.5-opr-1+0.1756216162.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1754272113.p
        version: 7.12.5-opr-1+0.1754272113.p
      - name: amq-broker-operator.v7.12.4-opr-1
        version: 7.12.4-opr-1
      - name: amq-broker-operator.v7.12.4-opr-1-0.1747217191.p
        version: 7.12.4-opr-1+0.1747217191.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1730142550.p
        version: 7.12.3-opr-1+0.1730142550.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1731483798.p
        version: 7.12.3-opr-1+0.1731483798.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1739889884.p
        version: 7.12.3-opr-1+0.1739889884.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1739991235.p
        version: 7.12.3-opr-1+0.1739991235.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1741881887.p
        version: 7.12.3-opr-1+0.1741881887.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1741883943.p
        version: 7.12.3-opr-1+0.1741883943.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1741884937.p
        version: 7.12.3-opr-1+0.1741884937.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1738596517.p
        version: 7.12.3-opr-1+0.1738596517.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1737643631.p
        version: 7.12.3-opr-1+0.1737643631.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1733315503.p
        version: 7.12.3-opr-1+0.1733315503.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1732654016.p
        version: 7.12.3-opr-1+0.1732654016.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1739390944.p
        version: 7.12.3-opr-1+0.1739390944.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1730813578.p
        version: 7.12.3-opr-1+0.1730813578.p
      - name: amq-broker-operator.v7.12.3-opr-1
        version: 7.12.3-opr-1
      - name: amq-broker-operator.v7.12.2-opr-1
        version: 7.12.2-opr-1
      - name: amq-broker-operator.v7.12.1-opr-1-0.1724054375.p
        version: 7.12.1-opr-1+0.1724054375.p
      - name: amq-broker-operator.v7.12.1-opr-1-0.1723669176.p
        version: 7.12.1-opr-1+0.1723669176.p
      - name: amq-broker-operator.v7.12.1-opr-1-0.1721247907.p
        version: 7.12.1-opr-1+0.1721247907.p
      - name: amq-broker-operator.v7.12.1-opr-1
        version: 7.12.1-opr-1
      - name: amq-broker-operator.v7.12.0-opr-2
        version: 7.12.0-opr-2
      - name: amq-broker-operator.v7.12.0-opr-1
        version: 7.12.0-opr-1
      name: 7.12.x
    defaultChannel: 7.12.x
    packageName: amq-broker-rhel8
    provider:
      name: Red Hat
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-lambda-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-lambda-controller.v1.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "Alias",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "CodeSigningConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "EventSourceMapping",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "Function",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/lambda-controller:1.10.0
          createdAt: "2025-11-29T05:54:22Z"
          description: AWS Lambda controller is a service controller for managing
            Lambda resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alias represents the state of an AWS lambda Alias resource.
            displayName: Alias
            kind: Alias
            name: aliases.lambda.services.k8s.aws
            version: v1alpha1
          - description: CodeSigningConfig represents the state of an AWS lambda CodeSigningConfig
              resource.
            displayName: CodeSigningConfig
            kind: CodeSigningConfig
            name: codesigningconfigs.lambda.services.k8s.aws
            version: v1alpha1
          - description: EventSourceMapping represents the state of an AWS lambda
              EventSourceMapping resource.
            displayName: EventSourceMapping
            kind: EventSourceMapping
            name: eventsourcemappings.lambda.services.k8s.aws
            version: v1alpha1
          - description: Function represents the state of an AWS lambda Function resource.
            displayName: Function
            kind: Function
            name: functions.lambda.services.k8s.aws
            version: v1alpha1
          - description: FunctionURLConfig represents the state of an AWS lambda FunctionURLConfig
              resource.
            displayName: FunctionURLConfig
            kind: FunctionURLConfig
            name: functionurlconfigs.lambda.services.k8s.aws
            version: v1alpha1
          - description: LayerVersion represents the state of an AWS lambda LayerVersion
              resource.
            displayName: LayerVersion
            kind: LayerVersion
            name: layerversions.lambda.services.k8s.aws
            version: v1alpha1
          - description: Version represents the state of an AWS lambda Version resource.
            displayName: Version
            kind: Version
            name: versions.lambda.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Lambda resources in AWS from within your Kubernetes cluster.

          **About Amazon Lambda**

          Lambda is a compute service that lets you run code without provisioning or managing servers. Lambda runs your code on a high-availability compute infrastructure and performs all of the administration of the compute resources, including server and operating system maintenance, capacity provisioning and automatic scaling, code monitoring and logging. With Lambda, you can run code for virtually any type of application or backend service. All you need to do is supply your code in one of the [languages that Lambda supports](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Lambda
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - lambda
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Lambda Developer Resources
          url: https://aws.amazon.com/lambda/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: lambda maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/lambda-controller:1.10.0
        - quay.io/community-operator-pipeline-prod/ack-lambda-controller@sha256:d6e322492f07052cff6d7d727a56080d52437d56e3f4cf8ee1e19c28656be83d
        version: 1.10.0
      entries:
      - name: ack-lambda-controller.v1.10.0
        version: 1.10.0
      - name: ack-lambda-controller.v1.9.2
        version: 1.9.2
      - name: ack-lambda-controller.v1.9.1
        version: 1.9.1
      - name: ack-lambda-controller.v1.9.0
        version: 1.9.0
      - name: ack-lambda-controller.v1.8.0
        version: 1.8.0
      - name: ack-lambda-controller.v1.7.7
        version: 1.7.7
      - name: ack-lambda-controller.v1.7.6
        version: 1.7.6
      - name: ack-lambda-controller.v1.7.5
        version: 1.7.5
      - name: ack-lambda-controller.v1.7.4
        version: 1.7.4
      - name: ack-lambda-controller.v1.7.2
        version: 1.7.2
      - name: ack-lambda-controller.v1.7.1
        version: 1.7.1
      - name: ack-lambda-controller.v1.7.0
        version: 1.7.0
      - name: ack-lambda-controller.v1.6.3
        version: 1.6.3
      - name: ack-lambda-controller.v1.6.2
        version: 1.6.2
      - name: ack-lambda-controller.v1.6.1
        version: 1.6.1
      - name: ack-lambda-controller.v1.6.0
        version: 1.6.0
      - name: ack-lambda-controller.v1.5.8
        version: 1.5.8
      - name: ack-lambda-controller.v1.5.7
        version: 1.5.7
      - name: ack-lambda-controller.v1.5.6
        version: 1.5.6
      - name: ack-lambda-controller.v1.5.5
        version: 1.5.5
      - name: ack-lambda-controller.v1.5.4
        version: 1.5.4
      - name: ack-lambda-controller.v1.5.3
        version: 1.5.3
      - name: ack-lambda-controller.v1.5.2
        version: 1.5.2
      - name: ack-lambda-controller.v1.5.1
        version: 1.5.1
      - name: ack-lambda-controller.v1.5.0
        version: 1.5.0
      - name: ack-lambda-controller.v1.4.2
        version: 1.4.2
      - name: ack-lambda-controller.v1.4.0
        version: 1.4.0
      - name: ack-lambda-controller.v1.3.4
        version: 1.3.4
      - name: ack-lambda-controller.v1.3.2
        version: 1.3.2
      - name: ack-lambda-controller.v1.3.1
        version: 1.3.1
      - name: ack-lambda-controller.v1.3.0
        version: 1.3.0
      - name: ack-lambda-controller.v1.2.1
        version: 1.2.1
      - name: ack-lambda-controller.v1.2.0
        version: 1.2.0
      - name: ack-lambda-controller.v1.1.1
        version: 1.1.1
      - name: ack-lambda-controller.v1.1.0
        version: 1.1.0
      - name: ack-lambda-controller.v1.0.1
        version: 1.0.1
      - name: ack-lambda-controller.v1.0.0
        version: 1.0.0
      - name: ack-lambda-controller.v0.1.7
        version: 0.1.7
      - name: ack-lambda-controller.v0.1.6
        version: 0.1.6
      - name: ack-lambda-controller.v0.1.5
        version: 0.1.5
      - name: ack-lambda-controller.v0.1.3
        version: 0.1.3
      - name: ack-lambda-controller.v0.1.2
        version: 0.1.2
      - name: ack-lambda-controller.v0.1.1
        version: 0.1.1
      - name: ack-lambda-controller.v0.1.0
        version: 0.1.0
      - name: ack-lambda-controller.v0.0.17
        version: 0.0.17
      - name: ack-lambda-controller.v0.0.16
        version: 0.0.16
      - name: ack-lambda-controller.v0.0.15
        version: 0.0.15
      - name: ack-lambda-controller.v0.0.14
        version: 0.0.14
      - name: ack-lambda-controller.v0.0.13
        version: 0.0.13
      - name: ack-lambda-controller.v0.0.12
        version: 0.0.12
      - name: ack-lambda-controller.v0.0.11
        version: 0.0.11
      - name: ack-lambda-controller.v0.0.10
        version: 0.0.10
      - name: ack-lambda-controller.v0.0.9
        version: 0.0.9
      - name: ack-lambda-controller.v0.0.8
        version: 0.0.8
      - name: ack-lambda-controller.v0.0.7
        version: 0.0.7
      - name: ack-lambda-controller.v0.0.6
        version: 0.0.6
      - name: ack-lambda-controller.v0.0.5
        version: 0.0.5
      - name: ack-lambda-controller.v0.0.4
        version: 0.0.4
      - name: ack-lambda-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-lambda-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: JohnSnowLABS
      provider-url: nlp.johnsnowlabs.com
    name: annotationlab
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: annotationlab.v5.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.johnsnowlabs.com/v1",
                "kind": "Annotationlab",
                "metadata": {
                  "name": "annotationlab"
                },
                "spec": {
                  "activelearning": {
                    "extraEnv": "",
                    "extraVolumeMounts": "",
                    "extraVolumes": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "docker.io/johnsnowlabs/annotationlab",
                      "tag": "active-learning-5.7.0"
                    },
                    "lifecycleHooks": ""
                  },
                  "affinity": "podAntiAffinity:\n  requiredDuringSchedulingIgnoredDuringExecution:\n    - labelSelector:\n        matchLabels:\n          {{- include \"annotationlab.selectorLabels\" . | nindent 10 }}\n        matchExpressions:\n          - key: role\n            operator: NotIn\n            values:\n              - test\n      topologyKey: kubernetes.io/hostname\n  preferredDuringSchedulingIgnoredDuringExecution:\n    - weight: 100\n      podAffinityTerm:\n        labelSelector:\n          matchLabels:\n            {{- include \"annotationlab.selectorLabels\" . | nindent 12 }}\n          matchExpressions:\n            - key: role\n              operator: NotIn\n              values:\n                - test\n        topologyKey: failure-domain.beta.kubernetes.io/zone\n",
                  "airflow": {
                    "activelearning": {
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/johnsnowlabs/annotationlab",
                        "tag": "active-learning-5.7.0"
                      }
                    },
                    "affinity": {},
                    "airflowConfigAnnotations": {},
                    "airflowHome": "/opt/airflow",
                    "airflowLocalSettings": "{{- if semverCompare \"\u003e=2.2.0\" .Values.airflowVersion }}\n{{- if not (or .Values.webserverSecretKey .Values.webserverSecretKeySecretName) }}\nfrom airflow.www.utils import UIAlert\n\nDASHBOARD_UIALERTS = [\n  UIAlert(\n    'Usage of a dynamic webserver secret key detected. We recommend a static webserver secret key instead.'\n    ' See the \u003ca href='\n    '\"https://airflow.apache.org/docs/helm-chart/stable/production-guide.html#webserver-secret-key\"\u003e'\n    'Helm Chart Production Guide\u003c/a\u003e for more details.',\n    category=\"warning\",\n    roles=[\"Admin\"],\n    html=True,\n  )\n]\n{{- end }}\n{{- end }}",
                    "airflowPodAnnotations": {},
                    "airflowVersion": "2.5.1",
                    "allowPodLaunching": true,
                    "cleanup": {
                      "affinity": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow kubernetes cleanup-pods --namespace={{ .Release.Namespace }}"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "failedJobsHistoryLimit": null,
                      "labels": {},
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "resources": {},
                      "schedule": "*/15 * * * *",
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "successfulJobsHistoryLimit": null,
                      "tolerations": [],
                      "topologySpreadConstraints": []
                    },
                    "config": {
                      "api": {
                        "auth_backend": "airflow.api.auth.backend.default"
                      },
                      "celery": {
                        "flower_url_prefix": "{{ .Values.ingress.flower.path }}",
                        "worker_concurrency": 16
                      },
                      "celery_kubernetes_executor": {
                        "kubernetes_queue": "kubernetes"
                      },
                      "core": {
                        "colored_console_log": "False",
                        "dags_are_paused_at_creation": "False",
                        "dags_folder": "{{ include \"airflow_dags\" . }}",
                        "executor": "{{ .Values.executor }}",
                        "load_examples": "False",
                        "remote_logging": "{{- ternary \"True\" \"False\" .Values.elasticsearch.enabled }}"
                      },
                      "elasticsearch": {
                        "json_format": "True",
                        "log_id_template": "{dag_id}_{task_id}_{execution_date}_{try_number}"
                      },
                      "elasticsearch_configs": {
                        "max_retries": 3,
                        "retry_timeout": "True",
                        "timeout": 30
                      },
                      "kerberos": {
                        "ccache": "{{ .Values.kerberos.ccacheMountPath }}/{{ .Values.kerberos.ccacheFileName }}",
                        "keytab": "{{ .Values.kerberos.keytabPath }}",
                        "principal": "{{ .Values.kerberos.principal }}",
                        "reinit_frequency": "{{ .Values.kerberos.reinitFrequency }}"
                      },
                      "kubernetes": {
                        "airflow_configmap": "{{ include \"airflow_config\" . }}",
                        "airflow_local_settings_configmap": "{{ include \"airflow_config\" . }}",
                        "multi_namespace_mode": "{{ ternary \"True\" \"False\" .Values.multiNamespaceMode }}",
                        "namespace": "{{ .Release.Namespace }}",
                        "pod_template_file": "{{ include \"airflow_pod_template_file\" . }}/pod_template_file.yaml",
                        "worker_container_repository": "{{ .Values.images.airflow.repository | default .Values.defaultAirflowRepository }}",
                        "worker_container_tag": "{{ .Values.images.airflow.tag | default .Values.defaultAirflowTag }}"
                      },
                      "logging": {
                        "colored_console_log": "False",
                        "remote_logging": "{{- ternary \"True\" \"False\" .Values.elasticsearch.enabled }}"
                      },
                      "metrics": {
                        "statsd_host": "{{ printf \"%s-statsd\" .Release.Name }}",
                        "statsd_on": "{{ ternary \"True\" \"False\" .Values.statsd.enabled }}",
                        "statsd_port": 9125,
                        "statsd_prefix": "airflow"
                      },
                      "scheduler": {
                        "run_duration": 41460,
                        "standalone_dag_processor": "{{ ternary \"True\" \"False\" .Values.dagProcessor.enabled }}",
                        "statsd_host": "{{ printf \"%s-statsd\" .Release.Name }}",
                        "statsd_on": "{{ ternary \"True\" \"False\" .Values.statsd.enabled }}",
                        "statsd_port": 9125,
                        "statsd_prefix": "airflow"
                      },
                      "webserver": {
                        "authenticate": "False",
                        "base_url": "http://0.0.0.0:8080",
                        "enable_proxy_fix": "True",
                        "rbac": "False"
                      }
                    },
                    "createUserJob": {
                      "affinity": {},
                      "annotations": {},
                      "applyCustomEnv": true,
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"users create\" \"create_user\" }} \"$@\"",
                        "--",
                        "-r",
                        "{{ .Values.webserver.defaultUser.role }}",
                        "-u",
                        "{{ .Values.webserver.defaultUser.username }}",
                        "-e",
                        "{{ .Values.webserver.defaultUser.email }}",
                        "-f",
                        "{{ .Values.webserver.defaultUser.firstName }}",
                        "-l",
                        "{{ .Values.webserver.defaultUser.lastName }}",
                        "-p",
                        "{{ .Values.webserver.defaultUser.password }}"
                      ],
                      "command": null,
                      "env": [],
                      "extraContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "jobAnnotations": {},
                      "labels": {},
                      "nodeSelector": {},
                      "resources": {},
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-create-user-job"
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "useHelmHooks": true
                    },
                    "dagProcessor": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow dag-processor"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "livenessProbe": {
                        "command": null,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "strategy": {
                        "rollingUpdate": {
                          "maxSurge": "100%",
                          "maxUnavailable": "50%"
                        }
                      },
                      "terminationGracePeriodSeconds": 60,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      }
                    },
                    "dags": {
                      "gitSync": {
                        "branch": "v2-2-stable",
                        "containerName": "git-sync",
                        "depth": 1,
                        "enabled": false,
                        "env": [],
                        "extraVolumeMounts": [],
                        "maxFailures": 0,
                        "repo": "https://github.com/apache/airflow.git",
                        "resources": {},
                        "rev": "HEAD",
                        "securityContext": {},
                        "subPath": "tests/dags",
                        "uid": 65533,
                        "wait": 5
                      },
                      "persistence": {
                        "accessMode": "ReadWriteOnce",
                        "enabled": false,
                        "existingClaim": null,
                        "size": "1Gi",
                        "storageClassName": null,
                        "subPath": null
                      }
                    },
                    "data": {
                      "brokerUrl": null,
                      "brokerUrlSecretName": null,
                      "metadataConnection": {
                        "db": "airflow",
                        "pass": "airflow",
                        "port": 5432,
                        "protocol": "postgresql",
                        "sslmode": "disable",
                        "user": "airflow"
                      },
                      "metadataSecretName": null,
                      "resultBackendConnection": null,
                      "resultBackendSecretName": null
                    },
                    "defaultAirflowRepository": "apache/airflow",
                    "defaultAirflowTag": "2.5.1",
                    "elasticsearch": {
                      "connection": {},
                      "enabled": false,
                      "secretName": null
                    },
                    "enableBuiltInSecretEnvVars": {
                      "AIRFLOW_CONN_AIRFLOW_DB": true,
                      "AIRFLOW__CELERY__BROKER_URL": true,
                      "AIRFLOW__CELERY__CELERY_RESULT_BACKEND": true,
                      "AIRFLOW__CELERY__RESULT_BACKEND": true,
                      "AIRFLOW__CORE__FERNET_KEY": true,
                      "AIRFLOW__CORE__SQL_ALCHEMY_CONN": true,
                      "AIRFLOW__DATABASE__SQL_ALCHEMY_CONN": true,
                      "AIRFLOW__ELASTICSEARCH__ELASTICSEARCH_HOST": true,
                      "AIRFLOW__ELASTICSEARCH__HOST": true,
                      "AIRFLOW__WEBSERVER__SECRET_KEY": true
                    },
                    "env": [],
                    "executor": "CeleryExecutor",
                    "extraConfigMaps": {},
                    "extraEnv": "- name: ACTIVE_LEARNING_IMAGE_PULL_POLICY\n  value: \"{{ .Values.activelearning.image.pullPolicy }}\"\n- name: ACTIVE_LEARNING_IMAGE\n  value: \"{{ .Values.activelearning.image.repository }}:{{ .Values.activelearning.image.tag }}\"\n- name: NUMBER_OF_PREANNOTATOR_DAG\n  value: {{ .Values.preannotator_queues.count | quote }}\n- name: AIRFLOW__LOGGING__LOGGING_LEVEL\n  value: INFO\n- name: ANNOTATIONLAB_FULLNAME\n  value: {{ include \"annotationlab.annotationlab.fullname\" . }}\n- name: ANNOTATIONLAB_URL\n  value: http://{{ include \"annotationlab.annotationlab.fullname\" . }}:8200\n- name: AIRFLOW_NAMESPACE\n  value: {{ .Release.Namespace }}\n- name: DATABASE_CONNECTION_STRING\n  valueFrom:\n    secretKeyRef:\n      name: {{ include \"annotationlab.annotationlab.fullname\" . }}-secret\n      key: DATABASE_CONNECTION_STRING\n",
                    "extraEnvFrom": null,
                    "extraSecrets": {},
                    "fernetKey": null,
                    "fernetKeySecretName": null,
                    "flower": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"celery flower\" \"flower\" }}"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "extraContainers": [],
                      "extraNetworkPolicies": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "networkPolicy": {
                        "ingress": {
                          "from": [],
                          "ports": [
                            {
                              "port": "{{ .Values.ports.flowerUI }}"
                            }
                          ]
                        }
                      },
                      "nodeSelector": {},
                      "password": null,
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "secretName": null,
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "loadBalancerIP": null,
                        "loadBalancerSourceRanges": [],
                        "ports": [
                          {
                            "name": "flower-ui",
                            "port": "{{ .Values.ports.flowerUI }}"
                          }
                        ],
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "username": null
                    },
                    "fullnameOverride": "",
                    "gid": 0,
                    "global": {},
                    "image": {
                      "repository": "docker.io/johnsnowlabs/annotationlab"
                    },
                    "images": {
                      "airflow": {
                        "pullPolicy": "IfNotPresent",
                        "repository": null,
                        "tag": "dataflows-5.7.0"
                      },
                      "flower": {
                        "pullPolicy": "IfNotPresent",
                        "repository": null,
                        "tag": null
                      },
                      "gitSync": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "k8s.gcr.io/git-sync/git-sync",
                        "tag": "v3.6.3"
                      },
                      "migrationsWaitTimeout": 60,
                      "pgbouncer": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "apache/airflow",
                        "tag": "airflow-pgbouncer-2021.04.28-1.14.0"
                      },
                      "pgbouncerExporter": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "apache/airflow",
                        "tag": "airflow-pgbouncer-exporter-2021.09.22-0.12.0"
                      },
                      "pod_template": {
                        "pullPolicy": "IfNotPresent",
                        "repository": null,
                        "tag": null
                      },
                      "redis": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/redis",
                        "tag": "alpine3.16"
                      },
                      "statsd": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "quay.io/prometheus/statsd-exporter",
                        "tag": "v0.22.8"
                      },
                      "useDefaultImageForMigration": false
                    },
                    "ingress": {
                      "enabled": false,
                      "flower": {
                        "annotations": {},
                        "enabled": false,
                        "host": "",
                        "hosts": [],
                        "ingressClassName": "",
                        "path": "/",
                        "pathType": "ImplementationSpecific",
                        "tls": {
                          "enabled": false,
                          "secretName": ""
                        }
                      },
                      "web": {
                        "annotations": {},
                        "enabled": false,
                        "host": "",
                        "hosts": [],
                        "ingressClassName": "",
                        "path": "/",
                        "pathType": "ImplementationSpecific",
                        "precedingPaths": [],
                        "succeedingPaths": [],
                        "tls": {
                          "enabled": false,
                          "secretName": ""
                        }
                      }
                    },
                    "kerberos": {
                      "ccacheFileName": "cache",
                      "ccacheMountPath": "/var/kerberos-ccache",
                      "config": "# This is an example config showing how you can use templating and how \"example\" config\n# might look like. It works with the test kerberos server that we are using during integration\n# testing at Apache Airflow (see `scripts/ci/docker-compose/integration-kerberos.yml` but in\n# order to make it production-ready you must replace it with your own configuration that\n# Matches your kerberos deployment. Administrators of your Kerberos instance should\n# provide the right configuration.\n\n[logging]\ndefault = \"FILE:{{ template \"airflow_logs_no_quote\" . }}/kerberos_libs.log\"\nkdc = \"FILE:{{ template \"airflow_logs_no_quote\" . }}/kerberos_kdc.log\"\nadmin_server = \"FILE:{{ template \"airflow_logs_no_quote\" . }}/kadmind.log\"\n\n[libdefaults]\ndefault_realm = FOO.COM\nticket_lifetime = 10h\nrenew_lifetime = 7d\nforwardable = true\n\n[realms]\nFOO.COM = {\n  kdc = kdc-server.foo.com\n  admin_server = admin_server.foo.com\n}\n",
                      "configPath": "/etc/krb5.conf",
                      "enabled": false,
                      "keytabBase64Content": null,
                      "keytabPath": "/etc/airflow.keytab",
                      "principal": "airflow@FOO.COM",
                      "reinitFrequency": 3600
                    },
                    "kubeVersionOverride": "",
                    "labels": {},
                    "limits": [],
                    "logs": {
                      "persistence": {
                        "enabled": false,
                        "existingClaim": null,
                        "size": "100Gi",
                        "storageClassName": null
                      }
                    },
                    "migrateDatabaseJob": {
                      "affinity": {},
                      "annotations": {},
                      "applyCustomEnv": true,
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"db upgrade\" \"upgradedb\" }}"
                      ],
                      "command": null,
                      "enabled": true,
                      "extraContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "jobAnnotations": {},
                      "nodeSelector": {},
                      "resources": {},
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-migrate-database-job"
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "useHelmHooks": true
                    },
                    "multiNamespaceMode": false,
                    "nameOverride": "",
                    "networkPolicies": {
                      "enabled": false
                    },
                    "nodeSelector": {},
                    "pgbouncer": {
                      "affinity": {},
                      "annotations": {},
                      "args": null,
                      "auth_file": "/etc/pgbouncer/users.txt",
                      "auth_type": "md5",
                      "ciphers": "normal",
                      "command": [
                        "pgbouncer",
                        "-u",
                        "nobody",
                        "/etc/pgbouncer/pgbouncer.ini"
                      ],
                      "configSecretName": null,
                      "enabled": false,
                      "extraIni": null,
                      "extraIniMetadata": null,
                      "extraIniResultBackend": null,
                      "extraNetworkPolicies": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "logConnections": 0,
                      "logDisconnections": 0,
                      "maxClientConn": 100,
                      "metadataPoolSize": 10,
                      "metricsExporterSidecar": {
                        "resources": {},
                        "sslmode": "disable"
                      },
                      "nodeSelector": {},
                      "podDisruptionBudget": {
                        "config": {
                          "maxUnavailable": 1
                        },
                        "enabled": false
                      },
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "resultBackendPoolSize": 5,
                      "revisionHistoryLimit": null,
                      "service": {
                        "extraAnnotations": {}
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "ssl": {
                        "ca": null,
                        "cert": null,
                        "key": null
                      },
                      "sslmode": "prefer",
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "uid": 65534,
                      "verbose": 0
                    },
                    "podTemplate": null,
                    "ports": {
                      "airflowUI": 8080,
                      "flowerUI": 5555,
                      "pgbouncer": 6543,
                      "pgbouncerScrape": 9127,
                      "redisDB": 6379,
                      "statsdIngest": 9125,
                      "statsdScrape": 9102,
                      "workerLogs": 8793
                    },
                    "postgresql": {
                      "auth": {
                        "enablePostgresUser": true,
                        "password": null,
                        "postgresPassword": "postgres",
                        "username": null
                      },
                      "common": {
                        "exampleValue": "common-chart",
                        "global": {
                          "postgresql": {}
                        }
                      },
                      "commonAnnotations": {},
                      "enabled": true,
                      "extraEnv": [],
                      "global": {
                        "postgresql": {}
                      },
                      "image": {
                        "debug": false,
                        "pullPolicy": "IfNotPresent",
                        "registry": "docker.io",
                        "repository": "bitnami/postgresql",
                        "tag": "11"
                      },
                      "ldap": {
                        "baseDN": "",
                        "bindDN": "",
                        "enabled": false,
                        "port": "",
                        "prefix": "",
                        "scheme": "",
                        "search_attr": "",
                        "search_filter": "",
                        "server": "",
                        "suffix": "",
                        "tls": false,
                        "url": ""
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 30,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "master": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": [],
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "metrics": {
                        "enabled": false,
                        "extraEnvVars": {},
                        "image": {
                          "pullPolicy": "IfNotPresent",
                          "registry": "docker.io",
                          "repository": "bitnami/postgres-exporter",
                          "tag": "0.8.0-debian-10-r166"
                        },
                        "livenessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "prometheusRule": {
                          "additionalLabels": {},
                          "enabled": false,
                          "namespace": "",
                          "rules": []
                        },
                        "readinessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "securityContext": {},
                        "service": {
                          "annotations": {
                            "prometheus.io/port": "9187",
                            "prometheus.io/scrape": "true"
                          },
                          "type": "ClusterIP"
                        },
                        "serviceMonitor": {
                          "additionalLabels": {},
                          "enabled": false
                        }
                      },
                      "nameOverride": "airflow-postgresql",
                      "networkPolicy": {
                        "allowExternal": true,
                        "enabled": false,
                        "explicitNamespacesSelector": {}
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "enabled": true,
                        "mountPath": "/bitnami/postgresql",
                        "size": "8Gi",
                        "subPath": ""
                      },
                      "postgresqlDataDir": "/bitnami/postgresql/data",
                      "postgresqlDatabase": "airflow",
                      "postgresqlPassword": "airflow",
                      "postgresqlUsername": "airflow",
                      "psp": {
                        "create": false
                      },
                      "rbac": {
                        "create": false
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "replication": {
                        "applicationName": "my_application",
                        "enabled": false,
                        "numSynchronousReplicas": 0,
                        "password": "repl_password",
                        "slaveReplicas": 1,
                        "synchronousCommit": "off",
                        "user": "repl_user"
                      },
                      "resources": {
                        "requests": {
                          "cpu": "250m",
                          "memory": "256Mi"
                        }
                      },
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "port": 5432,
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "enabled": true,
                        "name": "annotationlab-airflow-postgresql"
                      },
                      "shmVolume": {
                        "chmod": {
                          "enabled": true
                        },
                        "enabled": true
                      },
                      "slave": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": "# - name: do-something\n#   image: busybox\n#   command: ['do', 'something']\n",
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "tls": {
                        "certFilename": "",
                        "certKeyFilename": "",
                        "certificatesSecret": "",
                        "enabled": false,
                        "preferServerCiphers": true
                      },
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      },
                      "volumePermissions": {
                        "enabled": false,
                        "image": {
                          "pullPolicy": "Always",
                          "registry": "docker.io",
                          "repository": "bitnami/minideb",
                          "tag": "buster"
                        },
                        "securityContext": {}
                      }
                    },
                    "preannotator_queues": {
                      "count": 5
                    },
                    "quotas": {},
                    "rbac": {
                      "create": true,
                      "createSCCRoleBinding": false
                    },
                    "redis": {
                      "affinity": {},
                      "enabled": true,
                      "nodeSelector": {},
                      "password": "DefaulTRediS-P0ss",
                      "passwordSecretName": null,
                      "persistence": {
                        "annotations": {},
                        "enabled": true,
                        "size": "1Gi",
                        "storageClassName": null
                      },
                      "podAnnotations": {},
                      "resources": {},
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "annotationlab-airflow-redis"
                      },
                      "terminationGracePeriodSeconds": 600,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "uid": 0
                    },
                    "registry": {
                      "connection": {},
                      "secretName": "kubernetesdockerhub"
                    },
                    "registryCredentials": {
                      "pullPolicy": "IfNotPresent",
                      "registryUrl": "docker.io/annotationlab"
                    },
                    "revisionHistoryLimit": null,
                    "scheduler": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow scheduler"
                      ],
                      "command": null,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "livenessProbe": {
                        "command": null,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "logGroomerSidecar": {
                        "args": [
                          "bash",
                          "/clean-logs"
                        ],
                        "command": null,
                        "enabled": true,
                        "resources": {},
                        "retentionDays": 15
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podDisruptionBudget": {
                        "config": {
                          "maxUnavailable": 1
                        },
                        "enabled": false
                      },
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-scheduler"
                      },
                      "strategy": null,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "updateStrategy": null,
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      }
                    },
                    "secret": [],
                    "securityContext": {},
                    "statsd": {
                      "affinity": {},
                      "args": [
                        "--statsd.mapping-config=/etc/statsd-exporter/mappings.yml"
                      ],
                      "enabled": false,
                      "extraMappings": [],
                      "extraNetworkPolicies": [],
                      "nodeSelector": {},
                      "overrideMappings": [],
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "securityContext": {},
                      "service": {
                        "extraAnnotations": {}
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-statsd"
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "uid": 65534
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "triggerer": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow triggerer"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "livenessProbe": {
                        "command": null,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "annotationlab-airflow-triggerer"
                      },
                      "strategy": {
                        "rollingUpdate": {
                          "maxSurge": "100%",
                          "maxUnavailable": "50%"
                        }
                      },
                      "terminationGracePeriodSeconds": 60,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      }
                    },
                    "uid": 50000,
                    "volumeMounts": [],
                    "volumes": [],
                    "webserver": {
                      "affinity": {},
                      "allowPodLogReading": true,
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow webserver"
                      ],
                      "command": null,
                      "defaultUser": {
                        "email": "admin@example.com",
                        "enabled": false,
                        "firstName": "admin",
                        "lastName": "user",
                        "password": "admin",
                        "role": "Admin",
                        "username": "admin"
                      },
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraNetworkPolicies": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "livenessProbe": {
                        "failureThreshold": 20,
                        "initialDelaySeconds": 15,
                        "periodSeconds": 5,
                        "scheme": "HTTP",
                        "timeoutSeconds": 30
                      },
                      "networkPolicy": {
                        "ingress": {
                          "from": [],
                          "ports": [
                            {
                              "port": "{{ .Values.ports.airflowUI }}"
                            }
                          ]
                        }
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podDisruptionBudget": {
                        "config": {
                          "maxUnavailable": 1
                        },
                        "enabled": false
                      },
                      "priorityClassName": null,
                      "readinessProbe": {
                        "failureThreshold": 20,
                        "initialDelaySeconds": 15,
                        "periodSeconds": 5,
                        "scheme": "HTTP",
                        "timeoutSeconds": 30
                      },
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "loadBalancerIP": null,
                        "loadBalancerSourceRanges": [],
                        "ports": [
                          {
                            "name": "airflow-ui",
                            "port": "{{ .Values.ports.airflowUI }}"
                          }
                        ],
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-webserver"
                      },
                      "strategy": null,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      },
                      "webserverConfig": null,
                      "webserverConfigConfigMapName": null
                    },
                    "webserverSecretKey": "f565cd64401775f93c820dc63fc3d4f6",
                    "webserverSecretKeySecretName": null,
                    "workers": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"celery worker\" \"worker\" }}"
                      ],
                      "command": null,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "hostAliases": [],
                      "keda": {
                        "advanced": {},
                        "cooldownPeriod": 30,
                        "enabled": false,
                        "maxReplicaCount": 10,
                        "minReplicaCount": 0,
                        "namespaceLabels": {},
                        "pollingInterval": 5
                      },
                      "kerberosSidecar": {
                        "enabled": false,
                        "resources": {}
                      },
                      "labels": {},
                      "livenessProbe": {
                        "command": null,
                        "enabled": true,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "logGroomerSidecar": {
                        "args": [
                          "bash",
                          "/clean-logs"
                        ],
                        "command": null,
                        "enabled": true,
                        "resources": {},
                        "retentionDays": 15
                      },
                      "nodeSelector": {},
                      "persistence": {
                        "annotations": {},
                        "enabled": true,
                        "fixPermissions": false,
                        "size": "5Gi",
                        "storageClassName": null
                      },
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-worker"
                      },
                      "strategy": {
                        "rollingUpdate": {
                          "maxSurge": "100%",
                          "maxUnavailable": "50%"
                        }
                      },
                      "terminationGracePeriodSeconds": 600,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "updateStrategy": null,
                      "waitForMigrations": {
                        "env": []
                      }
                    }
                  },
                  "backup": {
                    "enable": false,
                    "files": true,
                    "image": {
                      "repository": null,
                      "tag": null
                    },
                    "s3_access_key": "",
                    "s3_bucket_fullpath": "",
                    "s3_secret_key": ""
                  },
                  "configuration": {
                    "FLASK_SECRET_KEY": "rpaQghA-9lmpLwB8qxW0FsW1TJyZZYuB60ppzswpTzM=",
                    "KEYCLOAK_CLIENT_ID": "annotationlab",
                    "KEYCLOAK_CLIENT_SECRET_KEY": "09a71c59-0351-4ce6-bc8f-8fd3feb9d2ff",
                    "KEYCLOAK_REALM_NAME": "master",
                    "PERSISTENT_STORAGE": "/projects"
                  },
                  "extraContainers": "",
                  "extraEnv": "",
                  "extraNetworkPolicies": "- namespaceSelector: {}\n",
                  "extraVolumeMounts": "",
                  "extraVolumes": "",
                  "github_oauth_origin": "https://github.oauth.johnsnowlabs.com",
                  "google_analytics": {
                    "api_secret": "WENfd00yeUxRRWl4N0Utbml5SWt3Zw==",
                    "measurement_id": "Ry1XODBIMDhTTFBZ"
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "docker.io/johnsnowlabs/annotationlab",
                    "tag": "5.7.0"
                  },
                  "ingress": {
                    "annotations": {},
                    "defaultBackend": false,
                    "enabled": true,
                    "hosts": [
                      {
                        "host": "annotationlab",
                        "path": "/"
                      }
                    ],
                    "ingressroute": {
                      "enabled": false
                    },
                    "servicePort": "http",
                    "tls": [],
                    "uploadLimitInMegabytes": 16
                  },
                  "installAirflow": true,
                  "installKeycloak": true,
                  "installPostgresql": true,
                  "keycloak": {
                    "affinity": "podAntiAffinity:\n  requiredDuringSchedulingIgnoredDuringExecution:\n    - labelSelector:\n        matchLabels:\n          {{- include \"keycloak.selectorLabels\" . | nindent 10 }}\n        matchExpressions:\n          - key: app.kubernetes.io/component\n            operator: NotIn\n            values:\n              - test\n      topologyKey: kubernetes.io/hostname\n  preferredDuringSchedulingIgnoredDuringExecution:\n    - weight: 100\n      podAffinityTerm:\n        labelSelector:\n          matchLabels:\n            {{- include \"keycloak.selectorLabels\" . | nindent 12 }}\n          matchExpressions:\n            - key: app.kubernetes.io/component\n              operator: NotIn\n              values:\n                - test\n        topologyKey: topology.kubernetes.io/zone\n",
                    "args": [],
                    "auththeme": {
                      "image": {
                        "repository": "docker.io/johnsnowlabs/annotationlab",
                        "tag": "auth-theme-5.7.0"
                      }
                    },
                    "autoscaling": {
                      "behavior": {
                        "scaleDown": {
                          "policies": [
                            {
                              "periodSeconds": 300,
                              "type": "Pods",
                              "value": 1
                            }
                          ],
                          "stabilizationWindowSeconds": 300
                        }
                      },
                      "enabled": false,
                      "labels": {},
                      "maxReplicas": 10,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 80,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 3
                    },
                    "cache": {
                      "stack": "default"
                    },
                    "clusterDomain": "cluster.local",
                    "command": [
                      "/opt/keycloak/bin/kc.sh",
                      "--verbose",
                      "start",
                      "--http-enabled=true",
                      "--http-port=8080",
                      "--hostname-strict=false",
                      "--hostname-strict-https=false",
                      "--spi-events-listener-jboss-logging-success-level=info",
                      "--spi-events-listener-jboss-logging-error-level=warn"
                    ],
                    "database": {
                      "enabled": true,
                      "postgresqlDatabase": "keycloak",
                      "postgresqlPassword": "keycloak",
                      "postgresqlUsername": "keycloak"
                    },
                    "dbchecker": {
                      "enabled": false,
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/busybox",
                        "tag": 1.32
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "32Mi"
                        },
                        "requests": {
                          "cpu": "20m",
                          "memory": "32Mi"
                        }
                      },
                      "securityContext": {}
                    },
                    "enableServiceLinks": true,
                    "extraContainers": "",
                    "extraEnv": "- name: KC_FEATURES\n  value: \"authorization,account-api,admin-api,admin-fine-grained-authz,ciba,impersonation,kerberos,preview,step-up-authentication,token-exchange,web-authn\"\n- name: KEYCLOAK_ADMIN\n  valueFrom:\n    secretKeyRef:\n      name: {{ include \"keycloak.fullname\" . }}-admincreds\n      key: user\n- name: KEYCLOAK_ADMIN_PASSWORD\n  valueFrom:\n    secretKeyRef:\n      name: {{ include \"keycloak.fullname\" . }}-admincreds\n      key: password\n- name: JAVA_OPTS_APPEND\n  value: \u003e-\n    -XX:+UseContainerSupport\n    -XX:MaxRAMPercentage=50.0\n    -Djava.awt.headless=true\n    -Djgroups.dns.query={{ include \"keycloak.fullname\" . }}-headless\n",
                    "extraEnvFrom": "",
                    "extraInitContainers": "- name: theme-provider\n  image: {{ .Values.auththeme.image.repository }}:{{ .Values.auththeme.image.tag }}\n  imagePullPolicy: IfNotPresent\n  command:\n    - sh\n  args:\n    - -c\n    - |\n      echo \"Copying theme...\"\n      cp -R /johnsnowlabs/* /theme\n  volumeMounts:\n    - name: theme\n      mountPath: /theme\n",
                    "extraPorts": [],
                    "extraServiceMonitor": {
                      "annotations": {},
                      "enabled": false,
                      "interval": "10s",
                      "labels": {},
                      "namespace": "",
                      "namespaceSelector": {},
                      "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/realms/master/metrics",
                      "port": "http",
                      "scrapeTimeout": "10s"
                    },
                    "extraVolumeMounts": "- name: admincreds\n  mountPath: /secrets/admincreds\n  readOnly: true\n- name: theme\n  mountPath: /opt/keycloak/themes/johnsnowlabs\n",
                    "extraVolumes": "- name: admincreds\n  secret:\n    secretName: '{{ include \"annotationlab.keycloak.fullname\" . }}-admincreds'\n- name: theme\n  emptyDir: {}\n",
                    "fullnameOverride": "",
                    "global": {},
                    "health": {
                      "enabled": true
                    },
                    "hostAliases": [],
                    "http": {
                      "relativePath": "/auth"
                    },
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "repository": "docker.io/keycloak/keycloak",
                      "tag": "20.0.3"
                    },
                    "imagePullSecrets": [
                      {
                        "name": "kubernetesdockerhub"
                      }
                    ],
                    "ingress": {
                      "annotations": {
                        "nginx.ingress.kubernetes.io/proxy-buffer-size": "16k"
                      },
                      "console": {
                        "annotations": {},
                        "enabled": false,
                        "ingressClassName": "",
                        "rules": [
                          {
                            "host": "{{ .Release.Name }}.keycloak.example.com",
                            "paths": [
                              {
                                "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/admin",
                                "pathType": "Prefix"
                              }
                            ]
                          }
                        ],
                        "tls": []
                      },
                      "enabled": false,
                      "ingressClassName": "",
                      "labels": {},
                      "rules": [
                        {
                          "host": "keycloak.example.com",
                          "paths": [
                            {
                              "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/",
                              "pathType": "Prefix"
                            }
                          ]
                        }
                      ],
                      "servicePort": "http",
                      "tls": []
                    },
                    "lifecycleHooks": "",
                    "livenessProbe": "httpGet:\n  path: '{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/health/live'\n  port: http\ninitialDelaySeconds: 0\ntimeoutSeconds: 5\n",
                    "metrics": {
                      "enabled": true
                    },
                    "nameOverride": "",
                    "networkPolicy": {
                      "egress": [],
                      "enabled": false,
                      "extraFrom": [],
                      "labels": {}
                    },
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {},
                    "postgresql": {
                      "common": {
                        "exampleValue": "common-chart",
                        "global": {
                          "postgresql": {}
                        }
                      },
                      "commonAnnotations": {},
                      "enabled": true,
                      "extraEnv": [],
                      "global": {
                        "postgresql": {}
                      },
                      "image": {
                        "debug": false,
                        "pullPolicy": "IfNotPresent",
                        "registry": "docker.io",
                        "repository": "bitnami/postgresql",
                        "tag": "11.20.0-debian-11-r12"
                      },
                      "ldap": {
                        "baseDN": "",
                        "bindDN": "",
                        "bind_password": null,
                        "enabled": false,
                        "port": "",
                        "prefix": "",
                        "scheme": "",
                        "search_attr": "",
                        "search_filter": "",
                        "server": "",
                        "suffix": "",
                        "tls": false,
                        "url": ""
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 30,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "master": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": [],
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "metrics": {
                        "enabled": false,
                        "extraEnvVars": {},
                        "image": {
                          "pullPolicy": "IfNotPresent",
                          "registry": "docker.io",
                          "repository": "bitnami/postgres-exporter",
                          "tag": "0.8.0-debian-10-r166"
                        },
                        "livenessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "prometheusRule": {
                          "additionalLabels": {},
                          "enabled": false,
                          "namespace": "",
                          "rules": []
                        },
                        "readinessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "securityContext": {},
                        "service": {
                          "annotations": {
                            "prometheus.io/port": "9187",
                            "prometheus.io/scrape": "true"
                          },
                          "loadBalancerIP": null,
                          "type": "ClusterIP"
                        },
                        "serviceMonitor": {
                          "additionalLabels": {},
                          "enabled": false
                        }
                      },
                      "nameOverride": "keycloak-postgres",
                      "networkPolicy": {
                        "allowExternal": true,
                        "enabled": false,
                        "explicitNamespacesSelector": {}
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "enabled": true,
                        "mountPath": "/bitnami/postgresql",
                        "size": "8Gi",
                        "subPath": ""
                      },
                      "postgresqlDataDir": "/bitnami/postgresql/data",
                      "postgresqlDatabase": "keycloak",
                      "postgresqlPassword": "keycloak",
                      "postgresqlUsername": "keycloak",
                      "psp": {
                        "create": false
                      },
                      "rbac": {
                        "create": false
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "replication": {
                        "applicationName": "my_application",
                        "enabled": false,
                        "numSynchronousReplicas": 0,
                        "password": "repl_password",
                        "slaveReplicas": 1,
                        "synchronousCommit": "off",
                        "user": "repl_user"
                      },
                      "resources": {
                        "requests": {
                          "cpu": "250m",
                          "memory": "256Mi"
                        }
                      },
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "port": 5432,
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "enabled": true,
                        "name": "annotationlab-keycloak-postgresql"
                      },
                      "shmVolume": {
                        "chmod": {
                          "enabled": true
                        },
                        "enabled": true
                      },
                      "slave": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": "# - name: do-something\n#   image: busybox\n#   command: ['do', 'something']\n",
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "tls": {
                        "certCAFilename": null,
                        "certFilename": "",
                        "certKeyFilename": "",
                        "certificatesSecret": "",
                        "crlFilename": null,
                        "enabled": false,
                        "preferServerCiphers": true
                      },
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      },
                      "volumePermissions": {
                        "enabled": false,
                        "image": {
                          "pullPolicy": "Always",
                          "registry": "docker.io",
                          "repository": "bitnami/minideb",
                          "tag": "buster"
                        },
                        "securityContext": {}
                      }
                    },
                    "priorityClassName": "",
                    "prometheusRule": {
                      "annotations": {},
                      "enabled": false,
                      "labels": {},
                      "namespace": "",
                      "rules": []
                    },
                    "proxy": {
                      "enabled": true,
                      "mode": "edge"
                    },
                    "rbac": {
                      "create": false,
                      "rules": []
                    },
                    "readinessProbe": "httpGet:\n  path: '{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/health/ready'\n  port: http\ninitialDelaySeconds: 10\ntimeoutSeconds: 1\n",
                    "replicas": 1,
                    "resources": {},
                    "restartPolicy": "Always",
                    "route": {
                      "annotations": {},
                      "enabled": false,
                      "host": "",
                      "labels": {},
                      "path": "/",
                      "tls": {
                        "enabled": true,
                        "insecureEdgeTerminationPolicy": "Redirect",
                        "termination": "edge"
                      }
                    },
                    "secrets": {
                      "admincreds": {
                        "stringData": {
                          "password": "secret",
                          "user": "admin"
                        }
                      }
                    },
                    "securityContext": {},
                    "service": {
                      "annotations": {},
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "httpNodePort": null,
                      "httpPort": 80,
                      "httpsNodePort": null,
                      "httpsPort": 8443,
                      "labels": {},
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "sessionAffinity": "",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "allowReadPods": false,
                      "annotations": {},
                      "automountServiceAccountToken": true,
                      "create": false,
                      "imagePullSecrets": [],
                      "labels": {},
                      "name": "annotationlab-keyclo"
                    },
                    "serviceHeadless": {
                      "annotations": {}
                    },
                    "serviceMonitor": {
                      "annotations": {},
                      "enabled": false,
                      "interval": "10s",
                      "labels": {},
                      "namespace": "",
                      "namespaceSelector": {},
                      "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/metrics",
                      "port": "http",
                      "scrapeTimeout": "10s"
                    },
                    "skipInitContainers": false,
                    "startupProbe": "httpGet:\n  path: '{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/health'\n  port: http\ninitialDelaySeconds: 15\ntimeoutSeconds: 1\nfailureThreshold: 60\nperiodSeconds: 5\n",
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {},
                    "terminationGracePeriodSeconds": 60,
                    "test": {
                      "deletionPolicy": "before-hook-creation",
                      "enabled": false,
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/seleniarm/standalone-chromium",
                        "tag": "111.0"
                      },
                      "podSecurityContext": {},
                      "securityContext": {}
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": null,
                    "updateStrategy": "RollingUpdate"
                  },
                  "licenseserver": {
                    "origin": "https://license.johnsnowlabs.com"
                  },
                  "lifecycleHooks": "# postStart:\n#   exec:\n#     command: [\"/bin/sh\", \"-c\", \"ls\"]\n",
                  "modelshub_origin": "https://modelshub.johnsnowlabs.com",
                  "myjohnsnowlabs": {
                    "client_id": "UIGgoiIL9szXW8Nnik0O7tPT4to87oVtWvYWfc6r",
                    "origin": "https://my.johnsnowlabs.com"
                  },
                  "networkPolicy": {
                    "enabled": false
                  },
                  "nodeSelector": {},
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "annotations": {},
                    "enabled": true,
                    "size": "8Gi"
                  },
                  "podAnnotations": {},
                  "podLabels": {},
                  "postgresql": {
                    "common": {
                      "exampleValue": "common-chart",
                      "global": {
                        "postgresql": {}
                      }
                    },
                    "commonAnnotations": {},
                    "extraEnv": [],
                    "global": {
                      "postgresql": {}
                    },
                    "image": {
                      "debug": false,
                      "pullPolicy": "IfNotPresent",
                      "registry": "docker.io",
                      "repository": "bitnami/postgresql",
                      "tag": "11.20.0-debian-11-r12"
                    },
                    "ldap": {
                      "baseDN": "",
                      "bindDN": "",
                      "bind_password": null,
                      "enabled": false,
                      "port": "",
                      "prefix": "",
                      "scheme": "",
                      "search_attr": "",
                      "search_filter": "",
                      "server": "",
                      "suffix": "",
                      "tls": false,
                      "url": ""
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "master": {
                      "affinity": {},
                      "annotations": {},
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podLabels": {},
                      "priorityClassName": "",
                      "service": {},
                      "sidecars": [],
                      "tolerations": []
                    },
                    "metrics": {
                      "enabled": false,
                      "extraEnvVars": {},
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "registry": "docker.io",
                        "repository": "bitnami/postgres-exporter",
                        "tag": "0.8.0-debian-10-r166"
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "prometheusRule": {
                        "additionalLabels": {},
                        "enabled": false,
                        "namespace": "",
                        "rules": []
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "securityContext": {},
                      "service": {
                        "annotations": {
                          "prometheus.io/port": "9187",
                          "prometheus.io/scrape": "true"
                        },
                        "loadBalancerIP": null,
                        "type": "ClusterIP"
                      },
                      "serviceMonitor": {
                        "additionalLabels": {},
                        "enabled": false
                      }
                    },
                    "networkPolicy": {
                      "allowExternal": true,
                      "enabled": false,
                      "explicitNamespacesSelector": {}
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "enabled": true,
                      "mountPath": "/bitnami/postgresql",
                      "size": "8Gi",
                      "subPath": ""
                    },
                    "postgresqlDataDir": "/bitnami/postgresql/data",
                    "postgresqlDatabase": "annotationlab",
                    "postgresqlPassword": "annotationlab",
                    "postgresqlUsername": "annotationlab",
                    "psp": {
                      "create": false
                    },
                    "rbac": {
                      "create": false
                    },
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "replication": {
                      "applicationName": "my_application",
                      "enabled": false,
                      "numSynchronousReplicas": 0,
                      "password": "repl_password",
                      "slaveReplicas": 1,
                      "synchronousCommit": "off",
                      "user": "repl_user"
                    },
                    "resources": {
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "securityContext": {},
                    "service": {
                      "annotations": {},
                      "port": 5432,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "enabled": false
                    },
                    "shmVolume": {
                      "chmod": {
                        "enabled": true
                      },
                      "enabled": true
                    },
                    "slave": {
                      "affinity": {},
                      "annotations": {},
                      "extraInitContainers": "# - name: do-something\n#   image: busybox\n#   command: ['do', 'something']\n",
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podLabels": {},
                      "priorityClassName": "",
                      "service": {},
                      "sidecars": [],
                      "tolerations": []
                    },
                    "tls": {
                      "certCAFilename": null,
                      "certFilename": "",
                      "certKeyFilename": "",
                      "certificatesSecret": "",
                      "crlFilename": null,
                      "enabled": false,
                      "preferServerCiphers": true
                    },
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "volumePermissions": {
                      "enabled": false,
                      "image": {
                        "pullPolicy": "Always",
                        "registry": "docker.io",
                        "repository": "bitnami/minideb",
                        "tag": "buster"
                      },
                      "securityContext": {}
                    }
                  },
                  "preannotator_queues": {
                    "count": 5,
                    "service": {
                      "port": 5000,
                      "portName": "http",
                      "type": "ClusterIP"
                    }
                  },
                  "priorityClassName": "",
                  "readinessProbe": "httpGet:\n  path: /healthz\n  port: http\ninitialDelaySeconds: 10\ntimeoutSeconds: 1\n",
                  "registryCredentials": {
                    "create": false,
                    "password": "XXXXX",
                    "secretName": "kubernetesdockerhub",
                    "username": "XXXXX"
                  },
                  "replicas": 1,
                  "resources": {},
                  "restartPolicy": "Always",
                  "securityContext": {
                    "enabled": false,
                    "fsGroup": 65534,
                    "fsGroupChangePolicy": "OnRootMismatch",
                    "runAsUser": 65534
                  },
                  "service": {
                    "port": 8200,
                    "portName": "http",
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": false,
                    "name": "annotationlab"
                  },
                  "sharedData": {
                    "enabled": true,
                    "images": {
                      "storageSize": "5Gi"
                    },
                    "storageSize": "100Gi"
                  },
                  "sqlalchemy_pool_size": 10,
                  "telemetry": {
                    "enabled": true
                  },
                  "terminationGracePeriodSeconds": 60,
                  "tolerations": [],
                  "updateStrategy": {
                    "type": "Recreate"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: registry.johnsnowlabs.com/annotationlab/annotationlab-operator:v5.7.0
          createdAt: "2023-12-19T10:26:54Z"
          marketplace.openshift.io/remote-workflow: https://marketplace.redhat.com/en-us/operators/annotationlab/pricing?utm_source=openshift_console
          marketplace.openshift.io/support-workflow: https://marketplace.redhat.com/en-us/operators/annotationlab/support?utm_source=openshift_console
          operatorframework.io/suggested-namespace: johnsnowlabs-operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: NLP Lab
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Annotationlab
            name: annotationlabs.apps.johnsnowlabs.com
            version: v1
        description: "NLP Lab is a data labeling and annotation tool that helps you\nlabel
          different types of data using a simple interface with a standardized output\nformat.\n\nIt
          contains enterprise features like Project Management and sharing, SSO\nintegration,
          OpenAPI Specification 3.0 compliant API, task management, and active\nlearning/preannotation
          using Spark NLP.\n\nFurthermore, the production deployment of the application
          is done using a helm chart.\nThe same helm chart is also used to create
          an AWS AMI for an EC2 based single server \ndeployment using packer.\n\nMake
          sure you have defined shared storage such as efs/nfs/cephfs prior to installing
          the NLP Lab Operator.\nUpdate the host property in the YAML configuration
          to define the required domain name to use instead of the \ndefault hostname
          annotationlab.\n\nNLP Lab Operator Installtion guide [NLP Lab Operator][]:\n[NLP
          Lab Operator]: https://nlp.johnsnowlabs.com/docs/en/alab/install    \n"
        displayName: NLPLab
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nlplab
        links:
        - name: Annotationlab
          url: https://annotationlab.domain
        maintainers:
        - email: bhandari@johnsnowlabs.com
          name: bikash
        maturity: alpha
        provider:
          name: JohnSnowLABS
          url: nlp.johnsnowlabs.com
        relatedImages:
        - registry.johnsnowlabs.com/annotationlab/annotationlab-operator:v5.7.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/annotationlab@sha256:b69fde0eb341114893aba097d58455c9e316a97cb829b41c0d080987490a83d3
        version: 5.7.0
      entries:
      - name: annotationlab.v5.7.0
        version: 5.7.0
      - name: annotationlab.v5.4.1
        version: 5.4.1
      - name: annotationlab.v4.9.2
        version: 4.9.2
      name: alpha
    defaultChannel: alpha
    packageName: annotationlab
    provider:
      name: JohnSnowLABS
      url: nlp.johnsnowlabs.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-zero-trust-workload-identity-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: zero-trust-workload-identity-manager.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpiffeCSIDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "agentSocketPath": "/run/spire/agent-sockets",
                  "pluginName": "csi.spiffe.io"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpireAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "logFormat": "text",
                  "logLevel": "info",
                  "nodeAttestor": {
                    "k8sPSATEnabled": "true"
                  },
                  "workloadAttestors": {
                    "k8sEnabled": "true",
                    "workloadAttestorsVerification": {
                      "type": "auto"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpireOIDCDiscoveryProvider",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "csiDriverName": "csi.spiffe.io",
                  "jwtIssuer": "https://oidc-discovery.example.com",
                  "logFormat": "text",
                  "logLevel": "info",
                  "managedRoute": "true",
                  "replicaCount": 1
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpireServer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "caKeyType": "rsa-2048",
                  "caSubject": {
                    "commonName": "SPIRE Server CA",
                    "country": "US",
                    "organization": "Example Corp"
                  },
                  "caValidity": "24h",
                  "datastore": {
                    "connectionString": "/run/spire/data/datastore.sqlite3",
                    "databaseType": "sqlite3",
                    "maxIdleConns": 2,
                    "maxOpenConns": 100
                  },
                  "defaultJWTValidity": "5m",
                  "defaultX509Validity": "1h",
                  "federation": {
                    "bundleEndpoint": {
                      "profile": "https_spiffe",
                      "refreshHint": 300
                    },
                    "federatesWith": [
                      {
                        "bundleEndpointProfile": "https_spiffe",
                        "bundleEndpointUrl": "https://federation.partner.example.com:8443",
                        "endpointSpiffeId": "spiffe://partner.example.com/federation/endpoint",
                        "trustDomain": "partner.example.com"
                      }
                    ],
                    "managedRoute": "true"
                  },
                  "jwtIssuer": "https://oidc-discovery.example.com",
                  "logFormat": "text",
                  "logLevel": "info",
                  "persistence": {
                    "accessMode": "ReadWriteOnce",
                    "size": "2Gi",
                    "storageClass": ""
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ZeroTrustWorkloadIdentityManager",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "bundleConfigMap": "spire-bundle",
                  "clusterName": "prod-cluster",
                  "trustDomain": "example.com"
                }
              },
              {
                "apiVersion": "spire.spiffe.io/v1alpha1",
                "kind": "ClusterFederatedTrustDomain",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "example.com"
                },
                "spec": {
                  "bundleEndpointProfile": "https_web",
                  "trustDomain": "example.com"
                }
              },
              {
                "apiVersion": "spire.spiffe.io/v1alpha1",
                "kind": "ClusterSPIFFEID",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "example-workload",
                  "namespace": "default"
                },
                "spec": {
                  "dnsNameTemplates": [
                    "*.example.com"
                  ],
                  "ttl": 3600,
                  "workloadSelector": {
                    "k8sServiceAccount": {
                      "name": "example-sa",
                      "namespace": "example-ns"
                    }
                  }
                }
              },
              {
                "apiVersion": "spire.spiffe.io/v1alpha1",
                "kind": "ClusterStaticEntry",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "example-static-entry",
                  "namespace": "default"
                },
                "spec": {
                  "parentID": "spiffe://example.com/spire/server",
                  "selectors": [
                    {
                      "type": "unix",
                      "value": "uid:1000"
                    }
                  ],
                  "spiffeID": "spiffe://example.com/example-workload",
                  "ttl": 3600
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-rhel9@sha256:9d88df06140dfdfd18f9467fb7ecfdb5508a8f559301b6173c9b6490cc22cc37
          createdAt: 2025-12-17T07:13:42
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: zero-trust-workload-identity-manager
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/zero-trust-workload-identity-manager
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterFederatedTrustDomain
            name: clusterfederatedtrustdomains.spire.spiffe.io
            version: v1alpha1
          - kind: ClusterSPIFFEID
            name: clusterspiffeids.spire.spiffe.io
            version: v1alpha1
          - kind: ClusterStaticEntry
            name: clusterstaticentries.spire.spiffe.io
            version: v1alpha1
          - kind: SpiffeCSIDriver
            name: spiffecsidrivers.operator.openshift.io
            version: v1alpha1
          - kind: SpireAgent
            name: spireagents.operator.openshift.io
            version: v1alpha1
          - kind: SpireOIDCDiscoveryProvider
            name: spireoidcdiscoveryproviders.operator.openshift.io
            version: v1alpha1
          - kind: SpireServer
            name: spireservers.operator.openshift.io
            version: v1alpha1
          - kind: ZeroTrustWorkloadIdentityManager
            name: zerotrustworkloadidentitymanagers.operator.openshift.io
            version: v1alpha1
        description: The Zero Trust Workload Identity Manager is an Openshift Day-2
          Operator designed to automate the setup and management of SPIFFE/SPIRE components
          (like spire-server, spire-agent, spiffe-csi-driver, and oidc-discovery-provider)
          within OpenShift clusters. It enables zero-trust security by dynamically
          issuing and rotating workload identities, enforcing strict identity-based
          authentication across workloads. This manager abstracts complex SPIRE configurations,
          streamlining workload onboarding with secure identities and improving the
          cluster's overall security posture.
        displayName: Zero Trust Workload Identity Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - zero-trust-workload-identity-manager
        - ztwim
        - spire
        - spiffe-spire
        - security
        links:
        - name: Documentation
          url: https://github.com/openshift/zero-trust-workload-identity-manager/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-controller-manager-rhel9@sha256:7ddf330a798dbb112c2f58d2548941100a964db705617680d09969eaa3e07727
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-oidc-discovery-provider-rhel9@sha256:70f04312f96851a37ec9bfcc605d6a7edb4c87b548621007183b7caa2333816a
        - registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-rhel9@sha256:9d88df06140dfdfd18f9467fb7ecfdb5508a8f559301b6173c9b6490cc22cc37
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-csi-driver-rhel9@sha256:5359e8709d1b73386eddef202d59b7c511aa5366ca04f5ee707bbf760977e55d
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:1c480fa5089a32cf804fc84df7219ca64066cbac2eeb962c4385754132c3873b
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-agent-rhel9@sha256:54865d9de74a500528dcef5c24dfe15c0baee8df662e76459e83bf9921dfce4e
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-server-rhel9@sha256:6a14fb03c3b7256a405cff52ae0e5c7e66b1fa1a8e3a955d6670123f5534d4e4
        - registry.access.redhat.com/ubi9@sha256:dec374e05cc13ebbc0975c9f521f3db6942d27f8ccdf06b180160490eef8bdbc
        - registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-operator-bundle@sha256:3776c07bfffdf464660750d69bf3725aa74dfc1f207ee8d1f408a8dc6c11eabb
        version: 1.0.0
      entries:
      - name: zero-trust-workload-identity-manager.v1.0.0
        version: 1.0.0
      name: stable-v1
    defaultChannel: stable-v1
    packageName: openshift-zero-trust-workload-identity-manager
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Altair Engineering Inc.
      provider-url: ""
    name: anzograph-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: anzograph-operator.v3.2.500
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "anzograph.clusters.cambridgesemantics.com/v2",
                "kind": "AnzoGraph",
                "metadata": {
                  "name": "azg01"
                },
                "spec": {
                  "db": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app_data": "anzograph-data-grpc",
                            "app_mgmt": "anzograph-mgmt-grpc"
                          }
                        },
                        "serviceName": "anzograph-azg01",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app_data": "anzograph-data-grpc",
                              "app_mgmt": "anzograph-mgmt-grpc"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzograph-db@sha256:30ed2ec337135701ab8b54e75bb48ad8928a2c48818643c23b9dba4484255a2e",
                                "name": "db",
                                "resources": {
                                  "limits": {
                                    "cpu": "8000m",
                                    "memory": "8Gi"
                                  },
                                  "requests": {
                                    "cpu": "8000m",
                                    "memory": "8Gi"
                                  }
                                }
                              }
                            ],
                            "securityContext": {
                              "fsGroup": 1000,
                              "runAsNonRoot": true,
                              "runAsUser": 1000,
                              "seccompProfile": {
                                "type": "RuntimeDefault"
                              }
                            },
                            "serviceAccountName": "anzograph-operator"
                          }
                        }
                      }
                    }
                  },
                  "deployFrontend": false,
                  "frontend": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app_mgmt": "anzograph-frontend"
                          }
                        },
                        "serviceName": "anzograph-azg01",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app_mgmt": "anzograph-frontend"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzograph-frontend@sha256:e5446b3c04889f2189e955702c4165eb243eb89f47ac797eb417b60b1459647f",
                                "name": "frontend",
                                "resources": {
                                  "limits": {
                                    "cpu": "2000m",
                                    "memory": "4Gi"
                                  },
                                  "requests": {
                                    "cpu": "2000m",
                                    "memory": "4Gi"
                                  }
                                }
                              }
                            ],
                            "securityContext": {
                              "fsGroup": 1000,
                              "runAsNonRoot": true,
                              "runAsUser": 1000,
                              "seccompProfile": {
                                "type": "RuntimeDefault"
                              }
                            },
                            "serviceAccountName": "anzograph-operator"
                          }
                        }
                      }
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Basic Install
          categories: Database, Big Data
          certified: "true"
          containerImage: registry.connect.redhat.com/cambridgesemantics/anzograph-operator@sha256:2333154a14ab7f3a03a601f00c017feeafb9d9814aff5e59c95cef615ab2abd6
          createdAt: "2025-09-22T12:03:18Z"
          description: kubernetes operator for Altair Graph Lakehouse DB
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: unknown
          repository: ""
          support: Altair Engineering Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnzoGraph is the Schema for the anzographs API
            displayName: Altair Graph Lakehouse Operator
            kind: AnzoGraph
            name: anzographs.anzograph.clusters.cambridgesemantics.com
            version: v2
        description: |-
          The Altair Graph Lakehouse Operator provides the way to install and configure an Altair Graph Lakehouse
          cluster on Red Hat K8S environment.

          ### Installation
           Refer [installation instructions]( https://github.com/cambridgesemantics/csi-k8s-operator-anzograph/blob/v3.2.5/README_openshift_marketplace.md )

          ### Documentation

          You can find our documentation [here.]( https://docs.cambridgesemantics.com/anzograph/userdoc/ )

          ### Support

          We offer Support to our customers with the Altair Graph Lakehouse db Enterprise Edition License [here]( https://altair.com/customer-support ) or by emailing the Data Analytics Support team at dasupport@altair.com.
        displayName: Altair Graph Lakehouse Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Big Data
        - Database
        links:
        - name: Anzograph Operator
          url: https://github.com/cambridgesemantics/csi-k8s-operator-anzograph/blob/v3.2.5/README_openshift_marketplace.md
        maintainers:
        - email: fschwichtenberg@altair.com
          name: Frank Schwichtenberg
        maturity: stable
        provider:
          name: Altair Engineering Inc.
        relatedImages:
        - registry.connect.redhat.com/cambridgesemantics/anzograph-frontend@sha256:e5446b3c04889f2189e955702c4165eb243eb89f47ac797eb417b60b1459647f
        - registry.connect.redhat.com/cambridgesemantics/anzograph-operator-bundle@sha256:a7b60f1c65a6fb4ee0109c7b2b0bd12fb9487e2f6edb059bd18cfd2337ea9116
        - registry.connect.redhat.com/cambridgesemantics/anzograph-operator@sha256:2333154a14ab7f3a03a601f00c017feeafb9d9814aff5e59c95cef615ab2abd6
        - registry.connect.redhat.com/cambridgesemantics/anzograph-db@sha256:30ed2ec337135701ab8b54e75bb48ad8928a2c48818643c23b9dba4484255a2e
        version: 3.2.500
      entries:
      - name: anzograph-operator.v3.2.500
        version: 3.2.500
      - name: anzograph-operator.v3.2.300
        version: 3.2.300
      - name: anzograph-operator.v3.2.200
        version: 3.2.200
      - name: anzograph-operator.v3.2.104
        version: 3.2.104
      name: stable
    defaultChannel: stable
    packageName: anzograph-operator
    provider:
      name: Altair Engineering Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Habana Labs Ltd.
      provider-url: https://habana.ai
    name: habana-ai-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: habana-ai-operator.v1.22.2-32-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "habanalabs.habana.ai/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "habana-ai"
                },
                "spec": {
                  "bmc_monitoring": {
                    "image": {
                      "repository": "vault.habana.ai/habana-bmc-exporter/bmc-exporter",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "250Mi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "device_plugin": {
                    "image": {
                      "repository": "vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "20m",
                        "memory": "64Mi"
                      },
                      "requests": {
                        "cpu": "10m",
                        "memory": "32Mi"
                      }
                    }
                  },
                  "driver": {
                    "driver_loader": {
                      "images": {
                        "rhel_9.4": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "rhel_9.6": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "tencentos_3.1": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_22.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_24.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer",
                          "tag": "1.22.2-32"
                        }
                      },
                      "mlnx_ofed_repo_path": "artifactory/gaudi-installer/deps",
                      "mlnx_ofed_version": "mlnx-ofed-5.8-2.0.3.0-rhel8.4-x86_64.tar.gz",
                      "repo_path": "artifactory/gaudi-installer/repos",
                      "repo_server": "vault.habana.ai",
                      "resources": {
                        "limits": {
                          "cpu": "4000m",
                          "memory": "16Gi"
                        },
                        "requests": {
                          "cpu": "2000m",
                          "memory": "8Gi"
                        }
                      }
                    },
                    "driver_runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "feature_discovery": {
                    "nfd_plugin": false,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "image_registry": "vault.habana.ai",
                  "metric_exporter": {
                    "interval": 20,
                    "port": 41611,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/gaudi-metric-exporter/metric-exporter",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "memory": "120Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "100Mi"
                        }
                      }
                    }
                  },
                  "runtime": {
                    "configuration": {
                      "container_engine": "crio"
                    },
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habana-container-runtime",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
          createdAt: "2025-11-29T20:54:26Z"
          description: Manages Intel Gaudi AI accelerators within a Kubernetes cluster
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.9.0 <1.22.2-32-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: habana-ai-operator
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: http://github.com/HabanaAI/habana-ai-operator
          support: Habana Labs Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy is the Schema for the clusterpolicies API.
            displayName: Cluster Policy
            kind: ClusterPolicy
            name: clusterpolicies.habanalabs.habana.ai
            version: v1
        description: |
          Kubernetes provides access to accelerators such as Intel Gaudi AI accelerators and other devices through the [Device Plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The Intel Gaudi uses the [operator framework](https://coreos.com/blog/introducing-operator-framework) within Kubernetes to automate the management of all Intel Gaudi software components needed to provision and monitor the Intel Gaudi AI accelerators. These components include:
          * The Intel Gaudi kernel modules to enable the hardware
          * The Kubernetes DevicePlugin to allow the Intel Gaudi AI accelerator allocation via the kubelet
          ### Documentation
          Visit the [Intel Gaudi developer site](https://developer.habana.ai/) for more information.
          To get started with using Intel Gaudi with OpenShift, see the instructions in the [Intel Gaudi Documentation](https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html).
        displayName: Intel Gaudi Base Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - habanalabs
        - hardware
        - driver
        links:
        - name: Intel Gaudi Documentation
          url: https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html
        maintainers:
        - email: erik.berlin@intel.com
          name: Erik Berlin
        - email: tal.david@intel.com
          name: Tal David
        - email: lukasz.wencel@intel.com
          name: Lukasz Wencel
        maturity: stable
        provider:
          name: Habana Labs Ltd.
          url: https://habana.ai
        relatedImages:
        - vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin@sha256:3d47bdff68c5d277bcc9fbacae0a2a9becd3566b5939eeff0899e37d256ba399
        - vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer@sha256:8e2c240d88f353dcbe583d8a2f080ac8c0d67b262bfa3259cfa977c89ac37926
        - vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer@sha256:b4e0e572f521c4d0ec936e08a57261de595fb60cd949c1f630010a6fdc3adc04
        - vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer@sha256:89c88d3881e678a8a7658abddea4548f43f7271d16d6fc23816b59ac7b54a045
        - vault.habana.ai/habana-ai-operator/habana-container-runtime@sha256:4a518f14a65a30fe0838e8e02246b32f04b90d34c473306e36ed5ca34462253e
        - registry.connect.redhat.com/ospid-627904f807c06bb948c71e73/habana-ai@sha256:5a939703888b51e15248203489a2c86874a31dbc4051fedee104cb2663ce8d45
        - vault.habana.ai/gaudi-metric-exporter/metric-exporter@sha256:535a9737602f35b0e1c706f60b2c10cd7bd3fc84f57f72f1b3eedd6c16035382
        - vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer@sha256:1d9a78720caba968c885884844217034e318e3379db840fd1490911a4baaec8c
        - vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery@sha256:837d781b678f0719e33a9d5b43ead4868b16ae8420d959666cbdfaaf74ff47f8
        - vault.habana.ai/habana-bmc-exporter/bmc-exporter@sha256:158af426fef28f8c14a77f71299314701345f786ff0c079066837bdc201b36e7
        - quay.io/brancz/kube-rbac-proxy@sha256:c2ef3c3fcb4ffcfab30088b19c8ef18931aac8cf072c75ef72c654457e1d632b
        - vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer@sha256:1a6e4c500cce53ec77bfc00cd78dbc30038a8b1c55bc59004e52de0254d9d0d1
        - vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
        version: 1.22.2-32-2
      entries:
      - name: habana-ai-operator.v1.22.2-32-2
        version: 1.22.2-32-2
      name: "1.22"
    - currentCSV: habana-ai-operator.v1.22.2-32-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "habanalabs.habana.ai/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "habana-ai"
                },
                "spec": {
                  "bmc_monitoring": {
                    "image": {
                      "repository": "vault.habana.ai/habana-bmc-exporter/bmc-exporter",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "250Mi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "device_plugin": {
                    "image": {
                      "repository": "vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "20m",
                        "memory": "64Mi"
                      },
                      "requests": {
                        "cpu": "10m",
                        "memory": "32Mi"
                      }
                    }
                  },
                  "driver": {
                    "driver_loader": {
                      "images": {
                        "rhel_9.4": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "rhel_9.6": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "tencentos_3.1": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_22.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_24.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer",
                          "tag": "1.22.2-32"
                        }
                      },
                      "mlnx_ofed_repo_path": "artifactory/gaudi-installer/deps",
                      "mlnx_ofed_version": "mlnx-ofed-5.8-2.0.3.0-rhel8.4-x86_64.tar.gz",
                      "repo_path": "artifactory/gaudi-installer/repos",
                      "repo_server": "vault.habana.ai",
                      "resources": {
                        "limits": {
                          "cpu": "4000m",
                          "memory": "16Gi"
                        },
                        "requests": {
                          "cpu": "2000m",
                          "memory": "8Gi"
                        }
                      }
                    },
                    "driver_runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "feature_discovery": {
                    "nfd_plugin": false,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "image_registry": "vault.habana.ai",
                  "metric_exporter": {
                    "interval": 20,
                    "port": 41611,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/gaudi-metric-exporter/metric-exporter",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "memory": "120Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "100Mi"
                        }
                      }
                    }
                  },
                  "runtime": {
                    "configuration": {
                      "container_engine": "crio"
                    },
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habana-container-runtime",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
          createdAt: "2025-11-29T20:54:26Z"
          description: Manages Intel Gaudi AI accelerators within a Kubernetes cluster
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.9.0 <1.22.2-32-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: habana-ai-operator
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: http://github.com/HabanaAI/habana-ai-operator
          support: Habana Labs Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy is the Schema for the clusterpolicies API.
            displayName: Cluster Policy
            kind: ClusterPolicy
            name: clusterpolicies.habanalabs.habana.ai
            version: v1
        description: |
          Kubernetes provides access to accelerators such as Intel Gaudi AI accelerators and other devices through the [Device Plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The Intel Gaudi uses the [operator framework](https://coreos.com/blog/introducing-operator-framework) within Kubernetes to automate the management of all Intel Gaudi software components needed to provision and monitor the Intel Gaudi AI accelerators. These components include:
          * The Intel Gaudi kernel modules to enable the hardware
          * The Kubernetes DevicePlugin to allow the Intel Gaudi AI accelerator allocation via the kubelet
          ### Documentation
          Visit the [Intel Gaudi developer site](https://developer.habana.ai/) for more information.
          To get started with using Intel Gaudi with OpenShift, see the instructions in the [Intel Gaudi Documentation](https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html).
        displayName: Intel Gaudi Base Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - habanalabs
        - hardware
        - driver
        links:
        - name: Intel Gaudi Documentation
          url: https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html
        maintainers:
        - email: erik.berlin@intel.com
          name: Erik Berlin
        - email: tal.david@intel.com
          name: Tal David
        - email: lukasz.wencel@intel.com
          name: Lukasz Wencel
        maturity: stable
        provider:
          name: Habana Labs Ltd.
          url: https://habana.ai
        relatedImages:
        - vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin@sha256:3d47bdff68c5d277bcc9fbacae0a2a9becd3566b5939eeff0899e37d256ba399
        - vault.habana.ai/gaudi-metric-exporter/metric-exporter@sha256:535a9737602f35b0e1c706f60b2c10cd7bd3fc84f57f72f1b3eedd6c16035382
        - vault.habana.ai/habana-ai-operator/habana-container-runtime@sha256:4a518f14a65a30fe0838e8e02246b32f04b90d34c473306e36ed5ca34462253e
        - quay.io/brancz/kube-rbac-proxy@sha256:c2ef3c3fcb4ffcfab30088b19c8ef18931aac8cf072c75ef72c654457e1d632b
        - vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
        - vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer@sha256:1a6e4c500cce53ec77bfc00cd78dbc30038a8b1c55bc59004e52de0254d9d0d1
        - vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer@sha256:b4e0e572f521c4d0ec936e08a57261de595fb60cd949c1f630010a6fdc3adc04
        - vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer@sha256:89c88d3881e678a8a7658abddea4548f43f7271d16d6fc23816b59ac7b54a045
        - vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery@sha256:837d781b678f0719e33a9d5b43ead4868b16ae8420d959666cbdfaaf74ff47f8
        - vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer@sha256:8e2c240d88f353dcbe583d8a2f080ac8c0d67b262bfa3259cfa977c89ac37926
        - vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer@sha256:1d9a78720caba968c885884844217034e318e3379db840fd1490911a4baaec8c
        - vault.habana.ai/habana-bmc-exporter/bmc-exporter@sha256:158af426fef28f8c14a77f71299314701345f786ff0c079066837bdc201b36e7
        - registry.connect.redhat.com/ospid-627904f807c06bb948c71e73/habana-ai@sha256:5a939703888b51e15248203489a2c86874a31dbc4051fedee104cb2663ce8d45
        version: 1.22.2-32-2
      entries:
      - name: habana-ai-operator.v1.22.2-32-2
        version: 1.22.2-32-2
      name: stable
    defaultChannel: stable
    packageName: habana-ai-operator
    provider:
      name: Habana Labs Ltd.
      url: https://habana.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ptp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ptp-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ptp.openshift.io/v1",
                "kind": "NodePtpDevice",
                "metadata": {
                  "name": "node.example.com"
                },
                "spec": {}
              },
              {
                "apiVersion": "ptp.openshift.io/v1",
                "kind": "PtpConfig",
                "metadata": {
                  "name": "example-ptpconfig"
                },
                "spec": {
                  "profile": [
                    {
                      "interface": "ens787f1",
                      "name": "profile1",
                      "phc2sysOpts": "-a -r",
                      "ptp4lOpts": "-s -2",
                      "ptpClockThreshold": {}
                    }
                  ],
                  "recommend": [
                    {
                      "match": [
                        {
                          "nodeLabel": "node-role.kubernetes.io/worker=",
                          "nodeName": "node.example.com"
                        }
                      ],
                      "priority": 4,
                      "profile": "profile1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "ptp.openshift.io/v1",
                "kind": "PtpOperatorConfig",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "daemonNodeSelector": {
                    "feature.node.kubernetes.io/ptp-capable": "yes",
                    "node-role.kubernetes.io/worker": ""
                  },
                  "ptpEventConfig": {}
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-ptp-rhel9-operator@sha256:60db6e526e38ecc4b5f6bfb7bb036776522052ff2e7b7815f83ca896eeaf07d3
          createdAt: "2024-06-12"
          description: This software enables configuration of Precision Time Protocol(PTP)
            on Kubernetes. It detects hardware capable PTP devices on each node, and
            configures linuxptp processes such as ptp4l, phc2sys and timemaster.
          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: "true"
          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.skipRange: '>=4.3.0-0 <4.20.0-202512090918'
          operatorframework.io/suggested-namespace: openshift-ptp
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.22.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: Red Hat
          repository: https://github.com/k8snetworkplumbingwg/ptp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodePtpDevice is the Schema for the nodeptpdevices API
            displayName: Node Ptp Device
            kind: NodePtpDevice
            name: nodeptpdevices.ptp.openshift.io
            version: v1
          - description: PtpConfig is the Schema for the ptpconfigs API
            displayName: Ptp Config
            kind: PtpConfig
            name: ptpconfigs.ptp.openshift.io
            version: v1
          - description: PtpOperatorConfig is the Schema for the ptpoperatorconfigs
              API
            displayName: Ptp Operator Config
            kind: PtpOperatorConfig
            name: ptpoperatorconfigs.ptp.openshift.io
            version: v1
        description: |
          # Precision Time Protocol (PTP) Operator for Openshift

          ## Introdution
          PTP Operator manages cluster wide PTP configuration.
          This operator has to run in namespace 'openshift-ptp'. An Operator Group is also required to install this operator:
          ```
          $ oc create -f - <<EOF
          apiVersion: v1
          kind: Namespace
          metadata:
            name: openshift-ptp
            labels:
              name: openshift-ptp
              openshift.io/cluster-monitoring: "true"
          EOF

          $ oc create -f - <<EOF
          apiVersion: operators.coreos.com/v1
          kind: OperatorGroup
          metadata:
            name: ptp-operators
            namespace: openshift-ptp
          spec:
            targetNamespaces:
            - openshift-ptp
          EOF
          ```
        displayName: PTP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ptp
        links:
        - name: Documentation operator
          url: https://github.com/k8snetworkplumbingwg/ptp-operator
        - name: Documentation operand
          url: https://github.com/k8snetworkplumbingwg/linuxptp-daemon
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-ptp-operator-bundle@sha256:8c575641252b62703f2c9a925805f6ba29ba2b21f31c3c4ef2752942fda4dc3e
        - registry.redhat.io/openshift4/ose-cloud-event-proxy-rhel9@sha256:d96187c19aff7b750075052828058c1b061a7b476c047598d78414c545b58562
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-ptp-rhel9-operator@sha256:60db6e526e38ecc4b5f6bfb7bb036776522052ff2e7b7815f83ca896eeaf07d3
        - registry.redhat.io/openshift4/ose-ptp-rhel9@sha256:bb0c3bd53144f85bea73066bed2770b0fd49a9c019f56a9f6d6f92e63c8afc81
        version: 4.20.0-202512090918
      entries:
      - name: ptp-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: ptp-operator.v4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: ptp-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: ptp-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: ptp-operator.v4.20.0-202511042325
        version: 4.20.0-202511042325
      - name: ptp-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: ptp-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: ptp-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: ptp-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ODH
      provider-url: ""
    name: opendatahub-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opendatahub-operator.v2.35.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "odh-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "opendatahub",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "opendatahub"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v2.35.0
          createdAt: "2025-10-01T13:12:27Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/opendatahub-io/opendatahub-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odh
        - notebooks
        - serving
        - training
        - pipelines
        - modelmesh
        - workbenches
        - dashboard
        - kserve
        - distributed workloads
        - trustyai
        - modelregistry
        - feast
        - featurestore
        - llamastack
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: opendatahub@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ODH
        relatedImages:
        - quay.io/community-operator-pipeline-prod/opendatahub-operator:2.35.0
        - quay.io/opendatahub/opendatahub-operator:v2.35.0
        version: 2.35.0
      entries:
      - name: opendatahub-operator.v2.35.0
        version: 2.35.0
      - name: opendatahub-operator.v2.34.0
        version: 2.34.0
      - name: opendatahub-operator.v2.33.0
        version: 2.33.0
      - name: opendatahub-operator.v2.32.0
        version: 2.32.0
      - name: opendatahub-operator.v2.31.0
        version: 2.31.0
      - name: opendatahub-operator.v2.30.0
        version: 2.30.0
      - name: opendatahub-operator.v2.29.0
        version: 2.29.0
      - name: opendatahub-operator.v2.28.0
        version: 2.28.0
      - name: opendatahub-operator.v2.27.0
        version: 2.27.0
      - name: opendatahub-operator.v2.26.0
        version: 2.26.0
      - name: opendatahub-operator.v2.25.0
        version: 2.25.0
      - name: opendatahub-operator.v2.24.0
        version: 2.24.0
      - name: opendatahub-operator.v2.23.0
        version: 2.23.0
      - name: opendatahub-operator.v2.22.0
        version: 2.22.0
      - name: opendatahub-operator.v2.21.0
        version: 2.21.0
      - name: opendatahub-operator.v2.20.0
        version: 2.20.0
      - name: opendatahub-operator.v2.19.0
        version: 2.19.0
      - name: opendatahub-operator.v2.18.2
        version: 2.18.2
      - name: opendatahub-operator.v2.18.1
        version: 2.18.1
      - name: opendatahub-operator.v2.18.0
        version: 2.18.0
      - name: opendatahub-operator.v2.17.0
        version: 2.17.0
      - name: opendatahub-operator.v2.16.0
        version: 2.16.0
      - name: opendatahub-operator.v2.15.0
        version: 2.15.0
      - name: opendatahub-operator.v2.14.0
        version: 2.14.0
      - name: opendatahub-operator.v2.13.0
        version: 2.13.0
      - name: opendatahub-operator.v2.12.1
        version: 2.12.1
      - name: opendatahub-operator.v2.12.0
        version: 2.12.0
      - name: opendatahub-operator.v2.11.1
        version: 2.11.1
      - name: opendatahub-operator.v2.11.0
        version: 2.11.0
      - name: opendatahub-operator.v2.10.0
        version: 2.10.0
      name: fast
    - currentCSV: opendatahub-operator.v3.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v2",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "datasciencecluster"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "aipipelines": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "rawDeploymentServiceConfig": "Headed"
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "mlflowoperator": {
                      "managementState": "Removed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "odh-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainer": {
                      "managementState": "Removed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v2",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "dscinitialization"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "opendatahub",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "opendatahub"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v3.2.0
          createdAt: "2025-12-19T00:40:32Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["featuretrackers.features.opendatahub.io",
            "dashboards.components.platform.opendatahub.io", "datasciencepipelines.components.platform.opendatahub.io",
            "kserves.components.platform.opendatahub.io", "kueues.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io",
            "llamastackoperators.components.platform.opendatahub.io", "trainers.components.platform.opendatahub.io",
            "mlflowoperators.components.platform.opendatahub.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/opendatahub-io/opendatahub-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v2
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v2
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: GatewayConfig is the Schema for the gatewayconfigs API
            displayName: Gateway Config
            kind: GatewayConfig
            name: gatewayconfigs.services.platform.opendatahub.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: MLflowOperator is the Schema for the MLflowOperators API
            displayName: MLflow Operator
            kind: MLflowOperator
            name: mlflowoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelsAsService
            name: modelsasservices.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - kind: Trainer
            name: trainers.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: "The Open Data Hub is a machine-learning-as-a-service platform
          built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open
          Data Hub integrates multiple AI/ML open source components into one operator
          that can easily be downloaded and installed by OpenShift users.\n\nOpen
          Data Hub operator allows users to install and manage components of the Open
          Data Hub. Users can mix and match tools from each project to fulfill the
          needs of their use case. Each of the projects share some components, but
          can be mostly seen as an extension of each other to provide a complete solution
          for both novice and skilled enterprise users.\n    \n### Components\n\n*
          Open Data Hub Dashboard - A web dashboard that displays installed Open Data
          Hub components with easy access to component UIs and documentation\n* ODH
          Notebook Controller - Secure management of Jupyter Notebook in Kubernetes
          environments built on top of Kubeflow Notebook Controller with support for
          OAuth\n* Jupyter Notebooks - JupyterLab notebook that provide Python support
          for GPU workloads\n* Data Science Pipelines - Pipeline solution for end
          to end MLOps workflows that support the Kubeflow Pipelines SDK and Argo
          Workflows\n* Model Mesh - ModelMesh Serving is the Controller for managing
          ModelMesh, a general-purpose model serving management/routing layer\n* Distributed
          Workloads(Incubation) - Stack built to make managing distributed compute
          infrastructure in the cloud easy and intuitive for Data Scientists. This
          stack consists of two components\n                                      KubeRay
          and Kueue.\n* Kserve - Kserve is the Controller for for serving machine
          learning (ML) models on arbitrary frameworks\n* Feast - Feature Store is
          the fastest path to manage existing infrastructure to productionize analytic
          data for model training and online inference.\n* Llama Stack – unified open‑source
          APIs for inference, RAG, agents, safety, evals & telemetry\n* MLflow - MLflow
          is an open-source platform, purpose-built to assist machine learning practitioners
          and teams in handling the complexities of the machine learning process.
          MLflow focuses on the full lifecycle for machine learning projects, ensuring
          that each phase is manageable, traceable, and reproducible."
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odh
        - notebooks
        - serving
        - training
        - pipelines
        - workbenches
        - dashboard
        - kserve
        - distributed workloads
        - trustyai
        - modelregistry
        - feast
        - featurestore
        - llamastack
        - mlflow
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: ai-core-platform@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ODH
        relatedImages:
        - quay.io/community-operator-pipeline-prod/opendatahub-operator:3.2.0
        - quay.io/opendatahub/odh-kube-auth-proxy:v3.2.0
        - quay.io/opendatahub/opendatahub-operator:v3.2.0
        version: 3.2.0
      entries:
      - name: opendatahub-operator.v3.2.0
        version: 3.2.0
      - name: opendatahub-operator.v3.1.0
        version: 3.1.0
      - name: opendatahub-operator.v3.0.0
        version: 3.0.0
      name: fast-3
    - currentCSV: opendatahub-operator.v2.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "opendatahub",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "opendatahub"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              },
              {
                "apiVersion": "features.opendatahub.io/v1",
                "kind": "FeatureTracker",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "default-feature",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-feature"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v2.8.0
          createdAt: "2024-2-20T00:00:00Z"
          operatorframework.io/initialization-resource: |-
            {
            "apiVersion": "dscinitialization.opendatahub.io/v1",
            "kind": "DSCInitialization",
            "metadata": {
            "labels": {
             "app.kubernetes.io/created-by": "opendatahub-operator",
             "app.kubernetes.io/instance": "default",
             "app.kubernetes.io/managed-by": "kustomize",
             "app.kubernetes.io/name": "dscinitialization",
             "app.kubernetes.io/part-of": "opendatahub-operator"
            },
            "name": "default-dsci"
            },
            "spec": {
            "applicationsNamespace": "opendatahub",
            "monitoring": {
             "managementState": "Managed",
             "namespace": "opendatahub"
            },
            "serviceMesh": {
             "controlPlane": {
               "metricsCollection": "Istio",
               "name": "data-science-smcp",
               "namespace": "istio-system"
             },
             "managementState": "Managed"
            },
            "trustedCABundle": {
             "customCABundle": "",
             "managementState": "Managed"
            }
            }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/opendatahub-io/opendatahub-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: "The Open Data Hub is a machine-learning-as-a-service platform
          built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open
          Data Hub integrates multiple AI/ML open source components into one operator
          that can easily be downloaded and installed by OpenShift users.\n\nOpen
          Data Hub operator allows users to install and manage components of the Open
          Data Hub. Users can mix and match tools from each project to fulfill the
          needs of their use case. Each of the projects share some components, but
          can be mostly seen as an extension of each other to provide a complete solution
          for both novice and skilled enterprise users.\n    \n### Components\n\n*
          Open Data Hub Dashboard - A web dashboard that displays installed Open Data
          Hub components with easy access to component UIs and documentation\n* ODH
          Notebook Controller - Secure management of Jupyter Notebook in Kubernetes
          environments built on top of Kubeflow Notebook Controller with support for
          OAuth\n* Jupyter Notebooks - JupyterLab notebook that provide Python support
          for GPU workloads\n* Data Science Pipelines - Pipeline solution for end
          to end MLOps workflows that support the Kubeflow Pipelines SDK and Tekton\n*
          Model Mesh - ModelMesh Serving is the Controller for managing ModelMesh,
          a general-purpose model serving management/routing layer\n* Distributed
          Workloads(Incubation) - Stack built to make managing distributed compute
          infrastructure in the cloud easy and intuitive for Data Scientists. This
          stack consists of three components \n                                      Codeflare
          , KubeRay and Kueue.\n* Kserve - Kserve is the Controller for for serving
          machine learning (ML) models on arbitrary frameworks"
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odh
        - notebooks
        - serving
        - training
        - pipelines
        - modelmesh
        - workbenches
        - dashboard
        - kserve
        - distributed-workloads
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: opendatahub@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: ODH
        relatedImages:
        - quay.io/community-operator-pipeline-prod/opendatahub-operator@sha256:d3e3d5ae02b834522481fa9046bf2ad3ea06d706c5cb06a32d32e61e229e4a6c
        - quay.io/opendatahub/opendatahub-operator:v2.8.0
        version: 2.8.1
      entries:
      - name: opendatahub-operator.v2.8.1
        version: 2.8.1
      name: odh-2.8.z
    - currentCSV: opendatahub-operator.v1.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kfdef.apps.kubeflow.org/v1",
                "kind": "KfDef",
                "metadata": {
                  "name": "opendatahub",
                  "namespace": "opendatahub"
                },
                "spec": {
                  "applications": [
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-common"
                        }
                      },
                      "name": "odh-common"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-dashboard"
                        }
                      },
                      "name": "odh-dashboard"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "data-science-pipelines-operator/"
                        }
                      },
                      "name": "data-science-pipelines-operator"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-notebook-controller"
                        }
                      },
                      "name": "odh-notebook-controller"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "notebook-images"
                        }
                      },
                      "name": "notebook-images"
                    },
                    {
                      "kustomizeConfig": {
                        "parameters": [
                          {
                            "name": "monitoring-namespace",
                            "value": "opendatahub"
                          }
                        ],
                        "repoRef": {
                          "name": "manifests",
                          "path": "model-mesh"
                        }
                      },
                      "name": "model-mesh"
                    }
                  ],
                  "repos": [
                    {
                      "name": "manifests",
                      "uri": "file:///opt/manifests/odh-manifests.tar.gz"
                    }
                  ]
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhApplication",
                "metadata": {
                  "name": "example-odhapplication",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started,Model development,Model training,Notebook environments,Package management,Data Management"
                  }
                },
                "spec": {
                  "displayName": "ODHAPPLICATION DISPLAY NAME",
                  "provider": "PROVIDER_NAME",
                  "description": "Description of your ODHApplication",
                  "kfdefApplications": [
                    "<NAME OF THE ODH APPLICATION IN KFDEF>"
                  ],
                  "route": "<APPLICATION_OCP_ROUTE_OBJECT_NAME>",
                  "img": "<svg xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" viewBox=\"-1.13 -1.13 58.50 48.94\"><title>Open Data Hub logo</title><g><g><g fill=\"#4d5258\" stroke-width=\".006\"><path fill=\"#bbb\" d=\"M112.30231 22.797083c-.2034 0-.35737.143517-.35737.337407 0 .192939.15397.339307.35737.339307.20339 0 .35736-.147318.35736-.339307 0-.19294-.15397-.337407-.35736-.337407zm.002.131161c.1112 0 .20149.08934.20149.206246 0 .116904-.0903.208146-.20149.208146-.1112 0-.2053-.09124-.2053-.208146 0-.116904.0931-.206246.2053-.206246zM113.04141 22.801836h-.28228v.665308h.15017v-.190088h.13211c.16918 0 .26612-.08934.26612-.244263 0-.147319-.0969-.230957-.26612-.230957zm-.008.349762h-.12451v-.225255h.12451c.0836 0 .13116.03707.13116.111202 0 .07603-.0475.114053-.13116.114053zM113.40328 22.801836v.665308h.51703v-.124508h-.36687v-.147318h.32125V23.07081h-.32125v-.144467h.35642v-.124507zM114.03814 22.801836v.665308h.14352v-.426748l.3222.426748h.13686v-.665308h-.14257v.427698L114.175 22.801836z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/><path d=\"M115.29685 22.801836h-.28228v.665308h.27658c.21004 0 .35546-.136863.35546-.332654 0-.196741-.14351-.332654-.34976-.332654zm.004.538899h-.13591v-.412491h.12926c.11405 0 .19959.08459.19959.207196 0 .121657-.0817.205295-.19294.205295zM116.21878 23.467144h.16062l-.28418-.665308h-.15492l-.28894.665308h.15493l.0523-.12926h.30794zm-.3108-.249966l.1055-.25852.10455.25852zM116.31525 22.801836v.127359h.20244v.537949h.15017v-.537949h.2034v-.127359zM117.37527 23.467144h.16063l-.28419-.665308h-.15492l-.28893.665308h.15492l.0523-.12926h.30795zm-.31079-.249966l.1055-.25852.10454.25852zM117.83433 22.801836v.665308h.15017v-.262322h.30129v.262322h.15017v-.665308h-.15017v.277528h-.30129v-.277528zM118.72025 23.188665v-.386829h-.15017v.386829c0 .175831.11785.285132.30224.285132.18343 0 .29844-.109301.29844-.285132v-.386829h-.15017v.386829c0 .09599-.0589.153971-.14827.153971-.0893 0-.15207-.05798-.15207-.153971zM119.61059 22.801836h-.30604v.665308h.31649c.15492 0 .25092-.07033.25092-.184385 0-.08744-.0532-.152071-.13876-.168228.0713-.01806.115-.07413.115-.146368 0-.102648-.0912-.166327-.23761-.166327zm-.008.268024h-.14826v-.145418h.14826c.0561 0 .0913.02566.0913.07128 0 .04657-.0352.07413-.0913.07413zm0 .274677h-.14826v-.158723h.14826c.0713 0 .11406.02946.11406.07794 0 .05132-.0428.08079-.11406.08079z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g><g fill=\"#58595b\" stroke-width=\".01\"><path d=\"M112.19192 24.15027h.0381l-.13717-.306759h-.0364l-.1376.306759h.0372l.0342-.07844h.16696zm-.18712-.110871l.0688-.157763.0697.157763zM112.27858 23.843511v.306759h.0351v-.306759zM112.64205 23.843511h-.11525v.306759h.0351v-.09729h.0802c.0758 0 .11964-.039.11964-.10649 0-.0653-.0438-.102983-.11964-.102983zm-.001.177044h-.0789V23.87594h.0789c.0552 0 .0872.02454.0872.07143 0 .0482-.032.07318-.0872.07318zM112.81775 23.825105v.325165h.0342v-.325165zM113.1137 24.15027l-.00044-.152503c-.00044-.04908-.032-.07932-.089-.07932-.0394 0-.0644.01139-.0942.03111l.0145.0241c.0241-.01709.0478-.02673.0732-.02673.0408 0 .0618.0206.0618.05434v.01446h-.0758c-.0543.000439-.0863.02586-.0863.06617 0 .03944.0307.06968.0784.06968.0368 0 .0662-.01227.0846-.03725v.03593zm-.11131-.02717c-.0324 0-.053-.01709-.053-.04251 0-.02585.0202-.03769.0587-.03769h.0719v.02805c-.009.03287-.0386.05215-.0776.05215zM113.29915 24.108201c-.0127.0074-.025.01139-.0368.01183-.0197 0-.0307-.01139-.0307-.03944v-.127086h.0732v-.02673h-.0732v-.06048h-.0337v.06048h-.0333v.02673h.0333v.132783c0 .04558.025.06573.0587.0653.0184 0 .0359-.0061.0521-.01709zM113.44228 23.854466c.0118 0 .0245.0044.0351.01183l.014-.02629c-.014-.01052-.032-.01622-.0495-.01622-.0386-.000438-.0741.02717-.0741.07713v.02586h-.0298v.02673h.0298v.196764h.0337v-.196764h.0662v-.02673h-.0662v-.03024c0-.02717.0184-.04251.0408-.04207zM113.59236 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM113.80323 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM114.22747 23.918448c-.0443.000438-.0767.01972-.0911.06004-.01-.03813-.0394-.06004-.0828-.06004-.0416.000438-.0727.01753-.0881.05346v-.05215h-.0337v.230508h.0337v-.113501c0-.04996.0285-.08458.0758-.08589.0403 0 .064.02454.064.06617v.133221h.0346v-.113501c0-.04996.0276-.08458.0754-.08589.0399 0 .064.02454.064.06617v.133221h.0342V24.00828c0-.05609-.032-.08984-.0859-.08984zM114.63474 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0487.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11088-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM114.89934 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM115.02844 23.919762l.0863.230508h.0355l.0675-.188876.0679.188876h.0355l.0855-.230508h-.0355l-.0675.195888-.0679-.195888h-.0359l-.067.195888-.0684-.195888zM115.53009 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM115.73075 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM115.95034 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11482.116569.0386 0 .071-.01402.0929-.03813l-.0188-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18843c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM116.29474 23.825105v.144615c-.0171-.03287-.0491-.05171-.0903-.05171-.0653 0-.11087.04777-.11087.116569 0 .0688.0456.117445.11131.117445.0412 0 .0727-.01884.0898-.05127v.04952h.0342v-.325165zm-.0833.297557c-.0491 0-.0837-.03637-.0837-.08721 0-.05083.0346-.08765.0837-.08765.0486 0 .0833.03681.0833.08765 0 .05083-.0346.08721-.0833.08721zM116.65984 23.918448c-.0403 0-.0719.01884-.089.05083v-.144177h-.0342v.325165h.0342v-.04952c.0171.03199.0486.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM116.89657 24.183138l.10605-.263376h-.0351l-.0732.191944-.0767-.191944h-.0359l.0955.228756-.01.02191c-.009.02191-.0241.03331-.0421.03331-.0114 0-.0219-.0035-.0324-.01095l-.0145.02717c.014.01139.0294.01665.0486.01665.0307 0 .0548-.01841.0692-.05346zM117.29947 23.842634c-.0898 0-.16083.06793-.16083.154257 0 .08633.071.154694.16083.154694.0894 0 .16039-.06836.16039-.154694 0-.08633-.071-.154257-.16039-.154257zm0 .03243c.0684 0 .12446.0539.12446.121828 0 .06792-.0561.122703-.12446.122703-.0684 0-.12533-.05478-.12533-.122703 0-.06793.057-.121828.12533-.121828zM117.64414 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0486.05083.0898.05083.0653 0 .10999-.04777.10999-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM117.9061 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM118.19616 23.918448c-.0421.000438-.0732.01709-.0894.05215v-.05084h-.0342v.230508h.0342v-.12358c.004-.0447.032-.07494.0776-.07537.0408 0 .0653.02454.0653.06573v.133221h.0342v-.141986c0-.05609-.0324-.08984-.0876-.08984zM118.65836 23.901795l.0149-.03111c-.0254-.01709-.0618-.02848-.0973-.02848-.0635 0-.10605.03068-.10605.07888 0 .109995.17266.06661.17222.148559 0 .0298-.0276.04777-.0719.04777-.0346 0-.0736-.01578-.1021-.04295l-.0158.03024c.0289.02761.0727.04689.11745.04689.0657 0 .11087-.03287.11087-.0837.00044-.11131-.17223-.06968-.17223-.149436 0-.02629.0259-.04207.0653-.04207.0245 0 .057.0075.0846.02542zM118.84168 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .11701-.04777.11701-.117007 0-.06836-.0487-.11613-.11701-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM119.18446 23.919762v.113063c0 .04996-.0281.08502-.0758.08589-.0399 0-.064-.02454-.064-.06573v-.133222h-.0342v.141986c0 .05565.0324.08984.0863.08984.0416-.000438.0723-.01753.0876-.05346v.05215h.0342v-.230508zM119.33586 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM119.62557 23.976294l.0188-.02366c-.021-.02147-.0517-.03418-.089-.03418-.0666 0-.11438.0482-.11438.116568 0 .0688.0473.116569.11438.116569.0399 0 .0719-.0149.0925-.03988l-.0197-.02016c-.0162.01928-.0412.0298-.0714.0298-.0478 0-.082-.03506-.082-.08633 0-.05083.0342-.08589.082-.08589.028 0 .0513.01008.0688.02717zM119.78997 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g></g><g><g><path fill=\"#a586f3\" d=\"m 7808.8125,2097.1875 c -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 v 329.875 c -0.8781,10.2195 7.1804,19 17.4375,19 10.2571,0 19.0227,-8.7805 18.1446,-19 v -77.7324 l 0.4179,-6.1426 c 0,-55.1597 44.2153,-99.5625 99.375,-99.5625 55.1596,0 99.5625,44.4028 99.5625,99.5625 0.01,0.1837 0.015,0.3674 0.027,0.5508 -0.026,0.4409 -0.035,0.8826 -0.027,1.3242 v 110 c 0,9.6822 7.849,17.5312 17.5312,17.5312 9.6823,0 17.5313,-7.849 17.5313,-17.5312 v -110 c 0,-0.3245 -0.012,-0.6488 -0.031,-0.9727 0.018,-0.3004 0.029,-0.6013 0.031,-0.9023 1e-4,-74.075 -60.55,-134.4374 -134.625,-134.4375 -39.9177,1e-4 -75.8465,17.5354 -100.5,45.293 V 2115 c 0.1749,-9.8356 -7.7881,-17.8833 -17.625,-17.8125 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><path fill=\"#5ed3ee\" d=\"m 7765.8027,2098.123 c -0.038,5e-4 -0.077,0 -0.1152,0 -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 V 2361 c 0,41.9333 -26.0162,79.2671 -65.4375,93.5625 -39.4213,14.2954 -83.5594,2.3741 -110.4375,-29.8125 -26.878,-32.1865 -30.6579,-77.5719 -9.5625,-113.8125 21.0955,-36.2406 62.4262,-55.2897 103.6875,-47.8125 9.5173,1.7397 18.6463,-4.5547 20.4043,-14.0686 1.758,-9.514 -4.5187,-18.6551 -14.0293,-20.4314 -55.6354,-10.082 -111.8054,15.8219 -140.25,64.6875 -28.4446,48.8656 -23.3039,110.5381 12.9375,153.9375 36.2415,43.3993 95.908,59.4005 149.0625,40.125 44.7667,-16.2337 77.0286,-54.658 86.0977,-100.1562 0,0 1.9812,-4.7686 2.5898,-9.1563 0.6086,-4.3877 0,-17.0625 0,-17.0625 v -245.0625 c 0.1769,-9.865 -7.8313,-17.9263 -17.6973,-17.8145 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><g fill=\"none\" stroke-width=\".365\" transform=\"translate(-449.265 -83.342) scale(5.91262)\"><circle cx=\"79.677\" cy=\"16.823\" r=\".645\" stroke=\"#c6ea70\"/><path stroke=\"#dff3b1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 80.808656,18.234303 a 1.8088735,1.8088735 0 0 1 -2.309183,-0.03848 1.8088735,1.8088735 0 0 1 -0.389241,-2.276466 1.8088735,1.8088735 0 0 1 2.165211,-0.803532\"/><path stroke=\"#f2fadf\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 82.216272,17.248644 a 2.455857,2.4425189 0 0 1 -2.468226,2.016391 2.455857,2.4425189 0 0 1 -2.383743,-2.114547 2.455857,2.4425189 0 0 1 1.733108,-2.668494\"/></g></g></g></g></svg>",
                  "category": "Open Data Hub",
                  "support": "open data hub",
                  "docsLink": "http://REPLACE.THIS.URL",
                  "quickStart": "example-odhquickstart",
                  "getStartedLink": "http://REPLACE.THIS.URL",
                  "getStartedMarkDown": "# Header for Getting Started MarkDown section\nHere is where you add information about your ODHApplication in markdown format\n\n1. List item\n1. List item\n1. List item"
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhDocument",
                "metadata": {
                  "name": "example-odhdocument",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHDocument",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "type": "how-to",
                  "description": "This is an example of an ODHDocument custom resource",
                  "url": "http://REPLACE.THIS.URL",
                  "durationMinutes": 5
                }
              },
              {
                "apiVersion": "console.openshift.io/v1",
                "kind": "OdhQuickStart",
                "metadata": {
                  "name": "example-odhquickstart",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHQuickstart Name",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "durationMinutes": 5,
                  "description": "Description of an example quickstart",
                  "introduction": "### Introduction Header\nThis is the body of the introduction for an ODHQuickstart",
                  "tasks": [
                    {
                      "title": "Title of the first task",
                      "description": "### Description header for the first task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the first task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    },
                    {
                      "title": "Title of the second task",
                      "description": "### Description header for the second task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the second task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    }
                  ],
                  "conclusion": "Message for the conclusion of the ODHQuickstart",
                  "nextQuickStart": null
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v1.11.0
          createdAt: "2023-10-31T00:00:00Z"
          description: Open Data Hub Operator for deployment and management of Open
            Data Hub
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/opendatahub-io/opendatahub-operator
          support: Open Data Hub
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AcceleratorProfile is the Schema for the acceleratorprofiles
            displayName: AcceleratorProfile
            kind: AcceleratorProfile
            name: acceleratorprofiles.dashboard.opendatahub.io
            version: v1alpha
          - description: KfDef is the Schema for the kfdefs API
            displayName: Kf Def
            kind: KfDef
            name: kfdefs.kfdef.apps.kubeflow.org
            version: v1
          - description: OdhApplication is the Schema for the odhapplications
            displayName: Open Data Hub Dashboard Application
            kind: OdhApplication
            name: odhapplications.dashboard.opendatahub.io
            version: v1
          - description: OdhDashboardConfig is the Schema for the odhdashboardconfigs
            displayName: Open Data Hub Dashboard Configuration
            kind: OdhDashboardConfig
            name: odhdashboardconfigs.opendatahub.io
            version: v1alpha
          - description: OdhDocument is the Schema for the odhdocuments
            displayName: Open Data Hub Dashboard Documentation
            kind: OdhDocument
            name: odhdocuments.dashboard.opendatahub.io
            version: v1
          - description: Extension for guiding user through various workflows in the
              Open Data Hub dashboard.
            displayName: Open Data Hub Dashboard QuickStart
            kind: OdhQuickStart
            name: odhquickstarts.console.openshift.io
            version: v1
        description: |
          The Open Data Hub is a machine-learning-as-a-service platform built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open Data Hub integrates multiple AI/ML open source components into one operator that can easily be downloaded and installed by OpenShift users.

          Open Data Hub operator allows users to install and manage components of the Open Data Hub. Users can mix and match tools from each project to fulfill the needs of their use case. Each of the
          projects share some components, but can be mostly seen as an extension of each other to provide a complete solution for both novice and skilled enterprise users.

          ### Components
          * Open Data Hub Dashboard - A web dashboard that displays installed Open Data Hub components with easy access to component UIs and documentation
          * ODH Notebook Controller - Secure management of Jupyter Notebook in Kubernetes environments built on top of Kubeflow Notebook Controller with support for OAuth
          * Jupyter Notebooks - JupyterLab notebook that provide Python support for GPU workloads
          * Data Science Pipelines - Pipeline solution for end to end MLOps workflows that support the Kubeflow Pipelines SDK and Tekton
          * Model Mesh - ModelMesh Serving is the Controller for managing ModelMesh, a general-purpose model serving management/routing layer.
          * TrustyAI - TrustyAI is an open source AI Explainability (XAI) Toolkit

          To install one or multiple of these components use the default KfDef provided with the operator.
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: opendatahub@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Open Data Hub
        relatedImages:
        - quay.io/openshift-community-operators/opendatahub-operator@sha256:2992841660e8b1664fa2ce06da894aa828d4ea1be3eb5b27476efdd73731486a
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/opendatahub/opendatahub-operator:v1.11.0
        version: 1.11.0
      entries:
      - name: opendatahub-operator.v1.11.0
        version: 1.11.0
      - name: opendatahub-operator.v1.10.1
        version: 1.10.1
      - name: opendatahub-operator.v1.10.0
        version: 1.10.0
      - name: opendatahub-operator.v1.9.0
        version: 1.9.0
      - name: opendatahub-operator.v1.8.0
        version: 1.8.0
      - name: opendatahub-operator.v1.7.0
        version: 1.7.0
      - name: opendatahub-operator.v1.6.0
        version: 1.6.0
      - name: opendatahub-operator.v1.5.0
        version: 1.5.0
      - name: opendatahub-operator.v1.4.2
        version: 1.4.2
      - name: opendatahub-operator.v1.4.1
        version: 1.4.1
      - name: opendatahub-operator.v1.4.0
        version: 1.4.0
      - name: opendatahub-operator.v1.3.0
        version: 1.3.0
      - name: opendatahub-operator.v1.2.0
        version: 1.2.0
      - name: opendatahub-operator.v1.1.2
        version: 1.1.2
      - name: opendatahub-operator.v1.1.1
        version: 1.1.1
      name: rolling
    - currentCSV: opendatahub-operator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kfdef.apps.kubeflow.org/v1",
                "kind": "KfDef",
                "metadata": {
                  "name": "opendatahub",
                  "namespace": "opendatahub"
                },
                "spec": {
                  "applications": [
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-common"
                        }
                      },
                      "name": "odh-common"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-dashboard"
                        }
                      },
                      "name": "odh-dashboard"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "prometheus/cluster"
                        }
                      },
                      "name": "prometheus-cluster"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "prometheus/operator"
                        }
                      },
                      "name": "prometheus-operator"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "grafana/cluster"
                        }
                      },
                      "name": "grafana-cluster"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "grafana/grafana"
                        }
                      },
                      "name": "grafana-instance"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-notebook-controller"
                        }
                      },
                      "name": "odh-notebook-controller"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "notebook-images"
                        }
                      },
                      "name": "notebook-images"
                    },
                    {
                      "kustomizeConfig": {
                        "overlays": [
                          "odh-model-controller"
                        ],
                        "repoRef": {
                          "name": "manifests",
                          "path": "model-mesh"
                        }
                      },
                      "name": "model-mesh"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "data-science-pipelines-operator"
                        }
                      },
                      "name": "data-science-pipelines-operator"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "trustyai-service"
                        }
                      },
                      "name": "trustyai"
                    }
                  ],
                  "repos": [
                    {
                      "name": "manifests",
                      "uri": "https://github.com/opendatahub-io/odh-manifests/tarball/v1.5"
                    }
                  ]
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhApplication",
                "metadata": {
                  "name": "example-odhapplication",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started,Model development,Model training,Notebook environments,Package management,Data Management"
                  }
                },
                "spec": {
                  "displayName": "ODHAPPLICATION DISPLAY NAME",
                  "provider": "PROVIDER_NAME",
                  "description": "Description of your ODHApplication",
                  "kfdefApplications": [
                    "<NAME OF THE ODH APPLICATION IN KFDEF>"
                  ],
                  "route": "<APPLICATION_OCP_ROUTE_OBJECT_NAME>",
                  "img": "<svg xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" viewBox=\"-1.13 -1.13 58.50 48.94\"><title>Open Data Hub logo</title><g><g><g fill=\"#4d5258\" stroke-width=\".006\"><path fill=\"#bbb\" d=\"M112.30231 22.797083c-.2034 0-.35737.143517-.35737.337407 0 .192939.15397.339307.35737.339307.20339 0 .35736-.147318.35736-.339307 0-.19294-.15397-.337407-.35736-.337407zm.002.131161c.1112 0 .20149.08934.20149.206246 0 .116904-.0903.208146-.20149.208146-.1112 0-.2053-.09124-.2053-.208146 0-.116904.0931-.206246.2053-.206246zM113.04141 22.801836h-.28228v.665308h.15017v-.190088h.13211c.16918 0 .26612-.08934.26612-.244263 0-.147319-.0969-.230957-.26612-.230957zm-.008.349762h-.12451v-.225255h.12451c.0836 0 .13116.03707.13116.111202 0 .07603-.0475.114053-.13116.114053zM113.40328 22.801836v.665308h.51703v-.124508h-.36687v-.147318h.32125V23.07081h-.32125v-.144467h.35642v-.124507zM114.03814 22.801836v.665308h.14352v-.426748l.3222.426748h.13686v-.665308h-.14257v.427698L114.175 22.801836z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/><path d=\"M115.29685 22.801836h-.28228v.665308h.27658c.21004 0 .35546-.136863.35546-.332654 0-.196741-.14351-.332654-.34976-.332654zm.004.538899h-.13591v-.412491h.12926c.11405 0 .19959.08459.19959.207196 0 .121657-.0817.205295-.19294.205295zM116.21878 23.467144h.16062l-.28418-.665308h-.15492l-.28894.665308h.15493l.0523-.12926h.30794zm-.3108-.249966l.1055-.25852.10455.25852zM116.31525 22.801836v.127359h.20244v.537949h.15017v-.537949h.2034v-.127359zM117.37527 23.467144h.16063l-.28419-.665308h-.15492l-.28893.665308h.15492l.0523-.12926h.30795zm-.31079-.249966l.1055-.25852.10454.25852zM117.83433 22.801836v.665308h.15017v-.262322h.30129v.262322h.15017v-.665308h-.15017v.277528h-.30129v-.277528zM118.72025 23.188665v-.386829h-.15017v.386829c0 .175831.11785.285132.30224.285132.18343 0 .29844-.109301.29844-.285132v-.386829h-.15017v.386829c0 .09599-.0589.153971-.14827.153971-.0893 0-.15207-.05798-.15207-.153971zM119.61059 22.801836h-.30604v.665308h.31649c.15492 0 .25092-.07033.25092-.184385 0-.08744-.0532-.152071-.13876-.168228.0713-.01806.115-.07413.115-.146368 0-.102648-.0912-.166327-.23761-.166327zm-.008.268024h-.14826v-.145418h.14826c.0561 0 .0913.02566.0913.07128 0 .04657-.0352.07413-.0913.07413zm0 .274677h-.14826v-.158723h.14826c.0713 0 .11406.02946.11406.07794 0 .05132-.0428.08079-.11406.08079z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g><g fill=\"#58595b\" stroke-width=\".01\"><path d=\"M112.19192 24.15027h.0381l-.13717-.306759h-.0364l-.1376.306759h.0372l.0342-.07844h.16696zm-.18712-.110871l.0688-.157763.0697.157763zM112.27858 23.843511v.306759h.0351v-.306759zM112.64205 23.843511h-.11525v.306759h.0351v-.09729h.0802c.0758 0 .11964-.039.11964-.10649 0-.0653-.0438-.102983-.11964-.102983zm-.001.177044h-.0789V23.87594h.0789c.0552 0 .0872.02454.0872.07143 0 .0482-.032.07318-.0872.07318zM112.81775 23.825105v.325165h.0342v-.325165zM113.1137 24.15027l-.00044-.152503c-.00044-.04908-.032-.07932-.089-.07932-.0394 0-.0644.01139-.0942.03111l.0145.0241c.0241-.01709.0478-.02673.0732-.02673.0408 0 .0618.0206.0618.05434v.01446h-.0758c-.0543.000439-.0863.02586-.0863.06617 0 .03944.0307.06968.0784.06968.0368 0 .0662-.01227.0846-.03725v.03593zm-.11131-.02717c-.0324 0-.053-.01709-.053-.04251 0-.02585.0202-.03769.0587-.03769h.0719v.02805c-.009.03287-.0386.05215-.0776.05215zM113.29915 24.108201c-.0127.0074-.025.01139-.0368.01183-.0197 0-.0307-.01139-.0307-.03944v-.127086h.0732v-.02673h-.0732v-.06048h-.0337v.06048h-.0333v.02673h.0333v.132783c0 .04558.025.06573.0587.0653.0184 0 .0359-.0061.0521-.01709zM113.44228 23.854466c.0118 0 .0245.0044.0351.01183l.014-.02629c-.014-.01052-.032-.01622-.0495-.01622-.0386-.000438-.0741.02717-.0741.07713v.02586h-.0298v.02673h.0298v.196764h.0337v-.196764h.0662v-.02673h-.0662v-.03024c0-.02717.0184-.04251.0408-.04207zM113.59236 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM113.80323 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM114.22747 23.918448c-.0443.000438-.0767.01972-.0911.06004-.01-.03813-.0394-.06004-.0828-.06004-.0416.000438-.0727.01753-.0881.05346v-.05215h-.0337v.230508h.0337v-.113501c0-.04996.0285-.08458.0758-.08589.0403 0 .064.02454.064.06617v.133221h.0346v-.113501c0-.04996.0276-.08458.0754-.08589.0399 0 .064.02454.064.06617v.133221h.0342V24.00828c0-.05609-.032-.08984-.0859-.08984zM114.63474 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0487.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11088-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM114.89934 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM115.02844 23.919762l.0863.230508h.0355l.0675-.188876.0679.188876h.0355l.0855-.230508h-.0355l-.0675.195888-.0679-.195888h-.0359l-.067.195888-.0684-.195888zM115.53009 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM115.73075 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM115.95034 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11482.116569.0386 0 .071-.01402.0929-.03813l-.0188-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18843c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM116.29474 23.825105v.144615c-.0171-.03287-.0491-.05171-.0903-.05171-.0653 0-.11087.04777-.11087.116569 0 .0688.0456.117445.11131.117445.0412 0 .0727-.01884.0898-.05127v.04952h.0342v-.325165zm-.0833.297557c-.0491 0-.0837-.03637-.0837-.08721 0-.05083.0346-.08765.0837-.08765.0486 0 .0833.03681.0833.08765 0 .05083-.0346.08721-.0833.08721zM116.65984 23.918448c-.0403 0-.0719.01884-.089.05083v-.144177h-.0342v.325165h.0342v-.04952c.0171.03199.0486.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM116.89657 24.183138l.10605-.263376h-.0351l-.0732.191944-.0767-.191944h-.0359l.0955.228756-.01.02191c-.009.02191-.0241.03331-.0421.03331-.0114 0-.0219-.0035-.0324-.01095l-.0145.02717c.014.01139.0294.01665.0486.01665.0307 0 .0548-.01841.0692-.05346zM117.29947 23.842634c-.0898 0-.16083.06793-.16083.154257 0 .08633.071.154694.16083.154694.0894 0 .16039-.06836.16039-.154694 0-.08633-.071-.154257-.16039-.154257zm0 .03243c.0684 0 .12446.0539.12446.121828 0 .06792-.0561.122703-.12446.122703-.0684 0-.12533-.05478-.12533-.122703 0-.06793.057-.121828.12533-.121828zM117.64414 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0486.05083.0898.05083.0653 0 .10999-.04777.10999-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM117.9061 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM118.19616 23.918448c-.0421.000438-.0732.01709-.0894.05215v-.05084h-.0342v.230508h.0342v-.12358c.004-.0447.032-.07494.0776-.07537.0408 0 .0653.02454.0653.06573v.133221h.0342v-.141986c0-.05609-.0324-.08984-.0876-.08984zM118.65836 23.901795l.0149-.03111c-.0254-.01709-.0618-.02848-.0973-.02848-.0635 0-.10605.03068-.10605.07888 0 .109995.17266.06661.17222.148559 0 .0298-.0276.04777-.0719.04777-.0346 0-.0736-.01578-.1021-.04295l-.0158.03024c.0289.02761.0727.04689.11745.04689.0657 0 .11087-.03287.11087-.0837.00044-.11131-.17223-.06968-.17223-.149436 0-.02629.0259-.04207.0653-.04207.0245 0 .057.0075.0846.02542zM118.84168 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .11701-.04777.11701-.117007 0-.06836-.0487-.11613-.11701-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM119.18446 23.919762v.113063c0 .04996-.0281.08502-.0758.08589-.0399 0-.064-.02454-.064-.06573v-.133222h-.0342v.141986c0 .05565.0324.08984.0863.08984.0416-.000438.0723-.01753.0876-.05346v.05215h.0342v-.230508zM119.33586 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM119.62557 23.976294l.0188-.02366c-.021-.02147-.0517-.03418-.089-.03418-.0666 0-.11438.0482-.11438.116568 0 .0688.0473.116569.11438.116569.0399 0 .0719-.0149.0925-.03988l-.0197-.02016c-.0162.01928-.0412.0298-.0714.0298-.0478 0-.082-.03506-.082-.08633 0-.05083.0342-.08589.082-.08589.028 0 .0513.01008.0688.02717zM119.78997 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g></g><g><g><path fill=\"#a586f3\" d=\"m 7808.8125,2097.1875 c -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 v 329.875 c -0.8781,10.2195 7.1804,19 17.4375,19 10.2571,0 19.0227,-8.7805 18.1446,-19 v -77.7324 l 0.4179,-6.1426 c 0,-55.1597 44.2153,-99.5625 99.375,-99.5625 55.1596,0 99.5625,44.4028 99.5625,99.5625 0.01,0.1837 0.015,0.3674 0.027,0.5508 -0.026,0.4409 -0.035,0.8826 -0.027,1.3242 v 110 c 0,9.6822 7.849,17.5312 17.5312,17.5312 9.6823,0 17.5313,-7.849 17.5313,-17.5312 v -110 c 0,-0.3245 -0.012,-0.6488 -0.031,-0.9727 0.018,-0.3004 0.029,-0.6013 0.031,-0.9023 1e-4,-74.075 -60.55,-134.4374 -134.625,-134.4375 -39.9177,1e-4 -75.8465,17.5354 -100.5,45.293 V 2115 c 0.1749,-9.8356 -7.7881,-17.8833 -17.625,-17.8125 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><path fill=\"#5ed3ee\" d=\"m 7765.8027,2098.123 c -0.038,5e-4 -0.077,0 -0.1152,0 -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 V 2361 c 0,41.9333 -26.0162,79.2671 -65.4375,93.5625 -39.4213,14.2954 -83.5594,2.3741 -110.4375,-29.8125 -26.878,-32.1865 -30.6579,-77.5719 -9.5625,-113.8125 21.0955,-36.2406 62.4262,-55.2897 103.6875,-47.8125 9.5173,1.7397 18.6463,-4.5547 20.4043,-14.0686 1.758,-9.514 -4.5187,-18.6551 -14.0293,-20.4314 -55.6354,-10.082 -111.8054,15.8219 -140.25,64.6875 -28.4446,48.8656 -23.3039,110.5381 12.9375,153.9375 36.2415,43.3993 95.908,59.4005 149.0625,40.125 44.7667,-16.2337 77.0286,-54.658 86.0977,-100.1562 0,0 1.9812,-4.7686 2.5898,-9.1563 0.6086,-4.3877 0,-17.0625 0,-17.0625 v -245.0625 c 0.1769,-9.865 -7.8313,-17.9263 -17.6973,-17.8145 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><g fill=\"none\" stroke-width=\".365\" transform=\"translate(-449.265 -83.342) scale(5.91262)\"><circle cx=\"79.677\" cy=\"16.823\" r=\".645\" stroke=\"#c6ea70\"/><path stroke=\"#dff3b1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 80.808656,18.234303 a 1.8088735,1.8088735 0 0 1 -2.309183,-0.03848 1.8088735,1.8088735 0 0 1 -0.389241,-2.276466 1.8088735,1.8088735 0 0 1 2.165211,-0.803532\"/><path stroke=\"#f2fadf\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 82.216272,17.248644 a 2.455857,2.4425189 0 0 1 -2.468226,2.016391 2.455857,2.4425189 0 0 1 -2.383743,-2.114547 2.455857,2.4425189 0 0 1 1.733108,-2.668494\"/></g></g></g></g></svg>",
                  "category": "Open Data Hub",
                  "support": "open data hub",
                  "docsLink": "http://REPLACE.THIS.URL",
                  "quickStart": "example-odhquickstart",
                  "getStartedLink": "http://REPLACE.THIS.URL",
                  "getStartedMarkDown": "# Header for Getting Started MarkDown section\nHere is where you add information about your ODHApplication in markdown format\n\n1. List item\n1. List item\n1. List item"
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhDocument",
                "metadata": {
                  "name": "example-odhdocument",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHDocument",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "type": "how-to",
                  "description": "This is an example of an ODHDocument custom resource",
                  "url": "http://REPLACE.THIS.URL",
                  "durationMinutes": 5
                }
              },
              {
                "apiVersion": "console.openshift.io/v1",
                "kind": "OdhQuickStart",
                "metadata": {
                  "name": "example-odhquickstart",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHQuickstart Name",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "durationMinutes": 5,
                  "description": "Description of an example quickstart",
                  "introduction": "### Introduction Header\nThis is the body of the introduction for an ODHQuickstart",
                  "tasks": [
                    {
                      "title": "Title of the first task",
                      "description": "### Description header for the first task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the first task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    },
                    {
                      "title": "Title of the second task",
                      "description": "### Description header for the second task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the second task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    }
                  ],
                  "conclusion": "Message for the conclusion of the ODHQuickstart",
                  "nextQuickStart": null
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v1.5.0
          createdAt: "2022-10-18T00:00:00Z"
          description: Open Data Hub Operator for deployment and management of Open
            Data Hub
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/opendatahub-io/opendatahub-operator
          support: Open Data Hub
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KfDef is the Schema for the kfdefs API
            displayName: Kf Def
            kind: KfDef
            name: kfdefs.kfdef.apps.kubeflow.org
            version: v1
          - description: OdhApplication is the Schema for the odhapplications
            displayName: Open Data Hub Dashboard Application
            kind: OdhApplication
            name: odhapplications.dashboard.opendatahub.io
            version: v1
          - description: OdhDashboardConfig is the Schema for the odhdashboardconfigs
            displayName: Open Data Hub Dashboard Configuration
            kind: OdhDashboardConfig
            name: odhdashboardconfigs.opendatahub.io
            version: v1alpha
          - description: OdhDocument is the Schema for the odhdocuments
            displayName: Open Data Hub Dashboard Documentation
            kind: OdhDocument
            name: odhdocuments.dashboard.opendatahub.io
            version: v1
          - description: Extension for guiding user through various workflows in the
              Open Data Hub dashboard.
            displayName: Open Data Hub Dashboard QuickStart
            kind: OdhQuickStart
            name: odhquickstarts.console.openshift.io
            version: v1
        description: |
          The Open Data Hub is a machine-learning-as-a-service platform built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open Data Hub integrates multiple AI/ML open source components into one operator that can easily be downloaded and installed by OpenShift users.

          Open Data Hub operator allows users to install and manage components of the Open Data Hub. Users can mix and match tools from each project to fulfill the needs of their use case. Each of the
          projects share some components, but can be mostly seen as an extension of each other to provide a complete solution for both novice and skilled enterprise users.

          ### Components
          * Open Data Hub Dashboard - A web dashboard that displays installed Open Data Hub components with easy access to component UIs and documentation
          * ODH Notebook Controller - Secure management of Jupyter Notebook in Kubernetes environments built on top of Kubeflow Notebook Controller with support for OAuth
          * Jupyter Notebooks - JupyterLab notebook that provide Python support for GPU workloads
          * Data Science Pipelines - Pipeline solution for end to end MLOps workflows that support the Kubeflow Pipelines SDK and Tekton
          * Model Mesh - ModelMesh Serving is the Controller for managing ModelMesh, a general-purpose model serving management/routing layer.

          To install one or multiple of these components use the default KfDef provided with the operator.

          ### Available Channels

          #### Stable

          Channel `stable` offers the major releases of Open Data Hub operator and ODH manifests. It is based on Kubeflow Operator and Kustomize for deployment configuration. This version is compatible with [Open Data Hub manifests](https://github.com/opendatahub-io/odh-manifests/) as well as [Kubeflow manifests](https://github.com/opendatahub-io/manifests). This channel will offer new components and features that have been thoroughly tested by consumers of the `rolling` channel

          NOTE: The `stable` channel will be deprecated starting with the ODH 1.6 release and we will only be publishing updates on the `rolling` channel for all future releases

          #### Rolling

          Channel `rolling` will offer the latest release of Open Data Hub operator and manifests. Subscribing to this branch will provide faster updates and access to components that will be in developement and testing for the next stable release
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io
        maintainers:
        - email: maintainers@lists.opendatahub.io
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Open Data Hub
        relatedImages:
        - quay.io/opendatahub/opendatahub-operator:v1.5.0
        - quay.io/openshift-community-operators/opendatahub-operator@sha256:bf85a9da8a100a90deb3745497bc1505852910ef23dd12c624fa17de51bd8377
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        version: 1.5.0
      entries:
      - name: opendatahub-operator.v1.5.0
        version: 1.5.0
      - name: opendatahub-operator.v1.4.2
        version: 1.4.2
      - name: opendatahub-operator.v1.4.1
        version: 1.4.1
      - name: opendatahub-operator.v1.4.0
        version: 1.4.0
      - name: opendatahub-operator.v1.3.0
        version: 1.3.0
      - name: opendatahub-operator.v1.2.0
        version: 1.2.0
      - name: opendatahub-operator.v1.1.2
        version: 1.1.2
      - name: opendatahub-operator.v1.1.1
        version: 1.1.1
      name: stable
    defaultChannel: fast-3
    packageName: opendatahub-operator
    provider:
      name: ODH
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: VASTData
      provider-url: https://www.vastdata.com
    name: vast-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vast-csi-operator.v2.6.4
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"storage.vastdata.com/v1","kind":"VastCSIDriver","metadata":{"name":"csi.vastdata.com"},"spec":{"applySecurityContextConstraints":true,"attachRequired":true,"blockHostsAutoPrune":false,"controller":{"dnsPolicy":"Default","extraArgs":{"csiAttacher":[],"csiProvisioner":[],"csiResizer":[],"csiSnapshotter":[]},"nodeAffinity":{},"nodeSelector":{},"podAffinity":{},"podAntiAffinity":{},"resources":{"csiAttacher":{"limits":{"memory":"200Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiProvisioner":{"limits":{"memory":"400Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiResizer":{"limits":{"memory":"300Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiSnapshotter":{"limits":{"memory":"200Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiVastPlugin":{"limits":{"memory":"500Mi"},"requests":{"cpu":"100m","memory":"50Mi"}}},"runOnControlPlane":false,"runOnMaster":false,"tolerations":[]},"deletionViewPolicy":null,"deletionVipPool":null,"dontUseTrashApi":false,"driverType":"nfs","endpoint":null,"image":{"csiAttacher":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-attacher@sha256:b4d611100ece2f9bc980d1cb19c2285b8868da261e3b1ee8f45448ab5512ab94"},"csiNodeDriverRegistrar":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:f25af73ee708ff9c82595ae99493cdef9295bd96953366cddf36305f82555dac"},"csiProvisioner":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-provisioner@sha256:405a14e1aa702f7ea133cea459e8395fe40a6125c088c55569e696d48e1bd385"},"csiResizer":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-resizer@sha256:a541e6cc2d8b011bb21b1d4ffec6b090e85270cce6276ee302d86153eec0af43"},"csiSnapshotter":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-snapshotter@sha256:2e04046334baf9be425bb0fa1d04c2d1720d770825eedbdbcdb10d430da4ad8c"},"csiVastPlugin":{"imagePullPolicy":"IfNotPresent","repository":"registry.connect.redhat.com/vastdataorg/csi@sha256:596e9cbbd456de387ebb926e7fb57377c9c3d95b745b2f4baf8cf106c5e59718"}},"imagePullSecrets":[],"kubeletPath":"/var/lib/kubelet","logLevel":5,"node":{"dnsPolicy":"Default","nodeAffinity":{},"nodeSelector":{},"podAffinity":{},"podAntiAffinity":{},"propagateHostMountOptions":true,"resources":{"csiVastPlugin":{"limits":{"memory":"500Mi"},"requests":{"cpu":"200m","memory":"300Mi"}},"nodeDriverRegistrar":{"limits":{"memory":"100Mi"},"requests":{"cpu":"10m","memory":"20Mi"}}},"tolerations":[]},"numWorkers":10,"operationRetryIntervalMax":60,"operationRetryIntervalStart":10,"operationTimeout":15,"secretName":null,"sslCertsSecretName":null,"truncateVolumeName":64,"useLocalIpForMount":null,"verifySsl":false}},{"apiVersion":"storage.vastdata.com/v1","kind":"VastStorage","metadata":{"name":"vastdata-filesystem"},"spec":{"allowVolumeExpansion":true,"blockingClones":false,"clusterName":"","createSnapshotClass":true,"driverType":"nfs","ephemeralVolumeNameFormat":"csi:{namespace}:{name}:{id}","fsType":"","hostEncryption":null,"mountOptions":[],"provisioner":"","qosPolicy":"","reclaimPolicy":"Delete","secretName":"","secretNamespace":"","setDefaultStorageClass":false,"snapshotClass":{"deletionPolicy":"Delete","setDefaultSnapshotClass":false,"snapshotNameFormat":"csi:{namespace}:{name}:{id}"},"storagePath":"","subsystem":"","tenantName":"","viewPolicy":"","vipPool":"","vipPoolFQDN":null,"volumeGroup":"","volumeNameFormat":"csi:{namespace}:{name}:{id}"}},{"apiVersion":"storage.vastdata.com/v1","kind":"VastCluster","metadata":{"name":"vastcluster-sample"},"spec":{"endpoint":null,"passphrase":null,"password":null,"sslCert":null,"tenant":null,"token":null,"username":null}}]'
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/vastdataorg/csi-operator@sha256:a1c4675c5dd64687b6f4aba223e52708140582bd9ca55d06f88403d5253b823a
          createdAt: "2024-07-01T11:59:59Z"
          description: Kubernetes operator for automated deployment and lifecycle
            management of VAST Data CSI drivers.
          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"
          operatorframework.io/suggested-namespace: vast-csi
          operators.operatorframework.io/builder: operator-sdk-v1.3.0-ocp
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/vast-data/vast-csi
          support: VastData Infra Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VastCSIDriver is a common specification for VAST CSI Controller
              and VAST CSI Node plugins, typically intended for creation in a single
              instance.
            displayName: VastCSIDriver
            kind: VastCSIDriver
            name: vastcsidrivers.storage.vastdata.com
            version: v1
          - description: VastCluster encapsulates the connection details required
              for accessing a VAST cluster. This information is ultimately stored
              in a Kubernetes Secret.
            displayName: VastCluster
            kind: VastCluster
            name: vastclusters.storage.vastdata.com
            version: v1
          - description: Represents VAST storage. Each VastStorage instance generates
              a corresponding storage class that can be used in PVCs to create workloads.
            displayName: VastStorage
            kind: VastStorage
            name: vaststorages.storage.vastdata.com
            version: v1
        description: |-
          VAST CSI Operator supports seamless installation and upgrade of VAST Data's CSI Driver.
          The VAST CSI Driver allows container orchestration frameworks such as Kubernetes to dynamically provision, manage and scale volumes on the [VAST Data Platform](https://www.vastdata.com/platform/overview). VAST provides scalable, reliable, and fast persistent storage that can be accessed remotely by any Kubernetes application container.
          ### Installation
          Refer to the VASTData Operator for Kubernetes [official documentation](https://support.vastdata.com/s/document-item?bundleId=vast-csi-driver-2.6-administrator-s-guide&topicId=deploying-vast-csi-driver/deploying-vast-csi-driver-on-openshift-with-vast-csi-operator.html&_LANG=enus).
        displayName: VAST CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - VAST
        - VASTData
        - CSI
        - Multi Cluster
        - AI
        - High-Performance Computing
        links:
        - name: VAST CSI Plugin
          url: https://github.com/vast-data/vast-csi
        maintainers:
        - email: volodymyr.boiko@vastdata.com
          name: VAST Infrastructure Team
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: VASTData
          url: https://www.vastdata.com
        relatedImages:
        - registry.k8s.io/sig-storage/csi-attacher@sha256:b4d611100ece2f9bc980d1cb19c2285b8868da261e3b1ee8f45448ab5512ab94
        - registry.k8s.io/sig-storage/csi-resizer@sha256:a541e6cc2d8b011bb21b1d4ffec6b090e85270cce6276ee302d86153eec0af43
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:2e04046334baf9be425bb0fa1d04c2d1720d770825eedbdbcdb10d430da4ad8c
        - registry.connect.redhat.com/vastdataorg/csi-operator@sha256:a1c4675c5dd64687b6f4aba223e52708140582bd9ca55d06f88403d5253b823a
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:405a14e1aa702f7ea133cea459e8395fe40a6125c088c55569e696d48e1bd385
        - docker.io/kubebuilder/kube-rbac-proxy@sha256:a2523c532c0c3d51a5396a901d7ded23e402a9a1492c783aae27af6d0c1d2ec5
        - registry.connect.redhat.com/vastdataorg/csi-operator-bundle@sha256:64b6c40b3855c5cbba0aa22f83a0a38a3ed5ae69f8bd522dc00f608566c76bd0
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:f25af73ee708ff9c82595ae99493cdef9295bd96953366cddf36305f82555dac
        - registry.connect.redhat.com/vastdataorg/csi@sha256:596e9cbbd456de387ebb926e7fb57377c9c3d95b745b2f4baf8cf106c5e59718
        version: 2.6.4
      entries:
      - name: vast-csi-operator.v2.6.4
        version: 2.6.4
      name: stable
    defaultChannel: stable
    packageName: vast-csi-operator
    provider:
      name: VASTData
      url: https://www.vastdata.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Lightbits Labs
      provider-url: https://www.lightbitslabs.com
    name: lightbits-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lightbits-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "storage.lightbitslabs.com/v1alpha1",
                "kind": "CSIDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightbits-operator",
                    "app.kubernetes.io/instance": "csidriver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "csidriver",
                    "app.kubernetes.io/part-of": "lightbits-operator"
                  },
                  "name": "csi.lightbitslabs.com",
                  "namespace": "lightbits-operator"
                },
                "spec": {
                  "controller": {
                    "registry": "docker.lightbitslabs.com",
                    "repository": "lightbits-operator/lb-csi-plugin",
                    "tag": "v1.21.0-ubi9"
                  },
                  "node": {
                    "registry": "docker.lightbitslabs.com",
                    "repository": "lightbits-operator/lb-csi-plugin",
                    "sidecars": {
                      "lb-nvme-discovery-client": {
                        "registry": "docker.lightbitslabs.com",
                        "repository": "lightbits-operator/lb-nvme-discovery-client",
                        "tag": "v1.21.0-ubi9"
                      }
                    },
                    "tag": "v1.21.0-ubi9"
                  }
                }
              },
              {
                "apiVersion": "storage.lightbitslabs.com/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightbits-operator",
                    "app.kubernetes.io/instance": "cluster1",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cluster",
                    "app.kubernetes.io/part-of": "lightbits-operator"
                  },
                  "name": "cluster1",
                  "namespace": "lightbits-operator"
                },
                "spec": {
                  "addresses": "192.168.40.46,192.168.40.47,192.168.40.48",
                  "apiService": "192.168.40.46:443,192.168.40.47:443,192.168.40.48:443",
                  "clusterAdminSecretName": "lb-secret",
                  "clusterName": "cluster1"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          com.redhat.openshift.versions: v4.17
          containerImage: docker.lightbitslabs.com/lightbits-operator/lightbits-operator@sha256:9eaec3c91c5403f2f9e26c128da4ca779cacdc0f21f09f721001bdf0ae1a74f5
          createdAt: "2025-11-24T15:33:38Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/supported-versions: v4.17
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/internal-objects: '[]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io/suggested-namespace: lightbits-operator
          repository: https://github.com/LightBitsLabs/lightbits-operator
          support: Lightbits Labs <support@lightbitslabs.com>
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster is the Schema for the clusters API
            displayName: Lightbits Cluster
            kind: Cluster
            name: clusters.storage.lightbitslabs.com
            version: v1alpha1
          - description: CSIDriver is the Schema for the csidrivers API
            displayName: Lightbits CSI Driver
            kind: CSIDriver
            name: csidrivers.storage.lightbitslabs.com
            version: v1alpha1
        description: |-
          Operator for deploying and managing Lightbits CSI driver.

          By using the operator users can quickly and easily deploy and upgrade Lightbits CSI Driver.

          ## Requirements

          - Kernel support for NVMe-TCP
          - Kernel support for NVMe Asymmetric Namespace Access (ANA)

          ## CSI driver Supported Features

          - Filesystem Volumes (xfs/ext4)
          - Raw Block Volumes
          - Dynamic/Static Provisioning
          - Volume Snapshots
          - Volume Clones
          - Multi-Tenancy & Credentials
          - Volume Expansion (Online/Offline)
          - Storage Capacity Tracking
          - Host-Side Encryption (LUKS)
          - Publish ReadOnly volumes

          ## How to install

          See the official documentation [here](https://lightbitslabs.github.io/lightbits-operator/install_lightbits_operator.html#installation)

          ## Documentation

          See the official documentation [here](https://lightbitslabs.github.io/lightbits-operator/)
        displayName: Lightbits Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - storage
        - lightbits
        links:
        - name: Lightbits Operator
          url: https://github.com/lightbitslabs/lightbits-operator
        maintainers:
        - email: k8s@lightbitslabs.com
          name: Lightbits Labs
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Lightbits Labs
          url: https://www.lightbitslabs.com
        relatedImages:
        - docker.lightbitslabs.com/lightbits-operator/lightbits-operator@sha256:9eaec3c91c5403f2f9e26c128da4ca779cacdc0f21f09f721001bdf0ae1a74f5
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d99a8d144816b951a67648c12c0b988936ccd25cf3754f3cd85ab8c01592248f
        - registry.connect.redhat.com/lightbitslabs/lightbits-operator@sha256:fafb27b54cc654d67b0b4c19e6bba00e27aded08019dc93e37a04f1af8418306
        version: 1.2.2
      entries:
      - name: lightbits-operator.v1.2.2
        version: 1.2.2
      name: alpha
    defaultChannel: alpha
    packageName: lightbits-operator
    provider:
      name: Lightbits Labs
      url: https://www.lightbitslabs.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Trilio
      provider-url: ""
    name: k8s-triliovault
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: k8s-triliovault-stable.3.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "800Mi",
                      "cpu": "100m"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          containerImage: registry.connect.redhat.com/trilio/k8s-triliovault-operator@sha256:0e3094945427231ecbb884b903dc4d347dfaa73e5a04eb4c5cbaed6fce1cbbb8
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          olm.skipRange: '>=3.0.0 <3.1.3'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          TrilioVault for Kubernetes is an enterprise-grade, cloud-native platform purpose built for data protection and management of Kubernetes applications for IT managers, administrators and developers. TrilioVault supports upstream Kubernetes and OpenShift environments and offers the following features:
            * Application-Centric - protects both data and metadata for Helm, Operator or custom Label based applications.
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any Storage (CSI, NFS, S3), or any Cloud (Private or Public).
            * Application Deployment & Tooling: Helm, Operators, Labels, Prometheus, Fluentd.
          Tutorials
          ------------
          Please click the link below to access the TrilioVault for Kubernetes "How-To" series for deployment, best practice and use-case videos
          <a href="https://www.trilio.io/triliovault-for-kubernetes">TrilioVault for Kubernetes - Tutorials and How-To </a>”
          Licensing
          --------
          Customers can download a 30-day Free Trial or a 10-node Basic Edition at no cost.  You can also connect with the Trilio team for an Enterprise Edition license with no limitations and Premium Support.
          For more information on license plans please vist:
          <a href="www.trilio.io/plans"> Trilio Vault for Kubernetes licensing and plans </a>
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our TrilioVault technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. www.trilio.io and @triliodata on Twitter.
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://www.trilio.io/
        - name: Product Licensing
          url: https://www.trilio.io/plans
        - name: Tutorials
          url: https://www.trilio.io/triliovault-for-kubernetes/
        - name: Support for Free/Basic Users
          url: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: Trilio
        relatedImages:
        - registry.connect.redhat.com/trilio/control-plane@sha256:01e36ed5b07104865f922d2996d2211b2b6000adc90266197d9bac74d908db97
        - registry.connect.redhat.com/trilio/datamover@sha256:c7bc15f8217899ed73a812d278eb118633edbee1bf284132054b6f9ca2afd801
        - registry.connect.redhat.com/trilio/event-stack@sha256:37c33ae1adddfe739c98fd2b2183c49ec7cfdafc88dec2970ad7c670016ebaac
        - registry.connect.redhat.com/trilio/k8s-triliovault-operator@sha256:0e3094945427231ecbb884b903dc4d347dfaa73e5a04eb4c5cbaed6fce1cbbb8
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:e80f87f289ea944a78b5c38df600c0a22fa470a2ce90f0b1e9453cd63586d75d
        - registry.connect.redhat.com/trilio/web@sha256:76865d8afa8059d40810cb94df29420950a7593a40e87d142d771c57b3319e1d
        - registry.connect.redhat.com/trilio/minio@sha256:cee0f976edc79ff9e7a3f3574a7115dd960042241f3ed5b4636240ad609f9bca
        - registry.connect.redhat.com/trilio/dex@sha256:b6331cf3cb3a6a66d9b9ea639cda3c2559fbf1f92f7174032352c1c7bb5176d9
        - registry.connect.redhat.com/trilio/nats@sha256:47396bfcff3e65efb3410fa8369f11f20d794ab543f9ada87b451448b1813178
        - registry.connect.redhat.com/trilio/trilio-webhook-init@sha256:c45e9b6b75862451d873d3eba29d6bd11cafc64823855f82ccb8c0b3d779ebb0
        version: 3.1.3
      entries:
      - name: k8s-triliovault-stable.3.1.3
        version: 3.1.3
      - name: k8s-triliovault-stable.3.1.2
        version: 3.1.2
      - name: k8s-triliovault-stable.3.1.1
        version: 3.1.1
      - name: k8s-triliovault-stable.3.1.0
        version: 3.1.0
      name: 3.1.x
    - currentCSV: k8s-triliovault-stable.4.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "800Mi",
                      "cpu": "100m"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:69871613ceecefff7f691f21bb0b9147236af5a5dc2c7b36ad5e0cd8551f0e6a
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <4.0.5'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.20.0
        provider:
          name: Trilio
        relatedImages:
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:bddfd4ebd973089f7446cb16ed9668d418f91c3907a5ede22052be4ccbea6d0c
        - quay.io/triliodata/event-stack@sha256:c793418df5a1fc1a49f629d335f4684d9cde1a5f2b462f7c9483ffba904456d2
        - quay.io/triliodata/web@sha256:20de1a2f9477ad238bf24f48c8c16a38521c3a86164f2eb6b10d20f09839016e
        - quay.io/triliodata/dex@sha256:b4b2372fd03be586b9ff8cd269b9001797d813a34155ab37de31a44fe3cab1ea
        - quay.io/triliodata/k8s-triliovault-operator@sha256:69871613ceecefff7f691f21bb0b9147236af5a5dc2c7b36ad5e0cd8551f0e6a
        - quay.io/triliodata/operator-webhook-init@sha256:aa85b787f7f37a71e909f049d2abdda746cdd0627e2f74aaf7476d5e5a7f4401
        - quay.io/triliodata/control-plane@sha256:53368a72a60a38d3ce4293236a841346da6da2380ffd2525e5ffdb8dbcf11c7f
        - quay.io/triliodata/datamover@sha256:e6848d94ba9f81843bde882a030b0f2556aae4bf16d79e2c5b199417cf626c85
        - quay.io/triliodata/nats@sha256:e6723595bcc5674b6201091d45d711d29a5cd1421c8b97c76cf00e468379fddf
        version: 4.0.5
      entries:
      - name: k8s-triliovault-stable.4.0.5
        version: 4.0.5
      - name: k8s-triliovault-stable.4.0.4
        version: 4.0.4
      - name: k8s-triliovault-stable.4.0.3
        version: 4.0.3
      - name: k8s-triliovault-stable.4.0.2
        version: 4.0.2
      - name: k8s-triliovault-stable.4.0.1
        version: 4.0.1
      - name: k8s-triliovault-stable.4.0.0
        version: 4.0.0
      name: 4.0.x
    - currentCSV: k8s-triliovault-stable.5.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "800Mi",
                      "cpu": "100m"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:8d582842dbef1c64bbe3b0ce5eeb64790910bdc0416c5e5561557642dede7022
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <5.0.4'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.20.0
        provider:
          name: Trilio
        relatedImages:
        - quay.io/triliodata/k8s-triliovault-operator@sha256:8d582842dbef1c64bbe3b0ce5eeb64790910bdc0416c5e5561557642dede7022
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:b31ebfab28ec75c0d7110d6f01e3b26fd973c36013308e12f69584ff38ab3779
        - quay.io/triliodata/control-plane@sha256:e60ef0a2c7a5b7879c9718e9a14c223f5290b4710b598fae19466a7558484824
        - quay.io/triliodata/datamover@sha256:104bdca9513c78f81c4340e9a3219df0a3bc8a5b026e4a252363a7e2c10977ba
        - quay.io/triliodata/event-stack@sha256:859535e19e0ebebc8261c649c2446f8ca5fe4b4e5b6236e69b780dcc0d0bb5b9
        - quay.io/triliodata/web@sha256:04c4baadae9c05f4add098ff62774d00102d56581e261626840d17f74effe438
        - quay.io/triliodata/dex@sha256:b4b2372fd03be586b9ff8cd269b9001797d813a34155ab37de31a44fe3cab1ea
        - quay.io/triliodata/nats@sha256:e6723595bcc5674b6201091d45d711d29a5cd1421c8b97c76cf00e468379fddf
        - quay.io/triliodata/operator-webhook-init@sha256:ffcc55e85f884b884947b73fa7d2fb257704ff70ccd7f2dc37d07e02292abed6
        version: 5.0.4
      entries:
      - name: k8s-triliovault-stable.5.0.4
        version: 5.0.4
      - name: k8s-triliovault-stable.5.0.3
        version: 5.0.3
      - name: k8s-triliovault-stable.5.0.2
        version: 5.0.2
      - name: k8s-triliovault-stable.5.0.1
        version: 5.0.1
      - name: k8s-triliovault-stable.5.0.0
        version: 5.0.0
      name: 5.0.x
    - currentCSV: k8s-triliovault-stable.5.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "2Gi",
                      "cpu": "1"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:bdf9407e70ee6425ea9408d6a4b0d85ec1890084b81cf58669c7f0e5725fddf8
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <5.1.2'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.20.0
        provider:
          name: Trilio
        relatedImages:
        - quay.io/triliodata/k8s-triliovault-operator@sha256:bdf9407e70ee6425ea9408d6a4b0d85ec1890084b81cf58669c7f0e5725fddf8
        - quay.io/triliodata/control-plane@sha256:68964e8116f14643c213003a046e5969eb69f53f4bb034852f5b5c1f3447f3e3
        - quay.io/triliodata/filerecovery-vm-ssh-server@sha256:5b8af222755347e64a2362ed7cf0ef0a956364395efdfa99c5181c3432e6452a
        - quay.io/triliodata/filerecovery@sha256:4708c98fb1168d6d2a61f76f670b5918eed765c827de27e0381a428fa1a1f36f
        - quay.io/triliodata/nats@sha256:3bcf9d2e94f118822077c25445118cc8f22479ffadc8c1dcec7ea995bec9f33c
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:3a8747ca2bbb998672051d3d8f5422b205cea02dd56b07138a67ae80a6453ece
        - quay.io/triliodata/datamover@sha256:6116b4c7ca929396f63af887f8923cb3d52226be97bc895cecfc2777eabbd220
        - quay.io/triliodata/dex@sha256:13ef89a9edcfb497a284df11518f30fc9aca37cf963c6cf6cfb574a00ec5d72f
        - quay.io/triliodata/web@sha256:eede3ee96e8b13565597ecd0d99e69feb6fa2cd819ad7d69e110d86c0ff930b1
        - quay.io/triliodata/event-stack@sha256:9a2e454b80ab5b8e768b4b87835700122eb573c2511beae6a9a95e65af25c09f
        version: 5.1.2
      entries:
      - name: k8s-triliovault-stable.5.1.2
        version: 5.1.2
      - name: k8s-triliovault-stable.5.1.1
        version: 5.1.1
      - name: k8s-triliovault-stable.5.1.0
        version: 5.1.0
      name: 5.1.x
    - currentCSV: k8s-triliovault-stable.5.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logConfig": {
                    "logLevel": "Info"
                  },
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "2Gi",
                      "cpu": "1"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:acc4df98d8720fb41c6650e82825105f9a8785f394851ef866b26b217842d4db
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <5.2.0'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Trilio
        relatedImages:
        - quay.io/triliodata/dex@sha256:169607295b90018c16a864943b473a3ffe94b7c41ce67e12b9e810c2daf2c9df
        - quay.io/triliodata/event-stack@sha256:c4190db6212b9ae33cec9fe0d37d49def0df1695dc23d8bf6674c4e1dff374a4
        - quay.io/triliodata/k8s-triliovault-operator@sha256:acc4df98d8720fb41c6650e82825105f9a8785f394851ef866b26b217842d4db
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:5e069f7241b8418a54da73cb838395ae6af21e5d1e008917ddae55331d5a4bdc
        - quay.io/triliodata/control-plane@sha256:f7d596ad5101354d43ed6c0c96dca9fd94705c757008deece013fa3b6fcd8fc4
        - quay.io/triliodata/datamover@sha256:beffcf6d6c0057f480faf2bc05a83b0bc4be00edaac26ee9706dc79a72a95e05
        - quay.io/triliodata/filerecovery-vm-ssh-server@sha256:05865888f267cca29133de733f5bb4f811fc0923b395047ba0a29c6034346f19
        - quay.io/triliodata/filerecovery@sha256:ada85e6b17f88e7cc49e7356d04ac90cf11c12747f19a3c72bb9f94cb90e768e
        - quay.io/triliodata/nats@sha256:35366081d4e81199b2d3e9b933d2594283c10c1582d7676dffa90953b2f0e9a1
        - quay.io/triliodata/web@sha256:cb1ac887e13a8e7c9e091f9ae6dac967237a55fa01ef7cb485f90e7a58035f0c
        version: 5.2.0
      entries:
      - name: k8s-triliovault-stable.5.2.0
        version: 5.2.0
      name: 5.2.x
    defaultChannel: 5.2.x
    packageName: k8s-triliovault
    provider:
      name: Trilio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudfront-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudfront-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
                "kind": "CachePolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
                "kind": "Distribution",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
                "kind": "Function",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudfront-controller:1.3.0
          createdAt: "2025-11-29T04:46:46Z"
          description: AWS CloudFront controller is a service controller for managing
            CloudFront resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CachePolicy represents the state of an AWS cloudfront CachePolicy
              resource.
            displayName: CachePolicy
            kind: CachePolicy
            name: cachepolicies.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: Distribution represents the state of an AWS cloudfront Distribution
              resource.
            displayName: Distribution
            kind: Distribution
            name: distributions.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: Function represents the state of an AWS cloudfront Function
              resource.
            displayName: Function
            kind: Function
            name: functions.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: OriginAccessControl represents the state of an AWS cloudfront
              OriginAccessControl resource.
            displayName: OriginAccessControl
            kind: OriginAccessControl
            name: originaccesscontrols.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: OriginRequestPolicy represents the state of an AWS cloudfront
              OriginRequestPolicy resource.
            displayName: OriginRequestPolicy
            kind: OriginRequestPolicy
            name: originrequestpolicies.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: ResponseHeadersPolicy represents the state of an AWS cloudfront
              ResponseHeadersPolicy resource.
            displayName: ResponseHeadersPolicy
            kind: ResponseHeadersPolicy
            name: responseheaderspolicies.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: VPCOrigin represents the state of an AWS cloudfront VPCOrigin
              resource.
            displayName: VPCOrigin
            kind: VPCOrigin
            name: vpcorigins.cloudfront.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon CloudFront resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudFront**

          Amazon CloudFront is a web service that speeds up distribution of your static and dynamic web content, such as .html, .css, .js, and image files, to your users. CloudFront delivers your content through a worldwide network of data centers called edge locations.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon CloudFront
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudfront
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudFront Developer Resources
          url: https://aws.amazon.com/cloudfront/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudfront maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/cloudfront-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-cloudfront-controller@sha256:9eab71b0aa3305a6cd40801523c750daf181b70c002630ef481d17a8c18fa2c3
        version: 1.3.0
      entries:
      - name: ack-cloudfront-controller.v1.3.0
        version: 1.3.0
      - name: ack-cloudfront-controller.v1.2.2
        version: 1.2.2
      - name: ack-cloudfront-controller.v1.2.1
        version: 1.2.1
      - name: ack-cloudfront-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudfront-controller.v1.1.6
        version: 1.1.6
      - name: ack-cloudfront-controller.v1.1.4
        version: 1.1.4
      - name: ack-cloudfront-controller.v1.1.3
        version: 1.1.3
      - name: ack-cloudfront-controller.v1.1.2
        version: 1.1.2
      - name: ack-cloudfront-controller.v1.1.1
        version: 1.1.1
      - name: ack-cloudfront-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudfront-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudfront-controller.v1.0.9
        version: 1.0.9
      - name: ack-cloudfront-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudfront-controller.v1.0.7
        version: 1.0.7
      - name: ack-cloudfront-controller.v1.0.6
        version: 1.0.6
      - name: ack-cloudfront-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudfront-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudfront-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudfront-controller.v0.0.15
        version: 0.0.15
      - name: ack-cloudfront-controller.v0.0.14
        version: 0.0.14
      - name: ack-cloudfront-controller.v0.0.13
        version: 0.0.13
      - name: ack-cloudfront-controller.v0.0.12
        version: 0.0.12
      - name: ack-cloudfront-controller.v0.0.11
        version: 0.0.11
      - name: ack-cloudfront-controller.v0.0.10
        version: 0.0.10
      - name: ack-cloudfront-controller.v0.0.9
        version: 0.0.9
      - name: ack-cloudfront-controller.v0.0.8
        version: 0.0.8
      - name: ack-cloudfront-controller.v0.0.6
        version: 0.0.6
      - name: ack-cloudfront-controller.v0.0.5
        version: 0.0.5
      - name: ack-cloudfront-controller.v0.0.4
        version: 0.0.4
      - name: ack-cloudfront-controller.v0.0.3
        version: 0.0.3
      - name: ack-cloudfront-controller.v0.0.2
        version: 0.0.2
      - name: ack-cloudfront-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudfront-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio
      provider-url: ""
    name: apicurio-registry
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-registry-operator.v1.1.3-v2.6.4.final
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-mem"
                },
                "spec": {
                  "configuration": {
                    "persistence": "mem"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/apicurio/apicurio-registry-operator:1.1.3
          createdAt: "2024-09-17"
          description: Deploy and manage Apicurio Registry on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Apicurio/apicurio-registry-operator
          support: Apicurio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry represents an Apicurio Registry instance
            displayName: Apicurio Registry
            kind: ApicurioRegistry
            name: apicurioregistries.registry.apicur.io
            version: v1
        description: |
          ## Apicurio Registry

          Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Provides a REST API and web UI to manage the artifacts and artifact meta-data
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL, in-memory
          - Compatible with Confluent and IBM APIs
          - Runs on a lightweight Quarkus platform
          - Includes Maven plugin to integrate with Maven based builds

          ## Apicurio Registry Operator

          Provides a quick and easy way to deploy and manage Apicurio Registry on Kubernetes.

          **Features**
          - Supports installation and configuration of the Registry for all storage options
          - Easily perform a rolling upgrade of Apicurio Registry

          ## Prerequisites

          This operator does not deploy storage for Apicurio Registry. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Apicurio Registry Operator is licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry-operator/blob/main/LICENSE)
        displayName: Apicurio Registry Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        - name: Twitter
          url: https://twitter.com/Apicurio
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Apicurio
        relatedImages:
        - quay.io/apicurio/apicurio-registry-operator:1.1.3
        - quay.io/community-operator-pipeline-prod/apicurio-registry@sha256:7087ec1377c2612edf3b8a76f6e115d66c3ec2b4b20f5d8374638d6bf0037e93
        version: 1.1.3-v2.6.4.final
      entries:
      - name: apicurio-registry-operator.v1.1.3-v2.6.4.final
        version: 1.1.3-v2.6.4.final
      - name: apicurio-registry-operator.v1.1.2-v2.5.11.final
        version: 1.1.2-v2.5.11.final
      - name: apicurio-registry-operator.v1.1.1-v2.5.9.final
        version: 1.1.1-v2.5.9.final
      - name: apicurio-registry-operator.v1.1.0-v2.4.12.final
        version: 1.1.0-v2.4.12.final
      - name: apicurio-registry-operator.v1.0.0-v2.0.0.final
        version: 1.0.0-v2.0.0.final
      name: 2.x
    defaultChannel: 2.x
    packageName: apicurio-registry
    provider:
      name: Apicurio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: machine-deletion-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: machine-deletion-remediation.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediation",
                "metadata": {
                  "name": "machinedeletionremediation-sample"
                },
                "spec": {},
                "status": {
                  "conditions": [
                    {
                      "reason": "RemediationFinished",
                      "status": false,
                      "type": "Processing"
                    },
                    {
                      "reason": "RemediationFinished",
                      "status": true,
                      "type": "Succeeded"
                    },
                    {
                      "reason": "MachineDeletionOnBareMetalProviderReason",
                      "status": false,
                      "type": "PermanentNodeDeletionExpected"
                    }
                  ]
                }
              },
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediationTemplate",
                "metadata": {
                  "name": "machinedeletionremediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: ""
          createdAt: "2025-11-11 13:38:42"
          description: Machine Deletion Remediation operator for reprovisioning unhealthy
            nodes using the Machine API.
          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: "true"
          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.skipRange: '>=0.4.0 <0.5.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/machine-deletion-remediation
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MachineDeletionRemediation is the Schema for the machinedeletionremediations
              API
            displayName: Machine Deletion Remediation
            kind: MachineDeletionRemediation
            name: machinedeletionremediations.machine-deletion-remediation.medik8s.io
            version: v1alpha1
          - description: MachineDeletionRemediationTemplate is the Schema for the
              machinedeletionremediationtemplates API
            displayName: Machine Deletion Remediation Template
            kind: MachineDeletionRemediationTemplate
            name: machinedeletionremediationtemplates.machine-deletion-remediation.medik8s.io
            version: v1alpha1
        description: |
          Machine Deletion Remediation (MDR) is a remediator designed to reprovision unhealthy
          nodes using the Machine API. MDR can be used together with NodeHealthCheck (NHC),
          which detects the unhealthy Node and creates the Custom Resource for MDR.

          # How it works
          MDR follows the annotation on the Node to the associated Machine object, confirms
          that it has an owning controller (e.g. MachineSetController), that will recreate the
          Machine once deleted, and then proceeds with deleting the Machine.

          # How to use MDR with NHC
          To use MDR as remediation mechanism for NHC, it needs to be configured with the
          following steps:

          - Create the MDR Template CR
          - Modify NHC's `.spec.remediationTemplate` to use MDR as it's remediator

          see https://github.com/medik8s/machine-deletion-remediation#readme for configuration examples.
        displayName: Machine Deletion Remediation operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - machine
        - deletion
        - remediation
        - mdr
        links:
        - name: Machine Deletion Remediation
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance/index
        - name: Source Code
          url: https://github.com/medik8s/machine-deletion-remediation
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/workload-availability/machine-deletion-remediation-operator-bundle@sha256:f751650b9213f599d0cca1fcc08b5841c8d612a9e8499b8fd74485ecdc2565cc
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/machine-deletion-remediation-rhel9-operator@sha256:687f6d6b71aab8e0f5db32c9e11c2a7305c6a5746819bd54c38c584b27d6d06a
        version: 0.5.0
      entries:
      - name: machine-deletion-remediation.v0.5.0
        version: 0.5.0
      - name: machine-deletion-remediation.v0.4.1
        version: 0.4.1
      - name: machine-deletion-remediation.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: machine-deletion-remediation
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: F5 NGINX
      provider-url: https://www.f5.com/go/product/welcome-to-nginx
    name: nginx-gateway-fabric
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nginx-gateway-fabric.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "gateway.nginx.org/v1alpha1",
                "kind": "NginxGatewayFabric",
                "metadata": {
                  "name": "nginxgatewayfabric-sample"
                },
                "spec": {
                  "certGenerator": {
                    "affinity": {},
                    "agentTLSSecretName": "agent-tls",
                    "annotations": {},
                    "nodeSelector": {},
                    "overwrite": false,
                    "serverTLSSecretName": "server-tls",
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "ttlSecondsAfterFinished": 30
                  },
                  "clusterDomain": "cluster.local",
                  "gateways": [],
                  "nginx": {
                    "autoscaling": {
                      "enable": false
                    },
                    "config": {},
                    "container": {
                      "hostPorts": [],
                      "lifecycle": {},
                      "readinessProbe": {},
                      "resources": {},
                      "volumeMounts": []
                    },
                    "debug": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/nginx/nginx-gateway-fabric/nginx",
                      "tag": "2.2.2-ubi"
                    },
                    "imagePullSecret": "",
                    "imagePullSecrets": [],
                    "kind": "deployment",
                    "nginxOneConsole": {
                      "dataplaneKeySecretName": "",
                      "endpointHost": "agent.connect.nginx.com",
                      "endpointPort": 443,
                      "skipVerify": false
                    },
                    "patches": [],
                    "plus": false,
                    "pod": {},
                    "replicas": 1,
                    "service": {
                      "externalTrafficPolicy": "Local",
                      "loadBalancerClass": "",
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": [],
                      "patches": [],
                      "type": "LoadBalancer"
                    },
                    "usage": {
                      "caSecretName": "",
                      "clientSSLSecretName": "",
                      "endpoint": "",
                      "enforceInitialReport": true,
                      "resolver": "",
                      "secretName": "nplus-license",
                      "skipVerify": false
                    }
                  },
                  "nginxGateway": {
                    "affinity": {},
                    "autoscaling": {
                      "enable": false
                    },
                    "config": {
                      "logging": {
                        "level": "info"
                      }
                    },
                    "configAnnotations": {},
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "gatewayClassAnnotations": {},
                    "gatewayClassName": "nginx",
                    "gatewayControllerName": "gateway.nginx.org/nginx-gateway-controller",
                    "gwAPIExperimentalFeatures": {
                      "enable": false
                    },
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/nginx/nginx-gateway-fabric",
                      "tag": "2.2.2-ubi"
                    },
                    "kind": "deployment",
                    "labels": {},
                    "leaderElection": {
                      "enable": true,
                      "lockName": ""
                    },
                    "lifecycle": {},
                    "metrics": {
                      "enable": true,
                      "port": 9113,
                      "secure": false
                    },
                    "name": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "productTelemetry": {
                      "enable": true
                    },
                    "readinessProbe": {
                      "enable": true,
                      "initialDelaySeconds": 3,
                      "port": 8081
                    },
                    "replicas": 1,
                    "resources": {},
                    "service": {
                      "annotations": {},
                      "labels": {}
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "imagePullSecret": "",
                      "imagePullSecrets": [],
                      "name": ""
                    },
                    "snippetsFilters": {
                      "enable": false
                    },
                    "terminationGracePeriodSeconds": 30,
                    "tolerations": [],
                    "topologySpreadConstraints": []
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "true"
          com.redhat.openshift.versions: v4.19
          containerImage: ghcr.io/nginx/nginx-gateway-fabric/operator@sha256:726c4744ebb1033b5d81fc6c7d5d1e29680461b839610846245bba092843a152
          createdAt: "2025-12-11T09:36:30Z"
          description: The NGINX Gateway Fabric is a Kubernetes Gateway API implementation
            that provides application traffic management for modern cloud-native applications
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: nginx-gateway
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/nginx/nginx-gateway-fabric
          support: NGINX Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NginxGatewayFabric
            name: nginxgatewayfabrics.gateway.nginx.org
            version: v1alpha1
        description: NGINX Gateway Fabric provides an implementation of the Gateway
          API using NGINX as the data plane
        displayName: NGINX Gateway Fabric
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nginx
        - gateway
        - kubernetes
        - networking
        links:
        - name: Nginx Gateway Fabric
          url: https://github.com/nginx/nginx-gateway-fabric
        maintainers:
        - email: kubernetes@nginx.com
          name: F5NGINX
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: F5 NGINX
          url: https://www.f5.com/go/product/welcome-to-nginx
        relatedImages:
        - ghcr.io/nginx/nginx-gateway-fabric/operator@sha256:726c4744ebb1033b5d81fc6c7d5d1e29680461b839610846245bba092843a152
        - registry.connect.redhat.com/nginx/nginx-gateway-fabric-operator-bundle@sha256:94bd7123cec4eec21fc395df493c2a34415c214f075e0011439c5056f6ce6ae2
        version: 1.0.2
      entries:
      - name: nginx-gateway-fabric.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: nginx-gateway-fabric
    provider:
      name: F5 NGINX
      url: https://www.f5.com/go/product/welcome-to-nginx
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-apigatewayv2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-apigatewayv2-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Deployment",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "API",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Authorizer",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Route",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Stage",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "VPCLink",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/apigatewayv2-controller:1.2.0
          createdAt: "2025-11-29T05:41:40Z"
          description: AWS API Gateway v2 controller is a service controller for managing
            API Gateway v2 resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIMapping represents the state of an AWS apigatewayv2 APIMapping
              resource.
            displayName: APIMapping
            kind: APIMapping
            name: apimappings.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: API represents the state of an AWS apigatewayv2 API resource.
            displayName: API
            kind: API
            name: apis.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Authorizer represents the state of an AWS apigatewayv2 Authorizer
              resource.
            displayName: Authorizer
            kind: Authorizer
            name: authorizers.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Deployment represents the state of an AWS apigatewayv2 Deployment
              resource.
            displayName: Deployment
            kind: Deployment
            name: deployments.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: DomainName represents the state of an AWS apigatewayv2 DomainName
              resource.
            displayName: DomainName
            kind: DomainName
            name: domainnames.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Integration represents the state of an AWS apigatewayv2 Integration
              resource.
            displayName: Integration
            kind: Integration
            name: integrations.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Route represents the state of an AWS apigatewayv2 Route resource.
            displayName: Route
            kind: Route
            name: routes.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Stage represents the state of an AWS apigatewayv2 Stage resource.
            displayName: Stage
            kind: Stage
            name: stages.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: VPCLink represents the state of an AWS apigatewayv2 VPCLink
              resource.
            displayName: VPCLink
            kind: VPCLink
            name: vpclinks.apigatewayv2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon API Gateway v2 resources in AWS from within your Kubernetes cluster. Currently only HTTP APIs are supported. WebSocket API support will be added soon. For HTTP APIs, DomainName and APIMapping resource support will be added soon.

          **About Amazon API Gateway v2**

          Amazon API Gateway is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale. APIs act as the "front door" for applications to access data, business logic, or functionality from your backend services. Using API Gateway, you can create RESTful APIs and WebSocket APIs that enable real-time two-way communication applications. API Gateway supports containerized and serverless workloads, as well as web applications.

          API Gateway handles all the tasks involved in accepting and processing up to hundreds of thousands of concurrent API calls, including traffic management, CORS support, authorization and access control, throttling, monitoring, and API version management. API Gateway has no minimum fees or startup costs. You pay for the API calls you receive and the amount of data transferred out and, with the API Gateway tiered pricing model, you can reduce your cost as your API usage scales.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon API Gateway v2
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apigatewayv2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon API Gateway v2 Developer Resources
          url: https://aws.amazon.com/api-gateway/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: api gateway maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/apigatewayv2-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-apigatewayv2-controller@sha256:1484e3b2d292a0f844b37510aee801631a3f3784ace790910e1a7bc9ba28b336
        version: 1.2.0
      entries:
      - name: ack-apigatewayv2-controller.v1.2.0
        version: 1.2.0
      - name: ack-apigatewayv2-controller.v1.1.1
        version: 1.1.1
      - name: ack-apigatewayv2-controller.v1.1.0
        version: 1.1.0
      - name: ack-apigatewayv2-controller.v1.0.30
        version: 1.0.30
      - name: ack-apigatewayv2-controller.v1.0.29
        version: 1.0.29
      - name: ack-apigatewayv2-controller.v1.0.28
        version: 1.0.28
      - name: ack-apigatewayv2-controller.v1.0.26
        version: 1.0.26
      - name: ack-apigatewayv2-controller.v1.0.25
        version: 1.0.25
      - name: ack-apigatewayv2-controller.v1.0.23
        version: 1.0.23
      - name: ack-apigatewayv2-controller.v1.0.21
        version: 1.0.21
      - name: ack-apigatewayv2-controller.v1.0.17
        version: 1.0.17
      - name: ack-apigatewayv2-controller.v1.0.16
        version: 1.0.16
      - name: ack-apigatewayv2-controller.v1.0.15
        version: 1.0.15
      - name: ack-apigatewayv2-controller.v1.0.13
        version: 1.0.13
      - name: ack-apigatewayv2-controller.v1.0.12
        version: 1.0.12
      - name: ack-apigatewayv2-controller.v1.0.7
        version: 1.0.7
      - name: ack-apigatewayv2-controller.v1.0.6
        version: 1.0.6
      - name: ack-apigatewayv2-controller.v1.0.5
        version: 1.0.5
      - name: ack-apigatewayv2-controller.v1.0.4
        version: 1.0.4
      - name: ack-apigatewayv2-controller.v1.0.3
        version: 1.0.3
      - name: ack-apigatewayv2-controller.v1.0.2
        version: 1.0.2
      - name: ack-apigatewayv2-controller.v1.0.0
        version: 1.0.0
      - name: ack-apigatewayv2-controller.v0.1.6
        version: 0.1.6
      - name: ack-apigatewayv2-controller.v0.1.4
        version: 0.1.4
      - name: ack-apigatewayv2-controller.v0.1.3
        version: 0.1.3
      - name: ack-apigatewayv2-controller.v0.1.2
        version: 0.1.2
      - name: ack-apigatewayv2-controller.v0.1.1
        version: 0.1.1
      - name: ack-apigatewayv2-controller.v0.1.0
        version: 0.1.0
      - name: ack-apigatewayv2-controller.v0.0.22
        version: 0.0.22
      - name: ack-apigatewayv2-controller.v0.0.21
        version: 0.0.21
      - name: ack-apigatewayv2-controller.v0.0.20
        version: 0.0.20
      - name: ack-apigatewayv2-controller.v0.0.19
        version: 0.0.19
      - name: ack-apigatewayv2-controller.v0.0.18
        version: 0.0.18
      - name: ack-apigatewayv2-controller.v0.0.17
        version: 0.0.17
      - name: ack-apigatewayv2-controller.v0.0.16
        version: 0.0.16
      - name: ack-apigatewayv2-controller.v0.0.15
        version: 0.0.15
      - name: ack-apigatewayv2-controller.v0.0.14
        version: 0.0.14
      - name: ack-apigatewayv2-controller.v0.0.13
        version: 0.0.13
      - name: ack-apigatewayv2-controller.v0.0.12
        version: 0.0.12
      - name: ack-apigatewayv2-controller.v0.0.11
        version: 0.0.11
      - name: ack-apigatewayv2-controller.v0.0.10
        version: 0.0.10
      - name: ack-apigatewayv2-controller.v0.0.9
        version: 0.0.9
      name: alpha
    defaultChannel: alpha
    packageName: ack-apigatewayv2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: KEDA Community
      provider-url: ""
    name: keda
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keda.v2.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "KedaController",
                "metadata": {
                  "name": "keda",
                  "namespace": "keda"
                },
                "spec": {
                  "watchNamespace": "",
                  "operator": {
                    "logLevel": "info",
                    "logEncoder": "console"
                  },
                  "metricsServer": {
                    "logLevel": "0"
                  },
                  "serviceAccount": {}
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledJob",
                "metadata": {
                  "name": "scaledjob-sample"
                },
                "spec": {
                  "failedJobsHistoryLimit": 5,
                  "jobTargetRef": {
                    "activeDeadlineSeconds": 600,
                    "backoffLimit": 6,
                    "completions": 1,
                    "parallelism": 1,
                    "template": null
                  },
                  "maxReplicaCount": 100,
                  "pollingInterval": 30,
                  "successfulJobsHistoryLimit": 5,
                  "triggers": [
                    {
                      "metadata": {
                        "property": "examle-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledObject",
                "metadata": {
                  "name": "example-scaledobject"
                },
                "spec": {
                  "cooldownPeriod": 300,
                  "maxReplicaCount": 100,
                  "minReplicaCount": 0,
                  "pollingInterval": 30,
                  "scaleTargetRef": {
                    "name": "example-deployment"
                  },
                  "triggers": [
                    {
                      "metadata": {
                        "property": "examle-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "TriggerAuthentication",
                "metadata": {
                  "name": "example-triggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "exmaple-secret-parameter"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ClusterTriggerAuthentication",
                "metadata": {
                  "name": "example-clustertriggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "exmaple-secret-parameter"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Cloud Provider
          certified: "false"
          containerImage: ghcr.io/kedacore/keda-olm-operator:2.7.1
          createdAt: "2022-05-11T00:00:00.000Z"
          description: '[DEPRECATED] Use Custom Metrics Autoscaler Operator instead'
          operatorframework.io/suggested-namespace: keda
          operators.operatorframework.io/builder: operator-sdk-v1.1.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/kedacore/keda-olm-operator
          support: KEDA Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |
              Represents an installation of a particular version of KEDA Controller.
            displayName: KedaController
            kind: KedaController
            name: kedacontrollers.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your jobs and what the triggers
            displayName: ScaledJob
            kind: ScaledJob
            name: scaledjobs.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your application and what the
              triggers are
            displayName: ScaledObject
            kind: ScaledObject
            name: scaledobjects.keda.sh
            version: v1alpha1
          - description: Describes authentication parameters
            displayName: TriggerAuthentication
            kind: TriggerAuthentication
            name: triggerauthentications.keda.sh
            version: v1alpha1
          - description: Describes cluster wide authentication parameters
            displayName: ClusterTriggerAuthentication
            kind: ClusterTriggerAuthentication
            name: clustertriggerauthentications.keda.sh
            version: v1alpha1
        description: "## Deprecated\n This KEDA community operator is deprecated,
          please use `Custom Metrics Autoscaler` Operator instead.\n## About the managed
          application\nKEDA is a Kubernetes-based event driven autoscaler.  KEDA can
          monitor event sources like Kafka, RabbitMQ, or cloud event sources and feed
          the metrics from those sources into the Kubernetes horizontal pod autoscaler.
          \ With KEDA, you can have event driven and serverless scale of deployments
          within any Kubernetes cluster.\n## About this Operator\nThe KEDA Operator
          deploys and manages installation of KEDA Controller in the cluster. Install
          this operator and follow installation instructions on how to install KEDA
          in you cluster.\n\n## Prerequisites for enabling this Operator\nPlease note
          that you can not run both KEDA 1.x and 2.x on the same Kubernetes cluster.
          You need to uninstall KEDA 1.x first, in order to install and use KEDA 2.x.\n\nDon't
          forget to uninstall KEDA v1 CRDs as well, to ensure that, please run:\n\n```
          oc delete crd scaledobjects.keda.k8s.io ```\n\n``` oc delete crd triggerauthentications.keda.k8s.io
          \ ```\n## How to install KEDA in the cluster\nThe installation of KEDA is
          triggered by the creation of `KedaController` resource, please refer to
          [KedaController Example](https://github.com/kedacore/keda-olm-operator#kedacontroller-spec)
          for more deatils on available options.\n\nOnly resource named `keda` in
          namespace `keda` will trigger the installation, reconfiguration or removal
          of the KEDA Controller resource.\n\nThere could be only one KEDA Controller
          in the cluster. \n"
        displayName: '[DEPRECATED] KEDA'
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - keda
        - scaling
        - event
        links:
        - name: Homepage
          url: https://keda.sh
        - name: Source Code
          url: https://github.com/kedacore/keda
        - name: Slack Channel
          url: https://kubernetes.slack.com/messages/CKZJ36A5D
        maintainers:
        - email: cncf-keda-maintainers@lists.cncf.io
          name: KEDA Community
        maturity: deprecated
        minKubeVersion: 1.17.0
        provider:
          name: KEDA Community
        relatedImages:
        - quay.io/openshift-community-operators/keda@sha256:50816f675c76d36dbc62846579150477018ef87df325861751f3fc02a70c8781
        - ghcr.io/kedacore/keda-olm-operator:2.7.1
        version: 2.7.1
      entries:
      - name: keda.v2.7.1
        version: 2.7.1
      - name: keda.v2.6.1
        version: 2.6.1
      - name: keda.v2.6.0
        version: 2.6.0
      - name: keda.v2.5.0
        version: 2.5.0
      - name: keda.v2.4.0
        version: 2.4.0
      - name: keda.v2.3.0
        version: 2.3.0
      - name: keda.v2.2.0
        version: 2.2.0
      - name: keda.v2.1.0
        version: 2.1.0
      - name: keda.v2.0.0
        version: 2.0.0
      name: alpha
    defaultChannel: alpha
    packageName: keda
    provider:
      name: KEDA Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-airflow-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: airflow-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/airflow-operator@sha256:e7090465bfcce12ce945289421223bdbbc0597dfc816dac95cbafb286454fef8
          description: Stackable Operator for Apache Airflow
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/airflow-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for AirflowClusterSpec via `CustomResource`
            displayName: airflowclusters.airflow.stackable.tech
            kind: AirflowCluster
            name: airflowclusters.airflow.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Airflow
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - airflow
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/airflow-operator@sha256:e7090465bfcce12ce945289421223bdbbc0597dfc816dac95cbafb286454fef8
        - registry.connect.redhat.com/stackable/stackable-apache-airflow-operator@sha256:983b65960949b01b01a60f23271f3072c048c5fa2e23ab3303fe28ebafb40576
        version: 25.11.0
      entries:
      - name: airflow-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-airflow-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Intel® Corporation
      provider-url: https://intel.com
    name: intel-device-plugins-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: intel-device-plugins-operator.v0.32.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "DsaDevicePlugin",
                "metadata": {
                  "name": "dsadeviceplugin-sample"
                },
                "spec": {
                  "image": "registry.connect.redhat.com/intel/intel-dsa-plugin@sha256:2742a13279cc3f301daa09b6389517024530f658d4e1dd13db495cc94d9ba57c",
                  "initImage": "registry.connect.redhat.com/intel/intel-idxd-config-initcontainer@sha256:b74dc43fa81ce14ea97f20ff6b2f726039f6309fdd868d5f45d751d0a8662cc1",
                  "logLevel": 4,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/dsa": "true"
                  },
                  "sharedDevNum": 10
                }
              },
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "GpuDevicePlugin",
                "metadata": {
                  "name": "gpudeviceplugin-sample"
                },
                "spec": {
                  "enableMonitoring": true,
                  "image": "registry.connect.redhat.com/intel/intel-gpu-plugin@sha256:e2c2ce658e78c35c425f16a4f8e85c5f32ce31848d9b53a644a05e7f8b7f71b0",
                  "preferredAllocationPolicy": "none",
                  "logLevel": 4,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gpu": "true"
                  },
                  "sharedDevNum": 1
                }
              },
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "QatDevicePlugin",
                "metadata": {
                  "name": "qatdeviceplugin-sample"
                },
                "spec": {
                  "dpdkDriver": "vfio-pci",
                  "image": "registry.connect.redhat.com/intel/intel-qat-plugin@sha256:8d79dba051b83ec770a4b0fdc3da6ac92264cb19cac8d455b707ed92a6a95d02",
                  "initImage": "registry.connect.redhat.com/intel/intel-qat-initcontainer@sha256:34f0b993ca654ea0b386217cba1a44d5ef3da841b3befc780508f5323e95fa90",
                  "kernelVfDrivers": [
                    "4xxxvf"
                  ],
                  "logLevel": 4,
                  "maxNumDevices": 128,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/qat": "true"
                  }
                }
              },
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "SgxDevicePlugin",
                "metadata": {
                  "name": "sgxdeviceplugin-sample"
                },
                "spec": {
                  "enclaveLimit": 110,
                  "image": "registry.connect.redhat.com/intel/intel-sgx-plugin@sha256:f2c77521c6dae6b4db1896a5784ba8b06a5ebb2a01684184fc90143cfcca7bf4",
                  "logLevel": 4,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/sgx": "true"
                  },
                  "provisionLimit": 110
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Security, AI/Machine Learning
          containerImage: registry.connect.redhat.com/intel/intel-deviceplugin-operator@sha256:5ca1fd11f0ca4e7fb941749c67461c9c66fe9417c9d0f0a9247b6b172b0bcdd5
          description: This operator is a Kubernetes custom controller whose goal
            is to serve the installation and lifecycle management of Intel device
            plugins for Kubernetes.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/intel/intel-technology-enabling-for-openshift
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DsaDevicePlugin is the Schema for the dsadeviceplugins API.
              It represents the DSA device plugin responsible for advertising Intel
              DSA hardware resources to the kubelet.
            displayName: Intel DSA Device Plugin
            kind: DsaDevicePlugin
            name: dsadeviceplugins.deviceplugin.intel.com
            version: v1
          - description: |-
              GpuDevicePlugin is the Schema for the gpudeviceplugins API. It represents
              the GPU device plugin responsible for advertising Intel GPU hardware resources to
              the kubelet.
            displayName: Intel GPU Device Plugin
            kind: GpuDevicePlugin
            name: gpudeviceplugins.deviceplugin.intel.com
            version: v1
          - description: |-
              QatDevicePlugin is the Schema for the qatdeviceplugins API. It represents the QAT device
              plugin responsible for advertising Intel QuickAssist Technology hardware resources
              to the kubelet.
            displayName: Intel QuickAssist Technology Device Plugin
            kind: QatDevicePlugin
            name: qatdeviceplugins.deviceplugin.intel.com
            version: v1
          - description: |-
              SgxDevicePlugin is the Schema for the sgxdeviceplugins API. It represents
              the SGX device plugin responsible for advertising SGX device nodes to
              the kubelet.
            displayName: Intel Software Guard Extensions Device Plugin
            kind: SgxDevicePlugin
            name: sgxdeviceplugins.deviceplugin.intel.com
            version: v1
        description: |
          [Intel Device Plugins for Kubernetes](https://github.com/intel/intel-technology-enabling-for-openshift) is a collection of
          [device plugins](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/) advertising Intel specific hardware resources
          to the kubelet. Currently the operator has basic support for Intel SGX, Intel GPU, Intel QAT and Intel DSA. Intel IAA device plugin will be supported in a future release.
        displayName: Intel Device Plugins Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - fpga
        - qat
        - sgx
        - gpu
        - dsa
        - dlb
        links:
        - name: Intel Device Plugins Operator
          url: https://github.com/intel/intel-technology-enabling-for-openshift
        maintainers:
        - email: martin.xu@intel.com
          name: Martin Xu
        - email: chaitanya.kulkarni@intel.com
          name: Chaitanya kulkarni
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Intel® Corporation
          url: https://intel.com
        relatedImages:
        - registry.connect.redhat.com/intel/intel-device-plugins-operator-bundle@sha256:4a422ca897caeabb9fc3be3dfef3746819868de1674ea61c657cad257fbddf12
        - registry.connect.redhat.com/intel/intel-deviceplugin-operator@sha256:5ca1fd11f0ca4e7fb941749c67461c9c66fe9417c9d0f0a9247b6b172b0bcdd5
        - registry.connect.redhat.com/intel/intel-dsa-plugin@sha256:2742a13279cc3f301daa09b6389517024530f658d4e1dd13db495cc94d9ba57c
        - registry.connect.redhat.com/intel/intel-gpu-plugin@sha256:e2c2ce658e78c35c425f16a4f8e85c5f32ce31848d9b53a644a05e7f8b7f71b0
        - registry.connect.redhat.com/intel/intel-idxd-initcontainer@sha256:b74dc43fa81ce14ea97f20ff6b2f726039f6309fdd868d5f45d751d0a8662cc1
        - registry.connect.redhat.com/intel/intel-qat-initcontainer@sha256:34f0b993ca654ea0b386217cba1a44d5ef3da841b3befc780508f5323e95fa90
        - registry.connect.redhat.com/intel/intel-qat-plugin@sha256:8d79dba051b83ec770a4b0fdc3da6ac92264cb19cac8d455b707ed92a6a95d02
        - registry.connect.redhat.com/intel/intel-sgx-plugin@sha256:f2c77521c6dae6b4db1896a5784ba8b06a5ebb2a01684184fc90143cfcca7bf4
        version: 0.32.1
      entries:
      - name: intel-device-plugins-operator.v0.32.1
        version: 0.32.1
      - name: intel-device-plugins-operator.v0.29.1
        version: 0.29.1
      - name: intel-device-plugins-operator.v0.29.0
        version: 0.29.0
      - name: intel-device-plugins-operator.v0.28.0
        version: 0.28.0
      name: alpha
    defaultChannel: alpha
    packageName: intel-device-plugins-operator
    provider:
      name: Intel® Corporation
      url: https://intel.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: opdev
      provider-url: https://opdev.github.io/
    name: loki-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: loki-helm-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.example.com/v1alpha1",
                "kind": "Loki",
                "metadata": {
                  "annotations": {
                    "helm.sdk.operatorframework.io/install-disable-crds": "true"
                  },
                  "name": "loki-sample"
                },
                "spec": {
                  "global": {
                    "clusterDomain": "cluster.local",
                    "dnsNamespace": "openshift-dns",
                    "dnsService": "dns-default"
                  },
                  "loki": {
                    "auth_enabled": false,
                    "commonConfig": {
                      "replication_factor": 1
                    },
                    "storage": {
                      "type": "filesystem"
                    }
                  },
                  "monitoring": {
                    "dashboards": {
                      "enabled": false
                    },
                    "lokiCanary": {
                      "enabled": false
                    },
                    "rules": {
                      "alerting": false,
                      "enabled": false
                    },
                    "selfMonitoring": {
                      "enabled": false,
                      "grafanaAgent": {
                        "installOperator": false
                      }
                    },
                    "serviceMonitor": {
                      "enabled": false,
                      "metricsInstance": {
                        "enabled": false
                      }
                    }
                  },
                  "rbac": {
                    "sccEnabled": true
                  },
                  "singleBinary": {
                    "replicas": 1
                  },
                  "test": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: quay.io/opdev/loki-helm-operator-controller:0.0.1
          createdAt: "2023-07-14T15:06:17Z"
          description: An experimental operator that installs loki from its official
            helmchart.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: hybrid.helm.sdk.operatorframework.io/v1-alpha
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys the loki operator helm chart
            displayName: Loki
            kind: Loki
            name: lokis.charts.example.com
            version: v1alpha1
        description: Loki operator based on the helm chart with single binary mode
          deployment optionality
        displayName: Loki Helm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - loki
        - single-binary
        - demo
        - helm
        links:
        - name: Loki Helm Operator
          url: https://github.com/skattoju/loki-helm-operator
        maintainers:
        - email: skattoju@redhat.com
          name: Sid Kattoju
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: opdev
          url: https://opdev.github.io/
        relatedImages:
        - quay.io/openshift-community-operators/loki-helm-operator@sha256:fa3662ec16e6cb3f866ad46982a50d8fdefb43c68f3caa13291239013e03af13
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/opdev/loki-helm-operator-controller:0.0.1
        version: 0.0.1
      entries:
      - name: loki-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: loki-helm-operator
    provider:
      name: opdev
      url: https://opdev.github.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: egressip-ipam-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: egressip-ipam-operator.v1.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "EgressIPAM",
                "metadata": {
                  "name": "egressipam-aws"
                },
                "spec": {
                  "cidrAssignments": [
                    {
                      "CIDR": "10.0.128.0/19",
                      "labelValue": "us-west-2a"
                    },
                    {
                      "CIDR": "10.0.160.0/19",
                      "labelValue": "us-west-2b",
                      "reservedIPs": [
                        "10.0.160.126"
                      ]
                    },
                    {
                      "CIDR": "10.0.192.0/19",
                      "labelValue": "us-west-2c"
                    }
                  ],
                  "nodeSelector": {
                    "matchLabels": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "topologyLabel": "failure-domain.beta.kubernetes.io/zone"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "EgressIPAM",
                "metadata": {
                  "name": "egressipam-baremetal"
                },
                "spec": {
                  "cidrAssignments": [
                    {
                      "CIDR": "192.169.0.0/24",
                      "labelValue": "true"
                    }
                  ],
                  "nodeSelector": {
                    "matchLabels": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "topologyLabel": "egressGateway"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Networking, Cloud Provider, Security
          certified: "false"
          containerImage: quay.io/redhat-cop/egressip-ipam-operator@sha256:d6129bd287b87696a23e0da64dcd598958f779dc88ae33b46b3c909dbab80adf
          createdAt: "2022-07-25T15:07:22Z"
          description: This operator provides automation around managing egressIPs.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: egressip-ipam-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/egressip-ipam-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EgressIPAM is the Schema for the egressipams API
            displayName: Egress IPAM
            kind: EgressIPAM
            name: egressipams.redhatcop.redhat.io
            version: v1alpha1
        description: |
          This operator automates the assignment of egressIPs to namespaces.
          Namespaces can opt in to receiving one or more egressIPs with the following annotation `egressip-ipam-operator.redhat-cop.io/egressipam:<egressIPAM>`, where `egressIPAM` is the CRD that controls how egressIPs are assigned.
          IPs assigned to the namespace can be looked up in the following annotation: `egressip-ipam-operator.redhat-cop.io/egressips`.

          EgressIP assignments is managed by the EgressIPAM CRD. Here is an example of it:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: EgressIPAM
          metadata:
            name: example-egressipam
          spec:
            cidrAssignments:
              - labelValue: "true"
                CIDR: 192.169.0.0/24
                reservedIPs:
                - "192.159.0.5"
            topologyLabel: egressGateway
            nodeSelector:
              node-role.kubernetes.io/worker: ""
          ```

          This EgressIPAM specifies that all nodes that comply with the specified node selector and that also have labels `egressGateway: "true"` will be assigned egressIP from the specified CIDR.

          Note that the `cidrAssigments` field is an array and therefore, multiple groups of nodes can be identified with the labelValue and different CIDRs can be assigned to them. This is usually not necessary on a bare metal deployment.

          In the bare metal scenario, when this egressCRD is created, all the `hostsubnet` relative to the nodes selected by this EgressIPAM will be update to have the EgressCIDRs field equal to the specified CIDR (see below for cloud provider scenarios).

          When a namespace is created with the opt-in annotation: `egressip-ipam-operator.redhat-cop.io/egressipam=<egressIPAM>`, an available egressIP is selected from the CIDR and assigned to the namespace.The `netnamespace` associated with this namespace is updated to use that egressIP.

          It is possible to specify a set of reserved IPs. These IPs must belong to the CIDR and will never be assigned.

          ## Passing EgressIPs as input

          The normal mode of operation of this operator is to pick a random IP from the configured CIDR. However, it also supports a scenario where egressIPs are picked by an external process and passed as input.

          In this case IPs must me passed as an annotation to the namespace, like this: `egressip-ipam-operator.redhat-cop.io/egressips=IP1,IP2...`. The value of the annotation is a comma separated array of ip with no spaces.

          There must be exactly one IP per CIDR defined in the referenced egressIPAM. Moreover, each IP must belong to the corresponding CIDR. Because this situation can lead to inconsistencies, failing to have correspondence between IPs in the namespace annotation and CIDRs in the egressIPAM CR will cause the operator to error out and stop processing all the namespaces associated with the given EgressIPAM CR.

          It also also a responsibility of the progress picking the IPs to ensure that those IPs are actually available.

          ## Assumptions

          The following assumptions apply when using this operator:

          1. If multiple EgressIPAMs are defined, their selected nodes MUST NOT overlap.
          2. When using a cloud provider the topology label MUST be `failure-domain.beta.kubernetes.io/zone`.

          ## Support for AWS

          In AWS as well as other cloud providers, one cannot freely assign IPs to machines. Additional steps need to be performed in this case. Considering this EgressIPAM

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: EgressIPAM
          metadata:
            name: egressipam-aws
          spec:
            cidrAssignments:
              - labelValue: "eu-central-1a"
                CIDR: 10.0.128.0/20
              - labelValue: "eu-central-1b"
                CIDR: 10.0.144.0/20
              - labelValue: "eu-central-1c"
                CIDR: 10.0.160.0/20
            topologyLabel: failure-domain.beta.kubernetes.io/zone
            nodeSelector:
              matchLabels:
                node-role.kubernetes.io/worker: ""
          ```

          When a namespace with the opt-in annotation is created, the following happens:

          1. for each of the CIDRs, an available IP is selected and assigned to the namespace
          2. the relative `netnamespace` is update to reflect the assignment (multiple IPs will be assigned in this case).
          3. one node per zone is selected to carry the egressIP
          4. the relative aws machines are assigned the additional IP on the main interface (support for secondary interfaces in not available)
          5. the relative `hostsubnets` are updated to reflect the assigned IP, the `egressIP` field is updated.
        displayName: Egressip Ipam Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - egressIPs
        - high availability
        - firewall support
        - traffic management
        - ipam
        links:
        - name: Egressip Ipam Operator
          url: https://github.com/redhat-cop/egressip-ipam-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/egressip-ipam-operator:v0.1.2
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/egressip-ipam-operator@sha256:1e2443488e0aad361cccece51689e2b8da882862cb62c1208a14ab1b5ec2922d
        - quay.io/redhat-cop/egressip-ipam-operator@sha256:d6129bd287b87696a23e0da64dcd598958f779dc88ae33b46b3c909dbab80adf
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.2.4
      entries:
      - name: egressip-ipam-operator.v1.2.4
        version: 1.2.4
      - name: egressip-ipam-operator.v1.2.3
        version: 1.2.3
      - name: egressip-ipam-operator.v1.2.2
        version: 1.2.2
      - name: egressip-ipam-operator.v1.2.1
        version: 1.2.1
      - name: egressip-ipam-operator.v1.2.0
        version: 1.2.0
      - name: egressip-ipam-operator.v1.1.0
        version: 1.1.0
      - name: egressip-ipam-operator.v1.0.8
        version: 1.0.8
      - name: egressip-ipam-operator.v1.0.7
        version: 1.0.7
      - name: egressip-ipam-operator.v1.0.6
        version: 1.0.6
      - name: egressip-ipam-operator.v1.0.5
        version: 1.0.5
      - name: egressip-ipam-operator.v1.0.4
        version: 1.0.4
      - name: egressip-ipam-operator.v1.0.3
        version: 1.0.3
      - name: egressip-ipam-operator.v1.0.2
        version: 1.0.2
      - name: egressip-ipam-operator.v1.0.1
        version: 1.0.1
      - name: egressip-ipam-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: egressip-ipam-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: windows-machine-config-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: windows-machine-config-operator.v10.20.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          createdAt: "2025-09-16T22:12:55Z"
          description: An operator that enables Windows container workloads on OCP
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=10.19.0 <10.20.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-windows-machine-config-operator
          operators.openshift.io/valid-subscription: '["Red Hat OpenShift support
            for Windows Containers"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/windows-machine-config-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          ### Introduction
          The Windows Machine Config Operator configures Windows Machines into nodes, enabling Windows container workloads to
          be run on OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets),
          or by specifying existing instances through a [ConfigMap](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/byoh-windows-instance)
          The operator completes all the necessary steps to configure the Windows instance so that it can join the cluster as a worker node.

          Usage of this operator requires an OpenShift Container Platform for Windows Containers subscription. Users looking to
          deploy Windows containers workloads in production clusters should acquire a subscription before attempting to
          install this operator. Users without a subscription can try the community operator, a distribution which lacks
          official support.

          ### Pre-requisites
          * A Red Hat OpenShift Container Platform for Windows Containers [subscription](https://access.redhat.com/support/policy/updates/openshift#windows)
          * OCP 4.20 cluster running on Azure, AWS, GCP or vSphere configured with hybrid OVN Kubernetes networking
          * [WMCO prerequisites](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/understanding-windows-container-workloads)

          ### Usage
          Once the `openshift-windows-machine-config-operator` namespace has been created, a secret must be created containing
          the private key that will be used to access the Windows VMs:
          ```
          # Create secret containing the private key in the openshift-windows-machine-config-operator namespace
          oc create secret generic cloud-private-key --from-file=private-key.pem=/path/to/key -n openshift-windows-machine-config-operator
          ```
          We strongly recommend not using the same
          [private key](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/installing_on_azure/installing-on-azure#ssh-agent-using_installing-azure-customizations)
          used when installing the cluster

          Below is an example of a vSphere Windows MachineSet which can create Windows Machines that the WMCO can react upon.
          Please note that the windows-user-data secret will be created by the WMCO lazily when it is configuring the first
          Windows Machine. After that, the windows-user-data will be available for the subsequent MachineSets to be consumed.
          It might take around 10 minutes for the Windows VM to be configured so that it joins the cluster. Please note that
          the MachineSet should have following labels:
          * `machine.openshift.io/os-id: Windows`
          * `machine.openshift.io/cluster-api-machine-role: worker`
          * `machine.openshift.io/cluster-api-machine-type: worker`

          The following label must be added to the Machine spec within the MachineSet spec:
          * `node-role.kubernetes.io/worker: ""`

          Not having these labels will result in the Windows node not being marked as a worker.

          `<infrastructureID>` should be replaced with the output of:
          ```
          oc get -o jsonpath='{.status.infrastructureName}{"\n"}' infrastructure cluster
          ```

          The following template variables need to be replaced as follows with values from your vSphere environment:
          * `<Windows_VM_template>`: template name
          * `<VM Network Name>`: network name
          * `<vCenter DataCenter Name>`: datacenter name
          * `<Path to VM Folder in vCenter>`: path where your OpenShift cluster is running
          * `<vCenter Datastore Name>`: datastore name
          * `<vCenter Server FQDN/IP>`: IP address or FQDN of the vCenter server

          Please note that on vSphere, Windows Machine names cannot be more than 15 characters long. The MachineSet name therefore
          cannot be more than 9 characters long, due to the way Machine names are generated from it.
          ```
          apiVersion: machine.openshift.io/v1beta1
          kind: MachineSet
          metadata:
            labels:
              machine.openshift.io/cluster-api-cluster: <infrastructureID>
            name: winworker
            namespace: openshift-machine-api
          spec:
            replicas: 1
            selector:
              matchLabels:
                machine.openshift.io/cluster-api-cluster: <infrastructureID>
                machine.openshift.io/cluster-api-machineset: winworker
            template:
              metadata:
                labels:
                  machine.openshift.io/cluster-api-cluster: <infrastructureID>
                  machine.openshift.io/cluster-api-machine-role: worker
                  machine.openshift.io/cluster-api-machine-type: worker
                  machine.openshift.io/cluster-api-machineset: winworker
                  machine.openshift.io/os-id: Windows
              spec:
                metadata:
                  labels:
                    node-role.kubernetes.io/worker: ""
                providerSpec:
                  value:
                    apiVersion: vsphereprovider.openshift.io/v1beta1
                    credentialsSecret:
                      name: vsphere-cloud-credentials
                      namespace: openshift-machine-api
                    diskGiB: 128
                    kind: VSphereMachineProviderSpec
                    memoryMiB: 16384
                    metadata:
                      creationTimestamp: null
                    network:
                      devices:
                      - networkName: "<VM Network Name>"
                    numCPUs: 4
                    numCoresPerSocket: 1
                    snapshot: ""
                    template: <Windows_VM_template
                    userDataSecret:
                      name: windows-user-data
                    workspace:
                      datacenter: <vCenter DataCenter Name>
                      datastore: <vCenter Datastore Name>
                      folder: <Path to VM Folder in vCenter> # e.g. /DC/vm/ocp45-2tdrm
                      server: <vCenter Server FQDN/IP>
          ```
          Example MachineSet for other cloud providers:
          - [AWS](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-aws)
          - [Azure](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-azure)
          - [GCP](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-gcp)

          ### Limitations
          #### DeploymentConfigs
          Windows Nodes do not support workloads created via DeploymentConfigs. Please use a normal Deployment, or other method to
          deploy workloads.

          ### Reporting issues
          Support for this distribution of WMCO requires a Red Hat OpenShfit subscription. Support should be requested through the Red Hat Customer Portal.
          Please read through the [troubleshooting document](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/support/troubleshooting)
          before opening a support case.
        displayName: Windows Machine Config Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - windows
        maintainers:
        - email: team-winc@redhat.com
          name: Red Hat, Windows Container Support for OpenShift
        maturity: stable
        minKubeVersion: 1.33.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4-wincw/windows-machine-config-rhel9-operator@sha256:9d5bdca5f80895a316d7af75e8c5316b0e27ded1dd4b4d4fac01ef1c23b7a6fc
        - registry.redhat.io/openshift4-wincw/windows-machine-config-operator-bundle@sha256:e3d896e0f2e6713ad972f733d7424af371a0d75ce6fd0f8b9fadf5ad71c6c22d
        version: 10.20.0
      entries:
      - name: windows-machine-config-operator.v10.20.0
        version: 10.20.0
      name: stable
    defaultChannel: stable
    packageName: windows-machine-config-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-keyspaces-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-keyspaces-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keyspaces.services.k8s.aws/v1alpha1",
                "kind": "Keyspace",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "keyspaces.services.k8s.aws/v1alpha1",
                "kind": "Table",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/keyspaces-controller:1.2.0
          createdAt: "2025-11-29T04:36:08Z"
          description: AWS Keyspaces controller is a service controller for managing
            Keyspaces resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Keyspace represents the state of an AWS keyspaces Keyspace
              resource.
            displayName: Keyspace
            kind: Keyspace
            name: keyspaces.keyspaces.services.k8s.aws
            version: v1alpha1
          - description: Table represents the state of an AWS keyspaces Table resource.
            displayName: Table
            kind: Table
            name: tables.keyspaces.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Keyspaces resources in AWS from within your Kubernetes cluster.

          **About Amazon Keyspaces**

          Amazon Keyspaces (for Apache Cassandra) is a scalable, highly available, and managed Apache Cassandra–compatible database service. With Amazon Keyspaces, you don’t have to provision, patch, or manage servers, and you don’t have to install, maintain, or operate software.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Keyspaces
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - keyspaces
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Keyspaces Developer Resources
          url: https://aws.amazon.com/keyspaces/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: keyspaces maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/keyspaces-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-keyspaces-controller@sha256:95da338a7390cc9e5fbff4b5d22d7741d4e1d67ed4403c874dd39b073e3a0487
        version: 1.2.0
      entries:
      - name: ack-keyspaces-controller.v1.2.0
        version: 1.2.0
      - name: ack-keyspaces-controller.v1.1.2
        version: 1.1.2
      - name: ack-keyspaces-controller.v1.1.1
        version: 1.1.1
      - name: ack-keyspaces-controller.v1.1.0
        version: 1.1.0
      - name: ack-keyspaces-controller.v1.0.14
        version: 1.0.14
      - name: ack-keyspaces-controller.v1.0.12
        version: 1.0.12
      - name: ack-keyspaces-controller.v1.0.11
        version: 1.0.11
      - name: ack-keyspaces-controller.v1.0.10
        version: 1.0.10
      - name: ack-keyspaces-controller.v1.0.9
        version: 1.0.9
      - name: ack-keyspaces-controller.v1.0.7
        version: 1.0.7
      - name: ack-keyspaces-controller.v1.0.6
        version: 1.0.6
      - name: ack-keyspaces-controller.v1.0.5
        version: 1.0.5
      - name: ack-keyspaces-controller.v1.0.3
        version: 1.0.3
      - name: ack-keyspaces-controller.v1.0.2
        version: 1.0.2
      - name: ack-keyspaces-controller.v1.0.1
        version: 1.0.1
      - name: ack-keyspaces-controller.v1.0.0
        version: 1.0.0
      - name: ack-keyspaces-controller.v0.0.16
        version: 0.0.16
      - name: ack-keyspaces-controller.v0.0.15
        version: 0.0.15
      - name: ack-keyspaces-controller.v0.0.14
        version: 0.0.14
      - name: ack-keyspaces-controller.v0.0.13
        version: 0.0.13
      - name: ack-keyspaces-controller.v0.0.12
        version: 0.0.12
      - name: ack-keyspaces-controller.v0.0.11
        version: 0.0.11
      - name: ack-keyspaces-controller.v0.0.10
        version: 0.0.10
      - name: ack-keyspaces-controller.v0.0.9
        version: 0.0.9
      - name: ack-keyspaces-controller.v0.0.8
        version: 0.0.8
      - name: ack-keyspaces-controller.v0.0.7
        version: 0.0.7
      - name: ack-keyspaces-controller.v0.0.6
        version: 0.0.6
      - name: ack-keyspaces-controller.v0.0.5
        version: 0.0.5
      - name: ack-keyspaces-controller.v0.0.4
        version: 0.0.4
      - name: ack-keyspaces-controller.v0.0.3
        version: 0.0.3
      - name: ack-keyspaces-controller.v0.0.2
        version: 0.0.2
      - name: ack-keyspaces-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-keyspaces-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Managed Openshift Black Belt
      provider-url: ""
    name: ecr-secret-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ecr-secret-operator.v0.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecr.mobb.redhat.com/v1alpha1",
                "kind": "Secret",
                "metadata": {
                  "name": "ecr-secret-sample",
                  "namespace": "test-ecr-secret-operator"
                },
                "spec": {
                  "ecr_registry": "ACCOUNT_ID.dkr.ecr.us-east-2.amazonaws.com",
                  "frequency": "10h",
                  "generated_secret_name": "ecr-docker-secret",
                  "region": "us-east-2"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/mobb/ecr-secret-operator:v0.3.2
          operatorframework.io/suggested-namespace: ecr-secret-operator
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-mobb/ecr-secret-operator
          support: Managed Openshift Black Belt
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Secret is the Schema for the secrets API
            displayName: Secret
            kind: Secret
            name: secrets.ecr.mobb.redhat.com
            version: v1alpha1
        description: "# ECR Secret Operator\n\nAmazon Elastic Container Registry [Private
          Registry Authentication](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry_auth.html)
          provides a temporary token that is valid only for 12 hours. It is a challenge
          for automatic container image build process to refresh the token or secret
          in a timely manner.\n\nThis operators frequently talks with AWS ECR GetAuthroization
          Token and create/update the secret, so that the service account can perform
          docker image build.\n\n\n## How to use this operator\n\n### Prerequisites\n\n*
          [Create an ECR private repository](https://docs.aws.amazon.com/AmazonECR/latest/userguide/repository-create.html)\n*
          Create An Openshift Cluster\n* Provide AWS Authentication to the operator.
          Two Options:\n  **Note: You have to provide a secret aws-ecr-cloud-credentials
          in the installed namespace**\n  * [IAM User](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_user.md)\n
          \ * [STS Assume Role](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_assume_role.md)\n\n###
          Install the operator\n\n### Create the ECR Secret CRD\n\n```\napiVersion:
          ecr.mobb.redhat.com/v1alpha1\nkind: Secret\nmetadata:\n  name: ecr-secret\n
          \ namespace: test-ecr-secret-operator\nspec:\n  generated_secret_name: ecr-docker-secret\n
          \ ecr_registry: [ACCOUNT_ID].dkr.ecr.us-east-2.amazonaws.com\n  frequency:
          10h\n  region: us-east-2\n```\n\n```\noc create -f CRD_FILE\n```\n\nA docker
          registry secret is created by the operator momentally and the token is patched
          every 10 hours\n\n```\noc get secret ecr-docker-secret   \nNAME                TYPE
          \                            DATA   AGE\necr-docker-secret   kubernetes.io/dockerconfigjson
          \  1      16h\n```\n\n### A sample build process with generated secret\n\n\nLink
          the secret to builder\n\n```\noc secrets link builder ecr-docker-secret
          \n```\n\nConfigure [build config](https://github.com/rh-mobb/ecr-secret-operator/tree/main/samples/build-config.yaml)
          to point to your ECR Container repository\n\n```\noc create imagestream
          ruby\noc tag openshift/ruby:2.5-ubi8 ruby:2.5\noc create -f samples/build-config.yaml\noc
          start-build ruby-sample-build --wait\n```\n\nBuild should succeed and push
          the image to the the private ECR Container repository\n\n"
        displayName: ECR Secret Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecr
        - aws
        - redhat
        links:
        - name: Ecr Secret Operator
          url: https://github.com/rh-mobb/ecr-secret-operator
        maintainers:
        - email: shading@redhat.com
          name: Shaozhen Ding
        maturity: alpha
        provider:
          name: Managed Openshift Black Belt
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/mobb/ecr-secret-operator:v0.3.2
        - quay.io/openshift-community-operators/ecr-secret-operator@sha256:90f512ce90433a33b50c58613d9b7136e00f116c48e179c4a1be89d6a35f9abc
        version: 0.3.2
      entries:
      - name: ecr-secret-operator.v0.3.2
        version: 0.3.2
      name: v0.3
    - currentCSV: ecr-secret-operator.v0.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecr.mobb.redhat.com/v1alpha1",
                "kind": "Secret",
                "metadata": {
                  "name": "ecr-secret-sample",
                  "namespace": "test-ecr-secret-operator"
                },
                "spec": {
                  "ecr_registry": "ACCOUNT_ID.dkr.ecr.us-east-2.amazonaws.com",
                  "frequency": "10h",
                  "generated_secret_name": "ecr-docker-secret",
                  "region": "us-east-2"
                }
              },
              {
                "apiVersion": "ecr.mobb.redhat.com/v1alpha1",
                "kind": "ArgoHelmRepoSecret",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ecr-secret-operator",
                    "app.kubernetes.io/instance": "argohelmreposecret-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "argohelmreposecret",
                    "app.kubernetes.io/part-of": "ecr-secret-operator"
                  },
                  "name": "argohelmreposecret-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/mobb/ecr-secret-operator:v0.4.1
          createdAt: "2023-04-14T14:52:13Z"
          operatorframework.io/suggested-namespace: ecr-secret-operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-mobb/ecr-secret-operator
          support: Managed Openshift Black Belt
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ArgoHelmRepoSecret is the Schema for the argohelmreposecrets
              API
            displayName: Argo Helm Repo Secret
            kind: ArgoHelmRepoSecret
            name: argohelmreposecrets.ecr.mobb.redhat.com
            version: v1alpha1
          - description: Secret is the Schema for the secrets API
            displayName: Secret
            kind: Secret
            name: secrets.ecr.mobb.redhat.com
            version: v1alpha1
        description: "# ECR Secret Operator\n\nAmazon Elastic Container Registry [Private
          Registry Authentication](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry_auth.html)
          provides a temporary token that is valid only for 12 hours. It is a challenge
          for automatic container image build process to refresh the token or secret
          in a timely manner.\n\nThis operators frequently talks with AWS ECR GetAuthroization
          Token and create/update the secret, so that the service account can perform
          docker image build.\n\n\n## How to use this operator\n\n### Prerequisites\n\n*
          [Create an ECR private repository](https://docs.aws.amazon.com/AmazonECR/latest/userguide/repository-create.html)\n*
          Create An Openshift Cluster\n* Provide AWS Authentication to the operator.
          Two Options:\n  **Note: You have to provide a secret aws-ecr-cloud-credentials
          in the installed namespace**\n  * [IAM User](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_user.md)\n
          \ * [STS Assume Role](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_assume_role.md)\n\n###
          Install the operator\n\n### Create the ECR Secret CRD\n\n```\napiVersion:
          ecr.mobb.redhat.com/v1alpha1\nkind: Secret\nmetadata:\n  name: ecr-secret\n
          \ namespace: test-ecr-secret-operator\nspec:\n  generated_secret_name: ecr-docker-secret\n
          \ ecr_registry: [ACCOUNT_ID].dkr.ecr.us-east-2.amazonaws.com\n  frequency:
          10h\n  region: us-east-2\n```\n\n```\noc create -f CRD_FILE\n```\n\nA docker
          registry secret is created by the operator momentally and the token is patched
          every 10 hours\n\n```\noc get secret ecr-docker-secret   \nNAME                TYPE
          \                            DATA   AGE\necr-docker-secret   kubernetes.io/dockerconfigjson
          \  1      16h\n```\n\n### A sample build process with generated secret\n\n\nLink
          the secret to builder\n\n```\noc secrets link builder ecr-docker-secret
          \n```\n\nConfigure [build config](https://github.com/rh-mobb/ecr-secret-operator/tree/main/samples/build-config.yaml)
          to point to your ECR Container repository\n\n```\noc create imagestream
          ruby\noc tag openshift/ruby:2.5-ubi8 ruby:2.5\noc create -f samples/build-config.yaml\noc
          start-build ruby-sample-build --wait\n```\n\nBuild should succeed and push
          the image to the the private ECR Container repository\n\n"
        displayName: ECR Secret Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecr
        - aws
        - redhat
        links:
        - name: Ecr Secret Operator
          url: https://github.com/rh-mobb/ecr-secret-operator
        maintainers:
        - email: shading@redhat.com
          name: Shaozhen Ding
        maturity: alpha
        provider:
          name: Managed Openshift Black Belt
        relatedImages:
        - quay.io/openshift-community-operators/ecr-secret-operator@sha256:53e73c53c31e0e06c990d3d966c2b4053d559a58a17a781155a3ceff3efac831
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/mobb/ecr-secret-operator:v0.4.1
        version: 0.4.1
      entries:
      - name: ecr-secret-operator.v0.4.1
        version: 0.4.1
      - name: ecr-secret-operator.v0.4.0
        version: 0.4.0
      name: v0.4
    defaultChannel: v0.4
    packageName: ecr-secret-operator
    provider:
      name: Managed Openshift Black Belt
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: node-healthcheck-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-healthcheck-operator.v0.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample"
                },
                "spec": {
                  "minHealthy": "51%",
                  "remediationTemplate": {
                    "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                    "kind": "SelfNodeRemediationTemplate",
                    "name": "self-node-remediation-automatic-strategy-template",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/plugins: '["node-remediation-console-plugin"]'
          containerImage: registry.redhat.io/workload-availability/node-healthcheck-rhel9-operator@sha256:f7ef379b374b824da311a2696351b5bd930717d193515f68f12040b40df8e75c
          createdAt: "2025-11-11 21:43:16"
          description: Detect failed Nodes and trigger remediation with a remediation
            operator.
          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: "true"
          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.skipRange: '>=0.9.0 <0.10.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Hardware is imperfect, and software contains bugs. When node level failures such as kernel hangs or dead NICs
          occur, the work required from the cluster does not decrease - workloads from affected nodes need to be
          restarted somewhere.

          However some workloads, such as RWO volumes and StatefulSets, may require at-most-one semantics.
          Failures affecting these kind of workloads risk data loss and/or corruption if nodes (and the workloads
          running on them) are assumed to be dead whenever we stop hearing from them. For this reason it is important
          to know that the node has reached a safe state before initiating recovery of the workload.

          Unfortunately it is not always practical to require admin intervention in order to confirm the node’s true status.
          In order to automate the recovery of exclusive workloads, we provide operators for failure detection
          and remediation.

          ### Failure detection: Node Health Check operator
          The “Node Health Check” (NHC) operator checks each Node’s set of
          NodeConditions (eg. NotReady) against the criteria and thresholds defined in
          NodeHealthCheck configuration. If the Node is deemed to be in a failed
          state, NHC will initiate recovery by using the SIG Cluster API's “External
          Remediation” API to instantiate the configured remediation template which
          specifies the mechanism/controller to be used.

          ### Failure handling: External remediators
          There are multiple remediators for handling node failure that we recommend:
          - Self Node Remediation (SNR)
          - Fence Agents Remediation (FAR)
          - Machine Deletion Remediation (MDR)

          #### Self Node Remediation (SNR)
          SNR uses watchdog timers and heuristics to ensure nodes enter a safe state
          (no longer hosting workloads) within a known and finite period of time,
          before signaling to the system that all Pods on the failed Node are no longer active
          and can be relocated elsewhere.
          In the case of transient errors, the watchdog’s actions will also result in
          the node rebooting and rejoining the cluster - restoring capacity.

          #### Fence Agents Remediation (FAR)
          FAR uses well-known agents to fence unhealthy nodes, and eventually FAR remediates the nodes.
          The remediation includes rebooting the unhealthy node using a fence agent,
          and then evicting workloads from the unhealthy node.

          #### Machine Deletion Remediation (MDR)
          MDR is limited to OpenShift, and it uses Machine API for reprovisioning unhealthy nodes by deleting their machines.
        displayName: Node Health Check Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - NHC
        - Self Node Remediation
        - SNR
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance
        - name: Source Code
          url: https://github.com/medik8s/node-healthcheck-operator
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/node-healthcheck-must-gather-rhel9@sha256:6bfbfe36d4e01d1b320a6f8a3ffb2d937b7c2cdc17884d63a29f02c1e4e4d658
        - registry.redhat.io/workload-availability/node-healthcheck-rhel9-operator@sha256:f7ef379b374b824da311a2696351b5bd930717d193515f68f12040b40df8e75c
        - registry.redhat.io/workload-availability/node-remediation-console-rhel9@sha256:e476663624956f6c00387cac9e41129973718f8cb46129153d1e58a039357683
        - registry.redhat.io/workload-availability/node-healthcheck-operator-bundle@sha256:e60e749a273732fa4f3c570ecdb250f71e747b81fe379b5ffb75282d293032a8
        version: 0.10.1
      entries:
      - name: node-healthcheck-operator.v0.10.1
        version: 0.10.1
      - name: node-healthcheck-operator.v0.10.0
        version: 0.10.0
      - name: node-healthcheck-operator.v0.9.1
        version: 0.9.1
      - name: node-healthcheck-operator.v0.9.0
        version: 0.9.0
      name: stable
    defaultChannel: stable
    packageName: node-healthcheck-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CephCSI Community
      provider-url: ""
    name: cephcsi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cephcsi-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:50:12Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CephConnection
            name: cephconnections.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfileMapping
            name: clientprofilemappings.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfile
            name: clientprofiles.csi.ceph.io
            version: v1alpha1
          - kind: Driver
            name: drivers.csi.ceph.io
            version: v1alpha1
          - kind: OperatorConfig
            name: operatorconfigs.csi.ceph.io
            version: v1alpha1
        description: Operator to deploy ceph csi drivers.
        displayName: CephCSI operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: Github Repo
          url: https://github.com/ceph/ceph-csi-operator
        maintainers:
        - email: ceph-csi-team@redhat.com
          name: CephCSI Community
        maturity: alpha
        provider:
          name: CephCSI Community
        relatedImages:
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:1bc7b2785534ab8d8a9a00e81cdc961838a817df7c3c5d4de527b0e5eb697d9a
        - registry.redhat.io/odf4/cephcsi-rhel9-operator@sha256:55e3fb0c0f140fa98e90b639cb0bf933874977d5cebaef1b885150fde7dcc77a
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: cephcsi-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: cephcsi-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: cephcsi-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: cephcsi-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: cephcsi-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: cephcsi-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: cephcsi-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: cephcsi-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: cephcsi-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: cephcsi-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: cephcsi-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:35:25Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CephConnection
            name: cephconnections.csi.ceph.io
            version: v1
          - kind: CephConnection
            name: cephconnections.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfileMapping
            name: clientprofilemappings.csi.ceph.io
            version: v1
          - kind: ClientProfileMapping
            name: clientprofilemappings.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfile
            name: clientprofiles.csi.ceph.io
            version: v1
          - kind: ClientProfile
            name: clientprofiles.csi.ceph.io
            version: v1alpha1
          - kind: Driver
            name: drivers.csi.ceph.io
            version: v1
          - kind: Driver
            name: drivers.csi.ceph.io
            version: v1alpha1
          - kind: OperatorConfig
            name: operatorconfigs.csi.ceph.io
            version: v1
          - kind: OperatorConfig
            name: operatorconfigs.csi.ceph.io
            version: v1alpha1
        description: Operator to deploy ceph csi drivers.
        displayName: CephCSI operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: Github Repo
          url: https://github.com/ceph/ceph-csi-operator
        maintainers:
        - email: ceph-csi-team@redhat.com
          name: CephCSI Community
        maturity: alpha
        provider:
          name: CephCSI Community
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:87990cdf6adf9a27e9bf9a4d6935d6c7328939da223bc1d145b0991b2dfea25c
        - registry.redhat.io/odf4/cephcsi-rhel9-operator@sha256:4a25fab343836486ac80c25d69e3d5d1223911085a5e6a7240eecaa1ed7b952d
        version: 4.20.4-rhodf
      entries:
      - name: cephcsi-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: cephcsi-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: cephcsi-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: cephcsi-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: cephcsi-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: cephcsi-operator
    provider:
      name: CephCSI Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: o-cloud-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: o-cloud-manager.v4.20.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ClusterTemplate",
                "metadata": {
                  "name": "clustertemplate-sample.v1.0.0",
                  "namespace": "clustertemplate-a-v4-16-3"
                },
                "spec": {
                  "characteristics": {
                    "age": "31"
                  },
                  "description": "nice description",
                  "metadata": {
                    "apple": "23"
                  },
                  "name": "clustertemplate-a",
                  "release": "4.16.3",
                  "templateParameterSchema": {
                    "properties": {
                      "clusterInstanceParameters": {
                        "description": "clusterInstanceParameters defines the available parameters for cluster installation",
                        "properties": {
                          "additionalNTPSources": {
                            "description": "AdditionalNTPSources is a list of NTP sources (hostname or IP) to be added to all cluster hosts. They are added to any NTP sources that were configured through other means.",
                            "items": {
                              "type": "string"
                            },
                            "type": "array"
                          },
                          "apiVIPs": {
                            "description": "APIVIPs are the virtual IPs used to reach the OpenShift cluster's API. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "baseDomain": {
                            "description": "BaseDomain is the base domain to use for the deployed cluster.",
                            "type": "string"
                          },
                          "clusterName": {
                            "description": "ClusterName is the name of the cluster.",
                            "type": "string"
                          },
                          "extraAnnotations": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide annotations to be applied to the rendered templates",
                            "type": "object"
                          },
                          "extraLabels": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide labels to be applied to the rendered templates",
                            "type": "object"
                          },
                          "ingressVIPs": {
                            "description": "IngressVIPs are the virtual IPs used for cluster ingress traffic. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "machineNetwork": {
                            "description": "MachineNetwork is the list of IP address pools for machines.",
                            "items": {
                              "description": "MachineNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "nodes": {
                            "items": {
                              "description": "NodeSpec",
                              "properties": {
                                "extraAnnotations": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level annotations to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "extraLabels": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level labels to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "hostName": {
                                  "description": "Hostname is the desired hostname for the host",
                                  "type": "string"
                                },
                                "nodeLabels": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "NodeLabels allows the specification of custom roles for your nodes in your managed clusters. These are additional roles are not used by any OpenShift Container Platform components, only by the user. When you add a custom role, it can be associated with a custom machine config pool that references a specific configuration for that role. Adding custom labels or roles during installation makes the deployment process more effective and prevents the need for additional reboots after the installation is complete.",
                                  "type": "object"
                                },
                                "nodeNetwork": {
                                  "description": "NodeNetwork is a set of configurations pertaining to the network settings for the node.",
                                  "properties": {
                                    "config": {
                                      "description": "yaml that can be processed by nmstate, using custom marshaling/unmarshaling that will allow to populate nmstate config as plain yaml.",
                                      "type": "object",
                                      "x-kubernetes-preserve-unknown-fields": true
                                    }
                                  },
                                  "type": "object"
                                }
                              },
                              "required": [
                                "hostName"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "serviceNetwork": {
                            "description": "ServiceNetwork is the list of IP address pools for services.",
                            "items": {
                              "description": "ServiceNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "sshPublicKey": {
                            "description": "SSHPublicKey is the public Secure Shell (SSH) key to provide access to instances. This key will be added to the host to allow ssh access",
                            "type": "string"
                          }
                        },
                        "required": [
                          "clusterName",
                          "nodes"
                        ],
                        "type": "object"
                      },
                      "nodeClusterName": {
                        "type": "string"
                      },
                      "oCloudSiteId": {
                        "type": "string"
                      },
                      "policyTemplateParameters": {
                        "description": "policyTemplateParameters defines the available parameters for cluster configuration",
                        "properties": {
                          "cpu-isolated": {
                            "type": "string"
                          },
                          "cpu-reserved": {
                            "type": "string"
                          },
                          "hugepages-count": {
                            "type": "string"
                          },
                          "hugepages-default": {
                            "type": "string"
                          },
                          "hugepages-size": {
                            "type": "string"
                          },
                          "install-plan-approval": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-1": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-2": {
                            "type": "string"
                          },
                          "sriov-network-vlan-1": {
                            "type": "string"
                          },
                          "sriov-network-vlan-2": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "required": [
                      "nodeClusterName",
                      "oCloudSiteId",
                      "policyTemplateParameters",
                      "clusterInstanceParameters"
                    ],
                    "type": "object"
                  },
                  "templates": {
                    "clusterInstanceDefaults": "clustertemplate-sample.v1.0.0-clusterinstance-defaults",
                    "hwTemplate": "sample-hwtemplate-v1",
                    "policyTemplateDefaults": "clustertemplate-sample.v1.0.0-policytemplate-defaults",
                    "upgradeDefaults": "upgrade-defaults-v1"
                  },
                  "version": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwarePlugin",
                "metadata": {
                  "name": "metal3-hwplugin",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "apiRoot": "https://metal3-hardwareplugin-server.oran-o2ims.svc.cluster.local:8443",
                  "authClientConfig": {
                    "type": "ServiceAccount"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareProfile",
                "metadata": {
                  "name": "hardwareprofile-sample",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bios": {
                    "attributes": {
                      "SriovGlobalEnable": "Enabled",
                      "SysProfile": "Custom",
                      "WorkloadProfile": "TelcoOptimizedProfile"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareTemplate",
                "metadata": {
                  "name": "r740-blue-basic",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hardwareProvisioningTimeout": "60m",
                  "nodeGroupData": [
                    {
                      "hwProfile": "rh-profile-r740-bios-settings",
                      "name": "controller",
                      "resourceSelector": {
                        "resourceselector.clcm.openshift.io/server-colour": "blue",
                        "server-type": "R740"
                      },
                      "role": "master"
                    }
                  ]
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ProvisioningRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "provisioningrequest-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "provisioningrequest",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "123e4567-e89b-12d3-a456-426614174000"
                },
                "spec": {
                  "description": "Provisioning request for setting up a Single Node OpenShift (SNO) in the test environment.",
                  "name": "TestEnv-SNO-Provisioning-site-sno-du-1",
                  "templateName": "clustertemplate-sample",
                  "templateParameters": {
                    "clusterInstanceParameters": {
                      "additionalNTPSources": [
                        "NTP.server1",
                        "1.1.1.1"
                      ],
                      "apiVIPs": [
                        "192.0.2.2"
                      ],
                      "baseDomain": "example.com",
                      "clusterName": "site-sno-du-1",
                      "extraAnnotations": {
                        "AgentClusterInstall": {
                          "extra-annotation-key": "extra-annotation-value"
                        }
                      },
                      "extraLabels": {
                        "AgentClusterInstall": {
                          "extra-label-key": "extra-label-value"
                        },
                        "ManagedCluster": {
                          "cluster-version": "v4.16",
                          "clustertemplate-a-policy": "v1"
                        }
                      },
                      "ingressVIPs": [
                        "192.0.2.3"
                      ],
                      "machineNetwork": [
                        {
                          "cidr": "192.0.2.0/24"
                        }
                      ],
                      "nodes": [
                        {
                          "bootMode": "UEFI",
                          "extraAnnotations": {
                            "BareMetalHost": {
                              "extra-annotation-key": "extra-annotation-value"
                            }
                          },
                          "extraLabels": {
                            "BareMetalHost": {
                              "extra-label-key": "extra-label-value"
                            }
                          },
                          "hostName": "node1.baseDomain.com",
                          "nodeLabels": {
                            "node-role.kubernetes.io/infra": "",
                            "node-role.kubernetes.io/master": ""
                          },
                          "nodeNetwork": {
                            "config": {
                              "dns-resolver": {
                                "config": {
                                  "server": [
                                    "192.0.2.22"
                                  ]
                                }
                              },
                              "interfaces": [
                                {
                                  "ipv4": {
                                    "address": [
                                      {
                                        "ip": "192.0.2.10",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.11",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.12",
                                        "prefix-length": 24
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:601",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:602",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:603",
                                        "prefix-length": 64
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "name": "eno1",
                                  "type": "ethernet"
                                },
                                {
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:1302::100"
                                      }
                                    ],
                                    "enabled": true,
                                    "link-aggregation": {
                                      "mode": "balance-rr",
                                      "options": {
                                        "miimon": "140"
                                      },
                                      "slaves": [
                                        "eth0",
                                        "eth1"
                                      ]
                                    },
                                    "prefix-length": 64
                                  },
                                  "name": "bond99",
                                  "state": "up",
                                  "type": "bond"
                                }
                              ],
                              "routes": {
                                "config": [
                                  {
                                    "destination": "0.0.0.0/0",
                                    "next-hop-address": "192.0.2.254",
                                    "next-hop-interface": "eno1",
                                    "table-id": 254
                                  }
                                ]
                              }
                            }
                          }
                        }
                      ],
                      "serviceNetwork": [
                        {
                          "cidr": "233.252.0.0/24"
                        }
                      ],
                      "sshPublicKey": "ssh-rsa"
                    },
                    "nodeClusterName": "site-sno-du-1",
                    "oCloudSiteId": "local-west-12345",
                    "policyTemplateParameters": {
                      "sriov-network-vlan-1": "114",
                      "sriov-network-vlan-2": "111"
                    }
                  },
                  "templateVersion": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "ocloud.openshift.io/v1alpha1",
                "kind": "Inventory",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "inventory-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "inventory",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "default",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "caBundleName": "o2ims-custom-ca-certs",
                  "cloudID": "b7dcb3ff-583d-42d9-abb5-f484386fc688",
                  "ingress": {
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    }
                  },
                  "smo": {
                    "oauth": {
                      "clientSecretName": "oauth-client-secrets",
                      "groupsClaim": "roles",
                      "scopes": [
                        "openid",
                        "profile",
                        "role:ocloud-manager"
                      ],
                      "tokenEndpoint": "/protocol/openid-connect/token",
                      "url": "https://oauth.example.com:8443/realms/oran",
                      "usernameClaim": "preferred_username"
                    },
                    "registrationEndpoint": "/smo/v1/registration",
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    },
                    "url": "https://smo.example.com"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "AllocatedNode",
                "metadata": {
                  "name": "91c70863-8a83-422a-ab7a-a75f744d5210",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "groupName": "controller",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hwMgrNodeId": "r740xserver1",
                  "hwMgrNodeNs": "r740-pool",
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "nodeAllocationRequest": "metal3-b12f3e77848a4002bf40"
                },
                "status": {
                  "bmc": {
                    "address": "idrac-virtualmedia+https://127.0.0.1/redfish/v1/Systems/System.Embedded.1",
                    "credentialsName": "bmc-secret-r740xserver1"
                  },
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Provisioned",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "interfaces": [
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:19",
                      "name": "ens1f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1a",
                      "name": "ens3f1np1"
                    },
                    {
                      "label": "bootable-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1b",
                      "name": "eno1np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1c",
                      "name": "ens5f3"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1d",
                      "name": "ens5f1"
                    },
                    {
                      "label": "data-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1e",
                      "name": "eno2np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1f",
                      "name": "ens7f0np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:20",
                      "name": "ens7f1np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:21",
                      "name": "ens1f1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:22",
                      "name": "ens5f2"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:23",
                      "name": "ens5f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:24",
                      "name": "ens3f0np0"
                    }
                  ]
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "NodeAllocationRequest",
                "metadata": {
                  "name": "metal3-b12f3e77848a4002bf40",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "clusterId": "cluster1",
                  "configTransactionId": 1,
                  "hardwarePluginRef": "metal3-hwplugin",
                  "nodeGroup": [
                    {
                      "nodeGroupData": {
                        "hwProfile": "rh-profile-r740-bios-settings",
                        "name": "controller",
                        "resourceSelector": {
                          "resourceselector.clcm.openshift.io/server-colour": "blue",
                          "server-type": "R740"
                        },
                        "role": "master"
                      },
                      "size": 1
                    }
                  ],
                  "site": "ottawa"
                },
                "status": {
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Created",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwMgrPlugin": {
                    "observedGeneration": 1
                  },
                  "observedConfigTransactionId": 0,
                  "properties": {
                    "nodeNames": [
                      "91c70863-8a83-422a-ab7a-a75f744d5210"
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
          description: The O-Cloud Manager operator provides an implementation of
            the O-RAN O2 IMS API on top of OpenShift and ACM.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/oran-o2ims
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AllocatedNode is the schema for an allocated node
            displayName: Allocated Node
            kind: AllocatedNode
            name: allocatednodes.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ClusterTemplate is the Schema for the clustertemplates API
            displayName: Cluster Template
            kind: ClusterTemplate
            name: clustertemplates.clcm.openshift.io
            version: v1alpha1
          - description: HardwarePlugin is the Schema for the hardwareplugins API
            displayName: Hardware Plugin
            kind: HardwarePlugin
            name: hardwareplugins.clcm.openshift.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.clcm.openshift.io
            version: v1alpha1
          - description: HardwareTemplate is the Schema for the hardwaretemplates
              API
            displayName: Hardware Template
            kind: HardwareTemplate
            name: hardwaretemplates.clcm.openshift.io
            version: v1alpha1
          - description: Inventory is the Schema for the Inventory API
            displayName: O-Cloud Manager Inventory
            kind: Inventory
            name: inventories.ocloud.openshift.io
            version: v1alpha1
          - description: NodeAllocationRequest is the schema for an allocation request
              of nodes
            displayName: Node Allocation Request
            kind: NodeAllocationRequest
            name: nodeallocationrequests.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ProvisioningRequest is the Schema for the provisioningrequests
              API
            displayName: Provisioning Request
            kind: ProvisioningRequest
            name: provisioningrequests.clcm.openshift.io
            version: v1alpha1
        description: O-cloud manager operator
        displayName: o-cloud manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ORAN
        - O2IMS
        links:
        - name: Oran O2ims
          url: https://oran-o2ims.domain
        maintainers:
        - email: imihai@redhat.com
          name: IrinaMihai
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/o-cloud-manager-operator-bundle@sha256:d403352abf14d6553da6665e47342927500608f2646cb17eac80414f44320ae0
        - registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
        - registry.redhat.io/rhel9/postgresql-16@sha256:4f46bed6bce211be83c110a3452bd3f151a1e8ab150c58f2a02c56e9cc83db98
        version: 4.20.1
      entries:
      - name: o-cloud-manager.v4.20.1
        version: 4.20.1
      - name: o-cloud-manager.v4.20.0
        version: 4.20.0
      name: "4.20"
    - currentCSV: o-cloud-manager.v4.20.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ClusterTemplate",
                "metadata": {
                  "name": "clustertemplate-sample.v1.0.0",
                  "namespace": "clustertemplate-a-v4-16-3"
                },
                "spec": {
                  "characteristics": {
                    "age": "31"
                  },
                  "description": "nice description",
                  "metadata": {
                    "apple": "23"
                  },
                  "name": "clustertemplate-a",
                  "release": "4.16.3",
                  "templateParameterSchema": {
                    "properties": {
                      "clusterInstanceParameters": {
                        "description": "clusterInstanceParameters defines the available parameters for cluster installation",
                        "properties": {
                          "additionalNTPSources": {
                            "description": "AdditionalNTPSources is a list of NTP sources (hostname or IP) to be added to all cluster hosts. They are added to any NTP sources that were configured through other means.",
                            "items": {
                              "type": "string"
                            },
                            "type": "array"
                          },
                          "apiVIPs": {
                            "description": "APIVIPs are the virtual IPs used to reach the OpenShift cluster's API. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "baseDomain": {
                            "description": "BaseDomain is the base domain to use for the deployed cluster.",
                            "type": "string"
                          },
                          "clusterName": {
                            "description": "ClusterName is the name of the cluster.",
                            "type": "string"
                          },
                          "extraAnnotations": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide annotations to be applied to the rendered templates",
                            "type": "object"
                          },
                          "extraLabels": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide labels to be applied to the rendered templates",
                            "type": "object"
                          },
                          "ingressVIPs": {
                            "description": "IngressVIPs are the virtual IPs used for cluster ingress traffic. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "machineNetwork": {
                            "description": "MachineNetwork is the list of IP address pools for machines.",
                            "items": {
                              "description": "MachineNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "nodes": {
                            "items": {
                              "description": "NodeSpec",
                              "properties": {
                                "extraAnnotations": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level annotations to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "extraLabels": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level labels to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "hostName": {
                                  "description": "Hostname is the desired hostname for the host",
                                  "type": "string"
                                },
                                "nodeLabels": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "NodeLabels allows the specification of custom roles for your nodes in your managed clusters. These are additional roles are not used by any OpenShift Container Platform components, only by the user. When you add a custom role, it can be associated with a custom machine config pool that references a specific configuration for that role. Adding custom labels or roles during installation makes the deployment process more effective and prevents the need for additional reboots after the installation is complete.",
                                  "type": "object"
                                },
                                "nodeNetwork": {
                                  "description": "NodeNetwork is a set of configurations pertaining to the network settings for the node.",
                                  "properties": {
                                    "config": {
                                      "description": "yaml that can be processed by nmstate, using custom marshaling/unmarshaling that will allow to populate nmstate config as plain yaml.",
                                      "type": "object",
                                      "x-kubernetes-preserve-unknown-fields": true
                                    }
                                  },
                                  "type": "object"
                                }
                              },
                              "required": [
                                "hostName"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "serviceNetwork": {
                            "description": "ServiceNetwork is the list of IP address pools for services.",
                            "items": {
                              "description": "ServiceNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "sshPublicKey": {
                            "description": "SSHPublicKey is the public Secure Shell (SSH) key to provide access to instances. This key will be added to the host to allow ssh access",
                            "type": "string"
                          }
                        },
                        "required": [
                          "clusterName",
                          "nodes"
                        ],
                        "type": "object"
                      },
                      "nodeClusterName": {
                        "type": "string"
                      },
                      "oCloudSiteId": {
                        "type": "string"
                      },
                      "policyTemplateParameters": {
                        "description": "policyTemplateParameters defines the available parameters for cluster configuration",
                        "properties": {
                          "cpu-isolated": {
                            "type": "string"
                          },
                          "cpu-reserved": {
                            "type": "string"
                          },
                          "hugepages-count": {
                            "type": "string"
                          },
                          "hugepages-default": {
                            "type": "string"
                          },
                          "hugepages-size": {
                            "type": "string"
                          },
                          "install-plan-approval": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-1": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-2": {
                            "type": "string"
                          },
                          "sriov-network-vlan-1": {
                            "type": "string"
                          },
                          "sriov-network-vlan-2": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "required": [
                      "nodeClusterName",
                      "oCloudSiteId",
                      "policyTemplateParameters",
                      "clusterInstanceParameters"
                    ],
                    "type": "object"
                  },
                  "templates": {
                    "clusterInstanceDefaults": "clustertemplate-sample.v1.0.0-clusterinstance-defaults",
                    "hwTemplate": "sample-hwtemplate-v1",
                    "policyTemplateDefaults": "clustertemplate-sample.v1.0.0-policytemplate-defaults",
                    "upgradeDefaults": "upgrade-defaults-v1"
                  },
                  "version": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwarePlugin",
                "metadata": {
                  "name": "metal3-hwplugin",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "apiRoot": "https://metal3-hardwareplugin-server.oran-o2ims.svc.cluster.local:8443",
                  "authClientConfig": {
                    "type": "ServiceAccount"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareProfile",
                "metadata": {
                  "name": "hardwareprofile-sample",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bios": {
                    "attributes": {
                      "SriovGlobalEnable": "Enabled",
                      "SysProfile": "Custom",
                      "WorkloadProfile": "TelcoOptimizedProfile"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareTemplate",
                "metadata": {
                  "name": "r740-blue-basic",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hardwareProvisioningTimeout": "60m",
                  "nodeGroupData": [
                    {
                      "hwProfile": "rh-profile-r740-bios-settings",
                      "name": "controller",
                      "resourceSelector": {
                        "resourceselector.clcm.openshift.io/server-colour": "blue",
                        "server-type": "R740"
                      },
                      "role": "master"
                    }
                  ]
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ProvisioningRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "provisioningrequest-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "provisioningrequest",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "123e4567-e89b-12d3-a456-426614174000"
                },
                "spec": {
                  "description": "Provisioning request for setting up a Single Node OpenShift (SNO) in the test environment.",
                  "name": "TestEnv-SNO-Provisioning-site-sno-du-1",
                  "templateName": "clustertemplate-sample",
                  "templateParameters": {
                    "clusterInstanceParameters": {
                      "additionalNTPSources": [
                        "NTP.server1",
                        "1.1.1.1"
                      ],
                      "apiVIPs": [
                        "192.0.2.2"
                      ],
                      "baseDomain": "example.com",
                      "clusterName": "site-sno-du-1",
                      "extraAnnotations": {
                        "AgentClusterInstall": {
                          "extra-annotation-key": "extra-annotation-value"
                        }
                      },
                      "extraLabels": {
                        "AgentClusterInstall": {
                          "extra-label-key": "extra-label-value"
                        },
                        "ManagedCluster": {
                          "cluster-version": "v4.16",
                          "clustertemplate-a-policy": "v1"
                        }
                      },
                      "ingressVIPs": [
                        "192.0.2.3"
                      ],
                      "machineNetwork": [
                        {
                          "cidr": "192.0.2.0/24"
                        }
                      ],
                      "nodes": [
                        {
                          "bootMode": "UEFI",
                          "extraAnnotations": {
                            "BareMetalHost": {
                              "extra-annotation-key": "extra-annotation-value"
                            }
                          },
                          "extraLabels": {
                            "BareMetalHost": {
                              "extra-label-key": "extra-label-value"
                            }
                          },
                          "hostName": "node1.baseDomain.com",
                          "nodeLabels": {
                            "node-role.kubernetes.io/infra": "",
                            "node-role.kubernetes.io/master": ""
                          },
                          "nodeNetwork": {
                            "config": {
                              "dns-resolver": {
                                "config": {
                                  "server": [
                                    "192.0.2.22"
                                  ]
                                }
                              },
                              "interfaces": [
                                {
                                  "ipv4": {
                                    "address": [
                                      {
                                        "ip": "192.0.2.10",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.11",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.12",
                                        "prefix-length": 24
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:601",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:602",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:603",
                                        "prefix-length": 64
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "name": "eno1",
                                  "type": "ethernet"
                                },
                                {
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:1302::100"
                                      }
                                    ],
                                    "enabled": true,
                                    "link-aggregation": {
                                      "mode": "balance-rr",
                                      "options": {
                                        "miimon": "140"
                                      },
                                      "slaves": [
                                        "eth0",
                                        "eth1"
                                      ]
                                    },
                                    "prefix-length": 64
                                  },
                                  "name": "bond99",
                                  "state": "up",
                                  "type": "bond"
                                }
                              ],
                              "routes": {
                                "config": [
                                  {
                                    "destination": "0.0.0.0/0",
                                    "next-hop-address": "192.0.2.254",
                                    "next-hop-interface": "eno1",
                                    "table-id": 254
                                  }
                                ]
                              }
                            }
                          }
                        }
                      ],
                      "serviceNetwork": [
                        {
                          "cidr": "233.252.0.0/24"
                        }
                      ],
                      "sshPublicKey": "ssh-rsa"
                    },
                    "nodeClusterName": "site-sno-du-1",
                    "oCloudSiteId": "local-west-12345",
                    "policyTemplateParameters": {
                      "sriov-network-vlan-1": "114",
                      "sriov-network-vlan-2": "111"
                    }
                  },
                  "templateVersion": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "ocloud.openshift.io/v1alpha1",
                "kind": "Inventory",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "inventory-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "inventory",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "default",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "caBundleName": "o2ims-custom-ca-certs",
                  "cloudID": "b7dcb3ff-583d-42d9-abb5-f484386fc688",
                  "ingress": {
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    }
                  },
                  "smo": {
                    "oauth": {
                      "clientSecretName": "oauth-client-secrets",
                      "groupsClaim": "roles",
                      "scopes": [
                        "openid",
                        "profile",
                        "role:ocloud-manager"
                      ],
                      "tokenEndpoint": "/protocol/openid-connect/token",
                      "url": "https://oauth.example.com:8443/realms/oran",
                      "usernameClaim": "preferred_username"
                    },
                    "registrationEndpoint": "/smo/v1/registration",
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    },
                    "url": "https://smo.example.com"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "AllocatedNode",
                "metadata": {
                  "name": "91c70863-8a83-422a-ab7a-a75f744d5210",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "groupName": "controller",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hwMgrNodeId": "r740xserver1",
                  "hwMgrNodeNs": "r740-pool",
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "nodeAllocationRequest": "metal3-b12f3e77848a4002bf40"
                },
                "status": {
                  "bmc": {
                    "address": "idrac-virtualmedia+https://127.0.0.1/redfish/v1/Systems/System.Embedded.1",
                    "credentialsName": "bmc-secret-r740xserver1"
                  },
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Provisioned",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "interfaces": [
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:19",
                      "name": "ens1f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1a",
                      "name": "ens3f1np1"
                    },
                    {
                      "label": "bootable-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1b",
                      "name": "eno1np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1c",
                      "name": "ens5f3"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1d",
                      "name": "ens5f1"
                    },
                    {
                      "label": "data-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1e",
                      "name": "eno2np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1f",
                      "name": "ens7f0np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:20",
                      "name": "ens7f1np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:21",
                      "name": "ens1f1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:22",
                      "name": "ens5f2"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:23",
                      "name": "ens5f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:24",
                      "name": "ens3f0np0"
                    }
                  ]
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "NodeAllocationRequest",
                "metadata": {
                  "name": "metal3-b12f3e77848a4002bf40",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "clusterId": "cluster1",
                  "configTransactionId": 1,
                  "hardwarePluginRef": "metal3-hwplugin",
                  "nodeGroup": [
                    {
                      "nodeGroupData": {
                        "hwProfile": "rh-profile-r740-bios-settings",
                        "name": "controller",
                        "resourceSelector": {
                          "resourceselector.clcm.openshift.io/server-colour": "blue",
                          "server-type": "R740"
                        },
                        "role": "master"
                      },
                      "size": 1
                    }
                  ],
                  "site": "ottawa"
                },
                "status": {
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Created",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwMgrPlugin": {
                    "observedGeneration": 1
                  },
                  "observedConfigTransactionId": 0,
                  "properties": {
                    "nodeNames": [
                      "91c70863-8a83-422a-ab7a-a75f744d5210"
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
          description: The O-Cloud Manager operator provides an implementation of
            the O-RAN O2 IMS API on top of OpenShift and ACM.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/oran-o2ims
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AllocatedNode is the schema for an allocated node
            displayName: Allocated Node
            kind: AllocatedNode
            name: allocatednodes.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ClusterTemplate is the Schema for the clustertemplates API
            displayName: Cluster Template
            kind: ClusterTemplate
            name: clustertemplates.clcm.openshift.io
            version: v1alpha1
          - description: HardwarePlugin is the Schema for the hardwareplugins API
            displayName: Hardware Plugin
            kind: HardwarePlugin
            name: hardwareplugins.clcm.openshift.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.clcm.openshift.io
            version: v1alpha1
          - description: HardwareTemplate is the Schema for the hardwaretemplates
              API
            displayName: Hardware Template
            kind: HardwareTemplate
            name: hardwaretemplates.clcm.openshift.io
            version: v1alpha1
          - description: Inventory is the Schema for the Inventory API
            displayName: O-Cloud Manager Inventory
            kind: Inventory
            name: inventories.ocloud.openshift.io
            version: v1alpha1
          - description: NodeAllocationRequest is the schema for an allocation request
              of nodes
            displayName: Node Allocation Request
            kind: NodeAllocationRequest
            name: nodeallocationrequests.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ProvisioningRequest is the Schema for the provisioningrequests
              API
            displayName: Provisioning Request
            kind: ProvisioningRequest
            name: provisioningrequests.clcm.openshift.io
            version: v1alpha1
        description: O-cloud manager operator
        displayName: o-cloud manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ORAN
        - O2IMS
        links:
        - name: Oran O2ims
          url: https://oran-o2ims.domain
        maintainers:
        - email: imihai@redhat.com
          name: IrinaMihai
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
        - registry.redhat.io/rhel9/postgresql-16@sha256:4f46bed6bce211be83c110a3452bd3f151a1e8ab150c58f2a02c56e9cc83db98
        - registry.redhat.io/openshift4/o-cloud-manager-operator-bundle@sha256:d403352abf14d6553da6665e47342927500608f2646cb17eac80414f44320ae0
        version: 4.20.1
      entries:
      - name: o-cloud-manager.v4.20.1
        version: 4.20.1
      - name: o-cloud-manager.v4.20.0
        version: 4.20.0
      name: stable
    defaultChannel: stable
    packageName: o-cloud-manager
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: ibmcloud-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibmcloud-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"ibmcloud.ibm.com/v1","kind":"Service","metadata":{"annotations":{"ibmcloud.ibm.com/self-healing":"enabled"},"name":"mytranslator"},"spec":{"plan":"lite","serviceClass":"language-translator"}},{"apiVersion":"ibmcloud.ibm.com/v1","kind":"Binding","metadata":{"name":"binding-translator"},"spec":{"parameters":[{"name":"serviceid_crn","value":"crn:v1:bluemix:public:iam-identity::a/ACCOUNT_ID::serviceid:SERVICE_ID"}],"secretName":"translator-secret","serviceName":"mytranslator"}}]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: cloudoperators/ibmcloud-operator:1.1.0
          createdAt: "2022-03-17T04:17:40Z"
          description: The IBM Cloud Operator provides a Kubernetes CRD-Based API
            to manage the lifecycle of IBM public cloud services.
          repository: https://github.com/IBM/cloud-operators
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Binding is an instance of a service binding resource on IBM
              Cloud. A Binding creates a secret with the service instance credentials.
            displayName: Binding
            kind: Binding
            name: bindings.ibmcloud.ibm.com
            version: v1
          - description: Service is an instance of a Service resource on IBM Cloud.
            displayName: Service
            kind: Service
            name: services.ibmcloud.ibm.com
            version: v1
        description: |-
          With the IBM Cloud Operator, you can provision and bind [IBM public cloud services](https://cloud.ibm.com/catalog#services) to your Kubernetes cluster in a Kubernetes-native way. The IBM Cloud Operator is based on the [Kubernetes custom resource definition (CRD) API](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) so that your applications can create, update, and delete IBM Cloud services from within the cluster by calling Kubnernetes APIs, instead of needing to use several IBM Cloud APIs in addition to configuring your app for Kubernetes.


          ## Features

          * **Service provisioning**: Create any service with any plan that is available in the [IBM Cloud catalog](https://cloud.ibm.com/catalog#services).

          * **Bindings management**: Automatically create Kubernetes secrets in your Kubernetes cluster with the credentials to bind to any provisioned service to the cluster.


          ## Upgrading the operator


          To upgrade an OperatorHub installation, use the OpenShift web console to perform the upgrade. If upgrading from the `alpha` channel subscription to `stable`, follow the additional upgrade instructions below.

          ### Upgrading to version v0.3 or v1.0
          **IMPORTANT NOTICE:** v0.1 and v0.2 used a different naming scheme for secrets and configmaps. Before you update the IBM Cloud Operator, create secret and configmap resources with these names and copy the contents of your previous resources to the new resources. Then, the upgraded operator recognizes and continues to update the resources.

          Existing `Service` and `Binding` resources **do not** need modification for the upgrade.

          | Previous names (v0.1 and v0.2)         | **Current names (v0.3 and v1.0)**             | Description                                                                           |
          |:---------------------------------------|:--------------------------------------------|:--------------------------------------------------------------------------------------|
          | secret-ibm-cloud-operator              | **ibmcloud-operator-secret**                | Secret with the API key, scoped to the namespace.                                     |
          | config-ibm-cloud-operator              | **ibmcloud-operator-defaults**              | ConfigMap with the default values for new resources.                                  |
          | ibm-cloud-operator                     | **ibmcloud-operator-config**                | ConfigMap with the management namespace configuration.                                |
          | ${namespace}-secret-ibm-cloud-operator | **${namespace}-ibmcloud-operator-secret**   | Management namespace Secret with the API key for ${namespace}.                        |
          | ${namespace}-config-ibm-cloud-operator | **${namespace}-ibmcloud-operator-defaults** | Management namespace ConfigMap with default values for new resources in ${namespace}. |

          **Tip:** Forgot to update the secret and configmap names before upgrading? The operator will not take action on Service and Binding resources until the new secrets and configmaps have been created. Creating these after the upgrade will also work.


          ### OperatorHub stable channel
          Continuous updates and bug fixes are provided in the latest stable channel. Subscribing to the `stable` channel in OperatorHub means you automatically get the latest updates without breaking backward compatibility.

          ### Changelog

          For a list of recent changes, see the [releases page](https://github.com/IBM/cloud-operators/releases).


          ## Prerequisites

          1.  Have an [IBM Cloud account](https://cloud.ibm.com/registration).
          2.  Have a cluster that runs Kubernetes version 1.11 or later (OpenShift 3.11 or later).
          3.  Install the required command line tools.
              *   [IBM Cloud CLI](https://cloud.ibm.com/docs/cli?topic=cloud-cli-getting-started) (`ibmcloud`)
              *   [Kubernetes CLI](https://kubernetes.io/docs/tasks/tools/install-kubectl/) (`kubectl`)
          4.  Log in to your IBM Cloud account from the CLI.

              ```bash
              ibmcloud login
              ```

          5.  Target the appropriate resource group (`-g`) and default region (`-r`) for provisioning services:

              ```bash
              ibmcloud target -g default -r us-south
              ```

          6.  If you also want to provision Cloud Foundry services, target the appropriate `org` and `space` (`--cf`).

              ```bash
              ibmcloud target --cf
              ```

          7.  Set the Kubernetes context of your CLI to your cluster so that you can run `kubectl` commands. For example, if your cluster runs OpenShift, use the `oc login` command.


          ## Setting up the operator

          You can use an installation script to set up the IBM Cloud Operator.
          By default, the installation script stores an API key in a Kubernetes secret in your cluster that can be accessed by the IBM Cloud Operator.
          Next, the script sets default values that are used to provision IBM Cloud services, like the resource group and region to provision the services in. Later, you can override any default value in the `Service` custom resource. Finally, the script deploys the operator in your cluster.

          To use your own API key, set the `IBMCLOUD_API_KEY` environment variable to the key before running the installation script:

              export IBMCLOUD_API_KEY="CUSTOM_API_KEY"

          If installed with Operator Hub, the operator will run in the `openshift-operators` namespace. Otherwise, it will run in the `ibmcloud-operator-system` namespace.

          Prefer to create the secrets and defaults yourself? See the [IBM Cloud Operator installation guide](https://github.com/IBM/cloud-operators/blob/master/docs/install.md).

          ### Using a service ID

          By default, the installation script creates an IBM Cloud API key that impersonates your user credentials, to use to set up the IBM Cloud Operator. However, you might want to create a service ID in IBM Cloud Identity and Access Managment (IAM). By using a service ID, you can control access for the IBM Cloud Operator without having the permissions tied to a particular user, such as if that user leaves the company. For more information, see the [IBM Cloud docs](https://cloud.ibm.com/docs/account?topic=account-serviceids).

          1.  Create a service ID in IBM Cloud IAM. If possible, do not use spaces in the names for your IAM credentials. When you use the operator binding feature, any spaces are replaced with underscores.

              ```bash
              ibmcloud iam service-id-create serviceid-ico -d service-ID-for-ibm-cloud-operator
              ```

          2.  Assign the service ID access to the required permissions to work with the IBM Cloud services that you want the operator to manage. The required permissions vary with each IBM Cloud service. You can also scope an access policy to different regions or resource groups. For example, the following command grants the service ID the **Administrator** platform role in the default resource group in the US South (Dallas) region. For more information, see the [IBM Cloud docs](https://cloud.ibm.com/docs/account?topic=account-userroles).

              ```bash
              ibmcloud iam service-policy-create serviceid-ico --roles Administrator --resource-group-name default --region us-south
              ```

          3.  Create an API key for the service ID.

              ```bash
              ibmcloud iam service-api-key-create apikey-ico serviceid-ico -d api-key-for-ibm-cloud-operator
              ```

          4.  Set the API key of the service ID as your CLI environment variable. Now, when you run the installation script, the script uses the service ID's API key. The following command is an example for macOS.

              ```bash
              export IBMCLOUD_API_KEY=<apikey-ico-value>
              ```

          5.  Confirm that the API key environment variable is set in your CLI.

              ```bash
              echo $IBMCLOUD_API_KEY
              ```

          6.  Follow the [prerequisite steps](https://github.com/IBM/cloud-operators/blob/master/README.md#prerequisites) to log in to the IBM Cloud account that owns the service ID.


          ### Installing the operator for OpenShift clusters

          Before you begin, complete the [prerequisite steps](https://github.com/IBM/cloud-operators/blob/master/README.md#prerequisites) to log in to IBM Cloud and your cluster, and optionally set up a [service ID API key](https://github.com/IBM/cloud-operators/blob/master/README.md#using-a-service-id).

          To configure the latest release for OpenShift before installing via the OperatorHub, run the following script:

          *   **Latest release**:

              ```bash
              curl -sL https://raw.githubusercontent.com/IBM/cloud-operators/master/hack/configure-operator.sh | bash
              ```

          *   **Specific release**: Replace `-v 0.0.0` with the specific version that you want to install.

              ```bash
              curl -sL https://raw.githubusercontent.com/IBM/cloud-operators/master/hack/configure-operator.sh | bash -s -- -v 0.0.0 store-creds
              ```


          ## Using the IBM Cloud Operator

          To use the IBM Cloud Operator, create a service instance and then bind the service to your cluster. For more information, see the [sample configuration files](https://github.com/IBM/cloud-operators/blob/master/config/samples), [user guide](https://github.com/IBM/cloud-operators/blob/master/docs/user-guide.md), and [reference documentation](https://github.com/IBM/cloud-operators/blob/master/README.md#reference).

          #### Step 1: Creating a service instance

          1.  To create an instance of an IBM public cloud service, first create a `Service` custom resource file. For more options, see the [Service properties](https://github.com/IBM/cloud-operators/blob/master/README.md#service-properties) reference doc.
              *   `<SERVICE_CLASS>` is the IBM Cloud service that you want to create. To list IBM Cloud services, run `ibmcloud catalog service-marketplace` and use the **Name** value from the output.
              *   `<PLAN>` is the plan for the IBM Cloud service that you want to create, such as `free` or `standard`. To list available plans, run `ibmcloud catalog service <SERVICE_CLASS> | grep plan`.

              ```yaml
              apiVersion: ibmcloud.ibm.com/v1
              kind: Service
              metadata:
                  name: myservice
              spec:
                  plan: <PLAN>
                  serviceClass: <SERVICE_CLASS>
              ```

          2.  Create the service instance in your cluster.

              ```bash
              kubectl apply -f filepath/myservice.yaml
              ```

          3.  Check that your service status is **Online** in your cluster.

              ```bash
              kubectl get services.ibmcloud
              NAME           STATUS   AGE
              myservice      Online   12s
              ```

          4.  Verify that your service instance is created in IBM Cloud.

              ```bash
              ibmcloud resource service-instances | grep myservice
              ```

          #### Step 2: Binding the service instance

          1.  To bind your service to the cluster so that your apps can use the service, create a `Binding` custom resource, where the `serviceName` field is the name of the `Service` custom resource that you previously created. For more options, see [Binding properties](https://github.com/IBM/cloud-operators/blob/master/README.md#binding-properties).

              ```yaml
              apiVersion: ibmcloud.ibm.com/v1
              kind: Binding
              metadata:
                  name: mybinding
              spec:
                  serviceName: myservice
              ```

          2.  Create the binding in your cluster.

              ```bash
              kubectl apply -f filepath/mybinding.yaml
              ```

          3.  Check that your service status is **Online**.

              ```bash
              kubectl get bindings.ibmcloud
              NAME         STATUS   AGE
              mybinding    Online   25s
              ```

          4.  Check that a secret of the same name as your binding is created. The secret contains the service credentials that apps in your cluster can use to access the service.

              ```bash
              kubectl get secrets
              NAME         TYPE      DATA   AGE
              mybinding    Opaque    6      102s
              ```
        displayName: IBM Cloud Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - IBM
        - Cloud
        links:
        - name: Source on GitHub
          url: https://github.com/ibm/cloud-operators
        maintainers:
        - email: johnstarich@johnstarich.com
          name: John Starich
        - email: mvaziri@us.ibm.com
          name: vazirim
        - email: greg.lanthier@ca.ibm.com
          name: Greg Lanthier
        - email: halacs@users.noreply.github.com
          name: Halacs
        - email: artberger@users.noreply.github.com
          name: Art
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: IBM
        relatedImages:
        - cloudoperators/ibmcloud-operator:1.1.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/openshift-community-operators/ibmcloud-operator@sha256:b22e89daf6b7f0fd55ba6db7eb7d7a48cbaef2844dfe20e558d7b821482e9480
        version: 1.1.0
      entries:
      - name: ibmcloud-operator.v1.1.0
        version: 1.1.0
      name: stable
    defaultChannel: stable
    packageName: ibmcloud-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: dns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dns-operator.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSRecord",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dns-operator",
                    "app.kubernetes.io/instance": "dnsrecord-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dnsrecord",
                    "app.kubernetes.io/part-of": "dns-operator"
                  },
                  "name": "dnsrecord-sample"
                },
                "spec": {
                  "endpoints": [
                    {
                      "dnsName": "dnsrecord-simple.example.com",
                      "recordTTL": 60,
                      "recordType": "A",
                      "targets": [
                        "52.215.108.61",
                        "52.30.101.221"
                      ]
                    }
                  ],
                  "providerRef": {
                    "name": "dns-provider-creds"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/dns-operator:v0.6.0
          createdAt: "2024-09-13T09:55:39Z"
          description: A Kubernetes Operator to manage the lifecycle of DNS resources
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kuadrant/dns-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DNSRecord is the Schema for the dnsrecords API
            displayName: DNSRecord
            kind: DNSRecord
            name: dnsrecords.kuadrant.io
            version: v1alpha1
        description: A Kubernetes Operator to manage the lifecycle of DNS resources
        displayName: DNS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dns
        - kuadrant
        links:
        - name: DNS Operator
          url: https://github.com/Kuadrant/dns-operator
        maintainers:
        - email: mnairn@redhat.com
          name: Michael Nairn
        - email: pbrookes@redhat.com
          name: Phil Brookes
        - email: cbrookes@redhat.com
          name: Craig Brookes
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/dns-operator@sha256:d5eadbf006aade69ac18156c891614da899d0779ba9e8fbaf755a256c46f055c
        - quay.io/kuadrant/dns-operator:v0.6.0
        version: 0.6.0
      entries:
      - name: dns-operator.v0.6.0
        version: 0.6.0
      name: stable
    defaultChannel: stable
    packageName: dns-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: sosivio
      provider-url: https://www.sosiv.io
    name: sosivio
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sosivio-operator.v1.5.1-97
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sosivio.sosiv.io/v1alpha1",
                "kind": "Sosivio",
                "metadata": {
                  "name": "sosivio"
                },
                "spec": {
                  "platform": "ocp4",
                  "useSha": false
                }
              },
              {
                "apiVersion": "sosivio.sosiv.io/v1alpha1",
                "kind": "Sosivio",
                "metadata": {
                  "name": "sosivio"
                },
                "spec": {
                  "platform": "ocp4",
                  "useSha": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Monitoring,Integration & Delivery,Logging & Tracing,Developer
            Tools
          com.redhat.openshift.versions: v4.1-v4.1
          containerImage: quay.io/sosivio/sosivio-operator:v1.5.1-97
          createdAt: "2021-10-28 01:01:01"
          description: Sosivio | Predictive Troubleshooting for Kubernetes
          operatorhub.io/ui-metadata-max-k8s-version: "1.25"
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Sosivio/operator
          support: Sosivio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Sosivio is the Schema for the sosivios API
            displayName: Sosivio
            kind: Sosivio
            name: sosivios.sosivio.sosiv.io
            version: v1alpha1
        description: "# Sosivio Operator\nThe Sosivio Operator for RedHat’s Openshift
          Container Platform allows users to quickly and easily deploy Sosivio’s Kubernetes
          Predictive Troubleshooting Platform on your cluster.\n\n# Sosivio Overview\n\nSosivio
          is the first and only non-intrusive and predictive autonomous cloud-native
          platform built specifically for Kubernetes from the ground up. Sosivio provides
          predictive troubleshooting tools, root cause determination and instant remediation
          for any failures in Kubernetes environments.\n\nPredict and Prevent!\n\nThe
          Operator will deploy and manage Sosivio on Kubernetes and OpenShift. Included
          are the following features;\n-   **Root Cause Analysis and Remediation**
          - predictive troubleshooting to prevent failures before they occur. Instantly
          understand where the root cause is and how to fix it.\n-   **Application
          Profiling** - analyze container resource consumption and recommendations
          for requests and limits.\n-   **Real-time Metrics** - in-depth, granular,
          and accurate real-time data from the process level inside containers (and
          pods) with failure correlation.\n-   **Cluster Health Checks** - proactive
          health checks for cluster infrastructure and applications running on the
          cluster.\n-   **Multi-Cluster View** - management, monitoring, and maintenance
          capabilities for all clusters from one location. \n-   **Kubernetes Components
          Alerting** - notifications sent through Slack, email and other 3rd party
          platforms.\n\n# Installation\nSosivio is completely **non-intrusive** and
          **does not require any persistent storage**. There is **no data offloading**
          outside of your Kubernetes cluster. Applying our Data Swirling methodology
          enables the product to perform at a **remarkably low resource footprint**
          and requires **no persistent volume configurations**.\n\n\nSosivio is installed
          under one namespace (labeled: \"sosivio\") which creates all the required
          components for the product.\n\nAll users will start with 4 weeks of Sosivio
          Premium after which Sosivio will automatically convert to the Community
          Version (free forever).\n\n# Help\nMore information about Sosivio and our
          product usage instructions can be found in our documentation [here](https://docs.sosiv.io/)
          \ \n"
        displayName: Sosivio | Predictive Troubleshooting for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sosivio
        - kubernetes
        - observanility
        - monitoring
        - root cause
        links:
        - name: Sosivio
          url: https://www.sosiv.io
        - name: Documentation
          url: https://docs.sosiv.io
        maintainers:
        - email: info@sosiv.io
          name: Sosivio
        maturity: stable
        minKubeVersion: 1.11.0
        provider:
          name: sosivio
          url: https://www.sosiv.io
        relatedImages:
        - quay.io/sosivio/sosivio-dashboard@sha256:fdfca5bb2123d1008cec2b656cde73c7e9364f84c5ff4f4a6fee5751b1bfb2f8
        - quay.io/sosivio/classifier@sha256:dd8bf145524db23ff333efa1bcdff258dab116d3534f95f73775d8dd339e6963
        - quay.io/sosivio/kube-rbac-proxy:v0.8.0
        - quay.io/sosivio/sosivio-operator@sha256:11bc627773bb5e08b629e0b013e7f600fcb4aaefbd97f2de337d339475616763
        - quay.io/sosivio/sosivio-node-pinger@sha256:937de52ad7b76e6cff4ad5197de9705988d61f285ebadac5ebadb5856f59ee58
        - quay.io/openshift-community-operators/sosivio@sha256:110d7f4fb993d65ff497eca57c42206faab07dc5f5b1f43b1b682387e7cd3a10
        - quay.io/sosivio/correlation-entities@sha256:c00af09b2589bad4740fd44d7a81c69b2e29138c360939b2a45f65edd44b6901
        - quay.io/sosivio/kube-rbac-proxy@sha256:34e8724e0f47e31eb2ec3279ac398b657db5f60f167426ee73138e2e84af6486
        - quay.io/sosivio/sosivio-node-collector@sha256:61ed8dd52de5edc09d16a31b18f2f65ad9344c0b6c9cfab323c3eb3d7e7ed060
        - quay.io/sosivio/crud-manager@sha256:38289a28829fa737917d76dd4810ba6140e123061ead0a4b79fa79b2e246a293
        - quay.io/sosivio/analyzer@sha256:3825608fe7c43ef059108e76665acc99fe72bea77d4d9e3852f6ad45e74379b1
        - quay.io/sosivio/notifier@sha256:35f5f3e8e5ccad914fcfe34fb4b4a1b044ee87f5a6141284cd5273f0b2b3bf22
        - quay.io/sosivio/contract-testing@sha256:cad6fac6ed3fdf2597ceb09ba5dbb7d81f70cf45f483a7064e3968215dd982e3
        - quay.io/sosivio/network-aggregator@sha256:e59d937f4d9c52acad0adadab39c6849d20b4ee72a83e239a33ea137f08323f4
        - quay.io/sosivio/nsq@sha256:781aac23ef0a1ed0af2b8e93d625ae49bd11dbdd98787d3c79dde8d128f3810d
        - quay.io/sosivio/communicator@sha256:fffec9a6c66594fde5f05e2dfb84361544ca9d53a345188c197a0ea6f53bc4b9
        - quay.io/sosivio/sosiviodb@sha256:a3c6c3975bc2b0316135ee5c547f1eb215f3a1f9c8b0a9c8eceff23415f93597
        - quay.io/sosivio/sequence-recognition@sha256:7335cf8f3e40bc46e8ca0de525d99f0655833b7c52d36dc273aa7b096eb70fa2
        - quay.io/sosivio/sosivio-operator:v1.5.1-97
        - quay.io/sosivio/actuator@sha256:a9abe9730800ca2b0a1bbd7a361b2ab3a818cbf127798314e5477fb1cb16ba4c
        - quay.io/sosivio/authentication@sha256:0ea6025f333576792f5b1fc4d96d9ab1a404749f185830410e71248683004da2
        - quay.io/sosivio/sosivio-node-netpacket@sha256:84dd159b1dfdb52dee3eb1c4c93f323bae49ce517ff44663b69978e14bdd8390
        - quay.io/sosivio/discovery-engine@sha256:b87b3f7c9ed3aed80d0a77788fd8925789450d9dc05d25017e89dff611cd82da
        version: 1.5.1
      entries:
      - name: sosivio-operator.v1.5.1-97
        version: 1.5.1
      - name: sosivio-operator.v1.5.0-95
        version: 1.5.0
      - name: sosivio-operator.v1.4.4-85
        version: 1.4.4
      - name: sosivio-operator.v1.4.3-83
        version: 1.4.3
      - name: sosivio-operator.v1.4.2-82
        version: 1.4.2
      - name: sosivio-operator.v1.4.1-81
        version: 1.4.1-81
      - name: sosivio-operator.v1.4.1.1-80
        version: 1.4.1-80
      - name: sosivio-operator.v1.4.1-78
        version: 1.4.1-79
      - name: sosivio-operator.v1.3.1-76
        version: 1.3.1-76
      - name: sosivio-operator.v1.3.0-75
        version: 1.3.0-75
      - name: sosivio-operator.v1.2.1-1
        version: 1.2.1-1
      - name: sosivio-operator.v1.2.0-1
        version: 1.2.0-1
      name: stable
    defaultChannel: stable
    packageName: sosivio
    provider:
      name: sosivio
      url: https://www.sosiv.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EPAM Delivery Platform
      provider-url: https://epam.github.io/edp-install/
    name: nexus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nexus-operator.v3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "Nexus",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexus-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexus",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexus-sample"
                },
                "spec": {
                  "secret": "nexus-secret",
                  "url": "https://nexus-example.com"
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "NexusRepository",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexusrepository-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexusrepository",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexusrepository-sample"
                },
                "spec": {
                  "go": {
                    "proxy": {
                      "cleanup": {
                        "policyNames": [
                          "cleanup-policy"
                        ]
                      },
                      "httpClient": {
                        "autoBlock": true,
                        "blocked": true,
                        "connection": {
                          "retries": 1440,
                          "timeout": 1440,
                          "userAgentSuffix": "user-agent-suffix"
                        }
                      },
                      "name": "go-proxy",
                      "negativeCache": {
                        "enabled": true,
                        "timeToLive": 1440
                      },
                      "online": true,
                      "proxy": {
                        "contentMaxAge": 1440,
                        "metadataMaxAge": 1440,
                        "remoteUrl": "https://test.com"
                      },
                      "routingRule": "routing-rule",
                      "storage": {
                        "blobStoreName": "blob-store-name",
                        "strictContentTypeValidation": true
                      }
                    }
                  },
                  "nexusRef": {
                    "name": "nexus-sample"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "NexusRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexusrole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexusrole",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexusrole-sample"
                },
                "spec": {
                  "description": "test-role",
                  "id": "test-role",
                  "name": "test-role",
                  "nexusRef": {
                    "kind": "Nexus",
                    "name": "nexus-sample"
                  },
                  "privileges": [
                    "nx-blobstores-all"
                  ]
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "NexusUser",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexususer-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexususer",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexususer-sample"
                },
                "spec": {
                  "email": "test@gmail.com",
                  "firstName": "John1",
                  "id": "test-user",
                  "lastName": "Doe",
                  "nexusRef": {
                    "kind": "Nexus",
                    "name": "nexus-sample"
                  },
                  "roles": [
                    "nx-admin"
                  ],
                  "secret": "$user-secret:password"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Developer Tools
          containerImage: docker.io/epamedp/nexus-operator:3.0.0
          createdAt: "2023-12-11T12:54:50Z"
          description: An Operator for managing Nexus entities.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/epam/edp-nexus-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Nexus is the Schema for the nexus API.
            displayName: Nexus
            kind: Nexus
            name: nexuses.edp.epam.com
            version: v1alpha1
          - description: NexusRepository is the Schema for the nexusrepositories API.
            displayName: Nexus Repository
            kind: NexusRepository
            name: nexusrepositories.edp.epam.com
            version: v1alpha1
          - description: NexusRole is the Schema for the nexusroles API.
            displayName: Nexus Role
            kind: NexusRole
            name: nexusroles.edp.epam.com
            version: v1alpha1
          - description: NexusUser is the Schema for the nexususers API.
            displayName: Nexus User
            kind: NexusUser
            name: nexususers.edp.epam.com
            version: v1alpha1
        description: |
          Nexus Operator is an operator that is responsible for establishing
          a connection to provided NexusRepository Server, reconciling Nexus entities (groups,
          users, repositories, etc) according to the created CRs.

          ## Quick Start

          1. Create a User in the Nexus Repository.

          2. Insert newly created user credentials into Kubernetes secret:

              ```yaml
              apiVersion: v1
              kind: Secret
              metadata:
                name:  nexus-secret
              type: Opaque
              data:
                username: dXNlcg==   # base64-encoded value of "user"
                password: cGFzcw==   # base64-encoded value of "pass"
              ```

          3. Create Custom Resource `kind: Nexus` with Nexus instance URL and secret created on the previous step:

              ```yaml
              apiVersion: v1.edp.epam.com/v1alpha1
              kind: Nexus
              metadata:
                name: nexus-sample
              spec:
                secret: nexus-secret                # Secret name
                url: https://nexus.example.com      # Nexus URL
              ```

              Wait for the `.status` field with  `status.connected: true`
        displayName: EDP Nexus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - edp
        - nexus
        - operator
        - artifact
        - storage
        links:
        - name: Nexus Operator
          url: https://github.com/epam/edp-nexus-operator
        maintainers:
        - email: SupportEPMD-EDP@epam.com
          name: epmd-edp
        maturity: alpha
        provider:
          name: EPAM Delivery Platform
          url: https://epam.github.io/edp-install/
        relatedImages:
        - quay.io/openshift-community-operators/nexus-operator@sha256:277b94985c0dc982abb76b5dd8c93b37305ccca32c000d67552d540d4918cbba
        - docker.io/epamedp/nexus-operator:3.0.0
        version: 3.0.0
      entries:
      - name: nexus-operator.v3.0.0
        version: 3.0.0
      name: alpha
    defaultChannel: alpha
    packageName: nexus-operator
    provider:
      name: EPAM Delivery Platform
      url: https://epam.github.io/edp-install/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://access.redhat.com/products/red-hat-integration
    name: red-hat-camel-k
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
          createdAt: "2024-10-07T13:45:51Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          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: "true"
          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.skipRange: '>=1.8.0 <1.10.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:72ed79d0b4bf82ab58d22a174190f69401da83d80a09785648148760e1803d9d
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
        version: 1.10.8+0.1733993735.p
      entries:
      - name: red-hat-camel-k-operator.v1.10.8-0.1731578390.p
        version: 1.10.8+0.1731578390.p
      - name: red-hat-camel-k-operator.v1.10.8
        version: 1.10.8
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993120.p
        version: 1.10.8+0.1733993120.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731485816.p
        version: 1.10.8+0.1731485816.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124835.p
        version: 1.10.8+0.1733124835.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124325.p
        version: 1.10.8+0.1733124325.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731894055.p
        version: 1.10.8+0.1731894055.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731893478.p
        version: 1.10.8+0.1731893478.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
        version: 1.10.8+0.1733993735.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
        version: 1.10.8+0.1733135130.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1723633518.p
        version: 1.10.7+0.1723633518.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724202359.p
        version: 1.10.7+0.1724202359.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724145144.p
        version: 1.10.7+0.1724145144.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724144664.p
        version: 1.10.7+0.1724144664.p
      - name: red-hat-camel-k-operator.v1.10.7
        version: 1.10.7
      - name: red-hat-camel-k-operator.v1.10.7-0.1723632902.p
        version: 1.10.7+0.1723632902.p
      - name: red-hat-camel-k-operator.v1.10.6
        version: 1.10.6
      - name: red-hat-camel-k-operator.v1.10.5
        version: 1.10.5
      - name: red-hat-camel-k-operator.v1.10.5-0.1705608149.p
        version: 1.10.5+0.1705608149.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1699536334.p
        version: 1.10.4+0.1699536334.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1700072719.p
        version: 1.10.4+0.1700072719.p
      - name: red-hat-camel-k-operator.v1.10.4
        version: 1.10.4
      - name: red-hat-camel-k-operator.v1.10.3
        version: 1.10.3
      - name: red-hat-camel-k-operator.v1.10.2
        version: 1.10.2
      - name: red-hat-camel-k-operator.v1.10.1
        version: 1.10.1
      - name: red-hat-camel-k-operator.v1.10.1-0.1695295065.p
        version: 1.10.1+0.1695295065.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693789561.p
        version: 1.10.1+0.1693789561.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693378374.p
        version: 1.10.1+0.1693378374.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1682325781.p
        version: 1.10.0+0.1682325781.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1687356936.p
        version: 1.10.0+0.1687356936.p
      - name: red-hat-camel-k-operator.v1.10.0
        version: 1.10.0
      - name: red-hat-camel-k-operator.v1.10.0-0.1679561624.p
        version: 1.10.0+0.1679561624.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1678893647.p
        version: 1.10.0+0.1678893647.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: 1.10.x
    - currentCSV: red-hat-camel-k-operator.v1.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1beta1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:9e4fb5369e0479d4a68f60725e7d12abdc66c552babe59f1358f6e6b0f26357d
          createdAt: "2020-10-06T02:45:00Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:c60664e5da8eb23bbd918b1c13b83565b1f33a1aa8961b425232fa1ef4d1a6f1
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:9e4fb5369e0479d4a68f60725e7d12abdc66c552babe59f1358f6e6b0f26357d
        version: 1.4.2
      entries:
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: 1.4.x
    - currentCSV: red-hat-camel-k-operator.v1.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
          createdAt: "2022-08-15T20:17:25Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          olm.skipRange: '>=1.6.7 <=1.6.8'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:bcc0ef48ec42c88d212173167615feb2cf276c133b26b866ae3453af7ab1ee80
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
        version: 1.6.10
      entries:
      - name: red-hat-camel-k-operator.v1.6.10
        version: 1.6.10
      - name: red-hat-camel-k-operator.v1.6.9
        version: 1.6.9
      name: 1.6.x
    - currentCSV: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:e916f9040d3f4feb26cc1534d3ab2722890b34c7fe146cdce8b6085b47206e22
          createdAt: "2022-11-28T10:43:18Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          olm.skipRange: '>=1.6.7 <1.8.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:82cafd48db8107dd141064ce7530468b11804c8c54235a317eb450a7606bac3e
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:e916f9040d3f4feb26cc1534d3ab2722890b34c7fe146cdce8b6085b47206e22
        version: 1.8.2+0.1675913507.p
      entries:
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: 1.8.x
    - currentCSV: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
          createdAt: "2024-10-07T13:45:51Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          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: "true"
          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.skipRange: '>=1.8.0 <1.10.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:72ed79d0b4bf82ab58d22a174190f69401da83d80a09785648148760e1803d9d
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
        version: 1.10.8+0.1733993735.p
      entries:
      - name: red-hat-camel-k-operator.v1.10.8-0.1731578390.p
        version: 1.10.8+0.1731578390.p
      - name: red-hat-camel-k-operator.v1.10.8
        version: 1.10.8
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993120.p
        version: 1.10.8+0.1733993120.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731485816.p
        version: 1.10.8+0.1731485816.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124835.p
        version: 1.10.8+0.1733124835.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124325.p
        version: 1.10.8+0.1733124325.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731894055.p
        version: 1.10.8+0.1731894055.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731893478.p
        version: 1.10.8+0.1731893478.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
        version: 1.10.8+0.1733993735.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
        version: 1.10.8+0.1733135130.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1723633518.p
        version: 1.10.7+0.1723633518.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724202359.p
        version: 1.10.7+0.1724202359.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724145144.p
        version: 1.10.7+0.1724145144.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724144664.p
        version: 1.10.7+0.1724144664.p
      - name: red-hat-camel-k-operator.v1.10.7
        version: 1.10.7
      - name: red-hat-camel-k-operator.v1.10.7-0.1723632902.p
        version: 1.10.7+0.1723632902.p
      - name: red-hat-camel-k-operator.v1.10.6
        version: 1.10.6
      - name: red-hat-camel-k-operator.v1.10.5
        version: 1.10.5
      - name: red-hat-camel-k-operator.v1.10.5-0.1705608149.p
        version: 1.10.5+0.1705608149.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1699536334.p
        version: 1.10.4+0.1699536334.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1700072719.p
        version: 1.10.4+0.1700072719.p
      - name: red-hat-camel-k-operator.v1.10.4
        version: 1.10.4
      - name: red-hat-camel-k-operator.v1.10.3
        version: 1.10.3
      - name: red-hat-camel-k-operator.v1.10.2
        version: 1.10.2
      - name: red-hat-camel-k-operator.v1.10.1
        version: 1.10.1
      - name: red-hat-camel-k-operator.v1.10.1-0.1695295065.p
        version: 1.10.1+0.1695295065.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693789561.p
        version: 1.10.1+0.1693789561.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693378374.p
        version: 1.10.1+0.1693378374.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1682325781.p
        version: 1.10.0+0.1682325781.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1687356936.p
        version: 1.10.0+0.1687356936.p
      - name: red-hat-camel-k-operator.v1.10.0
        version: 1.10.0
      - name: red-hat-camel-k-operator.v1.10.0-0.1679561624.p
        version: 1.10.0+0.1679561624.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1678893647.p
        version: 1.10.0+0.1678893647.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: candidate
    - currentCSV: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
          createdAt: "2024-10-07T13:45:51Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          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: "true"
          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.skipRange: '>=1.8.0 <1.10.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:72ed79d0b4bf82ab58d22a174190f69401da83d80a09785648148760e1803d9d
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
        version: 1.10.8+0.1733993735.p
      entries:
      - name: red-hat-camel-k-operator.v1.10.8-0.1731578390.p
        version: 1.10.8+0.1731578390.p
      - name: red-hat-camel-k-operator.v1.10.8
        version: 1.10.8
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993120.p
        version: 1.10.8+0.1733993120.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731485816.p
        version: 1.10.8+0.1731485816.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124835.p
        version: 1.10.8+0.1733124835.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124325.p
        version: 1.10.8+0.1733124325.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731894055.p
        version: 1.10.8+0.1731894055.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731893478.p
        version: 1.10.8+0.1731893478.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
        version: 1.10.8+0.1733993735.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
        version: 1.10.8+0.1733135130.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1723633518.p
        version: 1.10.7+0.1723633518.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724202359.p
        version: 1.10.7+0.1724202359.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724145144.p
        version: 1.10.7+0.1724145144.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724144664.p
        version: 1.10.7+0.1724144664.p
      - name: red-hat-camel-k-operator.v1.10.7
        version: 1.10.7
      - name: red-hat-camel-k-operator.v1.10.7-0.1723632902.p
        version: 1.10.7+0.1723632902.p
      - name: red-hat-camel-k-operator.v1.10.6
        version: 1.10.6
      - name: red-hat-camel-k-operator.v1.10.5
        version: 1.10.5
      - name: red-hat-camel-k-operator.v1.10.5-0.1705608149.p
        version: 1.10.5+0.1705608149.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1699536334.p
        version: 1.10.4+0.1699536334.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1700072719.p
        version: 1.10.4+0.1700072719.p
      - name: red-hat-camel-k-operator.v1.10.4
        version: 1.10.4
      - name: red-hat-camel-k-operator.v1.10.3
        version: 1.10.3
      - name: red-hat-camel-k-operator.v1.10.2
        version: 1.10.2
      - name: red-hat-camel-k-operator.v1.10.1
        version: 1.10.1
      - name: red-hat-camel-k-operator.v1.10.1-0.1695295065.p
        version: 1.10.1+0.1695295065.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693789561.p
        version: 1.10.1+0.1693789561.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693378374.p
        version: 1.10.1+0.1693378374.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1682325781.p
        version: 1.10.0+0.1682325781.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1687356936.p
        version: 1.10.0+0.1687356936.p
      - name: red-hat-camel-k-operator.v1.10.0
        version: 1.10.0
      - name: red-hat-camel-k-operator.v1.10.0-0.1679561624.p
        version: 1.10.0+0.1679561624.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1678893647.p
        version: 1.10.0+0.1678893647.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: latest
    - currentCSV: red-hat-camel-k-operator.v1.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
          createdAt: "2022-08-15T20:17:25Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          olm.skipRange: '>=1.6.7 <=1.6.8'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:bcc0ef48ec42c88d212173167615feb2cf276c133b26b866ae3453af7ab1ee80
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
        version: 1.6.10
      entries:
      - name: red-hat-camel-k-operator.v1.6.10
        version: 1.6.10
      - name: red-hat-camel-k-operator.v1.6.9
        version: 1.6.9
      name: stable
    defaultChannel: 1.10.x
    packageName: red-hat-camel-k
    provider:
      name: Red Hat
      url: https://access.redhat.com/products/red-hat-integration
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://github.com/redhat-developer/app-services-operator/
    name: rhoas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhoas-operator.0.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhoas.redhat.com/v1alpha1",
                "kind": "ServiceRegistryConnection",
                "metadata": {
                  "name": "example",
                  "namespace": "example-namespace",
                  "labels": {
                    "app.kubernetes.io/component": "external-service",
                    "app.kubernetes.io/managed-by": "rhoas"
                  }
                },
                "spec": {
                  "accessTokenSecretName": "rh-managed-services-api-accesstoken",
                  "serviceRegistryId": "exampleId",
                  "credentials": {
                    "serviceAccountSecretName": "service-account-secret"
                  }
                }
              },
              {
                "apiVersion": "rhoas.redhat.com/v1alpha1",
                "kind": "CloudServiceAccountRequest",
                "metadata": {
                  "name": "example",
                  "namespace": "example-namespace"
                },
                "spec": {
                  "serviceAccountName": "rhoas-sa",
                  "serviceAccountDescription": "Operator created service account",
                  "serviceAccountSecretName": "service-account-credentials",
                  "accessTokenSecretName": "rh-managed-services-api-accesstoken"
                }
              },
              {
                "apiVersion": "rhoas.redhat.com/v1alpha1",
                "kind": "CloudServicesRequest",
                "metadata": {
                  "name": "example",
                  "namespace": "example-namespace",
                  "labels": {
                    "app.kubernetes.io/component": "external-service",
                    "app.kubernetes.io/managed-by": "rhoas"
                  }
                },
                "spec": {
                  "accessTokenSecretName": "rh-cloud-services-api-accesstoken"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          certified: "false"
          containerImage: quay.io/rhoas/service-operator:0.13.0
          createdAt: "2023-01-20 16:09:37"
          description: Red Hat OpenShift Application Services Operator
          olm.skipRange: '>=0.0.1 <0.13.0'
          repository: https://github.com/redhat-developer/app-services-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Creates RHOAS Service Accounts
            displayName: Cloud Service Account Request
            kind: CloudServiceAccountRequest
            name: cloudserviceaccountrequests.rhoas.redhat.com
            version: v1alpha1
          - description: Cloud Services Request
            displayName: Cloud Services Request
            kind: CloudServicesRequest
            name: cloudservicesrequests.rhoas.redhat.com
            version: v1alpha1
          - description: Binds Kafka Instance
            displayName: Kafka Connection
            kind: KafkaConnection
            name: kafkaconnections.rhoas.redhat.com
            version: v1alpha1
          - description: Binds Service Registry Instance
            displayName: Service Registry Connection
            kind: ServiceRegistryConnection
            name: serviceregistryconnections.rhoas.redhat.com
            version: v1alpha1
        description: "**OpenShift Application Services Operator (RHOAS-Operator)**
          creates instances of Red Hat OpenShift Application Services in your cluster.
          Operator is currently available as limited Beta and it cannot be consumed
          without invitation.\n\nRed Hat OpenShift Application Services, when added
          to Red Hat OpenShift Dedicated,  provide a streamlined developer experience
          for building, deploying,  and scaling cloud-native applications in open
          hybrid-cloud environments.   \n\nRHOAS-Operator enables developers to connect
          with their Application Services directly in their own cluster by using [RHOAS
          cli](https://github.com/redhat-developer/app-services-cli) and OpenShift
          Console UI.  \n\nRHOAS-Operator requires developers to connect with their
          Red Hat OpenShift Streams for Apache Kafka (RHOSAK) instances.  "
        displayName: OpenShift Application Services (RHOAS)
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - rhoas
        - kafka
        - serviceregistry
        - app-services
        - application
        - services
        links:
        - name: RHOAS Operator Documentation
          url: https://github.com/redhat-developer/app-services-operator/tree/main/docs
        maintainers:
        - email: rhosak-eval-support@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat Inc.
          url: https://github.com/redhat-developer/app-services-operator/
        relatedImages:
        - quay.io/openshift-community-operators/rhoas-operator@sha256:5299cd4c88012692b31d560ef981f80f994a0468552f43e03623adbf89b49ff6
        - quay.io/rhoas/service-operator:0.13.0
        version: 0.13.0
      entries:
      - name: rhoas-operator.0.13.0
        version: 0.13.0
      - name: rhoas-operator.0.12.0
        version: 0.12.0
      - name: rhoas-operator.0.11.0
        version: 0.11.0
      - name: rhoas-operator.0.9.6
        version: 0.9.6
      - name: rhoas-operator.0.9.5
        version: 0.9.5
      - name: rhoas-operator.0.9.3
        version: 0.9.3
      - name: rhoas-operator.0.9.2
        version: 0.9.2
      - name: rhoas-operator.0.9.1
        version: 0.9.1
      - name: rhoas-operator.0.9.0
        version: 0.9.0
      - name: rhoas-operator.0.8.2
        version: 0.8.2
      - name: rhoas-operator.0.7.10
        version: 0.7.10
      - name: rhoas-operator.0.7.9
        version: 0.7.9
      - name: rhoas-operator.0.7.8
        version: 0.7.8
      - name: rhoas-operator.0.7.6
        version: 0.7.6
      - name: rhoas-operator.0.7.2
        version: 0.7.2
      - name: rhoas-operator.0.7.1
        version: 0.7.1
      - name: rhoas-operator.0.6.8
        version: 0.6.8
      name: beta
    defaultChannel: beta
    packageName: rhoas-operator
    provider:
      name: Red Hat Inc.
      url: https://github.com/redhat-developer/app-services-operator/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: m88i Labs
      provider-url: ""
    name: nexus-operator-m88i
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nexus-operator.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.m88i.io/v1alpha1",
                "kind": "Nexus",
                "metadata": {
                  "name": "nexus3"
                },
                "spec": {
                  "networking": {
                    "expose": false
                  },
                  "persistence": {
                    "persistent": false
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "2",
                      "memory": "2Gi"
                    },
                    "requests": {
                      "cpu": "1",
                      "memory": "2Gi"
                    }
                  },
                  "useRedHatImage": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/m88i/nexus-operator:0.6.0
          createdAt: "2019-11-16T13:12:22Z"
          description: Nexus Operator to deploy and manage Nexus 3.x servers
          operators.operatorframework.io/builder: operator-sdk-v1.4.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/m88i/nexus-operator
          support: m88i Labs
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: Nexus
            kind: Nexus
            name: nexus.apps.m88i.io
            version: v1alpha1
        description: |-
          Creates a new Nexus 3.x deployment in a Kubernetes cluster. Will help DevOps to have a quick Nexus application exposed to the world that can be used in a CI/CD process:

          * Deploys a new Nexus 3.x server based on either Community or Red Hat images
          * Creates an [Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) in Kubernetes (1.14+) environments to expose the application to the world
          * On OpenShift, creates a Route to expose the service outside the cluster
          * Automatically creates Apache, Red Hat and JBoss Maven repositories
          * Automatically updates Nexus within the same minor version

          [See our documentation](https://github.com/m88i/nexus-operator/blob/main/README.md) for more installation and usage scenarios.

          If you experience any issues or have any ideas for new features, please [file an issue in our Github repository](https://github.com/m88i/nexus-operator/issues) or send an email to our maillist: [nexus-operator@googlegroups.com](mailto:nexus-operator@googlegroups.com)

          *Please note that the operator is an individual work and it's not provided nor supported by Sonatype.*
        displayName: Nexus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nexus
        - sonatype
        - maven
        - docker
        - ci
        - continuous integration
        - continuous delivery
        - repository
        - repository manager
        - dev tools
        links:
        - name: Documentation
          url: https://github.com/m88i/nexus-operator/blob/main/README.md
        - name: Nexus Operator source code repository
          url: https://github.com/m88i/nexus-operator
        maintainers:
        - email: nexus-operator@googlegroups.com
          name: m88i Labs
        maturity: alpha
        provider:
          name: m88i Labs
        relatedImages:
        - quay.io/m88i/nexus-operator:0.6.0
        - quay.io/openshift-community-operators/nexus-operator-m88i@sha256:46cd06d477b4d09dbfca7ca4434ea58f881314138ed744c6390033bd6fb7dc0f
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        version: 0.6.0
      entries:
      - name: nexus-operator.v0.6.0
        version: 0.6.0
      name: alpha
    defaultChannel: alpha
    packageName: nexus-operator-m88i
    provider:
      name: m88i Labs
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: MinIO
      provider-url: https://min.io
    name: minio-minkms
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: minio-minkms.v2025.12.17191008
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "minkms.min.io/v1alpha1",
                "kind": "MinKMS",
                "metadata": {
                  "name": "my-minkms",
                  "namespace": "ns-1"
                },
                "spec": {
                  "apiKeySecret": {
                    "name": "my-api-key"
                  },
                  "configuration": {
                    "name": "my-kms-server-config"
                  },
                  "hsmSecret": {
                    "name": "my-kms-hsm"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "registry-creds"
                    }
                  ],
                  "replicas": 2,
                  "volumeClaimTemplate": {
                    "metadata": {
                      "name": "minkms-volume"
                    },
                    "spec": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "100Mi"
                        }
                      },
                      "storageClassName": "standard"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security, Storage
          createdAt: "2025-12-17T19:10:08Z"
          description: MinIO AIStor is the standard for building large scale AI data
            infrastructure.
          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"
          operatorframework.io/suggested-namespace: aistor
          operators.openshift.io/valid-subscription: Contact MinIO for subscription
            information.
          operators.operatorframework.io.bundle.channel.default.v1: stable
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: unknown
          support: min.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: MinKMS
            name: minkmses.minkms.min.io
            version: v1alpha1
        description: |-
          Highly available, powerful and operationally simple, MinIO's Enterprise Key Management Server (MinKMS) is optimized for large storage infrastructures where billions of cryptographic keys are required.

          MinIO's AIStor MinKMS establishes its foundational trust using the concept of an hardware security module (but given MinKMS is software, this is only a concept). That module assumes a pivotal role in sealing and unsealing the MinKMS root encryption key. The module responsibility extends to safeguarding the integrity of MinKMS by allowing the unsealing of its encrypted on-disk state and facilitating communication among nodes within a MinKMS cluster.

          It solves the challenges associated with billions of cryptographic keys and hundreds of thousands of cryptographic operations per node per second - which are commonplace in larger deployments.

          <b>High Availability and Fault Tolerance</b>
          In the dynamic landscape of large-scale systems, network or node outages are inevitable. Taking down a cluster for maintenance is rarely feasible. MinIO's AIStor MinKMS ensures uninterrupted availability, even when faced with such disruptions, mitigating cascading effects that can take down the entire storage infrastructure. Specifically, you could lose all but one node of a cluster and still handle any encryption, decryption or data key generation requests.

          <b>Scalability</b>
          While the amount of data usually only increases, the load on a large-scale storage system may vary significantly from time to time. MinIO's AIStor MinKMS supports dynamic cluster resizing and nodes can be added or removed at any point without incurring any downtime.

          <b>Multi-Tenancy</b>
          Large-scale storage infrastructures are often used by many applications and teams across the entire organization. Isolating teams and groups into their own namespaces is a core requirement. MinIO's AIStor MinKMS supports namespacing in the form of enclaves. Each tenant can be assigned its own enclave which is completely independent and isolated from all other enclaves on the MinKMS cluster.

          <b>Predictable Behavior</b>
          MinIO's AIStor MinKMS is designed to be easily managed, providing operators with the ability to comprehend its state intuitively. Due to its simple design, MinIO's AIStor MinKMS is significantly easier to operate than similar solutions that rely on more complex consensus algorithms like Raft, or Paxos.

          <b>Consistent and Performant</b>
          The responsiveness of the MinKMS for GET/PUT operations directly influences the overall efficiency and speed of the storage system. MinIO's AIStor MinKMS nodes don't have to coordinate when handling such requests from the storage system. Therefore, the performance of a MinIO's AIStor MinKMS cluster increases linearly with the number of nodes. Further, MinIO's AIStor MinKMS supports request pipelining to handle hundreds of thousands of cryptographic operations per node and second.

          <b>Simplicity</b>
          Operating a MinKMS cluster does not require expertise in cryptography or distributed systems. Everything can be done from the AIStor Console.

          <a href="https://resources.min.io/request-a-demo-marketplaces/">Request a demo today</a>
        displayName: MinKMS
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AI Storage
        - MinIO
        links:
        - name: Minio AIStor
          url: https://min.io
        - name: Support
          url: https://subnet.min.io
        - name: Github
          url: https://github.com/minio/aistor
        maintainers:
        - email: dev@min.io
          name: MinIO
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: MinIO
          url: https://min.io
        relatedImages:
        - quay.io/minio/aistor/operator@sha256:2c3cb98193815b76f73e89bb3d6311ccd75c3b354bdccd04758715a08b163436
        - registry.connect.redhat.com/minkms/minkms@sha256:2bf2b896bd39e585ed3797f3e37922b7ac60b51e92cc80667199280c4aea5c99
        - quay.io/minio/aistor/minkms-sidecar@sha256:f460aef51e32fd6bd556f3d30f14f026855cb4010f662c82d1964e1596c50f2a
        - quay.io/minio/aistor/minkms@sha256:4c089d787b4ebf862dbce7826ac6eadeca5e0811b1f0379f43fb732f321fda8f
        version: 2025.12.17191008
      entries:
      - name: minio-minkms.v2025.12.17191008
        version: 2025.12.17191008
      - name: minio-minkms.v2025.12.16205103
        version: 2025.12.16205103
      name: stable
    defaultChannel: stable
    packageName: minio-minkms
    provider:
      name: MinIO
      url: https://min.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Nutanix
      provider-url: ""
    name: nutanixcsioperator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nutanixcsioperator.v3.3.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "crd.nutanix.com/v1alpha1",
                "kind": "NutanixCsiStorage",
                "metadata": {
                  "name": "nutanixcsistorage"
                },
                "spec": {
                  "ntnxInitConfigMap": {
                    "usePC": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/nutanix/nutanix-csi-operator@sha256:0c2f43cdc7d530fb0e8730abc225401f557f05806f5de3fcd82aedcf17ecb89e
          createdAt: "2025-11-28T07:13:29Z"
          description: An Operator for deploying and managing the Nutanix CSI Driver
          features.operators.openshift.io/csi: "true"
          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.skipRange: <3.3.9
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi","disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/nutanix/csi-operator
          support: Nutanix Support Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a new instance of Nutanix CSI Driver
            displayName: Nutanix CSI Storage
            kind: NutanixCsiStorage
            name: nutanixcsistorages.crd.nutanix.com
            version: v1alpha1
        description: "# Important\nPlease read the following instructions carefully
          before upgrading from 2.6.x to 3.3.9, for more information please refer
          to [documentation](https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v3_3:CSI-Volume-Driver-v3_3)
          \n- Please do not upgrade to the CSI 3.x operator if:\n    * You are using
          LVM volumes.\n\n- CSI 3.3.9 supports PC service account-based authentication
          in Nutanix Volumes and Nutanix Files. Instead of using username and password
          secrets, Prism Central administrators can now create service accounts, configure
          RBAC, and use generated API keys for secure storage provisioning. Create
          a Nutanix Prism Central secret with service account key as shown [here](#create-a-nutanix-pc-secret)\n\nNote:
          In order to use this feature you should uninstall the driver(delete existing
          nutanixcsistorage resource), create a nutanix-pc-secret with the service
          account key as shown [here](#create-a-nutanix-pc-secret) and install the
          driver again by passing the newly created secret name in pcSecretName and
          authType: \"service-auth\" in nutanixcsistorage spec.\n    \n- To upgrade
          from the CSI 2.6.x to CSI 3.3 (interacting with Prism Central) operator\n
          \   * Create a Nutanix Prism Central secret as explained below.\n    * Delete
          the csidriver object from the cluster:\n\n        ```\n        oc delete
          csidriver csi.nutanix.com\n        ```\n\n    * In the installed operators,
          go to Nutanix CSI Operator and change the subscription channel from stable
          to stable-3.x. \n    If you have installed the operator with automatic update
          approval, the operator will be automatically upgraded to CSI 3.3, and then
          the nutanixcsistorage resource will be upgraded.\n    An update plan will
          be generated for manual updates. Upon approval, the operator will be successfully
          upgraded.\n    \n- Direct upgrades from CSI 2.6.x to CSI 3.3 interacting
          with Prism Element are not supported. \n    The only solution is to recreate
          the nutanixcsistorage instance by following the below procedure:\n    -
          In the installed operators, go to Nutanix CSI Operator and delete the nutanixcsistorage
          instance.\n    - Next change the subscription channel from stable to stable-3.x.\n
          \   - Verify the following points:\n        - Ensure a Nutanix Prism Element
          secret is present in the namespace.\n        - Ensure that all the storage
          classes with provisioner: csi.nutanix.com have a controller publish secret
          as explained below.\n\n            ```\n            csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n            csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n            ```\n\n            If this secret
          is not present in the storage class please delete and recreate the storage
          classes with the required secrets.\n    - Create a new instance of nutanixcsistorage
          from this operator by specifying `usePC: false` in YAML spec section.\n
          \   - Caution: Moving from CSI driver interacting with Prism Central to
          CSI driver interacting with Prism Element is not supported.\n    \n- Troubleshooting:\n
          \   \n    If the upgrade was unsuccessful and you want to revert to version
          CSI 2.6.x, please delete the csidriver object as explained above, uninstall
          the operator (no need to delete the nutanixcsistorage custom resource),
          and install version CSI 2.6.x from the stable channel.\n# Overview \nThe
          Nutanix CSI Operator for Kubernetes packages, deploys, manages, and upgrades
          the Nutanix CSI Driver on Kubernetes and OpenShift for dynamic provisioning
          of persistent volumes on the Nutanix Enterprise Cloud platform.\nThe Nutanix
          Container Storage Interface (CSI) Driver for Kubernetes leverages Nutanix
          Volumes and Nutanix Files to provide scalable and persistent storage for
          stateful applications.\nWith the Nutanix CSI Provider, you can:\n*  **Provide
          persistent storage to your containers**\n    * Leverage PVC resources to
          consume dynamically Nutanix storage\n    * With Files storage classes, applications
          on multiple pods can access the same storage and have the benefit of multi-pod
          read and write access. \n## Warning\nIf you upgrade from a previous version,
          make sure to validate your existing StorageClass parameters against the
          corresponding [documentation](https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v3_3:CSI-Volume-Driver-v3_3)\n##
          Supported Access mode\n| Storage Class mode | ReadWriteOnce | ReadOnlyMany
          | ReadWriteMany |\n|--------------------|---------------|--------------|---------------|\n|
          Nutanix Volumes    | yes           | yes          | no            |\n| Nutanix
          Files      | yes           | yes          | yes           |\n## Supported
          orchestration platforms\nThe following table details orchestration platforms
          suitable for deployment of the Nutanix CSI driver.\n| Orchestration platform
          | Version | Architecture |\n|------------------------|---------|--------------|\n|
          Red Hat OpenShift      | 4.12    | x86          |\n| Red Hat OpenShift      |
          4.13    | x86          |\n| Red Hat OpenShift      | 4.14    | x86          |\n|
          Red Hat OpenShift      | 4.15    | x86          |\n| Red Hat OpenShift      |
          4.16    | x86          |\n| Red Hat OpenShift      | 4.17    | x86          |\n|
          Red Hat OpenShift      | 4.18    | x86          |\n| Red Hat OpenShift      |
          4.19    | x86          |\n| Red Hat OpenShift      | 4.20    | x86          |\n##
          Configuring k8s secret and storage class\nTo use this driver, create the
          relevant storage classes and secrets and deploy your NutanixCsiStorage instance
          by following the [documentation](https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v3_3:CSI-Volume-Driver-v3_3)
          or the example in below section:\n### Create a Nutanix PE secret\n```yaml\napiVersion:
          v1\nkind: Secret\nmetadata:\n  name: ntnx-pe-secret\n  namespace: openshift-cluster-csi-drivers\nstringData:\n
          \ # prism-ip:prism-port:username:password.\n  key: 1.2.3.4:9440:admin:password\n
          \ files-key: \"fileserver01.sample.com:csi:password1\"\n```\n### Create
          a Nutanix PC secret\n- basic authentication\n```yaml\napiVersion: v1\nkind:
          Secret\nmetadata:\n  name: ntnx-pc-secret\n  namespace: openshift-cluster-csi-drivers\nstringData:\n
          \ # prism-ip:prism-port:username:password.\n  key: 1.2.3.4:9440:admin:password\n```\n-
          service account based authentication\n```yaml\napiVersion: v1\nkind: Secret\nmetadata:\n
          \ name: ntnx-pc-secret\n  namespace: openshift-cluster-csi-drivers\ntype:
          Opaque\nstringData:\n  host: 1.2.3.4\n  port: 9440\n  key_type: \"api-key\"\n
          \ key_value: \"xxxxxxxxxxx\"\n  auth_type: \"service-auth\"\n```\n### Create
          a NutanixCsiStorage resource to deploy your driver\nYou can do it directly
          inside the Operator UI with the `Create instance` button or with the following
          resource\n```yaml\napiVersion: crd.nutanix.com/v1alpha1\nkind: NutanixCsiStorage\nmetadata:\n
          \ name: nutanixcsistorage\n  namespace: openshift-cluster-csi-drivers\nspec:
          \n  ntnxInitConfigMap:\n    usePC : true (false for PE based installations.
          Default is true.)\n```\n### Create storage classes\n- volume mode example
          for 3.x installation\n```yaml\nkind: StorageClass\napiVersion: storage.k8s.io/v1\nmetadata:\n
          \ name: nutanix-volume\nprovisioner: csi.nutanix.com\nparameters:\n  csi.storage.k8s.io/provisioner-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/provisioner-secret-namespace: openshift-cluster-csi-drivers\n
          \ csi.storage.k8s.io/node-publish-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/node-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-expand-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-expand-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/fstype: ext4\n  storageContainer:
          default-container\n  storageType: NutanixVolumes\n  #description: \"description
          added to each storage object created by the driver\"\n  #hypervisorAttached:
          ENABLED\nallowVolumeExpansion: true\nreclaimPolicy: Delete\n```\n- volume
          mode example for 2.x installation\n```yaml\nkind: StorageClass\napiVersion:
          storage.k8s.io/v1\nmetadata:\n  name: nutanix-volume\nprovisioner: csi.nutanix.com\nparameters:\n
          \ csi.storage.k8s.io/provisioner-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/provisioner-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/node-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/node-publish-secret-namespace: openshift-cluster-csi-drivers\n
          \ csi.storage.k8s.io/controller-expand-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/controller-expand-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/fstype: ext4\n   storageContainer:
          default-container\n   storageType: NutanixVolumes\n   #description: \"description
          added to each storage object created by the driver\"\n   #isSegmentedIscsiNetwork:
          \"false\"\n   #whitelistIPMode: ENABLED\n   #chapAuth: ENABLED\n   #isLVMVolume:
          \"false\"\n   #numLVMDisks: 4\n allowVolumeExpansion: true\n reclaimPolicy:
          Delete\n```\n- dynamic files mode example\n```yaml\nkind: StorageClass\napiVersion:
          storage.k8s.io/v1\nmetadata:\n    name: nutanix-dynfiles\nprovisioner: csi.nutanix.com\nparameters:\n
          \ dynamicProv: ENABLED\n  nfsServerName: fs\n  csi.storage.k8s.io/provisioner-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/provisioner-secret-namespace: openshift-cluster-csi-drivers\n
          \ csi.storage.k8s.io/node-publish-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/node-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-expand-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-expand-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  storageType: NutanixFiles\n  squashType:
          \"none\"\n  #description: \"description added to each storage object created
          by the driver\"\nallowVolumeExpansion: true\n```"
        displayName: Nutanix CSI Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Nutanix
        - CSI
        - Volumes
        - Files
        - Storage
        links:
        - name: Documentation
          url: https://portal.nutanix.com/page/documents/list?type=software&filterKey=product&filterVal=CSI
        maintainers:
        - email: cloudnative@nutanix.com
          name: Nutanix Cloud Native
        maturity: beta
        provider:
          name: Nutanix
        relatedImages:
        - registry.connect.redhat.com/nutanix/ntnx-csi-os@sha256:92ab85b4f728ad1b1f31b75ec591f569cf37717035ce6df04bf4569577f5f86c
        - registry.connect.redhat.com/nutanix/ntnx-csi-os@sha256:f23dd74af1a094c473983916d04cfd60290c806f8ce6adf379a6211bbdd0b9c3
        - registry.connect.redhat.com/nutanix/nutanix-csi-operator-bundle@sha256:7d6b9e826cd5043f7d8148e5036d2d2cfb070b4b651d7ca86cbd2591f42d6e52
        - registry.connect.redhat.com/nutanix/nutanix-csi-operator@sha256:0c2f43cdc7d530fb0e8730abc225401f557f05806f5de3fcd82aedcf17ecb89e
        - registry.k8s.io/sig-storage/csi-external-health-monitor-controller@sha256:9e581022a4e063b9d8b4f9466a36eabe4d0ced3badc8e353f13b700074ce4553
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:0f64602ea791246712b51df334bbd701a0f31df9950a4cb9c28c059f367baa9e
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:9af9bf28430b00a0cedeb2ec29acadce45e6afcecd8bdf31c793c624cfa75fa7
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:f1bd6ee18c4021c1c94f29edfab89b49b6a4d1b800936c19dbef2d75f8202f2d
        - registry.k8s.io/sig-storage/livenessprobe@sha256:82adbebdf5d5a1f40f246aef8ddbee7f89dea190652aefe83336008e69f9a89f
        - registry.k8s.io/sig-storage/csi-attacher@sha256:d7325367ab72b2d469a5091d87b4fc01142d2d13d1a28b2defbbe3e6fdbc4611
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:04c55b93a032ad8075cae540d60fc740a72c31006590dbdb61ad4ab9813959d0
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:10624570c0aceb03f55f1eb07147b0c537e4676869cca2e9bd4bab113f810ac4
        - registry.k8s.io/sig-storage/csi-resizer@sha256:3c116f543f0590aeff3299c8bb0683f250817d11a77d9e9071b15a0bffdabcd9
        version: 3.3.9
      entries:
      - name: nutanixcsioperator.v3.3.9
        version: 3.3.9
      - name: nutanixcsioperator.v3.3.8
        version: 3.3.8
      - name: nutanixcsioperator.v3.3.4
        version: 3.3.4
      name: stable-3.x
    defaultChannel: stable-3.x
    packageName: nutanixcsioperator
    provider:
      name: Nutanix
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: JohnSnowLabs
      provider-url: ""
    name: nlp-server
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nlp-server.v0.8.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.johnsnowlabs.com/v1",
                "kind": "Nlpserver",
                "metadata": {
                  "name": "nlpserver-sample"
                },
                "spec": {
                  "ExtraEnv": {
                    "johnsnowlabs_client_id": "sI4MKSmLHOX2Pg7XhM3McJS2oyKG5PHcp0BlANEW",
                    "nb_uid": "1000",
                    "nb_user": "johnsnowlabs",
                    "pyspark_version": "3.0.2",
                    "spark_nlp_version": "3.4.4"
                  },
                  "affinity": {},
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "johnsnowlabs/nlp-server",
                    "tag": "0.8.0rc1"
                  },
                  "imagePullSecrets": [],
                  "ingress": {
                    "annotations": {
                      "kubernetes.io/ingress.class": "nginx",
                      "nginx.ingress.kubernetes.io/ssl-redirect": "true"
                    },
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "nlp-server.jsl.aiplatform.eks.test.johnsnowlabs.com",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": [
                      {
                        "hosts": [
                          "nlp-server.jsl.aiplatform.eks.test.johnsnowlabs.com"
                        ],
                        "secretName": "annotationlab-tls-secret"
                      }
                    ]
                  },
                  "livenessProbe": "httpGet:\n  path: /\n  port: http\ninitialDelaySeconds: 15\ntimeoutSeconds: 3\n",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podSecurityContext": {},
                  "readinessProbe": "httpGet:\n  path: /\n  port: http\ninitialDelaySeconds: 15\ntimeoutSeconds: 3\n",
                  "replicaCount": 1,
                  "resources": {},
                  "securityContext": {},
                  "service": {
                    "port": 5000,
                    "portName": "http",
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": "nlp-server-sa"
                  },
                  "tolerations": []
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: registry.johnsnowlabs.com/nlp-server/nlp-server-operator:0.8.6
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Nlpserver
            name: nlpservers.apps.johnsnowlabs.com
            version: v1
        description: NLPServer from JohnSnow labs
        displayName: nlp-server
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nlp-server
        links:
        - name: Nlp Server
          url: https://johnsnowlabs.com
        maturity: alpha
        provider:
          name: JohnSnowLabs
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/openshift-community-operators/nlp-server@sha256:6f80f44822301252540c6b808a20cea327f0eedeadc7643d31fc743de5c5e696
        - registry.johnsnowlabs.com/nlp-server/nlp-server-operator:0.8.6
        version: 0.8.6
      entries:
      - name: nlp-server.v0.8.6
        version: 0.8.6
      name: alpha
    defaultChannel: alpha
    packageName: nlp-server
    provider:
      name: JohnSnowLabs
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ThinkParQ
      provider-url: https://www.thinkparq.com
    name: beegfs-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: beegfs-csi-driver-operator.v1.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "beegfs.csi.netapp.com/v1",
                "kind": "BeegfsDriver",
                "metadata": {
                  "name": "csi-beegfs-cr"
                },
                "spec": {
                  "nodeAffinityControllerService": {
                    "preferredDuringSchedulingIgnoredDuringExecution": [
                      {
                        "preference": {
                          "matchExpressions": [
                            {
                              "key": "node-role.kubernetes.io/master",
                              "operator": "Exists"
                            }
                          ]
                        },
                        "weight": 50
                      }
                    ],
                    "requiredDuringSchedulingIgnoredDuringExecution": {
                      "nodeSelectorTerms": [
                        {
                          "matchExpressions": [
                            {
                              "key": "node.openshift.io/os_id",
                              "operator": "NotIn",
                              "values": [
                                "rhcos"
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  },
                  "nodeAffinityNodeService": {
                    "requiredDuringSchedulingIgnoredDuringExecution": {
                      "nodeSelectorTerms": [
                        {
                          "matchExpressions": [
                            {
                              "key": "node.openshift.io/os_id",
                              "operator": "NotIn",
                              "values": [
                                "rhcos"
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: ghcr.io/thinkparq/beegfs-csi-driver-operator:v1.8.0
          createdAt: 2021-06-30:03:11:00
          description: Install and manage the BeeGFS CSI driver
          operatorframework.io/suggested-namespace: beegfs-csi
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ThinkParQ/beegfs-csi-driver
          support: ThinkParQ
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys the BeeGFS CSI driver
            displayName: BeeGFS Driver
            kind: BeegfsDriver
            name: beegfsdrivers.beegfs.csi.netapp.com
            version: v1
        description: |
          The BeeGFS Container Storage Interface (CSI) driver provides high performing and scalable storage for workloads
          running in container orchestrators like Kubernetes. It allows containers to access existing datasets or request
          on-demand ephemeral or persistent high speed storage backed by BeeGFS parallel file systems.

          This operator eases the installation and management of the BeeGFS CSI driver in an OpenShift or other Operator
          Lifecycle Manager enabled cluster.

          ### Documentation

          Compatibility information and a quick start guide for the BeeGFS CSI driver itself are available on our [main GitHub
          page](https://www.github.com/ThinkParQ/beegfs-csi-driver). Additional detailed documentation for the driver is
          available in the [docs directory](https://www.github.com/ThinkParQ/beegfs-csi-driver/tree/master/docs) and for the
          operator is available in the [operator
          README](https://www.github.com/ThinkParQ/beegfs-csi-driver/tree/master/operator/README.md).

          ### Important Notes

          The BeeGFS client packages and kernel module must be pre-installed on all nodes that will run the driver. See the
          driver ["Getting Started" guide](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/README.md#getting-started)
          for additional information.

          The BeeGFS CSI driver is only supported on nodes running a [BeeGFS supported Linux
          distribution](https://doc.beegfs.io/latest/release_notes.html#supported-linux-distributions-and-kernels). Red Hat
          CoreOS (RHCOS), the default distribution in OpenShift environments, is NOT supported. However, Red Hat Enterprise
          Linux (RHEL) nodes can be added to an OpenShift cluster and RHEL is supported for running BeeGFS. By default, the
          operator will install the driver with a node affinity that ensures it does not run on RHCOS nodes. See the driver
          [compatibility
          matrix](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/README.md#interoperability-and-csi-feature-matrix)
          for additional information.

          We have recently published experimental manifests that enable the BeeGFS CSI driver on OpenShift nodes running
          RHCOS. These manifests are not intended for production use. See [this
          README](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/deploy/openshift-beegfs-client/README.md) for more
          details.

          All driver configuration can be specified through the BeegfsDrivers API (in a BeegfsDriver Custom Resource)
          except for BeeGFS connAuth information, which must be placed separately into a Kubernetes Secret. See the [ConnAuth
          Configuration
          section](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/operator/README.md#connauth-configuration) of the
          operator documentation for additional information.

          Starting with version 1.4.0 of the BeeGFS CSI driver the driver and operator images will be signed using the Cosign
          tool. Refer to the [BeeGFS CSI driver operator
          README](https://www.github.com/ThinkParQ/beegfs-csi-driver/tree/master/operator/README.md)
          for details on how to verify the operator and driver image signatures.
        displayName: BeeGFS CSI Driver
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - CSI
        - BeeGFS
        - ThinkParQ
        - HPC
        - AI
        - High-Performance Computing
        links:
        - name: BeeGFS introduction
          url: https://www.beegfs.io/c/
        - name: BeeGFS documentation
          url: https://doc.beegfs.io/latest/index.html
        - name: BeeGFS CSI driver source code
          url: https://github.com/ThinkParQ/beegfs-csi-driver
        - name: BeeGFS blog posts
          url: https://www.beegfs.io/c/blog/
        maintainers:
        - email: csi-driver@beegfs.io
          name: ThinkParQ
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: ThinkParQ
          url: https://www.thinkparq.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/beegfs-csi-driver-operator@sha256:f62ae88c74faef808733ab2b905e1bc5b80ca3f3cc96bb946a8e939a73ccb59f
        - ghcr.io/thinkparq/beegfs-csi-driver-operator:v1.8.0
        version: 1.8.0
      entries:
      - name: beegfs-csi-driver-operator.v1.8.0
        version: 1.8.0
      - name: beegfs-csi-driver-operator.v1.7.0
        version: 1.7.0
      - name: beegfs-csi-driver-operator.v1.6.0
        version: 1.6.0
      - name: beegfs-csi-driver-operator.v1.5.0
        version: 1.5.0
      - name: beegfs-csi-driver-operator.v1.4.0
        version: 1.4.0
      - name: beegfs-csi-driver-operator.v1.3.0
        version: 1.3.0
      - name: beegfs-csi-driver-operator.v1.2.2
        version: 1.2.2
      - name: beegfs-csi-driver-operator.v1.2.1
        version: 1.2.1
      - name: beegfs-csi-driver-operator.v1.2.0
        version: 1.2.0
      name: stable
    defaultChannel: stable
    packageName: beegfs-csi-driver-operator
    provider:
      name: ThinkParQ
      url: https://www.thinkparq.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: amq-streams
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amqstreams.v2.2.2-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.3",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.3",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:f908d848b5e67de4b162597b190ef18d449ffd4b6540457b24b491445d5c5ea3
          createdAt: "2022-07-01 10:33:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          olm.skipRange: '>=2.1.0-0 <2.2.2-2'
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ", "Red Hat Application Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from AMQ Streams 1.7, migration to `v1beta2` needs to be completed for all AMQ Streams CRDs and CRs before the upgrade to 2.2 is done! If upgrading from AMQ Streams version earlier than 1.7, you need to first install the CRDs from AMQ Streams 1.7 and complete the migration to `v1beta2` for all AMQ Streams CRDs and CRs before the upgrade to 2.2 is done! For more details about the CRD upgrades, see the [documentation](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.2/html/deploying_and_upgrading_amq_streams_on_openshift/assembly-upgrade-str#assembly-upgrade-resources-str).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.2/html/deploying_and upgrading_amq_streams_on_openshift/assembly-upgrade-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: Red Hat Integration - AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-streams-bridge-rhel8@sha256:5d49bd23da40590e74422424b9457398bad89da8276718ff6a8a088e901c8345
        - registry.redhat.io/amq7/amq-streams-kafka-31-rhel8@sha256:d0607285fae95365b9d34b9474466824fb5ad012871204e8b13e52e438b66bf5
        - registry.redhat.io/amq7/amq-streams-kafka-32-rhel8@sha256:e3bbfff505f12c0360e175f4640c2dd9a7adcf3dce1ae2f586f2bde805ed8b1f
        - registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:f908d848b5e67de4b162597b190ef18d449ffd4b6540457b24b491445d5c5ea3
        - registry.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:826354c9c06a06f998e522a88d6a81239e003e1d6a2633e9b7b27b8a61d5fe38
        version: 2.2.2-2
      entries:
      - name: amqstreams.v2.2.2-2
        version: 2.2.2-2
      - name: amqstreams.v2.2.2-1
        version: 2.2.2-1
      - name: amqstreams.v2.2.2-0
        version: 2.2.2-0
      - name: amqstreams.v2.2.1-7
        version: 2.2.1-7
      - name: amqstreams.v2.2.1-6
        version: 2.2.1-6
      - name: amqstreams.v2.2.1-5
        version: 2.2.1-5
      - name: amqstreams.v2.2.1-4
        version: 2.2.1-4
      - name: amqstreams.v2.2.1-3
        version: 2.2.1-3
      - name: amqstreams.v2.2.1-2
        version: 2.2.1-2
      - name: amqstreams.v2.2.1-1
        version: 2.2.1-1
      - name: amqstreams.v2.2.1-0
        version: 2.2.1-0
      - name: amqstreams.v2.2.0-5
        version: 2.2.0-5
      name: amq-streams-2.2.x
    - currentCSV: amqstreams.v2.3.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.3.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.3"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.3.1",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:2e46a25144d697761f0119deaf528c6f1c2ccd04e2acd95c661b0df4f32e1a9f
          createdAt: "2022-10-31 17:05:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          olm.skipRange: '>=2.2.0-0 <2.3.0-4'
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.3.0 release, AMQ Streams supports only OCP 4.8 to 4.12!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 2.2 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more details, see the [documentation](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.3/html/deploying_and_upgrading_amq_streams_on_openshift/assembly-upgrade-str#assembly-upgrade-resources-str

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.3/html/deploying_and upgrading_amq_streams_on_openshift/assembly-upgrade-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-streams-bridge-rhel8@sha256:c822b3d87f7dea233fc523238d8d0516e42f9a3d252f50f4d427c934995f9b22
        - registry.redhat.io/amq7/amq-streams-kafka-32-rhel8@sha256:0152a85f2d0bc85881dacaee62c6e8b0b8b04f57a542b9b82dc93ad5303d6bf9
        - registry.redhat.io/amq7/amq-streams-kafka-33-rhel8@sha256:046c2539fef32bd928fc1f4f4c41e63f9a143b371fcc201d78c66f48fc34ea32
        - registry.redhat.io/amq7/amq-streams-operator-bundle@sha256:a59435a22c2f470b149ff721240f14144d2e56200b141e59a4f1011267a6c925
        - registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:2e46a25144d697761f0119deaf528c6f1c2ccd04e2acd95c661b0df4f32e1a9f
        - registry.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        version: 2.3.0-4
      entries:
      - name: amqstreams.v2.3.0-4
        version: 2.3.0-4
      name: amq-streams-2.3.x
    - currentCSV: amqstreams.v2.4.0-3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.3"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:cd1fefcd199400a504b4b9942c24ba6becafcecc952a9e39fa2729228be79e77
          createdAt: "2022-10-31 17:05:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          olm.skipRange: '>=2.3.0-0 <2.4.0-3'
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.4.0 release, AMQ Streams supports only OCP 4.8 to 4.12!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more details, see the [documentation](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.4/html/deploying_and_managing_amq_streams_on_openshift/assembly-upgrade-str)

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.4/html/deploying_and upgrading_amq_streams_on_openshift/assembly-upgrade-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:8d467fc746b78440df06f6d88d266f6ac9b5a4574a2b17fd870c173a107f8d65
        - registry.redhat.io/amq-streams/kafka-33-rhel8@sha256:aa780a250444c2426be79e95366050a33f4a4c9d68c08b58743413ea67a2d6d7
        - registry.redhat.io/amq-streams/kafka-34-rhel8@sha256:50b3be789993cfeedc4923a8e760c1cf52498b2178be3abfa3719fc2d15ce723
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:1346dcee82f2120bd2af22be9f041e057bdc32f9ad1c3ef717d599ba6519faeb
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:cd1fefcd199400a504b4b9942c24ba6becafcecc952a9e39fa2729228be79e77
        version: 2.4.0-3
      entries:
      - name: amqstreams.v2.4.0-3
        version: 2.4.0-3
      - name: amqstreams.v2.4.0-2
        version: 2.4.0-2
      - name: amqstreams.v2.4.0-1
        version: 2.4.0-1
      name: amq-streams-2.4.x
    - currentCSV: amqstreams.v2.5.2-8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
          createdAt: "2023-07-10 21:47:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.2.0-0 <2.5.2-8'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.5.2 release, AMQ Streams supports only OCP 4.12 to 4.16!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more information, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:4ede5eeed159bddacfe830a768bab4996003d4c57a496fc8ec9b41df916d4acc
        - registry.redhat.io/amq-streams/kafka-34-rhel8@sha256:95bc35951eb545b918114af1e92a7139e2e3323b7d054dcb2a060843c7326d28
        - registry.redhat.io/amq-streams/kafka-35-rhel8@sha256:8c7e8ccb6c2d5da32b70d9d0c3919c303ad73a25447f6993d964f7b19cca1072
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:3d5bcf889f3d534402a8bbfa51fc4a9499b7d6dfaac0d7b11e91363b379be192
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        - registry.redhat.io/ubi8/openjdk-17@sha256:8796da64c626c5f63f31a4e3ac0ac3b179333a7c6d5472a195b9b3f61ccd1099
        version: 2.5.2-8
      entries:
      - name: amqstreams.v2.5.2-8
        version: 2.5.2-8
      - name: amqstreams.v2.5.2-7
        version: 2.5.2-7
      - name: amqstreams.v2.5.2-6
        version: 2.5.2-6
      - name: amqstreams.v2.5.2-5
        version: 2.5.2-5
      - name: amqstreams.v2.5.2-4
        version: 2.5.2-4
      - name: amqstreams.v2.5.2-3
        version: 2.5.2-3
      - name: amqstreams.v2.5.2-2
        version: 2.5.2-2
      - name: amqstreams.v2.5.2-1
        version: 2.5.2-1
      - name: amqstreams.v2.5.2-0
        version: 2.5.2-0
      - name: amqstreams.v2.5.1-5
        version: 2.5.1-5
      - name: amqstreams.v2.5.1-4
        version: 2.5.1-4
      - name: amqstreams.v2.5.1-3
        version: 2.5.1-3
      - name: amqstreams.v2.5.1-2
        version: 2.5.1-2
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.5.x
    - currentCSV: amqstreams.v2.6.0-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.6.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.6"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.6.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:dacf7ddffe7cbe2dc35e7d3290637b3334117e09dde986e6eaeaceded7069fbf
          createdAt: "2023-10-14 18:18:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.5.0-0 <2.6.0-2'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: "**Red Hat AMQ Streams** is a massively scalable, distributed,
          and high performance data streaming platform based on the Apache Kafka®
          project. AMQ Streams provides an event streaming backbone that allows microservices
          and other application components to exchange data with extremely high throughput
          and low latency.\n**From the 2.6.0 release, AMQ Streams supports only OCP
          4.11 to 4.14! \n**The core capabilities include:** * A pub/sub messaging
          model, similar to a traditional enterprise messaging system, in which application
          components publish and consume events to/from an ordered stream\n* The long
          term, fault-tolerant storage of events\n* The ability for a consumer to
          replay streams of events\n* The ability to partition topics for horizontal
          scalability\n### Upgrades\n**!!! IMPORTANT !!!** **Direct upgrade from AMQ
          Stream 1.7 or earlier is not supported!** You have to upgrade first to one
          of the previous versions of AMQ Streams. You will also need to convert the
          CRD resources. For more information, see the [documentation for AMQ Streams
          on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).\n###
          Supported Features\n* **Manages the Kafka Cluster** - Deploys and manages
          all of the components of this complex application, including dependencies
          like Apache ZooKeeper® that are traditionally hard to administer.\n* **Includes
          Kafka Connect** - Allows for configuration of common data sources and sinks
          to move data into and out of the Kafka cluster.\n* **Topic Management**
          - Creates and manages Kafka Topics within the cluster.\n* **User Management**
          - Creates and manages Kafka Users within the cluster.\n* **Connector Management**
          - Creates and manages Kafka Connect connectors.\n* **Includes Kafka Mirror
          Maker 1 and 2** - Allows for mirroring data between different Apache Kafka®
          clusters.\n* **Includes HTTP Kafka Bridge** - Allows clients to send and
          receive messages through an Apache Kafka® cluster via HTTP protocol.\n*
          **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing
          partition replicas according to specified goals in order to achieve the
          best cluster performance.\n* **Monitoring** - Built-in support for monitoring
          using Prometheus and provided Grafana dashboards\n### Upgrading your Clusters\nThe
          AMQ Streams Operator understands how to run and upgrade between a set of
          Kafka versions. When specifying a new version in your config, check to make
          sure you aren't using any features that may have been removed. For more
          information on upgrading, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).\n###
          Storage\nAn efficient data storage infrastructure is essential to the optimal
          performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires
          block storage. The use of file storage (for example, NFS) is not recommended.\nThe
          AMQ Streams Operator supports three types of data storage:\n* Ephemeral
          (Recommended for development only!)\n* Persistent\n* JBOD (Just a Bunch
          of Disks, suitable for Kafka only. Not supported in Zookeeper.)\nAMQ Streams
          also supports advanced operations such as adding or removing disks in Apache
          Kafka® brokers or resizing the persistent volumes (where supported by the
          infrastructure).\n### Documentation\nDocumentation for the current release
          can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).\n"
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:dacf7ddffe7cbe2dc35e7d3290637b3334117e09dde986e6eaeaceded7069fbf
        - registry.redhat.io/ubi8/openjdk-17@sha256:8796da64c626c5f63f31a4e3ac0ac3b179333a7c6d5472a195b9b3f61ccd1099
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:be7466ffd7f624f769eedca2e4106c597d2bf1d95cc9679f235e6dcdec66cfa9
        - registry.redhat.io/amq-streams/kafka-35-rhel8@sha256:fa8361e5089ab4449261f5a0ad57bd0bd059dc254b94bd9ab68340faae386947
        - registry.redhat.io/amq-streams/kafka-36-rhel8@sha256:8b10bfb697b48ba3ed246fb846384f4cc67f05f670e9521edf0f47f829869404
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:44a5c4cc3086e4eac42dc78a72b7492d13df0098017288278d9006e767a480a1
        version: 2.6.0-2
      entries:
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.6.x
    - currentCSV: amqstreams.v2.7.0-7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:671c1a2fcb0856cb208c0ead539fff9571fa2281a1e3d45b3df9ebd3df8c787e
          createdAt: "2024-03-09 21:27:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.6.0-0 <2.7.0-7'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.6.0 release, Streams supports only OCP 4.12 to 4.14!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:be9b82af13cbc120bb415abf4fcc97420e543172d6450b836c47344e4dcacd00
        - registry.redhat.io/amq-streams/kafka-36-rhel9@sha256:8890c3217343d9aa3dd2ab9c7fa1742f960b5a26e09906581ce6075e61dc2888
        - registry.redhat.io/amq-streams/kafka-37-rhel9@sha256:66362c800b78003d26df9471b7f21f5c9ad7fca8e8fd2511428dfc549cdf46c2
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:a7620559f3e5a0a4d5ecee44538619f698158847d9d0a06c7168404ed6f7cd36
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:b9dbbce235b7a4f45f42184cf0b908e91e17094e971bc29a8710f35127a6b06f
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:671c1a2fcb0856cb208c0ead539fff9571fa2281a1e3d45b3df9ebd3df8c787e
        version: 2.7.0-7
      entries:
      - name: amqstreams.v2.7.0-7
        version: 2.7.0-7
      - name: amqstreams.v2.7.0-6
        version: 2.7.0-6
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.7.x
    - currentCSV: amqstreams.v2.8.0-0-0.1738265624.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.8.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:675d4acc375fb20e1a3fd5755184a318341c15f9337a11ea41e902fcda6d0bec
          createdAt: "2024-08-22 15:19:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.7.0-0 <2.8.0-0'
          olm.substitutesFor: amqstreams.v2.8.0-0
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.8.0 release, Streams supports only OCP 4.12 to 4.14!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:b46457a0a7f63518bc12b2789f75afb0e44496e62de918b9b584129c7078de86
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:026418bae8b2d425d45b2b3481f65c241d89e25f455e3fbfcf2f79536d978bca
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:675d4acc375fb20e1a3fd5755184a318341c15f9337a11ea41e902fcda6d0bec
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:4df906cf1490922a4587d96250f3be6ff605fe2caf87dfba7b812c144c5c5774
        - registry.redhat.io/amq-streams/kafka-37-rhel9@sha256:17b2d255439f38c6ef54c0a56929ae636743b12c688d42223ac3fb58729e51ad
        - registry.redhat.io/amq-streams/kafka-38-rhel9@sha256:e771a84a458388c07ecf970ec625e4203c18e5d2bd91e7571d9c44ebb09313de
        version: 2.8.0-0+0.1738265624.p
      entries:
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.8.x
    - currentCSV: amqstreams.v2.9.3-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.9.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.9"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.9.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
          createdAt: "2024-08-22 15:19:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.5.0-0 <2.9.3-2'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.9.0 release, Streams supports only OCP 4.14 to 4.18!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:14a9fcbf0d8590e6182407c534cc207d76ffdaf6571bd6e066a8b5d2cfbe0833
        - registry.redhat.io/amq-streams/kafka-38-rhel9@sha256:f9fa8ced8078e1278e7744227979633bbe085446ce581414b3d6d49b87cb330a
        - registry.redhat.io/amq-streams/kafka-39-rhel9@sha256:f710c3db4fb289e255ebd4d8bfb2eac7a757c94a34e06fb1daecd0285d0938bc
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:f912d1c8ab83b26999b021f7c967649453b4f39928f63905adf6f827495905d0
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:813f793850f89fe48e2e627db980baddb099e7fb285fc3ebd75d73ff5ed0c0b9
        version: 2.9.3-2
      entries:
      - name: amqstreams.v2.9.3-2
        version: 2.9.3-2
      - name: amqstreams.v2.9.3-1
        version: 2.9.3-1
      - name: amqstreams.v2.9.3-0
        version: 2.9.3-0
      - name: amqstreams.v2.9.2-1
        version: 2.9.2-1
      - name: amqstreams.v2.9.2-0
        version: 2.9.2-0
      - name: amqstreams.v2.9.1-2
        version: 2.9.1-2
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.9.x
    - currentCSV: amqstreams.v2.9.3-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.9.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.9"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.9.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
          createdAt: "2024-08-22 15:19:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.5.0-0 <2.9.3-2'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.9.0 release, Streams supports only OCP 4.14 to 4.18!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:14a9fcbf0d8590e6182407c534cc207d76ffdaf6571bd6e066a8b5d2cfbe0833
        - registry.redhat.io/amq-streams/kafka-38-rhel9@sha256:f9fa8ced8078e1278e7744227979633bbe085446ce581414b3d6d49b87cb330a
        - registry.redhat.io/amq-streams/kafka-39-rhel9@sha256:f710c3db4fb289e255ebd4d8bfb2eac7a757c94a34e06fb1daecd0285d0938bc
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:f912d1c8ab83b26999b021f7c967649453b4f39928f63905adf6f827495905d0
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:813f793850f89fe48e2e627db980baddb099e7fb285fc3ebd75d73ff5ed0c0b9
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
        version: 2.9.3-2
      entries:
      - name: amqstreams.v2.9.3-2
        version: 2.9.3-2
      - name: amqstreams.v2.9.3-1
        version: 2.9.3-1
      - name: amqstreams.v2.9.3-0
        version: 2.9.3-0
      - name: amqstreams.v2.9.2-1
        version: 2.9.2-1
      - name: amqstreams.v2.9.2-0
        version: 2.9.2-0
      - name: amqstreams.v2.9.1-2
        version: 2.9.1-2
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.x
    - currentCSV: amqstreams.v3.0.1-7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.0.0",
                    "metadataVersion": "4.0-IV3",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.0.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.0.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:231861dd89a01b949e9713dc2b0049530643059b44ad711e3ba17509ab21564b
          createdAt: "2025-11-14T17:16:59Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.9.0-0 <3.0.1-7'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/kafka-39-rhel9@sha256:9ed77907cbed09eb66172b0d18855d723add80b18a82fcee424148bef81e1886
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:352ab87382fc1d1d3b68833a16770c75e081a0dd07788a8ba0ab9792837c628e
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:99e4a789597e567eea920004364a20c71580a2ca58fc68ffa5ec797160d174bf
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:dd27c81c5a13a01acf5c50a802ce94d737e9280cf4053a1f3739ff4c3c6ba053
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:231861dd89a01b949e9713dc2b0049530643059b44ad711e3ba17509ab21564b
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:5d1e188d3e7b12fbb1b94ed1ac58ea059609a53243ded1bee6d1f179c2b48b4a
        version: 3.0.1-7
      entries:
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-3.0.x
    - currentCSV: amqstreams.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.1.0",
                    "metadataVersion": "4.1-IV1",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
          createdAt: "2025-12-04T17:25:00Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/kafka-41-rhel9@sha256:e2a2d7a93678a4de948fc6bde45e2b251aa129a691f555c93003fef50cac1027
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:1be01356959972d6d8b4683d6449679c8705c08c13dcb0da02f96601ad6ef424
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:03051a89cc209fa54b9cf6c6119167959dcaf38761f50c8450ae3f694ccbd2d7
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:97320d4348dc793278b28345a7bb2c255bff0f1ec12a728b88789fe4b9c07f91
        version: 3.1.0-6
      entries:
      - name: amqstreams.v3.1.0-6
        version: 3.1.0-6
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-3.1.x
    - currentCSV: amqstreams.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.1.0",
                    "metadataVersion": "4.1-IV1",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
          createdAt: "2025-12-04T17:25:00Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:03051a89cc209fa54b9cf6c6119167959dcaf38761f50c8450ae3f694ccbd2d7
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:97320d4348dc793278b28345a7bb2c255bff0f1ec12a728b88789fe4b9c07f91
        - registry.redhat.io/amq-streams/kafka-41-rhel9@sha256:e2a2d7a93678a4de948fc6bde45e2b251aa129a691f555c93003fef50cac1027
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:1be01356959972d6d8b4683d6449679c8705c08c13dcb0da02f96601ad6ef424
        version: 3.1.0-6
      entries:
      - name: amqstreams.v3.1.0-6
        version: 3.1.0-6
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-3.x
    - currentCSV: amqstreams.v2.5.2-8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
          createdAt: "2023-07-10 21:47:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.2.0-0 <2.5.2-8'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.5.2 release, AMQ Streams supports only OCP 4.12 to 4.16!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more information, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/ubi8/openjdk-17@sha256:8796da64c626c5f63f31a4e3ac0ac3b179333a7c6d5472a195b9b3f61ccd1099
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:4ede5eeed159bddacfe830a768bab4996003d4c57a496fc8ec9b41df916d4acc
        - registry.redhat.io/amq-streams/kafka-34-rhel8@sha256:95bc35951eb545b918114af1e92a7139e2e3323b7d054dcb2a060843c7326d28
        - registry.redhat.io/amq-streams/kafka-35-rhel8@sha256:8c7e8ccb6c2d5da32b70d9d0c3919c303ad73a25447f6993d964f7b19cca1072
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:3d5bcf889f3d534402a8bbfa51fc4a9499b7d6dfaac0d7b11e91363b379be192
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        version: 2.5.2-8
      entries:
      - name: amqstreams.v2.5.2-8
        version: 2.5.2-8
      - name: amqstreams.v2.5.2-7
        version: 2.5.2-7
      - name: amqstreams.v2.5.2-6
        version: 2.5.2-6
      - name: amqstreams.v2.5.2-5
        version: 2.5.2-5
      - name: amqstreams.v2.5.2-4
        version: 2.5.2-4
      - name: amqstreams.v2.5.2-3
        version: 2.5.2-3
      - name: amqstreams.v2.5.2-2
        version: 2.5.2-2
      - name: amqstreams.v2.5.2-1
        version: 2.5.2-1
      - name: amqstreams.v2.5.2-0
        version: 2.5.2-0
      - name: amqstreams.v2.5.1-5
        version: 2.5.1-5
      - name: amqstreams.v2.5.1-4
        version: 2.5.1-4
      - name: amqstreams.v2.5.1-3
        version: 2.5.1-3
      - name: amqstreams.v2.5.1-2
        version: 2.5.1-2
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-lts
    - currentCSV: amqstreams.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.1.0",
                    "metadataVersion": "4.1-IV1",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
          createdAt: "2025-12-04T17:25:00Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:03051a89cc209fa54b9cf6c6119167959dcaf38761f50c8450ae3f694ccbd2d7
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:97320d4348dc793278b28345a7bb2c255bff0f1ec12a728b88789fe4b9c07f91
        - registry.redhat.io/amq-streams/kafka-41-rhel9@sha256:e2a2d7a93678a4de948fc6bde45e2b251aa129a691f555c93003fef50cac1027
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:1be01356959972d6d8b4683d6449679c8705c08c13dcb0da02f96601ad6ef424
        version: 3.1.0-6
      entries:
      - name: amqstreams.v3.1.0-6
        version: 3.1.0-6
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: stable
    defaultChannel: stable
    packageName: amq-streams
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Automotive SIG CentOS
      provider-url: ""
    name: automotive-infra
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: automotive-infra.v0.0.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "automotive.sig.centos.org/v1",
                "kind": "ContainerBuild",
                "metadata": {
                  "name": "cb-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "automotive.sig.centos.org/v1",
                "kind": "ImageBuild",
                "metadata": {
                  "name": "imagebuild-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "automotive.sig.centos.org/v1",
                "kind": "OperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "automotive-infra"
                  },
                  "name": "operatorconfig-sample",
                  "namespace": "automotive-infra-operator"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/fedora-sig-robotics/infra-ci-operator:v0.0.10
          createdAt: "2025-03-31T14:06:33Z"
          description: Streamline CI/CD for RHIVOS and its ecosystem using OpenShift
            Pipelines
          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: "true"
          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"
          operatorframework.io/suggested-namespace: automotive-infra-operator
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://gitlab.com/fedora/sigs/robotics/infra/infra-ci-operator
          support: https://gitlab.com/fedora/sigs/robotics/infra/infra-ci-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Client
            name: clients.jumpstarter.dev
            version: v1alpha1
          - kind: ContainerBuild
            name: containerbuilds.automotive.sig.centos.org
            version: v1
          - kind: ExporterAccessPolicy
            name: exporteraccesspolicies.jumpstarter.dev
            version: v1alpha1
          - kind: Exporter
            name: exporters.jumpstarter.dev
            version: v1alpha1
          - kind: ImageBuild
            name: imagebuilds.automotive.sig.centos.org
            version: v1
          - kind: Lease
            name: leases.jumpstarter.dev
            version: v1alpha1
          - kind: OperatorConfig
            name: operatorconfigs.automotive.sig.centos.org
            version: v1
        description: This operator is designed to streamline CI/CD for RHIVOS and
          its ecosystem using OpenShift Pipelines
        displayName: Automotive-CI
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Automotive
        - RHIVOS
        - Pipelines
        - CI
        links:
        - name: Automotive infra Operator
          url: https://gitlab.com/fedora/sigs/robotics/infra/infra-ci-operator
        maintainers:
        - email: automotive-sig@lists.centos.org
          name: Automotive SIG CentOS Community
        maturity: alpha
        provider:
          name: Automotive SIG CentOS
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/community-operator-pipeline-prod/automotive-infra@sha256:6d4180ff6899d4de8ba2cd4a06ece234bbd8f0ec1bd0b4b0ae4b7a0c047121da
        - quay.io/fedora-sig-robotics/infra-ci-operator:v0.0.10
        version: 0.0.10
      entries:
      - name: automotive-infra.v0.0.10
        version: 0.0.10
      - name: automotive-infra.v0.0.9
        version: 0.0.9
      - name: automotive-infra.v0.0.8
        version: 0.0.8
      - name: automotive-infra.v0.0.7
        version: 0.0.7
      - name: automotive-infra.v0.0.6
        version: 0.0.6
      - name: automotive-infra.v0.0.5
        version: 0.0.5
      - name: automotive-infra.v0.0.4
        version: 0.0.4
      - name: automotive-infra.v0.0.3
        version: 0.0.3
      - name: automotive-infra.v0.0.2
        version: 0.0.2
      - name: automotive-infra.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: automotive-infra
    provider:
      name: Automotive SIG CentOS
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-documentdb-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-documentdb-controller.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "documentdb.services.k8s.aws/v1alpha1",
                "kind": "DBCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "documentdb.services.k8s.aws/v1alpha1",
                "kind": "DBInstance",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "documentdb.services.k8s.aws/v1alpha1",
                "kind": "DBSubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/documentdb-controller:1.2.1
          createdAt: "2025-12-18T20:33:13Z"
          description: AWS DocumentDB controller is a service controller for managing
            DocumentDB resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DBCluster represents the state of an AWS documentdb DBCluster
              resource.
            displayName: DBCluster
            kind: DBCluster
            name: dbclusters.documentdb.services.k8s.aws
            version: v1alpha1
          - description: DBInstance represents the state of an AWS documentdb DBInstance
              resource.
            displayName: DBInstance
            kind: DBInstance
            name: dbinstances.documentdb.services.k8s.aws
            version: v1alpha1
          - description: DBSubnetGroup represents the state of an AWS documentdb DBSubnetGroup
              resource.
            displayName: DBSubnetGroup
            kind: DBSubnetGroup
            name: dbsubnetgroups.documentdb.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon DocumentDB resources in AWS from within your Kubernetes cluster.

          **About Amazon DocumentDB**

          Amazon DocumentDB (with MongoDB compatibility) is a fast, reliable, and fully managed database service. Amazon DocumentDB makes it easy to set up, operate, and scale MongoDB-compatible databases in the cloud. With Amazon DocumentDB, you can run the same application code and use the same drivers and tools that you use with MongoDB.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon DocumentDB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - documentdb
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon DocumentDB Developer Resources
          url: https://aws.amazon.com/documentdb/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: documentdb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-documentdb-controller@sha256:07abf00bafb1d030c19d608f4ebb30d0cb9e72ab639a241034ceceefe4599715
        - public.ecr.aws/aws-controllers-k8s/documentdb-controller:1.2.1
        version: 1.2.1
      entries:
      - name: ack-documentdb-controller.v1.2.1
        version: 1.2.1
      - name: ack-documentdb-controller.v1.2.0
        version: 1.2.0
      - name: ack-documentdb-controller.v1.1.2
        version: 1.1.2
      - name: ack-documentdb-controller.v1.1.1
        version: 1.1.1
      - name: ack-documentdb-controller.v1.1.0
        version: 1.1.0
      - name: ack-documentdb-controller.v1.0.14
        version: 1.0.14
      - name: ack-documentdb-controller.v1.0.13
        version: 1.0.13
      - name: ack-documentdb-controller.v1.0.12
        version: 1.0.12
      - name: ack-documentdb-controller.v1.0.11
        version: 1.0.11
      - name: ack-documentdb-controller.v1.0.10
        version: 1.0.10
      - name: ack-documentdb-controller.v1.0.9
        version: 1.0.9
      - name: ack-documentdb-controller.v1.0.7
        version: 1.0.7
      - name: ack-documentdb-controller.v1.0.6
        version: 1.0.6
      - name: ack-documentdb-controller.v1.0.5
        version: 1.0.5
      - name: ack-documentdb-controller.v1.0.2
        version: 1.0.2
      - name: ack-documentdb-controller.v1.0.1
        version: 1.0.1
      - name: ack-documentdb-controller.v1.0.0
        version: 1.0.0
      - name: ack-documentdb-controller.v0.0.9
        version: 0.0.9
      - name: ack-documentdb-controller.v0.0.8
        version: 0.0.8
      - name: ack-documentdb-controller.v0.0.6
        version: 0.0.6
      name: alpha
    defaultChannel: alpha
    packageName: ack-documentdb-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat HPC Community
      provider-url: ""
    name: slurm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: slurm-operator.v0.4.1-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "Accounting",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1"
                  },
                  "name": "slurm",
                  "namespace": "slurm"
                },
                "spec": {
                  "initconf": {
                    "image": "ghcr.io/slinkyproject/sackd:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "jwtHs256KeyRef": {
                    "key": "jwt_hs256.key",
                    "name": "slurm-auth-jwths256"
                  },
                  "slurmKeyRef": {
                    "key": "slurm.key",
                    "name": "slurm-auth-slurm"
                  },
                  "slurmdbd": {
                    "args": [],
                    "image": "ghcr.io/slinkyproject/slurmdbd:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "storageConfig": {
                    "database": "slurm_acct_db",
                    "host": "mariadb",
                    "passwordKeyRef": {
                      "key": "password",
                      "name": "mariadb-password"
                    },
                    "port": 3306,
                    "username": "slurm"
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": []
                    }
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "Controller",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1"
                  },
                  "name": "slurm",
                  "namespace": "slurm"
                },
                "spec": {
                  "accountingRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "epilogScriptRefs": null,
                  "extraConf": "PartitionName=all Nodes=ALL Default=YES MaxTime=UNLIMITED State=UP\n",
                  "jwtHs256KeyRef": {
                    "key": "jwt_hs256.key",
                    "name": "slurm-auth-jwths256"
                  },
                  "logfile": {
                    "image": "docker.io/library/alpine:latest",
                    "resources": {}
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "enabled": true,
                    "resources": {
                      "requests": {
                        "storage": "4Gi"
                      }
                    }
                  },
                  "prologScriptRefs": null,
                  "reconfigure": {
                    "image": "ghcr.io/slinkyproject/slurmctld:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "slurmKeyRef": {
                    "key": "slurm.key",
                    "name": "slurm-auth-slurm"
                  },
                  "slurmctld": {
                    "args": [],
                    "image": "ghcr.io/slinkyproject/slurmctld:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": []
                    }
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "LoginSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1",
                    "loginset.slinky.slurm.net/name": "slurm-login-slinky"
                  },
                  "name": "slurm-login-slinky",
                  "namespace": "slurm"
                },
                "spec": {
                  "controllerRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "login": {
                    "env": [],
                    "image": "ghcr.io/slinkyproject/login:25.05-ubuntu24.04",
                    "resources": {},
                    "securityContext": {
                      "privileged": true
                    },
                    "volumeMounts": []
                  },
                  "replicas": 1,
                  "service": {
                    "spec": {
                      "type": "LoadBalancer"
                    }
                  },
                  "sssdConfRef": {
                    "key": "sssd.conf",
                    "name": "slurm-login-slinky-sssd-conf"
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1",
                        "loginset.slinky.slurm.net/name": "slurm-login-slinky"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": [],
                      "volumes": []
                    }
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "NodeSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1",
                    "nodeset.slinky.slurm.net/name": "slurm-worker-slinky"
                  },
                  "name": "slurm-worker-slinky",
                  "namespace": "slurm"
                },
                "spec": {
                  "controllerRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "logfile": {
                    "image": "docker.io/library/alpine:latest",
                    "resources": {}
                  },
                  "partition": {
                    "enabled": true
                  },
                  "replicas": 1,
                  "slurmd": {
                    "args": [],
                    "env": [
                      {
                        "name": "POD_CPUS",
                        "value": "0"
                      },
                      {
                        "name": "POD_MEMORY",
                        "value": "0"
                      }
                    ],
                    "image": "ghcr.io/slinkyproject/slurmd:25.05-ubuntu24.04",
                    "resources": {},
                    "volumeMounts": []
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1",
                        "nodeset.slinky.slurm.net/name": "slurm-worker-slinky"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "hostname": "slinky-",
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": [],
                      "volumes": []
                    }
                  },
                  "updateStrategy": {
                    "rollingUpdate": {
                      "maxUnavailable": "100%"
                    },
                    "type": "RollingUpdate"
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "RestApi",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1"
                  },
                  "name": "slurm",
                  "namespace": "slurm"
                },
                "spec": {
                  "controllerRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "replicas": 1,
                  "slurmrestd": {
                    "args": [],
                    "env": [],
                    "image": "ghcr.io/slinkyproject/slurmrestd:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": []
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, Big Data
          certified: "false"
          containerImage: ghcr.io/slinkyproject/slurm-operator:0.4.0
          createdAt: "2025-10-29T12:41:12Z"
          description: Run Slurm on Kubernetes, by SchedMD. A Slinky project.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "slinky",
                "labels": {
                  "pod-security.kubernetes.io/enforce": "privileged",
                  "pod-security.kubernetes.io/audit": "privileged",
                  "pod-security.kubernetes.io/warn": "privileged",
                },
                "annotations": {
                  "openshift.io/node-selector": ""
                },
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/redhat-hpc/slinky-on-openshift
          support: SchedMD
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Accounting is the Schema for the accountings API
            displayName: Accounting
            kind: Accounting
            name: accountings.slinky.slurm.net
            version: v1alpha1
          - description: Controller is the Schema for the controllers API
            displayName: Controller
            kind: Controller
            name: controllers.slinky.slurm.net
            version: v1alpha1
          - description: A set of homogeneous login nodes (submit node, jump host)
              for Slurm, which manage user identity via SSSD.
            displayName: LoginSet
            kind: LoginSet
            name: loginsets.slinky.slurm.net
            version: v1alpha1
          - description: A set of homogeneous Slurm workers (compute nodes), which
              are delegated to execute the Slurm workload.
            displayName: NodeSet
            kind: NodeSet
            name: nodesets.slinky.slurm.net
            version: v1alpha1
          - description: Restapi is the Schema for the restapis API
            displayName: RestAPI
            kind: RestApi
            name: restapis.slinky.slurm.net
            version: v1alpha1
          - description: Token CRD to define a secret containing a JWT, generated
              from an HS256 Key
            displayName: Token
            kind: Token
            name: tokens.slinky.slurm.net
            version: v1alpha1
        description: |
          # Kubernetes Operator for Slurm Clusters

          Run [Slurm] on [Kubernetes], by [SchedMD]. A [Slinky] project.

          ## Overview

          [Slurm] and [Kubernetes] are workload managers originally designed for different
          kinds of workloads. In broad strokes: Kubernetes excels at scheduling workloads
          that typically run for an indefinite amount of time, with potentially vague
          resource requirements, on a single node, with loose policy, but can scale its
          resource pool infinitely to meet demand; Slurm excels at quickly scheduling
          workloads that run for a finite amount of time, with well defined resource
          requirements and topology, on multiple nodes, with strict policy, but its
          resource pool is known.

          This project enables the best of both workload managers, unified on Kubernetes.
          It contains a [Kubernetes] operator to deploy and manage certain components of
          [Slurm] clusters. This repository implements [custom-controllers] and
          [custom resource definitions (CRDs)][crds] designed for the lifecycle (creation,
          upgrade, graceful shutdown) of Slurm clusters.

          ### Slurm Cluster

          Slurm clusters are very flexible and can be configured in various ways. Our
          Slurm helm chart provides a reference implementation that is highly customizable
          and tries to expose everything Slurm has to offer.

          ## Features

          ### NodeSets

          A set of homogeneous Slurm workers (compute nodes), which are delegated to
          execute the Slurm workload.

          The operator will take into consideration the running workload among Slurm nodes
          as it needs to scale-in, upgrade, or otherwise handle node failures. Slurm nodes
          will be marked as [drain][slurm-drain] before their eventual termination pending
          scale-in or upgrade.

          Slurm node states (e.g. Idle, Allocated, Mixed, Down, Drain, Not Responding,
          etc...) are applied to each NodeSet pod via their pod conditions; each NodeSet
          pod contains a pod status that reflects their own Slurm node state.

          The operator supports NodeSet scale to zero, scaling the resource down to zero
          replicas. Hence, any Horizontal Pod Autoscaler (HPA) that also support scale to
          zero can be best paired with NodeSets.

          ### LoginSets

          A set of homogeneous login nodes (submit node, jump host) for Slurm, which
          manage user identity via SSSD.

          The operator supports LoginSet scale to zero, scaling the resource down to zero
          replicas. Hence, any Horizontal Pod Autoscaler (HPA) that also support scale to
          zero can be best paired with LoginSets.

          ### Hybrid Support

          Sometimes a Slurm cluster has some, but not all, of its components in
          Kubernetes. The operator and its CRD are designed support these use cases.

          ### Slurm

          Slurm is a full featured HPC workload manager. To highlight a few features:

          - [**Accounting**][slurm-accounting]: collect accounting information for every
            job and job step executed.
          - [**Partitions**][slurm-arch]: job queues with sets of resources and
            constraints (e.g. job size limit, job time limit, users permitted).
          - [**Reservations**][slurm-reservations]: reserve resources for jobs being
            executed by select users and/or select accounts.
          - [**Job Dependencies**][slurm-dependency]: defer the start of jobs until the
            specified dependencies have been satisfied.
          - [**Job Containers**][slurm-containers]: jobs which run an unprivileged OCI
            container bundle.
          - [**MPI**][slurm-mpi]: launch parallel MPI jobs, supports various MPI
            implementations.
          - [**Priority**][slurm-priority]: assigns priorities to jobs upon submission and
            on an ongoing basis (e.g. as they age).
          - [**Preemption**][slurm-preempt]: stop one or more low-priority jobs to let a
            high-priority job run.
          - [**QoS**][slurm-qos]: sets of policies affecting scheduling priority,
            preemption, and resource limits.
          - [**Fairshare**][slurm-fairshare]: distribute resources equitably among users
            and accounts based on historical usage.
          - [**Node Health Check**][slurm-healthcheck]: periodically check node health via
            script.

          ## Compatibility

          | Software   |                             Minimum Version                              |
          | :--------- | :----------------------------------------------------------------------: |
          | Kubernetes | [v1.29](https://kubernetes.io/blog/2023/12/13/kubernetes-v1-29-release/) |
          | Slurm      | [25.05](https://www.schedmd.com/slurm-version-25-05-0-is-now-available/) |

          ## Documentation

          Project documentation is located in the docs directory of [this repository](https://github.com/SlinkyProject/slurm-operator)

          There is also supplemental work in the community for enabling [Slinky On OpenShift](https://github.com/redhat-hpc/slinky-on-openshift)

          ## Support and Development

          Feature requests, code contributions, and bug reports are welcome!

          Github/Gitlab submitted issues and PRs/MRs are handled on a best effort basis.

          The SchedMD official issue tracker is at <https://support.schedmd.com/>.

          To schedule a demo or simply to reach out, please
          [contact SchedMD][contact-schedmd].

          ## License

          Copyright (C) SchedMD LLC.

          Licensed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0) you
          may not use project except in compliance with the license.

          Unless required by applicable law or agreed to in writing, software distributed
          under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
          CONDITIONS OF ANY KIND, either express or implied. See the License for the
          specific language governing permissions and limitations under the License.

          <!-- links -->


          [cert-manager]: https://cert-manager.io/docs/installation/helm/
          [contact-schedmd]: https://www.schedmd.com/slurm-resources/contact-schedmd/
          [crds]: https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#customresourcedefinitions
          [custom-controllers]: https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#custom-controllers

          [kubernetes]: https://kubernetes.io/
          [schedmd]: https://schedmd.com/
          [slinky]: https://slinky.ai/
          [slinky-docs]: https://slinky.schedmd.com/
          [slurm]: https://slurm.schedmd.com/overview.html
          [slurm-accounting]: https://slurm.schedmd.com/accounting.html
          [slurm-arch]: https://slurm.schedmd.com/quickstart.html#arch
          [slurm-containers]: https://slurm.schedmd.com/containers.html
          [slurm-dependency]: https://slurm.schedmd.com/sbatch.html#OPT_dependency

          [slurm-drain]: https://slurm.schedmd.com/scontrol.html#OPT_DRAIN
          [slurm-fairshare]: https://slurm.schedmd.com/fair_tree.html
          [slurm-healthcheck]: https://slurm.schedmd.com/slurm.conf.html#OPT_HealthCheckProgram
          [slurm-mpi]: https://slurm.schedmd.com/mpi_guide.html
          [slurm-preempt]: https://slurm.schedmd.com/preempt.html
          [slurm-priority]: https://slurm.schedmd.com/priority_multifactor.html
          [slurm-qos]: https://slurm.schedmd.com/qos.html
          [slurm-reservations]: https://slurm.schedmd.com/reservations.html
        displayName: Slurm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - slurm-operator
        - slurm
        - slinky
        links:
        - name: Slinky on OpenShift
          url: https://github.com/redhat-hpc/slinky-on-openshift
        - name: Slurm Operator
          url: https://github.com/SlinkyProject/slurm-operator
        maintainers:
        - email: jkincl@redhat.com
          name: Jason Kincl
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: Red Hat HPC Community
        relatedImages:
        - quay.io/community-operator-pipeline-prod/slurm-operator:0.4.1-1
        - ghcr.io/slinkyproject/slurm-operator-webhook:0.4.1
        - ghcr.io/slinkyproject/slurm-operator:0.4.1
        version: 0.4.1-1
      entries:
      - name: slurm-operator.v0.4.1-1
        version: 0.4.1-1
      - name: slurm-operator.v0.4.0
        version: 0.4.0
      name: alpha
    defaultChannel: alpha
    packageName: slurm-operator
    provider:
      name: Red Hat HPC Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: gcp-filestore-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gcp-filestore-csi-driver-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9-operator@sha256:8ddda9375e180daf57f1e526bdddf91b05e736afdab4b7a29add258786cf98be
          createdAt: "2021-07-14T00:00:00Z"
          description: Install and configure GCP Filestore CSI driver.
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=4.11.0-0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/gcp-filestore-csi-driver-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Operator that installs and configures the CSI driver for GCP Filestore.
        displayName: GCP Filestore CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - filestore
        links:
        - name: Documentation
          url: https://github.com/openshift/gcp-filestore-csi-driver-operator
        - name: Source Repository
          url: https://github.com/openshift/gcp-filestore-csi-driver-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9-operator@sha256:8ddda9375e180daf57f1e526bdddf91b05e736afdab4b7a29add258786cf98be
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9@sha256:2e146263311f096251110baa0a88bc49b73d76effe5d1bcc4f2b8d1230206090
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-operator-bundle@sha256:a7ddfc685797cc2f2d26366b6573fb46285097adaf0727198cf19e91c8dc5531
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        version: 4.20.0-202512081147
      entries:
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: gcp-filestore-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-multicluster-orchestrator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-multicluster-orchestrator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multicluster.odf.openshift.io/v1alpha1",
                "kind": "MirrorPeer",
                "metadata": {
                  "name": "mirrorpeer-sample"
                },
                "spec": {
                  "items": [
                    {
                      "clusterName": "local-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    },
                    {
                      "clusterName": "spoke-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    }
                  ],
                  "manageS3": false,
                  "schedulingIntervals": [
                    "5m"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          console.openshift.io/plugins: '["odf-multicluster-console"]'
          createdAt: "2025-12-18T07:59:46Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MirrorPeer is the Schema for the mirrorpeers API
            displayName: Mirror Peer
            kind: MirrorPeer
            name: mirrorpeers.multicluster.odf.openshift.io
            version: v1alpha1
        description: |
          Orchestrator for OpenShift Data Foundation clusters running across multiple OpenShift clusters.
          It uses Red Hat Advanced Cluster Management for Kubernetes as the multicluster control plane.
        displayName: ODF Multicluster Orchestrator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odf
        - multicluster
        - orchestrator
        - storage
        - acm
        links:
        - name: ODF Multicluster Orchestrator
          url: https://github.com/red-hat-storage/odf-multicluster-orchestrator
        maintainers:
        - email: uchapaga@redhat.com
          name: Umanga Chapagain
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-multicluster-operator-bundle@sha256:2041de7d28a07fbc593ef975b59fb9470b5a13070d4eff9ae225c6180b3f9417
        - registry.redhat.io/odf4/odf-multicluster-console-rhel9@sha256:0d937371ad5b44f668e96d35b2fbfe189b72f5ec89ab55faea9359c92d1026ab
        - registry.redhat.io/odf4/odf-multicluster-rhel9-operator@sha256:635869f91d1c5be205545396abf0d6d8c6b2a4efedfb2a3d10f97a9f13b936d2
        version: 4.19.9-rhodf
      entries:
      - name: odf-multicluster-orchestrator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-multicluster-orchestrator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-multicluster-orchestrator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-multicluster-orchestrator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-multicluster-orchestrator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-multicluster-orchestrator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-multicluster-orchestrator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-multicluster-orchestrator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-multicluster-orchestrator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-multicluster-orchestrator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-multicluster-orchestrator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multicluster.odf.openshift.io/v1alpha1",
                "kind": "MirrorPeer",
                "metadata": {
                  "name": "mirrorpeer-sample"
                },
                "spec": {
                  "items": [
                    {
                      "clusterName": "local-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    },
                    {
                      "clusterName": "spoke-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    }
                  ],
                  "manageS3": false,
                  "schedulingIntervals": [
                    "5m"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          console.openshift.io/plugins: '["odf-multicluster-console"]'
          createdAt: "2025-12-18T07:47:53Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MirrorPeer is the Schema for the mirrorpeers API
            displayName: Mirror Peer
            kind: MirrorPeer
            name: mirrorpeers.multicluster.odf.openshift.io
            version: v1alpha1
        description: |
          Orchestrator for OpenShift Data Foundation clusters running across multiple OpenShift clusters.
          It uses Red Hat Advanced Cluster Management for Kubernetes as the multicluster control plane.
        displayName: ODF Multicluster Orchestrator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odf
        - multicluster
        - orchestrator
        - storage
        - acm
        links:
        - name: ODF Multicluster Orchestrator
          url: https://github.com/red-hat-storage/odf-multicluster-orchestrator
        maintainers:
        - email: uchapaga@redhat.com
          name: Umanga Chapagain
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-multicluster-operator-bundle@sha256:fad8bd45737ac4588b79f02c519e153949cbdb2ff4de8b5aff315283004b15a9
        - registry.redhat.io/odf4/odf-multicluster-console-rhel9@sha256:34470d03b82ccd51a32c24697583b485aa2971e83b30f185e35f57468e99c9fb
        - registry.redhat.io/odf4/odf-multicluster-rhel9-operator@sha256:ccb80153311fb5e13ba15eaff3eca09d157bca6aebbf055783418843858e16eb
        version: 4.20.4-rhodf
      entries:
      - name: odf-multicluster-orchestrator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-multicluster-orchestrator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-multicluster-orchestrator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-multicluster-orchestrator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-multicluster-orchestrator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-multicluster-orchestrator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Perficient Inc
      provider-url: http://www.perficient.com
    name: devopsinabox
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: devopsinabox.v0.0.45
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apimc.com.perficient/v1alpha1",
                "kind": "DevSecOpsManager",
                "metadata": {
                  "name": "devsecopsmanager-sample"
                },
                "spec": {
                  "config": {
                    "repoPath": "",
                    "repoUrl": ""
                  },
                  "forwarding": {
                    "fluentd": {
                      "affinity": {},
                      "caFile": "files/default-openshift-logging-fluentd.crt",
                      "image": "registry.redhat.io/openshift4/ose-logging-fluentd:v4.4",
                      "keyFile": "files/default-openshift-logging-fluentd.key",
                      "loglevel": "warn",
                      "nodeSelector": {},
                      "passphrase": "",
                      "persistence": {
                        "accessMode": "ReadWriteOnce",
                        "enabled": false,
                        "size": "10Gi",
                        "storageClass": ""
                      },
                      "port": 24224,
                      "replicas": 2,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "1024Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "512Mi"
                        }
                      },
                      "sharedkey": "splunkforwarding",
                      "ssl": true,
                      "tolerations": [],
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      }
                    },
                    "preserveDefault": true
                  },
                  "fullnameOverride": "",
                  "git": {
                    "password": "",
                    "server": "https://gitlab.com",
                    "token": "",
                    "username": ""
                  },
                  "nameOverride": "",
                  "prometheus": {
                    "token": ""
                  }
                }
              },
              {
                "apiVersion": "apimc.com.perficient/v1alpha1",
                "kind": "ManagedNamespace",
                "metadata": {
                  "name": "managednamespace-sample"
                },
                "spec": {
                  "config": {
                    "repoBranch": "master",
                    "repoPath": "",
                    "repoUrl": ""
                  },
                  "container": {
                    "password": "",
                    "registry": "https://quay.io",
                    "username": ""
                  },
                  "fullnameOverride": "",
                  "git": {
                    "password": "",
                    "server": "https://gitlab.com",
                    "token": "",
                    "username": ""
                  },
                  "manager": {
                    "namespace": ""
                  },
                  "mirrors": {
                    "maven": ""
                  },
                  "nameOverride": ""
                }
              },
              {
                "apiVersion": "apimc.com.perficient/v1alpha1",
                "kind": "SpringBootApp",
                "metadata": {
                  "name": "springbootapp-sample"
                },
                "spec": {
                  "autoscaling": {
                    "enabled": false,
                    "maxReplicas": 100,
                    "minReplicas": 1,
                    "targetCPUUtilizationPercentage": 80
                  },
                  "config": {
                    "repo": ""
                  },
                  "container": {
                    "image": "placeholder",
                    "registry": ""
                  },
                  "fullnameOverride": "",
                  "git": {
                    "branch": "master",
                    "module": "",
                    "url": ""
                  },
                  "management": {
                    "port": 8081
                  },
                  "maven": {
                    "mirror": ""
                  },
                  "nameOverride": "",
                  "podAnnotations": {},
                  "replicaCount": 1,
                  "resources": {},
                  "service": {
                    "port": 8080
                  },
                  "serviceAccount": {
                    "annotations": {}
                  },
                  "version": {
                    "branch": "",
                    "image": "placeholder",
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Modernization & Migration,Developer Tools,Application Runtime
          containerImage: quay.io/mrethers/devopsinabox-operator:v0.0.45
          createdAt: 2021-03-03 10:51:09Z
          description: Perficient's DevSecOps Manager For Kubernetes Applications
          operators.operatorframework.io/builder: operator-sdk-v1.4.2
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/prft-rh/devopsinabox-operator
          support: Matthieu Rethers
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DevSecOpsManager
            name: devsecopsmanagers.apimc.com.perficient
            version: v1alpha1
          - kind: ManagedNamespace
            name: managednamespaces.apimc.com.perficient
            version: v1alpha1
          - kind: SpringBootApp
            name: springbootapps.apimc.com.perficient
            version: v1alpha1
        description: "The devops-in-a-box Operator manages the entire lifecycle of
          your applications in Kubernetes. It encapsulates all the best devsecops
          practices gathered by Perficient over the years working on many large projects.
          Use it to migrate existing applications with minimum changes or deploy new
          ones with little to no knowledge of Kubernetes.\n\nOnce installed, the Devops-in-a-box
          operator provides the following features:\n\n* **Create/Destroy**: Easily
          launch a new DevSecOpsManager instance to bootstrap your cluster and start
          deploying new applications with total confidence.\n\n* **Gitops Simplified**:
          Configure your cluster and individual applications through Git and watch
          your changes propagate instantly. Just point to where your code is and let
          the operator do the rest with preconfigured cloud-native CI/CD pipelines.\n\n*
          **Production-Ready**: Automatically register your applications with Openshift
          logging and monitoring systems and enjoy special additions for Spring Boot
          like custom dashboards and searchable logs.\n\n*Contact us on Github for
          installation and usage instruction*\n\n### Other Supported Features\n\n**Blue/Green,
          Canary, A/B Deployments**\n\nRun multiple versions of your applications
          simultaneously and configure traffic rules to target specific groups of
          users using Service Mesh.\n\n**Updates via automated operations**\n\nGet
          the latest enhancements automatically through the Operator Lifecycle Manager
          and upgrade all your running applications at once. "
        displayName: Devops-in-a-box
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devops
        - devsecops
        - spring
        - boot
        - java
        - gitops
        - cicd
        - argo
        links:
        - name: Devops-in-a-box Operator
          url: https://github.com/prft-rh/devopsinabox-operator
        maintainers:
        - email: matthieu.rethers@perficient.com
          name: Matthieu Rethers
        maturity: alpha
        provider:
          name: Perficient Inc
          url: http://www.perficient.com
        relatedImages:
        - quay.io/mrethers/devopsinabox-operator:v0.0.45
        - quay.io/openshift-community-operators/devopsinabox@sha256:1c2ad76102151a56ecd753d9b86fd9f155d64b912067738d1858d33a02557928
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        version: 0.0.45
      entries:
      - name: devopsinabox.v0.0.45
        version: 0.0.45
      name: alpha
    defaultChannel: alpha
    packageName: devopsinabox
    provider:
      name: Perficient Inc
      url: http://www.perficient.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://access.redhat.com/products/red-hat-fuse
    name: fuse-online
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fuse-online.v7.10.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:ed4faedcb97bb6a45f568586ff19da19da31ecbc304f12e0ae7978381247744a
          createdAt: 2022-01-31 15:55:46 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus@sha256:7f679d6c03535e300dac366f4bc6dd8d781d96dc47592836713f8bb76be36fa9
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:ed4faedcb97bb6a45f568586ff19da19da31ecbc304f12e0ae7978381247744a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:96810c770f75057b8bba6b78a5ba414c8289315d8af1a387f681ae5e4fb7d6dd
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:fcdd0292ebfc7e9edc36241f63b54a9d924a7605329c934ff2b10373af26dbbf
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:df2d55dd8092e9e94d034166890117cf5d1cfd5cf52ef0f90cfa2374cc9e2d06
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:3f0277e2c278740307c9b2d966f539ba12317e306198cb6c4c1c52a2ad9f4f40
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:53777788253eaa1199e1854d14782619aeec0df9844d86b83742fe0005671cde
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:5dd1bc8f6b7e724736f4aeac86409bda3e0f64f62b736688e9572d14411232f1
        - registry.redhat.io/rhel8/postgresql-12@sha256:44215c5b244b190c82d9d371a8ffd39b0c83576bd85c980cc72782a5cf9e6e1b
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:5048cd4fab2f98e6000bc60835c539cc40b70dbe265e927cfe185595347d8054
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:ef229a4c8851ec495f28d0eeab83b137cd02698e283f76ea1b32271b7222621b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:4f8849362e9ed6ff95d318a04e287b7ba33254a2cf7abdaf9b90cab7cbba6646
        version: 7.10.4
      entries:
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.10.x
    - currentCSV: fuse-online.v7.11.1-0.1687357787.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:658af3fc7819efb7cc39cd3a0504dcddc2ce7788c9b1e5178df869f7c9a742a8
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.11.1-0.1684718286.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-12@sha256:9248c4eaa8aeedacc1c06d7e3141ca1457147eef59e329273eb78e32fcd27e79
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:e3a13ea8b84b9e1abd158d394e11113e5f6c04d879547fa1d3e8638f1ac979d8
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:658af3fc7819efb7cc39cd3a0504dcddc2ce7788c9b1e5178df869f7c9a742a8
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:8b9bd777bcbd20b1a1bbbc18274a5076a67bea1f928d772cb243c57fb1da7408
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:4de91e4527022e1b25df8d3835ddf778f773c20334314be9ba01a885c82287f5
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:ac514973ec428d815d7a248d09d27f2a84f762aedfea63b3b48de9e633267ed5
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:251c29e81f8e338f980b475b841647a977807908c388f4c86e18da7bff1b198a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:400a6ee03c3200c19b9b15c5d037a849633156a62e13922fb2e62838024ae69c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:a2b1cd0256f30aff8fa37c332419b4483c0bfe34fb4f574ad8f18b0858969342
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:3d98d775bec85704c9a10c2f0d8e4f8116b7a41494f73c0b763e010262e5cd4d
        version: 7.11.1+0.1687357787.p
      entries:
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.11.x
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.12.x
    - currentCSV: fuse-online.v7.9.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta2",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:c70c5e76dc3db559c722bea2a767eb7dcba1eda786e1ef3a45c4cf32e1aca9ee
          createdAt: 2021-07-21 12:25:15 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta2
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to the product documentation at https://access.redhat.com/documentation/en-us/red_hat_fuse
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bafd85b0fd1256b8a60a2bb368a7e68f5dbad72718e5059a65660e01a425d8e2
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:75d5772c792a7c795281acec3d59e90021c109e9d7d1110868be0b882768aefb
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:eff9f8edf28ccbadcacab2022fff9e6bc93926af97521b49e3968eaf7b6fda65
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:c3e95e808eecba8ac57632452d3553509131ca783f62c68754a582cf5c55efab
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:d6f0c804c179fa559d3baed2e2d106c916a0439dc2215c4d34b878bc2e9bc281
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:c70c5e76dc3db559c722bea2a767eb7dcba1eda786e1ef3a45c4cf32e1aca9ee
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:60d5cf00411b03af3f1149a2bb3aeeb196c063d19625f876a094ae6baf46b54b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:13e9ea359cbcd3e0e94a6589b86b708dc84197f152701fd4092fffa234d11b58
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:c668fe1f5d25baddf627acd79df4c8d2ab8b05309d3d41784ddc0a10dd5f34ad
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:f65600506db985689e5b7cd8b838e646d4268a0c4e272e19d7db3577a8dd7ac4
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:31258400bb37f4b8837ef294820f8a728ae83f8031d4e01ff0392690a315a30f
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:d6df09b15599e776b49e1d46aa01728fd02d5629cee65e77dc277c0166554e0a
        version: 7.9.3
      entries:
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.9.x
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: candidate
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: latest
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: stable
    defaultChannel: latest
    packageName: fuse-online
    provider:
      name: Red Hat
      url: https://access.redhat.com/products/red-hat-fuse
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Mantisnet
      provider-url: https://www.mantisnet.com
    name: tawon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tawon-operator.v2.29.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tawon.mantisnet.com/v1alpha1",
                "kind": "Directive",
                "metadata": {
                  "name": "amf-h2"
                },
                "spec": {
                  "condition": {
                    "equal": {
                      "field": "process.name",
                      "value": "amf"
                    }
                  },
                  "container": {
                    "resources": {
                      "limits": {
                        "cpu": "500m"
                      }
                    }
                  },
                  "pod": {
                    "nodeSelector": {
                      "myNodeType": "nodeType1"
                    }
                  },
                  "tasks": [
                    {
                      "config": {
                        "filter": "port 8080"
                      },
                      "task": "payload"
                    },
                    {
                      "task": "h2"
                    },
                    {
                      "config": {
                        "addr": "nats://nats:4222",
                        "topic": "hello"
                      },
                      "task": "publish"
                    }
                  ]
                }
              },
              {
                "apiVersion": "tawon.mantisnet.com/v1alpha1",
                "kind": "TopologyAggregator",
                "metadata": {
                  "name": "topology-aggregator"
                },
                "spec": {
                  "messaging": {
                    "nats": {
                      "url": "nats://nats:4222"
                    }
                  },
                  "pod": {
                    "nodeSelector": {
                      "myNodeType": "nodeType1"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2023-11-13T01:16:29Z"
          olm.skipRange: '>=2.23.0 <2.29.1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Directive allows to define a Tawon task pipeline that will
              be applied to a Kubernetes cluster.
            displayName: Tawon Directive
            kind: Directive
            name: directives.tawon.mantisnet.com
            version: v1alpha1
          - description: TopologyAggregator is the Schema for the topologyaggregators
              API
            displayName: Tawon Topology Aggregator
            kind: TopologyAggregator
            name: topologyaggregators.tawon.mantisnet.com
            version: v1alpha1
        description: Tawon is a cloud-native observability fabric for deeply instrumenting
          microservice-based applications.
        displayName: Tawon
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - networking
        - metrics
        - ebpf
        links:
        - name: Tawon Docs
          url: https://docs.tawon.xmantis.net
        maintainers:
        - email: elliott@mantisnet.com
          name: Elliott Starin
        - email: nicolas@mantisnet.com
          name: Nicolas Paton
        - email: thiago@mantisnet.com
          name: Thiago Navarro
        maturity: alpha
        provider:
          name: Mantisnet
          url: https://www.mantisnet.com
        relatedImages:
        - registry.connect.redhat.com/a5f1f0cc7ac3db90370970f9b/tawon@sha256:3691c0948c8eb266ada348de504622227af6516f3b3d331eb09fd258dd0609a5
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d99a8d144816b951a67648c12c0b988936ccd25cf3754f3cd85ab8c01592248f
        - quay.io/mantisnet/kernel-headers@sha256:242e837af831b6eed98d522b6bae7416928b9fbe451fb6e02ffa678686771068
        - quay.io/mantisnet/kernel-headers@sha256:2aa3bc7871fe0fc0a79ac812d941e55cd0d25a5f0d1d9b3e2435aab6f3d70c67
        - quay.io/mantisnet/nats@sha256:6afc7ced92181a7c12d709e9693740847297dc5d60ab78cbac7b9b6c859ecdd1
        - quay.io/mantisnet/tawon-operator@sha256:d5669dde46bb30411964baa86844d97721655886769b96809626246a4123caad
        - quay.io/mantisnet/tawon@sha256:83575079fe00ae6e53bb13005b94ef0047cc1974d95015c19e64dd53e13bcb93
        - quay.io/mantisnet/tawonctl@sha256:d436ef902bb08d830f64f34fdb86b20d2bd18d86233c8240014f0722c60e5e94
        version: 2.29.1
      entries:
      - name: tawon-operator.v2.29.1
        version: 2.29.1
      name: alpha
    defaultChannel: alpha
    packageName: tawon-operator
    provider:
      name: Mantisnet
      url: https://www.mantisnet.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Netscaler
      provider-url: https://www.netscaler.com
    name: netscaler-adm-agent-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: netscaler-adm-agent-operator.v141.60.38
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgent",
                "metadata": {
                  "name": "adm-agent"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "adm.cloud.com",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-55.40",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgentOnprem",
                "metadata": {
                  "name": "adm-agent-onprem"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "<adm server ip>",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-60.38",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:9d9c9fbeca81441737ff9a4b371684dbf248212241e400da4c7ad0f4c391ff55
          createdAt: "2025-11-19T07:38:53Z"
          description: This is an operator to deploy container-based ADM agent to
            connect NetScaler CPX with ADM Service for management and monitoring.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler ADM Agent Operator On Prem
            displayName: NetScaler ADM Agent Operator On Prem
            kind: AdmAgentOnprem
            name: admagentonprems.netscaler.com
            version: v1
          - description: To install NetScaler ADM Agent Operator
            displayName: NetScaler ADM Agent Operator for Service
            kind: AdmAgent
            name: admagents.netscaler.com
            version: v1
        description: |-
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster.
          Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Agent Operator for Service](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          2. [NetScaler Agent Operator for On Prem](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          ### Installation

          Refer [installation instructions](https://github.com/netscaler/netscaler-k8s-ingress-controller/blob/master/docs/deploy/deploy-ns-operator.md)
          This operator version contains:
          1. NetScaler ADM Agent for Service [141.55.40](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v1.40.12)
          2. NetScaler ADM Agent for OnPrem[141.60.38](https://docs.netscaler.com/en-us/citrix-adc/14-1/citrix-adc-release-notes/release-notes-14-1-17-38)
          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin)
          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: Netscaler Adm Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Ingress
        - NetScaler
        - ADC
        - Kubernetes
        - OpenShift
        - Citrix
        - Controller
        - Observability
        - Metrices
        links:
        - name: Netscaler Adm Agent Operator
          url: https://netscaler-adm-agent-operator.domain
        maintainers:
        - email: pavan.belani@cloud.com
          name: Pavan Belani
        - email: swapnil.khanderaokakade@cloud.com
          name: Swapnil Khanderao
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Netscaler
          url: https://www.netscaler.com
        relatedImages:
        - quay.io/citrix/adm-agent@sha256:65c052c60999ffb4fe611fb10ba620c248720e1a483313a623e61769228ddd85
        - quay.io/citrix/developers-adm-agent@sha256:d7cbc49faae3e5502f0238c271f51249e827e11f3da1138acce1deced69bff34
        - registry.connect.redhat.com/citrix/admagent-operator-bundle@sha256:a43b3be056522477a467722cc82c492561512f97f6f0e6a4c7004921a07eb568
        - registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:9d9c9fbeca81441737ff9a4b371684dbf248212241e400da4c7ad0f4c391ff55
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        version: 141.60.38
      entries:
      - name: netscaler-adm-agent-operator.v141.60.38
        version: 141.60.38
      name: alpha
    - currentCSV: netscaler-adm-agent-operator.v141.60.54
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgent",
                "metadata": {
                  "name": "adm-agent"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "adm.cloud.com",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-55.40",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgentOnprem",
                "metadata": {
                  "name": "adm-agent-onprem"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "<adm server ip>",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-60.54",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:49a08eb5ed1f23e877d90dcd7fa8f952e2ec7ed4982649995be181c25f8743b1
          createdAt: "2025-12-11T10:08:16Z"
          description: This is an operator to deploy container-based NetScaler Console
            agent to manage NetScaler CPX with NetScaler Console for management and
            monitoring.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler ADM Agent Operator On Prem
            displayName: NetScaler ADM Agent Operator On Prem
            kind: AdmAgentOnprem
            name: admagentonprems.netscaler.com
            version: v1
          - description: To install NetScaler ADM Agent Operator
            displayName: NetScaler ADM Agent Operator for Service
            kind: AdmAgent
            name: admagents.netscaler.com
            version: v1
        description: |-
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster.
          Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Agent Operator for Service](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          2. [NetScaler Agent Operator for On Prem](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          ### Installation
          Refer [installation instructions](https://github.com/netscaler/netscaler-k8s-ingress-controller/blob/master/docs/deploy/deploy-ns-operator.md).

          This operator version contains:
          1. NetScaler ADM Agent for Service [141.55.40](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v1.40.12)
          2. NetScaler ADM Agent for OnPrem[141.60.54](https://docs.netscaler.com/en-us/citrix-adc/14-1/citrix-adc-release-notes/release-notes-14-1-17-38)

          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin).

          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: Netscaler Adm Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Ingress
        - NetScaler
        - ADC
        - Kubernetes
        - OpenShift
        - Citrix
        - Controller
        - Observability
        - Metrices
        links:
        - name: Netscaler Adm Agent Operator
          url: https://netscaler-adm-agent-operator.domain
        maintainers:
        - email: ritesh.padhi@citrix.com
          name: ritesh
        - email: swapnil.khanderaokakade@citrix.com
          name: swapnil
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: Netscaler
          url: https://www.netscaler.com
        relatedImages:
        - registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:49a08eb5ed1f23e877d90dcd7fa8f952e2ec7ed4982649995be181c25f8743b1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - quay.io/citrix/adm-agent@sha256:65c052c60999ffb4fe611fb10ba620c248720e1a483313a623e61769228ddd85
        - quay.io/citrix/developers-adm-agent@sha256:283f2ce4b964cf234c9d12c4955bedfbf1866292a939363e402b26ee544cb57a
        - registry.connect.redhat.com/citrix/admagent-operator-bundle@sha256:148aecf6a21b16940d11d62738f786574fa1d09eb20d441fb94bf956e57ecd3e
        version: 141.60.54
      entries:
      - name: netscaler-adm-agent-operator.v141.60.54
        version: 141.60.54
      name: stable
    defaultChannel: stable
    packageName: netscaler-adm-agent-operator
    provider:
      name: Netscaler
      url: https://www.netscaler.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-route53resolver-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-route53resolver-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "route53resolver.services.k8s.aws/v1alpha1",
                "kind": "ResolverEndpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "route53resolver.services.k8s.aws/v1alpha1",
                "kind": "ResolverRule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/route53resolver-controller:1.2.0
          createdAt: "2025-11-29T04:47:09Z"
          description: AWS Route53Resolver controller is a service controller for
            managing Route53Resolver resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ResolverEndpoint represents the state of an AWS route53resolver
              ResolverEndpoint resource.
            displayName: ResolverEndpoint
            kind: ResolverEndpoint
            name: resolverendpoints.route53resolver.services.k8s.aws
            version: v1alpha1
          - description: ResolverRule represents the state of an AWS route53resolver
              ResolverRule resource.
            displayName: ResolverRule
            kind: ResolverRule
            name: resolverrules.route53resolver.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Route53Resolver resources in AWS from within your Kubernetes cluster.

          **About Amazon Route53Resolver**

          Amazon Route 53 Resolver responds recursively to DNS queries from AWS resources for public records, Amazon VPC-specific DNS names, and Amazon Route 53 private hosted zones, and is available by default in all VPCs.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Route53Resolver
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - route53resolver
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Route53Resolver Developer Resources
          url: https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: route53resolver maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-route53resolver-controller@sha256:cd80c4eb559418ffe863c880b3954251ce13508493bf56d5e7b9e5b282838b36
        - public.ecr.aws/aws-controllers-k8s/route53resolver-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-route53resolver-controller.v1.2.0
        version: 1.2.0
      - name: ack-route53resolver-controller.v1.1.2
        version: 1.1.2
      - name: ack-route53resolver-controller.v1.1.1
        version: 1.1.1
      - name: ack-route53resolver-controller.v1.0.15
        version: 1.0.15
      - name: ack-route53resolver-controller.v1.0.14
        version: 1.0.14
      - name: ack-route53resolver-controller.v1.0.13
        version: 1.0.13
      - name: ack-route53resolver-controller.v1.0.11
        version: 1.0.11
      - name: ack-route53resolver-controller.v1.0.10
        version: 1.0.10
      - name: ack-route53resolver-controller.v1.0.9
        version: 1.0.9
      - name: ack-route53resolver-controller.v1.0.7
        version: 1.0.7
      - name: ack-route53resolver-controller.v1.0.6
        version: 1.0.6
      - name: ack-route53resolver-controller.v1.0.5
        version: 1.0.5
      - name: ack-route53resolver-controller.v1.0.3
        version: 1.0.3
      - name: ack-route53resolver-controller.v1.0.2
        version: 1.0.2
      - name: ack-route53resolver-controller.v1.0.0
        version: 1.0.0
      - name: ack-route53resolver-controller.v0.0.11
        version: 0.0.11
      - name: ack-route53resolver-controller.v0.0.10
        version: 0.0.10
      - name: ack-route53resolver-controller.v0.0.9
        version: 0.0.9
      - name: ack-route53resolver-controller.v0.0.7
        version: 0.0.7
      - name: ack-route53resolver-controller.v0.0.4
        version: 0.0.4
      - name: ack-route53resolver-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-route53resolver-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ram-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ram-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ram-controller:1.2.0
          createdAt: "2025-11-29T05:19:01Z"
          description: AWS RAM controller is a service controller for managing RAM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Permission represents the state of an AWS ram Permission
              resource.
            displayName: Permission
            kind: Permission
            name: permissions.ram.services.k8s.aws
            version: v1alpha1
          - description: ResourceShare represents the state of an AWS ram ResourceShare
              resource.
            displayName: ResourceShare
            kind: ResourceShare
            name: resourceshares.ram.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon RAM resources in AWS from within your Kubernetes cluster.

          **About Amazon RAM**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon RAM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ram
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon RAM Developer Resources
          url: https://aws.amazon.com/RAM/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ram maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ram-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ram-controller@sha256:59b2e55dc3a4154a742dff715ec45e012a64bb6699d837f311e448c7301d7aff
        version: 1.2.0
      entries:
      - name: ack-ram-controller.v1.2.0
        version: 1.2.0
      - name: ack-ram-controller.v1.1.2
        version: 1.1.2
      - name: ack-ram-controller.v1.1.1
        version: 1.1.1
      - name: ack-ram-controller.v1.1.0
        version: 1.1.0
      - name: ack-ram-controller.v1.0.11
        version: 1.0.11
      - name: ack-ram-controller.v1.0.10
        version: 1.0.10
      name: alpha
    defaultChannel: alpha
    packageName: ack-ram-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Dynatrace LLC
      provider-url: www.dynatrace.com
    name: dynatrace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dynatrace-operator.v1.7.2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          containerImage: registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
          createdAt: 2025-11-17T09:03:01.768309
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.7.2
          operatorframework.io/suggested-namespace: dynatrace
          operators.openshift.io/valid-subscription: '["Dynatrace Platform Subscription
            (DPS)","Dynatrace Classic License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Dynatrace/dynatrace-operator
          support: Dynatrace
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta3
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta4
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta5
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha1
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha2
        description: |
          The Dynatrace Operator supports rollout and lifecycle management of various Dynatrace components in Kubernetes and OpenShift.

          Currently the Dynatrace Operator supports the following capabilities:

          ### OneAgent
            * `classicFullStack` rolls out one OneAgent pod per node to monitor its pods and the node itself
            * `applicationMonitoring` is a webhook based injection mechanism for automatic app-only injection
            * `hostMonitoring` monitors only the hosts, i.e., the nodes, in the cluster without app-only injection
          ### ActiveGate
            * `routing` routes OneAgent traffic through the ActiveGate
            * `kubernetes-monitoring` allows monitoring the Kubernetes API
            * `metrics-ingest` routes enriched metrics through an ActiveGate

          For more information please refer to [our DynaKube Custom Resource examples](https://dt-url.net/dynakube-samples).

          ### Installation
          Once you've installed the Dynatrace Operator, you can create a DynaKube custom resource.

          First, please add a Secret within the Project you've deployed the Dynatrace Operator to, which would contain your API and PaaS tokens. Create tokens of type *Dynatrace API* (`API_TOKEN`) and *Platform as a Service* (`PAAS_TOKEN`) and use their values in the following commands respectively.

          For assistance please refer to [Create user-generated access tokens](https://www.dynatrace.com/support/help/shortlink/token#create-user-generated-access-tokens).

          ``` $ oc -n <project> create secret generic dynakube --from-literal="apiToken=API_TOKEN" --from-literal="paasToken=PAAS_TOKEN" ```

          You may update this Secret at any time to rotate the tokens.

          After creation of the secret add the DynaKube object in the project where the Dynatrace Operator has been deployed, configured to your needs.

          ### Required Parameters
          * `apiUrl` - provide the URL to the API of your Dynatrace environment. In Dynatrace SaaS it will look like `https://<ENVIRONMENTID>.live.dynatrace.com/api` . In Dynatrace Managed like `https://<YourDynatraceServerURL>/e/<ENVIRONMENTID>/api` .

          ### Advanced Options
          * **Disable Certificate Checking** - disable any certificate validation that may interact poorly with proxies with in your cluster
          * **Image Override** - use a copy of the ActiveGate container image from a registry other than Docker's or Red Hat's

          For a complete list of supported parameters please consult the [Operator Deploy Guide](https://www.dynatrace.com/support/help/shortlink/openshift-deploy).

          ### Help
          You can find more about our instructions in our [documentation](https://www.dynatrace.com/support/help/shortlink/openshift-deploy#install-dynatrace-operator).
        displayName: Dynatrace Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - dynatrace
        - oneagent
        - activegate
        - observability
        links:
        - name: Dynatrace Operator
          url: https://github.com/Dynatrace/dynatrace-operator
        - name: OpenShift Monitoring Info
          url: https://www.dynatrace.com/technologies/openshift-monitoring
        maintainers:
        - email: support@dynatrace.com
          name: Dynatrace LLC
        maturity: alpha
        provider:
          name: Dynatrace LLC
          url: www.dynatrace.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/dynatrace-operator@sha256:c57565f3a0b29d24d944aa15e10bb4027957f02f7ab9ca18d259fc93657ab75a
        - registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
        version: 1.7.2
      entries:
      - name: dynatrace-operator.v1.7.2
        version: 1.7.2
      - name: dynatrace-operator.v1.7.1
        version: 1.7.1
      - name: dynatrace-operator.v1.7.0
        version: 1.7.0
      - name: dynatrace-operator.v1.6.3
        version: 1.6.3
      - name: dynatrace-operator.v1.6.2
        version: 1.6.2
      - name: dynatrace-operator.v1.6.1
        version: 1.6.1
      - name: dynatrace-operator.v1.6.0
        version: 1.6.0
      - name: dynatrace-operator.v1.5.1
        version: 1.5.1
      - name: dynatrace-operator.v1.4.2
        version: 1.4.2
      - name: dynatrace-operator.v1.4.1
        version: 1.4.1
      - name: dynatrace-operator.v1.4.0
        version: 1.4.0
      - name: dynatrace-operator.v0.6.0
        version: 0.6.0
      - name: dynatrace-operator.v0.5.1
        version: 0.5.1
      - name: dynatrace-operator.v0.5.0
        version: 0.5.0
      name: alpha
    defaultChannel: alpha
    packageName: dynatrace-operator
    provider:
      name: Dynatrace LLC
      url: www.dynatrace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Antline-Soft
      provider-url: ""
    name: cxl-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cxl-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cxl.antline.com/v1",
                "kind": "CXL",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cxl-operator",
                    "app.kubernetes.io/instance": "cxl-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cxl",
                    "app.kubernetes.io/part-of": "cxl-operator"
                  },
                  "name": "cxl-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          createdAt: "2024-05-08T08:36:12Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CXL is the Schema for the cxls API
            displayName: CXL
            kind: CXL
            name: cxls.cxl.antline.com
            version: v1
        description: memory extend operator
        displayName: extend-community-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - memory
        - extend
        - community
        - operator
        links:
        - name: Cxl Operator
          url: https://cxl-operator.domain
        maintainers:
        - email: tomboy@antlinesoft.com
          name: Antline-Soft
        maturity: alpha
        provider:
          name: Antline-Soft
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ncn-community-operator@sha256:15edc1898fe9f8f56708da7d6de3548d06f1df3bdbb3f66a9cf4f7990fe9fad6
        - rasen708/cxl-operator:latest
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        version: 0.0.1
      entries:
      - name: cxl-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: cxl-operator
    provider:
      name: Antline-Soft
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: assisted-service-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: assisted-service-operator.v0.7.74
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-x86_64-live.x86_64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-aarch64-live.aarch64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-s390x-live.s390x.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-x86_64-live.x86_64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-aarch64-live.aarch64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-s390x-live.s390x.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-x86_64-live.x86_64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-aarch64-live.aarch64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-ppc64le-live.ppc64le.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-s390x-live.s390x.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-x86_64-live.x86_64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-aarch64-live.aarch64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-ppc64le-live.ppc64le.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-s390x-live.s390x.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-s390x-live.s390x.iso",
                      "version": "418.94.202409162337-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service:latest
          createdAt: "2024-10-16T17:43:34Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.74'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AgentClassification is the Schema for the AgentClassifications
              API
            displayName: Agent Classification
            kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - description: Agent is the Schema for the hosts API
            displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: Infra Env
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/assisted-service-operator@sha256:0e8a33d795a2d3fa3c5fd409e4e1c40805d5c08a71481afbf9e7b8014b4179ca
        - quay.io/edge-infrastructure/assisted-service:latest
        version: 0.7.74
      entries:
      - name: assisted-service-operator.v0.7.74
        version: 0.7.74
      - name: assisted-service-operator.v0.7.73
        version: 0.7.73
      - name: assisted-service-operator.v0.7.72
        version: 0.7.72
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: assisted-service-operator.v0.7.71
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-x86_64-live.x86_64.iso",
                      "version": "414.92.202310170514-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-aarch64-live.aarch64.iso",
                      "version": "414.92.202310170514-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202309201615-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-s390x-live.s390x.iso",
                      "version": "414.92.202309201615-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "415.92.202310310037-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "415.92.202310310037-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202310310037-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-s390x-live.s390x.iso",
                      "version": "415.92.202310310037-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:cffbdc5fd51c08f16ec2aa484cf226e3b29510919a8aa9668d766007de8f3d79
          createdAt: "2023-12-15T15:26:08Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.71'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:4e12e48d0b2b884de2a0d32682da044cff419aea53bb162915538e2179fcd7f3
        - quay.io/edge-infrastructure/assisted-image-service@sha256:027fa9c5a881848786745aafeac5e48575eefe22417abe29d9e8eb17940b8f80
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:40bafed94547a5fe96deb5492f10225501b965198227c9634869931692bda492
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:98740646fbfc0520f9d85ac5b483d1a898f22e164c5234901be51970bef7fcf3
        - quay.io/edge-infrastructure/assisted-installer@sha256:0f4ecf9a75b6755d02a45f9b70357ac45b6b4db66f24f0e83f888269d64f4293
        - quay.io/edge-infrastructure/assisted-service@sha256:cffbdc5fd51c08f16ec2aa484cf226e3b29510919a8aa9668d766007de8f3d79
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        version: 0.7.71
      entries:
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.10
    - currentCSV: assisted-service-operator.v0.7.73
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-x86_64-live.x86_64.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-aarch64-live.aarch64.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-s390x-live.s390x.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-x86_64-live.x86_64.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-aarch64-live.aarch64.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-s390x-live.s390x.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.16.0-ec.4/rhcos-4.16.0-ec.4-x86_64-live.x86_64.iso",
                      "version": "416.94.202403071059-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-aarch64-live.aarch64.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-s390x-live.s390x.iso",
                      "version": "415.92.202402130021-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:641fb65d8f0117cc6007567337ae38d5e912add454a76905617b60db99b60a64
          createdAt: "2024-03-20T10:08:49Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.73'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/community-operator-pipeline-prod/assisted-service-operator@sha256:9eca42cc297a93293200a1c46e8ed949a61770550366044ef54e36bed9d7a116
        - quay.io/edge-infrastructure/assisted-image-service@sha256:b33068bbe88e38c0444fb158e233e5644fb127416198d52fdc809a3f2e684fde
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:2cc14304ba27c51d61b86db05445f3f0acc68593a4d76081da8eb9d6bae41757
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:d0da07ec81877302fc376e8049dca69c1acdbf56a37aa3e320cd75f2b85a2ed0
        - quay.io/edge-infrastructure/assisted-installer@sha256:234e4680b0ff4376f2c11d6f94a75a5dd6ae16c3218d6b63d2003cf43c65e185
        - quay.io/edge-infrastructure/assisted-service@sha256:641fb65d8f0117cc6007567337ae38d5e912add454a76905617b60db99b60a64
        version: 0.7.73
      entries:
      - name: assisted-service-operator.v0.7.73
        version: 0.7.73
      - name: assisted-service-operator.v0.7.72
        version: 0.7.72
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.11
    - currentCSV: assisted-service-operator.v0.7.74
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-x86_64-live.x86_64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-aarch64-live.aarch64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-s390x-live.s390x.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-x86_64-live.x86_64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-aarch64-live.aarch64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-s390x-live.s390x.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-x86_64-live.x86_64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-aarch64-live.aarch64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-ppc64le-live.ppc64le.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-s390x-live.s390x.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-x86_64-live.x86_64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-aarch64-live.aarch64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-ppc64le-live.ppc64le.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-s390x-live.s390x.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-s390x-live.s390x.iso",
                      "version": "418.94.202409162337-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service:latest
          createdAt: "2024-10-16T17:43:34Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.74'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AgentClassification is the Schema for the AgentClassifications
              API
            displayName: Agent Classification
            kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - description: Agent is the Schema for the hosts API
            displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: Infra Env
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/assisted-service:latest
        - quay.io/community-operator-pipeline-prod/assisted-service-operator@sha256:0e8a33d795a2d3fa3c5fd409e4e1c40805d5c08a71481afbf9e7b8014b4179ca
        version: 0.7.74
      entries:
      - name: assisted-service-operator.v0.7.74
        version: 0.7.74
      - name: assisted-service-operator.v0.7.73
        version: 0.7.73
      - name: assisted-service-operator.v0.7.72
        version: 0.7.72
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.13
    - currentCSV: assisted-service-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "osImages": [
                    {
                      "openshiftVersion": "4.8",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202105062123-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/ocpmetal/assisted-service@sha256:64e88c5aa41c606bc2db2b0991acdbb1166559306474e13f5e2810f325616d64
          createdAt: "2021-09-23T11:11:20Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.0 <0.0.8'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.7.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled, for
              all other names a "Warning" event will be emitted + message logged and
              it will be ignored forever.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent".
          No other name will be accepted.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/ocpmetal/assisted-installer@sha256:db97f7a565a8d5af61f3876d6465996e90c7f79dad6ec71c5bb5cce837444974
        - quay.io/ocpmetal/assisted-service@sha256:64e88c5aa41c606bc2db2b0991acdbb1166559306474e13f5e2810f325616d64
        - quay.io/ocpmetal/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:31eda4f1888b180feb023c42a6ec93478b2e956f13420d55987d9abf7c7797c3
        - quay.io/ocpmetal/assisted-installer-agent@sha256:a391892766d1ce81300bf82943318e7c3be0d2945fc19065527ab9f64fc24cf8
        - quay.io/ocpmetal/assisted-installer-controller@sha256:43b65c310eee985ee0fc20ad8ee684f7557ffe704fd1a2fa53831e3dbc41e849
        version: 0.0.8
      entries:
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.3
    - currentCSV: assisted-service-operator.v0.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.2/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.2/rhcos-4.8.2-x86_64-live.x86_64.iso",
                      "version": "48.84.202107202156-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-x86_64-live.x86_64.iso",
                      "version": "49.84.202110081407-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:c3a852842b88f47c51cf1c62d3a19b102729fb355df19ced0e03e8265739c39c
          createdAt: "2022-04-07T11:23:06Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.1.3'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled, for
              all other names a "Warning" event will be emitted + message logged and
              it will be ignored forever.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent".
          No other name will be accepted.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:7d5f9e02f3d6c3e2ac63f1fd33240dc696ee79563c214d21d2897ee773517e9c
        - quay.io/edge-infrastructure/assisted-image-service@sha256:add19e251cafdfc4f34264d0aec5b660f0ea2dcc13326f4a2c8d50a2e465c0a2
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:979650f2e03e457d71958e8813285fcb7185fe0035f21a6ba956b4277cb29b70
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:658787d1e6c1f733c5f03863655aff315258c0b38e1972573c3878df46e4e463
        - quay.io/edge-infrastructure/assisted-installer@sha256:461d60b21d1d3ccb15a170f937f4871088cd0f83108b2271e84bdf2883a66870
        - quay.io/edge-infrastructure/assisted-service@sha256:c3a852842b88f47c51cf1c62d3a19b102729fb355df19ced0e03e8265739c39c
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        version: 0.1.3
      entries:
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.4
    - currentCSV: assisted-service-operator.v0.3.30
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-x86_64-live.x86_64.iso",
                      "version": "49.84.202110081407-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.9",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-aarch64-live-rootfs.aarch64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-aarch64-live.aarch64.iso",
                      "version": "49.84.202110080947-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.3/rhcos-4.10.3-x86_64-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.3/rhcos-4.10.3-x86_64-live.x86_64.iso",
                      "version": "410.84.202201251210-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:7c13ce52d82f761aec47bc5a6639d7baabe99d0f4f2e2106c4341018c606b458
          createdAt: "2022-06-13T23:16:28Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.3.30'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:5b061126dc3adf1fc9c8c22dfded18f4652bd62537aefca88ddcc585078b94ae
        - quay.io/edge-infrastructure/assisted-image-service@sha256:d6396f9360b877a4f57139ba5b4969f243278db709be4de3573f2fba75e50018
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:6271d639e4c0647bd28fbc85cea54f31143a876c3237376b9c670ec254a9c2fc
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:2267d2d7be38f81d530fed977b0c46f6c976369cd89c123c8e036c3b1dd988d5
        - quay.io/edge-infrastructure/assisted-installer@sha256:57cf8d5fe49067a8c1345bedaf90f2b63aededdd7d615878496182c35a13892e
        - quay.io/edge-infrastructure/assisted-service@sha256:7c13ce52d82f761aec47bc5a6639d7baabe99d0f4f2e2106c4341018c606b458
        version: 0.3.30
      entries:
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.5
    - currentCSV: assisted-service-operator.v0.4.41
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.40/rhcos-4.9.40-x86_64-live.x86_64.iso",
                      "version": "49.84.202206171736-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.16/rhcos-4.10.16-x86_64-live.x86_64.iso",
                      "version": "410.84.202205191234-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.16/rhcos-4.10.16-aarch64-live.aarch64.iso",
                      "version": "410.84.202205191023-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.11.0-rc.2/rhcos-4.11.0-rc.2-x86_64-live.x86_64.iso",
                      "version": "411.86.202207090519-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.11.0-rc.2/rhcos-4.11.0-rc.2-aarch64-live.aarch64.iso",
                      "version": "411.86.202207090159-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:0fa869095185759c26c391f0e353f293c903ea739576f160d6668f5f20404bdb
          createdAt: "2022-09-11T14:56:07Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.4.41'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/assisted-installer@sha256:803168aeb7e01db77e3b2ff7418ceea3d93daccaceeb95f8fc02027144ebac75
        - quay.io/edge-infrastructure/assisted-service@sha256:0fa869095185759c26c391f0e353f293c903ea739576f160d6668f5f20404bdb
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:4ca00219efbc0d9dcce415dadc1039e9495f3a3b00ab3bd575b41554d7934899
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:007a3d43633fe355202002737f766a7c636f537f3daeffa1f62356c0bbf969aa
        - quay.io/edge-infrastructure/assisted-image-service@sha256:104d2aae313c724fb10d3ef3bba78b2370fc0597de31335453894b679a450ab8
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:56484f99799d22f345215bb65c6b81b6ee14e07d26b625c3f283a2ddfdc37238
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:951b9d625bc300b5b72a3916cb382015527ea786f10b7acbeebf83ae854ca51a
        version: 0.4.41
      entries:
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.6
    - currentCSV: assisted-service-operator.v0.4.50
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-x86_64-live.x86_64.iso",
                      "version": "411.86.202210041459-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-aarch64-live.aarch64.iso",
                      "version": "411.86.202210032347-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "412.86.202208101039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "412.86.202208101040-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:0ca1cfe04f088cd4c7318cb91978754d6472ada29e3436d05e22335740bfff49
          createdAt: "2022-11-23T19:17:47Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.4.50'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:87594d78977ead074e53b39a52e905a2d2861d24d69d2f2e33b066077cd279a4
        - quay.io/edge-infrastructure/assisted-image-service@sha256:71e8c9c76caa8fe01255fdb4a1172cda372969f7fe1399a3a54fb93e967e68cf
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:34e0341c0471b1772db11535107db06e511c8d5d9816edc3971e745928164ecd
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:c1c7281b9f06e56330cc55ac8d74185d42ee82dff105ae747db677b8eb059aea
        - quay.io/edge-infrastructure/assisted-installer@sha256:f225c86242b0bfbf58753123ef33b7c07f367a5099641d19cfda5a7121382586
        - quay.io/edge-infrastructure/assisted-service@sha256:0ca1cfe04f088cd4c7318cb91978754d6472ada29e3436d05e22335740bfff49
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:54b39c6cafefb70d258ec1d491b6a0f1dd888cd85bd442c8f40a4805cf4721ca
        version: 0.4.50
      entries:
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.7
    - currentCSV: assisted-service-operator.v0.6.65
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-x86_64-live.x86_64.iso",
                      "version": "411.86.202210041459-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-aarch64-live.aarch64.iso",
                      "version": "411.86.202210032347-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-s390x-live.s390x.iso",
                      "version": "411.86.202210171842-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202210171844-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-x86_64-live.x86_64.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-aarch64-live.aarch64.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-s390x-live.s390x.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-x86_64-live.x86_64.iso",
                      "version": "413.92.202303281804-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-aarch64-live.aarch64.iso",
                      "version": "413.92.202303281804-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202303281804-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-s390x-live.s390x.iso",
                      "version": "413.92.202303281804-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:2dfaf2c3ac58b2987b0088df302c7cf717d0b6640cdb8b2327370aa110120784
          createdAt: "2023-05-24T11:15:57Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.6.65'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:1287d947464fbf5275feb31d106d2feb856c6117f0eaec8d947f2e03bd8618c5
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:ff8e563d97f0d0e42c690ca3e61d3625e920947264ea99c396392c440cd43201
        - quay.io/edge-infrastructure/assisted-image-service@sha256:b1ba1076fe16b2f868ed31a660b16583a957a83634c7ec3cf03574b56e02144c
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:1ad91b13c763437863480df68f5b65576e95c558d4537886432a81c0b8d3cedc
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:a6f99547564cc2e047df74003019817b2dbd3dad992a0c8e53aaaba4f5b02ab6
        - quay.io/edge-infrastructure/assisted-installer@sha256:f8a7e7cb6ff1a4a7daa0cb26f0fab8da17f109653af5979c9d53c35b7ca2c1bb
        - quay.io/edge-infrastructure/assisted-service@sha256:2dfaf2c3ac58b2987b0088df302c7cf717d0b6640cdb8b2327370aa110120784
        version: 0.6.65
      entries:
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.8
    - currentCSV: assisted-service-operator.v0.7.67
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "414.92.202305090606-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "414.92.202305090606-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202305090606-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-s390x-live.s390x.iso",
                      "version": "414.92.202305090606-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:fb0397a1402d42a64e3128e66a0817aa9466e67eb407cb792dda0d380bd5a189
          createdAt: "2023-10-08T07:14:20Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.67'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/assisted-image-service@sha256:69ff087be8e5d8458a97f49d88b8b2025ee341d362dcf5618988c011b66688e0
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:f2aeb4f7d193ea2c5702cae0f6039c02991b9f417d091468d46974408c97efe4
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:35c118d8c07dd72fe3307424cc051d9e0426e916412171449a05e41445b9f599
        - quay.io/edge-infrastructure/assisted-installer@sha256:d85be59bc379927f46d0a88ef04172c5c6733e31e1e4a8188de2d434d5bedb66
        - quay.io/edge-infrastructure/assisted-service@sha256:fb0397a1402d42a64e3128e66a0817aa9466e67eb407cb792dda0d380bd5a189
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:12a02131f13e532a26572a524ae542766092ff75624113994d304824951161b4
        version: 0.7.67
      entries:
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.9
    defaultChannel: alpha
    packageName: assisted-service-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Devfile
      provider-url: https://devfile.io
    name: devworkspace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: devworkspace-operator.v0.38.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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: "true"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.7.1+git
          operators.operatorframework.io/internal-objects: '["devworkspaceroutings.controller.devfile.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DevWorkspaceOperatorConfig
            name: devworkspaceoperatorconfigs.controller.devfile.io
            version: v1alpha1
          - kind: DevWorkspaceRouting
            name: devworkspaceroutings.controller.devfile.io
            version: v1alpha1
          - kind: DevWorkspace
            name: devworkspaces.workspace.devfile.io
            version: v1alpha1
          - kind: DevWorkspace
            name: devworkspaces.workspace.devfile.io
            version: v1alpha2
          - kind: DevWorkspaceTemplate
            name: devworkspacetemplates.workspace.devfile.io
            version: v1alpha1
          - kind: DevWorkspaceTemplate
            name: devworkspacetemplates.workspace.devfile.io
            version: v1alpha2
        description: |
          The DevWorkspace Operator enables cluster-level support for the
          [Devfile 2.0 spec](https://docs.devfile.io), enabling static, reproducible
          configurations for launching cloud-based editors and IDEs in OpenShift and
          Kubernetes clusters.

          Leveraging the language server protocol and the Eclipse Theia web IDE, the
          DevWorkspace operator provides easy configuration of full development
          environments on the cloud with support for a wide variety of languages and
          technologies, including Go, Java, Typescript/Javascript, Python, and more.

          The DevWorkspace Operator is also used in the Web Terminal Operator to
          automatically provision Web Terminal environments.

          ## Installing the operator
          The DevWorkspace Operator can be installed directly from the OperatorHub UI and
          will be available in all namespaces on the cluster. DevWorkspace creation is
          driven by the DevWorkspace custom resource, which can be created in any
          namespace to provision a full development environment. To get started, browse
          the DevWorkspace [spec](https://devfile.io/docs/2.3.0/devfile-schema).

          Once a DevWorkspace is started, it can be accessed via the URL in its
          `.status.mainUrl` field.

          It's recommended to install the DevWorkspace Operator to the
          `openshift-operators` namespace for compatibility.

          ## Uninstalling the operator
          The DevWorkspace Operator utilizes finalizers on resources it creates and
          webhooks to restrict access to development resources. As a result, manual steps
          are required in uninstalling the operator. See the
          [documentation](https://github.com/devfile/devworkspace-operator/blob/main/docs/uninstall.md)
          for details.
        displayName: DevWorkspace Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Devworkspace Operator
        - DevWorkspaces
        - Devfile
        links:
        - name: Devworkspace Operator
          url: https://github.com/devfile/devworkspace-operator
        maintainers:
        - email: dakwon@redhat.com
          name: David Kwon
        - email: ibuziuk@redhat.com
          name: Ilya Buziuk
        maturity: alpha
        provider:
          name: Devfile
          url: https://devfile.io
        relatedImages:
        - registry.redhat.io/ubi9/ubi-minimal@sha256:a50731d3397a4ee28583f1699842183d4d24fadcc565c4688487af9ee4e13a44
        - registry.redhat.io/devworkspace/devworkspace-operator-bundle@sha256:e2b731c676f12ff02781f0ac279ce4aa3652b6e24e90eba5880579c49b737adf
        - registry.redhat.io/devworkspace/devworkspace-project-clone-rhel9@sha256:3f0619571d6fa2259796f837ebfd0eb0fa225054ac38ed0d144245cccce51515
        - registry.redhat.io/devworkspace/devworkspace-rhel9-operator@sha256:5382d54bbd3ade51a7dda1c8a8a86aca30fb5655c61a4a4e85ecceef7e36f168
        version: 0.38.0
      entries:
      - name: devworkspace-operator.v0.38.0
        version: 0.38.0
      - name: devworkspace-operator.v0.37.0
        version: 0.37.0
      - name: devworkspace-operator.v0.36.0
        version: 0.36.0
      - name: devworkspace-operator.v0.35.1
        version: 0.35.1
      - name: devworkspace-operator.v0.34.0
        version: 0.34.0
      - name: devworkspace-operator.v0.33.0
        version: 0.33.0
      - name: devworkspace-operator.v0.32.1
        version: 0.32.1
      - name: devworkspace-operator.v0.31.2
        version: 0.31.2
      - name: devworkspace-operator.v0.31.1
        version: 0.31.1
      - name: devworkspace-operator.v0.31.0
        version: 0.31.0
      - name: devworkspace-operator.v0.30.2
        version: 0.30.2
      - name: devworkspace-operator.v0.30.1
        version: 0.30.1
      - name: devworkspace-operator.v0.30.0
        version: 0.30.0
      - name: devworkspace-operator.v0.29.0
        version: 0.29.0
      - name: devworkspace-operator.v0.28.0-0.1719314743.p
        version: 0.28.0+0.1719314743.p
      - name: devworkspace-operator.v0.28.0
        version: 0.28.0
      - name: devworkspace-operator.v0.27.0-0.1714987663.p
        version: 0.27.0+0.1714987663.p
      - name: devworkspace-operator.v0.27.0
        version: 0.27.0
      - name: devworkspace-operator.v0.26.0
        version: 0.26.0
      - name: devworkspace-operator.v0.25.0
        version: 0.25.0
      - name: devworkspace-operator.v0.24.0
        version: 0.24.0
      - name: devworkspace-operator.v0.23.0
        version: 0.23.0
      - name: devworkspace-operator.v0.22.0
        version: 0.22.0
      - name: devworkspace-operator.v0.21.2
        version: 0.21.2
      - name: devworkspace-operator.v0.21.1
        version: 0.21.1
      - name: devworkspace-operator.v0.20.0
        version: 0.20.0
      - name: devworkspace-operator.v0.19.1
        version: 0.19.1
      - name: devworkspace-operator.v0.19.1-0.1682321189.p
        version: 0.19.1+0.1682321189.p
      - name: devworkspace-operator.v0.19.1-0.1679521112.p
        version: 0.19.1+0.1679521112.p
      - name: devworkspace-operator.v0.18.1
        version: 0.18.1
      - name: devworkspace-operator.v0.18.1-0.1675929565.p
        version: 0.18.1+0.1675929565.p
      - name: devworkspace-operator.v0.17.0
        version: 0.17.0
      - name: devworkspace-operator.v0.16.0-0.1666668361.p
        version: 0.16.0+0.1666668361.p
      - name: devworkspace-operator.v0.16.0
        version: 0.16.0
      - name: devworkspace-operator.v0.15.2-0.1661828401.p
        version: 0.15.2+0.1661828401.p
      - name: devworkspace-operator.v0.15.2
        version: 0.15.2
      - name: devworkspace-operator.v0.14.1
        version: 0.14.1
      - name: devworkspace-operator.v0.13.0
        version: 0.13.0
      - name: devworkspace-operator.v0.12.0
        version: 0.12.0
      - name: devworkspace-operator.v0.11.0
        version: 0.11.0
      - name: devworkspace-operator.v0.10.0
        version: 0.10.0
      - name: devworkspace-operator.v0.9.0
        version: 0.9.0
      name: fast
    defaultChannel: fast
    packageName: devworkspace-operator
    provider:
      name: Devfile
      url: https://devfile.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-opensearch-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opensearch-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/opensearch-operator@sha256:fea1404da760585252a5aa573a04fbfa9662e48164254dff34babbfb6902e332
          description: Stackable Operator for OpenSearch
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/opensearch-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for OpenSearchClusterSpec via
              `CustomResource`
            displayName: opensearchclusters.opensearch.stackable.tech
            kind: OpenSearchCluster
            name: opensearchclusters.opensearch.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for OpenSearch
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opensearch
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/opensearch-operator@sha256:fea1404da760585252a5aa573a04fbfa9662e48164254dff34babbfb6902e332
        - registry.connect.redhat.com/stackable/stackable-opensearch-operator:25.11.0
        version: 25.11.0
      entries:
      - name: opensearch-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-opensearch-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: aws-neuron-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-neuron-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.aws/v1alpha1",
                "kind": "DeviceConfig",
                "metadata": {
                  "name": "device-config",
                  "namespace": "ai-operator-on-aws"
                },
                "spec": {
                  "customSchedulerImage": "public.ecr.aws/eks-distro/kubernetes/kube-scheduler:v1.32.9-eks-1-32-24",
                  "devicePluginImage": "public.ecr.aws/neuron/neuron-device-plugin:2.24.23.0",
                  "driversImage": "public.ecr.aws/q5p6u7h8/neuron-openshift/neuron-kernel-module:2.24.7.0",
                  "schedulerExtensionImage": "public.ecr.aws/neuron/neuron-scheduler:2.24.23.0",
                  "selector": {
                    "feature.node.kubernetes.io/aws-neuron": "true"
                  },
                  "useInTreeDrivers": false
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-10-27T12:17:40Z"
          description: AWS Neuron operator is resposible for deploying AWS Neuron
            kernel drivers, device plugin and customed scheduler
          operatorframework.io/suggested-namespace: ai-operator-on-aws
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DeviceConfig
            name: deviceconfigs.k8s.aws
            version: v1alpha1
        description: AWS Neuron operator is resposible for deploying AWS Neuron kernel
          drivers, device plugin and customed scheduler
        displayName: Aws Neuron Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws-neuron-operator
        links:
        - name: Aws Neuron Operator
          url: https://aws-neuron-operator.domain
        maintainers:
        - email: yshnaidm@redhat.com
          name: Yeggeny Shnaidman
        - email: shapirov@amazon.com
          name: Mikhail Shapirov
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/q5p6u7h8/neuron-openshift/operator:v0.1.1
        - quay.io/community-operator-pipeline-prod/aws-neuron-operator:0.0.3
        version: 0.0.3
      entries:
      - name: aws-neuron-operator.v0.0.3
        version: 0.0.3
      - name: aws-neuron-operator.v0.0.2
        version: 0.0.2
      - name: aws-neuron-operator.v0.0.1
        version: 0.0.1
      name: Fast
    - currentCSV: aws-neuron-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.aws/v1alpha1",
                "kind": "DeviceConfig",
                "metadata": {
                  "name": "device-config",
                  "namespace": "ai-operator-on-aws"
                },
                "spec": {
                  "customSchedulerImage": "public.ecr.aws/eks-distro/kubernetes/kube-scheduler:v1.32.9-eks-1-32-24",
                  "devicePluginImage": "public.ecr.aws/neuron/neuron-device-plugin:2.24.23.0",
                  "driversImage": "public.ecr.aws/q5p6u7h8/neuron-openshift/neuron-kernel-module:2.24.7.0",
                  "schedulerExtensionImage": "public.ecr.aws/neuron/neuron-scheduler:2.24.23.0",
                  "selector": {
                    "feature.node.kubernetes.io/aws-neuron": "true"
                  },
                  "useInTreeDrivers": false
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-10-27T12:17:40Z"
          description: AWS Neuron operator is resposible for deploying AWS Neuron
            kernel drivers, device plugin and customed scheduler
          operatorframework.io/suggested-namespace: ai-operator-on-aws
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DeviceConfig
            name: deviceconfigs.k8s.aws
            version: v1alpha1
        description: AWS Neuron operator is resposible for deploying AWS Neuron kernel
          drivers, device plugin and customed scheduler
        displayName: Aws Neuron Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws-neuron-operator
        links:
        - name: Aws Neuron Operator
          url: https://aws-neuron-operator.domain
        maintainers:
        - email: yshnaidm@redhat.com
          name: Yeggeny Shnaidman
        - email: shapirov@amazon.com
          name: Mikhail Shapirov
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/aws-neuron-operator:0.0.3
        - public.ecr.aws/q5p6u7h8/neuron-openshift/operator:v0.1.1
        version: 0.0.3
      entries:
      - name: aws-neuron-operator.v0.0.3
        version: 0.0.3
      - name: aws-neuron-operator.v0.0.2
        version: 0.0.2
      - name: aws-neuron-operator.v0.0.1
        version: 0.0.1
      name: Stable
    defaultChannel: Fast
    packageName: aws-neuron-operator
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OpenShift Database Access
      provider-url: ""
    name: dbaas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dbaas-operator.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSConnection",
                "metadata": {
                  "name": "dbaasconnection-example"
                },
                "spec": {
                  "databaseServiceID": "instance-example",
                  "databaseServiceType": "instance",
                  "inventoryRef": {
                    "name": "inventory-example",
                    "namespace": "openshift-dbaas-operator"
                  }
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSInstance",
                "metadata": {
                  "name": "dbaasinstance-sample"
                },
                "spec": {
                  "cloudProvider": "AWS",
                  "cloudRegion": "US_EAST_1",
                  "inventoryRef": {
                    "name": "inventory-example",
                    "namespace": "openshift-dbaas-operator"
                  },
                  "name": "my-cluster-free"
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSInventory",
                "metadata": {
                  "name": "inventory-example"
                },
                "spec": {
                  "credentialsRef": {
                    "name": "dbaas-vendor-credentials"
                  },
                  "providerRef": {
                    "name": "provider-example-registration"
                  }
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSPolicy",
                "metadata": {
                  "name": "dbaaspolicy-sample"
                },
                "spec": {
                  "disableProvisions": false
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSProvider",
                "metadata": {
                  "labels": {
                    "related-to": "dbaas-operator",
                    "type": "dbaas-provider-registration"
                  },
                  "name": "provider-example-registration"
                },
                "spec": {
                  "allowsFreeTrial": true,
                  "connectionKind": "ProviderConnection",
                  "credentialFields": [
                    {
                      "displayName": "ProviderAPIKeyD",
                      "helpText": "This is the API Key for the example provider to show on UI",
                      "key": "APIKey",
                      "required": true,
                      "type": "maskedstring"
                    }
                  ],
                  "externalProvisionDescription": "Follow the guide to start a free Provider Serverless (beta) cluster",
                  "externalProvisionURL": "https://www.exmample.com/docs/provider/quickstart.html",
                  "groupVersion": "dbaas.redhat.com/v1beta1",
                  "instanceKind": "ProviderInstance",
                  "inventoryKind": "ProviderInventory",
                  "provider": {
                    "displayDescription": "This is an example for providers on how to implement their operator to integrate with DBaaS.",
                    "displayName": "DBaaS Provider Example ",
                    "icon": {
                      "base64data": "SGVsbG8sIHdvcmxkLg==",
                      "mediatype": "image/png"
                    },
                    "name": "Provider Example"
                  },
                  "provisioningParameters": {
                    "cloudProvider": {
                      "conditionalData": [
                        {
                          "defaultValue": "GCP",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "FREETRIAL"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "Google Cloud Platform",
                              "value": "GCP"
                            }
                          ]
                        },
                        {
                          "defaultValue": "AWS",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "SERVERLESS"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "Amazon Web Services",
                              "value": "AWS"
                            },
                            {
                              "displayValue": "Google Cloud Platform",
                              "value": "GCP"
                            }
                          ]
                        },
                        {
                          "defaultValue": "AWS",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "Amazon Web Services",
                              "value": "AWS"
                            },
                            {
                              "displayValue": "Google Cloud Platform",
                              "value": "GCP"
                            }
                          ]
                        }
                      ],
                      "displayName": "Cloud Provider"
                    },
                    "dedicatedLocationLabel": {
                      "displayName": "Select regions \u0026 nodes",
                      "helpText": "Select the geographical region where you want the database instance to run, and set the number of nodes you want running in this dedicated cluster."
                    },
                    "hardwareLabel": {
                      "displayName": "Hardware per node",
                      "helpText": "Select the compute and storage requirements for this database instance."
                    },
                    "machineType": {
                      "conditionalData": [
                        {
                          "defaultValue": "m5.large",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "AWS"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "2 vCPU, 8 GiB RAM",
                              "value": "m5.large"
                            },
                            {
                              "displayValue": "4 vCPU, 16 GiB RAM",
                              "value": "m5.xlarge"
                            },
                            {
                              "displayValue": "8 vCPU, 32 GiB RAM",
                              "value": "m5.2xlarge"
                            },
                            {
                              "displayValue": "16 vCPU, 64 GiB RAM",
                              "value": "m5.4xlarge"
                            },
                            {
                              "displayValue": "32 vCPU, 128 GiB RAM",
                              "value": "m5.8xlarge"
                            }
                          ]
                        },
                        {
                          "defaultValue": "n1-standard-2",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "GCP"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "2 vCPU, 7.5 GiB RAM",
                              "value": "n1-standard-2"
                            },
                            {
                              "displayValue": "4 vCPU, 15 GiB RAM",
                              "value": "n1-standard-4"
                            },
                            {
                              "displayValue": "8 vCPU, 30 GiB RAM",
                              "value": "n1-standard-8"
                            },
                            {
                              "displayValue": "16 vCPU, 60 GiB RAM",
                              "value": "n1-standard-16"
                            },
                            {
                              "displayValue": "32 vCPU, 120 GiB RAM",
                              "value": "n1-standard-32"
                            }
                          ]
                        }
                      ],
                      "displayName": "Compute"
                    },
                    "name": {
                      "displayName": "Cluster name"
                    },
                    "nodes": {
                      "displayName": "nodes"
                    },
                    "plan": {
                      "conditionalData": [
                        {
                          "defaultValue": "SERVERLESS",
                          "options": [
                            {
                              "displayValue": "Free trial",
                              "value": "FREETRIAL"
                            },
                            {
                              "displayValue": "Serverless",
                              "value": "SERVERLESS"
                            },
                            {
                              "displayValue": "Dedicated",
                              "value": "DEDICATED"
                            }
                          ]
                        }
                      ],
                      "displayName": "Hosting plan"
                    },
                    "planLabel": {
                      "displayName": "Select a plan"
                    },
                    "regions": {
                      "displayName": "us-west-2"
                    },
                    "serverlessLocationLabel": {
                      "displayName": "Select regions",
                      "helpText": "Select the geographical region where you want the database instance to run."
                    },
                    "spendLimit": {
                      "conditionalData": [
                        {
                          "defaultValue": "0",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "SERVERLESS"
                            }
                          ]
                        }
                      ],
                      "displayName": "Spend limit"
                    },
                    "spendLimitLabel": {
                      "displayName": "Spend limit",
                      "helpText": "Set a spending limit on resources for this database instance."
                    },
                    "storageGib": {
                      "conditionalData": [
                        {
                          "defaultValue": "15",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "AWS"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "15 GiB",
                              "value": "15"
                            },
                            {
                              "displayValue": "35 GiB",
                              "value": "35"
                            },
                            {
                              "displayValue": "75 GiB",
                              "value": "75"
                            },
                            {
                              "displayValue": "150 GiB",
                              "value": "150"
                            },
                            {
                              "displayValue": "300 GiB",
                              "value": "300"
                            },
                            {
                              "displayValue": "600 GiB",
                              "value": "600"
                            }
                          ]
                        },
                        {
                          "defaultValue": "15",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "GCP"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "15 GiB",
                              "value": "15"
                            },
                            {
                              "displayValue": "35 GiB",
                              "value": "35"
                            },
                            {
                              "displayValue": "75 GiB",
                              "value": "75"
                            },
                            {
                              "displayValue": "150 GiB",
                              "value": "150"
                            },
                            {
                              "displayValue": "300 GiB",
                              "value": "300"
                            },
                            {
                              "displayValue": "600 GiB",
                              "value": "600"
                            }
                          ]
                        }
                      ],
                      "displayName": "Storage"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Database
          containerImage: quay.io/ecosystem-appeng/dbaas-operator:v0.5.0
          description: Discover & connect with database instances hosted on 3rd-party
            ISV cloud platforms.
          operatorframework.io/suggested-namespace: openshift-dbaas-operator
          operators.operatorframework.io/builder: operator-sdk-v1.22.2
          operators.operatorframework.io/internal-objects: '["dbaasconnections.dbaas.redhat.com","dbaasproviders.dbaas.redhat.com","dbaasplatforms.dbaas.redhat.com","dbaasinstances.dbaas.redhat.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/RHEcosystemAppEng/dbaas-operator
          support: rhoda-requests@redhat.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DBaaSConnection
            name: dbaasconnections.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSConnection defines the schema for the DBaaSConnection
              API.
            displayName: DBaaSConnection
            kind: DBaaSConnection
            name: dbaasconnections.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSInstance
            name: dbaasinstances.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSInstance defines the schema for the DBaaSInstance API.
            displayName: DBaaSInstance
            kind: DBaaSInstance
            name: dbaasinstances.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSInventory
            name: dbaasinventories.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSInventory defines the schema for the DBaaSInventory
              API. Inventory objects must be created in a valid namespace, determined
              by the existence of a DBaaSPolicy object.
            displayName: Provider Account
            kind: DBaaSInventory
            name: dbaasinventories.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSPlatform
            name: dbaasplatforms.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSPlatform defines the schema for the DBaaSPlatform API.
            displayName: DBaaSPlatform
            kind: DBaaSPlatform
            name: dbaasplatforms.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSPolicy
            name: dbaaspolicies.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSPolicy enables administrative capabilities within a
              namespace, and sets a default inventory policy. Policy defaults can
              be overridden on a per-inventory basis.
            displayName: Provider Account Policy
            kind: DBaaSPolicy
            name: dbaaspolicies.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSProvider
            name: dbaasproviders.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSProvider defines the schema for the DBaaSProvider API.
            displayName: DBaaSProvider
            kind: DBaaSProvider
            name: dbaasproviders.dbaas.redhat.com
            version: v1beta1
        description: |
          The OpenShift Database Access Operator enables OpenShift users to discover & connect with database instances
          hosted on 3rd-party ISV cloud platforms such as CrunchyData Bridge & CockroachCloud.

          ## Feedback & Support

          Please contact us at [rhoda-requests@redhat.com](mailto:rhoda-requests@redhat.com)

          For more information on how to use our service, please refer to our [Quick Starts](quickstart?keyword=database).
        displayName: OpenShift Database Access Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rhoda
        - oda
        - dbaas
        - database
        - db
        - data
        - access
        - crunchy
        - bridge
        - cockroach
        - cockroachdb
        - cloud
        - ack
        - amazon
        - rds
        - relational
        links:
        - name: GitHub
          url: https://github.com/RHEcosystemAppEng/dbaas-operator
        maintainers:
        - email: ecosystem-appeng@redhat.com
          name: Red Hat Ecosystem App Engineering
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: OpenShift Database Access
        relatedImages:
        - quay.io/ecosystem-appeng/dbaas-dynamic-plugin:0.5.0
        - quay.io/ecosystem-appeng/dbaas-operator:v0.5.0
        - quay.io/ecosystem-appeng/rds-dbaas-operator-catalog:v0.4.0
        - quay.io/openshift-community-operators/dbaas-operator@sha256:b2474b569406fb0f47a7042042429bbc5cd2edbbd119e701c6f440a139e1b3ac
        - quay.io/openshift/origin-kube-rbac-proxy:4.10.0
        - registry.developers.crunchydata.com/crunchydata/crunchy-bridge-operator-catalog:v0.0.6
        - gcr.io/cockroach-shared/ccapi-k8s-operator-catalog:v0.0.5
        version: 0.5.0
      entries:
      - name: dbaas-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: dbaas-operator
    provider:
      name: OpenShift Database Access
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EPAM Delivery Platform
      provider-url: https://epam.github.io/edp-install/
    name: sonar-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sonar-operator.v3.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "Sonar",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonar-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonar",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonar-sample"
                },
                "spec": {
                  "defaultPermissionTemplate": "edp-default",
                  "secret": "sonar-secret",
                  "settings": [
                    {
                      "key": "sonar.global.exclusions",
                      "values": [
                        "**/*.jsx",
                        "**/*.tsx"
                      ]
                    },
                    {
                      "fieldValues": {
                        "beginBlockRegexp": ".*",
                        "endBlockRegexp": ".*"
                      },
                      "key": "sonar.issue.ignore.block"
                    },
                    {
                      "key": "sonar.dbcleaner.hoursBeforeKeepingOnlyOneSnapshotByDay",
                      "value": "20"
                    }
                  ],
                  "url": "https://example.com"
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarGroup",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonargroup-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonargroup",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonargroup-sample"
                },
                "spec": {
                  "description": "Developers",
                  "name": "sonar-developers",
                  "permissions": [
                    "admin"
                  ],
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarPermissionTemplate",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonarpermissiontemplate-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonarpermissiontemplate",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonarpermissiontemplate-sample"
                },
                "spec": {
                  "default": true,
                  "description": "EDP permission templates",
                  "groupsPermissions": {
                    "sonar-developers": [
                      "scan"
                    ],
                    "sonar-users": [
                      "issueadmin"
                    ]
                  },
                  "name": "edp-default",
                  "projectKeyPattern": ".+",
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarQualityGate",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonarqualitygate-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonarqualitygate",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonarqualitygate-sample"
                },
                "spec": {
                  "conditions": {
                    "new_duplicated_lines_density": {
                      "error": "1",
                      "op": "GT"
                    }
                  },
                  "default": true,
                  "name": "sonarqualitygate-sample",
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarQualityProfile",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonarqualityprofile-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonarqualityprofile",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonarqualityprofile-sample"
                },
                "spec": {
                  "default": true,
                  "language": "go",
                  "name": "sonarqualityprofile-sample",
                  "rules": {
                    "go:S1151": {
                      "params": "max=\"6\"",
                      "severity": "MAJOR"
                    }
                  },
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarUser",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonaruser-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonaruser",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonaruser-sample"
                },
                "spec": {
                  "email": "sonaruser@mail.com",
                  "groups": [
                    "sonar-administrators"
                  ],
                  "login": "sonaruser",
                  "name": "sonar user",
                  "permissions": [
                    "scan"
                  ],
                  "secret": "sonaruser-secret",
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Developer Tools
          containerImage: docker.io/epamedp/sonar-operator:3.1.0
          createdAt: "2023-09-08T12:53:57Z"
          description: An Operator for managing Sonar entities.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/epam/edp-sonar-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonarGroup is the Schema for the sonar group API.
            displayName: Sonar Group
            kind: SonarGroup
            name: sonargroups.edp.epam.com
            version: v1alpha1
          - description: SonarPermissionTemplate is the Schema for the sonar permission
              template API.
            displayName: Sonar Permission Template
            kind: SonarPermissionTemplate
            name: sonarpermissiontemplates.edp.epam.com
            version: v1alpha1
          - description: SonarQualityGate is the Schema for the sonarqualitygates
              API
            displayName: Sonar Quality Gate
            kind: SonarQualityGate
            name: sonarqualitygates.edp.epam.com
            version: v1alpha1
          - description: SonarQualityProfile is the Schema for the sonarqualityprofiles
              API
            displayName: Sonar Quality Profile
            kind: SonarQualityProfile
            name: sonarqualityprofiles.edp.epam.com
            version: v1alpha1
          - description: Sonar is the Schema for the sonars API.
            displayName: Sonar
            kind: Sonar
            name: sonars.edp.epam.com
            version: v1alpha1
          - description: SonarUser is the Schema for the sonarusers API
            displayName: Sonar User
            kind: SonarUser
            name: sonarusers.edp.epam.com
            version: v1alpha1
        description: |
          Sonar Operator is an operator that is responsible for establishing
          a connection to provided SonarQube server, reconciling Sonar entities (users,
          groups, permission templates, etc) according to the created CRs.
        displayName: EDP Sonar Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - analysis
        - automation
        - code
        - continuous
        - devops
        - edp
        - inspection
        - metrics
        - metrics
        - monitoring
        - operator
        - quality
        - security
        - software
        - static
        - technical
        - vulnerabilities
        links:
        - name: Sonar Operator
          url: https://github.com/epam/edp-sonar-operator
        maintainers:
        - email: SupportEPMD-EDP@epam.com
          name: epmd-edp
        maturity: alpha
        provider:
          name: EPAM Delivery Platform
          url: https://epam.github.io/edp-install/
        relatedImages:
        - docker.io/epamedp/sonar-operator:3.1.0
        - quay.io/openshift-community-operators/sonar-operator@sha256:5e7a87f52955162f090c1d7fc69f6d0917444b553355a11c061ab60f289a17d7
        version: 3.1.0
      entries:
      - name: sonar-operator.v3.1.0
        version: 3.1.0
      name: alpha
    defaultChannel: alpha
    packageName: sonar-operator
    provider:
      name: EPAM Delivery Platform
      url: https://epam.github.io/edp-install/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Opstree Solutions
      provider-url: ""
    name: redis-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: redis-operator.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"Redis","metadata":{"name":"redis"},"spec":{"mode":"cluster","size":3,"global":{"image":"quay.io/opstree/redis:v6.2","imagePullPolicy":"IfNotPresent","password":"Opstree@1234","resources":{"requests":{"cpu":"100m","memory":"128Mi"},"limits":{"cpu":"100m","memory":"128Mi"}}},"master":{"service":{"type":"ClusterIP"},"redisConfig":{}},"slave":{"service":{"type":"ClusterIP"},"redisConfig":{}},"service":{"type":"ClusterIP"},"redisConfig":{},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:1.0","imagePullPolicy":"Always","resources":{"requests":{"cpu":"100m","memory":"128Mi"},"limits":{"cpu":"100m","memory":"128Mi"}}},"storage":{"volumeClaimTemplate":{"spec":{"storageClassName":"buildpiper-storage","accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}}}}]'
          capabilities: Seamless Upgrades
          categories: Database, Storage
          certified: "false"
          containerImage: quay.io/opstree/redis-operator:v0.4.0
          createdAt: 06-02-2021
          description: A Golang based redis operator that will make/oversee Redis
            standalone/cluster mode setup on top of the Kubernetes.
          repository: https://github.com/ot-container-kit/redis-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Redis
            displayName: Redis
            kind: Redis
            name: redis.redis.redis.opstreelabs.in
            version: v1beta1
        description: |+
          A Golang based redis operator that will make/oversee Redis standalone/cluster mode setup on top of the Kubernetes. It can create a redis cluster setup with best practices on Cloud as well as the Bare metal environment. Also, it provides an in-built monitoring capability using redis-exporter.

          ### Supported Features

          Here the features which are supported by this operator:-
          - Redis cluster/standalone mode setup
          - Inbuilt monitoring with prometheus exporter
          - Dynamic storage provisioning with pvc template
          - Resources restrictions with k8s requests and limits
          - Password/Password-less setup
          - Node selector and affinity
          - Priority class to manage setup priority
          - SecurityContext to manipulate kernel parameters
          ### Documentation

          [Documentation](https://docs.opstreelabs.in/redis-operator/)

          ### Getting Help

          This project is managed by OpsTree Solutions. If you have any queries or suggestions, mail us at opensource@opstree.com.

          ### Contributing

          You can contribute to this project by:-
          - Raising Bugs and Feature Requests
          - Fixing issue by opening a Pull Request
          - Improving Documentation

          ### License

          Logging Operator is licensed under [Apache License, Version 2.0](https://github.com/OT-CONTAINER-KIT/redis-operator/blob/master/LICENSE)


        displayName: Redis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Database
        - Redis
        - Opstree
        - CRD
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://docs.opstreelabs.in/redis-operator/
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep Rawat
        maturity: beta
        minKubeVersion: 1.11.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/opstree/redis-operator:v0.4.0
        - quay.io/openshift-community-operators/redis-operator@sha256:21f4648e0e71b33ef24b4921ab34b9e2b5e90eac25ade735d51331ac4f7c4cf3
        version: 0.4.0
      entries:
      - name: redis-operator.v0.4.0
        version: 0.4.0
      - name: redis-operator.v0.3.0
        version: 0.3.0
      name: preview
    - currentCSV: redis-operator.v0.15.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"RedisCluster","metadata":{"name":"redis-cluster"},"spec":{"clusterSize":3,"clusterVersion":"v7","securityContext":{"runAsUser":1000,"fsGroup":1000},"persistenceEnabled":true,"kubernetesConfig":{"image":"quay.io/opstree/redis:v7.0.5","imagePullPolicy":"IfNotPresent"},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:v1.44.0","imagePullPolicy":"IfNotPresent"},"storage":{"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}}}},{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"Redis","metadata":{"name":"redis-standalone"},"spec":{"kubernetesConfig":{"image":"quay.io/opstree/redis:v7.0.5","imagePullPolicy":"IfNotPresent"},"storage":{"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:v1.44.0","imagePullPolicy":"IfNotPresent"},"securityContext":{"runAsUser":1000,"fsGroup":1000}}},{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"RedisSentinel","metadata":{"name":"redis-sentinel"},"spec":{"clusterSize":3,"podSecurityContext":{"runAsUser":1000,"fsGroup":1000},"redisSentinelConfig":{"redisReplicationName":"redis-replication"},"kubernetesConfig":{"image":"quay.io/opstree/redis-sentinel:v7.0.7","imagePullPolicy":"IfNotPresent","resources":{"requests":{"cpu":"101m","memory":"128Mi"},"limits":{"cpu":"101m","memory":"128Mi"}}}}},{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"RedisReplication","metadata":{"name":"redis-replication"},"spec":{"clusterSize":3,"kubernetesConfig":{"image":"quay.io/opstree/redis:v7.0.5","imagePullPolicy":"IfNotPresent"},"storage":{"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:v1.44.0","imagePullPolicy":"Always"},"podSecurityContext":{"runAsUser":1000,"fsGroup":1000}}}]'
          capabilities: Seamless Upgrades
          categories: Database, Storage
          certified: "false"
          containerImage: quay.io/opstree/redis-operator:v0.15.1
          createdAt: 24-09-2023
          description: A Golang based redis operator that will make/oversee Redis
            standalone/cluster mode setup on top of the Kubernetes.
          repository: https://github.com/ot-container-kit/redis-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Redis Cluster
            displayName: RedisCluster
            kind: RedisCluster
            name: redisclusters.redis.redis.opstreelabs.in
            version: v1beta1
          - description: Redis Replication
            displayName: RedisReplication
            kind: RedisReplication
            name: redisreplications.redis.redis.opstreelabs.in
            version: v1beta1
          - description: Redis Sentinel
            displayName: RedisSentinel
            kind: RedisSentinel
            name: redissentinels.redis.redis.opstreelabs.in
            version: v1beta1
          - description: Redis
            displayName: Redis
            kind: Redis
            name: redis.redis.redis.opstreelabs.in
            version: v1beta1
        description: "A Golang based redis operator that will make/oversee Redis\nstandalone/cluster
          mode setup on top of the Kubernetes. It can create a\nredis cluster setup
          with best practices on Cloud as well as the Bare metal\nenvironment. Also,
          it provides an in-built monitoring capability using\nredis-exporter.\n\nOrganizations
          that are using Redis Operator to manage their redis workload \ncan be found
          here. If your organization is also using Redis Operator, please \nfree to
          add by creating a PR https://github.com/OT-CONTAINER-KIT/redis-operator/pulls.\n\nThis
          operator only supports versions of redis =>6.\n\n### Supported Features\n\nHere
          the features which are supported by this operator:-\n- Redis cluster and
          standalone mode setup\n- Redis cluster failover and recovery\n- Redis leader
          and follower setup with Sentinel for High Availability\n- Inbuilt monitoring
          with redis exporter\n- Password and password-less setup of redis\n- TLS
          support for additional security layer\n- Ipv4 and Ipv6 support for redis
          setup\n- External configuration support for leader and follower\n- Detailed
          monitoring grafana dashboard\n\n### Documentation\n\n[Documentation](https://ot-redis-operator.netlify.app/)\n\n###
          Getting Help\nThis project is managed by OpsTree Solutions. If you have
          any queries or\nsuggestions, mail us at opensource@opstree.com.\n\n### Contributing\n\nYou
          can contribute to this project by:-\n- Raising Bugs and Feature Requests\n-
          Fixing issue by opening a Pull Request\n- Improving Documentation\n\n###
          License\n\nLogging Operator is licensed under [Apache License, Version\n2.0](https://github.com/OT-CONTAINER-KIT/redis-operator/blob/master/LICENSE)\n"
        displayName: Redis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Database
        - Redis
        - Opstree
        - CRD
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://ot-redis-operator.netlify.app/
        - name: Buildpiper
          url: https://buildpiper.io
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep Rawat
        maturity: beta
        minKubeVersion: 1.20.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/openshift-community-operators/redis-operator@sha256:2ed6bfdf37e36c63cde3633443553dee410201200ad351e6d91a5651f8e20ecc
        - quay.io/opstree/redis-operator:v0.15.1
        version: 0.15.1
      entries:
      - name: redis-operator.v0.15.1
        version: 0.15.1
      - name: redis-operator.v0.15.0
        version: 0.15.0
      - name: redis-operator.v0.14.0
        version: 0.14.0
      - name: redis-operator.v0.13.0
        version: 0.13.0
      - name: redis-operator.v0.8.0
        version: 0.8.0
      - name: redis-operator.v0.6.0
        version: 0.6.0
      - name: redis-operator.v0.5.0
        version: 0.5.0
      - name: redis-operator.v0.4.0
        version: 0.4.0
      - name: redis-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: redis-operator
    provider:
      name: Opstree Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: node-maintenance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-maintenance-operator.v5.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodemaintenance.medik8s.io/v1beta1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "nodeName": "node02",
                  "reason": "Test node maintenance"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: ""
          createdAt: "2025-11-03 11:08:50"
          description: Node Maintenance Operator for cordoning and draining nodes.
          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: "true"
          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.skipRange: '>=5.4.0 <5.5.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-maintenance-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.nodemaintenance.medik8s.io
            version: v1beta1
        description: |
          Node Maintenance Operator (NMO)

          This operator will keep nodes cordoned and drained while a matching NodeMaintenance (nm) custom resource exists.
          This is useful when investigating problems with a machine, or performing an operation on the underlying machine that might result in node failure.
        displayName: Node Maintenance Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - Node-maintenance
        - nmo
        links:
        - name: Node Maintenance Operator
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance/node-maintenance-operator
        - name: Source Code
          url: https://github.com/medik8s/node-maintenance-operator
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: beta
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/workload-availability/node-maintenance-operator-bundle@sha256:6cefc4f419229dbdd5677dd2e672201941117ee52cff715754db2dfd5607dd54
        - registry.redhat.io/workload-availability/node-maintenance-rhel9-operator@sha256:fb1ba771e3a1bbcc635ea0209bc7365b23744744a39e2134266b4e5c3a23573b
        version: 5.5.0
      entries:
      - name: node-maintenance-operator.v5.5.0
        version: 5.5.0
      - name: node-maintenance-operator.v5.4.1
        version: 5.4.1
      - name: node-maintenance-operator.v5.4.0
        version: 5.4.0
      name: stable
    defaultChannel: stable
    packageName: node-maintenance-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: serverless-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: serverless-operator.v1.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>1.36.1 <1.37.0'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel9@sha256:591bc064b99356334b7b53c56e2b14538dd8747577127b37fcffadbbd5df4498
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel9@sha256:052fe86c647d1ebedba9dbe1054c3d94fd7b02bb9670837e434549c5a7544e37
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel9@sha256:abe431c9d7390e6e3032c3ac74532b8162564729be7e5a6bca70c3d2374a3437
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:f64b1bf7dca0906dfa673ae299a2d965527c1c7a714020d046dad277d329f965
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel9@sha256:6886795e240a9d602a3f68c910f543b5f4c7874ede3bc3e229182d77d509e294
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel9@sha256:d9a299304e810eeef13adc7bdac4cad7a6fe80a9e18fa3ce93a2796f0586323b
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel9@sha256:8c4cd89255e0424249cbadc7f77ad0cbee43d7b9fe3cfb67b4ef63ab3fa827f6
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel9@sha256:4a7848b64e1bacadf5205de9a0fd64437c8b7dcf86959dc1095e12d873a4610a
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel9@sha256:615627148f347917a6214b3e036e201d7d23a119445d8b19dfefdde9647546d6
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel9@sha256:43856ee2f87c7ce642b998c48405785a5f940cda17f9f1afbbe626f7f860394c
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel9-operator@sha256:23e10eb061828568dc06cf4d4b3485e8fbd5fe8b711b2424ea954b7e1dd2534f
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel9@sha256:50293c7fe9b2bc102e9eb9a57fa97bf6d6ee7c3334866217aa6debf3fb77e7ec
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel9@sha256:dffaac938538b6a28306e8d3a444ff6c794d50501dfcfb742c7e99558c71296a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel9@sha256:04d23df5bec13af304cf718e66f65d198a5d1d29e022db536b96c9a7f7817a34
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        version: 1.37.0
      entries:
      - name: serverless-operator.v1.37.0
        version: 1.37.0
      - name: serverless-operator.v1.36.1
        version: 1.36.1
      - name: serverless-operator.v1.36.0
        version: 1.36.0
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable
    - currentCSV: serverless-operator.v1.29.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2023-07-28T05:42:31Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          olm.skipRange: '>=1.29.0 <1.29.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of a particular version of Knative
              Serving
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Eventing
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Kafka components
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:f37f494956adf0892ffca34d2a4c9b839ce28dc9f2779ca32e8801fb4f0e9105
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:216f58dc8c8166c0c69fc0312b667daad14cf39b7aeb7bc0fe1e313376f1a5fd
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:fd86ea2a34de43014dea3ba2b8d705a3d94347d3a24a370a8bfd032ed239dc56
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:b780634fffe2257eb845f8c1d25498d9c654d0327c1f8841b40d90c176a2bfe0
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:03a3d6f0314acf4da4f3d3d85f1e273a3ef25828d28f5b22f394441d55a645f3
        - registry.redhat.io/ocp-tools-4-tech-preview/source-to-image-rhel8@sha256:98d8cb3a255641ca6a1bce854e5e2460c20de9fb9b28e3cc67eb459f122873dd
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:04866e16881f64ff2b5edd379eab0731c9d66a47c25ebfe79c8d8ad33d8116e6
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:61fb98802490323bb03ff4a7060334d8fbda9e9f95cd6366b29b1b6494e4ef8b
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:4408d1fcf34c0ffe9327d4c9c0bc772afa969d831bc5de1097164d10b4e8d900
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:16b39335e97bcc7c970a8ba385c61d8333e9912faaee813ccf8520d434b7bb7a
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:3d7801f7ffe6420595779673a170235921a9090333f8ca51d5b7f664e19c82b2
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:aea5f200a845e1d4dc718d76465fdbb1eeac2b20ecae224d5d20a98214ad0357
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ad399867cbb712111db6affaf5c9e3573699ed0eb0def8ce6057de02054ced4f
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:8273842d8e1714fa03c7e0809924b1ffc5ef282f79b9606bd8ac88c03e7a16bd
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:3b7449287adf98f0cf0a1dc74e03b69218be3bcf5538327bc34ef776cc1c69c4
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a10e76aa15707e708f82c8d9e8b5179bf67780d99f3c3e2e99b84ae2a0aa4ecb
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:10788ca67809e5a2d76d6d72df7dd64ea4407773999707a7681e0cf1b5c4695f
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:a59ba5aeb8e66db3d8ba9074b8e553603c59e6b0e35b57b82c4ce3de589b94cc
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:7dd11d385b3d5a178566d901650ecd45e4af395faec2141d57b98af8fc1e5151
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:594c3ac24bf59802e2d3fa127e4051277bc07b6444f934f535fddeb668ccc144
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:de0634d14962bdb8701a8c29e80b7b70684824462bc5203e5fa7f139839cb73b
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:3aab995872336e6ccb590ef6488c097cff38a91348055031145427a00aa6b732
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:c4cff5ad5b0ac79e71a16b88640a312ab320817041317f50caf575f7e12a864e
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:a3c5d5fd8014c432830be912aedebbc58f9c60a8cabd87ae6c42c7b8d27db8f9
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:e5db11a0adb889f907cad797dad9cf2de09c433e5522fa333193cb35575802d8
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:56e48afb1dcbf4e266ace944105f3c45042550d8d4a0528c982225a793d26d56
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:b520305189c7567b2f8ac867b20468259fb22cd3edc5b4576af2bfcdb0c11855
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:31d45f10a8519addec9aac115c5edc8a2e14f9621c875d95f123d1291776ef4b
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:fe916630003194dbcd3894dd880cad8b15a041a5e534cd8f76fde6296db00797
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:a4943c0563c45ceccfda0a01e26be3a01c1437c89d927714c577bf6060495958
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:397eb425f383c1273c7976bea69a603530676a00a61f461ceb5f48d67901c4cd
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:ab90ec9b3cd9203fdcdd7c43abf95f48c9d7479a9c7af479eb1e4b6599ba9642
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c2cb80bce34a74afa76151d2b44dc25ece73fb274cdfc6fdf243b1b0cb7d989f
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:6342358e6aed2339333ebf37fc223a41a0a3e199a0e4a840f3f66e5accf8f233
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:0229a0a4f026f04f8fa0a1cd8e7afea10117fe3f12e21986ec6089769c8afcaf
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c12c471902b8e2596588d9e553ad59b501d979dd04f301d45f7d45e794737a8c
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:557e73127326be051aa6257e7daeb9721e2af04d2f06cc26cfc7a1073666b989
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:bd134e64c156dc5c81d14522c9c9efcc1f56b2e972ac8ecb1bb1b130c76adc60
        version: 1.29.1
      entries:
      - name: serverless-operator.v1.29.1
        version: 1.29.1
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.29
    - currentCSV: serverless-operator.v1.30.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2023-10-30T14:03:25Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          olm.skipRange: '>=1.30.0 <1.30.2'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of a particular version of Knative
              Serving
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Eventing
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Kafka components
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c933641efc6bf919b1945be5a01dfb7774ae865975b1bb1f44653b3e4ca9f1f
        - registry.redhat.io/ocp-tools-4-tech-preview/source-to-image-rhel8@sha256:98d8cb3a255641ca6a1bce854e5e2460c20de9fb9b28e3cc67eb459f122873dd
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:124087e6402caa375b24b976c3b9fd7d53890e20ac3b0b57ba3ac646e352c7ce
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:e8c756b659f6187790bc1a5115e0f71791bff96630859a905bc5b75d14596e0e
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3fb6e7626d2b0c92c2a2fef35e9b8171382b4bdf54393f2ab1281ae7ab441761
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:a9c95fc208cc03625cf49bcebdaac73da823d1fa3bfae4239d7db20d3a0b8723
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:ce4b36c90955a356a5774410356aafdac2b60795526a3488b0b76ac2ec1a018c
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:e97eb2bb7eb529cbfe67c14e823ffa1269d614e2d35723896e89efa12a499c6a
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:1455606c8edf611d996a48e29ead53e0bb4078f55384b7689058bb25fc59fb2c
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c9353a022e6f883b7c0b2d87b1bc4653172feb13806ebf0aa075d6f9f43c264e
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:e9505aba7c44cffc3f261a5dc7617a0e54ed98e78f73ea3c9c7a508560b792ed
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:9a28cb1d4c4f4dd7d494829eeeb7122db2174a27747f915244672c95dc8f9d12
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:2d3e314a6584fc6974517c1a992fb59f5133f54c2f6cfaa42f579c0d332e0300
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:6057a2d18406e00b0b7b1731870f707844e39193d4cce6de50137b77f17d220b
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:3c8bf480dbb05e09e8d07cab12e4736643f61bf9b5d98efa6bc0557eb31887bc
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:06e9e073f092dce67d4227e282fd8eea6dc9f38b90a8d444cf448d80d027b616
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:12bc62246142a605f4efed0f6bb8843aa2df7699cc1c5ab53debb94b0682e9d1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:53d3620bb0490d83aaf6a356bb7d3b9e7147222d1a2017f8317f05fa90cd3de9
        - registry.redhat.io/ubi8/python-39@sha256:0ff58549041d32b685cc850aaa85da32d1ef73f99cd4b6e0f6882dad5f0399bf
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d03f2bf8f5e7cba47102ba26ea0149ae6719076c645d5e451058392d6044b738
        - registry.redhat.io/openshift-serverless-1-tech-preview/eventing-istio-controller-rhel8@sha256:b6ef281fca2b80d379b1e28fe3f23119df8ff765fb2cca291d514053fb512da6
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ef116868c9c60e5ee246060688da49832571ff6a7901cfe143a42d048743736e
        - registry.redhat.io/ubi8/nodejs-16@sha256:8abeddc6ccfffbe313f87e5e069e18cb7047f2c7880ad63cf15bcd0a79ba71ff
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:01c8fee92889a84a19136b0843e4fed5db31c1f2a6d997669f103373fd995e36
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:a0c5a91348ec71697747113990652feb024143fbbd0cdd67e8ae672730383a79
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:3508434d5ab6b38c8a7466256f1158ebcd75e8b751afcc5255da8c21566804f0
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:cd1abeb2067afa44a0f1eca301cce37307582d56c1147820ff86b9b64a40588b
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:51ac9aced282f62c8fb2d3696da3696b8496d8f877e9846fe3a4a743ccd63bea
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:66149df8549380673c24e1487d0c2c8eb638b7e502455671ca64ed6f32ff82c3
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:69ea22c646c09208ca68345d4b3508453d8c49f7f7fd9a4ff4c4cb78be7bff43
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:a5154f9d13a1c373b8ba47e2bcfb9d4474fd03e08db4134c92aa4f049536f1a8
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:21a638b481639c3c58e8b026d875917c30a5874b08fa4ceac40d447076b2bfa4
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:96d6f52711ba433ab2f273be8080840a88e626e989027480424d19c2fe1e9454
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:92a39ca90984cebb1938447a31c9170b52994ae98f83caa860acdb2c3ebb75c7
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:32445e4a73bc7c1e8007775adeb147175d934b17e7d3d4dcf422104dbe80a52b
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:2264d2cd4ee2a720667d625ff42b6f8be4f2cd65b57a91eb6044da086a110740
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:1f7e65009168383cdcb6b2caa22fe4db49e03c71574973a8086f6c332dc5e26e
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:96c135ced2e3bff434addb012368d96d0778ef1d294ba507ae7e624811e20d46
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:85a369d5696771d0932b61760336e52ae3f7c66f9a3def5312aefcac03ba516e
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:16939b802f4c16a3d9d941917d0363325f40cdef28f6e1a982bc95401117674c
        - registry.redhat.io/ubi8/openjdk-17@sha256:af305e087061cbaa4107ce0b304a1ef987f6b54bae3f75bfd529cfd084cba9b5
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:4800c85e8de031bf77f6fae0e4c8e6c1a9912ccdfb77799cc2ea574c37d870ac
        version: 1.30.2
      entries:
      - name: serverless-operator.v1.30.2
        version: 1.30.2
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.30
    - currentCSV: serverless-operator.v1.31.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-02-01T19:15:42Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          olm.skipRange: '>=1.31.0 <1.31.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c078071cd51c7fd5584039b54a2004331c05a897ee8b0689bfcb9204a8ebae80
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:3be4fc173b489d0beb768739f60274e07d95ffee86d70a8423e1f59678c805ea
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:63e08279d2852d494d4f8836c54e2ce942a342f452a23ef437df9640bb2f5bc9
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:eacdad8db61b23634c3f89bffa3f1c30ac5c7bbb5e938c6208003ff00f9595f1
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:d8bdd96c6a9b31f48c961ca438c254511db785fd34bd10b98084b702baf0ebab
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:486bf60d17a5d265ebd65d590a6ee1a7e13bf3953ea797b2f6c2b5910789858f
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:dbd9c0cac86f79b8d91ab65ae7543854144781d4cb17ef16183931ec9bc234a7
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:8353ccb4f0d70597d61e4fd1f799d4bb74e5bc038f6b9916059e712aa70b97c1
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:bf693eaa845373e1a06041626a9314ec00519a6fd2437b12f7f4f3f104864039
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:af5c30fc9f631d9ed110641b815315d8b4aef539f687277a3821d9939ca5dd46
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:99f5dcb92a33c047f0b68236a3a42ffaec78037dd0a5eb79d1144d62d6bfcf43
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:887480662b1bfe09626fbca8ec7c5da879d097c46dca11764ea98474ec78ab5d
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:3181ad775ead55f317f96466c2719b2b73c5b35d31933733da21273955d160c4
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:9221a833ecc66fe2354aee7aaec2a2470b21e2d89cb6ed287ece32edab2a2edb
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:d2a34100f6309c3cbac7c9ccd452b7bdab2a533afc99463bfbf91e3ba2706d54
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3b01ebdb0704dc6a1a993ac076819489495ab3fe32e3c14609e42d1358856be2
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:ef7d28580e75d746449a90cc0e5343ef3f4ddd75bd9fb866d97836bfbc3b314d
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:e49220eaf3143a8958f0cb1f22115b2e834fb7177755433bdc592b753a54a8ec
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:3dab790fa845ed7eda088e5abdc87799da1354884a53ff1ff728739b8e278418
        - registry.redhat.io/ubi8/nodejs-16@sha256:f90b28179d1d5de68d42ef1a9166d70a9dfea85a1c6a4bf12dce2c59eeb2fbb1
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:0a2989f688b966277652957b312df736ada43fff78fd89b17f60b2137e38f115
        - registry.redhat.io/ubi8/python-39@sha256:4f35cbcc6f4e108c69f7d2b70cce5afb138741b0c961506376d524e001b922f4
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:565becc77dbe3bf03d89b1399d6e1853253276a71e80b6b14069285d03cb14b2
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:677be039353b2cee51d5faa5d5a2abd6a7bd46992ffe9521eb033eea9925c785
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:b2480154951109a159acfb88c5472a312a515d6a6b060d832b3f7bfc16f90ac5
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:3a4e7412322755b4c278540c965a403f9e178f138bd4ad7929c1c24a8036dd14
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:22ffe08d6a0d5461158613f2b2a2ac6936025357e282a09197a750c42b5e6922
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:a82288782b61ea46d068cc09ee10608d3201c136abfc767e4d37734775101390
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:9e120ecdbea54eecbc5e0412c1774f8a2ee70d7fca682ecd0757b8627f70680b
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:7941b421b3e18bda8c565305241621fcdf1212cbbe0dc02f38f4ab0565d2bfcb
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b37dd2cf4b459fecb6d681cac36918e486c3bd22501df50b90e20b15fe164d56
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1-tech-preview/eventing-istio-controller-rhel8@sha256:5b38e5c71e422161e40f9c37dd2f46212cb80e8e37b00247767276b957080397
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:cda04e3b7c2c1f37164733ad162ea0c4e52f14fdc8eb8bdef8507f0ed5454640
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:1ee675125f7141e91f4ee57ebce082967834bbdabe1a870c221f31aeb8750be4
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:433821e6c7f43da5ca2e38c0550722feb179a0bab021decd9a97ad020cb78b76
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:df1aee67a161fa19d7f49ba56d53e0682cc1996436e985a12a2068fa419b54ea
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:1fcecc11b55007b9c6969a24940a391968378e4102eebf7ceabbe7efda138575
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:2572d98363cca2dd94984d6cefa573c5054fc206ee70048f901ad4b846d8dd52
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:80361e052d366ffffe9a99893cd83965bd69a9ff81d8c9262976de145bbc6184
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:de62762efa0df95ed23df56f5520490d8a231e47ce13c433c512254ceff81844
        version: 1.31.1
      entries:
      - name: serverless-operator.v1.31.1
        version: 1.31.1
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.31
    - currentCSV: serverless-operator.v1.32.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-08-01T10:56:58Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.32.0 <1.32.2'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:16c026f09b377c44253cdb902b9a5fa0ae766fd0185cca1863798a212e0daee1
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:2f0f84767f7d76dbbf4387ca2e272766267a2c46b5bc29f5d01f05dfa39cb944
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:14ca32e999767776c3e585ff5eb1aa568f7d76fd3e5ae24cae05ce7564678080
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:e1e2273fdf6384d95e1128e54c0794d7d620291a272bfb1f91e0c2723be7f1b7
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:2a30ae808d5c32d812406ff4ac9b472e82b6bb0555e62eee4c2c6a972f8750c2
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:22b4d47725ed8cdd663ee26a03f31198fff9e71dc703532e70c42bdfb4840811
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:828d31bf8a441091b8aed03da213a6b4ffae260070eff58c3319156f9bf04f5a
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:e7e6cbb46720eeca3f0f4b9829dfeeb3db373a83c89cd808b667ded4d5e139a4
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1a1de677297525c0c5d317fe8a7a42684fe3f1b422a7d6bea1f70f0924653b08
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:ab09a1710aa2331e24df9e7283f3909fdb104c1b314dea88e919d0a396f334d3
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:3be20d63d7e82f35ac88274532d6ab7839f9a7306ca272e7d532ac03215faea9
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:1befc9969edd2062b3df69f45aee9771b33a2659c3a14db0aaaf5c3df985af58
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:25cbdf78b67e7f5a360313ccfbe3b6e2c98873b4e9ddee46c115a623e77c7abb
        - registry.redhat.io/ubi8/openjdk-21@sha256:bb95ea866269ac8652f666ee1587d71f4f43da33493c2be7f6a9548bcfd2407c
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:a5a7b2be50f211d4d9d555b2a2e2302096c139ff5011d984cc386f1530007f16
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:0551f1657dc158bd41eb2338dd6514d55c39fc77300cdf1744d8f5ab14e9ed1b
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:7c8cefd5823ad953f112b905c651f12a97491aafc008b2ba0111f0c9e83e50ae
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:9d36cde68bd822016e967148eebd2ef3e7ffab9dcdd37d17f33017e9b703d9b2
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:0729de0f3f03ed220216c6cb718fc34beece0ceacd926b5e2480bdfcf44df5cd
        - registry.redhat.io/ubi8/nodejs-16@sha256:69439fe83fa957089cb6fd3c1042ab71d719f81dd457a5d1fbc56c1e3ea600da
        - registry.redhat.io/ubi8/openjdk-17@sha256:a166bd2fedb99cb62ebf4695ab46e19c7e451f887940cdf0b8245c81e403aea2
        - registry.redhat.io/rhel8/buildah@sha256:55f5c7d88c77e1ab5a2ab8e877172b2b66cb196e21f10dc45148470d0ee8bbae
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:da5f813dea324ffe9679524ea7f3801536fa48f7dbbd8da56a8492b916b15fc3
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:8033b7c1e903ba313134645c626eb3bf7ab1a0d68dc2575bc8e26884ad4f805f
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:4933b76d95d411d597d4dc460fc46c92875d28e107cda661946206a9d934b8b5
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:5930caa25ea875d29dff0ec5e235eaa13cb6dc98980d8045335eba1a09ae761d
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:990962ad245a6d62cd11551bd4e1f8b14dc08abbebe47beddb2f4874f78d4f47
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:46b8dc1c8ea6c40401d4d1a9868ab3edbe8b9e92364a43add6722489e2eefa04
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:04e5b3882223d45a5f5383ce6481efb7b2cbedea57ebd894caafb1454ad8c09d
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:e70dd3a9e067075eb56e5f2772642545e308348cd49b89357c02de3979b1a5be
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:ab9a1b952e9603b4ecc5f197715a1d871abc25ebb0c5e6470d4f0b365ae94276
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:0507ea8745267fdb53329a5274d59d23c387225d2594af51dd2603b4ad99db0f
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:e55c70591c0498b6b85f0d68e304e88b830ea0b35219ba8881143555757be4b7
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:b0db9f0fc85fcdcd5da980633a3a44be2bbabae068f89d0965263de38789e812
        - registry.redhat.io/ubi8/python-39@sha256:8c96e8648cc6651d0cefbd20496a89f208621601f9664554d3fdeef8ced25453
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:42f31eb8f12dd36541c8c0b6572d942c62e2064d5418428482d676d117a6c426
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:b008da825ee2429f04cf39258389740c68056f82cf4bde0cbd3db850b6256885
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:70c26c7ac48d1eaaf1f95ca5c5b8ba8ee6b047a3c9c4a2c2db9c49a506bb2205
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:4c9faea6fd162db3340aee8c11af11a08c9d79bbed104967c25df26c4933c8ae
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3ffcf746df914f0949477b46f90cb2992bb63f8198d73ffd54208e7a777a9cb1
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:9b6524f9c0e7f78e6ffb372a8587eaf5f4f1281eaf64f93dd00b63be84a4c21e
        version: 1.32.2
      entries:
      - name: serverless-operator.v1.32.2
        version: 1.32.2
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.32
    - currentCSV: serverless-operator.v1.33.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-11-20T08:38:34Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.33.0 <1.33.3'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:e1cb1c24333605e52364456f9bd8d86d787d1bae17ef75dd04be61257fdb2256
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:9b94875e0e5d7abdb3b9ba7b04e217a2a9b7b4410d38d1608c86d1c21f929cc1
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:56c6ac59a68976741d2ba676a53e59fc494d04dc44b513d72fdf8a9ad894a54d
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:b871bd08b782c9168e9a54340efffc0b0effadde8079915b848e4eff72bb3e95
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:eb95deb2105f14c6a9f3bb2cdd7306b446109a9b142a7bfc726b6429f270d9e5
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:af66cc7dbed88907d96a390fe5c8807a2a60bbe3276b8cd13b4b061cbaf7b162
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:a9c84ac7e7c3fb1e5dedaf949d54a3aee8a62397d2bd6022094671de00b651da
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:05e3dd6255294b691783523f7722cfaf13aca1a1e1dab344a25eeea72aaf9f9e
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:d8ae7bc888f11121fbbba65074389b879bc22453bbabc551d79d0cee68fc33a3
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:eab4aa93b9d175045b1f01bff09681107d839285e0d633cd5146d2a2efab373c
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:dd1f7c850f7cf2a4d70403deedd8a57ecc6e0ee5455d68fdfc49ff175fe42dde
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:ea9e4de6228d5c3ed494c2ce5317ec290543ad40bcf7c43c2a3d6565e5d94e5d
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:28c9d05a3ba73b76f293e8f4902b574deb44f77a2bae8cf92473b8a8b10cee92
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:f938cc534fc4b24bb9449f1e1e1e904dc588e6646c98474de4b8c81d083b4d96
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c7f29554d04eb9348932953344f2ea0806d14e7704355619381bf395d993f58
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:9b850afa750a67120f68a49f4834ba7f105563df22cbcbc563317fe1545640d1
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ace72435e3e63ab21dff2345f958cf6bd171537ef2846c5d5d91cf821877140d
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b12272e1a9cb4f4bb62c4badc62b0bab110abb99484612dc781c46bfeac13cc0
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:42d16e4d9f14a427e7a5b7e3a4ea07c258e0f2c74984baeee3b4926a8c5e2640
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:993597ff83a4d62a23f642fadc92f182944b953770716b73b7d19492b5a462c3
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:b2be693c71cfc4ce934d5b01efb863dc6e391f93a6b15fe7eeb15914063a8294
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:09060de091d617bd4606f7a289b4528265ae0b7a04737f383e79efd5b0d3eb79
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:672022b6f2a080483d9d6f6f4a5f42e52e522a5797105f3465731809c6cf4947
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:359f8b9fbb4c3c2f79e8c70f3b50c994693b930f6f078c34c87112ebb93037e3
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:a8821b59d495e24598b27c6510b32ef19de2bb04ea1e568fc5afb9135d772036
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:28ae309e4cf7feabaf78ac6067e1173f9f5b33a71c06d6c27cf25e01a0b1ed64
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:2bd241898bd54dcb248ae86470430042dc545d45e7519ed470a1a9c8c63bdc37
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:62bf4bee0ea17ecc60366ecc71431adc79d6f0a5b9f59489913b474128c4adb0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:93b2f5211e79abc38bf92f0b8fb8adf046303efa2fe62c47a2fef9dfb5662f55
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:e1cb1c24333605e52364456f9bd8d86d787d1bae17ef75dd04be61257fdb2256
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:6dbfa2573a2c78e450d3c1c04c6e7cbc50d9272233e828fe9b42e575ecf386c0
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:510e98837a549f489b2d74939f3b9c7ed90a8260ba914910f681d5c0dec7655c
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:879fca768b46676f1df89de1cdc4ded8dac310209c146c2f381ed1deb19b06be
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:e9b38f1df225238836aa829f3a2016372859fb8709cdd2b30496498669a90be1
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ccbda564735555785815f27f8f25ad9c6c27dabe4e262586fc51609331692527
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:c3dee2598088bda36ef474f4748943a29169ed9589aeb0f77bc79a7f6bef9907
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:a0399a993155e755409355740b260d9b0019559a62be3b6253d8693a4fb59286
        version: 1.33.3
      entries:
      - name: serverless-operator.v1.33.3
        version: 1.33.3
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.33
    - currentCSV: serverless-operator.v1.34.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-11-20T08:53:53Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.34.0 <1.34.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:a4b3d75903de1929326041e9885213074473f07fda91b299548d45680c295c00
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.34/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.34/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.34/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:0f126893074cd0398654c4018df6e882b7610e148c82a41ac814f4bf3830bf9d
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:01ea7a06332d60ac16ae0a27adcaaede3f680a98a22ff995259a6c42ac0e358d
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:095629572a40469eb651c9f81d6c10ff46254eff8b9813cadce54d6f0075c2fb
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:946daeff59b41a6f8c4842f8c2668f97ff1b49e2a8afae5d64ba3baa916b1d95
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c0376504edae12e7af6b6cce02ac53b6b374f5058ebefcbdbd32628b551bb0c4
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:76480201188dd142206040af845bd55b44155af92e0c5ee9bcdb8660bea0cdb8
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ef7f34a025e40f93fbd51f3a4596998a6dc508db824f137ffa1fbaf90e88f4a8
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:144883b09d8a999fd4d2a109d074e44d7d8b959987512379aa71c71e4060ca28
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:86ffb8be1762782d643c147cefcfbc2b4723b0f97d017314a99bd2275d05a1cf
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:b9d85323e110d8eb6600223c38f9d4cbe89b50d59e03bf1e6b8808f7cef9a3a5
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:a5950f81cbc64d1edb64ae7f7f120c3435d36afcd14ffc34ae522af297d87e1e
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1252960c0c0a4dc7b39090cde0fd5742a19453b1a65a08b737bc41d044a0882a
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:e520d1b6b87f85dfffab5e53cfb70562ab7edf450061c07609da39e3b2498fdd
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:09dd94090eea9cac7a1935a6d671cb97fd9fd5714c715c9d2aed461e468ca54a
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:633ea30ea3b6d5152bbdb61acb4271e5905d50fbe3c731fb4c8d8640a57f1970
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:586fc8ed88f91298dbff31bc2fc4c63e0d6d9356e3358b2f853f49511c3ff9bf
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:b07010595201d7cfe0ec4f18e612d323eb38464c74eb187f275617a744d9df12
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:d40daf67b36387faa9f55e70e50d10d02accfd19470c0ac11b78bf969947fed1
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:30cb41f09067959cfe3792e070fca62820fcca4035683e5c43dd46d1cce97c01
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3d17f12cc9da578549254ba1b8934b5afc66e453b1d5d667bb90281e45b8795c
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:0f8d006d0e7468783739942a1c82c7aec376c9948f23841132c8ddece8ecba06
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:a9e8583c19ca3e01593f8c0e54731cb73df9b46b2ed47a2b1c711828c2295f82
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:d5ad3c9db7ce8e4fc950261f7c388476214a03d92e0043c7bbc4f0add2b1e69e
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:f94f0e8d21a6b6341b1db00513a1a2ed5cd84fcd898a376ecde942e940a518e7
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:84994eabeb7342a0771c7cb1bdd70e7ee3928dd45874eafa64cde5bb385fe964
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:2adb0124f04d6c4a552ade79dd1499c8ca997edb45855bf438ca8043b2709e19
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:45bc50a993d04b775a153e985a43d587d5455883fc4c6f31b772408297cf9040
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:6d042c614431aa9a9e77cf8ba0064423e903f7c418e367ecc23bc02a24a796c0
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:b801ed7b1cb32d4a1522a959e97f280f2eff6fc92e47fea2ea022f180d37831a
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:d8b94bbce98325fe8079c11c0b7a6c59bad8a7edd0532a7d27ef1632ff0de708
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:33d62d13e16f47db9951ac826671f39fdc048fe7c3fb019eeb4bf9bd0f814222
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:512c4d93dc13cc53d923a6990770a7527d6fb657278e2c5d8f0ece3cd5020155
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:4b6f161c14c68536ec2c7679d30681afa9a1fa2d512548f0f591791a10a8b894
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:75228e70fb1383bbdbcc64d0cf24bf5d977c09112e3f32316824188264c3a2bc
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:1c82d20ccf5eb5f8e7725839f1060f4efdfd1c1b4773a99bd905e690a6e36f38
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:a4b3d75903de1929326041e9885213074473f07fda91b299548d45680c295c00
        version: 1.34.1
      entries:
      - name: serverless-operator.v1.34.1
        version: 1.34.1
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.34
    - currentCSV: serverless-operator.v1.35.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          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.skipRange: '>=1.35.0 <1.35.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:f23d3ab058667c6fe9ee44dc249aa7e8449c1bb9581380ddbc66624511b286d2
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel8@sha256:80a155d2637f47e249fd69760b250c9b7a1eeb6781de9308b54162bb3e1bce71
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:732827652b7a7a49181e86d561831001c28b72b7e12d5e3c1d71b2e496003229
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel8@sha256:ab0342b325ee67cc2a7d321aa1eda9c6797dc91fe2b6f26e3cbab53fadf564c7
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:018459cbba2e3169bc4be6564cf3747c9cd0677445912abf237f8fe6d58e46ac
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:f23d3ab058667c6fe9ee44dc249aa7e8449c1bb9581380ddbc66624511b286d2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:8a4e5e0934197c32e0dfa1efc922d750940587fb61e0df49d476a2d035c53413
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:cb2ebe98481808e788ca70e7f0a9b3402818b622158f327b99a1e87c23226d2d
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:818dc7bd69b453ba5882b4ccb82841f2d48c7552368417bac20bef1df64f52ff
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel8@sha256:dfcd11686f161d44786a205d12f9d628d9e847d40ffdb628ec9aa4a0da0b86f0
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:91456907c61952017daf07e376b565472ef86d67a2925f60e189c639ceb68595
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:d68fae6fc07efa9da9af0532aadb49f897a15afcdf9a98dc7517ff5e17735454
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:da8d975527ba100313b92e87d6d2690fddae9988aa8d82d728221295955b7224
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel8@sha256:acb28d84cf03b8551efa32646864005dc3bc9bb341a696544892dfd0c87fbda6
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:56e7a0158a713c70765ead847732db4e5f8439aacf31e9a4a22672b583028064
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel8@sha256:86074674b7926ad9bfc95556e50820792fcbc5e11ab02879378625ffabdd1889
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:6722aecbbbefa80dfaf93143e033c562cea0982514e2eea27654dd4638e1d072
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:0751b9ea7ca197480c4cbca17654d0653d1c0c760ca3c818c2a1018dc952cdc8
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:477b1ac0db0abf1e16ae31bb22fdb73dd98f4dbd243fa0a7e6e94852b16a813c
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:6f4fa254d923f3260ab0f7d6a0b459554f83b1abfcb575a5ce2c0135fba32427
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:3130a5159adb9b4eaab75a0209d2ac639156d5e9f2346a8b2e6e0e22fad4b45f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:ffaad2214fa897e89e92e574eb5cd1c671edab7f6eab87cf2ffd4ebf162b3cf4
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel8@sha256:2980eca437e4c1cd22a2b6c2ccae9c4d6b55921b3d575fbd4b9241f1f0a8a3a4
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel8@sha256:d00a0059f6134b2519f9b1e034b81a943cae7ce391109703f24db21e56ee923d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel8@sha256:6b842b4eddfc71a2c8f6c1fcebb8f23a05f50c95be1ba2d20a1be660d3014c8e
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:86386b54cc10743023884193b7d6c7159b90052bc5e4a0608a6cdfd47865c966
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:020264063c50f2a4590f3d7524b271f0f77350a1f8fa3c35ca6e28f0162aa9a5
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:b2de6b658a1595084a202203c90704c3f9de018a7a904ca276112ad606e374f1
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:ab8f85bb18311b0bfee00561ef6b5d9faf810358c954ac2c6f39cf2a7739e07c
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:0e58edf5ee340fdfb282faeb6c9bee8cd6323e7f29a9b282dbb91c2622131a9c
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:2cbe84afebac23b5397d144b4d5660af33290df451141fa3625607b6033983e0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel8@sha256:e743dd93b7ae855825716403979db3f34cd300caad130e7d3011172b1aa4eaf7
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:b66bb9531f05cd46360f787955c849208496e3e45541cb50b23bfb6b68570aa8
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:9b176477be4c782ce60d81a72bacb566069a499579ce6df5a987a0841f05ad5c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:f56d21089566330ecbd9aa8acf14da332d3db7360aaf6da00c9a19df83f7334c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:e7aa54986c3d388c1bb00828c9ccb294ca0b6c26376c7593ed6bfddda0ef4e5d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:4ca1bfaf2d7e9477583cddfa40f0b2ce59c20ff9ab20022038774dc3cc49662b
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:b5db9a51bbb46640b23712c61e9c5a1c7bbdbcd9a53b0b92fa36b80dcaffffc0
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:d0650e4d7e72241e07a3796f20931adba231fbf5e401a45d794761f2c5afae48
        version: 1.35.1
      entries:
      - name: serverless-operator.v1.35.1
        version: 1.35.1
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.35
    - currentCSV: serverless-operator.v1.36.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.36.0 <1.36.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:36e589adaf5ff2856f5aada90b3a2be893d9ff89f92b1b2c42ee59523c9c9c8e
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:01d632b69b4a4112426afc4184c72eae6d8816974088e5980c9c808f0782b85c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel8@sha256:3d780ad1ab280b5092b90e277485d589da2a18e8b08090af7d95aecd17af545d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel8@sha256:51b5e18e8d4c1ca81d7c5ddfea6352a3887f757acfcc53bd2f8bd3b01337ed42
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel8@sha256:30b8045ef5f925a36c58941386f1899bec125d005a08aeeeba5edd49b0859149
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:36e589adaf5ff2856f5aada90b3a2be893d9ff89f92b1b2c42ee59523c9c9c8e
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:c39cb88afaddc295d93a3774b8a20d001b82392df540fb502ee02316d82460a9
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:6210a946f373b9c36c9b31293debe6fed090008b8234c0ba17d37fa81646172e
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:4344716eb2940c6a3fa9a278250f936602bb1549fece6037912837719c178b24
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel8@sha256:27e74287774cda208f667bc2a386debe6b6255e8991abfb37c959c8525f2af53
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:631eb3a8dd9d83ceafa7d8a4da4b1e2d4f2740e6017c766828dcc7575cf1322f
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:5352e4eb4e426a41521276decadf204b6d23b4762a298e4d3dc73969e3eddc68
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel8@sha256:4aeb68a22f63300e54391ec6b4cda8c4e665d904b5dcdd3c40155040525742a0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:52ba6b1252b6f3d41e2a0b3b880cb768010ab9dd925ac34596f6adaedcbbe07c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel8@sha256:d9b944e64391a996104afbe8a21f66316a948e9fb7b91734e861847285be59c7
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:ee6533b71cf280877c9d7489dfd821c9209c6802bed7fa3fdb4f8f00fbeacb09
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:a1834b620f875681388f0ae224dd0771773a8b61b1d8e5214a942f232854b87b
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:82e69a1890042f5636ac7bb645b1aaeaba0a4894851eccc1fa1c63296918e31a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel8@sha256:afa634e029bcf79a972f49372498d44b45bcfbdb6eb28ecaf4f0b0b2a0a1824b
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:4274004b6289fa9bea3fa6e56d64077a328a6b5e63a9f0e9c41f6d561f682bd7
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:187fb9d64b53c55a029ffce3c0f9e7c3304683fa8a0e832cfb7134e8a3d0c237
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ed89e221d7a0a1dd82f2fa75e9e70bff3dddcb8979594396590bd3a15673a152
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:3b04e9d8cd4b5e43a07ece838d10478723a6c6529350f010550b4a0d1d0950d1
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel8@sha256:3fe326ad9a00b112fc888ffd345c8d5042f0a22cf32ea575931192c39ce1fece
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:429d5d9568cca31fbe83c663276a300286af4cdbf3d35685afdbe5f6f2f8c6e0
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:0c2cdf917bbad1f5bca8a2a2ef12a96cfcd0c77c190cc35687eb57169b54ab6f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:bf82b37ab8fd29c7a7cd846008a16d14b4cfdc1c09df4f731d71be3957e90123
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:a6f565d73375e827d830dca85838f4c4cb7f08b0c078acb0c0d567b25f0d256a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel8@sha256:f2d112ba9fdfccea988589b99b463c8a7157475f7a3f03678e8999e65b678cc3
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel8@sha256:8fed5ef9a1f39a55077bb5026c8854d0ee7fc8d8ff5da277ce9c1bfc2ab2474b
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:dcfe5fbc57b9f8520adbff368c8bf29eb491c9c26d1a1737a1722cffea83eb1b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel8@sha256:259e5dab50d36cdbfc117a42325128c4e16f34c048ba64b36d4a89132ddb4c1a
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:596a7272d6de714d7dbc6e00e9e50a2872846c269547465252d953172ef0b009
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:77e4689b2ce7a713e905553e0e42b8e128045f40cb6c6d4ee082f126cbc46b00
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel8@sha256:f3d87a7fa5b5f2818effcac3304bd56eddcdb0db97a18ac0f35a06fc7e223e7d
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:e3ae1cc6012f19631c012a07b113fb015977d2ee4f9faab3207fbc2464c25aa7
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel8@sha256:3af4c48030263eb5769e5f36a6dd13fd390d8566efaab37532f39e1df1c95c67
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:074ebfc4494581611647ba90049655a470ca43743610a27be77db66a8633bac6
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:f4d86b196457cdeebdc380b6f1b707c10f8dee789c7779c90ee1332e511af8c4
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:c7c2e738e0d9da1d2d1993f68938e72c4709b1f28a54fa92224ef6a0e456b0aa
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel8@sha256:a47b6b5237a87ccd90e5a49a53d06485fd55c87eebf12d01c335b87fc3a8c494
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel8@sha256:6b7316cce3432d391adc6ac38c92ff0ee86dd7ae0101957cc65cd338cc69e352
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:ed60e889a677fb139f2eb4bd9ab4fda6ecc39fd050ca2b6cc1c19717e428535a
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:78fee4c596f2848487ca704da3fa1074e3c9c99b3f96f66833aeba63836d7b93
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel8@sha256:88323da16360981f27b8e4686fbbb64053e4e0e3c79c65d695edb317b334e1e0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel8@sha256:a903480159ebf1d8652eeaa702d9885fb76bb106c02d75cec5c82c31d77d6410
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:9b328fff0cc8545fb9bb1f24f11d78cfac3ee76dedc11fa4def4262d79a60e8c
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel8@sha256:d6f338e08fa937c8a4ccfec692424de4acded565f7ca3971ea507dffeb351503
        version: 1.36.1
      entries:
      - name: serverless-operator.v1.36.1
        version: 1.36.1
      - name: serverless-operator.v1.36.0
        version: 1.36.0
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.36
    - currentCSV: serverless-operator.v1.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>1.36.1 <1.37.0'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel9@sha256:591bc064b99356334b7b53c56e2b14538dd8747577127b37fcffadbbd5df4498
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel9@sha256:052fe86c647d1ebedba9dbe1054c3d94fd7b02bb9670837e434549c5a7544e37
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel9@sha256:d9a299304e810eeef13adc7bdac4cad7a6fe80a9e18fa3ce93a2796f0586323b
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel9@sha256:6886795e240a9d602a3f68c910f543b5f4c7874ede3bc3e229182d77d509e294
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel9@sha256:8c4cd89255e0424249cbadc7f77ad0cbee43d7b9fe3cfb67b4ef63ab3fa827f6
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel9@sha256:04d23df5bec13af304cf718e66f65d198a5d1d29e022db536b96c9a7f7817a34
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel9@sha256:abe431c9d7390e6e3032c3ac74532b8162564729be7e5a6bca70c3d2374a3437
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel9@sha256:dffaac938538b6a28306e8d3a444ff6c794d50501dfcfb742c7e99558c71296a
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel9@sha256:50293c7fe9b2bc102e9eb9a57fa97bf6d6ee7c3334866217aa6debf3fb77e7ec
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:f64b1bf7dca0906dfa673ae299a2d965527c1c7a714020d046dad277d329f965
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel9@sha256:43856ee2f87c7ce642b998c48405785a5f940cda17f9f1afbbe626f7f860394c
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel9@sha256:615627148f347917a6214b3e036e201d7d23a119445d8b19dfefdde9647546d6
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel9-operator@sha256:23e10eb061828568dc06cf4d4b3485e8fbd5fe8b711b2424ea954b7e1dd2534f
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel9@sha256:4a7848b64e1bacadf5205de9a0fd64437c8b7dcf86959dc1095e12d873a4610a
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        version: 1.37.0
      entries:
      - name: serverless-operator.v1.37.0
        version: 1.37.0
      - name: serverless-operator.v1.36.1
        version: 1.36.1
      - name: serverless-operator.v1.36.0
        version: 1.36.0
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.37
    defaultChannel: stable
    packageName: serverless-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NeuVector
      provider-url: ""
    name: neuvector-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: neuvector-operator.v1.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apm.neuvector.com/v1alpha1",
                "kind": "Neuvector",
                "metadata": {
                  "name": "neuvector"
                },
                "spec": {
                  "openshift": true,
                  "registry": "docker.io",
                  "tag": "5.4.8",
                  "oem": "",
                  "imagePullSecrets": "",
                  "psp": false,
                  "rbac": true,
                  "serviceAccount": "default",
                  "leastPrivilege": false,
                  "global": {
                    "cattle": {
                      "url": ""
                    },
                    "azure": {
                      "enabled": false,
                      "identity": {
                        "clientId": "DONOTMODIFY"
                      },
                      "marketplace": {
                        "planId": "DONOTMODIFY"
                      },
                      "extension": {
                        "resourceId": "DONOTMODIFY"
                      },
                      "serviceAccount": "csp",
                      "imagePullSecrets": "",
                      "images": {
                        "neuvector_csp_pod": {
                          "tag": "latest",
                          "image": "neuvector-billing-azure-by-suse-llc",
                          "registry": "registry.suse.de/suse/sle-15-sp5/update/pubclouds/images",
                          "imagePullPolicy": "IfNotPresent"
                        },
                        "controller": {
                          "tag": "5.2.4",
                          "image": "controller",
                          "registry": "docker.io/neuvector"
                        },
                        "manager": {
                          "tag": "5.2.4",
                          "image": "manager",
                          "registry": "docker.io/neuvector"
                        },
                        "enforcer": {
                          "tag": "5.2.4",
                          "image": "enforcer",
                          "registry": "docker.io/neuvector"
                        }
                      }
                    },
                    "aws": {
                      "enabled": false,
                      "accountNumber": "",
                      "roleName": "",
                      "serviceAccount": "csp",
                      "annotations": {},
                      "imagePullSecrets": "",
                      "image": {
                        "digest": "",
                        "repository": "neuvector/neuvector-csp-adapter",
                        "tag": "latest",
                        "imagePullPolicy": "IfNotPresent"
                      }
                    }
                  },
                  "bootstrapPassword": "",
                  "autoGenerateCert": true,
                  "defaultValidityPeriod": 365,
                  "internal": {
                    "certmanager": {
                      "enabled": false,
                      "secretname": "neuvector-internal"
                    },
                    "autoGenerateCert": true,
                    "autoRotateCert": true
                  },
                  "controller": {
                    "enabled": true,
                    "annotations": {},
                    "strategy": {
                      "type": "RollingUpdate",
                      "rollingUpdate": {
                        "maxSurge": 1,
                        "maxUnavailable": 0
                      }
                    },
                    "image": {
                      "repository": "neuvector/controller",
                      "imagePullPolicy": "IfNotPresent",
                      "hash": ""
                    },
                    "replicas": 3,
                    "disruptionbudget": 0,
                    "schedulerName": "",
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "searchRegistries": "",
                    "env": [],
                    "affinity": {
                      "podAntiAffinity": {
                        "preferredDuringSchedulingIgnoredDuringExecution": [
                          {
                            "weight": 100,
                            "podAffinityTerm": {
                              "labelSelector": {
                                "matchExpressions": [
                                  {
                                    "key": "app",
                                    "operator": "In",
                                    "values": [
                                      "neuvector-controller-pod"
                                    ]
                                  }
                                ]
                              },
                              "topologyKey": "kubernetes.io/hostname"
                            }
                          }
                        ]
                      }
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "nodeSelector": {},
                    "apisvc": {
                      "ctrlServerPort": 10443,
                      "type": "",
                      "annotations": {},
                      "nodePort": "",
                      "route": {
                        "enabled": false,
                        "termination": "passthrough",
                        "host": "",
                        "tls": ""
                      }
                    },
                    "ranchersso": {
                      "enabled": false
                    },
                    "pvc": {
                      "enabled": false,
                      "existingClaim": false,
                      "accessModes": [
                        "ReadWriteMany"
                      ],
                      "storageClass": "",
                      "capacity": ""
                    },
                    "azureFileShare": {
                      "enabled": false,
                      "secretName": "",
                      "shareName": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "federation": {
                      "mastersvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      },
                      "managedsvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      }
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {
                        "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                      },
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "configmap": {
                      "enabled": false,
                      "data": ""
                    },
                    "secret": {
                      "enabled": false,
                      "data": {
                        "userinitcfg.yaml": {
                          "users": [
                            {
                              "Fullname": "admin",
                              "Password": "",
                              "Role": "admin"
                            }
                          ]
                        }
                      }
                    },
                    "certupgrader": {
                      "env": [],
                      "schedule": "",
                      "imagePullPolicy": "IfNotPresent",
                      "timeout": 3600,
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "prime": {
                      "enabled": false,
                      "image": {
                        "repository": "neuvector/compliance-config",
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "1.0.9",
                        "hash": ""
                      }
                    }
                  },
                  "enforcer": {
                    "enabled": true,
                    "image": {
                      "repository": "neuvector/enforcer",
                      "imagePullPolicy": "IfNotPresent",
                      "hash": ""
                    },
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "env": [],
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/master"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/control-plane"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/etcd"
                      }
                    ],
                    "resources": {},
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "manager": {
                    "enabled": true,
                    "image": {
                      "repository": "neuvector/manager",
                      "imagePullPolicy": "IfNotPresent",
                      "hash": ""
                    },
                    "priorityClassName": "",
                    "env": {
                      "ssl": true,
                      "envs": []
                    },
                    "svc": {
                      "mgrServerPort": 8443,
                      "type": "ClusterIP",
                      "nodePort": "",
                      "loadBalancerIP": "",
                      "annotations": {}
                    },
                    "route": {
                      "enabled": true,
                      "termination": "passthrough",
                      "host": "",
                      "tls": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {},
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "topologySpreadConstraints": [],
                    "affinity": {},
                    "podLabels": {},
                    "podAnnotations": {},
                    "tolerations": [],
                    "nodeSelector": {},
                    "runAsUser": "",
                    "probes": {
                      "enabled": false,
                      "timeout": 1,
                      "periodSeconds": 10,
                      "startupFailureThreshold": 30
                    }
                  },
                  "cve": {
                    "adapter": {
                      "enabled": false,
                      "image": {
                        "repository": "neuvector/registry-adapter",
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "0.2.2",
                        "hash": ""
                      },
                      "priorityClassName": "",
                      "resources": {},
                      "affinity": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "env": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": "",
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt"
                      },
                      "harbor": {
                        "protocol": "https",
                        "secretName": ""
                      },
                      "svc": {
                        "type": "ClusterIP",
                        "loadBalancerIP": "",
                        "annotations": {}
                      },
                      "route": {
                        "enabled": true,
                        "termination": "passthrough",
                        "host": "",
                        "tls": ""
                      },
                      "ingress": {
                        "enabled": false,
                        "host": "",
                        "ingressClassName": "",
                        "path": "/",
                        "annotations": {
                          "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                        },
                        "tls": false,
                        "secretName": ""
                      },
                      "internal": {
                        "certificate": {
                          "secret": "",
                          "keyFile": "tls.key",
                          "pemFile": "tls.crt",
                          "caFile": "ca.crt"
                        }
                      }
                    },
                    "updater": {
                      "enabled": true,
                      "secure": false,
                      "cacert": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                      "image": {
                        "registry": "",
                        "repository": "neuvector/updater",
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "0.0.7",
                        "hash": ""
                      },
                      "schedule": "0 0 * * *",
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "scanner": {
                      "enabled": true,
                      "replicas": 3,
                      "dockerPath": "",
                      "strategy": {
                        "type": "RollingUpdate",
                        "rollingUpdate": {
                          "maxSurge": 1,
                          "maxUnavailable": 0
                        }
                      },
                      "image": {
                        "registry": "",
                        "repository": "neuvector/scanner",
                        "imagePullPolicy": "Always",
                        "tag": "6",
                        "hash": ""
                      },
                      "priorityClassName": "",
                      "resources": {},
                      "topologySpreadConstraints": [],
                      "affinity": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "env": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": "",
                      "internal": {
                        "certificate": {
                          "secret": "",
                          "keyFile": "tls.key",
                          "pemFile": "tls.crt",
                          "caFile": "ca.crt"
                        }
                      },
                      "volumes": "",
                      "volumeMounts": ""
                    }
                  },
                  "resources": {},
                  "runtimePath": "",
                  "docker": {
                    "enabled": false,
                    "path": "/var/run/docker.sock"
                  },
                  "k3s": {
                    "enabled": false,
                    "runtimePath": "/run/k3s/containerd/containerd.sock"
                  },
                  "bottlerocket": {
                    "enabled": false,
                    "runtimePath": "/run/dockershim.sock"
                  },
                  "containerd": {
                    "enabled": false,
                    "path": "/var/run/containerd/containerd.sock"
                  },
                  "crio": {
                    "enabled": true,
                    "path": "/var/run/crio/crio.sock"
                  },
                  "admissionwebhook": {
                    "type": "ClusterIP"
                  },
                  "crdwebhooksvc": {
                    "enabled": true
                  },
                  "crdwebhook": {
                    "enabled": true,
                    "type": "ClusterIP"
                  },
                  "lease": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Networking, Security
          certified: "false"
          containerImage: docker.io/neuvector/neuvector-operator@sha256:2b2ef4fbc567e7ae40c7bbc4f763f1806a8b1c872972c7bdbae9d8c58ba64ce4
          createdAt: "2019-11-18T02:09:59Z"
          description: NeuVector delivers the only cloud-native Kubernetes security
            platform with uncompromising end-to-end protection from DevOps vulnerability
            protection to automated run-time security, and featuring a true Layer
            7 container firewall.
          repository: https://github.com/neuvector/neuvector-operator
          support: support@neuvector.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Full LifeCycle Container Security Platform
            displayName: NeuVector
            kind: Neuvector
            name: neuvectors.apm.neuvector.com
            version: v1alpha1
        description: |+
          NeuVector delivers the only cloud-native Kubernetes security platform with uncompromising end-to-end protection from DevOps vulnerability protection to automated run-time security, and featuring a true Layer 7 container firewall.

          The NeuVector Operator runs  in the openshift container platform to deploy and manage the NeuVector Security cluster components. The NeuVector operator contains all necessary information to deploy NeuVector using helm charts. You simply need to install the NeuVector operator from the OpenShift embeded operator hub and create NeuVector instance. You can modify the NeuVector installation configuration by modifying yaml while creating the NeuVector instance such as imagePullSecrets, tag version, etc. Please refer to [github link](https://github.com/neuvector/neuvector-helm) for the values that can be modifed during installation. To upgrade to a newer version of NeuVector, just reapply the NeuVector instance with desired tag , which in turn pulls the specified NeuVector image tags and upgrades as per upgrade plan configured on the helm chart. NeuVector Operator version 1.5.7 deploys NeuVector app version 5.4.8.

          **Complete below steps to create namespace and Grant Service Account Access to the Privileged SCC before installation.**

          Create the NeuVector namespace

                   oc new-project  neuvector
          Login as system:admin account

                   oc login -u system:admin

          Privileged SCC is added to Service Account specified in the deploment yaml by Operator version 1.3.4 and above in new deployment. In case of upgrading NeuVector Operator from previous version to 1.3.4, please delete Privileged SCC before upgrading.

                   oc delete rolebinding -nneuvector system:openshift:scc:privileged

          The following info will be added in the Privileged SCC users:

                   - system:serviceaccount:neuvector:default

          In OpenShift 4.6+ use the following to check:

                   oc get rolebinding system:openshift:scc:privileged -n neuvector -o wide
                   system:openshift:scc:privileged   ClusterRole/system:openshift:scc:privileged   9m22s  neuvector/default


        displayName: NeuVector Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - wavefront
        - wavefront collector
        - wavefront proxy
        links:
        - name: NeuVector Operator
          url: https://github.com/neuvector/neuvector-operator
        maintainers:
        - email: support@neuvector.com
          name: A Full LifeCycle Container Security Platform
        maturity: beta
        provider:
          name: NeuVector
        relatedImages:
        - quay.io/community-operator-pipeline-prod/neuvector-community-operator@sha256:d8088a7d3ecda8bb08a8313a942cf6140f49cca3610255ab70235a5436cb3ffb
        - docker.io/neuvector/neuvector-operator@sha256:2b2ef4fbc567e7ae40c7bbc4f763f1806a8b1c872972c7bdbae9d8c58ba64ce4
        version: 1.5.7
      entries:
      - name: neuvector-operator.v1.5.7
        version: 1.5.7
      - name: neuvector-operator.v1.5.6
        version: 1.5.6
      - name: neuvector-operator.v1.5.5
        version: 1.5.5
      - name: neuvector-operator.v1.5.4
        version: 1.5.4
      - name: neuvector-operator.v1.5.3
        version: 1.5.3
      - name: neuvector-operator.v1.5.2
        version: 1.5.2
      - name: neuvector-operator.v1.5.1
        version: 1.5.1
      - name: neuvector-operator.v1.5.0
        version: 1.5.0
      - name: neuvector-operator.v1.4.9
        version: 1.4.9
      - name: neuvector-operator.v1.4.8
        version: 1.4.8
      - name: neuvector-operator.v1.4.7
        version: 1.4.7
      - name: neuvector-operator.v1.4.6
        version: 1.4.6
      - name: neuvector-operator.v1.4.5
        version: 1.4.5
      - name: neuvector-operator.v1.4.4
        version: 1.4.4
      - name: neuvector-operator.v1.4.3
        version: 1.4.3
      - name: neuvector-operator.v1.4.2
        version: 1.4.2
      - name: neuvector-operator.v1.4.1
        version: 1.4.1
      - name: neuvector-operator.v1.4.0
        version: 1.4.0
      - name: neuvector-operator.v1.3.9
        version: 1.3.9
      - name: neuvector-operator.v1.3.8
        version: 1.3.8
      - name: neuvector-operator.v1.3.7
        version: 1.3.7
      - name: neuvector-operator.v1.3.6
        version: 1.3.6
      - name: neuvector-operator.v1.3.5
        version: 1.3.5
      - name: neuvector-operator.v1.3.4
        version: 1.3.4
      - name: neuvector-operator.v1.3.3
        version: 1.3.3
      - name: neuvector-operator.v1.3.2
        version: 1.3.2
      - name: neuvector-operator.v1.3.1
        version: 1.3.1
      - name: neuvector-operator.v1.3.0
        version: 1.3.0
      - name: neuvector-operator.v1.2.9
        version: 1.2.9
      name: beta
    defaultChannel: beta
    packageName: neuvector-community-operator
    provider:
      name: NeuVector
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-activemqartemis: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/
    name: amq-broker-rhel9
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-broker-operator.v7.13.3-opr-1-0.1766396094.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          description: AMQ Broker Operator for RHEL 9 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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: "true"
          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.substitutesFor: amq-broker-operator.v7.13.3-opr-1
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - description: Provides internal message migration on clustered broker scaledown
            displayName: ActiveMQ Artemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: |
          **Red Hat AMQ Broker** is a pure-Java multiprotocol message broker. It’s built on an efficient, asynchronous core with a fast journal for message persistence.

          You can provision multiple instances and update the broker configuration on the fly using the associated Custom Resource Definitions.
          In addition, you can use the following CRDs to configure your broker environment:

          - **Address CRD**: define addresses and queues for the brokers in your deployment
          - **Security CRD**: define the security configuration for the brokers in your deployment, including:
              - users and roles
              - role based access control
              - console access control

          ## Selecting a channel
          You can specify the channel used to track and receive updates for the Operator by selecting either to track the minor or patch level versions.

          ## Supported Features
          - **Console** - Allows you view the broker topology, clients and messages. Red Hat Fuse users can integrate the broker console into the Fuse console for OpenShift.
          - **Persistence** - ephemeral and stateful deployments.
          - **Advanced queueing** - Last value queues, message groups, topic hierarchies, and large message support.
          - **Multiprotocol** - AMQP 1.0, MQTT, STOMP, OpenWire, and HornetQ Core.
          - **Address Management** - Creates and manages addresses and queues.
          - **User Management** - Creates and manages broker users.
          - **Monitoring** - Support for monitoring using Prometheus and provided Grafana dashboards.
          - **Scaledown** - Ensure consistency of messages using message migration.

          ## Storage
          An efficient data storage infrastructure is essential to the optimal performance of AMQ Broker.  AMQ Broker supports:
            - **Ephemeral** (Recommended for development only!)
            - **Persistent**
              - For example, block or NFS storage.
          Note: Your cloud provider might provide options that are not suitable for AMQ Broker, for example Amazon Elastic File System.  If in doubt, contact Red Hat Support

          ## Documentation
          Documentation for the current release is available from the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq/2021.q4/#category-amq-broker).
        displayName: Red Hat Integration - AMQ Broker for RHEL 9 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9cc48eecf1442ae04b8543fa5d4381a13bc2831390850828834d387006d1342b
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:755d0f7421efba76f52818bb3a8667cd7d2dcff2c7054dac1a4637b74ecac51d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b2402179b1d0ff9c950defe5d8808195ef9a4c3e13e3c469cae31ab51d5f5014
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ffffa9875f0379e9373f89f05eb06e5a193273bb04bc3aa5f85b044357b79098
        - registry.redhat.io/amq7/amq-broker-rhel9-operator-bundle@sha256:7d3c6e3137aae3a0f612731fb8e2d44fa6c7f708fea2b6382ffee0a4d1f15b3e
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:dd84cb2dfdecd4f5a3fc50a9e167ea6970d1d52d8c7427c201a74a76e151d430
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:bb6fbd68475a7852b4d99eea6c4ab313f9267da7963162f0d75375d7063409e7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:47fd4ce2533496828aba37bd1f9715e2164d5c90bd0fc6b25e7e0786d723bf01
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:dc13871dfed52402c40fd192900fc3cb5a49da4fa08e4ec4d0e23a879e83db25
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:f92b41ededb92e88d439caf1fbeb9322354da4b7a298bb4ae6873871a1e3fcad
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:16253895bc113f395dc6ab5cd511901e43b6ee676369ec80d598a8741c3c9bf4
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:c8ccf2fb03e97fcedc3299ada2f63f47beaa7643df4b201fcb30899f923436b9
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:ff80e0a7accda6825bf834d9aec27f48205dd6329991890dd017b4d21d0da5c8
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b3f83d5f406fd902bd9c6773f14c07649474edc4ca40bbcf75142b316a094247
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:54004a7076fff8787f14e238a7c2dd21884a882097fb474412d96b0138ca9249
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:81a004dc9d33eec151ae38f2767fe264a590710d2c3a60e934d440587f9980c4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:7f9b921d89b6d4d91b365659afff127d99f1455b94b48a10a6a7f4c38dd8b700
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:40920687402fd747ca02d384e63692a5e1db625723a2bf3056a607c92ee8eee1
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:80bca92852d08a7657fb090fe44bfda10baf231c31139a24edec83f542f36232
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d42d713da0ce6806fdc6492b6342586783e6865a82a8647d3c4288439b1751ee
        - registry.redhat.io/amq7/amq-broker-rhel9-operator@sha256:6fb2c32028429d50b8ffb26b63b6f9b055c9c3fedb479dde6f7d8dab9465922b
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:7a9c3e61345a8ab7c6f91701babca4a566beeb959bdd6008ea9b75df79a3b532
        version: 7.13.3-opr-1+0.1766396094.p
      entries:
      - name: amq-broker-operator.v7.13.3-opr-1-0.1766396094.p
        version: 7.13.3-opr-1+0.1766396094.p
      - name: amq-broker-operator.v7.13.3-opr-1-0.1766088994.p
        version: 7.13.3-opr-1+0.1766088994.p
      - name: amq-broker-operator.v7.13.3-opr-1-0.1766088986.p
        version: 7.13.3-opr-1+0.1766088986.p
      - name: amq-broker-operator.v7.13.3-opr-1
        version: 7.13.3-opr-1
      - name: amq-broker-operator.v7.13.2-opr-1
        version: 7.13.2-opr-1
      - name: amq-broker-operator.v7.13.2-opr-1-0.1761129569.p
        version: 7.13.2-opr-1+0.1761129569.p
      - name: amq-broker-operator.v7.13.2-opr-1-0.1761126307.p
        version: 7.13.2-opr-1+0.1761126307.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1754564924.p
        version: 7.13.1-opr-1+0.1754564924.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1758027574.p
        version: 7.13.1-opr-1+0.1758027574.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1758024989.p
        version: 7.13.1-opr-1+0.1758024989.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1756381365.p
        version: 7.13.1-opr-1+0.1756381365.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1756374447.p
        version: 7.13.1-opr-1+0.1756374447.p
      - name: amq-broker-operator.v7.13.1-opr-1
        version: 7.13.1-opr-1
      - name: amq-broker-operator.v7.13.0-opr-1
        version: 7.13.0-opr-1
      - name: amq-broker-operator.v7.13.0-opr-1-0.1747658456.p
        version: 7.13.0-opr-1+0.1747658456.p
      - name: amq-broker-operator.v7.13.0-opr-1-0.1747315188.p
        version: 7.13.0-opr-1+0.1747315188.p
      name: 7.13.x
    defaultChannel: 7.13.x
    packageName: amq-broker-rhel9
    provider:
      name: Red Hat
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Oracle Corporation
      provider-url: https://github.com/oracle/coherence-operator
    name: coherence-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: coherence-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "Coherence",
                "metadata": {
                  "name": "coherence-sample"
                },
                "spec": {
                  "replicas": 3
                }
              },
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "CoherenceJob",
                "metadata": {
                  "name": "coherence-job-sample"
                },
                "spec": {
                  "replicas": 1
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          certified: "false"
          containerImage: container-registry.oracle.com/middleware/coherence-operator@sha256:cbdd72331ef89cc44d13f40ae1cff33a3ca83162e1171a40b04630456432550e
          createdAt: "2025-11-24T17:26:13Z"
          description: The Oracle Coherence Kubernetes Operator enables easy management
            of Coherence clusters in a Kubernetes environment.
          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: "true"
          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"
          operatorframework.io/arch.amd64: supported
          operatorframework.io/arch.arm64: supported
          operatorframework.io/os.linux: supported
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/oracle/coherence-operator
          support: Oracle Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Coherence is the top level schema for the Coherence API and
              custom resource definition (CRD).
            displayName: Coherence
            kind: Coherence
            name: coherence.coherence.oracle.com
            version: v1
          - description: |-
              CoherenceJob is the top level schema for the CoherenceJob API and custom resource definition (CRD)
              for configuring Coherence Job workloads.
            displayName: Coherence Job
            kind: CoherenceJob
            name: coherencejob.coherence.oracle.com
            version: v1
        description: |
          The Oracle Coherence Kubernetes Operator enables easy management of Coherence clusters in a Kubernetes environment.

          ### Installation Guide & Configuration

          For the complete installation guide and all configuration options please refer to
          [Coherence Operator Documentation](https://oracle.github.io/coherence-operator/docs/latest/#/about/01_overview).
        displayName: Coherence Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Coherence
        - Oracle
        - In Memory Data
        - Caching
        links:
        - name: Coherence Kubernetes Operator
          url: https://oracle.github.io/coherence-operator/docs/latest
        - name: Oracle Coherence
          url: https://coherence.community
        maintainers:
        - email: jonathan.knight@oracle.com
          name: Jonathan Knight
        maturity: mature
        minKubeVersion: 1.26.0
        provider:
          name: Oracle Corporation
          url: https://github.com/oracle/coherence-operator
        relatedImages:
        - container-registry.oracle.com/middleware/coherence-operator@sha256:cbdd72331ef89cc44d13f40ae1cff33a3ca83162e1171a40b04630456432550e
        - registry.connect.redhat.com/oracle/coherence-operator-bundle@sha256:5f627eb1e51281dc820c2c3b358e762192ec7a0554997407011c0e7a2c66cbb2
        version: 3.5.7
      entries:
      - name: coherence-operator.v3.5.7
        version: 3.5.7
      name: stable
    defaultChannel: stable
    packageName: coherence-operator
    provider:
      name: Oracle Corporation
      url: https://github.com/oracle/coherence-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-eventbridge-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-eventbridge-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eventbridge.services.k8s.aws/v1alpha1",
                "kind": "Archive",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eventbridge.services.k8s.aws/v1alpha1",
                "kind": "Endpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eventbridge.services.k8s.aws/v1alpha1",
                "kind": "EventBus",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eventbridge.services.k8s.aws/v1alpha1",
                "kind": "Rule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/eventbridge-controller:1.2.0
          createdAt: "2025-11-29T03:54:36Z"
          description: AWS EventBridge controller is a service controller for managing
            EventBridge resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Archive represents the state of an AWS eventbridge Archive
              resource.
            displayName: Archive
            kind: Archive
            name: archives.eventbridge.services.k8s.aws
            version: v1alpha1
          - description: Endpoint represents the state of an AWS eventbridge Endpoint
              resource.
            displayName: Endpoint
            kind: Endpoint
            name: endpoints.eventbridge.services.k8s.aws
            version: v1alpha1
          - description: EventBus represents the state of an AWS eventbridge EventBus
              resource.
            displayName: EventBus
            kind: EventBus
            name: eventbuses.eventbridge.services.k8s.aws
            version: v1alpha1
          - description: Rule represents the state of an AWS eventbridge Rule resource.
            displayName: Rule
            kind: Rule
            name: rules.eventbridge.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EventBridge resources in AWS from within your Kubernetes cluster.

          **About Amazon EventBridge**

          EventBridge is a serverless service that uses events to connect application components together, making it easier for you to build scalable event-driven applications. Use it to route events from sources such as home-grown applications, AWS services, and third- party software to consumer applications across your organization. EventBridge provides a simple and consistent way to ingest, filter, transform, and deliver events so you can build new applications quickly.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EventBridge
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eventbridge
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EventBridge Developer Resources
          url: https://aws.amazon.com/eventbridge/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: eventbridge maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/eventbridge-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-eventbridge-controller@sha256:16dd357be53a6fab81b109557f4e2ae5b47438520881b54c538c2aa68623d61d
        version: 1.2.0
      entries:
      - name: ack-eventbridge-controller.v1.2.0
        version: 1.2.0
      - name: ack-eventbridge-controller.v1.1.2
        version: 1.1.2
      - name: ack-eventbridge-controller.v1.1.1
        version: 1.1.1
      - name: ack-eventbridge-controller.v1.1.0
        version: 1.1.0
      - name: ack-eventbridge-controller.v1.0.28
        version: 1.0.28
      - name: ack-eventbridge-controller.v1.0.27
        version: 1.0.27
      - name: ack-eventbridge-controller.v1.0.26
        version: 1.0.26
      - name: ack-eventbridge-controller.v1.0.25
        version: 1.0.25
      - name: ack-eventbridge-controller.v1.0.24
        version: 1.0.24
      - name: ack-eventbridge-controller.v1.0.23
        version: 1.0.23
      - name: ack-eventbridge-controller.v1.0.22
        version: 1.0.22
      - name: ack-eventbridge-controller.v1.0.21
        version: 1.0.21
      - name: ack-eventbridge-controller.v1.0.20
        version: 1.0.20
      - name: ack-eventbridge-controller.v1.0.18
        version: 1.0.18
      - name: ack-eventbridge-controller.v1.0.17
        version: 1.0.17
      - name: ack-eventbridge-controller.v1.0.16
        version: 1.0.16
      - name: ack-eventbridge-controller.v1.0.15
        version: 1.0.15
      - name: ack-eventbridge-controller.v1.0.14
        version: 1.0.14
      - name: ack-eventbridge-controller.v1.0.13
        version: 1.0.13
      - name: ack-eventbridge-controller.v1.0.12
        version: 1.0.12
      - name: ack-eventbridge-controller.v1.0.11
        version: 1.0.11
      - name: ack-eventbridge-controller.v1.0.6
        version: 1.0.6
      - name: ack-eventbridge-controller.v1.0.5
        version: 1.0.5
      - name: ack-eventbridge-controller.v1.0.4
        version: 1.0.4
      - name: ack-eventbridge-controller.v1.0.3
        version: 1.0.3
      - name: ack-eventbridge-controller.v1.0.1
        version: 1.0.1
      - name: ack-eventbridge-controller.v1.0.0
        version: 1.0.0
      - name: ack-eventbridge-controller.v0.0.7
        version: 0.0.7
      - name: ack-eventbridge-controller.v0.0.6
        version: 0.0.6
      - name: ack-eventbridge-controller.v0.0.5
        version: 0.0.5
      - name: ack-eventbridge-controller.v0.0.4
        version: 0.0.4
      - name: ack-eventbridge-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-eventbridge-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: APIMatic.io
      provider-url: https://www.apimatic.io/
    name: apimatic-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apimatic-kubernetes-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicodegen.apimatic.io/v1beta1",
                "kind": "APIMatic",
                "metadata": {
                  "name": "apimatic-sample"
                },
                "spec": {
                  "licensespec": {
                    "licenseSourceName": "apimaticlicense",
                    "licenseSourceType": "ConfigMap"
                  },
                  "podspec": {
                    "apimaticContainerSpec": {
                      "image": "apimaticio/apimatic-codegen",
                      "imagePullSecret": "apimaticimagesecret"
                    }
                  },
                  "replicas": 3,
                  "servicespec": {
                    "apimaticserviceport": {
                      "nodePort": 32000,
                      "port": 8070
                    },
                    "servicetype": "NodePort"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: docker.io/apimaticio/apimatic-kubernetes-operator:v0.0.1
          createdAt: "2021-08-24 12:00:00"
          description: Generate client SDKs and interactive Documentation for your
            APIs in minutes
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/apimatic/apimatic-kubernetes-operator
          support: APIMatic.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIMatic is the Schema for the apimatics API
            displayName: APIMatic App
            kind: APIMatic
            name: apimatics.apicodegen.apimatic.io
            version: v1beta1
        description: "##About APIMatic \n\n APIMatic is a Developer Experience   platform
          for Web APIs that empowers users to create multi-language SDKs with API
          reference docs, dynamic code samples, assisted authentication and more -
          all auto-generated to provide a comprehensive developer experience beyond
          any API documentation tool.\n\n## Table of contents\n\n* [Introduction](#introduction)\n*
          [Features](#features)\n* [Running the Sample](#running-the-sample)\n  *
          [Prerequisites](#prerequisites)\n  * [Steps for Direct Deployment](#steps-for-direct-deployment)\n
          \ * [Steps for OLM Deployment](#steps-for-olm-deployment)\n* [Technical
          Support](#technical-support)\n* [Copyrights](#copyrights)\n\n## Introduction\n\nAPIMatic
          Operator simplifies the configuration and lifecycle management of the APIMatic
          code and docs generation solution on different Kubernetes distributions
          and OpenShift. The Operator encapsulates key operational knowledge on how
          to configure and upgrade the APIMatic CodeGen application, making it easy
          to get up and running.\n\n\nMore information about the underlying APIMatic
          CodeGen API that is exposed\nby this operator can be found [here](https://apimatic-core-v3-docs.netlify.app/#/http/getting-started/overview-apimatic-core).\n\n##
          Features\n\nAPIMatic Operator provides the following features:\n- Deploys
          the APIMatic CodeGen Web API service within the Kubernetes or OpenShift
          cluster.\n- Exposes the APIMatic CodeGen API external to the cluster, using
          Service type as [NodePort](https://kubernetes.io/docs/concepts/services-networking/service/#nodeport),
          [LoadBalancer](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
          or [ExternalName](https://kubernetes.io/docs/concepts/services-networking/service/#externalname).\n-
          For exposing the service through an ingress resource, create an Ingress
          resource in the namespace of your APIMatic CR and set owned APIMatic service
          created by the operator as a backed service. More information can be found
          [here](https://kubernetes.io/docs/concepts/services-networking/ingress/).\n-
          Manual horizontal scaling of pods.\n  ```sh\n  kubectl scale apm apimatic-sample--replicas=2\n
          \ ```\n\n## Running the Sample \n\n### Prerequisites\n\nPlease contact APIMatic
          at [support@apimatic.io](mailto:support@apimatic.io) to register with the
          APIMatic CodeGen Docker Hub registry and acquire a valid license to run
          the APIMatic CodeGen API.\n\nFurther prerequisites for running the sample
          include:\n\n- [go](https://golang.org/) v1.16.*\n- [git](https://git-scm.com/)\n-
          [make](https://www.gnu.org/software/make/)\n- [Operator SDK](https://sdk.operatorframework.io/docs/overview/)\n-
          A running Kubernetes cluster with [kubectl](https://kubernetes.io/docs/reference/kubectl/overview/)
          on client. For testing purposes, you can use [Minikube](https://minikube.sigs.k8s.io/docs/)
          or [kind](https://kind.sigs.k8s.io/)\n- For checking the service created
          by the APIMatic operator on-prem, you can use [MetalLB](https://metallb.org/)\n\n###
          Steps for Direct Deployment\n\nTo run the sample for checking the APIMatic
          operator:\n\n- Clone the APIMatic repository into your working directory
          using the following command:\n  ```sh\n  git clone https://github.com/apimatic/apimatic-kubernetes-operator.git\n
          \ ```\n- Run `make deploy` to set up the APIMatic operator resources. This
          will deploy the '`apimatic-system`' namespace as well as the CRD and the
          RBAC manifests.\n\n- Create a secret named '`apimaticimagesecret`' to allow
          pulling the APIMatic CodeGen image using the Docker Hub username registered
          with APIMatic. If you have not done so, please contact support@apimatic.io
          for the steps required.\n  ```sh\n  kubectl create secret docker-registry
          apimaticimagesecret --docker-server=https://index.docker.io/v1/ --docker-username=<your-name>
          --docker-password=<your-pword> --docker-email=<your-email>\n  ```\n- Create
          a [configmap](https://kubernetes.io/docs/concepts/configuration/configmap/)
          resource named '`apimaticlicense`' that will serve as the volume storing
          the APIMatic license. An example of this is given below which will create
          the ConfigMap using the *License.lic* file located at */usr/local/apimatic/license/*\n
          \ ```sh\n  kubectl create configmap apimaticlicense --from-file /usr/local/apimatic/license/License.lic\n
          \ ```\n- This will deploy a ConfigMap resource with the following definition:\n
          \ ```sh\n  apiVersion: v1\n  data:\n    License.lic: \\\"<License file contents
          here>\\\"\n  kind: ConfigMap\n  metadata:\n    name: apimaticlicense\n    namespace:
          default\n  ```\n- Now run the sample using the following command:\n  ```sh\n
          \ kubectl apply -f config/samples/apicodegen_v1beta1_apimatic.yaml\n  ```\n-
          You will now see a new [Deployment](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/)
          with replica count of 3 and [Service](https://kubernetes.io/docs/concepts/services-networking/service/)
          of type `NodePort` created, both named ***apimatic-sample***. Accessing
          http://localhost:32000 from your browser (or using curl from within the
          Minikube or Kind cluster, if using that) should now show the APIMatic Titan
          page.\n- You can now use the exposed APIMatic CodeGen API to generate API
          SDKs and Docs using [curl](https://curl.se/), [Postman](https://www.postman.com/)
          or your own custom Web application that consumes the APIMatic CodeGen API
          service.\n\n- Once done, you can remove the APIMatic resources using the
          following command:\n  ```sh\n  make undeploy\n  ```\n\n### Steps for OLM
          Deployment\n\nThe following steps can be used to utilize [Operator LifeCycle
          Manager (OLM)](https://olm.operatorframework.io/docs/) to deploy the operator
          and run the sample. The steps are as follows:\n\n- If not already done so,
          clone the APIMatic repository into your working directory:\n  ```sh\n  git
          clone https://github.com/apimatic/apimatic-kubernetes-operator.git\n  ```
          \n- [Install OLM in your Kubernetes cluster](https://olm.operatorframework.io/docs/getting-started/#installing-olm-in-your-cluster).\n\n-
          Run the following script to install the resources required by OLM to deploy
          the APIMatic operator in the Kubernetes cluster within the `apimatic-system`
          namespace. Information about the different resources required can be found
          using the steps given [here](https://olm.operatorframework.io/docs/tasks/).\n
          \ ```sh\n  kubectl apply -f olm/manifests.yaml\n  ```\n\n- This should spin
          up the `ClusterServiceVersion` of the operator in the `apimatic-system`
          namespace, following which the operator pod will spin up. To ensure the
          that the operator installed successfully, check for the `ClusterServiceVersion`
          and the operator deployment in the namespace it was installed in.\n  ```sh\n
          \ kubectl get csv -n apimatic-system\n  \n  kubectl get deployment -n apimatic-system\n
          \ ```\n\n  - Create a secret named `apimaticimagesecret` to allow pulling
          the APIMatic CodeGen image using the Docker Hub username registered with
          APIMatic. If you have not done so, please contact support@apimatic.io for
          the steps required.\n  ```sh\n  kubectl create secret docker-registry apimaticimagesecret
          --docker-server=https://index.docker.io/v1/ --docker-username=<your-name>
          --docker-password=<your-pword> --docker-email=<your-email>\n  ```\n- Create
          a [configmap](https://kubernetes.io/docs/concepts/configuration/configmap/)
          resource named `apimaticlicense` that will serve as the volume storing the
          APIMatic license. An example of this is given below which will create the
          ConfigMap using the *License.lic* file located at */usr/local/apimatic/license/*\n
          \ ```sh\n  kubectl create configmap apimaticlicense --from-file /usr/local/apimatic/license/License.lic\n
          \ ```\n- This will deploy a ConfigMap resource with the following definition:\n
          \ ```sh\n  apiVersion: v1\n  data:\n    License.lic: \\\"<License file contents
          here>\\\"\n  kind: ConfigMap\n  metadata:\n    name: apimaticlicense\n    namespace:
          default\n  ```\n- Now run the sample using the following command:\n  ```sh\n
          \ kubectl apply -f config/samples/apicodegen_v1beta1_apimatic.yaml\n  ```\n\n-
          You will now see a new [Deployment](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/)
          with replica count of 3 and [Service](https://kubernetes.io/docs/concepts/services-networking/service/)
          of type `NodePort` created, both named ***apimatic-sample***. Accessing
          http://localhost:32000 from your browser (or using curl from within the
          Minikube or Kind cluster, if using that) should now show the APIMatic Titan
          page.\n- You can now use the exposed APIMatic CodeGen API to generate API
          SDKs and Docs using [curl](https://curl.se/), [Postman](https://www.postman.com/)
          or your own custom Web application that consumes the APIMatic CodeGen API
          service.\n- Once done, you can remove the APIMatic operator resources using
          the follow script:\n  ```sh\n  kubectl delete -f olm/manifests.yaml\n  ```\n\n##
          Technical Support\n\n- To request additional features in the future, or
          if you notice any discrepancy regarding this document, please drop an email
          to [support@apimatic.io](mailto:support@apimatic.io).\n\n### Copyrights\n\n&copy;
          2021 APIMatic.io\n"
        displayName: APIMatic Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Rest APIs
        - API SDK Generator
        - API Docs Generator
        - API Developer Portal
        - APIMatic
        - Developer Tools
        links:
        - name: Overview
          url: https://www.apimatic.io/
        - name: Developer Experience Portal
          url: https://www.apimatic.io/developer-experience-portal
        - name: Code-Gen as a Service
          url: https://www.apimatic.io/continuous-code-generation
        - name: API Transformer
          url: https://www.apimatic.io/transformer
        - name: Contact
          url: https://www.apimatic.io/contact
        - name: Documentation
          url: https://docs.apimatic.io/
        - name: Blogs
          url: https://www.apimatic.io/blog/
        maintainers:
        - email: support@apimatic.io
          name: Support
        maturity: alpha
        provider:
          name: APIMatic.io
          url: https://www.apimatic.io/
        relatedImages:
        - quay.io/openshift-community-operators/apimatic-kubernetes-operator@sha256:a5f68205291caa9bb7903180afc974fe86252ba87e671978c8b49e0206976d06
        - docker.io/apimaticio/apimatic-kubernetes-operator:v0.0.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.0.1
      entries:
      - name: apimatic-kubernetes-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: apimatic-kubernetes-operator
    provider:
      name: APIMatic.io
      url: https://www.apimatic.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: ansible-cloud-addons-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aca-operator.v2.5.0-0.1761049779
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Cloud Addons Operator manages everything Automation
          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: "true"
          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.skipRange: '>=2.1.1-0.1645500829 <2.5.1'
          operatorframework.io/suggested-namespace: aap
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy an AAP AWS Billing instance
            displayName: AnsibleAutomationPlatformAwsBilling
            kind: AnsibleAutomationPlatformAwsBilling
            name: ansibleautomationplatformawsbillings.platform.ansible.com
            version: v1alpha1
          - description: Deploy an AAP Azure Billing instance
            displayName: AnsibleAutomationPlatformAzureBilling
            kind: AnsibleAutomationPlatformAzureBilling
            name: ansibleautomationplatformazurebillings.platform.ansible.com
            version: v1alpha1
          - description: Deploy an AAP Metrics instance
            displayName: AnsibleAutomationPlatformMetrics
            kind: AnsibleAutomationPlatformMetrics
            name: ansibleautomationplatformmetrics.platform.ansible.com
            version: v1alpha1
          - description: Deploy an AAP UI instance
            displayName: AutomationPlatform
            kind: AutomationPlatform
            name: automationplatforms.platform.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Cloud Addons is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Cloud Addons Operator provides for push-button deployments of Cloud Add-ons into your OpenShift environment. Ansible Cloud Addons deployments include:
            * Cloud Billing - Cloud billing connector for Ansible Automation Platform
            * Cloud UI - Unified welcome page UI for Ansible Automation Platform

          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Cloud Addons operator by following instructions presented when you click the Install button.
        displayName: Ansible Cloud Addons
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-platform
        - ansible-automation-platform
        - aap
        - cloud
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform/cloud-addons-operator-bundle@sha256:dc5e1a714748b7310815fbf177d8d6dbece65d2e50317c92118559c0b5412cd5
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-billing-rhel8-operator@sha256:42d72b27e80757639d48718efec330725a22523aed2b39ec2c979f98ca3af2d3
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-billing-rhel8@sha256:eb7d09283ce86258e1ad2322ffeea00e524557aae1d0edeb5719fe86623ee518
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-metrics-collector-rhel8@sha256:cb739c11db66098a6df8bfe1e1c9d4f9fc7fe6f7e0323fc25c07e24da4a0f9dc
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-ui-rhel8-operator@sha256:bf081586cf195425d2e6cc1e911aca46b4a81bcf941df809880fc070584a11de
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-ui-rhel8@sha256:be4516bad34a4ce25fc615fc0d8ba72c9628d6cbb44bbe8a1e67c9b12a920275
        version: 2.5.0+0.1761049779
      entries:
      - name: aca-operator.v2.5.0-0.1727240231
        version: 2.5.0+0.1727240231
      - name: aca-operator.v2.5.0-0.1727874815
        version: 2.5.0+0.1727874815
      - name: aca-operator.v2.5.0-0.1728516369
        version: 2.5.0+0.1728516369
      - name: aca-operator.v2.5.0-0.1729737962
        version: 2.5.0+0.1729737962
      - name: aca-operator.v2.5.0-0.1731452082
        version: 2.5.0+0.1731452082
      - name: aca-operator.v2.5.0-0.1733188778
        version: 2.5.0+0.1733188778
      - name: aca-operator.v2.5.0-0.1733964232
        version: 2.5.0+0.1733964232
      - name: aca-operator.v2.5.0-0.1736892777
        version: 2.5.0+0.1736892777
      - name: aca-operator.v2.5.0-0.1737095650
        version: 2.5.0+0.1737095650
      - name: aca-operator.v2.5.0-0.1737671171
        version: 2.5.0+0.1737671171
      - name: aca-operator.v2.5.0-0.1739244024
        version: 2.5.0+0.1739244024
      - name: aca-operator.v2.5.0-0.1740088272
        version: 2.5.0+0.1740088272
      - name: aca-operator.v2.5.0-0.1740769078
        version: 2.5.0+0.1740769078
      - name: aca-operator.v2.5.0-0.1741367998
        version: 2.5.0+0.1741367998
      - name: aca-operator.v2.5.0-0.1742427652
        version: 2.5.0+0.1742427652
      - name: aca-operator.v2.5.0-0.1743655743
        version: 2.5.0+0.1743655743
      - name: aca-operator.v2.5.0-0.1746134365
        version: 2.5.0+0.1746134365
      - name: aca-operator.v2.5.0-0.1747339736
        version: 2.5.0+0.1747339736
      - name: aca-operator.v2.5.0-0.1749072064
        version: 2.5.0+0.1749072064
      - name: aca-operator.v2.5.0-0.1750895274
        version: 2.5.0+0.1750895274
      - name: aca-operator.v2.5.0-0.1753899647
        version: 2.5.0+0.1753899647
      - name: aca-operator.v2.5.0-0.1755834478
        version: 2.5.0+0.1755834478
      - name: aca-operator.v2.5.0-0.1758143647
        version: 2.5.0+0.1758143647
      - name: aca-operator.v2.5.0-0.1761049779
        version: 2.5.0+0.1761049779
      name: stable-2.5-cluster-scoped
    defaultChannel: stable-2.5-cluster-scoped
    packageName: ansible-cloud-addons-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhbk-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhbk-operator.v22.0.13-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": "example.org",
                  "tlsSecret": "my-tls-secret"
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:21e808c676cf3e231f0d5592a48ec668c069ba00cbc7c5aaac08f61d52323ad8
          createdAt: "2024-09-17T11:20:22Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:21e808c676cf3e231f0d5592a48ec668c069ba00cbc7c5aaac08f61d52323ad8
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:884afe0ca1698d85a02aa47b6d60b8222e50d70ad280db6f98e1a4bbdbe13c40
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:c342da2a8183de278abebf98ef23332ce382544233a8b1128bf1ff74126e9c14
        version: 22.0.13-opr.1
      entries:
      - name: rhbk-operator.v22.0.13-opr.1
        version: 22.0.13-opr.1
      - name: rhbk-operator.v22.0.12-opr.1
        version: 22.0.12-opr.1
      - name: rhbk-operator.v22.0.11-opr.2
        version: 22.0.11-opr.2
      - name: rhbk-operator.v22.0.11-opr.1
        version: 22.0.11-opr.1
      - name: rhbk-operator.v22.0.10-opr.1
        version: 22.0.10-opr.1
      - name: rhbk-operator.v22.0.9-opr.1
        version: 22.0.9-opr.1
      - name: rhbk-operator.v22.0.8-opr.2
        version: 22.0.8-opr.2
      - name: rhbk-operator.v22.0.8-opr.1
        version: 22.0.8-opr.1
      - name: rhbk-operator.v22.0.7-opr.1
        version: 22.0.7-opr.1
      - name: rhbk-operator.v22.0.6-opr.1
        version: 22.0.6-opr.1
      name: stable-v22
    - currentCSV: rhbk-operator.v22.0.13-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": "example.org",
                  "tlsSecret": "my-tls-secret"
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:21e808c676cf3e231f0d5592a48ec668c069ba00cbc7c5aaac08f61d52323ad8
          createdAt: "2024-09-17T11:20:22Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:c342da2a8183de278abebf98ef23332ce382544233a8b1128bf1ff74126e9c14
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:21e808c676cf3e231f0d5592a48ec668c069ba00cbc7c5aaac08f61d52323ad8
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:884afe0ca1698d85a02aa47b6d60b8222e50d70ad280db6f98e1a4bbdbe13c40
        version: 22.0.13-opr.1
      entries:
      - name: rhbk-operator.v22.0.13-opr.1
        version: 22.0.13-opr.1
      - name: rhbk-operator.v22.0.12-opr.1
        version: 22.0.12-opr.1
      - name: rhbk-operator.v22.0.11-opr.2
        version: 22.0.11-opr.2
      - name: rhbk-operator.v22.0.11-opr.1
        version: 22.0.11-opr.1
      - name: rhbk-operator.v22.0.10-opr.1
        version: 22.0.10-opr.1
      - name: rhbk-operator.v22.0.9-opr.1
        version: 22.0.9-opr.1
      - name: rhbk-operator.v22.0.8-opr.2
        version: 22.0.8-opr.2
      - name: rhbk-operator.v22.0.8-opr.1
        version: 22.0.8-opr.1
      - name: rhbk-operator.v22.0.7-opr.1
        version: 22.0.7-opr.1
      - name: rhbk-operator.v22.0.6-opr.1
        version: 22.0.6-opr.1
      name: stable-v22.0
    - currentCSV: rhbk-operator.v24.0.11-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ee815bf36c438e81b9553f0359a7725f0b3f633a5143f04cc822ea865940801a
          createdAt: "2025-03-26T02:27:51Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ee815bf36c438e81b9553f0359a7725f0b3f633a5143f04cc822ea865940801a
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:d339ecf788d1681ba9945a2ea63ca675caec863ec75f497ef916103f4c898003
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:df74d1b1479c6cf371e45b4775bc6c905a9855cf182fb6ff8a752c6e846f55a6
        version: 24.0.11-opr.1
      entries:
      - name: rhbk-operator.v24.0.11-opr.1
        version: 24.0.11-opr.1
      - name: rhbk-operator.v24.0.10-opr.1
        version: 24.0.10-opr.1
      - name: rhbk-operator.v24.0.9-opr.1
        version: 24.0.9-opr.1
      - name: rhbk-operator.v24.0.8-opr.1
        version: 24.0.8-opr.1
      - name: rhbk-operator.v24.0.7-opr.1
        version: 24.0.7-opr.1
      - name: rhbk-operator.v24.0.6-opr.1
        version: 24.0.6-opr.1
      - name: rhbk-operator.v24.0.5-opr.1
        version: 24.0.5-opr.1
      - name: rhbk-operator.v24.0.4-opr.1
        version: 24.0.4-opr.1
      - name: rhbk-operator.v24.0.3-opr.1
        version: 24.0.3-opr.1
      name: stable-v24
    - currentCSV: rhbk-operator.v24.0.11-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ee815bf36c438e81b9553f0359a7725f0b3f633a5143f04cc822ea865940801a
          createdAt: "2025-03-26T02:27:51Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:df74d1b1479c6cf371e45b4775bc6c905a9855cf182fb6ff8a752c6e846f55a6
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ee815bf36c438e81b9553f0359a7725f0b3f633a5143f04cc822ea865940801a
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:d339ecf788d1681ba9945a2ea63ca675caec863ec75f497ef916103f4c898003
        version: 24.0.11-opr.1
      entries:
      - name: rhbk-operator.v24.0.11-opr.1
        version: 24.0.11-opr.1
      - name: rhbk-operator.v24.0.10-opr.1
        version: 24.0.10-opr.1
      - name: rhbk-operator.v24.0.9-opr.1
        version: 24.0.9-opr.1
      - name: rhbk-operator.v24.0.8-opr.1
        version: 24.0.8-opr.1
      - name: rhbk-operator.v24.0.7-opr.1
        version: 24.0.7-opr.1
      - name: rhbk-operator.v24.0.6-opr.1
        version: 24.0.6-opr.1
      - name: rhbk-operator.v24.0.5-opr.1
        version: 24.0.5-opr.1
      - name: rhbk-operator.v24.0.4-opr.1
        version: 24.0.4-opr.1
      - name: rhbk-operator.v24.0.3-opr.1
        version: 24.0.3-opr.1
      name: stable-v24.0
    - currentCSV: rhbk-operator.v26.4.7-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:8a65029e243ec354f69d71391b9567afd3664e0ce7c8ffd566dcf0cdda1805c9
          createdAt: "2025-12-05T15:23:54Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Red Hat build of Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: batch
          kind: Job
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: networking.k8s.io
          kind: NetworkPolicy
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:550e4bd289be652779bae87764c208ec57636e2eb17fdba928aaaacc450e8112
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:8a65029e243ec354f69d71391b9567afd3664e0ce7c8ffd566dcf0cdda1805c9
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:eaddec56b89ad4a9ad0bf4350e91dc0951f18192e02a5d95be36865a17c83002
        version: 26.4.7-opr.1
      entries:
      - name: rhbk-operator.v26.4.7-opr.1
        version: 26.4.7-opr.1
      - name: rhbk-operator.v26.4.6-opr.1
        version: 26.4.6-opr.1
      - name: rhbk-operator.v26.4.5-opr.1
        version: 26.4.5-opr.1
      - name: rhbk-operator.v26.4.4-opr.1
        version: 26.4.4-opr.1
      - name: rhbk-operator.v26.4.2-opr.1
        version: 26.4.2-opr.1
      - name: rhbk-operator.v26.2.12-opr.1
        version: 26.2.12-opr.1
      - name: rhbk-operator.v26.2.11-opr.1
        version: 26.2.11-opr.1
      - name: rhbk-operator.v26.2.10-opr.1
        version: 26.2.10-opr.1
      - name: rhbk-operator.v26.2.9-opr.1
        version: 26.2.9-opr.1
      - name: rhbk-operator.v26.2.8-opr.1
        version: 26.2.8-opr.1
      - name: rhbk-operator.v26.2.7-opr.1
        version: 26.2.7-opr.1
      - name: rhbk-operator.v26.2.6-opr.1
        version: 26.2.6-opr.1
      - name: rhbk-operator.v26.2.5-opr.1
        version: 26.2.5-opr.1
      - name: rhbk-operator.v26.2.4-opr.2
        version: 26.2.4-opr.2
      - name: rhbk-operator.v26.2.4-opr.1
        version: 26.2.4-opr.1
      - name: rhbk-operator.v26.0.17-opr.1
        version: 26.0.17-opr.1
      - name: rhbk-operator.v26.0.16-opr.1
        version: 26.0.16-opr.1
      - name: rhbk-operator.v26.0.15-opr.1
        version: 26.0.15-opr.1
      - name: rhbk-operator.v26.0.14-opr.1
        version: 26.0.14-opr.1
      - name: rhbk-operator.v26.0.13-opr.1
        version: 26.0.13-opr.1
      - name: rhbk-operator.v26.0.12-opr.1
        version: 26.0.12-opr.1
      - name: rhbk-operator.v26.0.11-opr.1
        version: 26.0.11-opr.1
      - name: rhbk-operator.v26.0.10-opr.1
        version: 26.0.10-opr.1
      - name: rhbk-operator.v26.0.9-opr.1
        version: 26.0.9-opr.1
      - name: rhbk-operator.v26.0.8-opr.1
        version: 26.0.8-opr.1
      - name: rhbk-operator.v26.0.7-opr.1
        version: 26.0.7-opr.1
      - name: rhbk-operator.v26.0.6-opr.1
        version: 26.0.6-opr.1
      - name: rhbk-operator.v26.0.5-opr.1
        version: 26.0.5-opr.1
      name: stable-v26
    - currentCSV: rhbk-operator.v26.0.17-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:9c8b7f9690808a17426a066a840055422a53585ed03beeb8e5adfd678abbc37d
          createdAt: "2025-11-05T03:02:05Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Red Hat build of Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:9c8b7f9690808a17426a066a840055422a53585ed03beeb8e5adfd678abbc37d
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:8c5c8c530c63bf9eaf4909b9e6b7d234a0ff266f31030b60869c4af1b2167b73
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:1696b6f86abea123341f703981c26d79365c8a0c046d7add6970fb7b1848ace2
        version: 26.0.17-opr.1
      entries:
      - name: rhbk-operator.v26.0.17-opr.1
        version: 26.0.17-opr.1
      - name: rhbk-operator.v26.0.16-opr.1
        version: 26.0.16-opr.1
      - name: rhbk-operator.v26.0.15-opr.1
        version: 26.0.15-opr.1
      - name: rhbk-operator.v26.0.14-opr.1
        version: 26.0.14-opr.1
      - name: rhbk-operator.v26.0.13-opr.1
        version: 26.0.13-opr.1
      - name: rhbk-operator.v26.0.12-opr.1
        version: 26.0.12-opr.1
      - name: rhbk-operator.v26.0.11-opr.1
        version: 26.0.11-opr.1
      - name: rhbk-operator.v26.0.10-opr.1
        version: 26.0.10-opr.1
      - name: rhbk-operator.v26.0.9-opr.1
        version: 26.0.9-opr.1
      - name: rhbk-operator.v26.0.8-opr.1
        version: 26.0.8-opr.1
      - name: rhbk-operator.v26.0.7-opr.1
        version: 26.0.7-opr.1
      - name: rhbk-operator.v26.0.6-opr.1
        version: 26.0.6-opr.1
      - name: rhbk-operator.v26.0.5-opr.1
        version: 26.0.5-opr.1
      name: stable-v26.0
    - currentCSV: rhbk-operator.v26.2.12-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ced1c761aa580d1c1a188064d0ae5ab9b4f717c0429df5a6d5e32ad2182f16a5
          createdAt: "2025-12-02T16:40:11Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Red Hat build of Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: batch
          kind: Job
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: networking.k8s.io
          kind: NetworkPolicy
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:905406a14759d960b41f56dbb30170961fafc7b59421efb6c2bba5c6f91a9f39
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ced1c761aa580d1c1a188064d0ae5ab9b4f717c0429df5a6d5e32ad2182f16a5
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:293e3169bad9ed1739b0750d13a7e4572594c2f5eb2eca6cea04b588ed06029e
        version: 26.2.12-opr.1
      entries:
      - name: rhbk-operator.v26.2.12-opr.1
        version: 26.2.12-opr.1
      - name: rhbk-operator.v26.2.11-opr.1
        version: 26.2.11-opr.1
      - name: rhbk-operator.v26.2.10-opr.1
        version: 26.2.10-opr.1
      - name: rhbk-operator.v26.2.9-opr.1
        version: 26.2.9-opr.1
      - name: rhbk-operator.v26.2.8-opr.1
        version: 26.2.8-opr.1
      - name: rhbk-operator.v26.2.7-opr.1
        version: 26.2.7-opr.1
      - name: rhbk-operator.v26.2.6-opr.1
        version: 26.2.6-opr.1
      - name: rhbk-operator.v26.2.5-opr.1
        version: 26.2.5-opr.1
      - name: rhbk-operator.v26.2.4-opr.2
        version: 26.2.4-opr.2
      - name: rhbk-operator.v26.2.4-opr.1
        version: 26.2.4-opr.1
      name: stable-v26.2
    - currentCSV: rhbk-operator.v26.4.7-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:8a65029e243ec354f69d71391b9567afd3664e0ce7c8ffd566dcf0cdda1805c9
          createdAt: "2025-12-05T15:23:54Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Red Hat build of Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: batch
          kind: Job
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: networking.k8s.io
          kind: NetworkPolicy
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:550e4bd289be652779bae87764c208ec57636e2eb17fdba928aaaacc450e8112
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:8a65029e243ec354f69d71391b9567afd3664e0ce7c8ffd566dcf0cdda1805c9
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:eaddec56b89ad4a9ad0bf4350e91dc0951f18192e02a5d95be36865a17c83002
        version: 26.4.7-opr.1
      entries:
      - name: rhbk-operator.v26.4.7-opr.1
        version: 26.4.7-opr.1
      - name: rhbk-operator.v26.4.6-opr.1
        version: 26.4.6-opr.1
      - name: rhbk-operator.v26.4.5-opr.1
        version: 26.4.5-opr.1
      - name: rhbk-operator.v26.4.4-opr.1
        version: 26.4.4-opr.1
      - name: rhbk-operator.v26.4.2-opr.1
        version: 26.4.2-opr.1
      name: stable-v26.4
    defaultChannel: stable-v26.4
    packageName: rhbk-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-dependencies
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-dependencies.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          createdAt: "2025-12-18T07:58:16Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          olm.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          deploys dependencies.
        displayName: Data Foundation Dependencies
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-dependencies-operator-bundle@sha256:7d89cc28cd82e5f4fe0c675d111ee4b795e417e1d16ec10aebaa5529d5cedd38
        version: 4.19.9-rhodf
      entries:
      - name: odf-dependencies.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-dependencies.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-dependencies.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-dependencies.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-dependencies.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-dependencies.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-dependencies.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-dependencies.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-dependencies.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-dependencies.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-dependencies.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          createdAt: "2025-12-18T07:45:08Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          deploys dependencies.
        displayName: Data Foundation Dependencies
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-dependencies-operator-bundle@sha256:55a7e1e729f476187b550f2ceae203ab579418157fa95657ffcbcb70f258c324
        version: 4.20.4-rhodf
      entries:
      - name: odf-dependencies.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-dependencies.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-dependencies.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-dependencies.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-dependencies.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-dependencies
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: mtr-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mtr-operator.1.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
             {
               "apiVersion": "windup.jboss.org/v1",
               "kind": "Windup",
               "metadata": {
                 "namespace": "mtr",
                 "name": "mtr",
                 "labels": {
                   "application": "windup"
                 }
               },
               "spec": {}
             }
            ]
          capabilities: Basic Install
          categories: Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mtr/mtr-rhel8-operator@sha256:4df7c4ad353339e8b958ffc651e811667767c8a0dcdd61f89352c926da52a513
          createdAt: "2024-09-03T17:22:23Z"
          description: Migration Toolkit for Runtimes is an analysis tool that supports
            the modernization and migration of Java applications.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          imagePullPolicy: Always
          operatorframework.io/suggested-namespace: mtr
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/windup/windup-operator/
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: "Create an MTR Web Console application.  \n\nTo access the
              MTR Web Console application from the \"Developer\" perspective, please
              go to Topology and click on the \"Open URL\" icon on the web-console
              pod.  \n\nAlternatively from the \"Administrator\" perspective, please
              go to Networking->Routes and click on the Location hyperlink.  \n\nIn
              order to connect with default login credentials, please use \"migration\"
              as username and \"password\" as password.  \n\nKnown issue  \nIf you
              want to customize the MTR Web Console instance's parameters and you
              can not see any in the `Form view`, please switch to the `YAML view`
              and change them as needed.\n"
            displayName: Migration Toolkit for Runtimes
            kind: Windup
            name: windups.windup.jboss.org
            version: v1
        description: "The Migration Toolkit for Runtimes (MTR) is a web console application
          that supports large-scale Java application modernization and migration projects
          across a broad range of transformations and use cases.  \n\nIt analyzes
          application code, supports effort estimation, accelerates code migration,
          and enables users to move applications to containers.  \n\nFor more information
          please refer to the [https://developers.redhat.com/products/mtr/overview](https://developers.redhat.com/products/mtr/overview)
          page.\n"
        displayName: Migration Toolkit for Runtimes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - monitoring
        - security
        - alerting
        - metric
        - troubleshooting
        - run-time
        - migration
        - modernization
        links:
        - name: Website
          url: https://developers.redhat.com/products/mtr/overview
        - name: GitHub
          url: https://github.com/windup/windup-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_runtimes
        maintainers:
        - email: migrate@redhat.com
          name: Migration Toolkit for Runtimes
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mtr/mtr-rhel8-operator@sha256:4df7c4ad353339e8b958ffc651e811667767c8a0dcdd61f89352c926da52a513
        - registry.redhat.io/mtr/mtr-web-container-rhel8@sha256:cb88a5453b506ca70563537ec6db2f44ff8cb4050c9652ec86eb5128aa313003
        - registry.redhat.io/mtr/mtr-web-executor-container-rhel8@sha256:2f0622774367f33efc321926196681322ab1535144e6a0785608c8050fc59f2e
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/mtr/mtr-operator-bundle@sha256:190a6fa2a6a9b6b182cdf9cab18814d05c203b54ca18dc533e553fa5dcca779e
        version: 1.2.7
      entries:
      - name: mtr-operator.1.2.7
        version: 1.2.7
      - name: mtr-operator.1.2.6
        version: 1.2.6
      - name: mtr-operator.1.2.5
        version: 1.2.5
      - name: mtr-operator.1.2.4
        version: 1.2.4
      - name: mtr-operator.1.2.3
        version: 1.2.3
      - name: mtr-operator.1.2.2
        version: 1.2.2
      - name: mtr-operator.1.2.1
        version: 1.2.1
      - name: mtr-operator.1.2.0
        version: 1.2.0
      - name: mtr-operator.1.1.1
        version: 1.1.1
      - name: mtr-operator.1.1.0
        version: 1.1.0
      - name: mtr-operator.1.0.3
        version: 1.0.3
      - name: mtr-operator.1.0.2
        version: 1.0.2
      - name: mtr-operator.1.0.1
        version: 1.0.1
      - name: mtr-operator.1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: mtr-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NooBaa
      provider-url: ""
    name: mcg-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mcg-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[{"kind":"NooBaa","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"noobaa","creationTimestamp":null},"spec":{"cleanupPolicy":{},"security":{"kms":{}},"loadBalancerSourceSubnets":{},"autoscaler":{},"bucketLogging":{},"bucketNotifications":{"enabled":false}},"status":{"lastKeyRotateTime":null}},{"kind":"BackingStore","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"type":""},"status":{"mode":{}}},{"kind":"NamespaceStore","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"type":""},"status":{"mode":{}}},{"kind":"BucketClass","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{},"status":{}},{"kind":"NooBaaAccount","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"allow_bucket_creation":false},"status":{}}]'
          capabilities: Seamless Upgrades
          categories: Storage,Big Data
          certified: "false"
          containerImage: registry.redhat.io/odf4/mcg-rhel9-operator@sha256:1b5bb3031e350b8bd96029fc46beb17f7f7100f829555cf4017b2cd7a2fcd67f
          createdAt: "2019-07-08T13:10:20.940Z"
          description: NooBaa is an object data service for hybrid and multi cloud
            environments.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/infrastructure-features: ֿ'["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/noobaa/noobaa-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A NooBaa system - Create this to start
            displayName: NooBaa
            kind: NooBaa
            name: noobaas.noobaa.io
            version: v1alpha1
          - description: Storage target spec such as aws-s3, s3-compatible, ibm-cos,
              PV's and more. Used in BucketClass to construct data placement policies.
            displayName: Backing Store
            kind: BackingStore
            name: backingstores.noobaa.io
            version: v1alpha1
          - description: Storage target spec such as aws-s3, s3-compatible, ibm-cos
              and more. Used in BucketClass to construct namespace policies.
            displayName: Namespace Store
            kind: NamespaceStore
            name: namespacestores.noobaa.io
            version: v1alpha1
          - description: Storage policy spec  tiering, mirroring, spreading, namespace
              policy. Combines BackingStores Or NamespaceStores. Referenced by ObjectBucketClaims.
            displayName: Bucket Class
            kind: BucketClass
            name: bucketclasses.noobaa.io
            version: v1alpha1
          - kind: NooBaaAccount
            name: noobaaaccounts.noobaa.io
            version: v1alpha1
          - description: Claim a bucket just like claiming a PV. Automate you app
              bucket provisioning by creating OBC with your app deployment. A secret
              and configmap (name=claim) will be created with access details for the
              app pods.
            displayName: Object Bucket Claim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
          - description: Used under-the-hood. Created per ObjectBucketClaim and keeps
              provisioning information.
            displayName: Object Bucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Backup
            kind: Backup
            name: backups.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ClusterImageCatalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Database
            kind: Database
            name: databases.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: FailoverQuorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ImageCatalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Publication
            kind: Publication
            name: publications.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ScheduledBackup
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.noobaa.io
            version: v1
        description: "The noobaa operator creates and reconciles a NooBaa system in
          a Kubernetes/Openshift cluster.\n\nNooBaa provides an S3 object-store service
          abstraction and data placement policies to create hybrid and multi cloud
          data solutions.\n\nFor more information on using NooBaa refer to [Github](https://github.com/noobaa/noobaa-core)
          / [Website](https://www.noobaa.io) / [Articles](https://noobaa.desk.com).
          \n\n## How does it work?\n\n- The operator deploys the noobaa core pod and
          two services - Mgmt (UI/API) and S3 (object-store).\n- Both services require
          credentials which you will get from a secret that the operator creates -
          use describe noobaa to locate it.\n- The service addresses will also appear
          in the describe output - pick the one that is suitable for your client:\n
          \   - minikube - use the NodePort address.\n    - remote cluster - probably
          need one of the External addresses.\n    - connect an application on the
          same cluster - use Internal DNS (though any address should work)\n    \n-
          Feel free to email us or open github issues on any question.\n\n## Getting
          Started\n\n### Notes:\n- The following instructions are for **minikube**
          but it works on any Kubernetes/Openshift clusters.\n- This will setup noobaa
          in the **my-noobaa-operator** namespace.\n- You will need **jq**, **curl**,
          **kubectl** or **oc**, **aws-cli**.\n\n### 1. Install OLM (if you don't
          have it already):\n```\ncurl -sL https://github.com/operator-framework/operator-lifecycle-manager/releases/download/0.12.0/install.sh
          | bash -s 0.12.0\n```\n\n### 2. Install noobaa-operator:\n```\nkubectl create
          -f https://operatorhub.io/install/noobaa-operator.yaml\n```\nWait for it
          to be ready:\n```\nkubectl wait pod -n my-noobaa-operator -l noobaa-operator
          --for=condition=ready\n```\n\n### 3. Create noobaa system:\n```\ncurl -sL
          https://operatorhub.io/api/operator?packageName=noobaa-operator | \n    jq
          '.operator.customResourceDefinitions[0].yamlExample | .metadata.namespace=\"my-noobaa-operator\"'
          |\n    kubectl create -f -\n```\nWait for it to be ready:\n```\nkubectl
          wait pod -n my-noobaa-operator -l noobaa-core --for=condition=ready\nkubectl
          get noobaa -n my-noobaa-operator -w\n# NAME     PHASE   MGMT-ENDPOINTS                  S3-ENDPOINTS
          \                   IMAGE                    AGE\n# noobaa   **Ready**   [https://192.168.64.12:31121]
          \  [https://192.168.64.12:32557]   noobaa/noobaa-core:4.0   19m\n```\n\n###
          4. Get system information to your shell:\n```\nNOOBAA_SECRET=$(kubectl get
          noobaa noobaa -n my-noobaa-operator -o json | jq -r '.status.accounts.admin.secretRef.name'
          )\nNOOBAA_MGMT=$(kubectl get noobaa noobaa -n my-noobaa-operator -o json
          | jq -r '.status.services.serviceMgmt.nodePorts[0]' )\nNOOBAA_S3=$(kubectl
          get noobaa noobaa -n my-noobaa-operator -o json | jq -r '.status.services.serviceS3.nodePorts[0]'
          )\nNOOBAA_ACCESS_KEY=$(kubectl get secret $NOOBAA_SECRET -n my-noobaa-operator
          -o json | jq -r '.data.AWS_ACCESS_KEY_ID|@base64d')\nNOOBAA_SECRET_KEY=$(kubectl
          get secret $NOOBAA_SECRET -n my-noobaa-operator -o json | jq -r '.data.AWS_SECRET_ACCESS_KEY|@base64d')\n```\n\n###
          5. Connect to Mgmt UI:\n```\n# show email/password from the secret:\nkubectl
          get secret $NOOBAA_SECRET -n my-noobaa-operator -o json | jq '.data|map_values(@base64d)'\n\n#
          open mgmt UI login:\nopen $NOOBAA_MGMT\n```\n\n### 6. Connect to S3 with
          aws-cli:\n```\nalias s3='AWS_ACCESS_KEY_ID=$NOOBAA_ACCESS_KEY AWS_SECRET_ACCESS_KEY=$NOOBAA_SECRET_KEY
          aws --endpoint $NOOBAA_S3 --no-verify-ssl s3'\ns3 ls\ns3 sync /var/log/
          s3://first.bucket\ns3 ls s3://first.bucket\n```\n"
        displayName: NooBaa Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - noobaa
        - kubernetes
        - openshift
        - cloud
        - hybrid
        - multi
        - data
        - storage
        - s3
        - tiering
        - mirroring
        links:
        - name: Github
          url: https://github.com/noobaa/noobaa-core
        - name: Website
          url: https://www.noobaa.io
        - name: Articles
          url: https://noobaa.desk.com
        maintainers:
        - email: gmargali@redhat.com
          name: Guy Margalit
        - email: etamir@redhat.com
          name: Eran Tamir
        - email: nbecker@redhat.com
          name: Nimrod Becker
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: NooBaa
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/mcg-operator-bundle@sha256:d93a51ca539c50ee69799913548d4e09c930fcef902dac542def357fac2d8afa
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:ac173cc6724b867a5cd2cec68cb3bab81a431ea11fdbb23810426dff5e531b03
        - registry.redhat.io/odf4/mcg-rhel9-operator@sha256:1b5bb3031e350b8bd96029fc46beb17f7f7100f829555cf4017b2cd7a2fcd67f
        - registry.redhat.io/odf4/odf-cloudnative-pg-rhel9-operator@sha256:3436b32c7d5edb418aa36d048193bb92ba0e5899914d04295e5dfbfc7f267db5
        - registry.redhat.io/odf4/odf-cosi-sidecar-rhel9@sha256:da477c2268fbeb1985538cada189981694589bd6f0c653976ab67a6623d8a8aa
        version: 4.19.9-rhodf
      entries:
      - name: mcg-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: mcg-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: mcg-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: mcg-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: mcg-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: mcg-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: mcg-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: mcg-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: mcg-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: mcg-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: mcg-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[{"kind":"NooBaa","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"noobaa","creationTimestamp":null},"spec":{"cleanupPolicy":{},"security":{"kms":{}},"loadBalancerSourceSubnets":{},"autoscaler":{},"bucketLogging":{},"bucketNotifications":{"enabled":false}},"status":{"lastKeyRotateTime":null}},{"kind":"BackingStore","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"type":""},"status":{"mode":{}}},{"kind":"NamespaceStore","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"type":""},"status":{"mode":{}}},{"kind":"BucketClass","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{},"status":{}},{"kind":"NooBaaAccount","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"allow_bucket_creation":false},"status":{}}]'
          capabilities: Seamless Upgrades
          categories: Storage,Big Data
          certified: "false"
          containerImage: registry.redhat.io/odf4/mcg-rhel9-operator@sha256:2400c5a97946d6d9a057bf14edca386f8bb283adaccfe612c0fb227241699f02
          createdAt: "2019-07-08T13:10:20.940Z"
          description: NooBaa is an object data service for hybrid and multi cloud
            environments.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/infrastructure-features: ֿ'["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/noobaa/noobaa-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A NooBaa system - Create this to start
            displayName: NooBaa
            kind: NooBaa
            name: noobaas.noobaa.io
            version: v1alpha1
          - description: Storage target spec such as aws-s3, s3-compatible, ibm-cos,
              PV's and more. Used in BucketClass to construct data placement policies.
            displayName: Backing Store
            kind: BackingStore
            name: backingstores.noobaa.io
            version: v1alpha1
          - description: Storage target spec such as aws-s3, s3-compatible, ibm-cos
              and more. Used in BucketClass to construct namespace policies.
            displayName: Namespace Store
            kind: NamespaceStore
            name: namespacestores.noobaa.io
            version: v1alpha1
          - description: Storage policy spec  tiering, mirroring, spreading, namespace
              policy. Combines BackingStores Or NamespaceStores. Referenced by ObjectBucketClaims.
            displayName: Bucket Class
            kind: BucketClass
            name: bucketclasses.noobaa.io
            version: v1alpha1
          - kind: NooBaaAccount
            name: noobaaaccounts.noobaa.io
            version: v1alpha1
          - description: Claim a bucket just like claiming a PV. Automate you app
              bucket provisioning by creating OBC with your app deployment. A secret
              and configmap (name=claim) will be created with access details for the
              app pods.
            displayName: Object Bucket Claim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
          - description: Used under-the-hood. Created per ObjectBucketClaim and keeps
              provisioning information.
            displayName: Object Bucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Backup
            kind: Backup
            name: backups.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ClusterImageCatalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Database
            kind: Database
            name: databases.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: FailoverQuorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ImageCatalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Publication
            kind: Publication
            name: publications.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ScheduledBackup
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.noobaa.io
            version: v1
        description: "The noobaa operator creates and reconciles a NooBaa system in
          a Kubernetes/Openshift cluster.\n\nNooBaa provides an S3 object-store service
          abstraction and data placement policies to create hybrid and multi cloud
          data solutions.\n\nFor more information on using NooBaa refer to [Github](https://github.com/noobaa/noobaa-core)
          / [Website](https://www.noobaa.io) / [Articles](https://noobaa.desk.com).
          \n\n## How does it work?\n\n- The operator deploys the noobaa core pod and
          two services - Mgmt (UI/API) and S3 (object-store).\n- Both services require
          credentials which you will get from a secret that the operator creates -
          use describe noobaa to locate it.\n- The service addresses will also appear
          in the describe output - pick the one that is suitable for your client:\n
          \   - minikube - use the NodePort address.\n    - remote cluster - probably
          need one of the External addresses.\n    - connect an application on the
          same cluster - use Internal DNS (though any address should work)\n    \n-
          Feel free to email us or open github issues on any question.\n\n## Getting
          Started\n\n### Notes:\n- The following instructions are for **minikube**
          but it works on any Kubernetes/Openshift clusters.\n- This will setup noobaa
          in the **my-noobaa-operator** namespace.\n- You will need **jq**, **curl**,
          **kubectl** or **oc**, **aws-cli**.\n\n### 1. Install OLM (if you don't
          have it already):\n```\ncurl -sL https://github.com/operator-framework/operator-lifecycle-manager/releases/download/0.12.0/install.sh
          | bash -s 0.12.0\n```\n\n### 2. Install noobaa-operator:\n```\nkubectl create
          -f https://operatorhub.io/install/noobaa-operator.yaml\n```\nWait for it
          to be ready:\n```\nkubectl wait pod -n my-noobaa-operator -l noobaa-operator
          --for=condition=ready\n```\n\n### 3. Create noobaa system:\n```\ncurl -sL
          https://operatorhub.io/api/operator?packageName=noobaa-operator | \n    jq
          '.operator.customResourceDefinitions[0].yamlExample | .metadata.namespace=\"my-noobaa-operator\"'
          |\n    kubectl create -f -\n```\nWait for it to be ready:\n```\nkubectl
          wait pod -n my-noobaa-operator -l noobaa-core --for=condition=ready\nkubectl
          get noobaa -n my-noobaa-operator -w\n# NAME     PHASE   MGMT-ENDPOINTS                  S3-ENDPOINTS
          \                   IMAGE                    AGE\n# noobaa   **Ready**   [https://192.168.64.12:31121]
          \  [https://192.168.64.12:32557]   noobaa/noobaa-core:4.0   19m\n```\n\n###
          4. Get system information to your shell:\n```\nNOOBAA_SECRET=$(kubectl get
          noobaa noobaa -n my-noobaa-operator -o json | jq -r '.status.accounts.admin.secretRef.name'
          )\nNOOBAA_MGMT=$(kubectl get noobaa noobaa -n my-noobaa-operator -o json
          | jq -r '.status.services.serviceMgmt.nodePorts[0]' )\nNOOBAA_S3=$(kubectl
          get noobaa noobaa -n my-noobaa-operator -o json | jq -r '.status.services.serviceS3.nodePorts[0]'
          )\nNOOBAA_ACCESS_KEY=$(kubectl get secret $NOOBAA_SECRET -n my-noobaa-operator
          -o json | jq -r '.data.AWS_ACCESS_KEY_ID|@base64d')\nNOOBAA_SECRET_KEY=$(kubectl
          get secret $NOOBAA_SECRET -n my-noobaa-operator -o json | jq -r '.data.AWS_SECRET_ACCESS_KEY|@base64d')\n```\n\n###
          5. Connect to Mgmt UI:\n```\n# show email/password from the secret:\nkubectl
          get secret $NOOBAA_SECRET -n my-noobaa-operator -o json | jq '.data|map_values(@base64d)'\n\n#
          open mgmt UI login:\nopen $NOOBAA_MGMT\n```\n\n### 6. Connect to S3 with
          aws-cli:\n```\nalias s3='AWS_ACCESS_KEY_ID=$NOOBAA_ACCESS_KEY AWS_SECRET_ACCESS_KEY=$NOOBAA_SECRET_KEY
          aws --endpoint $NOOBAA_S3 --no-verify-ssl s3'\ns3 ls\ns3 sync /var/log/
          s3://first.bucket\ns3 ls s3://first.bucket\n```\n"
        displayName: NooBaa Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - noobaa
        - kubernetes
        - openshift
        - cloud
        - hybrid
        - multi
        - data
        - storage
        - s3
        - tiering
        - mirroring
        links:
        - name: Github
          url: https://github.com/noobaa/noobaa-core
        - name: Website
          url: https://www.noobaa.io
        - name: Articles
          url: https://noobaa.desk.com
        maintainers:
        - email: gmargali@redhat.com
          name: Guy Margalit
        - email: etamir@redhat.com
          name: Eran Tamir
        - email: nbecker@redhat.com
          name: Nimrod Becker
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: NooBaa
        relatedImages:
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:1e1e53d68779e4575ff7958307c61e1341efffc225ccfdc75c2518e8797f0fd7
        - registry.redhat.io/odf4/mcg-rhel9-operator@sha256:2400c5a97946d6d9a057bf14edca386f8bb283adaccfe612c0fb227241699f02
        - registry.redhat.io/odf4/odf-cloudnative-pg-rhel9-operator@sha256:1769b528ed5ff4fcf2d59318ada4d200d545c0f2633e54708e1251f8ab0f9465
        - registry.redhat.io/odf4/odf-cosi-sidecar-rhel9@sha256:f6f1d8f6d783c81b932280cb8d4923ba4b84aefa748d26351d6392c8673d10ee
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/mcg-operator-bundle@sha256:74e59db870df08fcc30a6869451af3a6f5112777ef25bd7de887984ce015bc5c
        version: 4.20.4-rhodf
      entries:
      - name: mcg-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: mcg-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: mcg-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: mcg-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: mcg-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: mcg-operator
    provider:
      name: NooBaa
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-eks-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-eks-controller.v1.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eks.services.k8s.aws/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eks.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eks.services.k8s.aws/v1alpha1",
                "kind": "FargateProfile",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eks.services.k8s.aws/v1alpha1",
                "kind": "Nodegroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/eks-controller:1.11.0
          createdAt: "2025-12-05T02:21:53Z"
          description: AWS EKS controller is a service controller for managing EKS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AccessEntry represents the state of an AWS eks AccessEntry
              resource.
            displayName: AccessEntry
            kind: AccessEntry
            name: accessentries.eks.services.k8s.aws
            version: v1alpha1
          - description: Addon represents the state of an AWS eks Addon resource.
            displayName: Addon
            kind: Addon
            name: addons.eks.services.k8s.aws
            version: v1alpha1
          - description: Capability represents the state of an AWS eks Capability
              resource.
            displayName: Capability
            kind: Capability
            name: capabilities.eks.services.k8s.aws
            version: v1alpha1
          - description: Cluster represents the state of an AWS eks Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.eks.services.k8s.aws
            version: v1alpha1
          - description: FargateProfile represents the state of an AWS eks FargateProfile
              resource.
            displayName: FargateProfile
            kind: FargateProfile
            name: fargateprofiles.eks.services.k8s.aws
            version: v1alpha1
          - description: IdentityProviderConfig represents the state of an AWS eks
              IdentityProviderConfig resource.
            displayName: IdentityProviderConfig
            kind: IdentityProviderConfig
            name: identityproviderconfigs.eks.services.k8s.aws
            version: v1alpha1
          - description: Nodegroup represents the state of an AWS eks Nodegroup resource.
            displayName: Nodegroup
            kind: Nodegroup
            name: nodegroups.eks.services.k8s.aws
            version: v1alpha1
          - description: PodIdentityAssociation represents the state of an AWS eks
              PodIdentityAssociation resource.
            displayName: PodIdentityAssociation
            kind: PodIdentityAssociation
            name: podidentityassociations.eks.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Elastic Kubernetes Service (EKS) resources in AWS from within your Kubernetes cluster.

          **About Amazon EKS**

          Amazon Elastic Kubernetes Service (Amazon EKS) is a managed service that you can use to run Kubernetes on AWS without needing to install, operate, and maintain your own Kubernetes control plane or nodes. Kubernetes is an open-source system for automating the deployment, scaling, and management of containerized applications.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EKS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eks
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EKS Developer Resources
          url: https://aws.amazon.com/eks/getting-started/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: eks maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/eks-controller:1.11.0
        - quay.io/community-operator-pipeline-prod/ack-eks-controller@sha256:c05877fc8fa9a3cfbf8790db8e153d69f18627c020b8a0efeaabc6c7ae21d038
        version: 1.11.0
      entries:
      - name: ack-eks-controller.v1.11.0
        version: 1.11.0
      - name: ack-eks-controller.v1.10.0
        version: 1.10.0
      - name: ack-eks-controller.v1.9.4
        version: 1.9.4
      - name: ack-eks-controller.v1.9.3
        version: 1.9.3
      - name: ack-eks-controller.v1.9.2
        version: 1.9.2
      - name: ack-eks-controller.v1.9.1
        version: 1.9.1
      - name: ack-eks-controller.v1.9.0
        version: 1.9.0
      - name: ack-eks-controller.v1.8.0
        version: 1.8.0
      - name: ack-eks-controller.v1.7.6
        version: 1.7.6
      - name: ack-eks-controller.v1.7.5
        version: 1.7.5
      - name: ack-eks-controller.v1.7.4
        version: 1.7.4
      - name: ack-eks-controller.v1.7.3
        version: 1.7.3
      - name: ack-eks-controller.v1.7.2
        version: 1.7.2
      - name: ack-eks-controller.v1.6.4
        version: 1.6.4
      - name: ack-eks-controller.v1.6.3
        version: 1.6.3
      - name: ack-eks-controller.v1.6.2
        version: 1.6.2
      - name: ack-eks-controller.v1.6.1
        version: 1.6.1
      - name: ack-eks-controller.v1.6.0
        version: 1.6.0
      - name: ack-eks-controller.v1.5.5
        version: 1.5.5
      - name: ack-eks-controller.v1.5.4
        version: 1.5.4
      - name: ack-eks-controller.v1.5.3
        version: 1.5.3
      - name: ack-eks-controller.v1.5.2
        version: 1.5.2
      - name: ack-eks-controller.v1.5.1
        version: 1.5.1
      - name: ack-eks-controller.v1.5.0
        version: 1.5.0
      - name: ack-eks-controller.v1.4.7
        version: 1.4.7
      - name: ack-eks-controller.v1.4.6
        version: 1.4.6
      - name: ack-eks-controller.v1.4.5
        version: 1.4.5
      - name: ack-eks-controller.v1.4.4
        version: 1.4.4
      - name: ack-eks-controller.v1.4.3
        version: 1.4.3
      - name: ack-eks-controller.v1.4.2
        version: 1.4.2
      - name: ack-eks-controller.v1.4.1
        version: 1.4.1
      - name: ack-eks-controller.v1.4.0
        version: 1.4.0
      - name: ack-eks-controller.v1.3.5
        version: 1.3.5
      - name: ack-eks-controller.v1.3.3
        version: 1.3.3
      - name: ack-eks-controller.v1.3.1
        version: 1.3.1
      - name: ack-eks-controller.v1.3.0
        version: 1.3.0
      - name: ack-eks-controller.v1.2.3
        version: 1.2.3
      - name: ack-eks-controller.v1.2.2
        version: 1.2.2
      - name: ack-eks-controller.v1.2.1
        version: 1.2.1
      - name: ack-eks-controller.v1.2.0
        version: 1.2.0
      - name: ack-eks-controller.v1.1.3
        version: 1.1.3
      - name: ack-eks-controller.v1.1.2
        version: 1.1.2
      - name: ack-eks-controller.v1.1.1
        version: 1.1.1
      - name: ack-eks-controller.v1.1.0
        version: 1.1.0
      - name: ack-eks-controller.v1.0.5
        version: 1.0.5
      - name: ack-eks-controller.v1.0.4
        version: 1.0.4
      - name: ack-eks-controller.v1.0.3
        version: 1.0.3
      - name: ack-eks-controller.v1.0.2
        version: 1.0.2
      - name: ack-eks-controller.v1.0.1
        version: 1.0.1
      - name: ack-eks-controller.v1.0.0
        version: 1.0.0
      - name: ack-eks-controller.v0.1.9
        version: 0.1.9
      - name: ack-eks-controller.v0.1.8
        version: 0.1.8
      - name: ack-eks-controller.v0.1.7
        version: 0.1.7
      - name: ack-eks-controller.v0.1.6
        version: 0.1.6
      - name: ack-eks-controller.v0.1.5
        version: 0.1.5
      - name: ack-eks-controller.v0.1.4
        version: 0.1.4
      - name: ack-eks-controller.v0.1.3
        version: 0.1.3
      - name: ack-eks-controller.v0.1.2
        version: 0.1.2
      - name: ack-eks-controller.v0.1.1
        version: 0.1.1
      - name: ack-eks-controller.v0.1.0
        version: 0.1.0
      - name: ack-eks-controller.v0.0.15
        version: 0.0.15
      - name: ack-eks-controller.v0.0.14
        version: 0.0.14
      - name: ack-eks-controller.v0.0.13
        version: 0.0.13
      - name: ack-eks-controller.v0.0.12
        version: 0.0.12
      - name: ack-eks-controller.v0.0.11
        version: 0.0.11
      - name: ack-eks-controller.v0.0.10
        version: 0.0.10
      - name: ack-eks-controller.v0.0.9
        version: 0.0.9
      - name: ack-eks-controller.v0.0.8
        version: 0.0.8
      - name: ack-eks-controller.v0.0.7
        version: 0.0.7
      - name: ack-eks-controller.v0.0.6
        version: 0.0.6
      - name: ack-eks-controller.v0.0.5
        version: 0.0.5
      - name: ack-eks-controller.v0.0.4
        version: 0.0.4
      - name: ack-eks-controller.v0.0.3
        version: 0.0.3
      - name: ack-eks-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-eks-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-elbv2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-elbv2-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.services.k8s.aws/v1alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elbv2.services.k8s.aws/v1alpha1",
                "kind": "LoadBalancer",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elbv2.services.k8s.aws/v1alpha1",
                "kind": "Rule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elbv2.services.k8s.aws/v1alpha1",
                "kind": "TargetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/elbv2-controller:1.2.0
          createdAt: "2025-11-29T05:54:55Z"
          description: AWS ELB controller is a service controller for managing ELB
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Listener represents the state of an AWS elbv2 Listener resource.
            displayName: Listener
            kind: Listener
            name: listeners.elbv2.services.k8s.aws
            version: v1alpha1
          - description: LoadBalancer represents the state of an AWS elbv2 LoadBalancer
              resource.
            displayName: LoadBalancer
            kind: LoadBalancer
            name: loadbalancers.elbv2.services.k8s.aws
            version: v1alpha1
          - description: Rule represents the state of an AWS elbv2 Rule resource.
            displayName: Rule
            kind: Rule
            name: rules.elbv2.services.k8s.aws
            version: v1alpha1
          - description: TargetGroup represents the state of an AWS elbv2 TargetGroup
              resource.
            displayName: TargetGroup
            kind: TargetGroup
            name: targetgroups.elbv2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Elastic Load Balancing (ELB) resources in AWS from within your Kubernetes cluster.

          **About Amazon ELB**

          Elastic Load Balancing automatically distributes your incoming traffic across multiple targets, such as EC2 instances, containers, and IP addresses, in one or more Availability Zones. It monitors the health of its registered targets, and routes traffic only to the healthy targets. Elastic Load Balancing scales your load balancer capacity automatically in response to changes in incoming traffic.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ELB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - elbv2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ELB Developer Resources
          url: https://aws.amazon.com/elasticloadbalancing
        maintainers:
        - email: ack-maintainers@amazon.com
          name: elb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/elbv2-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-elbv2-controller@sha256:908d40fc7c406369ca775a432386649fef9d8ffd09576ba0c9dad30ae2846a18
        version: 1.2.0
      entries:
      - name: ack-elbv2-controller.v1.2.0
        version: 1.2.0
      - name: ack-elbv2-controller.v1.1.3
        version: 1.1.3
      - name: ack-elbv2-controller.v1.1.2
        version: 1.1.2
      - name: ack-elbv2-controller.v1.1.1
        version: 1.1.1
      - name: ack-elbv2-controller.v1.1.0
        version: 1.1.0
      - name: ack-elbv2-controller.v1.0.13
        version: 1.0.13
      - name: ack-elbv2-controller.v1.0.12
        version: 1.0.12
      - name: ack-elbv2-controller.v1.0.10
        version: 1.0.10
      - name: ack-elbv2-controller.v1.0.9
        version: 1.0.9
      - name: ack-elbv2-controller.v1.0.8
        version: 1.0.8
      - name: ack-elbv2-controller.v1.0.7
        version: 1.0.7
      - name: ack-elbv2-controller.v1.0.6
        version: 1.0.6
      - name: ack-elbv2-controller.v1.0.5
        version: 1.0.5
      - name: ack-elbv2-controller.v1.0.4
        version: 1.0.4
      - name: ack-elbv2-controller.v1.0.3
        version: 1.0.3
      - name: ack-elbv2-controller.v1.0.2
        version: 1.0.2
      - name: ack-elbv2-controller.v1.0.1
        version: 1.0.1
      - name: ack-elbv2-controller.v1.0.0
        version: 1.0.0
      - name: ack-elbv2-controller.v0.0.11
        version: 0.0.11
      - name: ack-elbv2-controller.v0.0.10
        version: 0.0.10
      - name: ack-elbv2-controller.v0.0.9
        version: 0.0.9
      - name: ack-elbv2-controller.v0.0.8
        version: 0.0.8
      - name: ack-elbv2-controller.v0.0.6
        version: 0.0.6
      - name: ack-elbv2-controller.v0.0.5
        version: 0.0.5
      - name: ack-elbv2-controller.v0.0.4
        version: 0.0.4
      - name: ack-elbv2-controller.v0.0.3
        version: 0.0.3
      - name: ack-elbv2-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-elbv2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Sonatype
      provider-url: ""
    name: nxiq-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nxiq-operator-certified.v1.197.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonatype.com/v1alpha1",
                "kind": "NexusIQ",
                "metadata": {
                  "name": "example-nexusiq"
                },
                "spec": {
                  "deployment": {
                    "postStart": {
                      "command": null
                    }
                  },
                  "deploymentStrategy": {
                    "type": "Recreate"
                  },
                  "fullnameOverride": "",
                  "imagePullSecrets": [],
                  "ingress": {
                    "annotations": {},
                    "enabled": false,
                    "hosts": [],
                    "path": "/",
                    "tls": []
                  },
                  "iq": {
                    "adminPort": 8071,
                    "applicationPort": 8070,
                    "env": [
                      {
                        "name": "JAVA_OPTS",
                        "value": "-Djava.util.prefs.userRoot=$(SONATYPE_WORK)/javaprefs -Djavax.net.ssl.trustStore=/etc/nexus-iq-server/jks/keystore.jks"
                      }
                    ],
                    "configYaml": {
                      "sonatypeWork": "/sonatype-work",
                      "createSampleData": true,
                      "server": {
                        "adminConnectors": [
                          {
                            "port": 8071,
                            "type": "http"
                          }
                        ],
                        "applicationConnectors": [
                          {
                            "port": 8070,
                            "type": "http"
                          }
                        ],
                        "requestLog": {
                          "appenders": [
                            {
                              "type": "file",
                              "currentLogFilename": "/var/log/nexus-iq-server/request.log",
                              "logFormat": "%clientHost %l %user [%date] \"%requestURL\" %statusCode %bytesSent %elapsedTime \"%header{User-Agent}\"",
                              "archivedLogFilenamePattern": "/var/log/nexus-iq-server/request-%d.log.gz",
                              "archivedFileCount": 50
                            }
                          ]
                        }
                      },
                      "logging": {
                        "level": "DEBUG",
                        "loggers": {
                          "com.sonatype.insight.scan": "INFO",
                          "eu.medsea.mimeutil.MimeUtil2": "INFO",
                          "org.apache.http": "INFO",
                          "org.apache.http.wire": "ERROR",
                          "org.eclipse.birt.report.engine.layout.pdf.font.FontConfigReader": "WARN",
                          "org.eclipse.jetty": "INFO",
                          "org.apache.shiro.web.filter.authc.BasicHttpAuthenticationFilter": "INFO",
                          "com.sonatype.insight.audit": {
                            "appenders": [
                              {
                                "type": "file",
                                "currentLogFilename": "/var/log/nexus-iq-server/audit.log",
                                "archivedLogFilenamePattern": "/var/log/nexus-iq-server/audit-%d.log.gz",
                                "archivedFileCount": 50
                              }
                            ]
                          },
                          "com.sonatype.insight.policy.violation": {
                            "appenders": [
                              {
                                "type": "console",
                                "threshold": "INFO"
                              }
                            ]
                          }
                        },
                        "appenders": [
                          {
                            "type": "console",
                            "threshold": "INFO",
                            "logFormat": "%d{'yyyy-MM-dd HH:mm:ss,SSSZ'} %level [%thread] %X{username} %logger - %msg%n"
                          },
                          {
                            "type": "file",
                            "threshold": "ALL",
                            "logFormat": "%d{'yyyy-MM-dd HH:mm:ss,SSSZ'} %level [%thread] %X{username} %logger - %msg%n",
                            "currentLogFilename": "/var/log/nexus-iq-server/clm-server.log",
                            "archivedLogFilenamePattern": "/var/log/nexus-iq-server/clm-server-%d.log.gz",
                            "archivedFileCount": 50
                          }
                        ]
                      }
                    },
                    "imageName": "registry.connect.redhat.com/sonatype/nexus-iq-server@sha256:b62cf10b73ee069b8c5d166cdb42a7ce08c3410ff7c027b44843840a430b1ca3",
                    "imagePullPolicy": "IfNotPresent",
                    "imagePullSecret": "",
                    "licenseSecret": "",
                    "memory": "1Gi",
                    "name": "nxiq",
                    "certificates": {}
                  },
                  "nameOverride": "",
                  "persistence": {
                    "accessMode": "ReadWriteOnce",
                    "storageSize": "1Gi"
                  },
                  "service": {
                    "annotations": {},
                    "enabled": false,
                    "labels": {},
                    "ports": [
                      {
                        "name": "nexus-service",
                        "port": 80,
                        "targetPort": 80
                      }
                    ]
                  },
                  "serviceAccount": {
                    "create": true,
                    "name": null
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "true"
          containerImage: registry.connect.redhat.com/sonatype/nxiq-operator-certified@sha256:0c302a42c09dc8dfc41f4256eeaa4ee43866c7ac1a28cb4517f06e6b21374c45
          createdAt: "2020-07-20"
          description: |-
            Nexus Lifecycle is an open source governance platform that continuously identifies risk,
            automatically enforces policy, and provides visibility throughout the entire SDLC.
          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.skipRange: <1.197.0-1
          repository: https://github.com/sonatype/operator-iq
          support: Sonatype
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Nexus IQ Server
            displayName: NexusIQ
            kind: NexusIQ
            name: nexusiqs.sonatype.com
            version: v1alpha1
        description: |-
          Nexus Lifecycle is an open source governance platform that continuously identifies risk,
          automatically enforces policy, and provides visibility throughout the entire SDLC.
          Developers leveraging open source require a solution that helps them make safer choices
          while still delivering at DevOps speed.
          Nexus Lifecycle empowers developers and security teams to choose the best components
          and govern open source usage, ensuring organizations continue to innovate with less risk.

          ## Core Capabilities

          * **Dependency Management**:
            Generate a precise software bill of materials for all applications
            to identify open source components and gather contextual direct
            and transitive dependency information for faster action.
          * **One-Click Remediation**:
            Upgrade to the best components and versions based on real-time intelligence.
            Available in your preferred IDE or a GitHub pull request.
          * **Automated Open Source Policy Enforcement**:
            Create custom security, license, and architectural policies based
            on application type or organization and contextually enforce those policies
            across every stage of the SDLC.
          * **Continuous Monitoring**:
            Real-time notifications of newly discovered defects,
            as well as vulnerabilities based on component,
            risk level or application/container affected.

          ## Extras

          * IDE Integrations: Eclipse, IntelliJ, and Visual Studio
          * Source Control Integrations: GitHub, GitLab, and Bitbucket
          * Chrome Browser Extension
          * Red Hat Clair for Container Scanning

          ## Limitations

          This operator will be released on a quarterly basis.

          ## Controlling Automatic vs Manual Update

          If you use the default configuration for the Nexus IQ Operator installation,
          please notice that on any new operator release, the corresponding deployments are
          also updated without user intervention, resulting in unscheduled downtime.

          If you want to avoid this unscheduled downtime, we recommend installing the operator
          into **its own namespace** with **manual approval** for updates.

          ## Usage

          Once the server instance is created by the operator and running,
          you'll want to expose the service as you see fit:
          1. Create a Route to the new service for iq.applicationPort (8070).
          2. Visit the URL provided by the Route, login, and set new credentials.
            The default credentials are `admin`/`admin123`.

          The Nexus IQ Server can be further configured via the NexusIQ custom resource definition:

          | Parameter            | Description                                                  | Default           |
          | -------------------- | ------------------------------------------------------------ | ----------------- |
          | `iq.applicationPort` | Port of the application connector. Must match the value in the `configYaml` property | `8070`            |
          | `iq.adminPort`       | Port of the application connector. Must match the value in the `configYaml` property | `8071`            |
          | `iq.memory`          | The amount of RAM to allocate                                | `1Gi`             |
          | `iq.env`             | Customize the server environment, including `JAVA_OPTS`      | See example YAML show when ceating a NexusIQ. |
          | `iq.licenseSecret`   | The base-64 encoded license file to be installed at startup  | `""`              |
          | `iq.configYaml`      | A YAML block which will be used as a configuration block for IQ Server. | See example YAML shown when creating a NexusIQ. |
          | `iq.certificates`   | Add your own certificates for your own trusted Certificate Authorities with names and plain armored text. | `{}` |
          | `ingress.enabled`                           | Create an ingress for Nexus         | `true`                                  |
          | `ingress.annotations`                       | Annotations to enhance ingress configuration  | `{}`                          |
          | `ingress.tls.enabled`                       | Enable TLS                          | `true`                                 |
          | `ingress.tls.secretName`                    | Name of the secret storing TLS cert, `false` to use the Ingress' default certificate | `nexus-tls`                             |
          | `ingress.path`                              | Path for ingress rules. GCP users should set to `/*` | `/`                    |
          | `deploymentStrategy.type`                   | Deployment Strategy                 |  `Recreate` |
          | `initContainers`                            | Containers to run before starting the server | `nil` |
          | `deployment.postStart.command`              | Command to run after starting the IQ Server container  | `nil`                    |
          | `deployment.terminationGracePeriodSeconds` | Time to allow for clean shutdown                        | 120                      |
          | `persistence.storageClass` | The provisioner class                        | `-` (disables dynamic provisioning)            |
          | `persistence.storageSize` | The amount of drive space to allocate                        | `1Gi`             |
          | `persistence.accessMode` | Default access mode                        | `ReadWriteOnce`             |
          | `persistence.volumeConfiguration` | A YAML block to configure the persistent volume type. Defaults to `hostPath` which should not be used in production | `hostPath`             |

          ## Configuring IQ Server

          You can define the `config.yml` for IQ Server in your CRD on startup.
          It is the `iq.configYaml` property. For more details, see the [Configuring IQ Server](https://help.sonatype.com/iqserver/configuring) help page.

          ## Installing the License

          The license file can be installed via the UI when IQ server is running, or it can be done as a part of the deploy.
          If you leave the `licenseFile` field empty/commented, IQ Server will start and prompt you to manually install the license
          when you first enter the GUI.

          ### Installing the License Automatically
          To do it automatically, first encode your `.lic` file in Base 64 with no line breaks, eg:

          ```bash
          base64 --wrap=0 mylicense.lic > lic.base64
          ```

          Then add this value to your CRD file as `iq.licenseSecret`, eg:

          ```yaml
          iq:
            licenseSecret: bXkgc2FtcGxlIGxpY2Vuc2U=
          ```

          Specify the `licenseFile` path in `iq.configYaml` as:

          ```yaml
          iq:
            configYaml:
              sonatypeWork: /sonatype-work
              createSampleData: true
              # add this line and the `licenseSecret` above to autoconfigure licensing
              licenseFile: /etc/nexus-iq-license/license_lic
              server:
                applicationConnectors:
                  - type: http
                    port: 8070
                adminConnectors:
                  - type: http
                    port: 8071
          ```

          ## Adding Certificates for Your Own Trusted Certificate Authorities

          Specify a set of certificates to be imported into the Java trust store
          of the running IQ Server. More than one certificate can be provided.

          ```yaml
          iq:
            certificates:
              my-company-cert: |
                -----BEGIN CERTIFICATE-----
                ...
                -----END CERTIFICATE-----
          ```

          ## Running Commands Before Initialization of the Server

          If you need custom initialization, you can use standard Kubernetes
          [`initContainers`](https://kubernetes.io/docs/concepts/workloads/pods/init-containers/)
          to run any series of containers and commands you need.

          ```yaml
          initContainers:
            - name: an-init-container
              image: busybox:1.28
              command: ['/bin/sh', '-c', 'echo "initializing"']
          ```
        displayName: Nexus IQ Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - sonatype
        - licensing
        - policy
        - components
        links:
        - name: Nexus Lifecycle
          url: https://www.sonatype.com/product-nexus-lifecycle
        maintainers:
        - email: support@sonaype.com
          name: Sonatype
        maturity: stable
        provider:
          name: Sonatype
        relatedImages:
        - registry.connect.redhat.com/sonatype/nexus-iq-server@sha256:b62cf10b73ee069b8c5d166cdb42a7ce08c3410ff7c027b44843840a430b1ca3
        - registry.connect.redhat.com/sonatype/nxiq-operator-bundle@sha256:3240bf7c3b0441192ed5cbd3cc5715e6e76605f4f42176876421daa008b5044f
        - registry.connect.redhat.com/sonatype/nxiq-operator-certified@sha256:0c302a42c09dc8dfc41f4256eeaa4ee43866c7ac1a28cb4517f06e6b21374c45
        version: 1.197.0-1
      entries:
      - name: nxiq-operator-certified.v1.197.0-1
        version: 1.197.0-1
      name: stable
    defaultChannel: stable
    packageName: nxiq-operator-certified
    provider:
      name: Sonatype
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Confluent, Inc.
      provider-url: https://confluent.io
    name: confluent-for-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: confluent-for-kubernetes.v3.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "CMFRestClass",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "cmfrestclass-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": null
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ClusterLink",
                "metadata": {
                  "name": "clusterlink-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "aclFilters": [
                    {
                      "accessFilter": {
                        "host": "example.com",
                        "operation": "read",
                        "permissionType": "allow",
                        "principal": "User:Bob"
                      },
                      "resourceFilter": {
                        "name": "coffee",
                        "patternType": "prefixed",
                        "resourceType": "topic"
                      }
                    }
                  ],
                  "configs": {
                    "connections.max.idle.ms": "620000"
                  },
                  "consumerGroupFilters": [
                    {
                      "filterType": "INCLUDE",
                      "name": "filter-example",
                      "patternType": "LITERAL"
                    }
                  ],
                  "destinationKafkaCluster": {
                    "kafkaRestClassRef": {
                      "name": "krc-example"
                    }
                  },
                  "sourceKafkaCluster": {
                    "bootstrapEndpoint": "example.com:9092",
                    "clusterID": "test_kafka_cluster_id"
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ConfluentRolebinding",
                "metadata": {
                  "name": "cfrb-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "clustersScopeByIds": {
                    "schemaRegistryClusterId": "id_schemaregistry_confluent"
                  },
                  "kafkaRestClassRef": {
                    "name": "default"
                  },
                  "principal": {
                    "name": "user-example",
                    "type": "user"
                  },
                  "role": "SecurityAdmin"
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Connect",
                "metadata": {
                  "name": "connect-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "connect-basic-example"
                    },
                    "type": "basic"
                  },
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-server-connect:8.0.3",
                    "init": "confluentinc/confluent-init-container-operator"
                  },
                  "replicas": 2,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Connector",
                "metadata": {
                  "name": "connector-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSinkConnector",
                  "configs": {
                    "file": "/tmp/test.txt",
                    "topics": "test-topic"
                  },
                  "connectClusterRef": {
                    "name": "connect",
                    "namespace": "confluent"
                  },
                  "connectRest": {
                    "authentication": {
                      "secretRef": "basic-credential-example",
                      "type": "basic"
                    }
                  },
                  "restartPolicy": {
                    "maxRetry": 20,
                    "type": "OnFailure"
                  },
                  "taskMax": 4
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ControlCenter",
                "metadata": {
                  "name": "controlcenter-ng-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "controlcenter-basic-example"
                    },
                    "type": "basic"
                  },
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "alertManagerClient": {
                      "url": "http://controlcenter-next-gen.confluent.svc.cluster.local:9093"
                    },
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071"
                    },
                    "prometheusClient": {
                      "url": "http://controlcenter-next-gen.confluent.svc.cluster.local:9090"
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-enterprise-control-center-next-gen:2.2.0",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "replicas": 1,
                  "services": {
                    "alertmanager": {
                      "image": "confluentinc/cp-enterprise-alertmanager:2.2.0"
                    },
                    "prometheus": {
                      "image": "confluentinc/cp-enterprise-prometheus:2.2.0",
                      "pvc": {
                        "dataVolumeCapacity": "10Gi"
                      }
                    }
                  },
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "FlinkApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "flinkapplication-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": null
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "FlinkEnvironment",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "flinkenvironment-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": null
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KRaftController",
                "metadata": {
                  "name": "kraftcontroller-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10G",
                  "image": {
                    "application": "confluentinc/cp-server:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "listeners": {
                    "controller": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential"
                        },
                        "type": "plain"
                      },
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KRaftMigrationJob",
                "metadata": {
                  "name": "kraft-migration-job",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kRaftController": {
                      "name": "kraftcontroller",
                      "namespace": "confluent"
                    },
                    "kafka": {
                      "name": "kafka",
                      "namespace": "confluent"
                    },
                    "zookeeper": {
                      "name": "zookeeper",
                      "namespace": "confluent"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Kafka",
                "metadata": {
                  "name": "kafka-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "zookeeper": {
                      "endpoint": "zookeeper.confluent.svc.cluster.local:2181"
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-server:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "listeners": {
                    "internal": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaRestClass",
                "metadata": {
                  "name": "krc-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "kafkaClusterRef": {
                    "name": "kafka",
                    "namespace": "confluent"
                  },
                  "kafkaRest": {
                    "authentication": {
                      "bearer": {
                        "secretRef": "rest-credential-example"
                      },
                      "type": "bearer"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaRestProxy",
                "metadata": {
                  "name": "krp-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-kafka-rest:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "topic-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "configs": {
                    "cleanup.policy": "compact"
                  },
                  "kafkaClusterRef": {
                    "name": "kafka",
                    "namespace": "confluent"
                  },
                  "partitionCount": 12,
                  "replicas": 1
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KsqlDB",
                "metadata": {
                  "name": "ksqldb-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "ksqldb-basic-example"
                    },
                    "type": "basic"
                  },
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-ksqldb-server:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "replicas": 2,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Schema",
                "metadata": {
                  "name": "schema-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "data": {
                    "configRef": "schema-config",
                    "format": "avro"
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "SchemaExporter",
                "metadata": {
                  "name": "schemaexporter-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "contextName": "mycustom",
                  "destinationCluster": {
                    "schemaRegistryClusterRef": {
                      "name": "schemaregistry",
                      "namespace": "destination"
                    }
                  },
                  "sourceCluster": {
                    "schemaRegistryClusterRef": {
                      "name": "schemaregistry",
                      "namespace": "source"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "SchemaRegistry",
                "metadata": {
                  "name": "schemaregistry-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-schema-registry:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "replicas": 1,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Streaming & Messaging
          containerImage: docker.io/confluentinc/confluent-operator@sha256:fedcd7decc5cccca5454feb56edc9e28323d2696a6215faa755cd9e0565b204e
          createdAt: "2025-12-09T10:17:15Z"
          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: "true"
          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.skipRange: '>=2.11.0 <3.0.0'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Confluent Platform License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Confluent, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterLink is the schema for the ClusterLink API.
            displayName: Cluster Link
            kind: ClusterLink
            name: clusterlinks.platform.confluent.io
            version: v1beta1
          - description: CMFRestClass is the Schema for the cmfrestclasses API
            displayName: CMFRest Class
            kind: CMFRestClass
            name: cmfrestclasses.platform.confluent.io
            version: v1beta1
          - description: ConfluentRolebinding is the schema for the ConfluentRolebinding
              API.
            displayName: Confluent Rolebinding
            kind: ConfluentRolebinding
            name: confluentrolebindings.platform.confluent.io
            version: v1beta1
          - description: Connector is the schema for the Connector API.
            displayName: Connector
            kind: Connector
            name: connectors.platform.confluent.io
            version: v1beta1
          - description: Connect is the schema for the Connect API.
            displayName: Connect
            kind: Connect
            name: connects.platform.confluent.io
            version: v1beta1
          - description: ControlCenter is the schema for the Control Center API.
            displayName: Control Center
            kind: ControlCenter
            name: controlcenters.platform.confluent.io
            version: v1beta1
          - description: FlinkApplication is the Schema for the flinkapplications
              API
            displayName: Flink Application
            kind: FlinkApplication
            name: flinkapplications.platform.confluent.io
            version: v1beta1
          - description: FlinkEnvironment is the Schema for the flinkenvironments
              API
            displayName: Flink Environment
            kind: FlinkEnvironment
            name: flinkenvironments.platform.confluent.io
            version: v1beta1
          - description: KafkaRestClass is the schema for the Kafka REST API.
            displayName: Kafka Rest Class
            kind: KafkaRestClass
            name: kafkarestclasses.platform.confluent.io
            version: v1beta1
          - description: KafkaRestProxy is the schema for the Kafka REST Proxy API.
            displayName: Kafka Rest Proxy
            kind: KafkaRestProxy
            name: kafkarestproxies.platform.confluent.io
            version: v1beta1
          - description: Kafka is the schema for the Kafka API.
            displayName: Kafka
            kind: Kafka
            name: kafkas.platform.confluent.io
            version: v1beta1
          - description: KafkaTopic is the schema for the Kafka Topic API.
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.platform.confluent.io
            version: v1beta1
          - description: KRaftController is the schema for the KRaft Controller API.
            displayName: KRaft Controller
            kind: KRaftController
            name: kraftcontrollers.platform.confluent.io
            version: v1beta1
          - description: KRaftMigrationJob is the schema for the KRaftMigrationJob
              API.
            displayName: KRaft Migration Job
            kind: KRaftMigrationJob
            name: kraftmigrationjobs.platform.confluent.io
            version: v1beta1
          - description: KsqlDB is the schema for the ksqlDB API.
            displayName: Ksql DB
            kind: KsqlDB
            name: ksqldbs.platform.confluent.io
            version: v1beta1
          - description: SchemaExporter is the schema for the SchemaExporter API.
            displayName: Schema Exporter
            kind: SchemaExporter
            name: schemaexporters.platform.confluent.io
            version: v1beta1
          - description: SchemaRegistry is the schema for the Schema Registry API.
            displayName: Schema Registry
            kind: SchemaRegistry
            name: schemaregistries.platform.confluent.io
            version: v1beta1
          - displayName: Schema
            kind: Schema
            name: schemas.platform.confluent.io
            version: v1beta1
          - description: Zookeeper is the schema for the Zookeeper API.
            displayName: Zookeeper
            kind: Zookeeper
            name: zookeepers.platform.confluent.io
            version: v1beta1
        description: Confluent for Kubernetes (CFK) is a cloud-native control plane
          for deploying and managing Confluent in your private cloud environment.
          It provides standard and simple interface to customize, deploy, and manage
          Confluent Platform through declarative API.Confluent for Kubernetes runs
          on Kubernetes, the runtime for private cloud architectures.
        displayName: Confluent for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Confluent
        - Kafka
        - Kubernetes
        - Private Cloud
        - Cloud-Native
        - Event Streaming
        - Data in Motion
        links:
        - name: Documentation
          url: https://docs.confluent.io/operator/current/overview.html
        - name: Examples and Tutorials
          url: https://github.com/confluentinc/confluent-kubernetes-examples
        - name: Product Overview (Blog)
          url: https://www.confluent.io/blog/confluent-for-kubernetes-offers-cloud-native-kafka-automation/
        maintainers:
        - email: confluent-private-cloud-team@confluent.io
          name: Confluent Private Cloud team
        maturity: stable
        provider:
          name: Confluent, Inc.
          url: https://confluent.io
        relatedImages:
        - docker.io/confluentinc/cp-server@sha256:4f1437345c62a9968d734310ac46e6cc2f2a2d999d2fe92eaaa22f85866729d6
        - docker.io/confluentinc/confluent-init-container@sha256:f63b312bad0428928f60b65d0b8017c35ebc500b85afaf62437f4073184e3e91
        - registry.connect.redhat.com/confluentinc/confluent-for-kubernetes-v2@sha256:cc7bf94454d98bdb7425508d2e11056fb8c8cd2c2c3a5a38678d941fe2c2e388
        - confluentinc/confluent-operator@sha256:fedcd7decc5cccca5454feb56edc9e28323d2696a6215faa755cd9e0565b204e
        - docker.io/confluentinc/cp-enterprise-control-center-next-gen@sha256:6378a0174433685ee52a7fe2e48424d3f598827ed2a5570ec74b916102485e0d
        - docker.io/confluentinc/cp-enterprise-prometheus@sha256:db0989ef9859dbc88bc59f9b8ade86f2ba13e9dc36533e654566218328e5ff57
        - docker.io/confluentinc/cp-kafka-rest@sha256:7d3e6f31bfa187058a01cb93bc5225755cd9f10d3ef4926e73a391178747594c
        - docker.io/confluentinc/cp-ksqldb-server@sha256:fadc1ff1f88a4cd81cce912be414ead7c53d8a2d8a526f68e431e09f534afee0
        - docker.io/confluentinc/cp-schema-registry@sha256:c05a05ceb4e2ac9c55231f66597d2d679b57002a9b38617e7cbcce8e64ffac09
        - docker.io/confluentinc/confluent-operator@sha256:fedcd7decc5cccca5454feb56edc9e28323d2696a6215faa755cd9e0565b204e
        - docker.io/confluentinc/cp-enterprise-alertmanager@sha256:fcce6f5311c26cd58427a039530a9f8dfd009249ff5a519694aa945d34502252
        - docker.io/confluentinc/cp-server-connect@sha256:3a3c99ee71de410299d81ed1fa580ab64c73e3660dbd5fe9e2a02275bbc58a7a
        version: 3.0.2
      entries:
      - name: confluent-for-kubernetes.v3.0.2
        version: 3.0.2
      name: "3.0"
    - currentCSV: confluent-for-kubernetes.v3.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "CMFRestClass",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "cmfrestclass-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": null
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ClusterLink",
                "metadata": {
                  "name": "clusterlink-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "aclFilters": [
                    {
                      "accessFilter": {
                        "host": "example.com",
                        "operation": "read",
                        "permissionType": "allow",
                        "principal": "User:Bob"
                      },
                      "resourceFilter": {
                        "name": "coffee",
                        "patternType": "prefixed",
                        "resourceType": "topic"
                      }
                    }
                  ],
                  "configs": {
                    "connections.max.idle.ms": "620000"
                  },
                  "consumerGroupFilters": [
                    {
                      "filterType": "INCLUDE",
                      "name": "filter-example",
                      "patternType": "LITERAL"
                    }
                  ],
                  "destinationKafkaCluster": {
                    "kafkaRestClassRef": {
                      "name": "krc-example"
                    }
                  },
                  "sourceKafkaCluster": {
                    "bootstrapEndpoint": "example.com:9092",
                    "clusterID": "test_kafka_cluster_id"
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ConfluentRolebinding",
                "metadata": {
                  "name": "cfrb-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "clustersScopeByIds": {
                    "schemaRegistryClusterId": "id_schemaregistry_confluent"
                  },
                  "kafkaRestClassRef": {
                    "name": "default"
                  },
                  "principal": {
                    "name": "user-example",
                    "type": "user"
                  },
                  "role": "SecurityAdmin"
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Connect",
                "metadata": {
                  "name": "connect-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "connect-basic-example"
                    },
                    "type": "basic"
                  },
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-server-connect:8.1.1",
                    "init": "confluentinc/confluent-init-container-operator"
                  },
                  "replicas": 2,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Connector",
                "metadata": {
                  "name": "connector-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSinkConnector",
                  "configs": {
                    "file": "/tmp/test.txt",
                    "topics": "test-topic"
                  },
                  "connectClusterRef": {
                    "name": "connect",
                    "namespace": "confluent"
                  },
                  "connectRest": {
                    "authentication": {
                      "secretRef": "basic-credential-example",
                      "type": "basic"
                    }
                  },
                  "restartPolicy": {
                    "maxRetry": 20,
                    "type": "OnFailure"
                  },
                  "taskMax": 4
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ControlCenter",
                "metadata": {
                  "name": "controlcenter-ng-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "controlcenter-basic-example"
                    },
                    "type": "basic"
                  },
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "alertManagerClient": {
                      "url": "http://controlcenter-next-gen.confluent.svc.cluster.local:9093"
                    },
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071"
                    },
                    "prometheusClient": {
                      "url": "http://controlcenter-next-gen.confluent.svc.cluster.local:9090"
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-enterprise-control-center-next-gen:2.2.0",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 1,
                  "services": {
                    "alertmanager": {
                      "image": "confluentinc/cp-enterprise-alertmanager:2.2.0"
                    },
                    "prometheus": {
                      "image": "confluentinc/cp-enterprise-prometheus:2.2.0",
                      "pvc": {
                        "dataVolumeCapacity": "10Gi"
                      }
                    }
                  },
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "FlinkApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "flinkapplication-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "cmfRestClassRef": {
                    "name": "default",
                    "namespace": "operator"
                  },
                  "flinkConfiguration": {
                    "metrics.reporter.prom.factory.class": "org.apache.flink.metrics.prometheus.PrometheusReporterFactory",
                    "metrics.reporter.prom.port": "9249-9250",
                    "rest.profiling.enabled": "true",
                    "taskmanager.numberOfTaskSlots": "2"
                  },
                  "flinkEnvironment": "flinkenvironment-sample",
                  "flinkVersion": "v1_19",
                  "image": "confluentinc/cp-flink:1.19.1-cp1",
                  "job": {
                    "jarURI": "local:///opt/flink/examples/streaming/StateMachineExample.jar",
                    "parallelism": 3,
                    "state": "running",
                    "upgradeMode": "stateless"
                  },
                  "jobManager": {
                    "resource": {
                      "cpu": 1,
                      "memory": "1048m"
                    }
                  },
                  "serviceAccount": "flink",
                  "taskManager": {
                    "resource": {
                      "cpu": 1,
                      "memory": "1048m"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "FlinkEnvironment",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "flinkenvironment-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "cmfRestClassRef": {
                    "name": "default",
                    "namespace": "operator"
                  },
                  "flinkApplicationDefaults": {
                    "metadata": {
                      "annotations": {
                        "fmc.platform.confluent.io/intra-cluster-ssl": "false"
                      }
                    },
                    "spec": {
                      "flinkConfiguration": {
                        "taskmanager.numberOfTaskSlots": "2"
                      }
                    }
                  },
                  "kubernetesNamespace": "default"
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Gateway",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "confluent-gateway",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "image": {
                    "application": "confluentinc/cpc-gateway:1.0.0",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 3,
                  "routes": [
                    {
                      "brokerIdentificationStrategy": {
                        "pattern": "broker{nodeId}.gw.mycompany.com:9092",
                        "type": "host"
                      },
                      "endpoint": "payments_authorization.gw.mycompany.com:9092",
                      "name": "payments_authorization",
                      "security": {
                        "auth": "passthrough",
                        "client": {
                          "tls": {
                            "secretRef": "tls-certs"
                          }
                        }
                      },
                      "streamingDomain": {
                        "bootstrapServerId": "payments_SASL_SSL",
                        "name": "payments"
                      }
                    },
                    {
                      "brokerIdentificationStrategy": {
                        "type": "port"
                      },
                      "endpoint": "orders_notification.gw.mycompany.com:9092",
                      "name": "orders_notification",
                      "security": {
                        "auth": "passthrough"
                      },
                      "streamingDomain": {
                        "bootstrapServerId": "orders_SASL_PLAINTEXT",
                        "name": "orders"
                      }
                    }
                  ],
                  "streamingDomains": [
                    {
                      "kafkaCluster": {
                        "bootstrapServers": [
                          {
                            "endpoint": "SASL_SSL://payments-kafka0.mycompany.com:9092",
                            "id": "payments_SASL_SSL",
                            "tls": {
                              "secretRef": "tls-certs-1"
                            }
                          }
                        ]
                      },
                      "name": "payments",
                      "type": "kafka"
                    },
                    {
                      "kafkaCluster": {
                        "bootstrapServers": [
                          {
                            "endpoint": "SASL_PLAINTEXT://orders-kafka0.mycompany.com:9090",
                            "id": "orders_SASL_PLAINTEXT"
                          }
                        ],
                        "nodeIdRanges": [
                          {
                            "end": 2,
                            "name": "pool-1",
                            "start": 0
                          },
                          {
                            "end": 7,
                            "name": "pool-2",
                            "start": 5
                          }
                        ]
                      },
                      "name": "orders",
                      "type": "kafka"
                    }
                  ]
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KRaftController",
                "metadata": {
                  "name": "kraftcontroller-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10G",
                  "image": {
                    "application": "confluentinc/cp-server:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "listeners": {
                    "controller": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential"
                        },
                        "type": "plain"
                      },
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KRaftMigrationJob",
                "metadata": {
                  "name": "kraft-migration-job",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kRaftController": {
                      "name": "kraftcontroller",
                      "namespace": "confluent"
                    },
                    "kafka": {
                      "name": "kafka",
                      "namespace": "confluent"
                    },
                    "zookeeper": {
                      "name": "zookeeper",
                      "namespace": "confluent"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Kafka",
                "metadata": {
                  "name": "kafka-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "zookeeper": {
                      "endpoint": "zookeeper.confluent.svc.cluster.local:2181"
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-server:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "listeners": {
                    "internal": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaRestClass",
                "metadata": {
                  "name": "krc-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "kafkaClusterRef": {
                    "name": "kafka",
                    "namespace": "confluent"
                  },
                  "kafkaRest": {
                    "authentication": {
                      "bearer": {
                        "secretRef": "rest-credential-example"
                      },
                      "type": "bearer"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaRestProxy",
                "metadata": {
                  "name": "krp-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-kafka-rest:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "topic-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "configs": {
                    "cleanup.policy": "compact"
                  },
                  "kafkaClusterRef": {
                    "name": "kafka",
                    "namespace": "confluent"
                  },
                  "partitionCount": 12,
                  "replicas": 1
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KsqlDB",
                "metadata": {
                  "name": "ksqldb-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "ksqldb-basic-example"
                    },
                    "type": "basic"
                  },
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-ksqldb-server:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 2,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Schema",
                "metadata": {
                  "name": "schema-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "data": {
                    "configRef": "schema-config",
                    "format": "avro"
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "SchemaExporter",
                "metadata": {
                  "name": "schemaexporter-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "contextName": "mycustom",
                  "destinationCluster": {
                    "schemaRegistryClusterRef": {
                      "name": "schemaregistry",
                      "namespace": "destination"
                    }
                  },
                  "sourceCluster": {
                    "schemaRegistryClusterRef": {
                      "name": "schemaregistry",
                      "namespace": "source"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "SchemaRegistry",
                "metadata": {
                  "name": "schemaregistry-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-schema-registry:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 1,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "USMAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "usmagent-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "credential"
                    },
                    "type": "basic"
                  },
                  "confluentCloudClient": {
                    "authentication": {
                      "basic": {
                        "secretRef": "ccloud-credential"
                      },
                      "type": "basic"
                    },
                    "endpoint": "\u003cfrontdoor_url\u003e",
                    "environmentId": "\u003cenv_id\u003e"
                  },
                  "image": {
                    "application": "confluentinc/cp-usm-agent:1.0.0",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 1
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Zookeeper",
                "metadata": {
                  "name": "zookeeper-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10Gi",
                  "image": {
                    "application": "confluentinc/cp-zookeeper",
                    "init": "confluentinc/confluent-init-container"
                  },
                  "logVolumeCapacity": "10Gi",
                  "replicas": 3
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Streaming & Messaging
          containerImage: docker.io/confluentinc/confluent-operator@sha256:c430b476e80e29fce6f3c2827fee1e28ba7aadeca903815c4329af984ff18b8f
          createdAt: "2025-12-09T11:48:55Z"
          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: "true"
          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.skipRange: '>=3.0.0 <3.1.0'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Confluent Platform License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Confluent, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterLink is the schema for the ClusterLink API.
            displayName: Cluster Link
            kind: ClusterLink
            name: clusterlinks.platform.confluent.io
            version: v1beta1
          - description: CMFRestClass is the Schema for the cmfrestclasses API
            displayName: CMFRest Class
            kind: CMFRestClass
            name: cmfrestclasses.platform.confluent.io
            version: v1beta1
          - description: ConfluentRolebinding is the schema for the ConfluentRolebinding
              API.
            displayName: Confluent Rolebinding
            kind: ConfluentRolebinding
            name: confluentrolebindings.platform.confluent.io
            version: v1beta1
          - description: Connector is the schema for the Connector API.
            displayName: Connector
            kind: Connector
            name: connectors.platform.confluent.io
            version: v1beta1
          - description: Connect is the schema for the Connect API.
            displayName: Connect
            kind: Connect
            name: connects.platform.confluent.io
            version: v1beta1
          - description: ControlCenter is the schema for the Control Center API.
            displayName: Control Center
            kind: ControlCenter
            name: controlcenters.platform.confluent.io
            version: v1beta1
          - description: FlinkApplication is the Schema for the flinkapplications
              API
            displayName: Flink Application
            kind: FlinkApplication
            name: flinkapplications.platform.confluent.io
            version: v1beta1
          - description: FlinkEnvironment is the Schema for the flinkenvironments
              API
            displayName: Flink Environment
            kind: FlinkEnvironment
            name: flinkenvironments.platform.confluent.io
            version: v1beta1
          - description: Gateway is the Schema for the gateways API
            displayName: Gateway
            kind: Gateway
            name: gateways.platform.confluent.io
            version: v1beta1
          - description: KafkaRestClass is the schema for the Kafka REST API.
            displayName: Kafka Rest Class
            kind: KafkaRestClass
            name: kafkarestclasses.platform.confluent.io
            version: v1beta1
          - description: KafkaRestProxy is the schema for the Kafka REST Proxy API.
            displayName: Kafka Rest Proxy
            kind: KafkaRestProxy
            name: kafkarestproxies.platform.confluent.io
            version: v1beta1
          - description: Kafka is the schema for the Kafka API.
            displayName: Kafka
            kind: Kafka
            name: kafkas.platform.confluent.io
            version: v1beta1
          - description: KafkaTopic is the schema for the Kafka Topic API.
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.platform.confluent.io
            version: v1beta1
          - description: KRaftController is the schema for the KRaft Controller API.
            displayName: KRaft Controller
            kind: KRaftController
            name: kraftcontrollers.platform.confluent.io
            version: v1beta1
          - description: KRaftMigrationJob is the schema for the KRaftMigrationJob
              API.
            displayName: KRaft Migration Job
            kind: KRaftMigrationJob
            name: kraftmigrationjobs.platform.confluent.io
            version: v1beta1
          - description: KsqlDB is the schema for the ksqlDB API.
            displayName: Ksql DB
            kind: KsqlDB
            name: ksqldbs.platform.confluent.io
            version: v1beta1
          - description: SchemaExporter is the schema for the SchemaExporter API.
            displayName: Schema Exporter
            kind: SchemaExporter
            name: schemaexporters.platform.confluent.io
            version: v1beta1
          - kind: SchemaImporter
            name: schemaimporters.platform.confluent.io
            version: v1beta1
          - description: SchemaRegistry is the schema for the Schema Registry API.
            displayName: Schema Registry
            kind: SchemaRegistry
            name: schemaregistries.platform.confluent.io
            version: v1beta1
          - displayName: Schema
            kind: Schema
            name: schemas.platform.confluent.io
            version: v1beta1
          - description: USMAgent is the Schema for the usmagents API
            displayName: USMAgent
            kind: USMAgent
            name: usmagents.platform.confluent.io
            version: v1beta1
          - description: Zookeeper is the schema for the Zookeeper API.
            displayName: Zookeeper
            kind: Zookeeper
            name: zookeepers.platform.confluent.io
            version: v1beta1
        description: Confluent for Kubernetes (CFK) is a cloud-native control plane
          for deploying and managing Confluent in your private cloud environment.
          It provides standard and simple interface to customize, deploy, and manage
          Confluent Platform through declarative API.Confluent for Kubernetes runs
          on Kubernetes, the runtime for private cloud architectures.
        displayName: Confluent for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Confluent
        - Kafka
        - Kubernetes
        - Private Cloud
        - Cloud-Native
        - Event Streaming
        - Data in Motion
        links:
        - name: Documentation
          url: https://docs.confluent.io/operator/current/overview.html
        - name: Examples and Tutorials
          url: https://github.com/confluentinc/confluent-kubernetes-examples
        - name: Product Overview (Blog)
          url: https://www.confluent.io/blog/confluent-for-kubernetes-offers-cloud-native-kafka-automation/
        maintainers:
        - email: confluent-private-cloud-team@confluent.io
          name: Confluent Private Cloud team
        maturity: stable
        provider:
          name: Confluent, Inc.
          url: https://confluent.io
        relatedImages:
        - docker.io/confluentinc/cp-enterprise-control-center-next-gen@sha256:6378a0174433685ee52a7fe2e48424d3f598827ed2a5570ec74b916102485e0d
        - docker.io/confluentinc/cp-usm-agent@sha256:28cb42bc59ae9d584059bd8b958dd62d5ad99aa8fc0ee36560d6fd3e129f631b
        - docker.io/confluentinc/cp-enterprise-alertmanager@sha256:fcce6f5311c26cd58427a039530a9f8dfd009249ff5a519694aa945d34502252
        - docker.io/confluentinc/cp-ksqldb-server@sha256:eb86c4eef5b7b9b52ca2e6424d20c5df004e9f9ccced4186621ef8b5a5eaf03e
        - docker.io/confluentinc/cp-server-connect@sha256:ae35ba598decf8e996d522899919a2cdf5d3a26a6bfdfe8532265192940f255b
        - docker.io/confluentinc/cp-server@sha256:6881860d5faf38bacfab7d5b0b2abcb8196f46ae3ca1b4a0306913374480788a
        - confluentinc/confluent-operator@sha256:c430b476e80e29fce6f3c2827fee1e28ba7aadeca903815c4329af984ff18b8f
        - docker.io/confluentinc/cp-enterprise-prometheus@sha256:db0989ef9859dbc88bc59f9b8ade86f2ba13e9dc36533e654566218328e5ff57
        - docker.io/confluentinc/cp-kafka-rest@sha256:e9462636ab87b68db3ecc178099224cdc2bad58c72762e5031ea8ec65f965c9d
        - docker.io/confluentinc/cpc-gateway@sha256:2d96d7141579258242367e7084dec64a5c7e19330e833f4c48a132fbdebf6737
        - registry.connect.redhat.com/confluentinc/confluent-for-kubernetes-v2@sha256:6a9a9c3edfe62d8567637ec20b02eb012299004dd12f034e49118f5cc57e4f51
        - docker.io/confluentinc/confluent-init-container@sha256:7b20d6a4ffbbc062662162e75db5365ca057cb95776e94ad5fb221219bb2232a
        - docker.io/confluentinc/cp-schema-registry@sha256:b23fd1be38cddd3e7da3d940d54000384441628148565ae4f43a59242f3a994a
        - docker.io/confluentinc/confluent-operator@sha256:c430b476e80e29fce6f3c2827fee1e28ba7aadeca903815c4329af984ff18b8f
        version: 3.1.1
      entries:
      - name: confluent-for-kubernetes.v3.1.1
        version: 3.1.1
      name: "3.1"
    defaultChannel: "3.1"
    packageName: confluent-for-kubernetes
    provider:
      name: Confluent, Inc.
      url: https://confluent.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: https://horreum.hyperfoil.io
    name: horreum-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: horreum-operator.v0.7.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hyperfoil.io/v1alpha1",
                "kind": "Horreum",
                "metadata": {
                  "name": "horreum"
                },
                "spec": {
                  "nodeHost": "127.0.0.1"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/hyperfoil/horreum-operator:0.7.9
          createdAt: "2023-06-13T10:42:39Z"
          description: Performance results repository
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/hyperfoil/horreum-operator
          support: Red Hat Application Runtimes Performance Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Horreum is the object configuring Horreum performance results
              repository
            displayName: Horreum
            kind: Horreum
            name: horreums.hyperfoil.io
            version: v1alpha1
        description: Performance results repository
        displayName: Horreum
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - performance
        - repository
        - database
        - results
        - hyperfoil
        - benchmark
        links:
        - name: Horreum Operator
          url: https://horreum-operator.domain
        maintainers:
        - email: rvansa@redhat.com
          name: Radim Vansa
        - email: spederse@redhat.com
          name: Ståle W. Pedersen
        - email: wreicher@redhat.com
          name: Will Reichert
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat, Inc.
          url: https://horreum.hyperfoil.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/hyperfoil/horreum-operator:0.7.9
        - quay.io/openshift-community-operators/horreum-operator@sha256:a9d82ce368b015e45b93f917d4069978a0ba323f3dd684d470cdfd262e0c9f05
        version: 0.7.9
      entries:
      - name: horreum-operator.v0.7.9
        version: 0.7.9
      - name: horreum-operator.v0.2.0
        version: 0.2.0
      name: alpha
    defaultChannel: alpha
    packageName: horreum-operator
    provider:
      name: Red Hat, Inc.
      url: https://horreum.hyperfoil.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-memorydb-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-memorydb-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "ACL",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "ParameterGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "Snapshot",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "SubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/memorydb-controller:1.2.0
          createdAt: "2025-11-29T05:06:38Z"
          description: Amazon MemoryDB for Redis controller is a service controller
            for managing MemoryDB resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ACL represents the state of an AWS memorydb ACL resource.
            displayName: ACL
            kind: ACL
            name: acls.memorydb.services.k8s.aws
            version: v1alpha1
          - description: Cluster represents the state of an AWS memorydb Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.memorydb.services.k8s.aws
            version: v1alpha1
          - description: ParameterGroup represents the state of an AWS memorydb ParameterGroup
              resource.
            displayName: ParameterGroup
            kind: ParameterGroup
            name: parametergroups.memorydb.services.k8s.aws
            version: v1alpha1
          - description: Snapshot represents the state of an AWS memorydb Snapshot
              resource.
            displayName: Snapshot
            kind: Snapshot
            name: snapshots.memorydb.services.k8s.aws
            version: v1alpha1
          - description: SubnetGroup represents the state of an AWS memorydb SubnetGroup
              resource.
            displayName: SubnetGroup
            kind: SubnetGroup
            name: subnetgroups.memorydb.services.k8s.aws
            version: v1alpha1
          - description: User represents the state of an AWS memorydb User resource.
            displayName: User
            kind: User
            name: users.memorydb.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon MemoryDB for Redis resources in AWS from within your Kubernetes cluster.

          **About Amazon MemoryDB for Redis**

          MemoryDB for Redis is a durable, in-memory database service that delivers ultra-fast performance. It is purpose-built for modern applications with microservices architectures.
          MemoryDB is compatible with Redis, a popular open source data store, enabling you to quickly build applications using the same flexible and friendly Redis data structures, APIs, and commands that they already use today. With MemoryDB, all of your data is stored in memory, which enables you to achieve microsecond read and single-digit millisecond write latency and high throughput. MemoryDB also stores data durably across multiple Availability Zones (AZs) using a Multi-AZ transactional log to enable fast failover, database recovery, and node restarts.
          Delivering both in-memory performance and Multi-AZ durability, MemoryDB can be used as a high-performance primary database for your microservices applications, eliminating the need to separately manage both a cache and durable database.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - MemoryDB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - memorydb
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon MemoryDB for Redis Developer Resources
          url: https://docs.aws.amazon.com/memorydb/?id=docs_gateway
        maintainers:
        - email: ack-maintainers@amazon.com
          name: memorydb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/memorydb-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-memorydb-controller@sha256:5bd92572f3dae9b8195368ed2491a3a2cc8fea56af1a4cbc60a0742d1461d457
        version: 1.2.0
      entries:
      - name: ack-memorydb-controller.v1.2.0
        version: 1.2.0
      - name: ack-memorydb-controller.v1.1.2
        version: 1.1.2
      - name: ack-memorydb-controller.v1.1.1
        version: 1.1.1
      - name: ack-memorydb-controller.v1.1.0
        version: 1.1.0
      - name: ack-memorydb-controller.v1.0.15
        version: 1.0.15
      - name: ack-memorydb-controller.v1.0.13
        version: 1.0.13
      - name: ack-memorydb-controller.v1.0.12
        version: 1.0.12
      - name: ack-memorydb-controller.v1.0.11
        version: 1.0.11
      - name: ack-memorydb-controller.v1.0.10
        version: 1.0.10
      - name: ack-memorydb-controller.v1.0.9
        version: 1.0.9
      - name: ack-memorydb-controller.v1.0.8
        version: 1.0.8
      - name: ack-memorydb-controller.v1.0.7
        version: 1.0.7
      - name: ack-memorydb-controller.v1.0.6
        version: 1.0.6
      - name: ack-memorydb-controller.v1.0.5
        version: 1.0.5
      - name: ack-memorydb-controller.v1.0.4
        version: 1.0.4
      - name: ack-memorydb-controller.v1.0.3
        version: 1.0.3
      - name: ack-memorydb-controller.v1.0.2
        version: 1.0.2
      - name: ack-memorydb-controller.v1.0.1
        version: 1.0.1
      - name: ack-memorydb-controller.v1.0.0
        version: 1.0.0
      - name: ack-memorydb-controller.v0.0.12
        version: 0.0.12
      - name: ack-memorydb-controller.v0.0.11
        version: 0.0.11
      - name: ack-memorydb-controller.v0.0.10
        version: 0.0.10
      - name: ack-memorydb-controller.v0.0.9
        version: 0.0.9
      - name: ack-memorydb-controller.v0.0.8
        version: 0.0.8
      - name: ack-memorydb-controller.v0.0.7
        version: 0.0.7
      - name: ack-memorydb-controller.v0.0.6
        version: 0.0.6
      - name: ack-memorydb-controller.v0.0.5
        version: 0.0.5
      - name: ack-memorydb-controller.v0.0.4
        version: 0.0.4
      - name: ack-memorydb-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-memorydb-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Arkmq-org
      provider-url: https://arkmq-org.io
    name: arkmq-org-broker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: arkmq-org-broker-operator.v2.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/arkmq-org/activemq-artemis-operator:2.1.1
          createdAt: "2025-04-04 14:35:00"
          description: An operator for managing the Apache ActiveMQ Artemis message
            broker
          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: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/arkmq-org/activemq-artemis-operator
          support: arkmq-org
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - description: Provides internal message migration on clustered broker scaledown
            displayName: ActiveMQ Artemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: ArkMQ Operator manages ActiveMQ Artemis messaging broker in the
          cloud
        displayName: ArkMQ Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - messaging
        - cloud
        - kubernetes
        - activemq
        - artemis
        - integration
        - operator
        links:
        - name: Documentation
          url: https://arkmq-org.io/docs
        - name: Repository
          url: https://github.com/arkmq-org/activemq-artemis-operator
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Arkmq-org
          url: https://arkmq-org.io
        relatedImages:
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:52f337cd5d7d5d199eebf4fc722f8c5279f652506f009efbc0f8f6de88e18718
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:4bba8828e72fd7c9d38c22ba1c2a4f7130817a4e7eac8fb63c13e86465a8e1e7
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:37ab7354273f4dcd19bad6936f10e92220d98b8c0266002221477a0e2d146c81
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:de82344daa0caeabc6559656da0af285436a687e8f371744c0c51bdbc309167d
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:1fd99a46758cd29fce846d0d590021758b2a7a3efedb817bb205359caa7d4f67
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:de52f034dc04bbf1c3a7a68f3ff040d76730bfb64b760c4420526c924613c1a0
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:edbec2276270c2f890572daf9141390bc33b5cf75621eca6e10f11bb144944f3
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:9e1fefc9a94d72a7b5a3f4e2d53ebd23e5ab221df17a5afde42ce973277838f6
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:da95bff69deb63545d9782ed20cbdd17c1a79c6b16165580bf96a1d5191e6a59
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:f63ba7261c3f9b81d3c29251a584a74b153109482753a20a960acf65bd851601
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:005074711b2af77d56309e18e44cd9a7bd7c49b0982ae312d7ca2b120100b351
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:ac9e2d43313412f8c3b4f7687181fa8cdb111937ecb19ad6f416618da8f347a4
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:3fb06f246c1beda919338aae6ab4b9d5ab03f06eb1a61c7c5278af50d822cc48
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:f10983c68aff358e285d89d827c27b3487a3ee3b8e121cdaa295bf5fa8501145
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:49f34122ab46ab5d7ead094b6e40817b62c75b6a809f67db07d68bce750da51e
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:b6f61188379def8c796c738549c099bd40bcd9bb44f5c30682c5edd136347aca
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:ddaf00914e3a412d21ec3a814e24f3d4cc382b5c4d6c21e9b1b94dde16ddf194
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:a4a0d0453f0761b9e114d0d4cc7c14091a2a9c30790f18ffa6bf1e365d5083fe
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:2d155bffd246f26f516a6075ec170babc1373c72bb664cba4e3c58521ffd3558
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:a34bcbf7585078a178e464f047e2f670eb0217ac66e409b08c4da0594f5907d3
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:39f34248f112751b7835f746016990046d21374a6514cb528632e0b06c76616b
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:a4628c2591ec06caf21a3467f6e3faeaede7fa402b4f137d943b25b4dd4ad343
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:895512e378006bc519d0b28196f61eabff27c6800e3a2951b21a19ac74cd5579
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:e2438670831bad39bb08147bbebe67ef9465899fb7750f1a5a185569f99d5fb5
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:264b33a9aad90d32a41258904f35092a141d76dcef0c115d414475444100aace
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:2895b2cf6292c951a0cdde78e755514f5d7cb43ce9f7b6e7dc381d8dfeec31ab
        - quay.io/community-operator-pipeline-prod/arkmq-org-broker-operator@sha256:7394f503ef1760490025304523ee39914c687e043f66b7629f57d235648d5e89
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:decb3932ebb5b848b90a4a23b083f0cb5237eec2844095d8c58a6798da8bb999
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:6f2da9ecd8f5021964d0dfa85144830efcfbd0462d18f18f036971e5f17b3bb6
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:f2c853ff91809282c04d5b1381ceae366518bf07b16649a61aa6c60c47f10714
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:e438bcacf099a92b143793e88c00c6ac0afb31effe4b0eed49a935c9265ad943
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:70d4c799c7d905fac27457d63e662ea72bca9e899a692e425609e4eaa45129e6
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:ffa0d7cb4068df84319776dbfb66210297da1b8466ccd5451318fc3de79736c3
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:fc9b9a4c7550d84fd90335dd4f9e0d8d39c09136c6034b28490a368368cb11f1
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:42230ce9d11a1949a5bb73b6ee218b1581f585bcd553485ee438e1c5b50fcf8b
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:4fa0e5420f0f3fc3669b2268de12abcf441e3b70babf07a5fbdac1b946ab33d0
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:fd94e89353cbfb282f3716da7862e087348e41a81033f5e90c45552938217c55
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:8fbdd1ba728058d5f437186b9055ca28596140068ebc69ecff4fa52717b19a82
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:b05852acb764caa16bec496eef108f5f9b66d8f300e09a0a267b7eaf4c910596
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:634f3d8fd620607b56e0360a191d23a9cb8a32ba0ba1f24fe20791ec52343586
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:474de621b3c892a7fdcb992a7c03b496f39f70c78d23f3c9159294e2db7b4bd4
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:3bbfb6177e4839087f615a01ee54f9e06a95acaddbb083e11851b6af9315dbf0
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:5e768aefade6d18cd65cb1eb5ee233844f9f7e7b52631f93a0982b67d382239d
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:0acbcc75f2d83d54dc10fcf3f59c35979d27085265f13869184d1ea5c372fd25
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:719178251893def955e444e706ff07042ea98d294671315d95da504c1f47de24
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:93168fd8cd4fb32f041795afb8fb0e21cf81081d6cc463a44356e153dc1ad032
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:673384959d87408cab9fc92f305dc47b3e7bad3a81b182de104d47f76e7df4e1
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:58b4effb8b83666c59adb657149dc0f037604254b4cd538de0cfaf50f9c14ddd
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:b293c1269166cc6181f68b8d803fdfcf20fdbd5df2787ed0453724b22e298fb2
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:f3e8ebad14c2385e47b260113beb7d6467f834aa04bc37eb12bc9bbc92b7b8b7
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:9bbb915855f29ea16950a3fd50d0b9bac25f82cba7d197579e04d9c33a5b02c4
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:56bae938a6b4cd87f9f5284931f440f9b9d116cda3b63b13f83a4b1c6c641959
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:88a0098a628fe43a9b422f8ebb774086fb65ed389a195e2779482a4a63447e28
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:d7dbd0c929c7ea0c213fa0824fd8135b381784a8873dee45256a6fb53a85f937
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:81590ec33b2f00775d3c6596f610887b670de7c0b89148b09eab7584f5b0b0ec
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:661931ae563086458a15b387e9d7b2561a64b48d4790529f636ed78cf399f579
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:f25db980c3229e66cf48690aa175f6f93e3dce3974c0e70ab23af6462e7d1893
        - quay.io/arkmq-org/activemq-artemis-operator:2.1.1
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:4be60cfa2a300b2eef9b5f10ea756bd3f55d75fbd8890232d907f8d64080449b
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:c9e0442ed7a2f3d378e52b92b85d6bfbf650896948890ef912e7bedf478fea52
        version: 2.1.1
      entries:
      - name: arkmq-org-broker-operator.v2.1.1
        version: 2.1.1
      - name: arkmq-org-broker-operator.v2.1.0
        version: 2.1.0
      name: stable
    defaultChannel: stable
    packageName: arkmq-org-broker-operator
    provider:
      name: Arkmq-org
      url: https://arkmq-org.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://skupper.io
    name: skupper-netobs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: skupper-netobs-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability.skupper.io/v2alpha1",
                "kind": "NetworkObserver",
                "metadata": {
                  "name": "networkobserver-sample"
                },
                "spec": {
                  "auth": {
                    "basic": {
                      "create": true,
                      "secretName": ""
                    },
                    "openshift": {
                      "cookieSecretName": "",
                      "createCookieSecret": true,
                      "serviceAccount": {
                        "create": true,
                        "nameOverride": ""
                      }
                    },
                    "strategy": "openshift"
                  },
                  "extraArgs": null,
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "registry.redhat.io/service-interconnect/skupper-network-observer-rhel9",
                    "tag": "2.1.2"
                  },
                  "ingress": {
                    "annotations": {},
                    "className": "",
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "chart-example.local",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": []
                  },
                  "nameOverride": "",
                  "nginx": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/ubi9/nginx-124",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": 9.6
                  },
                  "openshiftOauthProxy": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/openshift4/ose-oauth-proxy-rhel9",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": "v4.19.0"
                  },
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "prometheus": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/openshift4/ose-prometheus-rhel9",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": "v4.16.0"
                  },
                  "resources": {},
                  "route": {
                    "enabled": true
                  },
                  "router": {
                    "certificate": {
                      "create": true,
                      "nameOverride": ""
                    },
                    "endpoint": "amqps://skupper-router-local"
                  },
                  "securityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    }
                  },
                  "service": {
                    "port": 443,
                    "type": "ClusterIP"
                  },
                  "skipManagementLabels": false,
                  "tls": {
                    "openshiftIssued": true,
                    "secretName": "",
                    "skupperIssued": false
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-network-observer-rhel9-operator@sha256:c3bf7a7270556aa9fea22bfc71f90260b58d37fc21651704235c4906d7b4f958
          createdAt: "2025-10-21T14:13:17Z"
          description: Red Hat Service Interconnect Network Observer Operator provides
            the ability to monitor and observe a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NetworkObserver
            name: networkobservers.observability.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect Network Observer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-network-observer-operator-bundle@sha256:d5ffeb26ed57dd380b64dfc06c19991eae370dfb34f0a521dc250328430e0afb
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9-operator@sha256:c3bf7a7270556aa9fea22bfc71f90260b58d37fc21651704235c4906d7b4f958
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/ubi9/nginx-124@sha256:aa73fdb10af2bf24611ba714a412c2e65cec88a00eee628a0f2a75e564ec18f2
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:fd28171b7db948fcdb0902265f90ac76cfebb93c06c465736c0fdcceda062ff3
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        version: 2.1.2-rh-2
      entries:
      - name: skupper-netobs-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-netobs-operator.v2.1.1-rh-8
        version: 2.1.1-rh-8
      name: stable-2
    - currentCSV: skupper-netobs-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability.skupper.io/v2alpha1",
                "kind": "NetworkObserver",
                "metadata": {
                  "name": "networkobserver-sample"
                },
                "spec": {
                  "auth": {
                    "basic": {
                      "create": true,
                      "secretName": ""
                    },
                    "openshift": {
                      "cookieSecretName": "",
                      "createCookieSecret": true,
                      "serviceAccount": {
                        "create": true,
                        "nameOverride": ""
                      }
                    },
                    "strategy": "openshift"
                  },
                  "extraArgs": null,
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "registry.redhat.io/service-interconnect/skupper-network-observer-rhel9",
                    "tag": "2.1.2"
                  },
                  "ingress": {
                    "annotations": {},
                    "className": "",
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "chart-example.local",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": []
                  },
                  "nameOverride": "",
                  "nginx": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/ubi9/nginx-124",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": 9.6
                  },
                  "openshiftOauthProxy": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/openshift4/ose-oauth-proxy-rhel9",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": "v4.19.0"
                  },
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "prometheus": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/openshift4/ose-prometheus-rhel9",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": "v4.16.0"
                  },
                  "resources": {},
                  "route": {
                    "enabled": true
                  },
                  "router": {
                    "certificate": {
                      "create": true,
                      "nameOverride": ""
                    },
                    "endpoint": "amqps://skupper-router-local"
                  },
                  "securityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    }
                  },
                  "service": {
                    "port": 443,
                    "type": "ClusterIP"
                  },
                  "skipManagementLabels": false,
                  "tls": {
                    "openshiftIssued": true,
                    "secretName": "",
                    "skupperIssued": false
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-network-observer-rhel9-operator@sha256:c3bf7a7270556aa9fea22bfc71f90260b58d37fc21651704235c4906d7b4f958
          createdAt: "2025-10-21T14:13:17Z"
          description: Red Hat Service Interconnect Network Observer Operator provides
            the ability to monitor and observe a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NetworkObserver
            name: networkobservers.observability.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect Network Observer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/ubi9/nginx-124@sha256:aa73fdb10af2bf24611ba714a412c2e65cec88a00eee628a0f2a75e564ec18f2
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:fd28171b7db948fcdb0902265f90ac76cfebb93c06c465736c0fdcceda062ff3
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        - registry.redhat.io/service-interconnect/skupper-network-observer-operator-bundle@sha256:d5ffeb26ed57dd380b64dfc06c19991eae370dfb34f0a521dc250328430e0afb
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9-operator@sha256:c3bf7a7270556aa9fea22bfc71f90260b58d37fc21651704235c4906d7b4f958
        version: 2.1.2-rh-2
      entries:
      - name: skupper-netobs-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-netobs-operator.v2.1.1-rh-8
        version: 2.1.1-rh-8
      name: stable-2.1
    defaultChannel: stable-2
    packageName: skupper-netobs-operator
    provider:
      name: Red Hat
      url: https://skupper.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: smb-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: smb-csi-driver-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-smb-csi-driver-rhel9-operator@sha256:8adc4f5f3b02a79344012bb44539ed9f5c87534acb771337ab53d527b5b37adf
          createdAt: "2021-07-14T00:00:00Z"
          description: Install and configure CIFS/SMB CSI driver.
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=4.15.0-0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/csi-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          CIFS/SMB CSI Driver Operator provides Server Message Block (SMB) CSI Driver that enables you to create and mount CIFS/SMB PersistentVolumes.
        displayName: CIFS/SMB CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - smb
        - cifs
        links:
        - name: Documentation
          url: https://github.com/openshift/csi-operator
        - name: Source Repository
          url: https://github.com/openshift/csi-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-smb-csi-driver-rhel9-operator@sha256:8adc4f5f3b02a79344012bb44539ed9f5c87534acb771337ab53d527b5b37adf
        - registry.redhat.io/openshift4/ose-smb-csi-driver-rhel9@sha256:a6273e028d0e483241532b3a92cf891ecabedb47f39c167898bfecde5154769c
        - registry.redhat.io/openshift4/ose-smb-csi-driver-operator-bundle@sha256:14912624bed0a1061894c1efbc392f6dec8361fb3b8e92d73b17e9dd95078329
        version: 4.20.0-202512081147
      entries:
      - name: smb-csi-driver-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: smb-csi-driver-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: smb-csi-driver-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: smb-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: smb-csi-driver-operator.v4.20.0-202510290158
        version: 4.20.0-202510290158
      - name: smb-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: smb-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/trustification/trusted-profile-analyzer-operator
    name: rhtpa-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhtpa-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtpa.io/v1",
                "kind": "TrustedProfileAnalyzer",
                "metadata": {
                  "name": "trustedprofileanalyzer-sample"
                },
                "spec": {
                  "appDomain": "change-me",
                  "collector": {},
                  "database": {},
                  "image": {},
                  "infrastructure": {
                    "port": 9010
                  },
                  "ingress": {},
                  "metrics": {
                    "enabled": false
                  },
                  "modules": {
                    "createDatabase": {
                      "enabled": false,
                      "image": {}
                    },
                    "createImporters": {
                      "enabled": false,
                      "image": {},
                      "importers": {}
                    },
                    "importer": {
                      "concurrency": 1,
                      "enabled": true,
                      "image": {},
                      "infrastructure": {},
                      "metrics": {},
                      "replicas": 1,
                      "resources": {
                        "requests": {
                          "cpu": 1,
                          "memory": "8Gi"
                        }
                      },
                      "rust": {},
                      "tracing": {},
                      "workingDirectory": {
                        "size": "32Gi"
                      }
                    },
                    "migrateDatabase": {
                      "enabled": false,
                      "image": {}
                    },
                    "server": {
                      "enabled": true,
                      "image": {},
                      "infrastructure": {},
                      "ingress": {},
                      "metrics": {},
                      "replicas": 1,
                      "resources": {
                        "requests": {
                          "cpu": 1,
                          "memory": "8Gi"
                        }
                      },
                      "rust": {},
                      "tracing": {}
                    }
                  },
                  "oidc": {
                    "clients": {
                      "cli": {
                        "clientSecret": null
                      },
                      "frontend": {}
                    }
                  },
                  "openshift": {
                    "useServiceCa": true
                  },
                  "partOf": "trustify",
                  "replicas": 1,
                  "rust": {},
                  "storage": {},
                  "tls": {},
                  "tracing": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhtpa/rhtpa-rhel9-operator@sha256:82c7c370c029a8fc6a0a918c16ea14e25aab8aa8b87ca586b31f3aa5e8633b39
          createdAt: "2025-11-13T15:04:16Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Profile Analyzer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trustification/trusted-profile-analyzer-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: TrustedProfileAnalyzer
            name: trustedprofileanalyzers.rhtpa.io
            version: v1
        description: |
          Red Hat Trusted Profile Analyzer (RHTPA) provides a single source of truth for your software inventory across all your environments. You can verify the integrity of your in-house and third-party applications against their respective Software Bill of Materials (SBOM) document.  Trusted Profile Analyzer provides vulnerability, component and license transparency, strengthens your software supply chain security, and enables an accurate, up-to-date understanding of your software inventory.

          Features and Benefits:

          Enhanced Software Supply Chain Security: Offers critical transparency and integrity verification across the entire software lifecycle.

          Reduced Operational Risk: Proactively identifies and helps remediate vulnerabilities minimizing risk and compliance violations.

          Improved Compliance and Auditability: Simplifies the process of meeting regulatory requirements for software transparency and integrity by providing verifiable documentation and continuous monitoring.

          Faster Remediation and Incident Response: Provides targeted, actionable insights to prioritize and accelerate the patching and remediation of vulnerabilities.

          Increased Developer Productivity & Trust: Integrates security into existing workflows without significant overhead, allowing developers to build and deploy with greater confidence in the integrity of their code and components.

          Centralized Visibility and Control: Consolidates disparate security information into a single pane of glass, offering a holistic view of your application security posture.

          Red Hat Trusted Profile Analyzer is a crucial tool for any organization running applications on OpenShift that needs to confidently understand, verify, and secure the software they deploy, especially in an era of complex software supply chains and increasing regulatory scrutiny.

          [Documentation](https://docs.redhat.com/en/documentation/red_hat_trusted_profile_analyzer/2.2).
        displayName: Red Hat Trusted Profile Analyzer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - rhtpa
        - trusted-profile-analyzer
        links:
        - name: Trusted Profile Analyzer Operator
          url: https://github.com/trustification/trusted-profile-analyzer-operator
        maintainers:
        - email: rhtpa-support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: Red Hat
          url: https://github.com/trustification/trusted-profile-analyzer-operator
        relatedImages:
        - registry.redhat.io/rhtpa/rhtpa-operator-bundle@sha256:296c7c5ce1236c732583922dcf61dc2dfc5b872cc633203ae8d983b7105535f1
        - registry.redhat.io/rhtpa/rhtpa-rhel9-operator@sha256:82c7c370c029a8fc6a0a918c16ea14e25aab8aa8b87ca586b31f3aa5e8633b39
        version: 1.1.0
      entries:
      - name: rhtpa-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    defaultChannel: stable-v1.1
    packageName: rhtpa-operator
    provider:
      name: Red Hat
      url: https://github.com/trustification/trusted-profile-analyzer-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hitachi
      provider-url: ""
    name: hspc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hspc-operator.v1.17.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.hitachi.com/v1",
                "kind": "HSPC",
                "metadata": {
                  "name": "hspc",
                  "namespace": "kube-system"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Storage
          containerImage: registry.hitachivantara.com/hitachicsi-oci-oss/hspc-operator@sha256:3833ceb961234ea1e57eac144870995f565167ba99367e30187ccd9d4d6c5d23
          createdAt: "2025-12-15T10:35:09Z"
          description: An operator for managing Hitachi Storage Plug-in for Containers
            CSI driver
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          support: Hitachi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HSPC is the Schema for the hspcs API
            displayName: HSPC
            kind: HSPC
            name: hspcs.csi.hitachi.com
            version: v1
        description: |-
          ## About
          Hitachi Storage Plug-in for Containers is a software plugin component for Kubernetes and OpenShift environments that is used to create and manage persistent block storage from Hitachi Virtual Storage Platform One storages.


          For full documentation, go to our [Product Documentation site](https://docs.hitachivantara.com/home) and refer to the reference guide for HSPC v3.17.3.

          ## Requirements

          ### Supported Driver Version

          * HSPC v3.17.3
        displayName: Hitachi Storage Plug-in for Containers
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hitachi
        - Storage
        - Container Storage Interface
        - CSI
        links:
        - name: Product Documentation
          url: https://docs.hitachivantara.com/home
        maintainers:
        - email: Container-info@hitachivantara.com
          name: Hitachi
        maturity: stable
        provider:
          name: Hitachi
        relatedImages:
        - registry.k8s.io/sig-storage/csi-attacher@sha256:5aaefc24f315b182233c8b6146077f8c32e274d864cb03c632206e78bd0302da
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:672e45d6a55678abc1d102de665b5cbd63848e75dc7896f238c8eaaf3c7d322f
        - registry.k8s.io/sig-storage/csi-attacher@sha256:47ab8aebebdc59316004ba8d51a903637d808f4e62a6d0f599ed3c2483cea901
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:bb057f866177d5f4139a1527e594499cbe0feeb67b63aaca8679dfdf0a6016f9
        - registry.hitachivantara.com/hitachicsi-oci-oss/hspc-csi-driver@sha256:dbc6d8eab86e97187589467e8429dd90435fa0679f489ce69c78574053b90250
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:81d32545fb1b2c319bfeb36a70db4b4d3aea9c51c0574b209b8f64750b32d2f0
        - registry.hitachivantara.com/hitachicsi-oci-oss/hspc-operator@sha256:3833ceb961234ea1e57eac144870995f565167ba99367e30187ccd9d4d6c5d23
        - registry.k8s.io/sig-storage/livenessprobe@sha256:13f6b1f9d0514b859e549e20b731d93c90a144186deb68bfc931e3dbf9041afc
        - registry.k8s.io/sig-storage/csi-resizer@sha256:5e7cbb63fd497fa913caa21fee1a69f727c220c6fa83c5f8bb0995e2ad73a474
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:0d23a6fd60c421054deec5e6d0405dc3498095a5a597e175236c0692f4adee0f
        - registry.k8s.io/sig-storage/csi-resizer@sha256:706f7cdcccd30ca5f0e94d548e2e0c658f69c0fe4b68a5bf37818a04ca618d3d
        - registry.connect.redhat.com/hitachi/hspc-operator-bundle@sha256:1c7e40b02bfd5013796e50dbf4b13bd733a23f8599b653faad0f15498063ac0e
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:7b3d53cfefcb1c8836d5ac45f64dfdbf3fe6c813251b0b2ec79af7812cc53bfa
        - registry.k8s.io/sig-storage/livenessprobe@sha256:57dba2ee519e49afacf899af7e265d977b02ec4c1f60c9b636ab0e575612dbfd
        version: 1.17.3
      entries:
      - name: hspc-operator.v1.17.3
        version: 1.17.3
      name: stable
    defaultChannel: stable
    packageName: hspc-operator
    provider:
      name: Hitachi
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EPAM Delivery Platform
      provider-url: https://epam.github.io/edp-install/
    name: edp-keycloak-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: edp-keycloak-operator.v1.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "keycloak-sample"
                },
                "spec": {
                  "secret": "my-keycloak-secret",
                  "url": "https://example.com"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakAuthFlow",
                "metadata": {
                  "name": "keycloakauthflow-sample"
                },
                "spec": {
                  "alias": "MyBrowser",
                  "authenticationExecutions": [
                    {
                      "authenticator": "auth-cookie",
                      "priority": 0,
                      "requirement": "ALTERNATIVE"
                    },
                    {
                      "authenticator": "identity-provider-redirector",
                      "authenticatorConfig": {
                        "alias": "my-alias",
                        "config": {
                          "defaultProvider": "my-alias"
                        }
                      },
                      "priority": 1,
                      "requirement": "REQUIRED"
                    }
                  ],
                  "builtIn": false,
                  "description": "browser with idp",
                  "providerId": "basic-flow",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  },
                  "topLevel": true
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "keycloakclient-sample"
                },
                "spec": {
                  "advancedProtocolMappers": true,
                  "clientId": "agocd",
                  "defaultClientScopes": [
                    "argocd_groups"
                  ],
                  "directAccess": true,
                  "public": false,
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  },
                  "secret": "$client-secret-name:client-secret-key",
                  "webUrl": "https://argocd.example.com"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakClientScope",
                "metadata": {
                  "name": "keycloakclientscope-sample"
                },
                "spec": {
                  "description": "Group Membership",
                  "name": "groups",
                  "protocol": "openid-connect",
                  "protocolMappers": [
                    {
                      "config": {
                        "access.token.claim": "true",
                        "claim.name": "groups",
                        "full.path": "false",
                        "id.token.claim": "true",
                        "userinfo.token.claim": "true"
                      },
                      "name": "groups",
                      "protocol": "openid-connect",
                      "protocolMapper": "oidc-group-membership-mapper"
                    }
                  ],
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "keycloakrealm-sample"
                },
                "spec": {
                  "id": "d1-id-kc-realm-name",
                  "keycloakRef": {
                    "kind": "Keycloak",
                    "name": "keycloak-sample"
                  },
                  "passwordPolicy": [
                    {
                      "type": "forceExpiredPasswordChange",
                      "value": "365"
                    },
                    {
                      "type": "length",
                      "value": "8"
                    }
                  ],
                  "realmEventConfig": {
                    "adminEventsDetailsEnabled": false,
                    "adminEventsEnabled": true,
                    "enabledEventTypes": [
                      "UPDATE_CONSENT_ERROR",
                      "CLIENT_LOGIN"
                    ],
                    "eventsEnabled": true,
                    "eventsExpiration": 15000,
                    "eventsListeners": [
                      "jboss-logging"
                    ]
                  },
                  "realmName": "d2-id-kc-realm-name",
                  "ssoAutoRedirectEnabled": false,
                  "ssoRealmEnabled": false,
                  "ssoRealmName": "openshift"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmComponent",
                "metadata": {
                  "name": "keycloakrealmcomponent-sample"
                },
                "spec": {
                  "config": {
                    "allowPasswordAuthentication": [
                      "true"
                    ],
                    "cachePolicy": [
                      "EVICT_WEEKLY"
                    ],
                    "debug": [
                      "true"
                    ],
                    "editMode": [
                      "READ_ONLY"
                    ],
                    "enabled": [
                      "true"
                    ],
                    "evictionDay": [
                      "3"
                    ],
                    "evictionHour": [
                      "5"
                    ],
                    "evictionMinute": [
                      "7"
                    ],
                    "kerberosRealm": [
                      "test-realm"
                    ],
                    "keyTab": [
                      "test-key-tab"
                    ],
                    "priority": [
                      "0"
                    ],
                    "serverPrincipal": [
                      "srv-principal-test"
                    ],
                    "updateProfileFirstLogin": [
                      "true"
                    ]
                  },
                  "name": "cr-kerb-test",
                  "providerId": "kerberos",
                  "providerType": "org.keycloak.storage.UserStorageProvider",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmGroup",
                "metadata": {
                  "name": "keycloakrealmgroup-sample"
                },
                "spec": {
                  "name": "ArgoCDAdmins",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmIdentityProvider",
                "metadata": {
                  "name": "keycloakrealmidentityprovider-sample"
                },
                "spec": {
                  "alias": "instagram",
                  "authenticateByDefault": false,
                  "config": {
                    "clientId": "foo",
                    "clientSecret": "$secretName:secretKey",
                    "hideOnLoginPage": "true",
                    "syncMode": "IMPORT",
                    "useJwksUrl": "true"
                  },
                  "enabled": true,
                  "firstBrokerLoginFlowAlias": "first broker login",
                  "mappers": [
                    {
                      "config": {
                        "role": "role-tr",
                        "syncMode": "INHERIT"
                      },
                      "identityProviderAlias": "instagram",
                      "identityProviderMapper": "oidc-hardcoded-role-idp-mapper",
                      "name": "test3212"
                    },
                    {
                      "config": {
                        "attribute": "foo",
                        "attribute.value": "bar",
                        "syncMode": "IMPORT"
                      },
                      "identityProviderAlias": "instagram",
                      "identityProviderMapper": "hardcoded-attribute-idp-mapper",
                      "name": "test-33221"
                    }
                  ],
                  "providerId": "instagram",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmRole",
                "metadata": {
                  "name": "keycloakrealmrole-sample"
                },
                "spec": {
                  "composite": true,
                  "description": "default developer role",
                  "name": "developer",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmRoleBatch",
                "metadata": {
                  "name": "keycloakrealmrolebatch-sample"
                },
                "spec": {
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  },
                  "roles": [
                    {
                      "composite": true,
                      "description": "default developer role",
                      "isDefault": false,
                      "name": "developer"
                    },
                    {
                      "composite": true,
                      "description": "default administrator role",
                      "isDefault": false,
                      "name": "administrator"
                    }
                  ]
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmUser",
                "metadata": {
                  "name": "keycloakrealmuser-sample"
                },
                "spec": {
                  "attributes": {
                    "baz": "jazz",
                    "foo": "bar"
                  },
                  "email": "john.snow13@example.com",
                  "emailVerified": true,
                  "enabled": true,
                  "firstName": "John",
                  "keepResource": true,
                  "lastName": "Snow",
                  "password": "12345678",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  },
                  "requiredUserActions": [
                    "UPDATE_PASSWORD"
                  ],
                  "username": "john.snow13"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1alpha1",
                "kind": "ClusterKeycloak",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "edp-keycloak-operator",
                    "app.kubernetes.io/instance": "clusterkeycloak-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "clusterkeycloak",
                    "app.kubernetes.io/part-of": "edp-keycloak-operator"
                  },
                  "name": "clusterkeycloak-sample"
                },
                "spec": {
                  "secret": "keycloak-access",
                  "url": "https://keycloak.example.com"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1alpha1",
                "kind": "ClusterKeycloakRealm",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "edp-keycloak-operator",
                    "app.kubernetes.io/instance": "clusterkeycloakrealm-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "clusterkeycloakrealm",
                    "app.kubernetes.io/part-of": "edp-keycloak-operator"
                  },
                  "name": "clusterkeycloakrealm-sample"
                },
                "spec": {
                  "clusterKeycloakRef": "clusterkeycloak-sample",
                  "realmName": "realm-sample"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          containerImage: docker.io/epamedp/keycloak-operator:1.19.0
          createdAt: "2023-11-15T16:04:45Z"
          description: An Operator for managing Keycloak
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/epam/edp-keycloak-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterKeycloakRealm is the Schema for the clusterkeycloakrealms
              API.
            displayName: Cluster Keycloak Realm
            kind: ClusterKeycloakRealm
            name: clusterkeycloakrealms.v1.edp.epam.com
            version: v1alpha1
          - description: ClusterKeycloak is the Schema for the clusterkeycloaks API.
            displayName: Cluster Keycloak
            kind: ClusterKeycloak
            name: clusterkeycloaks.v1.edp.epam.com
            version: v1alpha1
          - description: KeycloakAuthFlow is the Schema for the keycloak authentication
              flow API.
            displayName: Keycloak Auth Flow
            kind: KeycloakAuthFlow
            name: keycloakauthflows.v1.edp.epam.com
            version: v1
          - description: KeycloakClient is the Schema for the keycloak clients API.
            displayName: Keycloak Client
            kind: KeycloakClient
            name: keycloakclients.v1.edp.epam.com
            version: v1
          - description: KeycloakClientScope is the Schema for the keycloakclientscopes
              API.
            displayName: Keycloak Client Scope
            kind: KeycloakClientScope
            name: keycloakclientscopes.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmComponent is the Schema for the keycloak component
              API.
            displayName: Keycloak Realm Component
            kind: KeycloakRealmComponent
            name: keycloakrealmcomponents.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmGroup is the Schema for the keycloak group API.
            displayName: Keycloak Realm Group
            kind: KeycloakRealmGroup
            name: keycloakrealmgroups.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmIdentityProvider is the Schema for the keycloak
              realm identity provider API.
            displayName: Keycloak Realm Identity Provider
            kind: KeycloakRealmIdentityProvider
            name: keycloakrealmidentityproviders.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmRoleBatch is the Schema for the keycloak roles
              API.
            displayName: Keycloak Realm Role Batch
            kind: KeycloakRealmRoleBatch
            name: keycloakrealmrolebatches.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmRole is the Schema for the keycloak group API.
            displayName: Keycloak Realm Role
            kind: KeycloakRealmRole
            name: keycloakrealmroles.v1.edp.epam.com
            version: v1
          - description: KeycloakRealm is the Schema for the keycloak realms API.
            displayName: Keycloak Realm
            kind: KeycloakRealm
            name: keycloakrealms.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmUser is the Schema for the keycloak user API.
            displayName: Keycloak Realm User
            kind: KeycloakRealmUser
            name: keycloakrealmusers.v1.edp.epam.com
            version: v1
          - description: Keycloak is the Schema for the keycloaks API.
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.v1.edp.epam.com
            version: v1
        description: |
          Keycloak Operator is an operator that is responsible for establishing
          a connection to provided Keycloak Server, reconciling Keycloak entities (realms,
          roles, groups, users, etc) according to the created CRs.

          ## Quick Start

          1. Create a User in the Keycloak `Master` realm, and assign a `create-realm` role.

          2. Insert newly created user credentials into Kubernetes secret:

              ```yaml
              apiVersion: v1
              kind: Secret
              metadata:
                name:  keycloak-access
              type: Opaque
              data:
                username: dXNlcg==   # base64-encoded value of "user"
                password: cGFzcw==   # base64-encoded value of "pass"
              ```

          3. Create Custom Resource `kind: Keycloak` with Keycloak instance URL and secret created on the previous step:

              ```yaml
              apiVersion: v1.edp.epam.com/v1
              kind: Keycloak
              metadata:
                name: keycloak-sample
              spec:
                secret: keycloak-access             # Secret name
                url: https://keycloak.example.com   # Keycloak URL
              ```

              Wait for the `.status` field with  `status.connected: true`

          4. Create Keycloak realm and group using Custom Resources:

            ```yaml
            apiVersion: v1.edp.epam.com/v1
            kind: KeycloakRealm
            metadata:
              name: keycloakrealm-sample
            spec:
              realmName: realm-sample
              keycloakOwner: keycloak-sample   # the name of `kind: Keycloak`
              ```

              ```yaml
              apiVersion: v1.edp.epam.com/v1
              kind: KeycloakRealmGroup
              metadata:
                name: argocd-admins
              spec:
                name: ArgoCDAdmins
                realm: keycloakrealm-sample   # the name of `kind: KeycloakRealm`
              ```
        displayName: EDP Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - authentication
        - authorization
        - edp
        - idp
        - keycloak
        - oauth
        - oidc
        - operator
        - saml
        - sso
        links:
        - name: Edp Keycloak Operator
          url: https://github.com/epam/edp-keycloak-operator
        maintainers:
        - email: SupportEPMD-EDP@epam.com
          name: epmd-edp
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: EPAM Delivery Platform
          url: https://epam.github.io/edp-install/
        relatedImages:
        - docker.io/epamedp/keycloak-operator:1.19.0
        - quay.io/openshift-community-operators/edp-keycloak-operator@sha256:82ff141bb86599f12d4a516fd1b6c5252f9ff24ef2547be6c58e2f3d88219914
        version: 1.19.0
      entries:
      - name: edp-keycloak-operator.v1.19.0
        version: 1.19.0
      - name: edp-keycloak-operator.v1.18.2
        version: 1.18.2
      - name: edp-keycloak-operator.v1.17.1
        version: 1.17.1
      - name: edp-keycloak-operator.v1.13.0
        version: 1.13.0
      name: alpha
    defaultChannel: alpha
    packageName: edp-keycloak-operator
    provider:
      name: EPAM Delivery Platform
      url: https://epam.github.io/edp-install/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      operatorframework.io/os.zos: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/file-integrity-operator
    name: file-integrity-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: file-integrity-operator.v0.1.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fileintegrity.openshift.io/v1alpha1",
                "kind": "FileIntegrity",
                "metadata": {
                  "name": "example-fileintegrity",
                  "namespace": "openshift-file-integrity"
                },
                "spec": {
                  "config": {},
                  "debug": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.6 <0.1.13'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-file-integrity
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          repository: https://github.com/openshift/file-integrity-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileIntegrity is the Schema for the fileintegrities API
            kind: FileIntegrity
            name: fileintegrities.fileintegrity.openshift.io
            version: v1alpha1
          - description: FileIntegrityNodeStatus defines the status of a specific
              node
            kind: FileIntegrityNodeStatus
            name: fileintegritynodestatuses.fileintegrity.openshift.io
            version: v1alpha1
        description: An operator that manages file integrity checks on nodes.
        displayName: File Integrity Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Integrity
        - security
        links:
        - name: File Integrity Operator
          url: https://file-integrity-operator.domain
        maintainers:
        - email: mrogers@redhat.com
          name: Matt Rogers
        maturity: alpha
        provider:
          name: Red Hat
          url: https://github.com/openshift/file-integrity-operator
        relatedImages:
        - registry.redhat.io/openshift4/file-integrity-rhel8-operator-metadata@sha256:7fb2750941193d64f8cca278ff7d81d3ca5e29a2ad0568dff7ddae4396548bb3
        - registry.redhat.io/openshift4/file-integrity-rhel8-operator@sha256:a65f1244636649734763164a5d6155a6f6a7b79b3950ecc03fb3c58188583599
        version: 0.1.13
      entries:
      - name: file-integrity-operator.v0.1.13
        version: 0.1.13
      name: "4.7"
    - currentCSV: file-integrity-operator.v0.1.32
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fileintegrity.openshift.io/v1alpha1",
                "kind": "FileIntegrity",
                "metadata": {
                  "name": "example-fileintegrity",
                  "namespace": "openshift-file-integrity"
                },
                "spec": {
                  "config": {},
                  "debug": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.6 <0.1.32'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-file-integrity
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/file-integrity-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileIntegrity is the Schema for the fileintegrities API
            displayName: File Integrity
            kind: FileIntegrity
            name: fileintegrities.fileintegrity.openshift.io
            version: v1alpha1
          - description: FileIntegrityNodeStatus defines the status of a specific
              node
            kind: FileIntegrityNodeStatus
            name: fileintegritynodestatuses.fileintegrity.openshift.io
            version: v1alpha1
        description: An operator that manages file integrity checks on nodes.
        displayName: File Integrity Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Integrity
        - security
        links:
        - name: File Integrity Operator upstream repo
          url: https://github.com/openshift/file-integrity-operator
        - name: File Integrity Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/file_integrity_operator/file-integrity-operator-understanding.html
        maintainers:
        - email: mrogers@redhat.com
          name: Matt Rogers
        maturity: alpha
        provider:
          name: Red Hat
          url: https://github.com/openshift/file-integrity-operator
        relatedImages:
        - registry.redhat.io/compliance/openshift-file-integrity-operator-bundle@sha256:57e796822bcd705974c0efcd6c190ce39eac2e70b9d6a0c27f69d85dfe966db2
        - registry.redhat.io/compliance/openshift-file-integrity-rhel8-operator@sha256:c3e34e6198eadb48c007cd949d8be38e26ef7d15d2f9047a8c3c89c03201e4ea
        version: 0.1.32
      entries:
      - name: file-integrity-operator.v0.1.32
        version: 0.1.32
      name: release-0.1
    - currentCSV: file-integrity-operator.v1.3.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fileintegrity.openshift.io/v1alpha1",
                "kind": "FileIntegrity",
                "metadata": {
                  "name": "example-fileintegrity",
                  "namespace": "openshift-file-integrity"
                },
                "spec": {
                  "config": {},
                  "debug": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          createdAt: "2024-11-21T18:02:08Z"
          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: "true"
          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.skipRange: '>=1.0.0 <1.3.8'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-file-integrity
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/file-integrity-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileIntegrity is the Schema for the fileintegrities API
            displayName: File Integrity
            kind: FileIntegrity
            name: fileintegrities.fileintegrity.openshift.io
            version: v1alpha1
          - description: FileIntegrityNodeStatus defines the status of a specific
              node
            kind: FileIntegrityNodeStatus
            name: fileintegritynodestatuses.fileintegrity.openshift.io
            version: v1alpha1
        description: An operator that manages file integrity checks on nodes.
        displayName: File Integrity Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Integrity
        - security
        links:
        - name: File Integrity Operator upstream repo
          url: https://github.com/openshift/file-integrity-operator
        - name: File Integrity Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/file_integrity_operator/file-integrity-operator-understanding.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
          url: https://github.com/openshift/file-integrity-operator
        relatedImages:
        - registry.redhat.io/compliance/openshift-file-integrity-operator-bundle@sha256:efb25a29f837eebee8a0b566eb2c8cf8cebce7cb16198e90d87231fe3cc35316
        - registry.redhat.io/compliance/openshift-file-integrity-rhel8-operator@sha256:ce9c08c45902954ac7c26cd3dc89a00bf99c032399db80f7d7c3f2a77584e7f6
        version: 1.3.8
      entries:
      - name: file-integrity-operator.v1.3.8
        version: 1.3.8
      - name: file-integrity-operator.v1.3.7
        version: 1.3.7
      - name: file-integrity-operator.v1.3.6
        version: 1.3.6
      - name: file-integrity-operator.v1.3.5
        version: 1.3.5
      - name: file-integrity-operator.v1.3.4
        version: 1.3.4
      - name: file-integrity-operator.v1.3.3
        version: 1.3.3
      name: stable
    - currentCSV: file-integrity-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fileintegrity.openshift.io/v1alpha1",
                "kind": "FileIntegrity",
                "metadata": {
                  "name": "example-fileintegrity",
                  "namespace": "openshift-file-integrity"
                },
                "spec": {
                  "config": {},
                  "debug": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.6 <1.0.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-file-integrity
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/file-integrity-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileIntegrity is the Schema for the fileintegrities API
            displayName: File Integrity
            kind: FileIntegrity
            name: fileintegrities.fileintegrity.openshift.io
            version: v1alpha1
          - description: FileIntegrityNodeStatus defines the status of a specific
              node
            kind: FileIntegrityNodeStatus
            name: fileintegritynodestatuses.fileintegrity.openshift.io
            version: v1alpha1
        description: An operator that manages file integrity checks on nodes.
        displayName: File Integrity Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Integrity
        - security
        links:
        - name: File Integrity Operator upstream repo
          url: https://github.com/openshift/file-integrity-operator
        - name: File Integrity Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/file_integrity_operator/file-integrity-operator-understanding.html
        maintainers:
        - email: mrogers@redhat.com
          name: Matt Rogers
        maturity: alpha
        provider:
          name: Red Hat
          url: https://github.com/openshift/file-integrity-operator
        relatedImages:
        - registry.redhat.io/compliance/openshift-file-integrity-operator-bundle@sha256:f234e8af232f2d3a9472307ae82834f96756841b8d60b8c42ac4f9ca3fd17545
        - registry.redhat.io/compliance/openshift-file-integrity-rhel8-operator@sha256:dd1dfeccf59214a0de653c3a4c4dbbc8c41640954318d13386cda73891660e4f
        version: 1.0.0
      entries:
      - name: file-integrity-operator.v1.0.0
        version: 1.0.0
      name: v1
    defaultChannel: stable
    packageName: file-integrity-operator
    provider:
      name: Red Hat
      url: https://github.com/openshift/file-integrity-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: servicemeshoperator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: servicemeshoperator.v2.6.11
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"maistra.io/v2\",\n    \"kind\":
            \"ServiceMeshControlPlane\",\n    \"metadata\": {\n      \"name\": \"basic\",\n
            \     \"namespace\": \"control-plane-namespace\"\n    },\n    \"spec\":
            {\n      \"version\": \"v2.6\",\n      \"policy\": {\n         \"type\":
            \"Istiod\"\n      },\n      \"telemetry\": {\n         \"type\": \"Istiod\"\n
            \     },\n      \"addons\": {\n        \"prometheus\": {\n          \"enabled\":
            true\n        },\n        \"kiali\": {\n          \"enabled\": true\n
            \       },\n        \"grafana\": {\n          \"enabled\": true\n        }\n
            \     }\n    }\n  },\n  {\n    \"apiVersion\": \"maistra.io/v1\",\n    \"kind\":
            \"ServiceMeshMemberRoll\",\n    \"metadata\": {\n      \"name\": \"default\",\n
            \     \"namespace\": \"control-plane-namespace\"\n    },\n    \"spec\":
            {\n      \"members\": [\n        \"your-project\",\n        \"another-of-your-projects\"
            \n      ]\n    }\n  },\n  {\n    \"apiVersion\": \"maistra.io/v1\",\n
            \   \"kind\": \"ServiceMeshMember\",\n    \"metadata\": {\n      \"name\":
            \"default\",\n      \"namespace\": \"application-namespace\"\n    },\n
            \   \"spec\": {\n      \"controlPlaneRef\": {\n        \"name\": \"basic\",\n
            \       \"namespace\": \"control-plane-namespace\"\n      }\n    }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
          createdAt: 2025-09-09T13:46:27CEST
          description: The OpenShift Service Mesh 2 Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh 2.6
            and earlier releases. OpenShift Service Mesh 2 is based on the open source
            Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.2 <2.6.11-0'
          operators.openshift.io/infrastructure-features: '["Disconnected","fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/maistra/istio-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Istio control plane installation
            displayName: Istio Service Mesh Control Plane
            kind: ServiceMeshControlPlane
            name: servicemeshcontrolplanes.maistra.io
            version: v2
          - description: Marks the containing namespace as a member of the referenced
              Service Mesh
            displayName: Istio Service Mesh Member
            kind: ServiceMeshMember
            name: servicemeshmembers.maistra.io
            version: v1
          - description: A list of namespaces in Service Mesh
            displayName: Istio Service Mesh Member Roll
            kind: ServiceMeshMemberRoll
            name: servicemeshmemberrolls.maistra.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh 2 is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh 2, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh 2
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh 2 provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh 2 supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### Joining Projects Into a Mesh

          Once an instance of Red Hat OpenShift Service Mesh 2 has been installed, it will only exercise control over services within its own
          project.  Other projects may be added into the mesh using one of two methods:

          1. A **ServiceMeshMember** resource may be created in other projects to add those projects into the mesh.  The
            **ServiceMeshMember** specifies a reference to the **ServiceMeshControlPlane** object that was used to install
            the control plane.  The user creating the **ServiceMeshMember** resource must have permission to *use* the
            **ServiceMeshControlPlane** object.  The adminstrator for the project containing the control plane can grant
            individual users or groups the *use* permissions.

          2. A **ServiceMeshMemberRoll** resource may be created in the project containing the control plane.  This resource
            contains a single *members* list of all the projects that should belong in the mesh.  The resource must be named
            *default*.  The user creating the resource must have *edit* or *admin* permissions for all projects in the
            *members* list.

          ### More Information

          * [Documentation](https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 2
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - maistra
        - servicemesh
        links:
        - name: Red Hat OpenShift Service Mesh 2
          url: https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html
        - name: Istio
          url: https://istio.io/
        - name: Operator Source Code
          url: https://github.com/Maistra/istio-operator
        - name: Bugs
          url: https://issues.redhat.com/projects/OSSM
        maintainers:
        - email: istio-feedback@redhat.com
          name: Red Hat, OpenShift Service Mesh
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d95762c62087072cadee5948c706619f09202a349e1310f0ed81bfb42f11203f
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6b4623c416fc85bd8e38904c16494fa3c4aeae25c90dc0da9763a0a87141bc04
        - registry.redhat.io/openshift4/ose-prometheus@sha256:5337742d305ff580471e9657345b384a950f82be7fd8a55196459008d2fca0a2
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:57eb7ba03f24781501a7ceed2e160ff95317869af6c2caf8f9a83990e6a6c7b9
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:a36d5db6097749c55e946bba3b8ddd13a84b1f6f68b62d0ccbad5a803e9b46fb
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:1ca80927334c6af8e386de8d44704f568b4b35d3f7afbe785a999d0fa4efd0bf
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:f2fa0849e1304457ef69020c090ad79d928faa1a90c3042a6ecaca842c2a97fa
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6fb7d50b188dc27ffb9a396edabbfb21767fe438344fd70d4754d1ec7cf27957
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:4669724b430683bf2e895c5cf941c2d99536117815999d38131e5b6f162bbef0
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:877aa4c6546146f0ed42eca52500e1adfc28a1dda80a08500f9cc9e023254ccd
        - registry.redhat.io/openshift-service-mesh/prometheus-rhel8@sha256:71e193a2d403bb06a7a76686b376985315aa0c32f495b8b9dacd73c7ccce2af3
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:515c5d9e6700fae981b0ea3807436b250acb1534e9ecf50043e5df8474e66dce
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:a3d65983d46dcf47b94f26e7265ed32082208ce08abcf3587a9a4e15c19b274a
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:c77183e50a34d33b5e2fede60350f54b18ab3536c3189e331569d5df862d9979
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:d16a60204d266bf4cc266c005fabf175b533b827500f171013884a713c88857a
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:3dc1bddb070fd530ce6251666989b9a849de90591718a578da4a9900f98d93ec
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:e734ca310e09f737b4f06f3ecfeb9ac12971c63884fdcc27e3bebef9d5b18722
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:49bd04cf8d17d568be9649e706dba4a1a5bd7a7a87c075b97ea3b706dd1ed17c
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:6a420228e684596ce2b900614a874f3e1284a6f2bbbba4c5a71ade158867affe
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-service-mesh/istio-operator-bundle@sha256:4923f618c4f5dca6fb67b3559436f8fdecfdb42965444440b92d15200e126a11
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:ee9c27eea4e786097db0fae63ba99c0272548eb9708c75ce4844e0d43bcaa490
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:b6883bf18708526e22939d083fa0e6b2d0485b61c677b9e39bb4109dc035dc52
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:fdcd165abf3f93810248a6ac14611c1ba7f5e8d48dafb81666a8211d1edf6a5a
        version: 2.6.11-0
      entries:
      - name: servicemeshoperator.v2.6.11
        version: 2.6.11-0
      - name: servicemeshoperator.v2.6.10
        version: 2.6.10-0
      - name: servicemeshoperator.v2.6.9
        version: 2.6.9-0
      - name: servicemeshoperator.v2.6.8
        version: 2.6.8-0
      - name: servicemeshoperator.v2.6.7
        version: 2.6.7-0
      - name: servicemeshoperator.v2.6.6
        version: 2.6.6-0
      - name: servicemeshoperator.v2.6.5
        version: 2.6.5-0
      - name: servicemeshoperator.v2.6.4
        version: 2.6.4-0
      - name: servicemeshoperator.v2.6.3
        version: 2.6.3-0
      - name: servicemeshoperator.v2.6.2
        version: 2.6.2-0
      - name: servicemeshoperator.v2.6.1
        version: 2.6.1-0
      - name: servicemeshoperator.v2.6.0
        version: 2.6.0-0
      - name: servicemeshoperator.v2.5.2
        version: 2.5.2-0
      - name: servicemeshoperator.v2.5.1
        version: 2.5.1-0
      - name: servicemeshoperator.v2.5.0
        version: 2.5.0-0
      - name: servicemeshoperator.v2.4.5
        version: 2.4.5-0
      - name: servicemeshoperator.v2.4.4
        version: 2.4.4-0
      - name: servicemeshoperator.v2.4.3
        version: 2.4.3-0
      - name: servicemeshoperator.v2.4.2
        version: 2.4.2-0
      - name: servicemeshoperator.v2.4.1
        version: 2.4.1-0
      - name: servicemeshoperator.v2.4.0
        version: 2.4.0-0
      - name: servicemeshoperator.v2.3.3
        version: 2.3.3-0
      - name: servicemeshoperator.v2.3.2
        version: 2.3.2-0
      - name: servicemeshoperator.v2.3.1
        version: 2.3.1-0
      - name: servicemeshoperator.v2.3.0
        version: 2.3.0-0
      - name: servicemeshoperator.v2.2.3
        version: 2.2.3-0
      - name: servicemeshoperator.v2.2.2
        version: 2.2.2-0
      - name: servicemeshoperator.v2.2.1
        version: 2.2.1-0
      - name: servicemeshoperator.v2.2.0
        version: 2.2.0-0
      - name: servicemeshoperator.v2.1.3
        version: 2.1.3-0
      - name: servicemeshoperator.v2.1.2
        version: 2.1.2-0
      - name: servicemeshoperator.v2.1.1
        version: 2.1.1-0
      - name: servicemeshoperator.v2.1.0
        version: 2.1.0-0
      - name: servicemeshoperator.v2.0.8
        version: 2.0.8-0
      name: "1.0"
    - currentCSV: servicemeshoperator.v2.6.11
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"maistra.io/v2\",\n    \"kind\":
            \"ServiceMeshControlPlane\",\n    \"metadata\": {\n      \"name\": \"basic\",\n
            \     \"namespace\": \"control-plane-namespace\"\n    },\n    \"spec\":
            {\n      \"version\": \"v2.6\",\n      \"policy\": {\n         \"type\":
            \"Istiod\"\n      },\n      \"telemetry\": {\n         \"type\": \"Istiod\"\n
            \     },\n      \"addons\": {\n        \"prometheus\": {\n          \"enabled\":
            true\n        },\n        \"kiali\": {\n          \"enabled\": true\n
            \       },\n        \"grafana\": {\n          \"enabled\": true\n        }\n
            \     }\n    }\n  },\n  {\n    \"apiVersion\": \"maistra.io/v1\",\n    \"kind\":
            \"ServiceMeshMemberRoll\",\n    \"metadata\": {\n      \"name\": \"default\",\n
            \     \"namespace\": \"control-plane-namespace\"\n    },\n    \"spec\":
            {\n      \"members\": [\n        \"your-project\",\n        \"another-of-your-projects\"
            \n      ]\n    }\n  },\n  {\n    \"apiVersion\": \"maistra.io/v1\",\n
            \   \"kind\": \"ServiceMeshMember\",\n    \"metadata\": {\n      \"name\":
            \"default\",\n      \"namespace\": \"application-namespace\"\n    },\n
            \   \"spec\": {\n      \"controlPlaneRef\": {\n        \"name\": \"basic\",\n
            \       \"namespace\": \"control-plane-namespace\"\n      }\n    }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
          createdAt: 2025-09-09T13:46:27CEST
          description: The OpenShift Service Mesh 2 Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh 2.6
            and earlier releases. OpenShift Service Mesh 2 is based on the open source
            Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.2 <2.6.11-0'
          operators.openshift.io/infrastructure-features: '["Disconnected","fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/maistra/istio-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Istio control plane installation
            displayName: Istio Service Mesh Control Plane
            kind: ServiceMeshControlPlane
            name: servicemeshcontrolplanes.maistra.io
            version: v2
          - description: Marks the containing namespace as a member of the referenced
              Service Mesh
            displayName: Istio Service Mesh Member
            kind: ServiceMeshMember
            name: servicemeshmembers.maistra.io
            version: v1
          - description: A list of namespaces in Service Mesh
            displayName: Istio Service Mesh Member Roll
            kind: ServiceMeshMemberRoll
            name: servicemeshmemberrolls.maistra.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh 2 is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh 2, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh 2
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh 2 provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh 2 supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### Joining Projects Into a Mesh

          Once an instance of Red Hat OpenShift Service Mesh 2 has been installed, it will only exercise control over services within its own
          project.  Other projects may be added into the mesh using one of two methods:

          1. A **ServiceMeshMember** resource may be created in other projects to add those projects into the mesh.  The
            **ServiceMeshMember** specifies a reference to the **ServiceMeshControlPlane** object that was used to install
            the control plane.  The user creating the **ServiceMeshMember** resource must have permission to *use* the
            **ServiceMeshControlPlane** object.  The adminstrator for the project containing the control plane can grant
            individual users or groups the *use* permissions.

          2. A **ServiceMeshMemberRoll** resource may be created in the project containing the control plane.  This resource
            contains a single *members* list of all the projects that should belong in the mesh.  The resource must be named
            *default*.  The user creating the resource must have *edit* or *admin* permissions for all projects in the
            *members* list.

          ### More Information

          * [Documentation](https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 2
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - maistra
        - servicemesh
        links:
        - name: Red Hat OpenShift Service Mesh 2
          url: https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html
        - name: Istio
          url: https://istio.io/
        - name: Operator Source Code
          url: https://github.com/Maistra/istio-operator
        - name: Bugs
          url: https://issues.redhat.com/projects/OSSM
        maintainers:
        - email: istio-feedback@redhat.com
          name: Red Hat, OpenShift Service Mesh
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:a36d5db6097749c55e946bba3b8ddd13a84b1f6f68b62d0ccbad5a803e9b46fb
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:49bd04cf8d17d568be9649e706dba4a1a5bd7a7a87c075b97ea3b706dd1ed17c
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6b4623c416fc85bd8e38904c16494fa3c4aeae25c90dc0da9763a0a87141bc04
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:d16a60204d266bf4cc266c005fabf175b533b827500f171013884a713c88857a
        - registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:f2fa0849e1304457ef69020c090ad79d928faa1a90c3042a6ecaca842c2a97fa
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:4669724b430683bf2e895c5cf941c2d99536117815999d38131e5b6f162bbef0
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:c77183e50a34d33b5e2fede60350f54b18ab3536c3189e331569d5df862d9979
        - registry.redhat.io/openshift4/ose-prometheus@sha256:5337742d305ff580471e9657345b384a950f82be7fd8a55196459008d2fca0a2
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:fdcd165abf3f93810248a6ac14611c1ba7f5e8d48dafb81666a8211d1edf6a5a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:e734ca310e09f737b4f06f3ecfeb9ac12971c63884fdcc27e3bebef9d5b18722
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:b6883bf18708526e22939d083fa0e6b2d0485b61c677b9e39bb4109dc035dc52
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6fb7d50b188dc27ffb9a396edabbfb21767fe438344fd70d4754d1ec7cf27957
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:57eb7ba03f24781501a7ceed2e160ff95317869af6c2caf8f9a83990e6a6c7b9
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d95762c62087072cadee5948c706619f09202a349e1310f0ed81bfb42f11203f
        - registry.redhat.io/openshift-service-mesh/istio-operator-bundle@sha256:4923f618c4f5dca6fb67b3559436f8fdecfdb42965444440b92d15200e126a11
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:6a420228e684596ce2b900614a874f3e1284a6f2bbbba4c5a71ade158867affe
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:1ca80927334c6af8e386de8d44704f568b4b35d3f7afbe785a999d0fa4efd0bf
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:515c5d9e6700fae981b0ea3807436b250acb1534e9ecf50043e5df8474e66dce
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:ee9c27eea4e786097db0fae63ba99c0272548eb9708c75ce4844e0d43bcaa490
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:877aa4c6546146f0ed42eca52500e1adfc28a1dda80a08500f9cc9e023254ccd
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:3dc1bddb070fd530ce6251666989b9a849de90591718a578da4a9900f98d93ec
        - registry.redhat.io/openshift-service-mesh/prometheus-rhel8@sha256:71e193a2d403bb06a7a76686b376985315aa0c32f495b8b9dacd73c7ccce2af3
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:a3d65983d46dcf47b94f26e7265ed32082208ce08abcf3587a9a4e15c19b274a
        version: 2.6.11-0
      entries:
      - name: servicemeshoperator.v2.6.11
        version: 2.6.11-0
      - name: servicemeshoperator.v2.6.10
        version: 2.6.10-0
      - name: servicemeshoperator.v2.6.9
        version: 2.6.9-0
      - name: servicemeshoperator.v2.6.8
        version: 2.6.8-0
      - name: servicemeshoperator.v2.6.7
        version: 2.6.7-0
      - name: servicemeshoperator.v2.6.6
        version: 2.6.6-0
      - name: servicemeshoperator.v2.6.5
        version: 2.6.5-0
      - name: servicemeshoperator.v2.6.4
        version: 2.6.4-0
      - name: servicemeshoperator.v2.6.3
        version: 2.6.3-0
      - name: servicemeshoperator.v2.6.2
        version: 2.6.2-0
      - name: servicemeshoperator.v2.6.1
        version: 2.6.1-0
      - name: servicemeshoperator.v2.6.0
        version: 2.6.0-0
      - name: servicemeshoperator.v2.5.2
        version: 2.5.2-0
      - name: servicemeshoperator.v2.5.1
        version: 2.5.1-0
      - name: servicemeshoperator.v2.5.0
        version: 2.5.0-0
      - name: servicemeshoperator.v2.4.5
        version: 2.4.5-0
      - name: servicemeshoperator.v2.4.4
        version: 2.4.4-0
      - name: servicemeshoperator.v2.4.3
        version: 2.4.3-0
      - name: servicemeshoperator.v2.4.2
        version: 2.4.2-0
      - name: servicemeshoperator.v2.4.1
        version: 2.4.1-0
      - name: servicemeshoperator.v2.4.0
        version: 2.4.0-0
      - name: servicemeshoperator.v2.3.3
        version: 2.3.3-0
      - name: servicemeshoperator.v2.3.2
        version: 2.3.2-0
      - name: servicemeshoperator.v2.3.1
        version: 2.3.1-0
      - name: servicemeshoperator.v2.3.0
        version: 2.3.0-0
      - name: servicemeshoperator.v2.2.3
        version: 2.2.3-0
      - name: servicemeshoperator.v2.2.2
        version: 2.2.2-0
      - name: servicemeshoperator.v2.2.1
        version: 2.2.1-0
      - name: servicemeshoperator.v2.2.0
        version: 2.2.0-0
      - name: servicemeshoperator.v2.1.3
        version: 2.1.3-0
      - name: servicemeshoperator.v2.1.2
        version: 2.1.2-0
      - name: servicemeshoperator.v2.1.1
        version: 2.1.1-0
      - name: servicemeshoperator.v2.1.0
        version: 2.1.0-0
      - name: servicemeshoperator.v2.0.8
        version: 2.0.8-0
      name: stable
    defaultChannel: stable
    packageName: servicemeshoperator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Arctera US LLC
      provider-url: https://www.arctera.io
    name: infoscale-licensing-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infoscale-licensing-operator.v8.0.220
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Developer"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator@sha256:feeabfe4ecd36205306e3f3bf6c11517cfee735d7ae7eb4350abd01e9d76610b
          createdAt: "2022-06-22T16:36:59Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          olm.skipRange: <8.0.220
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Veritas
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Veritas
        - InfoScale
        - Licensing
        - Veritas Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator@sha256:2f3de2bf46920cfe8c251011fc99841b43999561c1d3fe44850b205e94585a68
        - registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator-bundle@sha256:6d9eabdb4f645aa1b8b6c08ca94f9ec89466cdc35b3cb02aaba22e160d8fd9ea
        version: 8.0.220
      entries:
      - name: infoscale-licensing-operator.v8.0.220
        version: 8.0.220
      - name: infoscale-licensing-operator.v8.0.110
        version: 8.0.110
      - name: infoscale-licensing-operator.v8.0.100
        version: 8.0.100
      name: 8.0.200x
    - currentCSV: infoscale-licensing-operator.v8.0.330
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator@sha256:b357b2203466516684c8fbc209757a98a45ec2376981f8699faf7dd5e37486a3
          createdAt: "2022-06-22T16:36:59Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Veritas
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Veritas
        - InfoScale
        - Licensing
        - Veritas Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator-bundle@sha256:5484f8ecf079ee126d24c05e1bcb06467146b3b8e751e90e0fd68f3e933125f0
        - registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator@sha256:b357b2203466516684c8fbc209757a98a45ec2376981f8699faf7dd5e37486a3
        version: 8.0.330
      entries:
      - name: infoscale-licensing-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-licensing-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-licensing-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-licensing-operator.v8.0.301
        version: 8.0.301
      name: 8.0.300x
    - currentCSV: infoscale-licensing-operator.v8.0.410
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:1ebab8aec17e0e5260678616696be43b720f801127c97820b3a07f3a8cb73e6a
          createdAt: "2022-06-22T16:36:59Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Arctera
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Arctera
        - InfoScale
        - Licensing
        - Arctera Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-license-operator-bundle@sha256:f67479555b113a3ff194370dab48a517005001ce412a1d2ef1ecded9dd1c95f5
        - registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:1ebab8aec17e0e5260678616696be43b720f801127c97820b3a07f3a8cb73e6a
        version: 8.0.410
      entries:
      - name: infoscale-licensing-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-licensing-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-licensing-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-licensing-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-licensing-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-licensing-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-licensing-operator.v8.0.301
        version: 8.0.301
      name: 8.0.400x
    - currentCSV: infoscale-licensing-operator.v9.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:89f5066e017b4bff78ce790482dc8369fd180f05f8c5bc6cf69d8bfc8a73a87f
          createdAt: "2025-09-10T10:17:07Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Arctera
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Arctera
        - InfoScale
        - Licensing
        - Arctera Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-license-operator-bundle@sha256:61bc6246f9035d22572a63176f66b9789382d45d412f3585f9a784c3f8647f9c
        - registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:89f5066e017b4bff78ce790482dc8369fd180f05f8c5bc6cf69d8bfc8a73a87f
        version: 9.0.1
      entries:
      - name: infoscale-licensing-operator.v9.0.1
        version: 9.0.1
      name: beta
    - currentCSV: infoscale-licensing-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:a01d6ad7c33203ddbf6e4fc1eef6a83c7727627bff9f64b085a1bd4f38be434c
          createdAt: "2025-09-10T10:17:07Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Arctera
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Arctera
        - InfoScale
        - Licensing
        - Arctera Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-license-operator-bundle@sha256:06064589e5d1c391ad3126757269fec764e60e30e4f778b4ad32e2041198dbad
        - registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:a01d6ad7c33203ddbf6e4fc1eef6a83c7727627bff9f64b085a1bd4f38be434c
        version: 9.1.0
      entries:
      - name: infoscale-licensing-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-licensing-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-licensing-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-licensing-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-licensing-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-licensing-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-licensing-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-licensing-operator.v8.0.301
        version: 8.0.301
      name: fast
    - currentCSV: infoscale-licensing-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:a01d6ad7c33203ddbf6e4fc1eef6a83c7727627bff9f64b085a1bd4f38be434c
          createdAt: "2025-09-10T10:17:07Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Arctera
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Arctera
        - InfoScale
        - Licensing
        - Arctera Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-license-operator-bundle@sha256:06064589e5d1c391ad3126757269fec764e60e30e4f778b4ad32e2041198dbad
        - registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:a01d6ad7c33203ddbf6e4fc1eef6a83c7727627bff9f64b085a1bd4f38be434c
        version: 9.1.0
      entries:
      - name: infoscale-licensing-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-licensing-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-licensing-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-licensing-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-licensing-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-licensing-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-licensing-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-licensing-operator.v8.0.301
        version: 8.0.301
      name: stable
    defaultChannel: fast
    packageName: infoscale-licensing-operator
    provider:
      name: Arctera US LLC
      url: https://www.arctera.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: patch-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: patch-operator.v0.1.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Patch",
                "metadata": {
                  "name": "test-complex-patch"
                },
                "spec": {
                  "patches": {
                    "test-complex-patch": {
                      "patchTemplate": "metadata:\n  annotations:\n    {{ (index . 1).metadata.name }}: {{ (index . 2).metadata.name }}    \n",
                      "patchType": "application/strategic-merge-patch+json",
                      "sourceObjectRefs": [
                        {
                          "apiVersion": "v1",
                          "kind": "Namespace",
                          "name": "test-patch-operator"
                        },
                        {
                          "apiVersion": "v1",
                          "kind": "ServiceAccount",
                          "name": "default",
                          "namespace": "test-patch-operator"
                        }
                      ],
                      "targetObjectRef": {
                        "apiVersion": "v1",
                        "kind": "ServiceAccount",
                        "name": "test",
                        "namespace": "test-patch-operator"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/patch-operator@sha256:030ade9b9428deca3ac6390618dc4d6e6d728577d1467a22dc4d4b68c9848886
          createdAt: "2024-05-10T14:07:19Z"
          description: An operator to apply patches to Kubernetes objects in a declarative
            way.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: patch-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/patch-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Patch
            name: patches.redhatcop.redhat.io
            version: v1alpha1
        description: "The patch operator helps with defining patches in a declarative
          way. This operator has two main features:\n\n1. [ability to patch an object
          at creation time via a mutating webhook](#creation-time-patch-injection)\n2.
          [ability to enforce patches on one or more objects via a controller](#runtime-patch-enforcement)\n
          \n## Creation-time patch injection\n\nWhy apply a patch at creation time
          when you could directly create the correct object? The reason is that sometime
          the correct value depends on configuration set on the specific cluster in
          which the object is being deployed. For example, an ingress/route hostname
          might depend on the specific cluster. Consider the following example based
          on cert-manager:\n \n```yaml\napiVersion: cert-manager.io/v1\nkind: ClusterIssuer\nmetadata:\n
          \ name: letsencrypt-issuer\nspec:\n  acme:\n    server: 'https://acme-v02.api.letsencrypt.org/directory'\n
          \   email: {{ .Values.letsencrypt.email }}\n    privateKeySecretRef:\n      name:
          letsencrypt-staging\n    solvers:  \n    - dns01:\n        route53:\n          accessKeyID:
          << access_key >>\n          secretAccessKeySecretRef:\n            name:
          cert-manager-dns-credentials\n            key: aws_secret_access_key\n          region:
          << region >>\n          hostedZoneID: << hosted_zone_id >>\n ```\n\nIn this
          example the fields: `<< access_key >>`, `<< region >>` and `<< hosted_zone_id
          >>` are dependent on the specific region in which the cluster is being deployed
          and in many cases they are discoverable from other configurations already
          present in the cluster. If you want to deploy the above Cluster Issuer object
          with a gitops approach, then there is no easy way to discover those values.
          The solution so far is to manually discover those values and create a different
          gitops configuration for each cluster. But consider if you could look up
          values at deploy time based on the cluster you are deploying to. Here is
          how this object might look:\n\n```yaml\napiVersion: cert-manager.io/v1\nkind:
          ClusterIssuer\nmetadata:\n  name: letsencrypt-issuer\n  namespace: {{ .Release.Namespace
          }}\n  annotations:\n    \"redhat-cop.redhat.io/patch\": |\n      spec:\n
          \       acme:\n        - dns01:\n            route53:\n              accessKeyID:
          {{ (lookup \"v1\" \"Secret\" .metadata.namespace \"cert-manager-dns-credentials\").data.aws_access_key_id
          | b64dec }}\n              secretAccessKeySecretRef:\n                name:
          cert-manager-dns-credentials\n                key: aws_secret_access_key\n
          \             region: {{ (lookup \"config.openshift.io/v1\" \"Infrastructure\"
          \"\" \"cluster\").status.platformStatus.aws.region }}\n              hostedZoneID:
          {{ (lookup \"config.openshift.io/v1\" \"DNS\" \"\" \"cluster\").spec.publicZone.id
          }} \nspec:\n  acme:\n    server: 'https://acme-v02.api.letsencrypt.org/directory'\n
          \   email: {{ .Values.letsencrypt.email }}\n    privateKeySecretRef:\n      name:
          letsencrypt-staging\n    solvers:  \n    - dns01:\n        route53:\n          accessKeyID:
          << access_key >>\n          secretAccessKeySecretRef:\n            name:
          cert-manager-dns-credentials\n            key: aws_secret_access_key\n          region:
          << region >>\n          hostedZoneID: << hosted_zone_id >>\n ```\n\nThe
          annotation specifies a patch that will be applied by a [MutatingWebhook](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/),
          as you can see the three values are now looked up from different configurations
          in the cluster.\n\nTwo annotations influences the behavior of this MutatingWebhook\n
          \n1. \"redhat-cop.redhat.io/patch\" : this is the patch itself. The patch
          is evaluated as a template with the object itself as it's only parameter.
          The template is expressed in golang template notation and supports the same
          functions as helm template including the [lookup](https://helm.sh/docs/chart_template_guide/functions_and_pipelines/#using-the-lookup-function)
          function which plays a major role here. The patch must be expressed in yaml
          for readability. It will be converted to json by the webhook logic.\n2.
          \"redhat-cop.redhat.io/patch-type\" : this is the type of json patch. The
          possible values are: `application/json-patch+json`, `application/merge-patch+json`
          and `application/strategic-merge-patch+json`. If this annotation is omitted
          it defaults to strategic merge.\n\n### Security Considerations\n \nThe lookup
          function, if used by the template, is executed with a client which impersonates
          the user issuing the object creation/update request. This should prevent
          security permission leakage.\n\n### Installing the creation time webhook\n
          \nThe creation time webhook is not installed by the operator. This is because
          there is no way to know which specific object type should be intercepted
          and intercepting all of the types would be too inefficient. It's up to the
          administrator then to install the webhook. Here is some guidance.\n\nIf
          you installed the operator via OLM, use the following webhook template:\n\n```yaml\napiVersion:
          admissionregistration.k8s.io/v1\n kind: MutatingWebhookConfiguration\nmetadata:\n
          \ name: patch-operator-inject\n  annotations:\n    service.beta.openshift.io/inject-cabundle:
          \"true\"\nwebhooks:\n - admissionReviewVersions:\n  - v1\n  clientConfig:\n
          \   service:\n      name: patch-operator-webhook-service\n      namespace:
          patch-operator\n      path: /inject\n  failurePolicy: Fail\n  name: patch-operator-inject.redhatcop.redhat.io\n
          \ rules:\n  - << add your intercepted objects here >>\n  sideEffects: None\n```\n\nIf
          you installed the operator via the Helm chart and are using cert-manager,
          use the following webhook template:\n\n```yaml\napiVersion: admissionregistration.k8s.io/v1\n
          kind: MutatingWebhookConfiguration\nmetadata:\n  name: patch-operator-inject\n
          \ annotations:\n    cert-manager.io/inject-ca-from: '{{ .Release.Namespace
          }}/webhook-server-cert'\n webhooks:\n- admissionReviewVersions:\n  - v1\n
          \ clientConfig:\n    service:\n      name: patch-operator-webhook-service\n
          \     namespace: patch-operator\n      path: /inject\n  failurePolicy: Fail\n
          \ name: patch-operator-inject.redhatcop.redhat.io\n  rules:\n  - << add
          your intercepted objects here >>\n  sideEffects: None\n```  \n\nYou should
          need to enable the webhook only for `CREATE` operations. So for example
          to enable the webhook on configmaps:\n\n```yaml\n  rules:\n  - apiGroups:\n
          \   - \"\"\n    apiVersions:\n    - v1\n    operations:\n    - CREATE\n
          \   resources:\n    - configmaps\n```\n\n## Runtime patch enforcement\n\nThere
          are situations when we need to patch pre-existing objects. Again this is
          a use case that is hard to model with gitops operators which will work only
          on object that they own. Especially with sophisticated Kubernetes distributions,
          it is not uncommon that a Kubernetes instance, at installation time, is
          configured with some default settings. Changing those configurations means
          patching those objects. For example, let's take the case of OpenShift Oauth
          configuration. This object is present by default and it is expected to be
          patched with any newly enabled authentication mechanism. This is how it
          looks like after installation:\n\n```yaml\napiVersion: config.openshift.io/v1\n
          kind: OAuth\nmetadata:\n  name: cluster\n  ownerReferences:\n    - apiVersion:
          config.openshift.io/v1\n      kind: ClusterVersion\n      name: version\n
          \     uid: 9a9d450b-3076-4e30-ac05-a889d6341fc3\n  resourceVersion: '20405124'\n
          spec: []\n```\n\nIf we need to patch it we can use the patch controller
          and the `Patch` object as follows:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n
          kind: Patch\nmetadata:\n  name: gitlab-ocp-oauth-provider\n  namespace:
          openshift-config\nspec:\n  serviceAccountRef:\n    name: default\n  patches:\n
          \   gitlab-ocp-oauth-provider:\n      targetObjectRef:\n        apiVersion:
          config.openshift.io/v1\n        kind: OAuth\n        name: cluster\n      patchTemplate:
          |\n        spec:\n          identityProviders:\n          - name: my-github
          \n            mappingMethod: claim \n            type: GitHub\n            github:\n
          \             clientID: \"{{ (index . 1).data.client_id | b64dec }}\" \n
          \             clientSecret: \n                name: ocp-github-app-credentials\n
          \             organizations: \n              - my-org\n              teams:
          []            \n      patchType: application/merge-patch+json\n      sourceObjectRefs:\n
          \     - apiVersion: v1\n        kind: Secret\n        name: ocp-github-app-credentials\n
          \       namespace: openshift-config\n```\n\nThis will cause the OAuth object
          to be patched and the patch to be enforced. That means that if anything
          changes on the secret that we use a parameter (which may be rotated) or
          in Oauth object itself, the patch will be reapplied. In this case we are
          adding a gitlab authentication provider.\n\n A `patch` has the following
          fields:\n\n`targetObjectRef` this refers to the object(s) receiving the
          patch. Mutliple object can be selected based on the following rules:\n \n|
          Namespaced Type | Namespace | Name | Selection type |\n| --- | --- | ---
          | --- |\n| yes | null | null | multiple selection across namespaces |\n|
          yes | null | not null | multiple selection across namespaces where the name
          corresponds to the passed name |\n| yes | not null | null | multiple selection
          within a namespace |\n| yes | not null | not nul | single selection |\n|
          no | N/A | null | multiple selection  |\n| no | N/A | not null | single
          selection |\n\nSelection can be further narrowed down by filtering by labels
          and/or annotations using the `labelSelector` and `annotationSelector` fields.
          The patch will be applied to all of the selected instances.\n\n`sourceObjectRefs`
          these are the objects that will be watched and become part of the parameters
          of the patch template. Name and Namespace of sourceRefObjects are interpreted
          as golang templates with the current target instance and the only parameter.
          This allows to select different source object for each target object.\n
          \nSo, for example, with this patch:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n
          kind: Patch\nmetadata:\n  name: multiple-namespaced-targets-patch\nspec:\n
          \ serviceAccountRef:\n    name: default\n  patches:\n    multiple-namespaced-targets-patch:\n
          \     targetObjectRef:\n        apiVersion: v1\n        kind: ServiceAccount\n
          \       name: deployer\n      patchTemplate: |\n        metadata:\n          annotations:\n
          \           {{ (index . 1).metadata.uid }}: {{ (index . 1) }}\n      patchType:
          application/strategic-merge-patch+json\n      sourceObjectRefs:\n      -
          apiVersion: v1\n        kind: ServiceAccount\n        name: default\n        namespace:
          \"{{ .metadata.namespace }}\"\n        fieldPath: $.metadata.uid\n```\n\nThe
          `deployer` service accounts from all namespaces are selected as target of
          this patch, each patch template will receive a different parameter and that
          is the `default` service account of the same namespace as the namespace
          of the `deployer` service account being processed.\n\n`sourceObjectRefs`
          also have the `fieldPath` field which can contain a jsonpath expression.
          If a value is passed the jsonpath expression will be calculate for the current
          source object and the result will be passed as parameter of the template.\n\n`patchTemplate`
          This is the the template that will be evaluated. The result must be a valid
          patch compatible with the requested type and expressed in yaml for readability.
          The parameters passed to the template are the target object and then the
          all of the source object. So if you want to refer to the target object in
          the template you can use this expression `(index . 0)`. Higher indexes refer
          to the sourceObjectRef array. The template is expressed in golang template
          notation and supports the same functions as helm template.\n\n`patchType`
          is the type of the json patch. The possible values are: `application/json-patch+json`,
          `application/merge-patch+json` and `application/strategic-merge-patch+json`.
          If this annotation is omitted it defaults to strategic merge.\n\n### Patch
          Controller Security Considerations\n\nThe patch enforcement enacted by the
          patch controller is executed with a client which uses the service account
          referenced by the `serviceAccountRef` field. So before a patch object can
          actually work an administrator must have granted the needed permissions
          to a service account in the same namespace. The `serviceAccountRef` will
          default to the `default` service account if not specified.\n\n### Patch
          Controller Performance Considerations\n\nThe patch controller will create
          a controller-manager and per `Patch` object and a reconciler for each of
          the `PatchSpec` defined in the array on patches in the `Patch` object.\nThese
          reconcilers share the same cached client. In order to be able to watch changes
          on target and source objects of a `PatchSpec`, all of the target and source
          object type instances will be cached by the client. This is a normal behavior
          of a controller-manager client, but it implies that if you create patches
          on object types that have many instances in etcd (Secrets, ServiceAccounts,
          Namespaces for example), the patch operator instance will require a significant
          amount of memory. A way to contain this issue is to try to aggregate together
          `PatchSpec` that deal with the same object types. This will cause those
          object type instances to cached only once.  \n"
        displayName: Patch Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - patch
        - enforcing
        - declarative
        links:
        - name: Patch Operator
          url: https://github.com/redhat-cop/patch-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/patch-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/community-operator-pipeline-prod/patch-operator@sha256:437f5b7c661d3e9bc2c8ac13b0c8f3565f685b9e5ef52791312bc64d55e2e476
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/patch-operator@sha256:030ade9b9428deca3ac6390618dc4d6e6d728577d1467a22dc4d4b68c9848886
        version: 0.1.11
      entries:
      - name: patch-operator.v0.1.11
        version: 0.1.11
      - name: patch-operator.v0.1.10
        version: 0.1.10
      - name: patch-operator.v0.1.9
        version: 0.1.9
      - name: patch-operator.v0.1.8
        version: 0.1.8
      - name: patch-operator.v0.1.7
        version: 0.1.7
      - name: patch-operator.v0.1.6
        version: 0.1.6
      - name: patch-operator.v0.1.5
        version: 0.1.5
      - name: patch-operator.v0.1.4
        version: 0.1.4
      - name: patch-operator.v0.1.3
        version: 0.1.3
      - name: patch-operator.v0.1.2
        version: 0.1.2
      - name: patch-operator.v0.1.1
        version: 0.1.1
      - name: patch-operator.v0.1.0
        version: 0.1.0
      - name: patch-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: patch-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Performance
      provider-url: ""
    name: cluster-impairment-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-impairment-operator.v1.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "all-impairments"
                },
                "spec": {
                  "duration": 480,
                  "egress": {
                    "bandwidth": 10000,
                    "latency": 50,
                    "loss": 0.02
                  },
                  "ingress": {
                    "bandwidth": 10000,
                    "latency": 50,
                    "loss": 0.02
                  },
                  "interfaces": [
                    "ens2f0"
                  ],
                  "linkFlapping": {
                    "downTime": 30,
                    "enable": true,
                    "upTime": 120
                  },
                  "startDelay": 5
                }
              },
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "duplication"
                },
                "spec": {
                  "duration": 60,
                  "egress": {
                    "duplication": 25
                  },
                  "ingress": {
                    "duplication": 25
                  },
                  "interfaces": [
                    "ens3"
                  ],
                  "startDelay": 5
                }
              },
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "two-min-flap"
                },
                "spec": {
                  "duration": 480,
                  "interfaces": [
                    "ens2f0"
                  ],
                  "linkFlapping": {
                    "downTime": 120,
                    "enable": true,
                    "upTime": 120
                  },
                  "startDelay": 5
                }
              },
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "typical-scenario"
                },
                "spec": {
                  "duration": 30,
                  "egress": {
                    "latency": 50
                  },
                  "ingress": {
                    "latency": 50
                  },
                  "interfaces": [
                    "ens2f0",
                    "eno1"
                  ],
                  "loss": 0.02,
                  "startDelay": 5
                }
              },
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "uneven-latency"
                },
                "spec": {
                  "duration": 60,
                  "egress": {
                    "latency": 100
                  },
                  "ingress": {
                    "latency": 10
                  },
                  "interfaces": [
                    "ens2f0"
                  ],
                  "nodeSelector": {
                    "key": "node-role.kubernetes.io/worker",
                    "value": ""
                  },
                  "startDelay": 5
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking, Developer Tools
          containerImage: quay.io/redhat-performance/cluster-impairment-operator:1.0.4
          createdAt: "2021-08-11 12:15:00"
          description: Run Impairments on Kubernetes/Openshift Nodes
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/redhat-performance/cluster-impairment-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterImpairment
            name: clusterimpairments.apps.redhat.com
            version: v1alpha1
        description: "cluster-impairment-operator is an operator designed to automate
          the application of impairments to the nodes in a cluster.\n\n## Features\n\nTraffic
          Direction:\n\n* Egress impairments affect the traffic going out.    \n*
          Ingress impairments affect the traffic coming in. (Ingress impairments require
          the kernel module IFB.)\n\n### Impairments\n\n| Impairment    | Description
          \                               | Unit    | Uses Netem | Correlation Supported
          |\n|---------------|--------------------------------------------|---------|------------|-----------------------|\n|
          Bandwidth     | The bandwidth limit                        | kbit/s  | Yes
          \       | No                    |\n| Latency       | The delay of the packets
          \                  | ms      | Yes        | Yes                   |\n| Packet
          Loss   | The percent of packets that are dropped    | percent | Yes        |
          Yes                   |\n| Corruption    | The percent of packets that are
          corrupted  | percent | Yes        | Yes                   |\n| Duplication
          \  | The percent of packets that are duplicated | percent | Yes        |
          Yes                   |\n| Link Flapping | Turns the interface on and off
          \            | bool    | No         | No                    |\n\n\nOn the
          tested environment (RHEL CoreOS 48.84), the impairments can be used alongside
          link flapping.\n\n\n#### Latency Options\n\nIn addition to simply delaying
          the packets, there are advanced latency options.\n\n##### Jitter\n\nSemi-randomly
          adds or subtracts from the latency according to the distribution up to the
          amount specified.\nIf latency is 100ms, and jitter is 10ms, the actual latency
          will vary 100±10ms.\n\n\n##### Distribution\n\nThe distribution of the jitter.
          The options are:\n* Normal\n* Uniform\n* Pareto\n* Paretonormal\n\n#####
          Jitter correlation\n\nThe percent chance that the next latency's jitter
          value will correlate with the preceeding latency.\n\n##### Reorder\n\nThe
          percentage of packets that are not delayed, causing a reorder due to them
          being sent before the delayed ones.\nApplying jitter itself has the potential
          to also cause reordering.\n\n##### Reorder correlation\n\nThe percet chance
          that the value for the next reorder will correlate with the preceeding value.\n\n####
          Loss options\n\n##### Correlation\n\nThe percent chance that the previous
          loss value for a packet correlates with the loss value for the next packet.\n\n####
          Corruption options\n\n###### Corruption\n\nThe percent chance that each
          packet will be corrupted.\n\n##### Corruption correlation\n\nThe percet
          chance that the value for the next corruption will correlate with the preceeding
          value.\n\n#### Duplication options\n\n##### Duplication\n\nThe percent chance
          that each packet will be duplicated.\n\n##### Duplication correlation\n\nThe
          percet chance that the value for the next duplication will correlate with
          the preceeding value.\n\n\n\n## Configuration\n\nHere is an example of the
          ClusterImpairment custom resource.\n\n\n```\n\napiVersion: apps.redhat.com/v1alpha1\nkind:
          ClusterImpairment\nmetadata:\n  name: test-impairment-cr\nspec:\n  duration:
          30 # seconds\n  startDelay: 5 # seconds. It typically takes about 2-3 seconds
          for the Daemonset to run\n  interfaces:\n  - \"ens2f0\"\n  ingress: # uses
          ifb\n    bandwidth: 0 # kbit\n    latency: 10 # ms\n    latencyOptions:\n
          \     jitter: 5 # ms\n      jitterCorrelation: 25 # percent\n      distribution:
          normal\n      reorder: 25 # percent of packets that will skip the delay\n
          \     reorderCorrelation: 25 # percent\n    loss: 0 # percent\n    lossOptions:\n
          \     correlation: 25 # percent\n    corruption: 0.1 # percent\n    corruptionOptions:\n
          \     correlation: 25 # percent\n    duplication: 1 # percent\n    duplicationOptions:\n
          \     correlation: 25 # percent\n  egress:\n    bandwidth: 0 # kbit\n    latency:
          100 # ms\n    loss: 0 # percent\n  linkFlapping:\n    enable: false\n    downTime:
          3 # Seconds\n    upTime: 3 # Seconds\n  nodeSelector:\n    key: \"node-role.kubernetes.io/worker\"\n
          \   value: \"\"\n    \n```\n\n#### Interfaces\n\nThe interfaces configuration
          option is a list of all interfaces that the impairments should be applied
          to. The current implementation will error out once it hits an invalid interface.\n\nIf
          an invalid interface is found, it will print out the list of interfaces.\n\n####
          Node Selector\n\nThe default node selector is all worker nodes, but you
          can change it to whatever node selector you want by setting the key and
          value.\nThere is a toleration to allow it to run on master nodes if the
          node selector includes master nodes.\n\n#### Duration\n\nThe number of seconds
          the impairments should run. It will try to sync the start and end time between
          all pods.\nIf set to -1, it will run indefinitely (a year), until you remove
          the ClusterImpairment custom resource. This is good for testing that requires
          steady impairments.\n\nIf the script is link flapping, set this value to
          be short enough so that if the link flap interrupts communication between
          the nodes, the daemonset will remove itself.\n\n#### Start Delay\n\nThe
          delay before starting the script. If you want the pods to be in sync, a
          minimum of a few seconds should be used because the pods take time to start
          up.\n\nYou can also utilize this feature to run an separate impairment after
          another. Just apply two resources at the same time, but add the duration
          and start delay of the first to the start delay of the second.\n\n#### Ingress
          and Egress\n\nThe configuration sections \"ingress\" and \"egress\" apply
          to each direction.\n\n##### Examples:\n\n##### Example 1\n\n\nIn this example,
          egress latency is set to 100ms, but the ingress latency is set to 10ms.
          So the latency to the interface will end up being 10ms, but 100ms going
          out. When pinging, this will result in 110ms of latency.\n\n```\n\napiVersion:
          apps.redhat.com/v1alpha1\nkind: ClusterImpairment\nmetadata:\n  name: uneven-latency\nspec:\n
          \ duration: 60\n  startDelay: 5\n  interfaces:\n  - \"ens2f0\"\n  ingress:\n
          \   latency: 10 # ms\n  egress:\n    latency: 100 # ms\n\n```\n\n##### Example
          2\n\n\nIn this example, link flapping will be enabled, and it will turn
          the interface on and off every 2 minutes. That is long enough for kubernetes
          to determine that a node is unavailable.\n\n```\n\napiVersion: apps.redhat.com/v1alpha1\nkind:
          ClusterImpairment\nmetadata:\n  name: two-min-flap\nspec:\n  duration: 480\n
          \ startDelay: 5\n  interfaces:\n  - \"ens2f0\"\n  linkFlapping:\n    enable:
          true\n    downTime: 120 # Seconds\n    upTime: 120 # Seconds\n\n```\n\n#####
          Example 3\n\n\nIn this example, a realistic set of impairments is applied
          to `ens2f0` and `eno1` for 30 seconds:\n\n```\n\napiVersion: apps.redhat.com/v1alpha1\nkind:
          ClusterImpairment\nmetadata:\n  name: typical-scenario\nspec:\n  duration:
          30 # seconds\n  startDelay: 5 # seconds\n  interfaces:\n  - \"ens2f0\"\n
          \ - \"eno1\"\n  egress:\n    latency: 50 # ms. Bidirectional, so total of
          100ms\n  ingress:\n    latency: 50 # ms. Bidirectional, so total of 100ms\n
          \ loss: 0.02 # percent\n\n```\n\n##### Example 4\n\n\nIn this example, a
          combination of latency, packet loss, bandwidth, and link flapping is applied.\n\n```\n\napiVersion:
          apps.redhat.com/v1alpha1\nkind: ClusterImpairment\nmetadata:\n  name: all-impairments\nspec:\n
          \ duration: 480 # seconds\n  startDelay: 5 # seconds\n  interfaces:\n  -
          \"ens2f0\"\n  egress:\n    latency: 50 # ms. Bidirectional, so total of
          100ms\n    loss: 0.02 # percent\n    bandwidth: 1000 # 1000 kbit/s, about
          1 mbit/s\n  ingress:\n    latency: 50 # ms. Bidirectional, so total of 100ms\n
          \   loss: 0.02 # percent\n    bandwidth: 1000 # 1000 kbit/s, about 1 mbit/s\n
          \ linkFlapping:\n    enable: true\n    downTime: 30 # Seconds\n    upTime:
          120 # Seconds\n\n```\n\n##### Example 5\n\n\nIn this example, packet duplicaiton
          is applied.\n\n\n```\n\napiVersion: apps.redhat.com/v1alpha1\nkind: ClusterImpairment\nmetadata:\n
          \ name: duplication\nspec:\n  duration: 60\n  startDelay: 5\n  interfaces:\n
          \ - \"ens3\"\n  ingress:\n    duplication: 25 # percent\n  egress:\n    duplication:
          25 # percent\n\n```\n\n## Setup\n\n### Requirements\n\n1. You need `make`
          installed.\n2. You need access to the kubernetes cluster with a kubeconfig.\n\n###
          Installation\n\nTo run using the current latest image:\n1. Clone the repository.\n2.
          Run `make deploy` with KUBECONFIG environment variable set to the location
          of the kubeconfig.\n\nTo run with your own code, there are more steps.\n1.
          Fork the repository.\n2. Clone to a machine that has access to the Kubernetes
          cluster and the kubeconfig.\n3. Modify the makefile to change the `IMG`
          variable to your image repository. If you do not have podman installed,
          also change podman to docker.\n4. Run `make docker-build` then `make docker-push`.\n5.
          Then run `make deploy`\n\n### Deploying from operator-hub\n\n*Important*
          You must manually apply the serviceaccount!\n\nFirst, Follow the instructions
          on this site to deploy from here.\n\nNext, apply the manifest \"serviceaccount.yaml\"
          from the manifests folder.\n\nThen you can apply your ClusterImpairment
          resources.\n\n## Running impairments\n\nFirst, configure a ClusterImpairment
          type's spec with the information for the impairment you want to run. Most
          importantly, set the interface(s). You can list the interfaces with `ifconfig`.
          If an invalid interface is set, the pod's logs will show `ifconfig` output.\n\n\nOnce
          the clusterimpairment type is set, apply it and it will work.\n\n\nTo re-run
          an impairment, delete the impairment with `oc delete -f path/to/manifest.yaml`,
          then apply it again.\n\n\n## Limitations\n\n\n### Multiple Impairments\n\n\nYou
          should avoid any configurations that apply impairments to the same interface
          on the same node. There are potential conflicts. The worker pod will attempt
          to remove all impairments on that interface before applying new ones.\n\n\nInstead,
          take advantage of the full control of both ingress and egress impairments
          from within the same ClusterImpairment resource.\n\n\nThere is currently
          a configured limit of 20 ClusterImpairment resources working at the same
          time. If that is a limitation for your use case, you can change it in `config/manager/manager.yaml`
          or you can try to find a way to make each ClusterImpairment do more.\n\n###
          Traffic Control (TC)\n\nTraffic control is how cluster-impairment-operator
          applies the latency, bandwidth, and packet loss impairments. The limitation
          is due to Linux not being realtime operating system, so the impairment will
          not be perfectly consistent.\n\n### Link Flapping\n\nWhen link flapping,
          if you flap the link that Kubernetes uses to communicate with the pods,
          you may be unable to remove the pod until the link is on long enough for
          Kubernetes to communicate with the impaired node.\n\n\nIn this case, it
          is helpful to set the duration properly instead of running for an indefinite
          or large amount of time, because the node will properly go back to the unimpaired
          state at that time.\n\n\nIf the cluster becomes offline due to the link
          flapping when you do not want it to be offline, soft restarting the nodes
          after removing the custom resource should remove all impairments.\n"
        displayName: cluster-impairment-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network
        - impairment
        - kubernetes
        - openshift
        - tc
        - trafficcontrol
        links:
        - name: Cluster Impairment Operator
          url: https://github.com/redhat-performance/cluster-impairment-operator
        maintainers:
        - email: joconnel@redhat.com
          name: Jared O'Connell
        - email: akrzos@redhat.com
          name: Alex Krzos
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat Performance
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/cluster-impairment-operator@sha256:6fd114eb8f525f670e505373c2999a4e66b53beda988e99b267204d2fe0e1b4f
        - quay.io/redhat-performance/cluster-impairment-operator:1.0.4
        version: 1.0.4
      entries:
      - name: cluster-impairment-operator.v1.0.4
        version: 1.0.4
      - name: cluster-impairment-operator.v1.0.3
        version: 1.0.3
      - name: cluster-impairment-operator.v1.0.2
        version: 1.0.2
      - name: cluster-impairment-operator.v1.0.1
        version: 1.0.1
      name: beta
    defaultChannel: beta
    packageName: cluster-impairment-operator
    provider:
      name: Red Hat Performance
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: dpu-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dpu-network-operator.4.13.0-202309181427
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dpu.openshift.io/v1alpha1",
                "kind": "OVNKubeConfig",
                "metadata": {
                  "name": "ovnkubeconfig-sample"
                },
                "spec": {
                  "kubeConfigFile": "tenant-cluster-1-kubeconf",
                  "nodeSelector": {
                    "matchLabels": {
                      "node-role.kubernetes.io/dpu-worker": ""
                    }
                  },
                  "poolName": "dpu"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional, Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/dpu-network-rhel8-operator@sha256:d07b8ecb5d1625599878b5c1e34b0de94188b81d90c829787a2d13969f6d5971
          createdAt: "2023-07-13T18:03:11Z"
          description: The operator is responsible for the life-cycle management of
            the ovn-kube components and the necessary host network initialization
            on DPU cards.
          olm.skipRange: '>=4.10.0-0 <4.13.0-202309181427'
          operatorframework.io/suggested-namespace: openshift-dpu-network-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/dpu-network-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OVNKubeConfig is the Schema for the ovnkubeconfigs API
            displayName: OVNKube Config
            kind: OVNKubeConfig
            name: ovnkubeconfigs.dpu.openshift.io
            version: v1alpha1
        description: The operator to be responsible for the life-cycle management
          of the ovn-kube components and the necessary host network initialization
          on DPU cards.
        displayName: DPU Network Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dpu
        - network
        links:
        - name: Dpu Network Operator
          url: https://dpu-network-operator.domain
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/dpu-network-rhel8-operator@sha256:d07b8ecb5d1625599878b5c1e34b0de94188b81d90c829787a2d13969f6d5971
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:767682dd3bd65651a8204c9fb732b9c48b99127189992b43abc6ecce027f4589
        - registry.redhat.io/openshift4/dpu-network-operator-bundle@sha256:006edc597eec839f960bfd191b75217fc8c6bfaea9d1694e7ac9fa34266f9b4f
        version: 4.13.0-202309181427
      entries:
      - name: dpu-network-operator.4.13.0-202309181427
        version: 4.13.0-202309181427
      name: stable
    defaultChannel: stable
    packageName: dpu-network-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Isovalent, part of Cisco
      provider-url: https://isovalent.com/
    name: clife
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clife.v1.16.17-cee.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cilium.io/v1alpha1",
                "kind": "CiliumConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "clife"
                  },
                  "name": "ciliumconfig"
                },
                "spec": {
                  "cluster": {
                    "name": "default"
                  },
                  "clusterHealthPort": 9940,
                  "cni": {
                    "binPath": "/var/lib/cni/bin",
                    "chainingMode": "portmap",
                    "confPath": "/var/run/multus/cni/net.d",
                    "exclusive": false
                  },
                  "enterprise": {
                    "featureGate": {
                      "approved": [
                        "CNIChainingMode"
                      ]
                    }
                  },
                  "hubble": {
                    "enabled": true
                  },
                  "ipam": {
                    "mode": "cluster-pool"
                  },
                  "kubeProxyReplacement": false,
                  "operator": {
                    "prometheus": {
                      "enabled": true,
                      "serviceMonitor": {
                        "enabled": true
                      }
                    }
                  },
                  "prometheus": {
                    "enabled": true,
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "securityContext": {
                    "privileged": true
                  },
                  "sessionAffinity": true,
                  "tunnelPort": 4789
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Networking,Security
          createdAt: "2025-11-25T07:15:13Z"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CiliumConfig defines the configuration of Isovalent Networking
              for Kubernetes and all its components
            displayName: CiliumConfig
            kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Networking for Kubernetes, built on Cilium, provides
          eBPF-based networking, observability, and security with optimal scale and
          performance for platform teams operating Kubernetes environments across
          cloud and on-prem infrastructure.
        displayName: Isovalent Networking for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Cilium
        - networking
        - observability
        - security
        - eBPF
        - CNI
        links:
        - name: Isovalent Networking for Kubernetes
          url: https://isovalent.com/product/
        maintainers:
        - email: support@isovalent.com
          name: Isovalent, part of Cisco
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Isovalent, part of Cisco
          url: https://isovalent.com/
        relatedImages:
        - quay.io/isovalent/certgen-ubi:v1.16.17-cee.1@sha256:29b6a63fd696f362feb4845f20ac92f42ca7898a62c380b46704801c271f4c5d
        - quay.io/isovalent/clife@sha256:9dd151a5a693d4126745d93c65ffb30871350e5c7ece43d6175e2483a4387071
        - quay.io/isovalent/hubble-relay-ubi:v1.16.17-cee.1@sha256:fdc9152855df11cca45593a99c4982264037843b4ca0461071564e8919364c55
        - quay.io/isovalent/startup-script-ubi:v1.16.17-cee.1@sha256:acd5d43f2cfee6ab165ef7c34af484a67963be5aecf11039c86b5f7bab6bf58d
        - quay.io/isovalent/cilium-envoy-ubi:v1.16.17-cee.1@sha256:bea6ea831a03793390b3575d531a63450b5a13f1dc56d707986d4b09d4f25083
        - quay.io/isovalent/operator-generic-ubi:v1.16.17-cee.1@sha256:2479dd34bcf22d0dca632b3511df79db0c54229d78e9a60b63a983f4e27d07f9
        - quay.io/isovalent/cilium-ubi:v1.16.17-cee.1@sha256:02a6e4a3b599c9aa5f3cab11f824cb60984da996cb0d18dc50f761c3744f4efb
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.16.17-cee.1@sha256:f5f122e52d8f45e290d9da0170f5dd1360e3789ce021e50841d0176371fa7ba7
        - registry.connect.redhat.com/isovalent/clife-bundle@sha256:c1602e6b2b5afdc108e17734ee8a6ef416dd62eb55fb78cfff6776511d996b1c
        version: 1.16.17-cee.1
      entries:
      - name: clife.v1.16.17-cee.1
        version: 1.16.17-cee.1
      name: "1.16"
    - currentCSV: clife.v1.17.10-cee.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cilium.io/v1alpha1",
                "kind": "CiliumConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "clife"
                  },
                  "name": "ciliumconfig"
                },
                "spec": {
                  "cluster": {
                    "name": "default"
                  },
                  "clusterHealthPort": 9940,
                  "cni": {
                    "binPath": "/var/lib/cni/bin",
                    "chainingMode": "portmap",
                    "confPath": "/var/run/multus/cni/net.d",
                    "exclusive": false
                  },
                  "enterprise": {
                    "featureGate": {
                      "approved": [
                        "CNIChainingMode"
                      ]
                    }
                  },
                  "hubble": {
                    "enabled": true
                  },
                  "ipam": {
                    "mode": "cluster-pool"
                  },
                  "kubeProxyReplacement": false,
                  "operator": {
                    "prometheus": {
                      "enabled": true,
                      "serviceMonitor": {
                        "enabled": true
                      }
                    }
                  },
                  "prometheus": {
                    "enabled": true,
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "securityContext": {
                    "privileged": true
                  },
                  "sessionAffinity": true,
                  "tunnelPort": 4789
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Networking,Security
          createdAt: "2025-12-03T02:47:07Z"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CiliumConfig defines the configuration of Isovalent Networking
              for Kubernetes and all its components
            displayName: CiliumConfig
            kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Networking for Kubernetes, built on Cilium, provides
          eBPF-based networking, observability, and security with optimal scale and
          performance for platform teams operating Kubernetes environments across
          cloud and on-prem infrastructure.
        displayName: Isovalent Networking for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Cilium
        - networking
        - observability
        - security
        - eBPF
        - CNI
        links:
        - name: Isovalent Networking for Kubernetes
          url: https://isovalent.com/product/
        maintainers:
        - email: support@isovalent.com
          name: Isovalent, part of Cisco
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Isovalent, part of Cisco
          url: https://isovalent.com/
        relatedImages:
        - registry.connect.redhat.com/isovalent/clife-bundle@sha256:d101066873649de3146929ced913ddb60ba82c57ef2be5b6dad8d57650c65ee8
        - quay.io/isovalent/cilium-ubi:v1.17.10-cee.2@sha256:9f60ad3e84cd3af01ef597de9e8160a0fa6778eb9c9e6ba33edceb2183631bfa
        - quay.io/isovalent/startup-script-ubi:v1.17.10-cee.2@sha256:28920cfccc2001abab830248ae627c313eb6eb1652018972ce7b4931904e1f49
        - quay.io/isovalent/certgen-ubi:v1.17.10-cee.2@sha256:12101c99158461fc2a8d66edad8226825ef38cf383ac673126e08b0b23b4ae72
        - quay.io/isovalent/clife@sha256:49d40a233552fc881bfdd1be35912e1e4392181ccb85937bc42c9475d857284e
        - quay.io/isovalent/cilium-envoy-ubi:v1.17.10-cee.2@sha256:c49bf199b69d159dfb281b33bbd2fa8c5b2534dc04b7062fe53e41d079ed7629
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.17.10-cee.2@sha256:1d5eaafd93007172cbd22e3bde8ba37d4208be6621cc12f4550eb4910f70e7fb
        - quay.io/isovalent/hubble-relay-ubi:v1.17.10-cee.2@sha256:abfcafbf62bced38cd883ff4da609aab9ce94bd36370a7aff3c4fdbd237d4898
        - quay.io/isovalent/operator-generic-ubi:v1.17.10-cee.2@sha256:45c76bd41041f67d77634b83e5e6fbc016ff1b7905afb6424dba6b6c27340561
        version: 1.17.10-cee.2
      entries:
      - name: clife.v1.17.10-cee.2
        version: 1.17.10-cee.2
      - name: clife.v1.17.10-cee.1
        version: 1.17.10-cee.1
      - name: clife.v1.17.9-cee.1
        version: 1.17.9-cee.1
      - name: clife.v1.17.8-cee.1
        version: 1.17.8-cee.1
      - name: clife.v1.17.7-cee.1
        version: 1.17.7-cee.1
      - name: clife.v1.17.5-cee.1
        version: 1.17.5-cee.1
      - name: clife.v1.17.4-cee.1
        version: 1.17.4-cee.1
      - name: clife.v0.0.1
        version: 0.0.1
      name: "1.17"
    - currentCSV: clife.v1.18.4-cee.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cilium.io/v1alpha1",
                "kind": "CiliumConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "clife"
                  },
                  "name": "ciliumconfig"
                },
                "spec": {
                  "cluster": {
                    "name": "default"
                  },
                  "clusterHealthPort": 9940,
                  "cni": {
                    "binPath": "/var/lib/cni/bin",
                    "chainingMode": "portmap",
                    "confPath": "/var/run/multus/cni/net.d",
                    "exclusive": false
                  },
                  "enterprise": {
                    "featureGate": {
                      "approved": [
                        "CNIChainingMode"
                      ]
                    }
                  },
                  "hubble": {
                    "enabled": true
                  },
                  "ipam": {
                    "mode": "cluster-pool"
                  },
                  "kubeProxyReplacement": false,
                  "operator": {
                    "prometheus": {
                      "enabled": true,
                      "serviceMonitor": {
                        "enabled": true
                      }
                    }
                  },
                  "prometheus": {
                    "enabled": true,
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "securityContext": {
                    "privileged": true
                  },
                  "sessionAffinity": true,
                  "tunnelPort": 4789
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Networking,Security
          createdAt: "2025-11-25T07:07:17Z"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CiliumConfig defines the configuration of Isovalent Networking
              for Kubernetes and all its components
            displayName: CiliumConfig
            kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Networking for Kubernetes, built on Cilium, provides
          eBPF-based networking, observability, and security with optimal scale and
          performance for platform teams operating Kubernetes environments across
          cloud and on-prem infrastructure.
        displayName: Isovalent Networking for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Cilium
        - networking
        - observability
        - security
        - eBPF
        - CNI
        links:
        - name: Isovalent Networking for Kubernetes
          url: https://isovalent.com/product/
        maintainers:
        - email: support@isovalent.com
          name: Isovalent, part of Cisco
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Isovalent, part of Cisco
          url: https://isovalent.com/
        relatedImages:
        - quay.io/isovalent/cilium-envoy-ubi:v1.18.4-cee.1@sha256:d40843aa7dbd9e3136d9491f231182a85e7c163f5aab97d64270e12389bc5be4
        - quay.io/isovalent/startup-script-ubi:v1.18.4-cee.1@sha256:d8396159dcf9b80e0b53d368da7b76a815f27439659995116b873070a3a4ba6b
        - registry.connect.redhat.com/isovalent/clife-bundle@sha256:f18fb8ec75c6664461a770dbb358f07822c965f72cff2be79fff733c30b26d26
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.18.4-cee.1@sha256:e6b85075e551fb685f7a87557373d7d315d461d0b59ceeaff353a253290cbcbb
        - quay.io/isovalent/cilium-ubi:v1.18.4-cee.1@sha256:039a42fe11110cc80a522341be889ab9be925532256427b71a240f021155171c
        - quay.io/isovalent/hubble-relay-ubi:v1.18.4-cee.1@sha256:c6ed87627321b26c9451c1a1cd5dad9fde71359106161c855ec2ae52a39e162c
        - quay.io/isovalent/operator-generic-ubi:v1.18.4-cee.1@sha256:15077a75abb86af2c628d600acd76682c4e3cec6f05f51ee1060bf4c43192013
        - quay.io/isovalent/certgen-ubi:v1.18.4-cee.1@sha256:009324b74b0ad203fa8093c57f9d8981d81a4f80a2b8472fc986a70c9cb5bc3d
        - quay.io/isovalent/clife@sha256:bf1953df529e58d15d1ae9ff1293e6eb22e6e38cc628620420b19cfc6e3e9b99
        version: 1.18.4-cee.1
      entries:
      - name: clife.v1.18.4-cee.1
        version: 1.18.4-cee.1
      name: "1.18"
    defaultChannel: "1.17"
    packageName: clife
    provider:
      name: Isovalent, part of Cisco
      url: https://isovalent.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ecr-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ecr-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecr.services.k8s.aws/v1alpha1",
                "kind": "Repository",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ecr-controller:1.4.0
          createdAt: "2025-11-29T03:26:30Z"
          description: AWS ECR controller is a service controller for managing ECR
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PullThroughCacheRule represents the state of an AWS ecr PullThroughCacheRule
              resource.
            displayName: PullThroughCacheRule
            kind: PullThroughCacheRule
            name: pullthroughcacherules.ecr.services.k8s.aws
            version: v1alpha1
          - description: Repository represents the state of an AWS ecr Repository
              resource.
            displayName: Repository
            kind: Repository
            name: repositories.ecr.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Elastic Container Registry (ECR) resources in AWS from within your Kubernetes cluster.

          **About Amazon ECR**

          Amazon Elastic Container Registry (Amazon ECR) is an AWS managed container image registry service that is secure, scalable, and reliable. Amazon ECR supports private repositories with resource-based permissions using AWS IAM. This is so that specified users or Amazon EC2 instances can access your container repositories and images. You can use your preferred CLI to push, pull, and manage Docker images, Open Container Initiative (OCI) images, and OCI compatible artifacts.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ECR
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecr
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ECR Developer Resources
          url: https://aws.amazon.com/ecr/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ecr maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ecr-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-ecr-controller@sha256:07c2be7962f1f53174d5b24c81f0732e834aaabceff3561e06bde2799e300c0d
        version: 1.4.0
      entries:
      - name: ack-ecr-controller.v1.4.0
        version: 1.4.0
      - name: ack-ecr-controller.v1.3.3
        version: 1.3.3
      - name: ack-ecr-controller.v1.3.2
        version: 1.3.2
      - name: ack-ecr-controller.v1.3.1
        version: 1.3.1
      - name: ack-ecr-controller.v1.3.0
        version: 1.3.0
      - name: ack-ecr-controller.v1.2.0
        version: 1.2.0
      - name: ack-ecr-controller.v1.1.0
        version: 1.1.0
      - name: ack-ecr-controller.v1.0.33
        version: 1.0.33
      - name: ack-ecr-controller.v1.0.32
        version: 1.0.32
      - name: ack-ecr-controller.v1.0.31
        version: 1.0.31
      - name: ack-ecr-controller.v1.0.30
        version: 1.0.30
      - name: ack-ecr-controller.v1.0.29
        version: 1.0.29
      - name: ack-ecr-controller.v1.0.28
        version: 1.0.28
      - name: ack-ecr-controller.v1.0.27
        version: 1.0.27
      - name: ack-ecr-controller.v1.0.25
        version: 1.0.25
      - name: ack-ecr-controller.v1.0.24
        version: 1.0.24
      - name: ack-ecr-controller.v1.0.23
        version: 1.0.23
      - name: ack-ecr-controller.v1.0.22
        version: 1.0.22
      - name: ack-ecr-controller.v1.0.21
        version: 1.0.21
      - name: ack-ecr-controller.v1.0.20
        version: 1.0.20
      - name: ack-ecr-controller.v1.0.19
        version: 1.0.19
      - name: ack-ecr-controller.v1.0.17
        version: 1.0.17
      - name: ack-ecr-controller.v1.0.16
        version: 1.0.16
      - name: ack-ecr-controller.v1.0.15
        version: 1.0.15
      - name: ack-ecr-controller.v1.0.14
        version: 1.0.14
      - name: ack-ecr-controller.v1.0.12
        version: 1.0.12
      - name: ack-ecr-controller.v1.0.10
        version: 1.0.10
      - name: ack-ecr-controller.v1.0.9
        version: 1.0.9
      - name: ack-ecr-controller.v1.0.8
        version: 1.0.8
      - name: ack-ecr-controller.v1.0.7
        version: 1.0.7
      - name: ack-ecr-controller.v1.0.6
        version: 1.0.6
      - name: ack-ecr-controller.v1.0.4
        version: 1.0.4
      - name: ack-ecr-controller.v1.0.3
        version: 1.0.3
      - name: ack-ecr-controller.v1.0.2
        version: 1.0.2
      - name: ack-ecr-controller.v1.0.0
        version: 1.0.0
      - name: ack-ecr-controller.v0.1.9
        version: 0.1.9
      - name: ack-ecr-controller.v0.1.7
        version: 0.1.7
      - name: ack-ecr-controller.v0.1.6
        version: 0.1.6
      - name: ack-ecr-controller.v0.1.5
        version: 0.1.5
      - name: ack-ecr-controller.v0.1.4
        version: 0.1.4
      - name: ack-ecr-controller.v0.1.3
        version: 0.1.3
      - name: ack-ecr-controller.v0.1.2
        version: 0.1.2
      - name: ack-ecr-controller.v0.1.1
        version: 0.1.1
      - name: ack-ecr-controller.v0.1.0
        version: 0.1.0
      - name: ack-ecr-controller.v0.0.27
        version: 0.0.27
      - name: ack-ecr-controller.v0.0.26
        version: 0.0.26
      - name: ack-ecr-controller.v0.0.25
        version: 0.0.25
      - name: ack-ecr-controller.v0.0.24
        version: 0.0.24
      - name: ack-ecr-controller.v0.0.23
        version: 0.0.23
      - name: ack-ecr-controller.v0.0.22
        version: 0.0.22
      - name: ack-ecr-controller.v0.0.21
        version: 0.0.21
      - name: ack-ecr-controller.v0.0.20
        version: 0.0.20
      - name: ack-ecr-controller.v0.0.19
        version: 0.0.19
      - name: ack-ecr-controller.v0.0.18
        version: 0.0.18
      - name: ack-ecr-controller.v0.0.17
        version: 0.0.17
      - name: ack-ecr-controller.v0.0.16
        version: 0.0.16
      - name: ack-ecr-controller.v0.0.15
        version: 0.0.15
      - name: ack-ecr-controller.v0.0.14
        version: 0.0.14
      - name: ack-ecr-controller.v0.0.13
        version: 0.0.13
      - name: ack-ecr-controller.v0.0.12
        version: 0.0.12
      - name: ack-ecr-controller.v0.0.11
        version: 0.0.11
      name: alpha
    defaultChannel: alpha
    packageName: ack-ecr-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: kubevirt-hyperconverged
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubevirt-hyperconverged-operator.v4.20.4
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"openshift-cnv"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployVmConsoleProxy":true},"templateValidator":{"replicas":2}}},{"apiVersion":"ssp.kubevirt.io/v1beta3","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "true"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:748b24436b546d7eefacc3fc95803ee5dae4b4def6802e265523415aab09fc86
          createdAt: "2025-12-28 21:17:40"
          description: Creates and maintains an OpenShift Virtualization Deployment
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          openshift.io/required-scc: restricted-v2
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"openshift-cnv"},"spec":{}}'
          operatorframework.io/suggested-namespace: openshift-cnv
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware","fips","sno"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:2357fb1d24d0d7adfabeb4573f00ffaee77a969dd06c8899e42d398d9cb3807d
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: Red Hat
          test-images-nvrs: kubevirt-ssp-operator-test-rhel9:v4.20.4-6,hyperconverged-cluster-operator-test-rhel9:v4.20.4-4,kubevirt-common-instancetypes-test-rhel9:v4.20.4-3,kubevirt-tekton-tasks-test-rhel9:v4.20.4-3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of OpenShift Virtualization
            displayName: OpenShift Virtualization Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta3
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Details
          **OpenShift Virtualization** extends Red Hat OpenShift Container Platform, allowing you to host and manage virtualized workloads on the same platform as container-based workloads. From the OpenShift Container Platform web console, you can import a VMware virtual machine from vSphere, create new or clone existing VMs, perform live migrations between nodes, and more. You can use OpenShift Virtualization to manage both Linux and Windows VMs.

          The technology behind OpenShift Virtualization is developed in the [KubeVirt](https://kubevirt.io) open source community. The KubeVirt project extends [Kubernetes](https://kubernetes.io) by adding additional virtualization resource types through [Custom Resource Definitions](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/) (CRDs). Administrators can use Custom Resource Definitions to manage `VirtualMachine` resources alongside all other resources that Kubernetes provides.
        displayName: OpenShift Virtualization
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        - CNV
        - Container-native virtualization
        - Container native virtualization
        - Virt
        - Virtual
        links:
        - name: Source Code
          url: https://github.com/kubevirt
        - name: OpenShift Virtualization
          url: https://www.openshift.com/learn/topics/virtualization/
        - name: KubeVirt Project
          url: https://kubevirt.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/container-native-virtualization/ocp-virt-validation-checkup-rhel9@sha256:b44ea7853c23ab1320f68f8693defb47e89dba2f7301ad46f5e28d71f1fc99c9
        - registry.redhat.io/container-native-virtualization/virt-artifacts-server-rhel9@sha256:6db561d095d29d656abba9713392fd94cdf031e7ecaf1c9df5b8460c45730df8
        - registry.redhat.io/container-native-virtualization/wasp-agent-rhel9@sha256:2979769ff3b5d494633f221190a9520503a1526dfcdaf930f0d7526e370ea473
        - registry.redhat.io/container-native-virtualization/vm-network-latency-checkup-rhel9@sha256:62b720486b6e60adb9aa86b83117d48197abdcd8e3aef972ec2213b3fbec98b0
        - registry.redhat.io/container-native-virtualization/aaq-controller-rhel9@sha256:8d45195acdeb8aa507ce9d6a89de4197f2564f9f1daae19fbd771090586d2ad3
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:748b24436b546d7eefacc3fc95803ee5dae4b4def6802e265523415aab09fc86
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-create-datavolume-rhel9@sha256:2efcb5bf1bd79d0e8f4b9b0dd3d91d93ad56fa9db5645ce1cba80eb061907624
        - registry.redhat.io/container-native-virtualization/kubevirt-apiserver-proxy-rhel9@sha256:752cd22c335aa4963f4b9311cb05fd18ea6bb89e5031b627459a0d9919d10ad5
        - registry.redhat.io/container-native-virtualization/kubevirt-ssp-operator-rhel9@sha256:c2f128f9001c0c67619386e1a860663cfa8b6b1f790af1ef00670d76c686c4e5
        - registry.redhat.io/container-native-virtualization/virt-controller-rhel9@sha256:8e6a791528a0b8809d38ce153e80e9e1f19c58a2415777e617631ea7876d2b7a
        - registry.redhat.io/container-native-virtualization/virt-cdi-importer-rhel9@sha256:edeb0af7736a94afa9ada1ba7be1254264754a0df41e761f6d53463b5f07fcf5
        - registry.redhat.io/container-native-virtualization/virt-exportserver-rhel9@sha256:45a57cc3913b84e841be83daabdc5f5985d55075c0d371af9daffca1152ac0ad
        - registry.redhat.io/container-native-virtualization/cnv-containernetworking-plugins-rhel9@sha256:a62635a6a458fb26f702fe77afb8976e23e37ee069bfd37f4c7029841ece8d63
        - registry.redhat.io/container-native-virtualization/virt-exportproxy-rhel9@sha256:6c5f2307fee82aa4c09be8250d52f2b5afdcddea6558879f161df0e184df9146
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:ef0dca763d85023bf3b1e3be135177007b1fe5c56bc356a8cf7145b4dd3c669c
        - registry.redhat.io/container-native-virtualization/virt-cdi-controller-rhel9@sha256:c4a38bcc6094b76a0f082d20e5dff3f2912da442930804c4c42c3018aff2709c
        - registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:2357fb1d24d0d7adfabeb4573f00ffaee77a969dd06c8899e42d398d9cb3807d
        - registry.redhat.io/container-native-virtualization/virt-api-rhel9@sha256:e5fbde9eca277212206e4e1b619ea1809e7e6506dd6ea86b6d34a75f128060fa
        - registry.redhat.io/container-native-virtualization/kubevirt-ipam-controller-rhel9@sha256:ec6699bb6f648cd70065a3849c6bf3a57722d0f6fc87c1a8b582e18bb9e4ebce
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-disk-virt-customize-rhel9@sha256:34df9b10d96231666cb0bff52ffe2a2a07c38b73e20472bcd005f5961ae3b7a6
        - registry.redhat.io/container-native-virtualization/vm-console-proxy-rhel9@sha256:cb3d2fee13d9a82ad852495da7d9a2cf1b003edd39bf1edc34096bbd9005d28b
        - registry.redhat.io/container-native-virtualization/virt-synchronization-controller-rhel9@sha256:376d3b416da5afaab1b525d9cbc508ed10e1d9adcd29d0d05e2b51ccefc5ef73
        - registry.redhat.io/container-native-virtualization/virt-migration-controller-rhel9@sha256:8c16cfd74922b28b0adeafd422b7b2dc3896c35d7000c9d5e57be0f566058f78
        - registry.redhat.io/container-native-virtualization/kubevirt-api-lifecycle-automation-rhel9@sha256:c2b07b95fd47a5d968e809303d9ab79286dcde62bf173adc5717586ec182c0fa
        - registry.redhat.io/container-native-virtualization/virt-launcher-rhel9@sha256:8fde93d45a81ecdee95649a281f80a9b2a0a71952771a43f0555cb97ef7d1605
        - registry.redhat.io/container-native-virtualization/virt-handler-rhel9@sha256:6611d88a0c69650f1c2c9b946ed6df976b3312226ecfac1800bdd4e187ac9629
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/container-native-virtualization/kubevirt-common-instancetypes-rhel9@sha256:3cbace21d5a03b007e4fadebbb584d7c5daff150fb974707b2d8d7a2caa33159
        - registry.redhat.io/container-native-virtualization/ovs-cni-plugin-rhel9@sha256:7d9eb580f06b9077c45bb6a42287882e0ead5b4eead67e05a77f0d3345b5256f
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-cni-rhel9@sha256:230ccf9d52838aef4c236d51aef22f71ce0c548f56b384a7361921492c68abdc
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-operator-rhel9@sha256:56f2401c00e5b6f4ff7262725ddce0b4cd431a3eb7e393385b6b9db8e3506b91
        - registry.redhat.io/openshift4/ose-coredns-rhel9@sha256:943018739e3db1763c3184b460dbc409e058abbac76d57b9927faad317be85e4
        - registry.redhat.io/container-native-virtualization/multus-dynamic-networks-rhel9@sha256:cea5e74574f8d3ac40cf63b4084ad107d4efff5f5f6c87f1dd655109b5bb0c8a
        - registry.redhat.io/container-native-virtualization/virt-cdi-operator-rhel9@sha256:abfa2a92650be61f1785643bcd051dfc26c186974430e2c7aaf722665a057e93
        - registry.redhat.io/container-native-virtualization/aaq-server-rhel9@sha256:d3036a5f83bd488ac4d641c17cbad9f7621943edc2dd86be5b0b6119019c9d52
        - registry.redhat.io/container-native-virtualization/virtio-win-rhel9@sha256:d6c330e2a2b56fa9e75f57c3f75e95096862b6c8ca31069de8f41f64e8481e26
        - registry.redhat.io/container-native-virtualization/kubevirt-template-validator-rhel9@sha256:28106cbd0375054cf0d06f3fd55d3add39fc26dde9a35a22cb6a95cd0fe59003
        - registry.redhat.io/container-native-virtualization/kubesecondarydns-rhel9@sha256:d198956224d3333bae0b872616faa2affd98947e19ff4da78e3ec28cd632119e
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadserver-rhel9@sha256:53daad8fa0b71bf5e362ee44c50b0e70cd976b6b30d425d5e29088fb8163f8fc
        - registry.redhat.io/container-native-virtualization/virt-cdi-apiserver-rhel9@sha256:ef3b5088f20b1e0b101f22d307876b87fa9ce0b3248b26e0e1d4e003cd89256b
        - registry.redhat.io/container-native-virtualization/pr-helper-rhel9@sha256:3857e1d21bcb5fe82ef0d8efa8969b90e150c2659fd115b2e357b2c137b19a4c
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/container-native-virtualization/kubevirt-console-plugin-rhel9@sha256:c451d67a6a1154c3f31dee5aa573b87484becc3527ed36a1c553a1013184fcf9
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-sidecar-rhel9@sha256:96bd1b744a5e034cb3831c2c9c45b0ec65130f1ba124946f74633a2795f23fe8
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-rhel9@sha256:e4aece12cd6900642c54597bb774baa476c0d3c09b8f94cd6cb8f30d21204010
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/container-native-virtualization/kubemacpool-rhel9@sha256:600ca5470697e6dc1d8dd51b905943773b8bb602d8f167dbbfe4328168853514
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/container-native-virtualization/hostpath-csi-driver-rhel9@sha256:04096d91f02fae6188a085e456227a0bb52e52f07f966bfc883c63e7f50d6870
        - registry.redhat.io/container-native-virtualization/cluster-network-addons-operator-rhel9@sha256:6ea1f813aa546acc9887f809207a7fd2a5d913ae0f42d944d7923620a4fe877c
        - registry.redhat.io/container-native-virtualization/virt-migration-operator-rhel9@sha256:357057fb344983d0cc0b29ccbc8be12deaa3ca506023064988cfccb41557a645
        - registry.redhat.io/container-native-virtualization/virt-operator-rhel9@sha256:9eb617c02a50e52ff412c97fe2ece275d9a682686bbb127a3a6ce51f6864d6b4
        - registry.redhat.io/container-native-virtualization/virt-cdi-cloner-rhel9@sha256:829714c6d8ae2160e3b3e4e4680e637d3c5abaad985ad6a166a80cef9605c75e
        - registry.redhat.io/container-native-virtualization/kubevirt-storage-checkup-rhel9@sha256:167957fc864966c356d70a6c333b03404c8234e4ece8e8abc6169de86b409983
        - registry.redhat.io/container-native-virtualization/sidecar-shim-rhel9@sha256:74180dbda759a0f30b9c9321585ced206afea318ddbcbb362bbb61f1b6978597
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadproxy-rhel9@sha256:26b86907ad25fe1bddfc69c1227e403879fffd1495c52c9d833ac2ae44ebcb75
        - registry.redhat.io/container-native-virtualization/libguestfs-tools-rhel9@sha256:9997909581c8cd9150f4581a3aec964691dbbfd3b92a06679b0e795830599052
        - registry.redhat.io/container-native-virtualization/bridge-marker-rhel9@sha256:d1d96c13e31b52fd4d0cfa6c463752b496d4561ca1d073ca7d05095221922d60
        - registry.redhat.io/container-native-virtualization/aaq-operator-rhel9@sha256:1ec50edc886c4fcd04bdc9de3e9880e90824741f8d6ae384f69f579fa6ae2c50
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/container-native-virtualization/hco-bundle-registry-rhel9@sha256:dd0f81a803da2b2c520f922039045e2db9b96c61cea26d60eda9c7c9626bc449
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-webhook-rhel9@sha256:34982a06432fbee263892b58d24409e3f2119f649abd510609c8fbc63f7c4953
        version: 4.20.4
      entries:
      - name: kubevirt-hyperconverged-operator.v4.20.4
        version: 4.20.4
      - name: kubevirt-hyperconverged-operator.v4.20.3
        version: 4.20.3
      - name: kubevirt-hyperconverged-operator.v4.20.2
        version: 4.20.2
      - name: kubevirt-hyperconverged-operator.v4.20.1
        version: 4.20.1
      name: candidate
    - currentCSV: kubevirt-hyperconverged-operator.v4.20.3
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"openshift-cnv"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployVmConsoleProxy":true},"templateValidator":{"replicas":2}}},{"apiVersion":"ssp.kubevirt.io/v1beta3","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "true"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:774619385a49ac6c60b3eab5d0b7e81ef1399cbb15dd341f7a445117ad3136f8
          createdAt: "2025-12-12 15:08:43"
          description: Creates and maintains an OpenShift Virtualization Deployment
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          openshift.io/required-scc: restricted-v2
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"openshift-cnv"},"spec":{}}'
          operatorframework.io/suggested-namespace: openshift-cnv
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware","fips","sno"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:cb51501b85b3734f42c933d8a6e20dd4312c426e0c34175ac83c86af789b8878
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: Red Hat
          test-images-nvrs: kubevirt-ssp-operator-test-rhel9:v4.20.3-7,hyperconverged-cluster-operator-test-rhel9:v4.20.3-5,kubevirt-common-instancetypes-test-rhel9:v4.20.3-3,kubevirt-tekton-tasks-test-rhel9:v4.20.3-6
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of OpenShift Virtualization
            displayName: OpenShift Virtualization Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta3
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Details
          **OpenShift Virtualization** extends Red Hat OpenShift Container Platform, allowing you to host and manage virtualized workloads on the same platform as container-based workloads. From the OpenShift Container Platform web console, you can import a VMware virtual machine from vSphere, create new or clone existing VMs, perform live migrations between nodes, and more. You can use OpenShift Virtualization to manage both Linux and Windows VMs.

          The technology behind OpenShift Virtualization is developed in the [KubeVirt](https://kubevirt.io) open source community. The KubeVirt project extends [Kubernetes](https://kubernetes.io) by adding additional virtualization resource types through [Custom Resource Definitions](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/) (CRDs). Administrators can use Custom Resource Definitions to manage `VirtualMachine` resources alongside all other resources that Kubernetes provides.
        displayName: OpenShift Virtualization
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        - CNV
        - Container-native virtualization
        - Container native virtualization
        - Virt
        - Virtual
        links:
        - name: Source Code
          url: https://github.com/kubevirt
        - name: OpenShift Virtualization
          url: https://www.openshift.com/learn/topics/virtualization/
        - name: KubeVirt Project
          url: https://kubevirt.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/container-native-virtualization/libguestfs-tools-rhel9@sha256:4d5457ce137f9984f3a8227be66b51df7ca24d2cee950c7a62fe07e4da8c957a
        - registry.redhat.io/container-native-virtualization/bridge-marker-rhel9@sha256:13475ebdb09e49a5f33cb255491226415752551adbf19f1f11555ade84832490
        - registry.redhat.io/container-native-virtualization/vm-network-latency-checkup-rhel9@sha256:2279ab798e8c18b13c87cbce75e6018a9b5be872666c9a19b4929837ca7784d2
        - registry.redhat.io/container-native-virtualization/virt-cdi-importer-rhel9@sha256:84d3534ff8027475d41f6dee3c827640905b98dc5251c6a31abad5c7d4cdb2dc
        - registry.redhat.io/container-native-virtualization/ovs-cni-plugin-rhel9@sha256:8870efa7ee50541cdef7a9058cda0030e66e31eeee26209443de888aa472fd40
        - registry.redhat.io/container-native-virtualization/virt-migration-controller-rhel9@sha256:bf5236671c5f149cb69c58acc3204a3dbd5531022342b3ab4e70908c46ed75d6
        - registry.redhat.io/container-native-virtualization/hco-bundle-registry-rhel9@sha256:b648126d95b88bf7cd346dd2a112fb77e2686d899ea51fe1090a510bc2ec8f24
        - registry.redhat.io/container-native-virtualization/hostpath-csi-driver-rhel9@sha256:95f0ee74ce70b75c23ffba8d400db7018bb5d8b002ffa20bc4326cadb1aa1434
        - registry.redhat.io/container-native-virtualization/virt-launcher-rhel9@sha256:3138ad3a4471ca69be37fbe50a96be4b89e120de0e2808067ca99ff576f16256
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-operator-rhel9@sha256:304b1845e9b7bf2b443b6c889e2e37e446908f02d70f9733e4206f9799e9e963
        - registry.redhat.io/container-native-virtualization/pr-helper-rhel9@sha256:9a2691eafd72990f03f4600e0fac40e1572479493723387c159f66261a85eeab
        - registry.redhat.io/container-native-virtualization/kubevirt-api-lifecycle-automation-rhel9@sha256:6644a1c779f055ced237d73fa5a92abb0b61119983d1dc966b5e5592e58839f0
        - registry.redhat.io/container-native-virtualization/wasp-agent-rhel9@sha256:554c6882d9c1320274c17336f5efd80a615b5a6b97a4383f452813e080ccd9da
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:5d7478a62742900e39d7b007dde5375cd06c6076ced6dab69d805f5fcce3f342
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadserver-rhel9@sha256:ad84fd70798dab76dd65da6a0e54d34d1b233f042df97b0c2894ce5cba641e03
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-sidecar-rhel9@sha256:665bd5625630898222a3ecf02244ce31f38f310c87f5f6529ab53ca22ecb5237
        - registry.redhat.io/container-native-virtualization/kubevirt-ssp-operator-rhel9@sha256:fad86adf9d9e682e9aff8764c776d2650e78b0d7101fd6c2804a4c445a9daebd
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:1c480fa5089a32cf804fc84df7219ca64066cbac2eeb962c4385754132c3873b
        - registry.redhat.io/container-native-virtualization/virt-cdi-apiserver-rhel9@sha256:18b1188326dc55855da1afe01659fa0ea06fc9f0d5c8a2154f2aedcf49a204dc
        - registry.redhat.io/container-native-virtualization/aaq-controller-rhel9@sha256:7da428ce43d513b042b5f6b58e58b134937071df97f769d8e191ac178a34d5d9
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:774619385a49ac6c60b3eab5d0b7e81ef1399cbb15dd341f7a445117ad3136f8
        - registry.redhat.io/container-native-virtualization/kubemacpool-rhel9@sha256:89beb3c6acc06cf04d97ffa7f1791ab380f873b692e5e694b476558693590759
        - registry.redhat.io/container-native-virtualization/vm-console-proxy-rhel9@sha256:013b3f599fd23278b88ec362c9b89ca3df3f5820a9820bc6ceeeff76f1ec1a2a
        - registry.redhat.io/container-native-virtualization/virt-operator-rhel9@sha256:1823a4c581900087411be32c46297e8224087ebad0c10adafb1e48fc9fb5af8f
        - registry.redhat.io/container-native-virtualization/kubevirt-storage-checkup-rhel9@sha256:ed454addfc02bdde63bfa619f53d036128d107cc1cff3f595819521be1671e59
        - registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:cb51501b85b3734f42c933d8a6e20dd4312c426e0c34175ac83c86af789b8878
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:4cf3eca6e1f958a9b3c14cdb6be536a2b8f11491b475b23dbfee4eee8de8a60d
        - registry.redhat.io/container-native-virtualization/virt-cdi-operator-rhel9@sha256:aa1d79d10ab0f88f472eace2961cc0b83963b13517f636b4db74f9636fbf993d
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadproxy-rhel9@sha256:5bc8eba190a09b03141b866c50c7ee244631e2d7e9fd76c6fb3bdce933b20f9c
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-create-datavolume-rhel9@sha256:6473ce9becf07dac29d2bb597fb1c9088475f2ce3d71c635ac41b13ee6d620c5
        - registry.redhat.io/container-native-virtualization/virt-synchronization-controller-rhel9@sha256:9e46d42b1c81ef70de81b43109b7d3cff9c259899da6454467e6ceef4cd069fc
        - registry.redhat.io/container-native-virtualization/aaq-operator-rhel9@sha256:3c3a543b0cf8b8f7031a31790c474d01fa23ca8ebd581f4a4fc1f42a4c4cce71
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:ef0dca763d85023bf3b1e3be135177007b1fe5c56bc356a8cf7145b4dd3c669c
        - registry.redhat.io/container-native-virtualization/kubevirt-console-plugin-rhel9@sha256:80192f34263a9a9a8ef9812f7b8dc37090ace003e257e74db58902f4a1299887
        - registry.redhat.io/container-native-virtualization/cnv-containernetworking-plugins-rhel9@sha256:fbec311480fc899bada5159771ce6d33ff8adbdd2a2c53e1f08e2bca75b2abac
        - registry.redhat.io/container-native-virtualization/virtio-win-rhel9@sha256:e38fa87ca295c7f750e207b5c29ea9e4c784e51a2e9a365719cd6e45d55642e6
        - registry.redhat.io/container-native-virtualization/kubevirt-template-validator-rhel9@sha256:a1b60487bef71216a67daacfeaa357de08f94294be66187cb219d06645076616
        - registry.redhat.io/openshift4/ose-coredns-rhel9@sha256:2a4fa36bccbd1750c7ba21d8774592205558eefa10c4a59807d0d7fb255c4d7d
        - registry.redhat.io/container-native-virtualization/virt-exportserver-rhel9@sha256:89a4a5077410687afaeceb73af8c43d6330661ceb34225c72a7a18785321a6e1
        - registry.redhat.io/container-native-virtualization/virt-cdi-cloner-rhel9@sha256:ae01e86a9f67be13e9072b9491b86c6fb1682f153dadaf86afdd8269c04e8e58
        - registry.redhat.io/container-native-virtualization/sidecar-shim-rhel9@sha256:6abf158997ac1207a2ae7d0589d830a14e5724905c98e84b32a3b41882211e04
        - registry.redhat.io/container-native-virtualization/virt-controller-rhel9@sha256:9451fbcaaf9b486168195661f3b370a34656bbe856133644cec7364fb0f9327a
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:ea07bb35db9c047015fb6292608d28572fed17b3d190bb2cb3127e63404be654
        - registry.redhat.io/container-native-virtualization/kubevirt-apiserver-proxy-rhel9@sha256:2efdb15604ea5ee3b71dda28c796ed67651e7d3a2811739542f702c285e8873d
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-disk-virt-customize-rhel9@sha256:14eb7f410c4e2fbd7416a3aedbfba5f45e401e3bd9d4f49b68bbb3bbc47ba59f
        - registry.redhat.io/container-native-virtualization/virt-api-rhel9@sha256:dc021c2d95737add38dbe43a961e8ae2ae8245df3cbcf46727b3ad89d8e27af1
        - registry.redhat.io/container-native-virtualization/virt-exportproxy-rhel9@sha256:1fb533343f9eb45062f1817e8be3e46c315887fc24d146fce4d83b53fcdbd6c6
        - registry.redhat.io/container-native-virtualization/virt-handler-rhel9@sha256:fb61c086221a580b2a084611d0163635eda53d584c390f8df52a730e22925922
        - registry.redhat.io/container-native-virtualization/cluster-network-addons-operator-rhel9@sha256:c370e913c758e0a896a1bf47ceec0a44ae3019232f33ea6994b90ed7f4567c65
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-rhel9@sha256:80355df8da40dd604f65b897b4987b64c1c7aca77811a4f013659e0e4abde531
        - registry.redhat.io/container-native-virtualization/kubesecondarydns-rhel9@sha256:c91fc0b7b07743c58c449155d1fcc43844e0f1c909b058fd1126674978afe5f4
        - registry.redhat.io/container-native-virtualization/virt-migration-operator-rhel9@sha256:93d4db5d1afac1364915dc2284c6f58a0d4e1f9cd8395d84177dee0568f8fae5
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-webhook-rhel9@sha256:9f081d7b24658145adb4ba5ed494091be3968cb4c8305f2e197a49f6d61226a3
        - registry.redhat.io/container-native-virtualization/virt-artifacts-server-rhel9@sha256:63f4d29d6724055bc857b9113c7ee2cc686f0a4c70dc0600b24b6a51d03b1ec4
        - registry.redhat.io/container-native-virtualization/kubevirt-common-instancetypes-rhel9@sha256:22790edf1eea155cf40943609499deb577283bdee8d8cf3a5bde67c7806f152c
        - registry.redhat.io/container-native-virtualization/kubevirt-ipam-controller-rhel9@sha256:3dcd47d947a86c87d35dcb26da02dda2b9478bcaafe9c809db76707508353570
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:591720c7e2301931e160cf1280c6b55bba9de1fe6a38545de09e05be38c50fc1
        - registry.redhat.io/container-native-virtualization/aaq-server-rhel9@sha256:65ef0b5b5f2be5c829f9d25a9ef5a0e54505051d40b6233df4353e7761bd2909
        - registry.redhat.io/container-native-virtualization/ocp-virt-validation-checkup-rhel9@sha256:244f5df211adf0631afdd76786d98b2bc01bff8ac11d1d47d87e3022d999ec47
        - registry.redhat.io/container-native-virtualization/virt-cdi-controller-rhel9@sha256:508963662b9172f0d5e3d16b91a3a359c45ce050bdb8e5d0ddb99fdc2b44b260
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-cni-rhel9@sha256:899349fd7dde3ace0171661f61a34d0e794750f16f0e59003073239d109c4ac8
        - registry.redhat.io/container-native-virtualization/multus-dynamic-networks-rhel9@sha256:2bc541d27e9be750363c3706fd0692bdaa5b16b69efa842be7f16046fec2b8a0
        version: 4.20.3
      entries:
      - name: kubevirt-hyperconverged-operator.v4.20.3
        version: 4.20.3
      - name: kubevirt-hyperconverged-operator.v4.20.1
        version: 4.20.1
      - name: kubevirt-hyperconverged-operator.v4.20.0
        version: 4.20.0
      - name: kubevirt-hyperconverged-operator.v4.19.6
        version: 4.19.6
      - name: kubevirt-hyperconverged-operator.v4.19.3
        version: 4.19.3
      - name: kubevirt-hyperconverged-operator.v4.19.1
        version: 4.19.1
      - name: kubevirt-hyperconverged-operator.v4.18.8
        version: 4.18.8
      - name: kubevirt-hyperconverged-operator.v4.18.3
        version: 4.18.3
      - name: kubevirt-hyperconverged-operator.v4.18.2
        version: 4.18.2
      - name: kubevirt-hyperconverged-operator.v4.18.1
        version: 4.18.1
      - name: kubevirt-hyperconverged-operator.v4.18.0
        version: 4.18.0
      - name: kubevirt-hyperconverged-operator.v4.17.4
        version: 4.17.4
      - name: kubevirt-hyperconverged-operator.v4.17.3
        version: 4.17.3
      - name: kubevirt-hyperconverged-operator.v4.17.2
        version: 4.17.2
      - name: kubevirt-hyperconverged-operator.v4.17.1
        version: 4.17.1
      - name: kubevirt-hyperconverged-operator.v4.17.0
        version: 4.17.0
      - name: kubevirt-hyperconverged-operator.v4.16.3
        version: 4.16.3
      - name: kubevirt-hyperconverged-operator.v4.16.2
        version: 4.16.2
      - name: kubevirt-hyperconverged-operator.v4.16.1
        version: 4.16.1
      - name: kubevirt-hyperconverged-operator.v4.16.0
        version: 4.16.0
      - name: kubevirt-hyperconverged-operator.v4.15.2
        version: 4.15.2
      - name: kubevirt-hyperconverged-operator.v4.15.1
        version: 4.15.1
      - name: kubevirt-hyperconverged-operator.v4.15.0
        version: 4.15.0
      - name: kubevirt-hyperconverged-operator.v4.14.3
        version: 4.14.3
      - name: kubevirt-hyperconverged-operator.v4.14.2
        version: 4.14.2
      - name: kubevirt-hyperconverged-operator.v4.14.1
        version: 4.14.1
      - name: kubevirt-hyperconverged-operator.v4.14.0
        version: 4.14.0
      - name: kubevirt-hyperconverged-operator.v4.13.4
        version: 4.13.4
      - name: kubevirt-hyperconverged-operator.v4.13.3
        version: 4.13.3
      - name: kubevirt-hyperconverged-operator.v4.13.2
        version: 4.13.2
      - name: kubevirt-hyperconverged-operator.v4.13.1
        version: 4.13.1
      - name: kubevirt-hyperconverged-operator.v4.13.0
        version: 4.13.0
      - name: kubevirt-hyperconverged-operator.v4.12.2
        version: 4.12.2
      - name: kubevirt-hyperconverged-operator.v4.12.1
        version: 4.12.1
      - name: kubevirt-hyperconverged-operator.v4.12.0
        version: 4.12.0
      name: stable
    defaultChannel: stable
    packageName: kubevirt-hyperconverged
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: LINBIT
      provider-url: https://linbit.com
    name: linstor-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: linstor-operator.v2.10.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "piraeus.io/v1",
                "kind": "LinstorCluster",
                "metadata": {
                  "name": "linstorcluster"
                },
                "spec": {},
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "piraeus.io/v1",
                "kind": "LinstorNodeConnection",
                "metadata": {
                  "name": "example-connection"
                },
                "spec": {},
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "piraeus.io/v1",
                "kind": "LinstorSatellite",
                "metadata": {
                  "name": "example-satellite"
                },
                "spec": {
                  "clusterRef": {
                    "name": "linstorcluster"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "piraeus.io/v1",
                "kind": "LinstorSatelliteConfiguration",
                "metadata": {
                  "name": "all-satellites"
                },
                "spec": {},
                "status": {
                  "conditions": []
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          com.redhat.openshift.versions: v4.7
          containerImage: drbd.io/linstor-operator@sha256:c13c8710c7d508a5a63b996c64031c370b1040c20a48e1a6dbcfa183db58da91
          createdAt: "2025-12-09T14:51:34Z"
          description: LINSTOR Operator deploys LINBIT SDS in the cluster.
          features.operators.openshift.io/csi: "true"
          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"
          operatorframework.io/suggested-namespace: linbit-sds
          operators.openshift.io/valid-subscription: '[''LINBIT SDS Subscription'']'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/internal-objects: '["linstorsatellites.piraeus.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: LINBIT
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster-wide configuration for LINSTOR.
            displayName: Linstor Cluster
            kind: LinstorCluster
            name: linstorclusters.piraeus.io
            version: v1
          - description: Configuration for connections between specific nodes.
            displayName: Linstor Node Connection
            kind: LinstorNodeConnection
            name: linstornodeconnections.piraeus.io
            version: v1
          - description: Configuration for specific Satellites/Nodes in the LINSTOR
              Cluster.
            displayName: Linstor Satellite Configuration
            kind: LinstorSatelliteConfiguration
            name: linstorsatelliteconfigurations.piraeus.io
            version: v1
          - description: Resource to configure a single satellite, managed by the
              Operator itself.
            displayName: Linstor Satellite
            kind: LinstorSatellite
            name: linstorsatellites.piraeus.io
            version: v1
          required:
          - kind: ServiceMonitor
            name: servicemonitors.monitoring.coreos.com
            version: v1
          - kind: PrometheusRule
            name: prometheusrules.monitoring.coreos.com
            version: v1
          - kind: PodMonitor
            name: podmonitors.monitoring.coreos.com
            version: v1
        description: |
          The LINSTOR Operator manages [LINSTOR](https://github.com/LINBIT/linstor-server) clusters in Kubernetes.

          All components of the LINSTOR software stack can be managed by the operator:
          * DRBD
          * LINSTOR
          * LINSTOR CSI driver
          * LINSTOR HA Controller
        displayName: LINSTOR Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        links:
        - name: User Guide
          url: https://linbit.com/drbd-user-guide/linstor-guide-1_0-en/
        - name: LINSTOR Operator
          url: https://charts.linstor.io/
        - name: Source Code
          url: https://github.com/LINBIT/linstor-operator-builder
        maintainers:
        - email: support@linbit.com
          name: LINBIT
        maturity: stable
        minKubeVersion: 1.20.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: DaemonSet
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: storage.k8s.io
          kind: CSIDriver
          version: v1
        provider:
          name: LINBIT
          url: https://linbit.com
        relatedImages:
        - drbd.io/drbd-shutdown-guard@sha256:16793f5aa10b46b198806c9198216fbd1aaec31269c28adea7e526dd17ff6f57
        - drbd.io/drbd9-rhel10@sha256:0e8baeab42e33c543cbdc784f4ff6559ce90ac0fab35c8f599440b8c79de0ffa
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:f5d39776894fdb35e4119a592bb9b2c754a834f542712fd7f57c54d6eceeca29
        - drbd.io/linstor-satellite@sha256:1cff883efa5694babc51987a343c68bbe844427ca23d3744266679697d6b2cc9
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:33c42e88b72c0ea9d58fed8db8cb2175e56399c3d2e988bcbb669bec3de291de
        - registry.connect.redhat.com/linbit/linstor-operator-bundle:v2.10.3
        - registry.k8s.io/sig-storage/csi-external-health-monitor-controller@sha256:ac3963bfd4246da386b82d810a348e9d42a9e4b746acaf4dbcbe0766643cc2fa
        - drbd.io/linstor-operator@sha256:c13c8710c7d508a5a63b996c64031c370b1040c20a48e1a6dbcfa183db58da91
        - drbd.io/drbd9-rhel7@sha256:24a9a3d894668f142751611621fb17d567e4f6b385557784b2d19cf09936352c
        - drbd.io/drbd9-rhel9@sha256:9d2e7e4336b0f97de65e08d95b89318b928f7685cd68c48e576bfc41c84d7a20
        - drbd.io/linstor-controller@sha256:4aaa87ec39e261be7c46834e2a25d8c306688fc7b2b6c793bb09929996406b08
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:13aa61d56d283901b113a49524eb57e447eb541b56d3666f8186fd807cc3c180
        - drbd.io/drbd9-rhel8@sha256:eb091a38c6811391f27df0b22c34cfe7df5ad69bcbe8ec37075edc50d732aeea
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:b54a79b0c5a39a23dc8a1809fffaa376a474945df364a30077112eab87d558dd
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c4a2626cc9c4903a32e67a6fa68b874fb5e67085126030389a8a3210bf766de7
        - drbd.io/ktls-utils@sha256:3351a6e0fc048fe1544499095cdb8fdd221e832cecfa8a9a01f046c271991138
        - drbd.io/linstor-affinity-controller@sha256:de3445f5bcc643e1b9d7c4e880fd289ca05dee300120d3b0d7a83498de91a79f
        - drbd.io/linstor-csi@sha256:6615bc6b5a0a6b504588a460b028ec4a185c0a26e61b1f45e3ac9910ba165fe2
        - drbd.io/linstor-k8s-ha-controller@sha256:13bc9273fe4b752aaa9a0aa0add2c4261589f80fae2d367ab36728b8abc93d0e
        - drbd.io/drbd-reactor@sha256:95a2422d55394bcc322c5ce9c85e234b055d8c9976a69102ba5e12f7c24a311d
        - drbd.io/nfs-server@sha256:e999aa5c4a38c49e63b6258503db405d57f1d4e5ab8735ff1400cbd4f23d4b88
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a9d0a3f14e303f80c1e0b81cf38af700d1e038b875834bbc6d1a31ad60b16d8f
        version: 2.10.3
      entries:
      - name: linstor-operator.v2.10.3
        version: 2.10.3
      - name: linstor-operator.v2.10.2
        version: 2.10.2
      - name: linstor-operator.v2.10.1
        version: 2.10.1
      - name: linstor-operator.v2.10.1-0.gbf3c346
        version: 2.10.1-0.gbf3c346
      - name: linstor-operator.v2.9.1
        version: 2.9.1
      - name: linstor-operator.v2.9.0
        version: 2.9.0
      - name: linstor-operator.v2.8.1
        version: 2.8.1
      name: stable-v2
    defaultChannel: stable-v2
    packageName: linstor-operator
    provider:
      name: LINBIT
      url: https://linbit.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-firehose-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-firehose-controller.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/firehose-controller:0.2.0
          createdAt: "2025-11-29T03:46:06Z"
          description: AWS Firehose controller is a service controller for managing
            Firehose resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DeliveryStream represents the state of an AWS firehose DeliveryStream
              resource.
            displayName: DeliveryStream
            kind: DeliveryStream
            name: deliverystreams.firehose.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Firehose resources in AWS from within your Kubernetes cluster.

          **About Amazon Firehose**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Firehose
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - firehose
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Firehose Developer Resources
          url: https://aws.amazon.com/Firehose/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: firehose maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-firehose-controller@sha256:72fb109fd6b29d10b0b5e6ffd02809dc00ee8e54791c553d1e5f34a7c0a4e0c5
        - public.ecr.aws/aws-controllers-k8s/firehose-controller:0.2.0
        version: 0.2.0
      entries:
      - name: ack-firehose-controller.v0.2.0
        version: 0.2.0
      - name: ack-firehose-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-firehose-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stolostron
      provider-url: ""
    name: cluster-aas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-aas-operator.v0.1.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clustertemplate.openshift.io/v1alpha1",
                "kind": "ClusterTemplate",
                "metadata": {
                  "name": "clustertemplate-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "clustertemplate.openshift.io/v1alpha1",
                "kind": "ClusterTemplateInstance",
                "metadata": {
                  "name": "clustertemplateinstance-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "clustertemplate.openshift.io/v1alpha1",
                "kind": "ClusterTemplateQuota",
                "metadata": {
                  "name": "clustertemplatequota-sample"
                },
                "spec": {}
              }
            ]
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/stolostron/cluster-templates-operator:2.11.0-0c3131154065397d37e3b66ae635d7ea88650bf9
          createdAt: "2024-06-06T19:34:44Z"
          description: Easily install fully configured clusters with guard-rails.
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/cluster-templates-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents instance of a cluster
            displayName: Cluster template instance
            kind: ClusterTemplateInstance
            name: clustertemplateinstances.clustertemplate.openshift.io
            version: v1alpha1
          - description: Defines which ClusterTemplates can be used in a given namespace
            displayName: Cluster template quota
            kind: ClusterTemplateQuota
            name: clustertemplatequotas.clustertemplate.openshift.io
            version: v1alpha1
          - description: Template of a cluster - both installation and post-install
              setup are defined as ArgoCD application spec. Any application source
              is supported - typically a Helm chart
            displayName: Cluster template
            kind: ClusterTemplate
            name: clustertemplates.clustertemplate.openshift.io
            version: v1alpha1
          - kind: ClusterTemplateSetup
            name: clustertemplatesetup.clustertemplate.openshift.io
            version: v1alpha1
          - kind: Config
            name: config.clustertemplate.openshift.io
            version: v1alpha1
        description: |
          **Self-service clusters with guardrails!**
          Cluster as a service operator provides an easy way to define clusters as templates and allows creating instances of those templates even for non-privileged developer/devops engineers. Cluster templates operator also allows specifing quotas for the developer/devops engineers.

          ### User Interface
          The User interface is installed but is not enabled by default. To enable go to `Home` -> `Overview` -> in the status card click `Dynamic Plugins` -> click `View all` -> click the `pencil` icon -> pick `Enable` and hit `Save`. You can access the UI in the `All Clusters` perspective under `Infrastructure` -> `Cluster Templates`.

          ### Documentation
          Documentation can be found on our [website](https://github.com/stolostron/cluster-templates-operator).

          ### Getting help
          To report any issues or ask questions, create an issue on our [Github repo](https://github.com/stolostron/cluster-templates-operator/issues)
        displayName: Cluster as a service operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cluster
        - templates
        - hive
        - hypershift
        - selfservice
        - openshift
        - multicluster
        - quota
        - helm
        - argocd
        links:
        - name: Cluster as a service operator
          url: https://github.com/stolostron/cluster-templates-operator
        maintainers:
        - email: rawagner@redhat.com
          name: Rastislav Wagner
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Stolostron
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/community-operator-pipeline-prod/cluster-aas-operator@sha256:aad6afc2f6f1f4e3b2c0d14b6c178d6f71ef318b0d3efc97faa5fdb736eaa721
        - quay.io/stolostron/cluster-templates-operator:2.11.0-0c3131154065397d37e3b66ae635d7ea88650bf9
        version: 0.1.5
      entries:
      - name: cluster-aas-operator.v0.1.5
        version: 0.1.5
      - name: cluster-aas-operator.v0.1.4
        version: 0.1.4
      - name: cluster-aas-operator.v0.1.3
        version: 0.1.3
      - name: cluster-aas-operator.v0.1.2
        version: 0.1.2
      - name: cluster-aas-operator.v0.1.1
        version: 0.1.1
      - name: cluster-aas-operator.v0.1.0
        version: 0.1.0
      - name: cluster-aas-operator.v0.0.6
        version: 0.0.6
      - name: cluster-aas-operator.v0.0.5
        version: 0.0.5
      - name: cluster-aas-operator.v0.0.4
        version: 0.0.4
      - name: cluster-aas-operator.v0.0.3
        version: 0.0.3
      - name: cluster-aas-operator.v0.0.2
        version: 0.0.2
      - name: cluster-aas-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: cluster-aas-operator
    provider:
      name: Stolostron
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Google
      provider-url: https://cloud.google.com/alloydb/omni
    name: alloydb-omni-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: alloydb-omni-operator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "backupPlanRef": "backupplan1",
                  "dbclusterRef": "dbcluster-sample",
                  "manual": true,
                  "physicalBackupSpec": {
                    "backupType": "full"
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "BackupPlan",
                "metadata": {
                  "name": "backupplan1"
                },
                "spec": {
                  "backupRetainDays": 14,
                  "backupSchedules": {
                    "full": "0 0 * * 0",
                    "incremental": "0 21 * * *"
                  },
                  "dbclusterRef": "dbcluster-sample",
                  "paused": false
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "clone1"
                },
                "spec": {
                  "clonedDBClusterConfig": {
                    "dbclusterName": "new-dbcluster-sample"
                  },
                  "pointInTime": "2024-02-23T19:59:43Z",
                  "sourceDBCluster": "dbcluster-sample"
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "DBCluster",
                "metadata": {
                  "name": "dbcluster-sample"
                },
                "spec": {
                  "databaseVersion": "16.3.0",
                  "primarySpec": {
                    "adminUser": {
                      "passwordRef": {
                        "name": "db-pw-dbcluster-sample"
                      }
                    },
                    "resources": {
                      "cpu": 1,
                      "disks": [
                        {
                          "name": "DataDisk",
                          "size": "10Gi"
                        }
                      ],
                      "memory": "5Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "DBInstance",
                "metadata": {
                  "name": "dbcluster-sample-rp-1"
                },
                "spec": {
                  "dbcParent": {
                    "name": "dbcluster-sample"
                  },
                  "instanceType": "ReadPool",
                  "nodeCount": 2,
                  "resources": {
                    "cpu": 2,
                    "disks": [
                      {
                        "name": "DataDisk",
                        "size": "15Gi"
                      }
                    ],
                    "memory": "6Gi"
                  },
                  "schedulingconfig": {
                    "nodeaffinity": {
                      "preferredDuringSchedulingIgnoredDuringExecution": [
                        {
                          "preference": {
                            "matchExpressions": [
                              {
                                "key": "another-node-label-key",
                                "operator": "In",
                                "values": [
                                  "another-node-label-value"
                                ]
                              }
                            ]
                          },
                          "weight": 1
                        }
                      ]
                    },
                    "podAffinity": {
                      "preferredDuringSchedulingIgnoredDuringExecution": [
                        {
                          "podAffinityTerm": {
                            "labelSelector": {
                              "matchExpressions": [
                                {
                                  "key": "app",
                                  "operator": "In",
                                  "values": [
                                    "store"
                                  ]
                                }
                              ]
                            },
                            "topologyKey": "kubernetes.io/hostname"
                          },
                          "weight": 1
                        }
                      ]
                    },
                    "podAntiAffinity": {
                      "preferredDuringSchedulingIgnoredDuringExecution": [
                        {
                          "podAffinityTerm": {
                            "labelSelector": {
                              "matchExpressions": [
                                {
                                  "key": "security",
                                  "operator": "In",
                                  "values": [
                                    "S1"
                                  ]
                                }
                              ]
                            },
                            "topologyKey": "topology.kubernetes.io/zone"
                          },
                          "weight": 1
                        }
                      ]
                    },
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/control-plane",
                        "operator": "Exists"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Failover",
                "metadata": {
                  "name": "failover-sample"
                },
                "spec": {
                  "dbclusterRef": "dbcluster-sample"
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "PgBouncer",
                "metadata": {
                  "name": "mypgbouncer"
                },
                "spec": {
                  "allowSuperUserAccess": true,
                  "dbclusterRef": "dbcluster-sample",
                  "parameters": {
                    "default_pool_size": "15",
                    "ignore_startup_parameters": "extra_float_digits",
                    "max_client_conn": "800",
                    "max_db_connections": "160",
                    "pool_mode": "transaction"
                  },
                  "podSpec": {
                    "image": "gcr.io/alloydb-omni/operator/g-pgbouncer:1.5.0",
                    "resources": {
                      "cpu": 1,
                      "memory": "1Gi"
                    }
                  },
                  "replicaCount": 1,
                  "serviceOptions": {
                    "type": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Replication",
                "metadata": {
                  "name": "replication-downstream-sample"
                },
                "spec": {
                  "dbcluster": {
                    "name": "dbcluster-sample"
                  },
                  "downstream": {
                    "control": "setup",
                    "host": "10.10.10.10",
                    "password": {
                      "name": "ha-rep-pw-dbcluster-sample"
                    },
                    "port": 5432,
                    "replicationSlotName": "dbcluster_sample_replication_upstream_sample",
                    "username": "alloydbreplica"
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Replication",
                "metadata": {
                  "name": "replication-upstream-sample"
                },
                "spec": {
                  "dbcluster": {
                    "name": "dbcluster-sample"
                  },
                  "upstream": {}
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore1"
                },
                "spec": {
                  "backup": "backup1",
                  "sourceDBCluster": "dbcluster-sample"
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Sidecar",
                "metadata": {
                  "name": "sidecar-sample"
                },
                "spec": {
                  "sidecars": [
                    {
                      "args": [
                        "-c",
                        "while [ true ]\ndo\ndate\nset -x\nls -lh /logs/diagnostic\nset +x\ndone\n"
                      ],
                      "command": [
                        "/bin/sh"
                      ],
                      "image": "busybox",
                      "name": "sidecar-sample",
                      "volumeMounts": [
                        {
                          "mountPath": "/logs",
                          "name": "obsdisk"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Switchover",
                "metadata": {
                  "name": "switchover-sample"
                },
                "spec": {
                  "dbclusterRef": "dbcluster-sample",
                  "newPrimary": "aaaa-dbcluster-sample"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: gcr.io/alloydb-omni/operator/fleet-operator:1.5.0
          createdAt: "2025-07-25T04:12:04Z"
          operatorframework.io/suggested-namespace: alloydb-omni-system
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["backuprepositories.alloydbomni.internal.dbadmin.goog",
            "failovers.alloydbomni.internal.dbadmin.goog", "instancebackupplans.alloydbomni.internal.dbadmin.goog","instancebackups.alloydbomni.internal.dbadmin.goog","instancerestores.alloydbomni.internal.dbadmin.goog","instances.alloydbomni.internal.dbadmin.goog","instanceswitchovers.alloydbomni.internal.dbadmin.goog","instanceuserdefinedauthentications.alloydbomni.internal.dbadmin.goog","lrojobs.alloydbomni.internal.dbadmin.goog","replicationconfigs.alloydbomni.internal.dbadmin.goog","sidecars.alloydbomni.internal.dbadmin.goog","createstandbyjobs.alloydbomni.internal.dbadmin.goog","deletestandbyjobs.alloydbomni.internal.dbadmin.goog"]'
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BackupPlan is the Schema for the backupplans API.
            displayName: Backup Plan
            kind: BackupPlan
            name: backupplans.alloydbomni.dbadmin.goog
            version: v1
          - description: Backup is the Schema for the backups API.
            displayName: Backup
            kind: Backup
            name: backups.alloydbomni.dbadmin.goog
            version: v1
          - description: CreateStandbyJob is an internal workflow tracking object.
              Users should not directly interact with this.
            displayName: (Internal) Create Standby Job
            kind: CreateStandbyJob
            name: createstandbyjobs.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: DBCluster is the Schema for the DBClusters API.
            displayName: DB Cluster
            kind: DBCluster
            name: dbclusters.alloydbomni.dbadmin.goog
            version: v1
          - description: DBInstance is the Schema for the DBInstances API.
            displayName: DB Instance
            kind: DBInstance
            name: dbinstances.alloydbomni.dbadmin.goog
            version: v1
          - description: DeleteStandbyJob is an internal workflow tracking object.
              Users should not directly interact with this.
            displayName: (Internal) Delete Standby Job
            kind: DeleteStandbyJob
            name: deletestandbyjobs.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: Failover represents the parameters and status of a single
              failover operation.
            displayName: Failover
            kind: Failover
            name: failovers.alloydbomni.dbadmin.goog
            version: v1
          - description: PgBouncer is the Schema for the PgBouncer API.
            displayName: PgBouncer
            kind: PgBouncer
            name: pgbouncers.alloydbomni.dbadmin.goog
            version: v1
          - description: Replication is the Schema for the Replications API.
            displayName: Replication
            kind: Replication
            name: replications.alloydbomni.dbadmin.goog
            version: v1
          - description: Restore is the Schema for the Restores API.
            displayName: Restore
            kind: Restore
            name: restores.alloydbomni.dbadmin.goog
            version: v1
          - description: Sidecar is the Schema for the Sidecar API.
            displayName: Sidecar
            kind: Sidecar
            name: sidecars.alloydbomni.dbadmin.goog
            version: v1
          - description: Switchover represents the parameters and status of a single
              switchover.
            displayName: Switchover
            kind: Switchover
            name: switchovers.alloydbomni.dbadmin.goog
            version: v1
          - description: UserDefinedAuthentication is the Schema for the UserDefinedAuthentications
              API.
            displayName: User Defined Authentication
            kind: UserDefinedAuthentication
            name: userdefinedauthentications.alloydbomni.dbadmin.goog
            version: v1
          - description: BackupRepository is the Schema for the backuprepositories
              API.
            displayName: (Internal) Backup Repository
            kind: BackupRepository
            name: backuprepositories.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: Failover is the Schema for the failover API.
            displayName: (Internal) Failover
            kind: Failover
            name: failovers.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceBackupPlan is the Schema for the InstanceBackupPlan
              API.
            displayName: (Internal) Instance Backup Plan
            kind: InstanceBackupPlan
            name: instancebackupplans.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceBackup is the Schema for the InstanceBackup API.
            displayName: (Internal) Instance Backup
            kind: InstanceBackup
            name: instancebackups.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceRestore is the Schema for the InstanceRestore API.
            displayName: (Internal) Instance Restore
            kind: InstanceRestore
            name: instancerestores.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: Instance is the Schema for the Instance API.
            displayName: (Internal) Instance
            kind: Instance
            name: instances.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceSwitchover is the Schema for the InstanceSwitchover
              API.
            displayName: (Internal) Instance Switchover
            kind: InstanceSwitchover
            name: instanceswitchovers.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceUserDefinedAuthentication is the Schema for the InstanceUserDefinedAuthentication
              API.
            displayName: (Internal) Instance User Defined Authentication
            kind: InstanceUserDefinedAuthentication
            name: instanceuserdefinedauthentications.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: LROJob is the Schema for the LROJob API.
            displayName: (Internal) LRO Job
            kind: LROJob
            name: lrojobs.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: ReplicationConfig is the Schema for the ReplicationConfig
              API.
            displayName: (Internal) Replication Config
            kind: ReplicationConfig
            name: replicationconfigs.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: Sidecar is the Schema for the Sidecar API.
            displayName: (Internal) Sidecar
            kind: Sidecar
            name: sidecars.alloydbomni.internal.dbadmin.goog
            version: v1
        description: |-
          AlloyDB Omni is a database that lets you deploy a streamlined edition of AlloyDB for PostgreSQL in your own computing environment. While being 100% compatible with PostgreSQL applications and tools, AlloyDB Omni delivers higher performance for both OLTP and OLAP workloads and makes administration easy with a number of autopilots. AlloyDB AI provides powerful tools to build generative AI applications with the ability to create, store, and index vector embeddings right in your database.

          ## Post-installation

          After installing the operator, you need to manually create the cert-manager resources in your cluster as this is a strict dependency for our operator. For this, follow these steps:

          ```
          kubectl create ns ${NAMESPACE:?}
          ```

          ```
          kubectl apply -f - <<EOF
          apiVersion: cert-manager.io/v1
          kind: ClusterIssuer
          metadata:
            name: alloydbomni-selfsigned-cluster-issuer
          spec:
            selfSigned: {}
          ---
          apiVersion: cert-manager.io/v1
          kind: Issuer
          metadata:
            name: fleet-selfsigned-issuer
            namespace: ${NAMESPACE:?}
          spec:
            selfSigned: {}
          ---
          apiVersion: cert-manager.io/v1
          kind: Certificate
          metadata:
            name: fleet-serving-cert
            namespace: ${NAMESPACE:?}
          spec:
            dnsNames:
            - fleet-webhook-service.alloydb-omni-system.svc
            - fleet-webhook-service.alloydb-omni-system.svc.cluster.local
            issuerRef:
              kind: Issuer
              name: fleet-selfsigned-issuer
            secretName: fleet-webhook-server-cert
          ---
          apiVersion: cert-manager.io/v1
          kind: Issuer
          metadata:
            name: local-selfsigned-issuer
            namespace: ${NAMESPACE:?}
          spec:
            selfSigned: {}
          ---
          apiVersion: cert-manager.io/v1
          kind: Certificate
          metadata:
            name: local-serving-cert
            namespace: ${NAMESPACE:?}
          spec:
            dnsNames:
            - local-webhook-service.alloydb-omni-system.svc
            - local-webhook-service.alloydb-omni-system.svc.cluster.local
            issuerRef:
              kind: Issuer
              name: local-selfsigned-issuer
            secretName: local-webhook-server-cert
          EOF
          ```

          Replace the following:
          * `NAMESPACE` : the namespace where you have installed your operator. Suggested namespace: `alloydb-omni-system`.

          ## Creating a database cluster

          After you install the AlloyDB Omni operator on your Kubernetes cluster, you can create an AlloyDB Omni database cluster. For each database cluster you create, you must first create a password secret using the following format:

          ```
          apiVersion: v1
          kind: Secret
          metadata:
            name: db-pw-${DB_CLUSTER_NAME:s?}
            namespace: ${DB_CLUSTER_NAMESPACE:?}
          type: Opaque
          data:
            ${DB_CLUSTER_NAME:?}: "ENCODED_PASSWORD"
          ```

          Replace the following:
          * `DB_CLUSTER_NAME`: the name of this database cluster. For example, `my-db-cluster`.
          * `DB_CLUSTER_NAMESPACE` (Optional): the namespace where you want to create the database cluster. For example, `my-db-cluster-namespace`.
          * `ENCODED_PASSWORD`: the database login password for the default postgres user role, encoded as a base64 string. For example, `Q2hhbmdlTWUxMjM=` for password `ChangeMe123`.

          Follow [these][database-cluster] steps for creating a database cluster.

          ## Connect to AlloyDB Omni running on Kubernetes
          Follow [these][connect] steps to connect to AlloyDB Omni.

          [database-cluster]: https://cloud.google.com/alloydb/omni/docs/deploy-kubernetes#create
          [connect]: https://cloud.google.com/alloydb/omni/docs/run-connect#connect-kubernetes
        displayName: AlloyDB Omni Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - database
        - sql
        - postgres
        - vector
        - ai
        - analytics
        - postgresql
        - alloydb
        links:
        - name: Documentation
          url: https://cloud.google.com/alloydb/omni/docs
        - name: Release Notes
          url: https://cloud.google.com/alloydb/docs/release-notes
        maintainers:
        - email: alloydb-omni-ext@google.com
          name: Google Cloud
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Google
          url: https://cloud.google.com/alloydb/omni
        relatedImages:
        - quay.io/community-operator-pipeline-prod/alloydb-omni-operator@sha256:08fafb811f709780c0ccb3c22e3c6417cb14a70a9305e46a7b50457647a82102
        - gcr.io/alloydb-omni/operator/fleet-operator:1.5.0
        - gcr.io/alloydb-omni/operator/local-operator:1.5.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.14.1
        version: 1.5.0
      entries:
      - name: alloydb-omni-operator.v1.5.0
        version: 1.5.0
      - name: alloydb-omni-operator.v1.4.1
        version: 1.4.1
      - name: alloydb-omni-operator.v1.4.0
        version: 1.4.0
      - name: alloydb-omni-operator.v1.3.0
        version: 1.3.0
      name: stable
    defaultChannel: stable
    packageName: alloydb-omni-operator
    provider:
      name: Google
      url: https://cloud.google.com/alloydb/omni
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: VictoriaMetrics
      provider-url: ""
    name: victoriametrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: victoriametrics-operator.v0.66.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.victoriametrics.com/v1",
                "kind": "VLAgent",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "persistentVolumeClaimRetentionPolicy": {
                    "whenDeleted": "Delete"
                  },
                  "remoteWrite": [
                    {
                      "maxDiskUsage": "10GB",
                      "url": "http://vlsingle-example-0.default.svc:9428/internal/insert"
                    }
                  ],
                  "remoteWriteSettings": {
                    "maxBlockSize": "30MB"
                  },
                  "replicaCount": 2,
                  "resources": {
                    "limits": {
                      "cpu": "500m",
                      "memory": "850Mi"
                    },
                    "requests": {
                      "cpu": "50m",
                      "memory": "350Mi"
                    }
                  },
                  "storage": {
                    "volumeClaimTemplate": {
                      "spec": {
                        "resources": {
                          "requests": {
                            "storage": "50Gi"
                          }
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1",
                "kind": "VLCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "victoriametrics-operator"
                  },
                  "name": "example"
                },
                "spec": {
                  "requestsLoadBalancer": {
                    "enabled": true,
                    "spec": {}
                  },
                  "vlinsert": {
                    "replicaCount": 1
                  },
                  "vlselect": {
                    "replicaCount": 1
                  },
                  "vlstorage": {
                    "replicaCount": 2,
                    "retentionPeriod": "1y",
                    "storage": {
                      "volumeClaimTemplate": {
                        "spec": {
                          "resources": {
                            "requests": {
                              "storage": "50Gi"
                            }
                          }
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1",
                "kind": "VLSingle",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "victoriametrics-operator"
                  },
                  "name": "sample"
                },
                "spec": {
                  "retentionMaxDiskSpaceUsageBytes": "20GB",
                  "retentionPeriod": "1y",
                  "storage": {
                    "resources": {
                      "requests": {
                        "storage": "50Gi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VLogs",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "retentionPeriod": "2"
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAgent",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "extraArgs": {
                    "memory.allowedPercent": "40"
                  },
                  "remoteWrite": [
                    {
                      "maxDiskUsage": "10GB",
                      "url": "http://vmsingle-dc-1.default.svc:8429/api/v1/write"
                    },
                    {
                      "maxDiskUsage": "15GB",
                      "url": "http://vmsingle-dc-2.default.svc:8429/api/v1/write"
                    },
                    {
                      "url": "http://vminsert-main.default.svc:8480/insert/1:1/prometheus/api/v1/write"
                    }
                  ],
                  "remoteWriteSettings": {
                    "maxDiskUsagePerURL": "5GB"
                  },
                  "replicaCount": 1,
                  "resources": {
                    "limits": {
                      "cpu": "500m",
                      "memory": "850Mi"
                    },
                    "requests": {
                      "cpu": "50m",
                      "memory": "350Mi"
                    }
                  },
                  "selectAllByDefault": true
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAlert",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "datasource": {
                    "url": "http://vmsingle-example-pvc.default.svc:8429"
                  },
                  "evaluationInterval": "30s",
                  "notifier": {
                    "url": "http://vmalertmanager-example.default.svc:9093"
                  },
                  "replicaCount": 1,
                  "selectAllByDefault": true
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAlertmanager",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "configSecret": "am-global-config",
                  "replicaCount": 1,
                  "selectAllByDefault": true,
                  "storage": {
                    "volumeClaimTemplate": {
                      "spec": {
                        "resources": {
                          "requests": {
                            "storage": "2Gi"
                          }
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAlertmanagerConfig",
                "metadata": {
                  "name": "example-email-web"
                },
                "spec": {
                  "receivers": [
                    {
                      "email_configs": [
                        {
                          "from": "alerting@example.com",
                          "smarthost": "example.com:25",
                          "text": "ALARM",
                          "to": "some-email@example.com"
                        }
                      ],
                      "name": "email",
                      "webhook_configs": [
                        {
                          "url": "http://some-other-wh"
                        }
                      ]
                    }
                  ],
                  "route": {
                    "group_interval": "1m",
                    "receiver": "email",
                    "routes": [
                      {
                        "receiver": "email"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAuth",
                "metadata": {
                  "name": "vmauth-sample"
                },
                "spec": {
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "victoriametrics/vmauth"
                  },
                  "replicaCount": 1,
                  "resources": {
                    "limits": {
                      "cpu": "500m",
                      "memory": "850Mi"
                    },
                    "requests": {
                      "cpu": "250m",
                      "memory": "350Mi"
                    }
                  },
                  "selectAllByDefault": true
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMCluster",
                "metadata": {
                  "name": "example-persistent"
                },
                "spec": {
                  "replicationFactor": 2,
                  "retentionPeriod": "4",
                  "vminsert": {
                    "replicaCount": 2,
                    "resources": {
                      "limits": {
                        "cpu": "1",
                        "memory": "1000Mi"
                      },
                      "requests": {
                        "cpu": "0.5",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "vmselect": {
                    "cacheMountPath": "/select-cache",
                    "replicaCount": 2,
                    "resources": {
                      "limits": {
                        "cpu": "1",
                        "memory": "1000Mi"
                      },
                      "requests": {
                        "cpu": "0.5",
                        "memory": "500Mi"
                      }
                    },
                    "storage": {
                      "volumeClaimTemplate": {
                        "spec": {
                          "resources": {
                            "requests": {
                              "storage": "2Gi"
                            }
                          }
                        }
                      }
                    }
                  },
                  "vmstorage": {
                    "replicaCount": 2,
                    "resources": {
                      "limits": {
                        "cpu": "1",
                        "memory": "1500Mi"
                      }
                    },
                    "storage": {
                      "volumeClaimTemplate": {
                        "spec": {
                          "resources": {
                            "requests": {
                              "storage": "10Gi"
                            }
                          }
                        }
                      }
                    },
                    "storageDataPath": "/vm-data"
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMNodeScrape",
                "metadata": {
                  "name": "cadvisor-metrics"
                },
                "spec": {
                  "bearerTokenFile": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                  "interval": "10s",
                  "relabelConfigs": [
                    {
                      "action": "labelmap",
                      "regex": "__meta_kubernetes_node_label_(.+)"
                    },
                    {
                      "replacement": "kubernetes.default.svc:443",
                      "targetLabel": "__address__"
                    },
                    {
                      "regex": "(.+)",
                      "replacement": "/api/v1/nodes/$1/proxy/metrics/cadvisor",
                      "sourceLabels": [
                        "__meta_kubernetes_node_name"
                      ],
                      "targetLabel": "__metrics_path__"
                    }
                  ],
                  "scheme": "https",
                  "scrapeTimeout": "2s",
                  "selector": {},
                  "tlsConfig": {
                    "caFile": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                    "insecureSkipVerify": true
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMPodScrape",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "podMetricsEndpoints": [
                    {
                      "port": "metrics",
                      "scheme": "http"
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app.kubernetes.io/name": "example-application",
                      "monitored-by": "vm-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMProbe",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "interval": "2s",
                  "jobName": "static-probe",
                  "module": "http_2xx",
                  "targets": {
                    "staticConfig": {
                      "targets": [
                        "vmagent-example.default.svc:8429/health"
                      ]
                    }
                  },
                  "vmProberSpec": {
                    "url": "prometheus-blackbox-exporter.default.svc:9115"
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMRule",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "groups": [
                    {
                      "name": "kafka",
                      "rules": [
                        {
                          "alert": "coordinator down",
                          "annotations": {
                            "description": "kafka coordinator is down",
                            "value": "{{ $value }}"
                          },
                          "expr": "ml_app_gauge{exec_context=\"consumer_group_state\"} == 0",
                          "for": "60s",
                          "labels": {
                            "job": "{{ $labels.job }}",
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMScrapeConfig",
                "metadata": {
                  "name": "mongodb"
                },
                "spec": {
                  "consulSDConfigs": [
                    {
                      "server": "https://consul-dns:8500",
                      "services": [
                        "mongodb"
                      ]
                    }
                  ],
                  "relabelConfigs": [
                    {
                      "action": "replace",
                      "sourceLabels": [
                        "__meta_consul_service"
                      ],
                      "targetLabel": "job"
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMServiceScrape",
                "metadata": {
                  "name": "example-scrape"
                },
                "spec": {
                  "endpoints": [
                    {
                      "port": "http"
                    }
                  ],
                  "namespaceSelector": {},
                  "selector": {
                    "matchLabels": {
                      "app.kubernetes.io/name": "example-application",
                      "monitored-by": "vm-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMSingle",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "retentionPeriod": "1"
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMSingle",
                "metadata": {
                  "name": "example-pvc"
                },
                "spec": {
                  "removePvcAfterDelete": true,
                  "retentionPeriod": "1",
                  "storage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "1Gi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMStaticScrape",
                "metadata": {
                  "name": "vmstaticscrape-sample"
                },
                "spec": {
                  "jobName": "static",
                  "targetEndpoints": [
                    {
                      "labels": {
                        "env": "dev",
                        "project": "operator"
                      },
                      "targets": [
                        "192.168.0.1:9100",
                        "196.168.0.50:9100"
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMUser",
                "metadata": {
                  "name": "vmuser-tenant-1"
                },
                "spec": {
                  "bearerToken": "some-token",
                  "targetRefs": [
                    {
                      "crd": {
                        "kind": "VMCluster/vminsert",
                        "name": "test-persistent",
                        "namespace": "vm"
                      },
                      "target_path_suffix": "/insert/1"
                    },
                    {
                      "crd": {
                        "kind": "VMCluster/vmselect",
                        "name": "test-persistent",
                        "namespace": "vm"
                      },
                      "target_path_suffix": "/select/1"
                    },
                    {
                      "paths": [
                        "/internal/resetRollupResultCache"
                      ],
                      "static": {
                        "url": "http://vmselect-test-persistent.default.svc:8481/"
                      }
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/victoriametrics/operator@sha256:f4d54f2892712fdab87e0371066c59b54903a8c4fadd68bc38218e995718a722
          createdAt: "2025-12-06T15:03:12Z"
          description: Provides monitoring capabilities for kubernetes clusters and
            applications
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorhub.io/ui-metadata-max-k8s-version: "1.30"
          operators.openshift.io/infrastructure-features: '[fips]'
          operators.operatorframework.io.bundle.channel.default.v1: beta
          operators.operatorframework.io.bundle.channels.v1: beta
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/VictoriaMetrics/operator
          support: VictoriaMetrics
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VLAgent - is a tiny but brave agent, which helps you collect
              logs from various sources and stores them in VictoriaLogs.
            displayName: VLAgent
            kind: VLAgent
            name: vlagents.operator.victoriametrics.com
            version: v1
          - description: VLCluster is fast, cost-effective and scalable logs database.
            displayName: VLCluster
            kind: VLCluster
            name: vlclusters.operator.victoriametrics.com
            version: v1
          - description: |-
              VLogs is fast, cost-effective and scalable logs database.
              VLogs is the Schema for the vlogs API
            displayName: VLogs
            kind: VLogs
            name: vlogs.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VLSingle is fast, cost-effective and scalable logs database.
              VLSingle is the Schema for the API
            displayName: VLSingle
            kind: VLSingle
            name: vlsingles.operator.victoriametrics.com
            version: v1
          - description: |-
              VMAgent - is a tiny but brave agent, which helps you collect metrics from various sources and stores them in VictoriaMetrics
              or any other Prometheus-compatible storage system that supports the remote_write protocol.
            displayName: VMAgent
            kind: VMAgent
            name: vmagents.operator.victoriametrics.com
            version: v1beta1
          - description: VMAlertmanagerConfig is the Schema for the vmalertmanagerconfigs
              API
            displayName: VMAlertmanager Config
            kind: VMAlertmanagerConfig
            name: vmalertmanagerconfigs.operator.victoriametrics.com
            version: v1beta1
          - description: VMAlertmanager represents Victoria-Metrics deployment for
              Alertmanager.
            displayName: VMAlertmanager
            kind: VMAlertmanager
            name: vmalertmanagers.operator.victoriametrics.com
            version: v1beta1
          - description: VMAlert  executes a list of given alerting or recording rules
              against configured address.
            displayName: VMAlert
            kind: VMAlert
            name: vmalerts.operator.victoriametrics.com
            version: v1beta1
          - description: VMAnomaly is the Schema for the vmanomalies API.
            displayName: VMAnomaly
            kind: VMAnomaly
            name: vmanomalies.operator.victoriametrics.com
            version: v1
          - description: VMAuth is the Schema for the vmauths API
            displayName: VMAuth
            kind: VMAuth
            name: vmauths.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMCluster is fast, cost-effective and scalable time-series database.
              Cluster version with
            displayName: VMCluster
            kind: VMCluster
            name: vmclusters.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMNodeScrape defines discovery for targets placed on kubernetes nodes,
              usually its node-exporters and other host services.
              InternalIP is used as __address__ for scraping.
            displayName: VMNode Scrape
            kind: VMNodeScrape
            name: vmnodescrapes.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMPodScrape is scrape configuration for pods,
              it generates vmagent's config for scraping pod targets
              based on selectors.
            displayName: VMPod Scrape
            kind: VMPodScrape
            name: vmpodscrapes.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMProbe defines a probe for targets, that will be executed with prober,
              like blackbox exporter.
              It helps to monitor reachability of target with various checks.
            displayName: VMProbe
            kind: VMProbe
            name: vmprobes.operator.victoriametrics.com
            version: v1beta1
          - description: VMRule defines rule records for vmalert application
            displayName: VMRule
            kind: VMRule
            name: vmrules.operator.victoriametrics.com
            version: v1beta1
          - description: VMScrapeConfig specifies a set of targets and parameters
              describing how to scrape them.
            displayName: VMScrape Config
            kind: VMScrapeConfig
            name: vmscrapeconfigs.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMServiceScrape is scrape configuration for endpoints associated with
              kubernetes service,
              it generates scrape configuration for vmagent based on selectors.
              result config will scrape service endpoints
            displayName: VMService Scrape
            kind: VMServiceScrape
            name: vmservicescrapes.operator.victoriametrics.com
            version: v1beta1
          - description: VMSingle  is fast, cost-effective and scalable time-series
              database.
            displayName: VMSingle
            kind: VMSingle
            name: vmsingles.operator.victoriametrics.com
            version: v1beta1
          - description: VMStaticScrape  defines static targets configuration for
              scraping.
            displayName: VMStatic Scrape
            kind: VMStaticScrape
            name: vmstaticscrapes.operator.victoriametrics.com
            version: v1beta1
          - description: VMUser is the Schema for the vmusers API
            displayName: VMUser
            kind: VMUser
            name: vmusers.operator.victoriametrics.com
            version: v1beta1
          - description: VTCluster is fast, cost-effective and scalable traces database.
            displayName: VTCluster
            kind: VTCluster
            name: vtclusters.operator.victoriametrics.com
            version: v1
          - description: |-
              VTSingle is fast, cost-effective and scalable traces database.
              VTSingle is the Schema for the API
            displayName: VTSingle
            kind: VTSingle
            name: vtsingles.operator.victoriametrics.com
            version: v1
        description: |
          Operator manages VictoriaMetrics applications and provides monitoring features for applications running inside and outside kubernetes cluster. It has support for prometheus-operator objects and
          provides migration mechanism.

          Operator designed to use existing installation of VictoriaMetrics inside or outside kubernetes cluster or it could
          bring own resources and fully manages them.

           You can read more about operator at docs:
            - quick start [doc](https://github.com/VictoriaMetrics/operator/blob/master/docs/quick-start.md)
            - high availability [doc](https://github.com/VictoriaMetrics/operator/blob/master/docs/high-availability.md)
            - design and description of implementation [design](https://github.com/VictoriaMetrics/operator/blob/master/docs/design.md)
            - operator objects description [doc](https://github.com/VictoriaMetrics/operator/blob/master/docs/api.md)

          # VictoriaMetrics
          * VictoriaMetrics can be used as long-term storage for Prometheus or for [vmagent](https://github.com/VictoriaMetrics/VictoriaMetrics/blob/master/app/vmagent/README.md).
          See [these docs](https://github.com/VictoriaMetrics/VictoriaMetrics#prometheus-setup) for details.
          * Supports [Prometheus querying API](https://prometheus.io/docs/prometheus/latest/querying/api/), so it can be used as Prometheus drop-in replacement in Grafana.
          VictoriaMetrics implements [MetricsQL](https://github.com/VictoriaMetrics/VictoriaMetrics/wiki/MetricsQL) query language, which is inspired by PromQL.
          * Supports global query view. Multiple Prometheus instances may write data into VictoriaMetrics. Later this data may be used in a single query.
          * High performance and good scalability for both [inserts](https://medium.com/@valyala/high-cardinality-tsdb-benchmarks-victoriametrics-vs-timescaledb-vs-influxdb-13e6ee64dd6b)
          and [selects](https://medium.com/@valyala/when-size-matters-benchmarking-victoriametrics-vs-timescale-and-influxdb-6035811952d4).
          [Outperforms InfluxDB and TimescaleDB by up to 20x](https://medium.com/@valyala/measuring-vertical-scalability-for-time-series-databases-in-google-cloud-92550d78d8ae).
          * [Uses 10x less RAM than InfluxDB](https://medium.com/@valyala/insert-benchmarks-with-inch-influxdb-vs-victoriametrics-e31a41ae2893) when working with millions of unique time series (aka high cardinality).
          * Optimized for time series with high churn rate. Think about [prometheus-operator](https://github.com/coreos/prometheus-operator) metrics from frequent deployments in Kubernetes.
          * High data compression, so [up to 70x more data points](https://medium.com/@valyala/when-size-matters-benchmarking-victoriametrics-vs-timescale-and-influxdb-6035811952d4)
          may be crammed into limited storage comparing to TimescaleDB.
          * Optimized for storage with high-latency IO and low IOPS (HDD and network storage in AWS, Google Cloud, Microsoft Azure, etc). See [graphs from these benchmarks](https://medium.com/@valyala/high-cardinality-tsdb-benchmarks-victoriametrics-vs-timescaledb-vs-influxdb-13e6ee64dd6b).
          * A single-node VictoriaMetrics may substitute moderately sized clusters built with competing solutions such as Thanos, M3DB, Cortex, InfluxDB or TimescaleDB.
          See [vertical scalability benchmarks](https://medium.com/@valyala/measuring-vertical-scalability-for-time-series-databases-in-google-cloud-92550d78d8ae),
          [comparing Thanos to VictoriaMetrics cluster](https://medium.com/@valyala/comparing-thanos-to-victoriametrics-cluster-b193bea1683)
          and [Remote Write Storage Wars](https://promcon.io/2019-munich/talks/remote-write-storage-wars/) talk
          from [PromCon 2019](https://promcon.io/2019-munich/talks/remote-write-storage-wars/).
          * Easy operation:
              * VictoriaMetrics consists of a single [small executable](https://medium.com/@valyala/stripping-dependency-bloat-in-victoriametrics-docker-image-983fb5912b0d) without external dependencies.
              * All the configuration is done via explicit command-line flags with reasonable defaults.
              * All the data is stored in a single directory pointed by `-storageDataPath` flag.
              * Easy and fast backups from [instant snapshots](https://medium.com/@valyala/how-victoriametrics-makes-instant-snapshots-for-multi-terabyte-time-series-data-e1f3fb0e0282)
              to S3 or GCS with [vmbackup](https://github.com/VictoriaMetrics/VictoriaMetrics/blob/master/app/vmbackup/README.md) / [vmrestore](https://github.com/VictoriaMetrics/VictoriaMetrics/blob/master/app/vmrestore/README.md).
              See [this article](https://medium.com/@valyala/speeding-up-backups-for-big-time-series-databases-533c1a927883) for more details.
          * Storage is protected from corruption on unclean shutdown (i.e. OOM, hardware reset or `kill -9`) thanks to [the storage architecture](https://medium.com/@valyala/how-victoriametrics-makes-instant-snapshots-for-multi-terabyte-time-series-data-e1f3fb0e0282).
          * Supports metrics' scraping, ingestion and [backfilling](https://github.com/VictoriaMetrics/VictoriaMetrics#backfilling) via the following protocols:
            * [Metrics from Prometheus exporters](https://github.com/prometheus/docs/blob/master/content/docs/instrumenting/exposition_formats.md#text-based-format)
              such as [node_exporter](https://github.com/prometheus/node_exporter). See [these docs](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-scrape-prometheus-exporters-such-as-node-exporter) for details.
              * [Prometheus remote write API](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#remote_write)
              * [InfluxDB line protocol](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-send-data-from-influxdb-compatible-agents-such-as-telegraf) over HTTP, TCP and UDP.
              * [Graphite plaintext protocol](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-send-data-from-graphite-compatible-agents-such-as-statsd) with [tags](https://graphite.readthedocs.io/en/latest/tags.html#carbon)
              if `-graphiteListenAddr` is set.
              * [OpenTSDB put message](https://github.com/VictoriaMetrics/VictoriaMetrics#sending-data-via-telnet-put-protocol) if `-opentsdbListenAddr` is set.
              * [HTTP OpenTSDB /api/put requests](https://github.com/VictoriaMetrics/VictoriaMetrics#sending-opentsdb-data-via-http-apiput-requests) if `-opentsdbHTTPListenAddr` is set.
              * [How to import time series data](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-import-time-series-data).
              * [Prometheus exposition format](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-import-data-in-prometheus-exposition-format).
              * [Arbitrary CSV data](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-import-csv-data).
          * Supports metrics' relabeling. See [these docs](https://github.com/VictoriaMetrics/VictoriaMetrics#relabeling) for details.
          * Ideally works with big amounts of time series data from Kubernetes, IoT sensors, connected cars, industrial telemetry, financial data and various Enterprise workloads.
        displayName: VictoriaMetrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - prometheus
        - victoriametrics
        links:
        - name: VictoriaMetrics
          url: https://victoriametrics.com
        maintainers:
        - email: nik@victoriametrics.com
          name: f41gh7
        - email: info@victoriametrics.com
          name: info
        maturity: beta
        minKubeVersion: 1.23.0
        provider:
          name: VictoriaMetrics
        relatedImages:
        - docker.io/victoriametrics/operator:v0.66.1
        - quay.io/community-operator-pipeline-prod/victoriametrics-operator:0.66.1
        version: 0.66.1
      entries:
      - name: victoriametrics-operator.v0.66.1
        version: 0.66.1
      - name: victoriametrics-operator.v0.66.0
        version: 0.66.0
      - name: victoriametrics-operator.v0.65.0
        version: 0.65.0
      - name: victoriametrics-operator.v0.64.1
        version: 0.64.1
      - name: victoriametrics-operator.v0.64.0
        version: 0.64.0
      - name: victoriametrics-operator.v0.63.0
        version: 0.63.0
      - name: victoriametrics-operator.v0.62.0
        version: 0.62.0
      - name: victoriametrics-operator.v0.61.2
        version: 0.61.2
      - name: victoriametrics-operator.v0.61.1
        version: 0.61.1
      - name: victoriametrics-operator.v0.61.0
        version: 0.61.0
      - name: victoriametrics-operator.v0.60.2
        version: 0.60.2
      - name: victoriametrics-operator.v0.60.1
        version: 0.60.1
      - name: victoriametrics-operator.v0.60.0
        version: 0.60.0
      - name: victoriametrics-operator.v0.59.2
        version: 0.59.2
      - name: victoriametrics-operator.v0.59.1
        version: 0.59.1
      - name: victoriametrics-operator.v0.59.0
        version: 0.59.0
      - name: victoriametrics-operator.v0.58.1
        version: 0.58.1
      - name: victoriametrics-operator.v0.58.0
        version: 0.58.0
      - name: victoriametrics-operator.v0.57.0
        version: 0.57.0
      - name: victoriametrics-operator.v0.56.0
        version: 0.56.0
      - name: victoriametrics-operator.v0.55.0
        version: 0.55.0
      - name: victoriametrics-operator.v0.54.1
        version: 0.54.1
      - name: victoriametrics-operator.v0.53.0
        version: 0.53.0
      - name: victoriametrics-operator.v0.52.0
        version: 0.52.0
      name: beta
    defaultChannel: beta
    packageName: victoriametrics-operator
    provider:
      name: VictoriaMetrics
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: job-set
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jobset-operator.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "JobSetOperator",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-jobset-operator"
                },
                "spec": {
                  "managementState": "Managed",
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-08-26"
          description: |
            The JobSet Operator provides the ability to deploy a JobSet controller in OpenShift.
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-jobset-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          repository: https://github.com/openshift/jobset-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: Job Set Operator
            kind: JobSetOperator
            name: jobsetoperators.operator.openshift.io
            version: v1
        description: |
          The JobSet Operator provides the ability to deploy a JobSet controller in OpenShift.
        displayName: Job Set Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - jobset-operator
        - jobset
        links:
        - name: Source Code
          url: https://github.com/openshift/kubernetes-sigs-jobset
        - name: Source Code
          url: https://github.com/openshift/jobset-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.31.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/job-set/jobset-operator-bundle@sha256:1f8fd0e1c6636b04dcc7cf4cf27d33edd70c31db5b6c5fc305e415df8a5b10d5
        - registry.redhat.io/job-set/jobset-rhel9-operator@sha256:e5b874a603a2f6cb97b4312ea2b00275cc4304773bcd9fca0782f1335576cd0b
        - registry.redhat.io/job-set/jobset-rhel9@sha256:104e8a00fea252ffeb7fbef678be0b2f57c6e0cdde8dcae0134c2a4d681cb63b
        version: 0.1.0
      entries:
      - name: jobset-operator.v0.1.0
        version: 0.1.0
      name: tech-preview-v0.1
    defaultChannel: tech-preview-v0.1
    packageName: job-set
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: CyberArk
      provider-url: https://www.cyberark.com/
    name: vcp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vcp-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "installer.venafi.com/v1alpha1",
                "kind": "VenafiInstall",
                "metadata": {
                  "name": "install-venafi-enhanced-issuer"
                },
                "spec": {
                  "certManager": {
                    "install": true
                  },
                  "globals": {
                    "imagePullSecretNames": [
                      "venafi"
                    ]
                  },
                  "venafiConnection": {
                    "install": true
                  },
                  "venafiEnhancedIssuer": {
                    "install": true
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.venafi.cloud/public/venafi-images/vcp-operator@sha256:9da79fd0941c21e433f22aaaccc43ebbd4646e685aea0050194954d8b4019c05
          createdAt: "2024-05-30T11:35:41Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              VenafiInstall is an object for installing Venafi components onto a Kubernetes
              cluster
            displayName: VenafiInstall
            kind: VenafiInstall
            name: venafiinstalls.installer.venafi.com
            version: v1alpha1
        description: |
          Venafi Control Plane Operator for Red Hat OpenShift simplifies deployment of Venafi's enterprise components and dependencies.

          The enterprise components include:
          - Enterprise cert-manager: An enhanced version of cert-manager designed for application certificate management within your clusters.
          - Venafi Enhanced Issuer: Enables seamless certificate enrollment for your clusters directly from the Venafi Control Plane.
          - Venafi Firefly: A high-performance, lightweight issuer for certificates, centrally managed by the Venafi Control Plane.
          - Venafi Kubernetes Agent: Provides real-time visibility into certificates and Kubernetes resources directly within the Venafi Control Plane.
        displayName: Venafi Control Plane Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - venafi
        - vcp-operator
        links:
        - name: Documentation
          url: https://docs.venafi.cloud/
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: Venafi
          url: https://venafi.com
        relatedImages:
        - registry.connect.redhat.com/venafi/vcp-operator@sha256:9d24507aabd06856c7c35d73417b6ce065164f9c966053b494d68f14f0e260b7
        - registry.venafi.cloud/public/venafi-images/vcp-operator@sha256:9da79fd0941c21e433f22aaaccc43ebbd4646e685aea0050194954d8b4019c05
        version: 1.0.0
      entries:
      - name: vcp-operator.v1.0.0
        version: 1.0.0
      name: alpha
    - currentCSV: vcp-operator.v1.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "installer.venafi.com/v1alpha1",
                "kind": "VenafiInstall",
                "metadata": {
                  "name": "install-venafi-enhanced-issuer"
                },
                "spec": {
                  "certManager": {
                    "install": true
                  },
                  "globals": {
                    "imagePullSecretNames": [
                      "venafi"
                    ]
                  },
                  "venafiConnection": {
                    "install": true
                  },
                  "venafiEnhancedIssuer": {
                    "install": true
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.venafi.cloud/public/venafi-images/vcp-operator@sha256:e866acaacd26a0d586c0a7d3cc01b72d611054a267f79d34b8a9ef3cafc300b0
          createdAt: "2025-11-10T13:26:46Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              VenafiInstall is an object for installing CyberArk components onto a Kubernetes
              cluster
            displayName: VenafiInstall
            kind: VenafiInstall
            name: venafiinstalls.installer.venafi.com
            version: v1alpha1
        description: |
          The CyberArk Certificate Manager Operator for Red Hat OpenShift, formerly known as the Venafi Control Plane Operator, simplifies the deployment of enterprise components part of the CyberArk Certificate Manager for Kubernetes.

          The components include:
          - cert-manager: An enterprise distribution of cert-manager designed for application certificate management within your clusters.
          - Enterprise Issuer: Enables seamless certificate enrollment directly from the Certificate Manager.
          - Workload Identity Manager: A high-performance issuer for certificates, centrally managed by the Certificate Manager.
          - Agent: Provides real-time visibility into cluster resources directly within the Certificate Manager.
        displayName: CyberArk Certificate Manager Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cyberark
        - vcp-operator
        links:
        - name: Documentation
          url: https://docs.venafi.cloud/vaas/k8s-components/c-vcpo-overview/
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/venafi/vcp-operator@sha256:ba1267a2046585c3b24c78198365dd8a13c6aaebbdbe76d6e666b89f11e9429d
        - registry.venafi.cloud/public/venafi-images/vcp-operator@sha256:e866acaacd26a0d586c0a7d3cc01b72d611054a267f79d34b8a9ef3cafc300b0
        version: 1.8.2
      entries:
      - name: vcp-operator.v1.8.2
        version: 1.8.2
      - name: vcp-operator.v1.8.1
        version: 1.8.1
      - name: vcp-operator.v1.8.0
        version: 1.8.0
      - name: vcp-operator.v1.7.0
        version: 1.7.0
      - name: vcp-operator.v1.6.0
        version: 1.6.0
      - name: vcp-operator.v1.5.0
        version: 1.5.0
      - name: vcp-operator.v1.4.0
        version: 1.4.0
      - name: vcp-operator.v1.3.0
        version: 1.3.0
      - name: vcp-operator.v1.2.1
        version: 1.2.1
      - name: vcp-operator.v1.2.0
        version: 1.2.0
      - name: vcp-operator.v1.1.1
        version: 1.1.1
      name: stable
    defaultChannel: stable
    packageName: vcp-operator
    provider:
      name: CyberArk
      url: https://www.cyberark.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Fusion Access for SAN Team
      provider-url: ""
    name: openshift-fusion-access-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-fusion-access-operator.v1.1.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fusion.storage.openshift.io/v1alpha1",
                "kind": "FileSystemClaim",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "openshift-fusion-access-operator"
                  },
                  "name": "filesystemclaim-sample"
                },
                "spec": {
                  "devices": [
                    "uuid.58d49490-25b4-56a2-a78f-bcdb9112f72b",
                    "uuid.e9751ba1-37d2-53b2-82e7-6a9b661c9556",
                    "eui.0025388b21109b01"
                  ]
                }
              },
              {
                "apiVersion": "fusion.storage.openshift.io/v1alpha1",
                "kind": "FusionAccess",
                "metadata": {
                  "name": "fusionaccess-object"
                },
                "spec": {
                  "storageDeviceDiscovery": {
                    "create": true
                  },
                  "storageScaleVersion": "v5.2.3.5"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-12-17T06:26:05Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/initialization-resource: '{"apiVersion":"fusion.storage.openshift.io/v1alpha1","kind":"FusionAccess","metadata":{"name":"fusionaccess-object"},"spec":{"storageDeviceDiscovery":{"create":true},"storageScaleVersion":"v5.2.3.5"}}'
          operatorframework.io/suggested-namespace: ibm-fusion-access
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Openshift Container Platform","OpenShift
            Virtualization Engine"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["localvolumediscoveryresults.fusion.storage.openshift.io","localvolumediscoveries.fusion.storage.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileSystemClaim is the Schema for the filesystemclaims API.
            displayName: File System Claim
            kind: FileSystemClaim
            name: filesystemclaims.fusion.storage.openshift.io
            version: v1alpha1
          - description: FusionAccess is the Schema for the fusionaccesses API
            displayName: Fusion Access
            kind: FusionAccess
            name: fusionaccesses.fusion.storage.openshift.io
            version: v1alpha1
          - kind: LocalVolumeDiscovery
            name: localvolumediscoveries.fusion.storage.openshift.io
            version: v1alpha1
          - kind: LocalVolumeDiscoveryResult
            name: localvolumediscoveryresults.fusion.storage.openshift.io
            version: v1alpha1
        description: "IBM Fusion Access for SAN is a cloud-native storage solution
          designed to\nhelp enterprises transition smoothly from traditional virtualization\nenvironments
          to OpenShift. \n\nBuilt on IBM Storage Scale technology, it provides a consistent,\nhigh-performance
          datastore-like experience while reusing existing SAN\ninfrastructure. With
          enhanced observability, platform-storage separation, and\ntrue storage abstraction,
          Fusion Access simplifies management and boosts\nefficiency.\n\n## Prerequisites
          and warnings\n\n- storage clusters require at least 3 available nodes\n-
          each available node must have at least 20 GiB of RAM\n\nFor more information,
          see [Prerequisites and configuration](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/virtualization/storage#fusion-access-san-prereqs_install-configure-fusion-access-san).\n\nThis
          operator will need an IBM Fusion Entitlement. See [https://access.ibmfusion.eu/](https://access.ibmfusion.eu/)\nfor
          additional information.\n"
        displayName: Fusion Access for SAN
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gpfs
        - storage
        - virtualization
        links:
        - name: Fusion Access for SAN
          url: https://access.ibmfusion.eu/
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/virtualization/storage#install-configure-fusion-access-san
        maintainers:
        - email: sughosh@redhat.com
          name: Suvro
        - email: nlevanon@redhat.com
          name: Nadav
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Fusion Access for SAN Team
        relatedImages:
        - icr.io/cpopen/fusion-access/devicefinder-rhel9@sha256:7aa10cd4c1b7d58f981355ba8ab7a61ef8f8dd22b4d5f685980deb2b1bd5f034
        - registry.connect.redhat.com/ibm/fusion-access-bundle@sha256:edf8351ab0a7c942e0dbabdc1e3e5b75c5e463a429d347d4579a73dfeef5858e
        - icr.io/cpopen/fusion-access-controller-rhel9-operator@sha256:f5286af9394931f61b727c923324fadc20b6ea77539be79614d198fd2e7504a7
        - icr.io/cpopen/fusion-access/console-plugin-rhel9@sha256:fcfc796b0c51b55fe743c49e8afa2e5ff1ac25ae360879920902a65ddfd54881
        version: 1.1.0-1
      entries:
      - name: openshift-fusion-access-operator.v1.1.0-1
        version: 1.1.0-1
      - name: openshift-fusion-access-operator.v1.0.1
        version: 1.0.1
      - name: openshift-fusion-access-operator.v1.0.0
        version: 1.0.0
      - name: openshift-fusion-access-operator.v0.9.3
        version: 0.9.3
      name: stable-v1
    defaultChannel: stable-v1
    packageName: openshift-fusion-access-operator
    provider:
      name: Fusion Access for SAN Team
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: community-windows-machine-config-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: community-windows-machine-config-operator.v6.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-windows/community-windows-machine-config-operator:community-4.11-6c3601f
          createdAt: "2022-08-31T18:57:22Z"
          description: An operator that enables Windows container workloads on OCP
          olm.skipRange: '>=5.0.0 <6.0.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-windows-machine-config-operator
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/windows-machine-config-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          ## WARNING
          Community distribution of the Windows Machine Config Operator.
          This is a preview build, and is not meant for production workloads.
          Issues with this distribution of WMCO can be opened against the [WMCO repository](https://github.com/openshift/windows-machine-config-operator).
          Please read through the [troubleshooting doc](https://github.com/openshift/windows-machine-config-operator/blob/community-4.11/docs/TROUBLESHOOTING.md)
          before opening an issue.
          Please ensure that when installing this operator the starting CSV you subscribe to is supported on the
          version of OKD/OCP you are using. This CSV is meant for OKD/OCP community-4.11.
          ## Documentation
          ### Introduction
          The Windows Machine Config Operator configures Windows instances into nodes, enabling Windows container workloads
          to be ran within OKD/OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.openshift.com/container-platform/latest/machine_management/creating_machinesets/creating-machineset-aws.html#machine-api-overview_creating-machineset-aws),
          or by specifying existing instances through a [ConfigMap](https://github.com/openshift/windows-machine-config-operator/blob/community-4.11/README.md#configuring-byoh-bring-your-own-host-windows-instances).
          The operator will do all the necessary steps to configure the instance so that it can join the cluster as a worker node.
          ### Pre-requisites
          - [Cluster and OS pre-requisites](https://github.com/openshift/windows-machine-config-operator/blob/community-4.11/docs/wmco-prerequisites.md)
          ### Usage
          Please see the usage section of [README.md](https://github.com/openshift/windows-machine-config-operator/blob/community-4.11/README.md#usage).
          ### Limitations
          #### DeploymentConfigs
          Windows Nodes do not support workloads created via DeploymentConfigs. Please use a normal Deployment, or other method to
          deploy workloads.
        displayName: Community Windows Machine Config Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - windows
        maintainers:
        - email: team-winc@redhat.com
          name: Red Hat, Windows Container Support for OpenShift
        maturity: preview
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/community-windows-machine-config-operator@sha256:2b79f0e6b8bc069fac7d6cb5c86783fdc98ccae30d279ca0492f1eca96b6ea3f
        - quay.io/openshift-windows/community-windows-machine-config-operator:community-4.11-6c3601f
        version: 6.0.0
      entries:
      - name: community-windows-machine-config-operator.v6.0.0
        version: 6.0.0
      name: preview
    defaultChannel: preview
    packageName: community-windows-machine-config-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Infinispan
      provider-url: ""
    name: infinispan
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infinispan-operator.v2.2.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: quay.io/infinispan/operator:2.2.5.Final
          description: Create and manage Infinispan clusters.
          olm.skipRange: '>=2.1.x <2.2.1'
          operators.operatorframework.io/builder: operator-sdk-v1.3.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Infinispan is an in-memory data store and open-source project.

          ### Infinispan
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Infinispan cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Infinispan pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Infinispan Operator lets you adjust resource allocation to suit your requirements.
        displayName: Infinispan Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Blog
          url: https://blog.infinispan.org/
        - name: Documentation
          url: https://infinispan.org/documentation
        - name: Chat
          url: https://infinispan.zulipchat.com/#narrow/stream/185835-infinispan-cloud
        - name: Operator Source Code
          url: https://github.com/infinispan/infinispan-operator
        maintainers:
        - email: infinispan-dev@lists.jboss.org
          name: Infinispan Community
        maturity: alpha
        provider:
          name: Infinispan
        relatedImages:
        - quay.io/infinispan/operator:2.2.5.Final
        - quay.io/openshift-community-operators/infinispan@sha256:3ba9d20e83825f3c041a7dfd195b0800f74fa0f5cd1e6218fbd3547fedd85d64
        version: 2.2.5
      entries:
      - name: infinispan-operator.v2.2.5
        version: 2.2.5
      - name: infinispan-operator.v2.2.4
        version: 2.2.4
      - name: infinispan-operator.v2.2.3
        version: 2.2.3
      - name: infinispan-operator.v2.2.2
        version: 2.2.2
      - name: infinispan-operator.v2.2.1
        version: 2.2.1
      - name: infinispan-operator.v2.2.0
        version: 2.2.0
      name: 2.2.x
    - currentCSV: infinispan-operator.v2.3.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: quay.io/infinispan/operator:2.3.7.Final
          description: Create and manage Infinispan clusters.
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Infinispan is an in-memory data store and open-source project.

          ### Infinispan
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Infinispan cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Infinispan pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Infinispan Operator lets you adjust resource allocation to suit your requirements.
        displayName: Infinispan Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Blog
          url: https://blog.infinispan.org/
        - name: Documentation
          url: https://infinispan.org/documentation
        - name: Chat
          url: https://infinispan.zulipchat.com/#narrow/stream/185835-infinispan-cloud
        - name: Operator Source Code
          url: https://github.com/infinispan/infinispan-operator
        maintainers:
        - email: infinispan-dev@lists.jboss.org
          name: Infinispan Community
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Infinispan
        relatedImages:
        - quay.io/community-operator-pipeline-prod/infinispan@sha256:f165693aa550903d7a26b429ed4d093f60194a7a04148e65e61c52d67b527fad
        - quay.io/infinispan/operator:2.3.7.Final
        version: 2.3.8
      entries:
      - name: infinispan-operator.v2.3.8
        version: 2.3.8
      - name: infinispan-operator.v2.3.7
        version: 2.3.7
      - name: infinispan-operator.v2.3.6
        version: 2.3.6
      - name: infinispan-operator.v2.3.5
        version: 2.3.5
      - name: infinispan-operator.v2.3.4
        version: 2.3.4
      - name: infinispan-operator.v2.3.3
        version: 2.3.3
      - name: infinispan-operator.v2.3.2
        version: 2.3.2
      - name: infinispan-operator.v2.3.1
        version: 2.3.1
      - name: infinispan-operator.v2.3.0
        version: 2.3.0
      name: 2.3.x
    - currentCSV: infinispan-operator.v2.4.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create counter --concurrency-level=1 --initial-value=5 --storage=VOLATILE --type=weak batch-counter\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "template": "\u003cdistributed-cache /\u003e"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: quay.io/infinispan/operator:2.4.17.Final
          description: Create and manage Infinispan clusters.
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Infinispan is an in-memory data store and open-source project.

          ### Infinispan
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Infinispan cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Infinispan pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Infinispan Operator lets you adjust resource allocation to suit your requirements.
        displayName: Infinispan Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Blog
          url: https://blog.infinispan.org/
        - name: Documentation
          url: https://infinispan.org/documentation
        - name: Chat
          url: https://infinispan.zulipchat.com/#narrow/stream/185835-infinispan-cloud
        - name: Operator Source Code
          url: https://github.com/infinispan/infinispan-operator
        maintainers:
        - email: infinispan-dev@lists.jboss.org
          name: Infinispan Community
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Infinispan
        relatedImages:
        - quay.io/community-operator-pipeline-prod/infinispan@sha256:5e1a1fdb5a78a34155abe77754c774c65335ea8cbfdec2a222ee22a062c2db46
        - quay.io/infinispan/operator:2.4.17.Final
        version: 2.4.17
      entries:
      - name: infinispan-operator.v2.4.17
        version: 2.4.17
      - name: infinispan-operator.v2.4.16
        version: 2.4.16
      - name: infinispan-operator.v2.4.15
        version: 2.4.15
      - name: infinispan-operator.v2.4.14
        version: 2.4.14
      - name: infinispan-operator.v2.4.13
        version: 2.4.13
      - name: infinispan-operator.v2.4.12
        version: 2.4.12
      - name: infinispan-operator.v2.4.11
        version: 2.4.11
      - name: infinispan-operator.v2.4.10
        version: 2.4.10
      - name: infinispan-operator.v2.4.9
        version: 2.4.9
      - name: infinispan-operator.v2.4.8
        version: 2.4.8
      - name: infinispan-operator.v2.4.7
        version: 2.4.7
      - name: infinispan-operator.v2.4.6
        version: 2.4.6
      - name: infinispan-operator.v2.4.5
        version: 2.4.5
      - name: infinispan-operator.v2.4.4
        version: 2.4.4
      - name: infinispan-operator.v2.4.3
        version: 2.4.3
      - name: infinispan-operator.v2.4.2
        version: 2.4.2
      - name: infinispan-operator.v2.4.1
        version: 2.4.1
      - name: infinispan-operator.v2.4.0
        version: 2.4.0
      - name: infinispan-operator.v2.3.8
        version: 2.3.8
      - name: infinispan-operator.v2.3.7
        version: 2.3.7
      - name: infinispan-operator.v2.3.6
        version: 2.3.6
      - name: infinispan-operator.v2.3.5
        version: 2.3.5
      - name: infinispan-operator.v2.3.4
        version: 2.3.4
      - name: infinispan-operator.v2.3.3
        version: 2.3.3
      - name: infinispan-operator.v2.3.2
        version: 2.3.2
      - name: infinispan-operator.v2.3.1
        version: 2.3.1
      - name: infinispan-operator.v2.3.0
        version: 2.3.0
      name: 2.4.x
    - currentCSV: infinispan-operator.v2.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create counter --concurrency-level=1 --initial-value=5 --storage=VOLATILE --type=weak batch-counter\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "template": "\u003cdistributed-cache /\u003e"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: quay.io/infinispan/operator:2.5.0
          description: Create and manage Infinispan clusters.
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Infinispan is an in-memory data store and open-source project.

          ### Infinispan
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Infinispan cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Infinispan pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Infinispan Operator lets you adjust resource allocation to suit your requirements.
        displayName: Infinispan Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Blog
          url: https://blog.infinispan.org/
        - name: Documentation
          url: https://infinispan.org/documentation
        - name: Chat
          url: https://infinispan.zulipchat.com/#narrow/stream/185835-infinispan-cloud
        - name: Operator Source Code
          url: https://github.com/infinispan/infinispan-operator
        maintainers:
        - email: infinispan-dev@lists.jboss.org
          name: Infinispan Community
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Infinispan
        relatedImages:
        - quay.io/infinispan/operator:2.5.0
        - quay.io/community-operator-pipeline-prod/infinispan@sha256:251d904a78bf70811acfdce2d7e914d7b81068527e56867c2828c5f34a35ec50
        version: 2.5.0
      entries:
      - name: infinispan-operator.v2.5.0
        version: 2.5.0
      - name: infinispan-operator.v2.4.18
        version: 2.4.18
      - name: infinispan-operator.v2.4.16
        version: 2.4.16
      - name: infinispan-operator.v2.4.15
        version: 2.4.15
      - name: infinispan-operator.v2.4.14
        version: 2.4.14
      - name: infinispan-operator.v2.4.13
        version: 2.4.13
      - name: infinispan-operator.v2.4.12
        version: 2.4.12
      - name: infinispan-operator.v2.4.11
        version: 2.4.11
      - name: infinispan-operator.v2.4.10
        version: 2.4.10
      - name: infinispan-operator.v2.4.9
        version: 2.4.9
      - name: infinispan-operator.v2.4.8
        version: 2.4.8
      - name: infinispan-operator.v2.4.7
        version: 2.4.7
      - name: infinispan-operator.v2.4.6
        version: 2.4.6
      - name: infinispan-operator.v2.4.5
        version: 2.4.5
      - name: infinispan-operator.v2.4.4
        version: 2.4.4
      - name: infinispan-operator.v2.4.3
        version: 2.4.3
      - name: infinispan-operator.v2.4.2
        version: 2.4.2
      - name: infinispan-operator.v2.4.1
        version: 2.4.1
      - name: infinispan-operator.v2.4.0
        version: 2.4.0
      - name: infinispan-operator.v2.3.8
        version: 2.3.8
      - name: infinispan-operator.v2.3.7
        version: 2.3.7
      - name: infinispan-operator.v2.3.6
        version: 2.3.6
      - name: infinispan-operator.v2.3.5
        version: 2.3.5
      - name: infinispan-operator.v2.3.4
        version: 2.3.4
      - name: infinispan-operator.v2.3.3
        version: 2.3.3
      - name: infinispan-operator.v2.3.2
        version: 2.3.2
      - name: infinispan-operator.v2.3.1
        version: 2.3.1
      - name: infinispan-operator.v2.3.0
        version: 2.3.0
      name: stable
    defaultChannel: stable
    packageName: infinispan
    provider:
      name: Infinispan
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/kuadrant-operator
    name: rhcl-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhcl-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1",
                "kind": "AuthPolicy",
                "metadata": {
                  "name": "authpolicy-sample"
                },
                "spec": {
                  "rules": {
                    "authentication": {
                      "apikey": {
                        "apiKey": {
                          "selector": {}
                        },
                        "credentials": {
                          "authorizationHeader": {
                            "prefix": "APIKEY"
                          }
                        }
                      }
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1",
                "kind": "DNSPolicy",
                "metadata": {
                  "name": "dnspolicy-sample"
                },
                "spec": {
                  "healthCheck": {
                    "protocol": "HTTP"
                  },
                  "providerRefs": [
                    {
                      "name": "provider-ref"
                    }
                  ],
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1",
                "kind": "RateLimitPolicy",
                "metadata": {
                  "name": "ratelimitpolicy-sample"
                },
                "spec": {
                  "limits": {
                    "toys": {
                      "rates": [
                        {
                          "limit": 50,
                          "window": "1m"
                        }
                      ]
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1",
                "kind": "TLSPolicy",
                "metadata": {
                  "name": "tlspolicy-sample"
                },
                "spec": {
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "self-signed-ca"
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "Kuadrant",
                "metadata": {
                  "name": "kuadrant-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/rhcl-rhel9-operator@sha256:1afb2fe0fe38bb0ef02c4b8cb9edb83f7847da47f8ddad766223664dc05ce272
          createdAt: 27 Nov 2025, 19:24
          description: Red Hat Connectivity Link enables you to secure, protect, and
            connect your APIs and applications in multicluster, multicloud, and hybrid
            cloud environments
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kuadrant/kuadrant-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AuthPolicy enables authentication and authorization for service
              workloads in a Gateway API network
            displayName: AuthPolicy
            kind: AuthPolicy
            name: authpolicies.kuadrant.io
            version: v1
          - description: DNSPolicy configures how North-South based traffic should
              be balanced and reach the gateways
            displayName: DNSPolicy
            kind: DNSPolicy
            name: dnspolicies.kuadrant.io
            version: v1
          - description: Kuadrant configures installations of Kuadrant Service Protection
              components
            displayName: Kuadrant
            kind: Kuadrant
            name: kuadrants.kuadrant.io
            version: v1beta1
          - kind: OIDCPolicy
            name: oidcpolicies.extensions.kuadrant.io
            version: v1alpha1
          - kind: PlanPolicy
            name: planpolicies.extensions.kuadrant.io
            version: v1alpha1
          - description: RateLimitPolicy enables rate limiting for service workloads
              in a Gateway API network
            displayName: RateLimitPolicy
            kind: RateLimitPolicy
            name: ratelimitpolicies.kuadrant.io
            version: v1
          - kind: TelemetryPolicy
            name: telemetrypolicies.extensions.kuadrant.io
            version: v1alpha1
          - description: TLSPolicy provides tls for gateway listeners by managing
              the lifecycle of tls certificates
            displayName: TLSPolicy
            kind: TLSPolicy
            name: tlspolicies.kuadrant.io
            version: v1
          - kind: TokenRateLimitPolicy
            name: tokenratelimitpolicies.kuadrant.io
            version: v1alpha1
        description: A Kubernetes Operator to manage the lifecycle of the Kuadrant
          system
        displayName: Red Hat Connectivity Link
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - api-management
        - Kuadrant
        - kubernetes
        - openshift
        - cloud-service-protection
        - rate-limiting
        - authentication
        - authorization
        links:
        - name: Kuadrant Operator
          url: https://github.com/Kuadrant/kuadrant-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/kuadrant-operator
        relatedImages:
        - registry.access.redhat.com/rhcl-1/wasm-shim-rhel9@sha256:aa524e9278976aa3ef0f2d3aeb981e28d2ea6ed6fc5fede05a5dd33db0bb3de2
        - registry.redhat.io/rhcl-1/rhcl-operator-bundle@sha256:f9f233b605c7468e0b3923e8e53156ae3efaf43ab4c73f4fde9937518d1ad59b
        - registry.redhat.io/rhcl-1/rhcl-rhel9-operator@sha256:1afb2fe0fe38bb0ef02c4b8cb9edb83f7847da47f8ddad766223664dc05ce272
        version: 1.2.1
      entries:
      - name: rhcl-operator.v1.2.1
        version: 1.2.1
      - name: rhcl-operator.v1.2.0
        version: 1.2.0
      - name: rhcl-operator.v1.1.1
        version: 1.1.1
      - name: rhcl-operator.v1.1.0
        version: 1.1.0
      - name: rhcl-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: rhcl-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/kuadrant-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-s3-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-s3-controller.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "s3.services.k8s.aws/v1alpha1",
                "kind": "Bucket",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/s3-controller:1.2.1
          createdAt: "2025-12-30T00:58:23Z"
          description: AWS S3 controller is a service controller for managing S3 resources
            in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Bucket represents the state of an AWS s3 Bucket resource.
            displayName: Bucket
            kind: Bucket
            name: buckets.s3.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Simple Storage Service (S3) resources in AWS from within your Kubernetes cluster.

          **About Amazon S3**

          Amazon Simple Storage Service (Amazon S3) is an object storage service that offers industry-leading scalability, data availability, security, and performance. This means customers of all sizes and industries can use it to store and protect any amount of data for a range of use cases, such as data lakes, websites, mobile applications, backup and restore, archive, enterprise applications, IoT devices, and big data analytics. Amazon S3 provides easy-to-use management features so you can organize your data and configure finely-tuned access controls to meet your specific business, organizational, and compliance requirements. Amazon S3 is designed for 99.999999999% (11 9s) of durability, and stores data for millions of applications for companies all around the world.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon S3
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - s3
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon S3 Developer Resources
          url: https://aws.amazon.com/s3/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: s3 maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/s3-controller:1.2.1
        - quay.io/community-operator-pipeline-prod/ack-s3-controller@sha256:557e1570664b2a98577c7a6fb095a64c020b3cc4e58c8729ebef6189445edc9a
        version: 1.2.1
      entries:
      - name: ack-s3-controller.v1.2.1
        version: 1.2.1
      - name: ack-s3-controller.v1.2.0
        version: 1.2.0
      - name: ack-s3-controller.v1.1.3
        version: 1.1.3
      - name: ack-s3-controller.v1.1.2
        version: 1.1.2
      - name: ack-s3-controller.v1.1.1
        version: 1.1.1
      - name: ack-s3-controller.v1.1.0
        version: 1.1.0
      - name: ack-s3-controller.v1.0.35
        version: 1.0.35
      - name: ack-s3-controller.v1.0.33
        version: 1.0.33
      - name: ack-s3-controller.v1.0.32
        version: 1.0.32
      - name: ack-s3-controller.v1.0.31
        version: 1.0.31
      - name: ack-s3-controller.v1.0.30
        version: 1.0.30
      - name: ack-s3-controller.v1.0.29
        version: 1.0.29
      - name: ack-s3-controller.v1.0.28
        version: 1.0.28
      - name: ack-s3-controller.v1.0.27
        version: 1.0.27
      - name: ack-s3-controller.v1.0.26
        version: 1.0.26
      - name: ack-s3-controller.v1.0.25
        version: 1.0.25
      - name: ack-s3-controller.v1.0.24
        version: 1.0.24
      - name: ack-s3-controller.v1.0.23
        version: 1.0.23
      - name: ack-s3-controller.v1.0.21
        version: 1.0.21
      - name: ack-s3-controller.v1.0.20
        version: 1.0.20
      - name: ack-s3-controller.v1.0.19
        version: 1.0.19
      - name: ack-s3-controller.v1.0.18
        version: 1.0.18
      - name: ack-s3-controller.v1.0.17
        version: 1.0.17
      - name: ack-s3-controller.v1.0.16
        version: 1.0.16
      - name: ack-s3-controller.v1.0.15
        version: 1.0.15
      - name: ack-s3-controller.v1.0.14
        version: 1.0.14
      - name: ack-s3-controller.v1.0.13
        version: 1.0.13
      - name: ack-s3-controller.v1.0.12
        version: 1.0.12
      - name: ack-s3-controller.v1.0.11
        version: 1.0.11
      - name: ack-s3-controller.v1.0.9
        version: 1.0.9
      - name: ack-s3-controller.v1.0.7
        version: 1.0.7
      - name: ack-s3-controller.v1.0.6
        version: 1.0.6
      - name: ack-s3-controller.v1.0.5
        version: 1.0.5
      - name: ack-s3-controller.v1.0.4
        version: 1.0.4
      - name: ack-s3-controller.v1.0.3
        version: 1.0.3
      - name: ack-s3-controller.v1.0.2
        version: 1.0.2
      - name: ack-s3-controller.v1.0.1
        version: 1.0.1
      - name: ack-s3-controller.v1.0.0
        version: 1.0.0
      - name: ack-s3-controller.v0.1.8
        version: 0.1.8
      - name: ack-s3-controller.v0.1.7
        version: 0.1.7
      - name: ack-s3-controller.v0.1.6
        version: 0.1.6
      - name: ack-s3-controller.v0.1.5
        version: 0.1.5
      - name: ack-s3-controller.v0.1.4
        version: 0.1.4
      - name: ack-s3-controller.v0.1.3
        version: 0.1.3
      - name: ack-s3-controller.v0.1.2
        version: 0.1.2
      - name: ack-s3-controller.v0.1.1
        version: 0.1.1
      - name: ack-s3-controller.v0.1.0
        version: 0.1.0
      - name: ack-s3-controller.v0.0.20
        version: 0.0.20
      - name: ack-s3-controller.v0.0.19
        version: 0.0.19
      - name: ack-s3-controller.v0.0.18
        version: 0.0.18
      - name: ack-s3-controller.v0.0.17
        version: 0.0.17
      - name: ack-s3-controller.v0.0.16
        version: 0.0.16
      - name: ack-s3-controller.v0.0.15
        version: 0.0.15
      - name: ack-s3-controller.v0.0.14
        version: 0.0.14
      - name: ack-s3-controller.v0.0.13
        version: 0.0.13
      - name: ack-s3-controller.v0.0.12
        version: 0.0.12
      - name: ack-s3-controller.v0.0.11
        version: 0.0.11
      - name: ack-s3-controller.v0.0.10
        version: 0.0.10
      - name: ack-s3-controller.v0.0.9
        version: 0.0.9
      - name: ack-s3-controller.v0.0.8
        version: 0.0.8
      - name: ack-s3-controller.v0.0.7
        version: 0.0.7
      name: alpha
    defaultChannel: alpha
    packageName: ack-s3-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-rds-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-rds-controller.v1.7.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rds.services.k8s.aws/v1alpha1",
                "kind": "DBParameterGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "rds.services.k8s.aws/v1alpha1",
                "kind": "DBSubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/rds-controller:1.7.2
          createdAt: "2025-12-29T22:18:45Z"
          description: AWS RDS controller is a service controller for managing RDS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DBClusterEndpoint represents the state of an AWS rds DBClusterEndpoint
              resource.
            displayName: DBClusterEndpoint
            kind: DBClusterEndpoint
            name: dbclusterendpoints.rds.services.k8s.aws
            version: v1alpha1
          - description: DBClusterParameterGroup represents the state of an AWS rds
              DBClusterParameterGroup resource.
            displayName: DBClusterParameterGroup
            kind: DBClusterParameterGroup
            name: dbclusterparametergroups.rds.services.k8s.aws
            version: v1alpha1
          - description: DBCluster represents the state of an AWS rds DBCluster resource.
            displayName: DBCluster
            kind: DBCluster
            name: dbclusters.rds.services.k8s.aws
            version: v1alpha1
          - description: DBClusterSnapshot represents the state of an AWS rds DBClusterSnapshot
              resource.
            displayName: DBClusterSnapshot
            kind: DBClusterSnapshot
            name: dbclustersnapshots.rds.services.k8s.aws
            version: v1alpha1
          - description: DBInstance represents the state of an AWS rds DBInstance
              resource.
            displayName: DBInstance
            kind: DBInstance
            name: dbinstances.rds.services.k8s.aws
            version: v1alpha1
          - description: DBParameterGroup represents the state of an AWS rds DBParameterGroup
              resource.
            displayName: DBParameterGroup
            kind: DBParameterGroup
            name: dbparametergroups.rds.services.k8s.aws
            version: v1alpha1
          - description: DBProxy represents the state of an AWS rds DBProxy resource.
            displayName: DBProxy
            kind: DBProxy
            name: dbproxies.rds.services.k8s.aws
            version: v1alpha1
          - description: DBSnapshot represents the state of an AWS rds DBSnapshot
              resource.
            displayName: DBSnapshot
            kind: DBSnapshot
            name: dbsnapshots.rds.services.k8s.aws
            version: v1alpha1
          - description: DBSubnetGroup represents the state of an AWS rds DBSubnetGroup
              resource.
            displayName: DBSubnetGroup
            kind: DBSubnetGroup
            name: dbsubnetgroups.rds.services.k8s.aws
            version: v1alpha1
          - description: GlobalCluster represents the state of an AWS rds GlobalCluster
              resource.
            displayName: GlobalCluster
            kind: GlobalCluster
            name: globalclusters.rds.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Relational Database Service ("RDS") resources in AWS from within your Kubernetes cluster.

          **About Amazon RDS**

          Amazon Relational Database Service (Amazon RDS) makes it easy to set up, operate, and scale a relational database in the cloud. It provides cost-efficient and resizable capacity while automating time-consuming administration tasks such as hardware provisioning, database setup, patching and backups. It frees you to focus on your applications so you can give them the fast performance, high availability, security and compatibility they need.

          Amazon RDS is available on several database instance types - optimized for memory, performance or I/O -and provides you with six familiar database engines to choose from, including Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle Database, and SQL Server. You can use the AWS Database Migration Service to easily migrate or replicate your existing databases to Amazon RDS.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon RDS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rds
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon RDS Developer Resources
          url: https://aws.amazon.com/rds/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: rds maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/rds-controller:1.7.2
        - quay.io/community-operator-pipeline-prod/ack-rds-controller@sha256:082446fd6d91abc8b8467a1b230b55c7d628e38551c2033238b5ca388c9b7352
        version: 1.7.2
      entries:
      - name: ack-rds-controller.v1.7.2
        version: 1.7.2
      - name: ack-rds-controller.v1.7.1
        version: 1.7.1
      - name: ack-rds-controller.v1.7.0
        version: 1.7.0
      - name: ack-rds-controller.v1.6.3
        version: 1.6.3
      - name: ack-rds-controller.v1.6.2
        version: 1.6.2
      - name: ack-rds-controller.v1.6.1
        version: 1.6.1
      - name: ack-rds-controller.v1.6.0
        version: 1.6.0
      - name: ack-rds-controller.v1.5.0
        version: 1.5.0
      - name: ack-rds-controller.v1.4.26
        version: 1.4.26
      - name: ack-rds-controller.v1.4.25
        version: 1.4.25
      - name: ack-rds-controller.v1.4.24
        version: 1.4.24
      - name: ack-rds-controller.v1.4.22
        version: 1.4.22
      - name: ack-rds-controller.v1.4.21
        version: 1.4.21
      - name: ack-rds-controller.v1.4.20
        version: 1.4.20
      - name: ack-rds-controller.v1.4.19
        version: 1.4.19
      - name: ack-rds-controller.v1.4.18
        version: 1.4.18
      - name: ack-rds-controller.v1.4.17
        version: 1.4.17
      - name: ack-rds-controller.v1.4.16
        version: 1.4.16
      - name: ack-rds-controller.v1.4.15
        version: 1.4.15
      - name: ack-rds-controller.v1.4.14
        version: 1.4.14
      - name: ack-rds-controller.v1.4.13
        version: 1.4.13
      - name: ack-rds-controller.v1.4.12
        version: 1.4.12
      - name: ack-rds-controller.v1.4.11
        version: 1.4.11
      - name: ack-rds-controller.v1.4.10
        version: 1.4.10
      - name: ack-rds-controller.v1.4.8
        version: 1.4.8
      - name: ack-rds-controller.v1.4.7
        version: 1.4.7
      - name: ack-rds-controller.v1.4.6
        version: 1.4.6
      - name: ack-rds-controller.v1.4.4
        version: 1.4.4
      - name: ack-rds-controller.v1.4.3
        version: 1.4.3
      - name: ack-rds-controller.v1.4.2
        version: 1.4.2
      - name: ack-rds-controller.v1.4.1
        version: 1.4.1
      - name: ack-rds-controller.v1.4.0
        version: 1.4.0
      - name: ack-rds-controller.v1.3.0
        version: 1.3.0
      - name: ack-rds-controller.v1.2.5
        version: 1.2.5
      - name: ack-rds-controller.v1.2.4
        version: 1.2.4
      - name: ack-rds-controller.v1.2.3
        version: 1.2.3
      - name: ack-rds-controller.v1.2.2
        version: 1.2.2
      - name: ack-rds-controller.v1.2.1
        version: 1.2.1
      - name: ack-rds-controller.v1.2.0
        version: 1.2.0
      - name: ack-rds-controller.v1.1.11
        version: 1.1.11
      - name: ack-rds-controller.v1.1.9
        version: 1.1.9
      - name: ack-rds-controller.v1.1.8
        version: 1.1.8
      - name: ack-rds-controller.v1.1.7
        version: 1.1.7
      - name: ack-rds-controller.v1.1.6
        version: 1.1.6
      - name: ack-rds-controller.v1.1.5
        version: 1.1.5
      - name: ack-rds-controller.v1.1.4
        version: 1.1.4
      - name: ack-rds-controller.v1.1.3
        version: 1.1.3
      - name: ack-rds-controller.v1.1.2
        version: 1.1.2
      - name: ack-rds-controller.v1.1.1
        version: 1.1.1
      - name: ack-rds-controller.v1.1.0
        version: 1.1.0
      - name: ack-rds-controller.v1.0.0
        version: 1.0.0
      - name: ack-rds-controller.v0.1.3
        version: 0.1.3
      - name: ack-rds-controller.v0.1.1
        version: 0.1.1
      - name: ack-rds-controller.v0.1.0
        version: 0.1.0
      - name: ack-rds-controller.v0.0.30
        version: 0.0.30
      - name: ack-rds-controller.v0.0.29
        version: 0.0.29
      - name: ack-rds-controller.v0.0.28
        version: 0.0.28
      - name: ack-rds-controller.v0.0.27
        version: 0.0.27
      - name: ack-rds-controller.v0.0.26
        version: 0.0.26
      - name: ack-rds-controller.v0.0.25
        version: 0.0.25
      - name: ack-rds-controller.v0.0.24
        version: 0.0.24
      - name: ack-rds-controller.v0.0.23
        version: 0.0.23
      - name: ack-rds-controller.v0.0.22
        version: 0.0.22
      - name: ack-rds-controller.v0.0.21
        version: 0.0.21
      - name: ack-rds-controller.v0.0.20
        version: 0.0.20
      - name: ack-rds-controller.v0.0.19
        version: 0.0.19
      - name: ack-rds-controller.v0.0.18
        version: 0.0.18
      - name: ack-rds-controller.v0.0.17
        version: 0.0.17
      - name: ack-rds-controller.v0.0.16
        version: 0.0.16
      - name: ack-rds-controller.v0.0.15
        version: 0.0.15
      - name: ack-rds-controller.v0.0.14
        version: 0.0.14
      - name: ack-rds-controller.v0.0.13
        version: 0.0.13
      - name: ack-rds-controller.v0.0.12
        version: 0.0.12
      name: alpha
    defaultChannel: alpha
    packageName: ack-rds-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: apicast-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicast-community-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/apicast-operator:v0.8.0
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway built on top of NGINX. It is part
            of the Red Hat 3scale API Management Platform
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |
          The APIcast Operator creates and maintains the Red Hat 3scale API Gateway in several deployment configurations.

          APIcast is an API gateway built on top of [NGINX](https://www.nginx.com/). It is part of the [Red Hat 3scale API Management Platform](https://www.redhat.com/en/technologies/jboss-middleware/3scale).

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator/blob/v0.8.0/doc/operator-user-guide.md#upgrading-APIcast) for more information.

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/apicast-operator/tree/v0.8.0).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: APIcast
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://github.com/3scale/apicast-operator/tree/v0.8.0
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/apicast-community-operator@sha256:b0e697be3b4af0554de09306016b5852a4dadacd1962ab9417f6e682491519cd
        - quay.io/3scale/apicast-operator:v0.8.0
        version: 0.8.0
      entries:
      - name: apicast-community-operator.v0.8.0
        version: 0.8.0
      - name: apicast-community-operator.v0.7.1
        version: 0.7.1
      - name: apicast-community-operator.v0.6.0
        version: 0.6.0
      - name: apicast-community-operator.v0.5.1
        version: 0.5.1
      name: alpha
    - currentCSV: apicast-community-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/apicast-operator:v0.8.0
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway built on top of NGINX. It is part
            of the Red Hat 3scale API Management Platform
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |
          The APIcast Operator creates and maintains the Red Hat 3scale API Gateway in several deployment configurations.

          APIcast is an API gateway built on top of [NGINX](https://www.nginx.com/). It is part of the [Red Hat 3scale API Management Platform](https://www.redhat.com/en/technologies/jboss-middleware/3scale).

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator/blob/v0.8.0/doc/operator-user-guide.md#upgrading-APIcast) for more information.

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/apicast-operator/tree/v0.8.0).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: APIcast
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://github.com/3scale/apicast-operator/tree/v0.8.0
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/apicast-operator:v0.8.0
        - quay.io/community-operator-pipeline-prod/apicast-community-operator@sha256:b0e697be3b4af0554de09306016b5852a4dadacd1962ab9417f6e682491519cd
        version: 0.8.0
      entries:
      - name: apicast-community-operator.v0.8.0
        version: 0.8.0
      - name: apicast-community-operator.v0.7.1
        version: 0.7.1
      - name: apicast-community-operator.v0.6.0
        version: 0.6.0
      - name: apicast-community-operator.v0.5.1
        version: 0.5.1
      name: stable
    defaultChannel: stable
    packageName: apicast-community-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Odoo Community Association
      provider-url: ""
    name: odoo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odoo-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"odoo-community.org/v1alpha1","kind":"Odoo","metadata":{"name":"example"},"spec":{"postgresqlVolumeSize":"4Gi","odooVolumeSize":"4Gi"}}]'
          capabilities: Full Lifecycle
          categories: Application Runtime
          certified: "false"
          containerImage: ursa/odoo-operator:0.0.2
          createdAt: "2021-04-26T12:00:00Z"
          description: Operator to manage Odoo instances within an OpenShift cluster
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          repository: https://github.com/ursais/odoo-operator
          support: Open Source Integrators
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Odoo
            displayName: Odoo
            kind: Odoo
            name: odoos.odoo-community.org
            version: v1alpha1
        description: |
          ## About Odoo

          [Odoo](https://odoo-community.org), is a suite of business management software tools including CRM, e-commerce, billing, accounting, manufacturing, warehouse, project management, and inventory management to name a few.
          ## About the Odoo Operator

          This is an Ansible-based operator created with operator-sdk v1.5.0.

          The upgrade is handled by the Odoo container itself using [Marabunta](https://pypi.org/project/marabunta/) and [Anthem](https://pypi.org/project/anthem/).

          ## Roadmap
          * Add horizontal pod autoscaler
          * Add cronjob for backup
          ## Prerequisites for enabling this Operator

          Please refer to the README file on the [GitHub project](https://github.com/ursais/odoo-operator).
        displayName: Odoo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ERP
        - Business Software
        links:
        - name: Odoo Community Association
          url: https://odoo-community.org
        - name: GitHub Repository
          url: https://github.com/ursais/odoo-operator
        - name: Open Source Integrators
          url: https://opensourceintegrators.com
        maintainers:
        - email: mchambreuil@opensourceintegrators.com
          name: Maxime Chambreuil
        maturity: alpha
        provider:
          name: Odoo Community Association
        relatedImages:
        - quay.io/openshift-community-operators/odoo-operator@sha256:616e1067ebf8deb66636d57cae2ac1f9981b83419d8e7f023bc7df1c1b745536
        - ursa/odoo-operator:0.0.2
        version: 0.0.2
      entries:
      - name: odoo-operator.v0.0.2
        version: 0.0.2
      - name: odoo-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: odoo-operator
    provider:
      name: Odoo Community Association
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: New England Research Cloud
      provider-url: https://nerc.mghpcc.org/
    name: keycloak-permissions-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keycloak-permissions-operator.v1.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.nerc.mghpcc.org/v1",
                "kind": "KeycloakAuthorization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "keycloak-permissions-operator",
                    "app.kubernetes.io/instance": "keycloakauthorization-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "keycloakauthorization",
                    "app.kubernetes.io/part-of": "keycloak-permissions-operator"
                  },
                  "name": "example"
                },
                "spec": {
                  "cleanupUndefinedAuthorizations": false,
                  "description": "",
                  "keycloak": {
                    "adminSecret": {
                      "name": "keycloak-initial-admin",
                      "passwordKey": "password",
                      "usernameKey": "username"
                    }
                  },
                  "managementState": "Managed",
                  "realm": null,
                  "validateCerts": true
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          com.redhat.openshift.versions: v4.11
          containerImage: quay.io/nerc-images/keycloak-permissions-operator:1.4.1
          createdAt: "2024-05-07T21:09:02Z"
          description: Managing Keycloak resources, scopes, policies, and permissions
            for fine-grained resource permissions
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/nerc-images/keycloak-permissions-operator
          support: New England Research Cloud
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Manages Keycloak resources, scopes, policies, and permissions
              for fine-grained resource permissions.
            displayName: Keycloak Authorization
            kind: KeycloakAuthorization
            name: keycloakauthorizations.keycloak.nerc.mghpcc.org
            version: v1
        description: "An OpenShift Operator for managing Keycloak resources, scopes,
          policies,\nand permissions for fine-grained resource permissions.\nAccording
          to the [Keycloak Authorization Services documentation](https://www.keycloak.org/docs/23.0.7/authorization_services/):\n\n-
          A resource can be a web page, a RESTFul resource, a file in your file system,
          or other entity you wish to authorize access to.\n- Scopes usually represent
          the actions that can be performed on a resource, but they are not limited
          to that. You can also use scopes to represent one or more attributes within
          a resource.\n- Policies define the conditions that must be satisfied to
          access or perform operations on something (resource or scope), but they
          are not tied to what they are protecting. They are generic and can be reused
          to build permissions or even more complex policies.\n- Permissions are coupled
          with the resource they are protecting. Here you specify what you want to
          protect (resource or scope) and the policies that must be satisfied to grant
          or deny permission.\n\n## Getting started with the Keycloak Permissions
          Operator\n\nStart by defining the name of your KeycloakAuthorization and
          the same namespace where Keycloak is deployed.\n\n```yaml\napiVersion: keycloak.nerc.mghpcc.org/v1\nkind:
          KeycloakAuthorization\nmetadata:\n  name: example\n  namespace: keycloak\n```\n\n##
          KeycloakAuthorization spec\n\nNext, define the spec. \n\n- `validateCerts:
          false` If your Keycloak does not have valid certificates, if you are deploying
          to OpenShift Local for example. You don't need this line if Keycloak has
          valid certificates.\n- `cleanupUndefinedAuthorizations: true` if you would
          like to remove any undefined authorizations that may have been added manually.
          This is useful for keeping in sync with GitOps. If you do not want the operator
          removing any resources, policies, or permissions, then remove this line.\n\n```yaml\nspec:\n
          \ validateCerts: false\n  cleanupUndefinedAuthorizations: true\n```\n\n##
          Keycloak admin credentials\n\nSpecify the details to connect to keycloak,
          including the `baseUrl`, and the Secret name containing the Keycloak admin
          usernameKey and passwordKey.\n\n```yaml\n  keycloak:\n    baseUrl: https://keycloak-service:8443\n
          \   adminSecret:\n      name: keycloak-initial-admin\n      usernameKey:
          username\n      passwordKey: password\n```\n\n## Realm\n\nSpecify the realm
          id you wish to add authorization configuration to. If you want to add authorization
          configuration to multiple realms, then create a KeycloakAuthorization resource
          for each realm.\n\n```yaml\n  realm:\n    id: NERC\n```\n\n## Clients\n\nFor
          each client in the realm you wish to configure, add authorizationSettings.\n\n```yaml\n
          \   clients:\n      - id: ai4cloudops\n        authorizationSettings:\n```\n\n##
          Authorization Scopes\n\nList the scopes you wish to define for the client.\n\n```yaml\n
          \         scopes:\n            - id: prod\n              name: prod\n              displayName:
          Production\n            - id: test\n              name: test\n              displayName:
          Test\n```\n\n## Authorization Resources\n\nList the resources and corresponding
          scopes you wish to define for the client.\n\n```yaml\n          resources:\n
          \           - name: cluster\n              displayName: cluster\n              scopes:\n
          \               - id: prod\n                  name: prod\n                  displayName:
          Production\n                - id: test\n                  name: test\n                  displayName:
          Test\n```\n\n## Authorization Policies\n\nDefine the policies you wish to
          use in your permissions. You can choose from all the different types of
          permissions, including: aggregated, client, client-scope, group, regex,
          role, time, and user.\n\n```yaml\n          policies:\n            - id:
          client-example\n              name: client-example\n              logic:
          POSITIVE\n              decisionStrategy: UNANIMOUS\n              type:\n
          \               client:\n                  clients:\n                    -
          example\n            - id: group-example\n              name: group-example\n
          \             logic: POSITIVE\n              decisionStrategy: UNANIMOUS\n
          \             type:\n                group:\n                  groups:\n
          \                   - id: example\n```\n\n## Authorization Permissions\n\nDefine
          the permissions, connecting the resources, scopes, and policies together.\n\n```yaml\n
          \         permissions:\n            - name: group-example-cluster-test\n
          \             client: test\n              policy: group-example\n              resource:
          cluster\n            - name: client-example-cluster-test\n              client:
          example\n              policy: client-test\n              resource: cluster\n
          \             scope: test\n```\n\n## Other details\n\nResources, scopes,
          policies, and permissions will all be applied to Keycloak if you have configured
          the admin credentials to Keycloak successfully.\nWhen the KeycloakAuthorization
          is deleted, then the configured resources, policies, and permissions will
          be deleted as well. "
        displayName: Keycloak Permissions Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - fine-grained resource permissions
        - keycloak
        - resources
        - scopes
        - policies
        - permissions
        links:
        - name: Keycloak Permissions Operator
          url: https://keycloak-permissions-operator.domain
        maintainers:
        - email: computate@computate.org
          name: Christopher Tate
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: New England Research Cloud
          url: https://nerc.mghpcc.org/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/keycloak-permissions-operator@sha256:4de19e52e84cdba0963bdd852a63912f097280800d65add8d474c0953da478a0
        - quay.io/nerc-images/keycloak-permissions-operator:1.4.1
        version: 1.4.1
      entries:
      - name: keycloak-permissions-operator.v1.4.1
        version: 1.4.1
      - name: keycloak-permissions-operator.v1.3.0
        version: 1.3.0
      - name: keycloak-permissions-operator.v1.2.0
        version: 1.2.0
      name: alpha
    defaultChannel: alpha
    packageName: keycloak-permissions-operator
    provider:
      name: New England Research Cloud
      url: https://nerc.mghpcc.org/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/
    name: bpfman-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bpfman-operator.v0.5.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "bpfapplication"
                  },
                  "name": "bpfapplication-sample",
                  "namespace": "acme"
                },
                "spec": {
                  "byteCode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/app-test:latest"
                    }
                  },
                  "globalData": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeSelector": {},
                  "programs": [
                    {
                      "name": "tc_pass_test",
                      "tc": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "priority": 55
                          }
                        ]
                      },
                      "type": "TC"
                    },
                    {
                      "name": "tcx_next_test",
                      "tcx": {
                        "links": [
                          {
                            "direction": "Egress",
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      },
                      "type": "TCX"
                    },
                    {
                      "name": "uprobe_test",
                      "type": "UProbe",
                      "uprobe": {
                        "links": [
                          {
                            "containers": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "function": "malloc",
                            "target": "libc"
                          }
                        ]
                      }
                    },
                    {
                      "name": "uretprobe_test",
                      "type": "URetProbe",
                      "uretprobe": {
                        "links": [
                          {
                            "containers": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "function": "malloc",
                            "target": "libc"
                          }
                        ]
                      }
                    },
                    {
                      "name": "xdp_pass_test",
                      "type": "XDP",
                      "xdp": {
                        "links": [
                          {
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfApplicationState",
                "metadata": {
                  "creationTimestamp": "2025-04-30T20:59:17Z",
                  "finalizers": [
                    "bpfman.io.nsbpfapplicationcontroller/finalizer"
                  ],
                  "generation": 1,
                  "labels": {
                    "bpfman.io/ownedByProgram": "bpfapplication-sample",
                    "kubernetes.io/hostname": "bpfman-deployment-control-plane"
                  },
                  "name": "bpfapplication-sample-ed7beed4",
                  "namespace": "acme",
                  "ownerReferences": [
                    {
                      "apiVersion": "bpfman.io/v1alpha1",
                      "blockOwnerDeletion": true,
                      "controller": true,
                      "kind": "BpfApplication",
                      "name": "bpfapplication-sample",
                      "uid": "a3897014-2014-4585-90a1-ccdb70adeef9"
                    }
                  ],
                  "resourceVersion": "1348",
                  "uid": "5728d3b2-a576-4144-be74-e5c83619344e"
                },
                "status": {
                  "appLoadStatus": "LoadSuccess",
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-04-30T21:01:50Z",
                      "message": "The BPF application has been successfully loaded and attached",
                      "reason": "Success",
                      "status": "True",
                      "type": "Success"
                    }
                  ],
                  "node": "bpfman-deployment-control-plane",
                  "programs": [
                    {
                      "name": "tc_pass_test",
                      "programId": 1398,
                      "programLinkStatus": "Success",
                      "tc": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 1909324080,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3041/ns/net",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "38e00746-b7be-4bcf-bf14-622ad349b4fa"
                          },
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 1342701196,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3032/ns/net",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "ba806cdf-5980-4e7f-8d8f-d819e6a57220"
                          },
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 2698014225,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2792/ns/net",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "e74fa413-d5df-4aa8-8d17-b580b6cb42a5"
                          },
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 184300305,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2833/ns/net",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "cef8985d-f184-4b18-9ee2-fe21018fae77"
                          }
                        ]
                      },
                      "type": "TC"
                    },
                    {
                      "name": "tcx_next_test",
                      "programId": 1399,
                      "programLinkStatus": "Success",
                      "tcx": {
                        "links": [
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 1256673356,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3041/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "3feed40b-fe4b-4a69-8e91-49624df45673"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 18009714,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3032/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "37b02539-0884-418d-bee4-31456384495e"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 3446068106,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2792/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "24a56373-8967-46f4-bbd4-423a7872f18b"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 733646956,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2833/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "4c855178-0a35-4ac6-abf7-83e61541aca4"
                          }
                        ]
                      },
                      "type": "TCX"
                    },
                    {
                      "name": "uprobe_test",
                      "programId": 1400,
                      "programLinkStatus": "Success",
                      "type": "UProbe",
                      "uprobe": {
                        "links": [
                          {
                            "containerPid": 3041,
                            "function": "malloc",
                            "linkId": 3629930733,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "ed72f8a7-cdc9-4245-8c40-c645fa5969d7"
                          },
                          {
                            "containerPid": 3032,
                            "function": "malloc",
                            "linkId": 1860984127,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "5c3b196d-bbe9-4b2c-8c5c-9d78c5ed6512"
                          },
                          {
                            "containerPid": 2792,
                            "function": "malloc",
                            "linkId": 3256920823,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "927071d2-c574-4c1f-87f2-baa5e7cfcc8f"
                          },
                          {
                            "containerPid": 2833,
                            "function": "malloc",
                            "linkId": 3700254381,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "fd351a1a-fb83-4b6c-af2f-c84906c6b54b"
                          }
                        ]
                      }
                    },
                    {
                      "name": "uretprobe_test",
                      "programId": 1401,
                      "programLinkStatus": "Success",
                      "type": "URetProbe",
                      "uretprobe": {
                        "links": [
                          {
                            "containerPid": 3041,
                            "function": "malloc",
                            "linkId": 4161687115,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "2c8ad027-eca0-4da9-baa6-f7b6f0fc25fd"
                          },
                          {
                            "containerPid": 3032,
                            "function": "malloc",
                            "linkId": 3445215503,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "623f2642-9f85-45ca-bab4-8f98d8a31079"
                          },
                          {
                            "containerPid": 2792,
                            "function": "malloc",
                            "linkId": 1387817990,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "fe81f29b-493d-41a9-b1c7-35733c9ee861"
                          },
                          {
                            "containerPid": 2833,
                            "function": "malloc",
                            "linkId": 2271422622,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "d6af1106-2c72-4f7d-9ee9-5c32e59e03b7"
                          }
                        ]
                      }
                    },
                    {
                      "name": "xdp_pass_test",
                      "programId": 1402,
                      "programLinkStatus": "Success",
                      "type": "XDP",
                      "xdp": {
                        "links": [
                          {
                            "interfaceName": "eth0",
                            "linkId": 1752219747,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3041/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "17760ccc-5ca7-4d21-9590-5f6e5c0fd4ab"
                          },
                          {
                            "interfaceName": "eth0",
                            "linkId": 3877814802,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3032/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "194d2096-a15f-417f-9be6-2032217f3e86"
                          },
                          {
                            "interfaceName": "eth0",
                            "linkId": 2514284800,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2792/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "de0f43b3-6a0e-4c22-8127-9fb519a0238b"
                          },
                          {
                            "interfaceName": "eth0",
                            "linkId": 1682543086,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2833/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "84289766-bff1-4af5-a0bd-5d150747a29a"
                          }
                        ]
                      }
                    }
                  ],
                  "updateCount": 2
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "ClusterBpfApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "clusterbpfapplication"
                  },
                  "name": "clusterbpfapplication-sample"
                },
                "spec": {
                  "byteCode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/app-test:latest"
                    }
                  },
                  "globalData": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeSelector": {},
                  "programs": [
                    {
                      "kprobe": {
                        "links": [
                          {
                            "function": "try_to_wake_up",
                            "offset": 0
                          }
                        ]
                      },
                      "name": "kprobe_test",
                      "type": "KProbe"
                    },
                    {
                      "kretprobe": {
                        "links": [
                          {
                            "function": "try_to_wake_up"
                          }
                        ]
                      },
                      "name": "kretprobe_test",
                      "type": "KRetProbe"
                    },
                    {
                      "name": "tracepoint_test",
                      "tracepoint": {
                        "links": [
                          {
                            "name": "syscalls/sys_enter_openat"
                          }
                        ]
                      },
                      "type": "TracePoint"
                    },
                    {
                      "name": "tc_pass_test",
                      "tc": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceSelector": {
                              "primaryNodeInterface": true
                            },
                            "priority": 55
                          },
                          {
                            "direction": "Egress",
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      },
                      "type": "TC"
                    },
                    {
                      "name": "tcx_next_test",
                      "tcx": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceSelector": {
                              "primaryNodeInterface": true
                            },
                            "priority": 500
                          },
                          {
                            "direction": "Egress",
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      },
                      "type": "TCX"
                    },
                    {
                      "name": "uprobe_test",
                      "type": "UProbe",
                      "uprobe": {
                        "links": [
                          {
                            "containers": {
                              "containerNames": [
                                "bpfman",
                                "bpfman-agent"
                              ],
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "function": "malloc",
                            "target": "libc"
                          }
                        ]
                      }
                    },
                    {
                      "name": "uretprobe_test",
                      "type": "URetProbe",
                      "uretprobe": {
                        "links": [
                          {
                            "containers": {
                              "containerNames": [
                                "bpfman",
                                "bpfman-agent"
                              ],
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "function": "malloc",
                            "target": "libc"
                          }
                        ]
                      }
                    },
                    {
                      "name": "xdp_pass_test",
                      "type": "XDP",
                      "xdp": {
                        "links": [
                          {
                            "interfaceSelector": {
                              "primaryNodeInterface": true
                            },
                            "priority": 55
                          },
                          {
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      }
                    },
                    {
                      "fentry": {
                        "function": "do_unlinkat",
                        "links": [
                          {
                            "mode": "Attach"
                          }
                        ]
                      },
                      "name": "fentry_test",
                      "type": "FEntry"
                    },
                    {
                      "fexit": {
                        "function": "do_unlinkat",
                        "links": [
                          {
                            "mode": "Attach"
                          }
                        ]
                      },
                      "name": "fexit_test",
                      "type": "FExit"
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "ClusterBpfApplicationState",
                "metadata": {
                  "creationTimestamp": "2025-04-30T20:58:34Z",
                  "finalizers": [
                    "bpfman.io.clbpfapplicationcontroller/finalizer"
                  ],
                  "generation": 1,
                  "labels": {
                    "bpfman.io/ownedByProgram": "clusterbpfapplication-sample",
                    "kubernetes.io/hostname": "bpfman-deployment-control-plane"
                  },
                  "name": "clusterbpfapplication-sample-d3cc4fee",
                  "ownerReferences": [
                    {
                      "apiVersion": "bpfman.io/v1alpha1",
                      "blockOwnerDeletion": true,
                      "controller": true,
                      "kind": "ClusterBpfApplication",
                      "name": "clusterbpfapplication-sample",
                      "uid": "ab16b9a6-16bd-4a22-98ec-4268efaf8c8d"
                    }
                  ],
                  "resourceVersion": "1176",
                  "uid": "6e7e7446-306f-46ae-98e6-6ff28d9b5bcd"
                },
                "status": {
                  "appLoadStatus": "LoadSuccess",
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-04-30T21:00:16Z",
                      "message": "The BPF application has been successfully loaded and attached",
                      "reason": "Success",
                      "status": "True",
                      "type": "Success"
                    }
                  ],
                  "node": "bpfman-deployment-control-plane",
                  "programs": [
                    {
                      "kprobe": {
                        "links": [
                          {
                            "function": "try_to_wake_up",
                            "linkId": 818584239,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "uuid": "3c71185f-8d68-4be8-92cb-32a14a6f118b"
                          }
                        ]
                      },
                      "name": "kprobe_test",
                      "programId": 1323,
                      "programLinkStatus": "Success",
                      "type": "KProbe"
                    },
                    {
                      "kretprobe": {
                        "links": [
                          {
                            "function": "try_to_wake_up",
                            "linkId": 3409359936,
                            "linkStatus": "Attached",
                            "shouldAttach": true,
                            "uuid": "44c75019-f175-4b1e-bb34-d8896e3b0456"
                          }
                        ]
                      },
                      "name": "kretprobe_test",
                      "programId": 1324,
                      "programLinkStatus": "Success",
                      "type": "KRetProbe"
                    },
                    {
                      "name": "tracepoint_test",
                      "programId": 1325,
                      "programLinkStatus": "Success",
                      "tracepoint": {
                        "links": [
                          {
                            "linkId": 2625161294,
                            "linkStatus": "Attached",
                            "name": "syscalls/sys_enter_openat",
                            "shouldAttach": true,
                            "uuid": "40164d8a-5b55-4ff6-8e73-aa53d9180a6d"
                          }
                        ]
                      },
                      "type": "TracePoint"
                    },
                    {
                      "name": "tc_pass_test",
                      "programId": 1327,
                      "programLinkStatus": "Success",
                      "tc": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 1304307969,
                            "linkStatus": "Attached",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "44e6491e-ca98-44a0-b1b7-647b494c84fa"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 1425071644,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2196/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "89a05d8f-bb4a-448a-af11-2605d0094b98"
                          }
                        ]
                      },
                      "type": "TC"
                    },
                    {
                      "name": "tcx_next_test",
                      "programId": 1328,
                      "programLinkStatus": "Success",
                      "tcx": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 858546813,
                            "linkStatus": "Attached",
                            "priority": 500,
                            "shouldAttach": true,
                            "uuid": "6dff4163-4d62-4c93-bc34-739a796ddbb4"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 5042726,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2196/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "c066df6a-667e-4382-9e2f-a59f64bc1b7e"
                          }
                        ]
                      },
                      "type": "TCX"
                    },
                    {
                      "name": "uprobe_test",
                      "programId": 1329,
                      "programLinkStatus": "Success",
                      "type": "UProbe",
                      "uprobe": {
                        "links": [
                          {
                            "containerPid": 2089,
                            "function": "malloc",
                            "linkId": 2687038538,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "e48f1563-f56b-41fa-a87d-b8593fc5faca"
                          },
                          {
                            "containerPid": 2040,
                            "function": "malloc",
                            "linkId": 1651822558,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "e0d778df-4791-413b-b0f4-13ed1088500c"
                          }
                        ]
                      }
                    },
                    {
                      "name": "uretprobe_test",
                      "programId": 1330,
                      "programLinkStatus": "Success",
                      "type": "URetProbe",
                      "uretprobe": {
                        "links": [
                          {
                            "containerPid": 2089,
                            "function": "malloc",
                            "linkId": 3774838420,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "2f37f466-6ff4-47a1-9c8d-8dd1f97528bb"
                          },
                          {
                            "containerPid": 2040,
                            "function": "malloc",
                            "linkId": 1373645282,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "319bbaf0-1c8a-45b4-9d99-5dec27e2e5f1"
                          }
                        ]
                      }
                    },
                    {
                      "name": "xdp_pass_test",
                      "programId": 1332,
                      "programLinkStatus": "Success",
                      "type": "XDP",
                      "xdp": {
                        "links": [
                          {
                            "interfaceName": "eth0",
                            "linkId": 4243141192,
                            "linkStatus": "Attached",
                            "priority": 55,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "c3bea5b9-d3e0-4784-9a17-c286b6661fc2"
                          },
                          {
                            "interfaceName": "eth0",
                            "linkId": 1465833891,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2196/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "1e24df86-f3ff-4e0a-8f20-6759272ddb08"
                          }
                        ]
                      }
                    },
                    {
                      "fentry": {
                        "function": "do_unlinkat",
                        "links": [
                          {
                            "linkId": 950386839,
                            "linkStatus": "Attached",
                            "shouldAttach": true,
                            "uuid": "2eda2367-4540-478b-a40d-cc984475a570"
                          }
                        ]
                      },
                      "name": "fentry_test",
                      "programId": 1333,
                      "programLinkStatus": "Success",
                      "type": "FEntry"
                    },
                    {
                      "fexit": {
                        "function": "do_unlinkat",
                        "links": [
                          {
                            "linkId": 2243237521,
                            "linkStatus": "Attached",
                            "shouldAttach": true,
                            "uuid": "98910fe0-cad6-457f-8797-9f8200106511"
                          }
                        ]
                      },
                      "name": "fexit_test",
                      "programId": 1334,
                      "programLinkStatus": "Success",
                      "type": "FExit"
                    }
                  ],
                  "updateCount": 2
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: registry.redhat.io/bpfman/bpfman-rhel9-operator@sha256:d168cb1d5472ca5726aa3621e239005eb3b54d5f5d5d5ffad9a61f95a7c1ed23
          createdAt: 18 Nov 2025, 14:36
          description: The eBPF manager Operator is designed to manage eBPF programs
            for applications.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: bpfman
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "bpfman",
                "labels": {
                  "pod-security.kubernetes.io/enforce": "privileged",
                  "pod-security.kubernetes.io/audit": "privileged",
                  "pod-security.kubernetes.io/warn": "privileged",
                },
                "annotations": {
                  "openshift.io/node-selector": ""
                },
              }
            }
          operators.openshift.io/infrastructure-features: '["csi", "disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/bpfman-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BpfApplication is the Schema for the BpfApplications API
            displayName: Namespaced Bpf Application
            kind: BpfApplication
            name: bpfapplications.bpfman.io
            version: v1alpha1
          - description: BpfApplicationState is the Schema for the BpfApplicationState
              API
            displayName: Namespaced Bpf Application State
            kind: BpfApplicationState
            name: bpfapplicationstates.bpfman.io
            version: v1alpha1
          - description: ClusterBpfApplication is the Schema for the clusterbpfapplications
              API
            displayName: Cluster Bpf Application
            kind: ClusterBpfApplication
            name: clusterbpfapplications.bpfman.io
            version: v1alpha1
          - description: ClusterBpfApplicationState is the Schema for the ClusterBpfApplicationState
              API
            displayName: Cluster Bpf Application State
            kind: ClusterBpfApplicationState
            name: clusterbpfapplicationstates.bpfman.io
            version: v1alpha1
        description: "The eBPF manager Operator is a Kubernetes Operator for deploying
          [bpfman](https://github.com/openshift/bpfman-operator), a system daemon\nfor
          managing eBPF programs. It deploys bpfman itself along with CRDs to make
          deploying\neBPF programs in Kubernetes much easier.\n\n## Quick Start\n\nTo
          get bpfman up and running quickly simply click 'install' to deploy the bpfman-operator
          in the bpfman namespace via operator-hub.\n## Configuration\n\nThe `bpfman-config`
          configmap is automatically created in the `bpfman` namespace and used to
          configure the bpfman deployment.\n\nTo edit the config simply run\n\n```bash\nkubectl
          edit cm bpfman-config\n```\n\nThe following fields are adjustable\n\n- `bpfman.agent.image`:
          The image used for the bpfman-agent`\n- `bpfman.image`: The image used for
          bpfman`\n- `bpfman.log.level`: the log level for bpfman, currently supports
          `debug`, `info`, `warn`, `error`, and `fatal`, defaults to `info`\n- `bpfman.agent.log.level`:
          the log level for the bpfman-agent currently supports `info`, `debug`, and
          `trace` \n\nThe bpfman operator deploys eBPF programs via CRDs. The following
          CRDs are currently available, \n\n- BpfApplication\n- ClusterBpfApplication\n
          - BpfApplicationState\n- ClusterBpfApplicationState\n\n ## More information\n\nPlease
          checkout the [bpfman community website](https://bpfman.io/) for more information."
        displayName: eBPF Manager Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ebpf
        - kubernetes
        links:
        - name: bpfman website
          url: https://www.redhat.com/
        maintainers:
        - email: afredette@redhat.com
          name: Andre Fredette
        - email: mmahmoud@redhat.com
          name: Mohamed Mahmoud
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/bpfman/bpfman-operator-bundle@sha256:f015580da52da53c9fa9e5629804b9ac6b3026208d271f8d7ac0bd55f887bad7
        - registry.redhat.io/bpfman/bpfman-rhel9-operator@sha256:d168cb1d5472ca5726aa3621e239005eb3b54d5f5d5d5ffad9a61f95a7c1ed23
        version: 0.5.10
      entries:
      - name: bpfman-operator.v0.5.10
        version: 0.5.10
      - name: bpfman-operator.v0.5.9
        version: 0.5.9
      - name: bpfman-operator.v0.5.8
        version: 0.5.8
      name: stable
    defaultChannel: stable
    packageName: bpfman-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HashiCorp
      provider-url: https://www.hashicorp.com/
    name: hcp-terraform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hcp-terraform-operator.v2.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "AgentPool",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "agentTokens": [
                    {
                      "name": "token"
                    }
                  ],
                  "name": "NAME",
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "AgentToken",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "agentPool": {
                    "name": "AGENT_POOL_NAME"
                  },
                  "agentTokens": [
                    {
                      "name": "token-a"
                    },
                    {
                      "name": "token-b"
                    }
                  ],
                  "deletionPolicy": "destroy",
                  "managementPolicy": "merge",
                  "organization": "HCP_TF_ORG_NAME",
                  "secretName": "SECRET_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "Module",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "module": {
                    "source": "redeux/terraform-cloud-agent/kubernetes",
                    "version": "1.0.1"
                  },
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  },
                  "workspace": {
                    "id": "WORKSPACE_ID"
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "Project",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "name": "NAME",
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "RunsCollector",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "agentPool": {
                    "name": "AGENT_POOL_NAME"
                  },
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "Workspace",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "name": "NAME",
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.connect.redhat.com/hashicorp/hcp-terraform-operator@sha256:a80e83e7b6c08783e89be972588d5c24a6f9efafeb66eb63a3dd490642857c91
          createdAt: "2025-12-22T09:35:34Z"
          description: HCP Terraform Operator for Kubernetes allows managing HCP Terraform
            / Terraform Enterprise resources via Kubernetes Custom Resources.
          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"
          operators.openshift.io/valid-subscription: Valid HCP Terraform / Terraform
            Enterprise subscription is required
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/hashicorp/hcp-terraform-operator
          support: HashiCorp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              AgentPool manages HCP Terraform Agent Pools, HCP Terraform Agent Tokens and can perform HCP Terraform Agent scaling.
              More infromation:
                - https://developer.hashicorp.com/terraform/cloud-docs/agents/agent-pools
                - https://developer.hashicorp.com/terraform/cloud-docs/users-teams-organizations/api-tokens#agent-api-tokens
                - https://developer.hashicorp.com/terraform/cloud-docs/agents
            displayName: Agent Pool
            kind: AgentPool
            name: agentpools.app.terraform.io
            version: v1alpha2
          - description: |-
              AgentToken manages HCP Terraform Agent Tokens.
              More information:
              - https://developer.hashicorp.com/terraform/cloud-docs/users-teams-organizations/api-tokens#agent-api-tokens
            displayName: Agent Token
            kind: AgentToken
            name: agenttokens.app.terraform.io
            version: v1alpha2
          - description: |-
              Module implements API-driven Run Workflows.
              More information:
                - https://developer.hashicorp.com/terraform/cloud-docs/run/api
            displayName: Module
            kind: Module
            name: modules.app.terraform.io
            version: v1alpha2
          - description: |-
              Project manages HCP Terraform Projects.
              More information:
                - https://developer.hashicorp.com/terraform/cloud-docs/projects/manage
            displayName: Project
            kind: Project
            name: projects.app.terraform.io
            version: v1alpha2
          - description: |-
              RunsCollector scraptes HCP Terraform Run statuses from a given Agent Pool and exposes them as Prometheus-compatible metrics.
              More information:
                - https://developer.hashicorp.com/terraform/cloud-docs/run/remote-operations
            displayName: Runs Collector
            kind: RunsCollector
            name: runscollectors.app.terraform.io
            version: v1alpha2
          - description: |-
              Workspace manages HCP Terraform Workspaces.
              More information:
                - https://developer.hashicorp.com/terraform/cloud-docs/workspaces
            displayName: Workspace
            kind: Workspace
            name: workspaces.app.terraform.io
            version: v1alpha2
        description: HCP Terraform Operator for Kubernetes allows managing HCP Terraform
          / Terraform Enterprise resources via Kubernetes Custom Resources.
        displayName: HCP Terraform Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - terraform
        links:
        - name: HCP Terraform Operator
          url: https://github.com/hashicorp/hcp-terraform-operator
        maintainers:
        - email: hcp-tf-operator@hashicorp.com
          name: HashiCorp
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: HashiCorp
          url: https://www.hashicorp.com/
        relatedImages:
        - registry.connect.redhat.com/hashicorp/hcp-terraform-operator@sha256:a80e83e7b6c08783e89be972588d5c24a6f9efafeb66eb63a3dd490642857c91
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c8336efb1269a7f40113aa9767c6dc9affe4fd830a1ca6004206bcef1d0274a3
        - registry.connect.redhat.com/hashicorp/hcp-terraform-operator-bundle@sha256:611fc96e2c82aca4b8252fcddb67d5b39e730a0377ded4f7693104128a49069d
        version: 2.11.0
      entries:
      - name: hcp-terraform-operator.v2.11.0
        version: 2.11.0
      - name: hcp-terraform-operator.v2.9.2
        version: 2.9.2
      - name: hcp-terraform-operator.v2.9.1
        version: 2.9.1
      - name: hcp-terraform-operator.v2.9.0
        version: 2.9.0
      - name: hcp-terraform-operator.v2.8.1
        version: 2.8.1
      - name: hcp-terraform-operator.v2.8.0
        version: 2.8.0
      name: alpha
    defaultChannel: alpha
    packageName: hcp-terraform-operator
    provider:
      name: HashiCorp
      url: https://www.hashicorp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/component: operator
      app.kubernetes.io/managed-by: kustomize
      app.kubernetes.io/name: zabbix-operator-certified
      app.kubernetes.io/part-of: zabbix-operator-certified
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Zabbix LLC
      provider-url: ""
    name: zabbix-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: zabbix-operator-certified.v6.0.42
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixAgent",
                "metadata": {
                  "labels": {
                    "app": "agent",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-agent"
                },
                "spec": {
                  "active_allow": true,
                  "activeservers": "",
                  "allow_key": "",
                  "allow_privileged": true,
                  "buffer_send": 5,
                  "buffer_size": 100,
                  "debug_level": 3,
                  "deny_key": "system.run[*]",
                  "host_interface": "",
                  "host_interface_item": "",
                  "hostname": "",
                  "hostname_item": "system.hostname",
                  "load_module": "",
                  "log_remote_commands": true,
                  "max_lines_per_second": 20,
                  "metadata": "",
                  "metadata_item": "",
                  "passive_allow": true,
                  "passive_servers": "",
                  "refresh_active_checks": 120,
                  "server_host": "zabbix-server",
                  "start_agents": 3,
                  "timeout": 3,
                  "tls_accept": "unencrypted",
                  "tls_ca_file_name": "",
                  "tls_cert_file_name": "",
                  "tls_cipher_all": "",
                  "tls_cipher_all_13": "",
                  "tls_cipher_cert": "",
                  "tls_cipher_cert_13": "",
                  "tls_cipher_psk": "",
                  "tls_cipher_psk_13": "",
                  "tls_connect": "unencrypted",
                  "tls_crl_file_name": "",
                  "tls_key_file_name": "",
                  "tls_psk_file_name": "",
                  "tls_psk_identity": "",
                  "tls_server_cert_issuer": "",
                  "tls_server_cert_subject": "",
                  "unsafe_user_parameters": false,
                  "use_host_node_name": true
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixAgent2",
                "metadata": {
                  "labels": {
                    "app": "agent2",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-agent2"
                },
                "spec": {
                  "active_allow": true,
                  "activeservers": "",
                  "allow_key": "",
                  "allow_privileged": true,
                  "buffer_send": 5,
                  "buffer_size": 100,
                  "debug_level": 3,
                  "deny_key": "system.run[*]",
                  "enable_persistent_buffer": false,
                  "enable_status_port": false,
                  "host_interface": "",
                  "host_interface_item": "",
                  "hostname": "",
                  "hostname_item": "system.hostname",
                  "load_module": "",
                  "metadata": "",
                  "metadata_item": "",
                  "passive_allow": true,
                  "passive_servers": "",
                  "persistent_buffer_claim": "",
                  "persistent_buffer_period": "1h",
                  "refresh_active_checks": 120,
                  "server_host": "zabbix-server",
                  "start_agents": 3,
                  "timeout": 3,
                  "tls_accept": "unencrypted",
                  "tls_ca_file_name": "",
                  "tls_cert_file_name": "",
                  "tls_cipher_all": "",
                  "tls_cipher_all_13": "",
                  "tls_cipher_cert": "",
                  "tls_cipher_cert_13": "",
                  "tls_cipher_psk": "",
                  "tls_cipher_psk_13": "",
                  "tls_connect": "unencrypted",
                  "tls_crl_file_name": "",
                  "tls_key_file_name": "",
                  "tls_psk_file_name": "",
                  "tls_psk_identity": "",
                  "tls_server_cert_issuer": "",
                  "tls_server_cert_subject": "",
                  "unsafe_user_parameters": false,
                  "use_host_node_name": true
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixFull",
                "metadata": {
                  "labels": {
                    "app": "server",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-full"
                },
                "spec": {
                  "builtin_report_service": true,
                  "enable_report_service": false,
                  "enable_snmp_traps": false,
                  "history_storage_url": "",
                  "java_gateway": {
                    "debug_level": "info",
                    "start_pollers": 5,
                    "timeout": 3
                  },
                  "java_gateway_size": 1,
                  "server": {
                    "allow_unsupported_db_versions": false,
                    "cache_size": "32M",
                    "cache_update_frequency": 60,
                    "db_tls_cipher": "",
                    "db_tls_cipher_13": "",
                    "db_tls_connect": "",
                    "debug_level": 3,
                    "export_file_size": "",
                    "history_cache_size": "16M",
                    "history_index_cache_size": "4M",
                    "history_storage_date_index": true,
                    "history_storage_types": "",
                    "housekeeping_frequency": 1,
                    "load_module": "",
                    "log_slow_queries": 0,
                    "max_housekeeper_delete": 5000,
                    "proxy_config_frequency": 3600,
                    "proxy_data_frequency": 1,
                    "service_manager_sync_frequency": 60,
                    "start_alerters": 3,
                    "start_db_syncers": 4,
                    "start_discoverers": 1,
                    "start_escalators": 1,
                    "start_history_pollers": 5,
                    "start_http_pollers": 1,
                    "start_ipmi_pollers": 0,
                    "start_java_pollers": 5,
                    "start_lld_processors": 2,
                    "start_odbc_pollers": 1,
                    "start_pingers": 1,
                    "start_pollers": 5,
                    "start_pollers_unreachable": 1,
                    "start_preprocessors": 3,
                    "start_proxy_pollers": 0,
                    "start_report_writers": 1,
                    "start_timers": 1,
                    "start_trappers": 5,
                    "start_vmware_collectors": 0,
                    "stats_allowed_ip": "",
                    "timeout": 4,
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_cipher_all": "",
                    "tls_cipher_all_13": "",
                    "tls_cipher_cert": "",
                    "tls_cipher_cert_13": "",
                    "tls_cipher_psk": "",
                    "tls_cipher_psk_13": "",
                    "tls_crl_file_name": "",
                    "tls_key_file_name": "",
                    "trapper_timeout": 300,
                    "trend_cache_size": "4M",
                    "trend_function_cache_size": "4M",
                    "unavailable_delay": 60,
                    "unreachable_delay": 15,
                    "unreachable_period": 45,
                    "value_cache_size": "8M",
                    "vault_db_path": "",
                    "vmware_cache_size": "8M",
                    "vmware_frequency": 60,
                    "vmware_perf_frequency": 60,
                    "vmware_timeout": 10,
                    "web_service_url": ""
                  },
                  "snmp_traps_volumeclaim": "",
                  "snmptraps": {
                    "snmp_trap_date_format": "+%Y%m%d.%H%M%S",
                    "snmp_trap_format": "\\n"
                  },
                  "vault_token": "",
                  "vault_url": "",
                  "web": {
                    "db_cipher_list": "",
                    "db_double_ieee754": true,
                    "db_encryption": false,
                    "db_verify_host": false,
                    "deny_gui_access": false,
                    "enable_web_access_log": true,
                    "gui_access_ip_range": "",
                    "gui_warning_msg": "Zabbix is under maintenance.",
                    "history_storage_types": "",
                    "max_execution_time": 300,
                    "max_input_time": 300,
                    "memory_limit": "128M",
                    "post_max_size": "16M",
                    "server_name": "Kubernetes installation",
                    "session_name": "zbx_sessionid",
                    "sso_settings": "",
                    "timezone": "Europe/Riga",
                    "upload_max_filesize": "2M",
                    "vault_db_path": ""
                  },
                  "web_enable_route": true,
                  "web_service": {
                    "allowed_ip": "0.0.0.0/0",
                    "debug_level": 3,
                    "ignore_url_cert_errors": false,
                    "timeout": 3,
                    "tls_accept": "unencrypted",
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_key_file_name": ""
                  },
                  "web_size": 2,
                  "zabbix_mysql_volumeclaim": "mysql-full-zabbix",
                  "zabbix_mysqlsecret": "zabbix-full-secrets"
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixProxyMysql",
                "metadata": {
                  "labels": {
                    "app": "proxy",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-proxy-mysql"
                },
                "spec": {
                  "db_server_port": 3306,
                  "enable_snmp_traps": false,
                  "internal_db": true,
                  "java_gateway": {
                    "debug_level": "info",
                    "start_pollers": 5,
                    "timeout": 3
                  },
                  "java_gateway_size": 1,
                  "mysql_database": "zabbix_proxy",
                  "proxy": {
                    "allow_unsupported_db_versions": false,
                    "cache_size": "8M",
                    "config_frequency": 3600,
                    "data_sender_frequency": 1,
                    "db_tls_cipher": "",
                    "db_tls_cipher_13": "",
                    "db_tls_connect": "",
                    "debug_level": 3,
                    "enable_remote_commands": false,
                    "history_cache_size": "16M",
                    "history_index_cache_size": "4M",
                    "hostname": "",
                    "hostname_item": "system.hostname",
                    "housekeeping_frequency": 1,
                    "log_remote_commands": true,
                    "log_slow_queries": 0,
                    "proxy_heartbeat_frequency": 60,
                    "proxy_local_buffer": 0,
                    "proxy_mode": 0,
                    "proxy_offline_buffer": 1,
                    "server_host": "zabbix-server",
                    "start_db_syncers": 4,
                    "start_discoverers": 1,
                    "start_history_pollers": 1,
                    "start_http_pollers": 1,
                    "start_ipmi_pollers": 0,
                    "start_java_pollers": 5,
                    "start_odbc_pollers": 1,
                    "start_pingers": 1,
                    "start_pollers": 5,
                    "start_pollers_unreachable": 1,
                    "start_preprocessors": 3,
                    "start_trappers": 5,
                    "start_vmware_collectors": 0,
                    "timeout": 4,
                    "tls_accept": "unencrypted",
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_cipher_all": "",
                    "tls_cipher_all_13": "",
                    "tls_cipher_cert": "",
                    "tls_cipher_cert_13": "",
                    "tls_cipher_psk": "",
                    "tls_cipher_psk_13": "",
                    "tls_connect": "unencrypted",
                    "tls_crl_file_name": "",
                    "tls_key_file_name": "",
                    "tls_psk_file_name": "",
                    "tls_psk_identity": "",
                    "tls_server_cert_issuer": "",
                    "tls_server_cert_subject": "",
                    "trapper_timeout": 300,
                    "unavailable_delay": 60,
                    "unreachable_delay": 15,
                    "unreachable_period": 45,
                    "vault_db_path": "",
                    "vmware_cache_size": "8M",
                    "vmware_frequency": 60,
                    "vmware_perf_frequency": 60,
                    "vmware_timeout": 10
                  },
                  "snmp_traps_volumeclaim": "zabbix-snmptraps",
                  "snmptraps": {
                    "snmp_trap_date_format": "+%Y%m%d.%H%M%S",
                    "snmp_trap_format": "\\n"
                  },
                  "vault_token": "",
                  "vault_url": "",
                  "zabbix_mysql_volumeclaim": "mysql-proxy-zabbix",
                  "zabbix_mysqlsecret": "zabbix-full-secrets"
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixProxySqlite",
                "metadata": {
                  "labels": {
                    "app": "proxy",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-proxy-sqlite"
                },
                "spec": {
                  "db_data_volumeclaim": "zabbix-proxy-sqlite",
                  "enable_snmp_traps": false,
                  "java_gateway": {
                    "debug_level": "info",
                    "start_pollers": 5,
                    "timeout": 3
                  },
                  "java_gateway_size": 1,
                  "proxy": {
                    "cache_size": "8M",
                    "config_frequency": 3600,
                    "data_sender_frequency": 1,
                    "debug_level": 3,
                    "enable_remote_commands": false,
                    "history_cache_size": "16M",
                    "history_index_cache_size": "4M",
                    "hostname": "",
                    "hostname_item": "system.hostname",
                    "housekeeping_frequency": 1,
                    "log_remote_commands": true,
                    "log_slow_queries": 0,
                    "node_name_as_db_name": true,
                    "proxy_heartbeat_frequency": 60,
                    "proxy_local_buffer": 0,
                    "proxy_mode": 0,
                    "proxy_offline_buffer": 1,
                    "server_host": "zabbix-server",
                    "start_db_syncers": 4,
                    "start_discoverers": 1,
                    "start_history_pollers": 1,
                    "start_http_pollers": 1,
                    "start_ipmi_pollers": 0,
                    "start_java_pollers": 5,
                    "start_odbc_pollers": 1,
                    "start_pingers": 1,
                    "start_pollers": 5,
                    "start_pollers_unreachable": 1,
                    "start_preprocessors": 3,
                    "start_trappers": 5,
                    "start_vmware_collectors": 0,
                    "timeout": 4,
                    "tls_accept": "unencrypted",
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_cipher_all": "",
                    "tls_cipher_all_13": "",
                    "tls_cipher_cert": "",
                    "tls_cipher_cert_13": "",
                    "tls_cipher_psk": "",
                    "tls_cipher_psk_13": "",
                    "tls_connect": "unencrypted",
                    "tls_crl_file_name": "",
                    "tls_key_file_name": "",
                    "tls_psk_file_name": "",
                    "tls_psk_identity": "",
                    "tls_server_cert_issuer": "",
                    "tls_server_cert_subject": "",
                    "trapper_timeout": 300,
                    "unavailable_delay": 60,
                    "unreachable_delay": 15,
                    "unreachable_period": 45,
                    "vmware_cache_size": "8M",
                    "vmware_frequency": 60,
                    "vmware_perf_frequency": 60,
                    "vmware_timeout": 10
                  },
                  "proxy_size": 1,
                  "snmp_traps_volumeclaim": "zabbix-snmptraps",
                  "snmptraps": {
                    "snmp_trap_date_format": "+%Y%m%d.%H%M%S",
                    "snmp_trap_format": "\\n"
                  }
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixServer",
                "metadata": {
                  "labels": {
                    "app": "server",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-server"
                },
                "spec": {
                  "builtin_report_service": true,
                  "db_server_host": "mysql-server",
                  "db_server_port": 3306,
                  "enable_report_service": false,
                  "enable_snmp_traps": false,
                  "history_storage_url": "",
                  "java_gateway": {
                    "debug_level": "info",
                    "start_pollers": 5,
                    "timeout": 3
                  },
                  "java_gateway_size": 1,
                  "mysql_database": "zabbix",
                  "server": {
                    "allow_unsupported_db_versions": false,
                    "cache_size": "32M",
                    "cache_update_frequency": 60,
                    "db_tls_cipher": "",
                    "db_tls_cipher_13": "",
                    "db_tls_connect": "",
                    "debug_level": 3,
                    "export_file_size": "",
                    "history_cache_size": "16M",
                    "history_index_cache_size": "4M",
                    "history_storage_date_index": true,
                    "history_storage_types": "",
                    "housekeeping_frequency": 1,
                    "load_module": "",
                    "log_slow_queries": 0,
                    "max_housekeeper_delete": 5000,
                    "proxy_config_frequency": 3600,
                    "proxy_data_frequency": 1,
                    "service_manager_sync_frequency": 60,
                    "start_alerters": 3,
                    "start_db_syncers": 4,
                    "start_discoverers": 1,
                    "start_escalators": 1,
                    "start_history_pollers": 5,
                    "start_http_pollers": 1,
                    "start_ipmi_pollers": 0,
                    "start_java_pollers": 5,
                    "start_lld_processors": 2,
                    "start_odbc_pollers": 1,
                    "start_pingers": 1,
                    "start_pollers": 5,
                    "start_pollers_unreachable": 1,
                    "start_preprocessors": 3,
                    "start_proxy_pollers": 0,
                    "start_report_writers": 1,
                    "start_timers": 1,
                    "start_trappers": 5,
                    "start_vmware_collectors": 0,
                    "stats_allowed_ip": "",
                    "timeout": 4,
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_cipher_all": "",
                    "tls_cipher_all_13": "",
                    "tls_cipher_cert": "",
                    "tls_cipher_cert_13": "",
                    "tls_cipher_psk": "",
                    "tls_cipher_psk_13": "",
                    "tls_crl_file_name": "",
                    "tls_key_file_name": "",
                    "trapper_timeout": 300,
                    "trend_cache_size": "4M",
                    "trend_function_cache_size": "4M",
                    "unavailable_delay": 60,
                    "unreachable_delay": 15,
                    "unreachable_period": 45,
                    "value_cache_size": "8M",
                    "vault_db_path": "",
                    "vmware_cache_size": "8M",
                    "vmware_frequency": 60,
                    "vmware_perf_frequency": 60,
                    "vmware_timeout": 10,
                    "web_service_url": ""
                  },
                  "snmp_traps_volumeclaim": "",
                  "snmptraps": {
                    "snmp_trap_date_format": "+%Y%m%d.%H%M%S",
                    "snmp_trap_format": "\\n"
                  },
                  "vault_token": "",
                  "vault_url": "",
                  "web": {
                    "db_cipher_list": "",
                    "db_double_ieee754": true,
                    "db_encryption": false,
                    "db_verify_host": false,
                    "deny_gui_access": false,
                    "enable_web_access_log": true,
                    "gui_access_ip_range": "",
                    "gui_warning_msg": "Zabbix is under maintenance.",
                    "history_storage_types": "",
                    "max_execution_time": 300,
                    "max_input_time": 300,
                    "memory_limit": "128M",
                    "post_max_size": "16M",
                    "server_name": "Kubernetes installation",
                    "session_name": "zbx_sessionid",
                    "sso_settings": "",
                    "timezone": "Europe/Riga",
                    "upload_max_filesize": "2M",
                    "vault_db_path": ""
                  },
                  "web_enable_route": true,
                  "web_service": {
                    "allowed_ip": "0.0.0.0/0",
                    "debug_level": 3,
                    "ignore_url_cert_errors": false,
                    "timeout": 3,
                    "tls_accept": "unencrypted",
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_key_file_name": ""
                  },
                  "web_size": 2,
                  "zabbix_mysqlsecret": "zabbix-full-secrets"
                }
              }
            ]
          ansible.operator-sdk/reconcile-period: 5s
          capabilities: Seamless Upgrades
          categories: Monitoring, Networking
          certified: "true"
          containerImage: registry.connect.redhat.com/zabbix/zabbixoperator-certified@sha256:77e30cbaade0405adfab5d3b25c95fa45c40c29c6552308922062512b71af614
          createdAt: "2025-10-21T02:46:43Z"
          description: Zabbix operator with multiple deployment variants and different
            components
          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.skipRange: <6.0.42
          operatorframework.io/suggested-namespace: zabbix
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: ""
          support: Zabbix
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Zabbix agent 2 is a new generation of Zabbix agent and may
              be used in place of Zabbix agent
            displayName: Zabbix agent 2
            kind: ZabbixAgent2
            name: zabbixagent2s.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix agent is deployed on a monitoring nodes to actively
              monitor local resources and applications
            displayName: Zabbix agent
            kind: ZabbixAgent
            name: zabbixagents.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix server with MySQL database server, Nginx web-server
              and Zabbix Java Gateway
            displayName: Zabbix Full
            kind: ZabbixFull
            name: zabbixfulls.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix proxy with MySQL database server
            displayName: Zabbix proxy (MySQL)
            kind: ZabbixProxyMysql
            name: zabbixproxymysqls.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix proxy with SQLite database
            displayName: Zabbix proxy (SQLite3)
            kind: ZabbixProxySqlite
            name: zabbixproxysqlites.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix server with MySQL database support, Nginx web-server
              and Zabbix Java Gateway
            displayName: Zabbix Server
            kind: ZabbixServer
            name: zabbixservers.kubernetes.zabbix.com
            version: v1alpha1
        description: "## About this Operator\n\nZabbix helps you to real-time monitoring
          of millions of metrics collected from tens of thousands of servers, virtual
          machines and network devices.\nThe Zabbix Operator allows users to easily
          deploy, manage, and maintain Zabbix deployments on OpenShift. By installing
          this integration you will be able to deploy Zabbix server / proxies and
          other components with a single command.\n## Supported Features\n* **Zabbix
          Server** - Simple Zabbix installation with included Zabbix server, Zabbix
          web-interface and Zabbix Java Gateway with MySQL database support. The feature
          does not provide MySQL service and requires an external MySQL database.
          \n* **Zabbix Server (Full)** - Zabbix installation with included Zabbix
          server, Zabbix web-interface, Zabbix Java Gateway and MySQL server instance.\n*
          **Zabbix proxy (SQLite3)** - Very simple way to gain power of Zabbix proxy.
          The feature has  SQLite3 support for Zabbix proxies and allow to specify
          amount of proxies. \n* **Zabbix proxy (MySQL)** - Another option of Zabbix
          proxy. The option support and deliver MySQL database.\n* **Zabbix agent**
          - Zabbix agent can be deployed on each available node for stability and
          performance monitoring on remote nodes. It allows to gather metrics with
          full automation!* \n## Prerequisites\nAll deployment options are require
          additional information during deployment. Please, check the following instructions
          and provide required configuration:\n* **Zabbix Server** - MySQL database
          host information and MySQL database credentials in specially formatted *Secret*.
          Additionally it is possible to specify SSL certificates for HTTPS support
          in *Secret*.\n* **Zabbix Server (Full)** - MySQL database credentials in
          specially formatted *Secret*. MySQL database volume name information. Additionally
          it is possible to specify SSL certificates for HTTPS support in *Secret*.\n*
          **Zabbix proxy (SQLite3)** - Zabbix server host information only.\n* **Zabbix
          proxy (MySQL)** - MySQL database credentials in specially formatted *Secrets*
          and Zabbix server host information.\n* **Zabbix agent** - Zabbix server
          host information only for outgoing and incoming connections. Zabbix agent
          uses \"privileged\" mode to monitor node resources! For example, running
          processes.* \n### MySQL credentials\n```\nkind: Secret\napiVersion: v1\nmetadata:\n
          \ name: zabbix-full-secrets\ndata:\n  mysql_root_password: emFiYml4X3N1cGVyX3Jvb3Q=
          [1]\n  mysql_zabbix_password: emFiYml4X3VzZXJfcGFzc3dvcmQ= [2]\n  mysql_zabbix_username:
          emFiYml4 [3]\ntype: Opaque\n```\nUsing MySQL root password (*mysqlrootpassword*
          [1]) Zabbix server / proxy will try to create MySQL database schema with
          grant permissions to *mysqlzabbixusername* [2] and *mysqlzabbixpassword*
          [3].\n### SSL certificates for HTTPS\n```\nkind: Secret\napiVersion: v1\nmetadata:\n
          \ name: zabbix-web-sslsecret\ndata:\n  ssl.crt: >-\n   < ssl.crt data>\n
          \ ssl.key: >-\n\t < ssl.key data >\n  dhparam.pem: >-\n   <  dhparam.pem
          data >\n```\nFiles *ssl.crt*, *ssl.key* and *dhparam.perm* are required
          for Zabbix web-interface for SSL support.\n"
        displayName: Zabbix Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - monitoring
        - zabbix
        - appliance
        - agent
        - metrics
        links:
        - name: Zabbix
          url: https://www.zabbix.com
        - name: Zabbix Official Documentation
          url: https://www.zabbix.com/documentation/6.0/en/manual/quickstart
        - name: Zabbix Operator Installation
          url: https://www.zabbix.com/documentation/6.0/en/manual/installation/containers/openshift
        - name: Downloads
          url: https://www.zabbix.com/download
        maintainers:
        - email: alexey.pustovalov@zabbix.com
          name: Alexey Pustovalov
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Zabbix LLC
        relatedImages:
        - registry.connect.redhat.com/zabbix/zabbix-java-gateway-60@sha256:19437b3d912fe852fe568592cca5c45c0d1cee717981b94f2aed3a56a36f98ee
        - registry.connect.redhat.com/zabbix/zabbix-proxy-mysql-60@sha256:a32212ca9914b6b615d3218cb8c31b46e79a24b95408bbf7d2ae2bc2438b994d
        - registry.connect.redhat.com/zabbix/zabbix-server-mysql-60@sha256:d6a72aa83d6b33539d95363a3b1f551913323423034cb9d601d8350a3202e900
        - registry.connect.redhat.com/zabbix/zabbix-web-service-60@sha256:8fd7c44bd53a432656ff1b867001294ccdc96e307c1b5ef0efdabfd38c64d792
        - registry.connect.redhat.com/zabbix/zabbix-agent-60@sha256:c70bc90da7b35b7a1a1d9e990bd74cbcd19b152d480575af6ebc470a77ba3654
        - registry.connect.redhat.com/zabbix/zabbix-snmptraps-60@sha256:9fff7dd44cfdb94772f44e45bf09522c136d6b31e430a01182bb583f8add08b6
        - registry.connect.redhat.com/zabbix/zabbix-web-mysql-60@sha256:0d0004d7e2d16e824833dddd797a03f56df98da4aad84aa94156593c8d4c1391
        - registry.connect.redhat.com/zabbix/zabbixoperator-certified-bundle@sha256:9e2c710933fd100f9a26eb8efc9ec26a674e4295e35e62c008639436d357bbb8
        - registry.connect.redhat.com/zabbix/zabbix-proxy-sqlite-60@sha256:1eca475781f58a299d7b432a2c58c1a28bf1624b55b963837b05934ed29c2539
        - registry.connect.redhat.com/zabbix/zabbixoperator-certified@sha256:77e30cbaade0405adfab5d3b25c95fa45c40c29c6552308922062512b71af614
        - registry.redhat.io/rhel9/mysql-80@sha256:9e9d7d742346b0c8f8a244255e9b029f2c50d87eef71cdd809f3bda7b47d81ec
        - registry.connect.redhat.com/zabbix/zabbix-agent2-60@sha256:41e5a21d000096d40b8d4eab8dd295e97d34e1185064a5e16ce321f80996a154
        version: 6.0.42
      entries:
      - name: zabbix-operator-certified.v6.0.42
        version: 6.0.42
      - name: zabbix-operator-certified.v6.0.40
        version: 6.0.40
      - name: zabbix-operator-certified.v6.0.38
        version: 6.0.38
      - name: zabbix-operator-certified.v6.0.36
        version: 6.0.36
      - name: zabbix-operator-certified.v6.0.33
        version: 6.0.33
      - name: zabbix-operator-certified.v6.0.29
        version: 6.0.29
      - name: zabbix-operator-certified.v6.0.27
        version: 6.0.27
      - name: zabbix-operator-certified.v6.0.26
        version: 6.0.26
      - name: zabbix-operator-certified.v6.0.17
        version: 6.0.17
      - name: zabbix-operator-certified.v6.0.14
        version: 6.0.14
      - name: zabbix-operator-certified.v6.0.13
        version: 6.0.13
      name: lts
    defaultChannel: lts
    packageName: zabbix-operator-certified
    provider:
      name: Zabbix LLC
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: open-liberty-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: open-liberty-operator.v0.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4",
                  "expose": true,
                  "replicas": 1
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread",
                    "heap"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: registry.connect.redhat.com/ibm/open-liberty-operator-controller@sha256:18f188e48725c785557c8edea46f69c464d6f81ab47860a3bb0ec978c20a26db
          createdAt: "2022-03-25T14:00:00Z"
          description: Deploy and manage applications running on Liberty
          olm.skipRange: <0.8.1
          operators.operatorframework.io/builder: operator-sdk-v1.6.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          This advanced Operator can be used to deploy and manage Open Liberty applications with consistent, production-grade QoS. This operator is based on the [Runtime Component Operator](https://github.com/application-stacks/runtime-component-operator) and provides all of its capabilities in addition to Open Liberty specific features such as gathering traces and dumps (Day-2 operations) and easily configuring and managing the single sign-on information for your Open Liberty applications.

          Open Liberty Operator enables enterprise architects to govern the way their applications get deployed & managed in the cluster, while dramatically reducing the learning curve for developers to deploy into Kubernetes - allowing them to focus on writing the code!

          Here are some key features:

          #### Application Lifecyle
          You can deploy your Open Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the Operator will watch for any updates and will re-deploy the modified image.

          #### Custom RBAC
          This Operator is capable of using a custom ServiceAccount from the caller, allowing it to follow RBAC restrictions. By default it creates a ServiceAccount if one is not specified, which can also be bound with specific roles.

          #### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as: labels, annotations, and environment variables from a ConfigMap, a Secret or a value.

          #### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configuration, such as TLS settings, are also easily enabled.

          #### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto scaling to create (and delete) instances based on resource consumption.

          #### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you.
          This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart.
          We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          You can also easily configure and use a single storage for serviceability related Day-2 operations, such as gatherig server traces and dumps.

          #### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating kubernetes Secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to its required services without any intervention or interruption.

          #### Single Sign-On (SSO)
          Open Liberty provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows to easily configure and manage the single sign-on information for your applications.

          #### Exposing metrics to Prometheus
          Expose the Open Liberty application's metrics via the Prometheus Operator.
          You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `spec.monitoring` field to control configurations such as poll interval and security credentials.

          #### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply add the following configuration (to specify the volume size and the location to persist) to your OpenLibertyApplication CR:
          ``` storage: size: 2Gi mountPath: "/logs" ```

          #### Integration with OpenShift Serverless
          Deploy your serverless runtime component using a single toggle.  The Operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing your pod to automatically scale to 0 when it is idle.

          #### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and how they are connected.

          See our [**documentation**](https://github.com/OpenLiberty/open-liberty-operator/tree/main/doc/) for more information.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://github.com/OpenLiberty/open-liberty-operator/tree/main/doc
        - name: Open Liberty
          url: https://openliberty.io/
        - name: Open Liberty Container Images
          url: https://github.com/OpenLiberty/ci.docker
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: beta
        provider:
          name: IBM
        relatedImages:
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:591fc4b5867dff26df1952653423b33889c0f56ba3f756057694d4c0e396eeb0
        - registry.connect.redhat.com/ibm/open-liberty-operator-controller@sha256:18f188e48725c785557c8edea46f69c464d6f81ab47860a3bb0ec978c20a26db
        - registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4
        version: 0.8.1
      entries:
      - name: open-liberty-operator.v0.8.1
        version: 0.8.1
      - name: open-liberty-operator.v0.8.0
        version: 0.8.0
      name: beta2
    - currentCSV: open-liberty-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread",
                    "heap"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread",
                    "heap"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/open-liberty-operator@sha256:d45c296d43dc4c4100f38bb736f073e04c8b4d72b68ddf1189e311aff8ad66e3
          createdAt: "2023-08-28T16:39:10Z"
          description: Deploy and manage containerized Liberty applications
          olm.skipRange: '>=0.8.0 <1.2.2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          Open Liberty is a lightweight open framework for building fast and efficient cloud-native Java microservices. Open Liberty is the most flexible server runtime available to Java developers in this solar system. It is optimized for modern cloud technologies and practices, making it an ideal choice for container and Kubernetes-based deployments.

          Open Liberty Operator allows you to deploy and manage containerized Liberty applications securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform Day-2 operations such as gathering traces and memory dumps easily using the operator.
          ## Documentation
          See our [**documentation**](https://ibm.biz/olo-docs) for more information. If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/olo-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Application Lifecycle
          You can deploy your Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Integration with Semeru Cloud Compiler
          Use a single toggle to stand up a compatible Semeru Cloud Compiler instance to handle compilation requests from the multiple instances of the same application. Liberty Operator automatically sets up encrypted communication between the compiler and the application. It also handles application upgrade scenarios gracefully to ensure compiler and application instances remain compatible.
          ### Exposing metrics to Prometheus
          Expose the Liberty application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Single Sign-On (SSO)
          Liberty runtime provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows you to easily configure and manage the single sign-on information for your applications.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the OpenLibertyApplication's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your applications can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless applications using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the Liberty server.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode. You can also easily configure and use single storage for serviceability-related day-2 operations, such as gathering server traces and dumps.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://ibm.biz/olo-docs
        - name: Open Liberty
          url: https://openliberty.io
        - name: Open Liberty Container Images
          url: https://ibm.biz/ol-images
        maintainers:
        - email: support@ibm.com
          name: IBM Support
        maturity: stable
        provider:
          name: IBM
        relatedImages:
        - icr.io/appcafe/open-liberty-operator@sha256:d45c296d43dc4c4100f38bb736f073e04c8b4d72b68ddf1189e311aff8ad66e3
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:3225c49cf30a146784533496ce478466034d4549ff9721752958bac342fdec77
        version: 1.2.2
      entries:
      - name: open-liberty-operator.v1.2.2
        version: 1.2.2
      name: v1.2
    - currentCSV: open-liberty-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/open-liberty-operator@sha256:d68bb66a8133702a198f7be655d7cff5f500bb620c460a81547971e00124ef73
          createdAt: "2024-08-01T20:19:13Z"
          description: Deploy and manage containerized Liberty applications
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.3.3'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          Open Liberty is a lightweight open framework for building fast and efficient cloud-native Java microservices. Open Liberty is the most flexible server runtime available to Java developers in this solar system. It is optimized for modern cloud technologies and practices, making it an ideal choice for container and Kubernetes-based deployments.

          Open Liberty Operator allows you to deploy and manage containerized Liberty applications securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform Day-2 operations such as gathering traces and memory dumps easily using the operator.
          ## Documentation
          See our [**documentation**](https://ibm.biz/olo-docs) for more information. If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/olo-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Application Lifecycle
          You can deploy your Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Management of Lightweight Third-Party Authentication (LTPA)
          LTPA provides a method of SSO configuration to authenticate users to access applications. The Liberty operator can generate and manage the LTPA key for applications. A single LTPA key can be used per each namespace and shared with participating microservices and applications to allow users to authenticate only once.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Integration with Semeru Cloud Compiler
          Use a single toggle to stand up a compatible Semeru Cloud Compiler instance to handle compilation requests from the multiple instances of the same application. Liberty Operator automatically sets up encrypted communication between the compiler and the application. It also handles application upgrade scenarios gracefully to ensure compiler and application instances remain compatible.
          ### Exposing metrics to Prometheus
          Expose the Liberty application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Single Sign-On (SSO)
          Liberty runtime provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows you to easily configure and manage the single sign-on information for your applications.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the OpenLibertyApplication's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your applications can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless applications using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the Liberty server.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode. You can also easily configure and use single storage for serviceability-related day-2 operations, such as gathering server traces and dumps.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://ibm.biz/olo-docs
        - name: Open Liberty
          url: https://openliberty.io
        - name: Open Liberty Container Images
          url: https://ibm.biz/ol-images
        maintainers:
        - email: support@ibm.com
          name: IBM Support
        maturity: stable
        provider:
          name: IBM
        relatedImages:
        - icr.io/appcafe/open-liberty-operator@sha256:d68bb66a8133702a198f7be655d7cff5f500bb620c460a81547971e00124ef73
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:b0fa6b0356d83626509289b33dfa669bd7d32542aba986a18d296b85ce63389a
        version: 1.3.3
      entries:
      - name: open-liberty-operator.v1.3.3
        version: 1.3.3
      name: v1.3
    - currentCSV: open-liberty-operator.v1.4.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/open-liberty-operator@sha256:67b5b46dfed008dab4ea7fd176d3bc31dae8940d72194a10aebb98b1dea9043e
          createdAt: "2025-07-18T20:45:06Z"
          description: Deploy and manage containerized Liberty applications
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.4.4'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          Open Liberty is a lightweight open framework for building fast and efficient cloud-native Java microservices. Open Liberty is the most flexible server runtime available to Java developers in this solar system. It is optimized for modern cloud technologies and practices, making it an ideal choice for container and Kubernetes-based deployments.

          Open Liberty Operator allows you to deploy and manage containerized Liberty applications securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform Day-2 operations such as gathering traces and memory dumps easily using the operator.
          ## Documentation
          See our [**documentation**](https://ibm.biz/olo-docs) for more information. If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/olo-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Application Lifecycle
          You can deploy your Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Management of Lightweight Third-Party Authentication (LTPA)
          LTPA provides a method of SSO configuration to authenticate users to access applications. The Liberty operator can generate and manage the LTPA key for applications. A single LTPA key can be used per each namespace and shared with participating microservices and applications to allow users to authenticate only once.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Integration with Semeru Cloud Compiler
          Use a single toggle to stand up a compatible Semeru Cloud Compiler instance to handle compilation requests from the multiple instances of the same application. Liberty Operator automatically sets up encrypted communication between the compiler and the application. It also handles application upgrade scenarios gracefully to ensure compiler and application instances remain compatible.
          ### Exposing metrics to Prometheus
          Expose the Liberty application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Single Sign-On (SSO)
          Liberty runtime provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows you to easily configure and manage the single sign-on information for your applications.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the OpenLibertyApplication's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your applications can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless applications using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the Liberty server.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode. You can also easily configure and use single storage for serviceability-related day-2 operations, such as gathering server traces and dumps.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://ibm.biz/olo-docs
        - name: Open Liberty
          url: https://openliberty.io
        - name: Open Liberty Container Images
          url: https://ibm.biz/ol-images
        maintainers:
        - email: support@ibm.com
          name: IBM Support
        maturity: stable
        provider:
          name: IBM
        relatedImages:
        - icr.io/appcafe/open-liberty-operator@sha256:67b5b46dfed008dab4ea7fd176d3bc31dae8940d72194a10aebb98b1dea9043e
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:fe759127885502dc66423530ff03e37973355c5566a1c27e988b59d71528dd2b
        version: 1.4.4
      entries:
      - name: open-liberty-operator.v1.4.4
        version: 1.4.4
      name: v1.4
    - currentCSV: open-liberty-operator.v1.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyPerformanceData",
                "metadata": {
                  "name": "openliberty-performance-data-sample"
                },
                "spec": {
                  "interval": 30,
                  "podName": "Specify_Pod_Name_Here",
                  "timespan": 240
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/open-liberty-operator@sha256:f7df04f70c2eb6d93610cea7efe7c351169ccb92cd9a4644fbed3a1d00ec6cfc
          createdAt: "2025-12-08T17:02:43Z"
          description: Deploy and manage containerized Liberty applications
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.5.2'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server performance data
            displayName: OpenLibertyPerformanceData
            kind: OpenLibertyPerformanceData
            name: openlibertyperformancedata.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          Open Liberty is a lightweight open framework for building fast and efficient cloud-native Java microservices. Open Liberty is the most flexible server runtime available to Java developers in this solar system. It is optimized for modern cloud technologies and practices, making it an ideal choice for container and Kubernetes-based deployments.

          Open Liberty Operator allows you to deploy and manage containerized Liberty applications securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform Day-2 operations such as gathering traces and memory dumps easily using the operator.
          ## Documentation
          See our [**documentation**](https://ibm.biz/olo-docs) for more information. If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/olo-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Application Lifecycle
          You can deploy your Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Management of Lightweight Third-Party Authentication (LTPA)
          LTPA provides a method of SSO configuration to authenticate users to access applications. The Liberty operator can generate and manage the LTPA key for applications. A single LTPA key can be used per each namespace and shared with participating microservices and applications to allow users to authenticate only once.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Integration with Semeru Cloud Compiler
          Use a single toggle to stand up a compatible Semeru Cloud Compiler instance to handle compilation requests from the multiple instances of the same application. Liberty Operator automatically sets up encrypted communication between the compiler and the application. It also handles application upgrade scenarios gracefully to ensure compiler and application instances remain compatible.
          ### Exposing metrics to Prometheus
          Expose the Liberty application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Single Sign-On (SSO)
          Liberty runtime provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows you to easily configure and manage the single sign-on information for your applications.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the OpenLibertyApplication's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your applications can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless applications using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the Liberty server.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode. You can also easily configure and use single storage for serviceability-related day-2 operations, such as gathering server traces and dumps.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://ibm.biz/olo-docs
        - name: Open Liberty
          url: https://openliberty.io
        - name: Open Liberty Container Images
          url: https://ibm.biz/ol-images
        maintainers:
        - email: support@ibm.com
          name: IBM Support
        maturity: stable
        provider:
          name: IBM
        relatedImages:
        - icr.io/appcafe/open-liberty-operator@sha256:f7df04f70c2eb6d93610cea7efe7c351169ccb92cd9a4644fbed3a1d00ec6cfc
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:42ff7b444c7dddd77f54483e5b6e0144e4eaea054ae79913567817f389df24b5
        version: 1.5.2
      entries:
      - name: open-liberty-operator.v1.5.2
        version: 1.5.2
      name: v1.5
    defaultChannel: v1.5
    packageName: open-liberty-certified
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Opstree Solutions
      provider-url: ""
    name: mongodb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"opstreelabs.in/v1alpha1","kind":"MongoDB","metadata":{"name":"mongodb"},"spec":{"kubernetesConfig":{"image":"quay.io/opstree/mongo:v5.0.6","imagePullPolicy":"IfNotPresent","securityContext":{"fsGroup":1001}},"storage":{"accessModes":["ReadWriteOnce"],"storageSize":"1Gi","storageClass":"gp2"},"mongoDBSecurity":{"mongoDBAdminUser":"admin","secretRef":{"name":"mongodb-secret","key":"password"}}}},{"apiVersion":"opstreelabs.in/v1alpha1","kind":"MongoDBCluster","metadata":{"name":"mongodb"},"spec":{"clusterSize":3,"kubernetesConfig":{"image":"quay.io/opstree/mongo:v5.0.6","imagePullPolicy":"IfNotPresent","securityContext":{"fsGroup":1001}},"storage":{"accessModes":["ReadWriteOnce"],"storageSize":"1Gi","storageClass":"gp2"},"mongoDBSecurity":{"mongoDBAdminUser":"admin","secretRef":{"name":"mongodb-secret","key":"password"}}}}]'
          capabilities: Seamless Upgrades
          categories: Database,  OpenShift Optional, Storage
          certified: "false"
          containerImage: quay.io/opstree/mongodb-operator:v0.3.0
          createdAt: 05-04-2022
          description: A golang based operator to create and manage MongoDB standalone
            setup and cluster setup
          k8sMaxVersion: ""
          k8sMinVersion: 1.17.0
          repository: https://github.com/ot-container-kit/mongodb-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Mongo DB Cluster
            displayName: MongoDBCluster
            kind: MongoDBCluster
            name: mongodbclusters.opstreelabs.in
            version: v1alpha1
          - description: Mongo DB
            displayName: MongoDB
            kind: MongoDB
            name: mongodbs.opstreelabs.in
            version: v1alpha1
        description: |+
          MongoDB Operator is an operator created in Golang to create, update, and manage MongoDB standalone, replicated, and arbiter replicated setup on Kubernetes and Openshift clusters. This operator is capable of doing the setup for MongoDB with all the required best practices.

          ### Supported Features

          * MongoDB replicated cluster setup
          * MongoDB standalone setup
          * MongoDB replicated cluster failover and recovery
          * Monitoring support with MongoDB Exporter
          * Password based authentication for MongoDB
          * Kubernetes's resources for MongoDB standalone and cluster
          * Customizable configuration changes in MongoDB
          * Insightful Grafana dashboards

          ### Documentation

          **[Documentation](https://ot-mongodb-operator.netlify.app/)**
          ### Getting Help

          This project is managed by OpsTree Solutions. If you have any queries or suggestions, mail us at opensource@opstree.com.
          ### Contributing
          You can contribute to this project by:-

          * Raising Bugs and Feature Requests
          * Fixing issue by opening a Pull Request
          * Improving Documentation

          ### License

          MongoDB  Operator is licensed under [Apache License, Version 2.0](https://github.com/OT-CONTAINER-KIT/mongodb-operator/blob/master/LICENSE)


        displayName: MongoDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Database
        - MongoDB
        - Opstree
        - Operatork
        - Cloud Native
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://ot-mongodb-operator.netlify.app/
        - name: Buildpiper
          url: https://buildpiper.io
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep Rawat
        maturity: alpha
        minKubeVersion: 1.17.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/openshift-community-operators/mongodb-operator@sha256:1c06d3e936348ceeed773eb45144c9dd702e50ba293610421a93e3b3942ac9ef
        - quay.io/opstree/mongodb-operator:v0.3.0
        version: 0.3.0
      entries:
      - name: mongodb-operator.v0.3.0
        version: 0.3.0
      name: alpha
    defaultChannel: alpha
    packageName: mongodb-operator
    provider:
      name: Opstree Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: TrendMicro
      provider-url: trendmicro.com
    name: visionone-containersecurity
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: visionone-containersecurity.v0.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "container-security.trendmicro.com/v1alpha1",
                "kind": "VisionOneContainerSecurity",
                "metadata": {
                  "name": "sample",
                  "namespace": "trendmicro-system"
                },
                "spec": {
                  "visionOne": {
                    "bootstrapToken": "",
                    "clusterRegistrationKey": false,
                    "endpoint": "https://api.xdr.trendmicro.com/external/v2/direct/vcs/external/vcs",
                    "exclusion": {
                      "namespaces": [
                        "kube-system",
                        "openshift",
                        "openshift-apiserver",
                        "openshift-apiserver-operator",
                        "openshift-aqua",
                        "openshift-authentication",
                        "openshift-authentication-operator",
                        "openshift-backplane",
                        "openshift-backplane-cee",
                        "openshift-backplane-srep",
                        "openshift-build-test",
                        "openshift-cloud-credential-operator",
                        "openshift-cloud-ingress-operator",
                        "openshift-cluster-csi-drivers",
                        "openshift-cluster-machine-approver",
                        "openshift-cluster-node-tuning-operator",
                        "openshift-cluster-samples-operator",
                        "openshift-cluster-storage-operator",
                        "openshift-cluster-version",
                        "openshift-codeready-workspaces",
                        "openshift-config",
                        "openshift-config-managed",
                        "openshift-config-operator",
                        "openshift-console",
                        "openshift-console-operator",
                        "openshift-console-user-settings",
                        "openshift-controller-manager",
                        "openshift-controller-manager-operator",
                        "openshift-custom-domains-operator",
                        "openshift-customer-monitoring",
                        "openshift-dns",
                        "openshift-dns-operator",
                        "openshift-etcd",
                        "openshift-etcd-operator",
                        "openshift-host-network",
                        "openshift-image-registry",
                        "openshift-infra",
                        "openshift-ingress",
                        "openshift-ingress-canary",
                        "openshift-ingress-operator",
                        "openshift-insights",
                        "openshift-kni-infra",
                        "openshift-kube-apiserver",
                        "openshift-kube-apiserver-operator",
                        "openshift-kube-controller-manager",
                        "openshift-kube-controller-manager-operator",
                        "openshift-kube-scheduler",
                        "openshift-kube-scheduler-operator",
                        "openshift-kube-storage-version-migrator",
                        "openshift-kube-storage-version-migrator-operator",
                        "openshift-kubevirt-infra",
                        "openshift-logging",
                        "openshift-machine-api",
                        "openshift-machine-config-operator",
                        "openshift-managed-upgrade-operator",
                        "openshift-marketplace",
                        "openshift-monitoring",
                        "openshift-multus",
                        "openshift-must-gather-operator",
                        "openshift-network-diagnostics",
                        "openshift-network-operator",
                        "openshift-node",
                        "openshift-oauth-apiserver",
                        "openshift-openstack-infra",
                        "openshift-operator-lifecycle-manager",
                        "openshift-operators",
                        "openshift-operators-redhat",
                        "openshift-osd-metrics",
                        "openshift-ovirt-infra",
                        "openshift-rbac-permissions",
                        "openshift-route-monitor-operator",
                        "openshift-sdn",
                        "openshift-security",
                        "openshift-service-ca",
                        "openshift-service-ca-operator",
                        "openshift-splunk-forwarder-operator",
                        "openshift-sre-pruning",
                        "openshift-sre-sshd",
                        "openshift-strimzi",
                        "openshift-user-workload-monitoring",
                        "openshift-validation-webhook",
                        "openshift-velero",
                        "openshift-vsphere-infra",
                        "openshift-addon-operator",
                        "openshift-backplane-managed-scripts",
                        "openshift-cloud-controller-manager-operator",
                        "openshift-cloud-network-config-controller",
                        "openshift-deployment-validation-operator",
                        "openshift-managed-node-metadata-operator",
                        "openshift-ocm-agent-operator",
                        "openshift-ovn-kubernetes",
                        "openshift-azure-operator",
                        "openshift-azure-loggi",
                        "openshift-cloud-controller-manager",
                        "openshift-nutanix-infra",
                        "openshift-route-controller-manager",
                        "dedicated-admin",
                        "default",
                        "openshift-aws-vpce-operator",
                        "openshift-backplane-csa",
                        "openshift-backplane-cse",
                        "openshift-backplane-csm",
                        "openshift-backplane-mobb",
                        "openshift-backplane-tam",
                        "openshift-cluster-api",
                        "openshift-compliance",
                        "openshift-compliance-monkey",
                        "openshift-container-security",
                        "openshift-file-integrity",
                        "openshift-observability-operator",
                        "openshift-platform-operators",
                        "openshift-scanning",
                        "openshift-suricata"
                      ]
                    },
                    "inventoryCollection": {
                      "enabled": true
                    },
                    "malwareScanning": {
                      "enabled": true
                    },
                    "runtimeSecurity": {
                      "enabled": true
                    },
                    "secretScanning": {
                      "enabled": true
                    },
                    "vulnerabilityScanning": {
                      "enabled": true
                    }
                  }
                }
              },
              {
                "apiVersion": "container-security.trendmicro.com/v1alpha1",
                "kind": "VisionOneContainerSecurity",
                "metadata": {
                  "name": "visionone-containersecurity-sample",
                  "namespace": "trendmicro-system"
                },
                "spec": {
                  "visionOne": {
                    "bootstrapToken": "",
                    "clusterRegistrationKey": false,
                    "endpoint": "https://api.xdr.trendmicro.com/external/v2/direct/vcs/external/vcs",
                    "exclusion": {
                      "namespaces": [
                        "kube-system",
                        "openshift",
                        "openshift-apiserver",
                        "openshift-apiserver-operator",
                        "openshift-aqua",
                        "openshift-authentication",
                        "openshift-authentication-operator",
                        "openshift-backplane",
                        "openshift-backplane-cee",
                        "openshift-backplane-srep",
                        "openshift-build-test",
                        "openshift-cloud-credential-operator",
                        "openshift-cloud-ingress-operator",
                        "openshift-cluster-csi-drivers",
                        "openshift-cluster-machine-approver",
                        "openshift-cluster-node-tuning-operator",
                        "openshift-cluster-samples-operator",
                        "openshift-cluster-storage-operator",
                        "openshift-cluster-version",
                        "openshift-codeready-workspaces",
                        "openshift-config",
                        "openshift-config-managed",
                        "openshift-config-operator",
                        "openshift-console",
                        "openshift-console-operator",
                        "openshift-console-user-settings",
                        "openshift-controller-manager",
                        "openshift-controller-manager-operator",
                        "openshift-custom-domains-operator",
                        "openshift-customer-monitoring",
                        "openshift-dns",
                        "openshift-dns-operator",
                        "openshift-etcd",
                        "openshift-etcd-operator",
                        "openshift-host-network",
                        "openshift-image-registry",
                        "openshift-infra",
                        "openshift-ingress",
                        "openshift-ingress-canary",
                        "openshift-ingress-operator",
                        "openshift-insights",
                        "openshift-kni-infra",
                        "openshift-kube-apiserver",
                        "openshift-kube-apiserver-operator",
                        "openshift-kube-controller-manager",
                        "openshift-kube-controller-manager-operator",
                        "openshift-kube-scheduler",
                        "openshift-kube-scheduler-operator",
                        "openshift-kube-storage-version-migrator",
                        "openshift-kube-storage-version-migrator-operator",
                        "openshift-kubevirt-infra",
                        "openshift-logging",
                        "openshift-machine-api",
                        "openshift-machine-config-operator",
                        "openshift-managed-upgrade-operator",
                        "openshift-marketplace",
                        "openshift-monitoring",
                        "openshift-multus",
                        "openshift-must-gather-operator",
                        "openshift-network-diagnostics",
                        "openshift-network-operator",
                        "openshift-node",
                        "openshift-oauth-apiserver",
                        "openshift-openstack-infra",
                        "openshift-operator-lifecycle-manager",
                        "openshift-operators",
                        "openshift-operators-redhat",
                        "openshift-osd-metrics",
                        "openshift-ovirt-infra",
                        "openshift-rbac-permissions",
                        "openshift-route-monitor-operator",
                        "openshift-sdn",
                        "openshift-security",
                        "openshift-service-ca",
                        "openshift-service-ca-operator",
                        "openshift-splunk-forwarder-operator",
                        "openshift-sre-pruning",
                        "openshift-sre-sshd",
                        "openshift-strimzi",
                        "openshift-user-workload-monitoring",
                        "openshift-validation-webhook",
                        "openshift-velero",
                        "openshift-vsphere-infra",
                        "openshift-addon-operator",
                        "openshift-backplane-managed-scripts",
                        "openshift-cloud-controller-manager-operator",
                        "openshift-cloud-network-config-controller",
                        "openshift-deployment-validation-operator",
                        "openshift-managed-node-metadata-operator",
                        "openshift-ocm-agent-operator",
                        "openshift-ovn-kubernetes",
                        "openshift-azure-operator",
                        "openshift-azure-loggi",
                        "openshift-cloud-controller-manager",
                        "openshift-nutanix-infra",
                        "openshift-route-controller-manager",
                        "dedicated-admin",
                        "default",
                        "openshift-aws-vpce-operator",
                        "openshift-backplane-csa",
                        "openshift-backplane-cse",
                        "openshift-backplane-csm",
                        "openshift-backplane-mobb",
                        "openshift-backplane-tam",
                        "openshift-cluster-api",
                        "openshift-compliance",
                        "openshift-compliance-monkey",
                        "openshift-container-security",
                        "openshift-file-integrity",
                        "openshift-observability-operator",
                        "openshift-platform-operators",
                        "openshift-scanning",
                        "openshift-suricata"
                      ]
                    },
                    "inventoryCollection": {
                      "enabled": true
                    },
                    "malwareScanning": {
                      "enabled": true
                    },
                    "runtimeSecurity": {
                      "enabled": true
                    },
                    "secretScanning": {
                      "enabled": true
                    },
                    "vulnerabilityScanning": {
                      "enabled": true
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          com.redhat.openshift.versions: v4.12-v4.20
          containerImage: public.ecr.aws/trendmicro/container-security/visionone-containersecurity-operator:v0.0.5
          createdAt: "2025-12-16T17:00:49Z"
          description: Trend Vision One™ Container Security delivers full lifecycle
            protection for containers with real-time threat detection, policy enforcement,
            compliance assurance, and rapid incident response.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: trendmicro-system
          operatorhub.io/ui-metadata-max-k8s-version: "1.26"
          operators.openshift.io/valid-subscription: VisionOneContainerSecurity Subscription
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trendmicro/visionone-container-security-helm
          support: TrendMicro Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trend Vision One™ Container Security delivers full lifecycle
              protection for containers with real-time threat detection, policy enforcement,
              compliance assurance, and rapid incident response.
            displayName: VisionOneContainerSecurity
            kind: VisionOneContainerSecurity
            name: visiononecontainersecurities.container-security.trendmicro.com
            version: v1alpha1
        description: "[Trend Vision One™ Container Security](https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-container-security)
          delivers comprehensive, end-to-end\n protection for containerized workloads
          across OpenShift and Kubernetes environments.\n It continuously monitors
          for threats, vulnerabilities, policy violations, and\n exposed secrets ensuring
          compliance and enabling rapid, automated response. Purpose-built\n for hybrid
          cloud, it instantly isolates compromised containers to prevent lateral\n
          movement and minimize impact. Seamlessly integrating into OpenShift DevSecOps\n
          pipelines, it empowers security teams to enforce policies while enabling
          developers\n to innovate and deploy with confidence without disrupting workflows
          or compromising\n agility.\n\n **Installation**\n \n - Use the recommended
          `trendmicro-system` namespace.\n - Refer to the [Trend Vision One™ Documentation](https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-red-hat-openshift-operator)
          for registration and installation steps.\n"
        displayName: Trend Vision One™ Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trendmicro
        - visionone
        - container-security
        links:
        - name: Documentation
          url: https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-red-hat-openshift-operator
        maintainers:
        - email: support@trendmicro.com
          name: TrendMicro VisionOne Support Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: TrendMicro
          url: trendmicro.com
        relatedImages:
        - public.ecr.aws/trendmicro/container-security/visionone-containersecurity-operator:v0.0.5
        - quay.io/community-operator-pipeline-prod/visionone-containersecurity:0.0.5
        version: 0.0.5
      entries:
      - name: visionone-containersecurity.v0.0.5
        version: 0.0.5
      - name: visionone-containersecurity.v0.0.4
        version: 0.0.4
      - name: visionone-containersecurity.v0.0.3
        version: 0.0.3
      - name: visionone-containersecurity.v0.0.2
        version: 0.0.2
      - name: visionone-containersecurity.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: visionone-containersecurity.v0.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "container-security.trendmicro.com/v1alpha1",
                "kind": "VisionOneContainerSecurity",
                "metadata": {
                  "name": "sample",
                  "namespace": "trendmicro-system"
                },
                "spec": {
                  "visionOne": {
                    "bootstrapToken": "",
                    "clusterRegistrationKey": false,
                    "endpoint": "https://api.xdr.trendmicro.com/external/v2/direct/vcs/external/vcs",
                    "exclusion": {
                      "namespaces": [
                        "kube-system",
                        "openshift",
                        "openshift-apiserver",
                        "openshift-apiserver-operator",
                        "openshift-aqua",
                        "openshift-authentication",
                        "openshift-authentication-operator",
                        "openshift-backplane",
                        "openshift-backplane-cee",
                        "openshift-backplane-srep",
                        "openshift-build-test",
                        "openshift-cloud-credential-operator",
                        "openshift-cloud-ingress-operator",
                        "openshift-cluster-csi-drivers",
                        "openshift-cluster-machine-approver",
                        "openshift-cluster-node-tuning-operator",
                        "openshift-cluster-samples-operator",
                        "openshift-cluster-storage-operator",
                        "openshift-cluster-version",
                        "openshift-codeready-workspaces",
                        "openshift-config",
                        "openshift-config-managed",
                        "openshift-config-operator",
                        "openshift-console",
                        "openshift-console-operator",
                        "openshift-console-user-settings",
                        "openshift-controller-manager",
                        "openshift-controller-manager-operator",
                        "openshift-custom-domains-operator",
                        "openshift-customer-monitoring",
                        "openshift-dns",
                        "openshift-dns-operator",
                        "openshift-etcd",
                        "openshift-etcd-operator",
                        "openshift-host-network",
                        "openshift-image-registry",
                        "openshift-infra",
                        "openshift-ingress",
                        "openshift-ingress-canary",
                        "openshift-ingress-operator",
                        "openshift-insights",
                        "openshift-kni-infra",
                        "openshift-kube-apiserver",
                        "openshift-kube-apiserver-operator",
                        "openshift-kube-controller-manager",
                        "openshift-kube-controller-manager-operator",
                        "openshift-kube-scheduler",
                        "openshift-kube-scheduler-operator",
                        "openshift-kube-storage-version-migrator",
                        "openshift-kube-storage-version-migrator-operator",
                        "openshift-kubevirt-infra",
                        "openshift-logging",
                        "openshift-machine-api",
                        "openshift-machine-config-operator",
                        "openshift-managed-upgrade-operator",
                        "openshift-marketplace",
                        "openshift-monitoring",
                        "openshift-multus",
                        "openshift-must-gather-operator",
                        "openshift-network-diagnostics",
                        "openshift-network-operator",
                        "openshift-node",
                        "openshift-oauth-apiserver",
                        "openshift-openstack-infra",
                        "openshift-operator-lifecycle-manager",
                        "openshift-operators",
                        "openshift-operators-redhat",
                        "openshift-osd-metrics",
                        "openshift-ovirt-infra",
                        "openshift-rbac-permissions",
                        "openshift-route-monitor-operator",
                        "openshift-sdn",
                        "openshift-security",
                        "openshift-service-ca",
                        "openshift-service-ca-operator",
                        "openshift-splunk-forwarder-operator",
                        "openshift-sre-pruning",
                        "openshift-sre-sshd",
                        "openshift-strimzi",
                        "openshift-user-workload-monitoring",
                        "openshift-validation-webhook",
                        "openshift-velero",
                        "openshift-vsphere-infra",
                        "openshift-addon-operator",
                        "openshift-backplane-managed-scripts",
                        "openshift-cloud-controller-manager-operator",
                        "openshift-cloud-network-config-controller",
                        "openshift-deployment-validation-operator",
                        "openshift-managed-node-metadata-operator",
                        "openshift-ocm-agent-operator",
                        "openshift-ovn-kubernetes",
                        "openshift-azure-operator",
                        "openshift-azure-loggi",
                        "openshift-cloud-controller-manager",
                        "openshift-nutanix-infra",
                        "openshift-route-controller-manager",
                        "dedicated-admin",
                        "default",
                        "openshift-aws-vpce-operator",
                        "openshift-backplane-csa",
                        "openshift-backplane-cse",
                        "openshift-backplane-csm",
                        "openshift-backplane-mobb",
                        "openshift-backplane-tam",
                        "openshift-cluster-api",
                        "openshift-compliance",
                        "openshift-compliance-monkey",
                        "openshift-container-security",
                        "openshift-file-integrity",
                        "openshift-observability-operator",
                        "openshift-platform-operators",
                        "openshift-scanning",
                        "openshift-suricata"
                      ]
                    },
                    "inventoryCollection": {
                      "enabled": true
                    },
                    "malwareScanning": {
                      "enabled": true
                    },
                    "runtimeSecurity": {
                      "enabled": true
                    },
                    "secretScanning": {
                      "enabled": true
                    },
                    "vulnerabilityScanning": {
                      "enabled": true
                    }
                  }
                }
              },
              {
                "apiVersion": "container-security.trendmicro.com/v1alpha1",
                "kind": "VisionOneContainerSecurity",
                "metadata": {
                  "name": "visionone-containersecurity-sample",
                  "namespace": "trendmicro-system"
                },
                "spec": {
                  "visionOne": {
                    "bootstrapToken": "",
                    "clusterRegistrationKey": false,
                    "endpoint": "https://api.xdr.trendmicro.com/external/v2/direct/vcs/external/vcs",
                    "exclusion": {
                      "namespaces": [
                        "kube-system",
                        "openshift",
                        "openshift-apiserver",
                        "openshift-apiserver-operator",
                        "openshift-aqua",
                        "openshift-authentication",
                        "openshift-authentication-operator",
                        "openshift-backplane",
                        "openshift-backplane-cee",
                        "openshift-backplane-srep",
                        "openshift-build-test",
                        "openshift-cloud-credential-operator",
                        "openshift-cloud-ingress-operator",
                        "openshift-cluster-csi-drivers",
                        "openshift-cluster-machine-approver",
                        "openshift-cluster-node-tuning-operator",
                        "openshift-cluster-samples-operator",
                        "openshift-cluster-storage-operator",
                        "openshift-cluster-version",
                        "openshift-codeready-workspaces",
                        "openshift-config",
                        "openshift-config-managed",
                        "openshift-config-operator",
                        "openshift-console",
                        "openshift-console-operator",
                        "openshift-console-user-settings",
                        "openshift-controller-manager",
                        "openshift-controller-manager-operator",
                        "openshift-custom-domains-operator",
                        "openshift-customer-monitoring",
                        "openshift-dns",
                        "openshift-dns-operator",
                        "openshift-etcd",
                        "openshift-etcd-operator",
                        "openshift-host-network",
                        "openshift-image-registry",
                        "openshift-infra",
                        "openshift-ingress",
                        "openshift-ingress-canary",
                        "openshift-ingress-operator",
                        "openshift-insights",
                        "openshift-kni-infra",
                        "openshift-kube-apiserver",
                        "openshift-kube-apiserver-operator",
                        "openshift-kube-controller-manager",
                        "openshift-kube-controller-manager-operator",
                        "openshift-kube-scheduler",
                        "openshift-kube-scheduler-operator",
                        "openshift-kube-storage-version-migrator",
                        "openshift-kube-storage-version-migrator-operator",
                        "openshift-kubevirt-infra",
                        "openshift-logging",
                        "openshift-machine-api",
                        "openshift-machine-config-operator",
                        "openshift-managed-upgrade-operator",
                        "openshift-marketplace",
                        "openshift-monitoring",
                        "openshift-multus",
                        "openshift-must-gather-operator",
                        "openshift-network-diagnostics",
                        "openshift-network-operator",
                        "openshift-node",
                        "openshift-oauth-apiserver",
                        "openshift-openstack-infra",
                        "openshift-operator-lifecycle-manager",
                        "openshift-operators",
                        "openshift-operators-redhat",
                        "openshift-osd-metrics",
                        "openshift-ovirt-infra",
                        "openshift-rbac-permissions",
                        "openshift-route-monitor-operator",
                        "openshift-sdn",
                        "openshift-security",
                        "openshift-service-ca",
                        "openshift-service-ca-operator",
                        "openshift-splunk-forwarder-operator",
                        "openshift-sre-pruning",
                        "openshift-sre-sshd",
                        "openshift-strimzi",
                        "openshift-user-workload-monitoring",
                        "openshift-validation-webhook",
                        "openshift-velero",
                        "openshift-vsphere-infra",
                        "openshift-addon-operator",
                        "openshift-backplane-managed-scripts",
                        "openshift-cloud-controller-manager-operator",
                        "openshift-cloud-network-config-controller",
                        "openshift-deployment-validation-operator",
                        "openshift-managed-node-metadata-operator",
                        "openshift-ocm-agent-operator",
                        "openshift-ovn-kubernetes",
                        "openshift-azure-operator",
                        "openshift-azure-loggi",
                        "openshift-cloud-controller-manager",
                        "openshift-nutanix-infra",
                        "openshift-route-controller-manager",
                        "dedicated-admin",
                        "default",
                        "openshift-aws-vpce-operator",
                        "openshift-backplane-csa",
                        "openshift-backplane-cse",
                        "openshift-backplane-csm",
                        "openshift-backplane-mobb",
                        "openshift-backplane-tam",
                        "openshift-cluster-api",
                        "openshift-compliance",
                        "openshift-compliance-monkey",
                        "openshift-container-security",
                        "openshift-file-integrity",
                        "openshift-observability-operator",
                        "openshift-platform-operators",
                        "openshift-scanning",
                        "openshift-suricata"
                      ]
                    },
                    "inventoryCollection": {
                      "enabled": true
                    },
                    "malwareScanning": {
                      "enabled": true
                    },
                    "runtimeSecurity": {
                      "enabled": true
                    },
                    "secretScanning": {
                      "enabled": true
                    },
                    "vulnerabilityScanning": {
                      "enabled": true
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          com.redhat.openshift.versions: v4.12-v4.20
          containerImage: public.ecr.aws/trendmicro/container-security/visionone-containersecurity-operator:v0.0.5
          createdAt: "2025-12-16T17:00:49Z"
          description: Trend Vision One™ Container Security delivers full lifecycle
            protection for containers with real-time threat detection, policy enforcement,
            compliance assurance, and rapid incident response.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: trendmicro-system
          operatorhub.io/ui-metadata-max-k8s-version: "1.26"
          operators.openshift.io/valid-subscription: VisionOneContainerSecurity Subscription
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trendmicro/visionone-container-security-helm
          support: TrendMicro Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trend Vision One™ Container Security delivers full lifecycle
              protection for containers with real-time threat detection, policy enforcement,
              compliance assurance, and rapid incident response.
            displayName: VisionOneContainerSecurity
            kind: VisionOneContainerSecurity
            name: visiononecontainersecurities.container-security.trendmicro.com
            version: v1alpha1
        description: "[Trend Vision One™ Container Security](https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-container-security)
          delivers comprehensive, end-to-end\n protection for containerized workloads
          across OpenShift and Kubernetes environments.\n It continuously monitors
          for threats, vulnerabilities, policy violations, and\n exposed secrets ensuring
          compliance and enabling rapid, automated response. Purpose-built\n for hybrid
          cloud, it instantly isolates compromised containers to prevent lateral\n
          movement and minimize impact. Seamlessly integrating into OpenShift DevSecOps\n
          pipelines, it empowers security teams to enforce policies while enabling
          developers\n to innovate and deploy with confidence without disrupting workflows
          or compromising\n agility.\n\n **Installation**\n \n - Use the recommended
          `trendmicro-system` namespace.\n - Refer to the [Trend Vision One™ Documentation](https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-red-hat-openshift-operator)
          for registration and installation steps.\n"
        displayName: Trend Vision One™ Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trendmicro
        - visionone
        - container-security
        links:
        - name: Documentation
          url: https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-red-hat-openshift-operator
        maintainers:
        - email: support@trendmicro.com
          name: TrendMicro VisionOne Support Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: TrendMicro
          url: trendmicro.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/visionone-containersecurity:0.0.5
        - public.ecr.aws/trendmicro/container-security/visionone-containersecurity-operator:v0.0.5
        version: 0.0.5
      entries:
      - name: visionone-containersecurity.v0.0.5
        version: 0.0.5
      - name: visionone-containersecurity.v0.0.4
        version: 0.0.4
      - name: visionone-containersecurity.v0.0.3
        version: 0.0.3
      - name: visionone-containersecurity.v0.0.2
        version: 0.0.2
      name: stable
    defaultChannel: stable
    packageName: visionone-containersecurity
    provider:
      name: TrendMicro
      url: trendmicro.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: logic-operator-rhel8
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: logic-operator-rhel8.v1.36.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "host/namespace",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          createdAt: "2025-05-26T14:10:15Z"
          description: OpenShift Serverless Logic Kubernetes Operator for deploying
            workflow applications based on the CNCF Serverless Workflow specification
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: openshift-serverless-logic
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kubesmarts/kie-tools
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: Sonata Flow Build
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: Sonata Flow Cluster Platform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: Sonata Flow Platform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: Sonata Flow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          OpenShift Serverless Logic Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification v0.8](https://serverlessworkflow.io/).
        displayName: OpenShift Serverless Logic Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        - workflows
        links:
        - name: Documentation
          url: https://docs.openshift.com/serverless/
        - name: Source Repository
          url: https://github.com/kiegroup/kogito-serverless-operator/
        maintainers:
        - email: serverless-logic-team@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4564ca3dc5bac80d6faddaf94c817fbbc270698a9399d8a21ee1005d85ceda56
        - registry.redhat.io/openshift-serverless-1/logic-operator-bundle@sha256:5fff2717f7b08df2c90a2be7bfb36c27e13be188d23546497ed9ce266f1c03f4
        - registry.redhat.io/openshift-serverless-1/logic-rhel8-operator@sha256:8d3682448ebdac3aeabb2d23842b7e67a252b95f959c408af805037f9728fd3c
        version: 1.36.0
      entries:
      - name: logic-operator-rhel8.v1.36.0
        version: 1.36.0
      - name: logic-operator-rhel8.v1.35.0
        version: 1.35.0
      - name: logic-operator-rhel8.v1.34.0
        version: 1.34.0
      - name: logic-operator-rhel8.v1.33.0
        version: 1.33.0
      name: alpha
    defaultChannel: alpha
    packageName: logic-operator-rhel8
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: numaresources-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: numaresources-operator.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodetopology.openshift.io/v1alpha1",
                "kind": "NUMAResourcesOperator",
                "metadata": {
                  "name": "numaresourcesoperator"
                },
                "spec": {
                  "nodeGroups": [
                    {
                      "machineConfigPoolSelector": {
                        "matchLabels": {
                          "pools.operator.machineconfiguration.openshift.io/worker": ""
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "nodetopology.openshift.io/v1alpha1",
                "kind": "NUMAResourcesScheduler",
                "metadata": {
                  "name": "numaresourcesscheduler"
                },
                "spec": {
                  "imageSpec": "URL_OF_SCHEDULER_IMAGE_FROM_REDHAT_REGISTRY",
                  "logLevel": "Normal",
                  "schedulerName": "topo-aware-scheduler"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-08-08T10:00:51Z"
          features.operators.openshift.io/cnf: "true"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.19.0 <4.20.0'
          operatorframework.io/cluster-monitoring: "true"
          operators.openshift.io/valid-subscription: |-
            [
              "OpenShift Kubernetes Engine",
              "OpenShift Container Platform",
              "OpenShift Platform Plus"
            ]
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NUMAResourcesOperator is the Schema for the numaresourcesoperators
              API
            displayName: NUMA Resources Operator
            kind: NUMAResourcesOperator
            name: numaresourcesoperators.nodetopology.openshift.io
            version: v1
          - description: NUMAResourcesOperator is the Schema for the numaresourcesoperators
              API
            displayName: NUMA Resources Operator
            kind: NUMAResourcesOperator
            name: numaresourcesoperators.nodetopology.openshift.io
            version: v1alpha1
          - description: NUMAResourcesScheduler is the Schema for the numaresourcesschedulers
              API
            displayName: NUMA Aware Scheduler
            kind: NUMAResourcesScheduler
            name: numaresourcesschedulers.nodetopology.openshift.io
            version: v1
          - description: NUMAResourcesScheduler is the Schema for the numaresourcesschedulers
              API
            displayName: NUMA Aware Scheduler
            kind: NUMAResourcesScheduler
            name: numaresourcesschedulers.nodetopology.openshift.io
            version: v1alpha1
        description: NUMA resources exporter operator
        displayName: numaresources-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - RTE
        - NUMA
        links:
        - name: Numaresources Operator
          url: https://github.com/openshift-kni/numaresources-operator
        maintainers:
        - email: fromani@redhat.com
          name: fromani
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/numaresources-operator-bundle@sha256:68958183a9e33d86ca9d4d1cb1d1915952a9e34b5e8823430aeb8acf2d3566c0
        - registry.redhat.io/openshift4/numaresources-rhel9-operator@sha256:4c5e69588adca9d3d0c62b25397190f23243ea2fb15fac8c862ce943197791cc
        version: 4.20.0
      entries:
      - name: numaresources-operator.v4.20.0
        version: 4.20.0
      name: "4.20"
    defaultChannel: "4.20"
    packageName: numaresources-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OpenTelemetry Community
      provider-url: ""
    name: opentelemetry-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opentelemetry-operator.v0.141.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "Instrumentation",
                "metadata": {
                  "name": "instrumentation"
                },
                "spec": {
                  "exporter": {
                    "endpoint": "http://otel-collector-headless:4317"
                  }
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpAMPBridge",
                "metadata": {
                  "name": "opampbridge-sample"
                },
                "spec": {
                  "capabilities": {
                    "AcceptsOpAMPConnectionSettings": true,
                    "AcceptsOtherConnectionSettings": true,
                    "AcceptsRemoteConfig": true,
                    "AcceptsRestartCommand": true,
                    "ReportsEffectiveConfig": true,
                    "ReportsHealth": true,
                    "ReportsOwnLogs": true,
                    "ReportsOwnMetrics": true,
                    "ReportsOwnTraces": true,
                    "ReportsRemoteConfig": true,
                    "ReportsStatus": true
                  },
                  "componentsAllowed": {
                    "exporters": [
                      "debug"
                    ],
                    "processors": [
                      "memory_limiter"
                    ],
                    "receivers": [
                      "otlp"
                    ]
                  },
                  "endpoint": "ws://opamp-server:4320/v1/opamp"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": "receivers:\n  otlp:\n    protocols: \n      grpc: {}\n      http: {}\n\nexporters:\n  debug: {}\n\nservice:\n  pipelines:\n    traces:\n      receivers: [otlp]\n      exporters: [debug]\n"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1beta1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": {
                    "exporters": {
                      "debug": {}
                    },
                    "receivers": {
                      "otlp": {
                        "protocols": {
                          "grpc": {},
                          "http": {}
                        }
                      }
                    },
                    "service": {
                      "pipelines": {
                        "traces": {
                          "exporters": [
                            "debug"
                          ],
                          "receivers": [
                            "otlp"
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          certified: "false"
          containerImage: ghcr.io/open-telemetry/opentelemetry-operator/opentelemetry-operator
          createdAt: "2025-12-05T22:10:57Z"
          description: Provides the OpenTelemetry components, including the Collector
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/open-telemetry/opentelemetry-operator
          support: OpenTelemetry Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instrumentation is the spec for OpenTelemetry instrumentation.
            displayName: OpenTelemetry Instrumentation
            kind: Instrumentation
            name: instrumentations.opentelemetry.io
            version: v1alpha1
          - description: OpAMPBridge is the Schema for the opampbridges API.
            displayName: OpAMP Bridge
            kind: OpAMPBridge
            name: opampbridges.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1beta1
          - description: TargetAllocator is the Schema for the targetallocators API.
            displayName: Target Allocator
            kind: TargetAllocator
            name: targetallocators.opentelemetry.io
            version: v1alpha1
        description: |-
          OpenTelemetry is a collection of tools, APIs, and SDKs. You use it to instrument, generate, collect, and export telemetry data (metrics, logs, and traces) for analysis in order to understand your software's performance and behavior.

          ### Operator features

          * **Sidecar injection** - annotate your pods and let the operator inject a sidecar.
          * **Managed upgrades** - updating the operator will automatically update your OpenTelemetry collectors.
          * **Deployment modes** - your collector can be deployed as sidecar, daemon set, or regular deployment.
          * **Service port management** - the operator detects which ports need to be exposed based on the provided configuration.
        displayName: Community OpenTelemetry Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opentelemetry
        - tracing
        - logging
        - metrics
        - monitoring
        - troubleshooting
        links:
        - name: OpenTelemetry Operator
          url: https://github.com/open-telemetry/opentelemetry-operator
        maintainers:
        - email: jpkroehling@redhat.com
          name: Juraci Paixão Kröhling
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: OpenTelemetry Community
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/opentelemetry-operator@sha256:66a8780dc96bb46056c9682a3608d2328e36832d2958763888ccd802e97d5784
        - ghcr.io/open-telemetry/opentelemetry-operator/opentelemetry-operator:0.141.0
        version: 0.141.0
      entries:
      - name: opentelemetry-operator.v0.141.0
        version: 0.141.0
      - name: opentelemetry-operator.v0.140.0
        version: 0.140.0
      - name: opentelemetry-operator.v0.139.0
        version: 0.139.0
      - name: opentelemetry-operator.v0.138.0
        version: 0.138.0
      - name: opentelemetry-operator.v0.137.0
        version: 0.137.0
      - name: opentelemetry-operator.v0.136.0
        version: 0.136.0
      - name: opentelemetry-operator.v0.135.0
        version: 0.135.0
      - name: opentelemetry-operator.v0.134.0
        version: 0.134.0
      - name: opentelemetry-operator.v0.132.0
        version: 0.132.0
      - name: opentelemetry-operator.v0.131.0
        version: 0.131.0
      - name: opentelemetry-operator.v0.129.1
        version: 0.129.1
      - name: opentelemetry-operator.v0.127.0
        version: 0.127.0
      - name: opentelemetry-operator.v0.126.0
        version: 0.126.0
      - name: opentelemetry-operator.v0.125.0
        version: 0.125.0
      - name: opentelemetry-operator.v0.124.0
        version: 0.124.0
      - name: opentelemetry-operator.v0.123.0
        version: 0.123.0
      - name: opentelemetry-operator.v0.122.0
        version: 0.122.0
      - name: opentelemetry-operator.v0.121.0
        version: 0.121.0
      - name: opentelemetry-operator.v0.120.0
        version: 0.120.0
      - name: opentelemetry-operator.v0.119.0
        version: 0.119.0
      - name: opentelemetry-operator.v0.118.0
        version: 0.118.0
      - name: opentelemetry-operator.v0.117.0
        version: 0.117.0
      - name: opentelemetry-operator.v0.116.0
        version: 0.116.0
      - name: opentelemetry-operator.v0.115.0
        version: 0.115.0
      - name: opentelemetry-operator.v0.114.1
        version: 0.114.1
      - name: opentelemetry-operator.v0.112.0
        version: 0.112.0
      - name: opentelemetry-operator.v0.111.0
        version: 0.111.0
      - name: opentelemetry-operator.v0.110.0
        version: 0.110.0
      - name: opentelemetry-operator.v0.109.0
        version: 0.109.0
      - name: opentelemetry-operator.v0.108.0
        version: 0.108.0
      - name: opentelemetry-operator.v0.107.0
        version: 0.107.0
      - name: opentelemetry-operator.v0.106.0
        version: 0.106.0
      - name: opentelemetry-operator.v0.105.0
        version: 0.105.0
      name: alpha
    defaultChannel: alpha
    packageName: opentelemetry-operator
    provider:
      name: OpenTelemetry Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Managed OpenShift Black Belt
      provider-url: https://github.com/rh-mobb/ocm-operator
    name: ocm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ocm-operator.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ocm.mobb.redhat.com/v1alpha1",
                "kind": "GitLabIdentityProvider",
                "metadata": {
                  "name": "gitlab-sample"
                },
                "spec": {
                  "clientID": "gitlab",
                  "clientSecret": {
                    "name": "gitlab"
                  },
                  "clusterName": "my-cluster",
                  "displayName": "gitlab-sample",
                  "mappingMethod": "claim",
                  "url": "https://gitlab.com"
                }
              },
              {
                "apiVersion": "ocm.mobb.redhat.com/v1alpha1",
                "kind": "LDAPIdentityProvider",
                "metadata": {
                  "name": "ldap-sample"
                },
                "spec": {
                  "bindDN": "CN=test,OU=Users,DC=example,DC=com",
                  "bindPassword": {
                    "name": "test"
                  },
                  "clusterName": "my-cluster",
                  "displayName": "ldap-sample",
                  "mappingMethod": "claim",
                  "url": "ldap://test.example.com:389"
                }
              },
              {
                "apiVersion": "ocm.mobb.redhat.com/v1alpha1",
                "kind": "MachinePool",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "aws": {
                    "spotInstances": {
                      "enabled": false
                    }
                  },
                  "clusterName": "my-cluster",
                  "instanceType": "m5.xlarge",
                  "labels": {
                    "owner": "my-user"
                  },
                  "maximumNodesPerZone": 1,
                  "minimumNodesPerZone": 1,
                  "wait": false
                }
              },
              {
                "apiVersion": "ocm.mobb.redhat.com/v1alpha1",
                "kind": "ROSACluster",
                "metadata": {
                  "name": "rosa-sample"
                },
                "spec": {
                  "accountID": "111111111111",
                  "defaultMachinePool": {
                    "instanceType": "m5.xlarge",
                    "labels": {
                      "owner": "my-owner"
                    },
                    "minimumNodesPerZone": 2
                  },
                  "displayName": "my-cluster",
                  "iam": {
                    "userRole": "arn:aws:iam::111111111111:role/ManagedOpenShift-User-my_user-Role"
                  },
                  "tags": {
                    "owner": "my-owner"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/mobb/ocm-operator:v0.1.0
          createdAt: "2023-06-02T17:32:25Z"
          operatorframework.io/suggested-namespace: ocm-operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-mobb/ocm-operator
          support: Managed Openshift Black Belt
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLabIdentityProvider is the Schema for the gitlabidentityproviders
              API.
            displayName: Git Lab Identity Provider
            kind: GitLabIdentityProvider
            name: gitlabidentityproviders.ocm.mobb.redhat.com
            version: v1alpha1
          - description: LDAPIdentityProvider is the Schema for the ldapidentityproviders
              API.
            displayName: LDAPIdentity Provider
            kind: LDAPIdentityProvider
            name: ldapidentityproviders.ocm.mobb.redhat.com
            version: v1alpha1
          - description: MachinePool is the Schema for the machinepools API.
            displayName: Machine Pool
            kind: MachinePool
            name: machinepools.ocm.mobb.redhat.com
            version: v1alpha1
          - description: ROSACluster is the Schema for the clusters API.
            displayName: ROSACluster
            kind: ROSACluster
            name: rosaclusters.ocm.mobb.redhat.com
            version: v1alpha1
        description: "# Quick Start\n\n## Prerequisites\n\n- [oc](https://docs.openshift.com/container-platform/4.8/cli_reference/openshift_cli/getting-started-cli.html)\n-
          [aws](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)\n-
          [ROSA Cluster (4.12+)](https://mobb.ninja/docs/rosa/sts/)\n\n> **Warning:**\n>
          This is only tested on ROSA, but may work on other Kubernetes and OpenShift
          variants.  It requires\n> an AWS STS-enabled cluster.  Additionally, OpenShift
          versions 4.12+ are recommended, as they \n> enable [CRD CEL validation](https://kubernetes.io/blog/2022/09/23/crd-validation-rules-beta/).
          \ Versions\n> prior to 4.12 provide a lower version of Kubernetes that does
          not enable this feature.  They may \n> work, but provide no input validation
          when submitting custom resources to the cluster.\n\nBefore installing this
          operator, there are a couple secrets that must be created.\n\n1. OCM Token:
          used to authenticate against the OCM API.  The controller will not start
          without\nthis token as it used for all calls into OCM.\n2. AWS Credentials:
          uses an assume role to a role created in the instructions below in order\nto
          access AWS resources.  This is needed for cluster creation.  See \n[Create
          AWS IAM Policies and Roles](#create-aws-iam-policies-and-roles) for more
          details.\n\n> **Note:**\n> Certain custom resources have their own specific
          prerequisites.  Please use `oc explain` \n> or read the docs [here](https://github.com/rh-mobb/ocm-operator/tree/main/docs)
          for more details.\n\n### Create OCM Token Secret\n\n1. Create a namespace
          where you wish to install the operator:\n\n```bash\noc new-project ocm-operator\n```\n\n2.
          Create a secret containing the OCM_TOKEN.  This token can be obtained form
          \nhttps://console.redhat.com/openshift/token and is used by the operator
          to authenticate \nagainst the OCM API.  This token must exist in the same
          namespace that the operator \nis running and be named `ocm-token`.  It also
          expects the key to be called `OCM_TOKEN` \nas the operator is expecting
          this value as an environment variable.\n\n```bash\noc create secret generic
          ocm-token \\\n  --namespace=ocm-operator \\\n  --from-literal=OCM_TOKEN=${MY_OCM_TOKEN}\n```\n\n###
          Create AWS IAM Policies and Roles\n\nThe operator will need to elevate privileges
          in order to perform things like \ncreating the operator-roles for the clusters.
          \ Because of this, the operator \nmust have a specific role created to allow
          it these permissions.\n\n**NOTE:** please understand what you are doing
          if you deviate from the known good \npolicies.  If errors or more stringent
          security lockdowns are found, please submit a PR \nso that we can get this
          fixed.\n\n1. Set `ACCOUNT_ID` environment variable to define your AWS account
          ID:\n\n```bash\nexport ACCOUNT_ID=111111111111\n```\n\n2. Create the permissions
          boundary.  Because the operator needs to create policies and \nroles, the
          boundary ensures that the operator is not allowed to create additional\npermissions
          outside of the defined boundary.  The sample permission set is located \nat
          `test/aws/boundary.json` in this repository:\n\n```bash\nboundary=$(curl
          -s \"https://raw.githubusercontent.com/rh-mobb/ocm-operator/main/test/aws/boundary.json\")\naws
          iam create-policy \\\n  --policy-name \"OCMOperatorBoundary\" \\\n  --policy-document
          \"$boundary\"\n```\n\n3. Create the policy.  This policy sets what the operator
          is allowed to do.  For any \n`iam` permission, the boundary created above
          is used.  The sample permission set is \nlocated at `test/aws/iam_policy.json`
          in this repository:\n\n```bash\npolicy=$(curl -s \"https://raw.githubusercontent.com/rh-mobb/ocm-operator/main/test/aws/iam_policy.json\")\naws
          iam create-policy \\\n  --policy-name \"OCMOperator\" \\\n  --policy-document
          \"$policy\"\n```\n\n4. Create the role using a trust policy and attach the
          previously created role.  The trust \npolicy is located at `test/aws/trust_policy.json`
          in this repository.  Please note that \nthe trust policy requires an OIDC
          configuration.  The OIDC configuration refers to \n**where the operator
          is running, NOT what it is provisioning**:\n\n```bash\ntrust_policy=$(curl
          -s \"https://raw.githubusercontent.com/rh-mobb/ocm-operator/main/test/aws/trust_policy.json\")\naws
          iam create-role \\\n    --role-name OCMOperator \\\n    --assume-role-policy-document
          \"$trust_policy\"\naws iam attach-role-policy \\\n    --role-name OCMOperator
          \\\n    --policy-arn arn:aws:iam::$ACCOUNT_ID:policy/OCMOperator\n```\n\n5.
          Finally, create the secret containing the assume role credentials.  The
          previous steps allow \nthe operator to assume the role you created in the
          previous step with the permissions created \nvia the previous policies.\n\n```bash\ncat
          <<EOF > /tmp/credentials\n[default]\nrole_arn = arn:aws:iam::$ACCOUNT_ID:role/OCMOperator\nweb_identity_token_file
          = /var/run/secrets/openshift/serviceaccount/token\nEOF\n\noc create secret
          generic aws-credentials \\\n  --namespace=ocm-operator \\\n  --from-file=credentials=/tmp/credentials\n```\n\n##
          Install the Operator\n\n```bash\ncat <<EOF | oc apply -f -\napiVersion:
          operators.coreos.com/v1alpha1\nkind: Subscription\nmetadata:\n  name: ocm-operator\n
          \ namespace: ocm-operator\nspec:\n  channel: v0.1\n  installPlanApproval:
          Automatic\n  name: ocm-operator\n  source: community-operators\n  sourceNamespace:
          ocm-operator\n  startingCSV: ocm-operator.v0.1.0\nEOF\n```\n\n## Provision
          Resources\n\nOnce the operator is available and running, you can provision
          any of the \nresources that it manages.  Also note that documentation is
          always available \nonce the operator is installed as well by using the `oc
          explain` command.  For \nexample, `oc explain rosacluster.spec.clusterName`
          will give you detailed documentation \nabout what the field does.\n\nSee
          the following documentation for details:\n\n* [ROSA Clusters](https://github.com/rh-mobb/ocm-operator/blob/main/docs/clusters.md)\n*
          [Machine Pools](https://github.com/rh-mobb/ocm-operator/blob/main/docs/machinepools.md)\n*
          [Identity Providers](https://github.com/rh-mobb/ocm-operator/blob/main/docs/identityproviders.md)\n"
        displayName: OpenShift Cluster Manager Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ocm
        - rosa
        - redhat
        - machinepool
        - mobb
        links:
        - name: OCM Machine Pool Operator
          url: https://github.com/rh-mobb/ocm-operator
        maintainers:
        - email: dscott@redhat.com
          name: Dustin Scott
        maturity: alpha
        provider:
          name: Managed OpenShift Black Belt
          url: https://github.com/rh-mobb/ocm-operator
        relatedImages:
        - quay.io/openshift-community-operators/ocm-operator@sha256:ca6a3b24ca4ecfcab52ee0402e007d6f14b23fa7f3408d740923806989b170e4
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/mobb/ocm-operator:v0.1.0
        version: 0.1.0
      entries:
      - name: ocm-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ocm-operator
    provider:
      name: Managed OpenShift Black Belt
      url: https://github.com/rh-mobb/ocm-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cincinnati-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: update-service-operator.v5.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "updateservice.operator.openshift.io/v1",
                "kind": "UpdateService",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          description: Creates and maintains an OpenShift Update Service instance
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-update-service
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: UpdateService is the Schema for the updateservices API.
            displayName: Update Service
            kind: UpdateService
            name: updateservices.updateservice.operator.openshift.io
            version: v1
        description: |-
          # Use Case
          Running an Update Service instance in a cluster is appealing for offline OpenShift
          clusters or for admins that want to provide their own graph data instead of
          using [https://github.com/openshift/cincinnati-graph-data](https://github.com/openshift/cincinnati-graph-data/).

          # About Update Service
          Update Service uses **Cincinnati** which is an update protocol designed to facilitate
          automatic updates. It describes a particular method for representing transitions between
          releases of a project and allowing a client to perform automatic updates between these
          releases.

          ## Components
          A **Graph Builder** iterates over the release payloads hosted by the
          storage component and builds a DAG of the releases. It is responsible for
          verifying that the graph described by the releases is acyclic and connected.

          A **Policy Engine** is in charge of altering a client's view of the graph
          by applying a set of filters which are defined within the particular Policy
          Engine instance. Both the input to and the output from Policy Engines is a
          graph, allowing multiple Policy Engines to be chained together. The first
          Policy Engine in a chain will fetch its graph from the Graph Builder and the
          last Policy Engine in a chain will serve the modified graph to the client.

          An **Update Service client** is the end consumer of the release payloads. The
          client periodically queries the Policy Engine for updates and applys them if
          available.

          # Query OpenShift's Update Service Endpoint
          $ curl --silent --header 'Accept:application/json' 'https://api.openshift.com/api/upgrades_info/v1/graph?arch=amd64&channel=stable-4.2' | jq '. as $graph | $graph.nodes | map(.version == "4.2.13") | index(true) as $orig | $graph.edges | map(select(.[0] == $orig)[1]) | map($graph.nodes[.])'
        displayName: OpenShift Update Service
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Update Service
        - UpdateService
        - update-service
        - OSUS
        - Cincinnati
        - version
        - upgrade
        links:
        - name: Update Service Operator
          url: https://github.com/openshift/cincinnati-operator
        - name: OpenShift Update Service
          url: https://github.com/openshift/cincinnati
        - name: OpenShift Graph Data
          url: https://github.com/openshift/cincinnati-graph-data
        maintainers:
        - email: aos-team-ota@redhat.com
          name: OpenShift Update Service maintainers
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8@sha256:a9468a662babb272917df92bc9c827535b4b37883edb440b6d2d7c32ffb2145e
        - registry.redhat.io/openshift-update-service/cincinnati-operator-bundle@sha256:50e9c88ca31182c54f9c4bc6682642a5115fa280044e6c125f99626c69d999ad
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8-operator@sha256:759f4de107a5b429933c5e44046ffb4ed75c674aea75440513a6df8fa93a83a3
        version: 5.0.3
      entries:
      - name: update-service-operator.v5.0.3
        version: 5.0.3
      - name: update-service-operator.v5.0.2
        version: 5.0.2
      - name: update-service-operator.v5.0.1
        version: 5.0.1
      - name: update-service-operator.v5.0.0
        version: 5.0.0
      - name: update-service-operator.v4.9.1
        version: 4.9.1
      - name: update-service-operator.v4.9.0
        version: 4.9.0
      name: v1
    defaultChannel: v1
    packageName: cincinnati-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: kubernetes-nmstate-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubernetes-nmstate-operator.4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nmstate.io/v1",
                "kind": "NMState",
                "metadata": {
                  "name": "nmstate"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:b18c8571422372834e54a388f7b826c6b647b24bad46063484adaa5758a8b31d
          createdAt: "2025-08-20T05:45:09Z"
          description: |
            Kubernetes NMState is a declaritive means of configuring NetworkManager.
          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: "true"
          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.skipRange: '>=4.3.0 <4.20.0-202512081147'
          operatorframework.io/suggested-namespace: openshift-nmstate
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/kubernetes-nmstate
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an NMState deployment.
            displayName: NMState
            kind: NMState
            name: nmstates.nmstate.io
            version: v1
        description: A Kubernetes Operator to install Kubernetes NMState
        displayName: Kubernetes NMState Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - nmstate
        - networking
        - NetworkManager
        links:
        - name: Kubernetes Nmstate Operator
          url: https://github.com/nmstate/kubernetes-nmstate
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: GA
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/nmstate-console-plugin-rhel9@sha256:fb2ec4f44752bf8fa661ae34b1b2bda8a34e06468ea7b072dc46a670c95d3729
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:e3a542bff2590c0936aa112dd3e51486101b2b76e1b4a4cc56db83a80d6647f2
        - registry.redhat.io/openshift4/kubernetes-nmstate-operator-bundle@sha256:c6d75810e8565ff5ec92b0429eb2936a381b88d3ba33d918c0b0e39399958c0c
        - registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:b18c8571422372834e54a388f7b826c6b647b24bad46063484adaa5758a8b31d
        version: 4.20.0-202512081147
      entries:
      - name: kubernetes-nmstate-operator.4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: kubernetes-nmstate-operator.4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: kubernetes-nmstate-operator.4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: kubernetes-nmstate-operator.4.20.0-202511110624
        version: 4.20.0-202511110624
      - name: kubernetes-nmstate-operator.4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: kubernetes-nmstate-operator.4.20.0-202510220756
        version: 4.20.0-202510220756
      - name: kubernetes-nmstate-operator.4.20.0-202510151915
        version: 4.20.0-202510151915
      name: stable
    defaultChannel: stable
    packageName: kubernetes-nmstate-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HPE Ezmeral
      provider-url: ""
    name: hpe-ezmeral-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hpe-ezmeral-csi-operator.v1.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ezmeral.hpe.com/v1",
                "kind": "HPEEzmeralCSIDriver",
                "metadata": {
                  "name": "hpeezmeralcsidriver"
                },
                "spec": {
                  "controllerImage": "registry.connect.redhat.com/maprtech/csi-kdfprovisioner@sha256:89a397c26960ba05542ac069e3a47059bced2bc958cfff4aa0f1eb081fab5d42",
                  "nodeImage": "registry.connect.redhat.com/maprtech/csi-kdfplugin@sha256:480b6fb8b2501caa76013c94feac91bef7f9b5ae6ad0b286ec621fd6a9ce4bef",
                  "pullPolicy": "Always"
                }
              },
              {
                "apiVersion": "ezmeral.hpe.com/v1",
                "kind": "HPEEzmeralNFSCSIDriver",
                "metadata": {
                  "name": "hpeezmeralnfscsidriver"
                },
                "spec": {
                  "controllerImage": "registry.connect.redhat.com/maprtech/csi-kdfprovisioner@sha256:89a397c26960ba05542ac069e3a47059bced2bc958cfff4aa0f1eb081fab5d42",
                  "nodeImage": "registry.connect.redhat.com/maprtech/csi-nfsplugin@sha256:35c275363a6949fed56b8ddfe3886ed42a6267fb07271494d8367abbd4d8c822",
                  "pullPolicy": "Always"
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/maprtech/hpe-ezmeral-csi-operator@sha256:82f52179dcd59a1e16f249bcd21f7aae22c09e84f24b479a923fef2adee45c7f
          createdAt: "2022-03-17T12:56:12Z"
          description: A Container Storage Interface (CSI) driver for HPE Ezmeral
            Data Fabric platform. The CSI driver allows you to use HPE Ezmeral Data
            Fabric with your preferred container orchestrator.
          repository: https://github.com/mapr/mapr-csi
          support: HPE Ezmeral Data Fabric
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HPE Ezmeral CSI Driver (FUSE)
            displayName: HPEEzmeralCSIDriver
            kind: HPEEzmeralCSIDriver
            name: hpeezmeralcsidrivers.ezmeral.hpe.com
            version: v1
          - description: HPE Ezmeral CSI Driver (NFS)
            displayName: HPEEzmeralNFSCSIDriver
            kind: HPEEzmeralNFSCSIDriver
            name: hpeezmeralnfscsidrivers.ezmeral.hpe.com
            version: v1
        description: |
          The HPE Ezmeral CSI Operator for Kubernetes packages, deploys, manages, upgrades the HPE Ezmeral CSI Driver on Kubernetes and OpenShift for dynamic provisioning of persistent volumes on HPE Ezmeral Data Fabric platform.
          The HPE Ezmeral CSI Driver for Kubernetes leverages HPE Ezmeral Data Fabric platform to provide scalable and persistent storage for stateful applications. Please refer to our CSI driver [documentation](https://docs.datafabric.hpe.com/home/CSIdriver/csi_overview.html) for full list of supported CSI features.
          ## Installation
          Refer to the HPE Ezmeral CSI Operator for Kubernetes [documentation](https://docs.datafabric.hpe.com/home/CSIdriver/csi_installing_operator.html)
        displayName: HPE Ezmeral Data Fabric CSI Operator for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - HPE
        - HPE Ezmeral
        - HPE Ezmeral Data Fabric
        - Storage
        - FileSystem
        - BlockVolume
        links:
        - name: Documentation
          url: https://docs.datafabric.hpe.com/home/CSIdriver/csi_overview.html
        maintainers:
        - email: ezmeral-csi-support@hpe.com
          name: HPE Ezmeral Data Fabric
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: HPE Ezmeral
        relatedImages:
        - registry.connect.redhat.com/maprtech/csi-kdfprovisioner@sha256:89a397c26960ba05542ac069e3a47059bced2bc958cfff4aa0f1eb081fab5d42
        - registry.connect.redhat.com/maprtech/csi-nfsplugin@sha256:35c275363a6949fed56b8ddfe3886ed42a6267fb07271494d8367abbd4d8c822
        - registry.connect.redhat.com/maprtech/hpe-ezmeral-csi-operator-bundle@sha256:b23ef079d0bcbeaa227a0d759c900c103f97310ad2e00a566a74b100f95a37ff
        - registry.connect.redhat.com/maprtech/hpe-ezmeral-csi-operator@sha256:82f52179dcd59a1e16f249bcd21f7aae22c09e84f24b479a923fef2adee45c7f
        - registry.connect.redhat.com/maprtech/csi-kdfplugin@sha256:480b6fb8b2501caa76013c94feac91bef7f9b5ae6ad0b286ec621fd6a9ce4bef
        version: 1.0.9
      entries:
      - name: hpe-ezmeral-csi-operator.v1.0.9
        version: 1.0.9
      name: stable
    defaultChannel: stable
    packageName: hpe-ezmeral-csi-operator
    provider:
      name: HPE Ezmeral
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: boxboat-github-practice
      provider-url: https://github.com/boxboat-github-practice
    name: github-arc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: github-arc-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "github-practice.boxboat.com/v1alpha1",
                "kind": "ActionsRunnerController",
                "metadata": {
                  "name": "arc-sample"
                },
                "spec": {
                  "authSecret": {
                    "name": "ghauth"
                  },
                  "createRunnerNamespaces": true,
                  "openshift": true,
                  "runnerNamespaces": [
                    "test1",
                    "test2"
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery, OpenShift Optional
          containerImage: ghcr.io/boxboat-github-practice/github-arc-operator:1.1.0
          createdAt: "2023-03-03T20:49:16Z"
          description: Operator for deploying the github actions runner controller
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/boxboat-github-practice/github-arc-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActionsRunnerController is the schema for the ActionsRunnerController
              API
            displayName: Actions Runner Controller
            kind: ActionsRunnerController
            name: actionsrunnercontrollers.github-practice.boxboat.com
            version: v1alpha1
        description: helm based operator for github actions runner controller
        displayName: github-arc-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - github
        - actions
        - boxboat
        - ibm
        - self-hosted
        - runners
        links:
        - name: Github Arc Operator
          url: https://github.com/boxboat-github-practice/github-arc-operator
        - name: Actions Runner Controller
          url: https://github.com/actions/actions-runner-controller
        - name: Boxboat
          url: https://boxboat.com/
        maintainers:
        - email: Michael.McMullen@ibm.com
          name: mbmcmullen27
        maturity: alpha
        provider:
          name: boxboat-github-practice
          url: https://github.com/boxboat-github-practice
        relatedImages:
        - ghcr.io/boxboat-github-practice/github-arc-operator:1.1.0
        - quay.io/openshift-community-operators/github-arc-operator@sha256:d8d97d19cea466c4c240097b79bfb7de90312d937ad4db63f9e90901686e54da
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        version: 1.1.0
      entries:
      - name: github-arc-operator.v1.1.0
        version: 1.1.0
      - name: github-arc-operator.v1.0.4
        version: 1.0.4
      name: alpha
    defaultChannel: alpha
    packageName: github-arc-operator
    provider:
      name: boxboat-github-practice
      url: https://github.com/boxboat-github-practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataStax
      provider-url: ""
    name: cass-operator-community
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cass-operator.v1.23.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cassandra.datastax.com/v1beta1",
                "kind": "CassandraDatacenter",
                "metadata": {
                  "name": "dc1"
                },
                "spec": {
                  "clusterName": "development",
                  "config": {
                    "cassandra-yaml": {
                      "authenticator": "PasswordAuthenticator",
                      "authorizer": "CassandraAuthorizer",
                      "num_tokens": 16,
                      "role_manager": "CassandraRoleManager"
                    },
                    "jvm-server-options": {
                      "initial_heap_size": "1G",
                      "max_heap_size": "1G"
                    }
                  },
                  "managementApiAuth": {
                    "insecure": {}
                  },
                  "podTemplateSpec": {
                    "spec": {
                      "containers": [
                        {
                          "name": "cassandra"
                        }
                      ],
                      "securityContext": {}
                    }
                  },
                  "racks": [
                    {
                      "name": "rack1"
                    },
                    {
                      "name": "rack2"
                    },
                    {
                      "name": "rack3"
                    }
                  ],
                  "resources": {
                    "requests": {
                      "cpu": "1000m",
                      "memory": "2Gi"
                    }
                  },
                  "serverType": "cassandra",
                  "serverVersion": "4.1.2",
                  "size": 3,
                  "storageConfig": {
                    "cassandraDataVolumeClaimSpec": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "10Gi"
                        }
                      },
                      "storageClassName": "server-storage"
                    }
                  }
                }
              },
              {
                "apiVersion": "control.k8ssandra.io/v1alpha1",
                "kind": "CassandraTask",
                "metadata": {
                  "name": "example-cleanup"
                },
                "spec": {
                  "datacenter": {
                    "name": "dc2",
                    "namespace": "cass-operator"
                  },
                  "jobs": [
                    {
                      "command": "cleanup",
                      "name": "cleanup-run"
                    }
                  ]
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database,Big Data,OpenShift Optional
          certified: "true"
          containerImage: cr.k8ssandra.io/k8ssandra/cass-operator:v1.23.2
          createdAt: "2025-03-20"
          description: |
            Simple provisioning, turn-key operations, and automated remediation of Apache Cassandra clusters
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/k8ssandra/cass-operator
          support: DataStax
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CassandraDatacenter is the Schema for the cassandradatacenters
              API
            displayName: Cassandra Datacenter
            kind: CassandraDatacenter
            name: cassandradatacenters.cassandra.datastax.com
            version: v1beta1
          - description: CassandraTask is the Schema for the cassandrajobs API
            displayName: Cassandra Task
            kind: CassandraTask
            name: cassandratasks.control.k8ssandra.io
            version: v1alpha1
        description: "## Apache Cassandra\n\nThe Apache Cassandra database is the
          right choice when you need scalability and\nhigh availability without compromising
          performance. Linear scalability and\nproven fault-tolerance on commodity
          hardware or cloud infrastructure make it the\nperfect platform for mission-critical
          data. Cassandra's support for replicating\nacross multiple datacenters is
          best-in-class, providing lower latency for your\nusers and the peace of
          mind of knowing that you can survive regional outages.\n\n## DataStax Enterprise\n\nThe
          most advanced distribution of Apache Cassandra™ on the market, with the\nenterprise
          functionality needed for serious production systems and backed up and\nsupported
          by the best distributed-experts in the world. It's one platform for\nall
          types of applications anywhere, any cloud, any model: key-value, graph,\ntabular,
          JSON.\n\nDataStax Enterprise is a fully integrated and optimized database,
          with graph,\nanalytics, and search included, all with a unified security
          model. Simply put,\nit's the only database capable of meeting today's demanding
          requirements\n\n## Operator Details\n\n`cass-operator` is designed as a
          modular operator for Apache Cassandra and\nderived  distributions. Apache
          Cassandra is a distributed database consisting of\nmultiple nodes working
          in concert to store data and process queries along a\nnumber of fault domains.
          `cass-operator` has the deployment of a Cassandra\ncluster around the logical
          domain of a datacenter with the `CassandraDatacenter`\ncustom resource.\n
          \   \nUpon submission of one of these resources it handles provisioning
          the underlying\nstateful sets (analogous to C\\* logical racks), services,
          and configuration.\nAdditionally through monitoring pod state via Kubernetes
          callbacks it handles day to day\noperations such as restarting failed processes,
          scaling clusters up, and deploying\nconfiguration changes in a rolling,
          non-disruptive, fashion.\n    \nThis operator is designed to be `Namespace`
          scoped. A single Kubernetes cluster may\nbe running multiple instances of
          this operator, in separate namespaces, to support\na number of C\\* clusters
          and environments. Configuration is simple with the usage of\nYAML based
          overrides in the Custom Resource paired with an `init` container.\n    \nIn
          C\\* clusters ordering and timing of certain operations are important to
          keep the system\nevenly distributed. `cass-operator` takes advantage of
          a sidecar process within the\nmain container to handle the orchestration
          of starting our main C* process."
        displayName: DataStax Kubernetes Operator for Apache Cassandra
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - k8ssandra
        - cass-operator
        - DataStax Enterprise
        - Apache Cassandra
        - DSE
        - C*
        - Cassandra
        links:
        - name: DataStax
          url: https://datastax.com
        - name: Operator GitHub Repo
          url: https://github.com/k8ssandra/cass-operator
        - name: Config Builder GitHub Repo
          url: https://github.com/datastax/cass-config-builder
        - name: Documentation [1]
          url: https://github.com/k8ssandra/cass-operator/tree/master/docs/user
        - name: Documentation [2]
          url: https://docs.datastax.com/en/cass-operator/doc/cass-operator/cassOperatorTOC.html
        maintainers:
        - email: cass-operator@datastax.com
          name: DataStax Operator Team
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: DataStax
        relatedImages:
        - cr.k8ssandra.io/k8ssandra/cass-operator:v1.23.2
        - quay.io/community-operator-pipeline-prod/cass-operator-community@sha256:428effade29fcb3e8981e84f7df945f9bc49fe1a9b56217573db8b387706c26b
        version: 1.23.2
      entries:
      - name: cass-operator.v1.23.2
        version: 1.23.2
      - name: cass-operator.v1.23.1
        version: 1.23.1
      - name: cass-operator.v1.23.0
        version: 1.23.0
      - name: cass-operator.v1.21.1
        version: 1.21.1
      - name: cass-operator.v1.19.1
        version: 1.19.1
      - name: cass-operator.v1.17.1
        version: 1.17.1
      - name: cass-operator.v1.16.0
        version: 1.16.0
      - name: cass-operator.v1.14.0
        version: 1.14.0
      - name: cass-operator.v1.13.0
        version: 1.13.0
      - name: cass-operator.v1.10.4
        version: 1.10.4
      - name: cass-operator.v1.10.1
        version: 1.10.1
      name: stable
    defaultChannel: stable
    packageName: cass-operator-community
    provider:
      name: DataStax
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: marin3r
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: marin3r.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyConfig",
                "metadata": {
                  "name": "envoyconfig-example",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "nodeID": "example",
                  "resources": [
                    {
                      "type": "cluster",
                      "value": {
                        "connect_timeout": "0.01s",
                        "dns_lookup_family": "V4_ONLY",
                        "lb_policy": "ROUND_ROBIN",
                        "load_assignment": {
                          "cluster_name": "example",
                          "endpoints": [
                            {
                              "lb_endpoints": [
                                {
                                  "endpoint": {
                                    "address": {
                                      "socket_address": {
                                        "address": "example",
                                        "port_value": 8080
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        },
                        "name": "example",
                        "type": "STRICT_DNS"
                      }
                    },
                    {
                      "type": "route",
                      "value": {
                        "name": "local",
                        "virtual_hosts": [
                          {
                            "domains": [
                              "*"
                            ],
                            "name": "all",
                            "routes": [
                              {
                                "match": {
                                  "prefix": "/"
                                },
                                "route": {
                                  "cluster": "example"
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "listener",
                      "value": {
                        "address": {
                          "socket_address": {
                            "address": "0.0.0.0",
                            "port_value": 8443
                          }
                        },
                        "filter_chains": [
                          {
                            "filters": [
                              {
                                "name": "envoy.filters.network.http_connection_manager",
                                "typed_config": {
                                  "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager",
                                  "access_log": [
                                    {
                                      "name": "envoy.access_loggers.file",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog",
                                        "path": "/dev/stdout"
                                      }
                                    }
                                  ],
                                  "http_filters": [
                                    {
                                      "name": "envoy.filters.http.router",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router"
                                      }
                                    }
                                  ],
                                  "rds": {
                                    "config_source": {
                                      "ads": {},
                                      "resource_api_version": "V3"
                                    },
                                    "route_config_name": "local"
                                  },
                                  "stat_prefix": "https"
                                }
                              }
                            ],
                            "transport_socket": {
                              "name": "envoy.transport_sockets.tls",
                              "typed_config": {
                                "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext",
                                "common_tls_context": {
                                  "tls_certificate_sds_secret_configs": [
                                    {
                                      "name": "example.default.svc",
                                      "sds_config": {
                                        "ads": {},
                                        "resource_api_version": "V3"
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          }
                        ],
                        "name": "https"
                      }
                    },
                    {
                      "blueprint": "tlsCertificate",
                      "generateFromTlsSecret": "example.default.svc",
                      "type": "secret"
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "DiscoveryService",
                "metadata": {
                  "name": "discoveryservice-example",
                  "namespace": "my-namespace"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyDeployment",
                "metadata": {
                  "name": "envoydeployment-sample",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "discoveryServiceRef": "discoveryservice-example",
                  "envoyConfigRef": "envoyconfig-example",
                  "ports": [
                    {
                      "name": "https",
                      "port": 8443
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking
          certified: "false"
          containerImage: quay.io/3scale/marin3r
          createdAt: "2024-08-05T16:08:25Z"
          description: Lighweight, CRD based Envoy control plane for Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["envoyconfigrevisions.marin3r.3scale.net","discoveryservicecertificates.operator.marin3r.3scale.net"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/3scale-ops/marin3r
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DiscoveryServiceCertificate is an internal resource used
              to create certificates. This resource is used by the DiscoveryService
              controller to create the required certificates for the different components.
              Direct use of DiscoveryServiceCertificate objects is discouraged.
            displayName: DiscoveryServiceCertificate
            kind: DiscoveryServiceCertificate
            name: discoveryservicecertificates.operator.marin3r.3scale.net
            version: v1alpha1
          - description: DiscoveryService represents an envoy discovery service server.
              Only one instance per namespace is currently supported.
            displayName: DiscoveryService
            kind: DiscoveryService
            name: discoveryservices.operator.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfigRevision is an internal resource that stores a
              specific version of an EnvoyConfig resource. EnvoyConfigRevisions are
              automatically created and deleted by the EnvoyConfig controller and
              are not intended to be directly used. Use EnvoyConfig objects instead.
            displayName: EnvoyConfigRevision
            kind: EnvoyConfigRevision
            name: envoyconfigrevisions.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfig holds the configuration for a given envoy nodeID.
              The spec of an EnvoyConfig object holds the Envoy resources that conform
              the desired configuration for the given nodeID and that the discovery
              service will send to any envoy client that identifies itself with that
              nodeID.
            displayName: EnvoyConfig
            kind: EnvoyConfig
            name: envoyconfigs.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyDeployment is a resource to deploy and manage a Kubernetes
              Deployment of Envoy Pods.
            displayName: EnvoyDeployment
            kind: EnvoyDeployment
            name: envoydeployments.operator.marin3r.3scale.net
            version: v1alpha1
        description: |
          MARIN3R implements a control plane to deploy, configure and operate a fleet of envoy instances within a Kubernetes cluster.
          It operates a group of gateways and Pod sidecar containers to provide general purpose functionality required to operate production systems.

          Features:

          * Deploy and manage an Envoy xDS server using the DiscoveryService custom resource.
          * Inject Envoy sidecar containers based on Pod annotations.
          * Deploy Envoy as a Kubernetes Deployment using the EnvoyDeployment custom resource.
          * Dynamic Envoy configuration and re-configuration using the EnvoyConfig custom resource.
          * Use Kubernetes Secrets as certificate sources.
          * Syntactic validation of Envoy configurations.
          * Lifecycle management of Envoy containers (graceful shutdown and connection draining).
          * Self-healing.

          Check the [docs](https://github.com/3scale-ops/marin3r#readme) for more information.

          ## License
          MARIN3R is licensed under the [Apache 2.0 license](https://github.com/3scale/prometheus-exporter-operator/blob/master/LICENSE)
        displayName: MARIN3R
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - envoy
        - discovery
        - controlplane
        - proxy
        - sidecar
        - xds
        - network
        - gateway
        links:
        - name: GitHub
          url: https://github.com/3scale-ops/marin3r
        maintainers:
        - email: 3scale-operations+marin3r@redhat.com
          name: 3scale Operations Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/marin3r:v0.13.1
        - quay.io/community-operator-pipeline-prod/marin3r@sha256:68875b0da5165c5fc0d39b5c079a3706b57879f444dba77f4ed04f4db4f1c664
        version: 0.13.1
      entries:
      - name: marin3r.v0.13.1
        version: 0.13.1
      - name: marin3r.v0.12.3
        version: 0.12.3
      - name: marin3r.v0.11.1
        version: 0.11.1
      - name: marin3r.v0.10.0
        version: 0.10.0
      name: alpha
    - currentCSV: marin3r.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyConfig",
                "metadata": {
                  "name": "envoyconfig-example",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "nodeID": "example",
                  "resources": [
                    {
                      "type": "cluster",
                      "value": {
                        "connect_timeout": "0.01s",
                        "dns_lookup_family": "V4_ONLY",
                        "lb_policy": "ROUND_ROBIN",
                        "load_assignment": {
                          "cluster_name": "example",
                          "endpoints": [
                            {
                              "lb_endpoints": [
                                {
                                  "endpoint": {
                                    "address": {
                                      "socket_address": {
                                        "address": "example",
                                        "port_value": 8080
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        },
                        "name": "example",
                        "type": "STRICT_DNS"
                      }
                    },
                    {
                      "type": "route",
                      "value": {
                        "name": "local",
                        "virtual_hosts": [
                          {
                            "domains": [
                              "*"
                            ],
                            "name": "all",
                            "routes": [
                              {
                                "match": {
                                  "prefix": "/"
                                },
                                "route": {
                                  "cluster": "example"
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "listener",
                      "value": {
                        "address": {
                          "socket_address": {
                            "address": "0.0.0.0",
                            "port_value": 8443
                          }
                        },
                        "filter_chains": [
                          {
                            "filters": [
                              {
                                "name": "envoy.filters.network.http_connection_manager",
                                "typed_config": {
                                  "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager",
                                  "access_log": [
                                    {
                                      "name": "envoy.access_loggers.file",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog",
                                        "path": "/dev/stdout"
                                      }
                                    }
                                  ],
                                  "http_filters": [
                                    {
                                      "name": "envoy.filters.http.router",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router"
                                      }
                                    }
                                  ],
                                  "rds": {
                                    "config_source": {
                                      "ads": {},
                                      "resource_api_version": "V3"
                                    },
                                    "route_config_name": "local"
                                  },
                                  "stat_prefix": "https"
                                }
                              }
                            ],
                            "transport_socket": {
                              "name": "envoy.transport_sockets.tls",
                              "typed_config": {
                                "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext",
                                "common_tls_context": {
                                  "tls_certificate_sds_secret_configs": [
                                    {
                                      "name": "example.default.svc",
                                      "sds_config": {
                                        "ads": {},
                                        "resource_api_version": "V3"
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          }
                        ],
                        "name": "https"
                      }
                    },
                    {
                      "blueprint": "tlsCertificate",
                      "generateFromTlsSecret": "example.default.svc",
                      "type": "secret"
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "DiscoveryService",
                "metadata": {
                  "name": "discoveryservice-example",
                  "namespace": "my-namespace"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyDeployment",
                "metadata": {
                  "name": "envoydeployment-sample",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "discoveryServiceRef": "discoveryservice-example",
                  "envoyConfigRef": "envoyconfig-example",
                  "ports": [
                    {
                      "name": "https",
                      "port": 8443
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking
          certified: "false"
          containerImage: quay.io/3scale/marin3r
          createdAt: "2024-08-05T16:08:25Z"
          description: Lighweight, CRD based Envoy control plane for Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["envoyconfigrevisions.marin3r.3scale.net","discoveryservicecertificates.operator.marin3r.3scale.net"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/3scale-ops/marin3r
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DiscoveryServiceCertificate is an internal resource used
              to create certificates. This resource is used by the DiscoveryService
              controller to create the required certificates for the different components.
              Direct use of DiscoveryServiceCertificate objects is discouraged.
            displayName: DiscoveryServiceCertificate
            kind: DiscoveryServiceCertificate
            name: discoveryservicecertificates.operator.marin3r.3scale.net
            version: v1alpha1
          - description: DiscoveryService represents an envoy discovery service server.
              Only one instance per namespace is currently supported.
            displayName: DiscoveryService
            kind: DiscoveryService
            name: discoveryservices.operator.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfigRevision is an internal resource that stores a
              specific version of an EnvoyConfig resource. EnvoyConfigRevisions are
              automatically created and deleted by the EnvoyConfig controller and
              are not intended to be directly used. Use EnvoyConfig objects instead.
            displayName: EnvoyConfigRevision
            kind: EnvoyConfigRevision
            name: envoyconfigrevisions.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfig holds the configuration for a given envoy nodeID.
              The spec of an EnvoyConfig object holds the Envoy resources that conform
              the desired configuration for the given nodeID and that the discovery
              service will send to any envoy client that identifies itself with that
              nodeID.
            displayName: EnvoyConfig
            kind: EnvoyConfig
            name: envoyconfigs.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyDeployment is a resource to deploy and manage a Kubernetes
              Deployment of Envoy Pods.
            displayName: EnvoyDeployment
            kind: EnvoyDeployment
            name: envoydeployments.operator.marin3r.3scale.net
            version: v1alpha1
        description: |
          MARIN3R implements a control plane to deploy, configure and operate a fleet of envoy instances within a Kubernetes cluster.
          It operates a group of gateways and Pod sidecar containers to provide general purpose functionality required to operate production systems.

          Features:

          * Deploy and manage an Envoy xDS server using the DiscoveryService custom resource.
          * Inject Envoy sidecar containers based on Pod annotations.
          * Deploy Envoy as a Kubernetes Deployment using the EnvoyDeployment custom resource.
          * Dynamic Envoy configuration and re-configuration using the EnvoyConfig custom resource.
          * Use Kubernetes Secrets as certificate sources.
          * Syntactic validation of Envoy configurations.
          * Lifecycle management of Envoy containers (graceful shutdown and connection draining).
          * Self-healing.

          Check the [docs](https://github.com/3scale-ops/marin3r#readme) for more information.

          ## License
          MARIN3R is licensed under the [Apache 2.0 license](https://github.com/3scale/prometheus-exporter-operator/blob/master/LICENSE)
        displayName: MARIN3R
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - envoy
        - discovery
        - controlplane
        - proxy
        - sidecar
        - xds
        - network
        - gateway
        links:
        - name: GitHub
          url: https://github.com/3scale-ops/marin3r
        maintainers:
        - email: 3scale-operations+marin3r@redhat.com
          name: 3scale Operations Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/marin3r:v0.13.1
        - quay.io/community-operator-pipeline-prod/marin3r@sha256:68875b0da5165c5fc0d39b5c079a3706b57879f444dba77f4ed04f4db4f1c664
        version: 0.13.1
      entries:
      - name: marin3r.v0.13.1
        version: 0.13.1
      - name: marin3r.v0.12.3
        version: 0.12.3
      - name: marin3r.v0.11.1
        version: 0.11.1
      - name: marin3r.v0.10.0
        version: 0.10.0
      name: stable
    defaultChannel: stable
    packageName: marin3r
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: kubeturbo
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubeturbo-operator.v8.6.5-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.6.5
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - turbonomic/kubeturbo-operator:8.6.5
        - quay.io/openshift-community-operators/kubeturbo@sha256:0739d5035590cece6d2a573aa1e799b0b0cab8b548a41cc2488cf465486cf4a5
        version: 8.6.5-beta.1
      entries:
      - name: kubeturbo-operator.v8.6.5-beta.1
        version: 8.6.5-beta.1
      - name: kubeturbo-operator.v8.6.0
        version: 8.6.0
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: beta
    - currentCSV: kubeturbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.6
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/kubeturbo@sha256:f7c7a998ce5b4590c80ae301c6e1bd81bb577a54059a8b375c5468aad1f2bf6f
        - turbonomic/kubeturbo-operator:8.6
        version: 8.6.0
      entries:
      - name: kubeturbo-operator.v8.6.0
        version: 8.6.0
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: stable
    - currentCSV: kubeturbo-operator.v8.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.4
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/kubeturbo@sha256:3028579f4909be6b8dcd970e778bc88d0576c76e55b98c886738b8f601cdf4c1
        - turbonomic/kubeturbo-operator:8.4
        version: 8.4.0
      entries:
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: v8.4.0
    - currentCSV: kubeturbo-operator.v8.5.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.5
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - turbonomic/kubeturbo-operator:8.5
        - quay.io/openshift-community-operators/kubeturbo@sha256:e50343879b4c3c4002c5e7ff67f4664df441cf5f239f59fa98b7fddd75516d41
        version: 8.5.0
      entries:
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: v8.5.0
    - currentCSV: kubeturbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.6
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/kubeturbo@sha256:f7c7a998ce5b4590c80ae301c6e1bd81bb577a54059a8b375c5468aad1f2bf6f
        - turbonomic/kubeturbo-operator:8.6
        version: 8.6.0
      entries:
      - name: kubeturbo-operator.v8.6.0
        version: 8.6.0
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: v8.6.0
    defaultChannel: stable
    packageName: kubeturbo
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/lws-operator
    name: leader-worker-set
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: leader-worker-set.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "LeaderWorkerSetOperator",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed",
                  "operatorLogLevel": "Normal"
                }
              }
            ]
          capabilities: Basic Install
          categories: Openshift Optional
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-04-14T08:12:51Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-lws-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          repository: https://github.com/openshift/lws-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: LeaderWorkerSetOperator
            name: leaderworkersetoperators.operator.openshift.io
            version: v1
        description: "Leader Worker Set Operator is based on the [LWS](https://lws.sigs.k8s.io/docs/)
          open source project.\nLeader Worker Set: An API for deploying a group of
          pods as a unit of replication. \nIt aims to address common deployment patterns
          of AI/ML inference workloads, \nespecially multi-host inference workloads
          where the LLM will be sharded and run across multiple devices on multiple
          nodes.\n"
        displayName: Leader Worker Set Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - leader-worker-set
        links:
        - name: Leader Worker Set
          url: https://lws.sigs.k8s.io/docs/overview/
        - name: Operand Source Code
          url: https://github.com/openshift/kubernetes-sigs-lws
        - name: Operator Source Code
          url: https://github.com/openshift/lws-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: Red Hat
          url: https://github.com/openshift/lws-operator
        relatedImages:
        - registry.redhat.io/leader-worker-set/lws-operator-bundle@sha256:f641cf3b2d6659e26eb0ae49c67a3416152a2fbc2f26f490889a2bd169b9ea06
        - registry.redhat.io/leader-worker-set/lws-rhel9-operator@sha256:c202bfa15626262ff22682b64ac57539d28dd35f5960c490f5afea75cef34309
        - registry.redhat.io/leader-worker-set/lws-rhel9@sha256:affb303b1173c273231bb50fef07310b0e220d2f08bfc0aa5912d0825e3e0d4f
        version: 1.0.0
      entries:
      - name: leader-worker-set.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    defaultChannel: stable-v1.0
    packageName: leader-worker-set
    provider:
      name: Red Hat
      url: https://github.com/openshift/lws-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-businessautomation: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: businessautomation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: businessautomation-operator.7.13.5-17
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"app.kiegroup.org/v2","kind":"KieApp","metadata":{"name":"rhpam-trial"},"spec":{"environment":"rhpam-trial"}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/rhpam-7/rhpam-rhel8-operator@sha256:3b4f420def9e5d2c768d5209264bd5f9af6d6a37b22ef9a988a167ff7d9959cf
          createdAt: "2025-09-29 14:49:42"
          description: Deploys and manages Red Hat Process Automation Manager and
            Red Hat Decision Manager environments.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Process Automation
            Manager", "Red Hat Decision Manager"]'
          repository: https://github.com/kiegroup/kie-cloud-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A project prescription running an RHPAM/RHDM environment.
            displayName: KieApp
            kind: KieApp
            name: kieapps.app.kiegroup.org
            version: v2
        description: |-
          Deploys and manages Red Hat Process Automation Manager and Red Hat Decision Manager environments.

          * **Red Hat Process Automation Manager** is a platform for developing containerized microservices and applications that automate business decisions and processes. It includes business process management (BPM), business rules management (BRM), and business resource optimization and complex event processing (CEP) technologies. It also includes a user experience platform to create engaging user interfaces for process and decision services with minimal coding.

          [See more](https://www.redhat.com/en/products/process-automation).
        displayName: Business Automation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kieapp
        - pam
        - decision
        - kie
        - cloud
        - bpm
        - process
        - automation
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-process-automation-manager
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_process_automation_manager/7.13/#category-deploying-red-hat-process-automation-manager-on-openshift
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:3e5d34d689309eaa346b27ed9f0f517199d82eb9410d1bcc5e99dea367e9e242
        - registry.redhat.io/openshift4/ose-cli@sha256:310339cb93bca052f20d897f3fabdd608983e910af19ec18d1c1c67833ee3cb7
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:a3e44e81b1fe4bcbd3c1e1d7dcbd6c4fc24d9eb2458d503675d431b973b9d080
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:4ba07c476202c61c9a2b59414afd6113a55c5c8d73cc4d56281943c81f73fe6b
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:d1e5461db8983a13f98259152dc3cfa2aa677c29f799104190e5cefa83cf97b5
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:4ee8b93e87cb8012b46324a35e3806c6f7a72d6b27292cf5180dcf0f5da6810f
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:bd5c6586b4859dec23ad9530ee98bab33497ab251d544f863fc0af01cbd45101
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef9165b4497da980bd33c935a638179f7e1969dc227668b21cb79b94ecd10e51
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:32912270eba0f2464da88f315bde8bf1ef5bbded814db156811d7a415a458f86
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:7cf8ca0c015621c90d8fc62629ef8711571d5292e2d5ae12a0f541cdd9bd49b9
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:3a901b54a9d35d38b5aca275df2160e3190a874e139fcb606b9969b38284b3dc
        - registry.redhat.io/rhpam-7/rhpam-operator-bundle@sha256:b18c746b4270819be88665dedae34c7635df44d492e989f433515dee0d992384
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:012b24f6713f98358ac044a8b5936502af22370a032cb7fbf17edacbc5e165b7
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:4edac282119898ab1395030eecaee584990064e88fc8e65fb999f19ea2ef3f8b
        - registry.redhat.io/rhpam-7/rhpam-rhel8-operator@sha256:3b4f420def9e5d2c768d5209264bd5f9af6d6a37b22ef9a988a167ff7d9959cf
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:228c6ab5b83e215a98f6eb76250feb2ae3096fd21398c44e5b2701257c9c3493
        - registry.redhat.io/rhscl/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:3fbef82d1c5da8da1606d1a2d5dcfd20000da574737eb32b772d4f0123b179cb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:dc24aa382e02c4ac058d4b824a21f0e90a6259d6d817d0341b2a41809b5daa78
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:a94739f0e52ae43bd73f3218482daf0199b6eda367a2e510ecb7b64fb7ba9942
        version: 7.13.5-17
      entries:
      - name: businessautomation-operator.7.13.5-17
        version: 7.13.5-17
      - name: businessautomation-operator.7.13.5-16
        version: 7.13.5-16
      - name: businessautomation-operator.7.13.5-15
        version: 7.13.5-15
      - name: businessautomation-operator.7.13.5-14
        version: 7.13.5-14
      - name: businessautomation-operator.7.13.5-13
        version: 7.13.5-13
      - name: businessautomation-operator.7.13.5-12
        version: 7.13.5-12
      - name: businessautomation-operator.7.13.5-11
        version: 7.13.5-11
      - name: businessautomation-operator.7.13.5-10
        version: 7.13.5-10
      - name: businessautomation-operator.7.13.5-9
        version: 7.13.5-9
      - name: businessautomation-operator.7.13.5-8
        version: 7.13.5-8
      - name: businessautomation-operator.7.13.5-7
        version: 7.13.5-7
      - name: businessautomation-operator.7.13.5-6
        version: 7.13.5-6
      - name: businessautomation-operator.7.13.5-5
        version: 7.13.5-5
      - name: businessautomation-operator.7.13.5-4
        version: 7.13.5-4
      - name: businessautomation-operator.7.13.5-3
        version: 7.13.5-3
      - name: businessautomation-operator.7.13.5-2
        version: 7.13.5-2
      - name: businessautomation-operator.7.13.5-1
        version: 7.13.5-1
      - name: businessautomation-operator.7.13.4-4
        version: 7.13.4-4
      - name: businessautomation-operator.7.13.4-3
        version: 7.13.4-3
      - name: businessautomation-operator.7.13.4-2
        version: 7.13.4-2
      - name: businessautomation-operator.7.13.4-1
        version: 7.13.4-1
      - name: businessautomation-operator.7.13.3-5
        version: 7.13.3-5
      - name: businessautomation-operator.7.13.3-4
        version: 7.13.3-4
      - name: businessautomation-operator.7.13.3-3
        version: 7.13.3-3
      - name: businessautomation-operator.7.13.3-2
        version: 7.13.3-2
      - name: businessautomation-operator.7.13.3-1
        version: 7.13.3-1
      - name: businessautomation-operator.7.13.2-3
        version: 7.13.2-3
      - name: businessautomation-operator.7.13.2-2
        version: 7.13.2-2
      - name: businessautomation-operator.7.13.2-1
        version: 7.13.2-1
      - name: businessautomation-operator.7.13.1-2
        version: 7.13.1-2
      - name: businessautomation-operator.7.13.1-1
        version: 7.13.1-1
      - name: businessautomation-operator.7.13.0-1
        version: 7.13.0-1
      - name: businessautomation-operator.7.12.1-4
        version: 7.12.1-4
      - name: businessautomation-operator.7.12.1-3
        version: 7.12.1-3
      - name: businessautomation-operator.7.12.1-2
        version: 7.12.1-2
      - name: businessautomation-operator.7.12.1-1
        version: 7.12.1-1
      - name: businessautomation-operator.7.12.0-2
        version: 7.12.0-2
      - name: businessautomation-operator.7.12.0-1
        version: 7.12.0-1
      - name: businessautomation-operator.7.11.1-3
        version: 7.11.1-3
      - name: businessautomation-operator.7.11.1-2
        version: 7.11.1-2
      - name: businessautomation-operator.7.11.1-1
        version: 7.11.1-1
      - name: businessautomation-operator.7.11.0-2
        version: 7.11.0-2
      - name: businessautomation-operator.7.11.0-1
        version: 7.11.0-1
      - name: businessautomation-operator.7.10.1-2
        version: 7.10.1-2
      - name: businessautomation-operator.7.10.1-1
        version: 7.10.1-1
      - name: businessautomation-operator.7.10.0-2
        version: 7.10.0-2
      - name: businessautomation-operator.7.10.0-1
        version: 7.10.0-1
      - name: businessautomation-operator.7.9.1-1
        version: 7.9.1-1
      - name: businessautomation-operator.7.9.0
        version: 7.9.0
      - name: businessautomation-operator.7.9.0-2
        version: 7.9.0-2
      - name: businessautomation-operator.7.8.1
        version: 7.8.1
      - name: businessautomation-operator.7.8.0
        version: 7.8.0
      - name: businessautomation-operator.1.4.1
        version: 1.4.1
      - name: businessautomation-operator.1.4.0
        version: 1.4.0
      - name: businessautomation-operator.1.3.0
        version: 1.3.0
      - name: businessautomation-operator.1.2.1
        version: 1.2.1
      - name: businessautomation-operator.1.2.0
        version: 1.2.0
      name: stable
    defaultChannel: stable
    packageName: businessautomation-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-commons-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: commons-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/commons-operator@sha256:b06a873ea5d18482fbe431031e5cb5b156669a89e7d6844edefe673dc13e6bc4
          description: Stackable Commons Operator
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/commons-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for AuthenticationClassSpec via
              `CustomResource`
            displayName: authenticationclasses.authentication.stackable.tech
            kind: AuthenticationClass
            name: authenticationclasses.authentication.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for ConnectionSpec via `CustomResource`
            displayName: s3connections.s3.stackable.tech
            kind: S3Connection
            name: s3connections.s3.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for BucketSpec via `CustomResource`
            displayName: s3buckets.s3.stackable.tech
            kind: S3Bucket
            name: s3buckets.s3.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Commons Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - commons
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/commons-operator@sha256:b06a873ea5d18482fbe431031e5cb5b156669a89e7d6844edefe673dc13e6bc4
        - registry.connect.redhat.com/stackable/stackable-commons-operator@sha256:2a9de3ee2f44c74604a516a2f4ad7525315ea37b3b7193505c68e065821a9b06
        version: 25.11.0
      entries:
      - name: commons-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-commons-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: GitLab, Inc.
      provider-url: https://gitlab.com
    name: gitlab-runner-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-runner-operator.v1.43.3
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta2",
                "kind": "Runner",
                "metadata": {
                  "name": "gitlab-runner-example",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "gitlabUrl": "https://gitlab.example.com",
                  "token": "runner-token-secret",
                  "tags": "kubernetes,example",
                  "concurrent": 10,
                  "imagePullPolicy": "IfNotPresent"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery, Developer Tools
          containerImage: registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
          createdAt: "2025-11-28T23:15:09Z"
          description: GitLab Runner operator manages lifecycle of GitLab Runner instances
          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: "true"
          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.skipRange: '>=1.11.0 <1.43.3'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: none
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
          support: GitLab, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Runner is the open source project used to run your jobs and
              send the results back to GitLab
            displayName: GitLab Runner
            kind: Runner
            name: runners.apps.gitlab.com
            version: v1beta2
        description: |-
          GitLab Runner is the lightweight, highly-scalable agent that runs your build jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.

              The GitLab Runner operator manages the lifecycle of GitLab Runner in Kubernetes or Openshift clusters. The operator aims to automate the tasks needed to run your CI/CD jobs in your container orchestration platform.

              ## Prerequisites

                For Kubernetes cluster, install cert-manager:

                ```shell
                kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.7.1/cert-manager.yaml
                ```

              ## GitLab Runner version

              This version of **GitLab Runner Operator** ships with **GitLab Runner v18.6.3**.

              To use a different version of **GitLab Runner** change the [`runnerImage` and `helperImage` properties](https://docs.gitlab.com/runner/configuration/configuring_runner_operator.html#operator-properties).

              ## Usage

               To link a GitLab Runner instance to a self-hosted GitLab instance or the hosted [GitLab](https://gitlab.com), you first need to:

               1. Create a secret containing the `runner-token` from your GitLab project.

                ```
                cat > gitlab-runner-secret.yml << EOF
                apiVersion: v1
                kind: Secret
                metadata:
                  name: gitlab-runner-secret
                type: Opaque
                # Only one of the following fields must be set. The Operator will fail to register Runner if both are provided.
                # # NOTE: runner-registration-token is deprecated and will be removed in GitLab 18.0. You should use runner-token instead.
                stringData:
                  runner-token: REPLACE_ME # your project runner token
                  # runner-registration-token: "" # your project runner secret
                EOF
                ```

                ```
                oc apply -f gitlab-runner-secret.yml
                ```

               2. Create the Custom Resource Definition (CRD) file and include the following information. The tags value must be openshift for the job to run.

                 ```
                 cat > gitlab-runner.yml << EOF
                 apiVersion: apps.gitlab.com/v1beta2
                 kind: Runner
                 metadata:
                   name: gitlab-runner
                 spec:
                   gitlabUrl: https://gitlab.example.com
                   buildImage: alpine
                   token: gitlab-runner-secret
                   tags: openshift
                 EOF
                 ```

                ```
                oc apply -f gitlab-runner.yml
                ```

              ## Full documentation

              Visit [Install GitLab Runner Operator](https://docs.gitlab.com/runner/install/operator.html)
        displayName: GitLab Runner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GitLab
        - CI/CD
        - DevOps
        - SAST
        - DAST
        links:
        - name: Gitlab Runner Operator
          url: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
        - name: GitLab Docs
          url: https://docs.gitlab.com
        - name: GitLab Runner
          url: https://docs.gitlab.com/runner/
        - name: GitLab CI/CD
          url: https://docs.gitlab.com/ee/ci/quick_start/
        maintainers:
        - email: support@gitlab.com
          name: Georgi N. Georgiev
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: GitLab, Inc.
          url: https://gitlab.com
        relatedImages:
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/openshift4/ose-kube-rbac-proxy@sha256:bb84ead437042603254efcb703442be8500a9450b10bbcaaee81b48a6ed869ea
        - quay.io/community-operator-pipeline-prod/gitlab-runner-operator@sha256:3b051d097c14fa948cbc7356ca60e1a7fb3ca3e4ce4aeea19a5d8c5b0ffb8c5d
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-helper-ocp@sha256:9c1723a09b7255e8ab13954375e263965de1955d9f1fdc5e64d7610c7495e614
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-ocp@sha256:de78dc586ebc1c1ea6e4be7b8a21e949bc24860051e3eab93f3468751a04ca0a
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
        version: 1.43.3
      entries:
      - name: gitlab-runner-operator.v1.43.3
        version: 1.43.3
      - name: gitlab-runner-operator.v1.43.2
        version: 1.43.2
      - name: gitlab-runner-operator.v1.43.1
        version: 1.43.1
      - name: gitlab-runner-operator.v1.43.0
        version: 1.43.0
      name: stable
    defaultChannel: stable
    packageName: gitlab-runner-operator
    provider:
      name: GitLab, Inc.
      url: https://gitlab.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OnGres
      provider-url: https://ongres.com
    name: stackgres-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stackgres.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - registry.connect.redhat.com/ongres/stackgres-certified-1@sha256:faa7a5d70521507defdbde77666970420dbd8c6241a7144ba1f2e18624256498
        version: 1.18.3
      entries:
      - name: stackgres.v1.18.3
        version: 1.18.3
      - name: stackgres.v1.18.2
        version: 1.18.2
      - name: stackgres.v1.18.1
        version: 1.18.1
      name: candidate
    - currentCSV: stackgres.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - registry.connect.redhat.com/ongres/stackgres-certified-1@sha256:faa7a5d70521507defdbde77666970420dbd8c6241a7144ba1f2e18624256498
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        version: 1.18.3
      entries:
      - name: stackgres.v1.18.3
        version: 1.18.3
      - name: stackgres.v1.18.2
        version: 1.18.2
      - name: stackgres.v1.18.1
        version: 1.18.1
      name: fast
    - currentCSV: stackgres.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - registry.connect.redhat.com/ongres/stackgres-certified-1@sha256:faa7a5d70521507defdbde77666970420dbd8c6241a7144ba1f2e18624256498
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        version: 1.18.3
      entries:
      - name: stackgres.v1.18.3
        version: 1.18.3
      - name: stackgres.v1.18.2
        version: 1.18.2
      - name: stackgres.v1.18.1
        version: 1.18.1
      name: stable
    defaultChannel: stable
    packageName: stackgres-certified
    provider:
      name: OnGres
      url: https://ongres.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-glue-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-glue-controller.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/glue-controller:0.3.0
          createdAt: "2025-11-29T04:47:04Z"
          description: AWS Glue controller is a service controller for managing Glue
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Job represents the state of an AWS glue Job resource.
            displayName: Job
            kind: Job
            name: jobs.glue.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Glue resources in AWS from within your Kubernetes cluster.

          **About Amazon Glue**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Glue
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - glue
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Glue Developer Resources
          url: https://aws.amazon.com/Glue/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: glue maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-glue-controller@sha256:cd4c331b8a043a636f00c854514d1e4f4baff330787d94a8f114e69ab125a227
        - public.ecr.aws/aws-controllers-k8s/glue-controller:0.3.0
        version: 0.3.0
      entries:
      - name: ack-glue-controller.v0.3.0
        version: 0.3.0
      - name: ack-glue-controller.v0.2.2
        version: 0.2.2
      - name: ack-glue-controller.v0.2.1
        version: 0.2.1
      - name: ack-glue-controller.v0.2.0
        version: 0.2.0
      - name: ack-glue-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-glue-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Cisco
      provider-url: ""
    name: aci-containers-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aci-containers-operator.v1.0.11
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"aci.ctrl/v1alpha1","kind":"AciContainersOperator","metadata":{"name":"acicnioperator","namespace":"aci-containers-system"},"spec":{}}]'
          capabilities: Seamless Upgrades
          categories: Networking
          certified: "false"
          containerImage: quay.io/noiro/aci-containers-operator@sha256:73ceb1c96e68c2bd1c85feb495371b460329450d27e73818e76af1916dd412d6
          createdAt: "2025-11-12T12:00:00Z"
          description: The Cisco Application Centric Infrastructure (ACI) Containers
            Operator brings the ACI CNI Plugin and Policy model to Kubernetes clusters.
          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"
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://github.com/noironetworks/aci-containers/blob/master/README.md
          repository: https://github.com/noironetworks/aci-containers
          support: acisupport@cisco.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Aci Containers Operator
            displayName: AciContainersOperator
            kind: AciContainersOperator
            name: acicontainersoperators.aci.ctrl
            version: v1alpha1
        description: |
          ## ACI CNI Plugin

          The Cisco Application Centric Infrastructure (ACI) CNI plugin brings the ACI Networking and Policy model to Kubernetes clusters that reside on-prem or in the cloud. It is fully open source and relies on the Opflex Protocol to program Open vSwitch instances running on the Kubernetes nodes. It provides IP address management, L2/L3 networking, load balancing, and security functions for container workloads.

          The Cisco ACI CNI plugin for the Red Hat OpenShift Container Platform provides a single, programmable network infrastructure that eliminates bottlenecks between OpenShift workloads and the rest of the infrastructure while providing enterprise-grade security and offers flexible micro segmentation possibilities.

          Unified Networking - By extending the integrated overlay of the ACI fabric to OpenShift workloads, Pod and Service endpoints are managed as native ACI network resources at the same level as Bare Metal or Virtual Machines.

          No Egress Router Required - Applications running in OpenShift Pods that need high-bandwidth, low-latency traffic for data transfers external to the cluster suffer the bottleneck imposed by the egress router implementation. Pods can easily connect with other fabric or non-fabric endpoints leveraging the combined hardware and software distributed routing and switching provided by ACI and the ACI CNI plugin.

          Simplified Operations and Enhanced Visibility - Whether policies and networking are defined by the devops or fabric or security admins, the APIC becomes the single source of truth for operations and security governance. Kubernetes workload visibility is provided to Network Operators within their familiar Cisco tools.

          Hardware-assisted Load Balancing - Ingress connections to LoadBalancer-type services using ACI’s Policy Based Redirect technology moves load balancing into the fabric's hardware.

          Granular Security - Security can be implemented by using native NetworkPolicy or by using ACI EPGs and contracts, or both models complementing each other. Network policy of container workloads becomes a shared responsibility while ensuring global compliance and tenant constraints are enforced.
        displayName: Cisco ACI Containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cisco
        - aci
        links:
        - name: Cisco ACI Homepage
          url: https://www.cisco.com/c/en/us/td/docs/switches/datacenter/aci/apic/sw/kb/b_Kubernetes_Integration_with_ACI.html
        maintainers:
        - email: abhishs9@cisco.com
          name: 'Abhishek Sharma '
        - email: sumitnaiksatam@gmail.com
          name: Sumit Naiksatam
        - email: vlella@cisco.com
          name: Vishal Lella
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Cisco
        relatedImages:
        - registry.connect.redhat.com/noiro/aci-operator-bundle@sha256:07ff4b08266ebe5b5f897689a1253afc17805b2ba3e5c7de7b71358709466883
        - quay.io/noiro/acc-provision-operator@sha256:f4d1bff9c15e1ecbc8fec870c191669d3e75e2552d0070bd14908328f0924023
        - quay.io/noiro/aci-containers-operator@sha256:73ceb1c96e68c2bd1c85feb495371b460329450d27e73818e76af1916dd412d6
        version: 1.0.11
      entries:
      - name: aci-containers-operator.v1.0.11
        version: 1.0.11
      name: stable
    defaultChannel: stable
    packageName: aci-containers-operator
    provider:
      name: Cisco
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Harness Inc.
      provider-url: https://harness.io
    name: harness-gitops-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: harness-gitops-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "gitops.harness.io/v1alpha1",
                "kind": "GitopsAgent",
                "metadata": {
                  "annotations": {
                    "containerImage": "harness/gitops-agent-controller@sha256:e4342fb1599538d2b6145e644f1e302b2783a48347c53a1da7ec8e2454df5fde",
                    "createdAt": "2025-07-31T12:11:18Z"
                  },
                  "name": "gitops-agent-sample"
                },
                "spec": {
                  "identity": {
                    "accountIdentifier": "accountIdentifier",
                    "agentIdentifier": "agentIdentifier",
                    "agentName": "agentName"
                  },
                  "replicas": 1,
                  "secrets": {
                    "agentSecret": "agentSecret"
                  },
                  "target": {
                    "http": "https://app.harness.io/gitops/",
                    "protocol": "HTTP1"
                  },
                  "upgrade": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: harness/gitops-agent-controller@sha256:e4342fb1599538d2b6145e644f1e302b2783a48347c53a1da7ec8e2454df5fde
          createdAt: "2025-07-31T06:41:18Z"
          description: Harness operator to manage and provision GitOps Agent
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: Not required
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Harness Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Schema for the Gitops Agents API
            displayName: Gitops Agent
            kind: GitopsAgent
            name: gitopsagents.gitops.harness.io
            version: v1alpha1
        description: |-
          ## Overview
          Harness Gitops Operator manages the full lifecycle for [Gitops Agent](https://developer.harness.io/docs/continuous-delivery/gitops/connect-and-manage/install-a-harness-git-ops-agent/)

          The operator aims to provide the following:

            * Easy configuration and installation of Harness GitOps Agent.
            * Provide seamless upgrades for Harness GitOps Agent.
            * Monitoring and autorecovery for GitOps Agent.

          ## Usage
          Deploy gitops-agent in namespace where operator is installed with basic setup.

          ### Prerequisites:
            * Go to your Harness account and create a new gitops agent
            * Copy account, org and project identifiers
            * Retrieve the agent secret key

          ```
          apiVersion: gitops.harness.io/v1alpha1
          kind: GitopsAgent
          metadata:
            name: gitops-agent-sample
          spec:
            identity:
              accountIdentifier: accountIdentifier
              agentIdentifier: agentIdentifier
              agentName: agentName
            secrets:
              agentSecret: agentSecret
            target:
              http: https://app.harness.io/gitops/
              protocol: HTTP1
            replicas: 1
            upgrade:
              enabled: true
          ```
          **Note:** Gitops Agent require an active ArgoCD instance running in the same namespace where agent is installed.

          See [Harness Documentation](https://developer.harness.io/) for more information.
        displayName: Harness GitOps Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - harness
        - agent
        - cd
        - argocd
        - kubernetes
        links:
        - name: Harness Gitops Operator
          url: https://harness-gitops-operator.domain
        maintainers:
        - email: alexandru.bosii@harness.io
          name: Alexandru Bosii
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Harness Inc.
          url: https://harness.io
        relatedImages:
        - docker.io/harness/gitops-agent@sha256:c9f57338be294d32a73a4cbecf90dfff50f5d36a699f3ec32d962dcb64d8d085
        - harness/gitops-agent-controller@sha256:e4342fb1599538d2b6145e644f1e302b2783a48347c53a1da7ec8e2454df5fde
        - registry.connect.redhat.com/harness/gitops-operator@sha256:f97cdc2245b7133a04235c55540d3a87165e080b1d5b9572a663731f6ccbe597
        version: 0.3.0
      entries:
      - name: harness-gitops-operator.v0.3.0
        version: 0.3.0
      name: alpha
    defaultChannel: alpha
    packageName: harness-gitops-operator
    provider:
      name: Harness Inc.
      url: https://harness.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-secret-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: secret-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          description: Stackable Secret Operator
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/secret-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          This is a Kubernetes operator to provide secret functionality to other Stackable operators. The Stackable Secret Operator
          is part of the Stackable Data Platform, a curated selection of the best open source data apps like Kafka, Druid, Trino or Spark, all
          working together seamlessly. Based on Kubernetes, it runs everywhere - on prem or in the cloud.

          You can install the operator using [stackablectl or helm](https://docs.stackable.tech/home/stable/secret-operator/installation.html).

          NOTE: Make sure you install this operator in a namespace called "stackable-operators". Failing to do so will result in a broken installation.
        displayName: Stackable Secret Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secret
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/secret-operator@sha256:832b8c0b4900c51337ce9d1b631e3aea9bf221bcdbcf7b585b0fedaae77b5c87
        - quay.io/stackable/sig-storage/csi-node-driver-registrar@sha256:ab4a3289015f7de39c4dc987fa6183bcb157294a841c88fa842332ce66b068d8
        - quay.io/stackable/sig-storage/csi-provisioner@sha256:142e0b069dcc100671c91d66d8c973d56ea330b4e11ab79e5eb4fea5c79c6ecb
        - registry.connect.redhat.com/stackable/secret-operator@sha256:9e7955fccd149247741beb9eb6d30f519f262a847a8ba8310c8863a334cd4fee
        version: 25.11.0
      entries:
      - name: secret-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-secret-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: rebellions
      provider-url: https://rebellions.ai/
    name: rbln-npu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rbln-npu-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rebellions.ai/v1beta1",
                "kind": "RBLNClusterPolicy",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "rbln-npu-operator"
                  },
                  "name": "rbln-cluster-policy"
                },
                "spec": {
                  "daemonsets": {},
                  "devicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "rebellions/rbln-metrics-exporter",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "name": "rbln",
                  "npuFeatureDiscovery": {
                    "enabled": true,
                    "image": "rebellions/rbln-npu-feature-discovery",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM_PT",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest",
                    "vfioChecker": {
                      "image": "rebellions/rbln-vfio-manager",
                      "version": "latest"
                    }
                  },
                  "vfioManager": {
                    "enabled": true,
                    "image": "rebellions/rbln-vfio-manager",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "version": "latest"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
          createdAt: "2025-09-10T02:09:06Z"
          description: Deploy and manage Rebellions NPU in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Rebellions
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RBLNClusterPolicy is the Schema for the RBLNClusterPolicys
              API
            displayName: RBLNCluster Policy
            kind: RBLNClusterPolicy
            name: rblnclusterpolicies.rebellions.ai
            version: v1beta1
        description: RBLN Operator automates the deployment and management of RBLN
          NPU drivers, device plugins, CRDs, firmware updates, and health monitoring
          for seamless integration into Kubernetes.
        displayName: RBLN operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rebellions
        - ai
        - AI
        - NPU
        - AI acceleration
        - ML inference
        links:
        - name: Rbln K8s Operator
          url: https://rbln-npu-operator.domain
        maintainers:
        - email: heesu.sung@rebellions.ai
          name: heesu.sung
        - email: mskim@rebellions.ai
          name: minsik.kim
        maturity: stable
        minKubeVersion: 1.30.0
        provider:
          name: rebellions
          url: https://rebellions.ai/
        relatedImages:
        - docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
        - docker.io/rebellions/rbln-vfio-manager@sha256:308baaa997eda83db530c1631e2ce097df79d2efda818ee85b330a0934113048
        - registry.connect.redhat.com/rebellions/rbln-npu-operator-bundle@sha256:f9283bccc4acc424f6abd9bea9d0f64ce7c8940aebccbfc8effcf4d87457b310
        - docker.io/rebellions/k8s-device-plugin@sha256:05ef97d5cb3678f33b833c57a3de1e417a8e4f58c098c8ffc7bc85682a820f86
        - docker.io/rebellions/rbln-metrics-exporter@sha256:f696d75b40e948cad25a1bc14c43e256463acb55477a7787b1be4e7086908240
        - docker.io/rebellions/rbln-npu-feature-discovery@sha256:02ea11356b04e05d2dbbdd7b60286aec239e846e4beb26fdf515f61535b3e885
        version: 0.0.3
      entries:
      - name: rbln-npu-operator.v0.0.3
        version: 0.0.3
      name: candidate
    - currentCSV: rbln-npu-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rebellions.ai/v1beta1",
                "kind": "RBLNClusterPolicy",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "rbln-npu-operator"
                  },
                  "name": "rbln-cluster-policy"
                },
                "spec": {
                  "daemonsets": {},
                  "devicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "rebellions/rbln-metrics-exporter",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "name": "rbln",
                  "npuFeatureDiscovery": {
                    "enabled": true,
                    "image": "rebellions/rbln-npu-feature-discovery",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM_PT",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest",
                    "vfioChecker": {
                      "image": "rebellions/rbln-vfio-manager",
                      "version": "latest"
                    }
                  },
                  "vfioManager": {
                    "enabled": true,
                    "image": "rebellions/rbln-vfio-manager",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "version": "latest"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
          createdAt: "2025-09-10T02:09:06Z"
          description: Deploy and manage Rebellions NPU in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Rebellions
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RBLNClusterPolicy is the Schema for the RBLNClusterPolicys
              API
            displayName: RBLNCluster Policy
            kind: RBLNClusterPolicy
            name: rblnclusterpolicies.rebellions.ai
            version: v1beta1
        description: RBLN Operator automates the deployment and management of RBLN
          NPU drivers, device plugins, CRDs, firmware updates, and health monitoring
          for seamless integration into Kubernetes.
        displayName: RBLN operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rebellions
        - ai
        - AI
        - NPU
        - AI acceleration
        - ML inference
        links:
        - name: Rbln K8s Operator
          url: https://rbln-npu-operator.domain
        maintainers:
        - email: heesu.sung@rebellions.ai
          name: heesu.sung
        - email: mskim@rebellions.ai
          name: minsik.kim
        maturity: stable
        minKubeVersion: 1.30.0
        provider:
          name: rebellions
          url: https://rebellions.ai/
        relatedImages:
        - registry.connect.redhat.com/rebellions/rbln-npu-operator-bundle@sha256:f9283bccc4acc424f6abd9bea9d0f64ce7c8940aebccbfc8effcf4d87457b310
        - docker.io/rebellions/k8s-device-plugin@sha256:05ef97d5cb3678f33b833c57a3de1e417a8e4f58c098c8ffc7bc85682a820f86
        - docker.io/rebellions/rbln-metrics-exporter@sha256:f696d75b40e948cad25a1bc14c43e256463acb55477a7787b1be4e7086908240
        - docker.io/rebellions/rbln-npu-feature-discovery@sha256:02ea11356b04e05d2dbbdd7b60286aec239e846e4beb26fdf515f61535b3e885
        - docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
        - docker.io/rebellions/rbln-vfio-manager@sha256:308baaa997eda83db530c1631e2ce097df79d2efda818ee85b330a0934113048
        version: 0.0.3
      entries:
      - name: rbln-npu-operator.v0.0.3
        version: 0.0.3
      name: fast
    - currentCSV: rbln-npu-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rebellions.ai/v1beta1",
                "kind": "RBLNClusterPolicy",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "rbln-npu-operator"
                  },
                  "name": "rbln-cluster-policy"
                },
                "spec": {
                  "daemonsets": {},
                  "devicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "rebellions/rbln-metrics-exporter",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "name": "rbln",
                  "npuFeatureDiscovery": {
                    "enabled": true,
                    "image": "rebellions/rbln-npu-feature-discovery",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM_PT",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest",
                    "vfioChecker": {
                      "image": "rebellions/rbln-vfio-manager",
                      "version": "latest"
                    }
                  },
                  "vfioManager": {
                    "enabled": true,
                    "image": "rebellions/rbln-vfio-manager",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "version": "latest"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
          createdAt: "2025-09-10T02:09:06Z"
          description: Deploy and manage Rebellions NPU in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Rebellions
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RBLNClusterPolicy is the Schema for the RBLNClusterPolicys
              API
            displayName: RBLNCluster Policy
            kind: RBLNClusterPolicy
            name: rblnclusterpolicies.rebellions.ai
            version: v1beta1
        description: RBLN Operator automates the deployment and management of RBLN
          NPU drivers, device plugins, CRDs, firmware updates, and health monitoring
          for seamless integration into Kubernetes.
        displayName: RBLN operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rebellions
        - ai
        - AI
        - NPU
        - AI acceleration
        - ML inference
        links:
        - name: Rbln K8s Operator
          url: https://rbln-npu-operator.domain
        maintainers:
        - email: heesu.sung@rebellions.ai
          name: heesu.sung
        - email: mskim@rebellions.ai
          name: minsik.kim
        maturity: stable
        minKubeVersion: 1.30.0
        provider:
          name: rebellions
          url: https://rebellions.ai/
        relatedImages:
        - docker.io/rebellions/rbln-metrics-exporter@sha256:f696d75b40e948cad25a1bc14c43e256463acb55477a7787b1be4e7086908240
        - docker.io/rebellions/rbln-npu-feature-discovery@sha256:02ea11356b04e05d2dbbdd7b60286aec239e846e4beb26fdf515f61535b3e885
        - docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
        - docker.io/rebellions/rbln-vfio-manager@sha256:308baaa997eda83db530c1631e2ce097df79d2efda818ee85b330a0934113048
        - registry.connect.redhat.com/rebellions/rbln-npu-operator-bundle@sha256:f9283bccc4acc424f6abd9bea9d0f64ce7c8940aebccbfc8effcf4d87457b310
        - docker.io/rebellions/k8s-device-plugin@sha256:05ef97d5cb3678f33b833c57a3de1e417a8e4f58c098c8ffc7bc85682a820f86
        version: 0.0.3
      entries:
      - name: rbln-npu-operator.v0.0.3
        version: 0.0.3
      name: stable
    defaultChannel: stable
    packageName: rbln-npu-operator
    provider:
      name: rebellions
      url: https://rebellions.ai/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Portworx by PureStorage
      provider-url: ""
    name: portworx-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: portworx-operator.v25.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageCluster",
                "metadata": {
                  "name": "portworx",
                  "namespace": "test-operator",
                  "annotations": {
                    "portworx.io/is-openshift": "true"
                  }
                },
                "spec": {}
              },
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageNode",
                "metadata": {
                  "name": "example",
                  "namespace": "test-operator"
                },
                "spec": {}
              }
            ]
          capabilities: Auto Pilot
          categories: Storage
          certified: "true"
          console.openshift.io/plugins: '["portworx"]'
          containerImage: registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
          createdAt: "2026-01-06T19:58:49Z"
          description: Cloud native storage solution for production workloads
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "core.libopenstorage.org/v1",
              "kind": "StorageCluster",
              "metadata": {
                "name": "portworx",
                "annotations": {
                  "portworx.io/is-openshift": "true"
                }
              }
            }
          support: Portworx, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Storage Cluster installs Portworx in the cluster. It has
              all the necessary configurations to setup and update a Portworx cluster.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.core.libopenstorage.org
            version: v1
          - description: Do not create Storage Node as it is internally created by
              the operator. It represents the status of a Portworx node.
            displayName: Storage Node
            kind: StorageNode
            name: storagenodes.core.libopenstorage.org
            version: v1
        description: |
          Portworx-Enterprise is the most widely-used and reliable cloud-native
          storage solution for production workloads and provides high-availability,
          data protection and security for containerized applications.

          Portworx Enterprise enables you to migrate entire applications, including
          data, between clusters in a single data center or cloud, or between clouds,
          with a single kubectl command.

          The cloud native storage and data management platform that enterprises trust
          to manage data in containers now has an operator which simplifies the install,
          configuration, upgrades and manages the Portworx Enterprise cluster lifecycle.

          Learn more about the Portworx Enterprise
          [the data platform for Kubernetes](https://portworx.com/products/introduction)

          To learn more about the platform features, please visit our
          [product features page](https://portworx.com/products/features)

          ### About Portworx

          Portworx is the solution for running stateful containers in production,
          designed with DevOps in mind. With Portworx, users can manage any database
          or stateful service on any infrastructure using any container scheduler,
          including Kubernetes, Mesosphere DC/OS, and Docker Swarm. Portworx solves
          the five most common problems DevOps teams encounter when running stateful
          services in production: persistence, high availability, data automation,
          security, and support for multiple data stores and infrastructure.

          ### How to install StorageCluster

          To customize your cluster's configuration (specification), use the
          [Spec Generator](https://central.portworx.com/) from PX-Central.

          ### Prerequisite

          Ensure ports 17001-17020 on worker nodes are reachable from master and other worker nodes.

          ### Tutorials

          * [Portworx Enterprise on Openshift](https://portworx.com/openshift)

          * [Stateful applications on Kubernetes](https://docs.portworx.com/portworx-enterprise/concepts/kubernetes-storage-101/applications)

          * [Portworx Enterprise on Kubernetes](https://docs.portworx.com/portworx-install-with-kubernetes)

          * [Kafka on Kubernetes](https://portworx.com/kafka-kubernetes)

          * [Elastisearch on Kubernetes](https://portworx.com/elasticsearch-kubernetes)

          * [PostgreSQL on Kubernetes](https://portworx.com/postgres-kubernetes/)

          * [MongoDB on Kubernetes](https://portworx.com/mongodb-kubernetes/)

          * [Cassandra on Kubernetes](https://portworx.com/cassandra-kubernetes/)

          * [Kubernetes backup and recovery](https://portworx.com/kubernetes-backup/)

          * [Disaster Recovery for Kubernetes](https://portworx.com/kubernetes-disaster-recovery/)

          ### Uninstall

          Deleting the StorageCluster object for Portworx cluster does not stop Portworx
          service running on the nodes, to avoid application downtime.

          To uninstall Portworx completely without wiping the data, you should add the
          following delete strategy to the StorageCluster spec:
          ```
          spec:
            deleteStrategy:
              type: Uninstall
          ```
          **Caution:** To uninstall Portworx and **wipe all the data**, you should use the following
          delete strategy:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndWipe
          ```
          **Note:** Starting with Operator version 25.5.0 and Portworx version 3.5.0, you can also use the following delete strategy
          to uninstall Portworx, **wipe all the data**, and **delete the drives**:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndDelete
          ```
        displayName: Portworx Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - portworx
        - persistent storage
        - storage
        - cloud native
        - open source
        links:
        - name: Product Features
          url: https://portworx.com/products/features
        - name: Documentation
          url: https://docs.portworx.com/portworx-enterprise/platform/openshift
        - name: Support
          url: https://docs.portworx.com/portworx-enterprise/support/contact-support
        - name: Source Code
          url: https://github.com/libopenstorage/operator
        maintainers:
        - email: support@portworx.com
          name: Portworx
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Portworx by PureStorage
        relatedImages:
        - registry.connect.redhat.com/portworx/portworx-certified-bundle@sha256:6864d81f92272c5a9b865211b745170a3ecacfe43d8bd597e91b84e1a3774fa8
        - registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
        version: 25.5.1
      entries:
      - name: portworx-operator.v25.5.1
        version: 25.5.1
      - name: portworx-operator.v25.5.0
        version: 25.5.0
      - name: portworx-operator.v25.4.0
        version: 25.4.0
      - name: portworx-operator.v25.3.1
        version: 25.3.1
      - name: portworx-operator.v25.3.0
        version: 25.3.0
      - name: portworx-operator.v25.2.2
        version: 25.2.2
      - name: portworx-operator.v25.2.1
        version: 25.2.1
      - name: portworx-operator.v25.2.0
        version: 25.2.0
      - name: portworx-operator.v24.2.4
        version: 24.2.4
      - name: portworx-operator.v24.2.3
        version: 24.2.3
      - name: portworx-operator.v24.2.2
        version: 24.2.2
      - name: portworx-operator.v24.2.1
        version: 24.2.1
      - name: portworx-operator.v24.2.0
        version: 24.2.0
      - name: portworx-operator.v24.1.3
        version: 24.1.3
      - name: portworx-operator.v24.1.2
        version: 24.1.2
      - name: portworx-operator.v24.1.1
        version: 24.1.1
      - name: portworx-operator.v24.1.0
        version: 24.1.0
      - name: portworx-operator.v23.10.5
        version: 23.10.5
      - name: portworx-operator.v23.10.4
        version: 23.10.4
      - name: portworx-operator.v23.10.3
        version: 23.10.3
      - name: portworx-operator.v23.10.2
        version: 23.10.2
      - name: portworx-operator.v23.10.1
        version: 23.10.1
      - name: portworx-operator.v23.7.0
        version: 23.7.0
      - name: portworx-operator.v23.5.1
        version: 23.5.1
      - name: portworx-operator.v23.5.0
        version: 23.5.0
      - name: portworx-operator.v23.4.0
        version: 23.4.0
      - name: portworx-operator.v23.3.1
        version: 23.3.1
      - name: portworx-operator.v23.3.0
        version: 23.3.0
      - name: portworx-operator.v1.10.5
        version: 1.10.5
      - name: portworx-operator.v1.10.4
        version: 1.10.4
      - name: portworx-operator.v1.10.3
        version: 1.10.3
      - name: portworx-operator.v1.10.2
        version: 1.10.2
      - name: portworx-operator.v1.10.1
        version: 1.10.1
      - name: portworx-operator.v1.10.0
        version: 1.10.0
      - name: portworx-operator.v1.9.1
        version: 1.9.1
      - name: portworx-operator.v1.9.0
        version: 1.9.0
      - name: portworx-operator.v1.8.1
        version: 1.8.1
      - name: portworx-operator.v1.8.0
        version: 1.8.0
      - name: portworx-operator.v1.7.1
        version: 1.7.1
      - name: portworx-operator.v1.6.1
        version: 1.6.1
      name: alpha
    - currentCSV: portworx-operator.v25.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageCluster",
                "metadata": {
                  "name": "portworx",
                  "namespace": "test-operator",
                  "annotations": {
                    "portworx.io/is-openshift": "true"
                  }
                },
                "spec": {}
              },
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageNode",
                "metadata": {
                  "name": "example",
                  "namespace": "test-operator"
                },
                "spec": {}
              }
            ]
          capabilities: Auto Pilot
          categories: Storage
          certified: "true"
          console.openshift.io/plugins: '["portworx"]'
          containerImage: registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
          createdAt: "2026-01-06T19:58:49Z"
          description: Cloud native storage solution for production workloads
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "core.libopenstorage.org/v1",
              "kind": "StorageCluster",
              "metadata": {
                "name": "portworx",
                "annotations": {
                  "portworx.io/is-openshift": "true"
                }
              }
            }
          support: Portworx, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Storage Cluster installs Portworx in the cluster. It has
              all the necessary configurations to setup and update a Portworx cluster.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.core.libopenstorage.org
            version: v1
          - description: Do not create Storage Node as it is internally created by
              the operator. It represents the status of a Portworx node.
            displayName: Storage Node
            kind: StorageNode
            name: storagenodes.core.libopenstorage.org
            version: v1
        description: |
          Portworx-Enterprise is the most widely-used and reliable cloud-native
          storage solution for production workloads and provides high-availability,
          data protection and security for containerized applications.

          Portworx Enterprise enables you to migrate entire applications, including
          data, between clusters in a single data center or cloud, or between clouds,
          with a single kubectl command.

          The cloud native storage and data management platform that enterprises trust
          to manage data in containers now has an operator which simplifies the install,
          configuration, upgrades and manages the Portworx Enterprise cluster lifecycle.

          Learn more about the Portworx Enterprise
          [the data platform for Kubernetes](https://portworx.com/products/introduction)

          To learn more about the platform features, please visit our
          [product features page](https://portworx.com/products/features)

          ### About Portworx

          Portworx is the solution for running stateful containers in production,
          designed with DevOps in mind. With Portworx, users can manage any database
          or stateful service on any infrastructure using any container scheduler,
          including Kubernetes, Mesosphere DC/OS, and Docker Swarm. Portworx solves
          the five most common problems DevOps teams encounter when running stateful
          services in production: persistence, high availability, data automation,
          security, and support for multiple data stores and infrastructure.

          ### How to install StorageCluster

          To customize your cluster's configuration (specification), use the
          [Spec Generator](https://central.portworx.com/) from PX-Central.

          ### Prerequisite

          Ensure ports 17001-17020 on worker nodes are reachable from master and other worker nodes.

          ### Tutorials

          * [Portworx Enterprise on Openshift](https://portworx.com/openshift)

          * [Stateful applications on Kubernetes](https://docs.portworx.com/portworx-enterprise/concepts/kubernetes-storage-101/applications)

          * [Portworx Enterprise on Kubernetes](https://docs.portworx.com/portworx-install-with-kubernetes)

          * [Kafka on Kubernetes](https://portworx.com/kafka-kubernetes)

          * [Elastisearch on Kubernetes](https://portworx.com/elasticsearch-kubernetes)

          * [PostgreSQL on Kubernetes](https://portworx.com/postgres-kubernetes/)

          * [MongoDB on Kubernetes](https://portworx.com/mongodb-kubernetes/)

          * [Cassandra on Kubernetes](https://portworx.com/cassandra-kubernetes/)

          * [Kubernetes backup and recovery](https://portworx.com/kubernetes-backup/)

          * [Disaster Recovery for Kubernetes](https://portworx.com/kubernetes-disaster-recovery/)

          ### Uninstall

          Deleting the StorageCluster object for Portworx cluster does not stop Portworx
          service running on the nodes, to avoid application downtime.

          To uninstall Portworx completely without wiping the data, you should add the
          following delete strategy to the StorageCluster spec:
          ```
          spec:
            deleteStrategy:
              type: Uninstall
          ```
          **Caution:** To uninstall Portworx and **wipe all the data**, you should use the following
          delete strategy:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndWipe
          ```
          **Note:** Starting with Operator version 25.5.0 and Portworx version 3.5.0, you can also use the following delete strategy
          to uninstall Portworx, **wipe all the data**, and **delete the drives**:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndDelete
          ```
        displayName: Portworx Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - portworx
        - persistent storage
        - storage
        - cloud native
        - open source
        links:
        - name: Product Features
          url: https://portworx.com/products/features
        - name: Documentation
          url: https://docs.portworx.com/portworx-enterprise/platform/openshift
        - name: Support
          url: https://docs.portworx.com/portworx-enterprise/support/contact-support
        - name: Source Code
          url: https://github.com/libopenstorage/operator
        maintainers:
        - email: support@portworx.com
          name: Portworx
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Portworx by PureStorage
        relatedImages:
        - registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
        - registry.connect.redhat.com/portworx/portworx-certified-bundle@sha256:6864d81f92272c5a9b865211b745170a3ecacfe43d8bd597e91b84e1a3774fa8
        version: 25.5.1
      entries:
      - name: portworx-operator.v25.5.1
        version: 25.5.1
      - name: portworx-operator.v25.5.0
        version: 25.5.0
      - name: portworx-operator.v25.4.0
        version: 25.4.0
      - name: portworx-operator.v25.3.1
        version: 25.3.1
      - name: portworx-operator.v25.3.0
        version: 25.3.0
      - name: portworx-operator.v25.2.2
        version: 25.2.2
      - name: portworx-operator.v25.2.1
        version: 25.2.1
      - name: portworx-operator.v25.2.0
        version: 25.2.0
      - name: portworx-operator.v24.2.4
        version: 24.2.4
      - name: portworx-operator.v24.2.3
        version: 24.2.3
      - name: portworx-operator.v24.2.2
        version: 24.2.2
      - name: portworx-operator.v24.2.1
        version: 24.2.1
      - name: portworx-operator.v24.2.0
        version: 24.2.0
      - name: portworx-operator.v24.1.3
        version: 24.1.3
      - name: portworx-operator.v24.1.2
        version: 24.1.2
      - name: portworx-operator.v24.1.1
        version: 24.1.1
      - name: portworx-operator.v24.1.0
        version: 24.1.0
      - name: portworx-operator.v23.10.5
        version: 23.10.5
      - name: portworx-operator.v23.10.4
        version: 23.10.4
      - name: portworx-operator.v23.10.3
        version: 23.10.3
      - name: portworx-operator.v23.10.2
        version: 23.10.2
      - name: portworx-operator.v23.10.1
        version: 23.10.1
      - name: portworx-operator.v23.7.0
        version: 23.7.0
      - name: portworx-operator.v23.5.1
        version: 23.5.1
      - name: portworx-operator.v23.5.0
        version: 23.5.0
      - name: portworx-operator.v23.4.0
        version: 23.4.0
      - name: portworx-operator.v23.3.1
        version: 23.3.1
      - name: portworx-operator.v23.3.0
        version: 23.3.0
      - name: portworx-operator.v1.10.5
        version: 1.10.5
      - name: portworx-operator.v1.10.4
        version: 1.10.4
      - name: portworx-operator.v1.10.3
        version: 1.10.3
      - name: portworx-operator.v1.10.2
        version: 1.10.2
      - name: portworx-operator.v1.10.1
        version: 1.10.1
      - name: portworx-operator.v1.10.0
        version: 1.10.0
      - name: portworx-operator.v1.9.1
        version: 1.9.1
      - name: portworx-operator.v1.9.0
        version: 1.9.0
      - name: portworx-operator.v1.8.1
        version: 1.8.1
      - name: portworx-operator.v1.8.0
        version: 1.8.0
      - name: portworx-operator.v1.7.1
        version: 1.7.1
      - name: portworx-operator.v1.6.1
        version: 1.6.1
      name: stable
    defaultChannel: stable
    packageName: portworx-certified
    provider:
      name: Portworx by PureStorage
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: koku-metrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: koku-metrics-operator.v4.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
                "kind": "CostManagementMetricsConfig",
                "metadata": {
                  "name": "costmanagementmetricscfg-sample-v1beta1"
                },
                "spec": {
                  "authentication": {
                    "type": "token"
                  },
                  "packaging": {
                    "max_reports_to_store": 30,
                    "max_size_MB": 100
                  },
                  "prometheus_config": {
                    "collect_previous_data": true,
                    "context_timeout": 120,
                    "disable_metrics_collection_cost_management": false,
                    "disable_metrics_collection_resource_optimization": false
                  },
                  "source": {
                    "check_cycle": 1440,
                    "create_source": false,
                    "name": ""
                  },
                  "upload": {
                    "upload_cycle": 360,
                    "upload_toggle": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
          createdAt: "2025-10-29T15:49:19Z"
          description: A Golang-based OpenShift Operator that generates and uploads
            OpenShift usage metrics to cost management.
          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: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
              "kind": "CostManagementMetricsConfig",
              "metadata": {
                "name": "costmanagementmetricscfg-sample-v1beta1"
              },
              "spec": {
                "authentication": {
                  "token_url": "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token",
                  "type": "token"
                },
                "api_url": "https://console.redhat.com/",
                "packaging": {
                  "max_reports_to_store": 30,
                  "max_size_MB": 100
                },
                "upload": {
                  "ingress_path": "/api/ingress/v1/upload",
                  "upload_cycle": 360,
                  "upload_toggle": true,
                  "validate_cert": true
                },
                "prometheus_config": {
                  "collect_previous_data": true,
                  "context_timeout": 120,
                  "disable_metrics_collection_cost_management": false,
                  "disable_metrics_collection_resource_optimization": false,
                  "service_address": "https://thanos-querier.openshift-monitoring.svc:9091",
                  "skip_tls_verification": false
                },
                "source": {
                  "check_cycle": 1440,
                  "create_source": false,
                  "name": "",
                  "sources_path": "/api/sources/v1.0/"
                }
              }
            }
          operatorframework.io/suggested-namespace: koku-metrics-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/project-koku/koku-metrics-operator
          support: Cost Management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CostManagementMetricsConfig is the Schema for the costmanagementmetricsconfig
              API
            displayName: Cost Management Metrics Config
            kind: CostManagementMetricsConfig
            name: costmanagementmetricsconfigs.costmanagement-metrics-cfg.openshift.io
            version: v1beta1
        description: |
          # Koku Metrics Operator
          ## Introduction
          The `koku-metrics-operator` is a component of the [cost managment](https://access.redhat.com/documentation/en-us/cost_management_service) service for Openshift. The operator runs on the latest supported versions of Openshift. This operator obtains OpenShift usage data by querying Prometheus every hour to create metric reports that it uploads to Cost Management at [console.redhat.com](https://console.redhat.com) to be processed. For more information, reach out to <costmanagement@redhat.com>.

          This operator is capable of functioning within a disconnected/restricted network (aka air-gapped mode). In this mode, the operator will store the packaged reports for manual retrieval instead of being uploaded to Cost Management. Documentation for installing an operator within a restricted network can be found [here](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html).

          ## Features and Capabilities
          #### Metrics collection:
          The Koku Metrics Operator (`koku-metrics-operator`) collects the metrics required for Cost Management by:
          * Querying Prometheus to gather the necessary metrics for Cost Management.
          * Writing the results of Prometheus queries to CSV report files.
          * Packaging the CSV report files into tarballs.

          #### Additional Capabilities:
          * Resource Optimization metrics collection.
          * The operator can be configured to gather all previous data within the configured retention period or a maximum of 90 days. The default data collection period is the 14 previous days. This setting is only applicable to newly created KokuMetricsConfigs.
          * The operator can be configured to automatically upload the packaged reports to Cost Management through Red Hat Insights Ingress service.
          * The operator can create an integration in console.redhat.com. An integration is required for Cost Management to process the uploaded packages.
          * PersistentVolumeClaim (PVC) configuration: The KokuMetricsConfig CR can accept a PVC definition and the operator will create and mount the PVC. If one is not provided, a default PVC will be created.
          * Restricted network installation: this operator can function on a restricted network. In this mode, the operator stores the packaged reports for manual retrieval.

          ## New in v4.3.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for cost management.

          ## New in v4.2.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for resource optimization.
          * (Bugfix) Fixed custom CA certificate validation and configuration issues.
          * (Bugfix) Fixed issue where ROS queries were missing workload metadata for namespaces labeled only with the legacy `insights_cost_management_optimizations` label.

          ## New in v4.1.0:
          * Enabled gathering and reporting namespace metrics to provide more granular data for resource optimization.
          * Updated CSV report filenames to be more descriptive, replacing the previous generic UID-based names with content-reflective names.
          * Introduced a new generic label, `cost_management_optimizations`, for resource optimization while ensuring backward compatibility with the older `insights_cost_management_optimizations` label.

          ## New in v4.0.0:
          * **Virtual Machine Metrics:** Adds capabilities for collecting metrics and generating reports for running virtual machines within your OpenShift environment.
          * **Progress towards FIPS 140 Compliance:** The operator is using the Go Cryptographic Module v1.0.0 to progress toward FIPS 140 compliance. Although this module is not validated at the time of this release, the operator aims to meet stricter security standards when the module does successfully achieve FIPS validation.
          * **API Name Change:** The Custom Resource Definition (CRD) for configuring the upstream `Koku Metrics Operator` was renamed from `KokuMetricsConfig` to `CostManagementMetricsConfig`.

          ### NOTE:
            * The API name change impacts only users of the upstream (community) Koku Metrics Operator.
            * The downstream (Red Hat-supported) Cost Management Metrics Operator is not impacted by this change and users should continue using their existing configurations.

          **Important Upgrade Instructions:**

            If you are upgrading the upstream Koku Metrics Operator to version 4.0.0 or higher, you must manually migrate your configuration. The operator will no longer recognize existing `KokuMetricsConfig` resources.

            To successfully upgrade and retain your operator's configuration, complete the following steps. You can use the provided `oc` commands replacing the angle brackets (`< >`) with your specific values:

            1. Backup existing configuration (recommended):

               Before you upgrade, retrieve the details of your current `KokuMetricsConfig` instance to help you recreate it with the new API name.

               ```
               oc get kokumetricsconfig -n koku-metrics-operator <your-config-name> -o yaml > koku-metrics-config-backup.yaml
               ```

            2. Delete the previous `KokuMetricsConfig` instance (recommended):

                After the operator is upgraded to `version 4.0.0`, delete any existing `KokuMetricsConfig` resources.

                ```
                oc delete kokumetricsconfig -n koku-metrics-operator <your-config-name>
                ```

            3. Create the new `CostManagementMetricsConfig` instance:

                Using the information from your backup (or a new configuration), create a new `CostManagementMetricsConfig` instance. Adjust the spec section based on your specific needs. For more information about configurations, [refer to the configurable parameters](#configurable-parameters).

            4. Apply your new configuration:

                ```
                oc apply -f <your-costmanagementmetricsconfig-file>.yaml -n koku-metrics-operator
                ```

          ## New in v3.3.2:
          * Leader election settings are now configurable via environment variables. These variables can be modified in the operator [Subscription](https://github.com/operator-framework/operator-lifecycle-manager/blob/5a01f50258003e248bd5630df0837fe0bb0f1cb7/doc/design/subscription-config.md). The values should be specified as durations in seconds in the format `<number-of-seconds>s`. The default values for `LEADER_ELECTION_LEASE_DURATION`, `LEADER_ELECTION_RENEW_DEADLINE`, and `LEADER_ELECTION_RETRY_PERIOD` are '60s', '30s', and '5s', respectively.

            ```
            kind: Subscription
            metadata:
            ...
            spec:
              ...
              config:
                env:
                - name: LEADER_ELECTION_LEASE_DURATION
                  value: "60s"
                - name: LEADER_ELECTION_RENEW_DEADLINE
                  value: "30s"
                - name: LEADER_ELECTION_RETRY_PERIOD
                  value: "5s"
            ```

          ## New in v3.3.1:
          * Optimize memory usage when reading CSV files.

          ## New in v3.3.0:
          * Storage reports now contain `node`, `csi_driver`, and `csi_volume_handle` fields.
          * The PVC capacity is now populated using the `kube_persistentvolume_capacity_bytes` metric instead of `kubelet_volume_stats_capacity_bytes`.
          * To receive resource optimization recommendations for your namespaces, you must now first enable each namespace. To enable a namespace, label it with `insights_cost_management_optimizations='true'`. In the CLI, run:
            ```
              oc label namespace NAMESPACE insights_cost_management_optimizations="true" --overwrite=true
            ```
          * __DEPRECATION NOTICE__: Basic authentication is deprecated and will not be supported beyond December 31, 2024. If the default token authentication method cannot be used, you must switch to [service account](https://console.redhat.com/iam/service-accounts) authentication ([more on creating a service account](https://access.redhat.com/articles/7036194)). Once you have created your service account, follow [this documentation](https://access.redhat.com/documentation/en-us/cost_management_service/1-latest/html-single/integrating_openshift_container_platform_data_into_cost_management/index#service-account-authentication_adding-an-ocp-int) on how to configure your operator to use service account authentication. Service-accounts must also be used if manually uploading payloads to console.redhat.com.

          ## New in v3.2.1:
          * The minimum supported configuration for `upload_cycle` is now 60 (minutes).
          * (Bugfix) many-to-many matching not allowed query fix.
          * (Bugfix) Sequentially collect data during initial install.

          ## New in v3.2.0:
          * Support for amd64, arm64, ppc64le, s390x architectures.
          * add liveness and readiness probes to controller Pod.
          * update pod security settings so that the controller Pod can run in Restricted mode [more info](https://sdk.operatorframework.io/docs/best-practices/pod-security-standards/).

          ## New in v3.1.0:
          * Add service-account authentication type.
          * __Deprecation Notice:__ Basic authentication is deprecated and will be removed in a future version of the operator.

          ## New in v3.0.0:
          * Daily report generation: Operator versions prior to v3.0.0 generated sequential reports. Now, reports are generated starting at 0:00 UTC. Any payloads generated throughout a given day will contain all data starting from 0:00 UTC. Once the next day starts, the previous day's reports are packaged, and the new report again starts at 0:00 UTC for the current day.
          * Failed query retry: In an attempt to prevent missing data, the operator will retry queries from the last successful query time, up to 5 times.

          ## New in v2.0.0:
          * Adds metrics and report generation for resource optimization. This feature will collect additional usage metrics and create a new report in the payload. These metrics are enabled by default, but can be disabled by setting `disable_metrics_collection_resource_optimization` to `true`.
          * Collect all available Prometheus data upon CR creation. This feature only applies to newly created KokuMetricsConfigs. The operator will check the monitoring stack configuration in the `openshift-monitoring` namespace. The operator will use the `retention` period set in the `cluster-monitoring-config` ConfigMap if defined, up to a maximum of 90 days. Otherwise it will fall back to collecting 14 days of data, if available. This data collection may be disabled by setting `collect_previous_data` to `false`. Turning this feature off results in the operator collecting metrics from the time the KokuMetricsConfig is created, forward.

          ## Limitations and Pre-Requisites
          #### Limitations (Potential for metrics data loss)
          * An integration **must** exist in console.redhat.com for an uploaded payload to be processed by Cost Management. The operator sends the payload to the Red Hat Insights Ingress service which usually returns successfully, but the operator does not currently confirm with Cost Management that the payload was processed. After Ingress accepts the uploaded payload, it is deleted from the operator. If the data within the payload is not processed, a gap will be introduced in the usage metrics. Data may be recollected by deleting the `KokuMetricsConfig`, creating a new `KokuMetricsConfig`, and setting `collect_previous_data: true`. This re-collection of data will gather all data stored in Prometheus, up to 90 days.

          **Note** The following limitations are specific to operators configured to run in a restricted network:
          * The `koku-metrics-operator` will not be able to generate new reports if the PVC storage is full. If this occurs, the reports must be manually deleted from the PVC so that the operator can function as normal.
          * The default report retention is 30 reports (about one week's worth of data). The reports must be manually downloaded and uploaded to console.redhat.com every week, or they will be deleted and the data will be lost.

          #### Storage configuration prerequisite
          The operator will attempt to create and use the following PVC when installed:

                volume_claim_template:
                  apiVersion: v1
                  kind: PersistentVolumeClaim
                  metadata:
                    name: koku-metrics-operator-data
                  spec:
                    accessModes:
                      - ReadWriteOnce
                    resources:
                      requests:
                        storage: 10Gi

          If a different PVC should be utilized, a valid PVC should be specified in the KokuMetricsConfig CR as described in the appropriate section below. The PVC to be used may exist already, or the operator will attempt to create it.

          To use the default specification, the follow assumptions must be met:
          1. A default StorageClass is defined.
          2. Dynamic provisioning for that default StorageClass is enabled.

          If these assumptions are not met, the operator will not deploy correctly. In these cases, storage must be manually configured. After configuring storage, a valid PVC template should be supplied in the `volume_claim_template` spec of the KokuMetricsConfig CR.

          ## Configurable parameters:
            * `authentication`:
              * `type: token` -> The authentication method for connecting to `console.redhat.com`. The default and preferred method is `token`. `basic` (deprecated) and `service-account` authentication methods are used when the openshift-config pull-secret does not contain a token for `console.redhat.com`.
              * `secret_name` -> The Secret used by the operator when the authentication type is `basic` (deprecated) or `service-account`. This parameter is required **only if** the authentication type is `basic` (deprecated) or `service-account`.
            * `packaging`:
              * `max_reports_to_store: 30` -> The number of reports to store when configured in air-gapped mode. The default is 30, with a minimum of 1 and no maximum. When the operator is not configured in air-gapped mode, this parameter has no effect. Reports are removed as soon as they are uploaded.
              * `max_size: 100` -> The maximum size for packaged files in Megabytes prior to compression. The default is 100, with a minimum of 1 and maximum of 100.
            * `prometheus_config`:
              * `collect_previous_data: true` -> Toggle for collecting all available data in Prometheus **upon KokuMetricsConfig creation** (This parameter will start to appear in KokuMetricsConfigs that were created prior to v2.0.0 but will not have any effect unless the KokuMetricsConfig is deleted and recreated). The default is `true`. The operator will first look for a `retention` period in the `cluster-monitoring-config` ConfigMap in the `openshift-monitoring` namespace and gather data over this time period up to a maximum of 90 days. If this configuration is not set, the default is 14 days. (New in v2.0.0)
              * `disable_metrics_collection_cost_management: false` -> Toggle for disabling the collection of metrics for Cost Management. The default is false. (New in v2.0.0)
              * `disable_metrics_collection_resource_optimization: false` -> Toggle for disabling the collection of metrics for Resource Optimization. The default is false. (New in v2.0.0)
              * `context_timeout: 120` -> The time in seconds before Prometheus queries timeout due to exceeding context timeout. The default is 120, with a minimum of 10 and maximum of 180.
            * `source`:
              * `name: ''` -> The name of the integration the operator will create in `console.redhat.com`. If the name value is empty, the default intergration name is the **cluster id**.
              * `create_source: false` -> Toggle for whether or not the operator will create the integration in `console.redhat.com`. The default is False. This parameter should be switched to True when an integration does not already exist in `console.redhat.com` for this cluster.
              * `check_cycle: 1440` -> The time in minutes to wait between checking if an integration exists for this cluster. The default is 1440 minutes (24 hrs).
            * `upload`:
              * `upload_cycle: 360` -> The time in minutes between payload uploads. The default is 360 (6 hours), minimum is 60 (1 hour).
              * `upload_toggle: true` -> Toggle to turn upload on or off -> true means upload, false means do not upload (false == air-gapped mode). The default is `true`.
              * `upload_wait` -> The amount of time (in seconds) to pause before uploading a payload. The default is a random number between 0 and 35. This is used to decrease service load, but may be set to `0` if desired.
            * `volume_claim_template` -> see the "Storage configuration prerequisite" section above.

          ## Configure the koku-metrics-operator
          **Note** There are separate instructions for configuring the `koku-metrics-operator` to run in a restricted network.
          ##### Configure authentication
          The default authentication for the operator is `token`. No further steps are required to configure token authentication. If `basic` (deprecated) or `service-account` is the preferred authentication method, a Secret which holds the credentials must be created:
          1. On the left navigation pane, select `Workloads` -> `Secrets` -> select Project: `koku-metrics-operator` -> `Create` -> `Key/Value Secret`
          2. Give the Secret a name and add 2 keys (all lowercase) for the respective authentication type. The values for these keys correspond to console.redhat.com credentials:
              * basic auth (deprecated): `username` and `password`
              * service-account auth: `client_id` and `client_secret`

          3. Select `Create`.
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. For `basic` (deprecated) or `service-account` authentication, edit the following values in the spec:
              * Replace `authentication: type:` with `basic` or `service-account`.
              * Add the `secret_name` field under `authentication`, and set it equal to the name of the authentication Secret that was created above. The spec should look similar to the following:

                  * for basic auth type (deprecated)
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: basic
                  ```

                  * for service-account auth type
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: service-account
                  ```

          3. To configure the koku-metrics-operator to create a cost management integration, edit the following values in the `source` field:
              * Replace the `name` field value with the preferred name of the integration to be created.
              * Replace the `create_source` field value with `true`.

              **Note:** if the integration already exists, replace the empty string value of the `name` field with the existing name, and leave `create_source` as false. This will allow the operator to confirm that the integration exists.

          4. If not specified, the operator will create a default PersistentVolumeClaim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec:

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          5. Select `Create`.

          # Restricted Network Usage (disconnected/air-gapped mode)
          ## Installation
          To install the `koku-metrics-operator` in a restricted network, follow the [olm documentation](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html). The operator is found in the `community-operators` Catalog in the `registry.redhat.io/redhat/community-operator-index:latest` Index. If pruning the index before pushing to the mirrored registry, keep the `koku-metrics-operator` package.

          Within a restricted network, the operator queries prometheus to gather the necessary usage metrics, writes the query results to CSV files, and packages the reports for storage in the PVC. These reports then need to be manually downloaded from the cluster and uploaded to [console.redhat.com](https://console.redhat.com).

          ## Configure the koku-metrics-operator for a restricted network
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. Specify the desired storage. If not specified, the operator will create a default Persistent Volume Claim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec (below is only a template. Any _valid_ `PersistentVolumeClaim` may be defined here):

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      storageClassName: <insert-class-name>
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          3. (Optional) Specify the desired report retention. The operator will retain 30 reports by default. This corresponds to approximately one week's worth of data if using the default packaging cycle. To modify the number of retained reports:
              * Change the `packaging` spec field `max_reports_to_store` to the desired number of reports to retain. Once this max number is reached, the operator will start removing the oldest packages remaining on the PVC:

                ```
                  packaging:
                    max_size_MB: 100
                    max_reports_to_store: 30
                ```

              **Note:** The number of retained reports directly affects the frequency that reports must be manually downloaded from the PVC. Take caution in setting this to a higher number of reports, as the operator cannot write data to the PVC if the storage is full.
          4. To configure the operator to perform in a restricted network, set the `upload_toggle` to `false`:

            ```
              upload:
                upload_cycle: 360
                upload_toggle: false
            ```

          5. Select `Create`.

          ## Download reports from the Operator & clean up the PVC
          If the `koku-metrics-operator` is configured to run in a restricted network, the metric reports will not automatically upload to cost managment. Instead, they need to be manually copied from the PVC for upload to [console.redhat.com](https://console.redhat.com). The default configuration saves one week of reports which means the process of downloading and uploading reports should be repeated weekly to prevent loss of metrics data. To download the reports, complete the following steps:
          1. Create the following Pod, ensuring the `claimName` matches the PVC containing the report data:

            ```
              kind: Pod
              apiVersion: v1
              metadata:
                name: volume-shell
                namespace: koku-metrics-operator
                labels:
                  app: koku-metrics-operator
              spec:
                volumes:
                - name: koku-metrics-operator-reports
                  persistentVolumeClaim:
                    claimName: koku-metrics-operator-data
                containers:
                - name: volume-shell
                  image: busybox
                  command: ['sleep', 'infinity']
                  volumeMounts:
                  - name: koku-metrics-operator-reports
                    mountPath: /tmp/koku-metrics-operator-reports
            ```

          2. Use rsync to copy all of the files ready for upload from the PVC to a local folder:

            ```
            $ oc rsync volume-shell:/tmp/koku-metrics-operator-reports/upload local/path/to/save/folder
            ```

          3. Once confirming that the files have been successfully copied, use rsh to connect to the pod and delete the contents of the upload folder so that they are no longer in storage:

            ```
            $ oc rsh volume-shell
            $ rm /tmp/koku-metrics-operator-reports/upload/*
            ```

          4. (Optional) Delete the pod that was used to connect to the PVC:

            ```
            $ oc delete -f volume-shell.yaml
            ```

          ## Create an Integration
          In a restricted network, the `koku-metrics-operator` cannot automatically create an integration. This process must be done manually. In the console.redhat.com platform, open the [Integrations menu](https://console.redhat.com/settings/integrations/) to begin adding an OpenShift integration to Cost Management:

          Prerequisites:
          * The cluster identifier which can be found in the KokuMetricsConfig CR, the cluster Overview page, or the cluster Help > About.

          Creating an integration:
          1. Navigate to the Integrations menu
          2. Select the `Red Hat` tab
          3. Create a new `Red Hat Openshift Container Platform` integration:
              * give the integration a unique name
              * add the Cost Management application
              * add the cluster identifier
          4. In the Source wizard, review the details and click `Finish` to create the source.

          ## Upload the reports to cost managment
          Uploading reports to cost managment is done through curl:

              $ curl -vvvv -F "file=@FILE_NAME.tar.gz;type=application/vnd.redhat.hccm.tar+tgz" https://console.redhat.com/api/ingress/v1/upload -H "Authorization: Bearer ${ACCESS_TOKEN}"

          where `FILE_NAME` is the name of the report to upload. The `ACCESS_TOKEN` is acquired using a service account. See documentation on [creating and managing a service account](https://docs.redhat.com/en/documentation/red_hat_customer_portal/1/html/creating_and_managing_service_accounts).
        displayName: Koku Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cost
        - management
        - usage
        - monitor
        links:
        - name: Koku Metrics Operator source code repository
          url: https://github.com/project-koku/koku-metrics-operator
        maintainers:
        - email: costmanagement@redhat.com
          name: costmanagement
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/koku-metrics-operator:4.3.0
        - quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
        version: 4.3.0
      entries:
      - name: koku-metrics-operator.v4.3.0
        version: 4.3.0
      - name: koku-metrics-operator.v4.2.0
        version: 4.2.0
      - name: koku-metrics-operator.v4.1.0
        version: 4.1.0
      - name: koku-metrics-operator.v4.0.0
        version: 4.0.0
      - name: koku-metrics-operator.v3.3.2
        version: 3.3.2
      - name: koku-metrics-operator.v3.3.1
        version: 3.3.1
      - name: koku-metrics-operator.v3.3.0
        version: 3.3.0
      - name: koku-metrics-operator.v3.2.1
        version: 3.2.1
      - name: koku-metrics-operator.v3.2.0
        version: 3.2.0
      - name: koku-metrics-operator.v3.1.0
        version: 3.1.0
      - name: koku-metrics-operator.v3.0.1
        version: 3.0.1
      - name: koku-metrics-operator.v3.0.0
        version: 3.0.0
      - name: koku-metrics-operator.v2.0.0
        version: 2.0.0
      - name: koku-metrics-operator.v1.2.0
        version: 1.2.0
      - name: koku-metrics-operator.v1.1.9
        version: 1.1.9
      - name: koku-metrics-operator.v1.1.8
        version: 1.1.8
      - name: koku-metrics-operator.v1.1.7
        version: 1.1.7
      - name: koku-metrics-operator.v1.1.6
        version: 1.1.6
      - name: koku-metrics-operator.v1.1.5
        version: 1.1.5
      - name: koku-metrics-operator.v1.1.4
        version: 1.1.4
      - name: koku-metrics-operator.v1.1.3
        version: 1.1.3
      - name: koku-metrics-operator.v1.1.2
        version: 1.1.2
      - name: koku-metrics-operator.v1.1.1
        version: 1.1.1
      - name: koku-metrics-operator.v0.9.8
        version: 0.9.8
      - name: koku-metrics-operator.v0.9.7
        version: 0.9.7
      - name: koku-metrics-operator.v0.9.6
        version: 0.9.6
      - name: koku-metrics-operator.v0.9.5
        version: 0.9.5
      - name: koku-metrics-operator.v0.9.4
        version: 0.9.4
      - name: koku-metrics-operator.v0.9.3
        version: 0.9.3
      - name: koku-metrics-operator.v0.9.2
        version: 0.9.2
      - name: koku-metrics-operator.v0.9.1
        version: 0.9.1
      - name: koku-metrics-operator.v0.9.0
        version: 0.9.0
      name: alpha
    - currentCSV: koku-metrics-operator.v4.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
                "kind": "CostManagementMetricsConfig",
                "metadata": {
                  "name": "costmanagementmetricscfg-sample-v1beta1"
                },
                "spec": {
                  "authentication": {
                    "type": "token"
                  },
                  "packaging": {
                    "max_reports_to_store": 30,
                    "max_size_MB": 100
                  },
                  "prometheus_config": {
                    "collect_previous_data": true,
                    "context_timeout": 120,
                    "disable_metrics_collection_cost_management": false,
                    "disable_metrics_collection_resource_optimization": false
                  },
                  "source": {
                    "check_cycle": 1440,
                    "create_source": false,
                    "name": ""
                  },
                  "upload": {
                    "upload_cycle": 360,
                    "upload_toggle": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
          createdAt: "2025-10-29T15:49:19Z"
          description: A Golang-based OpenShift Operator that generates and uploads
            OpenShift usage metrics to cost management.
          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: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
              "kind": "CostManagementMetricsConfig",
              "metadata": {
                "name": "costmanagementmetricscfg-sample-v1beta1"
              },
              "spec": {
                "authentication": {
                  "token_url": "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token",
                  "type": "token"
                },
                "api_url": "https://console.redhat.com/",
                "packaging": {
                  "max_reports_to_store": 30,
                  "max_size_MB": 100
                },
                "upload": {
                  "ingress_path": "/api/ingress/v1/upload",
                  "upload_cycle": 360,
                  "upload_toggle": true,
                  "validate_cert": true
                },
                "prometheus_config": {
                  "collect_previous_data": true,
                  "context_timeout": 120,
                  "disable_metrics_collection_cost_management": false,
                  "disable_metrics_collection_resource_optimization": false,
                  "service_address": "https://thanos-querier.openshift-monitoring.svc:9091",
                  "skip_tls_verification": false
                },
                "source": {
                  "check_cycle": 1440,
                  "create_source": false,
                  "name": "",
                  "sources_path": "/api/sources/v1.0/"
                }
              }
            }
          operatorframework.io/suggested-namespace: koku-metrics-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/project-koku/koku-metrics-operator
          support: Cost Management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CostManagementMetricsConfig is the Schema for the costmanagementmetricsconfig
              API
            displayName: Cost Management Metrics Config
            kind: CostManagementMetricsConfig
            name: costmanagementmetricsconfigs.costmanagement-metrics-cfg.openshift.io
            version: v1beta1
        description: |
          # Koku Metrics Operator
          ## Introduction
          The `koku-metrics-operator` is a component of the [cost managment](https://access.redhat.com/documentation/en-us/cost_management_service) service for Openshift. The operator runs on the latest supported versions of Openshift. This operator obtains OpenShift usage data by querying Prometheus every hour to create metric reports that it uploads to Cost Management at [console.redhat.com](https://console.redhat.com) to be processed. For more information, reach out to <costmanagement@redhat.com>.

          This operator is capable of functioning within a disconnected/restricted network (aka air-gapped mode). In this mode, the operator will store the packaged reports for manual retrieval instead of being uploaded to Cost Management. Documentation for installing an operator within a restricted network can be found [here](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html).

          ## Features and Capabilities
          #### Metrics collection:
          The Koku Metrics Operator (`koku-metrics-operator`) collects the metrics required for Cost Management by:
          * Querying Prometheus to gather the necessary metrics for Cost Management.
          * Writing the results of Prometheus queries to CSV report files.
          * Packaging the CSV report files into tarballs.

          #### Additional Capabilities:
          * Resource Optimization metrics collection.
          * The operator can be configured to gather all previous data within the configured retention period or a maximum of 90 days. The default data collection period is the 14 previous days. This setting is only applicable to newly created KokuMetricsConfigs.
          * The operator can be configured to automatically upload the packaged reports to Cost Management through Red Hat Insights Ingress service.
          * The operator can create an integration in console.redhat.com. An integration is required for Cost Management to process the uploaded packages.
          * PersistentVolumeClaim (PVC) configuration: The KokuMetricsConfig CR can accept a PVC definition and the operator will create and mount the PVC. If one is not provided, a default PVC will be created.
          * Restricted network installation: this operator can function on a restricted network. In this mode, the operator stores the packaged reports for manual retrieval.

          ## New in v4.3.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for cost management.

          ## New in v4.2.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for resource optimization.
          * (Bugfix) Fixed custom CA certificate validation and configuration issues.
          * (Bugfix) Fixed issue where ROS queries were missing workload metadata for namespaces labeled only with the legacy `insights_cost_management_optimizations` label.

          ## New in v4.1.0:
          * Enabled gathering and reporting namespace metrics to provide more granular data for resource optimization.
          * Updated CSV report filenames to be more descriptive, replacing the previous generic UID-based names with content-reflective names.
          * Introduced a new generic label, `cost_management_optimizations`, for resource optimization while ensuring backward compatibility with the older `insights_cost_management_optimizations` label.

          ## New in v4.0.0:
          * **Virtual Machine Metrics:** Adds capabilities for collecting metrics and generating reports for running virtual machines within your OpenShift environment.
          * **Progress towards FIPS 140 Compliance:** The operator is using the Go Cryptographic Module v1.0.0 to progress toward FIPS 140 compliance. Although this module is not validated at the time of this release, the operator aims to meet stricter security standards when the module does successfully achieve FIPS validation.
          * **API Name Change:** The Custom Resource Definition (CRD) for configuring the upstream `Koku Metrics Operator` was renamed from `KokuMetricsConfig` to `CostManagementMetricsConfig`.

          ### NOTE:
            * The API name change impacts only users of the upstream (community) Koku Metrics Operator.
            * The downstream (Red Hat-supported) Cost Management Metrics Operator is not impacted by this change and users should continue using their existing configurations.

          **Important Upgrade Instructions:**

            If you are upgrading the upstream Koku Metrics Operator to version 4.0.0 or higher, you must manually migrate your configuration. The operator will no longer recognize existing `KokuMetricsConfig` resources.

            To successfully upgrade and retain your operator's configuration, complete the following steps. You can use the provided `oc` commands replacing the angle brackets (`< >`) with your specific values:

            1. Backup existing configuration (recommended):

               Before you upgrade, retrieve the details of your current `KokuMetricsConfig` instance to help you recreate it with the new API name.

               ```
               oc get kokumetricsconfig -n koku-metrics-operator <your-config-name> -o yaml > koku-metrics-config-backup.yaml
               ```

            2. Delete the previous `KokuMetricsConfig` instance (recommended):

                After the operator is upgraded to `version 4.0.0`, delete any existing `KokuMetricsConfig` resources.

                ```
                oc delete kokumetricsconfig -n koku-metrics-operator <your-config-name>
                ```

            3. Create the new `CostManagementMetricsConfig` instance:

                Using the information from your backup (or a new configuration), create a new `CostManagementMetricsConfig` instance. Adjust the spec section based on your specific needs. For more information about configurations, [refer to the configurable parameters](#configurable-parameters).

            4. Apply your new configuration:

                ```
                oc apply -f <your-costmanagementmetricsconfig-file>.yaml -n koku-metrics-operator
                ```

          ## New in v3.3.2:
          * Leader election settings are now configurable via environment variables. These variables can be modified in the operator [Subscription](https://github.com/operator-framework/operator-lifecycle-manager/blob/5a01f50258003e248bd5630df0837fe0bb0f1cb7/doc/design/subscription-config.md). The values should be specified as durations in seconds in the format `<number-of-seconds>s`. The default values for `LEADER_ELECTION_LEASE_DURATION`, `LEADER_ELECTION_RENEW_DEADLINE`, and `LEADER_ELECTION_RETRY_PERIOD` are '60s', '30s', and '5s', respectively.

            ```
            kind: Subscription
            metadata:
            ...
            spec:
              ...
              config:
                env:
                - name: LEADER_ELECTION_LEASE_DURATION
                  value: "60s"
                - name: LEADER_ELECTION_RENEW_DEADLINE
                  value: "30s"
                - name: LEADER_ELECTION_RETRY_PERIOD
                  value: "5s"
            ```

          ## New in v3.3.1:
          * Optimize memory usage when reading CSV files.

          ## New in v3.3.0:
          * Storage reports now contain `node`, `csi_driver`, and `csi_volume_handle` fields.
          * The PVC capacity is now populated using the `kube_persistentvolume_capacity_bytes` metric instead of `kubelet_volume_stats_capacity_bytes`.
          * To receive resource optimization recommendations for your namespaces, you must now first enable each namespace. To enable a namespace, label it with `insights_cost_management_optimizations='true'`. In the CLI, run:
            ```
              oc label namespace NAMESPACE insights_cost_management_optimizations="true" --overwrite=true
            ```
          * __DEPRECATION NOTICE__: Basic authentication is deprecated and will not be supported beyond December 31, 2024. If the default token authentication method cannot be used, you must switch to [service account](https://console.redhat.com/iam/service-accounts) authentication ([more on creating a service account](https://access.redhat.com/articles/7036194)). Once you have created your service account, follow [this documentation](https://access.redhat.com/documentation/en-us/cost_management_service/1-latest/html-single/integrating_openshift_container_platform_data_into_cost_management/index#service-account-authentication_adding-an-ocp-int) on how to configure your operator to use service account authentication. Service-accounts must also be used if manually uploading payloads to console.redhat.com.

          ## New in v3.2.1:
          * The minimum supported configuration for `upload_cycle` is now 60 (minutes).
          * (Bugfix) many-to-many matching not allowed query fix.
          * (Bugfix) Sequentially collect data during initial install.

          ## New in v3.2.0:
          * Support for amd64, arm64, ppc64le, s390x architectures.
          * add liveness and readiness probes to controller Pod.
          * update pod security settings so that the controller Pod can run in Restricted mode [more info](https://sdk.operatorframework.io/docs/best-practices/pod-security-standards/).

          ## New in v3.1.0:
          * Add service-account authentication type.
          * __Deprecation Notice:__ Basic authentication is deprecated and will be removed in a future version of the operator.

          ## New in v3.0.0:
          * Daily report generation: Operator versions prior to v3.0.0 generated sequential reports. Now, reports are generated starting at 0:00 UTC. Any payloads generated throughout a given day will contain all data starting from 0:00 UTC. Once the next day starts, the previous day's reports are packaged, and the new report again starts at 0:00 UTC for the current day.
          * Failed query retry: In an attempt to prevent missing data, the operator will retry queries from the last successful query time, up to 5 times.

          ## New in v2.0.0:
          * Adds metrics and report generation for resource optimization. This feature will collect additional usage metrics and create a new report in the payload. These metrics are enabled by default, but can be disabled by setting `disable_metrics_collection_resource_optimization` to `true`.
          * Collect all available Prometheus data upon CR creation. This feature only applies to newly created KokuMetricsConfigs. The operator will check the monitoring stack configuration in the `openshift-monitoring` namespace. The operator will use the `retention` period set in the `cluster-monitoring-config` ConfigMap if defined, up to a maximum of 90 days. Otherwise it will fall back to collecting 14 days of data, if available. This data collection may be disabled by setting `collect_previous_data` to `false`. Turning this feature off results in the operator collecting metrics from the time the KokuMetricsConfig is created, forward.

          ## Limitations and Pre-Requisites
          #### Limitations (Potential for metrics data loss)
          * An integration **must** exist in console.redhat.com for an uploaded payload to be processed by Cost Management. The operator sends the payload to the Red Hat Insights Ingress service which usually returns successfully, but the operator does not currently confirm with Cost Management that the payload was processed. After Ingress accepts the uploaded payload, it is deleted from the operator. If the data within the payload is not processed, a gap will be introduced in the usage metrics. Data may be recollected by deleting the `KokuMetricsConfig`, creating a new `KokuMetricsConfig`, and setting `collect_previous_data: true`. This re-collection of data will gather all data stored in Prometheus, up to 90 days.

          **Note** The following limitations are specific to operators configured to run in a restricted network:
          * The `koku-metrics-operator` will not be able to generate new reports if the PVC storage is full. If this occurs, the reports must be manually deleted from the PVC so that the operator can function as normal.
          * The default report retention is 30 reports (about one week's worth of data). The reports must be manually downloaded and uploaded to console.redhat.com every week, or they will be deleted and the data will be lost.

          #### Storage configuration prerequisite
          The operator will attempt to create and use the following PVC when installed:

                volume_claim_template:
                  apiVersion: v1
                  kind: PersistentVolumeClaim
                  metadata:
                    name: koku-metrics-operator-data
                  spec:
                    accessModes:
                      - ReadWriteOnce
                    resources:
                      requests:
                        storage: 10Gi

          If a different PVC should be utilized, a valid PVC should be specified in the KokuMetricsConfig CR as described in the appropriate section below. The PVC to be used may exist already, or the operator will attempt to create it.

          To use the default specification, the follow assumptions must be met:
          1. A default StorageClass is defined.
          2. Dynamic provisioning for that default StorageClass is enabled.

          If these assumptions are not met, the operator will not deploy correctly. In these cases, storage must be manually configured. After configuring storage, a valid PVC template should be supplied in the `volume_claim_template` spec of the KokuMetricsConfig CR.

          ## Configurable parameters:
            * `authentication`:
              * `type: token` -> The authentication method for connecting to `console.redhat.com`. The default and preferred method is `token`. `basic` (deprecated) and `service-account` authentication methods are used when the openshift-config pull-secret does not contain a token for `console.redhat.com`.
              * `secret_name` -> The Secret used by the operator when the authentication type is `basic` (deprecated) or `service-account`. This parameter is required **only if** the authentication type is `basic` (deprecated) or `service-account`.
            * `packaging`:
              * `max_reports_to_store: 30` -> The number of reports to store when configured in air-gapped mode. The default is 30, with a minimum of 1 and no maximum. When the operator is not configured in air-gapped mode, this parameter has no effect. Reports are removed as soon as they are uploaded.
              * `max_size: 100` -> The maximum size for packaged files in Megabytes prior to compression. The default is 100, with a minimum of 1 and maximum of 100.
            * `prometheus_config`:
              * `collect_previous_data: true` -> Toggle for collecting all available data in Prometheus **upon KokuMetricsConfig creation** (This parameter will start to appear in KokuMetricsConfigs that were created prior to v2.0.0 but will not have any effect unless the KokuMetricsConfig is deleted and recreated). The default is `true`. The operator will first look for a `retention` period in the `cluster-monitoring-config` ConfigMap in the `openshift-monitoring` namespace and gather data over this time period up to a maximum of 90 days. If this configuration is not set, the default is 14 days. (New in v2.0.0)
              * `disable_metrics_collection_cost_management: false` -> Toggle for disabling the collection of metrics for Cost Management. The default is false. (New in v2.0.0)
              * `disable_metrics_collection_resource_optimization: false` -> Toggle for disabling the collection of metrics for Resource Optimization. The default is false. (New in v2.0.0)
              * `context_timeout: 120` -> The time in seconds before Prometheus queries timeout due to exceeding context timeout. The default is 120, with a minimum of 10 and maximum of 180.
            * `source`:
              * `name: ''` -> The name of the integration the operator will create in `console.redhat.com`. If the name value is empty, the default intergration name is the **cluster id**.
              * `create_source: false` -> Toggle for whether or not the operator will create the integration in `console.redhat.com`. The default is False. This parameter should be switched to True when an integration does not already exist in `console.redhat.com` for this cluster.
              * `check_cycle: 1440` -> The time in minutes to wait between checking if an integration exists for this cluster. The default is 1440 minutes (24 hrs).
            * `upload`:
              * `upload_cycle: 360` -> The time in minutes between payload uploads. The default is 360 (6 hours), minimum is 60 (1 hour).
              * `upload_toggle: true` -> Toggle to turn upload on or off -> true means upload, false means do not upload (false == air-gapped mode). The default is `true`.
              * `upload_wait` -> The amount of time (in seconds) to pause before uploading a payload. The default is a random number between 0 and 35. This is used to decrease service load, but may be set to `0` if desired.
            * `volume_claim_template` -> see the "Storage configuration prerequisite" section above.

          ## Configure the koku-metrics-operator
          **Note** There are separate instructions for configuring the `koku-metrics-operator` to run in a restricted network.
          ##### Configure authentication
          The default authentication for the operator is `token`. No further steps are required to configure token authentication. If `basic` (deprecated) or `service-account` is the preferred authentication method, a Secret which holds the credentials must be created:
          1. On the left navigation pane, select `Workloads` -> `Secrets` -> select Project: `koku-metrics-operator` -> `Create` -> `Key/Value Secret`
          2. Give the Secret a name and add 2 keys (all lowercase) for the respective authentication type. The values for these keys correspond to console.redhat.com credentials:
              * basic auth (deprecated): `username` and `password`
              * service-account auth: `client_id` and `client_secret`

          3. Select `Create`.
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. For `basic` (deprecated) or `service-account` authentication, edit the following values in the spec:
              * Replace `authentication: type:` with `basic` or `service-account`.
              * Add the `secret_name` field under `authentication`, and set it equal to the name of the authentication Secret that was created above. The spec should look similar to the following:

                  * for basic auth type (deprecated)
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: basic
                  ```

                  * for service-account auth type
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: service-account
                  ```

          3. To configure the koku-metrics-operator to create a cost management integration, edit the following values in the `source` field:
              * Replace the `name` field value with the preferred name of the integration to be created.
              * Replace the `create_source` field value with `true`.

              **Note:** if the integration already exists, replace the empty string value of the `name` field with the existing name, and leave `create_source` as false. This will allow the operator to confirm that the integration exists.

          4. If not specified, the operator will create a default PersistentVolumeClaim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec:

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          5. Select `Create`.

          # Restricted Network Usage (disconnected/air-gapped mode)
          ## Installation
          To install the `koku-metrics-operator` in a restricted network, follow the [olm documentation](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html). The operator is found in the `community-operators` Catalog in the `registry.redhat.io/redhat/community-operator-index:latest` Index. If pruning the index before pushing to the mirrored registry, keep the `koku-metrics-operator` package.

          Within a restricted network, the operator queries prometheus to gather the necessary usage metrics, writes the query results to CSV files, and packages the reports for storage in the PVC. These reports then need to be manually downloaded from the cluster and uploaded to [console.redhat.com](https://console.redhat.com).

          ## Configure the koku-metrics-operator for a restricted network
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. Specify the desired storage. If not specified, the operator will create a default Persistent Volume Claim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec (below is only a template. Any _valid_ `PersistentVolumeClaim` may be defined here):

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      storageClassName: <insert-class-name>
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          3. (Optional) Specify the desired report retention. The operator will retain 30 reports by default. This corresponds to approximately one week's worth of data if using the default packaging cycle. To modify the number of retained reports:
              * Change the `packaging` spec field `max_reports_to_store` to the desired number of reports to retain. Once this max number is reached, the operator will start removing the oldest packages remaining on the PVC:

                ```
                  packaging:
                    max_size_MB: 100
                    max_reports_to_store: 30
                ```

              **Note:** The number of retained reports directly affects the frequency that reports must be manually downloaded from the PVC. Take caution in setting this to a higher number of reports, as the operator cannot write data to the PVC if the storage is full.
          4. To configure the operator to perform in a restricted network, set the `upload_toggle` to `false`:

            ```
              upload:
                upload_cycle: 360
                upload_toggle: false
            ```

          5. Select `Create`.

          ## Download reports from the Operator & clean up the PVC
          If the `koku-metrics-operator` is configured to run in a restricted network, the metric reports will not automatically upload to cost managment. Instead, they need to be manually copied from the PVC for upload to [console.redhat.com](https://console.redhat.com). The default configuration saves one week of reports which means the process of downloading and uploading reports should be repeated weekly to prevent loss of metrics data. To download the reports, complete the following steps:
          1. Create the following Pod, ensuring the `claimName` matches the PVC containing the report data:

            ```
              kind: Pod
              apiVersion: v1
              metadata:
                name: volume-shell
                namespace: koku-metrics-operator
                labels:
                  app: koku-metrics-operator
              spec:
                volumes:
                - name: koku-metrics-operator-reports
                  persistentVolumeClaim:
                    claimName: koku-metrics-operator-data
                containers:
                - name: volume-shell
                  image: busybox
                  command: ['sleep', 'infinity']
                  volumeMounts:
                  - name: koku-metrics-operator-reports
                    mountPath: /tmp/koku-metrics-operator-reports
            ```

          2. Use rsync to copy all of the files ready for upload from the PVC to a local folder:

            ```
            $ oc rsync volume-shell:/tmp/koku-metrics-operator-reports/upload local/path/to/save/folder
            ```

          3. Once confirming that the files have been successfully copied, use rsh to connect to the pod and delete the contents of the upload folder so that they are no longer in storage:

            ```
            $ oc rsh volume-shell
            $ rm /tmp/koku-metrics-operator-reports/upload/*
            ```

          4. (Optional) Delete the pod that was used to connect to the PVC:

            ```
            $ oc delete -f volume-shell.yaml
            ```

          ## Create an Integration
          In a restricted network, the `koku-metrics-operator` cannot automatically create an integration. This process must be done manually. In the console.redhat.com platform, open the [Integrations menu](https://console.redhat.com/settings/integrations/) to begin adding an OpenShift integration to Cost Management:

          Prerequisites:
          * The cluster identifier which can be found in the KokuMetricsConfig CR, the cluster Overview page, or the cluster Help > About.

          Creating an integration:
          1. Navigate to the Integrations menu
          2. Select the `Red Hat` tab
          3. Create a new `Red Hat Openshift Container Platform` integration:
              * give the integration a unique name
              * add the Cost Management application
              * add the cluster identifier
          4. In the Source wizard, review the details and click `Finish` to create the source.

          ## Upload the reports to cost managment
          Uploading reports to cost managment is done through curl:

              $ curl -vvvv -F "file=@FILE_NAME.tar.gz;type=application/vnd.redhat.hccm.tar+tgz" https://console.redhat.com/api/ingress/v1/upload -H "Authorization: Bearer ${ACCESS_TOKEN}"

          where `FILE_NAME` is the name of the report to upload. The `ACCESS_TOKEN` is acquired using a service account. See documentation on [creating and managing a service account](https://docs.redhat.com/en/documentation/red_hat_customer_portal/1/html/creating_and_managing_service_accounts).
        displayName: Koku Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cost
        - management
        - usage
        - monitor
        links:
        - name: Koku Metrics Operator source code repository
          url: https://github.com/project-koku/koku-metrics-operator
        maintainers:
        - email: costmanagement@redhat.com
          name: costmanagement
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
        - quay.io/community-operator-pipeline-prod/koku-metrics-operator:4.3.0
        version: 4.3.0
      entries:
      - name: koku-metrics-operator.v4.3.0
        version: 4.3.0
      - name: koku-metrics-operator.v4.2.0
        version: 4.2.0
      - name: koku-metrics-operator.v4.1.0
        version: 4.1.0
      - name: koku-metrics-operator.v4.0.0
        version: 4.0.0
      - name: koku-metrics-operator.v3.3.2
        version: 3.3.2
      - name: koku-metrics-operator.v3.3.1
        version: 3.3.1
      - name: koku-metrics-operator.v3.3.0
        version: 3.3.0
      - name: koku-metrics-operator.v3.2.1
        version: 3.2.1
      - name: koku-metrics-operator.v3.2.0
        version: 3.2.0
      - name: koku-metrics-operator.v3.1.0
        version: 3.1.0
      - name: koku-metrics-operator.v3.0.1
        version: 3.0.1
      - name: koku-metrics-operator.v3.0.0
        version: 3.0.0
      - name: koku-metrics-operator.v2.0.0
        version: 2.0.0
      - name: koku-metrics-operator.v1.2.0
        version: 1.2.0
      - name: koku-metrics-operator.v1.1.9
        version: 1.1.9
      - name: koku-metrics-operator.v1.1.8
        version: 1.1.8
      - name: koku-metrics-operator.v1.1.7
        version: 1.1.7
      - name: koku-metrics-operator.v1.1.6
        version: 1.1.6
      - name: koku-metrics-operator.v1.1.5
        version: 1.1.5
      - name: koku-metrics-operator.v1.1.4
        version: 1.1.4
      - name: koku-metrics-operator.v1.1.3
        version: 1.1.3
      - name: koku-metrics-operator.v1.1.2
        version: 1.1.2
      - name: koku-metrics-operator.v1.1.1
        version: 1.1.1
      - name: koku-metrics-operator.v0.9.8
        version: 0.9.8
      - name: koku-metrics-operator.v0.9.7
        version: 0.9.7
      - name: koku-metrics-operator.v0.9.6
        version: 0.9.6
      - name: koku-metrics-operator.v0.9.5
        version: 0.9.5
      - name: koku-metrics-operator.v0.9.4
        version: 0.9.4
      - name: koku-metrics-operator.v0.9.3
        version: 0.9.3
      - name: koku-metrics-operator.v0.9.2
        version: 0.9.2
      - name: koku-metrics-operator.v0.9.1
        version: 0.9.1
      - name: koku-metrics-operator.v0.9.0
        version: 0.9.0
      name: beta
    defaultChannel: beta
    packageName: koku-metrics-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: quay-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: quay-operator.v3.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:d73321dfa6dcced943405fae45c2ccf841663e0ab57e8be8cc1ddba251b7ce08
          createdAt: 2021-11-02 11:11 UTC
          description: Opinionated deployment of Red Hat Quay on Kubernetes.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:2a471300f70d3995ab7e9fcc3df35c5513e73fcc1d140fb4d651a1c3eae949eb
        - registry.redhat.io/quay/quay-operator-bundle@sha256:b793aef88881aa75d47a22377d8932efc0b497bb01b2f3f376d64891d1dace54
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:d73321dfa6dcced943405fae45c2ccf841663e0ab57e8be8cc1ddba251b7ce08
        - registry.redhat.io/quay/quay-rhel8@sha256:ed8c4249d376b4226e35bf088ffe5bf688bf68b059718c5e218aa1184fe048d0
        - registry.redhat.io/rhel8/postgresql-10@sha256:b2695e9af379624621bef9ec785f0cb618bfdabae98c5f17eea82ff5f8d2d5cb
        - registry.redhat.io/rhel8/redis-5@sha256:8d7e66927ce4b3050ca15ab4df4dbaeb593cb855e16fb0a6f5dde950e9db7db9
        - registry.redhat.io/quay/clair-rhel8@sha256:af5e2fd1543365b365b1a6cce00b86e44fe5e66cde6491e9b113324c21f629c8
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:0e6bef51caf479074925115fa11621c41bcada375cc1925d0511a73084b93543
        version: 3.4.7
      entries:
      - name: quay-operator.v3.4.7
        version: 3.4.7
      name: quay-v3.4
    - currentCSV: quay-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:1f5e4cc9ec2d9b8b89d82f1a698acfa1ac2764ca4ebc5c85b3417da7730b5867
          createdAt: 2021-09-09 20:09 UTC
          description: Opinionated deployment of Red Hat Quay on Kubernetes.
          olm.skipRange: '>=3.4.x <3.5.7'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.5.7
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:7fe408a1e428b2d0660cb578c1dcd4b961f838e37166fe7b21b2bed70d288594
        - registry.redhat.io/quay/quay-operator-bundle@sha256:722cf3c05eb5663a737cb1385b971b6d1f0c8b2595d5ac425f7b100c25e2fd26
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:1f5e4cc9ec2d9b8b89d82f1a698acfa1ac2764ca4ebc5c85b3417da7730b5867
        - registry.redhat.io/quay/quay-rhel8@sha256:c599892160ac20c744d833603d9375923af7aec1edfd86982b7513e02fb6d463
        - registry.redhat.io/rhel8/postgresql-10@sha256:a723bb3a7a5046527b9a5b628ddfb211c526e3814cc4242262c4f8a016f38edd
        - registry.redhat.io/rhel8/redis-5@sha256:7916760ff03af5ca230df5e96b2bf353fbf1829386de1c063c05f623837be7f7
        - registry.redhat.io/quay/clair-rhel8@sha256:d242bd9d37f95b2a5a8267b3f1eba02c671d46121712baae43466c86d1da89f9
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:5d72577ccfd63c6d9ad712b376b604c40d2d3ecb53e391e2ee0d18caa6e0225a
        version: 3.5.7
      entries:
      - name: quay-operator.v3.5.7
        version: 3.5.7
      name: quay-v3.5
    - currentCSV: quay-operator.v3.10.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:3dd66f1963715d3e38540c8020c3c18cddd0019f342cceff22aa6412844e06da
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.7.x <3.10.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.10.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-rhel8@sha256:9837d3583892538c03a1918510c507be46290ea4045ba22de8cfd416a50a787d
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:3dd66f1963715d3e38540c8020c3c18cddd0019f342cceff22aa6412844e06da
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/quay/clair-rhel8@sha256:3967b2027cc8ee045da7c6a214c959f8651fb873bd60b81cd78f167e57ba95a5
        - registry.redhat.io/quay/quay-operator-bundle@sha256:91ce9e64184afb90b00360c64f5ba37d30130ab0344b2439b93db15f2b35b74d
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:56c4668b72768c2b7017215f547039b4783498efd89d17dc3fdc7d0444cc8ad9
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:907dd22eb16925813711a70a3d0df30963a3d1d0c060ca9b4f071ec101f14b87
        version: 3.10.17
      entries:
      - name: quay-operator.v3.10.17
        version: 3.10.17
      - name: quay-operator.v3.10.16
        version: 3.10.16
      - name: quay-operator.v3.10.15
        version: 3.10.15
      - name: quay-operator.v3.10.14
        version: 3.10.14
      - name: quay-operator.v3.10.13
        version: 3.10.13
      - name: quay-operator.v3.10.12
        version: 3.10.12
      - name: quay-operator.v3.10.11
        version: 3.10.11
      - name: quay-operator.v3.10.10
        version: 3.10.10
      - name: quay-operator.v3.10.9
        version: 3.10.9
      - name: quay-operator.v3.10.8
        version: 3.10.8
      - name: quay-operator.v3.10.7
        version: 3.10.7
      - name: quay-operator.v3.10.6
        version: 3.10.6
      - name: quay-operator.v3.10.5
        version: 3.10.5
      - name: quay-operator.v3.10.4
        version: 3.10.4
      - name: quay-operator.v3.10.3
        version: 3.10.3
      - name: quay-operator.v3.10.2
        version: 3.10.2
      - name: quay-operator.v3.10.1
        version: 3.10.1
      - name: quay-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: quay-operator.v3.11.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:cb3a41caa3a572b7981d424be2a32b8e881127cc03b557ee0a36ab13f430b897
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.8.x <3.11.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: v3.11.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures ODF for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For production deployment of
          Red Hat OpenShift Data Foundation, please refer to the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-rhel8@sha256:7230fa1d4970e877cb6de8716e99a9bd43302c0ff23b4501f2aa806a8d496d9b
        - registry.redhat.io/rhel8/postgresql-13@sha256:35d86936c539007a78a89869a14b87b76788fe117df442a670f63936b978ed5b
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:11b8c9d64c42f0f0c7b2df491bba859d0410666a8ef1d2fd41eb77e4ad9d2dc8
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:cb3a41caa3a572b7981d424be2a32b8e881127cc03b557ee0a36ab13f430b897
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/clair-rhel8@sha256:3746677ef1cb0ddd4f237ab598b14cf0bc76dcce080ffde127b5bba87ffe6693
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:1a083cd72502609427428ed22fb60846613ddb41a4613496c5cddc797b382d3a
        - registry.redhat.io/quay/quay-operator-bundle@sha256:f19ae051041c46fe7587f903a9c6221bcbe8be2c4cc0235739f7592eb93ae164
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        version: 3.11.13
      entries:
      - name: quay-operator.v3.11.13
        version: 3.11.13
      - name: quay-operator.v3.11.12
        version: 3.11.12
      - name: quay-operator.v3.11.11
        version: 3.11.11
      - name: quay-operator.v3.11.10
        version: 3.11.10
      - name: quay-operator.v3.11.9
        version: 3.11.9
      - name: quay-operator.v3.11.8
        version: 3.11.8
      - name: quay-operator.v3.11.7
        version: 3.11.7
      - name: quay-operator.v3.11.6
        version: 3.11.6
      - name: quay-operator.v3.11.5
        version: 3.11.5
      - name: quay-operator.v3.11.4
        version: 3.11.4
      - name: quay-operator.v3.11.3
        version: 3.11.3
      - name: quay-operator.v3.11.2
        version: 3.11.2
      - name: quay-operator.v3.11.1
        version: 3.11.1
      - name: quay-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: quay-operator.v3.12.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:48417bfa200db498b71a750dd147c1c11405ea4b61ad41d32731923b56a0bc43
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.9.x <3.12.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.12.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:48417bfa200db498b71a750dd147c1c11405ea4b61ad41d32731923b56a0bc43
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/quay/clair-rhel8@sha256:8879a32314409b2367d8cdc0d7076667dab8a72df1b2f06ed6078ba022adb082
        - registry.redhat.io/quay/quay-operator-bundle@sha256:1c915a6f813564b9bf8062ea5c6a83097a8dd78a38fda0171fae9cc8d81299c7
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:206d249da9c156fc7b76eacc40759b3accb82dce85aa2bb2bbd7a33af52ee104
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:b3a950f2c8a123b9bcba240db407608dab6a4fb00cb9fcc6e083e07144928390
        - registry.redhat.io/quay/quay-rhel8@sha256:1076d78eba4bef63cf45ab04c1dff52f0407ab9e16fb4729bee7c1ab642f59b7
        version: 3.12.13
      entries:
      - name: quay-operator.v3.12.13
        version: 3.12.13
      - name: quay-operator.v3.12.12
        version: 3.12.12
      - name: quay-operator.v3.12.11
        version: 3.12.11
      - name: quay-operator.v3.12.10
        version: 3.12.10
      - name: quay-operator.v3.12.9
        version: 3.12.9
      - name: quay-operator.v3.12.8
        version: 3.12.8
      - name: quay-operator.v3.12.7
        version: 3.12.7
      - name: quay-operator.v3.12.6
        version: 3.12.6
      - name: quay-operator.v3.12.5
        version: 3.12.5
      - name: quay-operator.v3.12.4
        version: 3.12.4
      - name: quay-operator.v3.12.3
        version: 3.12.3
      - name: quay-operator.v3.12.2
        version: 3.12.2
      - name: quay-operator.v3.12.1
        version: 3.12.1
      - name: quay-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: quay-operator.v3.13.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:9fe5f2672eef5f780797c1fa1eeaca531dcf71a9d565e80c2698d9b51244c187
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.10.x <3.13.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.13.10
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/quay/quay-operator-bundle@sha256:e3bda08789b2ba41154d080a5f013ee0e2406d60f8414e63be451a6439555cc1
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:9fe5f2672eef5f780797c1fa1eeaca531dcf71a9d565e80c2698d9b51244c187
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:b3f7fa8d48a772171dfb9eb893bc8e51985147c7f44fb8b1351325dbbf59810a
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:92ffbfe625489fe0b00e32a144f76935a4c36d1835af42d9b45bc3904760b085
        - registry.redhat.io/quay/clair-rhel8@sha256:3af5c1b75dedb37fb8c7cc3500882f7145314d44735b0957dad7d588a0cbf825
        - registry.redhat.io/quay/quay-rhel8@sha256:f112ecb55942c8785c4aa20162b74bac904634a87bdc8b9755873ef19eccd6df
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        version: 3.13.10
      entries:
      - name: quay-operator.v3.13.10
        version: 3.13.10
      - name: quay-operator.v3.13.9
        version: 3.13.9
      - name: quay-operator.v3.13.8
        version: 3.13.8
      - name: quay-operator.v3.13.7
        version: 3.13.7
      - name: quay-operator.v3.13.6
        version: 3.13.6
      - name: quay-operator.v3.13.5
        version: 3.13.5
      - name: quay-operator.v3.13.4
        version: 3.13.4
      - name: quay-operator.v3.13.3
        version: 3.13.3
      - name: quay-operator.v3.13.2
        version: 3.13.2
      - name: quay-operator.v3.13.1
        version: 3.13.1
      - name: quay-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: quay-operator.v3.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:8ebc1f0511f7d394ceaa39a4c993e955c560dc04588072cb3f8c8fab8c85e32b
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.11.x <3.14.5'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: v3.14.5
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures ODF for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For production deployment of
          Red Hat OpenShift Data Foundation, please refer to the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-operator-bundle@sha256:f16c0a135dd7380e2a489f963b38bd76a63a973f482d06ece8d3656aff223703
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:8ebc1f0511f7d394ceaa39a4c993e955c560dc04588072cb3f8c8fab8c85e32b
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        - registry.redhat.io/quay/quay-rhel8@sha256:33e984892650d315065313fcb5f8808e145aadec5a287219c7031d85b713235e
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/clair-rhel8@sha256:e11e8a819d17bd14c67f093b5303b4958855e731f89ce67dcca70fcb7b77f45a
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:43ef8adddbf9b007b6e2396f53bd6a5475150d28c2f4254f031a0fe6c7de5826
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:a12a0918f6dea114b0aae231d7119a4acfd0cd297074d895f4ecf190d2aec43a
        version: 3.14.5
      entries:
      - name: quay-operator.v3.14.5
        version: 3.14.5
      - name: quay-operator.v3.14.4
        version: 3.14.4
      - name: quay-operator.v3.14.3
        version: 3.14.3
      - name: quay-operator.v3.14.2
        version: 3.14.2
      - name: quay-operator.v3.14.1
        version: 3.14.1
      - name: quay-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: quay-operator.v3.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:05fb981d9848281b97b3683093f752b1c1dc5ced439a2b4ba18b26ff8e11231e
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.12.x <3.15.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: v3.15.2
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures ODF for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For production deployment of
          Red Hat OpenShift Data Foundation, please refer to the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-rhel8@sha256:aa8c9f7b6ce57441ca1fe9dbaaefaf2bb83fd44aa367647b663bb822bf890362
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        - registry.redhat.io/quay/clair-rhel8@sha256:861be31d30142bae125cd059bb716d79b28694e9c4336333c68adf4a3823b61d
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:956f3110f944d880bc27bb6df9472d0804cd75f5dcf4ed11bcf721e9d1d4542b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:873a3daf1dadf2438eb96e151072326c31ba34ed48cac041614b604413d5f8e7
        - registry.redhat.io/quay/quay-operator-bundle@sha256:b499eebed32c0261db414e307f96f8aef9e743035544c80c048526e7ba4fbdc2
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:05fb981d9848281b97b3683093f752b1c1dc5ced439a2b4ba18b26ff8e11231e
        version: 3.15.2
      entries:
      - name: quay-operator.v3.15.2
        version: 3.15.2
      - name: quay-operator.v3.15.1
        version: 3.15.1
      - name: quay-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: quay-operator.v3.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel9@sha256:16616e52f128f4a9b8511e7d9288bb1fcdd4e096a5a9b58400badbd0fad21476
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.13.x <3.16.0'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.16.0
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-15@sha256:90ec347a35ab8a5d530c8d09f5347b13cc71df04f3b994bfa8b1a409b1171d59
        - registry.redhat.io/rhel9/redis-6@sha256:686620b9acef6dfc3fc5e8221ca4d7a00c1fb102319352e7871fb9bc0ea127e3
        - registry.redhat.io/quay/clair-rhel9@sha256:b9a5096fef74999c34dfb721ca1b5e47623cfa21b48213f60a5b889894d4874e
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:adc9eb1500491144a259fd95c14237be15fa92478523bf33769a708b301d66cb
        - registry.redhat.io/rhel9/postgresql-13@sha256:5105fc7494c8e9886204951ea6eed0a04dcc638ea65a2e1c15df5ebf99aae356
        - registry.redhat.io/rhel8/postgresql-13@sha256:3e3e87ba0081e6f2d00b7a0f44f1b7fe6465c3c8176503c5f967237a949fd9d7
        - registry.redhat.io/quay/quay-rhel9@sha256:c855425208f7f33a550d216328965fdcb3abebc3ee28fc0854bf62c58ce07266
        - registry.redhat.io/rhel8/postgresql-10@sha256:0b9dcbac4969cc755505ee152369f23ac891a0e4030e9e2519cae25e32416500
        - registry.redhat.io/quay/quay-builder-rhel9@sha256:d3803200676de5a10f81539d3cb65e3d1cfad4fdfe7171284cab758bfc1bdd6a
        - registry.redhat.io/quay/quay-operator-bundle@sha256:000771d05a6151960a085bce375f090d706c48328009000437dbc5a8711c9ac8
        - registry.redhat.io/quay/quay-operator-rhel9@sha256:16616e52f128f4a9b8511e7d9288bb1fcdd4e096a5a9b58400badbd0fad21476
        version: 3.16.0
      entries:
      - name: quay-operator.v3.16.0
        version: 3.16.0
      name: stable-3.16
    - currentCSV: quay-operator.v3.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:7a6e592d7f5f760b4451f9c974dbb96f56b1d3de92f039adcbf284f78ba13a02
          createdAt: 2021-10-12 22:10 UTC
          description: Opinionated deployment of Red Hat on Kubernetes.
          olm.skipRange: '>=3.3.x <3.6.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.6.10
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:75df6b8e6bef14844a08f7d994470fa6ec4ffa66d4b15faaa0a3ba373f612fbb
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:ec36241f0a9a2983b1894cd8501898e6b70379af51a81b1e09b0ba0e9b54b33f
        - registry.redhat.io/quay/quay-operator-bundle@sha256:55a5e6297109aea029bd40fac09a9fbc10c28a8c5558f9afc9b9b86c5dc7a4d4
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:7a6e592d7f5f760b4451f9c974dbb96f56b1d3de92f039adcbf284f78ba13a02
        - registry.redhat.io/quay/quay-rhel8@sha256:e75e4d084eba9bb65b9cc72e38294af314d49316b12a0beb75db808dc057830b
        - registry.redhat.io/rhel8/postgresql-10@sha256:4b912c80085b88a03309aeb7907efcc29dd3342fa3952b6ea067afb1914bfe53
        - registry.redhat.io/rhel8/redis-6@sha256:d7c7852338717308cbb59e9303e1ea35cc8e5c01ceb2818569be20c15f3f943d
        - registry.redhat.io/quay/clair-rhel8@sha256:cbafddd1eb50c1c0f9159ffafd86f44a8c0b976194903c96c6f144bfe62e749d
        version: 3.6.10
      entries:
      - name: quay-operator.v3.6.10
        version: 3.6.10
      - name: quay-operator.v3.6.9
        version: 3.6.9
      - name: quay-operator.v3.6.8
        version: 3.6.8
      - name: quay-operator.v3.6.7
        version: 3.6.7
      - name: quay-operator.v3.6.6
        version: 3.6.6
      - name: quay-operator.v3.6.5
        version: 3.6.5
      - name: quay-operator.v3.6.4
        version: 3.6.4
      - name: quay-operator.v3.6.2
        version: 3.6.2
      - name: quay-operator.v3.6.1
        version: 3.6.1
      - name: quay-operator.v3.6.0
        version: 3.6.0
      name: stable-3.6
    - currentCSV: quay-operator.v3.7.14
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:a8283c2be661e07c5f2f2e5b683c520846bcb91d580d9a3a0aa27ce994ddfff6
          createdAt: 2021-04-23 10:04 UTC
          description: Opinionated deployment of Red Hat on Kubernetes.
          olm.skipRange: '>=3.4.x <3.7.14'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: v3.7.14
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/clair-rhel8@sha256:d676af83e96740220e6f18721c98817ba071fd023a62ebdc3815424e94838083
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:04ac405c152bffb43b33fb2e7f45df8b3940eb21e055ebf6aa17bd81ebdeeab4
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:c54c77e09c95dc7d80d7b31e796857c8d06f2f733426629b53d3298206d23b20
        - registry.redhat.io/quay/quay-operator-bundle@sha256:e3f63ea56de7ca5388a20c17ac63e16f07935ab09bcdcd38a86639c9d59c8a7d
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:a8283c2be661e07c5f2f2e5b683c520846bcb91d580d9a3a0aa27ce994ddfff6
        - registry.redhat.io/quay/quay-rhel8@sha256:7bc9e115e9bace07505ffd225242cab83d5eb6d50358188d18fd9161bdf1a5a6
        - registry.redhat.io/rhel8/postgresql-10@sha256:a52ad402458ec8ef3f275972c6ebed05ad64398f884404b9bb8e3010c5c95291
        - registry.redhat.io/rhel8/redis-6@sha256:b15335d88b240bd6bbedeb7fe26f0a1de2f6c330af9758b0fb2edab7ca69f6df
        version: 3.7.14
      entries:
      - name: quay-operator.v3.7.14
        version: 3.7.14
      - name: quay-operator.v3.7.13
        version: 3.7.13
      - name: quay-operator.v3.7.12
        version: 3.7.12
      - name: quay-operator.v3.7.11
        version: 3.7.11
      - name: quay-operator.v3.7.10
        version: 3.7.10
      name: stable-3.7
    - currentCSV: quay-operator.v3.8.15
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:abec0fa7ee641c8e424e995b5fe07b98e522ad1eb92c3b90426f69941f33eb2e
          createdAt: 2021-04-23 10:04 UTC
          description: Opinionated deployment of Red Hat on Kubernetes.
          olm.skipRange: '>=3.5.x <3.8.15'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: v3.8.15
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-operator-bundle@sha256:53fcddadaa31a5f7d74c38f0bbd0d80b4c09796a580ef8494f60ff82fb6fe6c1
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:abec0fa7ee641c8e424e995b5fe07b98e522ad1eb92c3b90426f69941f33eb2e
        - registry.redhat.io/quay/quay-rhel8@sha256:de2b65506f99eebb5eaafca6bb42b4ebec08e9479dd0d50aa1286f197e42d6de
        - registry.redhat.io/rhel8/postgresql-10@sha256:b7fa644277d5e406b642685ff2ace1b1de7aea2e2a1421b3cbcda7d60405f44d
        - registry.redhat.io/rhel8/redis-6@sha256:444200241cb9186cd97d564d7acf077d83fc997a8ee5ee7fdae41b604895085c
        - registry.redhat.io/quay/clair-rhel8@sha256:b327fcfd7472cdb9d83a564904976b26b285fa576dc0a76e5590990ec77fd871
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:3c047c7b22fb42557bd3a9b9c9ac333f0df7d5e4a4d333a2b02a4313f57085be
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:7e4e57071439d671971b0de46b597cf6cff8ef3879ab711125a6ae7ecb9c6d29
        version: 3.8.15
      entries:
      - name: quay-operator.v3.8.15
        version: 3.8.15
      - name: quay-operator.v3.8.14
        version: 3.8.14
      - name: quay-operator.v3.8.13
        version: 3.8.13
      - name: quay-operator.v3.8.12
        version: 3.8.12
      - name: quay-operator.v3.8.11
        version: 3.8.11
      - name: quay-operator.v3.8.10
        version: 3.8.10
      - name: quay-operator.v3.8.9
        version: 3.8.9
      - name: quay-operator.v3.8.8
        version: 3.8.8
      - name: quay-operator.v3.8.7
        version: 3.8.7
      - name: quay-operator.v3.8.6
        version: 3.8.6
      - name: quay-operator.v3.8.5
        version: 3.8.5
      - name: quay-operator.v3.8.4
        version: 3.8.4
      - name: quay-operator.v3.8.3
        version: 3.8.3
      - name: quay-operator.v3.8.2
        version: 3.8.2
      - name: quay-operator.v3.8.1
        version: 3.8.1
      - name: quay-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: quay-operator.v3.9.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:81809b56de4139a26a6064239430f29744d8eb9bc07ee3260516d65b09ab86e0
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.9.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:571d88c0dc93c9194a5242b02101b7d77871d2d9496307df7dcb9dac971ab444
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:94f7e4f69cf8bad09b00ffb85bcf621f87df000e8a6077ba49fca88997a163fa
        - registry.redhat.io/quay/quay-operator-bundle@sha256:3c1f25918b505ec71eaf93d2a0b963d209e36d847e7fc48469f9d40b534344ae
        - registry.redhat.io/quay/quay-rhel8@sha256:f713bd016f375427a0a348e58639622cf21560c05d1b82653f2c47493fcba186
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:81809b56de4139a26a6064239430f29744d8eb9bc07ee3260516d65b09ab86e0
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/clair-rhel8@sha256:f4bb5da4f6ea525d620c94180548603e1686de8b85b9c92c0a8c59840a1f69da
        version: 3.9.17
      entries:
      - name: quay-operator.v3.9.17
        version: 3.9.17
      - name: quay-operator.v3.9.16
        version: 3.9.16
      - name: quay-operator.v3.9.15
        version: 3.9.15
      - name: quay-operator.v3.9.14
        version: 3.9.14
      - name: quay-operator.v3.9.13
        version: 3.9.13
      - name: quay-operator.v3.9.12
        version: 3.9.12
      - name: quay-operator.v3.9.11
        version: 3.9.11
      - name: quay-operator.v3.9.10
        version: 3.9.10
      - name: quay-operator.v3.9.9
        version: 3.9.9
      - name: quay-operator.v3.9.8
        version: 3.9.8
      - name: quay-operator.v3.9.7
        version: 3.9.7
      - name: quay-operator.v3.9.6
        version: 3.9.6
      - name: quay-operator.v3.9.5
        version: 3.9.5
      - name: quay-operator.v3.9.4
        version: 3.9.4
      - name: quay-operator.v3.9.3
        version: 3.9.3
      - name: quay-operator.v3.9.2
        version: 3.9.2
      - name: quay-operator.v3.9.1
        version: 3.9.1
      - name: quay-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.16
    packageName: quay-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: eventing-kogito
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eventing-kogito.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kogito.knative.dev/v1alpha1",
                "kind": "KogitoSource",
                "metadata": {
                  "name": "kogito-order-processing"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "eventing.knative.dev/v1",
                      "kind": "Broker",
                      "name": "default"
                    }
                  },
                  "subject": {
                    "apiVersion": "serving.knative.dev/v1",
                    "kind": "Service",
                    "name": "serverless-workflow-order-processing"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: gcr.io/knative-releases/knative.dev/eventing-kogito/cmd/controller:v1.2.0
          createdAt: "2021-08-25T12:00:00Z"
          olm.targetNamespaces: knative-kogito
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/knative-sandbox/eventing-kogito
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoSource is the representation of a Knative Eventing
              Source for a Kogito custom Service.
            displayName: Kogito Source
            kind: KogitoSource
            name: kogitosources.kogito.knative.dev
            version: v1alpha1
        description: |-
          Knative Eventing Source for Kogito Services. This controller will enable easy configuration of any Kogito custom Service
          with the Knative Eventing platform. Please find more information about using this source in the [Official Kogito Documentation](https://docs.jboss.org/kogito/release/latest/html_single/#_kogito_knative_eventing_add_on)

          **Note:** The admission webhooks are not installed via OLM at this time. Because of that, please ensure that you create the `KogitoSource` objects with the subbject and sink information with the appropriate namespace.
        displayName: Kogito Knative Eventing Source
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless workflow
        - kogito
        - knative
        - dmn
        - bpmn
        - eventing
        - cloudevents
        - messaging
        links:
        - name: Source Repository
          url: https://github.com/knative-sandbox/eventing-kogito
        - name: Kogito Knative Add-On Documentation
          url: https://docs.jboss.org/kogito/release/latest/html_single/#_kogito_knative_eventing_add_on
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - gcr.io/knative-releases/knative.dev/eventing-kogito/cmd/controller:v1.2.0
        - quay.io/openshift-community-operators/eventing-kogito@sha256:abe8d5803d2d96ebbb9fe4cda0feaa0217e92def6a669404362bcf741d934690
        version: 1.2.0
      entries:
      - name: eventing-kogito.v1.2.0
        version: 1.2.0
      - name: eventing-kogito.v1.1.0
        version: 1.1.0
      name: alpha
    defaultChannel: alpha
    packageName: eventing-kogito
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: k8gb.io
      provider-url: https://github.com/k8gb-io/k8gb
    name: k8gb
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: k8gb.v0.11.4
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"k8gb.absa.oss/v1beta1","kind":"Gslb","metadata":{"name":"test-gslb-failover","namespace":"test-gslb"},"spec":{"ingress":{"rules":[{"host":"failover.test.k8gb.io","http":{"paths":[{"backend":{"service":{"name":"frontend-podinfo","port":{"name":"http"}}},"path":"/"}]}}]},"strategy":{"primaryGeoTag":"eu-west-1","type":"failover"}}}]'
          capabilities: Seamless Upgrades
          categories: Networking
          certified: "false"
          containerImage: docker.io/absaoss/k8gb:v0.11.4
          createdAt: "2021-09-24 12:00:00"
          description: A cloud native Kubernetes Global Balancer
          operatorframework.io/suggested-namespace: k8gb
          operators.operatorframework.io.bundle.channels.v1: alpha
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: k8gb
          operators.operatorframework.io/builder: operator-sdk-v1.12.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/k8gb-io/k8gb
          support: cncf-k8gb-maintainers@lists.cncf.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gslb resource for global load balancing strategy configuration
            displayName: Gslb
            kind: Gslb
            name: gslbs.k8gb.absa.oss
            version: v1beta1
          - description: Using ExternalDNS it synchronizes exposed Kubernetes Services
              and Ingresses with DNS providers
            displayName: DNSEndpoint
            kind: DNSEndpoint
            name: dnsendpoints.externaldns.k8s.io
            version: v1alpha1
        description: |
          **A cloud native Kubernetes Global Balancer**

          A Global Service Load Balancing solution with a focus on having cloud native qualities and work natively in a Kubernetes context.

          Key Differentiators:
           - Load balancing is based on timeproof DNS protocol which is perfect for global scope and extremely reliable
           - No dedicated management cluster and no single point of failure
           - Kubernetes native application health checks utilizing status of Liveness and Readiness probes for load balancing decisions
           - Configuration with a single Kubernetes CRD of `Gslb` kind

          Operator needs to be configured by setting couple of environment variables. This can be done by modifying
          the subscription yaml in the web ui or via kubectl. Here is an example of changing the `EDGE_DNS_ZONE`:

          ```yaml
          kind: Subscription
            ...
          spec:
            ...
            config:
              env:
              - name: CLUSTER_GEO_TAG
                value: us
              - name: EDGE_DNS_ZONE
                value: mycloud.example.com
                ...
           ```
           For more deployment variables see [helm code](https://github.com/k8gb-io/k8gb/blob/v0.8.3/chart/k8gb/templates/operator.yaml#L53:L68).

           For more information see [k8gb.io](https://k8gb.io).
        displayName: k8gb
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gslb
        - dns-lb
        - kuberneters-global-balancer
        - kubernetes-operator
        - balancer
        - multi-cluster
        links:
        - name: Home
          url: https://www.k8gb.io/
        - name: Source
          url: https://github.com/k8gb-io/k8gb
        maintainers:
        - email: dinar.valeev@absa.africa
          name: Dinar Valeev
        - email: jiri.kremser@gmail.com
          name: Jiri Kremser
        - email: kuritka@gmail.com
          name: Michal Kuritka
        - email: timofey.ilinykh@absa.africa
          name: Timofey Ilinykh
        - email: yury.tsarev@absa.africa
          name: Yury Tsarev
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: k8gb.io
          url: https://github.com/k8gb-io/k8gb
        relatedImages:
        - quay.io/openshift-community-operators/k8gb@sha256:9743f957b00e5ad344fed0c062d616d8222990139ac4afbf14871fd9813f0ef0
        - absaoss/k8s_crd:v0.0.11
        - docker.io/absaoss/k8gb:v0.11.4
        version: 0.11.4
      entries:
      - name: k8gb.v0.11.4
        version: 0.11.4
      name: alpha
    defaultChannel: alpha
    packageName: k8gb
    provider:
      name: k8gb.io
      url: https://github.com/k8gb-io/k8gb
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: global-load-balancer-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: global-load-balancer-operator.v1.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSRecord",
                "metadata": {
                  "name": "hello-global-record"
                },
                "spec": {
                  "endpoints": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    }
                  ],
                  "globalZoneRef": {
                    "name": "external-dns-zone"
                  },
                  "loadBalancingPolicy": "Multivalue",
                  "name": "hello.my.base.domain",
                  "ttl": 60
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSRecord",
                "metadata": {
                  "name": "route53-geoproximity-global-record-with-healthcheck"
                },
                "spec": {
                  "endpoints": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    }
                  ],
                  "globalZoneRef": {
                    "name": "route53-global-dns-zone"
                  },
                  "healthCheck": {
                    "failureThreshold": 3,
                    "httpGet": {
                      "host": "geoproximity-hc.${global_base_domain}",
                      "path": "/healthz",
                      "port": 80,
                      "scheme": "HTTP"
                    },
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 2
                  },
                  "loadBalancingPolicy": "Geoproximity",
                  "name": "geoproximity-hc.my.base.domain",
                  "ttl": 60
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSZone",
                "metadata": {
                  "name": "external-dns-zone"
                },
                "spec": {
                  "domain": "myglobalzone.mybasedomain.io",
                  "provider": {
                    "externalDNS": {
                      "annotations": {
                        "type": "global"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSZone",
                "metadata": {
                  "name": "route53-global-dns-zone"
                },
                "spec": {
                  "domain": "myglobalzone.mybasedomain.io",
                  "provider": {
                    "route53": {
                      "credentialsSecretRef": {
                        "name": "route53-global-zone-credentials",
                        "namespace": "mynamespace"
                      },
                      "zoneID": "Z083892239ROKNEP70BDY"
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalRouteDiscovery",
                "metadata": {
                  "name": "external-dns-globalroutediscovery"
                },
                "spec": {
                  "clusters": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3"
                    }
                  ],
                  "defaultLoadBalancingPolicy": "Multivalue",
                  "defaultTTL": 30,
                  "globalZoneRef": {
                    "name": "external-dns-zone"
                  },
                  "routeSelector": {
                    "matchLabels": {
                      "route-type": "global"
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalRouteDiscovery",
                "metadata": {
                  "name": "route53-globalroutediscovery"
                },
                "spec": {
                  "clusters": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3"
                    }
                  ],
                  "defaultLoadBalancingPolicy": "Multivalue",
                  "defaultTTL": 30,
                  "globalZoneRef": {
                    "name": "route53-global-dns-zone"
                  },
                  "routeSelector": {
                    "matchLabels": {
                      "route-type": "global"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking, Cloud Provider
          certified: "false"
          containerImage: quay.io/redhat-cop/global-load-balancer-operator@sha256:c0b6ac9b03571a74a56b28302d720e8aa4442233f7867d05ed365e022f7cb8f5
          createdAt: "2021-12-02T17:33:23Z"
          description: This operator creates automation around a DNS to operate as
            a global load balancer for a set of OpenShift clusters.
          operatorframework.io/suggested-namespace: global-load-balancer-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/global-load-balancer-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DNSEndpoint
            name: dnsendpoints.externaldns.k8s.io
            version: v1alpha1
          - description: GlobalDNSRecord is the Schema for the globaldnsrecords API
            displayName: Global DNSRecord
            kind: GlobalDNSRecord
            name: globaldnsrecords.redhatcop.redhat.io
            version: v1alpha1
          - description: GlobalDNSZone is the Schema for the globaldnszones API
            displayName: Global DNSZone
            kind: GlobalDNSZone
            name: globaldnszones.redhatcop.redhat.io
            version: v1alpha1
          - description: GlobalRouteDiscovery is the Schema for the globalroutediscoveries
              API
            displayName: Global Route Discovery
            kind: GlobalRouteDiscovery
            name: globalroutediscoveries.redhatcop.redhat.io
            version: v1alpha1
        description: "The global-load-balancer-operator implements automation to program
          a DNS service to act as global load balancer for applications deployed to
          multiple OpenShift clusters.\nThis operator is designed to be deployed to
          a control cluster which will watch the load balanced clusters (controlled
          clusters).\nThere are two main concepts (APIs) provided by this operator:\n\n1.
          GlobalDNSZone\n2. GlobalDNSRecord\n\n## GlobalDNSZone\n\nThe `GlobalDNSZone`
          CR allows you to configure a zone which will contain global load balanced
          records and the provider used to populate it.\nHere is an example of GlobalDNSZone:\n\n```yaml\napiVersion:
          redhatcop.redhat.io/v1alpha1\nkind: GlobalDNSZone\nmetadata:\n  name: external-dns-zone\nspec:\n
          \ # Add fields here\n  domain: global.myzone.io\n  provider:\n    externalDNS:\n
          \     annotations:\n        type: global\n```\n\nHere is a table summarizing
          the supported providers and their capabilities:\n\n| Provider  | Supports
          Health Checks  | Supports Multivalue LB | Supports Latency LB  | Supports
          GeoProximity LB  |\n|:--:|:--:|:---:|:---:|:---:|\n| External-dns  | no
          \ | yes | no  | no  |\n| Route53  | yes | yes(*)  | yes(*)  | yes(*)  |\n\n(*)
          only if all controlled clusters run on AWS.\n\n## GlobalDNSRecord\n\nThe
          `GlobalDNSRecord` CR allows you to specify the intention to create a global
          dns record. Here is an example\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          GlobalDNSRecord\nmetadata:\n  name: hello-global-record\nspec:\n  name:
          hello.global.myzone.io\n  endpoints:\n  - clusterName: cluster1\n    clusterCredentialRef:\n
          \     name: kubeconfig\n      namespace: cluster1\n    loadBalancerServiceRef:\n
          \     name: router-default\n      namespace: openshift-ingress\n  - clusterName:
          cluster2\n    clusterCredentialRef:\n      name: kubeconfig\n      namespace:
          cluster2\n    loadBalancerServiceRef:\n      name: router-default\n      namespace:
          openshift-ingress\n  - clusterName: cluster3\n    clusterCredentialRef:\n
          \     name: kubeconfig\n      namespace: cluster3\n    loadBalancerServiceRef:\n
          \     name: router-default\n      namespace: openshift-ingress\n  ttl: 60\n
          \ loadBalancingPolicy: Multivalue\n  globalZoneRef:\n    name: external-dns-zone\n
          \ healthCheck:\n    failureThreshold: 3\n    httpGet:\n      host: hello.global.myzone.io\n
          \     httpHeaders:\n        - name: ciao\n          value: hello\n      path:
          /readyz\n      port: 80\n      scheme: HTTP\n    periodSeconds: 10\n    successThreshold:
          1\n    timeoutSeconds: 1     \n```\n\nThe list of endpoints identifies the
          set of `LoadBalancer` type of services to watch on the remote clusters (at
          the moment only LoadBalancer services are supported). These are the `LoadBalancer`
          services created by the [ingress controller](https://docs.openshift.com/container-platform/4.5/networking/ingress-operator.html)
          on which the routers rely. Each entry of this list requires a reference
          to the loadbalancer service on the remote cluster and a reference to a local
          secret containing the credential to connect to the remote cluster.\n\nThis
          secret must contain one entry called `kubeconfig` with a kubeconfig file
          with a default context pointing to the remote cluster. The account used
          by the kubeconfig file (presumably a service account) will require at a
          minimum cluster-level permissions as described in this [cluster role](./docs/scripts/remote-account-cluster-role.yaml).\n\nThe
          `globalZoneRef` field refers to a local (same namespace) `GlobalZone` CR.
          The DNS record represented by this `GlobalDNSRecord`, will be created in
          the referenced zone.\n\n`ttl` is the TTL of the crated DNS record.\n\n`loadBalancingPolicy`
          is the load balancing policy for this global record. It must match one of
          the policy supported by the provider of the referenced `GlobalZone`.\n\nFinally,
          `healthcheck` represent a [probe](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/#probe-v1-core)
          to be used to test the health of a record. This field will be ignored if
          the provider does not support health checks.\n\n## External DNS Provider\n\nThe
          [external-dns](https://github.com/kubernetes-sigs/external-dns) provider
          delegates to external-dns the creation of the actual DNS records by creating
          a `DNSEndpoint` object.\nThe `DNSEndpoint` object will be created in the
          same namespace as the `GlobalDNSRecord` and will be owned by it.\nThe `DNSEdnpoint`
          object will have the same labels as the `GlobalDNSRecord` and the annotations
          specified in the GlobalDNSZone configuration.\nExternal-dns should be configured
          to watch for DNSEnpoints at the cluster level and to point to the desired
          provider.\nDetails on configuration can be found at the external-dns git
          repository.\nThe External-dns should be used as a fall back option when
          other options are not available as it does not support health checks and
          advanced load balancing policies.\n\n## AWS Route53 provider\n\nAWS Route53
          provider uses the Route53 service as a global loadbalancer and offers advanced
          routing capabilities via [route53 traffic policies](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/traffic-flow.html)
          (note that traffic policies will trigger an expense).\nThe following routing
          polices are currently supported:\n\n1. [Multivalue](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-multivalue)\n2.
          [Geoproximity](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-geoproximity)\n3.
          [Latency](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-latency)\n\nAWS
          Route53 provider at the moment requires that all the controlled clusters
          run in AWS.\n\nIf health checks are defined, a route53 health check originating
          from any reason (you have to ensure connectivity) will be created for each
          of the endpoint. Because the endpoint represent s a shared ELB (shared with
          other apps, that is) and the health check is app specific, we cannot use
          the ELB health check, so the route53 endpoint is created with one of the
          two IP exposed by the ELB. This is suboptimal, but it works in most situations.\n\n##
          Global Route Auto Discovery\n\nThe aboev examples showed how to create global
          DNS records. This can be good in some situations, but most of the times
          in an openshift deployment global DNS records will point to routes that
          are intended to be global.\nThe global-load-balancer operator can auto-discover
          these routes and automatically create the corresponding `GloablDNSRecord`.
          The `GlobalRouteDiscovery` CRD is used to configure the discovery process,
          here is an example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          GlobalRouteDiscovery\nmetadata:\n  name: route53-globalroutediscovery\nspec:\n
          \ clusters:\n  - clusterName: cluster1\n    clusterCredentialRef:\n      name:
          ${cluster1_secret_name}\n      namespace: cluster1\n...\n  routeSelector:\n
          \   matchLabels:\n      route-type: global\n  defaultLoadBalancingPolicy:
          Multivalue\n  defaultTTL: 30 \n  globalZoneRef:\n    name: route53-global-dns-zone\n```\n\nThis
          global discovery route will discover routes in the provided list of cluster.
          Only the routes that match the route selector will be considered global.
          \nThe default load balancing policy and default TTL can be expressed in
          the `GlobalRouteDiscovery` CR. However with the following annotations, it's
          possible to configure route-specific values:\n\n* `global-load-balancer-operator.redhat-cop.io/load-balancing-policy`
          to set the load balancing policy\n* `global-load-balancer-operator.redhat-cop.io/ttl`
          to set the TTL\n\nThe globalZoneRef refers to the global zone to be used
          for the created `GlobalDNSRecords`.\n\nHealth checks will also be automatically
          discovered. If the pods behind the route expose a readiness check of httpGet
          kind, that configuration will be used to create the GlobalDNSRecord health
          check.\nWhen more than one container is present in the pod, by default the
          first container will be examined for health check. This behavior can be
          overridden with the this annotation on the route: `global-load-balancer-operator.redhat-cop.io/container-probe`
          where the value will container the name of the container with teh correct
          readiness probe.\n\nIf routes with the same namespace and name exists in
          multiple cluster, the following conditions must be met:\n\n* all host names
          must be the same\n* all load balancing policy must be the same\n* all TTLs
          must be the same\n* all discovered readiness checks must be the same\n\n##
          Examples\n\nThese examples are intended to help you setting up working configuration
          with each of the providers\n\n### Cluster Set up\n\nTwo approaches for cluster
          setup are provided\n\n1. [One cluster, three ingress-gateways.](https://github.com/redhat-cop/global-load-balancer-operator/docs/one-cluster-three-ingress-gateways.md)
          This approach is intended for development purposes and has the objective
          to keep resource consumption at the minimum.\n2. [Control cluster and three
          controlled clusters in different regions.](https://github.com/redhat-cop/global-load-balancer-operator/docs/three-clusters.md).
          This approach represents a more realistic set-up albeit it consumes more
          resources.\n\nYou can also set up the cluster on your own, at the end the
          following conditions must be met:\n\nThree namespace `cluster1` `cluster2`
          `cluster3` are created.\nthe following environment variables are initialized
          for each cluster:\n\n1. <cluster>_secret_name. Pointing to a secret in each
          of the cluster namespaces containing a valid kubeconfig fot that cluster\n2.
          <cluster>_service_name.  Pointing to the name of the loadbalancer service
          to be used for that cluster.\n3. <cluster>_service_namespace. Pointing to
          the namespace of the loadbalancer service to be used for that cluster.\n\nHere
          are examples for the supported provider:\n\n1. [Setting up external-dns
          as provider](https://github.com/redhat-cop/global-load-balancer-operator/docs/external-dns-provider.md)\n2.
          [Setting up route53 as a provider](https://github.com/redhat-cop/global-load-balancer-operator/docs/aws-route53-provider.md)\n"
        displayName: Global Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Networking
        - Cloud Provider
        - Global Load Balancing
        - GLB
        - GTM
        - route53
        - DNS
        links:
        - name: GigHub Repository
          url: https://github.com/redhat-cop/global-load-balancer-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/global-load-balancer-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/global-load-balancer-operator@sha256:50771c320c8b7faea144f765535e89979f9f81e61d34c8dd2e86139fa68e222e
        - quay.io/redhat-cop/global-load-balancer-operator@sha256:c0b6ac9b03571a74a56b28302d720e8aa4442233f7867d05ed365e022f7cb8f5
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.4.2
      entries:
      - name: global-load-balancer-operator.v1.4.2
        version: 1.4.2
      - name: global-load-balancer-operator.v1.4.1
        version: 1.4.1
      - name: global-load-balancer-operator.v1.4.0
        version: 1.4.0
      - name: global-load-balancer-operator.v1.3.0
        version: 1.3.0
      - name: global-load-balancer-operator.v1.2.0
        version: 1.2.0
      - name: global-load-balancer-operator.v1.1.0
        version: 1.1.0
      - name: global-load-balancer-operator.v1.0.7
        version: 1.0.7
      - name: global-load-balancer-operator.v1.0.6
        version: 1.0.6
      - name: global-load-balancer-operator.v1.0.5
        version: 1.0.5
      - name: global-load-balancer-operator.v1.0.4
        version: 1.0.4
      - name: global-load-balancer-operator.v1.0.3
        version: 1.0.3
      - name: global-load-balancer-operator.v1.0.2
        version: 1.0.2
      - name: global-load-balancer-operator.v1.0.1
        version: 1.0.1
      - name: global-load-balancer-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: global-load-balancer-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: cli-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cli-manager-operator.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "CliManager",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-cli-manager-operator"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed",
                  "operatorLogLevel": "Normal"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-11-24"
          description: "The CLI Manager is a comprehensive tool designed to simplify
            the management of \nOpenShift CLI plugins within the OpenShift environment.
            \nModeled after the popular krew plugin manager, it offers seamless integration,
            \neasy installation, and efficient handling of a wide array of plugins,
            \nenhancing your OpenShift command-line experience.\n"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-cli-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          repository: https://github.com/openshift/cli-manager-operator
          skipRange: '>=0.1.1 <0.2.0'
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: CLI Manager
            kind: CliManager
            name: climanagers.operator.openshift.io
            version: v1
          - displayName: CLI Plugin
            kind: Plugin
            name: plugins.config.openshift.io
            version: v1alpha1
        description: "The CLI Manager is a comprehensive tool designed to simplify
          the management of \nOpenShift CLI plugins within the OpenShift environment.
          \nModeled after the popular krew plugin manager, it offers seamless integration,
          \neasy installation, and efficient handling of a wide array of plugins,
          \nenhancing your OpenShift command-line experience.\n"
        displayName: CLI Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cli-manager-operator
        - cli-manager
        links:
        - name: Source Code
          url: https://github.com/openshift/cli-manager
        - name: Source Code
          url: https://github.com/openshift/cli-manager-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/cli-manager/cli-manager-operator-bundle@sha256:f84f5609ed0c329c810bb85d66f24e2be6b0ae421c9870048d6af6079f01abed
        - registry.redhat.io/cli-manager/cli-manager-rhel9-operator@sha256:e68b034798ebb1cfa7e17c055dbeec8c8aa46afa7d1291a7a2dbecbb691f71ba
        - registry.redhat.io/cli-manager/cli-manager-rhel9@sha256:4185a2d8f361b3bafbf677e35229c2b58245d3a52dae44d67b5990b62ceffb94
        version: 0.2.0
      entries:
      - name: cli-manager-operator.v0.2.0
        version: 0.2.0
      - name: cli-manager-operator.v0.1.1
        version: 0.1.1
      name: tech-preview
    defaultChannel: tech-preview
    packageName: cli-manager
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Odigos
      provider-url: https://odigos.io
    name: odigos-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odigos-operator.v1.8.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.odigos.io/v1alpha1",
                "kind": "Odigos",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "odigos-operator"
                  },
                  "name": "odigos-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Logging & Tracing
          containerImage: registry.connect.redhat.com/odigos/odigos-certified-operator-ubi9@sha256:3045bd830d1f614e04e7d0444bbee2aac6bf0f7c7eb5a1f4e418888d3a383d2b
          createdAt: "2025-10-23T21:01:56Z"
          description: Odigos enables automatic distributed tracing with OpenTelemetry
            and eBPF.
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: Odigos Enterprise subscription
            (for enterprise features)
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Odigos
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Odigos is the Schema for the odigos API
            displayName: Odigos
            kind: Odigos
            name: odigos.operator.odigos.io
            version: v1alpha1
        description: |-
          The Odigos Operator provides options for installing and configuring Odigos.

          Upon creation of an Odigos resource, the Odigos Operator installs the following Odigos components:

          - Instrumentor
          - Odiglet
          - Autoscaler
          - Scheduler
          - Frontend UI

          With Odigos installed, follow the Odigos docs at docs.odigos.io for instructions on instrumenting applications and configuring destinations.
        displayName: Odigos Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - OpenTelemetry
        - eBPF
        - tracing
        - observability
        - distributed tracing
        - otel
        - monitoring
        links:
        - name: Odigos
          url: https://odigos.io
        - name: Odigos Documentation
          url: https://docs.odigos.io
        - name: Odigos on Github
          url: https://github.com/odigos-io/odigos
        maintainers:
        - email: mike@odigos.io
          name: Mike Dame
        maturity: alpha
        minKubeVersion: 1.20.15
        provider:
          name: Odigos
          url: https://odigos.io
        relatedImages:
        - registry.connect.redhat.com/odigos/odigos-enterprise-instrumentor-ubi9@sha256:825989f7c215ead4ad1ef4a08a4f08c2ac92bcb9e6119498fcd197e239615cf6
        - registry.connect.redhat.com/odigos/odigos-enterprise-odiglet-ubi9@sha256:7b4405c8b46c19ec2120863d68684aae036623e4bc118d0b76b28d7ed547b7a9
        - registry.connect.redhat.com/odigos/odigos-odiglet-ubi9@sha256:707a17cf290f1f4959525b51b4c3f3bec5ab84ebbc7ab3744f99698866c85587
        - registry.connect.redhat.com/odigos/odigos-instrumentor-ubi9@sha256:cc72a55962322f911d2c4fa5bd9a0cb976e600883c43846d5550a10d60d93a83
        - registry.connect.redhat.com/odigos/operator-bundle@sha256:4c478ef3756f061bcb682bcbb39aa1abcad768ed50230629c1a1ccea77ab3ff1
        - registry.connect.redhat.com/odigos/odigos-scheduler-ubi9@sha256:df9474ea9f0e789ce94fb212c710163959b6d02f8cc90ecdf88339d645703418
        - registry.connect.redhat.com/odigos/odigos-ui-ubi9@sha256:d825f32fd723ba969a3dc101731e006e7323d9bd9a85d9ceeaec5027f4dadcc0
        - registry.connect.redhat.com/odigos/odigos-autoscaler-ubi9@sha256:1ee37adda9ee8bc52491ffd1c60ae0e1d99ba232fcf7af81fdeef79646069bab
        - registry.connect.redhat.com/odigos/odigos-certified-operator-ubi9@sha256:3045bd830d1f614e04e7d0444bbee2aac6bf0f7c7eb5a1f4e418888d3a383d2b
        - registry.connect.redhat.com/odigos/odigos-collector-ubi9@sha256:d8660623961e54d90150df87a89459fb164724f16a3b151c0cd7bbbeaa773aae
        version: 1.8.4
      entries:
      - name: odigos-operator.v1.8.4
        version: 1.8.4
      name: alpha
    defaultChannel: alpha
    packageName: odigos-operator
    provider:
      name: Odigos
      url: https://odigos.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NdmSpc project
      provider-url: ""
    name: ndmspc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ndmspc-operator.v0.20250209.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.ndmspc.io/v1alpha1",
                "kind": "NdmSpcConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ndmspc-operator",
                    "app.kubernetes.io/instance": "ndmspcconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ndmspcconfig",
                    "app.kubernetes.io/part-of": "ndmspc-operator"
                  },
                  "name": "ndmspc-sample"
                },
                "spec": {
                  "executor": {
                    "image": "registry.gitlab.com/ndmspc/api:v0.20240215.2",
                    "name": "executor"
                  },
                  "executors": 1,
                  "ingressclasstype": "nginx",
                  "ingressenabled": true,
                  "ingresshostdomain": "127.0.0.1.sslip.io",
                  "ingressnostname": "ndmspc",
                  "ingressssltraefik": false,
                  "naf": {
                    "image": "registry.gitlab.com/ndmspc/naf:v0.20250129.0",
                    "name": "naf"
                  },
                  "ndmvr": {
                    "image": "registry.gitlab.com/ndmspc/ndmvr/shared:v0.20230320.0",
                    "name": "ndmvr"
                  },
                  "salsa": {
                    "image": "registry.gitlab.com/ndmspc/user/ndmspc:v0.20240412.0"
                  },
                  "storage": {
                    "image": "registry.gitlab.com/ndmspc/storage-server:v0.20250205.0",
                    "mongodb": {
                      "image": "docker.io/library/mongo:latest",
                      "password": "admin",
                      "port": 27017,
                      "username": "admin"
                    },
                    "name": "storage",
                    "port": 8080
                  },
                  "webapp": {
                    "image": "registry.gitlab.com/ndmspc/react-ndmspc:v0.20240412.0",
                    "name": ""
                  },
                  "webappcontainerport": 8080,
                  "webapps": 1,
                  "worker": {
                    "resources": {
                      "limits": {
                        "cpu": "200m",
                        "memory": "2Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "1Gi"
                      }
                    }
                  },
                  "workers": 2,
                  "workerslots": 1,
                  "zmq2ws": {
                    "image": "registry.gitlab.com/ndmspc/zmq2ws:v1.20231012.0",
                    "name": "zmq2ws"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: registry.gitlab.com/ndmspc/ndmspc-operator:0.20250209.0
          createdAt: "2025-02-09T12:49:06Z"
          description: The NdmSpc operator automates the deployment and management
            of Ndmspc suite on Kubernetes cluster.
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://gitlab.com/ndmspc/ndmspc-operator
          support: NDMSPC Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NdmSpc configuration
            displayName: NdmSpc Config
            kind: NdmSpcConfig
            name: ndmspcconfigs.apps.ndmspc.io
            version: v1alpha1
        description: "The NdmSpc operator automates the deployment and management
          of Ndmspc suite on Kubernetes cluster. This operator allows user to deploy
          SALSA cluster with ZMQ2WS and job executor service and specify custom webapp
          page.\n\n### Capabilities\n\n- SALSA cluster\n- ZMQ2WS api service\n- Job
          executor service \n- Custom WebApp page\n"
        displayName: NdmSpc operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ndmspc
        links:
        - name: Ndmspc Operator
          url: https://ndmspc.gitlab.io/docs
        maintainers:
        - email: ndmspc@gmail.com
          name: NdmSpc Support
        maturity: alpha
        provider:
          name: NdmSpc project
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/ndmspc-operator@sha256:b1f47ce0cd6930d902dc3538a1a87140dbe9257dd50773a518fc2350185f90cc
        - registry.gitlab.com/ndmspc/ndmspc-operator:0.20250209.0
        version: 0.20250209.0
      entries:
      - name: ndmspc-operator.v0.20250209.0
        version: 0.20250209.0
      - name: ndmspc-operator.v0.20250131.0
        version: 0.20250131.0
      - name: ndmspc-operator.v0.20240412.0
        version: 0.20240412.0
      - name: ndmspc-operator.v0.11.6
        version: 0.11.6
      - name: ndmspc-operator.v0.11.4
        version: 0.11.4
      - name: ndmspc-operator.v0.11.3
        version: 0.11.3
      - name: ndmspc-operator.v0.11.2
        version: 0.11.2
      - name: ndmspc-operator.v0.11.1
        version: 0.11.1
      - name: ndmspc-operator.v0.10.2
        version: 0.10.2
      - name: ndmspc-operator.v0.10.1
        version: 0.10.1
      - name: ndmspc-operator.v0.10.0
        version: 0.10.0
      - name: ndmspc-operator.v0.9.0
        version: 0.9.0
      - name: ndmspc-operator.v0.7.4
        version: 0.7.4
      - name: ndmspc-operator.v0.7.1
        version: 0.7.1
      - name: ndmspc-operator.v0.6.0
        version: 0.6.0
      - name: ndmspc-operator.v0.5.0
        version: 0.5.0
      name: alpha
    defaultChannel: alpha
    packageName: ndmspc-operator
    provider:
      name: NdmSpc project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: K4all
      provider-url: https://github.com/gpillon/kubevirt-wol
    name: kubevirt-wol
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubevirt-wol.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kubevirt-wol"
                  },
                  "name": "default"
                },
                "spec": {
                  "agent": {
                    "imagePullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "All",
                  "namespaceSelectors": [
                    "default"
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "explicit-example"
                },
                "spec": {
                  "agent": {
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 600,
                  "discoveryMode": "Explicit",
                  "explicitMappings": [
                    {
                      "macAddress": "52:54:00:12:34:56",
                      "namespace": "default",
                      "vmName": "my-vm-1"
                    },
                    {
                      "macAddress": "52:54:00:ab:cd:ef",
                      "namespace": "production",
                      "vmName": "my-vm-2"
                    }
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "labelselector-example"
                },
                "spec": {
                  "agent": {
                    "nodeSelector": {
                      "node-role.kubernetes.io/worker": ""
                    },
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "LabelSelector",
                  "namespaceSelectors": [
                    "production"
                  ],
                  "vmSelector": {
                    "matchLabels": {
                      "wol.pillon.org/enabled": "true"
                    }
                  },
                  "wolPorts": [
                    9,
                    7
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: OpenShift Optional
          containerImage: quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
          createdAt: "2025-10-27T02:37:07Z"
          description: |
            A Kubernetes Operator that enables Wake-on-LAN functionality for KubeVirt VirtualMachines. This operator listens for WOL magic packets on the network and automatically starts the corresponding VirtualMachines in your Kubernetes cluster.
          operatorframework.io/suggested-namespace: kubevirt-wol-system
          operatorframework.io/suggested-namespace-template: |
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "kubevirt-wol-system",
                "annotations": {
                  "openshift.io/node-selector": ""
                },
                "labels": {
                  "openshift.io/cluster-monitoring": "true"
                }
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["servicemonitors.monitoring.coreos.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/gpillon/kubevirt-wol
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WolConfig is the Schema for the Wake-on-LAN configurations
              API
            displayName: Wol Config
            kind: WolConfig
            name: wolconfigs.wol.pillon.org
            version: v1beta1
        description: "A Kubernetes Operator that enables Wake-on-LAN functionality
          for KubeVirt VirtualMachines.\n\n**Installation**: This operator must be
          installed in the `kubevirt-wol-system` namespace.\n\n**Prerequisites**:
          \n- **Required**: KubeVirt must be installed in your cluster.\n- **Optional**:
          Prometheus Operator (for ServiceMonitor-based metrics collection). The operator
          works without it, but metrics will not be automatically scraped.\n\n**Features**:\n-
          Automatically starts VirtualMachines when WOL magic packets are received\n-
          Supports multiple WOL ports (default: UDP 9)\n- Three discovery modes: All
          VMs, Label Selector, or Explicit MAC mappings\n- Dynamic agent deployment
          per WolConfig\n- Automatic cleanup via OwnerReference\n- Prometheus metrics
          integration (ServiceMonitor optional)\n\n**Post-Installation (OpenShift)**:
          To enable metrics collection in OpenShift cluster monitoring, run:\n```\noc
          label namespace <operator-namespace> openshift.io/cluster-monitoring=true\n```\nReplace
          `<operator-namespace>` with the namespace where the operator is installed
          (e.g., `kubevirt-wol-system`).\n\nAfter labeling the namespace, the operator
          metrics will appear in OpenShift Console → Observe → Targets.\n\n**Note
          on Metrics**: If Prometheus Operator is not installed, the ServiceMonitor
          resource will not be reconciled, but the operator will continue to function
          normally. Metrics are still available at the `/metrics` endpoint.\n\n**Usage**:
          After installation, create a WolConfig resource to configure Wake-on-LAN
          for your KubeVirt VirtualMachines.\n\n**Documentation**: https://github.com/gpillon/kubevirt-wol\n"
        displayName: Kubevirt Wake on Lan
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubevirt
        - wol
        - wake on lan
        - wake
        links:
        - name: Kubevirt Wol
          url: https://github.com/gpillon/kubevirt-wol
        maintainers:
        - email: gpillon@redhat.com
          name: Giorgio Pillon
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: K4all
          url: https://github.com/gpillon/kubevirt-wol
        relatedImages:
        - quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
        - quay.io/community-operator-pipeline-prod/kubevirt-wol:0.0.2
        version: 0.0.2
      entries:
      - name: kubevirt-wol.v0.0.2
        version: 0.0.2
      name: candidate-v0
    - currentCSV: kubevirt-wol.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kubevirt-wol"
                  },
                  "name": "default"
                },
                "spec": {
                  "agent": {
                    "imagePullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "All",
                  "namespaceSelectors": [
                    "default"
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "explicit-example"
                },
                "spec": {
                  "agent": {
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 600,
                  "discoveryMode": "Explicit",
                  "explicitMappings": [
                    {
                      "macAddress": "52:54:00:12:34:56",
                      "namespace": "default",
                      "vmName": "my-vm-1"
                    },
                    {
                      "macAddress": "52:54:00:ab:cd:ef",
                      "namespace": "production",
                      "vmName": "my-vm-2"
                    }
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "labelselector-example"
                },
                "spec": {
                  "agent": {
                    "nodeSelector": {
                      "node-role.kubernetes.io/worker": ""
                    },
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "LabelSelector",
                  "namespaceSelectors": [
                    "production"
                  ],
                  "vmSelector": {
                    "matchLabels": {
                      "wol.pillon.org/enabled": "true"
                    }
                  },
                  "wolPorts": [
                    9,
                    7
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: OpenShift Optional
          containerImage: quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
          createdAt: "2025-10-27T02:37:07Z"
          description: |
            A Kubernetes Operator that enables Wake-on-LAN functionality for KubeVirt VirtualMachines. This operator listens for WOL magic packets on the network and automatically starts the corresponding VirtualMachines in your Kubernetes cluster.
          operatorframework.io/suggested-namespace: kubevirt-wol-system
          operatorframework.io/suggested-namespace-template: |
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "kubevirt-wol-system",
                "annotations": {
                  "openshift.io/node-selector": ""
                },
                "labels": {
                  "openshift.io/cluster-monitoring": "true"
                }
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["servicemonitors.monitoring.coreos.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/gpillon/kubevirt-wol
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WolConfig is the Schema for the Wake-on-LAN configurations
              API
            displayName: Wol Config
            kind: WolConfig
            name: wolconfigs.wol.pillon.org
            version: v1beta1
        description: "A Kubernetes Operator that enables Wake-on-LAN functionality
          for KubeVirt VirtualMachines.\n\n**Installation**: This operator must be
          installed in the `kubevirt-wol-system` namespace.\n\n**Prerequisites**:
          \n- **Required**: KubeVirt must be installed in your cluster.\n- **Optional**:
          Prometheus Operator (for ServiceMonitor-based metrics collection). The operator
          works without it, but metrics will not be automatically scraped.\n\n**Features**:\n-
          Automatically starts VirtualMachines when WOL magic packets are received\n-
          Supports multiple WOL ports (default: UDP 9)\n- Three discovery modes: All
          VMs, Label Selector, or Explicit MAC mappings\n- Dynamic agent deployment
          per WolConfig\n- Automatic cleanup via OwnerReference\n- Prometheus metrics
          integration (ServiceMonitor optional)\n\n**Post-Installation (OpenShift)**:
          To enable metrics collection in OpenShift cluster monitoring, run:\n```\noc
          label namespace <operator-namespace> openshift.io/cluster-monitoring=true\n```\nReplace
          `<operator-namespace>` with the namespace where the operator is installed
          (e.g., `kubevirt-wol-system`).\n\nAfter labeling the namespace, the operator
          metrics will appear in OpenShift Console → Observe → Targets.\n\n**Note
          on Metrics**: If Prometheus Operator is not installed, the ServiceMonitor
          resource will not be reconciled, but the operator will continue to function
          normally. Metrics are still available at the `/metrics` endpoint.\n\n**Usage**:
          After installation, create a WolConfig resource to configure Wake-on-LAN
          for your KubeVirt VirtualMachines.\n\n**Documentation**: https://github.com/gpillon/kubevirt-wol\n"
        displayName: Kubevirt Wake on Lan
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubevirt
        - wol
        - wake on lan
        - wake
        links:
        - name: Kubevirt Wol
          url: https://github.com/gpillon/kubevirt-wol
        maintainers:
        - email: gpillon@redhat.com
          name: Giorgio Pillon
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: K4all
          url: https://github.com/gpillon/kubevirt-wol
        relatedImages:
        - quay.io/community-operator-pipeline-prod/kubevirt-wol:0.0.2
        - quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
        version: 0.0.2
      entries:
      - name: kubevirt-wol.v0.0.2
        version: 0.0.2
      name: fast-v0
    - currentCSV: kubevirt-wol.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kubevirt-wol"
                  },
                  "name": "default"
                },
                "spec": {
                  "agent": {
                    "imagePullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "All",
                  "namespaceSelectors": [
                    "default"
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "explicit-example"
                },
                "spec": {
                  "agent": {
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 600,
                  "discoveryMode": "Explicit",
                  "explicitMappings": [
                    {
                      "macAddress": "52:54:00:12:34:56",
                      "namespace": "default",
                      "vmName": "my-vm-1"
                    },
                    {
                      "macAddress": "52:54:00:ab:cd:ef",
                      "namespace": "production",
                      "vmName": "my-vm-2"
                    }
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "labelselector-example"
                },
                "spec": {
                  "agent": {
                    "nodeSelector": {
                      "node-role.kubernetes.io/worker": ""
                    },
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "LabelSelector",
                  "namespaceSelectors": [
                    "production"
                  ],
                  "vmSelector": {
                    "matchLabels": {
                      "wol.pillon.org/enabled": "true"
                    }
                  },
                  "wolPorts": [
                    9,
                    7
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: OpenShift Optional
          containerImage: quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
          createdAt: "2025-10-27T02:37:07Z"
          description: |
            A Kubernetes Operator that enables Wake-on-LAN functionality for KubeVirt VirtualMachines. This operator listens for WOL magic packets on the network and automatically starts the corresponding VirtualMachines in your Kubernetes cluster.
          operatorframework.io/suggested-namespace: kubevirt-wol-system
          operatorframework.io/suggested-namespace-template: |
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "kubevirt-wol-system",
                "annotations": {
                  "openshift.io/node-selector": ""
                },
                "labels": {
                  "openshift.io/cluster-monitoring": "true"
                }
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["servicemonitors.monitoring.coreos.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/gpillon/kubevirt-wol
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WolConfig is the Schema for the Wake-on-LAN configurations
              API
            displayName: Wol Config
            kind: WolConfig
            name: wolconfigs.wol.pillon.org
            version: v1beta1
        description: "A Kubernetes Operator that enables Wake-on-LAN functionality
          for KubeVirt VirtualMachines.\n\n**Installation**: This operator must be
          installed in the `kubevirt-wol-system` namespace.\n\n**Prerequisites**:
          \n- **Required**: KubeVirt must be installed in your cluster.\n- **Optional**:
          Prometheus Operator (for ServiceMonitor-based metrics collection). The operator
          works without it, but metrics will not be automatically scraped.\n\n**Features**:\n-
          Automatically starts VirtualMachines when WOL magic packets are received\n-
          Supports multiple WOL ports (default: UDP 9)\n- Three discovery modes: All
          VMs, Label Selector, or Explicit MAC mappings\n- Dynamic agent deployment
          per WolConfig\n- Automatic cleanup via OwnerReference\n- Prometheus metrics
          integration (ServiceMonitor optional)\n\n**Post-Installation (OpenShift)**:
          To enable metrics collection in OpenShift cluster monitoring, run:\n```\noc
          label namespace <operator-namespace> openshift.io/cluster-monitoring=true\n```\nReplace
          `<operator-namespace>` with the namespace where the operator is installed
          (e.g., `kubevirt-wol-system`).\n\nAfter labeling the namespace, the operator
          metrics will appear in OpenShift Console → Observe → Targets.\n\n**Note
          on Metrics**: If Prometheus Operator is not installed, the ServiceMonitor
          resource will not be reconciled, but the operator will continue to function
          normally. Metrics are still available at the `/metrics` endpoint.\n\n**Usage**:
          After installation, create a WolConfig resource to configure Wake-on-LAN
          for your KubeVirt VirtualMachines.\n\n**Documentation**: https://github.com/gpillon/kubevirt-wol\n"
        displayName: Kubevirt Wake on Lan
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubevirt
        - wol
        - wake on lan
        - wake
        links:
        - name: Kubevirt Wol
          url: https://github.com/gpillon/kubevirt-wol
        maintainers:
        - email: gpillon@redhat.com
          name: Giorgio Pillon
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: K4all
          url: https://github.com/gpillon/kubevirt-wol
        relatedImages:
        - quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
        - quay.io/community-operator-pipeline-prod/kubevirt-wol:0.0.2
        version: 0.0.2
      entries:
      - name: kubevirt-wol.v0.0.2
        version: 0.0.2
      name: stable-v0
    defaultChannel: stable-v0
    packageName: kubevirt-wol
    provider:
      name: K4all
      url: https://github.com/gpillon/kubevirt-wol
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: self-node-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: self-node-remediation.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediation",
                "metadata": {
                  "name": "selfnoderemediation-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationConfig",
                "metadata": {
                  "name": "self-node-remediation-config",
                  "namespace": "self-node-remediation"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationTemplate",
                "metadata": {
                  "name": "selfnoderemediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: registry.redhat.io/workload-availability/self-node-remediation-rhel9-operator@sha256:f13f5b22014e8819be39f45e476aef4a67e3645f9d20ad67b10fae9325ae473a
          createdAt: "2025-11-13 13:22:41"
          description: Self Node Remediation Operator for remediate itself in case
            of a failure.
          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: "true"
          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.skipRange: '>=0.10.0 <0.11.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/self-node-remediation
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SelfNodeRemediationConfig is the Schema for the selfnoderemediationconfigs
              API in which a user can configure the self node remediation agents
            displayName: Self Node Remediation Config
            kind: SelfNodeRemediationConfig
            name: selfnoderemediationconfigs.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediation is the Schema for the selfnoderemediations
              API
            displayName: Self Node Remediation
            kind: SelfNodeRemediation
            name: selfnoderemediations.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediationTemplate is the Schema for the selfnoderemediationtemplates
              API
            displayName: Self Node Remediation Template
            kind: SelfNodeRemediationTemplate
            name: selfnoderemediationtemplates.self-node-remediation.medik8s.io
            version: v1alpha1
        description: This self node remediation operator is using an alternate mechanism
          for a node in a cluster to detect its health status and take actions to
          remediate itself in case of a failure. While not all remediation events
          can result in the node returning to a healthy state, the operator does allow
          surviving parts of the cluster to assume the node has reached a safe state
          so that it’s workloads can be automatically recovered. A prerequisite for
          the Self Node Remediation operator is a functioning health detection system
          that implements the external remediation API, such as Node Health Check
          Operator or Machine Health Check Controller (in OCP or Cluster-API based
          clusters). Once a node/machine is unhealthy, the detection system will create
          the SelfNodeRemediation CR, which triggers the Self Node Remediation Operator.
          For this the configuration of the health detection system needs to refer
          to a SelfNodeRemediationTemplate CR. Such a template is created by default
          in the operator's namespace, for usage in other namespaces it needs to be
          created manually. The Node Health Check Operator is configured to use Self
          Node Remediation by default.
        displayName: Self Node Remediation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - fencing
        - remediation
        - auto-healing
        - recovery
        - high-availability
        - baremetal
        - SNR
        links:
        - name: Self Node Remediation
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance/about-remediation-fencing-maintenance
        - name: Source Code
          url: https://github.com/medik8s/self-node-remediation
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/self-node-remediation-rhel9-operator@sha256:f13f5b22014e8819be39f45e476aef4a67e3645f9d20ad67b10fae9325ae473a
        - registry.redhat.io/workload-availability/self-node-remediation-operator-bundle@sha256:3bf8ef27f9a7f50c7e9fa066cabe8927efc8a3a890783bd9b60156b4ef417a77
        version: 0.11.0
      entries:
      - name: self-node-remediation.v0.11.0
        version: 0.11.0
      - name: self-node-remediation.v0.10.2
        version: 0.10.2
      - name: self-node-remediation.v0.10.1
        version: 0.10.1
      - name: self-node-remediation.v0.10.0
        version: 0.10.0
      name: stable
    defaultChannel: stable
    packageName: self-node-remediation
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: openshift-external-secrets-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: external-secrets-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secret-cluster"
                },
                "spec": {
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "gcp-secret"
                        },
                        "secretKey": "key"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    },
                    "target": {
                      "creationPolicy": "Owner",
                      "name": "gcp-secret-k8s"
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "app.kubernetes.io/managed-by": "external-secrets-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-cluster-secretstore"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds",
                            "namespace": "external-secrets"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-secret",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "gcp-secret",
                        "property": "Key"
                      },
                      "secretKey": "Key"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secretstore"
                  },
                  "target": {
                    "creationPolicy": "Owner",
                    "name": "k8s-secret"
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "SecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/disable-maintenance-checks": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secretstore",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "PushSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "pushsecret-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "config": {
                    "gcp": {
                      "projectID": "openshift-sample-project",
                      "secret": {
                        "name": "test",
                        "replicationPolicy": "automatic",
                        "version": "latest"
                      }
                    }
                  },
                  "secretStoreRefs": [
                    {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    }
                  ],
                  "selector": {
                    "secret": {
                      "name": "gcp-secret-k8s"
                    }
                  }
                }
              },
              {
                "apiVersion": "generators.external-secrets.io/v1alpha1",
                "kind": "Password",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "password-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "excludeLowercase": false,
                  "excludeNumbers": false,
                  "excludeUppercase": false,
                  "includeSymbols": true,
                  "length": 20
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsConfig",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsManager",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
          createdAt: 2025-11-03T08:48:11
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.0
          operator.openshift.io/uninstall-message: The External Secrets Operator for
            Red Hat OpenShift will be removed from external-secrets-operator namespace.
            If your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/external_secrets_operator/external-secrets-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: external-secrets-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/external-secrets-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ACRAccessToken returns an Azure Container Registry token that can be used for pushing/pulling images.
              Note: by default it will return an ACR Refresh Token with full access (depending on the identity).
              This can be scoped down to the repository level using .spec.scope. In case scope is defined it will return an ACR Access Token.

              See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
            displayName: ACRAccessToken
            kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterExternalSecret is the Schema for the clusterexternalsecrets
              API.
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1
          - description: ClusterGenerator represents a cluster-wide generator which
              can be referenced as part of `generatorRef` fields.
            displayName: ClusterGenerator
            kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterPushSecret is the Schema for the clusterpushsecrets
              API.
            displayName: ClusterPushSecret
            kind: ClusterPushSecret
            name: clusterpushsecrets.external-secrets.io
            version: v1alpha1
          - description: ClusterSecretStore represents a secure external location
              for storing secrets, which can be referenced as part of `storeRef` fields.
            displayName: ClusterSecretStore
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1
          - description: |-
              ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token. The authorization
              token is valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded and
              used in a Docker login command to authenticate to a registry. For more information, see Registry authentication
              (https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth)
              in the Amazon Elastic Container Registry User Guide.
            displayName: ECRAuthorizationToken
            kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: ExternalSecret is the Schema for the external-secrets API.
            displayName: ExternalSecret
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1
          - description: |-
              ExternalSecretsConfig describes configuration and information about the managed external-secrets deployment.
              The name must be `cluster` as ExternalSecretsConfig is a singleton, allowing only one instance per cluster.

              When an ExternalSecretsConfig is created, the controller installs the external-secrets and keeps it in the desired state.
            displayName: ExternalSecretsConfig
            kind: ExternalSecretsConfig
            name: externalsecretsconfigs.operator.openshift.io
            version: v1alpha1
          - description: |-
              ExternalSecretsManager describes configuration and information about the deployments managed by
              the operator. The name must be `cluster` to make ExternalSecretsManager a singleton that is, to
              allow only one instance of ExternalSecretsManager per cluster.

              ExternalSecretsManager is mainly for configuring the global options and enabling the features, which
              serves as a common/centralized config for managing multiple controllers of the operator. The object
              will be created during the operator installation.
            displayName: ExternalSecretsManager
            kind: ExternalSecretsManager
            name: externalsecretsmanagers.operator.openshift.io
            version: v1alpha1
          - description: GCRAccessToken generates a GCP access token that can be used
              to authenticate with GCR.
            displayName: GCRAccessToken
            kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: GeneratorState is the Schema for the generatorstates API.
            displayName: GeneratorState
            kind: GeneratorState
            name: generatorstates.generators.external-secrets.io
            version: v1alpha1
          - description: GithubAccessToken generates a ghs_ access token
            displayName: GithubAccessToken
            kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Grafana is the Schema for the grafanas API.
            displayName: Grafana
            kind: Grafana
            name: grafanas.generators.external-secrets.io
            version: v1alpha1
          - description: MFA generates a new TOTP token that is compliant with RFC
              6238.
            displayName: MFA
            kind: MFA
            name: mfas.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Password generates a random password based on the configuration parameters in spec. You can specify the length,
              character set and other attributes.
            displayName: Password
            kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - description: PushSecret is the Schema for the pushsecrets API.
            displayName: PushSecret
            kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: QuayAccessToken generates a Quay OAuth token for pulling/pushing
              images.
            displayName: QuayAccessToken
            kind: QuayAccessToken
            name: quayaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: SecretStore represents a secure external location for storing
              secrets, which can be referenced as part of `storeRef` fields.
            displayName: SecretStore
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1
          - description: SSHKey generates SSH key pairs.
            displayName: SSHKey
            kind: SSHKey
            name: sshkeys.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              STSSessionToken uses the GetSessionToken API to retrieve an authorization token. The authorization token is
              valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded.
              For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
            displayName: STSSessionToken
            kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - description: UUID generates a version 1 UUID (for example, 6ba7b810-9dad-11d1-80b4-00c04fd430c8).
            displayName: UUID
            kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - description: VaultDynamicSecret is the Schema for the vaultdynamicsecrets
              API.
            displayName: VaultDynamicSecret
            kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Webhook connects to a third party API server to handle the secrets generation configuration parameters in spec. You
              can specify the server, the token, and additional body parameters. See documentation for the full API specification
              for requests and responses.
            displayName: Webhook
            kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: External Secrets Operator for Red Hat OpenShift deploys and manages
          `external-secrets` application in OpenShift clusters. `external-secrets`
          provides an uniform interface to fetch secrets stored in external providers
          like  AWS Secrets Manager, HashiCorp Vault, Google Secrets Manager, Azure
          Key Vault, IBM Cloud Secrets Manager to name a few, stores them as secrets
          in OpenShift. It provides APIs to define authentication and the details
          of the secret to fetch.
        displayName: External Secrets Operator for Red Hat OpenShift
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - secrets
        - external-secrets
        - external-secrets-operator
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/security_and_compliance/external-secrets-operator-for-red-hat-openshift
        - name: External Secrets Operator
          url: https://github.com/openshift/external-secrets-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/external-secrets-operator/bitwarden-sdk-server-rhel9@sha256:0e00fb4b8fc3815e55e9c593766cfa85a34671b8401eabc488b48b66b5d1b374
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-bundle@sha256:8c59a65dda3545cf009585f154e62bd19dce02c95214b76ae164f51999ad760c
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
        - registry.redhat.io/external-secrets-operator/external-secrets-rhel9@sha256:a594323b4d3ad6a739246f3767231ad2d57ca94bb1d035610d52a525b420b452
        version: 1.0.0
      entries:
      - name: external-secrets-operator.v1.0.0
        version: 1.0.0
      name: stable-v1
    - currentCSV: external-secrets-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secret-cluster"
                },
                "spec": {
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "gcp-secret"
                        },
                        "secretKey": "key"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    },
                    "target": {
                      "creationPolicy": "Owner",
                      "name": "gcp-secret-k8s"
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "app.kubernetes.io/managed-by": "external-secrets-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-cluster-secretstore"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds",
                            "namespace": "external-secrets"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-secret",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "gcp-secret",
                        "property": "Key"
                      },
                      "secretKey": "Key"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secretstore"
                  },
                  "target": {
                    "creationPolicy": "Owner",
                    "name": "k8s-secret"
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "SecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/disable-maintenance-checks": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secretstore",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "PushSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "pushsecret-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "config": {
                    "gcp": {
                      "projectID": "openshift-sample-project",
                      "secret": {
                        "name": "test",
                        "replicationPolicy": "automatic",
                        "version": "latest"
                      }
                    }
                  },
                  "secretStoreRefs": [
                    {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    }
                  ],
                  "selector": {
                    "secret": {
                      "name": "gcp-secret-k8s"
                    }
                  }
                }
              },
              {
                "apiVersion": "generators.external-secrets.io/v1alpha1",
                "kind": "Password",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "password-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "excludeLowercase": false,
                  "excludeNumbers": false,
                  "excludeUppercase": false,
                  "includeSymbols": true,
                  "length": 20
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsConfig",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsManager",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
          createdAt: 2025-11-03T08:48:11
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.0
          operator.openshift.io/uninstall-message: The External Secrets Operator for
            Red Hat OpenShift will be removed from external-secrets-operator namespace.
            If your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/external_secrets_operator/external-secrets-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: external-secrets-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/external-secrets-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ACRAccessToken returns an Azure Container Registry token that can be used for pushing/pulling images.
              Note: by default it will return an ACR Refresh Token with full access (depending on the identity).
              This can be scoped down to the repository level using .spec.scope. In case scope is defined it will return an ACR Access Token.

              See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
            displayName: ACRAccessToken
            kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterExternalSecret is the Schema for the clusterexternalsecrets
              API.
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1
          - description: ClusterGenerator represents a cluster-wide generator which
              can be referenced as part of `generatorRef` fields.
            displayName: ClusterGenerator
            kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterPushSecret is the Schema for the clusterpushsecrets
              API.
            displayName: ClusterPushSecret
            kind: ClusterPushSecret
            name: clusterpushsecrets.external-secrets.io
            version: v1alpha1
          - description: ClusterSecretStore represents a secure external location
              for storing secrets, which can be referenced as part of `storeRef` fields.
            displayName: ClusterSecretStore
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1
          - description: |-
              ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token. The authorization
              token is valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded and
              used in a Docker login command to authenticate to a registry. For more information, see Registry authentication
              (https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth)
              in the Amazon Elastic Container Registry User Guide.
            displayName: ECRAuthorizationToken
            kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: ExternalSecret is the Schema for the external-secrets API.
            displayName: ExternalSecret
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1
          - description: |-
              ExternalSecretsConfig describes configuration and information about the managed external-secrets deployment.
              The name must be `cluster` as ExternalSecretsConfig is a singleton, allowing only one instance per cluster.

              When an ExternalSecretsConfig is created, the controller installs the external-secrets and keeps it in the desired state.
            displayName: ExternalSecretsConfig
            kind: ExternalSecretsConfig
            name: externalsecretsconfigs.operator.openshift.io
            version: v1alpha1
          - description: |-
              ExternalSecretsManager describes configuration and information about the deployments managed by
              the operator. The name must be `cluster` to make ExternalSecretsManager a singleton that is, to
              allow only one instance of ExternalSecretsManager per cluster.

              ExternalSecretsManager is mainly for configuring the global options and enabling the features, which
              serves as a common/centralized config for managing multiple controllers of the operator. The object
              will be created during the operator installation.
            displayName: ExternalSecretsManager
            kind: ExternalSecretsManager
            name: externalsecretsmanagers.operator.openshift.io
            version: v1alpha1
          - description: GCRAccessToken generates a GCP access token that can be used
              to authenticate with GCR.
            displayName: GCRAccessToken
            kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: GeneratorState is the Schema for the generatorstates API.
            displayName: GeneratorState
            kind: GeneratorState
            name: generatorstates.generators.external-secrets.io
            version: v1alpha1
          - description: GithubAccessToken generates a ghs_ access token
            displayName: GithubAccessToken
            kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Grafana is the Schema for the grafanas API.
            displayName: Grafana
            kind: Grafana
            name: grafanas.generators.external-secrets.io
            version: v1alpha1
          - description: MFA generates a new TOTP token that is compliant with RFC
              6238.
            displayName: MFA
            kind: MFA
            name: mfas.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Password generates a random password based on the configuration parameters in spec. You can specify the length,
              character set and other attributes.
            displayName: Password
            kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - description: PushSecret is the Schema for the pushsecrets API.
            displayName: PushSecret
            kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: QuayAccessToken generates a Quay OAuth token for pulling/pushing
              images.
            displayName: QuayAccessToken
            kind: QuayAccessToken
            name: quayaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: SecretStore represents a secure external location for storing
              secrets, which can be referenced as part of `storeRef` fields.
            displayName: SecretStore
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1
          - description: SSHKey generates SSH key pairs.
            displayName: SSHKey
            kind: SSHKey
            name: sshkeys.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              STSSessionToken uses the GetSessionToken API to retrieve an authorization token. The authorization token is
              valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded.
              For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
            displayName: STSSessionToken
            kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - description: UUID generates a version 1 UUID (for example, 6ba7b810-9dad-11d1-80b4-00c04fd430c8).
            displayName: UUID
            kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - description: VaultDynamicSecret is the Schema for the vaultdynamicsecrets
              API.
            displayName: VaultDynamicSecret
            kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Webhook connects to a third party API server to handle the secrets generation configuration parameters in spec. You
              can specify the server, the token, and additional body parameters. See documentation for the full API specification
              for requests and responses.
            displayName: Webhook
            kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: External Secrets Operator for Red Hat OpenShift deploys and manages
          `external-secrets` application in OpenShift clusters. `external-secrets`
          provides an uniform interface to fetch secrets stored in external providers
          like  AWS Secrets Manager, HashiCorp Vault, Google Secrets Manager, Azure
          Key Vault, IBM Cloud Secrets Manager to name a few, stores them as secrets
          in OpenShift. It provides APIs to define authentication and the details
          of the secret to fetch.
        displayName: External Secrets Operator for Red Hat OpenShift
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - secrets
        - external-secrets
        - external-secrets-operator
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/security_and_compliance/external-secrets-operator-for-red-hat-openshift
        - name: External Secrets Operator
          url: https://github.com/openshift/external-secrets-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/external-secrets-operator/bitwarden-sdk-server-rhel9@sha256:0e00fb4b8fc3815e55e9c593766cfa85a34671b8401eabc488b48b66b5d1b374
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-bundle@sha256:8c59a65dda3545cf009585f154e62bd19dce02c95214b76ae164f51999ad760c
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
        - registry.redhat.io/external-secrets-operator/external-secrets-rhel9@sha256:a594323b4d3ad6a739246f3767231ad2d57ca94bb1d035610d52a525b420b452
        version: 1.0.0
      entries:
      - name: external-secrets-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    defaultChannel: stable-v1
    packageName: openshift-external-secrets-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NetScaler
      provider-url: https://netscaler.com
    name: netscaler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: netscaler-operator.v3.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCloudController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalercloudcontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "azure": {
                    "clientsecret": "",
                    "image": "quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb",
                    "location": "",
                    "pullPolicy": "IfNotPresent",
                    "resourcegroupname": "",
                    "resources": {},
                    "subnetname": "",
                    "subscriptionid": "",
                    "tenantid": "",
                    "vnetname": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCpxWithIngressController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalercpxwithingresscontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "admSettings": {
                    "admIP": "",
                    "bandWidth": 1000,
                    "bandWidthLicense": false,
                    "cpxCores": 1,
                    "licenseEdition": "PLATINUM",
                    "licenseServerIP": "",
                    "licenseServerPort": 27000,
                    "licensingMode": "pool",
                    "loginSecret": "",
                    "platform": false,
                    "vCPULicense": false
                  },
                  "affinity": {},
                  "analyticsConfig": {
                    "distributedTracing": {
                      "enable": false,
                      "samplingRate": 100
                    },
                    "endpoint": {
                      "metrics": {
                        "service": ""
                      },
                      "transactions": {
                        "service": ""
                      }
                    },
                    "required": false,
                    "timeseries": {
                      "auditLogs": {
                        "enable": false
                      },
                      "events": {
                        "enable": false
                      },
                      "metrics": {
                        "enable": false,
                        "enableNativeScrape": false,
                        "exportFrequency": 30,
                        "mode": "avro",
                        "schemaFile": "schema.json"
                      },
                      "port": 5563
                    },
                    "transactions": {
                      "enable": false,
                      "port": 5557
                    }
                  },
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {}
                  },
                  "extraVolumes": [],
                  "imagePullSecrets": [],
                  "ingressController": {
                    "defaultSSLCertSecret": "",
                    "defaultSSLSNICertSecret": "",
                    "disableAPIServerCertVerify": false,
                    "disableOpenshiftRoutes": true,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "k8s",
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "ingressClass": [],
                    "ipam": false,
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "logProxy": "",
                    "namespaceLabels": "",
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "profileHttpFrontend": {},
                    "profileSslFrontend": {},
                    "profileTcpFrontend": {},
                    "pullPolicy": "IfNotPresent",
                    "rbacRole": false,
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 50,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "128m",
                        "memory": "500Mi"
                      }
                    },
                    "routeLabels": "",
                    "setAsDefaultIngressClass": false,
                    "updateIngressStatus": true
                  },
                  "netscalerCpx": {
                    "bgpSettings": {
                      "bgpConfig": [
                        {
                          "bgpRouter": {
                            "localAS": 100,
                            "neighbor": [
                              {
                                "ASOriginationInterval": 10,
                                "address": "",
                                "advertisementInterval": 10,
                                "remoteAS": 100
                              }
                            ]
                          }
                        }
                      ],
                      "bgpPort": 179
                    },
                    "cpxBgpRouter": false,
                    "cpxCommands": [],
                    "cpxLicenseAggregator": "",
                    "cpxShellCommands": [],
                    "daemonSet": false,
                    "enableLivenessProbe": true,
                    "enableStartupProbe": true,
                    "extraVolumeMounts": [],
                    "hostname": "",
                    "image": "quay.io/netscaler/netscaler-cpx@sha256:c7fca5069cf2306f915b6f9aeac59a9f921a0093681768ab81e7fb4fef84f970",
                    "ingressIP": "",
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    },
                    "mgmtHttpPort": 9080,
                    "mgmtHttpsPort": 9443,
                    "nitroReadTimeout": 20,
                    "nsConfigDnsRec": false,
                    "nsCookieVersion": 0,
                    "nsDnsNameserver": "",
                    "nsEnableLabels": true,
                    "nsGateway": "192.168.1.1",
                    "nsHttp2ServerSide": "OFF",
                    "nsIP": "192.168.1.2",
                    "nsLbHashAlgo": {
                      "hashAlgorithm": "default",
                      "hashFingers": 500,
                      "required": false
                    },
                    "nsProtocol": "HTTP",
                    "nsSvcLbDnsRec": false,
                    "prometheusCredentialSecret": "",
                    "pullPolicy": "IfNotPresent",
                    "service": {
                      "annotations": {},
                      "spec": {}
                    },
                    "startupProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    }
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "replicaCount": 1,
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCpxWithK8sGatewayController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalercpxwithk8sgatewaycontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "admSettings": {
                    "admIP": "",
                    "bandWidth": 1000,
                    "bandWidthLicense": false,
                    "cpxCores": 1,
                    "licenseEdition": "PLATINUM",
                    "licenseServerIP": "",
                    "licenseServerPort": 27000,
                    "licensingMode": "pool",
                    "loginSecret": "",
                    "platform": false,
                    "vCPULicense": false
                  },
                  "affinity": {},
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {}
                  },
                  "extraVolumes": [],
                  "gatewayController": {
                    "certBundle": false,
                    "disableAPIServerCertVerify": false,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "k8s",
                    "extraVolumeMounts": [],
                    "gatewayControllerName": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "namespaceLabels": "",
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "pullPolicy": "IfNotPresent",
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 50,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "128m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "imagePullSecrets": [],
                  "netscalerCpx": {
                    "cpxCommands": [],
                    "cpxLicenseAggregator": "",
                    "cpxShellCommands": [],
                    "enableLivenessProbe": true,
                    "enableStartupProbe": true,
                    "extraVolumeMounts": [],
                    "hostname": "",
                    "image": "quay.io/netscaler/netscaler-cpx@sha256:c7fca5069cf2306f915b6f9aeac59a9f921a0093681768ab81e7fb4fef84f970",
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    },
                    "mgmtHttpPort": 9080,
                    "mgmtHttpsPort": 9443,
                    "nitroReadTimeout": 20,
                    "nsIP": "192.168.1.2",
                    "nsProtocol": "HTTP",
                    "pullPolicy": "IfNotPresent",
                    "resources": {},
                    "service": {
                      "annotations": {},
                      "spec": {}
                    },
                    "startupProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    }
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "replicaCount": 1,
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerGslbController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalergslbcontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "gslbController": {
                    "disableAPIServerCertVerify": false,
                    "entityPrefix": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "kubernetesURL": "",
                    "localCluster": "",
                    "localRegion": "",
                    "logLevel": "INFO",
                    "openshift": true,
                    "pullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "32m",
                        "memory": "128Mi"
                      }
                    },
                    "siteData": [
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteMask": "",
                        "siteName": "",
                        "sitePublicIp": "",
                        "siteRegion": ""
                      },
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteMask": "",
                        "siteName": "",
                        "sitePublicIp": "",
                        "siteRegion": ""
                      }
                    ]
                  },
                  "imagePullSecrets": [],
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "localSiteSelection": false,
                    "nitroReadTimeout": 20,
                    "nsIP": "",
                    "nsPort": 443,
                    "nsProtocol": "HTTPS"
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerIngressController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscaleringresscontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "analyticsConfig": {
                    "distributedTracing": {
                      "enable": false,
                      "samplingRate": 100
                    },
                    "endpoint": {
                      "metrics": {
                        "service": ""
                      },
                      "transactions": {
                        "service": ""
                      }
                    },
                    "required": false,
                    "timeseries": {
                      "auditLogs": {
                        "enable": false
                      },
                      "events": {
                        "enable": false
                      },
                      "metrics": {
                        "enable": false,
                        "enableNativeScrape": false,
                        "exportFrequency": 50,
                        "mode": "avro",
                        "schemaFile": "schema.json"
                      },
                      "port": 50002
                    },
                    "transactions": {
                      "enable": false,
                      "port": 50005
                    }
                  },
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {},
                    "serviceMonitorExtraLabels": {}
                  },
                  "extraVolumes": [],
                  "hostAliases": [],
                  "imagePullSecrets": [],
                  "ingressController": {
                    "certBundle": false,
                    "clusterName": "",
                    "defaultSSLCertSecret": "",
                    "defaultSSLSNICertSecret": "",
                    "disableAPIServerCertVerify": false,
                    "disableOpenshiftRoutes": true,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "",
                    "extraVolumeMounts": [],
                    "ignoreNodeExternalIP": false,
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "ingressClass": [],
                    "ipam": false,
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "logProxy": "",
                    "multiClusterPrefix": "",
                    "namespaceLabels": "",
                    "nodeLabels": "",
                    "nodeWatch": false,
                    "nsValidateCert": {},
                    "nsncPbr": false,
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "podIPsforServiceGroupMembers": false,
                    "profileHttpFrontend": {},
                    "profileSslFrontend": {},
                    "profileTcpFrontend": {},
                    "pullPolicy": "IfNotPresent",
                    "rbacRole": false,
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "32m",
                        "memory": "128Mi"
                      }
                    },
                    "routeLabels": "",
                    "serviceClass": [],
                    "setAsDefaultIngressClass": false,
                    "updateIngressStatus": true
                  },
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "nitroReadTimeout": 20,
                    "nsConfigDnsRec": false,
                    "nsCookieVersion": 0,
                    "nsDnsNameserver": "",
                    "nsHttp2ServerSide": "OFF",
                    "nsIP": "",
                    "nsLbHashAlgo": {
                      "hashAlgorithm": "default",
                      "hashFingers": 256,
                      "required": false
                    },
                    "nsPort": 443,
                    "nsProtocol": "HTTPS",
                    "nsSNIPs": [],
                    "nsSvcLbDnsRec": false,
                    "nsVIP": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerIpamController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscaleripamcontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "clusterName": "",
                  "image": "quay.io/netscaler/netscaler-ipam-controller@sha256:7c25b59a2e1df0e4f5615a779a9bea939c60a3eca065cb6c2295daf0d03831d8",
                  "localIPAM": {
                    "vipRange": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "reuseIngressVIP": true,
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerK8sGatewayController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalerk8sgatewaycontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {},
                    "serviceMonitorExtraLabels": {}
                  },
                  "extraVolumes": [],
                  "gatewayController": {
                    "certBundle": false,
                    "clusterName": "",
                    "disableAPIServerCertVerify": false,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "",
                    "extraVolumeMounts": [],
                    "gatewayControllerName": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "nodeWatch": false,
                    "nsValidateCert": {},
                    "nsncPbr": false,
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "podIPsforServiceGroupMembers": false,
                    "pullPolicy": "IfNotPresent",
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "32m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "hostAliases": [],
                  "imagePullSecrets": [],
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "nitroReadTimeout": 20,
                    "nsIP": "",
                    "nsPort": 443,
                    "nsProtocol": "HTTPS",
                    "nsSNIPs": [],
                    "nsVIP": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerObservabilityExporter",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalerobservabilityexporter-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "elasticsearch": {
                    "enabled": false,
                    "server": "http://elasticsearch:9200"
                  },
                  "headless": false,
                  "image": "quay.io/netscaler/netscaler-observability-exporter@sha256:626e3a954c67bbb910477352dc740aaab21ff1c1cfb03354becf50beab17d4a4",
                  "jsonTransRateLimiting": {
                    "enabled": false,
                    "limit": 100,
                    "queueLimit": 1000,
                    "window": 5
                  },
                  "kafka": {
                    "auditLogs": "no",
                    "broker": "",
                    "dataFormat": "AVRO",
                    "enabled": false,
                    "events": "no",
                    "topic": "HTTP"
                  },
                  "nodePortRequired": false,
                  "nodeSelector": {},
                  "nsoeLogLevel": "INFO",
                  "nstracing": {
                    "enabled": false,
                    "server": "zipkin:9411/api/v1/spans"
                  },
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "replicas": 1,
                  "resources": {},
                  "splunk": {
                    "authToken": "",
                    "enabled": false,
                    "indexPrefix": "adc_nsoe",
                    "server": "http://splunk:8088"
                  },
                  "timeseries": {
                    "enabled": false
                  },
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-operator@sha256:912813b608a51be599ef01ea340ad09238d7ab76fbfa4e83ee8128fa2348bf5b
          createdAt: "2025-08-25T17:13:12Z"
          description: This is an operator to install Cloud Native portfolio provided
            by NetScaler
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler Kubernetes Gateway Controller for NetScaler
              VPX/MPX/SDX.
            displayName: Netscaler K8s Gateway Controller
            kind: NetscalerK8sGatewayController
            name: netscalerk8sgatewaycontrollers.netscaler.com
            version: v1
          - description: To Install NetScaler CPX with Kubernetes Gateway Controller.
            displayName: Netscaler CPX With K8s Gateway Controller
            kind: NetscalerCpxWithK8sGatewayController
            name: netscalercpxwithk8sgatewaycontrollers.netscaler.com
            version: v1
          - description: To install NetScaler Ingress Controller for NetScaler VPX/MPX/SDX.
            displayName: Netscaler Ingress Controller
            kind: NetscalerIngressController
            name: netscaleringresscontrollers.netscaler.com
            version: v1
          - description: To install NetScaler CPX with Ingress Controller.
            displayName: Netscaler CPX With Ingress Controller
            kind: NetscalerCpxWithIngressController
            name: netscalercpxwithingresscontrollers.netscaler.com
            version: v1
          - description: To install NetScaler GSLB Controller for NetScaler VPX/MPX/SDX.
            displayName: Netscaler GSLB Controller
            kind: NetscalerGslbController
            name: netscalergslbcontrollers.netscaler.com
            version: v1
          - description: To install NetScaler IPAM Controller for NetScaler CPX/VPX/MPX/SDX.
            displayName: Netscaler IPAM Controller
            kind: NetscalerIpamController
            name: netscaleripamcontrollers.netscaler.com
            version: v1
          - description: To install NetScaler Observability Exporter for NetScaler.
            displayName: Netscaler Observability Exporter
            kind: NetscalerObservabilityExporter
            name: netscalerobservabilityexporters.netscaler.com
            version: v1
          - description: To install NetScaler Cloud Controller for NetScaler VPX/MPX/SDX
              with Azure Redhat OpenShift in Azure.
            displayName: Netscaler Cloud Controller
            kind: NetscalerCloudController
            name: netscalercloudcontrollers.netscaler.com
            version: v1
        description: |
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster. Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Kubernetes Gateway Controller](https://docs.netscaler.com/en-us/netscaler-kubernetes-gateway-controller/getting-started#how-to-deploy-netscaler-kubernetes-gateway-controller-in-a-kubernetes-cluster)
          2. [NetScaler CPX with Kubernetes Gateway Controller](https://docs.netscaler.com/en-us/netscaler-kubernetes-gateway-controller/getting-started#how-to-deploy-netscaler-cpx-with-netscaler-kubernetes-gateway-controller-in-a-kubernetes-cluster)
          3. [NetScaler Ingress Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/unified-ingress-deployment)
          4. [NetScaler CPX with Ingress Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/two-tier-deployment)
          5. [NetScaler GSLB Controller ](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/gslb/gslb)
          6. [NetScaler IPAM Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/ipam-installation.html)
          7. [NetScaler Observability Exporter](https://docs.netscaler.com/en-us/netscaler-observability-exporter/deploy-coe)
          8. [NetScaler Cloud Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-cloud-controller)

          ### Installation
          Refer [installation instructions](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-operator-openshift).

          This operator version contains:
          1. NetScaler Ingress Controller version [3.3.2](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v3.3.2)
          2. NetScaler CPX version [14.1-47.48](https://docs.netscaler.com/en-us/updates?product=NetScaler%2520ADC%2520%28includes%2520NetScaler%2520Gateway%29&version=14.1&build=47.48)
          3. NetScaler GSLB Controller version [3.3.2](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v3.3.2)
          4. NetScaler Observability Exporter version [1.10.001](https://github.com/citrix/citrix-helm-charts/releases/tag/nsoe-v1.10.001)
          5. NetScaler Metrics Exporter [1.6.0](https://github.com/netscaler/netscaler-k8s-ingress-controller/releases/tag/me_1.6.0)
          6. NetScaler IPAM Controller [2.1.2](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v2.3.15)
          7. NetScaler Kubernetes Gateway Controller version [1.3.0](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsk8sgwctr-1.3.0)
          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin).

          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: NetScaler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GatewayAPI
        - Gateway
        - Ingress
        - NetScaler
        - ADC
        - Kubernetes
        - OpenShift
        - Citrix
        - Controller
        - Observability
        - Metrices
        links:
        - name: Netscaler Operator
          url: https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-operator-openshift
        maintainers:
        - email: priyanka.sharma@citrix.com
          name: Priyanka Sharma
        - email: arijit.ray@citrix.com
          name: Arijit Ray
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: NetScaler
          url: https://netscaler.com
        relatedImages:
        - quay.io/netscaler/netscaler-observability-exporter@sha256:626e3a954c67bbb910477352dc740aaab21ff1c1cfb03354becf50beab17d4a4
        - registry.connect.redhat.com/citrix/netscaler-operator@sha256:912813b608a51be599ef01ea340ad09238d7ab76fbfa4e83ee8128fa2348bf5b
        - registry.connect.redhat.com/citrix/netscaler-bundle@sha256:d8453ba9d5284e359f34c185618c35ef5a417bb6d96b99a85fa1b50f0c67f7b6
        - quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20
        - quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb
        - quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:89f44c45373da73a51b0b9a02de7efe519dc2d5343b65fe382526cccc92f8f5c
        - quay.io/netscaler/netscaler-cpx@sha256:c7fca5069cf2306f915b6f9aeac59a9f921a0093681768ab81e7fb4fef84f970
        - quay.io/netscaler/netscaler-ipam-controller@sha256:7c25b59a2e1df0e4f5615a779a9bea939c60a3eca065cb6c2295daf0d03831d8
        version: 3.3.0
      entries:
      - name: netscaler-operator.v3.3.0
        version: 3.3.0
      - name: netscaler-operator.v3.2.0
        version: 3.2.0
      - name: netscaler-operator.v3.1.2
        version: 3.1.2
      - name: netscaler-operator.v3.1.1
        version: 3.1.1
      - name: netscaler-operator.v3.0.1
        version: 3.0.1
      name: stable
    - currentCSV: netscaler-operator.v3.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCloudController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "netscaler-operator",
                    "app.kubernetes.io/instance": "nscc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscalercloudcontroller",
                    "app.kubernetes.io/part-of": "netscaler-operator"
                  },
                  "name": "nscc"
                },
                "spec": {
                  "azure": {
                    "clientsecret": "",
                    "image": "quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb",
                    "location": "",
                    "pullPolicy": "IfNotPresent",
                    "resourcegroupname": "",
                    "resources": {},
                    "subnetname": "",
                    "subscriptionid": "",
                    "tenantid": "",
                    "vnetname": ""
                  }
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerGslbController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "netscaler-operator",
                    "app.kubernetes.io/instance": "nsgc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscalergslbcontroller",
                    "app.kubernetes.io/part-of": "netscaler-operator"
                  },
                  "name": "nsgc"
                },
                "spec": {
                  "gslbController": {
                    "acceptLicense": "Yes",
                    "cleanupGSLBSiteConfig": false,
                    "disableAPIServerCertVerify": false,
                    "entityPrefix": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:88114c518ecceb54b000f38bfc330efe184bfeb5b5df0ee308950cf29e7a777f",
                    "imagePullSecrets": [],
                    "kubernetesURL": "",
                    "localCluster": "",
                    "localRegion": "",
                    "logLevel": "Debug",
                    "openshift": true,
                    "pullPolicy": "IfNotPresent",
                    "siteData": [
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteName": "",
                        "siteRegion": ""
                      },
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteName": "",
                        "siteRegion": ""
                      }
                    ]
                  },
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "nitroReadTimeout": 20,
                    "nsIP": "",
                    "nsPort": 443,
                    "nsProtocol": "HTTPS"
                  },
                  "resources": {
                    "limits": {},
                    "requests": {
                      "cpu": "32m",
                      "memory": "128Mi"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-operator@sha256:3f71f9a46d7b29e3da98a301965f635c03a022b5535b586d7d5c699341f68193
          createdAt: "2024-07-31T06:33:49Z"
          description: This is an operator to install Cloud Native portfolio provided
            by NetScaler
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler Cloud Controller for NetScaler VPX/MPX/SDX
              with Azure Redhat OpenShift in Azure.
            displayName: Netscaler Cloud Controller
            kind: NetscalerCloudController
            name: netscalercloudcontrollers.netscaler.com
            version: v1
          - description: To install NetScaler GSLB Controller for NetScaler VPX/MPX/SDX.
            displayName: Netscaler GSLB Controller
            kind: NetscalerGslbController
            name: netscalergslbcontrollers.netscaler.com
            version: v1
        description: |-
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster. Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Cloud Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-cloud-controller)
          2. [NetScaler GSLB Controller ](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/gslb-openshift-operator)

          ### Installation
          Refer [installation instructions](https://github.com/netscaler/netscaler-k8s-ingress-controller/blob/master/docs/deploy/deploy-ns-operator.md).

          This operator version contains:
          1. NetScaler Cloud Controller version [1.2.0](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-cloud-controller)
          2. NetScaler GSLB Controller version [1.43.7](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v1.43.7)

          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin).

          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: NetScaler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Ingress
        - NetScaler
        links:
        - name: Netscaler Operator
          url: https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/gslb-openshift-operator
        maintainers:
        - email: priyanka.sharma@cloud.com
          name: Priyanka Sharma
        - email: arijit.ray@cloud.com
          name: Arijit Ray
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: NetScaler
          url: https://netscaler.com
        relatedImages:
        - quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb
        - quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:88114c518ecceb54b000f38bfc330efe184bfeb5b5df0ee308950cf29e7a777f
        - registry.connect.redhat.com/citrix/netscaler-bundle@sha256:b405d6148aa680bf31bdc6185c1702916c3219983d8482f27d89ed2f93659aa7
        - registry.connect.redhat.com/citrix/netscaler-operator@sha256:3f71f9a46d7b29e3da98a301965f635c03a022b5535b586d7d5c699341f68193
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:23405618050a4ceea8ea0c748cc7d9d16dbb80f10e4c39f7e82014a3ac80cec9
        version: 3.0.1
      entries:
      - name: netscaler-operator.v3.0.1
        version: 3.0.1
      name: tech-preview
    defaultChannel: stable
    packageName: netscaler-operator
    provider:
      name: NetScaler
      url: https://netscaler.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/instance: ibm-spectrum-scale-csi-operator
      app.kubernetes.io/managed-by: ibm-spectrum-scale-csi-operator
      app.kubernetes.io/name: ibm-spectrum-scale-csi-operator
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: ibm-spectrum-scale-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-spectrum-scale-csi-operator.v2.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "CSIScaleOperator",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "ibm-spectrum-scale-csi-operator",
                    "app.kubernetes.io/managed-by": "ibm-spectrum-scale-csi-operator",
                    "app.kubernetes.io/name": "ibm-spectrum-scale-csi-operator",
                    "release": "ibm-spectrum-scale-csi-operator"
                  },
                  "name": "ibm-spectrum-scale-csi",
                  "namespace": "ibm-spectrum-scale-csi-driver"
                },
                "spec": {
                  "attacherNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "clusters": [
                    {
                      "id": "\u003cPrimary Cluster ID\u003e",
                      "primary": {
                        "primaryFs": "\u003c Primary Filesystem \u003e"
                      },
                      "restApi": [
                        {
                          "guiHost": "\u003c Primary cluster GUI IP/Hostname \u003e"
                        }
                      ],
                      "secrets": "secret1",
                      "secureSslMode": false
                    }
                  ],
                  "pluginNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "provisionerNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "resizerNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "snapshotterNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ]
                },
                "status": {}
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/ibm-spectrum-scale/ibm-spectrum-scale-csi-operator@sha256:b62ad588fbc338090f405740fd8bceaf59b3267cdb532c60ae965643ccae4d5d
          createdAt: Thu May 5 04:42:15 IST 2022
          description: An operator for deploying and managing the IBM Spectrum Scale
            CSI Driver.
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/IBM/ibm-spectrum-scale-csi/
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CSIScaleOperator is the Schema for the csiscaleoperators
              API
            displayName: IBM CSI Spectrum Scale Driver
            kind: CSIScaleOperator
            name: csiscaleoperators.csi.ibm.com
            version: v1
        description: |
          The IBM Spectrum Scale CSI Operator for Kubernetes installs, manages,
          upgrades the IBM Spectrum Scale CSI Driver on OpenShift and Kubernetes
          for provisioning of persistent volumes on IBM Spectrum Scale.

          ### Documentation Documentation for IBM Spectrum Scale CSI Driver and Operator can be found at [IBM Documentation](https://www.ibm.com/docs/en/spectrum-scale-csi).

          ### Getting help
          IBM Spectrum Scale CSI driver is part of the IBM Spectrum Scale offering.
          Please follow the [IBM support procedure](https://www.ibm.com/mysupport/s/?language=en_US) for any issues with the driver.

          For non-urgent issues, suggestions, recommendations feel free to open an
          issue in [github](https://github.com/IBM/ibm-spectrum-scale-csi). Issues will be addressed as team availability permits.

          **Note:** Custom Resource example represents the minimum settings needed to run
          the operator. If your environment needs more advanced settings (e.g. remote clusters,
          node mapping, image pull secret, Taint and Toleration etc.) please refer to  the sample [Custom Resource](https://raw.githubusercontent.com/IBM/ibm-spectrum-scale-csi/v2.6.0/operator/config/samples/csiscaleoperators.csi.ibm.com_cr.yaml).
        displayName: IBM Spectrum Scale CSI Plugin Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - GPFS
        - Spectrum Scale
        - CSI Driver
        links:
        - name: IBM CSI Spectrum Scale Documentation
          url: https://www.ibm.com/docs/en/spectrum-scale-csi
        - name: CSI Developer Documentation
          url: https://kubernetes-csi.github.io/docs/
        maintainers:
        - email: madhu.punjabi@in.ibm.com
          name: Madhu Thorat
        - email: amdabhad@in.ibm.com
          name: Amol Dabhade
        - email: Nitish.Kumar4@ibm.com
          name: Nitish Kumar
        maturity: alpha
        provider:
          name: IBM
        relatedImages:
        - quay.io/ibm-spectrum-scale/ibm-spectrum-scale-csi-operator@sha256:b62ad588fbc338090f405740fd8bceaf59b3267cdb532c60ae965643ccae4d5d
        - quay.io/openshift-community-operators/ibm-spectrum-scale-csi-operator@sha256:01d24dfa0d6b6146230459f8f7e74f2749d7fff3c4d75c40de386e014f9367d6
        version: 2.6.0
      entries:
      - name: ibm-spectrum-scale-csi-operator.v2.6.0
        version: 2.6.0
      - name: ibm-spectrum-scale-csi-operator.v2.5.1
        version: 2.5.1
      - name: ibm-spectrum-scale-csi-operator.v2.5.0
        version: 2.5.0
      - name: ibm-spectrum-scale-csi-operator.v2.4.0
        version: 2.4.0
      - name: ibm-spectrum-scale-csi-operator.v2.3.1
        version: 2.3.1
      - name: ibm-spectrum-scale-csi-operator.v2.3.0
        version: 2.3.0
      name: stable
    defaultChannel: stable
    packageName: ibm-spectrum-scale-csi-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-acmpca-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-acmpca-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acmpca.services.k8s.aws/v1alpha1",
                "kind": "CertificateAuthority",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/acmpca-controller:1.2.0
          createdAt: "2025-11-29T03:33:40Z"
          description: AWS ACM PCA controller is a service controller for managing
            ACM PCA resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CertificateAuthority represents the state of an AWS acmpca
              CertificateAuthority resource.
            displayName: CertificateAuthority
            kind: CertificateAuthority
            name: certificateauthorities.acmpca.services.k8s.aws
            version: v1alpha1
          - description: CertificateAuthorityActivation represents the state of an
              AWS acmpca CertificateAuthorityActivation resource.
            displayName: CertificateAuthorityActivation
            kind: CertificateAuthorityActivation
            name: certificateauthorityactivations.acmpca.services.k8s.aws
            version: v1alpha1
          - description: Certificate represents the state of an AWS acmpca Certificate
              resource.
            displayName: Certificate
            kind: Certificate
            name: certificates.acmpca.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon ACM PCA resources in AWS from within your Kubernetes cluster.

          **About Amazon ACM PCA**

          AWS Private CA enables creation of private certificate authority (CA) hierarchies, including root and subordinate CAs, without the investment and maintenance costs of operating an on-premises CA. Your private CAs can issue end-entity X.509 certificates useful in scenarios including:
          - Creating encrypted TLS communication channels
          - Authenticating users, computers, API endpoints, and IoT devices
          - Cryptographically signing code
          - Implementing Online Certificate Status Protocol (OCSP) for obtaining certificate revocation status

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ACM PCA
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acmpca
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ACM PCA Developer Resources
          url: https://aws.amazon.com/private-ca/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: acmpca maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/acmpca-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-acmpca-controller@sha256:b413bc9c33cfa7364da019f3d192bb9fd7fbb6e52701284f093679ebdb839caf
        version: 1.2.0
      entries:
      - name: ack-acmpca-controller.v1.2.0
        version: 1.2.0
      - name: ack-acmpca-controller.v1.1.2
        version: 1.1.2
      - name: ack-acmpca-controller.v1.1.1
        version: 1.1.1
      - name: ack-acmpca-controller.v1.1.0
        version: 1.1.0
      - name: ack-acmpca-controller.v1.0.10
        version: 1.0.10
      - name: ack-acmpca-controller.v1.0.9
        version: 1.0.9
      - name: ack-acmpca-controller.v1.0.8
        version: 1.0.8
      - name: ack-acmpca-controller.v1.0.7
        version: 1.0.7
      - name: ack-acmpca-controller.v1.0.6
        version: 1.0.6
      - name: ack-acmpca-controller.v1.0.5
        version: 1.0.5
      - name: ack-acmpca-controller.v1.0.4
        version: 1.0.4
      - name: ack-acmpca-controller.v1.0.3
        version: 1.0.3
      - name: ack-acmpca-controller.v1.0.2
        version: 1.0.2
      - name: ack-acmpca-controller.v1.0.1
        version: 1.0.1
      - name: ack-acmpca-controller.v1.0.0
        version: 1.0.0
      - name: ack-acmpca-controller.v0.0.20
        version: 0.0.20
      - name: ack-acmpca-controller.v0.0.16
        version: 0.0.16
      - name: ack-acmpca-controller.v0.0.15
        version: 0.0.15
      - name: ack-acmpca-controller.v0.0.14
        version: 0.0.14
      - name: ack-acmpca-controller.v0.0.13
        version: 0.0.13
      - name: ack-acmpca-controller.v0.0.12
        version: 0.0.12
      - name: ack-acmpca-controller.v0.0.11
        version: 0.0.11
      - name: ack-acmpca-controller.v0.0.10
        version: 0.0.10
      - name: ack-acmpca-controller.v0.0.9
        version: 0.0.9
      - name: ack-acmpca-controller.v0.0.8
        version: 0.0.8
      - name: ack-acmpca-controller.v0.0.5
        version: 0.0.5
      - name: ack-acmpca-controller.v0.0.4
        version: 0.0.4
      - name: ack-acmpca-controller.v0.0.3
        version: 0.0.3
      - name: ack-acmpca-controller.v0.0.2
        version: 0.0.2
      - name: ack-acmpca-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-acmpca-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/kuadrant-operator
    name: kuadrant-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kuadrant-operator.v0.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "AuthPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "authScheme": {
                    "identity": [
                      {
                        "apiKey": {
                          "allNamespaces": true,
                          "selector": {
                            "matchLabels": {
                              "app": "toystore"
                            }
                          }
                        },
                        "credentials": {
                          "in": "authorization_header",
                          "keySelector": "APIKEY"
                        },
                        "name": "friends"
                      }
                    ],
                    "response": [
                      {
                        "json": {
                          "properties": [
                            {
                              "name": "userID",
                              "valueFrom": {
                                "authJSON": "auth.identity.metadata.annotations.secret\\.kuadrant\\.io/user-id"
                              }
                            }
                          ]
                        },
                        "name": "rate-limit-apikey",
                        "wrapper": "envoyDynamicMetadata",
                        "wrapperKey": "ext_auth_data"
                      }
                    ]
                  },
                  "rules": null,
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "Kuadrant",
                "metadata": {
                  "name": "kuadrant-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "RateLimitPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "rateLimits": [
                    {
                      "configurations": [
                        {
                          "actions": [
                            {
                              "metadata": {
                                "default_value": "no-user",
                                "descriptor_key": "userID",
                                "metadata_key": {
                                  "key": "envoy.filters.http.ext_authz",
                                  "path": [
                                    {
                                      "segment": {
                                        "key": "ext_auth_data"
                                      }
                                    },
                                    {
                                      "segment": {
                                        "key": "userID"
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          ]
                        }
                      ],
                      "limits": [
                        {
                          "conditions": [],
                          "maxValue": 2,
                          "seconds": 10,
                          "variables": [
                            "userID"
                          ]
                        }
                      ]
                    }
                  ],
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/kuadrant-operator:v0.3.1
          createdAt: "2023-06-01T12:24:17Z"
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/kuadrant-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Enable AuthN and AuthZ based access control on workloads
            displayName: AuthPolicy
            kind: AuthPolicy
            name: authpolicies.kuadrant.io
            version: v1beta1
          - description: Kuadrant is the Schema for the kuadrants API
            displayName: Kuadrant
            kind: Kuadrant
            name: kuadrants.kuadrant.io
            version: v1beta1
          - description: Enable access control on workloads based on HTTP rate limiting
            displayName: RateLimitPolicy
            kind: RateLimitPolicy
            name: ratelimitpolicies.kuadrant.io
            version: v1beta1
        description: A Kubernetes Operator to manage the lifecycle of the Kuadrant
          system
        displayName: Kuadrant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - api-management
        - Kuadrant
        - kubernetes
        - openshift
        - cloud-service-protection
        - rate-limiting
        - authentication
        - authorization
        links:
        - name: Kuadrant Operator
          url: https://github.com/Kuadrant/kuadrant-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/kuadrant-operator
        relatedImages:
        - oci://quay.io/kuadrant/wasm-shim:v0.2.0
        - quay.io/kuadrant/kuadrant-operator:v0.3.1
        - quay.io/openshift-community-operators/kuadrant-operator@sha256:398c9230878feb756ad393d7de5675a7370c883a18acf73483a660e9303d807c
        version: 0.3.1
      entries:
      - name: kuadrant-operator.v0.3.1
        version: 0.3.1
      - name: kuadrant-operator.v0.3.0
        version: 0.3.0
      - name: kuadrant-operator.v0.2.1
        version: 0.2.1
      - name: kuadrant-operator.v0.2.0
        version: 0.2.0
      name: alpha
    - currentCSV: kuadrant-operator.v0.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSPolicy",
                "metadata": {
                  "name": "dnspolicy-sample"
                },
                "spec": {
                  "healthCheck": {
                    "endpoint": "/",
                    "protocol": "HTTP"
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "TLSPolicy",
                "metadata": {
                  "name": "tlspolicy-sample"
                },
                "spec": {
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "self-signed-ca"
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "Kuadrant",
                "metadata": {
                  "name": "kuadrant-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "kuadrant.io/v1beta2",
                "kind": "AuthPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "rules": {
                    "authentication": {
                      "apikey": {
                        "apiKey": {
                          "selector": {}
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta2",
                "kind": "RateLimitPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "limits": {
                    "toys": {
                      "rates": [
                        {
                          "duration": 1,
                          "limit": 50,
                          "unit": "minute"
                        }
                      ]
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/kuadrant-operator:v0.11.0
          createdAt: "2024-10-02T20:30:45Z"
          description: '[DEPRECATED] Follow https://docs.kuadrant.io instead'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/kuadrant-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AuthPolicy enables authentication and authorization for service
              workloads in a Gateway API network
            displayName: AuthPolicy
            kind: AuthPolicy
            name: authpolicies.kuadrant.io
            version: v1beta2
          - description: DNSPolicy configures how North-South based traffic should
              be balanced and reach the gateways
            displayName: DNSPolicy
            kind: DNSPolicy
            name: dnspolicies.kuadrant.io
            version: v1alpha1
          - description: Kuadrant configures installations of Kuadrant Service Protection
              components
            displayName: Kuadrant
            kind: Kuadrant
            name: kuadrants.kuadrant.io
            version: v1beta1
          - description: RateLimitPolicy enables rate limiting for service workloads
              in a Gateway API network
            displayName: RateLimitPolicy
            kind: RateLimitPolicy
            name: ratelimitpolicies.kuadrant.io
            version: v1beta2
          - description: TLSPolicy provides tls for gateway listeners by managing
              the lifecycle of tls certificates
            displayName: TLSPolicy
            kind: TLSPolicy
            name: tlspolicies.kuadrant.io
            version: v1alpha1
        description: |-
          ## Deprecated
          This Kuadrant community operator is deprecated, Follow https://docs.kuadrant.io instead.
        displayName: '[DEPRECATED] Kuadrant Operator'
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - api-management
        - Kuadrant
        - kubernetes
        - openshift
        - cloud-service-protection
        - rate-limiting
        - authentication
        - authorization
        links:
        - name: Kuadrant Operator
          url: https://github.com/Kuadrant/kuadrant-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/kuadrant-operator
        relatedImages:
        - oci://quay.io/kuadrant/wasm-shim:v0.6.0
        - quay.io/community-operator-pipeline-prod/kuadrant-operator@sha256:f21456392af3b37ae48d77dc7f19fa23c6946269555bb1280978b29420bbf31e
        - quay.io/kuadrant/kuadrant-operator:v0.11.0
        version: 0.11.1
      entries:
      - name: kuadrant-operator.v0.11.1
        version: 0.11.1
      - name: kuadrant-operator.v0.11.0
        version: 0.11.0
      - name: kuadrant-operator.v0.10.0
        version: 0.10.0
      - name: kuadrant-operator.v0.7.2
        version: 0.7.2
      - name: kuadrant-operator.v0.4.1
        version: 0.4.1
      - name: kuadrant-operator.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: kuadrant-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/kuadrant-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EnterpriseDB Corporation
      provider-url: ""
    name: edb-hcp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: edb-hcp-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edbpgai.edb.com/v1alpha1",
                "kind": "HybridControlPlane",
                "metadata": {
                  "name": "placeholder"
                },
                "spec": {
                  "beaconAgent": {
                    "applianceProviderEnabled": true,
                    "beaconDBConnected": true,
                    "beaconServerAddress": "upm-beacon-server-ingestion.upm-beacon.svc.cluster.local:8080",
                    "inCluster": true,
                    "location": "devspatcher",
                    "logLevel": "debug",
                    "plaintext": true,
                    "providers": [
                      "appliance"
                    ],
                    "provisioning": {
                      "imageDiscovery": true,
                      "imagesetDiscoveryAuthenticationType": "token",
                      "imagesetDiscoveryContainerRegistryURL": "placeholder",
                      "loadBalancersEnabled": true,
                      "nodePortDomain": "nodeportdomain.com",
                      "openshift": true,
                      "provider": "aws"
                    },
                    "tlsInsecure": false,
                    "transparentDataEncryptionMethods": [
                      "passphrase",
                      "hashicorp_vault"
                    ]
                  },
                  "beaconServer": {
                    "logLevel": "debug"
                  },
                  "componentsParameters": {
                    "edb-migration-portal": {
                      "enable_pdb": "false"
                    },
                    "transporter-data-operator": {
                      "fips_enabled": "false"
                    },
                    "transporter-dp-agent": {
                      "rw_service_url": "placeholder"
                    },
                    "transporter-rw-service": {
                      "domain_name": "placeholder"
                    },
                    "upm-api-pnxt-metric": {
                      "log_level": "info",
                      "tsdb_host": "thanos-query.monitoring.svc.cluster.local",
                      "tsdb_port": "9090"
                    },
                    "upm-api-pnxt-pd": {
                      "log_level": "info"
                    },
                    "upm-beaco-ff-base": {
                      "aes_key_rotation_interval": "2160h",
                      "usage_generator_interval": "24h"
                    },
                    "upm-beaco-usages": {
                      "usage_generator_interval": "24h"
                    },
                    "upm-beacon": {
                      "beacon_db_hibernation": "\"off\"",
                      "beacon_location_id": "devspatcher",
                      "beacon_server_replicas": "1",
                      "external_metrics_replicas": "1",
                      "image_discovery_credentials_secret_name": "placeholder",
                      "server_host": "placeholder"
                    },
                    "upm-istio": {
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288"
                    },
                    "upm-istio-gateway": {
                      "cookie_aeskey": "rzkutHl8NJNztPMEJYykZouHslNiA7xmIXH+58ISUVo=",
                      "enable_server_session": "true",
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288",
                      "openshift_console_domain_name": "placeholder"
                    },
                    "upm-prometheus": {
                      "cpu": "200m",
                      "memory": "6Gi",
                      "prometheus_retention_size": "15GB",
                      "prometheus_storage_size": "20Gi"
                    },
                    "upm-thanos": {
                      "memcached_cpu": "500m",
                      "memcached_memory": "2Gi",
                      "query_frontend_cpu": "200m",
                      "query_frontend_memory": "128Mi"
                    },
                    "upm-trust-manager": {
                      "cert_manager_namespace": "cert-manager"
                    }
                  },
                  "flavour": "placeholder",
                  "globalParameters": {
                    "default_ingress_domain": "placeholder",
                    "internal_backup_folder": "a7462dbc7106",
                    "internal_db_backup_compression": "gzip",
                    "internal_db_backup_retention": "30d",
                    "portal_certificate_secret": "beaco-istio-gw-cert",
                    "portal_domain_name": "placeholder",
                    "portal_port": "443",
                    "session_duration_seconds": "86400",
                    "storage_class": "placeholder"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "placeholder",
                      "namespace": "default"
                    }
                  ],
                  "imageRegistry": "placeholder",
                  "pgai": {
                    "portal": {
                      "authentication": {
                        "clientSecret": "edb-postgres-ai-secret",
                        "idpConnectors": [],
                        "staticPasswords": [
                          {
                            "email": "owner@mycompany.com",
                            "hash": "$2y$10/yXkob4KWJDqpiwudBqC",
                            "userID": "c5998173-a605-449a-a9a5-4a9c33e26df7",
                            "username": "Owner MyCompany"
                          },
                          {
                            "email": "admin@mycompany.com",
                            "hash": "$2y$10/yYwtXRrOagYO2jNtwVzGQPPEfDvX0QllV8NXbku",
                            "userID": "b7e2c2e2-2e7a-4c7b-9e2a-7e6b8c1f2a3d",
                            "username": "Admin MyCompany"
                          }
                        ]
                      }
                    }
                  },
                  "source": {
                    "useLocalKustomizations": true
                  },
                  "version": "placeholder"
                }
              }
            ]
          capabilities: Basic Install
          categories: Database,AI/Machine Learning
          containerImage: docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
          createdAt: "2025-12-16T03:00:39Z"
          description: Unify transactional, analytical, and AI workloads and bring
            cloud agility to your hybrid data infrastructure.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/EnterpriseDB/edb-hcp-operator
          support: techsupport@enterprisedb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HybridControlPlane is the Schema for the hybridcontrolplanes
              API
            displayName: Hybrid Control Plane
            kind: HybridControlPlane
            name: hybridcontrolplanes.edbpgai.edb.com
            version: v1alpha1
        description: |
          EDB Postgres AI is a sovereign data and AI platform that brings analytics and AI closer to core operational data and enables cloud agility in private environments.
          Unify your structured and unstructured data in one multi-model data platform with centralized management and observability to:
          - Accelerate enterprise-grade transactional databases
          - Enable rapid analytics and powerful lakehouse integrations
          - Automate AI pipelines and semantic search for faster GenAI development
          Using EDB’s unmatched Postgres expertise, EDB Postgres AI automates database operations, ensuring expert-level execution across deployments – boosting operational efficiency by up to 30% and accelerating innovation.
        displayName: EDB Postgres AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Postgres
        - Database
        - DBaaS
        - EDB Postgres AI
        links:
        - name: EDB Postgres AI Software Deployment
          url: https://www.enterprisedb.com/products/software-deployment
        maintainers:
        - email: techsupport@enterprisedb.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/edb-hcp-operator@sha256:1fb27bf4a51cb903b59a1c24d9a0233148a258426bbb0b7a101e12f6f64b28f8
        - docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
        version: 1.3.3
      entries:
      - name: edb-hcp-operator.v1.3.3
        version: 1.3.3
      name: alpha
    - currentCSV: edb-hcp-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edbpgai.edb.com/v1alpha1",
                "kind": "HybridControlPlane",
                "metadata": {
                  "name": "placeholder"
                },
                "spec": {
                  "beaconAgent": {
                    "applianceProviderEnabled": true,
                    "beaconDBConnected": true,
                    "beaconServerAddress": "upm-beacon-server-ingestion.upm-beacon.svc.cluster.local:8080",
                    "inCluster": true,
                    "location": "devspatcher",
                    "logLevel": "debug",
                    "plaintext": true,
                    "providers": [
                      "appliance"
                    ],
                    "provisioning": {
                      "imageDiscovery": true,
                      "imagesetDiscoveryAuthenticationType": "token",
                      "imagesetDiscoveryContainerRegistryURL": "placeholder",
                      "loadBalancersEnabled": true,
                      "nodePortDomain": "nodeportdomain.com",
                      "openshift": true,
                      "provider": "aws"
                    },
                    "tlsInsecure": false,
                    "transparentDataEncryptionMethods": [
                      "passphrase",
                      "hashicorp_vault"
                    ]
                  },
                  "beaconServer": {
                    "logLevel": "debug"
                  },
                  "componentsParameters": {
                    "edb-migration-portal": {
                      "enable_pdb": "false"
                    },
                    "transporter-data-operator": {
                      "fips_enabled": "false"
                    },
                    "transporter-dp-agent": {
                      "rw_service_url": "placeholder"
                    },
                    "transporter-rw-service": {
                      "domain_name": "placeholder"
                    },
                    "upm-api-pnxt-metric": {
                      "log_level": "info",
                      "tsdb_host": "thanos-query.monitoring.svc.cluster.local",
                      "tsdb_port": "9090"
                    },
                    "upm-api-pnxt-pd": {
                      "log_level": "info"
                    },
                    "upm-beaco-ff-base": {
                      "aes_key_rotation_interval": "2160h",
                      "usage_generator_interval": "24h"
                    },
                    "upm-beaco-usages": {
                      "usage_generator_interval": "24h"
                    },
                    "upm-beacon": {
                      "beacon_db_hibernation": "\"off\"",
                      "beacon_location_id": "devspatcher",
                      "beacon_server_replicas": "1",
                      "external_metrics_replicas": "1",
                      "image_discovery_credentials_secret_name": "placeholder",
                      "server_host": "placeholder"
                    },
                    "upm-istio": {
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288"
                    },
                    "upm-istio-gateway": {
                      "cookie_aeskey": "rzkutHl8NJNztPMEJYykZouHslNiA7xmIXH+58ISUVo=",
                      "enable_server_session": "true",
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288",
                      "openshift_console_domain_name": "placeholder"
                    },
                    "upm-prometheus": {
                      "cpu": "200m",
                      "memory": "6Gi",
                      "prometheus_retention_size": "15GB",
                      "prometheus_storage_size": "20Gi"
                    },
                    "upm-thanos": {
                      "memcached_cpu": "500m",
                      "memcached_memory": "2Gi",
                      "query_frontend_cpu": "200m",
                      "query_frontend_memory": "128Mi"
                    },
                    "upm-trust-manager": {
                      "cert_manager_namespace": "cert-manager"
                    }
                  },
                  "flavour": "placeholder",
                  "globalParameters": {
                    "default_ingress_domain": "placeholder",
                    "internal_backup_folder": "a7462dbc7106",
                    "internal_db_backup_compression": "gzip",
                    "internal_db_backup_retention": "30d",
                    "portal_certificate_secret": "beaco-istio-gw-cert",
                    "portal_domain_name": "placeholder",
                    "portal_port": "443",
                    "session_duration_seconds": "86400",
                    "storage_class": "placeholder"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "placeholder",
                      "namespace": "default"
                    }
                  ],
                  "imageRegistry": "placeholder",
                  "pgai": {
                    "portal": {
                      "authentication": {
                        "clientSecret": "edb-postgres-ai-secret",
                        "idpConnectors": [],
                        "staticPasswords": [
                          {
                            "email": "owner@mycompany.com",
                            "hash": "$2y$10/yXkob4KWJDqpiwudBqC",
                            "userID": "c5998173-a605-449a-a9a5-4a9c33e26df7",
                            "username": "Owner MyCompany"
                          },
                          {
                            "email": "admin@mycompany.com",
                            "hash": "$2y$10/yYwtXRrOagYO2jNtwVzGQPPEfDvX0QllV8NXbku",
                            "userID": "b7e2c2e2-2e7a-4c7b-9e2a-7e6b8c1f2a3d",
                            "username": "Admin MyCompany"
                          }
                        ]
                      }
                    }
                  },
                  "source": {
                    "useLocalKustomizations": true
                  },
                  "version": "placeholder"
                }
              }
            ]
          capabilities: Basic Install
          categories: Database,AI/Machine Learning
          containerImage: docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
          createdAt: "2025-12-16T03:00:39Z"
          description: Unify transactional, analytical, and AI workloads and bring
            cloud agility to your hybrid data infrastructure.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/EnterpriseDB/edb-hcp-operator
          support: techsupport@enterprisedb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HybridControlPlane is the Schema for the hybridcontrolplanes
              API
            displayName: Hybrid Control Plane
            kind: HybridControlPlane
            name: hybridcontrolplanes.edbpgai.edb.com
            version: v1alpha1
        description: |
          EDB Postgres AI is a sovereign data and AI platform that brings analytics and AI closer to core operational data and enables cloud agility in private environments.
          Unify your structured and unstructured data in one multi-model data platform with centralized management and observability to:
          - Accelerate enterprise-grade transactional databases
          - Enable rapid analytics and powerful lakehouse integrations
          - Automate AI pipelines and semantic search for faster GenAI development
          Using EDB’s unmatched Postgres expertise, EDB Postgres AI automates database operations, ensuring expert-level execution across deployments – boosting operational efficiency by up to 30% and accelerating innovation.
        displayName: EDB Postgres AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Postgres
        - Database
        - DBaaS
        - EDB Postgres AI
        links:
        - name: EDB Postgres AI Software Deployment
          url: https://www.enterprisedb.com/products/software-deployment
        maintainers:
        - email: techsupport@enterprisedb.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/edb-hcp-operator@sha256:1fb27bf4a51cb903b59a1c24d9a0233148a258426bbb0b7a101e12f6f64b28f8
        - docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
        version: 1.3.3
      entries:
      - name: edb-hcp-operator.v1.3.3
        version: 1.3.3
      name: lts-v1.3
    defaultChannel: alpha
    packageName: edb-hcp-operator
    provider:
      name: EnterpriseDB Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sfn-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sfn-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sfn.services.k8s.aws/v1alpha1",
                "kind": "Activity",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sfn.services.k8s.aws/v1alpha1",
                "kind": "StateMachine",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sfn-controller:1.2.0
          createdAt: "2025-11-29T04:38:13Z"
          description: AWS Step Functions controller is a service controller for managing
            Step Functions resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Activity represents the state of an AWS sfn Activity resource.
            displayName: Activity
            kind: Activity
            name: activities.sfn.services.k8s.aws
            version: v1alpha1
          - description: StateMachine represents the state of an AWS sfn StateMachine
              resource.
            displayName: StateMachine
            kind: StateMachine
            name: statemachines.sfn.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Step Functions resources in AWS from within your Kubernetes cluster.

          **About Amazon Step FUnctions**

          Step Functions is a serverless orchestration service that lets you combine AWS Lambda functions and other AWS services to build business-critical applications. Through Step Functions' graphical console, you see your application’s workflow as a series of event-driven steps.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Step Functions
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sfn
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Step Functions Developer Resources
          url: https://aws.amazon.com/step-functions/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: step functions maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sfn-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-sfn-controller@sha256:dfcfbf98f6d237c3a2b87efe63ead08237b9c53ce45ad4469a007de66ea2e9b8
        version: 1.2.0
      entries:
      - name: ack-sfn-controller.v1.2.0
        version: 1.2.0
      - name: ack-sfn-controller.v1.1.2
        version: 1.1.2
      - name: ack-sfn-controller.v1.1.1
        version: 1.1.1
      - name: ack-sfn-controller.v1.1.0
        version: 1.1.0
      - name: ack-sfn-controller.v1.0.29
        version: 1.0.29
      - name: ack-sfn-controller.v1.0.28
        version: 1.0.28
      - name: ack-sfn-controller.v1.0.27
        version: 1.0.27
      - name: ack-sfn-controller.v1.0.26
        version: 1.0.26
      - name: ack-sfn-controller.v1.0.25
        version: 1.0.25
      - name: ack-sfn-controller.v1.0.24
        version: 1.0.24
      - name: ack-sfn-controller.v1.0.23
        version: 1.0.23
      - name: ack-sfn-controller.v1.0.22
        version: 1.0.22
      - name: ack-sfn-controller.v1.0.21
        version: 1.0.21
      - name: ack-sfn-controller.v1.0.20
        version: 1.0.20
      - name: ack-sfn-controller.v1.0.19
        version: 1.0.19
      - name: ack-sfn-controller.v1.0.18
        version: 1.0.18
      - name: ack-sfn-controller.v1.0.17
        version: 1.0.17
      - name: ack-sfn-controller.v1.0.16
        version: 1.0.16
      - name: ack-sfn-controller.v1.0.15
        version: 1.0.15
      - name: ack-sfn-controller.v1.0.14
        version: 1.0.14
      - name: ack-sfn-controller.v1.0.13
        version: 1.0.13
      - name: ack-sfn-controller.v1.0.11
        version: 1.0.11
      - name: ack-sfn-controller.v1.0.10
        version: 1.0.10
      - name: ack-sfn-controller.v1.0.9
        version: 1.0.9
      - name: ack-sfn-controller.v1.0.8
        version: 1.0.8
      - name: ack-sfn-controller.v1.0.6
        version: 1.0.6
      - name: ack-sfn-controller.v1.0.5
        version: 1.0.5
      - name: ack-sfn-controller.v1.0.2
        version: 1.0.2
      - name: ack-sfn-controller.v1.0.1
        version: 1.0.1
      - name: ack-sfn-controller.v1.0.0
        version: 1.0.0
      - name: ack-sfn-controller.v0.1.3
        version: 0.1.3
      - name: ack-sfn-controller.v0.1.2
        version: 0.1.2
      - name: ack-sfn-controller.v0.1.1
        version: 0.1.1
      - name: ack-sfn-controller.v0.1.0
        version: 0.1.0
      - name: ack-sfn-controller.v0.0.19
        version: 0.0.19
      - name: ack-sfn-controller.v0.0.18
        version: 0.0.18
      - name: ack-sfn-controller.v0.0.17
        version: 0.0.17
      - name: ack-sfn-controller.v0.0.16
        version: 0.0.16
      - name: ack-sfn-controller.v0.0.15
        version: 0.0.15
      - name: ack-sfn-controller.v0.0.14
        version: 0.0.14
      - name: ack-sfn-controller.v0.0.13
        version: 0.0.13
      - name: ack-sfn-controller.v0.0.12
        version: 0.0.12
      - name: ack-sfn-controller.v0.0.11
        version: 0.0.11
      - name: ack-sfn-controller.v0.0.10
        version: 0.0.10
      - name: ack-sfn-controller.v0.0.9
        version: 0.0.9
      - name: ack-sfn-controller.v0.0.8
        version: 0.0.8
      - name: ack-sfn-controller.v0.0.7
        version: 0.0.7
      - name: ack-sfn-controller.v0.0.6
        version: 0.0.6
      - name: ack-sfn-controller.v0.0.5
        version: 0.0.5
      name: alpha
    defaultChannel: alpha
    packageName: ack-sfn-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ses-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ses-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ses-controller:1.2.0
          createdAt: "2025-11-29T04:02:30Z"
          description: AWS SES controller is a service controller for managing SES
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConfigurationSet represents the state of an AWS ses ConfigurationSet
              resource.
            displayName: ConfigurationSet
            kind: ConfigurationSet
            name: configurationsets.ses.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Simple Email Service (SES) resources in AWS from within your Kubernetes cluster.

          **About Amazon SES**

          Amazon Simple Email Service (SES) is an email platform that provides an easy, cost-effective way for you to send and receive email using your own email addresses and domains.
          For example, you can send marketing emails such as special offers, transactional emails such as order confirmations, and other types of correspondence such as newsletters. When you use Amazon SES to receive mail, you can develop software solutions such as email autoresponders, email unsubscribe systems, and applications that generate customer support tickets from incoming emails.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SES
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ses
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SES Developer Resources
          url: https://aws.amazon.com/ses/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ses maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ses-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ses-controller@sha256:b083d3578565f7503e887ea1207031a9fe776c4341d8aeb977b88d4b2e841bbc
        version: 1.2.0
      entries:
      - name: ack-ses-controller.v1.2.0
        version: 1.2.0
      - name: ack-ses-controller.v1.1.2
        version: 1.1.2
      - name: ack-ses-controller.v1.1.1
        version: 1.1.1
      - name: ack-ses-controller.v1.1.0
        version: 1.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-ses-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/confidential-containers
    name: trustee-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trustee-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Security
          containerImage: registry.redhat.io/build-of-trustee/trustee-rhel9-operator@sha256:04a30e2c2f9010a38a20270fdbac09445bb28d46a67126d0b74396ae492ccea2
          createdAt: "2024-06-07T10:06:06Z"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: trustee-operator-system
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/trustee-operator
          support: Confidential Containers Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KbsConfig is the Schema for the kbsconfigs API
            displayName: Kbs Config
            kind: KbsConfig
            name: kbsconfigs.confidentialcontainers.org
            version: v1alpha1
          - kind: TrusteeConfig
            name: trusteeconfigs.confidentialcontainers.org
            version: v1alpha1
        description: Remote attestation operator for confidential containers
        displayName: Red Hat build of Trustee
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trustee
        - Confidential Computing
        - Attestation
        links:
        - name: Red Hat build of Trustee
          url: https://github.com/openshift/trustee-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
          url: https://github.com/confidential-containers
        relatedImages:
        - registry.redhat.io/build-of-trustee/trustee-rhel9@sha256:da30d5c78cba2fa4b595487c500ffefededea4ff2f4e9ee4d8bdb7b13d8aba40
        - registry.redhat.io/build-of-trustee/trustee-operator-bundle@sha256:2f72205cf81cd26e0c4d7b159e72f567e84e69596aaff92bbf52bdfd2d7b9dd4
        - registry.redhat.io/build-of-trustee/trustee-rhel9-operator@sha256:04a30e2c2f9010a38a20270fdbac09445bb28d46a67126d0b74396ae492ccea2
        version: 1.0.0
      entries:
      - name: trustee-operator.v1.0.0
        version: 1.0.0
      - name: trustee-operator.v0.4.2
        version: 0.4.2
      - name: trustee-operator.v0.4.1
        version: 0.4.1
      - name: trustee-operator.v0.4.0
        version: 0.4.0
      - name: trustee-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: trustee-operator
    provider:
      name: Red Hat
      url: https://github.com/confidential-containers
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: eap
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eap-operator.v3.2.8
      currentCSVDesc:
        annotations:
          capabilities: Seamless Upgrades
          categories: Application Runtime
          certified: "false"
          containerImage: registry.redhat.io/jboss-eap/eap-rhel9-operator@sha256:8d10a86d97696603ef612672a65240679a06f8f4dee25f82d1bf5f69132760b1
          createdAt: "2025-07-10T14:38:00Z"
          description: Operator that creates and manages Java applications running
            on JBoss EAP.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat JBoss Enterprise Application
            Platform", "Red Hat Runtimes", "Red Hat Integration", "Red Hat Process
            Automation"]'
          repository: https://github.com/wildfly/wildfly-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An application running on EAP application runtime.
            displayName: WildFlyServer
            kind: WildFlyServer
            name: wildflyservers.wildfly.org
            version: v1alpha1
        description: "# Red Hat JBoss Enterprise Application Platform (JBoss EAP)\n\nRed
          Hat® JBoss® Enterprise Application Platform (JBoss EAP) delivers enterprise-grade
          security, performance, and scalability in any environment.  Some features
          of JBoss EAP are:\n\n**Optimized for cloud and containers**: with simplified
          deployment and full Jakarta EE performance for applications in any environment.\n\n**Lightweight,
          flexible architecture**: which is well-suited for microservices and traditional
          applications.\n\n**Support and standardize microservices development**:
          With the JBoss Enterprise Application Platform expansion pack that supports
          Eclipse MicroProfile application programming interfaces (APIs).\n\n# JBoss
          EAP Operator\nOperators are software components that extend the Kubernetes
          API to customize how to manage applications and their components.\n\nThe
          JBoss EAP Operator facilitates the deployment and management of JBoss EAP
          on container orchestration platforms such as Red Hat OpenShift. The operator
          acts as an automated management tool, simplifying the process of provisioning,
          scaling, and updating JBoss EAP applications.\n\n# JBoss EAP Operator capabilities\nThe
          JBoss EAP Operator deploys and manages multiple instances of the JBoss EAP
          Java application in a Red Hat OpenShift cluster. \n\n**Simplifies management**:
          Creates, configures, manages, and seamlessly upgrades instances of complex
          stateful applications. No more manual configuration, making management a
          breeze.\n\n**Efficient scaling**: Effortlessly scales the instances of your
          JBoss EAP Java application based on demand.\n\n**Faster updates**: Seamlessly
          updates, enabling you to roll out new operator features and bug fixes without
          downtime\n\n**Safe transaction recovery**: Provides safe transaction recovery
          in your application cluster by verifying all transactions are completed
          before scaling down the replicas and marking a pod as clean for termination.\n\n#
          Operator installation and configuration\nLet's walk through the steps to
          install the JBoss EAP Operator on your OpenShift Cluster and deploy your
          first example application:\n\n**Step 1: Install JBoss EAP from OperatorHub**\n1.
          Click Install in the JBoss EAP operator window.\n2. In the Install Operator
          window, for Installation mode, select All namespaces on the cluster The
          operator is available in openshift-operators namespace.\n\n**Step 2: Build
          an application image**\n\nThe JBoss EAP Operator deploys an application
          image. If you do not have your JBoss EAP application image built yet, you
          can use the following example to build the image using Helm Charts.\n\n1.
          In the main navigation, click the dropdown menu (perspective switcher) and
          select Developer.\n2. Click Add > Helm Chart.\n3. Search for \"JBoss EAP
          8\" (Provided by Red Hat) and create a new Helm Chart release.\n4. On the
          Release name text box, type “eap-application”. \n5. Switch to the YAML view
          and replace the existing code with the following:\n\n    ```\n    build:\n
          \     uri: https://github.com/jboss-eap-up-and-running/eap8-getting-started\n
          \   deploy:\n      enabled: false\n    ```\n\n6. Click Create to build the
          application image.\n\n    The application image is created with the name
          eap-application:latest.\n\n**Step 3: Deploy your application with JBoss
          EAP Operator**\n\n1. In the main navigation, click the dropdown menu (perspective
          switcher) and select Developer.\n2. Click Add > Operator Backed > WildFlyServer
          > Create.\n3. Switch to the YAML view and replace the existing code with
          the following:\n\n    ```\n    apiVersion: wildfly.org/v1alpha1\n    kind:
          WildFlyServer\n    metadata:\n      name: eap-application\n    spec:\n      applicationImage:
          eap-application:latest\n      replicas: 1\n    ```\n\n 4. Click Create to
          deploy the application with JBoss EAP Operator.\n"
        displayName: JBoss EAP
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eap
        - java
        - open source
        - application runtime
        links:
        - name: JBoss EAP Homepage
          url: https://www.redhat.com/en/technologies/jboss-middleware/application-platform
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/
        - name: Blog
          url: https://developers.redhat.com/blog/
        - name: Quickstart
          url: https://github.com/jboss-developer/jboss-eap-quickstarts
        - name: Red Hat Customer Portal
          url: https://access.redhat.com/support
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat, Inc.
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/jboss-eap/eap-operator-bundle@sha256:5bbe10f6e33106ee9ef33626e91d3283f7ff03d37a00c094d2004ad0b6323721
        - registry.redhat.io/jboss-eap/eap-rhel9-operator@sha256:8d10a86d97696603ef612672a65240679a06f8f4dee25f82d1bf5f69132760b1
        version: 3.2.8
      entries:
      - name: eap-operator.v3.2.8
        version: 3.2.8
      - name: eap-operator.v3.2.7
        version: 3.2.7
      - name: eap-operator.v3.2.6
        version: 3.2.6
      - name: eap-operator.v3.2.5
        version: 3.2.5
      - name: eap-operator.v3.2.4
        version: 3.2.4
      - name: eap-operator.v3.2.3
        version: 3.2.3
      - name: eap-operator.v3.2.2
        version: 3.2.2
      - name: eap-operator.v3.2.1
        version: 3.2.1
      - name: eap-operator.v3.2.0
        version: 3.2.0
      - name: eap-operator.v3.1.9
        version: 3.1.9
      - name: eap-operator.v3.1.8
        version: 3.1.8
      - name: eap-operator.v3.1.7
        version: 3.1.7
      - name: eap-operator.v3.1.6
        version: 3.1.6
      - name: eap-operator.v3.1.5
        version: 3.1.5
      - name: eap-operator.v3.1.4
        version: 3.1.4
      - name: eap-operator.v3.1.3
        version: 3.1.3
      - name: eap-operator.v3.1.2
        version: 3.1.2
      - name: eap-operator.v3.1.1
        version: 3.1.1
      - name: eap-operator.v3.1.0
        version: 3.1.0
      - name: eap-operator.v3.0.2
        version: 3.0.2
      - name: eap-operator.v3.0.1
        version: 3.0.1
      - name: eap-operator.v3.0.0
        version: 3.0.0
      - name: eap-operator.v2.4.3
        version: 2.4.3
      - name: eap-operator.v2.4.2
        version: 2.4.2
      - name: eap-operator.v2.4.1
        version: 2.4.1
      - name: eap-operator.v2.4.0
        version: 2.4.0
      - name: eap-operator.v2.3.10
        version: 2.3.10
      - name: eap-operator.v2.3.9
        version: 2.3.9
      - name: eap-operator.v2.3.8
        version: 2.3.8
      - name: eap-operator.v2.3.7
        version: 2.3.7
      - name: eap-operator.v2.3.6
        version: 2.3.6
      - name: eap-operator.v2.3.5
        version: 2.3.5
      - name: eap-operator.v2.3.4
        version: 2.3.4
      - name: eap-operator.v2.3.3
        version: 2.3.3
      - name: eap-operator.v2.3.2
        version: 2.3.2
      - name: eap-operator.v2.3.1
        version: 2.3.1
      - name: eap-operator.v2.3.0
        version: 2.3.0
      - name: eap-operator.v2.2.2
        version: 2.2.2
      - name: eap-operator.v2.2.1
        version: 2.2.1
      - name: eap-operator.v2.2.0
        version: 2.2.0
      name: stable
    defaultChannel: stable
    packageName: eap
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: gatekeeper-operator-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gatekeeper-operator-product.v3.15.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:8b43248aed06563e06f7a0347ff1c45fa5892e3a9adb2b5c363962a0b152eff0
          createdAt: 13 Mar 2025, 17:07
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: <3.15.4
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: Gatekeeper allows administrators to detect and reject non-compliant
          commits to an infrastructure-as-code system's source-of-truth. This strengthens
          compliance efforts and prevents a bad state from slowing down the organization.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:96b77663961daea3a336b97e34e9412281bfb2727854dc970a69edd029b9af85
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:8b43248aed06563e06f7a0347ff1c45fa5892e3a9adb2b5c363962a0b152eff0
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:29690144667b3753a7e76095e136d6fc42325270e7b9f22f97dfd411439e9f54
        version: 3.15.4
      entries:
      - name: gatekeeper-operator-product.v3.15.4
        version: 3.15.4
      - name: gatekeeper-operator-product.v3.15.3
        version: 3.15.3
      - name: gatekeeper-operator-product.v3.15.2
        version: 3.15.2
      - name: gatekeeper-operator-product.v3.15.1
        version: 3.15.1
      - name: gatekeeper-operator-product.v3.15.1-0.1725401534.p
        version: 3.15.1+0.1725401534.p
      - name: gatekeeper-operator-product.v3.15.1-0.1726639477.p
        version: 3.15.1+0.1726639477.p
      - name: gatekeeper-operator-product.v3.15.1-0.1727189912.p
        version: 3.15.1+0.1727189912.p
      name: "3.15"
    - currentCSV: gatekeeper-operator-product.v3.17.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3c027ec78398df0a8fc09eb79e222a9508b4f18154d1e1b477d4f156181ae51a
          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: "true"
          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.skipRange: <3.17.3
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:5170255ecd45b9bb7a70abec0f6eeb0518bbc2871de759e468dd61a80261c0ad
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:e44078fc6073a79168ed52922b370773b451d69bf335aeb91d26a1462df21a9b
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3c027ec78398df0a8fc09eb79e222a9508b4f18154d1e1b477d4f156181ae51a
        version: 3.17.3
      entries:
      - name: gatekeeper-operator-product.v3.17.3
        version: 3.17.3
      - name: gatekeeper-operator-product.v3.17.2
        version: 3.17.2
      - name: gatekeeper-operator-product.v3.17.1
        version: 3.17.1
      - name: gatekeeper-operator-product.v3.17.0
        version: 3.17.0
      name: "3.17"
    - currentCSV: gatekeeper-operator-product.v3.18.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:0803b7219ceff7aa676488eeba58607a19c9c18a2bb8eae8b3b16cfec411cb6e
          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: "true"
          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.skipRange: <3.18.1
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:9a3f5b6c403fb84c9cb93c9d7cf902c80990196983607c8ca568d4b558938e17
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:49726cb2702441305e8047b24054575170fb595cfe5ebf815cdbfdaa957b02f4
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:0803b7219ceff7aa676488eeba58607a19c9c18a2bb8eae8b3b16cfec411cb6e
        version: 3.18.1
      entries:
      - name: gatekeeper-operator-product.v3.18.1
        version: 3.18.1
      - name: gatekeeper-operator-product.v3.18.0
        version: 3.18.0
      name: "3.18"
    - currentCSV: gatekeeper-operator-product.v3.19.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:583d63090eccf767cd3a1cc153a995c6102e02a49aee1579edc7645e2aca1202
          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: "true"
          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.skipRange: <3.19.1
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:68fe21212c54efd1c7a1e6f68e554722ac7cb8ffc3f5d48d608ebcc0ac8be921
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:60ee347425c6cfb36f0e1e834b33cbb3d77aa2d6c89ac513216d0b9fc55d4b52
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:583d63090eccf767cd3a1cc153a995c6102e02a49aee1579edc7645e2aca1202
        version: 3.19.1
      entries:
      - name: gatekeeper-operator-product.v3.19.1
        version: 3.19.1
      - name: gatekeeper-operator-product.v3.19.0
        version: 3.19.0
      name: "3.19"
    - currentCSV: gatekeeper-operator-product.v3.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
          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: "true"
          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.skipRange: <3.20.0
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Gatekeeper is the schema for the gatekeepers API. Gatekeeper contains configurations for the Gatekeeper operator,
              which deploys Open Policy Agent Gatekeeper, a policy engine that enforces policies through admission controller
              webhooks.
              See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:54da5a712ccab9d9cae230e8bdb97f292d9959b6589a8c58c6f41f13c5b7ee12
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:29417852e3e69233d1e7205a982023c14b98eac7f3f5ad0fc93a4e46d6197520
        version: 3.20.0
      entries:
      - name: gatekeeper-operator-product.v3.20.0
        version: 3.20.0
      name: "3.20"
    - currentCSV: gatekeeper-operator-product.v3.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
          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: "true"
          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.skipRange: <3.20.0
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Gatekeeper is the schema for the gatekeepers API. Gatekeeper contains configurations for the Gatekeeper operator,
              which deploys Open Policy Agent Gatekeeper, a policy engine that enforces policies through admission controller
              webhooks.
              See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:29417852e3e69233d1e7205a982023c14b98eac7f3f5ad0fc93a4e46d6197520
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:54da5a712ccab9d9cae230e8bdb97f292d9959b6589a8c58c6f41f13c5b7ee12
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
        version: 3.20.0
      entries:
      - name: gatekeeper-operator-product.v3.20.0
        version: 3.20.0
      - name: gatekeeper-operator-product.v3.19.1
        version: 3.19.1
      - name: gatekeeper-operator-product.v3.19.0
        version: 3.19.0
      - name: gatekeeper-operator-product.v3.18.0
        version: 3.18.0
      - name: gatekeeper-operator-product.v3.17.2
        version: 3.17.2
      - name: gatekeeper-operator-product.v3.17.1
        version: 3.17.1
      - name: gatekeeper-operator-product.v3.17.0
        version: 3.17.0
      - name: gatekeeper-operator-product.v3.15.1
        version: 3.15.1
      - name: gatekeeper-operator-product.v3.15.1-0.1725401534.p
        version: 3.15.1+0.1725401534.p
      - name: gatekeeper-operator-product.v3.15.1-0.1726639477.p
        version: 3.15.1+0.1726639477.p
      - name: gatekeeper-operator-product.v3.15.1-0.1727189912.p
        version: 3.15.1+0.1727189912.p
      name: stable
    defaultChannel: stable
    packageName: gatekeeper-operator-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Argo CD Community
      provider-url: ""
    name: argocd-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: argocd-operator.v0.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd-sample"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCDExport",
                "metadata": {
                  "name": "argocdexport-sample"
                },
                "spec": {
                  "argocd": "argocd-sample"
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd-sample"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "NamespaceManagement",
                "metadata": {
                  "name": "namespacemanagement-sample"
                },
                "spec": {
                  "managedBy": "argocd-ns"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/argoprojlabs/argocd-operator@sha256:0c697bdd14d2432c481db757507f5ea506b2aa97c944e50d72664dbb4fba047a
          createdAt: "2025-12-16T12:52:16Z"
          description: Argo CD is a declarative, GitOps continuous delivery tool for
            Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/argoproj-labs/argocd-operator
          support: Argo CD
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: An ApplicationSet is a group or set of Application resources.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: ArgoCDExport is the Schema for the argocdexports API
            displayName: Argo CDExport
            kind: ArgoCDExport
            name: argocdexports.argoproj.io
            version: v1alpha1
          - description: ArgoCD is the Schema for the argocds API
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: ArgoCD is the Schema for the argocds API
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: NamespaceManagement is the Schema for the namespacemanagements
              API
            displayName: Namespace Management
            kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfiguration is the Schema for the notificationsconfiguration
              API
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
        description: |
          ## Overview

          The Argo CD Operator manages the full lifecycle for [Argo CD](https://argoproj.github.io/argo-cd/) and it's
          components. The operator's goal is to automate the tasks required when operating an Argo CD cluster.

          Beyond installation, the operator helps to automate the process of upgrading, backing up and restoring as needed and
          remove the human as much as possible. In addition, the operator aims to provide deep insights into the Argo CD
          environment by configuring Prometheus and Grafana to aggregate, visualize and expose the metrics already exported by
          Argo CD.

          The operator aims to provide the following, and is a work in progress.

          * Easy configuration and installation of the Argo CD components with sane defaults to get up and running quickly.
          * Provide seamless upgrades to the Argo CD components.
          * Ability to back up and restore an Argo CD cluster from a point in time or on a recurring schedule.
          * Aggregate and expose the metrics for Argo CD and the operator itself using Prometheus and Grafana.
          * Autoscale the Argo CD components as necessary to handle variability in demand.

          ## Usage

          Deploy a basic Argo CD cluster by creating a new ArgoCD resource in the namespace where the operator is installed.

          ```
          apiVersion: argoproj.io/v1alpha1
          kind: ArgoCD
          metadata:
            name: example-argocd
          spec: {}
          ```

          ## Backup

          Backup the cluster above by creating a new ArgoCDExport resource in the namespace where the operator is installed.

          ```
          apiVersion: argoproj.io/v1alpha1
          kind: ArgoCDExport
          metadata:
            name: example-argocdexport
          spec:
            argocd: example-argocd
          ```

          See the [documentation](https://argocd-operator.readthedocs.io) and examples on
          [GitHub](https://github.com/argoproj-labs/argocd-operator) for more information.
        displayName: Argo CD
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - kubernetes
        links:
        - name: Argo CD Project
          url: https://argoproj.github.io/argo-cd/
        - name: Operator Documentation
          url: https://argocd-operator.readthedocs.io
        - name: Operator Source Code
          url: https://github.com/argoproj-labs/argocd-operator
        maintainers:
        - email: sghadi@redhat.com
          name: Siddhesh Ghadi
        maturity: alpha
        provider:
          name: Argo CD Community
        relatedImages:
        - quay.io/argoprojlabs/argocd-operator@sha256:0c697bdd14d2432c481db757507f5ea506b2aa97c944e50d72664dbb4fba047a
        - quay.io/community-operator-pipeline-prod/argocd-operator@sha256:dd18636316791e08e295b07cbcf8ce41d9c6a280f1008c70f2fecf6b6214c732
        version: 0.16.0
      entries:
      - name: argocd-operator.v0.16.0
        version: 0.16.0
      - name: argocd-operator.v0.15.0
        version: 0.15.0
      - name: argocd-operator.v0.14.1
        version: 0.14.1
      - name: argocd-operator.v0.14.0
        version: 0.14.0
      - name: argocd-operator.v0.13.0
        version: 0.13.0
      - name: argocd-operator.v0.12.0
        version: 0.12.0
      - name: argocd-operator.v0.11.0
        version: 0.11.0
      - name: argocd-operator.v0.10.1
        version: 0.10.1
      - name: argocd-operator.v0.10.0
        version: 0.10.0
      - name: argocd-operator.v0.9.1
        version: 0.9.1
      - name: argocd-operator.v0.9.0
        version: 0.9.0
      - name: argocd-operator.v0.8.0
        version: 0.8.0
      - name: argocd-operator.v0.7.0
        version: 0.7.0
      - name: argocd-operator.v0.5.0
        version: 0.5.0
      - name: argocd-operator.v0.4.0
        version: 0.4.0
      - name: argocd-operator.v0.3.0
        version: 0.3.0
      - name: argocd-operator.v0.2.1
        version: 0.2.1
      - name: argocd-operator.v0.2.0
        version: 0.2.0
      - name: argocd-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: argocd-operator
    provider:
      name: Argo CD Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: redhat-oadp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: oadp-operator.v1.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "DataProtectionApplication",
                "metadata": {
                  "name": "velero-sample"
                },
                "spec": {
                  "backupLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-east-1"
                        },
                        "credential": {
                          "key": "cloud",
                          "name": "cloud-credentials"
                        },
                        "default": true,
                        "objectStorage": {
                          "bucket": "my-bucket-name",
                          "prefix": "velero"
                        },
                        "provider": "aws"
                      }
                    }
                  ],
                  "configuration": {
                    "nodeAgent": {
                      "enable": true,
                      "uploaderType": "kopia"
                    },
                    "velero": {
                      "defaultPlugins": [
                        "openshift",
                        "aws",
                        "kubevirt",
                        "hypershift"
                      ],
                      "disableFsBackup": false
                    }
                  },
                  "snapshotLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-west-2"
                        },
                        "provider": "aws"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "DataProtectionTest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "oadp-operator"
                  },
                  "name": "dataprotectiontest-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminBackup",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-operator",
                    "app.kubernetes.io/instance": "nonadminbackup-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminbackup",
                    "app.kubernetes.io/part-of": "oadp-operator"
                  },
                  "name": "nonadminbackup-sample"
                },
                "spec": {
                  "backupSpec": {}
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminBackupStorageLocation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-nac",
                    "app.kubernetes.io/instance": "nonadminbackupstoragelocation-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminbackupstoragelocation",
                    "app.kubernetes.io/part-of": "oadp-nac"
                  },
                  "name": "nonadminbackupstoragelocation-sample"
                },
                "spec": {
                  "backupStorageLocationSpec": {
                    "config": {
                      "checksumAlgorithm": "",
                      "region": "eu-central-1"
                    },
                    "credential": {
                      "key": "default",
                      "name": "cloud-credentials"
                    },
                    "objectStorage": {
                      "bucket": "my-bucket",
                      "prefix": "nac-test"
                    },
                    "provider": "aws"
                  }
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminBackupStorageLocationRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-nac",
                    "app.kubernetes.io/instance": "nonadminbackupstoragelocationrequest-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminbackupstoragelocationrequest",
                    "app.kubernetes.io/part-of": "oadp-nac"
                  },
                  "name": "nonadminbackupstoragelocationrequest-sample"
                },
                "spec": {
                  "approvalDecision": "pending"
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminDownloadRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "oadp-nac"
                  },
                  "name": "nonadmindownloadrequest-sample"
                },
                "spec": {
                  "target": {
                    "kind": "BackupLog",
                    "name": "non-admin-backup-name"
                  }
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminRestore",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-nac",
                    "app.kubernetes.io/instance": "nonadminrestore-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminrestore",
                    "app.kubernetes.io/part-of": "oadp-nac"
                  },
                  "name": "nonadminrestore-sample"
                },
                "spec": {
                  "restoreSpec": {
                    "backupName": "nonadminbackup-sample"
                  }
                }
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "BackupStorageLocation",
                "metadata": {
                  "name": "backupstoragelocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DeleteBackupRequest",
                "metadata": {
                  "name": "deletebackuprequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DownloadRequest",
                "metadata": {
                  "name": "downloadrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeBackup",
                "metadata": {
                  "name": "podvolumebackup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeRestore",
                "metadata": {
                  "name": "podvolumerestore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Schedule",
                "metadata": {
                  "name": "schedule",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "ServerStatusRequest",
                "metadata": {
                  "name": "serverstatusrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "VolumeSnapshotLocation",
                "metadata": {
                  "name": "volumesnapshotlocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: |
            Cloud Provider,Developer Tools,Modernization & Migration,OpenShift Optional,Storage
          certified: "false"
          containerImage: registry.redhat.io/oadp/oadp-rhel9-operator@sha256:08676a3f8eaa6851d3dd16fea051220eda9518f8669b327bc99d24facf5b226c
          createdAt: "2025-09-19T14:11:12Z"
          description: OADP (OpenShift API for Data Protection) operator sets up and
            installs Data Protection Applications on the OpenShift platform.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.4.0 <1.5.3'
          operatorframework.io/suggested-namespace: openshift-adp
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/oadp/oadp-mustgather-rhel9@sha256:ee04dce0b5be78b40debfa96c20d6c851f4486e026db539fc27eec369bc329d6
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/oadp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A backup repository is an indicator of a connection from
              the restic/kopia server to the backupstoragelocation.
            displayName: BackupRepository
            kind: BackupRepository
            name: backuprepositories.velero.io
            version: v1
          - description: Backup is a Velero resource that represents the capture of
              Kubernetes cluster state at a point in time (API objects and associated
              volume state).
            displayName: Backup
            kind: Backup
            name: backups.velero.io
            version: v1
          - description: BackupStorageLocation represents an object storage location
              (such as Amazon S3 Bucket) where Velero stores backup objects.
            displayName: BackupStorageLocation
            kind: BackupStorageLocation
            name: backupstoragelocations.velero.io
            version: v1
          - description: The CloudStorage API automates the creation of a bucket for
              object storage.
            displayName: Cloud Storage
            kind: CloudStorage
            name: cloudstorages.oadp.openshift.io
            version: v1alpha1
          - description: DataDownload represents a data download of a volume snapshot.
              There is one DataDownload created per volume to be restored.
            displayName: DataDownload
            kind: DataDownload
            name: datadownloads.velero.io
            version: v2alpha1
          - description: DataProtectionApplication represents configuration to install
              a data protection application to safely backup and restore, perform
              disaster recovery and migrate Kubernetes cluster resources and persistent
              volumes.
            displayName: Data Protection Application
            kind: DataProtectionApplication
            name: dataprotectionapplications.oadp.openshift.io
            version: v1alpha1
          - description: DataProtectionTest is the Schema for the dataprotectiontests
              API
            displayName: Data Protection Test
            kind: DataProtectionTest
            name: dataprotectiontests.oadp.openshift.io
            version: v1alpha1
          - description: DataUpload acts as the protocol between data mover plugins
              and data mover controller for the datamover backup operation
            displayName: DataUpload
            kind: DataUpload
            name: datauploads.velero.io
            version: v2alpha1
          - description: DeleteBackupRequest is a request to delete one or more backups.
            displayName: DeleteBackupRequest
            kind: DeleteBackupRequest
            name: deletebackuprequests.velero.io
            version: v1
          - description: DownloadRequest is a request to download an artifact from
              object storage such as a backup log file.
            displayName: DownloadRequest
            kind: DownloadRequest
            name: downloadrequests.velero.io
            version: v1
          - description: NonAdminBackup is the Schema for the nonadminbackups API
            displayName: Non Admin Backup
            kind: NonAdminBackup
            name: nonadminbackups.oadp.openshift.io
            version: v1alpha1
          - description: NonAdminBackupStorageLocationRequest is the Schema for the
              nonadminbackupstoragelocationrequests API
            displayName: Non Admin BackupStorageLocationRequest
            kind: NonAdminBackupStorageLocationRequest
            name: nonadminbackupstoragelocationrequests.oadp.openshift.io
            version: v1alpha1
          - description: NonAdminBackupStorageLocation is the Schema for the nonadminbackupstoragelocations
              API
            displayName: Non Admin BackupStorageLocation
            kind: NonAdminBackupStorageLocation
            name: nonadminbackupstoragelocations.oadp.openshift.io
            version: v1alpha1
          - kind: NonAdminDownloadRequest
            name: nonadmindownloadrequests.oadp.openshift.io
            version: v1alpha1
          - description: NonAdminRestore is the Schema for the nonadminrestores API
            displayName: Non Admin Restore
            kind: NonAdminRestore
            name: nonadminrestores.oadp.openshift.io
            version: v1alpha1
          - description: A velero pod volume backup is a restic backup of persistent
              volumes attached to a running pod.
            displayName: PodVolumeBackup
            kind: PodVolumeBackup
            name: podvolumebackups.velero.io
            version: v1
          - description: A velero pod volume restore is a restic restore of persistent
              volumes attached to a running pod.
            displayName: PodVolumeRestore
            kind: PodVolumeRestore
            name: podvolumerestores.velero.io
            version: v1
          - description: Restore is a Velero resource that represents the application
              of resources from a Velero backup to a target Kubernetes cluster.
            displayName: Restore
            kind: Restore
            name: restores.velero.io
            version: v1
          - description: Schedule is a Velero resource that represents a pre-scheduled
              or periodic Backup that should be run.
            displayName: Schedule
            kind: Schedule
            name: schedules.velero.io
            version: v1
          - description: ServerStatusRequest is a request to access current status
              information about the Velero server.
            displayName: ServerStatusRequest
            kind: ServerStatusRequest
            name: serverstatusrequests.velero.io
            version: v1
          - description: VolumeSnapshotLocation is a location where Velero stores
              volume snapshots.
            displayName: VolumeSnapshotLocation
            kind: VolumeSnapshotLocation
            name: volumesnapshotlocations.velero.io
            version: v1
        description: |
          **OpenShift API for Data Protection (OADP)** operator sets up and installs
          Velero on the OpenShift platform, allowing users to backup and restore
          applications.

          Backup and restore Kubernetes resources and internal images, at the
          granularity of a namespace, using a version of Velero appropriate for
          the installed version of OADP.

          OADP backs up Kubernetes objects and internal images by saving them as
          an archive file on object storage. OADP backs up persistent volumes
          (PVs) by creating snapshots with the native cloud snapshot API or with
          the Container Storage Interface (CSI). For cloud providers that do not
          support snapshots, OADP backs up resources and PV data with Restic or Kopia.

          * [Installing OADP for application backup and restore][install-doc]

          * [Installing OADP on a ROSA cluster and using STS, please follow the Getting Started Steps 1-3 in order to obtain the role ARN needed for using the standardized STS configuration flow via OLM][rosa-sts-doc]

          * [Frequently Asked Questions][faq-doc]

          [install-doc]: https://docs.openshift.com/container-platform/latest/backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.html
          [rosa-sts-doc]: https://mobb.ninja/docs/misc/oadp/rosa-sts/
          [faq-doc]: https://access.redhat.com/articles/5456281
        displayName: OADP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - disaster backup
        - disaster recovery
        - disaster restore
        - disaster
        - backup
        - restore
        - backup automation
        - recovery
        - data protection
        - data management
        - data
        - protection
        - management
        - application resilience
        - resilience
        - velero
        - openshift
        - oadp
        - cloud-native
        - replication
        - kopia
        - restic
        - network file system
        - nfs
        - simple cloud storage
        - s3
        - minio
        - cloud storage
        - data foundation
        - ceph
        - csi
        - container storage interface
        links:
        - name: OADP Operator
          url: https://github.com/openshift/oadp-operator
        maintainers:
        - email: oadp-maintainers@redhat.com
          name: OADP Operator maintainers
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/oadp/oadp-velero-plugin-for-gcp-rhel9@sha256:f1ebdaac4359d96d524ac1bf36f5b0b3bcf7d1bbb7299bf8d6daa55dc2bd2c17
        - registry.redhat.io/oadp/oadp-operator-bundle@sha256:d998d58f1170bc7ee9d9c81f4bbba50ac1f65e8fe60fe81cd74166beff6f93c4
        - registry.redhat.io/oadp/oadp-non-admin-rhel9@sha256:71fe65fdaf632c8f51db7c5ca1692f0fec79304e68114a91541b38f4207e70db
        - registry.redhat.io/oadp/oadp-velero-plugin-for-legacy-aws-rhel9@sha256:50262b769de92249219dddb3a1ffc37cf187cd8e76a1f912459e8f1bb86f4c84
        - registry.redhat.io/oadp/oadp-velero-plugin-for-microsoft-azure-rhel9@sha256:c2dabbda67d47c43c323d7790da7e091fb9715d2e166ebfc14e2e026745d4b6f
        - registry.redhat.io/oadp/oadp-velero-plugin-rhel9@sha256:9b888c75a1ddf274b1f0aa053ddbbc9acc3270417712456ffa29ef81a883b38a
        - registry.redhat.io/oadp/oadp-velero-rhel9@sha256:dd5897b1579599cfa8d8a03a1c8d3cf68e3927c4ba5dee4e33c2a2d4c9e6ed89
        - registry.redhat.io/oadp/oadp-rhel9-operator@sha256:08676a3f8eaa6851d3dd16fea051220eda9518f8669b327bc99d24facf5b226c
        - registry.redhat.io/oadp/oadp-velero-plugin-for-aws-rhel9@sha256:2a099649d3d7101a0b6dff9f6372bc76903ba6ecb6578dbeef8a8b3853f48026
        - registry.redhat.io/oadp/oadp-kubevirt-velero-plugin-rhel9@sha256:77d6057b1783872ec65d7d6a88d8a1212c38aacc982c7efd46ed2eb77b5e9e70
        - registry.redhat.io/oadp/oadp-hypershift-velero-plugin-rhel9@sha256:f8798364f94bb1bf4db264b0439c5a280b40cafa408c47b4160d9cc9c5d87e53
        - registry.redhat.io/oadp/oadp-mustgather-rhel9@sha256:ee04dce0b5be78b40debfa96c20d6c851f4486e026db539fc27eec369bc329d6
        version: 1.5.3
      entries:
      - name: oadp-operator.v1.5.3
        version: 1.5.3
      - name: oadp-operator.v1.5.2
        version: 1.5.2
      - name: oadp-operator.v1.5.1
        version: 1.5.1
      - name: oadp-operator.v1.5.0
        version: 1.5.0
      name: stable
    defaultChannel: stable
    packageName: redhat-oadp-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: container-security-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: container-security-operator.v3.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "secscan.quay.redhat.com/v1alpha1",
                "kind": "ImageManifestVuln",
                "metadata": {
                  "selfLink": "/apis/secscan.quay.redhat.com/v1alpha1/namespaces/openshift-cluster-version/imagemanifestvulns/sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18",
                  "resourceVersion": "14565395",
                  "name": "sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18",
                  "uid": "3f16a188-e69a-406c-aa06-df340195409c",
                  "creationTimestamp": "2021-03-17T12:07:16Z",
                  "generation": 2,
                  "managedFields": [
                    {
                      "apiVersion": "secscan.quay.redhat.com/v1alpha1",
                      "fieldsType": "FieldsV1",
                      "fieldsV1": {
                        "f:metadata": {
                          "f:labels": {
                            ".": {},
                            "f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6": {}
                          }
                        },
                        "f:spec": {
                          ".": {},
                          "f:features": {},
                          "f:image": {},
                          "f:manifest": {}
                        },
                        "f:status": {
                          ".": {},
                          "f:affectedPods": {
                            ".": {},
                            "f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6": {}
                          },
                          "f:fixableCount": {},
                          "f:highCount": {},
                          "f:highestSeverity": {},
                          "f:lastUpdate": {},
                          "f:lowCount": {},
                          "f:mediumCount": {}
                        }
                      },
                      "manager": "security-labeller",
                      "operation": "Update",
                      "time": "2021-03-17T13:07:20Z"
                    }
                  ],
                  "namespace": "openshift-cluster-version",
                  "labels": {
                    "openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6": "true"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:447e05859134a0455ca55f8aae16c8a27ce06af4c18c191b41f6339df553f1bf
          createdAt: 2021-11-02 11:11 UTC
          description: Identify image vulnerabilities in Kubernetes pods
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Quay Container Security Operator (CSO) brings Quay and Clair
          metadata to Kubernetes / OpenShift. Starting with vulnerability information
          the scope will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Quay Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Quay Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:246712ce23cdd590ff83d84e9800b4ed761886ed5bab9f9cda4125a5d930e7e5
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:447e05859134a0455ca55f8aae16c8a27ce06af4c18c191b41f6339df553f1bf
        version: 3.4.7
      entries:
      - name: container-security-operator.v3.4.7
        version: 3.4.7
      name: quay-v3.4
    - currentCSV: container-security-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"secscan.quay.redhat.com/v1alpha1\",\n
            \   \"kind\": \"ImageManifestVuln\",\n    \"metadata\": {\n      \"selfLink\":
            \"/apis/secscan.quay.redhat.com/v1alpha1/namespaces/openshift-cluster-version/imagemanifestvulns/sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18\",\n
            \     \"resourceVersion\": \"14565395\",\n      \"name\": \"sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18\",\n
            \     \"uid\": \"3f16a188-e69a-406c-aa06-df340195409c\",\n      \"creationTimestamp\":
            \"2021-03-17T12:07:16Z\",\n      \"generation\": 2,\n      \"managedFields\":
            [\n        {\n          \"apiVersion\": \"secscan.quay.redhat.com/v1alpha1\",\n
            \         \"fieldsType\": \"FieldsV1\",\n          \"fieldsV1\": {\n            \"f:metadata\":
            {\n              \"f:labels\": {\n                \".\": {},\n                \"f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6\":
            {}\n              }\n            },\n            \"f:spec\": {\n              \".\":
            {},\n              \"f:features\": {},\n              \"f:image\": {},\n
            \             \"f:manifest\": {}\n            },\n            \"f:status\":
            {\n              \".\": {},\n              \"f:affectedPods\": {\n                \".\":
            {},\n                \"f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6\":
            {}\n              },\n              \"f:fixableCount\": {},\n              \"f:highCount\":
            {},\n              \"f:highestSeverity\": {},\n              \"f:lastUpdate\":
            {},\n              \"f:lowCount\": {},\n              \"f:mediumCount\":
            {}\n            }\n          },\n          \"manager\": \"security-labeller\",\n
            \         \"operation\": \"Update\",\n          \"time\": \"2021-03-17T13:07:20Z\"\n
            \       }\n      ],\n      \"namespace\": \"openshift-cluster-version\",\n
            \     \"labels\": {\n        \"openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6\":
            \"true\"\n      }\n    },\n    \"spec\": {\n      \"features\": [\n        {\n
            \         \"name\": \"musl\",\n          \"namespaceName\": \"alpine:v3.14\",\n
            \         \"version\": \"1.2.2-r3\",\n          \"versionformat\": \"dpkg\",\n
            \         \"vulnerabilities\": [\n            {\n              \"fixedby\":
            \"1.2.2_pre2-r0\",\n              \"link\": \"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-28928\",\n
            \             \"metadata\": \"{\\\"NVD\\\": {\\\"CVSSv3\\\": {\\\"Vectors\\\":
            \\\"CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\\\", \\\"ImpactScore\\\":
            3.6, \\\"Score\\\": 5.5, \\\"ExploitabilityScore\\\": 1.8}, \\\"CVSSv2\\\":
            {\\\"Score\\\": 2.1, \\\"PublishedDateTime\\\": \\\"2020-11-24T18:15Z\\\",
            \\\"Vectors\\\": \\\"AV:L/AC:L/Au:N/C:N/I:N/A:P\\\"}}}\",\n              \"name\":
            \"CVE-2020-28928\",\n              \"namespaceName\": \"alpine:v3.14\",\n
            \             \"severity\": \"Low\"\n            }\n          ]\n        }\n
            \     ],\n      \"image\": \"quay.io/harishg/pruned-redhat-operators-index\",\n
            \     \"manifest\": \"sha256:19631c86642609254777ff59fc9e128aa5d0a94a7dbb504ef1fcfb2bbc6e486e\"\n
            \   }\n  }\n]    "
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:6b3581e62550d6a615d36eee6eaf4c89b9c35ba53cab8433bd93c68393a9d115
          createdAt: 2021-09-10 23:09 UTC
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.4.x <3.5.7'
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Quay Container Security Operator (CSO) brings Quay and Clair
          metadata to Kubernetes / OpenShift. Starting with vulnerability information
          the scope will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Quay Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Quay Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:68e766235bdcd8f3335e2ab6e09942d98b183b3e498abb65acab6481664d46ed
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:6b3581e62550d6a615d36eee6eaf4c89b9c35ba53cab8433bd93c68393a9d115
        version: 3.5.7
      entries:
      - name: container-security-operator.v3.5.7
        version: 3.5.7
      name: quay-v3.5
    - currentCSV: container-security-operator.v3.10.17
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:dfda85e3a3fc7900999028ea3df53635774ed11a1a90103edb3a86e0d028cb5d
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.7.x <3.10.17'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.10.17
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:b82090e9203982de62d995c18eed37838b8ebbb092195a7f58d02526fd04523e
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:dfda85e3a3fc7900999028ea3df53635774ed11a1a90103edb3a86e0d028cb5d
        version: 3.10.17
      entries:
      - name: container-security-operator.v3.10.17
        version: 3.10.17
      - name: container-security-operator.v3.10.16
        version: 3.10.16
      - name: container-security-operator.v3.10.15
        version: 3.10.15
      - name: container-security-operator.v3.10.14
        version: 3.10.14
      - name: container-security-operator.v3.10.13
        version: 3.10.13
      - name: container-security-operator.v3.10.12
        version: 3.10.12
      - name: container-security-operator.v3.10.11
        version: 3.10.11
      - name: container-security-operator.v3.10.10
        version: 3.10.10
      - name: container-security-operator.v3.10.9
        version: 3.10.9
      - name: container-security-operator.v3.10.8
        version: 3.10.8
      - name: container-security-operator.v3.10.7
        version: 3.10.7
      - name: container-security-operator.v3.10.6
        version: 3.10.6
      - name: container-security-operator.v3.10.5
        version: 3.10.5
      - name: container-security-operator.v3.10.4
        version: 3.10.4
      - name: container-security-operator.v3.10.3
        version: 3.10.3
      - name: container-security-operator.v3.10.2
        version: 3.10.2
      - name: container-security-operator.v3.10.1
        version: 3.10.1
      - name: container-security-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: container-security-operator.v3.11.13
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:3914389fd53c371627921298c5dc3564999d92bc720f27a240f74c034ebbf5ec
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.8.x <3.11.13'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.11.13
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:56db2fd54dbe982dde6a4558b664b19a676a8ac99bfbc8082d097cd6d71a03ea
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:3914389fd53c371627921298c5dc3564999d92bc720f27a240f74c034ebbf5ec
        version: 3.11.13
      entries:
      - name: container-security-operator.v3.11.13
        version: 3.11.13
      - name: container-security-operator.v3.11.12
        version: 3.11.12
      - name: container-security-operator.v3.11.11
        version: 3.11.11
      - name: container-security-operator.v3.11.10
        version: 3.11.10
      - name: container-security-operator.v3.11.9
        version: 3.11.9
      - name: container-security-operator.v3.11.8
        version: 3.11.8
      - name: container-security-operator.v3.11.7
        version: 3.11.7
      - name: container-security-operator.v3.11.6
        version: 3.11.6
      - name: container-security-operator.v3.11.5
        version: 3.11.5
      - name: container-security-operator.v3.11.4
        version: 3.11.4
      - name: container-security-operator.v3.11.3
        version: 3.11.3
      - name: container-security-operator.v3.11.2
        version: 3.11.2
      - name: container-security-operator.v3.11.1
        version: 3.11.1
      - name: container-security-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: container-security-operator.v3.12.13
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:e1e71444c0a0ac4672b56f2b3b84784958f86a72f9fcc53081c1dda3c3a22e88
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.9.x <3.12.13'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.12.13
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:53c387293b92691eb66ea73b1d29781cf275f01b4254c38e21620c0502987272
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:e1e71444c0a0ac4672b56f2b3b84784958f86a72f9fcc53081c1dda3c3a22e88
        version: 3.12.13
      entries:
      - name: container-security-operator.v3.12.13
        version: 3.12.13
      - name: container-security-operator.v3.12.12
        version: 3.12.12
      - name: container-security-operator.v3.12.11
        version: 3.12.11
      - name: container-security-operator.v3.12.10
        version: 3.12.10
      - name: container-security-operator.v3.12.9
        version: 3.12.9
      - name: container-security-operator.v3.12.8
        version: 3.12.8
      - name: container-security-operator.v3.12.7
        version: 3.12.7
      - name: container-security-operator.v3.12.6
        version: 3.12.6
      - name: container-security-operator.v3.12.5
        version: 3.12.5
      - name: container-security-operator.v3.12.4
        version: 3.12.4
      - name: container-security-operator.v3.12.3
        version: 3.12.3
      - name: container-security-operator.v3.12.2
        version: 3.12.2
      - name: container-security-operator.v3.12.1
        version: 3.12.1
      - name: container-security-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: container-security-operator.v3.13.10
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:953ded5fec3ac732a9c96f86ad5928457e58e86546aaa51488c524a4688011f3
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.10.x <3.13.10'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.13.10
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:953ded5fec3ac732a9c96f86ad5928457e58e86546aaa51488c524a4688011f3
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:c0a8c5f5454426844c43f8732ed512ab30b5d4bd3e799fa3f133670d0ea431d5
        version: 3.13.10
      entries:
      - name: container-security-operator.v3.13.10
        version: 3.13.10
      - name: container-security-operator.v3.13.9
        version: 3.13.9
      - name: container-security-operator.v3.13.8
        version: 3.13.8
      - name: container-security-operator.v3.13.7
        version: 3.13.7
      - name: container-security-operator.v3.13.6
        version: 3.13.6
      - name: container-security-operator.v3.13.5
        version: 3.13.5
      - name: container-security-operator.v3.13.4
        version: 3.13.4
      - name: container-security-operator.v3.13.3
        version: 3.13.3
      - name: container-security-operator.v3.13.2
        version: 3.13.2
      - name: container-security-operator.v3.13.1
        version: 3.13.1
      - name: container-security-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: container-security-operator.v3.14.5
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:c42487ccf098df3ec6dbeb5d409346bdd30e92781cf3ffea5fdb6dd0b196d0cf
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.11.x <3.14.5'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.14.5
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:c42487ccf098df3ec6dbeb5d409346bdd30e92781cf3ffea5fdb6dd0b196d0cf
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:46f8c0ea6e383b742ab9cdaed1c8f624c2cf405bb1ce39c0ea6977940d52de07
        version: 3.14.5
      entries:
      - name: container-security-operator.v3.14.5
        version: 3.14.5
      - name: container-security-operator.v3.14.4
        version: 3.14.4
      - name: container-security-operator.v3.14.3
        version: 3.14.3
      - name: container-security-operator.v3.14.2
        version: 3.14.2
      - name: container-security-operator.v3.14.1
        version: 3.14.1
      - name: container-security-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: container-security-operator.v3.15.2
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:81e929ec095f791a83310ee7fcda239d5c348ba69a3cf5adcf1b3a77c349ce77
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.12.x <3.15.2'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.15.2
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:e4ea95a86e77aa64da0b1800f00c2e0e598776cde7cfc7bb9941a60bac207ed9
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:81e929ec095f791a83310ee7fcda239d5c348ba69a3cf5adcf1b3a77c349ce77
        version: 3.15.2
      entries:
      - name: container-security-operator.v3.15.2
        version: 3.15.2
      - name: container-security-operator.v3.15.1
        version: 3.15.1
      - name: container-security-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: container-security-operator.v3.16.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel9@sha256:7eb56ea92c1db547702ef9e540b3dd8dcf5bcbfc866540c09652d9eaaf07e52f
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.13.x <3.16.0'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.16.0
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:e052fc307cfc1246983df50cd95970754d6cf955d0f9b56f8c384cd8f1c08be7
        - registry.redhat.io/quay/quay-container-security-operator-rhel9@sha256:7eb56ea92c1db547702ef9e540b3dd8dcf5bcbfc866540c09652d9eaaf07e52f
        version: 3.16.0
      entries:
      - name: container-security-operator.v3.16.0
        version: 3.16.0
      name: stable-3.16
    - currentCSV: container-security-operator.v3.6.10
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:641b80df8d7102d49a5dfd5b99245669f60393880a6f1bc8ba8450b88a640d96
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.3.x <3.6.10'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.6.10
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:aca3d91b7b9f8c1e8a1e0d045c42ba5f27444e0c1c0bc4a87c697b428c2fff78
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:641b80df8d7102d49a5dfd5b99245669f60393880a6f1bc8ba8450b88a640d96
        version: 3.6.10
      entries:
      - name: container-security-operator.v3.6.10
        version: 3.6.10
      - name: container-security-operator.v3.6.9
        version: 3.6.9
      - name: container-security-operator.v3.6.8
        version: 3.6.8
      - name: container-security-operator.v3.6.7
        version: 3.6.7
      - name: container-security-operator.v3.6.6
        version: 3.6.6
      - name: container-security-operator.v3.6.5
        version: 3.6.5
      - name: container-security-operator.v3.6.4
        version: 3.6.4
      - name: container-security-operator.v3.6.2
        version: 3.6.2
      - name: container-security-operator.v3.6.1
        version: 3.6.1
      - name: container-security-operator.v3.6.0
        version: 3.6.0
      name: stable-3.6
    - currentCSV: container-security-operator.v3.7.14
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:10736a06beb503b4eb73260a87a2cde9bd83353374ee0ac9e8dd0a6260cf2665
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.4.x <3.7.14'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.7.14
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:5af7a32da67d39e7a011672de333792e63604cbfee997c19a495fc759d2fd739
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:10736a06beb503b4eb73260a87a2cde9bd83353374ee0ac9e8dd0a6260cf2665
        version: 3.7.14
      entries:
      - name: container-security-operator.v3.7.14
        version: 3.7.14
      - name: container-security-operator.v3.7.13
        version: 3.7.13
      - name: container-security-operator.v3.7.12
        version: 3.7.12
      - name: container-security-operator.v3.7.11
        version: 3.7.11
      - name: container-security-operator.v3.7.10
        version: 3.7.10
      - name: container-security-operator.v3.7.9
        version: 3.7.9
      - name: container-security-operator.v3.7.8
        version: 3.7.8
      - name: container-security-operator.v3.7.7
        version: 3.7.7
      - name: container-security-operator.v3.7.6
        version: 3.7.6
      - name: container-security-operator.v3.7.5
        version: 3.7.5
      - name: container-security-operator.v3.7.4
        version: 3.7.4
      - name: container-security-operator.v3.7.3
        version: 3.7.3
      - name: container-security-operator.v3.7.2
        version: 3.7.2
      - name: container-security-operator.v3.7.1
        version: 3.7.1
      - name: container-security-operator.v3.7.0
        version: 3.7.0
      name: stable-3.7
    - currentCSV: container-security-operator.v3.8.15
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:108bd033543beb7cce077130c96f992c202f7a258229c239795f8f19e5fae5e5
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.5.x <3.8.15'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.8.15
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:74f0cf91e2feb60fe794f71b9f56fa8afc60e53379a0aef104701dd6692272e5
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:108bd033543beb7cce077130c96f992c202f7a258229c239795f8f19e5fae5e5
        version: 3.8.15
      entries:
      - name: container-security-operator.v3.8.15
        version: 3.8.15
      - name: container-security-operator.v3.8.14
        version: 3.8.14
      - name: container-security-operator.v3.8.13
        version: 3.8.13
      - name: container-security-operator.v3.8.12
        version: 3.8.12
      - name: container-security-operator.v3.8.11
        version: 3.8.11
      - name: container-security-operator.v3.8.10
        version: 3.8.10
      - name: container-security-operator.v3.8.9
        version: 3.8.9
      - name: container-security-operator.v3.8.8
        version: 3.8.8
      - name: container-security-operator.v3.8.7
        version: 3.8.7
      - name: container-security-operator.v3.8.6
        version: 3.8.6
      - name: container-security-operator.v3.8.5
        version: 3.8.5
      - name: container-security-operator.v3.8.4
        version: 3.8.4
      - name: container-security-operator.v3.8.3
        version: 3.8.3
      - name: container-security-operator.v3.8.2
        version: 3.8.2
      - name: container-security-operator.v3.8.1
        version: 3.8.1
      - name: container-security-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: container-security-operator.v3.9.17
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:42777c988fba76e80157675e5219246994552b7a685319ab67f4cb59c29f3d1f
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.9.17
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:00dc04b86ae7fd7dd37e9234ed2b4a1d0f0403993c153e197ac8b96233e95048
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:42777c988fba76e80157675e5219246994552b7a685319ab67f4cb59c29f3d1f
        version: 3.9.17
      entries:
      - name: container-security-operator.v3.9.17
        version: 3.9.17
      - name: container-security-operator.v3.9.16
        version: 3.9.16
      - name: container-security-operator.v3.9.15
        version: 3.9.15
      - name: container-security-operator.v3.9.14
        version: 3.9.14
      - name: container-security-operator.v3.9.13
        version: 3.9.13
      - name: container-security-operator.v3.9.12
        version: 3.9.12
      - name: container-security-operator.v3.9.11
        version: 3.9.11
      - name: container-security-operator.v3.9.10
        version: 3.9.10
      - name: container-security-operator.v3.9.9
        version: 3.9.9
      - name: container-security-operator.v3.9.8
        version: 3.9.8
      - name: container-security-operator.v3.9.7
        version: 3.9.7
      - name: container-security-operator.v3.9.6
        version: 3.9.6
      - name: container-security-operator.v3.9.5
        version: 3.9.5
      - name: container-security-operator.v3.9.4
        version: 3.9.4
      - name: container-security-operator.v3.9.3
        version: 3.9.3
      - name: container-security-operator.v3.9.2
        version: 3.9.2
      - name: container-security-operator.v3.9.1
        version: 3.9.1
      - name: container-security-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.16
    packageName: container-security-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CodeFlare
      provider-url: https://github.com/project-codeflare
    name: codeflare-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: codeflare-operator.v1.16.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: AI/Machine Learning, Big Data
          containerImage: quay.io/project-codeflare/codeflare-operator:v1.16.0
          createdAt: "2025-06-16T10:53:51Z"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/project-codeflare/codeflare-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AppWrapper
            name: appwrappers.workload.codeflare.dev
            version: v1beta2
        description: CodeFlare allows you to scale complex pipelines anywhere
        displayName: CodeFlare Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Pipelines
        - Scaling
        - App
        - Jobs
        links:
        - name: Codeflare Operator
          url: https://codeflare.dev/
        maintainers:
        - email: aasthana@redhat.com
          name: Anish Asthana
        - email: kpostlet@redhat.com
          name: Kevin Postlethwait
        - email: meyceoz@redhat.com
          name: Mustafa Eyceoz
        maturity: alpha
        provider:
          name: CodeFlare
          url: https://github.com/project-codeflare
        relatedImages:
        - quay.io/project-codeflare/codeflare-operator:v1.16.0
        - quay.io/community-operator-pipeline-prod/codeflare-operator@sha256:3dbd2b65d7841cc97c37db59ae8aff9991c4d0f0324c4391afd41c4de20c232a
        version: 1.16.0
      entries:
      - name: codeflare-operator.v1.16.0
        version: 1.16.0
      - name: codeflare-operator.v1.15.0
        version: 1.15.0
      - name: codeflare-operator.v1.14.0
        version: 1.14.0
      - name: codeflare-operator.v1.13.0
        version: 1.13.0
      - name: codeflare-operator.v1.12.0
        version: 1.12.0
      - name: codeflare-operator.v1.11.0
        version: 1.11.0
      - name: codeflare-operator.v1.10.0
        version: 1.10.0
      - name: codeflare-operator.v1.9.0
        version: 1.9.0
      - name: codeflare-operator.v1.8.0
        version: 1.8.0
      - name: codeflare-operator.v1.7.0
        version: 1.7.0
      - name: codeflare-operator.v1.6.0
        version: 1.6.0
      - name: codeflare-operator.v1.5.0
        version: 1.5.0
      - name: codeflare-operator.v1.4.4
        version: 1.4.4
      - name: codeflare-operator.v1.4.3
        version: 1.4.3
      - name: codeflare-operator.v1.4.2
        version: 1.4.2
      - name: codeflare-operator.v1.4.1
        version: 1.4.1
      - name: codeflare-operator.v1.4.0
        version: 1.4.0
      - name: codeflare-operator.v1.3.1
        version: 1.3.1
      - name: codeflare-operator.v1.3.0
        version: 1.3.0
      - name: codeflare-operator.v1.2.0
        version: 1.2.0
      - name: codeflare-operator.v1.1.0
        version: 1.1.0
      - name: codeflare-operator.v1.0.1
        version: 1.0.1
      - name: codeflare-operator.v1.0.0
        version: 1.0.0
      - name: codeflare-operator.v1.0.0-rc.4
        version: 1.0.0-rc.4
      - name: codeflare-operator.v1.0.0-rc.3
        version: 1.0.0-rc.3
      - name: codeflare-operator.v1.0.0-rc.2
        version: 1.0.0-rc.2
      - name: codeflare-operator.v1.0.0-rc.1
        version: 1.0.0-rc.1
      - name: codeflare-operator.v0.2.3
        version: 0.2.3
      - name: codeflare-operator.v0.2.2
        version: 0.2.2
      - name: codeflare-operator.v0.2.1
        version: 0.2.1
      - name: codeflare-operator.v0.2.0
        version: 0.2.0
      - name: codeflare-operator.v0.1.0
        version: 0.1.0
      - name: codeflare-operator.v0.0.6
        version: 0.0.6
      - name: codeflare-operator.v0.0.5
        version: 0.0.5
      - name: codeflare-operator.v0.0.4
        version: 0.0.4
      - name: codeflare-operator.v0.0.3
        version: 0.0.3
      - name: codeflare-operator.v0.0.2
        version: 0.0.2
      - name: codeflare-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: codeflare-operator
    provider:
      name: CodeFlare
      url: https://github.com/project-codeflare
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Infinidat
      provider-url: https://infinidat.com
    name: infinibox-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infinibox-operator-certified.v2.24.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csidriver.infinidat.com/v1alpha1",
                "kind": "InfiniboxCsiDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infinibox-operator-certified",
                    "app.kubernetes.io/instance": "infiniboxcsidriver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infiniboxcsidriver",
                    "app.kubernetes.io/part-of": "infinibox-operator-certified"
                  },
                  "name": "infiniboxcsidriver-sample"
                },
                "spec": {
                  "Ibox_Creds": [
                    {
                      "SecretName": "infinibox-creds",
                      "hostname": "ibox0000",
                      "inbound_secret": "0.0000000000000",
                      "inbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonout",
                      "outbound_secret": "0.0000000000001",
                      "outbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonin",
                      "password": "my-pool-admin-passwd",
                      "username": "my-pool-admin"
                    }
                  ],
                  "Infinibox_Protocol_Secrets": [
                    {
                      "SecretName": "infinibox-protocol-secret",
                      "iscsi": {
                        "network_space": "default_iscsi_space",
                        "useCHAP": "none"
                      },
                      "nfs": {
                        "network_space": "default_nas_space",
                        "nfs_export_permissions": ""
                      },
                      "nvme": {
                        "network_space": "default_nvme_space"
                      },
                      "preferred_auto_order": "fc,nvme,iscsi",
                      "storage_protocol": "fc"
                    }
                  ],
                  "autoUpdate": false,
                  "cleanupNFSPerms": false,
                  "controllerserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "controllerservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "createEvents": true,
                  "csiDriverName": "infinibox-csi-driver",
                  "csiDriverVersion": "v2.24.0",
                  "e2etesting": false,
                  "iboxHostNamingConvention": "",
                  "images": {
                    "attachersidecar": "registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d",
                    "attachersidecar_pull_policy": "IfNotPresent",
                    "csidriver": "registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec",
                    "csidriver_pull_policy": "Always",
                    "livenesssidecar": "registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f",
                    "livenesssidecar_pull_policy": "IfNotPresent",
                    "provisionersidecar": "registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327",
                    "provisionersidecar_pull_policy": "IfNotPresent",
                    "registrarsidecar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a",
                    "registrarsidecar_pull_policy": "IfNotPresent",
                    "resizersidecar": "registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d",
                    "resizersidecar_pull_policy": "IfNotPresent",
                    "snapshottersidecar": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d",
                    "snapshottersidecar_pull_policy": "IfNotPresent"
                  },
                  "instanceCount": 1,
                  "logLevel": "debug",
                  "nodeSelector": {
                    "kubernetes.io/os": "linux"
                  },
                  "nodeserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "nodeservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "protocolSecret": "",
                  "removeDomainName": false,
                  "replicaCount": 1,
                  "skipCredentialsCreation": false,
                  "volumeNamePrefix": "ibox"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
          createdAt: "2025-11-25T20:05:02Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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.skipRange: <2.24.0
          operatorframework.io/suggested-namespace: infinidat-csi
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/Infinidat/infinibox-csi-driver
          support: Infinidat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Iboxreplica
            name: iboxreplicas.csidriver.infinidat.com
            version: v1
          - kind: InfiniboxCsiDriver
            name: infiniboxcsidrivers.csidriver.infinidat.com
            version: v1alpha1
        description: "Infinidat InfiniBox Container Storage Interface (CSI) Driver
          is a\n    CNCF-compliant Kubernetes integration for InfiniBox storage systems,
          offering\n    advanced enterprise functionality for petabyte-scale Kubernetes
          deployments including\n    Red Hat OpenShift.\n \n## Features and Benefits\n
          \ \n* **Multi-protocol flexibility** - manage\n    Kubernetes Persistent
          Volumes attached via block and file protocols,\n    including Fibre Channel,
          iSCSI, and NFS, with all Kubernetes PV access modes\n    \n* **Multi-petabyte
          scalability** - support hundreds of thousands of PVs per InfiniBox\n    system
          and control multiple InfiniBox arrays within a single Kubernetes cluster\n
          \   \\ \n* **Advanced enterprise features** - manage native InfiniBox snapshots
          and\n    clones, including restoring from snapshots, and import PVs created
          outside of\n    InfiniBox CSI Driver\n  \n## Required Parameters\n  \n*
          `hostname` - IP address\n    or hostname of the InfiniBox management interface\n*
          `username` / `password` -\n    InfiniBox credentials\n* `SecretName` - secret
          name, to be used in the StorageClass\n    to define a specific InfiniBox
          for persistent volumes\n\n## Optional Parameters\n*\n    `inbound_user`
          / `inbound_secret` / `outbound_user` / `outbound_secret` - credentials \n
          \   for iSCSI CHAP authentication\n\n    \n## Installation Instructions\n
          \n1. Create *infinidat-csi* namespace to install operator into.\n    \n2.
          Delete the following *clusterrolebindings*, if they exist, before installing
          operator\n     * infinidat-csi-operator-infinidat-csi-attacher\n     * infinidat-csi-operator-infinidat-csi-controller
          \                    \n     * infinidat-csi-operator-infinidat-csi-driver
          \                    \n     * infinidat-csi-operator-infinidat-csi-node
          \                              \n     * infinidat-csi-operator-infinidat-csi-provisioner
          \                       \n     * infinidat-csi-operator-infinidat-csi-resizer
          \          \n     * infinidat-csi-operator-infinidat-csi-snapshotter \n
          \   \n3. Install Infinidat Infinibox CSI Driver - Operator (this) into the
          *infinidat-csi* namespace.\n    \n4. Apply the following Security Context
          Constraints to the created service accounts in the *infinidat-csi* \n    namespace\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    \n5. Recreate or edit any existing storage classes, pointing to the
          new namespace\n\n     \n6. If you choose a different namespace other than
          *infinidat-csi* you will need to edit the clusterrolebindings listed above
          to specify your custom namespace\n\n     \n7. Install an instance of Infinidat
          Driver into the *infinidat-csi* namespace"
        displayName: InfiniBox CSI Driver - Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - csi
        - nas
        - san
        - storage
        - infinidat
        - infinibox
        links:
        - name: Infinidat
          url: https://infinidat.com
        maintainers:
        - email: info@infinidat.com
          name: Infinidat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Infinidat
          url: https://infinidat.com
        relatedImages:
        - registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d
        - registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified@sha256:a6a63241d55cdb63e3072fd7e663f08eca9a46e64d73ff7159eafd48f92c2db0
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d
        - registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327
        - registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified-bundle@sha256:0eb6e7e06e18d83e4ddbd4fee4db440c5eb3552821954c1485b280f47ce4a743
        version: 2.24.0
      entries:
      - name: infinibox-operator-certified.v2.24.0
        version: 2.24.0
      name: alpha
    - currentCSV: infinibox-operator-certified.v2.24.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csidriver.infinidat.com/v1alpha1",
                "kind": "InfiniboxCsiDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infinibox-operator-certified",
                    "app.kubernetes.io/instance": "infiniboxcsidriver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infiniboxcsidriver",
                    "app.kubernetes.io/part-of": "infinibox-operator-certified"
                  },
                  "name": "infiniboxcsidriver-sample"
                },
                "spec": {
                  "Ibox_Creds": [
                    {
                      "SecretName": "infinibox-creds",
                      "hostname": "ibox0000",
                      "inbound_secret": "0.0000000000000",
                      "inbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonout",
                      "outbound_secret": "0.0000000000001",
                      "outbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonin",
                      "password": "my-pool-admin-passwd",
                      "username": "my-pool-admin"
                    }
                  ],
                  "Infinibox_Protocol_Secrets": [
                    {
                      "SecretName": "infinibox-protocol-secret",
                      "iscsi": {
                        "network_space": "default_iscsi_space",
                        "useCHAP": "none"
                      },
                      "nfs": {
                        "network_space": "default_nas_space",
                        "nfs_export_permissions": ""
                      },
                      "nvme": {
                        "network_space": "default_nvme_space"
                      },
                      "preferred_auto_order": "fc,nvme,iscsi",
                      "storage_protocol": "fc"
                    }
                  ],
                  "autoUpdate": false,
                  "cleanupNFSPerms": false,
                  "controllerserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "controllerservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "createEvents": true,
                  "csiDriverName": "infinibox-csi-driver",
                  "csiDriverVersion": "v2.24.0",
                  "e2etesting": false,
                  "iboxHostNamingConvention": "",
                  "images": {
                    "attachersidecar": "registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d",
                    "attachersidecar_pull_policy": "IfNotPresent",
                    "csidriver": "registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec",
                    "csidriver_pull_policy": "Always",
                    "livenesssidecar": "registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f",
                    "livenesssidecar_pull_policy": "IfNotPresent",
                    "provisionersidecar": "registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327",
                    "provisionersidecar_pull_policy": "IfNotPresent",
                    "registrarsidecar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a",
                    "registrarsidecar_pull_policy": "IfNotPresent",
                    "resizersidecar": "registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d",
                    "resizersidecar_pull_policy": "IfNotPresent",
                    "snapshottersidecar": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d",
                    "snapshottersidecar_pull_policy": "IfNotPresent"
                  },
                  "instanceCount": 1,
                  "logLevel": "debug",
                  "nodeSelector": {
                    "kubernetes.io/os": "linux"
                  },
                  "nodeserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "nodeservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "protocolSecret": "",
                  "removeDomainName": false,
                  "replicaCount": 1,
                  "skipCredentialsCreation": false,
                  "volumeNamePrefix": "ibox"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
          createdAt: "2025-11-25T20:05:02Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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.skipRange: <2.24.0
          operatorframework.io/suggested-namespace: infinidat-csi
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/Infinidat/infinibox-csi-driver
          support: Infinidat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Iboxreplica
            name: iboxreplicas.csidriver.infinidat.com
            version: v1
          - kind: InfiniboxCsiDriver
            name: infiniboxcsidrivers.csidriver.infinidat.com
            version: v1alpha1
        description: "Infinidat InfiniBox Container Storage Interface (CSI) Driver
          is a\n    CNCF-compliant Kubernetes integration for InfiniBox storage systems,
          offering\n    advanced enterprise functionality for petabyte-scale Kubernetes
          deployments including\n    Red Hat OpenShift.\n \n## Features and Benefits\n
          \ \n* **Multi-protocol flexibility** - manage\n    Kubernetes Persistent
          Volumes attached via block and file protocols,\n    including Fibre Channel,
          iSCSI, and NFS, with all Kubernetes PV access modes\n    \n* **Multi-petabyte
          scalability** - support hundreds of thousands of PVs per InfiniBox\n    system
          and control multiple InfiniBox arrays within a single Kubernetes cluster\n
          \   \\ \n* **Advanced enterprise features** - manage native InfiniBox snapshots
          and\n    clones, including restoring from snapshots, and import PVs created
          outside of\n    InfiniBox CSI Driver\n  \n## Required Parameters\n  \n*
          `hostname` - IP address\n    or hostname of the InfiniBox management interface\n*
          `username` / `password` -\n    InfiniBox credentials\n* `SecretName` - secret
          name, to be used in the StorageClass\n    to define a specific InfiniBox
          for persistent volumes\n\n## Optional Parameters\n*\n    `inbound_user`
          / `inbound_secret` / `outbound_user` / `outbound_secret` - credentials \n
          \   for iSCSI CHAP authentication\n\n    \n## Installation Instructions\n
          \n1. Create *infinidat-csi* namespace to install operator into.\n    \n2.
          Delete the following *clusterrolebindings*, if they exist, before installing
          operator\n     * infinidat-csi-operator-infinidat-csi-attacher\n     * infinidat-csi-operator-infinidat-csi-controller
          \                    \n     * infinidat-csi-operator-infinidat-csi-driver
          \                    \n     * infinidat-csi-operator-infinidat-csi-node
          \                              \n     * infinidat-csi-operator-infinidat-csi-provisioner
          \                       \n     * infinidat-csi-operator-infinidat-csi-resizer
          \          \n     * infinidat-csi-operator-infinidat-csi-snapshotter \n
          \   \n3. Install Infinidat Infinibox CSI Driver - Operator (this) into the
          *infinidat-csi* namespace.\n    \n4. Apply the following Security Context
          Constraints to the created service accounts in the *infinidat-csi* \n    namespace\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    \n5. Recreate or edit any existing storage classes, pointing to the
          new namespace\n\n     \n6. If you choose a different namespace other than
          *infinidat-csi* you will need to edit the clusterrolebindings listed above
          to specify your custom namespace\n\n     \n7. Install an instance of Infinidat
          Driver into the *infinidat-csi* namespace"
        displayName: InfiniBox CSI Driver - Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - csi
        - nas
        - san
        - storage
        - infinidat
        - infinibox
        links:
        - name: Infinidat
          url: https://infinidat.com
        maintainers:
        - email: info@infinidat.com
          name: Infinidat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Infinidat
          url: https://infinidat.com
        relatedImages:
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified-bundle@sha256:0eb6e7e06e18d83e4ddbd4fee4db440c5eb3552821954c1485b280f47ce4a743
        - registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d
        - registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified@sha256:a6a63241d55cdb63e3072fd7e663f08eca9a46e64d73ff7159eafd48f92c2db0
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a
        - registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f
        - registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
        version: 2.24.0
      entries:
      - name: infinibox-operator-certified.v2.24.0
        version: 2.24.0
      name: stable
    defaultChannel: stable
    packageName: infinibox-operator-certified
    provider:
      name: Infinidat
      url: https://infinidat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/instance: ibm-data-reporter-operator
      app.kubernetes.io/managed-by: ibm-data-reporter-operator
      app.kubernetes.io/name: ibm-data-reporter-operator
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Marketplace
      provider-url: ""
    name: ibm-data-reporter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-data-reporter-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "DataReporterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ibm-data-reporter-operator",
                    "app.kubernetes.io/instance": "datareporterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datareporterconfig",
                    "app.kubernetes.io/part-of": "ibm-data-reporter-operator"
                  },
                  "name": "datareporterconfig"
                },
                "spec": {
                  "userConfig": [
                    {
                      "metadata": {
                        "ameta1": "ametadata1",
                        "bmeta1": "bmetadata1",
                        "cmeta1": "cmetadata1",
                        "dmeta1": "dmetadata1"
                      },
                      "userName": "system:serviceaccount:redhat-marketplace:ibm-data-reporter-operator-api"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
          createdAt: ""
          description: The IBM Data Reporter Operator accepts events and transforms
            them into reports submitted to the Data Service of the IBM Metrics Operator.
          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: "true"
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReporterConfig is the Schema for the datareporterconfigs
              API
            displayName: Data Reporter Config
            kind: DataReporterConfig
            name: datareporterconfigs.marketplace.redhat.com
            version: v1alpha1
          required:
          - description: MarketplaceConfig is configuration manager for our Red Hat
              Marketplace controllers By installing this product you accept the license
              terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
        description: "# IBM Data Reporter Operator\n\n# Introduction\n\nThe IBM Data
          Reporter Operator accepts events and transforms them into reports submitted
          to the IBM Metrics Operator Data Service.\n\n# Details\n\nThe IBM Data Reporter
          Operator deploys a service that provides an endpoint to which callers can
          send raw json event data. The event data is transformed into a report and
          is sent to the IBM Metrics Operator's Data Service. The IBM Metrics Operator
          Data Service periodically uploads the reports to IBM Software Central. It
          can also filter, transform and forward events to alternate endpoints.\n\n##
          Prerequisites\n\n- OpenShift Container Platform, major version 4 with any
          available supported minor version\n- Install IBM Metrics Operator\n  - IBM
          Data Reporter Operator prerequisties the IBM Metrics Operator's Data Service\n
          \ - Register the Cluster by creating a `redhat-marketplace-pull-secret`,
          as per the instructions\n  - Once `rhm-data-service` has started IBM Data
          Reporter Operator will accept requests\n\n## SecurityContextConstraints
          Requirements\n\n- The operator runs under Red Hat restricted SCC\n\n## Kyverno
          Policies\n\nThe IBM Data Reporter Operator makes a best effort to comply
          with the Kyverno policies defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Data Reporter Operator is not replicated\n  - Service uptime is not
          considered critial, and can be rescheduled\n\n## Resources Required\n\n-
          The operator requires at least 85 Mi memory.\n\n## Limitations\n\n- Only
          runs on amd64, s390x and ppc64le architectures\n\n## Installing\n\n- A user
          with the cluster administrator role.\n- Install this operator in the same
          namespace as the IBM Metrics Operator\n  - default namespace: `ibm-software-central`\n\n##
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n# Configuration\n\nOptional:\n- Configure the
          Custom Resource Definition `DataReporterConfig` named `datareporterconfig`
          as per the following sample\n  - Configuration that can not be reconciled
          successfully will be reported on the DataReporterConfig Status\n  - jsonPath
          expressions are handled by: https://github.com/ohler55/ojg\n    - jsonPath
          comparison: https://cburgmer.github.io/json-path-comparison/\n  - Transformer
          type currently supported is `kazaam`\n    - https://github.com/willie68/kazaam\n\nSample
          DataReporterConfig:\n```YAML\napiVersion: marketplace.redhat.com/v1alpha1\nkind:
          DataReporterConfig\nmetadata:\n  name: datareporterconfig\nspec:\n  # true:
          report generated for 1 event and provide return code from data-service,
          confirming delivery\n  # false: events will be accumulated before building
          report, and immediately return 200, delivery unfconfirmed\n  confirmDelivery:
          false\n  dataFilters:   # dataFilters matches the first dataFilter selector,
          applies transforms and forwards to data-service and destinations\n  - altDestinations:
          \  # List of desintations to transform and foward events to\n    - authorization:
          \  # optional endpoint if an authorization token must first be requested
          \n        authDestHeader: Authorization   # http header key to be appended
          to destination request\n        authDestHeaderPrefix: 'Bearer '   # optional
          prefix for constructing destination request http header value\n        bodyData:
          \  # body data to send to authorization request, often an apiKey\n          secretKeyRef:\n
          \           name: auth-body-data-secret\n            key: bodydata\n        header:
          \  # secret map to use for authorization request headers\n          secret:\n
          \           name: auth-header-map-secret\n        tokenExpr: $.token   #
          optionally extract the returned body data using a jsonPath expression\n
          \       url: https://127.0.0.1:8443/api/2.0/accounts/my_account_id/apikeys/token
          \  # the url to make an authorization request to\n      header:   # secret
          map to use for destination request headers\n        secret:\n          name:
          dest-header-map-secret\n      transformer:   # The transformer to apply
          to event data for this destination\n        configMapKeyRef:\n          key:
          kazaam.json\n          name: kazaam-configmap\n        type: kazaam\n      url:
          https://127.0.0.1:8443/metering/api/1.0/usage   # the url to send the event
          to\n      urlSuffixExpr: $.properties.productId   # optional jsonPath expression
          on the event to extract and set a suffix to the url path\n    manifestType:
          dataReporter   # override manifestType of report sent to data-service\n
          \   selector:   # Matches against event data and a user. Empty selector
          matches all.\n      matchExpressions:   # jsonPath expression must return
          a result for all expressions to match (AND)\n      - $[?($.event == \"Account
          Contractual Usage\")]\n      - $.properties.productId\n      - $[?($.properties.source
          != null)]\n      - $[?($.properties.unit == \"AppPoints\")]\n      - $[?($.properties.quantity
          >= 0)]\n      - $[?($.timestamp != null)]\n      matchUsers:   # must match
          one of these users (OR). Omitting users matches any user\n      - system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n
          \   transformer:   # The transformer to apply to the event for data-service\n
          \     configMapKeyRef:\n        key: kazaam.json\n        name: kazaam-configmap\n
          \     type: kazaam\n  tlsConfig:   # TLS configuration for requests outbound
          to destinations\n    caCerts:\n    - name: tls-ca-certificates\n      key:
          ca.crt\n    certificates:\n    - clientCert:\n        secretKeyRef:\n          name:
          tls-ca-certificates\n          key: tls.crt\n      clientKey:\n        secretKeyRef:\n
          \         name: tls-ca-certificates\n          key: tls.key\n    cipherSuites:
          \n    - TLS_AES_128_GCM_SHA256\n    - TLS_AES_256_GCM_SHA384\n    - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256\n    - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384\n    insecureSkipVerify: false\n
          \   minVersion: VersionTLS12\n  userConfig:   # Optional metadata to apply
          to report sent to data-service for a specific user\n  - metadata:\n      ameta1:
          ametadata1\n      bmeta1: bmetadata1\n      cmeta1: cmetadata1\n      dmeta1:
          dmetadata1\n    userName: system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n```\n\nSample
          Header Secrets:\n```YAML\napiVersion: v1\nstringData:\n  accept: | \n    */*\nkind:
          Secret\nmetadata:\n  name: dest-header-map-secret\ntype: Opaque\n---\napiVersion:
          v1\nstringData:\n  accept: application/json\n  Content-Type: application/json\nkind:
          Secret\nmetadata:\n  name: auth-header-map-secret\ntype: Opaque\n```\n\nSample
          Authentication Body Secret:\n```YAML\napiVersion: v1\nstringData:\n  bodydata:
          |\n    {\"apikey\": \"myapikey\"}\nkind: Secret\nmetadata:\n  name: auth-body-data-secret\ntype:
          Opaque\n```\n\nSample TLS Secret:\n```YAML\napiVersion: v1\ndata:\n  ca.crt:
          LS0t...\n  tls.key: LS0t...\n  tls.crt: LS0t...\nkind: Secret\nmetadata:\n
          \ name: tls-ca-certificates\n```\n\nSample Kazaam ConfigMap:\n```YAML\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: kazaam-configmap\ndata:\n  kazaam.json:
          |\n    [\n        {\n            \"operation\": \"timestamp\",\n            \"spec\":
          {\n                \"timestamp\": {\n                \"inputFormat\": \"2006-01-02T15:04:05.999999+00:00\",\n
          \               \"outputFormat\": \"$unixmilli\"\n                }\n            }\n
          \       },\n        {\n            \"operation\": \"shift\",\n            \"spec\":
          {\n                \"instances[0].instanceId\": \"properties.source\",\n
          \               \"instances[0].startTime\": \"timestamp\",\n                \"instances[0].endTime\":
          \"timestamp\",\n                \"instances[0].metricUsage[0].metricId\":
          \"properties.unit\",\n                \"instances[0].metricUsage[0].quantity\":
          \"properties.quantity\"\n            }\n        },\n        {\n            \"operation\":
          \"default\",\n            \"spec\": {\n                \"meteringModel\":
          \"point-in-time\",\n                \"meteringPlan\": \"contract\"\n            }\n
          \       }\n    ]\n```\n\n### API Service User Configuration\n\n- The ClusterRole
          for api access is `clusterrole/ibm-data-reporter-operator-api`\n- The default
          ServiceAccount provided as an api user is `system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api`\n
          \ - The default ClusterRoleBinding for this user is `clusterrolebinding/ibm-data-reporter-operator-api`\n\nOptional:\n\n-
          To create an additional ServiceAccount and ClusterRoleBinding for api access\n\n```SHELL\nNAMESPACE=$(oc
          config view --minify -o jsonpath='{..namespace}') && \\\noc create serviceaccount
          my-api-service-account && \\\noc create clusterrolebinding ibm-data-reporter-operator-api
          --clusterrole=ibm-data-reporter-operator-api --serviceaccount=${NAMESPACE}:my-api-service-account\n```\n\n-
          Update datareporterconfig to attach metadata to reports associated with
          this user\n\n## API Service Usage\n\n- Get Token & Host\n\n```SHELL\noc
          project ibm-software-central\nexport DRTOKEN=$(oc create token ibm-data-reporter-operator-api
          --namespace ibm-software-central --duration 1h)\nexport DRHOST=$(oc get
          route ibm-data-reporter --template='{{ .spec.host }}')\n```\n\n- Get the
          Status\n\n```SHELL\ncurl -k -H \"Authorization: Bearer ${DRTOKEN}\" https://${DRHOST}/v1/status
          \n```\n\n- Post an Event\n\n```SHELL\ncurl -k -H \"Authorization: Bearer
          ${DRTOKEN}\" -X POST -d '{\"event\":\"myevent\"}' https://${DRHOST}/v1/event\n```\n\n##
          Storage\n\n- The operator temporarily stores events in pod memory, and writes
          to the IBM Metrics Operator data-service, which requires a PersistentVolume\n\n##
          License\n\nCopyright IBM Corporation 2023. All Rights Reserved.\n\nLicensed
          under the Apache License, Version 2.0 (the \"License\");\nyou may not use
          this file except in compliance with the License.\nYou may obtain a copy
          of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless
          required by applicable law or agreed to in writing, software\ndistributed
          under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES
          OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for
          the specific language governing permissions and\nlimitations under the License.\n"
        displayName: IBM Data Reporter Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
        - registry.connect.redhat.com/rh-marketplace/ibm-data-reporter-operator-bundle@sha256:20ee4c5cb1e904dfcbaf678a3a258840ea3d19350f812257944db361ab92009d
        version: 2.23.1
      entries:
      - name: ibm-data-reporter-operator.v2.23.1
        version: 2.23.1
      name: beta
    - currentCSV: ibm-data-reporter-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "DataReporterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ibm-data-reporter-operator",
                    "app.kubernetes.io/instance": "datareporterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datareporterconfig",
                    "app.kubernetes.io/part-of": "ibm-data-reporter-operator"
                  },
                  "name": "datareporterconfig"
                },
                "spec": {
                  "userConfig": [
                    {
                      "metadata": {
                        "ameta1": "ametadata1",
                        "bmeta1": "bmetadata1",
                        "cmeta1": "cmetadata1",
                        "dmeta1": "dmetadata1"
                      },
                      "userName": "system:serviceaccount:redhat-marketplace:ibm-data-reporter-operator-api"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
          createdAt: ""
          description: The IBM Data Reporter Operator accepts events and transforms
            them into reports submitted to the Data Service of the IBM Metrics Operator.
          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: "true"
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReporterConfig is the Schema for the datareporterconfigs
              API
            displayName: Data Reporter Config
            kind: DataReporterConfig
            name: datareporterconfigs.marketplace.redhat.com
            version: v1alpha1
          required:
          - description: MarketplaceConfig is configuration manager for our Red Hat
              Marketplace controllers By installing this product you accept the license
              terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
        description: "# IBM Data Reporter Operator\n\n# Introduction\n\nThe IBM Data
          Reporter Operator accepts events and transforms them into reports submitted
          to the IBM Metrics Operator Data Service.\n\n# Details\n\nThe IBM Data Reporter
          Operator deploys a service that provides an endpoint to which callers can
          send raw json event data. The event data is transformed into a report and
          is sent to the IBM Metrics Operator's Data Service. The IBM Metrics Operator
          Data Service periodically uploads the reports to IBM Software Central. It
          can also filter, transform and forward events to alternate endpoints.\n\n##
          Prerequisites\n\n- OpenShift Container Platform, major version 4 with any
          available supported minor version\n- Install IBM Metrics Operator\n  - IBM
          Data Reporter Operator prerequisties the IBM Metrics Operator's Data Service\n
          \ - Register the Cluster by creating a `redhat-marketplace-pull-secret`,
          as per the instructions\n  - Once `rhm-data-service` has started IBM Data
          Reporter Operator will accept requests\n\n## SecurityContextConstraints
          Requirements\n\n- The operator runs under Red Hat restricted SCC\n\n## Kyverno
          Policies\n\nThe IBM Data Reporter Operator makes a best effort to comply
          with the Kyverno policies defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Data Reporter Operator is not replicated\n  - Service uptime is not
          considered critial, and can be rescheduled\n\n## Resources Required\n\n-
          The operator requires at least 85 Mi memory.\n\n## Limitations\n\n- Only
          runs on amd64, s390x and ppc64le architectures\n\n## Installing\n\n- A user
          with the cluster administrator role.\n- Install this operator in the same
          namespace as the IBM Metrics Operator\n  - default namespace: `ibm-software-central`\n\n##
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n# Configuration\n\nOptional:\n- Configure the
          Custom Resource Definition `DataReporterConfig` named `datareporterconfig`
          as per the following sample\n  - Configuration that can not be reconciled
          successfully will be reported on the DataReporterConfig Status\n  - jsonPath
          expressions are handled by: https://github.com/ohler55/ojg\n    - jsonPath
          comparison: https://cburgmer.github.io/json-path-comparison/\n  - Transformer
          type currently supported is `kazaam`\n    - https://github.com/willie68/kazaam\n\nSample
          DataReporterConfig:\n```YAML\napiVersion: marketplace.redhat.com/v1alpha1\nkind:
          DataReporterConfig\nmetadata:\n  name: datareporterconfig\nspec:\n  # true:
          report generated for 1 event and provide return code from data-service,
          confirming delivery\n  # false: events will be accumulated before building
          report, and immediately return 200, delivery unfconfirmed\n  confirmDelivery:
          false\n  dataFilters:   # dataFilters matches the first dataFilter selector,
          applies transforms and forwards to data-service and destinations\n  - altDestinations:
          \  # List of desintations to transform and foward events to\n    - authorization:
          \  # optional endpoint if an authorization token must first be requested
          \n        authDestHeader: Authorization   # http header key to be appended
          to destination request\n        authDestHeaderPrefix: 'Bearer '   # optional
          prefix for constructing destination request http header value\n        bodyData:
          \  # body data to send to authorization request, often an apiKey\n          secretKeyRef:\n
          \           name: auth-body-data-secret\n            key: bodydata\n        header:
          \  # secret map to use for authorization request headers\n          secret:\n
          \           name: auth-header-map-secret\n        tokenExpr: $.token   #
          optionally extract the returned body data using a jsonPath expression\n
          \       url: https://127.0.0.1:8443/api/2.0/accounts/my_account_id/apikeys/token
          \  # the url to make an authorization request to\n      header:   # secret
          map to use for destination request headers\n        secret:\n          name:
          dest-header-map-secret\n      transformer:   # The transformer to apply
          to event data for this destination\n        configMapKeyRef:\n          key:
          kazaam.json\n          name: kazaam-configmap\n        type: kazaam\n      url:
          https://127.0.0.1:8443/metering/api/1.0/usage   # the url to send the event
          to\n      urlSuffixExpr: $.properties.productId   # optional jsonPath expression
          on the event to extract and set a suffix to the url path\n    manifestType:
          dataReporter   # override manifestType of report sent to data-service\n
          \   selector:   # Matches against event data and a user. Empty selector
          matches all.\n      matchExpressions:   # jsonPath expression must return
          a result for all expressions to match (AND)\n      - $[?($.event == \"Account
          Contractual Usage\")]\n      - $.properties.productId\n      - $[?($.properties.source
          != null)]\n      - $[?($.properties.unit == \"AppPoints\")]\n      - $[?($.properties.quantity
          >= 0)]\n      - $[?($.timestamp != null)]\n      matchUsers:   # must match
          one of these users (OR). Omitting users matches any user\n      - system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n
          \   transformer:   # The transformer to apply to the event for data-service\n
          \     configMapKeyRef:\n        key: kazaam.json\n        name: kazaam-configmap\n
          \     type: kazaam\n  tlsConfig:   # TLS configuration for requests outbound
          to destinations\n    caCerts:\n    - name: tls-ca-certificates\n      key:
          ca.crt\n    certificates:\n    - clientCert:\n        secretKeyRef:\n          name:
          tls-ca-certificates\n          key: tls.crt\n      clientKey:\n        secretKeyRef:\n
          \         name: tls-ca-certificates\n          key: tls.key\n    cipherSuites:
          \n    - TLS_AES_128_GCM_SHA256\n    - TLS_AES_256_GCM_SHA384\n    - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256\n    - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384\n    insecureSkipVerify: false\n
          \   minVersion: VersionTLS12\n  userConfig:   # Optional metadata to apply
          to report sent to data-service for a specific user\n  - metadata:\n      ameta1:
          ametadata1\n      bmeta1: bmetadata1\n      cmeta1: cmetadata1\n      dmeta1:
          dmetadata1\n    userName: system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n```\n\nSample
          Header Secrets:\n```YAML\napiVersion: v1\nstringData:\n  accept: | \n    */*\nkind:
          Secret\nmetadata:\n  name: dest-header-map-secret\ntype: Opaque\n---\napiVersion:
          v1\nstringData:\n  accept: application/json\n  Content-Type: application/json\nkind:
          Secret\nmetadata:\n  name: auth-header-map-secret\ntype: Opaque\n```\n\nSample
          Authentication Body Secret:\n```YAML\napiVersion: v1\nstringData:\n  bodydata:
          |\n    {\"apikey\": \"myapikey\"}\nkind: Secret\nmetadata:\n  name: auth-body-data-secret\ntype:
          Opaque\n```\n\nSample TLS Secret:\n```YAML\napiVersion: v1\ndata:\n  ca.crt:
          LS0t...\n  tls.key: LS0t...\n  tls.crt: LS0t...\nkind: Secret\nmetadata:\n
          \ name: tls-ca-certificates\n```\n\nSample Kazaam ConfigMap:\n```YAML\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: kazaam-configmap\ndata:\n  kazaam.json:
          |\n    [\n        {\n            \"operation\": \"timestamp\",\n            \"spec\":
          {\n                \"timestamp\": {\n                \"inputFormat\": \"2006-01-02T15:04:05.999999+00:00\",\n
          \               \"outputFormat\": \"$unixmilli\"\n                }\n            }\n
          \       },\n        {\n            \"operation\": \"shift\",\n            \"spec\":
          {\n                \"instances[0].instanceId\": \"properties.source\",\n
          \               \"instances[0].startTime\": \"timestamp\",\n                \"instances[0].endTime\":
          \"timestamp\",\n                \"instances[0].metricUsage[0].metricId\":
          \"properties.unit\",\n                \"instances[0].metricUsage[0].quantity\":
          \"properties.quantity\"\n            }\n        },\n        {\n            \"operation\":
          \"default\",\n            \"spec\": {\n                \"meteringModel\":
          \"point-in-time\",\n                \"meteringPlan\": \"contract\"\n            }\n
          \       }\n    ]\n```\n\n### API Service User Configuration\n\n- The ClusterRole
          for api access is `clusterrole/ibm-data-reporter-operator-api`\n- The default
          ServiceAccount provided as an api user is `system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api`\n
          \ - The default ClusterRoleBinding for this user is `clusterrolebinding/ibm-data-reporter-operator-api`\n\nOptional:\n\n-
          To create an additional ServiceAccount and ClusterRoleBinding for api access\n\n```SHELL\nNAMESPACE=$(oc
          config view --minify -o jsonpath='{..namespace}') && \\\noc create serviceaccount
          my-api-service-account && \\\noc create clusterrolebinding ibm-data-reporter-operator-api
          --clusterrole=ibm-data-reporter-operator-api --serviceaccount=${NAMESPACE}:my-api-service-account\n```\n\n-
          Update datareporterconfig to attach metadata to reports associated with
          this user\n\n## API Service Usage\n\n- Get Token & Host\n\n```SHELL\noc
          project ibm-software-central\nexport DRTOKEN=$(oc create token ibm-data-reporter-operator-api
          --namespace ibm-software-central --duration 1h)\nexport DRHOST=$(oc get
          route ibm-data-reporter --template='{{ .spec.host }}')\n```\n\n- Get the
          Status\n\n```SHELL\ncurl -k -H \"Authorization: Bearer ${DRTOKEN}\" https://${DRHOST}/v1/status
          \n```\n\n- Post an Event\n\n```SHELL\ncurl -k -H \"Authorization: Bearer
          ${DRTOKEN}\" -X POST -d '{\"event\":\"myevent\"}' https://${DRHOST}/v1/event\n```\n\n##
          Storage\n\n- The operator temporarily stores events in pod memory, and writes
          to the IBM Metrics Operator data-service, which requires a PersistentVolume\n\n##
          License\n\nCopyright IBM Corporation 2023. All Rights Reserved.\n\nLicensed
          under the Apache License, Version 2.0 (the \"License\");\nyou may not use
          this file except in compliance with the License.\nYou may obtain a copy
          of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless
          required by applicable law or agreed to in writing, software\ndistributed
          under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES
          OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for
          the specific language governing permissions and\nlimitations under the License.\n"
        displayName: IBM Data Reporter Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
        - registry.connect.redhat.com/rh-marketplace/ibm-data-reporter-operator-bundle@sha256:20ee4c5cb1e904dfcbaf678a3a258840ea3d19350f812257944db361ab92009d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 2.23.1
      entries:
      - name: ibm-data-reporter-operator.v2.23.1
        version: 2.23.1
      name: stable
    defaultChannel: stable
    packageName: ibm-data-reporter-operator
    provider:
      name: Red Hat Marketplace
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: hyperfoil-bundle
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hyperfoil-operator.v0.26.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hyperfoil.io/v1alpha2",
                "kind": "Hyperfoil",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "hyperfoil-operator",
                    "app.kubernetes.io/instance": "hyperfoil-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hyperfoil",
                    "app.kubernetes.io/part-of": "hyperfoil-operator"
                  },
                  "name": "hyperfoil-sample"
                },
                "spec": {
                  "version": "latest"
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: quay.io/hyperfoil/hyperfoil-operator:0.26.0
          createdAt: "2024-06-11T17:39:20Z"
          description: Microservice-oriented distributed benchmark framework.
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/Hyperfoil/hyperfoil-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Hyperfoil is the Schema for the hyperfoils API
            displayName: Hyperfoil
            kind: Hyperfoil
            name: hyperfoils.hyperfoil.io
            version: v1alpha2
        description: |
          Hyperfoil is a modern benchmark framework oriented promising
          accurate results with more flexibility and distributed architecture.

          See more on [hyperfoil.io](http://hyperfoil.io).

          Hyperfoil is licensed under Apache License 2.0
        displayName: Hyperfoil
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hyperfoil
        - benchmark
        - test
        - load
        - driver
        links:
        - name: Website
          url: http://hyperfoil.io
        - name: GitHub
          url: http://github.com/Hyperfoil
        maintainers:
        - email: rvansa@redhat.com
          name: Radim Vansa
        - email: spederse@redhat.com
          name: Ståle W. Pedersen
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/hyperfoil-bundle@sha256:1d3625d12d95deb4f48660459fd0fc8b250b52b46d68136927d0f12465aaadf1
        - quay.io/hyperfoil/hyperfoil-operator:0.26.0
        version: 0.26.0
      entries:
      - name: hyperfoil-operator.v0.26.0
        version: 0.26.0
      - name: hyperfoil-operator.v0.24.2
        version: 0.24.2
      - name: hyperfoil-operator.v0.21.0
        version: 0.21.0
      - name: hyperfoil-operator.v0.15.1
        version: 0.15.1
      - name: hyperfoil-operator.v0.15.0
        version: 0.15.0
      name: alpha
    defaultChannel: alpha
    packageName: hyperfoil-bundle
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio
      provider-url: ""
    name: apicurio-registry-3
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-registry-3.v3.1.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry3",
                "metadata": {
                  "name": "simple"
                },
                "spec": {
                  "app": {
                    "ingress": {
                      "host": "simple-app.apps.cluster.example"
                    }
                  },
                  "ui": {
                    "ingress": {
                      "host": "simple-ui.apps.cluster.example"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/apicurio/apicurio-registry-3-operator:3.1.6
          createdAt: "2025-12-19T17:56:46Z"
          description: Deploy and manage Apicurio Registry 3 on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/Apicurio/apicurio-registry/tree/main/operator
          support: Apicurio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry3 represents an instance of Apicurio Registry
              version 3.
            displayName: Apicurio Registry 3
            kind: ApicurioRegistry3
            name: apicurioregistries3.registry.apicur.io
            version: v1
        description: |
          ## Apicurio Registry 3

          Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Allows you manage event schemas and API designs using the Apicurio Registry web console, REST API, Maven plug-in, or Java client
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL, MySQL, SQL Server, in-memory
          - Compatible with Confluent APIs
          - Runs on a lightweight Quarkus platform

          ## Apicurio Registry 3 Operator

          Provides a quick and easy way to deploy and manage Apicurio Registry 3 on Kubernetes.

          **Features**
          - Supports installation and configuration of Apicurio Registry 3
          - Perform a rolling upgrade of Apicurio Registry 3

          ## Prerequisites

          This operator does not deploy storage for Apicurio Registry 3. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Apicurio Registry 3 and Apicurio Registry 3 Operator are licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry/blob/main/LICENSE)
        displayName: Apicurio Registry 3
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Apicurio
        relatedImages:
        - quay.io/apicurio/apicurio-registry-3-operator:3.1.6
        - quay.io/community-operator-pipeline-prod/apicurio-registry-3@sha256:af92f5c91bf76a3956049875e81699d67b5e7f3fc1c25ece91073c9322e953cd
        version: 3.1.6
      entries:
      - name: apicurio-registry-3.v3.1.6
        version: 3.1.6
      - name: apicurio-registry-3.v3.1.4
        version: 3.1.4
      - name: apicurio-registry-3.v3.1.3
        version: 3.1.3
      - name: apicurio-registry-3.v3.1.1
        version: 3.1.1
      - name: apicurio-registry-3.v3.1.0
        version: 3.1.0
      - name: apicurio-registry-3.v3.0.15
        version: 3.0.15
      - name: apicurio-registry-3.v3.0.14
        version: 3.0.14
      - name: apicurio-registry-3.v3.0.12
        version: 3.0.12
      - name: apicurio-registry-3.v3.0.9
        version: 3.0.9
      - name: apicurio-registry-3.v3.0.8
        version: 3.0.8
      - name: apicurio-registry-3.v3.0.7
        version: 3.0.7
      name: 3.x
    defaultChannel: 3.x
    packageName: apicurio-registry-3
    provider:
      name: Apicurio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Microcks.io
      provider-url: ""
    name: microcks
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: microcks-operator.v1.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "microcks.github.io/v1alpha1",
                "kind": "MicrocksInstall",
                "metadata": {
                  "name": "my-microcksinstall"
                },
                "spec": {
                  "name": "my-microcksinstall",
                  "version": "1.10.0",
                  "microcks": {
                    "replicas": 1
                  },
                  "postman": {
                    "replicas": 1
                  },
                  "keycloak": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "1Gi"
                  },
                  "mongodb": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "2Gi"
                  }
                }
              },
              {
                "apiVersion": "microcks.github.io/v1alpha1",
                "kind": "MicrocksInstall",
                "metadata": {
                  "name": "my-microcksinstall-minikube"
                },
                "spec": {
                  "name": "my-microcksinstall-minikube",
                  "version": "1.10.0",
                  "microcks": {
                    "replicas": 2,
                    "url": "microcks.192.168.99.100.nip.io"
                  },
                  "postman": {
                    "replicas": 2
                  },
                  "keycloak": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "1Gi",
                    "url": "keycloak.192.168.99.100.nip.io"
                  },
                  "mongodb": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "2Gi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/microcks/microcks-ansible-operator:1.10.0
          createdAt: "2024-08-01T09:14:55Z"
          description: Open Source mocking and testing platform for API and microservices
          repository: https://github.com/microcks/microcks-ansible-operator
          support: microcks.github.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Microcks installation
            displayName: MicrocksInstall
            kind: MicrocksInstall
            name: microcksinstalls.microcks.github.io
            version: v1alpha1
        description: |
          Microcks is an Open source tool for API and microservices mocking and testing. It provides a platform for referencing, deploying mocks and allow contract-testing of your APIs. It can also be considered as a Service Virtualization solution because it will allow you to provide fake API or Service implementation before development being actually done. It supports Async APIs, REST APIs, gRPC, GraphQL and SOAP WebServices. It perfectly integrates into an iterative, contract-first delivery process.
          Microcks tries not reinventing the wheel and let you capitalize on already known tools of standards. It supports [AsyncAPI Specifications](https://asyncapi.com), [OpenAPI Specification](https://www.openapis.org/) `3.x`, [gRPC Protobuf](https://grpc.io/), [GraphQL Schema](https://graphql.org) out-of-the-box and can also relies on popular tools like [SoapUI](http://www.soapui.com) or [Postman](http://www.getpostman.io) to edit your API request / response samples as well as your test scripts.
          ### Operator features
          * **Create/Destroy**: Easily launch Microcks installations (`MicrocksInstall` custom resource) for your Kubernetes namespace
          ### MicrocksInstall options
          * **keycloak** component can be deployed as part of the install or you can reuse an existing instance. You can reference an existing `Secret` for providing TLS certificates for securing the `Ingress`,
          * **mongodb** component can be deployed as part of the install or you can reuse an existing instance, You can reference an existing `Secret` for providing connection credentials,
          * **features** component allow to activate optional features like the mocking of AsyncAPIs. In case you turn `features.async.enabled` to `true` and `features.async.kafka.install` to `true`, you must have the [Strimzi Operator](https://operatorhub.io/operator/strimzi-kafka-operator) already installed on your cluster/namespace.
          ### Documentation
          Documentation to the current _master_ branch as well as all releases can be found on our [GitHub](https://github.com/microcks/microcks-ansible-operator).
          ### License
          Microcks is licensed under the [Apache License, Version 2.0](https://github.com/microcks/microcks/blob/master/LICENSE).
        displayName: Microcks Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mock
        - test
        - API
        - microservice
        links:
        - name: Product Page
          url: https://microcks.io
        - name: Microcks Operator Source Code
          url: https://github.com/microcks/microcks-ansible-operator
        maintainers:
        - email: laurent.broudoux@gmail.com
          name: lbroudoux
        maturity: alpha
        provider:
          name: Microcks.io
        relatedImages:
        - quay.io/community-operator-pipeline-prod/microcks@sha256:1313bb08037e57cde02d9d48c4d8c9663eed08651a3c29f872b5ef85ac764112
        - quay.io/microcks/microcks-ansible-operator:1.10.0
        version: 1.10.0
      entries:
      - name: microcks-operator.v1.10.0
        version: 1.10.0
      - name: microcks-operator.v1.9.0
        version: 1.9.0
      - name: microcks-operator.v1.8.1
        version: 1.8.1
      - name: microcks-operator.v1.8.0
        version: 1.8.0
      - name: microcks-operator.v1.7.1
        version: 1.7.1
      - name: microcks-operator.v1.7.0
        version: 1.7.0
      - name: microcks-operator.v1.6.1
        version: 1.6.1
      - name: microcks-operator.v1.6.0
        version: 1.6.0
      - name: microcks-operator.v1.5.2
        version: 1.5.2
      - name: microcks-operator.v1.5.1
        version: 1.5.1
      - name: microcks-operator.v1.5.0
        version: 1.5.0
      - name: microcks-operator.v1.4.1
        version: 1.4.1
      name: stable
    defaultChannel: stable
    packageName: microcks
    provider:
      name: Microcks.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Konveyor
      provider-url: https://konveyor.io
    name: move2kube-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: move2kube-operator.v0.3.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "move2kube.konveyor.io/v1alpha1",
                "kind": "Move2Kube",
                "metadata": {
                  "name": "move2kube-sample"
                },
                "spec": {
                  "deployment": {
                    "api": {
                      "cpu": "300m",
                      "imageTag": "",
                      "initContainer": false,
                      "memory": "1Gi",
                      "privilegedPods": false,
                      "replicas": 1
                    },
                    "authServer": {
                      "cpu": "300m",
                      "enable": false,
                      "memory": "1Gi",
                      "replicas": 1
                    },
                    "database": {
                      "cpu": "300m",
                      "enable": false,
                      "memory": "1Gi",
                      "replicas": 1,
                      "startEmpty": true
                    }
                  },
                  "ingress": {
                    "enable": true,
                    "host": "mydomain.com",
                    "preferRoute": false,
                    "tlsSecretName": ""
                  },
                  "persistentVolumeClaim": {
                    "createNew": true,
                    "enable": false,
                    "name": "",
                    "readWriteMany": true,
                    "storageClassName": "",
                    "storageSize": "1Gi"
                  },
                  "secret": {
                    "api": {
                      "configYAML": "",
                      "createNew": true,
                      "enable": false,
                      "name": ""
                    },
                    "authServer": {
                      "adminPassword": "password",
                      "adminUsername": "admin",
                      "createNew": true,
                      "databasePassword": "password",
                      "databaseUsername": "auth-server",
                      "name": "",
                      "realmJSON": "",
                      "standaloneHAXML": ""
                    }
                  },
                  "securityContextContraints": {
                    "enable": false
                  },
                  "serviceAccount": {
                    "createNew": true,
                    "enable": false,
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          containerImage: quay.io/konveyor/move2kube-operator:v0.3.10
          createdAt: "2023-09-25T02:56:15Z"
          description: Konveyor Move2Kube is an open source tool that helps migrate
            your app to run on Kubernetes/Openshift.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/move2kube-operator
          support: https://github.com/konveyor/move2kube-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Move2Kube
            name: move2kubes.move2kube.konveyor.io
            version: v1alpha1
        description: |
          Konveyor Move2Kube is a tool that uses source files such as Docker Compose files or Cloud Foundry manifest files, and even source code, to generate Kubernetes deployment files including object yaml, Helm charts, and operators.

          This operator can be used to start an instance of the Move2Kube UI.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Move2Kube CR.

          By default the operator installs a StatefulSet that brings up a Pod that serves the UI.
          See https://move2kube.konveyor.io/tutorials/ui for a tutorial on how to use the UI.

          Data persistence can be enabled by setting the `persistentVolumeClaim.enable` field to `true` in the CR `spec`. https://github.com/konveyor/move2kube-operator/blob/0e79476bcd873d3272164a47af31b00590dacfb1/helm-charts/move2kube/values.yaml#L26

          ### Documentation

          See https://move2kube.konveyor.io/ for more details.

          ### Getting help

          If you encounter any issues while using this operator, you can create an issue on our [Github repo](https://github.com/konveyor/move2kube-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing

          You can contribute by making PRs to our Github repo https://github.com/konveyor/move2kube-operator
        displayName: Konveyor Move2Kube
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - modernization
        - replatform
        - move2kube
        - konveyor
        - migration
        links:
        - name: Documentation
          url: https://move2kube.konveyor.io/
        - name: Move2Kube Operator
          url: https://github.com/konveyor/move2kube-operator
        maintainers:
        - email: harikrishmenon@gmail.com
          name: Harikrishnan Balagopal
        - email: seshapad@in.ibm.com
          name: Padmanabha V Seshadri
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://konveyor.io
        relatedImages:
        - quay.io/konveyor/move2kube-operator:v0.3.10
        - quay.io/openshift-community-operators/move2kube-operator@sha256:cdf288be5ea779e03900af9b57c4d922b8760b88da4fcbf88437f8031d679aef
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 0.3.10
      entries:
      - name: move2kube-operator.v0.3.10
        version: 0.3.10
      - name: move2kube-operator.v0.3.10-rc.0
        version: 0.3.10-rc.0
      - name: move2kube-operator.v0.3.9
        version: 0.3.9
      - name: move2kube-operator.v0.3.8
        version: 0.3.8
      name: alpha
    - currentCSV: move2kube-operator.v0.3.15-rc.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "move2kube.konveyor.io/v1alpha1",
                "kind": "Move2Kube",
                "metadata": {
                  "name": "move2kube-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          containerImage: quay.io/konveyor/move2kube-operator:v0.3.15-rc.0
          createdAt: "2024-10-18T16:10:56Z"
          description: Konveyor Move2Kube is an open source tool that helps migrate
            your app to run on Kubernetes/Openshift.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/move2kube-operator
          support: https://github.com/konveyor/move2kube-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Move2Kube
            name: move2kubes.move2kube.konveyor.io
            version: v1alpha1
        description: |
          Konveyor Move2Kube is a tool that uses source files such as Docker Compose files or Cloud Foundry manifest files, and even source code, to generate Kubernetes deployment files including object yaml, Helm charts, and operators.

          This operator can be used to start an instance of the Move2Kube UI.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Move2Kube CR.

          By default the operator installs a StatefulSet that brings up a Pod that serves the UI.
          See https://move2kube.konveyor.io/tutorials/ui for a tutorial on how to use the UI.

          Data persistence can be enabled by setting the `persistentVolumeClaim.enable` field to `true` in the CR `spec`. https://github.com/konveyor/move2kube-operator/blob/0e79476bcd873d3272164a47af31b00590dacfb1/helm-charts/move2kube/values.yaml#L26

          ### Documentation

          See https://move2kube.konveyor.io/ for more details.

          ### Getting help

          If you encounter any issues while using this operator, you can create an issue on our [Github repo](https://github.com/konveyor/move2kube-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing

          You can contribute by making PRs to our Github repo https://github.com/konveyor/move2kube-operator
        displayName: Konveyor Move2Kube
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - modernization
        - replatform
        - move2kube
        - konveyor
        - migration
        links:
        - name: Documentation
          url: https://move2kube.konveyor.io/
        - name: Move2Kube Operator
          url: https://github.com/konveyor/move2kube-operator
        maintainers:
        - email: harikrishmenon@gmail.com
          name: Harikrishnan Balagopal
        - email: seshapad@in.ibm.com
          name: Padmanabha V Seshadri
        maturity: alpha
        minKubeVersion: 1.13.0
        provider:
          name: Konveyor
          url: https://konveyor.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/move2kube-operator@sha256:236a53d6fad949285b6abafcdd1a4541a7748f952c0c96fa2e71500079579ba4
        - quay.io/konveyor/move2kube-operator:v0.3.15-rc.0
        version: 0.3.15-rc.0
      entries:
      - name: move2kube-operator.v0.3.15-rc.0
        version: 0.3.15-rc.0
      - name: move2kube-operator.v0.3.14-rc.0
        version: 0.3.14-rc.0
      - name: move2kube-operator.v0.3.13-rc.0
        version: 0.3.13-rc.0
      - name: move2kube-operator.v0.3.11-rc.0
        version: 0.3.11-rc.0
      name: prerelease
    - currentCSV: move2kube-operator.v0.3.15
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "move2kube.konveyor.io/v1alpha1",
                "kind": "Move2Kube",
                "metadata": {
                  "name": "move2kube-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          containerImage: quay.io/konveyor/move2kube-operator:v0.3.15
          createdAt: "2025-03-07T06:09:48Z"
          description: Konveyor Move2Kube is an open source tool that helps migrate
            your app to run on Kubernetes/Openshift.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/move2kube-operator
          support: https://github.com/konveyor/move2kube-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Move2Kube
            name: move2kubes.move2kube.konveyor.io
            version: v1alpha1
        description: |
          Konveyor Move2Kube is a tool that uses source files such as Docker Compose files or Cloud Foundry manifest files, and even source code, to generate Kubernetes deployment files including object yaml, Helm charts, and operators.

          This operator can be used to start an instance of the Move2Kube UI.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Move2Kube CR.

          By default the operator installs a StatefulSet that brings up a Pod that serves the UI.
          See https://move2kube.konveyor.io/tutorials/ui for a tutorial on how to use the UI.

          Data persistence can be enabled by setting the `persistentVolumeClaim.enable` field to `true` in the CR `spec`. https://github.com/konveyor/move2kube-operator/blob/0e79476bcd873d3272164a47af31b00590dacfb1/helm-charts/move2kube/values.yaml#L26

          ### Documentation

          See https://move2kube.konveyor.io/ for more details.

          ### Getting help

          If you encounter any issues while using this operator, you can create an issue on our [Github repo](https://github.com/konveyor/move2kube-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing

          You can contribute by making PRs to our Github repo https://github.com/konveyor/move2kube-operator
        displayName: Konveyor Move2Kube
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - modernization
        - replatform
        - move2kube
        - konveyor
        - migration
        links:
        - name: Documentation
          url: https://move2kube.konveyor.io/
        - name: Move2Kube Operator
          url: https://github.com/konveyor/move2kube-operator
        maintainers:
        - email: harikrishmenon@gmail.com
          name: Harikrishnan Balagopal
        - email: seshapad@in.ibm.com
          name: Padmanabha V Seshadri
        maturity: alpha
        minKubeVersion: 1.13.0
        provider:
          name: Konveyor
          url: https://konveyor.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/move2kube-operator@sha256:38d03dacca046dda3ba08c39943ec2e7db33f1c7bb897e84fe1308a0982c63f1
        - quay.io/konveyor/move2kube-operator:v0.3.15
        version: 0.3.15
      entries:
      - name: move2kube-operator.v0.3.15
        version: 0.3.15
      - name: move2kube-operator.v0.3.14
        version: 0.3.14
      - name: move2kube-operator.v0.3.13
        version: 0.3.13
      - name: move2kube-operator.v0.3.11
        version: 0.3.11
      name: stable
    defaultChannel: stable
    packageName: move2kube-operator
    provider:
      name: Konveyor
      url: https://konveyor.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/try-flink-kubernetes-operator/quick-start/
    name: flink-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: flink-kubernetes-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"flink.apache.org/v1beta1",
                "kind":"FlinkDeployment",
                "metadata":{
                    "name":"basic-example"
                },
                "spec":{
                    "image":"flink:1.16",
                    "flinkVersion":"v1_16",
                    "flinkConfiguration":{
                        "taskmanager.numberOfTaskSlots":"2"
                    },
                    "serviceAccount":"flink",
                    "jobManager":{
                        "resource":{
                            "memory":"2048m",
                            "cpu":1
                        }
                    },
                    "taskManager":{
                        "resource":{
                            "memory":"2048m",
                            "cpu":1
                        }
                    },
                    "job":{
                        "jarURI":"local:///opt/flink/examples/streaming/StateMachineExample.jar",
                        "parallelism":2,
                        "upgradeMode":"stateless"
                    }
                }
              },
              {
                "apiVersion":"flink.apache.org/v1beta1",
                "kind":"FlinkSessionJob",
                "metadata":{
                  "name":"basic-session-job-example2"
                },
                "spec":{
                  "deploymentName":"basic-session-cluster",
                  "job":{
                      "jarURI":"https://repo1.maven.org/maven2/org/apache/flink/flink-examples-streaming_2.12/1.16.1/flink-examples-streaming_2.12-1.16.1.jar",
                      "parallelism":2,
                      "upgradeMode":"stateless",
                      "entryClass":"org.apache.flink.streaming.examples.statemachine.StateMachineExample"
                  }
                }
              },
              {
                "apiVersion": "flink.apache.org/v1beta1",
                "kind": "FlinkStateSnapshot",
                "metadata": {
                  "name": "example-savepoint"
                },
                "spec": {
                  "savepoint": {
                    "alreadyExists": true,
                    "disposeOnDelete": false,
                    "path": "/flink-data/savepoints/savepoint-98682a-21931bf10c39"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "basic-example": {
                "description": "Example flink deployment"
              },
              "basic-session-job-example2": {
                "description": "Example flink session job"
              }
            }
          capabilities: Deep Insights
          categories: Big Data, Streaming & Messaging
          containerImage: ghcr.io/apache/flink-kubernetes-operator:1.13.0
          createdAt: "2025-10-22 22:07:29"
          description: Flink Kubernetes Operator manages the complete deployment lifecycle
            of Apache Flink applications.
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/apache/flink-kubernetes-operator.git
          support: Apache Software Foundation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The FlinkDeployment CR defines Flink Application and Session
              cluster deployments
            displayName: Flink Deployment
            kind: FlinkDeployment
            name: flinkdeployments.flink.apache.org
            version: v1beta1
          - description: The FlinkSessionJob CR defines the session job on the Session
              cluster and each Session cluster can run multiple FlinkSessionJob.
            displayName: Flink Session Job
            kind: FlinkSessionJob
            name: flinksessionjobs.flink.apache.org
            version: v1beta1
          - description: The FlinkStateSnapshots CR is used to describe savepoint
              or checkpoint for a Flink job.
            displayName: Flink State Snapshot
            kind: FlinkStateSnapshot
            name: flinkstatesnapshots.flink.apache.org
            version: v1beta1
        description: |-
          Flink Kubernetes Operator acts as a control plane to manage the complete deployment lifecycle of Apache Flink applications.
          ## Installation
          This operator can be installed from [OperatorHub.io](https://operatorhub.io/operator/flink-kubernetes-operator).

          By default, the Flink operator monitors and run Flink applications in the same namespace as the operator.
          To run Flink jobs in another namespace, users are responsible for setting up the RBAC in that namespace.

          For example, users need to do the following for each additional namespace that runs the Flink applications:

          1. Switch to the namespace by running:

              ```sh
              kubectl config set-context --current --namespace=CHANGEIT
              ```

          2. Create the service account, role, and role binding in the namespace using the commands below:

              ```sh
              kubectl apply -f - <<EOF
              apiVersion: v1
              kind: ServiceAccount
              metadata:
                labels:
                  app.kubernetes.io/name: flink-kubernetes-operator
                  app.kubernetes.io/version: 1.13.0
                name: flink
              ---
              apiVersion: rbac.authorization.k8s.io/v1
              kind: Role
              metadata:
                labels:
                  app.kubernetes.io/name: flink-kubernetes-operator
                  app.kubernetes.io/version: 1.13.0
                name: flink
              rules:
              - apiGroups:
                - ""
                resources:
                - pods
                - configmaps
                verbs:
                - '*'
              - apiGroups:
                - apps
                resources:
                - deployments
                - deployments/finalizers
                verbs:
                - '*'
              ---
              apiVersion: rbac.authorization.k8s.io/v1
              kind: RoleBinding
              metadata:
                labels:
                  app.kubernetes.io/name: flink-kubernetes-operator
                  app.kubernetes.io/version: 1.13.0
                name: flink-role-binding
              roleRef:
                apiGroup: rbac.authorization.k8s.io
                kind: Role
                name: flink
              subjects:
              - kind: ServiceAccount
                name: flink
              EOF
              ```

          3. Proceed deploying Flink applications using the the Custom Resource Definition below.

              ```sh
              kubectl create -f https://raw.githubusercontent.com/apache/flink-kubernetes-operator/release-1.13.0/examples/basic.yaml
              ```

          See [Flink custom resources](https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/custom-resource/overview/#overview) for more detail.
        displayName: Flink Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - flink
        - streaming
        links:
        - name: Website
          url: https://flink.apache.org/
        - name: Documentation
          url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/
        - name: Mailing list
          url: https://lists.apache.org/list.html?dev@flink.apache.org
        - name: Slack
          url: https://apache-flink.slack.com/join/shared_invite/zt-1llkzbgyt-K2nNGGg88rfsDGLkT09Qzg#/shared-invite/email
        - name: GitHub
          url: https://github.com/apache/flink-kubernetes-operator
        maintainers:
        - email: mbalassi@apache.org
          name: Marton Balassi
        - email: htchang@us.ibm.com
          name: Ted Chang
        - email: jbusche@us.ibm.com
          name: James Busche
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Community
          url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/try-flink-kubernetes-operator/quick-start/
        relatedImages:
        - ghcr.io/apache/flink-kubernetes-operator:1.13.0
        - quay.io/community-operator-pipeline-prod/flink-kubernetes-operator@sha256:3a177f2a9c91e7a6b212ecadc116c2a598c8c834106c6af0f6754a3e4f2a6d9a
        version: 1.13.0
      entries:
      - name: flink-kubernetes-operator.v1.13.0
        version: 1.13.0
      - name: flink-kubernetes-operator.v1.12.0
        version: 1.12.0
      - name: flink-kubernetes-operator.v1.11.0
        version: 1.11.0
      - name: flink-kubernetes-operator.v1.6.0
        version: 1.6.0
      - name: flink-kubernetes-operator.v1.5.0
        version: 1.5.0
      - name: flink-kubernetes-operator.v1.4.0
        version: 1.4.0
      - name: flink-kubernetes-operator.v1.3.1
        version: 1.3.1
      - name: flink-kubernetes-operator.v1.3.0
        version: 1.3.0
      name: alpha
    defaultChannel: alpha
    packageName: flink-kubernetes-operator
    provider:
      name: Community
      url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/try-flink-kubernetes-operator/quick-start/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Oracle
      provider-url: https://www.oracle.com/cloud/
    name: oci-ccm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: oci-ccm-operator.v0.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ccm.oraclecloud.com/v1alpha1",
                "kind": "OCICloudManager",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oci-ccm-operator",
                    "app.kubernetes.io/instance": "ocicloudmanager",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ocicloudmanager",
                    "app.kubernetes.io/part-of": "oci-ccm-operator"
                  },
                  "name": "ocicloudmanager"
                },
                "spec": {
                  "compartment": "CompartmentId",
                  "driverNamespace": "kube-system",
                  "loadBalancer": {
                    "securityList": "SecurityListId",
                    "securityListManagementMode": "Frontend",
                    "subnet": "SubnetId"
                  },
                  "vcn": "VcnId"
                }
              },
              {
                "apiVersion": "ccm.oraclecloud.com/v1alpha1",
                "kind": "OCICsiDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oci-ccm-operator",
                    "app.kubernetes.io/instance": "ocicsidriver",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ocicsidriver",
                    "app.kubernetes.io/part-of": "oci-ccm-operator"
                  },
                  "name": "ocicsidriver"
                },
                "spec": {
                  "compartment": "CompartmentId",
                  "driverNamespace": "kube-system",
                  "vcn": "VcnId"
                }
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider, Storage
          containerImage: phx.ocir.io/ax1eoqvpvbtg/oci-ccm-operator:0.0.9
          createdAt: "2023-07-28T23:42:18Z"
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          support: Oracle
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: OCICloudManager
            name: ocicloudmanagers.ccm.oraclecloud.com
            version: v1alpha1
          - kind: OCICsiDriver
            name: ocicsidrivers.ccm.oraclecloud.com
            version: v1alpha1
        description: OCI Kubernetes Cloud Controller Manager implementation (or out-of-tree
          cloud-provider) for Oracle Cloud Infrastructure (OCI).
        displayName: oci-ccm-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OCI
        - CCM
        - OpenShift
        - Kubernetes
        links:
        - name: Oracle
          url: https://www.oracle.com/cloud/
        - name: OCI Cloud Controller Manager (CCM)
          url: https://github.com/oracle/oci-cloud-controller-manager
        maintainers:
        - email: david.d.campbell@oracle.com
          name: David Campbell
        - email: alex.blinov@oracle.com
          name: Alex Blinov
        maturity: alpha
        provider:
          name: Oracle
          url: https://www.oracle.com/cloud/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - phx.ocir.io/ax1eoqvpvbtg/oci-ccm-operator:0.0.9
        - quay.io/openshift-community-operators/oci-ccm-operator@sha256:eaf63c6f9ee9e9c3562d6ced4cff091c1e401daa826ee3a92b321a5cc8f13da2
        version: 0.0.9
      entries:
      - name: oci-ccm-operator.v0.0.9
        version: 0.0.9
      name: alpha
    defaultChannel: alpha
    packageName: oci-ccm-operator
    provider:
      name: Oracle
      url: https://www.oracle.com/cloud/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Opstree Solutions
      provider-url: ""
    name: logging-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: logging-operator.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"logging.logging.opstreelabs.in/v1beta1","kind":"Elasticsearch","metadata":{"name":"elasticsearch"},"spec":{"esClusterName":"prod","esVersion":"7.17.0","esSecurity":{"autoGeneratePassword":true,"tlsEnabled":true}}},{"apiVersion":"logging.logging.opstreelabs.in/v1beta1","kind":"Fluentd","metadata":{"name":"fluentd"},"spec":{"esCluster":{"host":"elasticsearch-master"},"esSecurity":{"tlsEnabled":true,"existingSecret":"elasticsearch-password"},"indexNameStrategy":"namespace_name"}},{"apiVersion":"logging.logging.opstreelabs.in/v1beta1","kind":"Kibana","metadata":{"name":"kibana"},"spec":{"replicas":1,"esCluster":{"host":"https://elasticsearch-master:9200","esVersion":"7.16.0","clusterName":"elasticsearch"},"esSecurity":{"tlsEnabled":true,"existingSecret":"elasticsearch-password"}}}]'
          capabilities: Seamless Upgrades
          categories: Database,  Monitoring, Big Data
          certified: "false"
          containerImage: quay.io/opstree/logging-operator:v0.4.0
          createdAt: 04-07-2022
          description: A golang-based operator to create and manage EFK (Elasticsearch,
            Fluentd, and Kibana) stack on Kubernetes.
          k8sMaxVersion: ""
          k8sMinVersion: ""
          repository: https://github.com/ot-container-kit/logging-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Elasticsearch
            displayName: Elasticsearch
            kind: Elasticsearch
            name: elasticsearches.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Index Life Cycle
            displayName: IndexLifeCycle
            kind: IndexLifeCycle
            name: indexlifecycles.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Index Template
            displayName: IndexTemplate
            kind: IndexTemplate
            name: indextemplates.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Fluentd
            displayName: Fluentd
            kind: Fluentd
            name: fluentds.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Kibana
            displayName: Kibana
            kind: Kibana
            name: kibanas.logging.logging.opstreelabs.in
            version: v1beta1
        description: |2+

          Logging Operator is an operator created in Golang to set up and manage EFK(Elasticsearch, Fluentd, and Kibana) cluster inside Kubernetes and Openshift environment. This operator is capable of setting up each individual component of EFK cluster separately.
          ### Supported Features
          - Setup of elasticsearch cluster with different nodes type:- master, data, ingestion, and client.
          - Customizable configuration for elasticsearch, fluentd stack.
          - Setup of fluentd as light-weight log-shipper as Daemonset.
          - Kibana will be set up as visualization tool for elastic stack.
          - Seamless upgrades of elasticsearch, fluentd, and kibana.
          - Security best practices support for complete stack such as TLS, elastic security.
          - Kubernetes resources objects support like:- resources, securityContext, affinity, tolerations, etc.
          - Elasticsearch plugins and keystore seamless support with operator
          ### Documentation
          **[Documentation](https://ot-logging-operator.netlify.app/)**
          ### Getting Help
          This project is managed by OpsTree Solutions. If you have any queries or suggestions, mail us at opensource@opstree.com.
          ### Contributing
          You can contribute to this project by:-
          * Raising Bugs and Feature Requests
          * Fixing issue by opening a Pull Request
          * Improving Documentation
          ### License
          MongoDB Operator is licensed under [Apache License, Version 2.0](https://github.com/OT-CONTAINER-KIT/logging-operator/blob/master/LICENSE)

        displayName: Logging Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Operator
        - Elasticsearch
        - Fluentd
        - Kibana
        - Opstree
        - Logging
        - Monitoring
        - Cloud Native
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://ot-logging-operator.netlify.app/
        - name: Buildpiper
          url: https://buildpiper.io
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep
        maturity: beta
        minKubeVersion: 1.17.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/opstree/logging-operator:v0.4.0
        - quay.io/openshift-community-operators/logging-operator@sha256:d3ce3322f7f25c7b8bfabdd6e9fd32b833239fc39592240e0ccff3a13757fb17
        version: 0.4.0
      entries:
      - name: logging-operator.v0.4.0
        version: 0.4.0
      - name: logging-operator.v0.3.0
        version: 0.3.0
      name: beta
    defaultChannel: beta
    packageName: logging-operator
    provider:
      name: Opstree Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NetApp, Inc.
      provider-url: https://www.netapp.com/
    name: trident-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trident-operator.v25.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "trident.netapp.io/v1",
                "kind": "TridentOrchestrator",
                "metadata": {
                  "name": "trident"
                },
                "spec": {
                  "IPv6": false,
                  "debug": true,
                  "nodePrep": [],
                  "imagePullSecrets": [],
                  "imageRegistry": "",
                  "namespace": "trident",
                  "silenceAutosupport": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: docker.io/netapp/trident-operator:25.10.0
          createdAt: "2025-11-18"
          description: Trident Operator, to manage NetApp Trident installations
          operatorhub.io/ui-metadata-max-k8s-version: "1.34"
          repository: https://github.com/netapp/trident
          support: NetApp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Used to deploy Astra Trident.
            displayName: Trident Orchestrator
            kind: TridentOrchestrator
            name: tridentorchestrators.trident.netapp.io
            version: v1
        description: |
          NetApp Trident is an open source storage provisioner and orchestrator maintained by NetApp. It enables you to create storage volumes for containerized applications managed by Docker and Kubernetes. For full release information, including patch release changes, see https://docs.netapp.com/us-en/trident/trident-rn.html.
        displayName: NetApp Trident
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - NetApp
        - ONTAP
        - Trident
        - storage
        - performance
        - open source
        - Astra
        - Cloud Native
        - AWS
        - Azure
        - GCP
        - Cloud Volumes
        links:
        - name: GitHub Repository
          url: https://github.com/NetApp/trident
        - name: Trident documentation
          url: https://docs.netapp.com/us-en/trident/index.html
        - name: Support policy
          url: https://mysupport.netapp.com/site/info/version-support
        - name: Release Notes
          url: https://docs.netapp.com/us-en/trident/trident-rn.html
        maintainers:
        - email: ng-astra-product@netapp.com
          name: NetApp
        provider:
          name: NetApp, Inc.
          url: https://www.netapp.com/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/trident-operator:25.10.0
        - docker.io/netapp/trident-operator:25.10.0
        version: 25.10.0
      entries:
      - name: trident-operator.v25.10.0
        version: 25.10.0
      name: stable
    defaultChannel: stable
    packageName: trident-operator
    provider:
      name: NetApp, Inc.
      url: https://www.netapp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: secrets-store-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: secrets-store-csi-driver-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-secrets-store-csi-driver-rhel9-operator@sha256:36cb66f68975490405a76e742b0f9d347106f0921fcc68d1254765178c898de6
          createdAt: "2023-06-12T00:00:00Z"
          description: Install and configure Secrets Store CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.13.0-0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/secrets-store-csi-driver-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SecretProviderClass is the Schema for the secretproviderclasses
              API
            displayName: Secret Provider Class
            kind: SecretProviderClass
            name: secretproviderclasses.secrets-store.csi.x-k8s.io
            version: v1
          - description: SecretProviderClassPodStatus is the Schema for the secretproviderclassespodstatus
              API
            displayName: Secret Provider Class Pod Status
            kind: SecretProviderClassPodStatus
            name: secretproviderclasspodstatuses.secrets-store.csi.x-k8s.io
            version: v1
        description: |
          Operator that installs and configures the CSI driver for Secrets Store.
        displayName: Secrets Store CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        links:
        - name: Documentation
          url: https://github.com/openshift/secrets-store-csi-driver-operator
        - name: Source Repository
          url: https://github.com/openshift/secrets-store-csi-driver-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-secrets-store-csi-driver-operator-bundle@sha256:a4cfd15e063019d925ccd4893a87cf29c83f372c93578bd5fa2e4de06c47ae0a
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-secrets-store-csi-driver-rhel9-operator@sha256:36cb66f68975490405a76e742b0f9d347106f0921fcc68d1254765178c898de6
        - registry.redhat.io/openshift4/ose-secrets-store-csi-driver-rhel9@sha256:f3bf81a36c97fd7acbe1e3213c64e03ddb7643b17466f3afce5b06a29b7e6ea0
        version: 4.20.0-202512090918
      entries:
      - name: secrets-store-csi-driver-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: secrets-store-csi-driver-operator.v4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: secrets-store-csi-driver-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: secrets-store-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: secrets-store-csi-driver-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: secrets-store-csi-driver-operator.v4.20.0-202510212154
        version: 4.20.0-202510212154
      - name: secrets-store-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: secrets-store-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://your.domain
    name: amq-streams-proxy
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-streams-proxy.v3.0.1-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
          createdAt: "2025-11-11T15:24:48Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.0.1-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        version: 3.0.1-4
      entries:
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: alpha
    - currentCSV: amq-streams-proxy.v3.0.1-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
          createdAt: "2025-11-11T15:24:48Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.0.1-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        version: 3.0.1-4
      entries:
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: amq-streams-3.0.x
    - currentCSV: amq-streams-proxy.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
          createdAt: "2025-12-04T15:59:50Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:308597d82823daf94b0526c93ba7c689b63bcc6a76f53e55a8cc2e8cfa17ad13
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:2d5710829cedc5afc10fd3e021013a2b61ee38262d45ed4bc6375b820aa781f6
        version: 3.1.0-6
      entries:
      - name: amq-streams-proxy.v3.1.0-6
        version: 3.1.0-6
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: amq-streams-3.1.x
    - currentCSV: amq-streams-proxy.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
          createdAt: "2025-12-04T15:59:50Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:2d5710829cedc5afc10fd3e021013a2b61ee38262d45ed4bc6375b820aa781f6
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:308597d82823daf94b0526c93ba7c689b63bcc6a76f53e55a8cc2e8cfa17ad13
        version: 3.1.0-6
      entries:
      - name: amq-streams-proxy.v3.1.0-6
        version: 3.1.0-6
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: amq-streams-3.x
    - currentCSV: amq-streams-proxy.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
          createdAt: "2025-12-04T15:59:50Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:308597d82823daf94b0526c93ba7c689b63bcc6a76f53e55a8cc2e8cfa17ad13
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:2d5710829cedc5afc10fd3e021013a2b61ee38262d45ed4bc6375b820aa781f6
        version: 3.1.0-6
      entries:
      - name: amq-streams-proxy.v3.1.0-6
        version: 3.1.0-6
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: stable
    defaultChannel: stable
    packageName: amq-streams-proxy
    provider:
      name: Red Hat
      url: https://your.domain
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Sonatype
      provider-url: ""
    name: nexus-repository-ha-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nexus-repository-ha-operator-certified.v3.84.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonatype.com/v1alpha1",
                "kind": "NexusRepo",
                "metadata": {
                  "name": "nexusrepo-sample"
                },
                "spec": {
                  "ingress": {
                    "additionalRules": null,
                    "annotations": null,
                    "defaultRule": false,
                    "dockerIngress": {
                      "annotations": null,
                      "enabled": false,
                      "host": "example.com",
                      "name": "nexus-docker-ingress"
                    },
                    "dockerSubdomain": false,
                    "enabled": false,
                    "host": "example.com",
                    "name": "nexus-ingress",
                    "tls": {
                      "enabled": false,
                      "secretName": "tlsSecretName"
                    }
                  },
                  "license": {
                    "fileContentsBase64": "your_license_file_contents_in_base_64",
                    "secretName": "nexus-repo-license"
                  },
                  "secret": {
                    "nexusSecret": {
                      "enabled" : false,
                      "name": "nexus-secret.json",
                      "nexusSecretsKeyId": "super_secret_key_id",
                      "secretKeyfileContentsBase64": "secretKeyfileContentsBase64",
                      "mountPath": "/var/nexus-repo-secrets"
                    }
                  },
                  "nexusData": {
                    "pvc": {
                      "accessMode": "ReadWriteOnce",
                      "size": "2Gi"
                    },
                    "storageClass": {
                      "enabled": false,
                      "name": "nexusrepo-storage",
                      "parameters": {},
                      "provisioner": "provisioner",
                      "reclaimPolicy": "Retain",
                      "volumeBindingMode": "WaitForFirstConsumer"
                    },
                    "volumeClaimTemplate": {
                      "enabled": false
                    }
                  },
                  "service": {
                    "docker": {
                      "enabled": false,
                      "name": "nexus-repo-docker-service",
                      "port": 9090,
                      "protocol": "TCP",
                      "targetPort": 9090,
                      "type": "NodePort"
                    },
                    "nexus": {
                      "enabled": false,
                      "name": "nexus-repo-service",
                      "port": 80,
                      "protocol": "TCP",
                      "targetPort": 8081,
                      "type": "NodePort"
                    }
                  },
                  "statefulset": {
                    "container": {
                      "containerPort": 8081,
                      "env": {
                        "clustered": false,
                        "install4jAddVmParams": "-Xms2703m -Xmx2703m",
                        "jdbcUrl": null,
                        "nexusInitialPassword": "nexusabc",
                        "password": "nexus",
                        "user": "nexus",
                        "zeroDowntimeEnabled": false
                      },
                      "imageName": "registry.connect.redhat.com/sonatype/nexus-repository-manager@sha256:fbad488ff2e368845473a11b4955992fe826a94811da3abf5cc3c6a33ff3974f",
                      "pullPolicy": "IfNotPresent",
                      "resources": {
                        "limits": {
                          "cpu": 4,
                          "memory": "8Gi"
                        },
                        "requests": {
                          "cpu": 4,
                          "memory": "8Gi"
                        }
                      },
                      "terminationGracePeriod": 120
                    },
                    "imagePullSecrets": {},
                    "livenessProbe": {
                      "failureThreshold": 6,
                      "initialDelaySeconds": 240,
                      "path": "/",
                      "periodSeconds": 60
                    },
                    "name": "nexusrepo-statefulset",
                    "readinessProbe": {
                      "failureThreshold": 6,
                      "initialDelaySeconds": 240,
                      "path": "/",
                      "periodSeconds": 60
                    },
                    "replicaCount": 1
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.connect.redhat.com/sonatype/nexus-repository-ha-operator-certified@sha256:99f30aa5ba8469d96de3efe69d1b21e73ff022172fc79144bba496d1119ec8a2
          createdAt: "2023-08-14"
          description: |-
            Nexus Repository is the central source of control to efficiently manage all binaries
            and build artifacts across your DevOps pipeline.
          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.replaces: 3.80.0-2
          olm.skipRange: <3.84.0-1
          repository: https://github.com/sonatype/operator-nexus-repository
          support: Sonatype
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Nexus Repository
            displayName: NexusRepo
            kind: NexusRepo
            name: nexusrepos.sonatype.com
            version: v1alpha1
        description: |-
          Nexus Repository is the central source of control to efficiently manage all binaries
          and build artifacts across your DevOps pipeline.
          The flow of open source and third-party components into and through an organization
          creates a complex software supply chain.
          Nexus Repository delivers speed, efficiency, and quality to the governance
          and management of all dependencies, libraries, and applications for your DevOps teams.

          ## Core Capabilities

          * **Dependency Management**:
            Improves reliability with repeatable, fast access to secure dependencies
          * **Developer Productivity**:
            Streamline developer workflows by enabling the sharing of components and applications across teams
          * **Supply Chain Performance**:
            Improve speed-to-market and reduced build times with release advanced staging and component tagging
          * **CI/CD Integrations**:
            Increase DevOps scalability with integrations to the most popular build and deployment tools

          Version control systems and package registries do not scale when managing proprietary,
          open source, and third-party components.
          Organizations need a central binary and build artifact repository to manage dependencies
          across the entire software supply chain.

          ## Limitations

          ## Controlling Automatic vs Manual Update

          If you use the default configuration for the Nexus Repository Operator installation,
          please notice that on any new operator release, the corresponding deployments are
          also updated without user intervention, resulting in unscheduled downtime.

          If you want to avoid this unscheduled downtime, we recommend installing the operator
          into **its own namespace** with **manual approval** for updates.

          ## Usage
          By default, the example Custom Resource starts up a single instance of Nexus Repository in non-Pro mode using an H2 database.

          ### Connect to a PostgreSQL database
          We strongly recommend using Nexus Repository with a PostgreSQL database. To connect a Nexus Repository instance to a PostgreSQL database, do as follows:
          * Update the `license.fileContentsBase64` parameter with a base 64 representation of your Nexus Repository Pro license.
          * Set the `statefulset.container.env.jdbcUrl` parameter to your database url.
          * Set the `statefulset.container.env.user` parameter to your database user name.
          * Set the `statefulset.container.env.password` parameter to your database password.

          ### High Availability (HA) mode
          To start Nexus Repository in HA mode, you must edit the Custom Resource YAML as follows:

          * Update the `license.fileContentsBase64` parameter with a base 64 representation of your Nexus Repository Pro license.
          * Set the `statefulset.container.env.jdbcUrl` parameter to your database url.
          * Set the `statefulset.container.env.user` parameter to your database user name.
          * Set the `statefulset.container.env.password` parameter to your database password.
          * Set the `statefulset.container.env.clustered` parameter to true.
          * Set the `statefulset.replicaCount` parameter to the number of Nexus Repository pods you require in your HA cluster
          * You must use a persistent volume as described in the 'Storage' section below.

          ### Storage
          The default configuration uses an emptyDir volume for storing Nexus Repository logs. However, we strongly recommend that
          you configure dynamic provisioning of persistent storage based on your deployment environment as explained below.

          #### Cloud deployments (AWS/Azure)
          * Ensure the appropriate Container Storage Interface (CSI) driver(s) are installed for your chosen OpenShift cloud deployment.
            Please, refer to OpenShift documentation for details on configuring CSI drivers.
          Note: if you're using Red Hat OpenShift on AWS (ROSA), CSI drivers for dynamically provisioning EBS volumes are installed
          by default; you should see associated storage classes for them in your cluster web console.

          #### On premise deployments
          1. Attach separate disks (i.e. separate from the root disk) to your worker nodes.
          2. Install the Local Storage Operator. Please refer to Open Shift persistent storage documentation:
             https://docs.openshift.com/container-platform/4.13/storage/persistent_storage/persistent_storage_local/persistent-storage-local.html
          and the Local Storage Operator documentation: https://github.com/openshift/local-storage-operator.
          3. Use the Local Storage Operator to automatically create persistent volumes for your chosen storage class name as documented here:
             https://docs.openshift.com/container-platform/4.13/storage/persistent_storage/persistent_storage_local/persistent-storage-local.html
          4. Specify the storage class name from step 3 as the value of the `nexusData.storageClass.name` property and also set `nexusData.volumeClaimTemplate.enabled` to true.

          #### Configuring the operator for dynamic persistent volume provisioning
          * Set the `nexusData.storageClass.name` parameter to a storage class name. This could be one of the default storage classes
            automatically created in your OpenShift cluster (e.g., if you're using ROSA) or one that you would like the operator to create.
          * If you would like to create a dedicated storage class (i.e., you don't want to use the default), then in addition to
            specifying a value for `nexusData.storageClass.name`, you must also set `nexusData.storageClass.enabled` parameter to `true`.
          * Set the `nexusData.volumeClaimTemplate.enabled` parameter to `true`.

          ### Additional configuration
          * Once the operator has created the server instance and it is running, you can further configure Nexus Repository via the NexusRepo custom resource:

          | Parameter                                                   | Description                         | Default                                 |
          | ----------------------------------------------------------- | ----------------------------------  | ----------------------------------------|
          | `statefulset.name`                                          |  The suffix for the statefulset's service name    | nexusrepo-statefulset     |
          | `statefulset.replicaCount`                                  |  The desired number of Nexus Repository pods    | 3                           |
          | `statefulset.container.imageName`                           |  The Nexus repository image registry url    |
          | | | registry.connect.redhat.com/sonatype/nexus-repository-manager:<app version>-ubi-1|
          | `statefulset.container.resources.requests.cpu`              |  The minimum cpu the Nexus repository pod can request    | 4 |
          | `statefulset.container.resources.requests.memory`           |  The minimum memory the Nexus repository pod can request    | 8Gi|
          | `statefulset.container.resources.limits.cpu`                |  The maximum cpu the Nexus repository pod may get.    | 4|
          | `statefulset.container.resources.limits.memory`             |  The maximum memory the Nexus repository pod may get.  | 8Gi|
          | `statefulset.container.containerPort`                       |  The Nexus Repository container's HTTP port  | 8081|
          | `statefulset.container.pullPolicy`                          |  The Nexus Repository docker image pull policy  | IfNotPresent|
          | `statefulset.container.terminationGracePeriod`              |  The time given for the pod to gracefully shut down  | 120 seconds|
          | `statefulset.container.env.clustered`                       |  Controls whether Nexus Repository should start in clustered mode  | False|
          | `statefulset.container.env.install4jAddVmParams`            |  Xmx and Xms settings for JVM  | -Xms2703m -Xmx2703m|
          | `statefulset.container.env.user`                            |  The database user name | nexus (can be overridden via Kubernetes secret. See above)|
          | `statefulset.container.env.password`                        |  The database password  | nexus (can be overridden via Kubernetes secret. See above)|
          | `statefulset.container.env.jdbcUrl`                         |  The database url |
          | | | jdbc:postgresql://your_database_server:5432/nexus (must be overridden via Kubernetes |
          | | | secret object which feeds into env variable variables defined in the operator.yaml . See above)|
          | `statefulset.container.env.nexusInitialPassword`            |  The initial admin password for Nexus Repository UI. This is for first time |
          | | installs only. Subsequent installs/restarts on the same node ignores this setting | nexusabc|
          | `statefulset.livenessProbe.initialDelaySeconds`             |  The initial delay before the Nexus Repository application is pinged for a |
          | | response i.e. to determine whether the application is still alive | 240|
          | `statefulset.livenessProbe.path`                            |  The path to ping the application | |
          | `statefulset.livenessProbe.periodSeconds`                   |  The interval for checking that the application is still alive i.e. responsive, not deadlocked etc | 60|
          | `statefulset.livenessProbe.failureThreshold`                |  The maximum number of times the application ping can fail before the |
          | | application is considered unresponsive. Kubernetes will attempt to restart the application's pod in this case | 6|
          | `statefulset.readinessProbe.initialDelaySeconds`            |  The initial delay before the Nexus Repository application is checked |
          | | whether it is ready to receive traffic | 240|
          | `statefulset.readinessProbe.path`                           |  The path where the Nexus Repository application is checked for traffic readiness | |
          | `statefulset.readinessProbe.periodSeconds`                  |  The interval for checking the Nexus Repository application for traffic readiness | 60|
          | `statefulset.readinessProbe.failureThreshold`               |  The maximum number of times to check the Nexus Repository application for traffic readiness | 6|
          | `statefulset.imagePullSecrets`                              |  The pull secret for private image registries | {}|
          | `ingress.name`                                              |  The name of an Ingress object which listens for requests to Nexus Repository on port 80 | nexus-ingress|
          | `ingress.enabled`                                           |  Whether or not to create the Ingress | false|
          | `ingress.host`                                              |  Ingress host | "example.com"|
          | `ingress.defaultRule`                                       |  Whether or not to add a default rule for the Nexus Repository |
          | | Ingress which forwards traffic to a Service object  | false|
          | `ingress.additionalRules`                                   |  Additional rules to add to the ingress | null|
          | `ingress.tls.enabled`                                       |  Whether or not TLS should be enabled for the Ingress | false|
          | `ingress.tls.secretName`                                    | The name of a Secret object in which to store the TLS secret | tlsSecretName|
          | `ingress.dockerSubdomain`                                   |  Whether or not to add rules for docker subdomains | false|
          | `ingress.annotations`                                       |  Annotations for the Ingress object | null |
          | `license.fileContentsBase64`                                |  Your Base64 encoded Nexus Repository license | your_license_file_contents_in_base_64 |
          | `license.secretName`                                        |  The name of a secret object in which to store your |
          | | Base64-encoded Nexus Repository license | nexus-repo-license|
          | `ingress.dockerIngress.name`                                |  The name of an Ingress object which listens for requests to an |
          | | existing docker repository in Nexus Repository | nexus-docker-ingress|
          | `ingress.dockerIngress.enabled`                             |  Whether or not to create an Ingress for a docker repository | false|
          | `ingress.dockerIngress.host`                                |  The docker Ingress's host | "example.com"|
          | `ingress.dockerIngress.annotations`                         |  Annotations for the docker Ingress object | null |
          | `nexusData.pvc.size`                                        |  The volume size to request for storing Nexus logs | 2Gi |
          | `nexusData.pvc.accessMode`                                  |  The persistent volume claim access mode | ReadWriteOnce |
          | `nexusData.storageClass.name`                               |  The name of the storage class to use for dynamically requesting that |
          | | storage be provisioned when using dynamic provisioning or to randomly select a pre-created persisted volume when using the Local Storage Operator. | nexusrepo-storage |
          | `nexusData.storageClass.reclaimPolicy`                      |  The reclaim policy for persistent volume's created by the storage class | Retain |
          | `nexusData.storageClass.enabled`                            |  Whether or not a storage class object should be created. | false |
          | `nexusData.storageClass.volumeBindingMode`                  |  It controls when volume binding and dynamic provisioning should occur | WaitForFirstConsumer |
          | `nexusData.storageClass.provisioner`                        |  The name of the volume provisioner | provisioner |
          | `nexusData.storageClass.parameters`                         |  The additional parameters for the storage class | {} |
          | `nexusData.volumeClaimTemplate.enabled`                           |  Whether or not volume should be requested using a claim template. |
          | | You should set this property to true when using dynamic volume provisioning (cloud deployments) |
          | | or if you're using Local Storage Operator to automatically create persistent volumes for locally attached disks (i.e. not root disk) | false |
          | `license.secretName | A name for the Kubernetes secret object which stores the base64 representation of your |
          | | Nexus Repository license specified via `license.fileContentsBase64` is stored | nexus-repo-license |
          | `license.fileContentsBase64 | A base64 representation of your Nexus Repository license | your_license_file_contents_in_base_64 |
          | `service.nexus.name`                                              |  The name of a kubernetes Service Object which allows access to |
          | | Nexus Repository's main HTTP port | nexus-repo-service |
          | `service.nexus.enabled`                                           |  Whether or not to create the Service object | false|
          | `service.nexus.type`                                              |  The type of the Kubernetes Service | "NodePort"|
          | `service.nexus.protocol`                                       |  The protocol  | TCP |
          | `service.nexus.port`                                   |  The port to listen for incoming requests | 80|
          | `service.nexus.targetPort`                                   |  The port to forward requests to | 8081 |
          | `service.docker.name`                                              |  The name of a kubernetes Service Object which allows access to a |
          | | docker repository within Nexus Repository | nexus-repo-docker-service |
          | `service.docker.enabled`                                           |  Whether or not to create a Kubernetes Service object for a given |
          | | docker repository within Nexus Repository | false |
          | `service.docker.type`                                              |  The type of the Kubernetes Service | "NodePort"|
          | `service.docker.protocol`                                       |  The protocol  | TCP |
          | `service.docker.port`                                   |  The port to listen for incoming requests | 9090 |
          | `service.docker.targetPort`                                   |  The port to forward requests to | 9090 |
        displayName: Nexus Repository HA Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - repository
        - sonatype
        links:
        - name: Nexus Repository Manager
          url: https://www.sonatype.com/product-nexus-repository
        maintainers:
        - email: support@sonatype.com
          name: Sonatype
        maturity: stable
        provider:
          name: Sonatype
        relatedImages:
        - registry.connect.redhat.com/sonatype/nexus-repository-ha-operator-bundle@sha256:3e7ab287f64398b2aa434d9cfd5d99e2e9cf2d40c2e9fa1b1418537807b7aeea
        - registry.connect.redhat.com/sonatype/nexus-repository-ha-operator-certified@sha256:99f30aa5ba8469d96de3efe69d1b21e73ff022172fc79144bba496d1119ec8a2
        - registry.connect.redhat.com/sonatype/nexus-repository-manager@sha256:fbad488ff2e368845473a11b4955992fe826a94811da3abf5cc3c6a33ff3974f
        version: 3.84.0-1
      entries:
      - name: nexus-repository-ha-operator-certified.v3.84.0-1
        version: 3.84.0-1
      name: stable
    defaultChannel: stable
    packageName: nexus-repository-ha-operator-certified
    provider:
      name: Sonatype
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://redhat.com
    name: pelorus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pelorus-operator.v0.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.pelorus.dora-metrics.io/v1alpha1",
                "kind": "Pelorus",
                "metadata": {
                  "name": "pelorus-sample"
                },
                "spec": {
                  "exporters": {
                    "global": {},
                    "instances": [
                      {
                        "app_name": "deploytime-exporter",
                        "exporter_type": "deploytime"
                      },
                      {
                        "app_name": "failuretime-exporter",
                        "enabled": false,
                        "exporter_type": "failure"
                      },
                      {
                        "app_name": "committime-exporter",
                        "exporter_type": "committime"
                      },
                      {
                        "app_name": "webhook-exporter",
                        "exporter_type": "webhook"
                      }
                    ]
                  },
                  "federate_openshift_monitoring": {
                    "enabled": false
                  },
                  "openshift_prometheus_basic_auth_pass": "changeme",
                  "openshift_prometheus_htpasswd_auth": "internal:{SHA}+pvrmeQCmtWmYVOZ57uuITVghrM=",
                  "prometheus_retention": "1y",
                  "prometheus_retention_size": "1GB",
                  "prometheus_storage": false,
                  "prometheus_storage_pvc_capacity": "2Gi",
                  "prometheus_storage_pvc_storageclass": "gp2"
                }
              }
            ]
          capabilities: Basic Install
          categories: |
            Modernization & Migration,Developer Tools,Monitoring,Integration & Delivery
          containerImage: quay.io/pelorus/pelorus-operator:0.0.9
          createdAt: "2024-05-27T20:04:01Z"
          description: |
            Tool that helps IT organizations measure their impact on the overall performance of their organization
          operatorframework.io/suggested-namespace: pelorus
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/dora-metrics/pelorus/
          support: Pelorus Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Pelorus is the Schema for pelorus API to adopt instance to
              the requested workflow
            displayName: Pelorus
            kind: Pelorus
            name: peloruses.charts.pelorus.dora-metrics.io
            version: v1alpha1
        description: |
          Pelorus is a tool that helps IT organizations measure their impact on the overall performance of their organization. It does this by gathering metrics about team and organizational behaviors over time in some key areas of IT that have been shown to impact the value they deliver to the organization as a whole. Some of the key outcomes Pelorus can focus on are:

          - Software Delivery Performance
          - Product Quality and Sustainability
          - Customer experience

          For more background on the project you can read [@trevorquinn](https://github.com/trevorquinn)'s blog post on [Metrics Driven Transformation](https://www.openshift.com/blog/exploring-a-metrics-driven-approach-to-transformation).

          ## Software Delivery Performance as an outcome

          Currently, Pelorus functionality can capture proven metrics that measure Software Delivery Performance -- a significant outcome that IT organizations aim to deliver.

          Pelorus is a Grafana dashboard that can easily be deployed to an OpenShift cluster, and provides an organizational-level view of the [four critical measures of software delivery performance](https://blog.openshift.com/exploring-a-metrics-driven-approach-to-transformation/).

          ## Software Delivery Metrics Dashboard

          A short video describing each of metrics provided by Pelorus is available [here](https://www.youtube.com/watch?v=7-iB_KhUaQg).

          ## Demo

          [YouTube Video](https://www.youtube.com/watch?v=VPCOIfDcgso) with the Pelorus in action recorded during online Konveyor Community event.

          ## Documentation

          Pelorus documentation is available at [pelorus.readthedocs.io](https://pelorus.readthedocs.io/en/latest/).

          ## Contributing to Pelorus

          If you are interested in contributing to the Pelorus project, please review our Contribution guide which can be found in the [contribution guide](https://github.com/dora-metrics/pelorus/blob/master/CONTRIBUTING.md)

          ## Statement of Support

          Our support policy can be found in the [Upstream Support statement](https://github.com/dora-metrics/pelorus/blob/master/docs/UpstreamSupport.md)

          ## Code of Conduct
          Refer to dora-metrics's Code of Conduct [here](https://github.com/dora-metrics/pelorus/blob/master/CODE_OF_CONDUCT.md).

          ## License

          This repository is licensed under the terms of [Apache-2.0 License](https://raw.githubusercontent.com/dora-metrics/pelorus/master/LICENSE).
        displayName: Pelorus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pelorus-operator
        - dora
        - dora metrics
        - pelorus
        - metrics
        - transformation
        - devops
        links:
        - name: Pelorus Docs
          url: https://pelorus.readthedocs.io/en/latest/
        - name: Pelorus Getting Started
          url: https://pelorus.readthedocs.io/en/latest/GettingStarted/Overview/
        - name: Pelorus GIT repository
          url: https://github.com/dora-metrics/pelorus/
        maintainers:
        - email: kgranger@redhat.com
          name: Kevin Granger
        - email: whayutin@redhat.com
          name: Wesley Hayutin
        - email: mpryc@redhat.com
          name: Michal Pryc
        - email: msouzaol@redhat.com
          name: Mateus Souza Oliveira
        - email: esauer@redhat.com
          name: Eric Sauer
        maturity: alpha
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - quay.io/pelorus/pelorus-operator:0.0.9
        - quay.io/community-operator-pipeline-prod/pelorus-operator@sha256:f54c42a30675897a971cac278d5d8ea24edf3121570264c07cde04f11cc4e7a8
        version: 0.0.9
      entries:
      - name: pelorus-operator.v0.0.9
        version: 0.0.9
      - name: pelorus-operator.v0.0.8
        version: 0.0.8
      - name: pelorus-operator.v0.0.7
        version: 0.0.7
      - name: pelorus-operator.v0.0.6
        version: 0.0.6
      - name: pelorus-operator.v0.0.5
        version: 0.0.5
      - name: pelorus-operator.v0.0.4
        version: 0.0.4
      - name: pelorus-operator.v0.0.3
        version: 0.0.3
      - name: pelorus-operator.v0.0.2
        version: 0.0.2
      - name: pelorus-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: pelorus-operator
    provider:
      name: Red Hat
      url: https://redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-opensearchserverless-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-opensearchserverless-controller.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/opensearchserverless-controller:0.3.0
          createdAt: "2025-11-29T03:24:52Z"
          description: AWS OpenSearchServerless controller is a service controller
            for managing OpenSearchServerless resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Collection represents the state of an AWS opensearchserverless
              Collection resource.
            displayName: Collection
            kind: Collection
            name: collections.opensearchserverless.services.k8s.aws
            version: v1alpha1
          - description: SecurityPolicy represents the state of an AWS opensearchserverless
              SecurityPolicy resource.
            displayName: SecurityPolicy
            kind: SecurityPolicy
            name: securitypolicies.opensearchserverless.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon OpenSearchServerless resources in AWS from within your Kubernetes cluster.

          **About Amazon OpenSearchServerless**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon OpenSearchServerless
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opensearchserverless
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon OpenSearchServerless Developer Resources
          url: https://aws.amazon.com/OpenSearchServerless/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: opensearchserverless maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/opensearchserverless-controller:0.3.0
        - quay.io/community-operator-pipeline-prod/ack-opensearchserverless-controller@sha256:f04fb9b1d65e4582edffdbbee0cde8853660138ebee9e5b87d66bf3615dd0eb8
        version: 0.3.0
      entries:
      - name: ack-opensearchserverless-controller.v0.3.0
        version: 0.3.0
      - name: ack-opensearchserverless-controller.v0.2.2
        version: 0.2.2
      - name: ack-opensearchserverless-controller.v0.2.1
        version: 0.2.1
      - name: ack-opensearchserverless-controller.v0.2.0
        version: 0.2.0
      - name: ack-opensearchserverless-controller.v0.1.2
        version: 0.1.2
      - name: ack-opensearchserverless-controller.v0.1.1
        version: 0.1.1
      - name: ack-opensearchserverless-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-opensearchserverless-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: ""
    name: integrity-shield-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: integrity-shield-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": true,
                    "image": "quay.io/open-cluster-management/integrity-shield-observer",
                    "imagePullPolicy": "Always",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "provenanece": true,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "resultDetailConfigKey": "config.yaml",
                    "resultDetailConfigName": "verify-resource-result",
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  resp.status_code == 200\n  result := json.unmarshal(resp.raw_body)\n  result.allow == false\n  not is_detect_mode\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"tls_insecure_skip_verify\": true\n  })\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "requestHandlerConfig": "defaultConstraintAction:\n  audit:\n    inform: true\n  admissionControl:\n    enforce: false\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/open-cluster-management/integrity-shield-api",
                    "imagePullPolicy": "Always",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/open-cluster-management/integrity-shield-operator:0.3.0
          createdAt: "2021-10-14T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.

          [K8s Integrity Shield](https://github.com/open-cluster-management/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.

          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Detect (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster

          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).

          ## Preparations before installation

          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).


          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.

          If you want to change the settings such as default run mode (detection/enforcement) or audit interval,  please check [here](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).

          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-7b7f768bf7-fhrpg                           1/1     Running   0          20s
          integrity-shield-observer-5bc66f75f7-tn8fw                      1/1     Running   0          25s
          integrity-shield-operator-controller-manager-65b7fb58f7-j25zd   2/2     Running   0          3h5m
          ```

          After installation, you can protect Kubernetes resources by following this [document](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).

          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:

          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)

          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/open-cluster-management/integrity-shield
        - name: Operator Documentation
          url: https://github.com/open-cluster-management/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/open-cluster-management/integrity-shield-operator:0.3.0
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:11edce56874ff1ee666752ec5fa521f3f6ae78c52cf1f289ceb97a86e6c083aa
        version: 0.3.0
      entries:
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.0
    - currentCSV: integrity-shield-operator.v0.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": true,
                    "image": "quay.io/open-cluster-management/integrity-shield-observer",
                    "imagePullPolicy": "Always",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "resultDetailConfigKey": "config.yaml",
                    "resultDetailConfigName": "verify-resource-result",
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  resp.status_code == 200\n  result := json.unmarshal(resp.raw_body)\n  result.allow == false\n  not is_detect_mode\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"tls_insecure_skip_verify\": true\n  })\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "requestHandlerConfig": "defaultConstraintAction:\n  mode: detect\n  admissionOnly: false\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  - kind: ConfigMap\n    name: openshift-service-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/open-cluster-management/integrity-shield-api",
                    "imagePullPolicy": "Always",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/open-cluster-management/integrity-shield-operator:0.3.1
          createdAt: "2021-10-22T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.

          [K8s Integrity Shield](https://github.com/open-cluster-management/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.

          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Detect (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster

          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).

          ## Preparations before installation

          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).


          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.

          If you want to change the settings such as default run mode (detection/enforcement) or audit interval,  please check [here](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).

          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-7b7f768bf7-fhrpg                           1/1     Running   0          20s
          integrity-shield-observer-5bc66f75f7-tn8fw                      1/1     Running   0          25s
          integrity-shield-operator-controller-manager-65b7fb58f7-j25zd   2/2     Running   0          3h5m
          ```

          After installation, you can protect Kubernetes resources by following this [document](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).

          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:

          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)

          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/open-cluster-management/integrity-shield
        - name: Operator Documentation
          url: https://github.com/open-cluster-management/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/open-cluster-management/integrity-shield-operator:0.3.1
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:5e4c319ce871a0dcbab7fff23325e6233c9dbcb2592fdeb1a9ba7c57ac2a63b2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.3.1
      entries:
      - name: integrity-shield-operator.v0.3.1
        version: 0.3.1
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.1
    - currentCSV: integrity-shield-operator.v0.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": true,
                    "image": "quay.io/stolostron/integrity-shield-observer",
                    "imagePullPolicy": "IfNotPresent",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "resultDetailConfigKey": "config.yaml",
                    "resultDetailConfigName": "verify-resource-result",
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  should_be_denied(resp)\n  not is_detect_mode\n  result := get_result(resp)\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"timeout\": \"2500ms\",\n    \"raise_error\": false,\n    \"tls_ca_cert\": REPLACE_WITH_CA_CERT\n  })\n}\n\n# get decision result from API response\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  not is_null(raw_body)\n  result := json.unmarshal(raw_body)\n}\n# if error, return it as result\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  is_null(raw_body)\n  error_msg := object.get(resp, \"error\", \"\")\n  result := {\"http_error\":error_msg}\n}\n\n# if API response is null, deny\nshould_be_denied(resp) {\n  is_null(resp)\n}\n\n# if API response has status_code other than 200, deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  resp.status_code != 200\n}\n\n# if decision result is \"allow == false\" or not set, then deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  result := get_result(resp)\n  allow := object.get(result, \"allow\", false)\n  allow == false\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "reporter": {
                    "image": "quay.io/stolostron/integrity-shield-reporter",
                    "imagePullPolicy": "IfNotPresent",
                    "intervalSeconds": "10",
                    "name": "integrity-shield-reporter",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "requestHandlerConfig": "defaultConstraintAction:\n  mode: inform\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\ndecisionReporterConfig:\n  enabled: true\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  - kind: ConfigMap\n    name: openshift-service-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/stolostron/integrity-shield-api",
                    "imagePullPolicy": "IfNotPresent",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/stolostron/integrity-shield-operator:0.3.2
          createdAt: "2022-01-25T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.15.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.
          [K8s Integrity Shield](https://github.com/stolostron/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.
          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Inform (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster
          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).
          ## Preparations before installation
          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).
          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.
          If you want to change the settings such as default run mode (inform/enforce) or audit interval,  please check [here](https://github.com/stolostron/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).
          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-5799f69896-zbcjs                           2/2     Running   0          88s
          integrity-shield-observer-757f58f7d7-7pf5h                      1/1     Running   0          55s
          integrity-shield-operator-controller-manager-6f94d7d684-dg5bt   2/2     Running   0          4m27s
          ```
          After installation, you can protect Kubernetes resources by following this [document](https://github.com/stolostron/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).
          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:
          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)
          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/stolostron/integrity-shield
        - name: Operator Documentation
          url: https://github.com/stolostron/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:d86bb21fdeec35b1fc9789023a558750da76e036e0790dcfce97dcd137dcb6fb
        - quay.io/stolostron/integrity-shield-operator:0.3.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.3.2
      entries:
      - name: integrity-shield-operator.v0.3.2
        version: 0.3.2
      - name: integrity-shield-operator.v0.3.1
        version: 0.3.1
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.2
    - currentCSV: integrity-shield-operator.v0.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": false,
                    "image": "quay.io/stolostron/integrity-shield-observer",
                    "imagePullPolicy": "IfNotPresent",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  should_be_denied(resp)\n  not is_detect_mode\n  result := get_result(resp)\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"timeout\": \"2500ms\",\n    \"raise_error\": false,\n    \"tls_ca_cert\": REPLACE_WITH_CA_CERT\n  })\n}\n\n# get decision result from API response\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  not is_null(raw_body)\n  result := json.unmarshal(raw_body)\n}\n# if error, return it as result\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  is_null(raw_body)\n  error_msg := object.get(resp, \"error\", \"\")\n  result := {\"http_error\":error_msg}\n}\n\n# if API response is null, deny\nshould_be_denied(resp) {\n  is_null(resp)\n}\n\n# if API response has status_code other than 200, deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  resp.status_code != 200\n}\n\n# if decision result is \"allow == false\" or not set, then deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  result := get_result(resp)\n  allow := object.get(result, \"allow\", false)\n  allow == false\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "reporter": {
                    "image": "quay.io/stolostron/integrity-shield-reporter",
                    "imagePullPolicy": "IfNotPresent",
                    "intervalSeconds": "10",
                    "name": "integrity-shield-reporter",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "requestHandlerConfig": "defaultConstraintAction:\n  mode: inform\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\ndecisionReporterConfig:\n  enabled: true\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  - kind: ConfigMap\n    name: openshift-service-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/stolostron/integrity-shield-api",
                    "imagePullPolicy": "IfNotPresent",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/stolostron/integrity-shield-operator:0.3.3
          createdAt: "2022-03-18T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.15.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.
          [K8s Integrity Shield](https://github.com/stolostron/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.
          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Inform (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster
          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).
          ## Preparations before installation
          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).
          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.
          If you want to change the settings such as default run mode (inform/enforce) or audit interval,  please check [here](https://github.com/stolostron/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).
          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-5799f69896-zbcjs                           2/2     Running   0          88s
          integrity-shield-observer-757f58f7d7-7pf5h                      1/1     Running   0          55s
          integrity-shield-operator-controller-manager-6f94d7d684-dg5bt   2/2     Running   0          4m27s
          ```
          After installation, you can protect Kubernetes resources by following this [document](https://github.com/stolostron/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).
          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:
          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)
          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/stolostron/integrity-shield
        - name: Operator Documentation
          url: https://github.com/stolostron/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:7d94521a5cbdd34f8307653a3e1b596ec86415b2165fabdbabc8ed8bed35473d
        - quay.io/stolostron/integrity-shield-operator:0.3.3
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.3.3
      entries:
      - name: integrity-shield-operator.v0.3.3
        version: 0.3.3
      - name: integrity-shield-operator.v0.3.2
        version: 0.3.2
      - name: integrity-shield-operator.v0.3.1
        version: 0.3.1
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.3
    defaultChannel: alpha-0.3.3
    packageName: integrity-shield-operator
    provider:
      name: Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhacs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhacs-operator.v3.74.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
          createdAt: "2024-02-06T23:06:13.271846+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.73.0 < 3.74.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2c0840f4573373a19eb8c9a26501138ef0e76efbd508fd69a6260e78194d86c8
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:71b9fdcaf4cc761b1499be8e6ccff6c463cc6b9856e9deb1f93baad45ea59eb0
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:a108e9a7967001e0bdfed7124b01e9a3dbf1dec308444762973030aec57e1d5a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:74624389ac3261ed699b1f64e5717353da68895709d30a011bc8813b61a4a249
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:22bf00e1457b4a9e63901892aa4375a1d4a9d1b2c067c1f054d918a24b222b10
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:264102d4bca7d9bd384dc04e5bbff1a7b43343ea8e59cc79047cdda50a3f299f
        version: 3.74.9
      deprecation:
        message: The `latest` channel is no longer supported. Use the `stable` channel.
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.9
        version: 3.74.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.8
        version: 3.74.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.7
        version: 3.74.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.6
        version: 3.74.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.5
        version: 3.74.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.4
        version: 3.74.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.3
        version: 3.74.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.2
        version: 3.74.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.1
        version: 3.74.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.0
        version: 3.74.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.5
        version: 3.73.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.4
        version: 3.73.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.3
        version: 3.73.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.2
        version: 3.73.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.1
        version: 3.73.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.0
        version: 3.73.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: latest
    - currentCSV: rhacs-operator.v3.62.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:56905c2e7df0e29ca2b6301cd81b4f9bbe02b483374708f7f7da219a4b29428d
          createdAt: "2021-08-13T17:10:01.410173+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.61.0 < 3.62.1'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.5.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main page before deploying, or consult the RHACS
              documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create an cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead. If you want to deploy Secured Cluster Service in another namespace, additionally pass the `-n <namespace>` flag.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e30f7835cf52dbce9afdbaf55e5a93d8baf9c4b3a3ae488d1d42c1adba7f46af
        - registry.redhat.io/rh-acs/collector@sha256:558c0dabdc52efaee7bc889ef397ac2ac30f7c54562c2cc0070d0ef991a8b31b
        - registry.redhat.io/rh-acs/collector@sha256:98cfab15684506f1d0978eb701e8de478d91fc5bda3013ffd3b436aa95f07cc0
        - registry.redhat.io/rh-acs/main@sha256:9932304bb62b084ee1ae7e75bb21d6dfb737260c851f2d8daf05082f79230c66
        - registry.redhat.io/rh-acs/scanner-db@sha256:ff877f503e08ecca0ce7a7d8db760b2e4004e8e8ae2f27fb9b9c00a05b58c93a
        - registry.redhat.io/rh-acs/scanner@sha256:266a575c2547a3223890e8b73db0f14d69dc5a22217c7e4e3dc79644e6ab0258
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:7fd7595e6a61352088f9a3a345be03a6c0b9caa0bbc5ddd8c61ba1d38b2c3b8e
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:56905c2e7df0e29ca2b6301cd81b4f9bbe02b483374708f7f7da219a4b29428d
        version: 3.62.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.62
    - currentCSV: rhacs-operator.v3.63.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:d79bac8f5cab0711ffa8e35ea7290b59ee0554b990e4a919f4b0bc0aa93578fc
          createdAt: "2021-07-26T22:02:58.261433+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.62.0 < 3.63.0'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.5.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:2d9da26bac816af608979a034a8cdc24b51e04f0807e177fc114f55c0e633650
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:d79bac8f5cab0711ffa8e35ea7290b59ee0554b990e4a919f4b0bc0aa93578fc
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2f322231af2402ac09788e96ca836c209797f8c36a8589f0739ca18678d206e4
        - registry.redhat.io/rh-acs/collector@sha256:0332b5accbaf819911082087b8f689400332cc40e30e74e8839f9555d42bf8f0
        - registry.redhat.io/rh-acs/collector@sha256:6d67c6231d74e5de4f382abd445493796a04a0ed7dfda0695b699a1e56e34dd2
        - registry.redhat.io/rh-acs/main@sha256:839f642faa364e3e4c330e965a7e50728a00fd349a388cb514ca64439659ee78
        - registry.redhat.io/rh-acs/scanner-db@sha256:3a3cce6b39bd878eb369800ea9cd1c4f4549fce486754b5106e88d361da93713
        - registry.redhat.io/rh-acs/scanner@sha256:6152a6f5f76b3a14eda37f5adac1007a4e4b6df933dfec282c25efb3bc0116fb
        version: 3.63.0
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.63
    - currentCSV: rhacs-operator.v3.64.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fa478167f2f738f244bed6a06450679be73f8464c40f86acde4ffd390505692b
          createdAt: "2021-09-22T05:10:01.286657+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.63.0 < 3.64.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0cacd00c0a147cc8295138565ef2dc2ddbd9ad1fb25f6be817719a75ea4c6448
        - registry.redhat.io/rh-acs/collector@sha256:2b3a8bd3af62516a6714fe612e5fdc0433b91d873182e290d3ddc2b32ce291f0
        - registry.redhat.io/rh-acs/collector@sha256:3eb099da081cf208d46be5ccfa7b5e9ac0e2cad49f127fa4db91e49e3f26db42
        - registry.redhat.io/rh-acs/main@sha256:6aeb2223124540ac217c38b016dea99d770ab897dde4906a821d8776d91ea03d
        - registry.redhat.io/rh-acs/scanner-db@sha256:67e81bf896267b7acab8cb6755cde552173de4f0881c38eaca8e491bd926cc53
        - registry.redhat.io/rh-acs/scanner@sha256:8b7121bce8f9c7133d29245ebb265a4b8f9831a66a57f11b2d68b9b8b5cf79cc
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:5187b04f8010a274d6bc017fc82f1b00d886124e520c1b7de8b4da8cd2f37bc0
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fa478167f2f738f244bed6a06450679be73f8464c40f86acde4ffd390505692b
        version: 3.64.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.64
    - currentCSV: rhacs-operator.v3.65.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:229c7e5f967c70dfbc3cf638d521267ea6acf875b055499dfd30cb19c0b1f69c
          createdAt: "2021-09-21T13:26:28.711610+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.64.0 < 3.65.1'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rh-acs/collector@sha256:2b3a8bd3af62516a6714fe612e5fdc0433b91d873182e290d3ddc2b32ce291f0
        - registry.redhat.io/rh-acs/collector@sha256:3eb099da081cf208d46be5ccfa7b5e9ac0e2cad49f127fa4db91e49e3f26db42
        - registry.redhat.io/rh-acs/main@sha256:e672ef9a1239065f8cf0f331757861fea082e971a9e9760d1e65795f399cbde1
        - registry.redhat.io/rh-acs/scanner-db@sha256:20f258500ac2ba4e626df92dbcd193cf7ab8687ac251591be2442b8a46871835
        - registry.redhat.io/rh-acs/scanner@sha256:bfe9b2205bfca6aebed14827b4bda098bfad574e67ffa967ad339543062200fe
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:d3bf33899ca8b199ca8782978618ca343164e43fd0ae2ac6a0cfbf697efa6428
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:229c7e5f967c70dfbc3cf638d521267ea6acf875b055499dfd30cb19c0b1f69c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0cacd00c0a147cc8295138565ef2dc2ddbd9ad1fb25f6be817719a75ea4c6448
        version: 3.65.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.65
    - currentCSV: rhacs-operator.v3.66.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:10cdb0ff3e67b65737cde420536494bd84c2b7ccf65192bbed2eb43eaed66a41
          createdAt: "2021-10-20T16:38:38.091764+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.65.0 < 3.66.1'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:bd74f0b95ff2881faf6eb4520feecd067b69a759f09bbfecd467447ce2a2a25e
        - registry.redhat.io/rh-acs/collector@sha256:5673c27554a71502e06e08945a4424c6ce5da27f489854f3aa452e6d31240aee
        - registry.redhat.io/rh-acs/collector@sha256:d93e13ee1d1cc4b7f82e644a7d43e560aac42bd1e06d25b476cea9a4338bf9ce
        - registry.redhat.io/rh-acs/main@sha256:97230c01e76d90c7fe35ffeaa591be3d9175f350a8fd88599aded09a1edf930c
        - registry.redhat.io/rh-acs/scanner-db@sha256:490b0bf49161e4bc6de2504726aaf360e0ca9a214aea6b886fff13153bdb263d
        - registry.redhat.io/rh-acs/scanner@sha256:323ee86d6a9cbeb32270c659c1154f3a62c36535c6ea894e4e29e93eb1f4a84f
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6536ee795e8aaeab9321ee4820e55933195983a768ba24fab40508d03e50a6e4
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:10cdb0ff3e67b65737cde420536494bd84c2b7ccf65192bbed2eb43eaed66a41
        version: 3.66.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.66
    - currentCSV: rhacs-operator.v3.67.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:893ebcb2d0c96647e56bce3b16fe32851df59cd71f2c0fc8f6e66ca3a669bb70
          createdAt: "2021-12-16T12:54:10.117625+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.66.0 < 3.67.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:893ebcb2d0c96647e56bce3b16fe32851df59cd71f2c0fc8f6e66ca3a669bb70
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:86e5fa1fa294987114be200890c2e516501e424aee0fb98ece25c95e7716295b
        - registry.redhat.io/rh-acs/collector@sha256:57c2dfa3dbc8368076291fbc627baa01dcb5ebc50f838e02ce7ac38a128d027b
        - registry.redhat.io/rh-acs/collector@sha256:e4648723ccbd43fa5acf005d9734bfc06d41e19e1be0bde839880e28fa361e16
        - registry.redhat.io/rh-acs/main@sha256:8db7630d094b661411ebb3f35248848d3147c735677d0922f7a04de9a41eacc9
        - registry.redhat.io/rh-acs/scanner-db@sha256:6f8d47277732eb56317d576c2d06fb1f539d46d16520e6ca34abec290392cef9
        - registry.redhat.io/rh-acs/scanner@sha256:2860ed271da6064149bb53568c5ad60e129918d55a2f244f9ade4a0bea4c4933
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:ad88773ab141f45fe24c61e83ec736aab27f652fb82ca2a85fee6f885568c5b9
        version: 3.67.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.67
    - currentCSV: rhacs-operator.v3.68.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:195a694dc96096166fe82e81ecb3ceb493f96cfb5029112e576e44ab39b56abd
          createdAt: "2022-06-15T22:13:22.427644+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.67.0 < 3.68.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b5fc3dcaa72bbc8dea005189c940e1cf2d00c94a6cf7676cf0e1790e1191d45c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c9d0a5a2871c24c0b1058e419f2b090429363a319856397855412fd2c0037395
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:081f2198ad70bfb2ec66153b50b48b950b9a5550ba996de413c5a2aff4052783
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9b9b9146d9683d6da0ff2abbc8ea82b96d945b7a8c3740d72d8c018fb2b04fba
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0bb76363a3a25916dd4493e177e9b2d36eac9633473b07fe0fffb853fd072da3
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:105d10bd50a6062c998ed107dea388dd78f0caddb0b57713c8692b1d07042774
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:f0d2f5f11c2a96d34d6b4baf249cbf821fe064eade73c3f95c22f3c6981ac4d1
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:711293438bab35b17d2e1f162e7f74f667a6e16dd32e45122f917b6817fefb4e
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6a10a4859527946f61f497ff84b80f973cb7be5982d428423836b5aca81a1f5d
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:195a694dc96096166fe82e81ecb3ceb493f96cfb5029112e576e44ab39b56abd
        version: 3.68.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.68
    - currentCSV: rhacs-operator.v3.69.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9b2beceb255124855ba1b352d16009b2f2cd422901a19c311f0783dab1fcc3a0
          createdAt: "2022-06-21T09:07:40.705944+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.68.0 < 3.69.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:77f5db63e17b140a8d6b84e3822fd77463035be9c0c832b55b4977696da13ccc
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:867613178d491f416e57975843817251490c5fbca2fc69d8b55b169bea675279
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:cf5629823f2dd583495bcbbcf3b83b4f29f855ace3c388f5cb7b24a6d34ed267
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:da6dd486a20fdba61ea12d2c77ea299d9795a9f22d9057d65ff992b1f5896e07
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:f167e928740d1c614e26948ea58f49e569f6a4fddc438cd0abe52f60538432d0
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b254746ed3faa1f1cbcafdf1343a1957bf0214311b36f4e892be3000cc2aecf3
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:8db5206532e95a7ad7cb23f389155d41757aaf5f445ddce92b008a06627d3fd5
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:2afb2823edc6f3434e18db60ee37381b5b79f51234c1a261b6d0f8ed74cc8b63
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:297e7f863106c6b41f882bbd5b691a12c797c24d832473a04e604d4639e4a68e
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9b2beceb255124855ba1b352d16009b2f2cd422901a19c311f0783dab1fcc3a0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9ae03669cfdc0f4fe56b021d911edb17159c07757720ae30a1f22d7f7a897c07
        version: 3.69.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.69
    - currentCSV: rhacs-operator.v3.70.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fb903bf9e110ba03e9c63977ebaf707e6884dd8fd413bcd6b793a0ed795cdd0e
          createdAt: "2022-06-20T12:30:26.999648+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.69.0 < 3.70.1'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fb903bf9e110ba03e9c63977ebaf707e6884dd8fd413bcd6b793a0ed795cdd0e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:df8cfdaa40b50ff2f2670d97c2115b47ae4bea443ae2831caaa468dd62f3c75f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:d2e827a209840b7197960c8115720972237532eb9cf9d6fee7a36107053408ce
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ee55a233d2a8fd77d89ec2c69f357721c7debead6470a9f494b3cd6a001829c4
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:e71f2f2347dd46dec790405b1bb98d54a348a4583949f142f5703be9a790f96e
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6c32b86ed8bc18e384706eb6188406e66910bf34c8869bd155a60c3525d0fea7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:3d7c8b77671740e324ee6c309a84bbaa4d925e6750979fe4e46c561bc79f1b4d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9b35ae6df2c19935783735d213483f3fcecead2f49f873a4f7844ef9fb5c7f1a
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:6b14e850cda9a54618847858292ea669abff599a40692e27fed0e337c4a60526
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:dfeb239931f7a33ade5c829a102cabc01f5c348e1aa35a7ddc24757cfd549629
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:b47c96af1c9ffe4d8728da510a93efe21adc221225fe2b822cfcace6c6672ba2
        version: 3.70.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.70
    - currentCSV: rhacs-operator.v3.71.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:469b6c1592226eb9a521131ef758a33e6a6ac7c96bc67fcc903cea30469c125e
          createdAt: "2022-12-07T08:31:36.777654+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.70.0 < 3.71.3'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:9bc25e81c21cda6d8b535d8ac67c1286fe57a1596001850e730f8f73bf371111
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:e282a8e5e606003ea344d44ac5ee7699563848f7160eeae183aa58ad740e0e94
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:c3ec88cd99908894d0e67153779062f90ac1b007980d66040a79b2be13798a10
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:df7b41999b542a477848823a1d0e7e5c29ae1b00fbac035007a5a1f33fac139f
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:4d8bac9b3857af6ba351c7768f70ef30ef7cb99ae4df60cb226b5a793353a052
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:7f279bb6e0f34a5208d8711ba4d7b62c78f08b683815ce33f6aa28c23c4246da
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:469b6c1592226eb9a521131ef758a33e6a6ac7c96bc67fcc903cea30469c125e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:f16f92e074f7125b88e9e2033c7c12b44421145b93d040034fa4688626869af1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4a0dc8c337299d7f6440ff75c2d5219d3ab68183f4f117f008ef065757dd5d4b
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:cb2d0f470968c2b725b0d176d423cc1866fd56893344d077d28f2c16581d3614
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e001b9f844a6c298dd74f1ab683f3dbbf0ad66044cec419c373ef4f97d47be73
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5fdfd3690af60bd5ecf04741cd1f73259491da501700b066120976960567f0db
        version: 3.71.3
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.71
    - currentCSV: rhacs-operator.v3.72.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3ff61e1cc77b66a22c8a8c0ab306f0e122cd74e762005285aede23ebb6c2f6a2
          createdAt: "2023-02-28T17:02:08.443613+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.71.0 < 3.72.4'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:cb5df858e0c5cae8f77b285e23daeb83062bd72570c90ed5ea3ce4a02d2f5f08
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3ff61e1cc77b66a22c8a8c0ab306f0e122cd74e762005285aede23ebb6c2f6a2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:0b69595405e4e598183bbf4197ac5b7593724fa6162413f225aa01a542af18c9
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:cd475a6c2356d63cfe736a11114de7fedfbd8fdcfecc56224a00b6c819103be6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:622f30b7f591194d86a5bf95deede0225e66f7b624db197f6289a5fbbbe887a9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:648b14e4158da2a85eedb46b3456fb502d680d52d375ad34bf45b4b94f8b2ef6
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:878ed77d07d3f40f049a594af44376797305786a2a264dae3d0c50401643bfa5
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:42e5f6c4ba789f124ac3ebe7b6d1a607ede8e763a35888c97ccbd0259bec4a1c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:575b6c3e2914751df1668ffff83cbda187ce6e56f32214414cdf036b7a62bbd8
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:c07fae3616cbc681e4d31839abea6623b4bf4dade93273201c8db7ba0d635aad
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d56a00b3e20e60b7169f5c35d03fa6a1bd3b9980dd3ebc9d89d759e1d6d20ad2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:cd0c205ee44eddcdf99b84e80fcf4403851d956efc50532b9d12013bafe44988
        version: 3.72.4
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.72
    - currentCSV: rhacs-operator.v3.73.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a8486b66f977a639d77ef110492e5ecdde47be8acaefbaa1cbb5417085c56839
          createdAt: "2023-05-26T21:27:04.033276+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.72.0 < 3.73.5'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:648b14e4158da2a85eedb46b3456fb502d680d52d375ad34bf45b4b94f8b2ef6
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dce5db4f162dd40c09cad114cb802cd6d7c72d0c6986581f2e74c977493f75b0
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:5df359156b01505ce43e5f14c3b08722856bdb86f3d0d9b4fba785a2e580f346
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:459a8d91beff91638872d377a8b82c279ad2905ce3f4ad4bfc00f6822418ac57
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e6687c12d070069f655c17832d94c619c18274a259ccc59715036f9908e162f7
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e4a27d3ffb173c87728fb637ca7fde92a9e78ea9ee3edcecccc2a5e3d3748b8c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e2c89f735969d438f75a89ff63c404a8ec4361a03fde48e880fee73006b9c669
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:082bd6f4b40209e0591be001dea358f328cd86a08691cdceb7f71ea59d861d9d
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:4d0ead8969f120a629104a92a454842bb7103aec137deb6c8209b7db9c48a1b2
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:ee2a9e4ab74f5a554d1e4ff148833a53bdaab70ac1e2668cc9ee2fceca290ba9
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a8486b66f977a639d77ef110492e5ecdde47be8acaefbaa1cbb5417085c56839
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7bf9415aa4b0746d11ca5a59d4179bc382a0fac4ded969f0c4294171fde27d58
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:c020a80ff82bf4d9b5cec3eeac5de9990de76041e22c444e664a20e15c46ce3b
        version: 3.73.5
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.5
        version: 3.73.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.4
        version: 3.73.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.3
        version: 3.73.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.2
        version: 3.73.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.1
        version: 3.73.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.0
        version: 3.73.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.73
    - currentCSV: rhacs-operator.v3.74.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
          createdAt: "2024-02-06T23:06:13.271846+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.73.0 < 3.74.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:22bf00e1457b4a9e63901892aa4375a1d4a9d1b2c067c1f054d918a24b222b10
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2c0840f4573373a19eb8c9a26501138ef0e76efbd508fd69a6260e78194d86c8
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:264102d4bca7d9bd384dc04e5bbff1a7b43343ea8e59cc79047cdda50a3f299f
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:71b9fdcaf4cc761b1499be8e6ccff6c463cc6b9856e9deb1f93baad45ea59eb0
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:74624389ac3261ed699b1f64e5717353da68895709d30a011bc8813b61a4a249
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:a108e9a7967001e0bdfed7124b01e9a3dbf1dec308444762973030aec57e1d5a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        version: 3.74.9
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.9
        version: 3.74.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.8
        version: 3.74.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.7
        version: 3.74.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.6
        version: 3.74.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.5
        version: 3.74.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.4
        version: 3.74.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.3
        version: 3.74.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.2
        version: 3.74.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.1
        version: 3.74.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.0
        version: 3.74.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.5
        version: 3.73.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.4
        version: 3.73.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.3
        version: 3.73.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.2
        version: 3.73.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.1
        version: 3.73.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.0
        version: 3.73.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.74
    - currentCSV: rhacs-operator.v4.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9bf3a3e0fd573f91f03794eaf5291364a90392e5e7d4b5d4ed550ef4600ab826
          createdAt: "2023-10-20T07:04:50.531740+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.74.0 < 4.0.5'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:c39621837cbc8419d187a43a9575ec8cb4021c58ea1b56f215003d7264eb5d03
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:139d80d398e7e5cfc85839e3039a3630b48c7ae6650d755754430fccd94d6a27
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:4c848eb7465e928251e05d32ffbc93cd14e7bb77972d22b8721bd6eaa4a93d2f
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:0aedd8e865f72ffa8b79fd2bab48974caec3eea3e3a6f77c89fe6dacb8947057
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:a0d9cd31d953aaf7e84f5a39f405c5aa2ea62e68d6c728a936ca1ffc4dc1b93e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:09e79b5db8977520f9951cc43c339c8e40b4659d7da513347d5a88b2500f809d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:3250d89e78de852a2627593f29469f0b3ff639ea3644b4b7d6d057d0c1ad3659
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:5a492b856e0b6d9fdb020b556d13186ef5e7095b0c736a2031500c9c00dad0c1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:08f537cba262605a0eb0a510b6faf78e3ba26465f636d03cc1f7a6ed6b40d355
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:eee1aa054d4d15b23be293f31d3ea659e0ffc1d05174ef89a6c977dd3d4377cc
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9bf3a3e0fd573f91f03794eaf5291364a90392e5e7d4b5d4ed550ef4600ab826
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:cfa10bb6b461f302674f185b26c8d6efaaeba7f3f65d2cf05ae1f069aa2710d3
        version: 4.0.5
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.0
    - currentCSV: rhacs-operator.v4.1.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:8ffb6f0ff1bf016c3919c1eefc6c3db3d4a8fbe0e79919f72b4c281afe6d4b1c
          createdAt: "2024-01-13T18:55:22.011709+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 4.0.0 < 4.1.6'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:8ffb6f0ff1bf016c3919c1eefc6c3db3d4a8fbe0e79919f72b4c281afe6d4b1c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:a8ad0e76ce4cae9f9b36aecf125c4ed56fc2d776fe3df113d41bfc1c2f8b3602
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:01b9f9798d3ecbefe3da1ac2ac782e8e8b930e7eeceb82fe3473b5bfc1ccd40a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:364c107c34694ca33ac724de78db3e41ee55f9098d9ade0775a51b11f1533065
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:8760d6dc68c86f0c5b53d8f0bfada0df012f80bc8e0023ba3522fe6829a05a41
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:762ad216e79be0837e98873202b0072c7fd399925ee94bde57cc61c68cbd5f4e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:7ac504b7824d17bd7ac55b1e59c26be308506f315a0ab0d8c45d3b4934c0a16c
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:8547b76cf0533dfe6da2aafbbd063021bad4ff78b32b2dfed4a7607496e0a904
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:2ec62f3da93a1346ad215744257820377ccf4ead84e7471c52e348a31a431d3c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:bdbe08ef2d01b114702780fab76905e6eb1851684692ffa0a4c84604bda3ddb3
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:34694b9f4fe7fffc0c547be4e311579b5bb0c1fa92d8257bf6d1581ffd655c46
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b26133843687cc50e2c52d6067d8b3369b5cb28dfbfd15dd4b6062096673195a
        version: 4.1.6
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.1
    - currentCSV: rhacs-operator.v4.2.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4253eca84cbb0c5fc033507ddc2deef235b054c0ba944fa271ebbba21545b872
          createdAt: "2024-03-13T14:51:55.084122+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.1.0 < 4.2.5'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:2f326cabf03f780a3e6120995d5442641764641f62430d82e05edbe21b30c7b2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:59f1862c8ce188906499f08201ae05deeb47bd4fc5eab4be0386ca44ec065da8
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:ff27f03064633d6d08f8383649069e39c868def4aeca8f2622750397e049d0ec
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4253eca84cbb0c5fc033507ddc2deef235b054c0ba944fa271ebbba21545b872
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:12db245af3b8475c9b5680bb0035c566109819e05cfe62bd1dfdfb5d6ed25bea
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e2b07cb7d690477d78a2b8e1875545998d4bdb946f80dd0533a14187da99dbbf
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b82f7f654235688fc07fb037422a73e1106e27024d39a68ef7fac1422b69496d
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:3858ab936d4626a11bbf895d41bad181364ee5df3312f6dd29ebeb9b7d31ec77
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:e79a5e5681ebfe2d6349e2763ee0c1fa521b20319846958e402d23229b1f257b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:4b35f5f39865238a8e95d3cba7ebb5f15ccfbf6a2563c34f57d91a0b5c927066
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b5a15f2985b114bf9bc24a0d9942db5d0cb818e60fd15a2f9094aa00904cce77
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:08aebe6e8275d3314b6756d522ec568ccdfb9c52df98c9822f187f6c5a3af19c
        version: 4.2.5
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.2
    - currentCSV: rhacs-operator.v4.3.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:266cbbc270efafa26d5d15f3e333c96eaedee3b47854ff337ae1c572d34901ce
          createdAt: "2024-06-06T22:31:19.365878+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.2.0 < 4.3.8'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:30f9384244819da013358325cec364bb210b3b33b4cf9680698531fe50562aac
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:2c35cb6f518393d002edd2bf5f714c1d053cd0fab55f6152a2f35676e4979202
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:b0c9b3858fc0547dcb4eb3065dedd5bbcf1e1f6707a8ab812ed06882d4f6d6ad
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c36a557c9dc2ae4479c432933a9a4dbef38f2be53360a68a5b6befb614d01dac
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:5092c3fbb4a38c06a2f42d125dc718ef0e1005f304ad8046afdd2a5e7ccbc580
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:266cbbc270efafa26d5d15f3e333c96eaedee3b47854ff337ae1c572d34901ce
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:bdf9785bff51194636c6e8a518448c6d12a297bd31c4bb2e79d07084409c18b4
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:9fba889021a876ab627ff8c496e4b6c46c221c61142cd0c76daf33c89762e2c1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:2bb643651c8d51525223df3b2b675947174bbe9f1eaea8688e1fa83044cfa41f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b7eb17fbcf6c4a6e4205ad66f1ffd9b10a4634f6ef5045d407c266566b1f255d
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:10d0cc82b6eddd089f3a7af37b872c33248513d0b4d3f094b6f62c01f4460825
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6b55a25eb3a611c648d9be883828834592229c16f4166fd28ef40a25fc667061
        version: 4.3.8
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.3
    - currentCSV: rhacs-operator.v4.4.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:2b87569d7f4ef5e06c989b273c378e007c6d87b26eec41774ac1fc67dcd9e4e4
          createdAt: "2025-02-10T19:50:13.597164+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.3.0 < 4.4.8'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:69c12230a785619c765e3749a7d56f76dce9ce4f530c20e8a9387b99eb65627b
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:2b87569d7f4ef5e06c989b273c378e007c6d87b26eec41774ac1fc67dcd9e4e4
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:467d069ee957aea07882b83b60ae9fcc62ccca159f5d643aac13e531ccf7df88
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:763e7568704971cb4656727dc223374de13e82b4304dd3f5387ddc0f4e42b8b6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:0df4e95c7406aee7812d145cdd4d8c61cec32857fd2079dbc4244954a9d8288a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:183c75920ab8e7cb947cb966f1543e39b6fdb5e1bb0caa1b0cf5f89671f0328f
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:123c0108bd7a190dd2accfd21786600f787147f040e57fb5f840861e2caa441d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:65707fdad55767ff5598a8d3679fd0779a37f59501e58971b81bebcb23f1f9fc
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:76f9dc2e2ee5595c36530d97dec216e2dbefada2fe0747e3f6a3a725b75722ab
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:ba6e25a413c79131b966a097f72c36478933ea52deb55a62acda7011a96b3983
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:664a5dc40dc1fa06c47a11e13b0ab5e0612a981d7b69bcfb29422abf3d1a13b2
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:39cfd01236e905034f6645a73063427436c14e351e0e0bc735e73e62aa5a1c3c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:d6b4f8caf342b105c8df14c5c9180cb36123e08d34756ee8fe4f2f76c34f8064
        version: 4.4.8
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.4
    - currentCSV: rhacs-operator.v4.5.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a7dfbe3590668f91fe6694335b5a35b2fca07b4735348cc5202921755d2f654d
          createdAt: "2025-04-09T22:51:15.157672+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.4.0 < 4.5.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:d928600f75461465598a10de8df2495a275fd5232a92b078f609d1f5774eb778
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ed33e7396357f1db03a065573c020846a5872b12a21284439770686689222434
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:c2656b794ec4236e36f48f71bf26bdedd9de27fc4acef39deba2bdcfcddab03b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:5109b304eb9458f97af85c2ba63e08f51672fa3f9406226b7f357b86b5828dc0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:1817cf8d2c08b04391792321702ef53d16a4b1ca06459c00c9c053128f534358
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:5914548f6ce2160e92c5d96580ffba23cdf1ae940c1f73f3f6424d15c6e97c37
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:fde78d34ecd2944c7c16b4e823c76b3667bf6c5b468e9991128ecc4272ec0e2e
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a7dfbe3590668f91fe6694335b5a35b2fca07b4735348cc5202921755d2f654d
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0ff948b5517df3773cae2df02b708c348d8707409899b1de4108588e31601c0c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:cc4b329cc795752ecbb178d2e4efc152bde54b04181334eb5bd70304c3354cad
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dc7f23341c8b209f1846f29f889d00ef232fb58da9d5b4bd561f3933093b2786
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:41351e88688d23a443ad4f141caf0433b2c2789e6a1a85b4f5b36abeb5656bb1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:f07cba0738897e0e7ae74971be0470ce2a855657f133a6e1cdd8a7092f6151b0
        version: 4.5.9
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.5
    - currentCSV: rhacs-operator.v4.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:c4d434e1ff052508e5594d2b95dafa8726fd8adf5317754774c013a46de224d8
          createdAt: "2025-09-26T09:24:28.046251+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.5.0 < 4.6.10'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:90c47c6f95571cfcca04aa4e05a18befad75c1b44a6f3a055fcdfdab749d29c5
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:19db8c5d2425dcf18ae63b025f946fc46adaec0578e9505415cb585797069e95
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:16b61ca1b9ee4e0821e7fc82fe4def75ed22950e502730f5704ec4fe63bb2e59
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b630d53ad0b862151be7e14f0483ca5adac570216deae66f60e75af87a4dfd46
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:c4d434e1ff052508e5594d2b95dafa8726fd8adf5317754774c013a46de224d8
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:65793c05aec8085a53fab8bcf33a85192c17b46c91a7d86e0a457d1e3a113878
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:713e61d3c8b55de1edc9d7834d3e8576718e1327665f94a6b58178fa7496c0cc
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:8fad8ab2efdcbc99d9efa736a90cca6f236f0a9d45fdb355ae0b6b4dc42d77f0
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6d6b2696a12d49cf3403e338a0e028187473b6f43ef2b0bd72c7701200ac8e2e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:6da59c5b82625894f6efa3fa0bc5ea0378edd4f95cf42dee772e9c8a565dba81
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:ffe41363dc00b05b0daa0c6d16efb30e534086aa4e3d7ccc599c86d33813138c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:899da9c23000bb821bc9d544ebb56bcda4f3245ceee5b1b9c12d09f580b4b9a1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:b5cd08349931669055f03d21331499ef2ea04597f8a90fb201615d43000271bc
        version: 4.6.10
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.6
    - currentCSV: rhacs-operator.v4.7.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:414b03b9830f755e459127f3f926e275b5049eba0f199dd9e4975974800979e8
          createdAt: "2025-12-15T14:49:31.922833+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.6.0 < 4.7.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e7106f927313f2e0a08c85cf1ecfd1338d222f02dcac6c40846858a7e0c9c32b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:4e48a0441240e9531e1490079e19edd65526b726b87bc5613b3cc62e3f59c1be
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b6f7cc10247ab111a4aea231858b4f6fd17bfd4e4b4e4bd62873567ab875fb2e
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:ee14e7361bf64117af506a99906b3ae43a2b34c78f6e80a924a4419b047beadd
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:6981a243b8e6f095cbcabae3056012e9c60914ac42cd795c4163f4fce64a6aef
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:b3b498320cfcbf06da095f2427814d7f157ccec870383085be733ad7b6e6ccba
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:b55eae54dd5bc1bc58e9d52722a5830f8ee73bd59cdd0190147df8145f5ccedf
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8b24cb309fb5dad63d92605093b7e1cb659d9c0c1f31f6d5a223746f25dc5e23
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:414b03b9830f755e459127f3f926e275b5049eba0f199dd9e4975974800979e8
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:19b84b221ab9ce59fd0c8fbb4a713ee66304fd92822cebbcde0d77496ca82b0a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:7e1371e5e0b53983ca615309f44f6e4c124874ca1ae8a0fd4a59a470eb6a15df
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d45d0e810330d7c95c2e4dc2f1bc5c5613f06ec09b4061f2874c8837c73379b9
        version: 4.7.9
      entries:
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.7
    - currentCSV: rhacs-operator.v4.8.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa
          createdAt: "2025-12-17T14:22:57.176442+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.7.0 < 4.8.7'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8322bb5c9649b552aaaa62ba52067028a828c9dcb16c7580ec235e6b48b75e53
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:a58c6e952333169b21ffefdbd1acd3fff9c8d8dfac28795ee290756ca4394f5a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:fe1732a51218d60b1c5f6fa96357c0d50ce48ae6802da91ff594f7ef184effe9
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:3325c985bbe99f6717dae2dbcb6aedaadfa7eb5f403b109628356485a97f6cf7
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:82dc5edf423b3f9c377c9d2c80d1d19eaf15684872dc41d4baa9efddf082f350
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:440e0ac120a2a7e8dfcad6b53bb120667e293492d9bbcbe9d1ca0a6ed7b2dd62
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5e84e22ba7e21b8ec3e55283a53ea73a14f2bfd41eea5a80ca7a95360f799c52
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:24481e3ee1dab49893e7f5891e97e3287ec6f35105b6e927ce0acc7da24a6982
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:23150ab7d7d79cf1f5bc70f4f8e32da76ff06af123c395fb46b0be9e6ded7e1f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:fc03a63aada7586517d68c279fe59415b1fc0b3756ee87c5110f19c90712e903
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:142732544a7553f4eb203b314b3bdc76e5102d7ef3080f1fe36e8ddadffb9ca9
        version: 4.8.7
      entries:
      - name: rhacs-operator.v4.8.7
        version: 4.8.7
      - name: rhacs-operator.v4.8.6
        version: 4.8.6
      - name: rhacs-operator.v4.8.5
        version: 4.8.5
      - name: rhacs-operator.v4.8.4
        version: 4.8.4
      - name: rhacs-operator.v4.8.3
        version: 4.8.3
      - name: rhacs-operator.v4.8.2
        version: 4.8.2
      - name: rhacs-operator.v4.8.1
        version: 4.8.1
      - name: rhacs-operator.v4.8.0
        version: 4.8.0
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.8
    - currentCSV: rhacs-operator.v4.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
          createdAt: "2025-12-15T11:46:09.678434+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.8.0 < 4.9.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:4118ac0a9af4d6c38fcdde1236a963a47a41eb465d15a9a0bf90b30679a2b2f1
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e48f539bbe3b874be10dcc31ea61b074854a00d1bbccbbd3ec72b185345ba55e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        version: 4.9.2
      entries:
      - name: rhacs-operator.v4.9.2
        version: 4.9.2
      - name: rhacs-operator.v4.9.1
        version: 4.9.1
      - name: rhacs-operator.v4.9.0
        version: 4.9.0
      - name: rhacs-operator.v4.8.7
        version: 4.8.7
      - name: rhacs-operator.v4.8.6
        version: 4.8.6
      - name: rhacs-operator.v4.8.5
        version: 4.8.5
      - name: rhacs-operator.v4.8.4
        version: 4.8.4
      - name: rhacs-operator.v4.8.3
        version: 4.8.3
      - name: rhacs-operator.v4.8.2
        version: 4.8.2
      - name: rhacs-operator.v4.8.1
        version: 4.8.1
      - name: rhacs-operator.v4.8.0
        version: 4.8.0
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.9
    - currentCSV: rhacs-operator.v4.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
          createdAt: "2025-12-15T11:46:09.678434+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.8.0 < 4.9.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:4118ac0a9af4d6c38fcdde1236a963a47a41eb465d15a9a0bf90b30679a2b2f1
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e48f539bbe3b874be10dcc31ea61b074854a00d1bbccbbd3ec72b185345ba55e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        version: 4.9.2
      entries:
      - name: rhacs-operator.v4.9.2
        version: 4.9.2
      - name: rhacs-operator.v4.9.1
        version: 4.9.1
      - name: rhacs-operator.v4.9.0
        version: 4.9.0
      - name: rhacs-operator.v4.8.7
        version: 4.8.7
      - name: rhacs-operator.v4.8.6
        version: 4.8.6
      - name: rhacs-operator.v4.8.5
        version: 4.8.5
      - name: rhacs-operator.v4.8.4
        version: 4.8.4
      - name: rhacs-operator.v4.8.3
        version: 4.8.3
      - name: rhacs-operator.v4.8.2
        version: 4.8.2
      - name: rhacs-operator.v4.8.1
        version: 4.8.1
      - name: rhacs-operator.v4.8.0
        version: 4.8.0
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: stable
    defaultChannel: stable
    packageName: rhacs-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Datadog
      provider-url: ""
    name: datadog-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datadog-operator.v1.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadog"
                },
                "spec": {
                  "agent": {
                    "apm": {
                      "enabled": false
                    },
                    "log": {
                      "enabled": false,
                      "logsConfigContainerCollectAll": false
                    },
                    "process": {
                      "enabled": true,
                      "processCollection": false
                    },
                    "security": {
                      "compliance": {
                        "enabled": false
                      },
                      "runtime": {
                        "enabled": false
                      }
                    },
                    "systemProbe": {
                      "bpfDebugEnabled": false
                    }
                  },
                  "clusterAgent": {
                    "config": {
                      "admissionController": {
                        "enabled": false
                      },
                      "clusterChecksEnabled": false,
                      "externalMetrics": {
                        "enabled": false
                      }
                    },
                    "replicas": 2
                  },
                  "clusterChecksRunner": {
                    "replicas": 2
                  },
                  "clusterName": "\u003cCLUSTER_NAME\u003e",
                  "credentials": {
                    "apiKey": "\u003cDATADOG_API_KEY\u003e",
                    "appKey": "\u003cDATADOG_APP_KEY\u003e",
                    "token": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e"
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: registry.connect.redhat.com/datadog/operator@sha256:e1fb36e82b5438e3efd5768425651beadeb80e8698e0e0ca475d2a2e23386090
          description: Datadog provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with Datadog Operator.
          olm.skipRange: <1.0.4
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/DataDog/datadog-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgent Deployment with Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v1alpha1
          - description: DatadogAgent Deployment with the Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v2alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
        description: Datadog provides a modern monitoring and analytics platform.
          Gather metrics, logs and traces for full observability of your Kubernetes
          cluster with Datadog Operator.
        displayName: Datadog Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - registry.connect.redhat.com/datadog/operator-bundle@sha256:48b37460dd7245cf661009267c3353962f0f195efd6a3007c9cc70b51b91a9e3
        - registry.connect.redhat.com/datadog/operator@sha256:e1fb36e82b5438e3efd5768425651beadeb80e8698e0e0ca475d2a2e23386090
        version: 1.0.4
      entries:
      - name: datadog-operator.v1.0.4
        version: 1.0.4
      name: alpha
    - currentCSV: datadog-operator.v1.21.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgentProfile",
                "metadata": {
                  "name": "datadogagentprofile-sample"
                },
                "spec": {
                  "config": {
                    "override": {
                      "nodeAgent": {
                        "containers": {
                          "agent": {
                            "resources": {
                              "requests": {
                                "cpu": "256m"
                              }
                            }
                          }
                        }
                      }
                    }
                  },
                  "profileAffinity": {
                    "profileNodeAffinity": [
                      {
                        "key": "kubernetes.io/os",
                        "operator": "In",
                        "values": [
                          "linux"
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogDashboard",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "datadog-operator",
                    "app.kubernetes.io/instance": "datadogdashboard-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datadogdashboard",
                    "app.kubernetes.io/part-of": "datadog-operator"
                  },
                  "name": "datadogdashboard-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogGenericResource",
                "metadata": {
                  "name": "datadoggenericresource-notebook-sample"
                },
                "spec": {
                  "jsonSpec": "{\n  \"data\": {\n    \"attributes\": {\n      \"cells\": [\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"text\": \"## Some test markdown\\n\\n```js\\nvar x, y;\\nx = 5;\\ny = 6;\\n```\",\n              \"type\": \"markdown\"\n            }\n          },\n          \"type\": \"notebook_cells\"\n        },\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"requests\": [\n                {\n                  \"display_type\": \"line\",\n                  \"q\": \"avg:system.load.1{*}\",\n                  \"style\": {\n                    \"line_type\": \"solid\",\n                    \"line_width\": \"normal\",\n                    \"palette\": \"dog_classic\"\n                  }\n                }\n              ],\n              \"show_legend\": true,\n              \"type\": \"timeseries\",\n              \"yaxis\": {\n                \"scale\": \"linear\"\n              }\n            },\n            \"graph_size\": \"m\",\n            \"split_by\": {\n              \"keys\": [],\n              \"tags\": []\n            },\n            \"time\": null\n          },\n          \"type\": \"notebook_cells\"\n        }\n      ],\n      \"name\": \"Example-Notebook\",\n      \"status\": \"published\",\n      \"time\": {\n        \"live_span\": \"1h\"\n      }\n    },\n    \"type\": \"notebooks\"\n  }\n}",
                  "type": "notebook"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogPodAutoscaler",
                "metadata": {
                  "name": "datadogpodautoscaler-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogSLO",
                "metadata": {
                  "name": "datadogslo-sample"
                },
                "spec": {
                  "description": "This is an example metric SLO from datadog-operator",
                  "name": "datadogslo-sample",
                  "query": {
                    "denominator": "sum:requests.total{service:example,env:prod}.as_count()",
                    "numerator": "sum:requests.success{service:example,env:prod}.as_count()"
                  },
                  "tags": [
                    "service:example",
                    "env:prod"
                  ],
                  "targetThreshold": "99.9",
                  "timeframe": "7d",
                  "type": "metric"
                }
              },
              {
                "apiVersion": "datadoghq.com/v2alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadogagent-sample"
                },
                "spec": {
                  "features": {
                    "admissionController": {
                      "enabled": false
                    },
                    "apm": {
                      "enabled": false
                    },
                    "clusterChecks": {
                      "enabled": true,
                      "useClusterChecksRunners": true
                    },
                    "liveProcessCollection": {
                      "enabled": false
                    },
                    "logCollection": {
                      "containerCollectAll": true,
                      "enabled": true
                    }
                  },
                  "global": {
                    "clusterAgentToken": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e",
                    "clusterName": "\u003cCLUSTER_NAME\u003e",
                    "credentials": {
                      "apiKey": "\u003cDATADOG_API_KEY\u003e",
                      "appKey": "\u003cDATADOG_APP_KEY\u003e"
                    },
                    "criSocketPath": "/var/run/crio/crio.sock",
                    "kubelet": {
                      "tlsVerify": false
                    }
                  },
                  "override": {
                    "clusterAgent": {
                      "containers": {
                        "cluster-agent": {
                          "securityContext": {
                            "readOnlyRootFilesystem": false
                          }
                        }
                      },
                      "replicas": 2,
                      "serviceAccountName": "datadog-agent-scc"
                    },
                    "clusterChecksRunner": {
                      "replicas": 2
                    },
                    "nodeAgent": {
                      "hostNetwork": true,
                      "securityContext": {
                        "runAsUser": 0,
                        "seLinuxOptions": {
                          "level": "s0",
                          "role": "system_r",
                          "type": "spc_t",
                          "user": "system_u"
                        }
                      },
                      "serviceAccountName": "datadog-agent-scc"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: registry.connect.redhat.com/datadog/operator@sha256:4dc5129abae9b2ee0a82336f9aa943cf25e392488ddf829415b2d3e205c9f03a
          createdAt: "2025-12-16 22:23:39"
          description: |-
            Datadog provides a modern monitoring and analytics platform. Gather metrics, logs and traces for full observability of your Kubernetes cluster with Datadog Operator.

            **WARNING**: Starting from version `1.21.0`, the Datadog Operator DatadogAgent controller only watches by default the namespace where it is installed. This means your `DatadogAgent` custom resource must be created in the same namespace as the Operator. This can be changed by removing the `DD_AGENT_WATCH_NAMESPACE` environment variable from the Datadog Operator deployment inside the ClusterServiceVersion YAML.
          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.skipRange: '>=1.7.0 <1.21.0'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/DataDog/datadog-operator
          support: Datadog, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgentInternal is the Schema for the datadogagentinternals
              API
            displayName: Datadog Agent Internal
            kind: DatadogAgentInternal
            name: datadogagentinternals.datadoghq.com
            version: v1alpha1
          - description: DatadogAgentProfile is the Schema for the datadogagentprofiles
              API
            displayName: Datadog Agent Profile
            kind: DatadogAgentProfile
            name: datadogagentprofiles.datadoghq.com
            version: v1alpha1
          - description: DatadogAgent Deployment with the Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v2alpha1
          - description: DatadogDashboard is the Schema for the datadogdashboards
              API
            displayName: Datadog Dashboard
            kind: DatadogDashboard
            name: datadogdashboards.datadoghq.com
            version: v1alpha1
          - kind: DatadogGenericResource
            name: datadoggenericresources.datadoghq.com
            version: v1alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha2
          - description: DatadogSLO allows a user to define and manage datadog SLOs
              from Kubernetes cluster.
            displayName: Datadog SLO
            kind: DatadogSLO
            name: datadogslos.datadoghq.com
            version: v1alpha1
        description: |-
          Datadog provides a modern monitoring and analytics platform. Gather metrics, logs and traces for full observability of your Kubernetes cluster with Datadog Operator.

          **WARNING**: Starting from version `1.21.0`, the Datadog Operator DatadogAgent controller only watches by default the namespace where it is installed. This means your `DatadogAgent` custom resource must be created in the same namespace as the Operator. This can be changed by removing the `DD_AGENT_WATCH_NAMESPACE` environment variable from the Datadog Operator deployment inside the ClusterServiceVersion YAML.
        displayName: Datadog Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - registry.connect.redhat.com/datadog/operator-bundle@sha256:2456e6a9fc773f515eafb5e6c3d11aa7c65e07f6cf8324d32630895d4800009e
        - registry.connect.redhat.com/datadog/operator@sha256:4dc5129abae9b2ee0a82336f9aa943cf25e392488ddf829415b2d3e205c9f03a
        version: 1.21.0
      entries:
      - name: datadog-operator.v1.21.0
        version: 1.21.0
      - name: datadog-operator.v1.20.0
        version: 1.20.0
      - name: datadog-operator.v1.19.1
        version: 1.19.1
      - name: datadog-operator.v1.18.0
        version: 1.18.0
      - name: datadog-operator.v1.17.0
        version: 1.17.0
      - name: datadog-operator.v1.16.0
        version: 1.16.0
      - name: datadog-operator.v1.15.1
        version: 1.15.1
      - name: datadog-operator.v1.14.0
        version: 1.14.0
      - name: datadog-operator.v1.13.0
        version: 1.13.0
      - name: datadog-operator.v1.12.1
        version: 1.12.1
      - name: datadog-operator.v1.11.1
        version: 1.11.1
      - name: datadog-operator.v1.10.0
        version: 1.10.0
      - name: datadog-operator.v1.9.0
        version: 1.9.0
      - name: datadog-operator.v1.8.0
        version: 1.8.0
      - name: datadog-operator.v1.7.0
        version: 1.7.0
      - name: datadog-operator.v1.6.0
        version: 1.6.0
      - name: datadog-operator.v1.5.0
        version: 1.5.0
      - name: datadog-operator.v1.4.0
        version: 1.4.0
      - name: datadog-operator.v1.3.0
        version: 1.3.0
      - name: datadog-operator.v1.2.1
        version: 1.2.1
      name: stable
    defaultChannel: stable
    packageName: datadog-operator-certified
    provider:
      name: Datadog
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cryostat-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cryostat-operator.v4.1.0-13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.cryostat.io/v1beta2",
                "kind": "Cryostat",
                "metadata": {
                  "name": "cryostat-sample"
                },
                "spec": {
                  "enableCertManager": true,
                  "eventTemplates": [],
                  "networkPolicies": {},
                  "reportOptions": {
                    "replicas": 0
                  },
                  "trustedCertSecrets": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring, Developer Tools
          containerImage: registry.redhat.io/cryostat/cryostat-rhel9-operator@sha256:d2ce6200997cf6b4894b556d8d149212df3408cd63004aa85d91beb853bac153
          createdAt: "2025-12-17T19:33:36Z"
          description: JVM monitoring and profiling tool
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=2.0.0 <4.1.0'
          olm.substitutesFor: cryostat-operator.v4.1.0
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "operator.cryostat.io/v1beta2",
              "kind": "Cryostat",
              "metadata": {
                "name": "cryostat-sample"
              },
              "spec": {
                "enableCertManager": true,
                "reportOptions": {
                  "replicas": 0
                }
              }
            }
          operators.openshift.io/valid-subscription: '["Red Hat build of OpenJDK"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/cryostatio/cryostat-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cryostat allows you to install Cryostat for a single namespace,
              or multiple namespaces. It contains configuration options for controlling
              the Deployment of the Cryostat application and its related components.
              A Cryostat instance must be created to instruct the operator to deploy
              the Cryostat application.
            displayName: Cryostat
            kind: Cryostat
            name: cryostats.operator.cryostat.io
            version: v1beta2
          - description: Cryostat allows you to install Cryostat for a single namespace.
              It contains configuration options for controlling the Deployment of
              the Cryostat application and its related components. A Cryostat instance
              must be created to instruct the operator to deploy the Cryostat application.
            displayName: Cryostat
            kind: Cryostat
            name: cryostats.operator.cryostat.io
            version: v1beta1
        description: |
          The Red Hat build of Cryostat provides a cloud-based solution for interacting with the JDK Flight Recorder already present in OpenJDK 11+ JVMs. With Cryostat, users can remotely start, stop, retrieve, and even analyze JFR event data, providing the capability to easily take advantage of Flight Recorder's extremely low runtime cost and overhead and the flexibility to monitor applications and analyze recording data without transferring data outside of the cluster the application runs within.
          ##Prerequisites
          Cryostat requires [cert-manager](https://cert-manager.io/) to run. If not already installed in your cluster, please [install](https://cert-manager.io/docs/installation/) it using your preferred method.
          When running on Kubernetes, the operator also requires [Ingress configurations](https://github.com/cryostatio/cryostat-operator/blob/v4.0.0/docs/config.md#network-options) for each of its services to make them available outside of the cluster. The user is responsible for providing the hostnames for each Ingress.
        displayName: Red Hat build of Cryostat
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - flightrecorder
        - java
        - jdk
        - jfr
        - jmc
        - missioncontrol
        - monitoring
        - profiling
        - diagnostic
        links:
        - name: Upstream Project
          url: https://github.com/cryostatio/cryostat
        - name: Website
          url: https://cryostat.io/
        maintainers:
        - email: cryostat-development@googlegroups.com
          name: The Cryostat Authors
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/ubi9/nginx-124@sha256:f3a04b52db496c383a00252832d8809baff203145a53c35cbb71c3ab45cd8a10
        - registry.redhat.io/cryostat/cryostat-agent-init-rhel9@sha256:94ebd8d92359c1cfa18f9d3ffb08df02af53253c8b51d578b89c644806bbbdc4
        - registry.redhat.io/cryostat/cryostat-grafana-dashboard-rhel9@sha256:6fa1ef9bc8477162deda942ba4ca3f79b87928ad93ebefd4cb25eeeae0a0b33b
        - registry.redhat.io/cryostat/cryostat-rhel9-operator@sha256:d2ce6200997cf6b4894b556d8d149212df3408cd63004aa85d91beb853bac153
        - registry.redhat.io/cryostat/cryostat-rhel9@sha256:e66a567ab95fee5dc4cbee0917a46bd45010d691d9e12c553c82275711cf6705
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-rhel9-operator@sha256:a4e12329119133ab09754489d29110f13f1793b01e30b5d19b9ab0b9525b7360
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:5555fb6b7e8907a52f54fd93a19105e36fded2407c344d938dbdc0723b03baed
        - registry.redhat.io/cryostat/cryostat-db-rhel9@sha256:1715bf1197a9a95f8f54ab02ca167448c1390b385c901645b062d066f0ca5459
        - registry.redhat.io/cryostat/cryostat-operator-bundle@sha256:b634b9e8b54b89b9dc2119961b63d0288fdad007a1c48cc12b05595ad97fee83
        - registry.redhat.io/cryostat/cryostat-reports-rhel9@sha256:f7ac0c925c4728e482efc5f553c63a08e2dd453927e5eae606f83731d889c6a1
        - registry.redhat.io/cryostat/cryostat-openshift-console-plugin-rhel9@sha256:d64f56fcaa6c764edb1bb43c8a71af43c27aba56e36c8bac812c40a725a53ddc
        - registry.redhat.io/cryostat/cryostat-storage-rhel9@sha256:89bb337dd42d319e1fee74ac7650f30594461b7c56caa8c52f2628372e19ee3d
        - registry.redhat.io/cryostat/jfr-datasource-rhel9@sha256:b6c08667d49f70c3ba26a09a62a6224bf8c5d579be1988c0caca5212fe7d3d7a
        version: 4.1.0+13
      entries:
      - name: cryostat-operator.v4.1.0-13
        version: 4.1.0+13
      - name: cryostat-operator.v4.1.0
        version: 4.1.0
      - name: cryostat-operator.v4.0.3-3
        version: 4.0.3+3
      - name: cryostat-operator.v4.0.3
        version: 4.0.3
      - name: cryostat-operator.v4.0.2-4
        version: 4.0.2+4
      - name: cryostat-operator.v4.0.2
        version: 4.0.2
      - name: cryostat-operator.v4.0.1
        version: 4.0.1
      - name: cryostat-operator.v4.0.1-5
        version: 4.0.1+5
      - name: cryostat-operator.v4.0.1-4
        version: 4.0.1+4
      - name: cryostat-operator.v4.0.1-3
        version: 4.0.1+3
      - name: cryostat-operator.v4.0.1-2
        version: 4.0.1+2
      - name: cryostat-operator.v4.0.0-9
        version: 4.0.0+9
      - name: cryostat-operator.v4.0.0
        version: 4.0.0
      - name: cryostat-operator.v4.0.0-11
        version: 4.0.0+11
      - name: cryostat-operator.v4.0.0-10
        version: 4.0.0+10
      - name: cryostat-operator.v3.0.1-7
        version: 3.0.1+7
      - name: cryostat-operator.v3.0.1-9
        version: 3.0.1+9
      - name: cryostat-operator.v3.0.1-8
        version: 3.0.1+8
      - name: cryostat-operator.v3.0.1
        version: 3.0.1
      - name: cryostat-operator.v3.0.1-6
        version: 3.0.1+6
      - name: cryostat-operator.v3.0.1-5
        version: 3.0.1+5
      - name: cryostat-operator.v3.0.1-3
        version: 3.0.1+3
      - name: cryostat-operator.v3.0.1-13
        version: 3.0.1+13
      - name: cryostat-operator.v3.0.1-12
        version: 3.0.1+12
      - name: cryostat-operator.v3.0.1-11
        version: 3.0.1+11
      - name: cryostat-operator.v3.0.1-10
        version: 3.0.1+10
      - name: cryostat-operator.v3.0.0-6
        version: 3.0.0+6
      - name: cryostat-operator.v3.0.0-8
        version: 3.0.0+8
      - name: cryostat-operator.v3.0.0-12
        version: 3.0.0+12
      - name: cryostat-operator.v3.0.0
        version: 3.0.0
      - name: cryostat-operator.v2.4.0
        version: 2.4.0
      - name: cryostat-operator.v2.4.0-8
        version: 2.4.0+8
      - name: cryostat-operator.v2.4.0-7
        version: 2.4.0+7
      - name: cryostat-operator.v2.4.0-6
        version: 2.4.0+6
      - name: cryostat-operator.v2.4.0-4
        version: 2.4.0+4
      - name: cryostat-operator.v2.4.0-3
        version: 2.4.0+3
      - name: cryostat-operator.v2.3.1-6
        version: 2.3.1+6
      - name: cryostat-operator.v2.3.1-8
        version: 2.3.1+8
      - name: cryostat-operator.v2.3.1-9
        version: 2.3.1+9
      - name: cryostat-operator.v2.3.1
        version: 2.3.1
      - name: cryostat-operator.v2.3.0
        version: 2.3.0
      - name: cryostat-operator.v2.3.0-6
        version: 2.3.0+6
      - name: cryostat-operator.v2.2.1-14
        version: 2.2.1+14
      - name: cryostat-operator.v2.2.1-8
        version: 2.2.1+8
      - name: cryostat-operator.v2.2.1-5
        version: 2.2.1+5
      - name: cryostat-operator.v2.2.1-13
        version: 2.2.1+13
      - name: cryostat-operator.v2.2.1-12
        version: 2.2.1+12
      - name: cryostat-operator.v2.2.1-10
        version: 2.2.1+10
      - name: cryostat-operator.v2.2.1
        version: 2.2.1
      - name: cryostat-operator.v2.2.0
        version: 2.2.0
      - name: cryostat-operator.v2.1.1-2.1659469835.p
        version: 2.1.1+2.1659469835.p
      - name: cryostat-operator.v2.1.1-2.1655334614.p
        version: 2.1.1+2.1655334614.p
      - name: cryostat-operator.v2.1.1
        version: 2.1.1
      - name: cryostat-operator.v2.1.0
        version: 2.1.0
      name: stable
    defaultChannel: stable
    packageName: cryostat-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-spark-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: spark-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/spark-k8s-operator@sha256:3fa6f5fc9c9a7fa217bfcdc03aed1896e52edbc60b8173404eb102a4e099a83b
          description: Stackable Operator for Apache Spark
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/spark-k8s-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for SparkApplicationSpec via
              `CustomResource`
            displayName: sparkapplications.spark.stackable.tech
            kind: SparkApplication
            name: sparkapplications.spark.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for SparkHistoryServerSpec via
              `CustomResource`
            displayName: sparkhistoryservers.spark.stackable.tech
            kind: SparkHistoryServer
            name: sparkhistoryservers.spark.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for SparkConnectServerSpec via
              `CustomResource`
            displayName: sparkconnectservers.spark.stackable.tech
            kind: SparkConnectServer
            name: sparkconnectservers.spark.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Spark
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - spark-k8s
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/spark-k8s-operator@sha256:3fa6f5fc9c9a7fa217bfcdc03aed1896e52edbc60b8173404eb102a4e099a83b
        - registry.connect.redhat.com/stackable/stackable-apache-spark-k8s-operator@sha256:211d435f78730b3fa265df3f6a1a9c4649b060f1bad2b1709c935740deb94057
        version: 25.11.0
      entries:
      - name: spark-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-spark-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-kafka-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-kafka-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/kafka-controller:1.3.0
          createdAt: "2025-11-29T05:27:24Z"
          description: AWS Kafka controller is a service controller for managing Kafka
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster represents the state of an AWS kafka Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.kafka.services.k8s.aws
            version: v1alpha1
          - description: Configuration represents the state of an AWS kafka Configuration
              resource.
            displayName: Configuration
            kind: Configuration
            name: configurations.kafka.services.k8s.aws
            version: v1alpha1
          - description: ServerlessCluster represents the state of an AWS kafka ServerlessCluster
              resource.
            displayName: ServerlessCluster
            kind: ServerlessCluster
            name: serverlessclusters.kafka.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Kafka resources in AWS from within your Kubernetes cluster.

          **About Amazon Kafka**

          Amazon Managed Streaming for Apache Kafka (Amazon MSK) is a fully managed AWS streaming data service makes it easy for you to build and run applications that use Apache Kafka to process streaming data without needing to become an expert in operating Apache Kafka clusters. Amazon MSK manages the provisioning, configuration, and maintenance of Apache Kafka clusters and Apache ZooKeeper nodes for you. Amazon MSK also shows key Apache Kafka performance metrics in the AWS Console.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Kafka Developer Resources
          url: https://aws.amazon.com/msk/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: kafka maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/kafka-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-kafka-controller@sha256:adf201fadd82f900d371ba5dd17dca2cc205cf2e8f796af191cf45c73a1745b3
        version: 1.3.0
      entries:
      - name: ack-kafka-controller.v1.3.0
        version: 1.3.0
      - name: ack-kafka-controller.v1.2.2
        version: 1.2.2
      - name: ack-kafka-controller.v1.2.1
        version: 1.2.1
      - name: ack-kafka-controller.v1.2.0
        version: 1.2.0
      - name: ack-kafka-controller.v1.1.3
        version: 1.1.3
      - name: ack-kafka-controller.v1.1.2
        version: 1.1.2
      - name: ack-kafka-controller.v1.1.1
        version: 1.1.1
      - name: ack-kafka-controller.v1.1.0
        version: 1.1.0
      - name: ack-kafka-controller.v1.0.14
        version: 1.0.14
      - name: ack-kafka-controller.v1.0.13
        version: 1.0.13
      - name: ack-kafka-controller.v1.0.12
        version: 1.0.12
      - name: ack-kafka-controller.v1.0.11
        version: 1.0.11
      - name: ack-kafka-controller.v1.0.10
        version: 1.0.10
      - name: ack-kafka-controller.v1.0.8
        version: 1.0.8
      - name: ack-kafka-controller.v1.0.7
        version: 1.0.7
      - name: ack-kafka-controller.v1.0.6
        version: 1.0.6
      - name: ack-kafka-controller.v1.0.5
        version: 1.0.5
      - name: ack-kafka-controller.v1.0.4
        version: 1.0.4
      - name: ack-kafka-controller.v1.0.3
        version: 1.0.3
      - name: ack-kafka-controller.v1.0.2
        version: 1.0.2
      - name: ack-kafka-controller.v1.0.1
        version: 1.0.1
      - name: ack-kafka-controller.v1.0.0
        version: 1.0.0
      - name: ack-kafka-controller.v0.0.14
        version: 0.0.14
      - name: ack-kafka-controller.v0.0.12
        version: 0.0.12
      - name: ack-kafka-controller.v0.0.11
        version: 0.0.11
      - name: ack-kafka-controller.v0.0.10
        version: 0.0.10
      - name: ack-kafka-controller.v0.0.9
        version: 0.0.9
      - name: ack-kafka-controller.v0.0.8
        version: 0.0.8
      - name: ack-kafka-controller.v0.0.7
        version: 0.0.7
      - name: ack-kafka-controller.v0.0.6
        version: 0.0.6
      - name: ack-kafka-controller.v0.0.5
        version: 0.0.5
      - name: ack-kafka-controller.v0.0.4
        version: 0.0.4
      - name: ack-kafka-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-kafka-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: gitwebhook-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitwebhook-operator.v0.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GitWebhook",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "gitwebhook-operator",
                    "app.kubernetes.io/instance": "gitwebhook-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "gitwebhook",
                    "app.kubernetes.io/part-of": "gitwebhook-operator"
                  },
                  "name": "gitwebhook-sample"
                },
                "spec": null
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/redhat-cop/gitwebhook-operator@sha256:2810d75eebb24069dbbedf6a82285136c6f16b4cc58b59f1b0fbdc38560cf8a8
          createdAt: "2024-05-10T18:17:13Z"
          description: An operator to create git webhooks declaratively
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: gitwebhook-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/gitwebhook-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitWebhook is the Schema for the gitwebhooks API
            displayName: Git Webhook
            kind: GitWebhook
            name: gitwebhooks.redhatcop.redhat.io
            version: v1alpha1
        description: "This operator automates the setting up of git webhooks. Its
          main purpose is to stream line the configuration of operators such as Tekton
          or ArgoCD which rely on git webhooks for some of their functionalities.\n\n##
          The GitWebhook CRD\n \nA CRD is provided by this operator to create a git
          web hook, here is an example for github\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          GitWebhook\nmetadata:\n  name: gitwebhook-github\nspec:\n  gitHub:\n    gitServerCredentials:\n
          \     name: github-pat\n  repositoryOwner: ${repo_owner}\n  ownerType: user\n
          \ repositoryName: ${repo_name}\n  webhookURL: https://hellowebhook.com\n
          \ insecureSSL: false\n  webhookSecret:\n    name: webhook-secret\n  events:\n
          \   - push  \n  contentType: json\n  active: true  \n```    \n\nhere is
          an explanation of each field:\n\n- `gihub` specifies how to connect to the
          git api server. It also requires a local reference to a secret (in the same
          namespace) containing a key `token` with a valid github token to be used
          to authenticate. A similar `gitLab` section exists when connecting to gitlab.
          Only one of `gitLab` or `gitHub` can be defined. \n- `repositoryOwner` and
          `repositoryName` identify the repository for which we want to receive events.\n-
          `ownerType` can have two values: `user` and `organization` and identifies
          the kind of owner.\n- `webhookURL` is the URL for to be called.\n - `insecureSSL`
          defines whether the target URL certificate should be validated (default
          `false`). \n- `webhookSecret` defines a local reference to a secret containing
          the `secret` key. The value is a shared secret between the webhook caller
          and the received for farther validation or identification of the caller.\n-
          `events` is the list of the repo-level events that the webhook should generate.
          The list of valid events for github can be found [here](https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads).
          The list of valid events for gitlab can be found [here](https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html).\n
          - `contentType` defines the format of the webhook payload (default `json`)
          (github).\n - `active` whether the webhook should be turned on (default
          `true`) (github).\n - `pushEventBranchFilter` a regular expression to filter
          from which branches push events should be generated (gitlab only).\n\n##
          Security Considerations\n\nThis operator does not own credentials for the
          git server, but instead always allocate a new connection based on the credentials
          referenced in the CR and every reconcile cycle. As a result there is no
          risk of security escalation or credential leaking between tenants of a cluster
          using this operator. On the other hand it is the responsibility of the namespace
          owners or the platform owner to ensure that valid git credentials are always
          available in the namespace where the GitWebhook CRs need to defined.\n\n##
          Current support\n\nCurrently this operator support creating repo-level webhooks
          for github and gitlab. Potentially this operator could be extended to support
          org-level webhook or other git systems. Contributions are welcome.  "
        displayName: GitWebhook operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - webhook
        - github
        - gitlab
        links:
        - name: GitWbehook Operator
          url: https://github.com/redhat-cop/gitwebhook-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/gitwebhook-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d99a8d144816b951a67648c12c0b988936ccd25cf3754f3cd85ab8c01592248f
        - quay.io/community-operator-pipeline-prod/gitwebhook-operator@sha256:2d33e4f4f4b607ee2006481efc7ad9341049085ef988777d23e586f7406a5109
        - quay.io/redhat-cop/gitwebhook-operator@sha256:2810d75eebb24069dbbedf6a82285136c6f16b4cc58b59f1b0fbdc38560cf8a8
        version: 0.1.2
      entries:
      - name: gitwebhook-operator.v0.1.2
        version: 0.1.2
      - name: gitwebhook-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: gitwebhook-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-route53-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-route53-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/route53-controller:1.2.0
          createdAt: "2025-11-29T03:54:20Z"
          description: AWS Route53 controller is a service controller for managing
            Route53 resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HealthCheck represents the state of an AWS route53 HealthCheck
              resource.
            displayName: HealthCheck
            kind: HealthCheck
            name: healthchecks.route53.services.k8s.aws
            version: v1alpha1
          - description: HostedZone represents the state of an AWS route53 HostedZone
              resource.
            displayName: HostedZone
            kind: HostedZone
            name: hostedzones.route53.services.k8s.aws
            version: v1alpha1
          - description: RecordSet represents the state of an AWS route53 RecordSet
              resource.
            displayName: RecordSet
            kind: RecordSet
            name: recordsets.route53.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Route53 resources in AWS from within your Kubernetes cluster.

          **About Amazon Route53**

          Amazon Route 53 is a highly available and scalable Domain Name System (DNS) web service. You can use Route 53 to perform three main functions in any combination: domain registration, DNS routing, and health checking.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Route53
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - route53
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Route53 Developer Resources
          url: https://docs.aws.amazon.com/route53/index.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: eks maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/route53-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-route53-controller@sha256:a584b4a23fc60948a8d6425922a484459daaa711766190bd85ae500c1407dbd1
        version: 1.2.0
      entries:
      - name: ack-route53-controller.v1.2.0
        version: 1.2.0
      - name: ack-route53-controller.v1.1.2
        version: 1.1.2
      - name: ack-route53-controller.v1.1.1
        version: 1.1.1
      - name: ack-route53-controller.v1.1.0
        version: 1.1.0
      - name: ack-route53-controller.v1.0.6
        version: 1.0.6
      - name: ack-route53-controller.v1.0.5
        version: 1.0.5
      - name: ack-route53-controller.v1.0.3
        version: 1.0.3
      - name: ack-route53-controller.v1.0.2
        version: 1.0.2
      - name: ack-route53-controller.v0.1.0
        version: 0.1.0
      - name: ack-route53-controller.v0.0.28
        version: 0.0.28
      - name: ack-route53-controller.v0.0.27
        version: 0.0.27
      - name: ack-route53-controller.v0.0.26
        version: 0.0.26
      - name: ack-route53-controller.v0.0.25
        version: 0.0.25
      - name: ack-route53-controller.v0.0.24
        version: 0.0.24
      - name: ack-route53-controller.v0.0.23
        version: 0.0.23
      - name: ack-route53-controller.v0.0.22
        version: 0.0.22
      - name: ack-route53-controller.v0.0.20
        version: 0.0.20
      - name: ack-route53-controller.v0.0.19
        version: 0.0.19
      - name: ack-route53-controller.v0.0.18
        version: 0.0.18
      - name: ack-route53-controller.v0.0.17
        version: 0.0.17
      - name: ack-route53-controller.v0.0.16
        version: 0.0.16
      - name: ack-route53-controller.v0.0.15
        version: 0.0.15
      - name: ack-route53-controller.v0.0.14
        version: 0.0.14
      - name: ack-route53-controller.v0.0.13
        version: 0.0.13
      - name: ack-route53-controller.v0.0.9
        version: 0.0.9
      - name: ack-route53-controller.v0.0.6
        version: 0.0.6
      - name: ack-route53-controller.v0.0.4
        version: 0.0.4
      - name: ack-route53-controller.v0.0.3
        version: 0.0.3
      - name: ack-route53-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-route53-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Silicom Ltd.
      provider-url: http://www.silicom-usa.com
    name: silicom-sts-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: silicom-sts-operator.v0.0.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "gm-1",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    }
                  ],
                  "mode": "T-GM.8275.1",
                  "namespace": "openshift-operators",
                  "nodeSelector": {
                    "sts.silicom.com/config": "gm-1"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "bc-1"
                },
                "spec": {
                  "aprLevel": 0,
                  "domainNumber": 24,
                  "esmcMode": 1,
                  "forwardable": 0,
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Slave",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "holdoff": 500,
                      "ipv4": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    }
                  ],
                  "mode": "T-TBC.8275.1",
                  "mode10MHz": 2,
                  "modePPS": 2,
                  "namespace": "openshift-operators",
                  "nodeSelector": {
                    "sts.silicom.com/config": "bc-1"
                  },
                  "phyLedsCtl": 0,
                  "priority2": 128,
                  "src10MHz": 1,
                  "srcPPS": 1,
                  "syncOption": 1,
                  "synceCpu": 10,
                  "synceRecClkPort": 0,
                  "tracePtpMsg": -1,
                  "twoStep": 0
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsNode",
                "metadata": {
                  "name": "worker2"
                },
                "spec": null,
                "status": {
                  "ethInterfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "pciAddr": "02:00.0",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "pciAddr": "02:00.1",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "pciAddr": "02:00.2",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f3",
                      "ethPort": 3,
                      "pciAddr": "02:00.3",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f4",
                      "ethPort": 4,
                      "pciAddr": "02:00.4",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f5",
                      "ethPort": 5,
                      "pciAddr": "02:00.5",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f6",
                      "ethPort": 6,
                      "pciAddr": "02:00.6",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f7",
                      "ethPort": 7,
                      "pciAddr": "02:00.7",
                      "status": "down"
                    }
                  ],
                  "gpsStatus": {
                    "active": 0,
                    "device": "",
                    "lat": "",
                    "lon": "",
                    "mode": 0,
                    "time": "2021-12-01T09:57:10.968Z"
                  },
                  "tsyncStatus": {
                    "mode": "PTP Master Mode",
                    "status": "Normal Status",
                    "time": "Wed, 01 Dec 2021 09:57:10 UTC"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsOperatorConfig",
                "metadata": {
                  "name": "sts-operator-config",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "images": null,
                  "sro": null
                }
              }
            ]
          capabilities: Basic Install
          categories: Drivers and plugins
          certified: "false"
          containerImage: quay.io/silicom/sts-operator:0.0.6
          createdAt: 2021-11-17T10:21:24 CET
          description: |
            This Operator is a Kubernetes custom controller whose goal
            is to serve the installation and lifecycle management of
            Silicom STS device plugins for Kubernetes.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io.bundle.channels.v1: alpha
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/silicomdk/sts-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StsConfig is the Schema for the stsconfigs API
            displayName: Sts Config
            kind: StsConfig
            name: stsconfigs.sts.silicom.com
            version: v1alpha1
          - description: StsNode is the Schema for the stsnodes API
            displayName: Sts Node
            kind: StsNode
            name: stsnodes.sts.silicom.com
            version: v1alpha1
          - description: StsOperatorConfig is the Schema for the stsoperatorconfigs
              API
            displayName: Sts Operator Config
            kind: StsOperatorConfig
            name: stsoperatorconfigs.sts.silicom.com
            version: v1alpha1
        description: |
          Silicom STS line card for 4G and 5G NIC enable real-time data transmission
          with high timing accuracy at the lowest cost to power 5G DRAN and CRAN edge
          deployments.

          * Support 1588/PTP over IPv4 / IPV6, IEEE1588v2
          * Support SyncE /ITU-T G.8262
          * T-BC/T-TSC Boundary Clock and TSC Slave Clock /G.8273.2
          * T-GM Grand Master /G.8273.1 per G.8275.1 PTP Profile
          * PRTC Primary Reference Time Clock Class B/G.8272
          * T-TC Transparent Clock /G.8273.3
          * 1588 Software Stack and Servo Software in x86
          * [Silicom STS2 Card](https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/p410g8ts81-timesync-server-adapter)

          ### Prequisites:
          * [NFD Operator](https://operatorhub.io/operator/nfd-operator "NFD operator needed for the discovery of STS cards").
          * [SRO Operator](https://github.com/openshift/special-resource-operator)
        displayName: Silicom STS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sts
        - silicom
        - ptp
        links:
        - name: GitHub Repository
          url: https://github.com/silicomDK/sts-operator
        - name: Github SRO Helm Charts
          url: https://github.com/silicomDK/sts2-charts
        - name: Silicom Ltd.
          url: http://www.silicom-usa.com
        maintainers:
        - email: rmr@silicom.dk
          name: Ryan M. Raasch
        maturity: beta
        provider:
          name: Silicom Ltd.
          url: http://www.silicom-usa.com
        relatedImages:
        - quay.io/silicom/ice-driver-src@sha256:ca728f648769d31501cdedda92554bcfa890754405b0b06d41629cea47707da8
        - quay.io/silicom/tsyncd@sha256:78be78ec8939f025f9a8b899693ab77b3990116d1c7ffb2115c620b7c3382d9d
        - quay.io/silicom/gpsd@sha256:649e8a6c524920e1c564d8f797b8d64235b2527aa923f94bc9c7a0b7aba8ae7f
        - quay.io/silicom/sts-operator:0.0.6
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/silicom-sts-operator@sha256:5d4e4e62b03888bcbf6336934f2ddf5c5cb3d91bc8482a3aa1697e09625c6865
        - quay.io/silicom/grpc-tsyncd@sha256:aac7233423439e352d8eb39cef63e479c30c2f80b063c84ffc8797cc5a045117
        - quay.io/silicom/phc2sys@sha256:0f3b63a3059b7d6158a916814281097f0d418b99a5fac9e8e5fd9bae58fb0b74
        - quay.io/silicom/sts-plugin@sha256:44339fd400d46d9dddb02c2da47c6f9f96ad2605a5c6de8a7dce2f8c3da3bb57
        - quay.io/silicom/tsync_extts@sha256:be6a5950a5fdc6fdf8015767901856bf173d01bdc803be7141e4f9795ab1478a
        version: 0.0.6
      entries:
      - name: silicom-sts-operator.v0.0.6
        version: 0.0.6
      - name: silicom-sts-operator.v0.0.5
        version: 0.0.5
      - name: silicom-sts-operator.v0.0.4
        version: 0.0.4
      - name: silicom-sts-operator.v0.0.3
        version: 0.0.3
      - name: silicom-sts-operator.v0.0.2
        version: 0.0.2
      - name: silicom-sts-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: silicom-sts-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "gm-1",
                  "namespace": "sts-silicom"
                },
                "spec": {
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    }
                  ],
                  "mode": "T-GM.8275.1",
                  "namespace": "sts-silicom",
                  "nodeSelector": {
                    "sts.silicom.com/config": "gm-1"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "bc-1"
                },
                "spec": {
                  "aprLevel": 0,
                  "domainNumber": 24,
                  "esmcMode": 1,
                  "forwardable": 0,
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Slave",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "holdoff": 500,
                      "ipv4": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    }
                  ],
                  "mode": "T-TBC.8275.1",
                  "mode10MHz": 2,
                  "modePPS": 2,
                  "namespace": "sts-silicom",
                  "nodeSelector": {
                    "sts.silicom.com/config": "bc-1"
                  },
                  "phyLedsCtl": 0,
                  "priority2": 128,
                  "src10MHz": 1,
                  "srcPPS": 1,
                  "syncOption": 1,
                  "synceCpu": 10,
                  "synceRecClkPort": 0,
                  "tracePtpMsg": -1,
                  "twoStep": 0
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsNode",
                "metadata": {
                  "name": "worker2"
                },
                "spec": null,
                "status": {
                  "ethInterfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "pciAddr": "02:00.0",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "pciAddr": "02:00.1",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "pciAddr": "02:00.2",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f3",
                      "ethPort": 3,
                      "pciAddr": "02:00.3",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f4",
                      "ethPort": 4,
                      "pciAddr": "02:00.4",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f5",
                      "ethPort": 5,
                      "pciAddr": "02:00.5",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f6",
                      "ethPort": 6,
                      "pciAddr": "02:00.6",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f7",
                      "ethPort": 7,
                      "pciAddr": "02:00.7",
                      "status": "down"
                    }
                  ],
                  "gpsStatus": {
                    "active": 0,
                    "device": "",
                    "lat": "",
                    "lon": "",
                    "mode": 0,
                    "time": "2021-12-01T09:57:10.968Z"
                  },
                  "tsyncStatus": {
                    "mode": "PTP Master Mode",
                    "status": "Normal Status",
                    "time": "Wed, 01 Dec 2021 09:57:10 UTC"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsOperatorConfig",
                "metadata": {
                  "name": "sts-operator-config"
                },
                "spec": {
                  "gpsSvcPort": 2947,
                  "grpcSvcPort": 50051,
                  "images": {
                    "gpsd": "quay.io/silicom/gpsd:3.23.1",
                    "grpcTsyncd": "quay.io/silicom/grpc-tsyncd:2.1.0.0",
                    "phcs2Sys": "quay.io/silicom/phcs2sys:3.1.1",
                    "stsPlugin": "quay.io/silicom/sts-plugin:0.0.2",
                    "ts2Phcs": "quay.io/silicom/ts2phcs:1.0.0",
                    "tsyncd": "quay.io/silicom/tsyncd:2.1.0.0"
                  },
                  "namespace": "sts-silicom",
                  "sro": {
                    "chart": {
                      "name": "ice-special-resource",
                      "repository": {
                        "name": "ice-special-resource",
                        "url": "http://ice-driver-src"
                      },
                      "version": "0.0.1"
                    },
                    "iceVersion": "1.7.16",
                    "namespace": "openshift-operators",
                    "srcImage": "quay.io/silicom/ice-driver-src:1.7.16",
                    "srcSvcPort": 3000
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Drivers and plugins
          certified: "false"
          containerImage: quay.io/silicom/sts-operator:0.0.2
          createdAt: 2021-11-17T10:21:24 CET
          description: This Operator is a Kubernetes custom controller whose goal
            is to serve the installation and lifecycle management of Silicom STS device
            plugins for Kubernetes.
          operators.operatorframework.io.bundle.channels.v1: stable,development
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/silicomdk/sts-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StsConfig is the Schema for the stsconfigs API
            displayName: Sts Config
            kind: StsConfig
            name: stsconfigs.sts.silicom.com
            version: v1alpha1
          - description: StsNode is the Schema for the stsnodes API
            displayName: Sts Node
            kind: StsNode
            name: stsnodes.sts.silicom.com
            version: v1alpha1
          - description: StsOperatorConfig is the Schema for the stsoperatorconfigs
              API
            displayName: Sts Operator Config
            kind: StsOperatorConfig
            name: stsoperatorconfigs.sts.silicom.com
            version: v1alpha1
        description: |
          Silicom STS line card for 4G and 5G NIC enable real-time data transmission
          with high timing accuracy at the lowest cost to power 5G DRAN and CRAN edge
          deployments.

          * Support 1588/PTP over IPv4 / IPV6, IEEE1588v2
          * Support SyncE /ITU-T G.8262
          * T-BC/T-TSC Boundary Clock and TSC Slave Clock /G.8273.2
          * T-GM Grand Master /G.8273.1 per G.8275.1 PTP Profile
          * PRTC Primary Reference Time Clock Class B/G.8272
          * T-TC Transparent Clock /G.8273.3
          * 1588 Software Stack and Servo Software in x86
          * [Silicom STS2 Card](https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/p410g8ts81-timesync-server-adapter)

          ### Prequisites:
          * [NFD Operator](https://operatorhub.io/operator/nfd-operator "NFD operator needed for the discovery of STS cards").
          * [SRO Operator](https://github.com/openshift/special-resource-operator)
        displayName: Silicom STS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sts
        - silicom
        - ptp
        links:
        - name: GitHub Repository
          url: https://github.com/silicomDK/sts-operator
        - name: Github SRO Helm Charts
          url: https://github.com/silicomDK/sts2-charts
        - name: Silicom Ltd.
          url: http://www.silicom-usa.com
        maintainers:
        - email: rmr@silicom.dk
          name: Ryan M. Raasch
        maturity: beta
        provider:
          name: Silicom Ltd.
          url: http://www.silicom-usa.com
        relatedImages:
        - quay.io/silicom/sts-operator:0.0.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/silicom-sts-operator@sha256:df0939534c6aaa988714e64728ecdb387ff7dc4b32a5d97d56703ab143787171
        version: 0.0.2
      entries:
      - name: silicom-sts-operator.v0.0.2
        version: 0.0.2
      - name: silicom-sts-operator.v0.0.1
        version: 0.0.1
      name: beta
    defaultChannel: alpha
    packageName: silicom-sts-operator
    provider:
      name: Silicom Ltd.
      url: http://www.silicom-usa.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Alvearie
      provider-url: https://alvearie.github.io
    name: alvearie-imaging-ingestion
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: imaging-ingestion-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomEventBridge",
                "metadata": {
                  "name": "events"
                },
                "spec": {
                  "dicomEventDrivenIngestionName": "core",
                  "eventBridge": {},
                  "imagePullPolicy": "Always",
                  "natsSecure": true,
                  "natsSubjectRoot": "events",
                  "natsTokenSecret": "nats-events-secure-bound-token",
                  "natsUrl": "jetstream.imaging-ingestion.svc.cluster.local:4222",
                  "role": "hub"
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomEventDrivenIngestion",
                "metadata": {
                  "name": "core"
                },
                "spec": {
                  "databaseConfigName": "db-config",
                  "databaseSecretName": "db-secret",
                  "eventProcessor": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  },
                  "imagePullPolicy": "Always"
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomInstanceBinding",
                "metadata": {
                  "name": "stow"
                },
                "spec": {
                  "bindingConfigName": "instance-binding-config",
                  "bindingSecretName": "instance-binding-secret",
                  "dicomEventDrivenIngestionName": "core",
                  "imagePullPolicy": "Always",
                  "instanceBinding": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  }
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomStudyBinding",
                "metadata": {
                  "name": "fhir"
                },
                "spec": {
                  "bindingConfigName": "study-binding-config",
                  "bindingSecretName": "study-binding-secret",
                  "dicomEventDrivenIngestionName": "core",
                  "imagePullPolicy": "Always",
                  "studyBinding": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  }
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomwebIngestionService",
                "metadata": {
                  "name": "ingestion"
                },
                "spec": {
                  "bucketConfigName": "imaging-ingestion",
                  "bucketSecretName": "imaging-ingestion",
                  "dicomEventDrivenIngestionName": "core",
                  "imagePullPolicy": "Always",
                  "providerName": "provider",
                  "stowService": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  },
                  "wadoService": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  }
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DimseIngestionService",
                "metadata": {
                  "name": "ingestion"
                },
                "spec": {
                  "applicationEntityTitle": "DICOM-INGEST",
                  "bucketConfigName": "imaging-ingestion",
                  "bucketSecretName": "imaging-ingestion",
                  "dicomEventDrivenIngestionName": "core",
                  "dimseService": {},
                  "imagePullPolicy": "Always",
                  "natsSecure": true,
                  "natsSubjectRoot": "DIMSE",
                  "natsTokenSecret": "ingestion-nats-secure-bound-token",
                  "natsUrl": "nats-secure.imaging-ingestion.svc.cluster.local:4222",
                  "providerName": "provider"
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DimseProxy",
                "metadata": {
                  "name": "ingestion"
                },
                "spec": {
                  "applicationEntityTitle": "DCM4CHEE",
                  "imagePullPolicy": "Always",
                  "natsSecure": true,
                  "natsSubjectRoot": "DIMSE",
                  "natsTokenSecret": "ingestion-nats-secure-bound-token",
                  "natsUrl": "nats-secure.imaging-ingestion.svc.cluster.local:4222",
                  "proxy": {},
                  "targetDimseHost": "arc.dcm4chee.svc.cluster.local",
                  "targetDimsePort": 11112
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: alvearie/imaging-ingestion-operator:0.0.3
          createdAt: "2021-04-08T15:29:55Z"
          description: The Alvearie Imaging Ingestion provides a collection of components
            for extending enterprise medical imaging informatics systems to Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Alvearie/imaging-ingestion
          support: alvearie.slack.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DicomEventBridge is the Schema for the dicomeventbridges
              API
            displayName: Dicom Event Bridge
            kind: DicomEventBridge
            name: dicomeventbridges.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Event driven manifest of all DICOM data across all associated
              S3 buckets
            displayName: Dicom Event Driven Ingestion
            kind: DicomEventDrivenIngestion
            name: dicomeventdriveningestions.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Fan-out notification of DICOM instance data (STOW-RS)
            displayName: Dicom Instance Binding
            kind: DicomInstanceBinding
            name: dicominstancebindings.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Fan-out notification of DICOM studies (FHIRv4 ImagingStudy)
            displayName: Dicom Study Binding
            kind: DicomStudyBinding
            name: dicomstudybindings.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Provides DICOMweb WADO-RS and STOW-RS access to a S3 bucket
            displayName: Dicomweb Ingestion Service
            kind: DicomwebIngestionService
            name: dicomwebingestionservices.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Provides a proxied DIMSE Application Entity (AE) in the cluster
              for C-STORE operations to a storage space
            displayName: Dimse Ingestion Service
            kind: DimseIngestionService
            name: dimseingestionservices.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Provides a bidirectional proxied DIMSE Application Entity
              (AE) in the cluster
            displayName: Dimse Proxy
            kind: DimseProxy
            name: dimseproxies.imaging-ingestion.alvearie.org
            version: v1alpha1
        description: |
          The Alvearie Imaging Ingestion provides a collection of components for extending enterprise medical imaging informatics systems to Kubernetes.

          ## About this Operator
          This operator enables standards-based medical imaging application interfaces such as DICOM Message Service Element (DIMSE) and DICOMweb.
          The API's provided allow for extending enterprise imaging systems to the cloud with custom, fit for purpose deployments.
          This is possible at speed, low cost, and little or zero integration effort.or extending enterprise medical imaging informatics systems to a modern cloud.


          Some potential usages:

          - Perform lightweight secure bridging of DICOM from the enterprise imaging zone to a cloud availability zone.
          - Utilize S3 buckets for segregating DICOM data to be used for clinical or scientific purposes.
          - Fan-out DICOM data to a number of different DICOM subscribers
          - Generate FHIRv4 *ImagingStudy* resources from ingested content and publish to a FHIRv4 based patient logitudinal record.
          - Distribute imaging study arrival and update notifications to imaging study subscribers


          ## Prerequisites

          - [Knative](https://operatorhub.io/operator/knative-operator)
          - ProgresSQL such as [Crunchy](https://operatorhub.io/operator/postgresql)
          - S3 storage such as [MinIO](https://operatorhub.io/operator/minio-operator)
          - [NATS operator](https://github.com/nats-io/nats-operator/) (Optional:  only required for DIMSE Proxy component)



          ## Documentation

          Visit the [official github repository](https://github.com/Alvearie/imaging-ingestion) for documentation and examples.
        displayName: Alvearie Imaging Ingestion Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - dicom
        - medical imaging
        - fhir
        - dimse-c
        - dimse
        - imaging study
        links:
        - name: Alvearie Imaging Ingestion Operator
          url: https://github.com/Alvearie/imaging-ingestion
        maintainers:
        - email: rduggan@ca.ibm.com
          name: Richard Duggan
        - email: jjacob@us.ibm.com
          name: Jeesmon Jacob
        maturity: alpha
        provider:
          name: Alvearie
          url: https://alvearie.github.io
        relatedImages:
        - quay.io/openshift-community-operators/alvearie-imaging-ingestion@sha256:f65cc3cb83b1c75385970ce70c6a84b15b143e682ad0d1784148f1643df0991e
        - alvearie/imaging-ingestion-operator:0.0.3
        version: 0.0.3
      entries:
      - name: imaging-ingestion-operator.v0.0.3
        version: 0.0.3
      - name: imaging-ingestion-operator.v0.0.2
        version: 0.0.2
      - name: imaging-ingestion-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: alvearie-imaging-ingestion
    provider:
      name: Alvearie
      url: https://alvearie.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Grafana Loki SIG Operator
      provider-url: ""
    name: loki-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: loki-operator.v0.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in namespace example-namespace has an error rate above 5% for more than 10 minutes.",
                            "summary": "High error rate detected"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "warning"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in pod {{ $labels.pod }} is leaking HTTP basic auth credentials in logs.",
                            "summary": "HTTP credentials leaked in logs"
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({kubernetes_namespace_name=\"example-namespace\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "application"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          containerImage: docker.io/grafana/loki-operator:0.9.0
          createdAt: "2025-12-03T16:22:02Z"
          description: The Community Loki Operator provides Kubernetes native deployment
            and management of Loki and related logging components.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/grafana/loki/tree/main/operator
          support: Grafana Loki SIG Operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |-
          The Community Loki Operator provides Kubernetes native deployment and management of Loki and related logging components.
          The purpose of this project is to simplify and automate the configuration of a Loki based logging stack for Kubernetes clusters.

          ### Operator features

          The Loki Operator includes, but is not limited to, the following features:

          * Kubernetes Custom Resources: Use Kubernetes custom resources to deploy and manage Loki, Alerting rules, Recording rules, and related components.
          * Simplified Deployment Configuration: Configure the fundamentals of Loki like tenants, limits, replication factor and storage from a native Kubernetes resource.

          ### Feature Gates

          The Loki Operator Bundle provides a set of feature gates that enable/disable specific feature depending on the target Kubernetes distribution. The following feature gates are enabled by default:
          * `serviceMonitors`: Enables creating a Prometheus-Operator managed ServiceMonitor resource per LokiStack component.
          * `serviceMonitorTlsEndpoints`: Enables TLS for the ServiceMonitor endpoints.
          * `lokiStackAlerts`: Enables creating PrometheusRules for common Loki alerts.
          * `httpEncryption`: Enables TLS encryption for all HTTP LokiStack services.
          * `grpcEncryption`: Enables TLS encryption for all GRPC LokiStack services.
          * `builtInCertManagement`: Enables the built-in facility for generating and rotating TLS client and serving certificates for all LokiStack services and internal clients
          * `lokiStackGateway`: Enables reconciling the reverse-proxy lokistack-gateway component for multi-tenant authentication/authorization traffic control to Loki.
          * `runtimeSeccompProfile`: Enables the restricted seccomp profile on all Lokistack components.
          * `defaultNodeAffinity`: Enable the operator will set a default node affinity on all pods. This will limit scheduling of the pods to Nodes with Linux.
          * `lokiStackWebhook`: Enables the LokiStack CR validation and conversion webhooks.
          * `alertingRuleWebhook`: Enables the AlertingRule CR validation webhook.
          * `recordingRuleWebhook`: Enables the RecordingRule CR validation webhook.
          * `rulerConfigWebhook`: Enables the RulerConfig CR validation webhook.

          In addition it enables the following OpenShift-only related feature gates:
          * `servingCertsService`: Enables OpenShift ServiceCA annotations on the lokistack-gateway service only.
          * `ruleExtendedValidation`: Enables extended validation of AlertingRule and RecordingRule to enforce tenancy in an OpenShift context.
          * `clusterTLSPolicy`: Enables usage of TLS policies set in the API Server.
          * `clusterProxy`: Enables usage of the proxy variables set in the proxy resource.

          ### Before you start

          1. Ensure that the appropriate object storage solution, that will be used by Loki, is avaliable and configured.
        displayName: Community Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Documentation
          url: https://loki-operator.dev/
        maintainers:
        - email: loki-operator-team@googlegroups.com
          name: Grafana Loki SIG Operator
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Grafana Loki SIG Operator
        relatedImages:
        - quay.io/openshift/origin-kube-rbac-proxy:latest
        - docker.io/grafana/loki-operator:0.9.0
        - docker.io/grafana/loki:3.5.5
        - quay.io/community-operator-pipeline-prod/loki-operator@sha256:763afcdec279cb851cbc8cfbc4d662c31775d85e9fef47c4e149a8905063b450
        - quay.io/observatorium/api:latest
        - quay.io/observatorium/opa-openshift:latest
        version: 0.9.0
      entries:
      - name: loki-operator.v0.9.0
        version: 0.9.0
      - name: loki-operator.v0.8.0
        version: 0.8.0
      - name: loki-operator.v0.7.1
        version: 0.7.1
      - name: loki-operator.v0.7.0
        version: 0.7.0
      - name: loki-operator.v0.6.2
        version: 0.6.2
      - name: loki-operator.v0.6.1
        version: 0.6.1
      - name: loki-operator.v0.6.0
        version: 0.6.0
      - name: loki-operator.v0.5.0
        version: 0.5.0
      - name: loki-operator.v0.4.0
        version: 0.4.0
      - name: loki-operator.v0.3.0
        version: 0.3.0
      - name: loki-operator.v0.2.0
        version: 0.2.0
      - name: loki-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: loki-operator
    provider:
      name: Grafana Loki SIG Operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: ""
    name: support-log-gather-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: support-log-gather-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Monitoring, Application Runtime
          containerImage: registry.redhat.io/openshift4/ose-support-log-gather-rhel9-operator@sha256:f79ab86a84357ab3b14a7f889de7c8b849c28d8816e9f9226373f410b4e04ab8
          createdAt: "2020-07-31T16:12:36Z"
          description: Operator to enable CEE to collect must-gathers from OSDv4 clusters
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.20.0-0 <4.20.0-202512090918'
          operatorframework.io/suggested-namespace: must-gather-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/must-gather-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a must-gather diagnostic collection job
            displayName: Must Gather
            kind: MustGather
            name: mustgathers.operator.openshift.io
            version: v1alpha1
        description: |
          An operator that collects logs in Red Hat OpenShift and sends them to Red Hat Support for troubleshooting.

          ## Features

          * Automated must-gather collection
          * Secure collection and storage
        displayName: support log gather
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - monitoring
        - diagnostics
        - must-gather
        - support
        links:
        - name: Documentation
          url: https://github.com/openshift/must-gather-operator
        - name: Source Repository
          url: https://github.com/openshift/must-gather-operator
        maintainers:
        - email: aos-staff@redhat.com
          name: Red Hat
        maturity: tech-preview
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat, Inc
        relatedImages:
        - registry.redhat.io/openshift4/ose-support-log-gather-rhel9-operator@sha256:f79ab86a84357ab3b14a7f889de7c8b849c28d8816e9f9226373f410b4e04ab8
        - registry.redhat.io/openshift4/ose-support-log-gather-operator-bundle@sha256:ac657aaa7cece6a5ab76778385ce11497f8a985dce68b3c4aec1bad37ab05618
        - registry.redhat.io/openshift4/ose-must-gather-rhel9@sha256:a1376ed9e13b8ff171b967369a9ecf2dd0cf1188f34d456bc475023a86c87292
        version: 4.20.0-202512090918
      entries:
      - name: support-log-gather-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: support-log-gather-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: support-log-gather-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: support-log-gather-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: support-log-gather-operator.v4.20.0-202511041656
        version: 4.20.0-202511041656
      - name: support-log-gather-operator.v4.20.0-202510271425
        version: 4.20.0-202510271425
      - name: support-log-gather-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: tech-preview
    defaultChannel: tech-preview
    packageName: support-log-gather-operator
    provider:
      name: Red Hat, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-listener-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: listener-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          description: Stackable Listener Operator
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/listener-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Listener Class
            displayName: Listener Class
            kind: ListenerClass
            name: listenerclasses.listeners.stackable.tech
            version: v1alpha1
          - description: Represents a Listener
            displayName: Listener
            kind: Listener
            name: listeners.listeners.stackable.tech
            version: v1alpha1
          - description: Represents PodListeners of a Pod
            displayName: PodListeners
            kind: PodListeners
            name: podlisteners.listeners.stackable.tech
            version: v1alpha1
        description: |-
          This is an operator for Kubernetes that provisions network listeners according to the cluster policy, and injects connection parameters into Pods.
          The Stackable Listener Operator is part of the Stackable Data Platform, a curated selection of the best open source data apps like Kafka, Druid, Trino or
          Spark, all working together seamlessly. Based on Kubernetes, it runs everywhere – on prem or in the cloud.

          See it in action in one of our [demos](https://stackable.tech/en/demos/) or follow this
          [usage overview](https://docs.stackable.tech/home/stable/listener-operator/usage.html).

          NOTE: Make sure you install this operator in a namespace called "stackable-operators". Failing to do so will result in a broken installation.
        displayName: Stackable Listener Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - listener
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/listener-operator@sha256:59091117b89b6bbb2c8c19668f539464b965f1d2bfb7e3811677ebe943f90eca
        - quay.io/stackable/sig-storage/csi-node-driver-registrar@sha256:ab4a3289015f7de39c4dc987fa6183bcb157294a841c88fa842332ce66b068d8
        - quay.io/stackable/sig-storage/csi-provisioner@sha256:142e0b069dcc100671c91d66d8c973d56ea330b4e11ab79e5eb4fea5c79c6ecb
        - registry.connect.redhat.com/stackable/listener-operator@sha256:f775b29c3ea2c4d0d8f1a140e3827400c1eeeb9874cd0e0dbf50987fb41cc5c1
        version: 25.11.0
      entries:
      - name: listener-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-listener-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Jooho Lee
      provider-url: https://github.com/jooho/nfs-provisioner-operator
    name: nfs-provisioner-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nfs-provisioner-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cache.jhouse.com/v1alpha1",
                "kind": "NFSProvisioner",
                "metadata": {
                  "name": "nfsprovisioner-sample"
                },
                "spec": {
                  "nfsImageConfiguration": {
                    "image": "k8s.gcr.io/sig-storage/nfs-provisioner@sha256:e943bb77c7df05ebdc8c7888b2db289b13bf9f012d6a3a5a74f14d4d5743d439",
                    "imagePullPolicy": "IfNotPresent"
                  },
                  "scForNFS": "nfs",
                  "scForNFSPvc": "local-sc",
                  "storageSize": "1G"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "false"
          containerImage: quay.io/jooholee/nfs-provisioner-operator@sha256:d9c013967421ec72644a588a155975bf856a856f1ef38ba71dfea306fdb47acd
          createdAt: "2025-08-08T20:23:50Z"
          description: Create and manage NFS Server and Provisioner
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/jooho/nfs-provisioner-operator
          support: NFS
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NFSProvisioner is the Schema for the nfsprovisioners API
            displayName: NFS Provisioner App
            kind: NFSProvisioner
            name: nfsprovisioners.cache.jhouse.com
            version: v1alpha1
        description: "This operator deploy NFS server with local storage and also
          provide provisioner for storageClass.\n### Core Capabilities\n* **NFS Server:**
          Deployed\n* **NFS Provisioner:** Help customers to create PV using StorageClass\n*
          **StorageClass:** Dynamically create PV for requested PVC\n### NFS Provisioner
          Operator Features\n* NFS Server can use localStorage PVC or HostPath on
          the node\n### Must-Gather \n> isv-cli must-gather --image=quay.io/jooholee/nfs-provisioner-operator-must-gather:0.0.1\n"
        displayName: NFS Provisioner Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nfs
        - storage
        links:
        - name: Nfs Provisioner Operator
          url: https://github.com/jooho/nfs-provisioner-operator
        maintainers:
        - email: ljhiyh@gmail.com
          name: Jooho
        maturity: alpha
        provider:
          name: Jooho Lee
          url: https://github.com/jooho/nfs-provisioner-operator
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:e10d1d982dd653db74ca87a1d1ad017bc5ef1aeb651bdea089debf16485b080b
        - quay.io/community-operator-pipeline-prod/nfs-provisioner-operator@sha256:d7ef0fa3b5a1a6094b6fd60c6197a52cb14766865b3549806de100bb3522821a
        - quay.io/jooholee/nfs-provisioner-operator@sha256:d9c013967421ec72644a588a155975bf856a856f1ef38ba71dfea306fdb47acd
        version: 0.0.8
      entries:
      - name: nfs-provisioner-operator.v0.0.8
        version: 0.0.8
      - name: nfs-provisioner-operator.v0.0.7
        version: 0.0.7
      - name: nfs-provisioner-operator.v0.0.6
        version: 0.0.6
      - name: nfs-provisioner-operator.v0.0.5
        version: 0.0.5
      - name: nfs-provisioner-operator.v0.0.4
        version: 0.0.4
      name: alpha
    defaultChannel: alpha
    packageName: nfs-provisioner-operator
    provider:
      name: Jooho Lee
      url: https://github.com/jooho/nfs-provisioner-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat CCIT
      provider-url: ""
    name: reportportal-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: reportportal-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rp5.reportportal.io/v1",
                "kind": "ReportPortal",
                "metadata": {
                  "name": "reportportal-sample"
                },
                "spec": {
                  "accesskey": "AKIAIOSFODNN7EXAMPLE",
                  "analyzer_image": "quay.io/waynesun09/service-auto-analyzer:5.3.5",
                  "api_image": "quay.io/waynesun09/service-api:5.3.5-rootless",
                  "api_replicas": 1,
                  "app_domain": "apps.test-example.com",
                  "bucket_prefix": null,
                  "default_bucket_name": null,
                  "enable_pg_restic_backup": "yes",
                  "es_backup_schedule": "@daily",
                  "es_s3_backup_dir": "s3_backup",
                  "es_snapshot_bucket": "es-snapshot-123123",
                  "gateway_replicas": 1,
                  "index_image": "quay.io/waynesun09/service-index:5.0.10",
                  "index_replicas": 1,
                  "integration_salt_path": null,
                  "migration_image": "quay.io/waynesun09/migrations:5.3.5",
                  "pg_restic_password": "rp_user",
                  "pg_restic_s3_bucket_init": "yes",
                  "pg_s3_bucket_name": "pgbackup-123123",
                  "s3_enabled": false,
                  "s3_endpoint": null,
                  "secretkey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
                  "uat_image": "quay.io/waynesun09/service-authorization:5.3.5",
                  "ui_image": "quay.io/waynesun09/service-ui:5.3.5",
                  "ui_replicas": 1
                }
              },
              {
                "apiVersion": "rp5.reportportal.io/v1",
                "kind": "ReportPortalRestore",
                "metadata": {
                  "name": "reportportalrestore-sample"
                },
                "spec": {
                  "accesskey": "AKIAIOSFODNN7EXAMPLE",
                  "bucket_prefix": null,
                  "es_restore": "yes",
                  "es_restore_date": "2020-08-07",
                  "es_s3_backup_dir": "s3_backup",
                  "es_snapshot_bucket": "es-snapshot-123123",
                  "pg_recovery": "yes",
                  "pg_recovery_target_time": "2020-08-07 00:00:00",
                  "pg_restic_password": "rp_user",
                  "pg_s3_bucket_name": "pgbackup-123123",
                  "s3_endpoint": null,
                  "secretkey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
                }
              },
              {
                "apiVersion": "rp5.reportportal.io/v1",
                "kind": "ServiceApiServiceMonitor",
                "metadata": {
                  "name": "serviceapiservicemonitor-sample"
                },
                "spec": {
                  "bearer_token_secret_key": "token",
                  "bearer_token_secret_name": "rp-user-auth"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/waynesun09/rp5-operator:v0.0.8
          createdAt: "2021-04-22 14:39:00"
          operators.operatorframework.io/builder: operator-sdk-v1.7.1+git
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/waynesun09/reportportal-operator
          support: waynesun09
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ReportPortal Restore from s3 backup
            kind: ReportPortalRestore
            name: reportportalrestores.rp5.reportportal.io
            version: v1
          - description: ReportPortal v5 Deployment with ReportPortal Operator
            kind: ReportPortal
            name: reportportals.rp5.reportportal.io
            version: v1
          - description: ReportPortal service-api ServiceMonitor for metrics
            kind: ServiceApiServiceMonitor
            name: serviceapiservicemonitors.rp5.reportportal.io
            version: v1
        description: |-
          ReportPortal is a test automation analytics platform. ReportPortal Operator support instantiating the ReportPortal services and required dependencies.

          What services are included:

              - Report Portal v5.3
              - PostgreSQL
              - Elasticsearch
              - RabbitMQ
              - Minio

          The Operator also support data backup & restore and metrics monitoring.

          ## Install

          Install the Operator to a namespace, then create ReportPortal v5 instance under Provided APIs on the UI, all Report Portal v5 services and dependencies will be installed.

          ## Data backup and restore

          The Report Portal v5 data backup and restore in the operator include two parts, PostgreSQL database data and Elasticsearch index data.

          The Operator support automatically data backup and restore for both.

          ### PostgreSQL database WAL archiving and recovery

          The Operator supports PostgreSQL WAL archiving and recovery point-in-time via Minio S3 using restic.

          #### WAL archiving

          When deploy Report Portal v5 instance, make sure `enable_pg_restic_backup` option is set as `yes`, then the WAL archiving will be enabled when initiate the database, the WAL archive data will be automatically backup to S3 storage via Minio using restic command.

          Parameter `pg_restic_s3_bucket_init` is for init the bucket if not exist, `pg_s3_bucket_name` is the bucket name and `pg_restic_password` is the restic password for encryption.

          #### WAL recovery

          WAL archive recovery will download all WAL archive files to the Postgres container and restore point-in-time.

          To restore PostgreSQL database point-in-time, on Operator UI select `ReportPortalRestore` under Provided APIs to create ReportPortalRestore operand.

          After the ReportPortalRestore operand created, the PG WAL restore will get started, as restore time will base on the database size, the process will last in minutes, hours or days.

          **Note:** Current Postgres container liveless probe timeout is set as one hour in the postgresql statefulset, it might cause restore fail if restore time is longer than one hour, so it might need be adjusted to be longer.

          ### Elasticsearch snapshot and restore

          The operator supports elasticsearch snapshot and restore with data saved in S3 bucket via Minio, the elasticsearch container have installed the s3 repository plugin.

          #### Snapshot

          When deploy Report Portal v5 instance, make sure following elasticsearch parameters are set:

              es_s3_backup_dir: s3_backup
              es_snapshot_bucket: es-snapshot-123123
              es_backup_schedule: '@daily'

          #### Restore

          Elasticsearch restore support restore to certain date as default snapshot schedule is daily.

          To restore elasticsearch from snapshot, on Operator UI select `ReportPortalRestore` under Provided APIs to create ReportPortalRestore operand.

          The backup dir and bucket name should be same as when create the RP instance, `es_restore` need set to `yes` to enable the restore and `es_restore_date` is the restore target date.

          The restore time will also be depend on the snapshot size.

          ## Metrics

          The operator by default have enabled metrics, the default ansible operator port 8080 is used for the operator container.

          All Report Portal v5 depended services, rabbitmq, minio, postgresql and elasticsearch have metrics enabled in this operator.

          The Report Portal gatway service have metrics enabled.

          By default several ServiceMonitors have been defined when create ReportPortal v5 operand:

              $ oc get servicemonitor
              NAME                    AGE
              elasticsearch-metrics   1d21h
              gateway-metrics         1d21h
              minio-metrics           1d21h
              postgres-metrics        1d21h
              rabbitmq-metrics        1d21h

          To export Report Portal v5 service-api metrics with ServiceMonitor, create a `secret` with RP user api token. The api access token could be found with login to Report Portal -> Click user icon -> Profile.

          Then select `ServiceApiServiceMonitor` under provided APIs to Create Instance on operator UI.

          Input the secret name and key name that have been created, and click create, a api-metrics servicemonitor will be created.

          To check the metrics, if [user workload monitoring](https://docs.openshift.com/container-platform/4.5/monitoring/monitoring-your-own-services.html) is enabled on the cluster, click to Monitoring on OpenShift UI and navigate to Metrics, where you could query the metrics.

          You could also deploy Promethues Operator in the current project and query via it.

          ## Doc

          More detail with installation, data backup & restore and metrics could be found at https://github.com/waynesun09/reportportal-operator#reportportal-operator
        displayName: reportportal-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - reportportal
        - failure analysis
        - test automation
        links:
        - name: Documentation
          url: https://github.com/waynesun09/reportportal-operator/blob/master/README.md
        - name: ReportPortal.io
          url: https://reportportal.io
        maintainers:
        - email: gsun@redhat.com
          name: Wayne Sun
        maturity: alpha
        provider:
          name: Red Hat CCIT
        relatedImages:
        - quay.io/openshift-community-operators/reportportal-operator@sha256:67a7ffaf6a303b92541170f266d7b2871f5c2fe73f6b6c9a2b7b33dbc4555fa5
        - quay.io/waynesun09/rp5-operator:v0.0.8
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.7.0
        version: 0.0.8
      entries:
      - name: reportportal-operator.v0.0.8
        version: 0.0.8
      name: alpha
    defaultChannel: alpha
    packageName: reportportal-operator
    provider:
      name: Red Hat CCIT
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/stolostron/multicluster-global-hub
    name: multicluster-global-hub-operator-rh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-global-hub-operator-rh.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "global-hub.open-cluster-management.io/v1alpha1",
                "kind": "ManagedClusterMigration",
                "metadata": {
                  "name": "migration-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha1",
                "kind": "MulticlusterGlobalHubAgent",
                "metadata": {
                  "name": "multiclusterglobalhubagent"
                },
                "spec": {
                  "transportConfigSecretName": "transport-config"
                }
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha4",
                "kind": "MulticlusterGlobalHub",
                "metadata": {
                  "name": "multiclusterglobalhub"
                },
                "spec": {
                  "dataLayer": {
                    "postgres": {
                      "retention": "18m"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/multicluster-globalhub/multicluster-globalhub-rhel9-operator@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
          createdAt: "2025-08-27T07:10:21Z"
          description: Manages the installation and upgrade of the Multicluster Global
            Hub.
          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: "true"
          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.skipRange: '>=1.5.0 <1.6.0'
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1alpha4",
            "kind":"MulticlusterGlobalHub","metadata":{"name":"multiclusterglobalhub","namespace":"multicluster-global-hub"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-global-hub
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/multicluster-global-hub
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterMigration is a global hub resource that allows
              you to migrate managed clusters from one hub to another
            displayName: Managed Cluster Migration
            kind: ManagedClusterMigration
            name: managedclustermigrations.global-hub.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHubAgent is the Schema for the multiclusterglobalhubagents
              API
            displayName: Multicluster Global Hub Agent
            kind: MulticlusterGlobalHubAgent
            name: multiclusterglobalhubagents.operator.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHub defines the configuration for an instance
              of the multiCluster global hub
            displayName: Multicluster Global Hub
            kind: MulticlusterGlobalHub
            name: multiclusterglobalhubs.operator.open-cluster-management.io
            version: v1alpha4
        description: |
          The Multicluster Global Hub Operator contains the components of multicluster global hub. The Operator deploys all of the required components for global multicluster management. The components include `multicluster-global-hub-manager` and `multicluster-global-hub-grafana` in the global hub cluster and `multicluster-global-hub-agent` in the managed hub clusters.
          The Operator also deploys the strimzi kafka and crunchy postgres if you do not bring your own kafka and postgres.

          ## Prerequisites
          - Red Hat Advanced Cluster Management for Kubernetes needs to be installed. You can find the support matrix in the official document.

          ## How to Install
          Install the Multicluster Global Hub Operator by following the instructions that are displayed after you select the Install button.
          A pod will be created in `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                             READY   STATUS    RESTARTS   AGE
          multicluster-global-hub-operator-5ccbbc878d-98fdp                1/1     Running   0          19s
          ```
          The operator is now providing new Custom Resources Definitions: `multiclusterglobalhubs.operator.open-cluster-management.io`

          ## Using the Multicluster Global Hub Operator
          After installed the operator, create an instance of the MulticlusterGlobalHub resource to instantiate the Multicluster Global Hub.
          Once an instance of the MulticlusterGlobalHub is created, the following pods are created in the `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                    READY   STATUS    RESTARTS   AGE
          amq-streams-cluster-operator-v2.6.0-2-f49bf7559-569mw   1/1     Running   0          22m
          kafka-entity-operator-68dcd446f4-pg257                  3/3     Running   0          19m
          kafka-kafka-0                                           1/1     Running   0          20m
          kafka-kafka-1                                           1/1     Running   0          20m
          kafka-kafka-2                                           1/1     Running   0          20m
          multicluster-global-hub-grafana-5b7cfb6876-5rcnn        2/2     Running   0          19m
          multicluster-global-hub-grafana-5b7cfb6876-wq99v        2/2     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-hzfvw        1/1     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-wbkzl        1/1     Running   0          19m
          multicluster-global-hub-operator-768bd5bd4f-59xjd       1/1     Running   0          22m
          multicluster-global-hub-postgresql-0                    2/2     Running   0          22m
          ```
          ## Documentation
          For documentation about installing and using the Multicluster GlobalHub Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [Multicluser GlobalHub Documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html-single/multicluster_global_hub/index#doc-wrapper) in the Red Hat Advanced Cluster Management
          documentation.

          ## Support & Troubleshooting
          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: Multicluster Global Hub Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multicluster-global-hub
        - multiple-hubs
        links:
        - name: Multicluster Global Hub Operator
          url: https://github.com/stolostron/multicluster-global-hub
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: release-1.6
        provider:
          name: Red Hat, Inc
          url: https://github.com/stolostron/multicluster-global-hub
        relatedImages:
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-rhel9-operator@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
        - registry.redhat.io/rhel9/postgresql-16@sha256:2161182c88022f38d6d9b8b467c0d59156edcededc908d383b80caa4eedf57f9
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-operator-bundle@sha256:3ffc6685a430008618dbee9b15ec04980eacd783b0c77d130e70bf9766bfdae8
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-agent-rhel9@sha256:903aea3e61d68f13d60c33f98bc9fa220eb8426ccedb43948015b6dfd50e8cf0
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-grafana-rhel9@sha256:870866e86ce870ad8d97ee060483e3c9042076f4ec987d4769e09d8daddd963d
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-manager-rhel9@sha256:98273949e754fc81aa9240b507ab13e12fe2e9ecb6dafe601756567af18a077c
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-postgres-exporter-rhel9@sha256:2a68afbc8b4208e8aa16e7f0a8266246a16a2e97d4d6f930318888fc1e0c7306
        version: 1.6.0
      entries:
      - name: multicluster-global-hub-operator-rh.v1.6.0
        version: 1.6.0
      name: release-1.6
    defaultChannel: release-1.6
    packageName: multicluster-global-hub-operator-rh
    provider:
      name: Red Hat, Inc
      url: https://github.com/stolostron/multicluster-global-hub
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: topology-aware-lifecycle-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: topology-aware-lifecycle-manager.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ran.openshift.io/v1alpha1",
                "kind": "ClusterGroupUpgrade",
                "metadata": {
                  "name": "ClusterGroupUpgrade-sample"
                },
                "spec": {
                  "preCaching": true
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
          description: The topology aware lifecycle manager is an operator that facilitates
            platform upgrades of group of clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-operators",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/topology-aware-lifecycle-manager
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterGroupUpgrade is the Schema for the ClusterGroupUpgrades
              API
            displayName: Cluster Group Upgrade
            kind: ClusterGroupUpgrade
            name: clustergroupupgrades.ran.openshift.io
            version: v1alpha1
          - description: ImageBasedGroupUpgrade is the schema for upgrading a group
              of clusters using IBU
            displayName: Image-Based Group Upgrade
            kind: ImageBasedGroupUpgrade
            name: imagebasedgroupupgrades.lcm.openshift.io
            version: v1alpha1
          - description: PreCachingConfig is the Schema for the precachingconfigs
              API
            displayName: Pre-caching Config
            kind: PreCachingConfig
            name: precachingconfigs.ran.openshift.io
            version: v1alpha1
        description: |-
          Topology Aware Lifecycle Manager is an operator that facilitates
          platform and operator upgrades of group of clusters
        displayName: Topology Aware Lifecycle Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acm lifecyclemanagement upgrades cluster
        links:
        - name: Cluster Group Upgrades Operator
          url: https://topology-aware-lifecycle-manager.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-operator-bundle@sha256:46f2823c799f69a666161c73d63c1ad131757d1b83e28b09d0f205fd9626193b
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-aztp-rhel9@sha256:19b4c01406bffca93469847e207dcc372b0238a20184923a33932d510c0f1d99
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-precache-rhel9@sha256:982467d05ff6af795ede34430c571ef5a6a7f4005990eb7538be340fd412b6f2
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-recovery-rhel9@sha256:761ba005141e46a6e32ab1a8b58d348507a28bcad5c571cafd5389463a595475
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
        version: 4.20.0
      entries:
      - name: topology-aware-lifecycle-manager.v4.20.0
        version: 4.20.0
      name: "4.20"
    - currentCSV: topology-aware-lifecycle-manager.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ran.openshift.io/v1alpha1",
                "kind": "ClusterGroupUpgrade",
                "metadata": {
                  "name": "ClusterGroupUpgrade-sample"
                },
                "spec": {
                  "preCaching": true
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
          description: The topology aware lifecycle manager is an operator that facilitates
            platform upgrades of group of clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-operators",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/topology-aware-lifecycle-manager
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterGroupUpgrade is the Schema for the ClusterGroupUpgrades
              API
            displayName: Cluster Group Upgrade
            kind: ClusterGroupUpgrade
            name: clustergroupupgrades.ran.openshift.io
            version: v1alpha1
          - description: ImageBasedGroupUpgrade is the schema for upgrading a group
              of clusters using IBU
            displayName: Image-Based Group Upgrade
            kind: ImageBasedGroupUpgrade
            name: imagebasedgroupupgrades.lcm.openshift.io
            version: v1alpha1
          - description: PreCachingConfig is the Schema for the precachingconfigs
              API
            displayName: Pre-caching Config
            kind: PreCachingConfig
            name: precachingconfigs.ran.openshift.io
            version: v1alpha1
        description: |-
          Topology Aware Lifecycle Manager is an operator that facilitates
          platform and operator upgrades of group of clusters
        displayName: Topology Aware Lifecycle Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acm lifecyclemanagement upgrades cluster
        links:
        - name: Cluster Group Upgrades Operator
          url: https://topology-aware-lifecycle-manager.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-operator-bundle@sha256:46f2823c799f69a666161c73d63c1ad131757d1b83e28b09d0f205fd9626193b
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-aztp-rhel9@sha256:19b4c01406bffca93469847e207dcc372b0238a20184923a33932d510c0f1d99
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-precache-rhel9@sha256:982467d05ff6af795ede34430c571ef5a6a7f4005990eb7538be340fd412b6f2
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-recovery-rhel9@sha256:761ba005141e46a6e32ab1a8b58d348507a28bcad5c571cafd5389463a595475
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
        version: 4.20.0
      entries:
      - name: topology-aware-lifecycle-manager.v4.20.0
        version: 4.20.0
      name: stable
    defaultChannel: stable
    packageName: topology-aware-lifecycle-manager
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: rhods-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.24.0
        version: 2.24.0
      - name: rhods-operator.2.23.0
        version: 2.23.0
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.21.0
        version: 2.21.0
      - name: rhods-operator.2.20.0
        version: 2.20.0
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.18.0
        version: 2.18.0
      - name: rhods-operator.2.17.0
        version: 2.17.0
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.15.0
        version: 2.15.0
      - name: rhods-operator.2.14.0
        version: 2.14.0
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: alpha
    - currentCSV: rhods-operator.2.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Basic Install
          categories: AI/Machine Learning, Big Data
          containerImage: registry.redhat.io/rhods/odh-rhel8-operator@sha256:a4d7f020509b9720063e87e1c2f19af04e4c9b4986b199be4dc617831b971434
          createdAt: "2023-11-21T08:37:00Z"
          description: Operator for deployment and management of Red Hat OpenShift
            Data Science
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:08c90a8f133b4cdb1477a742bc44be4d8fc4e88153b8bc2a2a148cbdf19f4e7d
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:6a56010de933f172b195a1a575855d37b70a4968be8edb35157f6ca193969ad2
          olm.skipRange: '>=1.33.0 <2.4.0'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "rhods",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "rhods",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Removed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Removed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus", "OpenShift Data Science"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:eb96f4b753606528750b3c28f7f9256582f81fa030450b05afdef684634903be
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift Data Science
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift Data Science (RHODS) is a complete platform for the entire lifecycle of your AI/ML projects. It is the flagship product of OpenShift AI.

          When using RHODS, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. RHODS can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.


          ### Components
          * RHODS dashboard
          * Curated Notebook Images (incl CUDA, PyTorch, Tensorflow)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines. (including Elyra notebook interface, and based on standard OpenShift Pipelines)
          * Model Serving using ModelMesh (and Kserve) with a provided OpenVino Model Serving Runtime
          * Ability to use other runtimes for serving
          * Model Monitoring
        displayName: Red Hat OpenShift Data Science
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift Data Science
        - RHODS
        - rhods
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift Data Science
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-data-science
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhods/odh-notebook-controller-rhel8@sha256:753994fce63802f1e1121990a5c1dd722216446abee54cc1a7c50ab195134414
        - registry.redhat.io/rhods/odh-modelmesh-serving-controller-rhel8@sha256:d94395fb251e45aaa73d09bc6106a2947c16b90d87fc3b64bfe4f2f600be5841
        - registry.redhat.io/rhods/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:c5758102609821a6fdabec0277e03c4c728f82176093d1ade0570aba5f3cd8f9
        - registry.redhat.io/rhods/odh-dashboard-rhel8@sha256:b98171c5543815abf7c095fba92796ceed9ea44bd8b78db143d2815c6bcfdcf6
        - registry.redhat.io/rhods/odh-modelmesh-runtime-adapter-rhel8@sha256:08478a1647d0413783bcbcd966a73b444b580464de46efedb39504420f22053e
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:eb96f4b753606528750b3c28f7f9256582f81fa030450b05afdef684634903be
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhods/odh-kf-notebook-controller-rhel8@sha256:cd0ab8d70559be6074fbaf1caa1d50f8eb75e1bff1a22d6d69380f19190df0b6
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhods/odh-rhel8-operator@sha256:a4d7f020509b9720063e87e1c2f19af04e4c9b4986b199be4dc617831b971434
        - registry.redhat.io/rhods/odh-ml-pipelines-persistenceagent-rhel8@sha256:857a8eb444375505ccb34a11cce69c1794ceabbfb00df06933d7f12cd187319b
        - registry.redhat.io/rhods/odh-operator-bundle@sha256:b637a02d23bd8364cc8914421049eb60169c163ac70bff2f33591df1a1193002
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhods/odh-modelmesh-rhel8@sha256:3827221f84d3aa22440d6b364b990a4ec0666dfb5963f174f7ed518b3650d223
        - registry.redhat.io/rhods/odh-trustyai-service-rhel8@sha256:fe17d6e07ebaa088f274dd8b5e83892dacc11cb336065b06582a3c055095dba5
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhods/odh-model-controller-rhel8@sha256:fde989817cd1a6ec8eb408a7f6c73e28ba043ab2d88035586b1b7e55fb3405cb
        - registry.redhat.io/rhods/odh-trustyai-service-operator-rhel8@sha256:68471555d0b2bb8150ebfae8d4f3d1dbdff9c5b961ff2305ef23ab7514cbbea1
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhods/odh-ml-pipelines-artifact-manager-rhel8@sha256:76c67d7015a2db6965219db6533e0cddb5b7cf699c88df3ef81155f9c192a3cc
        - registry.redhat.io/rhods/odh-ml-pipelines-cache-rhel8@sha256:33aae32e3d348d382906f6e926281852f54006a94d7bdac188bb33debadec059
        - registry.redhat.io/rhods/odh-ml-pipelines-api-server-rhel8@sha256:be57f237df156474a709667fa4fb4aa142118e3459963fed56648c1cb2e38cd6
        - registry.redhat.io/rhods/odh-data-science-pipelines-operator-controller-rhel8@sha256:250db47cb873207cfb75c7e8a2f0de08b75b056a72db73362d2d79c08cb7b185
        - registry.redhat.io/rhods/odh-kuberay-operator-controller-rhel8@sha256:bfc805aa1689a4bd6f7e617acf9eb1c2c307624dd49956e9e7442afac328151a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhods/odh-codeflare-operator-rhel8@sha256:2841fd3051a50a1b0d9e3caafa20a8084b5c472d49393b372828960dbf156674
        - registry.redhat.io/ubi8/ubi-micro@sha256:6a56010de933f172b195a1a575855d37b70a4968be8edb35157f6ca193969ad2
        - registry.redhat.io/rhel8/mariadb-103@sha256:08c90a8f133b4cdb1477a742bc44be4d8fc4e88153b8bc2a2a148cbdf19f4e7d
        - registry.redhat.io/rhods/odh-mm-rest-proxy-rhel8@sha256:8d989f54009484d7f43fe79d7c37757418fc3c15cd4d7e80a2076677a9645bdf
        version: 2.4.0
      entries:
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: beta
    - currentCSV: rhods-operator.2.21.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:7d0b8d69b6defb5f232da066573b0067ec810a8ccfb2f3cb91d472d2979ab7a7
          createdAt: "2025-09-24T14:42:33Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",  "workbenches.components.platform.opendatahub.io",
            "monitorings.services.platform.opendatahub.io","modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.21
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e9612ec99daa171c403b5ddf37788526e5375b83987e5de9b1ebe519198607b4
        - registry.redhat.io/rhel9/mariadb-105@sha256:c390b12f5c2c3ea7cd897b59eba7127ce22f474130cd8c1bbbbaadae870baca4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:85202cb75250a1ba2691d65b52b306fd77566660dd29cdf56bf8962e8bb4939c
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:1b7befcd29c9c8f783bdd3c5654b0412ea45cd88cd18eb5f8f5a411f1323c6bd
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:4c57dcf4df09fe0d03578cc8b9a3ca2ea485b6af0ca0203bfb85e640058b7daf
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:cb47e165935f0d9d3c88088689c37e68a69519357a20d3c52ab6f71240dab507
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:a936d87646843edea2a84eb429bb44eb730bf3e04e8900fecef66721426dba89
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:dc0db686b7688f98b5f8595661022cdffa5d26a078289cc7aed528f0ee1d08a4
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:80fd53a580ce7bc4d02023d38a04912e84c2cd50679fc5ea034afba935623157
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:e68492a6a75cb83be0a968b832c1478b97f14e661376328085fd5416a08cbc31
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:a88696cff8cd2cc2e295c9ec082b7f25f61dfc9ac12f1c208529ff7036d5af29
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:04859c878ffcc8c42550a98be625ac52212f9b79a6fd5b3baeafb3592926cbe9
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:c3e283c0536266195dd461042ca0036ed98cc33650d806be132db4fba45239e4
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:2b4136569e10ad7d47c82bedf55c1705a833dc67c8f833656996bfe1fddbef3e
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:687c8eeed55f021ecaab1307f0e88b5b16d91f72d63b3d7168d7bbee90e8947b
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6a388ee3cbe3813ac955d319f0ab65a81da321d982c9881c6c81fe135311fe1d
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:152b425725228953f43b57a4a034a6725993a5ca556af328ae5e06aa3f1acbfc
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:4c192208c618b49f31cf31c9de1a33c622ce3f120204c2eec8ff7c439ea6785c
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:5c0d56f434298f6e8bf6cf7061cd1ae6df9915225cbf04b010b6b59a64775cc9
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:2a16c353fd13dc1f3f5c4266f1b9786a8e7a100dc05f2d554bdaef082271063f
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:1b5452b87b36de2b62febc777efdc6233a168ffcc09e2067e482cc444463a57d
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:7da004e158006dcbdcf0c3b78c40411b82c9d56ebf54b1c30c245b6550b8ee7d
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:003fdc6cd1821d620e1ce4050ee608e2d2a32f2b08c8fa9c147e2e14418a8d91
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:fc98ed817a4e9ab84e2a66063987304f0cdbe6e5620a58a7f25cccd61b34ebf9
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:cfaf4eb86ddb9c717340ab17fa4b83323e5b40977ac70265376c87329a3f6f20
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/ubi9/toolbox@sha256:7656f815a0d13ed37f56d11635559a87a3d00840253755c71b644b858f67d556
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2638e3a90bbb242dd2483fefe9fc8b472f334c510d0139b9b7c875c30dab7984
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:52e1ba8ebf4d55c64c94c9076185c5612b537e6e5ed4944fcd6ea87ccb9cd182
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:fe6593bc73e77d315d82b7921bb1975c19fda1e7630ef5b30b69f5901ce30178
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:239f226328e5ac77d6dee498217d55103a6d562f4829e38abf65ba55fda0aca2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:5f581957e4f8deebf6104a394272e6fbb1c54d813bf069e95875d865eac209ad
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:9c2d6ce05775ac34ee5695b3367d12bf2a9c14e318a9544d00a56653ea5f2007
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:7d0b8d69b6defb5f232da066573b0067ec810a8ccfb2f3cb91d472d2979ab7a7
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        version: 2.21.1
      entries:
      - name: rhods-operator.2.21.1
        version: 2.21.1
      - name: rhods-operator.2.21.0
        version: 2.21.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: embedded
    - currentCSV: rhods-operator.2.16.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
          createdAt: "2025-09-24T13:27:25Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.16
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        version: 2.16.3
      entries:
      - name: rhods-operator.2.16.3
        version: 2.16.3
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.8.5
        version: 2.8.5
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: eus-2.16
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.16.3
        version: 2.16.3
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.8.5
        version: 2.8.5
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: eus-2.25
    - currentCSV: rhods-operator.2.8.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              },
              {
                "apiVersion": "features.opendatahub.io/v1",
                "kind": "FeatureTracker",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "default-feature",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-feature"
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:3b9e8a71ba795a2ea91f4129253ccb4be3a79c7c1c6a87082f96ccc67eabbbac
          createdAt: "2024-11-07T07:17:25Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.8.0 <2.8.5'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Removed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "SelfSigned"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Removed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.


          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines. (including Elyra notebook interface, and based on standard OpenShift Pipelines)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:13b850a5a3f8776c6c8db887c666d88df72901895b5ef1be9a8bd372cc02fcb8
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:038ce76571217d6c624d614652e8b96ef6484562cf52ec1be88392b8ef8a3bbd
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:9aa5a93831992588766ac8594ae3c4dc7111d08a90fdbc8751c40484339e46d4
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c48474563d98df32e7243e33302428ea8836be5e1a2e30d20b4d796a62cbf6b
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:61a506fbf263cd72951ac8bd151127e0c74fc74f0a05f7aaecaa54fde47ee490
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:3b9e8a71ba795a2ea91f4129253ccb4be3a79c7c1c6a87082f96ccc67eabbbac
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:2f6db789ceb3f90f9c9911c6392e62d0a8e4d61be68a7f7cbd781f47faab6389
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:df34e9d2d121a3def2dbb86f108b3fb6948bc7ba7cb44c70801dfd2e81d3fbb1
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:8ffc5da798e783c65d5be7f344219b2951d8c2233d6494a4ae2bb5c86eccd699
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:34d177abb56b948eaf9ce6fa62e37427ddee9fcecca48e752d09f72c69847a46
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:81ae2b95f2da740cb5264b9ba8b85f0f58bb4ab80d6431f66d52848ed0c21afb
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:4b1b9f05a94713292a7a2f6782fe1d3eea6f36214c36b38f402aa91a554ab18a
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:45498198fadfbc1457bf2a6084ae7ea515d454d86d148783aae3abdaca6e999d
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:d87e4b1cba72eb4f50b3f2d59863799929c22ca37b01a1ff4828a9ce0be31f25
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:60507a3dddbd88560fd85204699147facd2b6371fb25e0bf6701dad02c0b4dd4
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:13dff890ec67fa56864c244a40fc404e9eac05f33573dd16d088b37f9340ec41
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:eeb8bdc94e7fa2b454fedf72eb75756052f8bfb9d92b116a8267a5584e2528c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:1a1074263ae26e4c8b0e3863228c35e50133169f377ece6c47b58a12e0fcf453
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:28ec01e514c15cae145499840597d1be1b750123bb6014de2ecc3ef0d60fa134
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:1dbf09cb1624c9f961f8ac8e371c97aa7c3fbfcad4c4d02ab4fad0eb86d2aa95
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f9c474d454d0b006e06859601ec9a64b5e5c91e9a47bfab6ad6d8cce5aa6b89d
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        version: 2.8.5
      entries:
      - name: rhods-operator.2.8.5
        version: 2.8.5
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: eus-2.8
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.24.0
        version: 2.24.0
      - name: rhods-operator.2.23.0
        version: 2.23.0
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.21.0
        version: 2.21.0
      - name: rhods-operator.2.20.0
        version: 2.20.0
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.18.0
        version: 2.18.0
      - name: rhods-operator.2.17.0
        version: 2.17.0
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.15.0
        version: 2.15.0
      - name: rhods-operator.2.14.0
        version: 2.14.0
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: fast
    - currentCSV: rhods-operator.3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v2",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "datasciencecluster"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "aipipelines": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      }
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v2",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "dscinitialization"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:ce85b1b02706459a31fb64d1cbbd8130f5cd1707e21a85b4fe9e95bbd109c19c
          createdAt: "2025-11-10T09:43:22Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v2",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster"
                }
              },
              "spec": {
                "components": {
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "aipipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed"
                  },
                  "llamastackoperator": {
                    "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Removed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "dashboards.components.platform.opendatahub.io", "datasciencepipelines.components.platform.opendatahub.io",
            "kserves.components.platform.opendatahub.io", "kueues.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io",
            "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v2
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v2
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: GatewayConfig is the Schema for the gatewayconfigs API
            displayName: Gateway Config
            kind: GatewayConfig
            name: gatewayconfigs.services.platform.opendatahub.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (including PyTorch, TensorFlow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPUs, AMD GPUs, and Intel Gaudi AI accelerators)
          * AI Pipelines (including Elyra notebook interface)
          * Model Serving using Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/3.0
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:45ae3dbe4cd8c5ea8a5ba767bb95c540d618b6e8250dcb1dcbac01e3ec805245
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:95177d662c1ca6d86b77f2a9427945e4d65e8236b7adf15f3d35025063afe94f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:b87eb195a423337071aa318c28452d12070041168d41fb41e3ae3207619a3f16
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:4000a91132d67503a4691e76a7079f9140e3c8091fb1a59ad235446f96cb1a34
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:84a7c26966f563e970e5398cd0396df2b4fae3b680f14b38a59bfa34b3c3a2e6
        - registry.redhat.io/rhoai/odh-trustyai-ragas-lls-provider-dsp-rhel9@sha256:c1694891f19be1fe1abd431505549dc02021c389e640e77877bbb7921b42aa5b
        - registry.redhat.io/rhoai/odh-mod-arch-gen-ai-rhel9@sha256:459e5abcc3d5403ef25f53eb4c6cba75c88371c84dbf02d8cb67f478fbe624aa
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:4a035bb354c4a0e4040c277b2f1a1ffdc7e61f6f505c5fa5d032d22f50c4fa29
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:bd7352755c52f16dcfd7403f120f65dce7742dfacc393fc6bbecf359faac47c9
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:dd37de4ca53ce242a0f67a70d19eebf157679098a3417e9ffdf8e24378f6bdcc
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:de67ebe1de42971f1cb99df039044a6c79471802dedf666282e349c579f79c3a
        - registry.redhat.io/rhoai/odh-maas-api-rhel9@sha256:29165b6056073e3f040a8d4eab023dcc522281888f7e6db0aecd447762761115
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:bafee27b0842d196eb305963cc9b3f29d31cdf2c014af88b5965a8d908cc6f9a
        - registry.redhat.io/rhoai/odh-training-cuda128-torch28-py312-rhel9@sha256:851f2b31fa418d2eb172ddfa6010851bd5d4f0844d16b2b42a408f2c0b985b86
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:70e900e40845e82ef9ff4ac888afa6a6e835b019ad69aae7297d111e087520a3
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:78b6e29c66a425b9f097cba92240f96d32f756d379b779ed37ef51e8625364b5
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:c8c0e4bd524abd8295ccec00e7eacf6aefedd1e67d345e09088bc87e10f6827f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:4326604a5f2f5ac398f5bccf5259ab166fb21dbd273eb233ca558a22c1163312
        - registry.redhat.io/ubi9/toolbox@sha256:668ae64b30c95862377fc2414e48714f1aceff9d23a1d8c4141e3e83a4d4fc2a
        - registry.redhat.io/rhoai/odh-training-rocm64-torch28-py312-rhel9@sha256:501794be7653f12539fc420394c5ecfa2986109ef71785534e6e068212d07c25
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:9a6f0917e40d82684148d25c96e2a5b4a8a24dd3202734dfd7450f55d9e8b9c0
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:c90ccd4d3167d2092c451af95a773fea19821e4b8bf8fa754bf0b1b632a7f51e
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:4afc7a50800be57c57170b6ec2345fe0a9fab1eb4ae179025f6fae230bc05894
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:a59bb87677721dbadaa3e88e29d47470d0afa2c1b52c652caa77f74466beb698
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:ce85b1b02706459a31fb64d1cbbd8130f5cd1707e21a85b4fe9e95bbd109c19c
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:0bda59ab4c3db060b7221c630f6241cac086e3853470a07726289b87299f4da9
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:3d63cfa35ecee611a9075ea21060f75b0926f9b018622f52282b9f375b5ef968
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:ad756c01ec99a99cc7d93401c41b8d92ca96fb1ab7c5262919d818f2be4f3768
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:eaa42ee5a963696339c318b511a330b2b6fc9e1eb173d2d47f9cb757f6eb3da9
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:84a1b58dfdd85eac95478c681affb502d2402a14bf2879aad36f1d17dfd08f39
        - registry.redhat.io/rhaiis/vllm-rocm-rhel9@sha256:8624e2a5086cf1303b59154a817f60a3476d6ca48899261a2e477eb9e99ae781
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:13ec5c9b96a9ca8c0a1fcc0568cf6f893478742d28d3b1381f073b9bdafb3320
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:8d17607ba6e4b859ed724acd1cdf54e7dfff6989fd23dfd7b77faf55efcf883b
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:4f250fd17c023c43ca64ade19c84afbc77e72e66548573c2f987d10e6aed3821
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:5f7a974163856d07985b5da257688aad036427d3724194050782e58eab0cff1a
        - registry.redhat.io/rhoai/odh-kube-auth-proxy-rhel9@sha256:657bc0b43fe2da3211d80dc5085f57dccb451c30b1a254b87b4876745c414d36
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:b03cd2977bcb3d3a44795eb17e7fbc7dc842ab277fae441031ff921bdd7f56d4
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:3617ae4fba7499bf17ef591df2e787b353d6ec7962bbcf14c4c8b3edf045f314
        - registry.redhat.io/rhel9/mariadb-105@sha256:a376c86dc5b288516604d46bfb6025972e962b2be5a00e70d5d479ae465e0bcf
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:f5b70a687fef130c35bdeb108d7aab4a0eadf6182d379b6c517e9d1157713108
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:7e7aa488af45e4a038664881c7da3a9016fc9f9c7952efa35dfdc77971fcd5d3
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:6bf37b3786398e1d9b7004d5b08e0b4c58a5dcf453c02a9fb260bdfe9c32161e
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:b6304ccf7e8064bfdbacdfe998bbda099d6cfc36a9cd92b77e4126609ac34f4f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:daf66fb7ec41191aa15f32638fe79f4a76c7d158b705e0f761f5b77e1f91336c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:c00d908ff5d82c0b04ade151be9a5a97843606dd9fff731c849717ff79a3a596
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:eb68797b15eb5d748f2658ca41c7aafc5b9ca38882c56b87a22d5c9a3b5e2948
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:aaf677584e83ed6a93586afbe1c9b698430593e346c8cd00fb8485ba4350241d
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:4fe3183daa06c1605c47168db6f96a6dbd2b72df8ea99ef755372d7271299c3c
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:5f5f75d959ad8507704821add365539dab7401a7496bcc7cf2357c6cf32df3c4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:20b705332935cd372f06b86e36c521873b39c7660b077b90d39b7bd37700c679
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:59f75020cf630e2c7aeb1ca7692745c8e11e4ff46cc29fe7779213f7b56d1e71
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:c852573614458adaf8d0e4f8f3f675c036c3daa1ea8251c7601b2d4c22b3e7de
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:d5d3f661e1ab392b1e977f871a1cd95f60e4d7509f7c79d714a4bee10aa48293
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:fd83ee0ec98d0bfcd7f8567b2f802f08a3a8fe74eba2a74ae560f90c1c72bee5
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:ee6b2596c10ca608cc0897a84336871591bf701a08bf90f345d2232277cc0c3f
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:6a151dde578c2fbd7377864cd5d04268853e49046be62cccc1d298e444c73f0a
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8c99d5e93a469b2aa7f7ad4810f17114bd032392135607945669d92182e37fab
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:1431c04ecb88387a9e15566ba8105d19c7fbceecf65eb5731fe69cccbeb09cf5
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:2efaad91d9b7c997bdc41e6120d46620dd9890eb6bd6baca7124aa00f66fc972
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:1318b9f8de94db57dffb87447b34bf660eae0792915b4aa64375a0ba0f13ad85
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:03db3dd3eb3290b048853a8d943fa1a5099727ff0d1934eeb0a7177bdf0031e4
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:40e552687ecb12803db16edafb0cd93e39edd9269d1471a7ee1d011b43da1fa2
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:ed78d0c5946a2cc75c8bc2db6dbad5d757102acfa9defcd3f4a30829aa47d9d1
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:d79f02050b0cb8847c5f83c0a76ab47bc79a2fdaa2c18ab6ee6b3d94ef9bc7ba
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1552b758539ee09050b1923cf214d6d88543d51d7ca230d6880818ecf287c10b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:647df7a0f1d33fa04e39f1d38f918236e9983409a07fd9de21b085fc847f0854
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:3e08c969736bfa9a44f6c7811a4d1428c03fa80b52e0b6391aefba3c36758751
        - registry.redhat.io/rhoai/odh-model-performance-data-rhel9@sha256:eda8a51f260ea4e061b528ed2ef6f631a8680e5623ba5ef528698e71d34b3a58
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:a9546158ae141cc3c590732d578af95ac599965b3cfd47fa440e461658940125
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:65f00fbf16f2b8ec98765b854f395cee16d69f2f58d0fe81fc1ebeb3817fd326
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:d11ee73c3dab3bedb39a6da9c29b5221a307d9f69297a12df3489f04cf35506a
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:bfab4c5965e44d4428eb5a3d3ce85a81a163e15093d981a9fc474cd8f9fd64c2
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:9479d6829ab86ce510ca9c25e3fc69dff86553467672dd7f5cb356000e128916
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:77cac4adb89bce424db492657eb9023ac9574fd32096c3bc68b960020fade08c
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:c16cfc8521eccd9b494151ffa98dde6b7faa5e349da611d6091038a8590dc447
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:450b2b76c53f17163cdf91b03d35c296b8d7298d9cbb7b792fd2eabeaab794c2
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:e45e6925ad930d9195d906fc922cb956621c98533cc9ad1916c510e8a79c0904
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:3094dd9e7dd9fcc161fdfe983557edc9d773b2c07e727c0bbb0e37ac16a39d93
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:0224a782de0b062a91d9b0188a59f8fb169db2b7e21bed7624826d3fff7b7da4
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:a50f7e2e8891acbbebf64a2acab98ae64e21cea7a5b5ea4b63a148f4fed91b1f
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:726bdac8c5791695a5b0a43654fd482ffb7eda2fb384dcca42a73cce923a411f
        version: 3.0.0
      entries:
      - name: rhods-operator.3.0.0
        version: 3.0.0
      name: fast-3.x
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.22.2
        version: 2.22.2
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable
    - currentCSV: rhods-operator.2.10.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:8643f7ee8afacfe6ae08cbbf81da76ca97032dc3ce3da4fddf16e330e9e33a08
          createdAt: "2024-11-14T21:18:22Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.10.0 <2.10.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "SelfSigned"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:0ff5664c2eaadf3d3073b3d7fb711da47fb78d21f67710d8b8aad5452cb0355d
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:fdc2bc06b0dfa79ebc6451ac3793b5e8d9f165171633831dafe46ebc18c10c35
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:65db5e8cb2fa46d020ed4837d4479d133b52167c373e65f81cb590eec5391af2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:12741379ab24d2286b5fae77f4383fb65713af7b3356fb43d8254ea85d4b0ee3
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:214ca0608fcbc0fd585bf01768d28c7ba17082d1043349ec8445afd663095383
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:52e8deeeeaa21b17370a5d5cd644745da745b6e1cee8c6295d6df75c8d2aec04
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:a9c6e3afdf605465766fa93334cc0f6bb5e46a5fdfd7ec64d648e2ed72b05ccf
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:220cad7a22d40998063c6b4fb2f63e69330e64ca7118490a6680b05fc99b7733
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:8643f7ee8afacfe6ae08cbbf81da76ca97032dc3ce3da4fddf16e330e9e33a08
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:7df2f8bc2c5c0f4f347d009b62a058b5107413a2abd789f6010eb4d6c9e4f8ee
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:267d6795bf53f9a1955d73445776a428dd042af0cd3cb8bb5b91692a1bc1e5d2
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:5d15175f934017c04d6a6057200ff55b2172a1f4bcbeb0f2cd9e9e545631d93f
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:24238abd46633709feb75f2a3e41cf6c9e8528d2c0e4be2fac6f56de44e3fb9b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8911afbb65c8c4f10c3597624485be54b9103e87a5020b718b35ec3df2c9bf00
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:d9b55e8f25b81050380b4aab040243dc18a7432c48912c9b660c97dcc5eea008
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:2007da5abf840712cd2edb50462b2d8d571a0193c3ae1550d4a279eddf2b335f
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:f4d7d3ba4a0d3322bc9f327e095e9ec56073758f6dcd8da8c7bb185cf952ead5
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:d2514bf4b4b2d9abc19facac3f1a55405eb3ad0d9e9203e8816bfcfa08c9a6c5
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:0af6a91553f40ea40e86d85edc204658af3e5a45e8ab94cdb6b767e545df59b9
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:932e83fe9c9b54934767a7c5af683b2ab08bd2b4f0524c191f1c766dc64d9c3d
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:9f7b1cb8623de8b0550b0ba124d3b50f5e960ed011b33a3262c6346dbe2dff95
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:807ec05e9e107afc969e718d0c2c980959e2fd462e777a5ff63e55156ea150a4
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:4876f14ca9cff0e2b998a56f2f56d0775edf3963de610f4b810b4d94fb12d719
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:d709f65e1194bc877fa4f9ec681b598467703d94139d57b58c24490d3a59fb82
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:232ebac25084db056fdde49477b5c1e6a03a0228fea3758bcf6234b3d0eaa582
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:cba9f25ac6bb2734bb990a622b515c838b881edb688bf44ff196ebe7684ab74b
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:4da77afafde99b15fd357a4ab6609644bf6330a1d9c0c03e64726ed1b9633230
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a1d590d0e2b3fae9ecbd843a664dab083061e797f66a9f0a021b0c2c487d7e45
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:8fed8f58732bff512289fff738d0a94be67286c41b24eaf5928bbcb30d88c88a
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:a4b9553fde02d9c67a9c98f063eaf82fb1d2689f4b1269e57bf5f12c8d4adecf
        version: 2.10.2
      entries:
      - name: rhods-operator.2.10.2
        version: 2.10.2
      - name: rhods-operator.2.10.1
        version: 2.10.1
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.10
    - currentCSV: rhods-operator.2.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:28b5fff602ad6fb36d462e1905f453509ec22fc251a1e0cf64fedba86ff420d7
          createdAt: "2024-10-17T10:53:18Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.13.0 <2.13.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:363a35c332fc80b068157951d5e50e6b7209947649cc64803ffc02726e7581ab
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:cf3779c64bbaef1988886ed629c516e7d6ef7bdc73b9c95ad4c087b62e75750d
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:c2bd493e9345eccd124bbe0440e45cce8cf57588827d8eb9533f8bbadaa3ebbe
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:688389195aebf3f43e74e40d591d2fd5f9ae41994d8ac2db661f292f6eda012a
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:030c53690fe25e15bc9907f51c3f04fab39b4d085ff2098d26316ba32cc8b09f
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:fb630d6f5817512733b8ea05f7147121928917a24ac8d98239f43d920880c359
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:6b2c0d1dd40e2c276684e17818b14375bc778e6c88df0bdc3cc24bfc9294804f
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:7c895490d49beb6bd724f47ad1b17ce501650557b0889314799c4072632f2b99
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:bf25fce160dd7b8cce11e68a501006e4fa81a7858645038cdefdbba03df7ecdb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:8883bf71abf39b4a6985940c287eb6ac7dc137d491264805d48bb112b65bd008
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:a55f73d72ad2b07f01c49949cdb00969bfe4789375b3d7cdf9814b969fcc808d
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e1c19bbcd4c010ef2bd4f760eb24b2c96cdb82b4e025361a433e6a241eb23cf5
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:71abac4fb3d613edef7f3ba117a73bbeea61f341d6182e8310360a76576c789e
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:5d6354e65106460ab9285b42124faf288298387a8b16317565bd591f009c39a6
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c2ee4136ee0014d1ef395b5e3bcab125c846f5e258ece3631d912f431c8d208
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:2566b73e98b783871fb500bb1a8cc4e3d58a513c1bb18abfb525da0818e6138b
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:850901511bde065cf73e4c18d787dc10b6e91ca6139fc3ba68da28c41dd28236
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a3048eaa8924ce3571c6e78014438183fae70d9e8c833a7c07774c675104e3d4
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8c19c7fa535f36bdce3b73cf3300e321909d44954cbc63a8aef6321c5f2fa693
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:9ccdd7fe8223057a2234a3a2eb3b492e7b69e6ce714cc26a805fe2dd82935195
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:74e6cfa0bc481588cb8dc61c206ad567fbd2b28f43c2a86bee4a8e0eff55447c
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:7d085942e4da73c2ff4885c62f10b904dc70fd08e819e62f925eb1b4ddfa1554
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:fd4ce524acc1769475079c7231f5ea79ac29551c513855ef34e5694d2c9fbbd3
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:59e9cc9cd57ba48ca7e87ae1e797a902f826bb890cb198ccf549f76ea581ba6e
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:cd6b535d95eb1b44fe261a5336270fd898b966f431c14e173944484381c26d25
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:28b5fff602ad6fb36d462e1905f453509ec22fc251a1e0cf64fedba86ff420d7
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a37529eff3656a570d796083404e5a3f63603afecfe9e738da1a243c0cb3d7c2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8faab013568ee023968a5ec5b3a79977d7ddae3deafff6328e6fd56a27198e24
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f5b17f44c5ab72d6cf658f72f24f15e06a5ac9be1790336f7228ab8e7cfc15c3
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:77bca19180f30ef08f4d1598ac6c365e190bb7909ac4a1fb35d9ba9ba8d6ff7a
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        version: 2.13.1
      entries:
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.13
    - currentCSV: rhods-operator.2.16.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
          createdAt: "2025-09-24T13:27:25Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.16
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        version: 2.16.3
      entries:
      - name: rhods-operator.2.16.3
        version: 2.16.3
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.16
    - currentCSV: rhods-operator.2.19.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:c605e5fdb3d66302781146347df6da5a91dee97e4f8f5d9ac33f105b8cdee383
          createdAt: "2025-09-24T13:27:42Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:b30d60cd458133430d4c92bf84911e03cecd02f60e88a58d1c6c003543cf833a
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:f0ee0d27bb784e289f7d88cc8ee0e085ca70e88a5d126562105542f259a1ac01
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",  "workbenches.components.platform.opendatahub.io",
            "monitorings.services.platform.opendatahub.io","modelcontrollers.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:8ce44de8c683f198bf24ba36cd17e89708153d11f5b42c0a27e77f8fdb233551
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.19
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:6ad35cf5c4c62ed5ad4e192afe8cebead9796cb24a964401c76ff8656c47742f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:b24c25dfdcefb4ec26e7f311c00798df108f7685def2b1762b7624fdfb160ebf
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:af4721d61dfb61c75488a1bd6a5f62b23e20d7b7586a9cf51ba062ece2837715
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f49483df1d342d8e39f9a8085920aad79313a475df02a2292a136ecb784402b5
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:a6e02e1876fd5382ba4921dd65650b2d747666feb96c839f34e99d2972dfc323
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:b20ee16b776871d7c49b23f2bc91726812998561129f5dbd14eddbfe57964c93
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:8ce44de8c683f198bf24ba36cd17e89708153d11f5b42c0a27e77f8fdb233551
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:4e8f6c6ca0ed516b8310af0332637683b5bfc8f2946eb935c647698dffbbcc79
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:de0e4b7fb822101198817e83cd7e9f4f7406e75ec91d07a833a27a417cffe66b
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:53ac36baa374159b9065c718a9ede821bbb61d9ebe9502b2243e0a9f7aca0d16
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:71cd15f0b1acba3a48ebedff037bf8a846b426c18363a4de8896a376b6b7b3d5
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:bbef4839f24facce111d21aca43898dcf4e6cf57adb16200e3f1590bd5f89eae
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:b6039c3c33a5dc345ceb8e757437bb13023d2bf85cc2b4c10b9ab3887e78e0c0
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:87685c5cab105d876ff0d14b0e24d8dc2a1ff5b55bebe36028c5f3376b2a5271
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:c605e5fdb3d66302781146347df6da5a91dee97e4f8f5d9ac33f105b8cdee383
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8a6732ac3ca60f13dcb1fd8f186d2fc5dc601b9b5981a58f039af9e237f20044
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:baefbe4e7dd5aa74c71cb81da4a7a2b888a02d3eb1398ec4419bd8003b77f0c2
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:520ed21b80e5487b3a0a13b7e5c7d791d4dd28e0b6799d57abb65d53fca5a03f
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:49c02285fcef6949892cecca20eeee49d03a9bb4d17bb9ceff7c7a0dbbb8ab40
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:c8c23c07038f59db848dea0d4247b62840dbe58e1c581dc0722fb9d7f9be3b75
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:876ca7ce7b0b975688fb4a77d6cd1a6f87cf9eb40c2a9a5b84d8cffdc80eeebd
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:b30d60cd458133430d4c92bf84911e03cecd02f60e88a58d1c6c003543cf833a
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:c1c97b6beb759d3f6f2dd53c4258e4ccbb3bf35cf11873bd446b135defaa69d6
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:bf6231bfdbe52b597d86e03e4730ec105ebe7a639fcd529268b7c0423f2a890c
        - registry.redhat.io/rhel8/mariadb-103@sha256:f0ee0d27bb784e289f7d88cc8ee0e085ca70e88a5d126562105542f259a1ac01
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:d24e277f468b0a48f38801e8e0bcfeb8264c3f7c128073ddaa17934b8572cc3c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:6f01ac7cc62ab961b9c8a630a558338a61f6d7902301c4a1ad337495ac7ce85a
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel8@sha256:6166f525948a018c41d735014d97fdfa52024f7be31e18976d85d1a0d88901a0
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:6275a19ef06114b33d79833a94ef10cc8203368eee98e5d415e73d20cae1db85
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:4313cae03c041d461bc276abc23d706b582b5d16feab316796ca43478b9dc705
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:d47514cbceb3cc96e9d33b7db6fc1df60893e5c4118bf6086cdd27f04c472773
        version: 2.19.3
      entries:
      - name: rhods-operator.2.19.3
        version: 2.19.3
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.19
    - currentCSV: rhods-operator.2.22.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9292ff588ed93a002187b070b644c16de2696c0490c1c2c4d29a56e217963436
          createdAt: "2025-09-25T11:28:22Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",  "workbenches.components.platform.opendatahub.io",
            "monitorings.services.platform.opendatahub.io","modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io",
            "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.22
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:6234e15f001122ab222481321153fb0eba7f4d86bf3dfd64edf3f6cecbe7d62f
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:7b3d7787ba95156de9c284ad78f2d63a0d3bcb525f4d8d11ebf0203d4c5c1fe0
        - registry.redhat.io/ubi9/toolbox@sha256:ea4ce8cb8f59cf1b0709f1606d7cab074c3806d4016964eedc0555410cb5dfeb
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:2065b96bd6f0a830eab66e36217a927448cfc5a7dabf2a5e7d907aa6c40657a4
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:9104cbc2d595933f0a2acb7313e41ed69905e76a9fae6bd9820e7717b56a632b
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:d59ed40de694bc0e0564bab159a5b586cffa0721b6d761fb2d81dd42e6225d1c
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:cb5be3dd7098f4c8d66f9e85ad04656460df6102652deddc6cccb884a12be733
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:abe1f9dd11c7313fdd55b678be511a5cdc3546654a68e2b53d42c1013fec8d00
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:d7c4ac937add511460a36375d9b6b3c475a3a9a7cc96c00df2fbad6219aee0e9
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:5914f71e37c815ce2567826896e051303bdef52fae1acf8d02e672fc24c7eb9d
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:f9965177de24f3165ec4c001c14cf1e2c2c01ffe847839af837c442e3c96beae
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:ccba67a6a5aa3403e0018f29dcdfef483220dea8065d8b572e80c653ca992add
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:b2ca229bb4c4dbf04b96766b8af8d9f55f2edef59ec4110de0d20f8c857e7d27
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:2b3aace0d80474470e71c2c8291b25738e096109229fe6d5d3e06e9885ee58b6
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:e6fbe6723b4801f6854303b3fd7d4a4a36727bdd28dc28002b7de4929739ccc0
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:27415b1c763cf89b79391f0b039936c3e078a078bda4420f13bf10ef9be31d5e
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:2f3f305c97e50057781553416fb4026cde306ead0fbe0213627b9b5bbcc8a0c3
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:32c9511846077ef6035eb19be7653f6a78e0f207eb420ab93b18f742ab5779b6
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:b2c2ea9d35edbcd16e1ae559c88a453129b877fc049ab7a7cd6c2ebb8f0bcb59
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhel9/mariadb-105@sha256:5e77b33ce04c1eafc2e8840586ad6a5b51148dea8a46dda151071e28858331f0
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:7fd540586a1ca111370100a473923b3dc6cec4255e9e4f3654bfbabd9158a2bb
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:13f3679ab289eea9de54fe129a7c83f6c8ec5d26b61b430637a7c4cfcd31a74a
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9292ff588ed93a002187b070b644c16de2696c0490c1c2c4d29a56e217963436
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:1709fa3c79aad4ba7eb9be8299949396092c8e20210124e0c0936385bc04e839
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:a44d32a18b1e906c1411cafc82102881573fcd04e040a4e2ba6bd1bd617b70fa
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:5d79f0bcca0a213b53aee6d88834e503d343821596b857b13d3a6362de8ebeab
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:2f1a0a0803b2f5118b167e9d9c2e86660add5f79ee6f47044f63b0e8abe0b75f
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e87a96c8a61042e83b8db0194adf3fd84c3a311b1f3793345a35bfd0e7ea56d9
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:2fe9473cd1d6c445d2ca7cc357ee4bb009aa1838f9cb69ea418296b2a044816b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:bd6d1599b4ff9eb890be9808014715b28ca19247222d65f40df024db4dd3525a
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:74d4e0174655cf6f6273857325a1e714a1531c5a06ad38bf139bee9c7d8f5f19
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:e3b90530c6e38f6940d7f9408e9fa2c81eb06a857ec2b0bab5d006b1e9a63a4f
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:463e9be9c4409ba1e5a42713bd65844a023e7a3e9032d4e862edbaa5fe35300a
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        version: 2.22.2
      entries:
      - name: rhods-operator.2.22.2
        version: 2.22.2
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.22
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.22.2
        version: 2.22.2
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.25
    - currentCSV: rhods-operator.2.8.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              },
              {
                "apiVersion": "features.opendatahub.io/v1",
                "kind": "FeatureTracker",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "default-feature",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-feature"
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:b3563e201bf2720f60e73c0b04cb70566ea52eda7d09a28753f3a1487993c2e8
          createdAt: "2024-08-01T06:23:03Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.8.0 <2.8.4'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Removed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "SelfSigned"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Removed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.


          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines. (including Elyra notebook interface, and based on standard OpenShift Pipelines)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:68e1331f13dfaf6641a1e7d54f4cf29c0ef42663abc98b6dc69167892d2d8adb
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:df2edcaf4402b11ce24439263956e3b0cc43efbac2fdf152afacb1a398dcc59a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:5f39b11f0cd6db2d7d6e51ee666c030e2643aee92a090b49656c1e7dfd8a5430
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:eb4da3a645b53acfd6ce8758c043ae19b4126e62bcca09165114a141c2c8d014
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:889f046b255b13d99801108588d3abf577611b828657b5240a18ea21f0e3cbbe
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:92d9e4b53d580df6cc1f14a849b477749a1306941a2e8f9d1b6160f4911c3cff
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:9c90873fbd5af8fac8efc3c7c27fba742a06fad2d47f336319dd05d2b116867b
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:ab8792fcd16b1aa0065444ba54335cb3e747379740c3ec2d56beb46ff80cb044
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:1c49888ba2e9449c04d5588040c099290fce4793c2ba8874c1037316e550d6e1
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:06a6d5cbbe80d49bca9e4db9929571a69e35ae7951fcae84dcd6460f7ddf622c
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:987c768c0688431a53e48a80591f2a41e074994169f9e691b28b89528d8e736f
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:9799003449bfb61ae8f59efd2a611b0da3bccadd9b20cc1519f6c9279d085337
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:b6ecb3858c201498024e3bfc4a93e630699be4b1fdc3a65fd2d70e4b375eb9c2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:080377d42d782bf525b4072384d0cf8409b48019b3748ca7c855f340bcb94251
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:b3563e201bf2720f60e73c0b04cb70566ea52eda7d09a28753f3a1487993c2e8
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:91525fac5fadece75fbdafc40b94445fb92c88cfc8c2f06b596f8c6377e59c9e
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:cb711fcb32b5ca0f34c4e3c67624bc4e035de4247617d988a9e841fd58c1c911
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:0b8665e8978deb73be2cc65830f08a74a5a48f3e3ee7b2b817f7bbacba257d22
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:850b78a201effcafe33705dcd2670f1c470d8b46ba6e307032403627b55a7cfe
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:90833e85e0de3d7de870074c8b04319cd11b913b9652af6a5727aae41a91458c
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:1a6e29214e06a2665baadbed598ba758d6141bfa522984eb05f05a80558a403c
        version: 2.8.4
      entries:
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.8
    defaultChannel: stable
    packageName: rhods-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: prometurbo
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometurbo-operator.v8.7.1-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.7.1-SNAPSHOT
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/prometurbo@sha256:ef65de2143df2c93aa73f099fa66d39e3239c30a9d547ed7bf258da0a19e8e35
        - turbonomic/prometurbo-operator:8.7.1-SNAPSHOT
        version: 8.7.1-beta.1
      entries:
      - name: prometurbo-operator.v8.7.1-beta.1
        version: 8.7.1-beta.1
      name: beta
    - currentCSV: prometurbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.6
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - turbonomic/prometurbo-operator:8.6
        - quay.io/openshift-community-operators/prometurbo@sha256:cb8b13fece10b8217b79e63584f8df4975721f2cec82aada2cf6c266d72dbf75
        version: 8.6.0
      entries:
      - name: prometurbo-operator.v8.6.0
        version: 8.6.0
      - name: prometurbo-operator.v8.5.0
        version: 8.5.0
      name: stable
    - currentCSV: prometurbo-operator.v8.5.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.5
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/prometurbo@sha256:83444ab464bce4fb5021a2fca6d4d6ff72b40e90a6cfc9c5ac6c74357c775ad5
        - turbonomic/prometurbo-operator:8.5
        version: 8.5.0
      entries:
      - name: prometurbo-operator.v8.5.0
        version: 8.5.0
      name: v8.5.0
    - currentCSV: prometurbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.6
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/prometurbo@sha256:cb8b13fece10b8217b79e63584f8df4975721f2cec82aada2cf6c266d72dbf75
        - turbonomic/prometurbo-operator:8.6
        version: 8.6.0
      entries:
      - name: prometurbo-operator.v8.6.0
        version: 8.6.0
      - name: prometurbo-operator.v8.5.0
        version: 8.5.0
      name: v8.6.0
    defaultChannel: stable
    packageName: prometurbo
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/version: 5.8.6
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Crunchy Data
      provider-url: https://www.crunchydata.com/
    name: crunchy-postgres-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: postgresoperator.v5.8.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "CrunchyBridgeCluster",
                "metadata": {
                  "name": "example-crunchybridgecluster"
                },
                "spec": {
                  "clusterName": "example-bridge-cluster",
                  "isHa": false,
                  "majorVersion": 16,
                  "plan": "standard-4",
                  "provider": "aws",
                  "region": "us-west-2",
                  "secret": "crunchy-bridge-api-key",
                  "storage": "10Gi"
                }
              },
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "PGAdmin",
                "metadata": {
                  "name": "example-pgadmin",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "dataVolumeClaimSpec": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "1Gi"
                      }
                    }
                  },
                  "serverGroups": [
                    {
                      "name": "Crunchy Postgres for Kubernetes",
                      "postgresClusterSelector": {}
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "PGUpgrade",
                "metadata": {
                  "name": "example-upgrade"
                },
                "spec": {
                  "fromPostgresVersion": 16,
                  "postgresClusterName": "example",
                  "toPostgresVersion": 17
                }
              },
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "PostgresCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "backups": {
                    "pgbackrest": {
                      "repos": [
                        {
                          "name": "repo1",
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "instances": [
                    {
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      },
                      "replicas": 1
                    }
                  ],
                  "postgresVersion": 16
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: registry.connect.redhat.com/crunchydata/postgres-operator@sha256:c92df32b32c8d3b4ecdee0ad5f0f408bf33c906e9be7188a03a02db1bed61aaa
          createdAt: 2019-12-31 19:40Z
          description: Production Postgres Made Easy
          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"
          repository: https://github.com/CrunchyData/postgres-operator
          support: crunchydata.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGAdmin is the Schema for the PGAdmin API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          [Crunchy Postgres for Kubernetes](https://www.crunchydata.com/products/crunchy-postgresql-for-kubernetes), is the leading Kubernetes native
          Postgres solution. Built on PGO, the Postgres Operator from Crunchy Data, Crunchy Postgres for Kubernetes gives you a declarative Postgres
          solution that automatically manages your PostgreSQL clusters.

          Designed for your GitOps workflows, it is [easy to get started](https://access.crunchydata.com/documentation/postgres-operator/latest/quickstart)
          with Crunchy Postgres for Kubernetes. Within a few moments, you can have a production grade Postgres cluster complete with high availability, disaster
          recovery, and monitoring, all over secure TLS communications. Even better, Crunchy Postgres for Kubernetes lets you easily customize your Postgres
          cluster to tailor it to your workload!

          With conveniences like cloning Postgres clusters to using rolling updates to roll out disruptive changes with minimal downtime, Crunchy Postgres
          for Kubernetes is ready to support your Postgres data at every stage of your release pipeline. Built for resiliency and uptime, Crunchy Postgres
          for Kubernetes will keep your Postgres cluster in a desired state so you do not need to worry about it.

          Crunchy Postgres for Kubernetes is developed with many years of production experience in automating Postgres management on Kubernetes, providing
          a seamless cloud native Postgres solution to keep your data always available.

          Crunchy Postgres for Kubernetes is made available to users without an active Crunchy Data subscription in connection with Crunchy Data's
          [Developer Program](https://www.crunchydata.com/developers/terms-of-use).
          For more information, please contact us at [info@crunchydata.com](mailto:info@crunchydata.com).

          - **PostgreSQL Cluster Provisioning**: [Create, Scale, & Delete PostgreSQL clusters with ease][provisioning],
            while fully customizing your Pods and PostgreSQL configuration!
          - **High-Availability**: Safe, automated failover backed by a [distributed consensus based high-availability solution][high-availability].
            Uses [Pod Anti-Affinity][k8s-anti-affinity] to help resiliency; you can configure how aggressive this can be!
            Failed primaries automatically heal, allowing for faster recovery time. You can even create regularly scheduled
            backups as well and set your backup retention policy
          - **Disaster Recovery**: [Backups][backups] and [restores][disaster-recovery] leverage the open source [pgBackRest][] utility and
            [includes support for full, incremental, and differential backups as well as efficient delta restores][backups].
            Set how long you want your backups retained for. Works great with very large databases!
          - **Monitoring**: [Track the health of your PostgreSQL clusters][monitoring] using the open source [pgMonitor][] library and OpenTelemetry.
          - **Clone**: [Create new clusters from your existing clusters or backups][clone] with efficient data cloning.
          - **TLS**: All connections are over [TLS][tls]. You can also [bring your own TLS infrastructure][tls] if you do not want to use the provided defaults.
          - **Connection Pooling**: Advanced [connection pooling][pool] support using [pgBouncer][].
          - **Affinity and Tolerations**: Have your PostgreSQL clusters deployed to [Kubernetes Nodes][k8s-nodes] of your preference.
            Set your [pod anti-affinity][k8s-anti-affinity], node affinity, Pod tolerations and more rules to customize your deployment topology!
          - **PostgreSQL Major Version Upgrades**: Perform a [PostgreSQL major version upgrade][major-version-upgrade] declaratively.
          - **Database Administration**: Easily deploy [pgAdmin4][pgadmin] to administer your PostgresClusters' databases.
            The automatic discovery of PostgresClusters ensures that you are able to seamlessly access any databases within your environment from the pgAdmin4 GUI.
          - **Full Customizability**: Crunchy PostgreSQL for Kubernetes makes it easy to get your own PostgreSQL-as-a-Service up and running
            and fully customize your deployments, including:
              - Choose the resources for your Postgres cluster: [container resources and storage size][resize-cluster]. [Resize at any time][resize-cluster] with minimal disruption.
              - Use your own container image repository, including support `imagePullSecrets` and private repositories
              - [Customize your PostgreSQL configuration][customize-cluster]

          and much more!

          [backups]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/backups-disaster-recovery
          [clone]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/backups-disaster-recovery/disaster-recovery
          [customize-cluster]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/day-two/customize-cluster
          [disaster-recovery]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/backups-disaster-recovery/disaster-recovery
          [high-availability]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/day-two/high-availability
          [major-version-upgrade]: https://access.crunchydata.com/documentation/postgres-operator/v5/guides/major-postgres-version-upgrade/
          [monitoring]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/day-two/monitoring
          [pool]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/basic-setup/connection-pooling
          [provisioning]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/basic-setup/create-cluster
          [resize-cluster]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/cluster-management/resize-cluster
          [tls]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/day-two/customize-cluster#customize-tls

          [k8s-anti-affinity]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#inter-pod-affinity-and-anti-affinity
          [k8s-nodes]: https://kubernetes.io/docs/concepts/architecture/nodes/

          [pgAdmin]: https://www.pgadmin.org/
          [pgBackRest]: https://www.pgbackrest.org
          [pgBouncer]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/basic-setup/connection-pooling
          [pgMonitor]: https://github.com/CrunchyData/pgmonitor

          ## Post-Installation

          ### Tutorial

          Want to [learn more about the PostgreSQL Operator][tutorial]? Browse through the [tutorial][] to learn more about what you can do,
          [join the Discord server][discord] for community support, or check out the [PGO GitHub repo][ghrepo] to learn more
          about the open source Postgres Operator project that powers Crunchy Postgres for Kubernetes.

          [tutorial]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials
          [discord]: https://discord.gg/a7vWKG8Ec9
          [ghrepo]: https://github.com/CrunchyData/postgres-operator
        displayName: Crunchy Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - crunchy data
        links:
        - name: Crunchy Data
          url: https://www.crunchydata.com/
        - name: Documentation
          url: https://access.crunchydata.com/documentation/postgres-operator/v5/
        maintainers:
        - email: info@crunchydata.com
          name: Crunchy Data
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Crunchy Data
          url: https://www.crunchydata.com/
        relatedImages:
        - registry.connect.redhat.com/crunchydata/postgres-operator@sha256:c92df32b32c8d3b4ecdee0ad5f0f408bf33c906e9be7188a03a02db1bed61aaa
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:f3977ebceb725e0abd789776e27ed74026c98c2e41fc8b19bb57015fe40f77c5
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:4412a85a0c795e72142fc28b90aef513175f4bc55911a189733daaddaa7111f2
        - registry.connect.redhat.com/crunchydata/postgres-operator-bundle@sha256:8c02e461c615d8963a62e9279fd808ee7fa633443b44facde9f588a61c771819
        - registry.connect.redhat.com/crunchydata/crunchy-pgbouncer@sha256:22414de1b9fea7d88bb753ea67a0f3634427f87590a405fa5eaddefe5b101176
        - registry.connect.redhat.com/crunchydata/crunchy-pgbackrest@sha256:35ec028bae6c112d9bba20f5a9e8dcf4c2610cc11728d23a1bdfbc0357676bfc
        - registry.connect.redhat.com/crunchydata/crunchy-upgrade@sha256:c953467c06f4c94aef0daca6266b2b46e5f369b5b4db256b77098c56d1099008
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:26784e2511af35de6969acea943706664e333aee928bcbb86eaec0bafb3a465b
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:eced136169980e95d8f002e2f95cef44e4132a70d06e3399f236241d3899af76
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:c1d6337497b1eca5ec48fbbb213e837522627210e8a0d6675980de5c41cb29d4
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:d28a2eb25b47ca13350e525fdc72969883913ca429595a4131d7f41a1aa4e0ce
        - registry.connect.redhat.com/crunchydata/crunchy-pgadmin4@sha256:501cdc79d624fd1d3a2efbbfcafb9aac876e65d2e4fc3f61431259fc35c42f4c
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:5ae16b986731fd9545bc6485f20d913429d38155f86e4eec629a511014a192f9
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:c388de55a1762a218299c555fda6a451ffc1df6b12b80b6873e4cd3107b12530
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-exporter@sha256:b455b35086cbac3fc365a5fe32399ca023b292351447659200215988869b60f0
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:a9b8a9c5bf512078b215c63da65a2daf7511bc0e00d00513d966269220ec4583
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:bdebb3134cf0c07105ca873805e739846750cde03eb865682195eb58b6517dce
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:2083776ac27ddb96bc9e4ca5db2ed92c60b1b24277af7975fd86aaca37060dce
        version: 5.8.6
      entries:
      - name: postgresoperator.v5.8.6
        version: 5.8.6
      - name: postgresoperator.v5.8.5
        version: 5.8.5
      - name: postgresoperator.v5.8.4
        version: 5.8.4
      - name: postgresoperator.v5.8.3
        version: 5.8.3
      - name: postgresoperator.v5.8.2
        version: 5.8.2
      - name: postgresoperator.v5.8.1
        version: 5.8.1
      - name: postgresoperator.v5.8.0
        version: 5.8.0
      - name: postgresoperator.v5.7.4
        version: 5.7.4
      - name: postgresoperator.v5.7.3
        version: 5.7.3
      - name: postgresoperator.v5.7.2
        version: 5.7.2
      - name: postgresoperator.v5.7.1
        version: 5.7.1
      - name: postgresoperator.v5.7.0
        version: 5.7.0
      - name: postgresoperator.v5.6.1
        version: 5.6.1
      - name: postgresoperator.v5.6.0
        version: 5.6.0
      - name: postgresoperator.v5.5.2
        version: 5.5.2
      - name: postgresoperator.v5.5.1
        version: 5.5.1
      - name: postgresoperator.v5.5.0
        version: 5.5.0
      - name: postgresoperator.v5.4.4
        version: 5.4.4
      - name: postgresoperator.v5.4.3
        version: 5.4.3
      - name: postgresoperator.v5.4.2
        version: 5.4.2
      - name: postgresoperator.v5.4.1
        version: 5.4.1
      - name: postgresoperator.v5.4.0
        version: 5.4.0
      - name: postgresoperator.v5.3.0
        version: 5.3.0
      - name: postgresoperator.v5.2.0
        version: 5.2.0
      - name: postgresoperator.v5.1.3
        version: 5.1.3
      - name: postgresoperator.v5.1.2
        version: 5.1.2
      - name: postgresoperator.v5.1.1
        version: 5.1.1
      - name: postgresoperator.v5.1.0
        version: 5.1.0
      name: v5
    defaultChannel: v5
    packageName: crunchy-postgres-operator
    provider:
      name: Crunchy Data
      url: https://www.crunchydata.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Saison Technology Co., Ltd.
      provider-url: https://www.hulft.com/
    name: hulft
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hulft.v10.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hulft.saison-technology.com/v1",
                "kind": "Hulft",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "hulft",
                    "app.kubernetes.io/instance": "sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hulft",
                    "app.kubernetes.io/part-of": "hulft"
                  },
                  "name": "sample",
                  "namespace": "user-apps"
                },
                "spec": {
                  "applicationName": "hulft-apps",
                  "control": {
                    "allowExternalAccess": true,
                    "replicas": {
                      "max": 1,
                      "min": 1
                    }
                  },
                  "db": {
                    "authorizationSecret": "secret-hulft-db-authorization",
                    "connectionRetryCount": 30,
                    "hostname": "database.example.com",
                    "name": "hulft",
                    "port": 3306,
                    "tablePrefix": "hulft"
                  },
                  "licenseSecret": "secret-hulft-license",
                  "resourceIdentifier": "sample",
                  "transfer": {
                    "control": {
                      "retryCount": 10,
                      "retryInterval": 10000,
                      "timeout": 60000
                    },
                    "gracefulShutdownWait": 3600,
                    "observe": {
                      "websocket": {
                        "allowExternalAccess": false
                      }
                    },
                    "replicas": {
                      "max": 5,
                      "min": 1
                    },
                    "s3": {
                      "defaultRegion": "ap-northeast-1"
                    },
                    "websocket": {
                      "allowExternalAccess": false
                    }
                  }
                },
                "status": {
                  "applicationName": "hulft-apps",
                  "control": {
                    "allowExternalAccess": true,
                    "apiClientTlsSecret": "secret-hulft-sample-transfer-control-server-tls",
                    "consoleLoginSecret": "secret-hulft-sample-console-login",
                    "consoleTlsSecret": "secret-hulft-sample-control-console-tls",
                    "hostname": "",
                    "httpPort": 30080,
                    "httpsPort": 30443,
                    "replicas": {
                      "max": 1,
                      "min": 1
                    },
                    "samlSecret": ""
                  },
                  "db": {
                    "authorizationSecret": "secret-hulft-db-authorization",
                    "connectionRetryCount": 30,
                    "encryptionKeySecret": "secret-hulft-sample-db-encryption-key",
                    "hostname": "database.example.com",
                    "name": "hulft",
                    "port": 3306,
                    "tablePrefix": "hulft"
                  },
                  "licenseSecret": "secret-hulft-license",
                  "resourceIdentifier": "sample",
                  "transfer": {
                    "control": {
                      "clientTlsSecret": "secret-hulft-sample-control-console-tls",
                      "port": 30443,
                      "retryCount": 10,
                      "retryInterval": 10000,
                      "serverTlsSecret": "secret-hulft-sample-transfer-control-server-tls",
                      "timeout": 60000
                    },
                    "gracefulShutdownWait": 3600,
                    "hostname": "hulft-sample-transfer-wss-ci.apps.openshift.example.com",
                    "hulft": {
                      "port": 30000
                    },
                    "observe": {
                      "port": 31000,
                      "websocket": {
                        "allowExternalAccess": true,
                        "port": 33443,
                        "serverTlsSecret": "secret-hulft-sample-transfer-observe-wss-server-tls"
                      }
                    },
                    "replicas": {
                      "max": 5,
                      "min": 1
                    },
                    "s3": {
                      "authenticationSecret": "",
                      "defaultRegion": "ap-northeast-1"
                    },
                    "websocket": {
                      "allowExternalAccess": true,
                      "clientTlsSecret": "",
                      "port": 31443,
                      "serverTlsSecret": "secret-hulft-sample-transfer-wss-server-tls"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/saison-technology/hulft-operator@sha256:8ee0a29d0ce96f4ec230f387467b241dccbb2bd350cd642b275ef5f5d3b64972
          createdAt: "2025-10-09T04:43:01Z"
          description: HULFT10 for Container Platform is file integration middleware
            that provides transfer functions for the data accumulated in your IT system
            during the daily operations of your business, such as sales data, customer
            information, and various logs. File transfer from/to on-premises HULFT
            is also available.
          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: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/valid-subscription: To use HULFT10 for Container
            Platform, you must purchase the product and have a key issued. Please
            refer to [Start Up Guide](https://www.hulft.com/help/ja-jp/HULFT-V10/CONP-SUGOS)
            for the deployment procedure.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Saison Technology Co., Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Hulft is the Schema for the hulfts API
            displayName: Hulft
            kind: Hulft
            name: hulfts.hulft.saison-technology.com
            version: v1
        description: |
          HULFT10 for Container Platform is file integration middleware that provides transfer functions for the data accumulated in your IT system during the daily operations of your business, such as sales data, customer information, and various logs. File transfer from/to on-premises HULFT is also available.
          To use HULFT10 for Container Platform, you must purchase the product and have a key issued. Please refer to [Start Up Guide](https://www.hulft.com/help/ja-jp/HULFT-V10/CONP-SUGOS) for the deployment procedure.
        displayName: HULFT10 for Container Platform
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backup & Recovery
        - Storage
        - Migration
        links:
        - name: Product page
          url: https://www.hulft.com/software/hulft-10
        - name: Product manual
          url: https://www.hulft.com/help/ja-jp/HULFT-V10/index.htm
        maintainers:
        - email: salessupport_mp@hulft.com
          name: Saison Technology Co., Ltd.
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Saison Technology Co., Ltd.
          url: https://www.hulft.com/
        relatedImages:
        - registry.connect.redhat.com/saison-technology/hulft-operator@sha256:8ee0a29d0ce96f4ec230f387467b241dccbb2bd350cd642b275ef5f5d3b64972
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.connect.redhat.com/saison-technology/hulft-bundle@sha256:8f0b469b347670a729ba629b3b0da57d51981644bd894b3afc3d911041ccde6a
        version: 10.5.0
      entries:
      - name: hulft.v10.5.0
        version: 10.5.0
      - name: hulft.v10.4.0
        version: 10.4.0
      - name: hulft.v10.3.0
        version: 10.3.0
      name: stable
    defaultChannel: stable
    packageName: hulft
    provider:
      name: Saison Technology Co., Ltd.
      url: https://www.hulft.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hazelcast, Inc
      provider-url: ""
    name: hazelcast-platform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hazelcast-platform-operator.v5.15.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "cache-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "CronHotBackup",
                "metadata": {
                  "name": "cronhotbackup-sample"
                },
                "spec": {
                  "hotBackupTemplate": {
                    "metadata": {
                      "labels": {
                        "cron-hotbackup": "true"
                      }
                    },
                    "spec": {
                      "hazelcastResourceName": "hazelcast"
                    }
                  },
                  "schedule": "*/30 * * * *"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Flow",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hazelcast-platform-operator"
                  },
                  "name": "flow"
                },
                "spec": {
                  "database": {
                    "host": "flow-postgresql",
                    "secretName": "flow-db-secret"
                  },
                  "env": [
                    {
                      "name": "OPTIONS",
                      "value": "--flow.analytics.persistRemoteCallResponses=true --flow.analytics.persistResults=false --flow.config.custom.managementCenterUrl=http://34.140.160.158/mc\n"
                    }
                  ],
                  "externalConnectivity": {
                    "ingress": {
                      "annotations": {
                        "kubernetes.io/ingress.class": "nginx",
                        "nginx.ingress.kubernetes.io/enable-opentelemetry": "true",
                        "nginx.ingress.kubernetes.io/ssl-redirect": "false"
                      },
                      "hostname": "",
                      "ingressClassName": "nginx",
                      "path": "/"
                    }
                  },
                  "imagePullSecrets": [
                    {
                      "name": "hazelcast-cloud-hazelcast-connect-demo-pull-secret"
                    }
                  ],
                  "licenseKeySecretName": "flow-mc-license-key",
                  "repository": "quay.io/hazelcast_cloud/hazelcast-flow-internal",
                  "size": 3,
                  "version": "next"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast"
                },
                "spec": {
                  "clusterSize": 3,
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast-sample"
                },
                "spec": {
                  "clusterSize": 3,
                  "jet": {
                    "bucketConfig": {
                      "bucketURI": "gs://operator-user-code/jetJobs",
                      "secretName": "br-secret-gcp"
                    },
                    "enabled": true,
                    "resourceUploadEnabled": true
                  },
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HazelcastEndpoint",
                "metadata": {
                  "name": "hazelcastendpoint-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "port": 5701,
                  "type": "Discovery"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HotBackup",
                "metadata": {
                  "name": "hot-backup"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-longrun"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-longrun-2.0.0.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-1.0.2.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJobSnapshot",
                "metadata": {
                  "name": "jetjobsnapshot-sample"
                },
                "spec": {
                  "cancelJob": false,
                  "jetJobResourceName": "jet-job"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ManagementCenter",
                "metadata": {
                  "name": "managementcenter"
                },
                "spec": {
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "hazelcastClusters": [
                    {
                      "address": "hazelcast",
                      "name": "dev"
                    }
                  ],
                  "licenseKeySecretName": "hazelcast-license-key",
                  "persistence": {
                    "enabled": true,
                    "size": "10Gi"
                  },
                  "repository": "hazelcast/management-center"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Map",
                "metadata": {
                  "name": "map"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "MultiMap",
                "metadata": {
                  "name": "multimap-sample"
                },
                "spec": {
                  "backupCount": 3,
                  "binary": true,
                  "collectionType": "LIST",
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Queue",
                "metadata": {
                  "name": "queue-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ReplicatedMap",
                "metadata": {
                  "name": "replicatedmap-sample"
                },
                "spec": {
                  "asyncFillup": true,
                  "hazelcastResourceName": "hazelcast",
                  "inMemoryFormat": "OBJECT"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Topic",
                "metadata": {
                  "name": "topic-sample"
                },
                "spec": {
                  "globalOrderingEnabled": true,
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "UserCodeNamespace",
                "metadata": {
                  "name": "ucn-sample"
                },
                "spec": {
                  "bucketConfig": {
                    "bucketURI": "gs://operator-user-code/userCodeNamespace",
                    "secretName": "br-secret-gcp"
                  },
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "VectorCollection",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hazelcast-platform-operator"
                  },
                  "name": "vectorcollection-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "indexes": [
                    {
                      "dimension": 10,
                      "efConstruction": 256,
                      "maxDegree": 32,
                      "metric": "Dot",
                      "useDeduplication": false
                    }
                  ]
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanReplication",
                "metadata": {
                  "name": "wanreplication-sample"
                },
                "spec": {
                  "endpoints": "35.192.33.252",
                  "resources": [
                    {
                      "kind": "Map",
                      "name": "map-sample"
                    },
                    {
                      "kind": "Hazelcast",
                      "name": "hz-sample"
                    }
                  ],
                  "targetClusterName": "dev"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanSync",
                "metadata": {
                  "name": "wansync-sample"
                },
                "spec": {
                  "wanReplicationResourceName": "wan-replication-sample"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: docker.io/hazelcast/hazelcast-platform-operator@sha256:59328a4ea7a4e2110e0750364db792cf266f1e7231e3bb321e3de09d535dab23
          createdAt: "2025-03-13T11:59:59Z"
          description: Install Hazelcast clusters in Kubernetes environments.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/hazelcast/hazelcast-platform-operator/
          support: Hazelcast, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.hazelcast.com
            version: v1alpha1
          - description: CronHotBackup is the Schema for the cronhotbackups API
            displayName: Cron Hot Backup
            kind: CronHotBackup
            name: cronhotbackups.hazelcast.com
            version: v1alpha1
          - description: Flow is the Schema for the flows API
            displayName: Flow
            kind: Flow
            name: flows.hazelcast.com
            version: v1alpha1
          - description: HazelcastEndpoint is the Schema for the hazelcastendpoints
              API
            displayName: Hazelcast Endpoint
            kind: HazelcastEndpoint
            name: hazelcastendpoints.hazelcast.com
            version: v1alpha1
          - description: Hazelcast is the Schema for the hazelcasts API
            displayName: Hazelcast
            kind: Hazelcast
            name: hazelcasts.hazelcast.com
            version: v1alpha1
          - description: HotBackup is the Schema for the hot backup API
            displayName: Hot Backup
            kind: HotBackup
            name: hotbackups.hazelcast.com
            version: v1alpha1
          - description: JetJob is the Schema for the jetjobs API
            displayName: Jet Job
            kind: JetJob
            name: jetjobs.hazelcast.com
            version: v1alpha1
          - description: JetJobSnapshot is the Schema for the jetjobsnapshots API
            displayName: Jet Job Snapshot
            kind: JetJobSnapshot
            name: jetjobsnapshots.hazelcast.com
            version: v1alpha1
          - description: ManagementCenter is the Schema for the managementcenters
              API
            displayName: Management Center
            kind: ManagementCenter
            name: managementcenters.hazelcast.com
            version: v1alpha1
          - description: Map is the Schema for the maps API
            displayName: Map
            kind: Map
            name: maps.hazelcast.com
            version: v1alpha1
          - description: MultiMap is the Schema for the multimaps API
            displayName: Multi Map
            kind: MultiMap
            name: multimaps.hazelcast.com
            version: v1alpha1
          - description: Queue is the Schema for the queues API
            displayName: Queue
            kind: Queue
            name: queues.hazelcast.com
            version: v1alpha1
          - description: ReplicatedMap is the Schema for the replicatedmaps API
            displayName: Replicated Map
            kind: ReplicatedMap
            name: replicatedmaps.hazelcast.com
            version: v1alpha1
          - description: Topic is the Schema for the topics API
            displayName: Topic
            kind: Topic
            name: topics.hazelcast.com
            version: v1alpha1
          - description: UserCodeNamespace is the Schema for the usercodenamespaces
              API
            displayName: User Code Namespace
            kind: UserCodeNamespace
            name: usercodenamespaces.hazelcast.com
            version: v1alpha1
          - description: VectorCollection is the Schema for the vectorcollections
              API
            displayName: Vector Collection
            kind: VectorCollection
            name: vectorcollections.hazelcast.com
            version: v1alpha1
          - description: WanReplication is the Schema for the wanreplications API
            displayName: Wan Replication
            kind: WanReplication
            name: wanreplications.hazelcast.com
            version: v1alpha1
          - description: WanSync is the Schema for the wansyncs API
            displayName: Wan Sync
            kind: WanSync
            name: wansyncs.hazelcast.com
            version: v1alpha1
        description: |
          Easily deploy Hazelcast clusters and Management Center into Kubernetes environments and manage their lifecycles.

          ## Before You Start

          If you are planning to create Hazelcast Platform Enterprise clusters, you need to [create a secret](https://docs.hazelcast.com/operator/latest/get-started#step-2-start-the-hazelcast-cluster) for the license. You can request a trial license key from [here](https://trialrequest.hazelcast.com).

          For Hazelcast Platform clusters, you can simply continue.

          ## Documentation

          1. [Get started](https://docs.hazelcast.com/operator/latest/get-started) with the Operator
          2. [Connect to the cluster from outside Kubernetes](https://guides.hazelcast.org/hazelcast-platform-operator-expose-externally)
          3. [Restore a Cluster from Cloud Storage with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-external-backup-restore)
          4. [Replicate Data between Two Hazelcast Clusters with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-wan-replication)

          ## Features

          Hazelcast Platform Operator supports the features below:

          * Custom resource for Hazelcast Platform (Enterprise) and Management Center
          * Observe status of Hazelcast clusters and Management Center instances
          * High Availability Mode configuration to create clusters that are resilient to node and zone failures
          * Support for TLS connections between members using self-signed certificates
          * Scale up and down Hazelcast clusters
          * Expose Hazelcast cluster to external clients ([Smart & Unisocket](https://docs.hazelcast.com/hazelcast/latest/clients/java#java-client-operation-modes))
          * Backup Hazelcast persistence data to cloud storage with the possibility of scheduling it and restoring the data accordingly
          * WAN Replication feature when you need to synchronize multiple Hazelcast clusters, which are connected by WANs
          * Full and Delta WAN Sync support
          * Tiered Storage support for Hazelcast and Map CRs
          * CP Subsystem configuration support for Hazelcast CR
          * User Code Deployment feature, which allows you to deploy custom and domain classes from cloud storages and URLs to Hazelcast members
          * The User Code Namespaces feature allows you to deploy custom and domain classes at runtime without a members restart
          * Support the configuration of advanced networking options
          * Support Multi-namespace configuration
          * ExecutorService and EntryProcessor support
          * Support several data structures like Map, Topic, MultiMap, ReplicatedMap, Queue and Cache which can be created dynamically via specific Custom Resources
          * MapStore, Near Cache and off-heap memory (HD memory and native memory) support for the Map CR
          * Native Memory support for the Cache CR
          * Support Jet configuration and Jet Job submission using the JetJob CR
          * Support for exporting the snapshots of JetJob CRs using JetJobSnapshot CR
          * Support for custom configurations using ConfigMap
        displayName: Hazelcast Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hazelcast
        - keyvalue
        - in-memory
        - database
        - caching
        links:
        - name: Documentation
          url: https://docs.hazelcast.com/operator/latest/
        - name: Source Code
          url: https://github.com/hazelcast/hazelcast-platform-operator
        maintainers:
        - email: cloudnative@hazelcast.com
          name: Hazelcast Cloud Native Team
        maturity: alpha
        minKubeVersion: 1.22.7
        provider:
          name: Hazelcast, Inc
        relatedImages:
        - docker.io/hazelcast/hazelcast-platform-operator@sha256:59328a4ea7a4e2110e0750364db792cf266f1e7231e3bb321e3de09d535dab23
        - registry.connect.redhat.com/hazelcast/hazelcast-platform-operator-bundle@sha256:0aabd3e7f5f993c1288450678d55e8f7b36c8b30894e5d844521a474aa6b2714
        version: 5.15.0
      entries:
      - name: hazelcast-platform-operator.v5.15.0
        version: 5.15.0
      name: alpha
    defaultChannel: alpha
    packageName: hazelcast-platform-operator
    provider:
      name: Hazelcast, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MuleSoft
      provider-url: anypoint.mulesoft.com
    name: runtime-fabric-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runtime-fabric-operator.v3.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rtf.operators.mulesoft.com/v1",
                "kind": "RuntimeFabric",
                "metadata": {
                  "name": "runtime-fabric"
                },
                "spec": {
                  "activationData": null,
                  "agent": {
                    "replicas": 1,
                    "app": {
                      "resources": {
                        "limits": {
                          "cpu": "1000m",
                          "memory": "500Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "200Mi"
                        }
                      }
                    },
                    "rtfd": {
                      "resources": {
                        "limits": {
                          "cpu": "200m",
                          "memory": "300Mi"
                        },
                        "requests": {
                          "cpu": "150m",
                          "memory": "200Mi"
                        }
                      },
                      "watch": {
                        "enabled": true,
                        "components": {
                          "deployments": {
                            "enabled": true
                          },
                          "ingress": {
                            "enabled": true
                          },
                          "secrets": {
                            "enabled": true
                          },
                          "persistencegateways": {
                            "enabled": true
                          },
                          "nodes": {
                            "enabled": true
                          },
                          "jobs": {
                            "enabled": true
                          },
                          "routes": {
                            "enabled": true
                          }
                        }
                      },
                      "anypointController": {
                        "enabled": false
                      }
                    }
                  },
                  "resource-cache": {
                    "replicas": 1,
                    "nginx": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "250Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      }
                    },
                    "fetcher": {
                      "resources": {
                        "limits": {
                          "cpu": "50m",
                          "memory": "100Mi"
                        },
                        "requests": {
                          "cpu": "50m",
                          "memory": "50Mi"
                        }
                      }
                    }
                  },
                  "mule-clusterip-service": {
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "500Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "global": {
                    "cluster": {
                      "flavor": "byok",
                      "type": "openshift"
                    },
                    "containerLogPaths": [
                      "/var/lib/docker/containers",
                      "/var/log/containers",
                      "/var/log/pods"
                    ],
                    "core": {
                      "affinity": {},
                      "tolerations": [],
                      "topologySpreadConstraints": [
                        {
                          "maxSkew": 1,
                          "topologyKey": "topology.kubernetes.io/zone",
                          "whenUnsatisfiable": "ScheduleAnyway"
                        }
                      ]
                    },
                    "worker": {
                      "affinity": {},
                      "tolerations": []
                    },
                    "deployment": {
                      "nodeSelector": ""
                    },
                    "image": {
                      "provider": "aws",
                      "pullSecretName": "rtf-pull-secret",
                      "rtfRegistry": "rtf-runtime-registry.kprod.msap.io",
                      "repositoryNamespace": "mulesoft"
                    },
                    "service": {
                      "clusterIp": null
                    },
                    "authorizedNamespaces": false,
                    "fipsEnabled": false,
                    "crds": {
                      "install": true,
                      "keep": true,
                      "flex": {
                        "enabled": false
                      }
                    },
                    "nodeWatcherEnabled": true,
                    "nodeReconciliation": true,
                    "deploymentRateLimitPerSecond": 1
                  },
                  "muleLicense": null,
                  "proxy": {
                    "http_no_proxy": null,
                    "http_proxy": null,
                    "monitoring_proxy": null
                  },
                  "customLog4jEnabled": false
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
          createdAt: "2025-12-09T02:04:18Z"
          description: Runtime Fabric Operator Application from Mulesoft
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/mulesoft/rtf-ocp-operator
          support: MuleSoft
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Runtime Fabric Operator from Mulesoft
              **Activation data**
              Used to install Runtime Fabric on a Kubernetes service. Copy this value from the Runtime Fabric setup page in Runtime Manager.
              **Registry URL**
              The registry from which to retrieve the images needed to install and run Runtime Fabric. If you're using a local registry, specify the URL here.
                * Default registry URLs:
                    - US control plane: rtf-runtime-registry.kprod.msap.io
                    - EU control plane: rtf-runtime-registry.kprod-eu.msap.io
              **Registry pull secret**
              Used to retrieve images from the registry. Change this value only if you did so during the operator installation.
              **Mule license key**
              Your company’s Mule license key. The key is not required during install, but it is required to deploy applications to Runtime Fabric. Must be Base64 encoded.
            displayName: Runtime Fabric
            kind: RuntimeFabric
            name: runtimefabrics.rtf.operators.mulesoft.com
            version: v1
        description: |-
          Anypoint Runtime Fabric is a container service that you install in your existing Red Hat OpenShift cluster that enables you to run Mule applications, composite APIs, and API gateways across any environment with centralized management via Anypoint Platform.
          Capabilities of Runtime Fabric include:
          * Isolation between applications by running a separate Mule runtime server per application.
          * Ability to run multiple versions of Mule runtime server on the same set of resources.
          * Scaling applications across multiple replicas.
          * Automated application fail-over.
          * Application management with Anypoint Runtime Manager.
          Runtime Fabric supports the following Red Hat OpenShift deployment options:
          * Red Hat OpenShift Service on AWS
          * Microsoft Azure Red Hat OpenShift
          * Red Hat OpenShift Dedicated
          * Red Hat OpenShift on IBM Cloud
          * Self-managed Red Hat OpenShift editions (Performance Plus, OCP, Kubernetes engine)
          Runtime Fabric supports Red Hat OpenShift versions 4.17 to 4.20.
        displayName: Runtime Fabric Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - agent
        - rtf
        - runtime
        - fabric
        - mulesoft
        links:
        - name: Runtime Fabric Operator
          url: https://catalog.redhat.com/software/container-stacks/detail/62901512fefb1b137ba23946
        - name: Documentation
          url: https://docs.mulesoft.com/release-notes/runtime-fabric/runtime-fabric
        maintainers:
        - email: support@mulesoft.com
          name: Mulesoft
        maturity: stable
        provider:
          name: MuleSoft
          url: anypoint.mulesoft.com
        relatedImages:
        - quay.io/rtf/kube-rbac-proxy@sha256:a2523c532c0c3d51a5396a901d7ded23e402a9a1492c783aae27af6d0c1d2ec5
        - quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
        - registry.connect.redhat.com/rtf/runtime-fabric-operator@sha256:32476ca3c4943ac8b22ebacec7685402775d562576fbdd53e01ab42803967049
        version: 3.0.1
      entries:
      - name: runtime-fabric-operator.v3.0.1
        version: 3.0.1
      - name: runtime-fabric-operator.v2.11.50
        version: 2.11.50
      name: alpha
    - currentCSV: runtime-fabric-operator.v3.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rtf.operators.mulesoft.com/v1",
                "kind": "RuntimeFabric",
                "metadata": {
                  "name": "runtime-fabric"
                },
                "spec": {
                  "activationData": null,
                  "agent": {
                    "replicas": 1,
                    "app": {
                      "resources": {
                        "limits": {
                          "cpu": "1000m",
                          "memory": "500Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "200Mi"
                        }
                      }
                    },
                    "rtfd": {
                      "resources": {
                        "limits": {
                          "cpu": "200m",
                          "memory": "300Mi"
                        },
                        "requests": {
                          "cpu": "150m",
                          "memory": "200Mi"
                        }
                      },
                      "watch": {
                        "enabled": true,
                        "components": {
                          "deployments": {
                            "enabled": true
                          },
                          "ingress": {
                            "enabled": true
                          },
                          "secrets": {
                            "enabled": true
                          },
                          "persistencegateways": {
                            "enabled": true
                          },
                          "nodes": {
                            "enabled": true
                          },
                          "jobs": {
                            "enabled": true
                          },
                          "routes": {
                            "enabled": true
                          }
                        }
                      },
                      "anypointController": {
                        "enabled": false
                      }
                    }
                  },
                  "resource-cache": {
                    "replicas": 1,
                    "nginx": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "250Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      }
                    },
                    "fetcher": {
                      "resources": {
                        "limits": {
                          "cpu": "50m",
                          "memory": "100Mi"
                        },
                        "requests": {
                          "cpu": "50m",
                          "memory": "50Mi"
                        }
                      }
                    }
                  },
                  "mule-clusterip-service": {
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "500Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "global": {
                    "cluster": {
                      "flavor": "byok",
                      "type": "openshift"
                    },
                    "containerLogPaths": [
                      "/var/lib/docker/containers",
                      "/var/log/containers",
                      "/var/log/pods"
                    ],
                    "core": {
                      "affinity": {},
                      "tolerations": [],
                      "topologySpreadConstraints": [
                        {
                          "maxSkew": 1,
                          "topologyKey": "topology.kubernetes.io/zone",
                          "whenUnsatisfiable": "ScheduleAnyway"
                        }
                      ]
                    },
                    "worker": {
                      "affinity": {},
                      "tolerations": []
                    },
                    "deployment": {
                      "nodeSelector": ""
                    },
                    "image": {
                      "provider": "aws",
                      "pullSecretName": "rtf-pull-secret",
                      "rtfRegistry": "rtf-runtime-registry.kprod.msap.io",
                      "repositoryNamespace": "mulesoft"
                    },
                    "service": {
                      "clusterIp": null
                    },
                    "authorizedNamespaces": false,
                    "fipsEnabled": false,
                    "crds": {
                      "install": true,
                      "keep": true,
                      "flex": {
                        "enabled": false
                      }
                    },
                    "nodeWatcherEnabled": true,
                    "nodeReconciliation": true,
                    "deploymentRateLimitPerSecond": 1
                  },
                  "muleLicense": null,
                  "proxy": {
                    "http_no_proxy": null,
                    "http_proxy": null,
                    "monitoring_proxy": null
                  },
                  "customLog4jEnabled": false
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
          createdAt: "2025-12-09T02:04:18Z"
          description: Runtime Fabric Operator Application from Mulesoft
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/mulesoft/rtf-ocp-operator
          support: MuleSoft
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Runtime Fabric Operator from Mulesoft
              **Activation data**
              Used to install Runtime Fabric on a Kubernetes service. Copy this value from the Runtime Fabric setup page in Runtime Manager.
              **Registry URL**
              The registry from which to retrieve the images needed to install and run Runtime Fabric. If you're using a local registry, specify the URL here.
                * Default registry URLs:
                    - US control plane: rtf-runtime-registry.kprod.msap.io
                    - EU control plane: rtf-runtime-registry.kprod-eu.msap.io
              **Registry pull secret**
              Used to retrieve images from the registry. Change this value only if you did so during the operator installation.
              **Mule license key**
              Your company’s Mule license key. The key is not required during install, but it is required to deploy applications to Runtime Fabric. Must be Base64 encoded.
            displayName: Runtime Fabric
            kind: RuntimeFabric
            name: runtimefabrics.rtf.operators.mulesoft.com
            version: v1
        description: |-
          Anypoint Runtime Fabric is a container service that you install in your existing Red Hat OpenShift cluster that enables you to run Mule applications, composite APIs, and API gateways across any environment with centralized management via Anypoint Platform.
          Capabilities of Runtime Fabric include:
          * Isolation between applications by running a separate Mule runtime server per application.
          * Ability to run multiple versions of Mule runtime server on the same set of resources.
          * Scaling applications across multiple replicas.
          * Automated application fail-over.
          * Application management with Anypoint Runtime Manager.
          Runtime Fabric supports the following Red Hat OpenShift deployment options:
          * Red Hat OpenShift Service on AWS
          * Microsoft Azure Red Hat OpenShift
          * Red Hat OpenShift Dedicated
          * Red Hat OpenShift on IBM Cloud
          * Self-managed Red Hat OpenShift editions (Performance Plus, OCP, Kubernetes engine)
          Runtime Fabric supports Red Hat OpenShift versions 4.17 to 4.20.
        displayName: Runtime Fabric Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - agent
        - rtf
        - runtime
        - fabric
        - mulesoft
        links:
        - name: Runtime Fabric Operator
          url: https://catalog.redhat.com/software/container-stacks/detail/62901512fefb1b137ba23946
        - name: Documentation
          url: https://docs.mulesoft.com/release-notes/runtime-fabric/runtime-fabric
        maintainers:
        - email: support@mulesoft.com
          name: Mulesoft
        maturity: stable
        provider:
          name: MuleSoft
          url: anypoint.mulesoft.com
        relatedImages:
        - quay.io/rtf/kube-rbac-proxy@sha256:a2523c532c0c3d51a5396a901d7ded23e402a9a1492c783aae27af6d0c1d2ec5
        - quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
        - registry.connect.redhat.com/rtf/runtime-fabric-operator@sha256:32476ca3c4943ac8b22ebacec7685402775d562576fbdd53e01ab42803967049
        version: 3.0.1
      entries:
      - name: runtime-fabric-operator.v3.0.1
        version: 3.0.1
      - name: runtime-fabric-operator.v2.11.50
        version: 2.11.50
      name: stable
    defaultChannel: stable
    packageName: runtime-fabric-operator
    provider:
      name: MuleSoft
      url: anypoint.mulesoft.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: https://stakater.com
    name: tenant-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tenant-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-03-19T13:30:50Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.2.1
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.tenantoperator.stakater.com
            version: v1beta1
          - description: TemplateGroupInstance is the Schema for the templategroupinstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:fb7bc294096fa78f199d909f6ff8f7fcbcd771c3dc19f3f767d77dd13a2081a9
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:a899d60b31efd5cf2358efcd48737b1c4f4a0356ab6c0abe7a5f62ea825a52cd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:a35b96eacb4e46114b39354f66429f8f05df09c55c98c9416b4ffa2768310ef7
        version: 1.2.1
      entries:
      - name: tenant-operator.v1.2.1
        version: 1.2.1
      name: release-1.2
    - currentCSV: tenant-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-06-11T15:25:04Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.3.0
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.tenantoperator.stakater.com
            version: v1beta1
          - description: TemplateGroupInstance is the Schema for the templategroupinstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:10e4bdca44a1a0cdef27b415765238249f81ae6ba53f94f992e37d350bc9f800
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:e88aa5b008ece406bca35ec22fdc87c842544049d613d4d81c8bc5dd2fb50812
        version: 1.3.0
      entries:
      - name: tenant-operator.v1.3.0
        version: 1.3.0
      name: release-1.3
    - currentCSV: tenant-operator.v1.4.2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-09-08T08:14:28Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.4.2
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.tenantoperator.stakater.com
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:3e8aa02c71fc99e5eeabfce39c8fc24a9f9e8e826a58f9ff59c8b7c0e9c14e0d
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:7ee14c0974d1eda849d2c199a56786b0ae777ef6569085be917449f1998b1158
        version: 1.4.2
      entries:
      - name: tenant-operator.v1.4.2
        version: 1.4.2
      name: release-1.4
    - currentCSV: tenant-operator.v1.5.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-11-11T08:34:12Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.5.1
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:8f840a8aef0827b7e66c743477c5380fbe47597e91c7c600eeb7fea5475f5676
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:9f8d67e1b9401483714cfe1bb61504cdfae8efeab9c0e730a3983330c8095c16
        version: 1.5.1
      entries:
      - name: tenant-operator.v1.5.1
        version: 1.5.1
      name: release-1.5
    defaultChannel: release-1.5
    packageName: tenant-operator
    provider:
      name: Stakater
      url: https://stakater.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: EnterpriseDB Corporation
      provider-url: ""
    name: pg4k-pgd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pg4k-pgd.v1.2.0-rc1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg-global-cluster:1.2.0-rc1@sha256:bff3aac2979b8cb9eeb0f1a107aa10400ff55564079d6879a8a9758ba20c4ace
          createdAt: "2025-12-18T07:38:31Z"
          description: EDB Postgres Distributed for Kubernetes is an operator designed
            to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both
            in a single Kubernetes cluster or across multiple ones.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: EnterpriseDB Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A cluster-wide catalog of PGD Group operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: A catalog of PGD Group operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: Object to clean up a PGD Group
            displayName: PGD Group Cleanup
            kind: PGDGroupCleanup
            name: pgdgroupcleanups.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: A group of Postgres Clusters
            displayName: PGD Group
            kind: PGDGroup
            name: pgdgroups.pgd.k8s.enterprisedb.io
            version: v1beta1
        description: |
          EDB Postgres Distributed for Kubernetes is an operator designed to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both in a single Kubernetes cluster or across multiple ones.

          EDB Postgres Distributed is an extension for PostgreSQL that provides multi-master replication and data distribution with advanced conflict management, data-loss protection, and throughput up to 5X faster than native logical replication. It enables distributed PostgreSQL clusters with high availability up to five 9s.

          This operator requires access to the EDB private repositories.
        displayName: EDB Postgres Distributed for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - distributed
        - postgres
        - database
        - sql
        - cloud
        - native
        - edb
        - enterprisedb
        - cnp
        - pg4k
        - pgd
        links:
        - name: 'Documentation: EDB Postgres Distributed v5'
          url: https://www.enterprisedb.com/docs/pgd/latest/
        - name: 'Documentation: EDB Postgres Distributed for Kubernetes'
          url: https://www.enterprisedb.com/docs/postgres_distributed_for_kubernetes/latest/
        maintainers:
        - email: sales@enterprisedb.com
          name: Sales
        - email: support@enterprisedb.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg-global-cluster@sha256:bff3aac2979b8cb9eeb0f1a107aa10400ff55564079d6879a8a9758ba20c4ace
        - registry.connect.redhat.com/enterprisedb/pg4k-pgd@sha256:8cf1cadef453cd8dd0a0bfaa3e3dd6a0d741f86ad42fbb9ac574420445274ab5
        version: 1.2.0-rc1
      entries:
      - name: pg4k-pgd.v1.2.0-rc1
        version: 1.2.0-rc1
      name: candidate
    - currentCSV: pg4k-pgd.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgd.k8s.enterprisedb.io/v1beta1",
                "kind": "PGDGroup",
                "metadata": {
                  "name": "region-a"
                },
                "spec": {
                  "backup": null,
                  "cnp": {
                    "storage": {
                      "size": "1Gi"
                    },
                    "walStorage": {
                      "size": "1Gi"
                    }
                  },
                  "connectivity": {
                    "dns": {
                      "additional": [
                        {
                          "domain": "alternate.domain"
                        },
                        {
                          "domain": "my.domain",
                          "hostSuffix": "-dc1"
                        }
                      ]
                    },
                    "tls": {
                      "clientCert": {
                        "caCertSecret": "client-ca-key-pair",
                        "certManager": {
                          "spec": {
                            "issuerRef": {
                              "group": "cert-manager.io",
                              "kind": "Issuer",
                              "name": "client-ca-issuer"
                            }
                          }
                        }
                      },
                      "mode": "verify-ca",
                      "serverCert": {
                        "caCertSecret": "server-ca-key-pair",
                        "certManager": {
                          "spec": {
                            "issuerRef": {
                              "group": "cert-manager.io",
                              "kind": "Issuer",
                              "name": "server-ca-issuer"
                            }
                          }
                        }
                      }
                    }
                  },
                  "instances": 2,
                  "pgd": {
                    "parentGroup": {
                      "create": true,
                      "name": "world"
                    }
                  },
                  "proxyInstances": 2,
                  "witness": {
                    "storage": {
                      "size": "1Gi"
                    },
                    "walStorage": {
                      "size": "1Gi"
                    }
                  },
                  "witnessInstances": 1
                }
              },
              {
                "apiVersion": "pgd.k8s.enterprisedb.io/v1beta1",
                "kind": "PGDGroupCleanup",
                "metadata": {
                  "name": "region-b-cleanup"
                },
                "spec": {
                  "executor": "region-a",
                  "target": "region-b"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s_enterprise_pgd/pg4k-pgd-openshift@sha256:5127d913011619d61fd06b27be3c709df2236a4b5c0254fa58632698d58b50fb
          createdAt: "2025-09-26T01:49:29Z"
          description: EDB Postgres Distributed for Kubernetes is an operator designed
            to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both
            in a single Kubernetes cluster or across multiple ones.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: EnterpriseDB Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterImageCatalog
            name: clusterimagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - kind: ImageCatalog
            name: imagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: Object to clean up a PGD Group
            displayName: PGD Group Cleanup
            kind: PGDGroupCleanup
            name: pgdgroupcleanups.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: A group of Postgres Clusters
            displayName: PGD Group
            kind: PGDGroup
            name: pgdgroups.pgd.k8s.enterprisedb.io
            version: v1beta1
        description: |
          EDB Postgres Distributed for Kubernetes is an operator designed to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both in a single Kubernetes cluster or across multiple ones.

          EDB Postgres Distributed is an extension for PostgreSQL that provides multi-master replication and data distribution with advanced conflict management, data-loss protection, and throughput up to 5X faster than native logical replication. It enables distributed PostgreSQL clusters with high availability up to five 9s.

          This operator requires access to the EDB private repositories.
        displayName: EDB Postgres Distributed for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - distributed
        - postgres
        - database
        - sql
        - cloud
        - native
        - edb
        - enterprisedb
        - cnp
        - pg4k
        - pgd
        links:
        - name: 'Documentation: EDB Postgres Distributed v5'
          url: https://www.enterprisedb.com/docs/pgd/latest/
        - name: 'Documentation: EDB Postgres Distributed for Kubernetes'
          url: https://www.enterprisedb.com/docs/postgres_distributed_for_kubernetes/latest/
        maintainers:
        - email: sales@enterprisedb.com
          name: Sales
        - email: support@enterprisedb.com
          name: Support
        maturity: alpha
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - docker.enterprisedb.com/k8s_enterprise_pgd/pg4k-pgd-openshift@sha256:5127d913011619d61fd06b27be3c709df2236a4b5c0254fa58632698d58b50fb
        - registry.connect.redhat.com/enterprisedb/pg4k-pgd@sha256:fb206b95690e9604c41715369c69125a906b866dc35cfc5c63638ce7a4337fa2
        version: 1.1.3
      entries:
      - name: pg4k-pgd.v1.1.3
        version: 1.1.3
      - name: pg4k-pgd.v1.1.2
        version: 1.1.2
      - name: pg4k-pgd.v1.1.1
        version: 1.1.1
      - name: pg4k-pgd.v1.1.0
        version: 1.1.0
      - name: pg4k-pgd.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: stable
    packageName: pg4k-pgd
    provider:
      name: EnterpriseDB Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ApeCloud
      provider-url: https://apecloud.com
    name: kubeblocks
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubeblocks.v1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.io/apecloud/kubeblocks@sha256:44c546d7a0b3894f7a144aaf27e2690c76e3310cd8907c37b23bc2eb28a9763f
          createdAt: "2025-10-31T02:47:13Z"
          description: KubeBlocks is an open-source control plane that runs and manages
            databases, message queues and other stateful applications on K8s.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/apecloud/kubeblocks
          support: ApeCloud
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ActionSet
            name: actionsets.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: Addon
            name: addons.extensions.kubeblocks.io
            version: v1alpha1
          - kind: BackupPolicy
            name: backuppolicies.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: BackupPolicyTemplate
            name: backuppolicytemplates.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: BackupRepo
            name: backuprepos.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: Backup
            name: backups.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: BackupSchedule
            name: backupschedules.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: ClusterDefinition
            name: clusterdefinitions.apps.kubeblocks.io
            version: v1
          - kind: Cluster
            name: clusters.apps.kubeblocks.io
            version: v1
          - kind: ComponentDefinition
            name: componentdefinitions.apps.kubeblocks.io
            version: v1
          - kind: ComponentParameter
            name: componentparameters.parameters.kubeblocks.io
            version: v1alpha1
          - kind: Component
            name: components.apps.kubeblocks.io
            version: v1
          - kind: ComponentVersion
            name: componentversions.apps.kubeblocks.io
            version: v1
          - kind: ConfigConstraint
            name: configconstraints.apps.kubeblocks.io
            version: v1beta1
          - kind: InstanceSet
            name: instancesets.workloads.kubeblocks.io
            version: v1
          - kind: NodeCountScaler
            name: nodecountscalers.experimental.kubeblocks.io
            version: v1alpha1
          - kind: OpsDefinition
            name: opsdefinitions.operations.kubeblocks.io
            version: v1alpha1
          - kind: OpsRequest
            name: opsrequests.operations.kubeblocks.io
            version: v1alpha1
          - kind: ParamConfigRenderer
            name: paramconfigrenderers.parameters.kubeblocks.io
            version: v1alpha1
          - kind: Parameter
            name: parameters.parameters.kubeblocks.io
            version: v1alpha1
          - kind: ParametersDefinition
            name: parametersdefinitions.parameters.kubeblocks.io
            version: v1alpha1
          - kind: ReconciliationTrace
            name: reconciliationtraces.trace.kubeblocks.io
            version: v1
          - kind: Restore
            name: restores.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: ServiceDescriptor
            name: servicedescriptors.apps.kubeblocks.io
            version: v1
          - kind: ShardingDefinition
            name: shardingdefinitions.apps.kubeblocks.io
            version: v1
          - kind: SidecarDefinition
            name: sidecardefinitions.apps.kubeblocks.io
            version: v1
          - kind: StorageProvider
            name: storageproviders.dataprotection.kubeblocks.io
            version: v1alpha1
        description: KubeBlocks is an open-source control plane that runs and manages
          databases, message queues and other stateful applications on K8s.
        displayName: KubeBlocks
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubeblocks
        - database
        - mysql
        - postgresql
        - redis
        - mongodb
        - kafka
        - sql
        links:
        - name: Documentation
          url: https://kubeblocks.io
        - name: GitHub
          url: https://github.com/apecloud/kubeblocks
        - name: Slack Community
          url: https://kubeblocks.slack.com
        maintainers:
        - email: kubeblocks@apecloud.com
          name: KubeBlocks Team
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: ApeCloud
          url: https://apecloud.com
        relatedImages:
        - docker.io/apecloud/kubeblocks@sha256:44c546d7a0b3894f7a144aaf27e2690c76e3310cd8907c37b23bc2eb28a9763f
        - registry.connect.redhat.com/apecloud/kubeblocks@sha256:84d3657b75820b61750dcb91137e88d3f3c64c0e8fcf137ec271555bfaf62f15
        version: 1.0.1
      entries:
      - name: kubeblocks.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: stable
    packageName: kubeblocks
    provider:
      name: ApeCloud
      url: https://apecloud.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: ""
    name: mto-dependencies-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mto-dependencies-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "Dex",
                "metadata": {
                  "name": "dex-sample"
                },
                "spec": {
                  "affinity": {},
                  "autoscaling": {
                    "enabled": false,
                    "maxReplicas": 100,
                    "minReplicas": 1,
                    "targetCPUUtilizationPercentage": 80
                  },
                  "commonLabels": {},
                  "config": {},
                  "configSecret": {
                    "create": true,
                    "name": ""
                  },
                  "deploymentAnnotations": {},
                  "deploymentLabels": {},
                  "env": {},
                  "envFrom": [],
                  "envVars": [],
                  "fullnameOverride": "",
                  "grpc": {
                    "enabled": false
                  },
                  "hostAliases": [],
                  "https": {
                    "enabled": false
                  },
                  "image": {
                    "digest": "",
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/dexidp/dex",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "ingress": {
                    "annotations": {},
                    "className": "",
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "chart-example.local",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": []
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "egressRules": [],
                    "enabled": false
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podDisruptionBudget": {
                    "enabled": false,
                    "maxUnavailable": null,
                    "minAvailable": null
                  },
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": "",
                  "rbac": {
                    "create": true,
                    "createClusterScoped": true
                  },
                  "replicaCount": 1,
                  "resources": {},
                  "revisionHistoryLimit": 10,
                  "securityContext": {},
                  "service": {
                    "annotations": {},
                    "clusterIP": "",
                    "loadBalancerIP": "",
                    "ports": {
                      "grpc": {
                        "nodePort": null,
                        "port": 5557
                      },
                      "http": {
                        "nodePort": null,
                        "port": 5556
                      },
                      "https": {
                        "nodePort": null,
                        "port": 5554
                      }
                    },
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": ""
                  },
                  "serviceMonitor": {
                    "annotations": {},
                    "bearerTokenFile": null,
                    "enabled": false,
                    "honorLabels": false,
                    "interval": null,
                    "labels": {},
                    "metricRelabelings": [],
                    "namespace": "",
                    "path": "/metrics",
                    "relabelings": [],
                    "scheme": "",
                    "scrapeTimeout": null,
                    "tlsConfig": {}
                  },
                  "strategy": {},
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "volumeMounts": [],
                  "volumes": []
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "DexConfigOperator",
                "metadata": {
                  "name": "dexconfigoperator-sample"
                },
                "spec": {
                  "controllerManager": {
                    "manager": {
                      "args": [
                        "--metrics-bind-address=:8443",
                        "--leader-elect",
                        "--health-probe-bind-address=:8081"
                      ],
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        }
                      },
                      "env": {
                        "dexNamespace": "dex"
                      },
                      "image": {
                        "repository": "ghcr.io/stakater/public/dex-config-operator",
                        "tag": "v0.0.1"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "128Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "64Mi"
                        }
                      }
                    },
                    "podSecurityContext": {
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "replicas": 1,
                    "serviceAccount": {
                      "annotations": {}
                    }
                  },
                  "kubernetesClusterDomain": "cluster.local",
                  "metricsService": {
                    "ports": [
                      {
                        "name": "https",
                        "port": 8443,
                        "protocol": "TCP",
                        "targetPort": 8443
                      }
                    ],
                    "type": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "FinOpsOperator",
                "metadata": {
                  "name": "finopsoperator-sample"
                },
                "spec": {
                  "controllerManager": {
                    "manager": {
                      "args": [
                        "--metrics-bind-address=:8443",
                        "--leader-elect",
                        "--health-probe-bind-address=:8081"
                      ],
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        }
                      },
                      "env": {
                        "opencostDeploymentName": "finops-operator-opencost",
                        "opencostDeploymentNamespace": "finops-operator-system",
                        "operatorImage": "registrypath/to/finops-operator:v0.1.14"
                      },
                      "image": {
                        "repository": "ghcr.io/stakater/finops-operator",
                        "tag": "v0.1.14"
                      }
                    },
                    "podSecurityContext": {
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "replicas": 1,
                    "serviceAccount": {
                      "annotations": {}
                    }
                  },
                  "finops-gateway": {
                    "finopsGatewayContainer": {
                      "env": {
                        "enableAuth": "true",
                        "mtoGatewayUrl": "https://mto-zain-gateway.apps.xy1462m7s.stakater.cloud",
                        "port": "8080"
                      }
                    },
                    "gateway": {
                      "finopsGatewayContainer": {
                        "containerSecurityContext": {},
                        "env": {
                          "enableAuth": "false",
                          "mtoGatewayUrl": "",
                          "port": "8080"
                        },
                        "image": {
                          "repository": "ghcr.io/stakater/finops-gateway",
                          "tag": "v0.1.12"
                        }
                      },
                      "nodeSelector": {},
                      "replicas": 1,
                      "tolerations": [],
                      "topologySpreadConstraints": []
                    },
                    "global": {},
                    "imagePullSecrets": [],
                    "kubernetesClusterDomain": "cluster.local",
                    "service": {
                      "ports": [
                        {
                          "name": "http",
                          "port": 8080,
                          "targetPort": 8080
                        }
                      ],
                      "type": "ClusterIP"
                    }
                  },
                  "kubernetesClusterDomain": "cluster.local",
                  "metricsService": {
                    "ports": [
                      {
                        "name": "https",
                        "port": 8443,
                        "protocol": "TCP",
                        "targetPort": 8443
                      }
                    ],
                    "type": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "KubeStateMetrics",
                "metadata": {
                  "name": "kubestatemetrics-sample"
                },
                "spec": {
                  "affinity": {},
                  "annotations": {},
                  "automountServiceAccountToken": true,
                  "autosharding": {
                    "enabled": false
                  },
                  "collectors": [
                    "certificatesigningrequests",
                    "configmaps",
                    "cronjobs",
                    "daemonsets",
                    "deployments",
                    "endpoints",
                    "horizontalpodautoscalers",
                    "ingresses",
                    "jobs",
                    "leases",
                    "limitranges",
                    "mutatingwebhookconfigurations",
                    "namespaces",
                    "networkpolicies",
                    "nodes",
                    "persistentvolumeclaims",
                    "persistentvolumes",
                    "poddisruptionbudgets",
                    "pods",
                    "replicasets",
                    "replicationcontrollers",
                    "resourcequotas",
                    "secrets",
                    "services",
                    "statefulsets",
                    "storageclasses",
                    "validatingwebhookconfigurations",
                    "volumeattachments"
                  ],
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "readOnlyRootFilesystem": true
                  },
                  "containers": [],
                  "customLabels": {},
                  "customResourceState": {
                    "config": {},
                    "create": true,
                    "enabled": false,
                    "key": "config.yaml",
                    "name": ""
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "ClusterFirst",
                  "env": [],
                  "extraArgs": [],
                  "extraManifests": [],
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": ""
                  },
                  "hostNetwork": false,
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "registry": "registry.k8s.io",
                    "repository": "kube-state-metrics/kube-state-metrics",
                    "sha": "",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "initContainers": [],
                  "kubeRBACProxy": {
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true
                    },
                    "enabled": false,
                    "extraArgs": [],
                    "ignoreProbePaths": true,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "registry": "quay.io",
                      "repository": "brancz/kube-rbac-proxy",
                      "sha": "",
                      "tag": "v0.19.1"
                    },
                    "proxyEndpointsPort": 8888,
                    "resources": {},
                    "volumeMounts": []
                  },
                  "kubeconfig": {
                    "enabled": false,
                    "secret": null
                  },
                  "labels": {},
                  "livenessProbe": {
                    "failureThreshold": 3,
                    "httpGet": {
                      "httpHeaders": [],
                      "scheme": "http"
                    },
                    "initialDelaySeconds": 5,
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 5
                  },
                  "metricAllowlist": [],
                  "metricAnnotationsAllowList": [],
                  "metricDenylist": [],
                  "metricLabelsAllowlist": [],
                  "namespaceOverride": "",
                  "namespaces": "",
                  "namespacesDenylist": "",
                  "networkPolicy": {
                    "enabled": false,
                    "flavor": "kubernetes"
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podDisruptionBudget": {},
                  "podLabels": {},
                  "prometheus": {
                    "monitor": {
                      "additionalLabels": {},
                      "annotations": {},
                      "enabled": false,
                      "http": {
                        "bearerTokenFile": "",
                        "bearerTokenSecret": {},
                        "enableHttp2": false,
                        "honorLabels": false,
                        "interval": "",
                        "metricRelabelings": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "scheme": "",
                        "scrapeTimeout": "",
                        "tlsConfig": {}
                      },
                      "jobLabel": "",
                      "labelLimit": 0,
                      "labelNameLengthLimit": 0,
                      "labelValueLengthLimit": 0,
                      "metrics": {
                        "bearerTokenFile": "",
                        "bearerTokenSecret": {},
                        "enableHttp2": false,
                        "honorLabels": false,
                        "interval": "",
                        "metricRelabelings": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "scheme": "",
                        "scrapeTimeout": "",
                        "tlsConfig": {}
                      },
                      "namespace": "",
                      "namespaceSelector": [],
                      "podTargetLabels": [],
                      "sampleLimit": 0,
                      "selectorOverride": {},
                      "targetLabels": [],
                      "targetLimit": 0
                    },
                    "scrapeconfig": {
                      "additionalLabels": {},
                      "annotations": {},
                      "enableHttp2": false,
                      "enabled": false,
                      "honorLabels": true,
                      "jobName": "kube-state-metrics",
                      "labelLimit": 0,
                      "labelNameLengthLimit": 0,
                      "labelValueLengthLimit": 0,
                      "metricRelabelings": [],
                      "proxyUrl": "",
                      "relabelings": [],
                      "sampleLimit": 0,
                      "scheme": "",
                      "scrapeInterval": "",
                      "scrapeTimeout": "",
                      "staticConfigLabels": {},
                      "targetLimit": 0,
                      "tlsConfig": {}
                    }
                  },
                  "prometheusScrape": true,
                  "rbac": {
                    "create": true,
                    "extraRules": [],
                    "useClusterRole": true
                  },
                  "readinessProbe": {
                    "failureThreshold": 3,
                    "httpGet": {
                      "httpHeaders": [],
                      "scheme": "http"
                    },
                    "initialDelaySeconds": 5,
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 5
                  },
                  "releaseLabel": false,
                  "releaseNamespace": false,
                  "replicas": 1,
                  "resources": {},
                  "revisionHistoryLimit": 10,
                  "securityContext": {
                    "enabled": true,
                    "fsGroup": 65534,
                    "runAsGroup": 65534,
                    "runAsNonRoot": true,
                    "runAsUser": 65534,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "selectorOverride": {},
                  "selfMonitor": {
                    "enabled": false
                  },
                  "service": {
                    "annotations": {},
                    "clusterIP": "",
                    "ipDualStack": {
                      "enabled": false,
                      "ipFamilies": [
                        "IPv6",
                        "IPv4"
                      ],
                      "ipFamilyPolicy": "PreferDualStack"
                    },
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePort": 0,
                    "port": 8080,
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "imagePullSecrets": [],
                    "name": null
                  },
                  "startupProbe": {
                    "enabled": false,
                    "failureThreshold": 3,
                    "httpGet": {
                      "httpHeaders": [],
                      "scheme": "http"
                    },
                    "initialDelaySeconds": 0,
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 5
                  },
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "verticalPodAutoscaler": {
                    "controlledResources": [],
                    "enabled": false,
                    "maxAllowed": {},
                    "minAllowed": {}
                  },
                  "volumeMounts": [],
                  "volumes": []
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "OpenCost",
                "metadata": {
                  "name": "opencost-sample"
                },
                "spec": {
                  "annotations": {},
                  "clusterName": "cluster.local",
                  "extraVolumes": [],
                  "fullnameOverride": "",
                  "imagePullSecrets": [],
                  "loglevel": "info",
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicies": {
                    "enabled": false,
                    "extraEgress": [],
                    "prometheus": {
                      "labels": {
                        "app.kubernetes.io/name": "prometheus"
                      },
                      "namespace": "prometheus-system",
                      "port": 9090
                    }
                  },
                  "opencost": {
                    "affinity": {},
                    "carbonCost": {
                      "enabled": false
                    },
                    "cloudCost": {
                      "enabled": false,
                      "monthToDateInterval": 6,
                      "queryWindowDays": 7,
                      "refreshRateHours": 6,
                      "runWindowDays": 3
                    },
                    "cloudIntegrationSecret": "",
                    "customPricing": {
                      "configPath": "/tmp/custom-config",
                      "configmapName": "custom-pricing-model",
                      "costModel": {
                        "CPU": 1.25,
                        "GPU": 0.95,
                        "RAM": 0.5,
                        "description": "Modified pricing configuration.",
                        "internetNetworkEgress": 0.12,
                        "regionNetworkEgress": 0.01,
                        "spotCPU": 0.006655,
                        "spotRAM": 0.000892,
                        "storage": 0.25,
                        "zoneNetworkEgress": 0.01
                      },
                      "createConfigmap": true,
                      "enabled": false,
                      "provider": "custom"
                    },
                    "exporter": {
                      "apiIngress": {
                        "annotations": {},
                        "enabled": false,
                        "hosts": [
                          {
                            "host": "example.local",
                            "paths": [
                              {
                                "path": "/",
                                "pathType": "Prefix"
                              }
                            ]
                          }
                        ],
                        "ingressClassName": "",
                        "servicePort": "http",
                        "tls": []
                      },
                      "apiPort": 9003,
                      "aws": {
                        "access_key_id": "",
                        "secret_access_key": ""
                      },
                      "cloudProviderApiKey": "",
                      "collectorDataSource": {
                        "enabled": false,
                        "networkPort": 3001,
                        "retention10m": 36,
                        "retention1d": 15,
                        "retention1h": 49,
                        "scrapeInterval": "30s"
                      },
                      "command": [],
                      "csv_path": "",
                      "defaultClusterId": "default-cluster",
                      "env": [],
                      "extraArgs": [],
                      "extraEnv": {},
                      "extraVolumeMounts": [],
                      "image": {
                        "fullImageName": null,
                        "pullPolicy": "IfNotPresent",
                        "registry": "ghcr.io",
                        "repository": "opencost/opencost",
                        "tag": "1.117.3@sha256:09fae89c4544ec2a891e2902e88ce3137d7032c6edbe0fd97441aaee7bdbea54"
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 10,
                        "path": "/healthz",
                        "periodSeconds": 20
                      },
                      "persistence": {
                        "accessMode": "",
                        "annotations": {},
                        "enabled": false,
                        "mountPath": "/mnt/export",
                        "size": "",
                        "storageClass": ""
                      },
                      "prometheusDataSource": {
                        "queryResolutionSeconds": 300
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 10,
                        "path": "/healthz",
                        "periodSeconds": 10
                      },
                      "replicas": 1,
                      "resources": {
                        "limits": {
                          "memory": "1Gi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "55Mi"
                        }
                      },
                      "securityContext": {},
                      "startupProbe": {
                        "enabled": true,
                        "failureThreshold": 30,
                        "initialDelaySeconds": 10,
                        "path": "/healthz",
                        "periodSeconds": 5
                      }
                    },
                    "extraContainers": [],
                    "metrics": {
                      "config": {
                        "configmapName": "custom-metrics",
                        "disabledMetrics": [],
                        "enabled": false
                      },
                      "kubeStateMetrics": {
                        "emitKsmV1Metrics": null,
                        "emitKsmV1MetricsOnly": null,
                        "emitNamespaceAnnotations": null,
                        "emitPodAnnotations": null
                      },
                      "serviceMonitor": {
                        "additionalLabels": {},
                        "enabled": false,
                        "extraEndpoints": [],
                        "honorLabels": true,
                        "metricRelabelings": [],
                        "namespace": "",
                        "relabelings": [],
                        "scheme": "http",
                        "scrapeInterval": "30s",
                        "scrapeTimeout": "10s",
                        "tlsConfig": {}
                      }
                    },
                    "nodeSelector": {},
                    "platforms": {
                      "openshift": {
                        "createMonitoringClusterRoleBinding": false,
                        "createMonitoringResourceReaderRoleBinding": false,
                        "enablePromAccess": false,
                        "enableSCC": false,
                        "enabled": false,
                        "monitoringServiceAccountName": "prometheus-k8s",
                        "monitoringServiceAccountNamespace": "openshift-monitoring"
                      }
                    },
                    "prometheus": {
                      "amp": {
                        "enabled": false,
                        "workspaceId": ""
                      },
                      "bearer_token": "",
                      "bearer_token_key": "DB_BEARER_TOKEN",
                      "existingSecretName": null,
                      "external": {
                        "enabled": false,
                        "url": "https://prometheus.example.com/prometheus"
                      },
                      "insecureSkipVerify": false,
                      "internal": {
                        "enabled": true,
                        "namespaceName": "prometheus-system",
                        "path": "",
                        "port": 80,
                        "scheme": "http",
                        "serviceName": "prometheus-server"
                      },
                      "kubeRBACProxy": false,
                      "password": "",
                      "password_key": "DB_BASIC_AUTH_PW",
                      "secret_name": null,
                      "thanos": {
                        "enabled": false,
                        "external": {
                          "enabled": false,
                          "url": "https://thanos-query.example.com/thanos"
                        },
                        "internal": {
                          "enabled": true,
                          "namespaceName": "opencost",
                          "port": 10901,
                          "scheme": "http",
                          "serviceName": "my-thanos-query"
                        },
                        "maxSourceResolution": "",
                        "queryOffset": ""
                      },
                      "username": "",
                      "username_key": "DB_BASIC_AUTH_USERNAME"
                    },
                    "retention1d": 15,
                    "retention1h": 49,
                    "sigV4Proxy": {
                      "extraEnv": null,
                      "host": "aps-workspaces.us-west-2.amazonaws.com",
                      "image": "public.ecr.aws/aws-observability/aws-sigv4-proxy@sha256:2768495a4e331852aa4f206ad728f5e65b2c8680715ae984d1580ca1029f8438",
                      "imagePullPolicy": "IfNotPresent",
                      "name": "aps",
                      "port": 8005,
                      "region": "us-west-2",
                      "resources": {},
                      "securityContext": {}
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "ui": {
                      "enabled": true,
                      "extraEnv": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "fullImageName": null,
                        "pullPolicy": "IfNotPresent",
                        "registry": "ghcr.io",
                        "repository": "opencost/opencost-ui",
                        "tag": "1.117.3@sha256:727b95405e8c749ddbaa3bd97b93d9c0e246faeb9be9d370dd93ae6b31cdb0c2"
                      },
                      "ingress": {
                        "annotations": {},
                        "enabled": false,
                        "hosts": [
                          {
                            "host": "example.local",
                            "paths": [
                              "/"
                            ]
                          }
                        ],
                        "ingressClassName": "",
                        "servicePort": "http-ui",
                        "tls": []
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 30,
                        "path": "/healthz",
                        "periodSeconds": 10
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 30,
                        "path": "/healthz",
                        "periodSeconds": 10
                      },
                      "resources": {
                        "limits": {
                          "memory": "1Gi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "55Mi"
                        }
                      },
                      "route": {
                        "annotations": {},
                        "enabled": false,
                        "host": "example.local",
                        "path": null,
                        "targetPort": "http-ui",
                        "tls": []
                      },
                      "securityContext": {},
                      "uiPath": "/",
                      "uiPort": 9090,
                      "useDefaultFqdn": false,
                      "useIPv6": true
                    }
                  },
                  "pdb": {
                    "enabled": false,
                    "maxUnavailable": null,
                    "minAvailable": null
                  },
                  "plugins": {
                    "configs": null,
                    "enabled": false,
                    "folder": "/opt/opencost/plugin",
                    "install": {
                      "enabled": true,
                      "fullImageName": "curlimages/curl:latest",
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "runAsUser": 1000,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      }
                    }
                  },
                  "podAnnotations": {},
                  "podAutomountServiceAccountToken": true,
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": null,
                  "rbac": {
                    "enabled": true
                  },
                  "secretAnnotations": {},
                  "service": {
                    "annotations": {},
                    "enabled": true,
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerSourceRanges": [],
                    "nodePort": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "updateStrategy": {
                    "rollingUpdate": {
                      "maxSurge": 1,
                      "maxUnavailable": 1
                    },
                    "type": "RollingUpdate"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "Postgres",
                "metadata": {
                  "name": "postgres-sample"
                },
                "spec": {
                  "architecture": "standalone",
                  "audit": {
                    "clientMinMessages": "error",
                    "logConnections": false,
                    "logDisconnections": false,
                    "logHostname": false,
                    "logLinePrefix": "",
                    "logTimezone": "",
                    "pgAuditLog": "",
                    "pgAuditLogCatalog": "off"
                  },
                  "auth": {
                    "database": "",
                    "enablePostgresUser": true,
                    "existingSecret": "",
                    "password": "",
                    "postgresPassword": "",
                    "replicationPassword": "",
                    "replicationUsername": "repl_user",
                    "secretKeys": {
                      "adminPasswordKey": "postgres-password",
                      "replicationPasswordKey": "replication-password",
                      "userPasswordKey": "password"
                    },
                    "usePasswordFiles": true,
                    "username": ""
                  },
                  "backup": {
                    "cronjob": {
                      "annotations": {},
                      "command": [
                        "/bin/bash",
                        "-c",
                        "PGPASSWORD=\"${PGPASSWORD:-$(\u003c \"$PGPASSWORD_FILE\")}\" pg_dumpall --clean --if-exists --load-via-partition-root --quote-all-identifiers --no-password --file=\"${PGDUMP_DIR}/pg_dumpall-$(date '+%Y-%m-%d-%H-%M').pgdump\""
                      ],
                      "concurrencyPolicy": "Allow",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "privileged": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 1001,
                        "runAsNonRoot": true,
                        "runAsUser": 1001,
                        "seLinuxOptions": {},
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "failedJobsHistoryLimit": 1,
                      "labels": {},
                      "networkPolicy": {
                        "enabled": true
                      },
                      "nodeSelector": {},
                      "podSecurityContext": {
                        "enabled": true,
                        "fsGroup": 1001,
                        "fsGroupChangePolicy": "Always",
                        "supplementalGroups": [],
                        "sysctls": []
                      },
                      "resources": {},
                      "resourcesPreset": "nano",
                      "restartPolicy": "OnFailure",
                      "schedule": "@daily",
                      "startingDeadlineSeconds": "",
                      "storage": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "enabled": true,
                        "existingClaim": "",
                        "mountPath": "/backup/pgdump",
                        "resourcePolicy": "",
                        "size": "8Gi",
                        "storageClass": "",
                        "subPath": "",
                        "volumeClaimTemplates": {
                          "selector": {}
                        }
                      },
                      "successfulJobsHistoryLimit": 3,
                      "timeZone": "",
                      "tolerations": [],
                      "ttlSecondsAfterFinished": ""
                    },
                    "enabled": false
                  },
                  "clusterDomain": "cluster.local",
                  "common": {
                    "exampleValue": "common-chart",
                    "global": {
                      "compatibility": {
                        "openshift": {
                          "adaptSecurityContext": "auto"
                        }
                      },
                      "defaultStorageClass": "",
                      "imagePullSecrets": [],
                      "imageRegistry": "",
                      "postgresql": {
                        "auth": {
                          "database": "",
                          "existingSecret": "",
                          "password": "",
                          "postgresPassword": "",
                          "secretKeys": {
                            "adminPasswordKey": "",
                            "replicationPasswordKey": "",
                            "userPasswordKey": ""
                          },
                          "username": ""
                        },
                        "fullnameOverride": "",
                        "service": {
                          "ports": {
                            "postgresql": ""
                          }
                        }
                      },
                      "security": {
                        "allowInsecureImages": false
                      },
                      "storageClass": ""
                    }
                  },
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "containerPorts": {
                    "postgresql": 5432
                  },
                  "diagnosticMode": {
                    "args": [
                      "infinity"
                    ],
                    "command": [
                      "sleep"
                    ],
                    "enabled": false
                  },
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "global": {
                    "compatibility": {
                      "openshift": {
                        "adaptSecurityContext": "auto"
                      }
                    },
                    "defaultStorageClass": "",
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "auth": {
                        "database": "",
                        "existingSecret": "",
                        "password": "",
                        "postgresPassword": "",
                        "secretKeys": {
                          "adminPasswordKey": "",
                          "replicationPasswordKey": "",
                          "userPasswordKey": ""
                        },
                        "username": ""
                      },
                      "fullnameOverride": "",
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "security": {
                      "allowInsecureImages": false
                    },
                    "storageClass": ""
                  },
                  "image": {
                    "debug": false,
                    "digest": "",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "bitnami/postgresql",
                    "tag": "17.6.0-debian-12-r4"
                  },
                  "kubeVersion": "",
                  "ldap": {
                    "basedn": "",
                    "binddn": "",
                    "bindpw": "",
                    "enabled": false,
                    "port": "",
                    "prefix": "",
                    "scheme": "",
                    "searchAttribute": "",
                    "searchFilter": "",
                    "server": "",
                    "suffix": "",
                    "tls": {
                      "enabled": false
                    },
                    "uri": ""
                  },
                  "metrics": {
                    "collectors": {},
                    "containerPorts": {
                      "metrics": 9187
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customMetrics": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "enabled": false,
                    "extraEnvVars": [],
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/postgres-exporter",
                      "tag": "0.17.1-debian-12-r16"
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "prometheusRule": {
                      "enabled": false,
                      "labels": {},
                      "namespace": "",
                      "rules": []
                    },
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {},
                    "resourcesPreset": "nano",
                    "service": {
                      "annotations": {
                        "prometheus.io/port": "{{ .Values.metrics.service.ports.metrics }}",
                        "prometheus.io/scrape": "true"
                      },
                      "clusterIP": "",
                      "ports": {
                        "metrics": 9187
                      },
                      "sessionAffinity": "None"
                    },
                    "serviceMonitor": {
                      "enabled": false,
                      "honorLabels": false,
                      "interval": "",
                      "jobLabel": "",
                      "labels": {},
                      "metricRelabelings": [],
                      "namespace": "",
                      "relabelings": [],
                      "scrapeTimeout": "",
                      "selector": {}
                    },
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 15,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    }
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "passwordUpdateJob": {
                    "annotations": {},
                    "args": [],
                    "automountServiceAccountToken": false,
                    "backoffLimit": 10,
                    "command": [],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "enabled": false,
                    "extraCommands": "",
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "initContainers": [],
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 1001,
                      "fsGroupChangePolicy": "Always",
                      "supplementalGroups": [],
                      "sysctls": []
                    },
                    "previousPasswords": {
                      "existingSecret": "",
                      "password": "",
                      "postgresPassword": "",
                      "replicationPassword": ""
                    },
                    "resources": {},
                    "resourcesPreset": "micro"
                  },
                  "postgresqlDataDir": "/bitnami/postgresql/data",
                  "postgresqlSharedPreloadLibraries": "pgaudit",
                  "primary": {
                    "affinity": {},
                    "annotations": {},
                    "args": [],
                    "automountServiceAccountToken": false,
                    "command": [],
                    "configuration": "",
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "existingConfigmap": "",
                    "existingExtendedConfigmap": "",
                    "extendedConfiguration": "",
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraPodSpec": {},
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "hostIPC": false,
                    "hostNetwork": false,
                    "initContainers": [],
                    "initdb": {
                      "args": "",
                      "password": "",
                      "postgresqlWalDir": "",
                      "scripts": {},
                      "scriptsConfigMap": "",
                      "scriptsSecret": "",
                      "user": ""
                    },
                    "labels": {},
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "name": "primary",
                    "networkPolicy": {
                      "allowExternal": true,
                      "allowExternalEgress": true,
                      "enabled": true,
                      "extraEgress": [],
                      "extraIngress": [],
                      "ingressNSMatchLabels": {},
                      "ingressNSPodMatchLabels": {}
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "pdb": {
                      "create": true,
                      "maxUnavailable": "",
                      "minAvailable": ""
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "dataSource": {},
                      "enabled": true,
                      "existingClaim": "",
                      "labels": {},
                      "mountPath": "/bitnami/postgresql",
                      "selector": {},
                      "size": "8Gi",
                      "storageClass": "",
                      "subPath": "",
                      "volumeName": "data"
                    },
                    "persistentVolumeClaimRetentionPolicy": {
                      "enabled": false,
                      "whenDeleted": "Retain",
                      "whenScaled": "Retain"
                    },
                    "pgHbaConfiguration": "",
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {},
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 1001,
                      "fsGroupChangePolicy": "Always",
                      "supplementalGroups": [],
                      "sysctls": []
                    },
                    "preInitDb": {
                      "scripts": {},
                      "scriptsConfigMap": "",
                      "scriptsSecret": ""
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {},
                    "resourcesPreset": "nano",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "headless": {
                        "annotations": {}
                      },
                      "labels": {},
                      "loadBalancerClass": "",
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "postgresql": ""
                      },
                      "ports": {
                        "postgresql": 5432
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "standby": {
                      "enabled": false,
                      "primaryHost": "",
                      "primaryPort": ""
                    },
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 15,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "terminationGracePeriodSeconds": "",
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "rollingUpdate": {},
                      "type": "RollingUpdate"
                    }
                  },
                  "psp": {
                    "create": false
                  },
                  "rbac": {
                    "create": false,
                    "rules": []
                  },
                  "readReplicas": {
                    "affinity": {},
                    "annotations": {},
                    "args": [],
                    "automountServiceAccountToken": false,
                    "command": [],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "extendedConfiguration": "",
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraPodSpec": {},
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "hostIPC": false,
                    "hostNetwork": false,
                    "initContainers": [],
                    "labels": {},
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "name": "read",
                    "networkPolicy": {
                      "allowExternal": true,
                      "allowExternalEgress": true,
                      "enabled": true,
                      "extraEgress": [],
                      "extraIngress": [],
                      "ingressNSMatchLabels": {},
                      "ingressNSPodMatchLabels": {}
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "pdb": {
                      "create": true,
                      "maxUnavailable": "",
                      "minAvailable": ""
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "dataSource": {},
                      "enabled": true,
                      "existingClaim": "",
                      "labels": {},
                      "mountPath": "/bitnami/postgresql",
                      "selector": {},
                      "size": "8Gi",
                      "storageClass": "",
                      "subPath": ""
                    },
                    "persistentVolumeClaimRetentionPolicy": {
                      "enabled": false,
                      "whenDeleted": "Retain",
                      "whenScaled": "Retain"
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {},
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 1001,
                      "fsGroupChangePolicy": "Always",
                      "supplementalGroups": [],
                      "sysctls": []
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "nano",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "headless": {
                        "annotations": {}
                      },
                      "labels": {},
                      "loadBalancerClass": "",
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "postgresql": ""
                      },
                      "ports": {
                        "postgresql": 5432
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 15,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "terminationGracePeriodSeconds": "",
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "rollingUpdate": {},
                      "type": "RollingUpdate"
                    }
                  },
                  "replication": {
                    "applicationName": "my_application",
                    "numSynchronousReplicas": 0,
                    "synchronousCommit": "off"
                  },
                  "secretAnnotations": {},
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": false,
                    "create": true,
                    "name": ""
                  },
                  "serviceBindings": {
                    "enabled": false
                  },
                  "shmVolume": {
                    "enabled": true,
                    "sizeLimit": ""
                  },
                  "tls": {
                    "autoGenerated": false,
                    "certCAFilename": "",
                    "certFilename": "",
                    "certKeyFilename": "",
                    "certificatesSecret": "",
                    "crlFilename": "",
                    "enabled": false,
                    "preferServerCiphers": true
                  },
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r51"
                    },
                    "resources": {},
                    "resourcesPreset": "nano"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "Prometheus",
                "metadata": {
                  "name": "prometheus-sample"
                },
                "spec": {
                  "alertRelabelConfigs": {},
                  "alertmanager": {
                    "additionalPeers": [],
                    "affinity": {},
                    "automountServiceAccountToken": true,
                    "baseURL": "",
                    "command": [],
                    "config": {
                      "enabled": true,
                      "global": {},
                      "receivers": [
                        {
                          "name": "default-receiver"
                        }
                      ],
                      "route": {
                        "group_interval": "5m",
                        "group_wait": "10s",
                        "receiver": "default-receiver",
                        "repeat_interval": "3h"
                      },
                      "templates": [
                        "/etc/alertmanager/*.tmpl"
                      ]
                    },
                    "configAnnotations": {},
                    "configmapReload": {
                      "enabled": false,
                      "extraArgs": {},
                      "extraEnv": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                        "tag": "v0.85.0"
                      },
                      "livenessProbe": {},
                      "name": "configmap-reload",
                      "readinessProbe": {},
                      "resources": {},
                      "securityContext": {}
                    },
                    "containerPortName": "http",
                    "dnsConfig": {},
                    "enabled": true,
                    "extraArgs": {},
                    "extraContainers": [],
                    "extraEnv": [],
                    "extraInitContainers": [],
                    "extraPodConfigs": {},
                    "extraSecretMounts": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {},
                    "hostAliases": [],
                    "hostUsers": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "quay.io/prometheus/alertmanager",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "ingress": {
                      "annotations": {},
                      "className": "",
                      "enabled": false,
                      "hosts": [
                        {
                          "host": "alertmanager.domain.com",
                          "paths": [
                            {
                              "path": "/",
                              "pathType": "ImplementationSpecific"
                            }
                          ]
                        }
                      ],
                      "labels": {},
                      "tls": []
                    },
                    "ingressPerReplica": {
                      "annotations": {},
                      "className": "",
                      "enabled": false,
                      "hostDomain": "domain.com",
                      "hostPrefix": "alertmanager",
                      "labels": {},
                      "pathType": "ImplementationSpecific",
                      "paths": [
                        "/"
                      ],
                      "tlsSecretName": "",
                      "tlsSecretPerReplica": {
                        "enabled": false,
                        "prefix": "alertmanager"
                      }
                    },
                    "livenessProbe": {
                      "httpGet": {
                        "path": "/",
                        "port": "http"
                      }
                    },
                    "minReadySeconds": 0,
                    "nameOverride": "",
                    "namespaceOverride": "",
                    "nodeSelector": {},
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "emptyDir": {},
                      "enabled": true,
                      "labels": {},
                      "size": "2Gi"
                    },
                    "podAnnotations": {},
                    "podAntiAffinity": "",
                    "podAntiAffinityTopologyKey": "kubernetes.io/hostname",
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "podSecurityContext": {
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "httpGet": {
                        "path": "/",
                        "port": "http"
                      }
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "revisionHistoryLimit": 10,
                    "schedulerName": "",
                    "securityContext": {
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "annotations": {},
                      "clusterPort": 9094,
                      "extraPorts": [],
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "labels": {},
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "port": 9093,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "servicePerReplica": {
                      "annotations": {},
                      "enabled": false,
                      "externalTrafficPolicy": "Cluster",
                      "loadBalancerSourceRanges": [],
                      "type": "ClusterIP"
                    },
                    "statefulSet": {
                      "annotations": {}
                    },
                    "templates": {},
                    "testFramework": {
                      "annotations": {
                        "helm.sh/hook": "test-success"
                      },
                      "enabled": false
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "verticalPodAutoscaler": {
                      "enabled": false
                    }
                  },
                  "commonMetaLabels": {},
                  "configmapReload": {
                    "env": [],
                    "prometheus": {
                      "containerPort": 8080,
                      "containerPortName": "metrics",
                      "containerSecurityContext": {},
                      "enabled": true,
                      "extraArgs": {},
                      "extraConfigmapMounts": [],
                      "extraVolumeDirs": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                        "tag": "v0.85.0"
                      },
                      "livenessProbe": {
                        "httpGet": {
                          "path": "/healthz",
                          "port": "metrics",
                          "scheme": "HTTP"
                        },
                        "initialDelaySeconds": 2,
                        "periodSeconds": 10
                      },
                      "name": "configmap-reload",
                      "readinessProbe": {
                        "httpGet": {
                          "path": "/healthz",
                          "port": "metrics",
                          "scheme": "HTTP"
                        },
                        "periodSeconds": 10
                      },
                      "resources": {},
                      "startupProbe": {
                        "enabled": false,
                        "httpGet": {
                          "path": "/healthz",
                          "port": "metrics",
                          "scheme": "HTTP"
                        },
                        "periodSeconds": 10
                      }
                    },
                    "reloadUrl": ""
                  },
                  "extraManifests": [],
                  "extraScrapeConfigs": "",
                  "forceNamespace": "",
                  "imagePullSecrets": [],
                  "kube-state-metrics": {
                    "affinity": {},
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "autosharding": {
                      "enabled": false
                    },
                    "collectors": [
                      "certificatesigningrequests",
                      "configmaps",
                      "cronjobs",
                      "daemonsets",
                      "deployments",
                      "endpoints",
                      "horizontalpodautoscalers",
                      "ingresses",
                      "jobs",
                      "leases",
                      "limitranges",
                      "mutatingwebhookconfigurations",
                      "namespaces",
                      "networkpolicies",
                      "nodes",
                      "persistentvolumeclaims",
                      "persistentvolumes",
                      "poddisruptionbudgets",
                      "pods",
                      "replicasets",
                      "replicationcontrollers",
                      "resourcequotas",
                      "secrets",
                      "services",
                      "statefulsets",
                      "storageclasses",
                      "validatingwebhookconfigurations",
                      "volumeattachments"
                    ],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true
                    },
                    "containers": [],
                    "customLabels": {},
                    "customResourceState": {
                      "config": {},
                      "create": true,
                      "enabled": false,
                      "key": "config.yaml",
                      "name": ""
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "ClusterFirst",
                    "enabled": true,
                    "env": [],
                    "extraArgs": [],
                    "extraManifests": [],
                    "global": {
                      "imagePullSecrets": [],
                      "imageRegistry": ""
                    },
                    "hostNetwork": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "registry": "registry.k8s.io",
                      "repository": "kube-state-metrics/kube-state-metrics",
                      "sha": "",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "initContainers": [],
                    "kubeRBACProxy": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "readOnlyRootFilesystem": true
                      },
                      "enabled": false,
                      "extraArgs": [],
                      "ignoreProbePaths": true,
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "registry": "quay.io",
                        "repository": "brancz/kube-rbac-proxy",
                        "sha": "",
                        "tag": "v0.19.1"
                      },
                      "proxyEndpointsPort": 8888,
                      "resources": {},
                      "volumeMounts": []
                    },
                    "kubeconfig": {
                      "enabled": false,
                      "secret": null
                    },
                    "labels": {},
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "metricAllowlist": [],
                    "metricAnnotationsAllowList": [],
                    "metricDenylist": [],
                    "metricLabelsAllowlist": [],
                    "namespaceOverride": "",
                    "namespaces": "",
                    "namespacesDenylist": "",
                    "networkPolicy": {
                      "enabled": false,
                      "flavor": "kubernetes"
                    },
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "prometheus": {
                      "monitor": {
                        "additionalLabels": {},
                        "annotations": {},
                        "enabled": false,
                        "http": {
                          "bearerTokenFile": "",
                          "bearerTokenSecret": {},
                          "enableHttp2": false,
                          "honorLabels": false,
                          "interval": "",
                          "metricRelabelings": [],
                          "proxyUrl": "",
                          "relabelings": [],
                          "scheme": "",
                          "scrapeTimeout": "",
                          "tlsConfig": {}
                        },
                        "jobLabel": "",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metrics": {
                          "bearerTokenFile": "",
                          "bearerTokenSecret": {},
                          "enableHttp2": false,
                          "honorLabels": false,
                          "interval": "",
                          "metricRelabelings": [],
                          "proxyUrl": "",
                          "relabelings": [],
                          "scheme": "",
                          "scrapeTimeout": "",
                          "tlsConfig": {}
                        },
                        "namespace": "",
                        "namespaceSelector": [],
                        "podTargetLabels": [],
                        "sampleLimit": 0,
                        "selectorOverride": {},
                        "targetLabels": [],
                        "targetLimit": 0
                      },
                      "scrapeconfig": {
                        "additionalLabels": {},
                        "annotations": {},
                        "enableHttp2": false,
                        "enabled": false,
                        "honorLabels": true,
                        "jobName": "kube-state-metrics",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metricRelabelings": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "sampleLimit": 0,
                        "scheme": "",
                        "scrapeInterval": "",
                        "scrapeTimeout": "",
                        "staticConfigLabels": {},
                        "targetLimit": 0,
                        "tlsConfig": {}
                      }
                    },
                    "prometheusScrape": true,
                    "rbac": {
                      "create": true,
                      "extraRules": [],
                      "useClusterRole": true
                    },
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "releaseLabel": false,
                    "releaseNamespace": false,
                    "replicas": 1,
                    "resources": {},
                    "revisionHistoryLimit": 10,
                    "securityContext": {
                      "enabled": true,
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "selectorOverride": {},
                    "selfMonitor": {
                      "enabled": false
                    },
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePort": 0,
                      "port": 8080,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "automountServiceAccountToken": true,
                      "create": true,
                      "imagePullSecrets": [],
                      "name": null
                    },
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 0,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "verticalPodAutoscaler": {
                      "controlledResources": [],
                      "enabled": false,
                      "maxAllowed": {},
                      "minAllowed": {}
                    },
                    "volumeMounts": [],
                    "volumes": []
                  },
                  "networkPolicy": {
                    "enabled": false
                  },
                  "prometheus-node-exporter": {
                    "affinity": {},
                    "commonLabels": {},
                    "configmaps": [],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "readOnlyRootFilesystem": true
                    },
                    "daemonsetAnnotations": {},
                    "dnsConfig": {},
                    "enabled": true,
                    "endpoints": [],
                    "env": {},
                    "extraArgs": [],
                    "extraHostVolumeMounts": [],
                    "extraInitContainers": [],
                    "extraManifests": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {
                      "imagePullSecrets": [],
                      "imageRegistry": ""
                    },
                    "hostIPC": false,
                    "hostNetwork": true,
                    "hostPID": true,
                    "hostProcFsMount": {
                      "mountPropagation": ""
                    },
                    "hostRootFsMount": {
                      "enabled": true,
                      "mountPropagation": "HostToContainer"
                    },
                    "hostSysFsMount": {
                      "mountPropagation": ""
                    },
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "registry": "quay.io",
                      "repository": "prometheus/node-exporter",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "kubeRBACProxy": {
                      "containerSecurityContext": {},
                      "enableHostPort": false,
                      "enableProxyEndpointsHostPort": false,
                      "enabled": false,
                      "env": {},
                      "extraArgs": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "registry": "quay.io",
                        "repository": "brancz/kube-rbac-proxy",
                        "sha": "",
                        "tag": "v0.20.0"
                      },
                      "port": 8100,
                      "portName": "http",
                      "proxyEndpointsPort": 8888,
                      "resources": {},
                      "tls": {
                        "enabled": false,
                        "tlsClientAuth": false
                      }
                    },
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 0,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "nameOverride": "",
                    "namespaceOverride": "",
                    "networkPolicy": {
                      "enabled": false
                    },
                    "nodeSelector": {
                      "kubernetes.io/os": "linux"
                    },
                    "podAnnotations": {
                      "cluster-autoscaler.kubernetes.io/safe-to-evict": "true"
                    },
                    "podLabels": {},
                    "prometheus": {
                      "monitor": {
                        "additionalLabels": {},
                        "apiVersion": "",
                        "attachMetadata": {
                          "node": false
                        },
                        "basicAuth": {},
                        "bearerTokenFile": null,
                        "enabled": false,
                        "interval": "",
                        "jobLabel": "",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metricRelabelings": [],
                        "namespace": "",
                        "podTargetLabels": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "sampleLimit": 0,
                        "scheme": "http",
                        "scrapeTimeout": "10s",
                        "selectorOverride": {},
                        "targetLabels": [],
                        "targetLimit": 0,
                        "tlsConfig": {}
                      },
                      "podMonitor": {
                        "additionalLabels": {},
                        "apiVersion": "",
                        "attachMetadata": {
                          "node": false
                        },
                        "authorization": {},
                        "basicAuth": {},
                        "bearerTokenSecret": {},
                        "enableHttp2": "",
                        "enabled": false,
                        "filterRunning": "",
                        "followRedirects": "",
                        "honorLabels": true,
                        "honorTimestamps": true,
                        "interval": "",
                        "jobLabel": "",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metricRelabelings": [],
                        "namespace": "",
                        "oauth2": {},
                        "params": {},
                        "path": "/metrics",
                        "podTargetLabels": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "sampleLimit": 0,
                        "scheme": "http",
                        "scrapeTimeout": "",
                        "selectorOverride": {},
                        "targetLimit": 0,
                        "tlsConfig": {}
                      }
                    },
                    "rbac": {
                      "create": true,
                      "pspEnabled": false
                    },
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 0,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "releaseLabel": false,
                    "resources": {},
                    "restartPolicy": null,
                    "revisionHistoryLimit": 10,
                    "secrets": [],
                    "securityContext": {
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "annotations": {
                        "prometheus.io/scrape": "true"
                      },
                      "clusterIP": "",
                      "enabled": true,
                      "externalTrafficPolicy": "",
                      "internalTrafficPolicy": "",
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "labels": {},
                      "listenOnAllInterfaces": true,
                      "nodePort": null,
                      "port": 9100,
                      "portName": "metrics",
                      "servicePort": "",
                      "targetPort": 9100,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "automountServiceAccountToken": false,
                      "create": true,
                      "imagePullSecrets": [],
                      "name": null
                    },
                    "sidecarHostVolumeMounts": [],
                    "sidecarVolumeMount": [],
                    "sidecars": [],
                    "terminationGracePeriodSeconds": null,
                    "terminationMessageParams": {
                      "enabled": false,
                      "terminationMessagePath": "/dev/termination-log",
                      "terminationMessagePolicy": "File"
                    },
                    "tlsSecret": {
                      "caItem": "",
                      "certItem": "tls.crt",
                      "enabled": false,
                      "keyItem": "tls.key",
                      "secretName": "prometheus-node-exporter-tls",
                      "volumeName": "prometheus-node-exporter-tls"
                    },
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "operator": "Exists"
                      }
                    ],
                    "updateStrategy": {
                      "rollingUpdate": {
                        "maxUnavailable": 1
                      },
                      "type": "RollingUpdate"
                    },
                    "version": "",
                    "verticalPodAutoscaler": {
                      "controlledResources": [],
                      "enabled": false,
                      "maxAllowed": {},
                      "minAllowed": {}
                    }
                  },
                  "prometheus-pushgateway": {
                    "affinity": {},
                    "automountServiceAccountToken": true,
                    "containerSecurityContext": {},
                    "deploymentAnnotations": {},
                    "enabled": true,
                    "extraArgs": [],
                    "extraContainers": [],
                    "extraInitContainers": [],
                    "extraManifests": [],
                    "extraVars": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {
                      "imagePullSecrets": [],
                      "imageRegistry": ""
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "registry": "",
                      "repository": "quay.io/prometheus/pushgateway",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "ingress": {
                      "className": "",
                      "enabled": false,
                      "extraPaths": [],
                      "path": "/",
                      "pathType": "ImplementationSpecific"
                    },
                    "lifecycle": {},
                    "liveness": {
                      "enabled": true,
                      "probe": {
                        "httpGet": {
                          "path": "/-/healthy",
                          "port": 9091
                        },
                        "initialDelaySeconds": 10,
                        "timeoutSeconds": 10
                      }
                    },
                    "nameOverride": "",
                    "namespaceOverride": "",
                    "networkPolicy": {},
                    "nodeSelector": {},
                    "persistentVolume": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "enabled": false,
                      "existingClaim": "",
                      "mountPath": "/data",
                      "size": "2Gi",
                      "subPath": ""
                    },
                    "persistentVolumeLabels": {},
                    "podAnnotations": {},
                    "podAntiAffinity": "",
                    "podAntiAffinityTopologyKey": "kubernetes.io/hostname",
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "priorityClassName": null,
                    "readiness": {
                      "enabled": true,
                      "probe": {
                        "httpGet": {
                          "path": "/-/ready",
                          "port": 9091
                        },
                        "initialDelaySeconds": 10,
                        "timeoutSeconds": 10
                      }
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "runAsStatefulSet": false,
                    "securityContext": {
                      "fsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "clusterIP": "",
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "port": 9091,
                      "portName": "http",
                      "targetPort": 9091,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "create": true,
                      "name": null
                    },
                    "serviceAccountLabels": {},
                    "serviceAnnotations": {
                      "prometheus.io/probe": "pushgateway"
                    },
                    "serviceLabels": {},
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "basicAuth": {},
                      "bearerTokenFile": "",
                      "enabled": false,
                      "honorLabels": true,
                      "interval": "",
                      "metricRelabelings": [],
                      "namespace": "monitoring",
                      "relabelings": [],
                      "scheme": "",
                      "scrapeTimeout": "",
                      "telemetryPath": "/metrics",
                      "tlsConfig": {}
                    },
                    "strategy": {
                      "type": "Recreate"
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "webConfiguration": {}
                  },
                  "rbac": {
                    "create": true
                  },
                  "ruleFiles": {},
                  "scrapeConfigFiles": [],
                  "server": {
                    "affinity": {},
                    "alertmanagers": [],
                    "baseURL": "",
                    "clusterRoleNameOverride": "",
                    "command": [],
                    "configFromSecret": "",
                    "configMapAnnotations": {},
                    "configMapOverrideName": "",
                    "configPath": "/etc/config/prometheus.yml",
                    "containerSecurityContext": {},
                    "daemonSet": {
                      "annotations": {},
                      "enabled": false,
                      "labels": {}
                    },
                    "defaultFlagsOverride": [],
                    "deploymentAnnotations": {},
                    "dnsConfig": {},
                    "dnsPolicy": "ClusterFirst",
                    "emptyDir": {
                      "medium": "",
                      "sizeLimit": ""
                    },
                    "enableServiceLinks": true,
                    "env": [],
                    "exemplars": {},
                    "extraArgs": {},
                    "extraConfigmapLabels": {},
                    "extraConfigmapMounts": [],
                    "extraFlags": [
                      "web.enable-lifecycle"
                    ],
                    "extraHostPathMounts": [],
                    "extraInitContainers": [],
                    "extraSecretMounts": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {
                      "evaluation_interval": "1m",
                      "scrape_interval": "1m",
                      "scrape_timeout": "10s"
                    },
                    "hostAliases": [],
                    "hostNetwork": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "repository": "quay.io/prometheus/prometheus",
                      "tag": ""
                    },
                    "ingress": {
                      "annotations": {},
                      "enabled": false,
                      "extraLabels": {},
                      "extraPaths": [],
                      "hosts": [],
                      "ingressClassName": "",
                      "path": "/",
                      "pathType": "Prefix",
                      "tls": []
                    },
                    "livenessProbeFailureThreshold": 3,
                    "livenessProbeInitialDelay": 30,
                    "livenessProbePeriodSeconds": 15,
                    "livenessProbeSuccessThreshold": 1,
                    "livenessProbeTimeout": 10,
                    "name": "server",
                    "nodeSelector": {},
                    "otlp": {},
                    "persistentVolume": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "enabled": true,
                      "existingClaim": "",
                      "labels": {},
                      "mountPath": "/data",
                      "size": "8Gi",
                      "statefulSetNameOverride": "",
                      "subPath": ""
                    },
                    "podAnnotations": {},
                    "podAntiAffinity": "",
                    "podAntiAffinityTopologyKey": "kubernetes.io/hostname",
                    "podDisruptionBudget": {
                      "enabled": false
                    },
                    "podLabels": {},
                    "portName": "",
                    "prefixURL": "",
                    "priorityClassName": "",
                    "probeHeaders": [],
                    "probeScheme": "HTTP",
                    "readinessProbeFailureThreshold": 3,
                    "readinessProbeInitialDelay": 30,
                    "readinessProbePeriodSeconds": 5,
                    "readinessProbeSuccessThreshold": 1,
                    "readinessProbeTimeout": 4,
                    "releaseNamespace": false,
                    "remoteRead": [],
                    "remoteWrite": [],
                    "replicaCount": 1,
                    "resources": {},
                    "retention": "15d",
                    "retentionSize": "",
                    "revisionHistoryLimit": 10,
                    "route": {
                      "main": {
                        "additionalRules": [],
                        "annotations": {},
                        "apiVersion": "",
                        "enabled": false,
                        "filters": [],
                        "hostnames": [],
                        "httpsRedirect": false,
                        "kind": "",
                        "labels": {},
                        "matches": [
                          {
                            "path": {
                              "type": "PathPrefix",
                              "value": "/"
                            }
                          }
                        ],
                        "parentRefs": []
                      }
                    },
                    "runtimeClassName": "",
                    "securityContext": {
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "additionalPorts": [],
                      "annotations": {},
                      "clusterIP": "",
                      "enabled": true,
                      "externalIPs": [],
                      "externalTrafficPolicy": "",
                      "gRPC": {
                        "enabled": false,
                        "servicePort": 10901
                      },
                      "labels": {},
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "servicePort": 80,
                      "sessionAffinity": "None",
                      "statefulsetReplica": {
                        "enabled": false,
                        "replica": 0
                      },
                      "type": "ClusterIP"
                    },
                    "sidecarContainers": {},
                    "sidecarTemplateValues": {},
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 30,
                      "periodSeconds": 5,
                      "timeoutSeconds": 10
                    },
                    "statefulSet": {
                      "annotations": {},
                      "enabled": false,
                      "headless": {
                        "annotations": {},
                        "gRPC": {
                          "enabled": false,
                          "servicePort": 10901
                        },
                        "labels": {},
                        "servicePort": 80
                      },
                      "labels": {},
                      "podManagementPolicy": "OrderedReady",
                      "pvcDeleteOnStsDelete": false,
                      "pvcDeleteOnStsScale": false
                    },
                    "storagePath": "",
                    "strategy": {
                      "type": "Recreate"
                    },
                    "tcpSocketProbeEnabled": false,
                    "terminationGracePeriodSeconds": 300,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "tsdb": {},
                    "verticalAutoscaler": {
                      "enabled": false
                    }
                  },
                  "serverFiles": {
                    "alerting_rules.yml": {},
                    "alerts": {},
                    "prometheus.yml": {
                      "rule_files": [
                        "/etc/config/recording_rules.yml",
                        "/etc/config/alerting_rules.yml",
                        "/etc/config/rules",
                        "/etc/config/alerts"
                      ],
                      "scrape_configs": [
                        {
                          "job_name": "prometheus",
                          "static_configs": [
                            {
                              "targets": [
                                "localhost:9090"
                              ]
                            }
                          ]
                        },
                        {
                          "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                          "job_name": "kubernetes-apiservers",
                          "kubernetes_sd_configs": [
                            {
                              "role": "endpoints"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": "default;kubernetes;https",
                              "source_labels": [
                                "__meta_kubernetes_namespace",
                                "__meta_kubernetes_service_name",
                                "__meta_kubernetes_endpoint_port_name"
                              ]
                            }
                          ],
                          "scheme": "https",
                          "tls_config": {
                            "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
                          }
                        },
                        {
                          "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                          "job_name": "kubernetes-nodes",
                          "kubernetes_sd_configs": [
                            {
                              "role": "node"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_node_label_(.+)"
                            },
                            {
                              "replacement": "kubernetes.default.svc:443",
                              "target_label": "__address__"
                            },
                            {
                              "regex": "(.+)",
                              "replacement": "/api/v1/nodes/$1/proxy/metrics",
                              "source_labels": [
                                "__meta_kubernetes_node_name"
                              ],
                              "target_label": "__metrics_path__"
                            }
                          ],
                          "scheme": "https",
                          "tls_config": {
                            "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
                          }
                        },
                        {
                          "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                          "job_name": "kubernetes-nodes-cadvisor",
                          "kubernetes_sd_configs": [
                            {
                              "role": "node"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_node_label_(.+)"
                            },
                            {
                              "replacement": "kubernetes.default.svc:443",
                              "target_label": "__address__"
                            },
                            {
                              "regex": "(.+)",
                              "replacement": "/api/v1/nodes/$1/proxy/metrics/cadvisor",
                              "source_labels": [
                                "__meta_kubernetes_node_name"
                              ],
                              "target_label": "__metrics_path__"
                            }
                          ],
                          "scheme": "https",
                          "tls_config": {
                            "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
                          }
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-service-endpoints",
                          "kubernetes_sd_configs": [
                            {
                              "role": "endpoints"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scrape"
                              ]
                            },
                            {
                              "action": "drop",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+?)(?::\\d+)?;(\\d+)",
                              "replacement": "$1:$2",
                              "source_labels": [
                                "__address__",
                                "__meta_kubernetes_service_annotation_prometheus_io_port"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_service_name"
                              ],
                              "target_label": "service"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-service-endpoints-slow",
                          "kubernetes_sd_configs": [
                            {
                              "role": "endpoints"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+?)(?::\\d+)?;(\\d+)",
                              "replacement": "$1:$2",
                              "source_labels": [
                                "__address__",
                                "__meta_kubernetes_service_annotation_prometheus_io_port"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_service_name"
                              ],
                              "target_label": "service"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ],
                          "scrape_interval": "5m",
                          "scrape_timeout": "30s"
                        },
                        {
                          "honor_labels": true,
                          "job_name": "prometheus-pushgateway",
                          "kubernetes_sd_configs": [
                            {
                              "role": "service"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": "pushgateway",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_probe"
                              ]
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-services",
                          "kubernetes_sd_configs": [
                            {
                              "role": "service"
                            }
                          ],
                          "metrics_path": "/probe",
                          "params": {
                            "module": [
                              "http_2xx"
                            ]
                          },
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_probe"
                              ]
                            },
                            {
                              "source_labels": [
                                "__address__"
                              ],
                              "target_label": "__param_target"
                            },
                            {
                              "replacement": "blackbox",
                              "target_label": "__address__"
                            },
                            {
                              "source_labels": [
                                "__param_target"
                              ],
                              "target_label": "instance"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_label_(.+)"
                            },
                            {
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "source_labels": [
                                "__meta_kubernetes_service_name"
                              ],
                              "target_label": "service"
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-pods",
                          "kubernetes_sd_configs": [
                            {
                              "role": "pod"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scrape"
                              ]
                            },
                            {
                              "action": "drop",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);(([A-Fa-f0-9]{1,4}::?){1,7}[A-Fa-f0-9]{1,4})",
                              "replacement": "[$2]:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);((([0-9]+?)(\\.|$)){4})",
                              "replacement": "$2:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_name"
                              ],
                              "target_label": "pod"
                            },
                            {
                              "action": "drop",
                              "regex": "Pending|Succeeded|Failed|Completed",
                              "source_labels": [
                                "__meta_kubernetes_pod_phase"
                              ]
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-pods-slow",
                          "kubernetes_sd_configs": [
                            {
                              "role": "pod"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);(([A-Fa-f0-9]{1,4}::?){1,7}[A-Fa-f0-9]{1,4})",
                              "replacement": "[$2]:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);((([0-9]+?)(\\.|$)){4})",
                              "replacement": "$2:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_name"
                              ],
                              "target_label": "pod"
                            },
                            {
                              "action": "drop",
                              "regex": "Pending|Succeeded|Failed|Completed",
                              "source_labels": [
                                "__meta_kubernetes_pod_phase"
                              ]
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ],
                          "scrape_interval": "5m",
                          "scrape_timeout": "30s"
                        }
                      ]
                    },
                    "recording_rules.yml": {},
                    "rules": {}
                  },
                  "serviceAccounts": {
                    "server": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-12-18T14:29:21Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.0.2
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DexConfigOperator
            name: dexconfigoperators.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: Dex
            name: dexes.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: FinOpsOperator
            name: finopsoperators.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: KubeStateMetrics
            name: kubestatemetrics.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: OpenCost
            name: opencosts.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: Postgres
            name: postgres.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: Prometheus
            name: prometheuses.dependencies.tenantoperator.stakater.com
            version: v1alpha1
        description: MTO Dependencies Operator packages the charts required by MTO
        displayName: MTO Dependencies Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - Kubernetes
        - OpenShift
        - Helm
        links:
        - name: MTO Dependencies Operator
          url: https://mto-dependencies-operator.domain
        maturity: alpha
        provider:
          name: Stakater
        relatedImages:
        - registry.connect.redhat.com/stakater/mto-dependencies-operator@sha256:d83ff33721b852eb6849638586f84f863654978d3df316ed4d0a24ba3732fdaf
        - public.ecr.aws/aws-observability/aws-sigv4-proxy@sha256:2768495a4e331852aa4f206ad728f5e65b2c8680715ae984d1580ca1029f8438
        - registry.connect.redhat.com/stakater/mto-dependencies-operator-bundle@sha256:963008c21ebbfb4b35a399a4681260aa16f3e403d9f2d5d556e01f39265c2213
        version: 0.0.2
      entries:
      - name: mto-dependencies-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: mto-dependencies-operator
    provider:
      name: Stakater
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ClusterPulse
      provider-url: ""
    name: clusterpulse
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clusterpulse.v0.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.clusterpulse.io/v1alpha1",
                "kind": "ClusterPulse",
                "metadata": {
                  "name": "clusterpulse-prod"
                },
                "spec": {
                  "api": {
                    "enabled": true,
                    "imagePullPolicy": "Always",
                    "logging": {
                      "json": true,
                      "level": "INFO"
                    },
                    "oauth": {
                      "enabled": true,
                      "headerEmail": "X-Forwarded-Email",
                      "headerUser": "X-Forwarded-User"
                    },
                    "rbac": {
                      "auditEnabled": true,
                      "cacheTTL": 0,
                      "defaultDeny": true,
                      "enabled": true,
                      "groupSyncInterval": 300
                    },
                    "replicas": 3,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    },
                    "security": {
                      "allowedOrigins": [
                        "*"
                      ],
                      "sessionExpireMinutes": 1440,
                      "trustedHosts": [
                        "*"
                      ]
                    },
                    "server": {
                      "host": "0.0.0.0",
                      "port": 8080,
                      "reload": false,
                      "workers": 1
                    }
                  },
                  "clusterEngine": {
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    },
                    "timing": {
                      "cacheTTL": "600",
                      "fullScanInterval": "300",
                      "reconciliationInterval": "30"
                    }
                  },
                  "frontend": {
                    "config": {
                      "enableAnonymousAccess": false,
                      "features": {
                        "devTools": false,
                        "mockData": false,
                        "nodeDetails": true,
                        "operatorDetails": true,
                        "registryStatus": true
                      },
                      "refreshInterval": 30000,
                      "theme": {
                        "defaultTheme": "auto"
                      }
                    },
                    "enabled": true,
                    "oauth": {
                      "enabled": true,
                      "image": "quay.io/openshift/origin-oauth-proxy:4.17"
                    },
                    "replicas": 3,
                    "route": {
                      "enabled": true,
                      "tls": {
                        "termination": "reencrypt"
                      }
                    }
                  },
                  "policyEngine": {
                    "batch": {
                      "cacheClearBatchSize": 500,
                      "redisPipelineBatchSize": 1000,
                      "redisScanBatchSize": 100
                    },
                    "cache": {
                      "groupCacheTTL": 300,
                      "policyCacheTTL": 300
                    },
                    "enabled": true,
                    "limits": {
                      "maxPoliciesPerUser": 100,
                      "policyValidationInterval": 300
                    },
                    "logging": {
                      "level": "INFO"
                    },
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "redis": {
                    "enabled": true,
                    "global": {
                      "compatibility": {
                        "openshift": {
                          "adaptSecurityContext": "force"
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "clusterpulse.io/v1alpha1",
                "kind": "ClusterConnection",
                "metadata": {
                  "name": "example-cluster"
                },
                "spec": {
                  "credentialsRef": {
                    "name": "cluster-credentials"
                  },
                  "displayName": "Example Production Cluster",
                  "endpoint": "https://api.example.openshift.com:6443",
                  "monitoring": {
                    "interval": 30,
                    "timeout": 10
                  }
                }
              },
              {
                "apiVersion": "clusterpulse.io/v1alpha1",
                "kind": "MonitorAccessPolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "access": {
                    "effect": "Allow",
                    "enabled": true
                  },
                  "identity": {
                    "priority": 100,
                    "subjects": {
                      "groups": [
                        "default-group"
                      ],
                      "users": [
                        "default-user"
                      ]
                    }
                  },
                  "operations": {
                    "audit": {
                      "logAccess": false,
                      "requireReason": false
                    }
                  },
                  "scope": {
                    "clusters": {
                      "default": "none",
                      "rules": [
                        {
                          "permissions": {
                            "view": true,
                            "viewAuditInfo": true,
                            "viewCosts": true,
                            "viewMetadata": true,
                            "viewMetrics": true,
                            "viewSecrets": true,
                            "viewSensitive": true
                          },
                          "resources": {
                            "namespaces": {
                              "visibility": "all"
                            },
                            "nodes": {
                              "filters": {
                                "hideMasters": false
                              },
                              "visibility": "all"
                            },
                            "operators": {
                              "visibility": "none"
                            },
                            "pods": {
                              "visibility": "all"
                            }
                          },
                          "selector": {
                            "matchPattern": ".*"
                          }
                        }
                      ]
                    }
                  }
                }
              },
              {
                "apiVersion": "clusterpulse.io/v1alpha1",
                "kind": "RegistryConnection",
                "metadata": {
                  "name": "dockerhub",
                  "namespace": "clusterpulse"
                },
                "spec": {
                  "displayName": "Docker Hub",
                  "endpoint": "https://registry-1.docker.io",
                  "healthCheckPaths": [
                    "/v2/"
                  ],
                  "insecure": false,
                  "labels": {
                    "environment": "production",
                    "provider": "dockerhub"
                  },
                  "monitoring": {
                    "checkCatalog": false,
                    "interval": 60,
                    "maxCatalogEntries": 100,
                    "timeout": 10
                  },
                  "skipTLSVerify": false
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: docker.io/clusterpulse/clusterpulse-operator:0.2.1
          createdAt: "2025-11-06T18:07:25Z"
          description: Provides OpenShift cluster health monitoring
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/ClusterPulse/operator
          support: None
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Defines a connection to a monitored Kubernetes/OpenShift
              cluster
            displayName: Cluster Connection
            kind: ClusterConnection
            name: clusterconnections.clusterpulse.io
            version: v1alpha1
          - description: Manages the deployment and configuration of ClusterPulse
              monitoring platform
            displayName: ClusterPulse Instance
            kind: ClusterPulse
            name: clusterpulses.charts.clusterpulse.io
            version: v1alpha1
          - description: Defines fine-grained access control policies for cluster
              monitoring
            displayName: Monitor Access Policy
            kind: MonitorAccessPolicy
            name: monitoraccesspolicies.clusterpulse.io
            version: v1alpha1
          - description: Defines a connection to a container registry for monitoring
            displayName: Registry Connection
            kind: RegistryConnection
            name: registryconnections.clusterpulse.io
            version: v1alpha1
        description: |
          ## About ClusterPulse
          ClusterPulse is a comprehensive multi-cluster monitoring and management platform designed for OpenShift environments. It provides centralized visibility, policy-based access control, and real-time monitoring across multiple clusters through a unified dashboard. For more information, visit [https://github.com/ClusterPulse/operator](https://github.com/ClusterPulse/operator).

          ## Features and Capabilities
          - **Multi-Cluster Monitoring**: Connect and monitor multiple OpenShift/Kubernetes clusters from a single interface
          - **Policy-Based Access Control**: Fine-grained access policies using MonitorAccessPolicy CRDs
          - **Real-Time Metrics**: Live cluster health, node status, and resource utilization tracking
          - **Registry Monitoring**: Monitor connected container registries
          - **OAuth Integration**: Seamless OpenShift OAuth integration for authentication
          - **Redis-Backed Storage**: Scalable data storage using Redis for metrics and state
        displayName: ClusterPulse
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - clusterpulse
        links:
        - name: ClusterPulse
          url: https://github.com/ClusterPulse/operator
        maintainers:
        - email: asmoore@redhat.com
          name: Asa Moore
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: ClusterPulse
        relatedImages:
        - docker.io/clusterpulse/clusterpulse-operator:0.2.1
        - quay.io/community-operator-pipeline-prod/clusterpulse:0.2.1
        version: 0.2.1
      entries:
      - name: clusterpulse.v0.2.1
        version: 0.2.1
      - name: clusterpulse.v0.2.0
        version: 0.2.0
      - name: clusterpulse.v0.1.1
        version: 0.1.1
      name: fast-v0
    defaultChannel: fast-v0
    packageName: clusterpulse
    provider:
      name: ClusterPulse
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-apigateway-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-apigateway-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "Resource",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "RestAPI",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "Stage",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "VPCLink",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/apigateway-controller:1.4.0
          createdAt: "2025-11-29T04:47:28Z"
          description: AWS API Gateway controller is a service controller for managing
            API Gateway resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIIntegrationResponse represents the state of an AWS apigateway
              APIIntegrationResponse resource.
            displayName: APIIntegrationResponse
            kind: APIIntegrationResponse
            name: apiintegrationresponses.apigateway.services.k8s.aws
            version: v1alpha1
          - description: APIKey represents the state of an AWS apigateway APIKey resource.
            displayName: APIKey
            kind: APIKey
            name: apikeys.apigateway.services.k8s.aws
            version: v1alpha1
          - description: APIMethodResponse represents the state of an AWS apigateway
              APIMethodResponse resource.
            displayName: APIMethodResponse
            kind: APIMethodResponse
            name: apimethodresponses.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Authorizer represents the state of an AWS apigateway Authorizer
              resource.
            displayName: Authorizer
            kind: Authorizer
            name: authorizers.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Deployment represents the state of an AWS apigateway Deployment
              resource.
            displayName: Deployment
            kind: Deployment
            name: deployments.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Integration represents the state of an AWS apigateway Integration
              resource.
            displayName: Integration
            kind: Integration
            name: integrations.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Method represents the state of an AWS apigateway Method resource.
            displayName: Method
            kind: Method
            name: methods.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Resource represents the state of an AWS apigateway Resource
              resource.
            displayName: Resource
            kind: Resource
            name: resources.apigateway.services.k8s.aws
            version: v1alpha1
          - description: RestAPI represents the state of an AWS apigateway RestAPI
              resource.
            displayName: RestAPI
            kind: RestAPI
            name: restapis.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Stage represents the state of an AWS apigateway Stage resource.
            displayName: Stage
            kind: Stage
            name: stages.apigateway.services.k8s.aws
            version: v1alpha1
          - description: VPCLink represents the state of an AWS apigateway VPCLink
              resource.
            displayName: VPCLink
            kind: VPCLink
            name: vpclinks.apigateway.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon API Gateway resources in AWS from within your Kubernetes cluster.

          **About Amazon API Gateway**

          Amazon API Gateway is an AWS service for creating, publishing, maintaining, monitoring, and securing REST, HTTP, and WebSocket APIs at any scale. API developers can create APIs that access AWS or other web services, as well as data stored in the AWS Cloud. As an API Gateway API developer, you can create APIs for use in your own client applications. Or you can make your APIs available to third-party app developers.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon API Gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apigateway
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon API Gateway Developer Resources
          url: https://aws.amazon.com/api-gateway/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: apigateway maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/apigateway-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-apigateway-controller@sha256:89027e21575cdcac32288b71085977492290e54a3e061b63b6ee6d4bf60cfd6c
        version: 1.4.0
      entries:
      - name: ack-apigateway-controller.v1.4.0
        version: 1.4.0
      - name: ack-apigateway-controller.v1.3.2
        version: 1.3.2
      - name: ack-apigateway-controller.v1.3.1
        version: 1.3.1
      - name: ack-apigateway-controller.v1.3.0
        version: 1.3.0
      - name: ack-apigateway-controller.v1.2.5
        version: 1.2.5
      - name: ack-apigateway-controller.v1.2.4
        version: 1.2.4
      - name: ack-apigateway-controller.v1.2.3
        version: 1.2.3
      - name: ack-apigateway-controller.v1.2.2
        version: 1.2.2
      - name: ack-apigateway-controller.v1.2.1
        version: 1.2.1
      - name: ack-apigateway-controller.v1.1.0
        version: 1.1.0
      - name: ack-apigateway-controller.v1.0.6
        version: 1.0.6
      - name: ack-apigateway-controller.v1.0.5
        version: 1.0.5
      - name: ack-apigateway-controller.v1.0.4
        version: 1.0.4
      - name: ack-apigateway-controller.v1.0.2
        version: 1.0.2
      - name: ack-apigateway-controller.v1.0.1
        version: 1.0.1
      - name: ack-apigateway-controller.v1.0.0
        version: 1.0.0
      - name: ack-apigateway-controller.v0.0.3
        version: 0.0.3
      - name: ack-apigateway-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-apigateway-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: servicemeshoperator3
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: servicemeshoperator3.v3.0.0-tp.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.24.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.24.1"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh-tech-preview/istio-rhel9-operator@sha256:f5dfe495ba92ecb880485b66cfafbf6451f8142b8e0d5fd7f29db94171c51336
          createdAt: "2024-12-12T10:28:38Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1alpha1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1alpha1
          - description: IstioRevisionTag references a Istio or IstioRevision object
              and serves as an alias for sidecar injection.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1alpha1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-proxyv2-rhel9@sha256:c21481d6dae58b82dac93b1b47b9d9f53a30617fa9d930a0b5d075620cffa74b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0848d89e9f94be04f17beeee75807d7fd11102737e6483ee674f2cf3ae28f213
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-must-gather-rhel9@sha256:e3978aecaafe2678355e21a7303f8620f53d8b774f6592f10527c15bae957224
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-operator-bundle@sha256:f596dc9323da89f5e45e71192f0fa698b7bb29b8205eaa0fc1659d68fa7401f4
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-proxyv2-rhel9@sha256:cbd6bc47341ab8618609f89d063552e17232541c727429855c01deab73e4d06c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-rhel9-operator@sha256:f5dfe495ba92ecb880485b66cfafbf6451f8142b8e0d5fd7f29db94171c51336
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-must-gather-rhel9@sha256:2bf3704ba8d5945973ccf6bd13418457e929836352acf0ea6a47976ffa246616
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-pilot-rhel9@sha256:376f64eab0ebeb06035983a60d1e7647c5d41354f31a49cb34f4deb7b6708e3e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-pilot-rhel9@sha256:ea9372fabe06cd8e65ea7b4567ce3c8fbddd9d673dc34a12743fd95c548059d1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-cni-rhel9@sha256:d0ab36246c556249b6d67346eb0c72ebd22483a6502caa0fc75112a8d327b053
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-cni-rhel9@sha256:f16cd8a29ddcbb3de77cbfcf7e1da78e42cc0c1c502132d477a01c52689cdf23
        version: 3.0.0-tp.2
      entries:
      - name: servicemeshoperator3.v3.0.0-tp.2
        version: 3.0.0-tp.2
      - name: servicemeshoperator3.v3.0.0-tp.1
        version: 3.0.0-tp.1
      name: candidates
    - currentCSV: servicemeshoperator3.v3.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
          createdAt: "2025-11-26T08:45:22Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        version: 3.2.1
      entries:
      - name: servicemeshoperator3.v3.2.1
        version: 3.2.1
      - name: servicemeshoperator3.v3.2.0
        version: 3.2.0
      - name: servicemeshoperator3.v3.1.4
        version: 3.1.4
      - name: servicemeshoperator3.v3.1.3
        version: 3.1.3
      - name: servicemeshoperator3.v3.1.2
        version: 3.1.2
      - name: servicemeshoperator3.v3.1.1
        version: 3.1.1
      - name: servicemeshoperator3.v3.1.0
        version: 3.1.0
      - name: servicemeshoperator3.v3.0.7
        version: 3.0.7
      - name: servicemeshoperator3.v3.0.6
        version: 3.0.6
      - name: servicemeshoperator3.v3.0.5
        version: 3.0.5
      - name: servicemeshoperator3.v3.0.4
        version: 3.0.4
      - name: servicemeshoperator3.v3.0.3
        version: 3.0.3
      - name: servicemeshoperator3.v3.0.2
        version: 3.0.2
      - name: servicemeshoperator3.v3.0.1
        version: 3.0.1
      - name: servicemeshoperator3.v3.0.0
        version: 3.0.0
      name: stable
    - currentCSV: servicemeshoperator3.v3.0.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.24.6"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.24.6"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:e9d8d0b3b0602ffc570843ce78e5445a4fb540b57a2d066460fe77f1ace57ebd
          createdAt: "2025-10-24T06:24:59Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:6cdd4499ffcf0843dc9cf68a15654a995514e3f97418e6aa06bc50271305dcac
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:e9d8d0b3b0602ffc570843ce78e5445a4fb540b57a2d066460fe77f1ace57ebd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        version: 3.0.7
      entries:
      - name: servicemeshoperator3.v3.0.7
        version: 3.0.7
      - name: servicemeshoperator3.v3.0.6
        version: 3.0.6
      - name: servicemeshoperator3.v3.0.5
        version: 3.0.5
      - name: servicemeshoperator3.v3.0.4
        version: 3.0.4
      - name: servicemeshoperator3.v3.0.3
        version: 3.0.3
      - name: servicemeshoperator3.v3.0.2
        version: 3.0.2
      - name: servicemeshoperator3.v3.0.1
        version: 3.0.1
      - name: servicemeshoperator3.v3.0.0
        version: 3.0.0
      name: stable-3.0
    - currentCSV: servicemeshoperator3.v3.1.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.26.6"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.26.6"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:a60cff87a152304bc961ce7af4cc3f650998652640ef8599c50aeae2a3c15391
          createdAt: "2025-10-24T11:25:36Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:459720a287d839ad70886879d8089d821a2f98dcc32a5db5732ecf18a05b3fa6
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:a60cff87a152304bc961ce7af4cc3f650998652640ef8599c50aeae2a3c15391
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        version: 3.1.4
      entries:
      - name: servicemeshoperator3.v3.1.4
        version: 3.1.4
      - name: servicemeshoperator3.v3.1.3
        version: 3.1.3
      - name: servicemeshoperator3.v3.1.2
        version: 3.1.2
      - name: servicemeshoperator3.v3.1.1
        version: 3.1.1
      - name: servicemeshoperator3.v3.1.0
        version: 3.1.0
      name: stable-3.1
    - currentCSV: servicemeshoperator3.v3.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
          createdAt: "2025-11-26T08:45:22Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        version: 3.2.1
      entries:
      - name: servicemeshoperator3.v3.2.1
        version: 3.2.1
      - name: servicemeshoperator3.v3.2.0
        version: 3.2.0
      name: stable-3.2
    defaultChannel: stable
    packageName: servicemeshoperator3
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Thales Group
      provider-url: https://cpl.thalesgroup.com/data-protection
    name: cte-k8s-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cte-k8s-operator.v1.7.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cte-k8s-operator.csi.cte.cpl.thalesgroup.com/v1",
                "kind": "CteK8sOperator",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cte-k8s-operator"
                  },
                  "name": "ctek8soperator-sample"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-25T21:01:30Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CteK8sOperator is the Schema for the ctek8soperators API
            displayName: Cte K8s Operator
            kind: CteK8sOperator
            name: ctek8soperators.cte-k8s-operator.csi.cte.cpl.thalesgroup.com
            version: v1
        description: |-
          # Kubernetes Operator to deploy CTE for Kubernetes on an OCP/K8s Cluster.
          This Operator deploys CTE for Kubernetes on the OCP/K8s Cluster.

          ## About this operator

          It is a GO based operator that manages the deployment, upgrade and
          deletion of the CTE for Kubernetes on all the nodes of the Cluster on
          which it is installed.

          ## Prerequisites

          Applicable only on OCP cluster
            For an OCP cluster the operator requires a SecurityContextConstraints (SCC)
            to be created before installation. To create the SecurityContextConstraints
            you can use a definition provided by the deployment scripts at
            https://github.com/thalescpl-io/ciphertrust-transparent-encryption-kubernetes

            Look for cte-csi-scc.yaml file in deploy/kubernetes/X.Y.Z/operator-deploy/
            Where X.Y.Z is the last released version of the deploy scripts.

          For more information refer to the guide at:
            https://thalesdocs.com/ctp/cte-con/cte-k8s/latest/cte-4-k8s/index.html
        displayName: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Encryption
        - Data Protection
        - Security
        - Kubernetes
        - Openshift
        links:
        - name: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          url: https://cpl.thalesgroup.com/encryption/ciphertrust-transparent-data-encryption-kubernetes
        maintainers:
        - email: technical.support.DIS@thalesgroup.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Thales Group
          url: https://cpl.thalesgroup.com/data-protection
        relatedImages:
        - registry.connect.redhat.com/thalescpl/ciphertrust-transparent-encryption-kubernetes-operator-bundle@sha256:129f3a9f1fe96aafbfa68eb1524bf912ebc4167ed276e87a88fad30b60a5b3fc
        - docker.io/thalesciphertrust/ciphertrust-transparent-encryption-kubernetes-operator@sha256:d30ff765703db69846f0302cb06aa5315641796d56342a9be4549fb171414871
        version: 1.7.8
      entries:
      - name: cte-k8s-operator.v1.7.8
        version: 1.7.8
      name: candidate
    - currentCSV: cte-k8s-operator.v1.7.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cte-k8s-operator.csi.cte.cpl.thalesgroup.com/v1",
                "kind": "CteK8sOperator",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cte-k8s-operator"
                  },
                  "name": "ctek8soperator-sample"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-25T21:01:30Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CteK8sOperator is the Schema for the ctek8soperators API
            displayName: Cte K8s Operator
            kind: CteK8sOperator
            name: ctek8soperators.cte-k8s-operator.csi.cte.cpl.thalesgroup.com
            version: v1
        description: |-
          # Kubernetes Operator to deploy CTE for Kubernetes on an OCP/K8s Cluster.
          This Operator deploys CTE for Kubernetes on the OCP/K8s Cluster.

          ## About this operator

          It is a GO based operator that manages the deployment, upgrade and
          deletion of the CTE for Kubernetes on all the nodes of the Cluster on
          which it is installed.

          ## Prerequisites

          Applicable only on OCP cluster
            For an OCP cluster the operator requires a SecurityContextConstraints (SCC)
            to be created before installation. To create the SecurityContextConstraints
            you can use a definition provided by the deployment scripts at
            https://github.com/thalescpl-io/ciphertrust-transparent-encryption-kubernetes

            Look for cte-csi-scc.yaml file in deploy/kubernetes/X.Y.Z/operator-deploy/
            Where X.Y.Z is the last released version of the deploy scripts.

          For more information refer to the guide at:
            https://thalesdocs.com/ctp/cte-con/cte-k8s/latest/cte-4-k8s/index.html
        displayName: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Encryption
        - Data Protection
        - Security
        - Kubernetes
        - Openshift
        links:
        - name: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          url: https://cpl.thalesgroup.com/encryption/ciphertrust-transparent-data-encryption-kubernetes
        maintainers:
        - email: technical.support.DIS@thalesgroup.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Thales Group
          url: https://cpl.thalesgroup.com/data-protection
        relatedImages:
        - docker.io/thalesciphertrust/ciphertrust-transparent-encryption-kubernetes-operator@sha256:d30ff765703db69846f0302cb06aa5315641796d56342a9be4549fb171414871
        - registry.connect.redhat.com/thalescpl/ciphertrust-transparent-encryption-kubernetes-operator-bundle@sha256:129f3a9f1fe96aafbfa68eb1524bf912ebc4167ed276e87a88fad30b60a5b3fc
        version: 1.7.8
      entries:
      - name: cte-k8s-operator.v1.7.8
        version: 1.7.8
      name: stable
    defaultChannel: stable
    packageName: cte-k8s-operator
    provider:
      name: Thales Group
      url: https://cpl.thalesgroup.com/data-protection
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ssm-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ssm-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ssm-controller:1.2.0
          createdAt: "2025-11-29T04:01:51Z"
          description: AWS SSM controller is a service controller for managing SSM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Document represents the state of an AWS ssm Document resource.
            displayName: Document
            kind: Document
            name: documents.ssm.services.k8s.aws
            version: v1alpha1
          - description: PatchBaseline represents the state of an AWS ssm PatchBaseline
              resource.
            displayName: PatchBaseline
            kind: PatchBaseline
            name: patchbaselines.ssm.services.k8s.aws
            version: v1alpha1
          - description: ResourceDataSync represents the state of an AWS ssm ResourceDataSync
              resource.
            displayName: ResourceDataSync
            kind: ResourceDataSync
            name: resourcedatasyncs.ssm.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon SSM resources in AWS from within your Kubernetes cluster.

          **About Amazon SSM**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon SSM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ssm
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SSM Developer Resources
          url: https://aws.amazon.com/SSM/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ssm maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ssm-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ssm-controller@sha256:0566dc14268fb3a49628364838fe8fd3548facbf97b1fea3dc23e8282ba9400f
        version: 1.2.0
      entries:
      - name: ack-ssm-controller.v1.2.0
        version: 1.2.0
      - name: ack-ssm-controller.v1.1.2
        version: 1.1.2
      - name: ack-ssm-controller.v1.1.1
        version: 1.1.1
      - name: ack-ssm-controller.v1.1.0
        version: 1.1.0
      - name: ack-ssm-controller.v1.0.12
        version: 1.0.12
      - name: ack-ssm-controller.v1.0.10
        version: 1.0.10
      - name: ack-ssm-controller.v1.0.9
        version: 1.0.9
      - name: ack-ssm-controller.v1.0.8
        version: 1.0.8
      - name: ack-ssm-controller.v1.0.7
        version: 1.0.7
      - name: ack-ssm-controller.v1.0.6
        version: 1.0.6
      - name: ack-ssm-controller.v1.0.5
        version: 1.0.5
      - name: ack-ssm-controller.v1.0.4
        version: 1.0.4
      - name: ack-ssm-controller.v1.0.3
        version: 1.0.3
      - name: ack-ssm-controller.v1.0.2
        version: 1.0.2
      - name: ack-ssm-controller.v1.0.1
        version: 1.0.1
      - name: ack-ssm-controller.v1.0.0
        version: 1.0.0
      - name: ack-ssm-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-ssm-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: istio-workspace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: istio-workspace-operator.v0.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "workspace.maistra.io/v1alpha1",
                "kind": "Session",
                "metadata": {
                  "name": "session-sample"
                },
                "spec": {
                  "ref": [
                    {
                      "args": {
                        "image": "quay.io/maistra-dev/istio-workspace-test:latest"
                      },
                      "name": "ratings-v1",
                      "strategy": "prepared-image"
                    }
                  ],
                  "route": {
                    "name": "x-workspace-route",
                    "type": "header",
                    "value": "feature-x"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: quay.io/maistra/istio-workspace:v0.5.3
          createdAt: "2022-11-16T13:50:35Z"
          description: Safely develop and test on any Kubernetes cluster without affecting
            others.
          operators.operatorframework.io/builder: operator-sdk-v1.22.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/maistra/istio-workspace
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Session controls the creation of the specialized hidden routes.
            displayName: Session
            kind: Session
            name: sessions.workspace.maistra.io
            version: v1alpha1
        description: "Istio Workspace enables developers to:\n\n * run one or more
          services locally during development but make it appear like it would be
          developed in the actual cluster\n   * this way you can use your favourite
          development tools\n   * have instant feedback loop\n   * don't make your
          machine overheating trying to run the whole cluster locally\n * safely preview
          incoming changes in pull requests without affecting regular users \n * have
          confidence in testing or troubleshooting your services directly in the cluster\n\nIstio
          Workspace supports testing on multi-user environment in an unobtrusive way.\nIt
          doesn’t really matter if it is QE cluster or actual production. We give
          you confidence that your changes won’t blow up the cluster, and your users
          won’t even notice a glitch.\n\nYou will need [Kubernetes](https://k8s.io)
          or [Openshift](https://openshift.com) cluster with  [Istio](https://istio.io/)
          installed. \n\nYou can read more about our vision on [Red Hat Developer’s
          blog](https://developers.redhat.com/blog/2020/07/14/developing-and-testing-on-production-with-kubernetes-and-istio-workspace/)
          or ...\n\n## See it in action!\n\n[![https://youtu.be/XTNVadUzMCc](https://img.youtube.com/vi/XTNVadUzMCc/hqdefault.jpg)](https://youtu.be/XTNVadUzMCc)\n\nWatch
          demo: [\"How to develop on production: An introduction to Istio-Workspaces\"](https://youtu.be/XTNVadUzMCc).\n\n##
          Documentation\n\nMore details can be found on our [documentation page](https://istio-workspace-docs.netlify.com/).\n"
        displayName: Istio Workspace
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - telepresence
        links:
        - name: Istio Workspace Documentation
          url: https://istio-workspace-docs.netlify.com/
        - name: How to install CLI tool
          url: https://github.com/maistra/istio-workspace#install-in-two-easy-steps
        maintainers:
        - email: aslak@redhat.com
          name: Aslak Knutsen
        - email: bartosz@redhat.com
          name: Bartosz Majsak
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/istio-workspace-operator@sha256:7a581f048aee64701b23f1a0e94d77f2e6932ee8229fd46b1635d8df6994e174
        - quay.io/maistra/istio-workspace:v0.5.3
        version: 0.5.3
      entries:
      - name: istio-workspace-operator.v0.5.3
        version: 0.5.3
      - name: istio-workspace-operator.v0.5.2
        version: 0.5.2
      - name: istio-workspace-operator.v0.5.1
        version: 0.5.1
      - name: istio-workspace-operator.v0.5.0
        version: 0.5.0
      - name: istio-workspace-operator.v0.4.0
        version: 0.4.0
      - name: istio-workspace-operator.v0.3.0
        version: 0.3.0
      - name: istio-workspace-operator.v0.2.0
        version: 0.2.0
      - name: istio-workspace-operator.v0.1.0
        version: 0.1.0
      - name: istio-workspace-operator.v0.0.10
        version: 0.0.10
      - name: istio-workspace-operator.v0.0.9
        version: 0.0.9
      - name: istio-workspace-operator.v0.0.8
        version: 0.0.8
      - name: istio-workspace-operator.v0.0.7
        version: 0.0.7
      - name: istio-workspace-operator.v0.0.6
        version: 0.0.6
      name: alpha
    defaultChannel: alpha
    packageName: istio-workspace-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: resource-locker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: resource-locker-operator.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "ResourceLocker",
                "metadata": {
                  "name": "combined"
                },
                "spec": {
                  "patches": [
                    {
                      "id": "patch1",
                      "patchTemplate": "metadata:\n  annotations:\n    {{ (index . 0).metadata.name }}: {{ (index . 1).metadata.name }}\n",
                      "patchType": "application/strategic-merge-patch+json",
                      "sourceObjectRefs": [
                        {
                          "apiVersion": "v1",
                          "kind": "Namespace",
                          "name": "resource-locker-test"
                        },
                        {
                          "apiVersion": "v1",
                          "kind": "ServiceAccount",
                          "name": "default",
                          "namespace": "resource-locker-test"
                        }
                      ],
                      "targetObjectRef": {
                        "apiVersion": "v1",
                        "kind": "ServiceAccount",
                        "name": "test",
                        "namespace": "resource-locker-test"
                      }
                    },
                    {
                      "id": "patch2",
                      "patchTemplate": "metadata:\n  annotations:\n    {{ (index . 0) }}: {{ (index . 1) }}\n",
                      "patchType": "application/strategic-merge-patch+json",
                      "sourceObjectRefs": [
                        {
                          "apiVersion": "v1",
                          "fieldPath": "$.metadata.uid",
                          "kind": "Namespace",
                          "name": "resource-locker-test"
                        },
                        {
                          "apiVersion": "v1",
                          "fieldPath": "$.metadata.uid",
                          "kind": "ServiceAccount",
                          "name": "default",
                          "namespace": "resource-locker-test"
                        }
                      ],
                      "targetObjectRef": {
                        "apiVersion": "v1",
                        "kind": "ServiceAccount",
                        "name": "test",
                        "namespace": "resource-locker-test"
                      }
                    }
                  ],
                  "resources": [
                    {
                      "object": {
                        "apiVersion": "networking.k8s.io/v1",
                        "kind": "NetworkPolicy",
                        "metadata": {
                          "name": "allow-from-same-namespace",
                          "namespace": "resource-locker-test"
                        },
                        "spec": {
                          "ingress": [
                            {
                              "from": [
                                {
                                  "podSelector": {}
                                }
                              ]
                            }
                          ],
                          "podSelector": {}
                        }
                      }
                    },
                    {
                      "object": {
                        "apiVersion": "networking.k8s.io/v1",
                        "kind": "NetworkPolicy",
                        "metadata": {
                          "name": "allow-from-default-namespace",
                          "namespace": "resource-locker-test"
                        },
                        "spec": {
                          "ingress": [
                            {
                              "from": [
                                {
                                  "namespaceSelector": {
                                    "matchLabels": {
                                      "name": "default"
                                    }
                                  }
                                }
                              ]
                            }
                          ],
                          "podSelector": {}
                        }
                      }
                    }
                  ],
                  "serviceAccountRef": {
                    "name": "default"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/resource-locker-operator@sha256:2176db02f561c24012c5179495c89c3819500dff21e89a62052d465eb3314b44
          createdAt: "2021-11-30T19:38:40Z"
          description: This operator provides a facility to lock resources and / or
            patches into the state described by its custom resource preventing any
            drifts.
          operatorframework.io/suggested-namespace: resource-locker-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/resource-locker-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ResourceLocker Represents the intetion to create and enforce
              a set of resources and/or patches.
            displayName: Resource Locker
            kind: ResourceLocker
            name: resourcelockers.redhatcop.redhat.io
            version: v1alpha1
        description: |
          The resource locker operator allows you to specify a set of configurations that the operator will "keep in place" (lock) preventing any drifts.
          Two types of configurations may be specified:
          * Resources. This will instruct the operator to create and enforce the specified resource. In this case the operator "owns" the created resources.
          * Patches to resources. This will instruct the operator to patch- and enforce the change on- a pre-existing resource. In this case the operator does not "own" the resource.
          Locked resources are defined with the `ResourceLocker` CRD. Here is the high-level structure of this CRD:
          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: ResourceLocker
          metadata:
            name: test-simple-resource
          spec:
            resources:
            - object:
                apiVersion: v1
            ...
            patches:
            - targetObjectRef:
              ...
              patchTemplate: |
                metadata:
                  annotations:
                    ciao: hello
            ...
            serviceAccountRef:
              name: default
          ```
          It contains:
          * `resources`: representing an array of resources
          * `patches`: representing an array of patches
          * `serviceAccountRef`: a reference to a service account defined in the same namespace as the ResourceLocker CR, that will be used to create the resources and apply the patches. If not specified the service account will be defaulted to: `default`
          For each ResourceLocker a manager is dynamically allocated. For each resource and patch a controller with the needed watches is created and associated with the previously created manager.
          **Note**: creating a `ResourceLocker` CR will not work without due preparation (of the service account in particular). Follow these [instructions](https://github.com/redhat-cop/resource-locker-operator/blob/master/EXAMPLES.md) for a step by step walkthrough of the needed prerequisites to make this operator work.
        displayName: Resource Locker Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - resource_management
        - enforcing
        - patches
        - gitops
        links:
        - name: Resource Locker Operator
          url: https://github.com/redhat-cop/resource-locker-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/resource-locker-operator:latest
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/resource-locker-operator@sha256:9cc08639be2af4b72a9b816420d87dfa290a168fb83edc947a04b3e06cdb675b
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/resource-locker-operator@sha256:2176db02f561c24012c5179495c89c3819500dff21e89a62052d465eb3314b44
        version: 1.1.3
      entries:
      - name: resource-locker-operator.v1.1.3
        version: 1.1.3
      - name: resource-locker-operator.v1.1.2
        version: 1.1.2
      - name: resource-locker-operator.v1.1.1
        version: 1.1.1
      - name: resource-locker-operator.v1.1.0
        version: 1.1.0
      - name: resource-locker-operator.v1.0.9
        version: 1.0.9
      name: alpha
    defaultChannel: alpha
    packageName: resource-locker-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: SAP LinuxLab - Red Hat
      provider-url: https://github.com/sap-linuxlab
    name: sap-data-intelligence-observer-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: observer-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sdi.sap-redhat.io/v1alpha1",
                "kind": "SDIObserver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "observer-operator",
                    "app.kubernetes.io/instance": "sdiobserver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sdiobserver",
                    "app.kubernetes.io/part-of": "observer-operator"
                  },
                  "name": "sdiobserver-sample"
                },
                "spec": {
                  "manageSDINodeConfig": true,
                  "sdiNamespace": "sdi",
                  "sdiVSystemRoute": {
                    "managementState": "Managed"
                  },
                  "slcbNamespace": "sap-slcbridge",
                  "slcbRoute": {
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: quay.io/redhat-sap-cop/sdi-observer-operator:0.1.5
          description: Configure and enable SAP Data Intelligence to run on OpenShift
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SDIObserver is the Schema for the sdiobservers API
            displayName: SDIObserver
            kind: SDIObserver
            name: sdiobservers.sdi.sap-redhat.io
            version: v1alpha1
        description: Operator for monitoring SAP Data Intelligence (SDI) namespace
          and modifying objects in there that enable running of SDI on top of OpenShift.
          The observer shall be run in a dedicated namespace. It must be deployed
          before the SDI installation is started. This is the prerequisite for the
          successful installation of the SDI on OpenShift. Please refer to https://access.redhat.com/articles/5100521
          for detailed information.
        displayName: SAP Data Intelligence 3 - Observer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sdi
        - sap data intelligence
        links:
        - name: SAP Data Intelligence 3 - Observer Operator
          url: https://github.com/redhat-sap/sap-data-intelligence/tree/master/observer-operator
        maintainers:
        - email: mjiao@redhat.com
          name: Manjun Jiao
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: SAP LinuxLab - Red Hat
          url: https://github.com/sap-linuxlab
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/openshift-community-operators/sap-data-intelligence-observer-operator@sha256:5217360266f62fc8ba087fbc730074c14aacf62dbd124fdc3aa46650d51a243b
        - quay.io/redhat-sap-cop/sdi-observer-operator:0.1.5
        version: 0.0.3
      entries:
      - name: observer-operator.v0.0.3
        version: 0.0.3
      name: alpha
    - currentCSV: observer-operator.v1.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sdi.sap-redhat.io/v1alpha1",
                "kind": "SDIObserver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/part-of": "observer-operator"
                  },
                  "name": "sdiobserver-sample",
                  "namespace": "sdi-observer"
                },
                "spec": {
                  "manageSDINodeConfig": true,
                  "sdiNamespace": "sdi",
                  "sdiVSystemRoute": {
                    "managementState": "Managed"
                  },
                  "slcbNamespace": "sap-slcbridge",
                  "slcbRoute": {
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: quay.io/redhat-sap-cop/sdi-observer-operator:0.1.32
          createdAt: "20240726"
          description: Configure and enable SAP Data Intelligence 3 to run on OpenShift
            4
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/mjiao/sap-data-intelligence/tree/master/observer-operator
          support: RedHat-SAPLinuxLab
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SDIObserver is the Schema for the sdiobservers API
            displayName: SDIObserver
            kind: SDIObserver
            name: sdiobservers.sdi.sap-redhat.io
            version: v1alpha1
        description: Operator for monitoring SAP Data Intelligence (SDI) namespace
          and modifying objects in there that enable running of SDI on top of OpenShift.
          It must be deployed before the SDI installation is started. This is the
          prerequisite for the successful installation of the SDI on OpenShift. Please
          refer to https://access.redhat.com/articles/7042265#ocp-install-sdi-observer-operator
          for detailed information.
        displayName: SAP Data Intelligence 3 - Observer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sdi
        - sap data intelligence
        links:
        - name: SAP Data Intelligence 3 - Observer Operator
          url: https://github.com/redhat-sap/sap-data-intelligence/tree/master/observer-operator
        maintainers:
        - email: mjiao@redhat.com
          name: Manjun Jiao
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: SAP LinuxLab - Red Hat
          url: https://github.com/sap-linuxlab
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/community-operator-pipeline-prod/sap-data-intelligence-observer-operator@sha256:79aa33cb7e4b570fc9c962fc6bd59708c7e28e81e2b188608780fa085db91442
        - quay.io/redhat-sap-cop/sdi-observer-operator:0.1.32
        version: 1.0.9
      entries:
      - name: observer-operator.v1.0.9
        version: 1.0.9
      - name: observer-operator.v1.0.8
        version: 1.0.8
      - name: observer-operator.v1.0.7
        version: 1.0.7
      - name: observer-operator.v1.0.6
        version: 1.0.6
      - name: observer-operator.v1.0.5
        version: 1.0.5
      - name: observer-operator.v1.0.4
        version: 1.0.4
      - name: observer-operator.v1.0.3
        version: 1.0.3
      - name: observer-operator.v1.0.2
        version: 1.0.2
      - name: observer-operator.v1.0.1
        version: 1.0.1
      - name: observer-operator.v0.0.3
        version: 0.0.3
      name: stable
    defaultChannel: stable
    packageName: sap-data-intelligence-observer-operator
    provider:
      name: SAP LinuxLab - Red Hat
      url: https://github.com/sap-linuxlab
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-pipelines-operator-rh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-pipelines-operator-rh.v1.20.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    },
                    {
                      "name": "legacyPipelineRbac",
                      "value": "true"
                    },
                    {
                      "name": "createCABundleConfigMaps",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPruner",
                "metadata": {
                  "name": "pruner"
                },
                "spec": {
                  "disabled": true,
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.19.0 <1.20.2'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev","tektonpruners.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pruner
            displayName: Tekton Pruner
            kind: TektonPruner
            name: tektonpruners.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v1.3.2
          - Tekton Triggers: v0.33.0
          - Pipelines as Code: v0.37.4
          - Tekton Chains: v0.25.1
          - Tekton Hub (tech-preview): v1.22.7
          - Tekton Results (tech-preview): v0.16.0
          - Manual Approval Gate (tech-preview): v0.6.0
          - Tekton Pruner (tech-preview): v0.2.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.20/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:cbff2c3468f239276802e0a3a98301386ae7a98b183c4ec5b83f4b30ccde56cf
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:a6da589eb9c40c62e06c64f3d34578053328bef388325e8927872cd75c4ebe29
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:d941644bf6672ce0e6151f6ae7f775ba173795baf4a79eb8bba1d2b67ea359d5
        - registry.redhat.io/ubi9/openjdk-17@sha256:555c8bcd2596637befd1a6da4aa949c5a2640cf66e09c2dfb932afe37e39095e
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:0e9d28f1ef4f3348349489bf813c20e249a10d2735c409dccf8067e082ef0b4d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:cba1718306397fc60e1d6d468c92ea133188229f57a76f9b00eb8edd22cec5c3
        version: 1.20.2
      entries:
      - name: openshift-pipelines-operator-rh.v1.20.2
        version: 1.20.2
      - name: openshift-pipelines-operator-rh.v1.20.1
        version: 1.20.1
      - name: openshift-pipelines-operator-rh.v1.20.0
        version: 1.20.0
      - name: openshift-pipelines-operator-rh.v1.19.3
        version: 1.19.3
      - name: openshift-pipelines-operator-rh.v1.19.2
        version: 1.19.2
      - name: openshift-pipelines-operator-rh.v1.19.1
        version: 1.19.1
      - name: openshift-pipelines-operator-rh.v1.19.0
        version: 1.19.0
      - name: openshift-pipelines-operator-rh.v1.18.1
        version: 1.18.1
      - name: openshift-pipelines-operator-rh.v1.18.0
        version: 1.18.0
      - name: openshift-pipelines-operator-rh.v1.17.1
        version: 1.17.1
      - name: openshift-pipelines-operator-rh.v1.17.0
        version: 1.17.0
      - name: openshift-pipelines-operator-rh.v1.16.0
        version: 1.16.0
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: latest
    - currentCSV: openshift-pipelines-operator-rh.v1.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "clusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "communityClusterTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "db_user": "result",
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.13.0 <1.14.5'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              ClusterTasks, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.56.4
          - Tekton Triggers: v0.26.2
          - Pipelines as Code: v0.24.6
          - Tekton Chains: v0.20.1
          - Tekton Hub (tech-preview): v1.16.0
          - Tekton Results (tech-preview): v0.9.2

          ## Getting Started
          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/container-platform/4.15/cicd/pipelines/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)
          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:8709d35b571c163ed6f3e24b6e653e7dce8ee80f0440795e50e69f0ecfadf304
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:9d1436c1569dfb8dcab5c0ed2d675fb4f8024fb3ef85707393d1091cb5203749
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:0c9d398a73708b5877467547ac6fb1e9ccdb65159c454d31628e93a59da47f3c
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:3cfa3e3ad23f04e75417c2c0fd88c6b0f2b69361bc6947cbdffc594ecbee6d28
        - registry.redhat.io/rhel8/postgresql-13@sha256:3903d562425dd564986123280dc076548fb3d24c74138dcd857652f53052e0a7
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:38944f69b37bedb05903dc14c58415dba21873d2dd9a0fd2084cbf7afd4d5fde
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:8f0704328fef0e6031088290fe47e1f7625c4825ebd2e4edd9546279f87c5fb3
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:a69dc4520666b54d621f1aa8098c1457b2d5d2db125d612ad028ddea1a4e53fb
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:cf566538843704d03a05142639d58e8cb074aaf4bcdd03c0585574c3bc960496
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:21214c77e4a525e6eb0a8bd0e77bb7ede120ec2030dd198fe00ff1cd79a58239
        - registry.redhat.io/rhel8/skopeo@sha256:e297b84ba6f1d5eb2c37e2c3b31c9a9a4c39f9590e7d7c32388165245bde4835
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e53cec5cde1f23ab17082e3326e3328468dba3ec6c0462f06d030e0b1dfbd8aa
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:9f26e5a8d063f791d355481b54f02f4394e4092c20606e5bfcc604c669b995ec
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:bba6ba57778ecf3f5421a2eed5fa0d1192a53e5640413ffa83e6553296db13ea
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:e72a7f6fb660ad48e275a70cd43c085df4b87405e5e8c85d8665b421551c4d71
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:ffcf1b0e3215b8e2525be0836d7c727e639b64900954a804ab2a58f9bc747943
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:bf94a5e27a3a662a4a35ddbca377e4c311b8bda45748d7c4cb5549ac46d4f4a0
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a52bd29991a8a54853c938725162ee832f95f053b149b657bc24358f9aa0a1f4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:34a3c32c391ff5f810f0c84ff3ff5a729c1a12245f4edc66b4b22bbf30ab1600
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:a180db14ad8840a766a3cfec7faf94ef909a079276be904b4d1064f8aa8c0ae4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:d60baacc52945bb442bb8b78fe8848f4a4f6e7e9a2818062631d174db5f31c67
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:bd524c790588652e11fe8ba07ea8df0a2d483840c9a84fb35f3dd3e8157233a5
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:2077cdcb34dcd57972f71b403cad02ea715e19a7096e95dfac228168e49acb15
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:09f162c742dce25deac02bdb5395a7fb714f171f924471c96f24680f95ddc975
        - registry.redhat.io/ubi8/ubi-minimal@sha256:6825946f10e8c81586fa7815c4f06016af05cfc231d921ec9699402a6655d201
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:f3467d9f19c40b5c70659f0d22750e603dd7cd11cdcc0b81310a5d2abfbffb2e
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:20195b44af8e0b2238148003aacb2b278a9c3468893b3967da45e7ae1c3b2e9b
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:7a460bc5609afb2865e20f04b5c0e86ccba3c9a31a09ac14d799556d4b816356
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:f7b19ce26be742c4aaa458d37bc5ad373b5b29b20aaa7d308349687d3cbd8838
        version: 1.14.5
      entries:
      - name: openshift-pipelines-operator-rh.v1.14.5
        version: 1.14.5
      - name: openshift-pipelines-operator-rh.v1.14.4
        version: 1.14.4
      - name: openshift-pipelines-operator-rh.v1.14.3
        version: 1.14.3
      name: pipelines-1.14
    - currentCSV: openshift-pipelines-operator-rh.v1.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "clusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "communityClusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "db_user": "result",
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          createdAt: "2024-10-21T06:27:28Z"
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.14.0 <1.15.2'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              ClusterTasks, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.59.4
          - Tekton Triggers: v0.27.0
          - Pipelines as Code: v0.27.2
          - Tekton Chains: v0.20.1
          - Tekton Hub (tech-preview): v1.17.0
          - Tekton Results (tech-preview): v0.10.0
          - Manual Approval Gate (tech-preview): v0.2.2

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.15/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:1bc3273f138cd3a48610df28c87d05fda126d8cc29d2780a0c4738ea9bd3e85d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:8723ee8cf1f41a85fdfe2699b014df105db50be7c995371dafea698ade65c91c
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:c45a22f5660fe2228eb55d50f061fca7854e52af7c6600f62f8bcae93c15edb1
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:d92d48d42e42082a29d61a0f8b8ba7dcfd5e8ef0a8f66ded0bedce24fc81be33
        - registry.redhat.io/rhel8/buildah@sha256:aac6629389db17e99894c5bee0da01d4c8065d11d8c6f6e1602f9484290baa70
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:e73c1fbaa426e3fc8acda26a38abd1d25de1f933893479269375af40da53dc5f
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:46a680ca7416fc85ecc2d5c7fff84a45b493d02f10c087d3088992e6475f0ee9
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:4ccbc6bb8fadc5ffba0ff8b0206031b51db1c4acd7c0d8bbd050bc73975d4a2e
        - registry.redhat.io/rhel8/skopeo@sha256:29465586e92ed04d2878dcdeda2d508c7e8e7539762e10296b52d631929960aa
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:3e80a493aac65370228ff32643e0fb8418f6fb576934e804fa1c65b38cc3d203
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:fcf8b863aa41a702afef381a087f4daff7dcad1e34b03d2c0b0192bd5365cb71
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:14f4e749cdc026dfb19a53748a4eb64b875d7dc7626fc0b30edef364f3dd612c
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:962780950d1ef7ebbf285ee7fc7c2d8fc9af1b9cbec6c29dffecc133c8933afd
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:c2193380a48239c024d9dfdbeb45cf2c7f462ecb8ce23fa53c5fdfc162bdab58
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:b3642afe8e487884ee62dd6f0d22b84627552afeaa61a3f56eada858795f1d5b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:8a593c1144709c9aeffbeb68d0b4b08368f528e7bb6f595884b2474bcfbcafcd
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:98bf4813124dc9ada33da9530678e239c7953a1302a6cf9dee2277c276fb5758
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:91c836b13d3b9d4dafd4198148172f3f42122f9b38bb8be53c26f5b3ed9cf045
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:e3a11aee5518641ad453ce310b159c52d827f443f99eb61a4f5427699c1ab16a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:9b6bd5c8a5da471bb05b4bda7a4ae3a86b9b1d9128971aa6ce6f4874bb6dfa0d
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:f6232daffac97d841801ca3b356383ae73dd3f74ca6d635475283865737b7862
        - registry.redhat.io/ubi8/openjdk-17@sha256:e8cc2e476282b75d89c73057bfa713db22d72bdb2808d62d981a84c33beb2575
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/ubi8/ubi-minimal@sha256:f729a7f5685ea823e87ffd68aff988f2b8ff8d52126ade4e6de7c68088f28ebd
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:fbf4e6f210ca31b8864f84731b5f5554fffc404d172c0207fb3d5c93b09c6c13
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:ed20e74c11ce0ca33bd832bf29d6311985affd67bda05f8cee045d8732d235f8
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:2f76b11f048e51d0e33f997c5fbe0f9bf4096a4a9cd97d5d6d8084fc10722c03
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:b37a8c805b43eef99b2e7df017622965eca79f0f8f4b1f05917fc2313dbdf40d
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:017455cc1c5ceaaa1034f197d0a98645aff6d83fc71a4a5cb9961c3f283dc239
        - registry.redhat.io/rhel8/postgresql-13@sha256:a92a579f1aef66ac188d24fd489c456a1a3e311d95dcce652da6b81e28fbf725
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:3445ab65ae506460e44f304df03c249ce7283c5fb7cc2d75b660d43cccab70a8
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:702899060437993a77a038c36284b99358caea038c44ca5a94f892233bf85b99
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:f7fe262df4d73aa598d63ef4d463bbe84009e784d0bd2801de1131e6ee0f3ca7
        version: 1.15.2
      entries:
      - name: openshift-pipelines-operator-rh.v1.15.2
        version: 1.15.2
      - name: openshift-pipelines-operator-rh.v1.15.1
        version: 1.15.1
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: pipelines-1.15
    - currentCSV: openshift-pipelines-operator-rh.v1.16.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "clusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "communityClusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.16.0 <1.16.3'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              ClusterTasks, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.62.8
          - Tekton Triggers: v0.29.2
          - Pipelines as Code: v0.28.2
          - Tekton Chains: v0.22.3
          - Tekton Hub (tech-preview): v1.18.1
          - Tekton Results (tech-preview): v0.12.3
          - Manual Approval Gate (tech-preview): v0.3.1

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.16/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:a5a7b2be50f211d4d9d555b2a2e2302096c139ff5011d984cc386f1530007f16
        - registry.redhat.io/ubi8/openjdk-17@sha256:632e78989471859ca4ed1148b951a911f7e3b6e6516482be20967c4171612c55
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:de0d59029c02e5e9e6d607375b9b0ab573807f6531128f13d2579067767e8a3a
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:a1dfff15c9eed4dbefb484c76383073287de6f5429c878254d374a56ec7099ce
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:42ab9dedc88f3892e0712e7868cd21fb62e955f442aad6e837638fd38dd916f0
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:fc935150749190a1a978b7b59769cfa2a9e50577064959ba619d601057bd3355
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:945c1675422507e67eca06f246aca9e42aebcb2c874f74a284b5e5037f073082
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:a3dc7856ede01459cf74c9d17687c0c0ac5a404a6891266b12e19373218d728e
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:c2ca6ed42b7d7dc5d06be481e0f3b5da6c9219999a6f81401d434c0d1cbd9bdb
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:9a230bc21f8ef9ad37398922498ace9e6b13f21adcde2b00f418543919a9fa11
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:783174ac82d0d823f886d5fd1d89baf8cf467c13d651ee689a90a2c1c84c54b8
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:ea97b4d3d0882e9a3f5a98c6af3c147fa96de92e40710edf380b58442d5a623c
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:752baa0d02ea097bab1d014b623b8161ae67317cf2f56d264bcd5d0a270b096b
        - registry.redhat.io/rhel8/skopeo@sha256:1dcb4189c92da21ee58b3ca5433615e0208194c8412f7f1fb45fa491179aaf9b
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a27f43b86d2bc10c60de233be4e223b549d11c3aa7de390e485a79ac3fb4c533
        - registry.redhat.io/rhel8/postgresql-13@sha256:a308263f5d1071be8ac5c13fd84b40609988ca30ed56c22a8bc6769e107ce09b
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:8505951c0c40957eb65d551bc742e82642edf65385b6ca67bcf075036c42270d
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:914fe1fa1d806cd31a755905ffaf0803995f494fcd86690bc9b487dcd2a5b6ca
        - registry.redhat.io/ubi8/ubi-minimal@sha256:a47c89f02b39a98290f88204ed3d162845db0a0c464b319c2596cfd1e94b444e
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:aeff39254bc40092974781fe847a295a1c60f226f3f9ae2b7f2cc9259229c3e2
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:9e9c168af3b24b4f084fecf3bbf07f66bce0fc717641ccaaf07496b0a8498925
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:665f689731ca03f753c3c2dc4d4ae3f6bb001c498e54a6ef7b5d92ff00f2e0bd
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:6acc31f179b08658976cddcb9ef42f377edb29933d1d83a2ecebfd455bb68571
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:c701cca096953103ae21d8b0a4b76c39769f7458532fd868c798a5af2987439f
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:fba741840f20e079c720d4bc4a1df64d78785798300d0958709732299ea321e5
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:eedb4553f0be74f81910dbd1bebed0a4a07eaf4dc47ff0551a8ea52725127b6c
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:1658226f40a3f10d9f6c7776cba14a80644af4a56452d9617e85854daa671223
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:b6845e614c60e924061a52cdc091d0437a4dcd2d67d89158af2efdc930469b3a
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:4037f8eea26c4a4827d127f99a40992109a19efae30ce9d14a75283d69efe919
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:ab01a135f735a75b2b1efa184e1d205b60982c7a93ac48fb48b8eed66b54601a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a6c5e95bf9b42ed8d6e20139499daf70a633ab35eb76cca3eda9fd380f396602
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:23eb0e3b25d61d0f4fabea8dd954bd3956e3b7fec634e32d00c6a108e88330f9
        - registry.redhat.io/rhel8/buildah@sha256:5c7cd7c9a3d49e8905fc98693f6da605aeafae36bde5622dc78e12f31db3cd59
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:6b9964bd9be63c5e32d56cf7519c1b7eb65303e04bace7526873d4de73142eec
        version: 1.16.3
      entries:
      - name: openshift-pipelines-operator-rh.v1.16.3
        version: 1.16.3
      - name: openshift-pipelines-operator-rh.v1.16.2
        version: 1.16.2
      - name: openshift-pipelines-operator-rh.v1.16.1
        version: 1.16.1
      - name: openshift-pipelines-operator-rh.v1.16.0
        version: 1.16.0
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: pipelines-1.16
    - currentCSV: openshift-pipelines-operator-rh.v1.17.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.17.0 <1.17.1'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.4
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.65.6
          - Tekton Triggers: v0.30.1
          - Pipelines as Code: v0.29.1
          - Tekton Chains: v0.23.1
          - Tekton Hub (tech-preview): v1.19.2
          - Tekton Results (tech-preview): v0.13.3
          - Manual Approval Gate (tech-preview): v0.4.1

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.17/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:bcdd6f5a185d4969def2f806403fcd08527bfcc9f4ac0706b38bc358d1d64778
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:e784efdbe32daa310e7d3c7d4645613814573d12ee1dbbf74aad68cfa28761b5
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:cf4e3a23de646038e18a170f1edf49fa75bb72d49e9308511b680e24c795f1b0
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:56337f8ceb6f2cce84090f9fee17bdc9eb87dc4e61c36c6353014c0f99cf6273
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:7c22937c957b4f405bc014f4b8210f88c1e5acbc7fb59a29c9ee8837d4e0249b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:fa2bec9b5cb68fccf9dd331881ff225abf6704973ee3b283e2b5f294aafe3ac2
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:d854cdf80b03566e138d1530e0200e7d9a349524d37ce0244f8ba97f6af3156e
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a34bd66f9eb15cb09f7342d7561f23697039a8521fbe76d0f5104d19bed0a05a
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:58343c719d9c4d536424a55e280cc3f67c2bff6f0e0b1b56678f555d5c12f381
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:bf9071d0e144632a0acd90ddb4d2e1ecd435e1904e22233a1e1978cbe3a0206b
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:934563cc735bc0c3421ce444efdcb3bbb38c1a42a2abcf49294af30e7f5cab8e
        - registry.redhat.io/rhel8/skopeo@sha256:7fd65200b4847fc84fba0466519b87f915e28c0e9bc90d3022beecfebffd4af8
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:a4f1c5397fdedd9c820f51e0c09d6b464f2821740c86ab61772aed14cbb33ae8
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:37109f6de75dda750496f6668164d0dceaf9db5278e8c034708436f39de3276e
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:245e5f77eef067b48f7262de04485b4ab5f195736dc128d2c574f32bb05d3b2d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:d2b4ad8837421df74485f6752832de75e6543940d8c32fa18811d7878cf4e7b8
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:4cf8548faf20fa56d4ec698975bb90bed4474661170cc51b6892a144d0407497
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:b614e12432bac989bf789ac84ec0a2bf55f5cab9ecd863432c7d11e4e176def0
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e9352d062e933f23277e81333b42fd86ee767e9fd273c8d4528ede410b6d7afb
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:b44ee90952a1556b9db646795d415d3cec2d1de7e01356438b53ba44c09988db
        - registry.redhat.io/rhel8/postgresql-13@sha256:757d8dd6f243717d820846da7144a49913f28f223b74ec305b2215f54720f8a0
        - registry.redhat.io/ubi8/ubi-minimal@sha256:c12e67af6a7e15113d76bc72f10bef2045c026c71ec8b7124c8a075458188a83
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:0e4eb22c1f8e35014fac62a820895d6934312278d71a23bc8b4e1f5e200b6bd9
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:ac3087bf9f4d494518fb19e3d95fe0f942fefa69ff9f8b2a82fe2d59c2bbfbf4
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:de9337e8fa647d59727a7bc4477c613607975a493283037b5c81ec908da21902
        - registry.redhat.io/ubi8/openjdk-17@sha256:e5fc9e34382da41b10d4ea566639d31707493abff9e8de81f5accfd66876409e
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:8ba6e6deab70190b55ef2dda957a8df89e34bdb03f0671ff2f52c97c8da6081d
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:0e7798c138004f4e462a80939fb22b5065016dd15574224be6c8a58d9d5129dd
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:41ec6db921812fd1e80b05d51c224ddbce63bf0c57f02ccf07461d2202e97b90
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:aad40e98859844aedf0c719d7305baeb42c055872fb735c54c378edc014d6e31
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:108160e0298da3379d4277cfa865c073c28fc3b25f5ba3155e427db5b50ebb46
        - registry.redhat.io/rhel8/buildah@sha256:6d2dcb651ba680cf4ec74331f8349dec43d071d420625a1703370acc8d984e9e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:6fe1b45c6ee81bc55062ac6a6972accf5546c69f78db97f53c9b8975426c35eb
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:115c28f9574540ec42be6e3afb93ea62f4d6e54c7367e86e746ace712548130e
        version: 1.17.1
      entries:
      - name: openshift-pipelines-operator-rh.v1.17.1
        version: 1.17.1
      - name: openshift-pipelines-operator-rh.v1.17.0
        version: 1.17.0
      - name: openshift-pipelines-operator-rh.v1.16.0
        version: 1.16.0
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: pipelines-1.17
    - currentCSV: openshift-pipelines-operator-rh.v1.18.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.17.0 <1.18.1'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.68.1
          - Tekton Triggers: v0.31.0
          - Pipelines as Code: v0.33.2
          - Tekton Chains: v0.24.0
          - Tekton Hub (tech-preview): v1.20.1
          - Tekton Results: v0.14.0
          - Manual Approval Gate (tech-preview): v0.5.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.18/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:dbc462cb50385dec3a220b5d0caed0e0211c166182026f86e3c51a1351ba0de4
        - registry.redhat.io/rhel9/buildah@sha256:6886997da8c92214e99e3e8da47a0f08239172d2544b4edae058d5cb018effab
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3964c3248dfb1006ea9a46295baf7f8cfa71952d6b9863b52f87e8f3d7863b1e
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:409c14649d8e7007d4b72b6feffb71dabd26322bf2a7c77f5307f2546fdfe81b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:8ae0ca6411e4fcd5c0605344bc6930cf122ffd80e71199509d58423a8b41de1d
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:d055d2b35a663aef3e1aafdbed0b12957867c0670c946ebae66e9c44a768bda2
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:20e19c02efdecf94a7b16483047e5db81c50dc2a0aa59d4895067e6c7769efcc
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:e4d49cf6a2fb8b3585ecfe3b3da3e9de090fb99de3dee2da0601b1f6b071173c
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:c20ab6fa719506bca942669ea84b113335b05df3ed275257b88be234cade7c8d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c90a9c3a20f088241980b76986ba4f43b0243fd6d94a826fa7b5888e01c13093
        - registry.redhat.io/rhel9/postgresql-13@sha256:ecd5a5583db922c517c735797db3fca587c0ef0b410e7dd494ace2267d89cf05
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:86ea94b12e8923035e3e4f39b6a53b3ab32c5f77d7eea170aa9b34aecc6f8577
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:72901cf4e091fe5f6a577144fdffaea8570712e9887a8bd715d5ae5bc346ff1d
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:e6a7738cdb0e8aa9e1af381273b1c18ec1414b08a66fc851f6e11e5aa7a6706f
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:cbd89c531953a43b8055bda72f7696be80f57fd1d782567a91d82e0fbcb3d26d
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:80d441ec5d07c5059277a3a9173a35dfc0b8372d6e4d7823514131a94bae3fd7
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:1b57b64657eca0002145100bae262a19f02eb40068e07994df467e28a1618f90
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:eaad37453a5ebef51c28d4a068f56e9f394e710c72bb86342cd2189001420836
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:b9675b22bc8759903472c1eb0e03f90c75460f02799d894294c161641cad9414
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:2ba6782af0d7e5c4d623de31814f43f4f7c3c38d09b57705021957d334067f87
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:e2b4c3b505c4b5aa36f8a5e661389b0de4e799c74c2c7f16a065e5522b438e89
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:8fec8e7a8b3e5182c67104de4e3abe32593b682c4a8986d1e9ab835dafb95ff4
        - registry.redhat.io/ubi9/ubi-minimal@sha256:ac61c96b93894b9169221e87718733354dd3765dd4a62b275893c7ff0d876869
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:fcd5fd10de7334bd59a8da4997f91008ced95c6cde40d56d50f3b3e32c0f19e1
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:cd28c2c90dd340324b0d8709640cd7636f28286114b0023649b6e21be13e03c2
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d72842a7c6a1e50a68576c93f60047afec801cf83db64d7d3e34b25bf3c753ec
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:e27a30d471dda4983a5b8192709d283a9d082558f3caf31b30db2214e418b017
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:16d799503674641d4690822edc9c399c61429ccd31621d295eee4a4d1ef1c076
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:fa5c456fc91319c55fac9a011dc7bb32ef85db293c73d74436e903b76ceb4349
        - registry.redhat.io/rhel9/skopeo@sha256:d077e35100d6d7b3795f8e3594293dbf8b65c6bc18b909aa555fe56f048b356a
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:36a4c6a3273f2371ab5e679f1955221c286ea753e29e6ab8da7c983681a68f02
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:96f5e1922fb9d6dc17e271576dda9bd032bd6dcc04e7496fb15a2f6b5871cd67
        - registry.redhat.io/ubi9/openjdk-17@sha256:5d619e202695acf76a5f32c07ace6709f5ee5d3999bf977e1bf95ad34197f44a
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:b550a8bc2a87d07a5b22a3ec3fb83efd8eb26ca6e80d404f2e453cc9b8434da7
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:e63d956a0534f2e726301e00e877c4fe2f34ca4559e59d2df7567c04ded311a3
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:0a60ce46c05256c74f770901e0bb79ad89e88ba882b643c1ff7b2a1738463acc
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:6abc903c784bb455e1f2fde45a48afe775239668e1d0dbc1b3cc6afca3c0b477
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:8b4bf043e0fb237553503d63b129c432600bb4e65b2096b246b257b404b42be9
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:776d34b0ea2e35c11ad4050e6b40cf4b40c84dbe0d5f3e6ad669c494a210ea8e
        version: 1.18.1
      entries:
      - name: openshift-pipelines-operator-rh.v1.18.1
        version: 1.18.1
      - name: openshift-pipelines-operator-rh.v1.18.0
        version: 1.18.0
      name: pipelines-1.18
    - currentCSV: openshift-pipelines-operator-rh.v1.19.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPruner",
                "metadata": {
                  "name": "pruner"
                },
                "spec": {
                  "disabled": true,
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.18.0 <1.19.4'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev","tektonpruners.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pruner
            displayName: Tekton Pruner
            kind: TektonPruner
            name: tektonpruners.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v1.0.0
          - Tekton Triggers: v0.32.0
          - Pipelines as Code: v0.35.4
          - Tekton Chains: v0.25.1
          - Tekton Hub (tech-preview): v1.21.1
          - Tekton Results (tech-preview): v0.15.3
          - Manual Approval Gate (tech-preview): v0.6.0
          - Tekton Pruner (tech-preview): v0.1.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.19/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:408a3bf7a43068cbf2ef9af04faf3df161ac39e53446f47d9fcd083499a9e2a5
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:bb5bd9f505d0eb6ce6573b09898c2ad49f1d3602c36b380058b489d9383ba60d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:5bfbde45a37d8b16cf0ab0be8f636c35a1d9041d6c8f7f611fc24a551eb890eb
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:4f606f7cb607007573f1023408329bdbfbfd979dc6bb50ac4af0ae20a33bcbee
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:ddbab8d6b9d1239451bf695276c8ddfe00e78cbb9ff4fc6562a9a5a2924b6082
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:1fef4759b410625fc797a8ecd166c20ad09312abfccc1cb941e946cfdccd2da4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:49cb3cca3f9102384c96e93108d09969df22c3858b1933ecff9fbe1d41aed981
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:66588ef48047d6589b7c810398ca16032125174d7cd9eaf1d6ddebbbf82147b4
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:95816d1f338341800c6947491d31d6ad826e56e821ad3ada78718df9f2dcd103
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:67334d9a2a0bee4cfd62d3e3c26608df4f802adf8970981260e4051b4fb3d055
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:ae34ed4ead57a26e1f65dcf433908ad75c5bcc243fcb2fdc3b4c211171c40480
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:40a099a9073bcc2f8da442d8225be03c8636e456c548c93e1a8366677e845830
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:1141200c99c69bbfbce4f7994b7d8b9eca36f5cc395acdf866233b3cc35be61b
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:b49089d2f582a7a9b954a75a48c590849e79628305b37c43a0c5ff795019635b
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:a802bd8ea9104e77b6318bc3c05269c32c6435a696f62084da83f68b9426294a
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:41d669fbe8bb48481890fb9fb52de9d4cac98cb74e6a6b284d046a8d21b06e58
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:2d6640e6b91896ff455ab8e2246f166a3cdd9c53dfca00b3919f646f54a11f9f
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:84450e886c5ce68f4f594982fab6140faebef5774339226b0be8d7e70b963fcf
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:e1b99c7a287125dc265c536e5aecbe9eb4e9981ff030d28b9b127fb546a45944
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:aab3b001f60510c73cf475b2c218a7aa921cbca99b855d28862c42e83d610ab0
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3e2343b6121790f18b8d8868d8492af0b0541252f50e290f585f467c61660574
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:cc5265e2e163446554453d4f5db1cc733758b450c7550db7b7caf9ede474aeca
        - registry.redhat.io/ubi9/openjdk-17@sha256:cdbd64ba1b7826d09bc180fa19aa6fbc09ddb5bff5e02b7e1351353bbabebb78
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:38a58fd012558192cd779ff8ac2ef3f02b8e82e2a1bcbbb9d53822c9d8890afd
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:6a947bae0c64ffcf7c2f9d71b5f18d858e017ce6122b2499c555850fe7fe1fde
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:f151dda38d7fafe2d72e2cb064d074921c6b535543f29cfcf66405ba65e38ed5
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:6a18f8d771900aa480560d1809c789d5243c4f6d9087185c610d9b8834d78625
        - registry.redhat.io/ubi9/ubi-minimal@sha256:14f14e03d68f7fd5f2b18a13478b6b127c341b346c86b6e0b886ed2b7573b8e0
        - registry.redhat.io/rhel9/skopeo@sha256:993f799d58c48151ecae7a84e63860f6c0039e8e18efed5ad67e7752f4b7e408
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:a585790aa11f5152c8a55ef36f74f731a34b2eecccd3250e5ef3cec8ec398409
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:d21cc7e094aa46ba7f6ea717a3d7927da489024a46a6c1224c0b3c5834dcb7a6
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:655a73b61984fbafe9194629705f51ff149d43a768a5a1c103045582eba8f2ec
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:d49f6cfcd815f93d0f1fad8a569bc8e52ffd86ba909530e95fdee19b0a1ca784
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:7eaab4455c1e416e4e0ba5f3e0e60c5a46aea23a939968e15eb6a953680a5f2c
        - registry.redhat.io/rhel9/buildah@sha256:a6e04c061b8d261dba85d01dcb64d3f7dba8c0b9765e03f05ec79850a248d75a
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:a68bc519e86f1316bf2c536aab16ebfab329cb51b07cd02d3021bc8332c4c97c
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:cb5958fdc6661e23f9957d53877a6f401af5a2f64a1305ae21579048846f1f70
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:18bb4f4139d8b9f041ec5d38e5350d72290715f8ef235543365ca4b353bfa8c4
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:498238810108939ead8df1158c6ac892ad5f0bfad57fd2a893b5ce53853504d1
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:e74f92e066f47a3eab9467f2253c3b85bc34fa41e2443e033b5e3470849b0d16
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        version: 1.19.4
      entries:
      - name: openshift-pipelines-operator-rh.v1.19.4
        version: 1.19.4
      - name: openshift-pipelines-operator-rh.v1.19.3
        version: 1.19.3
      - name: openshift-pipelines-operator-rh.v1.19.2
        version: 1.19.2
      - name: openshift-pipelines-operator-rh.v1.19.1
        version: 1.19.1
      - name: openshift-pipelines-operator-rh.v1.19.0
        version: 1.19.0
      name: pipelines-1.19
    - currentCSV: openshift-pipelines-operator-rh.v1.20.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    },
                    {
                      "name": "legacyPipelineRbac",
                      "value": "true"
                    },
                    {
                      "name": "createCABundleConfigMaps",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPruner",
                "metadata": {
                  "name": "pruner"
                },
                "spec": {
                  "disabled": true,
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.19.0 <1.20.2'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev","tektonpruners.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pruner
            displayName: Tekton Pruner
            kind: TektonPruner
            name: tektonpruners.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v1.3.2
          - Tekton Triggers: v0.33.0
          - Pipelines as Code: v0.37.4
          - Tekton Chains: v0.25.1
          - Tekton Hub (tech-preview): v1.22.7
          - Tekton Results (tech-preview): v0.16.0
          - Manual Approval Gate (tech-preview): v0.6.0
          - Tekton Pruner (tech-preview): v0.2.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.20/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:d941644bf6672ce0e6151f6ae7f775ba173795baf4a79eb8bba1d2b67ea359d5
        - registry.redhat.io/ubi9/openjdk-17@sha256:555c8bcd2596637befd1a6da4aa949c5a2640cf66e09c2dfb932afe37e39095e
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:0e9d28f1ef4f3348349489bf813c20e249a10d2735c409dccf8067e082ef0b4d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:cbff2c3468f239276802e0a3a98301386ae7a98b183c4ec5b83f4b30ccde56cf
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:cba1718306397fc60e1d6d468c92ea133188229f57a76f9b00eb8edd22cec5c3
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:a6da589eb9c40c62e06c64f3d34578053328bef388325e8927872cd75c4ebe29
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        version: 1.20.2
      entries:
      - name: openshift-pipelines-operator-rh.v1.20.2
        version: 1.20.2
      - name: openshift-pipelines-operator-rh.v1.20.1
        version: 1.20.1
      - name: openshift-pipelines-operator-rh.v1.20.0
        version: 1.20.0
      name: pipelines-1.20
    defaultChannel: latest
    packageName: openshift-pipelines-operator-rh
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: ScaleOps
      provider-url: https://scaleops.com
    name: scaleops-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: scaleops-operator.v1.26.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "analysis.scaleops.sh/v1",
                "kind": "ScaleOps",
                "metadata": {
                  "name": "scaleops",
                  "namespace": "scaleops-system"
                },
                "spec": {
                  "scaleopsToken": "${SCALEOPS_TOKEN}"
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
          createdAt: "2026-01-06T18:53:17Z"
          description: |-
            ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

            ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

            Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

            Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

            Contact [us](mailto:team@scaleops.com) to start your free trial today
          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: "true"
          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.skipRange: <1.26.11
          operators.openshift.io/valid-subscription: Contact ScaleOps for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://scaleops.com
          support: ScaleOps Support support@scaleops.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: This will install an instance of the ScaleOps Platform on
              your cluster
            displayName: ScaleOps Platform
            kind: ScaleOps
            name: scaleops.analysis.scaleops.sh
            version: v1
        description: |-
          ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

          ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

          Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

          Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

          Contact [us](mailto:team@scaleops.com) to start your free trial today
        displayName: ScaleOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vertical scaling
        - horizontal scaling
        - node optimization
        - application runtime
        links:
        - name: ScaleOps
          url: https://scaleops.com
        maintainers:
        - email: support@scaleops.com
          name: ScaleOps
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ScaleOps
          url: https://scaleops.com
        relatedImages:
        - registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
        - registry.connect.redhat.com/scaleops-sh/scaleops-gpu@sha256:350e8df5a36e8f47e0055a703331c29da3c8fa9679a629a1dffb620d4414bf4e
        - registry.connect.redhat.com/scaleops-sh/scaleops-operator-bundle@sha256:d5e4258cb2319901e62d3a15b9a6304495ab6170797244793a6df374d6d35321
        - registry.connect.redhat.com/scaleops-sh/scaleops-sh@sha256:e2f3b6e44e5050b9acd255cfdc4b9563ae5449ce547f30ec37c97f4c5083dcf7
        version: 1.26.11
      entries:
      - name: scaleops-operator.v1.26.11
        version: 1.26.11
      - name: scaleops-operator.v1.26.10
        version: 1.26.10
      - name: scaleops-operator.v1.26.9
        version: 1.26.9
      - name: scaleops-operator.v1.26.8
        version: 1.26.8
      name: stable-v1
    - currentCSV: scaleops-operator.v1.26.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "analysis.scaleops.sh/v1",
                "kind": "ScaleOps",
                "metadata": {
                  "name": "scaleops",
                  "namespace": "scaleops-system"
                },
                "spec": {
                  "scaleopsToken": "${SCALEOPS_TOKEN}"
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
          createdAt: "2026-01-06T18:53:17Z"
          description: |-
            ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

            ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

            Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

            Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

            Contact [us](mailto:team@scaleops.com) to start your free trial today
          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: "true"
          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.skipRange: <1.26.11
          operators.openshift.io/valid-subscription: Contact ScaleOps for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://scaleops.com
          support: ScaleOps Support support@scaleops.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: This will install an instance of the ScaleOps Platform on
              your cluster
            displayName: ScaleOps Platform
            kind: ScaleOps
            name: scaleops.analysis.scaleops.sh
            version: v1
        description: |-
          ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

          ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

          Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

          Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

          Contact [us](mailto:team@scaleops.com) to start your free trial today
        displayName: ScaleOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vertical scaling
        - horizontal scaling
        - node optimization
        - application runtime
        links:
        - name: ScaleOps
          url: https://scaleops.com
        maintainers:
        - email: support@scaleops.com
          name: ScaleOps
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ScaleOps
          url: https://scaleops.com
        relatedImages:
        - registry.connect.redhat.com/scaleops-sh/scaleops-gpu@sha256:350e8df5a36e8f47e0055a703331c29da3c8fa9679a629a1dffb620d4414bf4e
        - registry.connect.redhat.com/scaleops-sh/scaleops-operator-bundle@sha256:d5e4258cb2319901e62d3a15b9a6304495ab6170797244793a6df374d6d35321
        - registry.connect.redhat.com/scaleops-sh/scaleops-sh@sha256:e2f3b6e44e5050b9acd255cfdc4b9563ae5449ce547f30ec37c97f4c5083dcf7
        - registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
        version: 1.26.11
      entries:
      - name: scaleops-operator.v1.26.11
        version: 1.26.11
      - name: scaleops-operator.v1.26.10
        version: 1.26.10
      - name: scaleops-operator.v1.26.9
        version: 1.26.9
      - name: scaleops-operator.v1.26.8
        version: 1.26.8
      name: stable-v1.26
    defaultChannel: stable-v1.26
    packageName: scaleops-operator
    provider:
      name: ScaleOps
      url: https://scaleops.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      pod-security.kubernetes.io/audit: privileged
      pod-security.kubernetes.io/enforce: privileged
      pod-security.kubernetes.io/warn: privileged
      provider: NVIDIA Corporation
      provider-url: ""
    name: gpu-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gpu-operator-certified.v25.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "cdi": {
                    "enabled": true
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "kernelModuleType": "auto",
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "secretName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": []
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "secretName": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
          createdAt: Wed Dec 3 14:12:01 PST 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <25.10.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:5c4e61f7ba83d7a64ff2523d447c209ce5bde1ddc79acaf1f32f19620b4912d6
        - nvcr.io/nvidia/driver@sha256:ef9856ae8491b376364df1f0cad388bcf9983bd2b6c78000523c13536cf828c3
        - nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
        - nvcr.io/nvidia/cuda@sha256:d19fe621624c4eb6ac931b8558daa3ecc0c3f07f1e2a52e0267e083d22dceade
        - nvcr.io/nvidia/k8s-device-plugin@sha256:50ac011ab941ab0140d52f56aa0e2fdc553bca96836ab3b26be394fc823fd9e7
        - nvcr.io/nvidia/driver@sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:119de9a331a47203858b99901f44d0c4a8052961b4e60327f4b100d0ab8c9df0
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:10acae5f724b07faa6e6c7716f3342d3cf2306a2c22971825e1a23753c21e8c3
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:7c0ac4430bb0a5868b7404a0e06c47e02b0375b61aadd614385ad0bc2d43815a
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:c549346eb993fda62e9bf665aabaacc88abc06b0b24e69635427d4d71c2d5ed4
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:098c01e11589e08ede9ffb3002d1c3dff424f0f0c5d1bfcbfd54a359073f16dd
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:ef2a0ef6bbf9c43529da3730974de9d51b8436c2314a68e718d437e6ab7c4b58
        - nvcr.io/nvidia/driver@sha256:35359117c5cdf786694d2fdba2ba038e7f673c5d0243c9ed4dc6cdaf6e675e4a
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:8e0803d2f29776cd4cc0501381a20a0b04b2da507a794d66a15894c57beaadb5
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:99187d6b023689f50cf065c77b96ba5aacfa26a618854608a1e31da5e826b765
        version: 25.10.1
      entries:
      - name: gpu-operator-certified.v25.10.1
        version: 25.10.1
      - name: gpu-operator-certified.v25.10.0
        version: 25.10.0
      - name: gpu-operator-certified.v25.3.4
        version: 25.3.4
      - name: gpu-operator-certified.v25.3.3
        version: 25.3.3
      - name: gpu-operator-certified.v25.3.2
        version: 25.3.2
      - name: gpu-operator-certified.v25.3.1
        version: 25.3.1
      - name: gpu-operator-certified.v25.3.0
        version: 25.3.0
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: stable
    - currentCSV: gpu-operator-certified.v1.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "dcgmExporter": {
                    "config": {
                      "name": ""
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                  },
                  "devicePlugin": {
                  },
                  "driver": {
                    "enabled": true,
                    "use_ocp_driver_toolkit": true,
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "gfd": {
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "operator": {
                    "defaultRuntime": "crio",
                    "deployGFD": true,
                    "initContainer": {
                    }
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:c7f9074c1a7f58947c807f23f2eece3a8b04e11175127919156f8e864821d45a
          createdAt: Mon Apr 18 10:06:40 PDT 2022
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=v1.9.0 <v1.10.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://coreos.com/blog/introducing-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:5b16056257acc51b517d9cdb1da3218693cefc214af93789e6e214fd2b4cacf1
        - nvcr.io/nvidia/gpu-operator@sha256:c7f9074c1a7f58947c807f23f2eece3a8b04e11175127919156f8e864821d45a
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:67c48a8370c34f68b46eb57339e87d01c04198368a0423553fab7565c862c4df
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:60b1d25ebb3aada94985e359bb059d4491bf0148ac75d51b68a461670659e429
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:ac13256c295126b854a07421c45de0721e7a57974b38b3e66eb1fdc3a4e29f2e
        - nvcr.io/nvidia/driver@sha256:f99b66855e92451a59a722355dd52bf97eb985cc8a647172273de8178aeaa93c
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:9abb063e6b74085728fead5ed5bbe3bd7b3f57de60e87f6b964bba2d46f1bc67
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:24d804e8f005d7aeca8343aa13e5f92295d8642a4c47cb24e3ac86a22543bc37
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:e8f06ce53415e8572f633b2169289d973993cb1e49d4dcc686ac134194d88f33
        - nvcr.io/nvidia/cuda@sha256:7f0f7dc8c993a86865d4d9f9b0e36d113ea15603d5d5279d2879fa2bc21c8236
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:c2e3d0fe41a0d227dbb70caec03c780cc76317515e5ab3875f31d50c63f41c66
        - nvcr.io/nvidia/k8s-device-plugin@sha256:aa95c16106280e36a5e32d2fe4c66e8b70f5a114860c6f4ed5b1a4085c63601b
        version: 1.10.1
      entries:
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v1.10
    - currentCSV: gpu-operator-certified.v1.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    },
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "dcgmExporter": {
                    "config": {
                      "name": ""
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                  },
                  "devicePlugin": {
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": true
                  },
                  "vgpuDeviceManager": {
                    "enabled": true,
                    "config": {
                      "name": "vgpu-devices-config",
                      "default": "default"
                      }
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:53180f81fb7e1e4bcd49a556bc6285c2262abbab8083b29d2688b02d4200dd2d
          createdAt: Thu Aug  4 11:57:56 PDT 2022
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=v1.9.0 <v1.11.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/driver@sha256:b8799e7397fae5a27446737443091eed05b918816f53c400a48be71125ee22e8
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:b90a519e9f30fbc013e1806bc081268724e9e80b4035c67c167ab3b43a37704a
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:3128cd81b56975643c1c88c6ceff6d72e918a67ec2d6a5a606b6e04753c5b0ce
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:3804e2b03c44d25dd410e3882b7fb6d1fde41f55110d7702af47136b042a63ff
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:2d6e86db0e2b0db64c00566938e1851e25d4bb1019b1e7b696e2b199cba33397
        - nvcr.io/nvidia/driver@sha256:cf8ce04907d0e8decf90a8dccfa6134af9c39509d2f8a21c355ed71223acacdb
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:e88e610d09f1a7528ab32cb54259aee340eba2b2bf66b92a28157626daadc82d
        - nvcr.io/nvidia/gpu-operator@sha256:53180f81fb7e1e4bcd49a556bc6285c2262abbab8083b29d2688b02d4200dd2d
        - nvcr.io/nvidia/driver@sha256:6e2902d73c54cf57bec94edf166d206cfeb0b948b5aab70800ccbe025064b3a1
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:16ee5b1a8d9217f761c40a06c7ae598cbc893fbc35d99ff9b84fa886ea6b9b37
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:f48e8b430248a9cadf716a9211bb0050d4a663d1f1386ea107e72917f82e5b5f
        - nvcr.io/nvidia/cuda@sha256:4400b56f81095b24fc9dde93ad7ad7d0ca6a7e9736c4c7f1d4e2bcbf0afbe45c
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:39127d04c9faff3f22068dcf463ed48d02be684cd18e3f14db843bddbdd783a7
        - nvcr.io/nvidia/k8s-device-plugin@sha256:7a0ccbcbe8d379bfc441e06504eb45d0d433a37e2a9e6dde83d13347296ebe81
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:10d825ccbfcf87f8c74f841fa89ae345f2d381fb47a5b2b31f61b72ebbbb0915
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:8490d555131a57a11311561667ea9ec8cf554a399d2492a6f9e6677c01ec4b9a
        - nvcr.io/nvidia/driver@sha256:8c9fabc1cd773e9526eb7e8526084f065f6cca9d0fd8dc2a672a0bb717f1cc60
        version: 1.11.1
      entries:
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v1.11
    - currentCSV: gpu-operator-certified.v22.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:54d5846c0291db621931a8544c9cb6437512470a93278ca9130ba73f2e2f0055
          createdAt: Mon Jan 30 15:43:24 PST 2023
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=1.9.0 <22.9.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:efb88937f73434994d1bbadc87b492a1df047aa9f8d6e9f5ec3b09536e6e7691
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:50c2a2b998e467c82716efa79fe136aa6f7ea95fd23576cf384d251bb9628640
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:9177a0ae30798b42d0387f6a20cd3ce3cd1799a91b7866bf812368764b05b1af
        - nvcr.io/nvidia/driver@sha256:f250d1e4989fd4821e81bad9227eeeaa531ca8810f3a40e996f1ca2af7945f96
        - nvcr.io/nvidia/driver@sha256:268c26781c46b36fe691638e807eb5c3a2cd077029ddb095ac75264adac04925
        - nvcr.io/nvidia/driver@sha256:c5a62bc2a6cce339798e4b7cf9cec47e289c2d30b40f451ba8c9e958a68e3e55
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:bec9f026d9b3d9404c78d6091817a359015c6a7aa411735b34138c1518853b5d
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:0d47dad29d2ef445b301c5c64717758eed43a606345b79f97bce2e64b40a91a8
        - nvcr.io/nvidia/gpu-operator@sha256:54d5846c0291db621931a8544c9cb6437512470a93278ca9130ba73f2e2f0055
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:9a00cdfdddb73327ef8e8e0fa60e50926a388d380c551bba6a3d3012be40401d
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:c3cf59dd5d6160eba5d816ade2e81b35ebb10f4884df67971f6ace36f8e6efc1
        - nvcr.io/nvidia/driver@sha256:f2ca4612f3418e0e3963be8c3771ffe463cdc1fc1b810437a3aad9d76bb6499d
        - nvcr.io/nvidia/k8s-device-plugin@sha256:9c17d3a907eb77eb8f7b4f3faf52d8352e4252af92003f828083f80d629bd2c3
        - nvcr.io/nvidia/driver@sha256:b860ef04cc6cd8c481810fa19bef7221071f5a3862640b2ad6c2704728dc77c8
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:808529c14a8873324096fbd1622fb895c4dc7f60c1cf9e3ded646f9a81d7b496
        - nvcr.io/nvidia/cuda@sha256:5f2a2d8977f2c59abe88394f05cc3c044194554f90994d8554b0e1117ab5900d
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:00f1476548fbed9ee01961443a73bf65396c2e8bb2b84426f949dd56cb4d14cd
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:64d757b4c80b910e64647a84a1d592fab2ea3313ff6dce30c25c3a08e180bd74
        version: 22.9.2
      entries:
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v22.9
    - currentCSV: gpu-operator-certified.v23.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:08ca33f491195b7ba867be1e6642b5ff8aff6a4b0b7cfc0ec87619252ccfddc7
          createdAt: Mon May 22 15:22:15 PDT 2023
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=1.9.0 <23.3.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:0d47dad29d2ef445b301c5c64717758eed43a606345b79f97bce2e64b40a91a8
        - nvcr.io/nvidia/gpu-operator@sha256:08ca33f491195b7ba867be1e6642b5ff8aff6a4b0b7cfc0ec87619252ccfddc7
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:f10170b076badda8f669af8b0f7b47eb5470abaf35a67dda9c4e182d66138177
        - nvcr.io/nvidia/k8s-device-plugin@sha256:80871275fbcf888d4683c58638c7a75b3c46091040cafc6210a8c93513adb146
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:2d7e32e3d30c2415b4eb0b48ff4ce5a4ccabaf69ede0486305ed51d26cab7713
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:5489125ceae5864280e4d6a9ab52ab0f650b3179349a7298c4a204feb60b661a
        - nvcr.io/nvidia/cuda@sha256:62d845b4bd6de4be65f0b6daaae6831c29d4529955f99db5d26f5f7179106285
        - nvcr.io/nvidia/driver@sha256:3df118f2330e95db3c76173cca35e542b2da120ec0bb8f6aff83c4c96c0c2daf
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:708291528f26c70c561745967a1200edcb2f984687f749a49a2860fee580423f
        - nvcr.io/nvidia/driver@sha256:917f92c589c3124dba54f66f89c44b93b0beaf418f01d0da6a546e1670fdf3a9
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:03e43d6b1460cadb33509d5ee07a5e27603ab89d7ec35f67d8a51bb78745b463
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:21dfc9c56b5f8bce73e60361d6e83759c3fa14dc6afc2d5ebdf1b891a936daf6
        - nvcr.io/nvidia/driver@sha256:73b8928a1b1fb650d2ca8d6451a7d7c551fd0509f7511c2fd5bfdcef83ae4f5d
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:cab21c93987a5c884075efe0fb4a8abaa1997e1696cbc773ba69889f42f8329b
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:8f03f74076b5aa6672a5d75a398fa7515fcde57fdb1cf8079e015b3366efd3b5
        - nvcr.io/nvidia/driver@sha256:8ff0ee88fe6c4ff031ef642593f93625bfd9a48fe7be8a79a5c2736117e36941
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:84ce86490d0d313ed6517f2ac3a271e1179d7478d86c772da3846727d7feddc3
        version: 23.3.2
      entries:
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v23.3
    - currentCSV: gpu-operator-certified.v23.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:d2e0f8bd86e8e9f2ff3514e113657658584ca4a2d0b82dac2e47364cc0b30648
          createdAt: Thu Aug 31 12:22:44 PDT 2023
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=1.9.0 <23.6.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:878a6162a4fa0b61dae02c7cfc13ba4d28bb06f92fd62d0c521633ab507d675a
        - nvcr.io/nvidia/driver@sha256:3382e254056f28831767bc6729bc2594353a5ff2a28fe9f2d94396c597bb23d8
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:bb845160b32fd12eb3fae3e830d2e6a7780bc7405e0d8c5b816242d48be9daa8
        - nvcr.io/nvidia/driver@sha256:b4517810f2884f345b4f2323e83e41d28f54cdc6e2caf0690bb7ed4f3947dbcc
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:a229beba8540549c234a046e975bf4bf8c50d521dfe551af56f6e042b25ec017
        - nvcr.io/nvidia/cuda@sha256:64c0ff5fd4a27d4b1d46378634f7a7398c75f87c18c70c988dde18910d461560
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:0379c59b43e11861837787a0da22e70b528718373bb10de9e8b7752849bd4e7a
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:9484110986c80ab83bc404066ca4b7be115124ec04ca16bce775403e92bfd890
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:bf06c8ad380a36e5014607bd3ab05b80e8e5e7e77d23d0dd89fe53a5564152fa
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:00a91252be8e62da6f28cdf1ec3721f2e945ae296938b0b925ef9db2bf6dcc8b
        - nvcr.io/nvidia/driver@sha256:bbdc4415fe2e71eeea1b8a6e50ee562e11704dabb46db1db4aea807102886a35
        - nvcr.io/nvidia/k8s-device-plugin@sha256:f1617c3fe54fd9f6d4a00358e5da1a9fa9e8963a4ef6b3ed06f47d4971ddff4b
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:d1c636cc17155c4764d331e050f9bf3ec9f39f6ec6ec14e972179b185ea9f5b8
        - nvcr.io/nvidia/gpu-operator@sha256:d2e0f8bd86e8e9f2ff3514e113657658584ca4a2d0b82dac2e47364cc0b30648
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:60086c33226bbe7f04b611c20d308fed5825226f8a0a5635bc58d8ed55cc08a5
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:b30f5c64791dc5406b57eaf51ac40195dc1051a18cd1f38fd0a43c65f1d6dba9
        version: 23.6.1
      entries:
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v23.6
    - currentCSV: gpu-operator-certified.v23.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:7481a3697783dcdca9ae78e7b548a6900e86ea33ab49ec14f0ba55db2fdb1a2e",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:3988b3b570cf65b0d338cb29bd24b0b9bf1885e1563fbb398ef23cba0b59e6bb
          createdAt: Wed Mar 6 16:43:36 PDT 2024
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <23.9.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:387021553dfb16aab633228d42f63f04fa932b4f46add07527f296dfe97e5148
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:5339c41013727fa5dd3ae5bc1d51eb90e02e5baa85d4039b1efdde30baeae1ae
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:8d1ec78f2b1ddb7f0c47453d0427231190747bda411733a7dd0c8f5196f09e9c
        - nvcr.io/nvidia/gpu-operator@sha256:3988b3b570cf65b0d338cb29bd24b0b9bf1885e1563fbb398ef23cba0b59e6bb
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:a67d8e92861a2dce5649105c07561e4422e9fe4ba81a6525dc0d70a7ef85f9c0
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:925f4a47710e4318ed457930f5406174c1f6d28b1bf6b1bc310687fec0fde712
        - nvcr.io/nvidia/cuda@sha256:714547d54e5fe4191019a1e5f1daffc7fab7481b619b79c378541dafc76c9e5d
        - nvcr.io/nvidia/k8s-device-plugin@sha256:bb81ae8d034d1e1c6a342091a5f1dda5884dd43ab47e96624487a133d1edd4b3
        - nvcr.io/nvidia/driver@sha256:7481a3697783dcdca9ae78e7b548a6900e86ea33ab49ec14f0ba55db2fdb1a2e
        - nvcr.io/nvidia/driver@sha256:56c79482582cdfbc58d3134e8672637c5bf05f328880f76898f526143d04c6af
        - nvcr.io/nvidia/driver@sha256:abda1ac56371d55917b96ff330109980f468e133c9d5705da0ef87429f14ccd7
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:59a3875e7a37eb370385e654184efa3a1b193c9ea352165818496b19cbe14aa4
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:9aefef081c3ab1123556374d2b15d0429f3990af2fbaccc3c9827801e1042703
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:6a05d6a1923fda756aed0dddf7ed23a83c30cf1e6c519fc39dd70c0309ec8257
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:27c44f4720a4abf780217bd5e7903e4a008ebdbcf71238c4f106a0c22654776c
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:011fb450af3fa2e8fe5d28d590e4c653631447bc23d149591ced3d89089c4f2c
        version: 23.9.2
      entries:
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v23.9
    - currentCSV: gpu-operator-certified.v24.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:96f25c67e5b1072d5981080e12d65ec37eb9ef2fc0494499416aa801b0a34da3",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:041e75a3df84039c2dbbd4b9d67763bd212138822dbb6dbc0008858c1c6eff8d
          createdAt: Tue Apr 30 14:18:26 PDT 2024
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <24.3.0'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:1532fc1351ca44f863feaaf54ba8810be7a62396f98dd292ccaf975fde31ce5b
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:d8774d6afd37110199512636172823ae8749e5ea2e13760f57c255a74f47018c
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:f0e4e14a3081417be8e6a5d855fb0cb69e1b63bc54a74f17e6d7084abe275588
        - nvcr.io/nvidia/gpu-operator@sha256:041e75a3df84039c2dbbd4b9d67763bd212138822dbb6dbc0008858c1c6eff8d
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:0c77725de8c42d248ed825453efd2e005f4900f4be384fd23084f6b721ddd0e0
        - nvcr.io/nvidia/driver@sha256:56c79482582cdfbc58d3134e8672637c5bf05f328880f76898f526143d04c6af
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:7798eb9b9424e09959fc808596f87bdb68ac5740174123c6646dee2166d3e7d2
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:ecb867c5787e44f1889b257e6c03b07748689a7b293c8f1affb1d4cb449b235c
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:2cc2119d20515f8ca7a61a0f3932578d69a45bcdea49e6c320a89c56f105e7d9
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:2edc1d4ed555830e70010c82558936198f5faa86fc29ecf5698219145102cfcc
        - nvcr.io/nvidia/driver@sha256:96f25c67e5b1072d5981080e12d65ec37eb9ef2fc0494499416aa801b0a34da3
        - nvcr.io/nvidia/driver@sha256:a836ccbe21da735aee1c39b81060ed5e2fdb4ffa339874baaf4634f1e9259f74
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:1ae0b923bc57f47bab046b50c50110f6914bbaffbfef704df34b3fe332db2e31
        - nvcr.io/nvidia/k8s-device-plugin@sha256:80674b19898ecf9ed6949e39674da769d6feeeb01bea54b914ef9ff502834f49
        - nvcr.io/nvidia/cuda@sha256:ae0623ec8634b6c88f815b88037763def160cbbac15013b77ddef257fc276c9a
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:2442fd2ec0ee29746abbced727c53741f017e8f3f615321c1ec42c1c3ffa0b12
        version: 24.3.0
      entries:
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v24.3
    - currentCSV: gpu-operator-certified.v24.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:858de27c152669f5a3cf4287406405b16dd5bb70c0373324eb735511997bb415",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:8e0969cffc030a89c4acd68e64d41dd54e3bce8a794106b178d4dbd636a07f1c
          createdAt: Wed Sep 25 08:25:16 PDT 2024
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <24.6.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/driver@sha256:858de27c152669f5a3cf4287406405b16dd5bb70c0373324eb735511997bb415
        - nvcr.io/nvidia/driver@sha256:07e11f85d54d49ec9648fb06e148b8d832ee1f9c3549a915eee853c9ef2949c2
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:fa72cc3e0b09510d71a097b92ee101e057f1c11e1cb363172bd26b2d94272417
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:15dab1273345df4a5844c4c761d064dbc4b592101251dc39174e597137123027
        - nvcr.io/nvidia/k8s-device-plugin@sha256:7ad2c9f71fe06f9f7745ac8635f46740fbdff4f11edd468addfab81afcdfa534
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:969147c01d63be5d1fe458f32f1cc0c7408cf3062531db91408e2fc57b4d8a67
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:7bcc188703f2fac630f7a4ff8960e6733ac3a29adf6a946533b796d9a27b8acf
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:33de74eb590f071403c17b6c210c02963245851971168bc0c07c06c100a9f376
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:ae63fac9a4057a7646f0cf0ee0566e8928529adde05c4c0a017cda0599e381b2
        - nvcr.io/nvidia/driver@sha256:a6d12fb5753f267dda25dfd38910f972bc632c006a24107fa50e20bba3642d7c
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:781fb47e264d9e0fbc8da5bd046e5e678316c866bc36ddd4b56d4eb0de682d5b
        - nvcr.io/nvidia/cuda@sha256:de5b598bca89850567c4c104411d66bb52f47c9179199e6a3be6829b7ac586a2
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:96380b95396b7f29d2ed2ec8ef1ad5a8bcf9f55051db723295dc0a20db845331
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:21f4c8b88716e8e6f732f9fb4c2efaef937c227491a8631c5e55036f80f39a4d
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:740abc3ff657545c10effd5354f09af525200ed9a1b7623f0c2e8c7bd9e4a4e2
        - nvcr.io/nvidia/gpu-operator@sha256:8e0969cffc030a89c4acd68e64d41dd54e3bce8a794106b178d4dbd636a07f1c
        version: 24.6.2
      entries:
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v24.6
    - currentCSV: gpu-operator-certified.v24.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:6fe74322562c726c8fade184d8c45ebae3da7b1ea0a21f0ff9dc42c66c65e692",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:92f5262bb4934e0ea29eb10ec0ad4fc293164f2f2f94d48a935922791abbfdac
          createdAt: Mon Jan 27 16:10:52 PST 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <24.9.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/driver@sha256:d55b57938866e538acc3a71ca32f8cf87e71c591abd4a34695ee428e7ec2fa73
        - nvcr.io/nvidia/gpu-operator@sha256:92f5262bb4934e0ea29eb10ec0ad4fc293164f2f2f94d48a935922791abbfdac
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:857f7669ae5ce2a43a3b5691fa970085098321ef8e90a896fa8dda3dee5b1d2b
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:b072c5793be65eee556eaff1b9cbbd115a1ef29982be95b2959adfcb4bc72382
        - nvcr.io/nvidia/driver@sha256:6fe74322562c726c8fade184d8c45ebae3da7b1ea0a21f0ff9dc42c66c65e692
        - nvcr.io/nvidia/k8s-device-plugin@sha256:7089559ce6153018806857f5049085bae15b3bf6f1c8bd19d8b12f707d087dea
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:34eab99d7992a57c35803ec5e0afd538d16e997341e951fef4c4019afb08793e
        - nvcr.io/nvidia/driver@sha256:38b66a8d44cab9e2c62da9e101f32cd9dbcb5e02d8e57b47671284d374ca3695
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:b897e25e03133513f9afdb5abe38cbf0f2ac0556c27518d9d80e792eb07ecf28
        - nvcr.io/nvidia/cuda@sha256:b3b340847db9abd0c39703278f5638d3e65e1369e9a526a19b3138d5a6563527
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:40830d3561c14743f484d45b498141f9e86b1308e16fae3978110783927264ab
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:d934033f9ff89087d555850eb1da150eaaa27b11e5ad21db1b874b8bc0b8d35b
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:e8398b2451996e5c64fc3855e7a3c93b667a85f69c0e259049d3b0012c21545d
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:4ffa1cd2a6497eb647a89ed259dcfb007554737b9d80f69bc173a2c3cd72a1da
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:7edd7a0413dcb39b6e3bcefaf06812f3293c8e480ca10783e821a561ed686200
        - nvcr.io/nvidia/driver@sha256:026f8f2d29b7058ecaaa5b98666e28e1b3646b73e7d7cda3dc8026d47a929152
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:cf39d78ced7fb5727a9668ee2cd44b14bb7a23a95b83d5464b7d755740e02121
        version: 24.9.2
      entries:
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v24.9
    - currentCSV: gpu-operator-certified.v25.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "cdi": {
                    "enabled": true
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "kernelModuleType": "auto",
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "secretName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": []
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "secretName": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
          createdAt: Wed Dec 3 14:12:01 PST 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <25.10.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:c549346eb993fda62e9bf665aabaacc88abc06b0b24e69635427d4d71c2d5ed4
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:119de9a331a47203858b99901f44d0c4a8052961b4e60327f4b100d0ab8c9df0
        - nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:99187d6b023689f50cf065c77b96ba5aacfa26a618854608a1e31da5e826b765
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:10acae5f724b07faa6e6c7716f3342d3cf2306a2c22971825e1a23753c21e8c3
        - nvcr.io/nvidia/driver@sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:7c0ac4430bb0a5868b7404a0e06c47e02b0375b61aadd614385ad0bc2d43815a
        - nvcr.io/nvidia/driver@sha256:35359117c5cdf786694d2fdba2ba038e7f673c5d0243c9ed4dc6cdaf6e675e4a
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:ef2a0ef6bbf9c43529da3730974de9d51b8436c2314a68e718d437e6ab7c4b58
        - nvcr.io/nvidia/driver@sha256:ef9856ae8491b376364df1f0cad388bcf9983bd2b6c78000523c13536cf828c3
        - nvcr.io/nvidia/cuda@sha256:d19fe621624c4eb6ac931b8558daa3ecc0c3f07f1e2a52e0267e083d22dceade
        - nvcr.io/nvidia/k8s-device-plugin@sha256:50ac011ab941ab0140d52f56aa0e2fdc553bca96836ab3b26be394fc823fd9e7
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:098c01e11589e08ede9ffb3002d1c3dff424f0f0c5d1bfcbfd54a359073f16dd
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:8e0803d2f29776cd4cc0501381a20a0b04b2da507a794d66a15894c57beaadb5
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:5c4e61f7ba83d7a64ff2523d447c209ce5bde1ddc79acaf1f32f19620b4912d6
        version: 25.10.1
      entries:
      - name: gpu-operator-certified.v25.10.1
        version: 25.10.1
      - name: gpu-operator-certified.v25.10.0
        version: 25.10.0
      - name: gpu-operator-certified.v25.3.4
        version: 25.3.4
      - name: gpu-operator-certified.v25.3.3
        version: 25.3.3
      - name: gpu-operator-certified.v25.3.2
        version: 25.3.2
      - name: gpu-operator-certified.v25.3.1
        version: 25.3.1
      - name: gpu-operator-certified.v25.3.0
        version: 25.3.0
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v25.10
    - currentCSV: gpu-operator-certified.v25.3.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "kernelModuleType": "auto",
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": []
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:b6250c461c6226d5fb1383e3e8331e7e0bf07f9ed88a36988bbe5f6cc754d735",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:2e86875d61c030a9bd348a18bde8c4caa3d0c430a1aac642086b9cb1b3e3b015
          createdAt: Thu Sep 18 18:11:36 PDT 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <25.3.4'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:3191cc0684e92d655e72fe9faf3da95fe6b8a6c2eb4ad396f75ba9b98c021aaf
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:5c4e61f7ba83d7a64ff2523d447c209ce5bde1ddc79acaf1f32f19620b4912d6
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:66c3d68ca2b35d47b5562300a10ff8711b953ba3a15df7dbc409d81613ebe5d0
        - nvcr.io/nvidia/driver@sha256:b6250c461c6226d5fb1383e3e8331e7e0bf07f9ed88a36988bbe5f6cc754d735
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:6bb786c41fa7b1a6238c023566fdeaeeea3ba842a8daec015a7bd85a8037b249
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:cbd83ff041c3e6e9a5d76dc2cfa1894893c5e2f92583b16df9c418232cbce78c
        - nvcr.io/nvidia/driver@sha256:44422f10e899d3419fbd611a02fc1c6127e071a2067bd36e3debb043bf251de0
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:b689dfb7806ae51b0072620b47c26114f05477e8ad9725892ee10366e5d93d8d
        - nvcr.io/nvidia/cuda@sha256:d19fe621624c4eb6ac931b8558daa3ecc0c3f07f1e2a52e0267e083d22dceade
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:51c8f71d3b3c08ae4eb4853697e3f8e6f11e435e666e08210178e6a1faf8028f
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:c22dc67465c33d2f17932931229e61a6e7d9e32c5ed2ecefe8d10e873ffedfeb
        - nvcr.io/nvidia/driver@sha256:43aa99352e1dc47e9218f36340ae6328a6282ed1e7e9a61b4204475e980230ef
        - nvcr.io/nvidia/gpu-operator@sha256:2e86875d61c030a9bd348a18bde8c4caa3d0c430a1aac642086b9cb1b3e3b015
        - nvcr.io/nvidia/k8s-device-plugin@sha256:3c54348fe5a57e5700e7d8068e7531d2ef2d5f3ccb70c8f6bac0953432527abd
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:119de9a331a47203858b99901f44d0c4a8052961b4e60327f4b100d0ab8c9df0
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:619e7bf48168d76a7e087c3bf6190fda9b10449c9839309fa4f9ed5b8a9e8804
        version: 25.3.4
      entries:
      - name: gpu-operator-certified.v25.3.4
        version: 25.3.4
      - name: gpu-operator-certified.v25.3.3
        version: 25.3.3
      - name: gpu-operator-certified.v25.3.2
        version: 25.3.2
      - name: gpu-operator-certified.v25.3.1
        version: 25.3.1
      - name: gpu-operator-certified.v25.3.0
        version: 25.3.0
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v25.3
    defaultChannel: v25.10
    packageName: gpu-operator-certified
    provider:
      name: NVIDIA Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-codeartifact-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-codeartifact-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/codeartifact-controller:1.2.0
          createdAt: "2025-11-29T03:28:11Z"
          description: AWS codeartifact controller is a service controller for managing
            codeartifact resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Domain represents the state of an AWS codeartifact Domain
              resource.
            displayName: Domain
            kind: Domain
            name: domains.codeartifact.services.k8s.aws
            version: v1alpha1
          - description: PackageGroup represents the state of an AWS codeartifact
              PackageGroup resource.
            displayName: PackageGroup
            kind: PackageGroup
            name: packagegroups.codeartifact.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon codeartifact resources in AWS from within your Kubernetes cluster.

          **About Amazon codeartifact**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon codeartifact
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - codeartifact
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon codeartifact Developer Resources
          url: https://aws.amazon.com/codeartifact/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: codeartifact maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/codeartifact-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-codeartifact-controller@sha256:03a84cfae8ceb70bc1aa31ea6ceb53c2a8b26dc23ef403d5f5f96b7c169af6a7
        version: 1.2.0
      entries:
      - name: ack-codeartifact-controller.v1.2.0
        version: 1.2.0
      - name: ack-codeartifact-controller.v1.1.2
        version: 1.1.2
      - name: ack-codeartifact-controller.v1.1.1
        version: 1.1.1
      - name: ack-codeartifact-controller.v1.1.0
        version: 1.1.0
      - name: ack-codeartifact-controller.v1.0.13
        version: 1.0.13
      - name: ack-codeartifact-controller.v1.0.11
        version: 1.0.11
      name: alpha
    defaultChannel: alpha
    packageName: ack-codeartifact-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: akaris
      provider-url: https://github.com/andreaskaris/sosreport-operator
    name: sosreport-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sosreport-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "support.openshift.io/v1alpha1",
                "kind": "Sosreport",
                "metadata": {
                  "name": "sosreport-sample"
                },
                "spec": {
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Sosreport is the Schema for the sosreports API
            displayName: Sosreport
            kind: Sosreport
            name: sosreports.support.openshift.io
            version: v1alpha1
        description: Operator that facilitates the generation of sosreports
        displayName: sosreport-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sosreport
        - debugging
        - troubleshooting
        links:
        - name: Sosreport Operator
          url: https://github.com/andreaskaris/sosreport-operator
        maintainers:
        - email: ak.karis@gmail.com
          name: Andreas Karis
        maturity: alpha
        provider:
          name: akaris
          url: https://github.com/andreaskaris/sosreport-operator
        relatedImages:
        - quay.io/akaris/sosreport-operator:0.0.2
        - quay.io/openshift-community-operators/sosreport-operator@sha256:f0d28a3e2ac2e1cbd0c307797b728ad89ac33375135d72054a7b765e274e4bea
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        version: 0.0.2
      entries:
      - name: sosreport-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: sosreport-operator
    provider:
      name: akaris
      url: https://github.com/andreaskaris/sosreport-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sqs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sqs-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sqs.services.k8s.aws/v1alpha1",
                "kind": "Queue",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sqs-controller:1.4.0
          createdAt: "2025-12-29T20:15:44Z"
          description: AWS SQS controller is a service controller for managing SQS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Queue represents the state of an AWS sqs Queue resource.
            displayName: Queue
            kind: Queue
            name: queues.sqs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Simple Queue Service (SQS) resources in AWS from within your Kubernetes cluster.

          **About Amazon SQS**

          Amazon Simple Queue Service (Amazon SQS) offers a secure, durable, and available hosted queue that lets you integrate and decouple distributed software systems and components. Amazon SQS offers common constructs such as [dead-letter queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html) and [cost allocation tags](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html). It provides a generic web services API that you can access using any programming language that the AWS SDK supports.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SQS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sqs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SQS Developer Resources
          url: https://aws.amazon.com/sqs/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: sqs maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sqs-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-sqs-controller@sha256:e34521a92b8763e3bc2cda081cf59b640960403280f33cd53b52f27d385a98e2
        version: 1.4.0
      entries:
      - name: ack-sqs-controller.v1.4.0
        version: 1.4.0
      - name: ack-sqs-controller.v1.3.1
        version: 1.3.1
      - name: ack-sqs-controller.v1.3.0
        version: 1.3.0
      - name: ack-sqs-controller.v1.2.2
        version: 1.2.2
      - name: ack-sqs-controller.v1.2.1
        version: 1.2.1
      - name: ack-sqs-controller.v1.2.0
        version: 1.2.0
      - name: ack-sqs-controller.v1.1.16
        version: 1.1.16
      - name: ack-sqs-controller.v1.1.14
        version: 1.1.14
      - name: ack-sqs-controller.v1.1.13
        version: 1.1.13
      - name: ack-sqs-controller.v1.1.12
        version: 1.1.12
      - name: ack-sqs-controller.v1.1.11
        version: 1.1.11
      - name: ack-sqs-controller.v1.1.10
        version: 1.1.10
      - name: ack-sqs-controller.v1.1.9
        version: 1.1.9
      - name: ack-sqs-controller.v1.1.8
        version: 1.1.8
      - name: ack-sqs-controller.v1.1.7
        version: 1.1.7
      - name: ack-sqs-controller.v1.1.6
        version: 1.1.6
      - name: ack-sqs-controller.v1.1.5
        version: 1.1.5
      - name: ack-sqs-controller.v1.1.4
        version: 1.1.4
      - name: ack-sqs-controller.v1.1.3
        version: 1.1.3
      - name: ack-sqs-controller.v1.1.2
        version: 1.1.2
      - name: ack-sqs-controller.v1.1.1
        version: 1.1.1
      - name: ack-sqs-controller.v1.1.0
        version: 1.1.0
      - name: ack-sqs-controller.v1.0.17
        version: 1.0.17
      - name: ack-sqs-controller.v1.0.16
        version: 1.0.16
      - name: ack-sqs-controller.v1.0.15
        version: 1.0.15
      - name: ack-sqs-controller.v1.0.14
        version: 1.0.14
      - name: ack-sqs-controller.v1.0.13
        version: 1.0.13
      - name: ack-sqs-controller.v1.0.12
        version: 1.0.12
      - name: ack-sqs-controller.v1.0.10
        version: 1.0.10
      - name: ack-sqs-controller.v1.0.7
        version: 1.0.7
      - name: ack-sqs-controller.v1.0.5
        version: 1.0.5
      - name: ack-sqs-controller.v1.0.3
        version: 1.0.3
      - name: ack-sqs-controller.v1.0.2
        version: 1.0.2
      - name: ack-sqs-controller.v1.0.1
        version: 1.0.1
      - name: ack-sqs-controller.v1.0.0
        version: 1.0.0
      - name: ack-sqs-controller.v0.0.7
        version: 0.0.7
      - name: ack-sqs-controller.v0.0.6
        version: 0.0.6
      - name: ack-sqs-controller.v0.0.5
        version: 0.0.5
      - name: ack-sqs-controller.v0.0.4
        version: 0.0.4
      - name: ack-sqs-controller.v0.0.2
        version: 0.0.2
      - name: ack-sqs-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-sqs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Apache Software Foundation
      provider-url: ""
    name: camel-k
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: camel-k-operator.v2.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.0.1
          createdAt: "2023-09-04T12:32:38Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
          - kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - quay.io/openshift-community-operators/camel-k@sha256:d96f1b35ef30d6701f2a52b5e660dbd5378ec82a933afd38d2eb603c9ca084fd
        - docker.io/apache/camel-k:2.0.1
        version: 2.0.1
      entries:
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: candidate
    - currentCSV: camel-k-operator.v2.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "setBody": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationProfile",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "debug"
                },
                "spec": {
                  "traits": {
                    "logging": {
                      "level": "DEBUG"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example-source"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "setBody": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "timer-to-log-example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "log-sink"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world",
                      "period": 2000
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "timer-source"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.9.0
          createdAt: "2025-12-23T11:28:00Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: IntegrationProfile is the Schema for the integrationprofiles
              API
            displayName: Integration Profile
            kind: IntegrationProfile
            name: integrationprofiles.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Pipe is the Schema for the pipes API
            displayName: Pipe
            kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers:
          the easiest way to build and manage your Camel applications on Kubernetes.

          ## Installation

          You may need to specify the container registry where to store the container images created for the Camel applications.
          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          spec:
            build:
              registry:
                address: docker.io/my-org
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step when using Openshift cluster.

          ## Running an Integration

          Run a Camel application on the cluster by creating a sample `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            annotations:
              camel.apache.org/operator.id: camel-k
            name: test
          spec:
            flows:
            - from:
                parameters:
                  period: "1000"
                steps:
                - setBody:
                    simple: Hello Camel from ${routeId}
                - log: ${body}
                uri: timer:yaml
          ```
          Log the result of the running application:
          ```
          kubectl wait --for=condition=ready integration test --timeout=180s
          kubectl logs deployment/test -f
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:2.9.0
        - quay.io/community-operator-pipeline-prod/camel-k@sha256:4c8f4494ede7ef0f6d3564356928e9642571e14eb95ba20d8264325bc4d8c576
        version: 2.9.0
      entries:
      - name: camel-k-operator.v2.9.0
        version: 2.9.0
      - name: camel-k-operator.v2.8.0
        version: 2.8.0
      - name: camel-k-operator.v2.7.0
        version: 2.7.0
      - name: camel-k-operator.v2.6.0
        version: 2.6.0
      - name: camel-k-operator.v2.5.1
        version: 2.5.1
      - name: camel-k-operator.v2.5.0
        version: 2.5.0
      - name: camel-k-operator.v2.4.0
        version: 2.4.0
      - name: camel-k-operator.v2.3.3
        version: 2.3.3
      - name: camel-k-operator.v2.3.2
        version: 2.3.2
      - name: camel-k-operator.v2.3.1
        version: 2.3.1
      - name: camel-k-operator.v2.3.0
        version: 2.3.0
      - name: camel-k-operator.v2.2.0
        version: 2.2.0
      - name: camel-k-operator.v2.1.0
        version: 2.1.0
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: latest
    - currentCSV: camel-k-operator.v1.12.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.12.0
          createdAt: "2023-02-27T09:01:55Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.12.0
        - quay.io/openshift-community-operators/camel-k@sha256:60a9e4b05e7eb17ebfe58dd55db96ab2c68580d9282117f74f21869cb63e4a73
        version: 1.12.0
      entries:
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable
    - currentCSV: camel-k-operator.v1.10.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.10.4
          createdAt: "2023-01-28T13:49:05Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.10.4
        - quay.io/openshift-community-operators/camel-k@sha256:1461576c2e06c2ee8d84fd40836184566a346ed596b99cb81fe6a08d0ad99096
        version: 1.10.4
      entries:
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.10
    - currentCSV: camel-k-operator.v1.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.11.1
          createdAt: "2023-01-30T08:45:04Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.11.1
        - quay.io/openshift-community-operators/camel-k@sha256:2b8369f729c18384f45a458e88c9f551eb00f26792b40dbf286e6ea2837e9400
        version: 1.11.1
      entries:
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.11
    - currentCSV: camel-k-operator.v1.12.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.12.1
          createdAt: "2023-06-12T08:46:58Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.12.1
        - quay.io/openshift-community-operators/camel-k@sha256:6154ff0f72c9c49f1b7ea0edbe93e0a3b04f6e63abbd851d0e6706796050d672
        version: 1.12.1
      entries:
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.12
    - currentCSV: camel-k-operator.v1.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.5.1
          createdAt: "2021-08-31T09:03:41Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - quay.io/openshift-community-operators/camel-k@sha256:21ce00e81ce495c142cbe9611f494cfb26b52b3c09a507bee0572c1e1e3333d7
        - docker.io/apache/camel-k:1.5.1
        version: 1.5.1
      entries:
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.5
    - currentCSV: camel-k-operator.v1.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.6.1
          createdAt: "2021-10-27T21:06:20Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.6.1
        - quay.io/openshift-community-operators/camel-k@sha256:26df9d918e942f7fc637212df87a114b5edd52570da18cc212b3499354cdb993
        version: 1.6.1
      entries:
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.6
    - currentCSV: camel-k-operator.v1.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.7.0
          createdAt: "2021-11-16T10:54:12Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.8.1+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.7.0
        - quay.io/openshift-community-operators/camel-k@sha256:11dac0881f5ed66b5d42b2d69b13aba31cd56e6b32157cb3ce977be197189b79
        version: 1.7.0
      entries:
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.7
    - currentCSV: camel-k-operator.v1.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.8.2
          createdAt: "2022-03-07T07:13:19Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.8.2
        - quay.io/openshift-community-operators/camel-k@sha256:cba8cde86a870b31f7dae9a554f4c496ed81731f91a8e64cd62b0caa88efaa38
        version: 1.8.2
      entries:
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.8
    - currentCSV: camel-k-operator.v1.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.9.2
          createdAt: "2022-05-23T09:05:22Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.9.2
        - quay.io/openshift-community-operators/camel-k@sha256:06d31bb777b37f8f7c8981efc24ca26a2f9c56a1c579243d0c7bdddb34c76a98
        version: 1.9.2
      entries:
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.9
    - currentCSV: camel-k-operator.v2.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.0.1
          createdAt: "2023-09-04T12:32:38Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
          - kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:2.0.1
        - quay.io/openshift-community-operators/camel-k@sha256:d96f1b35ef30d6701f2a52b5e660dbd5378ec82a933afd38d2eb603c9ca084fd
        version: 2.0.1
      entries:
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-2.0
    - currentCSV: camel-k-operator.v2.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "setBody": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationProfile",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "debug"
                },
                "spec": {
                  "traits": {
                    "logging": {
                      "level": "DEBUG"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example-source"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "setBody": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "timer-to-log-example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "log-sink"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world",
                      "period": 2000
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "timer-source"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.9.0
          createdAt: "2025-12-23T11:28:00Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: IntegrationProfile is the Schema for the integrationprofiles
              API
            displayName: Integration Profile
            kind: IntegrationProfile
            name: integrationprofiles.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Pipe is the Schema for the pipes API
            displayName: Pipe
            kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers:
          the easiest way to build and manage your Camel applications on Kubernetes.

          ## Installation

          You may need to specify the container registry where to store the container images created for the Camel applications.
          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          spec:
            build:
              registry:
                address: docker.io/my-org
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step when using Openshift cluster.

          ## Running an Integration

          Run a Camel application on the cluster by creating a sample `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            annotations:
              camel.apache.org/operator.id: camel-k
            name: test
          spec:
            flows:
            - from:
                parameters:
                  period: "1000"
                steps:
                - setBody:
                    simple: Hello Camel from ${routeId}
                - log: ${body}
                uri: timer:yaml
          ```
          Log the result of the running application:
          ```
          kubectl wait --for=condition=ready integration test --timeout=180s
          kubectl logs deployment/test -f
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:2.9.0
        - quay.io/community-operator-pipeline-prod/camel-k@sha256:4c8f4494ede7ef0f6d3564356928e9642571e14eb95ba20d8264325bc4d8c576
        version: 2.9.0
      entries:
      - name: camel-k-operator.v2.9.0
        version: 2.9.0
      - name: camel-k-operator.v2.8.0
        version: 2.8.0
      - name: camel-k-operator.v2.7.0
        version: 2.7.0
      - name: camel-k-operator.v2.6.0
        version: 2.6.0
      - name: camel-k-operator.v2.5.1
        version: 2.5.1
      - name: camel-k-operator.v2.5.0
        version: 2.5.0
      - name: camel-k-operator.v2.4.0
        version: 2.4.0
      - name: camel-k-operator.v2.3.3
        version: 2.3.3
      - name: camel-k-operator.v2.3.2
        version: 2.3.2
      - name: camel-k-operator.v2.3.1
        version: 2.3.1
      - name: camel-k-operator.v2.3.0
        version: 2.3.0
      - name: camel-k-operator.v2.2.0
        version: 2.2.0
      - name: camel-k-operator.v2.1.0
        version: 2.1.0
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-v2
    defaultChannel: stable-v2
    packageName: camel-k
    provider:
      name: The Apache Software Foundation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: openshift-secondary-scheduler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: secondaryscheduleroperator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "SecondaryScheduler",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-secondary-scheduler-operator"
                },
                "spec": {
                  "managementState": "Managed",
                  "schedulerConfig": "secondary-scheduler-config"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/openshift-secondary-scheduler-operator/secondary-scheduler-rhel9-operator@sha256:65253da24ed65e7da75d3b523c459617ce5fc71259673569b05970d2c6e9e65e
          createdAt: 2025/08/24
          description: Runs a secondary scheduler in an OpenShift cluster.
          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: "true"
          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.skipRange: '>=1.4.0 <1.5.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-secondary-scheduler-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/secondary-scheduler-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SecondaryScheduler is the schema for the secondaryschedulers
              API
            displayName: Secondary Scheduler
            kind: SecondaryScheduler
            name: secondaryschedulers.operator.openshift.io
            version: v1
        description: |
          The Secondary Scheduler Operator provides the ability to use a customized scheduler image that was developed using the scheduler plugin framework as a secondary scheduler in OpenShift.

          ## Secondary Scheduler Configuration

          Once the Secondary Scheduler Operator is installed, you can configure the plugins to run for your secondary scheduler.

          The configuration of the secondary scheduler is defined through a config map that wraps the KubeSchedulerConfiguration YAML file in "config.yaml".

          ## Additional Parameters

          Additionally, the following parameters can be configured:

          * `schedulerConfig` - Set the config map configuration for the secondary scheduler.
          * `schedulerImage` - Set the default operand image for the secondary scheduler.
        displayName: Secondary Scheduler Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - secondary
        - scheduling
        - workload
        links:
        - name: Source Code
          url: https://github.com/openshift/secondary-scheduler-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.33.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-secondary-scheduler-operator/secondary-scheduler-rhel9-operator@sha256:65253da24ed65e7da75d3b523c459617ce5fc71259673569b05970d2c6e9e65e
        - registry.redhat.io/openshift-secondary-scheduler-operator/secondary-scheduler-operator-bundle@sha256:a3667f085cb4f043f342d2470471e016fd50ddd4aed83ec88365a01709bc5732
        version: 1.5.0
      entries:
      - name: secondaryscheduleroperator.v1.5.0
        version: 1.5.0
      - name: secondaryscheduleroperator.v1.4.1
        version: 1.4.1
      - name: secondaryscheduleroperator.v1.4.0
        version: 1.4.0
      - name: secondaryscheduleroperator.v1.3.1
        version: 1.3.1
      - name: secondaryscheduleroperator.v1.3.0
        version: 1.3.0
      - name: secondaryscheduleroperator.v1.2.2
        version: 1.2.2
      - name: secondaryscheduleroperator.v1.2.1
        version: 1.2.1
      - name: secondaryscheduleroperator.v1.2.0
        version: 1.2.0
      - name: secondaryscheduleroperator.v1.1.4
        version: 1.1.4
      - name: secondaryscheduleroperator.v1.1.3
        version: 1.1.3
      - name: secondaryscheduleroperator.v1.1.2
        version: 1.1.2
      - name: secondaryscheduleroperator.v1.1.1
        version: 1.1.1
      - name: secondaryscheduleroperator.v1.1.0
        version: 1.1.0
      name: stable
    defaultChannel: stable
    packageName: openshift-secondary-scheduler-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: local-storage-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: local-storage-operator.v4.20.0-202511252120
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "local.storage.openshift.io/v1",
                "kind": "LocalVolume",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "nodeSelector": {
                    "nodeSelectorTerms": [
                      {
                        "matchExpressions": [
                          {
                            "key": "kubernetes.io/hostname",
                            "operator": "In",
                            "values": [
                              "worker-0",
                              "worker-1"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "storageClassDevices": [
                    {
                      "devicePaths": [
                        "/dev/disk/by-id/ata-crucial"
                      ],
                      "fsType": "ext4",
                      "storageClassName": "foobar",
                      "volumeMode": "Filesystem"
                    }
                  ]
                }
              },
              {
                "apiVersion": "local.storage.openshift.io/v1alpha1",
                "kind": "LocalVolumeSet",
                "metadata": {
                  "name": "example-localvolumeset"
                },
                "spec": {
                  "deviceInclusionSpec": {
                    "deviceMechanicalProperties": [
                      "Rotational",
                      "NonRotational"
                    ],
                    "deviceTypes": [
                      "disk"
                    ],
                    "maxSize": "100G",
                    "minSize": "10G"
                  },
                  "maxDeviceCount": 10,
                  "nodeSelector": {
                    "nodeSelectorTerms": [
                      {
                        "matchExpressions": [
                          {
                            "key": "kubernetes.io/hostname",
                            "operator": "In",
                            "values": [
                              "worker-0",
                              "worker-1"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "storageClassName": "example-storageclass",
                  "volumeMode": "Block"
                }
              },
              {
                "apiVersion": "local.storage.openshift.io/v1alpha1",
                "kind": "LocalVolumeDiscovery",
                "metadata": {
                  "name": "auto-discover-devices"
                },
                "spec": {
                  "nodeSelector": {
                    "nodeSelectorTerms": [
                      {
                        "matchExpressions": [
                          {
                            "key": "kubernetes.io/hostname",
                            "operator": "In",
                            "values": [
                              "worker-0",
                              "worker-1"
                            ]
                          }
                        ]
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-local-storage-rhel9-operator@sha256:5c4a51b66e2208caf77f72b7b78019ae6806c7d5aef6969c76ebd7b6c1335149
          createdAt: "2019-08-14T00:00:00Z"
          description: Configure and use local storage volumes.
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type":"olm.maxOpenShiftVersion","value":"4.21"}]'
          olm.skipRange: '>=4.3.0 <4.20.0-202511252120'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-local-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["localvolumediscoveryresults.local.storage.openshift.io"]'
          repository: https://github.com/openshift/local-storage-operator
          support: Red Hat
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Manage local storage volumes for OpenShift
            displayName: Local Volume
            kind: LocalVolume
            name: localvolumes.local.storage.openshift.io
            version: v1
          - description: A Local Volume set allows you to filter a set of storage
              volumes, group them and create a dedicated storage class to consume
              storage from the set of volumes.
            displayName: Local Volume Set
            kind: LocalVolumeSet
            name: localvolumesets.local.storage.openshift.io
            version: v1alpha1
          - description: Discover list of potentially usable disks on the chosen set
              of nodes
            displayName: Local Volume Discovery
            kind: LocalVolumeDiscovery
            name: localvolumediscoveries.local.storage.openshift.io
            version: v1alpha1
          - description: Disc inventory of available disks from selected nodes
            displayName: Local Volume Discovery Result
            kind: LocalVolumeDiscoveryResult
            name: localvolumediscoveryresults.local.storage.openshift.io
            version: v1alpha1
        description: |
          Operator that configures local storage volumes for use in Kubernetes and OpenShift. OpenShift 4.2 and above are the only supported OpenShift versions.
        displayName: Local Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        - local storage
        links:
        - name: Documentation
          url: https://github.com/openshift/local-storage-operator/tree/main/docs
        - name: Source Repository
          url: https://github.com/openshift/local-storage-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:5d7478a62742900e39d7b007dde5375cd06c6076ced6dab69d805f5fcce3f342
        - registry.redhat.io/openshift4/ose-local-storage-diskmaker-rhel9@sha256:11fb666a558fd9bf3afac21146fd229e1bc207d1670d9bb1c2299d8c57b5800e
        - registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel9@sha256:f1343acbe5e8cd47a3ca5a52407356e9403a6ca9cc1a2c81e09aadc5f0619aa2
        - registry.redhat.io/openshift4/ose-local-storage-rhel9-operator@sha256:5c4a51b66e2208caf77f72b7b78019ae6806c7d5aef6969c76ebd7b6c1335149
        - registry.redhat.io/openshift4/ose-local-storage-operator-bundle@sha256:7f14582c0d63f02a3ad9201d8c90c762de2f131d62ce3a3b201f7e8ffdfa3153
        version: 4.20.0-202511252120
      entries:
      - name: local-storage-operator.v4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: local-storage-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: local-storage-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: local-storage-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: local-storage-operator.v4.20.0-202510212154
        version: 4.20.0-202510212154
      - name: local-storage-operator.v4.20.0-202509262224
        version: 4.20.0-202509262224
      name: stable
    defaultChannel: stable
    packageName: local-storage-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Craig Trought
      provider-url: ""
    name: prometheus
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometheusoperator.0.56.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "Prometheus",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "replicas": 2,
                  "serviceAccountName": "prometheus-k8s",
                  "serviceMonitorSelector": {},
                  "ruleSelector": {},
                  "podMonitorSelector": {},
                  "probeSelector": {},
                  "alerting": {
                    "alertmanagers": [
                      {
                        "namespace": "monitoring",
                        "name": "alertmanager-main",
                        "port": "web"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "ServiceMonitor",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "selector": {
                    "matchLabels": {
                      "operated-prometheus": "true"
                    }
                  },
                  "endpoints": [
                    {
                      "port": "web",
                      "interval": "30s"
                    }
                  ]
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "PodMonitor",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "selector": {
                    "matchLabels": {
                      "app": "prometheus"
                    }
                  },
                  "podMetricsEndpoints": [
                    {
                      "port": "web",
                      "interval": "30s"
                    }
                  ]
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "Alertmanager",
                "metadata": {
                  "name": "alertmanager-main"
                },
                "spec": {
                  "replicas": 3,
                  "alertmanagerConfigSelector": {}
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "PrometheusRule",
                "metadata": {
                  "name": "prometheus-example-rules"
                },
                "spec": {
                  "groups": [
                    {
                      "name": "./example.rules",
                      "rules": [
                        {
                          "alert": "ExampleAlert",
                          "expr": "vector(1)"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1alpha1",
                "kind": "AlertmanagerConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "receivers": [
                    {
                      "name": "example"
                    }
                  ],
                  "route": {
                    "receiver": "example"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/prometheus-operator/prometheus-operator:v0.56.3
          createdAt: "2022-05-24T9:40:00Z"
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          repository: https://github.com/prometheus-operator/prometheus-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A running Prometheus instance
            displayName: Prometheus
            kind: Prometheus
            name: prometheuses.monitoring.coreos.com
            version: v1
          - description: A Prometheus Rule configures groups of sequentially evaluated
              recording and alerting rules.
            displayName: Prometheus Rule
            kind: PrometheusRule
            name: prometheusrules.monitoring.coreos.com
            version: v1
          - description: Configures prometheus to monitor a particular k8s service
            displayName: Service Monitor
            kind: ServiceMonitor
            name: servicemonitors.monitoring.coreos.com
            version: v1
          - description: Configures prometheus to monitor a particular pod
            displayName: Pod Monitor
            kind: PodMonitor
            name: podmonitors.monitoring.coreos.com
            version: v1
          - description: Configures an Alertmanager for the namespace
            displayName: Alertmanager
            kind: Alertmanager
            name: alertmanagers.monitoring.coreos.com
            version: v1
          - description: Configures subsections of Alertmanager configuration specific
              to each namespace
            displayName: AlertmanagerConfig
            kind: AlertmanagerConfig
            name: alertmanagerconfigs.monitoring.coreos.com
            version: v1alpha1
          - description: Defines how groups of ingresses and static targets should
              be monitored.
            displayName: Probe
            kind: Probe
            name: probes.monitoring.coreos.com
            version: v1
          - description: Allows recording and alerting rules to be processed across
              multiple Prometheus instances.
            displayName: ThanosRuler
            kind: ThanosRuler
            name: thanosrulers.monitoring.coreos.com
            version: v1
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: k8s@trought.ca
          name: Craig Trought
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Craig Trought
        relatedImages:
        - quay.io/prometheus-operator/prometheus-operator:v0.56.3
        - quay.io/openshift-community-operators/prometheus@sha256:1de089becfcceb3747b3a3ce310c1612861b03446906cab5e981071db10709a9
        version: 0.56.3
      entries:
      - name: prometheusoperator.0.56.3
        version: 0.56.3
      - name: prometheusoperator.0.47.0
        version: 0.47.0
      name: beta
    defaultChannel: beta
    packageName: prometheus
    provider:
      name: Craig Trought
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-dynamodb-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-dynamodb-controller.v1.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dynamodb.services.k8s.aws/v1alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "dynamodb.services.k8s.aws/v1alpha1",
                "kind": "GlobalTable",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "dynamodb.services.k8s.aws/v1alpha1",
                "kind": "Table",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/dynamodb-controller:1.7.0
          createdAt: "2025-11-29T03:42:45Z"
          description: AWS DynamoDB controller is a service controller for managing
            DynamoDB resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup represents the state of an AWS dynamodb Backup resource.
            displayName: Backup
            kind: Backup
            name: backups.dynamodb.services.k8s.aws
            version: v1alpha1
          - description: GlobalTable represents the state of an AWS dynamodb GlobalTable
              resource.
            displayName: GlobalTable
            kind: GlobalTable
            name: globaltables.dynamodb.services.k8s.aws
            version: v1alpha1
          - description: Table represents the state of an AWS dynamodb Table resource.
            displayName: Table
            kind: Table
            name: tables.dynamodb.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon DynamoDB resources in AWS from within your Kubernetes cluster.

          **About Amazon DynamoDB**

          Amazon DynamoDB is a fully managed NoSQL database service that provides fast and predictable performance with seamless scalability. DynamoDB lets you offload the administrative burdens of operating and scaling a distributed database so that you don't have to worry about hardware provisioning, setup and configuration, replication, software patching, or cluster scaling. DynamoDB also offers encryption at rest, which eliminates the operational burden and complexity involved in protecting sensitive data. For more information, see [DynamoDB Encryption at Rest](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/EncryptionAtRest.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon DynamoDB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dynamodb
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon DynamoDB Developer Resources
          url: https://aws.amazon.com/dynamodb/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: dynamodb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-dynamodb-controller@sha256:974e2c7cbe0b9de1106f9a7b95c2d0a38d67114af19e95d729d0231cb6052a21
        - public.ecr.aws/aws-controllers-k8s/dynamodb-controller:1.7.0
        version: 1.7.0
      entries:
      - name: ack-dynamodb-controller.v1.7.0
        version: 1.7.0
      - name: ack-dynamodb-controller.v1.6.1
        version: 1.6.1
      - name: ack-dynamodb-controller.v1.6.0
        version: 1.6.0
      - name: ack-dynamodb-controller.v1.5.2
        version: 1.5.2
      - name: ack-dynamodb-controller.v1.5.1
        version: 1.5.1
      - name: ack-dynamodb-controller.v1.5.0
        version: 1.5.0
      - name: ack-dynamodb-controller.v1.4.10
        version: 1.4.10
      - name: ack-dynamodb-controller.v1.4.9
        version: 1.4.9
      - name: ack-dynamodb-controller.v1.4.7
        version: 1.4.7
      - name: ack-dynamodb-controller.v1.4.6
        version: 1.4.6
      - name: ack-dynamodb-controller.v1.4.5
        version: 1.4.5
      - name: ack-dynamodb-controller.v1.4.4
        version: 1.4.4
      - name: ack-dynamodb-controller.v1.4.3
        version: 1.4.3
      - name: ack-dynamodb-controller.v1.4.2
        version: 1.4.2
      - name: ack-dynamodb-controller.v1.4.1
        version: 1.4.1
      - name: ack-dynamodb-controller.v1.3.0
        version: 1.3.0
      - name: ack-dynamodb-controller.v1.2.23
        version: 1.2.23
      - name: ack-dynamodb-controller.v1.2.22
        version: 1.2.22
      - name: ack-dynamodb-controller.v1.2.21
        version: 1.2.21
      - name: ack-dynamodb-controller.v1.2.20
        version: 1.2.20
      - name: ack-dynamodb-controller.v1.2.15
        version: 1.2.15
      - name: ack-dynamodb-controller.v1.2.14
        version: 1.2.14
      - name: ack-dynamodb-controller.v1.2.13
        version: 1.2.13
      - name: ack-dynamodb-controller.v1.2.12
        version: 1.2.12
      - name: ack-dynamodb-controller.v1.2.11
        version: 1.2.11
      - name: ack-dynamodb-controller.v1.2.9
        version: 1.2.9
      - name: ack-dynamodb-controller.v1.2.8
        version: 1.2.8
      - name: ack-dynamodb-controller.v1.2.6
        version: 1.2.6
      - name: ack-dynamodb-controller.v1.2.5
        version: 1.2.5
      - name: ack-dynamodb-controller.v1.2.4
        version: 1.2.4
      - name: ack-dynamodb-controller.v1.2.2
        version: 1.2.2
      - name: ack-dynamodb-controller.v1.2.1
        version: 1.2.1
      - name: ack-dynamodb-controller.v1.2.0
        version: 1.2.0
      - name: ack-dynamodb-controller.v1.1.1
        version: 1.1.1
      - name: ack-dynamodb-controller.v1.1.0
        version: 1.1.0
      - name: ack-dynamodb-controller.v1.0.3
        version: 1.0.3
      - name: ack-dynamodb-controller.v1.0.2
        version: 1.0.2
      - name: ack-dynamodb-controller.v1.0.1
        version: 1.0.1
      - name: ack-dynamodb-controller.v1.0.0
        version: 1.0.0
      - name: ack-dynamodb-controller.v0.1.10
        version: 0.1.10
      - name: ack-dynamodb-controller.v0.1.9
        version: 0.1.9
      - name: ack-dynamodb-controller.v0.1.8
        version: 0.1.8
      - name: ack-dynamodb-controller.v0.1.7
        version: 0.1.7
      - name: ack-dynamodb-controller.v0.1.6
        version: 0.1.6
      - name: ack-dynamodb-controller.v0.1.5
        version: 0.1.5
      - name: ack-dynamodb-controller.v0.1.4
        version: 0.1.4
      - name: ack-dynamodb-controller.v0.1.3
        version: 0.1.3
      - name: ack-dynamodb-controller.v0.1.1
        version: 0.1.1
      - name: ack-dynamodb-controller.v0.1.0
        version: 0.1.0
      - name: ack-dynamodb-controller.v0.0.20
        version: 0.0.20
      - name: ack-dynamodb-controller.v0.0.19
        version: 0.0.19
      - name: ack-dynamodb-controller.v0.0.18
        version: 0.0.18
      - name: ack-dynamodb-controller.v0.0.17
        version: 0.0.17
      - name: ack-dynamodb-controller.v0.0.16
        version: 0.0.16
      - name: ack-dynamodb-controller.v0.0.15
        version: 0.0.15
      - name: ack-dynamodb-controller.v0.0.14
        version: 0.0.14
      - name: ack-dynamodb-controller.v0.0.13
        version: 0.0.13
      - name: ack-dynamodb-controller.v0.0.12
        version: 0.0.12
      - name: ack-dynamodb-controller.v0.0.11
        version: 0.0.11
      - name: ack-dynamodb-controller.v0.0.10
        version: 0.0.10
      - name: ack-dynamodb-controller.v0.0.9
        version: 0.0.9
      - name: ack-dynamodb-controller.v0.0.8
        version: 0.0.8
      name: alpha
    defaultChannel: alpha
    packageName: ack-dynamodb-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: networkservicemesh.io
      provider-url: networkservicemesh.io
    name: nsm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nsm-operator.v1.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nsm.networkservicemesh.io/v1alpha1",
                "kind": "NSM",
                "metadata": {
                  "name": "nsm-sample",
                  "namespace": "nsm"
                },
                "spec": {
                  "forwarders": [
                    {
                      "image": "ghcr.io/networkservicemesh/cmd-forwarder-vpp:v1.8.0",
                      "type": "vpp"
                    }
                  ],
                  "nsmLogLevel": "TRACE",
                  "nsmPullPolicy": "IfNotPresent",
                  "registry": {
                    "image": "ghcr.io/networkservicemesh/cmd-registry-memory:v1.8.0",
                    "type": "memory"
                  },
                  "version": "v1.8.0",
                  "webhook": {
                    "image": "ghcr.io/networkservicemesh/admission-webhook-k8s:v1.8.0"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: quay.io/acmenezes/nsm-operator:v1.8.0
          createdAt: "2023-03-02T19:36:46Z"
          operatorframework.io/suggested-namespace: nsm
          operators.operatorframework.io/builder: operator-sdk-v1.26.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/networkservicemesh/nsm-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NetworkServiceEndpoint
            name: networkserviceendpoints.networkservicemesh.io
            version: v1
          - kind: NetworkService
            name: networkservices.networkservicemesh.io
            version: v1
          - kind: NSM
            name: nsms.nsm.networkservicemesh.io
            version: v1alpha1
        description: |-
          The Network Service Mesh Operator manages and install network service meshes.

          Check networkservicemesh.io

          Install requirements:

          Before installing the operator it's necessary to have installed [spire](https://github.com/spiffe/spire)

          We have a ready to install yaml file for spire [here](https://github.com/networkservicemesh/nsm-operator/blob/master/config/spire/spire.yaml)
        displayName: nsm-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network
        - service mesh
        links:
        - name: Nsm Operator
          url: https://nsm-operator.domain
        maintainers:
        - email: adcmenezes@gmail.com
          name: Alexandre Menezes
        maturity: alpha
        provider:
          name: networkservicemesh.io
          url: networkservicemesh.io
        relatedImages:
        - quay.io/openshift-community-operators/nsm-operator@sha256:330a930f885dacf65537beb600fe7f428e02687e83778e47dcda3dc2df15ae24
        - quay.io/acmenezes/nsm-operator:v1.8.0
        version: 1.8.0
      entries:
      - name: nsm-operator.v1.8.0
        version: 1.8.0
      name: alpha
    defaultChannel: alpha
    packageName: nsm-operator
    provider:
      name: networkservicemesh.io
      url: networkservicemesh.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com
    name: ibm-security-verify-access-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-security-verify-access-operator.v25.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ibm.com/v1",
                "kind": "IBMSecurityVerifyAccess",
                "metadata": {
                  "name": "ivia-sample"
                },
                "spec": {
                  "image": "icr.io/ivia/ivia-wrp@sha256:c2dd5ec2b362136896e47ccbd0f3ee033af945fc2794ddaf075da603e4d4d7b2",
                  "instance": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: icr.io/isva/verify-access-operator@sha256:ca1d7be14b4dd313d4675f18541b2cc670ea0a0adf3ec87e347e5e20a86bc39c
          createdAt: "2025-05-01T01:27:17Z"
          description: The IBM Verify Identity Access Operator manages the lifecycle
            of IBM Verify Identity Access worker containers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM-Security/verify-access-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBMSecurityVerifyAccess is the Schema for the ibmsecurityverifyaccesses
              API.
            displayName: IBMSecurity Verify Access
            kind: IBMSecurityVerifyAccess
            name: ibmsecurityverifyaccesses.ibm.com
            version: v1
        description: |+
          In a world of highly fragmented access management environments, [IBM Verify Identity Access](https://www.ibm.com/au-en/products/verify-access) helps you simplify your users' access while more securely adopting web, mobile and cloud technologies. This solution helps you strike a balance between usability and security through the use of risk-based access, single sign-on, integrated access management control, identity federation and its mobile multi-factor authentication capability, IBM Verify. Take back control of your access management with IBM Verify Identity Access.

          The IBM Verify Identity Access operator provides lifecycle management of the lightweight containers which are used to protect an environment, namely:
          * [Web Reverse Proxy](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-web-reverse-proxy)
          * [Runtime](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-runtime)
          * [Distributed Session Cache](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-distributed-session-cache)

          The operator will manage the deployment of these lightweight IBM Verify Identity Access worker containers, and also control the rolling restart of these containers when a configuration snapshot is updated.

          See the project [Readme](https://github.com/IBM-Security/verify-access-operator/blob/master/README.md) for further information and details.

        displayName: IBM Verify Identity Access Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - identity and access
        - security
        links:
        - name: Verify Identity Access Product Information
          url: https://www.ibm.com/au-en/products/verify-access
        - name: Verify Identity Access Documentation
          url: https://www.ibm.com/docs/en/sva
        maintainers:
        - email: isamdev@au1.ibm.com
          name: Verify Identity Access Development Team
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: IBM
          url: https://www.ibm.com
        relatedImages:
        - registry.connect.redhat.com/ibm/verify-access-operator@sha256:6e37f565564de371b5797895f3e96e0efd4f592d7d3e899ea8507438bdb60e78
        - icr.io/isva/verify-access-operator@sha256:ca1d7be14b4dd313d4675f18541b2cc670ea0a0adf3ec87e347e5e20a86bc39c
        - icr.io/ivia/ivia-wrp@sha256:c2dd5ec2b362136896e47ccbd0f3ee033af945fc2794ddaf075da603e4d4d7b2
        version: 25.4.0
      entries:
      - name: ibm-security-verify-access-operator.v25.4.0
        version: 25.4.0
      - name: ibm-security-verify-access-operator.v24.12.0
        version: 24.12.0
      name: stable
    defaultChannel: stable
    packageName: ibm-security-verify-access-operator
    provider:
      name: IBM
      url: https://www.ibm.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HPE
      provider-url: ""
    name: hpe-filex-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hpe-filex-csi-operator.v2.6.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "storage.hpe.com/v1",
                "kind": "HPEGreenLakeFileCSIDriver",
                "metadata": {
                  "name": "hpegreenlakefilecsidriver-sample"
                },
                "spec": {
                  "controller": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  },
                  "disableNodeConformance": false,
                  "imagePullPolicy": "IfNotPresent",
                  "images": {
                    "csiAttacher": "registry.k8s.io/sig-storage/csi-attacher@sha256:a399393ff5bd156277c56bae0c08389b1a1b95b7fd6ea44a316ce55e0dd559d7",
                    "csiControllerDriver": "quay.io/hpestorage/filex-csi-driver@sha256:b7f960bbf47277f6469889aba79d4c9866712130e28f32fc48f2ef3a5ca99ef7",
                    "csiNodeDriver": "quay.io/hpestorage/filex-csi-driver@sha256:b7f960bbf47277f6469889aba79d4c9866712130e28f32fc48f2ef3a5ca99ef7",
                    "csiNodeDriverRegistrar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a",
                    "csiNodeInit": "quay.io/hpestorage/filex-csi-init@sha256:2d867eefb2331490c30b8ff4d9ebe50090ec94f72d9431b0738e7dfba838fbbe",
                    "csiProvisioner": "registry.k8s.io/sig-storage/csi-provisioner@sha256:e5900dc98b0d02f317ea9572f3824983c47a2fb5d5fe2b160aedf1b99c14c9e4",
                    "csiResizer": "registry.k8s.io/sig-storage/csi-resizer@sha256:ab774734705a906561e15b67f6a96538f3ad520335d636f793aaafe87a3b5200",
                    "csiSnapshotter": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d"
                  },
                  "kubeletRootDir": "/var/lib/kubelet",
                  "node": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/hpestorage/filex-csi-driver-operator@sha256:90a269dcbbcbdef9c69cf46242454de641fd009c6d7daf3f9b04deec4a2301e5
          createdAt: "2025-12-16T18:39:19Z"
          description: A Container Storage Interface (CSI) driver for HPE GreenLake
            File Storage.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=1.0.0 <2.6.4'
          operatorframework.io/suggested-namespace: hpe-storage
          operatorhub.io/ui-metadata-max-k8s-version: "1.34"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/hpe-storage/co-deployments
          support: HPE
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HPE GreenLake File Storage CSI Driver
            displayName: HPEGreenLakeFileCSIDriver
            kind: HPEGreenLakeFileCSIDriver
            name: hpegreenlakefilecsidrivers.storage.hpe.com
            version: v1
        description: |
          The HPE GreenLake File Storage CSI Operator deploys the  HPE GreenLake File Storage CSI Driver on OpenShift for dynamic  provisioning of persistent volumes.
          Please refer to our CSI driver [documentation](https://scod.hpedev.io/filex_csi_driver/index.html) for supported HPE platforms and full list of supported CSI features.
          ## Installation
          Refer to the HPE GreenLake File Storage CSI Operator [documentation](https://scod.hpedev.io/filex_csi_driver/deployment.html#operator).
        displayName: HPE GreenLake File Storage CSI Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - HPE
        - HPE CSI
        - HPE Storage
        - CSI
        links:
        - name: Documentation
          url: https://scod.hpedev.io/filex_csi_driver/index.html
        maintainers:
        - email: dev-hi-containers@hpe.com
          name: HPE Storage Containers Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: HPE
        relatedImages:
        - registry.connect.redhat.com/hpestorage/filex-csi-driver-operator-bundle-ocp@sha256:fa96e762f81868adbd5b6fc8668928f7b7a90f631485da7ce0b2b081af4b0520
        - registry.k8s.io/sig-storage/csi-attacher@sha256:a399393ff5bd156277c56bae0c08389b1a1b95b7fd6ea44a316ce55e0dd559d7
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:e5900dc98b0d02f317ea9572f3824983c47a2fb5d5fe2b160aedf1b99c14c9e4
        - registry.connect.redhat.com/hpestorage/filex-csi-driver-operator@sha256:90a269dcbbcbdef9c69cf46242454de641fd009c6d7daf3f9b04deec4a2301e5
        - registry.k8s.io/sig-storage/csi-resizer@sha256:ab774734705a906561e15b67f6a96538f3ad520335d636f793aaafe87a3b5200
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d
        - quay.io/hpestorage/filex-csi-driver@sha256:b7f960bbf47277f6469889aba79d4c9866712130e28f32fc48f2ef3a5ca99ef7
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a
        - quay.io/hpestorage/filex-csi-init@sha256:2d867eefb2331490c30b8ff4d9ebe50090ec94f72d9431b0738e7dfba838fbbe
        version: 2.6.4
      entries:
      - name: hpe-filex-csi-operator.v2.6.4
        version: 2.6.4
      name: stable
    defaultChannel: stable
    packageName: hpe-filex-csi-operator
    provider:
      name: HPE
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cognitoidentityprovider-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cognitoidentityprovider-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cognitoidentityprovider-controller:1.2.0
          createdAt: "2025-11-29T03:40:53Z"
          description: AWS Cognito Identity Provider controller is a service controller
            for managing Cognito Identity Provider resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: UserPool represents the state of an AWS cognitoidentityprovider
              UserPool resource.
            displayName: UserPool
            kind: UserPool
            name: userpools.cognitoidentityprovider.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Cognito Identity Provider resources in AWS from within your Kubernetes cluster.

          **About Amazon Cognito Identity Provider**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Cognito Identity Provider
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cognitoidentityprovider
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Cognito Identity Provider Developer Resources
          url: https://aws.amazon.com/Cognito Identity Provider/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cognitoidentityprovider maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-cognitoidentityprovider-controller@sha256:be19b3ce74cca998e3dc7e5c14b09846883456161d1c41479acd17e9c7bf3f91
        - public.ecr.aws/aws-controllers-k8s/cognitoidentityprovider-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-cognitoidentityprovider-controller.v1.2.0
        version: 1.2.0
      - name: ack-cognitoidentityprovider-controller.v1.1.2
        version: 1.1.2
      - name: ack-cognitoidentityprovider-controller.v1.1.1
        version: 1.1.1
      - name: ack-cognitoidentityprovider-controller.v1.1.0
        version: 1.1.0
      - name: ack-cognitoidentityprovider-controller.v1.0.12
        version: 1.0.12
      name: alpha
    defaultChannel: alpha
    packageName: ack-cognitoidentityprovider-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Ricardo Maraschini
      provider-url: https://github.com/ricardomaraschini/tagger
    name: tagger
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tagger.v2.1.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tagger.dev/v1beta1",
                "kind": "Tag",
                "metadata": {
                  "name": "nginx"
                },
                "spec": {
                  "from": "docker.io/library/nginx:latest",
                  "generation": 0,
                  "mirror": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools
          containerImage: quay.io/tagger/operator:v2.1.17
          createdAt: "2021-08-02T00:00:00Z"
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/ricardomaraschini/tagger
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tag is a Container Image representation as a Custom Resource.
            displayName: Tag
            kind: Tag
            name: tags.tagger.dev
            version: v1beta1
        description: |-
          A Container Image Orchestrator. Adds mirroring and Container Image manipulation capabilities
          to a Kubernetes cluster.

          Keeping track of all Container Images in use in a Kubernetes cluster is a complicated task.
          Container Images may come from numerous different Image Registries. In some cases, controlling
          how a stable version of a given Container Image looks escapes the user's authority. To add to
          this, Container Runtimes rely on remote registries (from the cluster's point of view) when
          obtaining Container Images, potentially making the process of pulling their blobs (manifests,
          config, and layers) slower.

          The notion of indexing Container Image versions by Tags is helpful. Still, it does not provide
          users with the right confidence to always use the intended Container Image – today's "latest"
          tag might not be tomorrow's "latest" tag. In addition to that, these Image Registries allow
          access to Container Images by their Manifest content's hash (i.e., usually sha256), which gives
          users the confidence at a cost in semantics.

          When releasing a new version of an application to Push and to Deploy are split into two
          distinct steps. Both the pusher and the puller need access to the same Image Registry, adding
          complexity.  Credentials are one example of the concerns. Other factors may pop up when
          running, for instance, in an air-gapped environment, where the cluster may not reach external
          Image Registries.

          Tagger aims to overcome these caveats by providing an image management abstraction layer. For
          instance, by providing a direct mapping between a Container Image tag (e.g., "latest") and its
          correspondent Manifest content's hash, users can then refer to the Container Image by its tag
          – and be sure to use that specific version. More than that, when allied with an Internal Image
          Registry, Tagger can also automatically mirror Container Images into the cluster.

          While using Tagger, Deployments can refer to Container Images by an arbitrarily defined name,
          such as "my-app", and Tagger will make sure that they use the right Container Image through its
          internal "tag to Manifest content's hash" mapping.

          For each new "release" of a given Container Image, Tagger creates a new Generation for it,
          making it easy to roll back to previously pushed "releases" of the same Container Image in case
          of problems.

          When integrated with an Internal Registry, Tagger allows users to push or pull Images directly
          without requiring an external Image Registry. It works as a layer between the user and the
          Internal Registry. Every time a new "release" of Container Images is pushed, all Deployments
          are updated automatically. Users don't need to know about the Internal Registry existence, if
          they are logged-in to the Kubernetes cluster, they can obtain old or provide new "Generations"
          for a Container Image.

          In summary, Tagger mirrors remote Container Images into a Kubernetes cluster indexing them in
          different Generations (allowing easy navigation through these multiple Generations), provides
          an interface allowing users to pull and push images directly to the Kubernetes cluster and
          provides full integration with Kubernetes Deployments (automatic triggers new rollouts on
          Container Image changes).

          By default Tagger won't be able to mirror until you provide it with a mirror registry config.
          After install you can configure the mirror by editing the Secret mirror-registry-config in the
          operator namespace. Follow below an example of a valid mirror-registry-config secret (you gonna
          have to provide your own address, username, password, etc).

          ```yaml
          apiVersion: v1
          kind: Secret
          metadata:
            name: mirror-registry-config
          data:
            address: cmVnaXN0cnkuaW8=
            username: YWRtaW4=
            password: d2hhdCB3ZXJlIHlvdSB0aGlua2luZz8K
            token: YW4gb3B0aW9uYWwgdG9rZW4gZm9yIHRva2VuIGJhc2VkIGF1dGg=
            insecure: dHJ1ZQ==
          ```

          To make pushing an pulling images easier you should go ahead and grab the `kubectl` plugin
          available [here](https://github.com/ricardomaraschini/tagger/releases). You can download a
          full version of the README with usage examples and configuration options
          [here](https://github.com/ricardomaraschini/tagger/releases/download/v2.1.17/README.pdf).
        displayName: Tagger
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tagger
        - mirroring
        - image
        links:
        - name: Documentation
          url: https://github.com/ricardomaraschini/tagger/releases/download/v2.1.17/README.pdf
        - name: Plugin (kubectl)
          url: https://github.com/ricardomaraschini/tagger/releases/tag/v2.1.17
        maintainers:
        - email: rmarasch@redhat.com
          name: Ricardo Maraschini
        maturity: alpha
        provider:
          name: Ricardo Maraschini
          url: https://github.com/ricardomaraschini/tagger
        relatedImages:
        - quay.io/openshift-community-operators/tagger@sha256:a528169d305dbc2bc69794437665e4f940ea708dfd957c58d69bc79316b68612
        - quay.io/tagger/operator:v2.1.17
        version: 2.1.17
      entries:
      - name: tagger.v2.1.17
        version: 2.1.17
      name: alpha
    defaultChannel: alpha
    packageName: tagger
    provider:
      name: Ricardo Maraschini
      url: https://github.com/ricardomaraschini/tagger
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: mtc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mtc-operator.v1.7.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigrationController",
                  "metadata": {
                    "name": "migration-controller",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "azure_resource_group": "",
                    "cluster_name": "host",
                    "migration_velero": true,
                    "migration_controller": true,
                    "migration_ui": true,
                    "migration_log_reader": true,
                    "olm_managed": true,
                    "restic_timeout": "1h",
                    "mig_pv_limit": "100",
                    "mig_pod_limit": "100",
                    "mig_namespace_limit": "10"
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageMigration",
                  "metadata": {
                    "name": "directimagemigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageStreamMigration",
                  "metadata": {
                    "name": "directimagestreammigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigAnalytic",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "plan": {
                      "name": "foo",
                      "namespace": "openshift-migration"
                    },
                    "analyzeK8SResources": true,
                    "analyzeImageCount": true,
                    "analyzePVCapacity": true
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigCluster",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectVolumeMigration",
                  "metadata": {
                    "name": "direct",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                      "kind": "DirectVolumeMigrationProgress",
                      "metadata": {
                        "name": "direct-progress",
                        "namespace": "openshift-migration"
                      },
                      "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigPlan",
                  "metadata": {
                    "name": "migplan",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigMigration",
                  "metadata": {
                    "name": "migmigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigStorage",
                  "metadata": {
                    "name": "migstorage",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:d8232366bb3abee6454fcbff6842ec4deaa60cde762f3868eae6218c888cbfe7
          createdAt: "2024-09-04T17:53:42Z"
          description: Facilitates migration of container workloads from OpenShift
            3.x to OpenShift 4.x
          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.skipRange: '>=1.5.0 <1.7.17'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-migration
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:b95a14eda5ae107ba3747995f1ea74a6422f9e5c20d685505e954ca7630b810d
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/mig-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: a request to migrate PVCs from a set of namespaces directly
              to a target
            displayName: DirectVolumeMigration
            kind: DirectVolumeMigration
            name: directvolumemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate watch the progress of rsync pod migrating
              a PVC to a target
            displayName: DirectVolumeMigrationProgress
            kind: DirectVolumeMigrationProgress
            name: directvolumemigrationprogresses.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a set of namespaces
              directly to a target
            displayName: DirectImageMigration
            kind: DirectImageMigration
            name: directimagemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a single imagestream
              directly to a target
            displayName: DirectImageStreamMigration
            kind: DirectImageStreamMigration
            name: directimagestreammigrations.migration.openshift.io
            version: v1alpha1
          - description: A request to Analyze a MigPlan and its namespaces
            displayName: MigAnalytic
            kind: MigAnalytic
            name: miganalytics.migration.openshift.io
            version: v1alpha1
          - description: A cluster defined for migration
            displayName: MigCluster
            kind: MigCluster
            name: migclusters.migration.openshift.io
            version: v1alpha1
          - description: A migration process
            displayName: MigMigration
            kind: MigMigration
            name: migmigrations.migration.openshift.io
            version: v1alpha1
          - description: A migration plan
            displayName: MigPlan
            kind: MigPlan
            name: migplans.migration.openshift.io
            version: v1alpha1
          - description: A migration contoller deployment
            displayName: MigrationController
            kind: MigrationController
            name: migrationcontrollers.migration.openshift.io
            version: v1alpha1
          - description: A migration hook
            displayName: MigHook
            kind: MigHook
            name: mighooks.migration.openshift.io
            version: v1alpha1
          - description: A migration storage location
            displayName: MigStorage
            kind: MigStorage
            name: migstorages.migration.openshift.io
            version: v1alpha1
        description: |-
          The Migration Toolkit for Containers Operator enables installation of the application migration tool components.

          After you have installed the Operator, you can install components by creating a MigrationController CR.

          By default, the Operator installs the following components on an OpenShift Container Platform 4 target cluster:

          * velero and restic, to back up data on the source cluster and restore it on the target cluster
          * mig-controller, to coordinate the backup and restore processes
          * mig-ui, the web console for managing migrations

          If you experience any issues or have feature requests, please file an [issue](https://github.com/konveyor/mig-operator/issues)

          For more information, see the [OpenShift Container Platform Migration Guide](https://docs.openshift.com/container-platform/latest/migration_toolkit_for_containers/about-mtc.html).
        displayName: Migration Toolkit for Containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - crane
        - mtc
        links:
        - name: Migrations
          url: https://github.com/konveyor/mig-controller
        - name: Documentation
          url: https://docs.openshift.com/container-platform/latest/migration_toolkit_for_containers/about-mtc.html
        - name: Crane Operator
          url: https://github.com/konveyor/mig-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhmtc/openshift-migration-ui-rhel8@sha256:1b8008a16a0f53c09ecc5a219964194689a1aeb01acee8313aa49a9c26259429
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-aws-rhel8@sha256:c001dc96a1478a58f30461ab018e40bede13a78f3cdce869a70dcb8b9bba22b1
        - registry.redhat.io/rhmtc/openshift-velero-plugin-rhel8@sha256:92a3162c705537147005a065cdddbb410e1863d80c08d8b0f27b7ff5588500cd
        - registry.redhat.io/rhmtc/openshift-migration-velero-restic-restore-helper-rhel8@sha256:b137e1345038c9e566767f24cce60c03ec278f5a2efc28fa08e0bd8bfa016486
        - registry.redhat.io/rhmtc/openshift-migration-velero-rhel8@sha256:07cafb83ba90378c1fa60338cf951a9d7145ec245710637e90fdb508875dcc45
        - registry.redhat.io/rhmtc/openshift-migration-controller-rhel8@sha256:dc10544e1bb24883f38373a0445944745282e5a69ed1744f428f98871a7a39c9
        - registry.redhat.io/rhmtc/openshift-migration-log-reader-rhel8@sha256:8fbfffb0bc3adfb4d72961dad381e1daba414bf4a7084f03b5208f6be4191ceb
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:d8232366bb3abee6454fcbff6842ec4deaa60cde762f3868eae6218c888cbfe7
        - registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:b95a14eda5ae107ba3747995f1ea74a6422f9e5c20d685505e954ca7630b810d
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-gcp-rhel8@sha256:035855c3d4b32a29232846d73dc398e81f941fd90a03e33241ca06f6e80b2204
        - registry.redhat.io/rhmtc/openshift-migration-hook-runner-rhel8@sha256:a539064234088a4ee13b8a9666ca9507208fe38189ee9b8b673a38a58aa75599
        - registry.redhat.io/rhmtc/openshift-migration-registry-rhel8@sha256:31b3658dd79c18111c21e99aea52cc198f8e95b458a1a4f8d2bfc4d21e9bdacb
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:f86e96edb0418811df328debdee93b4a51cf7f651134ee35e9c50b9dbfc29fd8
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-microsoft-azure-rhel8@sha256:084f1e54ef0d7f457d5a7cfc57b567ad8d85237c12f707c82f7a30a54e3652ba
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:1d86075469312e84f3d16379efcd6130ec9e8b23a1343e3945f071d82beff6e3
        version: 1.7.17
      entries:
      - name: mtc-operator.v1.7.17
        version: 1.7.17
      - name: mtc-operator.v1.7.16
        version: 1.7.16
      - name: mtc-operator.v1.7.15
        version: 1.7.15
      - name: mtc-operator.v1.7.13
        version: 1.7.13
      - name: mtc-operator.v1.7.12
        version: 1.7.12
      - name: mtc-operator.v1.7.11
        version: 1.7.11
      - name: mtc-operator.v1.7.10
        version: 1.7.10
      - name: mtc-operator.v1.7.9
        version: 1.7.9
      - name: mtc-operator.v1.7.8
        version: 1.7.8
      - name: mtc-operator.v1.7.7
        version: 1.7.7
      - name: mtc-operator.v1.7.6
        version: 1.7.6
      - name: mtc-operator.v1.7.5
        version: 1.7.5
      - name: mtc-operator.v1.7.4
        version: 1.7.4
      - name: mtc-operator.v1.7.3
        version: 1.7.3
      - name: mtc-operator.v1.7.2
        version: 1.7.2
      - name: mtc-operator.v1.7.1
        version: 1.7.1
      - name: mtc-operator.v1.7.0
        version: 1.7.0
      name: release-v1.7
    - currentCSV: mtc-operator.v1.8.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigrationController",
                  "metadata": {
                    "name": "migration-controller",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "azure_resource_group": "",
                    "cluster_name": "host",
                    "migration_velero": true,
                    "migration_controller": true,
                    "migration_ui": true,
                    "migration_log_reader": true,
                    "restic_timeout": "1h",
                    "mig_pv_limit": "100",
                    "mig_pod_limit": "100",
                    "mig_namespace_limit": "10"
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageMigration",
                  "metadata": {
                    "name": "directimagemigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageStreamMigration",
                  "metadata": {
                    "name": "directimagestreammigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigAnalytic",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "plan": {
                      "name": "foo",
                      "namespace": "openshift-migration"
                    },
                    "analyzeK8SResources": true,
                    "analyzeImageCount": true,
                    "analyzePVCapacity": true
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigCluster",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectVolumeMigration",
                  "metadata": {
                    "name": "direct",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                      "kind": "DirectVolumeMigrationProgress",
                      "metadata": {
                        "name": "direct-progress",
                        "namespace": "openshift-migration"
                      },
                      "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigPlan",
                  "metadata": {
                    "name": "migplan",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigMigration",
                  "metadata": {
                    "name": "migmigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigStorage",
                  "metadata": {
                    "name": "migstorage",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration, OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:886c3a3f417f48a1ac20d901f4eedca7271548e3d03c72f54fd172e8c025d45c
          createdAt: "2019-07-25T10:21:00+00:00"
          description: Facilitates migration of container workloads from OpenShift
            3.x to OpenShift 4.x
          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: "true"
          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.skipRange: '>=0.0.0 <1.8.11'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-migration
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/mig-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: a request to migrate PVCs from a set of namespaces directly
              to a target
            displayName: DirectVolumeMigration
            kind: DirectVolumeMigration
            name: directvolumemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate watch the progress of rsync pod migrating
              a PVC to a target
            displayName: DirectVolumeMigrationProgress
            kind: DirectVolumeMigrationProgress
            name: directvolumemigrationprogresses.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a set of namespaces
              directly to a target
            displayName: DirectImageMigration
            kind: DirectImageMigration
            name: directimagemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a single imagestream
              directly to a target
            displayName: DirectImageStreamMigration
            kind: DirectImageStreamMigration
            name: directimagestreammigrations.migration.openshift.io
            version: v1alpha1
          - description: A request to Analyze a MigPlan and its namespaces
            displayName: MigAnalytic
            kind: MigAnalytic
            name: miganalytics.migration.openshift.io
            version: v1alpha1
          - description: A cluster defined for migration
            displayName: MigCluster
            kind: MigCluster
            name: migclusters.migration.openshift.io
            version: v1alpha1
          - description: A migration process
            displayName: MigMigration
            kind: MigMigration
            name: migmigrations.migration.openshift.io
            version: v1alpha1
          - description: A migration plan
            displayName: MigPlan
            kind: MigPlan
            name: migplans.migration.openshift.io
            version: v1alpha1
          - description: A migration contoller deployment
            displayName: MigrationController
            kind: MigrationController
            name: migrationcontrollers.migration.openshift.io
            version: v1alpha1
          - description: A migration hook
            displayName: MigHook
            kind: MigHook
            name: mighooks.migration.openshift.io
            version: v1alpha1
          - description: A migration storage location
            displayName: MigStorage
            kind: MigStorage
            name: migstorages.migration.openshift.io
            version: v1alpha1
        description: |
          The Migration Toolkit for Containers Operator enables installation of the application migration tool components.

          After you have installed the Operator, you can install components by creating a MigrationController CR.

          By default, the Operator installs the following components on an OpenShift Container Platform 4 target cluster:

          * velero and restic, to back up data on the source cluster and restore it on the target cluster
          * mig-controller, to coordinate the backup and restore processes
          * mig-ui, the web console for managing migrations

          If you experience any issues or have feature requests, please file an [issue](https://github.com/konveyor/mig-operator/issues)

          For more information, see the [OpenShift Container Platform Migration Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.4/html-single/migration/index).
        displayName: Migration Toolkit for Containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        links:
        - name: Migrations
          url: https://github.com/konveyor/mig-controller
        - name: Documentation
          url: https://github.com/konveyor/mig-operator
        - name: Migration Toolkit for Containers Operator
          url: https://github.com/konveyor/mig-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-mtc-rhel8@sha256:93aeafa4df87367cc6326048489a0d7642b9ba13091c6ae4a3d04d45a7e6871c
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:da5bea3530580d60fe593f03927ce2c561155fa914961aa4152fac8fde3b40a7
        - registry.redhat.io/rhmtc/openshift-migration-hook-runner-rhel8@sha256:dff69cdcc2e20a608562e6ab14700e00125473adbd0486c1af456a9839f8b58a
        - registry.redhat.io/rhmtc/openshift-migration-registry-rhel8@sha256:bd436fd06b62f3434a7aa3e38f92f20def19e5a816eb81010f83049efab6beff
        - registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:9b7b4fbde975ee49c20442b7b410b900f60aa2856856f89ba20d4700716bf49d
        - registry.redhat.io/rhmtc/openshift-migration-openvpn-rhel8@sha256:ab050267fa89bdc400ea9ba8434acd11a0cced415e5d52512adc2db713bcdd2c
        - registry.redhat.io/rhmtc/openshift-migration-controller-rhel8@sha256:84492722125eab381eeed49aaed92b44c763b8f06cb2e2859031f486df4437de
        - registry.redhat.io/rhmtc/openshift-migration-log-reader-rhel8@sha256:6d8c28c61ae5cfd2b870226f150248efa1f7ea4c538c5740587cf3f046ebd5d0
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:886c3a3f417f48a1ac20d901f4eedca7271548e3d03c72f54fd172e8c025d45c
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:977e9f27271b53d72c53e38f44d01cb1fb7e8ce57ec715b8e7efa3ed66d91118
        - registry.redhat.io/rhmtc/openshift-migration-ui-rhel8@sha256:55c9af6872d429051c9467678387d4a23095e95bd254c9ea0f0d0580c132a13c
        version: 1.8.11
      entries:
      - name: mtc-operator.v1.8.11
        version: 1.8.11
      - name: mtc-operator.v1.8.10
        version: 1.8.10
      - name: mtc-operator.v1.8.9
        version: 1.8.9
      - name: mtc-operator.v1.8.6
        version: 1.8.6
      - name: mtc-operator.v1.8.5
        version: 1.8.5
      - name: mtc-operator.v1.8.4
        version: 1.8.4
      - name: mtc-operator.v1.8.3
        version: 1.8.3
      - name: mtc-operator.v1.8.0
        version: 1.8.0
      name: release-v1.8
    defaultChannel: release-v1.8
    packageName: mtc-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: cluster-kube-descheduler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clusterkubedescheduleroperator.4.13.0-202309181427
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "KubeDescheduler",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-kube-descheduler-operator"
                },
                "spec": {
                  "deschedulingIntervalSeconds": 3600,
                  "managementState": "Managed",
                  "mode": "Predictive",
                  "profiles": ["AffinityAndTaints"]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-cluster-kube-descheduler-operator@sha256:ba0b71ff2a30a069b4a8a8f3c1e0898aaadc6db112e4cc12aff7c77ced7a0405
          createdAt: 2021/10/13
          description: An operator to run descheduler in Openshift cluster.
          olm.skipRange: '>=4.10.0 <4.13.0-202309181427'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/cluster-kube-descheduler-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubeDescheduler is the Schema for the deschedulers API
            displayName: Kube Descheduler
            kind: KubeDescheduler
            name: kubedeschedulers.operator.openshift.io
            version: v1
        description: |
          The Kube Descheduler Operator provides the ability to evict a running pod so that the pod can be rescheduled onto a more suitable node.

          There are several situations where descheduling can benefit your cluster:

          * Nodes are underutilized or overutilized.
          * Pod and node affinity requirements, such as taints or labels, have changed and the original scheduling decisions are no longer appropriate for certain nodes.
          * Node failure requires pods to be moved.
          * New nodes are added to clusters.

          ## Descheduler Profiles

          Once the operator is installed, you can configure one or more profiles to identify pods to evict. The scheduler will schedule the replacement of the evicted pods.

          The following profiles are available:

          * AffinityAndTaints
          * TopologyAndDuplicates
          * SoftTopologyAndDuplicates
          * LifecycleAndUtilization
          * EvictPodsWithPVC
          * EvictPodsWithLocalStorage

          These profiles are documented in detail in the [descheduler operator README](https://github.com/openshift/cluster-kube-descheduler-operator#profiles).

          ## Additional Parameters

          In addition to the profiles, the following parameters can be configured:

          * `deschedulingIntervalSeconds` - Set the number of seconds between descheduler runs. A value of `0` in this field runs the descheduler once and exits.
          * `profileCustomizations` - Allows certain profile parameters to be tweaked, such as `podLifetime` (see [README](https://github.com/openshift/cluster-kube-descheduler-operator#profile-customizations) for more info).
        displayName: Kube Descheduler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - scheduling
        - descheduler
        - workload
        links:
        - name: Source Code
          url: https://github.com/openshift/cluster-kube-descheduler-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-cluster-kube-descheduler-operator-bundle@sha256:b473fba287414d3ccb09aaabc64f463af2c912c322ca2c41723020b216d98d14
        - registry.redhat.io/openshift4/ose-cluster-kube-descheduler-operator@sha256:ba0b71ff2a30a069b4a8a8f3c1e0898aaadc6db112e4cc12aff7c77ced7a0405
        - registry.redhat.io/openshift4/ose-descheduler@sha256:45dc69ad93ab50bdf9ce1bb79f6d98f849e320db68af30475b10b7f5497a1b13
        version: 4.13.0-202309181427
      entries:
      - name: clusterkubedescheduleroperator.4.13.0-202309181427
        version: 4.13.0-202309181427
      name: "4.13"
    - currentCSV: clusterkubedescheduleroperator.v5.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "KubeDescheduler",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-kube-descheduler-operator"
                },
                "spec": {
                  "deschedulingIntervalSeconds": 3600,
                  "managementState": "Managed",
                  "mode": "Predictive",
                  "profiles": ["AffinityAndTaints"]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/kube-descheduler-operator/kube-descheduler-rhel9-operator@sha256:a4280076232eb36193781d6b25561fba909061efd03a02c114512506f6c3c775
          createdAt: 2025/12/04
          description: An operator to run descheduler in Openshift cluster.
          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: "true"
          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.skipRange: '>=5.2.0 <5.3.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-kube-descheduler-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/cluster-kube-descheduler-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubeDescheduler is the Schema for the deschedulers API
            displayName: Kube Descheduler
            kind: KubeDescheduler
            name: kubedeschedulers.operator.openshift.io
            version: v1
        description: |
          The Kube Descheduler Operator provides the ability to evict a running pod so that the pod can be rescheduled onto a more suitable node.

          There are several situations where descheduling can benefit your cluster:

          * Nodes are underutilized or overutilized.
          * Pod and node affinity requirements, such as taints or labels, have changed and the original scheduling decisions are no longer appropriate for certain nodes.
          * Node failure requires pods to be moved.
          * New nodes are added to clusters.

          ## Descheduler Profiles

          Once the operator is installed, you can configure one or more profiles to identify pods to evict. The scheduler will schedule the replacement of the evicted pods.

          The following profiles are available:

          * AffinityAndTaints
          * TopologyAndDuplicates
          * SoftTopologyAndDuplicates
          * LifecycleAndUtilization
          * LongLifecycle
          * CompactAndScale
          * EvictPodsWithPVC
          * EvictPodsWithLocalStorage

          These profiles are documented in detail in the [descheduler operator README](https://github.com/openshift/cluster-kube-descheduler-operator#profiles).

          ## Additional Parameters

          In addition to the profiles, the following parameters can be configured:

          * `deschedulingIntervalSeconds` - Set the number of seconds between descheduler runs. A value of `0` in this field runs the descheduler once and exits.
          * `mode` - Configures the descheduler to either evict pods or to simulate the eviction.
          * `profileCustomizations` - Allows certain profile parameters to be tweaked, such as `podLifetime` (see [README](https://github.com/openshift/cluster-kube-descheduler-operator#profile-customizations) for more info).
          * `evictionLimits` - Restricts the number of evictions during each descheduling run.
        displayName: Kube Descheduler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - scheduling
        - descheduler
        - workload
        links:
        - name: Source Code
          url: https://github.com/openshift/cluster-kube-descheduler-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.33.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/kube-descheduler-operator/descheduler-rhel9@sha256:e9019ca15608d3d48a68b97283ca07db1260bb92bd81a500f7d987a485cd7a1e
        - registry.redhat.io/kube-descheduler-operator/kube-descheduler-rhel9-operator@sha256:a4280076232eb36193781d6b25561fba909061efd03a02c114512506f6c3c775
        - registry.redhat.io/kube-descheduler-operator/kube-descheduler-operator-bundle@sha256:c0ebb8c7fbaa325fef3d530da8bee7ea8773aa082c9b16f174c41ca4465ced24
        version: 5.3.1
      entries:
      - name: clusterkubedescheduleroperator.v5.3.1
        version: 5.3.1
      - name: clusterkubedescheduleroperator.v5.3.0
        version: 5.3.0
      - name: clusterkubedescheduleroperator.v5.2.1
        version: 5.2.1
      - name: clusterkubedescheduleroperator.v5.2.0
        version: 5.2.0
      - name: clusterkubedescheduleroperator.v5.1.4
        version: 5.1.4
      - name: clusterkubedescheduleroperator.v5.1.3
        version: 5.1.3
      - name: clusterkubedescheduleroperator.v5.1.2
        version: 5.1.2
      - name: clusterkubedescheduleroperator.v5.1.1
        version: 5.1.1
      - name: clusterkubedescheduleroperator.v5.1.0
        version: 5.1.0
      - name: clusterkubedescheduleroperator.v5.0.1
        version: 5.0.1
      - name: clusterkubedescheduleroperator.4.14.0-202311021650
        version: 4.14.0-202311021650
      - name: clusterkubedescheduleroperator.4.14.0-202310201027
        version: 4.14.0-202310201027
      name: stable
    defaultChannel: stable
    packageName: cluster-kube-descheduler-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-zookeeper-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: zookeeper-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/zookeeper-operator@sha256:8186ceb867021df47c8affafa4648fa52a55e2ba10c15be14561520aabddd94c
          description: Stackable Operator for Apache ZooKeeper
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/zookeeper-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for ZookeeperClusterSpec via
              `CustomResource`
            displayName: zookeeperclusters.zookeeper.stackable.tech
            kind: ZookeeperCluster
            name: zookeeperclusters.zookeeper.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for ZookeeperZnodeSpec via `CustomResource`
            displayName: zookeeperznodes.zookeeper.stackable.tech
            kind: ZookeeperZnode
            name: zookeeperznodes.zookeeper.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache ZooKeeper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - zookeeper
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/zookeeper-operator@sha256:8186ceb867021df47c8affafa4648fa52a55e2ba10c15be14561520aabddd94c
        - registry.connect.redhat.com/stackable/stackable-apache-zookeeper-operator@sha256:a2d289bf7c2c8efec5ce5afc79a0a2971fe9a525e0b0b68c2cd2b44e7852d8db
        version: 25.11.0
      entries:
      - name: zookeeper-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-zookeeper-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app: kube-green
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: kube-green Community
      provider-url: https://kube-green.dev
    name: kube-green
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kube-green.v0.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kube-green.com/v1alpha1",
                "kind": "SleepInfo",
                "metadata": {
                  "labels": {
                    "app": "kube-green"
                  },
                  "name": "sleepinfo-sample"
                },
                "spec": {
                  "excludeRef": [
                    {
                      "apiVersion": "apps/v1",
                      "kind": "Deployment",
                      "name": "api-gateway"
                    }
                  ],
                  "sleepAt": "20:00",
                  "suspendCronJobs": true,
                  "timeZone": "Europe/Rome",
                  "wakeUpAt": "08:00",
                  "weekdays": "1-5"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          containerImage: docker.io/kubegreen/kube-green:0.5.2
          createdAt: "2023-10-07T15:15:08Z"
          description: Suspend your pods when no-one's using them to save energy and
            restore when necessary
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kube-green/kube-green
          support: kube-green Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SleepInfo is the Schema for the sleepinfos API
            displayName: SleepInfo
            kind: SleepInfo
            name: sleepinfos.kube-green.com
            version: v1alpha1
        description: |
          ## About this Operator

          [kube-green](https://kube-green.dev) shuts down (some of) your resources when you don't need them, reducing the consumption of resources of the cluster.

          Install this operator and apply the SleepInfo CRD to stop your dev namespaces from running during weekends, nights or when it is not necessary.
          See the [docs](https://kube-green.dev/docs/getting-started/) for more information.
          This operator is responsible to suspend and restart pods at specific times, defined by the SleepInfo CRD.

          An example of SleepInfo:

          ```yaml
          apiVersion: kube-green.com/v1alpha1
          kind: SleepInfo
          metadata:
            name: working-hours
          spec:
            weekdays: "1-5"
            sleepAt: "20:00"
            wakeUpAt: "08:00"
            timeZone: "Europe/Rome"
          ```

          This configuration stop pods everyday from monday to friday at 20:00 and restore them at 8:00.
          In this way, your cluster nodes could downscale, producing less CO2 and saving money.
        displayName: kube-green
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - green
        - green software
        - resources
        - downscale
        - autoscale
        - climate change
        links:
        - name: Homepage
          url: https://kube-green.dev
        - name: Source Code
          url: https://github.com/kube-green/kube-green
        maintainers:
        - email: bianchidavide12+kubegreen@gmail.com
          name: Davide
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: kube-green Community
          url: https://kube-green.dev
        relatedImages:
        - docker.io/kubegreen/kube-green:0.5.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.14.1
        - quay.io/openshift-community-operators/kube-green@sha256:e0c9f5ecdef1f7172af098f20cce17afebbedf02c0e0bd516d4d6aae736d1b27
        version: 0.5.2
      entries:
      - name: kube-green.v0.5.2
        version: 0.5.2
      - name: kube-green.v0.5.1
        version: 0.5.1
      - name: kube-green.v0.5.0
        version: 0.5.0
      - name: kube-green.v0.4.1
        version: 0.4.1
      - name: kube-green.v0.4.0
        version: 0.4.0
      - name: kube-green.v0.3.1
        version: 0.3.1
      - name: kube-green.v0.3.0
        version: 0.3.0
      name: alpha
    defaultChannel: alpha
    packageName: kube-green
    provider:
      name: kube-green Community
      url: https://kube-green.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhods-prometheus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhods-prometheus-operator.4.10.0
      currentCSVDesc:
        annotations:
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:370f2fa849f8045964e30c3a4d34be022f419d243b0cf37c2c81ea19faaab4a8
          createdAt: 21-04-15T23:43:00Z
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          repository: https://github.com/prometheus-operator/prometheus-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:370f2fa849f8045964e30c3a4d34be022f419d243b0cf37c2c81ea19faaab4a8
        - registry.redhat.io/rhods/odh-prometheus-bundle-rhel8@sha256:d3767059a2f45ca57f31df1dccb2849e19ca2d3ec697ae5de84dbc6d8eae497c
        version: 4.10.0
      entries:
      - name: rhods-prometheus-operator.4.10.0
        version: 4.10.0
      name: beta
    defaultChannel: beta
    packageName: rhods-prometheus-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: www.redhat.com
    name: compliance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: compliance-operator.v0.1.32
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan"
                },
                "spec": {
                  "content": "ssg-rhcos4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan"
                },
                "spec": {
                  "content": "ssg-ocp4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate",
                  "scanType": "Platform"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceSuite",
                "metadata": {
                  "name": "example-compliancesuite"
                },
                "spec": {
                  "autoApplyRemediations": false,
                  "scans": [
                    {
                      "content": "ssg-rhcos4-ds.xml",
                      "contentImage": "registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c",
                      "name": "workers-scan",
                      "nodeSelector": {
                        "node-role.kubernetes.io/worker": ""
                      },
                      "profile": "xccdf_org.ssgproject.content_profile_moderate"
                    },
                    {
                      "content": "ssg-ocp4-ds.xml",
                      "contentImage": "registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c",
                      "name": "platform-scan",
                      "profile": "xccdf_org.ssgproject.content_profile_moderate",
                      "scanType": "Platform"
                    }
                  ],
                  "schedule": "0 1 * * *"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ProfileBundle",
                "metadata": {
                  "name": "ocp4"
                },
                "spec": {
                  "contentFile": "ssg-ocp4-ds.xml",
                  "contentImage": "registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "autoApplyRemediations": false,
                "debug": true,
                "kind": "ScanSetting",
                "metadata": {
                  "name": "my-companys-constraints"
                },
                "rawResultStorage": {
                  "rotation": 10,
                  "size": "2Gi"
                },
                "roles": [
                  "worker",
                  "master"
                ],
                "schedule": "0 1 * * *"
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ScanSettingBinding",
                "metadata": {
                  "name": "nist-moderate"
                },
                "profiles": [
                  {
                    "apiGroup": "compliance.openshift.io/v1alpha1",
                    "kind": "Profile",
                    "name": "rhcos4-moderate"
                  }
                ],
                "settingsRef": {
                  "apiGroup": "compliance.openshift.io/v1alpha1",
                  "kind": "ScanSetting",
                  "name": "default"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "TailoredProfile",
                "metadata": {
                  "name": "example-tailoredprofile"
                },
                "spec": {
                  "disableRules": [
                    {
                      "name": "ocp4-file-permissions-node-config",
                      "rationale": "This breaks X application."
                    },
                    {
                      "name": "ocp4-account-disable-post-pw-expiration",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-accounts-no-uid-except-zero",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chown",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmodat",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchown",
                      "rationale": "testing this"
                    }
                  ],
                  "extends": "ocp4-moderate",
                  "setValues": [
                    {
                      "name": "ocp4-var-selinux-state",
                      "rationale": "trolling dwalsh",
                      "value": "permissive"
                    }
                  ],
                  "title": "My little profile"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.17 <0.1.32'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-compliance
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          repository: https://github.com/openshift/compliance-operator
          support: Red Hat Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ComplianceCheckResult represent a result of a single compliance
              "test"
            kind: ComplianceCheckResult
            name: compliancecheckresults.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceRemediation represents a remediation that can be
              applied to the cluster to fix the found issues.
            kind: ComplianceRemediation
            name: complianceremediations.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceScan represents a scan with a certain configuration
              that will be applied to objects of a certain entity in the host. These
              could be nodes that apply to a certain nodeSelector, or the cluster
              itself.
            kind: ComplianceScan
            name: compliancescans.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceSuite represents a set of scans that will be applied
              to the cluster. These should help deployers achieve a certain compliance
              target.
            kind: ComplianceSuite
            name: compliancesuites.compliance.openshift.io
            version: v1alpha1
          - description: ProfileBundle is the Schema for the profilebundles API
            kind: ProfileBundle
            name: profilebundles.compliance.openshift.io
            version: v1alpha1
          - description: Profile is the Schema for the profiles API
            kind: Profile
            name: profiles.compliance.openshift.io
            version: v1alpha1
          - description: Rule is the Schema for the rules API
            kind: Rule
            name: rules.compliance.openshift.io
            version: v1alpha1
          - description: ScanSettingBinding is the Schema for the scansettingbindings
              API
            kind: ScanSettingBinding
            name: scansettingbindings.compliance.openshift.io
            version: v1alpha1
          - description: ScanSetting is the Schema for the scansettings API
            kind: ScanSetting
            name: scansettings.compliance.openshift.io
            version: v1alpha1
          - description: TailoredProfile is the Schema for the tailoredprofiles API
            kind: TailoredProfile
            name: tailoredprofiles.compliance.openshift.io
            version: v1alpha1
          - description: Variable describes a tunable in the XCCDF profile
            kind: Variable
            name: variables.compliance.openshift.io
            version: v1alpha1
        description: An operator which runs OpenSCAP and allows you to keep your cluster
          compliant with the security benchmark you need.
        displayName: Compliance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - security
        - compliance
        - openscap
        - audit
        links:
        - name: Compliance Operator upstream repo
          url: https://github.com/openshift/compliance-operator
        - name: Compliance Operator documentation
          url: https://docs.openshift.com/container-platform/4.7/security/compliance_operator/compliance-operator-understanding.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/compliance-rhel8-operator-metadata@sha256:1c06868bce1f5d7145ef658bfcc284c44011aa24a17166aa124547b38f2259e4
        - registry.redhat.io/openshift4/compliance-rhel8-operator@sha256:ed68a0574ddeaf7d676403cd843f28cb586894f35dbb3ca5e06a5264bd42f030
        - registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c
        - registry.redhat.io/openshift4/compliance-openscap-rhel8@sha256:867c6d4205653d8a954d234cbaf470313009eb983d4f455fb45f49c4a7764422
        version: 0.1.32
      entries:
      - name: compliance-operator.v0.1.32
        version: 0.1.32
      name: "4.7"
    - currentCSV: compliance-operator.v0.1.61
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-node"
                },
                "spec": {
                  "content": "ssg-rhcos4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-platform"
                },
                "spec": {
                  "content": "ssg-ocp4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate",
                  "scanType": "Platform"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceSuite",
                "metadata": {
                  "name": "example-compliancesuite"
                },
                "spec": {
                  "autoApplyRemediations": false,
                  "scans": [
                    {
                      "content": "ssg-rhcos4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b",
                      "name": "workers-scan",
                      "nodeSelector": {
                        "node-role.kubernetes.io/worker": ""
                      },
                      "profile": "xccdf_org.ssgproject.content_profile_moderate"
                    },
                    {
                      "content": "ssg-ocp4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b",
                      "name": "platform-scan",
                      "profile": "xccdf_org.ssgproject.content_profile_moderate",
                      "scanType": "Platform"
                    }
                  ],
                  "schedule": "0 1 * * *"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ProfileBundle",
                "metadata": {
                  "name": "ocp4"
                },
                "spec": {
                  "contentFile": "ssg-ocp4-ds.xml",
                  "contentImage": "registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "autoApplyRemediations": false,
                "debug": true,
                "kind": "ScanSetting",
                "metadata": {
                  "name": "my-companys-constraints"
                },
                "rawResultStorage": {
                  "rotation": 10,
                  "size": "2Gi"
                },
                "roles": [
                  "worker",
                  "master"
                ],
                "schedule": "0 1 * * *"
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ScanSettingBinding",
                "metadata": {
                  "name": "nist-moderate"
                },
                "profiles": [
                  {
                    "apiGroup": "compliance.openshift.io/v1alpha1",
                    "kind": "Profile",
                    "name": "rhcos4-moderate"
                  }
                ],
                "settingsRef": {
                  "apiGroup": "compliance.openshift.io/v1alpha1",
                  "kind": "ScanSetting",
                  "name": "default"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "TailoredProfile",
                "metadata": {
                  "name": "example-tailoredprofile"
                },
                "spec": {
                  "description": "Example of a tailoredProfile that extends OCP4 FedRAMP Moderate",
                  "disableRules": [
                    {
                      "name": "ocp4-file-permissions-node-config",
                      "rationale": "This breaks X application."
                    },
                    {
                      "name": "ocp4-account-disable-post-pw-expiration",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-accounts-no-uid-except-zero",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chown",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmodat",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchown",
                      "rationale": "testing this"
                    }
                  ],
                  "extends": "ocp4-moderate",
                  "setValues": [
                    {
                      "name": "ocp4-var-selinux-state",
                      "rationale": "trolling dwalsh",
                      "value": "permissive"
                    }
                  ],
                  "title": "My little profile"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.17 <0.1.61'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-compliance
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/compliance-operator
          support: Red Hat Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ComplianceCheckResult represent a result of a single compliance
              "test"
            kind: ComplianceCheckResult
            name: compliancecheckresults.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceRemediation represents a remediation that can be
              applied to the cluster to fix the found issues.
            displayName: Compliance Remediation
            kind: ComplianceRemediation
            name: complianceremediations.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceScan represents a scan with a certain configuration
              that will be applied to objects of a certain entity in the host. These
              could be nodes that apply to a certain nodeSelector, or the cluster
              itself.
            displayName: Compliance Scan
            kind: ComplianceScan
            name: compliancescans.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceSuite represents a set of scans that will be applied
              to the cluster. These should help deployers achieve a certain compliance
              target.
            displayName: Compliance Suite
            kind: ComplianceSuite
            name: compliancesuites.compliance.openshift.io
            version: v1alpha1
          - description: ProfileBundle is the Schema for the profilebundles API
            displayName: Profile Bundle
            kind: ProfileBundle
            name: profilebundles.compliance.openshift.io
            version: v1alpha1
          - description: Profile is the Schema for the profiles API
            kind: Profile
            name: profiles.compliance.openshift.io
            version: v1alpha1
          - description: Rule is the Schema for the rules API
            kind: Rule
            name: rules.compliance.openshift.io
            version: v1alpha1
          - description: ScanSettingBinding is the Schema for the scansettingbindings
              API
            displayName: Scan Setting Binding
            kind: ScanSettingBinding
            name: scansettingbindings.compliance.openshift.io
            version: v1alpha1
          - description: ScanSetting is the Schema for the scansettings API
            kind: ScanSetting
            name: scansettings.compliance.openshift.io
            version: v1alpha1
          - description: TailoredProfile is the Schema for the tailoredprofiles API
            displayName: Tailored Profile
            kind: TailoredProfile
            name: tailoredprofiles.compliance.openshift.io
            version: v1alpha1
          - description: Variable describes a tunable in the XCCDF profile
            kind: Variable
            name: variables.compliance.openshift.io
            version: v1alpha1
        description: An operator which runs OpenSCAP and allows you to keep your cluster
          compliant with the security benchmark you need.
        displayName: Compliance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - compliance
        - openscap
        - audit
        links:
        - name: Compliance Operator upstream repo
          url: https://github.com/openshift/compliance-operator
        - name: Compliance Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/compliance_operator/compliance-operator-understanding.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b
        - registry.redhat.io/compliance/openshift-compliance-openscap-rhel8@sha256:83ad3113964ec48c5cf28315d923adb6edb95e45960e2756665d617dcd9b2e47
        - registry.redhat.io/compliance/openshift-compliance-operator-bundle@sha256:8a2194d8d26dff03ec53ac0ab93c62c268e48675079a88db18bb14a977a391be
        - registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:5578e2225365ac1c15e4c189c5c7a8d14fd3fd26189414b36028f7f0879bb1dc
        version: 0.1.61
      entries:
      - name: compliance-operator.v0.1.61
        version: 0.1.61
      name: release-0.1
    - currentCSV: compliance-operator.v1.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-node"
                },
                "spec": {
                  "content": "ssg-rhcos4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-platform"
                },
                "spec": {
                  "content": "ssg-ocp4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate",
                  "scanType": "Platform"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceSuite",
                "metadata": {
                  "name": "example-compliancesuite"
                },
                "spec": {
                  "autoApplyRemediations": false,
                  "scans": [
                    {
                      "content": "ssg-rhcos4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77",
                      "name": "workers-scan",
                      "nodeSelector": {
                        "node-role.kubernetes.io/worker": ""
                      },
                      "profile": "xccdf_org.ssgproject.content_profile_moderate"
                    },
                    {
                      "content": "ssg-ocp4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77",
                      "name": "platform-scan",
                      "profile": "xccdf_org.ssgproject.content_profile_moderate",
                      "scanType": "Platform"
                    }
                  ],
                  "schedule": "0 1 * * *"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ProfileBundle",
                "metadata": {
                  "name": "ocp4"
                },
                "spec": {
                  "contentFile": "ssg-ocp4-ds.xml",
                  "contentImage": "registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "autoApplyRemediations": false,
                "debug": true,
                "kind": "ScanSetting",
                "metadata": {
                  "name": "my-companys-constraints"
                },
                "rawResultStorage": {
                  "rotation": 10,
                  "size": "2Gi"
                },
                "roles": [
                  "worker",
                  "master"
                ],
                "schedule": "0 1 * * *"
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ScanSettingBinding",
                "metadata": {
                  "name": "nist-moderate"
                },
                "profiles": [
                  {
                    "apiGroup": "compliance.openshift.io/v1alpha1",
                    "kind": "Profile",
                    "name": "rhcos4-moderate"
                  }
                ],
                "settingsRef": {
                  "apiGroup": "compliance.openshift.io/v1alpha1",
                  "kind": "ScanSetting",
                  "name": "default"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "TailoredProfile",
                "metadata": {
                  "name": "example-tailoredprofile"
                },
                "spec": {
                  "description": "Example of a tailoredProfile that extends OCP4 FedRAMP Moderate",
                  "disableRules": [
                    {
                      "name": "ocp4-file-permissions-node-config",
                      "rationale": "This breaks X application."
                    },
                    {
                      "name": "ocp4-account-disable-post-pw-expiration",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-accounts-no-uid-except-zero",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chown",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmodat",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchown",
                      "rationale": "testing this"
                    }
                  ],
                  "extends": "ocp4-moderate",
                  "setValues": [
                    {
                      "name": "ocp4-var-selinux-state",
                      "rationale": "trolling dwalsh",
                      "value": "permissive"
                    }
                  ],
                  "title": "My little profile"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          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: "true"
          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"
          must-gather-image: registry.redhat.io/compliance/openshift-compliance-must-gather-rhel8@sha256:83ea492a55fb2f2bc423ce7d1ccd31644de8ce492e9d273da47a93413fc9282a
          olm.skipRange: '>=0.1.17 <1.8.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-compliance
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ComplianceAsCode/compliance-operator
          support: Red Hat Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ComplianceCheckResult represent a result of a single compliance
              "test"
            kind: ComplianceCheckResult
            name: compliancecheckresults.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceRemediation represents a remediation that can be
              applied to the cluster to fix the found issues.
            displayName: Compliance Remediation
            kind: ComplianceRemediation
            name: complianceremediations.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceScan represents a scan with a certain configuration
              that will be applied to objects of a certain entity in the host. These
              could be nodes that apply to a certain nodeSelector, or the cluster
              itself.
            displayName: Compliance Scan
            kind: ComplianceScan
            name: compliancescans.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceSuite represents a set of scans that will be applied
              to the cluster. These should help deployers achieve a certain compliance
              target.
            displayName: Compliance Suite
            kind: ComplianceSuite
            name: compliancesuites.compliance.openshift.io
            version: v1alpha1
          - description: CustomRule represents a rule that can be used with TailoredProfiles
              to execute arbitrary checks against the cluster.
            displayName: Custom Rule
            kind: CustomRule
            name: customrules.compliance.openshift.io
            version: v1alpha1
          - description: ProfileBundle is the Schema for the profilebundles API
            displayName: Profile Bundle
            kind: ProfileBundle
            name: profilebundles.compliance.openshift.io
            version: v1alpha1
          - description: Profile is the Schema for the profiles API
            kind: Profile
            name: profiles.compliance.openshift.io
            version: v1alpha1
          - description: Rule is the Schema for the rules API
            kind: Rule
            name: rules.compliance.openshift.io
            version: v1alpha1
          - description: ScanSettingBinding is the Schema for the scansettingbindings
              API
            displayName: Scan Setting Binding
            kind: ScanSettingBinding
            name: scansettingbindings.compliance.openshift.io
            version: v1alpha1
          - description: ScanSetting is the Schema for the scansettings API
            kind: ScanSetting
            name: scansettings.compliance.openshift.io
            version: v1alpha1
          - description: TailoredProfile is the Schema for the tailoredprofiles API
            displayName: Tailored Profile
            kind: TailoredProfile
            name: tailoredprofiles.compliance.openshift.io
            version: v1alpha1
          - description: Variable describes a tunable in the XCCDF profile
            kind: Variable
            name: variables.compliance.openshift.io
            version: v1alpha1
        description: An operator which runs OpenSCAP and allows you to keep your cluster
          compliant with the security benchmark you need.
        displayName: Compliance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - compliance
        - openscap
        - audit
        links:
        - name: Compliance Operator upstream repository
          url: https://github.com/ComplianceAsCode/compliance-operator
        - name: Compliance Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/compliance_operator/co-overview.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/compliance/openshift-compliance-operator-bundle@sha256:0bc0b7a20ce3c6303a45a699f44d2b90597b6a62846e89a5bca285b3228a9a52
        - registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:7b84f08a7f0a808bd92c9540dd5b976b8aa20ed426ce2d646131123e13df60c2
        - registry.redhat.io/compliance/openshift-compliance-must-gather-rhel8@sha256:83ea492a55fb2f2bc423ce7d1ccd31644de8ce492e9d273da47a93413fc9282a
        - registry.redhat.io/compliance/openshift-compliance-openscap-rhel8@sha256:26cbd3cedf1b49bf26d638014ca2fb2196e5a2ed915234721b4ac8679e399011
        - registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77
        version: 1.8.0
      entries:
      - name: compliance-operator.v1.8.0
        version: 1.8.0
      - name: compliance-operator.v1.7.1
        version: 1.7.1
      - name: compliance-operator.v1.7.0
        version: 1.7.0
      - name: compliance-operator.v1.6.2
        version: 1.6.2
      - name: compliance-operator.v1.6.1
        version: 1.6.1
      - name: compliance-operator.v1.6.0
        version: 1.6.0
      - name: compliance-operator.v1.5.1
        version: 1.5.1
      - name: compliance-operator.v1.5.0
        version: 1.5.0
      - name: compliance-operator.v1.4.1
        version: 1.4.1
      - name: compliance-operator.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: compliance-operator
    provider:
      name: Red Hat Inc.
      url: www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-organizations-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-organizations-controller.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "organizations.services.k8s.aws/v1alpha1",
                "kind": "OrganizationalUnit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/organizations-controller:1.2.1
          createdAt: "2025-12-03T21:49:08Z"
          description: AWS Organizations controller is a service controller for managing
            Organizations resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Account represents the state of an AWS organizations Account
              resource.
            displayName: Account
            kind: Account
            name: accounts.organizations.services.k8s.aws
            version: v1alpha1
          - description: OrganizationalUnit represents the state of an AWS organizations
              OrganizationalUnit resource.
            displayName: OrganizationalUnit
            kind: OrganizationalUnit
            name: organizationalunits.organizations.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Organizations resources in AWS from within your Kubernetes cluster.

          **About Amazon Organizations**

          With AWS Organizations you can perform account management activities at scale by consolidating multiple AWS accounts into a single organization. Consolidating accounts simplifies how you use other AWS services. You can leverage the multi-account management services available in AWS Organizations with select AWS services to perform tasks on all accounts that are members of your organization.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Organizations
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - organizations
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Organizations Developer Resources
          url: https://aws.amazon.com/organizations/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: organizations maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-organizations-controller@sha256:e3df4e6f7406e6d94dff44f05b84a1423b446f865b1ef7e5311516b58646291e
        - public.ecr.aws/aws-controllers-k8s/organizations-controller:1.2.1
        version: 1.2.1
      entries:
      - name: ack-organizations-controller.v1.2.1
        version: 1.2.1
      - name: ack-organizations-controller.v1.2.0
        version: 1.2.0
      - name: ack-organizations-controller.v1.1.2
        version: 1.1.2
      - name: ack-organizations-controller.v1.1.1
        version: 1.1.1
      - name: ack-organizations-controller.v1.0.13
        version: 1.0.13
      - name: ack-organizations-controller.v1.0.11
        version: 1.0.11
      - name: ack-organizations-controller.v1.0.10
        version: 1.0.10
      - name: ack-organizations-controller.v1.0.9
        version: 1.0.9
      - name: ack-organizations-controller.v1.0.8
        version: 1.0.8
      - name: ack-organizations-controller.v1.0.7
        version: 1.0.7
      - name: ack-organizations-controller.v1.0.6
        version: 1.0.6
      - name: ack-organizations-controller.v1.0.5
        version: 1.0.5
      - name: ack-organizations-controller.v1.0.4
        version: 1.0.4
      - name: ack-organizations-controller.v1.0.1
        version: 1.0.1
      - name: ack-organizations-controller.v1.0.0
        version: 1.0.0
      - name: ack-organizations-controller.v0.0.10
        version: 0.0.10
      - name: ack-organizations-controller.v0.0.9
        version: 0.0.9
      - name: ack-organizations-controller.v0.0.8
        version: 0.0.8
      - name: ack-organizations-controller.v0.0.7
        version: 0.0.7
      - name: ack-organizations-controller.v0.0.6
        version: 0.0.6
      name: alpha
    defaultChannel: alpha
    packageName: ack-organizations-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Palo Alto Networks
      provider-url: ""
    name: pcc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pcc-operator.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pcc.paloaltonetworks.com/v1alpha1",
                "kind": "Console",
                "metadata": {
                  "name": "pcc-console",
                  "namespace": "twistlock"
                },
                "spec": {
                  "consoleConfig": {
                    "serviceType": "ClusterIP"
                  },
                  "namespace": "twistlock",
                  "version": "21_08_520"
                }
              },
              {
                "apiVersion": "pcc.paloaltonetworks.com/v1alpha1",
                "kind": "ConsoleDefender",
                "metadata": {
                  "name": "pcc-consoledefender",
                  "namespace": "twistlock"
                },
                "spec": {
                  "consoleConfig": {
                    "serviceType": "ClusterIP"
                  },
                  "defenderConfig": {
                    "docker": false
                  },
                  "namespace": "twistlock",
                  "version": "21_08_520"
                }
              },
              {
                "apiVersion": "pcc.paloaltonetworks.com/v1alpha1",
                "kind": "Defender",
                "metadata": {
                  "name": "pcc-defender",
                  "namespace": "twistlock"
                },
                "spec": {
                  "defenderConfig": {
                    "clusterAddress": "twistlock-console.example.com",
                    "consoleAddress": "https://twistlock-console.example.com:8083",
                    "docker": false
                  },
                  "namespace": "twistlock",
                  "version": "21_08_520"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: quay.io/prismacloud/pcc-operator@sha256:b8fcfbd6c51286c874e00db1bd35523386cec406fa4050ef44c0a887730cf9b8
          createdAt: "2021-11-15"
          description: Deploy Prisma Cloud Compute for cloud-native security in your
            clusters
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator
          support: pcc-integrations@paloaltonetworks.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Install the Prisma Cloud Compute Console and Defenders
            displayName: Console and Defenders
            kind: ConsoleDefender
            name: consoledefenders.pcc.paloaltonetworks.com
            version: v1alpha1
          - description: Install the Prisma Cloud Compute Console
            displayName: Console
            kind: Console
            name: consoles.pcc.paloaltonetworks.com
            version: v1alpha1
          - description: Install Prisma Cloud Compute Defenders
            displayName: Defenders
            kind: Defender
            name: defenders.pcc.paloaltonetworks.com
            version: v1alpha1
        description: |
          ## Features
          - Deploy Console
              - Create initial local administrator user
              - Add license
          - Deploy Defenders
          - Support for offline deployments
          - Upgrade Console
          - Upgrade Defenders

          ## Installation
          See the [Prisma Cloud Compute Operator documentation](https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator) for installation guides.

          ## Support
          This operator is available "as is," and should be seen as community-supported; however, Palo Alto Networks will continue contributing whenever possible.
          Palo Alto Networks does not provide technical support or help with using or troubleshooting the operator through normal support channels.
          We encourage you to open GitHub [issues](https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator/issues) and [pull requests](https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator/pulls) to track bugs and feature requests.

          ## Other links
          [Prisma Cloud Compute product documentation](https://docs.paloaltonetworks.com/prisma/prisma-cloud/prisma-cloud-admin-compute.html)

          [Prisma Cloud Compute API documentation](https://prisma.pan.dev/api/cloud/cwpp)
        displayName: Prisma Cloud Compute Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - palo
        - palo alto
        - palo alto networks
        - paloalto
        - twistlock
        - compute
        - prisma
        - prisma cloud
        - prisma cloud compute
        - security
        - image
        - images
        - container
        - containers
        - docker
        - podman
        - vulnerability
        - vulnerabilities
        - compliance
        - runtime
        - scan
        - scanning
        - monitor
        - monitoring
        - alert
        - alerting
        links:
        - name: Prisma Cloud
          url: https://www.paloaltonetworks.com/prisma/cloud
        maintainers:
        - email: pcc-integrations@paloaltonetworks.com
          name: Wyatt Gill
        maturity: alpha
        provider:
          name: Palo Alto Networks
        relatedImages:
        - quay.io/openshift-community-operators/pcc-operator@sha256:e99a466ddb52ad44c435ccf952754d685744fb5b7b7e4cf77dd542e530e4f968
        - quay.io/prismacloud/pcc-operator@sha256:b8fcfbd6c51286c874e00db1bd35523386cec406fa4050ef44c0a887730cf9b8
        version: 0.2.0
      entries:
      - name: pcc-operator.v0.2.0
        version: 0.2.0
      name: stable
    defaultChannel: stable
    packageName: pcc-operator
    provider:
      name: Palo Alto Networks
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: security-profiles-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: security-profiles-operator.v0.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "AppArmorProfile",
                "metadata": {
                  "annotations": {
                    "description": "Block writing to any files in the disk."
                  },
                  "name": "test-profile"
                },
                "spec": {
                  "abstract": {
                    "filesystem": {
                      "readOnlyPaths": [],
                      "readWritePaths": [],
                      "writeOnlyPaths": []
                    }
                  }
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "SecurityProfilesOperatorDaemon",
                "metadata": {
                  "name": "spod",
                  "namespace": "security-profiles-operator"
                },
                "spec": {
                  "enableAppArmor": false,
                  "enableLogEnricher": false,
                  "enableSelinux": false
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "ProfileRecording",
                "metadata": {
                  "name": "test-recording"
                },
                "spec": {
                  "kind": "SeccompProfile",
                  "podSelector": {
                    "matchLabels": {
                      "app": "alpine"
                    }
                  },
                  "recorder": "bpf"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "ProfileBinding",
                "metadata": {
                  "name": "profile-binding"
                },
                "spec": {
                  "image": "nginx:1.19.1",
                  "profileRef": {
                    "kind": "SeccompProfile",
                    "name": "profile-allow-unsafe"
                  }
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha2",
                "kind": "RawSelinuxProfile",
                "metadata": {
                  "name": "errorlogger"
                },
                "spec": {
                  "policy": "(blockinherit container)\n(allow process var_log_t ( dir ( open read getattr lock search ioctl add_name remove_name write ))) \n(allow process var_log_t ( file ( getattr read write append ioctl lock map open create  ))) \n(allow process var_log_t ( sock_file ( getattr read write append open  ))) \n"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "Blocks all syscalls."
                  },
                  "name": "profile-block-all"
                },
                "spec": {
                  "defaultAction": "SCMP_ACT_ERRNO"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "UNSAFE: Allows all syscalls whilst logging their use. Similar to running as unconfined in terms of enforcement."
                  },
                  "name": "profile-complain-unsafe"
                },
                "spec": {
                  "defaultAction": "SCMP_ACT_LOG"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "UNSAFE: Allows all syscalls. Similar to running as unconfined as it provides no enforcement."
                  },
                  "name": "profile-allow-unsafe"
                },
                "spec": {
                  "defaultAction": "SCMP_ACT_ALLOW"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "Enables complain mode whilst blocking high-risk syscalls. Some essential syscalls are allowed to decrease log noise."
                  },
                  "name": "profile-complain-block-high-risk"
                },
                "spec": {
                  "architectures": [
                    "SCMP_ARCH_X86_64",
                    "SCMP_ARCH_PPC64LE"
                  ],
                  "defaultAction": "SCMP_ACT_LOG",
                  "syscalls": [
                    {
                      "action": "SCMP_ACT_ALLOW",
                      "names": [
                        "exit",
                        "exit_group",
                        "futex",
                        "nanosleep"
                      ]
                    },
                    {
                      "action": "SCMP_ACT_ERRNO",
                      "names": [
                        "acct",
                        "add_key",
                        "bpf",
                        "clock_adjtime",
                        "clock_settime",
                        "create_module",
                        "delete_module",
                        "finit_module",
                        "get_kernel_syms",
                        "get_mempolicy",
                        "init_module",
                        "ioperm",
                        "iopl",
                        "kcmp",
                        "kexec_file_load",
                        "kexec_load",
                        "keyctl",
                        "lookup_dcookie",
                        "mbind",
                        "mount",
                        "move_pages",
                        "name_to_handle_at",
                        "nfsservctl",
                        "open_by_handle_at",
                        "perf_event_open",
                        "personality",
                        "pivot_root",
                        "process_vm_readv",
                        "process_vm_writev",
                        "ptrace",
                        "query_module",
                        "quotactl",
                        "reboot",
                        "request_key",
                        "set_mempolicy",
                        "setns",
                        "settimeofday",
                        "stime",
                        "swapoff",
                        "swapon",
                        "_sysctl",
                        "sysfs",
                        "umount2",
                        "umount",
                        "unshare",
                        "uselib",
                        "userfaultfd",
                        "ustat",
                        "vm86old",
                        "vm86"
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha2",
                "kind": "SelinuxProfile",
                "metadata": {
                  "name": "errorlogger"
                },
                "spec": {
                  "allow": {
                    "var_log_t": {
                      "dir": [
                        "open",
                        "read",
                        "getattr",
                        "lock",
                        "search",
                        "ioctl",
                        "add_name",
                        "remove_name",
                        "write"
                      ],
                      "file": [
                        "getattr",
                        "read",
                        "write",
                        "append",
                        "ioctl",
                        "lock",
                        "map",
                        "open",
                        "create"
                      ],
                      "sock_file": [
                        "getattr",
                        "read",
                        "write",
                        "append",
                        "open"
                      ]
                    }
                  },
                  "inherit": [
                    {
                      "name": "container"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          createdAt: "2025-02-25T13:34:54Z"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.4.1 <0.9.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-security-profiles
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ProfileBinding is the Schema for the profilebindings API.
            displayName: Profile Binding
            kind: ProfileBinding
            name: profilebindings.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - description: ProfileRecording is the Schema for the profilerecordings
              API.
            displayName: Profile Recording
            kind: ProfileRecording
            name: profilerecordings.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - description: SeccompProfile is a cluster level specification for a seccomp
              profile. See https://github.com/opencontainers/runtime-spec/blob/master/config-linux.md#seccomp
            displayName: Seccomp Profile
            kind: SeccompProfile
            name: seccompprofiles.security-profiles-operator.x-k8s.io
            version: v1beta1
          - description: SecurityProfileNodeStatus is a per-node status of a security
              profile
            displayName: Security Profile Node Status
            kind: SecurityProfileNodeStatus
            name: securityprofilenodestatuses.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - description: SecurityProfilesOperatorDaemon is the Schema to configure
              the spod deployment.
            displayName: Security Profiles Operator Daemon
            kind: SecurityProfilesOperatorDaemon
            name: securityprofilesoperatordaemons.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - kind: RawSelinuxProfile
            name: rawselinuxprofiles.security-profiles-operator.x-k8s.io
            version: v1alpha2
          - description: SelinuxProfile is the Schema for the selinuxprofiles API.
            displayName: Selinux Profile
            kind: SelinuxProfile
            name: selinuxprofiles.security-profiles-operator.x-k8s.io
            version: v1alpha2
          - description: AppArmorProfile is a cluster level specification for an AppArmor
              profile.
            displayName: App Armor Profile
            kind: AppArmorProfile
            name: apparmorprofiles.security-profiles-operator.x-k8s.io
            version: v1alpha1
        description: SPO is an operator which aims to make it easier for users to
          use SELinux, seccomp and AppArmor in Kubernetes clusters
        displayName: Security Profiles Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - selinux
        - seccomp
        - apparmor
        - ebpf
        links:
        - name: Security Profiles Operator
          url: https://github.com/openshift/security-profiles-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat support
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/compliance/openshift-security-profiles-operator-bundle@sha256:bd5bdc7085f3e9ce8494488f29b4d83a29796c47d536106cd6e14a7b67ab07ee
        - registry.redhat.io/compliance/openshift-security-profiles-rhel8-operator@sha256:828274d71c65ef820e6a8b652e3f102624d09a0609fb00bae7b32dc62ff37fd1
        - registry.redhat.io/compliance/openshift-selinuxd-rhel8@sha256:81273ff149482109417064b40d333edb131481c05547e4ffa6485475460a48ba
        - registry.redhat.io/compliance/openshift-selinuxd-rhel9@sha256:3278d69814a8d0d1e31dcdef454c24828aadbb468a3d5d3e15910c76481765bd
        version: 0.9.0
      entries:
      - name: security-profiles-operator.v0.9.0
        version: 0.9.0
      - name: security-profiles-operator.v0.8.6
        version: 0.8.6
      - name: security-profiles-operator.v0.8.5
        version: 0.8.5
      - name: security-profiles-operator.v0.8.4
        version: 0.8.4
      - name: security-profiles-operator.v0.8.2
        version: 0.8.2
      name: release-alpha-rhel-8
    defaultChannel: release-alpha-rhel-8
    packageName: security-profiles-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: recipe
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: recipe.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "Recipe",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "recipe",
                    "app.kubernetes.io/instance": "recipe-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "recipe",
                    "app.kubernetes.io/part-of": "recipe"
                  },
                  "name": "recipe-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          createdAt: "2025-12-18T08:02:13Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Recipe is the Schema for the recipes API
            displayName: Recipe
            kind: Recipe
            name: recipes.ramendr.openshift.io
            version: v1alpha1
        description: |
          Recipe describes a workflow used for capturing or recovering Kubernetes resources. This can be referred to by a Ramen DRPlacementControl object when kubeObjectProtection is enabled.
        displayName: Recipe
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - recipe
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/recipe
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-recipe-operator-bundle@sha256:29523317a9edd364fdff7d028726cb77ff8bcb700be280b6fd8ae367697c8b97
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        version: 4.19.9-rhodf
      entries:
      - name: recipe.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: recipe.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: recipe.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: recipe.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: recipe.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: recipe.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: recipe.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: recipe.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: recipe.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: recipe.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: recipe.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "Recipe",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "recipe",
                    "app.kubernetes.io/instance": "recipe-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "recipe",
                    "app.kubernetes.io/part-of": "recipe"
                  },
                  "name": "recipe-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:51:27Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Recipe is the Schema for the recipes API
            displayName: Recipe
            kind: Recipe
            name: recipes.ramendr.openshift.io
            version: v1alpha1
        description: |
          Recipe describes a workflow used for capturing or recovering Kubernetes resources. This can be referred to by a Ramen DRPlacementControl object when kubeObjectProtection is enabled.
        displayName: Recipe
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - recipe
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/recipe
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-recipe-operator-bundle@sha256:45b85ff810e9c08233127aaa78e2f7ce77a01f6e4638bc65f88c87d4ffbb7cf9
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        version: 4.20.4-rhodf
      entries:
      - name: recipe.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: recipe.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: recipe.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: recipe.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: recipe.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: recipe
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hitachi
      provider-url: ""
    name: hnas-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hnas-csi-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.csi.hitachi.com/v1",
                "kind": "HNAS",
                "metadata": {
                  "name": "hnas",
                  "namespace": "kube-system"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Storage
          containerImage: registry.hitachivantara.com/fpgroup-docker-public/hnas-csi-operator@sha256:9d3f9f10fc7172ee9cebbd9ee318906756d7e96909f2e66e0534e98bb53e0a7b
          createdAt: "2025-07-30T15:12:23Z"
          description: An operator for managing Hitachi NAS CSI driver
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HNAS is the Schema for the hnas API
            displayName: HNAS
            kind: HNAS
            name: hnas.charts.csi.hitachi.com
            version: v1
        description: |-
          The Hitachi NAS CSI driver operator deploys the Hitachi NAS CSI driver on Kubernetes and OpenShift environments.  The driver can be used to create and manage persistent storage hosted on Hitachi NAS products, including those in the Hitachi VSP One File 3x range and the HNAS range of products.

          For the complete documentation, go to our [Product Documentation site](https://docs.hitachivantara.com/home) and refer to the Hitachi NAS CSI Driver User Guide - MK-92HNAS091.  The guide covers prerequisites for the NAS system and covers the driver functionality and all configuration options available for the driver.
        displayName: Hitachi NAS CSI Driver Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hitachi
        - Storage
        - Container Storage Interface
        - CSI
        - NAS
        links:
        - name: Product Documentation
          url: https://docs.hitachivantara.com/home
        maturity: stable
        minKubeVersion: 1.28.0
        provider:
          name: Hitachi
        relatedImages:
        - registry.connect.redhat.com/hitachi/hnas-csi-operator-bundle@sha256:79e6ba3db78aa55a9f3839a172843d284d91e9cdaae9cb2c8e7e705f3d03115d
        - registry.hitachivantara.com/fpgroup-docker-public/hnas-csi-driver@sha256:6b6f6816c9f4e608e93e7fbc0347255415426a0ff0c9a53b7750e5ba54d91262
        - registry.k8s.io/sig-storage/csi-resizer@sha256:ab774734705a906561e15b67f6a96538f3ad520335d636f793aaafe87a3b5200
        - registry.k8s.io/sig-storage/csi-attacher@sha256:a399393ff5bd156277c56bae0c08389b1a1b95b7fd6ea44a316ce55e0dd559d7
        - registry.hitachivantara.com/fpgroup-docker-public/hnas-csi-operator@sha256:9d3f9f10fc7172ee9cebbd9ee318906756d7e96909f2e66e0534e98bb53e0a7b
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:d7138bcc3aa5f267403d45ad4292c95397e421ea17a0035888850f424c7de25d
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d5e46da8aff7d73d6f00c761dae94472bcda6e78f4f17b3802dc89d44de0111b
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:dd788d79cf4c1b8edee6d9b80b8a1ebfc51a38a365c5be656986b129be9ac784
        - registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f
        version: 1.0.0
      entries:
      - name: hnas-csi-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: hnas-csi-operator
    provider:
      name: Hitachi
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-recyclebin-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-recyclebin-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "recyclebin.services.k8s.aws/v1alpha1",
                "kind": "Rule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/recyclebin-controller:1.2.0
          createdAt: "2025-11-29T04:03:10Z"
          description: AWS Recycle Bin controller is a service controller for managing
            Recycle Bin resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Rule represents the state of an AWS recyclebin Rule resource.
            displayName: Rule
            kind: Rule
            name: rules.recyclebin.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Recycle Bin resources in AWS from within your Kubernetes cluster.

          **About Amazon Recycle Bin**

          Recycle Bin is a data recovery feature that enables you to restore accidentally deleted Amazon EBS snapshots and EBS-backed AMIs. When using Recycle Bin, if your resources are deleted, they are retained in the Recycle Bin for a time period that you specify before being permanently deleted.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Recycle Bin
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - recyclebin
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Recycle Bin Developer Resources
          url: https://docs.aws.amazon.com/ebs/latest/userguide/recycle-bin.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: recyclebin maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/recyclebin-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-recyclebin-controller@sha256:1444a27bbf0d726d65f6e5e513e47828ad4259751a8bb0695ecc72dafe5eaac7
        version: 1.2.0
      entries:
      - name: ack-recyclebin-controller.v1.2.0
        version: 1.2.0
      - name: ack-recyclebin-controller.v1.1.2
        version: 1.1.2
      - name: ack-recyclebin-controller.v1.1.1
        version: 1.1.1
      - name: ack-recyclebin-controller.v1.1.0
        version: 1.1.0
      - name: ack-recyclebin-controller.v1.0.13
        version: 1.0.13
      - name: ack-recyclebin-controller.v1.0.12
        version: 1.0.12
      - name: ack-recyclebin-controller.v1.0.11
        version: 1.0.11
      - name: ack-recyclebin-controller.v1.0.10
        version: 1.0.10
      - name: ack-recyclebin-controller.v1.0.9
        version: 1.0.9
      - name: ack-recyclebin-controller.v1.0.8
        version: 1.0.8
      - name: ack-recyclebin-controller.v1.0.7
        version: 1.0.7
      - name: ack-recyclebin-controller.v1.0.6
        version: 1.0.6
      - name: ack-recyclebin-controller.v1.0.5
        version: 1.0.5
      - name: ack-recyclebin-controller.v1.0.2
        version: 1.0.2
      - name: ack-recyclebin-controller.v1.0.1
        version: 1.0.1
      - name: ack-recyclebin-controller.v1.0.0
        version: 1.0.0
      - name: ack-recyclebin-controller.v0.0.3
        version: 0.0.3
      - name: ack-recyclebin-controller.v0.0.2
        version: 0.0.2
      - name: ack-recyclebin-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-recyclebin-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Carlos Eduardo de Paula
      provider-url: ""
    name: lbconfig-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lbconfig-operator.v0.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lb.lbconfig.carlosedp.com/v1",
                "kind": "ExternalLoadBalancer",
                "metadata": {
                  "name": "externalloadbalancer-infra-sample",
                  "namespace": "lbconfig-operator-system"
                },
                "spec": {
                  "monitor": {
                    "monitortype": "http",
                    "path": "/healthz",
                    "port": 1936
                  },
                  "ports": [
                    80,
                    443
                  ],
                  "provider": {
                    "creds": "f5-creds",
                    "host": "https://192.168.1.35",
                    "partition": "Common",
                    "port": 443,
                    "validatecerts": false,
                    "vendor": "F5_BigIP"
                  },
                  "type": "infra",
                  "vip": "192.168.1.45"
                }
              },
              {
                "apiVersion": "lb.lbconfig.carlosedp.com/v1",
                "kind": "ExternalLoadBalancer",
                "metadata": {
                  "name": "externalloadbalancer-infra-sample-shard",
                  "namespace": "lbconfig-operator-system"
                },
                "spec": {
                  "monitor": {
                    "monitortype": "http",
                    "path": "/healthz",
                    "port": 1936
                  },
                  "nodelabels": {
                    "kubernetes.io/region": "DC1",
                    "node-role.kubernetes.io/infra": ""
                  },
                  "ports": [
                    80,
                    443
                  ],
                  "provider": {
                    "creds": "f5-creds",
                    "host": "https://192.168.1.35",
                    "partition": "Common",
                    "port": 443,
                    "validatecerts": false,
                    "vendor": "F5_BigIP"
                  },
                  "type": "infra",
                  "vip": "192.168.1.46"
                }
              },
              {
                "apiVersion": "lb.lbconfig.carlosedp.com/v1",
                "kind": "ExternalLoadBalancer",
                "metadata": {
                  "name": "externalloadbalancer-master-sample",
                  "namespace": "lbconfig-operator-system"
                },
                "spec": {
                  "monitor": {
                    "monitortype": "https",
                    "path": "/healthz",
                    "port": 6443
                  },
                  "ports": [
                    6443
                  ],
                  "provider": {
                    "creds": "netscaler-creds",
                    "host": "https://192.168.1.36",
                    "port": 443,
                    "validatecerts": false,
                    "vendor": "Citrix_ADC"
                  },
                  "type": "master",
                  "vip": "192.168.1.40"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Networking
          certified: "false"
          containerImage: quay.io/carlosedp/lbconfig-operator:v0.5.1
          createdAt: "2025-01-09T15:45:28Z"
          description: Manage External Load Balancers allowing creation/update for
            VIPs and Servers dynamically via API.
          k8sMaxVersion: ""
          k8sMinVersion: ""
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/carlosedp/lbconfig-operator
          support: https://github.com/carlosedp/lbconfig-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalLoadBalancer is the Schema for the externalloadbalancers
              API
            displayName: ExternalLoadBalancer Instance
            kind: ExternalLoadBalancer
            name: externalloadbalancers.lb.lbconfig.carlosedp.com
            version: v1
          required:
          - description: ExternalLoadBalancer represents a configured instance of
              an external Load-Balancer for a specific group of nodes of the cluster.
              The Instance has a VIP and ports to be balanced to the cluster nodes
              based on a set of node labels.
            displayName: External Load-Balancer Configuration Instance
            kind: ExternalLoadBalancer
            name: externalloadbalancers.lb.lbconfig.carlosedp.com
            version: v1
        description: |
          ## About the Operator

          The LBConfig Operator, manages the configuration of External Load Balancer instances (on third-party equipment via it's API) and creates VIPs and IP Pools with Monitors for a set of OpenShift or Kubernetes nodes like Master-nodes (Control-Plane), Infra nodes (where the Routers or Ingress controllers are located) or based on it's roles and/or labels.

          The operator dynamically handles creating, updating or deleting the IPs of the pools in the Load Balancer based on the Node IPs for each role or label. On every change of the operator configuration (CRDs) or addition/change/removal or cluster Nodes, the operator updates the Load Balancer properly.

          ## Main Use Cases

          The main users for this operator is enterprise deployments or clusters composed of multiple nodes having an external load-balancer providing the balancing and high-availability to access the cluster in both API and Application levels.

          ### Create ExternalLoadBalancer Instances

          Create the instances for each Load Balancer instance you need (for example one for Master Nodes and another for the Infra Nodes). **If installing on OpenShift or Kubernetes with OLM (or in a different namespace), adjust the sample YAMLs to match the created namespace**.

          **The provider `vendor` field can be (case-insensitive):**

          * **`F5_BigIP`** - Tested on F5 BigIP version 15
          * **`Citrix_ADC`** - Tested on Citrix ADC (Netscaler) version 13
          * **`HAProxy`** - HAProxy with Dataplane API. ([Docs](./docs/haproxy/))
          * **`Dummy`** - Dummy backend used for testing to only print log messages on operations

          Create the secret holding the Load Balancer API user and password:

          ```sh
          oc create secret generic f5-creds --from-literal=username=admin --from-literal=password=admin123 --namespace lbconfig-operator-system
          ```

          #### Sample CRDs and Available Fields

          Master Nodes using a Citrix ADC LB:

          ```yaml
          apiVersion: lb.lbconfig.carlosedp.com/v1
          kind: ExternalLoadBalancer
          metadata:
            name: externalloadbalancer-master-sample
            namespace: lbconfig-operator-system
          spec:
            vip: "192.168.1.40"
            type: "master"
            ports:
              - 6443
            monitor:
              path: "/healthz"
              port: 6443
              monitortype: "https"
            provider:
              vendor: Citrix_ADC
              host: "https://192.168.1.36"
              port: 443
              creds: netscaler-creds
              validatecerts: false
          ```

          Infra Nodes using a F5 BigIP LB:

          ```yaml
          apiVersion: lb.lbconfig.carlosedp.com/v1
          kind: ExternalLoadBalancer
          metadata:
            name: externalloadbalancer-infra-sample
            namespace: lbconfig-operator-system
          spec:
            vip: "192.168.1.45"
            type: "infra"
            ports:
              - 80
              - 443
            monitor:
              path: "/healthz"
              port: 1936
              monitortype: http
            provider:
              vendor: F5_BigIP
              host: "https://192.168.1.35"
              port: 443
              creds: f5-creds
              partition: "Common"
              validatecerts: false
          ```

          To choose the nodes which will be part of the server pool, you can set either `type` or `nodelabels` fields. The yaml field `type: "master"` or `type: "infra"` selects nodes with the role label `"node-role.kubernetes.io/master"` and `"node-role.kubernetes.io/infra"` respectively. If the field `nodelabels` array is used instead, the operator will use nodes which match all labels.

          Clusters with sharded routers or using arbitrary labels to determine where the Ingress Controllers run can be configured like:

          ```yaml
          spec:
            vip: "10.0.0.6"
            ports:
              - 80
            nodelabels:
              "node.kubernetes.io/ingress-controller": "production"
              "kubernetes.io/region": "DC1"
            ...
          ```

          ## Getting Help

          This project fully open-source and is hosted at [GitHub](https://github.com/carlosedp/lbconfig-operator). Always check the project page and issues for the latest updates and/or solutions to problems encountered. If a problem is detected, please fill an issue. Feature request and improvement issues are welcome.

          Some fields inside `providers` are optional and depend on the used backend. Check the [API docs](https://pkg.go.dev/github.com/carlosedp/lbconfig-operator/api/lb.lbconfig.carlosedp.com/v1?utm_source=gopls#Provider) which fields are backend-specific.

          ## Disclaimers

          * The operator does not check if the requested configuration (names, IPs) already exists and/or conflicts with existing configuration in the Load Balancer. The user is responsible for these checks before deployment;
          * I am not responsible if the operator changes/deletes existing configuration on the Load Balancer if existing names are already configured.
          * The operator creates the entries(Pools, VIPs, Monitors) in the provided Load Balancer with the `name` of the instance configured in the CustomResource prefixed with the type. Eg. For a CR with name `externalloadbalancer-master-sample`, the operator creates a server pool named `Pool-externalloadbalancer-master-sample-6443` (suffixed with the port), a monitor named `Monitor-externalloadbalancer-master-sample` and a VIP named `VIP-externalloadbalancer-master-sample-6443` (suffixed with the port).
        displayName: External Load-Balancer Configuration Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - 'load-balance '
        - infrastructure
        links:
        - name: GitHub
          url: https://github.com/carlosedp/lbconfig-operator
        - name: Documentation
          url: https://github.com/carlosedp/lbconfig-operator/docs
        - name: Issues
          url: https://github.com/carlosedp/lbconfig-operator/issues
        maintainers:
        - email: carlosedp@gmail.com
          name: Carlos Eduardo de Paula
        maturity: beta
        minKubeVersion: 1.18.0
        provider:
          name: Carlos Eduardo de Paula
        relatedImages:
        - quay.io/community-operator-pipeline-prod/lbconfig-operator@sha256:b0bb724a5d9905633962a3e8267e75d371f754bce866a29cba3ac0d0c671ebff
        - quay.io/carlosedp/kube-rbac-proxy:v0.15.0
        - quay.io/carlosedp/lbconfig-operator:v0.5.1
        version: 0.5.1
      entries:
      - name: lbconfig-operator.v0.5.1
        version: 0.5.1
      - name: lbconfig-operator.v0.5.0
        version: 0.5.0
      - name: lbconfig-operator.v0.4.1
        version: 0.4.1
      - name: lbconfig-operator.v0.4.0
        version: 0.4.0
      - name: lbconfig-operator.v0.2.0
        version: 0.2.0
      name: beta
    defaultChannel: beta
    packageName: lbconfig-operator
    provider:
      name: Carlos Eduardo de Paula
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Sigstore Authors
      provider-url: https://sigstore.dev
    name: sigstore-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sigstore-helm-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "helm.sigstore.dev/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "name": "rekor"
                },
                "spec": {
                  "server": {
                    "ingress": {
                      "hostname": "rekor.example.com"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          containerImage: ghcr.io/sigstore/sigstore-helm-operator@sha256:d9c6eb162b97a1aa1ad3bf515db65d01a96e55b6f8bcd646864d3e64a3ee2b9e
          createdAt: "2021-09-01T21:20:28Z"
          description: Helm Charts for Sigstore Project.
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/sigstore/sigstore-helm-operator
          support: The Sigstore Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Rekor
            name: rekors.helm.sigstore.dev
            version: v1alpha1
        description: |-
          Helm Charts for the sigstore project

          ## Charts

          The following charts are available:

          * [Rekor](https://github.com/sigstore/helm-charts/tree/main/charts/rekor)
        displayName: sigstore
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        links:
        - name: Sigstore Helm Operator
          url: https://github.com/sabre1041/sigstore-helm-operator
        maintainers:
        - email: ablock@redhat.com
          name: Andrew Block
        maturity: alpha
        provider:
          name: The Sigstore Authors
          url: https://sigstore.dev
        relatedImages:
        - ghcr.io/sigstore/sigstore-helm-operator@sha256:d9c6eb162b97a1aa1ad3bf515db65d01a96e55b6f8bcd646864d3e64a3ee2b9e
        - quay.io/coreos/kube-rbac-proxy@sha256:e10d1d982dd653db74ca87a1d1ad017bc5ef1aeb651bdea089debf16485b080b
        - quay.io/openshift-community-operators/sigstore-helm-operator@sha256:ff4e548a8a003bd23e5076362bafb2e22f77b8445c5e3585d99cd5ce26fcaf56
        version: 0.0.1
      entries:
      - name: sigstore-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: sigstore-helm-operator
    provider:
      name: The Sigstore Authors
      url: https://sigstore.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ember-csi-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ember-csi-community-operator.v0.9.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ember-csi.io/v1alpha1",
                "kind": "EmberStorageBackend",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "config": {
                    "envVars": {
                      "X_CSI_PERSISTENCE_CONFIG": {
                        "storage": "crd"
                      },
                      "X_CSI_DEBUG_MODE": "",
                      "X_CSI_DEFAULT_MOUNT_FS": "ext4",
                      "X_CSI_EMBER_CONFIG": {
                        "grpc_workers": 30,
                        "disable_logs": false,
                        "plugin_name": "",
                        "slow_operations": true,
                        "disabled": [],
                        "enable_probe": false,
                        "debug": false,
                        "user_id": "ember_csi.io",
                        "project_id": "ember_csi.io"
                      },
                      "X_CSI_BACKEND_CONFIG": {
                        "enable_unsupported_driver": false,
                        "driver": "ACCESSIscsi",
                        "name": "",
                        "driver__ACCESSIscsi__vrts_lun_sparse": true,
                        "driver__ACCESSIscsi__vrts_target_config": "/etc/cinder/vrts_target.xml",
                        "driver__AS13000__as13000_ipsan_pools__transform_csv": "Pool0",
                        "driver__AS13000__as13000_meta_pool": "",
                        "driver__AS13000__as13000_token_available_time": 3300,
                        "driver__Acs5000ISCSI__acs5000_copy_interval": 5,
                        "driver__Acs5000ISCSI__acs5000_target": 0,
                        "driver__Acs5000ISCSI__acs5000_volpool_name__transform_csv": "pool01",
                        "driver__DPLFC__dpl_pool": "",
                        "driver__DPLFC__dpl_port": 8357,
                        "driver__DPLISCSI__dpl_pool": "",
                        "driver__DPLISCSI__dpl_port": 8357,
                        "driver__DSWARE__dsware_rest_url": "",
                        "driver__DSWARE__dsware_storage_pools": "",
                        "driver__DSWARE__manager_ips__transform_csv_kvs": "",
                        "driver__Datera__backend_availability_zone": "",
                        "driver__Datera__chap_password": "",
                        "driver__Datera__chap_username": "",
                        "driver__Datera__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__Datera__driver_client_cert": "",
                        "driver__Datera__driver_client_cert_key": "",
                        "driver__Datera__driver_data_namespace": "",
                        "driver__Datera__driver_ssl_cert_path": "",
                        "driver__Datera__driver_ssl_cert_verify": false,
                        "driver__Datera__driver_use_ssl": false,
                        "driver__Datera__filter_function": "",
                        "driver__Datera__goodness_function": "",
                        "driver__Datera__iscsi_iotype": "fileio",
                        "driver__Datera__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__Datera__iscsi_target_flags": "",
                        "driver__Datera__iscsi_write_cache": "on",
                        "driver__Datera__num_shell_tries": 3,
                        "driver__Datera__num_volume_device_scan_tries": 3,
                        "driver__Datera__report_discard_supported": false,
                        "driver__Datera__storage_protocol": "iscsi",
                        "driver__Datera__target_helper": "tgtadm",
                        "driver__Datera__target_ip_address": "$my_ip",
                        "driver__Datera__target_port": 3260,
                        "driver__Datera__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__Datera__target_protocol": "iscsi",
                        "driver__Datera__trace_flags__transform_csv": "",
                        "driver__Datera__use_chap_auth": false,
                        "driver__Datera__volume_backend_name": "",
                        "driver__Datera__volume_clear": "zero",
                        "driver__Datera__volume_clear_ionice": "",
                        "driver__Datera__volume_clear_size": 0,
                        "driver__Datera__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__Datera__volume_copy_bps_limit": 0,
                        "driver__Datera__volume_dd_blocksize": "1M",
                        "driver__Datera__volumes_dir": "$state_path/volumes",
                        "driver__FJDXFC__cinder_eternus_config_file": "/etc/cinder/cinder_fujitsu_eternus_dx.xml",
                        "driver__FJDXISCSI__cinder_eternus_config_file": "/etc/cinder/cinder_fujitsu_eternus_dx.xml",
                        "driver__FlashSystemFC__flashsystem_connection_protocol": "FC",
                        "driver__FlashSystemFC__flashsystem_multihostmap_enabled": true,
                        "driver__FlashSystemISCSI__flashsystem_connection_protocol": "FC",
                        "driver__FlashSystemISCSI__flashsystem_multihostmap_enabled": true,
                        "driver__GPFS__gpfs_images_dir": "",
                        "driver__GPFS__gpfs_images_share_mode__transform_empty_none": "",
                        "driver__GPFS__gpfs_max_clone_depth": 0,
                        "driver__GPFS__gpfs_mount_point_base": "",
                        "driver__GPFS__gpfs_sparse_volumes": true,
                        "driver__GPFS__gpfs_storage_pool": "system",
                        "driver__GPFSRemote__gpfs_hosts__transform_csv": "",
                        "driver__GPFSRemote__gpfs_hosts_key_file": "$state_path/ssh_known_hosts",
                        "driver__GPFSRemote__gpfs_images_dir": "",
                        "driver__GPFSRemote__gpfs_images_share_mode__transform_empty_none": "",
                        "driver__GPFSRemote__gpfs_max_clone_depth": 0,
                        "driver__GPFSRemote__gpfs_mount_point_base": "",
                        "driver__GPFSRemote__gpfs_private_key": "",
                        "driver__GPFSRemote__gpfs_sparse_volumes": true,
                        "driver__GPFSRemote__gpfs_ssh_port": 22,
                        "driver__GPFSRemote__gpfs_storage_pool": "system",
                        "driver__GPFSRemote__gpfs_strict_host_key_policy": false,
                        "driver__GPFSRemote__gpfs_user_login": "root",
                        "driver__GPFSRemote__gpfs_user_password": "",
                        "driver__HBSDFC__backend_availability_zone": "",
                        "driver__HBSDFC__chap_password": "",
                        "driver__HBSDFC__chap_username": "",
                        "driver__HBSDFC__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__HBSDFC__driver_client_cert": "",
                        "driver__HBSDFC__driver_client_cert_key": "",
                        "driver__HBSDFC__driver_data_namespace": "",
                        "driver__HBSDFC__driver_ssl_cert_path": "",
                        "driver__HBSDFC__driver_ssl_cert_verify": false,
                        "driver__HBSDFC__driver_use_ssl": false,
                        "driver__HBSDFC__filter_function": "",
                        "driver__HBSDFC__goodness_function": "",
                        "driver__HBSDFC__iscsi_iotype": "fileio",
                        "driver__HBSDFC__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__HBSDFC__iscsi_target_flags": "",
                        "driver__HBSDFC__iscsi_write_cache": "on",
                        "driver__HBSDFC__num_shell_tries": 3,
                        "driver__HBSDFC__num_volume_device_scan_tries": 3,
                        "driver__HBSDFC__report_discard_supported": false,
                        "driver__HBSDFC__storage_protocol": "iscsi",
                        "driver__HBSDFC__target_helper": "tgtadm",
                        "driver__HBSDFC__target_ip_address": "$my_ip",
                        "driver__HBSDFC__target_port": 3260,
                        "driver__HBSDFC__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__HBSDFC__target_protocol": "iscsi",
                        "driver__HBSDFC__trace_flags__transform_csv": "",
                        "driver__HBSDFC__use_chap_auth": false,
                        "driver__HBSDFC__volume_backend_name": "",
                        "driver__HBSDFC__volume_clear": "zero",
                        "driver__HBSDFC__volume_clear_ionice": "",
                        "driver__HBSDFC__volume_clear_size": 0,
                        "driver__HBSDFC__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__HBSDFC__volume_copy_bps_limit": 0,
                        "driver__HBSDFC__volume_dd_blocksize": "1M",
                        "driver__HBSDFC__volumes_dir": "$state_path/volumes",
                        "driver__HBSDISCSI__backend_availability_zone": "",
                        "driver__HBSDISCSI__chap_password": "",
                        "driver__HBSDISCSI__chap_username": "",
                        "driver__HBSDISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__HBSDISCSI__driver_client_cert": "",
                        "driver__HBSDISCSI__driver_client_cert_key": "",
                        "driver__HBSDISCSI__driver_data_namespace": "",
                        "driver__HBSDISCSI__driver_ssl_cert_path": "",
                        "driver__HBSDISCSI__driver_ssl_cert_verify": false,
                        "driver__HBSDISCSI__driver_use_ssl": false,
                        "driver__HBSDISCSI__filter_function": "",
                        "driver__HBSDISCSI__goodness_function": "",
                        "driver__HBSDISCSI__iscsi_iotype": "fileio",
                        "driver__HBSDISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__HBSDISCSI__iscsi_target_flags": "",
                        "driver__HBSDISCSI__iscsi_write_cache": "on",
                        "driver__HBSDISCSI__num_shell_tries": 3,
                        "driver__HBSDISCSI__num_volume_device_scan_tries": 3,
                        "driver__HBSDISCSI__report_discard_supported": false,
                        "driver__HBSDISCSI__storage_protocol": "iscsi",
                        "driver__HBSDISCSI__target_helper": "tgtadm",
                        "driver__HBSDISCSI__target_ip_address": "$my_ip",
                        "driver__HBSDISCSI__target_port": 3260,
                        "driver__HBSDISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__HBSDISCSI__target_protocol": "iscsi",
                        "driver__HBSDISCSI__trace_flags__transform_csv": "",
                        "driver__HBSDISCSI__use_chap_auth": false,
                        "driver__HBSDISCSI__volume_backend_name": "",
                        "driver__HBSDISCSI__volume_clear": "zero",
                        "driver__HBSDISCSI__volume_clear_ionice": "",
                        "driver__HBSDISCSI__volume_clear_size": 0,
                        "driver__HBSDISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__HBSDISCSI__volume_copy_bps_limit": 0,
                        "driver__HBSDISCSI__volume_dd_blocksize": "1M",
                        "driver__HBSDISCSI__volumes_dir": "$state_path/volumes",
                        "driver__HPE3PARFC__hpe3par_api_url": "",
                        "driver__HPE3PARFC__hpe3par_cpg__transform_csv": "OpenStack",
                        "driver__HPE3PARFC__hpe3par_cpg_snap": "",
                        "driver__HPE3PARFC__hpe3par_debug": false,
                        "driver__HPE3PARFC__hpe3par_iscsi_chap_enabled": false,
                        "driver__HPE3PARFC__hpe3par_iscsi_ips__transform_csv": "",
                        "driver__HPE3PARFC__hpe3par_password": "",
                        "driver__HPE3PARFC__hpe3par_snapshot_expiration": "",
                        "driver__HPE3PARFC__hpe3par_snapshot_retention": "",
                        "driver__HPE3PARFC__hpe3par_target_nsp": "",
                        "driver__HPE3PARFC__hpe3par_username": "",
                        "driver__HPE3PARFC__san_ip": "",
                        "driver__HPE3PARFC__san_login": "admin",
                        "driver__HPE3PARFC__san_password": "",
                        "driver__HPE3PARFC__san_private_key": "",
                        "driver__HPE3PARFC__san_ssh_port": 22,
                        "driver__HPE3PARFC__ssh_conn_timeout": 30,
                        "driver__HPE3PARFC__target_ip_address": "$my_ip",
                        "driver__HPE3PARFC__target_port": 3260,
                        "driver__HPE3PARFC__unique_fqdn_network": true,
                        "driver__HPE3PARISCSI__hpe3par_api_url": "",
                        "driver__HPE3PARISCSI__hpe3par_cpg__transform_csv": "OpenStack",
                        "driver__HPE3PARISCSI__hpe3par_cpg_snap": "",
                        "driver__HPE3PARISCSI__hpe3par_debug": false,
                        "driver__HPE3PARISCSI__hpe3par_iscsi_chap_enabled": false,
                        "driver__HPE3PARISCSI__hpe3par_iscsi_ips__transform_csv": "",
                        "driver__HPE3PARISCSI__hpe3par_password": "",
                        "driver__HPE3PARISCSI__hpe3par_snapshot_expiration": "",
                        "driver__HPE3PARISCSI__hpe3par_snapshot_retention": "",
                        "driver__HPE3PARISCSI__hpe3par_target_nsp": "",
                        "driver__HPE3PARISCSI__hpe3par_username": "",
                        "driver__HPE3PARISCSI__san_ip": "",
                        "driver__HPE3PARISCSI__san_login": "admin",
                        "driver__HPE3PARISCSI__san_password": "",
                        "driver__HPE3PARISCSI__san_private_key": "",
                        "driver__HPE3PARISCSI__san_ssh_port": 22,
                        "driver__HPE3PARISCSI__ssh_conn_timeout": 30,
                        "driver__HPE3PARISCSI__target_ip_address": "$my_ip",
                        "driver__HPE3PARISCSI__target_port": 3260,
                        "driver__HPE3PARISCSI__unique_fqdn_network": true,
                        "driver__HPMSAFC__driver_ssl_cert_path": "",
                        "driver__HPMSAFC__driver_ssl_cert_verify": false,
                        "driver__HPMSAFC__driver_use_ssl": false,
                        "driver__HPMSAFC__hpmsa_pool_name": "A",
                        "driver__HPMSAFC__hpmsa_pool_type": "virtual",
                        "driver__HPMSAFC__san_ip": "",
                        "driver__HPMSAFC__san_login": "admin",
                        "driver__HPMSAFC__san_password": "",
                        "driver__HPMSAISCSI__driver_ssl_cert_path": "",
                        "driver__HPMSAISCSI__driver_ssl_cert_verify": false,
                        "driver__HPMSAISCSI__driver_use_ssl": false,
                        "driver__HPMSAISCSI__hpmsa_iscsi_ips__transform_csv": "",
                        "driver__HPMSAISCSI__hpmsa_pool_name": "A",
                        "driver__HPMSAISCSI__hpmsa_pool_type": "virtual",
                        "driver__HPMSAISCSI__san_ip": "",
                        "driver__HPMSAISCSI__san_login": "admin",
                        "driver__HPMSAISCSI__san_password": "",
                        "driver__HuaweiFC__cinder_huawei_conf_file": "/etc/cinder/cinder_huawei_conf.xml",
                        "driver__HuaweiFC__hypermetro_devices": "",
                        "driver__HuaweiFC__metro_domain_name": "",
                        "driver__HuaweiFC__metro_san_address": "",
                        "driver__HuaweiFC__metro_san_password": "",
                        "driver__HuaweiFC__metro_san_user": "",
                        "driver__HuaweiFC__metro_storage_pools": "",
                        "driver__HuaweiISCSI__cinder_huawei_conf_file": "/etc/cinder/cinder_huawei_conf.xml",
                        "driver__HuaweiISCSI__hypermetro_devices": "",
                        "driver__HuaweiISCSI__metro_domain_name": "",
                        "driver__HuaweiISCSI__metro_san_address": "",
                        "driver__HuaweiISCSI__metro_san_password": "",
                        "driver__HuaweiISCSI__metro_san_user": "",
                        "driver__HuaweiISCSI__metro_storage_pools": "",
                        "driver__IBMStorage__chap": "disabled",
                        "driver__IBMStorage__connection_type": "iscsi",
                        "driver__IBMStorage__management_ips": "",
                        "driver__IBMStorage__proxy": "cinder.volume.drivers.ibm.ibm_storage.proxy.IBMStorageProxy",
                        "driver__InStorageMCSFC__instorage_mcs_allow_tenant_qos": false,
                        "driver__InStorageMCSFC__instorage_mcs_localcopy_rate": 50,
                        "driver__InStorageMCSFC__instorage_mcs_localcopy_timeout": 120,
                        "driver__InStorageMCSFC__instorage_mcs_vol_autoexpand": true,
                        "driver__InStorageMCSFC__instorage_mcs_vol_compression": false,
                        "driver__InStorageMCSFC__instorage_mcs_vol_grainsize": 256,
                        "driver__InStorageMCSFC__instorage_mcs_vol_intier": true,
                        "driver__InStorageMCSFC__instorage_mcs_vol_iogrp": "0",
                        "driver__InStorageMCSFC__instorage_mcs_vol_rsize": 2,
                        "driver__InStorageMCSFC__instorage_mcs_vol_warning": 0,
                        "driver__InStorageMCSFC__instorage_mcs_volpool_name__transform_csv": "volpool",
                        "driver__InStorageMCSFC__instorage_san_secondary_ip": "",
                        "driver__InStorageMCSISCSI__instorage_mcs_allow_tenant_qos": false,
                        "driver__InStorageMCSISCSI__instorage_mcs_localcopy_rate": 50,
                        "driver__InStorageMCSISCSI__instorage_mcs_localcopy_timeout": 120,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_autoexpand": true,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_compression": false,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_grainsize": 256,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_intier": true,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_iogrp": "0",
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_rsize": 2,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_warning": 0,
                        "driver__InStorageMCSISCSI__instorage_mcs_volpool_name__transform_csv": "volpool",
                        "driver__InStorageMCSISCSI__instorage_san_secondary_ip": "",
                        "driver__InfiniboxVolume__chap_password": "",
                        "driver__InfiniboxVolume__chap_username": "",
                        "driver__InfiniboxVolume__infinidat_iscsi_netspaces__transform_csv": "",
                        "driver__InfiniboxVolume__infinidat_pool_name": "",
                        "driver__InfiniboxVolume__infinidat_storage_protocol": "fc",
                        "driver__InfiniboxVolume__infinidat_use_compression": false,
                        "driver__InfiniboxVolume__num_volume_device_scan_tries": 3,
                        "driver__InfiniboxVolume__san_ip": "",
                        "driver__InfiniboxVolume__san_login": "admin",
                        "driver__InfiniboxVolume__san_password": "",
                        "driver__InfiniboxVolume__san_thin_provision": true,
                        "driver__InfiniboxVolume__use_chap_auth": false,
                        "driver__InfiniboxVolume__volume_dd_blocksize": "1M",
                        "driver__InfortrendCLIFC__infortrend_cli_cache": false,
                        "driver__InfortrendCLIFC__infortrend_cli_max_retries": 5,
                        "driver__InfortrendCLIFC__infortrend_cli_path": "/opt/bin/Infortrend/raidcmd_ESDS10.jar",
                        "driver__InfortrendCLIFC__infortrend_cli_timeout": 60,
                        "driver__InfortrendCLIFC__infortrend_iqn_prefix": "iqn.2002-10.com.infortrend",
                        "driver__InfortrendCLIFC__infortrend_pools_name__transform_csv": "",
                        "driver__InfortrendCLIFC__infortrend_slots_a_channels_id__transform_csv": "",
                        "driver__InfortrendCLIFC__infortrend_slots_b_channels_id__transform_csv": "",
                        "driver__InfortrendCLIFC__java_path": "/usr/bin/java",
                        "driver__InfortrendCLIISCSI__infortrend_cli_cache": false,
                        "driver__InfortrendCLIISCSI__infortrend_cli_max_retries": 5,
                        "driver__InfortrendCLIISCSI__infortrend_cli_path": "/opt/bin/Infortrend/raidcmd_ESDS10.jar",
                        "driver__InfortrendCLIISCSI__infortrend_cli_timeout": 60,
                        "driver__InfortrendCLIISCSI__infortrend_iqn_prefix": "iqn.2002-10.com.infortrend",
                        "driver__InfortrendCLIISCSI__infortrend_pools_name__transform_csv": "",
                        "driver__InfortrendCLIISCSI__infortrend_slots_a_channels_id__transform_csv": "",
                        "driver__InfortrendCLIISCSI__infortrend_slots_b_channels_id__transform_csv": "",
                        "driver__InfortrendCLIISCSI__java_path": "/usr/bin/java",
                        "driver__JovianISCSI__backend_availability_zone": "",
                        "driver__JovianISCSI__chap_password": "",
                        "driver__JovianISCSI__chap_username": "",
                        "driver__JovianISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__JovianISCSI__driver_client_cert": "",
                        "driver__JovianISCSI__driver_client_cert_key": "",
                        "driver__JovianISCSI__driver_data_namespace": "",
                        "driver__JovianISCSI__driver_ssl_cert_path": "",
                        "driver__JovianISCSI__driver_ssl_cert_verify": false,
                        "driver__JovianISCSI__driver_use_ssl": false,
                        "driver__JovianISCSI__filter_function": "",
                        "driver__JovianISCSI__goodness_function": "",
                        "driver__JovianISCSI__iscsi_iotype": "fileio",
                        "driver__JovianISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__JovianISCSI__iscsi_target_flags": "",
                        "driver__JovianISCSI__iscsi_write_cache": "on",
                        "driver__JovianISCSI__num_shell_tries": 3,
                        "driver__JovianISCSI__num_volume_device_scan_tries": 3,
                        "driver__JovianISCSI__report_discard_supported": false,
                        "driver__JovianISCSI__storage_protocol": "iscsi",
                        "driver__JovianISCSI__target_helper": "tgtadm",
                        "driver__JovianISCSI__target_ip_address": "$my_ip",
                        "driver__JovianISCSI__target_port": 3260,
                        "driver__JovianISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__JovianISCSI__target_protocol": "iscsi",
                        "driver__JovianISCSI__trace_flags__transform_csv": "",
                        "driver__JovianISCSI__use_chap_auth": false,
                        "driver__JovianISCSI__volume_backend_name": "",
                        "driver__JovianISCSI__volume_clear": "zero",
                        "driver__JovianISCSI__volume_clear_ionice": "",
                        "driver__JovianISCSI__volume_clear_size": 0,
                        "driver__JovianISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__JovianISCSI__volume_copy_bps_limit": 0,
                        "driver__JovianISCSI__volume_dd_blocksize": "1M",
                        "driver__JovianISCSI__volumes_dir": "$state_path/volumes",
                        "driver__KaminarioISCSI__disable_discovery": false,
                        "driver__KaminarioISCSI__san_ip": "",
                        "driver__KaminarioISCSI__san_login": "admin",
                        "driver__KaminarioISCSI__san_password": "",
                        "driver__KaminarioISCSI__unique_fqdn_network": true,
                        "driver__KaminarioISCSI__volume_dd_blocksize": "1M",
                        "driver__LVMVolume__iscsi_iotype": "fileio",
                        "driver__LVMVolume__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__LVMVolume__iscsi_target_flags": "",
                        "driver__LVMVolume__iscsi_write_cache": "on",
                        "driver__LVMVolume__lvm_conf_file": "/etc/cinder/lvm.conf",
                        "driver__LVMVolume__lvm_mirrors": 0,
                        "driver__LVMVolume__lvm_suppress_fd_warnings": false,
                        "driver__LVMVolume__lvm_type": "auto",
                        "driver__LVMVolume__nvmet_port_id": 1,
                        "driver__LVMVolume__scst_target_driver": "iscsi",
                        "driver__LVMVolume__scst_target_iqn_name": "",
                        "driver__LVMVolume__spdk_max_queue_depth": 64,
                        "driver__LVMVolume__spdk_rpc_ip": "",
                        "driver__LVMVolume__spdk_rpc_password": "",
                        "driver__LVMVolume__spdk_rpc_port": 8000,
                        "driver__LVMVolume__spdk_rpc_username": "",
                        "driver__LVMVolume__target_helper": "tgtadm",
                        "driver__LVMVolume__target_ip_address": "$my_ip",
                        "driver__LVMVolume__target_port": 3260,
                        "driver__LVMVolume__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__LVMVolume__target_protocol": "iscsi",
                        "driver__LVMVolume__volume_clear": "zero",
                        "driver__LVMVolume__volume_clear_size": 0,
                        "driver__LVMVolume__volume_dd_blocksize": "1M",
                        "driver__LVMVolume__volume_group": "cinder-volumes",
                        "driver__LVMVolume__volumes_dir": "$state_path/volumes",
                        "driver__LenovoFC__lenovo_pool_name": "A",
                        "driver__LenovoFC__lenovo_pool_type": "virtual",
                        "driver__LenovoISCSI__lenovo_iscsi_ips__transform_csv": "",
                        "driver__LenovoISCSI__lenovo_pool_name": "A",
                        "driver__LenovoISCSI__lenovo_pool_type": "virtual",
                        "driver__LinstorDrbd__linstor_autoplace_count": 0,
                        "driver__LinstorDrbd__linstor_controller_diskless": true,
                        "driver__LinstorDrbd__linstor_default_blocksize": 4096,
                        "driver__LinstorDrbd__linstor_default_storage_pool_name": "DfltStorPool",
                        "driver__LinstorDrbd__linstor_default_uri": "linstor://localhost",
                        "driver__LinstorDrbd__linstor_default_volume_group_name": "drbd-vg",
                        "driver__LinstorDrbd__linstor_volume_downsize_factor__transform_string_float": "4096",
                        "driver__LinstorIscsi__linstor_autoplace_count": 0,
                        "driver__LinstorIscsi__linstor_controller_diskless": true,
                        "driver__LinstorIscsi__linstor_default_blocksize": 4096,
                        "driver__LinstorIscsi__linstor_default_storage_pool_name": "DfltStorPool",
                        "driver__LinstorIscsi__linstor_default_uri": "linstor://localhost",
                        "driver__LinstorIscsi__linstor_default_volume_group_name": "drbd-vg",
                        "driver__LinstorIscsi__linstor_volume_downsize_factor__transform_string_float": "4096",
                        "driver__MStorageFC__nec_actual_free_capacity": false,
                        "driver__MStorageFC__nec_auto_accesscontrol": true,
                        "driver__MStorageFC__nec_backend_max_ld_count": 1024,
                        "driver__MStorageFC__nec_backup_ldname_format": "LX:%s",
                        "driver__MStorageFC__nec_backup_pools__transform_csv": "",
                        "driver__MStorageFC__nec_cv_ldname_format": "LX:__ControlVolume_%xh",
                        "driver__MStorageFC__nec_diskarray_name": "",
                        "driver__MStorageFC__nec_ismcli_fip": "",
                        "driver__MStorageFC__nec_ismcli_password": "",
                        "driver__MStorageFC__nec_ismcli_privkey": "",
                        "driver__MStorageFC__nec_ismcli_user": "",
                        "driver__MStorageFC__nec_ismview_alloptimize": false,
                        "driver__MStorageFC__nec_ismview_dir": "/tmp/nec/cinder",
                        "driver__MStorageFC__nec_ldname_format": "LX:%s",
                        "driver__MStorageFC__nec_ldset": "",
                        "driver__MStorageFC__nec_pools__transform_csv": "",
                        "driver__MStorageFC__nec_queryconfig_view": false,
                        "driver__MStorageFC__nec_ssh_pool_port_number": 22,
                        "driver__MStorageFC__nec_unpairthread_timeout": 3600,
                        "driver__MStorageISCSI__nec_actual_free_capacity": false,
                        "driver__MStorageISCSI__nec_auto_accesscontrol": true,
                        "driver__MStorageISCSI__nec_backend_max_ld_count": 1024,
                        "driver__MStorageISCSI__nec_backup_ldname_format": "LX:%s",
                        "driver__MStorageISCSI__nec_backup_pools__transform_csv": "",
                        "driver__MStorageISCSI__nec_cv_ldname_format": "LX:__ControlVolume_%xh",
                        "driver__MStorageISCSI__nec_diskarray_name": "",
                        "driver__MStorageISCSI__nec_ismcli_fip": "",
                        "driver__MStorageISCSI__nec_ismcli_password": "",
                        "driver__MStorageISCSI__nec_ismcli_privkey": "",
                        "driver__MStorageISCSI__nec_ismcli_user": "",
                        "driver__MStorageISCSI__nec_ismview_alloptimize": false,
                        "driver__MStorageISCSI__nec_ismview_dir": "/tmp/nec/cinder",
                        "driver__MStorageISCSI__nec_ldname_format": "LX:%s",
                        "driver__MStorageISCSI__nec_ldset": "",
                        "driver__MStorageISCSI__nec_pools__transform_csv": "",
                        "driver__MStorageISCSI__nec_queryconfig_view": false,
                        "driver__MStorageISCSI__nec_ssh_pool_port_number": 22,
                        "driver__MStorageISCSI__nec_unpairthread_timeout": 3600,
                        "driver__MacroSANFC__backend_availability_zone": "",
                        "driver__MacroSANFC__chap_password": "",
                        "driver__MacroSANFC__chap_username": "",
                        "driver__MacroSANFC__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__MacroSANFC__driver_client_cert": "",
                        "driver__MacroSANFC__driver_client_cert_key": "",
                        "driver__MacroSANFC__driver_data_namespace": "",
                        "driver__MacroSANFC__driver_ssl_cert_path": "",
                        "driver__MacroSANFC__driver_ssl_cert_verify": false,
                        "driver__MacroSANFC__driver_use_ssl": false,
                        "driver__MacroSANFC__filter_function": "",
                        "driver__MacroSANFC__goodness_function": "",
                        "driver__MacroSANFC__iscsi_iotype": "fileio",
                        "driver__MacroSANFC__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__MacroSANFC__iscsi_target_flags": "",
                        "driver__MacroSANFC__iscsi_write_cache": "on",
                        "driver__MacroSANFC__num_shell_tries": 3,
                        "driver__MacroSANFC__num_volume_device_scan_tries": 3,
                        "driver__MacroSANFC__report_discard_supported": false,
                        "driver__MacroSANFC__storage_protocol": "iscsi",
                        "driver__MacroSANFC__target_helper": "tgtadm",
                        "driver__MacroSANFC__target_ip_address": "$my_ip",
                        "driver__MacroSANFC__target_port": 3260,
                        "driver__MacroSANFC__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__MacroSANFC__target_protocol": "iscsi",
                        "driver__MacroSANFC__trace_flags__transform_csv": "",
                        "driver__MacroSANFC__use_chap_auth": false,
                        "driver__MacroSANFC__volume_backend_name": "",
                        "driver__MacroSANFC__volume_clear": "zero",
                        "driver__MacroSANFC__volume_clear_ionice": "",
                        "driver__MacroSANFC__volume_clear_size": 0,
                        "driver__MacroSANFC__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__MacroSANFC__volume_copy_bps_limit": 0,
                        "driver__MacroSANFC__volume_dd_blocksize": "1M",
                        "driver__MacroSANFC__volumes_dir": "$state_path/volumes",
                        "driver__MacroSANISCSI__backend_availability_zone": "",
                        "driver__MacroSANISCSI__chap_password": "",
                        "driver__MacroSANISCSI__chap_username": "",
                        "driver__MacroSANISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__MacroSANISCSI__driver_client_cert": "",
                        "driver__MacroSANISCSI__driver_client_cert_key": "",
                        "driver__MacroSANISCSI__driver_data_namespace": "",
                        "driver__MacroSANISCSI__driver_ssl_cert_path": "",
                        "driver__MacroSANISCSI__driver_ssl_cert_verify": false,
                        "driver__MacroSANISCSI__driver_use_ssl": false,
                        "driver__MacroSANISCSI__filter_function": "",
                        "driver__MacroSANISCSI__goodness_function": "",
                        "driver__MacroSANISCSI__iscsi_iotype": "fileio",
                        "driver__MacroSANISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__MacroSANISCSI__iscsi_target_flags": "",
                        "driver__MacroSANISCSI__iscsi_write_cache": "on",
                        "driver__MacroSANISCSI__num_shell_tries": 3,
                        "driver__MacroSANISCSI__num_volume_device_scan_tries": 3,
                        "driver__MacroSANISCSI__report_discard_supported": false,
                        "driver__MacroSANISCSI__storage_protocol": "iscsi",
                        "driver__MacroSANISCSI__target_helper": "tgtadm",
                        "driver__MacroSANISCSI__target_ip_address": "$my_ip",
                        "driver__MacroSANISCSI__target_port": 3260,
                        "driver__MacroSANISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__MacroSANISCSI__target_protocol": "iscsi",
                        "driver__MacroSANISCSI__trace_flags__transform_csv": "",
                        "driver__MacroSANISCSI__use_chap_auth": false,
                        "driver__MacroSANISCSI__volume_backend_name": "",
                        "driver__MacroSANISCSI__volume_clear": "zero",
                        "driver__MacroSANISCSI__volume_clear_ionice": "",
                        "driver__MacroSANISCSI__volume_clear_size": 0,
                        "driver__MacroSANISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__MacroSANISCSI__volume_copy_bps_limit": 0,
                        "driver__MacroSANISCSI__volume_dd_blocksize": "1M",
                        "driver__MacroSANISCSI__volumes_dir": "$state_path/volumes",
                        "driver__NetAppCmodeFibreChannel__netapp_vserver": "",
                        "driver__NetAppCmodeISCSI__netapp_vserver": "",
                        "driver__NexentaISCSI__nexenta_blocksize": 4096,
                        "driver__NexentaISCSI__nexenta_dataset_compression": "on",
                        "driver__NexentaISCSI__nexenta_dataset_dedup": "off",
                        "driver__NexentaISCSI__nexenta_dataset_description": "",
                        "driver__NexentaISCSI__nexenta_folder": "",
                        "driver__NexentaISCSI__nexenta_group_snapshot_template": "group-snapshot-%s",
                        "driver__NexentaISCSI__nexenta_host": "",
                        "driver__NexentaISCSI__nexenta_host_group_prefix": "cinder",
                        "driver__NexentaISCSI__nexenta_iscsi_target_host_group": "all",
                        "driver__NexentaISCSI__nexenta_iscsi_target_portal_groups": "",
                        "driver__NexentaISCSI__nexenta_iscsi_target_portal_port": 3260,
                        "driver__NexentaISCSI__nexenta_iscsi_target_portals": "",
                        "driver__NexentaISCSI__nexenta_lu_writebackcache_disabled": false,
                        "driver__NexentaISCSI__nexenta_luns_per_target": 100,
                        "driver__NexentaISCSI__nexenta_ns5_blocksize": 32,
                        "driver__NexentaISCSI__nexenta_origin_snapshot_template": "origin-snapshot-%s",
                        "driver__NexentaISCSI__nexenta_rest_backoff_factor__transform_string_float": "0.5",
                        "driver__NexentaISCSI__nexenta_rest_connect_timeout__transform_string_float": "30",
                        "driver__NexentaISCSI__nexenta_rest_protocol": "auto",
                        "driver__NexentaISCSI__nexenta_rest_read_timeout__transform_string_float": "300",
                        "driver__NexentaISCSI__nexenta_rest_retry_count": 3,
                        "driver__NexentaISCSI__nexenta_sparse": false,
                        "driver__NexentaISCSI__nexenta_target_group_prefix": "cinder",
                        "driver__NexentaISCSI__nexenta_target_prefix": "iqn.1986-03.com.sun:02:cinder",
                        "driver__NexentaISCSI__nexenta_use_https": true,
                        "driver__NexentaISCSI__nexenta_volume": "cinder",
                        "driver__NexentaISCSI__nexenta_volume_group": "iscsi",
                        "driver__NimbleFC__nimble_pool_name": "default",
                        "driver__NimbleFC__nimble_subnet_label": "*",
                        "driver__NimbleFC__nimble_verify_cert_path": "",
                        "driver__NimbleFC__nimble_verify_certificate": false,
                        "driver__NimbleISCSI__nimble_pool_name": "default",
                        "driver__NimbleISCSI__nimble_subnet_label": "*",
                        "driver__NimbleISCSI__nimble_verify_cert_path": "",
                        "driver__NimbleISCSI__nimble_verify_certificate": false,
                        "driver__PVMEFC__driver_ssl_cert_path": "",
                        "driver__PVMEFC__driver_ssl_cert_verify": false,
                        "driver__PVMEFC__driver_use_ssl": false,
                        "driver__PVMEFC__pvme_pool_name": "A",
                        "driver__PVMEFC__san_ip": "",
                        "driver__PVMEFC__san_login": "admin",
                        "driver__PVMEFC__san_password": "",
                        "driver__PVMEISCSI__driver_ssl_cert_path": "",
                        "driver__PVMEISCSI__driver_ssl_cert_verify": false,
                        "driver__PVMEISCSI__driver_use_ssl": false,
                        "driver__PVMEISCSI__pvme_iscsi_ips__transform_csv": "",
                        "driver__PVMEISCSI__pvme_pool_name": "A",
                        "driver__PVMEISCSI__san_ip": "",
                        "driver__PVMEISCSI__san_login": "admin",
                        "driver__PVMEISCSI__san_password": "",
                        "driver__PowerFlex__powerflex_allow_migration_during_rebuild": false,
                        "driver__PowerFlex__powerflex_allow_non_padded_volumes": false,
                        "driver__PowerFlex__powerflex_max_over_subscription_ratio__transform_string_float": "10.0",
                        "driver__PowerFlex__powerflex_rest_server_port": 443,
                        "driver__PowerFlex__powerflex_round_volume_capacity": true,
                        "driver__PowerFlex__powerflex_server_api_version": "",
                        "driver__PowerFlex__powerflex_storage_pools": "",
                        "driver__PowerFlex__powerflex_unmap_volume_before_deletion": false,
                        "driver__PowerMaxFC__driver_ssl_cert_verify": false,
                        "driver__PowerMaxFC__initiator_check": false,
                        "driver__PowerMaxFC__interval": 3,
                        "driver__PowerMaxFC__load_balance": false,
                        "driver__PowerMaxFC__load_balance_real_time": false,
                        "driver__PowerMaxFC__load_data_format": "Avg",
                        "driver__PowerMaxFC__load_look_back": 60,
                        "driver__PowerMaxFC__load_look_back_real_time": 1,
                        "driver__PowerMaxFC__port_group_load_metric": "PercentBusy",
                        "driver__PowerMaxFC__port_load_metric": "PercentBusy",
                        "driver__PowerMaxFC__powermax_array": "",
                        "driver__PowerMaxFC__powermax_array_tag_list__transform_csv": "",
                        "driver__PowerMaxFC__powermax_port_group_name_template": "portGroupName",
                        "driver__PowerMaxFC__powermax_port_groups__transform_csv": "",
                        "driver__PowerMaxFC__powermax_service_level": "",
                        "driver__PowerMaxFC__powermax_short_host_name_template": "shortHostName",
                        "driver__PowerMaxFC__powermax_snapvx_unlink_limit": 3,
                        "driver__PowerMaxFC__powermax_srp": "",
                        "driver__PowerMaxFC__retries": 200,
                        "driver__PowerMaxFC__san_ip": "",
                        "driver__PowerMaxFC__san_login": "admin",
                        "driver__PowerMaxFC__san_password": "",
                        "driver__PowerMaxFC__u4p_failover_autofailback": true,
                        "driver__PowerMaxFC__u4p_failover_backoff_factor": 1,
                        "driver__PowerMaxFC__u4p_failover_retries": 3,
                        "driver__PowerMaxFC__u4p_failover_target__transform_csv_kvs": "",
                        "driver__PowerMaxFC__u4p_failover_timeout": 20,
                        "driver__PowerMaxFC__vmax_workload": "",
                        "driver__PowerMaxISCSI__chap_password": "",
                        "driver__PowerMaxISCSI__chap_username": "",
                        "driver__PowerMaxISCSI__driver_ssl_cert_verify": false,
                        "driver__PowerMaxISCSI__initiator_check": false,
                        "driver__PowerMaxISCSI__interval": 3,
                        "driver__PowerMaxISCSI__load_balance": false,
                        "driver__PowerMaxISCSI__load_balance_real_time": false,
                        "driver__PowerMaxISCSI__load_data_format": "Avg",
                        "driver__PowerMaxISCSI__load_look_back": 60,
                        "driver__PowerMaxISCSI__load_look_back_real_time": 1,
                        "driver__PowerMaxISCSI__port_group_load_metric": "PercentBusy",
                        "driver__PowerMaxISCSI__port_load_metric": "PercentBusy",
                        "driver__PowerMaxISCSI__powermax_array": "",
                        "driver__PowerMaxISCSI__powermax_array_tag_list__transform_csv": "",
                        "driver__PowerMaxISCSI__powermax_port_group_name_template": "portGroupName",
                        "driver__PowerMaxISCSI__powermax_port_groups__transform_csv": "",
                        "driver__PowerMaxISCSI__powermax_service_level": "",
                        "driver__PowerMaxISCSI__powermax_short_host_name_template": "shortHostName",
                        "driver__PowerMaxISCSI__powermax_snapvx_unlink_limit": 3,
                        "driver__PowerMaxISCSI__powermax_srp": "",
                        "driver__PowerMaxISCSI__retries": 200,
                        "driver__PowerMaxISCSI__san_ip": "",
                        "driver__PowerMaxISCSI__san_login": "admin",
                        "driver__PowerMaxISCSI__san_password": "",
                        "driver__PowerMaxISCSI__u4p_failover_autofailback": true,
                        "driver__PowerMaxISCSI__u4p_failover_backoff_factor": 1,
                        "driver__PowerMaxISCSI__u4p_failover_retries": 3,
                        "driver__PowerMaxISCSI__u4p_failover_target__transform_csv_kvs": "",
                        "driver__PowerMaxISCSI__u4p_failover_timeout": 20,
                        "driver__PowerMaxISCSI__use_chap_auth": false,
                        "driver__PowerMaxISCSI__vmax_workload": "",
                        "driver__PowerStore__powerstore_appliances__transform_csv": "",
                        "driver__PowerStore__powerstore_ports__transform_csv": "",
                        "driver__PureFC__driver_ssl_cert_path": "",
                        "driver__PureFC__driver_ssl_cert_verify": false,
                        "driver__PureFC__pure_api_token": "",
                        "driver__PureFC__pure_automatic_max_oversubscription_ratio": true,
                        "driver__PureFC__pure_eradicate_on_delete": false,
                        "driver__PureFC__pure_host_personality__transform_empty_none": "",
                        "driver__PureFC__pure_iscsi_cidr": "0.0.0.0/0",
                        "driver__PureFC__pure_replica_interval_default": 3600,
                        "driver__PureFC__pure_replica_retention_long_term_default": 7,
                        "driver__PureFC__pure_replica_retention_long_term_per_day_default": 3,
                        "driver__PureFC__pure_replica_retention_short_term_default": 14400,
                        "driver__PureFC__pure_replication_pg_name": "cinder-group",
                        "driver__PureFC__pure_replication_pod_name": "cinder-pod",
                        "driver__PureFC__san_ip": "",
                        "driver__PureFC__use_chap_auth": false,
                        "driver__PureISCSI__driver_ssl_cert_path": "",
                        "driver__PureISCSI__driver_ssl_cert_verify": false,
                        "driver__PureISCSI__pure_api_token": "",
                        "driver__PureISCSI__pure_automatic_max_oversubscription_ratio": true,
                        "driver__PureISCSI__pure_eradicate_on_delete": false,
                        "driver__PureISCSI__pure_host_personality__transform_empty_none": "",
                        "driver__PureISCSI__pure_iscsi_cidr": "0.0.0.0/0",
                        "driver__PureISCSI__pure_replica_interval_default": 3600,
                        "driver__PureISCSI__pure_replica_retention_long_term_default": 7,
                        "driver__PureISCSI__pure_replica_retention_long_term_per_day_default": 3,
                        "driver__PureISCSI__pure_replica_retention_short_term_default": 14400,
                        "driver__PureISCSI__pure_replication_pg_name": "cinder-group",
                        "driver__PureISCSI__pure_replication_pod_name": "cinder-pod",
                        "driver__PureISCSI__san_ip": "",
                        "driver__PureISCSI__use_chap_auth": false,
                        "driver__QnapISCSI__chap_password": "",
                        "driver__QnapISCSI__chap_username": "",
                        "driver__QnapISCSI__driver_ssl_cert_verify": false,
                        "driver__QnapISCSI__qnap_management_url": "",
                        "driver__QnapISCSI__qnap_poolname": "",
                        "driver__QnapISCSI__qnap_storage_protocol": "iscsi",
                        "driver__QnapISCSI__san_login": "admin",
                        "driver__QnapISCSI__san_password": "",
                        "driver__QnapISCSI__target_ip_address": "$my_ip",
                        "driver__QnapISCSI__use_chap_auth": false,
                        "driver__Quobyte__quobyte_client_cfg": "",
                        "driver__Quobyte__quobyte_mount_point_base": "$state_path/mnt",
                        "driver__Quobyte__quobyte_overlay_volumes": false,
                        "driver__Quobyte__quobyte_qcow2_volumes": true,
                        "driver__Quobyte__quobyte_sparsed_volumes": true,
                        "driver__Quobyte__quobyte_volume_from_snapshot_cache": false,
                        "driver__Quobyte__quobyte_volume_url": "",
                        "driver__RBD__deferred_deletion_delay": 0,
                        "driver__RBD__deferred_deletion_purge_interval": 60,
                        "driver__RBD__enable_deferred_deletion": false,
                        "driver__RBD__rados_connect_timeout": -1,
                        "driver__RBD__rados_connection_interval": 5,
                        "driver__RBD__rados_connection_retries": 3,
                        "driver__RBD__rbd_ceph_conf": "",
                        "driver__RBD__rbd_cluster_name": "ceph",
                        "driver__RBD__rbd_exclusive_cinder_pool": false,
                        "driver__RBD__rbd_flatten_volume_from_snapshot": false,
                        "driver__RBD__rbd_keyring_conf": "",
                        "driver__RBD__rbd_max_clone_depth": 5,
                        "driver__RBD__rbd_pool": "rbd",
                        "driver__RBD__rbd_secret_uuid": "",
                        "driver__RBD__rbd_store_chunk_size": 4,
                        "driver__RBD__rbd_user": "",
                        "driver__RBD__report_dynamic_total_capacity": true,
                        "driver__RBD__volume_dd_blocksize": "1M",
                        "driver__RBDISCSI__deferred_deletion_delay": 0,
                        "driver__RBDISCSI__deferred_deletion_purge_interval": 60,
                        "driver__RBDISCSI__driver_ssl_cert_verify": false,
                        "driver__RBDISCSI__enable_deferred_deletion": false,
                        "driver__RBDISCSI__rados_connect_timeout": -1,
                        "driver__RBDISCSI__rados_connection_interval": 5,
                        "driver__RBDISCSI__rados_connection_retries": 3,
                        "driver__RBDISCSI__rbd_ceph_conf": "",
                        "driver__RBDISCSI__rbd_cluster_name": "ceph",
                        "driver__RBDISCSI__rbd_exclusive_cinder_pool": false,
                        "driver__RBDISCSI__rbd_flatten_volume_from_snapshot": false,
                        "driver__RBDISCSI__rbd_iscsi_api_debug": false,
                        "driver__RBDISCSI__rbd_iscsi_api_password": "",
                        "driver__RBDISCSI__rbd_iscsi_api_url": "",
                        "driver__RBDISCSI__rbd_iscsi_api_user": "",
                        "driver__RBDISCSI__rbd_iscsi_target_iqn": "",
                        "driver__RBDISCSI__rbd_max_clone_depth": 5,
                        "driver__RBDISCSI__rbd_pool": "rbd",
                        "driver__RBDISCSI__rbd_secret_uuid": "",
                        "driver__RBDISCSI__rbd_store_chunk_size": 4,
                        "driver__RBDISCSI__rbd_user": "",
                        "driver__RBDISCSI__report_dynamic_total_capacity": true,
                        "driver__RBDISCSI__suppress_requests_ssl_warnings": false,
                        "driver__RBDISCSI__volume_dd_blocksize": "1M",
                        "driver__RSD__podm_password": "",
                        "driver__RSD__podm_url": "",
                        "driver__RSD__podm_username": "",
                        "driver__SCFC__dell_api_async_rest_timeout": 15,
                        "driver__SCFC__dell_api_sync_rest_timeout": 30,
                        "driver__SCFC__dell_sc_api_port": 3033,
                        "driver__SCFC__dell_sc_server_folder": "openstack",
                        "driver__SCFC__dell_sc_ssn": 64702,
                        "driver__SCFC__dell_sc_verify_cert": false,
                        "driver__SCFC__dell_sc_volume_folder": "openstack",
                        "driver__SCFC__dell_server_os": "Red Hat Linux 6.x",
                        "driver__SCFC__excluded_domain_ips__transform_csv": "",
                        "driver__SCFC__included_domain_ips__transform_csv": "",
                        "driver__SCFC__secondary_san_ip": "",
                        "driver__SCFC__secondary_san_login": "Admin",
                        "driver__SCFC__secondary_san_password": "",
                        "driver__SCFC__secondary_sc_api_port": 3033,
                        "driver__SCISCSI__dell_api_async_rest_timeout": 15,
                        "driver__SCISCSI__dell_api_sync_rest_timeout": 30,
                        "driver__SCISCSI__dell_sc_api_port": 3033,
                        "driver__SCISCSI__dell_sc_server_folder": "openstack",
                        "driver__SCISCSI__dell_sc_ssn": 64702,
                        "driver__SCISCSI__dell_sc_verify_cert": false,
                        "driver__SCISCSI__dell_sc_volume_folder": "openstack",
                        "driver__SCISCSI__dell_server_os": "Red Hat Linux 6.x",
                        "driver__SCISCSI__excluded_domain_ips__transform_csv": "",
                        "driver__SCISCSI__included_domain_ips__transform_csv": "",
                        "driver__SCISCSI__secondary_san_ip": "",
                        "driver__SCISCSI__secondary_san_login": "Admin",
                        "driver__SCISCSI__secondary_san_password": "",
                        "driver__SCISCSI__secondary_sc_api_port": 3033,
                        "driver__SdsISCSI__backend_availability_zone": "",
                        "driver__SdsISCSI__chap_password": "",
                        "driver__SdsISCSI__chap_username": "",
                        "driver__SdsISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__SdsISCSI__driver_client_cert": "",
                        "driver__SdsISCSI__driver_client_cert_key": "",
                        "driver__SdsISCSI__driver_data_namespace": "",
                        "driver__SdsISCSI__driver_ssl_cert_path": "",
                        "driver__SdsISCSI__driver_ssl_cert_verify": false,
                        "driver__SdsISCSI__driver_use_ssl": false,
                        "driver__SdsISCSI__filter_function": "",
                        "driver__SdsISCSI__goodness_function": "",
                        "driver__SdsISCSI__iscsi_iotype": "fileio",
                        "driver__SdsISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__SdsISCSI__iscsi_target_flags": "",
                        "driver__SdsISCSI__iscsi_write_cache": "on",
                        "driver__SdsISCSI__num_shell_tries": 3,
                        "driver__SdsISCSI__num_volume_device_scan_tries": 3,
                        "driver__SdsISCSI__report_discard_supported": false,
                        "driver__SdsISCSI__storage_protocol": "iscsi",
                        "driver__SdsISCSI__target_helper": "tgtadm",
                        "driver__SdsISCSI__target_ip_address": "$my_ip",
                        "driver__SdsISCSI__target_port": 3260,
                        "driver__SdsISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__SdsISCSI__target_protocol": "iscsi",
                        "driver__SdsISCSI__trace_flags__transform_csv": "",
                        "driver__SdsISCSI__use_chap_auth": false,
                        "driver__SdsISCSI__volume_backend_name": "",
                        "driver__SdsISCSI__volume_clear": "zero",
                        "driver__SdsISCSI__volume_clear_ionice": "",
                        "driver__SdsISCSI__volume_clear_size": 0,
                        "driver__SdsISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__SdsISCSI__volume_copy_bps_limit": 0,
                        "driver__SdsISCSI__volume_dd_blocksize": "1M",
                        "driver__SdsISCSI__volumes_dir": "$state_path/volumes",
                        "driver__SolidFire__driver_ssl_cert_verify": false,
                        "driver__SolidFire__san_ip": "",
                        "driver__SolidFire__san_login": "admin",
                        "driver__SolidFire__san_password": "",
                        "driver__SolidFire__sf_account_prefix": "",
                        "driver__SolidFire__sf_allow_tenant_qos": false,
                        "driver__SolidFire__sf_api_port": 443,
                        "driver__SolidFire__sf_api_request_timeout": 30,
                        "driver__SolidFire__sf_cluster_pairing_timeout": 60,
                        "driver__SolidFire__sf_emulate_512": true,
                        "driver__SolidFire__sf_enable_vag": false,
                        "driver__SolidFire__sf_provisioning_calc": "maxProvisionedSpace",
                        "driver__SolidFire__sf_svip": "",
                        "driver__SolidFire__sf_volume_clone_timeout": 600,
                        "driver__SolidFire__sf_volume_create_timeout": 60,
                        "driver__SolidFire__sf_volume_pairing_timeout": 3600,
                        "driver__SolidFire__sf_volume_prefix": "UUID-",
                        "driver__StorPool__storpool_replication": 3,
                        "driver__StorPool__storpool_template": "",
                        "driver__StorwizeSVCFC__cycle_period_seconds": 300,
                        "driver__StorwizeSVCFC__storwize_peer_pool": "",
                        "driver__StorwizeSVCFC__storwize_preferred_host_site__transform_csv_kvs": "",
                        "driver__StorwizeSVCFC__storwize_san_secondary_ip": "",
                        "driver__StorwizeSVCFC__storwize_svc_allow_tenant_qos": false,
                        "driver__StorwizeSVCFC__storwize_svc_flashcopy_rate": 50,
                        "driver__StorwizeSVCFC__storwize_svc_flashcopy_timeout": 120,
                        "driver__StorwizeSVCFC__storwize_svc_mirror_pool": "",
                        "driver__StorwizeSVCFC__storwize_svc_multipath_enabled": false,
                        "driver__StorwizeSVCFC__storwize_svc_retain_aux_volume": false,
                        "driver__StorwizeSVCFC__storwize_svc_stretched_cluster_partner": "",
                        "driver__StorwizeSVCFC__storwize_svc_vol_autoexpand": true,
                        "driver__StorwizeSVCFC__storwize_svc_vol_compression": false,
                        "driver__StorwizeSVCFC__storwize_svc_vol_easytier": true,
                        "driver__StorwizeSVCFC__storwize_svc_vol_grainsize": 256,
                        "driver__StorwizeSVCFC__storwize_svc_vol_iogrp": "0",
                        "driver__StorwizeSVCFC__storwize_svc_vol_nofmtdisk": false,
                        "driver__StorwizeSVCFC__storwize_svc_vol_rsize": 2,
                        "driver__StorwizeSVCFC__storwize_svc_vol_warning": 0,
                        "driver__StorwizeSVCFC__storwize_svc_volpool_name__transform_csv": "volpool",
                        "driver__StorwizeSVCISCSI__cycle_period_seconds": 300,
                        "driver__StorwizeSVCISCSI__storwize_peer_pool": "",
                        "driver__StorwizeSVCISCSI__storwize_preferred_host_site__transform_csv_kvs": "",
                        "driver__StorwizeSVCISCSI__storwize_san_secondary_ip": "",
                        "driver__StorwizeSVCISCSI__storwize_svc_allow_tenant_qos": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_flashcopy_rate": 50,
                        "driver__StorwizeSVCISCSI__storwize_svc_flashcopy_timeout": 120,
                        "driver__StorwizeSVCISCSI__storwize_svc_iscsi_chap_enabled": true,
                        "driver__StorwizeSVCISCSI__storwize_svc_mirror_pool": "",
                        "driver__StorwizeSVCISCSI__storwize_svc_retain_aux_volume": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_stretched_cluster_partner": "",
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_autoexpand": true,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_compression": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_easytier": true,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_grainsize": 256,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_iogrp": "0",
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_nofmtdisk": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_rsize": 2,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_warning": 0,
                        "driver__StorwizeSVCISCSI__storwize_svc_volpool_name__transform_csv": "volpool",
                        "driver__SynoISCSI__chap_password": "",
                        "driver__SynoISCSI__chap_username": "",
                        "driver__SynoISCSI__driver_use_ssl": false,
                        "driver__SynoISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__SynoISCSI__synology_admin_port": 5000,
                        "driver__SynoISCSI__synology_device_id": "",
                        "driver__SynoISCSI__synology_one_time_pass": "",
                        "driver__SynoISCSI__synology_password": "",
                        "driver__SynoISCSI__synology_pool_name": "",
                        "driver__SynoISCSI__synology_ssl_verify": true,
                        "driver__SynoISCSI__synology_username": "admin",
                        "driver__SynoISCSI__target_ip_address": "$my_ip",
                        "driver__SynoISCSI__target_port": 3260,
                        "driver__SynoISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__SynoISCSI__target_protocol": "iscsi",
                        "driver__SynoISCSI__use_chap_auth": false,
                        "driver__Unity__remove_empty_host": false,
                        "driver__Unity__unity_io_ports__transform_csv": "",
                        "driver__Unity__unity_storage_pool_names__transform_csv": "",
                        "driver__VNX__default_timeout": 31536000,
                        "driver__VNX__destroy_empty_storage_group": false,
                        "driver__VNX__force_delete_lun_in_storagegroup": true,
                        "driver__VNX__ignore_pool_full_threshold": false,
                        "driver__VNX__initiator_auto_deregistration": false,
                        "driver__VNX__initiator_auto_registration": false,
                        "driver__VNX__io_port_list__transform_csv": "",
                        "driver__VNX__iscsi_initiators": "",
                        "driver__VNX__max_luns_per_storage_group": 255,
                        "driver__VNX__naviseccli_path": "",
                        "driver__VNX__storage_vnx_authentication_type": "global",
                        "driver__VNX__storage_vnx_pool_names__transform_csv": "",
                        "driver__VNX__storage_vnx_security_file_dir": "",
                        "driver__VNX__vnx_async_migrate": true,
                        "driver__VZStorage__vzstorage_default_volume_format": "raw",
                        "driver__VZStorage__vzstorage_mount_options__transform_csv": "",
                        "driver__VZStorage__vzstorage_mount_point_base": "$state_path/mnt",
                        "driver__VZStorage__vzstorage_shares_config": "/etc/cinder/vzstorage_shares",
                        "driver__VZStorage__vzstorage_sparsed_volumes": true,
                        "driver__VZStorage__vzstorage_used_ratio__transform_string_float": "0.95",
                        "driver__WindowsISCSI__windows_iscsi_lun_path": "C:\\iSCSIVirtualDisks",
                        "driver__WindowsSmbfs__smbfs_default_volume_format": "vhd",
                        "driver__WindowsSmbfs__smbfs_mount_point_base": "C:\\OpenStack\\_mnt",
                        "driver__WindowsSmbfs__smbfs_pool_mappings__transform_csv_kvs": "",
                        "driver__WindowsSmbfs__smbfs_shares_config": "C:\\OpenStack\\smbfs_shares.txt",
                        "driver__XtremIOFC__driver_ssl_cert_path": "",
                        "driver__XtremIOFC__driver_ssl_cert_verify": false,
                        "driver__XtremIOFC__san_ip": "",
                        "driver__XtremIOFC__san_login": "admin",
                        "driver__XtremIOFC__san_password": "",
                        "driver__XtremIOFC__xtremio_array_busy_retry_count": 5,
                        "driver__XtremIOFC__xtremio_array_busy_retry_interval": 5,
                        "driver__XtremIOFC__xtremio_clean_unused_ig": false,
                        "driver__XtremIOFC__xtremio_cluster_name": "",
                        "driver__XtremIOISCSI__driver_ssl_cert_path": "",
                        "driver__XtremIOISCSI__driver_ssl_cert_verify": false,
                        "driver__XtremIOISCSI__san_ip": "",
                        "driver__XtremIOISCSI__san_login": "admin",
                        "driver__XtremIOISCSI__san_password": "",
                        "driver__XtremIOISCSI__xtremio_array_busy_retry_count": 5,
                        "driver__XtremIOISCSI__xtremio_array_busy_retry_interval": 5,
                        "driver__XtremIOISCSI__xtremio_clean_unused_ig": false,
                        "driver__XtremIOISCSI__xtremio_cluster_name": "",
                        "driver__ZadaraVPSAISCSI__zadara_access_key": "",
                        "driver__ZadaraVPSAISCSI__zadara_default_snap_policy": false,
                        "driver__ZadaraVPSAISCSI__zadara_ssl_cert_verify": true,
                        "driver__ZadaraVPSAISCSI__zadara_use_iser": true,
                        "driver__ZadaraVPSAISCSI__zadara_vol_encrypt": false,
                        "driver__ZadaraVPSAISCSI__zadara_vol_name_template": "OS_%s",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_host": "",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_poolname": "",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_port": "",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_use_ssl": false
                      }
                    },
                    "sysFiles": {
                      "name": ""
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/embercsi/ember-csi-operator:latest
          createdAt: 2021-02-22:17:47:00
          description: Multi-vendor CSI plugin supporting 80+ storage drivers
          repository: https://github.com/embercsi/ember-csi-operator
          support: http://readthedocs.org/projects/ember-csi/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an Ember CSI storage backend
            displayName: Storage Backends
            kind: EmberStorageBackend
            name: embercsis.ember-csi.io
            version: v1alpha1
        description: |
          Ember-CSI is a multi-vendor CSI plugin driver supporting
          over 80 storage drivers in a single plugin to provide block and mount
          storage to container orchestration systems.

          The operator adds support for management of multiple Ember CSI instances
          within a cluster and simplifies storage backend deployments.

          ### Supported drivers
          Ember-CSI includes a good number of storage drivers, but due to limitation on hardware availability only a small number of them have been validated at one point or another. In alphabetical order they are:

          * HPE3PARFC
          * HPE3PARISCSI
          * KaminarioISCSI
          * LVMVolume
          * PowerMaxFC
          * PowerMaxISCSI
          * PureFC
          * PureISCSI
          * QnapISCSI
          * RBD
          * SolidFire
          * SynoISCSI
          * XtremIOFC
          * XtremIOISCSI

          ### Getting started
          Please have a look at our quick start documentation on how to get started:
          [github.com/embercsi/ember-csi-operator#quick-start](https://github.com/embercsi/ember-csi-operator#quick-start).
          We recommend to use the user friendly "Edit Form" when creating a new
          EmberStorageBackend. You'll find the link in the upper right corner of the
          editor.

          ### Documentation
          Documentation on Ember CSI itself can be found at [docs.ember-csi.io](http://docs.ember-csi.io/).

          ### Getting help
          Please contact us if you encounter any issues while using Ember CSI.
          Get in touch through the #ember-csi channel on Freenode, also accessible through
          [Kiwi IRC](https://kiwiirc.com/nextclient/irc.freenode.net/ember-csi).

          You can also create an issue on the [Github project](https://github.com/embercsi/ember-csi-operator)
          for bugs, enhancements, or other requests.
        displayName: Ember CSI Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Ember-CSI
        - CSI
        links:
        - name: Learn more about the project
          url: http://ember-csi.io/
        - name: Documentation
          url: http://readthedocs.org/projects/ember-csi/
        - name: Ember-CSI Source Code
          url: https://github.com/embercsi/ember-csi
        - name: Ember-CSI Operator Source Code
          url: https://github.com/embercsi/ember-csi-operator
        maintainers:
        - email: geguileo@redhat.com
          name: Gorka Eguileor
        - email: cschwede@redhat.com
          name: Christian Schwede
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/ember-csi-community-operator@sha256:5dce9b3018cfb300cd651c7980353cedc6617383d5c525e6a4a39ffb8e105774
        - quay.io/embercsi/ember-csi-operator:latest
        version: 0.9.9
      entries:
      - name: ember-csi-community-operator.v0.9.9
        version: 0.9.9
      - name: ember-csi-community-operator.v0.9.8
        version: 0.9.8
      - name: ember-csi-community-operator.v0.9.7
        version: 0.9.7
      name: beta
    defaultChannel: beta
    packageName: ember-csi-community-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NVIDIA
      provider-url: ""
    name: nim-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nim-operator-certified.v3.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMCache",
                "metadata": {
                  "name": "meta-llama3-8b-instruct",
                  "namespace": "nim-service"
                },
                "spec": {
                  "source": {
                    "ngc": {
                      "modelPuller": "nvcr.io/nim/meta/llama-3.1-8b-instruct@sha256:088a7f400286291e9c1512e326596f4caedd2ed7aa30b909d78cbd3727b55ee8",
                      "pullSecret": "ngc-secret",
                      "authSecret": "ngc-api-secret",
                      "model": {
                        "lora": false,
                        "precision": "fp16",
                        "engine": "tensorrt_llm",
                        "qosProfile": "throughput",
                        "gpus": [
                          {
                            "product": "a100",
                            "ids": []
                          }
                        ]
                      }
                    }
                  },
                  "storage": {
                    "pvc": {
                      "create": true,
                      "storageClass": "local-path",
                      "size": "50Gi",
                      "volumeAccessMode": "ReadWriteOnce"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMService",
                "metadata": {
                  "name": "meta-llama3-8b-instruct",
                  "namespace": "nim-service"
                },
                "spec": {
                  "image": {
                    "repository": "nvcr.io/nim/meta/llama-3.1-8b-instruct",
                    "tag": "1.3.3",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [
                      "ngc-secret"
                    ]
                  },
                  "authSecret": "ngc-api-secret",
                  "storage": {
                    "nimCache": {
                      "name": "meta-llama3-8b-instruct",
                      "profile": ""
                    }
                  },
                  "scale": {
                    "enabled": false,
                    "hpa": {
                      "minReplicas": 1,
                      "maxReplicas": 10
                    }
                  },
                  "resources": {
                    "limits": {
                      "nvidia.com/gpu": 1
                    }
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMPipeline",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "k8s-nim-operator",
                    "app.kubernetes.io/managed-by": "k8s-nim-operator"
                  },
                  "name": "nimpipeline-sample"
                },
                "spec": {
                  "services": [
                    {
                      "name": "meta-llama3-8b-instruct",
                      "enabled": true,
                      "spec": {
                        "image": {
                          "repository": "nvcr.io/nim/meta/llama-3.1-8b-instruct",
                          "tag": "1.3.3",
                          "pullPolicy": "IfNotPresent",
                          "pullSecrets": [
                            "ngc-secret"
                          ]
                        },
                        "authSecret": "ngc-api-secret",
                        "storage": {
                          "nimCache": {
                            "name": "meta-llama3-8b-instruct",
                            "profile": ""
                          }
                        },
                        "replicas": 1,
                        "resources": {
                          "limits": {
                            "nvidia.com/gpu": 1
                          }
                        },
                        "expose": {
                          "service": {
                            "type": "ClusterIP",
                            "port": 8000
                          }
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMBuild",
                "metadata": {
                  "name": "meta-llama3-8b-instruct",
                  "namespace": "nim-service"
                },
                "spec": {
                  "nimCache": {
                    "name": "meta-llama3-8b-instruct",
                    "profile": "7cc8597690a35aba19a3636f35e7f1c7e7dbc005fe88ce9394cad4a4adeed414"
                  },
                  "image": {
                    "repository": "nvcr.io/nim/meta/llama-3.1-8b-instruct",
                    "tag": "1.3.3",
                    "pullSecrets": [
                     "ngc-secret"
                    ]
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoCustomizer",
                "metadata": {
                  "name": "nemocustomizer-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "scheduler": {
                    "type": "volcano"
                  },
                  "wandb": {
                    "secretName": "wandb-secret",
                    "apiKeyKey": "apiKey",
                    "encryptionKey": "encryptionKey"
                  },
                  "otel": {
                    "enabled": true,
                    "exporterOtlpEndpoint": "http://customizer-otel-opentelemetry-collector.nemo.svc.cluster.local:4317"
                  },
                  "databaseConfig": {
                    "credentials": {
                      "user": "ncsuser",
                      "secretName": "customizer-pg-existing-secret",
                      "passwordKey": "password"
                    },
                    "host": "customizer-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "databaseName": "ncsdb"
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/customizer-api",
                    "tag": "25.08",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "entitystore": {
                    "endpoint": "http://nemoentitystore-sample.nemo.svc.cluster.local:8000"
                  },
                  "datastore": {
                    "endpoint": "http://nemodatastore-sample.nemo.svc.cluster.local:8000"
                  },
                  "mlflow": {
                    "endpoint": "http://mlflow-tracking.nemo.svc.cluster.local:80"
                  },
                  "nemoDatastoreTools": {
                    "image": "nvcr.io/nvidia/nemo-microservices/nds-v2-huggingface-cli@sha256:7958e5244217de8af0ed723dfe7ea8e291b3afbb2a0aa73f5c27b218a1149b11"
                  },
                  "modelDownloadJobs": {
                    "image": "nvcr.io/nvidia/nemo-microservices/customizer-api@sha256:c590fa19121af2aac0379933deace3991f27c3ef88a8043560d6e3a172273b0b",
                    "ngcAPISecret": {
                      "name": "ngc-api-secret",
                      "key": "NGC_API_KEY"
                    },
                    "securityContext": {
                      "fsGroup": 1000,
                      "runAsNonRoot": true,
                      "runAsUser": 1000,
                      "runAsGroup": 1000
                    },
                    "ttlSecondsAfterFinished": 600,
                    "pollIntervalSeconds": 15
                  },
                  "modelConfig": {
                    "name": "nemo-model-config"
                  },
                  "trainingConfig": {
                    "configMap": {
                      "name": "nemo-training-config"
                    },
                    "modelPVC": {
                      "create": true,
                      "name": "finetuning-ms-models-pvc",
                      "storageClass": "",
                      "volumeAccessMode": "ReadWriteOnce",
                      "size": 50
                    },
                    "workspacePVC": {
                      "storageClass": "local-path",
                      "volumeAccessMode": "ReadWriteOnce",
                      "size": 10,
                      "mountPath": "/pvc/workspace"
                    },
                    "image": {
                      "repository": "nvcr.io/nvidia/nemo-microservices/customizer",
                      "tag": "25.06"
                    },
                    "env": [
                      { "name": "LOG_LEVEL", "value": "INFO" }
                    ],
                    "networkConfig": [
                      { "name": "NCCL_IB_SL", "value": "0" },
                      { "name": "NCCL_IB_TC", "value": "41" },
                      { "name": "NCCL_IB_QPS_PER_CONNECTION", "value": "4" },
                      { "name": "UCX_TLS", "value": "TCP" },
                      { "name": "UCX_NET_DEVICES", "value": "eth0" },
                      { "name": "HCOLL_ENABLE_MCAST_ALL", "value": "0" },
                      { "name": "NCCL_IB_GID_INDEX", "value": "3" }
                    ],
                    "ttlSecondsAfterFinished": 3600,
                    "timeout": 3600,
                    "tolerations": [
                      {
                        "key": "nvidia.com/gpu",
                        "operator": "Exists",
                        "effect": "NoSchedule"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoGuardrail",
                "metadata": {
                  "name": "nemoguardrails-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "configStore": {
                    "pvc": {
                      "name": "pvc-guardrail-config",
                      "create": true,
                      "storageClass": "",
                      "volumeAccessMode": "ReadWriteOnce",
                      "size": "1Gi"
                    }
                  },
                  "nimEndpoint": {
                    "baseURL": "http://meta-llama3-1b-instruct.nemo.svc.cluster.local:8000/v1"
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/guardrails",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "metrics": {
                    "serviceMonitor": {}
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "ephemeral-storage": "10Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoEvaluator",
                "metadata": {
                  "name": "nemoevaluator-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "evaluationImages": {
                    "bigcodeEvalHarness": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-bigcode@sha256:62f74c32d1ed07925ddb906de8975025bf63d73e82e7faefb840339aaf21a9dc",
                    "lmEvalHarness": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-lm-eval-harness@sha256:58e7c3da7f1edfed2ff508fa8abab7660366c2c17bb55d17aa68159d6e16be6d",
                    "similarityMetrics": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-custom-eval@sha256:eb51edf668481d1f5d2b100c850958dadf184fd8779433e45da40fa2a35ec4b9",
                    "llmAsJudge": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-llm-as-a-judge@sha256:188916fce714453d48ff20d95e1ca09fc5520ccb6e9e8da7493948697e919055",
                    "mtBench": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-llm-as-a-judge@sha256:188916fce714453d48ff20d95e1ca09fc5520ccb6e9e8da7493948697e919055",
                    "retriever": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-retriever@sha256:cb99fb3ea5b4e9989832679d4c6028573c28b99e43744e008ac5c9748b7dd250",
                    "rag": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-rag@sha256:b5e35cf277185e0901a4bbba35780b3673be71ae2c5e8efcdbab7710a8a6f783",
                    "bfcl": "nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-bfcl@sha256:95f45f66140d481d544b36b16bc3de7ad5e090d76225fd73ed70461b9bd9907c",
                    "agenticEval": "nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-agentic-eval@sha256:b38bbc5e61df0930204efa096cf4f40db4655b92d03741190513b019d67fc7dc"
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/evaluator",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "argoWorkflows": {
                    "endpoint": "https://argo-workflows-server.nemo.svc.cluster.local:2746",
                    "serviceAccount": "argo-workflows-executor"
                  },
                  "vectorDB": {
                    "endpoint": "http://milvus.nemo.svc.cluster.local:19530"
                  },
                  "datastore": {
                    "endpoint": "http://nemodatastore-sample.nemo.svc.cluster.local:8000/v1/hf"
                  },
                  "entitystore": {
                    "endpoint": "http://nemoentitystore-sample.nemo.svc.cluster.local:8000"
                  },
                  "databaseConfig": {
                    "host": "evaluator-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "databaseName": "evaldb",
                    "credentials": {
                      "user": "evaluser",
                      "secretName": "evaluator-pg-existing-secret",
                      "passwordKey": "password"
                    }
                  },
                  "otel": {
                    "enabled": true,
                    "exporterOtlpEndpoint": "http://evaluator-otel-opentelemetry-collector.nemo.svc.cluster.local:4317"
                  },
                  "replicas": 1
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoEntitystore",
                "metadata": {
                  "name": "nemoentitystore-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/entity-store",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "databaseConfig": {
                    "databaseName": "nesdb",
                    "host": "entity-store-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "credentials": {
                      "user": "nesuser",
                      "secretName": "entity-store-pg-existing-secret",
                      "passwordKey": "password"
                    }
                  },
                  "datastore": {
                    "endpoint": "http://nemodatastore-sample.nemo.svc.cluster.local:8000"
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoDatastore",
                "metadata": {
                  "name": "nemodatastore-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "secrets": {
                    "datastoreConfigSecret": "nemo-ms-nemo-datastore",
                    "datastoreInitSecret": "nemo-ms-nemo-datastore-init",
                    "datastoreInlineConfigSecret": "nemo-ms-nemo-datastore-inline-config",
                    "giteaAdminSecret": "gitea-admin-credentials",
                    "lfsJwtSecret": "nemo-ms-nemo-datastore--lfs-jwt"
                  },
                  "databaseConfig": {
                    "credentials": {
                      "user": "ndsuser",
                      "secretName": "datastore-pg-existing-secret",
                      "passwordKey": "password"
                    },
                    "host": "datastore-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "databaseName": "ndsdb"
                  },
                  "pvc": {
                    "name": "pvc-shared-data",
                    "create": true,
                    "storageClass": "",
                    "volumeAccessMode": "ReadWriteOnce",
                    "size": "10Gi"
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/datastore",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "replicas": 1,
                  "resources": {
                    "requests": {
                      "memory": "256Mi",
                      "cpu": "500m"
                    },
                    "limits": {
                      "memory": "512Mi",
                      "cpu": "1"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          certified: "true"
          containerImage: nvcr.io/nvidia/cloud-native/k8s-nim-operator@sha256:fadaed25df7d447d9141dc69a25c90a18f7799d47ca6e231805eff5b4e6c4907
          createdAt: Tue Sep  9 12:58:18 PDT 2025
          description: An Operator for deployment and maintenance of NVIDIA NIMs and
            NeMo microservices in a Kubernetes environment
          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: "true"
          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"
          k8sMinVersion: 1.26.0
          repository: github.com/NVIDIA/k8s-nim-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NIM Cache
            displayName: NIMCache
            kind: NIMCache
            name: nimcaches.apps.nvidia.com
            version: v1alpha1
          - description: NIM Service
            displayName: NIMService
            kind: NIMService
            name: nimservices.apps.nvidia.com
            version: v1alpha1
          - description: NIM Pipeline
            displayName: NIMPipeline
            kind: NIMPipeline
            name: nimpipelines.apps.nvidia.com
            version: v1alpha1
          - description: NIM Build
            displayName: NIMBuild
            kind: NIMBuild
            name: nimbuilds.apps.nvidia.com
            version: v1alpha1
          - description: NEMO guardrail Service
            displayName: NemoGuardrail
            kind: NemoGuardrail
            name: nemoguardrails.apps.nvidia.com
            version: v1alpha1
          - description: NEMO datastore Service
            displayName: NemoDatastore
            kind: NemoDatastore
            name: nemodatastores.apps.nvidia.com
            version: v1alpha1
          - description: NEMO Eval Service
            displayName: NemoEvaluator
            kind: NemoEvaluator
            name: nemoevaluators.apps.nvidia.com
            version: v1alpha1
          - description: NEMO Customizer Service
            displayName: NemoCustomizer
            kind: NemoCustomizer
            name: nemocustomizers.apps.nvidia.com
            version: v1alpha1
          - description: NEMO Entitystore Service
            displayName: NemoEntitystore
            kind: NemoEntitystore
            name: nemoentitystores.apps.nvidia.com
            version: v1alpha1
        description: |-
          ## NVIDIA NIM Operator
          The NVIDIA NIM Operator enables Kubernetes cluster administrators to operate the software components and services necessary to run NVIDIA NIMs in various domains such as reasoning, retrieval, speech, and biology. Additionally, it allows the use of NeMo Microservices to fine-tune, evaluate, or apply guardrails to your models.
          The Operator manages the life cycle of the following microservices and the models they use:
          ### NVIDIA NIM models, such as:
          * Reasoning LLMs
          * Retrieval - Embedding, Reranking, etc.
          * Speech
          * Biology
          ### NeMo core microservices:
          * NeMo Customizer
          * NeMo Evaluator
          * NeMo Guardrails
          ### NeMo platform component microservices:
          * NeMo Data Store
          * NeMo Entity Store
        displayName: The NVIDIA NIM Operator for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        links:
        - name: NVIDIA NIM
          url: https://docs.nvidia.com/nim/index.html
        - name: Documentation
          url: https://docs.nvidia.com/nim-operator/latest
        maintainers:
        - email: operator_feedback@nvidia.com
          name: shivamerla
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: NVIDIA
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-nim-operator@sha256:fadaed25df7d447d9141dc69a25c90a18f7799d47ca6e231805eff5b4e6c4907
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-lm-eval-harness@sha256:58e7c3da7f1edfed2ff508fa8abab7660366c2c17bb55d17aa68159d6e16be6d
        - nvcr.io/nim/meta/llama-3.1-8b-instruct@sha256:088a7f400286291e9c1512e326596f4caedd2ed7aa30b909d78cbd3727b55ee8
        - nvcr.io/nvidia/nemo-microservices/customizer-api@sha256:c590fa19121af2aac0379933deace3991f27c3ef88a8043560d6e3a172273b0b
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-custom-eval@sha256:eb51edf668481d1f5d2b100c850958dadf184fd8779433e45da40fa2a35ec4b9
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-llm-as-a-judge@sha256:188916fce714453d48ff20d95e1ca09fc5520ccb6e9e8da7493948697e919055
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-retriever@sha256:cb99fb3ea5b4e9989832679d4c6028573c28b99e43744e008ac5c9748b7dd250
        - nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-agentic-eval@sha256:b38bbc5e61df0930204efa096cf4f40db4655b92d03741190513b019d67fc7dc
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-rag@sha256:b5e35cf277185e0901a4bbba35780b3673be71ae2c5e8efcdbab7710a8a6f783
        - registry.connect.redhat.com/nvidia/nim-operator-bundle@sha256:eda9683cfd147b61ce97088841495ef729004cf649f9c6bb704289ba5670e0d9
        - nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-bfcl@sha256:95f45f66140d481d544b36b16bc3de7ad5e090d76225fd73ed70461b9bd9907c
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-bigcode@sha256:62f74c32d1ed07925ddb906de8975025bf63d73e82e7faefb840339aaf21a9dc
        - nvcr.io/nvidia/nemo-microservices/nds-v2-huggingface-cli@sha256:7958e5244217de8af0ed723dfe7ea8e291b3afbb2a0aa73f5c27b218a1149b11
        version: 3.0.2
      entries:
      - name: nim-operator-certified.v3.0.2
        version: 3.0.2
      - name: nim-operator-certified.v3.0.1
        version: 3.0.1
      - name: nim-operator-certified.v3.0.0
        version: 3.0.0
      - name: nim-operator-certified.v2.0.2
        version: 2.0.2
      - name: nim-operator-certified.v2.0.1
        version: 2.0.1
      - name: nim-operator-certified.v2.0.0
        version: 2.0.0
      - name: nim-operator-certified.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: stable
    packageName: nim-operator-certified
    provider:
      name: NVIDIA
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Jason Skrzypek
      provider-url: https://github.com/shpwrck
    name: openshift-node-upgrade-mutex-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-node-upgrade-mutex-operator.v0.2.66
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "openshift-optional.skrzypek.io/v1alpha1",
                "kind": "MutexRule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "openshift-node-upgrade-mutex-operator",
                    "app.kubernetes.io/instance": "mutexrule-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mutexrule",
                    "app.kubernetes.io/part-of": "openshift-node-upgrade-mutex-operator"
                  },
                  "name": "mutexrule-sample"
                },
                "spec": {
                  "jobName": "example",
                  "jobNamespace": "node-upgrade-mutex-operator",
                  "jobSpec": {
                    "selector": {},
                    "template": {
                      "metadata": {
                        "name": "mutex"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              "20"
                            ],
                            "image": "ubi9/toolbox",
                            "name": "mutex"
                          }
                        ],
                        "restartPolicy": "Never"
                      }
                    }
                  },
                  "type": "kubernetes"
                }
              },
              {
                "apiVersion": "openshift-optional.skrzypek.io/v1alpha1",
                "kind": "MutexRunConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "openshift-node-upgrade-mutex-operator",
                    "app.kubernetes.io/instance": "mutexrunconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mutexrunconfig",
                    "app.kubernetes.io/part-of": "openshift-node-upgrade-mutex-operator"
                  },
                  "name": "mutexrunconfig-sample"
                },
                "spec": {
                  "canary": {
                    "name": "canary-example"
                  },
                  "mutexRules": [
                    {
                      "name": "mutexrule-sample",
                      "namespace": "node-upgrade-mutex-operator"
                    }
                  ],
                  "mutexTargets": [
                    {
                      "name": "mutextarget-sample",
                      "namespace": "node-upgrade-mutex-operator"
                    }
                  ]
                }
              },
              {
                "apiVersion": "openshift-optional.skrzypek.io/v1alpha1",
                "kind": "MutexTarget",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "openshift-node-upgrade-mutex-operator",
                    "app.kubernetes.io/instance": "mutextarget-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mutextarget",
                    "app.kubernetes.io/part-of": "openshift-node-upgrade-mutex-operator"
                  },
                  "name": "mutextarget-sample"
                },
                "spec": {
                  "machineConfigPools": [
                    "worker"
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/jskrzypek/openshift-node-upgrade-mutex-operator
          createdAt: "2025-05-30T17:49:00Z"
          description: |
            This software injects required operations into the worker node upgrade process.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: node-upgrade-mutex-operator
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          provider: Jason Skrzypek
          repository: https://github.com/shpwrck/openshift-upgrade-rollout-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A node mutex rule definition in the form of a kubernetes
              job spec
            displayName: Mutex Rule
            kind: MutexRule
            name: mutexrules.openshift-optional.skrzypek.io
            version: v1alpha1
          - description: Lists of Targets and Rules to apply to them, as well as an
              upgrade facilitating Machine Config Pool
            displayName: Mutex Run Config
            kind: MutexRunConfig
            name: mutexrunconfigs.openshift-optional.skrzypek.io
            version: v1alpha1
          - description: A list of Machine Config Pools to enforce upgrade procedure.
            displayName: Mutex Target
            kind: MutexTarget
            name: mutextargets.openshift-optional.skrzypek.io
            version: v1alpha1
        description: |
          ## Introduction

          This operator injects required operations in the form of a Kubernetes job into the worker node upgrade process using MachineConfigPools. In short, when provided a list of operations (`MutexRules`) and a list of MachineConfigPools (`MutexTargets`) , the OpenShift Node Upgrade Mutex Operator will execute each operation for a given target, enable updates for the given target by modifying it's MachineConfigPool membership, and wait until the node has been upgraded before proceeding onto subsequent operations and targets.

          ## Dependencies

          ### Release Version Label

          In order to confirm the successful upgrade of each target node, the NFD Operator is used to generate a version feature on every worker node. In order to proceed through given targets, each node must have this label
          `'machineconfiguration.openshift.io/release-image-version'` with a key providing the semantic version of this node (e.g. `'4.16.4'`)

          There are several ways to accomplish this, but an example MachineConfig has been provided [here](https://github.com/shpwrck/openshift-node-upgrade-mutex-operator/blob/main/machineconfig.yaml).

          ### Canary Machine Config Pool

          In addition to node labels, a MachineConfigPool that will be used to accomodate targets subject to upgrades must be provided matching the following criteria:
          * selects only worker nodes
          * is not paused

          Applying the example below will create a compatible canary pool:

          ```yaml
          ---
          apiVersion: machineconfiguration.openshift.io/v1
          kind: MachineConfigPool
          metadata:
            name: canary
          spec:
            machineConfigSelector:
              matchLabels:
                machineconfiguration.openshift.io/role: worker
            nodeSelector:
              matchLabels:
                node-role.kubernetes.io/worker: ''
              matchExpressions:
                - key: 'isCanary'
                  operator: Exists
            paused: false
          ```

          ## Usage / Custom Resources Definitions

          #### MutexRule:

          A resource storing a single rule referring to a template for a Kubernetes job to be created.
          This resource **does not** modify existing resources.

          ```yaml
          ---
          apiVersion: openshift-optional.skrzypek.io/v1alpha1
          kind: MutexRule
          metadata:
            name: k8s-example
          spec:
            jobName: "example" # Jobs will be run with this prefix name
            jobNamespace: "node-upgrade-mutex-operator" # Jobs will be run in this namespace
            jobSpec: # Accepts full 'batch/v1' job spec
              selector: {}
              template:
                metadata:
                  name: mutex
                spec:
                  containers:
                  - command:
                    - sleep
                    args:
                    - "30"
                    image: ubi9/toolbox
                    name: mutex
                  restartPolicy: Never
            cleanUpJobSpec: # Accepts full 'batch/v1' job spec (Optional)
              selector: {}
              template:
                metadata:
                  name: mutex
                spec:
                  containers:
                  - command:
                    - sleep
                    args:
                    - "30"
                    image: ubi9/toolbox
                    name: mutex
                  restartPolicy: Never
            type: kubernetes
          ```

          #### MutexTarget:

          A resource storing a set of MachineConfigPools to pause and incrementally upgrade.
          This resource **does not** modify existing resources.

          ```yaml
          ---
          apiVersion: openshift-optional.skrzypek.io/v1alpha1
          kind: MutexTarget
          metadata:
            name: worker-example
          spec:
            machineConfigPools:
              - worker # Name of existing machineconfigpool
          ```

          #### MutexRunConfig:

          A resource that references existing MutexRules and MutexTargets as well as an existing MachineConfigPool that will allow members to be upgraded. Every rule defined in the `mutexRules` list will be added as a mandatory task to every node that is a member of the each MachineConfigPool defined in the `mutexTargets` list.
          This resource **does** modify existing resources.

          ```yaml
          apiVersion: openshift-optional.skrzypek.io/v1alpha1
          kind: MutexRunConfig
          metadata:
            name: example
          spec:
            skipTLSVerify: false # Defaults to false if omitted
            canary:
              name: canary # Name of unpaused machineconfigpool to modify
            mutexRules: # List of existing mutexRules
              - name: k8s-example
                namespace: node-upgrade-mutex-operator
            mutexTargets: # List of existing mutexTargets
              - name: worker-example
                namespace: node-upgrade-mutex-operator
          ```

          ## Procedure

          #### MutexRule

          1. Upon creation/modification, the schema of each K8s rule is validated.
          2. Status is updated to indicate valid or invalid configuration.

          #### MutexTargets

          1. Upon creation/modification, the existence of each target is validated.
          2. Status is updated to indicate valid or invalid configuration.
          3. The nodes assigned to each target are added to the status field `nodes`.

          #### MutexRunConfigs

          1. Upon creation/modification, the existence as well as validation status of each rule, target, and canary pool is confirmed.
          2. If valid, the existence of an upgrade is queried. An upgrade is available if the following is true:
              * The `status.history` of the `cluster` ClusterVersion equals `Completed`
              * The `release-image-version` of any worker node is less than the `spec.desiredUpdate.version` of the `cluster` ClusterVersion.
          3. If an update exists, each target MachineConfigPool has `spec.paused` set to `true`.
          4. If each pool is paused, each node is updated to include a label for each rule with the following format:
              * `mutexrule.openshift-optional.skrzypek.io/{{MutexRule_Name}}.{{MutexRule_Namespace}}`
          5. If labels have been applied, the provided canary pool is modified to exclude nodes with labels provided by step (4).
          6. Assuming steps (2-5) have completed successfully, then the process for running jobs and updating nodes begins. The process per node is as follows:
              * Launch each K8S job sequentially
              * Remove the current node's rule labels
              * Wait until the `release-image-version` of the node matches the `spec.desiredUpdate.version` of the `cluster` ClusterVersion
              * Launch each K8S cleanup job sequentially
          7. If the update succeeds, all machine config pools are unpaused and all match expressions are removed.

          ## Permissions Granted

          In addition to the permissions required to operate the included CRDs, the following access is granted to the operator's service account.

          | Resource | Permissions |
          | :---: | :---: |
          | Jobs | Create & Read |
          | Nodes | Read & Update |
          | ClusterVersion | Read |
          | MachineConfigPools | Read & Update |

          ## Notes

          * This operator was built using the operator-sdk's ansible plugin and therefore has all of the inherited capabilities and restrictions.
          * This operator has undergone minimal testing and should not be run in production environments without acknowledging the risks.
          * This operator is currently alpha and subject to change based on requirements.

          ## Additional Information
          For additional information refer to the [GitHub Repository](https://github.com/shpwrck/openshift-node-upgrade-mutex-operator)
        displayName: OpenShift Node Upgrade Mutex Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - OpenShift Optional
        - Upgrade
        - Mutex
        links:
        - name: Openshift Node Upgrade Mutex Operator
          url: https://github.com/shpwrck/openshift-node-upgrade-mutex-operator
        maintainers:
        - email: jskrzype@redhat.com
          name: Jason Skrzypek
        maturity: alpha
        minKubeVersion: 1.27.0
        provider:
          name: Jason Skrzypek
          url: https://github.com/shpwrck
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d8cc6ffb98190e8dd403bfe67ddcb454e6127d32b87acc237b3e5240f70a20fb
        - quay.io/community-operator-pipeline-prod/openshift-node-upgrade-mutex-operator@sha256:5ac79c9193934440464a595434fe4241e038505d32650843afcad5f5bc2ce8a7
        - quay.io/jskrzypek/openshift-node-upgrade-mutex-operator@sha256:d4c28e8b256c00429d9999595c2386f1a25de597ee8e6c33871bb7b22b84c4af
        version: 0.2.66
      entries:
      - name: openshift-node-upgrade-mutex-operator.v0.2.66
        version: 0.2.66
      - name: openshift-node-upgrade-mutex-operator.v0.2.65
        version: 0.2.65
      - name: openshift-node-upgrade-mutex-operator.v0.2.60
        version: 0.2.60
      - name: openshift-node-upgrade-mutex-operator.v0.2.59
        version: 0.2.59
      - name: openshift-node-upgrade-mutex-operator.v0.2.53
        version: 0.2.53
      - name: openshift-node-upgrade-mutex-operator.v0.2.38
        version: 0.2.38
      - name: openshift-node-upgrade-mutex-operator.v0.2.34
        version: 0.2.34
      - name: openshift-node-upgrade-mutex-operator.v0.2.15
        version: 0.2.15
      - name: openshift-node-upgrade-mutex-operator.v0.2.14
        version: 0.2.14
      - name: openshift-node-upgrade-mutex-operator.v0.1.22
        version: 0.1.22
      name: alpha
    defaultChannel: alpha
    packageName: openshift-node-upgrade-mutex-operator
    provider:
      name: Jason Skrzypek
      url: https://github.com/shpwrck
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: costmanagement-metrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: costmanagement-metrics-operator.4.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
                "kind": "CostManagementMetricsConfig",
                "metadata": {
                  "name": "costmanagementmetricscfg-sample-v1beta1"
                },
                "spec": {
                  "authentication": {
                    "type": "token"
                  },
                  "packaging": {
                    "max_reports_to_store": 30,
                    "max_size_MB": 100
                  },
                  "prometheus_config": {
                    "collect_previous_data": true,
                    "context_timeout": 120,
                    "disable_metrics_collection_cost_management": false,
                    "disable_metrics_collection_resource_optimization": false
                  },
                  "source": {
                    "check_cycle": 1440,
                    "create_source": false,
                    "name": ""
                  },
                  "upload": {
                    "upload_cycle": 360,
                    "upload_toggle": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          certified: "true"
          containerImage: registry.redhat.io/costmanagement/costmanagement-metrics-rhel9-operator@sha256:e4457d0a4c77e95f46637e41044f45049fe03e818db82fabef06bd95c723778b
          createdAt: "2025-11-11T14:26:15Z"
          description: A Golang-based OpenShift Operator that generates and uploads
            OpenShift usage metrics to cost management.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
              "kind": "CostManagementMetricsConfig",
              "metadata": {
                "name": "costmanagementmetricscfg-sample-v1beta1"
              },
              "spec": {
                "authentication": {
                  "token_url": "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token",
                  "type": "token"
                },
                "api_url": "https://console.redhat.com/",
                "packaging": {
                  "max_reports_to_store": 30,
                  "max_size_MB": 100
                },
                "upload": {
                  "ingress_path": "/api/ingress/v1/upload",
                  "upload_cycle": 360,
                  "upload_toggle": true,
                  "validate_cert": true
                },
                "prometheus_config": {
                  "collect_previous_data": true,
                  "context_timeout": 120,
                  "disable_metrics_collection_cost_management": false,
                  "disable_metrics_collection_resource_optimization": false,
                  "service_address": "https://thanos-querier.openshift-monitoring.svc:9091",
                  "skip_tls_verification": false
                },
                "source": {
                  "check_cycle": 1440,
                  "create_source": false,
                  "name": "",
                  "sources_path": "/api/sources/v1.0/"
                }
              }
            }
          operatorframework.io/suggested-namespace: costmanagement-metrics-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/project-koku/koku-metrics-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CostManagementMetricsConfig is the Schema for the costmanagementmetricsconfig
              API
            displayName: Cost Management Metrics Config
            kind: CostManagementMetricsConfig
            name: costmanagementmetricsconfigs.costmanagement-metrics-cfg.openshift.io
            version: v1beta1
        description: |
          # Cost Management Metrics Operator
          ## Introduction
          The `costmanagement-metrics-operator` is a component of the [cost managment](https://access.redhat.com/documentation/en-us/cost_management_service) service for Openshift. The operator runs on the latest supported versions of Openshift. This operator obtains OpenShift usage data by querying Prometheus every hour to create metric reports that it uploads to Cost Management at [console.redhat.com](https://console.redhat.com) to be processed. For more information, reach out to <costmanagement@redhat.com>.

          This operator is capable of functioning within a disconnected/restricted network (aka air-gapped mode). In this mode, the operator will store the packaged reports for manual retrieval instead of being uploaded to Cost Management. Documentation for installing an operator within a restricted network can be found [here](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html).

          ## Features and Capabilities
          #### Metrics collection:
          The Cost Management Metrics Operator (`costmanagement-metrics-operator`) collects the metrics required for Cost Management by:
          * Querying Prometheus to gather the necessary metrics for Cost Management.
          * Writing the results of Prometheus queries to CSV report files.
          * Packaging the CSV report files into tarballs.

          #### Additional Capabilities:
          * Resource Optimization metrics collection.
          * The operator can be configured to gather all previous data within the configured retention period or a maximum of 90 days. The default data collection period is the 14 previous days. This setting is only applicable to newly created CostManagementMetricsConfigs.
          * The operator can be configured to automatically upload the packaged reports to Cost Management through Red Hat Insights Ingress service.
          * The operator can create an integration in console.redhat.com. An integration is required for Cost Management to process the uploaded packages.
          * PersistentVolumeClaim (PVC) configuration: The CostManagementMetricsConfig CR can accept a PVC definition and the operator will create and mount the PVC. If one is not provided, a default PVC will be created.
          * Restricted network installation: this operator can function on a restricted network. In this mode, the operator stores the packaged reports for manual retrieval.

          ## New in v4.3.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for cost management.

          ## New in v4.2.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for resource optimization.
          * (Bugfix) Fixed custom CA certificate validation and configuration issues.
          * (Bugfix) Fixed issue where ROS queries were missing workload metadata for namespaces labeled only with the legacy `insights_cost_management_optimizations` label.

          ## New in v4.1.0:
          * Enabled gathering and reporting namespace metrics to provide more granular data for resource optimization.
          * Updated CSV report filenames to be more descriptive, replacing the previous generic UID-based names with content-reflective names.
          * Introduced a new generic label, `cost_management_optimizations`, for resource optimization while ensuring backward compatibility with the older `insights_cost_management_optimizations` label.

          ## New in v4.0.0:
          * **Virtual Machine Metrics:** Adds capabilities for collecting metrics and generating reports for running virtual machines within your OpenShift environment.
          * **FIPS Compliance:** Supports deployment in high-security environments when run on an OpenShift cluster with FIPS mode enabled.

          ## New in v3.3.2:
          * Leader election settings are now configurable via environment variables. These variables can be modified in the operator [Subscription](https://github.com/operator-framework/operator-lifecycle-manager/blob/5a01f50258003e248bd5630df0837fe0bb0f1cb7/doc/design/subscription-config.md). The values should be specified as durations in seconds in the format `<number-of-seconds>s`. The default values for `LEADER_ELECTION_LEASE_DURATION`, `LEADER_ELECTION_RENEW_DEADLINE`, and `LEADER_ELECTION_RETRY_PERIOD` are '60s', '30s', and '5s', respectively.

            ```
            kind: Subscription
            metadata:
            ...
            spec:
              ...
              config:
                env:
                - name: LEADER_ELECTION_LEASE_DURATION
                  value: "60s"
                - name: LEADER_ELECTION_RENEW_DEADLINE
                  value: "30s"
                - name: LEADER_ELECTION_RETRY_PERIOD
                  value: "5s"
            ```

          ## New in v3.3.1:
          * Optimize memory usage when reading CSV files.

          ## New in v3.3.0:
          * Storage reports now contain `node`, `csi_driver`, and `csi_volume_handle` fields.
          * The PVC capacity is now populated using the `kube_persistentvolume_capacity_bytes` metric instead of `kubelet_volume_stats_capacity_bytes`.
          * To receive resource optimization recommendations for your namespaces, you must now first enable each namespace. To enable a namespace, label it with `insights_cost_management_optimizations='true'`. In the CLI, run:
            ```
              oc label namespace NAMESPACE insights_cost_management_optimizations="true" --overwrite=true
            ```
          * __DEPRECATION NOTICE__: Basic authentication is deprecated and will not be supported beyond December 31, 2024. If the default token authentication method cannot be used, you must switch to [service account](https://console.redhat.com/iam/service-accounts) authentication ([more on creating a service account](https://access.redhat.com/articles/7036194)). Once you have created your service account, follow [this documentation](https://access.redhat.com/documentation/en-us/cost_management_service/1-latest/html-single/integrating_openshift_container_platform_data_into_cost_management/index#service-account-authentication_adding-an-ocp-int) on how to configure your operator to use service account authentication. Service-accounts must also be used if manually uploading payloads to console.redhat.com.

          ## New in v3.2.1:
          * The minimum supported configuration for `upload_cycle` is now 60 (minutes).
          * (Bugfix) many-to-many matching not allowed query fix.
          * (Bugfix) Sequentially collect data during initial install.

          ## New in v3.2.0:
          * Support for amd64, arm64, ppc64le, s390x architectures.
          * add liveness and readiness probes to controller Pod.
          * update pod security settings so that the controller Pod can run in Restricted mode [more info](https://sdk.operatorframework.io/docs/best-practices/pod-security-standards/).

          ## New in v3.1.0:
          * Add service-account authentication type.
          * __Deprecation Notice:__ Basic authentication is deprecated and will be removed in a future version of the operator.

          ## New in v3.0.0:
          * Daily report generation: Operator versions prior to v3.0.0 generated sequential reports. Now, reports are generated starting at 0:00 UTC. Any payloads generated throughout a given day will contain all data starting from 0:00 UTC. Once the next day starts, the previous day's reports are packaged, and the new report again starts at 0:00 UTC for the current day.
          * Failed query retry: In an attempt to prevent missing data, the operator will retry queries from the last successful query time, up to 5 times.

          ## New in v2.0.0:
          * Adds metrics and report generation for resource optimization. This feature will collect additional usage metrics and create a new report in the payload. These metrics are enabled by default, but can be disabled by setting `disable_metrics_collection_resource_optimization` to `true`.
          * Collect all available Prometheus data upon CR creation. This feature only applies to newly created CostManagementMetricsConfigs. The operator will check the monitoring stack configuration in the `openshift-monitoring` namespace. The operator will use the `retention` period set in the `cluster-monitoring-config` ConfigMap if defined, up to a maximum of 90 days. Otherwise it will fall back to collecting 14 days of data, if available. This data collection may be disabled by setting `collect_previous_data` to `false`. Turning this feature off results in the operator collecting metrics from the time the CostManagementMetricsConfig is created, forward.

          ## Limitations and Pre-Requisites
          #### Limitations (Potential for metrics data loss)
          * An integration **must** exist in console.redhat.com for an uploaded payload to be processed by Cost Management. The operator sends the payload to the Red Hat Insights Ingress service which usually returns successfully, but the operator does not currently confirm with Cost Management that the payload was processed. After Ingress accepts the uploaded payload, it is deleted from the operator. If the data within the payload is not processed, a gap will be introduced in the usage metrics. Data may be recollected by deleting the `CostManagementMetricsConfig`, creating a new `CostManagementMetricsConfig`, and setting `collect_previous_data: true`. This re-collection of data will gather all data stored in Prometheus, up to 90 days.

          **Note** The following limitations are specific to operators configured to run in a restricted network:
          * The `costmanagement-metrics-operator` will not be able to generate new reports if the PVC storage is full. If this occurs, the reports must be manually deleted from the PVC so that the operator can function as normal.
          * The default report retention is 30 reports (about one week's worth of data). The reports must be manually downloaded and uploaded to console.redhat.com every week, or they will be deleted and the data will be lost.

          #### Storage configuration prerequisite
          The operator will attempt to create and use the following PVC when installed:

                volume_claim_template:
                  apiVersion: v1
                  kind: PersistentVolumeClaim
                  metadata:
                    name: costmanagement-metrics-operator-data
                  spec:
                    accessModes:
                      - ReadWriteOnce
                    resources:
                      requests:
                        storage: 10Gi

          If a different PVC should be utilized, a valid PVC should be specified in the CostManagementMetricsConfig CR as described in the appropriate section below. The PVC to be used may exist already, or the operator will attempt to create it.

          To use the default specification, the follow assumptions must be met:
          1. A default StorageClass is defined.
          2. Dynamic provisioning for that default StorageClass is enabled.

          If these assumptions are not met, the operator will not deploy correctly. In these cases, storage must be manually configured. After configuring storage, a valid PVC template should be supplied in the `volume_claim_template` spec of the CostManagementMetricsConfig CR.

          ## Configurable parameters:
            * `authentication`:
              * `type: token` -> The authentication method for connecting to `console.redhat.com`. The default and preferred method is `token`. `basic` (deprecated) and `service-account` authentication methods are used when the openshift-config pull-secret does not contain a token for `console.redhat.com`.
              * `secret_name` -> The Secret used by the operator when the authentication type is `basic` (deprecated) or `service-account`. This parameter is required **only if** the authentication type is `basic` (deprecated) or `service-account`.
            * `packaging`:
              * `max_reports_to_store: 30` -> The number of reports to store when configured in air-gapped mode. The default is 30, with a minimum of 1 and no maximum. When the operator is not configured in air-gapped mode, this parameter has no effect. Reports are removed as soon as they are uploaded.
              * `max_size: 100` -> The maximum size for packaged files in Megabytes prior to compression. The default is 100, with a minimum of 1 and maximum of 100.
            * `prometheus_config`:
              * `collect_previous_data: true` -> Toggle for collecting all available data in Prometheus **upon CostManagementMetricsConfig creation** (This parameter will start to appear in CostManagementMetricsConfigs that were created prior to v2.0.0 but will not have any effect unless the CostManagementMetricsConfig is deleted and recreated). The default is `true`. The operator will first look for a `retention` period in the `cluster-monitoring-config` ConfigMap in the `openshift-monitoring` namespace and gather data over this time period up to a maximum of 90 days. If this configuration is not set, the default is 14 days. (New in v2.0.0)
              * `disable_metrics_collection_cost_management: false` -> Toggle for disabling the collection of metrics for Cost Management. The default is false. (New in v2.0.0)
              * `disable_metrics_collection_resource_optimization: false` -> Toggle for disabling the collection of metrics for Resource Optimization. The default is false. (New in v2.0.0)
              * `context_timeout: 120` -> The time in seconds before Prometheus queries timeout due to exceeding context timeout. The default is 120, with a minimum of 10 and maximum of 180.
            * `source`:
              * `name: ''` -> The name of the integration the operator will create in `console.redhat.com`. If the name value is empty, the default intergration name is the **cluster id**.
              * `create_source: false` -> Toggle for whether or not the operator will create the integration in `console.redhat.com`. The default is False. This parameter should be switched to True when an integration does not already exist in `console.redhat.com` for this cluster.
              * `check_cycle: 1440` -> The time in minutes to wait between checking if an integration exists for this cluster. The default is 1440 minutes (24 hrs).
            * `upload`:
              * `upload_cycle: 360` -> The time in minutes between payload uploads. The default is 360 (6 hours), minimum is 60 (1 hour).
              * `upload_toggle: true` -> Toggle to turn upload on or off -> true means upload, false means do not upload (false == air-gapped mode). The default is `true`.
              * `upload_wait` -> The amount of time (in seconds) to pause before uploading a payload. The default is a random number between 0 and 35. This is used to decrease service load, but may be set to `0` if desired.
            * `volume_claim_template` -> see the "Storage configuration prerequisite" section above.

          ## Configure the costmanagement-metrics-operator
          **Note** There are separate instructions for configuring the `costmanagement-metrics-operator` to run in a restricted network.
          ##### Configure authentication
          The default authentication for the operator is `token`. No further steps are required to configure token authentication. If `basic` (deprecated) or `service-account` is the preferred authentication method, a Secret which holds the credentials must be created:
          1. On the left navigation pane, select `Workloads` -> `Secrets` -> select Project: `costmanagement-metrics-operator` -> `Create` -> `Key/Value Secret`
          2. Give the Secret a name and add 2 keys (all lowercase) for the respective authentication type. The values for these keys correspond to console.redhat.com credentials:
              * basic auth (deprecated): `username` and `password`
              * service-account auth: `client_id` and `client_secret`

          3. Select `Create`.
          ##### Create the CostManagementMetricsConfig
          Configure the costmanagement-metrics-operator by creating a `CostManagementMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `costmanagement-metrics-operator` -> `CostManagementMetricsConfig` -> `Create Instance`.
          2. For `basic` (deprecated) or `service-account` authentication, edit the following values in the spec:
              * Replace `authentication: type:` with `basic` or `service-account`.
              * Add the `secret_name` field under `authentication`, and set it equal to the name of the authentication Secret that was created above. The spec should look similar to the following:

                  * for basic auth type (deprecated)
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: basic
                  ```

                  * for service-account auth type
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: service-account
                  ```

          3. To configure the costmanagement-metrics-operator to create a cost management integration, edit the following values in the `source` field:
              * Replace the `name` field value with the preferred name of the integration to be created.
              * Replace the `create_source` field value with `true`.

              **Note:** if the integration already exists, replace the empty string value of the `name` field with the existing name, and leave `create_source` as false. This will allow the operator to confirm that the integration exists.

          4. If not specified, the operator will create a default PersistentVolumeClaim called `costmanagement-metrics-operator-data` with 10Gi of storage. To configure the costmanagement-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec:

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          5. Select `Create`.

          # Restricted Network Usage (disconnected/air-gapped mode)
          ## Installation
          To install the `costmanagement-metrics-operator` in a restricted network, follow the [olm documentation](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html). The operator is found in the `community-operators` Catalog in the `registry.redhat.io/redhat/community-operator-index:latest` Index. If pruning the index before pushing to the mirrored registry, keep the `costmanagement-metrics-operator` package.

          Within a restricted network, the operator queries prometheus to gather the necessary usage metrics, writes the query results to CSV files, and packages the reports for storage in the PVC. These reports then need to be manually downloaded from the cluster and uploaded to [console.redhat.com](https://console.redhat.com).

          ## Configure the costmanagement-metrics-operator for a restricted network
          ##### Create the CostManagementMetricsConfig
          Configure the costmanagement-metrics-operator by creating a `CostManagementMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `costmanagement-metrics-operator` -> `CostManagementMetricsConfig` -> `Create Instance`.
          2. Specify the desired storage. If not specified, the operator will create a default Persistent Volume Claim called `costmanagement-metrics-operator-data` with 10Gi of storage. To configure the costmanagement-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec (below is only a template. Any _valid_ `PersistentVolumeClaim` may be defined here):

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      storageClassName: <insert-class-name>
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          3. (Optional) Specify the desired report retention. The operator will retain 30 reports by default. This corresponds to approximately one week's worth of data if using the default packaging cycle. To modify the number of retained reports:
              * Change the `packaging` spec field `max_reports_to_store` to the desired number of reports to retain. Once this max number is reached, the operator will start removing the oldest packages remaining on the PVC:

                ```
                  packaging:
                    max_size_MB: 100
                    max_reports_to_store: 30
                ```

              **Note:** The number of retained reports directly affects the frequency that reports must be manually downloaded from the PVC. Take caution in setting this to a higher number of reports, as the operator cannot write data to the PVC if the storage is full.
          4. To configure the operator to perform in a restricted network, set the `upload_toggle` to `false`:

            ```
              upload:
                upload_cycle: 360
                upload_toggle: false
            ```

          5. Select `Create`.

          ## Download reports from the Operator & clean up the PVC
          If the `costmanagement-metrics-operator` is configured to run in a restricted network, the metric reports will not automatically upload to cost managment. Instead, they need to be manually copied from the PVC for upload to [console.redhat.com](https://console.redhat.com). The default configuration saves one week of reports which means the process of downloading and uploading reports should be repeated weekly to prevent loss of metrics data. To download the reports, complete the following steps:
          1. Create the following Pod, ensuring the `claimName` matches the PVC containing the report data:

            ```
              kind: Pod
              apiVersion: v1
              metadata:
                name: volume-shell
                namespace: costmanagement-metrics-operator
                labels:
                  app: costmanagement-metrics-operator
              spec:
                volumes:
                - name: costmanagement-metrics-operator-reports
                  persistentVolumeClaim:
                    claimName: costmanagement-metrics-operator-data
                containers:
                - name: volume-shell
                  image: busybox
                  command: ['sleep', 'infinity']
                  volumeMounts:
                  - name: costmanagement-metrics-operator-reports
                    mountPath: /tmp/costmanagement-metrics-operator-reports
            ```

          2. Use rsync to copy all of the files ready for upload from the PVC to a local folder:

            ```
            $ oc rsync volume-shell:/tmp/costmanagement-metrics-operator-reports/upload local/path/to/save/folder
            ```

          3. Once confirming that the files have been successfully copied, use rsh to connect to the pod and delete the contents of the upload folder so that they are no longer in storage:

            ```
            $ oc rsh volume-shell
            $ rm /tmp/costmanagement-metrics-operator-reports/upload/*
            ```

          4. (Optional) Delete the pod that was used to connect to the PVC:

            ```
            $ oc delete -f volume-shell.yaml
            ```

          ## Create an Integration
          In a restricted network, the `costmanagement-metrics-operator` cannot automatically create an integration. This process must be done manually. In the console.redhat.com platform, open the [Integrations menu](https://console.redhat.com/settings/integrations/) to begin adding an OpenShift integration to Cost Management:

          Prerequisites:
          * The cluster identifier which can be found in the CostManagementMetricsConfig CR, the cluster Overview page, or the cluster Help > About.

          Creating an integration:
          1. Navigate to the Integrations menu
          2. Select the `Red Hat` tab
          3. Create a new `Red Hat Openshift Container Platform` integration:
              * give the integration a unique name
              * add the Cost Management application
              * add the cluster identifier
          4. In the Source wizard, review the details and click `Finish` to create the source.

          ## Upload the reports to cost managment
          Uploading reports to cost managment is done through curl:

              $ curl -vvvv -F "file=@FILE_NAME.tar.gz;type=application/vnd.redhat.hccm.tar+tgz" https://console.redhat.com/api/ingress/v1/upload -H "Authorization: Bearer ${ACCESS_TOKEN}"

          where `FILE_NAME` is the name of the report to upload. The `ACCESS_TOKEN` is acquired using a service account. See documentation on [creating and managing a service account](https://docs.redhat.com/en/documentation/red_hat_customer_portal/1/html/creating_and_managing_service_accounts).
        displayName: Cost Management Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cost
        - management
        - usage
        - monitor
        links:
        - name: Cost Management Metrics Operator source code repository
          url: https://github.com/project-koku/koku-metrics-operator
        maintainers:
        - email: costmanagement@redhat.com
          name: costmanagement
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/costmanagement/costmanagement-metrics-operator-bundle@sha256:9cf11bd854c76e2b344c0072ae8487acde31f6fb50e2c47937f95186146f40e6
        - registry.redhat.io/costmanagement/costmanagement-metrics-rhel9-operator@sha256:e4457d0a4c77e95f46637e41044f45049fe03e818db82fabef06bd95c723778b
        version: 4.3.0
      entries:
      - name: costmanagement-metrics-operator.4.3.0
        version: 4.3.0
      - name: costmanagement-metrics-operator.4.2.0
        version: 4.2.0
      - name: costmanagement-metrics-operator.4.1.0
        version: 4.1.0
      - name: costmanagement-metrics-operator.4.0.0
        version: 4.0.0
      - name: costmanagement-metrics-operator.3.3.2
        version: 3.3.2
      - name: costmanagement-metrics-operator.3.3.1
        version: 3.3.1
      - name: costmanagement-metrics-operator.3.3.0
        version: 3.3.0
      - name: costmanagement-metrics-operator.3.2.1
        version: 3.2.1
      - name: costmanagement-metrics-operator.3.2.0
        version: 3.2.0
      - name: costmanagement-metrics-operator.3.1.1
        version: 3.1.1
      - name: costmanagement-metrics-operator.3.1.0
        version: 3.1.0
      - name: costmanagement-metrics-operator.3.0.1
        version: 3.0.1
      - name: costmanagement-metrics-operator.3.0.0
        version: 3.0.0
      - name: costmanagement-metrics-operator.2.0.0
        version: 2.0.0
      - name: costmanagement-metrics-operator.1.2.0
        version: 1.2.0
      - name: costmanagement-metrics-operator.1.1.9
        version: 1.1.9
      - name: costmanagement-metrics-operator.1.1.8
        version: 1.1.8
      - name: costmanagement-metrics-operator.1.1.7
        version: 1.1.7
      - name: costmanagement-metrics-operator.1.1.6
        version: 1.1.6
      - name: costmanagement-metrics-operator.1.1.5
        version: 1.1.5
      - name: costmanagement-metrics-operator.1.1.4
        version: 1.1.4
      - name: costmanagement-metrics-operator.1.1.3
        version: 1.1.3
      - name: costmanagement-metrics-operator.1.1.0
        version: 1.1.0
      - name: costmanagement-metrics-operator.1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: costmanagement-metrics-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Digital.ai
      provider-url: https://digital.ai
    name: digitalai-deploy-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: digitalai-deploy-operator.v25.1.0-beta.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "medium"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": "/login",
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/tmp",
                        "/opt/xebialabs/central-configuration-server/centralConfiguration",
                        "/opt/xebialabs/central-configuration-server/conf",
                        "/opt/xebialabs/central-configuration-server/log"
                      ],
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": "/login",
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "startupProbe": {
                      "enabled": true,
                      "failureThreshold": 12,
                      "initialDelaySeconds": 10,
                      "path": "/login",
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r39"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "quorum",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-daid",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "node-conf_xl-deploy-conf-template": {
                        "content": "# The ${APP_HOME}/node-conf/xl-deploy.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-deploy.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-deploy.conf and this is specified in ${APP_HOME}/conf/xld-wrapper.conf.common\nxl {\n  server.hostname = ${HOSTNAME}${HOSTNAME_SUFFIX}\n  cluster.node {\n    id = ${XL_NODE_NAME}\n    hostname = ${XL_NODE_NAME}\n    clusterPort = 5531\n  }\n}\n",
                        "mode": 432,
                        "path": "node-conf/xl-deploy.conf.template"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvm": {
                      "options": {
                        "networkaddress.cache.ttl": 30
                      }
                    },
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": null,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/xl-deploy-server/artifacts",
                        "/opt/xebialabs/xl-deploy-server/cache",
                        "/opt/xebialabs/xl-deploy-server/centralConfiguration",
                        "/opt/xebialabs/xl-deploy-server/conf",
                        "/opt/xebialabs/xl-deploy-server/driver/jdbc",
                        "/opt/xebialabs/xl-deploy-server/driver/mq",
                        "/opt/xebialabs/xl-deploy-server/export",
                        "/opt/xebialabs/xl-deploy-server/log",
                        "/opt/xebialabs/xl-deploy-server/node-conf",
                        "/opt/xebialabs/xl-deploy-server/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": null,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "startupProbe": {
                      "enabled": true,
                      "failureThreshold": 12,
                      "initialDelaySeconds": 60,
                      "path": null,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r39"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.12.0-debian-12-r12"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "17.2.0-debian-12-r12"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "4.0.7-debian-12-r0"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/deploy-task-engine/cache",
                        "/opt/xebialabs/deploy-task-engine/conf",
                        "/opt/xebialabs/deploy-task-engine/driver/jdbc",
                        "/opt/xebialabs/deploy-task-engine/driver/mq",
                        "/opt/xebialabs/deploy-task-engine/export",
                        "/opt/xebialabs/deploy-task-engine/log",
                        "/opt/xebialabs/deploy-task-engine/node-conf",
                        "/opt/xebialabs/deploy-task-engine/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "startupProbe": {
                      "enabled": true,
                      "failureThreshold": 12,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r39"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabsunsupported/deploy-operator@sha256:ca728924eaa65b4bc0157fca3120e92e8c58225d6ca8d45a1726e3d0f85ab38b '
          createdAt: "2025-04-09T14:58:13Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind: DigitalaiDeploy\nmetadata:\n
          \ name: daid-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  centralConfiguration:\n
          \   replicaCount: 1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  master:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  worker:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          SESSION_XLD\n      haproxy.router.openshift.io/disable_cookies: \"false\"\n
          \     haproxy.router.openshift.io/rewrite-target: /\n    hostname: '<mandatory-deploy-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n
          \       enabled: false\n      containerSecurityContext:\n        enabled:
          false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n    install:
          true\n    persistence:\n      size: 1Gi\n      storageClass: ''\n    replicaCount:
          1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\n####
          Configuration Details\n\nThe sample configuration uses:\n\n- Autogenerated
          limited license\n- Simple administrator initial password\n- Default keystore
          setup\n- Only one replica is set for all pods\n- All Pods are missing resource
          limit setup\n- Default storage class and minimal size for persistent storage\n-
          Embedded PostgreSQL for DB management\n- Embedded RabbitMQ for message queue
          management\n\n### Security Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabsunsupported/deploy-operator@sha256:ca728924eaa65b4bc0157fca3120e92e8c58225d6ca8d45a1726e3d0f85ab38b
        - docker.io/xebialabsunsupported/deploy-task-engine@sha256:5696c93aa10c114be4f84004eaceb09861d21cf03df1c05928ea68d9e89649cf
        - docker.io/xebialabsunsupported/xl-deploy@sha256:38f017fb42661c5d11a322b337d2f3e675f301c2fd9f8942e98613cf8bbd5cc0
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:18e02c701bdf2654811527f6cc26f43e74bce69256040ca301e4f5c498e7c645
        - docker.io/xebialabsunsupported/central-configuration@sha256:b7042b64b3e65ee8868aa4327b7f52257c8ccc4d70a1002d7edf3684cac0fa1b
        version: 25.1.0-beta.5
      entries:
      - name: digitalai-deploy-operator.v25.1.0-beta.5
        version: 25.1.0-beta.5
      name: beta
    - currentCSV: digitalai-deploy-operator.v24.1.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 20,
                      "probesReadinessTimeout": 20
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r16"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "classic",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "ingressClass": "haproxy-daid",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r16"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.0-debian-12-r1"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.10.1-debian-12-r5"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "15.6.0-debian-12-r7"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.13-debian-12-r2"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r16"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator without SCC creation and with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/deploy-operator@sha256:2b3413cd41f2b437e6027c8ae2cff12d1113e0ac1be69fc24840d68a05d3a665 '
          createdAt: "2024-10-16T05:39:21Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind:
          DigitalaiDeploy\nmetadata:\n  name: daid-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  securityContextConstraints:\n
          \   enabled: false\n  centralConfiguration:\n    replicaCount: 1\n    podSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n    volumePermissions:\n
          \     enabled: false\n  master:\n    replicaCount: 1\n    persistence:\n
          \     storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n      runAsUser:
          null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n    volumePermissions:\n
          \     enabled: false\n  worker:\n    replicaCount: 1\n    persistence:\n
          \     storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n      runAsUser:
          null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n    volumePermissions:\n
          \     enabled: false\n  route:\n    enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          SESSION_XLD\n      haproxy.router.openshift.io/disable_cookies: \"false\"\n
          \     haproxy.router.openshift.io/rewrite-target: /\n    hostname: '<mandatory-deploy-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n
          \       enabled: false\n        runAsUser: null\n        runAsGroup: null\n
          \       fsGroup: null\n      containerSecurityContext:\n        enabled:
          false\n        runAsUser: null\n        runAsGroup: null\n      securityContextConstraints:\n
          \       enabled: false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n
          \   install: true\n    persistence:\n      size: 1Gi\n      storageClass:
          ''\n    replicaCount: 1\n    podSecurityContext:\n      enabled: false\n
          \     runAsUser: null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     enabled: false\n      runAsUser: null\n      runAsGroup: null\n    securityContextConstraints:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\nIf
          SCC is required, it must be managed manually. The necessary permissions
          for accessing SecurityContextConstraints must be granted when SCC is enabled;
          otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"daid-doc-digitalai-deploy-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xld-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Embedded PostgreSQL for
          DB management\n- Embedded RabbitMQ for message queue management\n\n### Security
          Configuration Details\n\n- `securityContextConstraints.enabled: false` -
          disables creation of SCCs;\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/central-configuration@sha256:83359e49c66e4fab502cc75663b456eb37d81d7cb512f2c48667f4d6a324e0df
        - docker.io/xebialabs/deploy-operator@sha256:2b3413cd41f2b437e6027c8ae2cff12d1113e0ac1be69fc24840d68a05d3a665
        - docker.io/xebialabs/deploy-task-engine@sha256:8a381fd84483ea919fa7f8bee5cf19d9dec0d1d61cce73ec6b7c56fa504c6c93
        - docker.io/xebialabs/xl-deploy@sha256:77fdf6a3909367b060eba2ef698baddb77e4086d4d977f9c617d1e26a4427472
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:771a9a173e033a3ad8b46f5c00a7036eaa88c8d8d1fbd89217325168998113ea
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:9716402247ed874f19574a0d5125d1035fd198f36081d9129c1d4d4ad2f714a6
        version: 24.1.10
      entries:
      - name: digitalai-deploy-operator.v24.1.10
        version: 24.1.10
      name: stable
    - currentCSV: digitalai-deploy-operator.v24.1.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 20,
                      "probesReadinessTimeout": 20
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r40"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "classic",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "image": {
                        "tag": "v0.14.7"
                      },
                      "ingressClass": "haproxy-daid",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r40"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.2-debian-12-r10"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r0"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "15.6.0-debian-12-r20"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.14-debian-12-r7"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r40"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator without SCC creation and with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/deploy-operator@sha256:c652a6dfc1f3ce2fba528141b88b48b394db55420b12f01bc21e1c8d20ef4b01 '
          createdAt: "2025-04-07T06:31:17Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind:
          DigitalaiDeploy\nmetadata:\n  name: daid-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  securityContextConstraints:\n
          \   enabled: false\n  centralConfiguration:\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n  master:\n    replicaCount:
          1\n    persistence:\n      storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n  worker:\n    replicaCount:
          1\n    persistence:\n      storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n  route:\n    enabled: false\n
          \   annotations:\n      haproxy.router.openshift.io/cookie_name: SESSION_XLD\n
          \     haproxy.router.openshift.io/disable_cookies: \"false\"\n      haproxy.router.openshift.io/rewrite-target:
          /\n    hostname: '<mandatory-deploy-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n        enabled:
          false\n      containerSecurityContext:\n        enabled: false\n      securityContextConstraints:\n
          \       enabled: false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n
          \   install: true\n    persistence:\n      size: 1Gi\n      storageClass:
          ''\n    replicaCount: 1\n    podSecurityContext:\n      enabled: false\n
          \   containerSecurityContext:\n      enabled: false\n    securityContextConstraints:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\nIf
          SCC is required, it must be managed manually. The necessary permissions
          for accessing SecurityContextConstraints must be granted when SCC is enabled;
          otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"daid-doc-digitalai-deploy-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xld-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Embedded PostgreSQL for
          DB management\n- Embedded RabbitMQ for message queue management\n\n### Security
          Configuration Details\n\n- `securityContextConstraints.enabled: false` -
          disables creation of SCCs;\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/central-configuration@sha256:085601dcad8a1bdd996dbc5fd56d3db25cd15e2880d3b7d5e767e20959cc85cf
        - docker.io/xebialabs/deploy-operator@sha256:c652a6dfc1f3ce2fba528141b88b48b394db55420b12f01bc21e1c8d20ef4b01
        - docker.io/xebialabs/deploy-task-engine@sha256:1cb2b3483455268d96a9258f70df7f0f1544efecba83c8f695122c9932d6d13d
        - docker.io/xebialabs/xl-deploy@sha256:8854a2ae9f2f1f7a2a63a5041ae5240c48939c56db0bf4a9fd72867861320667
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:4deec4581f83eb09f53d5744ea2af54b27d8a70b2077e4ef4f47c9326de76803
        version: 24.1.17
      entries:
      - name: digitalai-deploy-operator.v24.1.17
        version: 24.1.17
      - name: digitalai-deploy-operator.v24.1.14
        version: 24.1.14
      - name: digitalai-deploy-operator.v24.1.10
        version: 24.1.10
      name: stable-v24.1
    - currentCSV: digitalai-deploy-operator.v24.3.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "medium"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 20,
                      "probesReadinessTimeout": 20
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/tmp",
                        "/opt/xebialabs/central-configuration-server/centralConfiguration",
                        "/opt/xebialabs/central-configuration-server/conf",
                        "/opt/xebialabs/central-configuration-server/log"
                      ],
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r42"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "classic",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-daid",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "node-conf_xl-deploy-conf-template": {
                        "content": "# The ${APP_HOME}/node-conf/xl-deploy.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-deploy.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-deploy.conf and this is specified in ${APP_HOME}/conf/xld-wrapper.conf.common\nxl {\n  server.hostname = ${HOSTNAME}${HOSTNAME_SUFFIX}\n  cluster.node {\n    id = ${XL_NODE_NAME}\n    hostname = ${XL_NODE_NAME}\n    clusterPort = 5531\n  }\n}\n",
                        "mode": 432,
                        "path": "node-conf/xl-deploy.conf.template"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvm": {
                      "options": {
                        "networkaddress.cache.ttl": 30
                      }
                    },
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/xl-deploy-server/artifacts",
                        "/opt/xebialabs/xl-deploy-server/cache",
                        "/opt/xebialabs/xl-deploy-server/centralConfiguration",
                        "/opt/xebialabs/xl-deploy-server/conf",
                        "/opt/xebialabs/xl-deploy-server/driver/jdbc",
                        "/opt/xebialabs/xl-deploy-server/driver/mq",
                        "/opt/xebialabs/xl-deploy-server/export",
                        "/opt/xebialabs/xl-deploy-server/log",
                        "/opt/xebialabs/xl-deploy-server/node-conf",
                        "/opt/xebialabs/xl-deploy-server/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r42"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r3"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "16.3.0-debian-12-r23"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n{{ if eq .Values.queueType \"quorum\" -}}\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n{{- end }}\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.13.7-debian-12-r5"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "queueType": "classic",
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/deploy-task-engine/cache",
                        "/opt/xebialabs/deploy-task-engine/conf",
                        "/opt/xebialabs/deploy-task-engine/driver/jdbc",
                        "/opt/xebialabs/deploy-task-engine/driver/mq",
                        "/opt/xebialabs/deploy-task-engine/export",
                        "/opt/xebialabs/deploy-task-engine/log",
                        "/opt/xebialabs/deploy-task-engine/node-conf",
                        "/opt/xebialabs/deploy-task-engine/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r42"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/deploy-operator@sha256:2f79f3ed817aa7ecd6a090e72f057ea341b4c1caad9cb83a7de6c102afb5f71d '
          createdAt: "2025-04-08T15:23:42Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind: DigitalaiDeploy\nmetadata:\n
          \ name: daid-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  centralConfiguration:\n
          \   replicaCount: 1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  master:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  worker:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          SESSION_XLD\n      haproxy.router.openshift.io/disable_cookies: \"false\"\n
          \     haproxy.router.openshift.io/rewrite-target: /\n    hostname: '<mandatory-deploy-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n
          \       enabled: false\n      containerSecurityContext:\n        enabled:
          false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n    install:
          true\n    persistence:\n      size: 1Gi\n      storageClass: ''\n    replicaCount:
          1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\n####
          Configuration Details\n\nThe sample configuration uses:\n\n- Autogenerated
          limited license\n- Simple administrator initial password\n- Default keystore
          setup\n- Only one replica is set for all pods\n- All Pods are missing resource
          limit setup\n- Default storage class and minimal size for persistent storage\n-
          Embedded PostgreSQL for DB management\n- Embedded RabbitMQ for message queue
          management\n\n### Security Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/central-configuration@sha256:db9f4109fa84c50d234e4b6efdc1ca9997e10099ddaeaf83edfd27a0db9b4909
        - docker.io/xebialabs/deploy-operator@sha256:2f79f3ed817aa7ecd6a090e72f057ea341b4c1caad9cb83a7de6c102afb5f71d
        - docker.io/xebialabs/deploy-task-engine@sha256:94f9b8aaf73a5963902c4093837bb2990ef27cdf2d0f85c8271113b4edc60c51
        - docker.io/xebialabs/xl-deploy@sha256:0538a992513564a650a8327b82872ec908d9c59491b1f27b0c29725c355a2c47
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:06cd12493818c444a53b629b055dfcb2d7a040d5bb2c0bb266aa8508afa53333
        version: 24.3.6
      entries:
      - name: digitalai-deploy-operator.v24.3.6
        version: 24.3.6
      - name: digitalai-deploy-operator.v24.3.5
        version: 24.3.5
      name: stable-v24.3
    defaultChannel: stable-v24.3
    packageName: digitalai-deploy-operator
    provider:
      name: Digital.ai
      url: https://digital.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: stolostron-engine
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stolostron-engine.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "multicluster.openshift.io/v1", "kind": "MultiClusterEngine",
            "metadata": {"name": "multiclusterengine"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/stolostron/backplane-operator@sha256:2b70bad016999d53d7d27b00f74e8dca3b9edfa8f0c1bf8906cb4ed19abbb0d9
          createdAt: "2025-11-05T18:48:44Z"
          description: Foundational components for central management of multiple
            OpenShift Container Platform and Kubernetes clusters
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.8.0 <0.8.2'
          operatorframework.io/initialization-resource: '{"apiVersion":"multicluster.openshift.io/v1",
            "kind":"MultiClusterEngine","metadata":{"name":"engine"},"spec": {}}'
          operatorframework.io/suggested-namespace: stolostron-engine
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          repository: https://github.com/stolostron/stolostron
          support: Stolostron Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MultiClusterEngine defines the configuration for an instance
              of a multicluster engine, a central point providing the foundational components for managing multiple Kubernetes-based clusters. The deployment of the multicluster engine components is
              determined based on the configuration that is defined in this resource.
            displayName: MultiCluster Engine
            kind: MultiClusterEngine
            name: multiclusterengines.multicluster.openshift.io
            version: v1
        description: 'Stolostron Engine provides the foundational components that
          are necessary for the centralized management of multiple Kubernetes-based
          clusters across data centers, public clouds, and private clouds. You can
          use the engine to create Red Hat OpenShift Container Platform clusters on
          selected providers, or import existing Kubernetes-based clusters. After
          the clusters are managed, you can use the APIs that are provided by the
          engine to distribute configuration based on placement policy. Placement
          policy is a significant part of creating sophisticated multicluster management
          applications because you can select the applicable clusters. '
        displayName: Stolostron Engine
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multiclusterengine
        links:
        - name: Documentation
          url: https://github.com/stolostron/stolostron
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: pre-release
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/stolostron/cluster-proxy-addon@sha256:674abd3cf9b3b953a4103d5c1ced32d65e70e17fc200a63c7cc65bcfb4e662c4
        - quay.io/stolostron/assisted-image-service@sha256:9e89eeca50074fb09989a0f483c5fa5d9ab227c33a9dca54693959c9d70de8f4
        - quay.io/stolostron/cluster-api-aws-controller@sha256:22a57cf5b74d0692025f0b0f57c5f28f8b492ea13295e9101b63f57766ffff38
        - quay.io/community-operator-pipeline-prod/stolostron-engine@sha256:01f5bdd558b429c535e409128dc1132d1a420eae5b61b11ccc903b89604a1516
        - quay.io/stolostron/assisted-service@sha256:b77884b64bfb748936ac8aa3cc9238d385906bbc242d044bd02f7736a459c3cc
        - quay.io/stolostron/registration-operator@sha256:274482973bfc6645da56f3a1fad0f49972dd197282fb067247269a4c196845c2
        - quay.io/stolostron/ip-address-manager@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/multicloud-manager@sha256:2f8f1cb804a3c8ccfd695c873bc77c9e5b8c295f299465b1a10b01ae6fbc79f7
        - quay.io/stolostron/assisted-installer-agent@sha256:a9b31ab5e41986ecf464613d285e9bd7c5518b94e238f6da5c8d8fabd03742a6
        - quay.io/stolostron/discovery-operator@sha256:e6eb524c1208ab40cb0b5201a3ba4135330de91f918a76ccc3ac3693d6851122
        - quay.io/stolostron/ose_cluster_api_rhel9@sha256:5bdd5905d5a6c6a611df6bf0aa0caf22eb768c938b52ae6a733ed5277c6e1c22
        - quay.io/stolostron/backplane-operator@sha256:2b70bad016999d53d7d27b00f74e8dca3b9edfa8f0c1bf8906cb4ed19abbb0d9
        - quay.io/stolostron/hypershift-operator@sha256:cc84043bbe37bfcb5aabc8d31b29523231fb94488d6d8692f5de5acf137c7534
        - quay.io/stolostron/foundation-e2e@sha256:b5502848bee71b7fb9f4b1a54f00ccbdf77a9ecbb5e3e7bfad815057f2c55e2f
        - quay.io/stolostron/cluster-api-provider-azure@sha256:f6e780adc1bf3fe64303fcb8c5d080ab639e62c62d0577a1bbae5b5f5bfa393d
        - quay.io/stolostron/ose_aws_cluster_api_controllers_rhel9@sha256:5bdd5905d5a6c6a611df6bf0aa0caf22eb768c938b52ae6a733ed5277c6e1c22
        - quay.io/stolostron/clusterclaims-controller@sha256:8a3945e3127328e6f20fab5e250f320e27c0f517e564838c7bb83a50b59ac019
        - quay.io/stolostron/helloworld@sha256:a790795409f6e781f506b6a63f39f7d344f01efa30c3de87b1727dc2010d5bbf
        - quay.io/stolostron/backplane-must-gather@sha256:4b7fc3b3e8d9e91e76863074e523a1b15a0be50c08d56babd0a2c944101203d1
        - quay.io/stolostron/discovery-testserver@sha256:fea15ba83dd90d4f7b71fa248319cd902b967e8e140ab7b25090c6459f1b77e1
        - quay.io/stolostron/assisted-service-el8@sha256:0a20fd360929b2845a0e331d994000fa65841091fc3a0ebfa0b77368fa948872
        - quay.io/stolostron/aws-encryption-provider@sha256:83f11e28004fcbb31d7ec6c34ef2d2ec7dd8fc175c5e0135f6ace9894c65bfd0
        - quay.io/stolostron/provider-credential-controller@sha256:b01347aee12c2b443930e9e46e163c09f4848556eae2cd0242d721527bfabe60
        - quay.io/stolostron/cluster-api-provider-openshift-assisted-control-plane@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/console-mce@sha256:12c11381c1fa9c4e60990b4609ffcecd511597cc40fadd264c62637bfdd6b599
        - quay.io/stolostron/addon-manager@sha256:caf5ffd4eca56c5741e638f800964d3da4ff4dd9fd01ac991a78462e6a010220
        - quay.io/stolostron/placement@sha256:770bdc64368310e1b726ed5afdab360e0b826baa6b0f49115eb525a1d5f2bedf
        - quay.io/stolostron/managedcluster-import-controller@sha256:cc01dd7b7161196c7b9159cad19b5cd18a1bde03ad5e48b2ca94321931b5bf7e
        - quay.io/stolostron/discovery-operator-tests@sha256:12617e4bef1b742b061f9a3223fcf8e9458b817467f0d551c421d14e5dab3111
        - quay.io/stolostron/cluster-api@sha256:7a04ac4e5bdaf29498af75b2b7c4ff19cb6223f2076c9373a3a955553243ddda
        - quay.io/stolostron/image-based-install-operator@sha256:e579d282460f48d59ee3078dad8e10930695c4f0f00c83a00b7703c82c273684
        - quay.io/stolostron/managed-serviceaccount@sha256:cefa8932e31bad17ed0c7ee739f024dd94681887c704ca8275c44c710cb4b19a
        - quay.io/stolostron/managed-serviceaccount-e2e@sha256:e983d2cd7f240dbbe47612055185873ffa63e5ac34083732557cdf2c20bc8a1a
        - quay.io/stolostron/helloprow-go@sha256:e055ab3773a248c22dbde9847a3289e8512ccc85c6e9015544fc4f59d14b9cad
        - quay.io/stolostron/work@sha256:7ae1d6b4cca055505a227f7ca8f4438490731de572a5bd73c9d24a63c8a0771d
        - quay.io/stolostron/clusterlifecycle-state-metrics@sha256:f50790d626b67ba32b2e8f47ba75d6895a54a24c7e27ede016f449aca3c05e3f
        - quay.io/stolostron/hypershift-addon-operator@sha256:1e4b94d0aa779fb83ab936c53deb6998d0e711328beb7e75ca987681d5e38095
        - quay.io/stolostron/assisted-installer@sha256:7a775fbcde9e6774769e1272bf4f293cbf0158d8ccddd93083611501b638f242
        - quay.io/stolostron/cluster-api-provider-kubevirt@sha256:44f8bb72b975456d4151a88a560fc525ad6f4da7968a38e94a86b6dd77d3c543
        - quay.io/stolostron/assisted-installer-controller@sha256:2d28d51a93ecfddb0499fb4e398f11b42a5e47db5fc4aa5d1648408016b77dff
        - quay.io/stolostron/apiserver-network-proxy@sha256:dc74c7c67ca851f50b83d7a03f91d028214fd8a941f12edd4411b860dc7b763d
        - quay.io/stolostron/cluster-image-set-controller@sha256:2cea7a3dadb3f58671411ef110de3c276edd99e9ad5f794fb492cdbd89cae676
        - quay.io/stolostron/cluster-proxy@sha256:1fc3e70e679a052d4fe1a50f268e6b3ef5a8fc17102df2edc5e38ba714aa194a
        - quay.io/stolostron/hive@sha256:86ff94d3e7c174ac4d6818183c66791edc7638965dd09e2d41172609c81f451f
        - quay.io/stolostron/hypershift-addon-operator-canary-test@sha256:789b63b893f7efc7a5308d0771d42f38c8eb78db3efbe67ee210ca89ba456841
        - quay.io/stolostron/cluster-api-provider-agent@sha256:e2b52112f6ae5f16b8349cb80b244c739e5ac1bd41872d08379698a04c78a0d8
        - quay.io/stolostron/cluster-curator-controller@sha256:c97ad90fd198b234301b367bc48c2b690562711f3f0ecfa14388169b28f7b424
        - quay.io/stolostron/kube-rbac-proxy-mce@sha256:365124bd4e035bb8b7b6b2c6bbb861f69a25a5217b03e8d120cd717e9fe18822
        - quay.io/stolostron/cluster-api-provider-openshift-assisted-bootstrap@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/backplane-operator-test@sha256:c9032e5453a8a5e293a6360e40bdfc3734f949c1fb6269a78844d0b4e225960b
        - quay.io/stolostron/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        - quay.io/stolostron/ose-baremetal-cluster-api-controllers-rhel9@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/registration@sha256:34f4b9682e163947af8192b95a47534afb16453055a0fb6772bc3b1f4c8bf6b6
        version: 0.8.2
      entries:
      - name: stolostron-engine.v0.8.2
        version: 0.8.2
      - name: stolostron-engine.v0.8.1
        version: 0.8.1
      - name: stolostron-engine.v0.8.0
        version: 0.8.0
      name: community-0.8
    defaultChannel: community-0.8
    packageName: stolostron-engine
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: metallb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: metallb-operator.v4.20.0-202512081818
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRConfiguration",
                "metadata": {
                  "name": "basic",
                  "namespace": "frr-k8s-system"
                },
                "spec": {
                  "bgp": {
                    "routers": [
                      {
                        "asn": 64512,
                        "neighbors": [
                          {
                            "address": "172.30.0.3",
                            "asn": 64512,
                            "port": 180,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            },
                            "toReceive": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          }
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRConfiguration",
                "metadata": {
                  "name": "two-neighs",
                  "namespace": "frr-k8s-system"
                },
                "spec": {
                  "bgp": {
                    "routers": [
                      {
                        "asn": 64512,
                        "neighbors": [
                          {
                            "address": "172.30.0.3",
                            "asn": 4200000000,
                            "ebgpMultiHop": true,
                            "port": 180,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          },
                          {
                            "address": "172.18.0.6",
                            "asn": 4200000000,
                            "port": 179,
                            "toAdvertise": {
                              "allowed": {
                                "prefixes": [
                                  "192.168.2.0/24"
                                ]
                              }
                            }
                          }
                        ],
                        "prefixes": [
                          "192.168.2.0/24",
                          "192.169.2.0/24"
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRConfiguration",
                "metadata": {
                  "name": "two-routers-vrf",
                  "namespace": "frr-k8s-system"
                },
                "spec": {
                  "bgp": {
                    "routers": [
                      {
                        "asn": 64513,
                        "neighbors": [
                          {
                            "address": "172.32.0.3",
                            "asn": 4200000000,
                            "ebgpMultiHop": true,
                            "port": 180,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          }
                        ],
                        "prefixes": [
                          "192.168.2.0/24",
                          "192.169.2.0/24"
                        ]
                      },
                      {
                        "asn": 64515,
                        "neighbors": [
                          {
                            "address": "172.31.0.3",
                            "asn": 4200000000,
                            "port": 179,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          }
                        ],
                        "prefixes": [
                          "192.168.2.0/24",
                          "192.169.2.0/24"
                        ],
                        "vrf": "red"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRNodeState",
                "metadata": {
                  "name": "frr-k8s-worker"
                },
                "status": {
                  "lastConversionResult": "success",
                  "lastReloadResult": "success",
                  "runningConfig": "Building configuration...\n\nCurrent configuration:\n!\nfrr version 9.0.2_git\nfrr defaults traditional\nhostname frr-k8s-worker\nlog file /etc/frr/frr.log informational\nlog timestamp precision 3\nno ipv6 forwarding\nservice integrated-vtysh-config\n!\nip nht resolve-via-default\n!\nipv6 nht resolve-via-default\n!\nend\n"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BFDProfile",
                "metadata": {
                  "name": "bfd-profile-sample",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "receiveInterval": 380,
                  "transmitInterval": 270
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "peers": [
                    "ebgp-single-hop0"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "ipAddressPoolSelectors": [
                    {
                      "matchLabels": {
                        "test": "ipv6"
                      }
                    },
                    {
                      "matchLabels": {
                        "test": "ipv4"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample3",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "aggregationLength": 32,
                  "aggregationLengthV6": 128,
                  "communities": [
                    "65535:65282"
                  ],
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "localPref": 50
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample4",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "aggregationLength": 32,
                  "aggregationLengthV6": 128,
                  "communities": [
                    "NO_ADVERTISE"
                  ],
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "localPref": 50
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample5",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "aggregationLength": 32,
                  "aggregationLengthV6": 128,
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "nodeSelectors": [
                    {
                      "matchLabels": {
                        "kubernetes.io/hostname": "kind-control-plane"
                      }
                    },
                    {
                      "matchLabels": {
                        "kubernetes.io/hostname": "kind-worker"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-beta1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "myASN": 64512,
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "Community",
                "metadata": {
                  "name": "community1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "communities": [
                    {
                      "name": "NO_ADVERTISE",
                      "value": "65535:65282"
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "IPAddressPool",
                "metadata": {
                  "name": "ip-addresspool-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "addresses": [
                    "192.168.10.0/24",
                    "192.168.9.1-192.168.9.5",
                    "fc00:f853:0ccd:e799::/124"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "IPAddressPool",
                "metadata": {
                  "labels": {
                    "test": "ipv4"
                  },
                  "name": "ip-addresspool-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "addresses": [
                    "172.20.0.100/24"
                  ],
                  "autoAssign": false
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "IPAddressPool",
                "metadata": {
                  "labels": {
                    "test": "ipv6"
                  },
                  "name": "ip-addresspool-sample3",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "addresses": [
                    "2002:2:2::1-2002:2:2::100"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "L2Advertisement",
                "metadata": {
                  "name": "l2-adv-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "L2Advertisement",
                "metadata": {
                  "name": "l2-adv-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "nodeSelectors": [
                    {
                      "matchLabels": {
                        "kubernetes.io/hostname": "kind-control-plane"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "MetalLB",
                "metadata": {
                  "name": "metallb",
                  "namespace": "metallb-system"
                },
                "spec": {}
              },
              {
                "apiVersion": "metallb.io/v1beta2",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "myASN": 64512,
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta2",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "bfdProfile": "bfd-profile-sample",
                  "myASN": 64512,
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta2",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-sample3",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "holdTime": "9m0s",
                  "keepaliveTime": "0s",
                  "myASN": 64512,
                  "passwordSecret": {
                    "name": "secretname",
                    "namespace": "metallb-system"
                  },
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3",
                  "peerPort": 180
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/metallb-rhel9-operator@sha256:72b48d051e8794b0a5eb63d92db04547a4ce27de39ec4c63a77ea2fabaf96ff1
          createdAt: "2023-06-06T15:25:00Z"
          description: An operator for deploying MetalLB on a kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.8.0 <4.20.0'
          operatorframework.io/suggested-namespace: metallb-system
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/metallb-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BFDProfile is the Schema for the bfdprofiles API
            kind: BFDProfile
            name: bfdprofiles.metallb.io
            version: v1beta1
          - description: BGPAdvertisement is the Schema for the bgpadvertisements
              API
            kind: BGPAdvertisement
            name: bgpadvertisements.metallb.io
            version: v1beta1
          - description: BGPPeer is the Schema for the bgppeers API
            kind: BGPPeer
            name: bgppeers.metallb.io
            version: v1beta1
          - description: BGPPeer is the Schema for the bgppeers API
            kind: BGPPeer
            name: bgppeers.metallb.io
            version: v1beta2
          - description: Community is the Schema for the communities API
            kind: Community
            name: communities.metallb.io
            version: v1beta1
          - description: FRRConfiguration is the Schema for the frrconfigurations
              API
            kind: FRRConfiguration
            name: frrconfigurations.frrk8s.metallb.io
            version: v1beta1
          - description: FRRNodeState is the Schema for the frrnodestates API
            kind: FRRNodeState
            name: frrnodestates.frrk8s.metallb.io
            version: v1beta1
          - description: IPAddressPool is the Schema for the ipaddresspools API
            kind: IPAddressPool
            name: ipaddresspools.metallb.io
            version: v1beta1
          - description: L2Advertisement is the Schema for the l2advertisements API
            kind: L2Advertisement
            name: l2advertisements.metallb.io
            version: v1beta1
          - description: MetalLB is the Schema for the metallbs API
            displayName: MetalLB
            kind: MetalLB
            name: metallbs.metallb.io
            version: v1beta1
          - kind: ServiceBGPStatus
            name: servicebgpstatuses.metallb.io
            version: v1beta1
          - description: L2ServiceStatus is the Schema for the l2servicestatus API
            kind: ServiceL2Status
            name: servicel2statuses.metallb.io
            version: v1beta1
        description: An operator for deploying MetalLB on a kubernetes cluster.
        displayName: MetalLB Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - metallb-operator
        links:
        - name: MetalLB Operator
          url: https://github.com/openshift/metallb-operator
        maintainers:
        - email: fpaoline@redhat.com
          name: Federico Paolinelli
        - email: obraunsh@redhat.com
          name: Ori Braunshtein
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-metallb-operator-bundle@sha256:f44369457410c34175352a6d9c3939c7931bf42d6099dfa119e3a8f558dcbab0
        - registry.redhat.io/openshift4/frr-rhel9@sha256:9f8df09b73df5d35920e24dcbb3d69df441e9d5434561c0c3e965c90506a333e
        - registry.redhat.io/openshift4/metallb-rhel9-operator@sha256:72b48d051e8794b0a5eb63d92db04547a4ce27de39ec4c63a77ea2fabaf96ff1
        - registry.redhat.io/openshift4/metallb-rhel9@sha256:75864368e099ccfa6117e5c96bdec03a330361f923b521da1cd4b1d59b923121
        version: 4.20.0-202512081818
      entries:
      - name: metallb-operator.v4.20.0-202512081818
        version: 4.20.0-202512081818
      - name: metallb-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: metallb-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: metallb-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: metallb-operator.v4.20.0-202511040554
        version: 4.20.0-202511040554
      - name: metallb-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: metallb-operator.v4.20.0-202509271248
        version: 4.20.0-202509271248
      name: stable
    defaultChannel: stable
    packageName: metallb-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: bamoe-kogito-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bamoe-kogito-operator.8.0.5-3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "ruleunit-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogitoinfra-sample"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "kafka.strimzi.io/v1beta2",
                    "kind": "Kafka",
                    "name": "kogito-kafka"
                  }
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator@sha256:8a99fcd217502b7e850af1e1097de58b6cb19d1e786394811a8e075c4d871279
          description: IBM BAMOE Kogito Operator for deployment and management of
            Kogito services.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["IBM Business Automation Manager
            Open Edition"]'
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/kogito-operator
          support: https://www.ibm.com/mysupport
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.rhpam.kiegroup.org
            version: v1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.rhpam.kiegroup.org
            version: v1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.rhpam.kiegroup.org
            version: v1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.rhpam.kiegroup.org
            version: v1
        description: |-
          IBM BAMOE Kogito Operator is designed for deployment and management of Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Builds a IBM BAMOE Kogito service from a remote git repository and creates a custom image for the given runtime: Red Hat build of Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Deploy IBM BAMOE Kogito service from user provided image.
          * Setup Grafana Dashboard when Grafana Operator is available in cluster.
          * Create Prometheus monitor object when Prometheus operator is available in cluster.

          **IMPORTANT!** IBM BAMOE Kogito Operator may need Grafana and Prometheus Operator to configure monitoring in cases if you do not provide these services beforehand. If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the IBM BAMOE Kogito Operator.
        displayName: IBM BAMOE Kogito Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://ibm.com
        - name: Documentation
          url: https://www.ibm.com/docs/en/ibamoe
        - name: Source
          url: https://github.com/kiegroup/kogito-operator
        maintainers:
        - email: mysphelp@us.ibm.com
          name: IBM
        maturity: beta
        provider:
          name: IBM
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9492c67eaa7ab37df6f5fa623c4aac955b7d7ffaab9ae2e57dea745e82907e40
        - registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator-bundle@sha256:e0e7fc3a69575199a6fcf93985451dd66a5eb7d1ab8caecf059d7d52f3953dc4
        - registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator@sha256:8a99fcd217502b7e850af1e1097de58b6cb19d1e786394811a8e075c4d871279
        version: 8.0.5-3
      entries:
      - name: bamoe-kogito-operator.8.0.5-3
        version: 8.0.5-3
      - name: bamoe-kogito-operator.8.0.5-2
        version: 8.0.5-2
      - name: bamoe-kogito-operator.8.0.5-1
        version: 8.0.5-1
      - name: bamoe-kogito-operator.8.0.4-2
        version: 8.0.4-2
      - name: bamoe-kogito-operator.8.0.4-1
        version: 8.0.4-1
      - name: bamoe-kogito-operator.8.0.3-1
        version: 8.0.3-1
      - name: bamoe-kogito-operator.8.0.2-3
        version: 8.0.2-3
      - name: bamoe-kogito-operator.8.0.2-2
        version: 8.0.2-2
      - name: bamoe-kogito-operator.8.0.2-1
        version: 8.0.2-1
      - name: bamoe-kogito-operator.8.0.1-2
        version: 8.0.1-2
      - name: bamoe-kogito-operator.8.0.1-1
        version: 8.0.1-1
      - name: bamoe-kogito-operator.8.0.0-1
        version: 8.0.0-1
      name: 8.x
    defaultChannel: 8.x
    packageName: bamoe-kogito-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: deployment-validation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: deployment-validation-operator.v0.7.12
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Application Runtime, Monitoring, Security
          certified: "false"
          containerImage: quay.io/deployment-validation-operator/dv-operator:0.7.12
          createdAt: "2025-09-11T00:00:00Z"
          description: The deployment validation operator
          ignore-check.kube-linter.io/minimum-three-replicas: This deployment uses
            1 pod as currently replicating does not replicate metric data causing
            installation issues
          repository: https://github.com/app-sre/deployment-validation-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Deployment Validation Operator (DVO) checks deployments and other resources against a curated collection of best practices.
          These best practices focus mainly on ensuring that the applications are fault-tolerant. DVO reports failed validations via Prometheus metrics.
          If the best-practice check has failed, the metrics will report `1`.
        displayName: Deployment Validation Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: false
          type: MultiNamespace
        keywords:
        - dvo
        links:
        - name: repository
          url: https://github.com/app-sre/deployment-validation-operator
        - name: containerImage
          url: https://quay.io/deployment-validation-operator/dv-operator:0.7.12
        maintainers:
        - email: dvo-owners@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/deployment-validation-operator@sha256:2803298c7cf3eeaffe9da3153142058d94d65ff1dae90efd8819a4cd23e0518f
        - quay.io/deployment-validation-operator/dv-operator:0.7.12
        version: 0.7.12
      entries:
      - name: deployment-validation-operator.v0.7.12
        version: 0.7.12
      - name: deployment-validation-operator.v0.7.9
        version: 0.7.9
      - name: deployment-validation-operator.v0.7.8
        version: 0.7.8
      - name: deployment-validation-operator.v0.7.7
        version: 0.7.7
      - name: deployment-validation-operator.v0.7.6
        version: 0.7.6
      - name: deployment-validation-operator.v0.7.5
        version: 0.7.5
      - name: deployment-validation-operator.v0.7.4
        version: 0.7.4
      - name: deployment-validation-operator.v0.7.3
        version: 0.7.3
      - name: deployment-validation-operator.v0.7.2
        version: 0.7.2
      - name: deployment-validation-operator.v0.7.1
        version: 0.7.1
      - name: deployment-validation-operator.v0.7.0
        version: 0.7.0
      - name: deployment-validation-operator.v0.6.0
        version: 0.6.0
      - name: deployment-validation-operator.v0.5.0
        version: 0.5.0
      - name: deployment-validation-operator.v0.4.0
        version: 0.4.0
      - name: deployment-validation-operator.v0.3.0
        version: 0.3.0
      - name: deployment-validation-operator.v0.2.2
        version: 0.2.2
      name: alpha
    defaultChannel: alpha
    packageName: deployment-validation-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: https://www.redhat.com
    name: sap-commerce-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sap-commerce-operator.v0.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hybris.hybris.org/v1alpha1",
                "kind": "HybrisApp",
                "metadata": {
                  "name": "hybrisapp-sample"
                },
                "spec": {
                  "aJPServicePort": 30000,
                  "apachejvmRouteName": "",
                  "baseImageName": "hybris-base",
                  "baseImageTag": "v0.2",
                  "hybrisANTTaskNames": "",
                  "podHealthyProbePath": "/platform/init",
                  "sourceRepoLocalPropertiesOverride": "",
                  "sourceRepoRef": "main",
                  "sourceRepoURL": "https://github.com/redhat-sap/sap-commerce-app-example.git",
                  "startupProbeFailureThreshold": 100,
                  "startupProbePeriodSecond": 60
                }
              },
              {
                "apiVersion": "hybris.hybris.org/v1alpha1",
                "kind": "HybrisBase",
                "metadata": {
                  "name": "hybrisbase-sample"
                },
                "spec": {
                  "URL": "http://nexus.redhat.com/nexus/service/local/repositories/releases/content/org/hybris/hybris/1.0/hybris-1.0.tar.gz",
                  "buildSourceRepo": "https://github.com/redhat-sap/sap-commerce-operator",
                  "buildSourceRepoBranch": "main",
                  "imageName": "hybris-base",
                  "imageTag": "v0.2",
                  "jdkURL": "https://github.com/SAP/SapMachine/releases/download/sapmachine-11.0.5/sapmachine-jdk-11.0.5-1.x86_64.rpm",
                  "password": "admin123",
                  "username": "admin"
                }
              }
            ]
          capabilities: Basic Install
          categories: Database
          containerImage: quay.io/redhat-sap-cop/hybris-operator:0.0.4
          description: Builds and runs SAP Commerce in OpenShift
          operators.operatorframework.io/builder: operator-sdk-v1.6.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-sap/sap-commerce-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HybrisApp is the Schema for the hybrisapps API
            displayName: Hybris Application
            kind: HybrisApp
            name: hybrisapps.hybris.hybris.org
            version: v1alpha1
          - description: HybrisBase is the Schema for the Hybris Base API
            displayName: Hybris Base
            kind: HybrisBase
            name: hybrisbases.hybris.hybris.org
            version: v1alpha1
        description: |-
          Builds and runs SAP Commerce in OpenShift

          * The operator provides APIs to initialize SAP Commerce with the provided SAP Commerce Server. Though there are no restrictions from the operator on the base package to be used from SAP, the default SAP base image provides a server preconfigured with an application server based on Apache Tomcat. Both HSQLDB and Tomcat are included in the SAP Commerce package, and are designed to be used for testing, development, and demonstration purposes. The custom classes created for various business needs along with an external RDBMS configuration can be used in a HybrisApp creation to execute SAP Commerce in a production setup.

          * The operator also enables the use of SAP Commerce in a clustered model. A SAP Commerce Cluster is a number of individual SAP Commerce installations using a common set of data on one database. A cluster configuration lets you balance the load between the nodes to scale SAP Commerce in a way that is transparent to the user.

          * The clustering offers few communication protocols as options (UDP: both multicast or unicast, or JGroups). In order to support multicast for SAP Commerce clustering the corresponding OpenShift namespace has to be enabled for multicast usage.

          For more details on SAP Commerce consult the product documentation: [https://help.sap.com/viewer/product/SAP_COMMERCE](https://help.sap.com/viewer/product/SAP_COMMERCE)
        displayName: SAP Commerce Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sap-commerce-operator
        links:
        - name: SAP Commerce Operator
          url: https://github.com/redhat-sap/sap-commerce-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat, Inc.
          url: https://www.redhat.com
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/openshift-community-operators/sap-commerce-operator@sha256:9b6a3c9c7a3af1a91578fa06c202d128fc7bfff3ae21300a4382cffb11def17a
        - quay.io/redhat-sap-cop/hybris-operator:0.0.4
        version: 0.0.4
      entries:
      - name: sap-commerce-operator.v0.0.4
        version: 0.0.4
      - name: sap-commerce-operator.v0.0.3
        version: 0.0.3
      - name: sap-commerce-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: sap-commerce-operator
    provider:
      name: Red Hat, Inc.
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-bedrockagent-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-bedrockagent-controller.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bedrockagent.services.k8s.aws/v1alpha1",
                "kind": "Agent",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/bedrockagent-controller:1.1.0
          createdAt: "2025-11-29T03:25:09Z"
          description: AWS Bedrock Agent controller is a service controller for managing
            Bedrock Agent resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Agent represents the state of an AWS bedrockagent Agent resource.
            displayName: Agent
            kind: Agent
            name: agents.bedrockagent.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Bedrock Agent resources in AWS from within your Kubernetes cluster.

          **About Amazon Bedrock Agent**

          Amazon Bedrock is a fully managed service that makes high-performing foundation models (FMs) from leading AI companies and Amazon available for your use through a unified API. You can choose from a wide range of foundation models to find the model that is best suited for your use case. Amazon Bedrock also offers a broad set of capabilities to build generative AI applications with security, privacy, and responsible AI. Using Amazon Bedrock, you can easily experiment with and evaluate top foundation models for your use cases, privately customize them with your data using techniques such as fine-tuning and Retrieval Augmented Generation (RAG), and build agents that execute tasks using your enterprise systems and data sources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Bedrock Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bedrockagent
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Bedrock Agent Developer Resources
          url: https://aws.amazon.com/bedrock/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: bedrock-agent maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-bedrockagent-controller@sha256:21774b163f44769d4f7b430239af17661231bb7a0e53d28d6aa8c1af48641b2a
        - public.ecr.aws/aws-controllers-k8s/bedrockagent-controller:1.1.0
        version: 1.1.0
      entries:
      - name: ack-bedrockagent-controller.v1.1.0
        version: 1.1.0
      - name: ack-bedrockagent-controller.v1.0.0
        version: 1.0.0
      - name: ack-bedrockagent-controller.v0.1.2
        version: 0.1.2
      - name: ack-bedrockagent-controller.v0.1.1
        version: 0.1.1
      - name: ack-bedrockagent-controller.v0.1.0
        version: 0.1.0
      - name: ack-bedrockagent-controller.v0.0.6
        version: 0.0.6
      - name: ack-bedrockagent-controller.v0.0.5
        version: 0.0.5
      - name: ack-bedrockagent-controller.v0.0.4
        version: 0.0.4
      - name: ack-bedrockagent-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-bedrockagent-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Cisco Networking - Compute Solutions
      provider-url: ""
    name: ucs-ci-solutions-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ucs-ci-solutions-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "intersight.cisco.com/v1alpha1",
                "kind": "UCSCISolutions",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ucs-ci-solutions-operator",
                    "app.kubernetes.io/instance": "ucscisolutions-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ucscisolutions",
                    "app.kubernetes.io/part-of": "ucs-ci-solutions-operator"
                  },
                  "name": "ucscisolutions-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: docker.io/pkoppa/ucs-ci-solutions-operator:latest
          createdAt: "2023-07-15T15:19:39Z"
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: UCSCISolutions
            name: ucscisolutions.intersight.cisco.com
            version: v1alpha1
        description: The operator is used to automate the creation of  Pools, Policies
          and Server Profile Templates required to deploy Cisco UCS Converged Infrastructure
          Solution in Intersight.
        displayName: UCS-CI-Solutions-Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ucscisolutions
        - intersight
        - ucs
        - ci
        - flexpod
        - flashstack
        links:
        - name: Ucs Ci Solutions Operator
          url: https://ucs-ci-solutions-operator.domain
        maintainers:
        - email: pkoppa@cisco.com
          name: Paniraj Koppa
        - email: chrobrie@cisco.com
          name: Chris O'Brien
        maturity: alpha
        provider:
          name: Cisco Networking - Compute Solutions
        relatedImages:
        - quay.io/openshift-community-operators/ucs-ci-solutions-operator@sha256:e284253263183eb2cd313f6fb009bb830b9a79a4d4e2481468821c30a9cdce03
        - docker.io/pkoppa/ucs-ci-solutions-operator:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 0.0.1
      entries:
      - name: ucs-ci-solutions-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ucs-ci-solutions-operator
    provider:
      name: Cisco Networking - Compute Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CSI Addons Community
      provider-url: ""
    name: odf-csi-addons-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-csi-addons-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:57:48Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CSIAddonsNode is the Schema for the csiaddonsnode API
            displayName: CSIAddons Node
            kind: CSIAddonsNode
            name: csiaddonsnodes.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationCronJob is the Schema for the encryptionkeyrotationcronjobs
              API
            displayName: EncryptionKeyRotation CronJob
            kind: EncryptionKeyRotationCronJob
            name: encryptionkeyrotationcronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationJob is the Schema for the encryptionkeyrotationjobs
              API
            displayName: EncryptionKeyRotation Job
            kind: EncryptionKeyRotationJob
            name: encryptionkeyrotationjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFenceClass is the Schema for the networkfenceclasses
              API
            displayName: Network Fence Class
            kind: NetworkFenceClass
            name: networkfenceclasses.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFence is the Schema for the networkfences API
            displayName: Network Fence
            kind: NetworkFence
            name: networkfences.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceCronJob is the Schema for the reclaimspacecronjobs
              API
            displayName: Reclaim Space CronJob
            kind: ReclaimSpaceCronJob
            name: reclaimspacecronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceJob is the Schema for the reclaimspacejobs API
            displayName: Reclaim Space Job
            kind: ReclaimSpaceJob
            name: reclaimspacejobs.csiaddons.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationClass is the Schema for the volumegroupreplicationclasses
              API
            displayName: Volume Group Replication Class
            kind: VolumeGroupReplicationClass
            name: volumegroupreplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationContent is the Schema for the volumegroupreplicationcontents
              API
            displayName: Volume Group Replication Content
            kind: VolumeGroupReplicationContent
            name: volumegroupreplicationcontents.replication.storage.openshift.io
            version: v1alpha1
          - kind: VolumeGroupReplication
            name: volumegroupreplications.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplicationClass is the Schema for the volumereplicationclasses
              API
            displayName: Volume Replication Class
            kind: VolumeReplicationClass
            name: volumereplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplication is the Schema for the volumereplications
              API
            displayName: Volume Replication
            kind: VolumeReplication
            name: volumereplications.replication.storage.openshift.io
            version: v1alpha1
        description: CSI Addons provides the CSI Addons Controller that enables advanced
          storage operations for CSI-drivers.
        displayName: CSI Addons
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: CSI Addons
          url: https://csi-addons.github.io
        maintainers:
        - email: csi-addons@redhat.com
          name: CSI Addons Community
        maturity: alpha
        provider:
          name: CSI Addons Community
        relatedImages:
        - registry.redhat.io/odf4/odf-csi-addons-operator-bundle@sha256:35cb92067f1cdf332d48b50cd2948e86ea2f43247eea53b15f7aa138c68a50b6
        - registry.redhat.io/odf4/odf-csi-addons-rhel9-operator@sha256:0e86d4dddc58fca1deed19260dadedc733e6232bff1484a8a28875f8445ed04e
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: odf-csi-addons-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-csi-addons-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-csi-addons-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-csi-addons-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-csi-addons-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-csi-addons-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-csi-addons-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-csi-addons-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-csi-addons-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-csi-addons-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-csi-addons-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:44:37Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CSIAddonsNode is the Schema for the csiaddonsnode API
            displayName: CSIAddons Node
            kind: CSIAddonsNode
            name: csiaddonsnodes.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationCronJob is the Schema for the encryptionkeyrotationcronjobs
              API
            displayName: EncryptionKeyRotation CronJob
            kind: EncryptionKeyRotationCronJob
            name: encryptionkeyrotationcronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationJob is the Schema for the encryptionkeyrotationjobs
              API
            displayName: EncryptionKeyRotation Job
            kind: EncryptionKeyRotationJob
            name: encryptionkeyrotationjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFenceClass is the Schema for the networkfenceclasses
              API
            displayName: Network Fence Class
            kind: NetworkFenceClass
            name: networkfenceclasses.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFence is the Schema for the networkfences API
            displayName: Network Fence
            kind: NetworkFence
            name: networkfences.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceCronJob is the Schema for the reclaimspacecronjobs
              API
            displayName: Reclaim Space CronJob
            kind: ReclaimSpaceCronJob
            name: reclaimspacecronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceJob is the Schema for the reclaimspacejobs API
            displayName: Reclaim Space Job
            kind: ReclaimSpaceJob
            name: reclaimspacejobs.csiaddons.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationClass is the Schema for the volumegroupreplicationclasses
              API
            displayName: Volume Group Replication Class
            kind: VolumeGroupReplicationClass
            name: volumegroupreplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationContent is the Schema for the volumegroupreplicationcontents
              API
            displayName: Volume Group Replication Content
            kind: VolumeGroupReplicationContent
            name: volumegroupreplicationcontents.replication.storage.openshift.io
            version: v1alpha1
          - kind: VolumeGroupReplication
            name: volumegroupreplications.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplicationClass is the Schema for the volumereplicationclasses
              API
            displayName: Volume Replication Class
            kind: VolumeReplicationClass
            name: volumereplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplication is the Schema for the volumereplications
              API
            displayName: Volume Replication
            kind: VolumeReplication
            name: volumereplications.replication.storage.openshift.io
            version: v1alpha1
        description: CSI Addons provides the CSI Addons Controller that enables advanced
          storage operations for CSI-drivers.
        displayName: CSI Addons
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: CSI Addons
          url: https://csi-addons.github.io
        maintainers:
        - email: csi-addons@redhat.com
          name: CSI Addons Community
        maturity: alpha
        provider:
          name: CSI Addons Community
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/odf-csi-addons-operator-bundle@sha256:eec2e2ee2bd6f3a5848db2fe427e348e4b9a12ac23fe245953976b3eaa195e72
        - registry.redhat.io/odf4/odf-csi-addons-rhel9-operator@sha256:6e0480ded3445a2e149eee2e9a3d30f6f51932caf99c4c426c67ca720d1976e6
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        version: 4.20.4-rhodf
      entries:
      - name: odf-csi-addons-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-csi-addons-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-csi-addons-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-csi-addons-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-csi-addons-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-csi-addons-operator
    provider:
      name: CSI Addons Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-cert-manager-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cert-manager-operator.v1.18.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "authorizationURL": "https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/XXXXX",
                  "dnsName": "sample.dns.name",
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "key": "XXX",
                  "solver": {
                    "dns01": {
                      "route53": {
                        "accessKeyID": "XXX",
                        "hostedZoneID": "XXX",
                        "region": "us-east-1",
                        "secretAccessKeySecretRef": {
                          "key": "awsSecretAccessKey",
                          "name": "aws-secret"
                        }
                      }
                    },
                    "selector": {
                      "dnsNames": [
                        "sample.dns.name"
                      ]
                    }
                  },
                  "token": "XXX",
                  "type": "DNS-01",
                  "url": "https://acme-staging-v02.api.letsencrypt.org/acme/chall-v3/XXXXXX/XXXXX",
                  "wildcard": false
                }
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "selfsigned-ca",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "selfsigned-ca.dns.name",
                  "isCA": true,
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "selfsigned-issuer"
                  },
                  "privateKey": {
                    "algorithm": "ECDSA",
                    "size": 256
                  },
                  "secretName": "ca-root-secret"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "tls-cert",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "isCA": false,
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "secretName": "tls-cert"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "groups": [
                    "system:serviceaccounts",
                    "system:serviceaccounts:cert-manager",
                    "system:authenticated"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX",
                  "username": "system:serviceaccount:cert-manager:cert-manager"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "selfsigned-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "ca-issuer",
                  "namespace": "default"
                },
                "spec": {
                  "ca": {
                    "secretName": "ca-root-secret"
                  }
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "letsencrypt-staging",
                  "namespace": "default"
                },
                "spec": {
                  "acme": {
                    "email": "aos-ci-cd@redhat.com",
                    "privateKeySecretRef": {
                      "name": "letsencrypt-staging"
                    },
                    "server": "https://acme-staging-v02.api.letsencrypt.org/directory",
                    "solvers": [
                      {
                        "dns01": {
                          "route53": {
                            "accessKeyID": "ACCESS_KEY_ID",
                            "hostedZoneID": "HOSTED_ZONE_ID",
                            "region": "AWS_REGION",
                            "secretAccessKeySecretRef": {
                              "key": "access-key",
                              "name": "sample-aws-secret"
                            }
                          }
                        },
                        "selector": {
                          "dnsNames": [
                            "sample.dns.name"
                          ]
                        }
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "CertManager",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "IstioCSR",
                "metadata": {
                  "annotations": {
                    "kubernetes.io/description": "Resource behavior is managed through IstioCSR featuregate, which is enabled by default. Please refer to the cert-manager documentation for more information on the istio-csr feature."
                  },
                  "name": "default",
                  "namespace": "istio-csr"
                },
                "spec": {
                  "istioCSRConfig": {
                    "certManager": {
                      "issuerRef": {
                        "group": "cert-manager.io",
                        "kind": "Issuer",
                        "name": "istio-csr-issuer"
                      }
                    },
                    "istio": {
                      "namespace": "istio-system"
                    },
                    "istiodTLSConfig": {
                      "trustDomain": "cluster.local"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
          createdAt: 2025-11-12T08:36:17
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.17.0 <1.18.0'
          operator.openshift.io/uninstall-message: The cert-manager Operator for Red
            Hat OpenShift will be removed from cert-manager-operator namespace. If
            your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/cert-manager-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/cert-manager-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: CertManager is the Schema for the certmanagers API
            displayName: CertManager
            kind: CertManager
            name: certmanagers.operator.openshift.io
            version: v1alpha1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: |-
              IstioCSR describes the configuration and information about the managed istio-csr agent.
              The name must be `default` to make IstioCSR a singleton that is, to allow only one instance of IstioCSR per namespace.

              When an IstioCSR is created, istio-csr agent is deployed in the IstioCSR-created namespace.
            displayName: IstioCSR
            kind: IstioCSR
            name: istiocsrs.operator.openshift.io
            version: v1alpha1
          - description: Order is a type to represent an Order with an ACME server
            displayName: Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          The cert-manager Operator for Red Hat OpenShift provides seamless support for [cert-manager v1.18.3](https://github.com/cert-manager/cert-manager/tree/v1.18.3), which automates certificate management.
          For more information, see the [cert-manager Operator for Red Hat OpenShift documentation](https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/index.html).
        displayName: cert-manager Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cert-manager-operator
        - cert
        - certificates
        - security
        - TLS
        - istio-csr
        links:
        - name: Documentation
          url: https://github.com/openshift/cert-manager-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:acaaea813059d4ac5b2618395bd9113f72ada0a33aaaba91aa94f000e77df407
        - registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
        - registry.redhat.io/cert-manager/jetstack-cert-manager-acmesolver-rhel9@sha256:ba937fc4b9eee31422914352c11a45b90754ba4fbe490ea45249b90afdc4e0a7
        - registry.redhat.io/cert-manager/jetstack-cert-manager-rhel9@sha256:29a0fa1c2f2a6cee62a0468a3883d16d491b4af29130dad6e3e2bb2948f274df
        - registry.redhat.io/cert-manager/cert-manager-istio-csr-rhel9@sha256:af1ac813b8ee414ef215936f05197bc498bccbd540f3e2a93cb522221ba112bc
        version: 1.18.0
      entries:
      - name: cert-manager-operator.v1.18.0
        version: 1.18.0
      - name: cert-manager-operator.v1.17.0
        version: 1.17.0
      name: stable-v1
    - currentCSV: cert-manager-operator.v1.17.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "authorizationURL": "https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/XXXXX",
                  "dnsName": "sample.dns.name",
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "key": "XXX",
                  "solver": {
                    "dns01": {
                      "route53": {
                        "accessKeyID": "XXX",
                        "hostedZoneID": "XXX",
                        "region": "us-east-1",
                        "secretAccessKeySecretRef": {
                          "key": "awsSecretAccessKey",
                          "name": "aws-secret"
                        }
                      }
                    },
                    "selector": {
                      "dnsNames": [
                        "sample.dns.name"
                      ]
                    }
                  },
                  "token": "XXX",
                  "type": "DNS-01",
                  "url": "https://acme-staging-v02.api.letsencrypt.org/acme/chall-v3/XXXXXX/XXXXX",
                  "wildcard": false
                }
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "selfsigned-ca",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "selfsigned-ca.dns.name",
                  "isCA": true,
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "selfsigned-issuer"
                  },
                  "privateKey": {
                    "algorithm": "ECDSA",
                    "size": 256
                  },
                  "secretName": "ca-root-secret"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "tls-cert",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "isCA": false,
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "secretName": "tls-cert"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "groups": [
                    "system:serviceaccounts",
                    "system:serviceaccounts:cert-manager",
                    "system:authenticated"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX",
                  "username": "system:serviceaccount:cert-manager:cert-manager"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "selfsigned-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "ca-issuer",
                  "namespace": "default"
                },
                "spec": {
                  "ca": {
                    "secretName": "ca-root-secret"
                  }
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "letsencrypt-staging",
                  "namespace": "default"
                },
                "spec": {
                  "acme": {
                    "email": "aos-ci-cd@redhat.com",
                    "privateKeySecretRef": {
                      "name": "letsencrypt-staging"
                    },
                    "server": "https://acme-staging-v02.api.letsencrypt.org/directory",
                    "solvers": [
                      {
                        "dns01": {
                          "route53": {
                            "accessKeyID": "ACCESS_KEY_ID",
                            "hostedZoneID": "HOSTED_ZONE_ID",
                            "region": "AWS_REGION",
                            "secretAccessKeySecretRef": {
                              "key": "access-key",
                              "name": "sample-aws-secret"
                            }
                          }
                        },
                        "selector": {
                          "dnsNames": [
                            "sample.dns.name"
                          ]
                        }
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "CertManager",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "IstioCSR",
                "metadata": {
                  "annotations": {
                    "kubernetes.io/description": "Creating this resource requires the istio-csr tech-preview feature to be enabled, which otherwise has no effect. Please refer to the cert-manager documentation for more information on enabling the istio-csr feature. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process"
                  },
                  "name": "default",
                  "namespace": "istio-csr"
                },
                "spec": {
                  "istioCSRConfig": {
                    "certManager": {
                      "issuerRef": {
                        "group": "cert-manager.io",
                        "kind": "Issuer",
                        "name": "istio-csr-issuer"
                      }
                    },
                    "istio": {
                      "namespace": "istio-system"
                    },
                    "istiodTLSConfig": {
                      "trustDomain": "cluster.local"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:4d5e238300ce6f427a1045d51d6b37a4e5c5633985208ebb44f91e7dd53897d9
          createdAt: 2025-08-06T08:21:40
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.16.1 <1.17.0'
          operator.openshift.io/uninstall-message: The cert-manager Operator for Red
            Hat OpenShift will be removed from cert-manager-operator namespace. If
            your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/cert-manager-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/cert-manager-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: CertManager is the Schema for the certmanagers API
            displayName: CertManager
            kind: CertManager
            name: certmanagers.operator.openshift.io
            version: v1alpha1
          - kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - kind: IstioCSR
            name: istiocsrs.operator.openshift.io
            version: v1alpha1
          - kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          The cert-manager Operator for Red Hat OpenShift provides seamless support for [cert-manager v1.17.4](https://github.com/cert-manager/cert-manager/tree/v1.17.4), which automates certificate management.
          For more information, see the [cert-manager Operator for Red Hat OpenShift documentation](https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/index.html).
        displayName: cert-manager Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cert-manager-operator
        - cert
        - certificates
        - security
        - TLS
        links:
        - name: Documentation
          url: https://github.com/openshift/cert-manager-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:4d5e238300ce6f427a1045d51d6b37a4e5c5633985208ebb44f91e7dd53897d9
        - registry.redhat.io/cert-manager/jetstack-cert-manager-acmesolver-rhel9@sha256:4f7c045819c39e176a6090efdaba6ec736edf772d88fc87dd1c6fb33d3b5b26b
        - registry.redhat.io/cert-manager/jetstack-cert-manager-rhel9@sha256:96d51e3a64bf30cbd92836c7cbd82f06edca16eef78ab1432757d34c16628659
        - registry.redhat.io/cert-manager/cert-manager-istio-csr-rhel9@sha256:9ea2c29a384b964cef14f853278821df3cd30320f25afab8823897192f67fc7e
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:cc20a2ab116597b080d303196825d7f5c81c6f30268f7866fb2911706efea210
        version: 1.17.0
      entries:
      - name: cert-manager-operator.v1.17.0
        version: 1.17.0
      name: stable-v1.17
    - currentCSV: cert-manager-operator.v1.18.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "authorizationURL": "https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/XXXXX",
                  "dnsName": "sample.dns.name",
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "key": "XXX",
                  "solver": {
                    "dns01": {
                      "route53": {
                        "accessKeyID": "XXX",
                        "hostedZoneID": "XXX",
                        "region": "us-east-1",
                        "secretAccessKeySecretRef": {
                          "key": "awsSecretAccessKey",
                          "name": "aws-secret"
                        }
                      }
                    },
                    "selector": {
                      "dnsNames": [
                        "sample.dns.name"
                      ]
                    }
                  },
                  "token": "XXX",
                  "type": "DNS-01",
                  "url": "https://acme-staging-v02.api.letsencrypt.org/acme/chall-v3/XXXXXX/XXXXX",
                  "wildcard": false
                }
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "selfsigned-ca",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "selfsigned-ca.dns.name",
                  "isCA": true,
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "selfsigned-issuer"
                  },
                  "privateKey": {
                    "algorithm": "ECDSA",
                    "size": 256
                  },
                  "secretName": "ca-root-secret"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "tls-cert",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "isCA": false,
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "secretName": "tls-cert"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "groups": [
                    "system:serviceaccounts",
                    "system:serviceaccounts:cert-manager",
                    "system:authenticated"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX",
                  "username": "system:serviceaccount:cert-manager:cert-manager"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "selfsigned-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "ca-issuer",
                  "namespace": "default"
                },
                "spec": {
                  "ca": {
                    "secretName": "ca-root-secret"
                  }
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "letsencrypt-staging",
                  "namespace": "default"
                },
                "spec": {
                  "acme": {
                    "email": "aos-ci-cd@redhat.com",
                    "privateKeySecretRef": {
                      "name": "letsencrypt-staging"
                    },
                    "server": "https://acme-staging-v02.api.letsencrypt.org/directory",
                    "solvers": [
                      {
                        "dns01": {
                          "route53": {
                            "accessKeyID": "ACCESS_KEY_ID",
                            "hostedZoneID": "HOSTED_ZONE_ID",
                            "region": "AWS_REGION",
                            "secretAccessKeySecretRef": {
                              "key": "access-key",
                              "name": "sample-aws-secret"
                            }
                          }
                        },
                        "selector": {
                          "dnsNames": [
                            "sample.dns.name"
                          ]
                        }
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "CertManager",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "IstioCSR",
                "metadata": {
                  "annotations": {
                    "kubernetes.io/description": "Resource behavior is managed through IstioCSR featuregate, which is enabled by default. Please refer to the cert-manager documentation for more information on the istio-csr feature."
                  },
                  "name": "default",
                  "namespace": "istio-csr"
                },
                "spec": {
                  "istioCSRConfig": {
                    "certManager": {
                      "issuerRef": {
                        "group": "cert-manager.io",
                        "kind": "Issuer",
                        "name": "istio-csr-issuer"
                      }
                    },
                    "istio": {
                      "namespace": "istio-system"
                    },
                    "istiodTLSConfig": {
                      "trustDomain": "cluster.local"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
          createdAt: 2025-11-12T08:36:17
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.17.0 <1.18.0'
          operator.openshift.io/uninstall-message: The cert-manager Operator for Red
            Hat OpenShift will be removed from cert-manager-operator namespace. If
            your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/cert-manager-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/cert-manager-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: CertManager is the Schema for the certmanagers API
            displayName: CertManager
            kind: CertManager
            name: certmanagers.operator.openshift.io
            version: v1alpha1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: |-
              IstioCSR describes the configuration and information about the managed istio-csr agent.
              The name must be `default` to make IstioCSR a singleton that is, to allow only one instance of IstioCSR per namespace.

              When an IstioCSR is created, istio-csr agent is deployed in the IstioCSR-created namespace.
            displayName: IstioCSR
            kind: IstioCSR
            name: istiocsrs.operator.openshift.io
            version: v1alpha1
          - description: Order is a type to represent an Order with an ACME server
            displayName: Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          The cert-manager Operator for Red Hat OpenShift provides seamless support for [cert-manager v1.18.3](https://github.com/cert-manager/cert-manager/tree/v1.18.3), which automates certificate management.
          For more information, see the [cert-manager Operator for Red Hat OpenShift documentation](https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/index.html).
        displayName: cert-manager Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cert-manager-operator
        - cert
        - certificates
        - security
        - TLS
        - istio-csr
        links:
        - name: Documentation
          url: https://github.com/openshift/cert-manager-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/cert-manager/cert-manager-istio-csr-rhel9@sha256:af1ac813b8ee414ef215936f05197bc498bccbd540f3e2a93cb522221ba112bc
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:acaaea813059d4ac5b2618395bd9113f72ada0a33aaaba91aa94f000e77df407
        - registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
        - registry.redhat.io/cert-manager/jetstack-cert-manager-acmesolver-rhel9@sha256:ba937fc4b9eee31422914352c11a45b90754ba4fbe490ea45249b90afdc4e0a7
        - registry.redhat.io/cert-manager/jetstack-cert-manager-rhel9@sha256:29a0fa1c2f2a6cee62a0468a3883d16d491b4af29130dad6e3e2bb2948f274df
        version: 1.18.0
      entries:
      - name: cert-manager-operator.v1.18.0
        version: 1.18.0
      - name: cert-manager-operator.v1.17.0
        version: 1.17.0
      name: stable-v1.18
    defaultChannel: stable-v1
    packageName: openshift-cert-manager-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cluster-logging
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-logging.v6.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "logging.openshift.io/v1alpha1",
                "kind": "LogFileMetricExporter",
                "metadata": {
                  "name": "instance",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "resources": {
                    "limits": {
                      "cpu": "500m"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "128Mi"
                    }
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master",
                      "operator": "Exists"
                    }
                  ]
                }
              },
              {
                "apiVersion": "observability.openshift.io/v1",
                "kind": "ClusterLogForwarder",
                "metadata": {
                  "name": "logging",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "outputs": [
                    {
                      "lokiStack": {
                        "authentication": {
                          "token": {
                            "from": "serviceAccount"
                          }
                        },
                        "target": {
                          "name": "logging-loki"
                        }
                      },
                      "name": "logging-loki",
                      "tls": {
                        "ca": {
                          "configMapName": "openshift-service-ca.crt",
                          "key": "service-ca.crt"
                        }
                      },
                      "type": "lokiStack"
                    }
                  ],
                  "pipelines": [
                    {
                      "inputRefs": [
                        "application",
                        "infrastructure"
                      ],
                      "name": "logs-to-loki",
                      "outputRefs": [
                        "logging-loki"
                      ]
                    }
                  ],
                  "serviceAccount": {
                    "name": "log-collector"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.16-v4.20
          containerImage: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:80cac88d8ff5b40036e5983f5dacfc08702afe9c7a66b48d1c88bcb149c285b3
          createdAt: "2025-07-29T15:25:15Z"
          description: The Red Hat OpenShift Logging Operator for OCP provides a means
            for configuring and managing log collection and forwarding.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=6.0.0-0 <6.2.7'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "observability.openshift.io/v1",
              "kind": "ClusterLogForwarder",
              "metadata": {
                "name": "logging"
              }
            }
          operatorframework.io/suggested-namespace: openshift-logging
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:80cac88d8ff5b40036e5983f5dacfc08702afe9c7a66b48d1c88bcb149c285b3
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.2
          operators.operatorframework.io.bundle.channels.v1: stable-6.2
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: cluster-logging
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Logging (aos-logging@redhat.com)
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ClusterLogForwarder is an API to configure forwarding logs.


              You configure forwarding by specifying a list of `pipelines`,
              which forward from a set of named inputs to a set of named outputs.
            displayName: Cluster Log Forwarder
            kind: ClusterLogForwarder
            name: clusterlogforwarders.observability.openshift.io
            version: v1
          - description: A Log File Metric Exporter instance. LogFileMetricExporter
              is the Schema for the logFileMetricExporters API
            displayName: Log File Metric Exporter
            kind: LogFileMetricExporter
            name: logfilemetricexporters.logging.openshift.io
            version: v1alpha1
        description: |-
          # Red Hat OpenShift Logging
          The Red Hat OpenShift Logging Operator orchestrates log collection and forwarding to Red Had managed log stores and
          other third-party receivers.

          ##Features
          * **Create/Destroy**: Deploy log collectors and forwarders to support observability of OCP cluster.
          * **Simplified Configuration**: Spec collectors using a simplified API to configure log collection from opinionated sources to one or more third-party receivers.

          ## Prerequisites and Requirements
          ### Red Hat OpenShift Logging Namespace
          It is recommended to deploy the Red Hat OpenShift Logging Operator to the **openshift-logging** namespace. This namespace
          must be explicitly created by a cluster administrator (e.g. `oc create ns openshift-logging`). To enable metrics
          service discovery add namespace label `openshift.io/cluster-monitoring: "true"`.

          For additional installation documentation see [Installing logging](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html-single/logging/index#installing-logging-6-2)
          in the OpenShift product documentation.
        displayName: Red Hat OpenShift Logging
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - observability
        - loki
        - vector
        - otlp
        links:
        - name: Documentation
          url: https://github.com/openshift/cluster-logging-operator/blob/master/README.adoc
        - name: Red Hat OpenShift Logging Operator
          url: https://github.com/openshift/cluster-logging-operator
        - name: Vector
          url: https://vector.dev/
        minKubeVersion: 1.18.3
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:0d2edaf37f5e25155f9a3086e81d40686b102a78c3ae35b07e0c5992d3a7fb40
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:fa2cfa2ed336ce105c8dea5bfe0825407e37ef296193ae162f515213fe43c8d5
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:912e0be15a46e77b2495db1dad335edc4116027c342698cedd8e7718cc15a5c1
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:80cac88d8ff5b40036e5983f5dacfc08702afe9c7a66b48d1c88bcb149c285b3
        version: 6.2.7
      entries:
      - name: cluster-logging.v6.2.7
        version: 6.2.7
      - name: cluster-logging.v6.2.6
        version: 6.2.6
      - name: cluster-logging.v6.2.5
        version: 6.2.5
      - name: cluster-logging.v6.2.4
        version: 6.2.4
      - name: cluster-logging.v6.2.3
        version: 6.2.3
      - name: cluster-logging.v6.2.2
        version: 6.2.2
      - name: cluster-logging.v6.2.1
        version: 6.2.1
      - name: cluster-logging.v6.2.0
        version: 6.2.0
      name: stable-6.2
    - currentCSV: cluster-logging.v6.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "logging.openshift.io/v1alpha1",
                "kind": "LogFileMetricExporter",
                "metadata": {
                  "name": "instance",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "resources": {
                    "limits": {
                      "cpu": "500m"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "128Mi"
                    }
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master",
                      "operator": "Exists"
                    }
                  ]
                }
              },
              {
                "apiVersion": "observability.openshift.io/v1",
                "kind": "ClusterLogForwarder",
                "metadata": {
                  "name": "logging",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "outputs": [
                    {
                      "lokiStack": {
                        "authentication": {
                          "token": {
                            "from": "serviceAccount"
                          }
                        },
                        "target": {
                          "name": "logging-loki"
                        }
                      },
                      "name": "logging-loki",
                      "tls": {
                        "ca": {
                          "configMapName": "openshift-service-ca.crt",
                          "key": "service-ca.crt"
                        }
                      },
                      "type": "lokiStack"
                    }
                  ],
                  "pipelines": [
                    {
                      "inputRefs": [
                        "application",
                        "infrastructure"
                      ],
                      "name": "logs-to-loki",
                      "outputRefs": [
                        "logging-loki"
                      ]
                    }
                  ],
                  "serviceAccount": {
                    "name": "log-collector"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Logging & Tracing, Observability
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.17-v4.20
          containerImage: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:61ced99002f57d20727adc2dbad34b99c1347541b4605c5ec2847db577532dc5
          createdAt: "2025-11-13T11:03:18Z"
          description: The Red Hat OpenShift Logging Operator for OCP provides a means
            for configuring and managing log collection and forwarding.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=6.1.0-0 <6.3.2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "observability.openshift.io/v1",
              "kind": "ClusterLogForwarder",
              "metadata": {
                "name": "logging"
              }
            }
          operatorframework.io/suggested-namespace: openshift-logging
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:61ced99002f57d20727adc2dbad34b99c1347541b4605c5ec2847db577532dc5
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.3
          operators.operatorframework.io.bundle.channels.v1: stable-6.3
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: cluster-logging
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Logging (aos-logging@redhat.com)
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ClusterLogForwarder is an API to configure forwarding logs.

              You configure forwarding by specifying a list of `pipelines`,
              which forward from a set of named inputs to a set of named outputs.
            displayName: Cluster Log Forwarder
            kind: ClusterLogForwarder
            name: clusterlogforwarders.observability.openshift.io
            version: v1
          - description: A Log File Metric Exporter instance. LogFileMetricExporter
              is the Schema for the logFileMetricExporters API
            displayName: Log File Metric Exporter
            kind: LogFileMetricExporter
            name: logfilemetricexporters.logging.openshift.io
            version: v1alpha1
        description: |-
          # Red Hat OpenShift Logging
          The Red Hat OpenShift Logging Operator orchestrates log collection and forwarding to Red Had managed log stores and
          other third-party receivers.

          ##Features
          * **Create/Destroy**: Deploy log collectors and forwarders to support observability of OCP cluster.
          * **Simplified Configuration**: Spec collectors using a simplified API to configure log collection from opinionated sources to one or more third-party receivers.

          ## Prerequisites and Requirements
          ### Red Hat OpenShift Logging Namespace
          It is recommended to deploy the Red Hat OpenShift Logging Operator to the **openshift-logging** namespace. This namespace
          must be explicitly created by a cluster administrator (e.g. `oc create ns openshift-logging`). To enable metrics
          service discovery add namespace label `openshift.io/cluster-monitoring: "true"`.

          For additional installation documentation see [Deploying cluster logging](https://docs.openshift.com/container-platform/latest/logging/cluster-logging-deploying.html)
          in the OpenShift product documentation.
        displayName: Red Hat OpenShift Logging
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - observability
        - loki
        - vector
        - otlp
        links:
        - name: Documentation
          url: https://github.com/openshift/cluster-logging-operator/blob/master/README.adoc
        - name: Red Hat OpenShift Logging Operator
          url: https://github.com/openshift/cluster-logging-operator
        - name: Vector
          url: https://vector.dev/
        minKubeVersion: 1.18.3
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:5eeb9f00760e286b2088fe4384bc0de5b18178fb3811796608ffe98d1100312e
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:56ee655fc9fd5aca984a7c552c00112b7314d2e79117f58c469ef91f3cefe640
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:61ced99002f57d20727adc2dbad34b99c1347541b4605c5ec2847db577532dc5
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:c7bfa11f2cf8403ef437bdcf514fe78823472e578766192f6742322750f1df18
        version: 6.3.2
      entries:
      - name: cluster-logging.v6.3.2
        version: 6.3.2
      - name: cluster-logging.v6.3.1
        version: 6.3.1
      - name: cluster-logging.v6.3.0
        version: 6.3.0
      name: stable-6.3
    - currentCSV: cluster-logging.v6.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "logging.openshift.io/v1alpha1",
                "kind": "LogFileMetricExporter",
                "metadata": {
                  "name": "instance",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "resources": {
                    "limits": {
                      "cpu": "500m"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "128Mi"
                    }
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master",
                      "operator": "Exists"
                    }
                  ]
                }
              },
              {
                "apiVersion": "observability.openshift.io/v1",
                "kind": "ClusterLogForwarder",
                "metadata": {
                  "name": "logging",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "outputs": [
                    {
                      "lokiStack": {
                        "authentication": {
                          "token": {
                            "from": "serviceAccount"
                          }
                        },
                        "target": {
                          "name": "logging-loki"
                        }
                      },
                      "name": "logging-loki",
                      "tls": {
                        "ca": {
                          "configMapName": "openshift-service-ca.crt",
                          "key": "service-ca.crt"
                        }
                      },
                      "type": "lokiStack"
                    }
                  ],
                  "pipelines": [
                    {
                      "inputRefs": [
                        "application",
                        "infrastructure"
                      ],
                      "name": "logs-to-loki",
                      "outputRefs": [
                        "logging-loki"
                      ]
                    }
                  ],
                  "serviceAccount": {
                    "name": "log-collector"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Logging & Tracing, Observability
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.18-v4.21
          containerImage: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
          createdAt: "2025-11-20T15:34:38Z"
          description: The Red Hat OpenShift Logging Operator for OCP provides a means
            for configuring and managing log collection and forwarding.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=6.2.0-0 <6.4.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "observability.openshift.io/v1",
              "kind": "ClusterLogForwarder",
              "metadata": {
                "name": "logging"
              }
            }
          operatorframework.io/suggested-namespace: openshift-logging
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.4
          operators.operatorframework.io.bundle.channels.v1: stable-6.4
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: cluster-logging
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Logging (aos-logging@redhat.com)
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ClusterLogForwarder is an API to configure forwarding logs.

              You configure forwarding by specifying a list of `pipelines`,
              which forward from a set of named inputs to a set of named outputs.
            displayName: Cluster Log Forwarder
            kind: ClusterLogForwarder
            name: clusterlogforwarders.observability.openshift.io
            version: v1
          - description: A Log File Metric Exporter instance. LogFileMetricExporter
              is the Schema for the logFileMetricExporters API
            displayName: Log File Metric Exporter
            kind: LogFileMetricExporter
            name: logfilemetricexporters.logging.openshift.io
            version: v1alpha1
        description: |-
          # Red Hat OpenShift Logging
          The Red Hat OpenShift Logging Operator orchestrates log collection and forwarding to Red Had managed log stores and
          other third-party receivers.

          ##Features
          * **Create/Destroy**: Deploy log collectors and forwarders to support observability of OCP cluster.
          * **Simplified Configuration**: Spec collectors using a simplified API to configure log collection from opinionated sources to one or more third-party receivers.

          ## Prerequisites and Requirements
          ### Red Hat OpenShift Logging Namespace
          It is recommended to deploy the Red Hat OpenShift Logging Operator to the **openshift-logging** namespace. This namespace
          must be explicitly created by a cluster administrator (e.g. `oc create ns openshift-logging`). To enable metrics
          service discovery add namespace label `openshift.io/cluster-monitoring: "true"`.

          For additional installation documentation see [Deploying cluster logging](https://docs.openshift.com/container-platform/latest/logging/cluster-logging-deploying.html)
          in the OpenShift product documentation.
        displayName: Red Hat OpenShift Logging
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - observability
        - loki
        - vector
        - otlp
        links:
        - name: Documentation
          url: https://github.com/openshift/cluster-logging-operator/blob/master/README.adoc
        - name: Red Hat OpenShift Logging Operator
          url: https://github.com/openshift/cluster-logging-operator
        - name: Vector
          url: https://vector.dev/
        minKubeVersion: 1.18.3
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:057e1b87e9b9419d35cff1ee0ee8e19bbf12e6ecf3ff014206b62ca44e70eb07
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:011570d92a596fd2895230b19bc34a25f8befabfed6b7ce2f1e2bbe211391d22
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:022747902d768b6bf95a76c7c0b3aa63af356566b8411448cf64f87fc31a4794
        version: 6.4.1
      entries:
      - name: cluster-logging.v6.4.1
        version: 6.4.1
      - name: cluster-logging.v6.4.0
        version: 6.4.0
      name: stable-6.4
    defaultChannel: stable-6.4
    packageName: cluster-logging
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Konveyor
      provider-url: ""
    name: gitops-primer
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitops-primer.v0.0.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "primer.gitops.io/v1alpha1",
                "kind": "Export",
                "metadata": {
                  "name": "primer"
                },
                "spec": {
                  "method": "download"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/migtools/gitops-primer:v0.0.11
          operatorframework.io/suggested-namespace: gitops-primer-system
          operators.operatorframework.io/builder: operator-sdk-v1.18.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Export is the Schema for the exports API
            displayName: Export
            kind: Export
            name: exports.primer.gitops.io
            version: v1alpha1
        description: Export and normalize Kubernetes YAML files for GitOps
        displayName: gitops-primer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - operator
        links:
        - name: Gitops Primer
          url: https://github.com/migtools/gitops-primer
        maturity: alpha
        provider:
          name: Konveyor
        relatedImages:
        - quay.io/migtools/gitops-primer-webhook:v0.0.11
        - quay.io/migtools/gitops-primer:v0.0.11
        - quay.io/openshift-community-operators/gitops-primer@sha256:97af48469275f1b3a669f8e24a97a80ce9897fc5b12643a4f298b82dbe26e20b
        - quay.io/openshift/origin-oauth-proxy:4.9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6d57bfd91fac9b68eb72d27226bc297472ceb136c996628b845ecc54a48b31cb
        - quay.io/migtools/gitops-primer-downloader:v0.0.11
        - quay.io/migtools/gitops-primer-export:v0.0.11
        version: 0.0.11
      entries:
      - name: gitops-primer.v0.0.11
        version: 0.0.11
      - name: gitops-primer.v0.0.10
        version: 0.0.10
      - name: gitops-primer.v0.0.9
        version: 0.0.9
      - name: gitops-primer.v0.0.8
        version: 0.0.8
      - name: gitops-primer.v0.0.7
        version: 0.0.7
      - name: gitops-primer.v0.0.6
        version: 0.0.6
      - name: gitops-primer.v0.0.5
        version: 0.0.5
      - name: gitops-primer.v0.0.4
        version: 0.0.4
      - name: gitops-primer.v0.0.3
        version: 0.0.3
      - name: gitops-primer.v0.0.2
        version: 0.0.2
      - name: gitops-primer.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: gitops-primer
    provider:
      name: Konveyor
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ecs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ecs-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecs.services.k8s.aws/v1alpha1",
                "kind": "Service",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ecs.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ecs.services.k8s.aws/v1alpha1",
                "kind": "TaskDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ecs-controller:1.2.0
          createdAt: "2025-11-29T03:45:21Z"
          description: AWS ECS controller is a service controller for managing ECS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster represents the state of an AWS ecs Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.ecs.services.k8s.aws
            version: v1alpha1
          - description: Service represents the state of an AWS ecs Service resource.
            displayName: Service
            kind: Service
            name: services.ecs.services.k8s.aws
            version: v1alpha1
          - description: TaskDefinition represents the state of an AWS ecs TaskDefinition
              resource.
            displayName: TaskDefinition
            kind: TaskDefinition
            name: taskdefinitions.ecs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Elastic Container Service (ECS) resources in AWS from within your Kubernetes cluster.

          **About Amazon ECS**

          Amazon Elastic Container Service (Amazon ECS) is a fully managed container orchestration service that helps you easily deploy, manage, and scale containerized applications. As a fully managed service, Amazon ECS comes with AWS configuration and operational best practices built-in. It's integrated with both AWS and third-party tools, such as Amazon Elastic Container Registry and Docker. This integration makes it easier for teams to focus on building the applications, not the environment. You can run and scale your container workloads across AWS Regions in the cloud, and on-premises, without the complexity of managing a control plane.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ECS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ECS Developer Resources
          url: https://aws.amazon.com/ecs/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ecs maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ecs-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ecs-controller@sha256:4626d70cfb1b1ea707836df633e85aba77255150c01fc2e18a6b2a364b626344
        version: 1.2.0
      entries:
      - name: ack-ecs-controller.v1.2.0
        version: 1.2.0
      - name: ack-ecs-controller.v1.1.1
        version: 1.1.1
      - name: ack-ecs-controller.v1.0.15
        version: 1.0.15
      - name: ack-ecs-controller.v1.0.14
        version: 1.0.14
      - name: ack-ecs-controller.v1.0.13
        version: 1.0.13
      - name: ack-ecs-controller.v1.0.12
        version: 1.0.12
      - name: ack-ecs-controller.v1.0.11
        version: 1.0.11
      - name: ack-ecs-controller.v1.0.10
        version: 1.0.10
      - name: ack-ecs-controller.v1.0.9
        version: 1.0.9
      name: alpha
    defaultChannel: alpha
    packageName: ack-ecs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Grafana Labs
      provider-url: https://grafana.com
    name: grafana-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: grafana-operator.v5.21.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "Grafana",
                "metadata": {
                  "labels": {
                    "dashboards": "grafana-a",
                    "folders": "grafana-a"
                  },
                  "name": "grafana-a"
                },
                "spec": {
                  "config": {
                    "auth": {
                      "disable_login_form": "false"
                    },
                    "log": {
                      "mode": "console"
                    },
                    "security": {
                      "admin_password": "start",
                      "admin_user": "root"
                    }
                  }
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaAlertRuleGroup",
                "metadata": {
                  "name": "grafanaalertrulegroup-sample"
                },
                "spec": {
                  "folderRef": "test-folder-from-operator",
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "interval": "5m",
                  "rules": [
                    {
                      "condition": "B",
                      "data": [
                        {
                          "datasourceUid": "grafanacloud-demoinfra-prom",
                          "model": {
                            "datasource": {
                              "type": "prometheus",
                              "uid": "grafanacloud-demoinfra-prom"
                            },
                            "editorMode": "code",
                            "expr": "weather_temp_c{}",
                            "instant": true,
                            "intervalMs": 1000,
                            "legendFormat": "__auto",
                            "maxDataPoints": 43200,
                            "range": false,
                            "refId": "A"
                          },
                          "refId": "A",
                          "relativeTimeRange": {
                            "from": 600
                          }
                        },
                        {
                          "datasourceUid": "__expr__",
                          "model": {
                            "conditions": [
                              {
                                "evaluator": {
                                  "params": [
                                    0
                                  ],
                                  "type": "gt"
                                },
                                "operator": {
                                  "type": "and"
                                },
                                "query": {
                                  "params": [
                                    "C"
                                  ]
                                },
                                "reducer": {
                                  "params": [],
                                  "type": "last"
                                },
                                "type": "query"
                              }
                            ],
                            "datasource": {
                              "type": "__expr__",
                              "uid": "__expr__"
                            },
                            "expression": "A",
                            "intervalMs": 1000,
                            "maxDataPoints": 43200,
                            "refId": "B",
                            "type": "threshold"
                          },
                          "refId": "B",
                          "relativeTimeRange": {
                            "from": 600
                          }
                        }
                      ],
                      "execErrState": "Error",
                      "for": "5m0s",
                      "noDataState": "NoData",
                      "title": "Temperature below freezing",
                      "uid": "4843de5c-4f8a-4af0-9509-23526a04faf8"
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaContactPoint",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "grafana-operator",
                    "app.kubernetes.io/instance": "grafanacontactpoint-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "grafanacontactpoint",
                    "app.kubernetes.io/part-of": "grafana-operator"
                  },
                  "name": "grafanacontactpoint-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "name": "grafanacontactpoint-sample",
                  "settings": {
                    "email": null
                  },
                  "type": "email"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaDashboard",
                "metadata": {
                  "name": "grafanadashboard-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "json": "{\n\n  \"id\": null,\n  \"title\": \"Simple Dashboard\",\n  \"tags\": [],\n  \"style\": \"dark\",\n  \"timezone\": \"browser\",\n  \"editable\": true,\n  \"hideControls\": false,\n  \"graphTooltip\": 1,\n  \"panels\": [],\n  \"time\": {\n    \"from\": \"now-6h\",\n    \"to\": \"now\"\n  },\n  \"timepicker\": {\n    \"time_options\": [],\n    \"refresh_intervals\": []\n  },\n  \"templating\": {\n    \"list\": []\n  },\n  \"annotations\": {\n    \"list\": []\n  },\n  \"refresh\": \"5s\",\n  \"schemaVersion\": 17,\n  \"version\": 0,\n  \"links\": []\n}\n"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaDatasource",
                "metadata": {
                  "name": "grafanadatasource-sample"
                },
                "spec": {
                  "datasource": {
                    "access": "proxy",
                    "isDefault": true,
                    "jsonData": {
                      "timeInterval": "5s",
                      "tlsSkipVerify": true
                    },
                    "name": "prometheus",
                    "type": "prometheus",
                    "url": "http://prometheus-service:9090"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "plugins": [
                    {
                      "name": "grafana-clock-panel",
                      "version": "1.3.0"
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaFolder",
                "metadata": {
                  "name": "grafanafolder-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "title": "Example Folder"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaLibraryPanel",
                "metadata": {
                  "name": "grafana-library-panel-inline-envs"
                },
                "spec": {
                  "envs": [
                    {
                      "name": "CUSTOM_RANGE_ENV",
                      "value": "now - 12h"
                    }
                  ],
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "jsonnet": "local myRange = std.extVar('CUSTOM_RANGE_ENV'); {\n\n  model: {}\n}\n",
                  "plugins": [
                    {
                      "name": "grafana-piechart-panel",
                      "version": "1.3.9"
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaMuteTiming",
                "metadata": {
                  "name": "mutetiming-sample"
                },
                "spec": {
                  "editable": false,
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "name": "mutetiming-sample",
                  "time_intervals": [
                    {
                      "days_of_month": [
                        "1",
                        "15"
                      ],
                      "location": "Asia/Shanghai",
                      "times": [
                        {
                          "end_time": "06:00",
                          "start_time": "00:00"
                        }
                      ],
                      "weekdays": [
                        "saturday"
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaNotificationPolicy",
                "metadata": {
                  "name": "grafananotificationpolicy-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "route": {
                    "group_by": [
                      "grafana_folder",
                      "alertname"
                    ],
                    "receiver": "Grafana Cloud OnCall",
                    "routes": [
                      {
                        "object_matchers": [
                          [
                            "foo",
                            "=",
                            "bar"
                          ]
                        ],
                        "receiver": "grafana-default-email",
                        "routes": [
                          {
                            "object_matchers": [
                              [
                                "severity",
                                "=",
                                "critical"
                              ]
                            ],
                            "receiver": "Grafana Cloud OnCall"
                          }
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaNotificationPolicyRoute",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "grafana-operator",
                    "app.kubernetes.io/instance": "grafananotificationpolicyroute-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "grafananotificationpolicyroute",
                    "app.kubernetes.io/part-of": "grafana-operator"
                  },
                  "name": "grafananotificationpolicyroute-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaNotificationTemplate",
                "metadata": {
                  "name": "test"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "name": "test",
                  "template": "{{ define \"SlackAlert\" }}\n  [{{.Status}}] {{ .Labels.alertname }}\n  {{ .Annotations.AlertValues }}\n{{ end }}\n\n{{ define \"SlackAlertMessage\" }}\n  {{ if gt (len .Alerts.Firing) 0 }}\n    {{ len .Alerts.Firing }} firing:\n    {{ range .Alerts.Firing }} {{ template \"SlackAlert\" . }} {{ end }}\n  {{ end }}\n  {{ if gt (len .Alerts.Resolved) 0 }}\n    {{ len .Alerts.Resolved }} resolved:\n    {{ range .Alerts.Resolved }} {{ template \"SlackAlert\" . }} {{ end }}\n  {{ end }}\n{{ end }}\n\n{{ template \"SlackAlertMessage\" . }}\n"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaServiceAccount",
                "metadata": {
                  "name": "my-service-account"
                },
                "spec": {
                  "instanceName": "my-grafana",
                  "isDisabled": false,
                  "name": "my-service-account",
                  "role": "Admin",
                  "tokens": [
                    {
                      "expires": "2029-12-31T14:00:00+02:00",
                      "name": "my-token-a",
                      "secretName": "thatsfine"
                    },
                    {
                      "name": "my-token-b"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: ghcr.io/grafana/grafana-operator@sha256:0c74f67a26af34701639b858a51306163efd8f292206124d754c9c5e4628aeef
          createdAt: "2025-12-17T14:15:21Z"
          description: Deploys and manages Grafana instances, dashboards and data
            sources
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/grafana/grafana-operator
          support: Grafana Labs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alert rule groups that contain multiple alert rules
            displayName: Grafana Alert Rule Group
            kind: GrafanaAlertRuleGroup
            name: grafanaalertrulegroups.grafana.integreatly.org
            version: v1beta1
          - description: Contact Points
            displayName: Grafana Contact Point
            kind: GrafanaContactPoint
            name: grafanacontactpoints.grafana.integreatly.org
            version: v1beta1
          - description: Dashboards
            displayName: Grafana Dashboard
            kind: GrafanaDashboard
            name: grafanadashboards.grafana.integreatly.org
            version: v1beta1
          - description: Data Sources
            displayName: Grafana Datasource
            kind: GrafanaDatasource
            name: grafanadatasources.grafana.integreatly.org
            version: v1beta1
          - description: Folder for dashboards & alerts
            displayName: Grafana Folder
            kind: GrafanaFolder
            name: grafanafolders.grafana.integreatly.org
            version: v1beta1
          - description: Library Panel for use in dashboards
            displayName: GrafanaLibraryPanel
            kind: GrafanaLibraryPanel
            name: grafanalibrarypanels.grafana.integreatly.org
            version: v1beta1
          - description: Mute Timings that silence alerts
            kind: GrafanaMuteTiming
            name: grafanamutetimings.grafana.integreatly.org
            version: v1beta1
          - description: Notification Policy Tree
            displayName: Grafana Notification policy
            kind: GrafanaNotificationPolicy
            name: grafananotificationpolicies.grafana.integreatly.org
            version: v1beta1
          - description: GrafanaNotificationPolicyRoute is the Schema for the grafananotificationpolicyroutes
              API
            displayName: Grafana Notification Policy Route
            kind: GrafanaNotificationPolicyRoute
            name: grafananotificationpolicyroutes.grafana.integreatly.org
            version: v1beta1
          - description: Templates for use in notifications
            kind: GrafanaNotificationTemplate
            name: grafananotificationtemplates.grafana.integreatly.org
            version: v1beta1
          - description: Grafana Instances
            displayName: Grafana
            kind: Grafana
            name: grafanas.grafana.integreatly.org
            version: v1beta1
          - description: Grafana service accounts
            kind: GrafanaServiceAccount
            name: grafanaserviceaccounts.grafana.integreatly.org
            version: v1beta1
        description: Deploys and manages Grafana instances, dashboards and data sources
        displayName: Grafana Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Grafana
        - Metrics
        - Observability
        links:
        - name: Grafana Operator
          url: https://grafana.github.io/grafana-operator
        maintainers:
        - email: grafana-operator@grafana.com
          name: Grafana-operator maintainers
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Grafana Labs
          url: https://grafana.com
        relatedImages:
        - docker.io/grafana/grafana@sha256:70d9599b186ce287be0d2c5ba9a78acb2e86c1a68c9c41449454d0fc3eeb84e8
        - ghcr.io/grafana/grafana-operator@sha256:0c74f67a26af34701639b858a51306163efd8f292206124d754c9c5e4628aeef
        - quay.io/community-operator-pipeline-prod/grafana-operator@sha256:5ac32543a87b1f34e4ade94ff03a4243420a58a0249c30892fc9cdd5216104f1
        version: 5.21.2
      entries:
      - name: grafana-operator.v5.21.2
        version: 5.21.2
      - name: grafana-operator.v5.21.1
        version: 5.21.1
      - name: grafana-operator.v5.20.0
        version: 5.20.0
      - name: grafana-operator.v5.19.4
        version: 5.19.4
      - name: grafana-operator.v5.18.0
        version: 5.18.0
      - name: grafana-operator.v5.17.1
        version: 5.17.1
      - name: grafana-operator.v5.15.1
        version: 5.15.1
      name: v5
    defaultChannel: v5
    packageName: grafana-operator
    provider:
      name: Grafana Labs
      url: https://grafana.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Flux project
      provider-url: ""
    name: flux
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: flux.v2.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "helm.toolkit.fluxcd.io/v2beta1",
                "kind": "HelmRelease",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "default"
                },
                "spec": {
                    "interval": "5m",
                    "chart": {
                      "spec": {
                          "chart": "podinfo",
                          "version": "4.0.x",
                          "sourceRef": {
                            "kind": "HelmRepository",
                            "name": "podinfo",
                            "namespace": "flux-system"
                          },
                          "interval": "1m"
                      }
                    },
                    "values": {
                      "replicaCount": 2
                    }
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "GitRepository",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "dev"
                },
                "spec": {
                    "interval": "1m",
                    "ref": {
                      "branch": "master"
                    },
                    "url": "https://github.com/stefanprodan/podinfo"
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "HelmRepository",
                "metadata": {
                    "name": "stable",
                    "namespace": "default"
                },
                "spec": {
                    "url": "https://kubernetes-charts.storage.googleapis.com/",
                    "interval": "10m"
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "HelmChart",
                "metadata": {
                    "name": "redis",
                    "namespace": "default"
                },
                "spec": {
                    "chart": "redis",
                    "version": "10.5.7",
                    "sourceRef": {
                      "name": "stable",
                      "kind": "HelmRepository"
                    },
                    "interval": "5m"
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "Bucket",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "default"
                },
                "spec": {
                    "interval": "1m",
                    "provider": "generic",
                    "bucketName": "podinfo",
                    "endpoint": "minio.minio.svc.cluster.local:9000",
                    "insecure": true,
                    "secretRef": {
                      "name": "minio-credentials"
                    }
                }
              },
              {
                "apiVersion": "kustomize.toolkit.fluxcd.io/v1beta2",
                "kind": "Kustomization",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "dev"
                },
                "spec": {
                    "interval": "5m",
                    "path": "./deploy/overlays/dev",
                    "prune": true,
                    "sourceRef": {
                      "kind": "GitRepository",
                      "name": "podinfo"
                    },
                    "timeout": "2m",
                    "wait": true
                }
              },
              {
                "apiVersion": "notification.toolkit.fluxcd.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "default"
                },
                "spec": {
                    "type": "github",
                    "address": "https://github.com/stefanprodan/podinfo",
                    "secretRef": {
                      "name": "api-token"
                    }
                }
              },
              {
                "apiVersion": "notification.toolkit.fluxcd.io/v1beta1",
                "kind": "Alert",
                "metadata": {
                    "name": "webapp",
                    "namespace": "default"
                },
                "spec": {
                    "providerRef": {
                      "name": "on-call-slack"
                    },
                    "eventSeverity": "info",
                    "eventSources": [
                      {
                          "kind": "GitRepository",
                          "name": "webapp"
                      },
                      {
                          "kind": "Bucket",
                          "name": "secrets"
                      },
                      {
                          "kind": "Kustomization",
                          "name": "webapp-backend"
                      },
                      {
                          "kind": "Kustomization",
                          "name": "webapp-frontend"
                      }
                    ]
                }
              },
              {
                "apiVersion": "notification.toolkit.fluxcd.io/v1beta1",
                "kind": "Receiver",
                "metadata": {
                    "name": "github-receiver",
                    "namespace": "default"
                },
                "spec": {
                    "type": "github",
                    "events": [
                      "ping",
                      "push"
                    ],
                    "secretRef": {
                      "name": "webhook-token"
                    },
                    "resources": [
                      {
                          "kind": "GitRepository",
                          "name": "webapp"
                      },
                      {
                          "kind": "HelmRepository",
                          "name": "webapp"
                      }
                    ]
                }
              },
              {
                "apiVersion": "image.toolkit.fluxcd.io/v1beta1",
                "kind": "ImageRepository",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "flux-system"
                },
                "spec": {
                    "image": "ghcr.io/stefanprodan/podinfo",
                    "interval": "1m0s"
                }
              },
              {
                "apiVersion": "image.toolkit.fluxcd.io/v1beta1",
                "kind": "ImagePolicy",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "flux-system"
                },
                "spec": {
                    "imageRepositoryRef": {
                      "name": "podinfo"
                    },
                    "policy": {
                      "semver": {
                          "range": "5.0.x"
                      }
                    }
                }
              },
              {
                "apiVersion": "image.toolkit.fluxcd.io/v1beta1",
                "kind": "ImageUpdateAutomation",
                "metadata": {
                  "name": "flux-system",
                  "namespace": "flux-system"
                },
                "spec": {
                  "interval": "1m0s",
                  "sourceRef": {
                    "kind": "GitRepository",
                    "name": "flux-system"
                  },
                  "git": {
                    "checkout": {
                      "ref": {
                        "branch": "main"
                      }
                    },
                    "commit": {
                      "author": {
                        "email": "fluxcdbot@users.noreply.github.com",
                        "name": "fluxcdbot"
                      },
                      "messageTemplate": "{{range .Updated.Images}}{{println .}}{{end}}"
                    },
                    "push": {
                      "branch": "main"
                    }
                  },
                  "update": {
                    "path": "./clusters/my-cluster",
                    "strategy": "Setters"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: ghcr.io/fluxcd/source-controller:v1.3.0
          description: Flux is a Continuous Delivery solution for Kubernetes.
          operatorframework.io/suggested-namespace: flux-system
          support: The Flux community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alert
            displayName: Alert
            kind: Alert
            name: alerts.notification.toolkit.fluxcd.io
            version: v1beta1
          - description: Alert
            displayName: Alert
            kind: Alert
            name: alerts.notification.toolkit.fluxcd.io
            version: v1beta2
          - description: Alert
            displayName: Alert
            kind: Alert
            name: alerts.notification.toolkit.fluxcd.io
            version: v1beta3
          - description: Bucket
            displayName: Bucket
            kind: Bucket
            name: buckets.source.toolkit.fluxcd.io
            version: v1beta1
          - description: Bucket
            displayName: Bucket
            kind: Bucket
            name: buckets.source.toolkit.fluxcd.io
            version: v1beta2
          - description: GitRepository
            displayName: GitRepository
            kind: GitRepository
            name: gitrepositories.source.toolkit.fluxcd.io
            version: v1
          - description: GitRepository
            displayName: GitRepository
            kind: GitRepository
            name: gitrepositories.source.toolkit.fluxcd.io
            version: v1beta1
          - description: GitRepository
            displayName: GitRepository
            kind: GitRepository
            name: gitrepositories.source.toolkit.fluxcd.io
            version: v1beta2
          - description: HelmChart
            displayName: HelmChart
            kind: HelmChart
            name: helmcharts.source.toolkit.fluxcd.io
            version: v1
          - description: HelmChart
            displayName: HelmChart
            kind: HelmChart
            name: helmcharts.source.toolkit.fluxcd.io
            version: v1beta1
          - description: HelmChart
            displayName: HelmChart
            kind: HelmChart
            name: helmcharts.source.toolkit.fluxcd.io
            version: v1beta2
          - description: HelmRelease
            displayName: HelmRelease
            kind: HelmRelease
            name: helmreleases.helm.toolkit.fluxcd.io
            version: v2
          - description: HelmRelease
            displayName: HelmRelease
            kind: HelmRelease
            name: helmreleases.helm.toolkit.fluxcd.io
            version: v2beta1
          - description: HelmRelease
            displayName: HelmRelease
            kind: HelmRelease
            name: helmreleases.helm.toolkit.fluxcd.io
            version: v2beta2
          - description: HelmRepository
            displayName: HelmRepository
            kind: HelmRepository
            name: helmrepositories.source.toolkit.fluxcd.io
            version: v1
          - description: HelmRepository
            displayName: HelmRepository
            kind: HelmRepository
            name: helmrepositories.source.toolkit.fluxcd.io
            version: v1beta1
          - description: HelmRepository
            displayName: HelmRepository
            kind: HelmRepository
            name: helmrepositories.source.toolkit.fluxcd.io
            version: v1beta2
          - description: ImagePolicy
            displayName: ImagePolicy
            kind: ImagePolicy
            name: imagepolicies.image.toolkit.fluxcd.io
            version: v1beta1
          - description: ImagePolicy
            displayName: ImagePolicy
            kind: ImagePolicy
            name: imagepolicies.image.toolkit.fluxcd.io
            version: v1beta2
          - description: ImageRepository
            displayName: ImageRepository
            kind: ImageRepository
            name: imagerepositories.image.toolkit.fluxcd.io
            version: v1beta1
          - description: ImageRepository
            displayName: ImageRepository
            kind: ImageRepository
            name: imagerepositories.image.toolkit.fluxcd.io
            version: v1beta2
          - description: ImageUpdateAutomation
            displayName: ImageUpdateAutomation
            kind: ImageUpdateAutomation
            name: imageupdateautomations.image.toolkit.fluxcd.io
            version: v1beta1
          - description: ImageUpdateAutomation
            displayName: ImageUpdateAutomation
            kind: ImageUpdateAutomation
            name: imageupdateautomations.image.toolkit.fluxcd.io
            version: v1beta2
          - description: Kustomization
            displayName: Kustomization
            kind: Kustomization
            name: kustomizations.kustomize.toolkit.fluxcd.io
            version: v1
          - description: Kustomization
            displayName: Kustomization
            kind: Kustomization
            name: kustomizations.kustomize.toolkit.fluxcd.io
            version: v1beta1
          - description: Kustomization
            displayName: Kustomization
            kind: Kustomization
            name: kustomizations.kustomize.toolkit.fluxcd.io
            version: v1beta2
          - description: OCIRepository
            displayName: OCIRepository
            kind: OCIRepository
            name: ocirepositories.source.toolkit.fluxcd.io
            version: v1beta2
          - description: Provider
            displayName: Provider
            kind: Provider
            name: providers.notification.toolkit.fluxcd.io
            version: v1beta1
          - description: Provider
            displayName: Provider
            kind: Provider
            name: providers.notification.toolkit.fluxcd.io
            version: v1beta2
          - description: Provider
            displayName: Provider
            kind: Provider
            name: providers.notification.toolkit.fluxcd.io
            version: v1beta3
          - description: Receiver
            displayName: Receiver
            kind: Receiver
            name: receivers.notification.toolkit.fluxcd.io
            version: v1
          - description: Receiver
            displayName: Receiver
            kind: Receiver
            name: receivers.notification.toolkit.fluxcd.io
            version: v1beta1
          - description: Receiver
            displayName: Receiver
            kind: Receiver
            name: receivers.notification.toolkit.fluxcd.io
            version: v1beta2
        description: |-
          [Flux](https://fluxcd.io/) is a Continuous Delivery solution for Kubernetes.
          Flux is constructed with the [GitOps Toolkit](https://toolkit.fluxcd.io/components/), a set of composable APIs and specialized tools for keeping Kubernetes clusters in sync with sources of configuration (like Git & Helm repositories), and automating updates to configuration when there is new code to deploy.

          Flux is a CNCF incubation project made for:

          - **cluster operators** who automate provision and configuration of clusters
          - **platform engineers** who build continuous delivery for developer teams
          - **app developers** who rely on continuous delivery to get their code live

          Features:

          - Source configuration from Git and Helm repositories, and S3-compatible buckets (e.g., Minio)
          - Kustomize and Helm support
          - Event-triggered and periodic reconciliation
          - Integration with Kubernetes RBAC
          - Health assessment (clusters and workloads)
          - Dependency management (infrastructure and workloads)
          - Secrets management (builtin support for Mozilla SOPS and Cloud KMS)
          - Alerting to external systems (webhook senders)
          - External events handling (webhook receivers)
          - Automated container image updates to Git (image scanning and patching)
          - Policy-driven validation (OPA, Kyverno, admission controllers)
          - Seamless integration with Git providers (GitHub, GitLab, Bitbucket)
          - Interoperability with Cluster API (CAPI) providers

          ### Steps to support bootstraping with Flux CLI

          SecComp Profile should be removed as it requires a special privilege to get the access.
          Also, it requires to enforce `runUserAs` to the same UID provided by the images to prevent OpenShift
          to alter the user id expected by our controllers.

          To do so, please specifiy a patch using the following Kustomization file, for example.

          ```yaml
          apiVersion: kustomize.config.k8s.io/v1beta1
          kind: Kustomization
          resources:
            - gotk-components.yaml
            - gotk-sync.yaml
          patches:
            - patch: |
                apiVersion: apps/v1
                kind: Deployment
                metadata:
                  name: all
                spec:
                  template:
                    spec:
                      containers:
                        - name: manager
                          securityContext:
                            runAsUser: 65534
                            seccompProfile:
                              $patch: delete
              target:
                kind: Deployment
                labelSelector: app.kubernetes.io/part-of=flux
          ```

          Then before installing Flux, please also perform the following steps to bind Flux to the `nonroot` SecurityContextConstraint (SCC). This applies to installation via OC's OLM or via Flux CLI.

          ```sh
          # replace default "flux-system" with the project/namespace name for your flux installation
          namespace="flux-system"
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:source-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:kustomize-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:helm-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:notification-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:image-automation-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:image-reflector-controller

          ```

          To see complete steps please refer to this [documentation](https://github.com/fluxcd/website/blob/main/content/en/docs/use-cases/openshift.md).

          If you've already installed Flux, you might need to uninstall it after applying the above pre-requisite steps.

          ### Network Policies

          This version of Flux is shipped without the normally provided network Policies.
          By default all traffic is enabled, and anyone can access the source-controller
          artifacts.

          It is not recommended to run it in production as is.

          Please visit [Flux's policies](https://github.com/fluxcd/flux2/tree/main/manifests/policies)
          to deploy the needed network policies and secure your Flux setup.

          ### Breaking Changes

          - Flux 0.18.x ships with v1beta2 of the kustomize.toolkit.fluxcd.io/Kustomization CRD.
          - Flux 0.25.x is the last Flux release where Kubernetes 1.19 is supported.

          ### Flux on OpenShift Use Cases

          - [The GitOps with Flux + OpenShift](https://www.youtube.com/watch?v=8ybCtNVP5To) talk by Andrew Block (Red Hat) showing how to setup multi-tenacy on OpenShift using Flux.
          - [Flux OpenShift Use Case](https://fluxcd.io/docs/use-cases/openshift/) on FluxCD.io
        displayName: Flux
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - flux
        - gitops
        - cd
        - continuous delivery
        - fluxcd
        - helm
        - kustomize
        links:
        - name: Homepage
          url: https://fluxcd.io/
        - name: Documentation
          url: https://fluxcd.io/docs/
        - name: Slack
          url: https://cloud-native.slack.com/messages/flux
        - name: Mailing List
          url: https://lists.cncf.io/g/cncf-flux-dev
        - name: Source Code
          url: https://github.com/fluxcd/flux2
        maintainers:
        - email: support@weave.works
          name: The Flux maintainers
        maturity: stable
        provider:
          name: The Flux project
        relatedImages:
        - ghcr.io/fluxcd/image-reflector-controller:v0.32.0
        - ghcr.io/fluxcd/kustomize-controller:v1.3.0
        - ghcr.io/fluxcd/notification-controller:v1.3.0
        - ghcr.io/fluxcd/source-controller:v1.3.0
        - quay.io/community-operator-pipeline-prod/flux@sha256:cd94037ff3055ab6ce40b0670f900248a5fd233cc67a2a4f92c1559cf9d2f3ad
        - ghcr.io/fluxcd/helm-controller:v1.0.1
        - ghcr.io/fluxcd/image-automation-controller:v0.38.0
        version: 2.3.0
      entries:
      - name: flux.v2.3.0
        version: 2.3.0
      - name: flux.v2.2.2
        version: 2.2.2
      - name: flux.v2.2.0
        version: 2.2.0
      - name: flux.v2.0.1
        version: 2.0.1
      - name: flux.v0.41.2
        version: 0.41.2
      - name: flux.v0.40.0
        version: 0.40.0
      - name: flux.v0.39.0
        version: 0.39.0
      - name: flux.v0.38.3
        version: 0.38.3
      - name: flux.v0.37.0
        version: 0.37.0
      - name: flux.v0.36.0
        version: 0.36.0
      - name: flux.v0.35.0
        version: 0.35.0
      - name: flux.v0.31.4
        version: 0.31.4
      - name: flux.v0.31.3
        version: 0.31.3
      - name: flux.v0.30.2
        version: 0.30.2
      - name: flux.v0.28.5
        version: 0.28.5
      - name: flux.v0.28.4
        version: 0.28.4
      - name: flux.v0.28.3
        version: 0.28.3
      - name: flux.v0.27.4
        version: 0.27.4
      - name: flux.v0.27.3
        version: 0.27.3
      - name: flux.v0.27.2
        version: 0.27.2
      - name: flux.v0.27.0
        version: 0.27.0
      - name: flux.v0.26.1
        version: 0.26.1
      - name: flux.v0.26.0
        version: 0.26.0
      - name: flux.v0.25.3
        version: 0.25.3
      - name: flux.v0.25.2
        version: 0.25.2
      - name: flux.v0.24.1
        version: 0.24.1
      - name: flux.v0.24.0
        version: 0.24.0
      - name: flux.v0.23.0
        version: 0.23.0
      - name: flux.v0.22.1
        version: 0.22.1
      - name: flux.v0.22.0
        version: 0.22.0
      - name: flux.v0.21.1
        version: 0.21.1
      - name: flux.v0.21.0
        version: 0.21.0
      - name: flux.v0.20.1
        version: 0.20.1
      - name: flux.v0.20.0
        version: 0.20.0
      - name: flux.v0.19.1
        version: 0.19.1
      - name: flux.v0.18.3
        version: 0.18.3
      - name: flux.v0.18.1
        version: 0.18.1
      - name: flux.v0.17.2
        version: 0.17.2
      - name: flux.v0.17.1
        version: 0.17.1
      - name: flux.v0.17.0
        version: 0.17.0
      - name: flux.v0.16.2
        version: 0.16.2
      - name: flux.v0.16.1
        version: 0.16.1
      - name: flux.v0.16.0
        version: 0.16.0
      - name: flux.v0.15.3
        version: 0.15.3
      - name: flux.v0.15.2
        version: 0.15.2
      - name: flux.v0.14.2
        version: 0.14.2
      - name: flux.v0.14.1
        version: 0.14.1
      - name: flux.v0.14.0
        version: 0.14.0
      - name: flux.v0.13.4
        version: 0.13.4
      name: stable
    defaultChannel: stable
    packageName: flux
    provider:
      name: The Flux project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Commvault
      provider-url: ""
    name: hedvig-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hedvig-operator.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\":\"hedvig.io/v1\",\n    \"kind\":\"HedvigDeploy\",\n
            \   \"metadata\": {\n      \"name\": \"testdeploy\",\n      \"namespace\":
            \"hedvig\"\n    },\n    \"spec\": {\n      \"cluster\": {\n        \"name\":
            \"hedvigcl\",\n        \"seeds\": [\n          \"hedvigcl1.hedvig.io\",\n
            \         \"hedvigcl2.hedvig.io\",\n          \"hedvigcl3.hedvig.io\"\n
            \       ]\n      },\n      \"k8s\": {\n        \"name\": \"k8scl\"\n      },\n
            \     \"proxy\": {\n        \"repository\": \"hedvig/hedvig-proxy\",\n
            \       \"tag\": \"v-4.3.1\",\n        \"imagePullPolicy\": \"IfNotPresent\"\n
            \     },\n      \"controller\": {\n        \"repository\": \"hedvig/hedvig-csi-volume-driver\",\n
            \       \"tag\": \"v-2.0\",\n        \"imagePullPolicy\": \"IfNotPresent\"\n
            \     },\n      \"node\": {\n        \"repository\": \"hedvig/hedvig-csi-volume-driver\",\n
            \       \"tag\": \"v-2.0\",\n        \"imagePullPolicy\": \"IfNotPresent\"\n
            \     },\n      \"sidecars\": [\n        {\n          \"name\": \"csi-provisioner\",\n
            \         \"repository\": \"quay.io/k8scsi/csi-provisioner\",\n          \"tag\":
            \"v1.6.0\",\n          \"imagePullPolicy\": \"IfNotPresent\"\n        },\n
            \       {\n          \"name\": \"csi-snapshotter\",\n          \"repository\":
            \"quay.io/k8scsi/csi-snapshotter\",\n          \"tag\": \"v2.1.0\",\n
            \         \"imagePullPolicy\": \"IfNotPresent\"\n        },              \n
            \       {\n          \"name\": \"csi-resizer\",\n          \"repository\":
            \"quay.io/k8scsi/csi-resizer\",\n          \"tag\": \"v0.5.0\",\n          \"imagePullPolicy\":
            \"IfNotPresent\"\n        },              \n        {\n          \"name\":
            \"csi-node-driver-registrar\",\n          \"repository\": \"quay.io/k8scsi/csi-node-driver-registrar\",\n
            \         \"tag\": \"v1.0-canary\",\n          \"imagePullPolicy\": \"IfNotPresent\"\n
            \       }\n      ]\n    }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "false"
          containerImage: hedvig/hedvig-operator:2.0.0-ubi
          createdAt: ""
          description: Hedvig Operator is the official operator to deploy and manage
            Hedvig components in container orchestrators such as Kubernetes and Openshift.
          repository: ""
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Hedvig Deploy
            displayName: HedvigDeploy
            kind: HedvigDeploy
            name: hedvigdeploys.hedvig.io
            version: v1
        description: "The Hedvig Distributed Storage Platform is a software-defined,
          scale-out storage solution. It distributes data simultaneously across multiple
          locations – from on-premises data centers to the cloud – and scales capacity
          on-demand by leveraging the storage of commodity x86/ARM servers. The distributed
          write maximizes availability and protects data from hardware failures ranging
          from a single disk to an entire site, improving disaster recovery planning.\n\nHedvig
          provides a CSI Driver for accelerating your journey into the container ecosystem.
          CSI Driver enables containerized applications to maintain state by dynamically
          provisioning and consuming Hedvig virtual disks as persistent volumes. \n###
          \n\nHedvig Operator deploys the Hedvig Storage Proxy and the Hedvig CSI
          Driver to manage the life cycle of persistent storage in Kubernetes and
          Openshift.\n\n**Supported Container Orchestrators:**\n* Kubernetes 1.16+\n*
          Red Hat OpenShift 4.6+\n\n**Supported Hedvig Releases:**\n* Hedvig 4.0+\nPlease
          refer to the [documentation](https://documentation.commvault.com/commvault/hedvig/others/pdf/Hedvig_Operator_User_Guide.pdf)
          for steps to install and use the operator.\n\n\n\n\n\n"
        displayName: Hedvig Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Storage
        - CSI
        - Hedvig
        - Cloud
        - Block
        - NFS
        - iSCSI
        - Snapshot
        - Volume
        links:
        - name: Documentation
          url: https://documentation.commvault.com/commvault/hedvig/article
        - name: Hedvig CSI User Guide
          url: https://documentation.commvault.com/commvault/hedvig/others/pdf/Hedvig_CSI_User_Guide.pdf
        maintainers:
        - email: ashenoy@commvault.com
          name: Abhijith Shenoy
        maturity: stable
        provider:
          name: Commvault
        relatedImages:
        - hedvig/hedvig-operator:2.0.0-ubi
        - quay.io/openshift-community-operators/hedvig-operator@sha256:81d956c12057f18bf920044a4e39c27c99b2c23afdccc0ff9468f0484e1961d7
        version: 1.0.2
      entries:
      - name: hedvig-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: hedvig-operator
    provider:
      name: Commvault
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: vertical-pod-autoscaler
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vertical-pod-autoscaler.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "autoscaling.k8s.io/v1",
                "kind": "VerticalPodAutoscaler",
                "metadata": {
                  "name": "myapp-vpa"
                },
                "spec": {
                  "resourcePolicy": {
                    "containerPolicies": [
                      {
                        "containerName": "*",
                        "controlledResources": [
                          "cpu",
                          "memory"
                        ],
                        "maxAllowed": {
                          "cpu": 1,
                          "memory": "500Mi"
                        },
                        "minAllowed": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      }
                    ]
                  },
                  "targetRef": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "myapp-deployment"
                  }
                }
              },
              {
                "apiVersion": "autoscaling.openshift.io/v1",
                "kind": "VerticalPodAutoscalerController",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "minReplicas": 2,
                  "podMinCPUMillicores": 25,
                  "podMinMemoryMb": 250,
                  "safetyMarginFraction": 0.15
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          certifiedLevel: Primed
          containerImage: registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9-operator@sha256:c8b4fbae4f814c8f553bb0c41491cd58fe4c524e29689305545f7a811b0a99e7
          createdAt: "2025-07-23T17:03:26Z"
          description: An operator to run the OpenShift Vertical Pod Autoscaler. Vertical
            Pod Autoscaler (VPA) can be configured to monitor a workload's resource
            utilization, and then adjust its CPU and memory limits by updating the
            pod (future) or restarting the pod with updated limits.
          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: "true"
          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"
          healthIndex: B
          olm.skipRange: '>=4.5.0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-vertical-pod-autoscaler
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/vertical-pod-autoscaler-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents VPA checkpoints used by the VPA controllers to
              manage workloads
            displayName: VPA Checkpoint
            kind: VerticalPodAutoscalerCheckpoint
            name: verticalpodautoscalercheckpoints.autoscaling.k8s.io
            version: v1
          - kind: VerticalPodAutoscalerCheckpoint
            name: verticalpodautoscalercheckpoints.autoscaling.k8s.io
            version: v1beta2
          - description: Represents an instance of the set of VPA controllers
            displayName: VPA Controller
            kind: VerticalPodAutoscalerController
            name: verticalpodautoscalercontrollers.autoscaling.openshift.io
            version: v1
          - description: An application whose resources are managed by the VPA
            displayName: VerticalPodAutoscaler
            kind: VerticalPodAutoscaler
            name: verticalpodautoscalers.autoscaling.k8s.io
            version: v1
          - kind: VerticalPodAutoscaler
            name: verticalpodautoscalers.autoscaling.k8s.io
            version: v1beta2
        description: An operator to run the OpenShift Vertical Pod Autoscaler. Vertical
          Pod Autoscaler (VPA) can be configured to monitor a workload's resource
          utilization, and then adjust its CPU and memory limits by updating the pod
          (future) or restarting the pod with updated limits.
        displayName: Vertical Pod Autoscaler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - verticalpodautoscaler
        - vpa
        - autoscaling
        - scaling
        links:
        - name: Vertical Pod Autoscaler Documentation
          url: https://docs.openshift.com/container-platform/latest/nodes/pods/nodes-pods-vertical-autoscaler.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-operator-bundle@sha256:bac746437332ab19a056edfc42148904de392c787a79dd77c2734b2dc34982d0
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9-operator@sha256:c8b4fbae4f814c8f553bb0c41491cd58fe4c524e29689305545f7a811b0a99e7
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9@sha256:8d7407a15dee92f15e8c62ef8a23c02b94bc59d1dd6595f9dd3e05f5a01cf9a3
        version: 4.20.0-202512081147
      entries:
      - name: vertical-pod-autoscaler.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: vertical-pod-autoscaler.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: vertical-pod-autoscaler.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: vertical-pod-autoscaler.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: vertical-pod-autoscaler.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: vertical-pod-autoscaler.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: vertical-pod-autoscaler.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: vertical-pod-autoscaler
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: redhat.com
    name: rh-service-binding-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: service-binding-operator.v0.9.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "service.binding/v1alpha2",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ServiceBinding expresses intent to bind an operator-backed
              service with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: Service Binding for Kubernetes. Describes the connection
              between a Provisioned Service and an Application Projection. Implements
              Service Binding Specifcation for Kubernetes (https://github.com/k8s-service-bindings/spec).
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.service.binding
            version: v1alpha2
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: alpha
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator-metadata@sha256:d9930900b0d2f92ae813246fc322290234ad8bbd165b10e36671b53852228718
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:fe6629401bc8447da95ec55949b5a27e620364bb6e02f86230262699ac8a5d55
        version: 0.9.1
      entries:
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: beta
    - currentCSV: service-binding-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindablekinds-sample"
                }
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:e799bd06043028d214baeeffc683710ad2eed7b83272fc653e3b89f69711319b
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:e799bd06043028d214baeeffc683710ad2eed7b83272fc653e3b89f69711319b
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator-metadata@sha256:87448055a162e215a4d4982a8494fec6e7cc59fe6704494ddfdcfea076a2100c
        version: 0.11.0
      entries:
      - name: service-binding-operator.v0.11.0
        version: 0.11.0
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: candidate
    - currentCSV: service-binding-operator.v0.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "service.binding/v1alpha2",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.service.binding
            version: v1alpha2
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator-metadata@sha256:a7c6f1c9260c79ebbdfb25ea996516ba1e2bcbedf25401e9e6848b955a2d3d78
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:3d7a3648e86848402577dd19c1f8fd130a5556ebdfbc0f663a72f9e141024812
        version: 0.10.0
      entries:
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: preview
    - currentCSV: service-binding-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindable-kinds"
                },
                "spec": {}
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  },
                  "type": "postgres",
                  "workload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: registry.redhat.io/ocp-tools-4/service-binding-rhel8-operator@sha256:9c8fb0c8f9d2f54685561af21e595aa88bf309eaebebdf23fb6997b75d026b18
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.17.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'.
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1alpha3
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1beta1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
          - description: Service Binding implementing community specification (https://github.com/k8s-service-bindings/spec)
              describing the connection between a backing service and an application
              workload.
            displayName: Service Binding (Spec API)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1beta1
        description: |
          The Service Binding Operator manages the data plane for applications and backing services. It enables developers to connect their
          applications to backing services (REST API, databases, event buses and others) with a consistent and predictable
          experience. The operator reads data made available by the control plane of backing services and projects the bindings
          data to applications either as accessible files mounted into the application’s container or environment variables.

          In Kubernetes, each service suggests a different way to access their secrets and developers will consume them in their
          application in a custom way. While this provides a good deal of flexibility, it also creates discrepancies and
          complexity dealing with each specific services, which leads large development teams to lose overall velocity.

          Service Binding Operator removes the error-prone manual configuration of binding information, provides service operators
          a low-touch administrative experience to provision and manage access to services and enriches development lifecycle.

          For additional details refer to the project [documentation](https://redhat-developer.github.io/service-binding-operator).

          Get Started with Service Binding Operator
          * Find out about SBO’s [prerequisites](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/installing-service-binding.html).
          * Refer to the [Quick Start Guide](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/quick-start.html) to see SBO in action in a simple scenario.

          Need Help
          * Raise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)

          Licence
          * Service Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE)

          Service Binding Operator is providing and supporting two different APIs.
          * `binding.operators.coreos.com/v1alpha1`: This API is compliant with the Service Binding specification. It is fully supported and considered as the mature API. It’s the API we recommend in production environments.
          * `servicebinding.io/v1beta1`: This API is the one defined in the Service Binding specification. It is available in Service Binding Operator 1.x.

          We’ll consider supporting only the API from the specification, once the Service Binding specification will be officially GA. Of course, that will be a breaking change and handle in a safe way for you.
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Documentation
          url: https://redhat-developer.github.io/service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4/service-binding-operator-bundle@sha256:9ab3d5eb70c654270fef9e8e9d4e5b68e1ac3c86bd0e0dcd36cc6f8741be1603
        - registry.redhat.io/ocp-tools-4/service-binding-rhel8-operator@sha256:9c8fb0c8f9d2f54685561af21e595aa88bf309eaebebdf23fb6997b75d026b18
        version: 1.3.3
      entries:
      - name: service-binding-operator.v1.3.3
        version: 1.3.3
      - name: service-binding-operator.v1.3.1
        version: 1.3.1
      - name: service-binding-operator.v1.3.0
        version: 1.3.0
      - name: service-binding-operator.v1.2.0
        version: 1.2.0
      - name: service-binding-operator.v1.1.1
        version: 1.1.1
      - name: service-binding-operator.v1.1.0
        version: 1.1.0
      - name: service-binding-operator.v1.0.1
        version: 1.0.1
      - name: service-binding-operator.v1.0.0
        version: 1.0.0
      - name: service-binding-operator.v0.11.0
        version: 0.11.0
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: rh-service-binding-operator
    provider:
      name: Red Hat
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/component: kmm
      app.kubernetes.io/name: kmm
      app.kubernetes.io/part-of: kmm
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: kernel-module-management
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kernel-module-management.v2.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:1022205d712a2ed9d6e76968961c180d4e66a2e0fb991221b0b02ed94ed830d2
          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: "true"
          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.skipRange: '>=0.0.0 <2.0.2'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel-module-management
        - out-of-tree
        - kernel
        - kmm
        - module
        - modules
        - oot
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:25f39f20f325f64676bf8ef14cd8a60cfbdc77116753a89d4bb667ea2a86172c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:62c44057a27abd41cf3daf60b8736da59a82dadb65fa6c32bef65d19bd49ea49
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:192e08b121a04ae69aea60c35199e8f5e3c42305e1ebd024a605a371de4ab472
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:e39a0b57e73d92c5db330ac9b8a184eeb400397f14c05c1ef75c952d91e4f5b2
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:1022205d712a2ed9d6e76968961c180d4e66a2e0fb991221b0b02ed94ed830d2
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:94b4ddc45cb34d4ffe794a51b99c868cb709f90cc4eb8b28284d70c526a0a226
        version: 2.0.2
      entries:
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.0
    - currentCSV: kernel-module-management.v2.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a85037778c53c3766f39efe4c4d2523d01ae7743e5c5693b05bd8b2cbb50b1d8
          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.skipRange: '>=0.0.0 <2.1.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:1a9a19df17b464d1708b2905d03b8726e4480ca1f11aa97a15ff4c049a24ea4b
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:611556d999ea97f9dbb78fec5963baa02de7a26626d7096ba63b177e3bcf9707
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:ea3e5fbf7eaf6bd29031e2876d7e24859779fb4d3d7ef27c26a1d310f137ad17
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:14e100e5853444114029116255ebfb7a54e5ed51503ba969740ad48b5ca80f70
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:5024be9a3190288983e3c42e8a2dbb49aa44cd596237ad9ed0e72de5090dc9b9
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a85037778c53c3766f39efe4c4d2523d01ae7743e5c5693b05bd8b2cbb50b1d8
        version: 2.1.1
      entries:
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.1
    - currentCSV: kernel-module-management.v2.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a224708950f8defb259ef0da49011d361c5c0378404350640600c6e8fbdbd606
          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: "true"
          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.skipRange: '>=0.0.0 <2.2.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:53fddf0b226eb579c71c86112a8d9b6b1d90a1498d6f6985932b16b8be532f35
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:ece58f1e360eccf7d970dca2f9da0c4d99a692648f165f677f11ff080649cf62
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a224708950f8defb259ef0da49011d361c5c0378404350640600c6e8fbdbd606
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:c3dc9ad4ebc68cd85a074b520903a9310e72a90a73bdf4aa7c42b7ed66b7bcba
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:b1d98c0f14448ae8eb80821cbec236150c338674aae2a2b37f8d0ab0d5f1430c
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:ce1d68fd96f5003285f9fbc0c7abd8aa23830dbdd9b76629d38d4d2238e30032
        version: 2.2.1
      entries:
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.2
    - currentCSV: kernel-module-management.v2.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:750dcc75f908cdda86932386fa1a28edaf65d7b5379ef6d0447586a064db906f
          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: "true"
          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.skipRange: '>=0.0.0 <2.3.0'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:6bd423056b555d39337c0e3a9c31e7732e80f34d0c01f0766a6aadb2aff586f8
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:750dcc75f908cdda86932386fa1a28edaf65d7b5379ef6d0447586a064db906f
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:06ac089cc89b303e525fd71d6439b958f34ab944a72209f1cc8cb562ecfd1112
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:c5005b74402f680d11c9ea682a9a0d3f74b6ab0d01d25298d232f910f1a29c34
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:055c2d6e80bd1ec225f0cb2041572ebb28cfd1a4ed82ba47ff0d638d52ded2a8
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:f9fde334af68220943017a7491130e6a82f15e63522f5bb3931aa7d9b00ccc40
        version: 2.3.0
      entries:
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.3
    - currentCSV: kernel-module-management.v2.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator
          createdAt: "2025-06-19T20:27:41Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.4.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:088dde6eb9d239a7a34b6e47a1bc3c3f1f74aabe764744eb9554913181b4e0db
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:8e0a3cfb1cb92d6d3c9ab5a3030593d8df1378c3ce755d598fb77b08ea5793d3
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:38d811a00b88a096d9fa8f650dae132c43db7057aac61c98932494ce94d67fff
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:34bd5c4f17411d5aa71edb1d6482b9a4cffffe4983b0a599db080bb09e1ec4d2
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:fc753a1c47c870199bf3c9a6cb4ef704847d525b3df5cd7628e2cc7dd0bbb2aa
        version: 2.4.1
      entries:
      - name: kernel-module-management.v2.4.1
        version: 2.4.1
      - name: kernel-module-management.v2.4.0
        version: 2.4.0
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.4
    - currentCSV: kernel-module-management.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:29Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BootModuleConfig describes how to load a module during kernel
              initialization
            displayName: Boot Module Config
            kind: BootModuleConfig
            name: bootmoduleconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:f1385af719931a82f572b33e678043ea91edfb5198cf880416c9a1e94455e399
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        version: 2.5.1
      entries:
      - name: kernel-module-management.v2.5.1
        version: 2.5.1
      - name: kernel-module-management.v2.5.0
        version: 2.5.0
      - name: kernel-module-management.v2.4.1
        version: 2.4.1
      - name: kernel-module-management.v2.4.0
        version: 2.4.0
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.5
    - currentCSV: kernel-module-management.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:29Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BootModuleConfig describes how to load a module during kernel
              initialization
            displayName: Boot Module Config
            kind: BootModuleConfig
            name: bootmoduleconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:f1385af719931a82f572b33e678043ea91edfb5198cf880416c9a1e94455e399
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        version: 2.5.1
      entries:
      - name: kernel-module-management.v2.5.1
        version: 2.5.1
      - name: kernel-module-management.v2.5.0
        version: 2.5.0
      - name: kernel-module-management.v2.4.1
        version: 2.4.1
      - name: kernel-module-management.v2.4.0
        version: 2.4.0
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: kernel-module-management
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Cloudera
      provider-url: https://cloudera.com
    name: cloudera-streams-messaging-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cloudera-streams-messaging-kubernetes-operator.1.4.0-b199
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster"
                },
                "spec": {
                  "kafka": {
                    "version": "3.9.0.1.4",
                    "replicas": 3,
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2,
                      "inter.broker.protocol.version": "3.9"
                    },
                    "storage": {
                      "type": "ephemeral"
                    }
                  },
                  "zookeeper": {
                    "replicas": 3,
                    "storage": {
                      "type": "ephemeral"
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "3.9.0.1.4",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: container.repository.cloudera.com/cloudera/kafka-operator@sha256:d6812fed7ddf139dab4d12cab6a0ae292e2d0619303b0ad72f2eef642e5a183a
          createdAt: "2025-07-14 10:09:41"
          description: Run Apache Kafka with Cloudera Streams Messaging - Kubernetes
            Operator
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: A valid license and current subscription
            for Cloudera Streaming - Kubernetes Operator is required. Contact Cloudera
            sales to obtain a license. https://www.cloudera.com/contact-sales.html
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |-
          Cloudera Streams Messaging - Kubernetes Operator brings enterprise-grade Kafka deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of Kafka for enterprise deployments. To learn more about Cloudera Streaming, [read this deep dive blog post](https://blog.cloudera.com/accelerating-deployments-of-streaming-pipelines-announcing-data-in-motion-on-kubernetes/).

          Cloudera Streams Messaging - Kubernetes Operator consists of and ships multiple components including Apache Kafka, Apache ZooKeeper, Cruise Control, Strimzi, and others.

          ## Installation prerequisites

          Installing Cloudera Streams Messaging - Kubernetes Operator requires a valid license as well as Cloudera credentials (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly. The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) where installation artifacts are pulled from.

          ### Obtaining a license

          Contact [Cloudera Sales](https://www.cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets

          Before installation, create  two `Secrets`. One containing your Cloudera credentials, and one containing your license. Cloudera credentials are provided to you together with your license.

          Create a `Secret` containing your Cloudera credentials.
          ```
          oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***] --docker-server=container.repository.cloudera.com
          ```
          Create a `Secret` containing your license.
          ```
          oc create secret generic csm-op-license --from-file=license.txt=[***PATH TO LICENSE FILE***]
          ```

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces where you plan to deploy Kafka or Kafka Connect clusters. Cloudera recommends that you create the `Secret` in all required namespaces before installation if you know what namespaces you will be using to deploy Kafka or Kafka Connect.

          ## Learn more
          To learn more, visit the [Cloudera Streams Messaging - Kubernetes Operator documentation library](https://docs.cloudera.com/csm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Streams Messaging - Kubernetes Operator, visit the following resources:

          * [Strimzi](https://strimzi.io/)
          * [Apache Kafka](https://kafka.apache.org/)
          * [Apache ZooKeeper](https://zookeeper.apache.org/)
          * [Cruise Control](https://github.com/linkedin/cruise-control)
        displayName: Cloudera Streams Messaging - Kubernetes Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Documentation
          url: https://docs.cloudera.com/csm-operator
        - name: Cloudera Community Forum
          url: https://community.cloudera.com/
        - name: Cloudera Stream Processing
          url: https://www.cloudera.com/products/stream-processing.html
        - name: Contact Cloudera
          url: https://www.cloudera.com/contact-sales.html
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/kafka@sha256:aa64e161b9672153a6f6559f9ae9ef88d0e40d6040a80e21bd3dc8ee39df6523
        - container.repository.cloudera.com/cloudera/kafka@sha256:b675e7426a558c4681e53d8e03f278264d7ad555f7c02422017683a29708ac2b
        - container.repository.cloudera.com/cloudera/maven-builder@sha256:9f18203b175193e5079fdc0c2b71c14887641d997f92b4a1c918546f777166df
        - registry.connect.redhat.com/cloudera/cloudera-streams-messaging-kubernetes-operator-bundle@sha256:e7c79d2e6b21ce423d0199316012ccde1ccf16da412da66e4a36c54539aac81d
        - container.repository.cloudera.com/cloudera/kafka-operator@sha256:d6812fed7ddf139dab4d12cab6a0ae292e2d0619303b0ad72f2eef642e5a183a
        version: 1.4.0-b199
      entries:
      - name: cloudera-streams-messaging-kubernetes-operator.1.4.0-b199
        version: 1.4.0-b199
      name: 1.2.x
    - currentCSV: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.0.1.1.5",
                    "metadataVersion": "4.0-IV3",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.0.1.1.5",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
          createdAt: "2025-10-29 10:43:01"
          description: Run Apache Kafka with Cloudera Streams Messaging - Kubernetes
            Operator
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: A valid license and current subscription
            for Cloudera Streaming - Kubernetes Operator is required. Contact Cloudera
            sales to obtain a license. https://www.cloudera.com/contact-sales.html
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |-
          Cloudera Streams Messaging - Kubernetes Operator brings enterprise-grade Kafka deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of Kafka for enterprise deployments. To learn more about Cloudera Streaming, [read this deep dive blog post](https://blog.cloudera.com/accelerating-deployments-of-streaming-pipelines-announcing-data-in-motion-on-kubernetes/).

          Cloudera Streams Messaging - Kubernetes Operator consists of and ships multiple components including Apache Kafka, Cruise Control, Strimzi, and others.

          ## Installation prerequisites

          Installing Cloudera Streams Messaging - Kubernetes Operator requires a valid license as well as Cloudera credentials (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly. The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) where installation artifacts are pulled from.

          ### Obtaining a license

          Contact [Cloudera Sales](https://www.cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets

          Before installation, create  two `Secrets`. One containing your Cloudera credentials, and one containing your license. Cloudera credentials are provided to you together with your license.

          Create a `Secret` containing your Cloudera credentials.
          ```
          oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***] --docker-server=container.repository.cloudera.com
          ```
          Create a `Secret` containing your license.
          ```
          oc create secret generic csm-op-license --from-file=license.txt=[***PATH TO LICENSE FILE***]
          ```

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces where you plan to deploy Kafka or Kafka Connect clusters. Cloudera recommends that you create the `Secret` in all required namespaces before installation if you know what namespaces you will be using to deploy Kafka or Kafka Connect.

          ## Learn more
          To learn more, visit the [Cloudera Streams Messaging - Kubernetes Operator documentation library](https://docs.cloudera.com/csm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Streams Messaging - Kubernetes Operator, visit the following resources:

          * [Strimzi](https://strimzi.io/)
          * [Apache Kafka](https://kafka.apache.org/)
          * [Cruise Control](https://github.com/linkedin/cruise-control)
        displayName: Cloudera Streams Messaging - Kubernetes Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Documentation
          url: https://docs.cloudera.com/csm-operator
        - name: Cloudera Community Forum
          url: https://community.cloudera.com/
        - name: Cloudera Stream Processing
          url: https://www.cloudera.com/products/stream-processing.html
        - name: Contact Cloudera
          url: https://www.cloudera.com/contact-sales.html
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/kafka@sha256:9b03f2dc7a6646c4e4945cc8580d85437991ef7efb7d7460e7d811e8bf823ea5
        - container.repository.cloudera.com/cloudera/kafka@sha256:9e506b1e049c13e2a9143115cee59799702d0204b3bdc82f65426acbc46daecd
        - container.repository.cloudera.com/cloudera/maven-builder@sha256:acfab110978a5bd596da1541a2d414c846ec14c2cbe1343c6f720a86a8b127c4
        - registry.connect.redhat.com/cloudera/cloudera-streams-messaging-kubernetes-operator-bundle@sha256:33e545dac3749f733ff45af7780c24c3d07efebfcfbd07db5abfd3d246a4e24f
        - container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
        version: 1.5.0-b123
      entries:
      - name: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
        version: 1.5.0-b123
      name: 1.5.x
    - currentCSV: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.0.1.1.5",
                    "metadataVersion": "4.0-IV3",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.0.1.1.5",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
          createdAt: "2025-10-29 10:43:01"
          description: Run Apache Kafka with Cloudera Streams Messaging - Kubernetes
            Operator
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: A valid license and current subscription
            for Cloudera Streaming - Kubernetes Operator is required. Contact Cloudera
            sales to obtain a license. https://www.cloudera.com/contact-sales.html
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |-
          Cloudera Streams Messaging - Kubernetes Operator brings enterprise-grade Kafka deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of Kafka for enterprise deployments. To learn more about Cloudera Streaming, [read this deep dive blog post](https://blog.cloudera.com/accelerating-deployments-of-streaming-pipelines-announcing-data-in-motion-on-kubernetes/).

          Cloudera Streams Messaging - Kubernetes Operator consists of and ships multiple components including Apache Kafka, Cruise Control, Strimzi, and others.

          ## Installation prerequisites

          Installing Cloudera Streams Messaging - Kubernetes Operator requires a valid license as well as Cloudera credentials (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly. The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) where installation artifacts are pulled from.

          ### Obtaining a license

          Contact [Cloudera Sales](https://www.cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets

          Before installation, create  two `Secrets`. One containing your Cloudera credentials, and one containing your license. Cloudera credentials are provided to you together with your license.

          Create a `Secret` containing your Cloudera credentials.
          ```
          oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***] --docker-server=container.repository.cloudera.com
          ```
          Create a `Secret` containing your license.
          ```
          oc create secret generic csm-op-license --from-file=license.txt=[***PATH TO LICENSE FILE***]
          ```

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces where you plan to deploy Kafka or Kafka Connect clusters. Cloudera recommends that you create the `Secret` in all required namespaces before installation if you know what namespaces you will be using to deploy Kafka or Kafka Connect.

          ## Learn more
          To learn more, visit the [Cloudera Streams Messaging - Kubernetes Operator documentation library](https://docs.cloudera.com/csm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Streams Messaging - Kubernetes Operator, visit the following resources:

          * [Strimzi](https://strimzi.io/)
          * [Apache Kafka](https://kafka.apache.org/)
          * [Cruise Control](https://github.com/linkedin/cruise-control)
        displayName: Cloudera Streams Messaging - Kubernetes Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Documentation
          url: https://docs.cloudera.com/csm-operator
        - name: Cloudera Community Forum
          url: https://community.cloudera.com/
        - name: Cloudera Stream Processing
          url: https://www.cloudera.com/products/stream-processing.html
        - name: Contact Cloudera
          url: https://www.cloudera.com/contact-sales.html
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/kafka@sha256:9e506b1e049c13e2a9143115cee59799702d0204b3bdc82f65426acbc46daecd
        - container.repository.cloudera.com/cloudera/maven-builder@sha256:acfab110978a5bd596da1541a2d414c846ec14c2cbe1343c6f720a86a8b127c4
        - registry.connect.redhat.com/cloudera/cloudera-streams-messaging-kubernetes-operator-bundle@sha256:33e545dac3749f733ff45af7780c24c3d07efebfcfbd07db5abfd3d246a4e24f
        - container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
        - container.repository.cloudera.com/cloudera/kafka@sha256:9b03f2dc7a6646c4e4945cc8580d85437991ef7efb7d7460e7d811e8bf823ea5
        version: 1.5.0-b123
      entries:
      - name: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
        version: 1.5.0-b123
      name: stable
    defaultChannel: stable
    packageName: cloudera-streams-messaging-kubernetes-operator
    provider:
      name: Cloudera
      url: https://cloudera.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Intel® Corporation
      provider-url: https://intel.com
    name: intel-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: network-operator.v1.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l2"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L2",
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              },
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l3"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L3",
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              },
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l3-metrics"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L3",
                    "networkMetrics": true,
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              },
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l3-pfc-lldpad"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "enableLLDPAD": true,
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L3",
                    "pfcPriorities": "11110000",
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-11-19T08:53:19Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NetworkClusterPolicy is the Schema for the networkclusterpolicies
              API
            displayName: Network Cluster Policy
            kind: NetworkClusterPolicy
            name: networkclusterpolicies.intel.com
            version: v1alpha1
        description: |-
          Intel Network Operator allows automatic configuring and easier use
          of RDMA NICs with Intel AI accelerators in Kubernetes.
        displayName: Intel Network Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gaudi
        - gpu
        - intel
        - rdma
        - scaleout
        links:
        - name: Network Operator
          url: https://github.com/intel/network-operator
        maintainers:
        - email: patrik.flykt@intel.com
          name: Patrik Flykt
        - email: tuomas.katila@intel.com
          name: Tuomas Katila
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Intel® Corporation
          url: https://intel.com
        relatedImages:
        - registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719
        - registry.connect.redhat.com/intel/intel-network-operator-bundle@sha256:817a1cb4c2aa86b0d0268b04a500c238a604f15d54fc2d70b1ca9ca9736e5b2b
        - registry.connect.redhat.com/intel/intel-network-operator@sha256:3ea3d164de467117dfa7c5de3f8a46f130fc96e3d26ca46429b536710a60e4f8
        version: 1.1.1
      entries:
      - name: network-operator.v1.1.1
        version: 1.1.1
      name: alpha
    defaultChannel: alpha
    packageName: intel-network-operator
    provider:
      name: Intel® Corporation
      url: https://intel.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: klusterlet
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: klusterlet.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.open-cluster-management.io/v1",
                "kind": "Klusterlet",
                "metadata": {
                  "name": "klusterlet"
                },
                "spec": {
                  "clusterName": "cluster1",
                  "deployOption": {
                    "mode": "Singleton"
                  },
                  "externalServerURLs": [
                    {
                      "url": "https://localhost"
                    }
                  ],
                  "imagePullSpec": "quay.io/open-cluster-management/registration-operator:v0.13.1",
                  "namespace": "open-cluster-management-agent",
                  "registrationImagePullSpec": "quay.io/open-cluster-management/registration:v0.13.1",
                  "workImagePullSpec": "quay.io/open-cluster-management/work:v0.13.1"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/registration-operator:v0.13.1
          createdAt: "2024-04-10T15:27:49Z"
          description: Manages the installation and upgrade of the Klusterlet.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management-io/ocm
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Klusterlet defines the configurations of agents running on
              the managed cluster
            displayName: Klusterlet
            kind: Klusterlet
            name: klusterlets.operator.open-cluster-management.io
            version: v1
        description: "Note: This operator will stop updating, please use the latest
          operator in OperatorHub.io https://operatorhub.io/operator/klusterlet. \n\nThe
          Klusterlet proivdes the registation to the Hub clusters as a managed cluster.
          This operator supports the installation and upgrade of Klusterlet.\n\n##
          Prerequisites\nYou need a Hub cluster which has installed ClusterManager.\n\n##
          How to Install\n* Install Klusterlet operator by following instructions
          in top right button `Install`.\n* Optional: Create an agent namespace used
          to deploy Klusterlet. The default namespace is `open-cluster-management-agent`.\n*
          Create a secret `bootstrap-hub-kubeconfig` with the kubeconfig file of hub
          cluster in the agent namespace.\n\n  ```\n  $ kubectl create secret generic
          bootstrap-hub-kubeconfig --from-file=kubeconfig=<kubeconfig file of hub
          clsuter> -n <agent namespace>\n  ```\n\n* Create an instance of the Klusterlet
          resource to install the Klusterlet.\n\nThe pods of Klusterlet are created
          in agent namespace.\n\n```\n$ kubectl get pods -n open-cluster-management-agent\n
          \ NAME                                READY   STATUS    RESTARTS   AGE\n
          \ klusterlet-agent-55c6574876-nfxm9   1/1     Running   0          8m38s\n```\n\nThere
          is a ManagedCluster created in the Hub cluster.\n\n```\n$ kubectl get managedclusters.cluster.open-cluster-management.io\nNAME
          \                  HUB ACCEPTED   MANAGED CLUSTER URLS     JOINED   AVAILABLE
          \  AGE\ncluster1               false                                                        27s\n```\n"
        displayName: Klusterlet
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open-cluster-management
        - Klusterlet
        links:
        - name: Registration Operator
          url: https://github.com/open-cluster-management-io/ocm
        maintainers:
        - email: zyin@redhat.com
          name: Zhiwei Yin
        - email: deads@redhat.com
          name: David Eads
        - email: jqiu@redhat.com
          name: Jian Qiu
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/community-operator-pipeline-prod/klusterlet@sha256:9efef9a034c9f12505a0d81bc9697c4a3ab7e3d05d1e7aaa4180490d70ddf6a2
        - quay.io/open-cluster-management/registration-operator:v0.13.1
        version: 0.13.1
      entries:
      - name: klusterlet.v0.13.1
        version: 0.13.1
      - name: klusterlet.v0.13.0
        version: 0.13.0
      - name: klusterlet.v0.12.0
        version: 0.12.0
      - name: klusterlet.v0.11.0
        version: 0.11.0
      - name: klusterlet.v0.10.0
        version: 0.10.0
      - name: klusterlet.v0.9.1
        version: 0.9.1
      - name: klusterlet.v0.8.0
        version: 0.8.0
      - name: klusterlet.v0.7.0
        version: 0.7.0
      - name: klusterlet.v0.6.0
        version: 0.6.0
      - name: klusterlet.v0.5.0
        version: 0.5.0
      - name: klusterlet.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: klusterlet
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Grafana Tempo Operator SIG
      provider-url: ""
    name: tempo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tempo-operator.v0.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoMonolithic",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "jaegerui": {
                    "enabled": true,
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "resources": {
                    "limits": {
                      "cpu": "2",
                      "memory": "2Gi"
                    }
                  },
                  "storage": {
                    "traces": {
                      "backend": "memory"
                    }
                  }
                }
              },
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoStack",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "resources": {
                    "total": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2Gi"
                      }
                    }
                  },
                  "storage": {
                    "secret": {
                      "name": "my-storage-secret",
                      "type": "s3"
                    }
                  },
                  "storageSize": "1Gi",
                  "template": {
                    "queryFrontend": {
                      "jaegerQuery": {
                        "enabled": true,
                        "ingress": {
                          "type": "route"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          containerImage: ghcr.io/grafana/tempo-operator/tempo-operator:v0.19.0
          createdAt: "2025-11-20T16:37:25Z"
          description: Create and manage deployments of Tempo, a high-scale distributed
            tracing backend.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: tempo-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/grafana/tempo-operator
          support: Grafana Tempo Operator SIG
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TempoMonolithic manages a Tempo deployment in monolithic
              mode.
            displayName: TempoMonolithic
            kind: TempoMonolithic
            name: tempomonolithics.tempo.grafana.com
            version: v1alpha1
          - description: TempoStack manages a Tempo deployment in microservices mode.
            displayName: TempoStack
            kind: TempoStack
            name: tempostacks.tempo.grafana.com
            version: v1alpha1
        description: |-
          Tempo is an open source, easy-to-use, and high-scale distributed tracing backend.
          It can ingest common open source tracing protocols including Jaeger, Zipkin, and OpenTelemetry and requires only object storage to operate.
          Please refer to the [Tempo documentation](https://grafana.com/docs/tempo/latest/) for more information about Tempo.

          The Community Tempo Operator can manage Tempo deployments in Microservices mode (`TempoStack` CR) and Monolithic mode (`TempoMonolithic` CR).

          ### Operator features
          * **Resource Limits** - Specify overall resource requests and limits in the `TempoStack` CR; the operator assigns fractions of it to each component
          * **AuthN and AuthZ** - Supports OpenID Control (OIDC) and role-based access control (RBAC)
          * **Managed upgrades** - Updating the operator will automatically update all managed Tempo clusters
          * **Multitenancy** - Multiple tenants can send traces to the same Tempo cluster
          * **mTLS** - Communication between the Tempo components can be secured via mTLS
          * **Jaeger UI** - Traces can be visualized in Jaeger UI and exposed via Ingress or OpenShift Route
          * **Observability** - The operator and `TempoStack` operands expose telemetry (metrics, traces) and integrate with Prometheus `ServiceMonitor` and `PrometheusRule`

          ### Prerequisites
          `TempoStack` requires object storage to store its traces. `TempoMonolithic` can store traces in-memory, in a Persistent Volume and in object storage.
          Please ensure that an object storage solution is available and configured.
        displayName: Community Tempo Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tempo
        - tracing
        - observability
        - monitoring
        - database
        links:
        - name: Tempo Operator
          url: https://github.com/grafana/tempo-operator
        maintainers:
        - email: ruben.vp8510@gmail.com
          name: Ruben Vargas
        - email: p.loffay@gmail.com
          name: Pavol Loffay
        - email: bongartz@klimlive.de
          name: Benedikt Bongartz
        - email: andreas@gerstmayr.me
          name: Andreas Gerstmayr
        - email: iblancas@redhat.com
          name: Israel Blancas Alvarez
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Grafana Tempo Operator SIG
        relatedImages:
        - quay.io/observatorium/api:main-2025-08-25-7489eb0
        - quay.io/observatorium/opa-openshift:main-2025-06-16-ecdeca0
        - quay.io/openshift/origin-oauth-proxy:4.14
        - docker.io/grafana/tempo-query:2.9.0
        - docker.io/grafana/tempo:2.9.0
        - docker.io/jaegertracing/jaeger-query:1.68.0
        - ghcr.io/grafana/tempo-operator/tempo-operator:v0.19.0
        - quay.io/community-operator-pipeline-prod/tempo-operator@sha256:5c33104814fc9a1b1cdfacd5dca1234bfd17881820583ec1fd462a02ce83d272
        version: 0.19.0
      entries:
      - name: tempo-operator.v0.19.0
        version: 0.19.0
      - name: tempo-operator.v0.18.0
        version: 0.18.0
      - name: tempo-operator.v0.17.1
        version: 0.17.1
      - name: tempo-operator.v0.15.3
        version: 0.15.3
      - name: tempo-operator.v0.15.2
        version: 0.15.2
      - name: tempo-operator.v0.15.1
        version: 0.15.1
      - name: tempo-operator.v0.15.0
        version: 0.15.0
      - name: tempo-operator.v0.14.2
        version: 0.14.2
      - name: tempo-operator.v0.14.1
        version: 0.14.1
      - name: tempo-operator.v0.14.0
        version: 0.14.0
      - name: tempo-operator.v0.13.0
        version: 0.13.0
      - name: tempo-operator.v0.12.0
        version: 0.12.0
      - name: tempo-operator.v0.11.1
        version: 0.11.1
      - name: tempo-operator.v0.11.0
        version: 0.11.0
      - name: tempo-operator.v0.10.0
        version: 0.10.0
      - name: tempo-operator.v0.9.0
        version: 0.9.0
      - name: tempo-operator.v0.8.0
        version: 0.8.0
      - name: tempo-operator.v0.7.0
        version: 0.7.0
      - name: tempo-operator.v0.6.0
        version: 0.6.0
      - name: tempo-operator.v0.5.0
        version: 0.5.0
      - name: tempo-operator.v0.4.0
        version: 0.4.0
      - name: tempo-operator.v0.3.0
        version: 0.3.0
      - name: tempo-operator.v0.2.0
        version: 0.2.0
      - name: tempo-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: tempo-operator
    provider:
      name: Grafana Tempo Operator SIG
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: ansible-automation-platform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aap-operator.v2.5.0-0.1764945388
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727257740 <2.5.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation-Controller
              - Automation-Hub
              - EDA
              - Ansible-Lightspeed
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Ansible lightspeed: Deploy and manage the lifecycle of an ansible lightspeed application.
            * Automation gateway - Unify the management of AAP from a central location.
            * Automation controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private automation hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Platform resource operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-20

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console. For example, change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.
          If you originally installed the AAP Operator from the stable-2.4 channel for example, you will want to upgrade to the next minor version by selecting the stable-2.6 channel.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place.

          #### Create the AnsibleAutomationPlatform custom resource

          Once that is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: myaap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8@sha256:64d15cd62d59793fada48ef0ccf776a4de191aaa45e01d693df8e6af2fe99c46
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:a2e2211f218d13fea1c2bd232a87378f3d9f656839e48c72d93f4f8afc3ea702
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8-operator@sha256:8b3006af83b25c2e0e8dbcae1af781263bae4f85b78a1c499cd971fb6e6e62df
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8-operator@sha256:e4a98a6721ef18a6d412c1e9e2f48ab98852e8ff957cf910225d7ca1bc0bbbed
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-rhel8-operator@sha256:5f0649d44f18faa996d7ed880137b38a2abcac2cbdbdb9d937ad52fb0b53d936
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8@sha256:844b455cd0be699589d5cb54f0b153747949d2daa476e3b6b77851c2d64241ab
        - registry.redhat.io/ansible-automation-platform-25/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        version: 2.5.0+0.1764945388
      entries:
      - name: aap-operator.v2.5.0-0.1727240614
        version: 2.5.0+0.1727240614
      - name: aap-operator.v2.5.0-0.1727875185
        version: 2.5.0+0.1727875185
      - name: aap-operator.v2.5.0-0.1728520175
        version: 2.5.0+0.1728520175
      - name: aap-operator.v2.5.0-0.1729741547
        version: 2.5.0+0.1729741547
      - name: aap-operator.v2.5.0-0.1731456196
        version: 2.5.0+0.1731456196
      - name: aap-operator.v2.5.0-0.1733193164
        version: 2.5.0+0.1733193164
      - name: aap-operator.v2.5.0-0.1733969526
        version: 2.5.0+0.1733969526
      - name: aap-operator.v2.5.0-0.1736893446
        version: 2.5.0+0.1736893446
      - name: aap-operator.v2.5.0-0.1737101025
        version: 2.5.0+0.1737101025
      - name: aap-operator.v2.5.0-0.1737675968
        version: 2.5.0+0.1737675968
      - name: aap-operator.v2.5.0-0.1739248042
        version: 2.5.0+0.1739248042
      - name: aap-operator.v2.5.0-0.1740093573
        version: 2.5.0+0.1740093573
      - name: aap-operator.v2.5.0-0.1740773472
        version: 2.5.0+0.1740773472
      - name: aap-operator.v2.5.0-0.1741368605
        version: 2.5.0+0.1741368605
      - name: aap-operator.v2.5.0-0.1742434024
        version: 2.5.0+0.1742434024
      - name: aap-operator.v2.5.0-0.1743660124
        version: 2.5.0+0.1743660124
      - name: aap-operator.v2.5.0-0.1746137767
        version: 2.5.0+0.1746137767
      - name: aap-operator.v2.5.0-0.1747343762
        version: 2.5.0+0.1747343762
      - name: aap-operator.v2.5.0-0.1749074128
        version: 2.5.0+0.1749074128
      - name: aap-operator.v2.5.0-0.1749604727
        version: 2.5.0+0.1749604727
      - name: aap-operator.v2.5.0-0.1750901111
        version: 2.5.0+0.1750901111
      - name: aap-operator.v2.5.0-0.1753900156
        version: 2.5.0+0.1753900156
      - name: aap-operator.v2.5.0-0.1755835086
        version: 2.5.0+0.1755835086
      - name: aap-operator.v2.5.0-0.1758147230
        version: 2.5.0+0.1758147230
      - name: aap-operator.v2.5.0-0.1761050204
        version: 2.5.0+0.1761050204
      - name: aap-operator.v2.5.0-0.1764945388
        version: 2.5.0+0.1764945388
      name: stable-2.5
    - currentCSV: aap-operator.v2.5.0-0.1764945371
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727259094 <2.5.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation-Controller
              - Automation-Hub
              - EDA
              - Ansible-Lightspeed
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Ansible lightspeed: Deploy and manage the lifecycle of an ansible lightspeed application.
            * Automation gateway - Unify the management of AAP from a central location.
            * Automation controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private automation hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Platform resource operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-20

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console. For example, change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.
          If you originally installed the AAP Operator from the stable-2.4 channel for example, you will want to upgrade to the next minor version by selecting the stable-2.6 channel.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place.

          #### Create the AnsibleAutomationPlatform custom resource

          Once that is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: myaap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:fb284b670f3c4c28ac3bcc6a16d20db5ec38165750baf6a03f1d3b7cc316027f
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ansible-automation-platform-25/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - registry.redhat.io/ansible-automation-platform-25/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8@sha256:844b455cd0be699589d5cb54f0b153747949d2daa476e3b6b77851c2d64241ab
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8@sha256:64d15cd62d59793fada48ef0ccf776a4de191aaa45e01d693df8e6af2fe99c46
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-rhel8-operator@sha256:5f0649d44f18faa996d7ed880137b38a2abcac2cbdbdb9d937ad52fb0b53d936
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8-operator@sha256:8b3006af83b25c2e0e8dbcae1af781263bae4f85b78a1c499cd971fb6e6e62df
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8-operator@sha256:e4a98a6721ef18a6d412c1e9e2f48ab98852e8ff957cf910225d7ca1bc0bbbed
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        version: 2.5.0+0.1764945371
      entries:
      - name: aap-operator.v2.5.0-0.1727241223
        version: 2.5.0+0.1727241223
      - name: aap-operator.v2.5.0-0.1727875896
        version: 2.5.0+0.1727875896
      - name: aap-operator.v2.5.0-0.1728520687
        version: 2.5.0+0.1728520687
      - name: aap-operator.v2.5.0-0.1729742145
        version: 2.5.0+0.1729742145
      - name: aap-operator.v2.5.0-0.1731456854
        version: 2.5.0+0.1731456854
      - name: aap-operator.v2.5.0-0.1733193761
        version: 2.5.0+0.1733193761
      - name: aap-operator.v2.5.0-0.1733970210
        version: 2.5.0+0.1733970210
      - name: aap-operator.v2.5.0-0.1736894220
        version: 2.5.0+0.1736894220
      - name: aap-operator.v2.5.0-0.1737101781
        version: 2.5.0+0.1737101781
      - name: aap-operator.v2.5.0-0.1737676792
        version: 2.5.0+0.1737676792
      - name: aap-operator.v2.5.0-0.1739248649
        version: 2.5.0+0.1739248649
      - name: aap-operator.v2.5.0-0.1740094176
        version: 2.5.0+0.1740094176
      - name: aap-operator.v2.5.0-0.1740774104
        version: 2.5.0+0.1740774104
      - name: aap-operator.v2.5.0-0.1741369251
        version: 2.5.0+0.1741369251
      - name: aap-operator.v2.5.0-0.1742434756
        version: 2.5.0+0.1742434756
      - name: aap-operator.v2.5.0-0.1743660958
        version: 2.5.0+0.1743660958
      - name: aap-operator.v2.5.0-0.1746138413
        version: 2.5.0+0.1746138413
      - name: aap-operator.v2.5.0-0.1747345055
        version: 2.5.0+0.1747345055
      - name: aap-operator.v2.5.0-0.1749074612
        version: 2.5.0+0.1749074612
      - name: aap-operator.v2.5.0-0.1749607543
        version: 2.5.0+0.1749607543
      - name: aap-operator.v2.5.0-0.1750901870
        version: 2.5.0+0.1750901870
      - name: aap-operator.v2.5.0-0.1753900674
        version: 2.5.0+0.1753900674
      - name: aap-operator.v2.5.0-0.1755835623
        version: 2.5.0+0.1755835623
      - name: aap-operator.v2.5.0-0.1758147817
        version: 2.5.0+0.1758147817
      - name: aap-operator.v2.5.0-0.1761050855
        version: 2.5.0+0.1761050855
      - name: aap-operator.v2.5.0-0.1764945371
        version: 2.5.0+0.1764945371
      name: stable-2.5-cluster-scoped
    - currentCSV: aap-operator.v2.6.0-0.1764966733
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727257740 <2.6.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation Controller
              - Automation Hub
              - EDA
              - Ansible Lightspeed
              - Ansible MCP Server
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Ansible MCP Server.
            displayName: Ansible MCP Server
            kind: AnsibleMCPServer
            name: ansiblemcpservers.mcpserver.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Automation Gateway - Unify the management of AAP from a central location.
            * Automation Controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private Automation Hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Ansible Lightspeed: Deploy and manage the lifecycle of an Ansible Lightspeed application.
            * Platform Resource Operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner

          ## New in AAP 2.6 and 2.5

          In AAP 2.5, we are introducing a unified experience for all of the services provided in the Ansible Automation Platform. You can now manage content from Hub, rulebooks from EDA and automation jobs from Controller in a single pane.

          Instead of creating individual AutomationController, AutomationHub, and EDA custom resources, you will now instead create a single AnsibleAutomationPlatform custom resource.

          Ansible Lightspeed and it's integration with Watson Code Assistant is now available.  To read more about configuring it, please read https://red.ht/ansible-lightspeed-2x-docs.

          The managed database has been upgraded to PostgreSQL 15.


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-26

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console.

          **For customers on AAP 2.4:** Change the channel directly from `stable-2.4` to `stable-2.6` to upgrade directly to AAP 2.6, which will be released in October.

          **For customers on AAP 2.5:** Change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place. When upgrading from AAP 2.4 to 2.6, your external authentication configuration in Automation Controller will automatically be migrated to the new unified Platform UI.

          **Database:** AAP 2.6 continues to use PostgreSQL 15.

          #### Create the AnsibleAutomationPlatform custom resource (Required for upgrades from 2.4 only)

          **If upgrading from AAP 2.4:** Once the operator upgrade is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created.

          **If upgrading from AAP 2.5:** This step is not required as your AnsibleAutomationPlatform custom resource already exists.

          Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          Next, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda (lightspeed is disabled by default):


          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: aap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/ansible-automation-platform-26/hub-web-rhel9@sha256:285dd1aef3fff0c9e7fc9c61e3144307d8ea890ce21f87795c8e0e203ebf56e9
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-chatbot-rhel9@sha256:64fbb98e583452568482f059127defbca2257155ff920ab10c77aaccd32d6adb
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        - registry.redhat.io/ansible-automation-platform-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:88d59edb37c5c1588e22623e1a0c8c2e8bd793c52f2f8fcbedf8d6c4697874e8
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/ansible-automation-platform-26/gateway-proxy-rhel9@sha256:0cee3b756e3df8b9fa583f198dc4dec3dfe281c8a041455bc1bc5a748f1302d0
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9-operator@sha256:258d532cb566c43aa876d28435323bb7e80061f826c47669eb2d6ef348b996fd
        - registry.redhat.io/ansible-automation-platform-26/mcp-tools-rhel9@sha256:af2a28820846c524bb6828c6d6caf7929cbb198f303fbd8d9d0b940dd8226b9d
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        - registry.redhat.io/ansible-automation-platform-26/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9-operator@sha256:53ae38609933ea51171397af3af40f69165f293c621723f71ba9a48f72003e04
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-ui-rhel9@sha256:195a08ebffae71c3d37414d983dc9291bbe2d33a4a1f2d716654a2f7b67d2026
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9@sha256:3d947d906bc1cc146256877e0b458021bed8496a8e89a7628359c4d92990d2a7
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9@sha256:47942913af0c6782621af11824b6c8725e52864b52f21b164398cbf7a636212d
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9@sha256:d77101384b94a0306ae9b1dbaf8be6e5ee9eeb5c2e57ebe8189a2e2bac9fa9f7
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9-operator@sha256:5cdb95b53c3fe5363d4f74883410a435a2dd3f39e5be7af1130137f582ab4af2
        version: 2.6.0+0.1764966733
      entries:
      - name: aap-operator.v2.6.0-0.1758684783
        version: 2.6.0+0.1758684783
      - name: aap-operator.v2.6.0-0.1759764484
        version: 2.6.0+0.1759764484
      - name: aap-operator.v2.6.0-0.1760139263
        version: 2.6.0+0.1760139263
      - name: aap-operator.v2.6.0-0.1761281301
        version: 2.6.0+0.1761281301
      - name: aap-operator.v2.6.0-0.1762261205
        version: 2.6.0+0.1762261205
      - name: aap-operator.v2.6.0-0.1763137334
        version: 2.6.0+0.1763137334
      - name: aap-operator.v2.6.0-0.1764966733
        version: 2.6.0+0.1764966733
      name: stable-2.6
    - currentCSV: aap-operator.v2.6.0-0.1764966767
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727259094 <2.6.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation Controller
              - Automation Hub
              - EDA
              - Ansible Lightspeed
              - Ansible MCP Server
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Ansible MCP Server.
            displayName: Ansible MCP Server
            kind: AnsibleMCPServer
            name: ansiblemcpservers.mcpserver.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Automation Gateway - Unify the management of AAP from a central location.
            * Automation Controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private Automation Hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Ansible Lightspeed: Deploy and manage the lifecycle of an Ansible Lightspeed application.
            * Platform Resource Operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner

          ## New in AAP 2.6 and 2.5

          In AAP 2.5, we are introducing a unified experience for all of the services provided in the Ansible Automation Platform. You can now manage content from Hub, rulebooks from EDA and automation jobs from Controller in a single pane.

          Instead of creating individual AutomationController, AutomationHub, and EDA custom resources, you will now instead create a single AnsibleAutomationPlatform custom resource.

          Ansible Lightspeed and it's integration with Watson Code Assistant is now available.  To read more about configuring it, please read https://red.ht/ansible-lightspeed-2x-docs.

          The managed database has been upgraded to PostgreSQL 15.


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-26

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console.

          **For customers on AAP 2.4:** Change the channel directly from `stable-2.4` to `stable-2.6` to upgrade directly to AAP 2.6, which will be released in October.

          **For customers on AAP 2.5:** Change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place. When upgrading from AAP 2.4 to 2.6, your external authentication configuration in Automation Controller will automatically be migrated to the new unified Platform UI.

          **Database:** AAP 2.6 continues to use PostgreSQL 15.

          #### Create the AnsibleAutomationPlatform custom resource (Required for upgrades from 2.4 only)

          **If upgrading from AAP 2.4:** Once the operator upgrade is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created.

          **If upgrading from AAP 2.5:** This step is not required as your AnsibleAutomationPlatform custom resource already exists.

          Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          Next, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda (lightspeed is disabled by default):


          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: aap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform-26/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9@sha256:47942913af0c6782621af11824b6c8725e52864b52f21b164398cbf7a636212d
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9-operator@sha256:5cdb95b53c3fe5363d4f74883410a435a2dd3f39e5be7af1130137f582ab4af2
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9-operator@sha256:258d532cb566c43aa876d28435323bb7e80061f826c47669eb2d6ef348b996fd
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-ui-rhel9@sha256:195a08ebffae71c3d37414d983dc9291bbe2d33a4a1f2d716654a2f7b67d2026
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9@sha256:d77101384b94a0306ae9b1dbaf8be6e5ee9eeb5c2e57ebe8189a2e2bac9fa9f7
        - registry.redhat.io/ansible-automation-platform-26/mcp-tools-rhel9@sha256:af2a28820846c524bb6828c6d6caf7929cbb198f303fbd8d9d0b940dd8226b9d
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/ansible-automation-platform-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-chatbot-rhel9@sha256:64fbb98e583452568482f059127defbca2257155ff920ab10c77aaccd32d6adb
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:e52d16eb8343528b0d92860486ca3944e6f49fc9d8a2057c247e387bc3685abe
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9-operator@sha256:53ae38609933ea51171397af3af40f69165f293c621723f71ba9a48f72003e04
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9@sha256:3d947d906bc1cc146256877e0b458021bed8496a8e89a7628359c4d92990d2a7
        - registry.redhat.io/ansible-automation-platform-26/hub-web-rhel9@sha256:285dd1aef3fff0c9e7fc9c61e3144307d8ea890ce21f87795c8e0e203ebf56e9
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/ansible-automation-platform-26/gateway-proxy-rhel9@sha256:0cee3b756e3df8b9fa583f198dc4dec3dfe281c8a041455bc1bc5a748f1302d0
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        version: 2.6.0+0.1764966767
      entries:
      - name: aap-operator.v2.6.0-0.1758685241
        version: 2.6.0+0.1758685241
      - name: aap-operator.v2.6.0-0.1759764962
        version: 2.6.0+0.1759764962
      - name: aap-operator.v2.6.0-0.1760139657
        version: 2.6.0+0.1760139657
      - name: aap-operator.v2.6.0-0.1761281346
        version: 2.6.0+0.1761281346
      - name: aap-operator.v2.6.0-0.1762261209
        version: 2.6.0+0.1762261209
      - name: aap-operator.v2.6.0-0.1763137355
        version: 2.6.0+0.1763137355
      - name: aap-operator.v2.6.0-0.1764966767
        version: 2.6.0+0.1764966767
      name: stable-2.6-cluster-scoped
    defaultChannel: stable-2.6
    packageName: ansible-automation-platform-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Nokia
      provider-url: https://docs.eda.dev
    name: eda-k8s-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eda-openshift-operator.v4.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "config.eda.nokia.com/v1",
                "kind": "ConnectControllerConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "operator"
                  },
                  "name": "connectcontrollerconfig-sample",
                  "namespace": "eda-connect-k8s"
                },
                "spec": {
                  "connectPluginName": "",
                  "controllerImagePullSecret": "",
                  "edaNamespace": "eda",
                  "heartBeat": "",
                  "logLevel": "",
                  "skipTLSVerify": false,
                  "tlsCertificateData": "",
                  "tlsEnabled": true
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:c43a7fa7475db83011cc08b728982511fc0279a259e1aacc8ddde9e15f947725
          createdAt: "2025-06-10T15:47:27Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: eda-connect-k8s
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["connectnetworkattachmentstatuses.connect.eda.nokia.com",
            connectnetworkdefinitions.connect.eda.nokia.com]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConnectNetworkAttachmentStatus is the Schema for the connectnetworkattachmentstatuses
              API
            displayName: Connect NetworkAttachment Status
            kind: ConnectNetworkAttachmentStatus
            name: connectnetworkattachmentstatuses.connect.eda.nokia.com
            version: v1
          - description: ConnectNetworkDefinition is the Schema for the connectnetworkdefinitions
              API
            displayName: Connect Network Definition
            kind: ConnectNetworkDefinition
            name: connectnetworkdefinitions.connect.eda.nokia.com
            version: v1
          - description: ConnectControllerConfig is the Schema for the connectcontrollerconfigs
              API
            displayName: Connect Controller Config
            kind: ConnectControllerConfig
            name: connectcontrollerconfigs.config.eda.nokia.com
            version: v1
        description: "K8s operator to deploy eda connect controller to configure EDA
          Connect.\eb"
        displayName: eda-openshift-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - EDA Connect
        - K8s Controller
        - EDA K8s Controller Operator
        links:
        - name: EDA Connect K8s Controller Operator
          url: https://docs.eda.dev/connect/openshift-plugin/
        maintainers:
        - email: support@nokia.com
          name: nokia
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Nokia
          url: https://docs.eda.dev
        relatedImages:
        - ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:c43a7fa7475db83011cc08b728982511fc0279a259e1aacc8ddde9e15f947725
        - registry.connect.redhat.com/nokia-ni/eda-openshift-operator@sha256:a5645cb55c3e6c22655c6c8606b9bd51a49db44aecc3fe52e0eb80cca83d17c4
        version: 4.0.0
      entries:
      - name: eda-openshift-operator.v4.0.0
        version: 4.0.0
      name: alpha
    - currentCSV: eda-openshift-operator.v5.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "config.eda.nokia.com/v1",
                "kind": "ConnectControllerConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "operator"
                  },
                  "name": "connectcontrollerconfig-sample",
                  "namespace": "eda-connect-k8s"
                },
                "spec": {
                  "connectPluginName": "",
                  "controllerImagePullSecret": "",
                  "edaNamespace": "eda",
                  "heartBeat": "",
                  "logLevel": "",
                  "skipTLSVerify": false,
                  "tlsCertificateData": "",
                  "tlsEnabled": true
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:1a025d30e46cebaf804494dbb6d5140cb0e2fe6c83203177c4829bf0bcd94273
          createdAt: "2025-06-10T15:47:27Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: eda-connect-k8s
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["connectnetworkattachmentstatuses.connect.eda.nokia.com",
            connectnetworkdefinitions.connect.eda.nokia.com]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConnectNetworkAttachmentStatus is the Schema for the connectnetworkattachmentstatuses
              API
            displayName: Connect NetworkAttachment Status
            kind: ConnectNetworkAttachmentStatus
            name: connectnetworkattachmentstatuses.connect.eda.nokia.com
            version: v1
          - description: ConnectNetworkDefinition is the Schema for the connectnetworkdefinitions
              API
            displayName: Connect Network Definition
            kind: ConnectNetworkDefinition
            name: connectnetworkdefinitions.connect.eda.nokia.com
            version: v1
          - description: ConnectControllerConfig is the Schema for the connectcontrollerconfigs
              API
            displayName: Connect Controller Config
            kind: ConnectControllerConfig
            name: connectcontrollerconfigs.config.eda.nokia.com
            version: v1
        description: "K8s operator to deploy eda connect controller to configure EDA
          Connect.\eb"
        displayName: eda-openshift-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - EDA Connect
        - K8s Controller
        - EDA K8s Controller Operator
        links:
        - name: EDA Connect K8s Controller Operator
          url: https://docs.eda.dev/connect/openshift-plugin/
        maintainers:
        - email: support@nokia.com
          name: nokia
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Nokia
          url: https://docs.eda.dev
        relatedImages:
        - ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:1a025d30e46cebaf804494dbb6d5140cb0e2fe6c83203177c4829bf0bcd94273
        - registry.connect.redhat.com/nokia-ni/eda-openshift-operator@sha256:993f64a35cba84eafe2bc365e09770048f611a4e74cc2a4bb143de7675ed3880
        version: 5.0.0
      entries:
      - name: eda-openshift-operator.v5.0.0
        version: 5.0.0
      name: stable
    defaultChannel: alpha
    packageName: eda-k8s-operator
    provider:
      name: Nokia
      url: https://docs.eda.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: kubeturbo-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubeturbo-operator.v8.18.40-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5-beta.1 <8.18.40-beta.1'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBM Turbonomic software automates and simultaneously optimizes
              performance, compliance, and cost in real time. Turbonomic discovers
              and automates resource optimization for the complete application stack.
              Applications are continually resourced to perform while satisfying technical
              and business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
          - kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Optimization for Kubernetes
          IBM Turbonomic software automates and simultaneously optimizes performance, compliance, and cost in real time.
          Turbonomic discovers and automates resource optimization for the complete application stack. Applications are continually resourced to perform while satisfying technical and business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (proactive rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          Turbonomic assures application performance by giving workloads the resources they need when they need them.

          ### How Does It Work?
          Turbonomic uses a client agent called — KubeTurbo — that runs in your cluster to discover, monitor and optimize resource usage within your environment.
          KubeTurbo runs together with the default Kubernetes scheduler and sends data back to the Turbonomic for analysis.
          Turbonomic determines the right actions that drive continuous health for your workloads and your cluster.

          Turbonomic discovers Red Hat OpenShift Virtualization resources through a new or existing target configuration with Red Hat OpenShift. For more information refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=targets-red-hat-openshift-virtualization)

          ### Get Started
          Please follow the [Kubeturbo Documentation Page](https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets) for all deployment options and an overview of typical use cases.

          ### Known Issues
          For known issues refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=notes-known-issues)
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Kubeturbo Documentation Page
          url: https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets
        - name: Kubeturbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
        - name: IBM Turbonomic Application Resource Management
          url: https://www.ibm.com/products/turbonomic
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/kubeturbo-operator@sha256:177745cccc3d52fe82340174f39be9ab39118f661baa0b79e8719f951b13f1fe
        - registry.connect.redhat.com/turbonomic/kubeturbo-operator-bundle@sha256:69e62d414a3fa27a0c06c92b425bdbc4034d9157953668a11be1a4f150a4e9bb
        version: 8.18.40-beta.1
      entries:
      - name: kubeturbo-operator.v8.18.40-beta.1
        version: 8.18.40-beta.1
      name: beta
    - currentCSV: kubeturbo-operator.v8.18.30
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5 <8.18.30'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBM Turbonomic software automates and simultaneously optimizes
              performance, compliance, and cost in real time. Turbonomic discovers
              and automates resource optimization for the complete application stack.
              Applications are continually resourced to perform while satisfying technical
              and business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
          - kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Optimization for Kubernetes
          IBM Turbonomic software automates and simultaneously optimizes performance, compliance, and cost in real time.
          Turbonomic discovers and automates resource optimization for the complete application stack. Applications are continually resourced to perform while satisfying technical and business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (proactive rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          Turbonomic assures application performance by giving workloads the resources they need when they need them.

          ### How Does It Work?
          Turbonomic uses a client agent called — KubeTurbo — that runs in your cluster to discover, monitor and optimize resource usage within your environment.
          KubeTurbo runs together with the default Kubernetes scheduler and sends data back to the Turbonomic for analysis.
          Turbonomic determines the right actions that drive continuous health for your workloads and your cluster.

          Turbonomic discovers Red Hat OpenShift Virtualization resources through a new or existing target configuration with Red Hat OpenShift. For more information refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=targets-red-hat-openshift-virtualization)

          ### Get Started
          Please follow the [Kubeturbo Documentation Page](https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets) for all deployment options and an overview of typical use cases.

          ### Known Issues
          For known issues refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=notes-known-issues)
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Kubeturbo Documentation Page
          url: https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets
        - name: Kubeturbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
        - name: IBM Turbonomic Application Resource Management
          url: https://www.ibm.com/products/turbonomic
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/kubeturbo-operator@sha256:17f2ee1a241c5d84e66d47febf409f08868b6e372b2ba6b420e30f759a94487b
        - registry.connect.redhat.com/turbonomic/kubeturbo-operator-bundle@sha256:337da31b04c4739571e5bd7c4f5bc89c82cb3c2d74341b456f65c5435a24b647
        version: 8.18.30
      entries:
      - name: kubeturbo-operator.v8.18.30
        version: 8.18.30
      name: stable
    defaultChannel: stable
    packageName: kubeturbo-certified
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CrowdStrike
      provider-url: https://crowdStrike.com
    name: falcon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: falcon-operator.v1.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconAdmission",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcon-admission",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falconadmission",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-kac"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "admission_controller"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconContainer",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcon-sidecar-sensor",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falconcontainer",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-container-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "sidecar"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconDeployment",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcondeployment-sample",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falcon-deployment",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-deployment"
                },
                "spec": {
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconImageAnalyzer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "falcon-operator",
                    "app.kubernetes.io/instance": "falconimageanalyzer-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "falconimageanalyzer",
                    "app.kubernetes.io/part-of": "falcon-operator"
                  },
                  "name": "falcon-image-analyzer"
                },
                "spec": {
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconNodeSensor",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcon-node-sensor",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falconnodesensor",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-node-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "daemonset"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security,Monitoring
          containerImage: registry.connect.redhat.com/crowdstrike/falcon-operator@sha256:a31709f0e35564badc0123095952f957d0d639ced1fe000610008222e4d45725
          createdAt: "2025-11-18T23:39:10Z"
          description: Falcon Operator installs CrowdStrike Falcon Sensors on the
            cluster
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: falcon-operator
          operators.openshift.io/valid-subscription: Not required to use this operator
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: registry.connect.redhat.com/crowdstrike/falcon-operator
          support: CrowdStrike
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FalconAdmission is the Schema for the falconadmissions API
            displayName: Falcon Admission
            kind: FalconAdmission
            name: falconadmissions.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconContainer is the Schema for the falconcontainers API
            displayName: Falcon Container
            kind: FalconContainer
            name: falconcontainers.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconDeployment is the Schema for the falcondeployments
              API
            displayName: Falcon Deployment
            kind: FalconDeployment
            name: falcondeployments.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconImageAnalyzer is the Schema for the falconImageAnalyzers
              API
            displayName: Falcon Image Analyzer
            kind: FalconImageAnalyzer
            name: falconimageanalyzers.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconNodeSensor is the Schema for the falconnodesensors
              API
            displayName: Falcon Node Sensor
            kind: FalconNodeSensor
            name: falconnodesensors.falcon.crowdstrike.com
            version: v1alpha1
        description: |-
          The CrowdStrike Falcon Operator installs CrowdStrike Falcon custom resources on a Kubernetes cluster.

          ## About the CrowdStrike Falcon Operator
          The CrowdStrike Falcon Operator deploys CrowdStrike Falcon to the cluster. The operator exposes custom resources that allow you to protect your Kubernetes clusters when deployed.

          ## About Custom Resources

          | Custom Resource                                       | Description                                                      |
          | :--                                             | :--                                                    |
          | [FalconAdmission](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/admission/README.md) | Manages installation of Falcon Admission Controller on the cluster |
          | [FalconImageAnalyzer](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/imageanalyzer/README.md) | Manages installation of Falcon Image Assessment at Runtime on the cluster |
          | [FalconContainer](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/container/README.md) | Manages installation of Falcon Container Sensor on the cluster   |
          | [FalconNodeSensor](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/node/README.md)     | Manages installation of Falcon Linux Sensor on the cluster nodes |
          | [FalconDeployment](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/falcondeployment/README.md)       | Deploys FalconAdmission, FalconImageAnalyzer, FalconContainer, and FalconNodeSensor CRs from a single manifest |

          ## Installation and Deployment

          For installation and deployment of the CrowdStrike Falcon Operator and its Custom Resources, please read the [Installation and Deployment Guide](./docs/install_guide.md) and choose the deployment method that is right for your target environment.

          ## Getting Help
          If you encounter any issues while using the Falcon Operator, you can create an issue on our [Github repo](https://github.com/CrowdStrike/falcon-operator) for bugs, enhancements, or other requests.

          ## Contributing
          You can contribute by:

          * Raising any issues you find using Falcon Operator
          * Fixing issues by opening [Pull Requests](https://github.com/CrowdStrike/falcon-operator/pulls)
          * Improving documentation
          * Talking about the CrowdStrike Falcon Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/CrowdStrike/falcon-operator/issues).

          ## Additional Resources
           - CrowdStrike Container Security: [Product Page](https://www.crowdstrike.com/products/cloud-security/falcon-cloud-workload-protection/container-security/)
           - So You Think Your Containers Are Secure? Four Steps to Ensure a Secure Container Deployment: [Blog Post](https://www.crowdstrike.com/blog/four-steps-to-ensure-a-secure-containter-deployment/)
           - Container Security With CrowdStrike: [Blog Post](https://www.crowdstrike.com/blog/tech-center/container-security/)
           - To learn more about Falcon Container Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/support/documentation/146/falcon-container-sensor-for-linux), [Release Notes](https://falcon.crowdstrike.com/support/news/release-notes-falcon-container-sensor-for-linux)
           - To learn more about Falcon Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/documentation/20/falcon-sensor-for-linux#kubernetes-support)
           - [Developer Documentation](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/developer_guide.md)
        displayName: CrowdStrike Falcon Platform - Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - runtime-protection
        links:
        - name: Falcon Operator
          url: https://github.com/CrowdStrike/falcon-operator
        maintainers:
        - email: integrations@crowdstrike.com
          name: CrowdStrike Solutions Architecture
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: CrowdStrike
          url: https://crowdStrike.com
        relatedImages:
        - registry.connect.redhat.com/crowdstrike/falcon-operator-bundle@sha256:abb34bed5bfc9472c0d9cacb52a7dc5b95cf4081a4667f28ae47b36b07bc0cf8
        - registry.connect.redhat.com/crowdstrike/falcon-operator@sha256:a31709f0e35564badc0123095952f957d0d639ced1fe000610008222e4d45725
        - registry.crowdstrike.com/falcon-container/us-1/release/falcon-sensor@sha256:b9b27660c5924fe99666f638540da51e682c1ad1af0c982f1f8af7b6de1bda20
        - registry.crowdstrike.com/falcon-imageanalyzer/us-1/release/falcon-imageanalyzer@sha256:cd6294a2b62d3b57d18f0528c3b0eda669afd5f393b2bbc582665223329ad8cc
        - registry.crowdstrike.com/falcon-kac/us-1/release/falcon-kac@sha256:14b3a07db24aac43d7397aa1428a8551a15984eba26e79655d66d7a4473cb4a0
        - registry.crowdstrike.com/falcon-sensor/release/falcon-sensor@sha256:b3b575772b6e9ca4dc3cfadac0d3e5c8d752adb3687553d0e52f72eee3229074
        version: 1.9.0
      entries:
      - name: falcon-operator.v1.9.0
        version: 1.9.0
      - name: falcon-operator.v1.8.0
        version: 1.8.0
      - name: falcon-operator.v1.7.0
        version: 1.7.0
      - name: falcon-operator.v1.6.0
        version: 1.6.0
      - name: falcon-operator.v1.5.0
        version: 1.5.0
      - name: falcon-operator.v1.4.0
        version: 1.4.0
      - name: falcon-operator.v1.3.1
        version: 1.3.1
      - name: falcon-operator.v1.3.0
        version: 1.3.0
      - name: falcon-operator.v1.2.0
        version: 1.2.0
      - name: falcon-operator.v1.1.0
        version: 1.1.0
      - name: falcon-operator.v1.0.1
        version: 1.0.1
      - name: falcon-operator.v1.0.0
        version: 1.0.0
      name: certified-1.0
    defaultChannel: certified-1.0
    packageName: falcon-operator
    provider:
      name: CrowdStrike
      url: https://crowdStrike.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sagemaker-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sagemaker-controller.v1.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "App",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "DataQualityJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "Domain",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "Endpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "EndpointConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "FeatureGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "HyperParameterTuningJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "Model",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelBiasJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelExplainabilityJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelPackage",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelPackageGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelQualityJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "MonitoringSchedule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "NotebookInstance",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "NotebookInstanceLifecycleConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ProcessingJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "TrainingJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "TransformJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "UserProfile",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sagemaker-controller:1.7.0
          createdAt: "2025-12-19T22:59:29Z"
          description: ACK service controller for Amazon SageMaker manages SageMaker
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: App represents the state of an AWS sagemaker App resource.
            displayName: App
            kind: App
            name: apps.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: DataQualityJobDefinition represents the state of an AWS sagemaker
              DataQualityJobDefinition resource.
            displayName: DataQualityJobDefinition
            kind: DataQualityJobDefinition
            name: dataqualityjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Domain represents the state of an AWS sagemaker Domain resource.
            displayName: Domain
            kind: Domain
            name: domains.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: EndpointConfig represents the state of an AWS sagemaker EndpointConfig
              resource.
            displayName: EndpointConfig
            kind: EndpointConfig
            name: endpointconfigs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Endpoint represents the state of an AWS sagemaker Endpoint
              resource.
            displayName: Endpoint
            kind: Endpoint
            name: endpoints.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: FeatureGroup represents the state of an AWS sagemaker FeatureGroup
              resource.
            displayName: FeatureGroup
            kind: FeatureGroup
            name: featuregroups.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: HyperParameterTuningJob represents the state of an AWS sagemaker
              HyperParameterTuningJob resource.
            displayName: HyperParameterTuningJob
            kind: HyperParameterTuningJob
            name: hyperparametertuningjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: InferenceComponent represents the state of an AWS sagemaker
              InferenceComponent resource.
            displayName: InferenceComponent
            kind: InferenceComponent
            name: inferencecomponents.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: LabelingJob represents the state of an AWS sagemaker LabelingJob
              resource.
            displayName: LabelingJob
            kind: LabelingJob
            name: labelingjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelBiasJobDefinition represents the state of an AWS sagemaker
              ModelBiasJobDefinition resource.
            displayName: ModelBiasJobDefinition
            kind: ModelBiasJobDefinition
            name: modelbiasjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelExplainabilityJobDefinition represents the state of
              an AWS sagemaker ModelExplainabilityJobDefinition resource.
            displayName: ModelExplainabilityJobDefinition
            kind: ModelExplainabilityJobDefinition
            name: modelexplainabilityjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelPackageGroup represents the state of an AWS sagemaker
              ModelPackageGroup resource.
            displayName: ModelPackageGroup
            kind: ModelPackageGroup
            name: modelpackagegroups.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelPackage represents the state of an AWS sagemaker ModelPackage
              resource.
            displayName: ModelPackage
            kind: ModelPackage
            name: modelpackages.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelQualityJobDefinition represents the state of an AWS
              sagemaker ModelQualityJobDefinition resource.
            displayName: ModelQualityJobDefinition
            kind: ModelQualityJobDefinition
            name: modelqualityjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Model represents the state of an AWS sagemaker Model resource.
            displayName: Model
            kind: Model
            name: models.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: MonitoringSchedule represents the state of an AWS sagemaker
              MonitoringSchedule resource.
            displayName: MonitoringSchedule
            kind: MonitoringSchedule
            name: monitoringschedules.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: NotebookInstanceLifecycleConfig represents the state of an
              AWS sagemaker NotebookInstanceLifecycleConfig resource.
            displayName: NotebookInstanceLifecycleConfig
            kind: NotebookInstanceLifecycleConfig
            name: notebookinstancelifecycleconfigs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: NotebookInstance represents the state of an AWS sagemaker
              NotebookInstance resource.
            displayName: NotebookInstance
            kind: NotebookInstance
            name: notebookinstances.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: PipelineExecution represents the state of an AWS sagemaker
              PipelineExecution resource.
            displayName: PipelineExecution
            kind: PipelineExecution
            name: pipelineexecutions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Pipeline represents the state of an AWS sagemaker Pipeline
              resource.
            displayName: Pipeline
            kind: Pipeline
            name: pipelines.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ProcessingJob represents the state of an AWS sagemaker ProcessingJob
              resource.
            displayName: ProcessingJob
            kind: ProcessingJob
            name: processingjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Project represents the state of an AWS sagemaker Project
              resource.
            displayName: Project
            kind: Project
            name: projects.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Space represents the state of an AWS sagemaker Space resource.
            displayName: Space
            kind: Space
            name: spaces.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: TrainingJob represents the state of an AWS sagemaker TrainingJob
              resource.
            displayName: TrainingJob
            kind: TrainingJob
            name: trainingjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: TransformJob represents the state of an AWS sagemaker TransformJob
              resource.
            displayName: TransformJob
            kind: TransformJob
            name: transformjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: UserProfile represents the state of an AWS sagemaker UserProfile
              resource.
            displayName: UserProfile
            kind: UserProfile
            name: userprofiles.sagemaker.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon SageMaker resources in AWS from within your Kubernetes cluster.

          **About Amazon SageMaker**

          Amazon SageMaker helps data scientists and developers to prepare, build, train, and deploy high-quality machine learning (ML) models quickly by bringing together a broad set of capabilities purpose-built for ML.

          For more information on Amazon SageMaker, visit the [product page](https://aws.amazon.com/sagemaker/).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SageMaker
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sagemaker
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SageMaker Developer Resources
          url: https://aws.amazon.com/sagemaker/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: sagemaker maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sagemaker-controller:1.7.0
        - quay.io/community-operator-pipeline-prod/ack-sagemaker-controller@sha256:535345530777b2e692e264fb1d1c4e2a07c6c4e4c00a8bbe74a2e08a891e7fd7
        version: 1.7.0
      entries:
      - name: ack-sagemaker-controller.v1.7.0
        version: 1.7.0
      - name: ack-sagemaker-controller.v1.6.0
        version: 1.6.0
      - name: ack-sagemaker-controller.v1.5.1
        version: 1.5.1
      - name: ack-sagemaker-controller.v1.5.0
        version: 1.5.0
      - name: ack-sagemaker-controller.v1.4.1
        version: 1.4.1
      - name: ack-sagemaker-controller.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-sagemaker-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-prometheusservice-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-prometheusservice-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "prometheusservice.services.k8s.aws/v1alpha1",
                "kind": "RuleGroupsNamespace",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "prometheusservice.services.k8s.aws/v1alpha1",
                "kind": "Workspace",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/prometheusservice-controller:1.4.0
          createdAt: "2025-11-29T03:54:10Z"
          description: AWS Prometheus controller is a service controller for managing
            Prometheus resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertManagerDefinition represents the state of an AWS prometheusservice
              AlertManagerDefinition resource.
            displayName: AlertManagerDefinition
            kind: AlertManagerDefinition
            name: alertmanagerdefinitions.prometheusservice.services.k8s.aws
            version: v1alpha1
          - description: LoggingConfiguration represents the state of an AWS prometheusservice
              LoggingConfiguration resource.
            displayName: LoggingConfiguration
            kind: LoggingConfiguration
            name: loggingconfigurations.prometheusservice.services.k8s.aws
            version: v1alpha1
          - description: RuleGroupsNamespace represents the state of an AWS prometheusservice
              RuleGroupsNamespace resource.
            displayName: RuleGroupsNamespace
            kind: RuleGroupsNamespace
            name: rulegroupsnamespaces.prometheusservice.services.k8s.aws
            version: v1alpha1
          - description: Workspace represents the state of an AWS prometheusservice
              Workspace resource.
            displayName: Workspace
            kind: Workspace
            name: workspaces.prometheusservice.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Prometheus resources in AWS from within your Kubernetes cluster.

          **About Amazon Managed Service for Prometheus**

          Amazon Managed Service for Prometheus is a serverless, Prometheus-compatible monitoring service for container metrics that makes it easier to securely monitor container environments at scale. With Amazon Managed Service for Prometheus, you can use the same open-source Prometheus data model and query language that you use today to monitor the performance of your containerized workloads, and also enjoy improved scalability, availability, and security without having to manage the underlying infrastructure.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Prometheus
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - prometheusservice
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Prometheus Developer Resources
          url: https://aws.amazon.com/prometheus/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: prometheus maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-prometheusservice-controller@sha256:44f63e161a9f7bb8df06dc31803f9b8b45bc2c9bf2a0d68957f03faace33732f
        - public.ecr.aws/aws-controllers-k8s/prometheusservice-controller:1.4.0
        version: 1.4.0
      entries:
      - name: ack-prometheusservice-controller.v1.4.0
        version: 1.4.0
      - name: ack-prometheusservice-controller.v1.3.2
        version: 1.3.2
      - name: ack-prometheusservice-controller.v1.3.1
        version: 1.3.1
      - name: ack-prometheusservice-controller.v1.3.0
        version: 1.3.0
      - name: ack-prometheusservice-controller.v1.2.27
        version: 1.2.27
      - name: ack-prometheusservice-controller.v1.2.26
        version: 1.2.26
      - name: ack-prometheusservice-controller.v1.2.24
        version: 1.2.24
      - name: ack-prometheusservice-controller.v1.2.23
        version: 1.2.23
      - name: ack-prometheusservice-controller.v1.2.22
        version: 1.2.22
      - name: ack-prometheusservice-controller.v1.2.20
        version: 1.2.20
      - name: ack-prometheusservice-controller.v1.2.19
        version: 1.2.19
      - name: ack-prometheusservice-controller.v1.2.17
        version: 1.2.17
      - name: ack-prometheusservice-controller.v1.2.16
        version: 1.2.16
      - name: ack-prometheusservice-controller.v1.2.15
        version: 1.2.15
      - name: ack-prometheusservice-controller.v1.2.14
        version: 1.2.14
      - name: ack-prometheusservice-controller.v1.2.13
        version: 1.2.13
      - name: ack-prometheusservice-controller.v1.2.12
        version: 1.2.12
      - name: ack-prometheusservice-controller.v1.2.11
        version: 1.2.11
      - name: ack-prometheusservice-controller.v1.2.10
        version: 1.2.10
      - name: ack-prometheusservice-controller.v1.2.9
        version: 1.2.9
      - name: ack-prometheusservice-controller.v1.2.6
        version: 1.2.6
      - name: ack-prometheusservice-controller.v1.2.5
        version: 1.2.5
      - name: ack-prometheusservice-controller.v1.2.4
        version: 1.2.4
      - name: ack-prometheusservice-controller.v1.2.3
        version: 1.2.3
      - name: ack-prometheusservice-controller.v1.2.2
        version: 1.2.2
      - name: ack-prometheusservice-controller.v1.2.1
        version: 1.2.1
      - name: ack-prometheusservice-controller.v1.2.0
        version: 1.2.0
      - name: ack-prometheusservice-controller.v1.1.0
        version: 1.1.0
      - name: ack-prometheusservice-controller.v1.0.0
        version: 1.0.0
      - name: ack-prometheusservice-controller.v0.1.3
        version: 0.1.3
      - name: ack-prometheusservice-controller.v0.1.2
        version: 0.1.2
      - name: ack-prometheusservice-controller.v0.1.1
        version: 0.1.1
      - name: ack-prometheusservice-controller.v0.1.0
        version: 0.1.0
      - name: ack-prometheusservice-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-prometheusservice-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Trustification
      provider-url: ""
    name: trustify-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trustify-operator.v0.1.0-alpha.9
      currentCSVDesc:
        annotations:
          alm-examples: |
            [{
              "apiVersion": "org.trustify/v1alpha1",
              "kind": "Trustify",
              "metadata": {
                "name": "myapp"
              },
              "spec": { }
            }]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          containerImage: ghcr.io/trustification/trustify-operator:v0.1.0-alpha.9
          createdAt: "2025-03-07T11:57:13+00:00"
          description: An Operator for installing and managing Trustify
          repository: https://github.com/trustification/trustify-operator
          support: https://github.com/trustification/trustify-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Trustify instance
            displayName: Trustify
            kind: Trustify
            name: trustifies.org.trustify
            version: v1alpha1
        description: |+
          Trustify is vendor-neutral, thought-leadering, mostly informational collection of resources devoted to making Software Supply Chains easier to create, manage, consume and ultimately... to trust!


          You can use Trustify for:

          - Store and Manage all the SBOM (Software Bill of Materials) files of your company.
          - Understand which are the Vulnerabilities that affect each of your SBOM files
          - Understand exactly which Packages are included/shipped within each SBOM

          Trustify is a project within the [Trustification community](https://trustification.io/).


          ### Install
          Once you have successfully installed the Operator, proceed to deploy components by creating the required CR.

          By default, the Operator installs the following components on a target cluster:

          * Server
          * UI

          ### Documentation
          Documentation can be found on our [website](https://trustification.io/).

          ### Getting help
          If you encounter any issues while using Trustify, you can create an issue on our [Github repo](https://github.com/trustification/trustify/issues), for bugs, enhancements or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find
          * Fixing issues by opening [Pull Requests](https://github.com/trustification/trustify/pulls)

        displayName: Trustify Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trust
        links:
        - name: Website
          url: https://trustification.io/
        - name: Github
          url: https://github.com/trustification/trustify
        maintainers:
        - email: trustification@googlegroups.com
          name: Trustification
        maturity: alpha
        minKubeVersion: 1.23.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        provider:
          name: Trustification
        relatedImages:
        - quay.io/community-operator-pipeline-prod/trustify-operator@sha256:49def1c9612621f90d2398cbe7385488c167cc8ccdcd951f098433eb42cb9ac5
        - ghcr.io/trustification/trustify-operator:v0.1.0-alpha.9
        version: 0.1.0-alpha.9
      entries:
      - name: trustify-operator.v0.1.0-alpha.9
        version: 0.1.0-alpha.9
      - name: trustify-operator.v0.1.0-alpha.8
        version: 0.1.0-alpha.8
      - name: trustify-operator.v0.1.0-alpha.7
        version: 0.1.0-alpha.7
      - name: trustify-operator.v0.1.0-alpha.6
        version: 0.1.0-alpha.6
      - name: trustify-operator.v0.1.0-alpha.5
        version: 0.1.0-alpha.5
      - name: trustify-operator.v0.1.0-alpha.4
        version: 0.1.0-alpha.4
      - name: trustify-operator.v0.1.0-alpha.3
        version: 0.1.0-alpha.3
      - name: trustify-operator.v0.1.0-alpha.2
        version: 0.1.0-alpha.2
      name: alpha
    defaultChannel: alpha
    packageName: trustify-operator
    provider:
      name: Trustification
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://www.redhat.com/
    name: analytics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: analytics-operator.v0.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyData",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalydata-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalydata",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalydata-sample"
                },
                "spec": {
                  "anomalyname": "etcd_object_namespaces",
                  "config": {
                    "max": 100,
                    "min": 60,
                    "query": "max(apiserver_storage_objects{resource=~\"namespaces\"}) by (resource)"
                  },
                  "method": "min_max",
                  "metricdata": {
                    "groupeddata": "{ \"resource\": \"namespaces\" }",
                    "latestvalue": 121,
                    "timestamp": 1695804362
                  }
                }
              },
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyEngine",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalyengine-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalyengine",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalyengine-sample"
                },
                "spec": {
                  "anomalyqueryconfiguration": "etcd_objects_all:\n  method: percentage_change\n  query: max(apiserver_storage_objects{resource!~\"certificatesigningrequests.certificates.k8s.io|installplans.operators.coreos.com|operators.operators.coreos.com|subscriptions.operators.coreos.com|anomalydata.observability-analytics.redhat.com|anomalyengines.observability-analytics.redhat.com\"}) by (resource)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: True\nfailed_pods:\n  method: min_max\n  query: count(kube_pod_status_phase{phase!~\"Succeeded|Pending|Running|Unknown\"}) by (phase, namespace)\n  min: 0\n  max: 10\n  have_multi_result_data: True\nworkload_memory_usage_bytes:\n  method: percentage_change\n  query: sum(container_memory_working_set_bytes{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nworkload_cpu_usage_cores:\n  method: percentage_change\n  query: sum(container_cpu_usage_seconds_total{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nrest_client_requests_total:\n  method: percentage_change\n  query: sum(rest_client_requests_total)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\n",
                  "cronjobconfig": {
                    "anomalyqueries": "etcd_objects_all,failed_pods,workload_memory_usage_bytes,workload_cpu_usage_cores,rest_client_requests_total",
                    "name": "osa-anomaly-detection",
                    "resource": {
                      "cpulimit": "256m",
                      "cpurequest": "128m",
                      "memorylimit": "512Mi",
                      "memoryrequest": "256Mi"
                    },
                    "schedule": "*/5 * * * *"
                  },
                  "namespace": "osa-anomaly-detection",
                  "serviceaccountrolebinding": {
                    "clusterrolename": "cluster-monitoring-view",
                    "name": "osa-in-cluster-thanos-querier"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
          createdAt: "2024-03-12T08:02:25Z"
          description: Deploys and Manages Observability Analytics Operator
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4-alpha
          repository: https://github.com/openshift/analytics-operator
          support: RedHat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnomalyData is the Schema for the anomalydata API
            displayName: Anomaly Data
            kind: AnomalyData
            name: anomalydata.observability-analytics.redhat.com
            version: v1alpha1
          - description: AnomalyEngine is the Schema for the anomalyengines API
            displayName: Anomaly Engine
            kind: AnomalyEngine
            name: anomalyengines.observability-analytics.redhat.com
            version: v1alpha1
        description: "### Introduction\nObservability Analytics for Red Hat OpenShift
          runs OpenShift analytics processes like anomaly detection.\n\n### API Backward
          Compatibility\n**NOTE:** Until the Operator supports **seamless upgrades**,
          a new version of the operator may introduce a change that is **NOT** backward-compatible
          with the previous version. Thus, to upgrade the operator, uninstall the
          already installed version completely (including CRDs) and install the new
          version.\n\n### Installtion Steps for the Anomaly Engine\n Create namespace
          if you would like to install this operator into separate namespace (You
          can utilize existing namespace as well). ```bash kubectl create ns <Namespace>
          ``` Install the Observability Analytics operator to specific `<Namespace>`,
          wait until you see the operator in the **Installed Operator** list. Click
          on the Operator name and go to Operator details.\n\nHere you should see
          a tab called **Anomaly Engine**. Click on it, and then click on the **Create
          AnomalyEngine** button, which will redirect you to a form where you need
          to provide the required inputs for the Anomaly Engine. Once successfully
          created, you should see a cronjob in the given namespace. This cronjob will
          identify anomalies and store them into **anomalydata**.\n\n### How to See
          Anomaly Data Captured by Anomaly Engine?\nWe are storing anomaly data into
          CR.\n ####Option 1:Through `kubectl`` command\nYou can check detected anomalies
          using the following command from your terminal. \n\n```bash\nkubectl get
          anomalydata -n <Namespace>\nkubectl describe anomalydata <NAME of the anomalydata>
          -n <Namespace> \n```\n #### Option 2: From Installed Operator UI Go to installed
          operator and select **Observability Analytics** operator, now go to **Anomaly
          Data** tab where you can able to see the detected anomaly, click on specific
          anomaly and you should be able to see details of the same. ### Documentation\nDocumentation
          around how to test Operator codebase as a developer can be found [here](https://github.com/openshift/analytics-operator#readme)\n\n###
          Contributing\nYou can contribute by:\n  * Raising [issues](https://github.com/openshift/analytics-operator/issues)\n
          \   related to observability-analytics-operator\n  * Fixing issues by opening
          [Pull Requests](https://github.com/openshift/analytics-operator/pulls)\n
          \ * Discussing observability-analytics-operator\n\n### License\nobservability-analytics-operator
          is licensed under the Apache 2.0 license.\n"
        displayName: Observability Analytics
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - observability-analytics-operator
        - analytics-operator
        - analytics
        - anomaly
        links:
        - name: Analytics Operator
          url: https://analytics-operator.domain
        maintainers:
        - email: rzalavad@redhat.com
          name: Raj
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/analytics-operator@sha256:6622e769acf5af500d901409575016013d97e88ff53f0b6db0c9f503e6928b8f
        version: 0.1.1
      entries:
      - name: analytics-operator.v0.1.1
        version: 0.1.1
      - name: analytics-operator.v0.1.0
        version: 0.1.0
      name: alpha
    - currentCSV: analytics-operator.v0.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyData",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalydata-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalydata",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalydata-sample"
                },
                "spec": {
                  "anomalyname": "etcd_object_namespaces",
                  "config": {
                    "max": 100,
                    "min": 60,
                    "query": "max(apiserver_storage_objects{resource=~\"namespaces\"}) by (resource)"
                  },
                  "method": "min_max",
                  "metricdata": {
                    "groupeddata": "{ \"resource\": \"namespaces\" }",
                    "latestvalue": 121,
                    "timestamp": 1695804362
                  }
                }
              },
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyEngine",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalyengine-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalyengine",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalyengine-sample"
                },
                "spec": {
                  "anomalyqueryconfiguration": "etcd_objects_all:\n  method: percentage_change\n  query: max(apiserver_storage_objects{resource!~\"certificatesigningrequests.certificates.k8s.io|installplans.operators.coreos.com|operators.operators.coreos.com|subscriptions.operators.coreos.com|anomalydata.observability-analytics.redhat.com|anomalyengines.observability-analytics.redhat.com\"}) by (resource)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: True\nfailed_pods:\n  method: min_max\n  query: count(kube_pod_status_phase{phase!~\"Succeeded|Pending|Running|Unknown\"}) by (phase, namespace)\n  min: 0\n  max: 10\n  have_multi_result_data: True\nworkload_memory_usage_bytes:\n  method: percentage_change\n  query: sum(container_memory_working_set_bytes{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nworkload_cpu_usage_cores:\n  method: percentage_change\n  query: sum(container_cpu_usage_seconds_total{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nrest_client_requests_total:\n  method: percentage_change\n  query: sum(rest_client_requests_total)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\n",
                  "cronjobconfig": {
                    "anomalyqueries": "etcd_objects_all,failed_pods,workload_memory_usage_bytes,workload_cpu_usage_cores,rest_client_requests_total",
                    "name": "osa-anomaly-detection",
                    "resource": {
                      "cpulimit": "256m",
                      "cpurequest": "128m",
                      "memorylimit": "512Mi",
                      "memoryrequest": "256Mi"
                    },
                    "schedule": "*/5 * * * *"
                  },
                  "namespace": "osa-anomaly-detection",
                  "serviceaccountrolebinding": {
                    "clusterrolename": "cluster-monitoring-view",
                    "name": "osa-in-cluster-thanos-querier"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
          createdAt: "2024-03-12T08:02:25Z"
          description: Deploys and Manages Observability Analytics Operator
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4-alpha
          repository: https://github.com/openshift/analytics-operator
          support: RedHat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnomalyData is the Schema for the anomalydata API
            displayName: Anomaly Data
            kind: AnomalyData
            name: anomalydata.observability-analytics.redhat.com
            version: v1alpha1
          - description: AnomalyEngine is the Schema for the anomalyengines API
            displayName: Anomaly Engine
            kind: AnomalyEngine
            name: anomalyengines.observability-analytics.redhat.com
            version: v1alpha1
        description: "### Introduction\nObservability Analytics for Red Hat OpenShift
          runs OpenShift analytics processes like anomaly detection.\n\n### API Backward
          Compatibility\n**NOTE:** Until the Operator supports **seamless upgrades**,
          a new version of the operator may introduce a change that is **NOT** backward-compatible
          with the previous version. Thus, to upgrade the operator, uninstall the
          already installed version completely (including CRDs) and install the new
          version.\n\n### Installtion Steps for the Anomaly Engine\n Create namespace
          if you would like to install this operator into separate namespace (You
          can utilize existing namespace as well). ```bash kubectl create ns <Namespace>
          ``` Install the Observability Analytics operator to specific `<Namespace>`,
          wait until you see the operator in the **Installed Operator** list. Click
          on the Operator name and go to Operator details.\n\nHere you should see
          a tab called **Anomaly Engine**. Click on it, and then click on the **Create
          AnomalyEngine** button, which will redirect you to a form where you need
          to provide the required inputs for the Anomaly Engine. Once successfully
          created, you should see a cronjob in the given namespace. This cronjob will
          identify anomalies and store them into **anomalydata**.\n\n### How to See
          Anomaly Data Captured by Anomaly Engine?\nWe are storing anomaly data into
          CR.\n ####Option 1:Through `kubectl`` command\nYou can check detected anomalies
          using the following command from your terminal. \n\n```bash\nkubectl get
          anomalydata -n <Namespace>\nkubectl describe anomalydata <NAME of the anomalydata>
          -n <Namespace> \n```\n #### Option 2: From Installed Operator UI Go to installed
          operator and select **Observability Analytics** operator, now go to **Anomaly
          Data** tab where you can able to see the detected anomaly, click on specific
          anomaly and you should be able to see details of the same. ### Documentation\nDocumentation
          around how to test Operator codebase as a developer can be found [here](https://github.com/openshift/analytics-operator#readme)\n\n###
          Contributing\nYou can contribute by:\n  * Raising [issues](https://github.com/openshift/analytics-operator/issues)\n
          \   related to observability-analytics-operator\n  * Fixing issues by opening
          [Pull Requests](https://github.com/openshift/analytics-operator/pulls)\n
          \ * Discussing observability-analytics-operator\n\n### License\nobservability-analytics-operator
          is licensed under the Apache 2.0 license.\n"
        displayName: Observability Analytics
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - observability-analytics-operator
        - analytics-operator
        - analytics
        - anomaly
        links:
        - name: Analytics Operator
          url: https://analytics-operator.domain
        maintainers:
        - email: rzalavad@redhat.com
          name: Raj
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/analytics-operator@sha256:6622e769acf5af500d901409575016013d97e88ff53f0b6db0c9f503e6928b8f
        - quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
        version: 0.1.1
      entries:
      - name: analytics-operator.v0.1.1
        version: 0.1.1
      - name: analytics-operator.v0.1.0
        version: 0.1.0
      name: dev-preview
    defaultChannel: alpha
    packageName: analytics-operator
    provider:
      name: Red Hat Inc.
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: operator-certification-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: operator-certification-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "certification.redhat.com/v1alpha1",
                "kind": "OperatorPipeline",
                "metadata": {
                  "name": "operatorpipeline-sample"
                },
                "spec": {
                  "applyCIPipeline": true,
                  "applyHostedPipeline": false,
                  "applyReleasePipeline": false,
                  "gitHubSecretName": "github-api-token",
                  "kubeconfigSecretName": "kubeconfig",
                  "operatorPipelinesRelease": "main",
                  "pyxisSecretName": "pyxis-api-secret"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-11-11T16:28:07Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.operatorframework.io.bundle.channel.default.v1: alpha
          operators.operatorframework.io.bundle.channels: alpha
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-openshift-ecosystem/operator-certification-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OperatorPipeline is the Schema for the operatorpipelines
              API
            displayName: Operator Pipeline
            kind: OperatorPipeline
            name: operatorpipelines.certification.redhat.com
            version: v1alpha1
        description: |-
          A Kubernetes operator to provision resources for the operator certification pipeline. This operator is installed in all namespaces which can support multi-tenant scenarios. **Note:** This operator should only be used by Red Hat partners attempting to certify their operator(s).


          **Requirements**


          The certification operator requires that you have the following tools installed, functional, and in your path.
          - [Install](https://docs.openshift.com/container-platform/4.8/cli_reference/openshift_cli/getting-started-cli.html#installing-openshift-cli) oc, the OpenShift CLI tool (tested with version 4.7.13)
          - [Install](https://tekton.dev/docs/cli/) tkn, the Tekton CLI tool (tested with version 0.19.1)
          - [Install](https://git-scm.com/downloads) git, the Git CLI tool (tested with 2.32.0)
          - The certification pipeline expects you to have the source files of your Operator bundle


          **Pre - Installation**


          The below steps exist for simplicity and to make the installation clearer. The operator watches all namespaces, so if secrets/configs/etc already exist in another namespace, feel free to use the existing namespace when following the operator installation steps.


          **Create a new namespace where the following secrets will be applied.**
          ```
          oc new-project oco
          ```


          **Add the kubeconfig secret which will be used to deploy the operator under test and run the certification checks.**
          * Open a terminal window
          * Set the `KUBECONFIG` environment variable
          ```
          export KUBECONFIG=/path/to/your/cluster/kubeconfig
          ```
          > *This kubeconfig will be used to deploy the Operator under test and run the certification checks.*
          ```
          oc create secret generic kubeconfig --from-file=kubeconfig=$KUBECONFIG
          ```


          **Configuring steps for submitting the results**
          - Add the github API token to the repo where the PR will be created
          ```
          oc create secret generic github-api-token --from-literal GITHUB_TOKEN=<github token>
          ```
          - Add RedHat Container API access key

            This API access key is specifically related to your unique partner account for Red Hat Connect portal. Instructions to obtain your API key can be found: [here](https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/operator-cert-workflow.md#step-b---get-api-key)
          ```
          oc create secret generic pyxis-api-secret --from-literal pyxis_api_key=< API KEY >
          ```

          - Optional pipeline configurations can be found [here](https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/ci-pipeline.md#optional-configuration)


          **Execute the Pipeline (Development Iterations)**


          A pre-requisite to running a pipeline is that a `workspace-template.yaml` exists in the directory you want to execute the `tkn` commands from.

          To create a workspace-template.yaml
          ```
          cat <<EOF > workspace-template.yaml
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 5Gi
          EOF
          ```

          There are multiple ways to execute the Pipeline which can be found [here](https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/ci-pipeline.md#execute-the-pipeline-development-iterations)
        displayName: Operator Certification Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - certification
        - pipeline
        - openshift
        links:
        - name: Operator Certification CI Pipeline
          url: https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/ci-pipeline.md
        - name: Red Hat OpenShift Pipelines
          url: https://github.com/openshift/tektoncd-operator
        maintainers:
        - email: certification-operator-devel@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.connect.redhat.com/opdev/operator-certification-operator-bundle@sha256:e1c26fed406ff8478dee6c67ba24a5db5320868b78bcc8aa98c124c74ff8fd8a
        - quay.io/opdev/operator-certification-operator@sha256:264a7cf00f3dc47a8e7ae602d720ca9b9df6807eb9f6574efeff8ef0427905b7
        version: 1.4.0
      entries:
      - name: operator-certification-operator.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: alpha
    packageName: operator-certification-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-kubernetes.v1.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "ClusterMongoDBRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-enterprise"
                  },
                  "name": "clustermongodbrole-sample"
                },
                "spec": {
                  "db": "admin",
                  "role": "rootMonitor",
                  "roles": [
                    {
                      "db": "admin",
                      "role": "root"
                    },
                    {
                      "db": "admin",
                      "role": "clusterMonitor"
                    }
                  ]
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "my-replica-set"
                },
                "spec": {
                  "credentials": "my-credentials",
                  "members": 3,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "sample-sharded-cluster"
                },
                "spec": {
                  "configServerCount": 3,
                  "credentials": "my-credentials",
                  "mongodsPerShardCount": 3,
                  "mongosCount": 2,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "shardCount": 1,
                  "type": "ShardedCluster",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBMultiCluster",
                "metadata": {
                  "name": "multi-replica-set"
                },
                "spec": {
                  "clusterSpecList": [
                    {
                      "clusterName": "e2e.cluster1.mongokubernetes.com",
                      "members": 2
                    },
                    {
                      "clusterName": "e2e.cluster2.mongokubernetes.com",
                      "members": 1
                    },
                    {
                      "clusterName": "e2e.cluster3.mongokubernetes.com",
                      "members": 2
                    }
                  ],
                  "credentials": "my-credentials",
                  "duplicateServiceObjects": false,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBOpsManager",
                "metadata": {
                  "name": "ops-manager"
                },
                "spec": {
                  "adminCredentials": "ops-manager-admin",
                  "applicationDatabase": {
                    "members": 3,
                    "podSpec": {
                      "cpu": 1
                    }
                  },
                  "configuration": {
                    "mms.fromEmailAddr": "admin@thecompany.com"
                  },
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "version": "6.0.3"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBUser",
                "metadata": {
                  "name": "my-replica-set-x509-user"
                },
                "spec": {
                  "db": "$external",
                  "mongodbResourceRef": {
                    "name": "my-replica-set"
                  },
                  "roles": [
                    {
                      "db": "admin",
                      "name": "dbOwner"
                    }
                  ],
                  "username": "CN=my-replica-set-x509-user,OU=cloud,O=MongoDB,L=New York,ST=New York,C=US"
                },
                "status": {
                  "phase": "Updated"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/mongodb/mongodb-kubernetes@sha256:22e4ae882cff477adc99cb74bc979cb112d9e0abf37509298a3839fea274ae75
          createdAt: "2025-12-15T08:51:46Z"
          description: The MongoDB Controllers for Kubernetes enable easy deploys
            of MongoDB into Kubernetes clusters, using our management, monitoring
            and backup platforms, Ops Manager and Cloud Manager.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.26.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/mongodb/mongodb-kubernetes
          support: support@mongodb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterMongoDBRole
            name: clustermongodbroles.mongodb.com
            version: v1
          - description: MongoDB Deployment
            displayName: MongoDB Deployment
            kind: MongoDB
            name: mongodb.mongodb.com
            version: v1
          - kind: MongoDBCommunity
            name: mongodbcommunity.mongodbcommunity.mongodb.com
            version: v1
          - description: MongoDB Multi Deployment
            displayName: MongoDB Multi Deployment
            kind: MongoDBMultiCluster
            name: mongodbmulticluster.mongodb.com
            version: v1
          - kind: MongoDBSearch
            name: mongodbsearch.mongodb.com
            version: v1
          - description: MongoDB x509 User
            displayName: MongoDB User
            kind: MongoDBUser
            name: mongodbusers.mongodb.com
            version: v1
          - description: MongoDB Ops Manager
            displayName: MongoDB Ops Manager
            kind: MongoDBOpsManager
            name: opsmanagers.mongodb.com
            version: v1
        description: |
          MongoDB Controllers for Kubernetes (MCK) is an open-source project. It represents a merge of the previous
          MongoDB Community Operator (MCO) and MongoDB Enterprise Kubernetes Operator (MEKO).

          This release brings MongoDB Community and Enterprise editions together under a single, unified operator,
          making it easier to manage, scale, and upgrade your deployments. While the first version simply brings
          the capabilities of both into a single Operator, future changes will build on this to more closely align
          how Community and Enterprise are managed in Kubernetes, to offer an even more seamless and streamlined experience.
          As an open-source project, it now allows for community contributions, helping drive quicker bug fixes and ongoing innovation.
          The MongoDB Controllers for Kubernetes enable easy deploys of MongoDB
          into Kubernetes clusters, using our management, monitoring and backup
          platforms, Ops Manager and Cloud Manager.

          ## Before You Start

          To start using the operator you''ll need an account in MongoDB Cloud Manager or
          a MongoDB Ops Manager deployment.

          * [Create a Secret with your OpsManager API key](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-operator-credentials/#procedure)

          * [Create a ConfigMap with your OpsManager project ID and URL](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-project-using-configmap/)

          By installing this integration, you will be able to deploy MongoDB instances
          with a single simple command.

          ## Required Parameters

          * `opsManager` or `cloudManager` - Enter the name of the ConfigMap containing project information
          * `credentials` - Enter the name of the Secret containing your OpsManager credentials
          * `type` - Enter MongoDB Deployment Types ("Standalone", "ReplicaSet", "ShardedCluster"

          ## Supported MongoDB Deployment Types ##

          * Standalone: An instance of mongod that is running as a single server and
          not as part of a replica set, this is, it does not do any kind of
          replication.

          * Replica Set: A replica set in MongoDB is a group of mongod processes that
          maintain the same data set. Replica sets provide redundancy and high
          availability, and are the basis for all production deployments. This section
          introduces replication in MongoDB as well as the components and architecture
          of replica sets. The section also provides tutorials for common tasks
          related to replica sets.

          * Sharded Cluster: The set of nodes comprising a sharded MongoDB deployment.
          A sharded cluster consists of config servers, shards, and one or more mongos
          routing processes. Sharding is a A database architecture that partitions
          data by key ranges and distributes the data among two or more database
          instances. Sharding enables horizontal scaling.

          ## Requirements for deploying MongoDB OpsManager

          * In order to deploy resources of type MongoDB OpsManager, you will need to
          create a secret containing the [credentials](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/plan-om-resource/#om-rsrc-prereqs)
          for the Global Owner user

          ## Security ##

          The operator can enable TLS for all traffic between servers and also between
          clients and servers. Before enabling `security.tls.enabled` to `true` you
          should create your certificates.  or you can leave the operator to create all
          the certificates for you. The operator ability to create certs is been
          deprecated due to Kubernetes API changes.

          For more information, please read the official MongoDB
          Kubernetes Operator  [docs](https://docs.mongodb.com/kubernetes-operator/stable/).
        displayName: MongoDB Controllers for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mongodb
        - databases
        - nosql
        links:
        - name: Documentation
          url: https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/index.html
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: stable
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/mongodb/mongodb-enterprise-server@sha256:1d418c65d82ccad205b7889be4ba161d3cbfa8b1fb75b21c8fcf02de38fad9ca
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8d7266b405ebb2dd24a9f7c12d3921024f547c3d8c01831e6bcfc1d551d63be1
        - quay.io/mongodb/mongodb-agent@sha256:c5f767543bf99063c9aa43b32e468212617146c3ca9257caf1f23b6db4bd66d4
        - quay.io/mongodb/mongodb-enterprise-server@sha256:11ab324698f919f84a5dab5a964d93fe63f98a48146bb3b86974cba7606d30ec
        - quay.io/mongodb/mongodb-enterprise-server@sha256:85c1d669c073caf9cbaac815e4c8ea2ca18b71deefa03bf84cd6d8b8ebd53e12
        - quay.io/mongodb/mongodb-enterprise-server@sha256:df6081325ea2fe01d1b27d0c70005dec8232aaf51a43d91661b722b8a1761263
        - quay.io/mongodb/mongodb-agent@sha256:f65388a48f65c894759bc9c2e7434e29e45d967d32ca5841b3ab8ff90c4a41a4
        - quay.io/mongodb/mongodb-kubernetes@sha256:22e4ae882cff477adc99cb74bc979cb112d9e0abf37509298a3839fea274ae75
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0fde236fe26d5b20210d6f246aadacd7845874712def516cbe2eec11d79d5181
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:e4f65fc4156cbbc32d18616d9f1cd353935758872f9d809eaf785d645aa637cf
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8d7e5361c2a1604dec3fc671d629806fe6ddc6df524b69a441b86933a4b30093
        - quay.io/mongodb/mongodb-enterprise-server@sha256:523566f44cbb6bbf0cd12b1adae939a883f2254c78dc4b8c9d0098581337b1db
        - quay.io/mongodb/mongodb-enterprise-server@sha256:19925e1297ab652db59c35f53e7b7c8b2b277f8ecdc4215682961aaf2b3e924e
        - quay.io/mongodb/mongodb-agent@sha256:1e93699e4157b5a78a7bca90d9243e586e13413855fbe2bf1e795bfc16c5fefd
        - quay.io/mongodb/mongodb-agent@sha256:8b3b301143c4f3bb25757896a930a10a9ba4852b109dbc5670eedd8ba011e61e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c48631742ad1fec8a9ee745fc3cc9ca1fe7d86ef7fa68ad8e8337c7a4566dc87
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3fe62f3ad52707ccf0e9993c69891e44c569a4b4e1a3244cf60e3b5fdde57bd2
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:ca4aad523f14d68fccb60256f9ce8909c66ebb5b321ee15e5abf9ac5738947f9
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:b7764c316eeacffd3f9ddae62d9fd2a74eb58484d2cfd5021e460095d604764f
        - quay.io/mongodb/mongodb-kubernetes-init-database@sha256:1d3167a886ea108407be1f3d7eaa89c9607ff26fd49badf343bed02d848b6e9c
        - quay.io/mongodb/mongodb-agent@sha256:e131c100978db4c7a0a7be335e9e153af594d77a2dae42bb16672857785a7ef3
        - quay.io/mongodb/mongodb-agent@sha256:adaa6f9364bad38c535fa9f28d7e9b364e19148add50784ae67bed7c289e0a5f
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:a4590af027182305913f0de1a2e37ad8612bd73b8b31f4df11068b80089021ff
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:f71b027fccf649f18f63f8df7a59b1bac421a2cdab6712e0c985a93c08ed970a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa8683500e8d3632c4588bbcdddb4e3186a01f48aefe1b6d95f8860dae8b6c76
        - quay.io/mongodb/mongodb-enterprise-server@sha256:b00ac773623e1bf422b47e6d783263d2d08737865abe9abbe106d86d1ea25165
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:d81eac2129b6ab8346be1749c56ea67f6da64d4ee0fb9f3ff4171ba0f61918eb
        - quay.io/mongodb/mongodb-agent@sha256:a8358ce465adf463d8e73916d7944765d7aaf2b0ed10bd3b8119a87fc9080667
        - quay.io/mongodb/mongodb-agent@sha256:fa30370a75e8e4ac648650ceb39a7a259a754aab8a48d7e2f2801cd1b777e91b
        - quay.io/mongodb/mongodb-enterprise-server@sha256:15e31285c8949a4666f7702df53416b0905d76945a28575a6028a876cc8a6f0f
        - quay.io/mongodb/mongodb-agent@sha256:633ca84d79d393f926d102dd27233df79765e0af69f5dde53288d3fdb10c0304
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:1076466ae62fc41d751b266bbc672619195b523c42118af40c1e6382ea102897
        - quay.io/mongodb/mongodb-enterprise-server@sha256:e7aeedb752dda77cf0e49df3430843b5a2bba64c8404628a983f46640d316808
        - quay.io/mongodb/mongodb-enterprise-server@sha256:37af0913742b6de339c7e664b30f35dcef04506529e4a09a9bbbdd57643f7149
        - quay.io/mongodb/mongodb-enterprise-server@sha256:5c8553e5ba115657fb878c0fe08704af9fd5decec572a87d89d2c8c156ffc9f9
        - quay.io/mongodb/mongodb-agent@sha256:793ae31c0d328fb3df1d3aa526f94e466cc2ed3410dd865548ce38fa3859cbaa
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7885ab6e88214f9289d8babf5189136dde0dd4c84a15a5481ccd3ef512b2e66f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:9bef77e905dadd1e61d0439dd53b21ed1f3606e49affd9ffc4ba8156578e8f0f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d21c65780cadc9d8668d2c28935d492625d6993f13ba562722200a819281cbcc
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f1e72679b2468aed2f3c3106568327911e6594c9ee15f7348e953eaa0d8fd44a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:454b1585c342375dea643b10ead688d0f62347841f5f30059fcd4f92e3297ee9
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:960e10cf184213397b078038879e8a36aec54dc5de928afc459e0fc833ebb94d
        - quay.io/mongodb/mongodb-enterprise-server@sha256:655896bac9e82de8e9729d59a36c3a31f66235f22b93449260a2ccb7709de084
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:5d299820bb903f0cdfdf2626a3c44099d2eaee16188cd8234d2ff3a57259b3a7
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:76500f012df908d247835696a65462b39880b31128f6916e852442b41de26af9
        - quay.io/mongodb/mongodb-enterprise-server@sha256:778f9e29e36d6687cd17dd95ec1f8127d2a732bde1a2dd5821212eb55c1c998a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3add8b68bfbaa42596fe5dbbee4623ba5ff1a826b18bb71301525adf574dcb94
        - quay.io/mongodb/mongodb-enterprise-server@sha256:5145c97d2281aabcd8538ff515c3833aa48acb66b0b739fb1881120c1985d88a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:dfd4277f0c16ed476ac7de51894739e8c8d13a65ea5024b9a97b3dce0f6c6975
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c752a7f0726d21d55f204a359b85fa29cd727a5fe571b37289ae3ea52d6206b0
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:146c4f5dc443f94f54d72808b4e4df93bb904e23589b222d17700166780776b4
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:5e3982493e85ac1e40536758c3145b7c2fff9a7b4be9d053ee41201363a89920
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8445d59d491a6d3890ea9c8b421214bcd0fdcfbc420ed40497a790b79f0bc89e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:fb8397cbcdbf7c33f6ad142492792771127f0d9a8c46388f350b6927405ee590
        - quay.io/mongodb/mongodb-agent@sha256:fc7660f019142dee4e2ec893bd3e1c94759f77264aea1e24d850d9c5489be307
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d323c1bcd14118cc537ac282996ea5a58756d20b6b73f1eec0efa8710d246077
        - quay.io/mongodb/mongodb-enterprise-server@sha256:720056b985c1a16d48b2aecb7a88a15cba3d8186e55b3c6c24729699a85c8232
        - quay.io/mongodb/mongodb-enterprise-server@sha256:67238129df09d33ee4746ff1acb5515d699a29d9f42350eae3f3f69ccb7fbf54
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:85b4e954c9c4bbe1019774bad1e05e9c8dc175648b01d3badf0b64143f182019
        - quay.io/mongodb/mongodb-agent@sha256:1c56e367eff4bd2106dbc3ced496d3fc084d265e4f375a5c91f73d485611daf5
        - quay.io/mongodb/mongodb-enterprise-server@sha256:9a3a6496be0d2d446e6d654eb56386c7726e0cd2d7232f6dcec579923edf0014
        - quay.io/mongodb/mongodb-enterprise-server@sha256:172e338a43df01ee5408d8d1e3cb038d2c55e77761c1a2ac6ed37959d1525140
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:6c475c3180bcfa1d1cdbd41c4aaca4d0eca82404fa1e35547c57c971fa3fe25c
        - quay.io/mongodb/mongodb-enterprise-server@sha256:33a30d11969eb21952681108092fe7f916e25c8e1de43e6a4e40e126025a2bec
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7a93a0276531ff9be4c90bb8fe8d104e0a9e930c29792aafe03cc6a76a9fa89c
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:702f529cb9d8d9042e54263f8bc37b40c062ac2695efc3e7150819779886e323
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:439d6fefb469613432e2d05149dfc96c32b16469d743835d5f402a2ada8be8cc
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:33bbd29b74f95baad522b380d70bcc9f933a3fee57642c37b09376c86179c40f
        - quay.io/mongodb/mongodb-kubernetes-database@sha256:34bca0371c641a44249cc1aa5edb7640a640717ea4cbe6ae392945583178f184
        - quay.io/mongodb/mongodb-agent@sha256:b422829aac63f068aed4a6948fd14cbd3c3bfad6d47ab76523f6839bf20b0203
        - quay.io/mongodb/mongodb-enterprise-server@sha256:a48a4d5c275fd669a27469649fb39ea38c728dbcf9f0a9da4e7cf27a2ce912ed
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:78f11c9cd5e63f2b0e10c67dc1491f4ce1279fa90178c108814725414defab9a
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:fa4aa97767bd19cf3711a74bf21ecb9cbbc25fed6b6b09a2eb241ebd3fbc8f3a
        - quay.io/mongodb/mongodb-kubernetes-init-appdb@sha256:8fd9a9d0ea8e086208a8fe1adae8a37a8d6bdc424e0260b8fb73f1a4a064675c
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:adeab0dc766a27138db7df5f37cbb1da860c14179ef631b2e001e5bb875325e4
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:3bbd3d7fd45d107621e7770f2b4c2a758e148cd472e0ee21719442f71bf6ade0
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:b9ab7147b59b62e40a69c6400f87d0c7faecfa5462bed6e68ca653b00e50b887
        - quay.io/mongodb/mongodb-agent@sha256:f2d1728df506f2a6e8daea0d6b5e12f0c142a11602e274872ac5a4dc0175e135
        - quay.io/mongodb/mongodb-enterprise-server@sha256:a86c4d8a0b9ca3c20cc524809676eb03a944ada43378ec98c107cd72cc64700f
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:09788976bdc1327acbf18cedf8efd5fca2159e43b506faa40e03ee42ad94928a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa300abf739e26350a258f643fa8e57aedacd041055c7b923bd22b21ef554cdb
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f2d9a3264a8814f33143b73c56624572fb80afeab184133d3a901713a31c1a87
        - quay.io/mongodb/mongodb-agent@sha256:62323b0ef76858002abc1ec3fba29f28ff2b914e1050ddac1cb933ba0624b29e
        - quay.io/mongodb/mongodb-agent@sha256:8d88da240cad77b0092849d344cf64e1fedfcc320299158c4310833572ac4a6f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3316015ac0699d66ac73f714e5dc0784738654e0349e80b1e1f4e953b3c88964
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:b8aa1edbc5fb02af312a863bc7db8535a282dfd692a07b1e321e5a1acbfeb6a1
        - quay.io/mongodb/mongodb-enterprise-server@sha256:bfbcfcfc5f0de22e20520b2d96f826638e424adb028a909ccc192013d11f5833
        - registry.connect.redhat.com/mongodb/mongodb-kubernetes-bundle@sha256:11671abdb92a1bc5b1b8ef736f70d9dba78eedb66c79030ebb8f2ddfba4b184f
        - quay.io/mongodb/mongodb-kubernetes-init-ops-manager@sha256:da648073110d0fef7f2cdb5a5a16f363beb9ff80ec1eaab139af65c55a9fd865
        - quay.io/mongodb/mongodb-agent@sha256:0caca86af01da94d5e552cd200a5b110f4aa0a42e68522483b970d37afc576a0
        - quay.io/mongodb/mongodb-enterprise-server@sha256:ef732e3eea91cc86caf2eabedc0c9115ed235a8d204f33e74bbf090a0b0259fb
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d49417ea85ee1ddb84429552a5aac87a82c2843904d8c0300a43b657b7a49e0e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:1a77851485ad3b2566e765b4bb051ff0ddfa48703492cef6c6db021dde84d87f
        - quay.io/mongodb/mongodb-search@sha256:c1e636119aa206ff98cefed37ee4b488d75c6a5e6025dcb71f44275a8f3f546a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c8aec83b76dfecc05b8f5d8f40fd61b24980c0287a07294f75f321c2d42c32b4
        - quay.io/mongodb/mongodb-enterprise-server@sha256:376ad7e5fe42651d946cba5705c0eee44aa636c1b4ff258210e4ce2fe4205b4d
        - quay.io/mongodb/mongodb-agent@sha256:fb0f4825bdbe7972cc2aada5b1687191e156c28a7259de191d40b9fbd0b10367
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:cd869ff7d661059fad7593e30141d74e8cc751295b1579577f7a853396eb5d0b
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d2d8b59c1f39c41951e7878963f8496eb494688720366f8edc7060887cdbe6a0
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:895dbdfb87ddc2e9693671c7108a31ab28e16fec2e5be6d046bdd2e30319eade
        - quay.io/mongodb/mongodb-agent@sha256:640398a92c86cdafc7ac0aba776b484fc7c465a080f8daebb9946813d511f4a2
        - quay.io/mongodb/mongodb-agent@sha256:3e1ddf6a18bf3a4bc94ded15082b6410c297756277782c276274dd3da71d89e9
        version: 1.6.1
      entries:
      - name: mongodb-kubernetes.v1.6.1
        version: 1.6.1
      - name: mongodb-kubernetes.v1.6.0
        version: 1.6.0
      - name: mongodb-kubernetes.v1.5.0
        version: 1.5.0
      - name: mongodb-kubernetes.v1.4.0
        version: 1.4.0
      - name: mongodb-kubernetes.v1.3.0
        version: 1.3.0
      - name: mongodb-kubernetes.v1.2.0
        version: 1.2.0
      - name: mongodb-kubernetes.v1.1.0
        version: 1.1.0
      - name: mongodb-kubernetes.v1.0.1
        version: 1.0.1
      - name: mongodb-kubernetes.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: mongodb-kubernetes
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-hdfs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hdfs-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/hdfs-operator@sha256:baaeabcb9f77b993a1f0229a76e6736dc39a010f7e614e4d41debdaa2309c249
          description: Stackable Operator for Apache Hadoop HDFS
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/hdfs-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for HdfsClusterSpec via `CustomResource`
            displayName: hdfsclusters.hdfs.stackable.tech
            kind: HdfsCluster
            name: hdfsclusters.hdfs.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Hadoop HDFS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hdfs
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/hdfs-operator@sha256:baaeabcb9f77b993a1f0229a76e6736dc39a010f7e614e4d41debdaa2309c249
        - registry.connect.redhat.com/stackable/stackable-apache-hdfs-operator@sha256:393a2f034c0dc1ebf71b87caf58108c974d310fd4bb4526d3114271967465f77
        version: 25.11.0
      entries:
      - name: hdfs-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-hdfs-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-atlas-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-atlas-kubernetes.v2.12.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupCompliancePolicy",
                "metadata": {
                  "name": "my-backup-compliance-policy"
                },
                "spec": {
                  "authorizedEmail": "john.doe@example.com",
                  "authorizedUserFirstName": "John",
                  "authorizedUserLastName": "Doe",
                  "copyProtectionEnabled": false,
                  "encryptionAtRestEnabled": false,
                  "onDemandPolicy": {
                    "retentionUnit": "weeks",
                    "retentionValue": 3
                  },
                  "overwriteBackupPolicies": false,
                  "pointInTimeEnabled": true,
                  "restoreWindowDays": 42,
                  "scheduledPolicyItems": [
                    {
                      "frequencyInterval": 2,
                      "frequencyType": "daily",
                      "retentionUnit": "days",
                      "retentionValue": 7
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupPolicy",
                "metadata": {
                  "name": "atlasbackuppolicy-sample"
                },
                "spec": {
                  "items": [
                    {
                      "frequencyInterval": 6,
                      "frequencyType": "hourly",
                      "retentionUnit": "days",
                      "retentionValue": 2
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "daily",
                      "retentionUnit": "days",
                      "retentionValue": 7
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "weekly",
                      "retentionUnit": "weeks",
                      "retentionValue": 4
                    },
                    {
                      "frequencyInterval": 15,
                      "frequencyType": "monthly",
                      "retentionUnit": "months",
                      "retentionValue": 12
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupSchedule",
                "metadata": {
                  "name": "atlasbackupschedule-sample"
                },
                "spec": {
                  "autoExportEnabled": false,
                  "copySettings": [
                    {
                      "cloudProvider": "AWS",
                      "frequencies": [
                        "WEEKLY"
                      ],
                      "regionName": "US_WEST_1",
                      "shouldCopyOplogs": false
                    }
                  ],
                  "policy": {
                    "name": "atlasbackuppolicy-sample"
                  },
                  "referenceHourOfDay": 10,
                  "referenceMinuteOfHour": 10,
                  "restoreWindowDays": 2,
                  "useOrgAndGroupNamesInExportPrefix": true
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasCustomRole",
                "metadata": {
                  "name": "shard-operator-role"
                },
                "spec": {
                  "projectRef": {
                    "name": "my-project"
                  },
                  "role": {
                    "actions": [
                      {
                        "name": "getShardMap",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      },
                      {
                        "name": "shardingState",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      },
                      {
                        "name": "connPoolStats",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      },
                      {
                        "name": "getLog",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      }
                    ],
                    "inheritedRoles": [
                      {
                        "database": "admin",
                        "name": "operator-role-1"
                      }
                    ],
                    "name": "my-role"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDataFederation",
                "metadata": {
                  "name": "my-data-federation",
                  "namespace": "mongodb-atlas-system"
                },
                "spec": {
                  "name": "my-data-federation",
                  "privateEndpoints": [
                    {
                      "endpointId": "vpce-03f9eeaa764e32454",
                      "provider": "AWS",
                      "type": "DATA_LAKE"
                    }
                  ],
                  "projectRef": {
                    "name": "my-project",
                    "namespace": "mongodb-atlas-system"
                  },
                  "storage": {
                    "databases": [
                      {
                        "collections": [
                          {
                            "dataSources": [
                              {
                                "storeName": "http-test",
                                "urls": [
                                  "https://data.cityofnewyork.us/api/views/vfnx-vebw/rows.csv"
                                ]
                              }
                            ],
                            "name": "test-collection-1"
                          }
                        ],
                        "name": "test-db-1"
                      }
                    ],
                    "stores": [
                      {
                        "name": "http-test",
                        "provider": "http"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDatabaseUser",
                "metadata": {
                  "name": "my-database-user"
                },
                "spec": {
                  "databaseName": "admin",
                  "passwordSecretRef": {
                    "name": "the-user-password"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "roles": [
                    {
                      "databaseName": "admin",
                      "roleName": "readWriteAnyDatabase"
                    }
                  ],
                  "username": "theuser"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDeployment",
                "metadata": {
                  "name": "my-atlas-deployment"
                },
                "spec": {
                  "backupRef": {
                    "name": "atlasbackupschedule-sample"
                  },
                  "deploymentSpec": {
                    "backupEnabled": true,
                    "clusterType": "REPLICASET",
                    "mongoDBMajorVersion": "7.0",
                    "name": "test-deployment",
                    "replicationSpecs": [
                      {
                        "regionConfigs": [
                          {
                            "electableSpecs": {
                              "instanceSize": "M10",
                              "nodeCount": 3
                            },
                            "priority": 7,
                            "providerName": "AWS",
                            "regionName": "US_EAST_1"
                          }
                        ],
                        "zoneName": "Zone 1"
                      }
                    ],
                    "tags": [
                      {
                        "key": "team",
                        "value": "atlas-operator"
                      }
                    ]
                  },
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasFederatedAuth",
                "metadata": {
                  "name": "atlas-default-federated-auth",
                  "namespace": "mongodb-atlas-system"
                },
                "spec": {
                  "connectionSecretRef": {
                    "name": "my-org-secret",
                    "namespace": "mongodb-atlas-system"
                  },
                  "domainAllowList": [
                    "my-org-domain.com"
                  ],
                  "domainRestrictionEnabled": true,
                  "enabled": true,
                  "postAuthRoleGrants": [
                    "ORG_MEMBER"
                  ],
                  "roleMappings": [
                    {
                      "externalGroupName": "org-admin",
                      "roleAssignments": [
                        {
                          "role": "ORG_OWNER"
                        }
                      ]
                    },
                    {
                      "externalGroupName": "dev-team",
                      "roleAssignments": [
                        {
                          "role": "ORG_GROUP_CREATOR"
                        },
                        {
                          "projectName": "dev-project",
                          "role": "GROUP_OWNER"
                        }
                      ]
                    }
                  ],
                  "ssoDebugEnabled": false
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasIPAccessList",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasipaccesslist-sample"
                },
                "spec": {
                  "entries": [
                    {
                      "cidrBlock": "192.168.1.0/24"
                    },
                    {
                      "deleteAfterDate": "2025-01-20T23:59:59+02:00",
                      "ipAddress": "10.0.0.1"
                    }
                  ],
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkContainer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasnetworkcontainer-sample"
                },
                "spec": {
                  "cidrBlock": "10.11.0.0/16",
                  "connectionSecret": {
                    "name": "atlas-connection-secret"
                  },
                  "externalProjectRef": {
                    "projectId": "66e2f2b621571b7e69a89b66"
                  },
                  "provider": "AWS",
                  "region": "US_EAST_1"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkPeering",
                "metadata": {
                  "name": "atlasnetworkpeering-sample"
                },
                "spec": {
                  "atlasCidrBlock": "10.12.0.0/16",
                  "awsConfiguration": {
                    "accepterRegionName": "US_EAST_1",
                    "awsAccountId": "23214235145",
                    "routeTableCidrBlock": "10.11.0.0/16",
                    "vpcId": "vpcid-7123782134"
                  },
                  "containerId": "623412394512350",
                  "containerRegion": "US_EAST_1",
                  "projectRef": {
                    "name": "atlas-project",
                    "namespace": "namespace"
                  },
                  "provider": "AWS"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasPrivateEndpoint",
                "metadata": {
                  "name": "atlasprivateendpoint-sample"
                },
                "spec": {
                  "awsConfiguration": {
                    "id": "vpce-f4k34w51d"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "provider": "AWS",
                  "region": "EU_CENTRAL_1"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasProject",
                "metadata": {
                  "name": "my-project"
                },
                "spec": {
                  "name": "Test Atlas Operator Project",
                  "projectIpAccessList": [
                    {
                      "comment": "IP address for Application Server A",
                      "ipAddress": "192.0.2.15"
                    },
                    {
                      "cidrBlock": "203.0.113.0/24",
                      "comment": "CIDR block for Application Server B - D"
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasSearchIndexConfig",
                "metadata": {
                  "name": "atlassearchindexconfig-sample"
                },
                "spec": {
                  "analyzer": "lucene.standard",
                  "analyzers": [
                    {
                      "name": "test-analyzer",
                      "tokenFilters": [
                        {
                          "asciiFolding": {
                            "originalTokens": "omit"
                          },
                          "type": "asciiFolding"
                        }
                      ],
                      "tokenizer": {
                        "type": "whiteSpace",
                        "whitespace": {
                          "maxTokenLenght": 200
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasStreamConnection",
                "metadata": {
                  "name": "my-streamconnection-kafka"
                },
                "spec": {
                  "kafkaConfig": {
                    "authentication": {
                      "credentials": {
                        "name": "kafka-userpass"
                      },
                      "mechanism": "SCRAM-512"
                    },
                    "bootstrapServers": "kafka.server1:9001,kafka.server2:9002,kafka.server3:9003",
                    "security": {
                      "certificate": {
                        "name": "kafka-cert"
                      },
                      "protocol": "SSL"
                    }
                  },
                  "name": "kafka-config",
                  "type": "Kafka"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasStreamInstance",
                "metadata": {
                  "name": "my-streaminstance-sample"
                },
                "spec": {
                  "clusterConfig": {
                    "provider": "AWS",
                    "region": "VIRGINIA_USA",
                    "tier": "SP30"
                  },
                  "connectionRegistry": [
                    {
                      "name": "my-streamconnection-sample"
                    }
                  ],
                  "name": "my-instance",
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasTeam",
                "metadata": {
                  "name": "atlasteam-sample"
                },
                "spec": {
                  "name": "my-team",
                  "usernames": [
                    "username@mongodb.com"
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasThirdPartyIntegration",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasintegration-sample"
                },
                "spec": {
                  "datadog": {
                    "apiKeySecretRef": {
                      "name": "secret-ref"
                    },
                    "region": "string",
                    "sendCollectionLatencyMetrics": "string",
                    "sendDatabaseMetrics": "string"
                  },
                  "projectRef": {
                    "name": "my-atlas-project"
                  },
                  "type": "DATADOG"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/mongodb/mongodb-atlas-kubernetes-operator:2.12.0
          createdAt: "2025-12-03T08:37:51Z"
          description: The MongoDB Atlas Kubernetes Operator enables easy management
            of Clusters in MongoDB Atlas
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/mongodb/mongodb-atlas-kubernetes
          support: support@mongodb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AtlasBackupCompliancePolicy
            name: atlasbackupcompliancepolicies.atlas.mongodb.com
            version: v1
          - kind: AtlasBackupPolicy
            name: atlasbackuppolicies.atlas.mongodb.com
            version: v1
          - kind: AtlasBackupSchedule
            name: atlasbackupschedules.atlas.mongodb.com
            version: v1
          - kind: AtlasCustomRole
            name: atlascustomroles.atlas.mongodb.com
            version: v1
          - kind: AtlasDatabaseUser
            name: atlasdatabaseusers.atlas.mongodb.com
            version: v1
          - kind: AtlasDataFederation
            name: atlasdatafederations.atlas.mongodb.com
            version: v1
          - kind: AtlasDeployment
            name: atlasdeployments.atlas.mongodb.com
            version: v1
          - kind: AtlasFederatedAuth
            name: atlasfederatedauths.atlas.mongodb.com
            version: v1
          - kind: AtlasIPAccessList
            name: atlasipaccesslists.atlas.mongodb.com
            version: v1
          - kind: AtlasNetworkContainer
            name: atlasnetworkcontainers.atlas.mongodb.com
            version: v1
          - kind: AtlasNetworkPeering
            name: atlasnetworkpeerings.atlas.mongodb.com
            version: v1
          - kind: AtlasOrgSettings
            name: atlasorgsettings.atlas.mongodb.com
            version: v1
          - kind: AtlasPrivateEndpoint
            name: atlasprivateendpoints.atlas.mongodb.com
            version: v1
          - kind: AtlasProject
            name: atlasprojects.atlas.mongodb.com
            version: v1
          - kind: AtlasSearchIndexConfig
            name: atlassearchindexconfigs.atlas.mongodb.com
            version: v1
          - kind: AtlasStreamConnection
            name: atlasstreamconnections.atlas.mongodb.com
            version: v1
          - kind: AtlasStreamInstance
            name: atlasstreaminstances.atlas.mongodb.com
            version: v1
          - kind: AtlasTeam
            name: atlasteams.atlas.mongodb.com
            version: v1
          - kind: AtlasThirdPartyIntegration
            name: atlasthirdpartyintegrations.atlas.mongodb.com
            version: v1
        description: |
          The MongoDB Atlas Operator provides a native integration between the Kubernetes orchestration platform and MongoDB
          Atlas — the only multi-cloud document database service that gives you the versatility you need to build sophisticated
          and resilient applications that can adapt to changing customer demands and market trends.

          The full documentation for the Operator can be found [here](https://docs.atlas.mongodb.com/atlas-operator/)

          ## Getting Started

          ### Supported features

          * Create and configure a project, or connect to an existing one.
          * Deploy, manage, scale, and tear down clusters.
          * Support for serverless instances.
          * Create and edit database users.
          * Manage IP Access Lists, network peering and private endpoints.
          * Configure and control Atlas’s fully managed cloud backup.
          * Configure federated authentication for your Atlas organization
          * Integrate Atlas monitoring with Prometheus.

          ... and more.

          To view the list of custom resources and each CR's schema, visit our [reference](https://www.mongodb.com/docs/atlas/operator/stable/custom-resources/)
          documentation. See the [Quickstart](https://www.mongodb.com/docs/atlas/operator/stable/ak8so-quick-start/) to get
          started with Atlas Kubernetes Operator.
        displayName: MongoDB Atlas Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - MongoDB
        - Atlas
        - Database
        - Replica Set
        - Cluster
        links:
        - name: MongoDB Atlas Kubernetes
          url: https://github.com/mongodb/mongodb-atlas-kubernetes
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: beta
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/community-operator-pipeline-prod/mongodb-atlas-kubernetes@sha256:c4f1a2e3a81fc9d48480264ea236acf93ac12b1b719a83adfa8c9ce62d8b49e6
        - quay.io/mongodb/mongodb-atlas-kubernetes-operator:2.12.0
        version: 2.12.0
      entries:
      - name: mongodb-atlas-kubernetes.v2.12.0
        version: 2.12.0
      - name: mongodb-atlas-kubernetes.v2.11.1
        version: 2.11.1
      - name: mongodb-atlas-kubernetes.v2.11.0
        version: 2.11.0
      - name: mongodb-atlas-kubernetes.v2.10.0
        version: 2.10.0
      - name: mongodb-atlas-kubernetes.v2.9.1
        version: 2.9.1
      - name: mongodb-atlas-kubernetes.v2.9.0
        version: 2.9.0
      - name: mongodb-atlas-kubernetes.v2.8.2
        version: 2.8.2
      - name: mongodb-atlas-kubernetes.v2.8.1
        version: 2.8.1
      - name: mongodb-atlas-kubernetes.v2.8.0
        version: 2.8.0
      - name: mongodb-atlas-kubernetes.v2.7.1
        version: 2.7.1
      - name: mongodb-atlas-kubernetes.v2.7.0
        version: 2.7.0
      - name: mongodb-atlas-kubernetes.v2.6.1
        version: 2.6.1
      - name: mongodb-atlas-kubernetes.v2.6.0
        version: 2.6.0
      - name: mongodb-atlas-kubernetes.v2.5.0
        version: 2.5.0
      - name: mongodb-atlas-kubernetes.v2.4.1
        version: 2.4.1
      - name: mongodb-atlas-kubernetes.v2.4.0
        version: 2.4.0
      - name: mongodb-atlas-kubernetes.v2.3.1
        version: 2.3.1
      - name: mongodb-atlas-kubernetes.v2.3.0
        version: 2.3.0
      - name: mongodb-atlas-kubernetes.v2.2.2
        version: 2.2.2
      - name: mongodb-atlas-kubernetes.v2.2.1
        version: 2.2.1
      - name: mongodb-atlas-kubernetes.v2.2.0
        version: 2.2.0
      - name: mongodb-atlas-kubernetes.v2.1.0
        version: 2.1.0
      - name: mongodb-atlas-kubernetes.v2.0.1
        version: 2.0.1
      - name: mongodb-atlas-kubernetes.v2.0.0
        version: 2.0.0
      - name: mongodb-atlas-kubernetes.v1.9.1
        version: 1.9.1
      - name: mongodb-atlas-kubernetes.v1.9.0
        version: 1.9.0
      - name: mongodb-atlas-kubernetes.v1.8.2
        version: 1.8.2
      - name: mongodb-atlas-kubernetes.v1.8.1
        version: 1.8.1
      - name: mongodb-atlas-kubernetes.v1.8.0
        version: 1.8.0
      - name: mongodb-atlas-kubernetes.v1.7.3
        version: 1.7.3
      - name: mongodb-atlas-kubernetes.v1.7.2
        version: 1.7.2
      - name: mongodb-atlas-kubernetes.v1.7.1
        version: 1.7.1
      - name: mongodb-atlas-kubernetes.v1.7.0
        version: 1.7.0
      name: stable
    defaultChannel: stable
    packageName: mongodb-atlas-kubernetes
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: proactive-node-scaling-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: proactive-node-scaling-operator.v0.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "NodeScalingWatermark",
                "metadata": {
                  "name": "ai-ml"
                },
                "spec": {
                  "nodeSelector": {
                    "machine.openshift.io/cluster-api-machine-type": "ai-ml"
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "workload",
                      "operator": "Equal",
                      "value": "ai-ml"
                    }
                  ],
                  "watermarkPercentage": 20
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "NodeScalingWatermark",
                "metadata": {
                  "name": "us-west-2a"
                },
                "spec": {
                  "nodeSelector": {
                    "topology.kubernetes.io/zone": "us-west-2a"
                  },
                  "watermarkPercentage": 20
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          certified: "false"
          containerImage: quay.io/redhat-cop/proactive-node-scaling-operator@sha256:892303babb45090a6458cd4b1c61a01364012c43ea0bd6ed4d10bdcb8041e2ab
          createdAt: "2022-01-22T14:14:23Z"
          description: This operator provides automation proactively scaling nodes
            before pods get stuck waiting for the cluster autoscaler.
          operatorframework.io/suggested-namespace: proactive-node-scaling-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/proactive-node-scaling-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeScalingWatermark is the Schema for the nodescalingwatermarks
              API
            displayName: Node Scaling Watermark
            kind: NodeScalingWatermark
            name: nodescalingwatermarks.redhatcop.redhat.io
            version: v1alpha1
        description: |
          This operator makes the [cluster autoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler) more proactive. As of now the cluster auto scaler will create new nodes only when a pod is pending because it cannot be allocated due to lack of capacity. This is not a goos user experience as the pending workload has to wait for several minutes as the new node is create and joins the cluster.

          The Proactive Node Scaling Operator improves the user experience by allocating low priority pods that don't do anything. When the cluster is full and a new user pod is created the following happens:

          1. some of the low priority pods are de-scheduled to make room for the user pod, which can then be scheduled. The user workload does not have to wait in this case.

          2. the de-scheduled low priority pods are rescheduled and in doing so the trigger the cluster autoscaler to add new nodes.

          Essentially this operator allows you to trade wasted resources for faster response time.

          In order for this operator to work correctly [pod priorities](https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/) must be defined. The default name for the priority class used by this operator is "proactive-node-autoscaling-pods" and it should have the lowest possible priority, 0. To ensure your regular workloads get a normal priority you should also define a PriorityClass for those with a higher priority than 0 and set globalDefault to true.

          For example:

          ```yaml
          apiVersion: scheduling.k8s.io/v1
          kind: PriorityClass
          metadata:
            name: proactive-node-autoscaling-pods
          value: 0
          globalDefault: false
          description: "This priority class is the priority class used for Proactive Node Scaling Pods."
          ---
          apiVersion: scheduling.k8s.io/v1
          kind: PriorityClass
          metadata:
            name: normal-workload
          value: 1000
          globalDefault: true
          description: "This priority classis the cluster default and should be used for normal workloads."
          ```

          Also for this operator to work the [cluster autoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler) must be active, see OpenShift instructions [here](https://docs.openshift.com/container-platform/4.6/machine_management/applying-autoscaling.html) on how to turn it on.

          To activate the proactive autoscaling, a CR must be defined, here is an example:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: NodeScalingWatermark
          metadata:
            name: us-west-2a
          spec:
            priorityClassName: proactive-node-autoscaling-pods
            watermarkPercentage: 20
            nodeSelector:
              topology.kubernetes.io/zone: us-west-2a
          ```

          The `nodeSelector` selects the nodes observed by this operator, which are also the nodes on which the low priority pods will be scheduled. The nodes observed by the cluster autoscaler should coincide with the nodes selected by this operator CR.

          The `watermarkPercentage` define the percentage of capacity of user workload that will be allocated to low priority pods. So in this example 20% of the user allocated capacity will be allocated via low priority pods. This also means that when the user workload reaches 80% capacity of the nodes selected by this CR (and the autoscaler), the cluster will start to scale.
        displayName: Proactive Node Scaling Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Capacity Management
        - Node Autoscaling
        - Proactive Autoscaling
        - Elastic Capacity
        links:
        - name: Proactive Node Scaling Operator
          url: https://github.com/redhat-cop/proactive-node-scaling-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/proactive-node-scaling-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/proactive-node-scaling-operator@sha256:892303babb45090a6458cd4b1c61a01364012c43ea0bd6ed4d10bdcb8041e2ab
        - quay.io/openshift-community-operators/proactive-node-scaling-operator@sha256:0ae01e9adc67ff7341fa3faf51a67c02206c41342374cab0bb2e6079d84fef4a
        version: 0.4.2
      entries:
      - name: proactive-node-scaling-operator.v0.4.2
        version: 0.4.2
      - name: proactive-node-scaling-operator.v0.4.0
        version: 0.4.0
      - name: proactive-node-scaling-operator.v0.3.10
        version: 0.3.10
      - name: proactive-node-scaling-operator.v0.3.9
        version: 0.3.9
      - name: proactive-node-scaling-operator.v0.3.8
        version: 0.3.8
      - name: proactive-node-scaling-operator.v0.3.7
        version: 0.3.7
      - name: proactive-node-scaling-operator.v0.3.6
        version: 0.3.6
      - name: proactive-node-scaling-operator.v0.3.5
        version: 0.3.5
      - name: proactive-node-scaling-operator.v0.3.4
        version: 0.3.4
      - name: proactive-node-scaling-operator.v0.3.3
        version: 0.3.3
      - name: proactive-node-scaling-operator.v0.3.2
        version: 0.3.2
      - name: proactive-node-scaling-operator.v0.3.1
        version: 0.3.1
      - name: proactive-node-scaling-operator.v0.3.0
        version: 0.3.0
      - name: proactive-node-scaling-operator.v0.2.0
        version: 0.2.0
      - name: proactive-node-scaling-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: proactive-node-scaling-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: group-sync-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: group-sync-operator.v0.0.36
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "azure-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "azure": {
                        "credentialsSecret": {
                          "name": "azure-group-sync",
                          "namespace": "group-sync-operator"
                        }
                      },
                      "name": "azure"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "github-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "github": {
                        "credentialsSecret": {
                          "name": "github-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "organization": "redhat-cop"
                      },
                      "name": "github"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "gitlab-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "gitlab": {
                        "credentialsSecret": {
                          "name": "gitlab-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "url": "https://gitlab.apps.openshift.com"
                      },
                      "name": "gitlab"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "keycloak-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "keycloak": {
                        "credentialsSecret": {
                          "name": "keycloak-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "insecure": true,
                        "realm": "ocp",
                        "url": "https://keycloak.apps.openshift.com"
                      },
                      "name": "keycloak"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "ldap-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "ldap": {
                        "credentialsSecret": {
                          "name": "ldap-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "insecure": true,
                        "rfc2307": {
                          "groupMembershipAttributes": [
                            "member"
                          ],
                          "groupNameAttributes": [
                            "cn"
                          ],
                          "groupUIDAttribute": "dn",
                          "groupsQuery": {
                            "baseDN": "ou=Groups,dc=example,dc=com",
                            "derefAliases": "never",
                            "filter": "(objectClass=groupofnames)",
                            "scope": "sub"
                          },
                          "tolerateMemberNotFoundErrors": true,
                          "tolerateMemberOutOfScopeErrors": true,
                          "userNameAttributes": [
                            "cn"
                          ],
                          "userUIDAttribute": "dn",
                          "usersQuery": {
                            "baseDN": "ou=Users,dc=example,dc=com",
                            "derefAliases": "never",
                            "scope": "sub"
                          }
                        },
                        "url": "ldap://localhost:389"
                      },
                      "name": "ldap"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "okta-sync"
                },
                "spec": {
                  "providers": [
                    {
                      "name": "okta",
                      "okta": {
                        "appId": "okta-sync-app-id",
                        "credentialsSecret": {
                          "name": "okta-api-token",
                          "namespace": "group-sync-operator"
                        },
                        "extractLoginUsername": true,
                        "profileKey": "login",
                        "url": "https://example.okta.com/"
                      }
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/group-sync-operator@sha256:43ef79efc2a77ee5edd4e3123f9dab156a30d3e00fd1fba9f89600b96f0f68d6
          createdAt: "2025-08-12T19:19:21Z"
          description: Synchronize groups and users from external providers
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: group-sync-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/group-sync-operator
          support: Red Hat Community of Practice
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GroupSync is the Schema for the groupsyncs API
            displayName: Group Sync
            kind: GroupSync
            name: groupsyncs.redhatcop.redhat.io
            version: v1alpha1
        description: |
          Synchronizes groups from external providers into OpenShift

          ## Overview

          The OpenShift Container Platform contains functionality to synchronize groups found in external identity providers into the platform. Currently, the functionality that is included in OpenShift to limited to synchronizing LDAP only. This operator is designed to integrate with external providers in order to provide new solutions.

          Group Synchronization is facilitated by creating a `GroupSync` resource. The following describes the high level schema for this resource:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: example-groupsync
          spec:
            providers:
              - <One or more providers to synchronize>
          ```

          ## Authentication

          In most cases, authentication details must be provided in order to communicate with providers. Authentication details are provider specific with regards to the required values. In supported providers, the secret can be referenced in the `credentialsSecret` by name and namespace where it has been created as shown below:

          ```
          credentialsSecret:
            name: <secret_name>
            namespace: <secret_namespace>
          ```

          ## Providers

          Integration with external systems is made possible through a set of pluggable external providers. The following providers are currently supported:

          * [Azure](https://azure.microsoft.com/)
          * [GitHub](https://github.com)
          * [GitLab](https://gitlab.com)
          * [LDAP](https://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol)
          * [Keycloak](https://www.keycloak.org/)/[Red Hat Single Sign On](https://access.redhat.com/products/red-hat-single-sign-on)
          * [Okta](https://www.okta.com/)
          * [IBM Security Verify](https://docs.verify.ibm.com/verify)

          The following sections describe the configuration options available for each provider


          ### Azure

          Groups contained within Azure Active Directory can be synchronized into OpenShift. The following table describes the set of configuration options for the Azure provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `authorityHost` | Azure Active Directory Endpoint | `https://login.microsoftonline.com` | No |
          | `baseGroups` | List of groups to start searching from instead of listing all groups in the directory | | No |
          | `credentialsSecret` | Name of the secret containing authentication details (See below) | | Yes |
          | `filter` | Graph API filter | | No |
          | `groups` | List of groups to filter against | | No |
          | `userNameAttributes` | Fields on a user record to use as the User Name | `userPrincipalName` | No |
          | `prune` | Prune Whether to prune groups that are no longer in Azure | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Azure provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: azure-groupsync
          spec:
            providers:
            - name: azure
              azure:
                credentialsSecret:
                  name: azure-group-sync
                  namespace: group-sync-operator
          ```

          #### Authenticating to Azure

          Authentication to Azure can be performed using Application Registration with access to query group information in Azure Active Directory.

          The App Registration must be granted access to the following Microsoft Graph API's:

          * Group.Read.All
          * GroupMember.Read.All
          * User.Read.All

          A secret must be created in the same namespace that contains the `GroupSync` resource:

          The following keys must be defined in the secret

          * `AZURE_TENANT_ID` - Tenant ID
          * `AZURE_CLIENT_ID` - Client ID
          * `AZURE_CLIENT_SECRET` - Client Secret

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic azure-group-sync --from-literal=AZURE_SUBSCRIPTION_ID=<AZURE_SUBSCRIPTION_ID> --from-literal=AZURE_TENANT_ID=<AZURE_TENANT_ID> --from-literal=AZURE_CLIENT_ID=<AZURE_CLIENT_ID> --from-literal=AZURE_CLIENT_SECRET=<AZURE_CLIENT_SECRET>
          ```

          ### GitHub

          Teams stored within a GitHub organization can be synchronized into OpenShift. The following table describes the set of configuration options for the GitHub provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `caSecret` | Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `organization` | Organization to synchronize against | | Yes |
          | `teams` | List of teams to filter against | | No |
          | `url` | Base URL for the GitHub or GitHub Enterprise host (Must contain a trailing slash) | | No |
          | `prune` | Prune Whether to prune groups that are no longer in GitHub | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Github provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: github-groupsync
          spec:
            providers:
            - name: github
              github:
                organization: ocp
                credentialsSecret:
                  name: github-group-sync
                  namespace: group-sync-operator
          ```

          #### Authenticating to GitHub

          Authentication to GitLab can be performed using a [Token](https://docs.gitlab.com/ee/security/token_overview.html) or a Username and Password (Note: 2FA not supported). A secret must be created in the same namespace that contains the `GroupSync` resource:

          When using an OAuth token, the following token types are supported:

          * Personal Access Token
          * OAuth Token
          * Job Token

          the following key is required:

          * `token` - OAuth token

          Optionally, the `tokenType` key can be specified to indicate the type of token being provided from the following values:

          * OAuth - `oauth`
          * Personal Access Token - `personal`
          * Job Token - `job`

          If no `tokenType` is provided, `oauth` is used by default

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=token=<token>
          ```

          To specify a token type, such as a Personal Access Token, the following command can be executed:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=token=<token> --from-literal=tokenType=personal
          ```

          The following keys are required for username and password:

          * `username` - Username for authenticating with GitHub
          * `password` - Password for authenticating with GitHub

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic github-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          ### GitLab

          Groups stored within a GitLab can be synchronized into OpenShift. The following table describes the set of configuration options for the GitLab provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `ca` | Reference to a resource containing a SSL certificate to use for communication (See below) | | No |
          | `caSecret` | **DEPRECATED** Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `groups` | List of groups to filter against | | No |
          | `prune` | Prune Whether to prune groups that are no longer in GitLab | `false` | No |
          | `scope` | Scope for group synchronization. Options are `one` for one level or `sub` to include subgroups | `sub` | No |
          | `url` | Base URL for the GitLab instance | `https://gitlab.com` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Github provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: gitlab-groupsync
          spec:
            providers:
            - name: gitlab
              gitlab:
                credentialsSecret:
                  name: gitlab-group-sync
                  namespace: group-sync-operator
          ```

          #### Authenticating to GitLab

          Authentication to GitLab can be performed using an OAuth Personal Access Token or a Username and Password (Note: 2FA not supported). A secret must be created in the same namespace that contains the `GroupSync` resource:

          When using an OAuth token, the following key is required:

          * `token` - OAuth token

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=token=<token>
          ```

          The following keys are required for username and password:

          * `username` - Username for authenticating with GitLab
          * `password` - Password for authenticating with GitLab

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          ### LDAP

          Groups stored within an [LDAP](https://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol) server can be synchronized into OpenShift. The LDAP provider implements the included features of the [Syncing LDAP groups](https://docs.openshift.com/container-platform/latest/authentication/ldap-syncing.html) feature and makes use of the libraries from the [OpenShift Command Line](https://docs.openshift.com/container-platform/latest/cli_reference/openshift_cli/getting-started-cli.html) tool to streamline the migration to this operator based implementation.

          The configurations of the three primary schemas (`rfc2307`, `activeDirectory` and `augmentedActiveDirectory`) can be directly migrated as is without any modification.

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `ca` | Reference to a resource containing a SSL certificate to use for communication (See below) | | No |
          | `caSecret` | **DEPRECATED** Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | No |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `groupUIDNameMapping` | User defined name mapping | | No |
          | `rfc2307` | Configuration using the [rfc2307](https://docs.openshift.com/container-platform/latest/authentication/ldap-syncing.html#ldap-syncing-rfc2307_ldap-syncing-groups) schema | | No |
          | `activeDirectory` | Configuration using the [activeDirectory](https://docs.openshift.com/container-platform/4.5/authentication/ldap-syncing.html#ldap-syncing-activedir_ldap-syncing-groups) schema | | No |
          | `augmentedActiveDirectory` | Configuration using the [activeDirectory](https://docs.openshift.com/container-platform/4.5/authentication/ldap-syncing.html#ldap-syncing-augmented-activedir_ldap-syncing-groups) schema | | No |
          | `url` | Connection URL for the LDAP server | `ldap://ldapserver:389` | No |
          | `whitelist` | Explicit list of groups to synchronize |  | No |
          | `blacklist` | Explicit list of groups to not synchronize |  | No |
          | `prune` | Prune Whether to prune groups that are no longer in LDAP | `false` | No |

          The following is an example using the `rfc2307` schema:

          ```
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ldap-groupsync
          spec:
            providers:
            - ldap:
                credentialsSecret:
                  name: ldap-group-sync
                  namespace: group-sync-operator
                insecure: true
                rfc2307:
                  groupMembershipAttributes:
                  - member
                  groupNameAttributes:
                  - cn
                  groupUIDAttribute: dn
                  groupsQuery:
                    baseDN: ou=Groups,dc=example,dc=com
                    derefAliases: never
                    filter: (objectClass=groupofnames)
                    scope: sub
                  tolerateMemberNotFoundErrors: true
                  tolerateMemberOutOfScopeErrors: true
                  userNameAttributes:
                  - cn
                  userUIDAttribute: dn
                  usersQuery:
                    baseDN: ou=Users,dc=example,dc=com
                    derefAliases: never
                    scope: sub
                url: ldap://ldapserver:389
              name: ldap
          ```

          The examples provided in the OpenShift documented referenced previously can be used to construct the schemas for the other LDAP synchronization types.

          #### Authenticating to LDAP

          If authentication is required in order to communicate with the LDAP server, a secret should be created in the same namespace that contains the `GroupSync` resource. The following keys can be defined:

          * `username` - Username (Bind DN) for authenticating with the LDAP server
          * `password` - Password for authenticating with the LDAP server

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic ldap-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          #### Whitelists and Blacklists

          Groups can be explicitly whitelisted or blacklisted in order to control the groups that are eligible to be synchronized into OpenShift. When running LDAP group synchronization using the command line, this configuration is referenced via separate files, but these are instead specified in the `blacklist` and `whitelist` properties as shown below:

          ```
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ldap-groupsync
          spec:
            providers:
            - ldap:
          ...
                whitelist:
                - cn=Online Corporate Banking,ou=Groups,dc=example,dc=com
          ...
              name: ldap
          ```

          ```
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ldap-groupsync
          spec:
            providers:
            - ldap:
          ...
                blacklist:
                - cn=Finance,ou=Groups,dc=example,dc=com
          ...
              name: ldap
          ```

          ### Keycloak

          Groups stored within Keycloak can be synchronized into OpenShift. The following table describes the set of configuration options for the Keycloak provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `ca` | Reference to a resource containing a SSL certificate to use for communication (See below) | | No |
          | `caSecret` | **DEPRECATED** Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
          | `groups` | List of groups to filter against | | No |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `loginRealm` | Realm to authenticate against | `master` | No |
          | `realm` | Realm to synchronize | | Yes |
          | `scope` | Scope for group synchronization. Options are `one` for one level or `sub` to include subgroups | `sub` | No |
          | `url` | Base URL for the Keycloak server. Older versions (<17.0.0) including Red Hat SSO should include the context path `/auth` appended to the hostname  | | Yes |
          | `prune` | Prune Whether to prune groups that are no longer in Keycloak | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Keycloak provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            providers:
            - name: keycloak
              keycloak:
                realm: ocp
                credentialsSecret:
                  name: keycloak-group-sync
                  namespace: group-sync-operator
                url: https://keycloak-keycloak-operator.apps.openshift.com/auth
          ```

          #### Authenticating to Keycloak

          A user with rights to query for Keycloak groups must be available. The following permissions must be associated to the user:

          * Password must be set (Temporary option unselected) on the _Credentials_ tab
          * On the _Role Mappings_ tab, select _master-realm_ or _realm-management_ next to the _Client Roles_ dropdown and then select **Query Groups** and **Query Users**.

          A secret must be created in the same namespace that contains the `GroupSync` resource. It must contain the following keys for the user previously created:

          * `username` - Username for authenticating with Keycloak
          * `password` - Password for authenticating with Keycloak

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic keycloak-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          ### Okta

          [Okta Groups](https://help.okta.com/en/prod/Content/Topics/users-groups-profiles/usgp-main.htm) assigned to [Okta Applications](https://help.okta.com/en/prod/Content/Topics/Apps/Apps_Apps.htm) can be synchronized into OpenShift. The developer docs for the Okta API that the Okta Syncer uses can be found [here](https://developer.okta.com/docs/reference/api/apps/#list-groups-assigned-to-application).
          The following table describes the set of configuration options for the Okta provider:

            | Name | Description | Defaults | Required |
            | ----- | ---------- | -------- | ----- |
            | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
            | `groups` | List of groups to filter against | | No |
            | `url` | Okta organization URL (Must contain a trailing slash) | | Yes |
            | `appId` | Application ID of App Groups are assigned to | | Yes |
            | `extractLoginUsername` | Bool to determine if you should extract username from okta login | | No |
            | `profileKey` | Attribute field on Okta User Profile you would like to use as identity | `login` | No |
            | `groupLimit` | Integer to set the maximum number of groups to retrieve from OKTA per request. | `1000` | No |
            | `prune` | Prune Whether to prune groups that are no longer in OKTA | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with an Okta provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: okta-sync
          spec:
            providers:
              - name: okta
                okta:
                  credentialsSecret:
                    name: okta-api-token
                    namespace: group-sync-operator
                  url: "https://example.okta.com/"
                  appId: okta-sync-app-id
          ```

          #### Authenticating to Okta

          A secret must be created in the same namespace as the group-sync-operator pod. It must contain the following key:

            * `okta-api-token` - Okta API Token for interacting with Okta

          The secret can be created by executing the following command:

            ```shell
            oc create secret generic okta-api-token --from-literal=okta-api-token=<OKTA_API_TOKEN> -n group-sync-operator
            ```

          ### IBM Security Verify

          Groups defined in [IBM Security Verify](https://help.okta.com/en/prod/Content/Topics/users-groups-profiles/usgp-main.htm) (ISV) can be synchronized into OpenShift. Currently only the `userName` field from ISV will be synchronized. The developer docs for the ISV API can be found [here](https://docs.verify.ibm.com/verify/page/api-documentation).
          The following table describes the set of configuration options for the provider:

            | Name | Description | Defaults | Required |
            | ----- | ---------- | -------- | ----- |
            | `credentialsSecret` | Reference to a secret containing authentication details (see below) | `''`  | Yes |
            | `groups` | List of groups to synchronize (see below) | `nil`  | Yes |
            | `tenantUrl` | The ISV tenant URL, for example `https://my-isv.verify.ibm.com`) | `''`  | Yes |

          The following is an example of a minimal configuration that can be applied to integrate with an Okta provider:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ibmsecurityverify-sync
          spec:
              providers:
              - name: ibmsecurityverify
                ibmsecurityverify:
                  credentialsSecret:
                    name: isv-group-sync
                    namespace: group-sync-operator
                  tenantUrl: https://my-isv.verify.ibm.com
                  groups:
                    - name: 'application owners'
                      id: 645001V3V9
                    - name: developer
                      id: 645001V3VA
          ```

          #### Group Objects
          Each group object in the `groups` array must contain an `id` field. The group ID can be retrieved by pulling the group information from the ISV API. Optionally, the object may also contain a `name` which corresponds to the group's display name. When defined, the operator will confirm that the name defined in the YAML matches that received from the API when synchronization occurs; as the group IDs are not human-friendly, using the name can confirm the correct groups are configured. If the names do not match an error will be logged.

          #### Group Names
          The name of each groups created in OpenShift will match the group name in ISV. Any whitespace in the ISV group name will be replaced with a hyphen.

          #### Authenticating to IBM Security Verify

          A secret must be created in the same namespace as the group-sync-operator pod. It must contain the following keys:

          * `clientId` - The API client ID.
          * `clientSecret`- The API client secret.

          See the IBM Security Verify [API documentation](https://docs.verify.ibm.com/verify/docs/api-access) for setting up authentication.

          ### Support for Additional Metadata (Beta)

          Additional metadata based on Keycloak group are also added to the OpenShift groups as Annotations including:

          * Parent/child relationship between groups and their subgroups
          * Group attributes

          ## CA Certificates

          Several providers allow for certificates to be provided in either a _ConfigMap_ or _Secret_ to communicate securely to the target host through the use of a property called `ca`.

          The certificate can be added to a Secret called _keycloak-certs_ using the key `ca.crt` representing the certificate using the following command.

          ```
          oc create secret generic keycloak-certs --from-file=ca.crt=<file>
          ```

          An example of how the CA certificate can be added to the Keycloak provider is shown below:


          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            providers:
            - name: keycloak
              keycloak:
                realm: ocp
                credentialsSecret:
                  name: keycloak-group-sync
                  namespace: group-sync-operator
                caSecret:
                  kind: Secret
                  name: keycloak-certs
                  namespace: group-sync-operator
                  key: ca.crt
                url: https://keycloak-keycloak-operator.apps.openshift.com
          ```

          Alteratively, a _ConfigMap_ can be used instead instead of a _Secret_. This is useful when using the [Certificate injection using Operators](https://docs.openshift.com/container-platform/latest/networking/configuring-a-custom-pki.html#certificate-injection-using-operators_configuring-a-custom-pki) feature.

          The following command can be used to create a _ConfigMap_ containing the certificate:

          ```
          oc create configmap keycloak-certs --from-file=ca.crt=<file>
          ````

          An example of how the CA certificate can be added to the Keycloak provider is shown below:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            providers:
            - name: keycloak
              keycloak:
                realm: ocp
                credentialsSecret:
                  name: keycloak-group-sync
                  namespace: group-sync-operator
                caSecret:
                  kind: ConfigMap
                  name: keycloak-certs
                  namespace: group-sync-operator
                  key: ca.crt
                url: https://keycloak-keycloak-operator.apps.openshift.com
          ```

          ## Scheduled Execution

          A cron style expression can be specified for which a synchronization event will occur. The following specifies that a synchronization should occur nightly at 3AM

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            schedule: "0 3 * * *"
            providers:
            - ...
          ```

          If a schedule is not provided, synchronization will occur only when the object is reconciled by the platform.

          ## Metrics

          Prometheus compatible metrics are exposed by the Operator and can be integrated into OpenShift's default cluster monitoring. To enable OpenShift cluster monitoring, label the namespace the operator is deployed in with the label `openshift.io/cluster-monitoring="true"`.

          ```
          oc label namespace <namespace> openshift.io/cluster-monitoring="true"
          ```
        displayName: Group Sync Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - group
        - user
        - security
        - authorization
        links:
        - name: Group Sync Operator
          url: https://github.com/redhat-cop/group-sync-operator
        maintainers:
        - email: ablock@redhat.com
          name: Andrew Block
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/community-operator-pipeline-prod/group-sync-operator@sha256:fe6fda2de67fc4996d3f388e11faa0130fee19453111c829ba0aaa5be5410d01
        - quay.io/redhat-cop/group-sync-operator@sha256:43ef79efc2a77ee5edd4e3123f9dab156a30d3e00fd1fba9f89600b96f0f68d6
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:b8a174be91f3df75dff9656d4c72de28af51a731008e9e96db5eef3c7af58aac
        version: 0.0.36
      entries:
      - name: group-sync-operator.v0.0.36
        version: 0.0.36
      - name: group-sync-operator.v0.0.35
        version: 0.0.35
      - name: group-sync-operator.v0.0.34
        version: 0.0.34
      - name: group-sync-operator.v0.0.33
        version: 0.0.33
      - name: group-sync-operator.v0.0.32
        version: 0.0.32
      - name: group-sync-operator.v0.0.31
        version: 0.0.31
      - name: group-sync-operator.v0.0.30
        version: 0.0.30
      - name: group-sync-operator.v0.0.29
        version: 0.0.29
      - name: group-sync-operator.v0.0.28
        version: 0.0.28
      - name: group-sync-operator.v0.0.27
        version: 0.0.27
      - name: group-sync-operator.v0.0.26
        version: 0.0.26
      - name: group-sync-operator.v0.0.25
        version: 0.0.25
      - name: group-sync-operator.v0.0.24
        version: 0.0.24
      - name: group-sync-operator.v0.0.23
        version: 0.0.23
      - name: group-sync-operator.v0.0.22
        version: 0.0.22
      - name: group-sync-operator.v0.0.21
        version: 0.0.21
      - name: group-sync-operator.v0.0.20
        version: 0.0.20
      - name: group-sync-operator.v0.0.19
        version: 0.0.19
      - name: group-sync-operator.v0.0.18
        version: 0.0.18
      - name: group-sync-operator.v0.0.17
        version: 0.0.17
      - name: group-sync-operator.v0.0.16
        version: 0.0.16
      - name: group-sync-operator.v0.0.15
        version: 0.0.15
      - name: group-sync-operator.v0.0.14
        version: 0.0.14
      - name: group-sync-operator.v0.0.13
        version: 0.0.13
      name: alpha
    defaultChannel: alpha
    packageName: group-sync-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: geunwookim
      provider-url: ""
    name: ncn-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ncn-operator.v0.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cxl.antline.com/v1",
                "kind": "CXL",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cxl-operator",
                    "app.kubernetes.io/instance": "cxl-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cxl",
                    "app.kubernetes.io/part-of": "cxl-operator"
                  },
                  "name": "cxl-1"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          createdAt: "2024-06-19T01:21:08Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CXL is the Schema for the cxls API
            displayName: CXL
            kind: CXL
            name: cxls.cxl.antline.com
            version: v1
        description: This operator is for ncn extend
        displayName: ncn-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ncn
        - memory
        - extend
        links:
        - name: NCN Operator
          url: https://ncn-operator.domain
        maintainers:
        - email: jwahn@antlinesoft.com
          name: Antline-Soft
        maturity: alpha
        provider:
          name: Antline
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        - quay.io/community-operator-pipeline-prod/ncn-operator@sha256:61685ecb519d17160149a5dc16ae28d6fd96264652a6f19fef861addfa4ec6f4
        - quay.io/rasen708/ncn-operator:v0.2.2
        version: 0.2.2
      entries:
      - name: ncn-operator.v0.2.2
        version: 0.2.2
      - name: ncn-operator.v0.2.1
        version: 0.2.1
      - name: ncn-operator.v0.2.0
        version: 0.2.0
      name: beta
    - currentCSV: ncn-operator.v0.9.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cmmd.gw.com/v1",
                "kind": "CMMD",
                "metadata": {
                  "name": "my-app",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "allocateMode": "auto",
                  "enable": true,
                  "payload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "metadata": {
                      "name": "my-app"
                    },
                    "spec": {
                      "replicas": 1,
                      "selector": {
                        "matchLabels": {
                          "name": "my-app"
                        }
                      },
                      "template": {
                        "metadata": {
                          "labels": {
                            "name": "my-app"
                          }
                        },
                        "spec": {
                          "containers": [
                            {
                              "image": "quay.io/my-account/my-app:latest",
                              "name": "my-app-01"
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "cmmd.gw.com/v1",
                "kind": "Label",
                "metadata": {
                  "labels": {
                    "machineconfiguration.openshift.io/role": "cmmd"
                  },
                  "name": "cmmd-node-label",
                  "namespace": "socmmd"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          console.openshift.io/plugins: '["socmmd-console-plugin"]'
          containerImage: quay.io/rasen708/ncn-operator@sha256:a09963745bd9c1419532d42d91237b7496c7a78e6a1c460a8e714ea1a0ce4d45
          createdAt: "2024-08-01T05:45:38Z"
          description: Provides the ncn extend
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "cmmd.gw.com/v1",
              "kind": "Label",
              "metadata": {
                "name": "cmmd-node-label",
                "namespace": "socmmd",
                "labels": {}
              },
              "spec": {}
            }
          operatorframework.io/suggested-namespace: socmmd-system
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/geunwookim/ncn-operator
          support: geunwookim
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CMMD is the Schema for the cmmds API
            displayName: CMMD
            kind: CMMD
            name: cmmds.cmmd.gw.com
            version: v1
          - description: Label is the Schema for the labels API
            displayName: Node Label
            kind: Label
            name: labels.cmmd.gw.com
            version: v1
        description: This operator is for ncn extend
        displayName: ncn-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ncn
        - memory
        - extend
        links:
        - name: NCN Operator
          url: https://ncn-operator.domain
        maintainers:
        - email: geunwookim@gmail.com
          name: geunwookim
        maturity: betav1
        provider:
          name: geunwookim
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        - quay.io/community-operator-pipeline-prod/ncn-operator@sha256:a99a5ca46c5bd3065905588f4d0e3cdc6409d435abdc02793be88e77c1a8f0f5
        - quay.io/rasen708/ncn-operator@sha256:a09963745bd9c1419532d42d91237b7496c7a78e6a1c460a8e714ea1a0ce4d45
        version: 0.9.8
      entries:
      - name: ncn-operator.v0.9.8
        version: 0.9.8
      - name: ncn-operator.v0.9.2
        version: 0.9.2
      - name: ncn-operator.v0.8.1
        version: 0.8.1
      - name: ncn-operator.v0.5.6
        version: 0.5.6
      - name: ncn-operator.v0.4.3
        version: 0.4.3
      - name: ncn-operator.v0.4.2
        version: 0.4.2
      name: betav1
    defaultChannel: betav1
    packageName: ncn-operator
    provider:
      name: geunwookim
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: must-gather-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: must-gather-operator.v1.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "MustGather",
                "metadata": {
                  "name": "example-mustgather"
                },
                "spec": {
                  "caseID": "02527285",
                  "caseManagementAccountSecretRef": {
                    "name": "case-management-creds"
                  },
                  "serviceAccountRef": {
                    "name": "must-gather-admin"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security, Monitoring
          certified: "false"
          containerImage: quay.io/redhat-cop/must-gather-operator@sha256:aebef122cdb8409f5a5d70d3cdc585e02272704d57e103553a84bc6fc238e646
          createdAt: "2021-12-02T17:13:53Z"
          description: This operator provides a facility to easily upload must-gather
            reports to a Red Hat case.
          operatorframework.io/suggested-namespace: global-load-balancer-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/must-gather-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: MustGather
            name: mustgathers.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The must gather operator helps collecting must gather information on a cluster and uploading it to a case.
          To use the operator a cluster administrator can create the following must gather CR:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: MustGather
          metadata:
            name: example-mustgather
          spec:
            caseID: '02527285'
            caseManagementAccountSecretRef:
              name: case-management-creds
          ```

          this request will collect the standard must gather info and upload it to case `#02527285` using the credentials found in the `caseManagementCreds` secret.

          A more complex example:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: MustGather
          metadata:
            name: full-mustgather
          spec:
            caseID: '02527285'
            caseManagementAccountSecretRef:
              name: case-management-creds
            serviceAccountRef:
              name: must-gather-admin
            mustGatherImages:
            - quay.io/kubevirt/must-gather:latest
            - quay.io/ocs-dev/ocs-must-gather
          ```

          in this example we are using a specific service account (which must have cluster admin permissions as per must-gather requirements) and we are specifying a couple of additional must gather images to be run for the `kubevirt` and `ocs` subsystem. If not specified serviceAccountRef.Name will default to `default`. Also the standard must gather image: `quay.io/openshift/origin-must-gather:latest` is always added by default.
        displayName: Must Gather Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - case_management
        - support
        - must_gather
        links:
        - name: Must Gather Operator
          url: https://github.com/redhat-cop/must-gather-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/must-gather-operator
        maintainers:
        - email: rspazzol@redhat.com'
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/must-gather-operator@sha256:a71e5e25aaa92f03334776fee87316809bf2a46dfb34c497d63b228a194982f2
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/must-gather-operator@sha256:aebef122cdb8409f5a5d70d3cdc585e02272704d57e103553a84bc6fc238e646
        version: 1.1.2
      entries:
      - name: must-gather-operator.v1.1.2
        version: 1.1.2
      - name: must-gather-operator.v1.1.1
        version: 1.1.1
      - name: must-gather-operator.v1.1.0
        version: 1.1.0
      - name: must-gather-operator.v1.0.6
        version: 1.0.6
      - name: must-gather-operator.v1.0.5
        version: 1.0.5
      - name: must-gather-operator.v1.0.4
        version: 1.0.4
      - name: must-gather-operator.v1.0.3
        version: 1.0.3
      - name: must-gather-operator.v1.0.2
        version: 1.0.2
      - name: must-gather-operator.v1.0.1
        version: 1.0.1
      - name: must-gather-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: must-gather-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: t8c-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: t8c-operator.v42.96.0-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"externalDbIP":
            "10.0.2.15","customImageNames": false,"repository": "icr.io/cpopen/turbonomic","tag":"8.18.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-operator@sha256:40791802e2355d7e977c7c039bd6ef1284048fdd2d5122fa72807506adba5d5d
          createdAt: "2023-03-24T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=42.53.0-beta.1 <42.96.0-beta.1'
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints. Turbonomic platform install and configuration
              documentation can be found online here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How do I start?

          Turbonomic platform installation and configuration documentation can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
          Carefully read through the prerequisites before beginning the installation.  Once ready, on the `Details` tab for the Turbonomic Platform Operator, under `Provided APIs`, click `Create instance`.
          For samples of common configurations, refer to sample custom resource YAMLs provided here: https://github.com/turbonomic/t8c-install/tree/master/samples
          Looking to upgrade your current deployment? Refer to documentation here: https://www.ibm.com/docs/en/tarm/latest?topic=version-updating-using-red-hat-openshift-operatorhub

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator-bundle@sha256:839f4ba577ed264f57bff73a7360c8e1ee4eb4c4644f6b7e283c53061cc804e7
        - icr.io/cpopen/t8c-operator@sha256:40791802e2355d7e977c7c039bd6ef1284048fdd2d5122fa72807506adba5d5d
        version: 42.96.0-beta.1
      entries:
      - name: t8c-operator.v42.96.0-beta.1
        version: 42.96.0-beta.1
      name: beta
    - currentCSV: t8c-operator.v42.96.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"externalDbIP":
            "10.0.2.15","customImageNames": false,"repository": "icr.io/cpopen/turbonomic","tag":"8.18.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-operator@sha256:c2d188dde455165c2e9da8c6a8f413dea682021cba62dd990af832d23b03d5ab
          createdAt: "2023-03-24T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=42.53.0 <42.96.0'
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints. Turbonomic platform install and configuration
              documentation can be found online here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How do I start?

          Turbonomic platform installation and configuration documentation can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
          Carefully read through the prerequisites before beginning the installation.  Once ready, on the `Details` tab for the Turbonomic Platform Operator, under `Provided APIs`, click `Create instance`.
          For samples of common configurations, refer to sample custom resource YAMLs provided here: https://github.com/turbonomic/t8c-install/tree/master/samples
          Looking to upgrade your current deployment? Refer to documentation here: https://www.ibm.com/docs/en/tarm/latest?topic=version-updating-using-red-hat-openshift-operatorhub

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/t8c-operator@sha256:c2d188dde455165c2e9da8c6a8f413dea682021cba62dd990af832d23b03d5ab
        - registry.connect.redhat.com/turbonomic/t8c-operator-bundle@sha256:b8c8b56082cf7460e5ec879f8099b1732cc56ac1f3b5321b5c90cccad3db11e2
        version: 42.96.0
      entries:
      - name: t8c-operator.v42.96.0
        version: 42.96.0
      name: stable
    defaultChannel: stable
    packageName: t8c-certified
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operator-kogitocloud: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: kogito-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kogito-operator.v1.44.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "process-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogito-infinispan-infra"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "infinispan.org/v1",
                    "kind": "Infinispan"
                  }
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/kiegroup/kogito-operator:1.44.1
          createdAt: "2019-08-22T13:12:22Z"
          description: Kogito Operator for deployment and management of Kogito services.
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/kogito-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.app.kiegroup.org
            version: v1beta1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.app.kiegroup.org
            version: v1beta1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.app.kiegroup.org
            version: v1beta1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.app.kiegroup.org
            version: v1beta1
        description: |-
          Kogito Operator is designed to deploy Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Creates two kinds of build configuration: Native or JVM. For more information refer to [Native build and deployment](https://docs.jboss.org/kogito/release/latest/html_single/#_native_build_and_deployment) section on our docs
          * Builds a Kogito service from a remote git repository and creates a custom image for the given runtime: Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Installs the [Kogito Data Index Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-data-index-service_kogito-deploying-on-openshift) to enable data index feature for Kogito services.
          * Installs the [Kogito Jobs Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-jobs-service_kogito-deploying-on-openshift) to enable jobs scheduling.

          For Kubernetes deployment of Kogito services, please refer to the section [Deploying Kogito services on Kubernetes](https://docs.jboss.org/kogito/release/latest/html_single/#proc-kogito-deploying-on-kubernetes_kogito-deploying-on-openshift) on our docs.

          **IMPORTANT!** Kogito Operator might need Infinispan Operator and Strimzi to implement persistence and messaging use cases if you do not provide these services beforehand.
          If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the Kogito Operator.
        displayName: Kogito
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://kogito.kie.org/
        - name: Documentation
          url: https://github.com/kiegroup/kogito-operator/blob/main/README.md
        - name: Source
          url: https://github.com/kiegroup/kogito-operator/
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.12.0
        - quay.io/kiegroup/kogito-operator:1.44.1
        - quay.io/openshift-community-operators/kogito-operator@sha256:28cd33562ab56c44d65486984cac7edfbdd1336ced1277f1af7df6c2a8073e3e
        version: 1.44.1
      entries:
      - name: kogito-operator.v1.44.1
        version: 1.44.1
      - name: kogito-operator.v1.43.0
        version: 1.43.0
      - name: kogito-operator.v1.42.0
        version: 1.42.0
      - name: kogito-operator.v1.41.0
        version: 1.41.0
      - name: kogito-operator.v1.40.0
        version: 1.40.0
      - name: kogito-operator.v1.39.0
        version: 1.39.0
      - name: kogito-operator.v1.38.0
        version: 1.38.0
      - name: kogito-operator.v1.37.0
        version: 1.37.0
      - name: kogito-operator.v1.36.0
        version: 1.36.0
      - name: kogito-operator.v1.35.0
        version: 1.35.0
      - name: kogito-operator.v1.34.0
        version: 1.34.0
      - name: kogito-operator.v1.33.0
        version: 1.33.0
      - name: kogito-operator.v1.32.0
        version: 1.32.0
      - name: kogito-operator.v1.31.0
        version: 1.31.0
      - name: kogito-operator.v1.30.0
        version: 1.30.0
      - name: kogito-operator.v1.29.0
        version: 1.29.0
      - name: kogito-operator.v1.28.0
        version: 1.28.0
      - name: kogito-operator.v1.27.0
        version: 1.27.0
      - name: kogito-operator.v1.26.0
        version: 1.26.0
      - name: kogito-operator.v1.25.0
        version: 1.25.0
      - name: kogito-operator.v1.24.0
        version: 1.24.0
      - name: kogito-operator.v1.23.0
        version: 1.23.0
      - name: kogito-operator.v1.22.1
        version: 1.22.1
      - name: kogito-operator.v1.22.0
        version: 1.22.0
      - name: kogito-operator.v1.21.0
        version: 1.21.0
      - name: kogito-operator.v1.20.0
        version: 1.20.0
      - name: kogito-operator.v1.19.0
        version: 1.19.0
      - name: kogito-operator.v1.18.0
        version: 1.18.0
      - name: kogito-operator.v1.17.0
        version: 1.17.0
      - name: kogito-operator.v1.16.1
        version: 1.16.1
      - name: kogito-operator.v1.16.0
        version: 1.16.0
      - name: kogito-operator.v1.15.0
        version: 1.15.0
      - name: kogito-operator.v1.14.0
        version: 1.14.0
      - name: kogito-operator.v1.13.0
        version: 1.13.0
      - name: kogito-operator.v1.12.0
        version: 1.12.0
      - name: kogito-operator.v1.11.1
        version: 1.11.1
      - name: kogito-operator.v1.11.0
        version: 1.11.0
      - name: kogito-operator.v1.10.0
        version: 1.10.0
      - name: kogito-operator.v1.9.1
        version: 1.9.1
      - name: kogito-operator.v1.9.0
        version: 1.9.0
      - name: kogito-operator.v1.8.0
        version: 1.8.0
      - name: kogito-operator.v1.7.0
        version: 1.7.0
      - name: kogito-operator.v1.6.0
        version: 1.6.0
      - name: kogito-operator.v1.5.0
        version: 1.5.0
      - name: kogito-operator.v1.4.0
        version: 1.4.0
      name: 1.x
    - currentCSV: kogito-operator.v1.44.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "process-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogito-infinispan-infra"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "infinispan.org/v1",
                    "kind": "Infinispan"
                  }
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/kiegroup/kogito-operator:1.44.1
          createdAt: "2019-08-22T13:12:22Z"
          description: Kogito Operator for deployment and management of Kogito services.
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/kogito-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.app.kiegroup.org
            version: v1beta1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.app.kiegroup.org
            version: v1beta1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.app.kiegroup.org
            version: v1beta1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.app.kiegroup.org
            version: v1beta1
        description: |-
          Kogito Operator is designed to deploy Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Creates two kinds of build configuration: Native or JVM. For more information refer to [Native build and deployment](https://docs.jboss.org/kogito/release/latest/html_single/#_native_build_and_deployment) section on our docs
          * Builds a Kogito service from a remote git repository and creates a custom image for the given runtime: Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Installs the [Kogito Data Index Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-data-index-service_kogito-deploying-on-openshift) to enable data index feature for Kogito services.
          * Installs the [Kogito Jobs Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-jobs-service_kogito-deploying-on-openshift) to enable jobs scheduling.

          For Kubernetes deployment of Kogito services, please refer to the section [Deploying Kogito services on Kubernetes](https://docs.jboss.org/kogito/release/latest/html_single/#proc-kogito-deploying-on-kubernetes_kogito-deploying-on-openshift) on our docs.

          **IMPORTANT!** Kogito Operator might need Infinispan Operator and Strimzi to implement persistence and messaging use cases if you do not provide these services beforehand.
          If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the Kogito Operator.
        displayName: Kogito
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://kogito.kie.org/
        - name: Documentation
          url: https://github.com/kiegroup/kogito-operator/blob/main/README.md
        - name: Source
          url: https://github.com/kiegroup/kogito-operator/
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.12.0
        - quay.io/kiegroup/kogito-operator:1.44.1
        - quay.io/openshift-community-operators/kogito-operator@sha256:28cd33562ab56c44d65486984cac7edfbdd1336ced1277f1af7df6c2a8073e3e
        version: 1.44.1
      entries:
      - name: kogito-operator.v1.44.1
        version: 1.44.1
      - name: kogito-operator.v1.43.0
        version: 1.43.0
      - name: kogito-operator.v1.42.0
        version: 1.42.0
      - name: kogito-operator.v1.41.0
        version: 1.41.0
      - name: kogito-operator.v1.40.0
        version: 1.40.0
      - name: kogito-operator.v1.39.0
        version: 1.39.0
      - name: kogito-operator.v1.38.0
        version: 1.38.0
      - name: kogito-operator.v1.37.0
        version: 1.37.0
      - name: kogito-operator.v1.36.0
        version: 1.36.0
      - name: kogito-operator.v1.35.0
        version: 1.35.0
      - name: kogito-operator.v1.34.0
        version: 1.34.0
      - name: kogito-operator.v1.33.0
        version: 1.33.0
      - name: kogito-operator.v1.32.0
        version: 1.32.0
      - name: kogito-operator.v1.31.0
        version: 1.31.0
      - name: kogito-operator.v1.30.0
        version: 1.30.0
      - name: kogito-operator.v1.29.0
        version: 1.29.0
      - name: kogito-operator.v1.28.0
        version: 1.28.0
      - name: kogito-operator.v1.27.0
        version: 1.27.0
      - name: kogito-operator.v1.26.0
        version: 1.26.0
      - name: kogito-operator.v1.25.0
        version: 1.25.0
      - name: kogito-operator.v1.24.0
        version: 1.24.0
      - name: kogito-operator.v1.23.0
        version: 1.23.0
      - name: kogito-operator.v1.22.1
        version: 1.22.1
      - name: kogito-operator.v1.22.0
        version: 1.22.0
      - name: kogito-operator.v1.21.0
        version: 1.21.0
      - name: kogito-operator.v1.20.0
        version: 1.20.0
      - name: kogito-operator.v1.19.0
        version: 1.19.0
      - name: kogito-operator.v1.18.0
        version: 1.18.0
      - name: kogito-operator.v1.17.0
        version: 1.17.0
      - name: kogito-operator.v1.16.1
        version: 1.16.1
      - name: kogito-operator.v1.16.0
        version: 1.16.0
      - name: kogito-operator.v1.15.0
        version: 1.15.0
      - name: kogito-operator.v1.14.0
        version: 1.14.0
      - name: kogito-operator.v1.13.0
        version: 1.13.0
      - name: kogito-operator.v1.12.0
        version: 1.12.0
      - name: kogito-operator.v1.11.1
        version: 1.11.1
      - name: kogito-operator.v1.11.0
        version: 1.11.0
      - name: kogito-operator.v1.10.0
        version: 1.10.0
      - name: kogito-operator.v1.9.1
        version: 1.9.1
      - name: kogito-operator.v1.9.0
        version: 1.9.0
      - name: kogito-operator.v1.8.0
        version: 1.8.0
      - name: kogito-operator.v1.7.0
        version: 1.7.0
      - name: kogito-operator.v1.6.0
        version: 1.6.0
      - name: kogito-operator.v1.5.0
        version: 1.5.0
      - name: kogito-operator.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: 1.x
    packageName: kogito-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: model-validation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: model-validation-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ml.sigstore.dev/v1alpha1",
                "kind": "ModelValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "model-validation-operator"
                  },
                  "name": "modelvalidation-sample",
                  "namespace": "model-validation-operator-system"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          containerImage: placeholder
          createdAt: "2025-11-17T11:44:47Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.1-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/model-validation-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ModelValidation is the Schema for the modelvalidations API.
            displayName: Model Validation
            kind: ModelValidation
            name: modelvalidations.ml.sigstore.dev
            version: v1alpha1
        description: Model Validation Operator
        displayName: Model Validation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - model signing
        - signing
        - ai
        links:
        - name: Model Validation Operator
          url: https://github.com/sigstore/model-validation-operator
        maintainers:
        - email: nolear@redhat.com
          name: Nina Bongartz
        - email: ryordan@redhat.com
          name: Rachel Yordan
        - email: ifont@redhat.com
          name: Ivan Font
        - email: asiek@redhat.com
          name: Aleksy Siek
        - email: kconner@redhat.com
          name: Kevin Conner
        maturity: tech-preview
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhtas/model-validation-operator-bundle@sha256:a48214bb858cb4f05c580e0d1e0bd2f246fc8185420d0f6a2a3e39eecabc947f
        - registry.redhat.io/rhtas/model-validation-rhel9-operator@sha256:281c79ee9b27e95a723f478889ea1d7297b152a47e32c58a599b5ea6f046d787
        version: 0.0.2
      entries:
      - name: model-validation-operator.v0.0.2
        version: 0.0.2
      - name: model-validation-operator.v0.0.1
        version: 0.0.1
      name: tech-preview
    defaultChannel: tech-preview
    packageName: model-validation-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: JWS team
      provider-url: ""
    name: jws-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jws-operator.v2.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "web.servers.org/v1alpha1",
                "kind": "WebServer",
                "metadata": {
                  "name": "webserver-example"
                },
                "spec": {
                  "applicationName": "webapp",
                  "replicas": 1,
                  "useInsightsClient": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/jboss-webserver-5/jws5-rhel8-operator@sha256:ba8fb47eba0a1c2aca35ff051f576c7ef3204052965794db7ee234358d029263
          createdAt: "2025-11-19T22:24:40.914776Z"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat JBoss Web Server",
            "Red Hat Runtimes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/web-servers/jws-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Web Server is the schema for the webservers API
            displayName: Web Server
            kind: WebServer
            name: webservers.web.servers.org
            version: v1alpha1
        description: WebServer operator can manage JBoss Web Server images.
        displayName: WebServer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - WebServer
        - JBoss
        links:
        - name: Jws Operator
          url: https://jws-operator.domain
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: JWS team
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        - registry.redhat.io/insights-runtimes-tech-preview/runtimes-inventory-rhel8-operator@sha256:58e01d11c3d30abc5b0ee3795511bd04e39aea21e2853b4f4cc6d1c8a2bd7bb0
        - registry.redhat.io/jboss-webserver-5/jws5-operator-bundle@sha256:bbd477f0b3ea615bb0342a11656be719c61e1f9bccb3235e071d8590944334dd
        - registry.redhat.io/jboss-webserver-5/jws5-rhel8-operator@sha256:ba8fb47eba0a1c2aca35ff051f576c7ef3204052965794db7ee234358d029263
        version: 2.2.1
      entries:
      - name: jws-operator.v2.2.1
        version: 2.2.1
      - name: jws-operator.v2.2.0
        version: 2.2.0
      - name: jws-operator.v2.1.3
        version: 2.1.3
      - name: jws-operator.v2.1.2
        version: 2.1.2
      - name: jws-operator.v2.1.1
        version: 2.1.1
      - name: jws-operator.v2.1.0
        version: 2.1.0
      - name: jws-operator.v2.0.16
        version: 2.0.16
      - name: jws-operator.v2.0.15
        version: 2.0.15
      - name: jws-operator.v2.0.14
        version: 2.0.14
      - name: jws-operator.v2.0.13
        version: 2.0.13
      - name: jws-operator.v2.0.12
        version: 2.0.12
      - name: jws-operator.v2.0.11
        version: 2.0.11
      - name: jws-operator.v2.0.10
        version: 2.0.10
      - name: jws-operator.v2.0.9
        version: 2.0.9
      - name: jws-operator.v2.0.8
        version: 2.0.8
      - name: jws-operator.v2.0.7
        version: 2.0.7
      - name: jws-operator.v2.0.6
        version: 2.0.6
      - name: jws-operator.v2.0.5
        version: 2.0.5
      - name: jws-operator.v2.0.4
        version: 2.0.4
      - name: jws-operator.v2.0.3
        version: 2.0.3
      - name: jws-operator.v2.0.2
        version: 2.0.2
      - name: jws-operator.v2.0.1
        version: 2.0.1
      name: alpha
    defaultChannel: alpha
    packageName: jws-operator
    provider:
      name: JWS team
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Storage
      provider-url: https://github.com/red-hat-storage
    name: odf-external-snapshotter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-external-snapshotter-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:45:38Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: VolumeGroupSnapshotClass
            name: volumegroupsnapshotclasses.groupsnapshot.storage.openshift.io
            version: v1beta1
          - kind: VolumeGroupSnapshotContent
            name: volumegroupsnapshotcontents.groupsnapshot.storage.openshift.io
            version: v1beta1
          - kind: VolumeGroupSnapshot
            name: volumegroupsnapshots.groupsnapshot.storage.openshift.io
            version: v1beta1
        description: Snapshot Controller provides the snapshot controller for managing
          volume group snapshots
        displayName: Snapshot Controller
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - odf-external-snapshotter-operator
        links:
        - name: Snapshot Controller
          url: https://github.com/red-hat-storage/external-snapshotter
        maturity: GA
        provider:
          name: Red Hat Storage
          url: https://github.com/red-hat-storage
        relatedImages:
        - registry.redhat.io/odf4/odf-external-snapshotter-operator-bundle@sha256:6d325fd5eedfac439e75c6d2cfbcf419b3aa1ba8930cc11f49d654b5b06efb4d
        - registry.redhat.io/odf4/odf-external-snapshotter-rhel9-operator@sha256:0303afb90081cbc5a586a0fa9e30b897096b176d435053d9bf45a3c0f37671a9
        version: 4.20.4-rhodf
      entries:
      - name: odf-external-snapshotter-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-external-snapshotter-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-external-snapshotter-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-external-snapshotter-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-external-snapshotter-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-external-snapshotter-operator
    provider:
      name: Red Hat Storage
      url: https://github.com/red-hat-storage
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      operatorframework.io/os.zos: supported
      provider: Red Hat
      provider-url: ""
    name: red-hat-hawtio-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: red-hat-hawtio-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace",
                  "version": 1.12
                }
              },
              {
                "apiVersion": "hawt.io/v2",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24,
                    "internalSSL": true
                  },
                  "healthChecks": {
                    "gatewayLivenessPeriod": 120,
                    "gatewayReadinessPeriod": 30,
                    "onlineLivenessPeriod": 5,
                    "onlineReadinessPeriod": 10
                  },
                  "logging": {
                    "gatewayLogLevel": "info",
                    "maskIPAddresses": "false",
                    "onlineLogLevel": "info"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
          createdAt: "2025-11-24T18:05:50Z"
          description: HawtIO eases the discovery and management of Java applications
            deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HawtIO eases the discovery and management of hawtio-enabled
              applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v2
        description: |
          Red Hat build of HawtIO
          ==============

          HawtIO eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between HawtIO and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#agents-jvm).
        displayName: HawtIO Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: HawtIO Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The HawtIO team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:73867beab7034186a5f41c4799584a3c3f70e1825d7a034a0b2e9c262846e551
        - registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
        version: 1.3.0
      entries:
      - name: red-hat-hawtio-operator.v1.3.0
        version: 1.3.0
      - name: red-hat-hawtio-operator.v1.2.1
        version: 1.2.1
      - name: red-hat-hawtio-operator.v1.2.0
        version: 1.2.0
      - name: red-hat-hawtio-operator.v1.2.0-0.1754874242.p
        version: 1.2.0+0.1754874242.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754338551.p
        version: 1.2.0+0.1754338551.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754317392.p
        version: 1.2.0+0.1754317392.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1753863723.p
        version: 1.2.0+0.1753863723.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752679472.p
        version: 1.2.0+0.1752679472.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752452299.p
        version: 1.2.0+0.1752452299.p
      - name: red-hat-hawtio-operator.v1.1.1
        version: 1.1.1
      - name: red-hat-hawtio-operator.v1.1.0
        version: 1.1.0
      - name: red-hat-hawtio-operator.v1.1.0-0.1742200932.p
        version: 1.1.0+0.1742200932.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1740358952.p
        version: 1.1.0+0.1740358952.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739994212.p
        version: 1.1.0+0.1739994212.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739992853.p
        version: 1.1.0+0.1739992853.p
      - name: red-hat-hawtio-operator.v1.0.3
        version: 1.0.3
      - name: red-hat-hawtio-operator.v1.0.2
        version: 1.0.2
      - name: red-hat-hawtio-operator.v1.0.1
        version: 1.0.1
      - name: red-hat-hawtio-operator.v1.0.0
        version: 1.0.0
      name: latest
    - currentCSV: red-hat-hawtio-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace",
                  "version": 1.12
                }
              },
              {
                "apiVersion": "hawt.io/v2",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24,
                    "internalSSL": true
                  },
                  "healthChecks": {
                    "gatewayLivenessPeriod": 120,
                    "gatewayReadinessPeriod": 30,
                    "onlineLivenessPeriod": 5,
                    "onlineReadinessPeriod": 10
                  },
                  "logging": {
                    "gatewayLogLevel": "info",
                    "maskIPAddresses": "false",
                    "onlineLogLevel": "info"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
          createdAt: "2025-11-24T18:05:50Z"
          description: HawtIO eases the discovery and management of Java applications
            deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HawtIO eases the discovery and management of hawtio-enabled
              applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v2
        description: |
          Red Hat build of HawtIO
          ==============

          HawtIO eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between HawtIO and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#agents-jvm).
        displayName: HawtIO Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: HawtIO Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The HawtIO team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:73867beab7034186a5f41c4799584a3c3f70e1825d7a034a0b2e9c262846e551
        - registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
        version: 1.3.0
      entries:
      - name: red-hat-hawtio-operator.v1.3.0
        version: 1.3.0
      - name: red-hat-hawtio-operator.v1.2.1
        version: 1.2.1
      - name: red-hat-hawtio-operator.v1.2.0
        version: 1.2.0
      - name: red-hat-hawtio-operator.v1.2.0-0.1754874242.p
        version: 1.2.0+0.1754874242.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754338551.p
        version: 1.2.0+0.1754338551.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754317392.p
        version: 1.2.0+0.1754317392.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1753863723.p
        version: 1.2.0+0.1753863723.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752679472.p
        version: 1.2.0+0.1752679472.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752452299.p
        version: 1.2.0+0.1752452299.p
      - name: red-hat-hawtio-operator.v1.1.1
        version: 1.1.1
      - name: red-hat-hawtio-operator.v1.1.0
        version: 1.1.0
      - name: red-hat-hawtio-operator.v1.1.0-0.1742200932.p
        version: 1.1.0+0.1742200932.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1740358952.p
        version: 1.1.0+0.1740358952.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739994212.p
        version: 1.1.0+0.1739994212.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739992853.p
        version: 1.1.0+0.1739992853.p
      - name: red-hat-hawtio-operator.v1.0.3
        version: 1.0.3
      - name: red-hat-hawtio-operator.v1.0.2
        version: 1.0.2
      - name: red-hat-hawtio-operator.v1.0.1
        version: 1.0.1
      - name: red-hat-hawtio-operator.v1.0.0
        version: 1.0.0
      name: stable-v1
    - currentCSV: red-hat-hawtio-operator.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace",
                  "version": 1.12
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/rhbac-4/hawtio-rhel8-operator@sha256:f04d81d24c757db7b678464382ad8c5182b1580e714123a9f4f5fc9fbd9b8c57
          createdAt: "2024-01-30T12:18:50Z"
          description: HawtIO eases the discovery and management of Java applications
            deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HawtIO eases the discovery and management of hawtio-enabled
              applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Red Hat build of HawtIO
          ==============

          HawtIO eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between HawtIO and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#agents-jvm).
        displayName: HawtIO Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: HawtIO Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The HawtIO team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:0ee0bd2449f183277af845e312257b4a1ced4de865831b15e1758a397d8d29eb
        - registry.redhat.io/rhbac-4/hawtio-rhel8-operator@sha256:f04d81d24c757db7b678464382ad8c5182b1580e714123a9f4f5fc9fbd9b8c57
        version: 1.0.3
      entries:
      - name: red-hat-hawtio-operator.v1.0.3
        version: 1.0.3
      - name: red-hat-hawtio-operator.v1.0.2
        version: 1.0.2
      - name: red-hat-hawtio-operator.v1.0.1
        version: 1.0.1
      - name: red-hat-hawtio-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    defaultChannel: stable-v1
    packageName: red-hat-hawtio-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CrowdStrike
      provider-url: https://crowdStrike.com
    name: falcon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: falcon-operator.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconContainer",
                "metadata": {
                  "name": "falcon-sidecar-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "sidecar"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconNodeSensor",
                "metadata": {
                  "name": "falcon-node-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "daemonset"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Security,Monitoring
          containerImage: quay.io/crowdstrike/falcon-operator:0.8.1
          createdAt: "2024-06-06T10:00:00Z"
          description: '[DEPRECATED] Use the CrowdStrike Falcon Operator from the
            certified channel instead'
          operatorframework.io/suggested-namespace: falcon-operator
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/CrowdStrike/falcon-operator
          support: Community Only
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FalconContainer is the Schema for the falconcontainers API
            displayName: Falcon Container
            kind: FalconContainer
            name: falconcontainers.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconNodeSensor is the Schema for the falconnodesensors
              API
            displayName: Falcon Node Sensor
            kind: FalconNodeSensor
            name: falconnodesensors.falcon.crowdstrike.com
            version: v1alpha1
        description: |-
          ## Deprecated
          This CrowdStrike community operator is deprecated, use the CrowdStrike Falcon Operator from the certified channel instead.

          ## About the CrowdStrike Falcon Operator
          The CrowdStrike Falcon Operator deploys CrowdStrike Falcon Workload Protection to the cluster. The operator exposes 2 custom resources that allows you to deploy either the Falcon Container Sensor or Falcon Node Sensor.

          ## About Custom Resources

          | Custom Resource                                       | Description                                                      |
          | :--------                                             | :------------                                                    |
          | [FalconContainer](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/container/README.md) | Manages installation of Falcon Container Sensor on the cluster   |
          | [FalconNodeSensor](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/node/README.md)     | Manages installation of Falcon Linux Sensor on the cluster nodes |

          ## Installation and Deployment

          For installation and deployment of the CrowdStrike Falcon Operator and its Custom Resources, please read the [Installation and Deployment Guide](./docs/install_guide.md) and choose the deployment method that is right for your target environment.

          ## Getting Help
          If you encounter any issues while using the Falcon Operator, you can create an issue on our [Github repo](https://github.com/CrowdStrike/falcon-operator) for bugs, enhancements, or other requests.

          ## Contributing
          You can contribute by:

          * Raising any issues you find using Falcon Operator
          * Fixing issues by opening [Pull Requests](https://github.com/CrowdStrike/falcon-operator/pulls)
          * Improving documentation
          * Talking about the CrowdStrike Falcon Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/CrowdStrike/falcon-operator/issues).

          ## Additional Resources
           - CrowdStrike Container Security: [Product Page](https://www.crowdstrike.com/products/cloud-security/falcon-cloud-workload-protection/container-security/)
           - So You Think Your Containers Are Secure? Four Steps to Ensure a Secure Container Deployment: [Blog Post](https://www.crowdstrike.com/blog/four-steps-to-ensure-a-secure-containter-deployment/)
           - Container Security With CrowdStrike: [Blog Post](https://www.crowdstrike.com/blog/tech-center/container-security/)
           - To learn more about Falcon Container Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/support/documentation/146/falcon-container-sensor-for-linux), [Release Notes](https://falcon.crowdstrike.com/support/news/release-notes-falcon-container-sensor-for-linux)
           - To learn more about Falcon Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/documentation/20/falcon-sensor-for-linux#kubernetes-support)
           - [Developer Documentation](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/developer_guide.md)
        displayName: '[DEPRECATED] CrowdStrike Operator'
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - runtime-protection
        links:
        - name: Falcon Operator
          url: https://github.com/CrowdStrike/falcon-operator
        maintainers:
        - email: integrations@crowdstrike.com
          name: CrowdStrike Solutions Architecture
        maturity: alpha
        minKubeVersion: 1.17.0
        provider:
          name: CrowdStrike
          url: https://crowdStrike.com
        relatedImages:
        - quay.io/crowdstrike/falcon-operator:0.8.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.12.0
        - quay.io/community-operator-pipeline-prod/falcon-operator@sha256:3916adf5083c83838564b1ed039decbadb2efa4ec288699ef0137a66983a3cc4
        version: 0.8.2
      entries:
      - name: falcon-operator.v0.8.2
        version: 0.8.2
      - name: falcon-operator.v0.8.1
        version: 0.8.1
      name: alpha
    defaultChannel: alpha
    packageName: falcon-operator
    provider:
      name: CrowdStrike
      url: https://crowdStrike.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CNCF
      provider-url: ""
    name: jaeger
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jaeger-operator.v1.65.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "jaegertracing.io/v1",
                "kind": "Jaeger",
                "metadata": {
                  "name": "my-jaeger"
                },
                "spec": {
                  "strategy": "allInOne"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing
          certified: "false"
          containerImage: quay.io/jaegertracing/jaeger-operator:1.65.0
          createdAt: "2025-01-22T20:40:19Z"
          description: Provides tracing, monitoring and troubleshooting for microservices-based
            distributed systems
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/jaegertracing/jaeger-operator
          support: Jaeger Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Jaeger is the Schema for the jaegers API
            displayName: Jaeger
            kind: Jaeger
            name: jaegers.jaegertracing.io
            version: v1
        description: |-
          Jaeger, inspired by [Dapper](https://research.google.com/pubs/pub36356.html) and [OpenZipkin](http://zipkin.io/), is a distributed tracing system released as open source by Uber Technologies. It is used for monitoring and troubleshooting microservices-based distributed systems.
          ### Core capabilities
          Jaeger is used for monitoring and troubleshooting microservices-based distributed systems, including:
          * Distributed context propagation
          * Distributed transaction monitoring
          * Root cause analysis
          * Service dependency analysis
          * Performance / latency optimization
          * OpenTracing compatible data model
          * Multiple storage backends: Badger, Cassandra, Elasticsearch, Memory.
          ### Operator features
          * **Multiple modes** - Supports `allInOne`, `production` and `streaming` [modes of deployment](https://www.jaegertracing.io/docs/latest/operator/#deployment-strategies).
          * **Configuration** - The Operator manages [configuration information](https://www.jaegertracing.io/docs/latest/operator/#configuring-the-custom-resource) when installing Jaeger instances.
          * **Storage** - [Configure storage](https://www.jaegertracing.io/docs/latest/operator/#storage-options) used by Jaeger. By default, `memory` is used. Other options include `badger`, `cassandra` or `elasticsearch`. On OpenShift, the operator can delegate creation of an Elasticsearch cluster to the Elasticsearch Operator if deployed.
          * **Agent** - can be deployed as [sidecar](https://www.jaegertracing.io/docs/latest/operator/#auto-injecting-jaeger-agent-sidecars) (default) and/or [daemonset](https://www.jaegertracing.io/docs/latest/operator/#installing-the-agent-as-daemonset).
          * **UI** - Optionally setup ingress (Kubernetes) or secure route (OpenShift) to provide [access to the Jaeger UI](https://www.jaegertracing.io/docs/latest/operator/#accessing-the-jaeger-console-ui).
          ### Before you start
          1. Ensure that the appropriate storage solution, that will be used by the Jaeger instance, is available and configured.
          2. If intending to deploy an Elasticsearch cluster via the Jaeger custom resource, then the Elasticsearch Operator must first be installed.
          ### Troubleshooting
          * https://www.jaegertracing.io/docs/latest/troubleshooting/
        displayName: Community Jaeger Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tracing
        - monitoring
        - troubleshooting
        links:
        - name: Jaeger Operator Source Code
          url: https://github.com/jaegertracing/jaeger-operator
        maintainers:
        - email: jaeger-tracing@googlegroups.com
          name: Jaeger Google Group
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: CNCF
        relatedImages:
        - quay.io/community-operator-pipeline-prod/jaeger@sha256:907dfe1d01f73c8a385da3661ddbe03db31e0b9ad6f5ab2336460402d0d915a0
        - quay.io/jaegertracing/jaeger-operator:1.65.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 1.65.0
      entries:
      - name: jaeger-operator.v1.65.0
        version: 1.65.0
      - name: jaeger-operator.v1.62.0
        version: 1.62.0
      - name: jaeger-operator.v1.61.0
        version: 1.61.0
      - name: jaeger-operator.v1.60.0
        version: 1.60.0
      - name: jaeger-operator.v1.59.0
        version: 1.59.0
      - name: jaeger-operator.v1.57.0
        version: 1.57.0
      - name: jaeger-operator.v1.56.0
        version: 1.56.0
      - name: jaeger-operator.v1.55.0
        version: 1.55.0
      - name: jaeger-operator.v1.53.0
        version: 1.53.0
      - name: jaeger-operator.v1.52.0
        version: 1.52.0
      - name: jaeger-operator.v1.51.0
        version: 1.51.0
      - name: jaeger-operator.v1.49.0
        version: 1.49.0
      - name: jaeger-operator.v1.48.1
        version: 1.48.1
      - name: jaeger-operator.v1.47.0
        version: 1.47.0
      - name: jaeger-operator.v1.46.0
        version: 1.46.0
      - name: jaeger-operator.v1.45.0
        version: 1.45.0
      - name: jaeger-operator.v1.44.0
        version: 1.44.0
      - name: jaeger-operator.v1.43.0
        version: 1.43.0
      - name: jaeger-operator.v1.42.0
        version: 1.42.0
      - name: jaeger-operator.v1.41.1
        version: 1.41.1
      - name: jaeger-operator.v1.41.0
        version: 1.41.0
      - name: jaeger-operator.v1.40.0
        version: 1.40.0
      - name: jaeger-operator.v1.39.0
        version: 1.39.0
      - name: jaeger-operator.v1.38.1
        version: 1.38.1
      - name: jaeger-operator.v1.38.0
        version: 1.38.0
      - name: jaeger-operator.v1.37.0
        version: 1.37.0
      - name: jaeger-operator.v1.36.0
        version: 1.36.0
      - name: jaeger-operator.v1.35.0
        version: 1.35.0
      - name: jaeger-operator.v1.34.1
        version: 1.34.1
      - name: jaeger-operator.v1.34.0
        version: 1.34.0
      - name: jaeger-operator.v1.33.0
        version: 1.33.0
      - name: jaeger-operator.v1.32.0
        version: 1.32.0
      - name: jaeger-operator.v1.31.0
        version: 1.31.0
      - name: jaeger-operator.v1.30.0
        version: 1.30.0
      - name: jaeger-operator.v1.29.1
        version: 1.29.1
      - name: jaeger-operator.v1.25.0
        version: 1.25.0
      - name: jaeger-operator.v1.24.0
        version: 1.24.0
      name: stable
    defaultChannel: stable
    packageName: jaeger
    provider:
      name: CNCF
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: StreamNative
      provider-url: https://streamnative.io
    name: function-mesh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: function-mesh.v0.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "Function",
                "metadata": {
                  "name": "java-function-sample",
                  "namespace": "default"
                },
                "spec": {
                  "autoAck": true,
                  "className": "org.apache.pulsar.functions.api.examples.ExclamationFunction",
                  "clusterName": "test-pulsar",
                  "forwardSourceMessageProperty": true,
                  "input": {
                    "topics": [
                      "persistent://public/default/java-function-input-topic"
                    ],
                    "typeClassName": "java.lang.String"
                  },
                  "java": {
                    "extraDependenciesDir": "random-dir/",
                    "jar": "pulsar-functions-api-examples.jar",
                    "jarLocation": "public/default/nlu-test-java-function"
                  },
                  "logTopic": "persistent://public/default/logging-function-logs",
                  "maxPendingAsyncRequests": 1000,
                  "maxReplicas": 5,
                  "output": {
                    "topic": "persistent://public/default/java-function-output-topic",
                    "typeClassName": "java.lang.String"
                  },
                  "pod": {
                    "annotations": {
                      "managed-function": "true"
                    },
                    "env": [
                      {
                        "name": "EXAMPLE_VARIABLE",
                        "value": "exampleValue"
                      }
                    ],
                    "imagePullSecrets": [
                      {
                        "name": "regcred"
                      }
                    ],
                    "initContainers": [
                      {
                        "command": [
                          "sh",
                          "-c",
                          "echo The app is running! \u0026\u0026 sleep 30"
                        ],
                        "image": "busybox:1.28",
                        "name": "init-function"
                      }
                    ],
                    "labels": {
                      "locaction": "mtv"
                    },
                    "sidecars": [
                      {
                        "command": [
                          "sh",
                          "-c",
                          "echo The app is running! \u0026\u0026 sleep 30000"
                        ],
                        "image": "busybox:1.28",
                        "name": "sidecar-function"
                      }
                    ],
                    "volumes": [
                      {
                        "emptyDir": {},
                        "name": "cache-volume"
                      }
                    ]
                  },
                  "pulsar": {
                    "authSecret": "test-auth",
                    "pulsarConfig": "test-pulsar",
                    "tlsSecret": "test-tls"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "0.2",
                      "memory": "1.1G"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "1G"
                    }
                  },
                  "secretsMap": {
                    "name": {
                      "key": "username",
                      "path": "test-secret"
                    },
                    "pwd": {
                      "key": "password",
                      "path": "test-secret"
                    }
                  },
                  "volumeMounts": [
                    {
                      "mountPath": "/cache",
                      "name": "cache-volume"
                    }
                  ]
                }
              },
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "FunctionMesh",
                "metadata": {
                  "name": "functionmesh-sample"
                },
                "spec": {
                  "functions": [
                    {
                      "autoAck": true,
                      "className": "org.apache.pulsar.functions.api.examples.ExclamationFunction",
                      "clusterName": "test-pulsar",
                      "forwardSourceMessageProperty": true,
                      "input": {
                        "topics": [
                          "persistent://public/default/functionmesh-input-topic"
                        ],
                        "typeClassName": "java.lang.String"
                      },
                      "java": {
                        "jar": "pulsar-functions-api-examples.jar",
                        "jarLocation": "public/default/nlu-test-functionmesh-ex1"
                      },
                      "logTopic": "persistent://public/default/logging-function-log",
                      "maxReplicas": 1,
                      "name": "ex1",
                      "output": {
                        "topic": "persistent://public/default/mid-topic",
                        "typeClassName": "java.lang.String"
                      },
                      "pulsar": {
                        "pulsarConfig": "mesh-test-pulsar"
                      },
                      "replicas": 1,
                      "resources": {
                        "limits": {
                          "cpu": "0.2",
                          "memory": "1.1G"
                        },
                        "requests": {
                          "cpu": "0.1",
                          "memory": "1G"
                        }
                      }
                    },
                    {
                      "autoAck": true,
                      "className": "org.apache.pulsar.functions.api.examples.ExclamationFunction",
                      "clusterName": "test-pulsar",
                      "forwardSourceMessageProperty": true,
                      "input": {
                        "topics": [
                          "persistent://public/default/mid-topic"
                        ],
                        "typeClassName": "java.lang.String"
                      },
                      "java": {
                        "jar": "pulsar-functions-api-examples.jar",
                        "jarLocation": "public/default/nlu-test-functionmesh-ex2"
                      },
                      "logTopic": "persistent://public/default/logging-function-logs",
                      "maxReplicas": 1,
                      "name": "ex2",
                      "output": {
                        "topic": "persistent://public/default/functionmesh-output-topic",
                        "typeClassName": "java.lang.String"
                      },
                      "pulsar": {
                        "pulsarConfig": "mesh-test-pulsar"
                      },
                      "replicas": 1,
                      "resources": {
                        "limits": {
                          "cpu": "0.2",
                          "memory": "1.1G"
                        },
                        "requests": {
                          "cpu": "0.1",
                          "memory": "1G"
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "Sink",
                "metadata": {
                  "name": "sink-sample"
                },
                "spec": {
                  "autoAck": true,
                  "className": "org.apache.pulsar.io.elasticsearch.ElasticSearchSink",
                  "clusterName": "test-pulsar",
                  "image": "streamnative/pulsar-io-elastic-search:2.10.0.0-rc10",
                  "input": {
                    "topics": [
                      "persistent://public/default/input"
                    ],
                    "typeClassName": "[B"
                  },
                  "java": {
                    "jar": "connectors/pulsar-io-elastic-search-2.10.0.0-rc10.nar",
                    "jarLocation": ""
                  },
                  "maxReplicas": 1,
                  "pulsar": {
                    "pulsarConfig": "test-sink"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "0.2",
                      "memory": "1.1G"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "1G"
                    }
                  },
                  "sinkConfig": {
                    "elasticSearchUrl": "http://quickstart-es-http.default.svc.cluster.local:9200",
                    "indexName": "my_index",
                    "password": "wJ757TmoXEd941kXm07Z2GW3",
                    "typeName": "doc",
                    "username": "elastic"
                  }
                }
              },
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "Source",
                "metadata": {
                  "name": "source-sample"
                },
                "spec": {
                  "className": "org.apache.pulsar.io.debezium.mongodb.DebeziumMongoDbSource",
                  "clusterName": "test-pulsar",
                  "forwardSourceMessageProperty": true,
                  "image": "streamnative/pulsar-io-debezium-mongodb:2.10.0.0-rc10",
                  "java": {
                    "jar": "connectors/pulsar-io-debezium-mongodb-2.10.0.0-rc10.nar",
                    "jarLocation": ""
                  },
                  "maxReplicas": 1,
                  "output": {
                    "producerConf": {
                      "maxPendingMessages": 1000,
                      "maxPendingMessagesAcrossPartitions": 50000,
                      "useThreadLocalProducers": true
                    },
                    "topic": "persistent://public/default/destination",
                    "typeClassName": "org.apache.pulsar.common.schema.KeyValue"
                  },
                  "pulsar": {
                    "pulsarConfig": "test-source"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "0.2",
                      "memory": "1.1G"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "1G"
                    }
                  },
                  "sourceConfig": {
                    "database.whitelist": "inventory",
                    "mongodb.hosts": "rs0/mongo-dbz-0.mongo.default.svc.cluster.local:27017,rs0/mongo-dbz-1.mongo.default.svc.cluster.local:27017,rs0/mongo-dbz-2.mongo.default.svc.cluster.local:27017",
                    "mongodb.name": "dbserver1",
                    "mongodb.password": "dbz",
                    "mongodb.task.id": "1",
                    "mongodb.user": "debezium",
                    "pulsar.service.url": "pulsar://test-pulsar-broker.default.svc.cluster.local:6650"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/streamnativeio/function-mesh@sha256:3e13e5cc3ac4d7387ee0adc02cb5183aad6cf2301f76ab230482609c4da1c0b7
          createdAt: "2022-10-27T07:49:28Z"
          description: The Function Mesh Operator manages the Pulsar Functions and
            Connectors deployed on a Kubernetes cluster.
          olm.properties: '[{"type":"olm.maxOpenShiftVersion","value":"4.8"}]'
          olm.skipRange: <0.7.0
          operatorhub.io/ui-metadata-max-k8s-version: "1.21"
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/streamnative/function-mesh
          support: StreamNative
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FunctionMesh is the Schema for the functionmeshes API
            displayName: Mesh
            kind: FunctionMesh
            name: functionmeshes.compute.functionmesh.io
            version: v1alpha1
          - description: Function is the Schema for the functions API
            displayName: Function
            kind: Function
            name: functions.compute.functionmesh.io
            version: v1alpha1
          - description: Sink is the Schema for the sinks API
            displayName: Sink
            kind: Sink
            name: sinks.compute.functionmesh.io
            version: v1alpha1
          - description: Source is the Schema for the sources API
            displayName: Source
            kind: Source
            name: sources.compute.functionmesh.io
            version: v1alpha1
        description: |
          [Function Mesh](https://functionmesh.io/) is a serverless framework purpose-built for stream processing applications. It brings powerful event-streaming capabilities to your applications by orchestrating multiple [Pulsar Functions](http://pulsar.apache.org/docs/en/next/functions-overview/) and [Pulsar IO connectors](http://pulsar.apache.org/docs/en/next/io-overview/) for complex stream processing jobs on Kubernetes.
          Prerequisites:
          - Install cert-manager operator first.
        displayName: Function Mesh Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - pulsar
        - function-mesh
        - serverless
        - pulsar-functions
        - pulsar-io-connectors
        - StreamNative
        links:
        - name: Function Mesh
          url: https://function-mesh.io
        maintainers:
        - email: function-mesh@streamnative.io
          name: Function Mesh
        maturity: alpha
        minKubeVersion: v1.17.0
        provider:
          name: StreamNative
          url: https://streamnative.io
        relatedImages:
        - registry.connect.redhat.com/streamnative/function-mesh-bundle@sha256:e4377187c20a70d768a253bc0794f3152aa6fcee22ddbf2fc88f45756e9681fe
        - docker.cloudsmith.io/streamnative/mirrors/gcr.io/kubebuilder/kube-rbac-proxy@sha256:67ecb332573384515406ebd71816781366b70adb0eb66345e5980e92603373e1
        - quay.io/streamnativeio/function-mesh@sha256:3e13e5cc3ac4d7387ee0adc02cb5183aad6cf2301f76ab230482609c4da1c0b7
        version: 0.7.0
      entries:
      - name: function-mesh.v0.7.0
        version: 0.7.0
      name: alpha
    defaultChannel: alpha
    packageName: function-mesh
    provider:
      name: StreamNative
      url: https://streamnative.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: aiu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aiu-operator.v2.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "aiu.ibm.com/v2",
                "kind": "AiuClusterPolicy",
                "metadata": {
                  "labels": {
                    "operator-version": "2.3.3"
                  },
                  "name": "aiuclusterpolicy"
                },
                "spec": {
                  "devicePlugin": {
                    "configName": "senlib_config.json",
                    "configPath": "/etc/aiu",
                    "image": "aiu-device-plugin",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.1"
                  },
                  "experimentalMode": [
                    "perDeviceAllocation",
                    "topologyAwareAllocation",
                    "externalDeviceReservation"
                  ],
                  "featureDiscovery": {
                    "image": "aiu-feature-discovery",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.0"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "aiu-exporter",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.0"
                  },
                  "podValidator": {
                    "enabled": true,
                    "image": "aiu-webhook-validator",
                    "imagePullPolicy": "Always",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.0"
                  },
                  "scheduler": {
                    "image": "aiu-kube-scheduler-ocp-4.16",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.2"
                  }
                }
              },
              {
                "apiVersion": "aiu.ibm.com/v2",
                "kind": "AiuNodeState",
                "metadata": {
                  "labels": {
                    "operator-version": "2.3.3"
                  },
                  "name": "aiunodestate"
                },
                "spec": {
                  "nodeName": ""
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: icr.io/ibmaiu/release_2025_03/aiu-operator@sha256:2ea8268e94d44581b3490cd4bbbd5525359073129bae42c7f007c05727afe1c3
          createdAt: "2025-04-03T01:19:38Z"
          description: operator for AIU devices
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: use with IBM AIU
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["aiunodestates.aiu.ibm.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AiuClusterPolicy is the Schema for the AIU API
            displayName: AIU Cluster Policy
            kind: AiuClusterPolicy
            name: aiuclusterpolicies.aiu.ibm.com
            version: v2
          - description: AiuNodeState is the Schema for the AiuNodeState API
            displayName: AIU Node State
            kind: AiuNodeState
            name: aiunodestates.aiu.ibm.com
            version: v2
        description: operator for AIU devices
        displayName: AIU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - app
        - operator
        links:
        - name: Aiu Operator
          url: https://aiu-operator.domain
        maintainers:
        - email: tmishina@jp.ibm.com
          name: Takuya Mishina
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: laurentiu.bradin@ibm.com
          name: Laurentiu Bradin
        - email: htchang@us.ibm.com
          name: Ted Chang
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: IBM
        relatedImages:
        - icr.io/ibmaiu/release_2025_03/aiu-operator@sha256:2ea8268e94d44581b3490cd4bbbd5525359073129bae42c7f007c05727afe1c3
        - registry.connect.redhat.com/aiu/aiu-operator-bundle@sha256:0cda4be8f74da7524a72c961c8762927c66e145d82e59af92073a54179bc9936
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fcb3b8ab93dfb5ef2b290e39ea5899dbb5e0c6d430370b8d281e59e74d94d749
        version: 2.3.3
      entries:
      - name: aiu-operator.v2.3.3
        version: 2.3.3
      name: stable-v2.3
    defaultChannel: stable-v2.3
    packageName: aiu-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: authorino-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: authorino-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/authorino-operator:v0.8.0
          createdAt: 2021-12-08T10-00-00Z
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta1
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: The operator to manage instances of Authorino
        displayName: Authorino Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: Authorino Operator
          url: https://github.com/Kuadrant/authorino-operator
        - name: Authorino
          url: https://github.com/Kuadrant/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/kuadrant/authorino-operator:v0.8.0
        - quay.io/openshift-community-operators/authorino-operator@sha256:8fe34f94f87c567401cc2bbbbcc3a3e719364b80a2b17851496f86c85af5c09a
        version: 0.8.0
      entries:
      - name: authorino-operator.v0.8.0
        version: 0.8.0
      - name: authorino-operator.v0.7.0
        version: 0.7.0
      - name: authorino-operator.v0.6.0
        version: 0.6.0
      - name: authorino-operator.v0.5.0
        version: 0.5.0
      - name: authorino-operator.v0.4.1
        version: 0.4.1
      - name: authorino-operator.v0.4.0
        version: 0.4.0
      - name: authorino-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: authorino-operator.v0.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "authorino.kuadrant.io/v1beta2",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "authorino.kuadrant.io/v1beta3",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/authorino-operator:v0.16.0
          createdAt: "2024-11-25T13:22:24Z"
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta2
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta3
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: The operator to manage instances of Authorino
        displayName: Authorino Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: Authorino Operator
          url: https://github.com/Kuadrant/authorino-operator
        - name: Authorino
          url: https://github.com/Kuadrant/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/authorino-operator@sha256:92ad93f27c34f1406fc05a248d04709b0109adf37f2f9424f48fc6a73d9d359e
        - quay.io/kuadrant/authorino-operator:v0.16.0
        - quay.io/kuadrant/authorino:v0.20.0
        version: 0.16.0
      entries:
      - name: authorino-operator.v0.16.0
        version: 0.16.0
      - name: authorino-operator.v0.15.1
        version: 0.15.1
      - name: authorino-operator.v0.15.0
        version: 0.15.0
      - name: authorino-operator.v0.14.0
        version: 0.14.0
      - name: authorino-operator.v0.13.1
        version: 0.13.1
      - name: authorino-operator.v0.13.0
        version: 0.13.0
      - name: authorino-operator.v0.12.0
        version: 0.12.0
      - name: authorino-operator.v0.11.1
        version: 0.11.1
      - name: authorino-operator.v0.10.0
        version: 0.10.0
      - name: authorino-operator.v0.9.0
        version: 0.9.0
      - name: authorino-operator.v0.8.0
        version: 0.8.0
      - name: authorino-operator.v0.7.0
        version: 0.7.0
      - name: authorino-operator.v0.6.0
        version: 0.6.0
      - name: authorino-operator.v0.5.0
        version: 0.5.0
      - name: authorino-operator.v0.4.1
        version: 0.4.1
      - name: authorino-operator.v0.4.0
        version: 0.4.0
      - name: authorino-operator.v0.0.1
        version: 0.0.1
      name: stable
    defaultChannel: stable
    packageName: authorino-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: NVIDIA
      provider-url: https://github.com/Mellanox/maintenance-operator/
    name: nvidia-maintenance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nvidia-maintenance-operator.v0.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "MaintenanceOperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "maintenanceoperatorconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "maintenanceoperatorconfig",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "maintenanceoperatorconfig-sample"
                },
                "spec": {
                  "logLevel": "info",
                  "maxNodeMaintenanceTimeSeconds": 1600,
                  "maxParallelOperations": 1,
                  "maxUnavailable": "30%"
                }
              },
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "nodemaintenance-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nodemaintenance",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "cordon": true,
                  "drainSpec": {
                    "deleteEmptyDir": true,
                    "force": true,
                    "podEvictionFilters": [
                      {
                        "byResourceNameRegex": "nvidia.com/gpu-*"
                      },
                      {
                        "byResourceNameRegex": "nvidia.com/rdma*"
                      }
                    ],
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  },
                  "nodeName": "worker-node-01",
                  "requestorID": "some-cluster-component.vendor.com",
                  "waitForPodCompletion": {
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
          createdAt: "2025-07-13T12:33:06Z"
          description: Node maintenance in K8s cluster in a coordinated manner
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-maintenance-operator
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: NVIDIA
          repository: https://github.com/Mellanox/maintenance-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MaintenanceOperatorConfig is the Schema for the maintenanceoperatorconfigs
              API
            displayName: Maintenance Operator Config
            kind: MaintenanceOperatorConfig
            name: maintenanceoperatorconfigs.maintenance.nvidia.com
            version: v1alpha1
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.maintenance.nvidia.com
            version: v1alpha1
        description: Coordinates And Performs Common Node Preparations For Maintenance
        displayName: NVIDIA Maintenance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - node
        - maintenance
        - drain
        links:
        - name: NVIDIA Maintenance Operator
          url: https://github.com/Mellanox/maintenance-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/maintenance-operator/
        relatedImages:
        - ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-maintenance-operator@sha256:c9867753cd85ead32702783c880d75118549025ec4793805381aa3bc1ba1d221
        version: 0.2.3
      entries:
      - name: nvidia-maintenance-operator.v0.2.3
        version: 0.2.3
      name: stable
    - currentCSV: nvidia-maintenance-operator.v0.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "MaintenanceOperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "maintenanceoperatorconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "maintenanceoperatorconfig",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "maintenanceoperatorconfig-sample"
                },
                "spec": {
                  "logLevel": "info",
                  "maxNodeMaintenanceTimeSeconds": 1600,
                  "maxParallelOperations": 1,
                  "maxUnavailable": "30%"
                }
              },
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "nodemaintenance-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nodemaintenance",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "cordon": true,
                  "drainSpec": {
                    "deleteEmptyDir": true,
                    "force": true,
                    "podEvictionFilters": [
                      {
                        "byResourceNameRegex": "nvidia.com/gpu-*"
                      },
                      {
                        "byResourceNameRegex": "nvidia.com/rdma*"
                      }
                    ],
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  },
                  "nodeName": "worker-node-01",
                  "requestorID": "some-cluster-component.vendor.com",
                  "waitForPodCompletion": {
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
          createdAt: "2025-07-13T12:33:06Z"
          description: Node maintenance in K8s cluster in a coordinated manner
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-maintenance-operator
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: NVIDIA
          repository: https://github.com/Mellanox/maintenance-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MaintenanceOperatorConfig is the Schema for the maintenanceoperatorconfigs
              API
            displayName: Maintenance Operator Config
            kind: MaintenanceOperatorConfig
            name: maintenanceoperatorconfigs.maintenance.nvidia.com
            version: v1alpha1
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.maintenance.nvidia.com
            version: v1alpha1
        description: Coordinates And Performs Common Node Preparations For Maintenance
        displayName: NVIDIA Maintenance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - node
        - maintenance
        - drain
        links:
        - name: NVIDIA Maintenance Operator
          url: https://github.com/Mellanox/maintenance-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/maintenance-operator/
        relatedImages:
        - ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-maintenance-operator@sha256:c9867753cd85ead32702783c880d75118549025ec4793805381aa3bc1ba1d221
        version: 0.2.3
      entries:
      - name: nvidia-maintenance-operator.v0.2.3
        version: 0.2.3
      name: v0.2
    defaultChannel: v0.2
    packageName: nvidia-maintenance-operator
    provider:
      name: NVIDIA
      url: https://github.com/Mellanox/maintenance-operator/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-superset-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: superset-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/superset-operator@sha256:ac73f419137ceb0888c11b371841938b5a4810a4d3ec0a337c852658de9d6031
          description: Stackable Operator for Apache Superset
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/superset-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for SupersetClusterSpec via `CustomResource`
            displayName: supersetclusters.superset.stackable.tech
            kind: SupersetCluster
            name: supersetclusters.superset.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for DruidConnectionSpec via `CustomResource`
            displayName: druidconnections.superset.stackable.tech
            kind: DruidConnection
            name: druidconnections.superset.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Superset
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - superset
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/superset-operator@sha256:ac73f419137ceb0888c11b371841938b5a4810a4d3ec0a337c852658de9d6031
        - registry.connect.redhat.com/stackable/stackable-apache-superset-operator@sha256:55e2b7a946db2dd9b2111784d5d4d664b2d622611a2076ad70363e110d70fde7
        version: 25.11.0
      entries:
      - name: superset-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-superset-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM Quantum
      provider-url: ""
    name: openshift-qiskit-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-qiskit-operator.v0.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "qiskit.ibm.com/v1alpha1",
                "kind": "QiskitPlayground",
                "metadata": {
                  "name": "qiskitplayground-sample"
                },
                "spec": {
                  "image": "qiskit/jupyter:0.1",
                  "imagePullPolicy": "Always",
                  "resources": {
                    "requests": {
                      "memory": "2G",
                      "cpu": "1"
                    },
                    "limits": {
                      "memory": "3G",
                      "cpu": "1.5"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          certified: "false"
          containerImage: docker.io/qiskit/operator:0.1
          createdAt: 2021-004-23 22:25:53
          description: |-
            Launches a developement environment Jupyter notebok development environment for
            developing quantum applications using Qiskit.
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/kubernetes-qiskit-operator
          support: https://github.com/qiskit-community/openshift-quantum-operators/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QiskitPlayground is the Schema for the qiskitplaygrounds
              API
            displayName: Qiskit Playground
            kind: QiskitPlayground
            name: qiskitplaygrounds.qiskit.ibm.com
            version: v1alpha1
        description: |-
          ### Introduction
          Launches a developement Jupiter lab environment with Qiskit.

          QiskitPlayground is a Jupyter notebook with the pre installed qiskit libraries for implementing quantum application development.
          It comes with pre installed python packages for visualising results. QiskitPlayground can run quantum
          applications on simulator or on real quantum machines using IBM Q account.

          ### Documentation
          For detailed installation guide [follow](https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/kubernetes-qiskit-operator)

          ### Contributing
          You can contribute by
            * Raising any [issues](https://github.com/qiskit-community/openshift-quantum-operators/issues) you find using ibm-quantum-operator community operator
            * Fixing issues by opening [Pull Requests](https://github.com/qiskit-community/openshift-quantum-operators/pulls)
            * Talking about openshift-qiskit-operator

          ### License
          kubernetes-qiskit-operator is licensed under the [Apache 2.0 license](https://github.com/qiskit-community/openshift-quantum-operators/blob/master/LICENSE)

          #### Note
          Any api could be changed any time without any notice. That said, your feedback is very important and appreciated to make this project more stable and useful.
        displayName: QiskitPlayground
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Qiskit
        - Open Source
        - Quantum
        links:
        - name: GitHub
          url: https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/kubernetes-qiskit-operator
        maintainers:
        - email: blublinsky@ibm.com
          name: boris
        maturity: alpha
        provider:
          name: IBM Quantum
        relatedImages:
        - docker.io/qiskit/operator:0.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/openshift-qiskit-operator@sha256:633ce4190b02034d70b52d7e624fc9d417ef997607f9710a36e73bbc0963fe4d
        version: 0.2.1
      entries:
      - name: openshift-qiskit-operator.v0.2.1
        version: 0.2.1
      - name: openshift-qiskit-operator.v0.2.0
        version: 0.2.0
      name: alpha
    defaultChannel: alpha
    packageName: openshift-qiskit-operator
    provider:
      name: IBM Quantum
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MayaData
      provider-url: ""
    name: openebs
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openebsoperator.v3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "openebs.io/v1alpha1",
                "kind": "OpenEBSInstallTemplate",
                "metadata": {
                  "name": "oebs",
                  "namespace": "openebs"
                },
                "spec": {
                  "rbac": {
                    "create": true,
                    "pspEnabled": false,
                    "kyvernoEnabled": false
                  },
                  "serviceAccount": {
                    "create": true,
                    "name": "openebs-maya-operator"
                  },
                  "imagePullSecrets": [],
                  "release": {
                    "version": "3.0.0"
                  },
                  "legacy": {
                    "enabled": false
                  },
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": ""
                  },
                  "apiserver": {
                    "enabled": true,
                    "image": "openebs/m-apiserver",
                    "imageTag": "2.12.2",
                    "replicas": 1,
                    "ports": {
                      "externalPort": 5656,
                      "internalPort": 5656
                    },
                    "sparse": {
                      "enabled": "false"
                    },
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "defaultStorageConfig": {
                    "enabled": "true"
                  },
                  "varDirectoryPath": {
                    "baseDir": "/var/openebs"
                  },
                  "provisioner": {
                    "enabled": true,
                    "image": "openebs/openebs-k8s-provisioner",
                    "imageTag": "2.12.2",
                    "replicas": 1,
                    "enableLeaderElection": true,
                    "patchJivaNodeAffinity": "enabled",
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "localprovisioner": {
                    "enabled": true,
                    "image": "openebs/provisioner-localpv",
                    "imageTag": "3.0.0",
                    "replicas": 1,
                    "enableLeaderElection": true,
                    "enableDeviceClass": true,
                    "enableHostpathClass": true,
                    "basePath": "/var/openebs/local",
                    "waitForBDBindTimeoutRetryCount": "12",
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "snapshotOperator": {
                    "enabled": true,
                    "controller": {
                      "image": "openebs/snapshot-controller",
                      "imageTag": "2.12.2",
                      "resources": {}
                    },
                    "provisioner": {
                      "image": "openebs/snapshot-provisioner",
                      "imageTag": "2.12.2",
                      "resources": {}
                    },
                    "replicas": 1,
                    "enableLeaderElection": true,
                    "upgradeStrategy": "Recreate",
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    }
                  },
                  "ndm": {
                    "enabled": true,
                    "image": "openebs/node-disk-manager",
                    "imageTag": "1.7.0",
                    "sparse": {
                      "path": "/var/openebs/sparse",
                      "size": "10737418240",
                      "count": "0"
                    },
                    "filters": {
                      "enableOsDiskExcludeFilter": true,
                      "osDiskExcludePaths": "/,/etc/hosts,/boot",
                      "enableVendorFilter": true,
                      "excludeVendors": "CLOUDBYT,OpenEBS",
                      "enablePathFilter": true,
                      "includePaths": "",
                      "excludePaths": "/dev/loop,/dev/fd0,/dev/sr0,/dev/ram,/dev/dm-,/dev/md,/dev/rbd,/dev/zd"
                    },
                    "probes": {
                      "enableSeachest": false
                    },
                    "nodeSelector": {},
                    "tolerations": [],
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "ndmOperator": {
                    "enabled": true,
                    "image": "openebs/node-disk-operator",
                    "imageTag": "1.7.0",
                    "replicas": 1,
                    "upgradeStrategy": "Recreate",
                    "nodeSelector": {},
                    "tolerations": [],
                    "healthCheck": {
                      "initialDelaySeconds": 15,
                      "periodSeconds": 20
                    },
                    "readinessCheck": {
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10
                    },
                    "resources": {}
                  },
                  "ndmExporter": {
                    "enabled": false,
                    "image": {
                      "registry": null,
                      "repository": "openebs/node-disk-exporter",
                      "pullPolicy": "IfNotPresent",
                      "tag": "1.7.0"
                    },
                    "nodeExporter": {
                      "name": "ndm-node-exporter",
                      "podLabels": {
                        "name": "openebs-ndm-node-exporter"
                      },
                      "metricsPort": 9101
                    },
                    "clusterExporter": {
                      "name": "ndm-cluster-exporter",
                      "podLabels": {
                        "name": "openebs-ndm-cluster-exporter"
                      },
                      "metricsPort": 9100
                    }
                  },
                  "webhook": {
                    "enabled": true,
                    "image": "openebs/admission-server",
                    "imageTag": "2.12.2",
                    "failurePolicy": "Fail",
                    "replicas": 1,
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "hostNetwork": false,
                    "resources": {}
                  },
                  "helper": {
                    "image": "openebs/linux-utils",
                    "helperImageTag": "3.0.0"
                  },
                  "featureGates": {
                    "enabled": true,
                    "GPTBasedUUID": {
                      "enabled": true,
                      "featureGateFlag": "GPTBasedUUID"
                    },
                    "APIService": {
                      "enabled": false,
                      "featureGateFlag": "APIService",
                      "address": "0.0.0.0:9115"
                    },
                    "UseOSDisk": {
                      "enabled": false,
                      "featureGateFlag": "UseOSDisk"
                    },
                    "ChangeDetection": {
                      "enabled": false,
                      "featureGateFlag": "ChangeDetection"
                    }
                  },
                  "crd": {
                    "enableInstall": true
                  },
                  "policies": {
                    "monitoring": {
                      "enabled": true,
                      "image": "openebs/m-exporter",
                      "imageTag": "2.12.2"
                    }
                  },
                  "analytics": {
                    "enabled": true,
                    "pingInterval": "24h"
                  },
                  "jiva": {
                    "image": "openebs/jiva",
                    "imageTag": "2.12.2",
                    "replicas": 3,
                    "defaultStoragePath": "/var/openebs",
                    "enabled": false,
                    "openebsLocalpv": {
                      "enabled": false
                    },
                    "localpv-provisioner": {
                      "openebsNDM": {
                        "enabled": false
                      }
                    }
                  },
                  "cstor": {
                    "pool": {
                      "image": "openebs/cstor-pool",
                      "imageTag": "2.12.2"
                    },
                    "poolMgmt": {
                      "image": "openebs/cstor-pool-mgmt",
                      "imageTag": "2.12.2"
                    },
                    "target": {
                      "image": "openebs/cstor-istgt",
                      "imageTag": "2.12.2"
                    },
                    "volumeMgmt": {
                      "image": "openebs/cstor-volume-mgmt",
                      "imageTag": "2.12.2"
                    },
                    "enabled": false,
                    "openebsNDM": {
                      "enabled": false
                    }
                  },
                  "openebs-ndm": {
                    "enabled": false
                  },
                  "localpv-provisioner": {
                    "enabled": false,
                    "openebsNDM": {
                      "enabled": false
                    }
                  },
                  "zfs-localpv": {
                    "enabled": false
                  },
                  "lvm-localpv": {
                    "enabled": false
                  },
                  "nfs-provisioner": {
                    "enabled": false
                  },
                  "cleanup": {
                    "image": {
                      "registry": "",
                      "repository": "bitnami/kubectl",
                      "tag": "",
                      "imagePullSecrets": []
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: index.docker.io/openebs/helm-operator:v0.0.9
          createdAt: "2021-11-02T02:56:58Z"
          description: Creates and maintains OpenEBS Control Plane deployments
          repository: https://github.com/openebs/helm-operator
          support: https://slack.openebs.io/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a OpenEBS Install Operator
            displayName: OpenEBS Install Template
            kind: OpenEBSInstallTemplate
            name: openebsinstalltemplates.openebs.io
            version: v1alpha1
        description: |
          **OpenEBS** is a leading container attached storage solution that enables the use of containers for mission-critical, persistent workloads and for other stateful workloads such as logging or Prometheus for example.
          OpenEBS itself is deployed as just another container on your host and enables storage services that can be designated on a per pod, application, cluster or container level, including:
          * Data persistence across nodes
          * Synchronization of data across availability zones and cloud providers
          * A common layer whether you are running on the cloud, or your bare metal
          * Integration with Kubernetes, so developer and application intent flows into OpenEBS
          * Management of tiering to and from S3 and other targets.
          ## OpenEBS Operator
          OpenEBS primarily provides container attached block storage (iSCSI volumes) by leveraging/aggregating the storage on the nodes, with the storage controller itself running as a container. Different storage engines (Jiva & cStor) are supported, with tools available to dynamically provision Kubernetes Local PVs. The volumes are dynamically provisioned via PersistentVolumeClaims and are managed by a control plane component called "maya", which also runs as a deployment in the K8s cluster. In addition to maya, a typical OpenEBS installation comprises several other resources, which aid with various functionalities, ranging from snapshotting to disk management. All these components are described briefly below:
          * **Maya-API-Server** - A storage orchestrator which integrates into Kubernetes workflow to help provision
            and manage OpenEBS Jiva & cStor (storage engine) volumes

          * **Dynamic-OpenEBS-Provisioner** - A Kubernetes external storage provisioner that utilizes APIs exposed by maya-apiserver
            to perform provision & delete operations of Jiva & cStor volumes

          * **Dynamic-LocalPV-Provisioner** - A dynamic provisioner for Kubernetes Local PVs
          * **OpenEBS-Snapshot-Operator** - A Kubernetes snapshot controller that creates & restores OpenEBS volume snapshots
          * **Node-Disk-Manager** - A disk management controller which identifies available disks, maintains inventory, and
            dynamically attaches/detaches disks to backend storage pods

          The helm-based OpenEBS Operator eases the setup of all the above mentioned components, with a simple custom resource provided to define the install options, thereby enabling applications to start using the OpenEBS storageclasses in their PVCs. The OpenEBSInstallTemplate CR can be used to specify start-up parameters & also update/overwrite the definitions post install.
          ## Pre-Requisites
          Before installing OpenEBS control plane, perform the following steps to ensure successful deployment of the Node-Disk-Manager & the OpenEBS volume replicas, respectively.
          * Configure the OpenEBS service account on the openshift-operators namespace/project to use the privileged security context constraint.

            **Note**: The serviceaccount name is same as the one specified in the `spec.serviceAccount.name` field of the OpenEBSInstallTemplate CR.


            ```
            oc adm policy add-scc-to-user privileged system:serviceaccount:openshift-operators:openebs-maya-operator
            ```

          * Configure the default service account on the namespace/project in which the volume replicas are deployed to use privileged
            security context constraint.


            ```
            oc adm policy add-scc-to-user privileged system:serviceaccount:openshift-operators:default
            ```

          ## Getting Started
          * Try the quickstart [guide](https://github.com/openebs/helm-operator/blob/master/olm/README.md)
          * To learn how to contribute, please read the [contribution guide](https://github.com/openebs/helm-operator/blob/master/CONTRIBUTING.md)
          * OpenEBS welcomes your feedback and contributions in any form possible. [Join our Community](https://openebs.org/community)

          ## License
          OpenEBS is distributed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt)
        displayName: OpenEBS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OpenEBS
        - ContainerAttachedStorage
        links:
        - name: OpenEBS Website
          url: https://openebs.io
        - name: Operator Source Code
          url: https://github.com/openebs/helm-operator
        - name: Install Instructions
          url: https://github.com/openebs/helm-operator/blob/master/olm/README.md
        maintainers:
        - email: kiran.mova@openebs.io
          name: kmova
        maturity: alpha
        minKubeVersion: 1.12.0
        provider:
          name: MayaData
        relatedImages:
        - index.docker.io/openebs/helm-operator:v0.0.9
        - quay.io/openshift-community-operators/openebs@sha256:ff179bdd6e63b8e2cb1ce3b96d5e03d20c1a2410296fed6fb331bf5bc2e6b14d
        version: 3.0.0
      entries:
      - name: openebsoperator.v3.0.0
        version: 3.0.0
      - name: openebsoperator.v2.12.2
        version: 2.12.2
      name: alpha
    defaultChannel: alpha
    packageName: openebs
    provider:
      name: MayaData
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/multiarch-tuning-operator
    name: multiarch-tuning-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multiarch-tuning-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multiarch.openshift.io/v1beta1",
                "kind": "ClusterPodPlacementConfig",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logVerbosity": "Normal",
                  "namespaceSelector": {
                    "matchExpressions": [
                      {
                        "key": "multiarch.openshift.io/exclude-pod-placement",
                        "operator": "DoesNotExist"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Other
          console.openshift.io/disable-operand-delete: "false"
          containerImage: registry.redhat.io/multiarch-tuning/multiarch-tuning-rhel9-operator@sha256:e17ed141cb3ec0a6c6b87bab5164f5657607d12d7b205a5d451e08f795a34e08
          createdAt: "2025-11-12T04:49:47Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operator.openshift.io/uninstall-message: You must remove all Operands before
            uninstalling the operator.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-multiarch-tuning-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: '["enoexecevents.multiarch.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/multiarch-tuning-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPodPlacementConfig defines the configuration for the
              architecture aware pod placement operand. Users can only deploy a single
              object named "cluster". Creating the object enables the operand.
            displayName: Cluster Pod Placement Config
            kind: ClusterPodPlacementConfig
            name: clusterpodplacementconfigs.multiarch.openshift.io
            version: v1alpha1
          - description: ClusterPodPlacementConfig defines the configuration for the
              architecture aware pod placement operand. Users can only deploy a single
              object named "cluster". Creating the object enables the operand.
            displayName: Cluster Pod Placement Config
            kind: ClusterPodPlacementConfig
            name: clusterpodplacementconfigs.multiarch.openshift.io
            version: v1beta1
          - description: ENoExecEvent is the Schema for the enoexecevents API
            displayName: ENo Exec Event
            kind: ENoExecEvent
            name: enoexecevents.multiarch.openshift.io
            version: v1beta1
        description: |
          The Multiarch Tuning Operator optimizes workload management within multi-architecture clusters and in
          single-architecture clusters transitioning to multi-architecture environments.

          By default, the scheduler does not consider the architecture of a pod's container images
          when determining the placement of new pods onto nodes.

          The Multiarch Tuning Operator introduces the ClusterPodPlacementConfig custom resource to
          enable architecture-aware scheduling, ensuring that pods are assigned to nodes with
          a corresponding architecture for their container images.

          To enable this functionality, you must create a ClusterPodPlacementConfig resource.

          When the ClusterPodPlacementConfig object is created, the Multiarch Tuning Operator deploys the necessary operands
          to support architecture-aware workload scheduling.
        displayName: Multiarch Tuning Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multiarch-tuning-operator
        - pod-placement
        links:
        - name: Multiarch Tuning Operator Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/postinstallation_configuration/configuring-multi-architecture-compute-machines-on-an-openshift-cluster#multiarch-tuning-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
          url: https://github.com/openshift/multiarch-tuning-operator
        relatedImages:
        - registry.redhat.io/multiarch-tuning/multiarch-tuning-operator-bundle@sha256:fe40f5abedd62e8ac2a354ddc7e81e158615682c753ef942bca238dcc3beb4c7
        - registry.redhat.io/multiarch-tuning/multiarch-tuning-rhel9-operator@sha256:e17ed141cb3ec0a6c6b87bab5164f5657607d12d7b205a5d451e08f795a34e08
        version: 1.2.1
      entries:
      - name: multiarch-tuning-operator.v1.2.1
        version: 1.2.1
      - name: multiarch-tuning-operator.v1.2.0
        version: 1.2.0
      - name: multiarch-tuning-operator.v1.1.1
        version: 1.1.1
      - name: multiarch-tuning-operator.v1.1.0
        version: 1.1.0
      - name: multiarch-tuning-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: multiarch-tuning-operator
    provider:
      name: Red Hat
      url: https://github.com/openshift/multiarch-tuning-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Coroot Inc.
      provider-url: https://coroot.com
    name: coroot-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: coroot-operator.1.1.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "coroot.com/v1",
                "kind": "Coroot",
                "metadata": {
                  "name": "coroot",
                  "namespace": "coroot"
                },
                "spec": {
                  "enterpriseEdition": {
                    "licenseKey": "<COROOT_LICENSE_KEY> from https://coroot.com/account"
                  },
                  "ingress": {
                    "host": "coroot.example.com"
                  },
                  "storage": {
                    "size": "50Gi"
                  },
                  "clickhouse": {
                    "replicas": 2,
                    "shards": 2,
                    "storage": {
                      "size": "100Gi"
                    }
                  },
                  "prometheus": {
                    "storage": {
                      "size": "100Gi"
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring, Logging & Tracing
          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"
          repository: https://github.com/coroot/coroot-operator
          support: support@coroot.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Coroot is the Schema for the coroots API
            displayName: Coroot
            kind: Coroot
            name: coroots.coroot.com
            version: v1
        description: An open-source observability platform using eBPF to gather telemetry
          data, providing actionable insights for quick issue detection and resolution
          in Kubernetes and VM environments.
        displayName: Coroot
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - coroot
        - observability
        links:
        - name: Documentation
          url: https://docs.coroot.com
        maintainers:
        - email: support@coroot.com
          name: Coroot Inc.
        maturity: stable
        provider:
          name: Coroot Inc.
          url: https://coroot.com
        relatedImages:
        - ghcr.io/coroot/clickhouse@sha256:afed1054626598371975c948e5b9e4dcaac54e8059b7ad9f0b905ef1c99f2260
        - ghcr.io/coroot/coroot-cluster-agent@sha256:674bcb147354873eaa0ee9c1328ddf758d43adbbe532c9fbbe41ddae7addc114
        - ghcr.io/coroot/coroot-ee@sha256:09b9177ac07c2d26f4bd16050d07bb1e2132431055c32e047563083ee09194a8
        - ghcr.io/coroot/coroot-node-agent@sha256:3d552e98ca2ff8c6e125496857306172ec6f8e134ff13886c7f799abef29d1b8
        - ghcr.io/coroot/coroot-operator@sha256:13f1a4a07877c8fe8230a0bb7282ff47451007c9cf689a995a37d16697b9268a
        - ghcr.io/coroot/kube-state-metrics@sha256:080a85e77b1e530df56f84c8e0ee2523c1f740adea152015367b87edbfac078d
        - ghcr.io/coroot/prometheus@sha256:e7117bd86e1088fc02ac12758bc94dba1029de54a5bc1ee04954569d8b79625d
        - registry.connect.redhat.com/coroot/coroot-operator@sha256:44aa4ea98d468f1d1ced671bd2e2bd5bf79ce467f8c572c2248abdce2b7c5acf
        version: 1.1.5
      entries:
      - name: coroot-operator.1.1.5
        version: 1.1.5
      name: stable
    defaultChannel: stable
    packageName: coroot-operator
    provider:
      name: Coroot Inc.
      url: https://coroot.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Tigera
      provider-url: ""
    name: tigera-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tigera-operator.v1.40.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "calicoNetwork": {
                    "linuxDataplane": "BPF"
                  },
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Basic Install
          categories: Logging & Tracing, Monitoring, Networking, Security
          containerImage: quay.io/tigera/operator@sha256:35f43a5fdc867629b3b8604f7fc8666e2f919778411d86adc6761b18f355e5f3
          createdAt: "2025-11-18T15:35:44.698841063Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          features.operators.openshift.io/valid-subscription: No subscription required
          olm.skipRange: <1.40.2
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift.
        displayName: Tigera Operator v1.38
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tigera-operator
        - networking
        - security
        - monitoring
        links:
        - name: Tigera
          url: https://tigera.io/
        - name: Calico Introduction
          url: https://docs.tigera.io/calico/latest/about/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.tigera.io/calico/latest/getting-started/kubernetes/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
          url: https://tigera.io/
        relatedImages:
        - quay.io/tigera/operator@sha256:35f43a5fdc867629b3b8604f7fc8666e2f919778411d86adc6761b18f355e5f3
        - registry.connect.redhat.com/tigera/operator@sha256:464be134e6e0e4df46c996a08488a477b4456f7b85f6ea5cd2a82f000e8e8888
        version: 1.40.2
      entries:
      - name: tigera-operator.v1.40.2
        version: 1.40.2
      name: alpha
    - currentCSV: tigera-operator.v1.20.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:bd93e66be5cfbc123fe4e8c3f6e8ddf7654217bf26136f06dcf23f28b53063d2
          createdAt: "2021-10-05T20:02:14.564507Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.20.4
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:bd93e66be5cfbc123fe4e8c3f6e8ddf7654217bf26136f06dcf23f28b53063d2
        - registry.connect.redhat.com/tigera/operator@sha256:4d0d814fcfeb628aae8a05cb7a0a416ae85395197950085c907b6cdcf2fb4317
        version: 1.20.4
      entries:
      - name: tigera-operator.v1.20.4
        version: 1.20.4
      - name: tigera-operator.v1.20.3
        version: 1.20.3
      - name: tigera-operator.v1.20.2
        version: 1.20.2
      - name: tigera-operator.v1.20.1
        version: 1.20.1
      name: release-v1.20
    - currentCSV: tigera-operator.v1.23.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:f258275fe3d48c2ae16346a57f628523a6f2fb7b854b6d43b169056e158537f1
          createdAt: "2022-01-12T22:55:57.409244Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.23.4
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - registry.connect.redhat.com/tigera/operator@sha256:b1a8b56ff5e1bb5326e1bde4931303358410da9768f0ebf9c08e2c2d8661d742
        - quay.io/tigera/operator@sha256:f258275fe3d48c2ae16346a57f628523a6f2fb7b854b6d43b169056e158537f1
        version: 1.23.4
      entries:
      - name: tigera-operator.v1.23.4
        version: 1.23.4
      - name: tigera-operator.v1.23.3
        version: 1.23.3
      - name: tigera-operator.v1.23.2
        version: 1.23.2
      - name: tigera-operator.v1.23.1
        version: 1.23.1
      - name: tigera-operator.v1.23.0
        version: 1.23.0
      name: release-v1.23
    - currentCSV: tigera-operator.v1.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:e862708c700df55f99a9c9bb3c453e31f22aef1993d6079d80433eb8da831c94
          createdAt: "2022-02-17T05:39:13.720885Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.25.1
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:e862708c700df55f99a9c9bb3c453e31f22aef1993d6079d80433eb8da831c94
        - registry.connect.redhat.com/tigera/operator@sha256:cb7f3367ff064cd01dc636a43fd89d5f6c4e6a7004cb7c94b1758b2398e36d71
        version: 1.25.1
      entries:
      - name: tigera-operator.v1.25.1
        version: 1.25.1
      name: release-v1.25
    - currentCSV: tigera-operator.v1.28.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:9e8e47045fc67a2b00f9f2fd575fa526d7ddcac50af0b8b6d583b7518ccce120
          createdAt: "2023-05-17T16:13:52.148441156Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.28.13
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:9e8e47045fc67a2b00f9f2fd575fa526d7ddcac50af0b8b6d583b7518ccce120
        - registry.connect.redhat.com/tigera/operator@sha256:de9724b84ca493d3b14c8f801c1049ac4713166b00d9bf3ea0b1986aac5040fa
        version: 1.28.13
      entries:
      - name: tigera-operator.v1.28.13
        version: 1.28.13
      name: release-v1.28
    - currentCSV: tigera-operator.v1.29.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:2a5acd29d8dca6adb318af04dbb15d93d899ed2b28b2ee9aaac09147395efb58
          createdAt: "2023-03-31T20:49:52.518230079Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.29.3
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - registry.connect.redhat.com/tigera/operator@sha256:8e0c026f369f80e8b36d0c94f1fd60f7f53656e57dc5be0b8b12189546874909
        - quay.io/tigera/operator@sha256:2a5acd29d8dca6adb318af04dbb15d93d899ed2b28b2ee9aaac09147395efb58
        version: 1.29.3
      entries:
      - name: tigera-operator.v1.29.3
        version: 1.29.3
      name: release-v1.29
    - currentCSV: tigera-operator.v1.30.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:431f037ff18b5c867d01312e42671effc55602421aeed25dd3f6109f70596b4a
          createdAt: "2023-11-17T00:52:31.263564294Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.30.9
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: APIServer
            name: apiservers.operator.tigera.io
            version: v1
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:431f037ff18b5c867d01312e42671effc55602421aeed25dd3f6109f70596b4a
        - registry.connect.redhat.com/tigera/operator@sha256:1fb1007f7aad744f0e1b0f6a32022c2571ee8558e9db53c85976bbd2a891a6b0
        version: 1.30.9
      entries:
      - name: tigera-operator.v1.30.9
        version: 1.30.9
      name: release-v1.30
    - currentCSV: tigera-operator.v1.32.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:715ac9a30f8a9579e44258af20de354715429e11836b493918e9e1a696e9b028
          createdAt: "2023-12-15T23:45:03.964812504Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.32.3
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:715ac9a30f8a9579e44258af20de354715429e11836b493918e9e1a696e9b028
        - registry.connect.redhat.com/tigera/operator@sha256:42a4d0d0e24752dbb51daebcfca4d4850d04e79578bfb8b41cdc2a2a289df4a2
        version: 1.32.3
      entries:
      - name: tigera-operator.v1.32.3
        version: 1.32.3
      name: release-v1.32
    defaultChannel: release-v1.32
    packageName: tigera-operator
    provider:
      name: Tigera
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: EDB
      provider-url: ""
    name: cloud-native-postgresql
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cloud-native-postgresql.v1.28.0-rc2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:9e48409a60f1499191d285a41c034ed854108804eac2b5252f4f11797965cf1a
          createdAt: "2025-12-05T15:06:17Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:076018f56494a521e44e5fe7c48c3b21eeaf6379606f8dc651ed7a4330d0ce07
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:9e48409a60f1499191d285a41c034ed854108804eac2b5252f4f11797965cf1a
        version: 1.28.0-rc2
      entries:
      - name: cloud-native-postgresql.v1.28.0-rc2
        version: 1.28.0-rc2
      - name: cloud-native-postgresql.v1.28.0-rc1
        version: 1.28.0-rc1
      - name: cloud-native-postgresql.v1.27.0-rc1
        version: 1.27.0-rc1
      - name: cloud-native-postgresql.v1.26.0-rc3
        version: 1.26.0-rc3
      - name: cloud-native-postgresql.v1.26.0-rc2
        version: 1.26.0-rc2
      - name: cloud-native-postgresql.v1.26.0-rc1
        version: 1.26.0-rc1
      name: candidate
    - currentCSV: cloud-native-postgresql.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
          createdAt: "2025-12-16T10:37:27Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:16384249d49258831634aa3535f97906f41ebbf92d2f28bf6645e416ec3da96e
        version: 1.28.0
      entries:
      - name: cloud-native-postgresql.v1.28.0
        version: 1.28.0
      - name: cloud-native-postgresql.v1.27.1
        version: 1.27.1
      - name: cloud-native-postgresql.v1.27.0
        version: 1.27.0
      - name: cloud-native-postgresql.v1.26.1
        version: 1.26.1
      - name: cloud-native-postgresql.v1.26.0
        version: 1.26.0
      - name: cloud-native-postgresql.v1.25.2
        version: 1.25.2
      - name: cloud-native-postgresql.v1.25.1
        version: 1.25.1
      - name: cloud-native-postgresql.v1.25.0
        version: 1.25.0
      name: fast
    - currentCSV: cloud-native-postgresql.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
          createdAt: "2025-12-16T10:37:27Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:16384249d49258831634aa3535f97906f41ebbf92d2f28bf6645e416ec3da96e
        version: 1.28.0
      entries:
      - name: cloud-native-postgresql.v1.28.0
        version: 1.28.0
      - name: cloud-native-postgresql.v1.25.5
        version: 1.25.5
      - name: cloud-native-postgresql.v1.25.4
        version: 1.25.4
      - name: cloud-native-postgresql.v1.25.3
        version: 1.25.3
      - name: cloud-native-postgresql.v1.25.2
        version: 1.25.2
      - name: cloud-native-postgresql.v1.25.1
        version: 1.25.1
      - name: cloud-native-postgresql.v1.25.0
        version: 1.25.0
      name: stable
    - currentCSV: cloud-native-postgresql.v1.25.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": [
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:d2e7f433904cf4f5193d044434b1d6294222047398692697fc5c3f6311997ed3",
                      "major": 15
                    },
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:8f68afde9b1217ad13682bd2adfc0a7cac691cbdb496cc22915f6783012067f9",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": [
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:d2e7f433904cf4f5193d044434b1d6294222047398692697fc5c3f6311997ed3",
                      "major": 15
                    },
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:8f68afde9b1217ad13682bd2adfc0a7cac691cbdb496cc22915f6783012067f9",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: quay.io/enterprisedb/cloud-native-postgresql@sha256:8ceea425bde8f569006e53f631e658b9b20f1093a5ae7088f843c8ac0a2ad235
          createdAt: "2025-10-24T16:12:01Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          Main features:

          * Direct integration with Kubernetes API server for High Availability,
            without requiring an external tool
          * Self-Healing capability, through:
              * failover of the primary instance by promoting the most aligned replica
              * automated recreation of a replica
          * Planned switchover of the primary instance by promoting a selected replica
          * Scale up/down capabilities
          * Definition of an arbitrary number of instances (minimum 1 - one primary server)
          * Definition of the *read-write* service, to connect your applications to the only primary server of the cluster
          * Definition of the *read-only* service, to connect your applications to any of the instances for reading workloads
          * Declarative management of PostgreSQL configuration
          * Declarative management of Postgres roles, users and groups
          * Support for Local Persistent Volumes with PVC templates
          * Reuse of Persistent Volumes storage in Pods
          * Separate volume for WAL files
          * Rolling updates for PostgreSQL minor versions
          * In-place or rolling updates for operator upgrades
          * TLS connections and client certificate authentication
          * Support for custom TLS certificates (including integration with cert-manager)
          * Continuous WAL archiving to an object store (AWS S3 and S3-compatible, Azure Blob Storage, and Google Cloud Storage)
          * Backups on volume snapshots (where supported by the underlying storage classes)
          * Backups on object stores (AWS S3 and S3-compatible, Azure Blob Storage, and Google Cloud Storage)
          * Full recovery and Point-In-Time recovery from an existing backup on volume snapshots or object stores
          * Offline import of existing PostgreSQL databases, including major upgrades of PostgreSQL
          * Fencing of an entire PostgreSQL cluster, or a subset of the instances in a declarative way
          * Hibernation of a PostgreSQL cluster in a declarative way
          * Support for Synchronous Replicas
          * Support for HA physical replication slots at cluster level
          * Backup from a standby
          * Backup retention policies (based on recovery window, only on object stores)
          * Parallel WAL archiving and restore to allow the database to keep up with WAL
            generation on high write systems
          * Support tagging backup files uploaded to an object store to enable optional
            retention management at the object store layer Replica clusters for
          * PostgreSQL deployments across multiple Kubernetes
            clusters, enabling private, public, hybrid, and multi-cloud architectures
          * Connection pooling with PgBouncer
          * Support for node affinity via `nodeSelector`
          * Native customizable exporter of user defined metrics for Prometheus through the `metrics` port (9187)
          * Standard output logging of PostgreSQL error messages in JSON format
          * Automatically set `readOnlyRootFilesystem` security context for pods
          * `cnp` plugin for `kubectl`
          * Simple bind and search+bind LDAP client authentication
          * Multi-arch format container images
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - quay.io/enterprisedb/postgresql@sha256:d2e7f433904cf4f5193d044434b1d6294222047398692697fc5c3f6311997ed3
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:22c35530e81789a83754aaa05de5159153f5e7fa4f25dbd9e5f1bd4f5d088cbb
        - quay.io/enterprisedb/cloud-native-postgresql@sha256:8ceea425bde8f569006e53f631e658b9b20f1093a5ae7088f843c8ac0a2ad235
        - quay.io/enterprisedb/postgresql@sha256:8f68afde9b1217ad13682bd2adfc0a7cac691cbdb496cc22915f6783012067f9
        version: 1.25.4
      entries:
      - name: cloud-native-postgresql.v1.25.4
        version: 1.25.4
      - name: cloud-native-postgresql.v1.25.3
        version: 1.25.3
      - name: cloud-native-postgresql.v1.25.2
        version: 1.25.2
      - name: cloud-native-postgresql.v1.25.1
        version: 1.25.1
      - name: cloud-native-postgresql.v1.25.0
        version: 1.25.0
      name: stable-v1.25
    - currentCSV: cloud-native-postgresql.v1.26.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:d4c22a434ea72e5865fd394b10b485e0c6b0690c27b3a14ebefc1add666de8b5
          createdAt: "2025-12-16T09:08:59Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:14ef013d84432c0901b5eaa7128e186d7dc604b699eb9b1cb3d63ca9d44366af
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:d4c22a434ea72e5865fd394b10b485e0c6b0690c27b3a14ebefc1add666de8b5
        version: 1.26.3
      entries:
      - name: cloud-native-postgresql.v1.26.3
        version: 1.26.3
      - name: cloud-native-postgresql.v1.26.2
        version: 1.26.2
      - name: cloud-native-postgresql.v1.26.1
        version: 1.26.1
      - name: cloud-native-postgresql.v1.26.0
        version: 1.26.0
      name: stable-v1.26
    - currentCSV: cloud-native-postgresql.v1.27.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:5c5753190e5f7e9da7d5a969b0b917c97f2e9aa9f5f208324dbdd5cdb2db2a1d
          createdAt: "2025-12-16T09:52:18Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:5c5753190e5f7e9da7d5a969b0b917c97f2e9aa9f5f208324dbdd5cdb2db2a1d
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:147730fba2efe5e1369ebf61816cdf01ac0a92c67b7e89b89e32e032119447a2
        version: 1.27.2
      entries:
      - name: cloud-native-postgresql.v1.27.2
        version: 1.27.2
      - name: cloud-native-postgresql.v1.27.1
        version: 1.27.1
      - name: cloud-native-postgresql.v1.27.0
        version: 1.27.0
      name: stable-v1.27
    - currentCSV: cloud-native-postgresql.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
          createdAt: "2025-12-16T10:37:27Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:16384249d49258831634aa3535f97906f41ebbf92d2f28bf6645e416ec3da96e
        version: 1.28.0
      entries:
      - name: cloud-native-postgresql.v1.28.0
        version: 1.28.0
      name: stable-v1.28
    defaultChannel: fast
    packageName: cloud-native-postgresql
    provider:
      name: EDB
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: devopstales
      provider-url: devopstales.github.io
    name: community-trivy-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: community-trivy-operator.v2.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "trivy-operator.devopstales.io/v1",
                "kind": "NamespaceScanner",
                "metadata": {
                  "name": "trivy-operator-main-config"
                },
                "spec": {
                  "crontab": "*/5 * * * *",
                  "namespace_selector": "trivy-scan",
                  "clusterWide": "False",
                  "policyreport": "False",
                  "registry": [
                    {
                      "name": "docker.io",
                      "user": "",
                      "password": ""
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: devopstales/trivy-operator:2.4.1
          createdAt: "2022-07-11T15:00:00Z"
          description: Trivy Operator for scheduled imagescans and an Admission Control.
          repository: https://github.com/devopstales/trivy-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Confifuration for trivy-operator.
            displayName: NamespaceScanner
            kind: NamespaceScanner
            name: namespace-scanners.trivy-operator.devopstales.io
            version: v1
          - description: |
              VulnerabilityReport summarizes vulnerabilities in application dependencies and operating system packages
              built into container images.
            displayName: VulnerabilityReport
            kind: VulnerabilityReport
            name: vulnerabilityreports.trivy-operator.devopstales.io
            version: v1
        description: |
          Trivy Operator for scheduled imagescans and an Admission Control.

          ### Add Github token to extend your Github API Rate Limit
          The Operator use Github to download Trivy database. If your Github API Rate Limit Exceeded add your Github token to the operator deployment as GITHUB_TOKEN variable.

          ```yaml
          ...
          env:
          - name: GITHUB_TOKEN
            value: "githubToken"
          ```

          ### Scheduled Image scans
          Default every 5 minutes execute a scan script. It will get image list from all namespaces with the label `trivy-scan=true`, and then scan this images with trivy, finally we will get metrics on `http://[pod-ip]:9115/metrics`

          You can chane the schedule of the image scanning by setting the `crontab` variable in the namespace-scanner object.


          ### Cache Scan results
          From the 2.4 version you can use an external redis to store scanning results and speed up the scanning process.

          ```bash
          ...
          env:
          - name: REDIS_ENABLED
            value: "True"
          - name: REDIS_BACKEND
            value: redis://redis-cache:6379
          ```

          ### Persist Trivy database cache
          To Persist Trivy cache you need to create a pvc and mount to the Deployment under `/home/trivy-operator/trivy-cache`

          ```yaml
          ...
            volumeMounts:
            - name: cache
              mountPath: "/home/trivy-operator/trivy-cache"
          volumes:
          - name: cache
            persistentVolumeClaim:
              claimName: trivy-cache
          ```

          ### Trivy Image Validator
          The admission controller function can be configured as a ValidatingWebhook in a k8s cluster. Kubernetes will send requests to the admission server when a Pod creation is initiated. The admission controller checks the image using trivy if it is in a namespace with the lable `trivy-operator-validation=true`.

          To enable the admission controller you need to set the `clusterWide` variable to `true` in the namespace-scanner object.

          Enable the scheduled scan and the admission controller for a specific namespace:
          ```bash
          kubectl label namespaces test-apps trivy-scan=true
          # or
          kubectl label namespaces test-apps trivy-operator-validation=true
          ```

          You can define policy to the Admission Controller, by adding annotation to the pod trough the deployment:

          ```bash
          spec:
            ...
            template:
              metadata:
                annotations:
                  trivy.security.devopstales.io/medium: "5"
                  trivy.security.devopstales.io/low: "10"
                  trivy.security.devopstales.io/critical: "2"
          ...
          ```

          ### Monitorng
          Trivy operator has a prometheus endpoint wher yo can get the resoults of the namespace scans and the adission controller.

          ```bash
          curl -s http://10.43.179.39:9115/metrics | grep so_vulnerabilities

          # HELP so_vulnerabilities Container vulnerabilities
          # TYPE so_vulnerabilities gauge
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="UNKNOWN"} 0
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="LOW"} 23
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="MEDIUM"} 93
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="HIGH"} 76
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="CRITICAL"} 25
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="UNKNOWN"} 0
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="LOW"} 23
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="MEDIUM"} 88
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="HIGH"} 60
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="CRITICAL"} 8
          ```

          ```bash
          curl -s http://10.43.179.39:9115/metrics | grep ac_vulnerabilities

          # HELP ac_vulnerabilities Admission Controller vulnerabilities
          # TYPE ac_vulnerabilities gauge
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="UNKNOWN"} 0.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="LOW"} 83.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="MEDIUM"} 6.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="HIGH"} 6.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="CRITICAL"} 4.0
          ```

          ### Policy Report reation
          The PolicyReport object is a protopype object probosed by the Kubernetes policy work group. The Policy Report Custom Resource Definition (CRD) can be used as a common way to provide policy results to Kubernetes cluster administrators and users, using native tools.

          Add the PolicyReport CRDs to your cluster (v1alpha2):
          ```bash
          kubectl create -f https://github.com/kubernetes-sigs/wg-policy-prototypes/raw/master/policy-report/crd/v1alpha2/wgpolicyk8s.io_policyreports.yaml
          ```

          You can enable the Policy Report creatin by setting the `policyreport` to `True` in the NamespaceScanner object.

          This objects can be visualized by the Policy Reporter UI. The Policy Reporter UI is a monitoring and Observability Tool for the PolicyReport CRD with an optional UI. It is created by Kyverno. The main goal was a tool to visualize the resoluts of the Kyverno policies, but because it uses the PolicyReports CRD it can visualize the resoults of the trivy-operator scans.
        displayName: Community Trivy Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - trivy
        - security
        links:
        - name: Documentation
          url: https://devopstales.github.io/trivy-operator
        - name: Blog
          url: https://devopstales.github.io
        maintainers:
        - email: devopstales@protonmail.com
          name: devopstales
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: devopstales
          url: devopstales.github.io
        relatedImages:
        - devopstales/trivy-operator:2.4.1
        - quay.io/openshift-community-operators/community-trivy-operator@sha256:e3652e68e1e569d7f40432fd8cbb7bfdc6738a116ecc1011c71a36f7ca5663c6
        version: 2.4.0
      entries:
      - name: community-trivy-operator.v2.4.0
        version: 2.4.0
      - name: community-trivy-operator.v2.3.0
        version: 2.3.0
      - name: community-trivy-operator.v2.2.0
        version: 2.2.0
      - name: community-trivy-operator.v2.1.1
        version: 2.1.1
      name: stable
    defaultChannel: stable
    packageName: community-trivy-operator
    provider:
      name: devopstales
      url: devopstales.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: hive-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hive-operator.v1.2.5060-b061ef0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:b061ef0a98
          createdAt: "2025-12-18T18:32:21Z"
          description: OpenShift cluster provisioning and management at scale.
          operators.operatorframework.io/internal-objects: '["checkpoints.hive.openshift.io","clusterdeprovisions.hive.openshift.io","clusterprovisions.hive.openshift.io","clusterstates.hive.openshift.io","machinepoolnameleases.hive.openshift.io","clustersyncleases.hiveinternal.openshift.io","clustersyncs.hiveinternal.openshift.io","fakeclusterinstalls.hiveinternal.openshift.io"]'
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeploymentCustomization is the Schema for clusterdeploymentcustomizations
              API.
            displayName: ClusterDeploymentCustomization
            kind: ClusterDeploymentCustomization
            name: clusterdeploymentcustomizations.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: |-
              ClusterPool represents a pool of clusters that should be kept ready to be given out to users. Clusters are removed
              from the pool once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: |-
              MachinePoolNameLease is the Schema for the MachinePoolNameLeases API. This resource is mostly empty
              as we're primarily relying on the name to determine if a lease is available.
              Note that not all cloud providers require the use of a lease for naming, at present this
              is only required for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * IBM Cloud
          * Red Hat OpenStack
          * vSphere

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Troubleshooting](https://github.com/openshift/hive/blob/master/docs/troubleshooting.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
              logLevel: debug
              targetNamespace: hive
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hive-operator:1.2.5060-b061ef0
        - quay.io/openshift-hive/hive:b061ef0a98
        version: 1.2.5060-b061ef0
      entries:
      - name: hive-operator.v1.2.5060-b061ef0
        version: 1.2.5060-b061ef0
      - name: hive-operator.v1.2.5017-715614a
        version: 1.2.5017-715614a
      - name: hive-operator.v1.2.5015-acea5e9
        version: 1.2.5015-acea5e9
      - name: hive-operator.v1.2.5011-47d2de1
        version: 1.2.5011-47d2de1
      - name: hive-operator.v1.2.4989-fc3dac7
        version: 1.2.4989-fc3dac7
      - name: hive-operator.v1.2.4975-f84d11f
        version: 1.2.4975-f84d11f
      - name: hive-operator.v1.2.4953-c248a51
        version: 1.2.4953-c248a51
      - name: hive-operator.v1.2.4928-76a65b6
        version: 1.2.4928-76a65b6
      - name: hive-operator.v1.2.4902-4929f16
        version: 1.2.4902-4929f16
      - name: hive-operator.v1.2.4896-a29a238
        version: 1.2.4896-a29a238
      - name: hive-operator.v1.2.4868-45ae912
        version: 1.2.4868-45ae912
      - name: hive-operator.v1.2.4863-e9ad0fa
        version: 1.2.4863-e9ad0fa
      - name: hive-operator.v1.2.4774-87bff59
        version: 1.2.4774-87bff59
      - name: hive-operator.v1.2.4766-6a82857
        version: 1.2.4766-6a82857
      - name: hive-operator.v1.2.4746-d25e0db
        version: 1.2.4746-d25e0db
      - name: hive-operator.v1.2.4738-b19773e
        version: 1.2.4738-b19773e
      - name: hive-operator.v1.2.4731-41f153f
        version: 1.2.4731-41f153f
      - name: hive-operator.v1.2.4703-02f3f00
        version: 1.2.4703-02f3f00
      - name: hive-operator.v1.2.4693-ec3bc72
        version: 1.2.4693-ec3bc72
      - name: hive-operator.v1.2.4686-553c6c2
        version: 1.2.4686-553c6c2
      - name: hive-operator.v1.2.4682-406d6ca
        version: 1.2.4682-406d6ca
      - name: hive-operator.v1.2.4672-af54e2f
        version: 1.2.4672-af54e2f
      - name: hive-operator.v1.2.4668-3ccd44d
        version: 1.2.4668-3ccd44d
      - name: hive-operator.v1.2.4664-00f84cc
        version: 1.2.4664-00f84cc
      - name: hive-operator.v1.2.4658-c13e207
        version: 1.2.4658-c13e207
      - name: hive-operator.v1.2.4654-3268a18
        version: 1.2.4654-3268a18
      - name: hive-operator.v1.2.4650-531d549
        version: 1.2.4650-531d549
      - name: hive-operator.v1.2.4644-365f074
        version: 1.2.4644-365f074
      - name: hive-operator.v1.2.4638-56d6d64
        version: 1.2.4638-56d6d64
      - name: hive-operator.v1.2.4625-389d717
        version: 1.2.4625-389d717
      - name: hive-operator.v1.2.4615-52100dd
        version: 1.2.4615-52100dd
      - name: hive-operator.v1.2.4605-b41ca3f
        version: 1.2.4605-b41ca3f
      - name: hive-operator.v1.2.4584-95efcb7
        version: 1.2.4584-95efcb7
      - name: hive-operator.v1.2.4574-1ec27ad
        version: 1.2.4574-1ec27ad
      - name: hive-operator.v1.2.4568-b3eca52
        version: 1.2.4568-b3eca52
      - name: hive-operator.v1.2.4564-bdf9d08
        version: 1.2.4564-bdf9d08
      - name: hive-operator.v1.2.4552-bf2d689
        version: 1.2.4552-bf2d689
      - name: hive-operator.v1.2.4532-cddd4f9
        version: 1.2.4532-cddd4f9
      - name: hive-operator.v1.2.4511-1fce770
        version: 1.2.4511-1fce770
      - name: hive-operator.v1.2.4500-b1ac27b
        version: 1.2.4500-b1ac27b
      - name: hive-operator.v1.2.4485-47df0d9
        version: 1.2.4485-47df0d9
      - name: hive-operator.v1.2.4469-7be6433
        version: 1.2.4469-7be6433
      - name: hive-operator.v1.2.4463-d7ead60
        version: 1.2.4463-d7ead60
      - name: hive-operator.v1.2.4461-97686bb
        version: 1.2.4461-97686bb
      - name: hive-operator.v1.2.4459-f910c9b
        version: 1.2.4459-f910c9b
      - name: hive-operator.v1.2.4451-83aedb9
        version: 1.2.4451-83aedb9
      - name: hive-operator.v1.2.4446-e11a23b
        version: 1.2.4446-e11a23b
      - name: hive-operator.v1.2.4441-fdbfaf0
        version: 1.2.4441-fdbfaf0
      - name: hive-operator.v1.2.4436-44323bc
        version: 1.2.4436-44323bc
      - name: hive-operator.v1.2.4428-ceaafa8
        version: 1.2.4428-ceaafa8
      - name: hive-operator.v1.2.4426-fb27114
        version: 1.2.4426-fb27114
      - name: hive-operator.v1.2.4420-fe0e302
        version: 1.2.4420-fe0e302
      - name: hive-operator.v1.2.4418-eb5403f
        version: 1.2.4418-eb5403f
      - name: hive-operator.v1.2.4416-fba8d52
        version: 1.2.4416-fba8d52
      - name: hive-operator.v1.2.4408-9c5806a
        version: 1.2.4408-9c5806a
      - name: hive-operator.v1.2.4404-410fed9
        version: 1.2.4404-410fed9
      - name: hive-operator.v1.2.4400-8c54fc9
        version: 1.2.4400-8c54fc9
      - name: hive-operator.v1.2.4386-6f1fd3e
        version: 1.2.4386-6f1fd3e
      - name: hive-operator.v1.2.4382-0e95d5b
        version: 1.2.4382-0e95d5b
      - name: hive-operator.v1.2.4366-df65e7e
        version: 1.2.4366-df65e7e
      - name: hive-operator.v1.2.4360-de169dd
        version: 1.2.4360-de169dd
      - name: hive-operator.v1.2.4355-e5f809f
        version: 1.2.4355-e5f809f
      name: alpha
    - currentCSV: hive-operator.v2.5.3516-a2ed9b3
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:v2.5.3516-a2ed9b3
          createdAt: "2022-06-03T13:24:12Z"
          description: OpenShift cluster provisioning and management at scale.
          operators.operatorframework.io/internal-objects: '["checkpoints.hive.openshift.io","clusterdeprovisions.hive.openshift.io","clusterprovisions.hive.openshift.io","clusterstates.hive.openshift.io","machinepoolnameleases.hive.openshift.io","clustersyncleases.hiveinternal.openshift.io","clustersyncs.hiveinternal.openshift.io","fakeclusterinstalls.hiveinternal.openshift.io"]'
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: ClusterPool represents a pool of clusters that should be
              kept ready to be given out to users. Clusters are removed from the pool
              once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: MachinePoolNameLease is the Schema for the MachinePoolNameLeases
              API. This resource is mostly empty as we're primarily relying on the
              name to determine if a lease is available. Note that not all cloud providers
              require the use of a lease for naming, at present this is only required
              for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * Red Hat OpenStack

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-hive/hive:v2.5.3516-a2ed9b3
        - quay.io/openshift-community-operators/hive-operator@sha256:be43412a2e4bad2cd9d15e4fbabe0292585c5bbbd65da12d519f30f17d2fe594
        version: 2.5.3516-a2ed9b3
      entries:
      - name: hive-operator.v2.5.3516-a2ed9b3
        version: 2.5.3516-a2ed9b3
      - name: hive-operator.v2.5.3514-4052426
        version: 2.5.3514-4052426
      - name: hive-operator.v2.5.3508-6cb94c6
        version: 2.5.3508-6cb94c6
      - name: hive-operator.v2.5.3506-f42617c
        version: 2.5.3506-f42617c
      - name: hive-operator.v2.5.3495-5cfdd44
        version: 2.5.3495-5cfdd44
      - name: hive-operator.v2.5.3491-6feded1
        version: 2.5.3491-6feded1
      - name: hive-operator.v2.5.3489-6dec9c3
        version: 2.5.3489-6dec9c3
      name: mce-2.0
    - currentCSV: hive-operator.v2.3.3039-60b8a9a
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:v2.3.3039-60b8a9a
          createdAt: "2022-08-15T17:23:39Z"
          description: OpenShift cluster provisioning and management at scale.
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: ClusterPool represents a pool of clusters that should be
              kept ready to be given out to users. Clusters are removed from the pool
              once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: MachinePoolNameLease is the Schema for the MachinePoolNameLeases
              API. This resource is mostly empty as we're primarily relying on the
              name to determine if a lease is available. Note that not all cloud providers
              require the use of a lease for naming, at present this is only required
              for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * Red Hat OpenStack

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/hive-operator@sha256:822fd8e65c241cebedd835bfebf67645199561cfdd6148d5afffb8b35e499ae3
        - quay.io/openshift-hive/hive:v2.3.3039-60b8a9a
        version: 2.3.3039-60b8a9a
      entries:
      - name: hive-operator.v2.3.3039-60b8a9a
        version: 2.3.3039-60b8a9a
      name: ocm-2.3
    - currentCSV: hive-operator.v2.4.3231-ba51985
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:v2.4.3231-ba51985
          createdAt: "2022-08-15T11:53:28Z"
          description: OpenShift cluster provisioning and management at scale.
          operators.operatorframework.io/internal-objects: '["checkpoints.hive.openshift.io","clusterdeprovisions.hive.openshift.io","clusterprovisions.hive.openshift.io","clusterstates.hive.openshift.io","machinepoolnameleases.hive.openshift.io","clustersyncleases.hiveinternal.openshift.io","clustersyncs.hiveinternal.openshift.io","fakeclusterinstalls.hiveinternal.openshift.io"]'
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: ClusterPool represents a pool of clusters that should be
              kept ready to be given out to users. Clusters are removed from the pool
              once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: MachinePoolNameLease is the Schema for the MachinePoolNameLeases
              API. This resource is mostly empty as we're primarily relying on the
              name to determine if a lease is available. Note that not all cloud providers
              require the use of a lease for naming, at present this is only required
              for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * Red Hat OpenStack

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/hive-operator@sha256:9a3cb682afc66ad662045b3d8ff214203cc00be60f66f74564820f6dcf99cd69
        - quay.io/openshift-hive/hive:v2.4.3231-ba51985
        version: 2.4.3231-ba51985
      entries:
      - name: hive-operator.v2.4.3231-ba51985
        version: 2.4.3231-ba51985
      - name: hive-operator.v2.4.3227-74831db
        version: 2.4.3227-74831db
      - name: hive-operator.v2.4.3222-d68346c
        version: 2.4.3222-d68346c
      - name: hive-operator.v2.4.3206-b0714a7
        version: 2.4.3206-b0714a7
      - name: hive-operator.v2.4.3203-672cfe7
        version: 2.4.3203-672cfe7
      - name: hive-operator.v2.4.3201-8c50440
        version: 2.4.3201-8c50440
      - name: hive-operator.v2.4.3199-cce4cb9
        version: 2.4.3199-cce4cb9
      - name: hive-operator.v2.4.3197-6c9c8e4
        version: 2.4.3197-6c9c8e4
      - name: hive-operator.v2.4.3194-f82b7d8
        version: 2.4.3194-f82b7d8
      - name: hive-operator.v2.4.3192-fae0111
        version: 2.4.3192-fae0111
      - name: hive-operator.v2.4.3189-026033b
        version: 2.4.3189-026033b
      - name: hive-operator.v2.4.3180-7299056
        version: 2.4.3180-7299056
      - name: hive-operator.v1.2.3179-0756b70e6
        version: 1.2.3179-0756b70e6
      - name: hive-operator.v1.1.16
        version: 1.1.16
      - name: hive-operator.v1.1.15
        version: 1.1.15
      - name: hive-operator.v1.1.14
        version: 1.1.14
      - name: hive-operator.v1.1.13
        version: 1.1.13
      - name: hive-operator.v1.1.12
        version: 1.1.12
      - name: hive-operator.v1.1.11
        version: 1.1.11
      - name: hive-operator.v1.1.10
        version: 1.1.10
      - name: hive-operator.v1.1.9
        version: 1.1.9
      - name: hive-operator.v1.1.8
        version: 1.1.8
      - name: hive-operator.v1.1.7
        version: 1.1.7
      - name: hive-operator.v1.1.6
        version: 1.1.6
      name: ocm-2.4
    defaultChannel: alpha
    packageName: hive-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-nifi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nifi-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/nifi-operator@sha256:bc776bff99d4a9ead08cf1b688715f3f9e676e9f7747a4df121326e46eb1bf9c
          description: Stackable Operator for Apache NiFi
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/nifi-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for NifiClusterSpec via `CustomResource`
            displayName: nificlusters.nifi.stackable.tech
            kind: NifiCluster
            name: nificlusters.nifi.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache NiFi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nifi
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/nifi-operator@sha256:bc776bff99d4a9ead08cf1b688715f3f9e676e9f7747a4df121326e46eb1bf9c
        - registry.connect.redhat.com/stackable/stackable-apache-nifi-operator@sha256:66f83e489da98272e561125e19a92d9b8347fca790e413ca627211a6f487472c
        version: 25.11.0
      entries:
      - name: nifi-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-nifi-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: PingCAP
      provider-url: ""
    name: tidb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tidb-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pingcap.com/v1alpha1",
                "kind": "TidbCluster",
                "metadata": {
                  "name": "basic"
                },
                "spec": {
                  "version": "v5.4.0",
                  "timezone": "UTC",
                  "pvReclaimPolicy": "Delete",
                  "discovery": {},
                  "pd": {
                    "baseImage": "pingcap/pd",
                    "replicas": 1,
                    "requests": {
                      "storage": "1Gi"
                    },
                    "config": {}
                  },
                  "tikv": {
                    "baseImage": "pingcap/tikv",
                    "replicas": 1,
                    "requests": {
                      "storage": "1Gi"
                    },
                    "config": {
                      "storage": {
                        "reserve-space": "0MB"
                      }
                    }
                  },
                  "tidb": {
                    "baseImage": "pingcap/tidb",
                    "replicas": 1,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "config": {}
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: pingcap/tidb-operator:v1.3.1
          createdAt: 2021-2-15T07-18-39Z
          description: TiDB Operator manages TiDB clusters on Kubernetes and automates
            tasks related to operating a TiDB cluster. It makes TiDB a truly cloud-native
            database.
          repository: https://github.com/pingcap/tidb-operator
          support: KanShiori
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup
            displayName: Backup
            kind: Backup
            name: backups.pingcap.com
            version: v1alpha1
          - description: Backup Schedule
            displayName: BackupSchedule
            kind: BackupSchedule
            name: backupschedules.pingcap.com
            version: v1alpha1
          - description: DM Cluster
            displayName: DMCluster
            kind: DMCluster
            name: dmclusters.pingcap.com
            version: v1alpha1
          - description: Restore
            displayName: Restore
            kind: Restore
            name: restores.pingcap.com
            version: v1alpha1
          - description: Tidb Cluster Auto Scaler
            displayName: TidbClusterAutoScaler
            kind: TidbClusterAutoScaler
            name: tidbclusterautoscalers.pingcap.com
            version: v1alpha1
          - description: Tidb Cluster
            displayName: TidbCluster
            kind: TidbCluster
            name: tidbclusters.pingcap.com
            version: v1alpha1
          - description: Tidb Initializer
            displayName: TidbInitializer
            kind: TidbInitializer
            name: tidbinitializers.pingcap.com
            version: v1alpha1
          - description: Tidb Monitor
            displayName: TidbMonitor
            kind: TidbMonitor
            name: tidbmonitors.pingcap.com
            version: v1alpha1
          - description: Tidb NG Monitoring
            displayName: TidbNGMonitoring
            kind: TidbNGMonitoring
            name: tidbngmonitorings.pingcap.com
            version: v1alpha1
        description: |
          ## About the managed application
          TiDB ("Ti" stands for Titanium) is an open-source, distributed, NewSQL database that supports Hybrid Transactional and Analytical Processing (HTAP) workloads. It is MySQL compatible and features horizontal scalability, strong consistency, and high availability. TiDB can be deployed on-premise or in-cloud.
          ## About this Operator

          TiDB Operator manages TiDB clusters on Kubernetes and automates tasks related to operating a TiDB cluster. It makes TiDB a truly cloud-native database.

          ## Features

          * Safely scaling the TiDB cluster

          TiDB Operator empowers TiDB with horizontal scalability on the cloud.

          * Rolling update of the TiDB cluster

          Gracefully perform rolling updates for the TiDB cluster in order, achieving zero-downtime of the TiDB cluster.

          * Multi-tenant support

          Users can deploy and manage multiple TiDB clusters on a single Kubernetes cluster easily.

          * Automatic failover

          TiDB Operator automatically performs failover for your TiDB cluster when node failures occur.

          * Kubernetes package manager support

          By embracing Kubernetes package manager Helm, users can easily deploy TiDB clusters with only one command.

          * Automatically monitoring TiDB cluster at creating

          Automatically deploy Prometheus, Grafana for TiDB cluster monitoring.

          ## Quick Start
          You can follow our [Get Started](https://docs.pingcap.com/tidb-in-kubernetes/stable/get-started) guide to quickly start a testing Kubernetes cluster and play with TiDB Operator on your own machine.

          ## Documentation

          You can see our documentation at PingCAP website for more in-depth installation and instructions for production:

          - [English](https://docs.pingcap.com/tidb-in-kubernetes/stable)
          - [简体中文](https://docs.pingcap.com/zh/tidb-in-kubernetes/stable)

          All the TiDB Operator documentation is maintained in the [docs-tidb-operator repository](https://github.com/pingcap/docs-tidb-operator).

          ## Community

          Feel free to reach out if you have any questions. The maintainers of this project are reachable via:

          - [TiDB Community Slack](https://pingcap.com/tidbslack/) in the [#sig-k8s](https://tidbcommunity.slack.com/archives/CHD0HA3LZ) channel
          - [Filing an issue](https://github.com/pingcap/tidb-operator/issue) against this repo

          Pull Requests are welcome! Check the [issue tracker](https://github.com/pingcap/tidb-operator/issue) for `status/help-wanted` issues if you're unsure where to start.

          If you're planning a new feature, please file an issue or join [#sig-k8s](https://tidbcommunity.slack.com/archives/CHD0HA3LZ) channel to discuss first.
          ## Prerequisites for enabling this Operator
        displayName: TiDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TiDB
        - SQL
        - Database
        links:
        - name: GitHub
          url: https://github.com/pingcap/tidb-operator
        - name: Documentation
          url: https://docs.pingcap.com/tidb-in-kubernetes/stable
        maintainers:
        - email: zhanghailong@pingcap.com
          name: Daniel Zhang
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: PingCAP
        relatedImages:
        - quay.io/openshift-community-operators/tidb-operator@sha256:4f73b39de6129b906b5eb7bb0b7485f3da406cfad8616f81e375cc8ffcb156ed
        - pingcap/tidb-operator:v1.3.1
        version: 1.3.1
      entries:
      - name: tidb-operator.v1.3.1
        version: 1.3.1
      name: stable
    defaultChannel: stable
    packageName: tidb-operator
    provider:
      name: PingCAP
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Upbound Inc.
      provider-url: https://upbound.io
    name: universal-crossplane
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: universal-crossplane.1.5.1-up.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"pkg.crossplane.io/v1",
                "kind":"Configuration",
                "metadata":{
                  "name":"xp-getting-started-with-aws"
                },
                "spec":{
                  "package":"registry.upbound.io/xp/getting-started-with-aws:v1.2.2"
                }
              },
              {
                "apiVersion":"apiextensions.crossplane.io/v1",
                "kind":"CompositeResourceDefinition",
                "metadata":{
                  "name":"compositepostgresqlinstances.database.example.org"
                },
                "spec":{
                  "group":"database.example.org",
                  "names":{
                    "kind":"CompositePostgreSQLInstance",
                    "plural":"compositepostgresqlinstances"
                  },
                  "claimNames":{
                    "kind":"PostgreSQLInstance",
                    "plural":"postgresqlinstances"
                  },
                  "connectionSecretKeys":[
                      "username",
                      "password",
                      "endpoint",
                      "port"
                  ],
                  "versions":[
                    {
                      "name":"v1alpha1",
                      "served":true,
                      "referenceable":true,
                      "schema":{
                        "openAPIV3Schema":{
                          "type":"object",
                          "properties":{
                            "spec":{
                              "type":"object",
                              "properties":{
                                "parameters":{
                                  "type":"object",
                                  "properties":{
                                    "storageGB":{
                                      "type":"integer"
                                    }
                                  },
                                  "required":[
                                      "storageGB"
                                  ]
                                }
                              },
                              "required":[
                                  "parameters"
                              ]
                            }
                          }
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion":"apiextensions.crossplane.io/v1",
                "kind":"Composition",
                "metadata":{
                  "name":"compositepostgresqlinstances.aws.database.example.org",
                  "labels":{
                    "provider":"aws",
                    "guide":"quickstart",
                    "vpc":"default"
                  }
                },
                "spec":{
                  "writeConnectionSecretsToNamespace":"crossplane-system",
                  "compositeTypeRef":{
                    "apiVersion":"database.example.org/v1alpha1",
                    "kind":"CompositePostgreSQLInstance"
                  },
                  "resources":[
                    {
                      "name":"rdsinstance",
                      "base":{
                        "apiVersion":"database.aws.crossplane.io/v1beta1",
                        "kind":"RDSInstance",
                        "spec":{
                          "forProvider":{
                            "region":"us-east-1",
                            "dbInstanceClass":"db.t2.small",
                            "masterUsername":"masteruser",
                            "engine":"postgres",
                            "engineVersion":"9.6",
                            "skipFinalSnapshotBeforeDeletion":true,
                            "publiclyAccessible":true
                          },
                          "writeConnectionSecretToRef":{
                            "namespace":"crossplane-system"
                          }
                        }
                      },
                      "patches":[
                        {
                          "fromFieldPath":"metadata.uid",
                          "toFieldPath":"spec.writeConnectionSecretToRef.name",
                          "transforms":[
                            {
                              "type":"string",
                              "string":{
                                "fmt":"%s-postgresql"
                              }
                            }
                          ]
                        },
                        {
                          "fromFieldPath":"spec.parameters.storageGB",
                          "toFieldPath":"spec.forProvider.allocatedStorage"
                        }
                      ],
                      "connectionDetails":[
                        {
                          "fromConnectionSecretKey":"username"
                        },
                        {
                          "fromConnectionSecretKey":"password"
                        },
                        {
                          "fromConnectionSecretKey":"endpoint"
                        },
                        {
                          "fromConnectionSecretKey":"port"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion":"pkg.crossplane.io/v1",
                "kind":"Provider",
                "metadata":{
                  "name":"provider-aws"
                },
                "spec":{
                  "package":"crossplane/provider-aws:master"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Application Runtime, Cloud Provider, Database, Integration &
            Delivery, Networking, Storage
          com.redhat.component: universal-crossplane
          com.redhat.delivery.backport: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.6
          containerImage: upbound/uxp-bootstrapper
          createdAt: 2021-05-18T00:00:00+0000
          description: Upbound Universal Crossplane (UXP) is Upbound's official enterprise-grade
            distribution of Crossplane.
          io.k8s.display-name: universal-crossplane
          io.openshift.tags: uxp,crossplane,upbound
          maintainer: Upbound Inc. <info@upbound.io>
          name: universal-crossplane
          ocs.tags: v4.6
          operatorframework.io/initialization-resource: |
            apiVersion: v1
            kind: Secret
            metadata:
              name: upbound-control-plane-token
              namespace: upbound-system
            type: Opaque
            data:
              token: "Output of `up cloud controlplane attach | base64` command"
          operatorframework.io/suggested-namespace: upbound-system
          operators.operatorframework.io.bundle.channel.default.v1: stable
          operators.operatorframework.io.bundle.channels.v1: stable
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: universal-crossplane
          operators.operatorframework.io/internal-objects: '["locks.pkg.crossplane.io"]'
          repository: https://github.com/upbound/universal-crossplane
          summary: Upbound Universal Crossplane (UXP) is Upbound's official enterprise-grade
            distribution of Crossplane.
          support: Upbound Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: CompositeResourceDefinition
            kind: CompositeResourceDefinition
            name: compositeresourcedefinitions.apiextensions.crossplane.io
            version: v1
          - displayName: CompositionRevision
            kind: CompositionRevision
            name: compositionrevisions.apiextensions.crossplane.io
            version: v1alpha1
          - displayName: Composition
            kind: Composition
            name: compositions.apiextensions.crossplane.io
            version: v1
          - displayName: ConfigurationRevision
            kind: ConfigurationRevision
            name: configurationrevisions.pkg.crossplane.io
            version: v1
          - displayName: Configuration
            kind: Configuration
            name: configurations.pkg.crossplane.io
            version: v1
          - displayName: ControllerConfig
            kind: ControllerConfig
            name: controllerconfigs.pkg.crossplane.io
            version: v1alpha1
          - displayName: Lock
            kind: Lock
            name: locks.pkg.crossplane.io
            version: v1alpha1
          - displayName: ProviderRevision
            kind: ProviderRevision
            name: providerrevisions.pkg.crossplane.io
            version: v1
          - displayName: Provider
            kind: Provider
            name: providers.pkg.crossplane.io
            version: v1
        description: |
          ## Overview

          Upbound Universal Crossplane (UXP) is [Upbound's][upbound] official
          enterprise-grade distribution of [Crossplane][crossplane]. It's fully compatible
          with upstream Crossplane, open source, capable of connecting to Upbound Cloud
          for real-time dashboard visibility, and maintained by Upbound. It's the easiest
          way for both individual community members and enterprises to build their
          production control planes.

          ## Quick Start

          1. Install the [Upbound CLI][upbound-cli].
              ```console
              curl -sL https://cli.upbound.io | sh
              # Install with Homebrew
              brew install upbound/tap/up
              ```

          2. [Create an Upbound account][create-account] for a free dashboard for UXP.

          3. Connect UXP to Upbound Cloud.
              ```console
              # The name of your new UXP control plane.
              UXP_NAME=mycrossplane

              up cloud login
              up cloud controlplane attach ${UXP_NAME} | up uxp connect -
              ```

          4. Manage your UXP control plane by [signing in][login] to your Upbound account.

          ## Additional Resources

          - The [UXP Documentation][uxp-documentation] provides additional information
            about UXP and resources for developers, like examples.
          - The [developer guide][developer-guide] describes how to build and run UXP
            locally from source.
          - [UXP Slack][uxp-slack] is where you can go to get all of your UXP questions
            answered.

          [upbound]: https://upbound.io
          [crossplane]: https://crossplane.io/
          [upbound-cli]: https://github.com/upbound/up
          [create-account]: https://cloud.upbound.io/register
          [login]: https://cloud.upbound.io/login
          [uxp-documentation]: https://cloud.upbound.io/docs/uxp
          [developer-guide]: https://github.com/upbound/universal-crossplane/blob/main/docs/developer-guide.md
          [uxp-slack]: https://crossplane.slack.com/archives/upbound
        displayName: Upbound Universal Crossplane (UXP)
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - infrastructure
        - services
        - application
        - database
        - cache
        - bucket
        - infra
        - app
        - ops
        - oam
        - gcp
        - azure
        - aws
        - alibaba
        - cloudsql
        - rds
        - s3
        - azuredatabase
        - asparadb
        - gke
        - aks
        - eks
        links:
        - name: GitHub
          url: https://github.com/upbound/universal-crossplane
        - name: Website
          url: https://upbound.io
        - name: Twitter
          url: https://twitter.com/upbound_io
        - name: Slack
          url: https://slack.crossplane.io/
        maintainers:
        - email: info@upbound.io
          name: Upbound Inc.
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Upbound Inc.
          url: https://upbound.io
        relatedImages:
        - upbound/crossplane:v1.5.1-up.1
        - upbound/uxp-bootstrapper:v1.5.1-up.1
        - upbound/xgql:v0.1.5
        - quay.io/openshift-community-operators/universal-crossplane@sha256:b3104adb471083de96d49fa53f663dcf0e3e7ff5e3573bb1422aa6045277bea0
        version: 1.5.1-up.1
      entries:
      - name: universal-crossplane.1.5.1-up.1
        version: 1.5.1-up.1
      - name: universal-crossplane.1.4.3-up.1
        version: 1.4.3-up.1
      - name: universal-crossplane.1.3.3-up.1
        version: 1.3.3-up.1
      - name: universal-crossplane.1.3.1-up.1
        version: 1.3.1-up.1
      - name: universal-crossplane.1.2.3-up.1
        version: 1.2.3-up.1
      - name: universal-crossplane.1.2.2-up.1
        version: 1.2.2-up.1
      - name: universal-crossplane.1.2.1-up.4
        version: 1.2.1-up.4
      - name: universal-crossplane.1.2.1-up.3
        version: 1.2.1-up.3
      name: stable
    defaultChannel: stable
    packageName: universal-crossplane
    provider:
      name: Upbound Inc.
      url: https://upbound.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: oadp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: oadp-operator.v0.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "Velero",
                "metadata": {
                  "name": "example-velero",
                  "namespace":"openshift-adp"
                },
                "spec": {
                  "backupStorageLocations": [
                    {
                      "config": {
                        "profile": "default",
                        "region": "us-east-1"
                      },
                      "name": "default",
                      "objectStorage": {
                        "bucket": "myBucket",
                        "prefix": "velero"
                      },
                      "provider": "aws"
                    }
                  ],
                  "defaultVeleroPlugins": [
                    "aws",
                    "csi",
                    "openshift"
                  ],
                  "veleroFeatureFlags": [
                    "EnableCSI"
                  ],
                  "enableRestic": true,
                  "volumeSnapshotLocations": [
                    {
                      "config": {
                        "profile": "default",
                        "region": "us-west-1"
                      },
                      "name": "default",
                      "provider": "aws"
                    }
                  ]
                }
               },
                {
                  "apiVersion": "velero.io/v1",
                  "kind": "Backup",
                  "metadata": {
                    "name": "backup",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "BackupStorageLocation",
                  "metadata": {
                    "name": "backupstoragelocation",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "DeleteBackupRequest",
                  "metadata": {
                    "name": "deletebackuprequest",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "DownloadRequest",
                  "metadata": {
                    "name": "downloadrequest",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "PodVolumeBackup",
                  "metadata": {
                    "name": "podvolumebackup",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "PodVolumeRestore",
                  "metadata": {
                    "name": "podvolumerestore",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "ResticRepository",
                  "metadata": {
                    "name": "resticrepository",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "Restore",
                  "metadata": {
                    "name": "restore",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "Schedule",
                  "metadata": {
                    "name": "schedule",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "ServerStatusRequest",
                  "metadata": {
                    "name": "serverstatusrequest",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "VolumeSnapshotLocation",
                  "metadata": {
                    "name": "volumesnapshotlocation",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/konveyor/oadp-operator@sha256:ecb8534fbc245e890b9c7766946d01e1a8b4ce9be359c4ada4c95fd908b679b3
          createdAt: "2020-09-08T12:21:00Z"
          description: |-
            OADP (OpenShift API for Data Protection) operator sets up and installs
            Velero on the OpenShift platform.
          olm.skipRange: '>=0.0.0 <0.4.2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-adp
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          repository: https://github.com/openshift/oadp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Velero is a tool to safely backup and restore, perform disaster
              recovery and migrate Kubernetes cluster resources and persistent volumes.
            displayName: Velero
            kind: Velero
            name: veleroes.oadp.openshift.io
            version: v1alpha1
          - description: BackupStorageLocation represents an object storage location
              (Such as Amazon S3 Bucket) where Velero stores backup objects.
            displayName: BackupStorageLocation
            kind: BackupStorageLocation
            name: backupstoragelocations.velero.io
            version: v1
          - description: Backup is a Velero resource that respresents the capture
              of Kubernetes cluster state at a point in time (API objects and associated
              volume state).
            displayName: Backup
            kind: Backup
            name: backups.velero.io
            version: v1
          - description: DeleteBackupRequest is a request to delete one or more backups.
            displayName: DeleteBackupRequest
            kind: DeleteBackupRequest
            name: deletebackuprequests.velero.io
            version: v1
          - description: DownloadRequest is a request to download an artifact from
              object storage such as a backup log file.
            displayName: DownloadRequest
            kind: DownloadRequest
            name: downloadrequests.velero.io
            version: v1
          - description: A velero pod volume backup is a restic backup of persistent
              volumes attached to a running pod.
            displayName: PodVolumeBackup
            kind: PodVolumeBackup
            name: podvolumebackups.velero.io
            version: v1
          - description: A velero pod volume restore is a restic restore of persistent
              volumes attached to a running pod.
            displayName: PodVolumeRestore
            kind: PodVolumeRestore
            name: podvolumerestores.velero.io
            version: v1
          - description: A restic repository is an indicator of a connection from
              the restic server to the backupstoragelocation.
            displayName: ResticRepository
            kind: ResticRepository
            name: resticrepositories.velero.io
            version: v1
          - description: Restore is a Velero resource that represents the application
              of resources from a Velero backup to a target Kubernetes cluster.
            displayName: Restore
            kind: Restore
            name: restores.velero.io
            version: v1
          - description: Schedule is a Velero resource that represents a pre-scheduled
              or periodic Backup that should be run.
            displayName: Schedule
            kind: Schedule
            name: schedules.velero.io
            version: v1
          - description: ServerStatusRequest is a request to access current status
              information about the Velero server.
            displayName: ServerStatusRequest
            kind: ServerStatusRequest
            name: serverstatusrequests.velero.io
            version: v1
          - description: VolumeSnapshotLocation is a location where Velero stores
              volume snapshots.
            displayName: VolumeSnapshotLocation
            kind: VolumeSnapshotLocation
            name: volumesnapshotlocations.velero.io
            version: v1
        description: OADP (OpenShift API for Data Protection) operator sets up and
          installs Velero on the OpenShift platform.
        displayName: OADP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - velero
        - openshift
        - oadp
        links:
        - name: OADP Operator
          url: https://oadp.konveyor.io/
        maintainers:
        - email: dymurray@redhat.com
          name: Dylan Murray
        - email: spampatt@redhat.com
          name: Shubham Dilip Pampattiwar
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/konveyor/velero-plugin-for-microsoft-azure@sha256:62a344e5cf196e55dae92e537648987d758ccc75985bc45e9be6d0646a9e64d0
        - quay.io/konveyor/velero-restic-restore-helper@sha256:c4d12829e42cabe70b662a659875900677dfb415f912f931c3bf4c09a26aed5b
        - quay.io/openshift-community-operators/oadp-operator@sha256:f8c5c6e59f13db8847080ea6d964da6e50e56f7d373bcc4e4278b1a8a80395e4
        - quay.io/konveyor/openshift-velero-plugin@sha256:aec8b4fc66cfcebd5a35ce99d8c985453ebf25c11453d30256089a8b425990b5
        - quay.io/konveyor/velero-plugin-for-gcp@sha256:3300458b1d6c1514dca7d24353ad03bd92db396b2a29f7d3522563160a5f5219
        - quay.io/konveyor/velero@sha256:e7865cc707664eb6ee767e77ccd933420604c2562736b53e16c8043a51df9d86
        - quay.io/konveyor/registry@sha256:b74ab3278b79eb89f99b6970c6aa0f5306221a8495b5496faad6cab2f74ff2cd
        - quay.io/konveyor/velero-plugin-for-aws@sha256:2197c6fef32910747526d33c1462b75cb7940aeace65791d0a5ddaa038480e52
        - quay.io/konveyor/oadp-operator@sha256:ecb8534fbc245e890b9c7766946d01e1a8b4ce9be359c4ada4c95fd908b679b3
        - quay.io/konveyor/velero-plugin-for-csi@sha256:5c2261effc902d8baa16e38265f9ad1fbe5284a3e6abd2bbc97761c161fa92cf
        version: 0.4.2
      entries:
      - name: oadp-operator.v0.4.2
        version: 0.4.2
      - name: oadp-operator.v0.4.1
        version: 0.4.1
      - name: oadp-operator.v0.4.0
        version: 0.4.0
      - name: oadp-operator.v0.3.0
        version: 0.3.0
      name: beta
    - currentCSV: oadp-operator.v0.5.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "DataProtectionApplication",
                "metadata": {
                  "name": "velero-sample"
                },
                "spec": {
                  "backupLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-east-1"
                        },
                        "credential": {
                          "key": "cloud",
                          "name": "cloud-credentials"
                        },
                        "default": true,
                        "objectStorage": {
                          "bucket": "my-bucket-name",
                          "prefix": "velero"
                        },
                        "provider": "aws"
                      }
                    }
                  ],
                  "configuration": {
                    "restic": {
                      "enable": true
                    },
                    "velero": {
                      "defaultPlugins": [
                        "openshift",
                        "aws"
                      ]
                    }
                  },
                  "snapshotLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-west-2"
                        },
                        "provider": "aws"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "BackupStorageLocation",
                "metadata": {
                  "name": "backupstoragelocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DeleteBackupRequest",
                "metadata": {
                  "name": "deletebackuprequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DownloadRequest",
                "metadata": {
                  "name": "downloadrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeBackup",
                "metadata": {
                  "name": "podvolumebackup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeRestore",
                "metadata": {
                  "name": "podvolumerestore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "ResticRepository",
                "metadata": {
                  "name": "resticrepository",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Schedule",
                "metadata": {
                  "name": "schedule",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "ServerStatusRequest",
                "metadata": {
                  "name": "serverstatusrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "VolumeSnapshotLocation",
                "metadata": {
                  "name": "volumesnapshotlocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/konveyor/oadp-operator@sha256:90609044d52173619ea1e63ddef0ef3e7c1c939ac737b64bd427cbed5374dd27
          createdAt: "2020-09-08T12:21:00Z"
          description: |-
            OADP (OpenShift API for Data Protection) operator sets up and installs
            Velero on the OpenShift platform.
          olm.skipRange: '>=0.0.0 <0.5.6'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-adp
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/oadp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is a Velero resource that respresents the capture
              of Kubernetes cluster state at a point in time (API objects and associated
              volume state).
            displayName: Backup
            kind: Backup
            name: backups.velero.io
            version: v1
          - description: BackupStorageLocation represents an object storage location
              (Such as Amazon S3 Bucket) where Velero stores backup objects.
            displayName: BackupStorageLocation
            kind: BackupStorageLocation
            name: backupstoragelocations.velero.io
            version: v1
          - kind: CloudStorage
            name: cloudstorages.oadp.openshift.io
            version: v1alpha1
          - description: DataProtectionApplication represents configuration to install
              a data protection application to safely backup and restore, perform
              disaster recovery and migrate Kubernetes cluster resources and persistent
              volumes.
            displayName: DataProtectionApplication
            kind: DataProtectionApplication
            name: dataprotectionapplications.oadp.openshift.io
            version: v1alpha1
          - description: DeleteBackupRequest is a request to delete one or more backups.
            displayName: DeleteBackupRequest
            kind: DeleteBackupRequest
            name: deletebackuprequests.velero.io
            version: v1
          - description: DownloadRequest is a request to download an artifact from
              object storage such as a backup log file.
            displayName: DownloadRequest
            kind: DownloadRequest
            name: downloadrequests.velero.io
            version: v1
          - description: A velero pod volume backup is a restic backup of persistent
              volumes attached to a running pod.
            displayName: PodVolumeBackup
            kind: PodVolumeBackup
            name: podvolumebackups.velero.io
            version: v1
          - description: A velero pod volume restore is a restic restore of persistent
              volumes attached to a running pod.
            displayName: PodVolumeRestore
            kind: PodVolumeRestore
            name: podvolumerestores.velero.io
            version: v1
          - description: A restic repository is an indicator of a connection from
              the restic server to the backupstoragelocation.
            displayName: ResticRepository
            kind: ResticRepository
            name: resticrepositories.velero.io
            version: v1
          - description: Restore is a Velero resource that represents the application
              of resources from a Velero backup to a target Kubernetes cluster.
            displayName: Restore
            kind: Restore
            name: restores.velero.io
            version: v1
          - description: Schedule is a Velero resource that represents a pre-scheduled
              or periodic Backup that should be run.
            displayName: Schedule
            kind: Schedule
            name: schedules.velero.io
            version: v1
          - description: ServerStatusRequest is a request to access current status
              information about the Velero server.
            displayName: ServerStatusRequest
            kind: ServerStatusRequest
            name: serverstatusrequests.velero.io
            version: v1
          - description: VolumeSnapshotLocation is a location where Velero stores
              volume snapshots.
            displayName: VolumeSnapshotLocation
            kind: VolumeSnapshotLocation
            name: volumesnapshotlocations.velero.io
            version: v1
        description: OADP (OpenShift API for Data Protection) operator sets up and
          installs Data Protection Applications on the OpenShift platform.
        displayName: OADP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - velero
        - openshift
        - oadp
        links:
        - name: OADP Operator
          url: https://oadp.konveyor.io/
        maintainers:
        - email: dymurray@redhat.com
          name: Dylan Murray
        - email: spampatt@redhat.com
          name: Shubham Dilip Pampattiwar
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/konveyor/velero@sha256:0ea5336dcbf0a1fab561697b24da01a0e5b533ee23553fbfd5f8e002f5a31c3e
        - quay.io/konveyor/velero-restic-restore-helper@sha256:c16248d027c09cd5b7360ae38484df88ca1cc01f9e470e3eade95076ee1a6b84
        - quay.io/konveyor/registry@sha256:1be970879206258335357e3cf630138c24b8a5ccab35aae05eccb260e5e8ffb4
        - quay.io/konveyor/velero-plugin-for-csi@sha256:8c36ccfd294dafc415a7f113770cbbd66dbf6ecf8fef3bc4e73adc9878c606b0
        - quay.io/konveyor/velero-plugin-for-microsoft-azure@sha256:2d0089cbe715b482fb42e1acd9add70b975a8575636d8b143e6f90cef317ea13
        - quay.io/openshift-community-operators/oadp-operator@sha256:b7b4d340157513da2ebef6bc7bc262967d0e825e2baa1f2bc2ab2e170457e015
        - quay.io/konveyor/oadp-operator@sha256:90609044d52173619ea1e63ddef0ef3e7c1c939ac737b64bd427cbed5374dd27
        - quay.io/konveyor/openshift-velero-plugin@sha256:221ab0bcd1d95fc166ef7319d187e196b59d2fbf9eefd29d91bd6435d45b5c3c
        - quay.io/konveyor/velero-plugin-for-aws@sha256:1e8bc27d6b60000e1406085d582910cb530af3fb901ef9bc780628df6c766288
        - quay.io/konveyor/velero-plugin-for-gcp@sha256:ee463ed2a8019c560961b118f8a87b587ed302f24fd25480c5d4ddad2557e92f
        version: 0.5.6
      entries:
      - name: oadp-operator.v0.5.6
        version: 0.5.6
      - name: oadp-operator.v0.5.5
        version: 0.5.5
      - name: oadp-operator.v0.5.4
        version: 0.5.4
      - name: oadp-operator.v0.5.3
        version: 0.5.3
      - name: oadp-operator.v0.5.2
        version: 0.5.2
      - name: oadp-operator.v0.5.1
        version: 0.5.1
      - name: oadp-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: oadp-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: quay-bridge-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: quay-bridge-operator.v3.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "my-quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecretName": "<NAMESPACE>/<SECRET>",
                  "quayHostname": "https://<QUAY_URL>",
                  "insecureRegistry": false,
                  "whitelistNamespaces": ["default"]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:501fe9b003b5066b3936def0ef4de05abd1a12e795e718d6c9a62d2c6c804c2e
          createdAt: 2021-11-02 11:11 UTC
          description: Enhance OCP using Red Hat Quay container registry
          repository: https://github.com/redhat-cop/quay-openshift-registry-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a connected Quay instance.
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.redhatcop.redhat.io
            version: v1alpha1
        description: "## Overview\n\nThe OpenShift Container Platform contains an
          in cluster image registry for pushing and pulling images that either produced
          within the cluster or are references from external sources. Quay is a highly
          available, enterprise grade image registry with enhanced role based access
          control (RBAC) features. The goal of this operator is to support replicating
          the features found within OpenShift intgrated image registry with Quay.\n\n##
          Functionality\n\nThe following capabilities are enabled through this operator:\n\n*
          Synchronization of OpenShift namespaces as Quay organizations\n    * Creation
          of Robot accounts for each default namespace service account\n    * Creation
          of Secrets for each created Robot Account\n        * Associate Robot Secret
          to Service Account as Mountable and Image Pull Secret\n    * Synchronization
          of OpenShift ImageStreams as Quay Repositories\n* Automatically rewrite
          new Builds making use of ImageStreams to output to Quay\n* Automatically
          import ImageStream tag once build completes\n\n## Prerequisites\n\nThe following
          requirements must be satisfied prior to setting and configuring the integration
          between OpenShift and Quay:\n\n* A Red Hat Quay environment with a user
          with superuser permissions\n* A Red Hat OpenShift Container Platform environment
          (at least version 4.0) with cluster-admin permissions on an OpenShift cluster
          \n*\tOpenShift Command Line tool (CLI)\n\n## Setup and Configuration\n\nThe
          setup process involves steps within both Quay and OpenShift as described
          below:\n\n### Quay Setup\n\nThe integration between OpenShift and Quay makes
          extensive use of the Quay RESTFul API. To allow for other methods aside
          from user credentials to be used for authenticating against the API, an
          application is required to be created. When an application is created, an
          OAuth token is generated which can be used by the operator in OpenShift.
          Applications are created within a Quay organization. While an existing organization
          can be utilized, it is recommended that a dedicated organization be used.\n\n1.\tLogin
          to Quay as a user with superuser access and select the organization for
          which the external application will be configured within.\n2.\tOn the left
          hand side of the page, select **Applications**\n3.\tCreate a new application
          by selecting the **Create New Application** button and entering a name for
          the application\n4.\tAfter the new application has been created, select
          the application that was created\n5.\tOn the lefthand navigation bar, select
          the **Generate Token** button to create a new OAuth2 token\n6.\tSelect all
          of the checkboxes to grant the necessary access that is needed for the integration\n7.\tReview
          the permissions that will be assigned and then select the **Authorize Application**
          button\n8.\tTake note of the generated Access Token as it will be needed
          in the following section\n\n### OpenShift Setup\n\nTo complete the process
          to begin to integrate OpenShift and Quay, several steps are required. Before
          beginning, ensure that you have the OpenShift Command Line tool installed
          and that you are logged into OpenShift as a cluster administrator. \n\n####
          Create A Secret for the Quay OAuth Token\n\nThe Operator will use the previously
          obtained Access Token to communicate with Quay. Store this token within
          OpenShift as a secret.\n\nExecute the following command to create a secret
          called `quay-integration` with a key called `token` containing the access
          token:\n\n```\n$ oc create secret generic quay-integration --from-literal=token=<access_token>\n```\n\nThis
          token will be referenced in the final section.\n\n#### MutatingWebhookConfiguration
          Support\n\nSupport for dynamic interception of API requests that are performed
          as part of OpenShift’s typical build process is facilitated through a [MutatingWebhookConfiguration](https://docs.openshift.com/container-platform/3.11/architecture/additional_concepts/dynamic_admission_controllers.html).
          A MutatingWebhookConfiguration allows for invoking an API running within
          a project on OpenShift when certain API requests are received. In particular,
          to support Quay’s integration with OpenShift, any new Build requests should
          be intercepted so that the output can be modified to target Quay instead
          of OpenShift’s integrated registry. \n\nKubernetes requires that the webhook
          endpoint is secured via SSL using a certificate that makes use of the certificate
          authority for the cluster. Fortunately, OpenShift provides support for generating
          a certificate signed by the cluster. A script is available in the documentation
          called `webhook-create-signed-cert.sh` that automates the process for requesting
          a new certificate.\n\nFirst, create a `Service` for the Operator's webhook
          endpoint:\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  labels:\n
          \   name: quay-bridge-operator\n  name: quay-bridge-operator\n  namespace:
          openshift-operators\nspec:\n  ports:\n    - name: https\n      port: 443\n
          \     protocol: TCP\n      targetPort: 8443\n  selector:\n    name: quay-bridge-operator\n
          \ sessionAffinity: None\n  type: ClusterIP\n```\n\nExecute the following
          command to request the certificate:\n\n```\n./webhook-create-signed-cert.sh
          --namespace openshift-operators --secret quay-bridge-operator-webhook-certs
          --service quay-bridge-operator\n```\n\nThe result will place the newly created
          private key and certificate within a secret within the secret specified.
          The secret will be mounted into the appropriate located within the operator
          as declared in the Deployment of the Operator. \n\nOnce the secret has been
          created, focus can shift to the `MutatingWebhookConfiguration` (see below).
          The majority of the content should be in place to apply to the cluster.
          The one section that requires configuration is the caBundle property. This
          refers to the Certificate Authority (CA) for the OpenShift environment.
          The OpenShift CA is available as a _ConfigMap_ within the `kube-system`
          namespace.\n\nExecute the following command to retrieve the CA and format
          the result as a single line so that it can be entered into the MutatingWebhookConfiguration
          resource:\n\n```\noc get configmap -n kube-system extension-apiserver-authentication
          -o=jsonpath='{.data.client-ca-file}' | base64 | tr -d '\\n'\n```\n\nReplace
          the `${CA_BUNDLE}` variable in the following `MutatingWebhookConfiguration`
          YAML and create it:\n\n```yaml\napiVersion: admissionregistration.k8s.io/v1\nkind:
          MutatingWebhookConfiguration \nmetadata:\n  name: quay-bridge-operator\nwebhooks:\n
          \ - name: quayintegration.redhatcop.redhat.io\n    clientConfig: \n      service:\n
          \       namespace: openshift-operators\n        name: quay-bridge-operator\n
          \       path: \"/admissionwebhook\"\n      caBundle: \"${CA_BUNDLE}\"\n
          \   rules: \n    - operations:  [ \"CREATE\" ]\n      apiGroups: [ \"build.openshift.io\"
          ]\n      apiVersions: [\"v1\" ]\n      resources: [ \"builds\" ]\n    failurePolicy:
          Fail\n```\n\n_Note: Until the operator is running, new requests for builds
          will fail since the webserver the MutatingWebhookConfiguration invokes is
          not available and a proper is response is required in order for the object
          to be persisted in etcd._\n\n#### Create the QuayIntegration Custom Resource\n\nFinally,
          to complete the integration between OpenShift and Quay, a `QuayIntegration`
          custom resource needs to be created.\n\nThe following is an example of a
          basic definition of a `QuayIntegration` resource associated from the associated
          CRD.\n\n```\napiVersion: redhatcop.redhat.io/v1alpha1\nkind: QuayIntegration\nmetadata:\n
          \ name: example-quayintegration\nspec:\n  clusterID: openshift\n  credentialsSecretName:
          <NAMESPACE>/<SECRET>\n  quayHostname: https://<QUAY_URL>\n```\n\nThe _clusterID_
          is a value which should be unique across the entire ecosystem. This value
          is optional and defaults to `openshift`.\n\nThe _credentialsSecretName_
          is a NamespacedName value of the secret containing the token that was previously
          created.\n\nNote: If Quay is using self signed certificates, the property
          `insecureRegistry: true`\n\nOrganizations within Quay should be created
          for the related namespaces in OpenShift."
        displayName: Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Source Code
          url: https://github.com/redhat-cop/quay-openshift-registry-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:4478b8a78bdde23e0d40476f8ad9e4bf0628fba7603a390e8de7e6a319abc1ec
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:501fe9b003b5066b3936def0ef4de05abd1a12e795e718d6c9a62d2c6c804c2e
        version: 3.4.7
      entries:
      - name: quay-bridge-operator.v3.4.7
        version: 3.4.7
      name: quay-v3.4
    - currentCSV: quay-bridge-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "my-quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecretName": "<NAMESPACE>/<SECRET>",
                  "quayHostname": "https://<QUAY_URL>",
                  "insecureRegistry": false,
                  "whitelistNamespaces": ["default"]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9149df5ffc83dce6593072b7f72805e07e700b84527e45b4b7486b9c38f70731
          createdAt: 2021-09-15 23:09 UTC
          description: Enhance OCP using Red Hat Quay container registry
          olm.skipRange: '>=3.4.x <3.5.7'
          repository: https://github.com/redhat-cop/quay-openshift-registry-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a connected Quay instance.
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.redhatcop.redhat.io
            version: v1alpha1
        description: "## Overview\n\nThe OpenShift Container Platform contains an
          in cluster image registry for pushing and pulling images that either produced
          within the cluster or are references from external sources. Quay is a highly
          available, enterprise grade image registry with enhanced role based access
          control (RBAC) features. The goal of this operator is to support replicating
          the features found within OpenShift intgrated image registry with Quay.\n\n##
          Functionality\n\nThe following capabilities are enabled through this operator:\n\n*
          Synchronization of OpenShift namespaces as Quay organizations\n    * Creation
          of Robot accounts for each default namespace service account\n    * Creation
          of Secrets for each created Robot Account\n        * Associate Robot Secret
          to Service Account as Mountable and Image Pull Secret\n    * Synchronization
          of OpenShift ImageStreams as Quay Repositories\n* Automatically rewrite
          new Builds making use of ImageStreams to output to Quay\n* Automatically
          import ImageStream tag once build completes\n\n## Prerequisites\n\nThe following
          requirements must be satisfied prior to setting and configuring the integration
          between OpenShift and Quay:\n\n* A Red Hat Quay environment with a user
          with superuser permissions\n* A Red Hat OpenShift Container Platform environment
          (at least version 4.0) with cluster-admin permissions on an OpenShift cluster
          \n*\tOpenShift Command Line tool (CLI)\n\n## Setup and Configuration\n\nThe
          setup process involves steps within both Quay and OpenShift as described
          below:\n\n### Quay Setup\n\nThe integration between OpenShift and Quay makes
          extensive use of the Quay RESTFul API. To allow for other methods aside
          from user credentials to be used for authenticating against the API, an
          application is required to be created. When an application is created, an
          OAuth token is generated which can be used by the operator in OpenShift.
          Applications are created within a Quay organization. While an existing organization
          can be utilized, it is recommended that a dedicated organization be used.\n\n1.\tLogin
          to Quay as a user with superuser access and select the organization for
          which the external application will be configured within.\n2.\tOn the left
          hand side of the page, select **Applications**\n3.\tCreate a new application
          by selecting the **Create New Application** button and entering a name for
          the application\n4.\tAfter the new application has been created, select
          the application that was created\n5.\tOn the lefthand navigation bar, select
          the **Generate Token** button to create a new OAuth2 token\n6.\tSelect all
          of the checkboxes to grant the necessary access that is needed for the integration\n7.\tReview
          the permissions that will be assigned and then select the **Authorize Application**
          button\n8.\tTake note of the generated Access Token as it will be needed
          in the following section\n\n### OpenShift Setup\n\nTo complete the process
          to begin to integrate OpenShift and Quay, several steps are required. Before
          beginning, ensure that you have the OpenShift Command Line tool installed
          and that you are logged into OpenShift as a cluster administrator. \n\n####
          Create A Secret for the Quay OAuth Token\n\nThe Operator will use the previously
          obtained Access Token to communicate with Quay. Store this token within
          OpenShift as a secret.\n\nExecute the following command to create a secret
          called `quay-integration` with a key called `token` containing the access
          token:\n\n```\n$ oc create secret generic quay-integration --from-literal=token=<access_token>\n```\n\nThis
          token will be referenced in the final section.\n\n#### MutatingWebhookConfiguration
          Support\n\nSupport for dynamic interception of API requests that are performed
          as part of OpenShift’s typical build process is facilitated through a [MutatingWebhookConfiguration](https://docs.openshift.com/container-platform/3.11/architecture/additional_concepts/dynamic_admission_controllers.html).
          A MutatingWebhookConfiguration allows for invoking an API running within
          a project on OpenShift when certain API requests are received. In particular,
          to support Quay’s integration with OpenShift, any new Build requests should
          be intercepted so that the output can be modified to target Quay instead
          of OpenShift’s integrated registry. \n\nKubernetes requires that the webhook
          endpoint is secured via SSL using a certificate that makes use of the certificate
          authority for the cluster. Fortunately, OpenShift provides support for generating
          a certificate signed by the cluster. A script is available in the documentation
          called `webhook-create-signed-cert.sh` that automates the process for requesting
          a new certificate.\n\nFirst, create a `Service` for the Operator's webhook
          endpoint:\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  labels:\n
          \   name: quay-bridge-operator\n  name: quay-bridge-operator\n  namespace:
          openshift-operators\nspec:\n  ports:\n    - name: https\n      port: 443\n
          \     protocol: TCP\n      targetPort: 8443\n  selector:\n    name: quay-bridge-operator\n
          \ sessionAffinity: None\n  type: ClusterIP\n```\n\nExecute the following
          command to request the certificate:\n\n```\n./webhook-create-signed-cert.sh
          --namespace openshift-operators --secret quay-bridge-operator-webhook-certs
          --service quay-bridge-operator\n```\n\nThe result will place the newly created
          private key and certificate within a secret within the secret specified.
          The secret will be mounted into the appropriate located within the operator
          as declared in the Deployment of the Operator. \n\nOnce the secret has been
          created, focus can shift to the `MutatingWebhookConfiguration` (see below).
          The majority of the content should be in place to apply to the cluster.
          The one section that requires configuration is the caBundle property. This
          refers to the Certificate Authority (CA) for the OpenShift environment.
          The OpenShift CA is available as a _ConfigMap_ within the `kube-system`
          namespace.\n\nExecute the following command to retrieve the CA and format
          the result as a single line so that it can be entered into the MutatingWebhookConfiguration
          resource:\n\n```\noc get configmap -n kube-system extension-apiserver-authentication
          -o=jsonpath='{.data.client-ca-file}' | base64 | tr -d '\\n'\n```\n\nReplace
          the `${CA_BUNDLE}` variable in the following `MutatingWebhookConfiguration`
          YAML and create it:\n\n```yaml\napiVersion: admissionregistration.k8s.io/v1\nkind:
          MutatingWebhookConfiguration \nmetadata:\n  name: quay-bridge-operator\nwebhooks:\n
          \ - name: quayintegration.redhatcop.redhat.io\n    clientConfig: \n      service:\n
          \       namespace: openshift-operators\n        name: quay-bridge-operator\n
          \       path: \"/admissionwebhook\"\n      caBundle: \"${CA_BUNDLE}\"\n
          \   rules: \n    - operations:  [ \"CREATE\" ]\n      apiGroups: [ \"build.openshift.io\"
          ]\n      apiVersions: [\"v1\" ]\n      resources: [ \"builds\" ]\n    failurePolicy:
          Fail\n    sideEffects: None\n    admissionReviewVersions: [v1beta1]\n    matchPolicy:
          Exact\n    timeoutSeconds: 30  \n```\n\n_Note: Until the operator is running,
          new requests for builds will fail since the webserver the MutatingWebhookConfiguration
          invokes is not available and a proper is response is required in order for
          the object to be persisted in etcd._\n\n#### Create the QuayIntegration
          Custom Resource\n\nFinally, to complete the integration between OpenShift
          and Quay, a `QuayIntegration` custom resource needs to be created.\n\nThe
          following is an example of a basic definition of a `QuayIntegration` resource
          associated from the associated CRD.\n\n```\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          QuayIntegration\nmetadata:\n  name: example-quayintegration\nspec:\n  clusterID:
          openshift\n  credentialsSecretName: <NAMESPACE>/<SECRET>\n  quayHostname:
          https://<QUAY_URL>\n```\n\nThe _clusterID_ is a value which should be unique
          across the entire ecosystem. This value is optional and defaults to `openshift`.\n\nThe
          _credentialsSecretName_ is a NamespacedName value of the secret containing
          the token that was previously created.\n\nNote: If Quay is using self signed
          certificates, the property `insecureRegistry: true`\n\nOrganizations within
          Quay should be created for the related namespaces in OpenShift."
        displayName: Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Source Code
          url: https://github.com/redhat-cop/quay-openshift-registry-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:6c2ab763239f6e5a2a72890120bf1f20f6277850cec59a7e11cea2b6a06f12e8
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9149df5ffc83dce6593072b7f72805e07e700b84527e45b4b7486b9c38f70731
        version: 3.5.7
      entries:
      - name: quay-bridge-operator.v3.5.7
        version: 3.5.7
      name: quay-v3.5
    - currentCSV: quay-bridge-operator.v3.10.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:c8dad99f3b281a8ab882d819e6262b86c8bda4d5de759f8095cf58c39a992608
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.7.x <3.10.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.10.17
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:8b475114a5f77f7c041509a30246769a5f9064510724c8fc99ac29164dc3a0bb
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:c8dad99f3b281a8ab882d819e6262b86c8bda4d5de759f8095cf58c39a992608
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        version: 3.10.17
      entries:
      - name: quay-bridge-operator.v3.10.17
        version: 3.10.17
      - name: quay-bridge-operator.v3.10.16
        version: 3.10.16
      - name: quay-bridge-operator.v3.10.15
        version: 3.10.15
      - name: quay-bridge-operator.v3.10.14
        version: 3.10.14
      - name: quay-bridge-operator.v3.10.13
        version: 3.10.13
      - name: quay-bridge-operator.v3.10.12
        version: 3.10.12
      - name: quay-bridge-operator.v3.10.11
        version: 3.10.11
      - name: quay-bridge-operator.v3.10.10
        version: 3.10.10
      - name: quay-bridge-operator.v3.10.9
        version: 3.10.9
      - name: quay-bridge-operator.v3.10.8
        version: 3.10.8
      - name: quay-bridge-operator.v3.10.7
        version: 3.10.7
      - name: quay-bridge-operator.v3.10.6
        version: 3.10.6
      - name: quay-bridge-operator.v3.10.5
        version: 3.10.5
      - name: quay-bridge-operator.v3.10.4
        version: 3.10.4
      - name: quay-bridge-operator.v3.10.3
        version: 3.10.3
      - name: quay-bridge-operator.v3.10.2
        version: 3.10.2
      - name: quay-bridge-operator.v3.10.1
        version: 3.10.1
      - name: quay-bridge-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: quay-bridge-operator.v3.11.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:511f8471db70e8d5fd9d0b547c73f1416bbac6f0fe6cdeb6c59a9ef8bd845ac2
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.8.x <3.11.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.11.13
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:56653df97e4498ecd67b9645d75e44f65c625594e312dbcf0f09937b57d76010
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:2b6b1a0b56cfb348ed4035b13d31501ff5757c101ed21027b330a7852576b891
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:511f8471db70e8d5fd9d0b547c73f1416bbac6f0fe6cdeb6c59a9ef8bd845ac2
        version: 3.11.13
      entries:
      - name: quay-bridge-operator.v3.11.13
        version: 3.11.13
      - name: quay-bridge-operator.v3.11.12
        version: 3.11.12
      - name: quay-bridge-operator.v3.11.11
        version: 3.11.11
      - name: quay-bridge-operator.v3.11.10
        version: 3.11.10
      - name: quay-bridge-operator.v3.11.9
        version: 3.11.9
      - name: quay-bridge-operator.v3.11.8
        version: 3.11.8
      - name: quay-bridge-operator.v3.11.7
        version: 3.11.7
      - name: quay-bridge-operator.v3.11.6
        version: 3.11.6
      - name: quay-bridge-operator.v3.11.5
        version: 3.11.5
      - name: quay-bridge-operator.v3.11.4
        version: 3.11.4
      - name: quay-bridge-operator.v3.11.3
        version: 3.11.3
      - name: quay-bridge-operator.v3.11.2
        version: 3.11.2
      - name: quay-bridge-operator.v3.11.1
        version: 3.11.1
      - name: quay-bridge-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: quay-bridge-operator.v3.12.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:d817c52045a8f5aeb5baebd15843e9bf4a4097fc8d74ff2aa9108442d8fb922e
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.9.x <3.12.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.12.13
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:0a978bbe91e0e0b8bab6862522f8a0aa8e974b778cc36b83f0781081621c8e23
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:d817c52045a8f5aeb5baebd15843e9bf4a4097fc8d74ff2aa9108442d8fb922e
        version: 3.12.13
      entries:
      - name: quay-bridge-operator.v3.12.13
        version: 3.12.13
      - name: quay-bridge-operator.v3.12.12
        version: 3.12.12
      - name: quay-bridge-operator.v3.12.11
        version: 3.12.11
      - name: quay-bridge-operator.v3.12.10
        version: 3.12.10
      - name: quay-bridge-operator.v3.12.9
        version: 3.12.9
      - name: quay-bridge-operator.v3.12.8
        version: 3.12.8
      - name: quay-bridge-operator.v3.12.7
        version: 3.12.7
      - name: quay-bridge-operator.v3.12.6
        version: 3.12.6
      - name: quay-bridge-operator.v3.12.5
        version: 3.12.5
      - name: quay-bridge-operator.v3.12.4
        version: 3.12.4
      - name: quay-bridge-operator.v3.12.3
        version: 3.12.3
      - name: quay-bridge-operator.v3.12.2
        version: 3.12.2
      - name: quay-bridge-operator.v3.12.1
        version: 3.12.1
      - name: quay-bridge-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: quay-bridge-operator.v3.13.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:ae3b4842a685d900754edcb1f4adc0a11c85d0b6c9b70b2b06ba39e8dc0bb021
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.10.x <3.13.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.13.10
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:bd1a02c47b6c32010fe19de6a994577b2c49ed692606d185d4252bb5ba347ecb
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:ae3b4842a685d900754edcb1f4adc0a11c85d0b6c9b70b2b06ba39e8dc0bb021
        version: 3.13.10
      entries:
      - name: quay-bridge-operator.v3.13.10
        version: 3.13.10
      - name: quay-bridge-operator.v3.13.9
        version: 3.13.9
      - name: quay-bridge-operator.v3.13.8
        version: 3.13.8
      - name: quay-bridge-operator.v3.13.7
        version: 3.13.7
      - name: quay-bridge-operator.v3.13.6
        version: 3.13.6
      - name: quay-bridge-operator.v3.13.5
        version: 3.13.5
      - name: quay-bridge-operator.v3.13.4
        version: 3.13.4
      - name: quay-bridge-operator.v3.13.3
        version: 3.13.3
      - name: quay-bridge-operator.v3.13.2
        version: 3.13.2
      - name: quay-bridge-operator.v3.13.1
        version: 3.13.1
      - name: quay-bridge-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: quay-bridge-operator.v3.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b12f0dfb8fdeae3f521e41fcf60ef118bdfd08ad7f68bd87c5494b067b7c7c58
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.11.x <3.14.5'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.14.5
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b12f0dfb8fdeae3f521e41fcf60ef118bdfd08ad7f68bd87c5494b067b7c7c58
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:73d91324ccc995e9a6db525f194bee340c17dd624ce520c767ea8fcf2346f786
        version: 3.14.5
      entries:
      - name: quay-bridge-operator.v3.14.5
        version: 3.14.5
      - name: quay-bridge-operator.v3.14.4
        version: 3.14.4
      - name: quay-bridge-operator.v3.14.3
        version: 3.14.3
      - name: quay-bridge-operator.v3.14.2
        version: 3.14.2
      - name: quay-bridge-operator.v3.14.1
        version: 3.14.1
      - name: quay-bridge-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: quay-bridge-operator.v3.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b2ac4a48c80209d7bebe8b1b2d066571f99a9f47b78604e47a8300d027941b66
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.12.x <3.15.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.15.2
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b2ac4a48c80209d7bebe8b1b2d066571f99a9f47b78604e47a8300d027941b66
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:d29abe14abc67d8836cc6f7656556a0a7fa8f4a8eea3f78e40265b339e7430f5
        version: 3.15.2
      entries:
      - name: quay-bridge-operator.v3.15.2
        version: 3.15.2
      - name: quay-bridge-operator.v3.15.1
        version: 3.15.1
      - name: quay-bridge-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: quay-bridge-operator.v3.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel9@sha256:f37b75957d97126f00126d1a51897b5a54bf063ba868e57d9cff241e732796ff
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.13.x <3.16.0'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.16.0
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:78ff6bc0ebad4768ae769da8bd73d76532ca462ddd70c25680d3bb5b4f2b5fb3
        - registry.redhat.io/quay/quay-bridge-operator-rhel9@sha256:f37b75957d97126f00126d1a51897b5a54bf063ba868e57d9cff241e732796ff
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        version: 3.16.0
      entries:
      - name: quay-bridge-operator.v3.16.0
        version: 3.16.0
      name: stable-3.16
    - currentCSV: quay-bridge-operator.v3.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:0ad7af440c6e00fb578ef40e6d600964324fd94ce7835a28d0ec355b7415093f
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          olm.skipRange: '>=3.3.x <3.6.10'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.6.10
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:99dc6b5af811bb33892c17334dd4e1a7eddc6982d49a793b1789f505e00f49b1
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:f7c4ed28a549fe7414312bd22c2ae140f1f28d30656fb9fb0c8ade05a8f82088
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:0ad7af440c6e00fb578ef40e6d600964324fd94ce7835a28d0ec355b7415093f
        version: 3.6.10
      entries:
      - name: quay-bridge-operator.v3.6.10
        version: 3.6.10
      - name: quay-bridge-operator.v3.6.9
        version: 3.6.9
      - name: quay-bridge-operator.v3.6.8
        version: 3.6.8
      - name: quay-bridge-operator.v3.6.7
        version: 3.6.7
      - name: quay-bridge-operator.v3.6.6
        version: 3.6.6
      - name: quay-bridge-operator.v3.6.5
        version: 3.6.5
      - name: quay-bridge-operator.v3.6.4
        version: 3.6.4
      - name: quay-bridge-operator.v3.6.2
        version: 3.6.2
      - name: quay-bridge-operator.v3.6.1
        version: 3.6.1
      - name: quay-bridge-operator.v3.6.0
        version: 3.6.0
      name: stable-3.6
    - currentCSV: quay-bridge-operator.v3.7.14
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:6a0dd80dc48ad0aaa576b3de78b2b265e29a3c10e4996aa6b8f129592fe20f09
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          olm.skipRange: '>=3.4.x <3.7.14'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.7.14
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:975f287513039b2244894b9031e590f665d48f9af480dfdc4b85d4f96dd4bc37
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:c59956d70416fab0c6d7b3ecd8c9cfa3cf9415f75cfdfe2214f44b0b4aced594
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:6a0dd80dc48ad0aaa576b3de78b2b265e29a3c10e4996aa6b8f129592fe20f09
        version: 3.7.14
      entries:
      - name: quay-bridge-operator.v3.7.14
        version: 3.7.14
      - name: quay-bridge-operator.v3.7.13
        version: 3.7.13
      - name: quay-bridge-operator.v3.7.12
        version: 3.7.12
      - name: quay-bridge-operator.v3.7.11
        version: 3.7.11
      - name: quay-bridge-operator.v3.7.10
        version: 3.7.10
      - name: quay-bridge-operator.v3.7.9
        version: 3.7.9
      - name: quay-bridge-operator.v3.7.8
        version: 3.7.8
      - name: quay-bridge-operator.v3.7.7
        version: 3.7.7
      - name: quay-bridge-operator.v3.7.6
        version: 3.7.6
      - name: quay-bridge-operator.v3.7.5
        version: 3.7.5
      - name: quay-bridge-operator.v3.7.4
        version: 3.7.4
      - name: quay-bridge-operator.v3.7.3
        version: 3.7.3
      - name: quay-bridge-operator.v3.7.2
        version: 3.7.2
      - name: quay-bridge-operator.v3.7.1
        version: 3.7.1
      - name: quay-bridge-operator.v3.7.0
        version: 3.7.0
      name: stable-3.7
    - currentCSV: quay-bridge-operator.v3.8.15
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:f8544a546dd6d209355c3a1cbe35138f6910491fc4584b401634431da4414ec0
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          olm.skipRange: '>=3.5.x <3.8.15'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.8.15
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:975f287513039b2244894b9031e590f665d48f9af480dfdc4b85d4f96dd4bc37
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:7cace73b03bb02202a04b6026eb9f7323610fd0ccd5ba18a6d00fd66577a96b4
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:f8544a546dd6d209355c3a1cbe35138f6910491fc4584b401634431da4414ec0
        version: 3.8.15
      entries:
      - name: quay-bridge-operator.v3.8.15
        version: 3.8.15
      - name: quay-bridge-operator.v3.8.14
        version: 3.8.14
      - name: quay-bridge-operator.v3.8.13
        version: 3.8.13
      - name: quay-bridge-operator.v3.8.12
        version: 3.8.12
      - name: quay-bridge-operator.v3.8.11
        version: 3.8.11
      - name: quay-bridge-operator.v3.8.10
        version: 3.8.10
      - name: quay-bridge-operator.v3.8.9
        version: 3.8.9
      - name: quay-bridge-operator.v3.8.8
        version: 3.8.8
      - name: quay-bridge-operator.v3.8.7
        version: 3.8.7
      - name: quay-bridge-operator.v3.8.6
        version: 3.8.6
      - name: quay-bridge-operator.v3.8.5
        version: 3.8.5
      - name: quay-bridge-operator.v3.8.4
        version: 3.8.4
      - name: quay-bridge-operator.v3.8.3
        version: 3.8.3
      - name: quay-bridge-operator.v3.8.2
        version: 3.8.2
      - name: quay-bridge-operator.v3.8.1
        version: 3.8.1
      - name: quay-bridge-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: quay-bridge-operator.v3.9.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9fb8807bed232f8723b7bff3f8bfed37798e86251f4db9374d64716b1d624857
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.9.17
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:7db467404171294d793ef0fd1a59fd6e5bd20ed8915913a1edf013d18e4c9a78
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9fb8807bed232f8723b7bff3f8bfed37798e86251f4db9374d64716b1d624857
        version: 3.9.17
      entries:
      - name: quay-bridge-operator.v3.9.17
        version: 3.9.17
      - name: quay-bridge-operator.v3.9.16
        version: 3.9.16
      - name: quay-bridge-operator.v3.9.15
        version: 3.9.15
      - name: quay-bridge-operator.v3.9.14
        version: 3.9.14
      - name: quay-bridge-operator.v3.9.13
        version: 3.9.13
      - name: quay-bridge-operator.v3.9.12
        version: 3.9.12
      - name: quay-bridge-operator.v3.9.11
        version: 3.9.11
      - name: quay-bridge-operator.v3.9.10
        version: 3.9.10
      - name: quay-bridge-operator.v3.9.9
        version: 3.9.9
      - name: quay-bridge-operator.v3.9.8
        version: 3.9.8
      - name: quay-bridge-operator.v3.9.7
        version: 3.9.7
      - name: quay-bridge-operator.v3.9.6
        version: 3.9.6
      - name: quay-bridge-operator.v3.9.5
        version: 3.9.5
      - name: quay-bridge-operator.v3.9.4
        version: 3.9.4
      - name: quay-bridge-operator.v3.9.3
        version: 3.9.3
      - name: quay-bridge-operator.v3.9.2
        version: 3.9.2
      - name: quay-bridge-operator.v3.9.1
        version: 3.9.1
      - name: quay-bridge-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.16
    packageName: quay-bridge-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: minhokim
      provider-url: ""
    name: node-discovery-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-discovery-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cache.wunicorns.com/v1alpha1",
                "kind": "NodeDiscovery",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "node-discovery-operator",
                    "app.kubernetes.io/instance": "nodediscovery-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nodediscovery",
                    "app.kubernetes.io/part-of": "node-discovery-operator"
                  },
                  "name": "nodediscovery-sample"
                },
                "spec": {
                  "containers": [
                    {
                      "args": [
                        "tail",
                        "-f",
                        "/dev/null"
                      ],
                      "image": "alicek106/stress",
                      "imagePullPolicy": "IfNotPresent",
                      "name": "stress",
                      "resources": {
                        "limits": {
                          "cpu": "100m",
                          "memory": "1000Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "1000Mi"
                        }
                      },
                      "terminationGracePeriodSeconds": 10
                    }
                  ],
                  "cpus": "0",
                  "enabled": "true",
                  "mems": "0",
                  "nodeName": "worker3"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2024-06-18T01:32:51Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeDiscovery is the Schema for the nodediscoveries API
            displayName: Node Discovery
            kind: NodeDiscovery
            name: nodediscoveries.cache.wunicorns.com
            version: v1alpha1
        description: find cgroup infor and set value.
        displayName: node-discovery-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cgroup
        - cpulist
        - mems
        - cpus
        - numa
        links:
        - name: Node Discovery Operator
          url: https://node-discovery-operator.domain
        maintainers:
        - email: wunicorns1436@gmail.com
          name: minhokim
        maturity: alpha
        provider:
          name: minhokim
        relatedImages:
        - quay.io/caspell/cgroup-discovery@sha256:b437dcde0107124e43a4e2fb8026ec191f44b5e761bedc2c295f47ff489cf343
        - quay.io/community-operator-pipeline-prod/node-discovery-operator@sha256:899baace103c58e7337ae5cd75e3764e6de26966aab7340037c612c26ca7cf87
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0
        version: 0.0.1
      entries:
      - name: node-discovery-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: node-discovery-operator
    provider:
      name: minhokim
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-atlas-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-atlas-kubernetes.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupPolicy",
                "metadata": {
                  "name": "atlasbackuppolicy-sample"
                },
                "spec": {
                  "id": "1",
                  "items": [
                    {
                      "frequencyInterval": 6,
                      "frequencyType": "WEEKLY",
                      "id": "2",
                      "retentionUnit": "DAYS",
                      "retentionValue": 6
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupSchedule",
                "metadata": {
                  "name": "atlasbackupschedule-sample"
                },
                "spec": {
                  "autoExportEnabled": true,
                  "policies": [
                    {
                      "name": "atlas-default-backuppolicy",
                      "namespace": "mongodb-atlas-system"
                    },
                    {
                      "name": "atlas-default-backuppolicy2",
                      "namespace": "mongodb-atlas-system"
                    }
                  ],
                  "referenceHourOfDay": 10,
                  "referenceMinuteOfHour": 10,
                  "restoreWindowDays": 2
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDatabaseUser",
                "metadata": {
                  "name": "my-database-user"
                },
                "spec": {
                  "databaseName": "admin",
                  "passwordSecretRef": {
                    "name": "my-database-user-password"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "roles": [
                    {
                      "databaseName": "admin",
                      "roleName": "readWriteAnyDatabase"
                    }
                  ],
                  "username": "david"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDeployment",
                "metadata": {
                  "name": "my-atlas-cluster"
                },
                "spec": {
                  "deploymentSpec": {
                    "name": "test-cluster",
                    "providerSettings": {
                      "instanceSizeName": "M10",
                      "providerName": "AWS",
                      "regionName": "US_EAST_1"
                    }
                  },
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasProject",
                "metadata": {
                  "name": "my-project"
                },
                "spec": {
                  "name": "Test Atlas Operator Project",
                  "projectIpAccessList": [
                    {
                      "comment": "IP address for Application Server A",
                      "ipAddress": "192.0.2.15"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Database
          containerImage: registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator@sha256:3cfbd700e4771c2c7e75c2c41cf6de57c9ef71ecd286e96a21d2567e43424bc3
          description: The MongoDB Atlas Kubernetes Operator enables easy management
            of Clusters in MongoDB Atlas
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies
              API
            displayName: Atlas Backup Policy
            kind: AtlasBackupPolicy
            name: atlasbackuppolicies.atlas.mongodb.com
            version: v1
          - description: AtlasBackupSchedule is the Schema for the atlasbackupschedules
              API
            displayName: Atlas Backup Schedule
            kind: AtlasBackupSchedule
            name: atlasbackupschedules.atlas.mongodb.com
            version: v1
          - description: AtlasDatabaseUser is the Schema for the Atlas Database User
              API
            displayName: Atlas Database User
            kind: AtlasDatabaseUser
            name: atlasdatabaseusers.atlas.mongodb.com
            version: v1
          - description: AtlasDeployment is the Schema for the atlasclusters API
            displayName: Atlas Deployment
            kind: AtlasDeployment
            name: atlasdeployments.atlas.mongodb.com
            version: v1
          - description: AtlasProject is the Schema for the atlasprojects API
            displayName: Atlas Project
            kind: AtlasProject
            name: atlasprojects.atlas.mongodb.com
            version: v1
        description: |
          The MongoDB Atlas Operator provides a native integration between the Kubernetes orchestration platform and MongoDB Atlas —
          the only multi-cloud document database service that gives you the versatility you need to build sophisticated and resilient applications that can adapt to changing customer demands and market trends.

          > Current Status: *Beta*. The Operator gives users the ability to provision
          > Atlas projects, clusters and database users using Kubernetes Specifications and bind connection information
          > into applications deployed to Kubernetes.

          ## Quick Start guide
          ### Step 1. Deploy Kubernetes operator by clicking Install button.

          ### Step 2. Create Atlas Cluster

          **1.** Create an Atlas API Key Secret
          In order to work with the Atlas Operator you need to provide [authentication information](https://docs.atlas.mongodb.com/configure-api-access)
           to allow the Atlas Operator to communicate with Atlas API. Once you have generated a Public and Private key in Atlas, you can create a Kuberentes Secret with:
          ```
          kubectl create secret generic mongodb-atlas-operator-api-key \
                   --from-literal="orgId=<the_atlas_organization_id>" \
                   --from-literal="publicApiKey=<the_atlas_api_public_key>" \
                   --from-literal="privateApiKey=<the_atlas_api_private_key>" \
                   -n openshift-operators
          ```
          (Note, that you should use the namespace where the Operator was installed - it's `openshift-operators` by default)

          **2.** Create an `AtlasProject` Custom Resource

          The `AtlasProject` CustomResource represents Atlas Projects in our Kubernetes cluster. You need to specify
          `projectIpAccessList` with the IP addresses or CIDR blocks of any hosts that will connect to the Atlas Cluster.
          ```
          apiVersion: atlas.mongodb.com/v1
          kind: AtlasProject
          metadata:
            name: my-project
          spec:
            name: Test Atlas Operator Project
            projectIpAccessList:
              - ipAddress: "192.0.2.15"
                comment: "IP address for Application Server A"
              - ipAddress: "203.0.113.0/24"
                comment: "CIDR block for Application Server B - D"
          ```
          **3.** Create an `AtlasDeployment` Custom Resource.
          The example below is a minimal configuration to create an M10 Atlas cluster in the AWS US East region. For a full list of properties, check
          `atlasclusters.atlas.mongodb.com` [CRD specification](config/crd/bases/atlas.mongodb.com_atlasclusters.yaml)):
          ```
          apiVersion: atlas.mongodb.com/v1
          kind: AtlasDeployment
          metadata:
            name: my-atlas-cluster
          spec:
            name: "Test-cluster"
            projectRef:
              name: my-project
            providerSettings:
              instanceSizeName: M10
              providerName: AWS
              regionName: US_EAST_1
          ```

          **4.** Create a database user password Kubernetes Secret
          The Secret must be created in the same namespace as the `AtlasDeployment` and `AtlasProject` were created.
          ```
          kubectl create secret generic the-user-password --from-literal="password=P@@sword%"
          ```

          **5.** Create an `AtlasDatabaseUser` Custom Resource

          In order to connect to an Atlas Cluster the database user needs to be created. `AtlasDatabaseUser` resource should reference
          the password Kubernetes Secret created in the previous step.
          ```
          apiVersion: atlas.mongodb.com/v1
          kind: AtlasDatabaseUser
          metadata:
            name: my-database-user
          spec:
            roles:
              - roleName: "readWriteAnyDatabase"
                databaseName: "admin"
            projectRef:
              name: my-project
            username: theuser
            passwordSecretRef:
              name: the-user-password
          ```
          **6.** Wait for the `AtlasDatabaseUser` Custom Resource to be ready

          Wait until the AtlasDatabaseUser resource gets to "ready" status (it will wait until the cluster is created that may take around 10 minutes):
          ```
          kubectl get atlasdatabaseusers my-database-user -o=jsonpath='{.status.conditions[?(@.type=="Ready")].status}'
          True
          ```
          ### Step 3. Connect your application to the Atlas Cluster

          The Atlas Operator will create a Kubernetes Secret with the information necessary to connect to the Atlas Cluster created
          in the previous step. An application in the same Kubernetes Cluster can mount and use the Secret:

          ```
          ...
          containers:
                - name: test-app
                  env:
                   - name: "CONNECTION_STRING"
                     valueFrom:
                       secretKeyRef:
                         name: test-atlas-operator-project-test-cluster-theuser
                         key: connectionStringStandardSrv

          ```
        displayName: MongoDB Atlas Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - MongoDB
        - Atlas
        - Database
        - Replica Set
        - Cluster
        links:
        - name: MongoDB Atlas Kubernetes
          url: https://github.com/mongodb/mongodb-atlas-kubernetes
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: beta
        provider:
          name: MongoDB, Inc
        relatedImages:
        - registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator-bundle@sha256:2338eaab863304250b3b1d267e9f2261c48eef1f97c280b7fa0af0ebc3ba208b
        - registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator@sha256:3cfbd700e4771c2c7e75c2c41cf6de57c9ef71ecd286e96a21d2567e43424bc3
        version: 1.0.0
      entries:
      - name: mongodb-atlas-kubernetes.v1.0.0
        version: 1.0.0
      name: beta
    - currentCSV: mongodb-atlas-kubernetes.v2.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupPolicy",
                "metadata": {
                  "name": "atlasbackuppolicy-sample"
                },
                "spec": {
                  "items": [
                    {
                      "frequencyInterval": 6,
                      "frequencyType": "hourly",
                      "retentionUnit": "days",
                      "retentionValue": 2
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "daily",
                      "retentionUnit": "days",
                      "retentionValue": 7
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "weekly",
                      "retentionUnit": "weeks",
                      "retentionValue": 4
                    },
                    {
                      "frequencyInterval": 15,
                      "frequencyType": "monthly",
                      "retentionUnit": "months",
                      "retentionValue": 12
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupSchedule",
                "metadata": {
                  "name": "atlasbackupschedule-sample"
                },
                "spec": {
                  "autoExportEnabled": false,
                  "copySettings": [
                    {
                      "cloudProvider": "AWS",
                      "frequencies": [
                        "WEEKLY"
                      ],
                      "regionName": "US_WEST_1",
                      "shouldCopyOplogs": false
                    }
                  ],
                  "policy": {
                    "name": "atlasbackuppolicy-sample"
                  },
                  "referenceHourOfDay": 10,
                  "referenceMinuteOfHour": 10,
                  "restoreWindowDays": 2,
                  "useOrgAndGroupNamesInExportPrefix": true
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDatabaseUser",
                "metadata": {
                  "name": "my-database-user"
                },
                "spec": {
                  "databaseName": "admin",
                  "passwordSecretRef": {
                    "name": "the-user-password"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "roles": [
                    {
                      "databaseName": "admin",
                      "roleName": "readWriteAnyDatabase"
                    }
                  ],
                  "username": "theuser"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDeployment",
                "metadata": {
                  "name": "my-atlas-deployment"
                },
                "spec": {
                  "backupRef": {
                    "name": "atlasbackupschedule-sample"
                  },
                  "deploymentSpec": {
                    "backupEnabled": true,
                    "clusterType": "REPLICASET",
                    "mongoDBMajorVersion": "7.0",
                    "name": "test-deployment",
                    "replicationSpecs": [
                      {
                        "regionConfigs": [
                          {
                            "electableSpecs": {
                              "instanceSize": "M10",
                              "nodeCount": 3
                            },
                            "priority": 7,
                            "providerName": "AWS",
                            "regionName": "US_EAST_1"
                          }
                        ],
                        "zoneName": "Zone 1"
                      }
                    ],
                    "tags": [
                      {
                        "key": "team",
                        "value": "atlas-operator"
                      }
                    ]
                  },
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasIPAccessList",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasipaccesslist-sample"
                },
                "spec": {
                  "entries": [
                    {
                      "cidrBlock": "192.168.1.0/24"
                    },
                    {
                      "deleteAfterDate": "2025-01-20T23:59:59+02:00",
                      "ipAddress": "10.0.0.1"
                    }
                  ],
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkContainer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasnetworkcontainer-sample"
                },
                "spec": {
                  "cidrBlock": "10.11.0.0/16",
                  "connectionSecret": {
                    "name": "atlas-connection-secret"
                  },
                  "externalProjectRef": {
                    "projectId": "66e2f2b621571b7e69a89b66"
                  },
                  "provider": "AWS",
                  "region": "US_EAST_1"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkPeering",
                "metadata": {
                  "name": "atlasnetworkpeering-sample"
                },
                "spec": {
                  "atlasCidrBlock": "10.12.0.0/16",
                  "awsConfiguration": {
                    "accepterRegionName": "US_EAST_1",
                    "awsAccountId": "23214235145",
                    "routeTableCidrBlock": "10.11.0.0/16",
                    "vpcId": "vpcid-7123782134"
                  },
                  "containerId": "623412394512350",
                  "containerRegion": "US_EAST_1",
                  "projectRef": {
                    "name": "atlas-project",
                    "namespace": "namespace"
                  },
                  "provider": "AWS"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasProject",
                "metadata": {
                  "name": "my-project"
                },
                "spec": {
                  "name": "Test Atlas Operator Project",
                  "projectIpAccessList": [
                    {
                      "comment": "IP address for Application Server A",
                      "ipAddress": "192.0.2.15"
                    },
                    {
                      "cidrBlock": "203.0.113.0/24",
                      "comment": "CIDR block for Application Server B - D"
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasTeam",
                "metadata": {
                  "name": "atlasteam-sample"
                },
                "spec": {
                  "name": "my-team",
                  "usernames": [
                    "username@mongodb.com"
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/mongodb/mongodb-atlas-kubernetes-operator@sha256:97954960c411c7711bd93ab4bdb243b72cee0e6ec9f6a3951ce300b1d9fb895a
          createdAt: "2025-03-06T14:09:19Z"
          description: The MongoDB Atlas Kubernetes Operator enables easy management
            of Clusters in MongoDB Atlas
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AtlasBackupCompliancePolicy
            name: atlasbackupcompliancepolicies.atlas.mongodb.com
            version: v1
          - description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies
              API
            displayName: Atlas Backup Policy
            kind: AtlasBackupPolicy
            name: atlasbackuppolicies.atlas.mongodb.com
            version: v1
          - description: AtlasBackupSchedule is the Schema for the atlasbackupschedules
              API
            displayName: Atlas Backup Schedule
            kind: AtlasBackupSchedule
            name: atlasbackupschedules.atlas.mongodb.com
            version: v1
          - description: AtlasCustomRole is the Schema for the AtlasCustomRole API
            displayName: Atlas Custom Role
            kind: AtlasCustomRole
            name: atlascustomroles.atlas.mongodb.com
            version: v1
          - description: AtlasDatabaseUser is the Schema for the Atlas Database User
              API
            displayName: Atlas Database User
            kind: AtlasDatabaseUser
            name: atlasdatabaseusers.atlas.mongodb.com
            version: v1
          - description: AtlasDataFederation is the Schema for the Atlas Data Federation
              API
            displayName: Atlas Data Federation
            kind: AtlasDataFederation
            name: atlasdatafederations.atlas.mongodb.com
            version: v1
          - description: AtlasDeployment is the Schema for the atlasdeployments API
            displayName: Atlas Deployment
            kind: AtlasDeployment
            name: atlasdeployments.atlas.mongodb.com
            version: v1
          - description: AtlasFederatedAuth is the Schema for the Atlasfederatedauth
              API
            displayName: Atlas Federated Auth
            kind: AtlasFederatedAuth
            name: atlasfederatedauths.atlas.mongodb.com
            version: v1
          - description: AtlasIPAccessList is the Schema for the atlasipaccesslists
              API.
            displayName: Atlas IPAccess List
            kind: AtlasIPAccessList
            name: atlasipaccesslists.atlas.mongodb.com
            version: v1
          - description: AtlasNetworkContainer is the Schema for the AtlasNetworkContainer
              API
            displayName: Atlas Network Container
            kind: AtlasNetworkContainer
            name: atlasnetworkcontainers.atlas.mongodb.com
            version: v1
          - description: AtlasNetworkPeering is the Schema for the AtlasNetworkPeering
              API
            displayName: Atlas Network Peering
            kind: AtlasNetworkPeering
            name: atlasnetworkpeerings.atlas.mongodb.com
            version: v1
          - description: "The AtlasPrivateEndpoint custom resource definition (CRD)
              defines a desired [Private Endpoint](https://www.mongodb.com/docs/atlas/security-private-endpoint/#std-label-private-endpoint-overview)
              configuration for an Atlas project. It allows a private connection between
              your cloud provider and Atlas that doesn't send information through
              a public network. \n You can use private endpoints to create a unidirectional
              connection to Atlas clusters from your virtual network."
            displayName: Atlas Private Endpoint
            kind: AtlasPrivateEndpoint
            name: atlasprivateendpoints.atlas.mongodb.com
            version: v1
          - description: AtlasProject is the Schema for the atlasprojects API
            displayName: Atlas Project
            kind: AtlasProject
            name: atlasprojects.atlas.mongodb.com
            version: v1
          - description: Atlas Search Index Config is the Schema for the Atlas Search
              API
            displayName: Atlas Search Index Config
            kind: AtlasSearchIndexConfig
            name: atlassearchindexconfigs.atlas.mongodb.com
            version: v1
          - description: AtlasStreamConnection is the Schema for the atlasstreamconnections
              API
            displayName: Atlas Stream Connection
            kind: AtlasStreamConnection
            name: atlasstreamconnections.atlas.mongodb.com
            version: v1
          - description: AtlasStreamInstance is the Schema for the atlasstreaminstances
              API
            displayName: Atlas Stream Instance
            kind: AtlasStreamInstance
            name: atlasstreaminstances.atlas.mongodb.com
            version: v1
          - description: AtlasTeam is the Schema for the Atlas Teams API
            displayName: Atlas Team
            kind: AtlasTeam
            name: atlasteams.atlas.mongodb.com
            version: v1
        description: |
          The MongoDB Atlas Operator provides a native integration between the Kubernetes orchestration platform and MongoDB
          Atlas — the only multi-cloud document database service that gives you the versatility you need to build sophisticated
          and resilient applications that can adapt to changing customer demands and market trends.

          The full documentation for the Operator can be found [here](https://docs.atlas.mongodb.com/atlas-operator/)

          ## Getting Started

          ### Supported features

          * Create and configure a project, or connect to an existing one.
          * Deploy, manage, scale, and tear down clusters.
          * Support for serverless instances.
          * Create and edit database users.
          * Manage IP Access Lists, network peering and private endpoints.
          * Configure and control Atlas’s fully managed cloud backup.
          * Configure federated authentication for your Atlas organization
          * Integrate Atlas monitoring with Prometheus.

          ... and more.

          To view the list of custom resources and each CR's schema, visit our [reference](https://www.mongodb.com/docs/atlas/operator/stable/custom-resources/)
          documentation. See the [Quickstart](https://www.mongodb.com/docs/atlas/operator/stable/ak8so-quick-start/) to get
          started with Atlas Kubernetes Operator.
        displayName: MongoDB Atlas Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - MongoDB
        - Atlas
        - Database
        - Replica Set
        - Cluster
        links:
        - name: MongoDB Atlas Kubernetes
          url: https://github.com/mongodb/mongodb-atlas-kubernetes
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: beta
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/mongodb/mongodb-atlas-kubernetes-operator@sha256:97954960c411c7711bd93ab4bdb243b72cee0e6ec9f6a3951ce300b1d9fb895a
        - quay.io/mongodb/mongodb-atlas-kubernetes-operator@sha256:ffc0ee0c96ef18dd034c125c4756c24bc1629f6573bf7faaeb89fd2eaae1d9cc
        - registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator-bundle@sha256:a8043b35ba5742b5c514e73511c1d3ca06ef3c96418b849034e96faba9f96c36
        version: 2.8.0
      entries:
      - name: mongodb-atlas-kubernetes.v2.8.0
        version: 2.8.0
      - name: mongodb-atlas-kubernetes.v2.7.1
        version: 2.7.1
      - name: mongodb-atlas-kubernetes.v2.7.0
        version: 2.7.0
      - name: mongodb-atlas-kubernetes.v2.6.1
        version: 2.6.1
      - name: mongodb-atlas-kubernetes.v2.6.0
        version: 2.6.0
      - name: mongodb-atlas-kubernetes.v2.5.0
        version: 2.5.0
      - name: mongodb-atlas-kubernetes.v2.4.1
        version: 2.4.1
      - name: mongodb-atlas-kubernetes.v2.4.0
        version: 2.4.0
      - name: mongodb-atlas-kubernetes.v2.3.1
        version: 2.3.1
      - name: mongodb-atlas-kubernetes.v2.3.0
        version: 2.3.0
      - name: mongodb-atlas-kubernetes.v2.2.2
        version: 2.2.2
      - name: mongodb-atlas-kubernetes.v2.2.1
        version: 2.2.1
      - name: mongodb-atlas-kubernetes.v2.2.0
        version: 2.2.0
      - name: mongodb-atlas-kubernetes.v2.1.0
        version: 2.1.0
      - name: mongodb-atlas-kubernetes.v2.0.1
        version: 2.0.1
      - name: mongodb-atlas-kubernetes.v2.0.0
        version: 2.0.0
      - name: mongodb-atlas-kubernetes.v1.9.1
        version: 1.9.1
      - name: mongodb-atlas-kubernetes.v1.9.0
        version: 1.9.0
      - name: mongodb-atlas-kubernetes.v1.8.2
        version: 1.8.2
      - name: mongodb-atlas-kubernetes.v1.8.1
        version: 1.8.1
      - name: mongodb-atlas-kubernetes.v1.8.0
        version: 1.8.0
      - name: mongodb-atlas-kubernetes.v1.7.3
        version: 1.7.3
      - name: mongodb-atlas-kubernetes.v1.7.2
        version: 1.7.2
      - name: mongodb-atlas-kubernetes.v1.7.1
        version: 1.7.1
      - name: mongodb-atlas-kubernetes.v1.7.0
        version: 1.7.0
      - name: mongodb-atlas-kubernetes.v1.6.1
        version: 1.6.1
      - name: mongodb-atlas-kubernetes.v1.6.0
        version: 1.6.0
      - name: mongodb-atlas-kubernetes.v1.5.1
        version: 1.5.1
      - name: mongodb-atlas-kubernetes.v1.5.0
        version: 1.5.0
      - name: mongodb-atlas-kubernetes.v1.4.1
        version: 1.4.1
      - name: mongodb-atlas-kubernetes.v1.3.0
        version: 1.3.0
      name: stable
    defaultChannel: stable
    packageName: mongodb-atlas-kubernetes
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: NVIDIA
      provider-url: https://github.com/Mellanox/network-operator/
    name: nvidia-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nvidia-network-operator.v25.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "HostDeviceNetwork",
                "metadata": {
                  "name": "example-hostdevice-network"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.3.225/28\",\n  \"exclude\": [\n   \"192.168.3.229/30\",\n   \"192.168.3.236/32\"\n  ]\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "hostdev"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "IPoIBNetwork",
                "metadata": {
                  "name": "example-ipoibnetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"nv-ipam\",\n  \"poolName\": \"my-pool\"\n}\n",
                  "master": "ibs3f1",
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "MacvlanNetwork",
                "metadata": {
                  "name": "example-macvlannetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.2.225/24\",\n  \"exclude\": [\n   \"192.168.2.229/30\",\n   \"192.168.2.236/32\"\n  ]\n}\n",
                  "master": "ens2f0",
                  "mode": "bridge",
                  "mtu": 1500,
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "NicClusterPolicy",
                "metadata": {
                  "name": "nic-cluster-policy"
                },
                "spec": {
                  "ofedDriver": {
                    "image": "doca-driver",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 30
                    },
                    "readinessProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 30
                    },
                    "repository": "nvcr.io/nvidia/mellanox",
                    "startupProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 20
                    },
                    "terminationGracePeriodSeconds": 300,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": true,
                        "enable": true,
                        "force": true,
                        "podSelector": "",
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1
                    },
                    "version": "doca3.2.0-25.10-1.2.8.0-2"
                  },
                  "rdmaSharedDevicePlugin": {
                    "config": "{\n  \"configList\": [\n    {\n      \"resourceName\": \"rdma_shared_device_a\",\n      \"rdmaHcaMax\": 63,\n      \"selectors\": {\n        \"vendors\": [\"15b3\"]\n      }\n    }\n  ]\n}\n",
                    "image": "k8s-rdma-shared-dev-plugin",
                    "repository": "nvcr.io/nvidia/mellanox",
                    "version": "sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
          createdAt: "2025-12-11T08:10:51Z"
          description: Deploy and manage NVIDIA networking resources in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-network-operator
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: https://github.com/Mellanox/network-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: HostDeviceNetwork
            name: hostdevicenetworks.mellanox.com
            version: v1alpha1
          - kind: IPoIBNetwork
            name: ipoibnetworks.mellanox.com
            version: v1alpha1
          - kind: MacvlanNetwork
            name: macvlannetworks.mellanox.com
            version: v1alpha1
          - kind: NicClusterPolicy
            name: nicclusterpolicies.mellanox.com
            version: v1alpha1
        description: |
          ## NVIDIA Network Operator
          The NVIDIA Network Operator simplifies the provisioning and management of NVIDIA networking resources  in a Kubernetes cluster. The operator automatically installs the required host networking software - bringing together all the needed components to provide high-speed network connectivity. These components include the NVIDIA networking driver, Kubernetes device plugin, CNI plugins, IP address management (IPAM) plugin and others.
          The NVIDIA Network Operator works in conjunction with the NVIDIA GPU Operator to deliver high-throughput, low-latency networking for scale-out, GPU computing clusters.

          The Network Operator uses Node Feature Discovery (NFD) labels in order to properly schedule resources.
          Nodes can be labelled manually or using the NFD Operator. An example of `NodeFeatureDiscovery`
          configuration is available in the documentation.
          The following NFD labels are used:
          `feature.node.kubernetes.io/pci-15b3.present` for nodes containing NVIDIA Networking hardware.
          `feature.node.kubernetes.io/pci-10de.present` for nodes containing NVIDIA GPU hardware.

          The Network Operator is open-source. For more information on contributions and release artifacts, see the [GitHub repo](https://github.com/Mellanox/network-operator/)
        displayName: NVIDIA Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sriov
        - networking
        links:
        - name: Network Operator Documentation
          url: https://docs.nvidia.com/networking/software/cloud-orchestration/index.html
        - name: GitHub repository
          url: https://github.com/Mellanox/network-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/network-operator/
        relatedImages:
        - nvcr.io/nvidia/doca/doca_telemetry@sha256:f0d3c4a00616343e74e465e259a7475d69920a8dbff530117253cb1939e366f6
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:2ba90699f70a848488bf520afd03283e515c73daef431618256920d685957d4c
        - nvcr.io/nvidia/mellanox/network-operator-init-container@sha256:8990b7fabb164d5c369964bca8bd0424acd6227d2cc8f0cbfc23b2e3cc732c8b
        - nvcr.io/nvidia/mellanox/spectrum-x-operator@sha256:d806c8913833596c53344601e77620ce441afe164968b6c6626b6a715031515a
        - nvcr.io/nvidia/mellanox/ipoib-cni@sha256:8567594bb1570383f5b68c9e9ce814bc34dd0f1d8df60a89c44105cf476a8ff0
        - nvcr.io/nvidia/mellanox/nic-feature-discovery@sha256:7573a7a063ee4bfbaa5b8e3517e655da5fa5472e2c9bf96a4d45469718416531
        - nvcr.io/nvidia/mellanox/nvidia-k8s-ipam@sha256:f3618a6bf879057dd3e63ae0bef5bad3fecc5f5548430cf5aa8745287c71e063
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:54606f3cde8fe47e5399347661d58954889a7712f7b35c505b949a313d5f7dfe
        - nvcr.io/nvidia/mellanox/sriov-network-device-plugin@sha256:16230372aa23ae025f7b5fa5ac092bbf58c8040bf66e162f7977469ba7322bcc
        - nvcr.io/nvidia/mellanox/nic-configuration-operator@sha256:25fbecba5fa2c588007c85fbffdedf4b734c36774824da1598ab063e0e9a9685
        - nvcr.io/nvidia/mellanox/ib-kubernetes@sha256:da161f6694fb5134948e8ffc47ebc556c8fdbdb4cb83be1dc6c9a2276b671c03
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:4015c620d07b169462d726dee926616faf0d20b4331a1922bade079efd8427b5
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:c6c0ef891b8dd381c002976b202ffe1c8d7d35710d812dbc3d31151a913b3fd4
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:0f99c9165a5001cca2d5fe11c7fd480f7fc455928c43ebec1fdd2cac3cb811be
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:327f4396b63cc6d6694a3272f48758e3bc415b477919d36f3ff8b5e4b0c322eb
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:bca54e10732c1a617cc9cc2ded9b83372593963559ba72a54c499d39a143fcb0
        - nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:8f6a0c704e40e383079a7d9fd6b06d60af168e3ebf3cb98175f952a3c404a9a8
        - nvcr.io/nvidia/mellanox/nic-configuration-operator-daemon@sha256:efef0cd39324058f23cfeda561d4c23063f260905c35a0a29d5a246bec091341
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-network-operator@sha256:beab52d506ac9133172b18bec91e1fa8e261b2a203669880c1a3ffeaeb30e2b0
        - nvcr.io/nvidia/mellanox/k8s-rdma-shared-dev-plugin@sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e
        version: 25.10.0
      entries:
      - name: nvidia-network-operator.v25.10.0
        version: 25.10.0
      - name: nvidia-network-operator.v25.7.0
        version: 25.7.0
      name: stable
    - currentCSV: nvidia-network-operator.v25.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "HostDeviceNetwork",
                "metadata": {
                  "name": "example-hostdevice-network"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.3.225/28\",\n  \"exclude\": [\n   \"192.168.3.229/30\",\n   \"192.168.3.236/32\"\n  ]\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "hostdev"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "IPoIBNetwork",
                "metadata": {
                  "name": "example-ipoibnetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"nv-ipam\",\n  \"poolName\": \"my-pool\"\n}\n",
                  "master": "ibs3f1",
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "MacvlanNetwork",
                "metadata": {
                  "name": "example-macvlannetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.2.225/24\",\n  \"exclude\": [\n   \"192.168.2.229/30\",\n   \"192.168.2.236/32\"\n  ]\n}\n",
                  "master": "ens2f0",
                  "mode": "bridge",
                  "mtu": 1500,
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "NicClusterPolicy",
                "metadata": {
                  "name": "nic-cluster-policy"
                },
                "spec": {
                  "ofedDriver": {
                    "image": "doca-driver",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 30
                    },
                    "readinessProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 30
                    },
                    "repository": "nvcr.io/nvidia/mellanox",
                    "startupProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 20
                    },
                    "terminationGracePeriodSeconds": 300,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": true,
                        "enable": true,
                        "force": true,
                        "podSelector": "",
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1
                    },
                    "version": "doca3.2.0-25.10-1.2.8.0-2"
                  },
                  "rdmaSharedDevicePlugin": {
                    "config": "{\n  \"configList\": [\n    {\n      \"resourceName\": \"rdma_shared_device_a\",\n      \"rdmaHcaMax\": 63,\n      \"selectors\": {\n        \"vendors\": [\"15b3\"]\n      }\n    }\n  ]\n}\n",
                    "image": "k8s-rdma-shared-dev-plugin",
                    "repository": "nvcr.io/nvidia/mellanox",
                    "version": "sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
          createdAt: "2025-12-11T08:10:51Z"
          description: Deploy and manage NVIDIA networking resources in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-network-operator
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: https://github.com/Mellanox/network-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: HostDeviceNetwork
            name: hostdevicenetworks.mellanox.com
            version: v1alpha1
          - kind: IPoIBNetwork
            name: ipoibnetworks.mellanox.com
            version: v1alpha1
          - kind: MacvlanNetwork
            name: macvlannetworks.mellanox.com
            version: v1alpha1
          - kind: NicClusterPolicy
            name: nicclusterpolicies.mellanox.com
            version: v1alpha1
        description: |
          ## NVIDIA Network Operator
          The NVIDIA Network Operator simplifies the provisioning and management of NVIDIA networking resources  in a Kubernetes cluster. The operator automatically installs the required host networking software - bringing together all the needed components to provide high-speed network connectivity. These components include the NVIDIA networking driver, Kubernetes device plugin, CNI plugins, IP address management (IPAM) plugin and others.
          The NVIDIA Network Operator works in conjunction with the NVIDIA GPU Operator to deliver high-throughput, low-latency networking for scale-out, GPU computing clusters.

          The Network Operator uses Node Feature Discovery (NFD) labels in order to properly schedule resources.
          Nodes can be labelled manually or using the NFD Operator. An example of `NodeFeatureDiscovery`
          configuration is available in the documentation.
          The following NFD labels are used:
          `feature.node.kubernetes.io/pci-15b3.present` for nodes containing NVIDIA Networking hardware.
          `feature.node.kubernetes.io/pci-10de.present` for nodes containing NVIDIA GPU hardware.

          The Network Operator is open-source. For more information on contributions and release artifacts, see the [GitHub repo](https://github.com/Mellanox/network-operator/)
        displayName: NVIDIA Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sriov
        - networking
        links:
        - name: Network Operator Documentation
          url: https://docs.nvidia.com/networking/software/cloud-orchestration/index.html
        - name: GitHub repository
          url: https://github.com/Mellanox/network-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/network-operator/
        relatedImages:
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:0f99c9165a5001cca2d5fe11c7fd480f7fc455928c43ebec1fdd2cac3cb811be
        - nvcr.io/nvidia/mellanox/network-operator-init-container@sha256:8990b7fabb164d5c369964bca8bd0424acd6227d2cc8f0cbfc23b2e3cc732c8b
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:327f4396b63cc6d6694a3272f48758e3bc415b477919d36f3ff8b5e4b0c322eb
        - nvcr.io/nvidia/mellanox/nic-feature-discovery@sha256:7573a7a063ee4bfbaa5b8e3517e655da5fa5472e2c9bf96a4d45469718416531
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:bca54e10732c1a617cc9cc2ded9b83372593963559ba72a54c499d39a143fcb0
        - nvcr.io/nvidia/doca/doca_telemetry@sha256:f0d3c4a00616343e74e465e259a7475d69920a8dbff530117253cb1939e366f6
        - nvcr.io/nvidia/mellanox/nic-configuration-operator@sha256:25fbecba5fa2c588007c85fbffdedf4b734c36774824da1598ab063e0e9a9685
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-network-operator@sha256:beab52d506ac9133172b18bec91e1fa8e261b2a203669880c1a3ffeaeb30e2b0
        - nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
        - nvcr.io/nvidia/mellanox/ib-kubernetes@sha256:da161f6694fb5134948e8ffc47ebc556c8fdbdb4cb83be1dc6c9a2276b671c03
        - nvcr.io/nvidia/mellanox/nic-configuration-operator-daemon@sha256:efef0cd39324058f23cfeda561d4c23063f260905c35a0a29d5a246bec091341
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:54606f3cde8fe47e5399347661d58954889a7712f7b35c505b949a313d5f7dfe
        - nvcr.io/nvidia/mellanox/spectrum-x-operator@sha256:d806c8913833596c53344601e77620ce441afe164968b6c6626b6a715031515a
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:4015c620d07b169462d726dee926616faf0d20b4331a1922bade079efd8427b5
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:2ba90699f70a848488bf520afd03283e515c73daef431618256920d685957d4c
        - nvcr.io/nvidia/mellanox/ipoib-cni@sha256:8567594bb1570383f5b68c9e9ce814bc34dd0f1d8df60a89c44105cf476a8ff0
        - nvcr.io/nvidia/mellanox/nvidia-k8s-ipam@sha256:f3618a6bf879057dd3e63ae0bef5bad3fecc5f5548430cf5aa8745287c71e063
        - nvcr.io/nvidia/mellanox/sriov-network-device-plugin@sha256:16230372aa23ae025f7b5fa5ac092bbf58c8040bf66e162f7977469ba7322bcc
        - nvcr.io/nvidia/mellanox/k8s-rdma-shared-dev-plugin@sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:8f6a0c704e40e383079a7d9fd6b06d60af168e3ebf3cb98175f952a3c404a9a8
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:c6c0ef891b8dd381c002976b202ffe1c8d7d35710d812dbc3d31151a913b3fd4
        version: 25.10.0
      entries:
      - name: nvidia-network-operator.v25.10.0
        version: 25.10.0
      name: v25.10
    - currentCSV: nvidia-network-operator.v25.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "HostDeviceNetwork",
                "metadata": {
                  "name": "example-hostdevice-network"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.3.225/28\",\n  \"exclude\": [\n   \"192.168.3.229/30\",\n   \"192.168.3.236/32\"\n  ]\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "hostdev"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "IPoIBNetwork",
                "metadata": {
                  "name": "example-ipoibnetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.6.225/28\",\n  \"exclude\": [\n   \"192.168.6.229/30\",\n   \"192.168.6.236/32\"\n  ]\n}\n",
                  "master": "ibs3f1",
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "MacvlanNetwork",
                "metadata": {
                  "name": "example-macvlannetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.2.225/24\",\n  \"exclude\": [\n   \"192.168.2.229/30\",\n   \"192.168.2.236/32\"\n  ]\n}\n",
                  "master": "ens2f0",
                  "mode": "bridge",
                  "mtu": 1500,
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "NicClusterPolicy",
                "metadata": {
                  "name": "nic-cluster-policy"
                },
                "spec": {
                  "ofedDriver": {
                    "image": "doca-driver",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 30
                    },
                    "readinessProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 30
                    },
                    "repository": "nvcr.io/nvidia/mellanox",
                    "startupProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 20
                    },
                    "terminationGracePeriodSeconds": 300,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": true,
                        "enable": true,
                        "force": true,
                        "podSelector": "",
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1
                    },
                    "version": "doca3.1.0-25.07-0.9.7.0-0"
                  },
                  "rdmaSharedDevicePlugin": {
                    "config": "{\n  \"configList\": [\n    {\n      \"resourceName\": \"rdma_shared_device_a\",\n      \"rdmaHcaMax\": 63,\n      \"selectors\": {\n        \"vendors\": [\"15b3\"]\n      }\n    }\n  ]\n}\n",
                    "image": "k8s-rdma-shared-dev-plugin",
                    "repository": "nvcr.io/nvidia/mellanox",
                    "version": "sha256:a87096761d155eeb6f470e042d2d167bb466d57e63b4aba957f57d745e15a9b2"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: nvcr.io/nvidia/cloud-native/network-operator@sha256:51270965284cceeda659fb1098e70a888b39664ceade7e9d455fb95ac85914b7
          createdAt: "2025-08-21T19:12:20Z"
          description: Deploy and manage NVIDIA networking resources in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-network-operator
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: https://github.com/Mellanox/network-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: HostDeviceNetwork
            name: hostdevicenetworks.mellanox.com
            version: v1alpha1
          - kind: IPoIBNetwork
            name: ipoibnetworks.mellanox.com
            version: v1alpha1
          - kind: MacvlanNetwork
            name: macvlannetworks.mellanox.com
            version: v1alpha1
          - kind: NicClusterPolicy
            name: nicclusterpolicies.mellanox.com
            version: v1alpha1
        description: |
          ## NVIDIA Network Operator
          The NVIDIA Network Operator simplifies the provisioning and management of NVIDIA networking resources  in a Kubernetes cluster. The operator automatically installs the required host networking software - bringing together all the needed components to provide high-speed network connectivity. These components include the NVIDIA networking driver, Kubernetes device plugin, CNI plugins, IP address management (IPAM) plugin and others.
          The NVIDIA Network Operator works in conjunction with the NVIDIA GPU Operator to deliver high-throughput, low-latency networking for scale-out, GPU computing clusters.

          The Network Operator uses Node Feature Discovery (NFD) labels in order to properly schedule resources.
          Nodes can be labelled manually or using the NFD Operator. An example of `NodeFeatureDiscovery`
          configuration is available in the documentation.
          The following NFD labels are used:
          `feature.node.kubernetes.io/pci-15b3.present` for nodes containing NVIDIA Networking hardware.
          `feature.node.kubernetes.io/pci-10de.present` for nodes containing NVIDIA GPU hardware.

          The Network Operator is open-source. For more information on contributions and release artifacts, see the [GitHub repo](https://github.com/Mellanox/network-operator/)
        displayName: NVIDIA Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sriov
        - networking
        links:
        - name: Network Operator Documentation
          url: https://docs.nvidia.com/networking/software/cloud-orchestration/index.html
        - name: GitHub repository
          url: https://github.com/Mellanox/network-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/network-operator/
        relatedImages:
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:423aea08b4a0f01e2e19b6a709e14347bd08f8274f40002e0224090dfa4904fc
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:30354799264480e1aee057397eef2c52b277bbc6872184e2b7b811f4152b3a67
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:5ad37cd5ae96153e6f87670f437ff5f6e44febe7bb6eaeb1a0f219e28284e53d
        - nvcr.io/nvidia/mellanox/ipoib-cni@sha256:7564ad1142c863e61f1dd84f5714deba9a7c6f6d85efb383ac3a2566eb4f4b71
        - nvcr.io/nvidia/mellanox/nic-configuration-operator-daemon@sha256:b78c15904cecd343fa48374757b3619b5cbdc22059d5ee9731da87e35b94a2e2
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-network-operator@sha256:2cc940711539edd93a23355dcb06365821d140346e1df248386a77667c0f47ea
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:f9d4b8358c68ba28f849ca710bf769c4327a639733c0ff30282ca33a744078f6
        - nvcr.io/nvidia/mellanox/nic-configuration-operator@sha256:03f34f7fde3f65ca7b214b66c6fdbc1250d4f3863f9c02b0fba78e8aa84efca3
        - nvcr.io/nvidia/mellanox/nvidia-k8s-ipam@sha256:3f692273c1598525b9c698c9d9cd463e5ddc55b638c6c031639f38786fc67475
        - nvcr.io/nvidia/mellanox/k8s-rdma-shared-dev-plugin@sha256:a87096761d155eeb6f470e042d2d167bb466d57e63b4aba957f57d745e15a9b2
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:9a831bfdf85f313b1f5749b7c9b2673bb8fff18b4ff768c9242dabaa4468e449
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:d41eea65b102dc5bb5792871ae212b59a65dae492ca109c52138d5626eba1ffd
        - nvcr.io/nvidia/mellanox/nic-feature-discovery@sha256:1330e3a7ea2491bc310bfc4766769389ceb56d050831bf9c145b7bfb6aba36c4
        - nvcr.io/nvidia/cloud-native/network-operator@sha256:51270965284cceeda659fb1098e70a888b39664ceade7e9d455fb95ac85914b7
        - nvcr.io/nvidia/doca/doca_telemetry@sha256:13c2a2d055e501c03c6451413b85476ceafbc2fbffc7443952294c196f3f89f3
        - nvcr.io/nvidia/mellanox/network-operator-init-container@sha256:02ee60ac6ee163acc97706bd4229d268f608a95bcbcb6fccee90ceb1d8a6c62b
        - nvcr.io/nvidia/mellanox/sriov-network-device-plugin@sha256:7508a160f3f124e0b78d2b4d5a52deca6b9f56e226fee957c4d156e425eb101a
        - nvcr.io/nvidia/mellanox/ib-kubernetes@sha256:1fa251979b5f5201af50bc7aa6936829103d742f42bfbf752f20852f5fe44dfb
        version: 25.7.0
      entries:
      - name: nvidia-network-operator.v25.7.0
        version: 25.7.0
      name: v25.7
    defaultChannel: stable
    packageName: nvidia-network-operator
    provider:
      name: NVIDIA
      url: https://github.com/Mellanox/network-operator/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: SynaXG Engineering Team
      provider-url: ""
    name: synaxg-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: synaxg-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "card.synaxg.app.com/v1",
                "kind": "SG3Reset",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "synaxg-operator",
                    "app.kubernetes.io/instance": "sg3reset-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sg3reset",
                    "app.kubernetes.io/part-of": "synaxg-operator"
                  },
                  "name": "sg3reset-sample"
                },
                "spec": {
                  "image": "registry.connect.redhat.com/synaxg/synaxg-reset-utility@sha256:4050d5731a21bbec6e26165b8dc2b7632577ffa376e7eb056aa3245cf9574753",
                  "sg3ResetList": [
                    {
                      "nodeName": "test",
                      "pciList": [
                        {
                          "enable": "false",
                          "pciAddr": "000d:01:00.0"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "card.synaxg.app.com/v1",
                "kind": "SG3Update",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "synaxg-operator",
                    "app.kubernetes.io/instance": "sg3update-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sg3update",
                    "app.kubernetes.io/part-of": "synaxg-operator"
                  },
                  "name": "sg3update-sample"
                },
                "spec": {
                  "image": "registry.connect.redhat.com/synaxg/synaxg-upgrade-utility@sha256:7ffec3249edd2467f2414c2ce4232e8e436278fd1b43a51b66f54b6ea10a60d1",
                  "sg3UpdateList": [
                    {
                      "nodeName": "test",
                      "pciList": [
                        {
                          "enable": "false",
                          "pciAddr": "000d:01:00.0",
                          "sdkImageAddr": "quay.io/synaxgcom/sdk-img@sha256:1ed57013f278e5a858f71f343649652dbd52b6f3cf451374e45b6ac427fa76f9"
                        }
                      ]
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/synaxg/synaxg-operator-utility@sha256:3b22a8022a97cb1ffdb47ffcc9d9d562601f48669aa14fd58cd8ba6128b39bd7
          createdAt: "2025-07-01T03:42:07Z"
          description: SynaXG Operator will work with the SuperMicro Server + SG3
            card  and Openshift Container Platform.The Marvell kernel module “octeon_ep”
            and “octeon_ep_vf” are necessary to the Operator. The Operator can send
            command of “reset” and “update” to SG3 board via the VF channel.As a result,
            users can realize the process of “reset card” and “update firmware” on
            the web GUI, and monitor the executing result.
          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"
          operators.openshift.io/valid-subscription: free text
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: SynaXG
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SG3Reset is the Schema for the sg3resets API
            displayName: SG3 Reset
            kind: SG3Reset
            name: sg3resets.card.synaxg.app.com
            version: v1
          - description: SG3Update is the Schema for the sg3updates API
            displayName: SG3 Update
            kind: SG3Update
            name: sg3updates.card.synaxg.app.com
            version: v1
        description: SynaXG Operator will work with the SuperMicro Server + SG3 card  and
          Openshift Container Platform.The Marvell kernel module “octeon_ep” and “octeon_ep_vf”
          are necessary to the Operator. The Operator can send command of “reset”
          and “update” to SG3 board via the VF channel.As a result, users can realize
          the process of “reset card” and “update firmware” on the web GUI, and monitor
          the executing result.
        displayName: SynaXG vDU card 102X Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vDU
        - 102X
        - SynaXG
        links:
        - name: Synaxg Operator
          url: https://synaxg-operator.domain
        maintainers:
        - email: notice@synaxg.com
          name: Mantosh Malhotra
        maturity: alpha
        provider:
          name: SynaXG Engineering Team
        relatedImages:
        - registry.connect.redhat.com/synaxg/synaxg-operator@sha256:ff3d9ab5506c4487e5b6697ffe960584aadfe9f16408e7976d345c3d93375171
        - registry.connect.redhat.com/synaxg/synaxg-reset-utility@sha256:4050d5731a21bbec6e26165b8dc2b7632577ffa376e7eb056aa3245cf9574753
        - registry.connect.redhat.com/synaxg/synaxg-upgrade-utility@sha256:7ffec3249edd2467f2414c2ce4232e8e436278fd1b43a51b66f54b6ea10a60d1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:38ee3484ba60bb474e7231e9d0718157386716cea7ffd6da6f32ddd551a5243d
        - quay.io/synaxgcom/sdk-img@sha256:1ed57013f278e5a858f71f343649652dbd52b6f3cf451374e45b6ac427fa76f9
        - registry.connect.redhat.com/synaxg/synaxg-operator-utility@sha256:3b22a8022a97cb1ffdb47ffcc9d9d562601f48669aa14fd58cd8ba6128b39bd7
        version: 1.2.0
      entries:
      - name: synaxg-operator.v1.2.0
        version: 1.2.0
      name: alpha
    defaultChannel: alpha
    packageName: synaxg-operator
    provider:
      name: SynaXG Engineering Team
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: application-services-metering-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: application-services-metering-operator.v0.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "applicationservices.redhat.com/v1",
                "kind": "Meter",
                "metadata": {
                  "name": "app-services-metrics-example"
                },
                "spec": {
                  "includeInfrastructure": false,
                  "meterCollectionEnabled": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Application Runtime
          certified: "false"
          containerImage: quay.io/redhat-developer/application-services-metering-operator:0.6.1
          createdAt: "2021-09-28T13:00:00Z"
          description: Collect the core usage of products from the Application Services
            portfolio into a single metric labeled by Runtimes, Integration, and Automation.
          repository: https://github.com/redhat-developer/application-services-metering-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Meter
            displayName: Meter
            kind: Meter
            name: meters.applicationservices.redhat.com
            version: v1
        description: |-
          ## About the managed application

          There is no managed application created with this operator.

          ## About this Operator

          The metering operator watches pods for predetermined labels, across a cluster or namespace(s).
          The label schema for Red Hat Application Services is in the format:

          * `com.company=Red_Hat`
          * `rht.comp=PAM`
          * `rht.comp_ver=7.10`
          * `rht.prod_name=Red_Hat_Process_Automation`
          * `rht.prod_ver=7.11`
          * `rht.subcomp=rhpam-kogito-runtime`
          * `rht.subcomp_t=application`

          It's important not to remove labels as the operator will cease monitoring those pods.

          The operator exposes a metric named: `appsvcs_cpu_usage_cores`
          The metric has a label for product category, these are Runtimes, Integration and Automation.
          There is a prometheus rule using the metric to group by product name, `appsvcs_cores_by_product:sum`.

          The operator utilises the OpenShift Monitoring Stack to provide usage observability via cloud.redhat.com

          ## Prerequisites for enabling this Operator

          None.
        displayName: Application Services Metering Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - metering
        - operator
        links:
        - name: Red Hat Application Services portfolio
          url: https://www.redhat.com/en/products/middleware
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/redhat-developer/application-services-metering-operator:0.6.1
        - quay.io/openshift-community-operators/application-services-metering-operator@sha256:c3600cc8cd789df1f3c8f48bb3b1bc4c9cbf0285b6f6ce06f1d563c52f50915e
        version: 0.6.1
      entries:
      - name: application-services-metering-operator.v0.6.1
        version: 0.6.1
      - name: application-services-metering-operator.v0.6.0
        version: 0.6.0
      name: alpha
    defaultChannel: alpha
    packageName: application-services-metering-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: ""
    name: awss3-operator-registry
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: awss3operator.1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/screeley44/aws-s3-provisioner:v1.0.0
          createdAt: "2019-05-02 16:12:00"
          description: Manage the full lifecycle of installing, configuring and managing
            AWS S3 Provisioner.
          repository: https://github.com/yard-turkey/aws-s3-provisioner
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          required:
          - description: instance of an AWS S3 Bucket
            displayName: Object Bucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
          - description: Request for an AWS S3 Bucket
            displayName: Object Bucket Claim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
        description: |
          AWS S3 Operator will deploy the AWS S3 Provisioner which will dynamically or statically
          provision AWS S3 Bucket storage and access. The operator deploys the ObjectBucket (OB) and ObjectBucketClaim (OBC)
          CustomResourceDefinitions. The OB/OBC model follows the traditional Kubernetes PV/PVC pattern, when an OBC is detected
          the operator will act on the OBC to either provision a brand new S3 Bucket in AWS or gain access to an existing
          S3 Bucket in AWS. The operator produces an OB and ConfigMap and Secret which can then be consumed by application pods.

          **Important Note**: Currently, while in preview, this operator does not
          support automatic upgrades. You must remove the old version of the operator
          manually before installing a new version.
          ## Using AWS S3 Operator

          ### Administrator Creates Secret
          This secret will contain the elevated/admin privileges needed by the provisioner
          to properly access and create S3 Buckets and IAM users and policies. The AWS Access ID
          and AWS Secret Key will be needed for this.
          1. Create the Kubernetes Secret for the Provisioner's Owner Access.
          ```yaml
          apiVersion: v1
          kind: Secret
          metadata:
            name: s3-bucket-owner [1]
            namespace: s3-provisioner [2]
          type: Opaque
          data:
            AWS_ACCESS_KEY_ID: *base64 encoded value* [3]
            AWS_SECRET_ACCESS_KEY: *base64 encoded value* [4]
          ```
          1. Name of the secret, this will be referenced in StorageClass.
          1. Namespace where the Secret will exist.
          1. Your AWS_ACCESS_KEY_ID base64 encoded.
          1. Your AWS_SECRET_ACCESS_KEY base64 encoded.
          ```
           # kubectl create -f creds.yaml
          secret/s3-bucket-owner created
          ```
          ### Administrator Creates StorageClass
          The StorageClass defines the name of the provisioner and holds other properties that are needed to provision a new bucket, including
          the Owner Secret and Namespace, and the AWS Region.
          #### Greenfield Example:
          For Greenfield, a new, dynamic bucket will be generated.
          1. Create the Kubernetes StorageClass for the Provisioner.
          ```yaml
          kind: StorageClass
          apiVersion: storage.k8s.io/v1
          metadata:
            name: s3-buckets [1]
          provisioner: aws-s3.io/bucket [2]
          parameters:
            region: us-west-1 [3]
            secretName: s3-bucket-owner [4]
            secretNamespace: s3-provisioner [5]
          reclaimPolicy: Delete [6]
          ```
          1. Name of the StorageClass, this will be referenced in the User ObjectBucketClaim.
          1. Provisioner name
          1. AWS Region that the StorageClass will serve
          1. Name of the bucket owner Secret created above
          1. Namespace where the Secret will exist
          1. reclaimPolicy (Delete or Retain) indicates if the bucket can be deleted when the OBC is deleted.
          **NOTE:** the absence of the `bucketName` Parameter key in the storage class indicates this is a new bucket and its name is based on the bucket name fields in the OBC.
          ```
           # kubectl create -f storageclass-greenfield.yaml
          storageclass.storage.k8s.io/s3-buckets created
          ```
          #### Brownfield Example:
          For brownfield, the StorageClass defines the name of the provisioner and the name of the existing bucket. It also includes other properties needed by the target
          provisioner, including: the Owner Secret and Namespace, and the AWS Region
          1. Create the Kubernetes StorageClass for the Provisioner.
          ```yaml
          kind: StorageClass
          apiVersion: storage.k8s.io/v1
          metadata:
            name: s3-existing-buckets [1]
          provisioner: aws-s3.io/bucket [2]
          parameters:
            bucketName: my-existing-bucket [3]
            region: us-west-1 [4]
            secretName: s3-bucket-owner [5]
            secretNamespace: s3-provisioner [6]
          ```
          1. Name of the StorageClass, this will be referenced in the User ObjectBucketClaim.
          1. Provisioner name
          1. Name of the existing bucket
          1. AWS Region that the StorageClass will serve
          1. Name of the bucket owner Secret created above
          1. Namespace for that bucket owner secret
          **NOTE:** the storage class's `reclaimPolicy` is ignored for existing buckets.
          ```
           # kubectl create -f storageclass-brownfield.yaml
          storageclass.storage.k8s.io/s3-buckets created
          ```
          ### User Creates ObjectBucketClaim
          An ObjectBucketClaim follows the same concept as a PVC, in that
          it is a request for Object Storage, the user doesn't need to
          concern him/herself with the underlying storage, just that
          they need access to it. The user will work with the cluster/storage
          administrator to get the proper StorageClass needed and will
          then request access via the OBC.
          #### Greenfield Request Example:
          1. Create the ObjectBucketClaim.
          ```yaml
          apiVersion: objectbucket.io/v1alpha1
          kind: ObjectBucketClaim
          metadata:
            name: myobc [1]
            namespace: s3-provisioner [2]
          spec:
            generateBucketName: mybucket [3]
            bucketName: my-awesome-bucket [4]
            storageClassName: s3-buckets [5]
          ```
          1. Name of the OBC
          1. Namespace of the OBC
          1. Name prepended to a random string used to generate a bucket name. It is ignored if bucketName is defined
          1. Name of new bucket which must be unique across all AWS regions, otherwise an error occurs when creating the bucket. If present, this name overrides `generateName`
          1. StorageClass name
          **NOTE:** if both `generateBucketName` and `bucketName` are omitted, and the storage class does _not_ define a bucket name, then a new, random bucket name is generated with no prefix.
          ```
           # kubectl create -f obc-brownfield.yaml
          objectbucketclaim.objectbucket.io/myobc created
          ```
          #### Brownfield Request Example:
          1. Create the ObjectBucketClaim.
          ```yaml
          apiVersion: objectbucket.io/v1alpha1
          kind: ObjectBucketClaim
          metadata:
            name: myobc [1]
            namespace: s3-provisioner [2]
          spec:
            storageClassName: s3-existing-buckets [3]
          ```
          1. Name of the OBC
          1. Namespace of the OBC
          1. StorageClass name
          **NOTE:** in the OBC here there is no reference to the bucket's name. This is defined in the storage class and is not a concern of the user creating the claim to this bucket.  An OBC does have fields for defining a bucket name for greenfield use only.
          ```
           # kubectl create -f obc-brownfield.yaml
          objectbucketclaim.objectbucket.io/myobc created
          ```
          ### Results and Recap
          Let's pause for a moment and digest what just happened.
          After creating the OBC, and assuming the S3 provisioner is running, we now have
          the following Kubernetes resources:
          .  a global ObjectBucket (OB) which contains: bucket endpoint info (including region and bucket name), a reference to the OBC, and a reference to the storage class. Unique to S3, the OB also contains the bucket Amazon Resource Name (ARN).Note: there is always a 1:1 relationship between an OBC and an OB.
          .  a ConfigMap in the same namespace as the OBC, which contains the same endpoint data found in the OB.
          .  a Secret in the same namespace as the OBC, which contains the AWS key-pairs needed to access the bucket.
          And of course, we have a *new* AWS S3 Bucket which you should be able to see via the AWS Console.
          *ObjectBucket*
          ```yaml
           # kubectl get ob obc-s3-provisioner-my-awesome-bucket -o yaml
          apiVersion: objectbucket.io/v1alpha1
          kind: ObjectBucket
          metadata:
            creationTimestamp: "2019-04-03T15:42:22Z"
            generation: 1
            name: obc-s3-provisioner-my-awesome-bucket
            resourceVersion: "15057"
            selfLink: /apis/objectbucket.io/v1alpha1/objectbuckets/obc-s3-provisioner-my-awesome-bucket
            uid: 0bfe8e84-576d-4c4e-984b-f73c4460f736
          spec:
            Connection:
              additionalState:
                ARN: arn:aws:iam::<accountid>:policy/my-awesome-bucket-vSgD5 [1]
                UserName: my-awesome-bucket-vSgD5 [2]
              endpoint:
                additionalConfig: null
                bucketHost: s3-us-west-1.amazonaws.com
                bucketName: my-awesome-bucket [3]
                bucketPort: 443
                region: us-west-1
                ssl: true
                subRegion: ""
            claimRef: null [4]
            reclaimPolicy: null
            storageClassName: s3-buckets [5]
          ```
          1. The AWS Policy created for this user and bucket.
          1. The new user generated by the Provisioner to access this existing bucket.
          1. The bucket name.
          1. The reference to the OBC (not filled in yet).
          1. The reference to the StorageClass used.
          *ConfigMap*
          ```yaml
           # kubectl get cm myobc -n s3-provisioner -o yaml
          apiVersion: v1
          data:
            BUCKET_HOST: s3-us-west-1.amazonaws.com [1]
            BUCKET_NAME: my-awesome-bucket [2]
            BUCKET_PORT: "443"
            BUCKET_REGION: us-west-1
            BUCKET_SSL: "true"
            BUCKET_SUBREGION: ""
          kind: ConfigMap
          metadata:
            creationTimestamp: "2019-04-01T19:11:38Z"
            finalizers:
            - objectbucket.io/finalizer
            name: my-awesome-bucket
            namespace: s3-provisioner
            resourceVersion: "892"
            selfLink: /api/v1/namespaces/s3-provisioner/configmaps/my-awesome-bucket
            uid: 2edcc58a-aff8-4a29-814a-ffbb6439a9cd
          ```
          1. The AWS S3 host.
          1. The name of the new bucket we are gaining access to.
          *Secret*
          ```yaml
           # kubectl get secret my-awesome-bucket -n s3-provisioner -o yaml
          apiVersion: v1
          data:
            AWS_ACCESS_KEY_ID: *the_new_access_id* [1]
            AWS_SECRET_ACCESS_KEY: *the_new_access_key_value* [2]
          kind: Secret
          metadata:
            creationTimestamp: "2019-04-03T15:42:22Z"
            finalizers:
            - objectbucket.io/finalizer
            name: my-awesome-bucket
            namespace: s3-provisioner
            resourceVersion: "15058"
            selfLink: /api/v1/namespaces/s3-provisioner/secrets/screeley-provb-5
            uid: 225c71a5-9d75-4ccc-b41f-bfe91b272a13
          type: Opaque
          ```
          1. The new generated AWS Access Key ID.
          1. The new generated AWS Secret Access Key.
          What happened in AWS? The first thing we do on any OBC request is
          create a new IAM user and generate Access ID and Secret Keys.
          This allows us to also better control ACLs. We also create a policy
          in IAM which we then attach to the user and bucket. We also created a new bucket, called *my-awesome-bucket*.
          When the OBC is deleted all of its Kubernetes and AWS resources will also be deleted, which includes:
          the generated OB, Secret, ConfigMap, IAM user, and policy.
          If the _retainPolicy_ on the StorageClass for this bucket is *"Delete"*, then, in addition to the above cleanup, the physical bucket is also deleted.
          **NOTE:** The actual bucket is only deleted if the Storage Class's _reclaimPolicy_ is "Delete".
          ### User Creates Pod
          Now that we have our bucket and connection/access information, a pod
          can be used to access the bucket. This can be done in several different
          ways, but the key here is that the provisioner has provided the proper
          endpoints and keys to access the bucket. The user then simply references
          the keys.
          1. Create a Sample Pod to Access the Bucket.
          ```yaml
          apiVersion: v1
          kind: Pod
          metadata:
            name: photo1
            labels:
              name: photo1
          spec:
            containers:
            - name: photo1
              image: docker.io/screeley44/photo-gallery:latest
              imagePullPolicy: Always
              envFrom:
              - configMapRef:
                  name: my-awesome-bucket <1>
              - secretRef:
                  name: my-awesome-bucket <2>
              ports:
              - containerPort: 3000
                protocol: TCP
          ```
          1. Name of the generated configmap from the provisioning process
          1. Name of the generated secret from the provisioning process
          *[Note]* Generated ConfigMap and Secret are same name as the OBC!
          Lastly, expose the pod as a service so you can access the url from a browser. In this example,
          I exposed as a LoadBalancer
          ```
            # kubectl expose pod photo1 --type=LoadBalancer --name=photo1 -n your-namespace
          ```
          To access via a url use the EXTERNAL-IP
          ```
            # kubectl get svc photo1
            NAME                         TYPE           CLUSTER-IP       EXTERNAL-IP                                                               PORT(S)          AGE
            photo1                       LoadBalancer   100.66.124.105   a00c53ccb3c5411e9b6550a7c0e50a2a-2010797808.us-east-1.elb.amazonaws.com   3000:32344/TCP   6d
          ```
          **NOTE:** This is just one example of a Pod that can utilize the bucket information,
          there are several ways that these pod applications can be developed and therefore
          the method of getting the actual values needed from the Secrets and ConfigMaps
          will vary greatly, but the idea remains the same, that the pod consumes the generated
          ConfigMap and Secret created by the provisioner.
        displayName: AWS S3 Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - awss3provisioner
        - aws
        - S3
        - provisioner
        - buckets
        links:
        - name: AWS S3 Provisioner
          url: https://github.com/yard-turkey/aws-s3-provisioner
        - name: Provisioner Examples
          url: https://github.com/yard-turkey/aws-s3-provisioner/tree/master/examples
        - name: Operator Documentation
          url: https://github.com/yard-turkey/awss3operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/openshift-community-operators/awss3-operator-registry@sha256:9ab3a2cd00b8704a8bae8e9b75f2a95d0a3e60fa3cb52589db8a4e7641b73027
        - quay.io/screeley44/aws-s3-provisioner:v1.0.0
        version: 1.0.1
      entries:
      - name: awss3operator.1.0.1
        version: 1.0.1
      name: alpha
    defaultChannel: alpha
    packageName: awss3-operator-registry
    provider:
      name: Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: machine-deletion-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: machine-deletion-remediation.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediation",
                "metadata": {
                  "name": "machinedeletionremediation-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediationTemplate",
                "metadata": {
                  "name": "machinedeletionremediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/machine-deletion-remediation-operator:v0.1.0
          createdAt: "2023-05-11 10:46:12"
          description: Machine Deletion Remediation operator for reprovisioning unhealthy
            nodes using the Machine API.
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/machine-deletion-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MachineDeletionRemediation is the Schema for the machinedeletionremediations
              API
            displayName: Machine Deletion Remediation
            kind: MachineDeletionRemediation
            name: machinedeletionremediations.machine-deletion-remediation.medik8s.io
            version: v1alpha1
          - description: MachineDeletionRemediationTemplate is the Schema for the
              machinedeletionremediationtemplates API
            displayName: Machine Deletion Remediation Template
            kind: MachineDeletionRemediationTemplate
            name: machinedeletionremediationtemplates.machine-deletion-remediation.medik8s.io
            version: v1alpha1
        description: |
          Machine Deletion Remediation (MDR) is a remediator designed to reprovision unhealthy
          nodes using the Machine API. MDR can be used together with NodeHealthCheck (NHC),
          which detects the unhealthy Node and creates the Custom Resource for MDR.

          # How it works
          MDR follows the annotation on the Node to the associated Machine object, confirms
          that it has an owning controller (e.g. MachineSetController), that will recreate the
          Machine once deleted, and then proceeds with deleting the Machine.

          # How to use MDR with NHC
          Since NHC comes with Self Node Remediation as the default remediation mechanism,
          it needs to be configured to use MDR with the following steps

          - Create the MDR Template CR
          - Modify NHC's `.spec.remediationTemplate` to use MDR as it's remediator

          see https://github.com/medik8s/machine-deletion-remediation#readme for configuration examples.
        displayName: Machine Deletion Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - machine
        - deletion
        - remediation
        - mdr
        links:
        - name: Machine Deletion Remediation
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/machine-deletion-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/openshift-community-operators/machine-deletion-remediation@sha256:34d1e6cbfaf248a7b28c2a6e6a39f3fe46c183b9c38ac5fbb98eb3f421ba903c
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/medik8s/machine-deletion-remediation-operator:v0.1.0
        version: 0.1.0
      entries:
      - name: machine-deletion-remediation.v0.1.0
        version: 0.1.0
      name: candidate
    - currentCSV: machine-deletion-remediation.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediation",
                "metadata": {
                  "name": "machinedeletionremediation-sample"
                },
                "spec": {},
                "status": {
                  "conditions": [
                    {
                      "reason": "RemediationFinished",
                      "status": false,
                      "type": "Processing"
                    },
                    {
                      "reason": "RemediationFinished",
                      "status": true,
                      "type": "Succeeded"
                    },
                    {
                      "reason": "MachineDeletionOnBareMetalProviderReason",
                      "status": false,
                      "type": "PermanentNodeDeletionExpected"
                    }
                  ]
                }
              },
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediationTemplate",
                "metadata": {
                  "name": "machinedeletionremediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/machine-deletion-remediation-operator:v0.5.0
          createdAt: "2025-11-24 11:43:35"
          description: Machine Deletion Remediation operator for reprovisioning unhealthy
            nodes using the Machine API.
          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.skipRange: '>=0.0.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/machine-deletion-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MachineDeletionRemediation is the Schema for the machinedeletionremediations
              API
            displayName: Machine Deletion Remediation
            kind: MachineDeletionRemediation
            name: machinedeletionremediations.machine-deletion-remediation.medik8s.io
            version: v1alpha1
          - description: MachineDeletionRemediationTemplate is the Schema for the
              machinedeletionremediationtemplates API
            displayName: Machine Deletion Remediation Template
            kind: MachineDeletionRemediationTemplate
            name: machinedeletionremediationtemplates.machine-deletion-remediation.medik8s.io
            version: v1alpha1
        description: |
          Machine Deletion Remediation (MDR) is a remediator designed to reprovision unhealthy
          nodes using the Machine API. MDR can be used together with NodeHealthCheck (NHC),
          which detects the unhealthy Node and creates the Custom Resource for MDR.

          # How it works
          MDR follows the annotation on the Node to the associated Machine object, confirms
          that it has an owning controller (e.g. MachineSetController), that will recreate the
          Machine once deleted, and then proceeds with deleting the Machine.

          # How to use MDR with NHC
          To use MDR as remediation mechanism for NHC, it needs to be configured with the
          following steps:

          - Create the MDR Template CR
          - Modify NHC's `.spec.remediationTemplate` to use MDR as it's remediator

          see https://github.com/medik8s/machine-deletion-remediation#readme for configuration examples.
        displayName: Machine Deletion Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - machine
        - deletion
        - remediation
        - mdr
        links:
        - name: Machine Deletion Remediation
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/machine-deletion-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/machine-deletion-remediation@sha256:2f945457449d5e8861cf62af3e0a487cfcfb039ab62f0c4a44881e7506bba6b5
        - quay.io/medik8s/machine-deletion-remediation-operator:v0.5.0
        version: 0.5.0
      entries:
      - name: machine-deletion-remediation.v0.5.0
        version: 0.5.0
      - name: machine-deletion-remediation.v0.4.0
        version: 0.4.0
      - name: machine-deletion-remediation.v0.3.0
        version: 0.3.0
      - name: machine-deletion-remediation.v0.2.1
        version: 0.2.1
      - name: machine-deletion-remediation.v0.2.0
        version: 0.2.0
      name: stable
    defaultChannel: stable
    packageName: machine-deletion-remediation
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: aws-efs-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-efs-csi-driver-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-aws-efs-csi-driver-rhel9-operator@sha256:f5a64edc71e8472da9b984c6b8d1efbf23faa3ec28814d28eb9204e87afdb072
          createdAt: "2021-07-14T00:00:00Z"
          description: Install and configure AWS EFS CSI driver.
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=4.9.0-0 <4.20.0-202512090918'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/aws-efs-csi-driver-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          AWS EFS CSI Driver Operator provides AWS Elastic File Service (EFS) CSI Driver that enables you to create and mount AWS EFS PersistentVolumes.

          Please follow [AWS EFS CSI Driver Operator documentation](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html) to:

          1. [Install the operator](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html#persistent-storage-csi-olm-operator-install_persistent-storage-csi-aws-efs). This section also covers details about configuring an AWS role in OCP cluster that uses Secure Token Services (STS).

          2. [Install the AWS EFS CSI driver using the operator](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html#persistent-storage-csi-efs-driver-install_persistent-storage-csi-aws-efs)

          3. Finally, [create a StorageClass](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html#storage-create-storage-class_persistent-storage-csi-aws-efs) that enables dynamic provisioning of PersistentVolumes.
        displayName: AWS EFS CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - efs
        links:
        - name: Documentation
          url: https://github.com/openshift/aws-efs-csi-driver-operator
        - name: Source Repository
          url: https://github.com/openshift/aws-efs-csi-driver-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:ec763a4e90cb4b256a7210cd2e30949a7bc8e83ee04a95c649270febcc892210
        - registry.redhat.io/openshift4/ose-aws-efs-csi-driver-operator-bundle@sha256:ca5538fdd21cf27dcbcfdc1168c76ad2c2ba2b8bae97e2d22f07e16a7212259f
        - registry.redhat.io/openshift4/ose-aws-efs-csi-driver-container-rhel9@sha256:583c12b4a5e07fc8af95afef764d6ea9da437d7adbdc910825b3f44e928ca110
        - registry.redhat.io/openshift4/ose-aws-efs-csi-driver-rhel9-operator@sha256:f5a64edc71e8472da9b984c6b8d1efbf23faa3ec28814d28eb9204e87afdb072
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        version: 4.20.0-202512090918
      entries:
      - name: aws-efs-csi-driver-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: aws-efs-csi-driver-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: aws-efs-csi-driver-operator.v4.20.0-202511191615
        version: 4.20.0-202511191615
      - name: aws-efs-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: aws-efs-csi-driver-operator.v4.20.0-202511040554
        version: 4.20.0-202511040554
      - name: aws-efs-csi-driver-operator.v4.20.0-202510212154
        version: 4.20.0-202510212154
      - name: aws-efs-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: aws-efs-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      operatorframework.io/os.zos: supported
      provider: Red Hat
      provider-url: ""
    name: hawtio-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hawtio-operator.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.14.0",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/hawtio/operator:0.5.0
          createdAt: "2022-04-08T00:00:00Z"
          description: Hawtio eases the discovery and management of Java applications
            deployed on OpenShift.
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Hawtio Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Hawtio
          ==============

          The Hawtio console eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between the Hawtio console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Hawtio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Hawtio Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The Hawtio team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - docker.io/hawtio/operator:0.5.0
        - quay.io/openshift-community-operators/hawtio-operator@sha256:38b36745547a08afd10e1620f8243e6f1ce18a3eb8883ec78cd631577177c5ee
        version: 0.5.0
      entries:
      - name: hawtio-operator.v0.5.0
        version: 0.5.0
      - name: hawtio-operator.v0.4.0
        version: 0.4.0
      name: alpha
    - currentCSV: hawtio-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/hawtio/operator:1.2.0
          createdAt: "2024-12-02T17:22:48Z"
          description: Hawtio eases the discovery and management of Java applications
            deployed on OpenShift.
          olm.skipRange: '>=1.0.0 <1.0.2'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Hawtio console that eases the discovery and management
              of hawtio-enabled applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Hawtio
          ==============

          The Hawtio console eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between the Hawtio console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#jvm-agent).
        displayName: Hawtio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Hawtio Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The Hawtio team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hawtio-operator@sha256:306ab7846b4c65dd9cb21d903a6cfc9b6f8f2ad409fffbdd136b30ad5989a255
        - quay.io/hawtio/operator:1.2.0
        version: 1.2.0
      entries:
      - name: hawtio-operator.v1.2.0
        version: 1.2.0
      - name: hawtio-operator.v1.1.1
        version: 1.1.1
      - name: hawtio-operator.v1.1.0
        version: 1.1.0
      - name: hawtio-operator.v1.0.1
        version: 1.0.1
      - name: hawtio-operator.v1.0.0
        version: 1.0.0
      - name: hawtio-operator.v0.5.0
        version: 0.5.0
      - name: hawtio-operator.v0.4.0
        version: 0.4.0
      name: latest
    - currentCSV: hawtio-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/hawtio/operator:1.2.0
          createdAt: "2024-12-02T17:22:48Z"
          description: Hawtio eases the discovery and management of Java applications
            deployed on OpenShift.
          olm.skipRange: '>=1.0.0 <1.0.2'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Hawtio console that eases the discovery and management
              of hawtio-enabled applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Hawtio
          ==============

          The Hawtio console eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between the Hawtio console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#jvm-agent).
        displayName: Hawtio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Hawtio Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The Hawtio team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hawtio-operator@sha256:306ab7846b4c65dd9cb21d903a6cfc9b6f8f2ad409fffbdd136b30ad5989a255
        - quay.io/hawtio/operator:1.2.0
        version: 1.2.0
      entries:
      - name: hawtio-operator.v1.2.0
        version: 1.2.0
      - name: hawtio-operator.v1.1.1
        version: 1.1.1
      - name: hawtio-operator.v1.1.0
        version: 1.1.0
      - name: hawtio-operator.v1.0.1
        version: 1.0.1
      - name: hawtio-operator.v1.0.0
        version: 1.0.0
      - name: hawtio-operator.v0.5.0
        version: 0.5.0
      - name: hawtio-operator.v0.4.0
        version: 0.4.0
      name: stable-v1
    defaultChannel: stable-v1
    packageName: hawtio-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Kurrent, Inc
      provider-url: https://kurrent.io
    name: kurrentdb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kurrentdb-operator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "kubernetes.kurrent.io/v1",
                "kind": "KurrentDB",
                "metadata": {
                  "name": "insecure",
                  "namespace": "kurrent"
                },
                "spec": {
                  "replicas": 1,
                  "image": "registry.connect.redhat.com/kurrent-io/kurrentdb@sha256:4dc9fcb41de27695ba04731e768fb18cde2f1c7882f8787dfce3d32b93520131",
                  "resources": {
                    "requests": {
                      "cpu": "1000m",
                      "memory": "1Gi"
                    }
                  },
                  "storage": {
                    "volumeMode": "Filesystem",
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "512Mi"
                      }
                    }
                  },
                  "volumeSnapshotClassName": "e2e",
                  "network": {
                    "domain": "kurrent.dev",
                    "fqdnTemplate": "{podName}.{domain}",
                    "loadBalancer": {
                      "enabled": true
                    }
                  }
                }
              },
              {
                "apiVersion": "kubernetes.kurrent.io/v1",
                "kind": "KurrentDBBackup",
                "metadata": {
                  "name": "insecure",
                  "namespace": "kurrent"
                },
                "spec": {
                  "clusterName": "insecure"
                }
              },
              {
                "apiVersion": "kubernetes.kurrent.io/v1",
                "kind": "KurrentDBBackupSchedule",
                "metadata": {
                  "name": "my-schedule",
                  "namespace": "kurrent"
                },
                "spec": {
                  "schedule": "* * * * *",
                  "template": {
                    "spec": {
                      "clusterName": "insecure"
                    }
                  },
                  "keep": 10
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database, Streaming & Messaging, OpenShift Optional
          certified: "true"
          containerImage: registry.connect.redhat.com/kurrent-io/kurrentdb-operator@sha256:9e10c1f7055fc5bbe8e4d8289b247389d337a77a27d56232022695405a10b980
          createdAt: "2025-12-23T00:00:00Z"
          description: An operator to seamlessly deploy and manage KurrentDB clusters
            and backups.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: license required, contact us
            at https://www.kurrent.io/contact
          repository: https://github.com/kurrent-io/kurrentdb
          support: support@kurrent.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A declarative representation of a KurrentDB cluster.
            kind: KurrentDB
            name: kurrentdbs.kubernetes.kurrent.io
            version: v1
          - description: A VolumeSnapshot-based backup of a KurrentDB cluster.
            kind: KurrentDBBackup
            name: kurrentdbbackups.kubernetes.kurrent.io
            version: v1
          - description: A schedule for creating and retaining of KurrentDBBackup
              resources.
            kind: KurrentDBBackupSchedule
            name: kurrentdbbackupschedules.kubernetes.kurrent.io
            version: v1
        description: An operator to seamlessly deploy and manage KurrentDB clusters
          and backups.
        displayName: KurrentDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kurrent
        - event sourcing
        - database
        links:
        - name: Website
          url: https://kurrent.io
        - name: Documentation
          url: https://docs.kurrent.io/server/kubernetes-operator
        maintainers:
        - email: support@kurrent.io
          name: Kurrent, Inc
        maturity: stable
        minKubeVersion: 1.30.0
        nativeApis:
        - group: snapshot.storage.k8s.io
          kind: VolumeSnapshot
          version: v1
        - group: snapshot.storage.k8s.io
          kind: VolumeSnapshotClass
          version: v1
        provider:
          name: Kurrent, Inc
          url: https://kurrent.io
        relatedImages:
        - registry.connect.redhat.com/kurrent-io/dns@sha256:07e8771886b4e4ab7393dee7a56c4a6d2c2225ba0aeca25e47199da616c903e4
        - registry.connect.redhat.com/kurrent-io/kurrentdb-operator-bundle@sha256:929fc9043cf20eb2838c3d63598967bcfba264011e1b9a98c9d8a38821926edc
        - registry.connect.redhat.com/kurrent-io/kurrentdb-operator@sha256:9e10c1f7055fc5bbe8e4d8289b247389d337a77a27d56232022695405a10b980
        - registry.connect.redhat.com/kurrent-io/kurrentdb@sha256:4dc9fcb41de27695ba04731e768fb18cde2f1c7882f8787dfce3d32b93520131
        version: 1.5.0
      entries:
      - name: kurrentdb-operator.v1.5.0
        version: 1.5.0
      name: stable
    defaultChannel: stable
    packageName: kurrentdb-operator
    provider:
      name: Kurrent, Inc
      url: https://kurrent.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataStax
      provider-url: ""
    name: cass-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cass-operator.v1.23.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cassandra.datastax.com/v1beta1",
                "kind": "CassandraDatacenter",
                "metadata": {
                  "name": "dc1"
                },
                "spec": {
                  "clusterName": "development",
                  "config": {
                    "cassandra-yaml": {
                      "authenticator": "PasswordAuthenticator",
                      "authorizer": "CassandraAuthorizer",
                      "num_tokens": 16,
                      "role_manager": "CassandraRoleManager"
                    },
                    "jvm-server-options": {
                      "initial_heap_size": "1G",
                      "max_heap_size": "1G"
                    }
                  },
                  "managementApiAuth": {
                    "insecure": {}
                  },
                  "podTemplateSpec": {
                    "spec": {
                      "containers": [
                        {
                          "name": "cassandra"
                        }
                      ],
                      "securityContext": {}
                    }
                  },
                  "racks": [
                    {
                      "name": "rack1"
                    },
                    {
                      "name": "rack2"
                    },
                    {
                      "name": "rack3"
                    }
                  ],
                  "resources": {
                    "requests": {
                      "cpu": "1000m",
                      "memory": "2Gi"
                    }
                  },
                  "serverType": "cassandra",
                  "serverVersion": "4.1.2",
                  "size": 3,
                  "storageConfig": {
                    "cassandraDataVolumeClaimSpec": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "10Gi"
                        }
                      },
                      "storageClassName": "server-storage"
                    }
                  }
                }
              },
              {
                "apiVersion": "control.k8ssandra.io/v1alpha1",
                "kind": "CassandraTask",
                "metadata": {
                  "name": "example-cleanup"
                },
                "spec": {
                  "datacenter": {
                    "name": "dc2",
                    "namespace": "cass-operator"
                  },
                  "jobs": [
                    {
                      "command": "cleanup",
                      "name": "cleanup-run"
                    }
                  ]
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database,Big Data,OpenShift Optional
          certified: "true"
          containerImage: registry.connect.redhat.com/datastax/cass-operator@sha256:6abc6253b50a0d7f6bdd4b394d2bf96320a8845952aeb8f0bbed99863192ec52
          createdAt: "2025-03-20"
          description: |
            Simple provisioning, turn-key operations, and automated remediation of Apache Cassandra clusters
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/k8ssandra/cass-operator
          support: DataStax
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CassandraDatacenter is the Schema for the cassandradatacenters
              API
            displayName: Cassandra Datacenter
            kind: CassandraDatacenter
            name: cassandradatacenters.cassandra.datastax.com
            version: v1beta1
          - description: CassandraTask is the Schema for the cassandrajobs API
            displayName: Cassandra Task
            kind: CassandraTask
            name: cassandratasks.control.k8ssandra.io
            version: v1alpha1
        description: "## Apache Cassandra\n\nThe Apache Cassandra database is the
          right choice when you need scalability and\nhigh availability without compromising
          performance. Linear scalability and\nproven fault-tolerance on commodity
          hardware or cloud infrastructure make it the\nperfect platform for mission-critical
          data. Cassandra's support for replicating\nacross multiple datacenters is
          best-in-class, providing lower latency for your\nusers and the peace of
          mind of knowing that you can survive regional outages.\n\n## DataStax Enterprise\n\nThe
          most advanced distribution of Apache Cassandra™ on the market, with the\nenterprise
          functionality needed for serious production systems and backed up and\nsupported
          by the best distributed-experts in the world. It's one platform for\nall
          types of applications anywhere, any cloud, any model: key-value, graph,\ntabular,
          JSON.\n\nDataStax Enterprise is a fully integrated and optimized database,
          with graph,\nanalytics, and search included, all with a unified security
          model. Simply put,\nit's the only database capable of meeting today's demanding
          requirements\n\n## Operator Details\n\n`cass-operator` is designed as a
          modular operator for Apache Cassandra and\nderived  distributions. Apache
          Cassandra is a distributed database consisting of\nmultiple nodes working
          in concert to store data and process queries along a\nnumber of fault domains.
          `cass-operator` has the deployment of a Cassandra\ncluster around the logical
          domain of a datacenter with the `CassandraDatacenter`\ncustom resource.\n
          \   \nUpon submission of one of these resources it handles provisioning
          the underlying\nstateful sets (analogous to C\\* logical racks), services,
          and configuration.\nAdditionally through monitoring pod state via Kubernetes
          callbacks it handles day to day\noperations such as restarting failed processes,
          scaling clusters up, and deploying\nconfiguration changes in a rolling,
          non-disruptive, fashion.\n    \nThis operator is designed to be `Namespace`
          scoped. A single Kubernetes cluster may\nbe running multiple instances of
          this operator, in separate namespaces, to support\na number of C\\* clusters
          and environments. Configuration is simple with the usage of\nYAML based
          overrides in the Custom Resource paired with an `init` container.\n    \nIn
          C\\* clusters ordering and timing of certain operations are important to
          keep the system\nevenly distributed. `cass-operator` takes advantage of
          a sidecar process within the\nmain container to handle the orchestration
          of starting our main C* process."
        displayName: DataStax Kubernetes Operator for Apache Cassandra
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - k8ssandra
        - cass-operator
        - DataStax Enterprise
        - Apache Cassandra
        - DSE
        - C*
        - Cassandra
        links:
        - name: DataStax
          url: https://datastax.com
        - name: Operator GitHub Repo
          url: https://github.com/k8ssandra/cass-operator
        - name: Config Builder GitHub Repo
          url: https://github.com/datastax/cass-config-builder
        - name: Documentation [1]
          url: https://github.com/k8ssandra/cass-operator/tree/master/docs/user
        - name: Documentation [2]
          url: https://docs.datastax.com/en/cass-operator/doc/cass-operator/cassOperatorTOC.html
        maintainers:
        - email: cass-operator@datastax.com
          name: DataStax Operator Team
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: DataStax
        relatedImages:
        - registry.connect.redhat.com/datastax/cass-operator@sha256:6abc6253b50a0d7f6bdd4b394d2bf96320a8845952aeb8f0bbed99863192ec52
        - registry.connect.redhat.com/datastax/system-logger@sha256:3408620786e6265aa835be56f85aadc48b20060b2038dc21126f614685f77c6b
        - registry.connect.redhat.com/datastax/cass-operator-bundle@sha256:8d130a5f2407931dbc73e45a53610b95ceb04cb507b8f6519f630cada1c0da45
        version: 1.23.2
      entries:
      - name: cass-operator.v1.23.2
        version: 1.23.2
      name: stable
    defaultChannel: stable
    packageName: cass-operator
    provider:
      name: DataStax
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NeuVector
      provider-url: ""
    name: neuvector-certified-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: neuvector-operator.v1.5.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apm.neuvector.com/v1alpha1",
                "kind": "Neuvector",
                "metadata": {
                  "name": "neuvector"
                },
                "spec": {
                  "openshift": true,
                  "tag": "5.4.8",
                  "oem": "",
                  "imagePullSecrets": "",
                  "psp": false,
                  "rbac": true,
                  "serviceAccount": "default",
                  "leastPrivilege": false,
                  "global": {
                    "cattle": {
                      "url": ""
                    }
                  },
                  "bootstrapPassword": "",
                  "autoGenerateCert": true,
                  "defaultValidityPeriod": 365,
                  "internal": {
                    "certmanager": {
                      "enabled": false,
                      "secretname": "neuvector-internal"
                    },
                    "autoGenerateCert": true,
                    "autoRotateCert": true
                  },
                  "controller": {
                    "enabled": true,
                    "annotations": {},
                    "strategy": {
                      "type": "RollingUpdate",
                      "rollingUpdate": {
                        "maxSurge": 1,
                        "maxUnavailable": 0
                      }
                    },
                    "image": "registry.connect.redhat.com/neuvector/controller@sha256:b33ab222ee7a4e81387d7e85739f32ab9999bebeef58a795c513a6db53297108",
                    "imagePullPolicy": "IfNotPresent",
                    "replicas": 3,
                    "disruptionbudget": 0,
                    "schedulerName": "",
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "searchRegistries": "",
                    "env": [],
                    "affinity": {
                      "podAntiAffinity": {
                        "preferredDuringSchedulingIgnoredDuringExecution": [
                          {
                            "weight": 100,
                            "podAffinityTerm": {
                              "labelSelector": {
                                "matchExpressions": [
                                  {
                                    "key": "app",
                                    "operator": "In",
                                    "values": [
                                      "neuvector-controller-pod"
                                    ]
                                  }
                                ]
                              },
                              "topologyKey": "kubernetes.io/hostname"
                            }
                          }
                        ]
                      }
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "nodeSelector": {},
                    "apisvc": {
                      "ctrlServerPort": 10443,
                      "type": "",
                      "annotations": {},
                      "nodePort": "",
                      "route": {
                        "enabled": false,
                        "termination": "passthrough",
                        "host": "",
                        "tls": ""
                      }
                    },
                    "ranchersso": {
                      "enabled": false
                    },
                    "pvc": {
                      "enabled": false,
                      "existingClaim": false,
                      "accessModes": [
                        "ReadWriteMany"
                      ],
                      "storageClass": "",
                      "capacity": ""
                    },
                    "azureFileShare": {
                      "enabled": false,
                      "secretName": "",
                      "shareName": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "federation": {
                      "mastersvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      },
                      "managedsvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      }
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {
                        "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                      },
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "configmap": {
                      "enabled": false,
                      "data": ""
                    },
                    "secret": {
                      "enabled": false,
                      "data": {
                        "userinitcfg.yaml": {
                          "users": [
                            {
                              "Fullname": "admin",
                              "Password": "",
                              "Role": "admin"
                            }
                          ]
                        }
                      }
                    },
                    "certupgrader": {
                      "env": [],
                      "schedule": "",
                      "imagePullPolicy": "IfNotPresent",
                      "timeout": 3600,
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "prime": {
                      "enabled": false,
                      "image": {
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "1.0.9"
                      }
                    }
                  },
                  "enforcer": {
                    "enabled": true,
                    "image": "registry.connect.redhat.com/neuvector/enforcer@sha256:0061096cc49e87bc590933ed0d39db16606395cc6b6d2a45eddaa4fde3b74618",
                    "imagePullPolicy": "IfNotPresent",
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "env": [],
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/master"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/control-plane"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/etcd"
                      }
                    ],
                    "resources": {},
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "manager": {
                    "enabled": true,
                    "image": "registry.connect.redhat.com/neuvector/manager@sha256:624a467c261bd4ee094bdeddfe38f4786ea168bb96daef14155aeed0eac67a04",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "",
                    "env": {
                      "ssl": true,
                      "envs": []
                    },
                    "svc": {
                      "mgrServerPort": 8443,
                      "type": "ClusterIP",
                      "nodePort": "",
                      "loadBalancerIP": "",
                      "annotations": {}
                    },
                    "route": {
                      "enabled": true,
                      "termination": "passthrough",
                      "host": "",
                      "tls": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {},
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "topologySpreadConstraints": [],
                    "affinity": {},
                    "podLabels": {},
                    "podAnnotations": {},
                    "tolerations": [],
                    "nodeSelector": {},
                    "runAsUser": "",
                    "probes": {
                      "enabled": false,
                      "timeout": 1,
                      "periodSeconds": 10,
                      "startupFailureThreshold": 30
                    }
                  },
                  "cve": {
                    "updater": {
                      "enabled": true,
                      "secure": false,
                      "cacert": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                      "image": "registry.access.redhat.com/ubi8",
                      "imagePullPolicy": "IfNotPresent",
                      "schedule": "0 0 * * *",
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "scanner": {
                      "enabled": true,
                      "replicas": 3,
                      "dockerPath": "",
                      "strategy": {
                        "type": "RollingUpdate",
                        "rollingUpdate": {
                          "maxSurge": 1,
                          "maxUnavailable": 0
                        }
                      },
                      "image": "registry.connect.redhat.com/neuvector/scanner@sha256:7b8dd38328db215a27a0266714f10c046df3a2b0d58a56e65ac2020dc4244440",
                      "imagePullPolicy": "Always",
                      "priorityClassName": "",
                      "resources": {},
                      "topologySpreadConstraints": [],
                      "affinity": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "env": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": "",
                      "internal": {
                        "certificate": {
                          "secret": "",
                          "keyFile": "tls.key",
                          "pemFile": "tls.crt",
                          "caFile": "ca.crt"
                        }
                      },
                      "volumes": "",
                      "volumeMounts": ""
                    }
                  },
                  "resources": {},
                  "runtimePath": "",
                  "docker": {
                    "enabled": false,
                    "path": "/var/run/docker.sock"
                  },
                  "k3s": {
                    "enabled": false,
                    "runtimePath": "/run/k3s/containerd/containerd.sock"
                  },
                  "bottlerocket": {
                    "enabled": false,
                    "runtimePath": "/run/dockershim.sock"
                  },
                  "containerd": {
                    "enabled": false,
                    "path": "/var/run/containerd/containerd.sock"
                  },
                  "crio": {
                    "enabled": true,
                    "path": "/var/run/crio/crio.sock"
                  },
                  "admissionwebhook": {
                    "type": "ClusterIP"
                  },
                  "crdwebhooksvc": {
                    "enabled": true
                  },
                  "crdwebhook": {
                    "enabled": true,
                    "type": "ClusterIP"
                  },
                  "lease": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Networking, Security
          certified: "true"
          containerImage: registry.connect.redhat.com/neuvector/neuvector-operator@sha256:1a4f8921501f68b021b6a11698f007db175da9d8e14c7925ae12e14eb276bae9
          createdAt: "2020-12-02 14:19:21"
          description: NeuVector delivers the only cloud-native Kubernetes security
            platform with uncompromising end-to-end protection from DevOps vulnerability
            protection to automated run-time security, and featuring a true Layer
            7 container firewall.
          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"
          repository: https://github.com/neuvector/neuvector-operator
          support: support@neuvector.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Full LifeCycle Container Security Platform
            displayName: Neuvector
            kind: Neuvector
            name: neuvectors.apm.neuvector.com
            version: v1alpha1
        description: |+
          NeuVector delivers the only cloud-native Kubernetes security platform with uncompromising end-to-end protection from DevOps vulnerability protection to automated run-time security, and featuring a true Layer 7 container firewall.

          The NeuVector Operator runs  in the openshift container platform to deploy and manage the NeuVector Security cluster components. The NeuVector operator contains all necessary information to deploy NeuVector using helm charts. You simply need to install the NeuVector operator from the OpenShift embeded operator hub and create NeuVector instance. You can modify the NeuVector installation configuration by modifying yaml while creating the NeuVector instance such as imagePullSecrets, tag version, etc. Please refer to [github link](https://github.com/neuvector/neuvector-helm/tree/master/charts/core) for the values that can be modifed during installation. To upgrade to a newer version of NeuVector, just reapply the NeuVector instance with desired tag , which in turn pulls the specified NeuVector image tags and upgrades as per upgrade plan configured on the helm chart.  NeuVector Operator versions are tied to NeuVector product versions. Version 1.5.4 of the NeuVector Certified Operator deploys version 5.4.8 of NeuVector.

          **Complete below steps to Grant Service Account Access to the Privileged SCC before installation.**

          Create the NeuVector namespace

                   oc new-project  neuvector
          Login as system:admin account

                   oc login -u system:admin

          Privileged SCC is added to Service Account specified in the deploment yaml by Operator version 1.3.6 and above in new deployment. In case of upgrading NeuVector Operator from previous version to 1.3.6, please delete Privileged SCC before upgrading.

                   oc delete rolebinding -nneuvector system:openshift:scc:privileged

          The following info will be added in the Privileged SCC users:

                   - system:serviceaccount:neuvector:default

          In OpenShift 4.6+ use the following to check:

                   oc get rolebinding system:openshift:scc:privileged -n neuvector -o wide
                   system:openshift:scc:privileged   ClusterRole/system:openshift:scc:privileged   9m22s                    neuvector/default


          #Deploying the NeuVector Operator#


          Please refer to the instructions [here](https://github.com/neuvector/neuvector-operator/blob/master/README.md)


        displayName: NeuVector Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Monitoring
        - Networking
        - Security
        links:
        - name: NeuVector Operator
          url: https://github.com/neuvector/neuvector-operator
        maintainers:
        - email: support@neuvector.com
          name: A Full LifeCycle Container Security Platform
        maturity: beta
        provider:
          name: NeuVector
        relatedImages:
        - registry.connect.redhat.com/neuvector/controller@sha256:b33ab222ee7a4e81387d7e85739f32ab9999bebeef58a795c513a6db53297108
        - registry.connect.redhat.com/neuvector/enforcer@sha256:0061096cc49e87bc590933ed0d39db16606395cc6b6d2a45eddaa4fde3b74618
        - registry.connect.redhat.com/neuvector/manager@sha256:624a467c261bd4ee094bdeddfe38f4786ea168bb96daef14155aeed0eac67a04
        - registry.connect.redhat.com/neuvector/neuvector-operator-bundle@sha256:b27397b79fd28f2da9d7f20b5b004dfb3e1a995de092a8a755e5099fb87407cb
        - registry.connect.redhat.com/neuvector/neuvector-operator@sha256:1a4f8921501f68b021b6a11698f007db175da9d8e14c7925ae12e14eb276bae9
        - registry.connect.redhat.com/neuvector/scanner@sha256:7b8dd38328db215a27a0266714f10c046df3a2b0d58a56e65ac2020dc4244440
        - registry.access.redhat.com/ubi8@sha256:a444712276a635c9312d83a4ff7c6ee7f2ce08eeb5bd9ca291b5fdba257a5e63
        version: 1.5.4
      entries:
      - name: neuvector-operator.v1.5.4
        version: 1.5.4
      - name: neuvector-operator.v1.5.3
        version: 1.5.3
      - name: neuvector-operator.v1.5.2
        version: 1.5.2
      - name: neuvector-operator.v1.5.1
        version: 1.5.1
      - name: neuvector-operator.v1.5.0
        version: 1.5.0
      - name: neuvector-operator.v1.4.9
        version: 1.4.9
      - name: neuvector-operator.v1.4.8
        version: 1.4.8
      - name: neuvector-operator.v1.4.7
        version: 1.4.7
      - name: neuvector-operator.v1.4.6
        version: 1.4.6
      - name: neuvector-operator.v1.4.5
        version: 1.4.5
      - name: neuvector-operator.v1.4.4
        version: 1.4.4
      - name: neuvector-operator.v1.4.3
        version: 1.4.3
      - name: neuvector-operator.v1.4.2
        version: 1.4.2
      - name: neuvector-operator.v1.4.1
        version: 1.4.1
      - name: neuvector-operator.v1.4.0
        version: 1.4.0
      - name: neuvector-operator.v1.3.9
        version: 1.3.9
      - name: neuvector-operator.v1.3.8
        version: 1.3.8
      - name: neuvector-operator.v1.3.7
        version: 1.3.7
      - name: neuvector-operator.v1.3.6
        version: 1.3.6
      - name: neuvector-operator.v1.3.5
        version: 1.3.5
      - name: neuvector-operator.v1.3.4
        version: 1.3.4
      - name: neuvector-operator.v1.3.3
        version: 1.3.3
      - name: neuvector-operator.v1.3.2
        version: 1.3.2
      - name: neuvector-operator.v1.3.1
        version: 1.3.1
      - name: neuvector-operator.v1.3.0
        version: 1.3.0
      - name: neuvector-operator.v1.2.9
        version: 1.2.9
      name: beta
    defaultChannel: beta
    packageName: neuvector-certified-operator
    provider:
      name: NeuVector
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Aqua Security, Inc.
      provider-url: ""
    name: aqua
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aqua-operator.v2022.4.18
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaCsp",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "namespace": "aqua",
                    "version": "2022.4",
                    "requirements": true
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry",
                    "dbDiskSize": 10,
                    "databaseSecret": {
                      "key": "db-password",
                      "name": "aqua-database-password"
                    }
                  },
                  "database": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "database",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "gateway": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "gateway",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "server": {
                    "replicas": 1,
                    "service": "LoadBalancer",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "console",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "route": true,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaDatabase",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry",
                    "splitDB": false
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "database",
                      "tag": "<<IMAGE TAG>>"
                    }
                  },
                  "diskSize": 10,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry"
                  },
                  "deploy": {
                    "image": {
                      "repository": "enforcer",
                      "registry": "registry.aquasec.com",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "IfNotPresent"
                    }
                  },
                  "runAsNonRoot": false,
                  "gateway": {
                    "host": "aqua-gateway",
                    "port": 8443
                  },
                  "token": "<<your-token>>"
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaKubeEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "version": "2022.4",
                    "serviceAccount": "aqua-kube-enforcer-sa"
                  },
                  "config": {
                    "gateway_address": "aqua-gateway.aqua:8443",
                    "cluster_name": "aqua-secure",
                    "imagePullSecret": "aqua-registry",
                    "kubebench_image": "docker.io/aquasec/kube-bench:v0.7.1"
                  },
                  "deploy": {
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "tag": "<<KUBE_ENFORCER_TAG>>",
                      "repository": "kube-enforcer",
                      "pullPolicy": "Always"
                    }
                  },
                  "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>",
                  "starboard": {
                    "infra": {
                      "serviceAccount": "starboard-operator"
                    },
                    "config": {
                      "imagePullSecret": "starboard-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    }
                  }
                }
              },
              {
              "apiVersion": "operator.aquasec.com/v1alpha1",
              "kind": "AquaLightning",
              "metadata": {
                "name": "aqua"
              },
              "spec": {
                "global": {
                  "gateway_address": "aqua-gateway.aqua:8443",
                  "cluster_name": "Default-cluster-name"
                },
                "common": {
                  "imagePullSecret": "aqua-registry"
                },
                "kubeEnforcer": {
                  "infra": {
                    "version": "2022.4",
                    "serviceAccount": "aqua-kube-enforcer-sa"
                  },
                  "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>",
                  "allowAnyVersion": null,
                  "deploy": {
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "tag": "2022.4",
                      "repository": "kube-enforcer",
                      "pullPolicy": "Always"
                    }
                  },
                  "starboard": {
                    "infra": {
                      "serviceAccount": "starboard-operator"
                    },
                    "config": {
                      "imagePullSecret": "starboard-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    }
                  },
                  "env": []
                },
                "enforcer": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "deploy": {
                    "image": {
                      "repository": "enforcer",
                      "registry": "registry.aquasec.com",
                      "tag": "2022.4",
                      "pullPolicy": "IfNotPresent"
                    }
                  },
                  "token": "<<ENFORCER_GROUP_TOKEN>>",
                  "env": [],
                  "secret": {
                    "name": null,
                    "key": null
                  },
                  "runAsNonRoot": null,
                  "rhcosVersion": null
                }
              }
            },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaGateway",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "imagePullSecret": "aqua-registry",
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "gateway",
                      "tag": "<<IMAGE TAG>>"
                    }
                  },
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaScanner",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry"
                  },
                  "deploy": {
                    "replicas": 1,
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "scanner",
                      "tag": "<<IMAGE TAG>>"
                    }
                  },
                  "runAsNonRoot": false,
                  "login": {
                    "username": "<<YOUR AQUA USER NAME>>",
                    "password": "<<YOUR AQUA USER PASSWORD>>",
                    "host": "http://aqua-server:8080",
                    "token": ""
                  }
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaServer",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "imagePullSecret": "aqua-registry",
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "LoadBalancer",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "console",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "runAsNonRoot": false
                }
              },
              {
                  "apiVersion": "operator.aquasec.com/v1alpha1",
                  "kind": "AquaCloudConnector",
                  "metadata": {
                    "name": "aqua"
                  },
                  "spec": {
                    "infra": {
                      "serviceAccount": "aqua-sa",
                      "version": "2022.4"
                    },
                    "common": {
                      "imagePullSecret": "aqua-registry"
                    },
                    "deploy": {
                      "image": {
                        "repository": "aqua-cloud-connector",
                        "registry": "registry.aquasec.com",
                        "tag": "<<IMAGE TAG>>"
                      },
                      "replicas": 1
                    },
                    "runAsNonRoot": false,
                    "gateway": {
                      "host": "aqua-gateway",
                      "port": "8443"
                    },
                    "login": {
                      "host": "aqua-gateway:8443",
                      "password": "<<YOUR AQUA USER PASSWORD>>",
                      "token": "<<YOUR AQUA CLOUD CONNECTOR TOKEN>>",
                      "username": "<<YOUR AQUA USER NAME>>"
                    },
                    "tunnels": [
                      {
                        "host": "<account>.azurecr.io",
                        "port": "443"
                      },
                      {
                        "host": "gke.gcr.io",
                        "port": "443"
                      },
                      {
                        "host": "<account>.jfrog.io",
                        "port": "443"
                      },
                      {
                        "host": "1.1.1.1",
                        "port": "443"
                      },
                      {
                        "region": "us-east1",
                        "type": "ecr"
                      }
                    ]
                  }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: docker.io/aquasec/aqua-operator:2022.4.18
          createdAt: "2020-03-25T08:00:00Z"
          description: The Aqua Security Operator runs within a Openshift cluster
            and provides a means to deploy and manage Aqua Security cluster and components.
          operators.operatorframework.io/internal-objects: '["aquastarboards.aquasecurity.github.io","configauditreports.aquasecurity.github.io",
            "clusterconfigauditreports.aquasecurity.github.io"]'
          repository: https://github.com/aquasecurity/aqua-operator
          support: Aqua Security, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Aqua Security CSP Deployment with Aqua Operator
            displayName: AquaCsp
            kind: AquaCsp
            name: aquacsps.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Lightning Enforcers Deployment with Aqua Operator
            displayName: AquaLightningEnforcers
            kind: AquaLightning
            name: aqualightnings.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Database Deployment with Aqua Operator
            displayName: AquaDatabase
            kind: AquaDatabase
            name: aquadatabases.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Enforcer Deployment with Aqua Operator
            displayName: AquaEnforcer
            kind: AquaEnforcer
            name: aquaenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security KubeEnforcer Deployment with Aqua Operator
            displayName: AquaKubeEnforcer
            kind: AquaKubeEnforcer
            name: aquakubeenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Gateway Deployment with Aqua Operator
            displayName: AquaGateway
            kind: AquaGateway
            name: aquagateways.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Scanner Deployment with Aqua Operator
            displayName: AquaScanner
            kind: AquaScanner
            name: aquascanners.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Server Deployment with Aqua Operator
            displayName: AquaServer
            kind: AquaServer
            name: aquaservers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Starboard for kube-enforcer.
            displayName: AquaStarboard
            kind: AquaStarboard
            name: aquastarboards.aquasecurity.github.io
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ClusterConfigAuditReport
            kind: ClusterConfigAuditReport
            name: clusterconfigauditreports.aquasecurity.github.io
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ConfigAuditReport
            kind: ConfigAuditReport
            name: configauditreports.aquasecurity.github.io
            version: v1alpha1
          - description: Aqua Security Cloud Connector Deployment with Aqua Operator
            displayName: AquaCloudConnector
            kind: AquaCloudConnector
            name: aquacloudconnector.operator.aquasec.com
            version: v1alpha1
        description: |-
          The Aqua Security Operator runs within an OpenShift cluster and provides a means to deploy and manage the Aqua Security cluster and components :
          * Server (aka “console”)
          * Database (for production environments we recommend to use an external database and not the Aqua default database)
          * Gateway
          * Enforcer (aka “agent”)
          * KubeEnforcer
          * Scanner
          * CSP (package that contains the Server, Database, and Gateway)
          * LightningEnforcer (package that contains Enforcer and Kube Enforcer)

          Use the Aqua-Operator to
          * Deploy Aqua Security components on OpenShift
          * Scale up Aqua Security components with extra replicas
          * Assign metadata tags to Aqua Security components

          ## Before You Begin Using the Operator CRDs

          Obtain access to the Aqua registry - https://www.aquasec.com/about-us/contact-us/


          ## Instructions and exmaples

          Follow instructions and exmaples
          [here](https://github.com/aquasecurity/aqua-operator/blob/2022.4.0/docs/DeployOpenShiftOperator.md)
        displayName: Aqua Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - aqua-security
        - scanning
        - security
        - runtime-security
        links:
        - name: Aqua Security
          url: https://www.aquasec.com/
        - name: Aqua Operator Github
          url: https://github.com/aquasecurity/aqua-operator
        maintainers:
        - email: support@aquasec.com
          name: Aqua Support, Aqua Security
        maturity: alpha
        provider:
          name: Aqua Security, Inc.
        relatedImages:
        - docker.io/aquasec/aqua-operator:2022.4.18
        - quay.io/community-operator-pipeline-prod/aqua@sha256:ca2b998fb0fa4e80d6f4c3be57041e8e55e43cf0b5f1fee579733fda9ea6a107
        version: 2022.4.18
      entries:
      - name: aqua-operator.v2022.4.18
        version: 2022.4.18
      - name: aqua-operator.v2022.4.17
        version: 2022.4.17
      name: 2022.4.0
    defaultChannel: 2022.4.0
    packageName: aqua
    provider:
      name: Aqua Security, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Syndesis Team
      provider-url: https://github.com/syndesisio/syndesis
    name: syndesis
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: syndesis.v1.12.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta2",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.12
          createdAt: "2021-08-11T12:00:00Z"
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta2
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - quay.io/openshift-community-operators/syndesis@sha256:9e8c08793aebc8857dcd451fa2fde2b3f05b9ff4f3d3cc604f9f752193f58d42
        - quay.io/syndesis/syndesis-operator:1.12
        - centos/postgresql-10-centos7
        version: 1.12.0
      entries:
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: 1.12.x
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - quay.io/syndesis/syndesis-operator:1.13
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: 1.13.x
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        - quay.io/syndesis/syndesis-operator:1.13
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: candidate
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        - quay.io/syndesis/syndesis-operator:1.13
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: latest
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - quay.io/syndesis/syndesis-operator:1.13
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: stable
    defaultChannel: latest
    packageName: syndesis
    provider:
      name: Syndesis Team
      url: https://github.com/syndesisio/syndesis
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      odf.openshift.io/odf-operator: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-console"]'
          containerImage: registry.redhat.io/odf4/odf-rhel9-operator@sha256:0168326fc968fb1be91a5aba0df0117aec7f94b81560e0bd4480609207285265
          createdAt: "2025-12-18T08:00:14Z"
          description: OpenShift Data Foundation provides a common control plane for
            storage solutions on OpenShift Container Platform.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          olm.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/initialization-link: /odf/resource/odf.openshift.io~v1alpha1~StorageSystem/create/~new
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/odf-operator
          support: Red Hat
          vendors.odf.openshift.io/kind: '["storagecluster.ocs.openshift.io/v1", "flashsystemcluster.odf.ibm.com/v1alpha1"]'
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          **Red Hat OpenShift Data Foundation** deploys three operators.

          ### OpenShift Data Foundation
          The OpenShift Data Foundation operator is the primary operator for
          OpenShift Data Foundation. It serves to facilitate the other operators in
          OpenShift Data Foundation by performing administrative tasks outside their
          scope as well as watching and configuring their CustomResources.

          ### Rook
          [Rook][1] deploys and manages Ceph on OpenShift, which provides block,
          file and object storage.

          ### NooBaa operator
          The NooBaa operator deploys and manages the [NooBaa][2] Multi-Cloud Gateway
          on OpenShift, which provides object storage.

          # Core Capabilities
          * **Self-managing service:** No matter which supported storage technologies
          you choose, OpenShift Data Foundation ensures that resources can be
          deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Data Foundation you
          can either build dedicated storage clusters or hyper-converged clusters
          where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Data Foundation:**
          OpenShift Data Foundation integrates Ceph with multiple storage
          presentations including object storage (compatible with S3), block storage,
          and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Data Foundation efficiently
          distributes and replicates your data across your cluster to minimize the
          risk of data loss. With snapshots, cloning, and versioning, no more losing
          sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your
          datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data
          storage for your workloads, using a single namespace.

          # Subscriptions
          OpenShift Data Foundation requires a matching 1:1 ratio with the OpenShift
          subscription used. The Essential subscription is included in the OpenShift
          Platform Plus subscription. Disaster Recovery features, external mode, and
          KMS integration for encryption at rest require a bundle of OpenShift
          Platform Plus with OpenShift Data Foundation Advanced subscription.

          [1]: https://rook.io
          [2]: https://www.noobaa.io
        displayName: OpenShift Data Foundation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-operator-bundle@sha256:692c8c98f5c9d20cdfb2257f36a42ac6407ad122211001c3b539e33644bb7a6b
        - registry.redhat.io/odf4/odf-console-rhel9@sha256:871051f3724f5b783182b1de33350a3902db87eaee486390e3b7cfb64d3057d4
        - registry.redhat.io/odf4/odf-rhel9-operator@sha256:0168326fc968fb1be91a5aba0df0117aec7f94b81560e0bd4480609207285265
        version: 4.19.9-rhodf
      entries:
      - name: odf-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-console"]'
          containerImage: registry.redhat.io/odf4/odf-rhel9-operator@sha256:a6c75f7d1fefdb84653e4bdd29fc7ebe07f819e6cf0bf39ea8d3422dafb786bf
          createdAt: "2025-12-18T07:48:25Z"
          description: OpenShift Data Foundation provides a common control plane for
            storage solutions on OpenShift Container Platform.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/initialization-link: /odf/resource/odf.openshift.io~v1alpha1~StorageSystem/create/~new
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/odf-operator
          support: Red Hat
          vendors.odf.openshift.io/kind: '["storagecluster.ocs.openshift.io/v1", "flashsystemcluster.odf.ibm.com/v1alpha1"]'
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          **Red Hat OpenShift Data Foundation** deploys three operators.

          ### OpenShift Data Foundation
          The OpenShift Data Foundation operator is the primary operator for
          OpenShift Data Foundation. It serves to facilitate the other operators in
          OpenShift Data Foundation by performing administrative tasks outside their
          scope as well as watching and configuring their CustomResources.

          ### Rook
          [Rook][1] deploys and manages Ceph on OpenShift, which provides block,
          file and object storage.

          ### NooBaa operator
          The NooBaa operator deploys and manages the [NooBaa][2] Multi-Cloud Gateway
          on OpenShift, which provides object storage.

          # Core Capabilities
          * **Self-managing service:** No matter which supported storage technologies
          you choose, OpenShift Data Foundation ensures that resources can be
          deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Data Foundation you
          can either build dedicated storage clusters or hyper-converged clusters
          where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Data Foundation:**
          OpenShift Data Foundation integrates Ceph with multiple storage
          presentations including object storage (compatible with S3), block storage,
          and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Data Foundation efficiently
          distributes and replicates your data across your cluster to minimize the
          risk of data loss. With snapshots, cloning, and versioning, no more losing
          sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your
          datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data
          storage for your workloads, using a single namespace.

          # Subscriptions
          OpenShift Data Foundation requires a matching 1:1 ratio with the OpenShift
          subscription used. The Essential subscription is included in the OpenShift
          Platform Plus subscription. Disaster Recovery features, external mode, and
          KMS integration for encryption at rest require a bundle of OpenShift
          Platform Plus with OpenShift Data Foundation Advanced subscription.

          [1]: https://rook.io
          [2]: https://www.noobaa.io
        displayName: OpenShift Data Foundation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-rhel9-operator@sha256:a6c75f7d1fefdb84653e4bdd29fc7ebe07f819e6cf0bf39ea8d3422dafb786bf
        - registry.redhat.io/odf4/odf-operator-bundle@sha256:fd9c08f0a1455f7c20f3ef00983bd2cee495f6fbca7e30e3aac52512d71abe42
        - registry.redhat.io/odf4/odf-console-rhel9@sha256:a4255931341242cacf44202192e8f69805cf359282b1753beb7933ef3b088dd4
        version: 4.20.4-rhodf
      entries:
      - name: odf-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: node-observability-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-observability-operator.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha1",
                "kind": "NodeObservability",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "labels": {
                    "kubernetes.io/hostname": "worker-a"
                  },
                  "type": "crio-kubelet"
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha1",
                "kind": "NodeObservabilityMachineConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "debug": {
                    "enableCrioProfiling": true
                  }
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha1",
                "kind": "NodeObservabilityRun",
                "metadata": {
                  "name": "nodeobservabilityrun-sample",
                  "namespace": "node-observability-operator"
                },
                "spec": {
                  "nodeObservabilityRef": {
                    "name": "cluster"
                  }
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha2",
                "kind": "NodeObservability",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "nodeSelector": {
                    "kubernetes.io/hostname": "worker-a"
                  },
                  "type": "crio-kubelet"
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha2",
                "kind": "NodeObservabilityMachineConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "debug": {
                    "enableCrioProfiling": true
                  },
                  "nodeSelector": {
                    "kubernetes.io/hostname": "worker-a"
                  }
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha2",
                "kind": "NodeObservabilityRun",
                "metadata": {
                  "name": "nodeobservabilityrun-sample",
                  "namespace": "node-observability-operator"
                },
                "spec": {
                  "nodeObservabilityRef": {
                    "name": "cluster"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/noo/node-observability-rhel8-operator@sha256:53ba77f648154ac8aca1ae6c83815078dfde211dba1e42f597e69844e4954c01
          createdAt: 2022-12-05T09:25:09
          olm.skipRange: <0.2.0
          operatorframework.io/suggested-namespace: node-observability-operator
          operators.operatorframework.io/builder: operator-sdk-v1.18.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeObservability prepares a subset of worker nodes (identified
              by a label) for running node observability queries, such as profiling
            displayName: Node Observability
            kind: NodeObservability
            name: nodeobservabilities.nodeobservability.olm.openshift.io
            version: v1alpha1
          - description: NodeObservability prepares a subset of worker nodes (identified
              by a label) for running node observability queries, such as profiling
            displayName: Node Observability
            kind: NodeObservability
            name: nodeobservabilities.nodeobservability.olm.openshift.io
            version: v1alpha2
          - description: NodeObservabilityMachineConfig is the Schema for the nodeobservabilitymachineconfigs
              API
            displayName: Node Observability Machine Config
            kind: NodeObservabilityMachineConfig
            name: nodeobservabilitymachineconfigs.nodeobservability.olm.openshift.io
            version: v1alpha1
          - description: NodeObservabilityMachineConfig is the Schema for the nodeobservabilitymachineconfigs
              API
            displayName: Node Observability Machine Config
            kind: NodeObservabilityMachineConfig
            name: nodeobservabilitymachineconfigs.nodeobservability.olm.openshift.io
            version: v1alpha2
          - description: NodeObservabilityRun is a request to run observability actions
              on the nodes previously selected in NodeObservability resource
            displayName: Node Observability Run
            kind: NodeObservabilityRun
            name: nodeobservabilityruns.nodeobservability.olm.openshift.io
            version: v1alpha1
          - description: NodeObservabilityRun is a request to run observability actions
              on the nodes previously selected in NodeObservability resource
            displayName: Node Observability Run
            kind: NodeObservabilityRun
            name: nodeobservabilityruns.nodeobservability.olm.openshift.io
            version: v1alpha2
        description: |-
          An Operator that will be able to gather debugging/profiling data over
          a custom period of time which would be helpful to troubleshoot and resolve issues
          for OpenShift customers.
        displayName: Node Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - node-observability-operator
        links:
        - name: Source Code
          url: https://github.com/openshift/node-observability-operator
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/noo/node-observability-operator-bundle-rhel8@sha256:0fbbb0b32adadc5746251103d25bba6bd365b2ff60e289e4694061fc92c3ce6e
        - registry.redhat.io/noo/node-observability-rhel8-operator@sha256:53ba77f648154ac8aca1ae6c83815078dfde211dba1e42f597e69844e4954c01
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e3dad360d0351237a16593ca0862652809c41a2127c2f98b9e0a559568efbd10
        - registry.redhat.io/noo/node-observability-agent-rhel8@sha256:a8e60d9f63e2ed0cf1e27309aac54014e3f1efc947b51ca0a99376338d220875
        version: 0.2.0
      entries:
      - name: node-observability-operator.v0.2.0
        version: 0.2.0
      name: alpha
    defaultChannel: alpha
    packageName: node-observability-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Accuknox
      provider-url: https://accuknox.com
    name: kubearmor-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubearmor-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Security
          com.redhat.openshift.versions: v4.12
          createdAt: "2023-05-01T05:17:07Z"
          description: The KubeArmor Operator deloys and manages KubeArmor daemonset
            and its componenets within a cluster.
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.28.0+git
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/kubearmor/KubeArmor
          support: Accuknox
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          The KubeArmor Operator deploys and manages KubeArmor and its components:
          - KubeArmor Daemonset
          - KubeArmor Relay Server
          - KubeArmor Controller to manage CRDs (KubeArmorPolicy, KubeArmorHostPolicy)

          KubeArmor is a cloud-native runtime security enforcement system that restricts the behavior (such as process
          execution, file access, and networking operations) of pods, containers, and nodes (VMs) at the system level.

          KubeArmor leverages Linux security modules (LSMs) such as AppArmor, SELinux, or BPF-LSM to enforce the user-specified policies. KubeArmor generates rich alerts/telemetry events with container/pod/namespace identities by leveraging eBPF.

          ## Documentation

          github: [https://github.com/kubearmor/KubeArmor](https://github.com/kubearmor/KubeArmor)
          website: [https://kubearmor.io/](https://kubearmor.io/)
        displayName: Kubearmor Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubearmor-operator
        - runtime-security
        - security
        - cloud-native
        links:
        - name: Kubearmor
          url: https://kubearmor.io
        maintainers:
        - email: ramakant@accuknox.com
          name: Ramakant Sharma
        maturity: alpha
        provider:
          name: Accuknox
          url: https://www.accuknox.com/
        relatedImages:
        - docker.io/kubearmor/kubearmor-operator@sha256:8c2d56781a2adf78ee58f956e01417f38b6ad2f319feada6470e93f4f9bf0808
        - docker.io/kubearmor/kubearmor-relay-server@sha256:695f9ade3382bcf858077e2a7b9b01e0713071517603778d72f7aca5a6d71323
        - docker.io/kubearmor/kubearmor@sha256:52f7049ecdbfa779663d2cd44ddd7f36aecd8ccd2ca91e69709b628600029f13
        - registry.connect.redhat.com/kubearmor/kubearmor-operator@sha256:411a47151609b7da29974ef3ae3b04f1bb1526f4328fd3e1d9b0165380018049
        - docker.io/kubearmor/kubearmor-controller@sha256:ccec0fb8bb1e91bd48631cc89baf752b842f19c33b50edab08f8b33e57af64d4
        - docker.io/kubearmor/kubearmor-init@sha256:44fa534587972c5f85e3e6f362dd8268e9088a33c5657a21b72a7e8563164fb5
        version: 1.0.0
      entries:
      - name: kubearmor-operator.v1.0.0
        version: 1.0.0
      name: alpha
    - currentCSV: kubearmor-operator.v1.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.kubearmor.com/v1",
                "kind": "KubeArmorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "kubearmorconfig",
                    "app.kubernetes.io/part-of": "kubearmoroperator"
                  },
                    "name": "kubearmorconfig-default",
                    "namespace": "placeholder"
                },
                "spec": {
                  "adapters": {
                    "elasticsearch": {
                      "url": "",
                      "enabled": false,
                      "auth": {
                        "secretName": "elastic-secret",
                        "usernameKey": "username",
                        "passwordKey": "password",
                        "allowInsecureTLS": false,
                        "caCertSecretName": "",
                        "caCertKey": "ca.crt"
                      },
                      "alertsIndex": "kubearmor-alerts"
                    }
                  },
                  "recommendedPolicies": {
                      "enable": true,
                      "matchExpressions": [
                          {
                              "key": "namespace",
                              "operator": "NotIn",
                              "values": [
                                  "kube-system",
                                  "kubearmor",
                                  "openshift-infra",
                                  "openshift-ingress",
                                  "openshift-ingress-canary",
                                  "openshift-ingress-operator",
                                  "openshift-insights",
                                  "openshift-kni-infra",
                                  "openshift-kube-apiserver",
                                  "openshift-kube-apiserver-operator",
                                  "openshift-kube-controller-manager",
                                  "openshift-kube-controller-manager-operator",
                                  "openshift-kube-scheduler",
                                  "openshift-kube-scheduler-operator",
                                  "openshift-kube-storage-version-migrator",
                                  "openshift-kube-storage-version-migrator-operator",
                                  "openshift-logging",
                                  "openshift-machine-api",
                                  "openshift-machine-config-operator",
                                  "openshift-managed-node-metadata-operator",
                                  "openshift-managed-upgrade-operator",
                                  "openshift-marketplace",
                                  "openshift-monitoring",
                                  "openshift-multus",
                                  "openshift-must-gather-operator",
                                  "openshift-network-diagnostics",
                                  "openshift-network-node-identity",
                                  "openshift-network-operator",
                                  "openshift-node",
                                  "openshift-nutanix-infra",
                                  "openshift-oauth-apiserver",
                                  "openshift-observability-operator",
                                  "openshift-ocm-agent-operator",
                                  "openshift-openstack-infra",
                                  "openshift-operator-lifecycle-manager",
                                  "openshift-operators",
                                  "openshift-operators-redhat",
                                  "openshift-osd-metrics",
                                  "openshift-ovirt-infra",
                                  "openshift-ovn-kubernetes",
                                  "openshift-package-operator",
                                  "openshift-rbac-permissions",
                                  "openshift-route-controller-manager",
                                  "openshift-route-monitor-operator",
                                  "openshift-security",
                                  "openshift-service-ca",
                                  "openshift-service-ca-operator",
                                  "openshift-splunk-forwarder-operator",
                                  "openshift-sre-pruning",
                                  "openshift-user-workload-monitoring",
                                  "openshift-validation-webhook",
                                  "openshift-velero",
                                  "openshift-vsphere-infra",
                                  "openshift",
                                  "openshift-addon-operator",
                                  "openshift-apiserver",
                                  "openshift-apiserver-operator",
                                  "openshift-aqua",
                                  "openshift-authentication",
                                  "openshift-authentication-operator",
                                  "openshift-backplane",
                                  "openshift-backplane-cee",
                                  "openshift-backplane-csa",
                                  "openshift-backplane-cse",
                                  "openshift-backplane-csm",
                                  "openshift-backplane-managed-scripts",
                                  "openshift-backplane-mcs-tier-two",
                                  "openshift-backplane-mobb",
                                  "openshift-backplane-srep",
                                  "openshift-backplane-tam",
                                  "openshift-cloud-controller-manager",
                                  "openshift-cloud-controller-manager-operator",
                                  "openshift-cloud-credential-operator",
                                  "openshift-cloud-ingress-operator",
                                  "openshift-cloud-network-config-controller",
                                  "openshift-cloud-platform-infra",
                                  "openshift-cluster-csi-drivers",
                                  "openshift-cluster-machine-approver",
                                  "openshift-cluster-node-tuning-operator",
                                  "openshift-cluster-samples-operator",
                                  "openshift-cluster-storage-operator",
                                  "openshift-cluster-version",
                                  "openshift-codeready-workspaces",
                                  "openshift-config",
                                  "openshift-config-managed",
                                  "openshift-config-operator",
                                  "openshift-console",
                                  "openshift-console-operator",
                                  "openshift-console-user-settings",
                                  "openshift-controller-manager",
                                  "openshift-controller-manager-operator",
                                  "openshift-custom-domains-operator",
                                  "openshift-customer-monitoring",
                                  "openshift-deployment-validation-operator",
                                  "openshift-dns",
                                  "openshift-dns-operator",
                                  "openshift-etcd",
                                  "openshift-etcd-operator",
                                  "openshift-host-network",
                                  "openshift-image-registry"
                              ]
                          }
                      ]
                  },
                  "defaultCapabilitiesPosture": "audit",
                  "defaultFilePosture": "audit",
                  "defaultNetworkPosture": "audit",
                  "defaultVisibility": "process,network",
                  "enableStdOutLogs": false,
                  "enableStdOutAlerts": false,
                  "enableStdOutMsgs": false,
                  "seccompEnabled": false
                }
              }
            ]
          alm-examples-metadata: '{"kubearmorconfig-default":{"description":"Default
            KubeArmorConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Security, Monitoring
          certified: "true"
          com.redhat.openshift.versions: v4.9
          containerImage: docker.io/kubearmor/kubearmor-operator@sha256:d6c6b16e636474568835ded97cecb5ed17bc6004501227f6b6d63522ed57b01c
          createdAt: "2024-03-20T17:43:15Z"
          description: KubeArmor Operator
          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"
          operatorframework.io/suggested-namespace: kubearmor
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kubearmor/KubeArmor/blob/main/pkg/KubeArmorOperator/
          support: Accuknox
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubeArmorConfig is the Schema for the kubearmorconfigs API
            kind: KubeArmorConfig
            name: kubearmorconfigs.operator.kubearmor.com
            version: v1
        description: |2-

          ## Prerequisites

          1. Create a new project for KubeArmor (Recommended)

             ```
             oc new-project kubearmor
             ```

           2. Create [KubeArmor SCC](https://github.com/kubearmor/KubeArmor/blob/main/pkg/KubeArmorOperator/config/rbac/kubearmor-scc.yaml)

             ```
             oc create -f https://raw.githubusercontent.com/kubearmor/KubeArmor/main/pkg/KubeArmorOperator/config/rbac/kubearmor-scc.yaml
             ```

             Note: please change the serviceaccount namespace if you are using some other namespace than the kubearmor.

          KubeArmor is a cloud-native runtime security enforcement system that restricts the behavior
          (such as process execution, file access, and networking operations) of pods, containers,
          and nodes (VMs) at the system level.
          KubeArmor leverages Linux security modules (LSMs) such as AppArmor, SELinux, or BPF-LSM to enforce the
          user-specified policies. KubeArmor generates rich alerts/telemetry events with container/pod/namespace
          identities by leveraging eBPF.

          ## Features and Benefits

          ### Harden Infrastructure

          safeguards vital paths like certificate bundles, enforces security rules based on MITRE, STIGs, and CIS guidelines,
          and restricts access to raw database tables, enhancing overall cluster security.

          ### Least Permissive Access

          controls sensitive asset access through process and network whitelisting,
          reducing security risks and maintaining system integrity.

          ### Application Behavior

          in-depth monitoring of process executions, file system access, service bindings,
          ingress and egress connections, and sensitive system call profiling

          ## Documentation

          github: [https://github.com/kubearmor/KubeArmor](https://github.com/kubearmor/KubeArmor)

          website: [https://kubearmor.io/](https://kubearmor.io/)

          ## Installing the KubeArmor Operator

          The KubeArmor Operator, available through Red Hat's Operator catalog, offers stable update channel.
          **Stable Channel**: This channel provides the latest stable version of KubeArmor along with its patches.

          The KubeArmor operator is responsible for deploying various components of the KubeArmor application, including the KubeArmor
          Daemonset, KubeArmor Controller, KubeArmor Relay Server, and KubeArmor Snitch. The role of KubeArmor Snitch is to gather information
          about the enabled Linux security modules on the host, which is utilized by KubeArmor to enforce runtime security policies.
          Additionally, KubeArmor Snitch collects details about the container runtime socket and storage volume cluster configurations.
          This deployment is executed as a short-term job and necessitates root user privileges. KubeArmor Snitch is certified by RedHat
          as a container with root privileges.

          KubeArmor Operator comes with a custom resource:

          - **KubeArmorConfig** - User will provide the initial configurations of the KubeArmor using KubeArmorConfig CR.

          ### KubeArmorConfig Customization Options:

          | Parameter                                 | Description                                          | Default                                 |
          | ---                                       | ---                                                  | ---                                     |
          | `alertThrottling`                         | Enable throttling for the KubeArmor generated alerts | False                                   |
          | `defaultFilePosture`                      | Default file posture for KubeArmor                   | audit                                   |
          | `defaultNetworkPosture`                   | Default network posture for KubeArmor                | audit                                   |
          | `defaultCapabilitiesPosture`              | Default capabilities posture for KubeArmor           | audit                                   |
          | `defaultVisibility`                       | Default visibility for KubeArmor                     | process,file,network                    |
          | `enableStdOutLogs` |  show stdout logs for relay server | false |
          | `enableStdOutAlerts` |  show stdout alerts for relay server | false |
          | `enableStdOutMsgs` |  show stdout messages for relay server | false |
          | `kubearmorImage.image`                    | Default image for KubeArmor Daemonset                | kubearmor/kubearmor-ubi:stable          |
          | `kubearmorImage.imagePullPolicy`          | Default imagePullPolicy for KubeArmor Daemonset      | Always                                  |
          | `kubearmorInitImage.image`                | Default image for KubeArmor Init Container           | kubearmor/kubearmor-init:stable         |
          | `kubearmorInitImage.imagePullPolicy`      | Default imagePullPolicy for KubeArmor Init Container | Always                                  |
          | `kubearmorRelayImage.image`               | Default image for KubeArmor Relay Server             | kubearmor/kubearmor-relay-server:latest |
          | `kubearmorRelayImage.imagePullPolicy`     | Default imagePullPolicy for KubeArmor Relay Server   | Always                                  |
          | `kubearmorControllerImage.image`          | Default image for KubeArmor Controller               | kubearmor/kubearmor-controller:latest   |
          | `kubearmorControllerImage.imagePullPolicy`| Default imagePullPolicy for KubeArmor Controller     | Always                                  |
          | `maxAlertPerSec`                          | Maximum no of alerts per second to trigger throttling| 10                                      |
          | `recommendedPolicies`                     | Recommended Policies Spec                            | -                                       |
          | `recommendedPolicies.matchExpressions`    | Target Namespaces for recommended policies           | -                                       |
          | `recommendedPolicies.excludePolicy`       | Exclude policies from recommended policies           | -                                       |
          | `seccompEnabled`                          | Deploy KubeArmor Daemon with default seccomp profile | True                                    |
          | `throttleSec`                             | Thottling duration in seconds                        | 30                                      |

          Users are not required to specify the images in the KubearmorConfig custom resource (CR). By default, the operator will utilize the images published with the operator release.

          For detailed information on Default Posture refer [this guide](https://github.com/kubearmor/KubeArmor/blob/main/getting-started/default_posture.md)

          similarly for default visibility refer [this guide](https://github.com/kubearmor/KubeArmor/blob/main/getting-started/kubearmor_visibility.md)

          ## Support

          For Support please join KubeArmor Slack [Here](https://join.slack.com/t/kubearmor/shared_invite/zt-1ltmqdbc6-rSHw~LM6MesZZasmP2hAcA)
        displayName: KubeArmor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - monitoring
        - security
        - alerting
        - runtime-security
        - cloud native
        - container security
        links:
        - name: Website
          url: https://kubearmor.io
        - name: Github
          url: https://github.com/kubearmor/KubeArmor.git
        - name: Slack
          url: https://join.slack.com/t/kubearmor/shared_invite/zt-1ltmqdbc6-rSHw~LM6MesZZasmP2hAcA
        maintainers:
        - email: ramakant@accuknox.com
          name: Ramakant Sharma
        maturity: stable
        provider:
          name: Accuknox
          url: https://accuknox.com
        relatedImages:
        - docker.io/kubearmor/kubearmor-relay-server@sha256:0a1a20ef02bd05eaa4a900948cadee6ae7650b0dde70abe1935608eaa5f931b7
        - docker.io/kubearmor/kubearmor-snitch@sha256:c3d0f45590f9a0ebb50254047f12a7468844bcae7961eccb11f5ef578832c0eb
        - docker.io/kubearmor/kubearmor-ubi@sha256:629e295a2e64953bf95f3f3e842c42ff665ed6e4db32db8e43dcde4befdd3fc2
        - registry.connect.redhat.com/kubearmor/kubearmor-operator@sha256:076c345de449353cc9837c603024ba9d790d26c5a8cebfc97db61ded1482ab78
        - registry.connect.redhat.com/sumologic/kube-rbac-proxy@sha256:1153a4592746b05e019bde4d818d176ff9350c013f84d49829032540de882841
        - docker.io/kubearmor/kubearmor-controller@sha256:2d369138cdbb31468c41e9ce70eda986a16bbeb9dd1192cd8a011c9df8a83857
        - docker.io/kubearmor/kubearmor-init@sha256:e30ee508aa95d273f74a543e1b412b98c1714d04f093b59991c0ec2abaa450be
        - docker.io/kubearmor/kubearmor-operator@sha256:d6c6b16e636474568835ded97cecb5ed17bc6004501227f6b6d63522ed57b01c
        version: 1.5.2
      entries:
      - name: kubearmor-operator.v1.5.2
        version: 1.5.2
      name: stable
    defaultChannel: stable
    packageName: kubearmor-operator-certified
    provider:
      name: Accuknox
      url: https://accuknox.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-opa-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opa-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/opa-operator@sha256:2817d8839c6b7eb18d146b3271c3853f0bcd9c0f086c5ba8d19f20d6b14d06a3
          description: Stackable Operator for the Open Policy Agent
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/opa-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for OpaClusterSpec via `CustomResource`
            displayName: opaclusters.opa.stackable.tech
            kind: OpaCluster
            name: opaclusters.opa.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for the Open Policy Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opa
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - registry.connect.redhat.com/stackable/stackable-opa-operator@sha256:ed811a4798f167a21613371bfc071c9ebde39a1fa2975f113953130a60f1747d
        - quay.io/stackable/opa-operator@sha256:2817d8839c6b7eb18d146b3271c3853f0bcd9c0f086c5ba8d19f20d6b14d06a3
        version: 25.11.0
      entries:
      - name: opa-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-opa-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-bedrock-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-bedrock-controller.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bedrock.services.k8s.aws/v1alpha1",
                "kind": "InferenceProfile",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/bedrock-controller:1.1.0
          createdAt: "2025-11-29T04:47:49Z"
          description: AWS Bedrock controller is a service controller for managing
            Bedrock resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InferenceProfile represents the state of an AWS bedrock InferenceProfile
              resource.
            displayName: InferenceProfile
            kind: InferenceProfile
            name: inferenceprofiles.bedrock.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Bedrock resources in AWS from within your Kubernetes cluster.

          **About Amazon Bedrock**

          Amazon Bedrock is a fully managed service that makes high-performing foundation models (FMs) from leading AI companies and Amazon available for your use through a unified API. You can choose from a wide range of foundation models to find the model that is best suited for your use case. Amazon Bedrock also offers a broad set of capabilities to build generative AI applications with security, privacy, and responsible AI. Using Amazon Bedrock, you can easily experiment with and evaluate top foundation models for your use cases, privately customize them with your data using techniques such as fine-tuning and Retrieval Augmented Generation (RAG), and build agents that execute tasks using your enterprise systems and data sources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Bedrock
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bedrock
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Bedrock Developer Resources
          url: https://aws.amazon.com/bedrock/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: bedrock maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/bedrock-controller:1.1.0
        - quay.io/community-operator-pipeline-prod/ack-bedrock-controller@sha256:9ccb288b811d6e8208ed63359fca8d3108a2966bfca515e10c3685fe8abfc3bf
        version: 1.1.0
      entries:
      - name: ack-bedrock-controller.v1.1.0
        version: 1.1.0
      - name: ack-bedrock-controller.v1.0.1
        version: 1.0.1
      - name: ack-bedrock-controller.v1.0.0
        version: 1.0.0
      - name: ack-bedrock-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-bedrock-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: run-once-duration-override-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runoncedurationoverrideoperator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "RunOnceDurationOverride",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "runOnceDurationOverride": {
                    "spec": {
                      "activeDeadlineSeconds": 3600
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certifiedLevel: "false"
          containerImage: registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9-operator@sha256:4971f8befc2eecff1cfb0a9be7040594203e8e1170aee03d61765bd5b2cd4787
          createdAt: 2025/08/25
          description: An operator to manage the OpenShift RunOnceDurationOverride
            Mutating Admission Webhook Server
          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: "true"
          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.skipRange: '>=1.2.0 <1.3.1'
          operatorframework.io/suggested-namespace: openshift-run-once-duration-override-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/run-once-duration-override-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RunOnceDurationOverride is the schema for the runoncedurationoverrides
              API
            displayName: Run Once Duration Override
            kind: RunOnceDurationOverride
            name: runoncedurationoverrides.operator.openshift.io
            version: v1
        displayName: Run Once Duration Override Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mutating
        - webhook
        - workload
        - run-once
        links:
        - name: Source Code
          url: https://github.com/openshift/run-once-duration-override
        - name: Source Code
          url: https://github.com/openshift/run-once-duration-override-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9@sha256:c3b17e2ff30eab6e64e8fec59da37f05ec65d91d8d76086a9510372b20eb78d6
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-operator-bundle@sha256:783c2df43ece311bcbaaf30f33c081608e996a0f651895ec0509bb73a6a1f590
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9-operator@sha256:4971f8befc2eecff1cfb0a9be7040594203e8e1170aee03d61765bd5b2cd4787
        version: 1.3.1
      entries:
      - name: runoncedurationoverrideoperator.v1.3.1
        version: 1.3.1
      - name: runoncedurationoverrideoperator.v1.3.0
        version: 1.3.0
      - name: runoncedurationoverrideoperator.v1.2.3
        version: 1.2.3
      - name: runoncedurationoverrideoperator.v1.2.2
        version: 1.2.2
      - name: runoncedurationoverrideoperator.v1.2.1
        version: 1.2.1
      - name: runoncedurationoverrideoperator.v1.2.0
        version: 1.2.0
      - name: runoncedurationoverrideoperator.v1.1.2
        version: 1.1.2
      - name: runoncedurationoverrideoperator.v1.1.1
        version: 1.1.1
      - name: runoncedurationoverrideoperator.v1.1.0
        version: 1.1.0
      - name: runoncedurationoverrideoperator.v1.0.2
        version: 1.0.2
      - name: runoncedurationoverrideoperator.v1.0.1
        version: 1.0.1
      - name: runoncedurationoverrideoperator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: run-once-duration-override-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Citrus Framework
      provider-url: ""
    name: yaks
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: yaks-operator.v0.17.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "yaks.citrusframework.org/v1alpha1",
                "kind": "Instance",
                "metadata": {
                  "labels": {
                    "app": "yaks"
                  },
                  "name": "example-instance"
                },
                "spec": {
                  "operator": {
                    "global": true
                  }
                }
              },
              {
                "apiVersion": "yaks.citrusframework.org/v1alpha1",
                "kind": "Test",
                "metadata": {
                  "labels": {
                    "app": "yaks"
                  },
                  "name": "example-test"
                },
                "spec": {
                  "source": {
                    "content": "Feature: hello world\n\n  Scenario: print slogan\n    Given YAKS does Cloud-Native BDD testing\n    Then YAKS rocks!",
                    "language": "feature",
                    "name": "example.feature"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/citrusframework/yaks:0.17.1
          createdAt: "2023-04-26T20:37:31Z"
          description: YAKS is a platform to enable Cloud Native BDD testing on Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["instances.yaks.citrusframework.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/citrusframework/yaks
          support: Citrus Framework
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instance is the Schema for the yaks instance
            displayName: Instance
            kind: Instance
            name: instances.yaks.citrusframework.org
            version: v1alpha1
          - description: Test is the Schema for the tests API
            displayName: Test
            kind: Test
            name: tests.yaks.citrusframework.org
            version: v1alpha1
        description: |
          YAKS
          ====

          YAKS is a platform to enable Cloud Native BDD testing on Kubernetes.

          ## Running a YAKS test

          With the YAKS operator installed, you can run tests by creating a `Test` custom resource on the cluster.

          Tests are defined using [Gherkin](https://cucumber.io/docs/gherkin/) syntax. YAKS provides a set of predefined steps which
          help to connect with different messaging transports (Http REST, JMS, Kafka, Knative eventing) and verify responses with
          assertions on message header and body content.

          The example below defines a simple test resource.

          ```
          apiVersion: yaks.citrusframework.org/v1alpha1
          kind: Test
          metadata:
            name: example
          spec:
            source:
              name: example.feature
              content: |-
                Feature: hello world

                  Scenario: print slogan
                    Given YAKS does Cloud-Native BDD testing
                    Then YAKS rocks!
          ```

          Refer to the [YAKS repository](https://github.com/citrusframework/yaks) for more complex examples.
        displayName: YAKS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - yaks
        - testing
        - microservices
        - knative
        - kafka
        - serverless
        - camel
        - camel-k
        links:
        - name: Project page
          url: https://citrusframework.org/
        - name: YAKS source code repository
          url: https://github.com/citrusframework/yaks
        maintainers:
        - email: cdeppisch@redhat.com
          name: Christoph Deppisch
        - email: nferraro@redhat.com
          name: Nicola Ferraro
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Citrus Framework
        relatedImages:
        - docker.io/citrusframework/yaks:0.17.1
        - quay.io/openshift-community-operators/yaks@sha256:0031de9a68502cb65923c4e17453195663f59e46b1cda37619a857add503c016
        version: 0.17.1
      entries:
      - name: yaks-operator.v0.17.1
        version: 0.17.1
      - name: yaks-operator.v0.17.0
        version: 0.17.0
      - name: yaks-operator.v0.16.0
        version: 0.16.0
      - name: yaks-operator.v0.15.1
        version: 0.15.1
      - name: yaks-operator.v0.15.0
        version: 0.15.0
      - name: yaks-operator.v0.14.3
        version: 0.14.3
      - name: yaks-operator.v0.14.2
        version: 0.14.2
      - name: yaks-operator.v0.14.1
        version: 0.14.1
      - name: yaks-operator.v0.13.0
        version: 0.13.0
      - name: yaks-operator.v0.12.2
        version: 0.12.2
      - name: yaks-operator.v0.11.0
        version: 0.11.0
      - name: yaks-operator.v0.10.0
        version: 0.10.0
      - name: yaks-operator.v0.9.0
        version: 0.9.0
      - name: yaks-operator.v0.8.0
        version: 0.8.0
      - name: yaks-operator.v0.7.0
        version: 0.7.0
      - name: yaks-operator.v0.6.0
        version: 0.6.0
      - name: yaks-operator.v0.5.0
        version: 0.5.0
      - name: yaks-operator.v0.4.0
        version: 0.4.0
      name: alpha
    defaultChannel: alpha
    packageName: yaks
    provider:
      name: Citrus Framework
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: VMware Tanzu
      provider-url: ""
    name: rabbitmq-messaging-topology-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rabbitmq-messaging-topology-operator.v1.18.2
      currentCSVDesc:
        annotations:
          alm-examples: |
            [{"apiVersion":"rabbitmq.com/v1beta1","kind":"Binding","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Exchange","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Federation","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Permission","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Policy","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"OperatorPolicy","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Queue","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"SchemaReplication","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Shovel","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1alpha1","kind":"SuperStream","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"User","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Vhost","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"TopicPermission","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}}]
          capabilities: Full Lifecycle
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/rabbitmqoperator/messaging-topology-operator:1.18.2
          createdAt: 2025-12-10T10:23:39
          description: Kubernetes operator to allow developers to create and manage
            RabbitMQ messaging topologies within a RabbitMQ cluster using a declarative
            Kubernetes API.
          repository: https://github.com/rabbitmq/messaging-topology-operator
          support: VMware Tanzu
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Binding
            displayName: Binding
            kind: Binding
            name: bindings.rabbitmq.com
            version: v1beta1
          - description: Exchange
            displayName: Exchange
            kind: Exchange
            name: exchanges.rabbitmq.com
            version: v1beta1
          - description: Federation
            displayName: Federation
            kind: Federation
            name: federations.rabbitmq.com
            version: v1beta1
          - description: Permission
            displayName: Permission
            kind: Permission
            name: permissions.rabbitmq.com
            version: v1beta1
          - description: TopicPermission
            displayName: TopicPermission
            kind: TopicPermission
            name: topicpermissions.rabbitmq.com
            version: v1beta1
          - description: Policy
            displayName: Policy
            kind: Policy
            name: policies.rabbitmq.com
            version: v1beta1
          - description: OperatorPolicy
            displayName: OperatorPolicy
            kind: OperatorPolicy
            name: operatorpolicies.rabbitmq.com
            version: v1beta1
          - description: Queue
            displayName: Queue
            kind: Queue
            name: queues.rabbitmq.com
            version: v1beta1
          - description: Schema Replication
            displayName: SchemaReplication
            kind: SchemaReplication
            name: schemareplications.rabbitmq.com
            version: v1beta1
          - description: Shovel
            displayName: Shovel
            kind: Shovel
            name: shovels.rabbitmq.com
            version: v1beta1
          - description: Super Stream
            displayName: SuperStream
            kind: SuperStream
            name: superstreams.rabbitmq.com
            version: v1alpha1
          - description: User
            displayName: User
            kind: User
            name: users.rabbitmq.com
            version: v1beta1
          - description: Vhost
            displayName: Vhost
            kind: Vhost
            name: vhosts.rabbitmq.com
            version: v1beta1
          required:
          - description: Rabbitmq Cluster
            displayName: RabbitmqCluster
            kind: RabbitmqCluster
            name: rabbitmqclusters.rabbitmq.com
            version: v1beta1
        description: |
          ## About the managed application
          RabbitMQ is an open-source message-broker software that originally implemented the Advanced Message Queuing Protocol and has since been extended with a plug-in architecture to support Streaming Text Oriented Messaging Protocol, MQ Telemetry Transport, and other protocols.
          ## About this Operator
          Kubernetes operator to allow developers to create and manage RabbitMQ messaging topologies within a RabbitMQ cluster using a declarative Kubernetes API. A Messaging topology is the collection of objects such as exchanges, queues, bindings and policies that provides specific messaging or streaming scenario. This operator is used with RabbitMQ clusters deployed via the RabbitMQ Cluster Kubernetes Operator. This repository contains custom controllers and custom resource definitions (CRDs) enabling a declarative API for RabbitMQ messaging topologies.
          ## Prerequisites for enabling this Operator
          The operator works on top of the RabbitMQ cluster operator.
          Messaging Topology Operator is tested with the latest release of RabbitMQ Cluster Operator. It uses the generated default user secret from RabbitmqCluster (set in rabbitmqcluster.status.binding) to authenticate with RabbitMQ server.
        displayName: rabbitmq-messaging-topology-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rabbitmq
        - messaging
        - amqp
        - amqp10
        - stomp
        - mqtt
        - mqtt5
        - queues
        - streaming
        links:
        - name: GitHub
          url: https://github.com/rabbitmq/messaging-topology-operator
        - name: Documentation
          url: https://www.rabbitmq.com/kubernetes/operator/install-topology-operator.html
        maintainers:
        - email: rabbitmq-users@googlegroups.com
          name: VMware Tanzu
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        provider:
          name: VMware Tanzu
        relatedImages:
        - quay.io/community-operator-pipeline-prod/rabbitmq-messaging-topology-operator@sha256:8b221a9aebcfa2ddb6e1f1220d2ba53a4ca79ba17494b3b2a46092f590867037
        - quay.io/rabbitmqoperator/messaging-topology-operator:1.18.2
        version: 1.18.2
      entries:
      - name: rabbitmq-messaging-topology-operator.v1.18.2
        version: 1.18.2
      - name: rabbitmq-messaging-topology-operator.v1.18.1
        version: 1.18.1
      - name: rabbitmq-messaging-topology-operator.v1.17.4
        version: 1.17.4
      - name: rabbitmq-messaging-topology-operator.v1.16.0
        version: 1.16.0
      - name: rabbitmq-messaging-topology-operator.v1.15.0
        version: 1.15.0
      - name: rabbitmq-messaging-topology-operator.v1.14.2
        version: 1.14.2
      - name: rabbitmq-messaging-topology-operator.v1.14.1
        version: 1.14.1
      - name: rabbitmq-messaging-topology-operator.v1.13.0
        version: 1.13.0
      - name: rabbitmq-messaging-topology-operator.v1.12.2
        version: 1.12.2
      - name: rabbitmq-messaging-topology-operator.v1.12.1
        version: 1.12.1
      name: stable
    defaultChannel: stable
    packageName: rabbitmq-messaging-topology-operator
    provider:
      name: VMware Tanzu
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: odr-hub-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odr-hub-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east"
                },
                "spec": {
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east1"
                },
                "spec": {
                  "cidrs": [
                    "192.168.39.45/32"
                  ],
                  "clusterFence": "ManuallyFenced",
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east1"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPlacementControl",
                "metadata": {
                  "name": "drplacementcontrol-sample",
                  "namespace": "application-namespace"
                },
                "spec": {
                  "drPolicyRef": {
                    "name": "drpolicy-sample"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "excludedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "includedResources": [
                          "*"
                        ]
                      }
                    ]
                  },
                  "placementRef": {
                    "kind": "PlacementRule",
                    "name": "application-placement-rule"
                  },
                  "preferredCluster": "east",
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east",
                    "west"
                  ],
                  "replicationClassSelector": {
                    "matchLabels": {
                      "class": "ramen-replication-class"
                    }
                  },
                  "schedulingInterval": "1h",
                  "volumeSnapshotClassSelector": {
                    "matchLabels": {
                      "class": "ramen-snapshot-class"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "metrodr-drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east1",
                    "east2"
                  ],
                  "replicationClassSelector": {},
                  "schedulingInterval": {},
                  "volumeSnapshotClassSelector": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T08:01:44Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DRCluster is the Schema for the drclusters API
            displayName: DRCluster
            kind: DRCluster
            name: drclusters.ramendr.openshift.io
            version: v1alpha1
          - description: DRPlacementControl is the Schema for the drplacementcontrols
              API
            displayName: DRPlacement Control
            kind: DRPlacementControl
            name: drplacementcontrols.ramendr.openshift.io
            version: v1alpha1
          - description: DRPolicy is the Schema for the drpolicies API
            displayName: DRPolicy
            kind: DRPolicy
            name: drpolicies.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Hub is a disaster-recovery orchestrator for stateful
          applications. It operates from an Advanced Cluster Management (ACM) hub
          cluster to orchestrate the recovery of application state, and scheduling
          of ACM PlacementRule for disaster recovery operations.
        displayName: Openshift DR Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:35498d3e82e157b35b5f2270033ddc88a521453ab90c3b95e2a6a4cdf62c21c4
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: odr-hub-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odr-hub-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odr-hub-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odr-hub-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odr-hub-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odr-hub-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odr-hub-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odr-hub-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odr-hub-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odr-hub-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odr-hub-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east"
                },
                "spec": {
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east1"
                },
                "spec": {
                  "cidrs": [
                    "192.168.39.45/32"
                  ],
                  "clusterFence": "ManuallyFenced",
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east1"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPlacementControl",
                "metadata": {
                  "name": "drplacementcontrol-sample",
                  "namespace": "application-namespace"
                },
                "spec": {
                  "drPolicyRef": {
                    "name": "drpolicy-sample"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "excludedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "includedResources": [
                          "*"
                        ]
                      }
                    ]
                  },
                  "placementRef": {
                    "kind": "PlacementRule",
                    "name": "application-placement-rule"
                  },
                  "preferredCluster": "east",
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east",
                    "west"
                  ],
                  "replicationClassSelector": {
                    "matchLabels": {
                      "class": "ramen-replication-class"
                    }
                  },
                  "schedulingInterval": "1h",
                  "volumeSnapshotClassSelector": {
                    "matchLabels": {
                      "class": "ramen-snapshot-class"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "metrodr-drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east1",
                    "east2"
                  ],
                  "replicationClassSelector": {},
                  "schedulingInterval": {},
                  "volumeSnapshotClassSelector": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:50:45Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DRCluster is the Schema for the drclusters API
            displayName: DRCluster
            kind: DRCluster
            name: drclusters.ramendr.openshift.io
            version: v1alpha1
          - description: DRPlacementControl is the Schema for the drplacementcontrols
              API
            displayName: DRPlacement Control
            kind: DRPlacementControl
            name: drplacementcontrols.ramendr.openshift.io
            version: v1alpha1
          - description: DRPolicy is the Schema for the drpolicies API
            displayName: DRPolicy
            kind: DRPolicy
            name: drpolicies.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Hub is a disaster-recovery orchestrator for stateful
          applications. It operates from an Advanced Cluster Management (ACM) hub
          cluster to orchestrate the recovery of application state, and scheduling
          of ACM PlacementRule for disaster recovery operations.
        displayName: Openshift DR Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:747108b5f119ea96ab3c8f6d7035b1e98aa8df879ed772c94459500b5a715483
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        version: 4.20.4-rhodf
      entries:
      - name: odr-hub-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odr-hub-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odr-hub-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odr-hub-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odr-hub-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odr-hub-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: datagrid
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datagrid-operator.v8.2.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "adminAuth": {
                    "secretName": "basic-auth"
                  },
                  "clusterName": "example-infinispan",
                  "name": "mycache"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC batch-cache"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:1435aa60e8ab4d25c86daae68dcb93d14999f50d7c1e11a3c5726a86d3d30453
          createdAt: "2021-08-24T17:39:44Z"
          description: Create and manage Red Hat Data Grid clusters.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Restore API schema.
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Interoperability:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Data Grid Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
          Red Hat Data Grid is a distributed, in-memory data store that increases application performance and delivers open-source capabilities to handle demanding use cases.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.2/html/data_grid_operator_8.2_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.2
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:1435aa60e8ab4d25c86daae68dcb93d14999f50d7c1e11a3c5726a86d3d30453
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4d8057709958ef60bcabdcec52f05eae8df121fd3f4762c3218abca38130f638
        - registry.redhat.io/datagrid/datagrid-8-openj9-11-rhel8@sha256:c8607d6538a7528e27e6ecb138e0a93a03b3c9fa1f8a9a5aad3fd9f4a6814448
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:a7641fc5f4c7aed4b73d7d98ccb58ef64cf14ab16d72378f56dba3ad4b8714c6
        version: 8.2.8
      entries:
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: 8.2.x
    - currentCSV: datagrid-operator.v8.3.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:4d9d7221b029866837add5f3cb52dd0b7956f57996ce2d8b76344ce2de678716
          createdAt: "2022-11-03T08:40:57Z"
          description: Create and manage Red Hat Data Grid clusters.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Data Grid", "Red Hat
            Runtimes", "Red Hat Integration", "Red Hat Process Automation"]'
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request 1Gi of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.3/html/data_grid_operator_8.3_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.3
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:7dffd170b9b7d021b1615e6d746cbdfcbd819a1306ecdbaf042bcaf2202f7daa
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:4d9d7221b029866837add5f3cb52dd0b7956f57996ce2d8b76344ce2de678716
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        version: 8.3.9
      entries:
      - name: datagrid-operator.v8.3.9
        version: 8.3.9
      - name: datagrid-operator.v8.3.8
        version: 8.3.8
      - name: datagrid-operator.v8.3.7
        version: 8.3.7
      - name: datagrid-operator.v8.3.6
        version: 8.3.6
      - name: datagrid-operator.v8.3.5
        version: 8.3.5
      - name: datagrid-operator.v8.3.4
        version: 8.3.4
      - name: datagrid-operator.v8.3.3
        version: 8.3.3
      - name: datagrid-operator.v8.3.2
        version: 8.3.2
      - name: datagrid-operator.v8.3.1
        version: 8.3.1
      - name: datagrid-operator.v8.3.0
        version: 8.3.0
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: 8.3.x
    - currentCSV: datagrid-operator.v8.4.16
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:e5315682869de72514e3e027bfb02bf0bb64919453ca738c7ecfa1e34634ac2b
          createdAt: 2024-05-30T08:05:19 EDT
          description: Create and manage Red Hat Data Grid clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Data Grid", "Red Hat
            Runtimes", "Red Hat Integration", "Red Hat Process Automation"]'
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request 1Gi of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.4/html/data_grid_operator_8.4_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.4
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9d9e466b7c367d0406406550c74bc790aa68f3f875ea4f652eb28f2e25a05458
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:24cf79efa89bbfa495665b1711a27531b7ab0813695a89b2c38c96c2e792eb24
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:111d1f4ab8f006386102d1bec4cd6a41b446d9ae401a43c821b2f318c8ba74c8
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:e5315682869de72514e3e027bfb02bf0bb64919453ca738c7ecfa1e34634ac2b
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        version: 8.4.16
      entries:
      - name: datagrid-operator.v8.4.16
        version: 8.4.16
      - name: datagrid-operator.v8.4.15
        version: 8.4.15
      - name: datagrid-operator.v8.4.14
        version: 8.4.14
      - name: datagrid-operator.v8.4.13
        version: 8.4.13
      - name: datagrid-operator.v8.4.12
        version: 8.4.12
      - name: datagrid-operator.v8.4.11
        version: 8.4.11
      - name: datagrid-operator.v8.4.10
        version: 8.4.9
      - name: datagrid-operator.v8.4.8
        version: 8.4.8
      - name: datagrid-operator.v8.4.7
        version: 8.4.7
      - name: datagrid-operator.v8.4.6
        version: 8.4.6
      - name: datagrid-operator.v8.4.5
        version: 8.4.5
      - name: datagrid-operator.v8.4.4
        version: 8.4.4
      - name: datagrid-operator.v8.4.3
        version: 8.4.3
      - name: datagrid-operator.v8.4.2
        version: 8.4.2
      - name: datagrid-operator.v8.4.1
        version: 8.4.1
      - name: datagrid-operator.v8.4.0
        version: 8.4.0
      - name: datagrid-operator.v8.3.9
        version: 8.3.9
      - name: datagrid-operator.v8.3.8
        version: 8.3.8
      - name: datagrid-operator.v8.3.7
        version: 8.3.7
      - name: datagrid-operator.v8.3.6
        version: 8.3.6
      - name: datagrid-operator.v8.3.5
        version: 8.3.5
      - name: datagrid-operator.v8.3.4
        version: 8.3.4
      - name: datagrid-operator.v8.3.3
        version: 8.3.3
      - name: datagrid-operator.v8.3.2
        version: 8.3.2
      - name: datagrid-operator.v8.3.1
        version: 8.3.1
      - name: datagrid-operator.v8.3.0
        version: 8.3.0
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: 8.4.x
    - currentCSV: datagrid-operator.v8.5.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create counter --concurrency-level=1 --initial-value=5 --storage=VOLATILE --type=weak batch-counter\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "template": "\u003cdistributed-cache /\u003e"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel9-operator@sha256:d719d778b0848588a7e61d3c3fa689763f51a6533af4cf9e1c738c4ed8fac760
          createdAt: 2025-12-04T06:26:42 UTC
          description: Create and manage Red Hat Data Grid clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Data Grid", "Red Hat
            Runtimes", "Red Hat Integration", "Red Hat Process Automation"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request 1Gi of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.5/html/data_grid_operator_8.5_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.5
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:a711c50e489995fb60e5dec23ce286360743feda5066e4a0861d448aa4f2e903
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:24cf79efa89bbfa495665b1711a27531b7ab0813695a89b2c38c96c2e792eb24
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9d9e466b7c367d0406406550c74bc790aa68f3f875ea4f652eb28f2e25a05458
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:48cf13e71953cea6f62354289f0d8ece7a8a481ee0bb2c76eb9352d438db9ca3
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:f59ae21773dfc207454a709ac5f7aad2be6a6a20ac88da26c379edeed54537b8
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:0d368459c98c5788dd55d2add5b4b7d438b9a8c814ea8aee2222ea956699cbb6
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:11bfe5c8109d26164cff428232b2001ab8df464f14a382661b936543336e2960
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:ad4f91f984b4b898012963d52e6ebcd166ec03e76e26eba3191ecb87f51fb18d
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:9bc0b730570ab55fbeca83075949f4caa96ed5c37637420a59cd4a7db01ea840
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6e1766784b684561666134d41dca5331b80d50e63695fe7b1a1d6d4cdb73f0bd
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:4b9bf39d2ff14bcfbd4628a399093703d87a2b2b9c8e74c3d7cfdff4b5167fa4
        - registry.redhat.io/datagrid/datagrid-8-rhel9-operator@sha256:d719d778b0848588a7e61d3c3fa689763f51a6533af4cf9e1c738c4ed8fac760
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:1d5525d2d575dcc9d90da57afeb5fb310edc28d97d7ba55290db6bd152a34a95
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:c25e3152d6a6b6d5cd86d311bf567e594b9948440785209cd8d7986076a5a10d
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:5656cd188d054551489d45be996266d03e3faa8814b8bfc0f360cf0dceb83cbe
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6b78aaf15558c0522d22ba3003244203e6d39e6fe737c3075e30de8763218358
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:2461b1da4bea1e25b69a7bf8ef2173d905369e5a779134fa5099677da10cd8b4
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:879f3dcc24ffe795472779f777d955666ba4041c17e717d5e165cd7f12d7955a
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        version: 8.5.13
      entries:
      - name: datagrid-operator.v8.5.13
        version: 8.5.13
      - name: datagrid-operator.v8.5.12
        version: 8.5.12
      - name: datagrid-operator.v8.5.11
        version: 8.5.11
      - name: datagrid-operator.v8.5.10
        version: 8.5.10
      - name: datagrid-operator.v8.5.9
        version: 8.5.9
      - name: datagrid-operator.v8.5.8
        version: 8.5.8
      - name: datagrid-operator.v8.5.7
        version: 8.5.7
      - name: datagrid-operator.v8.5.6
        version: 8.5.6
      - name: datagrid-operator.v8.5.5
        version: 8.5.5
      - name: datagrid-operator.v8.5.4
        version: 8.5.4
      - name: datagrid-operator.v8.5.3
        version: 8.5.3
      - name: datagrid-operator.v8.5.2
        version: 8.5.2
      - name: datagrid-operator.v8.5.1
        version: 8.5.1
      - name: datagrid-operator.v8.5.0
        version: 8.5.0
      - name: datagrid-operator.v8.4.16
        version: 8.4.16
      - name: datagrid-operator.v8.4.15
        version: 8.4.15
      - name: datagrid-operator.v8.4.14
        version: 8.4.14
      - name: datagrid-operator.v8.4.13
        version: 8.4.13
      - name: datagrid-operator.v8.4.12
        version: 8.4.12
      - name: datagrid-operator.v8.4.11
        version: 8.4.11
      - name: datagrid-operator.v8.4.10
        version: 8.4.9
      - name: datagrid-operator.v8.4.8
        version: 8.4.8
      - name: datagrid-operator.v8.4.7
        version: 8.4.7
      - name: datagrid-operator.v8.4.6
        version: 8.4.6
      - name: datagrid-operator.v8.4.5
        version: 8.4.5
      - name: datagrid-operator.v8.4.4
        version: 8.4.4
      - name: datagrid-operator.v8.4.3
        version: 8.4.3
      - name: datagrid-operator.v8.4.2
        version: 8.4.2
      - name: datagrid-operator.v8.4.1
        version: 8.4.1
      - name: datagrid-operator.v8.4.0
        version: 8.4.0
      - name: datagrid-operator.v8.3.9
        version: 8.3.9
      - name: datagrid-operator.v8.3.8
        version: 8.3.8
      - name: datagrid-operator.v8.3.7
        version: 8.3.7
      - name: datagrid-operator.v8.3.6
        version: 8.3.6
      - name: datagrid-operator.v8.3.5
        version: 8.3.5
      - name: datagrid-operator.v8.3.4
        version: 8.3.4
      - name: datagrid-operator.v8.3.3
        version: 8.3.3
      - name: datagrid-operator.v8.3.2
        version: 8.3.2
      - name: datagrid-operator.v8.3.1
        version: 8.3.1
      - name: datagrid-operator.v8.3.0
        version: 8.3.0
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: stable
    defaultChannel: stable
    packageName: datagrid
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: fence-agents-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fence-agents-remediation.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediation",
                "metadata": {
                  "name": "worker-1"
                },
                "spec": {
                  "agent": "fence_ipmilan",
                  "nodeSecretNames": {
                    "master-0": "fence-agents-credentials-master0",
                    "master-1": "fence-agents-credentials-master1",
                    "master-2": "fence-agents-credentials-master2",
                    "worker-0": "fence-agents-credentials-worker0",
                    "worker-1": "fence-agents-credentials-worker1",
                    "worker-2": "fence-agents-credentials-worker2"
                  },
                  "nodeparameters": {
                    "--ipport": {
                      "master-0": "6230",
                      "master-1": "6231",
                      "master-2": "6232",
                      "worker-0": "6233",
                      "worker-1": "6234",
                      "worker-2": "6235"
                    }
                  },
                  "remediationStrategy": "ResourceDeletion",
                  "retrycount": 5,
                  "retryinterval": "5s",
                  "sharedSecretName": "fence-agents-credentials-shared",
                  "sharedparameters": {
                    "--action": "reboot",
                    "--ip": "192.168.111.1",
                    "--lanplus": "",
                    "--username": "admin"
                  },
                  "timeout": "60s"
                }
              },
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediationTemplate",
                "metadata": {
                  "name": "fenceagentsremediationtemplate-default"
                },
                "spec": {
                  "template": {
                    "spec": {
                      "agent": "fence_ipmilan",
                      "nodeSecretNames": {
                        "master-0": "fence-agents-credentials-master0",
                        "master-1": "fence-agents-credentials-master1",
                        "master-2": "fence-agents-credentials-master2",
                        "worker-0": "fence-agents-credentials-worker0",
                        "worker-1": "fence-agents-credentials-worker1",
                        "worker-2": "fence-agents-credentials-worker2"
                      },
                      "nodeparameters": {
                        "--ipport": {
                          "master-0": "6230",
                          "master-1": "6231",
                          "master-2": "6232",
                          "worker-0": "6233",
                          "worker-1": "6234",
                          "worker-2": "6235"
                        }
                      },
                      "remediationStrategy": "ResourceDeletion",
                      "retrycount": 5,
                      "retryinterval": "5s",
                      "sharedSecretName": "fence-agents-credentials-shared",
                      "sharedparameters": {
                        "--action": "reboot",
                        "--ip": "192.168.111.1",
                        "--lanplus": "",
                        "--username": "admin"
                      },
                      "timeout": "60s"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/fence-agents-remediation-operator:v0.6.0
          createdAt: "2025-11-24 11:34:19"
          description: Fence Agents Remediation Operator uses well-known agents to
            fence and remediate unhealthy nodes. The remediation includes rebooting
            the unhealthy node using a fence agent, and then evicting workloads from
            the unhealthy node.
          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.skipRange: '>=0.0.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/fence-agents-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FenceAgentsRemediation is the Schema for the fenceagentsremediations
              API
            displayName: Fence Agents Remediation
            kind: FenceAgentsRemediation
            name: fenceagentsremediations.fence-agents-remediation.medik8s.io
            version: v1alpha1
          - description: FenceAgentsRemediationTemplate is the Schema for the fenceagentsremediationtemplates
              API
            displayName: Fence Agents Remediation Template
            kind: FenceAgentsRemediationTemplate
            name: fenceagentsremediationtemplates.fence-agents-remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Fence Agents Remediation (FAR) is a Kubernetes operator that uses well-known agents to fence and remediate unhealthy nodes.
          The remediation includes rebooting the unhealthy node using a fence agent and then evicting workloads from the unhealthy node.

          ### Compatibility
          FAR is one of the remediator operators by [Medik8s](https://www.medik8s.io/remediation/remediation/),
          such as [Self Node Remediation](https://github.com/medik8s/self-node-remediation) and [Machine Deletion Remediation](https://github.com/medik8s/machine-deletion-remediation),
          that were designed to run with the Node HealthCheck Operator [(NHC)](https://github.com/medik8s/node-healthcheck-operator) which detects an unhealthy node and creates remediation CR.
          It is recommended to use FAR with NHC for an easier and smoother experience by fully automating the remediation process, but it can be used as a standalone remediator for the more experienced user.

          ### Advantages
          - Robustness - FAR has direct feedback from the traditional Application Programming Interface (API) call (e.g., IPMI) about the result of the fence action without using the Kubernetes API.
          - Speed - FAR is rapid since it can reboot a node and receive an acknowledgment from the API call while other remediators might need to wait a safe time till they can expect the node to be rebooted.
          - Diversity - FAR includes several fence agents from a large known set of upstream fencing agents for bare metal servers, virtual machines, cloud platforms, etc.
          - Adjustability - FAR allows to set up different parameters for running the API call that remediates the node.
        displayName: Fence Agents Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - fencing
        - auto-healing
        - recovery
        - high-availability
        - fence-agents
        - fence-agents-remediation
        - remediation
        - far
        - baremetal
        links:
        - name: Fence Agents Remediation
          url: https://www.medik8s.io/remediation/fence-agents-remediation/fence-agents-remediation/
        - name: Source Code
          url: https://www.github.com/medik8s/fence-agents-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/fence-agents-remediation@sha256:3c9737485019cac25171816fea587dfe4bba9eb2907af9041bd340c0cf7e6ed3
        - quay.io/medik8s/fence-agents-remediation-operator:v0.6.0
        version: 0.6.0
      entries:
      - name: fence-agents-remediation.v0.6.0
        version: 0.6.0
      - name: fence-agents-remediation.v0.5.0
        version: 0.5.0
      - name: fence-agents-remediation.v0.4.0
        version: 0.4.0
      - name: fence-agents-remediation.v0.3.0
        version: 0.3.0
      - name: fence-agents-remediation.v0.2.1
        version: 0.2.1
      - name: fence-agents-remediation.v0.2.0
        version: 0.2.0
      name: stable
    defaultChannel: stable
    packageName: fence-agents-remediation
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: unsupported
      operatorframework.io/arch.s390x: unsupported
      operatorframework.io/os.linux: supported
      provider: Konveyor
      provider-url: https://www.konveyor.io
    name: konveyor-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: konveyor-operator.v0.9.0-alpha.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:4a46b279981e9dd241b3806c380216a785778a8d5c4a8d061d226246ba881c95
          createdAt: "2025-11-18T00:34:15Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.9.0-alpha.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/postgresql-15-c9s@sha256:ccb8c231bfa69b8981b67613f4438cc84f4ce3f2b269b8dbe91d0577b7b9bba4
        - quay.io/konveyor/tackle2-operator@sha256:4a46b279981e9dd241b3806c380216a785778a8d5c4a8d061d226246ba881c95
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:cacf06f2530fa59113837792220fcf34ff8b780579da063de338015d9ed30bf2
        - quay.io/konveyor/java-external-provider@sha256:fac1f5660cd9fe052581b099fd103c017df2c067c708eb306daa04ec54319ea9
        - quay.io/konveyor/kai-solution-server@sha256:0019fa97e13e1c91cc73aa116a63f979e1feee04324eb6eefcd437aa0b788d9f
        - quay.io/konveyor/tackle2-addon-discovery@sha256:61f52dff8e1f586ef7ba8e38771c057c28a49c6a75c5342819b872954dd4df43
        - quay.io/konveyor/tackle-keycloak-init@sha256:26458527bdb0a00c3512c00d17d33d89a8fb0e6b5f750f40b946bf6442bbb30d
        - quay.io/konveyor/kantra@sha256:233447c01584712a183c058158d73ac9fb600a80250e4fe9d4cbea410d8da129
        - quay.io/konveyor/tackle2-hub@sha256:9e3e0c513e33bb916ad374b1e1a6b6bb01167dd121d25cf88ebd6688d590628d
        - quay.io/konveyor/origin-oauth-proxy@sha256:d46a89fe587f8f55a292d871085584d7ba1910a61979c7e56c5bf7ca680a0a9a
        - quay.io/konveyor/tackle2-addon-platform@sha256:9a731b5da30f2c9e0c9a00a941cf8da59eb7b911e025fef94531156f47bdf7f0
        - quay.io/konveyor/tackle2-ui@sha256:47a8b1ae89ccfc26495ac7c446cbe7635d371f7b87cc139ba0283958f30ec545
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:98176feb3772609445c129f78ec3051cda24eea703b48cc2b55cfb25cd2c0f70
        - quay.io/konveyor/generic-external-provider@sha256:a2f9de8afe702b881ab8ea96a32f78ba39953a02af1f22650bd49c93a371f621
        version: 0.9.0-alpha.1
      entries:
      - name: konveyor-operator.v0.9.0-alpha.1
        version: 0.9.0-alpha.1
      - name: konveyor-operator.v0.8.1-alpha.5
        version: 0.8.1-alpha.5
      - name: konveyor-operator.v0.8.1-alpha.2
        version: 0.8.1-alpha.2
      - name: konveyor-operator.v0.8.0-alpha.4
        version: 0.8.0-alpha.4
      - name: konveyor-operator.v0.8.0-alpha.2
        version: 0.8.0-alpha.2
      - name: konveyor-operator.v0.8.0-alpha.1
        version: 0.8.0-alpha.1
      - name: konveyor-operator.v0.7.0-alpha.2
        version: 0.7.0-alpha.2
      - name: konveyor-operator.v0.7.0-alpha.1
        version: 0.7.0-alpha.1
      - name: konveyor-operator.v0.6.0-alpha.2
        version: 0.6.0-alpha.2
      - name: konveyor-operator.v0.6.0-alpha.1
        version: 0.6.0-alpha.1
      - name: konveyor-operator.v0.5.0-alpha.1
        version: 0.5.0-alpha.1
      - name: konveyor-operator.v0.4.0-alpha.1
        version: 0.4.0-alpha.1
      - name: konveyor-operator.v0.3.0-alpha.6
        version: 0.3.0-alpha.6
      - name: konveyor-operator.v0.3.0-alpha.5
        version: 0.3.0-alpha.5
      - name: konveyor-operator.v0.3.0-alpha.4
        version: 0.3.0-alpha.4
      - name: konveyor-operator.v0.3.0-alpha.3
        version: 0.3.0-alpha.3
      - name: konveyor-operator.v0.3.0-alpha.2
        version: 0.3.0-alpha.2
      - name: konveyor-operator.v0.3.0-alpha.1
        version: 0.3.0-alpha.1
      - name: konveyor-operator.v0.2.0-alpha.3
        version: 0.2.0-alpha.3
      - name: konveyor-operator.v0.2.0-alpha.2
        version: 0.2.0-alpha.2
      - name: konveyor-operator.v0.2.0-alpha.1
        version: 0.2.0-alpha.1
      name: alpha
    - currentCSV: konveyor-operator.v0.8.1-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:1a38f0f8f001985ebdcb3fe7d87a109720cf70384d6e0356f92c445b4de86383
          createdAt: "2025-11-17T21:54:00Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.8.1-beta.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/postgresql-15-c9s@sha256:ccb8c231bfa69b8981b67613f4438cc84f4ce3f2b269b8dbe91d0577b7b9bba4
        - quay.io/konveyor/tackle2-operator@sha256:1a38f0f8f001985ebdcb3fe7d87a109720cf70384d6e0356f92c445b4de86383
        - quay.io/konveyor/tackle2-ui@sha256:d792f07491bc3be53c657655d7e4b19512c29a3bec09d7c60fd27b97587379ee
        - quay.io/konveyor/kai-solution-server@sha256:d2b2eea76e6039b6ce18ef6f556a9312e1a26105e6d44785555213f65c28f914
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:4e09e172df63b05ab5f0de1acc0190d655bbb702c19db7cc16d1c7cb3e1de566
        - quay.io/konveyor/tackle2-addon-discovery@sha256:718e6736a47da8b9a2cd2847e28576d91ce2b62e3206412f4daefcce03d58376
        - quay.io/konveyor/tackle2-hub@sha256:d84629e468e52dd5fd2ce9b32a33fc1aeea18107bbb0ce1525cb0271d6d99476
        - quay.io/konveyor/tackle-keycloak-init@sha256:bf87edaf6dae20f47bd5fd2e3a0030e8f26d53d256fbae650ae1d6d6df708668
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:3d061a070f2b64edcf34280830962a7e10595550d357ad8b3a70b3fb3b66b068
        - quay.io/konveyor/kantra@sha256:5903643763e0f68b56ed1ac9f5579bed287fb6572b2c35776f0089b912ad7c04
        - quay.io/konveyor/tackle2-addon-platform@sha256:19d5344169cfcf748a2938789b79c8ef3283cfb296990236d87d144b72dfda62
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/generic-external-provider@sha256:7248c8c10c058f3e76d6ba2a9483a6d8bb96a729467bb25a079b89753ba7ea83
        - quay.io/konveyor/java-external-provider@sha256:666b513f31757fa44d0bc11d5c7e2c15c8be7f318b12626a85ac501c4b246a8c
        - quay.io/konveyor/origin-oauth-proxy@sha256:d46a89fe587f8f55a292d871085584d7ba1910a61979c7e56c5bf7ca680a0a9a
        version: 0.8.1-beta.1
      entries:
      - name: konveyor-operator.v0.8.1-beta.1
        version: 0.8.1-beta.1
      - name: konveyor-operator.v0.8.0-beta.5
        version: 0.8.0-beta.5
      - name: konveyor-operator.v0.8.0-beta.4
        version: 0.8.0-beta.4
      - name: konveyor-operator.v0.8.0-beta.2
        version: 0.8.0-beta.2
      - name: konveyor-operator.v0.8.0-beta.1
        version: 0.8.0-beta.1
      - name: konveyor-operator.v0.6.0-beta.2
        version: 0.6.0-beta.2
      - name: konveyor-operator.v0.6.0-beta.1
        version: 0.6.0-beta.1
      - name: konveyor-operator.v0.5.0-beta.3
        version: 0.5.0-beta.3
      - name: konveyor-operator.v0.5.0-beta.2
        version: 0.5.0-beta.2
      - name: konveyor-operator.v0.5.0-beta.1
        version: 0.5.0-beta.1
      - name: konveyor-operator.v0.3.0-beta.3
        version: 0.3.0-beta.3
      - name: konveyor-operator.v0.3.0-beta.2
        version: 0.3.0-beta.2
      - name: konveyor-operator.v0.3.0-beta.1.2
        version: 0.3.0-beta.1.2
      - name: konveyor-operator.v0.3.0-beta.1.1
        version: 0.3.0-beta.1.1
      - name: konveyor-operator.v0.3.0-beta.1
        version: 0.3.0-beta.1
      name: beta
    - currentCSV: konveyor-operator.v0.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "move2kube-plan",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "image": "quay.io/konveyor/tackle-addon-move2kube-plan:latest"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:9688d0763d8c7812beee715a061c3c198006448855d7b891d45833f62cf869fb
          createdAt: "2023-05-25T15:23:45Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.1.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)

        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle2-addon-windup@sha256:81f0625cb82eb24ded51c7258f229f57778820c62e3be6ec05fb2b12d2970825
        - quay.io/konveyor/tackle2-addon@sha256:35be344bbd3393f5634f52aafd21e9c3964d1e0ba5011ecad1561600d476bbe9
        - quay.io/konveyor/tackle2-operator@sha256:9688d0763d8c7812beee715a061c3c198006448855d7b891d45833f62cf869fb
        - quay.io/konveyor/postgresql-12-centos7@sha256:1287d947464fbf5275feb31d106d2feb856c6117f0eaec8d947f2e03bd8618c5
        - quay.io/openshift-community-operators/konveyor-operator@sha256:04e63481c5104bd034283d5d4b0567167f62480d2c61154b1d16dbd41c344dfb
        - quay.io/konveyor/tackle-keycloak-init@sha256:b0347e5a608352c4b7bb796b65a67d417e98ba4896db71a487fa26243214cfcf
        - quay.io/konveyor/tackle-pathfinder@sha256:f9c5aa49f1d27f477cdd82c21441ae0287acdcdc9b2b3fcf197884007dc5f7dd
        - quay.io/konveyor/tackle2-hub@sha256:3d15d158ffb6f1fc4ca5aaf29a12173fe344c289773902c9161056bdf69acc92
        - quay.io/konveyor/tackle2-ui@sha256:99650804e65e2b6cb15a37c00189d7f463e4d19a0f866a79e9c09c8420a4d028
        version: 0.1.2
      entries:
      - name: konveyor-operator.v0.1.2
        version: 0.1.2
      - name: konveyor-operator.v0.1.1
        version: 0.1.1
      - name: konveyor-operator.v0.1.0
        version: 0.1.0
      name: konveyor-0.1
    - currentCSV: konveyor-operator.v0.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "move2kube-plan",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "image": "quay.io/konveyor/tackle-addon-move2kube-plan:latest"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:1860bb099ac64d9a2af27692f0671b7240e4d19746fffa9f9ae2356ff2818e10
          createdAt: "2023-07-06T06:17:40Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.2.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)

        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-operator@sha256:1860bb099ac64d9a2af27692f0671b7240e4d19746fffa9f9ae2356ff2818e10
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle-keycloak-init@sha256:ca6c85bdf8417d4be116c2098b8d8ad5ae8b7ab0b636c4cbe4a392aa424e2d47
        - quay.io/konveyor/tackle-pathfinder@sha256:190269b061b2065ca8ba9357bf9b959a2f587a547a44769ae0afd1ac86b4b197
        - quay.io/konveyor/tackle2-addon@sha256:11693e16363bcd98249209d63a29f0c6cfffab3a4071649cbeea2fd276bc2440
        - quay.io/konveyor/tackle2-hub@sha256:d9c4f21f44098a2526474968b6d88094dca8b5eaeb9042716332c9cb67df47cd
        - quay.io/openshift-community-operators/konveyor-operator@sha256:d4c590033b1a2bcd67375465298e5cb6d136fe091abb12b8d009aa683c23ef62
        - quay.io/konveyor/postgresql-12-centos7@sha256:6016530ab1fce71d29421ce9a97b3a89fbbb126b87b1b079c6aadebb7ff5664c
        - quay.io/konveyor/tackle2-ui@sha256:d10c1e717d160c5eb2581649a8dd7cdf4922a74d92db014f72f42a48a3134341
        - quay.io/konveyor/tackle2-addon-windup@sha256:538dfdb134d53a876d126dbd16679638584a606ef2b9e8fbe69ed1f29733c03a
        version: 0.2.1
      entries:
      - name: konveyor-operator.v0.2.1
        version: 0.2.1
      - name: konveyor-operator.v0.2.0
        version: 0.2.0
      name: konveyor-0.2
    - currentCSV: konveyor-operator.v0.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:cd2305373f50ce927393e43f5735915e46c32d6f8a76091ee2808218885bba72
          createdAt: "2024-05-02T22:12:42Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.3.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-operator@sha256:cd2305373f50ce927393e43f5735915e46c32d6f8a76091ee2808218885bba72
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:51bda0c6577c15684583d607a4f0cebef760814102423f4b2025016093a19fc1
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:848db711d9e8a329b689b40003293fce19c43faedd31afd80d9ae9d5c11cda49
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle2-ui@sha256:bbf58d2ea613489f91efae450421afafb9052416b0d7971606e2729e89fd7de6
        - quay.io/konveyor/origin-oauth-proxy@sha256:05f6bd1216b921b1f47a3821f0e22b84ed6b141bb2ada474c12bd9fde613108c
        - quay.io/konveyor/tackle-keycloak-init@sha256:a63702cc0cb36830a7830ed70ca344a9aacc201ba6f3c94806ca2e93160df4dd
        - quay.io/konveyor/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/konveyor/tackle2-hub@sha256:bf8803721d06d1a39251e22892343a013d5ef0fb4c1883c95e1eb55aa683f486
        version: 0.3.2
      entries:
      - name: konveyor-operator.v0.3.2
        version: 0.3.2
      - name: konveyor-operator.v0.3.1
        version: 0.3.1
      - name: konveyor-operator.v0.3.0
        version: 0.3.0
      name: konveyor-0.3
    - currentCSV: konveyor-operator.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:496db8ca859608d04008ac36cf7bdc9cafd7214294d33a9c5646083c361ffcb6
          createdAt: "2024-06-05T03:08:51Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.4.0'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/origin-oauth-proxy@sha256:05f6bd1216b921b1f47a3821f0e22b84ed6b141bb2ada474c12bd9fde613108c
        - quay.io/konveyor/tackle-keycloak-init@sha256:4c7e07b1fce05f7dca47edecc0ba0ce373cc38e48879cc7eed72510d2865a18e
        - quay.io/konveyor/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:e84ea36d206a8c143794e3986940377e77c7618225cad594bdf9a4047d7823dc
        - quay.io/konveyor/tackle2-hub@sha256:b87acd8e2ee4a7edc4369bc375f64e2b98bc479d09556439e2ee4d74b74970a9
        - quay.io/konveyor/tackle2-ui@sha256:cb1255fc5fa4608fc659c3455f3164664b960cc2d9a3b2208967798e3532df78
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:e29f175a799597c84f0663a66767bba24feb78f802516056b35b5beb14d9eb41
        - quay.io/konveyor/tackle2-operator@sha256:496db8ca859608d04008ac36cf7bdc9cafd7214294d33a9c5646083c361ffcb6
        version: 0.4.0
      entries:
      - name: konveyor-operator.v0.4.0
        version: 0.4.0
      name: konveyor-0.4
    - currentCSV: konveyor-operator.v0.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:474d739ed470701b628f1f9e971925ac7fbe0b543f3e36305d932b963b1225fd
          createdAt: "2024-08-27T15:48:02Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.5.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-hub@sha256:faf91ca68e24979642a44fa013b1fb9edfee415eee835ccef9dce2eb418e2909
        - quay.io/konveyor/tackle2-ui@sha256:36f29fe01d3078f0e100b24d1ed126850c5a773f4b0ae922fd4c4487de1ac29d
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:2d58f12044b0951c87c851527240196db148acb9797e6ac49f9474a6e6039d71
        - quay.io/konveyor/generic-external-provider@sha256:334a631538d31efc8d82adae4f52303336800fa3037b5055c72400918d81955c
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle-keycloak-init@sha256:5f652be5914ae6e23537b9fe02ccc9cd638c08de5462d9f58135a405c81f5287
        - quay.io/konveyor/tackle2-operator@sha256:474d739ed470701b628f1f9e971925ac7fbe0b543f3e36305d932b963b1225fd
        - quay.io/konveyor/postgresql-15-c9s@sha256:039ce764cadd03b4cfea954700139b8ceff415a9a0970baa7f2cf60f7f929174
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:2afbe8bea09904e084e026cd0a294fbe1c7b05d0e387f6633b09c5eaf4665e02
        - quay.io/konveyor/tackle2-addon-discovery@sha256:461f960bb1d29e719fb472fe9be9cf3deca17d984687957f54546a09047b0d3c
        - quay.io/konveyor/java-external-provider@sha256:33fb5d24b998f01c481a0a03e3f1bf3f7a6c93f5b662885102a0c966026e3375
        - quay.io/konveyor/origin-oauth-proxy@sha256:1db28585d10c8ccc65a38b5d4977e6566661411f51d44ec1fb8b8a562087d86c
        version: 0.5.3
      entries:
      - name: konveyor-operator.v0.5.3
        version: 0.5.3
      - name: konveyor-operator.v0.5.1
        version: 0.5.1
      - name: konveyor-operator.v0.5.0
        version: 0.5.0
      name: konveyor-0.5
    - currentCSV: konveyor-operator.v0.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:8ee143c473570efd27b6f93332dc272871e11c66cc20f381c3a1e6e5688abf68
          createdAt: "2025-03-05T21:14:52Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.6.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/postgresql-15-c9s@sha256:55f8014c1edafab8f9085228a0d207c4e98820c615be34b935ce98e942d388b1
        - quay.io/konveyor/tackle2-addon-discovery@sha256:3eb6f395c451e2c9a867871b3984a25f9f8e6ddcfe388f37fbd6d46a61a70b1e
        - quay.io/konveyor/tackle-keycloak-init@sha256:a3741269aa15edd2f9fb7df853a03a942d16a88eec114f3e54f82ef63b82adc4
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:0b5cbb322fbe96335522410376c2e8505a8302088c0e454f3e5e7e28ba7c96a6
        - quay.io/konveyor/tackle2-hub@sha256:52a8b9be038fbfbc4e22172a4a8c7191d2b06fd8670e5df2ec442e3ce00d8c8a
        - quay.io/konveyor/tackle2-ui@sha256:12b0eda13a63508b9c13d4f9309bbfbe19d564627cf0de672307af1a6ec993fb
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle2-operator@sha256:8ee143c473570efd27b6f93332dc272871e11c66cc20f381c3a1e6e5688abf68
        - quay.io/konveyor/generic-external-provider@sha256:27c1731859a4a639d2750cff8d1246281f4b0466bb5b069169c3e170c3c19b30
        - quay.io/konveyor/java-external-provider@sha256:15148cde9a6fedef2207fe36f0ac3bd1ecdc6e3ac76f1cbec9eb97ffcf247231
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/origin-oauth-proxy@sha256:1db28585d10c8ccc65a38b5d4977e6566661411f51d44ec1fb8b8a562087d86c
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:7b8bdecbe3b3def1ec810ad53f604c7a71daebcfa7433cbb3a0db937580d087c
        version: 0.6.1
      entries:
      - name: konveyor-operator.v0.6.1
        version: 0.6.1
      - name: konveyor-operator.v0.6.0
        version: 0.6.0
      name: konveyor-0.6
    - currentCSV: konveyor-operator.v0.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:f5870bc26b2a07ddacf00ed5b5f7df7d1068489010a80bcc543686c6c9576fbb
          createdAt: "2025-07-10T15:16:17Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.7.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/tackle-keycloak-init@sha256:dab4cb1229c8a729d14b4cecb4aa3b5c4d48e94c36e84d785c922fc08d120617
        - quay.io/konveyor/tackle2-addon-discovery@sha256:60951801aa539ee59cd43f3c5f42a2ca751ca70e995cbb258b7d55ebb24d8450
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:7ed52ea9b95650241b5c2c01914775e29be23f7ed75fabb6e7c71969f3f0728f
        - quay.io/konveyor/tackle2-operator@sha256:f5870bc26b2a07ddacf00ed5b5f7df7d1068489010a80bcc543686c6c9576fbb
        - quay.io/konveyor/generic-external-provider@sha256:facca8861559a658710ad3aef8b325731595bf944cce1907715d6efd33887072
        - quay.io/konveyor/tackle2-hub@sha256:52f66607f3134a4165ce691c6e9ce992d93927e9591055daafdc1bfc1dd09dd9
        - quay.io/konveyor/tackle2-ui@sha256:f87b04762fd163f40c49f3bcffd473f0c3f80a643576c6a3e2c2b4a14395c09f
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:16c4f165143b8bab7f3eb08c815c2cae0dbf7fffd9ce7a625357be5806c24c5c
        - quay.io/konveyor/origin-oauth-proxy@sha256:2c811da843057119b246784f21dc7eec490669a8569e8295d8e914cdce555b24
        - quay.io/konveyor/postgresql-15-c9s@sha256:41460103a0bab189cd77acb6e741d9c5a6d3506479f7e56df40eb156d9b2cadd
        - quay.io/konveyor/java-external-provider@sha256:a0ef733e9fce3845d02b5360440add85427acad697d2157ef92242dec06bd73b
        version: 0.7.1
      entries:
      - name: konveyor-operator.v0.7.1
        version: 0.7.1
      - name: konveyor-operator.v0.7.0
        version: 0.7.0
      name: konveyor-0.7
    - currentCSV: konveyor-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:68b6672fccdf54c65cc83f4c82db023053d6b61409bea880f58b53ccfea7b1ed
          createdAt: "2025-09-29T20:41:09Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.8.0'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:8c82ad880ca2a2d5cd4b08125feca16d13d014d15f4f77677306086d1067f9aa
        - quay.io/konveyor/tackle2-ui@sha256:f3f7380be65ff1fb3459c37a3d4865354bab685dc836893f78221f16ba579f70
        - quay.io/konveyor/tackle2-addon-discovery@sha256:96a5b37834fbed9506014bcbd909258081fd833ef9e16daa104effd0e3a3c6ea
        - quay.io/konveyor/kantra@sha256:a5b5591a51143574a6ce6678b141b9cd3e14328c6fad773412dde21b442fe364
        - quay.io/konveyor/generic-external-provider@sha256:c7b6618bfff81d73f1b455963107ffdaf19334e6552ce076c009476da3f37f21
        - quay.io/konveyor/tackle-keycloak-init@sha256:c0051b8c3a3c891fe12012623aee775080ecb47af8a4e75b8be8b0b4855d9f2c
        - quay.io/konveyor/tackle2-hub@sha256:b3e6db1ffc195143b8e5d54b60949256e154b0f8b667736512a084e015cdf2a7
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:c28522543b039454d2d97b48198d099ac0b8211cbc58f13468d5f70b9f69b037
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/origin-oauth-proxy@sha256:8988f14db7dde3edcaed0541cecb0b4fd58fab9dbaffb79a6c1c4aee13b9bd73
        - quay.io/konveyor/tackle2-addon-platform@sha256:d0280ade44ba5e15210c07342608576b38e6993af2e479740675a4706cd2c875
        - quay.io/konveyor/java-external-provider@sha256:8eab08a04e98051f89352250d63523a5b591f35a6497f5d69a5a9d556a94abf9
        - quay.io/konveyor/postgresql-15-c9s@sha256:af275f35a307367dcee9a339a6903cf79e3a8a41cabf79fb7cea7015895f0b58
        - quay.io/konveyor/kai-solution-server@sha256:bab6e224c50de5b44cc37ce0297a3b91255efc08c1ad0fccf14fef9e5182775f
        - quay.io/konveyor/tackle2-operator@sha256:68b6672fccdf54c65cc83f4c82db023053d6b61409bea880f58b53ccfea7b1ed
        version: 0.8.0
      entries:
      - name: konveyor-operator.v0.8.0
        version: 0.8.0
      name: konveyor-0.8
    - currentCSV: konveyor-operator.v0.7.0-rc.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
          createdAt: "2025-05-21T17:12:48Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.7.0-rc.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-ui@sha256:afe9141366a23c072286517e9af5436d14fd1df775aaa2fa13c3911764515777
        - quay.io/konveyor/origin-oauth-proxy@sha256:6c2847fd9667938b1d1294d988038e885e43cd9fb378862dae3419ce4f21631f
        - quay.io/konveyor/tackle-keycloak-init@sha256:c3124971dc31be9201de2a6a1f6b2f886adf4c96731188dd5e750798cde3cfe7
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:46150725a2adbde8dfdc2250614d437a50e64bbf0b4562dabc73715a287de67b
        - quay.io/konveyor/tackle2-addon-discovery@sha256:89d2b0f8636897eb4dc1957a74a5b5041c0f3267a747adcf2bc6ca56b17b9937
        - quay.io/konveyor/generic-external-provider@sha256:de55f78939576c110eb6f084a7ca51338fedba699fbb5135f23392783a5d7b95
        - quay.io/konveyor/java-external-provider@sha256:61ab20e37916abfeeadde685336660f0e8bbf519403d1f7100d43c1e42a72fbd
        - quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:fbf82685700aaea953a99e98e0c28b56e54ca6972e390f44c07957aa8df29442
        - quay.io/konveyor/postgresql-15-c9s@sha256:012cd6611aa9d3f4e0a82636d6817f381c19e3b0809199216fbe7fa3396a2ef5
        - quay.io/konveyor/tackle2-hub@sha256:bed834eb5488eef23b0d1e8af194b0646cf74c39c197e0d57acc5aed2299d9f5
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        version: 0.7.0-rc.1
      entries:
      - name: konveyor-operator.v0.7.0-rc.1
        version: 0.7.0-rc.1
      - name: konveyor-operator.v0.6.0-rc.2
        version: 0.6.0-rc.2
      - name: konveyor-operator.v0.6.0-rc.1
        version: 0.6.0-rc.1
      - name: konveyor-operator.v0.5.0-rc.1
        version: 0.5.0-rc.1
      - name: konveyor-operator.v0.3.0-rc.4
        version: 0.3.0-rc.4
      - name: konveyor-operator.v0.3.0-rc.3
        version: 0.3.0-rc.3
      - name: konveyor-operator.v0.3.0-rc.2
        version: 0.3.0-rc.2
      - name: konveyor-operator.v0.3.0-rc.1
        version: 0.3.0-rc.1
      name: rc
    - currentCSV: konveyor-operator.v0.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:33cf01f19a7043bcc5bdb12a3ed6bde7a9094981aa2383554111ebec9b4ba498
          createdAt: "2025-03-26T20:25:41Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.6.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle-keycloak-init@sha256:e32fa48351f410361e8bc100303deeb40d8a66d7eefb0cf7b1bc16e067a9a795
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:734752be111a97e4b7e0030d563c32883f419ad031b2f350cb8e7333f2f37de3
        - quay.io/konveyor/tackle2-ui@sha256:3c568c6047a044095080b6013b643a4041deae7b45936a443d4c4d708a81b945
        - quay.io/konveyor/tackle2-operator@sha256:33cf01f19a7043bcc5bdb12a3ed6bde7a9094981aa2383554111ebec9b4ba498
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/origin-oauth-proxy@sha256:1db28585d10c8ccc65a38b5d4977e6566661411f51d44ec1fb8b8a562087d86c
        - quay.io/konveyor/tackle2-addon-discovery@sha256:1b89266d6bdfa497ba8137e0d33ff53785ac476dd96bf4fd9a185ef0ddf513ce
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:18ba5c587dc613f9c1a8bc9e66081e52f3a37eedeea5e75881e628e9c35ef460
        - quay.io/konveyor/generic-external-provider@sha256:bc1112352f1a2c3172c5e7d5e637b5c5a69bf7d98b78f494fa593e8872e5cfd1
        - quay.io/konveyor/java-external-provider@sha256:fe85689b57125d678df685012b93c8a567fcb9251777cd711e9b82bdb22a734c
        - quay.io/konveyor/tackle2-hub@sha256:0df49087d0c9341c2120a7c3aa2ba7907c056f94e1602ffd0496ca7113c75382
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/postgresql-15-c9s@sha256:7957d3b272b9f4e469bdc0c514ec9e70e8fbdc34a7250b4f4c62f9bb73cbf08d
        version: 0.6.2
      entries:
      - name: konveyor-operator.v0.6.2
        version: 0.6.2
      name: release-0.6
    - currentCSV: konveyor-operator.v0.7.0-rc.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
          createdAt: "2025-05-21T17:12:48Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.7.0-rc.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/origin-oauth-proxy@sha256:6c2847fd9667938b1d1294d988038e885e43cd9fb378862dae3419ce4f21631f
        - quay.io/konveyor/tackle-keycloak-init@sha256:c3124971dc31be9201de2a6a1f6b2f886adf4c96731188dd5e750798cde3cfe7
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:fbf82685700aaea953a99e98e0c28b56e54ca6972e390f44c07957aa8df29442
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/tackle2-ui@sha256:afe9141366a23c072286517e9af5436d14fd1df775aaa2fa13c3911764515777
        - quay.io/konveyor/postgresql-15-c9s@sha256:012cd6611aa9d3f4e0a82636d6817f381c19e3b0809199216fbe7fa3396a2ef5
        - quay.io/konveyor/tackle2-addon-discovery@sha256:89d2b0f8636897eb4dc1957a74a5b5041c0f3267a747adcf2bc6ca56b17b9937
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:46150725a2adbde8dfdc2250614d437a50e64bbf0b4562dabc73715a287de67b
        - quay.io/konveyor/tackle2-hub@sha256:bed834eb5488eef23b0d1e8af194b0646cf74c39c197e0d57acc5aed2299d9f5
        - quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
        - quay.io/konveyor/generic-external-provider@sha256:de55f78939576c110eb6f084a7ca51338fedba699fbb5135f23392783a5d7b95
        - quay.io/konveyor/java-external-provider@sha256:61ab20e37916abfeeadde685336660f0e8bbf519403d1f7100d43c1e42a72fbd
        version: 0.7.0-rc.1
      entries:
      - name: konveyor-operator.v0.7.0-rc.1
        version: 0.7.0-rc.1
      name: release-0.7
    defaultChannel: alpha
    packageName: konveyor-operator
    provider:
      name: Konveyor
      url: https://www.konveyor.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Korrel8r
      provider-url: https://github.com/korrel8r/korrel8r
    name: korrel8r
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: korrel8r.v0.1.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "korrel8r.openshift.io/v1alpha1",
                "kind": "Korrel8r",
                "metadata": {
                  "name": "korrel8r",
                  "namespace": "korrel8r"
                },
                "spec": {
                  "debug": {
                    "verbose": 1
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional,Monitoring,Logging & Tracing
          containerImage: quay.io/korrel8r/operator:0.1.8
          createdAt: "2024-09-27T17:45:00Z"
          description: Correlate cluster resources and observability data.
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "korrel8r.openshift.io/v1alpha1",
              "kind": "Korrel8r",
              "metadata": {
                "name": "korrel8r",
                "namespace": "korrel8r"
              }
            }
          operatorframework.io/suggested-namespace: korrel8r
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/korrel8r/korrel8r
          support: Korrel8r Project
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Korrel8r is a service that correlates observabililty signals
              in the cluster.
            displayName: Korrel8r
            kind: Korrel8r
            name: korrel8rs.korrel8r.openshift.io
            version: v1alpha1
        description: |
          Korrel8r helps navigate from problem symptoms to related resources and signal data that can reveal the cause.
          It can follow relationships between disjointed observability "silos" (logs, metrics, alerts and more) to bring together all the data available to solve a problem.
          This operator allows Korrel8r to be deployed as a cluster service with a REST API.
          It can be used as a back-end for data correlation by the OpenShift console and other tools.
        displayName: Korrel8r
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - signal
        - correlation
        links:
        - name: Documentation
          url: https://korrel8r.github.io/korrel8r
        - name: Source Code and Issues
          url: https://github.com/korrel8r/korrel8r
        maintainers:
        - email: korrel8r@gmail.com
          name: Korrel8r Project
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Korrel8r
          url: https://github.com/korrel8r/korrel8r
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/korrel8r@sha256:f00f8a7e2011bcc97d87fc7f5bb40a19d6b5737d1f5d7f3b2322ec39009c0618
        - quay.io/korrel8r/operator:0.1.8
        version: 0.1.8
      entries:
      - name: korrel8r.v0.1.8
        version: 0.1.8
      - name: korrel8r.v0.1.7
        version: 0.1.7
      - name: korrel8r.v0.1.5
        version: 0.1.5
      - name: korrel8r.v0.1.3
        version: 0.1.3
      - name: korrel8r.v0.1.2
        version: 0.1.2
      - name: korrel8r.v0.0.8
        version: 0.0.8
      name: stable
    defaultChannel: stable
    packageName: korrel8r
    provider:
      name: Korrel8r
      url: https://github.com/korrel8r/korrel8r
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Randoli
      provider-url: https://www.randoli.io
    name: app-insights-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: app-insights-operator.v1.17.9-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "appinsights.randoli/v1beta1",
                "kind": "RandoliAgent",
                "metadata": {
                  "name": "randoli",
                  "namespace": "randoli-agents"
                },
                "spec": {
                  "costManagement": {
                    "opencost": {
                      "exporter": {
                        "image": {
                          "tag": "1.112.1"
                        }
                      }
                    },
                    "vpaOperator": {
                      "enabled": false
                    }
                  },
                  "logs": {
                    "vector": {
                      "agent": {
                        "containerSecurityContext": {
                          "privileged": true
                        }
                      }
                    }
                  },
                  "network": {
                    "standaloneConsole": {
                      "enable": true
                    }
                  },
                  "observability": {
                    "netobserv": {
                      "enabled": false
                    },
                    "otel": {
                      "operator": {
                        "enabled": false
                      }
                    }
                  },
                  "resources": {
                    "limits": {
                      "memory": "2Gi"
                    },
                    "requests": {
                      "cpu": "50m",
                      "memory": "512Mi"
                    }
                  },
                  "securityContext": {
                    "fsGroup": 1001
                  },
                  "tags": {
                    "costManagement": false,
                    "observability": false
                  }
                }
              }
            ]
          categories: Developer Tools
          containerImage: docker.io/randoli/app-insights-operator:1.17.9-1@sha256:80858b56529695f8ee2750a0f1cc1b300a58ff7563af853f61b421573842fef6
          createdAt: "2025-12-15T21:20:19Z"
          description: Randoli Agent connects OpenShift clusters to Randoli Observability
            & Cost Management.
          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.properties: '[]'
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Randoli
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: RandoliAgent
            name: randoliagents.appinsights.randoli
            version: v1beta1
        description: |-
          This operator provides a container-based agent to be installed in your OpenShift clusters for connecting to Randoli Observability & Cost Management platforms

          Randoli Observability is built on the strong foundation provided by OpenShift & OpenTelemetry.

          AI driven capabilities reduces MTTR by 40% - [learn more](https://www.randoli.io/solutions/sre-agent)

          The platform stores & analyzes telemetry locally & ingest only signals, reducing the cost by 50-70% compared to our competitors. - [learn more](https://www.randoli.io)

          Your logs & traces never leave your environment, preserving data security & sovereignty

          ***Analyze logs, traces & metrics locally reduce cost by 50-70%***

          Our innovative approach separates control plane from data plane resulting in significant cost savings.
          You control retention, data security & sovereignty.

          Telemetry Analyzed Locally to Extract Signals
          Retrieve Telemetry On-Demand, During Investigation
          Pay for Signals not Raw Telemetry Ingestion

          ***OpenTelemetry Native***

          Randoli Observability is OpenTelemetry native, providing you with a vendor nuetral approach for instrumenting, collecting & processing of telemetry data.
          This avoid vendor lock-in and puts you in control of your own telemetry data.

          ***AI driven Observability & Incident Management reduces MTTR***

          Reduce your MTTR (Mean Time To Resolution) by 40%
          Our SRE Agent works alongside your team to

          Proactively detect issues
          Execute preapproved Runbooks
          Create Issue Reports & Incident Reports

          ***Real time log monitoring within your environment***

          Automatically detect recurring issues directly from your application logs, with no data ever leaving your environment.

          Local log scanning with zero egress
          Proactive real-time detection of recurring issues
          Complete data privacy within your environment

          ***Gen AI Observability***

          Monitor cost, latency, and reliability of your LLM applications, without adding a separate stack or agent.

          View model-level usage, latency, and token breakdowns
          Trace end-to-end performance across LLM and infrastructure layers
          Track request duration, error rates, and token usage per model
          Works out-of-the-box with OpenAI, Claude, HuggingFace, Llama, and more

          ***Cost Monitoring & Chargeback***

          Cost visiblity & monitoring helps organizations analysize & optimize their costs with actionable insights.
          Cost analytics provides breakdowns by resources, workloads, namespaces & cost-groups helping you understand the make up of your OpenShift cluster costs.
          Efficiency & Right-Sizing insights helps you optimize your workloads to find the right balance between cost savings & performance.
          Cost Alerts helps you understand cost spikes and a breakdown of resources & workloads that contributed to the spike, helping you to take corrective action if need be.
          Attribute OpenShift & shared platform costs as well as application costs to business units.

          **Prerequisites**

          If you are using the Randoli Observability platform, you will need to install the following Operators:
          - Red Hat build of OpenTelemetry Operator
          - Network Observability

          If you are using the Randoli Cost Management platform, you will need to install the following Operator:
          - VerticalPodAutoscaler

          For additional information please use our Openshift installation guide here: [https://docs.insights.randoli.io/agent/kubernetes_agent/openshift](https://docs.insights.randoli.io/agent/kubernetes_agent/openshift)

           **Randoli Observability for Kubernetes**

          [Product Page](https://www.randoli.io/product/kubernetes-observability)

          **Randoli Cost Management for Kubernetes**

          [Product Page](https://www.randoli.io/product/kubernetes-cost-management)
        displayName: Randoli Agent
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - developer tools
        - insights
        - monitoring
        links:
        - name: Randoli Observability for Kubernetes
          url: https://www.randoli.io/product/kubernetes-observability
        - name: Randoli Cost Management for Kubernetes
          url: https://www.randoli.io/product/kubernetes-cost-management
        maintainers:
        - email: contact@randoli.ca
          name: Randoli Inc.
        maturity: beta
        minKubeVersion: 1.24.0
        provider:
          name: Randoli
          url: https://www.randoli.io
        relatedImages:
        - docker.io/randoli/app-insights-operator:1.17.9-1@sha256:80858b56529695f8ee2750a0f1cc1b300a58ff7563af853f61b421573842fef6
        - registry.connect.redhat.com/randoli/app-insights-operator@sha256:1e76d6a502e932161a316e12047485fd2b6ef628caccf043efb81be76ae12ed8
        version: 1.17.9-1
      entries:
      - name: app-insights-operator.v1.17.9-1
        version: 1.17.9-1
      name: stable
    defaultChannel: stable
    packageName: app-insights-operator
    provider:
      name: Randoli
      url: https://www.randoli.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-hbase-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hbase-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/hbase-operator@sha256:ecb52aee1013aef272f7aecedfda9de755f25ed68cda6871acaacde5aac367d7
          description: Stackable Operator for Apache HBase
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/hbase-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for HbaseClusterSpec via `CustomResource`
            displayName: hbaseclusters.hbase.stackable.tech
            kind: HbaseCluster
            name: hbaseclusters.hbase.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache HBase
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hbase
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/hbase-operator@sha256:ecb52aee1013aef272f7aecedfda9de755f25ed68cda6871acaacde5aac367d7
        - registry.connect.redhat.com/stackable/stackable-apache-hbase-operator:25.11.0
        version: 25.11.0
      entries:
      - name: hbase-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-hbase-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: eG Innovations
      provider-url: https://www.eginnovations.com
    name: eginnovations-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eginnovations-operator.v0.0.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eginnovations.com/v1beta1",
                "kind": "EgUniversalAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "eginnovations-operator"
                  },
                  "name": "eguniversalagent",
                  "namespace": "egagent"
                },
                "spec": {
                  "agent": {
                    "env": [
                      {
                        "name": "EG_MANAGER",
                        "value": "Replace with eG Manager IP"
                      },
                      {
                        "name": "EG_MANAGER_PORT",
                        "value": "Replace with eG Manager Port"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "true"
          containerImage: docker.io/eginnovations/universal-agent-operator:0.0.11
          createdAt: "2025-09-11T20:08:00Z"
          description: eG Innovations provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with eG Universal Agent Operator.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/eginnovations/universal-agent-operator
          support: eG Innovations
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EgUniversalAgent is the Schema for the eguniversalagents
              API
            displayName: Eg Universal Agent
            kind: EgUniversalAgent
            name: eguniversalagents.eginnovations.com
            version: v1beta1
        description: |
          eG Innovations’ converged application and infrastructure performance monitoring capabilities provide end-to-end visibility and correlated analytics for every layer, every tier of your IT landscape.

          The eG Enterprise Universal Agent Operator automatically configures a host agent on every Kubernetes worker node. The host agent auto-discovers the worker nodes and application containers running as Pods on each node and tracks their performance and utilization levels. In-depth monitoring of applications running on containers is also provided using the same host agent. No additional agents are required for the containers.

          ### Capabilities
            * Rolls out the egagent pod per node to monitor its pods and the node itself
            * Automatic BTM profiler injection using webhook based injection for deep application monitoring and transection tracing.

          ### Installation
            1. Create the namespace "egagent" for installing eG Agent on OpenShift Cluster.

               <br />``` $ oc create ns egagent ```
            2. Add "egagent" serviceaccount to scc( Security Context Constraints ) of OpenShift Cluster as privileged using below command.

               <br />``` $ oc adm policy add-scc-to-user privileged -z egagent -n egagent ```
            2. Install eG Innovations Universal Agent operator from [OpenShift Container Platform](https://www.openshift.com/) OperatorHub.
            3. Create the eG Universal Agent CRD (Custom Resource Definition)
               a. Click "View YAML Example" and copy the yaml contents and save it to (filename).yaml on your host.
               b. To apply the CRD run the following command

               <br />``` $ oc apply -f (filename).yaml ```

          ### Required Parameters
            * EG\_MANAGER, EG\_MANAGER\_PORT - provide the ip and port of your eG Manager Installation.

          ### Advanced Options
            * Disable Certificate Checking - disable any certificate validation that may interact poorly with proxies within your cluster
            * Image Override - use a copy of the eG Iniversal Agent container image from a registry other that Docker's or Red Hat's
            * Environment variables - define environment variables for the eG Universal Agent container of for APM profiler.
            * Namespace Selectors- select a subset of namesapces to enable instrumentation for applications.

          For complete list of supported parameters and the detailed documentation available in [eG Innovations Docs](https://docs.eginnovations.com)
        displayName: eG Innovations Universal Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Monitoring
        - Tracing
        links:
        - name: eG Innovations Kubernetes Monitoring Overview
          url: https://www.eginnovations.com/documentation/Kubernetes/Introduction-to-Monitoring-Kubernetes.htm
        maintainers:
        - email: devops@eginnovations.com
          name: eG Innovations
        maturity: beta
        minKubeVersion: 1.26.0
        provider:
          name: eG Innovations
          url: https://www.eginnovations.com
        relatedImages:
        - docker.io/eginnovations/universal-agent-operator:0.0.11
        - quay.io/community-operator-pipeline-prod/eginnovations-operator@sha256:19b12c75f7a2dfab027881ed9f0b09d25e3baa936d21f7be3ec1e0177ed9fdf2
        version: 0.0.11
      entries:
      - name: eginnovations-operator.v0.0.11
        version: 0.0.11
      - name: eginnovations-operator.v0.0.10
        version: 0.0.10
      - name: eginnovations-operator.v0.0.9
        version: 0.0.9
      - name: eginnovations-operator.v0.0.8
        version: 0.0.8
      name: beta
    defaultChannel: beta
    packageName: eginnovations-operator
    provider:
      name: eG Innovations
      url: https://www.eginnovations.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Solace Corporation
      provider-url: www.solace.com
    name: pubsubplus-eventbroker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pubsubplus-eventbroker-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pubsubplus.solace.com/v1beta1",
                "kind": "PubSubPlusEventBroker",
                "metadata": {
                  "name": "non-ha-standalone-example"
                },
                "spec": {
                  "redundancy": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "true"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.10
          containerImage: registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator:1.4.0
          createdAt: "2025-07-31T19:48:36Z"
          description: The Solace PubSub+ Event Broker Operator deploys and manages
            the lifecycle of PubSub+ Event Brokers
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
          support: Solace Products
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PubSub+ Event Broker
            displayName: PubSub+ Event Broker
            kind: PubSubPlusEventBroker
            name: pubsubpluseventbrokers.pubsubplus.solace.com
            version: v1beta1
        description: |
          ## Solace PubSub+ Platform
          Solace [PubSub+ Platform](https://solace.com/products/platform/) is a complete event streaming and management platform
          for real-time enterprises. The [PubSub+ Software Event Broker](https://solace.com/products/event-broker/software/) efficiently streams
          event-driven information between applications, IoT devices, and user interfaces running in the cloud, on-premises,
          and in hybrid environments using open APIs and protocols like AMQP, JMS, MQTT, REST and WebSocket.
          It can be installed into a variety of public and private clouds, PaaS, and on-premises environments.
          Event brokers in multiple locations can be linked together in an [Event Mesh](https://solace.com/what-is-an-event-mesh/)
          to dynamically share events across the distributed enterprise.

          ## Solace PubSub+ Event Broker Operator
          Solace Pubsub+ Event Broker Operator automatically deploys and manages PubSub+ Software Event Brokers on Kubernetes and OpenShift environments.

          Features include:
          * Initial deployment configuration: Production-ready HA, non-HA or for developers
          * Rolling update for configuration changes or broker upgrades
          * Prometheus monitoring support

          ## Getting started
          Refer to the [Solace PubSub+ Event Broker Operator Quick Start](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/README.md)
        displayName: Solace PubSub+ Event Broker Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - solace
        - pubsubplus
        - pubsub+
        - pubsub
        - messaging
        - advanced event broker
        - event broker
        - event mesh
        - event streaming
        - data streaming
        - event integration
        - middleware
        links:
        - name: Operator QuickStart
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
        - name: Operator Documentation
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/docs/EventBrokerOperatorUserGuide.md
        - name: Solace.com
          url: https://solace.com
        - name: Understanding Solace Technology
          url: https://solace.com/products/platform/
        - name: Solace PubSub+ Technical Documentation
          url: https://docs.solace.com/
        - name: Solace Developer Portal
          url: https://www.solace.dev/
        - name: Solace Community
          url: https://solace.community/
        maintainers:
        - email: support@solace.com
          name: Solace R&D
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Solace Corporation
          url: www.solace.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/pubsubplus-eventbroker-operator@sha256:2761ebb89dace09a1c1ccad92c28c877f3a6f75a674191ffc3788be7fa549926
        - registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator:1.4.0
        version: 1.4.0
      entries:
      - name: pubsubplus-eventbroker-operator.v1.4.0
        version: 1.4.0
      - name: pubsubplus-eventbroker-operator.v1.3.0
        version: 1.3.0
      - name: pubsubplus-eventbroker-operator.v1.2.0
        version: 1.2.0
      - name: pubsubplus-eventbroker-operator.v1.1.2
        version: 1.1.2
      - name: pubsubplus-eventbroker-operator.v1.1.1
        version: 1.1.1
      - name: pubsubplus-eventbroker-operator.v1.1.0
        version: 1.1.0
      - name: pubsubplus-eventbroker-operator.v1.0.3
        version: 1.0.3
      - name: pubsubplus-eventbroker-operator.v1.0.2
        version: 1.0.2
      - name: pubsubplus-eventbroker-operator.v1.0.1
        version: 1.0.1
      - name: pubsubplus-eventbroker-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: pubsubplus-eventbroker-operator
    provider:
      name: Solace Corporation
      url: www.solace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: 3scale-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: 3scale-operator.v0.10.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ProxyConfigPromote",
                "metadata": {
                  "name": "proxyconfigpromote-sample"
                },
                "spec": {
                  "ProductCRName": "product1-sample",
                  "Production": true
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/3scale-rhel7-operator@sha256:7aeebb760dfda74390723c1013f0dd36c5889fe0870e1093940a82d8ebae3047
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          olm.skipRange: '>=0.9.1 <0.10.5'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: ProxyConfigPromote is the Schema for the proxyconfigpromotes
              API
            displayName: Proxy Config Promote
            kind: ProxyConfigPromote
            name: proxyconfigpromotes.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |-
          The 3scale Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          [3scale API Management](https://www.redhat.com/en/technologies/jboss-middleware/3scale) makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          [3scale api management](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management)
          [Deploying 3scale using the operator](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator)

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator
        maintainers:
        - email: msoriano+3scaleoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:88dc7a289c803248efbe151999707325b1bc0aac2d26827ea1707e46e5c71652
        - registry.redhat.io/3scale-amp2/backend-rhel8@sha256:3d5f1ef4e67f97cc9cf3accf25033e176fc59714236a5ee0f022c9eb8be7a4b1
        - registry.redhat.io/rhel8/mysql-80@sha256:158198936a7f7896e0f94133cd64c8e8902e4f86e670b56b64ff02acfd9c2855
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:6c53e72c31d1a3e13aa3ea835039f30869e465903262545463f790cb36ef5241
        - registry.redhat.io/3scale-amp2/3scale-rhel7-operator-metadata@sha256:771bd8187990f334cce038a647e9c0fe903fa7519994119bc995ccc7cfad8b6f
        - registry.redhat.io/3scale-amp2/system-rhel7@sha256:13685f7ca51ebd1e21036fb08b3c2089a66cedb63683dca39925ec0463215fc6
        - registry.redhat.io/3scale-amp2/zync-rhel8@sha256:d043efa121626ee7fded3e773b0598137bbecf5878af09dfe6b5f28ab7876de6
        - registry.redhat.io/openshift4/ose-cli@sha256:1a8caae40be21f23ba3cb48b75809a73333907033a6041927aa568b5c9290f3c
        - registry.redhat.io/3scale-amp2/3scale-rhel7-operator@sha256:7aeebb760dfda74390723c1013f0dd36c5889fe0870e1093940a82d8ebae3047
        - registry.redhat.io/3scale-amp2/memcached-rhel7@sha256:6195aec4725b71f46a3bc2982300acecafc9c4aabb4ed1bbec06de9775d49694
        - registry.redhat.io/rhscl/redis-5-rhel7@sha256:91781cf512d695339f5a92da8bfae40b42a5585d3b5627d30e6fea08afc932a4
        version: 0.10.5
      entries:
      - name: 3scale-operator.v0.10.5
        version: 0.10.5
      name: threescale-2.13
    - currentCSV: 3scale-operator.v0.11.8-mas
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Application",
                "metadata": {
                  "name": "application-sample"
                },
                "spec": {
                  "accountCR": {
                    "name": "developeraccount-sample"
                  },
                  "applicationPlanName": "plan01",
                  "description": "testing application ",
                  "name": "testApp",
                  "productCR": {
                    "name": "product-sample"
                  },
                  "suspend": false
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ProxyConfigPromote",
                "metadata": {
                  "name": "proxyconfigpromote-sample"
                },
                "spec": {
                  "ProductCRName": "product1-sample",
                  "Production": true
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-mas/3scale-rhel7-operator@sha256:0a6673eae2f0e8d95b919b0243e44d2c0383d13e2e616ac8d3f80742d496d292
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Application is the Schema for the applications API
            displayName: Application
            kind: Application
            name: applications.capabilities.3scale.net
            version: v1beta1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: ProxyConfigPromote is the Schema for the proxyconfigpromotes
              API
            displayName: Proxy Config Promote
            kind: ProxyConfigPromote
            name: proxyconfigpromotes.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |-
          The 3scale Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          [3scale API Management](https://www.redhat.com/en/technologies/jboss-middleware/3scale) makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          [3scale api management](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management)
          [Deploying 3scale using the operator](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator)

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mstoklus@redhat.com
          name: Michal Stokluska
        - email: aucunnin@redhat.com
          name: Austin Cunningham
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-mas/3scale-operator-bundle@sha256:a6c2eff926feb11da27eb9972cb86ee0ef9ca0b013afb6fe6af4f72439d557ef
        - registry.redhat.io/3scale-mas/backend-rhel8@sha256:7d07caf7b6c5a195ba4706e82f3d28c3793afab99b1a6d5a7020547c48534cdc
        - registry.redhat.io/3scale-mas/system-rhel7@sha256:b0fd85a4994502a3a2ae9ba6a7610c38af64b6cc897efac12feb4b115a484f77
        - registry.redhat.io/rhel8/redis-6@sha256:22431acc2c991b6ee6b4de0219366dee6ea745122a49a0175d5fb58ed7d9205f
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:a03a1ae7f01259192b8d7b4ecee6ddfcdc0cd9e2d24a8c2306accb93ee767135
        - registry.redhat.io/3scale-mas/memcached-rhel7@sha256:9c2aba45971c924fd55b2aab50ee8e6861a9defd3808b38ff30316727af31f9a
        - registry.redhat.io/3scale-mas/searchd-rhel7@sha256:1426e4bd4aa0eb28b479900ffc02621203886280d24997cd11818387ff30d9df
        - registry.redhat.io/3scale-mas/zync-rhel9@sha256:419eb09d1b165363d5b90df01c1fa10f1f91f03649a8758620ffa49276685feb
        - registry.redhat.io/openshift4/ose-cli@sha256:1a8caae40be21f23ba3cb48b75809a73333907033a6041927aa568b5c9290f3c
        - registry.redhat.io/rhel8/mysql-80@sha256:7c05e61c0f4f5dad6aeda136e9a1af2f04f4de3c51004e997d4eacae3778da17
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:4f807ee6e885e966853f70e1c40bbc179dc1f994b401ac868b7f2b921f9d17a0
        - registry.redhat.io/3scale-mas/3scale-rhel7-operator@sha256:0a6673eae2f0e8d95b919b0243e44d2c0383d13e2e616ac8d3f80742d496d292
        version: 0.11.8-mas
      entries:
      - name: 3scale-operator.v0.11.8-mas
        version: 0.11.8-mas
      - name: 3scale-operator.v0.11.7-mas
        version: 0.11.7-mas
      - name: 3scale-operator.v0.11.6-mas
        version: 0.11.6-mas
      - name: 3scale-operator.v0.11.5-mas
        version: 0.11.5-mas
      - name: 3scale-operator.v0.11.3-mas
        version: 0.11.3-mas
      - name: 3scale-operator.v0.11.2-mas
        version: 0.11.2-mas
      - name: 3scale-operator.v0.11.1-mas
        version: 0.11.1-mas
      - name: 3scale-operator.v0.11.0-mas
        version: 0.11.0-mas
      - name: 3scale-operator.v0.10.0-mas
        version: 0.10.0-mas
      name: threescale-mas
    defaultChannel: threescale-2.13
    packageName: 3scale-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NetApp, Inc.
      provider-url: https://www.netapp.com/
    name: trident-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trident-operator.v25.10.0-linux-only
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "trident.netapp.io/v1",
                "kind": "TridentOrchestrator",
                "metadata": {
                  "name": "trident"
                },
                "spec": {
                  "IPv6": false,
                  "debug": true,
                  "nodePrep": [],
                  "imagePullSecrets": [],
                  "imageRegistry": "",
                  "namespace": "trident",
                  "silenceAutosupport": false
                }
              }
            ]
          categories: Storage
          containerImage: registry.connect.redhat.com/netapp/trident-operator-image@sha256:5d6eb0ae4a0f68329102cfb7bace94d24c728e8385e19bec360e0acb5f99c799
          createdAt: "2025-12-10"
          description: Trident Operator, to manage NetApp Trident installations
          features.operators.openshift.io/csi: "true"
          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"
          operatorhub.io/ui-metadata-max-k8s-version: "1.34"
          operators.openshift.io/valid-subscription: No subscriptions are required
          repository: https://github.com/netapp/trident
          support: NetApp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Used to deploy NetApp Trident.
            displayName: Trident Orchestrator
            kind: TridentOrchestrator
            name: tridentorchestrators.trident.netapp.io
            version: v1
        description: |
          NetApp Trident is an open source storage provisioner and orchestrator maintained by NetApp. It enables you to create storage volumes for containerized applications managed by Docker and Kubernetes. For full release information, including patch release changes, see https://docs.netapp.com/us-en/trident/trident-rn.html.

          Due to an issue being investigated by Red Hat and NetApp, oc-mirror cannot sync Windows container images that are part of the Trident-certified operator manifest hosted on registry.connect.redhat.com. This new manifest only points to Linux-only container images. Windows users should use the Trident community operator until this issue is addressed.
        displayName: NetApp Trident
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - NetApp
        - ONTAP
        - Trident
        - storage
        - performance
        - open source
        - Astra
        - Cloud Native
        - AWS
        - Azure
        - GCP
        - Cloud Volumes
        links:
        - name: GitHub Repository
          url: https://github.com/NetApp/trident
        - name: Trident documentation
          url: https://docs.netapp.com/us-en/trident/index.html
        - name: Support policy
          url: https://mysupport.netapp.com/site/info/version-support
        - name: Release Notes
          url: https://docs.netapp.com/us-en/trident/trident-rn.html
        maintainers:
        - email: ng-trident-openshift-operator@netapp.com
          name: NetApp
        provider:
          name: NetApp, Inc.
          url: https://www.netapp.com/
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:0c128a8b6be1e921d8a95cdbb101896cae321b6de3290362df0c3467ab598ed8
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:5e7f71f2c0f1f4707812c4fecb08dfef29c2f152b2286a700e6226472a927cec
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:2eac5bcb9f90ed9e7596656f5e3713e22fc77621336b3f7a2a9d54106d835b02
        - registry.connect.redhat.com/netapp/trident-autosupport@sha256:b273f7c1922ab2273c9b99f22383be88b6511fcd77f34299e9ecb1f85081fb2b
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:62eb2f146f84101119b54c6a1c6678d97b44b35cb800299032f0678dc4af582b
        - registry.connect.redhat.com/netapp/trident-operator-image@sha256:5d6eb0ae4a0f68329102cfb7bace94d24c728e8385e19bec360e0acb5f99c799
        - registry.connect.redhat.com/netapp/trident-operator@sha256:71b470e2254906f84b792ce56459f242ea7ac61b71a40d6da665bededd58fdf7
        - registry.connect.redhat.com/netapp/trident@sha256:59331f85ed657b1af9f8b139f08d6eae00be8d7b404784dbb61c5b5eb3f4d808
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:6c98bae9351f5e70ee41a7ae3e13c78bdf01c0113a9ee21825432c2741f5e391
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:210452dfc5a504705a113b3f4e9d615b1a28904db71f41ce804e35950d22bcd8
        version: 25.10.0-linux-only
      entries:
      - name: trident-operator.v25.10.0
        version: 25.10.0
      - name: trident-operator.v25.10.0-linux-only
        version: 25.10.0-linux-only
      name: stable
    defaultChannel: stable
    packageName: trident-operator
    provider:
      name: NetApp, Inc.
      url: https://www.netapp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CNCF
      provider-url: ""
    name: etcd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: etcdoperator.v0.6.1
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          description: etcd is a distributed key value store providing a reliable
            way to store data across a cluster of machines.
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a cluster of etcd nodes.
            displayName: etcd Cluster
            kind: EtcdCluster
            name: etcdclusters.etcd.database.coreos.com
            version: v1beta2
        description: |
          etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. Itâ€™s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader. Your applications can read and write data into etcd.
          A simple use-case is to store database connection details or feature flags within etcd as key value pairs. These values can be watched, allowing your app to reconfigure itself when they change. Advanced uses take advantage of the consistency guarantees to implement database leader elections or do distributed locking across a cluster of workers.

          _The etcd Open Cloud Service is Public Alpha. The goal before Beta is to fully implement backup features._

          ### Reading and writing to etcd

          Communicate with etcd though its command line utility `etcdctl` or with the API using the automatically generated Kubernetes Service.

          [Read the complete guide to using the etcd Open Cloud Service](https://coreos.com/tectonic/docs/latest/alm/etcd-ocs.html)

          ### Supported Features
          **High availability**
          Multiple instances of etcd are networked together and secured. Individual failures or networking issues are transparently handled to keep your cluster up and running.
          **Automated updates**
          Rolling out a new etcd version works like all Kubernetes rolling updates. Simply declare the desired version, and the etcd service starts a safe rolling update to the new version automatically.
          **Backups included**
          Coming soon, the ability to schedule backups to happen on or off cluster.
        displayName: etcd
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - etcd
        - key value
        - database
        - coreos
        - open source
        links:
        - name: Blog
          url: https://coreos.com/etcd
        - name: Documentation
          url: https://coreos.com/operators/etcd/docs/latest/
        - name: etcd Operator Source Code
          url: https://github.com/coreos/etcd-operator
        maintainers:
        - email: support@coreos.com
          name: CoreOS, Inc
        maturity: alpha
        provider:
          name: CoreOS, Inc
        relatedImages:
        - quay.io/coreos/etcd-operator@sha256:bd944a211eaf8f31da5e6d69e8541e7cada8f16a9f7a5a570b22478997819943
        - quay.io/openshift-community-operators/etcd@sha256:e42581eacbc8349f40c6a4ed6d7d82d6168518e15b1a24cba36817205bd8688f
        version: 0.6.1
      entries:
      - name: etcdoperator.v0.6.1
        version: 0.6.1
      name: alpha
    - currentCSV: etcdoperator.v0.9.4-clusterwide
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdCluster",
                "metadata": {
                  "name": "example",
                  "annotations": {
                    "etcd.database.coreos.com/scope": "clusterwide"
                  }
                },
                "spec": {
                  "size": 3,
                  "version": "3.2.13"
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdRestore",
                "metadata": {
                  "name": "example-etcd-cluster-restore"
                },
                "spec": {
                  "etcdCluster": {
                    "name": "example-etcd-cluster"
                  },
                  "backupStorageType": "S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdBackup",
                "metadata": {
                  "name": "example-etcd-cluster-backup"
                },
                "spec": {
                  "etcdEndpoints": ["<etcd-cluster-endpoints>"],
                  "storageType":"S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
          createdAt: "2019-02-28 01:03:00"
          description: Create and maintain highly-available etcd clusters on Kubernetes
          repository: https://github.com/coreos/etcd-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a cluster of etcd nodes.
            displayName: etcd Cluster
            kind: EtcdCluster
            name: etcdclusters.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to backup an etcd cluster.
            displayName: etcd Backup
            kind: EtcdBackup
            name: etcdbackups.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to restore an etcd cluster from a backup.
            displayName: etcd Restore
            kind: EtcdRestore
            name: etcdrestores.etcd.database.coreos.com
            version: v1beta2
        description: |
          The etcd Operater creates and maintains highly-available etcd clusters on Kubernetes, allowing engineers to easily deploy and manage etcd clusters for their applications.

          etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. Itâ€™s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader.


          ### Reading and writing to etcd

          Communicate with etcd though its command line utility `etcdctl` via port forwarding:

              $ kubectl --namespace default port-forward service/example-client 2379:2379
              $ etcdctl --endpoints http://127.0.0.1:2379 get /

          Or directly to the API using the automatically generated Kubernetes Service:

              $ etcdctl --endpoints http://example-client.default.svc:2379 get /

          Be sure to secure your etcd cluster (see Common Configurations) before exposing it outside of the namespace or cluster.


          ### Supported Features

          * **High availability** - Multiple instances of etcd are networked together and secured. Individual failures or networking issues are transparently handled to keep your cluster up and running.

          * **Automated updates** - Rolling out a new etcd version works like all Kubernetes rolling updates. Simply declare the desired version, and the etcd service starts a safe rolling update to the new version automatically.

          * **Backups included** - Create etcd backups and restore them through the etcd Operator.

          ### Common Configurations

          * **Configure TLS** - Specify [static TLS certs](https://github.com/coreos/etcd-operator/blob/master/doc/user/cluster_tls.md) as Kubernetes secrets.

          * **Set Node Selector and Affinity** - [Spread your etcd Pods](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-node-selector-and-anti-affinity-across-nodes) across Nodes and availability zones.

          * **Set Resource Limits** - [Set the Kubernetes limit and request](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-resource-requirement) values for your etcd Pods.

          * **Customize Storage** - [Set a custom StorageClass](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#custom-persistentvolumeclaim-definition) that you would like to use.
        displayName: etcd
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - etcd
        - key value
        - database
        - coreos
        - open source
        links:
        - name: Blog
          url: https://coreos.com/etcd
        - name: Documentation
          url: https://coreos.com/operators/etcd/docs/latest/
        - name: etcd Operator Source Code
          url: https://github.com/coreos/etcd-operator
        maintainers:
        - email: etcd-dev@googlegroups.com
          name: etcd Community
        maturity: alpha
        provider:
          name: CNCF
        relatedImages:
        - quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
        - quay.io/openshift-community-operators/etcd@sha256:1d308347e5e290ac4bb7dd7aab0a1c0659d661153541d81dd30733b52d1fbf83
        version: 0.9.4-clusterwide
      entries:
      - name: etcdoperator.v0.9.4-clusterwide
        version: 0.9.4-clusterwide
      - name: etcdoperator.v0.9.2-clusterwide
        version: 0.9.2-clusterwide
      - name: etcdoperator.v0.9.0
        version: 0.9.0
      name: clusterwide-alpha
    - currentCSV: etcdoperator.v0.9.4
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "size": 3,
                  "version": "3.2.13"
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdRestore",
                "metadata": {
                  "name": "example-etcd-cluster-restore"
                },
                "spec": {
                  "etcdCluster": {
                    "name": "example-etcd-cluster"
                  },
                  "backupStorageType": "S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdBackup",
                "metadata": {
                  "name": "example-etcd-cluster-backup"
                },
                "spec": {
                  "etcdEndpoints": ["<etcd-cluster-endpoints>"],
                  "storageType":"S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
          createdAt: "2019-02-28 01:03:00"
          description: Create and maintain highly-available etcd clusters on Kubernetes
          repository: https://github.com/coreos/etcd-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a cluster of etcd nodes.
            displayName: etcd Cluster
            kind: EtcdCluster
            name: etcdclusters.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to backup an etcd cluster.
            displayName: etcd Backup
            kind: EtcdBackup
            name: etcdbackups.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to restore an etcd cluster from a backup.
            displayName: etcd Restore
            kind: EtcdRestore
            name: etcdrestores.etcd.database.coreos.com
            version: v1beta2
        description: |
          The etcd Operater creates and maintains highly-available etcd clusters on Kubernetes, allowing engineers to easily deploy and manage etcd clusters for their applications.

          etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. Itâ€™s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader.


          ### Reading and writing to etcd

          Communicate with etcd though its command line utility `etcdctl` via port forwarding:

              $ kubectl --namespace default port-forward service/example-client 2379:2379
              $ etcdctl --endpoints http://127.0.0.1:2379 get /

          Or directly to the API using the automatically generated Kubernetes Service:

              $ etcdctl --endpoints http://example-client.default.svc:2379 get /

          Be sure to secure your etcd cluster (see Common Configurations) before exposing it outside of the namespace or cluster.


          ### Supported Features

          * **High availability** - Multiple instances of etcd are networked together and secured. Individual failures or networking issues are transparently handled to keep your cluster up and running.

          * **Automated updates** - Rolling out a new etcd version works like all Kubernetes rolling updates. Simply declare the desired version, and the etcd service starts a safe rolling update to the new version automatically.

          * **Backups included** - Create etcd backups and restore them through the etcd Operator.

          ### Common Configurations

          * **Configure TLS** - Specify [static TLS certs](https://github.com/coreos/etcd-operator/blob/master/doc/user/cluster_tls.md) as Kubernetes secrets.

          * **Set Node Selector and Affinity** - [Spread your etcd Pods](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-node-selector-and-anti-affinity-across-nodes) across Nodes and availability zones.

          * **Set Resource Limits** - [Set the Kubernetes limit and request](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-resource-requirement) values for your etcd Pods.

          * **Customize Storage** - [Set a custom StorageClass](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#custom-persistentvolumeclaim-definition) that you would like to use.
        displayName: etcd
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - etcd
        - key value
        - database
        - coreos
        - open source
        links:
        - name: Blog
          url: https://coreos.com/etcd
        - name: Documentation
          url: https://coreos.com/operators/etcd/docs/latest/
        - name: etcd Operator Source Code
          url: https://github.com/coreos/etcd-operator
        maintainers:
        - email: etcd-dev@googlegroups.com
          name: etcd Community
        maturity: alpha
        provider:
          name: CNCF
        relatedImages:
        - quay.io/openshift-community-operators/etcd@sha256:f1757deff8c4048ae42cb033f3ddd7686dec2968e5a4cd61ff8f74fda69a8a09
        - quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
        version: 0.9.4
      entries:
      - name: etcdoperator.v0.9.4
        version: 0.9.4
      - name: etcdoperator.v0.9.2
        version: 0.9.2
      - name: etcdoperator.v0.9.0
        version: 0.9.0
      name: singlenamespace-alpha
    defaultChannel: singlenamespace-alpha
    packageName: etcd
    provider:
      name: CNCF
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cluster-observability-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-observability-operator.v1.3.1
      currentCSVDesc:
        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:2ecf763b02048d2cf4c17967a7b2cacc7afd6af0e963a39579d876f8f4170e3c
          createdAt: "2025-12-05T12:43:59Z"
          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.skipRange: '>=..0 <1.3.1'
          operatorframework.io/cluster-monitoring: "true"
          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/)
        apiservicedefinitions: {}
        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
          - description: Provides end-to-end observability capabilities with minimal
              configuration. Simplifies deployment and management of observability
              components such as tracing.
            displayName: Observability Installer
            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
        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:
        - registry.redhat.io/cluster-observability-operator/korrel8r-rhel9@sha256:e65c37f04f6d76a0cbfe05edb3cddf6a8f14f859ee35cf3aebea8fcb991d2c19
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-rhel9@sha256:21d4fff670893ba4b7fbc528cd49f8b71c8281cede9ef84f0697065bb6a7fc50
        - registry.redhat.io/cluster-observability-operator/troubleshooting-panel-console-plugin-rhel9@sha256:b4a6eb1cc118a4334b424614959d8b7f361ddd779b3a72690ca49b0a3f26d9b8
        - registry.redhat.io/cluster-observability-operator/cluster-observability-operator-bundle@sha256:a3b8e1f3f8d154095f365ccbb163f2cf3852d6091b1f74773a8b5a2ee5c1cee6
        - registry.redhat.io/cluster-observability-operator/cluster-health-analyzer-rhel9@sha256:48e4e178c6eeaa9d5dd77a591c185a311b4b4a5caadb7199d48463123e31dc9e
        - registry.redhat.io/cluster-observability-operator/perses-rhel9@sha256:e797cdb47beef40b04da7b6d645bca3dc32e6247003c45b56b38efd9e13bf01c
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf4-rhel9@sha256:dc18c8d6a4a9a0a574a57cc5082c8a9b26023bd6d69b9732892d584c1dfe5070
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e7e5f4c5e8ab0ba298ef0295a7137d438a42eb177d9322212cde6ba8f367912a
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-rhel9@sha256:7d662a120305e2528acc7e9142b770b5b6a7f4932ddfcadfa4ac953935124895
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-rhel9@sha256:369729978cecdc13c99ef3d179f8eb8a450a4a0cb70b63c27a55a15d1710ba27
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-prometheus-config-reloader-rhel9@sha256:9a2097bc5b2e02bc1703f64c452ce8fe4bc6775b732db930ff4770b76ae4653a
        - registry.redhat.io/cluster-observability-operator/cluster-observability-rhel9-operator@sha256:2ecf763b02048d2cf4c17967a7b2cacc7afd6af0e963a39579d876f8f4170e3c
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-admission-webhook-rhel9@sha256:42ebc3571195d8c41fd01b8d08e98fe2cc12c1caabea251aecb4442d8eade4ea
        - registry.redhat.io/cluster-observability-operator/prometheus-rhel9@sha256:1b555e21bba7c609111ace4380382a696d9aceeb6e9816bf9023b8f689b6c741
        - registry.redhat.io/cluster-observability-operator/thanos-rhel9@sha256:a223bab813b82d698992490bbb60927f6288a83ba52d539836c250e1471f6d34
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-pf5-rhel9@sha256:12d9dbe297a1c3b9df671f21156992082bc483887d851fafe76e5d17321ff474
        - registry.redhat.io/cluster-observability-operator/alertmanager-rhel9@sha256:dc62889b883f597de91b5389cc52c84c607247d49a807693be2f688e4703dfc3
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf5-rhel9@sha256:75465aabb0aa427a5c531a8fcde463f6d119afbcc618ebcbf6b7ee9bc8aad160
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-pf4-rhel9@sha256:d8c7a61d147f62b204d5c5f16864386025393453c9a81ea327bbd25d7765d611
        - registry.redhat.io/cluster-observability-operator/perses-rhel9-operator@sha256:b5c8526d2ae660fe092dd8a7acf18ec4957d5c265890a222f55396fc2cdaeed8
        - registry.redhat.io/cluster-observability-operator/dashboards-console-plugin-rhel9@sha256:093d2731ac848ed5fd57356b155a19d3bf7b8db96d95b09c5d0095e143f7254f
        version: 1.3.1
      entries:
      - name: cluster-observability-operator.v1.3.1
        version: 1.3.1
      - name: cluster-observability-operator.v1.3.0
        version: 1.3.0
      - name: cluster-observability-operator.v1.2.2
        version: 1.2.2
      - name: cluster-observability-operator.v1.2.1
        version: 1.2.1
      - name: cluster-observability-operator.v1.2.0
        version: 1.2.0
      - name: cluster-observability-operator.v1.1.1
        version: 1.1.1
      - name: cluster-observability-operator.v1.1.0
        version: 1.1.0
      - name: cluster-observability-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: cluster-observability-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: multicluster-engine
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-engine.v2.10.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "multicluster.openshift.io/v1", "kind": "MultiClusterEngine",
            "metadata": {"name": "multiclusterengine"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-12-01T19:26:35Z"
          description: Foundational components for central management of multiple
            OpenShift Container Platform and Kubernetes clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=2.8.0 <2.10.0'
          operatorframework.io/initialization-resource: '{"apiVersion":"multicluster.openshift.io/v1",
            "kind":"MultiClusterEngine","metadata":{"name":"engine"},"spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-engine
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:50eb7b0039c66db781d3905d3d24bcaca9ebe0ab07bdca1bc7bb0c406fb01d8a
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/open-cluster-management/backplane-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MultiClusterEngine defines the configuration for an instance
              of a multicluster engine, a central point providing the foundational components for managing multiple Kubernetes-based clusters. The deployment of the multicluster engine components is
              determined based on the configuration that is defined in this resource.
            displayName: MultiCluster Engine
            kind: MultiClusterEngine
            name: multiclusterengines.multicluster.openshift.io
            version: v1
        description: "Multicluster engine for Kubernetes provides the foundational
          components that are necessary for the centralized management of multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the engine to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can use the APIs that are provided by
          the engine to distribute configuration based on placement policy. Placement
          policy is a significant part of creating sophisticated multicluster management
          applications because you can select the applicable clusters.\n## Installing\nInstall
          the multicluster engine for Kubernetes operator by following instructions
          that display when you click the `Install` button. After installing the operator,
          create an instance of the `MultiClusterEngine` resource to install the engine
          components that provide the management APIs. Note: If you are using the
          engine to manage non-OpenShift Container Platform 4.x clusters, you need
          to create a Kubernetes `Secret` resource that contains your OpenShift Container
          Platform pull secret. Specify this `Secret` in the `MultiClusterEngine`
          resource, as described in the install documentation.\nYou can find additional
          installation guidance in the [documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/clusters/cluster_mce_overview#mce-install-intro). "
        displayName: multicluster engine for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mce
        - multicluster-engine
        - multiclusterengine
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/clusters/index
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/multicluster-engine/cluster-api-provider-kubevirt-rhel9@sha256:9cee55eaa91e073f07000da0db87fcca4f34af6faef16aac79415197c3026e67
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:1cceec46246ea7bef481549dce1ce91880d19a5650c9a6bc0f71f0d4092a6f95
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:762ae8d88d1b9e764adf84d5eaa964e691acbebaabf174ab0111a39b24256aff
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:ac1c6821b6bf2062144f8fc38256e97c16a55019efdff6bc0f2469899508521e
        - registry.redhat.io/multicluster-engine/assisted-installer-rhel9@sha256:aff2c378cd0a3ba36b13572a4749a54836369bcf6814b8423793bb56178b974b
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:d0d9f66e1135e46889d9148a78704a0062baf69c4690c85da37588ccfe4e23dc
        - registry.redhat.io/multicluster-engine/managedcluster-import-controller-rhel9@sha256:a4f11ed7ca7a36516a88d9e179f654174b4654d71b67f2de3255a95f9929a452
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:9b4294ee810cd554905c72fd080c3ead28a82dda81e01210552012e4a8f7dc5c
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:7b3d109adb86a87475afbb76faef4a4131f78ad092d4aa541e1c59bae611acbe
        - registry.redhat.io/rhel8/postgresql-12@sha256:3a187fc5e6c73bdfc63661b98c05b39ee4d0b3a0e1a210c49d188f1004bcb274
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:4de9442def18fff03515edcce7d4c60a756f3b2c225f8931a8ddd254d70b220d
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:78fbb9cbf3a7323a1d235e33323033957ae9e610bd0e26c493b407cfbadde258
        - registry.redhat.io/multicluster-engine/assisted-image-service-rhel9@sha256:6082629342c13caf33bde021724f5d2b9c400f838b74285a3c2d99d68a03b26c
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:d38a886f70d079eed24b9fb57030f535e37524d6f7baf6b1022be1c07cc32ab7
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:262db9468caefa25b66176fb3492c5b310c249ee1035d866b6a1faca30318ae9
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:0b9dbc00f7f579c37197ed3c5fad6e1420034f38418c21a6d83e57761763e715
        - registry.redhat.io/multicluster-engine/hypershift-addon-rhel9-operator@sha256:2b725421986812ce501db94fe0ae5df6ae3e2a8bb31be6aebe24e85cd1ac4703
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:7a0b186fbdb169ba82e3ff4a0beb8a3ac2d1ee555bd37182ee9d92a945093b66
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:20776e91176dd86feb16fb24ebcb087cea368f5778573edbc39df47a1dcbe5af
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:dd7c28e8901e1804e4832b2d3437bf8bc0e4bf7a388a94e6b9e0df07f6eee10f
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:77834bc71542f6c87c1e39c82513bd9c2007017cc4866a2d51be7694a198c950
        - registry.redhat.io/multicluster-engine/clusterlifecycle-state-metrics-rhel9@sha256:d91a68077b6cb5bc2d09cedf5aebb61dd3baae3afdb3291131f579ace7ea813e
        - registry.redhat.io/multicluster-engine/registration-rhel9@sha256:f8c7c001b14cae99e47b3b9e27707200ab17de6cac1f54927056907f068cd03a
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:1b5f810b07f1830f4b71a9c384465806ea74e264770a90cd92cadd53c7d7e1b9
        - registry.redhat.io/multicluster-engine/addon-manager-rhel9@sha256:88be52d369e7862c378fa2c6bb0b5f7801bb68d773744935816411e549d51112
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:eee2a6b322f695529d9953d06ab021f0ea0d69b9a2a2f7c3299b0ede8106c102
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:45217815cc0f2bc24d5b7ac07019af9a0ccb13f8cda14713422b8b699f3723e9
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:243858bae64bf199c479086f71c222b096555339c3461d7d1bfd47cf4e43df14
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:50eb7b0039c66db781d3905d3d24bcaca9ebe0ab07bdca1bc7bb0c406fb01d8a
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:38f65ed06100af8f55530fd79ed5064f3839863caec0f610385abeea0e3c1efb
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:bcaded7338e5171707c02a04216fa1bbaa5b57c8da9af0df91347ad6d84e0d9a
        - registry.redhat.io/multicluster-engine/cluster-api-provider-aws-rhel9@sha256:1e2fe8b42665e7bfc7938ea23a0a8efdb98a6825238f6fc90993926cd8d2317b
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:17a2e3c30f2a59f402723dc553564ec1289b6e2bbcedb9cc353285de9f5e42f4
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:b689ee70b715a65b664a2e31b5ac3b1a70d6a7d2abff28e99013094468c2e32f
        - registry.redhat.io/multicluster-engine/work-rhel9@sha256:753458389b93e2dc76f7d8766345f7bdfb3c3ba23d76e938b04e724418981e73
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:43ed1820a27580f8fa9c80d53590d2b5cd049c925cb57c8c396512bddeed3332
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:5bf1563d90623b6f224278f58ceb79ed7877d88eb3af50826fe8588735535efa
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:db28620adb4c59bc9811dcd5d0a743ce534f24e40165f84af7044a5b9d04b76a
        - registry.redhat.io/multicluster-engine/capoa-bootstrap-rhel9@sha256:1ccf3b85dde18875aa1b98797d4477c7fe725725c5b6d91b4ed21e3e3249ec36
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:e399861c4ecf3c1910dfc7e2da2b234bdc1ae1aba3a006f28285756edb2c9b2f
        version: 2.10.0
      entries:
      - name: multicluster-engine.v2.10.0
        version: 2.10.0
      name: stable-2.10
    - currentCSV: multicluster-engine.v2.9.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "multicluster.openshift.io/v1", "kind": "MultiClusterEngine",
            "metadata": {"name": "multiclusterengine"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-10-30T12:42:03Z"
          description: Foundational components for central management of multiple
            OpenShift Container Platform and Kubernetes clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.8.0 <2.9.1'
          operatorframework.io/initialization-resource: '{"apiVersion":"multicluster.openshift.io/v1",
            "kind":"MultiClusterEngine","metadata":{"name":"engine"},"spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-engine
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:a990e85f8f59435ee886d1176fdd570559036b2597d2cde523c3bb31178bc5ee
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/open-cluster-management/backplane-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MultiClusterEngine defines the configuration for an instance
              of a multicluster engine, a central point providing the foundational components for managing multiple Kubernetes-based clusters. The deployment of the multicluster engine components is
              determined based on the configuration that is defined in this resource.
            displayName: MultiCluster Engine
            kind: MultiClusterEngine
            name: multiclusterengines.multicluster.openshift.io
            version: v1
        description: "Multicluster engine for Kubernetes provides the foundational
          components that are necessary for the centralized management of multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the engine to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can use the APIs that are provided by
          the engine to distribute configuration based on placement policy. Placement
          policy is a significant part of creating sophisticated multicluster management
          applications because you can select the applicable clusters.\n## Installing\nInstall
          the multicluster engine for Kubernetes operator by following instructions
          that display when you click the `Install` button. After installing the operator,
          create an instance of the `MultiClusterEngine` resource to install the engine
          components that provide the management APIs. Note: If you are using the
          engine to manage non-OpenShift Container Platform 4.x clusters, you need
          to create a Kubernetes `Secret` resource that contains your OpenShift Container
          Platform pull secret. Specify this `Secret` in the `MultiClusterEngine`
          resource, as described in the install documentation.\nYou can find additional
          installation guidance in the [documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/clusters/cluster_mce_overview#mce-install-intro). "
        displayName: multicluster engine for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mce
        - multicluster-engine
        - multiclusterengine
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/clusters/index
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:34714647e5ae36f266b3d68b56abbd0a79c8f4e05c4c9076cd0f76dad243763d
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:52faed21cd40448dd4260909e2de026155afc207f1ee26b396a75b6099830525
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:f4c21f87dd7b725f472f51829bbc40261788e0f64c391ab136a3d6d8d9235872
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:358e8a39385d43077c2464d1cf037e3358c8eeb7e84958671acb1e996f070d25
        - registry.redhat.io/multicluster-engine/assisted-service-8-rhel8@sha256:03446585c076f6f9983dd336e1ee47c3955830b94a5e81c5c256d627ba675030
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:cd9f96afaa76332885dd7762906681e32ee7ae8ab268e036b0f9874a10a99d57
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:eee3c75b6eee3f1c0374cbbeff415ba8e28b9556edbc76d2bb01a10246c3bc6c
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:462fd64a59c1915d91d628af10415107b7ab4b03ac322a4c77687064e5f89421
        - registry.redhat.io/multicluster-engine/assisted-image-service-rhel9@sha256:86859614fae3d7f6dccc051ce90b055d1b4b6f313d9b85187bb6dc06e9d59ae2
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:083fbf9b0eb35119bb95652e3f8cc3f38f2ab66b38811f36938d19efb0f09456
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:92bb8f1e74ca9d0938d92f84f85ca047e8abc6be6df54eb6d8cd506f9393f6ba
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:ef9d311b1f5b5b386a6fc224c0fbdd8794c0ccb4e6bff11939c8332f48da8fe9
        - registry.redhat.io/multicluster-engine/registration-rhel9@sha256:b583869a3c3383670427be20a3b01fa5eba42c09fae0c8401063b0461831277c
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:03466cbe5b770e1e7b124109dac09840cdc6ed1bec56de9b42dc7cb8278d7f0d
        - registry.redhat.io/multicluster-engine/capoa-bootstrap-rhel9@sha256:951773131a05b2eb4a39ccf568b23cb633c926546e43227d5f715e73441b0b89
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:e9f7e03889d1151381a65cc41a3fc24e97b7e0169c43c91bb8dff54a6fa7e837
        - registry.redhat.io/rhel8/postgresql-12@sha256:af1ab437b165fa4ee9dfd6ade637d7de5fa556d0b3851fb8edc78afe0e6fa95e
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:61856d12d173d98c9cfa6596cc9b19be38e8f789712dd742dfa613a1d585f53b
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:eb2d84f5038c12c558bbfbc9441c18337051d0ab64264a0574232546fb9fea33
        - registry.redhat.io/multicluster-engine/cluster-api-provider-kubevirt-rhel9@sha256:929bff9558142caae866726792d7406cdfda8c343d88ede0fa5e0054433ccb27
        - registry.redhat.io/multicluster-engine/hypershift-addon-rhel9-operator@sha256:ca2178056cfc338e309462fdd7aa811a653a9513d24959fe0842f56e83c371b0
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:f626f057664e3408ea5fd778e3d2a4e80735ba858d76749a1a2056c65face4ec
        - registry.redhat.io/openshift4/ose-aws-cluster-api-controllers-rhel9@sha256:2f3b87c980d89161d93ba27ae379537ca9b603aed6de7b03e1720885231fe519
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:05b87e707d6e0b2fc4cea9a22ed5b0c23cab8a38ee4cc9e8e5b9f4059e7b2dc0
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:55388553b68ad695bbde73addc43a68fc4523c4477f979ee1e8103b79dbe0bea
        - registry.redhat.io/multicluster-engine/addon-manager-rhel9@sha256:b622c7a3e14a3d80b01c66fffaf5fee108767fef90976d7ae981d79bfdd1bdf0
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:e9b9e2dba46fdced4d9276082956b34f1223dfaf7f6da600efeee5a42317754e
        - registry.redhat.io/multicluster-engine/clusterlifecycle-state-metrics-rhel9@sha256:6028387bdc2e8cb2cc62a22ff242d4c4315ccae94fd93fa9ffd7585b1bb324f2
        - registry.redhat.io/multicluster-engine/managedcluster-import-controller-rhel9@sha256:017152eb0d925805bf2e1ff4e7964935aeb5d25b31db47b26ea1062d7ccc73ca
        - registry.redhat.io/multicluster-engine/work-rhel9@sha256:b1614c7ff4d7b125cac315b459aa819a7f7918f70aeb2f6d6f6c4c17791ca600
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:5b4a878a07934ed035dae0ab1b86eff1166124565226af5739dd8aa16ba90d50
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:e97bb0c19ad0075422f4afadf82e3a5d6bfa24bdcf484777486d0d52c9f294b2
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:147e0635014afe58dd58af3d006095c8069e4746fd753349378435363add304a
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:9556277ac54246d8132dc08c8854992b5c478706ad483e1bf2e16c5e2aa04a04
        - registry.redhat.io/multicluster-engine/assisted-installer-rhel9@sha256:9520707d782b393e2e34061c18b269a1b610143d8b06739984776101b08db322
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:878fb0eb1102cdefdfd7d266869a0a8f7cb19a1b8f0e5741f75755334e67c887
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:7c9fc8014eacde9e9e598823815acd4ea61d5128a84c79bce914fe77ae276aef
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:a990e85f8f59435ee886d1176fdd570559036b2597d2cde523c3bb31178bc5ee
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:0f813721abc29eb84b94b9ec6abbffa64d984bd7b5b76a810ef454a70da8ec93
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:9734a109c7be60f5871132379e8c88c0f92a9a991943de317040ad8550637477
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:d90b77447584cc5e03ea8a7d732a57ffcb09a4d0a0231ec41ff5a67e96a42273
        version: 2.9.1
      entries:
      - name: multicluster-engine.v2.9.1
        version: 2.9.1
      - name: multicluster-engine.v2.9.0
        version: 2.9.0
      name: stable-2.9
    defaultChannel: stable-2.10
    packageName: multicluster-engine
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: 3scale-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: 3scale-community-operator.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/3scale-operator:v0.8.2
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |
          The 3scale community Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          3scale API Management makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/3scale-operator/blob/v0.8.2/doc/operator-user-guide.md).

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Improving [documentation](https://github.com/3scale/3scale-operator/blob/v0.8.2/doc/operator-user-guide.md)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: 3scale API Management
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://github.com/3scale/3scale-operator/blob/v0.8.2/doc/operator-user-guide.md
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/3scale-operator:v0.8.2
        - quay.io/openshift-community-operators/3scale-community-operator@sha256:8197e4a96ac8949d43cda62ac2257a9b1e71f0b54f42283ee4925f88c369f873
        version: 0.8.2
      entries:
      - name: 3scale-community-operator.v0.8.2
        version: 0.8.2
      name: threescale-2.11
    - currentCSV: 3scale-community-operator.v0.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/3scale-operator:v0.9.0
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |
          The 3scale community Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          3scale API Management makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/3scale-operator/blob/v0.9.0/doc/operator-user-guide.md).

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: 3scale API Management
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://github.com/3scale/3scale-operator/blob/v0.9.0/doc/operator-user-guide.md
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/3scale-operator:v0.9.0
        - quay.io/openshift-community-operators/3scale-community-operator@sha256:728074151b245f5e0d65bd8956149f05ba22a1b6438120ebca2d85b0d7d0c837
        version: 0.9.0
      entries:
      - name: 3scale-community-operator.v0.9.0
        version: 0.9.0
      - name: 3scale-community-operator.v0.8.2
        version: 0.8.2
      name: threescale-2.12
    - currentCSV: 3scale-community-operator.v0.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ProxyConfigPromote",
                "metadata": {
                  "name": "proxyconfigpromote-sample"
                },
                "spec": {
                  "ProductCRName": "product1-sample",
                  "Production": true
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/3scale-operator:v0.10.1
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: ProxyConfigPromote is the Schema for the proxyconfigpromotes
              API
            displayName: Proxy Config Promote
            kind: ProxyConfigPromote
            name: proxyconfigpromotes.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |
          The 3scale community Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          3scale API Management makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/3scale-operator/blob/v0.10.1/doc/operator-user-guide.md).

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Improving [documentation](https://github.com/3scale/3scale-operator/blob/master/doc/operator-user-guide.md)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: 3scale API Management
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://github.com/3scale/3scale-operator/blob/v0.10.1/doc/operator-user-guide.md
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mstoklus@redhat.com
          name: Michal Stokluska
        - email: aucunnin@redhat.com
          name: Austin Cunningham
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/3scale-operator:v0.10.1
        - quay.io/openshift-community-operators/3scale-community-operator@sha256:4109698147632b858fe2787964772a1339cdebee72b75b42d9b1c5dbbbecb45c
        version: 0.10.1
      entries:
      - name: 3scale-community-operator.v0.10.1
        version: 0.10.1
      - name: 3scale-community-operator.v0.9.0
        version: 0.9.0
      - name: 3scale-community-operator.v0.8.2
        version: 0.8.2
      name: threescale-2.13
    defaultChannel: threescale-2.13
    packageName: 3scale-community-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: kiali-ossm
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kiali-operator.v2.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "Kiali",
                "metadata": {
                  "name": "kiali"
                },
                "spec": {
                  "version": "default",
                  "istio_namespace": "istio-system",
                  "deployment": {
                    "logger": {
                      "log_level": "info"
                    },
                    "view_only_mode": false
                  }
                }
              },
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "OSSMConsole",
                "metadata": {
                  "name": "ossmconsole"
                },
                "spec": {
                  "version": "default",
                  "kiali": {
                    "serviceName": "",
                    "serviceNamespace": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh-tech-preview/kiali-rhel9-operator@sha256:0612dfa52f2bf39a1d87e640409313585fedc7cfcff6d00e77bb14809d27d646
          createdAt: "2024-12-12T10:44:15Z"
          description: This productized operator provides Kiali and OSSMC. Kiali is
            the Istio observability and management Console. OSSMC is the OpenShift
            Service Mesh Console plugin, powered by Kiali.
          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: "true"
          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.skipRange: '>=1.0.0 <2.1.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/kiali/kiali
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A configuration file for a Kiali installation.
            displayName: Kiali
            kind: Kiali
            name: kialis.kiali.io
            version: v1alpha1
          - description: A configuration file for a OpenShift Service Mesh Console
              installation.
            displayName: OpenShift Service Mesh Console
            kind: OSSMConsole
            name: ossmconsoles.kiali.io
            version: v1alpha1
        description: |-
          ## About the managed application

          A Microservice Architecture breaks up the monolith into many smaller pieces
          that are composed together. Patterns to secure the communication between
          services like fault tolerance (via timeout, retry, circuit breaking, etc.)
          have come up as well as distributed tracing to be able to see where calls
          are going.

          A service mesh can now provide these services on a platform level and frees
          the application writers from those tasks. Routing decisions are done at the
          mesh level.

          Kiali works with OpenShift Service Mesh to visualize the service
          mesh topology, to provide visibility into features like circuit breakers,
          request rates and more. It offers insights about the mesh components at
          different levels, from abstract Applications to Services and Workloads.

          See [https://www.kiali.io](https://www.kiali.io) to read more.

          ### Accessing the UI

          By default, the Kiali operator exposes the Kiali UI as an OpenShift Route.

          If on OpenShift, you can create an OSSMConsole CR to have the operator
          install the OpenShift ServiceMesh Console plugin to the OpenShift Console
          thus providing an interface directly integrated with the OpenShift Console.

          ## About this Operator

          ### Kiali Custom Resource Configuration Settings

          For quick descriptions of all the settings you can configure in the Kiali
          Custom Resource (CR), see
          [the kiali.io docs](https://kiali.io/docs/configuration/kialis.kiali.io/).

          ## Prerequisites for enabling this Operator

          Kiali is a companion tool for OpenShift Service Mesh. So before you install Kiali, you must have
          already installed Service Mesh.
        displayName: Kiali Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - service-mesh
        - observability
        - monitoring
        - istio
        links:
        - name: Installation Guide
          url: https://www.kiali.io/docs/installation
        - name: Features
          url: https://www.kiali.io/docs/features
        - name: Documentation Home
          url: https://www.kiali.io
        - name: Blogs and Articles
          url: https://medium.com/kialiproject
        - name: Server and UI Source Code
          url: https://github.com/kiali/kiali
        - name: Operator Source Code
          url: https://github.com/kiali/kiali-operator
        - name: OpenShift Service Mesh Console Code
          url: https://github.com/kiali/openshift-servicemesh-plugin
        maintainers:
        - email: kiali-dev@googlegroups.com
          name: Kiali Developers Google Group
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-ossmc-rhel9@sha256:99643f294c3f92a6fc82f321cab7c756e4879fefb48fa824f1bf49ff7182658d
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-rhel9-operator@sha256:0612dfa52f2bf39a1d87e640409313585fedc7cfcff6d00e77bb14809d27d646
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-rhel9@sha256:06fde6c696a33d17b0d2f7620ec46422c82277fd17a3fe6d7319de05c732aace
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel8@sha256:e37d76dd7c7a2db79ff1e96afef19b07c3beaa8ebf0c7bd85b808908b8f0ce77
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:27a6aebffa3d049ee48050126e6107db2e07c49e9ce9297175facb6368e1e792
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:66e4d933a9d69158bf87dd45835183bf2308b77c48908ab64496c5d22c816293
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:976a31ca8cf17ac0887b8a586edfcc29eb30175802461b3114758af525e7b800
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-operator-bundle@sha256:f40e7955ac649c383134ab6e77bdd521b75b21ecd9b476436405d0674c7fc855
        version: 2.1.2
      entries:
      - name: kiali-operator.v2.1.2
        version: 2.1.2
      - name: kiali-operator.v1.89.8
        version: 1.89.8
      - name: kiali-operator.v1.89.7
        version: 1.89.7
      - name: kiali-operator.v1.89.6
        version: 1.89.6
      - name: kiali-operator.v1.89.1
        version: 1.89.1
      - name: kiali-operator.v1.73.10
        version: 1.73.10
      - name: kiali-operator.v1.73.8
        version: 1.73.8
      - name: kiali-operator.v1.73.7
        version: 1.73.7
      - name: kiali-operator.v1.73.4
        version: 1.73.4
      - name: kiali-operator.v1.65.11
        version: 1.65.11
      - name: kiali-operator.v1.65.10
        version: 1.65.10
      - name: kiali-operator.v1.65.9
        version: 1.65.9
      - name: kiali-operator.v1.65.8
        version: 1.65.8
      - name: kiali-operator.v1.65.7
        version: 1.65.7
      - name: kiali-operator.v1.65.6
        version: 1.65.6
      - name: kiali-operator.v1.57.7
        version: 1.57.7
      name: candidate
    - currentCSV: kiali-operator.v2.17.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "Kiali",
                "metadata": {
                  "name": "kiali"
                },
                "spec": {
                  "version": "default",
                  "deployment": {
                    "logger": {
                      "log_level": "info"
                    },
                    "view_only_mode": false
                  }
                }
              },
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "OSSMConsole",
                "metadata": {
                  "name": "ossmconsole"
                },
                "spec": {
                  "version": "default",
                  "kiali": {
                    "serviceName": "",
                    "serviceNamespace": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh/kiali-rhel9-operator@sha256:ee89b53ebdd6b92eccd6c4a238a43d57d245ab14e8402a86e5ecd53046d90485
          createdAt: "2025-12-04T11:03:18Z"
          description: This productized operator provides Kiali and OSSMC. Kiali is
            the Istio observability and management Console. OSSMC is the OpenShift
            Service Mesh Console plugin, powered by Kiali.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/kiali/kiali
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A configuration file for a Kiali installation.
            displayName: Kiali
            kind: Kiali
            name: kialis.kiali.io
            version: v1alpha1
          - description: A configuration file for a OpenShift Service Mesh Console
              installation.
            displayName: OpenShift Service Mesh Console
            kind: OSSMConsole
            name: ossmconsoles.kiali.io
            version: v1alpha1
        description: |-
          ## About the managed application

          A Microservice Architecture breaks up the monolith into many smaller pieces
          that are composed together. Patterns to secure the communication between
          services like fault tolerance (via timeout, retry, circuit breaking, etc.)
          have come up as well as distributed tracing to be able to see where calls
          are going.

          A service mesh can now provide these services on a platform level and frees
          the application writers from those tasks. Routing decisions are done at the
          mesh level.

          Kiali works with OpenShift Service Mesh to visualize the service
          mesh topology, to provide visibility into features like circuit breakers,
          request rates and more. It offers insights about the mesh components at
          different levels, from abstract Applications to Services and Workloads.

          See [https://www.kiali.io](https://www.kiali.io) to read more.

          ### Accessing the UI

          By default, the Kiali operator exposes the Kiali UI as an OpenShift Route.

          If on OpenShift, you can create an OSSMConsole CR to have the operator
          install the OpenShift ServiceMesh Console plugin to the OpenShift Console
          thus providing an interface directly integrated with the OpenShift Console.

          ## About this Operator

          ### Kiali Custom Resource Configuration Settings

          For quick descriptions of all the settings you can configure in the Kiali
          Custom Resource (CR), see
          [the kiali.io docs](https://kiali.io/docs/configuration/kialis.kiali.io/).

          ## Prerequisites for enabling this Operator

          Kiali is a companion tool for OpenShift Service Mesh. So before you install Kiali, you must have
          already installed Service Mesh.
        displayName: Kiali Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - service-mesh
        - observability
        - monitoring
        - istio
        links:
        - name: Installation Guide
          url: https://www.kiali.io/docs/installation
        - name: Features
          url: https://www.kiali.io/docs/features
        - name: Documentation Home
          url: https://www.kiali.io
        - name: Blogs and Articles
          url: https://medium.com/kialiproject
        - name: Server and UI Source Code
          url: https://github.com/kiali/kiali
        - name: Operator Source Code
          url: https://github.com/kiali/kiali-operator
        - name: OpenShift Service Mesh Console Code
          url: https://github.com/kiali/openshift-servicemesh-plugin
        maintainers:
        - email: kiali-dev@googlegroups.com
          name: Kiali Developers Google Group
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:5e0f84a7ea17f1969dad842e2b8a7d3d868987e93a8e07ed8c2fab029618b8b6
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:99fd79555e907c2a84d0ffabb07fbce41313f800dbcd73edc6ee39773b5cdd23
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9-operator@sha256:ee89b53ebdd6b92eccd6c4a238a43d57d245ab14e8402a86e5ecd53046d90485
        - registry.redhat.io/openshift-service-mesh/kiali-operator-bundle@sha256:35096e1737e500ad148e9f5ca2a14554a5e1b4f3104782f00e8322352e365833
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel8@sha256:3c562a0583789ef34b25715663a66fc099c418d067e8cabd3c16e149f995d3a7
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:422b7cc5c88030ad25e989b17aa7d198844fd505571f1340c3b6d08704bc96ee
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:9fb4a74a931c8c6a9f8dd0cc844a93fe0b7fff36210fe53fd8cc50b69484d742
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:bde79c700c879bae1bb67434f51b3b202d7072de771cf8d86ee65b5539b9e347
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:ee3ea20acb92c12d1808076f00a179da61e632888e8e59e0e2b8b5caf053246c
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:73c5c6021261336e50b34210f7ca4926511e8f11ff4d29f1305a0236dcc19c5d
        version: 2.17.2
      entries:
      - name: kiali-operator.v2.17.2
        version: 2.17.2
      - name: kiali-operator.v2.17.1
        version: 2.17.1
      - name: kiali-operator.v2.11.4
        version: 2.11.4
      - name: kiali-operator.v2.11.3
        version: 2.11.3
      - name: kiali-operator.v2.11.2
        version: 2.11.2
      - name: kiali-operator.v2.11.1
        version: 2.11.1
      - name: kiali-operator.v2.4.7
        version: 2.4.7
      - name: kiali-operator.v2.4.6
        version: 2.4.6
      - name: kiali-operator.v2.4.5
        version: 2.4.5
      - name: kiali-operator.v2.4.4
        version: 2.4.4
      - name: kiali-operator.v2.4.3
        version: 2.4.3
      - name: kiali-operator.v1.89.10
        version: 1.89.10
      - name: kiali-operator.v1.89.9
        version: 1.89.9
      - name: kiali-operator.v1.89.8
        version: 1.89.8
      - name: kiali-operator.v1.89.7
        version: 1.89.7
      - name: kiali-operator.v1.89.6
        version: 1.89.6
      - name: kiali-operator.v1.89.1
        version: 1.89.1
      - name: kiali-operator.v1.73.10
        version: 1.73.10
      - name: kiali-operator.v1.73.8
        version: 1.73.8
      - name: kiali-operator.v1.73.7
        version: 1.73.7
      - name: kiali-operator.v1.73.4
        version: 1.73.4
      - name: kiali-operator.v1.65.11
        version: 1.65.11
      - name: kiali-operator.v1.65.10
        version: 1.65.10
      - name: kiali-operator.v1.65.9
        version: 1.65.9
      - name: kiali-operator.v1.65.8
        version: 1.65.8
      - name: kiali-operator.v1.65.7
        version: 1.65.7
      - name: kiali-operator.v1.65.6
        version: 1.65.6
      - name: kiali-operator.v1.57.7
        version: 1.57.7
      name: stable
    defaultChannel: stable
    packageName: kiali-ossm
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Debezium Authors
      provider-url: https://debezium.io/
    name: debezium-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: debezium-operator.v2.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.4.2.Final
          createdAt: "2023-12-13T12:20:56Z"
          description: An Operator for installing and managing Debezium
          repository: https://github.com/debezium/debezium-operator
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/debezium/operator:2.4.2.Final
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:1a156d67fd5beb9ffddecab724490acb7143f8141ff3b392c6f519e76c3ad374
        version: 2.4.2
      entries:
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.4.x
    - currentCSV: debezium-operator.v2.5.3-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.5.3.Final
          createdAt: "2024-03-19T08:17:17Z"
          description: An Operator for installing and managing Debezium
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/debezium/operator:2.5.3.Final
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:645fcb18684884aef8ca4d5299f0d053d496c3a5d3f37cadd66c51d38514a680
        version: 2.5.3-final
      entries:
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.5.x
    - currentCSV: debezium-operator.v2.6.1-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.6.1.Final
          createdAt: "2024-04-12T17:18:16Z"
          description: An Operator for installing and managing Debezium
          olm.skipRange: '>2.5.3-final'
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:5a73ce3a8cc8422aeda37fd9ef97f5aecdbf8c69fb6ff488df26342e989b5c57
        - quay.io/debezium/operator:2.6.1.Final
        version: 2.6.1-final
      entries:
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.6.x
    - currentCSV: debezium-operator.v2.7.3-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.7.3.Final
          createdAt: "2024-09-20T10:31:16Z"
          description: An Operator for installing and managing Debezium
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:1dfe9180a9fca4f773c1282dfd0006daa0bb48dfbac87e352661e051107f9033
        - quay.io/debezium/operator:2.7.3.Final
        version: 2.7.3-final
      entries:
      - name: debezium-operator.v2.7.3-final
        version: 2.7.3-final
      - name: debezium-operator.v2.7.0-final
        version: 2.7.0-final
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.7.x
    - currentCSV: debezium-operator.v3.0.0-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:3.0.0.Final
          createdAt: "2024-10-02T09:55:38Z"
          description: An Operator for installing and managing Debezium
          olm.skipRange: '>2.7.3-final'
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:10671f1f6a7bab7b8bf7c8d986321484a7972b727f08947894ba7a6ccef98cd8
        - quay.io/debezium/operator:3.0.0.Final
        version: 3.0.0-final
      entries:
      - name: debezium-operator.v3.0.0-final
        version: 3.0.0-final
      - name: debezium-operator.v2.7.3-final
        version: 2.7.3-final
      - name: debezium-operator.v2.7.0-final
        version: 2.7.0-final
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-3.0.x
    - currentCSV: debezium-operator.v3.0.0-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:3.0.0.Final
          createdAt: "2024-10-02T09:55:38Z"
          description: An Operator for installing and managing Debezium
          olm.skipRange: '>2.7.3-final'
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/debezium/operator:3.0.0.Final
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:10671f1f6a7bab7b8bf7c8d986321484a7972b727f08947894ba7a6ccef98cd8
        version: 3.0.0-final
      entries:
      - name: debezium-operator.v3.0.0-final
        version: 3.0.0-final
      - name: debezium-operator.v2.7.3-final
        version: 2.7.3-final
      - name: debezium-operator.v2.7.0-final
        version: 2.7.0-final
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-latest
    defaultChannel: debezium-latest
    packageName: debezium-operator
    provider:
      name: Debezium Authors
      url: https://debezium.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/component: kmm-hub
      app.kubernetes.io/name: kmm-hub
      app.kubernetes.io/part-of: kmm
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: kernel-module-management-hub
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kernel-module-management-hub.v2.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:888a3acad339cf38a324c718e0cbe1237ca5bf2f4636b01d001752658e4cca1b
          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: "true"
          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.skipRange: '>=0.0.0 <2.0.2'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:888a3acad339cf38a324c718e0cbe1237ca5bf2f4636b01d001752658e4cca1b
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:192e08b121a04ae69aea60c35199e8f5e3c42305e1ebd024a605a371de4ab472
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:94b4ddc45cb34d4ffe794a51b99c868cb709f90cc4eb8b28284d70c526a0a226
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:62c44057a27abd41cf3daf60b8736da59a82dadb65fa6c32bef65d19bd49ea49
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:f182078b0077b6df6d47ddcab0204e963c1475486bd61b8eccb73b46eb8b2995
        version: 2.0.2
      entries:
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.0
    - currentCSV: kernel-module-management-hub.v2.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:d1c1490d4c20dc2ec31effa1af067676c4d264e3b7d4670fc11c2baf8a400001
          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.skipRange: '>=0.0.0 <2.1.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:c8b3505ed491c1bf6a913f161715c8ac483d8d9adf1fd29916ea4edad987cd67
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:d1c1490d4c20dc2ec31effa1af067676c4d264e3b7d4670fc11c2baf8a400001
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:14e100e5853444114029116255ebfb7a54e5ed51503ba969740ad48b5ca80f70
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:1a9a19df17b464d1708b2905d03b8726e4480ca1f11aa97a15ff4c049a24ea4b
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:611556d999ea97f9dbb78fec5963baa02de7a26626d7096ba63b177e3bcf9707
        version: 2.1.1
      entries:
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.1
    - currentCSV: kernel-module-management-hub.v2.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:90c1946b3f577cde0435402b04baa52dc54e5aab3bb84bd834ac026a57453296
          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: "true"
          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.skipRange: '>=0.0.0 <2.2.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:90c1946b3f577cde0435402b04baa52dc54e5aab3bb84bd834ac026a57453296
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:53fddf0b226eb579c71c86112a8d9b6b1d90a1498d6f6985932b16b8be532f35
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:c3dc9ad4ebc68cd85a074b520903a9310e72a90a73bdf4aa7c42b7ed66b7bcba
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:b1d98c0f14448ae8eb80821cbec236150c338674aae2a2b37f8d0ab0d5f1430c
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:af5a13351f960c0938c68604b772f24743c0e997701838a7784c53406471e72a
        version: 2.2.1
      entries:
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.2
    - currentCSV: kernel-module-management-hub.v2.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:f1d8f3c95f621c3faf41867c5dd4bc13fa2b9b291422d6184e6e42f1d1460259
          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: "true"
          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.skipRange: '>=0.0.0 <2.3.0'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:0d9f5293d69eebd91fffd83ae371141e640cab8f9e2d559a83714ce0f94fee08
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:f1d8f3c95f621c3faf41867c5dd4bc13fa2b9b291422d6184e6e42f1d1460259
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:f9fde334af68220943017a7491130e6a82f15e63522f5bb3931aa7d9b00ccc40
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:06ac089cc89b303e525fd71d6439b958f34ab944a72209f1cc8cb562ecfd1112
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:c5005b74402f680d11c9ea682a9a0d3f74b6ab0d01d25298d232f910f1a29c34
        version: 2.3.0
      entries:
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.3
    - currentCSV: kernel-module-management-hub.v2.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm-hub",
                    "app.kubernetes.io/name": "kmm-hub",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator
          createdAt: "2025-06-19T20:27:42Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.4.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:c4dc5f967c59e6371f344aa840fac24d8a17c127c71a2babf67d26cf6526acc5
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:2efb81137ad2981b994c62d460c917749308133a7dcad5b9a2b251e18f3052ec
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:38d811a00b88a096d9fa8f650dae132c43db7057aac61c98932494ce94d67fff
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:34bd5c4f17411d5aa71edb1d6482b9a4cffffe4983b0a599db080bb09e1ec4d2
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:fc753a1c47c870199bf3c9a6cb4ef704847d525b3df5cd7628e2cc7dd0bbb2aa
        version: 2.4.1
      entries:
      - name: kernel-module-management-hub.v2.4.1
        version: 2.4.1
      - name: kernel-module-management-hub.v2.4.0
        version: 2.4.0
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.4
    - currentCSV: kernel-module-management-hub.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm-hub",
                    "app.kubernetes.io/name": "kmm-hub",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:31Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:e0b2a92c81b68732284ee358725ecc3a8e8a7cc9b9801ffda5167da98dd91013
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:66c94d8a0470c470c15ccf880fbb7bd69b368020c93eb0bc7c9bdd84ba6825ed
        version: 2.5.1
      entries:
      - name: kernel-module-management-hub.v2.5.1
        version: 2.5.1
      - name: kernel-module-management-hub.v2.5.0
        version: 2.5.0
      - name: kernel-module-management-hub.v2.4.1
        version: 2.4.1
      - name: kernel-module-management-hub.v2.4.0
        version: 2.4.0
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.5
    - currentCSV: kernel-module-management-hub.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm-hub",
                    "app.kubernetes.io/name": "kmm-hub",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:31Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:66c94d8a0470c470c15ccf880fbb7bd69b368020c93eb0bc7c9bdd84ba6825ed
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:e0b2a92c81b68732284ee358725ecc3a8e8a7cc9b9801ffda5167da98dd91013
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        version: 2.5.1
      entries:
      - name: kernel-module-management-hub.v2.5.1
        version: 2.5.1
      - name: kernel-module-management-hub.v2.5.0
        version: 2.5.0
      - name: kernel-module-management-hub.v2.4.1
        version: 2.4.1
      - name: kernel-module-management-hub.v2.4.0
        version: 2.4.0
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: kernel-module-management-hub
    provider:
      name: Red Hat
      url: https://www.redhat.com
kind: List
metadata:
  resourceVersion: ""
apiVersion: v1
items:
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Grafana Labs
      provider-url: https://grafana.com
    name: grafana-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: grafana-operator.v5.21.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "Grafana",
                "metadata": {
                  "labels": {
                    "dashboards": "grafana-a",
                    "folders": "grafana-a"
                  },
                  "name": "grafana-a"
                },
                "spec": {
                  "config": {
                    "auth": {
                      "disable_login_form": "false"
                    },
                    "log": {
                      "mode": "console"
                    },
                    "security": {
                      "admin_password": "start",
                      "admin_user": "root"
                    }
                  }
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaAlertRuleGroup",
                "metadata": {
                  "name": "grafanaalertrulegroup-sample"
                },
                "spec": {
                  "folderRef": "test-folder-from-operator",
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "interval": "5m",
                  "rules": [
                    {
                      "condition": "B",
                      "data": [
                        {
                          "datasourceUid": "grafanacloud-demoinfra-prom",
                          "model": {
                            "datasource": {
                              "type": "prometheus",
                              "uid": "grafanacloud-demoinfra-prom"
                            },
                            "editorMode": "code",
                            "expr": "weather_temp_c{}",
                            "instant": true,
                            "intervalMs": 1000,
                            "legendFormat": "__auto",
                            "maxDataPoints": 43200,
                            "range": false,
                            "refId": "A"
                          },
                          "refId": "A",
                          "relativeTimeRange": {
                            "from": 600
                          }
                        },
                        {
                          "datasourceUid": "__expr__",
                          "model": {
                            "conditions": [
                              {
                                "evaluator": {
                                  "params": [
                                    0
                                  ],
                                  "type": "gt"
                                },
                                "operator": {
                                  "type": "and"
                                },
                                "query": {
                                  "params": [
                                    "C"
                                  ]
                                },
                                "reducer": {
                                  "params": [],
                                  "type": "last"
                                },
                                "type": "query"
                              }
                            ],
                            "datasource": {
                              "type": "__expr__",
                              "uid": "__expr__"
                            },
                            "expression": "A",
                            "intervalMs": 1000,
                            "maxDataPoints": 43200,
                            "refId": "B",
                            "type": "threshold"
                          },
                          "refId": "B",
                          "relativeTimeRange": {
                            "from": 600
                          }
                        }
                      ],
                      "execErrState": "Error",
                      "for": "5m0s",
                      "noDataState": "NoData",
                      "title": "Temperature below freezing",
                      "uid": "4843de5c-4f8a-4af0-9509-23526a04faf8"
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaContactPoint",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "grafana-operator",
                    "app.kubernetes.io/instance": "grafanacontactpoint-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "grafanacontactpoint",
                    "app.kubernetes.io/part-of": "grafana-operator"
                  },
                  "name": "grafanacontactpoint-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "name": "grafanacontactpoint-sample",
                  "settings": {
                    "email": null
                  },
                  "type": "email"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaDashboard",
                "metadata": {
                  "name": "grafanadashboard-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "json": "{\n\n  \"id\": null,\n  \"title\": \"Simple Dashboard\",\n  \"tags\": [],\n  \"style\": \"dark\",\n  \"timezone\": \"browser\",\n  \"editable\": true,\n  \"hideControls\": false,\n  \"graphTooltip\": 1,\n  \"panels\": [],\n  \"time\": {\n    \"from\": \"now-6h\",\n    \"to\": \"now\"\n  },\n  \"timepicker\": {\n    \"time_options\": [],\n    \"refresh_intervals\": []\n  },\n  \"templating\": {\n    \"list\": []\n  },\n  \"annotations\": {\n    \"list\": []\n  },\n  \"refresh\": \"5s\",\n  \"schemaVersion\": 17,\n  \"version\": 0,\n  \"links\": []\n}\n"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaDatasource",
                "metadata": {
                  "name": "grafanadatasource-sample"
                },
                "spec": {
                  "datasource": {
                    "access": "proxy",
                    "isDefault": true,
                    "jsonData": {
                      "timeInterval": "5s",
                      "tlsSkipVerify": true
                    },
                    "name": "prometheus",
                    "type": "prometheus",
                    "url": "http://prometheus-service:9090"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "plugins": [
                    {
                      "name": "grafana-clock-panel",
                      "version": "1.3.0"
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaFolder",
                "metadata": {
                  "name": "grafanafolder-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana-a"
                    }
                  },
                  "title": "Example Folder"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaLibraryPanel",
                "metadata": {
                  "name": "grafana-library-panel-inline-envs"
                },
                "spec": {
                  "envs": [
                    {
                      "name": "CUSTOM_RANGE_ENV",
                      "value": "now - 12h"
                    }
                  ],
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "jsonnet": "local myRange = std.extVar('CUSTOM_RANGE_ENV'); {\n\n  model: {}\n}\n",
                  "plugins": [
                    {
                      "name": "grafana-piechart-panel",
                      "version": "1.3.9"
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaMuteTiming",
                "metadata": {
                  "name": "mutetiming-sample"
                },
                "spec": {
                  "editable": false,
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "name": "mutetiming-sample",
                  "time_intervals": [
                    {
                      "days_of_month": [
                        "1",
                        "15"
                      ],
                      "location": "Asia/Shanghai",
                      "times": [
                        {
                          "end_time": "06:00",
                          "start_time": "00:00"
                        }
                      ],
                      "weekdays": [
                        "saturday"
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaNotificationPolicy",
                "metadata": {
                  "name": "grafananotificationpolicy-sample"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "route": {
                    "group_by": [
                      "grafana_folder",
                      "alertname"
                    ],
                    "receiver": "Grafana Cloud OnCall",
                    "routes": [
                      {
                        "object_matchers": [
                          [
                            "foo",
                            "=",
                            "bar"
                          ]
                        ],
                        "receiver": "grafana-default-email",
                        "routes": [
                          {
                            "object_matchers": [
                              [
                                "severity",
                                "=",
                                "critical"
                              ]
                            ],
                            "receiver": "Grafana Cloud OnCall"
                          }
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaNotificationPolicyRoute",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "grafana-operator",
                    "app.kubernetes.io/instance": "grafananotificationpolicyroute-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "grafananotificationpolicyroute",
                    "app.kubernetes.io/part-of": "grafana-operator"
                  },
                  "name": "grafananotificationpolicyroute-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaNotificationTemplate",
                "metadata": {
                  "name": "test"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "dashboards": "grafana"
                    }
                  },
                  "name": "test",
                  "template": "{{ define \"SlackAlert\" }}\n  [{{.Status}}] {{ .Labels.alertname }}\n  {{ .Annotations.AlertValues }}\n{{ end }}\n\n{{ define \"SlackAlertMessage\" }}\n  {{ if gt (len .Alerts.Firing) 0 }}\n    {{ len .Alerts.Firing }} firing:\n    {{ range .Alerts.Firing }} {{ template \"SlackAlert\" . }} {{ end }}\n  {{ end }}\n  {{ if gt (len .Alerts.Resolved) 0 }}\n    {{ len .Alerts.Resolved }} resolved:\n    {{ range .Alerts.Resolved }} {{ template \"SlackAlert\" . }} {{ end }}\n  {{ end }}\n{{ end }}\n\n{{ template \"SlackAlertMessage\" . }}\n"
                }
              },
              {
                "apiVersion": "grafana.integreatly.org/v1beta1",
                "kind": "GrafanaServiceAccount",
                "metadata": {
                  "name": "my-service-account"
                },
                "spec": {
                  "instanceName": "my-grafana",
                  "isDisabled": false,
                  "name": "my-service-account",
                  "role": "Admin",
                  "tokens": [
                    {
                      "expires": "2029-12-31T14:00:00+02:00",
                      "name": "my-token-a",
                      "secretName": "thatsfine"
                    },
                    {
                      "name": "my-token-b"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: ghcr.io/grafana/grafana-operator@sha256:0c74f67a26af34701639b858a51306163efd8f292206124d754c9c5e4628aeef
          createdAt: "2025-12-17T14:15:21Z"
          description: Deploys and manages Grafana instances, dashboards and data
            sources
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/grafana/grafana-operator
          support: Grafana Labs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alert rule groups that contain multiple alert rules
            displayName: Grafana Alert Rule Group
            kind: GrafanaAlertRuleGroup
            name: grafanaalertrulegroups.grafana.integreatly.org
            version: v1beta1
          - description: Contact Points
            displayName: Grafana Contact Point
            kind: GrafanaContactPoint
            name: grafanacontactpoints.grafana.integreatly.org
            version: v1beta1
          - description: Dashboards
            displayName: Grafana Dashboard
            kind: GrafanaDashboard
            name: grafanadashboards.grafana.integreatly.org
            version: v1beta1
          - description: Data Sources
            displayName: Grafana Datasource
            kind: GrafanaDatasource
            name: grafanadatasources.grafana.integreatly.org
            version: v1beta1
          - description: Folder for dashboards & alerts
            displayName: Grafana Folder
            kind: GrafanaFolder
            name: grafanafolders.grafana.integreatly.org
            version: v1beta1
          - description: Library Panel for use in dashboards
            displayName: GrafanaLibraryPanel
            kind: GrafanaLibraryPanel
            name: grafanalibrarypanels.grafana.integreatly.org
            version: v1beta1
          - description: Mute Timings that silence alerts
            kind: GrafanaMuteTiming
            name: grafanamutetimings.grafana.integreatly.org
            version: v1beta1
          - description: Notification Policy Tree
            displayName: Grafana Notification policy
            kind: GrafanaNotificationPolicy
            name: grafananotificationpolicies.grafana.integreatly.org
            version: v1beta1
          - description: GrafanaNotificationPolicyRoute is the Schema for the grafananotificationpolicyroutes
              API
            displayName: Grafana Notification Policy Route
            kind: GrafanaNotificationPolicyRoute
            name: grafananotificationpolicyroutes.grafana.integreatly.org
            version: v1beta1
          - description: Templates for use in notifications
            kind: GrafanaNotificationTemplate
            name: grafananotificationtemplates.grafana.integreatly.org
            version: v1beta1
          - description: Grafana Instances
            displayName: Grafana
            kind: Grafana
            name: grafanas.grafana.integreatly.org
            version: v1beta1
          - description: Grafana service accounts
            kind: GrafanaServiceAccount
            name: grafanaserviceaccounts.grafana.integreatly.org
            version: v1beta1
        description: Deploys and manages Grafana instances, dashboards and data sources
        displayName: Grafana Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Grafana
        - Metrics
        - Observability
        links:
        - name: Grafana Operator
          url: https://grafana.github.io/grafana-operator
        maintainers:
        - email: grafana-operator@grafana.com
          name: Grafana-operator maintainers
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Grafana Labs
          url: https://grafana.com
        relatedImages:
        - docker.io/grafana/grafana@sha256:70d9599b186ce287be0d2c5ba9a78acb2e86c1a68c9c41449454d0fc3eeb84e8
        - ghcr.io/grafana/grafana-operator@sha256:0c74f67a26af34701639b858a51306163efd8f292206124d754c9c5e4628aeef
        - quay.io/community-operator-pipeline-prod/grafana-operator@sha256:5ac32543a87b1f34e4ade94ff03a4243420a58a0249c30892fc9cdd5216104f1
        version: 5.21.2
      entries:
      - name: grafana-operator.v5.21.2
        version: 5.21.2
      - name: grafana-operator.v5.21.1
        version: 5.21.1
      - name: grafana-operator.v5.20.0
        version: 5.20.0
      - name: grafana-operator.v5.19.4
        version: 5.19.4
      - name: grafana-operator.v5.18.0
        version: 5.18.0
      - name: grafana-operator.v5.17.1
        version: 5.17.1
      - name: grafana-operator.v5.15.1
        version: 5.15.1
      name: v5
    defaultChannel: v5
    packageName: grafana-operator
    provider:
      name: Grafana Labs
      url: https://grafana.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Flux project
      provider-url: ""
    name: flux
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: flux.v2.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "helm.toolkit.fluxcd.io/v2beta1",
                "kind": "HelmRelease",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "default"
                },
                "spec": {
                    "interval": "5m",
                    "chart": {
                      "spec": {
                          "chart": "podinfo",
                          "version": "4.0.x",
                          "sourceRef": {
                            "kind": "HelmRepository",
                            "name": "podinfo",
                            "namespace": "flux-system"
                          },
                          "interval": "1m"
                      }
                    },
                    "values": {
                      "replicaCount": 2
                    }
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "GitRepository",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "dev"
                },
                "spec": {
                    "interval": "1m",
                    "ref": {
                      "branch": "master"
                    },
                    "url": "https://github.com/stefanprodan/podinfo"
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "HelmRepository",
                "metadata": {
                    "name": "stable",
                    "namespace": "default"
                },
                "spec": {
                    "url": "https://kubernetes-charts.storage.googleapis.com/",
                    "interval": "10m"
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "HelmChart",
                "metadata": {
                    "name": "redis",
                    "namespace": "default"
                },
                "spec": {
                    "chart": "redis",
                    "version": "10.5.7",
                    "sourceRef": {
                      "name": "stable",
                      "kind": "HelmRepository"
                    },
                    "interval": "5m"
                }
              },
              {
                "apiVersion": "source.toolkit.fluxcd.io/v1beta1",
                "kind": "Bucket",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "default"
                },
                "spec": {
                    "interval": "1m",
                    "provider": "generic",
                    "bucketName": "podinfo",
                    "endpoint": "minio.minio.svc.cluster.local:9000",
                    "insecure": true,
                    "secretRef": {
                      "name": "minio-credentials"
                    }
                }
              },
              {
                "apiVersion": "kustomize.toolkit.fluxcd.io/v1beta2",
                "kind": "Kustomization",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "dev"
                },
                "spec": {
                    "interval": "5m",
                    "path": "./deploy/overlays/dev",
                    "prune": true,
                    "sourceRef": {
                      "kind": "GitRepository",
                      "name": "podinfo"
                    },
                    "timeout": "2m",
                    "wait": true
                }
              },
              {
                "apiVersion": "notification.toolkit.fluxcd.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "default"
                },
                "spec": {
                    "type": "github",
                    "address": "https://github.com/stefanprodan/podinfo",
                    "secretRef": {
                      "name": "api-token"
                    }
                }
              },
              {
                "apiVersion": "notification.toolkit.fluxcd.io/v1beta1",
                "kind": "Alert",
                "metadata": {
                    "name": "webapp",
                    "namespace": "default"
                },
                "spec": {
                    "providerRef": {
                      "name": "on-call-slack"
                    },
                    "eventSeverity": "info",
                    "eventSources": [
                      {
                          "kind": "GitRepository",
                          "name": "webapp"
                      },
                      {
                          "kind": "Bucket",
                          "name": "secrets"
                      },
                      {
                          "kind": "Kustomization",
                          "name": "webapp-backend"
                      },
                      {
                          "kind": "Kustomization",
                          "name": "webapp-frontend"
                      }
                    ]
                }
              },
              {
                "apiVersion": "notification.toolkit.fluxcd.io/v1beta1",
                "kind": "Receiver",
                "metadata": {
                    "name": "github-receiver",
                    "namespace": "default"
                },
                "spec": {
                    "type": "github",
                    "events": [
                      "ping",
                      "push"
                    ],
                    "secretRef": {
                      "name": "webhook-token"
                    },
                    "resources": [
                      {
                          "kind": "GitRepository",
                          "name": "webapp"
                      },
                      {
                          "kind": "HelmRepository",
                          "name": "webapp"
                      }
                    ]
                }
              },
              {
                "apiVersion": "image.toolkit.fluxcd.io/v1beta1",
                "kind": "ImageRepository",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "flux-system"
                },
                "spec": {
                    "image": "ghcr.io/stefanprodan/podinfo",
                    "interval": "1m0s"
                }
              },
              {
                "apiVersion": "image.toolkit.fluxcd.io/v1beta1",
                "kind": "ImagePolicy",
                "metadata": {
                    "name": "podinfo",
                    "namespace": "flux-system"
                },
                "spec": {
                    "imageRepositoryRef": {
                      "name": "podinfo"
                    },
                    "policy": {
                      "semver": {
                          "range": "5.0.x"
                      }
                    }
                }
              },
              {
                "apiVersion": "image.toolkit.fluxcd.io/v1beta1",
                "kind": "ImageUpdateAutomation",
                "metadata": {
                  "name": "flux-system",
                  "namespace": "flux-system"
                },
                "spec": {
                  "interval": "1m0s",
                  "sourceRef": {
                    "kind": "GitRepository",
                    "name": "flux-system"
                  },
                  "git": {
                    "checkout": {
                      "ref": {
                        "branch": "main"
                      }
                    },
                    "commit": {
                      "author": {
                        "email": "fluxcdbot@users.noreply.github.com",
                        "name": "fluxcdbot"
                      },
                      "messageTemplate": "{{range .Updated.Images}}{{println .}}{{end}}"
                    },
                    "push": {
                      "branch": "main"
                    }
                  },
                  "update": {
                    "path": "./clusters/my-cluster",
                    "strategy": "Setters"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: ghcr.io/fluxcd/source-controller:v1.3.0
          description: Flux is a Continuous Delivery solution for Kubernetes.
          operatorframework.io/suggested-namespace: flux-system
          support: The Flux community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alert
            displayName: Alert
            kind: Alert
            name: alerts.notification.toolkit.fluxcd.io
            version: v1beta1
          - description: Alert
            displayName: Alert
            kind: Alert
            name: alerts.notification.toolkit.fluxcd.io
            version: v1beta2
          - description: Alert
            displayName: Alert
            kind: Alert
            name: alerts.notification.toolkit.fluxcd.io
            version: v1beta3
          - description: Bucket
            displayName: Bucket
            kind: Bucket
            name: buckets.source.toolkit.fluxcd.io
            version: v1beta1
          - description: Bucket
            displayName: Bucket
            kind: Bucket
            name: buckets.source.toolkit.fluxcd.io
            version: v1beta2
          - description: GitRepository
            displayName: GitRepository
            kind: GitRepository
            name: gitrepositories.source.toolkit.fluxcd.io
            version: v1
          - description: GitRepository
            displayName: GitRepository
            kind: GitRepository
            name: gitrepositories.source.toolkit.fluxcd.io
            version: v1beta1
          - description: GitRepository
            displayName: GitRepository
            kind: GitRepository
            name: gitrepositories.source.toolkit.fluxcd.io
            version: v1beta2
          - description: HelmChart
            displayName: HelmChart
            kind: HelmChart
            name: helmcharts.source.toolkit.fluxcd.io
            version: v1
          - description: HelmChart
            displayName: HelmChart
            kind: HelmChart
            name: helmcharts.source.toolkit.fluxcd.io
            version: v1beta1
          - description: HelmChart
            displayName: HelmChart
            kind: HelmChart
            name: helmcharts.source.toolkit.fluxcd.io
            version: v1beta2
          - description: HelmRelease
            displayName: HelmRelease
            kind: HelmRelease
            name: helmreleases.helm.toolkit.fluxcd.io
            version: v2
          - description: HelmRelease
            displayName: HelmRelease
            kind: HelmRelease
            name: helmreleases.helm.toolkit.fluxcd.io
            version: v2beta1
          - description: HelmRelease
            displayName: HelmRelease
            kind: HelmRelease
            name: helmreleases.helm.toolkit.fluxcd.io
            version: v2beta2
          - description: HelmRepository
            displayName: HelmRepository
            kind: HelmRepository
            name: helmrepositories.source.toolkit.fluxcd.io
            version: v1
          - description: HelmRepository
            displayName: HelmRepository
            kind: HelmRepository
            name: helmrepositories.source.toolkit.fluxcd.io
            version: v1beta1
          - description: HelmRepository
            displayName: HelmRepository
            kind: HelmRepository
            name: helmrepositories.source.toolkit.fluxcd.io
            version: v1beta2
          - description: ImagePolicy
            displayName: ImagePolicy
            kind: ImagePolicy
            name: imagepolicies.image.toolkit.fluxcd.io
            version: v1beta1
          - description: ImagePolicy
            displayName: ImagePolicy
            kind: ImagePolicy
            name: imagepolicies.image.toolkit.fluxcd.io
            version: v1beta2
          - description: ImageRepository
            displayName: ImageRepository
            kind: ImageRepository
            name: imagerepositories.image.toolkit.fluxcd.io
            version: v1beta1
          - description: ImageRepository
            displayName: ImageRepository
            kind: ImageRepository
            name: imagerepositories.image.toolkit.fluxcd.io
            version: v1beta2
          - description: ImageUpdateAutomation
            displayName: ImageUpdateAutomation
            kind: ImageUpdateAutomation
            name: imageupdateautomations.image.toolkit.fluxcd.io
            version: v1beta1
          - description: ImageUpdateAutomation
            displayName: ImageUpdateAutomation
            kind: ImageUpdateAutomation
            name: imageupdateautomations.image.toolkit.fluxcd.io
            version: v1beta2
          - description: Kustomization
            displayName: Kustomization
            kind: Kustomization
            name: kustomizations.kustomize.toolkit.fluxcd.io
            version: v1
          - description: Kustomization
            displayName: Kustomization
            kind: Kustomization
            name: kustomizations.kustomize.toolkit.fluxcd.io
            version: v1beta1
          - description: Kustomization
            displayName: Kustomization
            kind: Kustomization
            name: kustomizations.kustomize.toolkit.fluxcd.io
            version: v1beta2
          - description: OCIRepository
            displayName: OCIRepository
            kind: OCIRepository
            name: ocirepositories.source.toolkit.fluxcd.io
            version: v1beta2
          - description: Provider
            displayName: Provider
            kind: Provider
            name: providers.notification.toolkit.fluxcd.io
            version: v1beta1
          - description: Provider
            displayName: Provider
            kind: Provider
            name: providers.notification.toolkit.fluxcd.io
            version: v1beta2
          - description: Provider
            displayName: Provider
            kind: Provider
            name: providers.notification.toolkit.fluxcd.io
            version: v1beta3
          - description: Receiver
            displayName: Receiver
            kind: Receiver
            name: receivers.notification.toolkit.fluxcd.io
            version: v1
          - description: Receiver
            displayName: Receiver
            kind: Receiver
            name: receivers.notification.toolkit.fluxcd.io
            version: v1beta1
          - description: Receiver
            displayName: Receiver
            kind: Receiver
            name: receivers.notification.toolkit.fluxcd.io
            version: v1beta2
        description: |-
          [Flux](https://fluxcd.io/) is a Continuous Delivery solution for Kubernetes.
          Flux is constructed with the [GitOps Toolkit](https://toolkit.fluxcd.io/components/), a set of composable APIs and specialized tools for keeping Kubernetes clusters in sync with sources of configuration (like Git & Helm repositories), and automating updates to configuration when there is new code to deploy.

          Flux is a CNCF incubation project made for:

          - **cluster operators** who automate provision and configuration of clusters
          - **platform engineers** who build continuous delivery for developer teams
          - **app developers** who rely on continuous delivery to get their code live

          Features:

          - Source configuration from Git and Helm repositories, and S3-compatible buckets (e.g., Minio)
          - Kustomize and Helm support
          - Event-triggered and periodic reconciliation
          - Integration with Kubernetes RBAC
          - Health assessment (clusters and workloads)
          - Dependency management (infrastructure and workloads)
          - Secrets management (builtin support for Mozilla SOPS and Cloud KMS)
          - Alerting to external systems (webhook senders)
          - External events handling (webhook receivers)
          - Automated container image updates to Git (image scanning and patching)
          - Policy-driven validation (OPA, Kyverno, admission controllers)
          - Seamless integration with Git providers (GitHub, GitLab, Bitbucket)
          - Interoperability with Cluster API (CAPI) providers

          ### Steps to support bootstraping with Flux CLI

          SecComp Profile should be removed as it requires a special privilege to get the access.
          Also, it requires to enforce `runUserAs` to the same UID provided by the images to prevent OpenShift
          to alter the user id expected by our controllers.

          To do so, please specifiy a patch using the following Kustomization file, for example.

          ```yaml
          apiVersion: kustomize.config.k8s.io/v1beta1
          kind: Kustomization
          resources:
            - gotk-components.yaml
            - gotk-sync.yaml
          patches:
            - patch: |
                apiVersion: apps/v1
                kind: Deployment
                metadata:
                  name: all
                spec:
                  template:
                    spec:
                      containers:
                        - name: manager
                          securityContext:
                            runAsUser: 65534
                            seccompProfile:
                              $patch: delete
              target:
                kind: Deployment
                labelSelector: app.kubernetes.io/part-of=flux
          ```

          Then before installing Flux, please also perform the following steps to bind Flux to the `nonroot` SecurityContextConstraint (SCC). This applies to installation via OC's OLM or via Flux CLI.

          ```sh
          # replace default "flux-system" with the project/namespace name for your flux installation
          namespace="flux-system"
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:source-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:kustomize-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:helm-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:notification-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:image-automation-controller
          oc adm policy add-scc-to-user nonroot system:serviceaccount:$namespace:image-reflector-controller

          ```

          To see complete steps please refer to this [documentation](https://github.com/fluxcd/website/blob/main/content/en/docs/use-cases/openshift.md).

          If you've already installed Flux, you might need to uninstall it after applying the above pre-requisite steps.

          ### Network Policies

          This version of Flux is shipped without the normally provided network Policies.
          By default all traffic is enabled, and anyone can access the source-controller
          artifacts.

          It is not recommended to run it in production as is.

          Please visit [Flux's policies](https://github.com/fluxcd/flux2/tree/main/manifests/policies)
          to deploy the needed network policies and secure your Flux setup.

          ### Breaking Changes

          - Flux 0.18.x ships with v1beta2 of the kustomize.toolkit.fluxcd.io/Kustomization CRD.
          - Flux 0.25.x is the last Flux release where Kubernetes 1.19 is supported.

          ### Flux on OpenShift Use Cases

          - [The GitOps with Flux + OpenShift](https://www.youtube.com/watch?v=8ybCtNVP5To) talk by Andrew Block (Red Hat) showing how to setup multi-tenacy on OpenShift using Flux.
          - [Flux OpenShift Use Case](https://fluxcd.io/docs/use-cases/openshift/) on FluxCD.io
        displayName: Flux
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - flux
        - gitops
        - cd
        - continuous delivery
        - fluxcd
        - helm
        - kustomize
        links:
        - name: Homepage
          url: https://fluxcd.io/
        - name: Documentation
          url: https://fluxcd.io/docs/
        - name: Slack
          url: https://cloud-native.slack.com/messages/flux
        - name: Mailing List
          url: https://lists.cncf.io/g/cncf-flux-dev
        - name: Source Code
          url: https://github.com/fluxcd/flux2
        maintainers:
        - email: support@weave.works
          name: The Flux maintainers
        maturity: stable
        provider:
          name: The Flux project
        relatedImages:
        - ghcr.io/fluxcd/image-reflector-controller:v0.32.0
        - ghcr.io/fluxcd/kustomize-controller:v1.3.0
        - ghcr.io/fluxcd/notification-controller:v1.3.0
        - ghcr.io/fluxcd/source-controller:v1.3.0
        - quay.io/community-operator-pipeline-prod/flux@sha256:cd94037ff3055ab6ce40b0670f900248a5fd233cc67a2a4f92c1559cf9d2f3ad
        - ghcr.io/fluxcd/helm-controller:v1.0.1
        - ghcr.io/fluxcd/image-automation-controller:v0.38.0
        version: 2.3.0
      entries:
      - name: flux.v2.3.0
        version: 2.3.0
      - name: flux.v2.2.2
        version: 2.2.2
      - name: flux.v2.2.0
        version: 2.2.0
      - name: flux.v2.0.1
        version: 2.0.1
      - name: flux.v0.41.2
        version: 0.41.2
      - name: flux.v0.40.0
        version: 0.40.0
      - name: flux.v0.39.0
        version: 0.39.0
      - name: flux.v0.38.3
        version: 0.38.3
      - name: flux.v0.37.0
        version: 0.37.0
      - name: flux.v0.36.0
        version: 0.36.0
      - name: flux.v0.35.0
        version: 0.35.0
      - name: flux.v0.31.4
        version: 0.31.4
      - name: flux.v0.31.3
        version: 0.31.3
      - name: flux.v0.30.2
        version: 0.30.2
      - name: flux.v0.28.5
        version: 0.28.5
      - name: flux.v0.28.4
        version: 0.28.4
      - name: flux.v0.28.3
        version: 0.28.3
      - name: flux.v0.27.4
        version: 0.27.4
      - name: flux.v0.27.3
        version: 0.27.3
      - name: flux.v0.27.2
        version: 0.27.2
      - name: flux.v0.27.0
        version: 0.27.0
      - name: flux.v0.26.1
        version: 0.26.1
      - name: flux.v0.26.0
        version: 0.26.0
      - name: flux.v0.25.3
        version: 0.25.3
      - name: flux.v0.25.2
        version: 0.25.2
      - name: flux.v0.24.1
        version: 0.24.1
      - name: flux.v0.24.0
        version: 0.24.0
      - name: flux.v0.23.0
        version: 0.23.0
      - name: flux.v0.22.1
        version: 0.22.1
      - name: flux.v0.22.0
        version: 0.22.0
      - name: flux.v0.21.1
        version: 0.21.1
      - name: flux.v0.21.0
        version: 0.21.0
      - name: flux.v0.20.1
        version: 0.20.1
      - name: flux.v0.20.0
        version: 0.20.0
      - name: flux.v0.19.1
        version: 0.19.1
      - name: flux.v0.18.3
        version: 0.18.3
      - name: flux.v0.18.1
        version: 0.18.1
      - name: flux.v0.17.2
        version: 0.17.2
      - name: flux.v0.17.1
        version: 0.17.1
      - name: flux.v0.17.0
        version: 0.17.0
      - name: flux.v0.16.2
        version: 0.16.2
      - name: flux.v0.16.1
        version: 0.16.1
      - name: flux.v0.16.0
        version: 0.16.0
      - name: flux.v0.15.3
        version: 0.15.3
      - name: flux.v0.15.2
        version: 0.15.2
      - name: flux.v0.14.2
        version: 0.14.2
      - name: flux.v0.14.1
        version: 0.14.1
      - name: flux.v0.14.0
        version: 0.14.0
      - name: flux.v0.13.4
        version: 0.13.4
      name: stable
    defaultChannel: stable
    packageName: flux
    provider:
      name: The Flux project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Commvault
      provider-url: ""
    name: hedvig-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hedvig-operator.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\":\"hedvig.io/v1\",\n    \"kind\":\"HedvigDeploy\",\n
            \   \"metadata\": {\n      \"name\": \"testdeploy\",\n      \"namespace\":
            \"hedvig\"\n    },\n    \"spec\": {\n      \"cluster\": {\n        \"name\":
            \"hedvigcl\",\n        \"seeds\": [\n          \"hedvigcl1.hedvig.io\",\n
            \         \"hedvigcl2.hedvig.io\",\n          \"hedvigcl3.hedvig.io\"\n
            \       ]\n      },\n      \"k8s\": {\n        \"name\": \"k8scl\"\n      },\n
            \     \"proxy\": {\n        \"repository\": \"hedvig/hedvig-proxy\",\n
            \       \"tag\": \"v-4.3.1\",\n        \"imagePullPolicy\": \"IfNotPresent\"\n
            \     },\n      \"controller\": {\n        \"repository\": \"hedvig/hedvig-csi-volume-driver\",\n
            \       \"tag\": \"v-2.0\",\n        \"imagePullPolicy\": \"IfNotPresent\"\n
            \     },\n      \"node\": {\n        \"repository\": \"hedvig/hedvig-csi-volume-driver\",\n
            \       \"tag\": \"v-2.0\",\n        \"imagePullPolicy\": \"IfNotPresent\"\n
            \     },\n      \"sidecars\": [\n        {\n          \"name\": \"csi-provisioner\",\n
            \         \"repository\": \"quay.io/k8scsi/csi-provisioner\",\n          \"tag\":
            \"v1.6.0\",\n          \"imagePullPolicy\": \"IfNotPresent\"\n        },\n
            \       {\n          \"name\": \"csi-snapshotter\",\n          \"repository\":
            \"quay.io/k8scsi/csi-snapshotter\",\n          \"tag\": \"v2.1.0\",\n
            \         \"imagePullPolicy\": \"IfNotPresent\"\n        },              \n
            \       {\n          \"name\": \"csi-resizer\",\n          \"repository\":
            \"quay.io/k8scsi/csi-resizer\",\n          \"tag\": \"v0.5.0\",\n          \"imagePullPolicy\":
            \"IfNotPresent\"\n        },              \n        {\n          \"name\":
            \"csi-node-driver-registrar\",\n          \"repository\": \"quay.io/k8scsi/csi-node-driver-registrar\",\n
            \         \"tag\": \"v1.0-canary\",\n          \"imagePullPolicy\": \"IfNotPresent\"\n
            \       }\n      ]\n    }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "false"
          containerImage: hedvig/hedvig-operator:2.0.0-ubi
          createdAt: ""
          description: Hedvig Operator is the official operator to deploy and manage
            Hedvig components in container orchestrators such as Kubernetes and Openshift.
          repository: ""
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Hedvig Deploy
            displayName: HedvigDeploy
            kind: HedvigDeploy
            name: hedvigdeploys.hedvig.io
            version: v1
        description: "The Hedvig Distributed Storage Platform is a software-defined,
          scale-out storage solution. It distributes data simultaneously across multiple
          locations – from on-premises data centers to the cloud – and scales capacity
          on-demand by leveraging the storage of commodity x86/ARM servers. The distributed
          write maximizes availability and protects data from hardware failures ranging
          from a single disk to an entire site, improving disaster recovery planning.\n\nHedvig
          provides a CSI Driver for accelerating your journey into the container ecosystem.
          CSI Driver enables containerized applications to maintain state by dynamically
          provisioning and consuming Hedvig virtual disks as persistent volumes. \n###
          \n\nHedvig Operator deploys the Hedvig Storage Proxy and the Hedvig CSI
          Driver to manage the life cycle of persistent storage in Kubernetes and
          Openshift.\n\n**Supported Container Orchestrators:**\n* Kubernetes 1.16+\n*
          Red Hat OpenShift 4.6+\n\n**Supported Hedvig Releases:**\n* Hedvig 4.0+\nPlease
          refer to the [documentation](https://documentation.commvault.com/commvault/hedvig/others/pdf/Hedvig_Operator_User_Guide.pdf)
          for steps to install and use the operator.\n\n\n\n\n\n"
        displayName: Hedvig Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Storage
        - CSI
        - Hedvig
        - Cloud
        - Block
        - NFS
        - iSCSI
        - Snapshot
        - Volume
        links:
        - name: Documentation
          url: https://documentation.commvault.com/commvault/hedvig/article
        - name: Hedvig CSI User Guide
          url: https://documentation.commvault.com/commvault/hedvig/others/pdf/Hedvig_CSI_User_Guide.pdf
        maintainers:
        - email: ashenoy@commvault.com
          name: Abhijith Shenoy
        maturity: stable
        provider:
          name: Commvault
        relatedImages:
        - hedvig/hedvig-operator:2.0.0-ubi
        - quay.io/openshift-community-operators/hedvig-operator@sha256:81d956c12057f18bf920044a4e39c27c99b2c23afdccc0ff9468f0484e1961d7
        version: 1.0.2
      entries:
      - name: hedvig-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: hedvig-operator
    provider:
      name: Commvault
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: vertical-pod-autoscaler
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vertical-pod-autoscaler.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "autoscaling.k8s.io/v1",
                "kind": "VerticalPodAutoscaler",
                "metadata": {
                  "name": "myapp-vpa"
                },
                "spec": {
                  "resourcePolicy": {
                    "containerPolicies": [
                      {
                        "containerName": "*",
                        "controlledResources": [
                          "cpu",
                          "memory"
                        ],
                        "maxAllowed": {
                          "cpu": 1,
                          "memory": "500Mi"
                        },
                        "minAllowed": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      }
                    ]
                  },
                  "targetRef": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "myapp-deployment"
                  }
                }
              },
              {
                "apiVersion": "autoscaling.openshift.io/v1",
                "kind": "VerticalPodAutoscalerController",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "minReplicas": 2,
                  "podMinCPUMillicores": 25,
                  "podMinMemoryMb": 250,
                  "safetyMarginFraction": 0.15
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          certifiedLevel: Primed
          containerImage: registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9-operator@sha256:c8b4fbae4f814c8f553bb0c41491cd58fe4c524e29689305545f7a811b0a99e7
          createdAt: "2025-07-23T17:03:26Z"
          description: An operator to run the OpenShift Vertical Pod Autoscaler. Vertical
            Pod Autoscaler (VPA) can be configured to monitor a workload's resource
            utilization, and then adjust its CPU and memory limits by updating the
            pod (future) or restarting the pod with updated limits.
          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: "true"
          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"
          healthIndex: B
          olm.skipRange: '>=4.5.0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-vertical-pod-autoscaler
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/vertical-pod-autoscaler-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents VPA checkpoints used by the VPA controllers to
              manage workloads
            displayName: VPA Checkpoint
            kind: VerticalPodAutoscalerCheckpoint
            name: verticalpodautoscalercheckpoints.autoscaling.k8s.io
            version: v1
          - kind: VerticalPodAutoscalerCheckpoint
            name: verticalpodautoscalercheckpoints.autoscaling.k8s.io
            version: v1beta2
          - description: Represents an instance of the set of VPA controllers
            displayName: VPA Controller
            kind: VerticalPodAutoscalerController
            name: verticalpodautoscalercontrollers.autoscaling.openshift.io
            version: v1
          - description: An application whose resources are managed by the VPA
            displayName: VerticalPodAutoscaler
            kind: VerticalPodAutoscaler
            name: verticalpodautoscalers.autoscaling.k8s.io
            version: v1
          - kind: VerticalPodAutoscaler
            name: verticalpodautoscalers.autoscaling.k8s.io
            version: v1beta2
        description: An operator to run the OpenShift Vertical Pod Autoscaler. Vertical
          Pod Autoscaler (VPA) can be configured to monitor a workload's resource
          utilization, and then adjust its CPU and memory limits by updating the pod
          (future) or restarting the pod with updated limits.
        displayName: Vertical Pod Autoscaler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - verticalpodautoscaler
        - vpa
        - autoscaling
        - scaling
        links:
        - name: Vertical Pod Autoscaler Documentation
          url: https://docs.openshift.com/container-platform/latest/nodes/pods/nodes-pods-vertical-autoscaler.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-operator-bundle@sha256:bac746437332ab19a056edfc42148904de392c787a79dd77c2734b2dc34982d0
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9-operator@sha256:c8b4fbae4f814c8f553bb0c41491cd58fe4c524e29689305545f7a811b0a99e7
        - registry.redhat.io/openshift4/ose-vertical-pod-autoscaler-rhel9@sha256:8d7407a15dee92f15e8c62ef8a23c02b94bc59d1dd6595f9dd3e05f5a01cf9a3
        version: 4.20.0-202512081147
      entries:
      - name: vertical-pod-autoscaler.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: vertical-pod-autoscaler.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: vertical-pod-autoscaler.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: vertical-pod-autoscaler.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: vertical-pod-autoscaler.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: vertical-pod-autoscaler.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: vertical-pod-autoscaler.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: vertical-pod-autoscaler
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: redhat.com
    name: rh-service-binding-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: service-binding-operator.v0.9.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "service.binding/v1alpha2",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ServiceBinding expresses intent to bind an operator-backed
              service with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: Service Binding for Kubernetes. Describes the connection
              between a Provisioned Service and an Application Projection. Implements
              Service Binding Specifcation for Kubernetes (https://github.com/k8s-service-bindings/spec).
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.service.binding
            version: v1alpha2
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: alpha
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator-metadata@sha256:d9930900b0d2f92ae813246fc322290234ad8bbd165b10e36671b53852228718
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:fe6629401bc8447da95ec55949b5a27e620364bb6e02f86230262699ac8a5d55
        version: 0.9.1
      entries:
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: beta
    - currentCSV: service-binding-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindablekinds-sample"
                }
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:e799bd06043028d214baeeffc683710ad2eed7b83272fc653e3b89f69711319b
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:e799bd06043028d214baeeffc683710ad2eed7b83272fc653e3b89f69711319b
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator-metadata@sha256:87448055a162e215a4d4982a8494fec6e7cc59fe6704494ddfdcfea076a2100c
        version: 0.11.0
      entries:
      - name: service-binding-operator.v0.11.0
        version: 0.11.0
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: candidate
    - currentCSV: service-binding-operator.v0.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "service.binding/v1alpha2",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.service.binding
            version: v1alpha2
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator-metadata@sha256:a7c6f1c9260c79ebbdfb25ea996516ba1e2bcbedf25401e9e6848b955a2d3d78
        - registry.redhat.io/ocp-tools-4-tech-preview/service-binding-rhel8-operator@sha256:3d7a3648e86848402577dd19c1f8fd130a5556ebdfbc0f663a72f9e141024812
        version: 0.10.0
      entries:
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: preview
    - currentCSV: service-binding-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindable-kinds"
                },
                "spec": {}
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  },
                  "type": "postgres",
                  "workload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: registry.redhat.io/ocp-tools-4/service-binding-rhel8-operator@sha256:9c8fb0c8f9d2f54685561af21e595aa88bf309eaebebdf23fb6997b75d026b18
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.17.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'.
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1alpha3
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1beta1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
          - description: Service Binding implementing community specification (https://github.com/k8s-service-bindings/spec)
              describing the connection between a backing service and an application
              workload.
            displayName: Service Binding (Spec API)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1beta1
        description: |
          The Service Binding Operator manages the data plane for applications and backing services. It enables developers to connect their
          applications to backing services (REST API, databases, event buses and others) with a consistent and predictable
          experience. The operator reads data made available by the control plane of backing services and projects the bindings
          data to applications either as accessible files mounted into the application’s container or environment variables.

          In Kubernetes, each service suggests a different way to access their secrets and developers will consume them in their
          application in a custom way. While this provides a good deal of flexibility, it also creates discrepancies and
          complexity dealing with each specific services, which leads large development teams to lose overall velocity.

          Service Binding Operator removes the error-prone manual configuration of binding information, provides service operators
          a low-touch administrative experience to provision and manage access to services and enriches development lifecycle.

          For additional details refer to the project [documentation](https://redhat-developer.github.io/service-binding-operator).

          Get Started with Service Binding Operator
          * Find out about SBO’s [prerequisites](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/installing-service-binding.html).
          * Refer to the [Quick Start Guide](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/quick-start.html) to see SBO in action in a simple scenario.

          Need Help
          * Raise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)

          Licence
          * Service Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE)

          Service Binding Operator is providing and supporting two different APIs.
          * `binding.operators.coreos.com/v1alpha1`: This API is compliant with the Service Binding specification. It is fully supported and considered as the mature API. It’s the API we recommend in production environments.
          * `servicebinding.io/v1beta1`: This API is the one defined in the Service Binding specification. It is available in Service Binding Operator 1.x.

          We’ll consider supporting only the API from the specification, once the Service Binding specification will be officially GA. Of course, that will be a breaking change and handle in a safe way for you.
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Documentation
          url: https://redhat-developer.github.io/service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - registry.redhat.io/ocp-tools-4/service-binding-operator-bundle@sha256:9ab3d5eb70c654270fef9e8e9d4e5b68e1ac3c86bd0e0dcd36cc6f8741be1603
        - registry.redhat.io/ocp-tools-4/service-binding-rhel8-operator@sha256:9c8fb0c8f9d2f54685561af21e595aa88bf309eaebebdf23fb6997b75d026b18
        version: 1.3.3
      entries:
      - name: service-binding-operator.v1.3.3
        version: 1.3.3
      - name: service-binding-operator.v1.3.1
        version: 1.3.1
      - name: service-binding-operator.v1.3.0
        version: 1.3.0
      - name: service-binding-operator.v1.2.0
        version: 1.2.0
      - name: service-binding-operator.v1.1.1
        version: 1.1.1
      - name: service-binding-operator.v1.1.0
        version: 1.1.0
      - name: service-binding-operator.v1.0.1
        version: 1.0.1
      - name: service-binding-operator.v1.0.0
        version: 1.0.0
      - name: service-binding-operator.v0.11.0
        version: 0.11.0
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: rh-service-binding-operator
    provider:
      name: Red Hat
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/component: kmm
      app.kubernetes.io/name: kmm
      app.kubernetes.io/part-of: kmm
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: kernel-module-management
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kernel-module-management.v2.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:1022205d712a2ed9d6e76968961c180d4e66a2e0fb991221b0b02ed94ed830d2
          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: "true"
          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.skipRange: '>=0.0.0 <2.0.2'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel-module-management
        - out-of-tree
        - kernel
        - kmm
        - module
        - modules
        - oot
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:25f39f20f325f64676bf8ef14cd8a60cfbdc77116753a89d4bb667ea2a86172c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:62c44057a27abd41cf3daf60b8736da59a82dadb65fa6c32bef65d19bd49ea49
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:192e08b121a04ae69aea60c35199e8f5e3c42305e1ebd024a605a371de4ab472
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:e39a0b57e73d92c5db330ac9b8a184eeb400397f14c05c1ef75c952d91e4f5b2
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:1022205d712a2ed9d6e76968961c180d4e66a2e0fb991221b0b02ed94ed830d2
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:94b4ddc45cb34d4ffe794a51b99c868cb709f90cc4eb8b28284d70c526a0a226
        version: 2.0.2
      entries:
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.0
    - currentCSV: kernel-module-management.v2.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a85037778c53c3766f39efe4c4d2523d01ae7743e5c5693b05bd8b2cbb50b1d8
          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.skipRange: '>=0.0.0 <2.1.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:1a9a19df17b464d1708b2905d03b8726e4480ca1f11aa97a15ff4c049a24ea4b
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:611556d999ea97f9dbb78fec5963baa02de7a26626d7096ba63b177e3bcf9707
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:ea3e5fbf7eaf6bd29031e2876d7e24859779fb4d3d7ef27c26a1d310f137ad17
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:14e100e5853444114029116255ebfb7a54e5ed51503ba969740ad48b5ca80f70
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:5024be9a3190288983e3c42e8a2dbb49aa44cd596237ad9ed0e72de5090dc9b9
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a85037778c53c3766f39efe4c4d2523d01ae7743e5c5693b05bd8b2cbb50b1d8
        version: 2.1.1
      entries:
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.1
    - currentCSV: kernel-module-management.v2.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a224708950f8defb259ef0da49011d361c5c0378404350640600c6e8fbdbd606
          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: "true"
          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.skipRange: '>=0.0.0 <2.2.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:53fddf0b226eb579c71c86112a8d9b6b1d90a1498d6f6985932b16b8be532f35
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:ece58f1e360eccf7d970dca2f9da0c4d99a692648f165f677f11ff080649cf62
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:a224708950f8defb259ef0da49011d361c5c0378404350640600c6e8fbdbd606
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:c3dc9ad4ebc68cd85a074b520903a9310e72a90a73bdf4aa7c42b7ed66b7bcba
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:b1d98c0f14448ae8eb80821cbec236150c338674aae2a2b37f8d0ab0d5f1430c
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:ce1d68fd96f5003285f9fbc0c7abd8aa23830dbdd9b76629d38d4d2238e30032
        version: 2.2.1
      entries:
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.2
    - currentCSV: kernel-module-management.v2.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidationOCP",
                "metadata": {
                  "name": "preflightvalidationocp-sample"
                },
                "spec": {
                  "pushBuiltImage": true,
                  "releaseImage": "ocp-release-image"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:750dcc75f908cdda86932386fa1a28edaf65d7b5379ef6d0447586a064db906f
          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: "true"
          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.skipRange: '>=0.0.0 <2.3.0'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: kernel module management
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:6bd423056b555d39337c0e3a9c31e7732e80f34d0c01f0766a6aadb2aff586f8
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:750dcc75f908cdda86932386fa1a28edaf65d7b5379ef6d0447586a064db906f
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:06ac089cc89b303e525fd71d6439b958f34ab944a72209f1cc8cb562ecfd1112
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:c5005b74402f680d11c9ea682a9a0d3f74b6ab0d01d25298d232f910f1a29c34
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:055c2d6e80bd1ec225f0cb2041572ebb28cfd1a4ed82ba47ff0d638d52ded2a8
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:f9fde334af68220943017a7491130e6a82f15e63522f5bb3931aa7d9b00ccc40
        version: 2.3.0
      entries:
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.3
    - currentCSV: kernel-module-management.v2.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator
          createdAt: "2025-06-19T20:27:41Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.4.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:088dde6eb9d239a7a34b6e47a1bc3c3f1f74aabe764744eb9554913181b4e0db
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:8e0a3cfb1cb92d6d3c9ab5a3030593d8df1378c3ce755d598fb77b08ea5793d3
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:38d811a00b88a096d9fa8f650dae132c43db7057aac61c98932494ce94d67fff
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:34bd5c4f17411d5aa71edb1d6482b9a4cffffe4983b0a599db080bb09e1ec4d2
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:fc753a1c47c870199bf3c9a6cb4ef704847d525b3df5cd7628e2cc7dd0bbb2aa
        version: 2.4.1
      entries:
      - name: kernel-module-management.v2.4.1
        version: 2.4.1
      - name: kernel-module-management.v2.4.0
        version: 2.4.0
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.4
    - currentCSV: kernel-module-management.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:29Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BootModuleConfig describes how to load a module during kernel
              initialization
            displayName: Boot Module Config
            kind: BootModuleConfig
            name: bootmoduleconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:f1385af719931a82f572b33e678043ea91edfb5198cf880416c9a1e94455e399
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        version: 2.5.1
      entries:
      - name: kernel-module-management.v2.5.1
        version: 2.5.1
      - name: kernel-module-management.v2.5.0
        version: 2.5.0
      - name: kernel-module-management.v2.4.1
        version: 2.4.1
      - name: kernel-module-management.v2.4.0
        version: 2.4.0
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: release-2.5
    - currentCSV: kernel-module-management.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "Module",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "module-sample"
                },
                "spec": {
                  "moduleLoader": {
                    "container": {
                      "kernelMappings": [],
                      "modprobe": {
                        "moduleName": "sample"
                      }
                    }
                  },
                  "selector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              },
              {
                "apiVersion": "kmm.sigs.x-k8s.io/v1beta1",
                "kind": "PreflightValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm",
                    "app.kubernetes.io/name": "kmm",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "preflightvalidation-sample"
                },
                "spec": {
                  "kernelVersion": "4.18.0-372.32.1.el8_6.x86_64",
                  "pushBuiltImage": true
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:29Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BootModuleConfig describes how to load a module during kernel
              initialization
            displayName: Boot Module Config
            kind: BootModuleConfig
            name: bootmoduleconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: Module describes how to load a module on different kernel
              versions
            displayName: Module
            kind: Module
            name: modules.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: NodeModulesConfig
            name: nodemodulesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - description: PreflightValidation initiates a preflight validations for
              all Modules on the current Kubernetes cluster.
            displayName: Preflight Validation
            kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidation
            name: preflightvalidations.kmm.sigs.x-k8s.io
            version: v1beta2
          - description: PreflightValidationOCP initiates a preflight validations
              for all Modules on the current OCP cluster.
            displayName: Preflight Validation OCP
            kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: PreflightValidationOCP
            name: preflightvalidationsocp.kmm.sigs.x-k8s.io
            version: v1beta2
        description: Kubernetes operator managing out of tree kernel modules
        displayName: Kernel Module Management
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kernel
        - kmm
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-operator-bundle@sha256:f1385af719931a82f572b33e678043ea91edfb5198cf880416c9a1e94455e399
        - registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        version: 2.5.1
      entries:
      - name: kernel-module-management.v2.5.1
        version: 2.5.1
      - name: kernel-module-management.v2.5.0
        version: 2.5.0
      - name: kernel-module-management.v2.4.1
        version: 2.4.1
      - name: kernel-module-management.v2.4.0
        version: 2.4.0
      - name: kernel-module-management.v2.3.0
        version: 2.3.0
      - name: kernel-module-management.v2.2.1
        version: 2.2.1
      - name: kernel-module-management.v2.2.0
        version: 2.2.0
      - name: kernel-module-management.v2.1.1
        version: 2.1.1
      - name: kernel-module-management.v2.1.0
        version: 2.1.0
      - name: kernel-module-management.v2.0.2
        version: 2.0.2
      - name: kernel-module-management.v2.0.1
        version: 2.0.1
      - name: kernel-module-management.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: kernel-module-management
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Cloudera
      provider-url: https://cloudera.com
    name: cloudera-streams-messaging-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cloudera-streams-messaging-kubernetes-operator.1.4.0-b199
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster"
                },
                "spec": {
                  "kafka": {
                    "version": "3.9.0.1.4",
                    "replicas": 3,
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2,
                      "inter.broker.protocol.version": "3.9"
                    },
                    "storage": {
                      "type": "ephemeral"
                    }
                  },
                  "zookeeper": {
                    "replicas": 3,
                    "storage": {
                      "type": "ephemeral"
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "3.9.0.1.4",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: container.repository.cloudera.com/cloudera/kafka-operator@sha256:d6812fed7ddf139dab4d12cab6a0ae292e2d0619303b0ad72f2eef642e5a183a
          createdAt: "2025-07-14 10:09:41"
          description: Run Apache Kafka with Cloudera Streams Messaging - Kubernetes
            Operator
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: A valid license and current subscription
            for Cloudera Streaming - Kubernetes Operator is required. Contact Cloudera
            sales to obtain a license. https://www.cloudera.com/contact-sales.html
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |-
          Cloudera Streams Messaging - Kubernetes Operator brings enterprise-grade Kafka deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of Kafka for enterprise deployments. To learn more about Cloudera Streaming, [read this deep dive blog post](https://blog.cloudera.com/accelerating-deployments-of-streaming-pipelines-announcing-data-in-motion-on-kubernetes/).

          Cloudera Streams Messaging - Kubernetes Operator consists of and ships multiple components including Apache Kafka, Apache ZooKeeper, Cruise Control, Strimzi, and others.

          ## Installation prerequisites

          Installing Cloudera Streams Messaging - Kubernetes Operator requires a valid license as well as Cloudera credentials (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly. The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) where installation artifacts are pulled from.

          ### Obtaining a license

          Contact [Cloudera Sales](https://www.cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets

          Before installation, create  two `Secrets`. One containing your Cloudera credentials, and one containing your license. Cloudera credentials are provided to you together with your license.

          Create a `Secret` containing your Cloudera credentials.
          ```
          oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***] --docker-server=container.repository.cloudera.com
          ```
          Create a `Secret` containing your license.
          ```
          oc create secret generic csm-op-license --from-file=license.txt=[***PATH TO LICENSE FILE***]
          ```

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces where you plan to deploy Kafka or Kafka Connect clusters. Cloudera recommends that you create the `Secret` in all required namespaces before installation if you know what namespaces you will be using to deploy Kafka or Kafka Connect.

          ## Learn more
          To learn more, visit the [Cloudera Streams Messaging - Kubernetes Operator documentation library](https://docs.cloudera.com/csm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Streams Messaging - Kubernetes Operator, visit the following resources:

          * [Strimzi](https://strimzi.io/)
          * [Apache Kafka](https://kafka.apache.org/)
          * [Apache ZooKeeper](https://zookeeper.apache.org/)
          * [Cruise Control](https://github.com/linkedin/cruise-control)
        displayName: Cloudera Streams Messaging - Kubernetes Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Documentation
          url: https://docs.cloudera.com/csm-operator
        - name: Cloudera Community Forum
          url: https://community.cloudera.com/
        - name: Cloudera Stream Processing
          url: https://www.cloudera.com/products/stream-processing.html
        - name: Contact Cloudera
          url: https://www.cloudera.com/contact-sales.html
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/kafka@sha256:aa64e161b9672153a6f6559f9ae9ef88d0e40d6040a80e21bd3dc8ee39df6523
        - container.repository.cloudera.com/cloudera/kafka@sha256:b675e7426a558c4681e53d8e03f278264d7ad555f7c02422017683a29708ac2b
        - container.repository.cloudera.com/cloudera/maven-builder@sha256:9f18203b175193e5079fdc0c2b71c14887641d997f92b4a1c918546f777166df
        - registry.connect.redhat.com/cloudera/cloudera-streams-messaging-kubernetes-operator-bundle@sha256:e7c79d2e6b21ce423d0199316012ccde1ccf16da412da66e4a36c54539aac81d
        - container.repository.cloudera.com/cloudera/kafka-operator@sha256:d6812fed7ddf139dab4d12cab6a0ae292e2d0619303b0ad72f2eef642e5a183a
        version: 1.4.0-b199
      entries:
      - name: cloudera-streams-messaging-kubernetes-operator.1.4.0-b199
        version: 1.4.0-b199
      name: 1.2.x
    - currentCSV: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.0.1.1.5",
                    "metadataVersion": "4.0-IV3",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.0.1.1.5",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
          createdAt: "2025-10-29 10:43:01"
          description: Run Apache Kafka with Cloudera Streams Messaging - Kubernetes
            Operator
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: A valid license and current subscription
            for Cloudera Streaming - Kubernetes Operator is required. Contact Cloudera
            sales to obtain a license. https://www.cloudera.com/contact-sales.html
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |-
          Cloudera Streams Messaging - Kubernetes Operator brings enterprise-grade Kafka deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of Kafka for enterprise deployments. To learn more about Cloudera Streaming, [read this deep dive blog post](https://blog.cloudera.com/accelerating-deployments-of-streaming-pipelines-announcing-data-in-motion-on-kubernetes/).

          Cloudera Streams Messaging - Kubernetes Operator consists of and ships multiple components including Apache Kafka, Cruise Control, Strimzi, and others.

          ## Installation prerequisites

          Installing Cloudera Streams Messaging - Kubernetes Operator requires a valid license as well as Cloudera credentials (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly. The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) where installation artifacts are pulled from.

          ### Obtaining a license

          Contact [Cloudera Sales](https://www.cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets

          Before installation, create  two `Secrets`. One containing your Cloudera credentials, and one containing your license. Cloudera credentials are provided to you together with your license.

          Create a `Secret` containing your Cloudera credentials.
          ```
          oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***] --docker-server=container.repository.cloudera.com
          ```
          Create a `Secret` containing your license.
          ```
          oc create secret generic csm-op-license --from-file=license.txt=[***PATH TO LICENSE FILE***]
          ```

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces where you plan to deploy Kafka or Kafka Connect clusters. Cloudera recommends that you create the `Secret` in all required namespaces before installation if you know what namespaces you will be using to deploy Kafka or Kafka Connect.

          ## Learn more
          To learn more, visit the [Cloudera Streams Messaging - Kubernetes Operator documentation library](https://docs.cloudera.com/csm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Streams Messaging - Kubernetes Operator, visit the following resources:

          * [Strimzi](https://strimzi.io/)
          * [Apache Kafka](https://kafka.apache.org/)
          * [Cruise Control](https://github.com/linkedin/cruise-control)
        displayName: Cloudera Streams Messaging - Kubernetes Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Documentation
          url: https://docs.cloudera.com/csm-operator
        - name: Cloudera Community Forum
          url: https://community.cloudera.com/
        - name: Cloudera Stream Processing
          url: https://www.cloudera.com/products/stream-processing.html
        - name: Contact Cloudera
          url: https://www.cloudera.com/contact-sales.html
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/kafka@sha256:9b03f2dc7a6646c4e4945cc8580d85437991ef7efb7d7460e7d811e8bf823ea5
        - container.repository.cloudera.com/cloudera/kafka@sha256:9e506b1e049c13e2a9143115cee59799702d0204b3bdc82f65426acbc46daecd
        - container.repository.cloudera.com/cloudera/maven-builder@sha256:acfab110978a5bd596da1541a2d414c846ec14c2cbe1343c6f720a86a8b127c4
        - registry.connect.redhat.com/cloudera/cloudera-streams-messaging-kubernetes-operator-bundle@sha256:33e545dac3749f733ff45af7780c24c3d07efebfcfbd07db5abfd3d246a4e24f
        - container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
        version: 1.5.0-b123
      entries:
      - name: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
        version: 1.5.0-b123
      name: 1.5.x
    - currentCSV: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.0.1.1.5",
                    "metadataVersion": "4.0-IV3",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.0.1.1.5",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
          createdAt: "2025-10-29 10:43:01"
          description: Run Apache Kafka with Cloudera Streams Messaging - Kubernetes
            Operator
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: A valid license and current subscription
            for Cloudera Streaming - Kubernetes Operator is required. Contact Cloudera
            sales to obtain a license. https://www.cloudera.com/contact-sales.html
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |-
          Cloudera Streams Messaging - Kubernetes Operator brings enterprise-grade Kafka deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of Kafka for enterprise deployments. To learn more about Cloudera Streaming, [read this deep dive blog post](https://blog.cloudera.com/accelerating-deployments-of-streaming-pipelines-announcing-data-in-motion-on-kubernetes/).

          Cloudera Streams Messaging - Kubernetes Operator consists of and ships multiple components including Apache Kafka, Cruise Control, Strimzi, and others.

          ## Installation prerequisites

          Installing Cloudera Streams Messaging - Kubernetes Operator requires a valid license as well as Cloudera credentials (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly. The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) where installation artifacts are pulled from.

          ### Obtaining a license

          Contact [Cloudera Sales](https://www.cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets

          Before installation, create  two `Secrets`. One containing your Cloudera credentials, and one containing your license. Cloudera credentials are provided to you together with your license.

          Create a `Secret` containing your Cloudera credentials.
          ```
          oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***] --docker-server=container.repository.cloudera.com
          ```
          Create a `Secret` containing your license.
          ```
          oc create secret generic csm-op-license --from-file=license.txt=[***PATH TO LICENSE FILE***]
          ```

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces where you plan to deploy Kafka or Kafka Connect clusters. Cloudera recommends that you create the `Secret` in all required namespaces before installation if you know what namespaces you will be using to deploy Kafka or Kafka Connect.

          ## Learn more
          To learn more, visit the [Cloudera Streams Messaging - Kubernetes Operator documentation library](https://docs.cloudera.com/csm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Streams Messaging - Kubernetes Operator, visit the following resources:

          * [Strimzi](https://strimzi.io/)
          * [Apache Kafka](https://kafka.apache.org/)
          * [Cruise Control](https://github.com/linkedin/cruise-control)
        displayName: Cloudera Streams Messaging - Kubernetes Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Documentation
          url: https://docs.cloudera.com/csm-operator
        - name: Cloudera Community Forum
          url: https://community.cloudera.com/
        - name: Cloudera Stream Processing
          url: https://www.cloudera.com/products/stream-processing.html
        - name: Contact Cloudera
          url: https://www.cloudera.com/contact-sales.html
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/kafka@sha256:9e506b1e049c13e2a9143115cee59799702d0204b3bdc82f65426acbc46daecd
        - container.repository.cloudera.com/cloudera/maven-builder@sha256:acfab110978a5bd596da1541a2d414c846ec14c2cbe1343c6f720a86a8b127c4
        - registry.connect.redhat.com/cloudera/cloudera-streams-messaging-kubernetes-operator-bundle@sha256:33e545dac3749f733ff45af7780c24c3d07efebfcfbd07db5abfd3d246a4e24f
        - container.repository.cloudera.com/cloudera/kafka-operator@sha256:b0c12bc562f39ddfefa2a549e0e6ae30850378d6221c0a20e8f94d611f6d8dc3
        - container.repository.cloudera.com/cloudera/kafka@sha256:9b03f2dc7a6646c4e4945cc8580d85437991ef7efb7d7460e7d811e8bf823ea5
        version: 1.5.0-b123
      entries:
      - name: cloudera-streams-messaging-kubernetes-operator.1.5.0-b123
        version: 1.5.0-b123
      name: stable
    defaultChannel: stable
    packageName: cloudera-streams-messaging-kubernetes-operator
    provider:
      name: Cloudera
      url: https://cloudera.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Intel® Corporation
      provider-url: https://intel.com
    name: intel-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: network-operator.v1.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l2"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L2",
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              },
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l3"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L3",
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              },
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l3-metrics"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L3",
                    "networkMetrics": true,
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              },
              {
                "apiVersion": "intel.com/v1alpha1",
                "kind": "NetworkClusterPolicy",
                "metadata": {
                  "name": "netconf-gaudi-scale-out-l3-pfc-lldpad"
                },
                "spec": {
                  "configurationType": "gaudi-so",
                  "gaudiScaleOut": {
                    "enableLLDPAD": true,
                    "image": "registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719",
                    "layer": "L3",
                    "pfcPriorities": "11110000",
                    "pullPolicy": "IfNotPresent"
                  },
                  "logLevel": 1,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gaudi-ready": "true"
                  }
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-11-19T08:53:19Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NetworkClusterPolicy is the Schema for the networkclusterpolicies
              API
            displayName: Network Cluster Policy
            kind: NetworkClusterPolicy
            name: networkclusterpolicies.intel.com
            version: v1alpha1
        description: |-
          Intel Network Operator allows automatic configuring and easier use
          of RDMA NICs with Intel AI accelerators in Kubernetes.
        displayName: Intel Network Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gaudi
        - gpu
        - intel
        - rdma
        - scaleout
        links:
        - name: Network Operator
          url: https://github.com/intel/network-operator
        maintainers:
        - email: patrik.flykt@intel.com
          name: Patrik Flykt
        - email: tuomas.katila@intel.com
          name: Tuomas Katila
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Intel® Corporation
          url: https://intel.com
        relatedImages:
        - registry.connect.redhat.com/intel/intel-network-linkdiscovery@sha256:9e512fb131e098d18b554e085e1a108c3da5d5e60d8cd9eff950d5492f4c9719
        - registry.connect.redhat.com/intel/intel-network-operator-bundle@sha256:817a1cb4c2aa86b0d0268b04a500c238a604f15d54fc2d70b1ca9ca9736e5b2b
        - registry.connect.redhat.com/intel/intel-network-operator@sha256:3ea3d164de467117dfa7c5de3f8a46f130fc96e3d26ca46429b536710a60e4f8
        version: 1.1.1
      entries:
      - name: network-operator.v1.1.1
        version: 1.1.1
      name: alpha
    defaultChannel: alpha
    packageName: intel-network-operator
    provider:
      name: Intel® Corporation
      url: https://intel.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: klusterlet
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: klusterlet.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.open-cluster-management.io/v1",
                "kind": "Klusterlet",
                "metadata": {
                  "name": "klusterlet"
                },
                "spec": {
                  "clusterName": "cluster1",
                  "deployOption": {
                    "mode": "Singleton"
                  },
                  "externalServerURLs": [
                    {
                      "url": "https://localhost"
                    }
                  ],
                  "imagePullSpec": "quay.io/open-cluster-management/registration-operator:v0.13.1",
                  "namespace": "open-cluster-management-agent",
                  "registrationImagePullSpec": "quay.io/open-cluster-management/registration:v0.13.1",
                  "workImagePullSpec": "quay.io/open-cluster-management/work:v0.13.1"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/registration-operator:v0.13.1
          createdAt: "2024-04-10T15:27:49Z"
          description: Manages the installation and upgrade of the Klusterlet.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management-io/ocm
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Klusterlet defines the configurations of agents running on
              the managed cluster
            displayName: Klusterlet
            kind: Klusterlet
            name: klusterlets.operator.open-cluster-management.io
            version: v1
        description: "Note: This operator will stop updating, please use the latest
          operator in OperatorHub.io https://operatorhub.io/operator/klusterlet. \n\nThe
          Klusterlet proivdes the registation to the Hub clusters as a managed cluster.
          This operator supports the installation and upgrade of Klusterlet.\n\n##
          Prerequisites\nYou need a Hub cluster which has installed ClusterManager.\n\n##
          How to Install\n* Install Klusterlet operator by following instructions
          in top right button `Install`.\n* Optional: Create an agent namespace used
          to deploy Klusterlet. The default namespace is `open-cluster-management-agent`.\n*
          Create a secret `bootstrap-hub-kubeconfig` with the kubeconfig file of hub
          cluster in the agent namespace.\n\n  ```\n  $ kubectl create secret generic
          bootstrap-hub-kubeconfig --from-file=kubeconfig=<kubeconfig file of hub
          clsuter> -n <agent namespace>\n  ```\n\n* Create an instance of the Klusterlet
          resource to install the Klusterlet.\n\nThe pods of Klusterlet are created
          in agent namespace.\n\n```\n$ kubectl get pods -n open-cluster-management-agent\n
          \ NAME                                READY   STATUS    RESTARTS   AGE\n
          \ klusterlet-agent-55c6574876-nfxm9   1/1     Running   0          8m38s\n```\n\nThere
          is a ManagedCluster created in the Hub cluster.\n\n```\n$ kubectl get managedclusters.cluster.open-cluster-management.io\nNAME
          \                  HUB ACCEPTED   MANAGED CLUSTER URLS     JOINED   AVAILABLE
          \  AGE\ncluster1               false                                                        27s\n```\n"
        displayName: Klusterlet
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open-cluster-management
        - Klusterlet
        links:
        - name: Registration Operator
          url: https://github.com/open-cluster-management-io/ocm
        maintainers:
        - email: zyin@redhat.com
          name: Zhiwei Yin
        - email: deads@redhat.com
          name: David Eads
        - email: jqiu@redhat.com
          name: Jian Qiu
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/community-operator-pipeline-prod/klusterlet@sha256:9efef9a034c9f12505a0d81bc9697c4a3ab7e3d05d1e7aaa4180490d70ddf6a2
        - quay.io/open-cluster-management/registration-operator:v0.13.1
        version: 0.13.1
      entries:
      - name: klusterlet.v0.13.1
        version: 0.13.1
      - name: klusterlet.v0.13.0
        version: 0.13.0
      - name: klusterlet.v0.12.0
        version: 0.12.0
      - name: klusterlet.v0.11.0
        version: 0.11.0
      - name: klusterlet.v0.10.0
        version: 0.10.0
      - name: klusterlet.v0.9.1
        version: 0.9.1
      - name: klusterlet.v0.8.0
        version: 0.8.0
      - name: klusterlet.v0.7.0
        version: 0.7.0
      - name: klusterlet.v0.6.0
        version: 0.6.0
      - name: klusterlet.v0.5.0
        version: 0.5.0
      - name: klusterlet.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: klusterlet
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Grafana Tempo Operator SIG
      provider-url: ""
    name: tempo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tempo-operator.v0.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoMonolithic",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "jaegerui": {
                    "enabled": true,
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "resources": {
                    "limits": {
                      "cpu": "2",
                      "memory": "2Gi"
                    }
                  },
                  "storage": {
                    "traces": {
                      "backend": "memory"
                    }
                  }
                }
              },
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoStack",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "resources": {
                    "total": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2Gi"
                      }
                    }
                  },
                  "storage": {
                    "secret": {
                      "name": "my-storage-secret",
                      "type": "s3"
                    }
                  },
                  "storageSize": "1Gi",
                  "template": {
                    "queryFrontend": {
                      "jaegerQuery": {
                        "enabled": true,
                        "ingress": {
                          "type": "route"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          containerImage: ghcr.io/grafana/tempo-operator/tempo-operator:v0.19.0
          createdAt: "2025-11-20T16:37:25Z"
          description: Create and manage deployments of Tempo, a high-scale distributed
            tracing backend.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: tempo-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/grafana/tempo-operator
          support: Grafana Tempo Operator SIG
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TempoMonolithic manages a Tempo deployment in monolithic
              mode.
            displayName: TempoMonolithic
            kind: TempoMonolithic
            name: tempomonolithics.tempo.grafana.com
            version: v1alpha1
          - description: TempoStack manages a Tempo deployment in microservices mode.
            displayName: TempoStack
            kind: TempoStack
            name: tempostacks.tempo.grafana.com
            version: v1alpha1
        description: |-
          Tempo is an open source, easy-to-use, and high-scale distributed tracing backend.
          It can ingest common open source tracing protocols including Jaeger, Zipkin, and OpenTelemetry and requires only object storage to operate.
          Please refer to the [Tempo documentation](https://grafana.com/docs/tempo/latest/) for more information about Tempo.

          The Community Tempo Operator can manage Tempo deployments in Microservices mode (`TempoStack` CR) and Monolithic mode (`TempoMonolithic` CR).

          ### Operator features
          * **Resource Limits** - Specify overall resource requests and limits in the `TempoStack` CR; the operator assigns fractions of it to each component
          * **AuthN and AuthZ** - Supports OpenID Control (OIDC) and role-based access control (RBAC)
          * **Managed upgrades** - Updating the operator will automatically update all managed Tempo clusters
          * **Multitenancy** - Multiple tenants can send traces to the same Tempo cluster
          * **mTLS** - Communication between the Tempo components can be secured via mTLS
          * **Jaeger UI** - Traces can be visualized in Jaeger UI and exposed via Ingress or OpenShift Route
          * **Observability** - The operator and `TempoStack` operands expose telemetry (metrics, traces) and integrate with Prometheus `ServiceMonitor` and `PrometheusRule`

          ### Prerequisites
          `TempoStack` requires object storage to store its traces. `TempoMonolithic` can store traces in-memory, in a Persistent Volume and in object storage.
          Please ensure that an object storage solution is available and configured.
        displayName: Community Tempo Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tempo
        - tracing
        - observability
        - monitoring
        - database
        links:
        - name: Tempo Operator
          url: https://github.com/grafana/tempo-operator
        maintainers:
        - email: ruben.vp8510@gmail.com
          name: Ruben Vargas
        - email: p.loffay@gmail.com
          name: Pavol Loffay
        - email: bongartz@klimlive.de
          name: Benedikt Bongartz
        - email: andreas@gerstmayr.me
          name: Andreas Gerstmayr
        - email: iblancas@redhat.com
          name: Israel Blancas Alvarez
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Grafana Tempo Operator SIG
        relatedImages:
        - quay.io/observatorium/api:main-2025-08-25-7489eb0
        - quay.io/observatorium/opa-openshift:main-2025-06-16-ecdeca0
        - quay.io/openshift/origin-oauth-proxy:4.14
        - docker.io/grafana/tempo-query:2.9.0
        - docker.io/grafana/tempo:2.9.0
        - docker.io/jaegertracing/jaeger-query:1.68.0
        - ghcr.io/grafana/tempo-operator/tempo-operator:v0.19.0
        - quay.io/community-operator-pipeline-prod/tempo-operator@sha256:5c33104814fc9a1b1cdfacd5dca1234bfd17881820583ec1fd462a02ce83d272
        version: 0.19.0
      entries:
      - name: tempo-operator.v0.19.0
        version: 0.19.0
      - name: tempo-operator.v0.18.0
        version: 0.18.0
      - name: tempo-operator.v0.17.1
        version: 0.17.1
      - name: tempo-operator.v0.15.3
        version: 0.15.3
      - name: tempo-operator.v0.15.2
        version: 0.15.2
      - name: tempo-operator.v0.15.1
        version: 0.15.1
      - name: tempo-operator.v0.15.0
        version: 0.15.0
      - name: tempo-operator.v0.14.2
        version: 0.14.2
      - name: tempo-operator.v0.14.1
        version: 0.14.1
      - name: tempo-operator.v0.14.0
        version: 0.14.0
      - name: tempo-operator.v0.13.0
        version: 0.13.0
      - name: tempo-operator.v0.12.0
        version: 0.12.0
      - name: tempo-operator.v0.11.1
        version: 0.11.1
      - name: tempo-operator.v0.11.0
        version: 0.11.0
      - name: tempo-operator.v0.10.0
        version: 0.10.0
      - name: tempo-operator.v0.9.0
        version: 0.9.0
      - name: tempo-operator.v0.8.0
        version: 0.8.0
      - name: tempo-operator.v0.7.0
        version: 0.7.0
      - name: tempo-operator.v0.6.0
        version: 0.6.0
      - name: tempo-operator.v0.5.0
        version: 0.5.0
      - name: tempo-operator.v0.4.0
        version: 0.4.0
      - name: tempo-operator.v0.3.0
        version: 0.3.0
      - name: tempo-operator.v0.2.0
        version: 0.2.0
      - name: tempo-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: tempo-operator
    provider:
      name: Grafana Tempo Operator SIG
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: ansible-automation-platform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aap-operator.v2.5.0-0.1764945388
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727257740 <2.5.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation-Controller
              - Automation-Hub
              - EDA
              - Ansible-Lightspeed
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Ansible lightspeed: Deploy and manage the lifecycle of an ansible lightspeed application.
            * Automation gateway - Unify the management of AAP from a central location.
            * Automation controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private automation hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Platform resource operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-20

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console. For example, change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.
          If you originally installed the AAP Operator from the stable-2.4 channel for example, you will want to upgrade to the next minor version by selecting the stable-2.6 channel.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place.

          #### Create the AnsibleAutomationPlatform custom resource

          Once that is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: myaap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8@sha256:64d15cd62d59793fada48ef0ccf776a4de191aaa45e01d693df8e6af2fe99c46
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:a2e2211f218d13fea1c2bd232a87378f3d9f656839e48c72d93f4f8afc3ea702
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8-operator@sha256:8b3006af83b25c2e0e8dbcae1af781263bae4f85b78a1c499cd971fb6e6e62df
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8-operator@sha256:e4a98a6721ef18a6d412c1e9e2f48ab98852e8ff957cf910225d7ca1bc0bbbed
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-rhel8-operator@sha256:5f0649d44f18faa996d7ed880137b38a2abcac2cbdbdb9d937ad52fb0b53d936
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8@sha256:844b455cd0be699589d5cb54f0b153747949d2daa476e3b6b77851c2d64241ab
        - registry.redhat.io/ansible-automation-platform-25/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        version: 2.5.0+0.1764945388
      entries:
      - name: aap-operator.v2.5.0-0.1727240614
        version: 2.5.0+0.1727240614
      - name: aap-operator.v2.5.0-0.1727875185
        version: 2.5.0+0.1727875185
      - name: aap-operator.v2.5.0-0.1728520175
        version: 2.5.0+0.1728520175
      - name: aap-operator.v2.5.0-0.1729741547
        version: 2.5.0+0.1729741547
      - name: aap-operator.v2.5.0-0.1731456196
        version: 2.5.0+0.1731456196
      - name: aap-operator.v2.5.0-0.1733193164
        version: 2.5.0+0.1733193164
      - name: aap-operator.v2.5.0-0.1733969526
        version: 2.5.0+0.1733969526
      - name: aap-operator.v2.5.0-0.1736893446
        version: 2.5.0+0.1736893446
      - name: aap-operator.v2.5.0-0.1737101025
        version: 2.5.0+0.1737101025
      - name: aap-operator.v2.5.0-0.1737675968
        version: 2.5.0+0.1737675968
      - name: aap-operator.v2.5.0-0.1739248042
        version: 2.5.0+0.1739248042
      - name: aap-operator.v2.5.0-0.1740093573
        version: 2.5.0+0.1740093573
      - name: aap-operator.v2.5.0-0.1740773472
        version: 2.5.0+0.1740773472
      - name: aap-operator.v2.5.0-0.1741368605
        version: 2.5.0+0.1741368605
      - name: aap-operator.v2.5.0-0.1742434024
        version: 2.5.0+0.1742434024
      - name: aap-operator.v2.5.0-0.1743660124
        version: 2.5.0+0.1743660124
      - name: aap-operator.v2.5.0-0.1746137767
        version: 2.5.0+0.1746137767
      - name: aap-operator.v2.5.0-0.1747343762
        version: 2.5.0+0.1747343762
      - name: aap-operator.v2.5.0-0.1749074128
        version: 2.5.0+0.1749074128
      - name: aap-operator.v2.5.0-0.1749604727
        version: 2.5.0+0.1749604727
      - name: aap-operator.v2.5.0-0.1750901111
        version: 2.5.0+0.1750901111
      - name: aap-operator.v2.5.0-0.1753900156
        version: 2.5.0+0.1753900156
      - name: aap-operator.v2.5.0-0.1755835086
        version: 2.5.0+0.1755835086
      - name: aap-operator.v2.5.0-0.1758147230
        version: 2.5.0+0.1758147230
      - name: aap-operator.v2.5.0-0.1761050204
        version: 2.5.0+0.1761050204
      - name: aap-operator.v2.5.0-0.1764945388
        version: 2.5.0+0.1764945388
      name: stable-2.5
    - currentCSV: aap-operator.v2.5.0-0.1764945371
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727259094 <2.5.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation-Controller
              - Automation-Hub
              - EDA
              - Ansible-Lightspeed
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Ansible lightspeed: Deploy and manage the lifecycle of an ansible lightspeed application.
            * Automation gateway - Unify the management of AAP from a central location.
            * Automation controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private automation hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Platform resource operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-20

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console. For example, change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.
          If you originally installed the AAP Operator from the stable-2.4 channel for example, you will want to upgrade to the next minor version by selecting the stable-2.6 channel.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place.

          #### Create the AnsibleAutomationPlatform custom resource

          Once that is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: myaap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-15:1@sha256:66c45889e04746a36d45631acafbe2be25f536b1f6476a83842be086f173b40a
        - registry.redhat.io/rhel8/redis-6:1@sha256:82ba1c89b86c484f80af8e239dad50321447a4f5d7e63d02d243e51051603779
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:fb284b670f3c4c28ac3bcc6a16d20db5ec38165750baf6a03f1d3b7cc316027f
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8@sha256:6e3a016e66dfb2903d369b6bcf150fa5c79a666febca704fefbdbf1efe252779
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8-operator@sha256:55b92351447fb1aaa87e76db9b8c3a6b3b2618e13cefc7a0a9419ba6daaefc63
        - registry.redhat.io/ansible-automation-platform-25/gateway-proxy-rhel8@sha256:f69548e4d1228f5fda982fbc01eb0cd30f9ec28ab2b899ce04947d7db3016e6a
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8-operator@sha256:019e34890947b565a1f86109ad6e98b1e68c672302f2396dba7497c6a8447dde
        - registry.redhat.io/ansible-automation-platform-25/ee-minimal-rhel8@sha256:76ce58759c1a762035eb0b3bec2a73fb86e7d70dec999f105ddfec47f86a8111
        - registry.redhat.io/ansible-automation-platform-25/ee-supported-rhel8@sha256:09fc438e1c4d4baebb800fdc6ad675baf78a222c5dc5c5f25f8563bec93b44f9
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-runner-rhel8@sha256:f86c9a38ce287f8bae7a1cde3f6dc0ad99947554d1e6e69ce6ea38a6f446a53c
        - registry.redhat.io/ubi8-minimal:latest@sha256:58b1dc5427b699255a73475f5e96e9f658f49214e5bd56d03c534fa87980efb1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.15@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-ui-rhel8@sha256:c5102385ae24b27e48567d9faa74b00fcbb86a234d111db290ba6e905dd77604
        - registry.redhat.io/ansible-automation-platform-25/gateway-rhel8@sha256:844b455cd0be699589d5cb54f0b153747949d2daa476e3b6b77851c2d64241ab
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8@sha256:64d15cd62d59793fada48ef0ccf776a4de191aaa45e01d693df8e6af2fe99c46
        - registry.redhat.io/ansible-automation-platform-25/hub-web-rhel8@sha256:db4384e78f73e8abcf7c1394355e53bae7ae318a9ad6008fbf59477430d13bfd
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-rhel8@sha256:72a4c5a36e59ec7d7db3222d6a5cfd808bc3f37a58cb598e4923703ce2604e9b
        - registry.redhat.io/ansible-automation-platform-25/platform-resource-rhel8-operator@sha256:5f0649d44f18faa996d7ed880137b38a2abcac2cbdbdb9d937ad52fb0b53d936
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8-operator@sha256:73dd95aff4153f1881d30970ea1026a43cd0b371d78d3280603d368629fba386
        - registry.redhat.io/ansible-automation-platform-25/eda-controller-rhel8-operator@sha256:8b3006af83b25c2e0e8dbcae1af781263bae4f85b78a1c499cd971fb6e6e62df
        - registry.redhat.io/ansible-automation-platform-25/controller-rhel8@sha256:57673d57c555780f4a89d312bce34e1df02e9fd0503e9006be33e3b5eab235d9
        - registry.redhat.io/ansible-automation-platform-25/hub-rhel8-operator@sha256:e4a98a6721ef18a6d412c1e9e2f48ab98852e8ff957cf910225d7ca1bc0bbbed
        - registry.redhat.io/ansible-automation-platform-25/lightspeed-chatbot-rhel8@sha256:eb88fdd1e401cfa74c7b102f73c767b31791da4fa4ce8660474f5390e847a342
        version: 2.5.0+0.1764945371
      entries:
      - name: aap-operator.v2.5.0-0.1727241223
        version: 2.5.0+0.1727241223
      - name: aap-operator.v2.5.0-0.1727875896
        version: 2.5.0+0.1727875896
      - name: aap-operator.v2.5.0-0.1728520687
        version: 2.5.0+0.1728520687
      - name: aap-operator.v2.5.0-0.1729742145
        version: 2.5.0+0.1729742145
      - name: aap-operator.v2.5.0-0.1731456854
        version: 2.5.0+0.1731456854
      - name: aap-operator.v2.5.0-0.1733193761
        version: 2.5.0+0.1733193761
      - name: aap-operator.v2.5.0-0.1733970210
        version: 2.5.0+0.1733970210
      - name: aap-operator.v2.5.0-0.1736894220
        version: 2.5.0+0.1736894220
      - name: aap-operator.v2.5.0-0.1737101781
        version: 2.5.0+0.1737101781
      - name: aap-operator.v2.5.0-0.1737676792
        version: 2.5.0+0.1737676792
      - name: aap-operator.v2.5.0-0.1739248649
        version: 2.5.0+0.1739248649
      - name: aap-operator.v2.5.0-0.1740094176
        version: 2.5.0+0.1740094176
      - name: aap-operator.v2.5.0-0.1740774104
        version: 2.5.0+0.1740774104
      - name: aap-operator.v2.5.0-0.1741369251
        version: 2.5.0+0.1741369251
      - name: aap-operator.v2.5.0-0.1742434756
        version: 2.5.0+0.1742434756
      - name: aap-operator.v2.5.0-0.1743660958
        version: 2.5.0+0.1743660958
      - name: aap-operator.v2.5.0-0.1746138413
        version: 2.5.0+0.1746138413
      - name: aap-operator.v2.5.0-0.1747345055
        version: 2.5.0+0.1747345055
      - name: aap-operator.v2.5.0-0.1749074612
        version: 2.5.0+0.1749074612
      - name: aap-operator.v2.5.0-0.1749607543
        version: 2.5.0+0.1749607543
      - name: aap-operator.v2.5.0-0.1750901870
        version: 2.5.0+0.1750901870
      - name: aap-operator.v2.5.0-0.1753900674
        version: 2.5.0+0.1753900674
      - name: aap-operator.v2.5.0-0.1755835623
        version: 2.5.0+0.1755835623
      - name: aap-operator.v2.5.0-0.1758147817
        version: 2.5.0+0.1758147817
      - name: aap-operator.v2.5.0-0.1761050855
        version: 2.5.0+0.1761050855
      - name: aap-operator.v2.5.0-0.1764945371
        version: 2.5.0+0.1764945371
      name: stable-2.5-cluster-scoped
    - currentCSV: aap-operator.v2.6.0-0.1764966733
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727257740 <2.6.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation Controller
              - Automation Hub
              - EDA
              - Ansible Lightspeed
              - Ansible MCP Server
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Ansible MCP Server.
            displayName: Ansible MCP Server
            kind: AnsibleMCPServer
            name: ansiblemcpservers.mcpserver.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Automation Gateway - Unify the management of AAP from a central location.
            * Automation Controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private Automation Hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Ansible Lightspeed: Deploy and manage the lifecycle of an Ansible Lightspeed application.
            * Platform Resource Operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner

          ## New in AAP 2.6 and 2.5

          In AAP 2.5, we are introducing a unified experience for all of the services provided in the Ansible Automation Platform. You can now manage content from Hub, rulebooks from EDA and automation jobs from Controller in a single pane.

          Instead of creating individual AutomationController, AutomationHub, and EDA custom resources, you will now instead create a single AnsibleAutomationPlatform custom resource.

          Ansible Lightspeed and it's integration with Watson Code Assistant is now available.  To read more about configuring it, please read https://red.ht/ansible-lightspeed-2x-docs.

          The managed database has been upgraded to PostgreSQL 15.


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-26

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console.

          **For customers on AAP 2.4:** Change the channel directly from `stable-2.4` to `stable-2.6` to upgrade directly to AAP 2.6, which will be released in October.

          **For customers on AAP 2.5:** Change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place. When upgrading from AAP 2.4 to 2.6, your external authentication configuration in Automation Controller will automatically be migrated to the new unified Platform UI.

          **Database:** AAP 2.6 continues to use PostgreSQL 15.

          #### Create the AnsibleAutomationPlatform custom resource (Required for upgrades from 2.4 only)

          **If upgrading from AAP 2.4:** Once the operator upgrade is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created.

          **If upgrading from AAP 2.5:** This step is not required as your AnsibleAutomationPlatform custom resource already exists.

          Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          Next, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda (lightspeed is disabled by default):


          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: aap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/ansible-automation-platform-26/hub-web-rhel9@sha256:285dd1aef3fff0c9e7fc9c61e3144307d8ea890ce21f87795c8e0e203ebf56e9
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-chatbot-rhel9@sha256:64fbb98e583452568482f059127defbca2257155ff920ab10c77aaccd32d6adb
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        - registry.redhat.io/ansible-automation-platform-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:88d59edb37c5c1588e22623e1a0c8c2e8bd793c52f2f8fcbedf8d6c4697874e8
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/ansible-automation-platform-26/gateway-proxy-rhel9@sha256:0cee3b756e3df8b9fa583f198dc4dec3dfe281c8a041455bc1bc5a748f1302d0
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9-operator@sha256:258d532cb566c43aa876d28435323bb7e80061f826c47669eb2d6ef348b996fd
        - registry.redhat.io/ansible-automation-platform-26/mcp-tools-rhel9@sha256:af2a28820846c524bb6828c6d6caf7929cbb198f303fbd8d9d0b940dd8226b9d
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        - registry.redhat.io/ansible-automation-platform-26/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9-operator@sha256:53ae38609933ea51171397af3af40f69165f293c621723f71ba9a48f72003e04
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-ui-rhel9@sha256:195a08ebffae71c3d37414d983dc9291bbe2d33a4a1f2d716654a2f7b67d2026
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9@sha256:3d947d906bc1cc146256877e0b458021bed8496a8e89a7628359c4d92990d2a7
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9@sha256:47942913af0c6782621af11824b6c8725e52864b52f21b164398cbf7a636212d
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9@sha256:d77101384b94a0306ae9b1dbaf8be6e5ee9eeb5c2e57ebe8189a2e2bac9fa9f7
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9-operator@sha256:5cdb95b53c3fe5363d4f74883410a435a2dd3f39e5be7af1130137f582ab4af2
        version: 2.6.0+0.1764966733
      entries:
      - name: aap-operator.v2.6.0-0.1758684783
        version: 2.6.0+0.1758684783
      - name: aap-operator.v2.6.0-0.1759764484
        version: 2.6.0+0.1759764484
      - name: aap-operator.v2.6.0-0.1760139263
        version: 2.6.0+0.1760139263
      - name: aap-operator.v2.6.0-0.1761281301
        version: 2.6.0+0.1761281301
      - name: aap-operator.v2.6.0-0.1762261205
        version: 2.6.0+0.1762261205
      - name: aap-operator.v2.6.0-0.1763137334
        version: 2.6.0+0.1763137334
      - name: aap-operator.v2.6.0-0.1764966733
        version: 2.6.0+0.1764966733
      name: stable-2.6
    - currentCSV: aap-operator.v2.6.0-0.1764966767
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Automation Platform Resource Operator manages everything
            Automation
          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: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=2.4.0-0.1727259094 <2.6.1'
          operatorframework.io/suggested-namespace: aap
          operators.openshift.io/valid-subscription: '["Red Hat Ansible Automation
            Platform"]'
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Create a complete backup of an Ansible Automation Platform
              instance.
            displayName: Ansible Automation Platform Backup
            kind: AnsibleAutomationPlatformBackup
            name: ansibleautomationplatformbackups.aap.ansible.com
            version: v1alpha1
          - description: Restore a backup of an Ansible Automation Platform instance.
            displayName: Ansible Automation Platform Restore
            kind: AnsibleAutomationPlatformRestore
            name: ansibleautomationplatformrestores.aap.ansible.com
            version: v1alpha1
          - description: |-
              Deploy the complete platform:
              - Automation Controller
              - Automation Hub
              - EDA
              - Ansible Lightspeed
              - Ansible MCP Server
            displayName: Ansible Automation Platform
            kind: AnsibleAutomationPlatform
            name: ansibleautomationplatforms.aap.ansible.com
            version: v1alpha1
          - description: Back up a deployment of the controller, including jobs, inventories,
              and credentials
            displayName: Automation Controller Backup
            kind: AutomationControllerBackup
            name: automationcontrollerbackups.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a instance of AutomationController Mesh ingress to
              allow inbound connection to the AutomationController Receptor Mesh.
            displayName: Automation Controller Mesh Ingress
            kind: AutomationControllerMeshIngress
            name: automationcontrollermeshingresses.automationcontroller.ansible.com
            version: v1alpha1
          - description: Restore a previous controller deployment from an AutomationControllerBackup.
              The deployment name you provide will be the name of the new AutomationController
              CR that will be created.
            displayName: Automation Controller Restore
            kind: AutomationControllerRestore
            name: automationcontrollerrestores.automationcontroller.ansible.com
            version: v1beta1
          - description: Deploy a new instance of AutomationController. A standardized
              way to define, operate and scale automation with Ansible.
            displayName: Automation Controller
            kind: AutomationController
            name: automationcontrollers.automationcontroller.ansible.com
            version: v1beta1
          - description: Back up a deployment of the eda, including jobs, inventories,
              and credentials
            displayName: EDA Backup
            kind: EDABackup
            name: edabackups.eda.ansible.com
            version: v1alpha1
          - description: Restore a previous eda deployment from an EDABackup. The
              deployment name you provide will be the name of the new EDA CR that
              will be created.
            displayName: EDA Restore
            kind: EDARestore
            name: edarestores.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Event-Driven Ansible Server. A standardized
              way to configure and run rulebooks to trigger automation.
            displayName: EDA
            kind: EDA
            name: edas.eda.ansible.com
            version: v1alpha1
          - description: Deploy a new AutomationHub instance
            displayName: Automation Hub
            kind: AutomationHub
            name: automationhubs.automationhub.ansible.com
            version: v1beta1
          - description: Back up a deployment of the AutomationHub, including all
              hosted Ansible content, secrets and the database. By default, a persistent
              volume claim will be created using the default StorageClass on your
              cluster to store the backup on.
            displayName: Automation Hub Backup
            kind: AutomationHubBackup
            name: automationhubbackups.automationhub.ansible.com
            version: v1beta1
          - description: Restore a previous AutomationHub deployment into the namespace
            displayName: Automation Hub Restore
            kind: AutomationHubRestore
            name: automationhubrestores.automationhub.ansible.com
            version: v1beta1
          - description: Deploy a new instance of Ansible Lightspeed.
            displayName: Ansible Lightspeed
            kind: AnsibleLightspeed
            name: ansiblelightspeeds.lightspeed.ansible.com
            version: v1alpha1
          - description: Deploy a new instance of Ansible MCP Server.
            displayName: Ansible MCP Server
            kind: AnsibleMCPServer
            name: ansiblemcpservers.mcpserver.ansible.com
            version: v1alpha1
          - description: Define a Credential
            displayName: Automation Controller Credential
            kind: AnsibleCredential
            name: ansiblecredentials.tower.ansible.com
            version: v1alpha1
          - description: Define an Instance Group
            displayName: Automation Controller Instance Group
            kind: AnsibleInstanceGroup
            name: ansibleinstancegroups.tower.ansible.com
            version: v1alpha1
          - description: Define a new Inventory in controller
            displayName: Automation Controller Inventory
            kind: AnsibleInventory
            name: ansibleinventories.tower.ansible.com
            version: v1alpha1
          - description: Launch a new job via controller
            displayName: Automation Controller Job
            kind: AnsibleJob
            name: ansiblejobs.tower.ansible.com
            version: v1alpha1
          - description: Define a new project in controller
            displayName: Automation Controller Project
            kind: AnsibleProject
            name: ansibleprojects.tower.ansible.com
            version: v1alpha1
          - description: Define a new Schedule in controller
            displayName: Automation Controller Schedule
            kind: AnsibleSchedule
            name: ansibleschedules.tower.ansible.com
            version: v1alpha1
          - description: Launch a new workflow via controller
            displayName: Automation Controller Workflow
            kind: AnsibleWorkflow
            name: ansibleworkflows.tower.ansible.com
            version: v1alpha1
          - description: Define a new job template in controller
            displayName: Automation Controller Job Template
            kind: JobTemplate
            name: jobtemplates.tower.ansible.com
            version: v1alpha1
          - description: Define a new workflow template
            displayName: Automation Controller Workflow Template
            kind: WorkflowTemplate
            name: workflowtemplates.tower.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Automation Platform is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Automation Platform Operator provides for push-button deployments and seamless upgrades of the Platform into your OpenShift environment. Ansible Automation Platform deployments include:
            * Automation Gateway - Unify the management of AAP from a central location.
            * Automation Controller - Define, operate, scale, and delegate automation across the enterprise.
            * Event-Driven Ansible controller - Configure Ansible rulebooks to trigger automation when specific conditions are met, and manage rulebook lifecycles
            * Private Automation Hub - Synchronize, manage and publish automation content to streamline Ansible code within your organization
            * Ansible Lightspeed: Deploy and manage the lifecycle of an Ansible Lightspeed application.
            * Platform Resource Operator - Define, launch, and monitor automation and AAP resources in a cloud-native manner

          ## New in AAP 2.6 and 2.5

          In AAP 2.5, we are introducing a unified experience for all of the services provided in the Ansible Automation Platform. You can now manage content from Hub, rulebooks from EDA and automation jobs from Controller in a single pane.

          Instead of creating individual AutomationController, AutomationHub, and EDA custom resources, you will now instead create a single AnsibleAutomationPlatform custom resource.

          Ansible Lightspeed and it's integration with Watson Code Assistant is now available.  To read more about configuring it, please read https://red.ht/ansible-lightspeed-2x-docs.

          The managed database has been upgraded to PostgreSQL 15.


          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Automation Platform operator by following instructions presented when you click the Install button.
          You can find additional installation guidance in the install documentation: https://red.ht/AAP-26

          ## How to Upgrade

          ### Backup before upgrading

          It is recommended to take a backup of your deployment before upgrading.
          * If you are still on AAP 2.4, to take a backup, create AutomationControllerBackup, AutomationHubBackup and EDABackup objects for your deployments.
          * If you are on AAP 2.5 and above, create an AnsibleAutomationPlatformBackup object for your deployment to take a backup.

          ### Upgrading to 2.6

          #### Change the Operator Channel

          When you are ready to upgrade to the next major or minor version, you can do so by changing the channel in the Subscription tab in the Openshift Console.

          **For customers on AAP 2.4:** Change the channel directly from `stable-2.4` to `stable-2.6` to upgrade directly to AAP 2.6, which will be released in October.

          **For customers on AAP 2.5:** Change the channel from `stable-2.5` to `stable-2.6`.

          *Note:* Namespace-scoped and Cluster-scoped deployments are not compatible.

          After changing to the new 2.6 channel, the AAP Operator will update your existing Controller, Hub and EDA deployments in place. When upgrading from AAP 2.4 to 2.6, your external authentication configuration in Automation Controller will automatically be migrated to the new unified Platform UI.

          **Database:** AAP 2.6 continues to use PostgreSQL 15.

          #### Create the AnsibleAutomationPlatform custom resource (Required for upgrades from 2.4 only)

          **If upgrading from AAP 2.4:** Once the operator upgrade is complete, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created.

          **If upgrading from AAP 2.5:** This step is not required as your AnsibleAutomationPlatform custom resource already exists.

          Here is an example spec which uses an existing controller, deploys a fresh hub and eda, and does not deploy lightspeed:

          Next, create an AnsibleAutomationPlatform custom resource to enable the unified UI. On the AnsibleAutomationPlatform custom resource, you can specify the name of an existing component (controller, hub, eda, lightspeed) in the same namespace and it will register that deployment with the new UI. If a component by that name does not exist, one will be created. Here is an example spec which uses an existing controller, deploys a fresh hub and eda (lightspeed is disabled by default):


          ```
          ---
          apiVersion: aap.ansible.com/v1alpha1
          kind: AnsibleAutomationPlatform
          metadata:
            name: aap
            namespace: aap
          spec:
            # Platform
            image_pull_policy: IfNotPresent

            # Components
            controller:
              disabled: false
              name: existing-controller-name

            hub:
              disabled: false
              name: existing-hub-name

              ## uncomment if using file storage for Content pod
              storage_type: file
              file_storage_storage_class: your-rwx-storage-class
              file_storage_size: 10Gi

              ## uncomment if using S3 storage for Content pod
              # storage_type: S3
              # object_storage_s3_secret: example-galaxy-object-storage

              ## uncomment if using Azure storage for Content pod
              # storage_type: azure
              # object_storage_azure_secret: azure-secret-name

            eda:
              disabled: false

            lightspeed:
              disabled: true
          ```

          ### Accessing the AAP UI

          Once the upgrade is complete, you can access the AAP Platform UI by navigating to the route created for the AnsibleAutomationPlatform custom resource. The route will be named the same as your deployment name (`myaap` in the example above).

          This Platform URL is the single pane of glass for all of your Ansible Automation Platform services.  The Rest API for each service in the platform is also available at this URL at `/api/controller`, `/api/galaxy`, `/api/eda`.  For backwards compatibility, the API endpoints on the existing routes for each service are still available in upgraded environments for a time.
        displayName: Ansible Automation Platform
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-controller
        - automation-hub
        - automation-platform
        - ansible-automation-platform
        - aap
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform-26/ee-supported-rhel9@sha256:02497f20365eab2bad4f8a821340cd662dac4ab97dea32e089c9eb5e9887e4dd
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9@sha256:47942913af0c6782621af11824b6c8725e52864b52f21b164398cbf7a636212d
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9-operator@sha256:5cdb95b53c3fe5363d4f74883410a435a2dd3f39e5be7af1130137f582ab4af2
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-rhel9@sha256:faee3e84f576125eb35907e55f88f8c70e7dfb13e4fe084394c1fc8b3da6b2d3
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9-operator@sha256:258d532cb566c43aa876d28435323bb7e80061f826c47669eb2d6ef348b996fd
        - registry.redhat.io/ansible-automation-platform-26/eda-controller-ui-rhel9@sha256:195a08ebffae71c3d37414d983dc9291bbe2d33a4a1f2d716654a2f7b67d2026
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9@sha256:d77101384b94a0306ae9b1dbaf8be6e5ee9eeb5c2e57ebe8189a2e2bac9fa9f7
        - registry.redhat.io/ansible-automation-platform-26/mcp-tools-rhel9@sha256:af2a28820846c524bb6828c6d6caf7929cbb198f303fbd8d9d0b940dd8226b9d
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-runner-rhel9@sha256:f095e909fb5459df6b7d157584f67237b71f25bda466a0ae531aa402add600d3
        - registry.redhat.io/ansible-automation-platform-tech-preview/mcp-server-rhel9@sha256:49fe9e34f03730845d85d07eca7e12e9fb5a09df6526d1e46eb096a53ed3c9da
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-chatbot-rhel9@sha256:64fbb98e583452568482f059127defbca2257155ff920ab10c77aaccd32d6adb
        - registry.redhat.io/ansible-automation-platform-26/controller-rhel9-operator@sha256:379ecd40280570da753d1176319602e3f795ea8a15220796336bb5f034a0a23b
        - registry.redhat.io/rhel9/redis-6:1@sha256:0962d18bb5292c0e524354f319b63287c2298a4a2fd34556c68fa285df381427
        - registry.redhat.io/ubi9-minimal:latest@sha256:7c5495d5fad59aaee12abc3cbbd2b283818ee1e814b00dbc7f25bf2d14fa4f0c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.18@sha256:784c4667a867abdbec6d31a4bbde52676a0f37f8e448eaae37568a46fcdeace7
        - registry.redhat.io/ansible-automation-platform/platform-operator-bundle@sha256:e52d16eb8343528b0d92860486ca3944e6f49fc9d8a2057c247e387bc3685abe
        - registry.redhat.io/ansible-automation-platform-26/platform-resource-rhel9-operator@sha256:6f936afeb315c70500931b4b977fc98b6f04d0efdf2eced896b793b1c93932f6
        - registry.redhat.io/ansible-automation-platform-26/ee-minimal-rhel9@sha256:95605453fe1f6358d8e3e35f354cf1c11da6a992cb171364a1675df8624f0cb0
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9-operator@sha256:53ae38609933ea51171397af3af40f69165f293c621723f71ba9a48f72003e04
        - registry.redhat.io/ansible-automation-platform-26/gateway-rhel9@sha256:3d947d906bc1cc146256877e0b458021bed8496a8e89a7628359c4d92990d2a7
        - registry.redhat.io/ansible-automation-platform-26/hub-web-rhel9@sha256:285dd1aef3fff0c9e7fc9c61e3144307d8ea890ce21f87795c8e0e203ebf56e9
        - registry.redhat.io/ansible-automation-platform-26/lightspeed-rhel9@sha256:475101378a9996b86c0cfaf5f5061e0a8c5c3091bdb45f5a8375d7c052c048e1
        - registry.redhat.io/rhel9/postgresql-15:1@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/ansible-automation-platform-26/gateway-proxy-rhel9@sha256:0cee3b756e3df8b9fa583f198dc4dec3dfe281c8a041455bc1bc5a748f1302d0
        - registry.redhat.io/ansible-automation-platform-26/hub-rhel9-operator@sha256:ad204b05cfc651e873d60117581878e471e62cd597b01720bc68020da76d490d
        version: 2.6.0+0.1764966767
      entries:
      - name: aap-operator.v2.6.0-0.1758685241
        version: 2.6.0+0.1758685241
      - name: aap-operator.v2.6.0-0.1759764962
        version: 2.6.0+0.1759764962
      - name: aap-operator.v2.6.0-0.1760139657
        version: 2.6.0+0.1760139657
      - name: aap-operator.v2.6.0-0.1761281346
        version: 2.6.0+0.1761281346
      - name: aap-operator.v2.6.0-0.1762261209
        version: 2.6.0+0.1762261209
      - name: aap-operator.v2.6.0-0.1763137355
        version: 2.6.0+0.1763137355
      - name: aap-operator.v2.6.0-0.1764966767
        version: 2.6.0+0.1764966767
      name: stable-2.6-cluster-scoped
    defaultChannel: stable-2.6
    packageName: ansible-automation-platform-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Nokia
      provider-url: https://docs.eda.dev
    name: eda-k8s-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eda-openshift-operator.v4.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "config.eda.nokia.com/v1",
                "kind": "ConnectControllerConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "operator"
                  },
                  "name": "connectcontrollerconfig-sample",
                  "namespace": "eda-connect-k8s"
                },
                "spec": {
                  "connectPluginName": "",
                  "controllerImagePullSecret": "",
                  "edaNamespace": "eda",
                  "heartBeat": "",
                  "logLevel": "",
                  "skipTLSVerify": false,
                  "tlsCertificateData": "",
                  "tlsEnabled": true
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:c43a7fa7475db83011cc08b728982511fc0279a259e1aacc8ddde9e15f947725
          createdAt: "2025-06-10T15:47:27Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: eda-connect-k8s
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["connectnetworkattachmentstatuses.connect.eda.nokia.com",
            connectnetworkdefinitions.connect.eda.nokia.com]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConnectNetworkAttachmentStatus is the Schema for the connectnetworkattachmentstatuses
              API
            displayName: Connect NetworkAttachment Status
            kind: ConnectNetworkAttachmentStatus
            name: connectnetworkattachmentstatuses.connect.eda.nokia.com
            version: v1
          - description: ConnectNetworkDefinition is the Schema for the connectnetworkdefinitions
              API
            displayName: Connect Network Definition
            kind: ConnectNetworkDefinition
            name: connectnetworkdefinitions.connect.eda.nokia.com
            version: v1
          - description: ConnectControllerConfig is the Schema for the connectcontrollerconfigs
              API
            displayName: Connect Controller Config
            kind: ConnectControllerConfig
            name: connectcontrollerconfigs.config.eda.nokia.com
            version: v1
        description: "K8s operator to deploy eda connect controller to configure EDA
          Connect.\eb"
        displayName: eda-openshift-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - EDA Connect
        - K8s Controller
        - EDA K8s Controller Operator
        links:
        - name: EDA Connect K8s Controller Operator
          url: https://docs.eda.dev/connect/openshift-plugin/
        maintainers:
        - email: support@nokia.com
          name: nokia
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Nokia
          url: https://docs.eda.dev
        relatedImages:
        - ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:c43a7fa7475db83011cc08b728982511fc0279a259e1aacc8ddde9e15f947725
        - registry.connect.redhat.com/nokia-ni/eda-openshift-operator@sha256:a5645cb55c3e6c22655c6c8606b9bd51a49db44aecc3fe52e0eb80cca83d17c4
        version: 4.0.0
      entries:
      - name: eda-openshift-operator.v4.0.0
        version: 4.0.0
      name: alpha
    - currentCSV: eda-openshift-operator.v5.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "config.eda.nokia.com/v1",
                "kind": "ConnectControllerConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "operator"
                  },
                  "name": "connectcontrollerconfig-sample",
                  "namespace": "eda-connect-k8s"
                },
                "spec": {
                  "connectPluginName": "",
                  "controllerImagePullSecret": "",
                  "edaNamespace": "eda",
                  "heartBeat": "",
                  "logLevel": "",
                  "skipTLSVerify": false,
                  "tlsCertificateData": "",
                  "tlsEnabled": true
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:1a025d30e46cebaf804494dbb6d5140cb0e2fe6c83203177c4829bf0bcd94273
          createdAt: "2025-06-10T15:47:27Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: eda-connect-k8s
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["connectnetworkattachmentstatuses.connect.eda.nokia.com",
            connectnetworkdefinitions.connect.eda.nokia.com]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConnectNetworkAttachmentStatus is the Schema for the connectnetworkattachmentstatuses
              API
            displayName: Connect NetworkAttachment Status
            kind: ConnectNetworkAttachmentStatus
            name: connectnetworkattachmentstatuses.connect.eda.nokia.com
            version: v1
          - description: ConnectNetworkDefinition is the Schema for the connectnetworkdefinitions
              API
            displayName: Connect Network Definition
            kind: ConnectNetworkDefinition
            name: connectnetworkdefinitions.connect.eda.nokia.com
            version: v1
          - description: ConnectControllerConfig is the Schema for the connectcontrollerconfigs
              API
            displayName: Connect Controller Config
            kind: ConnectControllerConfig
            name: connectcontrollerconfigs.config.eda.nokia.com
            version: v1
        description: "K8s operator to deploy eda connect controller to configure EDA
          Connect.\eb"
        displayName: eda-openshift-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - EDA Connect
        - K8s Controller
        - EDA K8s Controller Operator
        links:
        - name: EDA Connect K8s Controller Operator
          url: https://docs.eda.dev/connect/openshift-plugin/
        maintainers:
        - email: support@nokia.com
          name: nokia
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Nokia
          url: https://docs.eda.dev
        relatedImages:
        - ghcr.io/nokia-eda/eda-connect-k8s-operator@sha256:1a025d30e46cebaf804494dbb6d5140cb0e2fe6c83203177c4829bf0bcd94273
        - registry.connect.redhat.com/nokia-ni/eda-openshift-operator@sha256:993f64a35cba84eafe2bc365e09770048f611a4e74cc2a4bb143de7675ed3880
        version: 5.0.0
      entries:
      - name: eda-openshift-operator.v5.0.0
        version: 5.0.0
      name: stable
    defaultChannel: alpha
    packageName: eda-k8s-operator
    provider:
      name: Nokia
      url: https://docs.eda.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: kubeturbo-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubeturbo-operator.v8.18.40-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5-beta.1 <8.18.40-beta.1'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBM Turbonomic software automates and simultaneously optimizes
              performance, compliance, and cost in real time. Turbonomic discovers
              and automates resource optimization for the complete application stack.
              Applications are continually resourced to perform while satisfying technical
              and business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
          - kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Optimization for Kubernetes
          IBM Turbonomic software automates and simultaneously optimizes performance, compliance, and cost in real time.
          Turbonomic discovers and automates resource optimization for the complete application stack. Applications are continually resourced to perform while satisfying technical and business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (proactive rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          Turbonomic assures application performance by giving workloads the resources they need when they need them.

          ### How Does It Work?
          Turbonomic uses a client agent called — KubeTurbo — that runs in your cluster to discover, monitor and optimize resource usage within your environment.
          KubeTurbo runs together with the default Kubernetes scheduler and sends data back to the Turbonomic for analysis.
          Turbonomic determines the right actions that drive continuous health for your workloads and your cluster.

          Turbonomic discovers Red Hat OpenShift Virtualization resources through a new or existing target configuration with Red Hat OpenShift. For more information refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=targets-red-hat-openshift-virtualization)

          ### Get Started
          Please follow the [Kubeturbo Documentation Page](https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets) for all deployment options and an overview of typical use cases.

          ### Known Issues
          For known issues refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=notes-known-issues)
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Kubeturbo Documentation Page
          url: https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets
        - name: Kubeturbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
        - name: IBM Turbonomic Application Resource Management
          url: https://www.ibm.com/products/turbonomic
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/kubeturbo-operator@sha256:177745cccc3d52fe82340174f39be9ab39118f661baa0b79e8719f951b13f1fe
        - registry.connect.redhat.com/turbonomic/kubeturbo-operator-bundle@sha256:69e62d414a3fa27a0c06c92b425bdbc4034d9157953668a11be1a4f150a4e9bb
        version: 8.18.40-beta.1
      entries:
      - name: kubeturbo-operator.v8.18.40-beta.1
        version: 8.18.40-beta.1
      name: beta
    - currentCSV: kubeturbo-operator.v8.18.30
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5 <8.18.30'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBM Turbonomic software automates and simultaneously optimizes
              performance, compliance, and cost in real time. Turbonomic discovers
              and automates resource optimization for the complete application stack.
              Applications are continually resourced to perform while satisfying technical
              and business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
          - kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Optimization for Kubernetes
          IBM Turbonomic software automates and simultaneously optimizes performance, compliance, and cost in real time.
          Turbonomic discovers and automates resource optimization for the complete application stack. Applications are continually resourced to perform while satisfying technical and business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (proactive rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          Turbonomic assures application performance by giving workloads the resources they need when they need them.

          ### How Does It Work?
          Turbonomic uses a client agent called — KubeTurbo — that runs in your cluster to discover, monitor and optimize resource usage within your environment.
          KubeTurbo runs together with the default Kubernetes scheduler and sends data back to the Turbonomic for analysis.
          Turbonomic determines the right actions that drive continuous health for your workloads and your cluster.

          Turbonomic discovers Red Hat OpenShift Virtualization resources through a new or existing target configuration with Red Hat OpenShift. For more information refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=targets-red-hat-openshift-virtualization)

          ### Get Started
          Please follow the [Kubeturbo Documentation Page](https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets) for all deployment options and an overview of typical use cases.

          ### Known Issues
          For known issues refer to this [link](https://www.ibm.com/docs/en/tarm/8.16.x?topic=notes-known-issues)
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Kubeturbo Documentation Page
          url: https://www.ibm.com/docs/en/tarm/latest?topic=configuration-container-platform-targets
        - name: Kubeturbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/kubeturbo
        - name: IBM Turbonomic Application Resource Management
          url: https://www.ibm.com/products/turbonomic
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/kubeturbo-operator@sha256:17f2ee1a241c5d84e66d47febf409f08868b6e372b2ba6b420e30f759a94487b
        - registry.connect.redhat.com/turbonomic/kubeturbo-operator-bundle@sha256:337da31b04c4739571e5bd7c4f5bc89c82cb3c2d74341b456f65c5435a24b647
        version: 8.18.30
      entries:
      - name: kubeturbo-operator.v8.18.30
        version: 8.18.30
      name: stable
    defaultChannel: stable
    packageName: kubeturbo-certified
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CrowdStrike
      provider-url: https://crowdStrike.com
    name: falcon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: falcon-operator.v1.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconAdmission",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcon-admission",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falconadmission",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-kac"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "admission_controller"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconContainer",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcon-sidecar-sensor",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falconcontainer",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-container-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "sidecar"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconDeployment",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcondeployment-sample",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falcon-deployment",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-deployment"
                },
                "spec": {
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconImageAnalyzer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "falcon-operator",
                    "app.kubernetes.io/instance": "falconimageanalyzer-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "falconimageanalyzer",
                    "app.kubernetes.io/part-of": "falcon-operator"
                  },
                  "name": "falcon-image-analyzer"
                },
                "spec": {
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconNodeSensor",
                "metadata": {
                  "labels": {
                    "crowdstrike.com/component": "sample",
                    "crowdstrike.com/created-by": "falcon-operator",
                    "crowdstrike.com/instance": "falcon-node-sensor",
                    "crowdstrike.com/managed-by": "kustomize",
                    "crowdstrike.com/name": "falconnodesensor",
                    "crowdstrike.com/part-of": "Falcon",
                    "crowdstrike.com/provider": "crowdstrike"
                  },
                  "name": "falcon-node-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "daemonset"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security,Monitoring
          containerImage: registry.connect.redhat.com/crowdstrike/falcon-operator@sha256:a31709f0e35564badc0123095952f957d0d639ced1fe000610008222e4d45725
          createdAt: "2025-11-18T23:39:10Z"
          description: Falcon Operator installs CrowdStrike Falcon Sensors on the
            cluster
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: falcon-operator
          operators.openshift.io/valid-subscription: Not required to use this operator
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: registry.connect.redhat.com/crowdstrike/falcon-operator
          support: CrowdStrike
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FalconAdmission is the Schema for the falconadmissions API
            displayName: Falcon Admission
            kind: FalconAdmission
            name: falconadmissions.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconContainer is the Schema for the falconcontainers API
            displayName: Falcon Container
            kind: FalconContainer
            name: falconcontainers.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconDeployment is the Schema for the falcondeployments
              API
            displayName: Falcon Deployment
            kind: FalconDeployment
            name: falcondeployments.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconImageAnalyzer is the Schema for the falconImageAnalyzers
              API
            displayName: Falcon Image Analyzer
            kind: FalconImageAnalyzer
            name: falconimageanalyzers.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconNodeSensor is the Schema for the falconnodesensors
              API
            displayName: Falcon Node Sensor
            kind: FalconNodeSensor
            name: falconnodesensors.falcon.crowdstrike.com
            version: v1alpha1
        description: |-
          The CrowdStrike Falcon Operator installs CrowdStrike Falcon custom resources on a Kubernetes cluster.

          ## About the CrowdStrike Falcon Operator
          The CrowdStrike Falcon Operator deploys CrowdStrike Falcon to the cluster. The operator exposes custom resources that allow you to protect your Kubernetes clusters when deployed.

          ## About Custom Resources

          | Custom Resource                                       | Description                                                      |
          | :--                                             | :--                                                    |
          | [FalconAdmission](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/admission/README.md) | Manages installation of Falcon Admission Controller on the cluster |
          | [FalconImageAnalyzer](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/imageanalyzer/README.md) | Manages installation of Falcon Image Assessment at Runtime on the cluster |
          | [FalconContainer](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/container/README.md) | Manages installation of Falcon Container Sensor on the cluster   |
          | [FalconNodeSensor](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/node/README.md)     | Manages installation of Falcon Linux Sensor on the cluster nodes |
          | [FalconDeployment](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/falcondeployment/README.md)       | Deploys FalconAdmission, FalconImageAnalyzer, FalconContainer, and FalconNodeSensor CRs from a single manifest |

          ## Installation and Deployment

          For installation and deployment of the CrowdStrike Falcon Operator and its Custom Resources, please read the [Installation and Deployment Guide](./docs/install_guide.md) and choose the deployment method that is right for your target environment.

          ## Getting Help
          If you encounter any issues while using the Falcon Operator, you can create an issue on our [Github repo](https://github.com/CrowdStrike/falcon-operator) for bugs, enhancements, or other requests.

          ## Contributing
          You can contribute by:

          * Raising any issues you find using Falcon Operator
          * Fixing issues by opening [Pull Requests](https://github.com/CrowdStrike/falcon-operator/pulls)
          * Improving documentation
          * Talking about the CrowdStrike Falcon Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/CrowdStrike/falcon-operator/issues).

          ## Additional Resources
           - CrowdStrike Container Security: [Product Page](https://www.crowdstrike.com/products/cloud-security/falcon-cloud-workload-protection/container-security/)
           - So You Think Your Containers Are Secure? Four Steps to Ensure a Secure Container Deployment: [Blog Post](https://www.crowdstrike.com/blog/four-steps-to-ensure-a-secure-containter-deployment/)
           - Container Security With CrowdStrike: [Blog Post](https://www.crowdstrike.com/blog/tech-center/container-security/)
           - To learn more about Falcon Container Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/support/documentation/146/falcon-container-sensor-for-linux), [Release Notes](https://falcon.crowdstrike.com/support/news/release-notes-falcon-container-sensor-for-linux)
           - To learn more about Falcon Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/documentation/20/falcon-sensor-for-linux#kubernetes-support)
           - [Developer Documentation](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/developer_guide.md)
        displayName: CrowdStrike Falcon Platform - Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - runtime-protection
        links:
        - name: Falcon Operator
          url: https://github.com/CrowdStrike/falcon-operator
        maintainers:
        - email: integrations@crowdstrike.com
          name: CrowdStrike Solutions Architecture
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: CrowdStrike
          url: https://crowdStrike.com
        relatedImages:
        - registry.connect.redhat.com/crowdstrike/falcon-operator-bundle@sha256:abb34bed5bfc9472c0d9cacb52a7dc5b95cf4081a4667f28ae47b36b07bc0cf8
        - registry.connect.redhat.com/crowdstrike/falcon-operator@sha256:a31709f0e35564badc0123095952f957d0d639ced1fe000610008222e4d45725
        - registry.crowdstrike.com/falcon-container/us-1/release/falcon-sensor@sha256:b9b27660c5924fe99666f638540da51e682c1ad1af0c982f1f8af7b6de1bda20
        - registry.crowdstrike.com/falcon-imageanalyzer/us-1/release/falcon-imageanalyzer@sha256:cd6294a2b62d3b57d18f0528c3b0eda669afd5f393b2bbc582665223329ad8cc
        - registry.crowdstrike.com/falcon-kac/us-1/release/falcon-kac@sha256:14b3a07db24aac43d7397aa1428a8551a15984eba26e79655d66d7a4473cb4a0
        - registry.crowdstrike.com/falcon-sensor/release/falcon-sensor@sha256:b3b575772b6e9ca4dc3cfadac0d3e5c8d752adb3687553d0e52f72eee3229074
        version: 1.9.0
      entries:
      - name: falcon-operator.v1.9.0
        version: 1.9.0
      - name: falcon-operator.v1.8.0
        version: 1.8.0
      - name: falcon-operator.v1.7.0
        version: 1.7.0
      - name: falcon-operator.v1.6.0
        version: 1.6.0
      - name: falcon-operator.v1.5.0
        version: 1.5.0
      - name: falcon-operator.v1.4.0
        version: 1.4.0
      - name: falcon-operator.v1.3.1
        version: 1.3.1
      - name: falcon-operator.v1.3.0
        version: 1.3.0
      - name: falcon-operator.v1.2.0
        version: 1.2.0
      - name: falcon-operator.v1.1.0
        version: 1.1.0
      - name: falcon-operator.v1.0.1
        version: 1.0.1
      - name: falcon-operator.v1.0.0
        version: 1.0.0
      name: certified-1.0
    defaultChannel: certified-1.0
    packageName: falcon-operator
    provider:
      name: CrowdStrike
      url: https://crowdStrike.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sagemaker-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sagemaker-controller.v1.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "App",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "DataQualityJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "Domain",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "Endpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "EndpointConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "FeatureGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "HyperParameterTuningJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "Model",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelBiasJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelExplainabilityJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelPackage",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelPackageGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ModelQualityJobDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "MonitoringSchedule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "NotebookInstance",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "NotebookInstanceLifecycleConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "ProcessingJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "TrainingJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "TransformJob",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sagemaker.services.k8s.aws/v1alpha1",
                "kind": "UserProfile",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sagemaker-controller:1.7.0
          createdAt: "2025-12-19T22:59:29Z"
          description: ACK service controller for Amazon SageMaker manages SageMaker
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: App represents the state of an AWS sagemaker App resource.
            displayName: App
            kind: App
            name: apps.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: DataQualityJobDefinition represents the state of an AWS sagemaker
              DataQualityJobDefinition resource.
            displayName: DataQualityJobDefinition
            kind: DataQualityJobDefinition
            name: dataqualityjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Domain represents the state of an AWS sagemaker Domain resource.
            displayName: Domain
            kind: Domain
            name: domains.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: EndpointConfig represents the state of an AWS sagemaker EndpointConfig
              resource.
            displayName: EndpointConfig
            kind: EndpointConfig
            name: endpointconfigs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Endpoint represents the state of an AWS sagemaker Endpoint
              resource.
            displayName: Endpoint
            kind: Endpoint
            name: endpoints.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: FeatureGroup represents the state of an AWS sagemaker FeatureGroup
              resource.
            displayName: FeatureGroup
            kind: FeatureGroup
            name: featuregroups.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: HyperParameterTuningJob represents the state of an AWS sagemaker
              HyperParameterTuningJob resource.
            displayName: HyperParameterTuningJob
            kind: HyperParameterTuningJob
            name: hyperparametertuningjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: InferenceComponent represents the state of an AWS sagemaker
              InferenceComponent resource.
            displayName: InferenceComponent
            kind: InferenceComponent
            name: inferencecomponents.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: LabelingJob represents the state of an AWS sagemaker LabelingJob
              resource.
            displayName: LabelingJob
            kind: LabelingJob
            name: labelingjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelBiasJobDefinition represents the state of an AWS sagemaker
              ModelBiasJobDefinition resource.
            displayName: ModelBiasJobDefinition
            kind: ModelBiasJobDefinition
            name: modelbiasjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelExplainabilityJobDefinition represents the state of
              an AWS sagemaker ModelExplainabilityJobDefinition resource.
            displayName: ModelExplainabilityJobDefinition
            kind: ModelExplainabilityJobDefinition
            name: modelexplainabilityjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelPackageGroup represents the state of an AWS sagemaker
              ModelPackageGroup resource.
            displayName: ModelPackageGroup
            kind: ModelPackageGroup
            name: modelpackagegroups.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelPackage represents the state of an AWS sagemaker ModelPackage
              resource.
            displayName: ModelPackage
            kind: ModelPackage
            name: modelpackages.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ModelQualityJobDefinition represents the state of an AWS
              sagemaker ModelQualityJobDefinition resource.
            displayName: ModelQualityJobDefinition
            kind: ModelQualityJobDefinition
            name: modelqualityjobdefinitions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Model represents the state of an AWS sagemaker Model resource.
            displayName: Model
            kind: Model
            name: models.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: MonitoringSchedule represents the state of an AWS sagemaker
              MonitoringSchedule resource.
            displayName: MonitoringSchedule
            kind: MonitoringSchedule
            name: monitoringschedules.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: NotebookInstanceLifecycleConfig represents the state of an
              AWS sagemaker NotebookInstanceLifecycleConfig resource.
            displayName: NotebookInstanceLifecycleConfig
            kind: NotebookInstanceLifecycleConfig
            name: notebookinstancelifecycleconfigs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: NotebookInstance represents the state of an AWS sagemaker
              NotebookInstance resource.
            displayName: NotebookInstance
            kind: NotebookInstance
            name: notebookinstances.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: PipelineExecution represents the state of an AWS sagemaker
              PipelineExecution resource.
            displayName: PipelineExecution
            kind: PipelineExecution
            name: pipelineexecutions.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Pipeline represents the state of an AWS sagemaker Pipeline
              resource.
            displayName: Pipeline
            kind: Pipeline
            name: pipelines.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: ProcessingJob represents the state of an AWS sagemaker ProcessingJob
              resource.
            displayName: ProcessingJob
            kind: ProcessingJob
            name: processingjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Project represents the state of an AWS sagemaker Project
              resource.
            displayName: Project
            kind: Project
            name: projects.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: Space represents the state of an AWS sagemaker Space resource.
            displayName: Space
            kind: Space
            name: spaces.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: TrainingJob represents the state of an AWS sagemaker TrainingJob
              resource.
            displayName: TrainingJob
            kind: TrainingJob
            name: trainingjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: TransformJob represents the state of an AWS sagemaker TransformJob
              resource.
            displayName: TransformJob
            kind: TransformJob
            name: transformjobs.sagemaker.services.k8s.aws
            version: v1alpha1
          - description: UserProfile represents the state of an AWS sagemaker UserProfile
              resource.
            displayName: UserProfile
            kind: UserProfile
            name: userprofiles.sagemaker.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon SageMaker resources in AWS from within your Kubernetes cluster.

          **About Amazon SageMaker**

          Amazon SageMaker helps data scientists and developers to prepare, build, train, and deploy high-quality machine learning (ML) models quickly by bringing together a broad set of capabilities purpose-built for ML.

          For more information on Amazon SageMaker, visit the [product page](https://aws.amazon.com/sagemaker/).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SageMaker
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sagemaker
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SageMaker Developer Resources
          url: https://aws.amazon.com/sagemaker/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: sagemaker maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sagemaker-controller:1.7.0
        - quay.io/community-operator-pipeline-prod/ack-sagemaker-controller@sha256:535345530777b2e692e264fb1d1c4e2a07c6c4e4c00a8bbe74a2e08a891e7fd7
        version: 1.7.0
      entries:
      - name: ack-sagemaker-controller.v1.7.0
        version: 1.7.0
      - name: ack-sagemaker-controller.v1.6.0
        version: 1.6.0
      - name: ack-sagemaker-controller.v1.5.1
        version: 1.5.1
      - name: ack-sagemaker-controller.v1.5.0
        version: 1.5.0
      - name: ack-sagemaker-controller.v1.4.1
        version: 1.4.1
      - name: ack-sagemaker-controller.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-sagemaker-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-prometheusservice-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-prometheusservice-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "prometheusservice.services.k8s.aws/v1alpha1",
                "kind": "RuleGroupsNamespace",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "prometheusservice.services.k8s.aws/v1alpha1",
                "kind": "Workspace",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/prometheusservice-controller:1.4.0
          createdAt: "2025-11-29T03:54:10Z"
          description: AWS Prometheus controller is a service controller for managing
            Prometheus resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertManagerDefinition represents the state of an AWS prometheusservice
              AlertManagerDefinition resource.
            displayName: AlertManagerDefinition
            kind: AlertManagerDefinition
            name: alertmanagerdefinitions.prometheusservice.services.k8s.aws
            version: v1alpha1
          - description: LoggingConfiguration represents the state of an AWS prometheusservice
              LoggingConfiguration resource.
            displayName: LoggingConfiguration
            kind: LoggingConfiguration
            name: loggingconfigurations.prometheusservice.services.k8s.aws
            version: v1alpha1
          - description: RuleGroupsNamespace represents the state of an AWS prometheusservice
              RuleGroupsNamespace resource.
            displayName: RuleGroupsNamespace
            kind: RuleGroupsNamespace
            name: rulegroupsnamespaces.prometheusservice.services.k8s.aws
            version: v1alpha1
          - description: Workspace represents the state of an AWS prometheusservice
              Workspace resource.
            displayName: Workspace
            kind: Workspace
            name: workspaces.prometheusservice.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Prometheus resources in AWS from within your Kubernetes cluster.

          **About Amazon Managed Service for Prometheus**

          Amazon Managed Service for Prometheus is a serverless, Prometheus-compatible monitoring service for container metrics that makes it easier to securely monitor container environments at scale. With Amazon Managed Service for Prometheus, you can use the same open-source Prometheus data model and query language that you use today to monitor the performance of your containerized workloads, and also enjoy improved scalability, availability, and security without having to manage the underlying infrastructure.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Prometheus
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - prometheusservice
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Prometheus Developer Resources
          url: https://aws.amazon.com/prometheus/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: prometheus maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-prometheusservice-controller@sha256:44f63e161a9f7bb8df06dc31803f9b8b45bc2c9bf2a0d68957f03faace33732f
        - public.ecr.aws/aws-controllers-k8s/prometheusservice-controller:1.4.0
        version: 1.4.0
      entries:
      - name: ack-prometheusservice-controller.v1.4.0
        version: 1.4.0
      - name: ack-prometheusservice-controller.v1.3.2
        version: 1.3.2
      - name: ack-prometheusservice-controller.v1.3.1
        version: 1.3.1
      - name: ack-prometheusservice-controller.v1.3.0
        version: 1.3.0
      - name: ack-prometheusservice-controller.v1.2.27
        version: 1.2.27
      - name: ack-prometheusservice-controller.v1.2.26
        version: 1.2.26
      - name: ack-prometheusservice-controller.v1.2.24
        version: 1.2.24
      - name: ack-prometheusservice-controller.v1.2.23
        version: 1.2.23
      - name: ack-prometheusservice-controller.v1.2.22
        version: 1.2.22
      - name: ack-prometheusservice-controller.v1.2.20
        version: 1.2.20
      - name: ack-prometheusservice-controller.v1.2.19
        version: 1.2.19
      - name: ack-prometheusservice-controller.v1.2.17
        version: 1.2.17
      - name: ack-prometheusservice-controller.v1.2.16
        version: 1.2.16
      - name: ack-prometheusservice-controller.v1.2.15
        version: 1.2.15
      - name: ack-prometheusservice-controller.v1.2.14
        version: 1.2.14
      - name: ack-prometheusservice-controller.v1.2.13
        version: 1.2.13
      - name: ack-prometheusservice-controller.v1.2.12
        version: 1.2.12
      - name: ack-prometheusservice-controller.v1.2.11
        version: 1.2.11
      - name: ack-prometheusservice-controller.v1.2.10
        version: 1.2.10
      - name: ack-prometheusservice-controller.v1.2.9
        version: 1.2.9
      - name: ack-prometheusservice-controller.v1.2.6
        version: 1.2.6
      - name: ack-prometheusservice-controller.v1.2.5
        version: 1.2.5
      - name: ack-prometheusservice-controller.v1.2.4
        version: 1.2.4
      - name: ack-prometheusservice-controller.v1.2.3
        version: 1.2.3
      - name: ack-prometheusservice-controller.v1.2.2
        version: 1.2.2
      - name: ack-prometheusservice-controller.v1.2.1
        version: 1.2.1
      - name: ack-prometheusservice-controller.v1.2.0
        version: 1.2.0
      - name: ack-prometheusservice-controller.v1.1.0
        version: 1.1.0
      - name: ack-prometheusservice-controller.v1.0.0
        version: 1.0.0
      - name: ack-prometheusservice-controller.v0.1.3
        version: 0.1.3
      - name: ack-prometheusservice-controller.v0.1.2
        version: 0.1.2
      - name: ack-prometheusservice-controller.v0.1.1
        version: 0.1.1
      - name: ack-prometheusservice-controller.v0.1.0
        version: 0.1.0
      - name: ack-prometheusservice-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-prometheusservice-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Trustification
      provider-url: ""
    name: trustify-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trustify-operator.v0.1.0-alpha.9
      currentCSVDesc:
        annotations:
          alm-examples: |
            [{
              "apiVersion": "org.trustify/v1alpha1",
              "kind": "Trustify",
              "metadata": {
                "name": "myapp"
              },
              "spec": { }
            }]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          containerImage: ghcr.io/trustification/trustify-operator:v0.1.0-alpha.9
          createdAt: "2025-03-07T11:57:13+00:00"
          description: An Operator for installing and managing Trustify
          repository: https://github.com/trustification/trustify-operator
          support: https://github.com/trustification/trustify-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Trustify instance
            displayName: Trustify
            kind: Trustify
            name: trustifies.org.trustify
            version: v1alpha1
        description: |+
          Trustify is vendor-neutral, thought-leadering, mostly informational collection of resources devoted to making Software Supply Chains easier to create, manage, consume and ultimately... to trust!


          You can use Trustify for:

          - Store and Manage all the SBOM (Software Bill of Materials) files of your company.
          - Understand which are the Vulnerabilities that affect each of your SBOM files
          - Understand exactly which Packages are included/shipped within each SBOM

          Trustify is a project within the [Trustification community](https://trustification.io/).


          ### Install
          Once you have successfully installed the Operator, proceed to deploy components by creating the required CR.

          By default, the Operator installs the following components on a target cluster:

          * Server
          * UI

          ### Documentation
          Documentation can be found on our [website](https://trustification.io/).

          ### Getting help
          If you encounter any issues while using Trustify, you can create an issue on our [Github repo](https://github.com/trustification/trustify/issues), for bugs, enhancements or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find
          * Fixing issues by opening [Pull Requests](https://github.com/trustification/trustify/pulls)

        displayName: Trustify Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trust
        links:
        - name: Website
          url: https://trustification.io/
        - name: Github
          url: https://github.com/trustification/trustify
        maintainers:
        - email: trustification@googlegroups.com
          name: Trustification
        maturity: alpha
        minKubeVersion: 1.23.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        provider:
          name: Trustification
        relatedImages:
        - quay.io/community-operator-pipeline-prod/trustify-operator@sha256:49def1c9612621f90d2398cbe7385488c167cc8ccdcd951f098433eb42cb9ac5
        - ghcr.io/trustification/trustify-operator:v0.1.0-alpha.9
        version: 0.1.0-alpha.9
      entries:
      - name: trustify-operator.v0.1.0-alpha.9
        version: 0.1.0-alpha.9
      - name: trustify-operator.v0.1.0-alpha.8
        version: 0.1.0-alpha.8
      - name: trustify-operator.v0.1.0-alpha.7
        version: 0.1.0-alpha.7
      - name: trustify-operator.v0.1.0-alpha.6
        version: 0.1.0-alpha.6
      - name: trustify-operator.v0.1.0-alpha.5
        version: 0.1.0-alpha.5
      - name: trustify-operator.v0.1.0-alpha.4
        version: 0.1.0-alpha.4
      - name: trustify-operator.v0.1.0-alpha.3
        version: 0.1.0-alpha.3
      - name: trustify-operator.v0.1.0-alpha.2
        version: 0.1.0-alpha.2
      name: alpha
    defaultChannel: alpha
    packageName: trustify-operator
    provider:
      name: Trustification
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://www.redhat.com/
    name: analytics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: analytics-operator.v0.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyData",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalydata-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalydata",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalydata-sample"
                },
                "spec": {
                  "anomalyname": "etcd_object_namespaces",
                  "config": {
                    "max": 100,
                    "min": 60,
                    "query": "max(apiserver_storage_objects{resource=~\"namespaces\"}) by (resource)"
                  },
                  "method": "min_max",
                  "metricdata": {
                    "groupeddata": "{ \"resource\": \"namespaces\" }",
                    "latestvalue": 121,
                    "timestamp": 1695804362
                  }
                }
              },
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyEngine",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalyengine-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalyengine",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalyengine-sample"
                },
                "spec": {
                  "anomalyqueryconfiguration": "etcd_objects_all:\n  method: percentage_change\n  query: max(apiserver_storage_objects{resource!~\"certificatesigningrequests.certificates.k8s.io|installplans.operators.coreos.com|operators.operators.coreos.com|subscriptions.operators.coreos.com|anomalydata.observability-analytics.redhat.com|anomalyengines.observability-analytics.redhat.com\"}) by (resource)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: True\nfailed_pods:\n  method: min_max\n  query: count(kube_pod_status_phase{phase!~\"Succeeded|Pending|Running|Unknown\"}) by (phase, namespace)\n  min: 0\n  max: 10\n  have_multi_result_data: True\nworkload_memory_usage_bytes:\n  method: percentage_change\n  query: sum(container_memory_working_set_bytes{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nworkload_cpu_usage_cores:\n  method: percentage_change\n  query: sum(container_cpu_usage_seconds_total{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nrest_client_requests_total:\n  method: percentage_change\n  query: sum(rest_client_requests_total)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\n",
                  "cronjobconfig": {
                    "anomalyqueries": "etcd_objects_all,failed_pods,workload_memory_usage_bytes,workload_cpu_usage_cores,rest_client_requests_total",
                    "name": "osa-anomaly-detection",
                    "resource": {
                      "cpulimit": "256m",
                      "cpurequest": "128m",
                      "memorylimit": "512Mi",
                      "memoryrequest": "256Mi"
                    },
                    "schedule": "*/5 * * * *"
                  },
                  "namespace": "osa-anomaly-detection",
                  "serviceaccountrolebinding": {
                    "clusterrolename": "cluster-monitoring-view",
                    "name": "osa-in-cluster-thanos-querier"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
          createdAt: "2024-03-12T08:02:25Z"
          description: Deploys and Manages Observability Analytics Operator
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4-alpha
          repository: https://github.com/openshift/analytics-operator
          support: RedHat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnomalyData is the Schema for the anomalydata API
            displayName: Anomaly Data
            kind: AnomalyData
            name: anomalydata.observability-analytics.redhat.com
            version: v1alpha1
          - description: AnomalyEngine is the Schema for the anomalyengines API
            displayName: Anomaly Engine
            kind: AnomalyEngine
            name: anomalyengines.observability-analytics.redhat.com
            version: v1alpha1
        description: "### Introduction\nObservability Analytics for Red Hat OpenShift
          runs OpenShift analytics processes like anomaly detection.\n\n### API Backward
          Compatibility\n**NOTE:** Until the Operator supports **seamless upgrades**,
          a new version of the operator may introduce a change that is **NOT** backward-compatible
          with the previous version. Thus, to upgrade the operator, uninstall the
          already installed version completely (including CRDs) and install the new
          version.\n\n### Installtion Steps for the Anomaly Engine\n Create namespace
          if you would like to install this operator into separate namespace (You
          can utilize existing namespace as well). ```bash kubectl create ns <Namespace>
          ``` Install the Observability Analytics operator to specific `<Namespace>`,
          wait until you see the operator in the **Installed Operator** list. Click
          on the Operator name and go to Operator details.\n\nHere you should see
          a tab called **Anomaly Engine**. Click on it, and then click on the **Create
          AnomalyEngine** button, which will redirect you to a form where you need
          to provide the required inputs for the Anomaly Engine. Once successfully
          created, you should see a cronjob in the given namespace. This cronjob will
          identify anomalies and store them into **anomalydata**.\n\n### How to See
          Anomaly Data Captured by Anomaly Engine?\nWe are storing anomaly data into
          CR.\n ####Option 1:Through `kubectl`` command\nYou can check detected anomalies
          using the following command from your terminal. \n\n```bash\nkubectl get
          anomalydata -n <Namespace>\nkubectl describe anomalydata <NAME of the anomalydata>
          -n <Namespace> \n```\n #### Option 2: From Installed Operator UI Go to installed
          operator and select **Observability Analytics** operator, now go to **Anomaly
          Data** tab where you can able to see the detected anomaly, click on specific
          anomaly and you should be able to see details of the same. ### Documentation\nDocumentation
          around how to test Operator codebase as a developer can be found [here](https://github.com/openshift/analytics-operator#readme)\n\n###
          Contributing\nYou can contribute by:\n  * Raising [issues](https://github.com/openshift/analytics-operator/issues)\n
          \   related to observability-analytics-operator\n  * Fixing issues by opening
          [Pull Requests](https://github.com/openshift/analytics-operator/pulls)\n
          \ * Discussing observability-analytics-operator\n\n### License\nobservability-analytics-operator
          is licensed under the Apache 2.0 license.\n"
        displayName: Observability Analytics
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - observability-analytics-operator
        - analytics-operator
        - analytics
        - anomaly
        links:
        - name: Analytics Operator
          url: https://analytics-operator.domain
        maintainers:
        - email: rzalavad@redhat.com
          name: Raj
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/analytics-operator@sha256:6622e769acf5af500d901409575016013d97e88ff53f0b6db0c9f503e6928b8f
        version: 0.1.1
      entries:
      - name: analytics-operator.v0.1.1
        version: 0.1.1
      - name: analytics-operator.v0.1.0
        version: 0.1.0
      name: alpha
    - currentCSV: analytics-operator.v0.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyData",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalydata-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalydata",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalydata-sample"
                },
                "spec": {
                  "anomalyname": "etcd_object_namespaces",
                  "config": {
                    "max": 100,
                    "min": 60,
                    "query": "max(apiserver_storage_objects{resource=~\"namespaces\"}) by (resource)"
                  },
                  "method": "min_max",
                  "metricdata": {
                    "groupeddata": "{ \"resource\": \"namespaces\" }",
                    "latestvalue": 121,
                    "timestamp": 1695804362
                  }
                }
              },
              {
                "apiVersion": "observability-analytics.redhat.com/v1alpha1",
                "kind": "AnomalyEngine",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "analytics-operator",
                    "app.kubernetes.io/instance": "anomalyengine-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "anomalyengine",
                    "app.kubernetes.io/part-of": "analytics-operator"
                  },
                  "name": "anomalyengine-sample"
                },
                "spec": {
                  "anomalyqueryconfiguration": "etcd_objects_all:\n  method: percentage_change\n  query: max(apiserver_storage_objects{resource!~\"certificatesigningrequests.certificates.k8s.io|installplans.operators.coreos.com|operators.operators.coreos.com|subscriptions.operators.coreos.com|anomalydata.observability-analytics.redhat.com|anomalyengines.observability-analytics.redhat.com\"}) by (resource)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: True\nfailed_pods:\n  method: min_max\n  query: count(kube_pod_status_phase{phase!~\"Succeeded|Pending|Running|Unknown\"}) by (phase, namespace)\n  min: 0\n  max: 10\n  have_multi_result_data: True\nworkload_memory_usage_bytes:\n  method: percentage_change\n  query: sum(container_memory_working_set_bytes{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nworkload_cpu_usage_cores:\n  method: percentage_change\n  query: sum(container_cpu_usage_seconds_total{namespace!~\"openshift-.+\",pod!=\"\",container=\"\"})\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\nrest_client_requests_total:\n  method: percentage_change\n  query: sum(rest_client_requests_total)\n  step: 5  # minutes\n  percentage_change: 60  # percentage\n  period_range: 120  # minutes\n  have_multi_result_data: False\n",
                  "cronjobconfig": {
                    "anomalyqueries": "etcd_objects_all,failed_pods,workload_memory_usage_bytes,workload_cpu_usage_cores,rest_client_requests_total",
                    "name": "osa-anomaly-detection",
                    "resource": {
                      "cpulimit": "256m",
                      "cpurequest": "128m",
                      "memorylimit": "512Mi",
                      "memoryrequest": "256Mi"
                    },
                    "schedule": "*/5 * * * *"
                  },
                  "namespace": "osa-anomaly-detection",
                  "serviceaccountrolebinding": {
                    "clusterrolename": "cluster-monitoring-view",
                    "name": "osa-in-cluster-thanos-querier"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
          createdAt: "2024-03-12T08:02:25Z"
          description: Deploys and Manages Observability Analytics Operator
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4-alpha
          repository: https://github.com/openshift/analytics-operator
          support: RedHat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnomalyData is the Schema for the anomalydata API
            displayName: Anomaly Data
            kind: AnomalyData
            name: anomalydata.observability-analytics.redhat.com
            version: v1alpha1
          - description: AnomalyEngine is the Schema for the anomalyengines API
            displayName: Anomaly Engine
            kind: AnomalyEngine
            name: anomalyengines.observability-analytics.redhat.com
            version: v1alpha1
        description: "### Introduction\nObservability Analytics for Red Hat OpenShift
          runs OpenShift analytics processes like anomaly detection.\n\n### API Backward
          Compatibility\n**NOTE:** Until the Operator supports **seamless upgrades**,
          a new version of the operator may introduce a change that is **NOT** backward-compatible
          with the previous version. Thus, to upgrade the operator, uninstall the
          already installed version completely (including CRDs) and install the new
          version.\n\n### Installtion Steps for the Anomaly Engine\n Create namespace
          if you would like to install this operator into separate namespace (You
          can utilize existing namespace as well). ```bash kubectl create ns <Namespace>
          ``` Install the Observability Analytics operator to specific `<Namespace>`,
          wait until you see the operator in the **Installed Operator** list. Click
          on the Operator name and go to Operator details.\n\nHere you should see
          a tab called **Anomaly Engine**. Click on it, and then click on the **Create
          AnomalyEngine** button, which will redirect you to a form where you need
          to provide the required inputs for the Anomaly Engine. Once successfully
          created, you should see a cronjob in the given namespace. This cronjob will
          identify anomalies and store them into **anomalydata**.\n\n### How to See
          Anomaly Data Captured by Anomaly Engine?\nWe are storing anomaly data into
          CR.\n ####Option 1:Through `kubectl`` command\nYou can check detected anomalies
          using the following command from your terminal. \n\n```bash\nkubectl get
          anomalydata -n <Namespace>\nkubectl describe anomalydata <NAME of the anomalydata>
          -n <Namespace> \n```\n #### Option 2: From Installed Operator UI Go to installed
          operator and select **Observability Analytics** operator, now go to **Anomaly
          Data** tab where you can able to see the detected anomaly, click on specific
          anomaly and you should be able to see details of the same. ### Documentation\nDocumentation
          around how to test Operator codebase as a developer can be found [here](https://github.com/openshift/analytics-operator#readme)\n\n###
          Contributing\nYou can contribute by:\n  * Raising [issues](https://github.com/openshift/analytics-operator/issues)\n
          \   related to observability-analytics-operator\n  * Fixing issues by opening
          [Pull Requests](https://github.com/openshift/analytics-operator/pulls)\n
          \ * Discussing observability-analytics-operator\n\n### License\nobservability-analytics-operator
          is licensed under the Apache 2.0 license.\n"
        displayName: Observability Analytics
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - observability-analytics-operator
        - analytics-operator
        - analytics
        - anomaly
        links:
        - name: Analytics Operator
          url: https://analytics-operator.domain
        maintainers:
        - email: rzalavad@redhat.com
          name: Raj
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/analytics-operator@sha256:6622e769acf5af500d901409575016013d97e88ff53f0b6db0c9f503e6928b8f
        - quay.io/openshiftanalytics/observability-analytics-operator:0.1.1
        version: 0.1.1
      entries:
      - name: analytics-operator.v0.1.1
        version: 0.1.1
      - name: analytics-operator.v0.1.0
        version: 0.1.0
      name: dev-preview
    defaultChannel: alpha
    packageName: analytics-operator
    provider:
      name: Red Hat Inc.
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: operator-certification-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: operator-certification-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "certification.redhat.com/v1alpha1",
                "kind": "OperatorPipeline",
                "metadata": {
                  "name": "operatorpipeline-sample"
                },
                "spec": {
                  "applyCIPipeline": true,
                  "applyHostedPipeline": false,
                  "applyReleasePipeline": false,
                  "gitHubSecretName": "github-api-token",
                  "kubeconfigSecretName": "kubeconfig",
                  "operatorPipelinesRelease": "main",
                  "pyxisSecretName": "pyxis-api-secret"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-11-11T16:28:07Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.operatorframework.io.bundle.channel.default.v1: alpha
          operators.operatorframework.io.bundle.channels: alpha
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-openshift-ecosystem/operator-certification-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OperatorPipeline is the Schema for the operatorpipelines
              API
            displayName: Operator Pipeline
            kind: OperatorPipeline
            name: operatorpipelines.certification.redhat.com
            version: v1alpha1
        description: |-
          A Kubernetes operator to provision resources for the operator certification pipeline. This operator is installed in all namespaces which can support multi-tenant scenarios. **Note:** This operator should only be used by Red Hat partners attempting to certify their operator(s).


          **Requirements**


          The certification operator requires that you have the following tools installed, functional, and in your path.
          - [Install](https://docs.openshift.com/container-platform/4.8/cli_reference/openshift_cli/getting-started-cli.html#installing-openshift-cli) oc, the OpenShift CLI tool (tested with version 4.7.13)
          - [Install](https://tekton.dev/docs/cli/) tkn, the Tekton CLI tool (tested with version 0.19.1)
          - [Install](https://git-scm.com/downloads) git, the Git CLI tool (tested with 2.32.0)
          - The certification pipeline expects you to have the source files of your Operator bundle


          **Pre - Installation**


          The below steps exist for simplicity and to make the installation clearer. The operator watches all namespaces, so if secrets/configs/etc already exist in another namespace, feel free to use the existing namespace when following the operator installation steps.


          **Create a new namespace where the following secrets will be applied.**
          ```
          oc new-project oco
          ```


          **Add the kubeconfig secret which will be used to deploy the operator under test and run the certification checks.**
          * Open a terminal window
          * Set the `KUBECONFIG` environment variable
          ```
          export KUBECONFIG=/path/to/your/cluster/kubeconfig
          ```
          > *This kubeconfig will be used to deploy the Operator under test and run the certification checks.*
          ```
          oc create secret generic kubeconfig --from-file=kubeconfig=$KUBECONFIG
          ```


          **Configuring steps for submitting the results**
          - Add the github API token to the repo where the PR will be created
          ```
          oc create secret generic github-api-token --from-literal GITHUB_TOKEN=<github token>
          ```
          - Add RedHat Container API access key

            This API access key is specifically related to your unique partner account for Red Hat Connect portal. Instructions to obtain your API key can be found: [here](https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/operator-cert-workflow.md#step-b---get-api-key)
          ```
          oc create secret generic pyxis-api-secret --from-literal pyxis_api_key=< API KEY >
          ```

          - Optional pipeline configurations can be found [here](https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/ci-pipeline.md#optional-configuration)


          **Execute the Pipeline (Development Iterations)**


          A pre-requisite to running a pipeline is that a `workspace-template.yaml` exists in the directory you want to execute the `tkn` commands from.

          To create a workspace-template.yaml
          ```
          cat <<EOF > workspace-template.yaml
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 5Gi
          EOF
          ```

          There are multiple ways to execute the Pipeline which can be found [here](https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/ci-pipeline.md#execute-the-pipeline-development-iterations)
        displayName: Operator Certification Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - certification
        - pipeline
        - openshift
        links:
        - name: Operator Certification CI Pipeline
          url: https://github.com/redhat-openshift-ecosystem/certification-releases/blob/main/4.9/ga/ci-pipeline.md
        - name: Red Hat OpenShift Pipelines
          url: https://github.com/openshift/tektoncd-operator
        maintainers:
        - email: certification-operator-devel@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.connect.redhat.com/opdev/operator-certification-operator-bundle@sha256:e1c26fed406ff8478dee6c67ba24a5db5320868b78bcc8aa98c124c74ff8fd8a
        - quay.io/opdev/operator-certification-operator@sha256:264a7cf00f3dc47a8e7ae602d720ca9b9df6807eb9f6574efeff8ef0427905b7
        version: 1.4.0
      entries:
      - name: operator-certification-operator.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: alpha
    packageName: operator-certification-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-kubernetes.v1.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "ClusterMongoDBRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-enterprise"
                  },
                  "name": "clustermongodbrole-sample"
                },
                "spec": {
                  "db": "admin",
                  "role": "rootMonitor",
                  "roles": [
                    {
                      "db": "admin",
                      "role": "root"
                    },
                    {
                      "db": "admin",
                      "role": "clusterMonitor"
                    }
                  ]
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "my-replica-set"
                },
                "spec": {
                  "credentials": "my-credentials",
                  "members": 3,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "sample-sharded-cluster"
                },
                "spec": {
                  "configServerCount": 3,
                  "credentials": "my-credentials",
                  "mongodsPerShardCount": 3,
                  "mongosCount": 2,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "shardCount": 1,
                  "type": "ShardedCluster",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBMultiCluster",
                "metadata": {
                  "name": "multi-replica-set"
                },
                "spec": {
                  "clusterSpecList": [
                    {
                      "clusterName": "e2e.cluster1.mongokubernetes.com",
                      "members": 2
                    },
                    {
                      "clusterName": "e2e.cluster2.mongokubernetes.com",
                      "members": 1
                    },
                    {
                      "clusterName": "e2e.cluster3.mongokubernetes.com",
                      "members": 2
                    }
                  ],
                  "credentials": "my-credentials",
                  "duplicateServiceObjects": false,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBOpsManager",
                "metadata": {
                  "name": "ops-manager"
                },
                "spec": {
                  "adminCredentials": "ops-manager-admin",
                  "applicationDatabase": {
                    "members": 3,
                    "podSpec": {
                      "cpu": 1
                    }
                  },
                  "configuration": {
                    "mms.fromEmailAddr": "admin@thecompany.com"
                  },
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "version": "6.0.3"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBUser",
                "metadata": {
                  "name": "my-replica-set-x509-user"
                },
                "spec": {
                  "db": "$external",
                  "mongodbResourceRef": {
                    "name": "my-replica-set"
                  },
                  "roles": [
                    {
                      "db": "admin",
                      "name": "dbOwner"
                    }
                  ],
                  "username": "CN=my-replica-set-x509-user,OU=cloud,O=MongoDB,L=New York,ST=New York,C=US"
                },
                "status": {
                  "phase": "Updated"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/mongodb/mongodb-kubernetes@sha256:22e4ae882cff477adc99cb74bc979cb112d9e0abf37509298a3839fea274ae75
          createdAt: "2025-12-15T08:51:46Z"
          description: The MongoDB Controllers for Kubernetes enable easy deploys
            of MongoDB into Kubernetes clusters, using our management, monitoring
            and backup platforms, Ops Manager and Cloud Manager.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.26.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/mongodb/mongodb-kubernetes
          support: support@mongodb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterMongoDBRole
            name: clustermongodbroles.mongodb.com
            version: v1
          - description: MongoDB Deployment
            displayName: MongoDB Deployment
            kind: MongoDB
            name: mongodb.mongodb.com
            version: v1
          - kind: MongoDBCommunity
            name: mongodbcommunity.mongodbcommunity.mongodb.com
            version: v1
          - description: MongoDB Multi Deployment
            displayName: MongoDB Multi Deployment
            kind: MongoDBMultiCluster
            name: mongodbmulticluster.mongodb.com
            version: v1
          - kind: MongoDBSearch
            name: mongodbsearch.mongodb.com
            version: v1
          - description: MongoDB x509 User
            displayName: MongoDB User
            kind: MongoDBUser
            name: mongodbusers.mongodb.com
            version: v1
          - description: MongoDB Ops Manager
            displayName: MongoDB Ops Manager
            kind: MongoDBOpsManager
            name: opsmanagers.mongodb.com
            version: v1
        description: |
          MongoDB Controllers for Kubernetes (MCK) is an open-source project. It represents a merge of the previous
          MongoDB Community Operator (MCO) and MongoDB Enterprise Kubernetes Operator (MEKO).

          This release brings MongoDB Community and Enterprise editions together under a single, unified operator,
          making it easier to manage, scale, and upgrade your deployments. While the first version simply brings
          the capabilities of both into a single Operator, future changes will build on this to more closely align
          how Community and Enterprise are managed in Kubernetes, to offer an even more seamless and streamlined experience.
          As an open-source project, it now allows for community contributions, helping drive quicker bug fixes and ongoing innovation.
          The MongoDB Controllers for Kubernetes enable easy deploys of MongoDB
          into Kubernetes clusters, using our management, monitoring and backup
          platforms, Ops Manager and Cloud Manager.

          ## Before You Start

          To start using the operator you''ll need an account in MongoDB Cloud Manager or
          a MongoDB Ops Manager deployment.

          * [Create a Secret with your OpsManager API key](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-operator-credentials/#procedure)

          * [Create a ConfigMap with your OpsManager project ID and URL](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-project-using-configmap/)

          By installing this integration, you will be able to deploy MongoDB instances
          with a single simple command.

          ## Required Parameters

          * `opsManager` or `cloudManager` - Enter the name of the ConfigMap containing project information
          * `credentials` - Enter the name of the Secret containing your OpsManager credentials
          * `type` - Enter MongoDB Deployment Types ("Standalone", "ReplicaSet", "ShardedCluster"

          ## Supported MongoDB Deployment Types ##

          * Standalone: An instance of mongod that is running as a single server and
          not as part of a replica set, this is, it does not do any kind of
          replication.

          * Replica Set: A replica set in MongoDB is a group of mongod processes that
          maintain the same data set. Replica sets provide redundancy and high
          availability, and are the basis for all production deployments. This section
          introduces replication in MongoDB as well as the components and architecture
          of replica sets. The section also provides tutorials for common tasks
          related to replica sets.

          * Sharded Cluster: The set of nodes comprising a sharded MongoDB deployment.
          A sharded cluster consists of config servers, shards, and one or more mongos
          routing processes. Sharding is a A database architecture that partitions
          data by key ranges and distributes the data among two or more database
          instances. Sharding enables horizontal scaling.

          ## Requirements for deploying MongoDB OpsManager

          * In order to deploy resources of type MongoDB OpsManager, you will need to
          create a secret containing the [credentials](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/plan-om-resource/#om-rsrc-prereqs)
          for the Global Owner user

          ## Security ##

          The operator can enable TLS for all traffic between servers and also between
          clients and servers. Before enabling `security.tls.enabled` to `true` you
          should create your certificates.  or you can leave the operator to create all
          the certificates for you. The operator ability to create certs is been
          deprecated due to Kubernetes API changes.

          For more information, please read the official MongoDB
          Kubernetes Operator  [docs](https://docs.mongodb.com/kubernetes-operator/stable/).
        displayName: MongoDB Controllers for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mongodb
        - databases
        - nosql
        links:
        - name: Documentation
          url: https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/index.html
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: stable
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/mongodb/mongodb-enterprise-server@sha256:1d418c65d82ccad205b7889be4ba161d3cbfa8b1fb75b21c8fcf02de38fad9ca
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8d7266b405ebb2dd24a9f7c12d3921024f547c3d8c01831e6bcfc1d551d63be1
        - quay.io/mongodb/mongodb-agent@sha256:c5f767543bf99063c9aa43b32e468212617146c3ca9257caf1f23b6db4bd66d4
        - quay.io/mongodb/mongodb-enterprise-server@sha256:11ab324698f919f84a5dab5a964d93fe63f98a48146bb3b86974cba7606d30ec
        - quay.io/mongodb/mongodb-enterprise-server@sha256:85c1d669c073caf9cbaac815e4c8ea2ca18b71deefa03bf84cd6d8b8ebd53e12
        - quay.io/mongodb/mongodb-enterprise-server@sha256:df6081325ea2fe01d1b27d0c70005dec8232aaf51a43d91661b722b8a1761263
        - quay.io/mongodb/mongodb-agent@sha256:f65388a48f65c894759bc9c2e7434e29e45d967d32ca5841b3ab8ff90c4a41a4
        - quay.io/mongodb/mongodb-kubernetes@sha256:22e4ae882cff477adc99cb74bc979cb112d9e0abf37509298a3839fea274ae75
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0fde236fe26d5b20210d6f246aadacd7845874712def516cbe2eec11d79d5181
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:e4f65fc4156cbbc32d18616d9f1cd353935758872f9d809eaf785d645aa637cf
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8d7e5361c2a1604dec3fc671d629806fe6ddc6df524b69a441b86933a4b30093
        - quay.io/mongodb/mongodb-enterprise-server@sha256:523566f44cbb6bbf0cd12b1adae939a883f2254c78dc4b8c9d0098581337b1db
        - quay.io/mongodb/mongodb-enterprise-server@sha256:19925e1297ab652db59c35f53e7b7c8b2b277f8ecdc4215682961aaf2b3e924e
        - quay.io/mongodb/mongodb-agent@sha256:1e93699e4157b5a78a7bca90d9243e586e13413855fbe2bf1e795bfc16c5fefd
        - quay.io/mongodb/mongodb-agent@sha256:8b3b301143c4f3bb25757896a930a10a9ba4852b109dbc5670eedd8ba011e61e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c48631742ad1fec8a9ee745fc3cc9ca1fe7d86ef7fa68ad8e8337c7a4566dc87
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3fe62f3ad52707ccf0e9993c69891e44c569a4b4e1a3244cf60e3b5fdde57bd2
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:ca4aad523f14d68fccb60256f9ce8909c66ebb5b321ee15e5abf9ac5738947f9
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:b7764c316eeacffd3f9ddae62d9fd2a74eb58484d2cfd5021e460095d604764f
        - quay.io/mongodb/mongodb-kubernetes-init-database@sha256:1d3167a886ea108407be1f3d7eaa89c9607ff26fd49badf343bed02d848b6e9c
        - quay.io/mongodb/mongodb-agent@sha256:e131c100978db4c7a0a7be335e9e153af594d77a2dae42bb16672857785a7ef3
        - quay.io/mongodb/mongodb-agent@sha256:adaa6f9364bad38c535fa9f28d7e9b364e19148add50784ae67bed7c289e0a5f
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:a4590af027182305913f0de1a2e37ad8612bd73b8b31f4df11068b80089021ff
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:f71b027fccf649f18f63f8df7a59b1bac421a2cdab6712e0c985a93c08ed970a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa8683500e8d3632c4588bbcdddb4e3186a01f48aefe1b6d95f8860dae8b6c76
        - quay.io/mongodb/mongodb-enterprise-server@sha256:b00ac773623e1bf422b47e6d783263d2d08737865abe9abbe106d86d1ea25165
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:d81eac2129b6ab8346be1749c56ea67f6da64d4ee0fb9f3ff4171ba0f61918eb
        - quay.io/mongodb/mongodb-agent@sha256:a8358ce465adf463d8e73916d7944765d7aaf2b0ed10bd3b8119a87fc9080667
        - quay.io/mongodb/mongodb-agent@sha256:fa30370a75e8e4ac648650ceb39a7a259a754aab8a48d7e2f2801cd1b777e91b
        - quay.io/mongodb/mongodb-enterprise-server@sha256:15e31285c8949a4666f7702df53416b0905d76945a28575a6028a876cc8a6f0f
        - quay.io/mongodb/mongodb-agent@sha256:633ca84d79d393f926d102dd27233df79765e0af69f5dde53288d3fdb10c0304
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:1076466ae62fc41d751b266bbc672619195b523c42118af40c1e6382ea102897
        - quay.io/mongodb/mongodb-enterprise-server@sha256:e7aeedb752dda77cf0e49df3430843b5a2bba64c8404628a983f46640d316808
        - quay.io/mongodb/mongodb-enterprise-server@sha256:37af0913742b6de339c7e664b30f35dcef04506529e4a09a9bbbdd57643f7149
        - quay.io/mongodb/mongodb-enterprise-server@sha256:5c8553e5ba115657fb878c0fe08704af9fd5decec572a87d89d2c8c156ffc9f9
        - quay.io/mongodb/mongodb-agent@sha256:793ae31c0d328fb3df1d3aa526f94e466cc2ed3410dd865548ce38fa3859cbaa
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7885ab6e88214f9289d8babf5189136dde0dd4c84a15a5481ccd3ef512b2e66f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:9bef77e905dadd1e61d0439dd53b21ed1f3606e49affd9ffc4ba8156578e8f0f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d21c65780cadc9d8668d2c28935d492625d6993f13ba562722200a819281cbcc
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f1e72679b2468aed2f3c3106568327911e6594c9ee15f7348e953eaa0d8fd44a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:454b1585c342375dea643b10ead688d0f62347841f5f30059fcd4f92e3297ee9
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:960e10cf184213397b078038879e8a36aec54dc5de928afc459e0fc833ebb94d
        - quay.io/mongodb/mongodb-enterprise-server@sha256:655896bac9e82de8e9729d59a36c3a31f66235f22b93449260a2ccb7709de084
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:5d299820bb903f0cdfdf2626a3c44099d2eaee16188cd8234d2ff3a57259b3a7
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:76500f012df908d247835696a65462b39880b31128f6916e852442b41de26af9
        - quay.io/mongodb/mongodb-enterprise-server@sha256:778f9e29e36d6687cd17dd95ec1f8127d2a732bde1a2dd5821212eb55c1c998a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3add8b68bfbaa42596fe5dbbee4623ba5ff1a826b18bb71301525adf574dcb94
        - quay.io/mongodb/mongodb-enterprise-server@sha256:5145c97d2281aabcd8538ff515c3833aa48acb66b0b739fb1881120c1985d88a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:dfd4277f0c16ed476ac7de51894739e8c8d13a65ea5024b9a97b3dce0f6c6975
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c752a7f0726d21d55f204a359b85fa29cd727a5fe571b37289ae3ea52d6206b0
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:146c4f5dc443f94f54d72808b4e4df93bb904e23589b222d17700166780776b4
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:5e3982493e85ac1e40536758c3145b7c2fff9a7b4be9d053ee41201363a89920
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8445d59d491a6d3890ea9c8b421214bcd0fdcfbc420ed40497a790b79f0bc89e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:fb8397cbcdbf7c33f6ad142492792771127f0d9a8c46388f350b6927405ee590
        - quay.io/mongodb/mongodb-agent@sha256:fc7660f019142dee4e2ec893bd3e1c94759f77264aea1e24d850d9c5489be307
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d323c1bcd14118cc537ac282996ea5a58756d20b6b73f1eec0efa8710d246077
        - quay.io/mongodb/mongodb-enterprise-server@sha256:720056b985c1a16d48b2aecb7a88a15cba3d8186e55b3c6c24729699a85c8232
        - quay.io/mongodb/mongodb-enterprise-server@sha256:67238129df09d33ee4746ff1acb5515d699a29d9f42350eae3f3f69ccb7fbf54
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:85b4e954c9c4bbe1019774bad1e05e9c8dc175648b01d3badf0b64143f182019
        - quay.io/mongodb/mongodb-agent@sha256:1c56e367eff4bd2106dbc3ced496d3fc084d265e4f375a5c91f73d485611daf5
        - quay.io/mongodb/mongodb-enterprise-server@sha256:9a3a6496be0d2d446e6d654eb56386c7726e0cd2d7232f6dcec579923edf0014
        - quay.io/mongodb/mongodb-enterprise-server@sha256:172e338a43df01ee5408d8d1e3cb038d2c55e77761c1a2ac6ed37959d1525140
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:6c475c3180bcfa1d1cdbd41c4aaca4d0eca82404fa1e35547c57c971fa3fe25c
        - quay.io/mongodb/mongodb-enterprise-server@sha256:33a30d11969eb21952681108092fe7f916e25c8e1de43e6a4e40e126025a2bec
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7a93a0276531ff9be4c90bb8fe8d104e0a9e930c29792aafe03cc6a76a9fa89c
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:702f529cb9d8d9042e54263f8bc37b40c062ac2695efc3e7150819779886e323
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:439d6fefb469613432e2d05149dfc96c32b16469d743835d5f402a2ada8be8cc
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:33bbd29b74f95baad522b380d70bcc9f933a3fee57642c37b09376c86179c40f
        - quay.io/mongodb/mongodb-kubernetes-database@sha256:34bca0371c641a44249cc1aa5edb7640a640717ea4cbe6ae392945583178f184
        - quay.io/mongodb/mongodb-agent@sha256:b422829aac63f068aed4a6948fd14cbd3c3bfad6d47ab76523f6839bf20b0203
        - quay.io/mongodb/mongodb-enterprise-server@sha256:a48a4d5c275fd669a27469649fb39ea38c728dbcf9f0a9da4e7cf27a2ce912ed
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:78f11c9cd5e63f2b0e10c67dc1491f4ce1279fa90178c108814725414defab9a
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:fa4aa97767bd19cf3711a74bf21ecb9cbbc25fed6b6b09a2eb241ebd3fbc8f3a
        - quay.io/mongodb/mongodb-kubernetes-init-appdb@sha256:8fd9a9d0ea8e086208a8fe1adae8a37a8d6bdc424e0260b8fb73f1a4a064675c
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:adeab0dc766a27138db7df5f37cbb1da860c14179ef631b2e001e5bb875325e4
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:3bbd3d7fd45d107621e7770f2b4c2a758e148cd472e0ee21719442f71bf6ade0
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:b9ab7147b59b62e40a69c6400f87d0c7faecfa5462bed6e68ca653b00e50b887
        - quay.io/mongodb/mongodb-agent@sha256:f2d1728df506f2a6e8daea0d6b5e12f0c142a11602e274872ac5a4dc0175e135
        - quay.io/mongodb/mongodb-enterprise-server@sha256:a86c4d8a0b9ca3c20cc524809676eb03a944ada43378ec98c107cd72cc64700f
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:09788976bdc1327acbf18cedf8efd5fca2159e43b506faa40e03ee42ad94928a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa300abf739e26350a258f643fa8e57aedacd041055c7b923bd22b21ef554cdb
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f2d9a3264a8814f33143b73c56624572fb80afeab184133d3a901713a31c1a87
        - quay.io/mongodb/mongodb-agent@sha256:62323b0ef76858002abc1ec3fba29f28ff2b914e1050ddac1cb933ba0624b29e
        - quay.io/mongodb/mongodb-agent@sha256:8d88da240cad77b0092849d344cf64e1fedfcc320299158c4310833572ac4a6f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3316015ac0699d66ac73f714e5dc0784738654e0349e80b1e1f4e953b3c88964
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:b8aa1edbc5fb02af312a863bc7db8535a282dfd692a07b1e321e5a1acbfeb6a1
        - quay.io/mongodb/mongodb-enterprise-server@sha256:bfbcfcfc5f0de22e20520b2d96f826638e424adb028a909ccc192013d11f5833
        - registry.connect.redhat.com/mongodb/mongodb-kubernetes-bundle@sha256:11671abdb92a1bc5b1b8ef736f70d9dba78eedb66c79030ebb8f2ddfba4b184f
        - quay.io/mongodb/mongodb-kubernetes-init-ops-manager@sha256:da648073110d0fef7f2cdb5a5a16f363beb9ff80ec1eaab139af65c55a9fd865
        - quay.io/mongodb/mongodb-agent@sha256:0caca86af01da94d5e552cd200a5b110f4aa0a42e68522483b970d37afc576a0
        - quay.io/mongodb/mongodb-enterprise-server@sha256:ef732e3eea91cc86caf2eabedc0c9115ed235a8d204f33e74bbf090a0b0259fb
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d49417ea85ee1ddb84429552a5aac87a82c2843904d8c0300a43b657b7a49e0e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:1a77851485ad3b2566e765b4bb051ff0ddfa48703492cef6c6db021dde84d87f
        - quay.io/mongodb/mongodb-search@sha256:c1e636119aa206ff98cefed37ee4b488d75c6a5e6025dcb71f44275a8f3f546a
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c8aec83b76dfecc05b8f5d8f40fd61b24980c0287a07294f75f321c2d42c32b4
        - quay.io/mongodb/mongodb-enterprise-server@sha256:376ad7e5fe42651d946cba5705c0eee44aa636c1b4ff258210e4ce2fe4205b4d
        - quay.io/mongodb/mongodb-agent@sha256:fb0f4825bdbe7972cc2aada5b1687191e156c28a7259de191d40b9fbd0b10367
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:cd869ff7d661059fad7593e30141d74e8cc751295b1579577f7a853396eb5d0b
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d2d8b59c1f39c41951e7878963f8496eb494688720366f8edc7060887cdbe6a0
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:895dbdfb87ddc2e9693671c7108a31ab28e16fec2e5be6d046bdd2e30319eade
        - quay.io/mongodb/mongodb-agent@sha256:640398a92c86cdafc7ac0aba776b484fc7c465a080f8daebb9946813d511f4a2
        - quay.io/mongodb/mongodb-agent@sha256:3e1ddf6a18bf3a4bc94ded15082b6410c297756277782c276274dd3da71d89e9
        version: 1.6.1
      entries:
      - name: mongodb-kubernetes.v1.6.1
        version: 1.6.1
      - name: mongodb-kubernetes.v1.6.0
        version: 1.6.0
      - name: mongodb-kubernetes.v1.5.0
        version: 1.5.0
      - name: mongodb-kubernetes.v1.4.0
        version: 1.4.0
      - name: mongodb-kubernetes.v1.3.0
        version: 1.3.0
      - name: mongodb-kubernetes.v1.2.0
        version: 1.2.0
      - name: mongodb-kubernetes.v1.1.0
        version: 1.1.0
      - name: mongodb-kubernetes.v1.0.1
        version: 1.0.1
      - name: mongodb-kubernetes.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: mongodb-kubernetes
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-hdfs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hdfs-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/hdfs-operator@sha256:baaeabcb9f77b993a1f0229a76e6736dc39a010f7e614e4d41debdaa2309c249
          description: Stackable Operator for Apache Hadoop HDFS
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/hdfs-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for HdfsClusterSpec via `CustomResource`
            displayName: hdfsclusters.hdfs.stackable.tech
            kind: HdfsCluster
            name: hdfsclusters.hdfs.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Hadoop HDFS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hdfs
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/hdfs-operator@sha256:baaeabcb9f77b993a1f0229a76e6736dc39a010f7e614e4d41debdaa2309c249
        - registry.connect.redhat.com/stackable/stackable-apache-hdfs-operator@sha256:393a2f034c0dc1ebf71b87caf58108c974d310fd4bb4526d3114271967465f77
        version: 25.11.0
      entries:
      - name: hdfs-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-hdfs-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-atlas-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-atlas-kubernetes.v2.12.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupCompliancePolicy",
                "metadata": {
                  "name": "my-backup-compliance-policy"
                },
                "spec": {
                  "authorizedEmail": "john.doe@example.com",
                  "authorizedUserFirstName": "John",
                  "authorizedUserLastName": "Doe",
                  "copyProtectionEnabled": false,
                  "encryptionAtRestEnabled": false,
                  "onDemandPolicy": {
                    "retentionUnit": "weeks",
                    "retentionValue": 3
                  },
                  "overwriteBackupPolicies": false,
                  "pointInTimeEnabled": true,
                  "restoreWindowDays": 42,
                  "scheduledPolicyItems": [
                    {
                      "frequencyInterval": 2,
                      "frequencyType": "daily",
                      "retentionUnit": "days",
                      "retentionValue": 7
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupPolicy",
                "metadata": {
                  "name": "atlasbackuppolicy-sample"
                },
                "spec": {
                  "items": [
                    {
                      "frequencyInterval": 6,
                      "frequencyType": "hourly",
                      "retentionUnit": "days",
                      "retentionValue": 2
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "daily",
                      "retentionUnit": "days",
                      "retentionValue": 7
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "weekly",
                      "retentionUnit": "weeks",
                      "retentionValue": 4
                    },
                    {
                      "frequencyInterval": 15,
                      "frequencyType": "monthly",
                      "retentionUnit": "months",
                      "retentionValue": 12
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupSchedule",
                "metadata": {
                  "name": "atlasbackupschedule-sample"
                },
                "spec": {
                  "autoExportEnabled": false,
                  "copySettings": [
                    {
                      "cloudProvider": "AWS",
                      "frequencies": [
                        "WEEKLY"
                      ],
                      "regionName": "US_WEST_1",
                      "shouldCopyOplogs": false
                    }
                  ],
                  "policy": {
                    "name": "atlasbackuppolicy-sample"
                  },
                  "referenceHourOfDay": 10,
                  "referenceMinuteOfHour": 10,
                  "restoreWindowDays": 2,
                  "useOrgAndGroupNamesInExportPrefix": true
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasCustomRole",
                "metadata": {
                  "name": "shard-operator-role"
                },
                "spec": {
                  "projectRef": {
                    "name": "my-project"
                  },
                  "role": {
                    "actions": [
                      {
                        "name": "getShardMap",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      },
                      {
                        "name": "shardingState",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      },
                      {
                        "name": "connPoolStats",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      },
                      {
                        "name": "getLog",
                        "resources": [
                          {
                            "cluster": true
                          }
                        ]
                      }
                    ],
                    "inheritedRoles": [
                      {
                        "database": "admin",
                        "name": "operator-role-1"
                      }
                    ],
                    "name": "my-role"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDataFederation",
                "metadata": {
                  "name": "my-data-federation",
                  "namespace": "mongodb-atlas-system"
                },
                "spec": {
                  "name": "my-data-federation",
                  "privateEndpoints": [
                    {
                      "endpointId": "vpce-03f9eeaa764e32454",
                      "provider": "AWS",
                      "type": "DATA_LAKE"
                    }
                  ],
                  "projectRef": {
                    "name": "my-project",
                    "namespace": "mongodb-atlas-system"
                  },
                  "storage": {
                    "databases": [
                      {
                        "collections": [
                          {
                            "dataSources": [
                              {
                                "storeName": "http-test",
                                "urls": [
                                  "https://data.cityofnewyork.us/api/views/vfnx-vebw/rows.csv"
                                ]
                              }
                            ],
                            "name": "test-collection-1"
                          }
                        ],
                        "name": "test-db-1"
                      }
                    ],
                    "stores": [
                      {
                        "name": "http-test",
                        "provider": "http"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDatabaseUser",
                "metadata": {
                  "name": "my-database-user"
                },
                "spec": {
                  "databaseName": "admin",
                  "passwordSecretRef": {
                    "name": "the-user-password"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "roles": [
                    {
                      "databaseName": "admin",
                      "roleName": "readWriteAnyDatabase"
                    }
                  ],
                  "username": "theuser"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDeployment",
                "metadata": {
                  "name": "my-atlas-deployment"
                },
                "spec": {
                  "backupRef": {
                    "name": "atlasbackupschedule-sample"
                  },
                  "deploymentSpec": {
                    "backupEnabled": true,
                    "clusterType": "REPLICASET",
                    "mongoDBMajorVersion": "7.0",
                    "name": "test-deployment",
                    "replicationSpecs": [
                      {
                        "regionConfigs": [
                          {
                            "electableSpecs": {
                              "instanceSize": "M10",
                              "nodeCount": 3
                            },
                            "priority": 7,
                            "providerName": "AWS",
                            "regionName": "US_EAST_1"
                          }
                        ],
                        "zoneName": "Zone 1"
                      }
                    ],
                    "tags": [
                      {
                        "key": "team",
                        "value": "atlas-operator"
                      }
                    ]
                  },
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasFederatedAuth",
                "metadata": {
                  "name": "atlas-default-federated-auth",
                  "namespace": "mongodb-atlas-system"
                },
                "spec": {
                  "connectionSecretRef": {
                    "name": "my-org-secret",
                    "namespace": "mongodb-atlas-system"
                  },
                  "domainAllowList": [
                    "my-org-domain.com"
                  ],
                  "domainRestrictionEnabled": true,
                  "enabled": true,
                  "postAuthRoleGrants": [
                    "ORG_MEMBER"
                  ],
                  "roleMappings": [
                    {
                      "externalGroupName": "org-admin",
                      "roleAssignments": [
                        {
                          "role": "ORG_OWNER"
                        }
                      ]
                    },
                    {
                      "externalGroupName": "dev-team",
                      "roleAssignments": [
                        {
                          "role": "ORG_GROUP_CREATOR"
                        },
                        {
                          "projectName": "dev-project",
                          "role": "GROUP_OWNER"
                        }
                      ]
                    }
                  ],
                  "ssoDebugEnabled": false
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasIPAccessList",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasipaccesslist-sample"
                },
                "spec": {
                  "entries": [
                    {
                      "cidrBlock": "192.168.1.0/24"
                    },
                    {
                      "deleteAfterDate": "2025-01-20T23:59:59+02:00",
                      "ipAddress": "10.0.0.1"
                    }
                  ],
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkContainer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasnetworkcontainer-sample"
                },
                "spec": {
                  "cidrBlock": "10.11.0.0/16",
                  "connectionSecret": {
                    "name": "atlas-connection-secret"
                  },
                  "externalProjectRef": {
                    "projectId": "66e2f2b621571b7e69a89b66"
                  },
                  "provider": "AWS",
                  "region": "US_EAST_1"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkPeering",
                "metadata": {
                  "name": "atlasnetworkpeering-sample"
                },
                "spec": {
                  "atlasCidrBlock": "10.12.0.0/16",
                  "awsConfiguration": {
                    "accepterRegionName": "US_EAST_1",
                    "awsAccountId": "23214235145",
                    "routeTableCidrBlock": "10.11.0.0/16",
                    "vpcId": "vpcid-7123782134"
                  },
                  "containerId": "623412394512350",
                  "containerRegion": "US_EAST_1",
                  "projectRef": {
                    "name": "atlas-project",
                    "namespace": "namespace"
                  },
                  "provider": "AWS"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasPrivateEndpoint",
                "metadata": {
                  "name": "atlasprivateendpoint-sample"
                },
                "spec": {
                  "awsConfiguration": {
                    "id": "vpce-f4k34w51d"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "provider": "AWS",
                  "region": "EU_CENTRAL_1"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasProject",
                "metadata": {
                  "name": "my-project"
                },
                "spec": {
                  "name": "Test Atlas Operator Project",
                  "projectIpAccessList": [
                    {
                      "comment": "IP address for Application Server A",
                      "ipAddress": "192.0.2.15"
                    },
                    {
                      "cidrBlock": "203.0.113.0/24",
                      "comment": "CIDR block for Application Server B - D"
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasSearchIndexConfig",
                "metadata": {
                  "name": "atlassearchindexconfig-sample"
                },
                "spec": {
                  "analyzer": "lucene.standard",
                  "analyzers": [
                    {
                      "name": "test-analyzer",
                      "tokenFilters": [
                        {
                          "asciiFolding": {
                            "originalTokens": "omit"
                          },
                          "type": "asciiFolding"
                        }
                      ],
                      "tokenizer": {
                        "type": "whiteSpace",
                        "whitespace": {
                          "maxTokenLenght": 200
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasStreamConnection",
                "metadata": {
                  "name": "my-streamconnection-kafka"
                },
                "spec": {
                  "kafkaConfig": {
                    "authentication": {
                      "credentials": {
                        "name": "kafka-userpass"
                      },
                      "mechanism": "SCRAM-512"
                    },
                    "bootstrapServers": "kafka.server1:9001,kafka.server2:9002,kafka.server3:9003",
                    "security": {
                      "certificate": {
                        "name": "kafka-cert"
                      },
                      "protocol": "SSL"
                    }
                  },
                  "name": "kafka-config",
                  "type": "Kafka"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasStreamInstance",
                "metadata": {
                  "name": "my-streaminstance-sample"
                },
                "spec": {
                  "clusterConfig": {
                    "provider": "AWS",
                    "region": "VIRGINIA_USA",
                    "tier": "SP30"
                  },
                  "connectionRegistry": [
                    {
                      "name": "my-streamconnection-sample"
                    }
                  ],
                  "name": "my-instance",
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasTeam",
                "metadata": {
                  "name": "atlasteam-sample"
                },
                "spec": {
                  "name": "my-team",
                  "usernames": [
                    "username@mongodb.com"
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasThirdPartyIntegration",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasintegration-sample"
                },
                "spec": {
                  "datadog": {
                    "apiKeySecretRef": {
                      "name": "secret-ref"
                    },
                    "region": "string",
                    "sendCollectionLatencyMetrics": "string",
                    "sendDatabaseMetrics": "string"
                  },
                  "projectRef": {
                    "name": "my-atlas-project"
                  },
                  "type": "DATADOG"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/mongodb/mongodb-atlas-kubernetes-operator:2.12.0
          createdAt: "2025-12-03T08:37:51Z"
          description: The MongoDB Atlas Kubernetes Operator enables easy management
            of Clusters in MongoDB Atlas
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/mongodb/mongodb-atlas-kubernetes
          support: support@mongodb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AtlasBackupCompliancePolicy
            name: atlasbackupcompliancepolicies.atlas.mongodb.com
            version: v1
          - kind: AtlasBackupPolicy
            name: atlasbackuppolicies.atlas.mongodb.com
            version: v1
          - kind: AtlasBackupSchedule
            name: atlasbackupschedules.atlas.mongodb.com
            version: v1
          - kind: AtlasCustomRole
            name: atlascustomroles.atlas.mongodb.com
            version: v1
          - kind: AtlasDatabaseUser
            name: atlasdatabaseusers.atlas.mongodb.com
            version: v1
          - kind: AtlasDataFederation
            name: atlasdatafederations.atlas.mongodb.com
            version: v1
          - kind: AtlasDeployment
            name: atlasdeployments.atlas.mongodb.com
            version: v1
          - kind: AtlasFederatedAuth
            name: atlasfederatedauths.atlas.mongodb.com
            version: v1
          - kind: AtlasIPAccessList
            name: atlasipaccesslists.atlas.mongodb.com
            version: v1
          - kind: AtlasNetworkContainer
            name: atlasnetworkcontainers.atlas.mongodb.com
            version: v1
          - kind: AtlasNetworkPeering
            name: atlasnetworkpeerings.atlas.mongodb.com
            version: v1
          - kind: AtlasOrgSettings
            name: atlasorgsettings.atlas.mongodb.com
            version: v1
          - kind: AtlasPrivateEndpoint
            name: atlasprivateendpoints.atlas.mongodb.com
            version: v1
          - kind: AtlasProject
            name: atlasprojects.atlas.mongodb.com
            version: v1
          - kind: AtlasSearchIndexConfig
            name: atlassearchindexconfigs.atlas.mongodb.com
            version: v1
          - kind: AtlasStreamConnection
            name: atlasstreamconnections.atlas.mongodb.com
            version: v1
          - kind: AtlasStreamInstance
            name: atlasstreaminstances.atlas.mongodb.com
            version: v1
          - kind: AtlasTeam
            name: atlasteams.atlas.mongodb.com
            version: v1
          - kind: AtlasThirdPartyIntegration
            name: atlasthirdpartyintegrations.atlas.mongodb.com
            version: v1
        description: |
          The MongoDB Atlas Operator provides a native integration between the Kubernetes orchestration platform and MongoDB
          Atlas — the only multi-cloud document database service that gives you the versatility you need to build sophisticated
          and resilient applications that can adapt to changing customer demands and market trends.

          The full documentation for the Operator can be found [here](https://docs.atlas.mongodb.com/atlas-operator/)

          ## Getting Started

          ### Supported features

          * Create and configure a project, or connect to an existing one.
          * Deploy, manage, scale, and tear down clusters.
          * Support for serverless instances.
          * Create and edit database users.
          * Manage IP Access Lists, network peering and private endpoints.
          * Configure and control Atlas’s fully managed cloud backup.
          * Configure federated authentication for your Atlas organization
          * Integrate Atlas monitoring with Prometheus.

          ... and more.

          To view the list of custom resources and each CR's schema, visit our [reference](https://www.mongodb.com/docs/atlas/operator/stable/custom-resources/)
          documentation. See the [Quickstart](https://www.mongodb.com/docs/atlas/operator/stable/ak8so-quick-start/) to get
          started with Atlas Kubernetes Operator.
        displayName: MongoDB Atlas Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - MongoDB
        - Atlas
        - Database
        - Replica Set
        - Cluster
        links:
        - name: MongoDB Atlas Kubernetes
          url: https://github.com/mongodb/mongodb-atlas-kubernetes
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: beta
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/community-operator-pipeline-prod/mongodb-atlas-kubernetes@sha256:c4f1a2e3a81fc9d48480264ea236acf93ac12b1b719a83adfa8c9ce62d8b49e6
        - quay.io/mongodb/mongodb-atlas-kubernetes-operator:2.12.0
        version: 2.12.0
      entries:
      - name: mongodb-atlas-kubernetes.v2.12.0
        version: 2.12.0
      - name: mongodb-atlas-kubernetes.v2.11.1
        version: 2.11.1
      - name: mongodb-atlas-kubernetes.v2.11.0
        version: 2.11.0
      - name: mongodb-atlas-kubernetes.v2.10.0
        version: 2.10.0
      - name: mongodb-atlas-kubernetes.v2.9.1
        version: 2.9.1
      - name: mongodb-atlas-kubernetes.v2.9.0
        version: 2.9.0
      - name: mongodb-atlas-kubernetes.v2.8.2
        version: 2.8.2
      - name: mongodb-atlas-kubernetes.v2.8.1
        version: 2.8.1
      - name: mongodb-atlas-kubernetes.v2.8.0
        version: 2.8.0
      - name: mongodb-atlas-kubernetes.v2.7.1
        version: 2.7.1
      - name: mongodb-atlas-kubernetes.v2.7.0
        version: 2.7.0
      - name: mongodb-atlas-kubernetes.v2.6.1
        version: 2.6.1
      - name: mongodb-atlas-kubernetes.v2.6.0
        version: 2.6.0
      - name: mongodb-atlas-kubernetes.v2.5.0
        version: 2.5.0
      - name: mongodb-atlas-kubernetes.v2.4.1
        version: 2.4.1
      - name: mongodb-atlas-kubernetes.v2.4.0
        version: 2.4.0
      - name: mongodb-atlas-kubernetes.v2.3.1
        version: 2.3.1
      - name: mongodb-atlas-kubernetes.v2.3.0
        version: 2.3.0
      - name: mongodb-atlas-kubernetes.v2.2.2
        version: 2.2.2
      - name: mongodb-atlas-kubernetes.v2.2.1
        version: 2.2.1
      - name: mongodb-atlas-kubernetes.v2.2.0
        version: 2.2.0
      - name: mongodb-atlas-kubernetes.v2.1.0
        version: 2.1.0
      - name: mongodb-atlas-kubernetes.v2.0.1
        version: 2.0.1
      - name: mongodb-atlas-kubernetes.v2.0.0
        version: 2.0.0
      - name: mongodb-atlas-kubernetes.v1.9.1
        version: 1.9.1
      - name: mongodb-atlas-kubernetes.v1.9.0
        version: 1.9.0
      - name: mongodb-atlas-kubernetes.v1.8.2
        version: 1.8.2
      - name: mongodb-atlas-kubernetes.v1.8.1
        version: 1.8.1
      - name: mongodb-atlas-kubernetes.v1.8.0
        version: 1.8.0
      - name: mongodb-atlas-kubernetes.v1.7.3
        version: 1.7.3
      - name: mongodb-atlas-kubernetes.v1.7.2
        version: 1.7.2
      - name: mongodb-atlas-kubernetes.v1.7.1
        version: 1.7.1
      - name: mongodb-atlas-kubernetes.v1.7.0
        version: 1.7.0
      name: stable
    defaultChannel: stable
    packageName: mongodb-atlas-kubernetes
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: proactive-node-scaling-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: proactive-node-scaling-operator.v0.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "NodeScalingWatermark",
                "metadata": {
                  "name": "ai-ml"
                },
                "spec": {
                  "nodeSelector": {
                    "machine.openshift.io/cluster-api-machine-type": "ai-ml"
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "workload",
                      "operator": "Equal",
                      "value": "ai-ml"
                    }
                  ],
                  "watermarkPercentage": 20
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "NodeScalingWatermark",
                "metadata": {
                  "name": "us-west-2a"
                },
                "spec": {
                  "nodeSelector": {
                    "topology.kubernetes.io/zone": "us-west-2a"
                  },
                  "watermarkPercentage": 20
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          certified: "false"
          containerImage: quay.io/redhat-cop/proactive-node-scaling-operator@sha256:892303babb45090a6458cd4b1c61a01364012c43ea0bd6ed4d10bdcb8041e2ab
          createdAt: "2022-01-22T14:14:23Z"
          description: This operator provides automation proactively scaling nodes
            before pods get stuck waiting for the cluster autoscaler.
          operatorframework.io/suggested-namespace: proactive-node-scaling-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/proactive-node-scaling-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeScalingWatermark is the Schema for the nodescalingwatermarks
              API
            displayName: Node Scaling Watermark
            kind: NodeScalingWatermark
            name: nodescalingwatermarks.redhatcop.redhat.io
            version: v1alpha1
        description: |
          This operator makes the [cluster autoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler) more proactive. As of now the cluster auto scaler will create new nodes only when a pod is pending because it cannot be allocated due to lack of capacity. This is not a goos user experience as the pending workload has to wait for several minutes as the new node is create and joins the cluster.

          The Proactive Node Scaling Operator improves the user experience by allocating low priority pods that don't do anything. When the cluster is full and a new user pod is created the following happens:

          1. some of the low priority pods are de-scheduled to make room for the user pod, which can then be scheduled. The user workload does not have to wait in this case.

          2. the de-scheduled low priority pods are rescheduled and in doing so the trigger the cluster autoscaler to add new nodes.

          Essentially this operator allows you to trade wasted resources for faster response time.

          In order for this operator to work correctly [pod priorities](https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/) must be defined. The default name for the priority class used by this operator is "proactive-node-autoscaling-pods" and it should have the lowest possible priority, 0. To ensure your regular workloads get a normal priority you should also define a PriorityClass for those with a higher priority than 0 and set globalDefault to true.

          For example:

          ```yaml
          apiVersion: scheduling.k8s.io/v1
          kind: PriorityClass
          metadata:
            name: proactive-node-autoscaling-pods
          value: 0
          globalDefault: false
          description: "This priority class is the priority class used for Proactive Node Scaling Pods."
          ---
          apiVersion: scheduling.k8s.io/v1
          kind: PriorityClass
          metadata:
            name: normal-workload
          value: 1000
          globalDefault: true
          description: "This priority classis the cluster default and should be used for normal workloads."
          ```

          Also for this operator to work the [cluster autoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler) must be active, see OpenShift instructions [here](https://docs.openshift.com/container-platform/4.6/machine_management/applying-autoscaling.html) on how to turn it on.

          To activate the proactive autoscaling, a CR must be defined, here is an example:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: NodeScalingWatermark
          metadata:
            name: us-west-2a
          spec:
            priorityClassName: proactive-node-autoscaling-pods
            watermarkPercentage: 20
            nodeSelector:
              topology.kubernetes.io/zone: us-west-2a
          ```

          The `nodeSelector` selects the nodes observed by this operator, which are also the nodes on which the low priority pods will be scheduled. The nodes observed by the cluster autoscaler should coincide with the nodes selected by this operator CR.

          The `watermarkPercentage` define the percentage of capacity of user workload that will be allocated to low priority pods. So in this example 20% of the user allocated capacity will be allocated via low priority pods. This also means that when the user workload reaches 80% capacity of the nodes selected by this CR (and the autoscaler), the cluster will start to scale.
        displayName: Proactive Node Scaling Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Capacity Management
        - Node Autoscaling
        - Proactive Autoscaling
        - Elastic Capacity
        links:
        - name: Proactive Node Scaling Operator
          url: https://github.com/redhat-cop/proactive-node-scaling-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/proactive-node-scaling-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/proactive-node-scaling-operator@sha256:892303babb45090a6458cd4b1c61a01364012c43ea0bd6ed4d10bdcb8041e2ab
        - quay.io/openshift-community-operators/proactive-node-scaling-operator@sha256:0ae01e9adc67ff7341fa3faf51a67c02206c41342374cab0bb2e6079d84fef4a
        version: 0.4.2
      entries:
      - name: proactive-node-scaling-operator.v0.4.2
        version: 0.4.2
      - name: proactive-node-scaling-operator.v0.4.0
        version: 0.4.0
      - name: proactive-node-scaling-operator.v0.3.10
        version: 0.3.10
      - name: proactive-node-scaling-operator.v0.3.9
        version: 0.3.9
      - name: proactive-node-scaling-operator.v0.3.8
        version: 0.3.8
      - name: proactive-node-scaling-operator.v0.3.7
        version: 0.3.7
      - name: proactive-node-scaling-operator.v0.3.6
        version: 0.3.6
      - name: proactive-node-scaling-operator.v0.3.5
        version: 0.3.5
      - name: proactive-node-scaling-operator.v0.3.4
        version: 0.3.4
      - name: proactive-node-scaling-operator.v0.3.3
        version: 0.3.3
      - name: proactive-node-scaling-operator.v0.3.2
        version: 0.3.2
      - name: proactive-node-scaling-operator.v0.3.1
        version: 0.3.1
      - name: proactive-node-scaling-operator.v0.3.0
        version: 0.3.0
      - name: proactive-node-scaling-operator.v0.2.0
        version: 0.2.0
      - name: proactive-node-scaling-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: proactive-node-scaling-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: group-sync-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: group-sync-operator.v0.0.36
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "azure-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "azure": {
                        "credentialsSecret": {
                          "name": "azure-group-sync",
                          "namespace": "group-sync-operator"
                        }
                      },
                      "name": "azure"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "github-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "github": {
                        "credentialsSecret": {
                          "name": "github-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "organization": "redhat-cop"
                      },
                      "name": "github"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "gitlab-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "gitlab": {
                        "credentialsSecret": {
                          "name": "gitlab-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "url": "https://gitlab.apps.openshift.com"
                      },
                      "name": "gitlab"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "keycloak-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "keycloak": {
                        "credentialsSecret": {
                          "name": "keycloak-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "insecure": true,
                        "realm": "ocp",
                        "url": "https://keycloak.apps.openshift.com"
                      },
                      "name": "keycloak"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "ldap-groupsync"
                },
                "spec": {
                  "providers": [
                    {
                      "ldap": {
                        "credentialsSecret": {
                          "name": "ldap-group-sync",
                          "namespace": "group-sync-operator"
                        },
                        "insecure": true,
                        "rfc2307": {
                          "groupMembershipAttributes": [
                            "member"
                          ],
                          "groupNameAttributes": [
                            "cn"
                          ],
                          "groupUIDAttribute": "dn",
                          "groupsQuery": {
                            "baseDN": "ou=Groups,dc=example,dc=com",
                            "derefAliases": "never",
                            "filter": "(objectClass=groupofnames)",
                            "scope": "sub"
                          },
                          "tolerateMemberNotFoundErrors": true,
                          "tolerateMemberOutOfScopeErrors": true,
                          "userNameAttributes": [
                            "cn"
                          ],
                          "userUIDAttribute": "dn",
                          "usersQuery": {
                            "baseDN": "ou=Users,dc=example,dc=com",
                            "derefAliases": "never",
                            "scope": "sub"
                          }
                        },
                        "url": "ldap://localhost:389"
                      },
                      "name": "ldap"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupSync",
                "metadata": {
                  "name": "okta-sync"
                },
                "spec": {
                  "providers": [
                    {
                      "name": "okta",
                      "okta": {
                        "appId": "okta-sync-app-id",
                        "credentialsSecret": {
                          "name": "okta-api-token",
                          "namespace": "group-sync-operator"
                        },
                        "extractLoginUsername": true,
                        "profileKey": "login",
                        "url": "https://example.okta.com/"
                      }
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/group-sync-operator@sha256:43ef79efc2a77ee5edd4e3123f9dab156a30d3e00fd1fba9f89600b96f0f68d6
          createdAt: "2025-08-12T19:19:21Z"
          description: Synchronize groups and users from external providers
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: group-sync-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/group-sync-operator
          support: Red Hat Community of Practice
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GroupSync is the Schema for the groupsyncs API
            displayName: Group Sync
            kind: GroupSync
            name: groupsyncs.redhatcop.redhat.io
            version: v1alpha1
        description: |
          Synchronizes groups from external providers into OpenShift

          ## Overview

          The OpenShift Container Platform contains functionality to synchronize groups found in external identity providers into the platform. Currently, the functionality that is included in OpenShift to limited to synchronizing LDAP only. This operator is designed to integrate with external providers in order to provide new solutions.

          Group Synchronization is facilitated by creating a `GroupSync` resource. The following describes the high level schema for this resource:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: example-groupsync
          spec:
            providers:
              - <One or more providers to synchronize>
          ```

          ## Authentication

          In most cases, authentication details must be provided in order to communicate with providers. Authentication details are provider specific with regards to the required values. In supported providers, the secret can be referenced in the `credentialsSecret` by name and namespace where it has been created as shown below:

          ```
          credentialsSecret:
            name: <secret_name>
            namespace: <secret_namespace>
          ```

          ## Providers

          Integration with external systems is made possible through a set of pluggable external providers. The following providers are currently supported:

          * [Azure](https://azure.microsoft.com/)
          * [GitHub](https://github.com)
          * [GitLab](https://gitlab.com)
          * [LDAP](https://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol)
          * [Keycloak](https://www.keycloak.org/)/[Red Hat Single Sign On](https://access.redhat.com/products/red-hat-single-sign-on)
          * [Okta](https://www.okta.com/)
          * [IBM Security Verify](https://docs.verify.ibm.com/verify)

          The following sections describe the configuration options available for each provider


          ### Azure

          Groups contained within Azure Active Directory can be synchronized into OpenShift. The following table describes the set of configuration options for the Azure provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `authorityHost` | Azure Active Directory Endpoint | `https://login.microsoftonline.com` | No |
          | `baseGroups` | List of groups to start searching from instead of listing all groups in the directory | | No |
          | `credentialsSecret` | Name of the secret containing authentication details (See below) | | Yes |
          | `filter` | Graph API filter | | No |
          | `groups` | List of groups to filter against | | No |
          | `userNameAttributes` | Fields on a user record to use as the User Name | `userPrincipalName` | No |
          | `prune` | Prune Whether to prune groups that are no longer in Azure | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Azure provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: azure-groupsync
          spec:
            providers:
            - name: azure
              azure:
                credentialsSecret:
                  name: azure-group-sync
                  namespace: group-sync-operator
          ```

          #### Authenticating to Azure

          Authentication to Azure can be performed using Application Registration with access to query group information in Azure Active Directory.

          The App Registration must be granted access to the following Microsoft Graph API's:

          * Group.Read.All
          * GroupMember.Read.All
          * User.Read.All

          A secret must be created in the same namespace that contains the `GroupSync` resource:

          The following keys must be defined in the secret

          * `AZURE_TENANT_ID` - Tenant ID
          * `AZURE_CLIENT_ID` - Client ID
          * `AZURE_CLIENT_SECRET` - Client Secret

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic azure-group-sync --from-literal=AZURE_SUBSCRIPTION_ID=<AZURE_SUBSCRIPTION_ID> --from-literal=AZURE_TENANT_ID=<AZURE_TENANT_ID> --from-literal=AZURE_CLIENT_ID=<AZURE_CLIENT_ID> --from-literal=AZURE_CLIENT_SECRET=<AZURE_CLIENT_SECRET>
          ```

          ### GitHub

          Teams stored within a GitHub organization can be synchronized into OpenShift. The following table describes the set of configuration options for the GitHub provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `caSecret` | Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `organization` | Organization to synchronize against | | Yes |
          | `teams` | List of teams to filter against | | No |
          | `url` | Base URL for the GitHub or GitHub Enterprise host (Must contain a trailing slash) | | No |
          | `prune` | Prune Whether to prune groups that are no longer in GitHub | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Github provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: github-groupsync
          spec:
            providers:
            - name: github
              github:
                organization: ocp
                credentialsSecret:
                  name: github-group-sync
                  namespace: group-sync-operator
          ```

          #### Authenticating to GitHub

          Authentication to GitLab can be performed using a [Token](https://docs.gitlab.com/ee/security/token_overview.html) or a Username and Password (Note: 2FA not supported). A secret must be created in the same namespace that contains the `GroupSync` resource:

          When using an OAuth token, the following token types are supported:

          * Personal Access Token
          * OAuth Token
          * Job Token

          the following key is required:

          * `token` - OAuth token

          Optionally, the `tokenType` key can be specified to indicate the type of token being provided from the following values:

          * OAuth - `oauth`
          * Personal Access Token - `personal`
          * Job Token - `job`

          If no `tokenType` is provided, `oauth` is used by default

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=token=<token>
          ```

          To specify a token type, such as a Personal Access Token, the following command can be executed:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=token=<token> --from-literal=tokenType=personal
          ```

          The following keys are required for username and password:

          * `username` - Username for authenticating with GitHub
          * `password` - Password for authenticating with GitHub

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic github-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          ### GitLab

          Groups stored within a GitLab can be synchronized into OpenShift. The following table describes the set of configuration options for the GitLab provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `ca` | Reference to a resource containing a SSL certificate to use for communication (See below) | | No |
          | `caSecret` | **DEPRECATED** Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `groups` | List of groups to filter against | | No |
          | `prune` | Prune Whether to prune groups that are no longer in GitLab | `false` | No |
          | `scope` | Scope for group synchronization. Options are `one` for one level or `sub` to include subgroups | `sub` | No |
          | `url` | Base URL for the GitLab instance | `https://gitlab.com` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Github provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: gitlab-groupsync
          spec:
            providers:
            - name: gitlab
              gitlab:
                credentialsSecret:
                  name: gitlab-group-sync
                  namespace: group-sync-operator
          ```

          #### Authenticating to GitLab

          Authentication to GitLab can be performed using an OAuth Personal Access Token or a Username and Password (Note: 2FA not supported). A secret must be created in the same namespace that contains the `GroupSync` resource:

          When using an OAuth token, the following key is required:

          * `token` - OAuth token

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=token=<token>
          ```

          The following keys are required for username and password:

          * `username` - Username for authenticating with GitLab
          * `password` - Password for authenticating with GitLab

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic gitlab-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          ### LDAP

          Groups stored within an [LDAP](https://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol) server can be synchronized into OpenShift. The LDAP provider implements the included features of the [Syncing LDAP groups](https://docs.openshift.com/container-platform/latest/authentication/ldap-syncing.html) feature and makes use of the libraries from the [OpenShift Command Line](https://docs.openshift.com/container-platform/latest/cli_reference/openshift_cli/getting-started-cli.html) tool to streamline the migration to this operator based implementation.

          The configurations of the three primary schemas (`rfc2307`, `activeDirectory` and `augmentedActiveDirectory`) can be directly migrated as is without any modification.

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `ca` | Reference to a resource containing a SSL certificate to use for communication (See below) | | No |
          | `caSecret` | **DEPRECATED** Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | No |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `groupUIDNameMapping` | User defined name mapping | | No |
          | `rfc2307` | Configuration using the [rfc2307](https://docs.openshift.com/container-platform/latest/authentication/ldap-syncing.html#ldap-syncing-rfc2307_ldap-syncing-groups) schema | | No |
          | `activeDirectory` | Configuration using the [activeDirectory](https://docs.openshift.com/container-platform/4.5/authentication/ldap-syncing.html#ldap-syncing-activedir_ldap-syncing-groups) schema | | No |
          | `augmentedActiveDirectory` | Configuration using the [activeDirectory](https://docs.openshift.com/container-platform/4.5/authentication/ldap-syncing.html#ldap-syncing-augmented-activedir_ldap-syncing-groups) schema | | No |
          | `url` | Connection URL for the LDAP server | `ldap://ldapserver:389` | No |
          | `whitelist` | Explicit list of groups to synchronize |  | No |
          | `blacklist` | Explicit list of groups to not synchronize |  | No |
          | `prune` | Prune Whether to prune groups that are no longer in LDAP | `false` | No |

          The following is an example using the `rfc2307` schema:

          ```
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ldap-groupsync
          spec:
            providers:
            - ldap:
                credentialsSecret:
                  name: ldap-group-sync
                  namespace: group-sync-operator
                insecure: true
                rfc2307:
                  groupMembershipAttributes:
                  - member
                  groupNameAttributes:
                  - cn
                  groupUIDAttribute: dn
                  groupsQuery:
                    baseDN: ou=Groups,dc=example,dc=com
                    derefAliases: never
                    filter: (objectClass=groupofnames)
                    scope: sub
                  tolerateMemberNotFoundErrors: true
                  tolerateMemberOutOfScopeErrors: true
                  userNameAttributes:
                  - cn
                  userUIDAttribute: dn
                  usersQuery:
                    baseDN: ou=Users,dc=example,dc=com
                    derefAliases: never
                    scope: sub
                url: ldap://ldapserver:389
              name: ldap
          ```

          The examples provided in the OpenShift documented referenced previously can be used to construct the schemas for the other LDAP synchronization types.

          #### Authenticating to LDAP

          If authentication is required in order to communicate with the LDAP server, a secret should be created in the same namespace that contains the `GroupSync` resource. The following keys can be defined:

          * `username` - Username (Bind DN) for authenticating with the LDAP server
          * `password` - Password for authenticating with the LDAP server

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic ldap-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          #### Whitelists and Blacklists

          Groups can be explicitly whitelisted or blacklisted in order to control the groups that are eligible to be synchronized into OpenShift. When running LDAP group synchronization using the command line, this configuration is referenced via separate files, but these are instead specified in the `blacklist` and `whitelist` properties as shown below:

          ```
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ldap-groupsync
          spec:
            providers:
            - ldap:
          ...
                whitelist:
                - cn=Online Corporate Banking,ou=Groups,dc=example,dc=com
          ...
              name: ldap
          ```

          ```
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ldap-groupsync
          spec:
            providers:
            - ldap:
          ...
                blacklist:
                - cn=Finance,ou=Groups,dc=example,dc=com
          ...
              name: ldap
          ```

          ### Keycloak

          Groups stored within Keycloak can be synchronized into OpenShift. The following table describes the set of configuration options for the Keycloak provider:

          | Name | Description | Defaults | Required |
          | ----- | ---------- | -------- | ----- |
          | `ca` | Reference to a resource containing a SSL certificate to use for communication (See below) | | No |
          | `caSecret` | **DEPRECATED** Reference to a secret containing a SSL certificate to use for communication (See below) | | No |
          | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
          | `groups` | List of groups to filter against | | No |
          | `insecure` | Ignore SSL verification | `false` | No |
          | `loginRealm` | Realm to authenticate against | `master` | No |
          | `realm` | Realm to synchronize | | Yes |
          | `scope` | Scope for group synchronization. Options are `one` for one level or `sub` to include subgroups | `sub` | No |
          | `url` | Base URL for the Keycloak server. Older versions (<17.0.0) including Red Hat SSO should include the context path `/auth` appended to the hostname  | | Yes |
          | `prune` | Prune Whether to prune groups that are no longer in Keycloak | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with a Keycloak provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            providers:
            - name: keycloak
              keycloak:
                realm: ocp
                credentialsSecret:
                  name: keycloak-group-sync
                  namespace: group-sync-operator
                url: https://keycloak-keycloak-operator.apps.openshift.com/auth
          ```

          #### Authenticating to Keycloak

          A user with rights to query for Keycloak groups must be available. The following permissions must be associated to the user:

          * Password must be set (Temporary option unselected) on the _Credentials_ tab
          * On the _Role Mappings_ tab, select _master-realm_ or _realm-management_ next to the _Client Roles_ dropdown and then select **Query Groups** and **Query Users**.

          A secret must be created in the same namespace that contains the `GroupSync` resource. It must contain the following keys for the user previously created:

          * `username` - Username for authenticating with Keycloak
          * `password` - Password for authenticating with Keycloak

          The secret can be created by executing the following command:

          ```shell
          oc create secret generic keycloak-group-sync --from-literal=username=<username> --from-literal=password=<password>
          ```

          ### Okta

          [Okta Groups](https://help.okta.com/en/prod/Content/Topics/users-groups-profiles/usgp-main.htm) assigned to [Okta Applications](https://help.okta.com/en/prod/Content/Topics/Apps/Apps_Apps.htm) can be synchronized into OpenShift. The developer docs for the Okta API that the Okta Syncer uses can be found [here](https://developer.okta.com/docs/reference/api/apps/#list-groups-assigned-to-application).
          The following table describes the set of configuration options for the Okta provider:

            | Name | Description | Defaults | Required |
            | ----- | ---------- | -------- | ----- |
            | `credentialsSecret` | Reference to a secret containing authentication details (See below) | | Yes |
            | `groups` | List of groups to filter against | | No |
            | `url` | Okta organization URL (Must contain a trailing slash) | | Yes |
            | `appId` | Application ID of App Groups are assigned to | | Yes |
            | `extractLoginUsername` | Bool to determine if you should extract username from okta login | | No |
            | `profileKey` | Attribute field on Okta User Profile you would like to use as identity | `login` | No |
            | `groupLimit` | Integer to set the maximum number of groups to retrieve from OKTA per request. | `1000` | No |
            | `prune` | Prune Whether to prune groups that are no longer in OKTA | `false` | No |

          The following is an example of a minimal configuration that can be applied to integrate with an Okta provider:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: okta-sync
          spec:
            providers:
              - name: okta
                okta:
                  credentialsSecret:
                    name: okta-api-token
                    namespace: group-sync-operator
                  url: "https://example.okta.com/"
                  appId: okta-sync-app-id
          ```

          #### Authenticating to Okta

          A secret must be created in the same namespace as the group-sync-operator pod. It must contain the following key:

            * `okta-api-token` - Okta API Token for interacting with Okta

          The secret can be created by executing the following command:

            ```shell
            oc create secret generic okta-api-token --from-literal=okta-api-token=<OKTA_API_TOKEN> -n group-sync-operator
            ```

          ### IBM Security Verify

          Groups defined in [IBM Security Verify](https://help.okta.com/en/prod/Content/Topics/users-groups-profiles/usgp-main.htm) (ISV) can be synchronized into OpenShift. Currently only the `userName` field from ISV will be synchronized. The developer docs for the ISV API can be found [here](https://docs.verify.ibm.com/verify/page/api-documentation).
          The following table describes the set of configuration options for the provider:

            | Name | Description | Defaults | Required |
            | ----- | ---------- | -------- | ----- |
            | `credentialsSecret` | Reference to a secret containing authentication details (see below) | `''`  | Yes |
            | `groups` | List of groups to synchronize (see below) | `nil`  | Yes |
            | `tenantUrl` | The ISV tenant URL, for example `https://my-isv.verify.ibm.com`) | `''`  | Yes |

          The following is an example of a minimal configuration that can be applied to integrate with an Okta provider:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: ibmsecurityverify-sync
          spec:
              providers:
              - name: ibmsecurityverify
                ibmsecurityverify:
                  credentialsSecret:
                    name: isv-group-sync
                    namespace: group-sync-operator
                  tenantUrl: https://my-isv.verify.ibm.com
                  groups:
                    - name: 'application owners'
                      id: 645001V3V9
                    - name: developer
                      id: 645001V3VA
          ```

          #### Group Objects
          Each group object in the `groups` array must contain an `id` field. The group ID can be retrieved by pulling the group information from the ISV API. Optionally, the object may also contain a `name` which corresponds to the group's display name. When defined, the operator will confirm that the name defined in the YAML matches that received from the API when synchronization occurs; as the group IDs are not human-friendly, using the name can confirm the correct groups are configured. If the names do not match an error will be logged.

          #### Group Names
          The name of each groups created in OpenShift will match the group name in ISV. Any whitespace in the ISV group name will be replaced with a hyphen.

          #### Authenticating to IBM Security Verify

          A secret must be created in the same namespace as the group-sync-operator pod. It must contain the following keys:

          * `clientId` - The API client ID.
          * `clientSecret`- The API client secret.

          See the IBM Security Verify [API documentation](https://docs.verify.ibm.com/verify/docs/api-access) for setting up authentication.

          ### Support for Additional Metadata (Beta)

          Additional metadata based on Keycloak group are also added to the OpenShift groups as Annotations including:

          * Parent/child relationship between groups and their subgroups
          * Group attributes

          ## CA Certificates

          Several providers allow for certificates to be provided in either a _ConfigMap_ or _Secret_ to communicate securely to the target host through the use of a property called `ca`.

          The certificate can be added to a Secret called _keycloak-certs_ using the key `ca.crt` representing the certificate using the following command.

          ```
          oc create secret generic keycloak-certs --from-file=ca.crt=<file>
          ```

          An example of how the CA certificate can be added to the Keycloak provider is shown below:


          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            providers:
            - name: keycloak
              keycloak:
                realm: ocp
                credentialsSecret:
                  name: keycloak-group-sync
                  namespace: group-sync-operator
                caSecret:
                  kind: Secret
                  name: keycloak-certs
                  namespace: group-sync-operator
                  key: ca.crt
                url: https://keycloak-keycloak-operator.apps.openshift.com
          ```

          Alteratively, a _ConfigMap_ can be used instead instead of a _Secret_. This is useful when using the [Certificate injection using Operators](https://docs.openshift.com/container-platform/latest/networking/configuring-a-custom-pki.html#certificate-injection-using-operators_configuring-a-custom-pki) feature.

          The following command can be used to create a _ConfigMap_ containing the certificate:

          ```
          oc create configmap keycloak-certs --from-file=ca.crt=<file>
          ````

          An example of how the CA certificate can be added to the Keycloak provider is shown below:

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            providers:
            - name: keycloak
              keycloak:
                realm: ocp
                credentialsSecret:
                  name: keycloak-group-sync
                  namespace: group-sync-operator
                caSecret:
                  kind: ConfigMap
                  name: keycloak-certs
                  namespace: group-sync-operator
                  key: ca.crt
                url: https://keycloak-keycloak-operator.apps.openshift.com
          ```

          ## Scheduled Execution

          A cron style expression can be specified for which a synchronization event will occur. The following specifies that a synchronization should occur nightly at 3AM

          ```shell
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: GroupSync
          metadata:
            name: keycloak-groupsync
          spec:
            schedule: "0 3 * * *"
            providers:
            - ...
          ```

          If a schedule is not provided, synchronization will occur only when the object is reconciled by the platform.

          ## Metrics

          Prometheus compatible metrics are exposed by the Operator and can be integrated into OpenShift's default cluster monitoring. To enable OpenShift cluster monitoring, label the namespace the operator is deployed in with the label `openshift.io/cluster-monitoring="true"`.

          ```
          oc label namespace <namespace> openshift.io/cluster-monitoring="true"
          ```
        displayName: Group Sync Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - group
        - user
        - security
        - authorization
        links:
        - name: Group Sync Operator
          url: https://github.com/redhat-cop/group-sync-operator
        maintainers:
        - email: ablock@redhat.com
          name: Andrew Block
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/community-operator-pipeline-prod/group-sync-operator@sha256:fe6fda2de67fc4996d3f388e11faa0130fee19453111c829ba0aaa5be5410d01
        - quay.io/redhat-cop/group-sync-operator@sha256:43ef79efc2a77ee5edd4e3123f9dab156a30d3e00fd1fba9f89600b96f0f68d6
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:b8a174be91f3df75dff9656d4c72de28af51a731008e9e96db5eef3c7af58aac
        version: 0.0.36
      entries:
      - name: group-sync-operator.v0.0.36
        version: 0.0.36
      - name: group-sync-operator.v0.0.35
        version: 0.0.35
      - name: group-sync-operator.v0.0.34
        version: 0.0.34
      - name: group-sync-operator.v0.0.33
        version: 0.0.33
      - name: group-sync-operator.v0.0.32
        version: 0.0.32
      - name: group-sync-operator.v0.0.31
        version: 0.0.31
      - name: group-sync-operator.v0.0.30
        version: 0.0.30
      - name: group-sync-operator.v0.0.29
        version: 0.0.29
      - name: group-sync-operator.v0.0.28
        version: 0.0.28
      - name: group-sync-operator.v0.0.27
        version: 0.0.27
      - name: group-sync-operator.v0.0.26
        version: 0.0.26
      - name: group-sync-operator.v0.0.25
        version: 0.0.25
      - name: group-sync-operator.v0.0.24
        version: 0.0.24
      - name: group-sync-operator.v0.0.23
        version: 0.0.23
      - name: group-sync-operator.v0.0.22
        version: 0.0.22
      - name: group-sync-operator.v0.0.21
        version: 0.0.21
      - name: group-sync-operator.v0.0.20
        version: 0.0.20
      - name: group-sync-operator.v0.0.19
        version: 0.0.19
      - name: group-sync-operator.v0.0.18
        version: 0.0.18
      - name: group-sync-operator.v0.0.17
        version: 0.0.17
      - name: group-sync-operator.v0.0.16
        version: 0.0.16
      - name: group-sync-operator.v0.0.15
        version: 0.0.15
      - name: group-sync-operator.v0.0.14
        version: 0.0.14
      - name: group-sync-operator.v0.0.13
        version: 0.0.13
      name: alpha
    defaultChannel: alpha
    packageName: group-sync-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: geunwookim
      provider-url: ""
    name: ncn-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ncn-operator.v0.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cxl.antline.com/v1",
                "kind": "CXL",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cxl-operator",
                    "app.kubernetes.io/instance": "cxl-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cxl",
                    "app.kubernetes.io/part-of": "cxl-operator"
                  },
                  "name": "cxl-1"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          createdAt: "2024-06-19T01:21:08Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CXL is the Schema for the cxls API
            displayName: CXL
            kind: CXL
            name: cxls.cxl.antline.com
            version: v1
        description: This operator is for ncn extend
        displayName: ncn-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ncn
        - memory
        - extend
        links:
        - name: NCN Operator
          url: https://ncn-operator.domain
        maintainers:
        - email: jwahn@antlinesoft.com
          name: Antline-Soft
        maturity: alpha
        provider:
          name: Antline
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        - quay.io/community-operator-pipeline-prod/ncn-operator@sha256:61685ecb519d17160149a5dc16ae28d6fd96264652a6f19fef861addfa4ec6f4
        - quay.io/rasen708/ncn-operator:v0.2.2
        version: 0.2.2
      entries:
      - name: ncn-operator.v0.2.2
        version: 0.2.2
      - name: ncn-operator.v0.2.1
        version: 0.2.1
      - name: ncn-operator.v0.2.0
        version: 0.2.0
      name: beta
    - currentCSV: ncn-operator.v0.9.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cmmd.gw.com/v1",
                "kind": "CMMD",
                "metadata": {
                  "name": "my-app",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "allocateMode": "auto",
                  "enable": true,
                  "payload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "metadata": {
                      "name": "my-app"
                    },
                    "spec": {
                      "replicas": 1,
                      "selector": {
                        "matchLabels": {
                          "name": "my-app"
                        }
                      },
                      "template": {
                        "metadata": {
                          "labels": {
                            "name": "my-app"
                          }
                        },
                        "spec": {
                          "containers": [
                            {
                              "image": "quay.io/my-account/my-app:latest",
                              "name": "my-app-01"
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "cmmd.gw.com/v1",
                "kind": "Label",
                "metadata": {
                  "labels": {
                    "machineconfiguration.openshift.io/role": "cmmd"
                  },
                  "name": "cmmd-node-label",
                  "namespace": "socmmd"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          console.openshift.io/plugins: '["socmmd-console-plugin"]'
          containerImage: quay.io/rasen708/ncn-operator@sha256:a09963745bd9c1419532d42d91237b7496c7a78e6a1c460a8e714ea1a0ce4d45
          createdAt: "2024-08-01T05:45:38Z"
          description: Provides the ncn extend
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "cmmd.gw.com/v1",
              "kind": "Label",
              "metadata": {
                "name": "cmmd-node-label",
                "namespace": "socmmd",
                "labels": {}
              },
              "spec": {}
            }
          operatorframework.io/suggested-namespace: socmmd-system
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/geunwookim/ncn-operator
          support: geunwookim
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CMMD is the Schema for the cmmds API
            displayName: CMMD
            kind: CMMD
            name: cmmds.cmmd.gw.com
            version: v1
          - description: Label is the Schema for the labels API
            displayName: Node Label
            kind: Label
            name: labels.cmmd.gw.com
            version: v1
        description: This operator is for ncn extend
        displayName: ncn-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ncn
        - memory
        - extend
        links:
        - name: NCN Operator
          url: https://ncn-operator.domain
        maintainers:
        - email: geunwookim@gmail.com
          name: geunwookim
        maturity: betav1
        provider:
          name: geunwookim
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        - quay.io/community-operator-pipeline-prod/ncn-operator@sha256:a99a5ca46c5bd3065905588f4d0e3cdc6409d435abdc02793be88e77c1a8f0f5
        - quay.io/rasen708/ncn-operator@sha256:a09963745bd9c1419532d42d91237b7496c7a78e6a1c460a8e714ea1a0ce4d45
        version: 0.9.8
      entries:
      - name: ncn-operator.v0.9.8
        version: 0.9.8
      - name: ncn-operator.v0.9.2
        version: 0.9.2
      - name: ncn-operator.v0.8.1
        version: 0.8.1
      - name: ncn-operator.v0.5.6
        version: 0.5.6
      - name: ncn-operator.v0.4.3
        version: 0.4.3
      - name: ncn-operator.v0.4.2
        version: 0.4.2
      name: betav1
    defaultChannel: betav1
    packageName: ncn-operator
    provider:
      name: geunwookim
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: must-gather-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: must-gather-operator.v1.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "MustGather",
                "metadata": {
                  "name": "example-mustgather"
                },
                "spec": {
                  "caseID": "02527285",
                  "caseManagementAccountSecretRef": {
                    "name": "case-management-creds"
                  },
                  "serviceAccountRef": {
                    "name": "must-gather-admin"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security, Monitoring
          certified: "false"
          containerImage: quay.io/redhat-cop/must-gather-operator@sha256:aebef122cdb8409f5a5d70d3cdc585e02272704d57e103553a84bc6fc238e646
          createdAt: "2021-12-02T17:13:53Z"
          description: This operator provides a facility to easily upload must-gather
            reports to a Red Hat case.
          operatorframework.io/suggested-namespace: global-load-balancer-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/must-gather-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: MustGather
            name: mustgathers.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The must gather operator helps collecting must gather information on a cluster and uploading it to a case.
          To use the operator a cluster administrator can create the following must gather CR:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: MustGather
          metadata:
            name: example-mustgather
          spec:
            caseID: '02527285'
            caseManagementAccountSecretRef:
              name: case-management-creds
          ```

          this request will collect the standard must gather info and upload it to case `#02527285` using the credentials found in the `caseManagementCreds` secret.

          A more complex example:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: MustGather
          metadata:
            name: full-mustgather
          spec:
            caseID: '02527285'
            caseManagementAccountSecretRef:
              name: case-management-creds
            serviceAccountRef:
              name: must-gather-admin
            mustGatherImages:
            - quay.io/kubevirt/must-gather:latest
            - quay.io/ocs-dev/ocs-must-gather
          ```

          in this example we are using a specific service account (which must have cluster admin permissions as per must-gather requirements) and we are specifying a couple of additional must gather images to be run for the `kubevirt` and `ocs` subsystem. If not specified serviceAccountRef.Name will default to `default`. Also the standard must gather image: `quay.io/openshift/origin-must-gather:latest` is always added by default.
        displayName: Must Gather Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - case_management
        - support
        - must_gather
        links:
        - name: Must Gather Operator
          url: https://github.com/redhat-cop/must-gather-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/must-gather-operator
        maintainers:
        - email: rspazzol@redhat.com'
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/must-gather-operator@sha256:a71e5e25aaa92f03334776fee87316809bf2a46dfb34c497d63b228a194982f2
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/must-gather-operator@sha256:aebef122cdb8409f5a5d70d3cdc585e02272704d57e103553a84bc6fc238e646
        version: 1.1.2
      entries:
      - name: must-gather-operator.v1.1.2
        version: 1.1.2
      - name: must-gather-operator.v1.1.1
        version: 1.1.1
      - name: must-gather-operator.v1.1.0
        version: 1.1.0
      - name: must-gather-operator.v1.0.6
        version: 1.0.6
      - name: must-gather-operator.v1.0.5
        version: 1.0.5
      - name: must-gather-operator.v1.0.4
        version: 1.0.4
      - name: must-gather-operator.v1.0.3
        version: 1.0.3
      - name: must-gather-operator.v1.0.2
        version: 1.0.2
      - name: must-gather-operator.v1.0.1
        version: 1.0.1
      - name: must-gather-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: must-gather-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: t8c-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: t8c-operator.v42.96.0-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"externalDbIP":
            "10.0.2.15","customImageNames": false,"repository": "icr.io/cpopen/turbonomic","tag":"8.18.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-operator@sha256:40791802e2355d7e977c7c039bd6ef1284048fdd2d5122fa72807506adba5d5d
          createdAt: "2023-03-24T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=42.53.0-beta.1 <42.96.0-beta.1'
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints. Turbonomic platform install and configuration
              documentation can be found online here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How do I start?

          Turbonomic platform installation and configuration documentation can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
          Carefully read through the prerequisites before beginning the installation.  Once ready, on the `Details` tab for the Turbonomic Platform Operator, under `Provided APIs`, click `Create instance`.
          For samples of common configurations, refer to sample custom resource YAMLs provided here: https://github.com/turbonomic/t8c-install/tree/master/samples
          Looking to upgrade your current deployment? Refer to documentation here: https://www.ibm.com/docs/en/tarm/latest?topic=version-updating-using-red-hat-openshift-operatorhub

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator-bundle@sha256:839f4ba577ed264f57bff73a7360c8e1ee4eb4c4644f6b7e283c53061cc804e7
        - icr.io/cpopen/t8c-operator@sha256:40791802e2355d7e977c7c039bd6ef1284048fdd2d5122fa72807506adba5d5d
        version: 42.96.0-beta.1
      entries:
      - name: t8c-operator.v42.96.0-beta.1
        version: 42.96.0-beta.1
      name: beta
    - currentCSV: t8c-operator.v42.96.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"externalDbIP":
            "10.0.2.15","customImageNames": false,"repository": "icr.io/cpopen/turbonomic","tag":"8.18.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-operator@sha256:c2d188dde455165c2e9da8c6a8f413dea682021cba62dd990af832d23b03d5ab
          createdAt: "2023-03-24T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=42.53.0 <42.96.0'
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints. Turbonomic platform install and configuration
              documentation can be found online here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How do I start?

          Turbonomic platform installation and configuration documentation can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm/latest?topic=installation-installing-kubernetes-clusters
          Carefully read through the prerequisites before beginning the installation.  Once ready, on the `Details` tab for the Turbonomic Platform Operator, under `Provided APIs`, click `Create instance`.
          For samples of common configurations, refer to sample custom resource YAMLs provided here: https://github.com/turbonomic/t8c-install/tree/master/samples
          Looking to upgrade your current deployment? Refer to documentation here: https://www.ibm.com/docs/en/tarm/latest?topic=version-updating-using-red-hat-openshift-operatorhub

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/t8c-operator@sha256:c2d188dde455165c2e9da8c6a8f413dea682021cba62dd990af832d23b03d5ab
        - registry.connect.redhat.com/turbonomic/t8c-operator-bundle@sha256:b8c8b56082cf7460e5ec879f8099b1732cc56ac1f3b5321b5c90cccad3db11e2
        version: 42.96.0
      entries:
      - name: t8c-operator.v42.96.0
        version: 42.96.0
      name: stable
    defaultChannel: stable
    packageName: t8c-certified
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operator-kogitocloud: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: kogito-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kogito-operator.v1.44.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "process-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogito-infinispan-infra"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "infinispan.org/v1",
                    "kind": "Infinispan"
                  }
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/kiegroup/kogito-operator:1.44.1
          createdAt: "2019-08-22T13:12:22Z"
          description: Kogito Operator for deployment and management of Kogito services.
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/kogito-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.app.kiegroup.org
            version: v1beta1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.app.kiegroup.org
            version: v1beta1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.app.kiegroup.org
            version: v1beta1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.app.kiegroup.org
            version: v1beta1
        description: |-
          Kogito Operator is designed to deploy Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Creates two kinds of build configuration: Native or JVM. For more information refer to [Native build and deployment](https://docs.jboss.org/kogito/release/latest/html_single/#_native_build_and_deployment) section on our docs
          * Builds a Kogito service from a remote git repository and creates a custom image for the given runtime: Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Installs the [Kogito Data Index Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-data-index-service_kogito-deploying-on-openshift) to enable data index feature for Kogito services.
          * Installs the [Kogito Jobs Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-jobs-service_kogito-deploying-on-openshift) to enable jobs scheduling.

          For Kubernetes deployment of Kogito services, please refer to the section [Deploying Kogito services on Kubernetes](https://docs.jboss.org/kogito/release/latest/html_single/#proc-kogito-deploying-on-kubernetes_kogito-deploying-on-openshift) on our docs.

          **IMPORTANT!** Kogito Operator might need Infinispan Operator and Strimzi to implement persistence and messaging use cases if you do not provide these services beforehand.
          If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the Kogito Operator.
        displayName: Kogito
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://kogito.kie.org/
        - name: Documentation
          url: https://github.com/kiegroup/kogito-operator/blob/main/README.md
        - name: Source
          url: https://github.com/kiegroup/kogito-operator/
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.12.0
        - quay.io/kiegroup/kogito-operator:1.44.1
        - quay.io/openshift-community-operators/kogito-operator@sha256:28cd33562ab56c44d65486984cac7edfbdd1336ced1277f1af7df6c2a8073e3e
        version: 1.44.1
      entries:
      - name: kogito-operator.v1.44.1
        version: 1.44.1
      - name: kogito-operator.v1.43.0
        version: 1.43.0
      - name: kogito-operator.v1.42.0
        version: 1.42.0
      - name: kogito-operator.v1.41.0
        version: 1.41.0
      - name: kogito-operator.v1.40.0
        version: 1.40.0
      - name: kogito-operator.v1.39.0
        version: 1.39.0
      - name: kogito-operator.v1.38.0
        version: 1.38.0
      - name: kogito-operator.v1.37.0
        version: 1.37.0
      - name: kogito-operator.v1.36.0
        version: 1.36.0
      - name: kogito-operator.v1.35.0
        version: 1.35.0
      - name: kogito-operator.v1.34.0
        version: 1.34.0
      - name: kogito-operator.v1.33.0
        version: 1.33.0
      - name: kogito-operator.v1.32.0
        version: 1.32.0
      - name: kogito-operator.v1.31.0
        version: 1.31.0
      - name: kogito-operator.v1.30.0
        version: 1.30.0
      - name: kogito-operator.v1.29.0
        version: 1.29.0
      - name: kogito-operator.v1.28.0
        version: 1.28.0
      - name: kogito-operator.v1.27.0
        version: 1.27.0
      - name: kogito-operator.v1.26.0
        version: 1.26.0
      - name: kogito-operator.v1.25.0
        version: 1.25.0
      - name: kogito-operator.v1.24.0
        version: 1.24.0
      - name: kogito-operator.v1.23.0
        version: 1.23.0
      - name: kogito-operator.v1.22.1
        version: 1.22.1
      - name: kogito-operator.v1.22.0
        version: 1.22.0
      - name: kogito-operator.v1.21.0
        version: 1.21.0
      - name: kogito-operator.v1.20.0
        version: 1.20.0
      - name: kogito-operator.v1.19.0
        version: 1.19.0
      - name: kogito-operator.v1.18.0
        version: 1.18.0
      - name: kogito-operator.v1.17.0
        version: 1.17.0
      - name: kogito-operator.v1.16.1
        version: 1.16.1
      - name: kogito-operator.v1.16.0
        version: 1.16.0
      - name: kogito-operator.v1.15.0
        version: 1.15.0
      - name: kogito-operator.v1.14.0
        version: 1.14.0
      - name: kogito-operator.v1.13.0
        version: 1.13.0
      - name: kogito-operator.v1.12.0
        version: 1.12.0
      - name: kogito-operator.v1.11.1
        version: 1.11.1
      - name: kogito-operator.v1.11.0
        version: 1.11.0
      - name: kogito-operator.v1.10.0
        version: 1.10.0
      - name: kogito-operator.v1.9.1
        version: 1.9.1
      - name: kogito-operator.v1.9.0
        version: 1.9.0
      - name: kogito-operator.v1.8.0
        version: 1.8.0
      - name: kogito-operator.v1.7.0
        version: 1.7.0
      - name: kogito-operator.v1.6.0
        version: 1.6.0
      - name: kogito-operator.v1.5.0
        version: 1.5.0
      - name: kogito-operator.v1.4.0
        version: 1.4.0
      name: 1.x
    - currentCSV: kogito-operator.v1.44.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "process-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogito-infinispan-infra"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "infinispan.org/v1",
                    "kind": "Infinispan"
                  }
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "process-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "app.kiegroup.org/v1beta1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/kiegroup/kogito-operator:1.44.1
          createdAt: "2019-08-22T13:12:22Z"
          description: Kogito Operator for deployment and management of Kogito services.
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/kogito-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.app.kiegroup.org
            version: v1beta1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.app.kiegroup.org
            version: v1beta1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.app.kiegroup.org
            version: v1beta1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.app.kiegroup.org
            version: v1beta1
        description: |-
          Kogito Operator is designed to deploy Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Creates two kinds of build configuration: Native or JVM. For more information refer to [Native build and deployment](https://docs.jboss.org/kogito/release/latest/html_single/#_native_build_and_deployment) section on our docs
          * Builds a Kogito service from a remote git repository and creates a custom image for the given runtime: Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Installs the [Kogito Data Index Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-data-index-service_kogito-deploying-on-openshift) to enable data index feature for Kogito services.
          * Installs the [Kogito Jobs Service](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-with-jobs-service_kogito-deploying-on-openshift) to enable jobs scheduling.

          For Kubernetes deployment of Kogito services, please refer to the section [Deploying Kogito services on Kubernetes](https://docs.jboss.org/kogito/release/latest/html_single/#proc-kogito-deploying-on-kubernetes_kogito-deploying-on-openshift) on our docs.

          **IMPORTANT!** Kogito Operator might need Infinispan Operator and Strimzi to implement persistence and messaging use cases if you do not provide these services beforehand.
          If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the Kogito Operator.
        displayName: Kogito
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://kogito.kie.org/
        - name: Documentation
          url: https://github.com/kiegroup/kogito-operator/blob/main/README.md
        - name: Source
          url: https://github.com/kiegroup/kogito-operator/
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.12.0
        - quay.io/kiegroup/kogito-operator:1.44.1
        - quay.io/openshift-community-operators/kogito-operator@sha256:28cd33562ab56c44d65486984cac7edfbdd1336ced1277f1af7df6c2a8073e3e
        version: 1.44.1
      entries:
      - name: kogito-operator.v1.44.1
        version: 1.44.1
      - name: kogito-operator.v1.43.0
        version: 1.43.0
      - name: kogito-operator.v1.42.0
        version: 1.42.0
      - name: kogito-operator.v1.41.0
        version: 1.41.0
      - name: kogito-operator.v1.40.0
        version: 1.40.0
      - name: kogito-operator.v1.39.0
        version: 1.39.0
      - name: kogito-operator.v1.38.0
        version: 1.38.0
      - name: kogito-operator.v1.37.0
        version: 1.37.0
      - name: kogito-operator.v1.36.0
        version: 1.36.0
      - name: kogito-operator.v1.35.0
        version: 1.35.0
      - name: kogito-operator.v1.34.0
        version: 1.34.0
      - name: kogito-operator.v1.33.0
        version: 1.33.0
      - name: kogito-operator.v1.32.0
        version: 1.32.0
      - name: kogito-operator.v1.31.0
        version: 1.31.0
      - name: kogito-operator.v1.30.0
        version: 1.30.0
      - name: kogito-operator.v1.29.0
        version: 1.29.0
      - name: kogito-operator.v1.28.0
        version: 1.28.0
      - name: kogito-operator.v1.27.0
        version: 1.27.0
      - name: kogito-operator.v1.26.0
        version: 1.26.0
      - name: kogito-operator.v1.25.0
        version: 1.25.0
      - name: kogito-operator.v1.24.0
        version: 1.24.0
      - name: kogito-operator.v1.23.0
        version: 1.23.0
      - name: kogito-operator.v1.22.1
        version: 1.22.1
      - name: kogito-operator.v1.22.0
        version: 1.22.0
      - name: kogito-operator.v1.21.0
        version: 1.21.0
      - name: kogito-operator.v1.20.0
        version: 1.20.0
      - name: kogito-operator.v1.19.0
        version: 1.19.0
      - name: kogito-operator.v1.18.0
        version: 1.18.0
      - name: kogito-operator.v1.17.0
        version: 1.17.0
      - name: kogito-operator.v1.16.1
        version: 1.16.1
      - name: kogito-operator.v1.16.0
        version: 1.16.0
      - name: kogito-operator.v1.15.0
        version: 1.15.0
      - name: kogito-operator.v1.14.0
        version: 1.14.0
      - name: kogito-operator.v1.13.0
        version: 1.13.0
      - name: kogito-operator.v1.12.0
        version: 1.12.0
      - name: kogito-operator.v1.11.1
        version: 1.11.1
      - name: kogito-operator.v1.11.0
        version: 1.11.0
      - name: kogito-operator.v1.10.0
        version: 1.10.0
      - name: kogito-operator.v1.9.1
        version: 1.9.1
      - name: kogito-operator.v1.9.0
        version: 1.9.0
      - name: kogito-operator.v1.8.0
        version: 1.8.0
      - name: kogito-operator.v1.7.0
        version: 1.7.0
      - name: kogito-operator.v1.6.0
        version: 1.6.0
      - name: kogito-operator.v1.5.0
        version: 1.5.0
      - name: kogito-operator.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: 1.x
    packageName: kogito-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: model-validation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: model-validation-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ml.sigstore.dev/v1alpha1",
                "kind": "ModelValidation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "model-validation-operator"
                  },
                  "name": "modelvalidation-sample",
                  "namespace": "model-validation-operator-system"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          containerImage: placeholder
          createdAt: "2025-11-17T11:44:47Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.1-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/model-validation-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ModelValidation is the Schema for the modelvalidations API.
            displayName: Model Validation
            kind: ModelValidation
            name: modelvalidations.ml.sigstore.dev
            version: v1alpha1
        description: Model Validation Operator
        displayName: Model Validation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - model signing
        - signing
        - ai
        links:
        - name: Model Validation Operator
          url: https://github.com/sigstore/model-validation-operator
        maintainers:
        - email: nolear@redhat.com
          name: Nina Bongartz
        - email: ryordan@redhat.com
          name: Rachel Yordan
        - email: ifont@redhat.com
          name: Ivan Font
        - email: asiek@redhat.com
          name: Aleksy Siek
        - email: kconner@redhat.com
          name: Kevin Conner
        maturity: tech-preview
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhtas/model-validation-operator-bundle@sha256:a48214bb858cb4f05c580e0d1e0bd2f246fc8185420d0f6a2a3e39eecabc947f
        - registry.redhat.io/rhtas/model-validation-rhel9-operator@sha256:281c79ee9b27e95a723f478889ea1d7297b152a47e32c58a599b5ea6f046d787
        version: 0.0.2
      entries:
      - name: model-validation-operator.v0.0.2
        version: 0.0.2
      - name: model-validation-operator.v0.0.1
        version: 0.0.1
      name: tech-preview
    defaultChannel: tech-preview
    packageName: model-validation-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: JWS team
      provider-url: ""
    name: jws-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jws-operator.v2.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "web.servers.org/v1alpha1",
                "kind": "WebServer",
                "metadata": {
                  "name": "webserver-example"
                },
                "spec": {
                  "applicationName": "webapp",
                  "replicas": 1,
                  "useInsightsClient": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/jboss-webserver-5/jws5-rhel8-operator@sha256:ba8fb47eba0a1c2aca35ff051f576c7ef3204052965794db7ee234358d029263
          createdAt: "2025-11-19T22:24:40.914776Z"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat JBoss Web Server",
            "Red Hat Runtimes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/web-servers/jws-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Web Server is the schema for the webservers API
            displayName: Web Server
            kind: WebServer
            name: webservers.web.servers.org
            version: v1alpha1
        description: WebServer operator can manage JBoss Web Server images.
        displayName: WebServer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - WebServer
        - JBoss
        links:
        - name: Jws Operator
          url: https://jws-operator.domain
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: JWS team
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        - registry.redhat.io/insights-runtimes-tech-preview/runtimes-inventory-rhel8-operator@sha256:58e01d11c3d30abc5b0ee3795511bd04e39aea21e2853b4f4cc6d1c8a2bd7bb0
        - registry.redhat.io/jboss-webserver-5/jws5-operator-bundle@sha256:bbd477f0b3ea615bb0342a11656be719c61e1f9bccb3235e071d8590944334dd
        - registry.redhat.io/jboss-webserver-5/jws5-rhel8-operator@sha256:ba8fb47eba0a1c2aca35ff051f576c7ef3204052965794db7ee234358d029263
        version: 2.2.1
      entries:
      - name: jws-operator.v2.2.1
        version: 2.2.1
      - name: jws-operator.v2.2.0
        version: 2.2.0
      - name: jws-operator.v2.1.3
        version: 2.1.3
      - name: jws-operator.v2.1.2
        version: 2.1.2
      - name: jws-operator.v2.1.1
        version: 2.1.1
      - name: jws-operator.v2.1.0
        version: 2.1.0
      - name: jws-operator.v2.0.16
        version: 2.0.16
      - name: jws-operator.v2.0.15
        version: 2.0.15
      - name: jws-operator.v2.0.14
        version: 2.0.14
      - name: jws-operator.v2.0.13
        version: 2.0.13
      - name: jws-operator.v2.0.12
        version: 2.0.12
      - name: jws-operator.v2.0.11
        version: 2.0.11
      - name: jws-operator.v2.0.10
        version: 2.0.10
      - name: jws-operator.v2.0.9
        version: 2.0.9
      - name: jws-operator.v2.0.8
        version: 2.0.8
      - name: jws-operator.v2.0.7
        version: 2.0.7
      - name: jws-operator.v2.0.6
        version: 2.0.6
      - name: jws-operator.v2.0.5
        version: 2.0.5
      - name: jws-operator.v2.0.4
        version: 2.0.4
      - name: jws-operator.v2.0.3
        version: 2.0.3
      - name: jws-operator.v2.0.2
        version: 2.0.2
      - name: jws-operator.v2.0.1
        version: 2.0.1
      name: alpha
    defaultChannel: alpha
    packageName: jws-operator
    provider:
      name: JWS team
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Storage
      provider-url: https://github.com/red-hat-storage
    name: odf-external-snapshotter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-external-snapshotter-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:45:38Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: VolumeGroupSnapshotClass
            name: volumegroupsnapshotclasses.groupsnapshot.storage.openshift.io
            version: v1beta1
          - kind: VolumeGroupSnapshotContent
            name: volumegroupsnapshotcontents.groupsnapshot.storage.openshift.io
            version: v1beta1
          - kind: VolumeGroupSnapshot
            name: volumegroupsnapshots.groupsnapshot.storage.openshift.io
            version: v1beta1
        description: Snapshot Controller provides the snapshot controller for managing
          volume group snapshots
        displayName: Snapshot Controller
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - odf-external-snapshotter-operator
        links:
        - name: Snapshot Controller
          url: https://github.com/red-hat-storage/external-snapshotter
        maturity: GA
        provider:
          name: Red Hat Storage
          url: https://github.com/red-hat-storage
        relatedImages:
        - registry.redhat.io/odf4/odf-external-snapshotter-operator-bundle@sha256:6d325fd5eedfac439e75c6d2cfbcf419b3aa1ba8930cc11f49d654b5b06efb4d
        - registry.redhat.io/odf4/odf-external-snapshotter-rhel9-operator@sha256:0303afb90081cbc5a586a0fa9e30b897096b176d435053d9bf45a3c0f37671a9
        version: 4.20.4-rhodf
      entries:
      - name: odf-external-snapshotter-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-external-snapshotter-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-external-snapshotter-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-external-snapshotter-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-external-snapshotter-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-external-snapshotter-operator
    provider:
      name: Red Hat Storage
      url: https://github.com/red-hat-storage
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      operatorframework.io/os.zos: supported
      provider: Red Hat
      provider-url: ""
    name: red-hat-hawtio-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: red-hat-hawtio-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace",
                  "version": 1.12
                }
              },
              {
                "apiVersion": "hawt.io/v2",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24,
                    "internalSSL": true
                  },
                  "healthChecks": {
                    "gatewayLivenessPeriod": 120,
                    "gatewayReadinessPeriod": 30,
                    "onlineLivenessPeriod": 5,
                    "onlineReadinessPeriod": 10
                  },
                  "logging": {
                    "gatewayLogLevel": "info",
                    "maskIPAddresses": "false",
                    "onlineLogLevel": "info"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
          createdAt: "2025-11-24T18:05:50Z"
          description: HawtIO eases the discovery and management of Java applications
            deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HawtIO eases the discovery and management of hawtio-enabled
              applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v2
        description: |
          Red Hat build of HawtIO
          ==============

          HawtIO eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between HawtIO and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#agents-jvm).
        displayName: HawtIO Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: HawtIO Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The HawtIO team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:73867beab7034186a5f41c4799584a3c3f70e1825d7a034a0b2e9c262846e551
        - registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
        version: 1.3.0
      entries:
      - name: red-hat-hawtio-operator.v1.3.0
        version: 1.3.0
      - name: red-hat-hawtio-operator.v1.2.1
        version: 1.2.1
      - name: red-hat-hawtio-operator.v1.2.0
        version: 1.2.0
      - name: red-hat-hawtio-operator.v1.2.0-0.1754874242.p
        version: 1.2.0+0.1754874242.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754338551.p
        version: 1.2.0+0.1754338551.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754317392.p
        version: 1.2.0+0.1754317392.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1753863723.p
        version: 1.2.0+0.1753863723.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752679472.p
        version: 1.2.0+0.1752679472.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752452299.p
        version: 1.2.0+0.1752452299.p
      - name: red-hat-hawtio-operator.v1.1.1
        version: 1.1.1
      - name: red-hat-hawtio-operator.v1.1.0
        version: 1.1.0
      - name: red-hat-hawtio-operator.v1.1.0-0.1742200932.p
        version: 1.1.0+0.1742200932.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1740358952.p
        version: 1.1.0+0.1740358952.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739994212.p
        version: 1.1.0+0.1739994212.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739992853.p
        version: 1.1.0+0.1739992853.p
      - name: red-hat-hawtio-operator.v1.0.3
        version: 1.0.3
      - name: red-hat-hawtio-operator.v1.0.2
        version: 1.0.2
      - name: red-hat-hawtio-operator.v1.0.1
        version: 1.0.1
      - name: red-hat-hawtio-operator.v1.0.0
        version: 1.0.0
      name: latest
    - currentCSV: red-hat-hawtio-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace",
                  "version": 1.12
                }
              },
              {
                "apiVersion": "hawt.io/v2",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24,
                    "internalSSL": true
                  },
                  "healthChecks": {
                    "gatewayLivenessPeriod": 120,
                    "gatewayReadinessPeriod": 30,
                    "onlineLivenessPeriod": 5,
                    "onlineReadinessPeriod": 10
                  },
                  "logging": {
                    "gatewayLogLevel": "info",
                    "maskIPAddresses": "false",
                    "onlineLogLevel": "info"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
          createdAt: "2025-11-24T18:05:50Z"
          description: HawtIO eases the discovery and management of Java applications
            deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HawtIO eases the discovery and management of hawtio-enabled
              applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v2
        description: |
          Red Hat build of HawtIO
          ==============

          HawtIO eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between HawtIO and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#agents-jvm).
        displayName: HawtIO Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: HawtIO Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The HawtIO team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:73867beab7034186a5f41c4799584a3c3f70e1825d7a034a0b2e9c262846e551
        - registry.redhat.io/rhbac-4/hawtio-rhel9-operator@sha256:fe2a31056a2dccef09d2088d2038aff9c38026a4a62fe31a15bf44deddc7165d
        version: 1.3.0
      entries:
      - name: red-hat-hawtio-operator.v1.3.0
        version: 1.3.0
      - name: red-hat-hawtio-operator.v1.2.1
        version: 1.2.1
      - name: red-hat-hawtio-operator.v1.2.0
        version: 1.2.0
      - name: red-hat-hawtio-operator.v1.2.0-0.1754874242.p
        version: 1.2.0+0.1754874242.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754338551.p
        version: 1.2.0+0.1754338551.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1754317392.p
        version: 1.2.0+0.1754317392.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1753863723.p
        version: 1.2.0+0.1753863723.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752679472.p
        version: 1.2.0+0.1752679472.p
      - name: red-hat-hawtio-operator.v1.2.0-0.1752452299.p
        version: 1.2.0+0.1752452299.p
      - name: red-hat-hawtio-operator.v1.1.1
        version: 1.1.1
      - name: red-hat-hawtio-operator.v1.1.0
        version: 1.1.0
      - name: red-hat-hawtio-operator.v1.1.0-0.1742200932.p
        version: 1.1.0+0.1742200932.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1740358952.p
        version: 1.1.0+0.1740358952.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739994212.p
        version: 1.1.0+0.1739994212.p
      - name: red-hat-hawtio-operator.v1.1.0-0.1739992853.p
        version: 1.1.0+0.1739992853.p
      - name: red-hat-hawtio-operator.v1.0.3
        version: 1.0.3
      - name: red-hat-hawtio-operator.v1.0.2
        version: 1.0.2
      - name: red-hat-hawtio-operator.v1.0.1
        version: 1.0.1
      - name: red-hat-hawtio-operator.v1.0.0
        version: 1.0.0
      name: stable-v1
    - currentCSV: red-hat-hawtio-operator.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace",
                  "version": 1.12
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/rhbac-4/hawtio-rhel8-operator@sha256:f04d81d24c757db7b678464382ad8c5182b1580e714123a9f4f5fc9fbd9b8c57
          createdAt: "2024-01-30T12:18:50Z"
          description: HawtIO eases the discovery and management of Java applications
            deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HawtIO eases the discovery and management of hawtio-enabled
              applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Red Hat build of HawtIO
          ==============

          HawtIO eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between HawtIO and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#agents-jvm).
        displayName: HawtIO Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: HawtIO Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The HawtIO team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbac-4/hawtio-operator-bundle@sha256:0ee0bd2449f183277af845e312257b4a1ced4de865831b15e1758a397d8d29eb
        - registry.redhat.io/rhbac-4/hawtio-rhel8-operator@sha256:f04d81d24c757db7b678464382ad8c5182b1580e714123a9f4f5fc9fbd9b8c57
        version: 1.0.3
      entries:
      - name: red-hat-hawtio-operator.v1.0.3
        version: 1.0.3
      - name: red-hat-hawtio-operator.v1.0.2
        version: 1.0.2
      - name: red-hat-hawtio-operator.v1.0.1
        version: 1.0.1
      - name: red-hat-hawtio-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    defaultChannel: stable-v1
    packageName: red-hat-hawtio-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CrowdStrike
      provider-url: https://crowdStrike.com
    name: falcon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: falcon-operator.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconContainer",
                "metadata": {
                  "name": "falcon-sidecar-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "sidecar"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  },
                  "registry": {
                    "type": "crowdstrike"
                  }
                }
              },
              {
                "apiVersion": "falcon.crowdstrike.com/v1alpha1",
                "kind": "FalconNodeSensor",
                "metadata": {
                  "name": "falcon-node-sensor"
                },
                "spec": {
                  "falcon": {
                    "tags": [
                      "daemonset"
                    ],
                    "trace": "none"
                  },
                  "falcon_api": {
                    "client_id": "PLEASE_FILL_IN",
                    "client_secret": "PLEASE_FILL_IN",
                    "cloud_region": "autodiscover"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Security,Monitoring
          containerImage: quay.io/crowdstrike/falcon-operator:0.8.1
          createdAt: "2024-06-06T10:00:00Z"
          description: '[DEPRECATED] Use the CrowdStrike Falcon Operator from the
            certified channel instead'
          operatorframework.io/suggested-namespace: falcon-operator
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/CrowdStrike/falcon-operator
          support: Community Only
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FalconContainer is the Schema for the falconcontainers API
            displayName: Falcon Container
            kind: FalconContainer
            name: falconcontainers.falcon.crowdstrike.com
            version: v1alpha1
          - description: FalconNodeSensor is the Schema for the falconnodesensors
              API
            displayName: Falcon Node Sensor
            kind: FalconNodeSensor
            name: falconnodesensors.falcon.crowdstrike.com
            version: v1alpha1
        description: |-
          ## Deprecated
          This CrowdStrike community operator is deprecated, use the CrowdStrike Falcon Operator from the certified channel instead.

          ## About the CrowdStrike Falcon Operator
          The CrowdStrike Falcon Operator deploys CrowdStrike Falcon Workload Protection to the cluster. The operator exposes 2 custom resources that allows you to deploy either the Falcon Container Sensor or Falcon Node Sensor.

          ## About Custom Resources

          | Custom Resource                                       | Description                                                      |
          | :--------                                             | :------------                                                    |
          | [FalconContainer](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/container/README.md) | Manages installation of Falcon Container Sensor on the cluster   |
          | [FalconNodeSensor](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/resources/node/README.md)     | Manages installation of Falcon Linux Sensor on the cluster nodes |

          ## Installation and Deployment

          For installation and deployment of the CrowdStrike Falcon Operator and its Custom Resources, please read the [Installation and Deployment Guide](./docs/install_guide.md) and choose the deployment method that is right for your target environment.

          ## Getting Help
          If you encounter any issues while using the Falcon Operator, you can create an issue on our [Github repo](https://github.com/CrowdStrike/falcon-operator) for bugs, enhancements, or other requests.

          ## Contributing
          You can contribute by:

          * Raising any issues you find using Falcon Operator
          * Fixing issues by opening [Pull Requests](https://github.com/CrowdStrike/falcon-operator/pulls)
          * Improving documentation
          * Talking about the CrowdStrike Falcon Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/CrowdStrike/falcon-operator/issues).

          ## Additional Resources
           - CrowdStrike Container Security: [Product Page](https://www.crowdstrike.com/products/cloud-security/falcon-cloud-workload-protection/container-security/)
           - So You Think Your Containers Are Secure? Four Steps to Ensure a Secure Container Deployment: [Blog Post](https://www.crowdstrike.com/blog/four-steps-to-ensure-a-secure-containter-deployment/)
           - Container Security With CrowdStrike: [Blog Post](https://www.crowdstrike.com/blog/tech-center/container-security/)
           - To learn more about Falcon Container Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/support/documentation/146/falcon-container-sensor-for-linux), [Release Notes](https://falcon.crowdstrike.com/support/news/release-notes-falcon-container-sensor-for-linux)
           - To learn more about Falcon Sensor for Linux: [Deployment Guide](https://falcon.crowdstrike.com/documentation/20/falcon-sensor-for-linux#kubernetes-support)
           - [Developer Documentation](https://github.com/CrowdStrike/falcon-operator/tree/main/docs/developer_guide.md)
        displayName: '[DEPRECATED] CrowdStrike Operator'
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - runtime-protection
        links:
        - name: Falcon Operator
          url: https://github.com/CrowdStrike/falcon-operator
        maintainers:
        - email: integrations@crowdstrike.com
          name: CrowdStrike Solutions Architecture
        maturity: alpha
        minKubeVersion: 1.17.0
        provider:
          name: CrowdStrike
          url: https://crowdStrike.com
        relatedImages:
        - quay.io/crowdstrike/falcon-operator:0.8.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.12.0
        - quay.io/community-operator-pipeline-prod/falcon-operator@sha256:3916adf5083c83838564b1ed039decbadb2efa4ec288699ef0137a66983a3cc4
        version: 0.8.2
      entries:
      - name: falcon-operator.v0.8.2
        version: 0.8.2
      - name: falcon-operator.v0.8.1
        version: 0.8.1
      name: alpha
    defaultChannel: alpha
    packageName: falcon-operator
    provider:
      name: CrowdStrike
      url: https://crowdStrike.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CNCF
      provider-url: ""
    name: jaeger
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jaeger-operator.v1.65.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "jaegertracing.io/v1",
                "kind": "Jaeger",
                "metadata": {
                  "name": "my-jaeger"
                },
                "spec": {
                  "strategy": "allInOne"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing
          certified: "false"
          containerImage: quay.io/jaegertracing/jaeger-operator:1.65.0
          createdAt: "2025-01-22T20:40:19Z"
          description: Provides tracing, monitoring and troubleshooting for microservices-based
            distributed systems
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/jaegertracing/jaeger-operator
          support: Jaeger Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Jaeger is the Schema for the jaegers API
            displayName: Jaeger
            kind: Jaeger
            name: jaegers.jaegertracing.io
            version: v1
        description: |-
          Jaeger, inspired by [Dapper](https://research.google.com/pubs/pub36356.html) and [OpenZipkin](http://zipkin.io/), is a distributed tracing system released as open source by Uber Technologies. It is used for monitoring and troubleshooting microservices-based distributed systems.
          ### Core capabilities
          Jaeger is used for monitoring and troubleshooting microservices-based distributed systems, including:
          * Distributed context propagation
          * Distributed transaction monitoring
          * Root cause analysis
          * Service dependency analysis
          * Performance / latency optimization
          * OpenTracing compatible data model
          * Multiple storage backends: Badger, Cassandra, Elasticsearch, Memory.
          ### Operator features
          * **Multiple modes** - Supports `allInOne`, `production` and `streaming` [modes of deployment](https://www.jaegertracing.io/docs/latest/operator/#deployment-strategies).
          * **Configuration** - The Operator manages [configuration information](https://www.jaegertracing.io/docs/latest/operator/#configuring-the-custom-resource) when installing Jaeger instances.
          * **Storage** - [Configure storage](https://www.jaegertracing.io/docs/latest/operator/#storage-options) used by Jaeger. By default, `memory` is used. Other options include `badger`, `cassandra` or `elasticsearch`. On OpenShift, the operator can delegate creation of an Elasticsearch cluster to the Elasticsearch Operator if deployed.
          * **Agent** - can be deployed as [sidecar](https://www.jaegertracing.io/docs/latest/operator/#auto-injecting-jaeger-agent-sidecars) (default) and/or [daemonset](https://www.jaegertracing.io/docs/latest/operator/#installing-the-agent-as-daemonset).
          * **UI** - Optionally setup ingress (Kubernetes) or secure route (OpenShift) to provide [access to the Jaeger UI](https://www.jaegertracing.io/docs/latest/operator/#accessing-the-jaeger-console-ui).
          ### Before you start
          1. Ensure that the appropriate storage solution, that will be used by the Jaeger instance, is available and configured.
          2. If intending to deploy an Elasticsearch cluster via the Jaeger custom resource, then the Elasticsearch Operator must first be installed.
          ### Troubleshooting
          * https://www.jaegertracing.io/docs/latest/troubleshooting/
        displayName: Community Jaeger Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tracing
        - monitoring
        - troubleshooting
        links:
        - name: Jaeger Operator Source Code
          url: https://github.com/jaegertracing/jaeger-operator
        maintainers:
        - email: jaeger-tracing@googlegroups.com
          name: Jaeger Google Group
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: CNCF
        relatedImages:
        - quay.io/community-operator-pipeline-prod/jaeger@sha256:907dfe1d01f73c8a385da3661ddbe03db31e0b9ad6f5ab2336460402d0d915a0
        - quay.io/jaegertracing/jaeger-operator:1.65.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 1.65.0
      entries:
      - name: jaeger-operator.v1.65.0
        version: 1.65.0
      - name: jaeger-operator.v1.62.0
        version: 1.62.0
      - name: jaeger-operator.v1.61.0
        version: 1.61.0
      - name: jaeger-operator.v1.60.0
        version: 1.60.0
      - name: jaeger-operator.v1.59.0
        version: 1.59.0
      - name: jaeger-operator.v1.57.0
        version: 1.57.0
      - name: jaeger-operator.v1.56.0
        version: 1.56.0
      - name: jaeger-operator.v1.55.0
        version: 1.55.0
      - name: jaeger-operator.v1.53.0
        version: 1.53.0
      - name: jaeger-operator.v1.52.0
        version: 1.52.0
      - name: jaeger-operator.v1.51.0
        version: 1.51.0
      - name: jaeger-operator.v1.49.0
        version: 1.49.0
      - name: jaeger-operator.v1.48.1
        version: 1.48.1
      - name: jaeger-operator.v1.47.0
        version: 1.47.0
      - name: jaeger-operator.v1.46.0
        version: 1.46.0
      - name: jaeger-operator.v1.45.0
        version: 1.45.0
      - name: jaeger-operator.v1.44.0
        version: 1.44.0
      - name: jaeger-operator.v1.43.0
        version: 1.43.0
      - name: jaeger-operator.v1.42.0
        version: 1.42.0
      - name: jaeger-operator.v1.41.1
        version: 1.41.1
      - name: jaeger-operator.v1.41.0
        version: 1.41.0
      - name: jaeger-operator.v1.40.0
        version: 1.40.0
      - name: jaeger-operator.v1.39.0
        version: 1.39.0
      - name: jaeger-operator.v1.38.1
        version: 1.38.1
      - name: jaeger-operator.v1.38.0
        version: 1.38.0
      - name: jaeger-operator.v1.37.0
        version: 1.37.0
      - name: jaeger-operator.v1.36.0
        version: 1.36.0
      - name: jaeger-operator.v1.35.0
        version: 1.35.0
      - name: jaeger-operator.v1.34.1
        version: 1.34.1
      - name: jaeger-operator.v1.34.0
        version: 1.34.0
      - name: jaeger-operator.v1.33.0
        version: 1.33.0
      - name: jaeger-operator.v1.32.0
        version: 1.32.0
      - name: jaeger-operator.v1.31.0
        version: 1.31.0
      - name: jaeger-operator.v1.30.0
        version: 1.30.0
      - name: jaeger-operator.v1.29.1
        version: 1.29.1
      - name: jaeger-operator.v1.25.0
        version: 1.25.0
      - name: jaeger-operator.v1.24.0
        version: 1.24.0
      name: stable
    defaultChannel: stable
    packageName: jaeger
    provider:
      name: CNCF
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: StreamNative
      provider-url: https://streamnative.io
    name: function-mesh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: function-mesh.v0.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "Function",
                "metadata": {
                  "name": "java-function-sample",
                  "namespace": "default"
                },
                "spec": {
                  "autoAck": true,
                  "className": "org.apache.pulsar.functions.api.examples.ExclamationFunction",
                  "clusterName": "test-pulsar",
                  "forwardSourceMessageProperty": true,
                  "input": {
                    "topics": [
                      "persistent://public/default/java-function-input-topic"
                    ],
                    "typeClassName": "java.lang.String"
                  },
                  "java": {
                    "extraDependenciesDir": "random-dir/",
                    "jar": "pulsar-functions-api-examples.jar",
                    "jarLocation": "public/default/nlu-test-java-function"
                  },
                  "logTopic": "persistent://public/default/logging-function-logs",
                  "maxPendingAsyncRequests": 1000,
                  "maxReplicas": 5,
                  "output": {
                    "topic": "persistent://public/default/java-function-output-topic",
                    "typeClassName": "java.lang.String"
                  },
                  "pod": {
                    "annotations": {
                      "managed-function": "true"
                    },
                    "env": [
                      {
                        "name": "EXAMPLE_VARIABLE",
                        "value": "exampleValue"
                      }
                    ],
                    "imagePullSecrets": [
                      {
                        "name": "regcred"
                      }
                    ],
                    "initContainers": [
                      {
                        "command": [
                          "sh",
                          "-c",
                          "echo The app is running! \u0026\u0026 sleep 30"
                        ],
                        "image": "busybox:1.28",
                        "name": "init-function"
                      }
                    ],
                    "labels": {
                      "locaction": "mtv"
                    },
                    "sidecars": [
                      {
                        "command": [
                          "sh",
                          "-c",
                          "echo The app is running! \u0026\u0026 sleep 30000"
                        ],
                        "image": "busybox:1.28",
                        "name": "sidecar-function"
                      }
                    ],
                    "volumes": [
                      {
                        "emptyDir": {},
                        "name": "cache-volume"
                      }
                    ]
                  },
                  "pulsar": {
                    "authSecret": "test-auth",
                    "pulsarConfig": "test-pulsar",
                    "tlsSecret": "test-tls"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "0.2",
                      "memory": "1.1G"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "1G"
                    }
                  },
                  "secretsMap": {
                    "name": {
                      "key": "username",
                      "path": "test-secret"
                    },
                    "pwd": {
                      "key": "password",
                      "path": "test-secret"
                    }
                  },
                  "volumeMounts": [
                    {
                      "mountPath": "/cache",
                      "name": "cache-volume"
                    }
                  ]
                }
              },
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "FunctionMesh",
                "metadata": {
                  "name": "functionmesh-sample"
                },
                "spec": {
                  "functions": [
                    {
                      "autoAck": true,
                      "className": "org.apache.pulsar.functions.api.examples.ExclamationFunction",
                      "clusterName": "test-pulsar",
                      "forwardSourceMessageProperty": true,
                      "input": {
                        "topics": [
                          "persistent://public/default/functionmesh-input-topic"
                        ],
                        "typeClassName": "java.lang.String"
                      },
                      "java": {
                        "jar": "pulsar-functions-api-examples.jar",
                        "jarLocation": "public/default/nlu-test-functionmesh-ex1"
                      },
                      "logTopic": "persistent://public/default/logging-function-log",
                      "maxReplicas": 1,
                      "name": "ex1",
                      "output": {
                        "topic": "persistent://public/default/mid-topic",
                        "typeClassName": "java.lang.String"
                      },
                      "pulsar": {
                        "pulsarConfig": "mesh-test-pulsar"
                      },
                      "replicas": 1,
                      "resources": {
                        "limits": {
                          "cpu": "0.2",
                          "memory": "1.1G"
                        },
                        "requests": {
                          "cpu": "0.1",
                          "memory": "1G"
                        }
                      }
                    },
                    {
                      "autoAck": true,
                      "className": "org.apache.pulsar.functions.api.examples.ExclamationFunction",
                      "clusterName": "test-pulsar",
                      "forwardSourceMessageProperty": true,
                      "input": {
                        "topics": [
                          "persistent://public/default/mid-topic"
                        ],
                        "typeClassName": "java.lang.String"
                      },
                      "java": {
                        "jar": "pulsar-functions-api-examples.jar",
                        "jarLocation": "public/default/nlu-test-functionmesh-ex2"
                      },
                      "logTopic": "persistent://public/default/logging-function-logs",
                      "maxReplicas": 1,
                      "name": "ex2",
                      "output": {
                        "topic": "persistent://public/default/functionmesh-output-topic",
                        "typeClassName": "java.lang.String"
                      },
                      "pulsar": {
                        "pulsarConfig": "mesh-test-pulsar"
                      },
                      "replicas": 1,
                      "resources": {
                        "limits": {
                          "cpu": "0.2",
                          "memory": "1.1G"
                        },
                        "requests": {
                          "cpu": "0.1",
                          "memory": "1G"
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "Sink",
                "metadata": {
                  "name": "sink-sample"
                },
                "spec": {
                  "autoAck": true,
                  "className": "org.apache.pulsar.io.elasticsearch.ElasticSearchSink",
                  "clusterName": "test-pulsar",
                  "image": "streamnative/pulsar-io-elastic-search:2.10.0.0-rc10",
                  "input": {
                    "topics": [
                      "persistent://public/default/input"
                    ],
                    "typeClassName": "[B"
                  },
                  "java": {
                    "jar": "connectors/pulsar-io-elastic-search-2.10.0.0-rc10.nar",
                    "jarLocation": ""
                  },
                  "maxReplicas": 1,
                  "pulsar": {
                    "pulsarConfig": "test-sink"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "0.2",
                      "memory": "1.1G"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "1G"
                    }
                  },
                  "sinkConfig": {
                    "elasticSearchUrl": "http://quickstart-es-http.default.svc.cluster.local:9200",
                    "indexName": "my_index",
                    "password": "wJ757TmoXEd941kXm07Z2GW3",
                    "typeName": "doc",
                    "username": "elastic"
                  }
                }
              },
              {
                "apiVersion": "compute.functionmesh.io/v1alpha1",
                "kind": "Source",
                "metadata": {
                  "name": "source-sample"
                },
                "spec": {
                  "className": "org.apache.pulsar.io.debezium.mongodb.DebeziumMongoDbSource",
                  "clusterName": "test-pulsar",
                  "forwardSourceMessageProperty": true,
                  "image": "streamnative/pulsar-io-debezium-mongodb:2.10.0.0-rc10",
                  "java": {
                    "jar": "connectors/pulsar-io-debezium-mongodb-2.10.0.0-rc10.nar",
                    "jarLocation": ""
                  },
                  "maxReplicas": 1,
                  "output": {
                    "producerConf": {
                      "maxPendingMessages": 1000,
                      "maxPendingMessagesAcrossPartitions": 50000,
                      "useThreadLocalProducers": true
                    },
                    "topic": "persistent://public/default/destination",
                    "typeClassName": "org.apache.pulsar.common.schema.KeyValue"
                  },
                  "pulsar": {
                    "pulsarConfig": "test-source"
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "0.2",
                      "memory": "1.1G"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "1G"
                    }
                  },
                  "sourceConfig": {
                    "database.whitelist": "inventory",
                    "mongodb.hosts": "rs0/mongo-dbz-0.mongo.default.svc.cluster.local:27017,rs0/mongo-dbz-1.mongo.default.svc.cluster.local:27017,rs0/mongo-dbz-2.mongo.default.svc.cluster.local:27017",
                    "mongodb.name": "dbserver1",
                    "mongodb.password": "dbz",
                    "mongodb.task.id": "1",
                    "mongodb.user": "debezium",
                    "pulsar.service.url": "pulsar://test-pulsar-broker.default.svc.cluster.local:6650"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/streamnativeio/function-mesh@sha256:3e13e5cc3ac4d7387ee0adc02cb5183aad6cf2301f76ab230482609c4da1c0b7
          createdAt: "2022-10-27T07:49:28Z"
          description: The Function Mesh Operator manages the Pulsar Functions and
            Connectors deployed on a Kubernetes cluster.
          olm.properties: '[{"type":"olm.maxOpenShiftVersion","value":"4.8"}]'
          olm.skipRange: <0.7.0
          operatorhub.io/ui-metadata-max-k8s-version: "1.21"
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/streamnative/function-mesh
          support: StreamNative
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FunctionMesh is the Schema for the functionmeshes API
            displayName: Mesh
            kind: FunctionMesh
            name: functionmeshes.compute.functionmesh.io
            version: v1alpha1
          - description: Function is the Schema for the functions API
            displayName: Function
            kind: Function
            name: functions.compute.functionmesh.io
            version: v1alpha1
          - description: Sink is the Schema for the sinks API
            displayName: Sink
            kind: Sink
            name: sinks.compute.functionmesh.io
            version: v1alpha1
          - description: Source is the Schema for the sources API
            displayName: Source
            kind: Source
            name: sources.compute.functionmesh.io
            version: v1alpha1
        description: |
          [Function Mesh](https://functionmesh.io/) is a serverless framework purpose-built for stream processing applications. It brings powerful event-streaming capabilities to your applications by orchestrating multiple [Pulsar Functions](http://pulsar.apache.org/docs/en/next/functions-overview/) and [Pulsar IO connectors](http://pulsar.apache.org/docs/en/next/io-overview/) for complex stream processing jobs on Kubernetes.
          Prerequisites:
          - Install cert-manager operator first.
        displayName: Function Mesh Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - pulsar
        - function-mesh
        - serverless
        - pulsar-functions
        - pulsar-io-connectors
        - StreamNative
        links:
        - name: Function Mesh
          url: https://function-mesh.io
        maintainers:
        - email: function-mesh@streamnative.io
          name: Function Mesh
        maturity: alpha
        minKubeVersion: v1.17.0
        provider:
          name: StreamNative
          url: https://streamnative.io
        relatedImages:
        - registry.connect.redhat.com/streamnative/function-mesh-bundle@sha256:e4377187c20a70d768a253bc0794f3152aa6fcee22ddbf2fc88f45756e9681fe
        - docker.cloudsmith.io/streamnative/mirrors/gcr.io/kubebuilder/kube-rbac-proxy@sha256:67ecb332573384515406ebd71816781366b70adb0eb66345e5980e92603373e1
        - quay.io/streamnativeio/function-mesh@sha256:3e13e5cc3ac4d7387ee0adc02cb5183aad6cf2301f76ab230482609c4da1c0b7
        version: 0.7.0
      entries:
      - name: function-mesh.v0.7.0
        version: 0.7.0
      name: alpha
    defaultChannel: alpha
    packageName: function-mesh
    provider:
      name: StreamNative
      url: https://streamnative.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: aiu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aiu-operator.v2.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "aiu.ibm.com/v2",
                "kind": "AiuClusterPolicy",
                "metadata": {
                  "labels": {
                    "operator-version": "2.3.3"
                  },
                  "name": "aiuclusterpolicy"
                },
                "spec": {
                  "devicePlugin": {
                    "configName": "senlib_config.json",
                    "configPath": "/etc/aiu",
                    "image": "aiu-device-plugin",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.1"
                  },
                  "experimentalMode": [
                    "perDeviceAllocation",
                    "topologyAwareAllocation",
                    "externalDeviceReservation"
                  ],
                  "featureDiscovery": {
                    "image": "aiu-feature-discovery",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.0"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "aiu-exporter",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.0"
                  },
                  "podValidator": {
                    "enabled": true,
                    "image": "aiu-webhook-validator",
                    "imagePullPolicy": "Always",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.0"
                  },
                  "scheduler": {
                    "image": "aiu-kube-scheduler-ocp-4.16",
                    "repository": "icr.io/ibmaiu/release_2025_03",
                    "version": "2.3.2"
                  }
                }
              },
              {
                "apiVersion": "aiu.ibm.com/v2",
                "kind": "AiuNodeState",
                "metadata": {
                  "labels": {
                    "operator-version": "2.3.3"
                  },
                  "name": "aiunodestate"
                },
                "spec": {
                  "nodeName": ""
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: icr.io/ibmaiu/release_2025_03/aiu-operator@sha256:2ea8268e94d44581b3490cd4bbbd5525359073129bae42c7f007c05727afe1c3
          createdAt: "2025-04-03T01:19:38Z"
          description: operator for AIU devices
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: use with IBM AIU
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["aiunodestates.aiu.ibm.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AiuClusterPolicy is the Schema for the AIU API
            displayName: AIU Cluster Policy
            kind: AiuClusterPolicy
            name: aiuclusterpolicies.aiu.ibm.com
            version: v2
          - description: AiuNodeState is the Schema for the AiuNodeState API
            displayName: AIU Node State
            kind: AiuNodeState
            name: aiunodestates.aiu.ibm.com
            version: v2
        description: operator for AIU devices
        displayName: AIU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - app
        - operator
        links:
        - name: Aiu Operator
          url: https://aiu-operator.domain
        maintainers:
        - email: tmishina@jp.ibm.com
          name: Takuya Mishina
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: laurentiu.bradin@ibm.com
          name: Laurentiu Bradin
        - email: htchang@us.ibm.com
          name: Ted Chang
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: IBM
        relatedImages:
        - icr.io/ibmaiu/release_2025_03/aiu-operator@sha256:2ea8268e94d44581b3490cd4bbbd5525359073129bae42c7f007c05727afe1c3
        - registry.connect.redhat.com/aiu/aiu-operator-bundle@sha256:0cda4be8f74da7524a72c961c8762927c66e145d82e59af92073a54179bc9936
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fcb3b8ab93dfb5ef2b290e39ea5899dbb5e0c6d430370b8d281e59e74d94d749
        version: 2.3.3
      entries:
      - name: aiu-operator.v2.3.3
        version: 2.3.3
      name: stable-v2.3
    defaultChannel: stable-v2.3
    packageName: aiu-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: authorino-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: authorino-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/authorino-operator:v0.8.0
          createdAt: 2021-12-08T10-00-00Z
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta1
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: The operator to manage instances of Authorino
        displayName: Authorino Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: Authorino Operator
          url: https://github.com/Kuadrant/authorino-operator
        - name: Authorino
          url: https://github.com/Kuadrant/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/kuadrant/authorino-operator:v0.8.0
        - quay.io/openshift-community-operators/authorino-operator@sha256:8fe34f94f87c567401cc2bbbbcc3a3e719364b80a2b17851496f86c85af5c09a
        version: 0.8.0
      entries:
      - name: authorino-operator.v0.8.0
        version: 0.8.0
      - name: authorino-operator.v0.7.0
        version: 0.7.0
      - name: authorino-operator.v0.6.0
        version: 0.6.0
      - name: authorino-operator.v0.5.0
        version: 0.5.0
      - name: authorino-operator.v0.4.1
        version: 0.4.1
      - name: authorino-operator.v0.4.0
        version: 0.4.0
      - name: authorino-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: authorino-operator.v0.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "authorino.kuadrant.io/v1beta2",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "authorino.kuadrant.io/v1beta3",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/authorino-operator:v0.16.0
          createdAt: "2024-11-25T13:22:24Z"
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta2
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta3
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: The operator to manage instances of Authorino
        displayName: Authorino Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: Authorino Operator
          url: https://github.com/Kuadrant/authorino-operator
        - name: Authorino
          url: https://github.com/Kuadrant/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/authorino-operator@sha256:92ad93f27c34f1406fc05a248d04709b0109adf37f2f9424f48fc6a73d9d359e
        - quay.io/kuadrant/authorino-operator:v0.16.0
        - quay.io/kuadrant/authorino:v0.20.0
        version: 0.16.0
      entries:
      - name: authorino-operator.v0.16.0
        version: 0.16.0
      - name: authorino-operator.v0.15.1
        version: 0.15.1
      - name: authorino-operator.v0.15.0
        version: 0.15.0
      - name: authorino-operator.v0.14.0
        version: 0.14.0
      - name: authorino-operator.v0.13.1
        version: 0.13.1
      - name: authorino-operator.v0.13.0
        version: 0.13.0
      - name: authorino-operator.v0.12.0
        version: 0.12.0
      - name: authorino-operator.v0.11.1
        version: 0.11.1
      - name: authorino-operator.v0.10.0
        version: 0.10.0
      - name: authorino-operator.v0.9.0
        version: 0.9.0
      - name: authorino-operator.v0.8.0
        version: 0.8.0
      - name: authorino-operator.v0.7.0
        version: 0.7.0
      - name: authorino-operator.v0.6.0
        version: 0.6.0
      - name: authorino-operator.v0.5.0
        version: 0.5.0
      - name: authorino-operator.v0.4.1
        version: 0.4.1
      - name: authorino-operator.v0.4.0
        version: 0.4.0
      - name: authorino-operator.v0.0.1
        version: 0.0.1
      name: stable
    defaultChannel: stable
    packageName: authorino-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: NVIDIA
      provider-url: https://github.com/Mellanox/maintenance-operator/
    name: nvidia-maintenance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nvidia-maintenance-operator.v0.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "MaintenanceOperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "maintenanceoperatorconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "maintenanceoperatorconfig",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "maintenanceoperatorconfig-sample"
                },
                "spec": {
                  "logLevel": "info",
                  "maxNodeMaintenanceTimeSeconds": 1600,
                  "maxParallelOperations": 1,
                  "maxUnavailable": "30%"
                }
              },
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "nodemaintenance-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nodemaintenance",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "cordon": true,
                  "drainSpec": {
                    "deleteEmptyDir": true,
                    "force": true,
                    "podEvictionFilters": [
                      {
                        "byResourceNameRegex": "nvidia.com/gpu-*"
                      },
                      {
                        "byResourceNameRegex": "nvidia.com/rdma*"
                      }
                    ],
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  },
                  "nodeName": "worker-node-01",
                  "requestorID": "some-cluster-component.vendor.com",
                  "waitForPodCompletion": {
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
          createdAt: "2025-07-13T12:33:06Z"
          description: Node maintenance in K8s cluster in a coordinated manner
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-maintenance-operator
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: NVIDIA
          repository: https://github.com/Mellanox/maintenance-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MaintenanceOperatorConfig is the Schema for the maintenanceoperatorconfigs
              API
            displayName: Maintenance Operator Config
            kind: MaintenanceOperatorConfig
            name: maintenanceoperatorconfigs.maintenance.nvidia.com
            version: v1alpha1
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.maintenance.nvidia.com
            version: v1alpha1
        description: Coordinates And Performs Common Node Preparations For Maintenance
        displayName: NVIDIA Maintenance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - node
        - maintenance
        - drain
        links:
        - name: NVIDIA Maintenance Operator
          url: https://github.com/Mellanox/maintenance-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/maintenance-operator/
        relatedImages:
        - ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-maintenance-operator@sha256:c9867753cd85ead32702783c880d75118549025ec4793805381aa3bc1ba1d221
        version: 0.2.3
      entries:
      - name: nvidia-maintenance-operator.v0.2.3
        version: 0.2.3
      name: stable
    - currentCSV: nvidia-maintenance-operator.v0.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "MaintenanceOperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "maintenanceoperatorconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "maintenanceoperatorconfig",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "maintenanceoperatorconfig-sample"
                },
                "spec": {
                  "logLevel": "info",
                  "maxNodeMaintenanceTimeSeconds": 1600,
                  "maxParallelOperations": 1,
                  "maxUnavailable": "30%"
                }
              },
              {
                "apiVersion": "maintenance.nvidia.com/v1alpha1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "maintenance-operator",
                    "app.kubernetes.io/instance": "nodemaintenance-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nodemaintenance",
                    "app.kubernetes.io/part-of": "maintenance-operator"
                  },
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "cordon": true,
                  "drainSpec": {
                    "deleteEmptyDir": true,
                    "force": true,
                    "podEvictionFilters": [
                      {
                        "byResourceNameRegex": "nvidia.com/gpu-*"
                      },
                      {
                        "byResourceNameRegex": "nvidia.com/rdma*"
                      }
                    ],
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  },
                  "nodeName": "worker-node-01",
                  "requestorID": "some-cluster-component.vendor.com",
                  "waitForPodCompletion": {
                    "podSelector": "app=rdma-workload",
                    "timeoutSeconds": 0
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
          createdAt: "2025-07-13T12:33:06Z"
          description: Node maintenance in K8s cluster in a coordinated manner
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-maintenance-operator
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: NVIDIA
          repository: https://github.com/Mellanox/maintenance-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MaintenanceOperatorConfig is the Schema for the maintenanceoperatorconfigs
              API
            displayName: Maintenance Operator Config
            kind: MaintenanceOperatorConfig
            name: maintenanceoperatorconfigs.maintenance.nvidia.com
            version: v1alpha1
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.maintenance.nvidia.com
            version: v1alpha1
        description: Coordinates And Performs Common Node Preparations For Maintenance
        displayName: NVIDIA Maintenance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - node
        - maintenance
        - drain
        links:
        - name: NVIDIA Maintenance Operator
          url: https://github.com/Mellanox/maintenance-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/maintenance-operator/
        relatedImages:
        - ghcr.io/mellanox/maintenance-operator@sha256:cd24d18137d5a31dd8c791e8eb52324b8e880333fb03f1fcbc08fc5e94637746
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-maintenance-operator@sha256:c9867753cd85ead32702783c880d75118549025ec4793805381aa3bc1ba1d221
        version: 0.2.3
      entries:
      - name: nvidia-maintenance-operator.v0.2.3
        version: 0.2.3
      name: v0.2
    defaultChannel: v0.2
    packageName: nvidia-maintenance-operator
    provider:
      name: NVIDIA
      url: https://github.com/Mellanox/maintenance-operator/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-superset-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: superset-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/superset-operator@sha256:ac73f419137ceb0888c11b371841938b5a4810a4d3ec0a337c852658de9d6031
          description: Stackable Operator for Apache Superset
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/superset-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for SupersetClusterSpec via `CustomResource`
            displayName: supersetclusters.superset.stackable.tech
            kind: SupersetCluster
            name: supersetclusters.superset.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for DruidConnectionSpec via `CustomResource`
            displayName: druidconnections.superset.stackable.tech
            kind: DruidConnection
            name: druidconnections.superset.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Superset
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - superset
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/superset-operator@sha256:ac73f419137ceb0888c11b371841938b5a4810a4d3ec0a337c852658de9d6031
        - registry.connect.redhat.com/stackable/stackable-apache-superset-operator@sha256:55e2b7a946db2dd9b2111784d5d4d664b2d622611a2076ad70363e110d70fde7
        version: 25.11.0
      entries:
      - name: superset-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-superset-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM Quantum
      provider-url: ""
    name: openshift-qiskit-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-qiskit-operator.v0.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "qiskit.ibm.com/v1alpha1",
                "kind": "QiskitPlayground",
                "metadata": {
                  "name": "qiskitplayground-sample"
                },
                "spec": {
                  "image": "qiskit/jupyter:0.1",
                  "imagePullPolicy": "Always",
                  "resources": {
                    "requests": {
                      "memory": "2G",
                      "cpu": "1"
                    },
                    "limits": {
                      "memory": "3G",
                      "cpu": "1.5"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          certified: "false"
          containerImage: docker.io/qiskit/operator:0.1
          createdAt: 2021-004-23 22:25:53
          description: |-
            Launches a developement environment Jupyter notebok development environment for
            developing quantum applications using Qiskit.
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/kubernetes-qiskit-operator
          support: https://github.com/qiskit-community/openshift-quantum-operators/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QiskitPlayground is the Schema for the qiskitplaygrounds
              API
            displayName: Qiskit Playground
            kind: QiskitPlayground
            name: qiskitplaygrounds.qiskit.ibm.com
            version: v1alpha1
        description: |-
          ### Introduction
          Launches a developement Jupiter lab environment with Qiskit.

          QiskitPlayground is a Jupyter notebook with the pre installed qiskit libraries for implementing quantum application development.
          It comes with pre installed python packages for visualising results. QiskitPlayground can run quantum
          applications on simulator or on real quantum machines using IBM Q account.

          ### Documentation
          For detailed installation guide [follow](https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/kubernetes-qiskit-operator)

          ### Contributing
          You can contribute by
            * Raising any [issues](https://github.com/qiskit-community/openshift-quantum-operators/issues) you find using ibm-quantum-operator community operator
            * Fixing issues by opening [Pull Requests](https://github.com/qiskit-community/openshift-quantum-operators/pulls)
            * Talking about openshift-qiskit-operator

          ### License
          kubernetes-qiskit-operator is licensed under the [Apache 2.0 license](https://github.com/qiskit-community/openshift-quantum-operators/blob/master/LICENSE)

          #### Note
          Any api could be changed any time without any notice. That said, your feedback is very important and appreciated to make this project more stable and useful.
        displayName: QiskitPlayground
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Qiskit
        - Open Source
        - Quantum
        links:
        - name: GitHub
          url: https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/kubernetes-qiskit-operator
        maintainers:
        - email: blublinsky@ibm.com
          name: boris
        maturity: alpha
        provider:
          name: IBM Quantum
        relatedImages:
        - docker.io/qiskit/operator:0.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/openshift-qiskit-operator@sha256:633ce4190b02034d70b52d7e624fc9d417ef997607f9710a36e73bbc0963fe4d
        version: 0.2.1
      entries:
      - name: openshift-qiskit-operator.v0.2.1
        version: 0.2.1
      - name: openshift-qiskit-operator.v0.2.0
        version: 0.2.0
      name: alpha
    defaultChannel: alpha
    packageName: openshift-qiskit-operator
    provider:
      name: IBM Quantum
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MayaData
      provider-url: ""
    name: openebs
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openebsoperator.v3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "openebs.io/v1alpha1",
                "kind": "OpenEBSInstallTemplate",
                "metadata": {
                  "name": "oebs",
                  "namespace": "openebs"
                },
                "spec": {
                  "rbac": {
                    "create": true,
                    "pspEnabled": false,
                    "kyvernoEnabled": false
                  },
                  "serviceAccount": {
                    "create": true,
                    "name": "openebs-maya-operator"
                  },
                  "imagePullSecrets": [],
                  "release": {
                    "version": "3.0.0"
                  },
                  "legacy": {
                    "enabled": false
                  },
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": ""
                  },
                  "apiserver": {
                    "enabled": true,
                    "image": "openebs/m-apiserver",
                    "imageTag": "2.12.2",
                    "replicas": 1,
                    "ports": {
                      "externalPort": 5656,
                      "internalPort": 5656
                    },
                    "sparse": {
                      "enabled": "false"
                    },
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "defaultStorageConfig": {
                    "enabled": "true"
                  },
                  "varDirectoryPath": {
                    "baseDir": "/var/openebs"
                  },
                  "provisioner": {
                    "enabled": true,
                    "image": "openebs/openebs-k8s-provisioner",
                    "imageTag": "2.12.2",
                    "replicas": 1,
                    "enableLeaderElection": true,
                    "patchJivaNodeAffinity": "enabled",
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "localprovisioner": {
                    "enabled": true,
                    "image": "openebs/provisioner-localpv",
                    "imageTag": "3.0.0",
                    "replicas": 1,
                    "enableLeaderElection": true,
                    "enableDeviceClass": true,
                    "enableHostpathClass": true,
                    "basePath": "/var/openebs/local",
                    "waitForBDBindTimeoutRetryCount": "12",
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "snapshotOperator": {
                    "enabled": true,
                    "controller": {
                      "image": "openebs/snapshot-controller",
                      "imageTag": "2.12.2",
                      "resources": {}
                    },
                    "provisioner": {
                      "image": "openebs/snapshot-provisioner",
                      "imageTag": "2.12.2",
                      "resources": {}
                    },
                    "replicas": 1,
                    "enableLeaderElection": true,
                    "upgradeStrategy": "Recreate",
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    }
                  },
                  "ndm": {
                    "enabled": true,
                    "image": "openebs/node-disk-manager",
                    "imageTag": "1.7.0",
                    "sparse": {
                      "path": "/var/openebs/sparse",
                      "size": "10737418240",
                      "count": "0"
                    },
                    "filters": {
                      "enableOsDiskExcludeFilter": true,
                      "osDiskExcludePaths": "/,/etc/hosts,/boot",
                      "enableVendorFilter": true,
                      "excludeVendors": "CLOUDBYT,OpenEBS",
                      "enablePathFilter": true,
                      "includePaths": "",
                      "excludePaths": "/dev/loop,/dev/fd0,/dev/sr0,/dev/ram,/dev/dm-,/dev/md,/dev/rbd,/dev/zd"
                    },
                    "probes": {
                      "enableSeachest": false
                    },
                    "nodeSelector": {},
                    "tolerations": [],
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "resources": {}
                  },
                  "ndmOperator": {
                    "enabled": true,
                    "image": "openebs/node-disk-operator",
                    "imageTag": "1.7.0",
                    "replicas": 1,
                    "upgradeStrategy": "Recreate",
                    "nodeSelector": {},
                    "tolerations": [],
                    "healthCheck": {
                      "initialDelaySeconds": 15,
                      "periodSeconds": 20
                    },
                    "readinessCheck": {
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10
                    },
                    "resources": {}
                  },
                  "ndmExporter": {
                    "enabled": false,
                    "image": {
                      "registry": null,
                      "repository": "openebs/node-disk-exporter",
                      "pullPolicy": "IfNotPresent",
                      "tag": "1.7.0"
                    },
                    "nodeExporter": {
                      "name": "ndm-node-exporter",
                      "podLabels": {
                        "name": "openebs-ndm-node-exporter"
                      },
                      "metricsPort": 9101
                    },
                    "clusterExporter": {
                      "name": "ndm-cluster-exporter",
                      "podLabels": {
                        "name": "openebs-ndm-cluster-exporter"
                      },
                      "metricsPort": 9100
                    }
                  },
                  "webhook": {
                    "enabled": true,
                    "image": "openebs/admission-server",
                    "imageTag": "2.12.2",
                    "failurePolicy": "Fail",
                    "replicas": 1,
                    "healthCheck": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "hostNetwork": false,
                    "resources": {}
                  },
                  "helper": {
                    "image": "openebs/linux-utils",
                    "helperImageTag": "3.0.0"
                  },
                  "featureGates": {
                    "enabled": true,
                    "GPTBasedUUID": {
                      "enabled": true,
                      "featureGateFlag": "GPTBasedUUID"
                    },
                    "APIService": {
                      "enabled": false,
                      "featureGateFlag": "APIService",
                      "address": "0.0.0.0:9115"
                    },
                    "UseOSDisk": {
                      "enabled": false,
                      "featureGateFlag": "UseOSDisk"
                    },
                    "ChangeDetection": {
                      "enabled": false,
                      "featureGateFlag": "ChangeDetection"
                    }
                  },
                  "crd": {
                    "enableInstall": true
                  },
                  "policies": {
                    "monitoring": {
                      "enabled": true,
                      "image": "openebs/m-exporter",
                      "imageTag": "2.12.2"
                    }
                  },
                  "analytics": {
                    "enabled": true,
                    "pingInterval": "24h"
                  },
                  "jiva": {
                    "image": "openebs/jiva",
                    "imageTag": "2.12.2",
                    "replicas": 3,
                    "defaultStoragePath": "/var/openebs",
                    "enabled": false,
                    "openebsLocalpv": {
                      "enabled": false
                    },
                    "localpv-provisioner": {
                      "openebsNDM": {
                        "enabled": false
                      }
                    }
                  },
                  "cstor": {
                    "pool": {
                      "image": "openebs/cstor-pool",
                      "imageTag": "2.12.2"
                    },
                    "poolMgmt": {
                      "image": "openebs/cstor-pool-mgmt",
                      "imageTag": "2.12.2"
                    },
                    "target": {
                      "image": "openebs/cstor-istgt",
                      "imageTag": "2.12.2"
                    },
                    "volumeMgmt": {
                      "image": "openebs/cstor-volume-mgmt",
                      "imageTag": "2.12.2"
                    },
                    "enabled": false,
                    "openebsNDM": {
                      "enabled": false
                    }
                  },
                  "openebs-ndm": {
                    "enabled": false
                  },
                  "localpv-provisioner": {
                    "enabled": false,
                    "openebsNDM": {
                      "enabled": false
                    }
                  },
                  "zfs-localpv": {
                    "enabled": false
                  },
                  "lvm-localpv": {
                    "enabled": false
                  },
                  "nfs-provisioner": {
                    "enabled": false
                  },
                  "cleanup": {
                    "image": {
                      "registry": "",
                      "repository": "bitnami/kubectl",
                      "tag": "",
                      "imagePullSecrets": []
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: index.docker.io/openebs/helm-operator:v0.0.9
          createdAt: "2021-11-02T02:56:58Z"
          description: Creates and maintains OpenEBS Control Plane deployments
          repository: https://github.com/openebs/helm-operator
          support: https://slack.openebs.io/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a OpenEBS Install Operator
            displayName: OpenEBS Install Template
            kind: OpenEBSInstallTemplate
            name: openebsinstalltemplates.openebs.io
            version: v1alpha1
        description: |
          **OpenEBS** is a leading container attached storage solution that enables the use of containers for mission-critical, persistent workloads and for other stateful workloads such as logging or Prometheus for example.
          OpenEBS itself is deployed as just another container on your host and enables storage services that can be designated on a per pod, application, cluster or container level, including:
          * Data persistence across nodes
          * Synchronization of data across availability zones and cloud providers
          * A common layer whether you are running on the cloud, or your bare metal
          * Integration with Kubernetes, so developer and application intent flows into OpenEBS
          * Management of tiering to and from S3 and other targets.
          ## OpenEBS Operator
          OpenEBS primarily provides container attached block storage (iSCSI volumes) by leveraging/aggregating the storage on the nodes, with the storage controller itself running as a container. Different storage engines (Jiva & cStor) are supported, with tools available to dynamically provision Kubernetes Local PVs. The volumes are dynamically provisioned via PersistentVolumeClaims and are managed by a control plane component called "maya", which also runs as a deployment in the K8s cluster. In addition to maya, a typical OpenEBS installation comprises several other resources, which aid with various functionalities, ranging from snapshotting to disk management. All these components are described briefly below:
          * **Maya-API-Server** - A storage orchestrator which integrates into Kubernetes workflow to help provision
            and manage OpenEBS Jiva & cStor (storage engine) volumes

          * **Dynamic-OpenEBS-Provisioner** - A Kubernetes external storage provisioner that utilizes APIs exposed by maya-apiserver
            to perform provision & delete operations of Jiva & cStor volumes

          * **Dynamic-LocalPV-Provisioner** - A dynamic provisioner for Kubernetes Local PVs
          * **OpenEBS-Snapshot-Operator** - A Kubernetes snapshot controller that creates & restores OpenEBS volume snapshots
          * **Node-Disk-Manager** - A disk management controller which identifies available disks, maintains inventory, and
            dynamically attaches/detaches disks to backend storage pods

          The helm-based OpenEBS Operator eases the setup of all the above mentioned components, with a simple custom resource provided to define the install options, thereby enabling applications to start using the OpenEBS storageclasses in their PVCs. The OpenEBSInstallTemplate CR can be used to specify start-up parameters & also update/overwrite the definitions post install.
          ## Pre-Requisites
          Before installing OpenEBS control plane, perform the following steps to ensure successful deployment of the Node-Disk-Manager & the OpenEBS volume replicas, respectively.
          * Configure the OpenEBS service account on the openshift-operators namespace/project to use the privileged security context constraint.

            **Note**: The serviceaccount name is same as the one specified in the `spec.serviceAccount.name` field of the OpenEBSInstallTemplate CR.


            ```
            oc adm policy add-scc-to-user privileged system:serviceaccount:openshift-operators:openebs-maya-operator
            ```

          * Configure the default service account on the namespace/project in which the volume replicas are deployed to use privileged
            security context constraint.


            ```
            oc adm policy add-scc-to-user privileged system:serviceaccount:openshift-operators:default
            ```

          ## Getting Started
          * Try the quickstart [guide](https://github.com/openebs/helm-operator/blob/master/olm/README.md)
          * To learn how to contribute, please read the [contribution guide](https://github.com/openebs/helm-operator/blob/master/CONTRIBUTING.md)
          * OpenEBS welcomes your feedback and contributions in any form possible. [Join our Community](https://openebs.org/community)

          ## License
          OpenEBS is distributed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt)
        displayName: OpenEBS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OpenEBS
        - ContainerAttachedStorage
        links:
        - name: OpenEBS Website
          url: https://openebs.io
        - name: Operator Source Code
          url: https://github.com/openebs/helm-operator
        - name: Install Instructions
          url: https://github.com/openebs/helm-operator/blob/master/olm/README.md
        maintainers:
        - email: kiran.mova@openebs.io
          name: kmova
        maturity: alpha
        minKubeVersion: 1.12.0
        provider:
          name: MayaData
        relatedImages:
        - index.docker.io/openebs/helm-operator:v0.0.9
        - quay.io/openshift-community-operators/openebs@sha256:ff179bdd6e63b8e2cb1ce3b96d5e03d20c1a2410296fed6fb331bf5bc2e6b14d
        version: 3.0.0
      entries:
      - name: openebsoperator.v3.0.0
        version: 3.0.0
      - name: openebsoperator.v2.12.2
        version: 2.12.2
      name: alpha
    defaultChannel: alpha
    packageName: openebs
    provider:
      name: MayaData
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/multiarch-tuning-operator
    name: multiarch-tuning-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multiarch-tuning-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multiarch.openshift.io/v1beta1",
                "kind": "ClusterPodPlacementConfig",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logVerbosity": "Normal",
                  "namespaceSelector": {
                    "matchExpressions": [
                      {
                        "key": "multiarch.openshift.io/exclude-pod-placement",
                        "operator": "DoesNotExist"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Other
          console.openshift.io/disable-operand-delete: "false"
          containerImage: registry.redhat.io/multiarch-tuning/multiarch-tuning-rhel9-operator@sha256:e17ed141cb3ec0a6c6b87bab5164f5657607d12d7b205a5d451e08f795a34e08
          createdAt: "2025-11-12T04:49:47Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operator.openshift.io/uninstall-message: You must remove all Operands before
            uninstalling the operator.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-multiarch-tuning-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: '["enoexecevents.multiarch.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/multiarch-tuning-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPodPlacementConfig defines the configuration for the
              architecture aware pod placement operand. Users can only deploy a single
              object named "cluster". Creating the object enables the operand.
            displayName: Cluster Pod Placement Config
            kind: ClusterPodPlacementConfig
            name: clusterpodplacementconfigs.multiarch.openshift.io
            version: v1alpha1
          - description: ClusterPodPlacementConfig defines the configuration for the
              architecture aware pod placement operand. Users can only deploy a single
              object named "cluster". Creating the object enables the operand.
            displayName: Cluster Pod Placement Config
            kind: ClusterPodPlacementConfig
            name: clusterpodplacementconfigs.multiarch.openshift.io
            version: v1beta1
          - description: ENoExecEvent is the Schema for the enoexecevents API
            displayName: ENo Exec Event
            kind: ENoExecEvent
            name: enoexecevents.multiarch.openshift.io
            version: v1beta1
        description: |
          The Multiarch Tuning Operator optimizes workload management within multi-architecture clusters and in
          single-architecture clusters transitioning to multi-architecture environments.

          By default, the scheduler does not consider the architecture of a pod's container images
          when determining the placement of new pods onto nodes.

          The Multiarch Tuning Operator introduces the ClusterPodPlacementConfig custom resource to
          enable architecture-aware scheduling, ensuring that pods are assigned to nodes with
          a corresponding architecture for their container images.

          To enable this functionality, you must create a ClusterPodPlacementConfig resource.

          When the ClusterPodPlacementConfig object is created, the Multiarch Tuning Operator deploys the necessary operands
          to support architecture-aware workload scheduling.
        displayName: Multiarch Tuning Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multiarch-tuning-operator
        - pod-placement
        links:
        - name: Multiarch Tuning Operator Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/postinstallation_configuration/configuring-multi-architecture-compute-machines-on-an-openshift-cluster#multiarch-tuning-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
          url: https://github.com/openshift/multiarch-tuning-operator
        relatedImages:
        - registry.redhat.io/multiarch-tuning/multiarch-tuning-operator-bundle@sha256:fe40f5abedd62e8ac2a354ddc7e81e158615682c753ef942bca238dcc3beb4c7
        - registry.redhat.io/multiarch-tuning/multiarch-tuning-rhel9-operator@sha256:e17ed141cb3ec0a6c6b87bab5164f5657607d12d7b205a5d451e08f795a34e08
        version: 1.2.1
      entries:
      - name: multiarch-tuning-operator.v1.2.1
        version: 1.2.1
      - name: multiarch-tuning-operator.v1.2.0
        version: 1.2.0
      - name: multiarch-tuning-operator.v1.1.1
        version: 1.1.1
      - name: multiarch-tuning-operator.v1.1.0
        version: 1.1.0
      - name: multiarch-tuning-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: multiarch-tuning-operator
    provider:
      name: Red Hat
      url: https://github.com/openshift/multiarch-tuning-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Coroot Inc.
      provider-url: https://coroot.com
    name: coroot-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: coroot-operator.1.1.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "coroot.com/v1",
                "kind": "Coroot",
                "metadata": {
                  "name": "coroot",
                  "namespace": "coroot"
                },
                "spec": {
                  "enterpriseEdition": {
                    "licenseKey": "<COROOT_LICENSE_KEY> from https://coroot.com/account"
                  },
                  "ingress": {
                    "host": "coroot.example.com"
                  },
                  "storage": {
                    "size": "50Gi"
                  },
                  "clickhouse": {
                    "replicas": 2,
                    "shards": 2,
                    "storage": {
                      "size": "100Gi"
                    }
                  },
                  "prometheus": {
                    "storage": {
                      "size": "100Gi"
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring, Logging & Tracing
          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"
          repository: https://github.com/coroot/coroot-operator
          support: support@coroot.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Coroot is the Schema for the coroots API
            displayName: Coroot
            kind: Coroot
            name: coroots.coroot.com
            version: v1
        description: An open-source observability platform using eBPF to gather telemetry
          data, providing actionable insights for quick issue detection and resolution
          in Kubernetes and VM environments.
        displayName: Coroot
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - coroot
        - observability
        links:
        - name: Documentation
          url: https://docs.coroot.com
        maintainers:
        - email: support@coroot.com
          name: Coroot Inc.
        maturity: stable
        provider:
          name: Coroot Inc.
          url: https://coroot.com
        relatedImages:
        - ghcr.io/coroot/clickhouse@sha256:afed1054626598371975c948e5b9e4dcaac54e8059b7ad9f0b905ef1c99f2260
        - ghcr.io/coroot/coroot-cluster-agent@sha256:674bcb147354873eaa0ee9c1328ddf758d43adbbe532c9fbbe41ddae7addc114
        - ghcr.io/coroot/coroot-ee@sha256:09b9177ac07c2d26f4bd16050d07bb1e2132431055c32e047563083ee09194a8
        - ghcr.io/coroot/coroot-node-agent@sha256:3d552e98ca2ff8c6e125496857306172ec6f8e134ff13886c7f799abef29d1b8
        - ghcr.io/coroot/coroot-operator@sha256:13f1a4a07877c8fe8230a0bb7282ff47451007c9cf689a995a37d16697b9268a
        - ghcr.io/coroot/kube-state-metrics@sha256:080a85e77b1e530df56f84c8e0ee2523c1f740adea152015367b87edbfac078d
        - ghcr.io/coroot/prometheus@sha256:e7117bd86e1088fc02ac12758bc94dba1029de54a5bc1ee04954569d8b79625d
        - registry.connect.redhat.com/coroot/coroot-operator@sha256:44aa4ea98d468f1d1ced671bd2e2bd5bf79ce467f8c572c2248abdce2b7c5acf
        version: 1.1.5
      entries:
      - name: coroot-operator.1.1.5
        version: 1.1.5
      name: stable
    defaultChannel: stable
    packageName: coroot-operator
    provider:
      name: Coroot Inc.
      url: https://coroot.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Tigera
      provider-url: ""
    name: tigera-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tigera-operator.v1.40.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "calicoNetwork": {
                    "linuxDataplane": "BPF"
                  },
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Basic Install
          categories: Logging & Tracing, Monitoring, Networking, Security
          containerImage: quay.io/tigera/operator@sha256:35f43a5fdc867629b3b8604f7fc8666e2f919778411d86adc6761b18f355e5f3
          createdAt: "2025-11-18T15:35:44.698841063Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          features.operators.openshift.io/valid-subscription: No subscription required
          olm.skipRange: <1.40.2
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift.
        displayName: Tigera Operator v1.38
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tigera-operator
        - networking
        - security
        - monitoring
        links:
        - name: Tigera
          url: https://tigera.io/
        - name: Calico Introduction
          url: https://docs.tigera.io/calico/latest/about/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.tigera.io/calico/latest/getting-started/kubernetes/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
          url: https://tigera.io/
        relatedImages:
        - quay.io/tigera/operator@sha256:35f43a5fdc867629b3b8604f7fc8666e2f919778411d86adc6761b18f355e5f3
        - registry.connect.redhat.com/tigera/operator@sha256:464be134e6e0e4df46c996a08488a477b4456f7b85f6ea5cd2a82f000e8e8888
        version: 1.40.2
      entries:
      - name: tigera-operator.v1.40.2
        version: 1.40.2
      name: alpha
    - currentCSV: tigera-operator.v1.20.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:bd93e66be5cfbc123fe4e8c3f6e8ddf7654217bf26136f06dcf23f28b53063d2
          createdAt: "2021-10-05T20:02:14.564507Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.20.4
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:bd93e66be5cfbc123fe4e8c3f6e8ddf7654217bf26136f06dcf23f28b53063d2
        - registry.connect.redhat.com/tigera/operator@sha256:4d0d814fcfeb628aae8a05cb7a0a416ae85395197950085c907b6cdcf2fb4317
        version: 1.20.4
      entries:
      - name: tigera-operator.v1.20.4
        version: 1.20.4
      - name: tigera-operator.v1.20.3
        version: 1.20.3
      - name: tigera-operator.v1.20.2
        version: 1.20.2
      - name: tigera-operator.v1.20.1
        version: 1.20.1
      name: release-v1.20
    - currentCSV: tigera-operator.v1.23.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:f258275fe3d48c2ae16346a57f628523a6f2fb7b854b6d43b169056e158537f1
          createdAt: "2022-01-12T22:55:57.409244Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.23.4
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - registry.connect.redhat.com/tigera/operator@sha256:b1a8b56ff5e1bb5326e1bde4931303358410da9768f0ebf9c08e2c2d8661d742
        - quay.io/tigera/operator@sha256:f258275fe3d48c2ae16346a57f628523a6f2fb7b854b6d43b169056e158537f1
        version: 1.23.4
      entries:
      - name: tigera-operator.v1.23.4
        version: 1.23.4
      - name: tigera-operator.v1.23.3
        version: 1.23.3
      - name: tigera-operator.v1.23.2
        version: 1.23.2
      - name: tigera-operator.v1.23.1
        version: 1.23.1
      - name: tigera-operator.v1.23.0
        version: 1.23.0
      name: release-v1.23
    - currentCSV: tigera-operator.v1.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:e862708c700df55f99a9c9bb3c453e31f22aef1993d6079d80433eb8da831c94
          createdAt: "2022-02-17T05:39:13.720885Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.25.1
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:e862708c700df55f99a9c9bb3c453e31f22aef1993d6079d80433eb8da831c94
        - registry.connect.redhat.com/tigera/operator@sha256:cb7f3367ff064cd01dc636a43fd89d5f6c4e6a7004cb7c94b1758b2398e36d71
        version: 1.25.1
      entries:
      - name: tigera-operator.v1.25.1
        version: 1.25.1
      name: release-v1.25
    - currentCSV: tigera-operator.v1.28.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:9e8e47045fc67a2b00f9f2fd575fa526d7ddcac50af0b8b6d583b7518ccce120
          createdAt: "2023-05-17T16:13:52.148441156Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.28.13
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:9e8e47045fc67a2b00f9f2fd575fa526d7ddcac50af0b8b6d583b7518ccce120
        - registry.connect.redhat.com/tigera/operator@sha256:de9724b84ca493d3b14c8f801c1049ac4713166b00d9bf3ea0b1986aac5040fa
        version: 1.28.13
      entries:
      - name: tigera-operator.v1.28.13
        version: 1.28.13
      name: release-v1.28
    - currentCSV: tigera-operator.v1.29.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:2a5acd29d8dca6adb318af04dbb15d93d899ed2b28b2ee9aaac09147395efb58
          createdAt: "2023-03-31T20:49:52.518230079Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.29.3
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - registry.connect.redhat.com/tigera/operator@sha256:8e0c026f369f80e8b36d0c94f1fd60f7f53656e57dc5be0b8b12189546874909
        - quay.io/tigera/operator@sha256:2a5acd29d8dca6adb318af04dbb15d93d899ed2b28b2ee9aaac09147395efb58
        version: 1.29.3
      entries:
      - name: tigera-operator.v1.29.3
        version: 1.29.3
      name: release-v1.29
    - currentCSV: tigera-operator.v1.30.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:431f037ff18b5c867d01312e42671effc55602421aeed25dd3f6109f70596b4a
          createdAt: "2023-11-17T00:52:31.263564294Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.30.9
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: APIServer
            name: apiservers.operator.tigera.io
            version: v1
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:431f037ff18b5c867d01312e42671effc55602421aeed25dd3f6109f70596b4a
        - registry.connect.redhat.com/tigera/operator@sha256:1fb1007f7aad744f0e1b0f6a32022c2571ee8558e9db53c85976bbd2a891a6b0
        version: 1.30.9
      entries:
      - name: tigera-operator.v1.30.9
        version: 1.30.9
      name: release-v1.30
    - currentCSV: tigera-operator.v1.32.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tigera.io/v1",
                "kind": "Installation",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "variant": "Calico"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Logging & Tracing, Monitoring, Networking, Security
          certified: "true"
          containerImage: quay.io/tigera/operator@sha256:715ac9a30f8a9579e44258af20de354715429e11836b493918e9e1a696e9b028
          createdAt: "2023-12-15T23:45:03.964812504Z"
          description: An operator which manages the lifecycle of a Calico or Calico
            Enterprise installation on Kubernetes or OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://docs.projectcalico.org/getting-started/openshift/installation
          olm.skipRange: <1.32.3
          operators.operatorframework.io/builder: operator-sdk-v1.0.1
          operators.operatorframework.io/internal-objects: '["blockaffinities.crd.projectcalico.org","clusterinformations.crd.projectcalico.org","ipamblocks.crd.projectcalico.org","ipamconfigs.crd.projectcalico.org","ipamhandles.crd.projectcalico.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/tigera/operator
          support: Tigera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BGPConfiguration represents BGP specific configuration options
              for the cluster or a specific node.
            displayName: BGPConfiguration
            kind: BGPConfiguration
            name: bgpconfigurations.crd.projectcalico.org
            version: v1
          - description: BGPPeer represents a remote BGP peer with which the node(s)
              in a Calico cluster will peer. Configuring BGP peers allows you to peer
              a Calico network with your datacenter fabric (e.g. ToR).
            displayName: BGPPeer
            kind: BGPPeer
            name: bgppeers.crd.projectcalico.org
            version: v1
          - description: BlockAffinity maintains a block affinity's state.
            displayName: BlockAffinity
            kind: BlockAffinity
            name: blockaffinities.crd.projectcalico.org
            version: v1
          - kind: CalicoNodeStatus
            name: caliconodestatuses.crd.projectcalico.org
            version: v1
          - description: ClusterInformation contains the cluster specific information.
            displayName: ClusterInformation
            kind: ClusterInformation
            name: clusterinformations.crd.projectcalico.org
            version: v1
          - description: FelixConfiguration represents Felix configuration options
              for the cluster.
            displayName: FelixConfiguration
            kind: FelixConfiguration
            name: felixconfigurations.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkPolicy represents an ordered set of rules which
              are applied to a collection of endpoints that match a label selector.
            displayName: GlobalNetworkPolicy
            kind: GlobalNetworkPolicy
            name: globalnetworkpolicies.crd.projectcalico.org
            version: v1
          - description: GlobalNetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: GlobalNetworkSet
            kind: GlobalNetworkSet
            name: globalnetworksets.crd.projectcalico.org
            version: v1
          - description: HostEndpoint represents one or more real or virtual interfaces
              attached to a host that is running Calico. It enforces Calico policy
              on the traffic that is entering or leaving the host’s default network
              namespace through those interfaces.
            displayName: HostEndpoint
            kind: HostEndpoint
            name: hostendpoints.crd.projectcalico.org
            version: v1
          - kind: ImageSet
            name: imagesets.operator.tigera.io
            version: v1
          - description: Installation configures an installation of Calico or Calico
              Enterprise. At most one instance of this resource is supported. It must
              be named "default". The Installation API installs core networking and
              network policy components, and provides general install-time configuration.
            displayName: Installation
            kind: Installation
            name: installations.operator.tigera.io
            version: v1
          - description: IPAMBlock contains information about a block for IP address
              assignment.
            displayName: IPAMBlock
            kind: IPAMBlock
            name: ipamblocks.crd.projectcalico.org
            version: v1
          - description: IPAMConfig contains information about a block for IP address
              assignment.
            displayName: IPAMConfig
            kind: IPAMConfig
            name: ipamconfigs.crd.projectcalico.org
            version: v1
          - description: IPAMHandle contains information about an IPAMHandle resource.
            displayName: IPAMHandle
            kind: IPAMHandle
            name: ipamhandles.crd.projectcalico.org
            version: v1
          - description: IPPool represents a collection of IP addresses from which
              Calico expects endpoint IPs to be assigned.
            displayName: IPPool
            kind: IPPool
            name: ippools.crd.projectcalico.org
            version: v1
          - kind: IPReservation
            name: ipreservations.crd.projectcalico.org
            version: v1
          - description: KubeControllersConfiguration represents configuration options
              for the Calico Kubernetes controllers.
            displayName: KubeControllersConfiguration
            kind: KubeControllersConfiguration
            name: kubecontrollersconfigurations.crd.projectcalico.org
            version: v1
          - description: NetworkPolicy represents an ordered set of rules which are
              applied to a collection of endpoints that match a label selector.
            displayName: NetworkPolicy
            kind: NetworkPolicy
            name: networkpolicies.crd.projectcalico.org
            version: v1
          - description: NetworkSet represents an arbitrary set of IP subnetworks/CIDRs,
              allowing it to be matched by Calico policy. Network sets are useful
              for applying policy to traffic coming from (or going to) external, non-Calico,
              networks.
            displayName: NetworkSet
            kind: NetworkSet
            name: networksets.crd.projectcalico.org
            version: v1
          - description: TigeraStatus represents the most recently observed status
              for Calico or a Calico Enterprise functional area.
            displayName: TigeraStatus
            kind: TigeraStatus
            name: tigerastatuses.operator.tigera.io
            version: v1
        description: 'An operator which manages the lifecycle of a Calico or Calico
          Enterprise installation on Kubernetes or OpenShift. Its goal is to make
          installation, upgrades, and ongoing lifecycle management of Calico and Calico
          Enterprise as simple and reliable as possible. **Important**: this operator
          should only be installed if the cluster was already provisioned with Calico.'
        displayName: Tigera Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networking
        - security
        - monitoring
        links:
        - name: Calico Introduction
          url: https://docs.projectcalico.org/introduction/
        - name: Install an OpenShift 4 cluster with Calico
          url: https://docs.projectcalico.org/getting-started/openshift/installation
        maintainers:
        - email: maintainers@tigera.io
          name: Project Calico Maintainers
        maturity: stable
        provider:
          name: Tigera
        relatedImages:
        - quay.io/tigera/operator@sha256:715ac9a30f8a9579e44258af20de354715429e11836b493918e9e1a696e9b028
        - registry.connect.redhat.com/tigera/operator@sha256:42a4d0d0e24752dbb51daebcfca4d4850d04e79578bfb8b41cdc2a2a289df4a2
        version: 1.32.3
      entries:
      - name: tigera-operator.v1.32.3
        version: 1.32.3
      name: release-v1.32
    defaultChannel: release-v1.32
    packageName: tigera-operator
    provider:
      name: Tigera
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: EDB
      provider-url: ""
    name: cloud-native-postgresql
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cloud-native-postgresql.v1.28.0-rc2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:9e48409a60f1499191d285a41c034ed854108804eac2b5252f4f11797965cf1a
          createdAt: "2025-12-05T15:06:17Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:076018f56494a521e44e5fe7c48c3b21eeaf6379606f8dc651ed7a4330d0ce07
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:9e48409a60f1499191d285a41c034ed854108804eac2b5252f4f11797965cf1a
        version: 1.28.0-rc2
      entries:
      - name: cloud-native-postgresql.v1.28.0-rc2
        version: 1.28.0-rc2
      - name: cloud-native-postgresql.v1.28.0-rc1
        version: 1.28.0-rc1
      - name: cloud-native-postgresql.v1.27.0-rc1
        version: 1.27.0-rc1
      - name: cloud-native-postgresql.v1.26.0-rc3
        version: 1.26.0-rc3
      - name: cloud-native-postgresql.v1.26.0-rc2
        version: 1.26.0-rc2
      - name: cloud-native-postgresql.v1.26.0-rc1
        version: 1.26.0-rc1
      name: candidate
    - currentCSV: cloud-native-postgresql.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
          createdAt: "2025-12-16T10:37:27Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:16384249d49258831634aa3535f97906f41ebbf92d2f28bf6645e416ec3da96e
        version: 1.28.0
      entries:
      - name: cloud-native-postgresql.v1.28.0
        version: 1.28.0
      - name: cloud-native-postgresql.v1.27.1
        version: 1.27.1
      - name: cloud-native-postgresql.v1.27.0
        version: 1.27.0
      - name: cloud-native-postgresql.v1.26.1
        version: 1.26.1
      - name: cloud-native-postgresql.v1.26.0
        version: 1.26.0
      - name: cloud-native-postgresql.v1.25.2
        version: 1.25.2
      - name: cloud-native-postgresql.v1.25.1
        version: 1.25.1
      - name: cloud-native-postgresql.v1.25.0
        version: 1.25.0
      name: fast
    - currentCSV: cloud-native-postgresql.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
          createdAt: "2025-12-16T10:37:27Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:16384249d49258831634aa3535f97906f41ebbf92d2f28bf6645e416ec3da96e
        version: 1.28.0
      entries:
      - name: cloud-native-postgresql.v1.28.0
        version: 1.28.0
      - name: cloud-native-postgresql.v1.25.5
        version: 1.25.5
      - name: cloud-native-postgresql.v1.25.4
        version: 1.25.4
      - name: cloud-native-postgresql.v1.25.3
        version: 1.25.3
      - name: cloud-native-postgresql.v1.25.2
        version: 1.25.2
      - name: cloud-native-postgresql.v1.25.1
        version: 1.25.1
      - name: cloud-native-postgresql.v1.25.0
        version: 1.25.0
      name: stable
    - currentCSV: cloud-native-postgresql.v1.25.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": [
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:d2e7f433904cf4f5193d044434b1d6294222047398692697fc5c3f6311997ed3",
                      "major": 15
                    },
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:8f68afde9b1217ad13682bd2adfc0a7cac691cbdb496cc22915f6783012067f9",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": [
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:d2e7f433904cf4f5193d044434b1d6294222047398692697fc5c3f6311997ed3",
                      "major": 15
                    },
                    {
                      "image": "quay.io/enterprisedb/postgresql@sha256:8f68afde9b1217ad13682bd2adfc0a7cac691cbdb496cc22915f6783012067f9",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: quay.io/enterprisedb/cloud-native-postgresql@sha256:8ceea425bde8f569006e53f631e658b9b20f1093a5ae7088f843c8ac0a2ad235
          createdAt: "2025-10-24T16:12:01Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          Main features:

          * Direct integration with Kubernetes API server for High Availability,
            without requiring an external tool
          * Self-Healing capability, through:
              * failover of the primary instance by promoting the most aligned replica
              * automated recreation of a replica
          * Planned switchover of the primary instance by promoting a selected replica
          * Scale up/down capabilities
          * Definition of an arbitrary number of instances (minimum 1 - one primary server)
          * Definition of the *read-write* service, to connect your applications to the only primary server of the cluster
          * Definition of the *read-only* service, to connect your applications to any of the instances for reading workloads
          * Declarative management of PostgreSQL configuration
          * Declarative management of Postgres roles, users and groups
          * Support for Local Persistent Volumes with PVC templates
          * Reuse of Persistent Volumes storage in Pods
          * Separate volume for WAL files
          * Rolling updates for PostgreSQL minor versions
          * In-place or rolling updates for operator upgrades
          * TLS connections and client certificate authentication
          * Support for custom TLS certificates (including integration with cert-manager)
          * Continuous WAL archiving to an object store (AWS S3 and S3-compatible, Azure Blob Storage, and Google Cloud Storage)
          * Backups on volume snapshots (where supported by the underlying storage classes)
          * Backups on object stores (AWS S3 and S3-compatible, Azure Blob Storage, and Google Cloud Storage)
          * Full recovery and Point-In-Time recovery from an existing backup on volume snapshots or object stores
          * Offline import of existing PostgreSQL databases, including major upgrades of PostgreSQL
          * Fencing of an entire PostgreSQL cluster, or a subset of the instances in a declarative way
          * Hibernation of a PostgreSQL cluster in a declarative way
          * Support for Synchronous Replicas
          * Support for HA physical replication slots at cluster level
          * Backup from a standby
          * Backup retention policies (based on recovery window, only on object stores)
          * Parallel WAL archiving and restore to allow the database to keep up with WAL
            generation on high write systems
          * Support tagging backup files uploaded to an object store to enable optional
            retention management at the object store layer Replica clusters for
          * PostgreSQL deployments across multiple Kubernetes
            clusters, enabling private, public, hybrid, and multi-cloud architectures
          * Connection pooling with PgBouncer
          * Support for node affinity via `nodeSelector`
          * Native customizable exporter of user defined metrics for Prometheus through the `metrics` port (9187)
          * Standard output logging of PostgreSQL error messages in JSON format
          * Automatically set `readOnlyRootFilesystem` security context for pods
          * `cnp` plugin for `kubectl`
          * Simple bind and search+bind LDAP client authentication
          * Multi-arch format container images
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - quay.io/enterprisedb/postgresql@sha256:d2e7f433904cf4f5193d044434b1d6294222047398692697fc5c3f6311997ed3
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:22c35530e81789a83754aaa05de5159153f5e7fa4f25dbd9e5f1bd4f5d088cbb
        - quay.io/enterprisedb/cloud-native-postgresql@sha256:8ceea425bde8f569006e53f631e658b9b20f1093a5ae7088f843c8ac0a2ad235
        - quay.io/enterprisedb/postgresql@sha256:8f68afde9b1217ad13682bd2adfc0a7cac691cbdb496cc22915f6783012067f9
        version: 1.25.4
      entries:
      - name: cloud-native-postgresql.v1.25.4
        version: 1.25.4
      - name: cloud-native-postgresql.v1.25.3
        version: 1.25.3
      - name: cloud-native-postgresql.v1.25.2
        version: 1.25.2
      - name: cloud-native-postgresql.v1.25.1
        version: 1.25.1
      - name: cloud-native-postgresql.v1.25.0
        version: 1.25.0
      name: stable-v1.25
    - currentCSV: cloud-native-postgresql.v1.26.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:d4c22a434ea72e5865fd394b10b485e0c6b0690c27b3a14ebefc1add666de8b5
          createdAt: "2025-12-16T09:08:59Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:14ef013d84432c0901b5eaa7128e186d7dc604b699eb9b1cb3d63ca9d44366af
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:d4c22a434ea72e5865fd394b10b485e0c6b0690c27b3a14ebefc1add666de8b5
        version: 1.26.3
      entries:
      - name: cloud-native-postgresql.v1.26.3
        version: 1.26.3
      - name: cloud-native-postgresql.v1.26.2
        version: 1.26.2
      - name: cloud-native-postgresql.v1.26.1
        version: 1.26.1
      - name: cloud-native-postgresql.v1.26.0
        version: 1.26.0
      name: stable-v1.26
    - currentCSV: cloud-native-postgresql.v1.27.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:5c5753190e5f7e9da7d5a969b0b917c97f2e9aa9f5f208324dbdd5cdb2db2a1d
          createdAt: "2025-12-16T09:52:18Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:5c5753190e5f7e9da7d5a969b0b917c97f2e9aa9f5f208324dbdd5cdb2db2a1d
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:147730fba2efe5e1369ebf61816cdf01ac0a92c67b7e89b89e32e032119447a2
        version: 1.27.2
      entries:
      - name: cloud-native-postgresql.v1.27.2
        version: 1.27.2
      - name: cloud-native-postgresql.v1.27.1
        version: 1.27.1
      - name: cloud-native-postgresql.v1.27.0
        version: 1.27.0
      name: stable-v1.27
    - currentCSV: cloud-native-postgresql.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.k8s.enterprisedb.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
          createdAt: "2025-12-16T10:37:27Z"
          description: EDB Postgres for Kubernetes is an operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/EnterpriseDB/cloud-native-postgres
          support: EDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.k8s.enterprisedb.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.k8s.enterprisedb.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.k8s.enterprisedb.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.k8s.enterprisedb.io
            version: v1
        description: |
          **CRITICAL WARNING: Repository Migration and Pull Secret Required**

          **Action Required Before Installation or Upgrade:**

          1. **Operator Image Migration**: The EDB Postgres for Kubernetes operator
             images are no longer publicly available. You **MUST** create a pull secret
             **BEFORE** installing or upgrading the operator.

          2. **Registry Consolidation**: EDB has unified its container registries.
             The old repositories `k8s_standard` and `k8s_enterprise` are deprecated.
             All users must now use `k8s` as the repository username.

          **Required Steps:**

          Create the pull secret before installation/upgrade. The namespace depends on
          your installation mode:

          - **All namespaces** mode: Create in `openshift-operators` namespace
          - **A specific namespace** mode: Create in your chosen namespace

          ```
          oc create secret docker-registry postgresql-operator-pull-secret \
            -n <OPERATOR_NAMESPACE> \
            --docker-server=docker.enterprisedb.com \
            --docker-username=k8s \
            --docker-password="<YOUR_EDB_TOKEN>"
          ```

          **Failure to configure the pull secret will result in installation/upgrade
          failure and potential downtime.**

          For complete migration instructions, see:
          - [EDB Registry Migration Guide](https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/migrating_edb_registries/)
          - [Get your EDB token](https://www.enterprisedb.com/docs/repos/getting_started/with_web/get_your_token/)

          ---

          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnp` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: EDB Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnp
        links:
        - name: EDB Postgres for Kubernetes
          url: https://www.enterprisedb.com/products/postgresql-on-kubernetes-ha-clusters-k8s-containers-scalable
        - name: Documentation
          url: https://www.enterprisedb.com/docs/postgres_for_kubernetes/latest/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: EDB
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg@sha256:ef808aafc9921c5097a44acca50d957671ec84cb643d680d6904f645d3ed2c24
        - registry.connect.redhat.com/enterprisedb/cloud-native-postgresql@sha256:16384249d49258831634aa3535f97906f41ebbf92d2f28bf6645e416ec3da96e
        version: 1.28.0
      entries:
      - name: cloud-native-postgresql.v1.28.0
        version: 1.28.0
      name: stable-v1.28
    defaultChannel: fast
    packageName: cloud-native-postgresql
    provider:
      name: EDB
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: devopstales
      provider-url: devopstales.github.io
    name: community-trivy-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: community-trivy-operator.v2.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "trivy-operator.devopstales.io/v1",
                "kind": "NamespaceScanner",
                "metadata": {
                  "name": "trivy-operator-main-config"
                },
                "spec": {
                  "crontab": "*/5 * * * *",
                  "namespace_selector": "trivy-scan",
                  "clusterWide": "False",
                  "policyreport": "False",
                  "registry": [
                    {
                      "name": "docker.io",
                      "user": "",
                      "password": ""
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: devopstales/trivy-operator:2.4.1
          createdAt: "2022-07-11T15:00:00Z"
          description: Trivy Operator for scheduled imagescans and an Admission Control.
          repository: https://github.com/devopstales/trivy-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Confifuration for trivy-operator.
            displayName: NamespaceScanner
            kind: NamespaceScanner
            name: namespace-scanners.trivy-operator.devopstales.io
            version: v1
          - description: |
              VulnerabilityReport summarizes vulnerabilities in application dependencies and operating system packages
              built into container images.
            displayName: VulnerabilityReport
            kind: VulnerabilityReport
            name: vulnerabilityreports.trivy-operator.devopstales.io
            version: v1
        description: |
          Trivy Operator for scheduled imagescans and an Admission Control.

          ### Add Github token to extend your Github API Rate Limit
          The Operator use Github to download Trivy database. If your Github API Rate Limit Exceeded add your Github token to the operator deployment as GITHUB_TOKEN variable.

          ```yaml
          ...
          env:
          - name: GITHUB_TOKEN
            value: "githubToken"
          ```

          ### Scheduled Image scans
          Default every 5 minutes execute a scan script. It will get image list from all namespaces with the label `trivy-scan=true`, and then scan this images with trivy, finally we will get metrics on `http://[pod-ip]:9115/metrics`

          You can chane the schedule of the image scanning by setting the `crontab` variable in the namespace-scanner object.


          ### Cache Scan results
          From the 2.4 version you can use an external redis to store scanning results and speed up the scanning process.

          ```bash
          ...
          env:
          - name: REDIS_ENABLED
            value: "True"
          - name: REDIS_BACKEND
            value: redis://redis-cache:6379
          ```

          ### Persist Trivy database cache
          To Persist Trivy cache you need to create a pvc and mount to the Deployment under `/home/trivy-operator/trivy-cache`

          ```yaml
          ...
            volumeMounts:
            - name: cache
              mountPath: "/home/trivy-operator/trivy-cache"
          volumes:
          - name: cache
            persistentVolumeClaim:
              claimName: trivy-cache
          ```

          ### Trivy Image Validator
          The admission controller function can be configured as a ValidatingWebhook in a k8s cluster. Kubernetes will send requests to the admission server when a Pod creation is initiated. The admission controller checks the image using trivy if it is in a namespace with the lable `trivy-operator-validation=true`.

          To enable the admission controller you need to set the `clusterWide` variable to `true` in the namespace-scanner object.

          Enable the scheduled scan and the admission controller for a specific namespace:
          ```bash
          kubectl label namespaces test-apps trivy-scan=true
          # or
          kubectl label namespaces test-apps trivy-operator-validation=true
          ```

          You can define policy to the Admission Controller, by adding annotation to the pod trough the deployment:

          ```bash
          spec:
            ...
            template:
              metadata:
                annotations:
                  trivy.security.devopstales.io/medium: "5"
                  trivy.security.devopstales.io/low: "10"
                  trivy.security.devopstales.io/critical: "2"
          ...
          ```

          ### Monitorng
          Trivy operator has a prometheus endpoint wher yo can get the resoults of the namespace scans and the adission controller.

          ```bash
          curl -s http://10.43.179.39:9115/metrics | grep so_vulnerabilities

          # HELP so_vulnerabilities Container vulnerabilities
          # TYPE so_vulnerabilities gauge
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="UNKNOWN"} 0
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="LOW"} 23
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="MEDIUM"} 93
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="HIGH"} 76
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:1.18",severity="CRITICAL"} 25
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="UNKNOWN"} 0
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="LOW"} 23
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="MEDIUM"} 88
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="HIGH"} 60
          so_vulnerabilities{exported_namespace="trivytest",image="docker.io/library/nginx:latest",severity="CRITICAL"} 8
          ```

          ```bash
          curl -s http://10.43.179.39:9115/metrics | grep ac_vulnerabilities

          # HELP ac_vulnerabilities Admission Controller vulnerabilities
          # TYPE ac_vulnerabilities gauge
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="UNKNOWN"} 0.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="LOW"} 83.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="MEDIUM"} 6.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="HIGH"} 6.0
          ac_vulnerabilities{exported_namespace="trivytest",image="nginxinc/nginx-unprivileged:latest",severity="CRITICAL"} 4.0
          ```

          ### Policy Report reation
          The PolicyReport object is a protopype object probosed by the Kubernetes policy work group. The Policy Report Custom Resource Definition (CRD) can be used as a common way to provide policy results to Kubernetes cluster administrators and users, using native tools.

          Add the PolicyReport CRDs to your cluster (v1alpha2):
          ```bash
          kubectl create -f https://github.com/kubernetes-sigs/wg-policy-prototypes/raw/master/policy-report/crd/v1alpha2/wgpolicyk8s.io_policyreports.yaml
          ```

          You can enable the Policy Report creatin by setting the `policyreport` to `True` in the NamespaceScanner object.

          This objects can be visualized by the Policy Reporter UI. The Policy Reporter UI is a monitoring and Observability Tool for the PolicyReport CRD with an optional UI. It is created by Kyverno. The main goal was a tool to visualize the resoluts of the Kyverno policies, but because it uses the PolicyReports CRD it can visualize the resoults of the trivy-operator scans.
        displayName: Community Trivy Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - trivy
        - security
        links:
        - name: Documentation
          url: https://devopstales.github.io/trivy-operator
        - name: Blog
          url: https://devopstales.github.io
        maintainers:
        - email: devopstales@protonmail.com
          name: devopstales
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: devopstales
          url: devopstales.github.io
        relatedImages:
        - devopstales/trivy-operator:2.4.1
        - quay.io/openshift-community-operators/community-trivy-operator@sha256:e3652e68e1e569d7f40432fd8cbb7bfdc6738a116ecc1011c71a36f7ca5663c6
        version: 2.4.0
      entries:
      - name: community-trivy-operator.v2.4.0
        version: 2.4.0
      - name: community-trivy-operator.v2.3.0
        version: 2.3.0
      - name: community-trivy-operator.v2.2.0
        version: 2.2.0
      - name: community-trivy-operator.v2.1.1
        version: 2.1.1
      name: stable
    defaultChannel: stable
    packageName: community-trivy-operator
    provider:
      name: devopstales
      url: devopstales.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: hive-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hive-operator.v1.2.5060-b061ef0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:b061ef0a98
          createdAt: "2025-12-18T18:32:21Z"
          description: OpenShift cluster provisioning and management at scale.
          operators.operatorframework.io/internal-objects: '["checkpoints.hive.openshift.io","clusterdeprovisions.hive.openshift.io","clusterprovisions.hive.openshift.io","clusterstates.hive.openshift.io","machinepoolnameleases.hive.openshift.io","clustersyncleases.hiveinternal.openshift.io","clustersyncs.hiveinternal.openshift.io","fakeclusterinstalls.hiveinternal.openshift.io"]'
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeploymentCustomization is the Schema for clusterdeploymentcustomizations
              API.
            displayName: ClusterDeploymentCustomization
            kind: ClusterDeploymentCustomization
            name: clusterdeploymentcustomizations.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: |-
              ClusterPool represents a pool of clusters that should be kept ready to be given out to users. Clusters are removed
              from the pool once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: |-
              MachinePoolNameLease is the Schema for the MachinePoolNameLeases API. This resource is mostly empty
              as we're primarily relying on the name to determine if a lease is available.
              Note that not all cloud providers require the use of a lease for naming, at present this
              is only required for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * IBM Cloud
          * Red Hat OpenStack
          * vSphere

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Troubleshooting](https://github.com/openshift/hive/blob/master/docs/troubleshooting.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
              logLevel: debug
              targetNamespace: hive
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hive-operator:1.2.5060-b061ef0
        - quay.io/openshift-hive/hive:b061ef0a98
        version: 1.2.5060-b061ef0
      entries:
      - name: hive-operator.v1.2.5060-b061ef0
        version: 1.2.5060-b061ef0
      - name: hive-operator.v1.2.5017-715614a
        version: 1.2.5017-715614a
      - name: hive-operator.v1.2.5015-acea5e9
        version: 1.2.5015-acea5e9
      - name: hive-operator.v1.2.5011-47d2de1
        version: 1.2.5011-47d2de1
      - name: hive-operator.v1.2.4989-fc3dac7
        version: 1.2.4989-fc3dac7
      - name: hive-operator.v1.2.4975-f84d11f
        version: 1.2.4975-f84d11f
      - name: hive-operator.v1.2.4953-c248a51
        version: 1.2.4953-c248a51
      - name: hive-operator.v1.2.4928-76a65b6
        version: 1.2.4928-76a65b6
      - name: hive-operator.v1.2.4902-4929f16
        version: 1.2.4902-4929f16
      - name: hive-operator.v1.2.4896-a29a238
        version: 1.2.4896-a29a238
      - name: hive-operator.v1.2.4868-45ae912
        version: 1.2.4868-45ae912
      - name: hive-operator.v1.2.4863-e9ad0fa
        version: 1.2.4863-e9ad0fa
      - name: hive-operator.v1.2.4774-87bff59
        version: 1.2.4774-87bff59
      - name: hive-operator.v1.2.4766-6a82857
        version: 1.2.4766-6a82857
      - name: hive-operator.v1.2.4746-d25e0db
        version: 1.2.4746-d25e0db
      - name: hive-operator.v1.2.4738-b19773e
        version: 1.2.4738-b19773e
      - name: hive-operator.v1.2.4731-41f153f
        version: 1.2.4731-41f153f
      - name: hive-operator.v1.2.4703-02f3f00
        version: 1.2.4703-02f3f00
      - name: hive-operator.v1.2.4693-ec3bc72
        version: 1.2.4693-ec3bc72
      - name: hive-operator.v1.2.4686-553c6c2
        version: 1.2.4686-553c6c2
      - name: hive-operator.v1.2.4682-406d6ca
        version: 1.2.4682-406d6ca
      - name: hive-operator.v1.2.4672-af54e2f
        version: 1.2.4672-af54e2f
      - name: hive-operator.v1.2.4668-3ccd44d
        version: 1.2.4668-3ccd44d
      - name: hive-operator.v1.2.4664-00f84cc
        version: 1.2.4664-00f84cc
      - name: hive-operator.v1.2.4658-c13e207
        version: 1.2.4658-c13e207
      - name: hive-operator.v1.2.4654-3268a18
        version: 1.2.4654-3268a18
      - name: hive-operator.v1.2.4650-531d549
        version: 1.2.4650-531d549
      - name: hive-operator.v1.2.4644-365f074
        version: 1.2.4644-365f074
      - name: hive-operator.v1.2.4638-56d6d64
        version: 1.2.4638-56d6d64
      - name: hive-operator.v1.2.4625-389d717
        version: 1.2.4625-389d717
      - name: hive-operator.v1.2.4615-52100dd
        version: 1.2.4615-52100dd
      - name: hive-operator.v1.2.4605-b41ca3f
        version: 1.2.4605-b41ca3f
      - name: hive-operator.v1.2.4584-95efcb7
        version: 1.2.4584-95efcb7
      - name: hive-operator.v1.2.4574-1ec27ad
        version: 1.2.4574-1ec27ad
      - name: hive-operator.v1.2.4568-b3eca52
        version: 1.2.4568-b3eca52
      - name: hive-operator.v1.2.4564-bdf9d08
        version: 1.2.4564-bdf9d08
      - name: hive-operator.v1.2.4552-bf2d689
        version: 1.2.4552-bf2d689
      - name: hive-operator.v1.2.4532-cddd4f9
        version: 1.2.4532-cddd4f9
      - name: hive-operator.v1.2.4511-1fce770
        version: 1.2.4511-1fce770
      - name: hive-operator.v1.2.4500-b1ac27b
        version: 1.2.4500-b1ac27b
      - name: hive-operator.v1.2.4485-47df0d9
        version: 1.2.4485-47df0d9
      - name: hive-operator.v1.2.4469-7be6433
        version: 1.2.4469-7be6433
      - name: hive-operator.v1.2.4463-d7ead60
        version: 1.2.4463-d7ead60
      - name: hive-operator.v1.2.4461-97686bb
        version: 1.2.4461-97686bb
      - name: hive-operator.v1.2.4459-f910c9b
        version: 1.2.4459-f910c9b
      - name: hive-operator.v1.2.4451-83aedb9
        version: 1.2.4451-83aedb9
      - name: hive-operator.v1.2.4446-e11a23b
        version: 1.2.4446-e11a23b
      - name: hive-operator.v1.2.4441-fdbfaf0
        version: 1.2.4441-fdbfaf0
      - name: hive-operator.v1.2.4436-44323bc
        version: 1.2.4436-44323bc
      - name: hive-operator.v1.2.4428-ceaafa8
        version: 1.2.4428-ceaafa8
      - name: hive-operator.v1.2.4426-fb27114
        version: 1.2.4426-fb27114
      - name: hive-operator.v1.2.4420-fe0e302
        version: 1.2.4420-fe0e302
      - name: hive-operator.v1.2.4418-eb5403f
        version: 1.2.4418-eb5403f
      - name: hive-operator.v1.2.4416-fba8d52
        version: 1.2.4416-fba8d52
      - name: hive-operator.v1.2.4408-9c5806a
        version: 1.2.4408-9c5806a
      - name: hive-operator.v1.2.4404-410fed9
        version: 1.2.4404-410fed9
      - name: hive-operator.v1.2.4400-8c54fc9
        version: 1.2.4400-8c54fc9
      - name: hive-operator.v1.2.4386-6f1fd3e
        version: 1.2.4386-6f1fd3e
      - name: hive-operator.v1.2.4382-0e95d5b
        version: 1.2.4382-0e95d5b
      - name: hive-operator.v1.2.4366-df65e7e
        version: 1.2.4366-df65e7e
      - name: hive-operator.v1.2.4360-de169dd
        version: 1.2.4360-de169dd
      - name: hive-operator.v1.2.4355-e5f809f
        version: 1.2.4355-e5f809f
      name: alpha
    - currentCSV: hive-operator.v2.5.3516-a2ed9b3
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:v2.5.3516-a2ed9b3
          createdAt: "2022-06-03T13:24:12Z"
          description: OpenShift cluster provisioning and management at scale.
          operators.operatorframework.io/internal-objects: '["checkpoints.hive.openshift.io","clusterdeprovisions.hive.openshift.io","clusterprovisions.hive.openshift.io","clusterstates.hive.openshift.io","machinepoolnameleases.hive.openshift.io","clustersyncleases.hiveinternal.openshift.io","clustersyncs.hiveinternal.openshift.io","fakeclusterinstalls.hiveinternal.openshift.io"]'
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: ClusterPool represents a pool of clusters that should be
              kept ready to be given out to users. Clusters are removed from the pool
              once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: MachinePoolNameLease is the Schema for the MachinePoolNameLeases
              API. This resource is mostly empty as we're primarily relying on the
              name to determine if a lease is available. Note that not all cloud providers
              require the use of a lease for naming, at present this is only required
              for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * Red Hat OpenStack

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-hive/hive:v2.5.3516-a2ed9b3
        - quay.io/openshift-community-operators/hive-operator@sha256:be43412a2e4bad2cd9d15e4fbabe0292585c5bbbd65da12d519f30f17d2fe594
        version: 2.5.3516-a2ed9b3
      entries:
      - name: hive-operator.v2.5.3516-a2ed9b3
        version: 2.5.3516-a2ed9b3
      - name: hive-operator.v2.5.3514-4052426
        version: 2.5.3514-4052426
      - name: hive-operator.v2.5.3508-6cb94c6
        version: 2.5.3508-6cb94c6
      - name: hive-operator.v2.5.3506-f42617c
        version: 2.5.3506-f42617c
      - name: hive-operator.v2.5.3495-5cfdd44
        version: 2.5.3495-5cfdd44
      - name: hive-operator.v2.5.3491-6feded1
        version: 2.5.3491-6feded1
      - name: hive-operator.v2.5.3489-6dec9c3
        version: 2.5.3489-6dec9c3
      name: mce-2.0
    - currentCSV: hive-operator.v2.3.3039-60b8a9a
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:v2.3.3039-60b8a9a
          createdAt: "2022-08-15T17:23:39Z"
          description: OpenShift cluster provisioning and management at scale.
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: ClusterPool represents a pool of clusters that should be
              kept ready to be given out to users. Clusters are removed from the pool
              once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: MachinePoolNameLease is the Schema for the MachinePoolNameLeases
              API. This resource is mostly empty as we're primarily relying on the
              name to determine if a lease is available. Note that not all cloud providers
              require the use of a lease for naming, at present this is only required
              for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * Red Hat OpenStack

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/hive-operator@sha256:822fd8e65c241cebedd835bfebf67645199561cfdd6148d5afffb8b35e499ae3
        - quay.io/openshift-hive/hive:v2.3.3039-60b8a9a
        version: 2.3.3039-60b8a9a
      entries:
      - name: hive-operator.v2.3.3039-60b8a9a
        version: 2.3.3039-60b8a9a
      name: ocm-2.3
    - currentCSV: hive-operator.v2.4.3231-ba51985
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hive.openshift.io/v1","kind":"HiveConfig","metadata":{"name":"hive"},"spec":{"managedDomains":[{"aws":{"credentialsSecretRef":{"name":"my-route53-creds"}},"domains":["my-base-domain.example.com"]}]}}]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-hive/hive:v2.4.3231-ba51985
          createdAt: "2022-08-15T11:53:28Z"
          description: OpenShift cluster provisioning and management at scale.
          operators.operatorframework.io/internal-objects: '["checkpoints.hive.openshift.io","clusterdeprovisions.hive.openshift.io","clusterprovisions.hive.openshift.io","clusterstates.hive.openshift.io","machinepoolnameleases.hive.openshift.io","clustersyncleases.hiveinternal.openshift.io","clustersyncs.hiveinternal.openshift.io","fakeclusterinstalls.hiveinternal.openshift.io"]'
          repository: https://github.com/openshift/hive
          support: Hive Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Checkpoint is the Schema for the backup of Hive objects.
            displayName: Checkpoint
            kind: Checkpoint
            name: checkpoints.hive.openshift.io
            version: v1
          - description: ClusterClaim represents a claim to a cluster from a cluster
              pool.
            displayName: ClusterClaim
            kind: ClusterClaim
            name: clusterclaims.hive.openshift.io
            version: v1
          - description: ClusterDeployment is the Schema for the clusterdeployments
              API
            displayName: ClusterDeployment
            kind: ClusterDeployment
            name: clusterdeployments.hive.openshift.io
            version: v1
          - description: ClusterDeprovision is the Schema for the clusterdeprovisions
              API
            displayName: ClusterDeprovision
            kind: ClusterDeprovision
            name: clusterdeprovisions.hive.openshift.io
            version: v1
          - description: ClusterImageSet is the Schema for the clusterimagesets API
            displayName: ClusterImageSet
            kind: ClusterImageSet
            name: clusterimagesets.hive.openshift.io
            version: v1
          - description: ClusterPool represents a pool of clusters that should be
              kept ready to be given out to users. Clusters are removed from the pool
              once claimed and then automatically replaced with a new one.
            displayName: ClusterPool
            kind: ClusterPool
            name: clusterpools.hive.openshift.io
            version: v1
          - description: ClusterProvision is the Schema for the clusterprovisions
              API
            displayName: ClusterProvision
            kind: ClusterProvision
            name: clusterprovisions.hive.openshift.io
            version: v1
          - description: ClusterRelocate is the Schema for the ClusterRelocates API
            displayName: ClusterRelocate
            kind: ClusterRelocate
            name: clusterrelocates.hive.openshift.io
            version: v1
          - description: ClusterState is the Schema for the clusterstates API
            displayName: ClusterState
            kind: ClusterState
            name: clusterstates.hive.openshift.io
            version: v1
          - description: DNSZone is the Schema for the dnszones API
            displayName: DNSZone
            kind: DNSZone
            name: dnszones.hive.openshift.io
            version: v1
          - description: HiveConfig is the Schema for the hives API
            displayName: HiveConfig
            kind: HiveConfig
            name: hiveconfigs.hive.openshift.io
            version: v1
          - description: MachinePoolNameLease is the Schema for the MachinePoolNameLeases
              API. This resource is mostly empty as we're primarily relying on the
              name to determine if a lease is available. Note that not all cloud providers
              require the use of a lease for naming, at present this is only required
              for GCP where we're extremely restricted on name lengths.
            displayName: MachinePoolNameLease
            kind: MachinePoolNameLease
            name: machinepoolnameleases.hive.openshift.io
            version: v1
          - description: MachinePool is the Schema for the machinepools API
            displayName: MachinePool
            kind: MachinePool
            name: machinepools.hive.openshift.io
            version: v1
          - description: SelectorSyncIdentityProvider is the Schema for the SelectorSyncSet
              API
            displayName: SelectorSyncIdentityProvider
            kind: SelectorSyncIdentityProvider
            name: selectorsyncidentityproviders.hive.openshift.io
            version: v1
          - description: SelectorSyncSet is the Schema for the SelectorSyncSet API
            displayName: SelectorSyncSet
            kind: SelectorSyncSet
            name: selectorsyncsets.hive.openshift.io
            version: v1
          - description: SyncIdentityProvider is the Schema for the SyncIdentityProvider
              API
            displayName: SyncIdentityProvider
            kind: SyncIdentityProvider
            name: syncidentityproviders.hive.openshift.io
            version: v1
          - description: SyncSet is the Schema for the SyncSet API
            displayName: SyncSet
            kind: SyncSet
            name: syncsets.hive.openshift.io
            version: v1
          - description: ClusterSyncLease is a record of the last time that SyncSets
              and SelectorSyncSets were applied to a cluster.
            displayName: ClusterSyncLease
            kind: ClusterSyncLease
            name: clustersyncleases.hiveinternal.openshift.io
            version: v1alpha1
          - description: ClusterSync is the status of all of the SelectorSyncSets
              and SyncSets that apply to a ClusterDeployment.
            displayName: ClusterSync
            kind: ClusterSync
            name: clustersyncs.hiveinternal.openshift.io
            version: v1alpha1
          - description: FakeClusterInstall represents a fake request to provision
              an agent based cluster.
            displayName: FakeClusterInstall
            kind: FakeClusterInstall
            name: fakeclusterinstalls.hiveinternal.openshift.io
            version: v1alpha1
        description: |-
          Hive for Red Hat OpenShift is an operator that runs on top of Kubernetes/OpenShift. Hive can be used to provision
          and perform initial configuration of OpenShift clusters.

          For provisioning OpenShift, Hive uses the [OpenShift installer](https://github.com/openshift/installer).

          ### Supported cloud providers
          * AWS
          * Azure
          * Google Cloud Platform
          * Red Hat OpenStack

          In the future Hive will support more cloud providers.

          ## Documentation

          * [Quick Start Guide](https://github.com/openshift/hive/blob/master/docs/quick_start.md)
          * [Using Hive](https://github.com/openshift/hive/blob/master/docs/using-hive.md)
          * [Hiveutil CLI](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)
          * [Frequently Asked Questions](https://github.com/openshift/hive/blob/master/docs/FAQs.md)
          * [Architecture](https://github.com/openshift/hive/blob/master/docs/architecture.md)

          See the [project README](https://github.com/openshift/hive#documentation) for more documentation.

          ## Post Install Configuration

          After installing the Hive for Red Hat OpenShift operator, create a cluster-scoped `HiveConfig` CR to configure Hive.
          Upon creation of `HiveConfig`, the operator will create the necessary Kubernetes resources to launch Hive.

          Example `HiveConfig`:
          ```yaml
          ---
            apiVersion: hive.openshift.io/v1
            kind: HiveConfig
            metadata:
              name: hive
            spec:
              managedDomains:
              - aws:
                  credentialsSecretRef:
                    name: my-route53-creds
                domains:
                - my-base-domain.example.com
          ```

          ## Create a cluster

          To create a cluster with Hive, create a `ClusterDeployment` CR. You can also use the
          [`hiveutil` tool](https://github.com/openshift/hive/blob/master/docs/hiveutil.md)'s `create-cluster` command
          to create clusters.
        displayName: Hive for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - multi-cluster
        - cluster
        links:
        - name: Hive GitHub
          url: https://github.com/openshift/hive
        - name: 'Hive: Cluster-as-a-Service'
          url: https://www.openshift.com/blog/openshift-hive-cluster-as-a-service
        - name: OpenShift
          url: https://www.openshift.com/
        maintainers:
        - email: openshift-hive-team@redhat.com
          name: Hive Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/hive-operator@sha256:9a3cb682afc66ad662045b3d8ff214203cc00be60f66f74564820f6dcf99cd69
        - quay.io/openshift-hive/hive:v2.4.3231-ba51985
        version: 2.4.3231-ba51985
      entries:
      - name: hive-operator.v2.4.3231-ba51985
        version: 2.4.3231-ba51985
      - name: hive-operator.v2.4.3227-74831db
        version: 2.4.3227-74831db
      - name: hive-operator.v2.4.3222-d68346c
        version: 2.4.3222-d68346c
      - name: hive-operator.v2.4.3206-b0714a7
        version: 2.4.3206-b0714a7
      - name: hive-operator.v2.4.3203-672cfe7
        version: 2.4.3203-672cfe7
      - name: hive-operator.v2.4.3201-8c50440
        version: 2.4.3201-8c50440
      - name: hive-operator.v2.4.3199-cce4cb9
        version: 2.4.3199-cce4cb9
      - name: hive-operator.v2.4.3197-6c9c8e4
        version: 2.4.3197-6c9c8e4
      - name: hive-operator.v2.4.3194-f82b7d8
        version: 2.4.3194-f82b7d8
      - name: hive-operator.v2.4.3192-fae0111
        version: 2.4.3192-fae0111
      - name: hive-operator.v2.4.3189-026033b
        version: 2.4.3189-026033b
      - name: hive-operator.v2.4.3180-7299056
        version: 2.4.3180-7299056
      - name: hive-operator.v1.2.3179-0756b70e6
        version: 1.2.3179-0756b70e6
      - name: hive-operator.v1.1.16
        version: 1.1.16
      - name: hive-operator.v1.1.15
        version: 1.1.15
      - name: hive-operator.v1.1.14
        version: 1.1.14
      - name: hive-operator.v1.1.13
        version: 1.1.13
      - name: hive-operator.v1.1.12
        version: 1.1.12
      - name: hive-operator.v1.1.11
        version: 1.1.11
      - name: hive-operator.v1.1.10
        version: 1.1.10
      - name: hive-operator.v1.1.9
        version: 1.1.9
      - name: hive-operator.v1.1.8
        version: 1.1.8
      - name: hive-operator.v1.1.7
        version: 1.1.7
      - name: hive-operator.v1.1.6
        version: 1.1.6
      name: ocm-2.4
    defaultChannel: alpha
    packageName: hive-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-nifi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nifi-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/nifi-operator@sha256:bc776bff99d4a9ead08cf1b688715f3f9e676e9f7747a4df121326e46eb1bf9c
          description: Stackable Operator for Apache NiFi
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/nifi-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for NifiClusterSpec via `CustomResource`
            displayName: nificlusters.nifi.stackable.tech
            kind: NifiCluster
            name: nificlusters.nifi.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache NiFi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nifi
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/nifi-operator@sha256:bc776bff99d4a9ead08cf1b688715f3f9e676e9f7747a4df121326e46eb1bf9c
        - registry.connect.redhat.com/stackable/stackable-apache-nifi-operator@sha256:66f83e489da98272e561125e19a92d9b8347fca790e413ca627211a6f487472c
        version: 25.11.0
      entries:
      - name: nifi-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-nifi-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: PingCAP
      provider-url: ""
    name: tidb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tidb-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pingcap.com/v1alpha1",
                "kind": "TidbCluster",
                "metadata": {
                  "name": "basic"
                },
                "spec": {
                  "version": "v5.4.0",
                  "timezone": "UTC",
                  "pvReclaimPolicy": "Delete",
                  "discovery": {},
                  "pd": {
                    "baseImage": "pingcap/pd",
                    "replicas": 1,
                    "requests": {
                      "storage": "1Gi"
                    },
                    "config": {}
                  },
                  "tikv": {
                    "baseImage": "pingcap/tikv",
                    "replicas": 1,
                    "requests": {
                      "storage": "1Gi"
                    },
                    "config": {
                      "storage": {
                        "reserve-space": "0MB"
                      }
                    }
                  },
                  "tidb": {
                    "baseImage": "pingcap/tidb",
                    "replicas": 1,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "config": {}
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: pingcap/tidb-operator:v1.3.1
          createdAt: 2021-2-15T07-18-39Z
          description: TiDB Operator manages TiDB clusters on Kubernetes and automates
            tasks related to operating a TiDB cluster. It makes TiDB a truly cloud-native
            database.
          repository: https://github.com/pingcap/tidb-operator
          support: KanShiori
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup
            displayName: Backup
            kind: Backup
            name: backups.pingcap.com
            version: v1alpha1
          - description: Backup Schedule
            displayName: BackupSchedule
            kind: BackupSchedule
            name: backupschedules.pingcap.com
            version: v1alpha1
          - description: DM Cluster
            displayName: DMCluster
            kind: DMCluster
            name: dmclusters.pingcap.com
            version: v1alpha1
          - description: Restore
            displayName: Restore
            kind: Restore
            name: restores.pingcap.com
            version: v1alpha1
          - description: Tidb Cluster Auto Scaler
            displayName: TidbClusterAutoScaler
            kind: TidbClusterAutoScaler
            name: tidbclusterautoscalers.pingcap.com
            version: v1alpha1
          - description: Tidb Cluster
            displayName: TidbCluster
            kind: TidbCluster
            name: tidbclusters.pingcap.com
            version: v1alpha1
          - description: Tidb Initializer
            displayName: TidbInitializer
            kind: TidbInitializer
            name: tidbinitializers.pingcap.com
            version: v1alpha1
          - description: Tidb Monitor
            displayName: TidbMonitor
            kind: TidbMonitor
            name: tidbmonitors.pingcap.com
            version: v1alpha1
          - description: Tidb NG Monitoring
            displayName: TidbNGMonitoring
            kind: TidbNGMonitoring
            name: tidbngmonitorings.pingcap.com
            version: v1alpha1
        description: |
          ## About the managed application
          TiDB ("Ti" stands for Titanium) is an open-source, distributed, NewSQL database that supports Hybrid Transactional and Analytical Processing (HTAP) workloads. It is MySQL compatible and features horizontal scalability, strong consistency, and high availability. TiDB can be deployed on-premise or in-cloud.
          ## About this Operator

          TiDB Operator manages TiDB clusters on Kubernetes and automates tasks related to operating a TiDB cluster. It makes TiDB a truly cloud-native database.

          ## Features

          * Safely scaling the TiDB cluster

          TiDB Operator empowers TiDB with horizontal scalability on the cloud.

          * Rolling update of the TiDB cluster

          Gracefully perform rolling updates for the TiDB cluster in order, achieving zero-downtime of the TiDB cluster.

          * Multi-tenant support

          Users can deploy and manage multiple TiDB clusters on a single Kubernetes cluster easily.

          * Automatic failover

          TiDB Operator automatically performs failover for your TiDB cluster when node failures occur.

          * Kubernetes package manager support

          By embracing Kubernetes package manager Helm, users can easily deploy TiDB clusters with only one command.

          * Automatically monitoring TiDB cluster at creating

          Automatically deploy Prometheus, Grafana for TiDB cluster monitoring.

          ## Quick Start
          You can follow our [Get Started](https://docs.pingcap.com/tidb-in-kubernetes/stable/get-started) guide to quickly start a testing Kubernetes cluster and play with TiDB Operator on your own machine.

          ## Documentation

          You can see our documentation at PingCAP website for more in-depth installation and instructions for production:

          - [English](https://docs.pingcap.com/tidb-in-kubernetes/stable)
          - [简体中文](https://docs.pingcap.com/zh/tidb-in-kubernetes/stable)

          All the TiDB Operator documentation is maintained in the [docs-tidb-operator repository](https://github.com/pingcap/docs-tidb-operator).

          ## Community

          Feel free to reach out if you have any questions. The maintainers of this project are reachable via:

          - [TiDB Community Slack](https://pingcap.com/tidbslack/) in the [#sig-k8s](https://tidbcommunity.slack.com/archives/CHD0HA3LZ) channel
          - [Filing an issue](https://github.com/pingcap/tidb-operator/issue) against this repo

          Pull Requests are welcome! Check the [issue tracker](https://github.com/pingcap/tidb-operator/issue) for `status/help-wanted` issues if you're unsure where to start.

          If you're planning a new feature, please file an issue or join [#sig-k8s](https://tidbcommunity.slack.com/archives/CHD0HA3LZ) channel to discuss first.
          ## Prerequisites for enabling this Operator
        displayName: TiDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TiDB
        - SQL
        - Database
        links:
        - name: GitHub
          url: https://github.com/pingcap/tidb-operator
        - name: Documentation
          url: https://docs.pingcap.com/tidb-in-kubernetes/stable
        maintainers:
        - email: zhanghailong@pingcap.com
          name: Daniel Zhang
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: PingCAP
        relatedImages:
        - quay.io/openshift-community-operators/tidb-operator@sha256:4f73b39de6129b906b5eb7bb0b7485f3da406cfad8616f81e375cc8ffcb156ed
        - pingcap/tidb-operator:v1.3.1
        version: 1.3.1
      entries:
      - name: tidb-operator.v1.3.1
        version: 1.3.1
      name: stable
    defaultChannel: stable
    packageName: tidb-operator
    provider:
      name: PingCAP
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Upbound Inc.
      provider-url: https://upbound.io
    name: universal-crossplane
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: universal-crossplane.1.5.1-up.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"pkg.crossplane.io/v1",
                "kind":"Configuration",
                "metadata":{
                  "name":"xp-getting-started-with-aws"
                },
                "spec":{
                  "package":"registry.upbound.io/xp/getting-started-with-aws:v1.2.2"
                }
              },
              {
                "apiVersion":"apiextensions.crossplane.io/v1",
                "kind":"CompositeResourceDefinition",
                "metadata":{
                  "name":"compositepostgresqlinstances.database.example.org"
                },
                "spec":{
                  "group":"database.example.org",
                  "names":{
                    "kind":"CompositePostgreSQLInstance",
                    "plural":"compositepostgresqlinstances"
                  },
                  "claimNames":{
                    "kind":"PostgreSQLInstance",
                    "plural":"postgresqlinstances"
                  },
                  "connectionSecretKeys":[
                      "username",
                      "password",
                      "endpoint",
                      "port"
                  ],
                  "versions":[
                    {
                      "name":"v1alpha1",
                      "served":true,
                      "referenceable":true,
                      "schema":{
                        "openAPIV3Schema":{
                          "type":"object",
                          "properties":{
                            "spec":{
                              "type":"object",
                              "properties":{
                                "parameters":{
                                  "type":"object",
                                  "properties":{
                                    "storageGB":{
                                      "type":"integer"
                                    }
                                  },
                                  "required":[
                                      "storageGB"
                                  ]
                                }
                              },
                              "required":[
                                  "parameters"
                              ]
                            }
                          }
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion":"apiextensions.crossplane.io/v1",
                "kind":"Composition",
                "metadata":{
                  "name":"compositepostgresqlinstances.aws.database.example.org",
                  "labels":{
                    "provider":"aws",
                    "guide":"quickstart",
                    "vpc":"default"
                  }
                },
                "spec":{
                  "writeConnectionSecretsToNamespace":"crossplane-system",
                  "compositeTypeRef":{
                    "apiVersion":"database.example.org/v1alpha1",
                    "kind":"CompositePostgreSQLInstance"
                  },
                  "resources":[
                    {
                      "name":"rdsinstance",
                      "base":{
                        "apiVersion":"database.aws.crossplane.io/v1beta1",
                        "kind":"RDSInstance",
                        "spec":{
                          "forProvider":{
                            "region":"us-east-1",
                            "dbInstanceClass":"db.t2.small",
                            "masterUsername":"masteruser",
                            "engine":"postgres",
                            "engineVersion":"9.6",
                            "skipFinalSnapshotBeforeDeletion":true,
                            "publiclyAccessible":true
                          },
                          "writeConnectionSecretToRef":{
                            "namespace":"crossplane-system"
                          }
                        }
                      },
                      "patches":[
                        {
                          "fromFieldPath":"metadata.uid",
                          "toFieldPath":"spec.writeConnectionSecretToRef.name",
                          "transforms":[
                            {
                              "type":"string",
                              "string":{
                                "fmt":"%s-postgresql"
                              }
                            }
                          ]
                        },
                        {
                          "fromFieldPath":"spec.parameters.storageGB",
                          "toFieldPath":"spec.forProvider.allocatedStorage"
                        }
                      ],
                      "connectionDetails":[
                        {
                          "fromConnectionSecretKey":"username"
                        },
                        {
                          "fromConnectionSecretKey":"password"
                        },
                        {
                          "fromConnectionSecretKey":"endpoint"
                        },
                        {
                          "fromConnectionSecretKey":"port"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion":"pkg.crossplane.io/v1",
                "kind":"Provider",
                "metadata":{
                  "name":"provider-aws"
                },
                "spec":{
                  "package":"crossplane/provider-aws:master"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Application Runtime, Cloud Provider, Database, Integration &
            Delivery, Networking, Storage
          com.redhat.component: universal-crossplane
          com.redhat.delivery.backport: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.6
          containerImage: upbound/uxp-bootstrapper
          createdAt: 2021-05-18T00:00:00+0000
          description: Upbound Universal Crossplane (UXP) is Upbound's official enterprise-grade
            distribution of Crossplane.
          io.k8s.display-name: universal-crossplane
          io.openshift.tags: uxp,crossplane,upbound
          maintainer: Upbound Inc. <info@upbound.io>
          name: universal-crossplane
          ocs.tags: v4.6
          operatorframework.io/initialization-resource: |
            apiVersion: v1
            kind: Secret
            metadata:
              name: upbound-control-plane-token
              namespace: upbound-system
            type: Opaque
            data:
              token: "Output of `up cloud controlplane attach | base64` command"
          operatorframework.io/suggested-namespace: upbound-system
          operators.operatorframework.io.bundle.channel.default.v1: stable
          operators.operatorframework.io.bundle.channels.v1: stable
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: universal-crossplane
          operators.operatorframework.io/internal-objects: '["locks.pkg.crossplane.io"]'
          repository: https://github.com/upbound/universal-crossplane
          summary: Upbound Universal Crossplane (UXP) is Upbound's official enterprise-grade
            distribution of Crossplane.
          support: Upbound Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: CompositeResourceDefinition
            kind: CompositeResourceDefinition
            name: compositeresourcedefinitions.apiextensions.crossplane.io
            version: v1
          - displayName: CompositionRevision
            kind: CompositionRevision
            name: compositionrevisions.apiextensions.crossplane.io
            version: v1alpha1
          - displayName: Composition
            kind: Composition
            name: compositions.apiextensions.crossplane.io
            version: v1
          - displayName: ConfigurationRevision
            kind: ConfigurationRevision
            name: configurationrevisions.pkg.crossplane.io
            version: v1
          - displayName: Configuration
            kind: Configuration
            name: configurations.pkg.crossplane.io
            version: v1
          - displayName: ControllerConfig
            kind: ControllerConfig
            name: controllerconfigs.pkg.crossplane.io
            version: v1alpha1
          - displayName: Lock
            kind: Lock
            name: locks.pkg.crossplane.io
            version: v1alpha1
          - displayName: ProviderRevision
            kind: ProviderRevision
            name: providerrevisions.pkg.crossplane.io
            version: v1
          - displayName: Provider
            kind: Provider
            name: providers.pkg.crossplane.io
            version: v1
        description: |
          ## Overview

          Upbound Universal Crossplane (UXP) is [Upbound's][upbound] official
          enterprise-grade distribution of [Crossplane][crossplane]. It's fully compatible
          with upstream Crossplane, open source, capable of connecting to Upbound Cloud
          for real-time dashboard visibility, and maintained by Upbound. It's the easiest
          way for both individual community members and enterprises to build their
          production control planes.

          ## Quick Start

          1. Install the [Upbound CLI][upbound-cli].
              ```console
              curl -sL https://cli.upbound.io | sh
              # Install with Homebrew
              brew install upbound/tap/up
              ```

          2. [Create an Upbound account][create-account] for a free dashboard for UXP.

          3. Connect UXP to Upbound Cloud.
              ```console
              # The name of your new UXP control plane.
              UXP_NAME=mycrossplane

              up cloud login
              up cloud controlplane attach ${UXP_NAME} | up uxp connect -
              ```

          4. Manage your UXP control plane by [signing in][login] to your Upbound account.

          ## Additional Resources

          - The [UXP Documentation][uxp-documentation] provides additional information
            about UXP and resources for developers, like examples.
          - The [developer guide][developer-guide] describes how to build and run UXP
            locally from source.
          - [UXP Slack][uxp-slack] is where you can go to get all of your UXP questions
            answered.

          [upbound]: https://upbound.io
          [crossplane]: https://crossplane.io/
          [upbound-cli]: https://github.com/upbound/up
          [create-account]: https://cloud.upbound.io/register
          [login]: https://cloud.upbound.io/login
          [uxp-documentation]: https://cloud.upbound.io/docs/uxp
          [developer-guide]: https://github.com/upbound/universal-crossplane/blob/main/docs/developer-guide.md
          [uxp-slack]: https://crossplane.slack.com/archives/upbound
        displayName: Upbound Universal Crossplane (UXP)
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - infrastructure
        - services
        - application
        - database
        - cache
        - bucket
        - infra
        - app
        - ops
        - oam
        - gcp
        - azure
        - aws
        - alibaba
        - cloudsql
        - rds
        - s3
        - azuredatabase
        - asparadb
        - gke
        - aks
        - eks
        links:
        - name: GitHub
          url: https://github.com/upbound/universal-crossplane
        - name: Website
          url: https://upbound.io
        - name: Twitter
          url: https://twitter.com/upbound_io
        - name: Slack
          url: https://slack.crossplane.io/
        maintainers:
        - email: info@upbound.io
          name: Upbound Inc.
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Upbound Inc.
          url: https://upbound.io
        relatedImages:
        - upbound/crossplane:v1.5.1-up.1
        - upbound/uxp-bootstrapper:v1.5.1-up.1
        - upbound/xgql:v0.1.5
        - quay.io/openshift-community-operators/universal-crossplane@sha256:b3104adb471083de96d49fa53f663dcf0e3e7ff5e3573bb1422aa6045277bea0
        version: 1.5.1-up.1
      entries:
      - name: universal-crossplane.1.5.1-up.1
        version: 1.5.1-up.1
      - name: universal-crossplane.1.4.3-up.1
        version: 1.4.3-up.1
      - name: universal-crossplane.1.3.3-up.1
        version: 1.3.3-up.1
      - name: universal-crossplane.1.3.1-up.1
        version: 1.3.1-up.1
      - name: universal-crossplane.1.2.3-up.1
        version: 1.2.3-up.1
      - name: universal-crossplane.1.2.2-up.1
        version: 1.2.2-up.1
      - name: universal-crossplane.1.2.1-up.4
        version: 1.2.1-up.4
      - name: universal-crossplane.1.2.1-up.3
        version: 1.2.1-up.3
      name: stable
    defaultChannel: stable
    packageName: universal-crossplane
    provider:
      name: Upbound Inc.
      url: https://upbound.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: oadp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: oadp-operator.v0.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "Velero",
                "metadata": {
                  "name": "example-velero",
                  "namespace":"openshift-adp"
                },
                "spec": {
                  "backupStorageLocations": [
                    {
                      "config": {
                        "profile": "default",
                        "region": "us-east-1"
                      },
                      "name": "default",
                      "objectStorage": {
                        "bucket": "myBucket",
                        "prefix": "velero"
                      },
                      "provider": "aws"
                    }
                  ],
                  "defaultVeleroPlugins": [
                    "aws",
                    "csi",
                    "openshift"
                  ],
                  "veleroFeatureFlags": [
                    "EnableCSI"
                  ],
                  "enableRestic": true,
                  "volumeSnapshotLocations": [
                    {
                      "config": {
                        "profile": "default",
                        "region": "us-west-1"
                      },
                      "name": "default",
                      "provider": "aws"
                    }
                  ]
                }
               },
                {
                  "apiVersion": "velero.io/v1",
                  "kind": "Backup",
                  "metadata": {
                    "name": "backup",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "BackupStorageLocation",
                  "metadata": {
                    "name": "backupstoragelocation",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "DeleteBackupRequest",
                  "metadata": {
                    "name": "deletebackuprequest",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "DownloadRequest",
                  "metadata": {
                    "name": "downloadrequest",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "PodVolumeBackup",
                  "metadata": {
                    "name": "podvolumebackup",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "PodVolumeRestore",
                  "metadata": {
                    "name": "podvolumerestore",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "ResticRepository",
                  "metadata": {
                    "name": "resticrepository",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "Restore",
                  "metadata": {
                    "name": "restore",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "Schedule",
                  "metadata": {
                    "name": "schedule",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "ServerStatusRequest",
                  "metadata": {
                    "name": "serverstatusrequest",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "velero.io/v1",
                  "kind": "VolumeSnapshotLocation",
                  "metadata": {
                    "name": "volumesnapshotlocation",
                    "namespace": "openshift-adp"
                  },
                  "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/konveyor/oadp-operator@sha256:ecb8534fbc245e890b9c7766946d01e1a8b4ce9be359c4ada4c95fd908b679b3
          createdAt: "2020-09-08T12:21:00Z"
          description: |-
            OADP (OpenShift API for Data Protection) operator sets up and installs
            Velero on the OpenShift platform.
          olm.skipRange: '>=0.0.0 <0.4.2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-adp
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          repository: https://github.com/openshift/oadp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Velero is a tool to safely backup and restore, perform disaster
              recovery and migrate Kubernetes cluster resources and persistent volumes.
            displayName: Velero
            kind: Velero
            name: veleroes.oadp.openshift.io
            version: v1alpha1
          - description: BackupStorageLocation represents an object storage location
              (Such as Amazon S3 Bucket) where Velero stores backup objects.
            displayName: BackupStorageLocation
            kind: BackupStorageLocation
            name: backupstoragelocations.velero.io
            version: v1
          - description: Backup is a Velero resource that respresents the capture
              of Kubernetes cluster state at a point in time (API objects and associated
              volume state).
            displayName: Backup
            kind: Backup
            name: backups.velero.io
            version: v1
          - description: DeleteBackupRequest is a request to delete one or more backups.
            displayName: DeleteBackupRequest
            kind: DeleteBackupRequest
            name: deletebackuprequests.velero.io
            version: v1
          - description: DownloadRequest is a request to download an artifact from
              object storage such as a backup log file.
            displayName: DownloadRequest
            kind: DownloadRequest
            name: downloadrequests.velero.io
            version: v1
          - description: A velero pod volume backup is a restic backup of persistent
              volumes attached to a running pod.
            displayName: PodVolumeBackup
            kind: PodVolumeBackup
            name: podvolumebackups.velero.io
            version: v1
          - description: A velero pod volume restore is a restic restore of persistent
              volumes attached to a running pod.
            displayName: PodVolumeRestore
            kind: PodVolumeRestore
            name: podvolumerestores.velero.io
            version: v1
          - description: A restic repository is an indicator of a connection from
              the restic server to the backupstoragelocation.
            displayName: ResticRepository
            kind: ResticRepository
            name: resticrepositories.velero.io
            version: v1
          - description: Restore is a Velero resource that represents the application
              of resources from a Velero backup to a target Kubernetes cluster.
            displayName: Restore
            kind: Restore
            name: restores.velero.io
            version: v1
          - description: Schedule is a Velero resource that represents a pre-scheduled
              or periodic Backup that should be run.
            displayName: Schedule
            kind: Schedule
            name: schedules.velero.io
            version: v1
          - description: ServerStatusRequest is a request to access current status
              information about the Velero server.
            displayName: ServerStatusRequest
            kind: ServerStatusRequest
            name: serverstatusrequests.velero.io
            version: v1
          - description: VolumeSnapshotLocation is a location where Velero stores
              volume snapshots.
            displayName: VolumeSnapshotLocation
            kind: VolumeSnapshotLocation
            name: volumesnapshotlocations.velero.io
            version: v1
        description: OADP (OpenShift API for Data Protection) operator sets up and
          installs Velero on the OpenShift platform.
        displayName: OADP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - velero
        - openshift
        - oadp
        links:
        - name: OADP Operator
          url: https://oadp.konveyor.io/
        maintainers:
        - email: dymurray@redhat.com
          name: Dylan Murray
        - email: spampatt@redhat.com
          name: Shubham Dilip Pampattiwar
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/konveyor/velero-plugin-for-microsoft-azure@sha256:62a344e5cf196e55dae92e537648987d758ccc75985bc45e9be6d0646a9e64d0
        - quay.io/konveyor/velero-restic-restore-helper@sha256:c4d12829e42cabe70b662a659875900677dfb415f912f931c3bf4c09a26aed5b
        - quay.io/openshift-community-operators/oadp-operator@sha256:f8c5c6e59f13db8847080ea6d964da6e50e56f7d373bcc4e4278b1a8a80395e4
        - quay.io/konveyor/openshift-velero-plugin@sha256:aec8b4fc66cfcebd5a35ce99d8c985453ebf25c11453d30256089a8b425990b5
        - quay.io/konveyor/velero-plugin-for-gcp@sha256:3300458b1d6c1514dca7d24353ad03bd92db396b2a29f7d3522563160a5f5219
        - quay.io/konveyor/velero@sha256:e7865cc707664eb6ee767e77ccd933420604c2562736b53e16c8043a51df9d86
        - quay.io/konveyor/registry@sha256:b74ab3278b79eb89f99b6970c6aa0f5306221a8495b5496faad6cab2f74ff2cd
        - quay.io/konveyor/velero-plugin-for-aws@sha256:2197c6fef32910747526d33c1462b75cb7940aeace65791d0a5ddaa038480e52
        - quay.io/konveyor/oadp-operator@sha256:ecb8534fbc245e890b9c7766946d01e1a8b4ce9be359c4ada4c95fd908b679b3
        - quay.io/konveyor/velero-plugin-for-csi@sha256:5c2261effc902d8baa16e38265f9ad1fbe5284a3e6abd2bbc97761c161fa92cf
        version: 0.4.2
      entries:
      - name: oadp-operator.v0.4.2
        version: 0.4.2
      - name: oadp-operator.v0.4.1
        version: 0.4.1
      - name: oadp-operator.v0.4.0
        version: 0.4.0
      - name: oadp-operator.v0.3.0
        version: 0.3.0
      name: beta
    - currentCSV: oadp-operator.v0.5.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "DataProtectionApplication",
                "metadata": {
                  "name": "velero-sample"
                },
                "spec": {
                  "backupLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-east-1"
                        },
                        "credential": {
                          "key": "cloud",
                          "name": "cloud-credentials"
                        },
                        "default": true,
                        "objectStorage": {
                          "bucket": "my-bucket-name",
                          "prefix": "velero"
                        },
                        "provider": "aws"
                      }
                    }
                  ],
                  "configuration": {
                    "restic": {
                      "enable": true
                    },
                    "velero": {
                      "defaultPlugins": [
                        "openshift",
                        "aws"
                      ]
                    }
                  },
                  "snapshotLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-west-2"
                        },
                        "provider": "aws"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "BackupStorageLocation",
                "metadata": {
                  "name": "backupstoragelocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DeleteBackupRequest",
                "metadata": {
                  "name": "deletebackuprequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DownloadRequest",
                "metadata": {
                  "name": "downloadrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeBackup",
                "metadata": {
                  "name": "podvolumebackup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeRestore",
                "metadata": {
                  "name": "podvolumerestore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "ResticRepository",
                "metadata": {
                  "name": "resticrepository",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Schedule",
                "metadata": {
                  "name": "schedule",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "ServerStatusRequest",
                "metadata": {
                  "name": "serverstatusrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "VolumeSnapshotLocation",
                "metadata": {
                  "name": "volumesnapshotlocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/konveyor/oadp-operator@sha256:90609044d52173619ea1e63ddef0ef3e7c1c939ac737b64bd427cbed5374dd27
          createdAt: "2020-09-08T12:21:00Z"
          description: |-
            OADP (OpenShift API for Data Protection) operator sets up and installs
            Velero on the OpenShift platform.
          olm.skipRange: '>=0.0.0 <0.5.6'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-adp
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/oadp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is a Velero resource that respresents the capture
              of Kubernetes cluster state at a point in time (API objects and associated
              volume state).
            displayName: Backup
            kind: Backup
            name: backups.velero.io
            version: v1
          - description: BackupStorageLocation represents an object storage location
              (Such as Amazon S3 Bucket) where Velero stores backup objects.
            displayName: BackupStorageLocation
            kind: BackupStorageLocation
            name: backupstoragelocations.velero.io
            version: v1
          - kind: CloudStorage
            name: cloudstorages.oadp.openshift.io
            version: v1alpha1
          - description: DataProtectionApplication represents configuration to install
              a data protection application to safely backup and restore, perform
              disaster recovery and migrate Kubernetes cluster resources and persistent
              volumes.
            displayName: DataProtectionApplication
            kind: DataProtectionApplication
            name: dataprotectionapplications.oadp.openshift.io
            version: v1alpha1
          - description: DeleteBackupRequest is a request to delete one or more backups.
            displayName: DeleteBackupRequest
            kind: DeleteBackupRequest
            name: deletebackuprequests.velero.io
            version: v1
          - description: DownloadRequest is a request to download an artifact from
              object storage such as a backup log file.
            displayName: DownloadRequest
            kind: DownloadRequest
            name: downloadrequests.velero.io
            version: v1
          - description: A velero pod volume backup is a restic backup of persistent
              volumes attached to a running pod.
            displayName: PodVolumeBackup
            kind: PodVolumeBackup
            name: podvolumebackups.velero.io
            version: v1
          - description: A velero pod volume restore is a restic restore of persistent
              volumes attached to a running pod.
            displayName: PodVolumeRestore
            kind: PodVolumeRestore
            name: podvolumerestores.velero.io
            version: v1
          - description: A restic repository is an indicator of a connection from
              the restic server to the backupstoragelocation.
            displayName: ResticRepository
            kind: ResticRepository
            name: resticrepositories.velero.io
            version: v1
          - description: Restore is a Velero resource that represents the application
              of resources from a Velero backup to a target Kubernetes cluster.
            displayName: Restore
            kind: Restore
            name: restores.velero.io
            version: v1
          - description: Schedule is a Velero resource that represents a pre-scheduled
              or periodic Backup that should be run.
            displayName: Schedule
            kind: Schedule
            name: schedules.velero.io
            version: v1
          - description: ServerStatusRequest is a request to access current status
              information about the Velero server.
            displayName: ServerStatusRequest
            kind: ServerStatusRequest
            name: serverstatusrequests.velero.io
            version: v1
          - description: VolumeSnapshotLocation is a location where Velero stores
              volume snapshots.
            displayName: VolumeSnapshotLocation
            kind: VolumeSnapshotLocation
            name: volumesnapshotlocations.velero.io
            version: v1
        description: OADP (OpenShift API for Data Protection) operator sets up and
          installs Data Protection Applications on the OpenShift platform.
        displayName: OADP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - velero
        - openshift
        - oadp
        links:
        - name: OADP Operator
          url: https://oadp.konveyor.io/
        maintainers:
        - email: dymurray@redhat.com
          name: Dylan Murray
        - email: spampatt@redhat.com
          name: Shubham Dilip Pampattiwar
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/konveyor/velero@sha256:0ea5336dcbf0a1fab561697b24da01a0e5b533ee23553fbfd5f8e002f5a31c3e
        - quay.io/konveyor/velero-restic-restore-helper@sha256:c16248d027c09cd5b7360ae38484df88ca1cc01f9e470e3eade95076ee1a6b84
        - quay.io/konveyor/registry@sha256:1be970879206258335357e3cf630138c24b8a5ccab35aae05eccb260e5e8ffb4
        - quay.io/konveyor/velero-plugin-for-csi@sha256:8c36ccfd294dafc415a7f113770cbbd66dbf6ecf8fef3bc4e73adc9878c606b0
        - quay.io/konveyor/velero-plugin-for-microsoft-azure@sha256:2d0089cbe715b482fb42e1acd9add70b975a8575636d8b143e6f90cef317ea13
        - quay.io/openshift-community-operators/oadp-operator@sha256:b7b4d340157513da2ebef6bc7bc262967d0e825e2baa1f2bc2ab2e170457e015
        - quay.io/konveyor/oadp-operator@sha256:90609044d52173619ea1e63ddef0ef3e7c1c939ac737b64bd427cbed5374dd27
        - quay.io/konveyor/openshift-velero-plugin@sha256:221ab0bcd1d95fc166ef7319d187e196b59d2fbf9eefd29d91bd6435d45b5c3c
        - quay.io/konveyor/velero-plugin-for-aws@sha256:1e8bc27d6b60000e1406085d582910cb530af3fb901ef9bc780628df6c766288
        - quay.io/konveyor/velero-plugin-for-gcp@sha256:ee463ed2a8019c560961b118f8a87b587ed302f24fd25480c5d4ddad2557e92f
        version: 0.5.6
      entries:
      - name: oadp-operator.v0.5.6
        version: 0.5.6
      - name: oadp-operator.v0.5.5
        version: 0.5.5
      - name: oadp-operator.v0.5.4
        version: 0.5.4
      - name: oadp-operator.v0.5.3
        version: 0.5.3
      - name: oadp-operator.v0.5.2
        version: 0.5.2
      - name: oadp-operator.v0.5.1
        version: 0.5.1
      - name: oadp-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: oadp-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: quay-bridge-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: quay-bridge-operator.v3.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "my-quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecretName": "<NAMESPACE>/<SECRET>",
                  "quayHostname": "https://<QUAY_URL>",
                  "insecureRegistry": false,
                  "whitelistNamespaces": ["default"]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:501fe9b003b5066b3936def0ef4de05abd1a12e795e718d6c9a62d2c6c804c2e
          createdAt: 2021-11-02 11:11 UTC
          description: Enhance OCP using Red Hat Quay container registry
          repository: https://github.com/redhat-cop/quay-openshift-registry-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a connected Quay instance.
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.redhatcop.redhat.io
            version: v1alpha1
        description: "## Overview\n\nThe OpenShift Container Platform contains an
          in cluster image registry for pushing and pulling images that either produced
          within the cluster or are references from external sources. Quay is a highly
          available, enterprise grade image registry with enhanced role based access
          control (RBAC) features. The goal of this operator is to support replicating
          the features found within OpenShift intgrated image registry with Quay.\n\n##
          Functionality\n\nThe following capabilities are enabled through this operator:\n\n*
          Synchronization of OpenShift namespaces as Quay organizations\n    * Creation
          of Robot accounts for each default namespace service account\n    * Creation
          of Secrets for each created Robot Account\n        * Associate Robot Secret
          to Service Account as Mountable and Image Pull Secret\n    * Synchronization
          of OpenShift ImageStreams as Quay Repositories\n* Automatically rewrite
          new Builds making use of ImageStreams to output to Quay\n* Automatically
          import ImageStream tag once build completes\n\n## Prerequisites\n\nThe following
          requirements must be satisfied prior to setting and configuring the integration
          between OpenShift and Quay:\n\n* A Red Hat Quay environment with a user
          with superuser permissions\n* A Red Hat OpenShift Container Platform environment
          (at least version 4.0) with cluster-admin permissions on an OpenShift cluster
          \n*\tOpenShift Command Line tool (CLI)\n\n## Setup and Configuration\n\nThe
          setup process involves steps within both Quay and OpenShift as described
          below:\n\n### Quay Setup\n\nThe integration between OpenShift and Quay makes
          extensive use of the Quay RESTFul API. To allow for other methods aside
          from user credentials to be used for authenticating against the API, an
          application is required to be created. When an application is created, an
          OAuth token is generated which can be used by the operator in OpenShift.
          Applications are created within a Quay organization. While an existing organization
          can be utilized, it is recommended that a dedicated organization be used.\n\n1.\tLogin
          to Quay as a user with superuser access and select the organization for
          which the external application will be configured within.\n2.\tOn the left
          hand side of the page, select **Applications**\n3.\tCreate a new application
          by selecting the **Create New Application** button and entering a name for
          the application\n4.\tAfter the new application has been created, select
          the application that was created\n5.\tOn the lefthand navigation bar, select
          the **Generate Token** button to create a new OAuth2 token\n6.\tSelect all
          of the checkboxes to grant the necessary access that is needed for the integration\n7.\tReview
          the permissions that will be assigned and then select the **Authorize Application**
          button\n8.\tTake note of the generated Access Token as it will be needed
          in the following section\n\n### OpenShift Setup\n\nTo complete the process
          to begin to integrate OpenShift and Quay, several steps are required. Before
          beginning, ensure that you have the OpenShift Command Line tool installed
          and that you are logged into OpenShift as a cluster administrator. \n\n####
          Create A Secret for the Quay OAuth Token\n\nThe Operator will use the previously
          obtained Access Token to communicate with Quay. Store this token within
          OpenShift as a secret.\n\nExecute the following command to create a secret
          called `quay-integration` with a key called `token` containing the access
          token:\n\n```\n$ oc create secret generic quay-integration --from-literal=token=<access_token>\n```\n\nThis
          token will be referenced in the final section.\n\n#### MutatingWebhookConfiguration
          Support\n\nSupport for dynamic interception of API requests that are performed
          as part of OpenShift’s typical build process is facilitated through a [MutatingWebhookConfiguration](https://docs.openshift.com/container-platform/3.11/architecture/additional_concepts/dynamic_admission_controllers.html).
          A MutatingWebhookConfiguration allows for invoking an API running within
          a project on OpenShift when certain API requests are received. In particular,
          to support Quay’s integration with OpenShift, any new Build requests should
          be intercepted so that the output can be modified to target Quay instead
          of OpenShift’s integrated registry. \n\nKubernetes requires that the webhook
          endpoint is secured via SSL using a certificate that makes use of the certificate
          authority for the cluster. Fortunately, OpenShift provides support for generating
          a certificate signed by the cluster. A script is available in the documentation
          called `webhook-create-signed-cert.sh` that automates the process for requesting
          a new certificate.\n\nFirst, create a `Service` for the Operator's webhook
          endpoint:\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  labels:\n
          \   name: quay-bridge-operator\n  name: quay-bridge-operator\n  namespace:
          openshift-operators\nspec:\n  ports:\n    - name: https\n      port: 443\n
          \     protocol: TCP\n      targetPort: 8443\n  selector:\n    name: quay-bridge-operator\n
          \ sessionAffinity: None\n  type: ClusterIP\n```\n\nExecute the following
          command to request the certificate:\n\n```\n./webhook-create-signed-cert.sh
          --namespace openshift-operators --secret quay-bridge-operator-webhook-certs
          --service quay-bridge-operator\n```\n\nThe result will place the newly created
          private key and certificate within a secret within the secret specified.
          The secret will be mounted into the appropriate located within the operator
          as declared in the Deployment of the Operator. \n\nOnce the secret has been
          created, focus can shift to the `MutatingWebhookConfiguration` (see below).
          The majority of the content should be in place to apply to the cluster.
          The one section that requires configuration is the caBundle property. This
          refers to the Certificate Authority (CA) for the OpenShift environment.
          The OpenShift CA is available as a _ConfigMap_ within the `kube-system`
          namespace.\n\nExecute the following command to retrieve the CA and format
          the result as a single line so that it can be entered into the MutatingWebhookConfiguration
          resource:\n\n```\noc get configmap -n kube-system extension-apiserver-authentication
          -o=jsonpath='{.data.client-ca-file}' | base64 | tr -d '\\n'\n```\n\nReplace
          the `${CA_BUNDLE}` variable in the following `MutatingWebhookConfiguration`
          YAML and create it:\n\n```yaml\napiVersion: admissionregistration.k8s.io/v1\nkind:
          MutatingWebhookConfiguration \nmetadata:\n  name: quay-bridge-operator\nwebhooks:\n
          \ - name: quayintegration.redhatcop.redhat.io\n    clientConfig: \n      service:\n
          \       namespace: openshift-operators\n        name: quay-bridge-operator\n
          \       path: \"/admissionwebhook\"\n      caBundle: \"${CA_BUNDLE}\"\n
          \   rules: \n    - operations:  [ \"CREATE\" ]\n      apiGroups: [ \"build.openshift.io\"
          ]\n      apiVersions: [\"v1\" ]\n      resources: [ \"builds\" ]\n    failurePolicy:
          Fail\n```\n\n_Note: Until the operator is running, new requests for builds
          will fail since the webserver the MutatingWebhookConfiguration invokes is
          not available and a proper is response is required in order for the object
          to be persisted in etcd._\n\n#### Create the QuayIntegration Custom Resource\n\nFinally,
          to complete the integration between OpenShift and Quay, a `QuayIntegration`
          custom resource needs to be created.\n\nThe following is an example of a
          basic definition of a `QuayIntegration` resource associated from the associated
          CRD.\n\n```\napiVersion: redhatcop.redhat.io/v1alpha1\nkind: QuayIntegration\nmetadata:\n
          \ name: example-quayintegration\nspec:\n  clusterID: openshift\n  credentialsSecretName:
          <NAMESPACE>/<SECRET>\n  quayHostname: https://<QUAY_URL>\n```\n\nThe _clusterID_
          is a value which should be unique across the entire ecosystem. This value
          is optional and defaults to `openshift`.\n\nThe _credentialsSecretName_
          is a NamespacedName value of the secret containing the token that was previously
          created.\n\nNote: If Quay is using self signed certificates, the property
          `insecureRegistry: true`\n\nOrganizations within Quay should be created
          for the related namespaces in OpenShift."
        displayName: Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Source Code
          url: https://github.com/redhat-cop/quay-openshift-registry-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:4478b8a78bdde23e0d40476f8ad9e4bf0628fba7603a390e8de7e6a319abc1ec
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:501fe9b003b5066b3936def0ef4de05abd1a12e795e718d6c9a62d2c6c804c2e
        version: 3.4.7
      entries:
      - name: quay-bridge-operator.v3.4.7
        version: 3.4.7
      name: quay-v3.4
    - currentCSV: quay-bridge-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "my-quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecretName": "<NAMESPACE>/<SECRET>",
                  "quayHostname": "https://<QUAY_URL>",
                  "insecureRegistry": false,
                  "whitelistNamespaces": ["default"]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9149df5ffc83dce6593072b7f72805e07e700b84527e45b4b7486b9c38f70731
          createdAt: 2021-09-15 23:09 UTC
          description: Enhance OCP using Red Hat Quay container registry
          olm.skipRange: '>=3.4.x <3.5.7'
          repository: https://github.com/redhat-cop/quay-openshift-registry-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a connected Quay instance.
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.redhatcop.redhat.io
            version: v1alpha1
        description: "## Overview\n\nThe OpenShift Container Platform contains an
          in cluster image registry for pushing and pulling images that either produced
          within the cluster or are references from external sources. Quay is a highly
          available, enterprise grade image registry with enhanced role based access
          control (RBAC) features. The goal of this operator is to support replicating
          the features found within OpenShift intgrated image registry with Quay.\n\n##
          Functionality\n\nThe following capabilities are enabled through this operator:\n\n*
          Synchronization of OpenShift namespaces as Quay organizations\n    * Creation
          of Robot accounts for each default namespace service account\n    * Creation
          of Secrets for each created Robot Account\n        * Associate Robot Secret
          to Service Account as Mountable and Image Pull Secret\n    * Synchronization
          of OpenShift ImageStreams as Quay Repositories\n* Automatically rewrite
          new Builds making use of ImageStreams to output to Quay\n* Automatically
          import ImageStream tag once build completes\n\n## Prerequisites\n\nThe following
          requirements must be satisfied prior to setting and configuring the integration
          between OpenShift and Quay:\n\n* A Red Hat Quay environment with a user
          with superuser permissions\n* A Red Hat OpenShift Container Platform environment
          (at least version 4.0) with cluster-admin permissions on an OpenShift cluster
          \n*\tOpenShift Command Line tool (CLI)\n\n## Setup and Configuration\n\nThe
          setup process involves steps within both Quay and OpenShift as described
          below:\n\n### Quay Setup\n\nThe integration between OpenShift and Quay makes
          extensive use of the Quay RESTFul API. To allow for other methods aside
          from user credentials to be used for authenticating against the API, an
          application is required to be created. When an application is created, an
          OAuth token is generated which can be used by the operator in OpenShift.
          Applications are created within a Quay organization. While an existing organization
          can be utilized, it is recommended that a dedicated organization be used.\n\n1.\tLogin
          to Quay as a user with superuser access and select the organization for
          which the external application will be configured within.\n2.\tOn the left
          hand side of the page, select **Applications**\n3.\tCreate a new application
          by selecting the **Create New Application** button and entering a name for
          the application\n4.\tAfter the new application has been created, select
          the application that was created\n5.\tOn the lefthand navigation bar, select
          the **Generate Token** button to create a new OAuth2 token\n6.\tSelect all
          of the checkboxes to grant the necessary access that is needed for the integration\n7.\tReview
          the permissions that will be assigned and then select the **Authorize Application**
          button\n8.\tTake note of the generated Access Token as it will be needed
          in the following section\n\n### OpenShift Setup\n\nTo complete the process
          to begin to integrate OpenShift and Quay, several steps are required. Before
          beginning, ensure that you have the OpenShift Command Line tool installed
          and that you are logged into OpenShift as a cluster administrator. \n\n####
          Create A Secret for the Quay OAuth Token\n\nThe Operator will use the previously
          obtained Access Token to communicate with Quay. Store this token within
          OpenShift as a secret.\n\nExecute the following command to create a secret
          called `quay-integration` with a key called `token` containing the access
          token:\n\n```\n$ oc create secret generic quay-integration --from-literal=token=<access_token>\n```\n\nThis
          token will be referenced in the final section.\n\n#### MutatingWebhookConfiguration
          Support\n\nSupport for dynamic interception of API requests that are performed
          as part of OpenShift’s typical build process is facilitated through a [MutatingWebhookConfiguration](https://docs.openshift.com/container-platform/3.11/architecture/additional_concepts/dynamic_admission_controllers.html).
          A MutatingWebhookConfiguration allows for invoking an API running within
          a project on OpenShift when certain API requests are received. In particular,
          to support Quay’s integration with OpenShift, any new Build requests should
          be intercepted so that the output can be modified to target Quay instead
          of OpenShift’s integrated registry. \n\nKubernetes requires that the webhook
          endpoint is secured via SSL using a certificate that makes use of the certificate
          authority for the cluster. Fortunately, OpenShift provides support for generating
          a certificate signed by the cluster. A script is available in the documentation
          called `webhook-create-signed-cert.sh` that automates the process for requesting
          a new certificate.\n\nFirst, create a `Service` for the Operator's webhook
          endpoint:\n```yaml\napiVersion: v1\nkind: Service\nmetadata:\n  labels:\n
          \   name: quay-bridge-operator\n  name: quay-bridge-operator\n  namespace:
          openshift-operators\nspec:\n  ports:\n    - name: https\n      port: 443\n
          \     protocol: TCP\n      targetPort: 8443\n  selector:\n    name: quay-bridge-operator\n
          \ sessionAffinity: None\n  type: ClusterIP\n```\n\nExecute the following
          command to request the certificate:\n\n```\n./webhook-create-signed-cert.sh
          --namespace openshift-operators --secret quay-bridge-operator-webhook-certs
          --service quay-bridge-operator\n```\n\nThe result will place the newly created
          private key and certificate within a secret within the secret specified.
          The secret will be mounted into the appropriate located within the operator
          as declared in the Deployment of the Operator. \n\nOnce the secret has been
          created, focus can shift to the `MutatingWebhookConfiguration` (see below).
          The majority of the content should be in place to apply to the cluster.
          The one section that requires configuration is the caBundle property. This
          refers to the Certificate Authority (CA) for the OpenShift environment.
          The OpenShift CA is available as a _ConfigMap_ within the `kube-system`
          namespace.\n\nExecute the following command to retrieve the CA and format
          the result as a single line so that it can be entered into the MutatingWebhookConfiguration
          resource:\n\n```\noc get configmap -n kube-system extension-apiserver-authentication
          -o=jsonpath='{.data.client-ca-file}' | base64 | tr -d '\\n'\n```\n\nReplace
          the `${CA_BUNDLE}` variable in the following `MutatingWebhookConfiguration`
          YAML and create it:\n\n```yaml\napiVersion: admissionregistration.k8s.io/v1\nkind:
          MutatingWebhookConfiguration \nmetadata:\n  name: quay-bridge-operator\nwebhooks:\n
          \ - name: quayintegration.redhatcop.redhat.io\n    clientConfig: \n      service:\n
          \       namespace: openshift-operators\n        name: quay-bridge-operator\n
          \       path: \"/admissionwebhook\"\n      caBundle: \"${CA_BUNDLE}\"\n
          \   rules: \n    - operations:  [ \"CREATE\" ]\n      apiGroups: [ \"build.openshift.io\"
          ]\n      apiVersions: [\"v1\" ]\n      resources: [ \"builds\" ]\n    failurePolicy:
          Fail\n    sideEffects: None\n    admissionReviewVersions: [v1beta1]\n    matchPolicy:
          Exact\n    timeoutSeconds: 30  \n```\n\n_Note: Until the operator is running,
          new requests for builds will fail since the webserver the MutatingWebhookConfiguration
          invokes is not available and a proper is response is required in order for
          the object to be persisted in etcd._\n\n#### Create the QuayIntegration
          Custom Resource\n\nFinally, to complete the integration between OpenShift
          and Quay, a `QuayIntegration` custom resource needs to be created.\n\nThe
          following is an example of a basic definition of a `QuayIntegration` resource
          associated from the associated CRD.\n\n```\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          QuayIntegration\nmetadata:\n  name: example-quayintegration\nspec:\n  clusterID:
          openshift\n  credentialsSecretName: <NAMESPACE>/<SECRET>\n  quayHostname:
          https://<QUAY_URL>\n```\n\nThe _clusterID_ is a value which should be unique
          across the entire ecosystem. This value is optional and defaults to `openshift`.\n\nThe
          _credentialsSecretName_ is a NamespacedName value of the secret containing
          the token that was previously created.\n\nNote: If Quay is using self signed
          certificates, the property `insecureRegistry: true`\n\nOrganizations within
          Quay should be created for the related namespaces in OpenShift."
        displayName: Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Source Code
          url: https://github.com/redhat-cop/quay-openshift-registry-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:6c2ab763239f6e5a2a72890120bf1f20f6277850cec59a7e11cea2b6a06f12e8
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9149df5ffc83dce6593072b7f72805e07e700b84527e45b4b7486b9c38f70731
        version: 3.5.7
      entries:
      - name: quay-bridge-operator.v3.5.7
        version: 3.5.7
      name: quay-v3.5
    - currentCSV: quay-bridge-operator.v3.10.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:c8dad99f3b281a8ab882d819e6262b86c8bda4d5de759f8095cf58c39a992608
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.7.x <3.10.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.10.17
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:8b475114a5f77f7c041509a30246769a5f9064510724c8fc99ac29164dc3a0bb
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:c8dad99f3b281a8ab882d819e6262b86c8bda4d5de759f8095cf58c39a992608
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        version: 3.10.17
      entries:
      - name: quay-bridge-operator.v3.10.17
        version: 3.10.17
      - name: quay-bridge-operator.v3.10.16
        version: 3.10.16
      - name: quay-bridge-operator.v3.10.15
        version: 3.10.15
      - name: quay-bridge-operator.v3.10.14
        version: 3.10.14
      - name: quay-bridge-operator.v3.10.13
        version: 3.10.13
      - name: quay-bridge-operator.v3.10.12
        version: 3.10.12
      - name: quay-bridge-operator.v3.10.11
        version: 3.10.11
      - name: quay-bridge-operator.v3.10.10
        version: 3.10.10
      - name: quay-bridge-operator.v3.10.9
        version: 3.10.9
      - name: quay-bridge-operator.v3.10.8
        version: 3.10.8
      - name: quay-bridge-operator.v3.10.7
        version: 3.10.7
      - name: quay-bridge-operator.v3.10.6
        version: 3.10.6
      - name: quay-bridge-operator.v3.10.5
        version: 3.10.5
      - name: quay-bridge-operator.v3.10.4
        version: 3.10.4
      - name: quay-bridge-operator.v3.10.3
        version: 3.10.3
      - name: quay-bridge-operator.v3.10.2
        version: 3.10.2
      - name: quay-bridge-operator.v3.10.1
        version: 3.10.1
      - name: quay-bridge-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: quay-bridge-operator.v3.11.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:511f8471db70e8d5fd9d0b547c73f1416bbac6f0fe6cdeb6c59a9ef8bd845ac2
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.8.x <3.11.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.11.13
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:56653df97e4498ecd67b9645d75e44f65c625594e312dbcf0f09937b57d76010
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:2b6b1a0b56cfb348ed4035b13d31501ff5757c101ed21027b330a7852576b891
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:511f8471db70e8d5fd9d0b547c73f1416bbac6f0fe6cdeb6c59a9ef8bd845ac2
        version: 3.11.13
      entries:
      - name: quay-bridge-operator.v3.11.13
        version: 3.11.13
      - name: quay-bridge-operator.v3.11.12
        version: 3.11.12
      - name: quay-bridge-operator.v3.11.11
        version: 3.11.11
      - name: quay-bridge-operator.v3.11.10
        version: 3.11.10
      - name: quay-bridge-operator.v3.11.9
        version: 3.11.9
      - name: quay-bridge-operator.v3.11.8
        version: 3.11.8
      - name: quay-bridge-operator.v3.11.7
        version: 3.11.7
      - name: quay-bridge-operator.v3.11.6
        version: 3.11.6
      - name: quay-bridge-operator.v3.11.5
        version: 3.11.5
      - name: quay-bridge-operator.v3.11.4
        version: 3.11.4
      - name: quay-bridge-operator.v3.11.3
        version: 3.11.3
      - name: quay-bridge-operator.v3.11.2
        version: 3.11.2
      - name: quay-bridge-operator.v3.11.1
        version: 3.11.1
      - name: quay-bridge-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: quay-bridge-operator.v3.12.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:d817c52045a8f5aeb5baebd15843e9bf4a4097fc8d74ff2aa9108442d8fb922e
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.9.x <3.12.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.12.13
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:0a978bbe91e0e0b8bab6862522f8a0aa8e974b778cc36b83f0781081621c8e23
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:d817c52045a8f5aeb5baebd15843e9bf4a4097fc8d74ff2aa9108442d8fb922e
        version: 3.12.13
      entries:
      - name: quay-bridge-operator.v3.12.13
        version: 3.12.13
      - name: quay-bridge-operator.v3.12.12
        version: 3.12.12
      - name: quay-bridge-operator.v3.12.11
        version: 3.12.11
      - name: quay-bridge-operator.v3.12.10
        version: 3.12.10
      - name: quay-bridge-operator.v3.12.9
        version: 3.12.9
      - name: quay-bridge-operator.v3.12.8
        version: 3.12.8
      - name: quay-bridge-operator.v3.12.7
        version: 3.12.7
      - name: quay-bridge-operator.v3.12.6
        version: 3.12.6
      - name: quay-bridge-operator.v3.12.5
        version: 3.12.5
      - name: quay-bridge-operator.v3.12.4
        version: 3.12.4
      - name: quay-bridge-operator.v3.12.3
        version: 3.12.3
      - name: quay-bridge-operator.v3.12.2
        version: 3.12.2
      - name: quay-bridge-operator.v3.12.1
        version: 3.12.1
      - name: quay-bridge-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: quay-bridge-operator.v3.13.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:ae3b4842a685d900754edcb1f4adc0a11c85d0b6c9b70b2b06ba39e8dc0bb021
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.10.x <3.13.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.13.10
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:bd1a02c47b6c32010fe19de6a994577b2c49ed692606d185d4252bb5ba347ecb
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:ae3b4842a685d900754edcb1f4adc0a11c85d0b6c9b70b2b06ba39e8dc0bb021
        version: 3.13.10
      entries:
      - name: quay-bridge-operator.v3.13.10
        version: 3.13.10
      - name: quay-bridge-operator.v3.13.9
        version: 3.13.9
      - name: quay-bridge-operator.v3.13.8
        version: 3.13.8
      - name: quay-bridge-operator.v3.13.7
        version: 3.13.7
      - name: quay-bridge-operator.v3.13.6
        version: 3.13.6
      - name: quay-bridge-operator.v3.13.5
        version: 3.13.5
      - name: quay-bridge-operator.v3.13.4
        version: 3.13.4
      - name: quay-bridge-operator.v3.13.3
        version: 3.13.3
      - name: quay-bridge-operator.v3.13.2
        version: 3.13.2
      - name: quay-bridge-operator.v3.13.1
        version: 3.13.1
      - name: quay-bridge-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: quay-bridge-operator.v3.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b12f0dfb8fdeae3f521e41fcf60ef118bdfd08ad7f68bd87c5494b067b7c7c58
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.11.x <3.14.5'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.14.5
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b12f0dfb8fdeae3f521e41fcf60ef118bdfd08ad7f68bd87c5494b067b7c7c58
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:73d91324ccc995e9a6db525f194bee340c17dd624ce520c767ea8fcf2346f786
        version: 3.14.5
      entries:
      - name: quay-bridge-operator.v3.14.5
        version: 3.14.5
      - name: quay-bridge-operator.v3.14.4
        version: 3.14.4
      - name: quay-bridge-operator.v3.14.3
        version: 3.14.3
      - name: quay-bridge-operator.v3.14.2
        version: 3.14.2
      - name: quay-bridge-operator.v3.14.1
        version: 3.14.1
      - name: quay-bridge-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: quay-bridge-operator.v3.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b2ac4a48c80209d7bebe8b1b2d066571f99a9f47b78604e47a8300d027941b66
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.12.x <3.15.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.15.2
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:b2ac4a48c80209d7bebe8b1b2d066571f99a9f47b78604e47a8300d027941b66
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a9e10a4aad59f7e01dac0407641e9cb5cd5b8ed21f62ea4b2271f8aede4cbec
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:d29abe14abc67d8836cc6f7656556a0a7fa8f4a8eea3f78e40265b339e7430f5
        version: 3.15.2
      entries:
      - name: quay-bridge-operator.v3.15.2
        version: 3.15.2
      - name: quay-bridge-operator.v3.15.1
        version: 3.15.1
      - name: quay-bridge-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: quay-bridge-operator.v3.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel9@sha256:f37b75957d97126f00126d1a51897b5a54bf063ba868e57d9cff241e732796ff
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.13.x <3.16.0'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.16.0
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:78ff6bc0ebad4768ae769da8bd73d76532ca462ddd70c25680d3bb5b4f2b5fb3
        - registry.redhat.io/quay/quay-bridge-operator-rhel9@sha256:f37b75957d97126f00126d1a51897b5a54bf063ba868e57d9cff241e732796ff
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        version: 3.16.0
      entries:
      - name: quay-bridge-operator.v3.16.0
        version: 3.16.0
      name: stable-3.16
    - currentCSV: quay-bridge-operator.v3.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:0ad7af440c6e00fb578ef40e6d600964324fd94ce7835a28d0ec355b7415093f
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          olm.skipRange: '>=3.3.x <3.6.10'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.6.10
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:99dc6b5af811bb33892c17334dd4e1a7eddc6982d49a793b1789f505e00f49b1
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:f7c4ed28a549fe7414312bd22c2ae140f1f28d30656fb9fb0c8ade05a8f82088
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:0ad7af440c6e00fb578ef40e6d600964324fd94ce7835a28d0ec355b7415093f
        version: 3.6.10
      entries:
      - name: quay-bridge-operator.v3.6.10
        version: 3.6.10
      - name: quay-bridge-operator.v3.6.9
        version: 3.6.9
      - name: quay-bridge-operator.v3.6.8
        version: 3.6.8
      - name: quay-bridge-operator.v3.6.7
        version: 3.6.7
      - name: quay-bridge-operator.v3.6.6
        version: 3.6.6
      - name: quay-bridge-operator.v3.6.5
        version: 3.6.5
      - name: quay-bridge-operator.v3.6.4
        version: 3.6.4
      - name: quay-bridge-operator.v3.6.2
        version: 3.6.2
      - name: quay-bridge-operator.v3.6.1
        version: 3.6.1
      - name: quay-bridge-operator.v3.6.0
        version: 3.6.0
      name: stable-3.6
    - currentCSV: quay-bridge-operator.v3.7.14
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:6a0dd80dc48ad0aaa576b3de78b2b265e29a3c10e4996aa6b8f129592fe20f09
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          olm.skipRange: '>=3.4.x <3.7.14'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.7.14
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:975f287513039b2244894b9031e590f665d48f9af480dfdc4b85d4f96dd4bc37
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:c59956d70416fab0c6d7b3ecd8c9cfa3cf9415f75cfdfe2214f44b0b4aced594
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:6a0dd80dc48ad0aaa576b3de78b2b265e29a3c10e4996aa6b8f129592fe20f09
        version: 3.7.14
      entries:
      - name: quay-bridge-operator.v3.7.14
        version: 3.7.14
      - name: quay-bridge-operator.v3.7.13
        version: 3.7.13
      - name: quay-bridge-operator.v3.7.12
        version: 3.7.12
      - name: quay-bridge-operator.v3.7.11
        version: 3.7.11
      - name: quay-bridge-operator.v3.7.10
        version: 3.7.10
      - name: quay-bridge-operator.v3.7.9
        version: 3.7.9
      - name: quay-bridge-operator.v3.7.8
        version: 3.7.8
      - name: quay-bridge-operator.v3.7.7
        version: 3.7.7
      - name: quay-bridge-operator.v3.7.6
        version: 3.7.6
      - name: quay-bridge-operator.v3.7.5
        version: 3.7.5
      - name: quay-bridge-operator.v3.7.4
        version: 3.7.4
      - name: quay-bridge-operator.v3.7.3
        version: 3.7.3
      - name: quay-bridge-operator.v3.7.2
        version: 3.7.2
      - name: quay-bridge-operator.v3.7.1
        version: 3.7.1
      - name: quay-bridge-operator.v3.7.0
        version: 3.7.0
      name: stable-3.7
    - currentCSV: quay-bridge-operator.v3.8.15
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:f8544a546dd6d209355c3a1cbe35138f6910491fc4584b401634431da4414ec0
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          olm.skipRange: '>=3.5.x <3.8.15'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.8.15
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:975f287513039b2244894b9031e590f665d48f9af480dfdc4b85d4f96dd4bc37
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:7cace73b03bb02202a04b6026eb9f7323610fd0ccd5ba18a6d00fd66577a96b4
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:f8544a546dd6d209355c3a1cbe35138f6910491fc4584b401634431da4414ec0
        version: 3.8.15
      entries:
      - name: quay-bridge-operator.v3.8.15
        version: 3.8.15
      - name: quay-bridge-operator.v3.8.14
        version: 3.8.14
      - name: quay-bridge-operator.v3.8.13
        version: 3.8.13
      - name: quay-bridge-operator.v3.8.12
        version: 3.8.12
      - name: quay-bridge-operator.v3.8.11
        version: 3.8.11
      - name: quay-bridge-operator.v3.8.10
        version: 3.8.10
      - name: quay-bridge-operator.v3.8.9
        version: 3.8.9
      - name: quay-bridge-operator.v3.8.8
        version: 3.8.8
      - name: quay-bridge-operator.v3.8.7
        version: 3.8.7
      - name: quay-bridge-operator.v3.8.6
        version: 3.8.6
      - name: quay-bridge-operator.v3.8.5
        version: 3.8.5
      - name: quay-bridge-operator.v3.8.4
        version: 3.8.4
      - name: quay-bridge-operator.v3.8.3
        version: 3.8.3
      - name: quay-bridge-operator.v3.8.2
        version: 3.8.2
      - name: quay-bridge-operator.v3.8.1
        version: 3.8.1
      - name: quay-bridge-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: quay-bridge-operator.v3.9.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayIntegration",
                "metadata": {
                  "name": "quay"
                },
                "spec": {
                  "clusterID": "openshift",
                  "credentialsSecret": {
                    "name": "quay-credentials",
                    "namespace": "openshift-operators"
                  },
                  "insecureRegistry": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional
          containerImage: registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9fb8807bed232f8723b7bff3f8bfed37798e86251f4db9374d64716b1d624857
          createdAt: 2021-07-09 14:07 UTC
          description: Enhance OCP using Red Hat Red Hat container registry
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          quay-version: 3.9.17
          repository: https://github.com/quay/quay-bridge-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: QuayIntegration is the Schema for the quayintegrations API
            displayName: Quay Integration
            kind: QuayIntegration
            name: quayintegrations.quay.redhat.com
            version: v1
        description: Enhance OCP using Red Hat Quay container registry
        displayName: Red Hat Quay Bridge Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - registry
        - containers
        - quay
        links:
        - name: Quay Bridge Operator
          url: http://quay.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:770b8a929c57a28e581eac1c017e5b2c38d9145391b96b3ab4b280aa8292f9ca
        - registry.redhat.io/quay/quay-bridge-operator-bundle@sha256:7db467404171294d793ef0fd1a59fd6e5bd20ed8915913a1edf013d18e4c9a78
        - registry.redhat.io/quay/quay-bridge-operator-rhel8@sha256:9fb8807bed232f8723b7bff3f8bfed37798e86251f4db9374d64716b1d624857
        version: 3.9.17
      entries:
      - name: quay-bridge-operator.v3.9.17
        version: 3.9.17
      - name: quay-bridge-operator.v3.9.16
        version: 3.9.16
      - name: quay-bridge-operator.v3.9.15
        version: 3.9.15
      - name: quay-bridge-operator.v3.9.14
        version: 3.9.14
      - name: quay-bridge-operator.v3.9.13
        version: 3.9.13
      - name: quay-bridge-operator.v3.9.12
        version: 3.9.12
      - name: quay-bridge-operator.v3.9.11
        version: 3.9.11
      - name: quay-bridge-operator.v3.9.10
        version: 3.9.10
      - name: quay-bridge-operator.v3.9.9
        version: 3.9.9
      - name: quay-bridge-operator.v3.9.8
        version: 3.9.8
      - name: quay-bridge-operator.v3.9.7
        version: 3.9.7
      - name: quay-bridge-operator.v3.9.6
        version: 3.9.6
      - name: quay-bridge-operator.v3.9.5
        version: 3.9.5
      - name: quay-bridge-operator.v3.9.4
        version: 3.9.4
      - name: quay-bridge-operator.v3.9.3
        version: 3.9.3
      - name: quay-bridge-operator.v3.9.2
        version: 3.9.2
      - name: quay-bridge-operator.v3.9.1
        version: 3.9.1
      - name: quay-bridge-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.16
    packageName: quay-bridge-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: minhokim
      provider-url: ""
    name: node-discovery-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-discovery-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cache.wunicorns.com/v1alpha1",
                "kind": "NodeDiscovery",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "node-discovery-operator",
                    "app.kubernetes.io/instance": "nodediscovery-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nodediscovery",
                    "app.kubernetes.io/part-of": "node-discovery-operator"
                  },
                  "name": "nodediscovery-sample"
                },
                "spec": {
                  "containers": [
                    {
                      "args": [
                        "tail",
                        "-f",
                        "/dev/null"
                      ],
                      "image": "alicek106/stress",
                      "imagePullPolicy": "IfNotPresent",
                      "name": "stress",
                      "resources": {
                        "limits": {
                          "cpu": "100m",
                          "memory": "1000Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "1000Mi"
                        }
                      },
                      "terminationGracePeriodSeconds": 10
                    }
                  ],
                  "cpus": "0",
                  "enabled": "true",
                  "mems": "0",
                  "nodeName": "worker3"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2024-06-18T01:32:51Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeDiscovery is the Schema for the nodediscoveries API
            displayName: Node Discovery
            kind: NodeDiscovery
            name: nodediscoveries.cache.wunicorns.com
            version: v1alpha1
        description: find cgroup infor and set value.
        displayName: node-discovery-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cgroup
        - cpulist
        - mems
        - cpus
        - numa
        links:
        - name: Node Discovery Operator
          url: https://node-discovery-operator.domain
        maintainers:
        - email: wunicorns1436@gmail.com
          name: minhokim
        maturity: alpha
        provider:
          name: minhokim
        relatedImages:
        - quay.io/caspell/cgroup-discovery@sha256:b437dcde0107124e43a4e2fb8026ec191f44b5e761bedc2c295f47ff489cf343
        - quay.io/community-operator-pipeline-prod/node-discovery-operator@sha256:899baace103c58e7337ae5cd75e3764e6de26966aab7340037c612c26ca7cf87
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0
        version: 0.0.1
      entries:
      - name: node-discovery-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: node-discovery-operator
    provider:
      name: minhokim
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-atlas-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-atlas-kubernetes.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupPolicy",
                "metadata": {
                  "name": "atlasbackuppolicy-sample"
                },
                "spec": {
                  "id": "1",
                  "items": [
                    {
                      "frequencyInterval": 6,
                      "frequencyType": "WEEKLY",
                      "id": "2",
                      "retentionUnit": "DAYS",
                      "retentionValue": 6
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupSchedule",
                "metadata": {
                  "name": "atlasbackupschedule-sample"
                },
                "spec": {
                  "autoExportEnabled": true,
                  "policies": [
                    {
                      "name": "atlas-default-backuppolicy",
                      "namespace": "mongodb-atlas-system"
                    },
                    {
                      "name": "atlas-default-backuppolicy2",
                      "namespace": "mongodb-atlas-system"
                    }
                  ],
                  "referenceHourOfDay": 10,
                  "referenceMinuteOfHour": 10,
                  "restoreWindowDays": 2
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDatabaseUser",
                "metadata": {
                  "name": "my-database-user"
                },
                "spec": {
                  "databaseName": "admin",
                  "passwordSecretRef": {
                    "name": "my-database-user-password"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "roles": [
                    {
                      "databaseName": "admin",
                      "roleName": "readWriteAnyDatabase"
                    }
                  ],
                  "username": "david"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDeployment",
                "metadata": {
                  "name": "my-atlas-cluster"
                },
                "spec": {
                  "deploymentSpec": {
                    "name": "test-cluster",
                    "providerSettings": {
                      "instanceSizeName": "M10",
                      "providerName": "AWS",
                      "regionName": "US_EAST_1"
                    }
                  },
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasProject",
                "metadata": {
                  "name": "my-project"
                },
                "spec": {
                  "name": "Test Atlas Operator Project",
                  "projectIpAccessList": [
                    {
                      "comment": "IP address for Application Server A",
                      "ipAddress": "192.0.2.15"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Database
          containerImage: registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator@sha256:3cfbd700e4771c2c7e75c2c41cf6de57c9ef71ecd286e96a21d2567e43424bc3
          description: The MongoDB Atlas Kubernetes Operator enables easy management
            of Clusters in MongoDB Atlas
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies
              API
            displayName: Atlas Backup Policy
            kind: AtlasBackupPolicy
            name: atlasbackuppolicies.atlas.mongodb.com
            version: v1
          - description: AtlasBackupSchedule is the Schema for the atlasbackupschedules
              API
            displayName: Atlas Backup Schedule
            kind: AtlasBackupSchedule
            name: atlasbackupschedules.atlas.mongodb.com
            version: v1
          - description: AtlasDatabaseUser is the Schema for the Atlas Database User
              API
            displayName: Atlas Database User
            kind: AtlasDatabaseUser
            name: atlasdatabaseusers.atlas.mongodb.com
            version: v1
          - description: AtlasDeployment is the Schema for the atlasclusters API
            displayName: Atlas Deployment
            kind: AtlasDeployment
            name: atlasdeployments.atlas.mongodb.com
            version: v1
          - description: AtlasProject is the Schema for the atlasprojects API
            displayName: Atlas Project
            kind: AtlasProject
            name: atlasprojects.atlas.mongodb.com
            version: v1
        description: |
          The MongoDB Atlas Operator provides a native integration between the Kubernetes orchestration platform and MongoDB Atlas —
          the only multi-cloud document database service that gives you the versatility you need to build sophisticated and resilient applications that can adapt to changing customer demands and market trends.

          > Current Status: *Beta*. The Operator gives users the ability to provision
          > Atlas projects, clusters and database users using Kubernetes Specifications and bind connection information
          > into applications deployed to Kubernetes.

          ## Quick Start guide
          ### Step 1. Deploy Kubernetes operator by clicking Install button.

          ### Step 2. Create Atlas Cluster

          **1.** Create an Atlas API Key Secret
          In order to work with the Atlas Operator you need to provide [authentication information](https://docs.atlas.mongodb.com/configure-api-access)
           to allow the Atlas Operator to communicate with Atlas API. Once you have generated a Public and Private key in Atlas, you can create a Kuberentes Secret with:
          ```
          kubectl create secret generic mongodb-atlas-operator-api-key \
                   --from-literal="orgId=<the_atlas_organization_id>" \
                   --from-literal="publicApiKey=<the_atlas_api_public_key>" \
                   --from-literal="privateApiKey=<the_atlas_api_private_key>" \
                   -n openshift-operators
          ```
          (Note, that you should use the namespace where the Operator was installed - it's `openshift-operators` by default)

          **2.** Create an `AtlasProject` Custom Resource

          The `AtlasProject` CustomResource represents Atlas Projects in our Kubernetes cluster. You need to specify
          `projectIpAccessList` with the IP addresses or CIDR blocks of any hosts that will connect to the Atlas Cluster.
          ```
          apiVersion: atlas.mongodb.com/v1
          kind: AtlasProject
          metadata:
            name: my-project
          spec:
            name: Test Atlas Operator Project
            projectIpAccessList:
              - ipAddress: "192.0.2.15"
                comment: "IP address for Application Server A"
              - ipAddress: "203.0.113.0/24"
                comment: "CIDR block for Application Server B - D"
          ```
          **3.** Create an `AtlasDeployment` Custom Resource.
          The example below is a minimal configuration to create an M10 Atlas cluster in the AWS US East region. For a full list of properties, check
          `atlasclusters.atlas.mongodb.com` [CRD specification](config/crd/bases/atlas.mongodb.com_atlasclusters.yaml)):
          ```
          apiVersion: atlas.mongodb.com/v1
          kind: AtlasDeployment
          metadata:
            name: my-atlas-cluster
          spec:
            name: "Test-cluster"
            projectRef:
              name: my-project
            providerSettings:
              instanceSizeName: M10
              providerName: AWS
              regionName: US_EAST_1
          ```

          **4.** Create a database user password Kubernetes Secret
          The Secret must be created in the same namespace as the `AtlasDeployment` and `AtlasProject` were created.
          ```
          kubectl create secret generic the-user-password --from-literal="password=P@@sword%"
          ```

          **5.** Create an `AtlasDatabaseUser` Custom Resource

          In order to connect to an Atlas Cluster the database user needs to be created. `AtlasDatabaseUser` resource should reference
          the password Kubernetes Secret created in the previous step.
          ```
          apiVersion: atlas.mongodb.com/v1
          kind: AtlasDatabaseUser
          metadata:
            name: my-database-user
          spec:
            roles:
              - roleName: "readWriteAnyDatabase"
                databaseName: "admin"
            projectRef:
              name: my-project
            username: theuser
            passwordSecretRef:
              name: the-user-password
          ```
          **6.** Wait for the `AtlasDatabaseUser` Custom Resource to be ready

          Wait until the AtlasDatabaseUser resource gets to "ready" status (it will wait until the cluster is created that may take around 10 minutes):
          ```
          kubectl get atlasdatabaseusers my-database-user -o=jsonpath='{.status.conditions[?(@.type=="Ready")].status}'
          True
          ```
          ### Step 3. Connect your application to the Atlas Cluster

          The Atlas Operator will create a Kubernetes Secret with the information necessary to connect to the Atlas Cluster created
          in the previous step. An application in the same Kubernetes Cluster can mount and use the Secret:

          ```
          ...
          containers:
                - name: test-app
                  env:
                   - name: "CONNECTION_STRING"
                     valueFrom:
                       secretKeyRef:
                         name: test-atlas-operator-project-test-cluster-theuser
                         key: connectionStringStandardSrv

          ```
        displayName: MongoDB Atlas Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - MongoDB
        - Atlas
        - Database
        - Replica Set
        - Cluster
        links:
        - name: MongoDB Atlas Kubernetes
          url: https://github.com/mongodb/mongodb-atlas-kubernetes
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: beta
        provider:
          name: MongoDB, Inc
        relatedImages:
        - registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator-bundle@sha256:2338eaab863304250b3b1d267e9f2261c48eef1f97c280b7fa0af0ebc3ba208b
        - registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator@sha256:3cfbd700e4771c2c7e75c2c41cf6de57c9ef71ecd286e96a21d2567e43424bc3
        version: 1.0.0
      entries:
      - name: mongodb-atlas-kubernetes.v1.0.0
        version: 1.0.0
      name: beta
    - currentCSV: mongodb-atlas-kubernetes.v2.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupPolicy",
                "metadata": {
                  "name": "atlasbackuppolicy-sample"
                },
                "spec": {
                  "items": [
                    {
                      "frequencyInterval": 6,
                      "frequencyType": "hourly",
                      "retentionUnit": "days",
                      "retentionValue": 2
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "daily",
                      "retentionUnit": "days",
                      "retentionValue": 7
                    },
                    {
                      "frequencyInterval": 1,
                      "frequencyType": "weekly",
                      "retentionUnit": "weeks",
                      "retentionValue": 4
                    },
                    {
                      "frequencyInterval": 15,
                      "frequencyType": "monthly",
                      "retentionUnit": "months",
                      "retentionValue": 12
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasBackupSchedule",
                "metadata": {
                  "name": "atlasbackupschedule-sample"
                },
                "spec": {
                  "autoExportEnabled": false,
                  "copySettings": [
                    {
                      "cloudProvider": "AWS",
                      "frequencies": [
                        "WEEKLY"
                      ],
                      "regionName": "US_WEST_1",
                      "shouldCopyOplogs": false
                    }
                  ],
                  "policy": {
                    "name": "atlasbackuppolicy-sample"
                  },
                  "referenceHourOfDay": 10,
                  "referenceMinuteOfHour": 10,
                  "restoreWindowDays": 2,
                  "useOrgAndGroupNamesInExportPrefix": true
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDatabaseUser",
                "metadata": {
                  "name": "my-database-user"
                },
                "spec": {
                  "databaseName": "admin",
                  "passwordSecretRef": {
                    "name": "the-user-password"
                  },
                  "projectRef": {
                    "name": "my-project"
                  },
                  "roles": [
                    {
                      "databaseName": "admin",
                      "roleName": "readWriteAnyDatabase"
                    }
                  ],
                  "username": "theuser"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasDeployment",
                "metadata": {
                  "name": "my-atlas-deployment"
                },
                "spec": {
                  "backupRef": {
                    "name": "atlasbackupschedule-sample"
                  },
                  "deploymentSpec": {
                    "backupEnabled": true,
                    "clusterType": "REPLICASET",
                    "mongoDBMajorVersion": "7.0",
                    "name": "test-deployment",
                    "replicationSpecs": [
                      {
                        "regionConfigs": [
                          {
                            "electableSpecs": {
                              "instanceSize": "M10",
                              "nodeCount": 3
                            },
                            "priority": 7,
                            "providerName": "AWS",
                            "regionName": "US_EAST_1"
                          }
                        ],
                        "zoneName": "Zone 1"
                      }
                    ],
                    "tags": [
                      {
                        "key": "team",
                        "value": "atlas-operator"
                      }
                    ]
                  },
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasIPAccessList",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasipaccesslist-sample"
                },
                "spec": {
                  "entries": [
                    {
                      "cidrBlock": "192.168.1.0/24"
                    },
                    {
                      "deleteAfterDate": "2025-01-20T23:59:59+02:00",
                      "ipAddress": "10.0.0.1"
                    }
                  ],
                  "projectRef": {
                    "name": "my-project"
                  }
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkContainer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mongodb-atlas-kubernetes"
                  },
                  "name": "atlasnetworkcontainer-sample"
                },
                "spec": {
                  "cidrBlock": "10.11.0.0/16",
                  "connectionSecret": {
                    "name": "atlas-connection-secret"
                  },
                  "externalProjectRef": {
                    "projectId": "66e2f2b621571b7e69a89b66"
                  },
                  "provider": "AWS",
                  "region": "US_EAST_1"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasNetworkPeering",
                "metadata": {
                  "name": "atlasnetworkpeering-sample"
                },
                "spec": {
                  "atlasCidrBlock": "10.12.0.0/16",
                  "awsConfiguration": {
                    "accepterRegionName": "US_EAST_1",
                    "awsAccountId": "23214235145",
                    "routeTableCidrBlock": "10.11.0.0/16",
                    "vpcId": "vpcid-7123782134"
                  },
                  "containerId": "623412394512350",
                  "containerRegion": "US_EAST_1",
                  "projectRef": {
                    "name": "atlas-project",
                    "namespace": "namespace"
                  },
                  "provider": "AWS"
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasProject",
                "metadata": {
                  "name": "my-project"
                },
                "spec": {
                  "name": "Test Atlas Operator Project",
                  "projectIpAccessList": [
                    {
                      "comment": "IP address for Application Server A",
                      "ipAddress": "192.0.2.15"
                    },
                    {
                      "cidrBlock": "203.0.113.0/24",
                      "comment": "CIDR block for Application Server B - D"
                    }
                  ]
                }
              },
              {
                "apiVersion": "atlas.mongodb.com/v1",
                "kind": "AtlasTeam",
                "metadata": {
                  "name": "atlasteam-sample"
                },
                "spec": {
                  "name": "my-team",
                  "usernames": [
                    "username@mongodb.com"
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/mongodb/mongodb-atlas-kubernetes-operator@sha256:97954960c411c7711bd93ab4bdb243b72cee0e6ec9f6a3951ce300b1d9fb895a
          createdAt: "2025-03-06T14:09:19Z"
          description: The MongoDB Atlas Kubernetes Operator enables easy management
            of Clusters in MongoDB Atlas
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AtlasBackupCompliancePolicy
            name: atlasbackupcompliancepolicies.atlas.mongodb.com
            version: v1
          - description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies
              API
            displayName: Atlas Backup Policy
            kind: AtlasBackupPolicy
            name: atlasbackuppolicies.atlas.mongodb.com
            version: v1
          - description: AtlasBackupSchedule is the Schema for the atlasbackupschedules
              API
            displayName: Atlas Backup Schedule
            kind: AtlasBackupSchedule
            name: atlasbackupschedules.atlas.mongodb.com
            version: v1
          - description: AtlasCustomRole is the Schema for the AtlasCustomRole API
            displayName: Atlas Custom Role
            kind: AtlasCustomRole
            name: atlascustomroles.atlas.mongodb.com
            version: v1
          - description: AtlasDatabaseUser is the Schema for the Atlas Database User
              API
            displayName: Atlas Database User
            kind: AtlasDatabaseUser
            name: atlasdatabaseusers.atlas.mongodb.com
            version: v1
          - description: AtlasDataFederation is the Schema for the Atlas Data Federation
              API
            displayName: Atlas Data Federation
            kind: AtlasDataFederation
            name: atlasdatafederations.atlas.mongodb.com
            version: v1
          - description: AtlasDeployment is the Schema for the atlasdeployments API
            displayName: Atlas Deployment
            kind: AtlasDeployment
            name: atlasdeployments.atlas.mongodb.com
            version: v1
          - description: AtlasFederatedAuth is the Schema for the Atlasfederatedauth
              API
            displayName: Atlas Federated Auth
            kind: AtlasFederatedAuth
            name: atlasfederatedauths.atlas.mongodb.com
            version: v1
          - description: AtlasIPAccessList is the Schema for the atlasipaccesslists
              API.
            displayName: Atlas IPAccess List
            kind: AtlasIPAccessList
            name: atlasipaccesslists.atlas.mongodb.com
            version: v1
          - description: AtlasNetworkContainer is the Schema for the AtlasNetworkContainer
              API
            displayName: Atlas Network Container
            kind: AtlasNetworkContainer
            name: atlasnetworkcontainers.atlas.mongodb.com
            version: v1
          - description: AtlasNetworkPeering is the Schema for the AtlasNetworkPeering
              API
            displayName: Atlas Network Peering
            kind: AtlasNetworkPeering
            name: atlasnetworkpeerings.atlas.mongodb.com
            version: v1
          - description: "The AtlasPrivateEndpoint custom resource definition (CRD)
              defines a desired [Private Endpoint](https://www.mongodb.com/docs/atlas/security-private-endpoint/#std-label-private-endpoint-overview)
              configuration for an Atlas project. It allows a private connection between
              your cloud provider and Atlas that doesn't send information through
              a public network. \n You can use private endpoints to create a unidirectional
              connection to Atlas clusters from your virtual network."
            displayName: Atlas Private Endpoint
            kind: AtlasPrivateEndpoint
            name: atlasprivateendpoints.atlas.mongodb.com
            version: v1
          - description: AtlasProject is the Schema for the atlasprojects API
            displayName: Atlas Project
            kind: AtlasProject
            name: atlasprojects.atlas.mongodb.com
            version: v1
          - description: Atlas Search Index Config is the Schema for the Atlas Search
              API
            displayName: Atlas Search Index Config
            kind: AtlasSearchIndexConfig
            name: atlassearchindexconfigs.atlas.mongodb.com
            version: v1
          - description: AtlasStreamConnection is the Schema for the atlasstreamconnections
              API
            displayName: Atlas Stream Connection
            kind: AtlasStreamConnection
            name: atlasstreamconnections.atlas.mongodb.com
            version: v1
          - description: AtlasStreamInstance is the Schema for the atlasstreaminstances
              API
            displayName: Atlas Stream Instance
            kind: AtlasStreamInstance
            name: atlasstreaminstances.atlas.mongodb.com
            version: v1
          - description: AtlasTeam is the Schema for the Atlas Teams API
            displayName: Atlas Team
            kind: AtlasTeam
            name: atlasteams.atlas.mongodb.com
            version: v1
        description: |
          The MongoDB Atlas Operator provides a native integration between the Kubernetes orchestration platform and MongoDB
          Atlas — the only multi-cloud document database service that gives you the versatility you need to build sophisticated
          and resilient applications that can adapt to changing customer demands and market trends.

          The full documentation for the Operator can be found [here](https://docs.atlas.mongodb.com/atlas-operator/)

          ## Getting Started

          ### Supported features

          * Create and configure a project, or connect to an existing one.
          * Deploy, manage, scale, and tear down clusters.
          * Support for serverless instances.
          * Create and edit database users.
          * Manage IP Access Lists, network peering and private endpoints.
          * Configure and control Atlas’s fully managed cloud backup.
          * Configure federated authentication for your Atlas organization
          * Integrate Atlas monitoring with Prometheus.

          ... and more.

          To view the list of custom resources and each CR's schema, visit our [reference](https://www.mongodb.com/docs/atlas/operator/stable/custom-resources/)
          documentation. See the [Quickstart](https://www.mongodb.com/docs/atlas/operator/stable/ak8so-quick-start/) to get
          started with Atlas Kubernetes Operator.
        displayName: MongoDB Atlas Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - MongoDB
        - Atlas
        - Database
        - Replica Set
        - Cluster
        links:
        - name: MongoDB Atlas Kubernetes
          url: https://github.com/mongodb/mongodb-atlas-kubernetes
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: beta
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/mongodb/mongodb-atlas-kubernetes-operator@sha256:97954960c411c7711bd93ab4bdb243b72cee0e6ec9f6a3951ce300b1d9fb895a
        - quay.io/mongodb/mongodb-atlas-kubernetes-operator@sha256:ffc0ee0c96ef18dd034c125c4756c24bc1629f6573bf7faaeb89fd2eaae1d9cc
        - registry.connect.redhat.com/mongodb/mongodb-atlas-kubernetes-operator-bundle@sha256:a8043b35ba5742b5c514e73511c1d3ca06ef3c96418b849034e96faba9f96c36
        version: 2.8.0
      entries:
      - name: mongodb-atlas-kubernetes.v2.8.0
        version: 2.8.0
      - name: mongodb-atlas-kubernetes.v2.7.1
        version: 2.7.1
      - name: mongodb-atlas-kubernetes.v2.7.0
        version: 2.7.0
      - name: mongodb-atlas-kubernetes.v2.6.1
        version: 2.6.1
      - name: mongodb-atlas-kubernetes.v2.6.0
        version: 2.6.0
      - name: mongodb-atlas-kubernetes.v2.5.0
        version: 2.5.0
      - name: mongodb-atlas-kubernetes.v2.4.1
        version: 2.4.1
      - name: mongodb-atlas-kubernetes.v2.4.0
        version: 2.4.0
      - name: mongodb-atlas-kubernetes.v2.3.1
        version: 2.3.1
      - name: mongodb-atlas-kubernetes.v2.3.0
        version: 2.3.0
      - name: mongodb-atlas-kubernetes.v2.2.2
        version: 2.2.2
      - name: mongodb-atlas-kubernetes.v2.2.1
        version: 2.2.1
      - name: mongodb-atlas-kubernetes.v2.2.0
        version: 2.2.0
      - name: mongodb-atlas-kubernetes.v2.1.0
        version: 2.1.0
      - name: mongodb-atlas-kubernetes.v2.0.1
        version: 2.0.1
      - name: mongodb-atlas-kubernetes.v2.0.0
        version: 2.0.0
      - name: mongodb-atlas-kubernetes.v1.9.1
        version: 1.9.1
      - name: mongodb-atlas-kubernetes.v1.9.0
        version: 1.9.0
      - name: mongodb-atlas-kubernetes.v1.8.2
        version: 1.8.2
      - name: mongodb-atlas-kubernetes.v1.8.1
        version: 1.8.1
      - name: mongodb-atlas-kubernetes.v1.8.0
        version: 1.8.0
      - name: mongodb-atlas-kubernetes.v1.7.3
        version: 1.7.3
      - name: mongodb-atlas-kubernetes.v1.7.2
        version: 1.7.2
      - name: mongodb-atlas-kubernetes.v1.7.1
        version: 1.7.1
      - name: mongodb-atlas-kubernetes.v1.7.0
        version: 1.7.0
      - name: mongodb-atlas-kubernetes.v1.6.1
        version: 1.6.1
      - name: mongodb-atlas-kubernetes.v1.6.0
        version: 1.6.0
      - name: mongodb-atlas-kubernetes.v1.5.1
        version: 1.5.1
      - name: mongodb-atlas-kubernetes.v1.5.0
        version: 1.5.0
      - name: mongodb-atlas-kubernetes.v1.4.1
        version: 1.4.1
      - name: mongodb-atlas-kubernetes.v1.3.0
        version: 1.3.0
      name: stable
    defaultChannel: stable
    packageName: mongodb-atlas-kubernetes
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: NVIDIA
      provider-url: https://github.com/Mellanox/network-operator/
    name: nvidia-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nvidia-network-operator.v25.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "HostDeviceNetwork",
                "metadata": {
                  "name": "example-hostdevice-network"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.3.225/28\",\n  \"exclude\": [\n   \"192.168.3.229/30\",\n   \"192.168.3.236/32\"\n  ]\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "hostdev"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "IPoIBNetwork",
                "metadata": {
                  "name": "example-ipoibnetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"nv-ipam\",\n  \"poolName\": \"my-pool\"\n}\n",
                  "master": "ibs3f1",
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "MacvlanNetwork",
                "metadata": {
                  "name": "example-macvlannetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.2.225/24\",\n  \"exclude\": [\n   \"192.168.2.229/30\",\n   \"192.168.2.236/32\"\n  ]\n}\n",
                  "master": "ens2f0",
                  "mode": "bridge",
                  "mtu": 1500,
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "NicClusterPolicy",
                "metadata": {
                  "name": "nic-cluster-policy"
                },
                "spec": {
                  "ofedDriver": {
                    "image": "doca-driver",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 30
                    },
                    "readinessProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 30
                    },
                    "repository": "nvcr.io/nvidia/mellanox",
                    "startupProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 20
                    },
                    "terminationGracePeriodSeconds": 300,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": true,
                        "enable": true,
                        "force": true,
                        "podSelector": "",
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1
                    },
                    "version": "doca3.2.0-25.10-1.2.8.0-2"
                  },
                  "rdmaSharedDevicePlugin": {
                    "config": "{\n  \"configList\": [\n    {\n      \"resourceName\": \"rdma_shared_device_a\",\n      \"rdmaHcaMax\": 63,\n      \"selectors\": {\n        \"vendors\": [\"15b3\"]\n      }\n    }\n  ]\n}\n",
                    "image": "k8s-rdma-shared-dev-plugin",
                    "repository": "nvcr.io/nvidia/mellanox",
                    "version": "sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
          createdAt: "2025-12-11T08:10:51Z"
          description: Deploy and manage NVIDIA networking resources in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-network-operator
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: https://github.com/Mellanox/network-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: HostDeviceNetwork
            name: hostdevicenetworks.mellanox.com
            version: v1alpha1
          - kind: IPoIBNetwork
            name: ipoibnetworks.mellanox.com
            version: v1alpha1
          - kind: MacvlanNetwork
            name: macvlannetworks.mellanox.com
            version: v1alpha1
          - kind: NicClusterPolicy
            name: nicclusterpolicies.mellanox.com
            version: v1alpha1
        description: |
          ## NVIDIA Network Operator
          The NVIDIA Network Operator simplifies the provisioning and management of NVIDIA networking resources  in a Kubernetes cluster. The operator automatically installs the required host networking software - bringing together all the needed components to provide high-speed network connectivity. These components include the NVIDIA networking driver, Kubernetes device plugin, CNI plugins, IP address management (IPAM) plugin and others.
          The NVIDIA Network Operator works in conjunction with the NVIDIA GPU Operator to deliver high-throughput, low-latency networking for scale-out, GPU computing clusters.

          The Network Operator uses Node Feature Discovery (NFD) labels in order to properly schedule resources.
          Nodes can be labelled manually or using the NFD Operator. An example of `NodeFeatureDiscovery`
          configuration is available in the documentation.
          The following NFD labels are used:
          `feature.node.kubernetes.io/pci-15b3.present` for nodes containing NVIDIA Networking hardware.
          `feature.node.kubernetes.io/pci-10de.present` for nodes containing NVIDIA GPU hardware.

          The Network Operator is open-source. For more information on contributions and release artifacts, see the [GitHub repo](https://github.com/Mellanox/network-operator/)
        displayName: NVIDIA Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sriov
        - networking
        links:
        - name: Network Operator Documentation
          url: https://docs.nvidia.com/networking/software/cloud-orchestration/index.html
        - name: GitHub repository
          url: https://github.com/Mellanox/network-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/network-operator/
        relatedImages:
        - nvcr.io/nvidia/doca/doca_telemetry@sha256:f0d3c4a00616343e74e465e259a7475d69920a8dbff530117253cb1939e366f6
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:2ba90699f70a848488bf520afd03283e515c73daef431618256920d685957d4c
        - nvcr.io/nvidia/mellanox/network-operator-init-container@sha256:8990b7fabb164d5c369964bca8bd0424acd6227d2cc8f0cbfc23b2e3cc732c8b
        - nvcr.io/nvidia/mellanox/spectrum-x-operator@sha256:d806c8913833596c53344601e77620ce441afe164968b6c6626b6a715031515a
        - nvcr.io/nvidia/mellanox/ipoib-cni@sha256:8567594bb1570383f5b68c9e9ce814bc34dd0f1d8df60a89c44105cf476a8ff0
        - nvcr.io/nvidia/mellanox/nic-feature-discovery@sha256:7573a7a063ee4bfbaa5b8e3517e655da5fa5472e2c9bf96a4d45469718416531
        - nvcr.io/nvidia/mellanox/nvidia-k8s-ipam@sha256:f3618a6bf879057dd3e63ae0bef5bad3fecc5f5548430cf5aa8745287c71e063
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:54606f3cde8fe47e5399347661d58954889a7712f7b35c505b949a313d5f7dfe
        - nvcr.io/nvidia/mellanox/sriov-network-device-plugin@sha256:16230372aa23ae025f7b5fa5ac092bbf58c8040bf66e162f7977469ba7322bcc
        - nvcr.io/nvidia/mellanox/nic-configuration-operator@sha256:25fbecba5fa2c588007c85fbffdedf4b734c36774824da1598ab063e0e9a9685
        - nvcr.io/nvidia/mellanox/ib-kubernetes@sha256:da161f6694fb5134948e8ffc47ebc556c8fdbdb4cb83be1dc6c9a2276b671c03
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:4015c620d07b169462d726dee926616faf0d20b4331a1922bade079efd8427b5
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:c6c0ef891b8dd381c002976b202ffe1c8d7d35710d812dbc3d31151a913b3fd4
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:0f99c9165a5001cca2d5fe11c7fd480f7fc455928c43ebec1fdd2cac3cb811be
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:327f4396b63cc6d6694a3272f48758e3bc415b477919d36f3ff8b5e4b0c322eb
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:bca54e10732c1a617cc9cc2ded9b83372593963559ba72a54c499d39a143fcb0
        - nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:8f6a0c704e40e383079a7d9fd6b06d60af168e3ebf3cb98175f952a3c404a9a8
        - nvcr.io/nvidia/mellanox/nic-configuration-operator-daemon@sha256:efef0cd39324058f23cfeda561d4c23063f260905c35a0a29d5a246bec091341
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-network-operator@sha256:beab52d506ac9133172b18bec91e1fa8e261b2a203669880c1a3ffeaeb30e2b0
        - nvcr.io/nvidia/mellanox/k8s-rdma-shared-dev-plugin@sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e
        version: 25.10.0
      entries:
      - name: nvidia-network-operator.v25.10.0
        version: 25.10.0
      - name: nvidia-network-operator.v25.7.0
        version: 25.7.0
      name: stable
    - currentCSV: nvidia-network-operator.v25.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "HostDeviceNetwork",
                "metadata": {
                  "name": "example-hostdevice-network"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.3.225/28\",\n  \"exclude\": [\n   \"192.168.3.229/30\",\n   \"192.168.3.236/32\"\n  ]\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "hostdev"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "IPoIBNetwork",
                "metadata": {
                  "name": "example-ipoibnetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"nv-ipam\",\n  \"poolName\": \"my-pool\"\n}\n",
                  "master": "ibs3f1",
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "MacvlanNetwork",
                "metadata": {
                  "name": "example-macvlannetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.2.225/24\",\n  \"exclude\": [\n   \"192.168.2.229/30\",\n   \"192.168.2.236/32\"\n  ]\n}\n",
                  "master": "ens2f0",
                  "mode": "bridge",
                  "mtu": 1500,
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "NicClusterPolicy",
                "metadata": {
                  "name": "nic-cluster-policy"
                },
                "spec": {
                  "ofedDriver": {
                    "image": "doca-driver",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 30
                    },
                    "readinessProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 30
                    },
                    "repository": "nvcr.io/nvidia/mellanox",
                    "startupProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 20
                    },
                    "terminationGracePeriodSeconds": 300,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": true,
                        "enable": true,
                        "force": true,
                        "podSelector": "",
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1
                    },
                    "version": "doca3.2.0-25.10-1.2.8.0-2"
                  },
                  "rdmaSharedDevicePlugin": {
                    "config": "{\n  \"configList\": [\n    {\n      \"resourceName\": \"rdma_shared_device_a\",\n      \"rdmaHcaMax\": 63,\n      \"selectors\": {\n        \"vendors\": [\"15b3\"]\n      }\n    }\n  ]\n}\n",
                    "image": "k8s-rdma-shared-dev-plugin",
                    "repository": "nvcr.io/nvidia/mellanox",
                    "version": "sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
          createdAt: "2025-12-11T08:10:51Z"
          description: Deploy and manage NVIDIA networking resources in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-network-operator
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: https://github.com/Mellanox/network-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: HostDeviceNetwork
            name: hostdevicenetworks.mellanox.com
            version: v1alpha1
          - kind: IPoIBNetwork
            name: ipoibnetworks.mellanox.com
            version: v1alpha1
          - kind: MacvlanNetwork
            name: macvlannetworks.mellanox.com
            version: v1alpha1
          - kind: NicClusterPolicy
            name: nicclusterpolicies.mellanox.com
            version: v1alpha1
        description: |
          ## NVIDIA Network Operator
          The NVIDIA Network Operator simplifies the provisioning and management of NVIDIA networking resources  in a Kubernetes cluster. The operator automatically installs the required host networking software - bringing together all the needed components to provide high-speed network connectivity. These components include the NVIDIA networking driver, Kubernetes device plugin, CNI plugins, IP address management (IPAM) plugin and others.
          The NVIDIA Network Operator works in conjunction with the NVIDIA GPU Operator to deliver high-throughput, low-latency networking for scale-out, GPU computing clusters.

          The Network Operator uses Node Feature Discovery (NFD) labels in order to properly schedule resources.
          Nodes can be labelled manually or using the NFD Operator. An example of `NodeFeatureDiscovery`
          configuration is available in the documentation.
          The following NFD labels are used:
          `feature.node.kubernetes.io/pci-15b3.present` for nodes containing NVIDIA Networking hardware.
          `feature.node.kubernetes.io/pci-10de.present` for nodes containing NVIDIA GPU hardware.

          The Network Operator is open-source. For more information on contributions and release artifacts, see the [GitHub repo](https://github.com/Mellanox/network-operator/)
        displayName: NVIDIA Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sriov
        - networking
        links:
        - name: Network Operator Documentation
          url: https://docs.nvidia.com/networking/software/cloud-orchestration/index.html
        - name: GitHub repository
          url: https://github.com/Mellanox/network-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/network-operator/
        relatedImages:
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:0f99c9165a5001cca2d5fe11c7fd480f7fc455928c43ebec1fdd2cac3cb811be
        - nvcr.io/nvidia/mellanox/network-operator-init-container@sha256:8990b7fabb164d5c369964bca8bd0424acd6227d2cc8f0cbfc23b2e3cc732c8b
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:327f4396b63cc6d6694a3272f48758e3bc415b477919d36f3ff8b5e4b0c322eb
        - nvcr.io/nvidia/mellanox/nic-feature-discovery@sha256:7573a7a063ee4bfbaa5b8e3517e655da5fa5472e2c9bf96a4d45469718416531
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:bca54e10732c1a617cc9cc2ded9b83372593963559ba72a54c499d39a143fcb0
        - nvcr.io/nvidia/doca/doca_telemetry@sha256:f0d3c4a00616343e74e465e259a7475d69920a8dbff530117253cb1939e366f6
        - nvcr.io/nvidia/mellanox/nic-configuration-operator@sha256:25fbecba5fa2c588007c85fbffdedf4b734c36774824da1598ab063e0e9a9685
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-network-operator@sha256:beab52d506ac9133172b18bec91e1fa8e261b2a203669880c1a3ffeaeb30e2b0
        - nvcr.io/nvidia/cloud-native/network-operator@sha256:8d3a075b6672c8375b33a84773027047a290f57f88903fd8040d87a36e8fdcae
        - nvcr.io/nvidia/mellanox/ib-kubernetes@sha256:da161f6694fb5134948e8ffc47ebc556c8fdbdb4cb83be1dc6c9a2276b671c03
        - nvcr.io/nvidia/mellanox/nic-configuration-operator-daemon@sha256:efef0cd39324058f23cfeda561d4c23063f260905c35a0a29d5a246bec091341
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:54606f3cde8fe47e5399347661d58954889a7712f7b35c505b949a313d5f7dfe
        - nvcr.io/nvidia/mellanox/spectrum-x-operator@sha256:d806c8913833596c53344601e77620ce441afe164968b6c6626b6a715031515a
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:4015c620d07b169462d726dee926616faf0d20b4331a1922bade079efd8427b5
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:2ba90699f70a848488bf520afd03283e515c73daef431618256920d685957d4c
        - nvcr.io/nvidia/mellanox/ipoib-cni@sha256:8567594bb1570383f5b68c9e9ce814bc34dd0f1d8df60a89c44105cf476a8ff0
        - nvcr.io/nvidia/mellanox/nvidia-k8s-ipam@sha256:f3618a6bf879057dd3e63ae0bef5bad3fecc5f5548430cf5aa8745287c71e063
        - nvcr.io/nvidia/mellanox/sriov-network-device-plugin@sha256:16230372aa23ae025f7b5fa5ac092bbf58c8040bf66e162f7977469ba7322bcc
        - nvcr.io/nvidia/mellanox/k8s-rdma-shared-dev-plugin@sha256:78f01edc4cc6f5f1282b5e4bf0a0d0291ee97c1bdb372616daa5367e1070269e
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:8f6a0c704e40e383079a7d9fd6b06d60af168e3ebf3cb98175f952a3c404a9a8
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:c6c0ef891b8dd381c002976b202ffe1c8d7d35710d812dbc3d31151a913b3fd4
        version: 25.10.0
      entries:
      - name: nvidia-network-operator.v25.10.0
        version: 25.10.0
      name: v25.10
    - currentCSV: nvidia-network-operator.v25.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "HostDeviceNetwork",
                "metadata": {
                  "name": "example-hostdevice-network"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.3.225/28\",\n  \"exclude\": [\n   \"192.168.3.229/30\",\n   \"192.168.3.236/32\"\n  ]\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "hostdev"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "IPoIBNetwork",
                "metadata": {
                  "name": "example-ipoibnetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.6.225/28\",\n  \"exclude\": [\n   \"192.168.6.229/30\",\n   \"192.168.6.236/32\"\n  ]\n}\n",
                  "master": "ibs3f1",
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "MacvlanNetwork",
                "metadata": {
                  "name": "example-macvlannetwork"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"whereabouts\",\n  \"range\": \"192.168.2.225/24\",\n  \"exclude\": [\n   \"192.168.2.229/30\",\n   \"192.168.2.236/32\"\n  ]\n}\n",
                  "master": "ens2f0",
                  "mode": "bridge",
                  "mtu": 1500,
                  "networkNamespace": "default"
                }
              },
              {
                "apiVersion": "mellanox.com/v1alpha1",
                "kind": "NicClusterPolicy",
                "metadata": {
                  "name": "nic-cluster-policy"
                },
                "spec": {
                  "ofedDriver": {
                    "image": "doca-driver",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 30
                    },
                    "readinessProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 30
                    },
                    "repository": "nvcr.io/nvidia/mellanox",
                    "startupProbe": {
                      "initialDelaySeconds": 10,
                      "periodSeconds": 20
                    },
                    "terminationGracePeriodSeconds": 300,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": true,
                        "enable": true,
                        "force": true,
                        "podSelector": "",
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1
                    },
                    "version": "doca3.1.0-25.07-0.9.7.0-0"
                  },
                  "rdmaSharedDevicePlugin": {
                    "config": "{\n  \"configList\": [\n    {\n      \"resourceName\": \"rdma_shared_device_a\",\n      \"rdmaHcaMax\": 63,\n      \"selectors\": {\n        \"vendors\": [\"15b3\"]\n      }\n    }\n  ]\n}\n",
                    "image": "k8s-rdma-shared-dev-plugin",
                    "repository": "nvcr.io/nvidia/mellanox",
                    "version": "sha256:a87096761d155eeb6f470e042d2d167bb466d57e63b4aba957f57d745e15a9b2"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: nvcr.io/nvidia/cloud-native/network-operator@sha256:51270965284cceeda659fb1098e70a888b39664ceade7e9d455fb95ac85914b7
          createdAt: "2025-08-21T19:12:20Z"
          description: Deploy and manage NVIDIA networking resources in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: nvidia-network-operator
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: https://github.com/Mellanox/network-operator/
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: HostDeviceNetwork
            name: hostdevicenetworks.mellanox.com
            version: v1alpha1
          - kind: IPoIBNetwork
            name: ipoibnetworks.mellanox.com
            version: v1alpha1
          - kind: MacvlanNetwork
            name: macvlannetworks.mellanox.com
            version: v1alpha1
          - kind: NicClusterPolicy
            name: nicclusterpolicies.mellanox.com
            version: v1alpha1
        description: |
          ## NVIDIA Network Operator
          The NVIDIA Network Operator simplifies the provisioning and management of NVIDIA networking resources  in a Kubernetes cluster. The operator automatically installs the required host networking software - bringing together all the needed components to provide high-speed network connectivity. These components include the NVIDIA networking driver, Kubernetes device plugin, CNI plugins, IP address management (IPAM) plugin and others.
          The NVIDIA Network Operator works in conjunction with the NVIDIA GPU Operator to deliver high-throughput, low-latency networking for scale-out, GPU computing clusters.

          The Network Operator uses Node Feature Discovery (NFD) labels in order to properly schedule resources.
          Nodes can be labelled manually or using the NFD Operator. An example of `NodeFeatureDiscovery`
          configuration is available in the documentation.
          The following NFD labels are used:
          `feature.node.kubernetes.io/pci-15b3.present` for nodes containing NVIDIA Networking hardware.
          `feature.node.kubernetes.io/pci-10de.present` for nodes containing NVIDIA GPU hardware.

          The Network Operator is open-source. For more information on contributions and release artifacts, see the [GitHub repo](https://github.com/Mellanox/network-operator/)
        displayName: NVIDIA Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sriov
        - networking
        links:
        - name: Network Operator Documentation
          url: https://docs.nvidia.com/networking/software/cloud-orchestration/index.html
        - name: GitHub repository
          url: https://github.com/Mellanox/network-operator/
        maintainers:
        - email: nvidia-network-operator-support@nvidia.com
          name: NVIDIA
        maturity: alpha
        provider:
          name: NVIDIA
          url: https://github.com/Mellanox/network-operator/
        relatedImages:
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:423aea08b4a0f01e2e19b6a709e14347bd08f8274f40002e0224090dfa4904fc
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:30354799264480e1aee057397eef2c52b277bbc6872184e2b7b811f4152b3a67
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:5ad37cd5ae96153e6f87670f437ff5f6e44febe7bb6eaeb1a0f219e28284e53d
        - nvcr.io/nvidia/mellanox/ipoib-cni@sha256:7564ad1142c863e61f1dd84f5714deba9a7c6f6d85efb383ac3a2566eb4f4b71
        - nvcr.io/nvidia/mellanox/nic-configuration-operator-daemon@sha256:b78c15904cecd343fa48374757b3619b5cbdc22059d5ee9731da87e35b94a2e2
        - registry.connect.redhat.com/nvidia-network-operator/nvidia-network-operator@sha256:2cc940711539edd93a23355dcb06365821d140346e1df248386a77667c0f47ea
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:f9d4b8358c68ba28f849ca710bf769c4327a639733c0ff30282ca33a744078f6
        - nvcr.io/nvidia/mellanox/nic-configuration-operator@sha256:03f34f7fde3f65ca7b214b66c6fdbc1250d4f3863f9c02b0fba78e8aa84efca3
        - nvcr.io/nvidia/mellanox/nvidia-k8s-ipam@sha256:3f692273c1598525b9c698c9d9cd463e5ddc55b638c6c031639f38786fc67475
        - nvcr.io/nvidia/mellanox/k8s-rdma-shared-dev-plugin@sha256:a87096761d155eeb6f470e042d2d167bb466d57e63b4aba957f57d745e15a9b2
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:9a831bfdf85f313b1f5749b7c9b2673bb8fff18b4ff768c9242dabaa4468e449
        - nvcr.io/nvidia/mellanox/doca-driver@sha256:d41eea65b102dc5bb5792871ae212b59a65dae492ca109c52138d5626eba1ffd
        - nvcr.io/nvidia/mellanox/nic-feature-discovery@sha256:1330e3a7ea2491bc310bfc4766769389ceb56d050831bf9c145b7bfb6aba36c4
        - nvcr.io/nvidia/cloud-native/network-operator@sha256:51270965284cceeda659fb1098e70a888b39664ceade7e9d455fb95ac85914b7
        - nvcr.io/nvidia/doca/doca_telemetry@sha256:13c2a2d055e501c03c6451413b85476ceafbc2fbffc7443952294c196f3f89f3
        - nvcr.io/nvidia/mellanox/network-operator-init-container@sha256:02ee60ac6ee163acc97706bd4229d268f608a95bcbcb6fccee90ceb1d8a6c62b
        - nvcr.io/nvidia/mellanox/sriov-network-device-plugin@sha256:7508a160f3f124e0b78d2b4d5a52deca6b9f56e226fee957c4d156e425eb101a
        - nvcr.io/nvidia/mellanox/ib-kubernetes@sha256:1fa251979b5f5201af50bc7aa6936829103d742f42bfbf752f20852f5fe44dfb
        version: 25.7.0
      entries:
      - name: nvidia-network-operator.v25.7.0
        version: 25.7.0
      name: v25.7
    defaultChannel: stable
    packageName: nvidia-network-operator
    provider:
      name: NVIDIA
      url: https://github.com/Mellanox/network-operator/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: SynaXG Engineering Team
      provider-url: ""
    name: synaxg-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: synaxg-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "card.synaxg.app.com/v1",
                "kind": "SG3Reset",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "synaxg-operator",
                    "app.kubernetes.io/instance": "sg3reset-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sg3reset",
                    "app.kubernetes.io/part-of": "synaxg-operator"
                  },
                  "name": "sg3reset-sample"
                },
                "spec": {
                  "image": "registry.connect.redhat.com/synaxg/synaxg-reset-utility@sha256:4050d5731a21bbec6e26165b8dc2b7632577ffa376e7eb056aa3245cf9574753",
                  "sg3ResetList": [
                    {
                      "nodeName": "test",
                      "pciList": [
                        {
                          "enable": "false",
                          "pciAddr": "000d:01:00.0"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "card.synaxg.app.com/v1",
                "kind": "SG3Update",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "synaxg-operator",
                    "app.kubernetes.io/instance": "sg3update-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sg3update",
                    "app.kubernetes.io/part-of": "synaxg-operator"
                  },
                  "name": "sg3update-sample"
                },
                "spec": {
                  "image": "registry.connect.redhat.com/synaxg/synaxg-upgrade-utility@sha256:7ffec3249edd2467f2414c2ce4232e8e436278fd1b43a51b66f54b6ea10a60d1",
                  "sg3UpdateList": [
                    {
                      "nodeName": "test",
                      "pciList": [
                        {
                          "enable": "false",
                          "pciAddr": "000d:01:00.0",
                          "sdkImageAddr": "quay.io/synaxgcom/sdk-img@sha256:1ed57013f278e5a858f71f343649652dbd52b6f3cf451374e45b6ac427fa76f9"
                        }
                      ]
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/synaxg/synaxg-operator-utility@sha256:3b22a8022a97cb1ffdb47ffcc9d9d562601f48669aa14fd58cd8ba6128b39bd7
          createdAt: "2025-07-01T03:42:07Z"
          description: SynaXG Operator will work with the SuperMicro Server + SG3
            card  and Openshift Container Platform.The Marvell kernel module “octeon_ep”
            and “octeon_ep_vf” are necessary to the Operator. The Operator can send
            command of “reset” and “update” to SG3 board via the VF channel.As a result,
            users can realize the process of “reset card” and “update firmware” on
            the web GUI, and monitor the executing result.
          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"
          operators.openshift.io/valid-subscription: free text
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: SynaXG
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SG3Reset is the Schema for the sg3resets API
            displayName: SG3 Reset
            kind: SG3Reset
            name: sg3resets.card.synaxg.app.com
            version: v1
          - description: SG3Update is the Schema for the sg3updates API
            displayName: SG3 Update
            kind: SG3Update
            name: sg3updates.card.synaxg.app.com
            version: v1
        description: SynaXG Operator will work with the SuperMicro Server + SG3 card  and
          Openshift Container Platform.The Marvell kernel module “octeon_ep” and “octeon_ep_vf”
          are necessary to the Operator. The Operator can send command of “reset”
          and “update” to SG3 board via the VF channel.As a result, users can realize
          the process of “reset card” and “update firmware” on the web GUI, and monitor
          the executing result.
        displayName: SynaXG vDU card 102X Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vDU
        - 102X
        - SynaXG
        links:
        - name: Synaxg Operator
          url: https://synaxg-operator.domain
        maintainers:
        - email: notice@synaxg.com
          name: Mantosh Malhotra
        maturity: alpha
        provider:
          name: SynaXG Engineering Team
        relatedImages:
        - registry.connect.redhat.com/synaxg/synaxg-operator@sha256:ff3d9ab5506c4487e5b6697ffe960584aadfe9f16408e7976d345c3d93375171
        - registry.connect.redhat.com/synaxg/synaxg-reset-utility@sha256:4050d5731a21bbec6e26165b8dc2b7632577ffa376e7eb056aa3245cf9574753
        - registry.connect.redhat.com/synaxg/synaxg-upgrade-utility@sha256:7ffec3249edd2467f2414c2ce4232e8e436278fd1b43a51b66f54b6ea10a60d1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:38ee3484ba60bb474e7231e9d0718157386716cea7ffd6da6f32ddd551a5243d
        - quay.io/synaxgcom/sdk-img@sha256:1ed57013f278e5a858f71f343649652dbd52b6f3cf451374e45b6ac427fa76f9
        - registry.connect.redhat.com/synaxg/synaxg-operator-utility@sha256:3b22a8022a97cb1ffdb47ffcc9d9d562601f48669aa14fd58cd8ba6128b39bd7
        version: 1.2.0
      entries:
      - name: synaxg-operator.v1.2.0
        version: 1.2.0
      name: alpha
    defaultChannel: alpha
    packageName: synaxg-operator
    provider:
      name: SynaXG Engineering Team
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: application-services-metering-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: application-services-metering-operator.v0.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "applicationservices.redhat.com/v1",
                "kind": "Meter",
                "metadata": {
                  "name": "app-services-metrics-example"
                },
                "spec": {
                  "includeInfrastructure": false,
                  "meterCollectionEnabled": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Application Runtime
          certified: "false"
          containerImage: quay.io/redhat-developer/application-services-metering-operator:0.6.1
          createdAt: "2021-09-28T13:00:00Z"
          description: Collect the core usage of products from the Application Services
            portfolio into a single metric labeled by Runtimes, Integration, and Automation.
          repository: https://github.com/redhat-developer/application-services-metering-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Meter
            displayName: Meter
            kind: Meter
            name: meters.applicationservices.redhat.com
            version: v1
        description: |-
          ## About the managed application

          There is no managed application created with this operator.

          ## About this Operator

          The metering operator watches pods for predetermined labels, across a cluster or namespace(s).
          The label schema for Red Hat Application Services is in the format:

          * `com.company=Red_Hat`
          * `rht.comp=PAM`
          * `rht.comp_ver=7.10`
          * `rht.prod_name=Red_Hat_Process_Automation`
          * `rht.prod_ver=7.11`
          * `rht.subcomp=rhpam-kogito-runtime`
          * `rht.subcomp_t=application`

          It's important not to remove labels as the operator will cease monitoring those pods.

          The operator exposes a metric named: `appsvcs_cpu_usage_cores`
          The metric has a label for product category, these are Runtimes, Integration and Automation.
          There is a prometheus rule using the metric to group by product name, `appsvcs_cores_by_product:sum`.

          The operator utilises the OpenShift Monitoring Stack to provide usage observability via cloud.redhat.com

          ## Prerequisites for enabling this Operator

          None.
        displayName: Application Services Metering Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - metering
        - operator
        links:
        - name: Red Hat Application Services portfolio
          url: https://www.redhat.com/en/products/middleware
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/redhat-developer/application-services-metering-operator:0.6.1
        - quay.io/openshift-community-operators/application-services-metering-operator@sha256:c3600cc8cd789df1f3c8f48bb3b1bc4c9cbf0285b6f6ce06f1d563c52f50915e
        version: 0.6.1
      entries:
      - name: application-services-metering-operator.v0.6.1
        version: 0.6.1
      - name: application-services-metering-operator.v0.6.0
        version: 0.6.0
      name: alpha
    defaultChannel: alpha
    packageName: application-services-metering-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: ""
    name: awss3-operator-registry
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: awss3operator.1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/screeley44/aws-s3-provisioner:v1.0.0
          createdAt: "2019-05-02 16:12:00"
          description: Manage the full lifecycle of installing, configuring and managing
            AWS S3 Provisioner.
          repository: https://github.com/yard-turkey/aws-s3-provisioner
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          required:
          - description: instance of an AWS S3 Bucket
            displayName: Object Bucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
          - description: Request for an AWS S3 Bucket
            displayName: Object Bucket Claim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
        description: |
          AWS S3 Operator will deploy the AWS S3 Provisioner which will dynamically or statically
          provision AWS S3 Bucket storage and access. The operator deploys the ObjectBucket (OB) and ObjectBucketClaim (OBC)
          CustomResourceDefinitions. The OB/OBC model follows the traditional Kubernetes PV/PVC pattern, when an OBC is detected
          the operator will act on the OBC to either provision a brand new S3 Bucket in AWS or gain access to an existing
          S3 Bucket in AWS. The operator produces an OB and ConfigMap and Secret which can then be consumed by application pods.

          **Important Note**: Currently, while in preview, this operator does not
          support automatic upgrades. You must remove the old version of the operator
          manually before installing a new version.
          ## Using AWS S3 Operator

          ### Administrator Creates Secret
          This secret will contain the elevated/admin privileges needed by the provisioner
          to properly access and create S3 Buckets and IAM users and policies. The AWS Access ID
          and AWS Secret Key will be needed for this.
          1. Create the Kubernetes Secret for the Provisioner's Owner Access.
          ```yaml
          apiVersion: v1
          kind: Secret
          metadata:
            name: s3-bucket-owner [1]
            namespace: s3-provisioner [2]
          type: Opaque
          data:
            AWS_ACCESS_KEY_ID: *base64 encoded value* [3]
            AWS_SECRET_ACCESS_KEY: *base64 encoded value* [4]
          ```
          1. Name of the secret, this will be referenced in StorageClass.
          1. Namespace where the Secret will exist.
          1. Your AWS_ACCESS_KEY_ID base64 encoded.
          1. Your AWS_SECRET_ACCESS_KEY base64 encoded.
          ```
           # kubectl create -f creds.yaml
          secret/s3-bucket-owner created
          ```
          ### Administrator Creates StorageClass
          The StorageClass defines the name of the provisioner and holds other properties that are needed to provision a new bucket, including
          the Owner Secret and Namespace, and the AWS Region.
          #### Greenfield Example:
          For Greenfield, a new, dynamic bucket will be generated.
          1. Create the Kubernetes StorageClass for the Provisioner.
          ```yaml
          kind: StorageClass
          apiVersion: storage.k8s.io/v1
          metadata:
            name: s3-buckets [1]
          provisioner: aws-s3.io/bucket [2]
          parameters:
            region: us-west-1 [3]
            secretName: s3-bucket-owner [4]
            secretNamespace: s3-provisioner [5]
          reclaimPolicy: Delete [6]
          ```
          1. Name of the StorageClass, this will be referenced in the User ObjectBucketClaim.
          1. Provisioner name
          1. AWS Region that the StorageClass will serve
          1. Name of the bucket owner Secret created above
          1. Namespace where the Secret will exist
          1. reclaimPolicy (Delete or Retain) indicates if the bucket can be deleted when the OBC is deleted.
          **NOTE:** the absence of the `bucketName` Parameter key in the storage class indicates this is a new bucket and its name is based on the bucket name fields in the OBC.
          ```
           # kubectl create -f storageclass-greenfield.yaml
          storageclass.storage.k8s.io/s3-buckets created
          ```
          #### Brownfield Example:
          For brownfield, the StorageClass defines the name of the provisioner and the name of the existing bucket. It also includes other properties needed by the target
          provisioner, including: the Owner Secret and Namespace, and the AWS Region
          1. Create the Kubernetes StorageClass for the Provisioner.
          ```yaml
          kind: StorageClass
          apiVersion: storage.k8s.io/v1
          metadata:
            name: s3-existing-buckets [1]
          provisioner: aws-s3.io/bucket [2]
          parameters:
            bucketName: my-existing-bucket [3]
            region: us-west-1 [4]
            secretName: s3-bucket-owner [5]
            secretNamespace: s3-provisioner [6]
          ```
          1. Name of the StorageClass, this will be referenced in the User ObjectBucketClaim.
          1. Provisioner name
          1. Name of the existing bucket
          1. AWS Region that the StorageClass will serve
          1. Name of the bucket owner Secret created above
          1. Namespace for that bucket owner secret
          **NOTE:** the storage class's `reclaimPolicy` is ignored for existing buckets.
          ```
           # kubectl create -f storageclass-brownfield.yaml
          storageclass.storage.k8s.io/s3-buckets created
          ```
          ### User Creates ObjectBucketClaim
          An ObjectBucketClaim follows the same concept as a PVC, in that
          it is a request for Object Storage, the user doesn't need to
          concern him/herself with the underlying storage, just that
          they need access to it. The user will work with the cluster/storage
          administrator to get the proper StorageClass needed and will
          then request access via the OBC.
          #### Greenfield Request Example:
          1. Create the ObjectBucketClaim.
          ```yaml
          apiVersion: objectbucket.io/v1alpha1
          kind: ObjectBucketClaim
          metadata:
            name: myobc [1]
            namespace: s3-provisioner [2]
          spec:
            generateBucketName: mybucket [3]
            bucketName: my-awesome-bucket [4]
            storageClassName: s3-buckets [5]
          ```
          1. Name of the OBC
          1. Namespace of the OBC
          1. Name prepended to a random string used to generate a bucket name. It is ignored if bucketName is defined
          1. Name of new bucket which must be unique across all AWS regions, otherwise an error occurs when creating the bucket. If present, this name overrides `generateName`
          1. StorageClass name
          **NOTE:** if both `generateBucketName` and `bucketName` are omitted, and the storage class does _not_ define a bucket name, then a new, random bucket name is generated with no prefix.
          ```
           # kubectl create -f obc-brownfield.yaml
          objectbucketclaim.objectbucket.io/myobc created
          ```
          #### Brownfield Request Example:
          1. Create the ObjectBucketClaim.
          ```yaml
          apiVersion: objectbucket.io/v1alpha1
          kind: ObjectBucketClaim
          metadata:
            name: myobc [1]
            namespace: s3-provisioner [2]
          spec:
            storageClassName: s3-existing-buckets [3]
          ```
          1. Name of the OBC
          1. Namespace of the OBC
          1. StorageClass name
          **NOTE:** in the OBC here there is no reference to the bucket's name. This is defined in the storage class and is not a concern of the user creating the claim to this bucket.  An OBC does have fields for defining a bucket name for greenfield use only.
          ```
           # kubectl create -f obc-brownfield.yaml
          objectbucketclaim.objectbucket.io/myobc created
          ```
          ### Results and Recap
          Let's pause for a moment and digest what just happened.
          After creating the OBC, and assuming the S3 provisioner is running, we now have
          the following Kubernetes resources:
          .  a global ObjectBucket (OB) which contains: bucket endpoint info (including region and bucket name), a reference to the OBC, and a reference to the storage class. Unique to S3, the OB also contains the bucket Amazon Resource Name (ARN).Note: there is always a 1:1 relationship between an OBC and an OB.
          .  a ConfigMap in the same namespace as the OBC, which contains the same endpoint data found in the OB.
          .  a Secret in the same namespace as the OBC, which contains the AWS key-pairs needed to access the bucket.
          And of course, we have a *new* AWS S3 Bucket which you should be able to see via the AWS Console.
          *ObjectBucket*
          ```yaml
           # kubectl get ob obc-s3-provisioner-my-awesome-bucket -o yaml
          apiVersion: objectbucket.io/v1alpha1
          kind: ObjectBucket
          metadata:
            creationTimestamp: "2019-04-03T15:42:22Z"
            generation: 1
            name: obc-s3-provisioner-my-awesome-bucket
            resourceVersion: "15057"
            selfLink: /apis/objectbucket.io/v1alpha1/objectbuckets/obc-s3-provisioner-my-awesome-bucket
            uid: 0bfe8e84-576d-4c4e-984b-f73c4460f736
          spec:
            Connection:
              additionalState:
                ARN: arn:aws:iam::<accountid>:policy/my-awesome-bucket-vSgD5 [1]
                UserName: my-awesome-bucket-vSgD5 [2]
              endpoint:
                additionalConfig: null
                bucketHost: s3-us-west-1.amazonaws.com
                bucketName: my-awesome-bucket [3]
                bucketPort: 443
                region: us-west-1
                ssl: true
                subRegion: ""
            claimRef: null [4]
            reclaimPolicy: null
            storageClassName: s3-buckets [5]
          ```
          1. The AWS Policy created for this user and bucket.
          1. The new user generated by the Provisioner to access this existing bucket.
          1. The bucket name.
          1. The reference to the OBC (not filled in yet).
          1. The reference to the StorageClass used.
          *ConfigMap*
          ```yaml
           # kubectl get cm myobc -n s3-provisioner -o yaml
          apiVersion: v1
          data:
            BUCKET_HOST: s3-us-west-1.amazonaws.com [1]
            BUCKET_NAME: my-awesome-bucket [2]
            BUCKET_PORT: "443"
            BUCKET_REGION: us-west-1
            BUCKET_SSL: "true"
            BUCKET_SUBREGION: ""
          kind: ConfigMap
          metadata:
            creationTimestamp: "2019-04-01T19:11:38Z"
            finalizers:
            - objectbucket.io/finalizer
            name: my-awesome-bucket
            namespace: s3-provisioner
            resourceVersion: "892"
            selfLink: /api/v1/namespaces/s3-provisioner/configmaps/my-awesome-bucket
            uid: 2edcc58a-aff8-4a29-814a-ffbb6439a9cd
          ```
          1. The AWS S3 host.
          1. The name of the new bucket we are gaining access to.
          *Secret*
          ```yaml
           # kubectl get secret my-awesome-bucket -n s3-provisioner -o yaml
          apiVersion: v1
          data:
            AWS_ACCESS_KEY_ID: *the_new_access_id* [1]
            AWS_SECRET_ACCESS_KEY: *the_new_access_key_value* [2]
          kind: Secret
          metadata:
            creationTimestamp: "2019-04-03T15:42:22Z"
            finalizers:
            - objectbucket.io/finalizer
            name: my-awesome-bucket
            namespace: s3-provisioner
            resourceVersion: "15058"
            selfLink: /api/v1/namespaces/s3-provisioner/secrets/screeley-provb-5
            uid: 225c71a5-9d75-4ccc-b41f-bfe91b272a13
          type: Opaque
          ```
          1. The new generated AWS Access Key ID.
          1. The new generated AWS Secret Access Key.
          What happened in AWS? The first thing we do on any OBC request is
          create a new IAM user and generate Access ID and Secret Keys.
          This allows us to also better control ACLs. We also create a policy
          in IAM which we then attach to the user and bucket. We also created a new bucket, called *my-awesome-bucket*.
          When the OBC is deleted all of its Kubernetes and AWS resources will also be deleted, which includes:
          the generated OB, Secret, ConfigMap, IAM user, and policy.
          If the _retainPolicy_ on the StorageClass for this bucket is *"Delete"*, then, in addition to the above cleanup, the physical bucket is also deleted.
          **NOTE:** The actual bucket is only deleted if the Storage Class's _reclaimPolicy_ is "Delete".
          ### User Creates Pod
          Now that we have our bucket and connection/access information, a pod
          can be used to access the bucket. This can be done in several different
          ways, but the key here is that the provisioner has provided the proper
          endpoints and keys to access the bucket. The user then simply references
          the keys.
          1. Create a Sample Pod to Access the Bucket.
          ```yaml
          apiVersion: v1
          kind: Pod
          metadata:
            name: photo1
            labels:
              name: photo1
          spec:
            containers:
            - name: photo1
              image: docker.io/screeley44/photo-gallery:latest
              imagePullPolicy: Always
              envFrom:
              - configMapRef:
                  name: my-awesome-bucket <1>
              - secretRef:
                  name: my-awesome-bucket <2>
              ports:
              - containerPort: 3000
                protocol: TCP
          ```
          1. Name of the generated configmap from the provisioning process
          1. Name of the generated secret from the provisioning process
          *[Note]* Generated ConfigMap and Secret are same name as the OBC!
          Lastly, expose the pod as a service so you can access the url from a browser. In this example,
          I exposed as a LoadBalancer
          ```
            # kubectl expose pod photo1 --type=LoadBalancer --name=photo1 -n your-namespace
          ```
          To access via a url use the EXTERNAL-IP
          ```
            # kubectl get svc photo1
            NAME                         TYPE           CLUSTER-IP       EXTERNAL-IP                                                               PORT(S)          AGE
            photo1                       LoadBalancer   100.66.124.105   a00c53ccb3c5411e9b6550a7c0e50a2a-2010797808.us-east-1.elb.amazonaws.com   3000:32344/TCP   6d
          ```
          **NOTE:** This is just one example of a Pod that can utilize the bucket information,
          there are several ways that these pod applications can be developed and therefore
          the method of getting the actual values needed from the Secrets and ConfigMaps
          will vary greatly, but the idea remains the same, that the pod consumes the generated
          ConfigMap and Secret created by the provisioner.
        displayName: AWS S3 Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - awss3provisioner
        - aws
        - S3
        - provisioner
        - buckets
        links:
        - name: AWS S3 Provisioner
          url: https://github.com/yard-turkey/aws-s3-provisioner
        - name: Provisioner Examples
          url: https://github.com/yard-turkey/aws-s3-provisioner/tree/master/examples
        - name: Operator Documentation
          url: https://github.com/yard-turkey/awss3operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/openshift-community-operators/awss3-operator-registry@sha256:9ab3a2cd00b8704a8bae8e9b75f2a95d0a3e60fa3cb52589db8a4e7641b73027
        - quay.io/screeley44/aws-s3-provisioner:v1.0.0
        version: 1.0.1
      entries:
      - name: awss3operator.1.0.1
        version: 1.0.1
      name: alpha
    defaultChannel: alpha
    packageName: awss3-operator-registry
    provider:
      name: Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: machine-deletion-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: machine-deletion-remediation.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediation",
                "metadata": {
                  "name": "machinedeletionremediation-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediationTemplate",
                "metadata": {
                  "name": "machinedeletionremediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/machine-deletion-remediation-operator:v0.1.0
          createdAt: "2023-05-11 10:46:12"
          description: Machine Deletion Remediation operator for reprovisioning unhealthy
            nodes using the Machine API.
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/machine-deletion-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MachineDeletionRemediation is the Schema for the machinedeletionremediations
              API
            displayName: Machine Deletion Remediation
            kind: MachineDeletionRemediation
            name: machinedeletionremediations.machine-deletion-remediation.medik8s.io
            version: v1alpha1
          - description: MachineDeletionRemediationTemplate is the Schema for the
              machinedeletionremediationtemplates API
            displayName: Machine Deletion Remediation Template
            kind: MachineDeletionRemediationTemplate
            name: machinedeletionremediationtemplates.machine-deletion-remediation.medik8s.io
            version: v1alpha1
        description: |
          Machine Deletion Remediation (MDR) is a remediator designed to reprovision unhealthy
          nodes using the Machine API. MDR can be used together with NodeHealthCheck (NHC),
          which detects the unhealthy Node and creates the Custom Resource for MDR.

          # How it works
          MDR follows the annotation on the Node to the associated Machine object, confirms
          that it has an owning controller (e.g. MachineSetController), that will recreate the
          Machine once deleted, and then proceeds with deleting the Machine.

          # How to use MDR with NHC
          Since NHC comes with Self Node Remediation as the default remediation mechanism,
          it needs to be configured to use MDR with the following steps

          - Create the MDR Template CR
          - Modify NHC's `.spec.remediationTemplate` to use MDR as it's remediator

          see https://github.com/medik8s/machine-deletion-remediation#readme for configuration examples.
        displayName: Machine Deletion Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - machine
        - deletion
        - remediation
        - mdr
        links:
        - name: Machine Deletion Remediation
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/machine-deletion-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/openshift-community-operators/machine-deletion-remediation@sha256:34d1e6cbfaf248a7b28c2a6e6a39f3fe46c183b9c38ac5fbb98eb3f421ba903c
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/medik8s/machine-deletion-remediation-operator:v0.1.0
        version: 0.1.0
      entries:
      - name: machine-deletion-remediation.v0.1.0
        version: 0.1.0
      name: candidate
    - currentCSV: machine-deletion-remediation.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediation",
                "metadata": {
                  "name": "machinedeletionremediation-sample"
                },
                "spec": {},
                "status": {
                  "conditions": [
                    {
                      "reason": "RemediationFinished",
                      "status": false,
                      "type": "Processing"
                    },
                    {
                      "reason": "RemediationFinished",
                      "status": true,
                      "type": "Succeeded"
                    },
                    {
                      "reason": "MachineDeletionOnBareMetalProviderReason",
                      "status": false,
                      "type": "PermanentNodeDeletionExpected"
                    }
                  ]
                }
              },
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediationTemplate",
                "metadata": {
                  "name": "machinedeletionremediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/machine-deletion-remediation-operator:v0.5.0
          createdAt: "2025-11-24 11:43:35"
          description: Machine Deletion Remediation operator for reprovisioning unhealthy
            nodes using the Machine API.
          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.skipRange: '>=0.0.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/machine-deletion-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MachineDeletionRemediation is the Schema for the machinedeletionremediations
              API
            displayName: Machine Deletion Remediation
            kind: MachineDeletionRemediation
            name: machinedeletionremediations.machine-deletion-remediation.medik8s.io
            version: v1alpha1
          - description: MachineDeletionRemediationTemplate is the Schema for the
              machinedeletionremediationtemplates API
            displayName: Machine Deletion Remediation Template
            kind: MachineDeletionRemediationTemplate
            name: machinedeletionremediationtemplates.machine-deletion-remediation.medik8s.io
            version: v1alpha1
        description: |
          Machine Deletion Remediation (MDR) is a remediator designed to reprovision unhealthy
          nodes using the Machine API. MDR can be used together with NodeHealthCheck (NHC),
          which detects the unhealthy Node and creates the Custom Resource for MDR.

          # How it works
          MDR follows the annotation on the Node to the associated Machine object, confirms
          that it has an owning controller (e.g. MachineSetController), that will recreate the
          Machine once deleted, and then proceeds with deleting the Machine.

          # How to use MDR with NHC
          To use MDR as remediation mechanism for NHC, it needs to be configured with the
          following steps:

          - Create the MDR Template CR
          - Modify NHC's `.spec.remediationTemplate` to use MDR as it's remediator

          see https://github.com/medik8s/machine-deletion-remediation#readme for configuration examples.
        displayName: Machine Deletion Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - machine
        - deletion
        - remediation
        - mdr
        links:
        - name: Machine Deletion Remediation
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/machine-deletion-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/machine-deletion-remediation@sha256:2f945457449d5e8861cf62af3e0a487cfcfb039ab62f0c4a44881e7506bba6b5
        - quay.io/medik8s/machine-deletion-remediation-operator:v0.5.0
        version: 0.5.0
      entries:
      - name: machine-deletion-remediation.v0.5.0
        version: 0.5.0
      - name: machine-deletion-remediation.v0.4.0
        version: 0.4.0
      - name: machine-deletion-remediation.v0.3.0
        version: 0.3.0
      - name: machine-deletion-remediation.v0.2.1
        version: 0.2.1
      - name: machine-deletion-remediation.v0.2.0
        version: 0.2.0
      name: stable
    defaultChannel: stable
    packageName: machine-deletion-remediation
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: aws-efs-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-efs-csi-driver-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-aws-efs-csi-driver-rhel9-operator@sha256:f5a64edc71e8472da9b984c6b8d1efbf23faa3ec28814d28eb9204e87afdb072
          createdAt: "2021-07-14T00:00:00Z"
          description: Install and configure AWS EFS CSI driver.
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=4.9.0-0 <4.20.0-202512090918'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/aws-efs-csi-driver-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          AWS EFS CSI Driver Operator provides AWS Elastic File Service (EFS) CSI Driver that enables you to create and mount AWS EFS PersistentVolumes.

          Please follow [AWS EFS CSI Driver Operator documentation](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html) to:

          1. [Install the operator](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html#persistent-storage-csi-olm-operator-install_persistent-storage-csi-aws-efs). This section also covers details about configuring an AWS role in OCP cluster that uses Secure Token Services (STS).

          2. [Install the AWS EFS CSI driver using the operator](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html#persistent-storage-csi-efs-driver-install_persistent-storage-csi-aws-efs)

          3. Finally, [create a StorageClass](https://docs.openshift.com/container-platform/4.20/storage/container_storage_interface/persistent-storage-csi-aws-efs.html#storage-create-storage-class_persistent-storage-csi-aws-efs) that enables dynamic provisioning of PersistentVolumes.
        displayName: AWS EFS CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - efs
        links:
        - name: Documentation
          url: https://github.com/openshift/aws-efs-csi-driver-operator
        - name: Source Repository
          url: https://github.com/openshift/aws-efs-csi-driver-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:ec763a4e90cb4b256a7210cd2e30949a7bc8e83ee04a95c649270febcc892210
        - registry.redhat.io/openshift4/ose-aws-efs-csi-driver-operator-bundle@sha256:ca5538fdd21cf27dcbcfdc1168c76ad2c2ba2b8bae97e2d22f07e16a7212259f
        - registry.redhat.io/openshift4/ose-aws-efs-csi-driver-container-rhel9@sha256:583c12b4a5e07fc8af95afef764d6ea9da437d7adbdc910825b3f44e928ca110
        - registry.redhat.io/openshift4/ose-aws-efs-csi-driver-rhel9-operator@sha256:f5a64edc71e8472da9b984c6b8d1efbf23faa3ec28814d28eb9204e87afdb072
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        version: 4.20.0-202512090918
      entries:
      - name: aws-efs-csi-driver-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: aws-efs-csi-driver-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: aws-efs-csi-driver-operator.v4.20.0-202511191615
        version: 4.20.0-202511191615
      - name: aws-efs-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: aws-efs-csi-driver-operator.v4.20.0-202511040554
        version: 4.20.0-202511040554
      - name: aws-efs-csi-driver-operator.v4.20.0-202510212154
        version: 4.20.0-202510212154
      - name: aws-efs-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: aws-efs-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      operatorframework.io/os.zos: supported
      provider: Red Hat
      provider-url: ""
    name: hawtio-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hawtio-operator.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.14.0",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/hawtio/operator:0.5.0
          createdAt: "2022-04-08T00:00:00Z"
          description: Hawtio eases the discovery and management of Java applications
            deployed on OpenShift.
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Hawtio Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Hawtio
          ==============

          The Hawtio console eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between the Hawtio console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Hawtio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Hawtio Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The Hawtio team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - docker.io/hawtio/operator:0.5.0
        - quay.io/openshift-community-operators/hawtio-operator@sha256:38b36745547a08afd10e1620f8243e6f1ce18a3eb8883ec78cd631577177c5ee
        version: 0.5.0
      entries:
      - name: hawtio-operator.v0.5.0
        version: 0.5.0
      - name: hawtio-operator.v0.4.0
        version: 0.4.0
      name: alpha
    - currentCSV: hawtio-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/hawtio/operator:1.2.0
          createdAt: "2024-12-02T17:22:48Z"
          description: Hawtio eases the discovery and management of Java applications
            deployed on OpenShift.
          olm.skipRange: '>=1.0.0 <1.0.2'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Hawtio console that eases the discovery and management
              of hawtio-enabled applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Hawtio
          ==============

          The Hawtio console eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between the Hawtio console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#jvm-agent).
        displayName: Hawtio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Hawtio Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The Hawtio team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hawtio-operator@sha256:306ab7846b4c65dd9cb21d903a6cfc9b6f8f2ad409fffbdd136b30ad5989a255
        - quay.io/hawtio/operator:1.2.0
        version: 1.2.0
      entries:
      - name: hawtio-operator.v1.2.0
        version: 1.2.0
      - name: hawtio-operator.v1.1.1
        version: 1.1.1
      - name: hawtio-operator.v1.1.0
        version: 1.1.0
      - name: hawtio-operator.v1.0.1
        version: 1.0.1
      - name: hawtio-operator.v1.0.0
        version: 1.0.0
      - name: hawtio-operator.v0.5.0
        version: 0.5.0
      - name: hawtio-operator.v0.4.0
        version: 0.4.0
      name: latest
    - currentCSV: hawtio-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              },
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "hawtio-online"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "200Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Cluster",
                  "version": "1.12"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/hawtio/operator:1.2.0
          createdAt: "2024-12-02T17:22:48Z"
          description: Hawtio eases the discovery and management of Java applications
            deployed on OpenShift.
          olm.skipRange: '>=1.0.0 <1.0.2'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Hawtio console that eases the discovery and management
              of hawtio-enabled applications
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1
          - kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          Hawtio
          ==============

          The Hawtio console eases the discovery and management of Java applications deployed on OpenShift.

          To secure the communication between the Hawtio console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `hawtio-online.hawtio.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/manual/agents.html#jvm-agent).
        displayName: Hawtio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Hawtio Web site
          url: https://hawt.io
        maintainers:
        - email: hawtio@googlegroups.com
          name: The Hawtio team
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hawtio-operator@sha256:306ab7846b4c65dd9cb21d903a6cfc9b6f8f2ad409fffbdd136b30ad5989a255
        - quay.io/hawtio/operator:1.2.0
        version: 1.2.0
      entries:
      - name: hawtio-operator.v1.2.0
        version: 1.2.0
      - name: hawtio-operator.v1.1.1
        version: 1.1.1
      - name: hawtio-operator.v1.1.0
        version: 1.1.0
      - name: hawtio-operator.v1.0.1
        version: 1.0.1
      - name: hawtio-operator.v1.0.0
        version: 1.0.0
      - name: hawtio-operator.v0.5.0
        version: 0.5.0
      - name: hawtio-operator.v0.4.0
        version: 0.4.0
      name: stable-v1
    defaultChannel: stable-v1
    packageName: hawtio-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Kurrent, Inc
      provider-url: https://kurrent.io
    name: kurrentdb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kurrentdb-operator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "kubernetes.kurrent.io/v1",
                "kind": "KurrentDB",
                "metadata": {
                  "name": "insecure",
                  "namespace": "kurrent"
                },
                "spec": {
                  "replicas": 1,
                  "image": "registry.connect.redhat.com/kurrent-io/kurrentdb@sha256:4dc9fcb41de27695ba04731e768fb18cde2f1c7882f8787dfce3d32b93520131",
                  "resources": {
                    "requests": {
                      "cpu": "1000m",
                      "memory": "1Gi"
                    }
                  },
                  "storage": {
                    "volumeMode": "Filesystem",
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "512Mi"
                      }
                    }
                  },
                  "volumeSnapshotClassName": "e2e",
                  "network": {
                    "domain": "kurrent.dev",
                    "fqdnTemplate": "{podName}.{domain}",
                    "loadBalancer": {
                      "enabled": true
                    }
                  }
                }
              },
              {
                "apiVersion": "kubernetes.kurrent.io/v1",
                "kind": "KurrentDBBackup",
                "metadata": {
                  "name": "insecure",
                  "namespace": "kurrent"
                },
                "spec": {
                  "clusterName": "insecure"
                }
              },
              {
                "apiVersion": "kubernetes.kurrent.io/v1",
                "kind": "KurrentDBBackupSchedule",
                "metadata": {
                  "name": "my-schedule",
                  "namespace": "kurrent"
                },
                "spec": {
                  "schedule": "* * * * *",
                  "template": {
                    "spec": {
                      "clusterName": "insecure"
                    }
                  },
                  "keep": 10
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database, Streaming & Messaging, OpenShift Optional
          certified: "true"
          containerImage: registry.connect.redhat.com/kurrent-io/kurrentdb-operator@sha256:9e10c1f7055fc5bbe8e4d8289b247389d337a77a27d56232022695405a10b980
          createdAt: "2025-12-23T00:00:00Z"
          description: An operator to seamlessly deploy and manage KurrentDB clusters
            and backups.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: license required, contact us
            at https://www.kurrent.io/contact
          repository: https://github.com/kurrent-io/kurrentdb
          support: support@kurrent.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A declarative representation of a KurrentDB cluster.
            kind: KurrentDB
            name: kurrentdbs.kubernetes.kurrent.io
            version: v1
          - description: A VolumeSnapshot-based backup of a KurrentDB cluster.
            kind: KurrentDBBackup
            name: kurrentdbbackups.kubernetes.kurrent.io
            version: v1
          - description: A schedule for creating and retaining of KurrentDBBackup
              resources.
            kind: KurrentDBBackupSchedule
            name: kurrentdbbackupschedules.kubernetes.kurrent.io
            version: v1
        description: An operator to seamlessly deploy and manage KurrentDB clusters
          and backups.
        displayName: KurrentDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kurrent
        - event sourcing
        - database
        links:
        - name: Website
          url: https://kurrent.io
        - name: Documentation
          url: https://docs.kurrent.io/server/kubernetes-operator
        maintainers:
        - email: support@kurrent.io
          name: Kurrent, Inc
        maturity: stable
        minKubeVersion: 1.30.0
        nativeApis:
        - group: snapshot.storage.k8s.io
          kind: VolumeSnapshot
          version: v1
        - group: snapshot.storage.k8s.io
          kind: VolumeSnapshotClass
          version: v1
        provider:
          name: Kurrent, Inc
          url: https://kurrent.io
        relatedImages:
        - registry.connect.redhat.com/kurrent-io/dns@sha256:07e8771886b4e4ab7393dee7a56c4a6d2c2225ba0aeca25e47199da616c903e4
        - registry.connect.redhat.com/kurrent-io/kurrentdb-operator-bundle@sha256:929fc9043cf20eb2838c3d63598967bcfba264011e1b9a98c9d8a38821926edc
        - registry.connect.redhat.com/kurrent-io/kurrentdb-operator@sha256:9e10c1f7055fc5bbe8e4d8289b247389d337a77a27d56232022695405a10b980
        - registry.connect.redhat.com/kurrent-io/kurrentdb@sha256:4dc9fcb41de27695ba04731e768fb18cde2f1c7882f8787dfce3d32b93520131
        version: 1.5.0
      entries:
      - name: kurrentdb-operator.v1.5.0
        version: 1.5.0
      name: stable
    defaultChannel: stable
    packageName: kurrentdb-operator
    provider:
      name: Kurrent, Inc
      url: https://kurrent.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataStax
      provider-url: ""
    name: cass-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cass-operator.v1.23.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cassandra.datastax.com/v1beta1",
                "kind": "CassandraDatacenter",
                "metadata": {
                  "name": "dc1"
                },
                "spec": {
                  "clusterName": "development",
                  "config": {
                    "cassandra-yaml": {
                      "authenticator": "PasswordAuthenticator",
                      "authorizer": "CassandraAuthorizer",
                      "num_tokens": 16,
                      "role_manager": "CassandraRoleManager"
                    },
                    "jvm-server-options": {
                      "initial_heap_size": "1G",
                      "max_heap_size": "1G"
                    }
                  },
                  "managementApiAuth": {
                    "insecure": {}
                  },
                  "podTemplateSpec": {
                    "spec": {
                      "containers": [
                        {
                          "name": "cassandra"
                        }
                      ],
                      "securityContext": {}
                    }
                  },
                  "racks": [
                    {
                      "name": "rack1"
                    },
                    {
                      "name": "rack2"
                    },
                    {
                      "name": "rack3"
                    }
                  ],
                  "resources": {
                    "requests": {
                      "cpu": "1000m",
                      "memory": "2Gi"
                    }
                  },
                  "serverType": "cassandra",
                  "serverVersion": "4.1.2",
                  "size": 3,
                  "storageConfig": {
                    "cassandraDataVolumeClaimSpec": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "10Gi"
                        }
                      },
                      "storageClassName": "server-storage"
                    }
                  }
                }
              },
              {
                "apiVersion": "control.k8ssandra.io/v1alpha1",
                "kind": "CassandraTask",
                "metadata": {
                  "name": "example-cleanup"
                },
                "spec": {
                  "datacenter": {
                    "name": "dc2",
                    "namespace": "cass-operator"
                  },
                  "jobs": [
                    {
                      "command": "cleanup",
                      "name": "cleanup-run"
                    }
                  ]
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database,Big Data,OpenShift Optional
          certified: "true"
          containerImage: registry.connect.redhat.com/datastax/cass-operator@sha256:6abc6253b50a0d7f6bdd4b394d2bf96320a8845952aeb8f0bbed99863192ec52
          createdAt: "2025-03-20"
          description: |
            Simple provisioning, turn-key operations, and automated remediation of Apache Cassandra clusters
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/k8ssandra/cass-operator
          support: DataStax
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CassandraDatacenter is the Schema for the cassandradatacenters
              API
            displayName: Cassandra Datacenter
            kind: CassandraDatacenter
            name: cassandradatacenters.cassandra.datastax.com
            version: v1beta1
          - description: CassandraTask is the Schema for the cassandrajobs API
            displayName: Cassandra Task
            kind: CassandraTask
            name: cassandratasks.control.k8ssandra.io
            version: v1alpha1
        description: "## Apache Cassandra\n\nThe Apache Cassandra database is the
          right choice when you need scalability and\nhigh availability without compromising
          performance. Linear scalability and\nproven fault-tolerance on commodity
          hardware or cloud infrastructure make it the\nperfect platform for mission-critical
          data. Cassandra's support for replicating\nacross multiple datacenters is
          best-in-class, providing lower latency for your\nusers and the peace of
          mind of knowing that you can survive regional outages.\n\n## DataStax Enterprise\n\nThe
          most advanced distribution of Apache Cassandra™ on the market, with the\nenterprise
          functionality needed for serious production systems and backed up and\nsupported
          by the best distributed-experts in the world. It's one platform for\nall
          types of applications anywhere, any cloud, any model: key-value, graph,\ntabular,
          JSON.\n\nDataStax Enterprise is a fully integrated and optimized database,
          with graph,\nanalytics, and search included, all with a unified security
          model. Simply put,\nit's the only database capable of meeting today's demanding
          requirements\n\n## Operator Details\n\n`cass-operator` is designed as a
          modular operator for Apache Cassandra and\nderived  distributions. Apache
          Cassandra is a distributed database consisting of\nmultiple nodes working
          in concert to store data and process queries along a\nnumber of fault domains.
          `cass-operator` has the deployment of a Cassandra\ncluster around the logical
          domain of a datacenter with the `CassandraDatacenter`\ncustom resource.\n
          \   \nUpon submission of one of these resources it handles provisioning
          the underlying\nstateful sets (analogous to C\\* logical racks), services,
          and configuration.\nAdditionally through monitoring pod state via Kubernetes
          callbacks it handles day to day\noperations such as restarting failed processes,
          scaling clusters up, and deploying\nconfiguration changes in a rolling,
          non-disruptive, fashion.\n    \nThis operator is designed to be `Namespace`
          scoped. A single Kubernetes cluster may\nbe running multiple instances of
          this operator, in separate namespaces, to support\na number of C\\* clusters
          and environments. Configuration is simple with the usage of\nYAML based
          overrides in the Custom Resource paired with an `init` container.\n    \nIn
          C\\* clusters ordering and timing of certain operations are important to
          keep the system\nevenly distributed. `cass-operator` takes advantage of
          a sidecar process within the\nmain container to handle the orchestration
          of starting our main C* process."
        displayName: DataStax Kubernetes Operator for Apache Cassandra
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - k8ssandra
        - cass-operator
        - DataStax Enterprise
        - Apache Cassandra
        - DSE
        - C*
        - Cassandra
        links:
        - name: DataStax
          url: https://datastax.com
        - name: Operator GitHub Repo
          url: https://github.com/k8ssandra/cass-operator
        - name: Config Builder GitHub Repo
          url: https://github.com/datastax/cass-config-builder
        - name: Documentation [1]
          url: https://github.com/k8ssandra/cass-operator/tree/master/docs/user
        - name: Documentation [2]
          url: https://docs.datastax.com/en/cass-operator/doc/cass-operator/cassOperatorTOC.html
        maintainers:
        - email: cass-operator@datastax.com
          name: DataStax Operator Team
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: DataStax
        relatedImages:
        - registry.connect.redhat.com/datastax/cass-operator@sha256:6abc6253b50a0d7f6bdd4b394d2bf96320a8845952aeb8f0bbed99863192ec52
        - registry.connect.redhat.com/datastax/system-logger@sha256:3408620786e6265aa835be56f85aadc48b20060b2038dc21126f614685f77c6b
        - registry.connect.redhat.com/datastax/cass-operator-bundle@sha256:8d130a5f2407931dbc73e45a53610b95ceb04cb507b8f6519f630cada1c0da45
        version: 1.23.2
      entries:
      - name: cass-operator.v1.23.2
        version: 1.23.2
      name: stable
    defaultChannel: stable
    packageName: cass-operator
    provider:
      name: DataStax
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NeuVector
      provider-url: ""
    name: neuvector-certified-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: neuvector-operator.v1.5.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apm.neuvector.com/v1alpha1",
                "kind": "Neuvector",
                "metadata": {
                  "name": "neuvector"
                },
                "spec": {
                  "openshift": true,
                  "tag": "5.4.8",
                  "oem": "",
                  "imagePullSecrets": "",
                  "psp": false,
                  "rbac": true,
                  "serviceAccount": "default",
                  "leastPrivilege": false,
                  "global": {
                    "cattle": {
                      "url": ""
                    }
                  },
                  "bootstrapPassword": "",
                  "autoGenerateCert": true,
                  "defaultValidityPeriod": 365,
                  "internal": {
                    "certmanager": {
                      "enabled": false,
                      "secretname": "neuvector-internal"
                    },
                    "autoGenerateCert": true,
                    "autoRotateCert": true
                  },
                  "controller": {
                    "enabled": true,
                    "annotations": {},
                    "strategy": {
                      "type": "RollingUpdate",
                      "rollingUpdate": {
                        "maxSurge": 1,
                        "maxUnavailable": 0
                      }
                    },
                    "image": "registry.connect.redhat.com/neuvector/controller@sha256:b33ab222ee7a4e81387d7e85739f32ab9999bebeef58a795c513a6db53297108",
                    "imagePullPolicy": "IfNotPresent",
                    "replicas": 3,
                    "disruptionbudget": 0,
                    "schedulerName": "",
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "searchRegistries": "",
                    "env": [],
                    "affinity": {
                      "podAntiAffinity": {
                        "preferredDuringSchedulingIgnoredDuringExecution": [
                          {
                            "weight": 100,
                            "podAffinityTerm": {
                              "labelSelector": {
                                "matchExpressions": [
                                  {
                                    "key": "app",
                                    "operator": "In",
                                    "values": [
                                      "neuvector-controller-pod"
                                    ]
                                  }
                                ]
                              },
                              "topologyKey": "kubernetes.io/hostname"
                            }
                          }
                        ]
                      }
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "nodeSelector": {},
                    "apisvc": {
                      "ctrlServerPort": 10443,
                      "type": "",
                      "annotations": {},
                      "nodePort": "",
                      "route": {
                        "enabled": false,
                        "termination": "passthrough",
                        "host": "",
                        "tls": ""
                      }
                    },
                    "ranchersso": {
                      "enabled": false
                    },
                    "pvc": {
                      "enabled": false,
                      "existingClaim": false,
                      "accessModes": [
                        "ReadWriteMany"
                      ],
                      "storageClass": "",
                      "capacity": ""
                    },
                    "azureFileShare": {
                      "enabled": false,
                      "secretName": "",
                      "shareName": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "federation": {
                      "mastersvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      },
                      "managedsvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      }
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {
                        "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                      },
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "configmap": {
                      "enabled": false,
                      "data": ""
                    },
                    "secret": {
                      "enabled": false,
                      "data": {
                        "userinitcfg.yaml": {
                          "users": [
                            {
                              "Fullname": "admin",
                              "Password": "",
                              "Role": "admin"
                            }
                          ]
                        }
                      }
                    },
                    "certupgrader": {
                      "env": [],
                      "schedule": "",
                      "imagePullPolicy": "IfNotPresent",
                      "timeout": 3600,
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "prime": {
                      "enabled": false,
                      "image": {
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "1.0.9"
                      }
                    }
                  },
                  "enforcer": {
                    "enabled": true,
                    "image": "registry.connect.redhat.com/neuvector/enforcer@sha256:0061096cc49e87bc590933ed0d39db16606395cc6b6d2a45eddaa4fde3b74618",
                    "imagePullPolicy": "IfNotPresent",
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "env": [],
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/master"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/control-plane"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/etcd"
                      }
                    ],
                    "resources": {},
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "manager": {
                    "enabled": true,
                    "image": "registry.connect.redhat.com/neuvector/manager@sha256:624a467c261bd4ee094bdeddfe38f4786ea168bb96daef14155aeed0eac67a04",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "",
                    "env": {
                      "ssl": true,
                      "envs": []
                    },
                    "svc": {
                      "mgrServerPort": 8443,
                      "type": "ClusterIP",
                      "nodePort": "",
                      "loadBalancerIP": "",
                      "annotations": {}
                    },
                    "route": {
                      "enabled": true,
                      "termination": "passthrough",
                      "host": "",
                      "tls": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {},
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "topologySpreadConstraints": [],
                    "affinity": {},
                    "podLabels": {},
                    "podAnnotations": {},
                    "tolerations": [],
                    "nodeSelector": {},
                    "runAsUser": "",
                    "probes": {
                      "enabled": false,
                      "timeout": 1,
                      "periodSeconds": 10,
                      "startupFailureThreshold": 30
                    }
                  },
                  "cve": {
                    "updater": {
                      "enabled": true,
                      "secure": false,
                      "cacert": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                      "image": "registry.access.redhat.com/ubi8",
                      "imagePullPolicy": "IfNotPresent",
                      "schedule": "0 0 * * *",
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "scanner": {
                      "enabled": true,
                      "replicas": 3,
                      "dockerPath": "",
                      "strategy": {
                        "type": "RollingUpdate",
                        "rollingUpdate": {
                          "maxSurge": 1,
                          "maxUnavailable": 0
                        }
                      },
                      "image": "registry.connect.redhat.com/neuvector/scanner@sha256:7b8dd38328db215a27a0266714f10c046df3a2b0d58a56e65ac2020dc4244440",
                      "imagePullPolicy": "Always",
                      "priorityClassName": "",
                      "resources": {},
                      "topologySpreadConstraints": [],
                      "affinity": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "env": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": "",
                      "internal": {
                        "certificate": {
                          "secret": "",
                          "keyFile": "tls.key",
                          "pemFile": "tls.crt",
                          "caFile": "ca.crt"
                        }
                      },
                      "volumes": "",
                      "volumeMounts": ""
                    }
                  },
                  "resources": {},
                  "runtimePath": "",
                  "docker": {
                    "enabled": false,
                    "path": "/var/run/docker.sock"
                  },
                  "k3s": {
                    "enabled": false,
                    "runtimePath": "/run/k3s/containerd/containerd.sock"
                  },
                  "bottlerocket": {
                    "enabled": false,
                    "runtimePath": "/run/dockershim.sock"
                  },
                  "containerd": {
                    "enabled": false,
                    "path": "/var/run/containerd/containerd.sock"
                  },
                  "crio": {
                    "enabled": true,
                    "path": "/var/run/crio/crio.sock"
                  },
                  "admissionwebhook": {
                    "type": "ClusterIP"
                  },
                  "crdwebhooksvc": {
                    "enabled": true
                  },
                  "crdwebhook": {
                    "enabled": true,
                    "type": "ClusterIP"
                  },
                  "lease": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Networking, Security
          certified: "true"
          containerImage: registry.connect.redhat.com/neuvector/neuvector-operator@sha256:1a4f8921501f68b021b6a11698f007db175da9d8e14c7925ae12e14eb276bae9
          createdAt: "2020-12-02 14:19:21"
          description: NeuVector delivers the only cloud-native Kubernetes security
            platform with uncompromising end-to-end protection from DevOps vulnerability
            protection to automated run-time security, and featuring a true Layer
            7 container firewall.
          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"
          repository: https://github.com/neuvector/neuvector-operator
          support: support@neuvector.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Full LifeCycle Container Security Platform
            displayName: Neuvector
            kind: Neuvector
            name: neuvectors.apm.neuvector.com
            version: v1alpha1
        description: |+
          NeuVector delivers the only cloud-native Kubernetes security platform with uncompromising end-to-end protection from DevOps vulnerability protection to automated run-time security, and featuring a true Layer 7 container firewall.

          The NeuVector Operator runs  in the openshift container platform to deploy and manage the NeuVector Security cluster components. The NeuVector operator contains all necessary information to deploy NeuVector using helm charts. You simply need to install the NeuVector operator from the OpenShift embeded operator hub and create NeuVector instance. You can modify the NeuVector installation configuration by modifying yaml while creating the NeuVector instance such as imagePullSecrets, tag version, etc. Please refer to [github link](https://github.com/neuvector/neuvector-helm/tree/master/charts/core) for the values that can be modifed during installation. To upgrade to a newer version of NeuVector, just reapply the NeuVector instance with desired tag , which in turn pulls the specified NeuVector image tags and upgrades as per upgrade plan configured on the helm chart.  NeuVector Operator versions are tied to NeuVector product versions. Version 1.5.4 of the NeuVector Certified Operator deploys version 5.4.8 of NeuVector.

          **Complete below steps to Grant Service Account Access to the Privileged SCC before installation.**

          Create the NeuVector namespace

                   oc new-project  neuvector
          Login as system:admin account

                   oc login -u system:admin

          Privileged SCC is added to Service Account specified in the deploment yaml by Operator version 1.3.6 and above in new deployment. In case of upgrading NeuVector Operator from previous version to 1.3.6, please delete Privileged SCC before upgrading.

                   oc delete rolebinding -nneuvector system:openshift:scc:privileged

          The following info will be added in the Privileged SCC users:

                   - system:serviceaccount:neuvector:default

          In OpenShift 4.6+ use the following to check:

                   oc get rolebinding system:openshift:scc:privileged -n neuvector -o wide
                   system:openshift:scc:privileged   ClusterRole/system:openshift:scc:privileged   9m22s                    neuvector/default


          #Deploying the NeuVector Operator#


          Please refer to the instructions [here](https://github.com/neuvector/neuvector-operator/blob/master/README.md)


        displayName: NeuVector Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Monitoring
        - Networking
        - Security
        links:
        - name: NeuVector Operator
          url: https://github.com/neuvector/neuvector-operator
        maintainers:
        - email: support@neuvector.com
          name: A Full LifeCycle Container Security Platform
        maturity: beta
        provider:
          name: NeuVector
        relatedImages:
        - registry.connect.redhat.com/neuvector/controller@sha256:b33ab222ee7a4e81387d7e85739f32ab9999bebeef58a795c513a6db53297108
        - registry.connect.redhat.com/neuvector/enforcer@sha256:0061096cc49e87bc590933ed0d39db16606395cc6b6d2a45eddaa4fde3b74618
        - registry.connect.redhat.com/neuvector/manager@sha256:624a467c261bd4ee094bdeddfe38f4786ea168bb96daef14155aeed0eac67a04
        - registry.connect.redhat.com/neuvector/neuvector-operator-bundle@sha256:b27397b79fd28f2da9d7f20b5b004dfb3e1a995de092a8a755e5099fb87407cb
        - registry.connect.redhat.com/neuvector/neuvector-operator@sha256:1a4f8921501f68b021b6a11698f007db175da9d8e14c7925ae12e14eb276bae9
        - registry.connect.redhat.com/neuvector/scanner@sha256:7b8dd38328db215a27a0266714f10c046df3a2b0d58a56e65ac2020dc4244440
        - registry.access.redhat.com/ubi8@sha256:a444712276a635c9312d83a4ff7c6ee7f2ce08eeb5bd9ca291b5fdba257a5e63
        version: 1.5.4
      entries:
      - name: neuvector-operator.v1.5.4
        version: 1.5.4
      - name: neuvector-operator.v1.5.3
        version: 1.5.3
      - name: neuvector-operator.v1.5.2
        version: 1.5.2
      - name: neuvector-operator.v1.5.1
        version: 1.5.1
      - name: neuvector-operator.v1.5.0
        version: 1.5.0
      - name: neuvector-operator.v1.4.9
        version: 1.4.9
      - name: neuvector-operator.v1.4.8
        version: 1.4.8
      - name: neuvector-operator.v1.4.7
        version: 1.4.7
      - name: neuvector-operator.v1.4.6
        version: 1.4.6
      - name: neuvector-operator.v1.4.5
        version: 1.4.5
      - name: neuvector-operator.v1.4.4
        version: 1.4.4
      - name: neuvector-operator.v1.4.3
        version: 1.4.3
      - name: neuvector-operator.v1.4.2
        version: 1.4.2
      - name: neuvector-operator.v1.4.1
        version: 1.4.1
      - name: neuvector-operator.v1.4.0
        version: 1.4.0
      - name: neuvector-operator.v1.3.9
        version: 1.3.9
      - name: neuvector-operator.v1.3.8
        version: 1.3.8
      - name: neuvector-operator.v1.3.7
        version: 1.3.7
      - name: neuvector-operator.v1.3.6
        version: 1.3.6
      - name: neuvector-operator.v1.3.5
        version: 1.3.5
      - name: neuvector-operator.v1.3.4
        version: 1.3.4
      - name: neuvector-operator.v1.3.3
        version: 1.3.3
      - name: neuvector-operator.v1.3.2
        version: 1.3.2
      - name: neuvector-operator.v1.3.1
        version: 1.3.1
      - name: neuvector-operator.v1.3.0
        version: 1.3.0
      - name: neuvector-operator.v1.2.9
        version: 1.2.9
      name: beta
    defaultChannel: beta
    packageName: neuvector-certified-operator
    provider:
      name: NeuVector
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Aqua Security, Inc.
      provider-url: ""
    name: aqua
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aqua-operator.v2022.4.18
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaCsp",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "namespace": "aqua",
                    "version": "2022.4",
                    "requirements": true
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry",
                    "dbDiskSize": 10,
                    "databaseSecret": {
                      "key": "db-password",
                      "name": "aqua-database-password"
                    }
                  },
                  "database": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "database",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "gateway": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "gateway",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "server": {
                    "replicas": 1,
                    "service": "LoadBalancer",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "console",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "route": true,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaDatabase",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry",
                    "splitDB": false
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "database",
                      "tag": "<<IMAGE TAG>>"
                    }
                  },
                  "diskSize": 10,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry"
                  },
                  "deploy": {
                    "image": {
                      "repository": "enforcer",
                      "registry": "registry.aquasec.com",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "IfNotPresent"
                    }
                  },
                  "runAsNonRoot": false,
                  "gateway": {
                    "host": "aqua-gateway",
                    "port": 8443
                  },
                  "token": "<<your-token>>"
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaKubeEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "version": "2022.4",
                    "serviceAccount": "aqua-kube-enforcer-sa"
                  },
                  "config": {
                    "gateway_address": "aqua-gateway.aqua:8443",
                    "cluster_name": "aqua-secure",
                    "imagePullSecret": "aqua-registry",
                    "kubebench_image": "docker.io/aquasec/kube-bench:v0.7.1"
                  },
                  "deploy": {
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "tag": "<<KUBE_ENFORCER_TAG>>",
                      "repository": "kube-enforcer",
                      "pullPolicy": "Always"
                    }
                  },
                  "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>",
                  "starboard": {
                    "infra": {
                      "serviceAccount": "starboard-operator"
                    },
                    "config": {
                      "imagePullSecret": "starboard-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    }
                  }
                }
              },
              {
              "apiVersion": "operator.aquasec.com/v1alpha1",
              "kind": "AquaLightning",
              "metadata": {
                "name": "aqua"
              },
              "spec": {
                "global": {
                  "gateway_address": "aqua-gateway.aqua:8443",
                  "cluster_name": "Default-cluster-name"
                },
                "common": {
                  "imagePullSecret": "aqua-registry"
                },
                "kubeEnforcer": {
                  "infra": {
                    "version": "2022.4",
                    "serviceAccount": "aqua-kube-enforcer-sa"
                  },
                  "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>",
                  "allowAnyVersion": null,
                  "deploy": {
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "tag": "2022.4",
                      "repository": "kube-enforcer",
                      "pullPolicy": "Always"
                    }
                  },
                  "starboard": {
                    "infra": {
                      "serviceAccount": "starboard-operator"
                    },
                    "config": {
                      "imagePullSecret": "starboard-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    }
                  },
                  "env": []
                },
                "enforcer": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "deploy": {
                    "image": {
                      "repository": "enforcer",
                      "registry": "registry.aquasec.com",
                      "tag": "2022.4",
                      "pullPolicy": "IfNotPresent"
                    }
                  },
                  "token": "<<ENFORCER_GROUP_TOKEN>>",
                  "env": [],
                  "secret": {
                    "name": null,
                    "key": null
                  },
                  "runAsNonRoot": null,
                  "rhcosVersion": null
                }
              }
            },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaGateway",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "imagePullSecret": "aqua-registry",
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "gateway",
                      "tag": "<<IMAGE TAG>>"
                    }
                  },
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaScanner",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry"
                  },
                  "deploy": {
                    "replicas": 1,
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "scanner",
                      "tag": "<<IMAGE TAG>>"
                    }
                  },
                  "runAsNonRoot": false,
                  "login": {
                    "username": "<<YOUR AQUA USER NAME>>",
                    "password": "<<YOUR AQUA USER PASSWORD>>",
                    "host": "http://aqua-server:8080",
                    "token": ""
                  }
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaServer",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "imagePullSecret": "aqua-registry",
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "LoadBalancer",
                    "image": {
                      "registry": "registry.aquasec.com",
                      "repository": "console",
                      "tag": "<<IMAGE TAG>>",
                      "pullPolicy": "Always"
                    }
                  },
                  "runAsNonRoot": false
                }
              },
              {
                  "apiVersion": "operator.aquasec.com/v1alpha1",
                  "kind": "AquaCloudConnector",
                  "metadata": {
                    "name": "aqua"
                  },
                  "spec": {
                    "infra": {
                      "serviceAccount": "aqua-sa",
                      "version": "2022.4"
                    },
                    "common": {
                      "imagePullSecret": "aqua-registry"
                    },
                    "deploy": {
                      "image": {
                        "repository": "aqua-cloud-connector",
                        "registry": "registry.aquasec.com",
                        "tag": "<<IMAGE TAG>>"
                      },
                      "replicas": 1
                    },
                    "runAsNonRoot": false,
                    "gateway": {
                      "host": "aqua-gateway",
                      "port": "8443"
                    },
                    "login": {
                      "host": "aqua-gateway:8443",
                      "password": "<<YOUR AQUA USER PASSWORD>>",
                      "token": "<<YOUR AQUA CLOUD CONNECTOR TOKEN>>",
                      "username": "<<YOUR AQUA USER NAME>>"
                    },
                    "tunnels": [
                      {
                        "host": "<account>.azurecr.io",
                        "port": "443"
                      },
                      {
                        "host": "gke.gcr.io",
                        "port": "443"
                      },
                      {
                        "host": "<account>.jfrog.io",
                        "port": "443"
                      },
                      {
                        "host": "1.1.1.1",
                        "port": "443"
                      },
                      {
                        "region": "us-east1",
                        "type": "ecr"
                      }
                    ]
                  }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: docker.io/aquasec/aqua-operator:2022.4.18
          createdAt: "2020-03-25T08:00:00Z"
          description: The Aqua Security Operator runs within a Openshift cluster
            and provides a means to deploy and manage Aqua Security cluster and components.
          operators.operatorframework.io/internal-objects: '["aquastarboards.aquasecurity.github.io","configauditreports.aquasecurity.github.io",
            "clusterconfigauditreports.aquasecurity.github.io"]'
          repository: https://github.com/aquasecurity/aqua-operator
          support: Aqua Security, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Aqua Security CSP Deployment with Aqua Operator
            displayName: AquaCsp
            kind: AquaCsp
            name: aquacsps.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Lightning Enforcers Deployment with Aqua Operator
            displayName: AquaLightningEnforcers
            kind: AquaLightning
            name: aqualightnings.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Database Deployment with Aqua Operator
            displayName: AquaDatabase
            kind: AquaDatabase
            name: aquadatabases.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Enforcer Deployment with Aqua Operator
            displayName: AquaEnforcer
            kind: AquaEnforcer
            name: aquaenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security KubeEnforcer Deployment with Aqua Operator
            displayName: AquaKubeEnforcer
            kind: AquaKubeEnforcer
            name: aquakubeenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Gateway Deployment with Aqua Operator
            displayName: AquaGateway
            kind: AquaGateway
            name: aquagateways.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Scanner Deployment with Aqua Operator
            displayName: AquaScanner
            kind: AquaScanner
            name: aquascanners.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Server Deployment with Aqua Operator
            displayName: AquaServer
            kind: AquaServer
            name: aquaservers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Starboard for kube-enforcer.
            displayName: AquaStarboard
            kind: AquaStarboard
            name: aquastarboards.aquasecurity.github.io
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ClusterConfigAuditReport
            kind: ClusterConfigAuditReport
            name: clusterconfigauditreports.aquasecurity.github.io
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ConfigAuditReport
            kind: ConfigAuditReport
            name: configauditreports.aquasecurity.github.io
            version: v1alpha1
          - description: Aqua Security Cloud Connector Deployment with Aqua Operator
            displayName: AquaCloudConnector
            kind: AquaCloudConnector
            name: aquacloudconnector.operator.aquasec.com
            version: v1alpha1
        description: |-
          The Aqua Security Operator runs within an OpenShift cluster and provides a means to deploy and manage the Aqua Security cluster and components :
          * Server (aka “console”)
          * Database (for production environments we recommend to use an external database and not the Aqua default database)
          * Gateway
          * Enforcer (aka “agent”)
          * KubeEnforcer
          * Scanner
          * CSP (package that contains the Server, Database, and Gateway)
          * LightningEnforcer (package that contains Enforcer and Kube Enforcer)

          Use the Aqua-Operator to
          * Deploy Aqua Security components on OpenShift
          * Scale up Aqua Security components with extra replicas
          * Assign metadata tags to Aqua Security components

          ## Before You Begin Using the Operator CRDs

          Obtain access to the Aqua registry - https://www.aquasec.com/about-us/contact-us/


          ## Instructions and exmaples

          Follow instructions and exmaples
          [here](https://github.com/aquasecurity/aqua-operator/blob/2022.4.0/docs/DeployOpenShiftOperator.md)
        displayName: Aqua Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - aqua-security
        - scanning
        - security
        - runtime-security
        links:
        - name: Aqua Security
          url: https://www.aquasec.com/
        - name: Aqua Operator Github
          url: https://github.com/aquasecurity/aqua-operator
        maintainers:
        - email: support@aquasec.com
          name: Aqua Support, Aqua Security
        maturity: alpha
        provider:
          name: Aqua Security, Inc.
        relatedImages:
        - docker.io/aquasec/aqua-operator:2022.4.18
        - quay.io/community-operator-pipeline-prod/aqua@sha256:ca2b998fb0fa4e80d6f4c3be57041e8e55e43cf0b5f1fee579733fda9ea6a107
        version: 2022.4.18
      entries:
      - name: aqua-operator.v2022.4.18
        version: 2022.4.18
      - name: aqua-operator.v2022.4.17
        version: 2022.4.17
      name: 2022.4.0
    defaultChannel: 2022.4.0
    packageName: aqua
    provider:
      name: Aqua Security, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Syndesis Team
      provider-url: https://github.com/syndesisio/syndesis
    name: syndesis
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: syndesis.v1.12.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta2",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.12
          createdAt: "2021-08-11T12:00:00Z"
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta2
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - quay.io/openshift-community-operators/syndesis@sha256:9e8c08793aebc8857dcd451fa2fde2b3f05b9ff4f3d3cc604f9f752193f58d42
        - quay.io/syndesis/syndesis-operator:1.12
        - centos/postgresql-10-centos7
        version: 1.12.0
      entries:
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: 1.12.x
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - quay.io/syndesis/syndesis-operator:1.13
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: 1.13.x
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        - quay.io/syndesis/syndesis-operator:1.13
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: candidate
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        - quay.io/syndesis/syndesis-operator:1.13
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: latest
    - currentCSV: syndesis.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/syndesis/syndesis-operator:1.13
          createdAt: 2022-01-18 19:05:58 UTC
          description: Manages the installation of Syndesis, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Syndesis
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Syndesis operator
          Syndesis is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following syndesis components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
        displayName: Syndesis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Syndesis Project
          url: https://github.com/syndesisio/syndesis
        - name: Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: syndesis@googlegroups.com
          name: Syndesis Team
        maturity: beta
        provider:
          name: Syndesis Team
          url: https://github.com/syndesisio/syndesis
        relatedImages:
        - quay.io/syndesis/syndesis-operator:1.13
        - centos/postgresql-10-centos7
        - quay.io/openshift-community-operators/syndesis@sha256:fa62677d0e12681f92504d8a15c2b440b2bc0b0e5ebaf6edc0048621806b8cda
        version: 1.13.0
      entries:
      - name: syndesis.v1.13.0
        version: 1.13.0
      - name: syndesis.v1.12.0
        version: 1.12.0
      name: stable
    defaultChannel: latest
    packageName: syndesis
    provider:
      name: Syndesis Team
      url: https://github.com/syndesisio/syndesis
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      odf.openshift.io/odf-operator: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-console"]'
          containerImage: registry.redhat.io/odf4/odf-rhel9-operator@sha256:0168326fc968fb1be91a5aba0df0117aec7f94b81560e0bd4480609207285265
          createdAt: "2025-12-18T08:00:14Z"
          description: OpenShift Data Foundation provides a common control plane for
            storage solutions on OpenShift Container Platform.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          olm.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/initialization-link: /odf/resource/odf.openshift.io~v1alpha1~StorageSystem/create/~new
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/odf-operator
          support: Red Hat
          vendors.odf.openshift.io/kind: '["storagecluster.ocs.openshift.io/v1", "flashsystemcluster.odf.ibm.com/v1alpha1"]'
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          **Red Hat OpenShift Data Foundation** deploys three operators.

          ### OpenShift Data Foundation
          The OpenShift Data Foundation operator is the primary operator for
          OpenShift Data Foundation. It serves to facilitate the other operators in
          OpenShift Data Foundation by performing administrative tasks outside their
          scope as well as watching and configuring their CustomResources.

          ### Rook
          [Rook][1] deploys and manages Ceph on OpenShift, which provides block,
          file and object storage.

          ### NooBaa operator
          The NooBaa operator deploys and manages the [NooBaa][2] Multi-Cloud Gateway
          on OpenShift, which provides object storage.

          # Core Capabilities
          * **Self-managing service:** No matter which supported storage technologies
          you choose, OpenShift Data Foundation ensures that resources can be
          deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Data Foundation you
          can either build dedicated storage clusters or hyper-converged clusters
          where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Data Foundation:**
          OpenShift Data Foundation integrates Ceph with multiple storage
          presentations including object storage (compatible with S3), block storage,
          and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Data Foundation efficiently
          distributes and replicates your data across your cluster to minimize the
          risk of data loss. With snapshots, cloning, and versioning, no more losing
          sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your
          datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data
          storage for your workloads, using a single namespace.

          # Subscriptions
          OpenShift Data Foundation requires a matching 1:1 ratio with the OpenShift
          subscription used. The Essential subscription is included in the OpenShift
          Platform Plus subscription. Disaster Recovery features, external mode, and
          KMS integration for encryption at rest require a bundle of OpenShift
          Platform Plus with OpenShift Data Foundation Advanced subscription.

          [1]: https://rook.io
          [2]: https://www.noobaa.io
        displayName: OpenShift Data Foundation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-operator-bundle@sha256:692c8c98f5c9d20cdfb2257f36a42ac6407ad122211001c3b539e33644bb7a6b
        - registry.redhat.io/odf4/odf-console-rhel9@sha256:871051f3724f5b783182b1de33350a3902db87eaee486390e3b7cfb64d3057d4
        - registry.redhat.io/odf4/odf-rhel9-operator@sha256:0168326fc968fb1be91a5aba0df0117aec7f94b81560e0bd4480609207285265
        version: 4.19.9-rhodf
      entries:
      - name: odf-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-console"]'
          containerImage: registry.redhat.io/odf4/odf-rhel9-operator@sha256:a6c75f7d1fefdb84653e4bdd29fc7ebe07f819e6cf0bf39ea8d3422dafb786bf
          createdAt: "2025-12-18T07:48:25Z"
          description: OpenShift Data Foundation provides a common control plane for
            storage solutions on OpenShift Container Platform.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/initialization-link: /odf/resource/odf.openshift.io~v1alpha1~StorageSystem/create/~new
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/odf-operator
          support: Red Hat
          vendors.odf.openshift.io/kind: '["storagecluster.ocs.openshift.io/v1", "flashsystemcluster.odf.ibm.com/v1alpha1"]'
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          **Red Hat OpenShift Data Foundation** deploys three operators.

          ### OpenShift Data Foundation
          The OpenShift Data Foundation operator is the primary operator for
          OpenShift Data Foundation. It serves to facilitate the other operators in
          OpenShift Data Foundation by performing administrative tasks outside their
          scope as well as watching and configuring their CustomResources.

          ### Rook
          [Rook][1] deploys and manages Ceph on OpenShift, which provides block,
          file and object storage.

          ### NooBaa operator
          The NooBaa operator deploys and manages the [NooBaa][2] Multi-Cloud Gateway
          on OpenShift, which provides object storage.

          # Core Capabilities
          * **Self-managing service:** No matter which supported storage technologies
          you choose, OpenShift Data Foundation ensures that resources can be
          deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Data Foundation you
          can either build dedicated storage clusters or hyper-converged clusters
          where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Data Foundation:**
          OpenShift Data Foundation integrates Ceph with multiple storage
          presentations including object storage (compatible with S3), block storage,
          and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Data Foundation efficiently
          distributes and replicates your data across your cluster to minimize the
          risk of data loss. With snapshots, cloning, and versioning, no more losing
          sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your
          datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data
          storage for your workloads, using a single namespace.

          # Subscriptions
          OpenShift Data Foundation requires a matching 1:1 ratio with the OpenShift
          subscription used. The Essential subscription is included in the OpenShift
          Platform Plus subscription. Disaster Recovery features, external mode, and
          KMS integration for encryption at rest require a bundle of OpenShift
          Platform Plus with OpenShift Data Foundation Advanced subscription.

          [1]: https://rook.io
          [2]: https://www.noobaa.io
        displayName: OpenShift Data Foundation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-rhel9-operator@sha256:a6c75f7d1fefdb84653e4bdd29fc7ebe07f819e6cf0bf39ea8d3422dafb786bf
        - registry.redhat.io/odf4/odf-operator-bundle@sha256:fd9c08f0a1455f7c20f3ef00983bd2cee495f6fbca7e30e3aac52512d71abe42
        - registry.redhat.io/odf4/odf-console-rhel9@sha256:a4255931341242cacf44202192e8f69805cf359282b1753beb7933ef3b088dd4
        version: 4.20.4-rhodf
      entries:
      - name: odf-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: node-observability-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-observability-operator.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha1",
                "kind": "NodeObservability",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "labels": {
                    "kubernetes.io/hostname": "worker-a"
                  },
                  "type": "crio-kubelet"
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha1",
                "kind": "NodeObservabilityMachineConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "debug": {
                    "enableCrioProfiling": true
                  }
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha1",
                "kind": "NodeObservabilityRun",
                "metadata": {
                  "name": "nodeobservabilityrun-sample",
                  "namespace": "node-observability-operator"
                },
                "spec": {
                  "nodeObservabilityRef": {
                    "name": "cluster"
                  }
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha2",
                "kind": "NodeObservability",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "nodeSelector": {
                    "kubernetes.io/hostname": "worker-a"
                  },
                  "type": "crio-kubelet"
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha2",
                "kind": "NodeObservabilityMachineConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "debug": {
                    "enableCrioProfiling": true
                  },
                  "nodeSelector": {
                    "kubernetes.io/hostname": "worker-a"
                  }
                }
              },
              {
                "apiVersion": "nodeobservability.olm.openshift.io/v1alpha2",
                "kind": "NodeObservabilityRun",
                "metadata": {
                  "name": "nodeobservabilityrun-sample",
                  "namespace": "node-observability-operator"
                },
                "spec": {
                  "nodeObservabilityRef": {
                    "name": "cluster"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/noo/node-observability-rhel8-operator@sha256:53ba77f648154ac8aca1ae6c83815078dfde211dba1e42f597e69844e4954c01
          createdAt: 2022-12-05T09:25:09
          olm.skipRange: <0.2.0
          operatorframework.io/suggested-namespace: node-observability-operator
          operators.operatorframework.io/builder: operator-sdk-v1.18.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeObservability prepares a subset of worker nodes (identified
              by a label) for running node observability queries, such as profiling
            displayName: Node Observability
            kind: NodeObservability
            name: nodeobservabilities.nodeobservability.olm.openshift.io
            version: v1alpha1
          - description: NodeObservability prepares a subset of worker nodes (identified
              by a label) for running node observability queries, such as profiling
            displayName: Node Observability
            kind: NodeObservability
            name: nodeobservabilities.nodeobservability.olm.openshift.io
            version: v1alpha2
          - description: NodeObservabilityMachineConfig is the Schema for the nodeobservabilitymachineconfigs
              API
            displayName: Node Observability Machine Config
            kind: NodeObservabilityMachineConfig
            name: nodeobservabilitymachineconfigs.nodeobservability.olm.openshift.io
            version: v1alpha1
          - description: NodeObservabilityMachineConfig is the Schema for the nodeobservabilitymachineconfigs
              API
            displayName: Node Observability Machine Config
            kind: NodeObservabilityMachineConfig
            name: nodeobservabilitymachineconfigs.nodeobservability.olm.openshift.io
            version: v1alpha2
          - description: NodeObservabilityRun is a request to run observability actions
              on the nodes previously selected in NodeObservability resource
            displayName: Node Observability Run
            kind: NodeObservabilityRun
            name: nodeobservabilityruns.nodeobservability.olm.openshift.io
            version: v1alpha1
          - description: NodeObservabilityRun is a request to run observability actions
              on the nodes previously selected in NodeObservability resource
            displayName: Node Observability Run
            kind: NodeObservabilityRun
            name: nodeobservabilityruns.nodeobservability.olm.openshift.io
            version: v1alpha2
        description: |-
          An Operator that will be able to gather debugging/profiling data over
          a custom period of time which would be helpful to troubleshoot and resolve issues
          for OpenShift customers.
        displayName: Node Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - node-observability-operator
        links:
        - name: Source Code
          url: https://github.com/openshift/node-observability-operator
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/noo/node-observability-operator-bundle-rhel8@sha256:0fbbb0b32adadc5746251103d25bba6bd365b2ff60e289e4694061fc92c3ce6e
        - registry.redhat.io/noo/node-observability-rhel8-operator@sha256:53ba77f648154ac8aca1ae6c83815078dfde211dba1e42f597e69844e4954c01
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e3dad360d0351237a16593ca0862652809c41a2127c2f98b9e0a559568efbd10
        - registry.redhat.io/noo/node-observability-agent-rhel8@sha256:a8e60d9f63e2ed0cf1e27309aac54014e3f1efc947b51ca0a99376338d220875
        version: 0.2.0
      entries:
      - name: node-observability-operator.v0.2.0
        version: 0.2.0
      name: alpha
    defaultChannel: alpha
    packageName: node-observability-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Accuknox
      provider-url: https://accuknox.com
    name: kubearmor-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubearmor-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Security
          com.redhat.openshift.versions: v4.12
          createdAt: "2023-05-01T05:17:07Z"
          description: The KubeArmor Operator deloys and manages KubeArmor daemonset
            and its componenets within a cluster.
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.28.0+git
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/kubearmor/KubeArmor
          support: Accuknox
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          The KubeArmor Operator deploys and manages KubeArmor and its components:
          - KubeArmor Daemonset
          - KubeArmor Relay Server
          - KubeArmor Controller to manage CRDs (KubeArmorPolicy, KubeArmorHostPolicy)

          KubeArmor is a cloud-native runtime security enforcement system that restricts the behavior (such as process
          execution, file access, and networking operations) of pods, containers, and nodes (VMs) at the system level.

          KubeArmor leverages Linux security modules (LSMs) such as AppArmor, SELinux, or BPF-LSM to enforce the user-specified policies. KubeArmor generates rich alerts/telemetry events with container/pod/namespace identities by leveraging eBPF.

          ## Documentation

          github: [https://github.com/kubearmor/KubeArmor](https://github.com/kubearmor/KubeArmor)
          website: [https://kubearmor.io/](https://kubearmor.io/)
        displayName: Kubearmor Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubearmor-operator
        - runtime-security
        - security
        - cloud-native
        links:
        - name: Kubearmor
          url: https://kubearmor.io
        maintainers:
        - email: ramakant@accuknox.com
          name: Ramakant Sharma
        maturity: alpha
        provider:
          name: Accuknox
          url: https://www.accuknox.com/
        relatedImages:
        - docker.io/kubearmor/kubearmor-operator@sha256:8c2d56781a2adf78ee58f956e01417f38b6ad2f319feada6470e93f4f9bf0808
        - docker.io/kubearmor/kubearmor-relay-server@sha256:695f9ade3382bcf858077e2a7b9b01e0713071517603778d72f7aca5a6d71323
        - docker.io/kubearmor/kubearmor@sha256:52f7049ecdbfa779663d2cd44ddd7f36aecd8ccd2ca91e69709b628600029f13
        - registry.connect.redhat.com/kubearmor/kubearmor-operator@sha256:411a47151609b7da29974ef3ae3b04f1bb1526f4328fd3e1d9b0165380018049
        - docker.io/kubearmor/kubearmor-controller@sha256:ccec0fb8bb1e91bd48631cc89baf752b842f19c33b50edab08f8b33e57af64d4
        - docker.io/kubearmor/kubearmor-init@sha256:44fa534587972c5f85e3e6f362dd8268e9088a33c5657a21b72a7e8563164fb5
        version: 1.0.0
      entries:
      - name: kubearmor-operator.v1.0.0
        version: 1.0.0
      name: alpha
    - currentCSV: kubearmor-operator.v1.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.kubearmor.com/v1",
                "kind": "KubeArmorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "kubearmorconfig",
                    "app.kubernetes.io/part-of": "kubearmoroperator"
                  },
                    "name": "kubearmorconfig-default",
                    "namespace": "placeholder"
                },
                "spec": {
                  "adapters": {
                    "elasticsearch": {
                      "url": "",
                      "enabled": false,
                      "auth": {
                        "secretName": "elastic-secret",
                        "usernameKey": "username",
                        "passwordKey": "password",
                        "allowInsecureTLS": false,
                        "caCertSecretName": "",
                        "caCertKey": "ca.crt"
                      },
                      "alertsIndex": "kubearmor-alerts"
                    }
                  },
                  "recommendedPolicies": {
                      "enable": true,
                      "matchExpressions": [
                          {
                              "key": "namespace",
                              "operator": "NotIn",
                              "values": [
                                  "kube-system",
                                  "kubearmor",
                                  "openshift-infra",
                                  "openshift-ingress",
                                  "openshift-ingress-canary",
                                  "openshift-ingress-operator",
                                  "openshift-insights",
                                  "openshift-kni-infra",
                                  "openshift-kube-apiserver",
                                  "openshift-kube-apiserver-operator",
                                  "openshift-kube-controller-manager",
                                  "openshift-kube-controller-manager-operator",
                                  "openshift-kube-scheduler",
                                  "openshift-kube-scheduler-operator",
                                  "openshift-kube-storage-version-migrator",
                                  "openshift-kube-storage-version-migrator-operator",
                                  "openshift-logging",
                                  "openshift-machine-api",
                                  "openshift-machine-config-operator",
                                  "openshift-managed-node-metadata-operator",
                                  "openshift-managed-upgrade-operator",
                                  "openshift-marketplace",
                                  "openshift-monitoring",
                                  "openshift-multus",
                                  "openshift-must-gather-operator",
                                  "openshift-network-diagnostics",
                                  "openshift-network-node-identity",
                                  "openshift-network-operator",
                                  "openshift-node",
                                  "openshift-nutanix-infra",
                                  "openshift-oauth-apiserver",
                                  "openshift-observability-operator",
                                  "openshift-ocm-agent-operator",
                                  "openshift-openstack-infra",
                                  "openshift-operator-lifecycle-manager",
                                  "openshift-operators",
                                  "openshift-operators-redhat",
                                  "openshift-osd-metrics",
                                  "openshift-ovirt-infra",
                                  "openshift-ovn-kubernetes",
                                  "openshift-package-operator",
                                  "openshift-rbac-permissions",
                                  "openshift-route-controller-manager",
                                  "openshift-route-monitor-operator",
                                  "openshift-security",
                                  "openshift-service-ca",
                                  "openshift-service-ca-operator",
                                  "openshift-splunk-forwarder-operator",
                                  "openshift-sre-pruning",
                                  "openshift-user-workload-monitoring",
                                  "openshift-validation-webhook",
                                  "openshift-velero",
                                  "openshift-vsphere-infra",
                                  "openshift",
                                  "openshift-addon-operator",
                                  "openshift-apiserver",
                                  "openshift-apiserver-operator",
                                  "openshift-aqua",
                                  "openshift-authentication",
                                  "openshift-authentication-operator",
                                  "openshift-backplane",
                                  "openshift-backplane-cee",
                                  "openshift-backplane-csa",
                                  "openshift-backplane-cse",
                                  "openshift-backplane-csm",
                                  "openshift-backplane-managed-scripts",
                                  "openshift-backplane-mcs-tier-two",
                                  "openshift-backplane-mobb",
                                  "openshift-backplane-srep",
                                  "openshift-backplane-tam",
                                  "openshift-cloud-controller-manager",
                                  "openshift-cloud-controller-manager-operator",
                                  "openshift-cloud-credential-operator",
                                  "openshift-cloud-ingress-operator",
                                  "openshift-cloud-network-config-controller",
                                  "openshift-cloud-platform-infra",
                                  "openshift-cluster-csi-drivers",
                                  "openshift-cluster-machine-approver",
                                  "openshift-cluster-node-tuning-operator",
                                  "openshift-cluster-samples-operator",
                                  "openshift-cluster-storage-operator",
                                  "openshift-cluster-version",
                                  "openshift-codeready-workspaces",
                                  "openshift-config",
                                  "openshift-config-managed",
                                  "openshift-config-operator",
                                  "openshift-console",
                                  "openshift-console-operator",
                                  "openshift-console-user-settings",
                                  "openshift-controller-manager",
                                  "openshift-controller-manager-operator",
                                  "openshift-custom-domains-operator",
                                  "openshift-customer-monitoring",
                                  "openshift-deployment-validation-operator",
                                  "openshift-dns",
                                  "openshift-dns-operator",
                                  "openshift-etcd",
                                  "openshift-etcd-operator",
                                  "openshift-host-network",
                                  "openshift-image-registry"
                              ]
                          }
                      ]
                  },
                  "defaultCapabilitiesPosture": "audit",
                  "defaultFilePosture": "audit",
                  "defaultNetworkPosture": "audit",
                  "defaultVisibility": "process,network",
                  "enableStdOutLogs": false,
                  "enableStdOutAlerts": false,
                  "enableStdOutMsgs": false,
                  "seccompEnabled": false
                }
              }
            ]
          alm-examples-metadata: '{"kubearmorconfig-default":{"description":"Default
            KubeArmorConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Security, Monitoring
          certified: "true"
          com.redhat.openshift.versions: v4.9
          containerImage: docker.io/kubearmor/kubearmor-operator@sha256:d6c6b16e636474568835ded97cecb5ed17bc6004501227f6b6d63522ed57b01c
          createdAt: "2024-03-20T17:43:15Z"
          description: KubeArmor Operator
          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"
          operatorframework.io/suggested-namespace: kubearmor
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kubearmor/KubeArmor/blob/main/pkg/KubeArmorOperator/
          support: Accuknox
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubeArmorConfig is the Schema for the kubearmorconfigs API
            kind: KubeArmorConfig
            name: kubearmorconfigs.operator.kubearmor.com
            version: v1
        description: |2-

          ## Prerequisites

          1. Create a new project for KubeArmor (Recommended)

             ```
             oc new-project kubearmor
             ```

           2. Create [KubeArmor SCC](https://github.com/kubearmor/KubeArmor/blob/main/pkg/KubeArmorOperator/config/rbac/kubearmor-scc.yaml)

             ```
             oc create -f https://raw.githubusercontent.com/kubearmor/KubeArmor/main/pkg/KubeArmorOperator/config/rbac/kubearmor-scc.yaml
             ```

             Note: please change the serviceaccount namespace if you are using some other namespace than the kubearmor.

          KubeArmor is a cloud-native runtime security enforcement system that restricts the behavior
          (such as process execution, file access, and networking operations) of pods, containers,
          and nodes (VMs) at the system level.
          KubeArmor leverages Linux security modules (LSMs) such as AppArmor, SELinux, or BPF-LSM to enforce the
          user-specified policies. KubeArmor generates rich alerts/telemetry events with container/pod/namespace
          identities by leveraging eBPF.

          ## Features and Benefits

          ### Harden Infrastructure

          safeguards vital paths like certificate bundles, enforces security rules based on MITRE, STIGs, and CIS guidelines,
          and restricts access to raw database tables, enhancing overall cluster security.

          ### Least Permissive Access

          controls sensitive asset access through process and network whitelisting,
          reducing security risks and maintaining system integrity.

          ### Application Behavior

          in-depth monitoring of process executions, file system access, service bindings,
          ingress and egress connections, and sensitive system call profiling

          ## Documentation

          github: [https://github.com/kubearmor/KubeArmor](https://github.com/kubearmor/KubeArmor)

          website: [https://kubearmor.io/](https://kubearmor.io/)

          ## Installing the KubeArmor Operator

          The KubeArmor Operator, available through Red Hat's Operator catalog, offers stable update channel.
          **Stable Channel**: This channel provides the latest stable version of KubeArmor along with its patches.

          The KubeArmor operator is responsible for deploying various components of the KubeArmor application, including the KubeArmor
          Daemonset, KubeArmor Controller, KubeArmor Relay Server, and KubeArmor Snitch. The role of KubeArmor Snitch is to gather information
          about the enabled Linux security modules on the host, which is utilized by KubeArmor to enforce runtime security policies.
          Additionally, KubeArmor Snitch collects details about the container runtime socket and storage volume cluster configurations.
          This deployment is executed as a short-term job and necessitates root user privileges. KubeArmor Snitch is certified by RedHat
          as a container with root privileges.

          KubeArmor Operator comes with a custom resource:

          - **KubeArmorConfig** - User will provide the initial configurations of the KubeArmor using KubeArmorConfig CR.

          ### KubeArmorConfig Customization Options:

          | Parameter                                 | Description                                          | Default                                 |
          | ---                                       | ---                                                  | ---                                     |
          | `alertThrottling`                         | Enable throttling for the KubeArmor generated alerts | False                                   |
          | `defaultFilePosture`                      | Default file posture for KubeArmor                   | audit                                   |
          | `defaultNetworkPosture`                   | Default network posture for KubeArmor                | audit                                   |
          | `defaultCapabilitiesPosture`              | Default capabilities posture for KubeArmor           | audit                                   |
          | `defaultVisibility`                       | Default visibility for KubeArmor                     | process,file,network                    |
          | `enableStdOutLogs` |  show stdout logs for relay server | false |
          | `enableStdOutAlerts` |  show stdout alerts for relay server | false |
          | `enableStdOutMsgs` |  show stdout messages for relay server | false |
          | `kubearmorImage.image`                    | Default image for KubeArmor Daemonset                | kubearmor/kubearmor-ubi:stable          |
          | `kubearmorImage.imagePullPolicy`          | Default imagePullPolicy for KubeArmor Daemonset      | Always                                  |
          | `kubearmorInitImage.image`                | Default image for KubeArmor Init Container           | kubearmor/kubearmor-init:stable         |
          | `kubearmorInitImage.imagePullPolicy`      | Default imagePullPolicy for KubeArmor Init Container | Always                                  |
          | `kubearmorRelayImage.image`               | Default image for KubeArmor Relay Server             | kubearmor/kubearmor-relay-server:latest |
          | `kubearmorRelayImage.imagePullPolicy`     | Default imagePullPolicy for KubeArmor Relay Server   | Always                                  |
          | `kubearmorControllerImage.image`          | Default image for KubeArmor Controller               | kubearmor/kubearmor-controller:latest   |
          | `kubearmorControllerImage.imagePullPolicy`| Default imagePullPolicy for KubeArmor Controller     | Always                                  |
          | `maxAlertPerSec`                          | Maximum no of alerts per second to trigger throttling| 10                                      |
          | `recommendedPolicies`                     | Recommended Policies Spec                            | -                                       |
          | `recommendedPolicies.matchExpressions`    | Target Namespaces for recommended policies           | -                                       |
          | `recommendedPolicies.excludePolicy`       | Exclude policies from recommended policies           | -                                       |
          | `seccompEnabled`                          | Deploy KubeArmor Daemon with default seccomp profile | True                                    |
          | `throttleSec`                             | Thottling duration in seconds                        | 30                                      |

          Users are not required to specify the images in the KubearmorConfig custom resource (CR). By default, the operator will utilize the images published with the operator release.

          For detailed information on Default Posture refer [this guide](https://github.com/kubearmor/KubeArmor/blob/main/getting-started/default_posture.md)

          similarly for default visibility refer [this guide](https://github.com/kubearmor/KubeArmor/blob/main/getting-started/kubearmor_visibility.md)

          ## Support

          For Support please join KubeArmor Slack [Here](https://join.slack.com/t/kubearmor/shared_invite/zt-1ltmqdbc6-rSHw~LM6MesZZasmP2hAcA)
        displayName: KubeArmor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - monitoring
        - security
        - alerting
        - runtime-security
        - cloud native
        - container security
        links:
        - name: Website
          url: https://kubearmor.io
        - name: Github
          url: https://github.com/kubearmor/KubeArmor.git
        - name: Slack
          url: https://join.slack.com/t/kubearmor/shared_invite/zt-1ltmqdbc6-rSHw~LM6MesZZasmP2hAcA
        maintainers:
        - email: ramakant@accuknox.com
          name: Ramakant Sharma
        maturity: stable
        provider:
          name: Accuknox
          url: https://accuknox.com
        relatedImages:
        - docker.io/kubearmor/kubearmor-relay-server@sha256:0a1a20ef02bd05eaa4a900948cadee6ae7650b0dde70abe1935608eaa5f931b7
        - docker.io/kubearmor/kubearmor-snitch@sha256:c3d0f45590f9a0ebb50254047f12a7468844bcae7961eccb11f5ef578832c0eb
        - docker.io/kubearmor/kubearmor-ubi@sha256:629e295a2e64953bf95f3f3e842c42ff665ed6e4db32db8e43dcde4befdd3fc2
        - registry.connect.redhat.com/kubearmor/kubearmor-operator@sha256:076c345de449353cc9837c603024ba9d790d26c5a8cebfc97db61ded1482ab78
        - registry.connect.redhat.com/sumologic/kube-rbac-proxy@sha256:1153a4592746b05e019bde4d818d176ff9350c013f84d49829032540de882841
        - docker.io/kubearmor/kubearmor-controller@sha256:2d369138cdbb31468c41e9ce70eda986a16bbeb9dd1192cd8a011c9df8a83857
        - docker.io/kubearmor/kubearmor-init@sha256:e30ee508aa95d273f74a543e1b412b98c1714d04f093b59991c0ec2abaa450be
        - docker.io/kubearmor/kubearmor-operator@sha256:d6c6b16e636474568835ded97cecb5ed17bc6004501227f6b6d63522ed57b01c
        version: 1.5.2
      entries:
      - name: kubearmor-operator.v1.5.2
        version: 1.5.2
      name: stable
    defaultChannel: stable
    packageName: kubearmor-operator-certified
    provider:
      name: Accuknox
      url: https://accuknox.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-opa-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opa-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/opa-operator@sha256:2817d8839c6b7eb18d146b3271c3853f0bcd9c0f086c5ba8d19f20d6b14d06a3
          description: Stackable Operator for the Open Policy Agent
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/opa-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for OpaClusterSpec via `CustomResource`
            displayName: opaclusters.opa.stackable.tech
            kind: OpaCluster
            name: opaclusters.opa.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for the Open Policy Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opa
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - registry.connect.redhat.com/stackable/stackable-opa-operator@sha256:ed811a4798f167a21613371bfc071c9ebde39a1fa2975f113953130a60f1747d
        - quay.io/stackable/opa-operator@sha256:2817d8839c6b7eb18d146b3271c3853f0bcd9c0f086c5ba8d19f20d6b14d06a3
        version: 25.11.0
      entries:
      - name: opa-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-opa-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-bedrock-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-bedrock-controller.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bedrock.services.k8s.aws/v1alpha1",
                "kind": "InferenceProfile",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/bedrock-controller:1.1.0
          createdAt: "2025-11-29T04:47:49Z"
          description: AWS Bedrock controller is a service controller for managing
            Bedrock resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InferenceProfile represents the state of an AWS bedrock InferenceProfile
              resource.
            displayName: InferenceProfile
            kind: InferenceProfile
            name: inferenceprofiles.bedrock.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Bedrock resources in AWS from within your Kubernetes cluster.

          **About Amazon Bedrock**

          Amazon Bedrock is a fully managed service that makes high-performing foundation models (FMs) from leading AI companies and Amazon available for your use through a unified API. You can choose from a wide range of foundation models to find the model that is best suited for your use case. Amazon Bedrock also offers a broad set of capabilities to build generative AI applications with security, privacy, and responsible AI. Using Amazon Bedrock, you can easily experiment with and evaluate top foundation models for your use cases, privately customize them with your data using techniques such as fine-tuning and Retrieval Augmented Generation (RAG), and build agents that execute tasks using your enterprise systems and data sources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Bedrock
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bedrock
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Bedrock Developer Resources
          url: https://aws.amazon.com/bedrock/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: bedrock maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/bedrock-controller:1.1.0
        - quay.io/community-operator-pipeline-prod/ack-bedrock-controller@sha256:9ccb288b811d6e8208ed63359fca8d3108a2966bfca515e10c3685fe8abfc3bf
        version: 1.1.0
      entries:
      - name: ack-bedrock-controller.v1.1.0
        version: 1.1.0
      - name: ack-bedrock-controller.v1.0.1
        version: 1.0.1
      - name: ack-bedrock-controller.v1.0.0
        version: 1.0.0
      - name: ack-bedrock-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-bedrock-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: run-once-duration-override-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runoncedurationoverrideoperator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "RunOnceDurationOverride",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "runOnceDurationOverride": {
                    "spec": {
                      "activeDeadlineSeconds": 3600
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certifiedLevel: "false"
          containerImage: registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9-operator@sha256:4971f8befc2eecff1cfb0a9be7040594203e8e1170aee03d61765bd5b2cd4787
          createdAt: 2025/08/25
          description: An operator to manage the OpenShift RunOnceDurationOverride
            Mutating Admission Webhook Server
          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: "true"
          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.skipRange: '>=1.2.0 <1.3.1'
          operatorframework.io/suggested-namespace: openshift-run-once-duration-override-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/run-once-duration-override-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RunOnceDurationOverride is the schema for the runoncedurationoverrides
              API
            displayName: Run Once Duration Override
            kind: RunOnceDurationOverride
            name: runoncedurationoverrides.operator.openshift.io
            version: v1
        displayName: Run Once Duration Override Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mutating
        - webhook
        - workload
        - run-once
        links:
        - name: Source Code
          url: https://github.com/openshift/run-once-duration-override
        - name: Source Code
          url: https://github.com/openshift/run-once-duration-override-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9@sha256:c3b17e2ff30eab6e64e8fec59da37f05ec65d91d8d76086a9510372b20eb78d6
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-operator-bundle@sha256:783c2df43ece311bcbaaf30f33c081608e996a0f651895ec0509bb73a6a1f590
        - registry.redhat.io/run-once-duration-override-operator/run-once-duration-override-rhel9-operator@sha256:4971f8befc2eecff1cfb0a9be7040594203e8e1170aee03d61765bd5b2cd4787
        version: 1.3.1
      entries:
      - name: runoncedurationoverrideoperator.v1.3.1
        version: 1.3.1
      - name: runoncedurationoverrideoperator.v1.3.0
        version: 1.3.0
      - name: runoncedurationoverrideoperator.v1.2.3
        version: 1.2.3
      - name: runoncedurationoverrideoperator.v1.2.2
        version: 1.2.2
      - name: runoncedurationoverrideoperator.v1.2.1
        version: 1.2.1
      - name: runoncedurationoverrideoperator.v1.2.0
        version: 1.2.0
      - name: runoncedurationoverrideoperator.v1.1.2
        version: 1.1.2
      - name: runoncedurationoverrideoperator.v1.1.1
        version: 1.1.1
      - name: runoncedurationoverrideoperator.v1.1.0
        version: 1.1.0
      - name: runoncedurationoverrideoperator.v1.0.2
        version: 1.0.2
      - name: runoncedurationoverrideoperator.v1.0.1
        version: 1.0.1
      - name: runoncedurationoverrideoperator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: run-once-duration-override-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Citrus Framework
      provider-url: ""
    name: yaks
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: yaks-operator.v0.17.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "yaks.citrusframework.org/v1alpha1",
                "kind": "Instance",
                "metadata": {
                  "labels": {
                    "app": "yaks"
                  },
                  "name": "example-instance"
                },
                "spec": {
                  "operator": {
                    "global": true
                  }
                }
              },
              {
                "apiVersion": "yaks.citrusframework.org/v1alpha1",
                "kind": "Test",
                "metadata": {
                  "labels": {
                    "app": "yaks"
                  },
                  "name": "example-test"
                },
                "spec": {
                  "source": {
                    "content": "Feature: hello world\n\n  Scenario: print slogan\n    Given YAKS does Cloud-Native BDD testing\n    Then YAKS rocks!",
                    "language": "feature",
                    "name": "example.feature"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/citrusframework/yaks:0.17.1
          createdAt: "2023-04-26T20:37:31Z"
          description: YAKS is a platform to enable Cloud Native BDD testing on Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["instances.yaks.citrusframework.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/citrusframework/yaks
          support: Citrus Framework
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instance is the Schema for the yaks instance
            displayName: Instance
            kind: Instance
            name: instances.yaks.citrusframework.org
            version: v1alpha1
          - description: Test is the Schema for the tests API
            displayName: Test
            kind: Test
            name: tests.yaks.citrusframework.org
            version: v1alpha1
        description: |
          YAKS
          ====

          YAKS is a platform to enable Cloud Native BDD testing on Kubernetes.

          ## Running a YAKS test

          With the YAKS operator installed, you can run tests by creating a `Test` custom resource on the cluster.

          Tests are defined using [Gherkin](https://cucumber.io/docs/gherkin/) syntax. YAKS provides a set of predefined steps which
          help to connect with different messaging transports (Http REST, JMS, Kafka, Knative eventing) and verify responses with
          assertions on message header and body content.

          The example below defines a simple test resource.

          ```
          apiVersion: yaks.citrusframework.org/v1alpha1
          kind: Test
          metadata:
            name: example
          spec:
            source:
              name: example.feature
              content: |-
                Feature: hello world

                  Scenario: print slogan
                    Given YAKS does Cloud-Native BDD testing
                    Then YAKS rocks!
          ```

          Refer to the [YAKS repository](https://github.com/citrusframework/yaks) for more complex examples.
        displayName: YAKS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - yaks
        - testing
        - microservices
        - knative
        - kafka
        - serverless
        - camel
        - camel-k
        links:
        - name: Project page
          url: https://citrusframework.org/
        - name: YAKS source code repository
          url: https://github.com/citrusframework/yaks
        maintainers:
        - email: cdeppisch@redhat.com
          name: Christoph Deppisch
        - email: nferraro@redhat.com
          name: Nicola Ferraro
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Citrus Framework
        relatedImages:
        - docker.io/citrusframework/yaks:0.17.1
        - quay.io/openshift-community-operators/yaks@sha256:0031de9a68502cb65923c4e17453195663f59e46b1cda37619a857add503c016
        version: 0.17.1
      entries:
      - name: yaks-operator.v0.17.1
        version: 0.17.1
      - name: yaks-operator.v0.17.0
        version: 0.17.0
      - name: yaks-operator.v0.16.0
        version: 0.16.0
      - name: yaks-operator.v0.15.1
        version: 0.15.1
      - name: yaks-operator.v0.15.0
        version: 0.15.0
      - name: yaks-operator.v0.14.3
        version: 0.14.3
      - name: yaks-operator.v0.14.2
        version: 0.14.2
      - name: yaks-operator.v0.14.1
        version: 0.14.1
      - name: yaks-operator.v0.13.0
        version: 0.13.0
      - name: yaks-operator.v0.12.2
        version: 0.12.2
      - name: yaks-operator.v0.11.0
        version: 0.11.0
      - name: yaks-operator.v0.10.0
        version: 0.10.0
      - name: yaks-operator.v0.9.0
        version: 0.9.0
      - name: yaks-operator.v0.8.0
        version: 0.8.0
      - name: yaks-operator.v0.7.0
        version: 0.7.0
      - name: yaks-operator.v0.6.0
        version: 0.6.0
      - name: yaks-operator.v0.5.0
        version: 0.5.0
      - name: yaks-operator.v0.4.0
        version: 0.4.0
      name: alpha
    defaultChannel: alpha
    packageName: yaks
    provider:
      name: Citrus Framework
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: VMware Tanzu
      provider-url: ""
    name: rabbitmq-messaging-topology-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rabbitmq-messaging-topology-operator.v1.18.2
      currentCSVDesc:
        annotations:
          alm-examples: |
            [{"apiVersion":"rabbitmq.com/v1beta1","kind":"Binding","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Exchange","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Federation","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Permission","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Policy","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"OperatorPolicy","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Queue","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"SchemaReplication","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Shovel","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1alpha1","kind":"SuperStream","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"User","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"Vhost","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}},{"apiVersion":"rabbitmq.com/v1beta1","kind":"TopicPermission","metadata":{"name":"test"},"spec":{"rabbitmqClusterReference":{"name":"rabbitmq-cluster"}}}]
          capabilities: Full Lifecycle
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/rabbitmqoperator/messaging-topology-operator:1.18.2
          createdAt: 2025-12-10T10:23:39
          description: Kubernetes operator to allow developers to create and manage
            RabbitMQ messaging topologies within a RabbitMQ cluster using a declarative
            Kubernetes API.
          repository: https://github.com/rabbitmq/messaging-topology-operator
          support: VMware Tanzu
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Binding
            displayName: Binding
            kind: Binding
            name: bindings.rabbitmq.com
            version: v1beta1
          - description: Exchange
            displayName: Exchange
            kind: Exchange
            name: exchanges.rabbitmq.com
            version: v1beta1
          - description: Federation
            displayName: Federation
            kind: Federation
            name: federations.rabbitmq.com
            version: v1beta1
          - description: Permission
            displayName: Permission
            kind: Permission
            name: permissions.rabbitmq.com
            version: v1beta1
          - description: TopicPermission
            displayName: TopicPermission
            kind: TopicPermission
            name: topicpermissions.rabbitmq.com
            version: v1beta1
          - description: Policy
            displayName: Policy
            kind: Policy
            name: policies.rabbitmq.com
            version: v1beta1
          - description: OperatorPolicy
            displayName: OperatorPolicy
            kind: OperatorPolicy
            name: operatorpolicies.rabbitmq.com
            version: v1beta1
          - description: Queue
            displayName: Queue
            kind: Queue
            name: queues.rabbitmq.com
            version: v1beta1
          - description: Schema Replication
            displayName: SchemaReplication
            kind: SchemaReplication
            name: schemareplications.rabbitmq.com
            version: v1beta1
          - description: Shovel
            displayName: Shovel
            kind: Shovel
            name: shovels.rabbitmq.com
            version: v1beta1
          - description: Super Stream
            displayName: SuperStream
            kind: SuperStream
            name: superstreams.rabbitmq.com
            version: v1alpha1
          - description: User
            displayName: User
            kind: User
            name: users.rabbitmq.com
            version: v1beta1
          - description: Vhost
            displayName: Vhost
            kind: Vhost
            name: vhosts.rabbitmq.com
            version: v1beta1
          required:
          - description: Rabbitmq Cluster
            displayName: RabbitmqCluster
            kind: RabbitmqCluster
            name: rabbitmqclusters.rabbitmq.com
            version: v1beta1
        description: |
          ## About the managed application
          RabbitMQ is an open-source message-broker software that originally implemented the Advanced Message Queuing Protocol and has since been extended with a plug-in architecture to support Streaming Text Oriented Messaging Protocol, MQ Telemetry Transport, and other protocols.
          ## About this Operator
          Kubernetes operator to allow developers to create and manage RabbitMQ messaging topologies within a RabbitMQ cluster using a declarative Kubernetes API. A Messaging topology is the collection of objects such as exchanges, queues, bindings and policies that provides specific messaging or streaming scenario. This operator is used with RabbitMQ clusters deployed via the RabbitMQ Cluster Kubernetes Operator. This repository contains custom controllers and custom resource definitions (CRDs) enabling a declarative API for RabbitMQ messaging topologies.
          ## Prerequisites for enabling this Operator
          The operator works on top of the RabbitMQ cluster operator.
          Messaging Topology Operator is tested with the latest release of RabbitMQ Cluster Operator. It uses the generated default user secret from RabbitmqCluster (set in rabbitmqcluster.status.binding) to authenticate with RabbitMQ server.
        displayName: rabbitmq-messaging-topology-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rabbitmq
        - messaging
        - amqp
        - amqp10
        - stomp
        - mqtt
        - mqtt5
        - queues
        - streaming
        links:
        - name: GitHub
          url: https://github.com/rabbitmq/messaging-topology-operator
        - name: Documentation
          url: https://www.rabbitmq.com/kubernetes/operator/install-topology-operator.html
        maintainers:
        - email: rabbitmq-users@googlegroups.com
          name: VMware Tanzu
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        provider:
          name: VMware Tanzu
        relatedImages:
        - quay.io/community-operator-pipeline-prod/rabbitmq-messaging-topology-operator@sha256:8b221a9aebcfa2ddb6e1f1220d2ba53a4ca79ba17494b3b2a46092f590867037
        - quay.io/rabbitmqoperator/messaging-topology-operator:1.18.2
        version: 1.18.2
      entries:
      - name: rabbitmq-messaging-topology-operator.v1.18.2
        version: 1.18.2
      - name: rabbitmq-messaging-topology-operator.v1.18.1
        version: 1.18.1
      - name: rabbitmq-messaging-topology-operator.v1.17.4
        version: 1.17.4
      - name: rabbitmq-messaging-topology-operator.v1.16.0
        version: 1.16.0
      - name: rabbitmq-messaging-topology-operator.v1.15.0
        version: 1.15.0
      - name: rabbitmq-messaging-topology-operator.v1.14.2
        version: 1.14.2
      - name: rabbitmq-messaging-topology-operator.v1.14.1
        version: 1.14.1
      - name: rabbitmq-messaging-topology-operator.v1.13.0
        version: 1.13.0
      - name: rabbitmq-messaging-topology-operator.v1.12.2
        version: 1.12.2
      - name: rabbitmq-messaging-topology-operator.v1.12.1
        version: 1.12.1
      name: stable
    defaultChannel: stable
    packageName: rabbitmq-messaging-topology-operator
    provider:
      name: VMware Tanzu
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: odr-hub-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odr-hub-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east"
                },
                "spec": {
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east1"
                },
                "spec": {
                  "cidrs": [
                    "192.168.39.45/32"
                  ],
                  "clusterFence": "ManuallyFenced",
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east1"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPlacementControl",
                "metadata": {
                  "name": "drplacementcontrol-sample",
                  "namespace": "application-namespace"
                },
                "spec": {
                  "drPolicyRef": {
                    "name": "drpolicy-sample"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "excludedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "includedResources": [
                          "*"
                        ]
                      }
                    ]
                  },
                  "placementRef": {
                    "kind": "PlacementRule",
                    "name": "application-placement-rule"
                  },
                  "preferredCluster": "east",
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east",
                    "west"
                  ],
                  "replicationClassSelector": {
                    "matchLabels": {
                      "class": "ramen-replication-class"
                    }
                  },
                  "schedulingInterval": "1h",
                  "volumeSnapshotClassSelector": {
                    "matchLabels": {
                      "class": "ramen-snapshot-class"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "metrodr-drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east1",
                    "east2"
                  ],
                  "replicationClassSelector": {},
                  "schedulingInterval": {},
                  "volumeSnapshotClassSelector": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T08:01:44Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DRCluster is the Schema for the drclusters API
            displayName: DRCluster
            kind: DRCluster
            name: drclusters.ramendr.openshift.io
            version: v1alpha1
          - description: DRPlacementControl is the Schema for the drplacementcontrols
              API
            displayName: DRPlacement Control
            kind: DRPlacementControl
            name: drplacementcontrols.ramendr.openshift.io
            version: v1alpha1
          - description: DRPolicy is the Schema for the drpolicies API
            displayName: DRPolicy
            kind: DRPolicy
            name: drpolicies.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Hub is a disaster-recovery orchestrator for stateful
          applications. It operates from an Advanced Cluster Management (ACM) hub
          cluster to orchestrate the recovery of application state, and scheduling
          of ACM PlacementRule for disaster recovery operations.
        displayName: Openshift DR Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:35498d3e82e157b35b5f2270033ddc88a521453ab90c3b95e2a6a4cdf62c21c4
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: odr-hub-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odr-hub-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odr-hub-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odr-hub-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odr-hub-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odr-hub-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odr-hub-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odr-hub-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odr-hub-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odr-hub-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odr-hub-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east"
                },
                "spec": {
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRCluster",
                "metadata": {
                  "name": "east1"
                },
                "spec": {
                  "cidrs": [
                    "192.168.39.45/32"
                  ],
                  "clusterFence": "ManuallyFenced",
                  "region": "east",
                  "s3ProfileName": "s3-profile-of-east1"
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPlacementControl",
                "metadata": {
                  "name": "drplacementcontrol-sample",
                  "namespace": "application-namespace"
                },
                "spec": {
                  "drPolicyRef": {
                    "name": "drpolicy-sample"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "excludedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "includedResources": [
                          "*"
                        ]
                      }
                    ]
                  },
                  "placementRef": {
                    "kind": "PlacementRule",
                    "name": "application-placement-rule"
                  },
                  "preferredCluster": "east",
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east",
                    "west"
                  ],
                  "replicationClassSelector": {
                    "matchLabels": {
                      "class": "ramen-replication-class"
                    }
                  },
                  "schedulingInterval": "1h",
                  "volumeSnapshotClassSelector": {
                    "matchLabels": {
                      "class": "ramen-snapshot-class"
                    }
                  }
                }
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRPolicy",
                "metadata": {
                  "name": "metrodr-drpolicy-sample"
                },
                "spec": {
                  "drClusters": [
                    "east1",
                    "east2"
                  ],
                  "replicationClassSelector": {},
                  "schedulingInterval": {},
                  "volumeSnapshotClassSelector": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:50:45Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DRCluster is the Schema for the drclusters API
            displayName: DRCluster
            kind: DRCluster
            name: drclusters.ramendr.openshift.io
            version: v1alpha1
          - description: DRPlacementControl is the Schema for the drplacementcontrols
              API
            displayName: DRPlacement Control
            kind: DRPlacementControl
            name: drplacementcontrols.ramendr.openshift.io
            version: v1alpha1
          - description: DRPolicy is the Schema for the drpolicies API
            displayName: DRPolicy
            kind: DRPolicy
            name: drpolicies.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Hub is a disaster-recovery orchestrator for stateful
          applications. It operates from an Advanced Cluster Management (ACM) hub
          cluster to orchestrate the recovery of application state, and scheduling
          of ACM PlacementRule for disaster recovery operations.
        displayName: Openshift DR Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/odr-hub-operator-bundle@sha256:747108b5f119ea96ab3c8f6d7035b1e98aa8df879ed772c94459500b5a715483
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        version: 4.20.4-rhodf
      entries:
      - name: odr-hub-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odr-hub-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odr-hub-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odr-hub-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odr-hub-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odr-hub-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: datagrid
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datagrid-operator.v8.2.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "adminAuth": {
                    "secretName": "basic-auth"
                  },
                  "clusterName": "example-infinispan",
                  "name": "mycache"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC batch-cache"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:1435aa60e8ab4d25c86daae68dcb93d14999f50d7c1e11a3c5726a86d3d30453
          createdAt: "2021-08-24T17:39:44Z"
          description: Create and manage Red Hat Data Grid clusters.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Restore API schema.
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Interoperability:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Data Grid Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
          Red Hat Data Grid is a distributed, in-memory data store that increases application performance and delivers open-source capabilities to handle demanding use cases.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.2/html/data_grid_operator_8.2_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.2
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:1435aa60e8ab4d25c86daae68dcb93d14999f50d7c1e11a3c5726a86d3d30453
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4d8057709958ef60bcabdcec52f05eae8df121fd3f4762c3218abca38130f638
        - registry.redhat.io/datagrid/datagrid-8-openj9-11-rhel8@sha256:c8607d6538a7528e27e6ecb138e0a93a03b3c9fa1f8a9a5aad3fd9f4a6814448
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:a7641fc5f4c7aed4b73d7d98ccb58ef64cf14ab16d72378f56dba3ad4b8714c6
        version: 8.2.8
      entries:
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: 8.2.x
    - currentCSV: datagrid-operator.v8.3.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:4d9d7221b029866837add5f3cb52dd0b7956f57996ce2d8b76344ce2de678716
          createdAt: "2022-11-03T08:40:57Z"
          description: Create and manage Red Hat Data Grid clusters.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Data Grid", "Red Hat
            Runtimes", "Red Hat Integration", "Red Hat Process Automation"]'
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request 1Gi of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.3/html/data_grid_operator_8.3_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.3
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:7dffd170b9b7d021b1615e6d746cbdfcbd819a1306ecdbaf042bcaf2202f7daa
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:4d9d7221b029866837add5f3cb52dd0b7956f57996ce2d8b76344ce2de678716
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        version: 8.3.9
      entries:
      - name: datagrid-operator.v8.3.9
        version: 8.3.9
      - name: datagrid-operator.v8.3.8
        version: 8.3.8
      - name: datagrid-operator.v8.3.7
        version: 8.3.7
      - name: datagrid-operator.v8.3.6
        version: 8.3.6
      - name: datagrid-operator.v8.3.5
        version: 8.3.5
      - name: datagrid-operator.v8.3.4
        version: 8.3.4
      - name: datagrid-operator.v8.3.3
        version: 8.3.3
      - name: datagrid-operator.v8.3.2
        version: 8.3.2
      - name: datagrid-operator.v8.3.1
        version: 8.3.1
      - name: datagrid-operator.v8.3.0
        version: 8.3.0
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: 8.3.x
    - currentCSV: datagrid-operator.v8.4.16
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:e5315682869de72514e3e027bfb02bf0bb64919453ca738c7ecfa1e34634ac2b
          createdAt: 2024-05-30T08:05:19 EDT
          description: Create and manage Red Hat Data Grid clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Data Grid", "Red Hat
            Runtimes", "Red Hat Integration", "Red Hat Process Automation"]'
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request 1Gi of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.4/html/data_grid_operator_8.4_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.4
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9d9e466b7c367d0406406550c74bc790aa68f3f875ea4f652eb28f2e25a05458
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:24cf79efa89bbfa495665b1711a27531b7ab0813695a89b2c38c96c2e792eb24
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:111d1f4ab8f006386102d1bec4cd6a41b446d9ae401a43c821b2f318c8ba74c8
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel8-operator@sha256:e5315682869de72514e3e027bfb02bf0bb64919453ca738c7ecfa1e34634ac2b
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        version: 8.4.16
      entries:
      - name: datagrid-operator.v8.4.16
        version: 8.4.16
      - name: datagrid-operator.v8.4.15
        version: 8.4.15
      - name: datagrid-operator.v8.4.14
        version: 8.4.14
      - name: datagrid-operator.v8.4.13
        version: 8.4.13
      - name: datagrid-operator.v8.4.12
        version: 8.4.12
      - name: datagrid-operator.v8.4.11
        version: 8.4.11
      - name: datagrid-operator.v8.4.10
        version: 8.4.9
      - name: datagrid-operator.v8.4.8
        version: 8.4.8
      - name: datagrid-operator.v8.4.7
        version: 8.4.7
      - name: datagrid-operator.v8.4.6
        version: 8.4.6
      - name: datagrid-operator.v8.4.5
        version: 8.4.5
      - name: datagrid-operator.v8.4.4
        version: 8.4.4
      - name: datagrid-operator.v8.4.3
        version: 8.4.3
      - name: datagrid-operator.v8.4.2
        version: 8.4.2
      - name: datagrid-operator.v8.4.1
        version: 8.4.1
      - name: datagrid-operator.v8.4.0
        version: 8.4.0
      - name: datagrid-operator.v8.3.9
        version: 8.3.9
      - name: datagrid-operator.v8.3.8
        version: 8.3.8
      - name: datagrid-operator.v8.3.7
        version: 8.3.7
      - name: datagrid-operator.v8.3.6
        version: 8.3.6
      - name: datagrid-operator.v8.3.5
        version: 8.3.5
      - name: datagrid-operator.v8.3.4
        version: 8.3.4
      - name: datagrid-operator.v8.3.3
        version: 8.3.3
      - name: datagrid-operator.v8.3.2
        version: 8.3.2
      - name: datagrid-operator.v8.3.1
        version: 8.3.1
      - name: datagrid-operator.v8.3.0
        version: 8.3.0
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: 8.4.x
    - currentCSV: datagrid-operator.v8.5.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create counter --concurrency-level=1 --initial-value=5 --storage=VOLATILE --type=weak batch-counter\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "template": "\u003cdistributed-cache /\u003e"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.redhat.io/datagrid/datagrid-8-rhel9-operator@sha256:d719d778b0848588a7e61d3c3fa689763f51a6533af4cf9e1c738c4ed8fac760
          createdAt: 2025-12-04T06:26:42 UTC
          description: Create and manage Red Hat Data Grid clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Data Grid", "Red Hat
            Runtimes", "Red Hat Integration", "Red Hat Process Automation"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Red Hat Data Grid is a distributed, in-memory data store built from tried and trusted open-source technology.

          ### Data Grid
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Data Grid cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Data Grid pods request 1Gi of memory and 1Gi of ReadWriteOnce persistent storage. Data Grid Operator lets you adjust resource allocation to suit your requirements.
        displayName: Data Grid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Release information
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.5/html/data_grid_operator_8.5_release_notes/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_data_grid/8.5
        - name: Operator source code
          url: https://github.com/infinispan/infinispan-operator
        - name: Product page
          url: https://www.redhat.com/en/technologies/jboss-middleware/data-grid
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:a711c50e489995fb60e5dec23ce286360743feda5066e4a0861d448aa4f2e903
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9223b4b5c1c866a91033dac40f30a4caae0f6946cdb64935a3fdfffdb9ede660
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:24cf79efa89bbfa495665b1711a27531b7ab0813695a89b2c38c96c2e792eb24
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:9d9e466b7c367d0406406550c74bc790aa68f3f875ea4f652eb28f2e25a05458
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:d522a20ca6909bd464f85967d8b86fe42b83f773478a80785f9a85a0cb87dfed
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:b56269cb849afca34e7f82cc8e01a44bb32af6126f24db28019a58e556d4cb3c
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:532dca6facb584c1261c0480c499af9f857c70dc390e0d46e46afec2561468af
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:48cf13e71953cea6f62354289f0d8ece7a8a481ee0bb2c76eb9352d438db9ca3
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bf7760520f5bea151a531d538d525c4591c47166995aefb4d77fef138de11544
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:4dbe1b7a1a36990c0a31d5a66f3cc4ca2954c9e1ec3b87431113a4111530277d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:554b831a0803d55a4e3b7022011b5a5f6d2b4b65009065a9b28bc8e55fc3ad46
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:f59ae21773dfc207454a709ac5f7aad2be6a6a20ac88da26c379edeed54537b8
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:0d368459c98c5788dd55d2add5b4b7d438b9a8c814ea8aee2222ea956699cbb6
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:ae852e4679978725bb7d24c1bdfe25b40bd883130ed04a36d4fca49dbea024ef
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:11bfe5c8109d26164cff428232b2001ab8df464f14a382661b936543336e2960
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:ad4f91f984b4b898012963d52e6ebcd166ec03e76e26eba3191ecb87f51fb18d
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:9bc0b730570ab55fbeca83075949f4caa96ed5c37637420a59cd4a7db01ea840
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6e1766784b684561666134d41dca5331b80d50e63695fe7b1a1d6d4cdb73f0bd
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:4b9bf39d2ff14bcfbd4628a399093703d87a2b2b9c8e74c3d7cfdff4b5167fa4
        - registry.redhat.io/datagrid/datagrid-8-rhel9-operator@sha256:d719d778b0848588a7e61d3c3fa689763f51a6533af4cf9e1c738c4ed8fac760
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:54bc26a0fddc160a4e0d1a813aec78abb3c9cb77db5039b74c23de759faa67f5
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:985193caf9bc3698c4d85aeedd1cfea09bccda881636d67885387b2a83c65ebd
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:1d5525d2d575dcc9d90da57afeb5fb310edc28d97d7ba55290db6bd152a34a95
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:c25e3152d6a6b6d5cd86d311bf567e594b9948440785209cd8d7986076a5a10d
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:5656cd188d054551489d45be996266d03e3faa8814b8bfc0f360cf0dceb83cbe
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:bcb040bf640691568a93a4c71c8072c37ffb76b4296ade83186f279862b7f197
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:424b30dccd773f69c079b35a42e8c3e339246c5d490e14e3fcfb8bd8144a9160
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:6b78aaf15558c0522d22ba3003244203e6d39e6fe737c3075e30de8763218358
        - registry.redhat.io/datagrid/datagrid-8-prod-operator-bundle@sha256:2461b1da4bea1e25b69a7bf8ef2173d905369e5a779134fa5099677da10cd8b4
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:78a6bed6fcb6962e5689b92806789b72a66db21b7c607b392a573c98593f2c09
        - registry.redhat.io/datagrid/datagrid-8-rhel9@sha256:879f3dcc24ffe795472779f777d955666ba4041c17e717d5e165cd7f12d7955a
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:c15d4fd827f554291c14851f187947f4109c0e20257fa2f1e141b32669569358
        version: 8.5.13
      entries:
      - name: datagrid-operator.v8.5.13
        version: 8.5.13
      - name: datagrid-operator.v8.5.12
        version: 8.5.12
      - name: datagrid-operator.v8.5.11
        version: 8.5.11
      - name: datagrid-operator.v8.5.10
        version: 8.5.10
      - name: datagrid-operator.v8.5.9
        version: 8.5.9
      - name: datagrid-operator.v8.5.8
        version: 8.5.8
      - name: datagrid-operator.v8.5.7
        version: 8.5.7
      - name: datagrid-operator.v8.5.6
        version: 8.5.6
      - name: datagrid-operator.v8.5.5
        version: 8.5.5
      - name: datagrid-operator.v8.5.4
        version: 8.5.4
      - name: datagrid-operator.v8.5.3
        version: 8.5.3
      - name: datagrid-operator.v8.5.2
        version: 8.5.2
      - name: datagrid-operator.v8.5.1
        version: 8.5.1
      - name: datagrid-operator.v8.5.0
        version: 8.5.0
      - name: datagrid-operator.v8.4.16
        version: 8.4.16
      - name: datagrid-operator.v8.4.15
        version: 8.4.15
      - name: datagrid-operator.v8.4.14
        version: 8.4.14
      - name: datagrid-operator.v8.4.13
        version: 8.4.13
      - name: datagrid-operator.v8.4.12
        version: 8.4.12
      - name: datagrid-operator.v8.4.11
        version: 8.4.11
      - name: datagrid-operator.v8.4.10
        version: 8.4.9
      - name: datagrid-operator.v8.4.8
        version: 8.4.8
      - name: datagrid-operator.v8.4.7
        version: 8.4.7
      - name: datagrid-operator.v8.4.6
        version: 8.4.6
      - name: datagrid-operator.v8.4.5
        version: 8.4.5
      - name: datagrid-operator.v8.4.4
        version: 8.4.4
      - name: datagrid-operator.v8.4.3
        version: 8.4.3
      - name: datagrid-operator.v8.4.2
        version: 8.4.2
      - name: datagrid-operator.v8.4.1
        version: 8.4.1
      - name: datagrid-operator.v8.4.0
        version: 8.4.0
      - name: datagrid-operator.v8.3.9
        version: 8.3.9
      - name: datagrid-operator.v8.3.8
        version: 8.3.8
      - name: datagrid-operator.v8.3.7
        version: 8.3.7
      - name: datagrid-operator.v8.3.6
        version: 8.3.6
      - name: datagrid-operator.v8.3.5
        version: 8.3.5
      - name: datagrid-operator.v8.3.4
        version: 8.3.4
      - name: datagrid-operator.v8.3.3
        version: 8.3.3
      - name: datagrid-operator.v8.3.2
        version: 8.3.2
      - name: datagrid-operator.v8.3.1
        version: 8.3.1
      - name: datagrid-operator.v8.3.0
        version: 8.3.0
      - name: datagrid-operator.v8.2.8
        version: 8.2.8
      - name: datagrid-operator.v8.2.7
        version: 8.2.7
      - name: datagrid-operator.v8.2.6
        version: 8.2.6
      - name: datagrid-operator.v8.2.5
        version: 8.2.5
      - name: datagrid-operator.v8.2.4
        version: 8.2.4
      name: stable
    defaultChannel: stable
    packageName: datagrid
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: fence-agents-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fence-agents-remediation.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediation",
                "metadata": {
                  "name": "worker-1"
                },
                "spec": {
                  "agent": "fence_ipmilan",
                  "nodeSecretNames": {
                    "master-0": "fence-agents-credentials-master0",
                    "master-1": "fence-agents-credentials-master1",
                    "master-2": "fence-agents-credentials-master2",
                    "worker-0": "fence-agents-credentials-worker0",
                    "worker-1": "fence-agents-credentials-worker1",
                    "worker-2": "fence-agents-credentials-worker2"
                  },
                  "nodeparameters": {
                    "--ipport": {
                      "master-0": "6230",
                      "master-1": "6231",
                      "master-2": "6232",
                      "worker-0": "6233",
                      "worker-1": "6234",
                      "worker-2": "6235"
                    }
                  },
                  "remediationStrategy": "ResourceDeletion",
                  "retrycount": 5,
                  "retryinterval": "5s",
                  "sharedSecretName": "fence-agents-credentials-shared",
                  "sharedparameters": {
                    "--action": "reboot",
                    "--ip": "192.168.111.1",
                    "--lanplus": "",
                    "--username": "admin"
                  },
                  "timeout": "60s"
                }
              },
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediationTemplate",
                "metadata": {
                  "name": "fenceagentsremediationtemplate-default"
                },
                "spec": {
                  "template": {
                    "spec": {
                      "agent": "fence_ipmilan",
                      "nodeSecretNames": {
                        "master-0": "fence-agents-credentials-master0",
                        "master-1": "fence-agents-credentials-master1",
                        "master-2": "fence-agents-credentials-master2",
                        "worker-0": "fence-agents-credentials-worker0",
                        "worker-1": "fence-agents-credentials-worker1",
                        "worker-2": "fence-agents-credentials-worker2"
                      },
                      "nodeparameters": {
                        "--ipport": {
                          "master-0": "6230",
                          "master-1": "6231",
                          "master-2": "6232",
                          "worker-0": "6233",
                          "worker-1": "6234",
                          "worker-2": "6235"
                        }
                      },
                      "remediationStrategy": "ResourceDeletion",
                      "retrycount": 5,
                      "retryinterval": "5s",
                      "sharedSecretName": "fence-agents-credentials-shared",
                      "sharedparameters": {
                        "--action": "reboot",
                        "--ip": "192.168.111.1",
                        "--lanplus": "",
                        "--username": "admin"
                      },
                      "timeout": "60s"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/fence-agents-remediation-operator:v0.6.0
          createdAt: "2025-11-24 11:34:19"
          description: Fence Agents Remediation Operator uses well-known agents to
            fence and remediate unhealthy nodes. The remediation includes rebooting
            the unhealthy node using a fence agent, and then evicting workloads from
            the unhealthy node.
          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.skipRange: '>=0.0.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/fence-agents-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FenceAgentsRemediation is the Schema for the fenceagentsremediations
              API
            displayName: Fence Agents Remediation
            kind: FenceAgentsRemediation
            name: fenceagentsremediations.fence-agents-remediation.medik8s.io
            version: v1alpha1
          - description: FenceAgentsRemediationTemplate is the Schema for the fenceagentsremediationtemplates
              API
            displayName: Fence Agents Remediation Template
            kind: FenceAgentsRemediationTemplate
            name: fenceagentsremediationtemplates.fence-agents-remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Fence Agents Remediation (FAR) is a Kubernetes operator that uses well-known agents to fence and remediate unhealthy nodes.
          The remediation includes rebooting the unhealthy node using a fence agent and then evicting workloads from the unhealthy node.

          ### Compatibility
          FAR is one of the remediator operators by [Medik8s](https://www.medik8s.io/remediation/remediation/),
          such as [Self Node Remediation](https://github.com/medik8s/self-node-remediation) and [Machine Deletion Remediation](https://github.com/medik8s/machine-deletion-remediation),
          that were designed to run with the Node HealthCheck Operator [(NHC)](https://github.com/medik8s/node-healthcheck-operator) which detects an unhealthy node and creates remediation CR.
          It is recommended to use FAR with NHC for an easier and smoother experience by fully automating the remediation process, but it can be used as a standalone remediator for the more experienced user.

          ### Advantages
          - Robustness - FAR has direct feedback from the traditional Application Programming Interface (API) call (e.g., IPMI) about the result of the fence action without using the Kubernetes API.
          - Speed - FAR is rapid since it can reboot a node and receive an acknowledgment from the API call while other remediators might need to wait a safe time till they can expect the node to be rebooted.
          - Diversity - FAR includes several fence agents from a large known set of upstream fencing agents for bare metal servers, virtual machines, cloud platforms, etc.
          - Adjustability - FAR allows to set up different parameters for running the API call that remediates the node.
        displayName: Fence Agents Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - fencing
        - auto-healing
        - recovery
        - high-availability
        - fence-agents
        - fence-agents-remediation
        - remediation
        - far
        - baremetal
        links:
        - name: Fence Agents Remediation
          url: https://www.medik8s.io/remediation/fence-agents-remediation/fence-agents-remediation/
        - name: Source Code
          url: https://www.github.com/medik8s/fence-agents-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/fence-agents-remediation@sha256:3c9737485019cac25171816fea587dfe4bba9eb2907af9041bd340c0cf7e6ed3
        - quay.io/medik8s/fence-agents-remediation-operator:v0.6.0
        version: 0.6.0
      entries:
      - name: fence-agents-remediation.v0.6.0
        version: 0.6.0
      - name: fence-agents-remediation.v0.5.0
        version: 0.5.0
      - name: fence-agents-remediation.v0.4.0
        version: 0.4.0
      - name: fence-agents-remediation.v0.3.0
        version: 0.3.0
      - name: fence-agents-remediation.v0.2.1
        version: 0.2.1
      - name: fence-agents-remediation.v0.2.0
        version: 0.2.0
      name: stable
    defaultChannel: stable
    packageName: fence-agents-remediation
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: unsupported
      operatorframework.io/arch.s390x: unsupported
      operatorframework.io/os.linux: supported
      provider: Konveyor
      provider-url: https://www.konveyor.io
    name: konveyor-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: konveyor-operator.v0.9.0-alpha.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:4a46b279981e9dd241b3806c380216a785778a8d5c4a8d061d226246ba881c95
          createdAt: "2025-11-18T00:34:15Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.9.0-alpha.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/postgresql-15-c9s@sha256:ccb8c231bfa69b8981b67613f4438cc84f4ce3f2b269b8dbe91d0577b7b9bba4
        - quay.io/konveyor/tackle2-operator@sha256:4a46b279981e9dd241b3806c380216a785778a8d5c4a8d061d226246ba881c95
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:cacf06f2530fa59113837792220fcf34ff8b780579da063de338015d9ed30bf2
        - quay.io/konveyor/java-external-provider@sha256:fac1f5660cd9fe052581b099fd103c017df2c067c708eb306daa04ec54319ea9
        - quay.io/konveyor/kai-solution-server@sha256:0019fa97e13e1c91cc73aa116a63f979e1feee04324eb6eefcd437aa0b788d9f
        - quay.io/konveyor/tackle2-addon-discovery@sha256:61f52dff8e1f586ef7ba8e38771c057c28a49c6a75c5342819b872954dd4df43
        - quay.io/konveyor/tackle-keycloak-init@sha256:26458527bdb0a00c3512c00d17d33d89a8fb0e6b5f750f40b946bf6442bbb30d
        - quay.io/konveyor/kantra@sha256:233447c01584712a183c058158d73ac9fb600a80250e4fe9d4cbea410d8da129
        - quay.io/konveyor/tackle2-hub@sha256:9e3e0c513e33bb916ad374b1e1a6b6bb01167dd121d25cf88ebd6688d590628d
        - quay.io/konveyor/origin-oauth-proxy@sha256:d46a89fe587f8f55a292d871085584d7ba1910a61979c7e56c5bf7ca680a0a9a
        - quay.io/konveyor/tackle2-addon-platform@sha256:9a731b5da30f2c9e0c9a00a941cf8da59eb7b911e025fef94531156f47bdf7f0
        - quay.io/konveyor/tackle2-ui@sha256:47a8b1ae89ccfc26495ac7c446cbe7635d371f7b87cc139ba0283958f30ec545
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:98176feb3772609445c129f78ec3051cda24eea703b48cc2b55cfb25cd2c0f70
        - quay.io/konveyor/generic-external-provider@sha256:a2f9de8afe702b881ab8ea96a32f78ba39953a02af1f22650bd49c93a371f621
        version: 0.9.0-alpha.1
      entries:
      - name: konveyor-operator.v0.9.0-alpha.1
        version: 0.9.0-alpha.1
      - name: konveyor-operator.v0.8.1-alpha.5
        version: 0.8.1-alpha.5
      - name: konveyor-operator.v0.8.1-alpha.2
        version: 0.8.1-alpha.2
      - name: konveyor-operator.v0.8.0-alpha.4
        version: 0.8.0-alpha.4
      - name: konveyor-operator.v0.8.0-alpha.2
        version: 0.8.0-alpha.2
      - name: konveyor-operator.v0.8.0-alpha.1
        version: 0.8.0-alpha.1
      - name: konveyor-operator.v0.7.0-alpha.2
        version: 0.7.0-alpha.2
      - name: konveyor-operator.v0.7.0-alpha.1
        version: 0.7.0-alpha.1
      - name: konveyor-operator.v0.6.0-alpha.2
        version: 0.6.0-alpha.2
      - name: konveyor-operator.v0.6.0-alpha.1
        version: 0.6.0-alpha.1
      - name: konveyor-operator.v0.5.0-alpha.1
        version: 0.5.0-alpha.1
      - name: konveyor-operator.v0.4.0-alpha.1
        version: 0.4.0-alpha.1
      - name: konveyor-operator.v0.3.0-alpha.6
        version: 0.3.0-alpha.6
      - name: konveyor-operator.v0.3.0-alpha.5
        version: 0.3.0-alpha.5
      - name: konveyor-operator.v0.3.0-alpha.4
        version: 0.3.0-alpha.4
      - name: konveyor-operator.v0.3.0-alpha.3
        version: 0.3.0-alpha.3
      - name: konveyor-operator.v0.3.0-alpha.2
        version: 0.3.0-alpha.2
      - name: konveyor-operator.v0.3.0-alpha.1
        version: 0.3.0-alpha.1
      - name: konveyor-operator.v0.2.0-alpha.3
        version: 0.2.0-alpha.3
      - name: konveyor-operator.v0.2.0-alpha.2
        version: 0.2.0-alpha.2
      - name: konveyor-operator.v0.2.0-alpha.1
        version: 0.2.0-alpha.1
      name: alpha
    - currentCSV: konveyor-operator.v0.8.1-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:1a38f0f8f001985ebdcb3fe7d87a109720cf70384d6e0356f92c445b4de86383
          createdAt: "2025-11-17T21:54:00Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.8.1-beta.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/postgresql-15-c9s@sha256:ccb8c231bfa69b8981b67613f4438cc84f4ce3f2b269b8dbe91d0577b7b9bba4
        - quay.io/konveyor/tackle2-operator@sha256:1a38f0f8f001985ebdcb3fe7d87a109720cf70384d6e0356f92c445b4de86383
        - quay.io/konveyor/tackle2-ui@sha256:d792f07491bc3be53c657655d7e4b19512c29a3bec09d7c60fd27b97587379ee
        - quay.io/konveyor/kai-solution-server@sha256:d2b2eea76e6039b6ce18ef6f556a9312e1a26105e6d44785555213f65c28f914
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:4e09e172df63b05ab5f0de1acc0190d655bbb702c19db7cc16d1c7cb3e1de566
        - quay.io/konveyor/tackle2-addon-discovery@sha256:718e6736a47da8b9a2cd2847e28576d91ce2b62e3206412f4daefcce03d58376
        - quay.io/konveyor/tackle2-hub@sha256:d84629e468e52dd5fd2ce9b32a33fc1aeea18107bbb0ce1525cb0271d6d99476
        - quay.io/konveyor/tackle-keycloak-init@sha256:bf87edaf6dae20f47bd5fd2e3a0030e8f26d53d256fbae650ae1d6d6df708668
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:3d061a070f2b64edcf34280830962a7e10595550d357ad8b3a70b3fb3b66b068
        - quay.io/konveyor/kantra@sha256:5903643763e0f68b56ed1ac9f5579bed287fb6572b2c35776f0089b912ad7c04
        - quay.io/konveyor/tackle2-addon-platform@sha256:19d5344169cfcf748a2938789b79c8ef3283cfb296990236d87d144b72dfda62
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/generic-external-provider@sha256:7248c8c10c058f3e76d6ba2a9483a6d8bb96a729467bb25a079b89753ba7ea83
        - quay.io/konveyor/java-external-provider@sha256:666b513f31757fa44d0bc11d5c7e2c15c8be7f318b12626a85ac501c4b246a8c
        - quay.io/konveyor/origin-oauth-proxy@sha256:d46a89fe587f8f55a292d871085584d7ba1910a61979c7e56c5bf7ca680a0a9a
        version: 0.8.1-beta.1
      entries:
      - name: konveyor-operator.v0.8.1-beta.1
        version: 0.8.1-beta.1
      - name: konveyor-operator.v0.8.0-beta.5
        version: 0.8.0-beta.5
      - name: konveyor-operator.v0.8.0-beta.4
        version: 0.8.0-beta.4
      - name: konveyor-operator.v0.8.0-beta.2
        version: 0.8.0-beta.2
      - name: konveyor-operator.v0.8.0-beta.1
        version: 0.8.0-beta.1
      - name: konveyor-operator.v0.6.0-beta.2
        version: 0.6.0-beta.2
      - name: konveyor-operator.v0.6.0-beta.1
        version: 0.6.0-beta.1
      - name: konveyor-operator.v0.5.0-beta.3
        version: 0.5.0-beta.3
      - name: konveyor-operator.v0.5.0-beta.2
        version: 0.5.0-beta.2
      - name: konveyor-operator.v0.5.0-beta.1
        version: 0.5.0-beta.1
      - name: konveyor-operator.v0.3.0-beta.3
        version: 0.3.0-beta.3
      - name: konveyor-operator.v0.3.0-beta.2
        version: 0.3.0-beta.2
      - name: konveyor-operator.v0.3.0-beta.1.2
        version: 0.3.0-beta.1.2
      - name: konveyor-operator.v0.3.0-beta.1.1
        version: 0.3.0-beta.1.1
      - name: konveyor-operator.v0.3.0-beta.1
        version: 0.3.0-beta.1
      name: beta
    - currentCSV: konveyor-operator.v0.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "move2kube-plan",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "image": "quay.io/konveyor/tackle-addon-move2kube-plan:latest"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:9688d0763d8c7812beee715a061c3c198006448855d7b891d45833f62cf869fb
          createdAt: "2023-05-25T15:23:45Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.1.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)

        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle2-addon-windup@sha256:81f0625cb82eb24ded51c7258f229f57778820c62e3be6ec05fb2b12d2970825
        - quay.io/konveyor/tackle2-addon@sha256:35be344bbd3393f5634f52aafd21e9c3964d1e0ba5011ecad1561600d476bbe9
        - quay.io/konveyor/tackle2-operator@sha256:9688d0763d8c7812beee715a061c3c198006448855d7b891d45833f62cf869fb
        - quay.io/konveyor/postgresql-12-centos7@sha256:1287d947464fbf5275feb31d106d2feb856c6117f0eaec8d947f2e03bd8618c5
        - quay.io/openshift-community-operators/konveyor-operator@sha256:04e63481c5104bd034283d5d4b0567167f62480d2c61154b1d16dbd41c344dfb
        - quay.io/konveyor/tackle-keycloak-init@sha256:b0347e5a608352c4b7bb796b65a67d417e98ba4896db71a487fa26243214cfcf
        - quay.io/konveyor/tackle-pathfinder@sha256:f9c5aa49f1d27f477cdd82c21441ae0287acdcdc9b2b3fcf197884007dc5f7dd
        - quay.io/konveyor/tackle2-hub@sha256:3d15d158ffb6f1fc4ca5aaf29a12173fe344c289773902c9161056bdf69acc92
        - quay.io/konveyor/tackle2-ui@sha256:99650804e65e2b6cb15a37c00189d7f463e4d19a0f866a79e9c09c8420a4d028
        version: 0.1.2
      entries:
      - name: konveyor-operator.v0.1.2
        version: 0.1.2
      - name: konveyor-operator.v0.1.1
        version: 0.1.1
      - name: konveyor-operator.v0.1.0
        version: 0.1.0
      name: konveyor-0.1
    - currentCSV: konveyor-operator.v0.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "move2kube-plan",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "image": "quay.io/konveyor/tackle-addon-move2kube-plan:latest"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:1860bb099ac64d9a2af27692f0671b7240e4d19746fffa9f9ae2356ff2818e10
          createdAt: "2023-07-06T06:17:40Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.2.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)

        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-operator@sha256:1860bb099ac64d9a2af27692f0671b7240e4d19746fffa9f9ae2356ff2818e10
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle-keycloak-init@sha256:ca6c85bdf8417d4be116c2098b8d8ad5ae8b7ab0b636c4cbe4a392aa424e2d47
        - quay.io/konveyor/tackle-pathfinder@sha256:190269b061b2065ca8ba9357bf9b959a2f587a547a44769ae0afd1ac86b4b197
        - quay.io/konveyor/tackle2-addon@sha256:11693e16363bcd98249209d63a29f0c6cfffab3a4071649cbeea2fd276bc2440
        - quay.io/konveyor/tackle2-hub@sha256:d9c4f21f44098a2526474968b6d88094dca8b5eaeb9042716332c9cb67df47cd
        - quay.io/openshift-community-operators/konveyor-operator@sha256:d4c590033b1a2bcd67375465298e5cb6d136fe091abb12b8d009aa683c23ef62
        - quay.io/konveyor/postgresql-12-centos7@sha256:6016530ab1fce71d29421ce9a97b3a89fbbb126b87b1b079c6aadebb7ff5664c
        - quay.io/konveyor/tackle2-ui@sha256:d10c1e717d160c5eb2581649a8dd7cdf4922a74d92db014f72f42a48a3134341
        - quay.io/konveyor/tackle2-addon-windup@sha256:538dfdb134d53a876d126dbd16679638584a606ef2b9e8fbe69ed1f29733c03a
        version: 0.2.1
      entries:
      - name: konveyor-operator.v0.2.1
        version: 0.2.1
      - name: konveyor-operator.v0.2.0
        version: 0.2.0
      name: konveyor-0.2
    - currentCSV: konveyor-operator.v0.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:cd2305373f50ce927393e43f5735915e46c32d6f8a76091ee2808218885bba72
          createdAt: "2024-05-02T22:12:42Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.3.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-operator@sha256:cd2305373f50ce927393e43f5735915e46c32d6f8a76091ee2808218885bba72
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:51bda0c6577c15684583d607a4f0cebef760814102423f4b2025016093a19fc1
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:848db711d9e8a329b689b40003293fce19c43faedd31afd80d9ae9d5c11cda49
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle2-ui@sha256:bbf58d2ea613489f91efae450421afafb9052416b0d7971606e2729e89fd7de6
        - quay.io/konveyor/origin-oauth-proxy@sha256:05f6bd1216b921b1f47a3821f0e22b84ed6b141bb2ada474c12bd9fde613108c
        - quay.io/konveyor/tackle-keycloak-init@sha256:a63702cc0cb36830a7830ed70ca344a9aacc201ba6f3c94806ca2e93160df4dd
        - quay.io/konveyor/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/konveyor/tackle2-hub@sha256:bf8803721d06d1a39251e22892343a013d5ef0fb4c1883c95e1eb55aa683f486
        version: 0.3.2
      entries:
      - name: konveyor-operator.v0.3.2
        version: 0.3.2
      - name: konveyor-operator.v0.3.1
        version: 0.3.1
      - name: konveyor-operator.v0.3.0
        version: 0.3.0
      name: konveyor-0.3
    - currentCSV: konveyor-operator.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:496db8ca859608d04008ac36cf7bdc9cafd7214294d33a9c5646083c361ffcb6
          createdAt: "2024-06-05T03:08:51Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          olm.skipRange: '>=0.0.0 <0.4.0'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/origin-oauth-proxy@sha256:05f6bd1216b921b1f47a3821f0e22b84ed6b141bb2ada474c12bd9fde613108c
        - quay.io/konveyor/tackle-keycloak-init@sha256:4c7e07b1fce05f7dca47edecc0ba0ce373cc38e48879cc7eed72510d2865a18e
        - quay.io/konveyor/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:e84ea36d206a8c143794e3986940377e77c7618225cad594bdf9a4047d7823dc
        - quay.io/konveyor/tackle2-hub@sha256:b87acd8e2ee4a7edc4369bc375f64e2b98bc479d09556439e2ee4d74b74970a9
        - quay.io/konveyor/tackle2-ui@sha256:cb1255fc5fa4608fc659c3455f3164664b960cc2d9a3b2208967798e3532df78
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:e29f175a799597c84f0663a66767bba24feb78f802516056b35b5beb14d9eb41
        - quay.io/konveyor/tackle2-operator@sha256:496db8ca859608d04008ac36cf7bdc9cafd7214294d33a9c5646083c361ffcb6
        version: 0.4.0
      entries:
      - name: konveyor-operator.v0.4.0
        version: 0.4.0
      name: konveyor-0.4
    - currentCSV: konveyor-operator.v0.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:474d739ed470701b628f1f9e971925ac7fbe0b543f3e36305d932b963b1225fd
          createdAt: "2024-08-27T15:48:02Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.5.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-hub@sha256:faf91ca68e24979642a44fa013b1fb9edfee415eee835ccef9dce2eb418e2909
        - quay.io/konveyor/tackle2-ui@sha256:36f29fe01d3078f0e100b24d1ed126850c5a773f4b0ae922fd4c4487de1ac29d
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:2d58f12044b0951c87c851527240196db148acb9797e6ac49f9474a6e6039d71
        - quay.io/konveyor/generic-external-provider@sha256:334a631538d31efc8d82adae4f52303336800fa3037b5055c72400918d81955c
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle-keycloak-init@sha256:5f652be5914ae6e23537b9fe02ccc9cd638c08de5462d9f58135a405c81f5287
        - quay.io/konveyor/tackle2-operator@sha256:474d739ed470701b628f1f9e971925ac7fbe0b543f3e36305d932b963b1225fd
        - quay.io/konveyor/postgresql-15-c9s@sha256:039ce764cadd03b4cfea954700139b8ceff415a9a0970baa7f2cf60f7f929174
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:2afbe8bea09904e084e026cd0a294fbe1c7b05d0e387f6633b09c5eaf4665e02
        - quay.io/konveyor/tackle2-addon-discovery@sha256:461f960bb1d29e719fb472fe9be9cf3deca17d984687957f54546a09047b0d3c
        - quay.io/konveyor/java-external-provider@sha256:33fb5d24b998f01c481a0a03e3f1bf3f7a6c93f5b662885102a0c966026e3375
        - quay.io/konveyor/origin-oauth-proxy@sha256:1db28585d10c8ccc65a38b5d4977e6566661411f51d44ec1fb8b8a562087d86c
        version: 0.5.3
      entries:
      - name: konveyor-operator.v0.5.3
        version: 0.5.3
      - name: konveyor-operator.v0.5.1
        version: 0.5.1
      - name: konveyor-operator.v0.5.0
        version: 0.5.0
      name: konveyor-0.5
    - currentCSV: konveyor-operator.v0.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:8ee143c473570efd27b6f93332dc272871e11c66cc20f381c3a1e6e5688abf68
          createdAt: "2025-03-05T21:14:52Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.6.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/postgresql-15-c9s@sha256:55f8014c1edafab8f9085228a0d207c4e98820c615be34b935ce98e942d388b1
        - quay.io/konveyor/tackle2-addon-discovery@sha256:3eb6f395c451e2c9a867871b3984a25f9f8e6ddcfe388f37fbd6d46a61a70b1e
        - quay.io/konveyor/tackle-keycloak-init@sha256:a3741269aa15edd2f9fb7df853a03a942d16a88eec114f3e54f82ef63b82adc4
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:0b5cbb322fbe96335522410376c2e8505a8302088c0e454f3e5e7e28ba7c96a6
        - quay.io/konveyor/tackle2-hub@sha256:52a8b9be038fbfbc4e22172a4a8c7191d2b06fd8670e5df2ec442e3ce00d8c8a
        - quay.io/konveyor/tackle2-ui@sha256:12b0eda13a63508b9c13d4f9309bbfbe19d564627cf0de672307af1a6ec993fb
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/tackle2-operator@sha256:8ee143c473570efd27b6f93332dc272871e11c66cc20f381c3a1e6e5688abf68
        - quay.io/konveyor/generic-external-provider@sha256:27c1731859a4a639d2750cff8d1246281f4b0466bb5b069169c3e170c3c19b30
        - quay.io/konveyor/java-external-provider@sha256:15148cde9a6fedef2207fe36f0ac3bd1ecdc6e3ac76f1cbec9eb97ffcf247231
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/origin-oauth-proxy@sha256:1db28585d10c8ccc65a38b5d4977e6566661411f51d44ec1fb8b8a562087d86c
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:7b8bdecbe3b3def1ec810ad53f604c7a71daebcfa7433cbb3a0db937580d087c
        version: 0.6.1
      entries:
      - name: konveyor-operator.v0.6.1
        version: 0.6.1
      - name: konveyor-operator.v0.6.0
        version: 0.6.0
      name: konveyor-0.6
    - currentCSV: konveyor-operator.v0.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:f5870bc26b2a07ddacf00ed5b5f7df7d1068489010a80bcc543686c6c9576fbb
          createdAt: "2025-07-10T15:16:17Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.7.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/tackle-keycloak-init@sha256:dab4cb1229c8a729d14b4cecb4aa3b5c4d48e94c36e84d785c922fc08d120617
        - quay.io/konveyor/tackle2-addon-discovery@sha256:60951801aa539ee59cd43f3c5f42a2ca751ca70e995cbb258b7d55ebb24d8450
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:7ed52ea9b95650241b5c2c01914775e29be23f7ed75fabb6e7c71969f3f0728f
        - quay.io/konveyor/tackle2-operator@sha256:f5870bc26b2a07ddacf00ed5b5f7df7d1068489010a80bcc543686c6c9576fbb
        - quay.io/konveyor/generic-external-provider@sha256:facca8861559a658710ad3aef8b325731595bf944cce1907715d6efd33887072
        - quay.io/konveyor/tackle2-hub@sha256:52f66607f3134a4165ce691c6e9ce992d93927e9591055daafdc1bfc1dd09dd9
        - quay.io/konveyor/tackle2-ui@sha256:f87b04762fd163f40c49f3bcffd473f0c3f80a643576c6a3e2c2b4a14395c09f
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:16c4f165143b8bab7f3eb08c815c2cae0dbf7fffd9ce7a625357be5806c24c5c
        - quay.io/konveyor/origin-oauth-proxy@sha256:2c811da843057119b246784f21dc7eec490669a8569e8295d8e914cdce555b24
        - quay.io/konveyor/postgresql-15-c9s@sha256:41460103a0bab189cd77acb6e741d9c5a6d3506479f7e56df40eb156d9b2cadd
        - quay.io/konveyor/java-external-provider@sha256:a0ef733e9fce3845d02b5360440add85427acad697d2157ef92242dec06bd73b
        version: 0.7.1
      entries:
      - name: konveyor-operator.v0.7.1
        version: 0.7.1
      - name: konveyor-operator.v0.7.0
        version: 0.7.0
      name: konveyor-0.7
    - currentCSV: konveyor-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:68b6672fccdf54c65cc83f4c82db023053d6b61409bea880f58b53ccfea7b1ed
          createdAt: "2025-09-29T20:41:09Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.8.0'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:8c82ad880ca2a2d5cd4b08125feca16d13d014d15f4f77677306086d1067f9aa
        - quay.io/konveyor/tackle2-ui@sha256:f3f7380be65ff1fb3459c37a3d4865354bab685dc836893f78221f16ba579f70
        - quay.io/konveyor/tackle2-addon-discovery@sha256:96a5b37834fbed9506014bcbd909258081fd833ef9e16daa104effd0e3a3c6ea
        - quay.io/konveyor/kantra@sha256:a5b5591a51143574a6ce6678b141b9cd3e14328c6fad773412dde21b442fe364
        - quay.io/konveyor/generic-external-provider@sha256:c7b6618bfff81d73f1b455963107ffdaf19334e6552ce076c009476da3f37f21
        - quay.io/konveyor/tackle-keycloak-init@sha256:c0051b8c3a3c891fe12012623aee775080ecb47af8a4e75b8be8b0b4855d9f2c
        - quay.io/konveyor/tackle2-hub@sha256:b3e6db1ffc195143b8e5d54b60949256e154b0f8b667736512a084e015cdf2a7
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:c28522543b039454d2d97b48198d099ac0b8211cbc58f13468d5f70b9f69b037
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/origin-oauth-proxy@sha256:8988f14db7dde3edcaed0541cecb0b4fd58fab9dbaffb79a6c1c4aee13b9bd73
        - quay.io/konveyor/tackle2-addon-platform@sha256:d0280ade44ba5e15210c07342608576b38e6993af2e479740675a4706cd2c875
        - quay.io/konveyor/java-external-provider@sha256:8eab08a04e98051f89352250d63523a5b591f35a6497f5d69a5a9d556a94abf9
        - quay.io/konveyor/postgresql-15-c9s@sha256:af275f35a307367dcee9a339a6903cf79e3a8a41cabf79fb7cea7015895f0b58
        - quay.io/konveyor/kai-solution-server@sha256:bab6e224c50de5b44cc37ce0297a3b91255efc08c1ad0fccf14fef9e5182775f
        - quay.io/konveyor/tackle2-operator@sha256:68b6672fccdf54c65cc83f4c82db023053d6b61409bea880f58b53ccfea7b1ed
        version: 0.8.0
      entries:
      - name: konveyor-operator.v0.8.0
        version: 0.8.0
      name: konveyor-0.8
    - currentCSV: konveyor-operator.v0.7.0-rc.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
          createdAt: "2025-05-21T17:12:48Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.7.0-rc.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle2-ui@sha256:afe9141366a23c072286517e9af5436d14fd1df775aaa2fa13c3911764515777
        - quay.io/konveyor/origin-oauth-proxy@sha256:6c2847fd9667938b1d1294d988038e885e43cd9fb378862dae3419ce4f21631f
        - quay.io/konveyor/tackle-keycloak-init@sha256:c3124971dc31be9201de2a6a1f6b2f886adf4c96731188dd5e750798cde3cfe7
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:46150725a2adbde8dfdc2250614d437a50e64bbf0b4562dabc73715a287de67b
        - quay.io/konveyor/tackle2-addon-discovery@sha256:89d2b0f8636897eb4dc1957a74a5b5041c0f3267a747adcf2bc6ca56b17b9937
        - quay.io/konveyor/generic-external-provider@sha256:de55f78939576c110eb6f084a7ca51338fedba699fbb5135f23392783a5d7b95
        - quay.io/konveyor/java-external-provider@sha256:61ab20e37916abfeeadde685336660f0e8bbf519403d1f7100d43c1e42a72fbd
        - quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:fbf82685700aaea953a99e98e0c28b56e54ca6972e390f44c07957aa8df29442
        - quay.io/konveyor/postgresql-15-c9s@sha256:012cd6611aa9d3f4e0a82636d6817f381c19e3b0809199216fbe7fa3396a2ef5
        - quay.io/konveyor/tackle2-hub@sha256:bed834eb5488eef23b0d1e8af194b0646cf74c39c197e0d57acc5aed2299d9f5
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        version: 0.7.0-rc.1
      entries:
      - name: konveyor-operator.v0.7.0-rc.1
        version: 0.7.0-rc.1
      - name: konveyor-operator.v0.6.0-rc.2
        version: 0.6.0-rc.2
      - name: konveyor-operator.v0.6.0-rc.1
        version: 0.6.0-rc.1
      - name: konveyor-operator.v0.5.0-rc.1
        version: 0.5.0-rc.1
      - name: konveyor-operator.v0.3.0-rc.4
        version: 0.3.0-rc.4
      - name: konveyor-operator.v0.3.0-rc.3
        version: 0.3.0-rc.3
      - name: konveyor-operator.v0.3.0-rc.2
        version: 0.3.0-rc.2
      - name: konveyor-operator.v0.3.0-rc.1
        version: 0.3.0-rc.1
      name: rc
    - currentCSV: konveyor-operator.v0.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:33cf01f19a7043bcc5bdb12a3ed6bde7a9094981aa2383554111ebec9b4ba498
          createdAt: "2025-03-26T20:25:41Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.6.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/tackle-keycloak-init@sha256:e32fa48351f410361e8bc100303deeb40d8a66d7eefb0cf7b1bc16e067a9a795
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:734752be111a97e4b7e0030d563c32883f419ad031b2f350cb8e7333f2f37de3
        - quay.io/konveyor/tackle2-ui@sha256:3c568c6047a044095080b6013b643a4041deae7b45936a443d4c4d708a81b945
        - quay.io/konveyor/tackle2-operator@sha256:33cf01f19a7043bcc5bdb12a3ed6bde7a9094981aa2383554111ebec9b4ba498
        - quay.io/konveyor/keycloak@sha256:9342435929d8ed447864694383a7fb50d91f0f4913b5f85f4a43ba8bc36f9b82
        - quay.io/konveyor/origin-oauth-proxy@sha256:1db28585d10c8ccc65a38b5d4977e6566661411f51d44ec1fb8b8a562087d86c
        - quay.io/konveyor/tackle2-addon-discovery@sha256:1b89266d6bdfa497ba8137e0d33ff53785ac476dd96bf4fd9a185ef0ddf513ce
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:18ba5c587dc613f9c1a8bc9e66081e52f3a37eedeea5e75881e628e9c35ef460
        - quay.io/konveyor/generic-external-provider@sha256:bc1112352f1a2c3172c5e7d5e637b5c5a69bf7d98b78f494fa593e8872e5cfd1
        - quay.io/konveyor/java-external-provider@sha256:fe85689b57125d678df685012b93c8a567fcb9251777cd711e9b82bdb22a734c
        - quay.io/konveyor/tackle2-hub@sha256:0df49087d0c9341c2120a7c3aa2ba7907c056f94e1602ffd0496ca7113c75382
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/postgresql-15-c9s@sha256:7957d3b272b9f4e469bdc0c514ec9e70e8fbdc34a7250b4f4c62f9bb73cbf08d
        version: 0.6.2
      entries:
      - name: konveyor-operator.v0.6.2
        version: 0.6.2
      name: release-0.6
    - currentCSV: konveyor-operator.v0.7.0-rc.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "container": {
                    "image": "quay.io/konveyor/tackle2-addon-analyzer:latest",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "quay.io/konveyor/generic-external-provider:latest",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "feature_auth_required": "false"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "konveyor-tackle"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
          createdAt: "2025-05-21T17:12:48Z"
          description: Konveyor is an open-source application modernization platform
            that helps organizations safely and predictably modernize applications
            to Kubernetes at scale.
          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: "true"
          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.skipRange: '>=0.0.0 <0.7.0-rc.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "konveyor-tackle"
              },
              "spec": {
                "feature_auth_required": "false"
              }
            }
          operatorframework.io/suggested-namespace: konveyor-tackle
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/tackle2-operator
          support: https://github.com/konveyor/tackle2-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |
          Konveyor is an open-source application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to Kubernetes.

          See the [Konveyor Unified Experience](https://github.com/konveyor/enhancements/tree/master/enhancements/unified_experience) to understand the vision of the project and the [Konveyor Charter](https://github.com/konveyor/community/blob/main/Charter.md) for more information on the community.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.

          Authentication capabilities may be enabled via the `feature_auth_required` parameter in the Tackle CR. When enabled, the Operator installs the following components:
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Examples
          If you are just getting started using Konveyor, take a look at an [example application analysis here](https://github.com/konveyor/example-applications/tree/main/example-1)

          ### Documentation
          Documentation can be found on our [website](https://konveyor.github.io/tackle).

          ### Getting help
          If you encounter any issues while using Konveyor operator, you can create an issue on our [Github repo](https://github.com/konveyor/tackle2-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing
          You can contribute by:

          * Raising any issues you find using Konveyor Operator
          * Fixing issues by opening [Pull Requests](https://github.com/konveyor/tackle2-operator/pulls)
          * Improving [documentation](https://github.com/konveyor/tackle-documentation)
        displayName: Konveyor Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        links:
        - name: Documentation
          url: https://konveyor.github.io/tackle
        - name: Operator
          url: https://github.com/konveyor/tackle2-operator
        maintainers:
        - email: konveyor-dev@googlegroups.com
          name: Konveyor Community
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://www.konveyor.io
        relatedImages:
        - quay.io/konveyor/origin-oauth-proxy@sha256:6c2847fd9667938b1d1294d988038e885e43cd9fb378862dae3419ce4f21631f
        - quay.io/konveyor/tackle-keycloak-init@sha256:c3124971dc31be9201de2a6a1f6b2f886adf4c96731188dd5e750798cde3cfe7
        - quay.io/community-operator-pipeline-prod/konveyor-operator@sha256:fbf82685700aaea953a99e98e0c28b56e54ca6972e390f44c07957aa8df29442
        - quay.io/konveyor/kai@sha256:94bc7683545b58b74f1d8f75c82d9fcba301ca77cdbc5e7d9dcb808bf0fff5e0
        - quay.io/konveyor/keycloak@sha256:dc23dd938a5dc5dfaabc71e44d014928284fafff9122e0395659f1cdcf534da8
        - quay.io/konveyor/tackle2-ui@sha256:afe9141366a23c072286517e9af5436d14fd1df775aaa2fa13c3911764515777
        - quay.io/konveyor/postgresql-15-c9s@sha256:012cd6611aa9d3f4e0a82636d6817f381c19e3b0809199216fbe7fa3396a2ef5
        - quay.io/konveyor/tackle2-addon-discovery@sha256:89d2b0f8636897eb4dc1957a74a5b5041c0f3267a747adcf2bc6ca56b17b9937
        - quay.io/konveyor/tackle2-addon-analyzer@sha256:46150725a2adbde8dfdc2250614d437a50e64bbf0b4562dabc73715a287de67b
        - quay.io/konveyor/tackle2-hub@sha256:bed834eb5488eef23b0d1e8af194b0646cf74c39c197e0d57acc5aed2299d9f5
        - quay.io/konveyor/tackle2-operator@sha256:87cdac762506c121f84f8f872d45067020943c0a1c9de70fba71ad39a99c1c43
        - quay.io/konveyor/generic-external-provider@sha256:de55f78939576c110eb6f084a7ca51338fedba699fbb5135f23392783a5d7b95
        - quay.io/konveyor/java-external-provider@sha256:61ab20e37916abfeeadde685336660f0e8bbf519403d1f7100d43c1e42a72fbd
        version: 0.7.0-rc.1
      entries:
      - name: konveyor-operator.v0.7.0-rc.1
        version: 0.7.0-rc.1
      name: release-0.7
    defaultChannel: alpha
    packageName: konveyor-operator
    provider:
      name: Konveyor
      url: https://www.konveyor.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Korrel8r
      provider-url: https://github.com/korrel8r/korrel8r
    name: korrel8r
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: korrel8r.v0.1.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "korrel8r.openshift.io/v1alpha1",
                "kind": "Korrel8r",
                "metadata": {
                  "name": "korrel8r",
                  "namespace": "korrel8r"
                },
                "spec": {
                  "debug": {
                    "verbose": 1
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional,Monitoring,Logging & Tracing
          containerImage: quay.io/korrel8r/operator:0.1.8
          createdAt: "2024-09-27T17:45:00Z"
          description: Correlate cluster resources and observability data.
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "korrel8r.openshift.io/v1alpha1",
              "kind": "Korrel8r",
              "metadata": {
                "name": "korrel8r",
                "namespace": "korrel8r"
              }
            }
          operatorframework.io/suggested-namespace: korrel8r
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/korrel8r/korrel8r
          support: Korrel8r Project
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Korrel8r is a service that correlates observabililty signals
              in the cluster.
            displayName: Korrel8r
            kind: Korrel8r
            name: korrel8rs.korrel8r.openshift.io
            version: v1alpha1
        description: |
          Korrel8r helps navigate from problem symptoms to related resources and signal data that can reveal the cause.
          It can follow relationships between disjointed observability "silos" (logs, metrics, alerts and more) to bring together all the data available to solve a problem.
          This operator allows Korrel8r to be deployed as a cluster service with a REST API.
          It can be used as a back-end for data correlation by the OpenShift console and other tools.
        displayName: Korrel8r
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - signal
        - correlation
        links:
        - name: Documentation
          url: https://korrel8r.github.io/korrel8r
        - name: Source Code and Issues
          url: https://github.com/korrel8r/korrel8r
        maintainers:
        - email: korrel8r@gmail.com
          name: Korrel8r Project
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Korrel8r
          url: https://github.com/korrel8r/korrel8r
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/korrel8r@sha256:f00f8a7e2011bcc97d87fc7f5bb40a19d6b5737d1f5d7f3b2322ec39009c0618
        - quay.io/korrel8r/operator:0.1.8
        version: 0.1.8
      entries:
      - name: korrel8r.v0.1.8
        version: 0.1.8
      - name: korrel8r.v0.1.7
        version: 0.1.7
      - name: korrel8r.v0.1.5
        version: 0.1.5
      - name: korrel8r.v0.1.3
        version: 0.1.3
      - name: korrel8r.v0.1.2
        version: 0.1.2
      - name: korrel8r.v0.0.8
        version: 0.0.8
      name: stable
    defaultChannel: stable
    packageName: korrel8r
    provider:
      name: Korrel8r
      url: https://github.com/korrel8r/korrel8r
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Randoli
      provider-url: https://www.randoli.io
    name: app-insights-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: app-insights-operator.v1.17.9-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "appinsights.randoli/v1beta1",
                "kind": "RandoliAgent",
                "metadata": {
                  "name": "randoli",
                  "namespace": "randoli-agents"
                },
                "spec": {
                  "costManagement": {
                    "opencost": {
                      "exporter": {
                        "image": {
                          "tag": "1.112.1"
                        }
                      }
                    },
                    "vpaOperator": {
                      "enabled": false
                    }
                  },
                  "logs": {
                    "vector": {
                      "agent": {
                        "containerSecurityContext": {
                          "privileged": true
                        }
                      }
                    }
                  },
                  "network": {
                    "standaloneConsole": {
                      "enable": true
                    }
                  },
                  "observability": {
                    "netobserv": {
                      "enabled": false
                    },
                    "otel": {
                      "operator": {
                        "enabled": false
                      }
                    }
                  },
                  "resources": {
                    "limits": {
                      "memory": "2Gi"
                    },
                    "requests": {
                      "cpu": "50m",
                      "memory": "512Mi"
                    }
                  },
                  "securityContext": {
                    "fsGroup": 1001
                  },
                  "tags": {
                    "costManagement": false,
                    "observability": false
                  }
                }
              }
            ]
          categories: Developer Tools
          containerImage: docker.io/randoli/app-insights-operator:1.17.9-1@sha256:80858b56529695f8ee2750a0f1cc1b300a58ff7563af853f61b421573842fef6
          createdAt: "2025-12-15T21:20:19Z"
          description: Randoli Agent connects OpenShift clusters to Randoli Observability
            & Cost Management.
          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.properties: '[]'
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Randoli
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: RandoliAgent
            name: randoliagents.appinsights.randoli
            version: v1beta1
        description: |-
          This operator provides a container-based agent to be installed in your OpenShift clusters for connecting to Randoli Observability & Cost Management platforms

          Randoli Observability is built on the strong foundation provided by OpenShift & OpenTelemetry.

          AI driven capabilities reduces MTTR by 40% - [learn more](https://www.randoli.io/solutions/sre-agent)

          The platform stores & analyzes telemetry locally & ingest only signals, reducing the cost by 50-70% compared to our competitors. - [learn more](https://www.randoli.io)

          Your logs & traces never leave your environment, preserving data security & sovereignty

          ***Analyze logs, traces & metrics locally reduce cost by 50-70%***

          Our innovative approach separates control plane from data plane resulting in significant cost savings.
          You control retention, data security & sovereignty.

          Telemetry Analyzed Locally to Extract Signals
          Retrieve Telemetry On-Demand, During Investigation
          Pay for Signals not Raw Telemetry Ingestion

          ***OpenTelemetry Native***

          Randoli Observability is OpenTelemetry native, providing you with a vendor nuetral approach for instrumenting, collecting & processing of telemetry data.
          This avoid vendor lock-in and puts you in control of your own telemetry data.

          ***AI driven Observability & Incident Management reduces MTTR***

          Reduce your MTTR (Mean Time To Resolution) by 40%
          Our SRE Agent works alongside your team to

          Proactively detect issues
          Execute preapproved Runbooks
          Create Issue Reports & Incident Reports

          ***Real time log monitoring within your environment***

          Automatically detect recurring issues directly from your application logs, with no data ever leaving your environment.

          Local log scanning with zero egress
          Proactive real-time detection of recurring issues
          Complete data privacy within your environment

          ***Gen AI Observability***

          Monitor cost, latency, and reliability of your LLM applications, without adding a separate stack or agent.

          View model-level usage, latency, and token breakdowns
          Trace end-to-end performance across LLM and infrastructure layers
          Track request duration, error rates, and token usage per model
          Works out-of-the-box with OpenAI, Claude, HuggingFace, Llama, and more

          ***Cost Monitoring & Chargeback***

          Cost visiblity & monitoring helps organizations analysize & optimize their costs with actionable insights.
          Cost analytics provides breakdowns by resources, workloads, namespaces & cost-groups helping you understand the make up of your OpenShift cluster costs.
          Efficiency & Right-Sizing insights helps you optimize your workloads to find the right balance between cost savings & performance.
          Cost Alerts helps you understand cost spikes and a breakdown of resources & workloads that contributed to the spike, helping you to take corrective action if need be.
          Attribute OpenShift & shared platform costs as well as application costs to business units.

          **Prerequisites**

          If you are using the Randoli Observability platform, you will need to install the following Operators:
          - Red Hat build of OpenTelemetry Operator
          - Network Observability

          If you are using the Randoli Cost Management platform, you will need to install the following Operator:
          - VerticalPodAutoscaler

          For additional information please use our Openshift installation guide here: [https://docs.insights.randoli.io/agent/kubernetes_agent/openshift](https://docs.insights.randoli.io/agent/kubernetes_agent/openshift)

           **Randoli Observability for Kubernetes**

          [Product Page](https://www.randoli.io/product/kubernetes-observability)

          **Randoli Cost Management for Kubernetes**

          [Product Page](https://www.randoli.io/product/kubernetes-cost-management)
        displayName: Randoli Agent
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - developer tools
        - insights
        - monitoring
        links:
        - name: Randoli Observability for Kubernetes
          url: https://www.randoli.io/product/kubernetes-observability
        - name: Randoli Cost Management for Kubernetes
          url: https://www.randoli.io/product/kubernetes-cost-management
        maintainers:
        - email: contact@randoli.ca
          name: Randoli Inc.
        maturity: beta
        minKubeVersion: 1.24.0
        provider:
          name: Randoli
          url: https://www.randoli.io
        relatedImages:
        - docker.io/randoli/app-insights-operator:1.17.9-1@sha256:80858b56529695f8ee2750a0f1cc1b300a58ff7563af853f61b421573842fef6
        - registry.connect.redhat.com/randoli/app-insights-operator@sha256:1e76d6a502e932161a316e12047485fd2b6ef628caccf043efb81be76ae12ed8
        version: 1.17.9-1
      entries:
      - name: app-insights-operator.v1.17.9-1
        version: 1.17.9-1
      name: stable
    defaultChannel: stable
    packageName: app-insights-operator
    provider:
      name: Randoli
      url: https://www.randoli.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-hbase-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hbase-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/hbase-operator@sha256:ecb52aee1013aef272f7aecedfda9de755f25ed68cda6871acaacde5aac367d7
          description: Stackable Operator for Apache HBase
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/hbase-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for HbaseClusterSpec via `CustomResource`
            displayName: hbaseclusters.hbase.stackable.tech
            kind: HbaseCluster
            name: hbaseclusters.hbase.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache HBase
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hbase
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/hbase-operator@sha256:ecb52aee1013aef272f7aecedfda9de755f25ed68cda6871acaacde5aac367d7
        - registry.connect.redhat.com/stackable/stackable-apache-hbase-operator:25.11.0
        version: 25.11.0
      entries:
      - name: hbase-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-hbase-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: eG Innovations
      provider-url: https://www.eginnovations.com
    name: eginnovations-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eginnovations-operator.v0.0.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eginnovations.com/v1beta1",
                "kind": "EgUniversalAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "eginnovations-operator"
                  },
                  "name": "eguniversalagent",
                  "namespace": "egagent"
                },
                "spec": {
                  "agent": {
                    "env": [
                      {
                        "name": "EG_MANAGER",
                        "value": "Replace with eG Manager IP"
                      },
                      {
                        "name": "EG_MANAGER_PORT",
                        "value": "Replace with eG Manager Port"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "true"
          containerImage: docker.io/eginnovations/universal-agent-operator:0.0.11
          createdAt: "2025-09-11T20:08:00Z"
          description: eG Innovations provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with eG Universal Agent Operator.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/eginnovations/universal-agent-operator
          support: eG Innovations
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EgUniversalAgent is the Schema for the eguniversalagents
              API
            displayName: Eg Universal Agent
            kind: EgUniversalAgent
            name: eguniversalagents.eginnovations.com
            version: v1beta1
        description: |
          eG Innovations’ converged application and infrastructure performance monitoring capabilities provide end-to-end visibility and correlated analytics for every layer, every tier of your IT landscape.

          The eG Enterprise Universal Agent Operator automatically configures a host agent on every Kubernetes worker node. The host agent auto-discovers the worker nodes and application containers running as Pods on each node and tracks their performance and utilization levels. In-depth monitoring of applications running on containers is also provided using the same host agent. No additional agents are required for the containers.

          ### Capabilities
            * Rolls out the egagent pod per node to monitor its pods and the node itself
            * Automatic BTM profiler injection using webhook based injection for deep application monitoring and transection tracing.

          ### Installation
            1. Create the namespace "egagent" for installing eG Agent on OpenShift Cluster.

               <br />``` $ oc create ns egagent ```
            2. Add "egagent" serviceaccount to scc( Security Context Constraints ) of OpenShift Cluster as privileged using below command.

               <br />``` $ oc adm policy add-scc-to-user privileged -z egagent -n egagent ```
            2. Install eG Innovations Universal Agent operator from [OpenShift Container Platform](https://www.openshift.com/) OperatorHub.
            3. Create the eG Universal Agent CRD (Custom Resource Definition)
               a. Click "View YAML Example" and copy the yaml contents and save it to (filename).yaml on your host.
               b. To apply the CRD run the following command

               <br />``` $ oc apply -f (filename).yaml ```

          ### Required Parameters
            * EG\_MANAGER, EG\_MANAGER\_PORT - provide the ip and port of your eG Manager Installation.

          ### Advanced Options
            * Disable Certificate Checking - disable any certificate validation that may interact poorly with proxies within your cluster
            * Image Override - use a copy of the eG Iniversal Agent container image from a registry other that Docker's or Red Hat's
            * Environment variables - define environment variables for the eG Universal Agent container of for APM profiler.
            * Namespace Selectors- select a subset of namesapces to enable instrumentation for applications.

          For complete list of supported parameters and the detailed documentation available in [eG Innovations Docs](https://docs.eginnovations.com)
        displayName: eG Innovations Universal Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Monitoring
        - Tracing
        links:
        - name: eG Innovations Kubernetes Monitoring Overview
          url: https://www.eginnovations.com/documentation/Kubernetes/Introduction-to-Monitoring-Kubernetes.htm
        maintainers:
        - email: devops@eginnovations.com
          name: eG Innovations
        maturity: beta
        minKubeVersion: 1.26.0
        provider:
          name: eG Innovations
          url: https://www.eginnovations.com
        relatedImages:
        - docker.io/eginnovations/universal-agent-operator:0.0.11
        - quay.io/community-operator-pipeline-prod/eginnovations-operator@sha256:19b12c75f7a2dfab027881ed9f0b09d25e3baa936d21f7be3ec1e0177ed9fdf2
        version: 0.0.11
      entries:
      - name: eginnovations-operator.v0.0.11
        version: 0.0.11
      - name: eginnovations-operator.v0.0.10
        version: 0.0.10
      - name: eginnovations-operator.v0.0.9
        version: 0.0.9
      - name: eginnovations-operator.v0.0.8
        version: 0.0.8
      name: beta
    defaultChannel: beta
    packageName: eginnovations-operator
    provider:
      name: eG Innovations
      url: https://www.eginnovations.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Solace Corporation
      provider-url: www.solace.com
    name: pubsubplus-eventbroker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pubsubplus-eventbroker-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pubsubplus.solace.com/v1beta1",
                "kind": "PubSubPlusEventBroker",
                "metadata": {
                  "name": "non-ha-standalone-example"
                },
                "spec": {
                  "redundancy": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "true"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.10
          containerImage: registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator:1.4.0
          createdAt: "2025-07-31T19:48:36Z"
          description: The Solace PubSub+ Event Broker Operator deploys and manages
            the lifecycle of PubSub+ Event Brokers
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
          support: Solace Products
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PubSub+ Event Broker
            displayName: PubSub+ Event Broker
            kind: PubSubPlusEventBroker
            name: pubsubpluseventbrokers.pubsubplus.solace.com
            version: v1beta1
        description: |
          ## Solace PubSub+ Platform
          Solace [PubSub+ Platform](https://solace.com/products/platform/) is a complete event streaming and management platform
          for real-time enterprises. The [PubSub+ Software Event Broker](https://solace.com/products/event-broker/software/) efficiently streams
          event-driven information between applications, IoT devices, and user interfaces running in the cloud, on-premises,
          and in hybrid environments using open APIs and protocols like AMQP, JMS, MQTT, REST and WebSocket.
          It can be installed into a variety of public and private clouds, PaaS, and on-premises environments.
          Event brokers in multiple locations can be linked together in an [Event Mesh](https://solace.com/what-is-an-event-mesh/)
          to dynamically share events across the distributed enterprise.

          ## Solace PubSub+ Event Broker Operator
          Solace Pubsub+ Event Broker Operator automatically deploys and manages PubSub+ Software Event Brokers on Kubernetes and OpenShift environments.

          Features include:
          * Initial deployment configuration: Production-ready HA, non-HA or for developers
          * Rolling update for configuration changes or broker upgrades
          * Prometheus monitoring support

          ## Getting started
          Refer to the [Solace PubSub+ Event Broker Operator Quick Start](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/README.md)
        displayName: Solace PubSub+ Event Broker Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - solace
        - pubsubplus
        - pubsub+
        - pubsub
        - messaging
        - advanced event broker
        - event broker
        - event mesh
        - event streaming
        - data streaming
        - event integration
        - middleware
        links:
        - name: Operator QuickStart
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
        - name: Operator Documentation
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/docs/EventBrokerOperatorUserGuide.md
        - name: Solace.com
          url: https://solace.com
        - name: Understanding Solace Technology
          url: https://solace.com/products/platform/
        - name: Solace PubSub+ Technical Documentation
          url: https://docs.solace.com/
        - name: Solace Developer Portal
          url: https://www.solace.dev/
        - name: Solace Community
          url: https://solace.community/
        maintainers:
        - email: support@solace.com
          name: Solace R&D
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Solace Corporation
          url: www.solace.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/pubsubplus-eventbroker-operator@sha256:2761ebb89dace09a1c1ccad92c28c877f3a6f75a674191ffc3788be7fa549926
        - registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator:1.4.0
        version: 1.4.0
      entries:
      - name: pubsubplus-eventbroker-operator.v1.4.0
        version: 1.4.0
      - name: pubsubplus-eventbroker-operator.v1.3.0
        version: 1.3.0
      - name: pubsubplus-eventbroker-operator.v1.2.0
        version: 1.2.0
      - name: pubsubplus-eventbroker-operator.v1.1.2
        version: 1.1.2
      - name: pubsubplus-eventbroker-operator.v1.1.1
        version: 1.1.1
      - name: pubsubplus-eventbroker-operator.v1.1.0
        version: 1.1.0
      - name: pubsubplus-eventbroker-operator.v1.0.3
        version: 1.0.3
      - name: pubsubplus-eventbroker-operator.v1.0.2
        version: 1.0.2
      - name: pubsubplus-eventbroker-operator.v1.0.1
        version: 1.0.1
      - name: pubsubplus-eventbroker-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: pubsubplus-eventbroker-operator
    provider:
      name: Solace Corporation
      url: www.solace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: 3scale-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: 3scale-operator.v0.10.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ProxyConfigPromote",
                "metadata": {
                  "name": "proxyconfigpromote-sample"
                },
                "spec": {
                  "ProductCRName": "product1-sample",
                  "Production": true
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/3scale-rhel7-operator@sha256:7aeebb760dfda74390723c1013f0dd36c5889fe0870e1093940a82d8ebae3047
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          olm.skipRange: '>=0.9.1 <0.10.5'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: ProxyConfigPromote is the Schema for the proxyconfigpromotes
              API
            displayName: Proxy Config Promote
            kind: ProxyConfigPromote
            name: proxyconfigpromotes.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |-
          The 3scale Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          [3scale API Management](https://www.redhat.com/en/technologies/jboss-middleware/3scale) makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          [3scale api management](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management)
          [Deploying 3scale using the operator](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator)

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator
        maintainers:
        - email: msoriano+3scaleoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:88dc7a289c803248efbe151999707325b1bc0aac2d26827ea1707e46e5c71652
        - registry.redhat.io/3scale-amp2/backend-rhel8@sha256:3d5f1ef4e67f97cc9cf3accf25033e176fc59714236a5ee0f022c9eb8be7a4b1
        - registry.redhat.io/rhel8/mysql-80@sha256:158198936a7f7896e0f94133cd64c8e8902e4f86e670b56b64ff02acfd9c2855
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:6c53e72c31d1a3e13aa3ea835039f30869e465903262545463f790cb36ef5241
        - registry.redhat.io/3scale-amp2/3scale-rhel7-operator-metadata@sha256:771bd8187990f334cce038a647e9c0fe903fa7519994119bc995ccc7cfad8b6f
        - registry.redhat.io/3scale-amp2/system-rhel7@sha256:13685f7ca51ebd1e21036fb08b3c2089a66cedb63683dca39925ec0463215fc6
        - registry.redhat.io/3scale-amp2/zync-rhel8@sha256:d043efa121626ee7fded3e773b0598137bbecf5878af09dfe6b5f28ab7876de6
        - registry.redhat.io/openshift4/ose-cli@sha256:1a8caae40be21f23ba3cb48b75809a73333907033a6041927aa568b5c9290f3c
        - registry.redhat.io/3scale-amp2/3scale-rhel7-operator@sha256:7aeebb760dfda74390723c1013f0dd36c5889fe0870e1093940a82d8ebae3047
        - registry.redhat.io/3scale-amp2/memcached-rhel7@sha256:6195aec4725b71f46a3bc2982300acecafc9c4aabb4ed1bbec06de9775d49694
        - registry.redhat.io/rhscl/redis-5-rhel7@sha256:91781cf512d695339f5a92da8bfae40b42a5585d3b5627d30e6fea08afc932a4
        version: 0.10.5
      entries:
      - name: 3scale-operator.v0.10.5
        version: 0.10.5
      name: threescale-2.13
    - currentCSV: 3scale-operator.v0.11.8-mas
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Application",
                "metadata": {
                  "name": "application-sample"
                },
                "spec": {
                  "accountCR": {
                    "name": "developeraccount-sample"
                  },
                  "applicationPlanName": "plan01",
                  "description": "testing application ",
                  "name": "testApp",
                  "productCR": {
                    "name": "product-sample"
                  },
                  "suspend": false
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ProxyConfigPromote",
                "metadata": {
                  "name": "proxyconfigpromote-sample"
                },
                "spec": {
                  "ProductCRName": "product1-sample",
                  "Production": true
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-mas/3scale-rhel7-operator@sha256:0a6673eae2f0e8d95b919b0243e44d2c0383d13e2e616ac8d3f80742d496d292
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Application is the Schema for the applications API
            displayName: Application
            kind: Application
            name: applications.capabilities.3scale.net
            version: v1beta1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: ProxyConfigPromote is the Schema for the proxyconfigpromotes
              API
            displayName: Proxy Config Promote
            kind: ProxyConfigPromote
            name: proxyconfigpromotes.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |-
          The 3scale Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          [3scale API Management](https://www.redhat.com/en/technologies/jboss-middleware/3scale) makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          [3scale api management](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management)
          [Deploying 3scale using the operator](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator)

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/install-threescale-on-openshift-guide#deploying-threescale-using-the-operator
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mstoklus@redhat.com
          name: Michal Stokluska
        - email: aucunnin@redhat.com
          name: Austin Cunningham
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-mas/3scale-operator-bundle@sha256:a6c2eff926feb11da27eb9972cb86ee0ef9ca0b013afb6fe6af4f72439d557ef
        - registry.redhat.io/3scale-mas/backend-rhel8@sha256:7d07caf7b6c5a195ba4706e82f3d28c3793afab99b1a6d5a7020547c48534cdc
        - registry.redhat.io/3scale-mas/system-rhel7@sha256:b0fd85a4994502a3a2ae9ba6a7610c38af64b6cc897efac12feb4b115a484f77
        - registry.redhat.io/rhel8/redis-6@sha256:22431acc2c991b6ee6b4de0219366dee6ea745122a49a0175d5fb58ed7d9205f
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:a03a1ae7f01259192b8d7b4ecee6ddfcdc0cd9e2d24a8c2306accb93ee767135
        - registry.redhat.io/3scale-mas/memcached-rhel7@sha256:9c2aba45971c924fd55b2aab50ee8e6861a9defd3808b38ff30316727af31f9a
        - registry.redhat.io/3scale-mas/searchd-rhel7@sha256:1426e4bd4aa0eb28b479900ffc02621203886280d24997cd11818387ff30d9df
        - registry.redhat.io/3scale-mas/zync-rhel9@sha256:419eb09d1b165363d5b90df01c1fa10f1f91f03649a8758620ffa49276685feb
        - registry.redhat.io/openshift4/ose-cli@sha256:1a8caae40be21f23ba3cb48b75809a73333907033a6041927aa568b5c9290f3c
        - registry.redhat.io/rhel8/mysql-80@sha256:7c05e61c0f4f5dad6aeda136e9a1af2f04f4de3c51004e997d4eacae3778da17
        - registry.redhat.io/rhscl/postgresql-10-rhel7@sha256:4f807ee6e885e966853f70e1c40bbc179dc1f994b401ac868b7f2b921f9d17a0
        - registry.redhat.io/3scale-mas/3scale-rhel7-operator@sha256:0a6673eae2f0e8d95b919b0243e44d2c0383d13e2e616ac8d3f80742d496d292
        version: 0.11.8-mas
      entries:
      - name: 3scale-operator.v0.11.8-mas
        version: 0.11.8-mas
      - name: 3scale-operator.v0.11.7-mas
        version: 0.11.7-mas
      - name: 3scale-operator.v0.11.6-mas
        version: 0.11.6-mas
      - name: 3scale-operator.v0.11.5-mas
        version: 0.11.5-mas
      - name: 3scale-operator.v0.11.3-mas
        version: 0.11.3-mas
      - name: 3scale-operator.v0.11.2-mas
        version: 0.11.2-mas
      - name: 3scale-operator.v0.11.1-mas
        version: 0.11.1-mas
      - name: 3scale-operator.v0.11.0-mas
        version: 0.11.0-mas
      - name: 3scale-operator.v0.10.0-mas
        version: 0.10.0-mas
      name: threescale-mas
    defaultChannel: threescale-2.13
    packageName: 3scale-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NetApp, Inc.
      provider-url: https://www.netapp.com/
    name: trident-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trident-operator.v25.10.0-linux-only
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "trident.netapp.io/v1",
                "kind": "TridentOrchestrator",
                "metadata": {
                  "name": "trident"
                },
                "spec": {
                  "IPv6": false,
                  "debug": true,
                  "nodePrep": [],
                  "imagePullSecrets": [],
                  "imageRegistry": "",
                  "namespace": "trident",
                  "silenceAutosupport": false
                }
              }
            ]
          categories: Storage
          containerImage: registry.connect.redhat.com/netapp/trident-operator-image@sha256:5d6eb0ae4a0f68329102cfb7bace94d24c728e8385e19bec360e0acb5f99c799
          createdAt: "2025-12-10"
          description: Trident Operator, to manage NetApp Trident installations
          features.operators.openshift.io/csi: "true"
          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"
          operatorhub.io/ui-metadata-max-k8s-version: "1.34"
          operators.openshift.io/valid-subscription: No subscriptions are required
          repository: https://github.com/netapp/trident
          support: NetApp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Used to deploy NetApp Trident.
            displayName: Trident Orchestrator
            kind: TridentOrchestrator
            name: tridentorchestrators.trident.netapp.io
            version: v1
        description: |
          NetApp Trident is an open source storage provisioner and orchestrator maintained by NetApp. It enables you to create storage volumes for containerized applications managed by Docker and Kubernetes. For full release information, including patch release changes, see https://docs.netapp.com/us-en/trident/trident-rn.html.

          Due to an issue being investigated by Red Hat and NetApp, oc-mirror cannot sync Windows container images that are part of the Trident-certified operator manifest hosted on registry.connect.redhat.com. This new manifest only points to Linux-only container images. Windows users should use the Trident community operator until this issue is addressed.
        displayName: NetApp Trident
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - NetApp
        - ONTAP
        - Trident
        - storage
        - performance
        - open source
        - Astra
        - Cloud Native
        - AWS
        - Azure
        - GCP
        - Cloud Volumes
        links:
        - name: GitHub Repository
          url: https://github.com/NetApp/trident
        - name: Trident documentation
          url: https://docs.netapp.com/us-en/trident/index.html
        - name: Support policy
          url: https://mysupport.netapp.com/site/info/version-support
        - name: Release Notes
          url: https://docs.netapp.com/us-en/trident/trident-rn.html
        maintainers:
        - email: ng-trident-openshift-operator@netapp.com
          name: NetApp
        provider:
          name: NetApp, Inc.
          url: https://www.netapp.com/
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:0c128a8b6be1e921d8a95cdbb101896cae321b6de3290362df0c3467ab598ed8
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:5e7f71f2c0f1f4707812c4fecb08dfef29c2f152b2286a700e6226472a927cec
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:2eac5bcb9f90ed9e7596656f5e3713e22fc77621336b3f7a2a9d54106d835b02
        - registry.connect.redhat.com/netapp/trident-autosupport@sha256:b273f7c1922ab2273c9b99f22383be88b6511fcd77f34299e9ecb1f85081fb2b
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:62eb2f146f84101119b54c6a1c6678d97b44b35cb800299032f0678dc4af582b
        - registry.connect.redhat.com/netapp/trident-operator-image@sha256:5d6eb0ae4a0f68329102cfb7bace94d24c728e8385e19bec360e0acb5f99c799
        - registry.connect.redhat.com/netapp/trident-operator@sha256:71b470e2254906f84b792ce56459f242ea7ac61b71a40d6da665bededd58fdf7
        - registry.connect.redhat.com/netapp/trident@sha256:59331f85ed657b1af9f8b139f08d6eae00be8d7b404784dbb61c5b5eb3f4d808
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:6c98bae9351f5e70ee41a7ae3e13c78bdf01c0113a9ee21825432c2741f5e391
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:210452dfc5a504705a113b3f4e9d615b1a28904db71f41ce804e35950d22bcd8
        version: 25.10.0-linux-only
      entries:
      - name: trident-operator.v25.10.0
        version: 25.10.0
      - name: trident-operator.v25.10.0-linux-only
        version: 25.10.0-linux-only
      name: stable
    defaultChannel: stable
    packageName: trident-operator
    provider:
      name: NetApp, Inc.
      url: https://www.netapp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CNCF
      provider-url: ""
    name: etcd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: etcdoperator.v0.6.1
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          description: etcd is a distributed key value store providing a reliable
            way to store data across a cluster of machines.
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a cluster of etcd nodes.
            displayName: etcd Cluster
            kind: EtcdCluster
            name: etcdclusters.etcd.database.coreos.com
            version: v1beta2
        description: |
          etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. Itâ€™s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader. Your applications can read and write data into etcd.
          A simple use-case is to store database connection details or feature flags within etcd as key value pairs. These values can be watched, allowing your app to reconfigure itself when they change. Advanced uses take advantage of the consistency guarantees to implement database leader elections or do distributed locking across a cluster of workers.

          _The etcd Open Cloud Service is Public Alpha. The goal before Beta is to fully implement backup features._

          ### Reading and writing to etcd

          Communicate with etcd though its command line utility `etcdctl` or with the API using the automatically generated Kubernetes Service.

          [Read the complete guide to using the etcd Open Cloud Service](https://coreos.com/tectonic/docs/latest/alm/etcd-ocs.html)

          ### Supported Features
          **High availability**
          Multiple instances of etcd are networked together and secured. Individual failures or networking issues are transparently handled to keep your cluster up and running.
          **Automated updates**
          Rolling out a new etcd version works like all Kubernetes rolling updates. Simply declare the desired version, and the etcd service starts a safe rolling update to the new version automatically.
          **Backups included**
          Coming soon, the ability to schedule backups to happen on or off cluster.
        displayName: etcd
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - etcd
        - key value
        - database
        - coreos
        - open source
        links:
        - name: Blog
          url: https://coreos.com/etcd
        - name: Documentation
          url: https://coreos.com/operators/etcd/docs/latest/
        - name: etcd Operator Source Code
          url: https://github.com/coreos/etcd-operator
        maintainers:
        - email: support@coreos.com
          name: CoreOS, Inc
        maturity: alpha
        provider:
          name: CoreOS, Inc
        relatedImages:
        - quay.io/coreos/etcd-operator@sha256:bd944a211eaf8f31da5e6d69e8541e7cada8f16a9f7a5a570b22478997819943
        - quay.io/openshift-community-operators/etcd@sha256:e42581eacbc8349f40c6a4ed6d7d82d6168518e15b1a24cba36817205bd8688f
        version: 0.6.1
      entries:
      - name: etcdoperator.v0.6.1
        version: 0.6.1
      name: alpha
    - currentCSV: etcdoperator.v0.9.4-clusterwide
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdCluster",
                "metadata": {
                  "name": "example",
                  "annotations": {
                    "etcd.database.coreos.com/scope": "clusterwide"
                  }
                },
                "spec": {
                  "size": 3,
                  "version": "3.2.13"
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdRestore",
                "metadata": {
                  "name": "example-etcd-cluster-restore"
                },
                "spec": {
                  "etcdCluster": {
                    "name": "example-etcd-cluster"
                  },
                  "backupStorageType": "S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdBackup",
                "metadata": {
                  "name": "example-etcd-cluster-backup"
                },
                "spec": {
                  "etcdEndpoints": ["<etcd-cluster-endpoints>"],
                  "storageType":"S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
          createdAt: "2019-02-28 01:03:00"
          description: Create and maintain highly-available etcd clusters on Kubernetes
          repository: https://github.com/coreos/etcd-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a cluster of etcd nodes.
            displayName: etcd Cluster
            kind: EtcdCluster
            name: etcdclusters.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to backup an etcd cluster.
            displayName: etcd Backup
            kind: EtcdBackup
            name: etcdbackups.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to restore an etcd cluster from a backup.
            displayName: etcd Restore
            kind: EtcdRestore
            name: etcdrestores.etcd.database.coreos.com
            version: v1beta2
        description: |
          The etcd Operater creates and maintains highly-available etcd clusters on Kubernetes, allowing engineers to easily deploy and manage etcd clusters for their applications.

          etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. Itâ€™s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader.


          ### Reading and writing to etcd

          Communicate with etcd though its command line utility `etcdctl` via port forwarding:

              $ kubectl --namespace default port-forward service/example-client 2379:2379
              $ etcdctl --endpoints http://127.0.0.1:2379 get /

          Or directly to the API using the automatically generated Kubernetes Service:

              $ etcdctl --endpoints http://example-client.default.svc:2379 get /

          Be sure to secure your etcd cluster (see Common Configurations) before exposing it outside of the namespace or cluster.


          ### Supported Features

          * **High availability** - Multiple instances of etcd are networked together and secured. Individual failures or networking issues are transparently handled to keep your cluster up and running.

          * **Automated updates** - Rolling out a new etcd version works like all Kubernetes rolling updates. Simply declare the desired version, and the etcd service starts a safe rolling update to the new version automatically.

          * **Backups included** - Create etcd backups and restore them through the etcd Operator.

          ### Common Configurations

          * **Configure TLS** - Specify [static TLS certs](https://github.com/coreos/etcd-operator/blob/master/doc/user/cluster_tls.md) as Kubernetes secrets.

          * **Set Node Selector and Affinity** - [Spread your etcd Pods](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-node-selector-and-anti-affinity-across-nodes) across Nodes and availability zones.

          * **Set Resource Limits** - [Set the Kubernetes limit and request](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-resource-requirement) values for your etcd Pods.

          * **Customize Storage** - [Set a custom StorageClass](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#custom-persistentvolumeclaim-definition) that you would like to use.
        displayName: etcd
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - etcd
        - key value
        - database
        - coreos
        - open source
        links:
        - name: Blog
          url: https://coreos.com/etcd
        - name: Documentation
          url: https://coreos.com/operators/etcd/docs/latest/
        - name: etcd Operator Source Code
          url: https://github.com/coreos/etcd-operator
        maintainers:
        - email: etcd-dev@googlegroups.com
          name: etcd Community
        maturity: alpha
        provider:
          name: CNCF
        relatedImages:
        - quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
        - quay.io/openshift-community-operators/etcd@sha256:1d308347e5e290ac4bb7dd7aab0a1c0659d661153541d81dd30733b52d1fbf83
        version: 0.9.4-clusterwide
      entries:
      - name: etcdoperator.v0.9.4-clusterwide
        version: 0.9.4-clusterwide
      - name: etcdoperator.v0.9.2-clusterwide
        version: 0.9.2-clusterwide
      - name: etcdoperator.v0.9.0
        version: 0.9.0
      name: clusterwide-alpha
    - currentCSV: etcdoperator.v0.9.4
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "size": 3,
                  "version": "3.2.13"
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdRestore",
                "metadata": {
                  "name": "example-etcd-cluster-restore"
                },
                "spec": {
                  "etcdCluster": {
                    "name": "example-etcd-cluster"
                  },
                  "backupStorageType": "S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              },
              {
                "apiVersion": "etcd.database.coreos.com/v1beta2",
                "kind": "EtcdBackup",
                "metadata": {
                  "name": "example-etcd-cluster-backup"
                },
                "spec": {
                  "etcdEndpoints": ["<etcd-cluster-endpoints>"],
                  "storageType":"S3",
                  "s3": {
                    "path": "<full-s3-path>",
                    "awsSecret": "<aws-secret>"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
          createdAt: "2019-02-28 01:03:00"
          description: Create and maintain highly-available etcd clusters on Kubernetes
          repository: https://github.com/coreos/etcd-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a cluster of etcd nodes.
            displayName: etcd Cluster
            kind: EtcdCluster
            name: etcdclusters.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to backup an etcd cluster.
            displayName: etcd Backup
            kind: EtcdBackup
            name: etcdbackups.etcd.database.coreos.com
            version: v1beta2
          - description: Represents the intent to restore an etcd cluster from a backup.
            displayName: etcd Restore
            kind: EtcdRestore
            name: etcdrestores.etcd.database.coreos.com
            version: v1beta2
        description: |
          The etcd Operater creates and maintains highly-available etcd clusters on Kubernetes, allowing engineers to easily deploy and manage etcd clusters for their applications.

          etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. Itâ€™s open-source and available on GitHub. etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader.


          ### Reading and writing to etcd

          Communicate with etcd though its command line utility `etcdctl` via port forwarding:

              $ kubectl --namespace default port-forward service/example-client 2379:2379
              $ etcdctl --endpoints http://127.0.0.1:2379 get /

          Or directly to the API using the automatically generated Kubernetes Service:

              $ etcdctl --endpoints http://example-client.default.svc:2379 get /

          Be sure to secure your etcd cluster (see Common Configurations) before exposing it outside of the namespace or cluster.


          ### Supported Features

          * **High availability** - Multiple instances of etcd are networked together and secured. Individual failures or networking issues are transparently handled to keep your cluster up and running.

          * **Automated updates** - Rolling out a new etcd version works like all Kubernetes rolling updates. Simply declare the desired version, and the etcd service starts a safe rolling update to the new version automatically.

          * **Backups included** - Create etcd backups and restore them through the etcd Operator.

          ### Common Configurations

          * **Configure TLS** - Specify [static TLS certs](https://github.com/coreos/etcd-operator/blob/master/doc/user/cluster_tls.md) as Kubernetes secrets.

          * **Set Node Selector and Affinity** - [Spread your etcd Pods](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-node-selector-and-anti-affinity-across-nodes) across Nodes and availability zones.

          * **Set Resource Limits** - [Set the Kubernetes limit and request](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-member-cluster-with-resource-requirement) values for your etcd Pods.

          * **Customize Storage** - [Set a custom StorageClass](https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#custom-persistentvolumeclaim-definition) that you would like to use.
        displayName: etcd
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - etcd
        - key value
        - database
        - coreos
        - open source
        links:
        - name: Blog
          url: https://coreos.com/etcd
        - name: Documentation
          url: https://coreos.com/operators/etcd/docs/latest/
        - name: etcd Operator Source Code
          url: https://github.com/coreos/etcd-operator
        maintainers:
        - email: etcd-dev@googlegroups.com
          name: etcd Community
        maturity: alpha
        provider:
          name: CNCF
        relatedImages:
        - quay.io/openshift-community-operators/etcd@sha256:f1757deff8c4048ae42cb033f3ddd7686dec2968e5a4cd61ff8f74fda69a8a09
        - quay.io/coreos/etcd-operator@sha256:66a37fd61a06a43969854ee6d3e21087a98b93838e284a6086b13917f96b0d9b
        version: 0.9.4
      entries:
      - name: etcdoperator.v0.9.4
        version: 0.9.4
      - name: etcdoperator.v0.9.2
        version: 0.9.2
      - name: etcdoperator.v0.9.0
        version: 0.9.0
      name: singlenamespace-alpha
    defaultChannel: singlenamespace-alpha
    packageName: etcd
    provider:
      name: CNCF
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cluster-observability-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-observability-operator.v1.3.1
      currentCSVDesc:
        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:2ecf763b02048d2cf4c17967a7b2cacc7afd6af0e963a39579d876f8f4170e3c
          createdAt: "2025-12-05T12:43:59Z"
          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.skipRange: '>=..0 <1.3.1'
          operatorframework.io/cluster-monitoring: "true"
          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/)
        apiservicedefinitions: {}
        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
          - description: Provides end-to-end observability capabilities with minimal
              configuration. Simplifies deployment and management of observability
              components such as tracing.
            displayName: Observability Installer
            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
        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:
        - registry.redhat.io/cluster-observability-operator/korrel8r-rhel9@sha256:e65c37f04f6d76a0cbfe05edb3cddf6a8f14f859ee35cf3aebea8fcb991d2c19
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-rhel9@sha256:21d4fff670893ba4b7fbc528cd49f8b71c8281cede9ef84f0697065bb6a7fc50
        - registry.redhat.io/cluster-observability-operator/troubleshooting-panel-console-plugin-rhel9@sha256:b4a6eb1cc118a4334b424614959d8b7f361ddd779b3a72690ca49b0a3f26d9b8
        - registry.redhat.io/cluster-observability-operator/cluster-observability-operator-bundle@sha256:a3b8e1f3f8d154095f365ccbb163f2cf3852d6091b1f74773a8b5a2ee5c1cee6
        - registry.redhat.io/cluster-observability-operator/cluster-health-analyzer-rhel9@sha256:48e4e178c6eeaa9d5dd77a591c185a311b4b4a5caadb7199d48463123e31dc9e
        - registry.redhat.io/cluster-observability-operator/perses-rhel9@sha256:e797cdb47beef40b04da7b6d645bca3dc32e6247003c45b56b38efd9e13bf01c
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf4-rhel9@sha256:dc18c8d6a4a9a0a574a57cc5082c8a9b26023bd6d69b9732892d584c1dfe5070
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e7e5f4c5e8ab0ba298ef0295a7137d438a42eb177d9322212cde6ba8f367912a
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-rhel9@sha256:7d662a120305e2528acc7e9142b770b5b6a7f4932ddfcadfa4ac953935124895
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-rhel9@sha256:369729978cecdc13c99ef3d179f8eb8a450a4a0cb70b63c27a55a15d1710ba27
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-prometheus-config-reloader-rhel9@sha256:9a2097bc5b2e02bc1703f64c452ce8fe4bc6775b732db930ff4770b76ae4653a
        - registry.redhat.io/cluster-observability-operator/cluster-observability-rhel9-operator@sha256:2ecf763b02048d2cf4c17967a7b2cacc7afd6af0e963a39579d876f8f4170e3c
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-operator-admission-webhook-rhel9@sha256:42ebc3571195d8c41fd01b8d08e98fe2cc12c1caabea251aecb4442d8eade4ea
        - registry.redhat.io/cluster-observability-operator/prometheus-rhel9@sha256:1b555e21bba7c609111ace4380382a696d9aceeb6e9816bf9023b8f689b6c741
        - registry.redhat.io/cluster-observability-operator/thanos-rhel9@sha256:a223bab813b82d698992490bbb60927f6288a83ba52d539836c250e1471f6d34
        - registry.redhat.io/cluster-observability-operator/monitoring-console-plugin-pf5-rhel9@sha256:12d9dbe297a1c3b9df671f21156992082bc483887d851fafe76e5d17321ff474
        - registry.redhat.io/cluster-observability-operator/alertmanager-rhel9@sha256:dc62889b883f597de91b5389cc52c84c607247d49a807693be2f688e4703dfc3
        - registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf5-rhel9@sha256:75465aabb0aa427a5c531a8fcde463f6d119afbcc618ebcbf6b7ee9bc8aad160
        - registry.redhat.io/cluster-observability-operator/logging-console-plugin-pf4-rhel9@sha256:d8c7a61d147f62b204d5c5f16864386025393453c9a81ea327bbd25d7765d611
        - registry.redhat.io/cluster-observability-operator/perses-rhel9-operator@sha256:b5c8526d2ae660fe092dd8a7acf18ec4957d5c265890a222f55396fc2cdaeed8
        - registry.redhat.io/cluster-observability-operator/dashboards-console-plugin-rhel9@sha256:093d2731ac848ed5fd57356b155a19d3bf7b8db96d95b09c5d0095e143f7254f
        version: 1.3.1
      entries:
      - name: cluster-observability-operator.v1.3.1
        version: 1.3.1
      - name: cluster-observability-operator.v1.3.0
        version: 1.3.0
      - name: cluster-observability-operator.v1.2.2
        version: 1.2.2
      - name: cluster-observability-operator.v1.2.1
        version: 1.2.1
      - name: cluster-observability-operator.v1.2.0
        version: 1.2.0
      - name: cluster-observability-operator.v1.1.1
        version: 1.1.1
      - name: cluster-observability-operator.v1.1.0
        version: 1.1.0
      - name: cluster-observability-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: cluster-observability-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: multicluster-engine
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-engine.v2.10.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "multicluster.openshift.io/v1", "kind": "MultiClusterEngine",
            "metadata": {"name": "multiclusterengine"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-12-01T19:26:35Z"
          description: Foundational components for central management of multiple
            OpenShift Container Platform and Kubernetes clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=2.8.0 <2.10.0'
          operatorframework.io/initialization-resource: '{"apiVersion":"multicluster.openshift.io/v1",
            "kind":"MultiClusterEngine","metadata":{"name":"engine"},"spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-engine
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:50eb7b0039c66db781d3905d3d24bcaca9ebe0ab07bdca1bc7bb0c406fb01d8a
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/open-cluster-management/backplane-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MultiClusterEngine defines the configuration for an instance
              of a multicluster engine, a central point providing the foundational components for managing multiple Kubernetes-based clusters. The deployment of the multicluster engine components is
              determined based on the configuration that is defined in this resource.
            displayName: MultiCluster Engine
            kind: MultiClusterEngine
            name: multiclusterengines.multicluster.openshift.io
            version: v1
        description: "Multicluster engine for Kubernetes provides the foundational
          components that are necessary for the centralized management of multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the engine to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can use the APIs that are provided by
          the engine to distribute configuration based on placement policy. Placement
          policy is a significant part of creating sophisticated multicluster management
          applications because you can select the applicable clusters.\n## Installing\nInstall
          the multicluster engine for Kubernetes operator by following instructions
          that display when you click the `Install` button. After installing the operator,
          create an instance of the `MultiClusterEngine` resource to install the engine
          components that provide the management APIs. Note: If you are using the
          engine to manage non-OpenShift Container Platform 4.x clusters, you need
          to create a Kubernetes `Secret` resource that contains your OpenShift Container
          Platform pull secret. Specify this `Secret` in the `MultiClusterEngine`
          resource, as described in the install documentation.\nYou can find additional
          installation guidance in the [documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/clusters/cluster_mce_overview#mce-install-intro). "
        displayName: multicluster engine for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mce
        - multicluster-engine
        - multiclusterengine
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/clusters/index
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/multicluster-engine/cluster-api-provider-kubevirt-rhel9@sha256:9cee55eaa91e073f07000da0db87fcca4f34af6faef16aac79415197c3026e67
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:1cceec46246ea7bef481549dce1ce91880d19a5650c9a6bc0f71f0d4092a6f95
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:762ae8d88d1b9e764adf84d5eaa964e691acbebaabf174ab0111a39b24256aff
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:ac1c6821b6bf2062144f8fc38256e97c16a55019efdff6bc0f2469899508521e
        - registry.redhat.io/multicluster-engine/assisted-installer-rhel9@sha256:aff2c378cd0a3ba36b13572a4749a54836369bcf6814b8423793bb56178b974b
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:d0d9f66e1135e46889d9148a78704a0062baf69c4690c85da37588ccfe4e23dc
        - registry.redhat.io/multicluster-engine/managedcluster-import-controller-rhel9@sha256:a4f11ed7ca7a36516a88d9e179f654174b4654d71b67f2de3255a95f9929a452
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:9b4294ee810cd554905c72fd080c3ead28a82dda81e01210552012e4a8f7dc5c
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:7b3d109adb86a87475afbb76faef4a4131f78ad092d4aa541e1c59bae611acbe
        - registry.redhat.io/rhel8/postgresql-12@sha256:3a187fc5e6c73bdfc63661b98c05b39ee4d0b3a0e1a210c49d188f1004bcb274
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:4de9442def18fff03515edcce7d4c60a756f3b2c225f8931a8ddd254d70b220d
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:78fbb9cbf3a7323a1d235e33323033957ae9e610bd0e26c493b407cfbadde258
        - registry.redhat.io/multicluster-engine/assisted-image-service-rhel9@sha256:6082629342c13caf33bde021724f5d2b9c400f838b74285a3c2d99d68a03b26c
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:d38a886f70d079eed24b9fb57030f535e37524d6f7baf6b1022be1c07cc32ab7
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:262db9468caefa25b66176fb3492c5b310c249ee1035d866b6a1faca30318ae9
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:0b9dbc00f7f579c37197ed3c5fad6e1420034f38418c21a6d83e57761763e715
        - registry.redhat.io/multicluster-engine/hypershift-addon-rhel9-operator@sha256:2b725421986812ce501db94fe0ae5df6ae3e2a8bb31be6aebe24e85cd1ac4703
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:7a0b186fbdb169ba82e3ff4a0beb8a3ac2d1ee555bd37182ee9d92a945093b66
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:20776e91176dd86feb16fb24ebcb087cea368f5778573edbc39df47a1dcbe5af
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:dd7c28e8901e1804e4832b2d3437bf8bc0e4bf7a388a94e6b9e0df07f6eee10f
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:77834bc71542f6c87c1e39c82513bd9c2007017cc4866a2d51be7694a198c950
        - registry.redhat.io/multicluster-engine/clusterlifecycle-state-metrics-rhel9@sha256:d91a68077b6cb5bc2d09cedf5aebb61dd3baae3afdb3291131f579ace7ea813e
        - registry.redhat.io/multicluster-engine/registration-rhel9@sha256:f8c7c001b14cae99e47b3b9e27707200ab17de6cac1f54927056907f068cd03a
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:1b5f810b07f1830f4b71a9c384465806ea74e264770a90cd92cadd53c7d7e1b9
        - registry.redhat.io/multicluster-engine/addon-manager-rhel9@sha256:88be52d369e7862c378fa2c6bb0b5f7801bb68d773744935816411e549d51112
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:eee2a6b322f695529d9953d06ab021f0ea0d69b9a2a2f7c3299b0ede8106c102
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:45217815cc0f2bc24d5b7ac07019af9a0ccb13f8cda14713422b8b699f3723e9
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:243858bae64bf199c479086f71c222b096555339c3461d7d1bfd47cf4e43df14
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:50eb7b0039c66db781d3905d3d24bcaca9ebe0ab07bdca1bc7bb0c406fb01d8a
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:38f65ed06100af8f55530fd79ed5064f3839863caec0f610385abeea0e3c1efb
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:bcaded7338e5171707c02a04216fa1bbaa5b57c8da9af0df91347ad6d84e0d9a
        - registry.redhat.io/multicluster-engine/cluster-api-provider-aws-rhel9@sha256:1e2fe8b42665e7bfc7938ea23a0a8efdb98a6825238f6fc90993926cd8d2317b
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:17a2e3c30f2a59f402723dc553564ec1289b6e2bbcedb9cc353285de9f5e42f4
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:b689ee70b715a65b664a2e31b5ac3b1a70d6a7d2abff28e99013094468c2e32f
        - registry.redhat.io/multicluster-engine/work-rhel9@sha256:753458389b93e2dc76f7d8766345f7bdfb3c3ba23d76e938b04e724418981e73
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:43ed1820a27580f8fa9c80d53590d2b5cd049c925cb57c8c396512bddeed3332
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:5bf1563d90623b6f224278f58ceb79ed7877d88eb3af50826fe8588735535efa
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:db28620adb4c59bc9811dcd5d0a743ce534f24e40165f84af7044a5b9d04b76a
        - registry.redhat.io/multicluster-engine/capoa-bootstrap-rhel9@sha256:1ccf3b85dde18875aa1b98797d4477c7fe725725c5b6d91b4ed21e3e3249ec36
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:e399861c4ecf3c1910dfc7e2da2b234bdc1ae1aba3a006f28285756edb2c9b2f
        version: 2.10.0
      entries:
      - name: multicluster-engine.v2.10.0
        version: 2.10.0
      name: stable-2.10
    - currentCSV: multicluster-engine.v2.9.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "multicluster.openshift.io/v1", "kind": "MultiClusterEngine",
            "metadata": {"name": "multiclusterengine"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-10-30T12:42:03Z"
          description: Foundational components for central management of multiple
            OpenShift Container Platform and Kubernetes clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.8.0 <2.9.1'
          operatorframework.io/initialization-resource: '{"apiVersion":"multicluster.openshift.io/v1",
            "kind":"MultiClusterEngine","metadata":{"name":"engine"},"spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-engine
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:a990e85f8f59435ee886d1176fdd570559036b2597d2cde523c3bb31178bc5ee
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/open-cluster-management/backplane-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MultiClusterEngine defines the configuration for an instance
              of a multicluster engine, a central point providing the foundational components for managing multiple Kubernetes-based clusters. The deployment of the multicluster engine components is
              determined based on the configuration that is defined in this resource.
            displayName: MultiCluster Engine
            kind: MultiClusterEngine
            name: multiclusterengines.multicluster.openshift.io
            version: v1
        description: "Multicluster engine for Kubernetes provides the foundational
          components that are necessary for the centralized management of multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the engine to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can use the APIs that are provided by
          the engine to distribute configuration based on placement policy. Placement
          policy is a significant part of creating sophisticated multicluster management
          applications because you can select the applicable clusters.\n## Installing\nInstall
          the multicluster engine for Kubernetes operator by following instructions
          that display when you click the `Install` button. After installing the operator,
          create an instance of the `MultiClusterEngine` resource to install the engine
          components that provide the management APIs. Note: If you are using the
          engine to manage non-OpenShift Container Platform 4.x clusters, you need
          to create a Kubernetes `Secret` resource that contains your OpenShift Container
          Platform pull secret. Specify this `Secret` in the `MultiClusterEngine`
          resource, as described in the install documentation.\nYou can find additional
          installation guidance in the [documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/clusters/cluster_mce_overview#mce-install-intro). "
        displayName: multicluster engine for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mce
        - multicluster-engine
        - multiclusterengine
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/clusters/index
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/multicluster-engine/mce-operator-bundle@sha256:34714647e5ae36f266b3d68b56abbd0a79c8f4e05c4c9076cd0f76dad243763d
        - registry.redhat.io/multicluster-engine/image-based-install-rhel9@sha256:52faed21cd40448dd4260909e2de026155afc207f1ee26b396a75b6099830525
        - registry.redhat.io/multicluster-engine/clusterclaims-controller-rhel9@sha256:f4c21f87dd7b725f472f51829bbc40261788e0f64c391ab136a3d6d8d9235872
        - registry.redhat.io/multicluster-engine/registration-operator-rhel9@sha256:358e8a39385d43077c2464d1cf037e3358c8eeb7e84958671acb1e996f070d25
        - registry.redhat.io/multicluster-engine/assisted-service-8-rhel8@sha256:03446585c076f6f9983dd336e1ee47c3955830b94a5e81c5c256d627ba675030
        - registry.redhat.io/multicluster-engine/kube-rbac-proxy-mce-rhel9@sha256:cd9f96afaa76332885dd7762906681e32ee7ae8ab268e036b0f9874a10a99d57
        - registry.redhat.io/multicluster-engine/managed-serviceaccount-rhel9@sha256:eee3c75b6eee3f1c0374cbbeff415ba8e28b9556edbc76d2bb01a10246c3bc6c
        - registry.redhat.io/openshift4/ose-baremetal-cluster-api-controllers-rhel9@sha256:462fd64a59c1915d91d628af10415107b7ab4b03ac322a4c77687064e5f89421
        - registry.redhat.io/multicluster-engine/assisted-image-service-rhel9@sha256:86859614fae3d7f6dccc051ce90b055d1b4b6f313d9b85187bb6dc06e9d59ae2
        - registry.redhat.io/multicluster-engine/cluster-image-set-controller-rhel9@sha256:083fbf9b0eb35119bb95652e3f8cc3f38f2ab66b38811f36938d19efb0f09456
        - registry.redhat.io/multicluster-engine/cluster-proxy-rhel9@sha256:92bb8f1e74ca9d0938d92f84f85ca047e8abc6be6df54eb6d8cd506f9393f6ba
        - registry.redhat.io/multicluster-engine/backplane-rhel9-operator@sha256:ef9d311b1f5b5b386a6fc224c0fbdd8794c0ccb4e6bff11939c8332f48da8fe9
        - registry.redhat.io/multicluster-engine/registration-rhel9@sha256:b583869a3c3383670427be20a3b01fa5eba42c09fae0c8401063b0461831277c
        - registry.redhat.io/multicluster-engine/discovery-rhel9@sha256:03466cbe5b770e1e7b124109dac09840cdc6ed1bec56de9b42dc7cb8278d7f0d
        - registry.redhat.io/multicluster-engine/capoa-bootstrap-rhel9@sha256:951773131a05b2eb4a39ccf568b23cb633c926546e43227d5f715e73441b0b89
        - registry.redhat.io/multicluster-engine/multicloud-manager-rhel9@sha256:e9f7e03889d1151381a65cc41a3fc24e97b7e0169c43c91bb8dff54a6fa7e837
        - registry.redhat.io/rhel8/postgresql-12@sha256:af1ab437b165fa4ee9dfd6ade637d7de5fa556d0b3851fb8edc78afe0e6fa95e
        - registry.redhat.io/multicluster-engine/placement-rhel9@sha256:61856d12d173d98c9cfa6596cc9b19be38e8f789712dd742dfa613a1d585f53b
        - registry.redhat.io/multicluster-engine/cluster-api-provider-agent-rhel9@sha256:eb2d84f5038c12c558bbfbc9441c18337051d0ab64264a0574232546fb9fea33
        - registry.redhat.io/multicluster-engine/cluster-api-provider-kubevirt-rhel9@sha256:929bff9558142caae866726792d7406cdfda8c343d88ede0fa5e0054433ccb27
        - registry.redhat.io/multicluster-engine/hypershift-addon-rhel9-operator@sha256:ca2178056cfc338e309462fdd7aa811a653a9513d24959fe0842f56e83c371b0
        - registry.redhat.io/multicluster-engine/assisted-installer-agent-rhel9@sha256:f626f057664e3408ea5fd778e3d2a4e80735ba858d76749a1a2056c65face4ec
        - registry.redhat.io/openshift4/ose-aws-cluster-api-controllers-rhel9@sha256:2f3b87c980d89161d93ba27ae379537ca9b603aed6de7b03e1720885231fe519
        - registry.redhat.io/multicluster-engine/hypershift-cli-rhel9@sha256:05b87e707d6e0b2fc4cea9a22ed5b0c23cab8a38ee4cc9e8e5b9f4059e7b2dc0
        - registry.redhat.io/multicluster-engine/hive-rhel9@sha256:55388553b68ad695bbde73addc43a68fc4523c4477f979ee1e8103b79dbe0bea
        - registry.redhat.io/multicluster-engine/addon-manager-rhel9@sha256:b622c7a3e14a3d80b01c66fffaf5fee108767fef90976d7ae981d79bfdd1bdf0
        - registry.redhat.io/multicluster-engine/provider-credential-controller-rhel9@sha256:e9b9e2dba46fdced4d9276082956b34f1223dfaf7f6da600efeee5a42317754e
        - registry.redhat.io/multicluster-engine/clusterlifecycle-state-metrics-rhel9@sha256:6028387bdc2e8cb2cc62a22ff242d4c4315ccae94fd93fa9ffd7585b1bb324f2
        - registry.redhat.io/multicluster-engine/managedcluster-import-controller-rhel9@sha256:017152eb0d925805bf2e1ff4e7964935aeb5d25b31db47b26ea1062d7ccc73ca
        - registry.redhat.io/multicluster-engine/work-rhel9@sha256:b1614c7ff4d7b125cac315b459aa819a7f7918f70aeb2f6d6f6c4c17791ca600
        - registry.redhat.io/multicluster-engine/assisted-service-9-rhel9@sha256:5b4a878a07934ed035dae0ab1b86eff1166124565226af5739dd8aa16ba90d50
        - registry.redhat.io/multicluster-engine/cluster-proxy-addon-rhel9@sha256:e97bb0c19ad0075422f4afadf82e3a5d6bfa24bdcf484777486d0d52c9f294b2
        - registry.redhat.io/multicluster-engine/cluster-curator-controller-rhel9@sha256:147e0635014afe58dd58af3d006095c8069e4746fd753349378435363add304a
        - registry.redhat.io/multicluster-engine/console-mce-rhel9@sha256:9556277ac54246d8132dc08c8854992b5c478706ad483e1bf2e16c5e2aa04a04
        - registry.redhat.io/multicluster-engine/assisted-installer-rhel9@sha256:9520707d782b393e2e34061c18b269a1b610143d8b06739984776101b08db322
        - registry.redhat.io/multicluster-engine/mce-capi-webhook-config-rhel9@sha256:878fb0eb1102cdefdfd7d266869a0a8f7cb19a1b8f0e5741f75755334e67c887
        - registry.redhat.io/multicluster-engine/capoa-control-plane-rhel9@sha256:7c9fc8014eacde9e9e598823815acd4ea61d5128a84c79bce914fe77ae276aef
        - registry.redhat.io/multicluster-engine/must-gather-rhel9@sha256:a990e85f8f59435ee886d1176fdd570559036b2597d2cde523c3bb31178bc5ee
        - registry.redhat.io/openshift4/ose-cluster-api-rhel9@sha256:0f813721abc29eb84b94b9ec6abbffa64d984bd7b5b76a810ef454a70da8ec93
        - registry.redhat.io/multicluster-engine/assisted-installer-controller-rhel9@sha256:9734a109c7be60f5871132379e8c88c0f92a9a991943de317040ad8550637477
        - registry.redhat.io/multicluster-engine/hypershift-rhel9-operator@sha256:d90b77447584cc5e03ea8a7d732a57ffcb09a4d0a0231ec41ff5a67e96a42273
        version: 2.9.1
      entries:
      - name: multicluster-engine.v2.9.1
        version: 2.9.1
      - name: multicluster-engine.v2.9.0
        version: 2.9.0
      name: stable-2.9
    defaultChannel: stable-2.10
    packageName: multicluster-engine
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: 3scale-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: 3scale-community-operator.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/3scale-operator:v0.8.2
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |
          The 3scale community Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          3scale API Management makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/3scale-operator/blob/v0.8.2/doc/operator-user-guide.md).

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Improving [documentation](https://github.com/3scale/3scale-operator/blob/v0.8.2/doc/operator-user-guide.md)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: 3scale API Management
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://github.com/3scale/3scale-operator/blob/v0.8.2/doc/operator-user-guide.md
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/3scale-operator:v0.8.2
        - quay.io/openshift-community-operators/3scale-community-operator@sha256:8197e4a96ac8949d43cda62ac2257a9b1e71f0b54f42283ee4925f88c369f873
        version: 0.8.2
      entries:
      - name: 3scale-community-operator.v0.8.2
        version: 0.8.2
      name: threescale-2.11
    - currentCSV: 3scale-community-operator.v0.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/3scale-operator:v0.9.0
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |
          The 3scale community Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          3scale API Management makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/3scale-operator/blob/v0.9.0/doc/operator-user-guide.md).

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: 3scale API Management
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://github.com/3scale/3scale-operator/blob/v0.9.0/doc/operator-user-guide.md
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/3scale-operator:v0.9.0
        - quay.io/openshift-community-operators/3scale-community-operator@sha256:728074151b245f5e0d65bd8956149f05ba22a1b6438120ebca2d85b0d7d0c837
        version: 0.9.0
      entries:
      - name: 3scale-community-operator.v0.9.0
        version: 0.9.0
      - name: 3scale-community-operator.v0.8.2
        version: 0.8.2
      name: threescale-2.12
    - currentCSV: 3scale-community-operator.v0.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManager",
                "metadata": {
                  "name": "apimanager-sample"
                },
                "spec": {
                  "wildcardDomain": "example.com"
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerBackup",
                "metadata": {
                  "name": "apimanagerbackup-sample"
                },
                "spec": {
                  "backupDestination": {
                    "persistentVolumeClaim": {
                      "volumeName": "mypreexistingvolume"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIManagerRestore",
                "metadata": {
                  "name": "apimanagerrestore-sample"
                },
                "spec": {
                  "restoreSource": {
                    "persistentVolumeClaim": {
                      "claimSource": {
                        "claimName": "mybackeduppvc"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1alpha1",
                "kind": "Tenant",
                "metadata": {
                  "name": "tenant-sample"
                },
                "spec": {
                  "email": "admin@example.com",
                  "masterCredentialsRef": {
                    "name": "system-seed"
                  },
                  "organizationName": "Example.com",
                  "passwordCredentialsRef": {
                    "name": "ecorp-admin-secret"
                  },
                  "systemMasterUrl": "https://master.example.com",
                  "tenantSecretRef": {
                    "name": "ecorp-tenant-secret",
                    "namespace": "operator-test"
                  },
                  "username": "admin"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ActiveDoc",
                "metadata": {
                  "name": "activedoc-from-url"
                },
                "spec": {
                  "activeDocOpenAPIRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.json"
                  },
                  "name": "Operated ActiveDoc From URL"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Backend",
                "metadata": {
                  "name": "backend1-sample"
                },
                "spec": {
                  "name": "Operated Backend 1",
                  "privateBaseURL": "https://api.example.com",
                  "systemName": "backend1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "CustomPolicyDefinition",
                "metadata": {
                  "name": "custompolicydefinition-sample"
                },
                "spec": {
                  "name": "MyCustomPolicy",
                  "schema": {
                    "$schema": "http://json-schema.org/draft-07/schema#",
                    "configuration": {
                      "properties": {
                        "someAttr": {
                          "description": "Some attribute",
                          "type": "integer"
                        }
                      },
                      "type": "object"
                    },
                    "name": "MyCustomPolicy",
                    "summary": "some summary",
                    "version": "0.0.1"
                  },
                  "version": "0.0.1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperAccount",
                "metadata": {
                  "name": "developeraccount-simple-sample"
                },
                "spec": {
                  "orgName": "Ecorp"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "DeveloperUser",
                "metadata": {
                  "name": "developeruser-admin-sample"
                },
                "spec": {
                  "developerAccountRef": {
                    "name": "developeraccount1"
                  },
                  "email": "myusername2@example.com",
                  "passwordCredentialsRef": {
                    "name": "mysecret"
                  },
                  "role": "admin",
                  "username": "myusername2"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "OpenAPI",
                "metadata": {
                  "name": "openapi-from-url"
                },
                "spec": {
                  "openapiRef": {
                    "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
                  }
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "Product",
                "metadata": {
                  "name": "product1-sample"
                },
                "spec": {
                  "name": "OperatedProduct 1"
                }
              },
              {
                "apiVersion": "capabilities.3scale.net/v1beta1",
                "kind": "ProxyConfigPromote",
                "metadata": {
                  "name": "proxyconfigpromote-sample"
                },
                "spec": {
                  "ProductCRName": "product1-sample",
                  "Production": true
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/3scale-operator:v0.10.1
          createdAt: "2019-05-30T22:40:00Z"
          description: 3scale Operator to provision 3scale and publish/manage API
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/3scale-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActiveDoc is the Schema for the activedocs API
            displayName: Active Doc
            kind: ActiveDoc
            name: activedocs.capabilities.3scale.net
            version: v1beta1
          - description: APIManagerBackup represents an APIManager backup
            displayName: APIManagerBackup
            kind: APIManagerBackup
            name: apimanagerbackups.apps.3scale.net
            version: v1alpha1
          - description: APIManagerRestore represents an APIManager restore
            displayName: APIManagerRestore
            kind: APIManagerRestore
            name: apimanagerrestores.apps.3scale.net
            version: v1alpha1
          - description: APIManager is the Schema for the apimanagers API
            displayName: APIManager
            kind: APIManager
            name: apimanagers.apps.3scale.net
            version: v1alpha1
          - description: Backend is the Schema for the backends API
            displayName: 3scale Backend
            kind: Backend
            name: backends.capabilities.3scale.net
            version: v1beta1
          - description: CustomPolicyDefinition is the Schema for the custompolicydefinitions
              API
            displayName: Custom Policy Definition
            kind: CustomPolicyDefinition
            name: custompolicydefinitions.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperAccount is the Schema for the developeraccounts
              API
            displayName: Developer Account
            kind: DeveloperAccount
            name: developeraccounts.capabilities.3scale.net
            version: v1beta1
          - description: DeveloperUser is the Schema for the developerusers API
            displayName: Developer User
            kind: DeveloperUser
            name: developerusers.capabilities.3scale.net
            version: v1beta1
          - description: OpenAPI is the Schema for the openapis API
            displayName: Open API
            kind: OpenAPI
            name: openapis.capabilities.3scale.net
            version: v1beta1
          - description: Product is the Schema for the products API
            displayName: 3scale Product
            kind: Product
            name: products.capabilities.3scale.net
            version: v1beta1
          - description: ProxyConfigPromote is the Schema for the proxyconfigpromotes
              API
            displayName: Proxy Config Promote
            kind: ProxyConfigPromote
            name: proxyconfigpromotes.capabilities.3scale.net
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.capabilities.3scale.net
            version: v1alpha1
        description: |
          The 3scale community Operator creates and maintains the Red Hat 3scale API Management on [OpenShift](https://www.openshift.com/) in various deployment configurations.

          3scale API Management makes it easy to manage your APIs.
          Share, secure, distribute, control, and monetize your APIs on an infrastructure platform built for performance, customer control, and future growth.

          ### Supported Features
          * **Installer** A way to install a 3scale API Management solution, providing configurability options at the time of installation
          * **Upgrade** Upgrade from previously installed 3scale API Management solution
          * **Reconcilliation** Tunable CRD parameters after 3scale API Management solution is installed
          * **Capabilities** Ability to define 3scale API definitions and set them into a 3scale API Management solution

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/3scale-operator/blob/v0.10.1/doc/operator-user-guide.md).

          ### Getting help
          If you encounter any issues while using 3scale operator, you can create an issue on our [Github repo](https://github.com/3scale/3scale-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using 3scale Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/3scale-operator/pulls)
          * Improving [documentation](https://github.com/3scale/3scale-operator/blob/master/doc/operator-user-guide.md)
          * Talking about 3scale Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/3scale-operator/issues).

          ### License
          3scale Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/3scale-operator/blob/master/LICENSE)
        displayName: 3scale API Management
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        links:
        - name: GitHub
          url: https://github.com/3scale/3scale-operator
        - name: Documentation
          url: https://github.com/3scale/3scale-operator/blob/v0.10.1/doc/operator-user-guide.md
        maintainers:
        - email: eastizle+3scaleoperator@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mstoklus@redhat.com
          name: Michal Stokluska
        - email: aucunnin@redhat.com
          name: Austin Cunningham
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/3scale-operator:v0.10.1
        - quay.io/openshift-community-operators/3scale-community-operator@sha256:4109698147632b858fe2787964772a1339cdebee72b75b42d9b1c5dbbbecb45c
        version: 0.10.1
      entries:
      - name: 3scale-community-operator.v0.10.1
        version: 0.10.1
      - name: 3scale-community-operator.v0.9.0
        version: 0.9.0
      - name: 3scale-community-operator.v0.8.2
        version: 0.8.2
      name: threescale-2.13
    defaultChannel: threescale-2.13
    packageName: 3scale-community-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: kiali-ossm
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kiali-operator.v2.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "Kiali",
                "metadata": {
                  "name": "kiali"
                },
                "spec": {
                  "version": "default",
                  "istio_namespace": "istio-system",
                  "deployment": {
                    "logger": {
                      "log_level": "info"
                    },
                    "view_only_mode": false
                  }
                }
              },
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "OSSMConsole",
                "metadata": {
                  "name": "ossmconsole"
                },
                "spec": {
                  "version": "default",
                  "kiali": {
                    "serviceName": "",
                    "serviceNamespace": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh-tech-preview/kiali-rhel9-operator@sha256:0612dfa52f2bf39a1d87e640409313585fedc7cfcff6d00e77bb14809d27d646
          createdAt: "2024-12-12T10:44:15Z"
          description: This productized operator provides Kiali and OSSMC. Kiali is
            the Istio observability and management Console. OSSMC is the OpenShift
            Service Mesh Console plugin, powered by Kiali.
          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: "true"
          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.skipRange: '>=1.0.0 <2.1.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/kiali/kiali
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A configuration file for a Kiali installation.
            displayName: Kiali
            kind: Kiali
            name: kialis.kiali.io
            version: v1alpha1
          - description: A configuration file for a OpenShift Service Mesh Console
              installation.
            displayName: OpenShift Service Mesh Console
            kind: OSSMConsole
            name: ossmconsoles.kiali.io
            version: v1alpha1
        description: |-
          ## About the managed application

          A Microservice Architecture breaks up the monolith into many smaller pieces
          that are composed together. Patterns to secure the communication between
          services like fault tolerance (via timeout, retry, circuit breaking, etc.)
          have come up as well as distributed tracing to be able to see where calls
          are going.

          A service mesh can now provide these services on a platform level and frees
          the application writers from those tasks. Routing decisions are done at the
          mesh level.

          Kiali works with OpenShift Service Mesh to visualize the service
          mesh topology, to provide visibility into features like circuit breakers,
          request rates and more. It offers insights about the mesh components at
          different levels, from abstract Applications to Services and Workloads.

          See [https://www.kiali.io](https://www.kiali.io) to read more.

          ### Accessing the UI

          By default, the Kiali operator exposes the Kiali UI as an OpenShift Route.

          If on OpenShift, you can create an OSSMConsole CR to have the operator
          install the OpenShift ServiceMesh Console plugin to the OpenShift Console
          thus providing an interface directly integrated with the OpenShift Console.

          ## About this Operator

          ### Kiali Custom Resource Configuration Settings

          For quick descriptions of all the settings you can configure in the Kiali
          Custom Resource (CR), see
          [the kiali.io docs](https://kiali.io/docs/configuration/kialis.kiali.io/).

          ## Prerequisites for enabling this Operator

          Kiali is a companion tool for OpenShift Service Mesh. So before you install Kiali, you must have
          already installed Service Mesh.
        displayName: Kiali Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - service-mesh
        - observability
        - monitoring
        - istio
        links:
        - name: Installation Guide
          url: https://www.kiali.io/docs/installation
        - name: Features
          url: https://www.kiali.io/docs/features
        - name: Documentation Home
          url: https://www.kiali.io
        - name: Blogs and Articles
          url: https://medium.com/kialiproject
        - name: Server and UI Source Code
          url: https://github.com/kiali/kiali
        - name: Operator Source Code
          url: https://github.com/kiali/kiali-operator
        - name: OpenShift Service Mesh Console Code
          url: https://github.com/kiali/openshift-servicemesh-plugin
        maintainers:
        - email: kiali-dev@googlegroups.com
          name: Kiali Developers Google Group
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-ossmc-rhel9@sha256:99643f294c3f92a6fc82f321cab7c756e4879fefb48fa824f1bf49ff7182658d
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-rhel9-operator@sha256:0612dfa52f2bf39a1d87e640409313585fedc7cfcff6d00e77bb14809d27d646
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-rhel9@sha256:06fde6c696a33d17b0d2f7620ec46422c82277fd17a3fe6d7319de05c732aace
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel8@sha256:e37d76dd7c7a2db79ff1e96afef19b07c3beaa8ebf0c7bd85b808908b8f0ce77
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:27a6aebffa3d049ee48050126e6107db2e07c49e9ce9297175facb6368e1e792
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:66e4d933a9d69158bf87dd45835183bf2308b77c48908ab64496c5d22c816293
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:976a31ca8cf17ac0887b8a586edfcc29eb30175802461b3114758af525e7b800
        - registry.redhat.io/openshift-service-mesh-tech-preview/kiali-operator-bundle@sha256:f40e7955ac649c383134ab6e77bdd521b75b21ecd9b476436405d0674c7fc855
        version: 2.1.2
      entries:
      - name: kiali-operator.v2.1.2
        version: 2.1.2
      - name: kiali-operator.v1.89.8
        version: 1.89.8
      - name: kiali-operator.v1.89.7
        version: 1.89.7
      - name: kiali-operator.v1.89.6
        version: 1.89.6
      - name: kiali-operator.v1.89.1
        version: 1.89.1
      - name: kiali-operator.v1.73.10
        version: 1.73.10
      - name: kiali-operator.v1.73.8
        version: 1.73.8
      - name: kiali-operator.v1.73.7
        version: 1.73.7
      - name: kiali-operator.v1.73.4
        version: 1.73.4
      - name: kiali-operator.v1.65.11
        version: 1.65.11
      - name: kiali-operator.v1.65.10
        version: 1.65.10
      - name: kiali-operator.v1.65.9
        version: 1.65.9
      - name: kiali-operator.v1.65.8
        version: 1.65.8
      - name: kiali-operator.v1.65.7
        version: 1.65.7
      - name: kiali-operator.v1.65.6
        version: 1.65.6
      - name: kiali-operator.v1.57.7
        version: 1.57.7
      name: candidate
    - currentCSV: kiali-operator.v2.17.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "Kiali",
                "metadata": {
                  "name": "kiali"
                },
                "spec": {
                  "version": "default",
                  "deployment": {
                    "logger": {
                      "log_level": "info"
                    },
                    "view_only_mode": false
                  }
                }
              },
              {
                "apiVersion": "kiali.io/v1alpha1",
                "kind": "OSSMConsole",
                "metadata": {
                  "name": "ossmconsole"
                },
                "spec": {
                  "version": "default",
                  "kiali": {
                    "serviceName": "",
                    "serviceNamespace": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh/kiali-rhel9-operator@sha256:ee89b53ebdd6b92eccd6c4a238a43d57d245ab14e8402a86e5ecd53046d90485
          createdAt: "2025-12-04T11:03:18Z"
          description: This productized operator provides Kiali and OSSMC. Kiali is
            the Istio observability and management Console. OSSMC is the OpenShift
            Service Mesh Console plugin, powered by Kiali.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/kiali/kiali
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A configuration file for a Kiali installation.
            displayName: Kiali
            kind: Kiali
            name: kialis.kiali.io
            version: v1alpha1
          - description: A configuration file for a OpenShift Service Mesh Console
              installation.
            displayName: OpenShift Service Mesh Console
            kind: OSSMConsole
            name: ossmconsoles.kiali.io
            version: v1alpha1
        description: |-
          ## About the managed application

          A Microservice Architecture breaks up the monolith into many smaller pieces
          that are composed together. Patterns to secure the communication between
          services like fault tolerance (via timeout, retry, circuit breaking, etc.)
          have come up as well as distributed tracing to be able to see where calls
          are going.

          A service mesh can now provide these services on a platform level and frees
          the application writers from those tasks. Routing decisions are done at the
          mesh level.

          Kiali works with OpenShift Service Mesh to visualize the service
          mesh topology, to provide visibility into features like circuit breakers,
          request rates and more. It offers insights about the mesh components at
          different levels, from abstract Applications to Services and Workloads.

          See [https://www.kiali.io](https://www.kiali.io) to read more.

          ### Accessing the UI

          By default, the Kiali operator exposes the Kiali UI as an OpenShift Route.

          If on OpenShift, you can create an OSSMConsole CR to have the operator
          install the OpenShift ServiceMesh Console plugin to the OpenShift Console
          thus providing an interface directly integrated with the OpenShift Console.

          ## About this Operator

          ### Kiali Custom Resource Configuration Settings

          For quick descriptions of all the settings you can configure in the Kiali
          Custom Resource (CR), see
          [the kiali.io docs](https://kiali.io/docs/configuration/kialis.kiali.io/).

          ## Prerequisites for enabling this Operator

          Kiali is a companion tool for OpenShift Service Mesh. So before you install Kiali, you must have
          already installed Service Mesh.
        displayName: Kiali Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - service-mesh
        - observability
        - monitoring
        - istio
        links:
        - name: Installation Guide
          url: https://www.kiali.io/docs/installation
        - name: Features
          url: https://www.kiali.io/docs/features
        - name: Documentation Home
          url: https://www.kiali.io
        - name: Blogs and Articles
          url: https://medium.com/kialiproject
        - name: Server and UI Source Code
          url: https://github.com/kiali/kiali
        - name: Operator Source Code
          url: https://github.com/kiali/kiali-operator
        - name: OpenShift Service Mesh Console Code
          url: https://github.com/kiali/openshift-servicemesh-plugin
        maintainers:
        - email: kiali-dev@googlegroups.com
          name: Kiali Developers Google Group
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:5e0f84a7ea17f1969dad842e2b8a7d3d868987e93a8e07ed8c2fab029618b8b6
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:99fd79555e907c2a84d0ffabb07fbce41313f800dbcd73edc6ee39773b5cdd23
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9-operator@sha256:ee89b53ebdd6b92eccd6c4a238a43d57d245ab14e8402a86e5ecd53046d90485
        - registry.redhat.io/openshift-service-mesh/kiali-operator-bundle@sha256:35096e1737e500ad148e9f5ca2a14554a5e1b4f3104782f00e8322352e365833
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel8@sha256:3c562a0583789ef34b25715663a66fc099c418d067e8cabd3c16e149f995d3a7
        - registry.redhat.io/openshift-service-mesh/kiali-rhel8@sha256:422b7cc5c88030ad25e989b17aa7d198844fd505571f1340c3b6d08704bc96ee
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:9fb4a74a931c8c6a9f8dd0cc844a93fe0b7fff36210fe53fd8cc50b69484d742
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:bde79c700c879bae1bb67434f51b3b202d7072de771cf8d86ee65b5539b9e347
        - registry.redhat.io/openshift-service-mesh/kiali-rhel9@sha256:ee3ea20acb92c12d1808076f00a179da61e632888e8e59e0e2b8b5caf053246c
        - registry.redhat.io/openshift-service-mesh/kiali-ossmc-rhel9@sha256:73c5c6021261336e50b34210f7ca4926511e8f11ff4d29f1305a0236dcc19c5d
        version: 2.17.2
      entries:
      - name: kiali-operator.v2.17.2
        version: 2.17.2
      - name: kiali-operator.v2.17.1
        version: 2.17.1
      - name: kiali-operator.v2.11.4
        version: 2.11.4
      - name: kiali-operator.v2.11.3
        version: 2.11.3
      - name: kiali-operator.v2.11.2
        version: 2.11.2
      - name: kiali-operator.v2.11.1
        version: 2.11.1
      - name: kiali-operator.v2.4.7
        version: 2.4.7
      - name: kiali-operator.v2.4.6
        version: 2.4.6
      - name: kiali-operator.v2.4.5
        version: 2.4.5
      - name: kiali-operator.v2.4.4
        version: 2.4.4
      - name: kiali-operator.v2.4.3
        version: 2.4.3
      - name: kiali-operator.v1.89.10
        version: 1.89.10
      - name: kiali-operator.v1.89.9
        version: 1.89.9
      - name: kiali-operator.v1.89.8
        version: 1.89.8
      - name: kiali-operator.v1.89.7
        version: 1.89.7
      - name: kiali-operator.v1.89.6
        version: 1.89.6
      - name: kiali-operator.v1.89.1
        version: 1.89.1
      - name: kiali-operator.v1.73.10
        version: 1.73.10
      - name: kiali-operator.v1.73.8
        version: 1.73.8
      - name: kiali-operator.v1.73.7
        version: 1.73.7
      - name: kiali-operator.v1.73.4
        version: 1.73.4
      - name: kiali-operator.v1.65.11
        version: 1.65.11
      - name: kiali-operator.v1.65.10
        version: 1.65.10
      - name: kiali-operator.v1.65.9
        version: 1.65.9
      - name: kiali-operator.v1.65.8
        version: 1.65.8
      - name: kiali-operator.v1.65.7
        version: 1.65.7
      - name: kiali-operator.v1.65.6
        version: 1.65.6
      - name: kiali-operator.v1.57.7
        version: 1.57.7
      name: stable
    defaultChannel: stable
    packageName: kiali-ossm
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Debezium Authors
      provider-url: https://debezium.io/
    name: debezium-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: debezium-operator.v2.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.4.2.Final
          createdAt: "2023-12-13T12:20:56Z"
          description: An Operator for installing and managing Debezium
          repository: https://github.com/debezium/debezium-operator
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/debezium/operator:2.4.2.Final
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:1a156d67fd5beb9ffddecab724490acb7143f8141ff3b392c6f519e76c3ad374
        version: 2.4.2
      entries:
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.4.x
    - currentCSV: debezium-operator.v2.5.3-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.5.3.Final
          createdAt: "2024-03-19T08:17:17Z"
          description: An Operator for installing and managing Debezium
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/debezium/operator:2.5.3.Final
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:645fcb18684884aef8ca4d5299f0d053d496c3a5d3f37cadd66c51d38514a680
        version: 2.5.3-final
      entries:
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.5.x
    - currentCSV: debezium-operator.v2.6.1-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.6.1.Final
          createdAt: "2024-04-12T17:18:16Z"
          description: An Operator for installing and managing Debezium
          olm.skipRange: '>2.5.3-final'
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:5a73ce3a8cc8422aeda37fd9ef97f5aecdbf8c69fb6ff488df26342e989b5c57
        - quay.io/debezium/operator:2.6.1.Final
        version: 2.6.1-final
      entries:
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.6.x
    - currentCSV: debezium-operator.v2.7.3-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:2.7.3.Final
          createdAt: "2024-09-20T10:31:16Z"
          description: An Operator for installing and managing Debezium
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:1dfe9180a9fca4f773c1282dfd0006daa0bb48dfbac87e352661e051107f9033
        - quay.io/debezium/operator:2.7.3.Final
        version: 2.7.3-final
      entries:
      - name: debezium-operator.v2.7.3-final
        version: 2.7.3-final
      - name: debezium-operator.v2.7.0-final
        version: 2.7.0-final
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-2.7.x
    - currentCSV: debezium-operator.v3.0.0-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:3.0.0.Final
          createdAt: "2024-10-02T09:55:38Z"
          description: An Operator for installing and managing Debezium
          olm.skipRange: '>2.7.3-final'
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:10671f1f6a7bab7b8bf7c8d986321484a7972b727f08947894ba7a6ccef98cd8
        - quay.io/debezium/operator:3.0.0.Final
        version: 3.0.0-final
      entries:
      - name: debezium-operator.v3.0.0-final
        version: 3.0.0-final
      - name: debezium-operator.v2.7.3-final
        version: 2.7.3-final
      - name: debezium-operator.v2.7.0-final
        version: 2.7.0-final
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-3.0.x
    - currentCSV: debezium-operator.v3.0.0-final
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
                {
                  "apiVersion": "debezium.io/v1alpha1",
                  "kind": "DebeziumServer",
                  "metadata": {
                    "name": "debezium-test"
                  },
                  "spec": {
                    "quarkus": {
                      "config": {
                        "log.console.json": false
                      }
                    },
                    "sink": {
                      "type": "kafka",
                      "config": {
                        "producer.bootstrap.servers": "dbz-kafka-kafka-bootstrap.debezium:9092",
                        "producer.key.serializer": "org.apache.kafka.common.serialization.StringSerializer",
                        "producer.value.serializer": "org.apache.kafka.common.serialization.StringSerializer"
                      }
                    },
                    "source": {
                      "class": "io.debezium.connector.mongodb.MongoDbConnector",
                      "config": {
                        "topic.prefix": "dbserver1",
                        "offset.storage.file.filename": "/debezium/data/offsets.dat",
                        "database.history": "io.debezium.relational.history.FileDatabaseHistory",
                        "mongodb.connection.string": "mongodb://debezium:dbz@mongo.debezium:27017/?replicaSet=rs0"
                      }
                    }
                  }
                }
            ]
          capabilities: Basic Install
          categories: Big Data, Database, Integration & Delivery, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/debezium/operator:3.0.0.Final
          createdAt: "2024-10-02T09:55:38Z"
          description: An Operator for installing and managing Debezium
          olm.skipRange: '>2.7.3-final'
          repository: https://github.com/debezium/debezium-operator/debezium-operator-dist
          support: Debezium Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Debezium Server
            displayName: DebeziumServer
            kind: DebeziumServer
            name: debeziumservers.debezium.io
            version: v1alpha1
        description: Debezium is an open source distributed platform for change data
          capture. Start it up, point it at your databases, and your apps can start
          responding to all of the inserts, updates, and deletes that other apps commit
          to your databases
        displayName: Debezium Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: true
          type: MultiNamespace
        keywords:
        - Debezium
        - CDC
        - Data
        - Streaming
        links:
        - name: Debezium
          url: https://debezium.io/
        - name: Documentation
          url: https://debezium.io/documentation/reference/stable/
        - name: Debezium Zulip Chat
          url: https://debezium.zulipchat.com
        maintainers:
        - email: debezium@googlegroups.com
          name: Debezium Authors
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: PersistentVolumeClaim
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        provider:
          name: Debezium Authors
          url: https://debezium.io/
        relatedImages:
        - quay.io/debezium/operator:3.0.0.Final
        - quay.io/community-operator-pipeline-prod/debezium-operator@sha256:10671f1f6a7bab7b8bf7c8d986321484a7972b727f08947894ba7a6ccef98cd8
        version: 3.0.0-final
      entries:
      - name: debezium-operator.v3.0.0-final
        version: 3.0.0-final
      - name: debezium-operator.v2.7.3-final
        version: 2.7.3-final
      - name: debezium-operator.v2.7.0-final
        version: 2.7.0-final
      - name: debezium-operator.v2.6.1-final
        version: 2.6.1-final
      - name: debezium-operator.v2.6.0-final
        version: 2.6.0-final
      - name: debezium-operator.v2.5.3-final
        version: 2.5.3-final
      - name: debezium-operator.v2.5.2-final
        version: 2.5.2-final
      - name: debezium-operator.v2.5.1
        version: 2.5.1
      - name: debezium-operator.v2.5.0
        version: 2.5.0
      - name: debezium-operator.v2.4.2
        version: 2.4.2
      - name: debezium-operator.v2.4.0
        version: 2.4.0
      name: debezium-latest
    defaultChannel: debezium-latest
    packageName: debezium-operator
    provider:
      name: Debezium Authors
      url: https://debezium.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/component: kmm-hub
      app.kubernetes.io/name: kmm-hub
      app.kubernetes.io/part-of: kmm
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: kernel-module-management-hub
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kernel-module-management-hub.v2.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:888a3acad339cf38a324c718e0cbe1237ca5bf2f4636b01d001752658e4cca1b
          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: "true"
          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.skipRange: '>=0.0.0 <2.0.2'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:888a3acad339cf38a324c718e0cbe1237ca5bf2f4636b01d001752658e4cca1b
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:192e08b121a04ae69aea60c35199e8f5e3c42305e1ebd024a605a371de4ab472
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:94b4ddc45cb34d4ffe794a51b99c868cb709f90cc4eb8b28284d70c526a0a226
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:62c44057a27abd41cf3daf60b8736da59a82dadb65fa6c32bef65d19bd49ea49
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:f182078b0077b6df6d47ddcab0204e963c1475486bd61b8eccb73b46eb8b2995
        version: 2.0.2
      entries:
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.0
    - currentCSV: kernel-module-management-hub.v2.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:d1c1490d4c20dc2ec31effa1af067676c4d264e3b7d4670fc11c2baf8a400001
          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.skipRange: '>=0.0.0 <2.1.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:c8b3505ed491c1bf6a913f161715c8ac483d8d9adf1fd29916ea4edad987cd67
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:d1c1490d4c20dc2ec31effa1af067676c4d264e3b7d4670fc11c2baf8a400001
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:14e100e5853444114029116255ebfb7a54e5ed51503ba969740ad48b5ca80f70
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:1a9a19df17b464d1708b2905d03b8726e4480ca1f11aa97a15ff4c049a24ea4b
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:611556d999ea97f9dbb78fec5963baa02de7a26626d7096ba63b177e3bcf9707
        version: 2.1.1
      entries:
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.1
    - currentCSV: kernel-module-management-hub.v2.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:90c1946b3f577cde0435402b04baa52dc54e5aab3bb84bd834ac026a57453296
          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: "true"
          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.skipRange: '>=0.0.0 <2.2.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:90c1946b3f577cde0435402b04baa52dc54e5aab3bb84bd834ac026a57453296
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:53fddf0b226eb579c71c86112a8d9b6b1d90a1498d6f6985932b16b8be532f35
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:c3dc9ad4ebc68cd85a074b520903a9310e72a90a73bdf4aa7c42b7ed66b7bcba
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:b1d98c0f14448ae8eb80821cbec236150c338674aae2a2b37f8d0ab0d5f1430c
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:af5a13351f960c0938c68604b772f24743c0e997701838a7784c53406471e72a
        version: 2.2.1
      entries:
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.2
    - currentCSV: kernel-module-management-hub.v2.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "jobNamespace": "default",
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Basic Install
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:f1d8f3c95f621c3faf41867c5dd4bc13fa2b9b291422d6184e6e42f1d1460259
          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: "true"
          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.skipRange: '>=0.0.0 <2.3.0'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        links:
        - name: Kernel Module Management Hub
          url: https://github.com/rh-ecosystem-edge/kernel-module-management
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:0d9f5293d69eebd91fffd83ae371141e640cab8f9e2d559a83714ce0f94fee08
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:f1d8f3c95f621c3faf41867c5dd4bc13fa2b9b291422d6184e6e42f1d1460259
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:f9fde334af68220943017a7491130e6a82f15e63522f5bb3931aa7d9b00ccc40
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:06ac089cc89b303e525fd71d6439b958f34ab944a72209f1cc8cb562ecfd1112
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:c5005b74402f680d11c9ea682a9a0d3f74b6ab0d01d25298d232f910f1a29c34
        version: 2.3.0
      entries:
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.3
    - currentCSV: kernel-module-management-hub.v2.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm-hub",
                    "app.kubernetes.io/name": "kmm-hub",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator
          createdAt: "2025-06-19T20:27:42Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.4.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:c4dc5f967c59e6371f344aa840fac24d8a17c127c71a2babf67d26cf6526acc5
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:2efb81137ad2981b994c62d460c917749308133a7dcad5b9a2b251e18f3052ec
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:15d84c2191be70931b832cde5a7045350badaeef16d811b07291ec2d4acec699
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:38d811a00b88a096d9fa8f650dae132c43db7057aac61c98932494ce94d67fff
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:34bd5c4f17411d5aa71edb1d6482b9a4cffffe4983b0a599db080bb09e1ec4d2
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:fc753a1c47c870199bf3c9a6cb4ef704847d525b3df5cd7628e2cc7dd0bbb2aa
        version: 2.4.1
      entries:
      - name: kernel-module-management-hub.v2.4.1
        version: 2.4.1
      - name: kernel-module-management-hub.v2.4.0
        version: 2.4.0
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.4
    - currentCSV: kernel-module-management-hub.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm-hub",
                    "app.kubernetes.io/name": "kmm-hub",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:31Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:e0b2a92c81b68732284ee358725ecc3a8e8a7cc9b9801ffda5167da98dd91013
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:66c94d8a0470c470c15ccf880fbb7bd69b368020c93eb0bc7c9bdd84ba6825ed
        version: 2.5.1
      entries:
      - name: kernel-module-management-hub.v2.5.1
        version: 2.5.1
      - name: kernel-module-management-hub.v2.5.0
        version: 2.5.0
      - name: kernel-module-management-hub.v2.4.1
        version: 2.4.1
      - name: kernel-module-management-hub.v2.4.0
        version: 2.4.0
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: release-2.5
    - currentCSV: kernel-module-management-hub.v2.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hub.kmm.sigs.x-k8s.io/v1beta1",
                "kind": "ManagedClusterModule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/component": "kmm-hub",
                    "app.kubernetes.io/name": "kmm-hub",
                    "app.kubernetes.io/part-of": "kmm"
                  },
                  "name": "managedclustermodule-sample"
                },
                "spec": {
                  "moduleSpec": {
                    "moduleLoader": {
                      "container": {
                        "kernelMappings": [],
                        "modprobe": {
                          "moduleName": "sample"
                        }
                      }
                    },
                    "selector": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "selector": {
                    "cluster.open-cluster-management.io/clusterset": "default"
                  },
                  "spokeNamespace": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "true"
          containerImage: registry.redhat.io/kmm/kernel-module-management-rhel9-operator@sha256:bbc6e9e56903eee37483e7ad5f832de24147a6582d5da3c5e87fd3c63a982345
          createdAt: "2025-11-20T17:17:31Z"
          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: "true"
          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.skipRange: '>=0.0.0 <2.5.1'
          operatorframework.io/suggested-namespace: openshift-kmm-hub
          operators.openshift.io/must-gather-image: registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/rh-ecosystem-edge/kernel-module-management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterModule describes how to load a kernel module
              on managed clusters
            displayName: Managed Cluster Module
            kind: ManagedClusterModule
            name: managedclustermodules.hub.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleBuildSignConfig
            name: modulebuildsignconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
          - kind: ModuleImagesConfig
            name: moduleimagesconfigs.kmm.sigs.x-k8s.io
            version: v1beta1
        description: Hub component for Kernel Module Management
        displayName: Kernel Module Management (Hub)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - hub
        - kernel
        - kmm
        - kmm-hub
        - module
        - modules
        - oot
        - out-of-tree
        maintainers:
        - email: edge-kmm@redhat.com
          name: Red Hat Ecosystem - Partner Accelerators Team
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/kmm/kernel-module-management-hub-operator-bundle@sha256:66c94d8a0470c470c15ccf880fbb7bd69b368020c93eb0bc7c9bdd84ba6825ed
        - registry.redhat.io/kmm/kernel-module-management-hub-rhel9-operator@sha256:e0b2a92c81b68732284ee358725ecc3a8e8a7cc9b9801ffda5167da98dd91013
        - registry.redhat.io/kmm/kernel-module-management-must-gather-rhel9@sha256:8b9065f530f65405c6b17882403adf534804169a8f21de48f0963673ba01aa67
        - registry.redhat.io/kmm/kernel-module-management-signing-rhel9@sha256:d4366b22bcc4139d9411450939cec3fd98a12aa1231d5eaa7ddccf53182a1de1
        - registry.redhat.io/kmm/kernel-module-management-webhook-server-rhel9@sha256:0b8248f86e2d278ef57752d217a3e37b3ec4aaeb4d52529bdb2e76da1a4268b8
        - registry.redhat.io/kmm/kernel-module-management-worker-rhel9@sha256:6a4e7a0ee359098153031f10b64c33a662e4f70ad4f60c9a5d1946f662c29a34
        version: 2.5.1
      entries:
      - name: kernel-module-management-hub.v2.5.1
        version: 2.5.1
      - name: kernel-module-management-hub.v2.5.0
        version: 2.5.0
      - name: kernel-module-management-hub.v2.4.1
        version: 2.4.1
      - name: kernel-module-management-hub.v2.4.0
        version: 2.4.0
      - name: kernel-module-management-hub.v2.3.0
        version: 2.3.0
      - name: kernel-module-management-hub.v2.2.1
        version: 2.2.1
      - name: kernel-module-management-hub.v2.2.0
        version: 2.2.0
      - name: kernel-module-management-hub.v2.1.1
        version: 2.1.1
      - name: kernel-module-management-hub.v2.1.0
        version: 2.1.0
      - name: kernel-module-management-hub.v2.0.2
        version: 2.0.2
      - name: kernel-module-management-hub.v2.0.1
        version: 2.0.1
      - name: kernel-module-management-hub.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: kernel-module-management-hub
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Splunk Inc.
      provider-url: www.splunk.com
    name: splunk-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: splunk-operator.v3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "IndexerCluster",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "indexercluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "LicenseMaster",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "licensemaster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "MonitoringConsole",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "monitoringconsole-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "SearchHeadCluster",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "searchheadcluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v3",
                "kind": "Standalone",
                "metadata": {
                  "finalizers": [
                    "enterprise.splunk.com/delete-pvc"
                  ],
                  "name": "standalone-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "ClusterManager",
                "metadata": {
                  "name": "clustermanager-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "IndexerCluster",
                "metadata": {
                  "name": "indexercluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "LicenseManager",
                "metadata": {
                  "name": "licensemanager-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "MonitoringConsole",
                "metadata": {
                  "name": "monitoringconsole-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "SearchHeadCluster",
                "metadata": {
                  "name": "searchheadcluster-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "enterprise.splunk.com/v4",
                "kind": "Standalone",
                "metadata": {
                  "name": "standalone-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Big Data, Logging & Tracing, Monitoring, Security, AI/Machine
            Learning
          containerImage: splunk/splunk-operator@sha256:ed02561995d46ff8eea143fa78f5da118ee6fdb500832e9a33b42d059a67e229
          createdAt: "2025-09-08T10:17:59Z"
          description: The Splunk Operator for Kubernetes enables you to quickly and
            easily deploy Splunk Enterprise on your choice of private or public cloud
            provider. The Operator simplifies scaling and management of Splunk Enterprise
            by automating administrative workflows using Kubernetes best practices.
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.19"}]'
          olm.skipRange: '>=2.4.0 <3.0.0'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/splunk/splunk-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterManager is the Schema for the cluster manager API
            displayName: Cluster Manager
            kind: ClusterManager
            name: clustermanagers.enterprise.splunk.com
            version: v4
          - description: ClusterMaster is the Schema for the cluster manager API
            displayName: Cluster Master
            kind: ClusterMaster
            name: clustermasters.enterprise.splunk.com
            version: v3
          - kind: ClusterMaster
            name: clustermasters.enterprise.splunk.com
            version: v1
          - kind: ClusterMaster
            name: clustermasters.enterprise.splunk.com
            version: v2
          - description: IndexerCluster is the Schema for a Splunk Enterprise indexer
              cluster
            displayName: Indexer Cluster
            kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v3
          - description: IndexerCluster is the Schema for a Splunk Enterprise indexer
              cluster
            displayName: Indexer Cluster
            kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v4
          - kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v1
          - kind: IndexerCluster
            name: indexerclusters.enterprise.splunk.com
            version: v2
          - description: LicenseManager is the Schema for a Splunk Enterprise license
              manager.
            displayName: License Manager
            kind: LicenseManager
            name: licensemanagers.enterprise.splunk.com
            version: v4
          - description: LicenseMaster is the Schema for a Splunk Enterprise license
              master.
            displayName: License Master
            kind: LicenseMaster
            name: licensemasters.enterprise.splunk.com
            version: v3
          - kind: LicenseMaster
            name: licensemasters.enterprise.splunk.com
            version: v1
          - kind: LicenseMaster
            name: licensemasters.enterprise.splunk.com
            version: v2
          - description: MonitoringConsole is the Schema for the monitoringconsole
              API
            displayName: Monitoring Console
            kind: MonitoringConsole
            name: monitoringconsoles.enterprise.splunk.com
            version: v3
          - description: MonitoringConsole is the Schema for the monitoringconsole
              API
            displayName: Monitoring Console
            kind: MonitoringConsole
            name: monitoringconsoles.enterprise.splunk.com
            version: v4
          - description: SearchHeadCluster is the Schema for a Splunk Enterprise search
              head cluster
            displayName: Search Head Cluster
            kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v3
          - description: SearchHeadCluster is the Schema for a Splunk Enterprise search
              head cluster
            displayName: Search Head Cluster
            kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v4
          - kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v1
          - kind: SearchHeadCluster
            name: searchheadclusters.enterprise.splunk.com
            version: v2
          - description: Standalone is the Schema for a Splunk Enterprise standalone
              instances.
            displayName: Standalone
            kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v3
          - description: Standalone is the Schema for a Splunk Enterprise standalone
              instances.
            displayName: Standalone
            kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v4
          - kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v1
          - kind: Standalone
            name: standalones.enterprise.splunk.com
            version: v2
        description: The Splunk Operator for Kubernetes enables you to quickly and
          easily deploy Splunk Enterprise on your choice of private or public cloud
          provider. The Operator simplifies scaling and management of Splunk Enterprise
          by automating administrative workflows using Kubernetes best practices.
        displayName: Splunk Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Splunk
        - Enterprise
        - Operator
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://github.com/splunk/splunk-operator/tree/main/docs
        maintainers:
        - email: support@splunk.com
          name: Splunk Operator Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Splunk Inc.
          url: www.splunk.com
        relatedImages:
        - registry.connect.redhat.com/splunk/splunk-operator-bundle@sha256:0d128cb47f562351a407c7e0153736fbbc14daba121c1d7422f6ecea8967788e
        - splunk/splunk-operator@sha256:ed02561995d46ff8eea143fa78f5da118ee6fdb500832e9a33b42d059a67e229
        - splunk/splunk@sha256:4a5ce5a7b4e84a87396f0664895095c6510a0f2bf52e8747a373c7357f3ee313
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d4883d7c622683b3319b5e6b3a7edfbf2594c18060131a8bf64504805f875522
        version: 3.0.0
      entries:
      - name: splunk-operator.v3.0.0
        version: 3.0.0
      - name: splunk-operator.v2.8.1
        version: 2.8.1
      - name: splunk-operator.v2.8.0
        version: 2.8.0
      - name: splunk-operator.v2.7.1
        version: 2.7.1
      - name: splunk-operator.v2.7.0
        version: 2.7.0
      name: stable
    defaultChannel: stable
    packageName: splunk-operator
    provider:
      name: Splunk Inc.
      url: www.splunk.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: https://www.percona.com/
    name: percona-postgresql-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-postgresql-operator-certified.v2.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgv2.percona.com/v2",
                "kind": "PerconaPGCluster",
                "metadata": {
                  "name": "cluster1"
                },
                "spec": {
                  "crVersion": "2.8.2",
                  "initContainer" : {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4"
                    },
                  "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227",
                  "imagePullPolicy": "Always",
                  "postgresVersion": 17,
                  "instances": [
                    {
                      "name": "instance1",
                      "replicas": 3,
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/data": "postgres"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      },
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      }
                    }
                  ],
                  "proxy": {
                    "pgBouncer": {
                      "replicas": 3,
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb",
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/role": "pgbouncer"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      }
                    }
                  },
                  "backups": {
                    "pgbackrest": {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27",
                      "repoHost": {
                        "affinity": {
                          "podAntiAffinity": {
                            "preferredDuringSchedulingIgnoredDuringExecution": [
                              {
                                "weight": 1,
                                "podAffinityTerm": {
                                  "labelSelector": {
                                    "matchLabels": {
                                      "postgres-operator.crunchydata.com/data": "pgbackrest"
                                    }
                                  },
                                  "topologyKey": "kubernetes.io/hostname"
                                }
                              }
                            ]
                          }
                        }
                      },
                      "manual": {
                        "repoName": "repo1",
                        "options": [
                          "--type=full"
                        ]
                      },
                      "repos": [
                        {
                          "name": "repo1",
                          "schedules": {
                            "full": "0 0 * * 6"
                          },
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1",
                    "secret": "cluster1-pmm-secret",
                    "serverHost": "monitoring-service"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
          createdAt: "2025-12-24T20:59:08Z"
          description: Percona Operator for PostgreSQL manages the lifecycle of Percona
            PostgreSQL cluster instances.
          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"
          repository: https://github.com/percona/percona-postgresql-operator
          support: percona.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaPGCluster is the CRD that defines a Percona PG Cluster
            displayName: Percona PGCluster
            kind: PerconaPGCluster
            name: perconapgclusters.pgv2.percona.com
            version: v2
          - description: PerconaPGBackup is the CRD that defines a Percona PostgreSQL
              Backup
            displayName: Percona PGBackup
            kind: PerconaPGBackup
            name: perconapgbackups.pgv2.percona.com
            version: v2
          - description: PerconaPGRestore is the CRD that defines a Percona PostgreSQL
              Restore
            displayName: Percona PGRestore
            kind: PerconaPGRestore
            name: perconapgrestores.pgv2.percona.com
            version: v2
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API This Custom Resource requires enabling CrunchyBridgeClusters feature
              gate
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PerconaPGUpgrade is the Schema for the perconapgupgrades
              API
            displayName: Percona PGUpgrade
            kind: PerconaPGUpgrade
            name: perconapgupgrades.pgv2.percona.com
            version: v2
          - description: PGAdmin is the Schema for the pgadmins API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          ## Percona is Cloud Native


          Percona Operator for PostgreSQL automates and simplifies deploying and managing
          open source PostgreSQL clusters on Kubernetes. Percona Operator for PostgreSQL is based on Postgres Operator developed by Crunchy Data.

          Whether you need to get a simple PostgreSQL cluster up and running, need to deploy a high availability,
          fault tolerant cluster in production, or are running your own database-as-a-service, the Operator provides the essential
          features you need to keep your clusters healthy.

          Consult the
          [documentation](https://www.percona.com/doc/kubernetes-operator-for-postgresql/index.html)
          on the Percona Operator for PostgreSQL for complete details on capabilities
          and options.

          ### Supported Features

          * **PostgreSQL Cluster Provisioning**

          Create, Scale, & Delete PostgreSQL clusters with ease, while fully customizing your Pods and PostgreSQL configuration.

          * **High Availability**

              Safe, automated failover backed by a distributed consensus based high-availability solution. Uses Pod Anti-Affinity to help resiliency; you can configure how much
              enforced this can be. Failed primaries automatically heal, allowing for faster recovery time. Support for standby PostgreSQL clusters that work both within and
              across multiple Kubernetes clusters.

          * **Disaster Recovery**

              Backups and restores leverage the open source pgBackRest utility and includes support for full, incremental, and differential backups as well as efficient delta
              restores. Set how long you want your backups retained for. Works great with very large databases!

          * **Communication Security**

              Secure communication between your applications and data servers by enabling TLS for your PostgreSQL servers, including the ability to enforce all of your connections
              to use TLS.

          * **Monitoring**

              Track the health of your PostgreSQL clusters with Percona Monitoring and Management (PMM).

          * **PostgreSQL User Management**

              Quickly add and remove users from your PostgreSQL clusters with powerful commands. Manage password expiration policies or use your preferred PostgreSQL authentication
              scheme.

          * **Updates Management**

              Safely apply PostgreSQL updates with minimal availability impact to your PostgreSQL clusters.

          * **Advanced Replication Support**

              Choose between asynchronous replication and synchronous replication for workloads that are sensitive to losing transactions.

          * **Clone**

              Create new clusters from your existing clusters or backups.

          * **Connection Pooling**

              Use [pgBouncer](https://access.crunchydata.com/documentation/postgres-operator/latest/tutorial/pgbouncer/) for connection pooling

          * **Affinity and Tolerations**

              Have your PostgreSQL clusters deployed to Kubernetes Nodes of your preference with node affinity, or designate which nodes Kubernetes can schedule PostgreSQL instances
              to with Kubernetes  tolerations.

          * **Scheduled Backups**

              Choose the type of backup (full, incremental, differential) and how frequently you want it to occur on each PostgreSQL cluster.

          * **Backup to S3**

              Store your backups in Amazon S3 or any object storage system that supports the S3 protocol. The Operator can backup, restore, and create new clusters from these backups.

          * **Multi-Namespace Support**

              You can control how the Operator leverages Kubernetes Namespaces with several different deployment models:

              * Deploy the Operator and all PostgreSQL clusters to the same namespace
              * Deploy the Operator to one Namespace, and all PostgreSQL clusters to a different Namespace
              * Deploy the Operator to one Namespace, and have your PostgreSQL clusters managed across multiple Namespaces

          * **Full Customizability**

              The Operator not only makes it easy to get PostgreSQL up and running on Kubernetes-enabled platforms, but also allows you to further customize your deployments:

              * Selecting different storage classes for your primary, replica, and backup storage
              * Select your own container resources class for each PostgreSQL cluster deployment; differentiate between resources applied for primary and replica clusters
              * Use your own container image repository, including `imagePullSecrets` and private repositories  support
              * Customize your PostgreSQL configuration
              * Bring your own trusted certificate authority (CA) for use with the Operator API server
              * Override your PostgreSQL configuration for each cluster
              * Use your own custom images, re-define the image for each container separately
        displayName: Percona Operator for PostgreSQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - percona
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-postgresql/index.html
        - name: Github
          url: https://github.com/percona/percona-postgresql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
          url: https://www.percona.com/
        relatedImages:
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:f632d8d344484f5127fb2d7099932ed61659d4e6a365c5e8d5160829a48f2d95
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:9625b4723334fe682dc84473b1ed6062dfccb8ba8aa1151bdf2951014af1eccd
        - registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:20abf8fbdd159fcd4e7a76fc3007adcb4cf13181666c57e92c041479b1dae469
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4325dfd18945f91656624770b66815a987ff7bd71ed50584f701cf70d30b527c
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:dd5d46542699ee7581127e378d50d5ebea8b988cec94af5ca0afc7b1526af03d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7d1f8a886ec7e649cb8d025b54f2d54b3000d8c3c9b1f1faca0c9f7d33df7d4f
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4eaf41681c1af8e5a22c8ddf0fe03cbb39c0e86e8f44db769dea8302d9999378
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8db1cadc211b9fe8dca7b6fbebe0e278673053f0e367d4a14096dee67ff3d6c9
        - registry.connect.redhat.com/percona/percona-postgresql-operator-bundle@sha256:91416d3fbcaf47deec7945948744a4509a3b2ac9609c78390f2f55271ecee7b1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:11bda023af2f45f340bcabb12cc4bcb67b3ba97f8c452d15863ba8d28236150d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7596e1e5c1d2cd6c178e592870e27ca6c47762b7de0c38b6485925ba9d08d612
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4e67a8b906bc0932d14ae69fb922c0de246dad463dff5250dbfe6689887fabec
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7a7bb90523d29acdfc7c05f2d43f725c121b55bdad0d681d0e4794011def43c1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1
        version: 2.8.2
      entries:
      - name: percona-postgresql-operator-certified.v2.8.2
        version: 2.8.2
      - name: percona-postgresql-operator-certified.v2.8.1
        version: 2.8.1
      - name: percona-postgresql-operator-certified.v2.8.0
        version: 2.8.0
      name: stable
    - currentCSV: percona-postgresql-operator-certified.v2.8.2-cw
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgv2.percona.com/v2",
                "kind": "PerconaPGCluster",
                "metadata": {
                  "name": "cluster1"
                },
                "spec": {
                  "crVersion": "2.8.2",
                  "initContainer" : {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4"
                    },
                  "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227",
                  "imagePullPolicy": "Always",
                  "postgresVersion": 17,
                  "instances": [
                    {
                      "name": "instance1",
                      "replicas": 3,
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/data": "postgres"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      },
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      }
                    }
                  ],
                  "proxy": {
                    "pgBouncer": {
                      "replicas": 3,
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb",
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/role": "pgbouncer"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      }
                    }
                  },
                  "backups": {
                    "pgbackrest": {
                      "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27",
                      "repoHost": {
                        "affinity": {
                          "podAntiAffinity": {
                            "preferredDuringSchedulingIgnoredDuringExecution": [
                              {
                                "weight": 1,
                                "podAffinityTerm": {
                                  "labelSelector": {
                                    "matchLabels": {
                                      "postgres-operator.crunchydata.com/data": "pgbackrest"
                                    }
                                  },
                                  "topologyKey": "kubernetes.io/hostname"
                                }
                              }
                            ]
                          }
                        }
                      },
                      "manual": {
                        "repoName": "repo1",
                        "options": [
                          "--type=full"
                        ]
                      },
                      "repos": [
                        {
                          "name": "repo1",
                          "schedules": {
                            "full": "0 0 * * 6"
                          },
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1",
                    "secret": "cluster1-pmm-secret",
                    "serverHost": "monitoring-service"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
          createdAt: "2025-12-24T20:59:08Z"
          description: Percona Operator for PostgreSQL manages the lifecycle of Percona
            PostgreSQL cluster instances.
          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"
          repository: https://github.com/percona/percona-postgresql-operator
          support: percona.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaPGCluster is the CRD that defines a Percona PG Cluster
            displayName: Percona PGCluster
            kind: PerconaPGCluster
            name: perconapgclusters.pgv2.percona.com
            version: v2
          - description: PerconaPGBackup is the CRD that defines a Percona PostgreSQL
              Backup
            displayName: Percona PGBackup
            kind: PerconaPGBackup
            name: perconapgbackups.pgv2.percona.com
            version: v2
          - description: PerconaPGRestore is the CRD that defines a Percona PostgreSQL
              Restore
            displayName: Percona PGRestore
            kind: PerconaPGRestore
            name: perconapgrestores.pgv2.percona.com
            version: v2
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API This Custom Resource requires enabling CrunchyBridgeClusters feature
              gate
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PerconaPGUpgrade is the Schema for the perconapgupgrades
              API
            displayName: Percona PGUpgrade
            kind: PerconaPGUpgrade
            name: perconapgupgrades.pgv2.percona.com
            version: v2
          - description: PGAdmin is the Schema for the pgadmins API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          ## Percona is Cloud Native


          Percona Operator for PostgreSQL automates and simplifies deploying and managing
          open source PostgreSQL clusters on Kubernetes. Percona Operator for PostgreSQL is based on Postgres Operator developed by Crunchy Data.

          Whether you need to get a simple PostgreSQL cluster up and running, need to deploy a high availability,
          fault tolerant cluster in production, or are running your own database-as-a-service, the Operator provides the essential
          features you need to keep your clusters healthy.

          Consult the
          [documentation](https://www.percona.com/doc/kubernetes-operator-for-postgresql/index.html)
          on the Percona Operator for PostgreSQL for complete details on capabilities
          and options.

          ### Supported Features

          * **PostgreSQL Cluster Provisioning**

          Create, Scale, & Delete PostgreSQL clusters with ease, while fully customizing your Pods and PostgreSQL configuration.

          * **High Availability**

              Safe, automated failover backed by a distributed consensus based high-availability solution. Uses Pod Anti-Affinity to help resiliency; you can configure how much
              enforced this can be. Failed primaries automatically heal, allowing for faster recovery time. Support for standby PostgreSQL clusters that work both within and
              across multiple Kubernetes clusters.

          * **Disaster Recovery**

              Backups and restores leverage the open source pgBackRest utility and includes support for full, incremental, and differential backups as well as efficient delta
              restores. Set how long you want your backups retained for. Works great with very large databases!

          * **Communication Security**

              Secure communication between your applications and data servers by enabling TLS for your PostgreSQL servers, including the ability to enforce all of your connections
              to use TLS.

          * **Monitoring**

              Track the health of your PostgreSQL clusters with Percona Monitoring and Management (PMM).

          * **PostgreSQL User Management**

              Quickly add and remove users from your PostgreSQL clusters with powerful commands. Manage password expiration policies or use your preferred PostgreSQL authentication
              scheme.

          * **Updates Management**

              Safely apply PostgreSQL updates with minimal availability impact to your PostgreSQL clusters.

          * **Advanced Replication Support**

              Choose between asynchronous replication and synchronous replication for workloads that are sensitive to losing transactions.

          * **Clone**

              Create new clusters from your existing clusters or backups.

          * **Connection Pooling**

              Use [pgBouncer](https://access.crunchydata.com/documentation/postgres-operator/latest/tutorial/pgbouncer/) for connection pooling

          * **Affinity and Tolerations**

              Have your PostgreSQL clusters deployed to Kubernetes Nodes of your preference with node affinity, or designate which nodes Kubernetes can schedule PostgreSQL instances
              to with Kubernetes  tolerations.

          * **Scheduled Backups**

              Choose the type of backup (full, incremental, differential) and how frequently you want it to occur on each PostgreSQL cluster.

          * **Backup to S3**

              Store your backups in Amazon S3 or any object storage system that supports the S3 protocol. The Operator can backup, restore, and create new clusters from these backups.

          * **Multi-Namespace Support**

              You can control how the Operator leverages Kubernetes Namespaces with several different deployment models:

              * Deploy the Operator and all PostgreSQL clusters to the same namespace
              * Deploy the Operator to one Namespace, and all PostgreSQL clusters to a different Namespace
              * Deploy the Operator to one Namespace, and have your PostgreSQL clusters managed across multiple Namespaces

          * **Full Customizability**

              The Operator not only makes it easy to get PostgreSQL up and running on Kubernetes-enabled platforms, but also allows you to further customize your deployments:

              * Selecting different storage classes for your primary, replica, and backup storage
              * Select your own container resources class for each PostgreSQL cluster deployment; differentiate between resources applied for primary and replica clusters
              * Use your own container image repository, including `imagePullSecrets` and private repositories  support
              * Customize your PostgreSQL configuration
              * Bring your own trusted certificate authority (CA) for use with the Operator API server
              * Override your PostgreSQL configuration for each cluster
              * Use your own custom images, re-define the image for each container separately
        displayName: Percona Operator for PostgreSQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - percona
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-postgresql/index.html
        - name: Github
          url: https://github.com/percona/percona-postgresql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
          url: https://www.percona.com/
        relatedImages:
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4325dfd18945f91656624770b66815a987ff7bd71ed50584f701cf70d30b527c
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7d1f8a886ec7e649cb8d025b54f2d54b3000d8c3c9b1f1faca0c9f7d33df7d4f
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:dd5d46542699ee7581127e378d50d5ebea8b988cec94af5ca0afc7b1526af03d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4e67a8b906bc0932d14ae69fb922c0de246dad463dff5250dbfe6689887fabec
        - registry.connect.redhat.com/percona/percona-postgresql-operator-bundle@sha256:426327aea4e178081a84aedf1217abb2785a911d4889a1c9134160ef26c248aa
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:11bda023af2f45f340bcabb12cc4bcb67b3ba97f8c452d15863ba8d28236150d
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:89242c50e9581424a52bda8c5949e1a6919a3fd314ca17a1e1c3ab37f6386d27
        - registry.connect.redhat.com/percona/percona-postgresql-operator@sha256:3423ed66de44dba946c45ce0ac1571d70fb56a64c6bf6bcca1de49f00fa28fe4
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7a7bb90523d29acdfc7c05f2d43f725c121b55bdad0d681d0e4794011def43c1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8db1cadc211b9fe8dca7b6fbebe0e278673053f0e367d4a14096dee67ff3d6c9
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:9625b4723334fe682dc84473b1ed6062dfccb8ba8aa1151bdf2951014af1eccd
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:7596e1e5c1d2cd6c178e592870e27ca6c47762b7de0c38b6485925ba9d08d612
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:4eaf41681c1af8e5a22c8ddf0fe03cbb39c0e86e8f44db769dea8302d9999378
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:20abf8fbdd159fcd4e7a76fc3007adcb4cf13181666c57e92c041479b1dae469
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:849f90dcb73b216554dc3c8b9a6b7dc7e21d131074e908bd42dcda2106a28227
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:8ec71e5a927bd40019259a30c278940c3c748667f67466207b7d1b9a077b86bb
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:a725ecdd54b0afb53da144961b37ea07b946033f66726f00f7dc174dd6ec7dc1
        - registry.connect.redhat.com/percona/percona-postgresql-operator-containers@sha256:f632d8d344484f5127fb2d7099932ed61659d4e6a365c5e8d5160829a48f2d95
        version: 2.8.2-cw
      entries:
      - name: percona-postgresql-operator-certified.v2.8.2-cw
        version: 2.8.2-cw
      - name: percona-postgresql-operator-certified.v2.8.1-cw
        version: 2.8.1-cw
      - name: percona-postgresql-operator-certified.v2.8.0-cw
        version: 2.8.0-cw
      name: stable-cw
    defaultChannel: stable
    packageName: percona-postgresql-operator-certified
    provider:
      name: Percona
      url: https://www.percona.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: GitLab Inc
      provider-url: https://about.gitlab.com/
    name: gitlab-operator-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:17:00Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/gitlab-operator-kubernetes@sha256:63811c7853c3ef9ad6e04b1af146db41086b3d947e5d6069f77e9c5c57eb1f84
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: stable
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:17:00Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/gitlab-operator-kubernetes@sha256:63811c7853c3ef9ad6e04b1af146db41086b3d947e5d6069f77e9c5c57eb1f84
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: unstable
    defaultChannel: stable
    packageName: gitlab-operator-kubernetes
    provider:
      name: GitLab Inc
      url: https://about.gitlab.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: netobserv-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: network-observability-operator.v1.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "flows.netobserv.io/v1alpha1",
                "kind": "FlowMetric",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "netobserv-operator",
                    "app.kubernetes.io/instance": "flowmetric-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "flowmetric",
                    "app.kubernetes.io/part-of": "netobserv-operator"
                  },
                  "name": "flowmetric-sample"
                },
                "spec": {
                  "charts": [
                    {
                      "dashboardName": "Main",
                      "queries": [
                        {
                          "legend": "",
                          "promQL": "sum(rate($METRIC[2m]))"
                        }
                      ],
                      "title": "External ingress traffic",
                      "type": "SingleStat",
                      "unit": "Bps"
                    },
                    {
                      "dashboardName": "Main",
                      "queries": [
                        {
                          "legend": "{{DstK8S_Namespace}} / {{DstK8S_OwnerName}}",
                          "promQL": "sum(rate($METRIC{DstK8S_Namespace!=\"\"}[2m])) by (DstK8S_Namespace, DstK8S_OwnerName)"
                        }
                      ],
                      "sectionName": "External",
                      "title": "Top external ingress traffic per workload",
                      "type": "StackArea",
                      "unit": "Bps"
                    }
                  ],
                  "direction": "Ingress",
                  "filters": [
                    {
                      "field": "SrcSubnetLabel",
                      "matchType": "Absence"
                    }
                  ],
                  "labels": [
                    "DstK8S_HostName",
                    "DstK8S_Namespace",
                    "DstK8S_OwnerName",
                    "DstK8S_OwnerType"
                  ],
                  "metricName": "cluster_external_ingress_bytes_total",
                  "type": "Counter",
                  "valueField": "Bytes"
                }
              },
              {
                "apiVersion": "flows.netobserv.io/v1beta2",
                "kind": "FlowCollector",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "agent": {
                    "ebpf": {
                      "cacheActiveTimeout": "5s",
                      "cacheMaxFlows": 100000,
                      "excludeInterfaces": [
                        "lo"
                      ],
                      "imagePullPolicy": "IfNotPresent",
                      "interfaces": [],
                      "kafkaBatchSize": 1048576,
                      "logLevel": "info",
                      "metrics": {
                        "server": {
                          "port": 9400
                        }
                      },
                      "privileged": false,
                      "resources": {
                        "limits": {
                          "memory": "800Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      },
                      "sampling": 50
                    },
                    "type": "eBPF"
                  },
                  "consolePlugin": {
                    "autoscaler": {
                      "maxReplicas": 3,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 50,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 1,
                      "status": "Disabled"
                    },
                    "enable": true,
                    "imagePullPolicy": "IfNotPresent",
                    "logLevel": "info",
                    "portNaming": {
                      "enable": true,
                      "portNames": {
                        "3100": "loki"
                      }
                    },
                    "quickFilters": [
                      {
                        "default": true,
                        "filter": {
                          "flow_layer": "\"app\""
                        },
                        "name": "Applications"
                      },
                      {
                        "filter": {
                          "flow_layer": "\"infra\""
                        },
                        "name": "Infrastructure"
                      },
                      {
                        "default": true,
                        "filter": {
                          "dst_kind": "\"Pod\"",
                          "src_kind": "\"Pod\""
                        },
                        "name": "Pods network"
                      },
                      {
                        "filter": {
                          "dst_kind": "\"Service\""
                        },
                        "name": "Services network"
                      }
                    ],
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "memory": "100Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    }
                  },
                  "deploymentModel": "Direct",
                  "exporters": [],
                  "kafka": {
                    "address": "kafka-cluster-kafka-bootstrap.netobserv",
                    "tls": {
                      "caCert": {
                        "certFile": "ca.crt",
                        "name": "kafka-cluster-cluster-ca-cert",
                        "type": "secret"
                      },
                      "enable": false,
                      "userCert": {
                        "certFile": "user.crt",
                        "certKey": "user.key",
                        "name": "flp-kafka",
                        "type": "secret"
                      }
                    },
                    "topic": "network-flows"
                  },
                  "loki": {
                    "enable": true,
                    "lokiStack": {
                      "name": "loki"
                    },
                    "mode": "Monolithic",
                    "monolithic": {
                      "tenantID": "netobserv",
                      "tls": {
                        "caCert": {
                          "certFile": "service-ca.crt",
                          "name": "loki-gateway-ca-bundle",
                          "type": "configmap"
                        },
                        "enable": false
                      },
                      "url": "http://loki.netobserv.svc:3100/"
                    },
                    "readTimeout": "30s",
                    "writeBatchSize": 10485760,
                    "writeBatchWait": "1s",
                    "writeTimeout": "10s"
                  },
                  "namespace": "netobserv",
                  "networkPolicy": {
                    "additionalNamespaces": [],
                    "enable": true
                  },
                  "processor": {
                    "imagePullPolicy": "IfNotPresent",
                    "kafkaConsumerAutoscaler": null,
                    "kafkaConsumerBatchSize": 10485760,
                    "kafkaConsumerQueueCapacity": 1000,
                    "kafkaConsumerReplicas": 3,
                    "logLevel": "info",
                    "logTypes": "Flows",
                    "metrics": {
                      "disableAlerts": [],
                      "server": {
                        "port": 9401
                      }
                    },
                    "resources": {
                      "limits": {
                        "memory": "800Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "prometheus": {
                    "querier": {
                      "enable": true,
                      "mode": "Auto",
                      "timeout": "30s"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring, Networking, Observability, OpenShift Optional
          console.openshift.io/plugins: '["netobserv-plugin"]'
          containerImage: registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:d4f8f312c04c4c719c0812545382a4945e0afafd69ee3361e00f557dacbd8458
          createdAt: 2025-12-04T13:37:09
          description: Network flows collector and monitoring solution
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: '{"apiVersion":"flows.netobserv.io/v1beta2",
            "kind":"FlowCollector","metadata":{"name":"cluster"},"spec": {}}'
          operatorframework.io/suggested-namespace: openshift-netobserv-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/netobserv/network-observability-operator
          support: NetObserv team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: '`FlowCollector` is the schema for the network flows collection
              API, which pilots and configures the underlying deployments.'
            displayName: Flow Collector
            kind: FlowCollector
            name: flowcollectors.flows.netobserv.io
            version: v1beta2
          - description: '`FlowMetric` is the schema for the custom metrics API, which
              allows to generate more metrics out of flow logs. You can find examples
              here: https://github.com/netobserv/network-observability-operator/tree/main/config/samples/flowmetrics'
            displayName: Flow Metric
            kind: FlowMetric
            name: flowmetrics.flows.netobserv.io
            version: v1alpha1
        description: |
          Network Observability is an OpenShift operator that deploys a monitoring pipeline consisting in:
          - an eBPF agent, that generates network flows from captured packets
          - flowlogs-pipeline, a component that collects, enriches and exports these flows
          - a Console plugin for flows visualization with powerful filtering options, a topology representation and more

          Flow data is then available in multiple ways, each optional:

          - As Cluster Monitoring metrics
          - As raw flow logs stored in Grafana Loki
          - As raw flow logs exported to a collector

          ## Dependencies

          ### Loki

          [Loki](https://grafana.com/oss/loki/), from GrafanaLabs, can optionally be used as the backend to store all collected flows. The Network Observability operator does not install Loki directly, however we provide some guidance to help you there.

          - For a production or production-like environment usage, refer to [the operator documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/network_observability/installing-network-observability-operators).

          - For a quick try that is not suitable for production and not scalable (it deploys a single pod, configures a 10GB storage PVC, with 24 hours of retention), you can simply run the following commands:

          ```
          oc create namespace netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/5410e65b8e05aaabd1244a9524cfedd8ac8c56b5/examples/zero-click-loki/1-storage.yaml) -n netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/5410e65b8e05aaabd1244a9524cfedd8ac8c56b5/examples/zero-click-loki/2-loki.yaml) -n netobserv
          ```

          If you prefer to not use Loki, you must set `spec.loki.enable` to `false` in `FlowCollector`.
          In that case, you can still get the Prometheus metrics or export raw flows to a custom collector. But be aware that some of the Console plugin features will be disabled. For instance, you will not be able to view raw flows there, and the metrics / topology will have a more limited level of details, missing information such as pods or IPs.

          ### Kafka

          [Apache Kafka](https://kafka.apache.org/) can optionally be used for a more resilient and scalable architecture. You can use for example [Strimzi](https://strimzi.io/), an operator-based distribution of Kafka for Kubernetes and OpenShift.

          ### Grafana

          [Grafana](https://grafana.com/oss/grafana/) can optionally be installed for custom dashboards and query capabilities.

          ## Configuration

          The `FlowCollector` resource is used to configure the operator and its managed components. A comprehensive documentation is [available here](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/docs/FlowCollector.md), and a full sample file [there](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/config/samples/flows_v1beta2_flowcollector.yaml).

          To edit configuration in cluster, run:

          ```bash
          oc edit flowcollector cluster
          ```

          As it operates cluster-wide on every node, only a single `FlowCollector` is allowed, and it has to be named `cluster`.

          A couple of settings deserve special attention:

          - Sampling (`spec.agent.ebpf.sampling`): a value of `100` means: one flow every 100 is sampled. `1` means all flows are sampled. The lower it is, the more flows you get, and the more accurate are derived metrics, but the higher amount of resources are consumed. By default, sampling is set to 50 (ie. 1:50). Note that more sampled flows also means more storage needed. We recommend to start with default values and refine empirically, to figure out which setting your cluster can manage.

          - Loki (`spec.loki`): configure here how to reach Loki. The default values match the Loki quick install paths mentioned above, but you might have to configure differently if you used another installation method. Make sure to disable it (`spec.loki.enable`) if you don't want to use Loki.

          - Quick filters (`spec.consolePlugin.quickFilters`): configure preset filters to be displayed in the Console plugin. They offer a way to quickly switch from filters to others, such as showing / hiding pods network, or infrastructure network, or application network, etc. They can be tuned to reflect the different workloads running on your cluster. For a list of available filters, [check this page](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/docs/QuickFilters.md).

          - Kafka (`spec.deploymentModel: KAFKA` and `spec.kafka`): when enabled, integrates the flow collection pipeline with Kafka, by splitting ingestion from transformation (kube enrichment, derived metrics, ...). Kafka can provide better scalability, resiliency and high availability ([view more details](https://www.redhat.com/en/topics/integration/what-is-apache-kafka)). Assumes Kafka is already deployed and a topic is created.

          - Exporters (`spec.exporters`) an optional list of exporters to which to send enriched flows. KAFKA and IPFIX exporters are supported. This allows you to define any custom storage or processing that can read from Kafka or use the IPFIX standard.

          - To enable availability zones awareness, set `spec.processor.addZone` to `true`.

          ## Resource considerations

          The following table outlines examples of resource considerations for clusters with certain workload sizes.
          The examples outlined in the table demonstrate scenarios that are tailored to specific workloads. Consider each example only as a baseline from which adjustments can be made to accommodate your workload needs.


          | Resource recommendations                        | Extra small (10 nodes) | Small (25 nodes)       | Medium (65 nodes) **    | Large (120 nodes) **          |
          | ----------------------------------------------- | ---------------------- | ---------------------- | ----------------------- | ----------------------------- |
          | *Worker Node vCPU and memory*                   | 4 vCPUs\| 16GiB mem *  | 16 vCPUs\| 64GiB mem * | 16 vCPUs\| 64GiB mem  * |16 vCPUs\| 64GiB Mem *         |
          | *LokiStack size*                                | `1x.extra-small`       | `1x.small`             | `1x.small`              | `1x.medium`                   |
          | *Network Observability controller memory limit* | 400Mi (default)        | 400Mi (default)        | 400Mi (default)         | 800Mi                         |
          | *eBPF sampling interval*                        | 50 (default)           | 50 (default)           | 50 (default)            | 50 (default)                  |
          | *eBPF memory limit*                             | 800Mi (default)        | 800Mi (default)        | 2000Mi                  | 800Mi (default)               |
          | *FLP memory limit*                              | 800Mi (default)        | 800Mi (default)        | 800Mi (default)         | 800Mi (default)               |
          | *FLP Kafka partitions*                          | N/A                    | 48                     | 48                      | 48                            |
          | *Kafka consumer replicas*                       | N/A                    | 24                     | 24                      | 24                            |
          | *Kafka brokers*                                 | N/A                    | 3 (default)            | 3 (default)             | 3 (default)                   |

          *. Tested with AWS M6i instances.
          **. In addition to this worker and its controller, 3 infra nodes (size `M6i.12xlarge`) and 1 workload node (size `M6i.8xlarge`) were tested.

          ## Further reading

          Please refer to the documentation on GitHub for more information.

          This documentation includes:

          - An [overview](https://github.com/netobserv/network-observability-operator#openshift-console) of the features, with screenshots
          - More information on [configuring metrics](https://github.com/netobserv/network-observability-operator/blob/1.9.2-community/docs/Metrics.md).
          - A [performance](https://github.com/netobserv/network-observability-operator#performance-fine-tuning) section, for fine-tuning
          - A [security](https://github.com/netobserv/network-observability-operator#securing-data-and-communications) section
          - An [F.A.Q.](https://github.com/netobserv/network-observability-operator#faq--troubleshooting) section
        displayName: Network Observability
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network observability
        - ebpf
        - ipfix
        - flow tracing
        - flows
        - topology
        - network
        - observability
        links:
        - name: Project page
          url: https://github.com/netobserv/network-observability-operator
        - name: Issue tracker
          url: https://github.com/netobserv/network-observability-operator/issues
        - name: Discussion board
          url: https://github.com/netobserv/network-observability-operator/discussions
        maintainers:
        - email: jpinsonn@redhat.com
          name: Julien Pinsonneau
        - email: jtakvori@redhat.com
          name: Joel Takvorian
        - email: lberetta@redhat.com
          name: Leandro Beretta
        - email: ljira@redhat.com
          name: Luis Jira
        - email: mmahmoud@redhat.com
          name: Mohamed S. Mahmoud
        - email: ocazade@redhat.com
          name: Olivier Cazade
        - email: stlee@redhat.com
          name: Steven Lee
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:d4f8f312c04c4c719c0812545382a4945e0afafd69ee3361e00f557dacbd8458
        - registry.redhat.io/network-observability/network-observability-operator-bundle@sha256:672475bad5c9d33f2c1ed309a6774394774b6b221f6c7d2ad1685228dd69fc52
        - registry.redhat.io/network-observability/network-observability-console-plugin-compat-rhel9@sha256:7f15b6a86320aa1efb6623f1d75eccc0725d689db3a7d2cb13170a48d31e8159
        - registry.redhat.io/network-observability/network-observability-console-plugin-rhel9@sha256:cf85daa46634b0ef40d2935e3f5c0f55ba70762e6423d9ed084b09bb45503c65
        - registry.redhat.io/network-observability/network-observability-ebpf-agent-rhel9@sha256:4ff0cc14bfd0974cdb4cd90b69549c07d6852355bb32b1894f41eb70844132e4
        - registry.redhat.io/network-observability/network-observability-flowlogs-pipeline-rhel9@sha256:7b9aa110a11f695d113914164afde675039078528eff441b6541010272e31da5
        version: 1.10.1
      entries:
      - name: network-observability-operator.v1.10.1
        version: 1.10.1
      - name: network-observability-operator.v1.10.0
        version: 1.10.0
      - name: network-observability-operator.v1.9.3
        version: 1.9.3
      - name: network-observability-operator.v1.9.2
        version: 1.9.2
      - name: network-observability-operator.v1.9.1
        version: 1.9.1
      - name: network-observability-operator.v1.9.0
        version: 1.9.0
      - name: network-observability-operator.v1.8.1
        version: 1.8.1
      - name: network-observability-operator.v1.8.0
        version: 1.8.0
      - name: network-observability-operator.v1.7.0
        version: 1.7.0
      - name: network-observability-operator.v1.6.2
        version: 1.6.2
      - name: network-observability-operator.v1.6.1
        version: 1.6.1
      - name: network-observability-operator.v1.6.0
        version: 1.6.0
      - name: network-observability-operator.v1.5.0
        version: 1.5.0
      - name: network-observability-operator.v1.4.2
        version: 1.4.2
      - name: network-observability-operator.v1.4.1
        version: 1.4.1
      - name: network-observability-operator.v1.4.0
        version: 1.4.0
      - name: network-observability-operator.v1.3.0
        version: 1.3.0
      - name: network-observability-operator.v1.2.0
        version: 1.2.0
      - name: network-observability-operator.v1.1.0-202302110050
        version: 1.1.0
      - name: network-observability-operator.v1.0.0-202301070345
        version: 1.0.0
      name: stable
    - currentCSV: network-observability-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "flows.netobserv.io/v1alpha1",
                "kind": "FlowCollector",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "agent": {
                    "ebpf": {
                      "cacheActiveTimeout": "5s",
                      "cacheMaxFlows": 100000,
                      "excludeInterfaces": [
                        "lo"
                      ],
                      "imagePullPolicy": "IfNotPresent",
                      "interfaces": [],
                      "kafkaBatchSize": 10485760,
                      "logLevel": "info",
                      "resources": {
                        "limits": {
                          "memory": "800Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      },
                      "sampling": 50
                    },
                    "type": "EBPF"
                  },
                  "consolePlugin": {
                    "autoscaler": {
                      "maxReplicas": 3,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 50,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 1,
                      "status": "DISABLED"
                    },
                    "imagePullPolicy": "IfNotPresent",
                    "logLevel": "info",
                    "port": 9001,
                    "portNaming": {
                      "enable": true,
                      "portNames": {
                        "3100": "loki"
                      }
                    },
                    "quickFilters": [
                      {
                        "default": true,
                        "filter": {
                          "dst_namespace!": "openshift-,netobserv",
                          "src_namespace!": "openshift-,netobserv"
                        },
                        "name": "Applications"
                      },
                      {
                        "filter": {
                          "dst_namespace": "openshift-,netobserv",
                          "src_namespace": "openshift-,netobserv"
                        },
                        "name": "Infrastructure"
                      },
                      {
                        "default": true,
                        "filter": {
                          "dst_kind": "Pod",
                          "src_kind": "Pod"
                        },
                        "name": "Pods network"
                      },
                      {
                        "filter": {
                          "dst_kind": "Service"
                        },
                        "name": "Services network"
                      }
                    ],
                    "register": true
                  },
                  "deploymentModel": "DIRECT",
                  "exporters": [],
                  "kafka": {
                    "address": "kafka-cluster-kafka-bootstrap.netobserv",
                    "tls": {
                      "caCert": {
                        "certFile": "ca.crt",
                        "name": "kafka-cluster-cluster-ca-cert",
                        "type": "secret"
                      },
                      "enable": false,
                      "userCert": {
                        "certFile": "user.crt",
                        "certKey": "user.key",
                        "name": "flp-kafka",
                        "type": "secret"
                      }
                    },
                    "topic": "network-flows"
                  },
                  "loki": {
                    "batchSize": 10485760,
                    "batchWait": "1s",
                    "maxBackoff": "5s",
                    "maxRetries": 2,
                    "minBackoff": "1s",
                    "tls": {
                      "caCert": {
                        "certFile": "service-ca.crt",
                        "name": "loki-gateway-ca-bundle",
                        "type": "configmap"
                      },
                      "enable": false,
                      "insecureSkipVerify": false
                    },
                    "url": "http://loki.netobserv.svc:3100/"
                  },
                  "namespace": "netobserv",
                  "processor": {
                    "dropUnusedFields": true,
                    "imagePullPolicy": "IfNotPresent",
                    "kafkaConsumerAutoscaler": null,
                    "kafkaConsumerBatchSize": 10485760,
                    "kafkaConsumerQueueCapacity": 1000,
                    "kafkaConsumerReplicas": 3,
                    "logLevel": "info",
                    "metrics": {
                      "ignoreTags": [
                        "egress",
                        "packets"
                      ],
                      "server": {
                        "port": 9102
                      }
                    },
                    "port": 2055,
                    "profilePort": 6060,
                    "resources": {
                      "limits": {
                        "memory": "800Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "100Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "flows.netobserv.io/v1beta1",
                "kind": "FlowCollector",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "agent": {
                    "ebpf": {
                      "cacheActiveTimeout": "5s",
                      "cacheMaxFlows": 100000,
                      "excludeInterfaces": [
                        "lo"
                      ],
                      "imagePullPolicy": "IfNotPresent",
                      "interfaces": [],
                      "kafkaBatchSize": 10485760,
                      "logLevel": "info",
                      "resources": {
                        "limits": {
                          "memory": "800Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      },
                      "sampling": 50
                    },
                    "type": "EBPF"
                  },
                  "consolePlugin": {
                    "autoscaler": {
                      "maxReplicas": 3,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 50,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 1,
                      "status": "DISABLED"
                    },
                    "imagePullPolicy": "IfNotPresent",
                    "logLevel": "info",
                    "port": 9001,
                    "portNaming": {
                      "enable": true,
                      "portNames": {
                        "3100": "loki"
                      }
                    },
                    "quickFilters": [
                      {
                        "default": true,
                        "filter": {
                          "dst_namespace!": "openshift-,netobserv",
                          "src_namespace!": "openshift-,netobserv"
                        },
                        "name": "Applications"
                      },
                      {
                        "filter": {
                          "dst_namespace": "openshift-,netobserv",
                          "src_namespace": "openshift-,netobserv"
                        },
                        "name": "Infrastructure"
                      },
                      {
                        "default": true,
                        "filter": {
                          "dst_kind": "Pod",
                          "src_kind": "Pod"
                        },
                        "name": "Pods network"
                      },
                      {
                        "filter": {
                          "dst_kind": "Service"
                        },
                        "name": "Services network"
                      }
                    ],
                    "register": true
                  },
                  "deploymentModel": "DIRECT",
                  "exporters": [],
                  "kafka": {
                    "address": "kafka-cluster-kafka-bootstrap.netobserv",
                    "tls": {
                      "caCert": {
                        "certFile": "ca.crt",
                        "name": "kafka-cluster-cluster-ca-cert",
                        "type": "secret"
                      },
                      "enable": false,
                      "userCert": {
                        "certFile": "user.crt",
                        "certKey": "user.key",
                        "name": "flp-kafka",
                        "type": "secret"
                      }
                    },
                    "topic": "network-flows"
                  },
                  "loki": {
                    "batchSize": 10485760,
                    "batchWait": "1s",
                    "maxBackoff": "5s",
                    "maxRetries": 2,
                    "minBackoff": "1s",
                    "statusTls": {
                      "caCert": {
                        "certFile": "service-ca.crt",
                        "name": "loki-ca-bundle",
                        "type": "configmap"
                      },
                      "enable": false,
                      "insecureSkipVerify": false,
                      "userCert": {
                        "certFile": "tls.crt",
                        "certKey": "tls.key",
                        "name": "loki-query-frontend-http",
                        "type": "secret"
                      }
                    },
                    "tls": {
                      "caCert": {
                        "certFile": "service-ca.crt",
                        "name": "loki-gateway-ca-bundle",
                        "type": "configmap"
                      },
                      "enable": false,
                      "insecureSkipVerify": false
                    },
                    "url": "http://loki.netobserv.svc:3100/"
                  },
                  "namespace": "netobserv",
                  "processor": {
                    "conversationEndTimeout": "10s",
                    "conversationHeartbeatInterval": "30s",
                    "conversationTerminatingTimeout": "5s",
                    "dropUnusedFields": true,
                    "imagePullPolicy": "IfNotPresent",
                    "kafkaConsumerAutoscaler": null,
                    "kafkaConsumerBatchSize": 10485760,
                    "kafkaConsumerQueueCapacity": 1000,
                    "kafkaConsumerReplicas": 3,
                    "logLevel": "info",
                    "logTypes": "FLOWS",
                    "metrics": {
                      "disableAlerts": [],
                      "ignoreTags": [
                        "egress",
                        "packets"
                      ],
                      "server": {
                        "port": 9102
                      }
                    },
                    "port": 2055,
                    "profilePort": 6060,
                    "resources": {
                      "limits": {
                        "memory": "800Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "100Mi"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          console.openshift.io/plugins: '["netobserv-plugin"]'
          containerImage: registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:fd943746840cba26996dabb47b1beb3445571fa43cb1b859fb073e4aa114b376
          createdAt: 2023-06-22T09:31:50
          description: Network flows collector and monitoring solution
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-netobserv-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.3
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/netobserv/network-observability-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FlowCollector is the Schema for the flowcollectors API, which
              pilots and configures netflow collection.
            displayName: Flow Collector
            kind: FlowCollector
            name: flowcollectors.flows.netobserv.io
            version: v1alpha1
          - description: FlowCollector is the schema for the network flows collection
              API, which pilots and configures the underlying deployments.
            displayName: Flow Collector
            kind: FlowCollector
            name: flowcollectors.flows.netobserv.io
            version: v1beta1
        description: |
          Network Observability is an OpenShift operator that deploys a monitoring pipeline to collect and enrich network flows that are produced by the Network Observability eBPF agent.

          The operator provides dashboards, metrics, and keeps flows accessible in a queryable log store, Grafana Loki. When a `FlowCollector` instance is created, new views are available in the Console.

          ## Dependencies

          ### Loki

          [Loki](https://grafana.com/oss/loki/), from GrafanaLabs, is the backend that is used to store all collected flows. The NetObserv Operator does not install Loki directly, however we provide some guidance to help you there.

          For normal usage, we recommend two options:

          - Installing the [Loki Operator](https://docs.openshift.com/container-platform/4.11//logging/cluster-logging-loki.html). We have written [a guide](https://github.com/netobserv/documents/blob/main/loki_operator.md) to help you through those steps. Please note that it requires configuring an object storage. Note also that the Loki Operator can also be used for [OpenShift cluster logging](https://docs.openshift.com/container-platform/4.11/logging/cluster-logging.html). If you do so, you should not share the same `LokiStack` for Logging and NetObserv.

          - Installing using [Grafana's official documentation](https://grafana.com/docs/loki/latest/). Here also we wrote a ["distributed Loki" step by step guide](https://github.com/netobserv/documents/blob/main/loki_distributed.md).

          For a quick try that is not suitable for production and not scalable (it deploys a single pod, configures a 1GB storage PVC, with 24 hours of retention), you can simply run the following commands:

          ```
          oc create namespace netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/252bb624cf0425a1b66f59ce68fb939f246ef77b/examples/zero-click-loki/1-storage.yaml) -n netobserv
          oc apply -f <(curl -L https://raw.githubusercontent.com/netobserv/documents/252bb624cf0425a1b66f59ce68fb939f246ef77b/examples/zero-click-loki/2-loki.yaml) -n netobserv
          ```

          ### Kafka

          [Apache Kafka](https://kafka.apache.org/) can optionally be used for a more resilient and scalable architecture. You can use for instance [Strimzi](https://strimzi.io/), an operator-based distribution of Kafka for Kubernetes and OpenShift.

          ### Grafana

          [Grafana](https://grafana.com/oss/grafana/) can optionally be installed for custom dashboards and query capabilities.

          ## Configuration

          The `FlowCollector` resource is used to configure the operator and its managed components. A comprehensive documentation is [available here](https://github.com/netobserv/network-observability-operator/blob/1.0.2/docs/FlowCollector.md), and a full sample file [there](https://github.com/netobserv/network-observability-operator/blob/1.0.2/config/samples/flows_v1beta1_flowcollector.yaml).

          To edit configuration in cluster, run:

          ```bash
          oc edit flowcollector cluster
          ```

          As it operates cluster-wide, only a single `FlowCollector` is allowed, and it has to be named `cluster`.

          A couple of settings deserve special attention:

          - Sampling (`spec.agent.ebpf.sampling`): a value of `100` means: one flow every 100 is sampled. `1` means all flows are sampled. The lower it is, the more flows you get, and the more accurate are derived metrics, but the higher amount of resources are consumed. By default, sampling is set to 50 (ie. 1:50). Note that more sampled flows also means more storage needed. We recommend to start with default values and refine empirically, to figure out which setting your cluster can manage.

          - Loki (`spec.loki`): configure here how to reach Loki. The default values match the Loki quick install paths mentioned above, but you may have to configure differently if you used another installation method.

          - Quick filters (`spec.consolePlugin.quickFilters`): configure preset filters to be displayed in the Console plugin. They offer a way to quickly switch from filters to others, such as showing / hiding pods network, or infrastructure network, or application network, etc. They can be tuned to reflect the different workloads running on your cluster. For a list of available filters, [check this page](https://github.com/netobserv/network-observability-operator/blob/1.0.2/docs/QuickFilters.md).

          - Kafka (`spec.deploymentModel: KAFKA` and `spec.kafka`): when enabled, integrates the flow collection pipeline with Kafka, by splitting ingestion from transformation (kube enrichment, derived metrics, ...). Kafka can provide better scalability, resiliency and high availability ([view more details](https://www.redhat.com/en/topics/integration/what-is-apache-kafka)). Assumes Kafka is already deployed and a topic is created.

          - Exporters (`spec.exporters`, _experimental_) an optional list of exporters to which to send enriched flows. Currently only KAFKA is supported. This allows you to define any custom storage or processing that can read from Kafka. This feature is flagged as _experimental_ as it has not been thoroughly or stress tested yet, so use at your own risk.

          ## Further reading

          Please refer to the documentation on GitHub for more information.

          This documentation includes:

          - An [overview](https://github.com/netobserv/network-observability-operator#openshift-console) of the features, with screenshots
          - A [performance](https://github.com/netobserv/network-observability-operator#performance-fine-tuning) section, for fine-tuning
          - A [security](https://github.com/netobserv/network-observability-operator#securing-data-and-communications) section
          - An [F.A.Q.](https://github.com/netobserv/network-observability-operator#faq--troubleshooting) section
        displayName: Network Observability
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network observability
        - ebpf
        - flow tracing
        - flows
        - topology
        - network
        - observability
        links:
        - name: Project page
          url: https://github.com/netobserv/network-observability-operator
        - name: Issue tracker
          url: https://github.com/netobserv/network-observability-operator/issues
        - name: Discussion board
          url: https://github.com/netobserv/network-observability-operator/discussions
        maintainers:
        - email: jpinsonn@redhat.com
          name: Julien Pinsonneau
        - email: jtakvori@redhat.com
          name: Joel Takvorian
        - email: kmeth@redhat.com
          name: Kalman Meth
        - email: mmahmoud@redhat.com
          name: Mohamed S. Mahmoud
        - email: ocazade@redhat.com
          name: Olivier Cazade
        - email: rschaffe@redhat.com
          name: Ronen Schaffer
        - email: stlee@redhat.com
          name: Steven Lee
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/network-observability/network-observability-flowlogs-pipeline-rhel9@sha256:7c7c42fff63e0599bb943a9e9617b43181360d5a5254b27f368010af275cf0c3
        - registry.redhat.io/network-observability/network-observability-operator-bundle@sha256:b03f4e88ab1fed4744356a584d673fb2fdb15de7e1de7786bdd222b853690670
        - registry.redhat.io/network-observability/network-observability-rhel9-operator@sha256:fd943746840cba26996dabb47b1beb3445571fa43cb1b859fb073e4aa114b376
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:37b3c9b2eed351d9d1a39c99045bbc7993ccb819f67f7b390deaa34930f45946
        - registry.redhat.io/network-observability/network-observability-console-plugin-rhel9@sha256:880c0812a2cd4b7194f417e31fbdcee951ce76776fa06e33c5c9cd479a854daa
        - registry.redhat.io/network-observability/network-observability-ebpf-agent-rhel9@sha256:e31acc12d8690c339e13b5dd22d33e707701362bdd31086c9b4c0f48cad62cc3
        version: 1.3.0
      entries:
      - name: network-observability-operator.v1.3.0
        version: 1.3.0
      - name: network-observability-operator.v1.2.0
        version: 1.2.0
      - name: network-observability-operator.v1.1.0-202302110050
        version: 1.1.0
      - name: network-observability-operator.v1.0.0-202301070345
        version: 1.0.0
      name: v1.0.x
    defaultChannel: stable
    packageName: netobserv-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: fuse-console
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fuse-console.v7.10.3-0.1655306919.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "replicas": 1,
                  "version": "1.10",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "100Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:37dc38375f5d553ac1d9f20f66ce005ed9495354b81d7915ae3bd7dd6af132f3
          createdAt: "2020-09-14T10:59:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.10.3'
          olm.substitutesFor: fuse-console.v7.10.3-0.1652362834.p
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.10/html/managing_fuse
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:bbfddd7cb4a6cb7a131a0cef174054890fd39956d63e737c92fe8233ad8f98e4
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:37dc38375f5d553ac1d9f20f66ce005ed9495354b81d7915ae3bd7dd6af132f3
        version: 7.10.3+0.1655306919.p
      entries:
      - name: fuse-console.v7.10.3
        version: 7.10.3
      - name: fuse-console.v7.10.3-0.1652362834.p
        version: 7.10.3+0.1652362834.p
      - name: fuse-console.v7.10.3-0.1655306919.p
        version: 7.10.3+0.1655306919.p
      name: 7.10.x
    - currentCSV: fuse-console.v7.11.1-0.1681224695.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.11",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:518b5ace9178e2aafd7b6f247fd41d9392abd1a7bccb4cb53783531820611193
          createdAt: "2022-09-07T14:03:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.11.1'
          olm.substitutesFor: fuse-console.v7.11.1-0.1675972857.p
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.11/html/managing_fuse_on_openshift
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:5a35593357fbf280561a1d4a64ecc0d5c2044409acff3ce6cb490a4a61462a4e
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:518b5ace9178e2aafd7b6f247fd41d9392abd1a7bccb4cb53783531820611193
        version: 7.11.1+0.1681224695.p
      entries:
      - name: fuse-console.v7.11.1
        version: 7.11.1
      - name: fuse-console.v7.11.1-0.1669922044.p
        version: 7.11.1+0.1669922044.p
      - name: fuse-console.v7.11.1-0.1675972857.p
        version: 7.11.1+0.1675972857.p
      - name: fuse-console.v7.11.1-0.1681224695.p
        version: 7.11.1+0.1681224695.p
      name: 7.11.x
    - currentCSV: fuse-console.v7.12.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.12",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:4e6889bf76d323956e0b594db7381e8162fea6b108f53f9e6dd0b38cf3596c8d
          createdAt: "2022-09-07T14:03:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.12.1'
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.12/html/managing_fuse_on_openshift
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:791ac512370af5cde1e089de3def760e7dbce69badc03137051520ce316d63e2
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:4e6889bf76d323956e0b594db7381e8162fea6b108f53f9e6dd0b38cf3596c8d
        version: 7.12.1
      entries:
      - name: fuse-console.v7.12.1
        version: 7.12.1
      name: 7.12.x
    - currentCSV: fuse-console.v7.13.0-0.1766137500.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "auth": {
                    "clientCertCheckSchedule": "* */12 * * *",
                    "clientCertExpirationPeriod": 24
                  },
                  "replicas": 1,
                  "version": "1.13",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:445cfa19464d1417f051989d9ba63dd7970b70806c92b5f936d77cdef80b57d0
          createdAt: "2022-09-07T14:03:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=7.7.0 <7.13.0'
          olm.substitutesFor: fuse-console.v7.13.0
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.13/html/managing_fuse_on_openshift
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:604011e60b1ea342db34ffe9c4ad5c13f6417667cde611f21c2cd1094552aad3
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:445cfa19464d1417f051989d9ba63dd7970b70806c92b5f936d77cdef80b57d0
        version: 7.13.0+0.1766137500.p
      entries:
      - name: fuse-console.v7.13.0-0.1748960166.p
        version: 7.13.0+0.1748960166.p
      - name: fuse-console.v7.13.0-0.1751291353.p
        version: 7.13.0+0.1751291353.p
      - name: fuse-console.v7.13.0-0.1719822976.p
        version: 7.13.0+0.1719822976.p
      - name: fuse-console.v7.13.0-0.1721224332.p
        version: 7.13.0+0.1721224332.p
      - name: fuse-console.v7.13.0-0.1723709432.p
        version: 7.13.0+0.1723709432.p
      - name: fuse-console.v7.13.0-0.1724659726.p
        version: 7.13.0+0.1724659726.p
      - name: fuse-console.v7.13.0-0.1725026290.p
        version: 7.13.0+0.1725026290.p
      - name: fuse-console.v7.13.0-0.1731460809.p
        version: 7.13.0+0.1731460809.p
      - name: fuse-console.v7.13.0-0.1738056254.p
        version: 7.13.0+0.1738056254.p
      - name: fuse-console.v7.13.0-0.1739885034.p
        version: 7.13.0+0.1739885034.p
      - name: fuse-console.v7.13.0-0.1741875974.p
        version: 7.13.0+0.1741875974.p
      - name: fuse-console.v7.13.0-0.1741884704.p
        version: 7.13.0+0.1741884704.p
      - name: fuse-console.v7.13.0-0.1744281421.p
        version: 7.13.0+0.1744281421.p
      - name: fuse-console.v7.13.0-0.1744737026.p
        version: 7.13.0+0.1744737026.p
      - name: fuse-console.v7.13.0
        version: 7.13.0
      - name: fuse-console.v7.13.0-0.1766137500.p
        version: 7.13.0+0.1766137500.p
      - name: fuse-console.v7.13.0-0.1753778626.p
        version: 7.13.0+0.1753778626.p
      - name: fuse-console.v7.13.0-0.1753702606.p
        version: 7.13.0+0.1753702606.p
      - name: fuse-console.v7.13.0-0.1749640277.p
        version: 7.13.0+0.1749640277.p
      - name: fuse-console.v7.13.0-0.1753785080.p
        version: 7.13.0+0.1753785080.p
      - name: fuse-console.v7.13.0-0.1753860418.p
        version: 7.13.0+0.1753860418.p
      - name: fuse-console.v7.13.0-0.1754303647.p
        version: 7.13.0+0.1754303647.p
      - name: fuse-console.v7.13.0-0.1754559584.p
        version: 7.13.0+0.1754559584.p
      - name: fuse-console.v7.13.0-0.1754567932.p
        version: 7.13.0+0.1754567932.p
      - name: fuse-console.v7.13.0-0.1757604404.p
        version: 7.13.0+0.1757604404.p
      - name: fuse-console.v7.13.0-0.1760430814.p
        version: 7.13.0+0.1760430814.p
      - name: fuse-console.v7.13.0-0.1761246177.p
        version: 7.13.0+0.1761246177.p
      - name: fuse-console.v7.13.0-0.1763465880.p
        version: 7.13.0+0.1763465880.p
      - name: fuse-console.v7.13.0-0.1764232107.p
        version: 7.13.0+0.1764232107.p
      - name: fuse-console.v7.13.0-0.1764853444.p
        version: 7.13.0+0.1764853444.p
      - name: fuse-console.v7.12.1
        version: 7.12.1
      name: 7.13.x
    - currentCSV: fuse-console.v7.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hawt.io/v1alpha1",
                "kind": "Hawtio",
                "metadata": {
                  "name": "fuse-console"
                },
                "spec": {
                  "replicas": 1,
                  "version": "1.9",
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "memory": "100Mi"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "32Mi"
                    }
                  },
                  "type": "Namespace"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:846d57f3fd9f307a98b0169b6733c26299209d99ed189f219c48f36ba771b198
          createdAt: "2020-09-14T10:59:00Z"
          description: The Fuse Console eases the discovery and management of Fuse
            applications deployed on OpenShift.
          olm.skipRange: '>=7.7.0 <7.9.0'
          repository: https://github.com/hawtio/hawtio-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Fuse Console
            displayName: Hawtio
            kind: Hawtio
            name: hawtios.hawt.io
            version: v1alpha1
        description: |
          The Fuse Console eases the discovery and management of Fuse applications deployed on OpenShift.

          To secure the communication between the Fuse Console and the Jolokia agents, a client certificate is automatically generated.

          Note that the client certificate CN (defaults to `fuse-console.fuse.svc`) must be trusted by the Jolokia agents, for which client certification authentication is enabled. See the `clientPrincipal` parameter from the [Jolokia agent configuration options](https://jolokia.org/reference/html/agents.html#agent-jvm-config).
        displayName: Red Hat Integration - Fuse Console
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Fuse
        - Hawtio
        - Java
        - Management
        - Console
        links:
        - name: Red Hat Fuse Console Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_fuse/7.9/html/managing_fuse
        - name: Upstream Hawtio Web site
          url: https://hawt.io
        - name: Upstream Hawtio operator
          url: https://github.com/hawtio/hawtio-operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator-bundle@sha256:ddfdf850c9238a6988889e1840efe3175f03dad2489a5651e21cac62ac44e23e
        - registry.redhat.io/fuse7/fuse-console-rhel8-operator@sha256:846d57f3fd9f307a98b0169b6733c26299209d99ed189f219c48f36ba771b198
        version: 7.9.0
      entries:
      - name: fuse-console.v7.9.0
        version: 7.9.0
      name: 7.9.x
    defaultChannel: 7.13.x
    packageName: fuse-console
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: sandboxed-containers-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sandboxed-containers-operator.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:051bd7f1dad8cc3251430fee32184be8d64077aba78580184cef0255d267bdcf
          createdAt: 2021-06-07-13:38:06
          olm.skipRange: <1.0.2
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/openshift/sandboxed-containers-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Details
          OpenShift sandboxed containers based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift’s Defense-in-Depth strategy. For more information
          [see](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5).

          # Features & benefits
          - **Isolated Developer Environments & Priviliges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as CAP_ADMIN or CAP_BPF. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select preview-1.0 from the list of available Update Channel options.
            This ensures that you install the version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              openshift-sandboxed-containers-operator namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              openshift-sandboxed-containers-operator causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a KataConfig CRD instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/4.8/sandboxed_containers/understanding-sandboxed-containers.html).
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kernel-isolated containers
        links:
        - name: OpenShift sandboxed containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        provider:
          name: Red Hat
          url: https://www.github.com/openshift/sandboxed-containers-operator
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:051bd7f1dad8cc3251430fee32184be8d64077aba78580184cef0255d267bdcf
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:c6c589d5e47ba9564c66c84fc2bc7e5e046dae1d56a3dc99d7343f01e42e4d31
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-operator-bundle@sha256:2808a0397495982b4ea0001ede078803a043d5c9b0285662b08044fe4c11f243
        version: 1.0.2
      deprecation:
        message: |
          The preview-1.0 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.0.2
        version: 1.0.2
      name: preview-1.0
    - currentCSV: sandboxed-containers-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "false"
          containerImage: registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:b1e824e126c579db0f56d04c3d1796d82ed033110c6bc923de66d95b67099611
          createdAt: "2021-10-08T13:20:20.250789Z"
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/openshift/sandboxed-containers-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          OpenShift sandboxed containers based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift’s Defense-in-Depth strategy. For more information
          [see](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5).

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `preview-1.1` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CRD instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/4.8/sandboxed_containers/understanding-sandboxed-containers.html).
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kernel-isolated containers
        links:
        - name: OpenShift sandboxed containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        provider:
          name: Red Hat
          url: https://www.github.com/openshift/sandboxed-containers-operator
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-operator-bundle@sha256:a91cee14f47824ce49759628d06bf4e48276e67dae00b50123d3233d78531720
        - registry.redhat.io/openshift-sandboxed-containers-tech-preview/osc-rhel8-operator@sha256:b1e824e126c579db0f56d04c3d1796d82ed033110c6bc923de66d95b67099611
        version: 1.1.0
      deprecation:
        message: |
          The preview-1.1 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.1.0
        version: 1.1.0
      - name: sandboxed-containers-operator.v1.0.2
        version: 1.0.2
      name: preview-1.1
    - currentCSV: sandboxed-containers-operator.v1.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-04T15:20:34Z"
          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.skipRange: '>=1.1.0 <1.11.1'
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/internal-objects: '["peerpods.confidentialcontainers.org","peerpodconfigs.confidentialcontainers.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/sandboxed-containers-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
          - kind: PeerPod
            name: peerpods.confidentialcontainers.org
            version: v1alpha1
        description: |-
          OpenShift sandboxed containers, based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift's Defense-in-Depth strategy. Click [this link](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5) for
          more information.

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `candidate` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CustomResourceDefinition(CRD) instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the [OpenShift sandboxed containers documentation](https://docs.redhat.com/en/documentation/openshift_sandboxed_containers/).
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sandboxed-containers
        - kata
        links:
        - name: Sandboxed Containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        maintainers:
        - email: support@redhat.com'
          name: '''Red Hat'
        maturity: beta
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-rhel9@sha256:408eaaac58d01892aa2087153eda6f451788c02b8b719dca8e710a8916b2e081
        - registry.redhat.io/openshift-sandboxed-containers/osc-must-gather-rhel9@sha256:e4bb201c368afbc80eced2aea0869d152e026253a14349a01e2088f5dac5e214
        - registry.redhat.io/openshift-sandboxed-containers/osc-pccs@sha256:de64fc7b13aaa7e466e825d62207f77e7c63a4f9da98663c3ab06abc45f2334d
        - registry.redhat.io/openshift-sandboxed-containers/osc-cloud-api-adaptor-webhook-rhel9@sha256:4a533f77a4f1415b8eed0d3f5a4ba9d62edd329bf304f26f23b0c1d886dddb71
        - registry.redhat.io/openshift-sandboxed-containers/osc-podvm-builder-rhel9@sha256:9efde29746c28defaabce25c2f0c6da7567ca7dc7fe97845886d7d9e750ea094
        - registry.redhat.io/openshift-sandboxed-containers/osc-tdx-qgs@sha256:86b23461c4eea073f4535a777374a54e934c37ac8c96c6180030f92ebf970524
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:7b2035904ec464fe32c55ace525f573a491b046b5ef7cd5721d7a67cfc8dae25
        - registry.redhat.io/openshift-sandboxed-containers/osc-podvm-payload-rhel9@sha256:7317c2d8c0ac8e542e39d695851c4add301593d2b52af80c77fd4f996efbe2b8
        - registry.redhat.io/openshift-sandboxed-containers/osc-dm-verity-image@sha256:0eb5efd518128ac6df93fec2e5d24c4c5662d5407e016d1f66579cc9ce4529ea
        - registry.redhat.io/openshift-sandboxed-containers/osc-monitor-rhel9@sha256:3c1434943628c01f102615115e89e384b4d46ccf2fd6c0abd5205917afc4d05a
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel9-operator@sha256:b59db913c24f866a700d7662f3fd2de238b4a71550f2f04673ef3ba62ce35aa6
        - registry.redhat.io/openshift-sandboxed-containers/osc-storage-helper@sha256:c9b31c8acd23c6925d6bf193696817f14a52b0f0fcbd8459023b5d69da93482e
        version: 1.11.1
      entries:
      - name: sandboxed-containers-operator.v1.11.1
        version: 1.11.1
      - name: sandboxed-containers-operator.v1.11.0
        version: 1.11.0
      - name: sandboxed-containers-operator.v1.10.3
        version: 1.10.3
      - name: sandboxed-containers-operator.v1.10.2
        version: 1.10.2
      - name: sandboxed-containers-operator.v1.10.1
        version: 1.10.1
      - name: sandboxed-containers-operator.v1.10.0
        version: 1.10.0
      - name: sandboxed-containers-operator.v1.9.0
        version: 1.9.0
      - name: sandboxed-containers-operator.v1.8.1
        version: 1.8.1
      - name: sandboxed-containers-operator.v1.7.0
        version: 1.7.0
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.6.0
        version: 1.6.0
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.3
        version: 1.5.3
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.2
        version: 1.5.2
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.1
        version: 1.5.1
      - deprecation:
          message: |
            This bundle is deprecated. Please use the latest stable bundle instead.
        name: sandboxed-containers-operator.v1.5.0
        version: 1.5.0
      name: stable
    - currentCSV: sandboxed-containers-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          certified: "false"
          containerImage: registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:8f30a9129d817c3f4e404d2c43fb47e196d8c8da3badba4c48f65d440a4d7584
          createdAt: "2021-11-22T14:44:50.817336Z"
          olm.skipRange: '>=1.1.0 <1.2.2'
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/sandboxed-containers-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          OpenShift sandboxed containers, based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift's Defense-in-Depth strategy. Click [this link](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5) for
          more information.

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `stable-1.2` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CustomResourceDefinition(CRD) instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/4.9/sandboxed_containers/understanding-sandboxed-containers.html)
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sandboxed-containers
        - kata
        links:
        - name: Sandboxed Containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        maintainers:
        - email: support@redhat.com'
          name: '''Red Hat'
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:ff2bb666c2696fed365df55de78141a02e372044647b8031e6d06e7583478af4
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:8f30a9129d817c3f4e404d2c43fb47e196d8c8da3badba4c48f65d440a4d7584
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:a660f0b54b9139bed9a3aeef3408001c0d50ba60648364a98a09059b466fbcc1
        version: 1.2.2
      deprecation:
        message: |
          The stable-1.2 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.2.2
        version: 1.2.2
      name: stable-1.2
    - currentCSV: sandboxed-containers-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kataconfiguration.openshift.io/v1",
                "kind": "KataConfig",
                "metadata": {
                  "name": "example-kataconfig"
                }
              }
            ]
          capabilities: Seamless Upgrades
          olm.skipRange: '>=1.1.0 <1.3.3'
          operatorframework.io/suggested-namespace: openshift-sandboxed-containers-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/sandboxed-containers-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The kataconfig CR represent a installation of Kata in a cluster
              and its current state.
            kind: KataConfig
            name: kataconfigs.kataconfiguration.openshift.io
            version: v1
        description: |-
          OpenShift sandboxed containers, based on the Kata Containers open source
          project, provides an Open Container Initiative (OCI) compliant container
          runtime using lightweight virtual machines, running your workloads in their own
          isolated kernel and therefore contributing an additional layer of isolation
          back to OpenShift's Defense-in-Depth strategy. Click [this link](https://catalog.redhat.com/software/operators/detail/5ee0d499fdbe7cddc2c91cf5) for
          more information.

          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Features & benefits
          - **Isolated Developer Environments & Privileges Scoping**
            As a developer working on debugging an application using state-of-the-art
            tooling you might need elevated privileges such as `CAP_ADMIN` or `CAP_BPF`. With
            OpenShift sandboxed containers, any impact will be limited to a separate
            dedicated kernel.

          - **Legacy Containerized Workload Isolation**
            You are mid-way in converting a containerized monolith into cloud-native
            microservices. However, the monolith still runs on your cluster unpatched and
            unmaintained. OpenShift sandboxed containers helps isolate it in its own kernel
            to reduce risk.

          - **Safe Multi-tenancy & Resource Sharing (CI/CD Jobs, CNFs, ..)**
            If you are providing a service to multiple tenants, it could mean that the
            service workloads are sharing the same resources (e.g., worker node). By
            deploying in a dedicated kernel, the impact of these workloads have on one
            another is greatly reduced.

          - **Additional Isolation with Native Kubernetes User Experience**
            OpenShift sandboxed containers is used as a compliant OCI runtime.
            Therefore, many operational patterns used with normal containers are still
            preserved including but not limited to image scanning, GitOps, Imagestreams,
            and so on.

          # How to install
            Read the information about the Operator and click Install.

            On the Install Operator page:

            - Select `stable-1.3` from the list of available Update Channel options.
            This ensures that you install the latest version of OpenShift sandboxed containers
            that is compatible with your OpenShift Container Platform version.

            - For Installed Namespace, ensure that the Operator recommended namespace
              option is selected. This installs the Operator in the mandatory
              `openshift-sandboxed-containers-operator` namespace, which is automatically
              created if it does not exist. Attempting to install the OpenShift
              sandboxed containers Operator in a namespace other than
              `openshift-sandboxed-containers-operator` causes the installation to fail.

            - For Approval Strategy, ensure that Automatic, which is the default value,
              is selected. OpenShift sandboxed containers automatically updates when a new
              z-stream release is available.

            - Click Install to make the Operator available to the OpenShift sandboxed
              containers namespace.

            - The OpenShift sandboxed containers Operator is now installed on your
              cluster. You can trigger the Operator by enabling the runtime on your cluster.
              You can do this by creating a `KataConfig` CustomResourceDefinition(CRD) instance. For this click
              on "create instance" on the operator overview page.

          # Documentation
          See the official documentation [here](https://docs.openshift.com/container-platform/latest/sandboxed_containers/understanding-sandboxed-containers.html)
        displayName: OpenShift sandboxed containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - sandboxed-containers
        - kata
        links:
        - name: Sandboxed Containers Operator
          url: https://www.github.com/openshift/sandboxed-containers-operator
        maintainers:
        - email: support@redhat.com'
          name: '''Red Hat'
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-sandboxed-containers/osc-operator-bundle@sha256:8da62ba1c19c905bc1b87a6233ead475b047a766dc2acb7569149ac5cfe7f0f1
        - registry.redhat.io/openshift-sandboxed-containers/osc-rhel8-operator@sha256:5d2b03721043e5221dfb0cf164cf59eba396ba3aae40a56c53aa3496c625eea0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:cb836456974e510eb4bccbffadbc6d99d5f57c36caec54c767a158ffd8a025d5
        version: 1.3.3
      deprecation:
        message: |
          The stable-1.3 channel is deprecated. Please use the 'stable' channel for the latest supported version.
      entries:
      - name: sandboxed-containers-operator.v1.3.3
        version: 1.3.3
      name: stable-1.3
    defaultChannel: stable
    packageName: sandboxed-containers-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MongoDB, Inc
      provider-url: ""
    name: mongodb-enterprise
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-enterprise.v1.33.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "my-replica-set"
                },
                "spec": {
                  "credentials": "my-credentials",
                  "members": 3,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDB",
                "metadata": {
                  "name": "sample-sharded-cluster"
                },
                "spec": {
                  "configServerCount": 3,
                  "credentials": "my-credentials",
                  "mongodsPerShardCount": 3,
                  "mongosCount": 2,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "shardCount": 1,
                  "type": "ShardedCluster",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBMultiCluster",
                "metadata": {
                  "name": "multi-replica-set"
                },
                "spec": {
                  "clusterSpecList": [
                    {
                      "clusterName": "e2e.cluster1.mongokubernetes.com",
                      "members": 2
                    },
                    {
                      "clusterName": "e2e.cluster2.mongokubernetes.com",
                      "members": 1
                    },
                    {
                      "clusterName": "e2e.cluster3.mongokubernetes.com",
                      "members": 2
                    }
                  ],
                  "credentials": "my-credentials",
                  "duplicateServiceObjects": false,
                  "opsManager": {
                    "configMapRef": {
                      "name": "my-project"
                    }
                  },
                  "persistent": true,
                  "type": "ReplicaSet",
                  "version": "4.4.0-ent"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBOpsManager",
                "metadata": {
                  "name": "ops-manager"
                },
                "spec": {
                  "adminCredentials": "ops-manager-admin",
                  "applicationDatabase": {
                    "members": 3,
                    "podSpec": {
                      "cpu": 1
                    }
                  },
                  "configuration": {
                    "mms.fromEmailAddr": "admin@thecompany.com"
                  },
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "version": "6.0.3"
                }
              },
              {
                "apiVersion": "mongodb.com/v1",
                "kind": "MongoDBUser",
                "metadata": {
                  "name": "my-replica-set-x509-user"
                },
                "spec": {
                  "db": "$external",
                  "mongodbResourceRef": {
                    "name": "my-replica-set"
                  },
                  "roles": [
                    {
                      "db": "admin",
                      "name": "dbOwner"
                    }
                  ],
                  "username": "CN=my-replica-set-x509-user,OU=cloud,O=MongoDB,L=New York,ST=New York,C=US"
                },
                "status": {
                  "phase": "Updated"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/mongodb/mongodb-enterprise-operator-ubi@sha256:6d394a5247cc346c4421bd9b37948c0378970dd3f4fc5d6eaac681f4c9655957
          createdAt: "2025-04-15T11:32:47Z"
          description: The MongoDB Enterprise Kubernetes Operator enables easy deploys
            of MongoDB into Kubernetes clusters, using our management, monitoring
            and backup platforms, Ops Manager and Cloud Manager.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.26.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/mongodb/mongodb-enterprise-kubernetes
          support: support@mongodb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MongoDB Deployment
            displayName: MongoDB Deployment
            kind: MongoDB
            name: mongodb.mongodb.com
            version: v1
          - description: MongoDB Multi Deployment
            displayName: MongoDB Multi Deployment
            kind: MongoDBMultiCluster
            name: mongodbmulticluster.mongodb.com
            version: v1
          - description: MongoDB x509 User
            displayName: MongoDB User
            kind: MongoDBUser
            name: mongodbusers.mongodb.com
            version: v1
          - description: MongoDB Ops Manager
            displayName: MongoDB Ops Manager
            kind: MongoDBOpsManager
            name: opsmanagers.mongodb.com
            version: v1
        description: |
          The MongoDB Enterprise Kubernetes Operator enables easy deploys of MongoDB
          into Kubernetes clusters, using our management, monitoring and backup
          platforms, Ops Manager and Cloud Manager.

          ## Before You Start

          To start using the operator you''ll need an account in MongoDB Cloud Manager or
          a MongoDB Ops Manager deployment.

          * [Create a Secret with your OpsManager API key](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-operator-credentials/#procedure)

          * [Create a ConfigMap with your OpsManager project ID and URL](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-project-using-configmap/)

          By installing this integration, you will be able to deploy MongoDB instances
          with a single simple command.

          ## Required Parameters

          * `opsManager` or `cloudManager` - Enter the name of the ConfigMap containing project information
          * `credentials` - Enter the name of the Secret containing your OpsManager credentials
          * `type` - Enter MongoDB Deployment Types ("Standalone", "ReplicaSet", "ShardedCluster"

          ## Supported MongoDB Deployment Types ##

          * Standalone: An instance of mongod that is running as a single server and
          not as part of a replica set, this is, it does not do any kind of
          replication.

          * Replica Set: A replica set in MongoDB is a group of mongod processes that
          maintain the same data set. Replica sets provide redundancy and high
          availability, and are the basis for all production deployments. This section
          introduces replication in MongoDB as well as the components and architecture
          of replica sets. The section also provides tutorials for common tasks
          related to replica sets.

          * Sharded Cluster: The set of nodes comprising a sharded MongoDB deployment.
          A sharded cluster consists of config servers, shards, and one or more mongos
          routing processes. Sharding is a A database architecture that partitions
          data by key ranges and distributes the data among two or more database
          instances. Sharding enables horizontal scaling.

          ## Requirements for deploying MongoDB OpsManager

          * In order to deploy resources of type MongoDB OpsManager, you will need to
          create a secret containing the [credentials](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/plan-om-resource/#om-rsrc-prereqs)
          for the Global Owner user

          ## Security ##

          The operator can enable TLS for all traffic between servers and also between
          clients and servers. Before enabling `security.tls.enabled` to `true` you
          should create your certificates.  or you can leave the operator to create all
          the certificates for you. The operator ability to create certs is been
          deprecated due to Kubernetes API changes.

          For more information, please read the official MongoDB
          Kubernetes Operator  [docs](https://docs.mongodb.com/kubernetes-operator/stable/).
        displayName: MongoDB Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mongodb
        - databases
        - nosql
        links:
        - name: Documentation
          url: https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/index.html
        maintainers:
        - email: support@mongodb.com
          name: MongoDB, Inc
        maturity: stable
        provider:
          name: MongoDB, Inc
        relatedImages:
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:d3248506b6bd6b01c5973ab7bdac51ee41efa0ec8dd6211be4cc0b76a53a40c1
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7aa00dca44559318356627e88440765576dd6706187044edd1f21d0d0dcb0bf6
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:83af86f8098e3c81b6e0879eabd582592ef6cbb1d6592f5e175c0794b9df2a0e
        - quay.io/mongodb/mongodb-enterprise-operator-ubi@sha256:6d394a5247cc346c4421bd9b37948c0378970dd3f4fc5d6eaac681f4c9655957
        - quay.io/mongodb/mongodb-enterprise-init-appdb-ubi@sha256:be4295843d92ce0f325b8daaeb3a5490c11772d0348cbd9ea35a6126d038b7fb
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:985f770667e6c4c083e0c4bb79a948b83efa0cdc4ed3012b1dbf72fe48b38986
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0b2d01d543d38feddcc9d351e711df33a0a5187b22d95cdb926f6015ee1093bd
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:7d93aee462c60cacc4e5e66729f5131c5c0fa434e6e6400c8e2ccac4bd5e20ba
        - quay.io/mongodb/mongodb-agent-ubi@sha256:411f85772e7a4b2c76e21d26d320b7743612080bf0cb4c7900d9a626cfeea33b
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8445d59d491a6d3890ea9c8b421214bcd0fdcfbc420ed40497a790b79f0bc89e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:ca2aaf57d70a0b9d743a6533c4e1b88324056197453de540d3352e679a3c9c92
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0ee80032abe873b330537d4b64511ee76c5efb512af95287f28ddeffab13bb6d
        - quay.io/mongodb/mongodb-enterprise-server@sha256:67238129df09d33ee4746ff1acb5515d699a29d9f42350eae3f3f69ccb7fbf54
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8d7e5361c2a1604dec3fc671d629806fe6ddc6df524b69a441b86933a4b30093
        - quay.io/mongodb/mongodb-enterprise-server@sha256:7885ab6e88214f9289d8babf5189136dde0dd4c84a15a5481ccd3ef512b2e66f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:a48a4d5c275fd669a27469649fb39ea38c728dbcf9f0a9da4e7cf27a2ce912ed
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c54eeb910855594ed4bf5dcbbbcc14aa6f733e97313896a8381fb4be6aeac583
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d323c1bcd14118cc537ac282996ea5a58756d20b6b73f1eec0efa8710d246077
        - quay.io/mongodb/mongodb-enterprise-server@sha256:19925e1297ab652db59c35f53e7b7c8b2b277f8ecdc4215682961aaf2b3e924e
        - quay.io/mongodb/mongodb-agent-ubi@sha256:bd868284d9dfcb7c5a20e1160218d0172358384229b556c37e0789af0030eb24
        - quay.io/mongodb/mongodb-enterprise-server@sha256:1d418c65d82ccad205b7889be4ba161d3cbfa8b1fb75b21c8fcf02de38fad9ca
        - quay.io/mongodb/mongodb-enterprise-server@sha256:13186ad45a2ba3ab55ed5c2a008eca494ee3937c8519475379476cc8e6f1d055
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa8683500e8d3632c4588bbcdddb4e3186a01f48aefe1b6d95f8860dae8b6c76
        - quay.io/mongodb/mongodb-agent-ubi@sha256:9d1f21df008b14ca721c9ed0ff905af23e1a56b64cd4eddab4df1e8e9b63df8c
        - quay.io/mongodb/mongodb-enterprise-server@sha256:110a560f5a0ebe1fde1b2c20ae5ff5638682229d1c8656b993bdaf7b71eb94bc
        - quay.io/mongodb/mongodb-enterprise-server@sha256:3add8b68bfbaa42596fe5dbbee4623ba5ff1a826b18bb71301525adf574dcb94
        - quay.io/mongodb/mongodb-agent-ubi@sha256:23d962d038888c6aba5540c8f5d81d7e86c4ccfaa07b9e159825d98676609f8e
        - quay.io/mongodb/mongodb-agent-ubi@sha256:85f883076bc8edc516800704e2290c54b1bee14a9a533df84928c7ce1ae807d2
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:c9a211a2c31b97eed3a25a814198547f2aa3470df93d661ca3700b828100d8de
        - quay.io/mongodb/mongodb-agent-ubi@sha256:6d007271faed24bdf06eb64f2b54e5cdc3e11ce71840a7f586dabe2ee02c640e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:83db493ac6158d654d3ce55619f312d53cfbac258e0faf22e9110ca004e174bd
        - quay.io/mongodb/mongodb-agent-ubi@sha256:8c11348eac180f5faa113db2804817302ec78847472e1891b063744adba4aa60
        - quay.io/mongodb/mongodb-agent-ubi@sha256:0f8d102780a9d2ce54b7453f9575d0e24b15f014cd9b74816b1e6a4090b979b2
        - quay.io/mongodb/mongodb-enterprise-server@sha256:584255582db31d0bb1f9593feb3b675d934d8750766fc98d3a1b3340feae4995
        - quay.io/mongodb/mongodb-enterprise-server@sha256:8f8735d377d214f64961381b5b1ed7cd3c306e6354dbc6b45c51134a25444b93
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f1bae6375f846af6fca7faeeff4aedf9fab41a9d45b515ba74e9fd7336408617
        - quay.io/mongodb/mongodb-agent-ubi@sha256:f5f3b14ee6533b21d89d9ed6d4af47dbdee9e071f909dc686dfcdf6742179e46
        - quay.io/mongodb/mongodb-enterprise-server@sha256:ef732e3eea91cc86caf2eabedc0c9115ed235a8d204f33e74bbf090a0b0259fb
        - registry.connect.redhat.com/mongodb/enterprise-operator-bundle@sha256:23c3c8387eb9377b52327d7193f59eeea5831f4050248b3cbb54cbcd9437fc71
        - quay.io/mongodb/mongodb-agent-ubi@sha256:66b49d9dce414dcd657c3550b26f71964b82edfb67a41a3ce8d2386b04ef07e8
        - quay.io/mongodb/mongodb-agent-ubi@sha256:c96ad084edbdc6a6d907f57795fa38f39199b730328dbc64997d56ea50d55dfc
        - quay.io/mongodb/mongodb-agent-ubi@sha256:bd7edb8d0931dd952524f1f0ef99f61b0f69385d9e61efd034a4f45fd315a40b
        - quay.io/mongodb/mongodb-agent-ubi@sha256:766e6cbeec27f995211aa509ff7f118b6945f3e728141f28f9c4ea0dd2297af5
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d876f57ea45582e84748b02459748e440af443a7eb0882585638973409c08f6a
        - quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi@sha256:6ccc8148c266a9037ea744e8d19875146b1c231909f29a8f01c7ce415ca15936
        - quay.io/mongodb/mongodb-agent-ubi@sha256:36c84115c6c645fd7d65d1004d2507ef3592aa1f07176645b1ee8e8b2a4f5f73
        - quay.io/mongodb/mongodb-agent-ubi@sha256:575a43be4c667f3249f46f1fdcc06dd2e68cacc9eed989da0f6edd7e214d51b7
        - quay.io/mongodb/mongodb-enterprise-server@sha256:15e31285c8949a4666f7702df53416b0905d76945a28575a6028a876cc8a6f0f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:b2bd8eb7f8b96adb874468ff1b0ebae2db4ebe490b6e1da4c9a6c5108f813ff5
        - quay.io/mongodb/mongodb-enterprise-database-ubi@sha256:e2ca129f04ad6bf4e0dbb988badb083187725f28bac01bb7080cc80cad9ac316
        - quay.io/mongodb/mongodb-agent-ubi@sha256:97bb6bb5ecd5a802e8a91e69aa10d8bde0f648b106dc5591d49ee94209822daa
        - quay.io/mongodb/mongodb-enterprise-server@sha256:37af0913742b6de339c7e664b30f35dcef04506529e4a09a9bbbdd57643f7149
        - quay.io/mongodb/mongodb-enterprise-server@sha256:b00ac773623e1bf422b47e6d783263d2d08737865abe9abbe106d86d1ea25165
        - quay.io/mongodb/mongodb-enterprise-server@sha256:9a3a6496be0d2d446e6d654eb56386c7726e0cd2d7232f6dcec579923edf0014
        - quay.io/mongodb/mongodb-enterprise-server@sha256:85c1d669c073caf9cbaac815e4c8ea2ca18b71deefa03bf84cd6d8b8ebd53e12
        - quay.io/mongodb/mongodb-enterprise-server@sha256:f2d9a3264a8814f33143b73c56624572fb80afeab184133d3a901713a31c1a87
        - quay.io/mongodb/mongodb-enterprise-server@sha256:523566f44cbb6bbf0cd12b1adae939a883f2254c78dc4b8c9d0098581337b1db
        - quay.io/mongodb/mongodb-enterprise-server@sha256:33a30d11969eb21952681108092fe7f916e25c8e1de43e6a4e40e126025a2bec
        - quay.io/mongodb/mongodb-enterprise-server@sha256:db63f6d93e03a3e644ef6ef4846ed7d24576c688ffb584226c78e1d1fba38878
        - quay.io/mongodb/mongodb-agent-ubi@sha256:5119a1ceeae6440dbe88b89550a7ae18de8e85c9a2059f467ad66adf7ec5d75f
        - quay.io/mongodb/mongodb-agent-ubi@sha256:2395fe9d38a1a9160f7cb2f400b776ea3fc2e72187d23b6dee7fd1e4fb9ca721
        - quay.io/mongodb/mongodb-agent-ubi@sha256:3b57a03dc17a301fda86c8afed1917c10d9b98947680116399c975ece944f5de
        - quay.io/mongodb/mongodb-enterprise-server@sha256:605dcca06a45e5ea127edb9ff262a1c3ddafdab2f30b6d3a18f73bfb8a6acdb0
        - quay.io/mongodb/mongodb-enterprise-server@sha256:dfd4277f0c16ed476ac7de51894739e8c8d13a65ea5024b9a97b3dce0f6c6975
        - quay.io/mongodb/mongodb-agent-ubi@sha256:2dbaaece4dd48087370e43d9bcf6b0a0312f86cb5dfe916e8725323bd5401992
        - quay.io/mongodb/mongodb-enterprise-server@sha256:cd0cdf1b2a58f4c3b514e602cc1d96543410f631825045bbf65bd3fb84113f1f
        - quay.io/mongodb/mongodb-enterprise-server@sha256:172e338a43df01ee5408d8d1e3cb038d2c55e77761c1a2ac6ed37959d1525140
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:2be0c6c89898b18618932b6a6303aeefdde60f48ec37d5c1fca5b8d04a00fd78
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d49417ea85ee1ddb84429552a5aac87a82c2843904d8c0300a43b657b7a49e0e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:5421e00c0935b7a9ced51a11e935773ef5df4d259f3e1b1930fbf2f1b9d46586
        - quay.io/mongodb/mongodb-agent-ubi@sha256:695074fbbfcadf454230b80fbf1094260e631f6108cefb2050473edaee2a217a
        - quay.io/mongodb/mongodb-agent-ubi@sha256:03763de5018fd5fa14843444d24adfc5e387605970b531801ef2d0916233a010
        - quay.io/mongodb/mongodb-agent-ubi@sha256:8467b1c2924a19929fc101ef2ff8d7e53cb0115a0cdc2e371dc0733bd0262395
        - quay.io/mongodb/mongodb-agent-ubi@sha256:d927afa9d3d569d943518f0a684e19afd4adb0875f55df7c904b9dd019589e5e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:fb8397cbcdbf7c33f6ad142492792771127f0d9a8c46388f350b6927405ee590
        - quay.io/mongodb/mongodb-enterprise-server@sha256:35b263861d6ea66b541abc190ce1aaf4d4e36f128e5d8ba2a5e9fa8e25d84446
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:f64d99a77d6a6b9ed10de9a28b1b8b8155414eca2e561f3fdb04bd66914fb3c5
        - quay.io/mongodb/mongodb-enterprise-server@sha256:655896bac9e82de8e9729d59a36c3a31f66235f22b93449260a2ccb7709de084
        - quay.io/mongodb/mongodb-enterprise-server@sha256:df6081325ea2fe01d1b27d0c70005dec8232aaf51a43d91661b722b8a1761263
        - quay.io/mongodb/mongodb-agent-ubi@sha256:442f5d99d02674099525abaa69daa42cec758ce5554198f978927aa5c49006c8
        - quay.io/mongodb/mongodb-enterprise-server@sha256:aa300abf739e26350a258f643fa8e57aedacd041055c7b923bd22b21ef554cdb
        - quay.io/mongodb/mongodb-agent-ubi@sha256:b23cfa639c5a4d20381245772dfe396ec915af3a3046df5d9b10016b900431f5
        - quay.io/mongodb/mongodb-agent-ubi@sha256:b175972792aa1be268d5fb3cf3ad0156f4aecffa323e1b473360fc2a3a8d8891
        - quay.io/mongodb/mongodb-agent-ubi@sha256:ee150e969c0bb786969c7e0a45fb1812766b752aee539072e28648817826433b
        - quay.io/mongodb/mongodb-agent-ubi@sha256:31cfefd2660da3efe1b6d63e39090464c28ae006d6ed1dffb2189a09183b9c61
        - quay.io/mongodb/mongodb-agent-ubi@sha256:6ebe232ed0ea87045792e578ecb11dd46411333ad0ea61383c247704b4a0efe9
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:2127d7f2684ae36b123422f55237055aad02fdb71c4c21a5b8f0b0f6d8baedfc
        - quay.io/mongodb/mongodb-enterprise-ops-manager-ubi@sha256:dfec259209995bb040a1eff1fcafb1d6c3fdd145129f12c04a56ec74834b80a6
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c07f20f8e7a5479e43cac7c74fc9f18cb4d4a1bd8b6b46f7dcc6f7ec7525fe28
        - quay.io/mongodb/mongodb-agent-ubi@sha256:7144ac5e5038e92a6d142bf39eba46554c1b5fafeb8ea59f0390896a0d35ed17
        - quay.io/mongodb/mongodb-agent-ubi@sha256:c03e4a7663206f54c5ef39974502816f66d8d64936c19849f0337ea4547e614e
        - quay.io/mongodb/mongodb-enterprise-server@sha256:c752a7f0726d21d55f204a359b85fa29cd727a5fe571b37289ae3ea52d6206b0
        - quay.io/mongodb/mongodb-enterprise-server@sha256:0fde236fe26d5b20210d6f246aadacd7845874712def516cbe2eec11d79d5181
        - quay.io/mongodb/mongodb-enterprise-server@sha256:11ab324698f919f84a5dab5a964d93fe63f98a48146bb3b86974cba7606d30ec
        - quay.io/mongodb/mongodb-agent-ubi@sha256:38175af108178d89e4d3359ee2754534e5e9b24e843f12711fc14fe1dead516a
        - quay.io/mongodb/mongodb-enterprise-init-database-ubi@sha256:ab12a330e6b40735ee516168073887a4f37b58694bd10026a451eb9972e55500
        - quay.io/mongodb/mongodb-enterprise-server@sha256:d21c65780cadc9d8668d2c28935d492625d6993f13ba562722200a819281cbcc
        version: 1.33.0
      entries:
      - name: mongodb-enterprise.v1.33.0
        version: 1.33.0
      - name: mongodb-enterprise.v1.32.0
        version: 1.32.0
      - name: mongodb-enterprise.v1.31.0
        version: 1.31.0
      - name: mongodb-enterprise.v1.30.0
        version: 1.30.0
      - name: mongodb-enterprise.v1.29.0
        version: 1.29.0
      - name: mongodb-enterprise.v1.28.0
        version: 1.28.0
      - name: mongodb-enterprise.v1.27.0
        version: 1.27.0
      - name: mongodb-enterprise.v1.26.0
        version: 1.26.0
      - name: mongodb-enterprise.v1.25.0
        version: 1.25.0
      - name: mongodb-enterprise.v1.24.0
        version: 1.24.0
      - name: mongodb-enterprise.v1.23.0
        version: 1.23.0
      - name: mongodb-enterprise.v1.22.0
        version: 1.22.0
      - name: mongodb-enterprise.v1.21.0
        version: 1.21.0
      - name: mongodb-enterprise.v1.20.1
        version: 1.20.1
      - name: mongodb-enterprise.v1.19.1
        version: 1.19.1
      - name: mongodb-enterprise.v1.18.0
        version: 1.18.0
      - name: mongodb-enterprise.v1.17.2
        version: 1.17.2
      - name: mongodb-enterprise.v1.17.1
        version: 1.17.1
      - name: mongodb-enterprise.v1.17.0
        version: 1.17.0
      - name: mongodb-enterprise.v1.16.4
        version: 1.16.4
      - name: mongodb-enterprise.v1.16.3
        version: 1.16.3
      - name: mongodb-enterprise.v1.16.2
        version: 1.16.2
      - name: mongodb-enterprise.v1.16.1
        version: 1.16.1
      name: stable
    defaultChannel: stable
    packageName: mongodb-enterprise
    provider:
      name: MongoDB, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio
      provider-url: ""
    name: apicurio-api-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-api-controller.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry3",
                "metadata": {
                  "name": "example-registry-with-studio"
                },
                "spec": {
                  "app": {
                    "host": "example-registry-with-studio-app.apps.yourcluster.example"
                  },
                  "studioUi": {
                    "enabled": true,
                    "host": "example-registry-with-studio-studio-ui.apps.yourcluster.example"
                  },
                  "ui": {
                    "host": "example-registry-with-studio-ui.apps.yourcluster.example"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurio-registry-operator:3.0.5
          createdAt: "2024-12-03T11:30:52Z"
          description: Deploy and manage Apicurio API Controller on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/Apicurio/apicurio-registry/tree/main/operator
          support: Apicurio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry3 represents an instance of Apicurio API
              Controller.
            displayName: Apicurio Registry 3
            kind: ApicurioRegistry3
            name: apicurioregistries3.registry.apicur.io
            version: v1
        description: |
          ## Apicurio API Controller

          Apicurio API Controller consists of 2 components:
           - Apicurio Registry 3
           - Apicurio Studio

          Storage options: PostgreSQL, Kafka, MySQL, SQL Server, in-memory.

          ## Apicurio API Controller Operator

          Provides a quick and easy way to deploy and manage Apicurio API Controller on Kubernetes.

          **Features**
          - Supports installation and configuration of Apicurio API Controller
          - Perform a rolling upgrade of Apicurio API Controller

          ## Prerequisites

          This operator does not deploy storage for Apicurio API Controller. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Apicurio API Controller and Apicurio API Controller Operator are licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry/blob/main/LICENSE)
        displayName: Apicurio API Controller
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - API Management
        - Apicurio Registry
        - Apicurio Studio
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Apicurio
        relatedImages:
        - quay.io/apicurio/apicurio-registry-operator:3.0.5
        - quay.io/community-operator-pipeline-prod/apicurio-api-controller@sha256:c783cd6db1ae5a6152848f5e4258e89b37077a177199be905d0cfe451a48e5ef
        version: 0.0.1
      entries:
      - name: apicurio-api-controller.v0.0.1
        version: 0.0.1
      name: 0.x
    defaultChannel: 0.x
    packageName: apicurio-api-controller
    provider:
      name: Apicurio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-custom-metrics-autoscaler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: custom-metrics-autoscaler.v2.17.2-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eventing.keda.sh/v1alpha1",
                "kind": "CloudEventSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "keda",
                    "app.kubernetes.io/instance": "cloudeventsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cloudeventsource",
                    "app.kubernetes.io/part-of": "keda"
                  },
                  "name": "cloudeventsource-sample"
                },
                "spec": {
                  "clusterName": "cluster-sample",
                  "destination": {
                    "http": {
                      "uri": "http://foo.bar"
                    }
                  }
                }
              },
              {
                "apiVersion": "eventing.keda.sh/v1alpha1",
                "kind": "ClusterCloudEventSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "keda",
                    "app.kubernetes.io/instance": "clustercloudeventsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "clustercloudeventsource",
                    "app.kubernetes.io/part-of": "keda"
                  },
                  "name": "clustercloudeventsource-sample"
                },
                "spec": {
                  "clusterName": "clustercluster-sample",
                  "destination": {
                    "http": {
                      "uri": "http://foo.bar"
                    }
                  }
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ClusterTriggerAuthentication",
                "metadata": {
                  "name": "example-clustertriggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "example-secret-parameter"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "KedaController",
                "metadata": {
                  "name": "keda",
                  "namespace": "openshift-keda"
                },
                "spec": {
                  "admissionWebhooks": {
                    "logEncoder": "console",
                    "logLevel": "info"
                  },
                  "metricsServer": {
                    "logLevel": "0"
                  },
                  "operator": {
                    "logEncoder": "console",
                    "logLevel": "info"
                  },
                  "serviceAccount": null,
                  "watchNamespace": ""
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledJob",
                "metadata": {
                  "name": "scaledjob-sample"
                },
                "spec": {
                  "failedJobsHistoryLimit": 5,
                  "jobTargetRef": {
                    "activeDeadlineSeconds": 600,
                    "backoffLimit": 6,
                    "completions": 1,
                    "parallelism": 1,
                    "template": null
                  },
                  "maxReplicaCount": 100,
                  "pollingInterval": 30,
                  "successfulJobsHistoryLimit": 5,
                  "triggers": [
                    {
                      "metadata": {
                        "property": "example-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledObject",
                "metadata": {
                  "name": "example-scaledobject"
                },
                "spec": {
                  "cooldownPeriod": 300,
                  "maxReplicaCount": 100,
                  "minReplicaCount": 0,
                  "pollingInterval": 30,
                  "scaleTargetRef": {
                    "name": "example-deployment"
                  },
                  "triggers": [
                    {
                      "metadata": {
                        "property": "example-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "TriggerAuthentication",
                "metadata": {
                  "name": "example-triggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "example-secret-parameter"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Cloud Provider
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9-operator@sha256:f281ddee3c9d29e2b55afc734fd238d443c21b4b4824e35b50aaf31cf126b819
          createdAt: 07 Oct 2025, 19:50
          description: Custom Metrics Autoscaler Operator, an event-driven autoscaler
            based upon KEDA
          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: "true"
          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.skipRange: '>=2.7.1 <2.17.2-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-keda
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/custom-metrics-autoscaler-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CloudEventSource
            name: cloudeventsources.eventing.keda.sh
            version: v1alpha1
          - kind: ClusterCloudEventSource
            name: clustercloudeventsources.eventing.keda.sh
            version: v1alpha1
          - description: Describes cluster wide authentication parameters
            displayName: ClusterTriggerAuthentication
            kind: ClusterTriggerAuthentication
            name: clustertriggerauthentications.keda.sh
            version: v1alpha1
          - description: |
              Represents an installation of a particular version of KEDA Controller.
            displayName: KedaController
            kind: KedaController
            name: kedacontrollers.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your jobs and what the triggers
            displayName: ScaledJob
            kind: ScaledJob
            name: scaledjobs.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your application and what the
              triggers are
            displayName: ScaledObject
            kind: ScaledObject
            name: scaledobjects.keda.sh
            version: v1alpha1
          - description: Describes authentication parameters
            displayName: TriggerAuthentication
            kind: TriggerAuthentication
            name: triggerauthentications.keda.sh
            version: v1alpha1
        description: |
          ## About the managed application
          Custom Metrics Autoscaler for OpenShift is an event driven autoscaler based upon KEDA.  Custom Metrics Autoscaler can monitor event sources like Kafka, RabbitMQ, or cloud event sources and feed the metrics from those sources into the Kubernetes horizontal pod autoscaler.  With Custom Metrics Autoscaler, you can have event driven and serverless scale of deployments within any Kubernetes cluster.
          ## About this Operator
          The Custom Metrics Autoscaler Operator deploys and manages installation of KEDA Controller in the cluster. Install this operator and follow installation instructions on how to install Custom Metrics Autoscaler in your cluster.

          ## Prerequisites for enabling this Operator
          ## How to install Custom Metrics Autoscaler in the cluster
          The installation of Custom Metrics Autoscaler is triggered by the creation of `KedaController` resource. Please refer to the [KedaController Spec](https://github.com/openshift/custom-metrics-autoscaler-operator/blob/main/README.md#the-kedacontroller-custom-resource) for more details on available options.

          Only a resource named `keda` in the namespace where the operator is installed will trigger the installation, reconfiguration or removal of the KEDA Controller resource.

          There should be only one KEDA Controller in the cluster.

          The operator will behave in this manner whether it is installed with the `AllNamespaces` or `OwnNamespace` install mode. While the operator more closely matches the `OwnNamespace` semantics, `AllNamespaces` is a supported installation mode to allow it to be installed to namespaces with existing `OperatorGroups` which require that installation mode, such as `openshift-operators`.
        displayName: Custom Metrics Autoscaler
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - keda
        - scaling
        - event
        links:
        - name: Custom Metrics Autoscaler Documentation
          url: https://docs.openshift.com/container-platform/latest/nodes/cma/nodes-cma-autoscaling-custom.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9-operator@sha256:f281ddee3c9d29e2b55afc734fd238d443c21b4b4824e35b50aaf31cf126b819
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-rhel9@sha256:3216b5b55e1b068d31154cb806fcaf8233663af209d355975b7374157d265f4e
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-operator-bundle@sha256:3682a40a5309c9eb7507082a55164679e3e47e40b5368ffba7727361600ff02b
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-adapter-rhel9@sha256:b9401d749596bbf112e62e6a59b991bf1e156e70bb7e8bb8f81f274a4ad01986
        - registry.redhat.io/custom-metrics-autoscaler/custom-metrics-autoscaler-admission-webhooks-rhel9@sha256:a562d423b2b1d7b8b12d5497c9d665dcb530c0ec7a63f47122fef9ca4be17826
        version: 2.17.2-2
      entries:
      - name: custom-metrics-autoscaler.v2.17.2-2
        version: 2.17.2-2
      - name: custom-metrics-autoscaler.v2.17.2-1
        version: 2.17.2-1
      - name: custom-metrics-autoscaler.v2.15.1-6
        version: 2.15.1-6
      - name: custom-metrics-autoscaler.v2.15.1-4
        version: 2.15.1-4
      - name: custom-metrics-autoscaler.v2.14.1-467
        version: 2.14.1-467
      - name: custom-metrics-autoscaler.v2.14.1-454
        version: 2.14.1-454
      - name: custom-metrics-autoscaler.v2.13.1-427
        version: 2.13.1-427
      - name: custom-metrics-autoscaler.v2.12.1-394
        version: 2.12.1-394
      - name: custom-metrics-autoscaler.v2.11.2-322
        version: 2.11.2-322
      - name: custom-metrics-autoscaler.v2.11.2-311
        version: 2.11.2-311
      - name: custom-metrics-autoscaler.v2.10.1-267
        version: 2.10.1-267
      name: stable
    defaultChannel: stable
    packageName: openshift-custom-metrics-autoscaler-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Fujitsu
      provider-url: https://www.postgresql.fastware.com/
    name: fujitsu-enterprise-postgres-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fujitsu-enterprise-postgres-operator.v5.1.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPAction",
                "metadata": {
                  "name": "new-fep-action"
                },
                "spec": {
                  "fepAction": {
                    "args": [
                      "new-fep-sts-0",
                      "new-fep-sts-1"
                    ],
                    "type": "reload"
                  },
                  "sysExtraEvent": true,
                  "sysExtraLogging": false,
                  "targetClusterName": "new-fep"
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPExporter",
                "metadata": {
                  "name": "new-fep-exporter"
                },
                "spec": {
                  "fepExporter": {
                    "exporterLogLevel": "error",
                    "fepClusterList": [
                      "new-fep1"
                    ],
                    "image": {
                      "pullPolicy": "IfNotPresent"
                    },
                    "mcSpec": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "700Mi"
                      },
                      "requests": {
                        "cpu": "200m",
                        "memory": "512Mi"
                      }
                    },
                    "restartRequired": false,
                    "sysExtraEvent": true,
                    "sysExtraLogging": false,
                    "userCustomQueries": "usr_example:\n  query: \"SELECT EXTRACT(EPOCH FROM (now() - pg_last_xact_replay_timestamp())) as lag\"\n  master: true\n  metrics:\n    - lag:\n        usage: \"GAUGE\"\n        description: \"Replication lag behind master in seconds\""
                  }
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPLogging",
                "metadata": {
                  "name": "new-fep-logging"
                },
                "spec": {
                  "fepLogging": {
                    "image": {
                      "pullPolicy": "IfNotPresent"
                    },
                    "mcSpec": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "700Mi"
                      },
                      "requests": {
                        "cpu": "200m",
                        "memory": "512Mi"
                      }
                    },
                    "restartRequired": false,
                    "sysExtraEvent": true,
                    "sysExtraLogging": false
                  }
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPPgpool2",
                "metadata": {
                  "name": "new-fep-pgpool2"
                },
                "spec": {
                  "count": 2,
                  "customhba": "local   all         all                               trust\nhost    all         all         127.0.0.1/32          trust\nhost    all         all         ::1/128               trust\n",
                  "customlogsize": "128Mi",
                  "customparams": "listen_addresses = '*'\npcp_listen_addresses = '*'\nnum_init_children = 32\nreserved_connections = 0\nenable_pool_hba = off\nallow_clear_text_frontend_auth = off\nauthentication_timeout = 80\nbackend_weight0 = 1\nbackend_weight1 = 1\nbackend_flag0 = 'ALWAYS_PRIMARY'\nbackend_flag1 = 'DISALLOW_TO_FAILOVER'\nconnection_cache = on\nmax_pool = 4\nlisten_backlog_multiplier = 2\nserialize_accept = off\nchild_life_time = 300\nclient_idle_limit = 0\nchild_max_connections = 0\nconnection_life_time = 0\nreset_query_list = 'ABORT; DISCARD ALL'\nclient_min_messages = info\nlog_min_messages = debug1\nlog_statement = on\nlog_per_node_statement = on\nlog_client_messages = on\nlog_hostname = on\nlog_connections = on\nlog_line_prefix = '%t: pid %p: '\nload_balance_mode = on\nignore_leading_white_space = on\nwhite_function_list = ''\nblack_function_list = 'currval,lastval,nextval,setval'\nblack_query_pattern_list = ''\ndatabase_redirect_preference_list = ''\napp_name_redirect_preference_list = ''\nallow_sql_comments = off\ndisable_load_balance_on_write = 'transaction'\nstatement_level_load_balance = on\nsr_check_period = 0\nsr_check_user = 'postgres'\ndelay_threshold = 0\nlog_standby_delay = 'none'\nssl = on\nssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL'\nssl_prefer_server_ciphers = off\nssl_ecdh_curve = 'prime256v1'\nssl_dh_params_file = ''\nrelcache_expire = 0\nrelcache_size = 256\ncheck_temp_table = catalog\ncheck_unlogged_table = on\nenable_shared_relcache = off\nrelcache_query_target = primary\nwd_port0 = 9000\nfailover_on_backend_error = off\n",
                  "custompcp": "none",
                  "customsslcacert": "none",
                  "customsslcert": "-----BEGIN CERTIFICATE-----\nMIIDTzCCAjegAwIBAgIUYssQ8I74US5g+1+Z7CHuaDgkZnEwDQYJKoZIhvcNAQEL\nBQAwNzEQMA4GA1UECgwHRnVqaXRzdTEjMCEGA1UEAwwaRkVQIFJvb3QgQ0EgZm9y\nIEt1YmVybmV0ZXMwHhcNMjEwMjA2MDM1MjI4WhcNMzEwMjA0MDM1MjI4WjA3MRAw\nDgYDVQQKDAdGdWppdHN1MSMwIQYDVQQDDBpGRVAgUm9vdCBDQSBmb3IgS3ViZXJu\nZXRlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMs97gUF0xkUzCgL\n7MiiDju9ySr/ziwjvcYU7jA9ML+SLmftMs3HtcYbAmSntqI+MDBSR/FAJTOoytuT\npV+mCFcGj2YAjDpliHPeNcUpbryy4YMChF3+MovkIwGCksxo5rhiWhGmoBYpA48P\n4Xe8SPlzqMzhFvNeKzyiUhvjutS2Y1Ss38lsTaurFPx64vQ2PaC54XzdwMptXtpb\ntYmWSzCpJWwxZ6lF3vitdA2w0tnBWNyctAd0+RIM/fvArxiIqseAux9t0uogm5to\nlRIhvekuxOpXBPEqtIYQ4j9XUW2JH8vUDnzPkPvjrq+A3Ug8OyyfGVrW7+VYXozu\nc4aP7P0CAwEAAaNTMFEwHQYDVR0OBBYEFBzCutQ7S74WEhS5V2sNEJBGyLpmMB8G\nA1UdIwQYMBaAFBzCutQ7S74WEhS5V2sNEJBGyLpmMA8GA1UdEwEB/wQFMAMBAf8w\nDQYJKoZIhvcNAQELBQADggEBAMDwD85RAaWEBptFgLzKw+9xEUy1vcZaonAuA1qc\nT342XTueyAugxkC11HwdCGgGS34VyctfMGqj4AW6pA2ez4tLrbOps4DmV4sw8uBL\n8pgRDgfly3ob9FEg2wa0hmrwX9jH5Bt4vySUE2785uPAqaspT2UNtTBxS85BUi1T\nsKId2Rtil6an281Z81wyWVI6Jm2D4MG0mbsiGcTPlCtdg/UljvDYymXlAvd4vNhl\nk9hDa13TgDqJKgKdTIcmZoNQdpEVgFcO0h9AEUy5AuLqxHq60dLfZ6ESGPlMI7Lm\ni4PzYbCnBmOe+7TnHcPSyrnehs66Ik+oifRd82eYS7vKjFw=\n-----END CERTIFICATE-----",
                  "customsslkey": "none",
                  "fepclustername": "new-fep",
                  "imagePullPolicy": "IfNotPresent",
                  "limits": {
                    "cpu": "400m",
                    "memory": "512Mi"
                  },
                  "requests": {
                    "cpu": "200m",
                    "memory": "256Mi"
                  },
                  "serviceport": 9999,
                  "statusport": 9898
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v1",
                "kind": "FEPRestore",
                "metadata": {
                  "name": "new-fep-restore"
                },
                "spec": {
                  "fromFEPcluster": "new-fep",
                  "imagePullPolicy": "IfNotPresent",
                  "mcSpec": {
                    "limits": {
                      "cpu": "200m",
                      "memory": "300Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "200Mi"
                    }
                  },
                  "restoretype": "latest",
                  "sysExtraEvent": true,
                  "sysExtraLogging": false,
                  "toFEPcluster": "new-fep-2"
                }
              },
              {
                "apiVersion": "fep.fujitsu.io/v2",
                "kind": "FEPCluster",
                "metadata": {
                  "name": "new-fep"
                },
                "spec": {
                  "fep": {
                    "customAnnotations": {
                      "allDeployments": {}
                    },
                    "forceSsl": true,
                    "image": {
                      "pullPolicy": "IfNotPresent"
                    },
                    "instances": 1,
                    "mcSpec": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "700Mi"
                      },
                      "requests": {
                        "cpu": "200m",
                        "memory": "512Mi"
                      }
                    },
                    "podAntiAffinity": false,
                    "podDisruptionBudget": false,
                    "servicePort": 27500,
                    "syncMode": "off",
                    "sysExtraEvent": true,
                    "sysExtraLogging": false,
                    "usePodName": true
                  },
                  "fepChildCrVal": {
                    "backup": {
                      "image": {
                        "pullPolicy": "IfNotPresent"
                      },
                      "mcSpec": {
                        "limits": {
                          "cpu": 0.2,
                          "memory": "300Mi"
                        },
                        "requests": {
                          "cpu": 0.1,
                          "memory": "200Mi"
                        }
                      },
                      "pgbackrestParams": "# if log volume is not defined, log_directory should be\n# changed to '/database/userdata/data/log'\n[global]\nrepo1-retention-full=7\nrepo1-retention-full-type=time\nlog-path=/database/log/backup\n",
                      "postScript": " ",
                      "preScript": " ",
                      "schedule": {
                        "num": 2
                      },
                      "schedule1": {
                        "schedule": "15 0 * * 0",
                        "type": "full"
                      },
                      "schedule2": {
                        "schedule": "15 0 * * 1-6",
                        "type": "incr"
                      },
                      "schedule3": {
                        "schedule": " ",
                        "type": " "
                      },
                      "schedule4": {
                        "schedule": " ",
                        "type": " "
                      },
                      "schedule5": {
                        "schedule": " ",
                        "type": " "
                      }
                    },
                    "customPgAudit": "# define pg audit custom params here to override defaults.\n# if log volume is not defined, log_directory should be\n# changed to '/database/userdata/data/log'\n[output]\nlogger = 'auditlog'\nlog_directory = '/database/log/audit'\nlog_truncate_on_rotation = on\nlog_filename = 'pgaudit-%a.log'\nlog_rotation_age = 1d\nlog_rotation_size = 0\n[rule]\n",
                    "customPgHba": "# define pg_hba custom rules here to be merged with default rules.\n# TYPE     DATABASE        USER        ADDRESS        METHOD\n",
                    "customPgParams": "# define custom postgresql.conf parameters below to override defaults.\n# Current values are as per default FEP deployment\n# If you add a library to shared_preload_libraries, add it after the default value.\n# fsep_operator_security is available in FEP15 and later container images.\nshared_preload_libraries='pgx_datamasking,pg_prewarm,pg_stat_statements,fsep_operator_security'\nsession_preload_libraries='pg_prewarm'\nmax_prepared_transactions = 100\nmax_worker_processes = 30\nmax_connections = 100\nwork_mem = 1MB\nmaintenance_work_mem = 12MB\nshared_buffers = 128MB\neffective_cache_size = 384MB\ncheckpoint_completion_target = 0.8\n# tcp parameters\ntcp_keepalives_idle = 30\ntcp_keepalives_interval = 10\ntcp_keepalives_count = 3\n# logging parameters in default fep installation\n# if log volume is not defined, log_directory should be\n# changed to '/database/userdata/data/log'\nlog_directory = '/database/log'\nlog_filename = 'logfile-%a.log'\nlog_file_mode = 0600\nlog_truncate_on_rotation = on\nlog_rotation_age = 1d\nlog_rotation_size = 0\nlog_checkpoints = on\nlog_line_prefix = '%e %t [%p]: [%l-1] user=%u,db=%d,app=%a,client=%h'\nlog_lock_waits = on\nlog_autovacuum_min_duration = 60s\nlogging_collector = on\npgaudit.config_file='/opt/app-root/src/pgaudit-cfg/pgaudit.conf'\nlog_replication_commands = on\nlog_min_messages = WARNING\nlog_destination = csvlog\n# wal_archive parameters in default fep installation\narchive_mode = on\narchive_command = 'pgbackrest --stanza=backupstanza --config=/database/userdata/pgbackrest.conf archive-push %p'\nwal_level = replica\nmax_wal_senders = 12\nwal_keep_segments = 64\ntrack_activities = on\ntrack_counts = on\npassword_encryption = 'md5'\n",
                    "storage": {
                      "archivewalVol": {
                        "size": "1Gi"
                      },
                      "backupVol": {
                        "size": "2Gi"
                      },
                      "dataVol": {
                        "size": "2Gi"
                      },
                      "logVol": {
                        "size": "1Gi"
                      },
                      "tablespaceVol": {
                        "size": "512Mi"
                      },
                      "walVol": {
                        "size": "1200Mi"
                      }
                    },
                    "sysUsers": {
                      "pgRewindPassword": "rewind_password",
                      "pgRewindUser": "rewind_user",
                      "pgdb": "mydb",
                      "pgpassword": "mydbpassword",
                      "pgreplpassword": "repluserpwd",
                      "pgrepluser": "repluser",
                      "pguser": "mydbuser",
                      "tdepassphrase": "tde-passphrase"
                    },
                    "systemCertificates": {
                      "cacrt": "-----BEGIN CERTIFICATE-----\nMIIDTzCCAjegAwIBAgIUYssQ8I74US5g+1+Z7CHuaDgkZnEwDQYJKoZIhvcNAQEL\nBQAwNzEQMA4GA1UECgwHRnVqaXRzdTEjMCEGA1UEAwwaRkVQIFJvb3QgQ0EgZm9y\nIEt1YmVybmV0ZXMwHhcNMjEwMjA2MDM1MjI4WhcNMzEwMjA0MDM1MjI4WjA3MRAw\nDgYDVQQKDAdGdWppdHN1MSMwIQYDVQQDDBpGRVAgUm9vdCBDQSBmb3IgS3ViZXJu\nZXRlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMs97gUF0xkUzCgL\n7MiiDju9ySr/ziwjvcYU7jA9ML+SLmftMs3HtcYbAmSntqI+MDBSR/FAJTOoytuT\npV+mCFcGj2YAjDpliHPeNcUpbryy4YMChF3+MovkIwGCksxo5rhiWhGmoBYpA48P\n4Xe8SPlzqMzhFvNeKzyiUhvjutS2Y1Ss38lsTaurFPx64vQ2PaC54XzdwMptXtpb\ntYmWSzCpJWwxZ6lF3vitdA2w0tnBWNyctAd0+RIM/fvArxiIqseAux9t0uogm5to\nlRIhvekuxOpXBPEqtIYQ4j9XUW2JH8vUDnzPkPvjrq+A3Ug8OyyfGVrW7+VYXozu\nc4aP7P0CAwEAAaNTMFEwHQYDVR0OBBYEFBzCutQ7S74WEhS5V2sNEJBGyLpmMB8G\nA1UdIwQYMBaAFBzCutQ7S74WEhS5V2sNEJBGyLpmMA8GA1UdEwEB/wQFMAMBAf8w\nDQYJKoZIhvcNAQELBQADggEBAMDwD85RAaWEBptFgLzKw+9xEUy1vcZaonAuA1qc\nT342XTueyAugxkC11HwdCGgGS34VyctfMGqj4AW6pA2ez4tLrbOps4DmV4sw8uBL\n8pgRDgfly3ob9FEg2wa0hmrwX9jH5Bt4vySUE2785uPAqaspT2UNtTBxS85BUi1T\nsKId2Rtil6an281Z81wyWVI6Jm2D4MG0mbsiGcTPlCtdg/UljvDYymXlAvd4vNhl\nk9hDa13TgDqJKgKdTIcmZoNQdpEVgFcO0h9AEUy5AuLqxHq60dLfZ6ESGPlMI7Lm\ni4PzYbCnBmOe+7TnHcPSyrnehs66Ik+oifRd82eYS7vKjFw=\n-----END CERTIFICATE-----",
                      "crt": "-----BEGIN CERTIFICATE-----\nMIIDUTCCAjmgAwIBAgIRAMocW3qMoHrD6qRvMPppMkMwDQYJKoZIhvcNAQELBQAw\nNzEQMA4GA1UECgwHRnVqaXRzdTEjMCEGA1UEAwwaRkVQIFJvb3QgQ0EgZm9yIEt1\nYmVybmV0ZXMwHhcNMjEwMjA2MDQzMjM2WhcNMjYwMjA1MDQzMjM2WjA/MRAwDgYD\nVQQKEwdGdWppdHN1MSswKQYDVQQDEyJGVUpJVFNVIEVudGVycHJpc2UgUG9zdGdy\nZXMgU2VydmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4AI33yvH\nZws+jta6qpV6wzJqF8odIfTIpCfbrVcUUtLFKJ1I2e4SceTKi6O3C/I1XuvWlpng\n5IO65+fQQLO06z1/AuQT78YUn/Wlm9x1aHVsv4ANB5JWWqDOjrRT3o7nRPGXfila\nbP0rGE2mJJcVR9nExJ3IeaktgT3sb8YlXvtchyYpmjdbfxabTz07ig0+6/cwKoRR\nxOK8Uf7f5euE0cI/490J6r5Rs4lgD8sIQNCUFlTFYvmAH7gcdssSFBt8NPlUATHE\nsoFmlW0DKCJWNhTLOht+s6L/1zwTHLjPG2pdkG6Wdgmu5H2pDml8CDNLDv98Aj7i\n+I5SRKKcVPlnuQIDAQABo1AwTjAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUH\nAwIwDAYDVR0TAQH/BAIwADAfBgNVHSMEGDAWgBQcwrrUO0u+FhIUuVdrDRCQRsi6\nZjANBgkqhkiG9w0BAQsFAAOCAQEAm5dxBoI9pScOCvRAchg4CprdRDSJb9K6yB3O\nnCAxnM47iHeXnY3WlnI388kHu8DU7O4ba1tJbGs3KY9KzioPk43pU12jWkO1onoF\n+mTDjx/Ef1cYWA9r5q/LtgTa6Q2sxV4O2x67QW82aAnaxO34dV5zWCPIvAoovZBV\nHRT+BgCg3r2vD1RGKK2nl1aYJtWhO1SZubam+VttdZ/vbM9oOJctxmImsEtBXjkY\nKteePdQtLL5o03JhyXWyRshCq+HMmKf2KgyY8gvydGcP4eLQdBWcW40LcnVq6UjT\n0kJycJEKngMVademq1ZWHGaiYB7hyT6GhgIcHUJ2cKrPgbEh1Q==\n-----END CERTIFICATE-----",
                      "key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEA4AI33yvHZws+jta6qpV6wzJqF8odIfTIpCfbrVcUUtLFKJ1I\n2e4SceTKi6O3C/I1XuvWlpng5IO65+fQQLO06z1/AuQT78YUn/Wlm9x1aHVsv4AN\nB5JWWqDOjrRT3o7nRPGXfilabP0rGE2mJJcVR9nExJ3IeaktgT3sb8YlXvtchyYp\nmjdbfxabTz07ig0+6/cwKoRRxOK8Uf7f5euE0cI/490J6r5Rs4lgD8sIQNCUFlTF\nYvmAH7gcdssSFBt8NPlUATHEsoFmlW0DKCJWNhTLOht+s6L/1zwTHLjPG2pdkG6W\ndgmu5H2pDml8CDNLDv98Aj7i+I5SRKKcVPlnuQIDAQABAoIBAFPQYKlOzw/+BA0b\nyMIUpdctIMb/54CR/xR0mVw1DbSjigNVPjHUQvB8Y1B2FAITQObgJO06bAv0QdWN\nRb0/v/yYiNJDFjaLjaIAHlO/2+oWrXbFaZqgpVDJhB+e1xaZr2x7XGxm+p925k30\nl6pvIRY+I8JRKvZiV1VZHwL/R3JOtPr++xMZtLVjVOI+f+ySqJ+TZHuAjm49EKxj\ncEmmJ28b7QcziXsvKy00f+zbqLIBKXQdZAFU5eEr1BsDRXdRW+Kf0XIvftuy4BJZ\nvoKT+VGhEvF/qysswL4+6IAO6tpuYnnM0Y2d3sOGoWPkTcQK0MekYKzL/WmtCjNs\n9hodJtECgYEA5EWyhEOf4uOKe5TDp697UCUvXLoOR58FDe/S8XNvScn29jjOkqIg\nOMoqo9xAkJTNTzqn5UUdt1x/pgM2NxlPLFijrc0zQlX3SoOO2ryDd9WNi7YKtN16\nKJqa536WeZu2OEbuAZ+S3GALVy1RPeTNPnUOmKnF06DjDUGzLNCZy10CgYEA+zfw\n952DWuz1U0Z4wvAEqqcgUKXPKrkTXV/iUnjkDkrLYVr0ZofDNTXrdHl+UedFmaOC\ncieZn6DNhcdz5tKtyysGMH3g/qs9PfoGUngvcXsy0Egk04l3x1jc8TTCLqXZXYaQ\nHMsx51n+R58oncPtzYSUOr9qQ6PbC2CstTbFJA0CgYEAjGEsUliAB/jknfEzjXjG\nPdhQUxb8VyE864Az2lah9t/kJzFyIAziAeqZ5GE7t247AGFTBRTHHI8e1Qoemi3P\nWbc9GVIbFs1lIYbcIDpUIyrKPEP8O5QEXtoNLxXTFgAjRGKiVY87spjCAJ+W2ZhO\ne/1it5GYXfgQCYQA2yuBmOUCgYANRkR2YR1axaCk+NlSu6oTdmdPu6M5x7PNQE7O\nOtMaKjua9lppvIzFGAdMDUtueoEEAE7ZR1xnwfB6PDLUpJdIYAqgr1YfPt8qkjaZ\nTv56yZ7CwL0pbF8m6nwqRrZoDp1wwraEvvvxFKFKGY/k3kCHlpTakdjEoDjn3gDi\nRnWeVQKBgCEneMSzucei5LRppRtRaJw/Btll8qlPMlX3W7dxQ3cLwpmLOn0m51Fp\nPIZ44zYK8R6fu4+/sSrlfaIg86Ugeufp6YNxyNROKxUGza5vDIu5OftwWtBeg+UK\nZ8lLWNdX6pp7WMujmF3H1DrkBbauYMUKZ4UxUYtelgHERMePIxwb\n-----END RSA PRIVATE KEY-----"
                    }
                  }
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "false"
          containerImage: quay.io/fujitsu/fujitsu-enterprise-postgres-operator@sha256:6b6ffb32a23a386cc4ea5cf05e92809ebc3774cda1d3df0044ce2d5ee5c3e1a8
          createdAt: "2023-09-12"
          description: OpenShift Operator for Fujitsu Enterprise Postgres
          olm.skipRange: <5.1.7
          operators.operatorframework.io/builder: operator-sdk-v1.25.4-ocp
          operators.operatorframework.io/internal-objects: '["fepautoscales.fep.fujitsu.io","fepconfigs.fep.fujitsu.io","fepusers.fep.fujitsu.io","fepcerts.fep.fujitsu.io","fepvolumes.fep.fujitsu.io","fepbackups.fep.fujitsu.io"]'
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          support: pgtechenquiry@fast.au.fujitsu.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: FEPAction
            name: fepactions.fep.fujitsu.io
            version: v1
          - kind: FEPAutoscale
            name: fepautoscales.fep.fujitsu.io
            version: v1
          - kind: FEPBackup
            name: fepbackups.fep.fujitsu.io
            version: v1
          - kind: FEPCert
            name: fepcerts.fep.fujitsu.io
            version: v1
          - kind: FEPCluster
            name: fepclusters.fep.fujitsu.io
            version: v2
          - kind: FEPConfig
            name: fepconfigs.fep.fujitsu.io
            version: v1
          - kind: FEPExporter
            name: fepexporters.fep.fujitsu.io
            version: v1
          - kind: FEPLogging
            name: feploggings.fep.fujitsu.io
            version: v1
          - kind: FEPPgpool2Cert
            name: feppgpool2certs.fep.fujitsu.io
            version: v1
          - kind: FEPPgpool2
            name: feppgpool2s.fep.fujitsu.io
            version: v1
          - kind: FEPRestore
            name: feprestores.fep.fujitsu.io
            version: v1
          - kind: FEPUpgrade
            name: fepupgrades.fep.fujitsu.io
            version: v1
          - kind: FEPUser
            name: fepusers.fep.fujitsu.io
            version: v1
          - kind: FEPVolume
            name: fepvolumes.fep.fujitsu.io
            version: v1
        description: "Fujitsu Enterprise Postgres 15 delivers an enterprise-grade
          PostgreSQL on OpenShift Container Platform.\n\nThis solution provides the
          flexibility of a hybrid cloud solution while delivering an enhanced distribution
          of PostgreSQL to support enterprise-level workloads and provide improved
          deployment and management, availability, performance, data governance and
          security.  \n\nAvailable as a multi-architecture container built for both
          amd64, s390x and ppc64le.\n\nThe download and Use of the Product is strictly
          subject to the terms of the End User License Agreement with Fujitsu Limited
          found at https://www.fast.fujitsu.com/fujitsu-enterprise-postgres-license-agreements.
          Where the Product that has been embedded as a whole or part into a third
          party program, only Authorised Customers may download and use the Product.\n"
        displayName: Fujitsu Enterprise Postgres Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - Fujitsu
        - fep
        links:
        - name: Fujitsu Enterprise Postgres
          url: https://www.postgresql.fastware.com/
        maintainers:
        - email: pgtechenquiry@au.fujitsu.com
          name: Fujitsu
        maturity: stable
        provider:
          name: Fujitsu
          url: https://www.postgresql.fastware.com/
        relatedImages:
        - quay.io/fujitsu/fujitsu-enterprise-postgres-exporter@sha256:63368e2e057387e7e281afebcea9c491ec4fd90c719f792557667a277ffe1072
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-backup@sha256:4359f12dbccd66a0d7b2ef8b553e8122c64db2c34acb179519bf2f30f1ab0bbe
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-pgpool2@sha256:8bf6989725663cb1f4a4a7ce2f319801ed9386ca99aad09644d93f88390c0f24
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-restore@sha256:ad5e1896216f68c2d7a3aa32cdce75c4ab76b419fe52b019f4e0d77bea1f89fd
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-pgpool2@sha256:a4f059404c649c96bbd692d1c579d937b4eb246b5205565fc88ce11042633e79
        - quay.io/fujitsu/fujitsu-enterprise-postgres-fluentd@sha256:a5f5353fd4a66b99683635a1bb117c0cd566a900f83d52f65536bc7b1d7c7a2f
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-upgrade@sha256:6dae7c8eb44e0014e47b002460869cba213ce465f5e31a3b703e4e8a1272d00c
        - quay.io/fujitsu/fujitsu-enterprise-postgres-cronjob@sha256:7dc349dacb3aea9a836db40e0827155df39756c7fe3a523c05ed46a9c5514f2c
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-server@sha256:75ff0e603f98f9ca515b245e642cc34e463f2db50298c0f1eaf82876657dafec
        - quay.io/fujitsu/fujitsu-enterprise-postgres-operator@sha256:6b6ffb32a23a386cc4ea5cf05e92809ebc3774cda1d3df0044ce2d5ee5c3e1a8
        - quay.io/fujitsu/fujitsu-enterprise-postgres-fluentbit@sha256:7f791b5a0df90fd89b83abb973ec95d5741899c9bb271d452d30bfac185185cb
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-backup@sha256:0051a05af956cbc9b9ae1eb6b0014291fd6210f9127a6d7ec1ec5e73d68a45ff
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-exporter@sha256:1723eb674319ae28f65e3b175cee1317d9474bbde51a50f7bb662add811812a1
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-pgpool2@sha256:942e41d3c42261cffe67bb3202dd688fdd83f26a8c4dfbee9d39c8892be8c051
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-restore@sha256:f35b9a96176d8905860d5ad859b06ce39637fcf562357822f8263ce6ef4f809c
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-upgrade@sha256:3c9a0a27c24ea1a0d862b6e9e38d2cb83575e32df7d7413c07c919ca6da62f11
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-server@sha256:399f60a29543cc609ce8f18d40da90d716bf43e0b0428121009ef11fd9ae2b1f
        - quay.io/fujitsu/fujitsu-enterprise-postgres-13-restore@sha256:990539446864b280e5c84aa4cf626d767fd1ca5cfa5fceed3555452138cbadc1
        - quay.io/fujitsu/fujitsu-enterprise-postgres-14-server@sha256:a38fea06de9d2f3382fa6ea7500ba393563a001a397582ff0d73c8a2ba216745
        - registry.connect.redhat.com/fujitsu-postgres/fujitsu-enterprise-postgres-operator-bundle@sha256:a277ed7be25798d22310b191bb1e783b7439fc8b78dd0ec30d73ba31d6058f32
        - quay.io/fujitsu/fujitsu-enterprise-postgres-utils@sha256:0643f0bf4c8d5aa7ed898840b1578b627adf90c129f96f21953f28c73dad0c65
        - quay.io/fujitsu/fujitsu-enterprise-postgres-15-backup@sha256:0eb3f39f564ac90e2a04191ccdc49badc1ef85296860ed7d1ff98e3ab32996c8
        version: 5.1.7
      entries:
      - name: fujitsu-enterprise-postgres-operator.v5.1.7
        version: 5.1.7
      name: stable
    defaultChannel: stable
    packageName: fujitsu-enterprise-postgres-operator
    provider:
      name: Fujitsu
      url: https://www.postgresql.fastware.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Eclipse Foundation
      provider-url: ""
    name: eclipse-che
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eclipse-che.v7.113.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "org.eclipse.che/v1",
                "kind": "CheCluster",
                "metadata": {
                  "name": "eclipse-che",
                  "namespace": "eclipse-che"
                },
                "spec": {
                  "auth": {
                    "identityProviderURL": "",
                    "oAuthClientName": "",
                    "oAuthSecret": ""
                  },
                  "database": {
                    "externalDb": false
                  },
                  "k8s": {
                    "ingressDomain": null,
                    "tlsSecretName": null
                  },
                  "metrics": {
                    "enable": true
                  },
                  "server": {
                    "externalDevfileRegistries": [
                      {
                        "url": "https://registry.devfile.io"
                      }
                    ],
                    "externalDevfileRegistry": true,
                    "externalPluginRegistry": true,
                    "workspaceNamespaceDefault": "<username>-che"
                  },
                  "storage": {
                    "pvcStrategy": "common"
                  }
                }
              },
              {
                "apiVersion": "org.eclipse.che/v2",
                "kind": "CheCluster",
                "metadata": {
                  "name": "eclipse-che",
                  "namespace": "eclipse-che"
                },
                "spec": {
                  "components": {
                    "devfileRegistry": {
                      "disableInternalRegistry": true,
                      "externalDevfileRegistries": [
                        {
                          "url": "https://registry.devfile.io"
                        }
                      ]
                    },
                    "pluginRegistry": {
                      "disableInternalRegistry": true
                    }
                  },
                  "containerRegistry": {},
                  "devEnvironments": {},
                  "gitServices": {},
                  "networking": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/eclipse/che-operator@sha256:5d52236cfb5dd97b539737092458535d98386c083c17640894465aa065dea06d
          createdAt: "2025-12-19T05:37:01Z"
          description: A Kube-native development solution that delivers portable and
            collaborative developer workspaces.
          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: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/eclipse-che/che-operator
          support: Eclipse Foundation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              The `CheCluster` custom resource allows defining and managing Eclipse Che server installation.
              Based on these settings, the  Operator automatically creates and maintains several ConfigMaps:
              `che`, `plugin-registry` that will contain the appropriate environment variables
              of the various components of the installation. These generated ConfigMaps must NOT be updated manually.
            displayName: Eclipse Che instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v2
          - description: The `CheCluster` custom resource allows defining and managing
              a Che server installation
            displayName: Eclipse Che instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v1
        description: |
          A collaborative Kubernetes-native development solution that delivers OpenShift workspaces and in-browser IDE for rapid cloud application development.
          This operator installs the Plugin and Devfile registries, Dashboard, Gateway and the Eclipse Che server, and configures these services.
          OpenShift OAuth is used directly for authentication. TLS mode is on.

          ## How to Install
          Press the **Install** button, choose the channel and the upgrade strategy, and wait for the **Installed** Operator status.
          When the operator is installed, create a new Custom Resource (CR) of Kind CheCluster (click the **Create New** button).
          The CR spec contains all defaults. You can start using Eclipse Che when the CR status is set to **Available**, and you see a URL to Eclipse Che.

          ## Defaults
          By default, the operator deploys Eclipse Che with:
          * 10Gi storage
          * Auto-generated passwords
          * Bundled Plugin and Devfile registries

          Use `oc edit checluster/eclipse-che -n eclipse-che` to update Eclipse Che default installation options.
          See more in the [Installation guide](https://www.eclipse.org/che/docs/stable/administration-guide/configuring-che/).

          ### Certificates
          Operator uses a default router certificate to secure Eclipse Che routes.
          Follow the [guide](https://www.eclipse.org/che/docs/stable/administration-guide/importing-untrusted-tls-certificates/)
          to import certificates into Eclipse Che.
        displayName: Eclipse Che
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eclipse che
        - workspaces
        - devtools
        - developer
        - ide
        - java
        links:
        - name: Product Page
          url: https://www.eclipse.org/che
        - name: Documentation
          url: https://www.eclipse.org/che/docs
        - name: Operator GitHub Repo
          url: https://github.com/eclipse-che/che-operator
        maintainers:
        - email: abazko@redhat.com
          name: Anatolii Bazko
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Eclipse Foundation
        relatedImages:
        - quay.io/eclipse/che-operator@sha256:5d52236cfb5dd97b539737092458535d98386c083c17640894465aa065dea06d
        - quay.io/brancz/kube-rbac-proxy@sha256:738c854322f56d63ebab75de5210abcdd5e0782ce2d30c0ecd4620f63b24694d
        - quay.io/che-incubator/che-code@sha256:6b4ff425d9fd68f6121def1483ac374aba0cf3e1669d9d2b6628100a128292b4
        - quay.io/che-incubator/che-code-server@sha256:2093baab1a73e9682f5892f80582481abfbef99d744472ee6098e2d82fb2899f
        - quay.io/oauth2-proxy/oauth2-proxy@sha256:dcb6ff8dd21bf3058f6a22c6fa385fa5b897a9cd3914c88a2cc2bb0a85f8065d
        - quay.io/community-operator-pipeline-prod/eclipse-che@sha256:bac399fad1dff8d939d9f5498c30c7e1291733643b912ac3c0c10ca6605f23bb
        - quay.io/eclipse/che-server@sha256:dc3d452108c4f02b9c07717aeb0510652fae25ef1ee3de49e7d5d2069e9cc4e1
        - quay.io/devfile/universal-developer-image@sha256:69ed3c6d08d37134b7b6651fd5b9666a1e5e2f6d602285a8e40512cbb1615f6a
        - quay.io/eclipse/che-plugin-registry@sha256:e941647b1622c586bb9f60b931dbf28a290308757d2e8529eceecae0d80625d6
        - quay.io/che-incubator/configbump@sha256:99253a669c76fe53d05801e1dfaa03095e55e6d49919183e30386811e0e48bbb
        - quay.io/che-incubator/header-rewrite-proxy@sha256:bd7873b8feef35f218f54c6251ea224bea2c8bf202a328230019a0ba2941245d
        - quay.io/eclipse/che-dashboard@sha256:36e4af6d9aeb8c59a1c7c372a3767f59af8785790df2a00aadd6fd3187671fda
        - quay.io/che-incubator/che-idea-dev-server@sha256:ee6a854a7a9af9381551802b6848f82f11b37443552ad347bffe5bd3032e2f12
        - quay.io/che-incubator/che-code-server@sha256:357c95297ce2182ef0a792038ea122075fdeb6c8e835099be09e8d4f105eac2a
        - quay.io/eclipse/che--traefik@sha256:4cf907247939b5d20bf4eff73abd21cb413c339600dde76dbc94a874b2578a27
        - quay.io/eclipse/che-tls-secret-creator@sha256:cbb2fd8ce903d822377f2093af1aa2543672ed8c516d607a7a9dd857379dac5d
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:354fc75eb7a21a934381e93d03ef9d42bc2c8ae8989fdcacecfb39b863b96ced
        - quay.io/openshift/origin-oauth-proxy@sha256:870bfe92a4663720775c0dfe5728ecbb10a17f0644eef5f57276ec135034c6a1
        - quay.io/che-incubator/che-code-sshd@sha256:82a4ef390d7d0bc8ebd0cbb7206707ae3ab68e9936b531c3c716cce46fca404a
        - quay.io/che-incubator/che-code@sha256:69822e636795efde3655c279e045f48a59333cb0fc83a0694cf8b0dec2b875e2
        version: 7.113.0
      entries:
      - name: eclipse-che.v7.113.0
        version: 7.113.0
      - name: eclipse-che.v7.112.0
        version: 7.112.0
      - name: eclipse-che.v7.111.0
        version: 7.111.0
      - name: eclipse-che.v7.110.0
        version: 7.110.0
      - name: eclipse-che.v7.109.0
        version: 7.109.0
      - name: eclipse-che.v7.108.0
        version: 7.108.0
      - name: eclipse-che.v7.106.0
        version: 7.106.0
      - name: eclipse-che.v7.105.0
        version: 7.105.0
      - name: eclipse-che.v7.104.0
        version: 7.104.0
      - name: eclipse-che.v7.103.0
        version: 7.103.0
      - name: eclipse-che.v7.102.0
        version: 7.102.0
      - name: eclipse-che.v7.101.0
        version: 7.101.0
      - name: eclipse-che.v7.100.0
        version: 7.100.0
      - name: eclipse-che.v7.99.0
        version: 7.99.0
      - name: eclipse-che.v7.98.0
        version: 7.98.0
      - name: eclipse-che.v7.97.0
        version: 7.97.0
      - name: eclipse-che.v7.96.0
        version: 7.96.0
      - name: eclipse-che.v7.95.0
        version: 7.95.0
      - name: eclipse-che.v7.94.0
        version: 7.94.0
      - name: eclipse-che.v7.93.0
        version: 7.93.0
      - name: eclipse-che.v7.92.0
        version: 7.92.0
      - name: eclipse-che.v7.91.0
        version: 7.91.0
      - name: eclipse-che.v7.90.0
        version: 7.90.0
      - name: eclipse-che.v7.89.0
        version: 7.89.0
      - name: eclipse-che.v7.88.0
        version: 7.88.0
      - name: eclipse-che.v7.87.0
        version: 7.87.0
      - name: eclipse-che.v7.86.0
        version: 7.86.0
      - name: eclipse-che.v7.85.0
        version: 7.85.0
      - name: eclipse-che.v7.84.0
        version: 7.84.0
      - name: eclipse-che.v7.83.0
        version: 7.83.0
      - name: eclipse-che.v7.82.0
        version: 7.82.0
      - name: eclipse-che.v7.81.0
        version: 7.81.0
      - name: eclipse-che.v7.80.0
        version: 7.80.0
      - name: eclipse-che.v7.79.0
        version: 7.79.0
      - name: eclipse-che.v7.78.0
        version: 7.78.0
      - name: eclipse-che.v7.77.0
        version: 7.77.0
      - name: eclipse-che.v7.76.0
        version: 7.76.0
      - name: eclipse-che.v7.75.0
        version: 7.75.0
      - name: eclipse-che.v7.74.0
        version: 7.74.0
      - name: eclipse-che.v7.73.0
        version: 7.73.0
      - name: eclipse-che.v7.72.0
        version: 7.72.0
      - name: eclipse-che.v7.71.0
        version: 7.71.0
      - name: eclipse-che.v7.70.0
        version: 7.70.0
      - name: eclipse-che.v7.69.0
        version: 7.69.0
      - name: eclipse-che.v7.68.0
        version: 7.68.0
      - name: eclipse-che.v7.67.0
        version: 7.67.0
      - name: eclipse-che.v7.66.0
        version: 7.66.0
      - name: eclipse-che.v7.65.0
        version: 7.65.0
      - name: eclipse-che.v7.64.0
        version: 7.64.0
      - name: eclipse-che.v7.63.0
        version: 7.63.0
      - name: eclipse-che.v7.62.0
        version: 7.62.0
      - name: eclipse-che.v7.61.0
        version: 7.61.0
      - name: eclipse-che.v7.60.1
        version: 7.60.1
      - name: eclipse-che.v7.60.0
        version: 7.60.0
      - name: eclipse-che.v7.59.0
        version: 7.59.0
      - name: eclipse-che.v7.58.0
        version: 7.58.0
      - name: eclipse-che.v7.57.0
        version: 7.57.0
      - name: eclipse-che.v7.56.0
        version: 7.56.0
      - name: eclipse-che.v7.55.0
        version: 7.55.0
      - name: eclipse-che.v7.54.0
        version: 7.54.0
      - name: eclipse-che.v7.53.0
        version: 7.53.0
      - name: eclipse-che.v7.52.0
        version: 7.52.0
      - name: eclipse-che.v7.51.0
        version: 7.51.0
      - name: eclipse-che.v7.50.0
        version: 7.50.0
      - name: eclipse-che.v7.49.0
        version: 7.49.0
      - name: eclipse-che.v7.48.1
        version: 7.48.1
      - name: eclipse-che.v7.47.0
        version: 7.47.0
      - name: eclipse-che.v7.46.0
        version: 7.46.0
      - name: eclipse-che.v7.45.0
        version: 7.45.0
      - name: eclipse-che.v7.44.0
        version: 7.44.0
      - name: eclipse-che.v7.42.0
        version: 7.42.0
      - name: eclipse-che.v7.41.2
        version: 7.41.2
      - name: eclipse-che.v7.41.1
        version: 7.41.1
      - name: eclipse-che.v7.41.0
        version: 7.41.0
      - name: eclipse-che.v7.40.2
        version: 7.40.2
      - name: eclipse-che.v7.40.1
        version: 7.40.1
      name: stable
    defaultChannel: stable
    packageName: eclipse-che
    provider:
      name: Eclipse Foundation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: dapr.io
      provider-url: https://dapr.io
    name: dapr-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dapr-kubernetes-operator.v0.0.12
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.dapr.io/v1alpha1",
                "kind": "DaprControlPlane",
                "metadata": {
                  "name": "dapr-control-plane",
                  "namespace": "dapr-system"
                },
                "spec": {
                  "values": {}
                }
              },
              {
                "apiVersion": "operator.dapr.io/v1alpha1",
                "kind": "DaprCruiseControl",
                "metadata": {
                  "name": "dapr-cruise-control",
                  "namespace": "dapr-system"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.dapr.io/v1alpha1",
                "kind": "DaprInstance",
                "metadata": {
                  "name": "dapr-instance",
                  "namespace": "dapr-system"
                },
                "spec": {
                  "values": {}
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          containerImage: docker.io/daprio/kubernetes-operator@sha256:da599a273943bf28812314a11df1052411237dd1887edf0fe6104c5857f439b0
          createdAt: "2025-10-06T18:47:59Z"
          description: Dapr Control Plane Operator
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/dapr/kubernetes-operator
          support: contact@dapr.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DaprControlPlane is the Schema for the Dapr ControlPlane
              API.
            displayName: DaprControlPlane
            kind: DaprControlPlane
            name: daprcontrolplanes.operator.dapr.io
            version: v1alpha1
          - kind: DaprCruiseControl
            name: daprcruiscontrols.operator.dapr.io
            version: v1alpha1
          - description: DaprInstance is the Schema for the Dapr Instance API.
            displayName: DaprInstance
            kind: DaprInstance
            name: daprinstances.operator.dapr.io
            version: v1alpha1
        description: Dapr Control Plane Operator
        displayName: Dapr Control Plane Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dapr
        links:
        - name: Dapr
          url: https://dapr.io
        - name: Dapr Kubernetes Operator
          url: https://github.com/dapr/kubernetes-operator
        maintainers:
        - email: lburgazzoli@gmail.com
          name: Luca Burgazzoli
        - email: salaboy@gmail.com
          name: Mauricio Salatino
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: dapr.io
          url: https://dapr.io
        relatedImages:
        - docker.io/daprio/kubernetes-operator@sha256:da599a273943bf28812314a11df1052411237dd1887edf0fe6104c5857f439b0
        - quay.io/community-operator-pipeline-prod/dapr-kubernetes-operator@sha256:3c1487eb881cdc825bd53f0f51eb92b180e8dafcae92a62dc616f1402625124b
        version: 0.0.12
      entries:
      - name: dapr-kubernetes-operator.v0.0.12
        version: 0.0.12
      - name: dapr-kubernetes-operator.v0.0.11
        version: 0.0.11
      - name: dapr-kubernetes-operator.v0.0.10
        version: 0.0.10
      - name: dapr-kubernetes-operator.v0.0.9
        version: 0.0.9
      - name: dapr-kubernetes-operator.v0.0.8
        version: 0.0.8
      - name: dapr-kubernetes-operator.v0.0.6
        version: 0.0.6
      - name: dapr-kubernetes-operator.v0.0.5
        version: 0.0.5
      - name: dapr-kubernetes-operator.v0.0.4
        version: 0.0.4
      - name: dapr-kubernetes-operator.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: dapr-kubernetes-operator
    provider:
      name: dapr.io
      url: https://dapr.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: raftt.io
      provider-url: https:///www.raftt.io
    name: raftt-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: raftt-operator.v1.25.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "raftt.io/v1beta1",
                "kind": "Raftt",
                "metadata": {
                  "name": "raftt",
                  "namespace": "raftt"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: quay.io/raftt/raftt-operator@sha256:73edc6d8416ee3815d7e59bb26c33e3d35d97cf1ceadd8fa457041be13e175ca
          createdAt: "2025-04-29T11:31:02Z"
          description: This operator installs and configures a Raftt instance
          features.operators.openshift.io/disconnected: "false"
          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"
          marketplace.openshift.io/remote-workflow: https://marketplace.redhat.com/en-us/operators/raftt-operator/pricing?utm_source=openshift_console
          marketplace.openshift.io/support-workflow: https://marketplace.redhat.com/en-us/operators/raftt-operator/support?utm_source=openshift_console
          operatorframework.io/suggested-namespace: raftt
          operators.openshift.io/valid-subscription: Raftt commercial license
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Raftt systems
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Raftt represents an installation of Raftt cluster controller
              & supporting services
            displayName: Raftt
            kind: Raftt
            name: raftts.raftt.io
            version: v1beta1
        description: |
          Raftt allows fast code iterations and debugging over complex Kubernetes environments.
          Raftt provides a localhost development experience for applications running on Kubernetes.
          You can use Raftt to orchestrate the environments for you, so you get the optimal development experience -
          iterations that take under a second, OOTB debugging of your code as it runs in the cluster, easy introspection, and more.
        displayName: Raftt
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dx
        - development
        - debugging
        links:
        - name: Raftt Operator
          url: https://raftt-operator.domain
        - name: Documentation
          url: https://docs.raftt.io
        maintainers:
        - email: ops@raftt.io
          name: Raftt
        maturity: alpha
        provider:
          name: raftt.io
          url: https:///www.raftt.io
        relatedImages:
        - quay.io/raftt/raftt-operator@sha256:73edc6d8416ee3815d7e59bb26c33e3d35d97cf1ceadd8fa457041be13e175ca
        - registry.connect.redhat.com/raftt/operator-bundle@sha256:7108686c168c35acd996e61a981bdd885b454837cf6823a48a28cdeeebbb0af9
        version: 1.25.2
      entries:
      - name: raftt-operator.v1.25.2
        version: 1.25.2
      name: alpha
    defaultChannel: alpha
    packageName: raftt-operator
    provider:
      name: raftt.io
      url: https:///www.raftt.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio Project
      provider-url: ""
    name: apicurito
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        - quay.io/apicurio/apicurito-operator:1.0.3
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: 1.0.x
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        - quay.io/apicurio/apicurito-operator:1.0.3
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: candidate
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/apicurio/apicurito-operator:1.0.3
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: latest
    - currentCSV: apicurito.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicur.io/v1alpha1",
                "kind": "Apicurito",
                "metadata": {
                  "labels": {
                    "app": "apicurito"
                  },
                  "name": "apicurito"
                },
                "spec": {
                  "size": 3
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/apicurio/apicurito-operator:1.0.3
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Apicurio Project
        relatedImages:
        - quay.io/apicurio/apicurito-operator:1.0.3
        - quay.io/openshift-community-operators/apicurito@sha256:fa43a6f0259111999fa8d7d13f863929c5bd92e8c2b1bd3871c03aa8eba7884d
        version: 1.0.3
      entries:
      - name: apicurito.v1.0.3
        version: 1.0.3
      - name: apicurito.v1.0.2
        version: 1.0.2
      - name: apicurito.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: latest
    packageName: apicurito
    provider:
      name: Apicurio Project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: www.redhat.com
    name: dpu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dpu-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "config.openshift.io/v1",
                "kind": "DpuOperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dpu-operator",
                    "app.kubernetes.io/instance": "dpuoperatorconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dpuoperatorconfig",
                    "app.kubernetes.io/part-of": "dpu-operator"
                  },
                  "name": "dpuoperatorconfig-sample"
                },
                "spec": {
                  "mode": "host"
                }
              },
              {
                "apiVersion": "config.openshift.io/v1",
                "kind": "ServiceFunctionChain",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dpu-operator",
                    "app.kubernetes.io/instance": "servicefunctionchain-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "servicefunctionchain",
                    "app.kubernetes.io/part-of": "dpu-operator"
                  },
                  "name": "servicefunctionchain-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-08-12T16:14:09Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-dpu-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DpuOperatorConfig is the Schema for the dpuoperatorconfigs
              API
            displayName: Dpu Operator Config
            kind: DpuOperatorConfig
            name: dpuoperatorconfigs.config.openshift.io
            version: v1
          - description: ServiceFunctionChain is the Schema for the servicefunctionchains
              API
            displayName: Service Function Chain
            kind: ServiceFunctionChain
            name: servicefunctionchains.config.openshift.io
            version: v1
        description: This operator will manage and configure data processing unit
          (DPUs) to be used in accelerating/offloading k8s networking functions
        displayName: DPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dpu
        - dpu-operator
        - ipu
        links:
        - name: Dpu Operator
          url: https://github.com/openshift/dpu-operator
        maintainers:
        - email: wizhao@redhat.com
          name: William Zhao
        - email: bnemeth@redhat.com
          name: Balazs Nemeth
        maturity: alpha
        provider:
          name: Red Hat
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-dpu-rhel9-operator@sha256:82ea8006f9d969c4b6f9e52d75ff81d7129ef0bee37ad7056769b485c0760aa9
        - registry.redhat.io/openshift4/ose-dpu-operator-bundle@sha256:2b968beb8b658b8f16257842d2594f4489116adeb76d5965b7642c982ed9d18c
        - registry.redhat.io/openshift4/ose-dpu-daemon-rhel9@sha256:7421edb9be136cc7102bbe8f263108fde6cce3ed411afecc241d8551ad56961a
        version: 4.20.0-202512081147
      entries:
      - name: dpu-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: dpu-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: dpu-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: dpu-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: dpu-operator.v4.20.0-202511040554
        version: 4.20.0-202511040554
      - name: dpu-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: dpu-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: dpu-operator
    provider:
      name: Red Hat
      url: www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Marketplace
      provider-url: ""
    name: ibm-metrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-metrics-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MarketplaceConfig",
                "metadata": {
                  "name": "marketplaceconfig"
                },
                "spec": {
                  "features": {
                    "deployment": true,
                    "meterDefinitionCatalogServer": false,
                    "registration": true
                  },
                  "installIBMCatalogSource": true,
                  "isDisconnected": false,
                  "license": {
                    "accept": false
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterBase",
                "metadata": {
                  "name": "meterbase"
                },
                "spec": {
                  "enabled": true,
                  "prometheus": {
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      },
                      "requests": {
                        "cpu": "1",
                        "memory": "1G"
                      }
                    },
                    "storage": {
                      "size": "20Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterReport",
                "metadata": {
                  "name": "example-meterreport"
                },
                "spec": {
                  "endTime": "2020-08-05T00:00:00Z",
                  "prometheusService": {
                    "name": "rhm-prometheus-meterbase",
                    "namespace": "openshift-redhat-marketplace",
                    "targetPort": "rbac"
                  },
                  "startTime": "2020-08-04T00:00:00Z"
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "example-meterdefinition-4"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "meterdefinition-sample"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
          createdAt: "2025-12-17T09:32:46Z"
          description: The IBM Metrics Operator provides workload metering and reporting
            for IBM and Red Hat Marketplace customers.
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MarketplaceConfig is configuration manager for our Red Hat Marketplace controllers
              By installing this product you accept the license terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterBase is the resource that sets up Metering for Red Hat Marketplace.
              This is an internal resource not meant to be modified directly.
            displayName: Meter Base
            kind: MeterBase
            name: meterbases.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterDefinition defines the meter workloads used to enable pay for
              use billing.
            displayName: Meter Definition
            kind: MeterDefinition
            name: meterdefinitions.marketplace.redhat.com
            version: v1beta1
          - kind: MeterReport
            name: meterreports.marketplace.redhat.com
            version: v1alpha1
        description: "The IBM Metrics Operator provides workload metering and reporting
          for IBM Software Central and Red Hat Marketplace customers.\n### **Important
          Note**\nA set of instructions for onboarding is provided here. For more
          detailed onboarding instructions or information about what is installed
          please visit [swc.saas.ibm.com](https://swc.saas.ibm.com).\n\nUsage metrics
          may be monitored through [https://swc.saas.ibm.com](https://swc.saas.ibm.com)
          with only IBM Metrics Operator and a Red Hat Marketplace account.\n\n###
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n### Prerequisites\n1. Installations are required
          to [enable monitoring for user-defined projects](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)
          as the Prometheus provider.\n2. Edit the cluster-monitoring-config ConfigMap
          object:\n\n   ```sh\n   $ oc -n openshift-monitoring edit configmap cluster-monitoring-config\n
          \   ```\n\n3. Add enableUserWorkload: true under data/config.yaml:\n  \n
          \   ```sh\n    apiVersion: v1\n    kind: ConfigMap\n    metadata:\n      name:
          cluster-monitoring-config\n        namespace: openshift-monitoring\n    data:\n
          \     config.yaml: |\n        enableUserWorkload: true\n    ```\n\n4. Configure
          the user-workload-monitoring-config ConfigMap object:\n\n    ```sh\n    $
          oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config\n
          \   ```\n\n5. Configure a minimum retention time of 168h and minimum storage
          capacity of 40Gi\n  \n    ```sh\n    apiVersion: v1\n    kind: ConfigMap\n
          \   metadata:\n      name: user-workload-monitoring-config\n      namespace:
          openshift-user-workload-monitoring\n\n    data:\n      config.yaml: |\n
          \       prometheus:\n          retention: 168h\n          volumeClaimTemplate:\n
          \           spec:\n              resources:\n                requests:\n
          \                 storage: 40Gi\n    ```\n\n### Resources Required\n\nMinimum
          system resources required:\n\n| Operator                | Memory (MB) |
          CPU (cores) | Disk (GB) | Nodes |\n| ----------------------- | -----------
          | ----------- | --------- | ----- |\n| **Metrics**   |        750  |     0.25
          \   | 3x1       |    3  |\n| **Deployment** |        250  |     0.25    |
          -         |    1  |\n\n| Prometheus Provider  | Memory (GB) | CPU (cores)
          | Disk (GB) | Nodes |\n| --------- | ----------- | ----------- | ---------
          | ----- |\n| **[Openshift User Workload Monitoring](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)**
          |          1  |     0.1       | 2x40        |   2    |\n\nMultiple nodes
          are required to provide pod scheduling for high availability for IBM Metrics
          Operator Data Service and Prometheus.\n\nThe IBM Metrics Operator automatically
          creates 3 x 1Gi PersistentVolumeClaims to store reports as part of the data
          service, with _ReadWriteOnce_ access mode. Te PersistentVolumeClaims are
          automatically created by the ibm-metrics-operator after creating a `redhat-marketplace-pull-secret`
          and accepting the license in `marketplaceconfig`.\n\n| NAME                                |
          CAPACITY | ACCESS MODES |\n| ----------------------------------- | --------
          | ------------ |\n| rhm-data-service-rhm-data-service-0 | 1Gi | RWO |\n|
          rhm-data-service-rhm-data-service-1 | 1Gi | RWO |\n| rhm-data-service-rhm-data-service-2
          | 1Gi | RWO |\n\n### Supported Storage Providers\n\n- OpenShift Container
          Storage / OpenShift Data Foundation version 4.x, from version 4.2 or higher\n-
          IBM Cloud Block storage and IBM Cloud File storage\n- IBM Storage Suite
          for IBM Cloud Paks:\n  - File storage from IBM Spectrum Fusion/Scale \n
          \ - Block storage from IBM Spectrum Virtualize, FlashSystem or DS8K\n- Portworx
          Storage, version 2.5.5 or above\n- Amazon Elastic File Storage\n- Azure
          Disk Storage (disk.csi.azure.com)\n\n#### Known Problematic Storage Providers\n\n-
          Azure File Storage (file.csi.azure.com)\n\n### Access Modes required\n\n
          - ReadWriteOnce (RWO)\n\n### Provisioning Options supported\n\nChoose one
          of the following options to provision storage for the ibm-metrics-operator
          data-service\n\n#### Dynamic provisioning using a default StorageClass\n
          \  - A StorageClass is defined with a `metadata.annotations: storageclass.kubernetes.io/is-default-class:
          \"true\"`\n   - PersistentVolumes will be provisioned automatically for
          the generated PersistentVolumeClaims\n--- \n#### Manually create each PersistentVolumeClaim
          with a specific StorageClass\n   - Must be performed before creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`. Otherwise, the automatically
          generated PersistentVolumeClaims are immutable.\n```\napiVersion: v1\nkind:
          PersistentVolumeClaim\nmetadata:\n  labels:\n    app: rhm-data-service\n
          \ name: rhm-data-service-rhm-data-service-0\n  namespace: ibm-software-central\nspec:\n
          \ storageClassName: rook-cephfs\n  accessModes:\n  - ReadWriteOnce\n  resources:\n
          \   requests:\n      storage: 1Gi\n```\n---\n#### Manually provision each
          PersistentVolume for the generated PersistentVolumeClaims with a specific
          StorageClass\n  - May be performed before or after creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`.  \n```\napiVersion: v1\nkind:
          PersistentVolume\nmetadata:\n  name: rhm-data-service-rhm-data-service-0\nspec:\n
          \ csi:\n    driver: rook-ceph.cephfs.csi.ceph.com\n    volumeHandle: rhm-data-service-rhm-data-service-0\n
          \ capacity:\n    storage: 1Gi\n  accessModes:\n    - ReadWriteOnce\n  persistentVolumeReclaimPolicy:
          Delete\n  storageClassName: rook-cephfs\n  volumeMode: Filesystem\n  claimRef:\n
          \   kind: PersistentVolumeClaim\n    namespace: ibm-software-central\n    name:
          rhm-data-service-rhm-data-service-0\n```\n\n### Kyverno Policies\n\nThe
          IBM Metrics Operator makes a best effort to comply with the Kyverno policies
          defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Metrics Operator is not replicated\n  - Service uptime is not considered
          critial, and can be rescheduled\n- metric-state is not replicated\n  - Service
          uptime is not considered critial, and can be rescheduled\n\n### Installation\n1.
          Create or get your [pull secret](https://swc.saas.ibm.com/en-us/documentation/clusters#get-pull-secret).\n2.
          Install the IBM Metrics Operator\n3. Create a Kubernetes secret in the installed
          namespace with the name `redhat-marketplace-pull-secret` and key `PULL_SECRET`
          with the value of the pull secret.\n    ```sh\n    # Replace ${PULL_SECRET}
          with your pull secret\n    oc create secret generic redhat-marketplace-pull-secret
          -n ibm-software-central --from-literal=PULL_SECRET=${PULL_SECRET}\n    ```\n4.
          Use of the platform is governed by the:\n\n    [IBM Cloud Services Agreement](https://www.ibm.com/support/customer/csol/terms/?id=Z126-6304_WS&_ga=2.116312197.2046730452.1684328846-812467790.1684328846)
          (or other base agreement between you and IBM such as a [Passport Advantage
          Agreement](https://www.ibm.com/software/passportadvantage/pa_agreements.html?_ga=2.116312197.2046730452.1684328846-812467790.1684328846))
          and the [Service Description for the Red Hat Marketplace](https://www.ibm.com/support/customer/csol/terms/?id=i126-8719&_ga=2.83289621.2046730452.1684328846-812467790.1684328846).\n
          \   \n5. Update MarketplaceConfig to accept the license.\n    ```\n    oc
          patch marketplaceconfig marketplaceconfig -n ibm-software-central --type='merge'
          -p '{\"spec\": {\"license\": {\"accept\": true}}}'\n    ```\n6. Install
          the pull secret as a global pull secret on the cluster.\n\n    These steps
          require `oc`, `jq`, and `base64` to be available on your machine.\n\n    ```sh\n
          \   # Create the docker pull secret file using your pull secret.\n    #
          Store it in a file called entitledregistryconfigjson.\n    oc create secret
          docker-registry entitled-registry --docker-server=registry.marketplace.redhat.com
          --docker-username \"cp\" --docker-password \"${PULL_SECRET}\" --dry-run=client
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > entitledregistryconfigjson\n
          \   # Get the current global secrets on the cluster and store it as a file
          named dockerconfigjson\n    oc get secret pull-secret -n openshift-config
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > dockerconfigjson\n
          \   # Merge the two dockerconfigs together into a file called dockerconfigjson-merged.\n
          \   jq -s '.[0] * .[1]' dockerconfigjson entitledregistryconfigjson > dockerconfigjson-merged\n
          \   # Set the cluster's dockerconfig file to the new merged version.\n    oc
          set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=dockerconfigjson-merged\n
          \   ```\n  7. (Optional) Your IBM product may have installed IBM Metrics
          Operator using an `ibm-entitlement-key` for authentication to IBM Software
          Central. To authorize the automatic creation of an IBM Software Central
          account for the IBM account owning the `ibm-entitlement-key`\n      ```\n
          \     oc patch marketplaceconfig marketplaceconfig -n ibm-software-central
          --type='merge' -p '{\"spec\": {\"authorizeAccountCreation\": true}}'\n      ```\n\n###
          Why is a global pull secret required?\nIn order to successfully install
          the products hosted by the container image registry, you will need to make
          the pull secret available across the cluster. This can be achieved by applying
          the pull as a [global pull secret](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html#images-update-global-pull-secret_using-image-pull-secrets).
          For alternative approaches, please see the official OpenShift [documentation](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html).\n\n\n###
          SecurityContextConstraints requirements\n\nThe Operators and their components
          support running under the OpenShift Container Platform default restricted
          and restricted-v2 security context constraints.\n\n### Installation Namespace
          and ClusterRoleBinding requirements\n\nThe IBM Metrics Operator components
          require specific ClusterRoleBindings.\n- The metric-state component requires
          a ClusterRoleBinding for the the `view` ClusterRole.\n  - Ability to read
          non-sensitive CustomResources. \n  - The `view` ClusterRole dynamically
          adds new CustomResourceDefinitions.\n- The operator & reporter component
          requires a ClusterRoleBinding for the the `cluster-monitoring-view` ClusterRole.\n
          \ - Ability to view Prometheus metrics. \n  - The underlying ClusterRole
          RBAC often updated between OpenShift versions.\n\nDue to limitations of
          Operator Lifecycle Manager (OLM), this ClusterRoleBinding can not be provided
          dynamically for arbitrary installation target namespaces.\n\nA static ClusterRoleBinding
          is included for installation to the default namespace of `ibm-software-central`,
          and namespaces `openshift-redhat-marketplace`,  `redhat-marketplace`, `ibm-common-services`.\n\nTo
          create the ClusterRoleBindings for installation to an alternate namespace\n```\noc
          project INSTALL-NAMESPACE\noc adm policy add-cluster-role-to-user view -z
          ibm-metrics-operator-metric-state\noc adm policy add-cluster-role-to-user
          cluster-monitoring-view -z ibm-metrics-operator-controller-manager,ibm-metrics-operator-reporter\n```\n\n###
          Metric State scoping requirements\nThe metric-state Deployment obtains `get/list/watch`
          access to metered resources via the `view` ClusterRole. For operators deployed
          using Operator Lifecycle Manager (OLM), permissions are added to `clusterrole/view`
          dynamically via a generated and annotated `-view` ClusterRole. If you wish
          to meter an operator, and its Custom Resource Definitions (CRDs) are not
          deployed through OLM, one of two options are required\n1. Add the following
          label to a clusterrole that has get/list/watch access to your CRD: `rbac.authorization.k8s.io/aggregate-to-view:
          \"true\"`, thereby dynamically adding it to `clusterrole/view`\n2. Create
          a ClusterRole that has get/list/watch access to your CRD, and create a ClusterRoleBinding
          for the metric-state ServiceAccount\n\nAttempting to meter a resource with
          a MeterDefinition without the required permissions will log an `AccessDeniedError`
          in metric-state.\n\n### Disaster Recovery\n\nTo plan for disaster recovery,
          note the PhysicalVolumeClaims `rhm-data-service-rhm-data-service-N`. \n-
          In connected environments, MeterReport data upload attempts occur hourly,
          and are then removed from data-service. There is a low risk of losing much
          unreported data.\n- In an airgap environment, MeterReport data must be pulled
          from data-service and uploaded manually using [datactl](https://github.com/redhat-marketplace/datactl/).
          To prevent data loss in a disaster scenario, the data-service volumes should
          be considered in a recovery plan.\n\n### Subscription Config\n\nIt is possible
          to [configure](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md)
          how OLM deploys an Operator via the `config` field in the [Subscription](https://github.com/operator-framework/olm-book/blob/master/docs/subscriptions.md)
          object.\n\nThe IBM Metrics Operator will also read the `config` and append
          it to the operands. The primary use case is to control scheduling using
          [Tolerations](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/)
          and [NodeSelectors](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/).\n\nA
          limitation is that the `config` elements are only appended to the operands.
          The elements in the operands are not removed if the `config` is removed
          from the `Subscripion`. The operand must be modified manually, or deleted
          and recreated by the controller.\n\n### Cluster permission requirements\n\n|API
          group             |Resources              |Verbs                                     |\n|----------------------|-----------------------|------------------------------------------|\n|apps
          \                 |statefulsets           |get;list;watch                            |\n|authentication.k8s.io
          |tokenreviews           |create                                    |\n|authorization.k8s.io
          \ |subjectaccessreviews   |create                                    |\n|config.openshift.io
          \  |clusterversions        |get;list;watch                            |\n|marketplace.redhat.com|meterdefinitions
          \      |get;list;watch;create;update;patch;delete |\n|operators.coreos.com
          \ |clusterserviceversions |get;list;watch                            |\n|operators.coreos.com
          \ |subscriptions          |get;list;watch                            |\n|operators.coreos.com
          \ |operatorgroups         |get;list                                  |\n|storage.k8s.io
          \       |storageclasses         |get;list;watch                            |\n|
          \                     |namespaces             |get;list;watch                            |\n|
          \                     |configmaps             |get;list;watch                            |\n|
          \                     |services               |get;list;watch                            |\n|
          \                     |**clusterrole/view**   |                                          |\n\n\n###
          Documentation\nYou can find our documentation [here.](https://swc.saas.ibm.com/en-us/documentation/)\n\n###
          Getting help\nIf you encounter any issues while using the operators, you
          can create an issue on our [Github\nrepo](https://github.com/redhat-marketplace/redhat-marketplace-operator)
          for bugs, enhancements, or other requests. You can also visit our main page
          and\nreview our [support](https://swc.saas.ibm.com/en-us/support) and [documentation](https://swc.saas.ibm.com/en-us/documentation/).\n\n###
          Readme\nYou can find our readme [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/README.md)\n\n###
          License information\nYou can find our license information [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/LICENSE)\n"
        displayName: IBM Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        - buy
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - registry.connect.redhat.com/rh-marketplace/ibm-metrics-operator-bundle@sha256:a9294ebb6036eca0746bb1ec8d4155727e4dc7ff25060c70bbd10c0604558c37
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
        - quay.io/rh-marketplace/redhat-marketplace-authcheck@sha256:1d48baed94b33491edd62a525c776b3d0866a9255c60ad14ce1aee6735ffe07f
        - quay.io/rh-marketplace/redhat-marketplace-data-service@sha256:9b82b79f9324bb0c394b42e45e5db11854b86d70a40d6b5951ae3af873ab9760
        - quay.io/rh-marketplace/redhat-marketplace-metric-state@sha256:f59cb18b99ccf9c184b0e3cdb941ab90a54262dff177177eaf3e6318dda36213
        - quay.io/rh-marketplace/redhat-marketplace-reporter@sha256:4c46af0f581620fbd0dac4005e31a76f2746eb3b60a881f5fcb13c1547b15c98
        version: 2.23.1
      entries:
      - name: ibm-metrics-operator.v2.23.1
        version: 2.23.1
      name: beta
    - currentCSV: ibm-metrics-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MarketplaceConfig",
                "metadata": {
                  "name": "marketplaceconfig"
                },
                "spec": {
                  "features": {
                    "deployment": true,
                    "meterDefinitionCatalogServer": false,
                    "registration": true
                  },
                  "installIBMCatalogSource": true,
                  "isDisconnected": false,
                  "license": {
                    "accept": false
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterBase",
                "metadata": {
                  "name": "meterbase"
                },
                "spec": {
                  "enabled": true,
                  "prometheus": {
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      },
                      "requests": {
                        "cpu": "1",
                        "memory": "1G"
                      }
                    },
                    "storage": {
                      "size": "20Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "MeterReport",
                "metadata": {
                  "name": "example-meterreport"
                },
                "spec": {
                  "endTime": "2020-08-05T00:00:00Z",
                  "prometheusService": {
                    "name": "rhm-prometheus-meterbase",
                    "namespace": "openshift-redhat-marketplace",
                    "targetPort": "rbac"
                  },
                  "startTime": "2020-08-04T00:00:00Z"
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "example-meterdefinition-4"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              },
              {
                "apiVersion": "marketplace.redhat.com/v1beta1",
                "kind": "MeterDefinition",
                "metadata": {
                  "name": "meterdefinition-sample"
                },
                "spec": {
                  "group": "partner.metering.com",
                  "kind": "App",
                  "meters": [
                    {
                      "aggregation": "sum",
                      "metricId": "container_cpu_usage_core_avg",
                      "period": "1h",
                      "query": "rate(container_cpu_usage_seconds_total{cpu=\"total\",container=\"db\"}[5m])*100",
                      "workloadType": "Pod"
                    }
                  ],
                  "resourceFilters": [
                    {
                      "namespace": {
                        "useOperatorGroup": true
                      },
                      "ownerCRD": {
                        "apiVersion": "marketplace.redhat.com/v1alpha1",
                        "kind": "RazeeDeployment"
                      },
                      "workloadType": "Pod"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
          createdAt: "2025-12-17T09:32:46Z"
          description: The IBM Metrics Operator provides workload metering and reporting
            for IBM and Red Hat Marketplace customers.
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MarketplaceConfig is configuration manager for our Red Hat Marketplace controllers
              By installing this product you accept the license terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterBase is the resource that sets up Metering for Red Hat Marketplace.
              This is an internal resource not meant to be modified directly.
            displayName: Meter Base
            kind: MeterBase
            name: meterbases.marketplace.redhat.com
            version: v1alpha1
          - description: |-
              MeterDefinition defines the meter workloads used to enable pay for
              use billing.
            displayName: Meter Definition
            kind: MeterDefinition
            name: meterdefinitions.marketplace.redhat.com
            version: v1beta1
          - kind: MeterReport
            name: meterreports.marketplace.redhat.com
            version: v1alpha1
        description: "The IBM Metrics Operator provides workload metering and reporting
          for IBM Software Central and Red Hat Marketplace customers.\n### **Important
          Note**\nA set of instructions for onboarding is provided here. For more
          detailed onboarding instructions or information about what is installed
          please visit [swc.saas.ibm.com](https://swc.saas.ibm.com).\n\nUsage metrics
          may be monitored through [https://swc.saas.ibm.com](https://swc.saas.ibm.com)
          with only IBM Metrics Operator and a Red Hat Marketplace account.\n\n###
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n### Prerequisites\n1. Installations are required
          to [enable monitoring for user-defined projects](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)
          as the Prometheus provider.\n2. Edit the cluster-monitoring-config ConfigMap
          object:\n\n   ```sh\n   $ oc -n openshift-monitoring edit configmap cluster-monitoring-config\n
          \   ```\n\n3. Add enableUserWorkload: true under data/config.yaml:\n  \n
          \   ```sh\n    apiVersion: v1\n    kind: ConfigMap\n    metadata:\n      name:
          cluster-monitoring-config\n        namespace: openshift-monitoring\n    data:\n
          \     config.yaml: |\n        enableUserWorkload: true\n    ```\n\n4. Configure
          the user-workload-monitoring-config ConfigMap object:\n\n    ```sh\n    $
          oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config\n
          \   ```\n\n5. Configure a minimum retention time of 168h and minimum storage
          capacity of 40Gi\n  \n    ```sh\n    apiVersion: v1\n    kind: ConfigMap\n
          \   metadata:\n      name: user-workload-monitoring-config\n      namespace:
          openshift-user-workload-monitoring\n\n    data:\n      config.yaml: |\n
          \       prometheus:\n          retention: 168h\n          volumeClaimTemplate:\n
          \           spec:\n              resources:\n                requests:\n
          \                 storage: 40Gi\n    ```\n\n### Resources Required\n\nMinimum
          system resources required:\n\n| Operator                | Memory (MB) |
          CPU (cores) | Disk (GB) | Nodes |\n| ----------------------- | -----------
          | ----------- | --------- | ----- |\n| **Metrics**   |        750  |     0.25
          \   | 3x1       |    3  |\n| **Deployment** |        250  |     0.25    |
          -         |    1  |\n\n| Prometheus Provider  | Memory (GB) | CPU (cores)
          | Disk (GB) | Nodes |\n| --------- | ----------- | ----------- | ---------
          | ----- |\n| **[Openshift User Workload Monitoring](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)**
          |          1  |     0.1       | 2x40        |   2    |\n\nMultiple nodes
          are required to provide pod scheduling for high availability for IBM Metrics
          Operator Data Service and Prometheus.\n\nThe IBM Metrics Operator automatically
          creates 3 x 1Gi PersistentVolumeClaims to store reports as part of the data
          service, with _ReadWriteOnce_ access mode. Te PersistentVolumeClaims are
          automatically created by the ibm-metrics-operator after creating a `redhat-marketplace-pull-secret`
          and accepting the license in `marketplaceconfig`.\n\n| NAME                                |
          CAPACITY | ACCESS MODES |\n| ----------------------------------- | --------
          | ------------ |\n| rhm-data-service-rhm-data-service-0 | 1Gi | RWO |\n|
          rhm-data-service-rhm-data-service-1 | 1Gi | RWO |\n| rhm-data-service-rhm-data-service-2
          | 1Gi | RWO |\n\n### Supported Storage Providers\n\n- OpenShift Container
          Storage / OpenShift Data Foundation version 4.x, from version 4.2 or higher\n-
          IBM Cloud Block storage and IBM Cloud File storage\n- IBM Storage Suite
          for IBM Cloud Paks:\n  - File storage from IBM Spectrum Fusion/Scale \n
          \ - Block storage from IBM Spectrum Virtualize, FlashSystem or DS8K\n- Portworx
          Storage, version 2.5.5 or above\n- Amazon Elastic File Storage\n- Azure
          Disk Storage (disk.csi.azure.com)\n\n#### Known Problematic Storage Providers\n\n-
          Azure File Storage (file.csi.azure.com)\n\n### Access Modes required\n\n
          - ReadWriteOnce (RWO)\n\n### Provisioning Options supported\n\nChoose one
          of the following options to provision storage for the ibm-metrics-operator
          data-service\n\n#### Dynamic provisioning using a default StorageClass\n
          \  - A StorageClass is defined with a `metadata.annotations: storageclass.kubernetes.io/is-default-class:
          \"true\"`\n   - PersistentVolumes will be provisioned automatically for
          the generated PersistentVolumeClaims\n--- \n#### Manually create each PersistentVolumeClaim
          with a specific StorageClass\n   - Must be performed before creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`. Otherwise, the automatically
          generated PersistentVolumeClaims are immutable.\n```\napiVersion: v1\nkind:
          PersistentVolumeClaim\nmetadata:\n  labels:\n    app: rhm-data-service\n
          \ name: rhm-data-service-rhm-data-service-0\n  namespace: ibm-software-central\nspec:\n
          \ storageClassName: rook-cephfs\n  accessModes:\n  - ReadWriteOnce\n  resources:\n
          \   requests:\n      storage: 1Gi\n```\n---\n#### Manually provision each
          PersistentVolume for the generated PersistentVolumeClaims with a specific
          StorageClass\n  - May be performed before or after creating a `redhat-marketplace-pull-secret`
          or accepting the license in `marketplaceconfig`.  \n```\napiVersion: v1\nkind:
          PersistentVolume\nmetadata:\n  name: rhm-data-service-rhm-data-service-0\nspec:\n
          \ csi:\n    driver: rook-ceph.cephfs.csi.ceph.com\n    volumeHandle: rhm-data-service-rhm-data-service-0\n
          \ capacity:\n    storage: 1Gi\n  accessModes:\n    - ReadWriteOnce\n  persistentVolumeReclaimPolicy:
          Delete\n  storageClassName: rook-cephfs\n  volumeMode: Filesystem\n  claimRef:\n
          \   kind: PersistentVolumeClaim\n    namespace: ibm-software-central\n    name:
          rhm-data-service-rhm-data-service-0\n```\n\n### Kyverno Policies\n\nThe
          IBM Metrics Operator makes a best effort to comply with the Kyverno policies
          defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Metrics Operator is not replicated\n  - Service uptime is not considered
          critial, and can be rescheduled\n- metric-state is not replicated\n  - Service
          uptime is not considered critial, and can be rescheduled\n\n### Installation\n1.
          Create or get your [pull secret](https://swc.saas.ibm.com/en-us/documentation/clusters#get-pull-secret).\n2.
          Install the IBM Metrics Operator\n3. Create a Kubernetes secret in the installed
          namespace with the name `redhat-marketplace-pull-secret` and key `PULL_SECRET`
          with the value of the pull secret.\n    ```sh\n    # Replace ${PULL_SECRET}
          with your pull secret\n    oc create secret generic redhat-marketplace-pull-secret
          -n ibm-software-central --from-literal=PULL_SECRET=${PULL_SECRET}\n    ```\n4.
          Use of the platform is governed by the:\n\n    [IBM Cloud Services Agreement](https://www.ibm.com/support/customer/csol/terms/?id=Z126-6304_WS&_ga=2.116312197.2046730452.1684328846-812467790.1684328846)
          (or other base agreement between you and IBM such as a [Passport Advantage
          Agreement](https://www.ibm.com/software/passportadvantage/pa_agreements.html?_ga=2.116312197.2046730452.1684328846-812467790.1684328846))
          and the [Service Description for the Red Hat Marketplace](https://www.ibm.com/support/customer/csol/terms/?id=i126-8719&_ga=2.83289621.2046730452.1684328846-812467790.1684328846).\n
          \   \n5. Update MarketplaceConfig to accept the license.\n    ```\n    oc
          patch marketplaceconfig marketplaceconfig -n ibm-software-central --type='merge'
          -p '{\"spec\": {\"license\": {\"accept\": true}}}'\n    ```\n6. Install
          the pull secret as a global pull secret on the cluster.\n\n    These steps
          require `oc`, `jq`, and `base64` to be available on your machine.\n\n    ```sh\n
          \   # Create the docker pull secret file using your pull secret.\n    #
          Store it in a file called entitledregistryconfigjson.\n    oc create secret
          docker-registry entitled-registry --docker-server=registry.marketplace.redhat.com
          --docker-username \"cp\" --docker-password \"${PULL_SECRET}\" --dry-run=client
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > entitledregistryconfigjson\n
          \   # Get the current global secrets on the cluster and store it as a file
          named dockerconfigjson\n    oc get secret pull-secret -n openshift-config
          --output=\"jsonpath={.data.\\.dockerconfigjson}\" | base64 --decode > dockerconfigjson\n
          \   # Merge the two dockerconfigs together into a file called dockerconfigjson-merged.\n
          \   jq -s '.[0] * .[1]' dockerconfigjson entitledregistryconfigjson > dockerconfigjson-merged\n
          \   # Set the cluster's dockerconfig file to the new merged version.\n    oc
          set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=dockerconfigjson-merged\n
          \   ```\n  7. (Optional) Your IBM product may have installed IBM Metrics
          Operator using an `ibm-entitlement-key` for authentication to IBM Software
          Central. To authorize the automatic creation of an IBM Software Central
          account for the IBM account owning the `ibm-entitlement-key`\n      ```\n
          \     oc patch marketplaceconfig marketplaceconfig -n ibm-software-central
          --type='merge' -p '{\"spec\": {\"authorizeAccountCreation\": true}}'\n      ```\n\n###
          Why is a global pull secret required?\nIn order to successfully install
          the products hosted by the container image registry, you will need to make
          the pull secret available across the cluster. This can be achieved by applying
          the pull as a [global pull secret](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html#images-update-global-pull-secret_using-image-pull-secrets).
          For alternative approaches, please see the official OpenShift [documentation](https://docs.openshift.com/container-platform/latest/openshift_images/managing_images/using-image-pull-secrets.html).\n\n\n###
          SecurityContextConstraints requirements\n\nThe Operators and their components
          support running under the OpenShift Container Platform default restricted
          and restricted-v2 security context constraints.\n\n### Installation Namespace
          and ClusterRoleBinding requirements\n\nThe IBM Metrics Operator components
          require specific ClusterRoleBindings.\n- The metric-state component requires
          a ClusterRoleBinding for the the `view` ClusterRole.\n  - Ability to read
          non-sensitive CustomResources. \n  - The `view` ClusterRole dynamically
          adds new CustomResourceDefinitions.\n- The operator & reporter component
          requires a ClusterRoleBinding for the the `cluster-monitoring-view` ClusterRole.\n
          \ - Ability to view Prometheus metrics. \n  - The underlying ClusterRole
          RBAC often updated between OpenShift versions.\n\nDue to limitations of
          Operator Lifecycle Manager (OLM), this ClusterRoleBinding can not be provided
          dynamically for arbitrary installation target namespaces.\n\nA static ClusterRoleBinding
          is included for installation to the default namespace of `ibm-software-central`,
          and namespaces `openshift-redhat-marketplace`,  `redhat-marketplace`, `ibm-common-services`.\n\nTo
          create the ClusterRoleBindings for installation to an alternate namespace\n```\noc
          project INSTALL-NAMESPACE\noc adm policy add-cluster-role-to-user view -z
          ibm-metrics-operator-metric-state\noc adm policy add-cluster-role-to-user
          cluster-monitoring-view -z ibm-metrics-operator-controller-manager,ibm-metrics-operator-reporter\n```\n\n###
          Metric State scoping requirements\nThe metric-state Deployment obtains `get/list/watch`
          access to metered resources via the `view` ClusterRole. For operators deployed
          using Operator Lifecycle Manager (OLM), permissions are added to `clusterrole/view`
          dynamically via a generated and annotated `-view` ClusterRole. If you wish
          to meter an operator, and its Custom Resource Definitions (CRDs) are not
          deployed through OLM, one of two options are required\n1. Add the following
          label to a clusterrole that has get/list/watch access to your CRD: `rbac.authorization.k8s.io/aggregate-to-view:
          \"true\"`, thereby dynamically adding it to `clusterrole/view`\n2. Create
          a ClusterRole that has get/list/watch access to your CRD, and create a ClusterRoleBinding
          for the metric-state ServiceAccount\n\nAttempting to meter a resource with
          a MeterDefinition without the required permissions will log an `AccessDeniedError`
          in metric-state.\n\n### Disaster Recovery\n\nTo plan for disaster recovery,
          note the PhysicalVolumeClaims `rhm-data-service-rhm-data-service-N`. \n-
          In connected environments, MeterReport data upload attempts occur hourly,
          and are then removed from data-service. There is a low risk of losing much
          unreported data.\n- In an airgap environment, MeterReport data must be pulled
          from data-service and uploaded manually using [datactl](https://github.com/redhat-marketplace/datactl/).
          To prevent data loss in a disaster scenario, the data-service volumes should
          be considered in a recovery plan.\n\n### Subscription Config\n\nIt is possible
          to [configure](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md)
          how OLM deploys an Operator via the `config` field in the [Subscription](https://github.com/operator-framework/olm-book/blob/master/docs/subscriptions.md)
          object.\n\nThe IBM Metrics Operator will also read the `config` and append
          it to the operands. The primary use case is to control scheduling using
          [Tolerations](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/)
          and [NodeSelectors](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/).\n\nA
          limitation is that the `config` elements are only appended to the operands.
          The elements in the operands are not removed if the `config` is removed
          from the `Subscripion`. The operand must be modified manually, or deleted
          and recreated by the controller.\n\n### Cluster permission requirements\n\n|API
          group             |Resources              |Verbs                                     |\n|----------------------|-----------------------|------------------------------------------|\n|apps
          \                 |statefulsets           |get;list;watch                            |\n|authentication.k8s.io
          |tokenreviews           |create                                    |\n|authorization.k8s.io
          \ |subjectaccessreviews   |create                                    |\n|config.openshift.io
          \  |clusterversions        |get;list;watch                            |\n|marketplace.redhat.com|meterdefinitions
          \      |get;list;watch;create;update;patch;delete |\n|operators.coreos.com
          \ |clusterserviceversions |get;list;watch                            |\n|operators.coreos.com
          \ |subscriptions          |get;list;watch                            |\n|operators.coreos.com
          \ |operatorgroups         |get;list                                  |\n|storage.k8s.io
          \       |storageclasses         |get;list;watch                            |\n|
          \                     |namespaces             |get;list;watch                            |\n|
          \                     |configmaps             |get;list;watch                            |\n|
          \                     |services               |get;list;watch                            |\n|
          \                     |**clusterrole/view**   |                                          |\n\n\n###
          Documentation\nYou can find our documentation [here.](https://swc.saas.ibm.com/en-us/documentation/)\n\n###
          Getting help\nIf you encounter any issues while using the operators, you
          can create an issue on our [Github\nrepo](https://github.com/redhat-marketplace/redhat-marketplace-operator)
          for bugs, enhancements, or other requests. You can also visit our main page
          and\nreview our [support](https://swc.saas.ibm.com/en-us/support) and [documentation](https://swc.saas.ibm.com/en-us/documentation/).\n\n###
          Readme\nYou can find our readme [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/README.md)\n\n###
          License information\nYou can find our license information [here.](https://github.com/redhat-marketplace/redhat-marketplace-operator/blob/develop/LICENSE)\n"
        displayName: IBM Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        - buy
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - quay.io/rh-marketplace/ibm-metrics-operator@sha256:cfa158d35bd18e64e9b39962f948ff65913b9cf57eb7ab3fe1da869b7284b357
        - quay.io/rh-marketplace/redhat-marketplace-authcheck@sha256:1d48baed94b33491edd62a525c776b3d0866a9255c60ad14ce1aee6735ffe07f
        - quay.io/rh-marketplace/redhat-marketplace-data-service@sha256:9b82b79f9324bb0c394b42e45e5db11854b86d70a40d6b5951ae3af873ab9760
        - quay.io/rh-marketplace/redhat-marketplace-metric-state@sha256:f59cb18b99ccf9c184b0e3cdb941ab90a54262dff177177eaf3e6318dda36213
        - quay.io/rh-marketplace/redhat-marketplace-reporter@sha256:4c46af0f581620fbd0dac4005e31a76f2746eb3b60a881f5fcb13c1547b15c98
        - registry.connect.redhat.com/rh-marketplace/ibm-metrics-operator-bundle@sha256:a9294ebb6036eca0746bb1ec8d4155727e4dc7ff25060c70bbd10c0604558c37
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 2.23.1
      entries:
      - name: ibm-metrics-operator.v2.23.1
        version: 2.23.1
      name: stable
    defaultChannel: stable
    packageName: ibm-metrics-operator
    provider:
      name: Red Hat Marketplace
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-hive-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hive-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/hive-operator@sha256:747e784c89fcd8cd7b1fd7868d4c768dd971d6859c5f261fe8cb8eaf72f7946b
          description: Stackable Operator for Apache Hive
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/hive-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for HiveClusterSpec via `CustomResource`
            displayName: hiveclusters.hive.stackable.tech
            kind: HiveCluster
            name: hiveclusters.hive.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Hive
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hive
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/hive-operator@sha256:747e784c89fcd8cd7b1fd7868d4c768dd971d6859c5f261fe8cb8eaf72f7946b
        - registry.connect.redhat.com/stackable/stackable-apache-hive-operator@sha256:e5e7f52e18a640ea5a7b11897b9609352c9e7dd1c44ff26d387dae0a2ac4146e
        version: 25.11.0
      entries:
      - name: hive-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-hive-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-acm-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-acm-controller.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acm.services.k8s.aws/v1alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/acm-controller:1.3.1
          createdAt: "2026-01-06T21:08:05Z"
          description: AWS ACM controller is a service controller for managing ACM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Certificate represents the state of an AWS acm Certificate
              resource.
            displayName: Certificate
            kind: Certificate
            name: certificates.acm.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage AWS Certificate Manager (ACM) resources in AWS from within your Kubernetes cluster.

          **About Amazon ACM**

          AWS Certificate Manager (ACM) handles the complexity of creating, storing, and renewing public and private SSL/TLS X.509 certificates and keys that protect your AWS websites and applications. You can provide certificates for your [integrated AWS services](https://docs.aws.amazon.com/acm/latest/userguide/acm-services.html) either by issuing them directly with ACM or by [importing](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) third-party certificates into the ACM management system. ACM certificates can secure singular domain names, multiple specific domain names, wildcard domains, or combinations of these. ACM wildcard certificates can protect an unlimited number of subdomains. You can also [export](https://docs.aws.amazon.com/acm/latest/userguide/export-private.html) ACM certificates signed by AWS Private CA for use anywhere in your internal PKI.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon ACM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acm
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ACM Developer Resources
          url: https://aws.amazon.com/certificate-manager/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: acm maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/acm-controller:1.3.1
        - quay.io/community-operator-pipeline-prod/ack-acm-controller@sha256:24162be9245765e977980ef0868d3ed5b823ef412a14cfefdc7c2fcf36d00036
        version: 1.3.1
      entries:
      - name: ack-acm-controller.v1.3.1
        version: 1.3.1
      - name: ack-acm-controller.v1.3.0
        version: 1.3.0
      - name: ack-acm-controller.v1.2.0
        version: 1.2.0
      - name: ack-acm-controller.v1.1.2
        version: 1.1.2
      - name: ack-acm-controller.v1.1.1
        version: 1.1.1
      - name: ack-acm-controller.v1.1.0
        version: 1.1.0
      - name: ack-acm-controller.v1.0.13
        version: 1.0.13
      - name: ack-acm-controller.v1.0.12
        version: 1.0.12
      - name: ack-acm-controller.v1.0.11
        version: 1.0.11
      - name: ack-acm-controller.v1.0.10
        version: 1.0.10
      - name: ack-acm-controller.v1.0.9
        version: 1.0.9
      - name: ack-acm-controller.v1.0.8
        version: 1.0.8
      - name: ack-acm-controller.v1.0.7
        version: 1.0.7
      - name: ack-acm-controller.v1.0.6
        version: 1.0.6
      - name: ack-acm-controller.v1.0.5
        version: 1.0.5
      - name: ack-acm-controller.v1.0.4
        version: 1.0.4
      - name: ack-acm-controller.v1.0.1
        version: 1.0.1
      - name: ack-acm-controller.v1.0.0
        version: 1.0.0
      - name: ack-acm-controller.v0.0.20
        version: 0.0.20
      - name: ack-acm-controller.v0.0.19
        version: 0.0.19
      - name: ack-acm-controller.v0.0.18
        version: 0.0.18
      - name: ack-acm-controller.v0.0.17
        version: 0.0.17
      - name: ack-acm-controller.v0.0.16
        version: 0.0.16
      - name: ack-acm-controller.v0.0.12
        version: 0.0.12
      - name: ack-acm-controller.v0.0.10
        version: 0.0.10
      - name: ack-acm-controller.v0.0.9
        version: 0.0.9
      - name: ack-acm-controller.v0.0.6
        version: 0.0.6
      - name: ack-acm-controller.v0.0.5
        version: 0.0.5
      - name: ack-acm-controller.v0.0.4
        version: 0.0.4
      - name: ack-acm-controller.v0.0.2
        version: 0.0.2
      - name: ack-acm-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-acm-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: External Secrets
      provider-url: https://external-secrets.io
    name: external-secrets-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: external-secrets-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": "1234"
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "key": "provider-key",
                      "property": "provider-key-property",
                      "version": "provider-key-version"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "name": "hello-world"
                },
                "spec": {
                  "externalSecretName": "hello-world-es",
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "provider-key",
                          "property": "provider-key-property",
                          "version": "provider-key-version"
                        },
                        "secretKey": "secret-key-to-be-managed"
                      }
                    ],
                    "dataFrom": [
                      {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "SecretStore",
                      "name": "secret-store-name"
                    },
                    "target": {
                      "creationPolicy": "Merge",
                      "name": "my-secret",
                      "template": {
                        "data": {
                          "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                        },
                        "metadata": {
                          "annotations": {},
                          "labels": {}
                        },
                        "templateFrom": [
                          {
                            "configMap": {
                              "items": [
                                {
                                  "key": "alertmanager.yaml"
                                }
                              ],
                              "name": "alertmanager"
                            }
                          }
                        ],
                        "type": "kubernetes.io/dockerconfigjson"
                      }
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "cool": "label"
                    }
                  },
                  "refreshTime": "1m"
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": 1234
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "extract": {
                        "conversionStrategy": "Default",
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    },
                    {
                      "find": {
                        "conversionStrategy": "Unicode",
                        "name": {
                          "regexp": ".*foobar.*"
                        },
                        "path": "path-to-filter",
                        "tags": {
                          "foo": "bar"
                        }
                      }
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "deletionPolicy": "Retain",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.external-secrets.io/v1alpha1",
                "kind": "OperatorConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "affinity": {},
                  "certController": {
                    "affinity": {},
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "requeueInterval": "5m",
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  },
                  "concurrent": 1,
                  "controllerClass": "",
                  "crds": {
                    "createClusterExternalSecret": true,
                    "createClusterSecretStore": true
                  },
                  "createOperator": true,
                  "deploymentAnnotations": {},
                  "extraArgs": {},
                  "extraEnv": [],
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/external-secrets/external-secrets",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "installCRDs": false,
                  "leaderElect": false,
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": "",
                  "processClusterExternalSecret": true,
                  "processClusterStore": true,
                  "prometheus": {
                    "enabled": false,
                    "service": {
                      "port": 8080
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 1,
                  "resources": {},
                  "scopedNamespace": "",
                  "scopedRBAC": false,
                  "securityContext": {},
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": ""
                  },
                  "tolerations": [],
                  "webhook": {
                    "affinity": {},
                    "certCheckInterval": "5m",
                    "certDir": "/tmp/certs",
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
          createdAt: "2024-12-03T10:44:19Z"
          description: Operator to configure external-secrets helm-chart based operator
          operatorframework.io/cluster-monitoring: "true"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/external-secrets/external-secrets-helm-operator
          support: external-secrets
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster scoped resource that allows you to manage ExternalSecrets
              across namespaces
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1beta1
          - kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1alpha1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1beta1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1beta1
          - kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1alpha1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1beta1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1beta1
          - kind: Fake
            name: fakes.generators.external-secrets.io
            version: v1alpha1
          - kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Configures external-secrets helm-chart based operator
            displayName: OperatorConfig
            kind: OperatorConfig
            name: operatorconfigs.operator.external-secrets.io
            version: v1alpha1
          - kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1alpha1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1beta1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1beta1
          - kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK (Helm version) to configure **[official external-secrets operator helm chart](https://github.com/external-secrets/external-secrets)**, so it can be installed via OLM without having to do any change on current Helm Charts.

          Before any other resources provided by this Operator can be deployed, it is essential to create an
          OperatorConfig resource.

          The usual Helm Chart file `values.yaml`, like:
          ```yaml
          prometheus:
            enabled: true
            service:
              port: 8080
          resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          need to be encapsulated into a new custom resource called `OperatorConfig`:
          ```yaml
          apiVersion: operator.external-secrets.io/v1alpha1
          kind: OperatorConfig
          metadata:
            name: cluster
          spec:
            prometheus:
              enabled: true
              service:
                port: 8080
            resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          Once the OperatorConfig resource is deployed, the operator will create all helm chart resources, using the custom resource name as a preffix for all resources names, like for example a `Deployment` called `cluster-external-secrets`.

          ## Documentation

          * [Upstream Documentation](https://external-secrets.io)
          * [Helm Operator Install](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/install.md)
          * [Helm Operator Development](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/development.md)
          * [Helm Operator Release](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/release.md)

          ## Contributing

          You can contribute by:

          * Raising any issues you find using External Secrets Operator
          * Fixing issues by opening [Pull Requests](https://github.com/external-secrets/external-secrets-helm-operator/pulls)
          * Submitting a patch or opening a PR
          * Improving documentation
          * Talking about External Secrets Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/external-secrets/external-secrets-helm-operator/issues).

          ## License

          External Secrets Operator is under Apache 2.0 license. See the [LICENSE](LICENSE) file for details.
        displayName: External Secrets Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secrets
        - secrets-manager
        - vault
        - aws
        - azure
        - google
        - ibm
        - akeyless
        - yandex
        - gitlab
        - oracle
        links:
        - name: External Secrets Operator
          url: https://external-secrets.io
        - name: GitHub
          url: https://github.com/external-secrets/external-secrets
        - name: Slack
          url: https://kubernetes.slack.com/messages/external-secrets
        maintainers:
        - email: contact@external-secrets.io
          name: external-secrets community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: External Secrets
          url: https://external-secrets.io
        relatedImages:
        - ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
        - quay.io/community-operator-pipeline-prod/external-secrets-operator@sha256:6fa2ddca55d1d134b0938b47ea8a861de7408fa566ad806b200a379b8500a2a1
        version: 0.11.0
      entries:
      - name: external-secrets-operator.v0.11.0
        version: 0.11.0
      - name: external-secrets-operator.v0.10.7
        version: 0.10.7
      - name: external-secrets-operator.v0.10.6
        version: 0.10.6
      - name: external-secrets-operator.v0.10.5
        version: 0.10.5
      - name: external-secrets-operator.v0.10.4
        version: 0.10.4
      - name: external-secrets-operator.v0.10.3
        version: 0.10.3
      - name: external-secrets-operator.v0.10.2
        version: 0.10.2
      - name: external-secrets-operator.v0.10.1
        version: 0.10.1
      - name: external-secrets-operator.v0.10.0
        version: 0.10.0
      - name: external-secrets-operator.v0.9.20
        version: 0.9.20
      - name: external-secrets-operator.v0.9.19
        version: 0.9.19
      - name: external-secrets-operator.v0.9.18
        version: 0.9.18
      - name: external-secrets-operator.v0.9.17
        version: 0.9.17
      - name: external-secrets-operator.v0.9.16
        version: 0.9.16
      - name: external-secrets-operator.v0.9.15-2
        version: 0.9.15-2
      - name: external-secrets-operator.v0.9.14
        version: 0.9.14
      - name: external-secrets-operator.v0.9.13
        version: 0.9.13
      - name: external-secrets-operator.v0.9.12
        version: 0.9.12
      - name: external-secrets-operator.v0.9.11
        version: 0.9.11
      - name: external-secrets-operator.v0.9.10
        version: 0.9.10
      - name: external-secrets-operator.v0.9.9
        version: 0.9.9
      - name: external-secrets-operator.v0.9.8
        version: 0.9.8
      - name: external-secrets-operator.v0.9.7
        version: 0.9.7
      - name: external-secrets-operator.v0.9.6
        version: 0.9.6
      - name: external-secrets-operator.v0.9.5
        version: 0.9.5
      - name: external-secrets-operator.v0.9.4
        version: 0.9.4
      - name: external-secrets-operator.v0.9.3
        version: 0.9.3
      - name: external-secrets-operator.v0.9.2
        version: 0.9.2
      - name: external-secrets-operator.v0.9.1
        version: 0.9.1
      - name: external-secrets-operator.v0.9.0
        version: 0.9.0
      - name: external-secrets-operator.v0.8.7
        version: 0.8.7
      - name: external-secrets-operator.v0.8.6
        version: 0.8.6
      - name: external-secrets-operator.v0.8.5
        version: 0.8.5
      - name: external-secrets-operator.v0.8.4
        version: 0.8.4
      - name: external-secrets-operator.v0.8.3
        version: 0.8.3
      - name: external-secrets-operator.v0.8.2
        version: 0.8.2
      - name: external-secrets-operator.v0.8.1
        version: 0.8.1
      - name: external-secrets-operator.v0.8.0
        version: 0.8.0
      - name: external-secrets-operator.v0.7.2
        version: 0.7.2
      - name: external-secrets-operator.v0.7.1
        version: 0.7.1
      - name: external-secrets-operator.v0.7.0
        version: 0.7.0
      - name: external-secrets-operator.v0.7.0-rc1
        version: 0.7.0-rc1
      - name: external-secrets-operator.v0.6.1
        version: 0.6.1
      - name: external-secrets-operator.v0.6.0
        version: 0.6.0
      - name: external-secrets-operator.v0.6.0-rc1
        version: 0.6.0-rc1
      - name: external-secrets-operator.v0.5.9
        version: 0.5.9
      - name: external-secrets-operator.v0.5.8
        version: 0.5.8
      - name: external-secrets-operator.v0.5.7
        version: 0.5.7
      - name: external-secrets-operator.v0.5.6
        version: 0.5.6
      - name: external-secrets-operator.v0.5.5
        version: 0.5.5
      - name: external-secrets-operator.v0.5.4
        version: 0.5.4
      - name: external-secrets-operator.v0.5.3
        version: 0.5.3
      - name: external-secrets-operator.v0.5.2
        version: 0.5.2
      - name: external-secrets-operator.v0.5.1
        version: 0.5.1
      - name: external-secrets-operator.v0.5.0
        version: 0.5.0
      - name: external-secrets-operator.v0.4.4
        version: 0.4.4
      - name: external-secrets-operator.v0.4.3
        version: 0.4.3
      - name: external-secrets-operator.v0.4.2
        version: 0.4.2
      - name: external-secrets-operator.v0.4.1
        version: 0.4.1
      - name: external-secrets-operator.v0.3.11
        version: 0.3.11
      - name: external-secrets-operator.v0.3.10
        version: 0.3.10
      - name: external-secrets-operator.v0.3.9
        version: 0.3.9
      - name: external-secrets-operator.v0.3.8
        version: 0.3.8
      name: alpha
    - currentCSV: external-secrets-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": "1234"
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "key": "provider-key",
                      "property": "provider-key-property",
                      "version": "provider-key-version"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "name": "hello-world"
                },
                "spec": {
                  "externalSecretName": "hello-world-es",
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "provider-key",
                          "property": "provider-key-property",
                          "version": "provider-key-version"
                        },
                        "secretKey": "secret-key-to-be-managed"
                      }
                    ],
                    "dataFrom": [
                      {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "SecretStore",
                      "name": "secret-store-name"
                    },
                    "target": {
                      "creationPolicy": "Merge",
                      "name": "my-secret",
                      "template": {
                        "data": {
                          "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                        },
                        "metadata": {
                          "annotations": {},
                          "labels": {}
                        },
                        "templateFrom": [
                          {
                            "configMap": {
                              "items": [
                                {
                                  "key": "alertmanager.yaml"
                                }
                              ],
                              "name": "alertmanager"
                            }
                          }
                        ],
                        "type": "kubernetes.io/dockerconfigjson"
                      }
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "cool": "label"
                    }
                  },
                  "refreshTime": "1m"
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret",
                            "namespace": "example"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "acme.org/sha": 1234
                  },
                  "labels": {
                    "acme.org/owned-by": "q-team"
                  },
                  "name": "hello-world"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      },
                      "secretKey": "secret-key-to-be-managed"
                    }
                  ],
                  "dataFrom": [
                    {
                      "extract": {
                        "conversionStrategy": "Default",
                        "key": "provider-key",
                        "property": "provider-key-property",
                        "version": "provider-key-version"
                      }
                    },
                    {
                      "find": {
                        "conversionStrategy": "Unicode",
                        "name": {
                          "regexp": ".*foobar.*"
                        },
                        "path": "path-to-filter",
                        "tags": {
                          "foo": "bar"
                        }
                      }
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secret-store-name"
                  },
                  "target": {
                    "creationPolicy": "Merge",
                    "deletionPolicy": "Retain",
                    "name": "my-secret",
                    "template": {
                      "data": {
                        "config.yml": "endpoints:\n- https://{{ .data.user }}:{{ .data.password }}@api.exmaple.com\n"
                      },
                      "metadata": {
                        "annotations": {},
                        "labels": {}
                      },
                      "templateFrom": [
                        {
                          "configMap": {
                            "items": [
                              {
                                "key": "alertmanager.yaml"
                              }
                            ],
                            "name": "alertmanager"
                          }
                        }
                      ],
                      "type": "kubernetes.io/dockerconfigjson"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1beta1",
                "kind": "SecretStore",
                "metadata": {
                  "name": "example",
                  "namespace": "example-ns"
                },
                "spec": {
                  "controller": "dev",
                  "provider": {
                    "aws": {
                      "auth": {
                        "secretRef": {
                          "accessKeyIDSecretRef": {
                            "key": "access-key",
                            "name": "awssm-secret"
                          },
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key",
                            "name": "awssm-secret"
                          }
                        }
                      },
                      "region": "eu-central-1",
                      "role": "iam-role",
                      "service": "SecretsManager"
                    },
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-credentials",
                            "name": "gcpsm-secret"
                          }
                        }
                      },
                      "projectID": "myproject"
                    },
                    "vault": {
                      "auth": {
                        "appRole": {
                          "path": "approle",
                          "roleId": "db02de05-fa39-4855-059b-67221c5c2f63",
                          "secretRef": {
                            "key": "vault-token",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          }
                        },
                        "kubernetes": {
                          "mountPath": "kubernetes",
                          "role": "demo",
                          "secretRef": {
                            "key": "vault",
                            "name": "my-secret",
                            "namespace": "secret-admin"
                          },
                          "serviceAccountRef": {
                            "name": "my-sa",
                            "namespace": "secret-admin"
                          }
                        },
                        "tokenSecretRef": {
                          "key": "vault-token",
                          "name": "my-secret",
                          "namespace": "secret-admin"
                        }
                      },
                      "caBundle": "...",
                      "caProvider": {
                        "key": "cert-key",
                        "name": "my-cert-secret",
                        "namespace": "my-cert-secret-namespace",
                        "type": "Secret"
                      },
                      "namespace": "a-team",
                      "path": "secret",
                      "server": "https://vault.acme.org",
                      "version": "v2"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.external-secrets.io/v1alpha1",
                "kind": "OperatorConfig",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "affinity": {},
                  "certController": {
                    "affinity": {},
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "requeueInterval": "5m",
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  },
                  "concurrent": 1,
                  "controllerClass": "",
                  "crds": {
                    "createClusterExternalSecret": true,
                    "createClusterSecretStore": true
                  },
                  "createOperator": true,
                  "deploymentAnnotations": {},
                  "extraArgs": {},
                  "extraEnv": [],
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/external-secrets/external-secrets",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "installCRDs": false,
                  "leaderElect": false,
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": "",
                  "processClusterExternalSecret": true,
                  "processClusterStore": true,
                  "prometheus": {
                    "enabled": false,
                    "service": {
                      "port": 8080
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 1,
                  "resources": {},
                  "scopedNamespace": "",
                  "scopedRBAC": false,
                  "securityContext": {},
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": ""
                  },
                  "tolerations": [],
                  "webhook": {
                    "affinity": {},
                    "certCheckInterval": "5m",
                    "certDir": "/tmp/certs",
                    "create": true,
                    "deploymentAnnotations": {},
                    "extraArgs": {},
                    "extraEnv": [],
                    "fullnameOverride": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/external-secrets/external-secrets",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nameOverride": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {},
                    "priorityClassName": "",
                    "prometheus": {
                      "enabled": false,
                      "service": {
                        "port": 8080
                      }
                    },
                    "rbac": {
                      "create": true
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
          createdAt: "2024-12-03T10:44:19Z"
          description: Operator to configure external-secrets helm-chart based operator
          operatorframework.io/cluster-monitoring: "true"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/external-secrets/external-secrets-helm-operator
          support: external-secrets
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster scoped resource that allows you to manage ExternalSecrets
              across namespaces
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1beta1
          - kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1alpha1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1alpha1
          - description: Cluster-wide resource that defines how to access the external
              API
            displayName: ClusterSecretStore v1beta1
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1beta1
          - kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1alpha1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1alpha1
          - description: Describes what data should be fetched
            displayName: ExternalSecret v1beta1
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1beta1
          - kind: Fake
            name: fakes.generators.external-secrets.io
            version: v1alpha1
          - kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Configures external-secrets helm-chart based operator
            displayName: OperatorConfig
            kind: OperatorConfig
            name: operatorconfigs.operator.external-secrets.io
            version: v1alpha1
          - kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1alpha1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1alpha1
          - description: Namespaced resource that defines how to access the external
              API
            displayName: SecretStore v1beta1
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1beta1
          - kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK (Helm version) to configure **[official external-secrets operator helm chart](https://github.com/external-secrets/external-secrets)**, so it can be installed via OLM without having to do any change on current Helm Charts.

          Before any other resources provided by this Operator can be deployed, it is essential to create an
          OperatorConfig resource.

          The usual Helm Chart file `values.yaml`, like:
          ```yaml
          prometheus:
            enabled: true
            service:
              port: 8080
          resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          need to be encapsulated into a new custom resource called `OperatorConfig`:
          ```yaml
          apiVersion: operator.external-secrets.io/v1alpha1
          kind: OperatorConfig
          metadata:
            name: cluster
          spec:
            prometheus:
              enabled: true
              service:
                port: 8080
            resources:
             requests:
               cpu: 10m
               memory: 96Mi
             limits:
               cpu: 100m
               memory: 256Mi
          ```

          Once the OperatorConfig resource is deployed, the operator will create all helm chart resources, using the custom resource name as a preffix for all resources names, like for example a `Deployment` called `cluster-external-secrets`.

          ## Documentation

          * [Upstream Documentation](https://external-secrets.io)
          * [Helm Operator Install](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/install.md)
          * [Helm Operator Development](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/development.md)
          * [Helm Operator Release](https://github.com/external-secrets/external-secrets-helm-operator/blob/main/docs/release.md)

          ## Contributing

          You can contribute by:

          * Raising any issues you find using External Secrets Operator
          * Fixing issues by opening [Pull Requests](https://github.com/external-secrets/external-secrets-helm-operator/pulls)
          * Submitting a patch or opening a PR
          * Improving documentation
          * Talking about External Secrets Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/external-secrets/external-secrets-helm-operator/issues).

          ## License

          External Secrets Operator is under Apache 2.0 license. See the [LICENSE](LICENSE) file for details.
        displayName: External Secrets Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secrets
        - secrets-manager
        - vault
        - aws
        - azure
        - google
        - ibm
        - akeyless
        - yandex
        - gitlab
        - oracle
        links:
        - name: External Secrets Operator
          url: https://external-secrets.io
        - name: GitHub
          url: https://github.com/external-secrets/external-secrets
        - name: Slack
          url: https://kubernetes.slack.com/messages/external-secrets
        maintainers:
        - email: contact@external-secrets.io
          name: external-secrets community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: External Secrets
          url: https://external-secrets.io
        relatedImages:
        - ghcr.io/external-secrets/external-secrets-helm-operator@sha256:e7939e97e11e26d7368d9231c5dbf134139b29580badd1dcc7de0f621ff4e3b6
        - quay.io/community-operator-pipeline-prod/external-secrets-operator@sha256:6fa2ddca55d1d134b0938b47ea8a861de7408fa566ad806b200a379b8500a2a1
        version: 0.11.0
      entries:
      - name: external-secrets-operator.v0.11.0
        version: 0.11.0
      - name: external-secrets-operator.v0.10.7
        version: 0.10.7
      - name: external-secrets-operator.v0.10.6
        version: 0.10.6
      - name: external-secrets-operator.v0.10.5
        version: 0.10.5
      - name: external-secrets-operator.v0.10.4
        version: 0.10.4
      - name: external-secrets-operator.v0.10.3
        version: 0.10.3
      - name: external-secrets-operator.v0.10.2
        version: 0.10.2
      - name: external-secrets-operator.v0.10.1
        version: 0.10.1
      - name: external-secrets-operator.v0.10.0
        version: 0.10.0
      - name: external-secrets-operator.v0.9.20
        version: 0.9.20
      - name: external-secrets-operator.v0.9.19
        version: 0.9.19
      - name: external-secrets-operator.v0.9.18
        version: 0.9.18
      - name: external-secrets-operator.v0.9.17
        version: 0.9.17
      - name: external-secrets-operator.v0.9.16
        version: 0.9.16
      - name: external-secrets-operator.v0.9.15-2
        version: 0.9.15-2
      - name: external-secrets-operator.v0.9.14
        version: 0.9.14
      - name: external-secrets-operator.v0.9.13
        version: 0.9.13
      - name: external-secrets-operator.v0.9.12
        version: 0.9.12
      - name: external-secrets-operator.v0.9.11
        version: 0.9.11
      - name: external-secrets-operator.v0.9.10
        version: 0.9.10
      - name: external-secrets-operator.v0.9.9
        version: 0.9.9
      - name: external-secrets-operator.v0.9.8
        version: 0.9.8
      - name: external-secrets-operator.v0.9.7
        version: 0.9.7
      - name: external-secrets-operator.v0.9.6
        version: 0.9.6
      - name: external-secrets-operator.v0.9.5
        version: 0.9.5
      - name: external-secrets-operator.v0.9.4
        version: 0.9.4
      - name: external-secrets-operator.v0.9.3
        version: 0.9.3
      - name: external-secrets-operator.v0.9.2
        version: 0.9.2
      - name: external-secrets-operator.v0.9.1
        version: 0.9.1
      - name: external-secrets-operator.v0.9.0
        version: 0.9.0
      - name: external-secrets-operator.v0.8.7
        version: 0.8.7
      - name: external-secrets-operator.v0.8.6
        version: 0.8.6
      - name: external-secrets-operator.v0.8.5
        version: 0.8.5
      - name: external-secrets-operator.v0.8.4
        version: 0.8.4
      - name: external-secrets-operator.v0.8.3
        version: 0.8.3
      - name: external-secrets-operator.v0.8.2
        version: 0.8.2
      - name: external-secrets-operator.v0.8.1
        version: 0.8.1
      - name: external-secrets-operator.v0.8.0
        version: 0.8.0
      - name: external-secrets-operator.v0.7.2
        version: 0.7.2
      - name: external-secrets-operator.v0.7.1
        version: 0.7.1
      - name: external-secrets-operator.v0.7.0
        version: 0.7.0
      - name: external-secrets-operator.v0.7.0-rc1
        version: 0.7.0-rc1
      - name: external-secrets-operator.v0.6.1
        version: 0.6.1
      - name: external-secrets-operator.v0.6.0
        version: 0.6.0
      - name: external-secrets-operator.v0.5.9
        version: 0.5.9
      - name: external-secrets-operator.v0.5.8
        version: 0.5.8
      - name: external-secrets-operator.v0.5.7
        version: 0.5.7
      - name: external-secrets-operator.v0.5.6
        version: 0.5.6
      - name: external-secrets-operator.v0.5.5
        version: 0.5.5
      - name: external-secrets-operator.v0.5.4
        version: 0.5.4
      - name: external-secrets-operator.v0.5.3
        version: 0.5.3
      - name: external-secrets-operator.v0.5.2
        version: 0.5.2
      - name: external-secrets-operator.v0.5.1
        version: 0.5.1
      - name: external-secrets-operator.v0.5.0
        version: 0.5.0
      - name: external-secrets-operator.v0.4.4
        version: 0.4.4
      - name: external-secrets-operator.v0.4.2
        version: 0.4.2
      - name: external-secrets-operator.v0.4.1
        version: 0.4.1
      - name: external-secrets-operator.v0.3.11
        version: 0.3.11
      - name: external-secrets-operator.v0.3.10
        version: 0.3.10
      - name: external-secrets-operator.v0.3.9
        version: 0.3.9
      name: stable
    defaultChannel: alpha
    packageName: external-secrets-operator
    provider:
      name: External Secrets
      url: https://external-secrets.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhsso-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhsso-operator.7.5.1-opr-005
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "example-keycloakrealm"
                },
                "spec": {
                  "realm": {
                    "id": "basic",
                    "realm": "basic",
                    "enabled": true,
                    "displayName": "Basic Realm"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakBackup",
                "metadata": {
                  "name": "example-keycloakbackup"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "client-secret",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  },
                  "client": {
                    "clientId": "client-secret",
                    "secret": "client-secret",
                    "clientAuthenticatorType": "client-secret"
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakUser",
                "metadata": {
                  "name": "example-realm-user",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "user": {
                    "username": "realm_user",
                    "firstName": "John",
                    "lastName": "Doe",
                    "email": "user@example.com",
                    "enabled": true,
                    "emailVerified": false
                  },
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "False"
          containerImage: registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:66577ec32a9a975f304e52b8ab49b9f7602158dcab1ef5d8c28a5d3455491336
          createdAt: "2021-08-09 00:00:00"
          description: An Operator for installing and managing Red Hat Single Sign-On
          olm.skipRange: <7.5.0
          repository: https://github.com/keycloak/keycloak-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Red Hat Single Sign-On Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Realm
            displayName: KeycloakRealm
            kind: KeycloakRealm
            name: keycloakrealms.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Backup
            displayName: KeycloakBackup
            kind: KeycloakBackup
            name: keycloakbackups.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Client
            displayName: KeycloakClient
            kind: KeycloakClient
            name: keycloakclients.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On User
            displayName: KeycloakUser
            kind: KeycloakUser
            name: keycloakusers.keycloak.org
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Red Hat Single Sign-On.

          Red Hat Single Sign-On lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
          * Import Keycloak Clients
          * Import Keycloak Users
          * Create scheduled backups of the database
        displayName: Red Hat Single Sign-On Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://access.redhat.com/products/red-hat-single-sign-on
        - name: Keycloak
          url: https://www.keycloak.org/
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat Customer Service
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:5f0840a69642d13016430151892ec987fd67e711563b1dfb1a57353037c3bf79
        - registry.redhat.io/rh-sso-7/sso7-rhel8-init-container@sha256:614a9b1d7975769e8559e0b8c1578d16f6e3f7fee0778283797f4d62f5fc2100
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator-bundle@sha256:9fcdfa4615b91a5bb919aff71fc4df046365b2ee6d540b5f5f47f9ccaeb9877c
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:66577ec32a9a975f304e52b8ab49b9f7602158dcab1ef5d8c28a5d3455491336
        - registry.redhat.io/rh-sso-7/sso75-openj9-openshift-rhel8@sha256:2d4ea7226f43e7e8e8d3fcef6d425eb5104a15acf07791355033300b80db2901
        version: 7.5.1-opr-005
      entries:
      - name: rhsso-operator.7.5.1-opr-005
        version: 7.5.1-opr-005
      - name: rhsso-operator.7.5.1-opr-004
        version: 7.5.1-opr-004
      - name: rhsso-operator.7.5.1-opr-003
        version: 7.5.1-opr-003
      - name: rhsso-operator.7.5.1-opr-002
        version: 7.5.1-opr-002
      - name: rhsso-operator.7.5.1-opr-001
        version: 7.5.1-opr-001
      - name: rhsso-operator.7.5.0
        version: 7.5.0
      name: alpha
    - currentCSV: rhsso-operator.7.6.12-opr-005
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "example-keycloakrealm"
                },
                "spec": {
                  "realm": {
                    "id": "basic",
                    "realm": "basic",
                    "enabled": true,
                    "displayName": "Basic Realm"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakBackup",
                "metadata": {
                  "name": "example-keycloakbackup"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "client-secret",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  },
                  "client": {
                    "clientId": "client-secret",
                    "secret": "client-secret",
                    "clientAuthenticatorType": "client-secret"
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakUser",
                "metadata": {
                  "name": "example-realm-user",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "user": {
                    "username": "realm_user",
                    "firstName": "John",
                    "lastName": "Doe",
                    "email": "user@example.com",
                    "enabled": true,
                    "emailVerified": false
                  },
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "False"
          containerImage: registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:1d3048c0a324abbd8d47d9dffb42030e9cb4803e263a613451ba1f37424c427b
          createdAt: "2021-08-09 00:00:00"
          description: An Operator for installing and managing Red Hat Single Sign-On
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Red Hat Single Sign-On Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Realm
            displayName: KeycloakRealm
            kind: KeycloakRealm
            name: keycloakrealms.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Backup
            displayName: KeycloakBackup
            kind: KeycloakBackup
            name: keycloakbackups.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On Client
            displayName: KeycloakClient
            kind: KeycloakClient
            name: keycloakclients.keycloak.org
            version: v1alpha1
          - description: Represents a Red Hat Single Sign-On User
            displayName: KeycloakUser
            kind: KeycloakUser
            name: keycloakusers.keycloak.org
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Red Hat Single Sign-On.

          Red Hat Single Sign-On lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
          * Import Keycloak Clients
          * Import Keycloak Users
          * Create scheduled backups of the database
        displayName: Red Hat Single Sign-On Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://access.redhat.com/products/red-hat-single-sign-on
        - name: Keycloak
          url: https://www.keycloak.org/
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat Customer Service
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator@sha256:1d3048c0a324abbd8d47d9dffb42030e9cb4803e263a613451ba1f37424c427b
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/rh-sso-7/sso7-rhel8-init-container@sha256:2e63f15a19d60447d9dfd11b0d04ba634932a9c43e63773051069cdc1f5ad504
        - registry.redhat.io/rh-sso-7/sso7-rhel8-operator-bundle@sha256:c542bd411eff7a4e875b942b23452aeed8e5d60e606f87a73e16f48420fa2400
        version: 7.6.12-opr-005
      entries:
      - name: rhsso-operator.7.6.12-opr-005
        version: 7.6.12-opr-005
      - name: rhsso-operator.7.6.12-opr-004
        version: 7.6.12-opr-004
      - name: rhsso-operator.7.6.12-opr-003
        version: 7.6.12-opr-003
      - name: rhsso-operator.7.6.12-opr-002
        version: 7.6.12-opr-002
      - name: rhsso-operator.7.6.12-opr-001
        version: 7.6.12-opr-001
      - name: rhsso-operator.7.6.11-opr-006
        version: 7.6.11-opr-006
      - name: rhsso-operator.7.6.11-opr-005
        version: 7.6.11-opr-005
      - name: rhsso-operator.7.6.11-opr-004
        version: 7.6.11-opr-004
      - name: rhsso-operator.7.6.11-opr-003
        version: 7.6.11-opr-003
      - name: rhsso-operator.7.6.11-opr-002
        version: 7.6.11-opr-002
      - name: rhsso-operator.7.6.11-opr-001
        version: 7.6.11-opr-001
      - name: rhsso-operator.7.6.10-opr-001
        version: 7.6.10-opr-001
      - name: rhsso-operator.7.6.9-opr-003
        version: 7.6.9-opr-003
      - name: rhsso-operator.7.6.9-opr-002
        version: 7.6.9-opr-002
      - name: rhsso-operator.7.6.9-opr-001
        version: 7.6.9-opr-001
      - name: rhsso-operator.7.6.8-opr-002
        version: 7.6.8-opr-002
      - name: rhsso-operator.7.6.8-opr-001
        version: 7.6.8-opr-001
      - name: rhsso-operator.7.6.7-opr-002
        version: 7.6.7-opr-002
      - name: rhsso-operator.7.6.7-opr-001
        version: 7.6.7-opr-001
      - name: rhsso-operator.7.6.6-opr-004
        version: 7.6.6-opr-004
      - name: rhsso-operator.7.6.6-opr-003
        version: 7.6.6-opr-003
      - name: rhsso-operator.7.6.6-opr-002
        version: 7.6.6-opr-002
      - name: rhsso-operator.7.6.6-opr-001
        version: 7.6.6-opr-001
      - name: rhsso-operator.7.6.5-opr-004
        version: 7.6.5-opr-004
      - name: rhsso-operator.7.6.5-opr-003
        version: 7.6.5-opr-003
      - name: rhsso-operator.7.6.5-opr-002
        version: 7.6.5-opr-002
      - name: rhsso-operator.7.6.5-opr-001
        version: 7.6.5-opr-001
      - name: rhsso-operator.7.6.4-opr-003
        version: 7.6.4-opr-003
      - name: rhsso-operator.7.6.4-opr-002
        version: 7.6.4-opr-002
      - name: rhsso-operator.7.6.4-opr-001
        version: 7.6.4-opr-001
      - name: rhsso-operator.7.6.3-opr-002
        version: 7.6.3-opr-002
      - name: rhsso-operator.7.6.3-opr-001
        version: 7.6.3-opr-001
      - name: rhsso-operator.7.6.2-opr-003
        version: 7.6.2-opr-003
      - name: rhsso-operator.7.6.2-opr-002
        version: 7.6.2-opr-002
      - name: rhsso-operator.7.6.2-opr-001
        version: 7.6.2-opr-001
      - name: rhsso-operator.7.6.1-opr-005
        version: 7.6.1-opr-005
      - name: rhsso-operator.7.6.1-opr-004
        version: 7.6.1-opr-004
      - name: rhsso-operator.7.6.1-opr-003
        version: 7.6.1-opr-003
      - name: rhsso-operator.7.6.1-opr-002
        version: 7.6.1-opr-002
      - name: rhsso-operator.7.6.1-opr-001
        version: 7.6.1-opr-001
      - name: rhsso-operator.7.6.0-opr-005
        version: 7.6.0-opr-005
      - name: rhsso-operator.7.6.0-opr-004
        version: 7.6.0-opr-004
      - name: rhsso-operator.7.6.0-opr-003
        version: 7.6.0-opr-003
      - name: rhsso-operator.7.6.0-opr-002
        version: 7.6.0-opr-002
      - name: rhsso-operator.7.6.0-opr-001
        version: 7.6.0-opr-001
      - name: rhsso-operator.7.5.2-opr-003
        version: 7.5.2-opr-003
      - name: rhsso-operator.7.5.2-opr-002
        version: 7.5.2-opr-002
      - name: rhsso-operator.7.5.2-opr-001
        version: 7.5.2-opr-001
      - name: rhsso-operator.7.5.1-opr-011
        version: 7.5.1-opr-011
      - name: rhsso-operator.7.5.1-opr-010
        version: 7.5.1-opr-010
      - name: rhsso-operator.7.5.1-opr-009
        version: 7.5.1-opr-009
      - name: rhsso-operator.7.5.1-opr-009-0.1646836600.p
        version: 7.5.1-opr-009+0.1646836600.p
      - name: rhsso-operator.7.5.1-opr-008
        version: 7.5.1-opr-008
      - name: rhsso-operator.7.5.1-opr-007
        version: 7.5.1-opr-007
      - name: rhsso-operator.7.5.1-opr-006
        version: 7.5.1-opr-006
      - name: rhsso-operator.7.5.1-opr-005
        version: 7.5.1-opr-005
      - name: rhsso-operator.7.5.1-opr-004
        version: 7.5.1-opr-004
      - name: rhsso-operator.7.5.1-opr-003
        version: 7.5.1-opr-003
      - name: rhsso-operator.7.5.1-opr-002
        version: 7.5.1-opr-002
      - name: rhsso-operator.7.5.1-opr-001
        version: 7.5.1-opr-001
      - name: rhsso-operator.7.5.0
        version: 7.5.0
      name: stable
    defaultChannel: stable
    packageName: rhsso-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: amq7-interconnect-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq7-interconnect-operator.v1.10.20
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"interconnectedcloud.github.io/v1alpha1","kind":"Interconnect","metadata":{"name":"amq-interconnect"},"spec":{"deploymentPlan":{"size":2,"role":"interior","placement":"Any"}}}]'
          capabilities: Basic Install
          categories: Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
          createdAt: "2019-06-28T22:00:00Z"
          description: Layer 7 Networking
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: https://github.com/interconnectedcloud/qdr-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An instance of AMQ Interconnect
            displayName: Red Hat Integration - AMQ Interconnect
            kind: Interconnect
            name: interconnects.interconnectedcloud.github.io
            version: v1alpha1
        description: |2

          AMQ Interconnect is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and IoT/edge deployments. AMQ Interconnect transparently learns the addresses of messaging endpoints (such as clients, servers, and message brokers) and flexibly routes messages between them.

          ### Core Capabilities

          * High throughput, low latency, shortest path message forwarding based on Layer 7 address routing mechanisms

          * `Interior` mode deployments for any arbitrary topology of geographically-distributed and interconnected routers

          * `Edge` mode deployments for extremely large scale device endpoint connectivity

          * Automatic message traffic rerouting when the network topology changes (resiliency without restrictions)

          * Flexible addressing schemes and delivery semantics (anycast, multicast, closest, balanced)

          * Integrated management with full support for the draft AMQP management specification

          * Full-featured security capabilities for authentication, authorization, and policy-based resource access control

          ### Operator Features

          * **Flexible deployment plans** - Configurable deployment plans are available for `interior` and `edge` mode scenarios. These plans include all dependent resources

          * **Placement directives** - Directives are provided to control how the pods should be scheduled

          * **Connectivity configuration defaults** - Configuration defaults are automatically generated for listeners, connectors, and SSL/TLS setup

          * **Exposes the service** - Integrated management of OpenShift Routes for exposed listener services for client, inter-router, and edge communications

          * **Security certificate management** - Certificates are created and managed through integration with AMQ Certificate Manager

          ### Troubleshooting

          After deploying Interconnect, check any of the following to verify that it is operating correctly:

          * The Interconnect instance

          * The Deployment (or DaemonSet) instance

          * An individual pod for the Deployment (or DaemonSet)

          * A Route created for exposed services

          In addition, use `qdstat` commands to verify connectivity. This can be done using `oc exec` against an interconnect pod, for example `oc exec -it <podname> -- qdstat -c`
          to list connections.

          ### Documentation

          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/products/red_hat_amq#interconnect).
        displayName: Red Hat Integration - AMQ Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq#interconnect
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-interconnect-operator-metadata@sha256:d7b2c9cc8181eb372c787bb29323dc2d4cd1bb30ddb9e4bb15081a7a61e516a0
        - registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
        - registry.redhat.io/amq7/amq-interconnect@sha256:31d87473fa684178a694f9ee331d3c80f2653f9533cb65c2a325752166a077e9
        version: 1.10.20
      entries:
      - name: amq7-interconnect-operator.v1.10.20
        version: 1.10.20
      - name: amq7-interconnect-operator.v1.10.19
        version: 1.10.19
      - name: amq7-interconnect-operator.v1.10.18
        version: 1.10.18
      - name: amq7-interconnect-operator.v1.10.17
        version: 1.10.17
      - name: amq7-interconnect-operator.v1.10.16
        version: 1.10.16
      - name: amq7-interconnect-operator.v1.10.15
        version: 1.10.15
      - name: amq7-interconnect-operator.v1.10.14
        version: 1.10.14
      - name: amq7-interconnect-operator.v1.10.13
        version: 1.10.13
      - name: amq7-interconnect-operator.v1.10.12
        version: 1.10.12
      - name: amq7-interconnect-operator.v1.10.11
        version: 1.10.11
      - name: amq7-interconnect-operator.v1.10.10
        version: 1.10.10
      - name: amq7-interconnect-operator.v1.10.9
        version: 1.10.9
      - name: amq7-interconnect-operator.v1.10.8
        version: 1.10.8
      - name: amq7-interconnect-operator.v1.10.7
        version: 1.10.7
      - name: amq7-interconnect-operator.v1.10.6
        version: 1.10.6
      - name: amq7-interconnect-operator.v1.10.5
        version: 1.10.5
      - name: amq7-interconnect-operator.v1.10.4
        version: 1.10.4
      - name: amq7-interconnect-operator.v1.10.3
        version: 1.10.3
      - name: amq7-interconnect-operator.v1.10.2
        version: 1.10.2
      name: 1.10.x
    - currentCSV: amq7-interconnect-operator.v1.10.20
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"interconnectedcloud.github.io/v1alpha1","kind":"Interconnect","metadata":{"name":"amq-interconnect"},"spec":{"deploymentPlan":{"size":2,"role":"interior","placement":"Any"}}}]'
          capabilities: Basic Install
          categories: Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
          createdAt: "2019-06-28T22:00:00Z"
          description: Layer 7 Networking
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: https://github.com/interconnectedcloud/qdr-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An instance of AMQ Interconnect
            displayName: Red Hat Integration - AMQ Interconnect
            kind: Interconnect
            name: interconnects.interconnectedcloud.github.io
            version: v1alpha1
        description: |2

          AMQ Interconnect is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and IoT/edge deployments. AMQ Interconnect transparently learns the addresses of messaging endpoints (such as clients, servers, and message brokers) and flexibly routes messages between them.

          ### Core Capabilities

          * High throughput, low latency, shortest path message forwarding based on Layer 7 address routing mechanisms

          * `Interior` mode deployments for any arbitrary topology of geographically-distributed and interconnected routers

          * `Edge` mode deployments for extremely large scale device endpoint connectivity

          * Automatic message traffic rerouting when the network topology changes (resiliency without restrictions)

          * Flexible addressing schemes and delivery semantics (anycast, multicast, closest, balanced)

          * Integrated management with full support for the draft AMQP management specification

          * Full-featured security capabilities for authentication, authorization, and policy-based resource access control

          ### Operator Features

          * **Flexible deployment plans** - Configurable deployment plans are available for `interior` and `edge` mode scenarios. These plans include all dependent resources

          * **Placement directives** - Directives are provided to control how the pods should be scheduled

          * **Connectivity configuration defaults** - Configuration defaults are automatically generated for listeners, connectors, and SSL/TLS setup

          * **Exposes the service** - Integrated management of OpenShift Routes for exposed listener services for client, inter-router, and edge communications

          * **Security certificate management** - Certificates are created and managed through integration with AMQ Certificate Manager

          ### Troubleshooting

          After deploying Interconnect, check any of the following to verify that it is operating correctly:

          * The Interconnect instance

          * The Deployment (or DaemonSet) instance

          * An individual pod for the Deployment (or DaemonSet)

          * A Route created for exposed services

          In addition, use `qdstat` commands to verify connectivity. This can be done using `oc exec` against an interconnect pod, for example `oc exec -it <podname> -- qdstat -c`
          to list connections.

          ### Documentation

          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/products/red_hat_amq#interconnect).
        displayName: Red Hat Integration - AMQ Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq#interconnect
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-interconnect-operator-metadata@sha256:d7b2c9cc8181eb372c787bb29323dc2d4cd1bb30ddb9e4bb15081a7a61e516a0
        - registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
        - registry.redhat.io/amq7/amq-interconnect@sha256:31d87473fa684178a694f9ee331d3c80f2653f9533cb65c2a325752166a077e9
        version: 1.10.20
      entries:
      - name: amq7-interconnect-operator.v1.10.20
        version: 1.10.20
      - name: amq7-interconnect-operator.v1.10.19
        version: 1.10.19
      - name: amq7-interconnect-operator.v1.10.18
        version: 1.10.18
      - name: amq7-interconnect-operator.v1.10.17
        version: 1.10.17
      - name: amq7-interconnect-operator.v1.10.16
        version: 1.10.16
      - name: amq7-interconnect-operator.v1.10.15
        version: 1.10.15
      - name: amq7-interconnect-operator.v1.10.14
        version: 1.10.14
      - name: amq7-interconnect-operator.v1.10.13
        version: 1.10.13
      - name: amq7-interconnect-operator.v1.10.12
        version: 1.10.12
      - name: amq7-interconnect-operator.v1.10.11
        version: 1.10.11
      - name: amq7-interconnect-operator.v1.10.10
        version: 1.10.10
      - name: amq7-interconnect-operator.v1.10.9
        version: 1.10.9
      - name: amq7-interconnect-operator.v1.10.8
        version: 1.10.8
      - name: amq7-interconnect-operator.v1.10.7
        version: 1.10.7
      - name: amq7-interconnect-operator.v1.10.6
        version: 1.10.6
      - name: amq7-interconnect-operator.v1.10.5
        version: 1.10.5
      - name: amq7-interconnect-operator.v1.10.4
        version: 1.10.4
      - name: amq7-interconnect-operator.v1.10.3
        version: 1.10.3
      - name: amq7-interconnect-operator.v1.10.2
        version: 1.10.2
      name: 1.2.0
    - currentCSV: amq7-interconnect-operator.v1.10.20
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"interconnectedcloud.github.io/v1alpha1","kind":"Interconnect","metadata":{"name":"amq-interconnect"},"spec":{"deploymentPlan":{"size":2,"role":"interior","placement":"Any"}}}]'
          capabilities: Basic Install
          categories: Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
          createdAt: "2019-06-28T22:00:00Z"
          description: Layer 7 Networking
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: https://github.com/interconnectedcloud/qdr-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An instance of AMQ Interconnect
            displayName: Red Hat Integration - AMQ Interconnect
            kind: Interconnect
            name: interconnects.interconnectedcloud.github.io
            version: v1alpha1
        description: |2

          AMQ Interconnect is a lightweight [AMQP 1.0](https://www.amqp.org/) message router for building large, highly resilient messaging networks for hybrid cloud and IoT/edge deployments. AMQ Interconnect transparently learns the addresses of messaging endpoints (such as clients, servers, and message brokers) and flexibly routes messages between them.

          ### Core Capabilities

          * High throughput, low latency, shortest path message forwarding based on Layer 7 address routing mechanisms

          * `Interior` mode deployments for any arbitrary topology of geographically-distributed and interconnected routers

          * `Edge` mode deployments for extremely large scale device endpoint connectivity

          * Automatic message traffic rerouting when the network topology changes (resiliency without restrictions)

          * Flexible addressing schemes and delivery semantics (anycast, multicast, closest, balanced)

          * Integrated management with full support for the draft AMQP management specification

          * Full-featured security capabilities for authentication, authorization, and policy-based resource access control

          ### Operator Features

          * **Flexible deployment plans** - Configurable deployment plans are available for `interior` and `edge` mode scenarios. These plans include all dependent resources

          * **Placement directives** - Directives are provided to control how the pods should be scheduled

          * **Connectivity configuration defaults** - Configuration defaults are automatically generated for listeners, connectors, and SSL/TLS setup

          * **Exposes the service** - Integrated management of OpenShift Routes for exposed listener services for client, inter-router, and edge communications

          * **Security certificate management** - Certificates are created and managed through integration with AMQ Certificate Manager

          ### Troubleshooting

          After deploying Interconnect, check any of the following to verify that it is operating correctly:

          * The Interconnect instance

          * The Deployment (or DaemonSet) instance

          * An individual pod for the Deployment (or DaemonSet)

          * A Route created for exposed services

          In addition, use `qdstat` commands to verify connectivity. This can be done using `oc exec` against an interconnect pod, for example `oc exec -it <podname> -- qdstat -c`
          to list connections.

          ### Documentation

          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/products/red_hat_amq#interconnect).
        displayName: Red Hat Integration - AMQ Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq#interconnect
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-interconnect@sha256:31d87473fa684178a694f9ee331d3c80f2653f9533cb65c2a325752166a077e9
        - registry.redhat.io/amq7/amq-interconnect-operator-metadata@sha256:d7b2c9cc8181eb372c787bb29323dc2d4cd1bb30ddb9e4bb15081a7a61e516a0
        - registry.redhat.io/amq7/amq-interconnect-operator@sha256:a8b621237c872ded2a1d1d948fbebd693429e4a1ced1d7922406241a078d3d43
        version: 1.10.20
      entries:
      - name: amq7-interconnect-operator.v1.10.20
        version: 1.10.20
      - name: amq7-interconnect-operator.v1.10.19
        version: 1.10.19
      - name: amq7-interconnect-operator.v1.10.18
        version: 1.10.18
      - name: amq7-interconnect-operator.v1.10.17
        version: 1.10.17
      - name: amq7-interconnect-operator.v1.10.16
        version: 1.10.16
      - name: amq7-interconnect-operator.v1.10.15
        version: 1.10.15
      - name: amq7-interconnect-operator.v1.10.14
        version: 1.10.14
      - name: amq7-interconnect-operator.v1.10.13
        version: 1.10.13
      - name: amq7-interconnect-operator.v1.10.12
        version: 1.10.12
      - name: amq7-interconnect-operator.v1.10.11
        version: 1.10.11
      - name: amq7-interconnect-operator.v1.10.10
        version: 1.10.10
      - name: amq7-interconnect-operator.v1.10.9
        version: 1.10.9
      - name: amq7-interconnect-operator.v1.10.8
        version: 1.10.8
      - name: amq7-interconnect-operator.v1.10.7
        version: 1.10.7
      - name: amq7-interconnect-operator.v1.10.6
        version: 1.10.6
      - name: amq7-interconnect-operator.v1.10.5
        version: 1.10.5
      - name: amq7-interconnect-operator.v1.10.4
        version: 1.10.4
      - name: amq7-interconnect-operator.v1.10.3
        version: 1.10.3
      - name: amq7-interconnect-operator.v1.10.2
        version: 1.10.2
      name: latest
    defaultChannel: 1.10.x
    packageName: amq7-interconnect-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Altair Engineering Inc.
      provider-url: ""
    name: anzo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: anzo-operator.v3.1.300
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "anzo.cambridgesemantics.com/v2",
                "kind": "Anzo",
                "metadata": {
                  "name": "no-persistence"
                },
                "spec": {
                  "jsonActivation": true,
                  "jvmMemory": "4096m",
                  "nodeConfig": {
                    "spec": {
                      "replicas": 1,
                      "selector": {
                        "matchLabels": {
                          "app": "anzo"
                        }
                      },
                      "serviceName": "anzo-no-persistence",
                      "template": {
                        "metadata": {
                          "annotations": {
                            "cluster-autoscaler.kubernetes.io/safe-to-evict": "false"
                          },
                          "labels": {
                            "app": "anzo"
                          }
                        },
                        "spec": {
                          "containers": [
                            {
                              "image": "registry.connect.redhat.com/cambridgesemantics/anzo@sha256:5e5050fed0362b35f0f4c95deb85fc22caf59e387b58efb0d593102e2a793938",
                              "imagePullPolicy": "Always",
                              "name": "anzo",
                              "resources": {
                                "limits": {
                                  "cpu": "2.0",
                                  "memory": "8.0Gi"
                                },
                                "requests": {
                                  "cpu": "2.0",
                                  "memory": "8.0Gi"
                                }
                              }
                            }
                          ],
                          "initContainers": [
                            {
                              "name": "anzo-init",
                              "resources": {
                                "limits": {
                                  "cpu": "0.5",
                                  "memory": "2Gi"
                                },
                                "requests": {
                                  "cpu": "0.5",
                                  "memory": "2Gi"
                                }
                              }
                            }
                          ],
                          "securityContext": {
                            "fsGroup": 1001
                          },
                          "serviceAccountName": "anzo-operator"
                        }
                      }
                    }
                  },
                  "role": "AnzoServer"
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          certified: "true"
          containerImage: registry.connect.redhat.com/cambridgesemantics/anzo-operator@sha256:29dc94eafcd5ce589c6ebfa6549b88d0269bd20f9baf1116b698a78c5992368c
          createdAt: "2025-10-08T06:53:22Z"
          description: kubernetes operator for Altair Graph Studio
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: unknown
          repository: ""
          support: Altair Customer Support
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnzoBackup is the Schema for the anzobackups API
            displayName: Altair Graph Studio Backup
            kind: AnzoBackup
            name: anzobackups.anzobackup.cambridgesemantics.com
            version: v1beta1
          - description: Altair Graph Studio is the Schema for the anzos API
            displayName: Altair Graph Studio Operator
            kind: Anzo
            name: anzos.anzo.cambridgesemantics.com
            version: v2
        description: |-
          The Altair Graph Studio Operator provides the way to install and configure an altair graph studio server and agent setup on Red Hat K8S environment.

          ### Installation
           Refer [installation instructions]( https://github.com/cambridgesemantics/csi-k8s-operator-anzo/blob/v3.1.3/README.md )

          ### Documentation

          You can find our documentation [here.]( https://docs.cambridgesemantics.com/anzo/userdoc/deploy-k8s.htm )

          ### Support

          We offer Support to our customers [here]( https://altair.com/customer-support ) or by emailing the Data Analytics Support team at dasupport@altair.com.
        displayName: Altair Graph Studio Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Big Data
        links:
        - name: Altair Graph Studio Operator
          url: https://github.com/cambridgesemantics/csi-k8s-operator-anzo/blob/v3.1.3/README_openshift.md
        maintainers:
        - email: fschwichtenberg@altair.com
          name: Frank Schwichtenberg
        maturity: stable
        provider:
          name: Altair Engineering Inc.
        relatedImages:
        - registry.connect.redhat.com/cambridgesemantics/anzo-operator@sha256:29dc94eafcd5ce589c6ebfa6549b88d0269bd20f9baf1116b698a78c5992368c
        - registry.connect.redhat.com/cambridgesemantics/anzo@sha256:5e5050fed0362b35f0f4c95deb85fc22caf59e387b58efb0d593102e2a793938
        - registry.connect.redhat.com/cambridgesemantics/anzo-operator-bundle@sha256:5a7000171e26cee4028c2bd91b50ad37bccf5e168ac413c19689a9ee914a2219
        version: 3.1.300
      entries:
      - name: anzo-operator.v3.1.300
        version: 3.1.300
      - name: anzo-operator.v3.1.200
        version: 3.1.200
      - name: anzo-operator.v3.1.106
        version: 3.1.106
      - name: anzo-operator.v3.1.105
        version: 3.1.105
      name: stable
    defaultChannel: stable
    packageName: anzo-operator
    provider:
      name: Altair Engineering Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: ""
    name: percona-server-mysql-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-server-mysql-operator-certified.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQL",
              "metadata": {
                "name": "ps-cluster1",
                "finalizers": [
                  "percona.com/delete-mysql-pods-in-order"
                ]
              },
              "spec": {
                "crVersion": "1.0.0",
                "secretsName": "ps-cluster1-secrets",
                "sslSecretName": "ps-cluster1-ssl",
                "updateStrategy": "SmartUpdate",
                "upgradeOptions": {
                  "versionServiceEndpoint": "https://check.percona.com",
                  "apply": "disabled"
                },
                "initContainer" : {
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator@sha256:71850c11e72e87c09e2f423c57963c143f5e3fac9ac7d062119f5e4254f158f7"
                },
                "mysql": {
                  "clusterType": "group-replication",
                  "autoRecovery": true,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:ea97c9df3e362728fc3819c28c841498f5a1765945b9556bc964b218b7d4dc97",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "resources": {
                    "requests": {
                      "memory": "2Gi"
                    },
                    "limits": {
                      "memory": "4Gi"
                    }
                  },
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "exposePrimary": {
                    "enabled": true
                  },
                  "volumeSpec": {
                    "persistentVolumeClaim": {
                      "resources": {
                        "requests": {
                          "storage": "2Gi"
                        }
                      }
                    }
                  },
                  "gracePeriod": 600
                },
                "proxy": {
                  "haproxy": {
                    "enabled": true,
                    "size": 3,
                    "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e64e468ac0ed2036ee164631469cc71821dcb84a6d568883f704d0eacaf84bb4",
                    "imagePullPolicy": "Always",
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "1Gi",
                        "cpu": "600m"
                      }
                    },
                    "gracePeriod": 30,
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    }
                  },
                  "router": {
                    "enabled": false,
                    "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e083c632c118cd4af472d9030a7900401f4b338e069c91996fe33747b77be985",
                    "imagePullPolicy": "Always",
                    "size": 3,
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "256M"
                      },
                      "limits": {
                        "memory": "256M"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "gracePeriod": 30
                  }
                },
                "orchestrator": {
                  "enabled": false,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:a8a70f8882925b0a1a46893376e29af73646117b22e1eeb5a0a89876a907651f",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "gracePeriod": 30,
                  "resources": {
                    "requests": {
                      "memory": "128M"
                    },
                    "limits": {
                      "memory": "256M"
                    }
                  }
                },
                "pmm": {
                  "enabled": false,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:1c59d7188f8404e0294f4bfb3d2c3600107f808a023668a170a6b8036c56619b",
                  "imagePullPolicy": "Always",
                  "resources": {
                    "requests": {
                      "memory": "150M",
                      "cpu": "300m"
                    }
                  },
                  "serverHost": "monitoring-service"
                },
                "backup": {
                  "enabled": true,
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:423d64bdb0220c7df34300b88ec10b3706443d8f4c9111d0bd752c9279eebbe3",
                  "imagePullPolicy": "Always",
                  "storages": {
                    "s3-us-west": {
                      "type": "s3",
                      "verifyTLS": true,
                      "s3": {
                        "bucket": "S3-BACKUP-BUCKET-NAME-HERE",
                        "credentialsSecret": "ps-cluster1-s3-credentials",
                        "region": "us-west-2"
                      }
                    }
                  }
                },
                "toolkit": {
                  "image": "registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:b7a4a2ca71ebf2b35786ab614221cbefb032fd5dfb5c5a478efcdd23931dd70b",
                  "imagePullPolicy": "Always"
                }
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLBackup",
              "metadata": {
                "name": "backup1",
                "finalizers": [
                  "percona.com/delete-backup"
                ]
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "storageName": "minio"
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLRestore",
              "metadata": {
                "name": "restore1"
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "backupName": "backup1"
              }
            }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: registry.connect.redhat.com/percona/percona-server-mysql-operator@sha256:71850c11e72e87c09e2f423c57963c143f5e3fac9ac7d062119f5e4254f158f7
          createdAt: "2025-11-13T08:00:00.000Z"
          description: Percona Operator for MySQL based on Percona Server for MySQL
            automates the creation and management of highly available, enterprise-ready
            MySQL database clusters on Kubernetes.
          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"
          repository: https://github.com/percona/percona-server-mysql-operator
          support: Percona
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaServerMySQLBackup is the Schema for the perconaservermysqlbackups
              API
            displayName: Percona Server MySQL Backup
            kind: PerconaServerMySQLBackup
            name: perconaservermysqlbackups.ps.percona.com
            version: v1
          - description: PerconaServerMySQLRestore is the Schema for the perconaservermysqlrestores
              API
            displayName: Percona Server MySQL Restore
            kind: PerconaServerMySQLRestore
            name: perconaservermysqlrestores.ps.percona.com
            version: v1
          - description: PerconaServerMySQL is the Schema for the perconaservermysqls
              API
            displayName: Percona Server MySQL
            kind: PerconaServerMySQL
            name: perconaservermysqls.ps.percona.com
            version: v1
        description: |2+

          ## Percona is Cloud Native

          Percona Operator for MySQL based on Percona Server for MySQL follows our best practices for deployment and configuration of highly-available, fault-tolerant MySQL instances in a Kubernetes-based environment on-premises or in the cloud. It provides the following capabilities:
          * Deploy group replication MySQL clusters with HAProxy or MySQL Router
          * Deploy asynchronous replication MySQL clusters with Orchestrator and HAProxy
          * Expose clusters with regular Kubernetes Services
          * Monitor the cluster with Percona Monitoring and Management
          * Customize MySQL configuration
          * Manage system user passwords

        displayName: Percona Operator for MySQL based on Percona Server for MySQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mysql
        - percona
        - database
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-mysql/ps/
        - name: Github
          url: https://github.com/percona/percona-server-mysql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
        relatedImages:
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e083c632c118cd4af472d9030a7900401f4b338e069c91996fe33747b77be985
        - registry.connect.redhat.com/percona/percona-server-mysql-operator@sha256:71850c11e72e87c09e2f423c57963c143f5e3fac9ac7d062119f5e4254f158f7
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:1c59d7188f8404e0294f4bfb3d2c3600107f808a023668a170a6b8036c56619b
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:315efeac572c48cc6f118bba7e0b2545ad396142f60328f2db9620ae0ad57e45
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:b7a4a2ca71ebf2b35786ab614221cbefb032fd5dfb5c5a478efcdd23931dd70b
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:e64e468ac0ed2036ee164631469cc71821dcb84a6d568883f704d0eacaf84bb4
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-bundle@sha256:bb3bf3339f0719b37fbdd9d2d6d47aeff1fa063e319bc6aeb24c384cce5cc061
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:3a420b803cd39c7c2a3ff414d45d1858df39599961339f5c02df0681f558ccdd
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@ssha256:967bafa0823c90aa8fa9c25a9012be36b0deef64e255294a09148d77ce6aea68
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:423d64bdb0220c7df34300b88ec10b3706443d8f4c9111d0bd752c9279eebbe3
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:a8a70f8882925b0a1a46893376e29af73646117b22e1eeb5a0a89876a907651f
        - registry.connect.redhat.com/percona/percona-server-mysql-operator-containers@sha256:ea97c9df3e362728fc3819c28c841498f5a1765945b9556bc964b218b7d4dc97
        version: 1.0.0
      entries:
      - name: percona-server-mysql-operator-certified.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: percona-server-mysql-operator-certified
    provider:
      name: Percona
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Arctera US LLC
      provider-url: https://www.arctera.io
    name: infoscale-sds-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infoscale-sds-operator.v8.0.230
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "8.0.230"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleStoragePool",
                "metadata": {
                  "name": "infoscalestoragepool-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:f4947eab2b31fccc86b5d5d0d3fd4eb1f7513fd8325e379cc259f5ccd1dfc3e4
          createdAt: "2023-10-26T20:36:59Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          olm.skipRange: <8.0.230
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.22.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleStoragePool is the Schema for the infoscalestoragepools
              API
            displayName: InfoScale Storage Pool
            kind: InfoScaleStoragePool
            name: infoscalestoragepools.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Veritas InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/151215298-151215302-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >

          spec:
            version: "8.0.230"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Veritas recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator-bundle@sha256:12d6ae3f139daf33dbf104499c195d9915470b957f401b5f622cfde92350a6c1
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:f4947eab2b31fccc86b5d5d0d3fd4eb1f7513fd8325e379cc259f5ccd1dfc3e4
        version: 8.0.230
      entries:
      - name: infoscale-sds-operator.v8.0.230
        version: 8.0.230
      - name: infoscale-sds-operator.v8.0.220
        version: 8.0.220
      - name: infoscale-sds-operator.v8.0.110
        version: 8.0.110
      - name: infoscale-sds-operator.v8.0.100
        version: 8.0.100
      name: 8.0.200x
    - currentCSV: infoscale-sds-operator.v8.0.330
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "8.0.330"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:dab501b99373c840c7e8e3ab479fa273b39f9bf8a896f3f1e4e945f4ab81f64e
          createdAt: "2024-06-24T09:03:32Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Veritas InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/151215298-151215302-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >

          spec:
            version: "8.0.330"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Veritas recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator-bundle@sha256:965ec7875eccc6a5fc56c3b8f0da668d826d34580117ba1438a607a9d0d13b73
        - registry.connect.redhat.com/veritas-technologies/infoscale-sds-operator@sha256:dab501b99373c840c7e8e3ab479fa273b39f9bf8a896f3f1e4e945f4ab81f64e
        version: 8.0.330
      entries:
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: 8.0.300x
    - currentCSV: infoscale-sds-operator.v8.0.410
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "8.0.410"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:43397ed6430691b35c71bc4a4ff4eddcbd685e84cf0a3e3604e19feb4f363d9f
          createdAt: "2024-07-30T09:00:57Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >

          spec:
            version: "8.0.410"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:a51a626126460cbf8e614fd3287bce3419fc5b728788c5cb9b1ab1fa1cf98259
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:43397ed6430691b35c71bc4a4ff4eddcbd685e84cf0a3e3604e19feb4f363d9f
        version: 8.0.410
      entries:
      - name: infoscale-sds-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-sds-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-sds-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: 8.0.400x
    - currentCSV: infoscale-sds-operator.v9.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "9.1.0"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:8c5db3e0553bf9feed1f1728d4a51a28769dd9b002c9d937c6b867e3a3981780
          createdAt: "2025-09-11T19:37:19Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >
            namespace: < Infoscale Cluster Namespace >

          spec:
            version: "9.1.0"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:b7a875f1c540ea0a3c944f956c1b7b0f0b6ba55dcadaee6e9420513a3e979577
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:8c5db3e0553bf9feed1f1728d4a51a28769dd9b002c9d937c6b867e3a3981780
        version: 9.0.1
      entries:
      - name: infoscale-sds-operator.v9.0.1
        version: 9.0.1
      name: beta
    - currentCSV: infoscale-sds-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "9.1.0"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
          createdAt: "2025-09-11T19:37:19Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >
            namespace: < Infoscale Cluster Namespace >

          spec:
            version: "9.1.0"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:3f9cc14ae694c6a51d65fa5e32cfb737654c4c870f01e5522ff9ba5e2ad7f937
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
        version: 9.1.0
      entries:
      - name: infoscale-sds-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-sds-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-sds-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-sds-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: fast
    - currentCSV: infoscale-sds-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleCluster",
                "metadata": {
                  "name": "infoscalecluster-dev"
                },
                "spec": {
                  "clusterInfo": [
                    {
                      "nodeName": null
                    },
                    {
                      "nodeName": null
                    }
                  ],
                  "version": "9.1.0"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "InfoScaleClusterSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infoscale-sds-operator",
                    "app.kubernetes.io/instance": "infoscaleclusterset-dev",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infoscaleclusterset",
                    "app.kubernetes.io/part-of": "infoscale-sds-operator"
                  },
                  "name": "infoscaleclusterset-dev"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
          createdAt: "2025-09-11T19:37:19Z"
          description: InfoScale™ SDS Operator manages the lifecycle of the InfoScale™
            cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["infoscaleclustersets.infoscale.veritas.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InfoScaleCluster is the Schema for the infoscaleclusters
              API
            displayName: InfoScale Cluster
            kind: InfoScaleCluster
            name: infoscaleclusters.infoscale.veritas.com
            version: v1
          - description: InfoScaleClusterSet is the Schema for the infoscaleclusterset
              API
            displayName: InfoScale Cluster Set
            kind: InfoScaleClusterSet
            name: infoscaleclustersets.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ SDS Operator

          InfoScale™ SDS Operator manages the lifecycle of the InfoScale™ cluster

          ## Overview

          - Arctera InfoScale™ delivers Infrastructure resiliency and persistent storage for your critical containerized applications for OpenShift® and Kubernetes Native deployments
          - Engineered to support stateful workloads generated for mission-critical containerized applications.

          ---

          ## Data Services & Benefits

          **1. Software-Defined Persistent Storage Volumes:** Enables customers to support multiple container application requirements leveraging existing SAN or DAS storage

          **2. CSI API Driver:** Facilitates static and dynamic provisioning for applications with RWX, RWO and ROX access modes

          **3. Life Cycle Management:** Enables automated deployment, configuration and upgrades of InfoScale Software-defined container images. Certified and Integrated with Red Hat OpenShift for a single-click deployment

          **4. Availability:** Provides scaling, mounting and/or movement of InfoScale persistent storage volumes on cluster nodes with minimal disruption

          **5. Data Integrity:** Prevents data corruption by allowing only the active cluster nodes to write to the volume. The I/O fencing feature recovers from cluster disruptions quickly by ensuring that application pods are moved to another node to continue normal operations

          **6. Point-in-Time Data Copies:** Create snapshots of Persistent Volumes for backup products, data analytics or forensic discovery and analysis

          **7. Disaster Recovery (DR) Tech Preview:** This DR feature provides the ability to test and validate disaster recovery capabilities by migrating Kubernetes cluster metadata and application components to peer cluster in case of a local or remote disaster

          ---

          ## Pre-requisites

          - [Please refer to pre-requisite section from official documentation](https://www.veritas.com/support/en_US/doc/168721626-168743109-0)


          ## InfoScale Cluster custom resource

          ```
          kind: InfoScaleCluster
          metadata:
            name:  < Infoscale Cluster Name >
            namespace: < Infoscale Cluster Namespace >

          spec:
            version: "9.1.0"

            clusterInfo:
            - nodeName: <Name of the first node>
            ip:
            - <Optional - First IP address of the first node >
            - <Optional - Second IP address of the first node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            - nodeName: <Name of the second node>
            ip:
            - <Optional - First IP address of the second node >
            - <Optional - Second IP address of the second node>
            excludeDevice:
            - <Optional - Device path of the disk on the node that you want to exclude from Infoscale disk group.>

            # You can add up to 16 nodes.

            customImageRegistry: < Optional – Registry for Infoscale Container images>
          ```

          #### Note

          You can specify up to 16 worker nodes in CR. Although cluster configuration is allowed even with one Network Interface Card,
          Arctera recommends a minimum of two physical links for performance and High Availability (HA). Number of links for each network link must be same on all
          nodes. Optionally, you can enter node level IP addresses. If IP addresses are not provided, IP addresses of OpenShift cluster nodes are used.
        displayName: InfoScale™ SDS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software Defined Storage
        - Clustered storage
        - CFS
        links:
        - name: Infoscale Operator
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-storage-operator-bundle@sha256:3f9cc14ae694c6a51d65fa5e32cfb737654c4c870f01e5522ff9ba5e2ad7f937
        - registry.connect.redhat.com/arctera/infoscale-storage-operator@sha256:cfce5bd9c6743e54d2e8e926cb10fa7bc5de71242e136a7b2bb3502e09c0ca7a
        version: 9.1.0
      entries:
      - name: infoscale-sds-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-sds-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-sds-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-sds-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-sds-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-sds-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-sds-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-sds-operator.v8.0.301
        version: 8.0.301
      name: stable
    defaultChannel: fast
    packageName: infoscale-sds-operator
    provider:
      name: Arctera US LLC
      url: https://www.arctera.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Redis
      provider-url: ""
    name: redis-enterprise-operator-cert
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: redis-enterprise-operator.v8.0.2-6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/services-manager@sha256:1e858656f7ec0fa64cd6b159ae4748b24aac274b5ec4418409a485a6ad38cb9f
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:d751658d4a1b56e54ee404b8ff995f3c4056cb71020a3dfcbb064e86366f4a44
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:65b77d4e8d4d733812dd5de1890f25f3b85dae94b92e6c35f89ab45c2c8ab337
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:750c5f78fd0dedcaecb7aba2bb3afa527622db928fec696733ad07e5fa856f85
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:bbe02b59de239cef008edb84508a2800080423d6aa17e1b2de6c81e3897d5a93
        version: 8.0.2-6.1
      entries:
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.2
    - currentCSV: redis-enterprise-operator.v8.0.2-2.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:8ee164c4aa7e1a6eb2b9a717ba2ef10399962db8d08989b9d28d4a6bb55ed434
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:8487e6a03404387d1d749080fb7e1e5025b1a762a9b617ca1f211e2999bb55d8
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:bd85f2f6dbff84eba2eab6ade2dde9adc07afedfaf2b40471079eb09c3677e8d
        - registry.connect.redhat.com/redislabs/services-manager@sha256:f13145b0998d9267871b7526c12018da4ba4bfc35aa4c56199a022dc96ddcb96
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:2ed588ff843778a111539e0857f7961a5a64393c70a1794a27502b488cffb38c
        version: 8.0.2-2.9
      entries:
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.2-2.9
    - currentCSV: redis-enterprise-operator.v8.0.2-6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:d751658d4a1b56e54ee404b8ff995f3c4056cb71020a3dfcbb064e86366f4a44
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:65b77d4e8d4d733812dd5de1890f25f3b85dae94b92e6c35f89ab45c2c8ab337
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:750c5f78fd0dedcaecb7aba2bb3afa527622db928fec696733ad07e5fa856f85
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:bbe02b59de239cef008edb84508a2800080423d6aa17e1b2de6c81e3897d5a93
        - registry.connect.redhat.com/redislabs/services-manager@sha256:1e858656f7ec0fa64cd6b159ae4748b24aac274b5ec4418409a485a6ad38cb9f
        version: 8.0.2-6.1
      entries:
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.2-6.1
    - currentCSV: redis-enterprise-operator.v8.0.6-8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:10c2630183aaf357bca793dbe239e7011d2527dfa6ff5f15c0278bbc501eaeb4
        - registry.connect.redhat.com/redislabs/services-manager@sha256:8cf316b7c8381387cb092d691a9a5bf098b8604229cabf95994eeb105d962037
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:5540b0c0150e0b1b3979cd0d96ad2853472cd9fafdc03af5835d0e34ec329c82
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:4f070787e98014dfa13587931e73751e616cb56848236346a1cccd31cc0543bf
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:7c9a0c2c41d4104a4e4d319b63cc7188ff1e72ed3f75ec51f8ee1a022ac83e16
        version: 8.0.6-8.0
      entries:
      - name: redis-enterprise-operator.v8.0.6-8.0
        version: 8.0.6-8.0
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.6
    - currentCSV: redis-enterprise-operator.v8.0.6-8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/services-manager@sha256:8cf316b7c8381387cb092d691a9a5bf098b8604229cabf95994eeb105d962037
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:5540b0c0150e0b1b3979cd0d96ad2853472cd9fafdc03af5835d0e34ec329c82
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:4f070787e98014dfa13587931e73751e616cb56848236346a1cccd31cc0543bf
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:7c9a0c2c41d4104a4e4d319b63cc7188ff1e72ed3f75ec51f8ee1a022ac83e16
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:10c2630183aaf357bca793dbe239e7011d2527dfa6ff5f15c0278bbc501eaeb4
        version: 8.0.6-8.0
      entries:
      - name: redis-enterprise-operator.v8.0.6-8.0
        version: 8.0.6-8.0
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: 8.0.6-8.0
    - currentCSV: redis-enterprise-operator.v8.0.6-8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.redislabs.com/v1",
                "kind": "RedisEnterpriseCluster",
                "metadata": {
                  "name": "rec"
                },
                "spec": {
                  "nodes": 3,
                  "persistentSpec": {
                    "enabled": true
                  },
                  "bootstrapperImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise-operator"
                  },
                  "redisEnterpriseServicesRiggerImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/services-manager"
                  },
                  "redisEnterpriseImageSpec": {
                    "repository": "registry.connect.redhat.com/redislabs/redis-enterprise"
                  },
                  "usageMeter": {
                    "callHomeClient": {
                      "imageSpec": {
                        "repository": "registry.connect.redhat.com/redislabs/call-home-client"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseDatabase",
                "metadata": {
                  "name": "redb"
                },
                "spec": {
                  "memorySize": "256MB",
                  "shardCount": 1,
                  "replication": true
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseRemoteCluster",
                "metadata": {
                  "name": "rerc1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "recName": "rec",
                  "recNamespace": "ns1",
                  "apiFqdnUrl": "testapi-rerc1-ns1.redislabs.com",
                  "dbFqdnSuffix": "-example-rerc1-ns1.redislabs.com",
                  "secretName": "redis-enterprise-rerc1"
                }
              },
              {
                "apiVersion": "app.redislabs.com/v1alpha1",
                "kind": "RedisEnterpriseActiveActiveDatabase",
                "metadata": {
                  "name": "reaadb-1",
                  "labels": {
                    "app": "redis-enterprise"
                  }
                },
                "spec": {
                  "participatingClusters": [
                    {
                      "name": "rerc1"
                    },
                    {
                      "name": "rerc2"
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a Redis Enterprise Cluster
            displayName: RedisEnterpriseCluster
            kind: RedisEnterpriseCluster
            name: redisenterpriseclusters.app.redislabs.com
            version: v1
          - description: Deploy a Redis Enterprise Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseDatabase
            kind: RedisEnterpriseDatabase
            name: redisenterprisedatabases.app.redislabs.com
            version: v1alpha1
          - description: Deploy a Redis Enterprise Active-Active Database on an operator-managed
              Redis Enteprise Cluster
            displayName: RedisEnterpriseActiveActiveDatabase
            kind: RedisEnterpriseActiveActiveDatabase
            name: redisenterpriseactiveactivedatabases.app.redislabs.com
            version: v1alpha1
          - description: Define Redis Enterprise Clusters used to form Active-Active
              databases
            displayName: RedisEnterpriseRemoteCluster
            kind: RedisEnterpriseRemoteCluster
            name: redisenterpriseremoteclusters.app.redislabs.com
            version: v1alpha1
        description: |-
          Redis Enterprise Software is enterprise grade, distributed, in-memory NoSQL database server, fully compatible with open source Redis by Redis.
          Redis Enterprise Software extends open source Redis and delivers stable high performance, zero-downtime linear scaling and high
          availability, with significant operational savings.
          Redis Enterprise provides a flexible and cost-effective data platform so developers can focus on rapid, high-quality development for
          sophisticated use cases that meet the needs of a modern digital enterprise. With Redis Enterprise, you can:
          * Enjoy high performance and record-setting low latencies with minimal operational overhead
          * Develop highly scalable microservices-based and Kubernetes-orchestrated applications
          * Use versatile data structures for a variety of use cases, such as high-speed transactions, user session management, real-time analytics, caching and many more
          * Leverage enterprise-grade operational controls for high availability, security and seamless scale
          * Automate operational best practices for deploying and managing the Redis Enterprise data platform with built-in Kubernetes Operator support
          * Deploy, manage and move applications to and from any cloud for seamless portability

          ### Core capabilities
          * **Speed application development and time to market** - Unburden developers from the complexity of infrastructure operations and
            empower them to manage data with maximum flexibility. This helps them build modern applications quickly, make changes rapidly and
            support a variety of different data structures, models, relationships and use cases.
          * **Ensure business continuity with always-on data service** - Maintain service uptime and ensure failsafe high availability, instant
            failover and automatic recovery to protect your applications against unplanned downtime, outages and data loss.
          * **Design for performance and unmatched user experience** - Deliver the highest level of responsiveness and interactive customer
            experiences with best-in-class exceptional linear scaling high performance through a shared-nothing architecture and in-memory processing.
          * **Simplify operations with automated lifecycle management and layered orchestration** - Automate database provisioning, management and
            maintenance, and abstract away the complexities of high availability, seamless scale and zero-downtime upgrades with built-in support for
            Kubernetes and Operators.
          * **Enjoy multi-level robust security** - Provide granular control to meet self-imposed and regulatory compliance regulations and
            standards with built-in finegrained security controls and data encryption.
          * **Gain platform independence with flexible deployment options** - Ensure portability with multiple deployment options across any cloud
            of choice for multicloud and hybrid deployments and on-premises.
          * **Ensure success** - Leverage 24x7 enterprise-grade support backed by expertise in managing and scaling hundreds of thousands of
            Redis databases for thousands of enterprise customers worldwide.
          * **Future proof investments** - Use the most popular database amongst developers, built on open source innovation and entrenched firmly
            in the application landscape with over 1B downloads on Docker. Redis preserves your investment for years with easy extensibility and
            versatility through its Modules and support for over 50 different programming languages

          #### Prerequisites
          A minimum of 3 nodes which support the following requirements:
          * RAM - At least 3GB with 4GB recommended
          * Persistent Storage - At least 10GB of free space with 20GB recommended.
          * A kubernetes version of 1.9 or higher

          #### Recommendations/known issues
          *  Changing the name of the Redis Enterprise Cluster in the spec from the
            default requires running commands to grant permissions to the pods:

            Operator service account:
              Redis Enterprise Cluster service account:
              > *oc adm policy add-scc-to-user redis-enterprise-scc-v2 system:serviceaccount:my-project:<name of Redis Enterprise Cluster>*

              Replace my-project with the actual name of the project/namespace. Replace <name of Redis Enterprise Cluster> with the name of the Redis Enterprise Cluster.

          * When creating a Redis Enterprise Cluster without specifying in its spec a `persistentSpec` with explicit `storageClassName`,
          the default Storage Class of the Kubernetes cluster will be used to dynamically provision storage for the Redis Enterprise Cluster's nodes.
          However, if the Kubernetes cluster doesn't have a default Storage Class configured
          and no specific Storage Class was specified in the Redis Enterprise Cluster Spec, the installation of the cluster could fail.
          To avoid such scenario in cases where a specific Storage Class isn't specified, make sure the Kubernetes Cluster has a default Storage Cluster configured.
          This can be done by running a `kubectl get storageclass` command and see if one of the Storage Classes' names contains a `(default)` mark.
        displayName: Redis Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - redislabs
        - redis
        - database
        - nosql
        - cache
        links:
        - name: Getting Started with Kubernetes and OpenShift
          url: https://docs.redislabs.com/latest/platforms/openshift/
        - name: Deployment files on github
          url: https://github.com/RedisLabs/redis-enterprise-k8s-docs
        - name: Redis Kubernetes Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-architecture/
        - name: Redis Enterprise Kubernetes Operator-based Architecture
          url: https://docs.redislabs.com/latest/platforms/kubernetes/kubernetes-with-operator/
        maintainers:
        - email: support@redislabs.com
          name: Redis, Inc
        maturity: mature
        provider:
          name: Redis
        relatedImages:
        - registry.connect.redhat.com/redislabs/call-home-client@sha256:5540b0c0150e0b1b3979cd0d96ad2853472cd9fafdc03af5835d0e34ec329c82
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator-bundle@sha256:4f070787e98014dfa13587931e73751e616cb56848236346a1cccd31cc0543bf
        - registry.connect.redhat.com/redislabs/redis-enterprise-operator@sha256:7c9a0c2c41d4104a4e4d319b63cc7188ff1e72ed3f75ec51f8ee1a022ac83e16
        - registry.connect.redhat.com/redislabs/redis-enterprise@sha256:10c2630183aaf357bca793dbe239e7011d2527dfa6ff5f15c0278bbc501eaeb4
        - registry.connect.redhat.com/redislabs/services-manager@sha256:8cf316b7c8381387cb092d691a9a5bf098b8604229cabf95994eeb105d962037
        version: 8.0.6-8.0
      entries:
      - name: redis-enterprise-operator.v8.0.6-8.0
        version: 8.0.6-8.0
      - name: redis-enterprise-operator.v8.0.2-6.1
        version: 8.0.2-6.1
      - name: redis-enterprise-operator.v8.0.2-2.9
        version: 8.0.2-2.9
      name: production
    defaultChannel: production
    packageName: redis-enterprise-operator-cert
    provider:
      name: Redis
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Cloudera
      provider-url: https://cloudera.com
    name: cfm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cfm-operator.v2.9.0-b96
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "Nifi",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifi-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifi",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifi-sample"
                },
                "spec": {
                  "hostName": "nifi.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifi-k8s",
                    "tag": "2.8.0-b94-nifi_1.25.0.2.3.13.0-36"
                  },
                  "replicas": 1,
                  "stateManagement": {
                    "clusterProvider": {
                      "class": "org.apache.nifi.kubernetes.state.provider.KubernetesConfigMapStateProvider",
                      "id": "kubernetes-provider"
                    }
                  },
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.8.0-b94"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              },
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "NifiRegistry",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifiregistry-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifiregistry",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifiregistry-sample"
                },
                "spec": {
                  "hostName": "registry.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s",
                    "tag": "2.8.0-b94-nifi_1.25.0.2.3.13.0-36"
                  },
                  "replicas": 1,
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.8.0-b94"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning,Big Data
          com.redhat.openshift.versions: v4.10
          containerImage: container.repository.cloudera.com/cloudera/cfm-operator@sha256:890d81188143ccf9ebe2c2fe5e039cdff3a2df53f7512555673f0468147e991e
          createdAt: "2024-12-06T19:03:24Z"
          description: Cloudera Flow Management - Kubernetes Operator for Apache NiFideploys
            and operates Apache NiFi
          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"
          operators.openshift.io/valid-subscription: A valid Cloudera license is required.
            Contact a Cloudera account team to learn more.
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NifiRegistry is the Schema for the nifiregistries API.
            displayName: Nifi Registry
            kind: NifiRegistry
            name: nifiregistries.cfm.cloudera.com
            version: v1alpha1
          - description: Nifi is the Schema for the nifis API.
            displayName: Nifi
            kind: Nifi
            name: nifis.cfm.cloudera.com
            version: v1alpha1
        description: |-
          Cloudera Flow Management - Kubernetes Operator for Apache NiFi brings enterprise-grade NiFi and NiFi Registry deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of NiFi and NiFi Registry for enterprise deployments.
          To learn more about Cloudera Flow Management - Kubernetes Operator for Apache NiFi read this
          [deep dive blog post](https://community.cloudera.com/t5/Community-Articles/Cloudera-Flow-Management-Operator-A-technical-deep-dive/ta-p/390473).

          Cloudera Flow Management - Kubernetes Operator for Apache NiFi consists of and ships multiple components including Apache NiFi, Apache NiFi Registry,
          and a custom sidecar image for logging aggregation.

          ## Installation prerequisites

          Installing Cloudera Flow Management - Kubernetes Operator for Apache NiFi requires the a valid license as well as Cloudera credentials
          (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly.
          The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) from which installation artifacts are pulled.

          ### Obtaining a license
          Contact [Cloudera sales](https://cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets
          Before installation, create two `Secrets`. One containing your Cloudera credentials and one containing your license. Cloudera credentials are provided to you
          together with your license.

          1. Create a `Secret` containing your Cloudera credentials.
              `oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***]
               --docker-server=container.repository.cloudera.com`

          2. Create a `Secret` containing your license.
              `oc create secret generic cfm-operator-license --from-file=license.txt=[***PATH TO LICENSE FILE***]`

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces in which you
            plan to deploy NiFi clusters or NiFi Registry deployments. Cloudera recommends that you create the `Secret` in all required namespaces before installation
            if you know which namespaces you will be using to deploy NiFi clusters or NiFi Registry deployments.

          ## Learn more
          To learn more, visit the [Cloudera Flow Management - Kubernetes Operator for Apache NiFi documentation library](https://docs.cloudera.com/cfm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Flow Management - Kubernetes Operator for Apache NiFi, visit the following resources:
          * [Apache NiFi](https://nifi.apache.org/)
          * [Apache NiFi Registry](https://nifi.apache.org/registry.html)
        displayName: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nifi
        - nifiregistry
        - cloudera
        - cfm
        links:
        - name: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
          url: https://docs.cloudera.com/cfm-operator
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/cfm-nifi-k8s@sha256:0d700b7eff096dfc362868345826c3a6460fa43a700273b1422e95015b7727ee
        - container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s@sha256:914dcde9ee97894fa6f5deec285e53bf81d196e071a997cabb40fedd52deccc3
        - container.repository.cloudera.com/cloudera/cfm-operator@sha256:890d81188143ccf9ebe2c2fe5e039cdff3a2df53f7512555673f0468147e991e
        - container.repository.cloudera.com/cloudera/cfm-tini@sha256:6493d23e20fca8daf31823403fca3dd9b42da983464fbe788a6863e141e8b66b
        - registry.connect.redhat.com/cloudera/cfm-operator-bundle@sha256:ca70ebce43d451d040aedcec036413f986e620234fd9a56d45983805396db0b5
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:86af06fb3b6c17b22be47118b0a8c797fa7fdd3c00dbe99a2d2a593ca8fc3d63
        version: 2.9.0-b96
      entries:
      - name: cfm-operator.v2.9.0-b96
        version: 2.9.0-b96
      name: alpha
    - currentCSV: cfm-operator.v2.11.0-b57
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "Nifi",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifi-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifi",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifi-sample"
                },
                "spec": {
                  "hostName": "nifi.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifi-k8s",
                    "tag": "2.9.0-b96-nifi_1.27.0.2.3.14.0-14"
                  },
                  "replicas": 1,
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.9.0-b96"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              },
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "NifiRegistry",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cfm-operator",
                    "app.kubernetes.io/instance": "nifiregistry-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nifiregistry",
                    "app.kubernetes.io/part-of": "cfm-operator"
                  },
                  "name": "nifiregistry-sample"
                },
                "spec": {
                  "hostName": "registry.apps-crc.testing",
                  "image": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s",
                    "tag": "2.9.0-b96-nifi_1.27.0.2.3.14.0-14"
                  },
                  "replicas": 1,
                  "tiniImage": {
                    "repository": "container.repository.cloudera.com/cloudera/cfm-tini",
                    "tag": "2.9.0-b96"
                  },
                  "uiConnection": {
                    "routeConfig": {
                      "tls": {
                        "termination": "passthrough"
                      }
                    },
                    "type": "Route"
                  }
                }
              },
              {
                "apiVersion": "cfm.cloudera.com/v1alpha1",
                "kind": "NifiRegistryBinding",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cfm-operator"
                  },
                  "name": "nifiregistrybinding-sample"
                },
                "spec": null
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning,Big Data
          com.redhat.openshift.versions: v4.10
          containerImage: container.repository.cloudera.com/cloudera/cfm-operator@sha256:88eb0813317d6f7984dffa0ad9aef3a24fb69890682086a1a78f63c1fe6438ff
          createdAt: "2025-10-08T16:02:41Z"
          description: Cloudera Flow Management - Kubernetes Operator for Apache NiFideploys
            and operates Apache NiFi
          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"
          operators.openshift.io/valid-subscription: A valid Cloudera license is required.
            Contact a Cloudera account team to learn more.
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Cloudera
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NifiRegistry is the Schema for the nifiregistries API.
            displayName: Nifi Registry
            kind: NifiRegistry
            name: nifiregistries.cfm.cloudera.com
            version: v1alpha1
          - description: NifiRegistryBinding is the Schema for the nifiregistrybindings
              API
            displayName: Nifi Registry Binding
            kind: NifiRegistryBinding
            name: nifiregistrybindings.cfm.cloudera.com
            version: v1alpha1
          - description: Nifi is the Schema for the nifis API.
            displayName: Nifi
            kind: Nifi
            name: nifis.cfm.cloudera.com
            version: v1alpha1
        description: |-
          Cloudera Flow Management - Kubernetes Operator for Apache NiFi brings enterprise-grade NiFi and NiFi Registry deployments to your existing Kubernetes infrastructure.

          Cloudera packages extensively tested and stable releases of NiFi and NiFi Registry for enterprise deployments.
          To learn more about Cloudera Flow Management - Kubernetes Operator for Apache NiFi read this
          [deep dive blog post](https://community.cloudera.com/t5/Community-Articles/Cloudera-Flow-Management-Operator-A-technical-deep-dive/ta-p/390473).

          Cloudera Flow Management - Kubernetes Operator for Apache NiFi consists of and ships multiple components including Apache NiFi, Apache NiFi Registry,
          and a custom sidecar image for logging aggregation.

          ## Installation prerequisites

          Installing Cloudera Flow Management - Kubernetes Operator for Apache NiFi requires the a valid license as well as Cloudera credentials
          (username and password) to be available in the installation namespace as `Secrets`. The license is required for operator applications to function properly.
          The credentials provide access to the Cloudera Docker registry (`container.repository.cloudera.com`) from which installation artifacts are pulled.

          ### Obtaining a license
          Contact [Cloudera sales](https://cloudera.com/contact-sales.html) to obtain a license.

          ### Creating Secrets
          Before installation, create two `Secrets`. One containing your Cloudera credentials and one containing your license. Cloudera credentials are provided to you
          together with your license.

          1. Create a `Secret` containing your Cloudera credentials.
              `oc create secret docker-registry cloudera-container-repository-credentials --docker-username=[***USERNAME***] --docker-password=[***PASSWORD***]
               --docker-server=container.repository.cloudera.com --namespace [***OPERATOR INSTALL NAMESPACE***]`

          2. Create a `Secret` containing your license.
              `oc create secret generic cfm-operator-license --from-file=license.txt=[***PATH TO LICENSE FILE***] --namespace [***OPERATOR INSTALL NAMESPACE***]`

          Note the following:
          - The name of both `Secrets` is fixed.
          - The `Secret` containing your Cloudera credentials (`cloudera-container-repository-credentials`) must be available in all namespaces in which you
            plan to deploy NiFi clusters or NiFi Registry deployments. Cloudera recommends that you create the `Secret` in all required namespaces before installation
            if you know which namespaces you will be using to deploy NiFi clusters or NiFi Registry deployments.

          ## Learn more
          To learn more, visit the [Cloudera Flow Management - Kubernetes Operator for Apache NiFi documentation library](https://docs.cloudera.com/cfm-operator).

          Additionally, to learn more about the various open-source components included in Cloudera Flow Management - Kubernetes Operator for Apache NiFi, visit the following resources:
          * [Apache NiFi](https://nifi.apache.org/)
          * [Apache NiFi Registry](https://nifi.apache.org/registry.html)
        displayName: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nifi
        - nifiregistry
        - cloudera
        - cfm
        links:
        - name: Cloudera Flow Management - Kubernetes Operator for Apache NiFi
          url: https://docs.cloudera.com/cfm-operator
        maintainers:
        - email: support@cloudera.com
          name: Cloudera
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Cloudera
          url: https://cloudera.com
        relatedImages:
        - container.repository.cloudera.com/cloudera/cfm-operator@sha256:88eb0813317d6f7984dffa0ad9aef3a24fb69890682086a1a78f63c1fe6438ff
        - container.repository.cloudera.com/cloudera/cfm-tini@sha256:50eee4783b59129b673c72d5e53a44bfd785a298c85577b36624e5e44a890a59
        - registry.connect.redhat.com/cloudera/cfm-operator-bundle@sha256:699e4b3766cd42da370f6d8826b9e906fedfa0cd1b5ed1ca11b2917d661ee272
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:86af06fb3b6c17b22be47118b0a8c797fa7fdd3c00dbe99a2d2a593ca8fc3d63
        - container.repository.cloudera.com/cloudera/cfm-nifi-k8s@sha256:fe8ce86deb7b8e02f6b4f1fa7580853d31e44af82dd197d81f578ed9df759587
        - container.repository.cloudera.com/cloudera/cfm-nifiregistry-k8s@sha256:96cf36d77f4231d2429af378879c155336ec80a5b64966602ceb6811684dfe04
        version: 2.11.0-b57
      entries:
      - name: cfm-operator.v2.11.0-b57
        version: 2.11.0-b57
      name: stable
    defaultChannel: stable
    packageName: cfm-operator
    provider:
      name: Cloudera
      url: https://cloudera.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: AppDynamics LLC
      provider-url: https://www.appdynamics.com/
    name: appdynamics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: appdynamics-operator.v24.7.0-861
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cluster.appdynamics.com/v1alpha1",
                "kind": "Clusteragent",
                "metadata": {
                  "name": "k8s-cluster-agent",
                  "namespace": "appdynamics"
                },
                "spec": {
                  "appName": "<app-name>",
                  "controllerUrl": "<appdynamics-controller-url",
                  "account": "<appdynamics-account-name>",
                  "image": "<your-docker-registry>/appdynamics/cluster-agent:tag"
                }
              },
              {
                "apiVersion": "cluster.appdynamics.com/v1alpha1",
                "kind": "InfraViz",
                "metadata": {
                  "name": "appdynamics-infraviz",
                  "namespace": "appdynamics"
                },
                "spec": {
                  "controllerUrl": "<appdynamics-controller-url",
                  "account": "<appdynamics-account-name>",
                  "image": "<your-docker-registry>/appdynamics/machine-agent:latest"
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring,Logging & Tracing
          certified: "false"
          containerImage: registry.connect.redhat.com/appdynamics/cluster-agent-operator@sha256:3c420cce8b626d8f5cf424410527c6a7a17ca3348e903dd8cdfcd74819b8de41
          createdAt: "2023-02-06T14:26:07Z"
          description: AppDynamics Operator to install AppDynamics Cluster Agent &
            AppDynamics Machine Agent for K8s Monitoring for various Cloud Providers
            like EKS, AKS etc.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: appdynamics
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: support@appdynamics.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Clusteragent is the Schema for the clusteragents API
            displayName: Clusteragent
            kind: Clusteragent
            name: clusteragents.cluster.appdynamics.com
            version: v1alpha1
          - description: InfraViz is the Schema for the infravizs API
            displayName: Infra Viz
            kind: InfraViz
            name: infravizs.cluster.appdynamics.com
            version: v1alpha1
        description: |-
          AppDynamics Operator to install AppDynamics Cluster Agent & Machine Agent for K8s Monitoring on various Cloud Providers like EKS, AKS, GCP, Openshift etc.
          **About AppDynamics Operator**
          AppDynamics Operator simplifies the installation and lifecycle management of the AppDynamics ClusterAgent and the AppDynamics Machine Agent for K8s Monitoring on different Cloud Providers like EKS, AKS, GCP, OpenShift etc.
          **Installation Steps**
          Please refer below links for installation guide:
          [Install AppDynamics Cluster Agent](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-the-kubernetes-cli)
          [Install AppDynamics Machine Agent](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-the-kubernetes-cli)
          [Install AppDynamics Cluster Agent Using Helm Charts](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-helm-charts)
          [Install Appdynamics Machine Agent Using Helm Charts](https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-helm-charts)
        displayName: AppDynamics Operator for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AppDynamics
        - Operator
        - AppDynamics Cluster Agent
        - AppDynamics Machine Agent
        - AppDynamics K8s Monitoring
        links:
        - name: AppDynamics Kubernetes Monitoring Overview
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent
        - name: AppDynamics Cluster Agent Overview
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/overview-of-cluster-monitoring
        - name: AppDynamics Cluster Agent Requirements
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/cluster-agent-requirements-and-supported-environments
        - name: Install AppDynamics Cluster Agent
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-the-kubernetes-cli
        - name: Install AppDynamics Cluster Agent Using Helm Charts
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-the-cluster-agent-with-helm-charts
        - name: Install AppDynamics Machine Agent & NetViz Agent
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-the-kubernetes-cli
        - name: Install AppDynamics Machine Agent & NetViz Agent Using Helm Charts
          url: https://docs.appdynamics.com/appd/23.x/23.1/en/infrastructure-visibility/monitor-kubernetes-with-the-cluster-agent/install-the-cluster-agent/install-infrastructure-visibility-with-helm-charts
        maintainers:
        - email: support@appdynamics.com
          name: AppDynamics
        maturity: alpha
        provider:
          name: AppDynamics LLC
          url: https://www.appdynamics.com/
        relatedImages:
        - registry.connect.redhat.com/appdynamics/cluster-agent-operator@sha256:3c420cce8b626d8f5cf424410527c6a7a17ca3348e903dd8cdfcd74819b8de41
        - registry.connect.redhat.com/appdynamics/cluster-agent-operator-bundle@sha256:b2bc3e161311f8f5d2f5fc967815259697ce30bf94e980214bc05aa0e1529d55
        version: 24.7.0-861
      entries:
      - name: appdynamics-operator.v24.7.0-861
        version: 24.7.0-861
      name: alpha
    defaultChannel: alpha
    packageName: appdynamics-operator
    provider:
      name: AppDynamics LLC
      url: https://www.appdynamics.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: https://www.percona.com/
    name: percona-postgresql-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-postgresql-operator.v2.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgv2.percona.com/v2",
                "kind": "PerconaPGCluster",
                "metadata": {
                  "name": "cluster1"
                },
                "spec": {
                  "crVersion": "2.8.2",
                  "image": "docker.io/percona/percona-distribution-postgresql:17.7-2",
                  "imagePullPolicy": "Always",
                  "postgresVersion": 17,
                  "instances": [
                    {
                      "name": "instance1",
                      "replicas": 3,
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/data": "postgres"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      },
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      }
                    }
                  ],
                  "proxy": {
                    "pgBouncer": {
                      "replicas": 3,
                      "image": "docker.io/percona/percona-pgbouncer:1.25.0-1",
                      "affinity": {
                        "podAntiAffinity": {
                          "preferredDuringSchedulingIgnoredDuringExecution": [
                            {
                              "weight": 1,
                              "podAffinityTerm": {
                                "labelSelector": {
                                  "matchLabels": {
                                    "postgres-operator.crunchydata.com/role": "pgbouncer"
                                  }
                                },
                                "topologyKey": "kubernetes.io/hostname"
                              }
                            }
                          ]
                        }
                      }
                    }
                  },
                  "backups": {
                    "pgbackrest": {
                      "image": "docker.io/percona/percona-pgbackrest:2.57.0-1",
                      "repoHost": {
                        "affinity": {
                          "podAntiAffinity": {
                            "preferredDuringSchedulingIgnoredDuringExecution": [
                              {
                                "weight": 1,
                                "podAffinityTerm": {
                                  "labelSelector": {
                                    "matchLabels": {
                                      "postgres-operator.crunchydata.com/data": "pgbackrest"
                                    }
                                  },
                                  "topologyKey": "kubernetes.io/hostname"
                                }
                              }
                            ]
                          }
                        }
                      },
                      "manual": {
                        "repoName": "repo1",
                        "options": [
                          "--type=full"
                        ]
                      },
                      "repos": [
                        {
                          "name": "repo1",
                          "schedules": {
                            "full": "0 0 * * 6"
                          },
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "docker.io/percona/pmm-client:3.5.0",
                    "secret": "cluster1-pmm-secret",
                    "serverHost": "monitoring-service"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: docker.io/percona/percona-postgresql-operator:2.8.2
          createdAt: "2025-12-24T20:59:08Z"
          description: Percona Operator for PostgreSQL manages the lifecycle of Percona
            PostgreSQL cluster instances.
          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.skipRange: <v2.8.2
          repository: https://github.com/percona/percona-postgresql-operator
          support: percona.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaPGCluster is the CRD that defines a Percona PG Cluster
            displayName: Percona PGCluster
            kind: PerconaPGCluster
            name: perconapgclusters.pgv2.percona.com
            version: v2
          - description: PerconaPGBackup is the CRD that defines a Percona PostgreSQL
              Backup
            displayName: Percona PGBackup
            kind: PerconaPGBackup
            name: perconapgbackups.pgv2.percona.com
            version: v2
          - description: PerconaPGRestore is the CRD that defines a Percona PostgreSQL
              Restore
            displayName: Percona PGRestore
            kind: PerconaPGRestore
            name: perconapgrestores.pgv2.percona.com
            version: v2
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API This Custom Resource requires enabling CrunchyBridgeClusters feature
              gate
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PerconaPGUpgrade is the Schema for the perconapgupgrades
              API
            displayName: Percona PGUpgrade
            kind: PerconaPGUpgrade
            name: perconapgupgrades.pgv2.percona.com
            version: v2
          - description: PGAdmin is the Schema for the pgadmins API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          ## Percona is Cloud Native

          Percona Operator for PostgreSQL automates and simplifies deploying and managing
          open source PostgreSQL clusters on Kubernetes. Percona Operator for PostgreSQL is based on Postgres Operator developed by Crunchy Data.

          Whether you need to get a simple PostgreSQL cluster up and running, need to deploy a high availability,
          fault tolerant cluster in production, or are running your own database-as-a-service, the Operator provides the essential
          features you need to keep your clusters healthy.

          Consult the
          [documentation](https://www.percona.com/doc/kubernetes-operator-for-postgresql/index.html)
          on the Percona Operator for PostgreSQL for complete details on capabilities
          and options.

          ### Supported Features

          * **PostgreSQL Cluster Provisioning**

          Create, Scale, & Delete PostgreSQL clusters with ease, while fully customizing your Pods and PostgreSQL configuration.

          * **High Availability**

              Safe, automated failover backed by a distributed consensus based high-availability solution. Uses Pod Anti-Affinity to help resiliency; you can configure how much
              enforced this can be. Failed primaries automatically heal, allowing for faster recovery time. Support for standby PostgreSQL clusters that work both within and
              across multiple Kubernetes clusters.

          * **Disaster Recovery**

              Backups and restores leverage the open source pgBackRest utility and includes support for full, incremental, and differential backups as well as efficient delta
              restores. Set how long you want your backups retained for. Works great with very large databases!

          * **Communication Security**

              Secure communication between your applications and data servers by enabling TLS for your PostgreSQL servers, including the ability to enforce all of your connections
              to use TLS.

          * **Monitoring**

              Track the health of your PostgreSQL clusters with Percona Monitoring and Management (PMM).

          * **PostgreSQL User Management**

              Quickly add and remove users from your PostgreSQL clusters with powerful commands. Manage password expiration policies or use your preferred PostgreSQL authentication
              scheme.

          * **Updates Management**

              Safely apply PostgreSQL updates with minimal availability impact to your PostgreSQL clusters.

          * **Advanced Replication Support**

              Choose between asynchronous replication and synchronous replication for workloads that are sensitive to losing transactions.

          * **Clone**

              Create new clusters from your existing clusters or backups.

          * **Connection Pooling**

              Use [pgBouncer](https://access.crunchydata.com/documentation/postgres-operator/latest/tutorial/pgbouncer/) for connection pooling

          * **Affinity and Tolerations**

              Have your PostgreSQL clusters deployed to Kubernetes Nodes of your preference with node affinity, or designate which nodes Kubernetes can schedule PostgreSQL instances
              to with Kubernetes  tolerations.

          * **Scheduled Backups**

              Choose the type of backup (full, incremental, differential) and how frequently you want it to occur on each PostgreSQL cluster.

          * **Backup to S3**

              Store your backups in Amazon S3 or any object storage system that supports the S3 protocol. The Operator can backup, restore, and create new clusters from these backups.

          * **Multi-Namespace Support**

              You can control how the Operator leverages Kubernetes Namespaces with several different deployment models:

              * Deploy the Operator and all PostgreSQL clusters to the same namespace
              * Deploy the Operator to one Namespace, and all PostgreSQL clusters to a different Namespace
              * Deploy the Operator to one Namespace, and have your PostgreSQL clusters managed across multiple Namespaces

          * **Full Customizability**

              The Operator not only makes it easy to get PostgreSQL up and running on Kubernetes-enabled platforms, but also allows you to further customize your deployments:

              * Selecting different storage classes for your primary, replica, and backup storage
              * Select your own container resources class for each PostgreSQL cluster deployment; differentiate between resources applied for primary and replica clusters
              * Use your own container image repository, including `imagePullSecrets` and private repositories  support
              * Customize your PostgreSQL configuration
              * Bring your own trusted certificate authority (CA) for use with the Operator API server
              * Override your PostgreSQL configuration for each cluster
              * Use your own custom images, re-define the image for each container separately
        displayName: Percona Operator for PostgreSQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - percona
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-postgresql/index.html
        - name: Github
          url: https://github.com/percona/percona-postgresql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
          url: https://www.percona.com/
        relatedImages:
        - docker.io/percona/percona-postgresql-operator:2.8.2
        - quay.io/community-operator-pipeline-prod/percona-postgresql-operator@sha256:338df3b168eb9323d5afcac160a3d2ccf8a1faca16125c80a89251d569627f7c
        version: 2.8.2
      entries:
      - name: percona-postgresql-operator.v2.8.2
        version: 2.8.2
      - name: percona-postgresql-operator.v2.8.1
        version: 2.8.1
      - name: percona-postgresql-operator.v2.8.0
        version: 2.8.0
      name: stable
    defaultChannel: stable
    packageName: percona-postgresql-operator
    provider:
      name: Percona
      url: https://www.percona.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: opdev
      provider-url: opdev.github.io
    name: spark-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: spark-helm-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apachespark.apache.org/v1alpha1",
                "kind": "Spark",
                "metadata": {
                  "annotations": {
                    "helm.sdk.operatorframework.io/install-disable-crds": "true"
                  },
                  "name": "spark-operator"
                },
                "spec": {
                  "affinity": {},
                  "batchScheduler": {
                    "enable": false
                  },
                  "controllerThreads": 10,
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/googlecloudplatform/spark-operator",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "ingressUrlFormat": "",
                  "istio": {
                    "enabled": false
                  },
                  "labelSelectorFilter": "",
                  "leaderElection": {
                    "lockName": "spark-operator-lock",
                    "lockNamespace": ""
                  },
                  "logLevel": 2,
                  "metrics": {
                    "enable": true,
                    "endpoint": "/metrics",
                    "port": 10254,
                    "portName": "metrics",
                    "prefix": ""
                  },
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podLabels": {},
                  "podMonitor": {
                    "enable": false,
                    "jobLabel": "spark-operator-podmonitor",
                    "labels": {},
                    "podMetricsEndpoint": {
                      "interval": "5s",
                      "scheme": "http"
                    }
                  },
                  "podSecurityContext": {},
                  "rbac": {
                    "create": false,
                    "createClusterRole": true,
                    "createRole": true
                  },
                  "replicaCount": 1,
                  "resourceQuotaEnforcement": {
                    "enable": false
                  },
                  "resources": {},
                  "resyncInterval": 30,
                  "securityContext": {},
                  "serviceAccounts": {
                    "spark": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "sparkoperator": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    }
                  },
                  "sparkJobNamespace": "",
                  "tolerations": [],
                  "uiService": {
                    "enable": true
                  },
                  "volumeMounts": [],
                  "volumes": [],
                  "webhook": {
                    "cleanupAnnotations": {
                      "helm.sh/hook": "pre-delete, pre-upgrade",
                      "helm.sh/hook-delete-policy": "hook-succeeded"
                    },
                    "enable": false,
                    "initAnnotations": {
                      "helm.sh/hook": "pre-install, pre-upgrade",
                      "helm.sh/hook-weight": "50"
                    },
                    "namespaceSelector": "",
                    "port": 8080,
                    "timeout": 30
                  }
                }
              },
              {
                "apiVersion": "sparkoperator.k8s.io/v1beta2",
                "kind": "ScheduledSparkApplication",
                "metadata": {
                  "name": "spark-pi-scheduled",
                  "namespace": "spark-operator"
                },
                "spec": {
                  "concurrencyPolicy": "Allow",
                  "schedule": "@every 5m",
                  "template": {
                    "driver": {
                      "coreLimit": "1200m",
                      "cores": 1,
                      "labels": {
                        "version": "3.1.1"
                      },
                      "memory": "512m",
                      "serviceAccount": "spark-operator-spark",
                      "volumeMounts": [
                        {
                          "mountPath": "/tmp",
                          "name": "test-volume"
                        }
                      ]
                    },
                    "executor": {
                      "cores": 1,
                      "instances": 1,
                      "labels": {
                        "version": "3.1.1"
                      },
                      "memory": "512m",
                      "volumeMounts": [
                        {
                          "mountPath": "/tmp",
                          "name": "test-volume"
                        }
                      ]
                    },
                    "image": "gcr.io/spark-operator/spark:v3.1.1",
                    "imagePullPolicy": "Always",
                    "mainApplicationFile": "local:///opt/spark/examples/jars/spark-examples_2.12-3.1.1.jar",
                    "mainClass": "org.apache.spark.examples.SparkPi",
                    "mode": "cluster",
                    "restartPolicy": {
                      "type": "Never"
                    },
                    "sparkVersion": "3.1.1",
                    "type": "Scala",
                    "volumes": [
                      {
                        "hostPath": {
                          "path": "/tmp",
                          "type": "Directory"
                        },
                        "name": "test-volume"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sparkoperator.k8s.io/v1beta2",
                "kind": "SparkApplication",
                "metadata": {
                  "name": "pyspark-pi",
                  "namespace": "spark-operator"
                },
                "spec": {
                  "driver": {
                    "coreLimit": "1200m",
                    "cores": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "serviceAccount": "spark-operator-spark",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "executor": {
                    "cores": 1,
                    "instances": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "image": "gcr.io/spark-operator/spark-py:v3.1.1",
                  "imagePullPolicy": "Always",
                  "mainApplicationFile": "local:///opt/spark/examples/src/main/python/pi.py",
                  "mode": "cluster",
                  "pythonVersion": "3",
                  "restartPolicy": {
                    "onFailureRetries": 3,
                    "onFailureRetryInterval": 10,
                    "onSubmissionFailureRetries": 5,
                    "onSubmissionFailureRetryInterval": 20,
                    "type": "OnFailure"
                  },
                  "sparkVersion": "3.1.1",
                  "type": "Python",
                  "volumes": [
                    {
                      "hostPath": {
                        "path": "/tmp",
                        "type": "Directory"
                      },
                      "name": "test-volume"
                    }
                  ]
                }
              },
              {
                "apiVersion": "sparkoperator.k8s.io/v1beta2",
                "kind": "SparkApplication",
                "metadata": {
                  "name": "spark-pi",
                  "namespace": "spark-operator"
                },
                "spec": {
                  "driver": {
                    "coreLimit": "1200m",
                    "cores": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "serviceAccount": "spark-operator-spark",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "executor": {
                    "cores": 1,
                    "instances": 1,
                    "labels": {
                      "version": "3.1.1"
                    },
                    "memory": "512m",
                    "volumeMounts": [
                      {
                        "mountPath": "/tmp",
                        "name": "test-volume"
                      }
                    ]
                  },
                  "image": "gcr.io/spark-operator/spark:v3.1.1",
                  "imagePullPolicy": "Always",
                  "mainApplicationFile": "local:///opt/spark/examples/jars/spark-examples_2.12-3.1.1.jar",
                  "mainClass": "org.apache.spark.examples.SparkPi",
                  "mode": "cluster",
                  "restartPolicy": {
                    "type": "Never"
                  },
                  "sparkVersion": "3.1.1",
                  "type": "Scala",
                  "volumes": [
                    {
                      "hostPath": {
                        "path": "/tmp",
                        "type": "Directory"
                      },
                      "name": "test-volume"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: quay.io/opdev/spark-helm-operator-controller:0.0.2
          createdAt: "2023-07-14T17:57:44Z"
          description: An experimental operator that installs the spark on k8s operator
            from its helm chart.
          operatorframework.io/initialization-resource: "{\n  \"apiVersion\": \"apachespark.apache.org/v1alpha1\",\n
            \ \"kind\": \"Spark\",\n  \"metadata\": {\n    \"name\": \"spark-operator\"\n
            \ },\n  \"spec\": {\n    \"affinity\": {},\n    \"batchScheduler\": {\n
            \     \"enable\": false\n    },\n    \"controllerThreads\": 10,\n    \"fullnameOverride\":
            \"\",\n    \"image\": {\n      \"pullPolicy\": \"IfNotPresent\",\n      \"repository\":
            \"ghcr.io/googlecloudplatform/spark-operator\",\n      \"tag\": \"\"\n
            \   },\n    \"imagePullSecrets\": [],\n    \"ingressUrlFormat\": \"\",\n
            \   \"istio\": {\n      \"enabled\": false\n    },\n    \"labelSelectorFilter\":
            \"\",\n    \"leaderElection\": {\n      \"lockName\": \"spark-operator-lock\",\n
            \     \"lockNamespace\": \"\"\n    },\n    \"logLevel\": 2,\n    \"metrics\":
            {\n      \"enable\": true,\n      \"endpoint\": \"/metrics\",\n      \"port\":
            10254,\n      \"portName\": \"metrics\",\n      \"prefix\": \"\"\n    },\n
            \   \"nameOverride\": \"\",\n    \"nodeSelector\": {},\n    \"podAnnotations\":
            {},\n    \"podLabels\": {},\n    \"podMonitor\": {\n      \"enable\":
            false,\n      \"jobLabel\": \"spark-operator-podmonitor\",\n      \"labels\":
            {},\n      \"podMetricsEndpoint\": {\n        \"interval\": \"5s\",\n
            \       \"scheme\": \"http\"\n      }\n    },\n    \"podSecurityContext\":
            {},\n    \"rbac\": {\n      \"create\": false,\n      \"createClusterRole\":
            true,\n      \"createRole\": true\n    },\n    \"replicaCount\": 1,\n
            \   \"resourceQuotaEnforcement\": {\n      \"enable\": false\n    },\n
            \   \"resources\": {},\n    \"resyncInterval\": 30,\n    \"securityContext\":
            {},\n    \"serviceAccounts\": {\n      \"spark\": {\n        \"annotations\":
            {},\n        \"create\": true,\n        \"name\": \"\"\n      },\n      \"sparkoperator\":
            {\n        \"annotations\": {},\n        \"create\": true,\n        \"name\":
            \"\"\n      }\n    },\n    \"sparkJobNamespace\": \"\",\n    \"tolerations\":
            [],\n    \"uiService\": {\n      \"enable\": true\n    },\n    \"volumeMounts\":
            [],\n    \"volumes\": [],\n    \"webhook\": {\n      \"cleanupAnnotations\":
            {\n        \"helm.sh/hook\": \"pre-delete, pre-upgrade\",\n        \"helm.sh/hook-delete-policy\":
            \"hook-succeeded\"\n      },\n      \"enable\": false,\n      \"initAnnotations\":
            {\n        \"helm.sh/hook\": \"pre-install, pre-upgrade\",\n        \"helm.sh/hook-weight\":
            \"50\"\n      },\n      \"namespaceSelector\": \"\",\n      \"port\":
            8080,\n      \"timeout\": 30\n    }\n  }\n}    "
          operatorframework.io/suggested-namespace: spark-operator
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: hybrid.helm.sdk.operatorframework.io/v1-alpha
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys a scheduled spark application based on the spec provided
            displayName: Scheduled Spark Application
            kind: ScheduledSparkApplication
            name: scheduledsparkapplications.sparkoperator.k8s.io
            version: v1beta2
          - description: Deploys a spark application based on the spec provided
            displayName: Spark Application
            kind: SparkApplication
            name: sparkapplications.sparkoperator.k8s.io
            version: v1beta2
          - description: Deploys the spark operator based on the google cloud platform
              helm chart
            displayName: Spark Operator
            kind: Spark
            name: sparks.apachespark.apache.org
            version: v1alpha1
        description: An experimental helm based operator that wraps the spark on k8s
          helm chart from google cloud platform enabling installation and workload
          management of Apache Spark
        displayName: Spark Helm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - big data
        - map reduce
        - data science
        links:
        - name: Spark Helm Operator
          url: https://github.com/skattoju/spark-helm-operator
        maintainers:
        - email: skattoju@redhat.com
          name: Sid Kattoju
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: opdev
          url: opdev.github.io
        relatedImages:
        - quay.io/openshift-community-operators/spark-helm-operator@sha256:9bd49276e02f2fb28bb1ff116112cd7ebe0aa12bdb9f1e46aae2501fd9e4e755
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/opdev/spark-helm-operator-controller:0.0.2
        version: 0.0.2
      entries:
      - name: spark-helm-operator.v0.0.2
        version: 0.0.2
      - name: spark-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: spark-helm-operator
    provider:
      name: opdev
      url: opdev.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ocs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ocs-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |2-

            [
                {
                    "apiVersion": "ocs.openshift.io/v1",
                    "kind": "StorageCluster",
                    "metadata": {
                        "name": "example-storagecluster",
                        "namespace": "openshift-storage"
                    },
                    "spec": {
                        "manageNodes": false,
                        "monPVCTemplate": {
                            "spec": {
                                "accessModes": [
                                    "ReadWriteOnce"
                                ],
                                "resources": {
                                    "requests": {
                                        "storage": "10Gi"
                                    }
                                },
                                "storageClassName": "gp2-csi"
                            }
                        },
                        "storageDeviceSets": [
                            {
                                "count": 3,
                                "dataPVCTemplate": {
                                    "spec": {
                                        "accessModes": [
                                            "ReadWriteOnce"
                                        ],
                                        "resources": {
                                            "requests": {
                                                "storage": "1Ti"
                                            }
                                        },
                                        "storageClassName": "gp2-csi",
                                        "volumeMode": "Block"
                                    }
                                },
                                "name": "example-deviceset",
                                "placement": {},
                                "portable": true,
                                "resources": {}
                            }
                        ]
                    }
                }
            ]
          capabilities: Deep Insights
          categories: Storage
          containerImage: registry.redhat.io/odf4/ocs-rhel9-operator@sha256:8656bc7d8466b33d3b7910bf567de11199126cef0dd01f1bf4615faa84515921
          description: Red Hat OpenShift Container Storage provides hyperconverged
            storage for applications within an OpenShift cluster.
          external.features.ocs.openshift.io/supported-platforms: '["BareMetal", "None",
            "VSphere", "OpenStack", "oVirt"]'
          external.features.ocs.openshift.io/validation: '{"secrets":["rook-ceph-operator-creds",
            "rook-csi-rbd-node", "rook-csi-rbd-provisioner"], "configMaps": ["rook-ceph-mon-endpoints",
            "rook-ceph-mon"], "storageClasses": ["ceph-rbd"], "cephClusters": ["monitoring-endpoint"]}'
          features.ocs.openshift.io/disabled: '["ss-list", "install-wizard", "block-pool",
            "mcg-resource", "odf-dashboard", "common", "storage-provider", "storage-provisioner",
            "dashboard-resources", "csv-actions", "inventory-item", "alert-actions"]'
          features.ocs.openshift.io/enabled: '["kms", "arbiter", "flexible-scaling",
            "multus", "pool-management", "namespace-store", "mcg-standalone", "taint-nodes",
            "vault-sa-kms", "hpcs-kms"]'
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/initialization-resource: "\n    {\n        \"apiVersion\":
            \"ocs.openshift.io/v1\",\n        \"kind\": \"StorageCluster\",\n        \"metadata\":
            {\n            \"name\": \"example-storagecluster\",\n            \"namespace\":
            \"openshift-storage\"\n        },\n        \"spec\": {\n            \"manageNodes\":
            false,\n            \"monPVCTemplate\": {\n                \"spec\": {\n
            \                   \"accessModes\": [\n                        \"ReadWriteOnce\"\n
            \                   ],\n                    \"resources\": {\n                        \"requests\":
            {\n                            \"storage\": \"10Gi\"\n                        }\n
            \                   },\n                    \"storageClassName\": \"gp2-csi\"\n
            \               }\n            },\n            \"storageDeviceSets\":
            [\n                {\n                    \"count\": 3,\n                    \"dataPVCTemplate\":
            {\n                        \"spec\": {\n                            \"accessModes\":
            [\n                                \"ReadWriteOnce\"\n                            ],\n
            \                           \"resources\": {\n                                \"requests\":
            {\n                                    \"storage\": \"1Ti\"\n                                }\n
            \                           },\n                            \"storageClassName\":
            \"gp2-csi\",\n                            \"volumeMode\": \"Block\"\n
            \                       }\n                    },\n                    \"name\":
            \"example-deviceset\",\n                    \"placement\": {},\n                    \"portable\":
            true,\n                    \"resources\": {}\n                }\n            ]\n
            \       }\n    }\n\t"
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:16f27c8673487f2a3671319fbf01357726e6e416aa8b26300cccd88302400289
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.4
          operators.operatorframework.io/internal-objects: '["ocsinitializations.ocs.openshift.io","storageautoscalers.ocs.openshift.io","storageclusterpeers.ocs.openshift.io","storageconsumers.ocs.openshift.io"]'
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/ocs-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OCSInitialization represents the initial data to be created
              when the operator is installed.
            displayName: OCS Initialization
            kind: OCSInitialization
            name: ocsinitializations.ocs.openshift.io
            version: v1
          - description: StorageAutoScaler represents the automatic storage scaling
              for storage cluster.
            displayName: Storage Auto Scaling
            kind: StorageAutoScaler
            name: storageautoscalers.ocs.openshift.io
            version: v1
          - description: StorageClusterPeer is the Schema for the storageclusterpeers
              API
            displayName: Storage Cluster Peer
            kind: StorageClusterPeer
            name: storageclusterpeers.ocs.openshift.io
            version: v1
          - description: StorageCluster represents a cluster including Ceph Cluster,
              NooBaa and all the storage and compute resources required.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.ocs.openshift.io
            version: v1
          - description: StorageConsumer is the Schema for the storageconsumers API
            displayName: Storage Consumer
            kind: StorageConsumer
            name: storageconsumers.ocs.openshift.io
            version: v1alpha1
        description: |
          **Red Hat OpenShift Container Storage** deploys three operators.

          ### OpenShift Container Storage operator

          The OpenShift Container Storage operator is the primary operator for OpenShift Container Storage. It serves to facilitate the other operators in OpenShift Container Storage by performing administrative tasks outside their scope as well as watching and configuring their CustomResources.

          ### Rook

          [Rook][1] deploys and manages Ceph on OpenShift, which provides block and file storage.

          # Core Capabilities

          * **Self-managing service:** No matter which supported storage technologies you choose, OpenShift Container Storage ensures that resources can be deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Container Storage you can either build dedicated storage clusters or hyper-converged clusters where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Container Storage:** OpenShift Container Storage integrates Ceph with multiple storage presentations including object storage (compatible with S3), block storage, and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Container Storage efficiently distributes and replicates your data across your cluster to minimize the risk of data loss. With snapshots, cloning, and versioning, no more losing sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data storage for your workloads, using a single namespace.

          [1]: https://rook.io
        displayName: OpenShift Container Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        - rook
        - ceph
        - block storage
        - shared filesystem
        - object storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ocs-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/ocs-rhel9-operator@sha256:8656bc7d8466b33d3b7910bf567de11199126cef0dd01f1bf4615faa84515921
        - registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:16f27c8673487f2a3671319fbf01357726e6e416aa8b26300cccd88302400289
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:3538d484f80837f2164f15bcd1edb75fbcb73d72cbd94cd74c87f99da035fd84
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:a0f327daabcd97e59a855450a4ac642e45e8dbffa6a5f006f23525215f1c1a22
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:d5b404530b7d6ca8c7eec484dbcff32544c3ce8727a4d61c703396ae3fded62d
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:ac173cc6724b867a5cd2cec68cb3bab81a431ea11fdbb23810426dff5e531b03
        version: 4.19.9-rhodf
      entries:
      - name: ocs-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: ocs-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: ocs-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: ocs-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: ocs-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: ocs-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: ocs-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: ocs-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: ocs-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: ocs-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: ocs-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |2-

            [
                {
                    "apiVersion": "ocs.openshift.io/v1",
                    "kind": "StorageCluster",
                    "metadata": {
                        "name": "example-storagecluster",
                        "namespace": "openshift-storage"
                    },
                    "spec": {
                        "monPVCTemplate": {
                            "spec": {
                                "accessModes": [
                                    "ReadWriteOnce"
                                ],
                                "resources": {
                                    "requests": {
                                        "storage": "10Gi"
                                    }
                                },
                                "storageClassName": "gp2-csi"
                            }
                        },
                        "storageDeviceSets": [
                            {
                                "count": 3,
                                "dataPVCTemplate": {
                                    "spec": {
                                        "accessModes": [
                                            "ReadWriteOnce"
                                        ],
                                        "resources": {
                                            "requests": {
                                                "storage": "1Ti"
                                            }
                                        },
                                        "storageClassName": "gp2-csi",
                                        "volumeMode": "Block"
                                    }
                                },
                                "name": "example-deviceset",
                                "placement": {},
                                "portable": true,
                                "resources": {}
                            }
                        ]
                    }
                }
            ]
          capabilities: Deep Insights
          categories: Storage
          containerImage: registry.redhat.io/odf4/ocs-rhel9-operator@sha256:a4d564a143f44ec47012ee224d4d2b99db537809c7228c0f5adcb91434b67a44
          createdAt: "2025-12-18T07:42:24Z"
          description: Red Hat OpenShift Container Storage provides hyperconverged
            storage for applications within an OpenShift cluster.
          external.features.ocs.openshift.io/supported-platforms: '["BareMetal", "None",
            "VSphere", "OpenStack", "oVirt"]'
          external.features.ocs.openshift.io/validation: '{"secrets":["rook-ceph-operator-creds",
            "rook-csi-rbd-node", "rook-csi-rbd-provisioner"], "configMaps": ["rook-ceph-mon-endpoints",
            "rook-ceph-mon"], "storageClasses": ["ceph-rbd"], "cephClusters": ["monitoring-endpoint"]}'
          features.ocs.openshift.io/disabled: '["ss-list", "install-wizard", "block-pool",
            "mcg-resource", "odf-dashboard", "common", "storage-provider", "storage-provisioner",
            "dashboard-resources", "csv-actions", "inventory-item", "alert-actions"]'
          features.ocs.openshift.io/enabled: '["kms", "arbiter", "flexible-scaling",
            "multus", "pool-management", "namespace-store", "mcg-standalone", "taint-nodes",
            "vault-sa-kms", "hpcs-kms"]'
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/initialization-resource: "\n    {\n        \"apiVersion\":
            \"ocs.openshift.io/v1\",\n        \"kind\": \"StorageCluster\",\n        \"metadata\":
            {\n            \"name\": \"example-storagecluster\",\n            \"namespace\":
            \"openshift-storage\"\n        },\n        \"spec\": {\n            \"monPVCTemplate\":
            {\n                \"spec\": {\n                    \"accessModes\": [\n
            \                       \"ReadWriteOnce\"\n                    ],\n                    \"resources\":
            {\n                        \"requests\": {\n                            \"storage\":
            \"10Gi\"\n                        }\n                    },\n                    \"storageClassName\":
            \"gp2-csi\"\n                }\n            },\n            \"storageDeviceSets\":
            [\n                {\n                    \"count\": 3,\n                    \"dataPVCTemplate\":
            {\n                        \"spec\": {\n                            \"accessModes\":
            [\n                                \"ReadWriteOnce\"\n                            ],\n
            \                           \"resources\": {\n                                \"requests\":
            {\n                                    \"storage\": \"1Ti\"\n                                }\n
            \                           },\n                            \"storageClassName\":
            \"gp2-csi\",\n                            \"volumeMode\": \"Block\"\n
            \                       }\n                    },\n                    \"name\":
            \"example-deviceset\",\n                    \"placement\": {},\n                    \"portable\":
            true,\n                    \"resources\": {}\n                }\n            ]\n
            \       }\n    }\n\t"
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:7889a3443f24821d3946b734f630a5c34cd5923fe52912661766d170bf3b56c6
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/internal-objects: '["ocsinitializations.ocs.openshift.io","storageautoscalers.ocs.openshift.io","storageclusterpeers.ocs.openshift.io","storageconsumers.ocs.openshift.io"]'
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/red-hat-storage/ocs-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OCSInitialization represents the initial data to be created
              when the operator is installed.
            displayName: OCS Initialization
            kind: OCSInitialization
            name: ocsinitializations.ocs.openshift.io
            version: v1
          - description: StorageAutoScaler represents the automatic storage scaling
              for storage cluster.
            displayName: Storage Auto Scaling
            kind: StorageAutoScaler
            name: storageautoscalers.ocs.openshift.io
            version: v1
          - description: StorageClusterPeer is the Schema for the storageclusterpeers
              API
            displayName: Storage Cluster Peer
            kind: StorageClusterPeer
            name: storageclusterpeers.ocs.openshift.io
            version: v1
          - description: StorageCluster represents a cluster including Ceph Cluster,
              NooBaa and all the storage and compute resources required.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.ocs.openshift.io
            version: v1
          - description: StorageConsumer is the Schema for the storageconsumers API
            displayName: Storage Consumer
            kind: StorageConsumer
            name: storageconsumers.ocs.openshift.io
            version: v1alpha1
        description: |
          **Red Hat OpenShift Container Storage** deploys three operators.

          ### OpenShift Container Storage operator

          The OpenShift Container Storage operator is the primary operator for OpenShift Container Storage. It serves to facilitate the other operators in OpenShift Container Storage by performing administrative tasks outside their scope as well as watching and configuring their CustomResources.

          ### Rook

          [Rook][1] deploys and manages Ceph on OpenShift, which provides block and file storage.

          # Core Capabilities

          * **Self-managing service:** No matter which supported storage technologies you choose, OpenShift Container Storage ensures that resources can be deployed and managed automatically.

          * **Hyper-scale or hyper-converged:** With OpenShift Container Storage you can either build dedicated storage clusters or hyper-converged clusters where your apps run alongside storage.

          * **File, Block, and Object provided by OpenShift Container Storage:** OpenShift Container Storage integrates Ceph with multiple storage presentations including object storage (compatible with S3), block storage, and POSIX-compliant shared file system.

          * **Your data, protected:** OpenShift Container Storage efficiently distributes and replicates your data across your cluster to minimize the risk of data loss. With snapshots, cloning, and versioning, no more losing sleep over your data.

          * **Elastic storage in your datacenter:** Scale is now possible in your datacenter. Get started with a few terabytes, and easily scale up.

          * **Simplified data management:** Easily create hybrid and multi-cloud data storage for your workloads, using a single namespace.

          [1]: https://rook.io
        displayName: OpenShift Container Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        - rook
        - ceph
        - block storage
        - shared filesystem
        - object storage
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ocs-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/ocs-operator-bundle@sha256:64537ae6999feb2c7e449d8d5a1cdf5f64450b45934a7dba2b82542a5f6adc20
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:1e1e53d68779e4575ff7958307c61e1341efffc225ccfdc75c2518e8797f0fd7
        - registry.redhat.io/odf4/odf-must-gather-rhel9@sha256:7889a3443f24821d3946b734f630a5c34cd5923fe52912661766d170bf3b56c6
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92
        - registry.redhat.io/odf4/ocs-metrics-exporter-rhel9@sha256:0a2285aea9606696c4ea75644f2019bd199c6632de4b7f459f4024d5b3f66048
        - registry.redhat.io/odf4/ocs-rhel9-operator@sha256:a4d564a143f44ec47012ee224d4d2b99db537809c7228c0f5adcb91434b67a44
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
        version: 4.20.4-rhodf
      entries:
      - name: ocs-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: ocs-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: ocs-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: ocs-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: ocs-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: ocs-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Dynatrace LLC
      provider-url: www.dynatrace.com
    name: dynatrace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dynatrace-operator.v1.7.2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          containerImage: registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
          createdAt: 2025-11-17T09:03:01.768309
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.7.2
          operatorframework.io/suggested-namespace: dynatrace
          operators.openshift.io/valid-subscription: '["Dynatrace Platform Subscription
            (DPS)","Dynatrace Classic License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Dynatrace/dynatrace-operator
          support: Dynatrace
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta3
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta4
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta5
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha1
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha2
        description: |
          The Dynatrace Operator supports rollout and lifecycle management of various Dynatrace components in Kubernetes and OpenShift.

          Currently the Dynatrace Operator supports the following capabilities:

          ### OneAgent
            * `classicFullStack` rolls out one OneAgent pod per node to monitor its pods and the node itself
            * `applicationMonitoring` is a webhook based injection mechanism for automatic app-only injection
            * `hostMonitoring` monitors only the hosts, i.e., the nodes, in the cluster without app-only injection
          ### ActiveGate
            * `routing` routes OneAgent traffic through the ActiveGate
            * `kubernetes-monitoring` allows monitoring the Kubernetes API
            * `metrics-ingest` routes enriched metrics through an ActiveGate

          For more information please refer to [our DynaKube Custom Resource examples](https://dt-url.net/dynakube-samples).

          ### Installation
          Once you've installed the Dynatrace Operator, you can create a DynaKube custom resource.

          First, please add a Secret within the Project you've deployed the Dynatrace Operator to, which would contain your API and PaaS tokens. Create tokens of type *Dynatrace API* (`API_TOKEN`) and *Platform as a Service* (`PAAS_TOKEN`) and use their values in the following commands respectively.

          For assistance please refer to [Create user-generated access tokens](https://www.dynatrace.com/support/help/shortlink/token#create-user-generated-access-tokens).

          ``` $ oc -n <project> create secret generic dynakube --from-literal="apiToken=API_TOKEN" --from-literal="paasToken=PAAS_TOKEN" ```

          You may update this Secret at any time to rotate the tokens.

          After creation of the secret add the DynaKube object in the project where the Dynatrace Operator has been deployed, configured to your needs.

          ### Required Parameters
          * `apiUrl` - provide the URL to the API of your Dynatrace environment. In Dynatrace SaaS it will look like `https://<ENVIRONMENTID>.live.dynatrace.com/api` . In Dynatrace Managed like `https://<YourDynatraceServerURL>/e/<ENVIRONMENTID>/api` .

          ### Advanced Options
          * **Disable Certificate Checking** - disable any certificate validation that may interact poorly with proxies with in your cluster
          * **Image Override** - use a copy of the ActiveGate container image from a registry other than Docker's or Red Hat's

          For a complete list of supported parameters please consult the [Operator Deploy Guide](https://www.dynatrace.com/support/help/shortlink/openshift-deploy).

          ### Help
          You can find more about our instructions in our [documentation](https://www.dynatrace.com/support/help/shortlink/openshift-deploy#install-dynatrace-operator).
        displayName: Dynatrace Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - dynatrace
        - oneagent
        - activegate
        - observability
        links:
        - name: Dynatrace Operator
          url: https://github.com/Dynatrace/dynatrace-operator
        - name: OpenShift Monitoring Info
          url: https://www.dynatrace.com/technologies/openshift-monitoring
        maintainers:
        - email: support@dynatrace.com
          name: Dynatrace LLC
        maturity: alpha
        provider:
          name: Dynatrace LLC
          url: www.dynatrace.com
        relatedImages:
        - registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
        - registry.connect.redhat.com/dynatrace/dynatrace-operator-bundle@sha256:7311dca05f1b6131b176ee5410165bee1f8aa01549da2e5c58c3c53bafc36a18
        version: 1.7.2
      entries:
      - name: dynatrace-operator.v1.7.2
        version: 1.7.2
      - name: dynatrace-operator.v1.7.1
        version: 1.7.1
      - name: dynatrace-operator.v1.7.0
        version: 1.7.0
      - name: dynatrace-operator.v1.6.2
        version: 1.6.2
      - name: dynatrace-operator.v1.6.1
        version: 1.6.1
      - name: dynatrace-operator.v1.6.0
        version: 1.6.0
      - name: dynatrace-operator.v1.5.1
        version: 1.5.1
      - name: dynatrace-operator.v1.5.0
        version: 1.5.0
      - name: dynatrace-operator.v1.4.2
        version: 1.4.2
      - name: dynatrace-operator.v1.4.1
        version: 1.4.1
      - name: dynatrace-operator.v1.4.0
        version: 1.4.0
      name: alpha
    defaultChannel: alpha
    packageName: dynatrace-operator
    provider:
      name: Dynatrace LLC
      url: www.dynatrace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-trino-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trino-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/trino-operator@sha256:0aa26778c788e829b7226c51fd3ea384b4e9f23d3c3ef37f05390a9400448322
          description: Stackable Operator for Trino
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/trino-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for TrinoClusterSpec via `CustomResource`
            displayName: trinoclusters.trino.stackable.tech
            kind: TrinoCluster
            name: trinoclusters.trino.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for TrinoCatalogSpec via `CustomResource`
            displayName: trinocatalogs.trino.stackable.tech
            kind: TrinoCatalog
            name: trinocatalogs.trino.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Trino
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - trino
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/trino-operator@sha256:0aa26778c788e829b7226c51fd3ea384b4e9f23d3c3ef37f05390a9400448322
        - registry.connect.redhat.com/stackable/stackable-trino-operator@sha256:448b119ee427df47019b35103dfc5fbc79f52dc06cfdc71a81410593fdde9d7c
        version: 25.11.0
      entries:
      - name: trino-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-trino-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-emrcontainers-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-emrcontainers-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "emrcontainers.services.k8s.aws/v1alpha1",
                "kind": "VirtualCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/emrcontainers-controller:1.3.0
          createdAt: "2025-12-30T22:04:30Z"
          description: AWS EMR on EKS controller is a service controller for managing
            EMR on EKS resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: JobRun represents the state of an AWS emrcontainers JobRun
              resource.
            displayName: JobRun
            kind: JobRun
            name: jobruns.emrcontainers.services.k8s.aws
            version: v1alpha1
          - description: VirtualCluster represents the state of an AWS emrcontainers
              VirtualCluster resource.
            displayName: VirtualCluster
            kind: VirtualCluster
            name: virtualclusters.emrcontainers.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EMR on EKS resources in AWS from within your Kubernetes cluster.

          **About Amazon EMR on EKS**

          Amazon EMR on EKS provides a deployment option for Amazon EMR that allows you to run open-source big data frameworks on Amazon Elastic Kubernetes Service (Amazon EKS). With this deployment option, you can focus on running analytics workloads while Amazon EMR on EKS builds, configures, and manages containers for open-source applications.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EMR on EKS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - emrcontainers
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EMR on EKS Developer Resources
          url: https://docs.aws.amazon.com/emr/latest/EMR-on-EKS-DevelopmentGuide/emr-eks.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: emr on eks maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/emrcontainers-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-emrcontainers-controller@sha256:5b0174f334c167599cd3b4f3f23cd195b15ff246bb757c9c00343925b54b15ce
        version: 1.3.0
      entries:
      - name: ack-emrcontainers-controller.v1.3.0
        version: 1.3.0
      - name: ack-emrcontainers-controller.v1.2.0
        version: 1.2.0
      - name: ack-emrcontainers-controller.v1.1.2
        version: 1.1.2
      - name: ack-emrcontainers-controller.v1.1.1
        version: 1.1.1
      - name: ack-emrcontainers-controller.v1.1.0
        version: 1.1.0
      - name: ack-emrcontainers-controller.v1.0.27
        version: 1.0.27
      - name: ack-emrcontainers-controller.v1.0.25
        version: 1.0.25
      - name: ack-emrcontainers-controller.v1.0.24
        version: 1.0.24
      - name: ack-emrcontainers-controller.v1.0.23
        version: 1.0.23
      - name: ack-emrcontainers-controller.v1.0.22
        version: 1.0.22
      - name: ack-emrcontainers-controller.v1.0.21
        version: 1.0.21
      - name: ack-emrcontainers-controller.v1.0.18
        version: 1.0.18
      - name: ack-emrcontainers-controller.v1.0.16
        version: 1.0.16
      - name: ack-emrcontainers-controller.v1.0.15
        version: 1.0.15
      - name: ack-emrcontainers-controller.v1.0.14
        version: 1.0.14
      - name: ack-emrcontainers-controller.v1.0.13
        version: 1.0.13
      - name: ack-emrcontainers-controller.v1.0.12
        version: 1.0.12
      - name: ack-emrcontainers-controller.v1.0.11
        version: 1.0.11
      - name: ack-emrcontainers-controller.v1.0.9
        version: 1.0.9
      - name: ack-emrcontainers-controller.v1.0.8
        version: 1.0.8
      - name: ack-emrcontainers-controller.v1.0.4
        version: 1.0.4
      - name: ack-emrcontainers-controller.v1.0.3
        version: 1.0.3
      - name: ack-emrcontainers-controller.v1.0.1
        version: 1.0.1
      - name: ack-emrcontainers-controller.v1.0.0
        version: 1.0.0
      - name: ack-emrcontainers-controller.v0.1.2
        version: 0.1.2
      - name: ack-emrcontainers-controller.v0.1.0
        version: 0.1.0
      - name: ack-emrcontainers-controller.v0.0.10
        version: 0.0.10
      - name: ack-emrcontainers-controller.v0.0.9
        version: 0.0.9
      - name: ack-emrcontainers-controller.v0.0.8
        version: 0.0.8
      - name: ack-emrcontainers-controller.v0.0.7
        version: 0.0.7
      - name: ack-emrcontainers-controller.v0.0.6
        version: 0.0.6
      - name: ack-emrcontainers-controller.v0.0.5
        version: 0.0.5
      - name: ack-emrcontainers-controller.v0.0.4
        version: 0.0.4
      - name: ack-emrcontainers-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-emrcontainers-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Protocol Labs
      provider-url: ""
    name: ipfs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ipfs-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cluster.ipfs.io/v1alpha1",
                "kind": "CircuitRelay",
                "metadata": {
                  "name": "circuitrelay-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "cluster.ipfs.io/v1alpha1",
                "kind": "IpfsCluster",
                "metadata": {
                  "name": "ipfscluster-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Storage, Networking, Big Data
          containerImage: quay.io/redhat-et-ipfs/ipfs-operator:v0.0.1
          createdAt: 2022-04-05T15:50:37-0400
          operatorframework.io/suggested-namespace: ipfs-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ipfs-cluster/ipfs-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CircuitRelay is the Schema for the circuitrelays API.
            displayName: Circuit Relay
            kind: CircuitRelay
            name: circuitrelays.cluster.ipfs.io
            version: v1alpha1
          - description: IpfsCluster is the Schema for the ipfs API.
            displayName: Ipfs Cluster
            kind: IpfsCluster
            name: ipfsclusters.cluster.ipfs.io
            version: v1alpha1
        description: "The IPFS Operator enables users to easily create IPFS Cluster
          instances\nwithin their Kubernetes or OpenShift clusters. \n\n### Supported
          Features\n* Horizontal scaling\n* Joining collaborative clusters\n* Controlling
          IPFS node resource usage\n* Specifying reprovider settings  \n\n### Documentation
          \nDocumentation can be found on our [read-the-docs page](https://ipfs-operator.readthedocs.io/en/latest/),
          as well as our [GitHub repository](https://github.com/ipfs-cluster/ipfs-operator).\n\n###
          Getting Help\nIn case you run into issues while using the operator, please
          create an issue in our [GitHub\nrepository](https://github.com/ipfs-cluster/ipfs-operator).\n\n###
          Contributing\nWe welcome contributions of all types and sizes! You can find
          open issues\nin our [GitHub Repository](https://github.com/ipfs-cluster/ipfs-operator/issues),\nas
          well as make your own issue if you feel that something is missing.\n\n###
          License\nIPFS Operator is licensed under the [Apache 2.0 License](https://github.com/ipfs-cluster/ipfs-operator/blob/main/LICENSE)"
        displayName: IPFS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ipfs
        - ipfs cluster
        - decentralized storage
        - peer-to-peer
        - distributed hash table
        - content-addressed
        links:
        - name: IPFS Operator GitHub page
          url: https://github.com/ipfs-cluster/ipfs-operator
        - name: IPFS Cluster
          url: https://ipfscluster.io/
        - name: IPFS
          url: https://ipfs.io/
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Protocol Labs
        relatedImages:
        - quay.io/openshift-community-operators/ipfs-operator@sha256:03a61ef328feb626408d42904cdfb9d45f66e022d5a1e1088a15b74455487743
        - quay.io/redhat-et-ipfs/ipfs-operator:v0.0.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.0.2
      entries:
      - name: ipfs-operator.v0.0.2
        version: 0.0.2
      - name: ipfs-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ipfs-operator
    provider:
      name: Protocol Labs
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: lib-bucket-provisioner
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lib-bucket-provisioner.v2.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Storage,Big Data
          certified: "false"
          containerImage: quay.io/noobaa/pause
          createdAt: "2020-07-01T06:28:48Z"
          description: Library for the dynamic provisioning of object store buckets
            to be used by object store providers.
          repository: https://github.com/kube-object-storage/lib-bucket-provisioner
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          required:
          - description: Claim a bucket just like claiming a PV. Automate you app
              bucket provisioning by creating OBC with your app deployment. A secret
              and configmap (name=claim) will be created with access details for the
              app pods.
            displayName: ObjectBucketClaim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
          - description: Used under-the-hood. Created per ObjectBucketClaim and keeps
              provisioning information
            displayName: ObjectBucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
        description: |
          ### CRD-only Operator

          This operator package is **CRD-only** and the operator is a no-op operator.

          Instead, bucket provisioners using this library are using these CRD's and using CSV [required-crds](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/Documentation/design/building-your-csv.md#required-crds) them so that OLM can install it as a dependency.

          ### Generic Bucket Provisioning

          Kubernetes natively supports dynamic provisioning for many types of file and block storage, but lacks support for object bucket provisioning.

          This repo is a placeholder for an object store bucket provisioning library, very similar to the Kubernetes [sig-storage-lib-external-provisioner](https://github.com/kubernetes-sigs/sig-storage-lib-external-provisioner/blob/master/controller/controller.go) library.

          ### Known Provisioners
          - https://github.com/noobaa/noobaa-operator (NooBaa)
          - https://github.com/rook/rook (Rook-Ceph)
          - https://github.com/yard-turkey/aws-s3-provisioner (AWS-S3)
        displayName: lib-bucket-provisioner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - object
        - bucket
        - storage
        - cloud
        - s3
        links:
        - name: Github
          url: https://github.com/kube-object-storage/lib-bucket-provisioner
        maintainers:
        - email: jcope@redhat.com
          name: Jon Cope
        - email: jvance@redhat.com
          name: Jeff Vance
        - email: gmargali@redhat.com
          name: Guy Margalit
        - email: dzaken@redhat.com
          name: Danny Zaken
        - email: nbecker@redhat.com
          name: Nimrod Becker
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/noobaa/pause
        - quay.io/openshift-community-operators/lib-bucket-provisioner@sha256:132ecc88db79fb8b117a7a7974ca8f704600bac489923d918b78fd00378d5a5f
        version: 2.0.0
      entries:
      - name: lib-bucket-provisioner.v2.0.0
        version: 2.0.0
      name: alpha
    defaultChannel: alpha
    packageName: lib-bucket-provisioner
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: https://github.com/che-incubator/kubernetes-image-puller-operator
    name: kubernetes-imagepuller-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubernetes-imagepuller-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "che.eclipse.org/v1alpha1",
                "kind": "KubernetesImagePuller",
                "metadata": {
                  "name": "image-puller"
                },
                "spec": {
                  "daemonsetName": "k8s-image-puller",
                  "images": "java11-maven=quay.io/eclipse/che-java11-maven:next;che-theia=quay.io/eclipse/che-theia:next"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/eclipse/kubernetes-image-puller-operator:1.1.0
          createdAt: "2024-01-15T16:23:04Z"
          description: Create and manage kubernetes-image-puller instances.
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/che-incubator/kubernetes-image-puller-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubernetesImagePuller is the Schema for the kubernetesimagepullers
              API
            displayName: Kubernetes Image Puller
            kind: KubernetesImagePuller
            name: kubernetesimagepullers.che.eclipse.org
            version: v1alpha1
        description: "## About the managed application\n\nCreate a `KubernetesImagePuller`
          custom resource to automatically configure and run an instance of the [kubernetes-image-puller.](https://github.com/che-incubator/kubernetes-image-puller)\n##
          About this Operator\n\nThe `KubernetesImagePuller` custom resource understands
          the following fields in the `spec`:\n\n1. `configMapName` - The name of
          the `ConfigMap` to create\t\n2. `daemonsetName` - The name of the `DaemonSet`
          to be create.\n3. `deploymentName` - The name of the `kubernetes-image-puller`
          `Deployment` to create.\n4. `images` - A list of key-value pairs separated
          by semicolons of images to pull.  For example: `java=quay.io/eclipse/che-java8-maven:latest;theia=quay.io/eclipse/che-theia:next`\n5.
          `cachingIntervalHours` - The amount of time, in hours, between `DaemonSet`
          health checks.\n6. `cachingMemoryRequest` - The memory request for each
          cached image when the puller is running.\n7. `cachingMemoryLimit` - The
          memory limit for each cached image when the puller is running.\n8. `nodeSelector`
          - Node selector applied to pods created by the `DaemonSet`.\n## Prerequisites
          for enabling this Operator\n\nThe operator requires an existing namespace
          to be installed in.\nCheck the [README](https://github.com/che-incubator/kubernetes-image-puller-operator#installing-the-operator)
          for more details.\n"
        displayName: Kubernetes Image Puller Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - che
        - kubernetes-image-puller
        links:
        - name: Repository
          url: https://github.com/che-incubator/kubernetes-image-puller-operator
        maintainers:
        - email: ibuziuk@redhat.com
          name: Ilya Buziuk
        - email: abazko@redhat.com
          name: Anatolii Bazko
        maturity: stable
        provider:
          name: Red Hat, Inc.
          url: https://github.com/che-incubator/kubernetes-image-puller-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/kubernetes-imagepuller-operator@sha256:a72e3728dcf395667820c10c4c5ccb3f3d040ae5d04f50680e193398d3b72b88
        - quay.io/eclipse/kubernetes-image-puller-operator:1.1.0
        - quay.io/brancz/kube-rbac-proxy:v0.11.0
        version: 1.1.0
      entries:
      - name: kubernetes-imagepuller-operator.v1.1.0
        version: 1.1.0
      - name: kubernetes-imagepuller-operator.v1.0.6
        version: 1.0.6
      - name: kubernetes-imagepuller-operator.v1.0.5
        version: 1.0.5
      - name: kubernetes-imagepuller-operator.v1.0.4
        version: 1.0.4
      - name: kubernetes-imagepuller-operator.v1.0.3
        version: 1.0.3
      - name: kubernetes-imagepuller-operator.v1.0.2
        version: 1.0.2
      - name: kubernetes-imagepuller-operator.v1.0.1
        version: 1.0.1
      - name: kubernetes-imagepuller-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: kubernetes-imagepuller-operator
    provider:
      name: Red Hat, Inc.
      url: https://github.com/che-incubator/kubernetes-image-puller-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudwatchlogs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudwatchlogs-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cloudwatchlogs.services.k8s.aws/v1alpha1",
                "kind": "LogGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudwatchlogs-controller:1.2.0
          createdAt: "2025-11-29T03:46:37Z"
          description: AWS CloudWatch Logs controller is a service controller for
            managing CloudWatch Logs resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: LogGroup represents the state of an AWS cloudwatchlogs LogGroup
              resource.
            displayName: LogGroup
            kind: LogGroup
            name: loggroups.cloudwatchlogs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon CloudWatch Logs resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudWatch Logs**

          You can use Amazon CloudWatch Logs to monitor, store, and access your log files from Amazon Elastic Compute Cloud (Amazon EC2) instances, AWS CloudTrail, Route 53, and other sources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon CloudWatch Logs
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudwatchlogs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudWatch Logs Developer Resources
          url: https://aws.amazon.com/cloudwatch/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudwatch maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/cloudwatchlogs-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-cloudwatchlogs-controller@sha256:97870c245aa628ca61062685d89e93050a9a47b5abcbc11b1c22358e5d5da2f3
        version: 1.2.0
      entries:
      - name: ack-cloudwatchlogs-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudwatchlogs-controller.v1.1.2
        version: 1.1.2
      - name: ack-cloudwatchlogs-controller.v1.1.1
        version: 1.1.1
      - name: ack-cloudwatchlogs-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudwatchlogs-controller.v1.0.14
        version: 1.0.14
      - name: ack-cloudwatchlogs-controller.v1.0.13
        version: 1.0.13
      - name: ack-cloudwatchlogs-controller.v1.0.12
        version: 1.0.12
      - name: ack-cloudwatchlogs-controller.v1.0.11
        version: 1.0.11
      - name: ack-cloudwatchlogs-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudwatchlogs-controller.v1.0.9
        version: 1.0.9
      - name: ack-cloudwatchlogs-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudwatchlogs-controller.v1.0.7
        version: 1.0.7
      - name: ack-cloudwatchlogs-controller.v1.0.6
        version: 1.0.6
      - name: ack-cloudwatchlogs-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudwatchlogs-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudwatchlogs-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudwatchlogs-controller.v0.0.11
        version: 0.0.11
      - name: ack-cloudwatchlogs-controller.v0.0.10
        version: 0.0.10
      - name: ack-cloudwatchlogs-controller.v0.0.9
        version: 0.0.9
      - name: ack-cloudwatchlogs-controller.v0.0.8
        version: 0.0.8
      - name: ack-cloudwatchlogs-controller.v0.0.7
        version: 0.0.7
      - name: ack-cloudwatchlogs-controller.v0.0.4
        version: 0.0.4
      - name: ack-cloudwatchlogs-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudwatchlogs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudwatch-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudwatch-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudwatch-controller:1.4.0
          createdAt: "2025-11-29T03:47:43Z"
          description: AWS CloudWatch controller is a service controller for managing
            CloudWatch resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Dashboard represents the state of an AWS cloudwatch Dashboard
              resource.
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.cloudwatch.services.k8s.aws
            version: v1alpha1
          - description: MetricAlarm represents the state of an AWS cloudwatch MetricAlarm
              resource.
            displayName: MetricAlarm
            kind: MetricAlarm
            name: metricalarms.cloudwatch.services.k8s.aws
            version: v1alpha1
          - description: MetricStream represents the state of an AWS cloudwatch MetricStream
              resource.
            displayName: MetricStream
            kind: MetricStream
            name: metricstreams.cloudwatch.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon CloudWatch resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudWatch**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon CloudWatch
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudwatch
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudWatch Developer Resources
          url: https://aws.amazon.com/CloudWatch/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudwatch maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/cloudwatch-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-cloudwatch-controller@sha256:a4bcbbc9b6fa21797f47a34b93e09674200b98d67cbe9f704905dd0c91d67101
        version: 1.4.0
      entries:
      - name: ack-cloudwatch-controller.v1.4.0
        version: 1.4.0
      - name: ack-cloudwatch-controller.v1.3.1
        version: 1.3.1
      - name: ack-cloudwatch-controller.v1.3.0
        version: 1.3.0
      - name: ack-cloudwatch-controller.v1.2.1
        version: 1.2.1
      - name: ack-cloudwatch-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudwatch-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudwatch-controller.v1.0.13
        version: 1.0.13
      - name: ack-cloudwatch-controller.v1.0.12
        version: 1.0.12
      - name: ack-cloudwatch-controller.v1.0.11
        version: 1.0.11
      - name: ack-cloudwatch-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudwatch-controller.v1.0.9
        version: 1.0.9
      - name: ack-cloudwatch-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudwatch-controller.v1.0.7
        version: 1.0.7
      - name: ack-cloudwatch-controller.v1.0.6
        version: 1.0.6
      - name: ack-cloudwatch-controller.v1.0.5
        version: 1.0.5
      - name: ack-cloudwatch-controller.v1.0.4
        version: 1.0.4
      - name: ack-cloudwatch-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudwatch-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudwatch-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudwatch-controller.v0.0.12
        version: 0.0.12
      - name: ack-cloudwatch-controller.v0.0.11
        version: 0.0.11
      - name: ack-cloudwatch-controller.v0.0.10
        version: 0.0.10
      - name: ack-cloudwatch-controller.v0.0.9
        version: 0.0.9
      - name: ack-cloudwatch-controller.v0.0.8
        version: 0.0.8
      - name: ack-cloudwatch-controller.v0.0.3
        version: 0.0.3
      - name: ack-cloudwatch-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudwatch-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: odr-cluster-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odr-cluster-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRClusterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ramen",
                    "app.kubernetes.io/instance": "drclusterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "drclusterconfig",
                    "app.kubernetes.io/part-of": "ramen"
                  },
                  "name": "drclusterconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "VolumeReplicationGroup",
                "metadata": {
                  "name": "volumereplicationgroup-sample"
                },
                "spec": {
                  "async": {
                    "schedulingInterval": "10m"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ],
                        "name": "cpd"
                      },
                      {
                        "includedResources": [
                          "Deployment"
                        ],
                        "name": "deployments"
                      },
                      {
                        "excludedResources": [
                          ""
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includeClusterResources": true,
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "cpd",
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      },
                      {
                        "backupName": "deployments",
                        "includedResources": [
                          "Deployment"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "excludedResources": [
                          "ConfigMap",
                          "Secret",
                          "Deployment",
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      }
                    ]
                  },
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  },
                  "replicationState": "primary",
                  "s3Profiles": [
                    "s3-profile-of-east",
                    "s3-profile-of-west"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T08:01:01Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DRClusterConfig
            name: drclusterconfigs.ramendr.openshift.io
            version: v1alpha1
          - kind: MaintenanceMode
            name: maintenancemodes.ramendr.openshift.io
            version: v1alpha1
          - kind: ProtectedVolumeReplicationGroupList
            name: protectedvolumereplicationgrouplists.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupDestination
            name: replicationgroupdestinations.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupSource
            name: replicationgroupsources.ramendr.openshift.io
            version: v1alpha1
          - description: VolumeReplicationGroup is the Schema for the volumereplicationgroups
              API
            displayName: Volume Replication Group
            kind: VolumeReplicationGroup
            name: volumereplicationgroups.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Cluster is a disaster-recovery orchestrator for
          stateful applications, that operates from an Advanced Cluster Management
          (ACM) managed cluster and is controlled by Openshift DR Hub operator to
          orchestrate the life-cycle of an application, and its state on the managed
          cluster.
        displayName: Openshift DR Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-cluster-operator-bundle@sha256:08b88eee1cc768f2cebad6f50a42bcb0ac88dcb95b292b71ae9aed5ecefbc45f
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: odr-cluster-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odr-cluster-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odr-cluster-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odr-cluster-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odr-cluster-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odr-cluster-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odr-cluster-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odr-cluster-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odr-cluster-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odr-cluster-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odr-cluster-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "DRClusterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ramen",
                    "app.kubernetes.io/instance": "drclusterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "drclusterconfig",
                    "app.kubernetes.io/part-of": "ramen"
                  },
                  "name": "drclusterconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "VolumeReplicationGroup",
                "metadata": {
                  "name": "volumereplicationgroup-sample"
                },
                "spec": {
                  "async": {
                    "schedulingInterval": "10m"
                  },
                  "kubeObjectProtection": {
                    "captureInterval": "1m",
                    "captureOrder": [
                      {
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ],
                        "name": "config"
                      },
                      {
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ],
                        "name": "cpd"
                      },
                      {
                        "includedResources": [
                          "Deployment"
                        ],
                        "name": "deployments"
                      },
                      {
                        "excludedResources": [
                          ""
                        ],
                        "includeClusterResources": true,
                        "name": "everything"
                      }
                    ],
                    "recoverOrder": [
                      {
                        "backupName": "config",
                        "includeClusterResources": true,
                        "includedResources": [
                          "ConfigMap",
                          "Secret"
                        ]
                      },
                      {
                        "backupName": "cpd",
                        "includedResources": [
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      },
                      {
                        "backupName": "deployments",
                        "includedResources": [
                          "Deployment"
                        ]
                      },
                      {
                        "backupName": "everything",
                        "excludedResources": [
                          "ConfigMap",
                          "Secret",
                          "Deployment",
                          "sample1.cpd.ibm.com",
                          "sample2.cpd.ibm.com",
                          "sample3.cpd.ibm.com"
                        ]
                      }
                    ]
                  },
                  "pvcSelector": {
                    "matchLabels": {
                      "any-pvc-label": "value"
                    }
                  },
                  "replicationState": "primary",
                  "s3Profiles": [
                    "s3-profile-of-east",
                    "s3-profile-of-west"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:49:42Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-dr-system
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DRClusterConfig
            name: drclusterconfigs.ramendr.openshift.io
            version: v1alpha1
          - kind: MaintenanceMode
            name: maintenancemodes.ramendr.openshift.io
            version: v1alpha1
          - kind: ProtectedVolumeReplicationGroupList
            name: protectedvolumereplicationgrouplists.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupDestination
            name: replicationgroupdestinations.ramendr.openshift.io
            version: v1alpha1
          - kind: ReplicationGroupSource
            name: replicationgroupsources.ramendr.openshift.io
            version: v1alpha1
          - description: VolumeReplicationGroup is the Schema for the volumereplicationgroups
              API
            displayName: Volume Replication Group
            kind: VolumeReplicationGroup
            name: volumereplicationgroups.ramendr.openshift.io
            version: v1alpha1
        description: OpenShift DR Cluster is a disaster-recovery orchestrator for
          stateful applications, that operates from an Advanced Cluster Management
          (ACM) managed cluster and is controlled by Openshift DR Hub operator to
          orchestrate the life-cycle of an application, and its state on the managed
          cluster.
        displayName: Openshift DR Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Storage
        - Integration & Delivery
        - OpenShift Optional
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/ramen
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-cluster-operator-bundle@sha256:f6047276c48b66bd6e2d34eb38e5f7278963e98355ae1a131f1eb3df7827c7d2
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 4.20.4-rhodf
      entries:
      - name: odr-cluster-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odr-cluster-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odr-cluster-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odr-cluster-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odr-cluster-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odr-cluster-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: JFrog
      provider-url: ""
    name: openshiftartifactoryha-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: artifactory-ha-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.helm.k8s.io/v1",
                "kind": "OpenshiftArtifactoryHa",
                "metadata": {
                  "name": "openshiftartifactoryha"
                },
                "spec": {
                  "artifactory-ha": {
                    "artifactory": {
                      "joinKey": "OVERRIDE",
                      "masterKey": "OVERRIDE",
                      "node": {
                        "replicaCount": 2,
                        "waitForPrimaryStartup": {
                          "enabled": false
                        }
                      }
                    },
                    "databaseUpgradeReady": true,
                    "database": {
                      "driver": "OVERRIDE",
                      "password": "OVERRIDE",
                      "type": "OVERRIDE",
                      "url": "OVERRIDE",
                      "user": "OVERRIDE"
                    },
                    "nginx": {
                      "http": {
                        "externalPort": 80,
                        "internalPort": 8080
                      },
                      "https": {
                        "externalPort": 443,
                        "internalPort": 8443
                      },
                      "service": {
                        "ssloffload": false
                      },
                      "tlsSecretName": "OVERRIDE"
                    },
                    "postgresql": {
                      "enabled": false
                    },
                    "waitForDatabase": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools,Integration & Delivery
          certified: "true"
          containerImage: registry.connect.redhat.com/jfrog/artifactory-operator@sha256:de69bb16052d5ac6fed9882eb65d49446b6fa1cc5ba830dd2a39e882712b1347
          createdAt: 2024-03-23 00:00:00+00:00
          description: JFrog Artifactory Enterprise deploys Artifactory in a high
            availability environment across multiple pods
          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"
          operators.openshift.io/valid-subscription: Not required
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/jfrog/JFrog-Cloud-Installers/tree/openshift4/Openshift4
          support: JFrog
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents Artifactory HA Instances
            displayName: Artifactory HA
            kind: OpenshiftArtifactoryHa
            name: openshiftartifactoryhas.charts.helm.k8s.io
            version: v1
        description: |2+
           ## Breaking change
          Please update to version 1.1.10 of the operator.
          Version 1.1.8 and 1.1.9 have issues. Please skip these versions.
          If you are using operator version < 1.2.0 there is a issue with upgrade where artifactory version is not updated if you update operator version. As workaround you can update the Custom Resource OpenshiftArtifactoryHa which has hardcored image value.After upgrading to version 1.2.0 you can remove the below parameters from your CR so that future upgrade works without workaround. ``` artifactory-ha.artifactory.image.registry artifactory-ha.artifactory.image.repository artifactory-ha.artifactory.image.tag ```
          ## Overview
          Openshift Operator to deploy JFrog Artifactory Enterprise into your Openshift cluster.
          ## Security Context Constraints
          To deploy this helm chart you will need to be a cluster admin w/ access to the anyuid scc and add the operator service account to the anyuid scc.
          ```
          oc adm policy add-scc-to-user anyuid -z artifactory-ha-operator -n openshift-operators
          ```
          Add the service account for the Artifactory chart to deploy successfully:
          ``` oc adm policy add-scc-to-user anyuid -z openshiftartifactoryha-artifactory-ha -n artifactory ```
          ### Usage

          An external DB is required. The operator will not deploy a DB but will require you to specify the configuration values to connect to it.

          Search for JFrog and click JFrog Artifactory Enterprise Operator to install.

          Go to the Installed Operators.

          Wait for the JFrog Artifactory Enterprise Operator to complete the installation.

          Open the Operator and click on the provided API: Artifactory HA.

          Click Create New Instance and provide the following parameters for your DB configuration:

          ```
          DATABASE_TYPE
          DATABASE_DRIVER
          DATABASE_URL
          DATABASE_USER
          DATABASE_PASSWORD
          ```
          Master key and Join key must be supplied. To generate a new key for each run the command below:

          ```
          # Create a key
          export JOIN_KEY=$(openssl rand -hex 32)
          echo ${JOIN_KEY}
          ```

          To use TLS you will need to first create a k8s tls secret to store your .crt and .key file into.
          Then supply the value of this k8s secret into the TLS_SECRET field.
          ``` oc create secret tls my_tls_secret --cert=tls.crt --key=tls.key --namespace=my_namespace ```
          Click Create for Artifactory Enterprise to deploy into OpenShift and connect to it on the external IP exposed by the load balancer.
          ### Create a route
          To expose Artifactory from Openshift we recommend you create a new route in Openshift.
          You can either use the oc command line tool or the Openshift web console to generate a new route.
          Depending upon where you terminate TLS you will need to either specify pass through or edge.
          Command Line (Edge):
          ``` oc create route edge --service=openshiftartifactory-ha --cert=tls.crt --key=tls.key --ca-cert=ca.crt --hostname=www.example.com ```
          Or for more information visit the official Openshift documentation on routes here:
          https://docs.openshift.com/container-platform/4.6/networking/routes/route-configuration.html

        displayName: JFrog Artifactory Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - CI/CD
        - Developers
        - Software
        - Productivity
        - Artifact Repository
        - Repository Manager
        - Docker
        - Maven
        - Git
        - Helm
        - npm
        - go
        - golang
        - kubernetes
        - k8s
        - rpm
        - yum
        links:
        - name: JFrog
          url: https://www.jfrog.com
        - name: JFrog Artifact Repository
          url: https://jfrog.com/artifactory/
        - name: Artifactory Video
          url: https://www.youtube.com/watch?v=r2_A5CPo43U
        maintainers:
        - email: partner-support@jfrog.com
          name: JFrog
        maturity: alpha
        provider:
          name: JFrog
        relatedImages:
        - registry.connect.redhat.com/jfrog/artifactory-operator@sha256:de69bb16052d5ac6fed9882eb65d49446b6fa1cc5ba830dd2a39e882712b1347
        - registry.connect.redhat.com/jfrog/artifactory-pro@sha256:0986ca71419ae628892db11e7ca7da5ac1c60219c144ce9aeb2de6e683a45262
        - registry.redhat.io/rhel8/nginx-120@sha256:87f658744af695273c434fac8246b716728b691a17d5d0c5b89247362e61e45c
        - registry.connect.redhat.com/jfrog/artifactory-operator-bundle@sha256:d7bd0e90aff6e8fc9fbc4119e5f1ec89eba93487b84356e3af95208c1250fe44
        version: 1.3.3
      entries:
      - name: artifactory-ha-operator.v1.3.3
        version: 1.3.3
      name: alpha
    - currentCSV: artifactory-ha-operator.v1.1.18
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.helm.k8s.io/v1",
                "kind": "OpenshiftArtifactoryHa",
                "metadata": {
                  "name": "openshiftartifactoryha"
                },
                "spec": {
                  "artifactory-ha": {
                    "artifactory": {
                      "image": {
                        "registry": "registry.connect.redhat.com",
                        "repository": "jfrog/artifactory-pro",
                        "tag": "7.27.3-1"
                      },
                      "joinKey": "OVERRIDE",
                      "masterKey": "OVERRIDE",
                      "uid": "1000721030",
                      "node": {
                        "replicaCount": 2,
                        "waitForPrimaryStartup": {
                          "enabled": false
                        }
                      }
                    },
                    "databaseUpgradeReady": true,
                    "database": {
                      "driver": "OVERRIDE",
                      "password": "OVERRIDE",
                      "type": "OVERRIDE",
                      "url": "OVERRIDE",
                      "user": "OVERRIDE"
                    },
                    "initContainerImage": "registry.connect.redhat.com/jfrog/init@sha256:164b41720a37f75c6129c8a28d05cc56f821022313d44ff918cce4a2146d93e8",
                    "nginx": {
                      "uid": "1000720104",
                      "gid": "1000720107",
                      "http": {
                        "externalPort": 80,
                        "internalPort": 8080
                      },
                      "https": {
                        "externalPort": 443,
                        "internalPort": 8443
                      },
                      "image": {
                        "registry": "registry.redhat.io",
                        "repository": "rhel8/nginx-116",
                        "tag": "latest"
                      },
                      "service": {
                        "ssloffload": false
                      },
                      "tlsSecretName": "OVERRIDE"
                    },
                    "postgresql": {
                      "enabled": false
                    },
                    "waitForDatabase": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools,Integration & Delivery
          certified: "true"
          containerImage: registry.connect.redhat.com/jfrog/artifactory-operator@sha256:e292553e1b6e792ff19276c7f6565d7ed61dd95289eb176066329954bc93e371
          createdAt: 2020-03-25 00:00:00+00:00
          description: JFrog Artifactory Enterprise deploys Artifactory in a high
            availability environment across multiple pods
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/jfrog/JFrog-Cloud-Installers/tree/openshift4/Openshift4
          support: JFrog
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents Artifactory HA Instances
            displayName: Artifactory HA
            kind: OpenshiftArtifactoryHa
            name: openshiftartifactoryhas.charts.helm.k8s.io
            version: v1
        description: |2+
           ## Breaking change
          Please update to version 1.1.10 of the operator.
          Version 1.1.8 and 1.1.9 have issues. Please skip these versions.

          ## Overview
          Openshift Operator to deploy JFrog Artifactory Enterprise into your Openshift cluster.
          ## Security Context Constraints
          To deploy this helm chart you will need to be a cluster admin w/ access to the anyuid scc and add the operator service account to the anyuid scc.
          ```
          oc adm policy add-scc-to-user anyuid -z artifactory-ha-operator -n openshift-operators
          ```
          Add the service account for the Artifactory chart to deploy successfully:
          ``` oc adm policy add-scc-to-user anyuid -z openshiftartifactoryha-artifactory-ha -n artifactory ```
          ### Usage

          An external DB is required. The operator will not deploy a DB but will require you to specify the configuration values to connect to it.

          Search for JFrog and click JFrog Artifactory Enterprise Operator to install.

          Go to the Installed Operators.

          Wait for the JFrog Artifactory Enterprise Operator to complete the installation.

          Open the Operator and click on the provided API: Artifactory HA.

          Click Create New Instance and provide the following parameters for your DB configuration:

          ```
          DATABASE_TYPE
          DATABASE_DRIVER
          DATABASE_URL
          DATABASE_USER
          DATABASE_PASSWORD
          ```
          Master key and Join key must be supplied. To generate a new key for each run the command below:

          ```
          # Create a key
          export JOIN_KEY=$(openssl rand -hex 32)
          echo ${JOIN_KEY}
          ```

          To use TLS you will need to first create a k8s tls secret to store your .crt and .key file into.
          Then supply the value of this k8s secret into the TLS_SECRET field.
          ``` oc create secret tls my_tls_secret --cert=tls.crt --key=tls.key --namespace=my_namespace ```
          Click Create for Artifactory Enterprise to deploy into OpenShift and connect to it on the external IP exposed by the load balancer.
          ### Create a route
          To expose Artifactory from Openshift we recommend you create a new route in Openshift.
          You can either use the oc command line tool or the Openshift web console to generate a new route.
          Depending upon where you terminate TLS you will need to either specify pass through or edge.
          Command Line (Edge):
          ``` oc create route edge --service=openshiftartifactory-ha --cert=tls.crt --key=tls.key --ca-cert=ca.crt --hostname=www.example.com ```
          Or for more information visit the official Openshift documentation on routes here:
          https://docs.openshift.com/container-platform/4.6/networking/routes/route-configuration.html

        displayName: JFrog Artifactory Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - CI/CD
        - Developers
        - Software
        - Productivity
        - Artifact Repository
        - Repository Manager
        - Docker
        - Maven
        - Git
        - Helm
        - npm
        - go
        - golang
        - kubernetes
        - k8s
        - rpm
        - yum
        links:
        - name: JFrog
          url: https://www.jfrog.com
        - name: JFrog Artifact Repository
          url: https://jfrog.com/artifactory/
        - name: Artifactory Video
          url: https://www.youtube.com/watch?v=r2_A5CPo43U
        maintainers:
        - email: partner-support@jfrog.com
          name: JFrog
        maturity: stable
        provider:
          name: JFrog
        relatedImages:
        - registry.connect.redhat.com/jfrog/init@sha256:164b41720a37f75c6129c8a28d05cc56f821022313d44ff918cce4a2146d93e8
        - registry.redhat.io/rhel8/nginx-116@sha256:d71d368d6094a5777000a8d99164959ccb97fca355e855e24bd92c13a8df04f6
        - registry.connect.redhat.com/jfrog/artifactory-operator-bundle@sha256:fc374491270b9566b0a5c80f3dd665b2227b1e8fb224eada7e5c98c82926ae08
        - registry.connect.redhat.com/jfrog/artifactory-operator@sha256:e292553e1b6e792ff19276c7f6565d7ed61dd95289eb176066329954bc93e371
        - registry.connect.redhat.com/jfrog/artifactory-pro@sha256:7289dde95d1e4d8e161a28cffd9c4a0cc96f92f7536d069ab63ec304a92254fd
        version: 1.1.18
      entries:
      - name: artifactory-ha-operator.v1.1.18
        version: 1.1.18
      name: stable
    defaultChannel: alpha
    packageName: openshiftartifactoryha-operator
    provider:
      name: JFrog
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: service-registry-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: service-registry-operator.v2.0.7-0.1662549961.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-kafkasql"
                },
                "spec": {
                  "configuration": {
                    "kafkasql": {
                      "bootstrapServers": "\u003cservice name\u003e.\u003cnamespace\u003e.svc:9092"
                    },
                    "persistence": "kafkasql"
                  }
                }
              },
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-sql"
                },
                "spec": {
                  "configuration": {
                    "persistence": "sql",
                    "sql": {
                      "dataSource": {
                        "password": "\u003cpassword\u003e",
                        "url": "jdbc:postgresql://\u003cservice name\u003e.\u003cnamespace\u003e.svc:5432/\u003cdatabase name\u003e",
                        "userName": "postgres"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/integration/service-registry-rhel8-operator@sha256:6dfd539951a739ec06fb6620b79c42c6159d4ee148c0d9d336547e786cd4780c
          createdAt: "2022-06-24"
          description: Deploy and manage Red Hat Integration service registry on OpenShift.
          olm.substitutesFor: service-registry-operator.v2.0.7-0.1661784420.p
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: https://github.com/Apicurio/apicurio-registry-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry represents a Red Hat Integration Service
              Registry instance
            displayName: Apicurio Registry
            kind: ApicurioRegistry
            name: apicurioregistries.registry.apicur.io
            version: v1
        description: |
          ## Service Registry
          Service Registry stores and retrieves API designs and event schemas, and gives you control of their evolution.
          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf - Provides a REST API and web UI to manage the artifacts and artifact meta-data - Includes Serializers and Deserializers for Kafka client integration - Configurable rules to control schema validity and evolution (compatibility) - Storage options: Kafka, PostgreSQL - Compatible with Confluent and IBM APIs - Runs on a lightweight Quarkus platform - Includes Maven plugin to integrate with Maven based builds
          ## Service Registry Operator
          Provides a quick and easy way to deploy and manage service registry on OpenShift.
          **Features**
          - Supports installation and configuration of the Registry for all storage options - Easily perform a rolling upgrade of the Registry
          ## Prerequisites
          This operator does not deploy storage for the Registry. Therefore, some storage options require that the chosen persistence service is already set up.
          ## License
          Red Hat Service Registry Operator is licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - Service Registry Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - service
        - service-registry
        links:
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        - name: Twitter
          url: https://twitter.com/Apicurio
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        - email: jsenko+apicurio@redhat.com
          name: Jakub Senko
        - email: ewittman+apicurio@redhat.com
          name: Eric Wittmann
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/integration/service-registry-kafkasql-rhel8@sha256:fc97a2a08b2f77d620ea86ec77bb4f750bfc0109ede3ad1080c2cb694019f8b8
        - registry.redhat.io/integration/service-registry-rhel8-operator-metadata@sha256:a2f0513cd8b96d71855464384cad7f1cd8c39f8d445be1ff1c1b91f22008d16d
        - registry.redhat.io/integration/service-registry-rhel8-operator@sha256:6dfd539951a739ec06fb6620b79c42c6159d4ee148c0d9d336547e786cd4780c
        - registry.redhat.io/integration/service-registry-sql-rhel8@sha256:6c97fa8ead1f6f0323811f8f35a80ae33f0e160f6c58f2bdb31713dbeaa3f014
        version: 2.0.7+0.1662549961.p
      entries:
      - name: service-registry-operator.v2.0.7-0.1662549961.p
        version: 2.0.7+0.1662549961.p
      - name: service-registry-operator.v2.0.7-0.1661784420.p
        version: 2.0.7+0.1661784420.p
      - name: service-registry-operator.v2.0.7
        version: 2.0.7
      - name: service-registry-operator.v2.0.6
        version: 2.0.6
      - name: service-registry-operator.v2.0.5-0.1654503709.p
        version: 2.0.5+0.1654503709.p
      - name: service-registry-operator.v2.0.5-0.1652887585.p
        version: 2.0.5+0.1652887585.p
      - name: service-registry-operator.v2.0.5-0.1646309885.p
        version: 2.0.5+0.1646309885.p
      - name: service-registry-operator.v2.0.5-0.1647938417.p
        version: 2.0.5+0.1647938417.p
      - name: service-registry-operator.v2.0.5-0.1648813064.p
        version: 2.0.5+0.1648813064.p
      - name: service-registry-operator.v2.0.5-0.1651047781.p
        version: 2.0.5+0.1651047781.p
      - name: service-registry-operator.v2.0.5-0.1652429755.p
        version: 2.0.5+0.1652429755.p
      - name: service-registry-operator.v2.0.5
        version: 2.0.5
      - name: service-registry-operator.v2.0.5-0.1655396591.p
        version: 2.0.5+0.1655396591.p
      - name: service-registry-operator.v2.0.4
        version: 2.0.4
      - name: service-registry-operator.v2.0.3
        version: 2.0.3
      - name: service-registry-operator.v2.0.2
        version: 2.0.2
      - name: service-registry-operator.v2.0.1
        version: 2.0.1
      - name: service-registry-operator.v2.0.0
        version: 2.0.0
      name: 2.0.x
    - currentCSV: service-registry-operator.v2.6.13-r2-0.1765811602.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-kafkasql"
                },
                "spec": {
                  "configuration": {
                    "kafkasql": {
                      "bootstrapServers": "\u003cservice name\u003e.\u003cnamespace\u003e.svc:9092"
                    },
                    "persistence": "kafkasql"
                  }
                }
              },
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-sql"
                },
                "spec": {
                  "configuration": {
                    "persistence": "sql",
                    "sql": {
                      "dataSource": {
                        "password": "\u003cpassword\u003e",
                        "url": "jdbc:postgresql://\u003cservice name\u003e.\u003cnamespace\u003e.svc:5432/\u003cdatabase name\u003e",
                        "userName": "postgres"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/apicurio/apicurio-registry-rhel8-operator@sha256:61f00395b51819312dda7abcdaa47190a11a83b1e2b523101be0ba776b1c5b7c
          createdAt: "2025-09-15"
          description: Deploy and manage Red Hat build of Apicurio Registry on OpenShift.
          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: "true"
          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.substitutesFor: service-registry-operator.v2.6.13-r2-0.1763986602.p
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations",
            "Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Apicurio/apicurio-registry-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry represents a Red Hat build of Apicurio Registry
              instance
            displayName: Apicurio Registry
            kind: ApicurioRegistry
            name: apicurioregistries.registry.apicur.io
            version: v1
        description: |
          ## Red Hat build of Apicurio Registry

          Red Hat build of Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Provides a REST API and web UI to manage the artifacts and artifact meta-data
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL
          - Compatible with Confluent and IBM APIs
          - Runs on a lightweight Quarkus platform
          - Includes Maven plugin to integrate with Maven based builds

          ## Red Hat build of Apicurio Registry Operator

          Provides a quick and easy way to deploy and manage Red Hat build of Apicurio Registry on OpenShift.

          **Features**
          - Supports installation and configuration of the Registry for all storage options
          - Easily perform a rolling upgrade of Red Hat build of Apicurio Registry

          ## Prerequisites

          This operator does not deploy storage for Red Hat build of Apicurio Registry. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Red Hat build of Apicurio Registry Operator is licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry-operator/blob/main/LICENSE)
        displayName: Red Hat build of Apicurio Registry
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - service
        - service-registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        - name: Twitter
          url: https://twitter.com/Apicurio
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        - email: jsenko+apicurio@redhat.com
          name: Jakub Senko
        - email: ewittman+apicurio@redhat.com
          name: Eric Wittmann
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/apicurio/apicurio-registry-operator-bundle@sha256:807f6c8f10a0f14789605e0dc64506e7aad7cce7789446da5079a49e79b8721e
        - registry.redhat.io/apicurio/apicurio-registry-rhel8-operator@sha256:61f00395b51819312dda7abcdaa47190a11a83b1e2b523101be0ba776b1c5b7c
        - registry.redhat.io/apicurio/apicurio-registry-sql-rhel8@sha256:0e5b7ed0d9c2aa07896f4d1f12c6ce6937f31a72f8d496b95c9c151121f46758
        - registry.redhat.io/apicurio/apicurio-registry-kafkasql-rhel8@sha256:f8f826084f842293de019ccc9ad0268e4ec0957e0db8fec58b069be2d6fa7cfe
        version: 2.6.13-r2+0.1765811602.p
      entries:
      - name: service-registry-operator.v2.6.13-r2-0.1763986602.p
        version: 2.6.13-r2+0.1763986602.p
      - name: service-registry-operator.v2.6.13-r2-0.1761835940.p
        version: 2.6.13-r2+0.1761835940.p
      - name: service-registry-operator.v2.6.13-r2-0.1765811602.p
        version: 2.6.13-r2+0.1765811602.p
      - name: service-registry-operator.v2.6.13-r2
        version: 2.6.13-r2
      - name: service-registry-operator.v2.6.13-r1
        version: 2.6.13-r1
      - name: service-registry-operator.v2.6.12-r1
        version: 2.6.12-r1
      - name: service-registry-operator.v2.6.11-r1
        version: 2.6.11-r1
      - name: service-registry-operator.v2.6.10
        version: 2.6.10
      - name: service-registry-operator.v2.6.9
        version: 2.6.9
      - name: service-registry-operator.v2.6.8-0.1739457262.p
        version: 2.6.8+0.1739457262.p
      - name: service-registry-operator.v2.6.8
        version: 2.6.8
      - name: service-registry-operator.v2.6.8-0.1740477005.p
        version: 2.6.8+0.1740477005.p
      - name: service-registry-operator.v2.6.6
        version: 2.6.6
      - name: service-registry-operator.v2.6.6-0.1736942038.p
        version: 2.6.6+0.1736942038.p
      - name: service-registry-operator.v2.6.5-0.1731946870.p
        version: 2.6.5+0.1731946870.p
      - name: service-registry-operator.v2.6.5
        version: 2.6.5
      - name: service-registry-operator.v2.6.5-0.1729511936.p
        version: 2.6.5+0.1729511936.p
      - name: service-registry-operator.v2.6.5-0.1730982111.p
        version: 2.6.5+0.1730982111.p
      - name: service-registry-operator.v2.6.3
        version: 2.6.3
      - name: service-registry-operator.v2.6.1
        version: 2.6.1
      - name: service-registry-operator.v2.6.1-0.1724927626.p
        version: 2.6.1+0.1724927626.p
      - name: service-registry-operator.v2.3.5
        version: 2.3.5
      - name: service-registry-operator.v2.3.4-0.1716987426.p
        version: 2.3.4+0.1716987426.p
      - name: service-registry-operator.v2.3.4
        version: 2.3.4
      - name: service-registry-operator.v2.3.3
        version: 2.3.3
      - name: service-registry-operator.v2.3.2
        version: 2.3.2
      - name: service-registry-operator.v2.3.1-0.1706181988.p
        version: 2.3.1+0.1706181988.p
      - name: service-registry-operator.v2.3.1
        version: 2.3.1
      - name: service-registry-operator.v2.3.0
        version: 2.3.0
      - name: service-registry-operator.v2.2.3
        version: 2.2.3
      - name: service-registry-operator.v2.2.3-0.1698369839.p
        version: 2.2.3+0.1698369839.p
      - name: service-registry-operator.v2.2.2-0.1697116886.p
        version: 2.2.2+0.1697116886.p
      - name: service-registry-operator.v2.2.2
        version: 2.2.2
      - name: service-registry-operator.v2.2.1
        version: 2.2.1
      - name: service-registry-operator.v2.2.0
        version: 2.2.0
      - name: service-registry-operator.v2.1.5
        version: 2.1.5
      - name: service-registry-operator.v2.1.4
        version: 2.1.4
      - name: service-registry-operator.v2.1.3
        version: 2.1.3
      - name: service-registry-operator.v2.1.2-0.1676389596.p
        version: 2.1.2+0.1676389596.p
      - name: service-registry-operator.v2.1.2
        version: 2.1.2
      - name: service-registry-operator.v2.1.1
        version: 2.1.1
      - name: service-registry-operator.v2.1.0
        version: 2.1.0
      - name: service-registry-operator.v2.0.7-0.1661784420.p
        version: 2.0.7+0.1661784420.p
      - name: service-registry-operator.v2.0.7-0.1662549961.p
        version: 2.0.7+0.1662549961.p
      - name: service-registry-operator.v2.0.7
        version: 2.0.7
      - name: service-registry-operator.v2.0.6
        version: 2.0.6
      - name: service-registry-operator.v2.0.5-0.1651047781.p
        version: 2.0.5+0.1651047781.p
      - name: service-registry-operator.v2.0.5-0.1647938417.p
        version: 2.0.5+0.1647938417.p
      - name: service-registry-operator.v2.0.5-0.1654503709.p
        version: 2.0.5+0.1654503709.p
      - name: service-registry-operator.v2.0.5-0.1652887585.p
        version: 2.0.5+0.1652887585.p
      - name: service-registry-operator.v2.0.5-0.1652429755.p
        version: 2.0.5+0.1652429755.p
      - name: service-registry-operator.v2.0.5
        version: 2.0.5
      - name: service-registry-operator.v2.0.5-0.1648813064.p
        version: 2.0.5+0.1648813064.p
      - name: service-registry-operator.v2.0.5-0.1655396591.p
        version: 2.0.5+0.1655396591.p
      - name: service-registry-operator.v2.0.5-0.1646309885.p
        version: 2.0.5+0.1646309885.p
      - name: service-registry-operator.v2.0.4
        version: 2.0.4
      - name: service-registry-operator.v2.0.3
        version: 2.0.3
      - name: service-registry-operator.v2.0.2
        version: 2.0.2
      - name: service-registry-operator.v2.0.1
        version: 2.0.1
      - name: service-registry-operator.v2.0.0
        version: 2.0.0
      name: 2.x
    defaultChannel: 2.x
    packageName: service-registry-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: rook-ceph-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rook-ceph-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephCluster",
                "metadata": {
                  "name": "my-rook-ceph",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "cephVersion": {
                    "image": "registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92"
                  },
                  "dataDirHostPath": "/var/lib/rook",
                  "mon": {
                    "count": 3
                  },
                  "dashboard": {
                    "enabled": true
                  },
                  "network": {
                    "hostNetwork": false
                  },
                  "rbdMirroring": {
                    "workers": 0
                  },
                  "storage": {
                    "useAllNodes": true,
                    "useAllDevices": true
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephBlockPool",
                "metadata": {
                  "name": "replicapool",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "failureDomain": "host",
                  "replicated": {
                    "size": 3
                  },
                  "annotations": null
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStore",
                "metadata": {
                  "name": "my-store",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "metadataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "dataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "gateway": {
                    "type": "s3",
                    "sslCertificateRef": null,
                    "port": 8080,
                    "securePort": null,
                    "instances": 1,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStoreUser",
                "metadata": {
                  "name": "my-user",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "store": "my-store",
                  "displayName": "my display name"
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephNFS",
                "metadata": {
                  "name": "my-nfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "rados": {
                    "pool": "myfs-data0",
                    "namespace": "nfs-ns"
                  },
                  "server": {
                    "active": 3,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephClient",
                "metadata": {
                  "name": "cinder",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "caps": {
                    "mon": "profile rbd",
                    "osd": "profile rbd pool=volumes, profile rbd pool=vms, profile rbd-read-only pool=images"
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephFilesystem",
                "metadata": {
                  "name": "myfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "dataPools": [
                    {
                      "compressionMode": "",
                      "crushRoot": "",
                      "deviceClass": "",
                      "erasureCoded": {
                        "algorithm": "",
                        "codingChunks": 0,
                        "dataChunks": 0
                      },
                      "failureDomain": "host",
                      "replicated": {
                        "requireSafeReplicaSize": false,
                        "size": 1,
                        "targetSizeRatio": 0.5
                      }
                    }
                  ],
                  "metadataPool": {
                    "compressionMode": "",
                    "crushRoot": "",
                    "deviceClass": "",
                    "erasureCoded": {
                      "algorithm": "",
                      "codingChunks": 0,
                      "dataChunks": 0
                    },
                    "failureDomain": "",
                    "replicated": {
                      "requireSafeReplicaSize": false,
                      "size": 1,
                      "targetSizeRatio": 0
                    }
                  },
                  "metadataServer": {
                    "activeCount": 1,
                    "activeStandby": true,
                    "placement": {},
                    "resources": {}
                  },
                  "preservePoolsOnDelete": false,
                  "preserveFilesystemOnDelete": false
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephRBDMirror",
                "metadata": {
                  "name": "my-rbd-mirror",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "annotations": null,
                  "count": 1,
                  "placement": {
                    "topologyKey": "kubernetes.io/hostname"
                  },
                  "resources": null
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:3538d484f80837f2164f15bcd1edb75fbcb73d72cbd94cd74c87f99da035fd84
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/red-hat-storage/rook
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Ceph cluster.
            displayName: Ceph Cluster
            kind: CephCluster
            name: cephclusters.ceph.rook.io
            version: v1
          - description: Represents a Ceph Block Pool.
            displayName: Ceph Block Pool
            kind: CephBlockPool
            name: cephblockpools.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store.
            displayName: Ceph Object Store
            kind: CephObjectStore
            name: cephobjectstores.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store User.
            displayName: Ceph Object Store User
            kind: CephObjectStoreUser
            name: cephobjectstoreusers.ceph.rook.io
            version: v1
          - description: Represents a cluster of Ceph NFS ganesha gateways.
            displayName: Ceph NFS
            kind: CephNFS
            name: cephnfses.ceph.rook.io
            version: v1
          - description: Represents a Ceph User.
            displayName: Ceph Client
            kind: CephClient
            name: cephclients.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem.
            displayName: Ceph Filesystem
            kind: CephFilesystem
            name: cephfilesystems.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem Mirror.
            displayName: Ceph Filesystem Mirror
            kind: CephFilesystemMirror
            name: cephfilesystemmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph RBD Mirror.
            displayName: Ceph RBD Mirror
            kind: CephRBDMirror
            name: cephrbdmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Realm.
            displayName: Ceph Object Store Realm
            kind: CephObjectRealm
            name: cephobjectrealms.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone Group.
            displayName: Ceph Object Store Zone Group
            kind: CephObjectZoneGroup
            name: cephobjectzonegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone.
            displayName: Ceph Object Store Zone
            kind: CephObjectZone
            name: cephobjectzones.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Notification.
            displayName: Ceph Bucket Notification
            kind: CephBucketNotification
            name: cephbucketnotifications.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Topic.
            displayName: Ceph Bucket Topic
            kind: CephBucketTopic
            name: cephbuckettopics.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem SubVolumeGroup.
            displayName: Ceph Filesystem SubVolumeGroup
            kind: CephFilesystemSubVolumeGroup
            name: cephfilesystemsubvolumegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph BlockPool Rados Namespace.
            displayName: Ceph BlockPool Rados Namespace
            kind: CephBlockPoolRadosNamespace
            name: cephblockpoolradosnamespaces.ceph.rook.io
            version: v1
          - description: Represents a Ceph COSI Driver.
            displayName: Ceph COSI Driver
            kind: CephCOSIDriver
            name: cephcosidrivers.ceph.rook.io
            version: v1
        description: |2

          The Rook-Ceph storage operator packages, deploys, manages, upgrades and scales Ceph storage for providing persistent storage to infrastructure services (Logging, Metrics, Registry) as well as stateful applications in Kubernetes clusters.

          ## Rook-Ceph Storage Operator

          Rook runs as a cloud-native service in Kubernetes clusters for optimal integration with applications in need of storage, and handles the heavy-lifting behind the scenes such as provisioning and management.
          Rook orchestrates battle-tested open-source storage technology Ceph, which has years of production deployments and runs some of the worlds largest clusters.

          Ceph is a massively scalable, software-defined, cloud native storage platform that offers block, file and object storage services.
          Ceph can be used to back a wide variety of applications including relational databases, NoSQL databases, CI/CD tool-sets, messaging, AI/ML and analytics applications.
          Ceph is a proven storage platform that backs some of the world's largest storage deployments and has a large vibrant open source community backing the project.

          ## Supported features
          * **High Availability and resiliency** - Ceph has no single point of failures (SPOF) and all its components work natively in a highly available fashion
          * **Data Protection** - Ceph periodically scrub for inconsistent objects and repair them if necessary, making sure your replicas are always coherent
          * **Consistent storage platform across hybrid cloud** - Ceph can be deployed anywhere (on-premise or bare metal) and thus offers a similar experience regardless
          * **Block, File & Object storage service** - Ceph can expose your data through several storage interfaces, solving all the application use cases
          * **Scale up/down** - addition and removal of storage is fully covered by the operator.
          * **Dashboard** - The Operator deploys a dashboard for monitoring and introspecting your cluster.

          ## Before you start
          https://rook.io/docs/rook/v1.0/k8s-pre-reqs.html
        displayName: Rook-Ceph
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - rook
        - ceph
        - storage
        - object storage
        - open source
        - block storage
        - shared filesystem
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/rook
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:3101db7b7f493e476ffe2c91083792ded3e2030d431c3be7d7176ad7df185324
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:3538d484f80837f2164f15bcd1edb75fbcb73d72cbd94cd74c87f99da035fd84
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        version: 4.19.9-rhodf
      entries:
      - name: rook-ceph-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: rook-ceph-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: rook-ceph-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: rook-ceph-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: rook-ceph-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: rook-ceph-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: rook-ceph-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: rook-ceph-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: rook-ceph-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: rook-ceph-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: rook-ceph-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephCluster",
                "metadata": {
                  "name": "my-rook-ceph",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "cephVersion": {
                    "image": "registry.redhat.io/rhceph/rhceph-8-rhel9@sha256:18dcebef13476420597458155ce97d12ab426a5a014e7fd816f7a531d5ee4b92"
                  },
                  "dataDirHostPath": "/var/lib/rook",
                  "mon": {
                    "count": 3
                  },
                  "dashboard": {
                    "enabled": true
                  },
                  "network": {
                    "hostNetwork": false
                  },
                  "rbdMirroring": {
                    "workers": 0
                  },
                  "storage": {
                    "useAllNodes": true,
                    "useAllDevices": true
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephBlockPool",
                "metadata": {
                  "name": "replicapool",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "failureDomain": "host",
                  "replicated": {
                    "size": 3
                  },
                  "annotations": null
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStore",
                "metadata": {
                  "name": "my-store",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "metadataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "dataPool": {
                    "failureDomain": "host",
                    "replicated": {
                      "size": 3
                    }
                  },
                  "gateway": {
                    "type": "s3",
                    "sslCertificateRef": null,
                    "port": 8080,
                    "securePort": null,
                    "instances": 1,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephObjectStoreUser",
                "metadata": {
                  "name": "my-user",
                  "namespace": "my-rook-ceph"
                },
                "spec": {
                  "store": "my-store",
                  "displayName": "my display name"
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephNFS",
                "metadata": {
                  "name": "my-nfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "rados": {
                    "pool": "myfs-data0",
                    "namespace": "nfs-ns"
                  },
                  "server": {
                    "active": 3,
                    "placement": null,
                    "annotations": null,
                    "resources": null
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephClient",
                "metadata": {
                  "name": "cinder",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "caps": {
                    "mon": "profile rbd",
                    "osd": "profile rbd pool=volumes, profile rbd pool=vms, profile rbd-read-only pool=images"
                  }
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephFilesystem",
                "metadata": {
                  "name": "myfs",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "dataPools": [
                    {
                      "compressionMode": "",
                      "crushRoot": "",
                      "deviceClass": "",
                      "erasureCoded": {
                        "algorithm": "",
                        "codingChunks": 0,
                        "dataChunks": 0
                      },
                      "failureDomain": "host",
                      "replicated": {
                        "requireSafeReplicaSize": false,
                        "size": 1,
                        "targetSizeRatio": 0.5
                      }
                    }
                  ],
                  "metadataPool": {
                    "compressionMode": "",
                    "crushRoot": "",
                    "deviceClass": "",
                    "erasureCoded": {
                      "algorithm": "",
                      "codingChunks": 0,
                      "dataChunks": 0
                    },
                    "failureDomain": "",
                    "replicated": {
                      "requireSafeReplicaSize": false,
                      "size": 1,
                      "targetSizeRatio": 0
                    }
                  },
                  "metadataServer": {
                    "activeCount": 1,
                    "activeStandby": true,
                    "placement": {},
                    "resources": {}
                  },
                  "preservePoolsOnDelete": false,
                  "preserveFilesystemOnDelete": false
                }
              },
              {
                "apiVersion": "ceph.rook.io/v1",
                "kind": "CephRBDMirror",
                "metadata": {
                  "name": "my-rbd-mirror",
                  "namespace": "rook-ceph"
                },
                "spec": {
                  "annotations": null,
                  "count": 1,
                  "placement": {
                    "topologyKey": "kubernetes.io/hostname"
                  },
                  "resources": null
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/red-hat-storage/rook
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Ceph cluster.
            displayName: Ceph Cluster
            kind: CephCluster
            name: cephclusters.ceph.rook.io
            version: v1
          - description: Represents a Ceph Block Pool.
            displayName: Ceph Block Pool
            kind: CephBlockPool
            name: cephblockpools.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store.
            displayName: Ceph Object Store
            kind: CephObjectStore
            name: cephobjectstores.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store User.
            displayName: Ceph Object Store User
            kind: CephObjectStoreUser
            name: cephobjectstoreusers.ceph.rook.io
            version: v1
          - description: Represents a cluster of Ceph NFS ganesha gateways.
            displayName: Ceph NFS
            kind: CephNFS
            name: cephnfses.ceph.rook.io
            version: v1
          - description: Represents a Ceph User.
            displayName: Ceph Client
            kind: CephClient
            name: cephclients.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem.
            displayName: Ceph Filesystem
            kind: CephFilesystem
            name: cephfilesystems.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem Mirror.
            displayName: Ceph Filesystem Mirror
            kind: CephFilesystemMirror
            name: cephfilesystemmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph RBD Mirror.
            displayName: Ceph RBD Mirror
            kind: CephRBDMirror
            name: cephrbdmirrors.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Realm.
            displayName: Ceph Object Store Realm
            kind: CephObjectRealm
            name: cephobjectrealms.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone Group.
            displayName: Ceph Object Store Zone Group
            kind: CephObjectZoneGroup
            name: cephobjectzonegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph Object Store Zone.
            displayName: Ceph Object Store Zone
            kind: CephObjectZone
            name: cephobjectzones.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Notification.
            displayName: Ceph Bucket Notification
            kind: CephBucketNotification
            name: cephbucketnotifications.ceph.rook.io
            version: v1
          - description: Represents a Ceph Bucket Topic.
            displayName: Ceph Bucket Topic
            kind: CephBucketTopic
            name: cephbuckettopics.ceph.rook.io
            version: v1
          - description: Represents a Ceph Filesystem SubVolumeGroup.
            displayName: Ceph Filesystem SubVolumeGroup
            kind: CephFilesystemSubVolumeGroup
            name: cephfilesystemsubvolumegroups.ceph.rook.io
            version: v1
          - description: Represents a Ceph BlockPool Rados Namespace.
            displayName: Ceph BlockPool Rados Namespace
            kind: CephBlockPoolRadosNamespace
            name: cephblockpoolradosnamespaces.ceph.rook.io
            version: v1
          - description: Represents a Ceph COSI Driver.
            displayName: Ceph COSI Driver
            kind: CephCOSIDriver
            name: cephcosidrivers.ceph.rook.io
            version: v1
        description: |2

          The Rook-Ceph storage operator packages, deploys, manages, upgrades and scales Ceph storage for providing persistent storage to infrastructure services (Logging, Metrics, Registry) as well as stateful applications in Kubernetes clusters.

          ## Rook-Ceph Storage Operator

          Rook runs as a cloud-native service in Kubernetes clusters for optimal integration with applications in need of storage, and handles the heavy-lifting behind the scenes such as provisioning and management.
          Rook orchestrates battle-tested open-source storage technology Ceph, which has years of production deployments and runs some of the worlds largest clusters.

          Ceph is a massively scalable, software-defined, cloud native storage platform that offers block, file and object storage services.
          Ceph can be used to back a wide variety of applications including relational databases, NoSQL databases, CI/CD tool-sets, messaging, AI/ML and analytics applications.
          Ceph is a proven storage platform that backs some of the world's largest storage deployments and has a large vibrant open source community backing the project.

          ## Supported features
          * **High Availability and resiliency** - Ceph has no single point of failures (SPOF) and all its components work natively in a highly available fashion
          * **Data Protection** - Ceph periodically scrub for inconsistent objects and repair them if necessary, making sure your replicas are always coherent
          * **Consistent storage platform across hybrid cloud** - Ceph can be deployed anywhere (on-premise or bare metal) and thus offers a similar experience regardless
          * **Block, File & Object storage service** - Ceph can expose your data through several storage interfaces, solving all the application use cases
          * **Scale up/down** - addition and removal of storage is fully covered by the operator.
          * **Dashboard** - The Operator deploys a dashboard for monitoring and introspecting your cluster.

          ## Before you start
          https://rook.io/docs/rook/v1.0/k8s-pre-reqs.html
        displayName: Rook-Ceph
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - rook
        - ceph
        - storage
        - object storage
        - open source
        - block storage
        - shared filesystem
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/rook
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:7ae5cd1afb0ba1a7e28acb6631b3fe7ec3e23fbba782162baa2df847de61b28e
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/odf4/rook-ceph-operator-bundle@sha256:231965a888729ba42bbac8d844d128e18468e5a21916dcd525d43ef028ccea5f
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        - registry.redhat.io/odf4/rook-ceph-rhel9-operator@sha256:db015e68e490da21f5a57fd2e060c9e5f88b15f80251af22a833ee18e34e9b7b
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        version: 4.20.4-rhodf
      entries:
      - name: rook-ceph-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: rook-ceph-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: rook-ceph-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: rook-ceph-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: rook-ceph-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: rook-ceph-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataDirect Networks
      provider-url: https://www.ddn.com
    name: vmstore-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vmstore-csi-driver-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.tintri.com/v1alpha1",
                "kind": "VmstoreCsi",
                "metadata": {
                  "name": "vmstorecsi-sample"
                },
                "spec": {
                  "config": {
                    "debug": true,
                    "vmstore_map": {
                      "vmstore2": {
                        "dataIp": "\u003cdataIp\u003e",
                        "managementAddress": "\u003cmanagementAddress\u003e",
                        "mountPoint": "/tintri-csi",
                        "password": "tintri99",
                        "username": "admin",
                        "vmstoreFS": "/tintri/csi"
                      }
                    }
                  },
                  "csi_snapshotter": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                    "resources": null,
                    "tag": "v5.0.1",
                    "timeout": "120m"
                  },
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "tintri/vmstore-csi-driver",
                    "tag": "v1.0.1"
                  },
                  "priorityClassName": "system-cluster-critical",
                  "provisioner": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                    "resources": null,
                    "tag": "v4.0.1",
                    "timeout": "120m"
                  },
                  "registrar": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                    "resources": null,
                    "tag": "v2.10.1"
                  },
                  "resizer": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.k8s.io/sig-storage/csi-resizer",
                    "resources": null,
                    "tag": "v1.12.0"
                  },
                  "resources": {
                    "limits": {
                      "cpu": "512m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "64Mi"
                    }
                  },
                  "secretName": "vmstore-csi-file-driver-config",
                  "volumeNamePrefix": "pvc-vmstore"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-07-02T23:11:08Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: VmstoreCsi
            name: vmstorecsis.charts.tintri.com
            version: v1alpha1
        description: "A Container Storage Interface (CSI) Driver for Tintri Vmstore
          filesystems. This operator eases the installation\nand management of the
          Vmstore CSI Driver in an OpenShift or other Operator Lifecycle Manager enabled
          cluster.\n\n\n## Prerequisites\nMake sure that the top level folder where
          the CSI volumes will be created exists on VMStore and is shared over NFS.\nFor
          example `tintri/csi`.\n## Usage\n\n### Dynamically provisioned volumes\n\nFor
          dynamic volume provisioning, the administrator needs to set up a _StorageClass_
          in the PV yaml (examples/nginx-dynamic-volume.yaml for this example) pointing
          to the driver.\nFor dynamically provisioned volumes, Kubernetes generates
          volume name automatically (for example `pvc-vmstore-cfc67950-fe3c-11e8-a3ca-005056b857f8`).\n\n```yaml\napiVersion:
          storage.k8s.io/v1\nkind: StorageClass\nmetadata:\n  name: vmstore-csi-file-driver-sc\nprovisioner:
          vmstore.csi.tintri.com\nallowVolumeExpansion: true\n```\n\n#### Example\n\nRun
          Nginx pod with dynamically provisioned volume:\n\n```bash\noc apply -f examples/nginx-dynamic-volume.yaml\n\n#
          to delete this pod:\noc delete -f examples/nginx-dynamic-volume.yaml\n```\n\n###
          Static (pre-provisioned) volumes\n\nThe driver can use already existing
          Vmstore filesystem,\nin this case, _StorageClass_, _PersistentVolume_ and
          _PersistentVolumeClaim_ should be configured.\n\n#### _StorageClass_ configuration\n\n```yaml\napiVersion:
          storage.k8s.io/v1\nkind: StorageClass\nmetadata:\n  name: vmstore-csi-file-driver-sc-nginx-persistent\nprovisioner:
          vmstore.csi.tintri.com\nallowVolumeExpansion: true\nallowedTopologies:\n-
          matchLabelExpressions:\n  - key: topology.vmstore.csi.tintri.com/zone\n
          \   values:\n    - zone-1\nmountOptions:                         # list
          of options for `mount -o ...` command\n#  - noatime                          #\n```\n\n####
          _PersistentVolume_ configuration\n\n```yaml\napiVersion: v1\nkind: PersistentVolume\nmetadata:\n
          \ name: vmstore-csi-file-driver-pv-nginx-persistent\n  labels:\n    name:
          vmstore-csi-file-driver-pv-nginx-persistent\nspec:\n  storageClassName:
          vmstore-csi-file-driver-sc-nginx-persistent\n  accessModes:\n    - ReadWriteOnce\n
          \ capacity:\n    storage: 1Gi\n  csi:\n    driver: vmstore.csi.tintri.com\n
          \   volumeHandle: vmstore1/172.30.230.128:/tintri/csi/vmstorefs-mnt/persistent/volumefile-persistent.img\n```\n\n####
          _PersistentVolumeClaim_ (pointing to created _PersistentVolume_)\n\n```yaml\napiVersion:
          v1\nkind: PersistentVolumeClaim\nmetadata:\n  name: vmstore-csi-file-driver-pvc-nginx-persistent\nspec:\n
          \ storageClassName: vmstore-csi-file-driver-sc-nginx-persistent\n  accessModes:\n
          \   - ReadWriteOnce\n  resources:\n    requests:\n      storage: 1Gi\n  selector:\n
          \   matchLabels:\n      # to create 1-1 relationship for pod - persistent
          volume use unique labels\n      name: vmstore-csi-file-driver-pv-nginx-persistent\n```\n\n###
          Topology configuration\nIn order to configure CSI driver with kubernetes
          topology, use the `zone` parameter in driver config or storageClass parameters.
          Example config file with zones:\n  ```bash\n  vmstore_map:\n    vmstore1:\n
          \     mountPoint: /tintri-csi                            # mountpoint on
          the host where the tintri fs will be mounted\n      dataIp: 172.30.200.37\n
          \     managementAddress: tafzq23.tintri.com\n      vmstoreFS: /tintri/fs01\n
          \     zone: zone-1\n      username: admin\n      password: password\n\n
          \   vmstore2:\n      mountPoint: /tintri-csi                            #
          mountpoint on the host where the tintri fs will be mounted\n      dataIp:
          10.136.40.71\n      managementAddress: tafbm05.tintri.com\n      vmstoreFS:
          /tintri/csi\n      zone: zone-2\n      username: admin\n      password:
          password\n  ```\n\nThis will assign volumes to be created on Vmstore that
          correspond with the zones requested by allowedTopologies values.\n\n\n###
          Defaults/Configuration/Parameter options\n\n| Default  | Config               |
          \ Parameter    |  Desc                             |\n|----------|----------------------|---------------|-----------------------------------|\n|
          \  -      | dataIp               |   dataIp      | Data address used to
          mount Vmstore filesystem |\n| -    | mountPoint       |    -      | Mount
          point inside of the driver container where Vmstore filesystem will be mounted|\n|
          \  -      | username             |      -        | Vmstore API username
          |\n|   -      | password             |      -        | Vmstore API password
          |\n|   -      | zone                 |      -        | Zone to match topology.vmstore.csi.tintri.com/zone
          \           |\n|   -      | vmstoreFS            |   vmstoreFS   | Path
          to filesystem on Vmstore |\n|   -      | managementAddress    |      -        |
          FQDN for Vmstore management operations |\n|   -      | defaultMountOptions
          \ |   mountOptions| Mount options |\n|   0777   | mountPointPermissions|
          \  mountPointPermissions | File permissions to be set on mount point |\n\n####
          Example\n\nRun nginx server using PersistentVolume.\n\n**Note:** Pre-configured
          volume file should exist on the Vmstore:\n`/tintri/csi/vmstorefs-mnt/persistent/volumefile-persistent.img`.\n\n```bash\noc
          apply -f nginx-persistent-volume.yaml\n\n# to delete this pod and volume:\noc
          delete -f nginx-persistent-volume.yaml\n```\n\n## Snapshots\nTo use CSI
          snapshots, the snapshot CRDs along with the csi-snapshotter must be installed.\n```bash\noc
          apply -f deploy/kubernetes/snapshots/\n```\n\nAfter that the snapshot class
          for VMStore CSI must be created\n\n```bash\noc apply -f examples/snapshot-class.yaml\n```\n\nNow
          a snapshot can be created, for example\n```bash\noc apply -f examples/snapshot-from-dynamic.yaml\n```\n\nWe
          can create a volume using the snapshot\n```bash\noc apply -f examples/nginx-from-snapshot.yaml\n```\n\n##
          Troubleshooting\n### Driver logs\nTo collect all driver related logs, you
          can use the `oc logs` command.\nAll in on command:\n```bash\nmkdir vmstore-csi-logs\nfor
          name in $(oc get pod -owide | grep vmstore | awk '{print $1}'); do oc logs
          $name --all-containers > vmstore-csi-logs/$name; done\n```\n\nTo get logs
          from all containers of a single pod \n```bash\noc logs <pod_name> --all-containers\n```\n\nLogs
          from a single container of a pod\n```bash\noc logs <pod_name> -c driver\n```\n\n####
          Driver secret\n```bash\noc get secret vmstore-csi-file-driver-config -o
          json | jq '.data | map_values(@base64d)' > vmstore-csi-logs/vmstore-csi-file-driver-config\n```\n\n####
          PV/PVC/Pod data\n```bash\noc get pvc > vmstore-csi-logs/pvcs\noc get pv
          > vmstore-csi-logs/pvs\noc get pod > vmstore-csi-logs/pods\n```\n\n####
          Extended info about a PV/PVC/Pod:\n```bash\noc describe pvc <pvc_name> >
          vmstore-csi-logs/<pvc_name>\noc describe pv <pv_name> > vmstore-csi-logs/<pv_name>\noc
          describe pod <pod_name> > vmstore-csi-logs/<pod_name>\n```"
        displayName: Vmstore CSI file driver
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - CSI
        - Vmstore
        - storage
        - Tintri
        - DDN
        links:
        - name: DDN vmstore Filesystem
          url: https://www.ddn.com/products/lustre-file-system-vmstore/
        maintainers:
        - email: akhodos@tintri.com
          name: Alexey Khodos
        - email: rrethinam@tintri.com
          name: Ranjith Rethinam
        maturity: alpha
        provider:
          name: DataDirect Networks
          url: https://www.ddn.com
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d4883d7c622683b3319b5e6b3a7edfbf2594c18060131a8bf64504805f875522
        - registry.connect.redhat.com/ddn/vmstore-csi-file-driver-operator@sha256:5aabe66a616dd7639b0638c7743118e585e3af6caca203f42a7187cd681442fd
        - tintri/vmstore-csi-driver-operator-controller@sha256:2cc0f04ed3da09b0af6ae737237d4f54772d04bf888c597361f67f6e6618799f
        version: 1.0.0
      entries:
      - name: vmstore-csi-driver-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: vmstore-csi-driver-operator
    provider:
      name: DataDirect Networks
      url: https://www.ddn.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: prometurbo-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometurbo-operator.v8.18.40-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5-beta.1 <8.18.40-beta.1'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
          - kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.

          ### Get Started
          Please follow [this](https://www.ibm.com/docs/en/tarm/8.15.x?topic=configuration-prometheus) for an overview of Prometurbo and deployment instructions.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/prometurbo
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - icr.io/cpopen/prometurbo-operator@sha256:9b6bb8cf444dc44b7709bf95962151d0817c635ce68fce8042122ab3f99bc0ee
        - registry.connect.redhat.com/turbonomic/prometurbo-operator-bundle@sha256:26190af9271c0600c7ec0a3dc4ee23a1290657615379124bcf6b4d389cda90fc
        version: 8.18.40-beta.1
      entries:
      - name: prometurbo-operator.v8.18.40-beta.1
        version: 8.18.40-beta.1
      name: beta
    - currentCSV: prometurbo-operator.v8.18.30
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          createdAt: ""
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          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.skipRange: '>=8.7.5 <8.18.30'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
          - kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.

          ### Get Started
          Please follow [this](https://www.ibm.com/docs/en/tarm/8.15.x?topic=configuration-prometheus) for an overview of Prometurbo and deployment instructions.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/IBM/turbonomic-container-platform/tree/main/prometurbo
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/prometurbo-operator-bundle@sha256:3c90ee4515d44efe835994f44fd883a6a1715826d19068241b91144c83632b45
        - icr.io/cpopen/prometurbo-operator@sha256:59b410c33ebc6e5420ff3f278f364837bae483b3f8a367e31822da8820cae33b
        version: 8.18.30
      entries:
      - name: prometurbo-operator.v8.18.30
        version: 8.18.30
      name: stable
    defaultChannel: stable
    packageName: prometurbo-certified
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/en/products/edge/validated-patterns
    name: patterns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: patterns-operator.v0.0.63
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "gitops.hybrid-cloud-patterns.io/v1alpha1",
                "kind": "Pattern",
                "metadata": {
                  "name": "pattern-sample"
                },
                "spec": {
                  "clusterGroupName": "hub",
                  "gitSpec": {
                    "targetRepo": "https://github.com/validatedpatterns/multicloud-gitops",
                    "targetRevision": "main"
                  },
                  "multiSourceConfig": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/validatedpatterns/patterns-operator:0.0.63
          createdAt: "2025-10-29 13:50:47"
          description: "An operator to deploy and manage architecture patterns from
            https://validatedpatterns.io. \nThis operator collects some Analytics
            like cluster version, cloud type, etc. To disable this\nadd \"ANALYTICS:
            false\" to the environment variables in the subscription."
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/must-gather-image: quay.io/validatedpatterns/must-gather@sha256:ac23dfe8c3b8404f75f4bdf0eb54470acc98bbb5f892de34d2580066e93ee63d
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/validatedpatterns/patterns-operator
          support: validatedpatterns@googlegroups.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Pattern is the Schema for the patterns API
            displayName: Pattern
            kind: Pattern
            name: patterns.gitops.hybrid-cloud-patterns.io
            version: v1alpha1
        description: Deploys and manages architecture patterns from https://validatedpatterns.io
        displayName: Validated Patterns Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Validated
        - Pattern
        - Blueprint
        - Architecture
        links:
        - name: Hybrid Cloud Patterns
          url: https://validatedpatterns.io
        maintainers:
        - email: validatedpatterns@googlegroups.com
          name: patterns-team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/en/products/edge/validated-patterns
        relatedImages:
        - quay.io/community-operator-pipeline-prod/patterns-operator:0.0.63
        - quay.io/validatedpatterns/must-gather@sha256:ac23dfe8c3b8404f75f4bdf0eb54470acc98bbb5f892de34d2580066e93ee63d
        - quay.io/validatedpatterns/patterns-operator@sha256:f1fd6cf65ece516f7e413e6f2f3483982d0831bcea31c0e0aae11ba47c71659c
        version: 0.0.63
      entries:
      - name: patterns-operator.v0.0.63
        version: 0.0.63
      - name: patterns-operator.v0.0.62
        version: 0.0.62
      - name: patterns-operator.v0.0.61
        version: 0.0.61
      - name: patterns-operator.v0.0.60
        version: 0.0.60
      - name: patterns-operator.v0.0.59
        version: 0.0.59
      - name: patterns-operator.v0.0.58
        version: 0.0.58
      - name: patterns-operator.v0.0.57
        version: 0.0.57
      - name: patterns-operator.v0.0.56
        version: 0.0.56
      - name: patterns-operator.v0.0.55
        version: 0.0.55
      - name: patterns-operator.v0.0.54
        version: 0.0.54
      - name: patterns-operator.v0.0.53
        version: 0.0.53
      - name: patterns-operator.v0.0.52
        version: 0.0.52
      - name: patterns-operator.v0.0.51
        version: 0.0.51
      - name: patterns-operator.v0.0.50
        version: 0.0.50
      - name: patterns-operator.v0.0.49
        version: 0.0.49
      - name: patterns-operator.v0.0.48
        version: 0.0.48
      - name: patterns-operator.v0.0.47
        version: 0.0.47
      - name: patterns-operator.v0.0.46
        version: 0.0.46
      - name: patterns-operator.v0.0.45
        version: 0.0.45
      - name: patterns-operator.v0.0.44
        version: 0.0.44
      - name: patterns-operator.v0.0.43
        version: 0.0.43
      - name: patterns-operator.v0.0.42
        version: 0.0.42
      - name: patterns-operator.v0.0.41
        version: 0.0.41
      - name: patterns-operator.v0.0.40
        version: 0.0.40
      - name: patterns-operator.v0.0.39
        version: 0.0.39
      - name: patterns-operator.v0.0.38
        version: 0.0.38
      - name: patterns-operator.v0.0.37
        version: 0.0.37
      - name: patterns-operator.v0.0.36
        version: 0.0.36
      - name: patterns-operator.v0.0.35
        version: 0.0.35
      - name: patterns-operator.v0.0.34
        version: 0.0.34
      - name: patterns-operator.v0.0.33
        version: 0.0.33
      - name: patterns-operator.v0.0.32
        version: 0.0.32
      - name: patterns-operator.v0.0.31
        version: 0.0.31
      - name: patterns-operator.v0.0.30
        version: 0.0.30
      - name: patterns-operator.v0.0.29
        version: 0.0.29
      - name: patterns-operator.v0.0.28
        version: 0.0.28
      - name: patterns-operator.v0.0.27
        version: 0.0.27
      - name: patterns-operator.v0.0.26
        version: 0.0.26
      - name: patterns-operator.v0.0.25
        version: 0.0.25
      - name: patterns-operator.v0.0.24
        version: 0.0.24
      - name: patterns-operator.v0.0.23
        version: 0.0.23
      - name: patterns-operator.v0.0.22
        version: 0.0.22
      - name: patterns-operator.v0.0.21
        version: 0.0.21
      - name: patterns-operator.v0.0.20
        version: 0.0.20
      - name: patterns-operator.v0.0.19
        version: 0.0.19
      - name: patterns-operator.v0.0.18
        version: 0.0.18
      - name: patterns-operator.v0.0.17
        version: 0.0.17
      - name: patterns-operator.v0.0.16
        version: 0.0.16
      - name: patterns-operator.v0.0.15
        version: 0.0.15
      - name: patterns-operator.v0.0.14
        version: 0.0.14
      - name: patterns-operator.v0.0.13
        version: 0.0.13
      - name: patterns-operator.v0.0.12
        version: 0.0.12
      - name: patterns-operator.v0.0.11
        version: 0.0.11
      - name: patterns-operator.v0.0.10
        version: 0.0.10
      - name: patterns-operator.v0.0.9
        version: 0.0.9
      - name: patterns-operator.v0.0.8
        version: 0.0.8
      - name: patterns-operator.v0.0.7
        version: 0.0.7
      - name: patterns-operator.v0.0.6
        version: 0.0.6
      - name: patterns-operator.v0.0.5
        version: 0.0.5
      - name: patterns-operator.v0.0.4
        version: 0.0.4
      - name: patterns-operator.v0.0.3
        version: 0.0.3
      - name: patterns-operator.v0.0.2
        version: 0.0.2
      - name: patterns-operator.v0.0.1
        version: 0.0.1
      name: fast
    defaultChannel: fast
    packageName: patterns-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com/en/products/edge/validated-patterns
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/openshift/lightspeed-service
    name: lightspeed-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lightspeed-operator.v1.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ols.openshift.io/v1alpha1",
                "kind": "OLSConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightspeed-operator",
                    "app.kubernetes.io/instance": "olsconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "olsconfig",
                    "app.kubernetes.io/part-of": "lightspeed-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "llm": {
                    "providers": [
                      {
                        "credentialsSecretRef": {
                          "name": "credentials"
                        },
                        "models": [
                          {
                            "name": "gpt-3.5-turbo-1106"
                          }
                        ],
                        "name": "OpenAI"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-10-10T17:31:05Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-lightspeed
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus", "OpenShift Kubernetes Engine", "OpenShift Virtualization
            Engine"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lightspeed-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Red Hat OpenShift Lightspeed instance. OLSConfig is the Schema
              for the olsconfigs API
            displayName: OLSConfig
            kind: OLSConfig
            name: olsconfigs.ols.openshift.io
            version: v1alpha1
        description: |-
          OpenShift Lightspeed Operator provides generative AI-based virtual assistant which integrates into the OpenShift web console. OpenShift Lightspeed can answer natural language questions related to OpenShift Container Platform.

          To configure the OpenShift Lightspeed Operator, you need a Large Language Model (LLM) . You can host the LLM using RHELAI or RHOAI or use one of the models from the following Software-as-a-Service providers:

          - OpenAI
          - Microsoft Azure OpenAI
          - IBM WatsonX

          For more information, see [About OpenShift Lightspeed](https://docs.redhat.com/en/documentation/red_hat_openshift_lightspeed/1.0tp1/html/about/ols-about-openshift-lightspeed) in the official product documentation.

          Questions, comments, concerns, or just want to talk to the OpenShift Lightspeed team? [Email us](mailto:openshift-lightspeed-contact-requests@redhat.com)!
        displayName: OpenShift Lightspeed Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ai
        - assistant
        - openshift
        - llm
        links:
        - name: Lightspeed Operator
          url: https://github.com/openshift/lightspeed-operator
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/lightspeed-service
        relatedImages:
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/lightspeed-service-api-rhel9@sha256:c9cd5a1a14a310ee25de231208b7ebd7c9dbcd16205caa03b96a379d7988d022
        - registry.redhat.io/openshift-lightspeed/lightspeed-rhel9-operator@sha256:477acc1afc8df694c5d661f0da917b65c58a21ca3f9b115979278a6ae475b9ee
        - registry.redhat.io/openshift-lightspeed/lightspeed-ocp-rag-rhel9@sha256:3b73a841b0388f659f5a6f8f40a2b903e17ee4a7a57f074aa396b9e050cccc97
        - registry.redhat.io/rhel9/postgresql-16@sha256:42f385ac3c9b8913426da7c57e70bc6617cd237aaf697c667f6385a8c0b0118b
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-rhel9@sha256:830d900d133947ff0041bb0f8ad66d77db78483331a73278e47d89eece76eb9a
        - registry.redhat.io/openshift-lightspeed/openshift-mcp-server-rhel9@sha256:d8f0081fcabbdaa9e5aa4fce5ed15e2a3222a277f6ef55f5a05583480d92dda3
        - registry.redhat.io/openshift-lightspeed/lightspeed-operator-bundle@sha256:6ddfddfd63d7b8b1fc59c7d8062562b9c1e0dbfaa7b6126db3c6bdc19342a6d6
        - registry.redhat.io/openshift-lightspeed/lightspeed-to-dataverse-exporter-rhel9@sha256:d4f3fa25a0dc60de849658ee59d900fcdf314984b27f4c07bdfb667f22001053
        version: 1.0.8
      entries:
      - name: lightspeed-operator.v1.0.8
        version: 1.0.8
      name: alpha
    - currentCSV: lightspeed-operator.v1.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ols.openshift.io/v1alpha1",
                "kind": "OLSConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightspeed-operator",
                    "app.kubernetes.io/instance": "olsconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "olsconfig",
                    "app.kubernetes.io/part-of": "lightspeed-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "llm": {
                    "providers": [
                      {
                        "credentialsSecretRef": {
                          "name": "credentials"
                        },
                        "models": [
                          {
                            "name": "gpt-3.5-turbo-1106"
                          }
                        ],
                        "name": "OpenAI"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-10-10T17:31:05Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-lightspeed
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus", "OpenShift Kubernetes Engine", "OpenShift Virtualization
            Engine"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lightspeed-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Red Hat OpenShift Lightspeed instance. OLSConfig is the Schema
              for the olsconfigs API
            displayName: OLSConfig
            kind: OLSConfig
            name: olsconfigs.ols.openshift.io
            version: v1alpha1
        description: |-
          OpenShift Lightspeed Operator provides generative AI-based virtual assistant which integrates into the OpenShift web console. OpenShift Lightspeed can answer natural language questions related to OpenShift Container Platform.

          To configure the OpenShift Lightspeed Operator, you need a Large Language Model (LLM) . You can host the LLM using RHELAI or RHOAI or use one of the models from the following Software-as-a-Service providers:

          - OpenAI
          - Microsoft Azure OpenAI
          - IBM WatsonX

          For more information, see [About OpenShift Lightspeed](https://docs.redhat.com/en/documentation/red_hat_openshift_lightspeed/1.0tp1/html/about/ols-about-openshift-lightspeed) in the official product documentation.

          Questions, comments, concerns, or just want to talk to the OpenShift Lightspeed team? [Email us](mailto:openshift-lightspeed-contact-requests@redhat.com)!
        displayName: OpenShift Lightspeed Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ai
        - assistant
        - openshift
        - llm
        links:
        - name: Lightspeed Operator
          url: https://github.com/openshift/lightspeed-operator
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/lightspeed-service
        relatedImages:
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-rhel9@sha256:830d900d133947ff0041bb0f8ad66d77db78483331a73278e47d89eece76eb9a
        - registry.redhat.io/openshift-lightspeed/lightspeed-rhel9-operator@sha256:477acc1afc8df694c5d661f0da917b65c58a21ca3f9b115979278a6ae475b9ee
        - registry.redhat.io/openshift-lightspeed/lightspeed-to-dataverse-exporter-rhel9@sha256:d4f3fa25a0dc60de849658ee59d900fcdf314984b27f4c07bdfb667f22001053
        - registry.redhat.io/rhel9/postgresql-16@sha256:42f385ac3c9b8913426da7c57e70bc6617cd237aaf697c667f6385a8c0b0118b
        - registry.redhat.io/openshift-lightspeed/lightspeed-operator-bundle@sha256:6ddfddfd63d7b8b1fc59c7d8062562b9c1e0dbfaa7b6126db3c6bdc19342a6d6
        - registry.redhat.io/openshift-lightspeed/lightspeed-console-plugin-pf5-rhel9@sha256:555d429aecb1ea2f91e5eeaf71492a6b2fb4d39bfa4a313135cdccaf2cfa76b9
        - registry.redhat.io/openshift-lightspeed/openshift-mcp-server-rhel9@sha256:d8f0081fcabbdaa9e5aa4fce5ed15e2a3222a277f6ef55f5a05583480d92dda3
        - registry.redhat.io/openshift-lightspeed/lightspeed-ocp-rag-rhel9@sha256:3b73a841b0388f659f5a6f8f40a2b903e17ee4a7a57f074aa396b9e050cccc97
        - registry.redhat.io/openshift-lightspeed/lightspeed-service-api-rhel9@sha256:c9cd5a1a14a310ee25de231208b7ebd7c9dbcd16205caa03b96a379d7988d022
        version: 1.0.8
      entries:
      - name: lightspeed-operator.v1.0.8
        version: 1.0.8
      name: stable
    defaultChannel: stable
    packageName: lightspeed-operator
    provider:
      name: Red Hat, Inc
      url: https://github.com/openshift/lightspeed-service
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: cluster-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-manager.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.open-cluster-management.io/v1",
                "kind": "ClusterManager",
                "metadata": {
                  "name": "cluster-manager"
                },
                "spec": {
                  "addOnManagerImagePullSpec": "quay.io/open-cluster-management/addon-manager:v0.13.1",
                  "deployOption": {
                    "mode": "Default"
                  },
                  "placementImagePullSpec": "quay.io/open-cluster-management/placement:v0.13.1",
                  "registrationConfiguration": {
                    "featureGates": [
                      {
                        "feature": "DefaultClusterSet",
                        "mode": "Enable"
                      }
                    ]
                  },
                  "registrationImagePullSpec": "quay.io/open-cluster-management/registration:v0.13.1",
                  "workImagePullSpec": "quay.io/open-cluster-management/work:v0.13.1"
                }
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1",
                "kind": "ClusterManager",
                "metadata": {
                  "name": "cluster-manager"
                },
                "spec": {
                  "addOnManagerImagePullSpec": "quay.io/open-cluster-management/addon-manager:v0.13.1",
                  "deployOption": {
                    "hosted": {
                      "registrationWebhookConfiguration": {
                        "address": "management-control-plane",
                        "port": 30443
                      },
                      "workWebhookConfiguration": {
                        "address": "management-control-plane",
                        "port": 31443
                      }
                    },
                    "mode": "Hosted"
                  },
                  "placementImagePullSpec": "quay.io/open-cluster-management/placement:v0.13.1",
                  "registrationImagePullSpec": "quay.io/open-cluster-management/registration:v0.13.1",
                  "workImagePullSpec": "quay.io/open-cluster-management/work:v0.13.1"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/registration-operator:v0.13.1
          createdAt: "2024-04-10T15:27:49Z"
          description: Manages the installation and upgrade of the ClusterManager.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management-io/ocm
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterManager defines the configurations of controllers
              running hub that govern registration and work distribution for attached
              Klusterlets
            displayName: ClusterManager
            kind: ClusterManager
            name: clustermanagers.operator.open-cluster-management.io
            version: v1
        description: "Note: This operator will stop updating, please use the latest
          operator in OperatorHub.io https://operatorhub.io/operator/cluster-manager.
          \n\nThe Cluster Manager provides the multicluster hub, which can manage
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. This operator supports the installation and upgrade of ClusterManager.\n\n##
          How to Install\nInstall ClusterManager operator by following instructions
          in top right button `Install`. After installing the operator, create an
          instance of the ClusterManager resource to install the ClusterManager.\n\nThe
          pods of ClusterManager are created in the `open-cluster-management-hub`
          namespace:\n\n```\n$ kubectl get pods -n open-cluster-management-hub\nNAME
          \                                                      READY   STATUS    RESTARTS
          \  AGE\ncluster-manager-addon-manager-controller-7fcc67bfdf-x7hbz  1/1     Running
          \  0          61m\ncluster-manager-placement-controller-dbcfd4975-26jpw
          \      1/1     Running   0          61m\ncluster-manager-registration-controller-7949d97899-wwtg4
          \  1/1     Running   0          61m\ncluster-manager-registration-webhook-7f675bc4bb-v4rhj
          \     1/1     Running   0          61m\ncluster-manager-work-webhook-6c9d65fb95-jh97b
          \             1/1     Running   0          61m\n```\n\nThere is a ManagedCluster
          created in the Hub cluster when the managed cluster is registered to the
          Hub cluster.\n\n```\n$ kubectl get managedclusters.cluster.open-cluster-management.io\nNAME
          \                  HUB ACCEPTED   MANAGED CLUSTER URLS     JOINED   AVAILABLE
          \  AGE\ncluster-dev            true                                    True
          \    True        7h20m\ncluster-test           false          https://127.0.0.1:8443
          \                       7h25m\n```\n"
        displayName: Cluster Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open-cluster-management
        - ClusterManager
        links:
        - name: Registration Operator
          url: https://github.com/open-cluster-management-io/ocm
        maintainers:
        - email: zyin@redhat.com
          name: Zhiwei Yin
        - email: deads@redhat.com
          name: David Eads
        - email: jqiu@redhat.com
          name: Jian Qiu
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cluster-manager@sha256:a4c8a54148538b371e5cea3b2f2d4109f7b6bc4a7f2e5b52a840c9340fbf5e47
        - quay.io/open-cluster-management/registration-operator:v0.13.1
        version: 0.13.1
      entries:
      - name: cluster-manager.v0.13.1
        version: 0.13.1
      - name: cluster-manager.v0.13.0
        version: 0.13.0
      - name: cluster-manager.v0.12.0
        version: 0.12.0
      - name: cluster-manager.v0.11.0
        version: 0.11.0
      - name: cluster-manager.v0.10.0
        version: 0.10.0
      - name: cluster-manager.v0.9.1
        version: 0.9.1
      - name: cluster-manager.v0.8.0
        version: 0.8.0
      - name: cluster-manager.v0.7.0
        version: 0.7.0
      - name: cluster-manager.v0.6.0
        version: 0.6.0
      - name: cluster-manager.v0.5.0
        version: 0.5.0
      - name: cluster-manager.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: cluster-manager
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Ian Boden
      provider-url: ""
    name: eclipse-amlen-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eclipse-amlen-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eclipse.org/v1",
                "kind": "Amlen",
                "metadata": {
                  "name": "amlen-sample"
                },
                "spec": {
                  "_amlen_image_tag": "latest",
                  "_amlen_monitor_image_tag": "latest",
                  "_amlen_name": "amlen-sample",
                  "_amlen_namespace": "osdk-test",
                  "_amlen_persistence": "false",
                  "config": "amlen-config",
                  "device_cert_issuer": {
                    "mode": "automatic",
                    "name": "amlen-selfsigned-issuer"
                  },
                  "ha": {
                    "cert_issuer": {
                      "name": "amlen-selfsigned-issuer"
                    },
                    "enabled": true
                  },
                  "size": 2
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/amlen/operator:v1.0.1a
          createdAt: "2022-11-24T15:31:00Z"
          description: An operator to run the Eclipse Amlen MQTT Broker
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/eclipse/amlen
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Amlen
            name: amlens.eclipse.org
            version: v1
        description: Operator for the eclipse Amlen MQTT Broker\n\n### Supported Feature\n\nCurrently
          supports:\n* Install - simple install process\n* Upgrade - non-disruptive
          upgrade\n*High Availability - can be enabled/disabled via the CRD\n\n###
          Documentation\nThe main Amlen website has links to product documentation,
          forum, blog and the slack channel\nhttp://www.eclipse.org/amlen\n\n### Getting
          help\nThe quickest way to get help is to use the slack channel but the forum
          is monitored as well\n\nIssues can also be added to the github repository
          https://github.com/eclipse/amlen\n\n### License\nEclipse Amlen Operator
          is licensed under the [Eclipse Public License - v 2.0](https://www.eclipse.org/legal/epl-2.0/)
        displayName: eclipse-amlen-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - amlen
        - mqtt
        - broker
        links:
        - name: Eclipse Amlen Operator
          url: https://eclipse.org/amlen
        maintainers:
        - email: ianboden@uk.ibm.com
          name: Ian Boden
        maturity: stable
        provider:
          name: Ian Boden
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/amlen/operator:v1.0.1a
        - quay.io/openshift-community-operators/eclipse-amlen-operator@sha256:bb89e2a7cb1c9172b080c72ad3227017d135fc30076d2a68b4e215fa8fa55846
        version: 1.0.0
      entries:
      - name: eclipse-amlen-operator.v1.0.0
        version: 1.0.0
      - name: eclipse-amlen-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: eclipse-amlen-operator.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eclipse.org/v1",
                "kind": "Amlen",
                "metadata": {
                  "name": "amlen-sample"
                },
                "spec": {
                  "config": "amlen-config",
                  "device_cert_issuer": {
                    "mode": "automatic",
                    "name": "amlen-selfsigned-issuer"
                  },
                  "ha": {
                    "cert_issuer": {
                      "name": "amlen-selfsigned-issuer"
                    },
                    "enabled": true
                  },
                  "ldap": {
                    "cert_issuer": {
                      "name": "amlen-selfsigned-issuer"
                    },
                    "enabled": true
                  },
                  "size": 2
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/amlen/operator:v1.1.3
          createdAt: "2025-05-22T10:00:00Z"
          description: An operator to run the Eclipse Amlen MQTT Broker
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/eclipse-amlen/amlen
          support: Eclipse
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Amlen
            name: amlens.eclipse.org
            version: v1
        description: |-
          Operator for the eclipse Amlen MQTT Broker

          ### Supported Feature

          Currently supports:
          * Install - simple install process
          * Upgrade - non-disruptive upgrade
          * High Availability - can be enabled/disabled via the CRD

          ### Documentation
          The main Amlen website has links to product documentation, forum, blog and the slack channel
          http://www.eclipse.org/amlen

          ### Getting help
          The quickest way to get help is to use the slack channel but the forum is monitored as well
          Issues can also be added to the github repository https://github.com/eclipse-amlen/amlen

          ### License
          Eclipse Amlen Operator is licensed under [Eclipse Public License - v 2.0](https://www.eclipse.org/legal/epl-2.0/)
        displayName: eclipse-amlen-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - amlen
        - mqtt
        - broker
        links:
        - name: Eclipse Amlen Operator
          url: https://eclipse.org/amlen
        maintainers:
        - email: ianboden@uk.ibm.com
          name: Ian Boden
        maturity: stable
        provider:
          name: Eclipse Amlen
          url: https://eclipse.org/amlen
        relatedImages:
        - controller:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/community-operator-pipeline-prod/eclipse-amlen-operator@sha256:5fbfb0bd4f764643cdc1021e99e489514a1f035d85131b13e56b11a3045883c2
        version: 1.1.3
      entries:
      - name: eclipse-amlen-operator.v1.1.3
        version: 1.1.3
      - name: eclipse-amlen-operator.v1.1.0
        version: 1.1.0
      - name: eclipse-amlen-operator.v1.0.2
        version: 1.0.2
      - name: eclipse-amlen-operator.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: alpha
    packageName: eclipse-amlen-operator
    provider:
      name: Ian Boden
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: observability-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: observability-operator.v0.0.28
      currentCSVDesc:
        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: quay.io/rhobs/observability-operator:0.0.28
          createdAt: "2023-11-09T07:43:16Z"
          description: A Go based Kubernetes operator to setup and manage highly available
            Monitoring Stack using Prometheus, Alertmanager and Thanos Querier.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            [
              "prometheuses.monitoring.rhobs", "alertmanagers.monitoring.rhobs",
              "thanosrulers.monitoring.rhobs"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/rhobs/observability-operator
        apiservicedefinitions: {}
        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
          - 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: |2+

          Observability Operator is a Go based Kubernetes operator to setup and manage highly available Monitoring stack using Prometheus, Alertmanager and Thanos Querier.
          ### 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
          ### Documentation
          - **[Documentation](https://github.com/rhobs/observability-operator/tree/main/docs)**
          - **[Developer Docs](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md)**
          ### Contributing
          **[See Contribution Guidelines](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md#contributions)** to contribute to the project by
          - Raising Bugs and Feature Requests
          - Fixing Issues by opening a Pull Request
          - Improving Documentation
          ###  License
          Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)

        displayName: Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - monitoring
        - prometheus
        - thanos
        links:
        - name: Observability Operator
          url: https://rhobs-handbook.netlify.app/products/observability-operator
        - name: GitHub
          url: https://github.com/rhobs/observability-operator
        maintainers:
        - email: jfajersk@redhat.com
          name: Jan Fajerski
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: spasquie@redhat.com
          name: Simon Pasquier
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/observability-operator@sha256:182b95a93db9b95606405c24686cbb96054efb0c2236822569f30b6c27992534
        - quay.io/rhobs/obo-admission-webhook:v0.69.0-rhobs1
        - quay.io/rhobs/obo-prometheus-operator:v0.69.0-rhobs1
        - quay.io/rhobs/observability-operator:0.0.28
        version: 0.0.28
      entries:
      - name: observability-operator.v0.0.28
        version: 0.0.28
      - name: observability-operator.v0.0.25
        version: 0.0.25
      name: candidate
    - currentCSV: observability-operator.v0.0.28
      currentCSVDesc:
        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: quay.io/rhobs/observability-operator:0.0.28
          createdAt: "2023-11-09T07:43:16Z"
          description: A Go based Kubernetes operator to setup and manage highly available
            Monitoring Stack using Prometheus, Alertmanager and Thanos Querier.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            [
              "prometheuses.monitoring.rhobs", "alertmanagers.monitoring.rhobs",
              "thanosrulers.monitoring.rhobs"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/rhobs/observability-operator
        apiservicedefinitions: {}
        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
          - 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: |2+

          Observability Operator is a Go based Kubernetes operator to setup and manage highly available Monitoring stack using Prometheus, Alertmanager and Thanos Querier.
          ### 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
          ### Documentation
          - **[Documentation](https://github.com/rhobs/observability-operator/tree/main/docs)**
          - **[Developer Docs](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md)**
          ### Contributing
          **[See Contribution Guidelines](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md#contributions)** to contribute to the project by
          - Raising Bugs and Feature Requests
          - Fixing Issues by opening a Pull Request
          - Improving Documentation
          ###  License
          Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)

        displayName: Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - monitoring
        - prometheus
        - thanos
        links:
        - name: Observability Operator
          url: https://rhobs-handbook.netlify.app/products/observability-operator
        - name: GitHub
          url: https://github.com/rhobs/observability-operator
        maintainers:
        - email: jfajersk@redhat.com
          name: Jan Fajerski
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: spasquie@redhat.com
          name: Simon Pasquier
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/observability-operator@sha256:182b95a93db9b95606405c24686cbb96054efb0c2236822569f30b6c27992534
        - quay.io/rhobs/obo-admission-webhook:v0.69.0-rhobs1
        - quay.io/rhobs/obo-prometheus-operator:v0.69.0-rhobs1
        - quay.io/rhobs/observability-operator:0.0.28
        version: 0.0.28
      entries:
      - name: observability-operator.v0.0.28
        version: 0.0.28
      - name: observability-operator.v0.0.25
        version: 0.0.25
      - name: observability-operator.v0.0.22
        version: 0.0.22
      name: development
    - currentCSV: observability-operator.v0.0.28
      currentCSVDesc:
        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: quay.io/rhobs/observability-operator:0.0.28
          createdAt: "2023-11-09T07:43:16Z"
          description: A Go based Kubernetes operator to setup and manage highly available
            Monitoring Stack using Prometheus, Alertmanager and Thanos Querier.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            [
              "prometheuses.monitoring.rhobs", "alertmanagers.monitoring.rhobs",
              "thanosrulers.monitoring.rhobs"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/rhobs/observability-operator
        apiservicedefinitions: {}
        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
          - 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: |2+

          Observability Operator is a Go based Kubernetes operator to setup and manage highly available Monitoring stack using Prometheus, Alertmanager and Thanos Querier.
          ### 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
          ### Documentation
          - **[Documentation](https://github.com/rhobs/observability-operator/tree/main/docs)**
          - **[Developer Docs](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md)**
          ### Contributing
          **[See Contribution Guidelines](https://github.com/rhobs/observability-operator/blob/main/docs/developer.md#contributions)** to contribute to the project by
          - Raising Bugs and Feature Requests
          - Fixing Issues by opening a Pull Request
          - Improving Documentation
          ###  License
          Licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)

        displayName: Observability Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - observability
        - monitoring
        - prometheus
        - thanos
        links:
        - name: Observability Operator
          url: https://rhobs-handbook.netlify.app/products/observability-operator
        - name: GitHub
          url: https://github.com/rhobs/observability-operator
        maintainers:
        - email: jfajersk@redhat.com
          name: Jan Fajerski
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: spasquie@redhat.com
          name: Simon Pasquier
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/observability-operator@sha256:182b95a93db9b95606405c24686cbb96054efb0c2236822569f30b6c27992534
        - quay.io/rhobs/obo-admission-webhook:v0.69.0-rhobs1
        - quay.io/rhobs/obo-prometheus-operator:v0.69.0-rhobs1
        - quay.io/rhobs/observability-operator:0.0.28
        version: 0.0.28
      entries:
      - name: observability-operator.v0.0.28
        version: 0.0.28
      - name: observability-operator.v0.0.25
        version: 0.0.25
      name: stable
    defaultChannel: stable
    packageName: observability-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://www.redhat.com/
    name: rhdh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhdh-operator.v1.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha4",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
          createdAt: "2025-11-10T18:16:19Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.8.1'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha4
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.8/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:8b5ec4b6085ecb32ea52c33d97adecc313341681b41d891f5346e9b9f8b8a249
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
        - registry.redhat.io/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:9f870202198dca9d941ebb5321334c45cc2309bb079d2a9e602d8a099f8ffa6f
        version: 1.8.1
      entries:
      - name: rhdh-operator.v1.8.1
        version: 1.8.1
      - name: rhdh-operator.v1.8.0
        version: 1.8.0
      - name: rhdh-operator.v1.7.3
        version: 1.7.3
      - name: rhdh-operator.v1.7.2
        version: 1.7.2
      - name: rhdh-operator.v1.7.1
        version: 1.7.1
      - name: rhdh-operator.v1.7.0
        version: 1.7.0
      - name: rhdh-operator.v1.6.5
        version: 1.6.5
      - name: rhdh-operator.v1.6.4
        version: 1.6.4
      - name: rhdh-operator.v1.6.3
        version: 1.6.3
      - name: rhdh-operator.v1.6.2
        version: 1.6.2
      - name: rhdh-operator.v1.6.1
        version: 1.6.1
      - name: rhdh-operator.v1.6.0
        version: 1.6.0
      - name: rhdh-operator.v1.5.3
        version: 1.5.3
      - name: rhdh-operator.v1.5.2
        version: 1.5.2
      - name: rhdh-operator.v1.5.1
        version: 1.5.1
      - name: rhdh-operator.v1.4.3
        version: 1.4.3
      - name: rhdh-operator.v1.4.2
        version: 1.4.2
      - name: rhdh-operator.v1.4.1
        version: 1.4.1
      - name: rhdh-operator.v1.4.0
        version: 1.4.0
      - name: rhdh-operator.v1.3.5
        version: 1.3.5
      - name: rhdh-operator.v1.3.4
        version: 1.3.4
      - name: rhdh-operator.v1.3.3
        version: 1.3.3
      - name: rhdh-operator.v1.3.1
        version: 1.3.1
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast
    - currentCSV: rhdh-operator.v1.1.2-0.1714688890.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:9bea7eabdea44342248dfd6091a8f5c3b6e65884c916b3c2a073a4a64481aa6f
          createdAt: "2023-03-20T16:11:34Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins, configuration settings, and deployment
            mechanisms, which can help streamline the process of setting up a self-managed
            internal developer portal for adopters who are just starting out.
          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.substitutesFor: rhdh-operator.v1.1.2
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.1.0 <1.2.0'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/janus-idp/operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: asoro@redhat.com
          name: Armel Soro
        - email: gazarenk@redhat.com
          name: Gennady Azarenkov
        - email: jianrzha@redhat.com
          name: Jianrong Zhang
        - email: nboldt@redhat.com
          name: Nick Boldt
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-15@sha256:d5f3d496ecd55688e384cc0627700a97af6924582123bcf00749c375724af3de
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:95ed239eb427c7b1e422ece28c5277b5018efb751c2b472bf502b8216219c047
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:d7ae2456857cab09a9e9acf69c9990ef18deb7f920046b8c2483fbfd0d42bbfc
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a93b382258a34e0b56ef6616a8490e5f44ef1c6aa5d29c0d08d2147ae5b440e6
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:9bea7eabdea44342248dfd6091a8f5c3b6e65884c916b3c2a073a4a64481aa6f
        version: 1.1.2+0.1714688890.p
      entries:
      - name: rhdh-operator.v1.1.2
        version: 1.1.2
      - name: rhdh-operator.v1.1.2-0.1714608881.p
        version: 1.1.2+0.1714608881.p
      - name: rhdh-operator.v1.1.2-0.1714688618.p
        version: 1.1.2+0.1714688618.p
      - name: rhdh-operator.v1.1.2-0.1714688890.p
        version: 1.1.2+0.1714688890.p
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast-1.1
    - currentCSV: rhdh-operator.v1.2.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:c9051a6c339cd40cbc7474a33b32a6b94913af964e12ca5da0c0b7e1c6f444d5
          createdAt: "2024-11-28T17:55:19Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.2.6'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.2/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.2/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: asoro@redhat.com
          name: Armel Soro
        - email: cdaley@redhat.com
          name: Corey Daley
        - email: gazarenk@redhat.com
          name: Gennady Azarenkov
        - email: nboldt@redhat.com
          name: Nick Boldt
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ef29f2b340a6dc52c5014239876d54a54f7c0f0bf4ea917391438a69c94a8532
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:025eb58c69b9cf5992ecf2fccb29a3d36061cbcf62652a1c6878f0c4d767c1fb
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:3170da029869d15a246ad31d0debd4b9c03ba13855fb877a754cfdffb2286b80
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:c9051a6c339cd40cbc7474a33b32a6b94913af964e12ca5da0c0b7e1c6f444d5
        version: 1.2.6
      entries:
      - name: rhdh-operator.v1.2.6
        version: 1.2.6
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast-1.2
    - currentCSV: rhdh-operator.v1.3.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:5ce579edc10bde5c1c400104f7e0d9f86ca277cd565aaf3dd84b8636f5b949a8
          createdAt: "2025-02-10T18:12:52Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.3.5'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.3/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:a7ce92f7f4aadca2781c44839bc357615395587bc8b68a735642967cf8694362
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:5ce579edc10bde5c1c400104f7e0d9f86ca277cd565aaf3dd84b8636f5b949a8
        - registry.redhat.io/rhel9/postgresql-15@sha256:24fb4e7914a6e1464d015be9e5582cc4b9da224137408bd429e7ea4f391aa198
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:b4934c45ba595b36e65c73b734c58d1517e7f43b7cfc309ca8bc853733582f76
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:c044fed8485a62a5051ac726525da546936be22f268db05491bf81582e0e6194
        version: 1.3.5
      entries:
      - name: rhdh-operator.v1.3.5
        version: 1.3.5
      - name: rhdh-operator.v1.3.4
        version: 1.3.4
      - name: rhdh-operator.v1.3.3
        version: 1.3.3
      - name: rhdh-operator.v1.3.1
        version: 1.3.1
      - name: rhdh-operator.v1.1.1
        version: 1.1.1
      - name: rhdh-operator.v1.1.0
        version: 1.1.0
      name: fast-1.3
    - currentCSV: rhdh-operator.v1.4.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "name": "developer-hub"
                },
                "spec": {
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:ae5b52c1b35e82f3c564402e367a2a2028e16806867bba0868643089ba7ed223
          createdAt: "2025-04-03T05:42:32Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.4.3'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.4/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:093c6a66d4faa1d980e4319a048db8b2869eba8f13f40f02615d6696257e6719
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:ae5b52c1b35e82f3c564402e367a2a2028e16806867bba0868643089ba7ed223
        version: 1.4.3
      entries:
      - name: rhdh-operator.v1.4.3
        version: 1.4.3
      - name: rhdh-operator.v1.4.2
        version: 1.4.2
      - name: rhdh-operator.v1.4.1
        version: 1.4.1
      - name: rhdh-operator.v1.4.0
        version: 1.4.0
      name: fast-1.4
    - currentCSV: rhdh-operator.v1.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:8fe167cc649a1c53994c376f3cf3eed8c6e318741a0c08e5aaf07cb0b74e7f8a
          createdAt: "2025-06-05T14:31:21Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.5.3'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.5/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Backstage Operator (Upstream)
          url: https://github.com/redhat-developer/rhdh-operator
        - name: RHDH Operator (Downstream)
          url: https://gitlab.cee.redhat.com/rhidp/rhdh/
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:2ad8c87e82df27c2b6ceba94179d1f0a40fe775368663c1b5572611888e0e02b
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:5a19032dda9a0f584b41cbe9e729ed23e6003d90ebbb026eb9e7bb9769d4a4e4
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:8fe167cc649a1c53994c376f3cf3eed8c6e318741a0c08e5aaf07cb0b74e7f8a
        - registry.redhat.io/rhel9/postgresql-15@sha256:74377f5a61dd7e3e0ba5d2fa880b7107025433a026396567c79eac927b4212bc
        version: 1.5.3
      entries:
      - name: rhdh-operator.v1.5.3
        version: 1.5.3
      - name: rhdh-operator.v1.5.2
        version: 1.5.2
      - name: rhdh-operator.v1.5.1
        version: 1.5.1
      name: fast-1.5
    - currentCSV: rhdh-operator.v1.6.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:50f20300c81621221260d03d22b1442750e3f1d2e62f3e511d63925d84c4d1f9
          createdAt: "2025-08-27T18:43:12Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.6.5'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.6/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:50f20300c81621221260d03d22b1442750e3f1d2e62f3e511d63925d84c4d1f9
        - registry.redhat.io/rhel9/postgresql-15@sha256:5e225c1646251d2509b3a6e45fad23abfb11dd5c45d3224b59178f90deb38a70
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:177a7308f61a6b1ba21bc0f7bf550a93d4478e52479e2c94a2437f2152e3d8ff
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:3b2cf972e1ced0a46d3559da4eb1a1b32c50457293ede4958a13538a84b45316
        version: 1.6.5
      entries:
      - name: rhdh-operator.v1.6.5
        version: 1.6.5
      - name: rhdh-operator.v1.6.4
        version: 1.6.4
      - name: rhdh-operator.v1.6.3
        version: 1.6.3
      - name: rhdh-operator.v1.6.2
        version: 1.6.2
      - name: rhdh-operator.v1.6.1
        version: 1.6.1
      - name: rhdh-operator.v1.6.0
        version: 1.6.0
      name: fast-1.6
    - currentCSV: rhdh-operator.v1.7.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:6ebf90f0b2419efa5c159b52ee30adde1e7aa7d0ad8486f143d80fe5bd9dd06f
          createdAt: "2025-11-04T05:38:01Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.7.3'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.7/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:b5ffbb3cc1caac4e020abf1d711566aef859b08e479ab181e5b39ce9da7a5b73
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:54c5cd2a4865a372ba9465908f73928382745e04ad446c97b28adde213d13309
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:6ebf90f0b2419efa5c159b52ee30adde1e7aa7d0ad8486f143d80fe5bd9dd06f
        - registry.redhat.io/rhel9/postgresql-15@sha256:990be59eeb55860a62455375fef7795854d78ce15ac3e7568b9bdb4680bfcd97
        version: 1.7.3
      entries:
      - name: rhdh-operator.v1.7.3
        version: 1.7.3
      - name: rhdh-operator.v1.7.2
        version: 1.7.2
      - name: rhdh-operator.v1.7.1
        version: 1.7.1
      - name: rhdh-operator.v1.7.0
        version: 1.7.0
      name: fast-1.7
    - currentCSV: rhdh-operator.v1.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhdh.redhat.com/v1alpha1",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha2",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha3",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              },
              {
                "apiVersion": "rhdh.redhat.com/v1alpha4",
                "kind": "Backstage",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "backstage"
                  },
                  "name": "developer-hub"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
          createdAt: "2025-11-10T18:16:19Z"
          description: Red Hat Developer Hub is a Red Hat supported version of Backstage.
            It comes with pre-built plug-ins and configuration settings, supports
            use of an external database, and can help streamline the process of setting
            up a self-managed internal developer portal for adopters who are just
            starting out.
          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"
          operatorframework.io/suggested-namespace: rhdh-operator
          operators.openshift.io/valid-subscription: '["Red Hat Developer Hub"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://gitlab.cee.redhat.com/rhidp/rhdh/
          skipRange: '>=1.0.0 <1.8.1'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha1
          - description: Backstage is the Schema for the Red Hat Developer Hub backstages
              API. It comes with pre-built plug-ins, configuration settings, and deployment
              mechanisms, which can help streamline the process of setting up a self-managed
              internal developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha2
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha3
          - description: |-
              Backstage is the Schema for the Red Hat Developer Hub backstages API.
              It comes with pre-built plug-ins, configuration settings, and deployment mechanisms,
              which can help streamline the process of setting up a self-managed internal
              developer portal for adopters who are just starting out.
            displayName: Red Hat Developer Hub
            kind: Backstage
            name: backstages.rhdh.redhat.com
            version: v1alpha4
        description: |
          Red Hat Developer Hub is an enterprise-grade platform for building developer portals, containing a supported and opinionated framework. It comes with pre-built plug-ins and configuration settings, supports use of an external database, and can help streamline the process of setting up a self-managed internal developer portal for adopters who are just starting out. By implementing a unified and open platform designed to maximize developer skills, ease onboarding, and increase development productivity, focus can be centered on what really matters: writing great code. Red Hat Developer Hub also offers Software Templates to simplify the development process, which can reduce friction and frustration for development teams, boosting their productivity and increasing an organization's competitive advantage.

          System Architects can benefit by implementing a tailored platform with a complementary suite of verified and curated tools and components needed for operations teams to support developers—within a centralized, consistent location. Development teams can experience increased productivity, fewer development team obstacles, and simplified governance of technology choices with self-service and guardrails.

          ## Telemetry data collection

          The telemetry data collection feature is enabled by default. Red Hat Developer Hub sends telemetry data to Red Hat by using the `backstage-plugin-analytics-provider-segment` plugin. To disable this and to learn what data is being collected, see [Red Hat Developer Hub documentation on telemetry data collection](https://access.redhat.com/documentation/en-us/red_hat_developer_hub/1.8/html-single/administration_guide_for_red_hat_developer_hub/index#assembly-rhdh-telemetry_admin-rhdh).

          ## More Information

          * [Red Hat Developer Hub Product Page](https://www.redhat.com/en/technologies/cloud-computing/developer-hub)
          * [Product Documentation](https://access.redhat.com/documentation/en-us/red_hat_developer_hub)
          * [Life Cycle](https://access.redhat.com/node/7025299)
          * [Support Policies](https://access.redhat.com/policy/developerhub-support-policy)
          * [Configuring external PostgreSQL databases](https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.3/html/administration_guide_for_red_hat_developer_hub/assembly-configuring-external-postgresql-databases#assembly-configuring-external-postgresql-databases)
        displayName: Red Hat Developer Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backstage
        - RHDH
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/developer-hub/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_developer_hub
        - name: Life Cycle
          url: https://access.redhat.com/node/7025299
        - name: Support Policies
          url: https://access.redhat.com/policy/developerhub-support-policy
        - name: Sources
          url: https://github.com/redhat-developer/rhdh-operator
        maintainers:
        - email: rhdh-notifications@redhat.com
          name: Red Hat Developer Hub Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Inc.
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/rhdh/rhdh-hub-rhel9@sha256:9f870202198dca9d941ebb5321334c45cc2309bb079d2a9e602d8a099f8ffa6f
        - registry.redhat.io/rhdh/rhdh-operator-bundle@sha256:8b5ec4b6085ecb32ea52c33d97adecc313341681b41d891f5346e9b9f8b8a249
        - registry.redhat.io/rhdh/rhdh-rhel9-operator@sha256:a3e369a36f3418b596dea3b1a85d04d197d2133b33e17c943d173a1f7fd45a28
        - registry.redhat.io/rhel9/postgresql-15@sha256:8da4d3837db7dc4baaa1cc2612fe8e13b7507a4690f1ff5e5e97a26a157aa9e5
        version: 1.8.1
      entries:
      - name: rhdh-operator.v1.8.1
        version: 1.8.1
      - name: rhdh-operator.v1.8.0
        version: 1.8.0
      name: fast-1.8
    defaultChannel: fast
    packageName: rhdh
    provider:
      name: Red Hat Inc.
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-kinesis-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-kinesis-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kinesis.services.k8s.aws/v1alpha1",
                "kind": "Stream",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/kinesis-controller:1.2.0
          createdAt: "2025-11-29T05:53:34Z"
          description: AWS Kinesis controller is a service controller for managing
            Kinesis resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Stream represents the state of an AWS kinesis Stream resource.
            displayName: Stream
            kind: Stream
            name: streams.kinesis.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Kinesis resources in AWS from within your Kubernetes cluster.

          **About Amazon Kinesis**

          You can use Amazon Kinesis Data Streams to collect and process large streams of data records in real time. You can create data-processing applications, known as Kinesis Data Streams applications. A typical Kinesis Data Streams application reads data from a data stream as data records. These applications can use the Kinesis Client Library, and they can run on Amazon EC2 instances.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Kinesis
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kinesis
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Kinesis Developer Resources
          url: https://aws.amazon.com/kinesis/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: kinesis maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-kinesis-controller@sha256:739135f195f5bb2a2a6ca7095f1a0806e95aeec163b99cea67f72caab6f36358
        - public.ecr.aws/aws-controllers-k8s/kinesis-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-kinesis-controller.v1.2.0
        version: 1.2.0
      - name: ack-kinesis-controller.v1.1.1
        version: 1.1.1
      - name: ack-kinesis-controller.v1.1.0
        version: 1.1.0
      - name: ack-kinesis-controller.v1.0.16
        version: 1.0.16
      - name: ack-kinesis-controller.v1.0.15
        version: 1.0.15
      - name: ack-kinesis-controller.v1.0.14
        version: 1.0.14
      - name: ack-kinesis-controller.v1.0.13
        version: 1.0.13
      - name: ack-kinesis-controller.v1.0.12
        version: 1.0.12
      - name: ack-kinesis-controller.v1.0.11
        version: 1.0.11
      - name: ack-kinesis-controller.v1.0.10
        version: 1.0.10
      - name: ack-kinesis-controller.v1.0.9
        version: 1.0.9
      - name: ack-kinesis-controller.v1.0.8
        version: 1.0.8
      - name: ack-kinesis-controller.v1.0.7
        version: 1.0.7
      - name: ack-kinesis-controller.v1.0.6
        version: 1.0.6
      - name: ack-kinesis-controller.v1.0.5
        version: 1.0.5
      - name: ack-kinesis-controller.v1.0.4
        version: 1.0.4
      - name: ack-kinesis-controller.v1.0.3
        version: 1.0.3
      - name: ack-kinesis-controller.v1.0.2
        version: 1.0.2
      - name: ack-kinesis-controller.v1.0.1
        version: 1.0.1
      - name: ack-kinesis-controller.v1.0.0
        version: 1.0.0
      - name: ack-kinesis-controller.v0.0.19
        version: 0.0.19
      - name: ack-kinesis-controller.v0.0.18
        version: 0.0.18
      - name: ack-kinesis-controller.v0.0.17
        version: 0.0.17
      - name: ack-kinesis-controller.v0.0.16
        version: 0.0.16
      - name: ack-kinesis-controller.v0.0.15
        version: 0.0.15
      - name: ack-kinesis-controller.v0.0.10
        version: 0.0.10
      - name: ack-kinesis-controller.v0.0.9
        version: 0.0.9
      - name: ack-kinesis-controller.v0.0.8
        version: 0.0.8
      - name: ack-kinesis-controller.v0.0.6
        version: 0.0.6
      - name: ack-kinesis-controller.v0.0.5
        version: 0.0.5
      - name: ack-kinesis-controller.v0.0.4
        version: 0.0.4
      - name: ack-kinesis-controller.v0.0.3
        version: 0.0.3
      - name: ack-kinesis-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-kinesis-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Oracle Corporation
      provider-url: https://github.com/oracle/coherence-operator
    name: coherence-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: coherence-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "Coherence",
                "metadata": {
                  "name": "coherence-sample"
                },
                "spec": {
                  "replicas": 3
                }
              },
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "CoherenceJob",
                "metadata": {
                  "name": "coherence-job-sample"
                },
                "spec": {
                  "replicas": 1
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          certified: "false"
          containerImage: container-registry.oracle.com/middleware/coherence-operator:3.5.7
          createdAt: "2025-11-24T17:26:13Z"
          description: '[DEPRECATED] Use the certified Coherence Kubernetes Operator
            instead'
          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: "true"
          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"
          operatorframework.io/arch.amd64: supported
          operatorframework.io/arch.arm64: supported
          operatorframework.io/os.linux: supported
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/oracle/coherence-operator
          support: Oracle Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Coherence is the top level schema for the Coherence API and
              custom resource definition (CRD).
            displayName: Coherence
            kind: Coherence
            name: coherence.coherence.oracle.com
            version: v1
          - description: |-
              CoherenceJob is the top level schema for the CoherenceJob API and custom resource definition (CRD)
              for configuring Coherence Job workloads.
            displayName: Coherence Job
            kind: CoherenceJob
            name: coherencejob.coherence.oracle.com
            version: v1
        description: |
          The Oracle Coherence Kubernetes Operator enables easy management of Coherence clusters in a Kubernetes environment.

          ### Installation Guide & Configuration

          For the complete installation guide and all configuration options please refer to
          [Coherence Operator Documentation](https://oracle.github.io/coherence-operator/docs/latest/#/about/01_overview).
        displayName: Coherence Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Coherence
        - Oracle
        - In Memory Data
        - Caching
        links:
        - name: Coherence Kubernetes Operator
          url: https://oracle.github.io/coherence-operator/docs/latest
        - name: Oracle Coherence
          url: https://coherence.community
        maintainers:
        - email: jonathan.knight@oracle.com
          name: Jonathan Knight
        maturity: mature
        minKubeVersion: 1.26.0
        provider:
          name: Oracle Corporation
          url: https://github.com/oracle/coherence-operator
        relatedImages:
        - container-registry.oracle.com/middleware/coherence-operator:3.5.7
        - quay.io/community-operator-pipeline-prod/coherence-operator:3.5.7
        version: 3.5.7
      entries:
      - name: coherence-operator.v3.5.7
        version: 3.5.7
      - name: coherence-operator.v3.5.6
        version: 3.5.6
      - name: coherence-operator.v3.5.5
        version: 3.5.5
      - name: coherence-operator.v3.5.4
        version: 3.5.4
      - name: coherence-operator.v3.5.2
        version: 3.5.2
      - name: coherence-operator.v3.5.0
        version: 3.5.0
      - name: coherence-operator.v3.4.3
        version: 3.4.3
      name: stable
    defaultChannel: stable
    packageName: coherence-operator
    provider:
      name: Oracle Corporation
      url: https://github.com/oracle/coherence-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-opensearchservice-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-opensearchservice-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "opensearchservice.services.k8s.aws/v1alpha1",
                "kind": "Domain",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/opensearchservice-controller:1.2.0
          createdAt: "2025-11-29T05:41:58Z"
          description: AWS OpenSearch Service controller is a service controller for
            managing OpenSearch Service resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Domain represents the state of an AWS opensearchservice Domain
              resource.
            displayName: Domain
            kind: Domain
            name: domains.opensearchservice.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage OpenSearch Service resources in AWS from within your Kubernetes cluster.

          **About Amazon OpenSearch Service**

          Amazon OpenSearch Service (successor to Amazon Elasticsearch Service) is a managed service that makes it easy to deploy, operate, and scale OpenSearch clusters in the AWS Cloud. Amazon OpenSearch Service supports OpenSearch and legacy Elasticsearch OSS. When you create a cluster, you have the option of which search engine to use. OpenSearch Service offers broad compatibility with Elasticsearch OSS 7.10, the final open source version of the software. For information about what changed with the recent service renaming, and the actions you might need to take, see [Amazon OpenSearch Service - Summary of changes](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/rename.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon OpenSearch Service
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opensearchservice
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon OpenSearch Service Developer Resources
          url: https://aws.amazon.com/opensearch-service/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: opensearch service maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-opensearchservice-controller@sha256:7409b53d11987aa2d46f2bd031a3953a2ffe129769aee87f544c9ff4a4b5173e
        - public.ecr.aws/aws-controllers-k8s/opensearchservice-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-opensearchservice-controller.v1.2.0
        version: 1.2.0
      - name: ack-opensearchservice-controller.v1.1.2
        version: 1.1.2
      - name: ack-opensearchservice-controller.v1.1.1
        version: 1.1.1
      - name: ack-opensearchservice-controller.v1.1.0
        version: 1.1.0
      - name: ack-opensearchservice-controller.v1.0.15
        version: 1.0.15
      - name: ack-opensearchservice-controller.v1.0.12
        version: 1.0.12
      - name: ack-opensearchservice-controller.v1.0.10
        version: 1.0.10
      - name: ack-opensearchservice-controller.v1.0.9
        version: 1.0.9
      - name: ack-opensearchservice-controller.v1.0.8
        version: 1.0.8
      - name: ack-opensearchservice-controller.v1.0.7
        version: 1.0.7
      - name: ack-opensearchservice-controller.v1.0.6
        version: 1.0.6
      - name: ack-opensearchservice-controller.v1.0.5
        version: 1.0.5
      - name: ack-opensearchservice-controller.v1.0.4
        version: 1.0.4
      - name: ack-opensearchservice-controller.v1.0.2
        version: 1.0.2
      - name: ack-opensearchservice-controller.v1.0.1
        version: 1.0.1
      - name: ack-opensearchservice-controller.v1.0.0
        version: 1.0.0
      - name: ack-opensearchservice-controller.v0.0.28
        version: 0.0.28
      - name: ack-opensearchservice-controller.v0.0.27
        version: 0.0.27
      - name: ack-opensearchservice-controller.v0.0.26
        version: 0.0.26
      - name: ack-opensearchservice-controller.v0.0.24
        version: 0.0.24
      - name: ack-opensearchservice-controller.v0.0.23
        version: 0.0.23
      - name: ack-opensearchservice-controller.v0.0.19
        version: 0.0.19
      - name: ack-opensearchservice-controller.v0.0.17
        version: 0.0.17
      - name: ack-opensearchservice-controller.v0.0.15
        version: 0.0.15
      - name: ack-opensearchservice-controller.v0.0.14
        version: 0.0.14
      - name: ack-opensearchservice-controller.v0.0.13
        version: 0.0.13
      - name: ack-opensearchservice-controller.v0.0.12
        version: 0.0.12
      - name: ack-opensearchservice-controller.v0.0.11
        version: 0.0.11
      - name: ack-opensearchservice-controller.v0.0.10
        version: 0.0.10
      - name: ack-opensearchservice-controller.v0.0.9
        version: 0.0.9
      - name: ack-opensearchservice-controller.v0.0.8
        version: 0.0.8
      - name: ack-opensearchservice-controller.v0.0.7
        version: 0.0.7
      - name: ack-opensearchservice-controller.v0.0.6
        version: 0.0.6
      - name: ack-opensearchservice-controller.v0.0.5
        version: 0.0.5
      - name: ack-opensearchservice-controller.v0.0.4
        version: 0.0.4
      name: alpha
    defaultChannel: alpha
    packageName: ack-opensearchservice-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: mariadb-operator
      provider-url: https://github.com/mariadb-operator/mariadb-operator
    name: mariadb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mariadb-operator.v25.10.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "helm.mariadb.mmontes.io/v1alpha1",
                "kind": "MariadbOperator",
                "metadata": {
                  "name": "mariadb-operator"
                },
                "spec": {
                  "affinity": {},
                  "certController": {
                    "affinity": {},
                    "caValidity": "35064h",
                    "certValidity": "8766h",
                    "enabled": true,
                    "extrArgs": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "ha": {
                      "enabled": false,
                      "replicas": 3
                    },
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/mariadb-operator/mariadb-operator",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "lookaheadValidity": "2160h",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podSecurityContext": {},
                    "requeueDuration": "5m",
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "automount": true,
                      "enabled": true,
                      "extraLabels": {},
                      "name": ""
                    },
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "enabled": true,
                      "interval": "30s",
                      "scrapeTimeout": "25s"
                    },
                    "tolerations": []
                  },
                  "clusterName": "cluster.local",
                  "extrArgs": [],
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "fullnameOverride": "",
                  "ha": {
                    "enabled": false,
                    "replicas": 3
                  },
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/mariadb-operator/mariadb-operator",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "logLevel": "INFO",
                  "metrics": {
                    "enabled": false,
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "enabled": true,
                      "interval": "30s",
                      "scrapeTimeout": "25s"
                    }
                  },
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podSecurityContext": {},
                  "rbac": {
                    "enabled": true
                  },
                  "resources": {},
                  "securityContext": {},
                  "serviceAccount": {
                    "annotations": {},
                    "automount": true,
                    "enabled": true,
                    "extraLabels": {},
                    "name": ""
                  },
                  "tolerations": [],
                  "webhook": {
                    "affinity": {},
                    "annotations": {},
                    "cert": {
                      "caPath": "/tmp/k8s-webhook-server/certificate-authority",
                      "certManager": {
                        "duration": "",
                        "enabled": false,
                        "issuerRef": {},
                        "renewBefore": ""
                      },
                      "path": "/tmp/k8s-webhook-server/serving-certs",
                      "secretAnnotations": {}
                    },
                    "extrArgs": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "ha": {
                      "enabled": false,
                      "replicas": 3
                    },
                    "hostNetwork": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/mariadb-operator/mariadb-operator",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podSecurityContext": {},
                    "port": 10250,
                    "resources": {},
                    "securityContext": {},
                    "serviceAccount": {
                      "annotations": {},
                      "automount": true,
                      "enabled": true,
                      "extraLabels": {},
                      "name": ""
                    },
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "enabled": true,
                      "interval": "30s",
                      "scrapeTimeout": "25s"
                    },
                    "tolerations": []
                  }
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup"
                },
                "spec": {
                  "args": [
                    "--single-transaction",
                    "--all-databases"
                  ],
                  "logLevel": "info",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "suspend": false
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "backups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Connection",
                "metadata": {
                  "name": "connection"
                },
                "spec": {
                  "database": "mariadb",
                  "healthCheck": {
                    "interval": "10s",
                    "retryInterval": "3s"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "params": {
                    "parseTime": "true"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "secretName": "connection",
                  "secretTemplate": {
                    "annotations": {
                      "k8s.mariadb.com/connection": "sample"
                    },
                    "databaseKey": "database",
                    "hostKey": "host",
                    "key": "dsn",
                    "labels": {
                      "k8s.mariadb.com/connection": "sample"
                    },
                    "passwordKey": "password",
                    "portKey": "port",
                    "usernameKey": "username"
                  },
                  "serviceName": "mariadb",
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Database",
                "metadata": {
                  "name": "data-test"
                },
                "spec": {
                  "characterSet": "utf8",
                  "collate": "utf8_general_ci",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "retryInterval": "5s"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "ExternalMariaDB",
                "metadata": {
                  "name": "external-mariadb"
                },
                "spec": {
                  "connection": {
                    "healthCheck": {
                      "interval": "5s"
                    },
                    "secretName": "external-mariadb"
                  },
                  "host": "mariadb.default.svc.cluster.local",
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "port": 3306,
                  "username": "root"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Grant",
                "metadata": {
                  "name": "grant"
                },
                "spec": {
                  "database": "*",
                  "grantOption": true,
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "privileges": [
                    "SELECT",
                    "INSERT",
                    "UPDATE"
                  ],
                  "requeueInterval": "30s",
                  "retryInterval": "5s",
                  "table": "*",
                  "username": "user"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "MariaDB",
                "metadata": {
                  "name": "mariadb"
                },
                "spec": {
                  "connection": {
                    "secretName": "mariadb-conn",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "database": "mariadb",
                  "galera": {
                    "enabled": true
                  },
                  "metrics": {
                    "enabled": true,
                    "passwordSecretKeyRef": {
                      "generate": true,
                      "key": "password",
                      "name": "mariadb-metrics"
                    }
                  },
                  "myCnf": "[mariadb]\nbind-address=*\ndefault_storage_engine=InnoDB\nbinlog_format=row\ninnodb_autoinc_lock_mode=2\ninnodb_buffer_pool_size=1024M\nmax_allowed_packet=256M\n",
                  "passwordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-password"
                  },
                  "primaryConnection": {
                    "secretName": "mariadb-conn-primary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "primaryService": {
                    "type": "ClusterIP"
                  },
                  "replicas": 3,
                  "rootPasswordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-root"
                  },
                  "secondaryConnection": {
                    "secretName": "mariadb-conn-secondary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "secondaryService": {
                    "type": "ClusterIP"
                  },
                  "service": {
                    "type": "ClusterIP"
                  },
                  "storage": {
                    "size": "1Gi"
                  },
                  "updateStrategy": {
                    "type": "ReplicasFirstPrimaryLast"
                  },
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "MaxScale",
                "metadata": {
                  "name": "maxscale-galera"
                },
                "spec": {
                  "admin": {
                    "guiEnabled": true,
                    "port": 8989
                  },
                  "auth": {
                    "generate": true
                  },
                  "config": {
                    "sync": {
                      "database": "mysql",
                      "interval": "5s",
                      "timeout": "10s"
                    }
                  },
                  "connection": {
                    "port": 3306,
                    "secretName": "mxs-galera-conn"
                  },
                  "guiKubernetesService": {
                    "metadata": {
                      "annotations": {
                        "metallb.universe.tf/loadBalancerIPs": "172.18.0.231"
                      }
                    },
                    "type": "LoadBalancer"
                  },
                  "kubernetesService": {
                    "annotations": {
                      "metallb.universe.tf/loadBalancerIPs": "172.18.0.224"
                    },
                    "type": "LoadBalancer"
                  },
                  "mariaDbRef": {
                    "name": "mariadb-galera"
                  },
                  "monitor": {
                    "cooperativeMonitoring": "majority_of_all",
                    "interval": "2s",
                    "params": {
                      "available_when_donor": "false",
                      "disable_master_failback": "false",
                      "disable_master_role_setting": "false"
                    }
                  },
                  "replicas": 3,
                  "requeueInterval": "10s",
                  "services": [
                    {
                      "listener": {
                        "params": {
                          "connection_metadata": "tx_isolation=auto"
                        },
                        "port": 3306,
                        "protocol": "MariaDBProtocol"
                      },
                      "name": "rw-router",
                      "params": {
                        "master_accept_reads": "true",
                        "max_replication_lag": "3s",
                        "max_slave_connections": "255",
                        "transaction_replay": "true",
                        "transaction_replay_attempts": "10",
                        "transaction_replay_timeout": "5s"
                      },
                      "router": "readwritesplit"
                    },
                    {
                      "listener": {
                        "port": 3307
                      },
                      "name": "rconn-master-router",
                      "params": {
                        "master_accept_reads": "true",
                        "max_replication_lag": "3s",
                        "router_options": "master"
                      },
                      "router": "readconnroute"
                    },
                    {
                      "listener": {
                        "port": 3308
                      },
                      "name": "rconn-slave-router",
                      "params": {
                        "max_replication_lag": "3s",
                        "router_options": "slave"
                      },
                      "router": "readconnroute"
                    }
                  ]
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "PhysicalBackup",
                "metadata": {
                  "name": "physicalbackup"
                },
                "spec": {
                  "compression": "bzip2",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "podAffinity": true,
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "immediate": true,
                    "suspend": false
                  },
                  "serviceAccountName": "backup",
                  "stagingStorage": {
                    "persistentVolumeClaim": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "1Gi"
                        }
                      }
                    }
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "physicalbackups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "region": "us-east-1",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  },
                  "timeout": "1h"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore"
                },
                "spec": {
                  "backupRef": {
                    "name": "backup"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "targetRecoveryTime": "2023-12-19T09:00:00Z"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "SqlJob",
                "metadata": {
                  "name": "03-stars"
                },
                "spec": {
                  "database": "mariadb",
                  "dependsOn": [
                    {
                      "name": "01-users"
                    },
                    {
                      "name": "02-repos"
                    }
                  ],
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "suspend": false
                  },
                  "sql": "CREATE TABLE IF NOT EXISTS stars (\n  id bigint PRIMARY KEY AUTO_INCREMENT,\n  user_id bigint NOT NULL,\n  repo_id bigint NOT NULL,\n  FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,\n  FOREIGN KEY (repo_id) REFERENCES repos(id) ON DELETE CASCADE,\n  UNIQUE KEY (user_id, repo_id)\n);\nINSERT INTO stars(user_id, repo_id) \n  VALUES((SELECT id FROM users ORDER BY RAND() LIMIT 1), (SELECT id FROM repos ORDER BY RAND() LIMIT 1))\n  ON DUPLICATE KEY UPDATE id=id;\nDELETE FROM stars WHERE id = (SELECT id FROM stars ORDER BY RAND() LIMIT 1);\nSELECT r.name AS repo, COUNT(*) AS stars\nFROM stars s\nJOIN repos r\nON s.repo_id = r.id\nGROUP BY r.id\nORDER BY stars DESC;",
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "k8s.mariadb.com/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "user"
                },
                "spec": {
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxUserConnections": 20,
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "retryInterval": "5s"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: ghcr.io/mariadb-operator/mariadb-operator-helm:25.10.3
          createdAt: "2025-12-24T12:25:03Z"
          description: Run and operate MariaDB in a cloud native way
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/mariadb-operator/mariadb-operator
          support: mariadb-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Configures a backup
            displayName: Backup
            kind: Backup
            name: backups.k8s.mariadb.com
            version: v1alpha1
          - description: Configures a connection
            displayName: Connection
            kind: Connection
            name: connections.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a logical database
            displayName: Database
            kind: Database
            name: databases.k8s.mariadb.com
            version: v1alpha1
          - description: Configures an external MariaDB resource
            displayName: ExternalMariaDB
            kind: ExternalMariaDB
            name: externalmariadbs.k8s.mariadb.com
            version: v1alpha1
          - description: Grants permissions to an user in a database
            displayName: Grant
            kind: Grant
            name: grants.k8s.mariadb.com
            version: v1alpha1
          - description: Configures MariaDB helm chart based operator
            displayName: MariadbOperator
            kind: MariadbOperator
            name: mariadboperators.helm.mariadb.mmontes.io
            version: v1alpha1
          - description: Provisions a MariaDB instance
            displayName: MariaDB
            kind: MariaDB
            name: mariadbs.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a MaxScale database proxy
            displayName: MaxScale
            kind: MaxScale
            name: maxscales.k8s.mariadb.com
            version: v1alpha1
          - description: Configures a physical backup
            displayName: PhysicalBackup
            kind: PhysicalBackup
            name: physicalbackups.k8s.mariadb.com
            version: v1alpha1
          - description: Restores a backup
            displayName: Restore
            kind: Restore
            name: restores.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a SQL job
            displayName: SqlJob
            kind: SqlJob
            name: sqljobs.k8s.mariadb.com
            version: v1alpha1
          - description: Defines a user
            displayName: User
            kind: User
            name: users.k8s.mariadb.com
            version: v1alpha1
        description: |
          Install [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) via [OLM](https://olm.operatorframework.io/) using the [helm chart](https://artifacthub.io/packages/helm/mariadb-operator/mariadb-operator).

          This helm operator provides provides a 1:1 mapping between the official helm chart and the [`MariadbOperator`](https://github.com/mariadb-operator/mariadb-operator-helm/blob/main/config/samples/helm_v1alpha1_mariadboperator.yaml) CRD, allowing to install [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) via OLM without having to do any change in the helm chart.

          Normally, you would install [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) providing this `values.yaml` to the helm chart:
          ```yaml
          image:
            repository: ghcr.io/mariadb-operator/mariadb-operator
            pullPolicy: IfNotPresent
          logLevel: INFO
          ha:
            enabled: true
          metrics:
            enabled: true
            serviceMonitor:
              enabled: true
          webhook:
            cert:
              certManager:
                enabled: true
          ```

          This helm chart installation is abstracted in the [`MariadbOperator`](https://github.com/mariadb-operator/mariadb-operator-helm/blob/main/config/samples/helm_v1alpha1_mariadboperator.yaml) CRD, which will be reconciled by the helm operator:
          ```yaml
          apiVersion: helm.k8s.mariadb.com/v1alpha1
          kind: MariadbOperator
          metadata:
            name: mariadb-operator
          spec:
            image:
              repository: ghcr.io/mariadb-operator/mariadb-operator
              pullPolicy: IfNotPresent
            logLevel: INFO
            ha:
              enabled: true
            metrics:
              enabled: true
              serviceMonitor:
                enabled: true
            webhook:
              cert:
                certManager:
                  enabled: true
          ```

          Once you have installed the operator, you will able to install a [`MariaDB`](https://github.com/mariadb-operator/mariadb-operator/blob/main/examples/manifests/mariadb_v1alpha1_mariadb.yaml) instance. Refer to the main [`mariadb-operator`](https://github.com/mariadb-operator/mariadb-operator) documentation for getting started with the rest of CRDs.

          ## Documentation
          * [mariadb-operator](https://github.com/mariadb-operator/mariadb-operator/blob/main/README.md)
          * [mariadb-operator-helm](https://github.com/mariadb-operator/mariadb-operator-helm/blob/main/README.md)

          ## Releases
          This operator is automatically published in the following repositories whenever a new version of the [helm chart](https://artifacthub.io/packages/helm/mariadb-operator/mariadb-operator) is released:
          - [k8s-operatorhub/community-operators](https://github.com/k8s-operatorhub/community-operators)
          - [redhat-openshift-ecosystem/community-operators-prod](https://github.com/redhat-openshift-ecosystem/community-operators-prod)

          ## Roadmap
          Take a look at our [roadmap](https://github.com/mariadb-operator/mariadb-operator/blob/main/ROADMAP.md) and feel free to open an issue to suggest new features.

          ## Contributing
          We welcome and encourage contributions to this project! Please check our [contributing](https://github.com/mariadb-operator/mariadb-operator/blob/main/CONTRIBUTING.md) and [development](https://github.com/mariadb-operator/mariadb-operator/blob/main/docs/DEVELOPMENT.md) guides. PRs welcome!

          ## Get in touch
          Join us on Slack: **[MariaDB Community Slack](https://r.mariadb.com/join-community-slack)**.
        displayName: MariaDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mariadb
        - mysql
        - operator
        - mariadb-operator
        - database
        - maxscale
        links:
        - name: GitHub
          url: https://github.com/mariadb-operator/mariadb-operator
        maintainers:
        - email: mariadb-operator@proton.me
          name: mmontes11
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: mariadb-operator
          url: https://github.com/mariadb-operator/mariadb-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/mariadb-operator@sha256:472977c3b911835b41c6e9a7486d0caa7c22e6beb44fb67cb0fb4b64f09084b9
        - ghcr.io/mariadb-operator/mariadb-operator-helm:25.10.3
        version: 25.10.3
      entries:
      - name: mariadb-operator.v25.10.3
        version: 25.10.3
      - name: mariadb-operator.v25.10.2
        version: 25.10.2
      - name: mariadb-operator.v25.10.1
        version: 25.10.1
      - name: mariadb-operator.v25.10.0
        version: 25.10.0
      - name: mariadb-operator.v25.8.4
        version: 25.8.4
      - name: mariadb-operator.v25.8.3
        version: 25.8.3
      - name: mariadb-operator.v25.8.2
        version: 25.8.2
      - name: mariadb-operator.v25.8.1
        version: 25.8.1
      - name: mariadb-operator.v25.8.0
        version: 25.8.0
      - name: mariadb-operator.v0.38.0
        version: 0.38.0
      - name: mariadb-operator.v0.37.1
        version: 0.37.1
      - name: mariadb-operator.v0.37.0
        version: 0.37.0
      - name: mariadb-operator.v0.36.0
        version: 0.36.0
      - name: mariadb-operator.v0.35.1
        version: 0.35.1
      - name: mariadb-operator.v0.35.0
        version: 0.35.0
      - name: mariadb-operator.v0.34.0
        version: 0.34.0
      - name: mariadb-operator.v0.33.0
        version: 0.33.0
      - name: mariadb-operator.v0.32.0
        version: 0.32.0
      - name: mariadb-operator.v0.31.0
        version: 0.31.0
      - name: mariadb-operator.v0.30.0
        version: 0.30.0
      - name: mariadb-operator.v0.29.0
        version: 0.29.0
      - name: mariadb-operator.v0.28.1
        version: 0.28.1
      - name: mariadb-operator.v0.27.0
        version: 0.27.0
      - name: mariadb-operator.v0.26.0
        version: 0.26.0
      - name: mariadb-operator.v0.24.0
        version: 0.24.0
      - name: mariadb-operator.v0.23.1
        version: 0.23.1
      - name: mariadb-operator.v0.23.0
        version: 0.23.0
      - name: mariadb-operator.v0.22.0
        version: 0.22.0
      - name: mariadb-operator.v0.21.0
        version: 0.21.0
      - name: mariadb-operator.v0.20.0
        version: 0.20.0
      - name: mariadb-operator.v0.19.0
        version: 0.19.0
      - name: mariadb-operator.v0.18.0
        version: 0.18.0
      - name: mariadb-operator.v0.17.0
        version: 0.17.0
      - name: mariadb-operator.v0.16.0
        version: 0.16.0
      - name: mariadb-operator.v0.15.1
        version: 0.15.1
      - name: mariadb-operator.v0.15.0
        version: 0.15.0
      - name: mariadb-operator.v0.14.0
        version: 0.14.0
      - name: mariadb-operator.v0.13.0
        version: 0.13.0
      - name: mariadb-operator.v0.11.0
        version: 0.11.0
      - name: mariadb-operator.v0.10.0
        version: 0.10.0
      - name: mariadb-operator.v0.9.1
        version: 0.9.1
      - name: mariadb-operator.v0.9.0
        version: 0.9.0
      - name: mariadb-operator.v0.8.0
        version: 0.8.0
      - name: mariadb-operator.v0.7.1
        version: 0.7.1
      - name: mariadb-operator.v0.7.0
        version: 0.7.0
      - name: mariadb-operator.v0.6.7
        version: 0.6.7
      - name: mariadb-operator.v0.6.6
        version: 0.6.6
      - name: mariadb-operator.v0.6.5
        version: 0.6.5
      - name: mariadb-operator.v0.6.4
        version: 0.6.4
      name: alpha
    defaultChannel: alpha
    packageName: mariadb-operator
    provider:
      name: mariadb-operator
      url: https://github.com/mariadb-operator/mariadb-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: tempo-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tempo-operator.v0.19.0-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoMonolithic",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "jaegerui": {
                    "enabled": true,
                    "resources": {
                      "limits": {
                        "cpu": "2",
                        "memory": "2Gi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "resources": {
                    "limits": {
                      "cpu": "2",
                      "memory": "2Gi"
                    }
                  },
                  "storage": {
                    "traces": {
                      "backend": "memory"
                    }
                  }
                }
              },
              {
                "apiVersion": "tempo.grafana.com/v1alpha1",
                "kind": "TempoStack",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "resources": {
                    "total": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2Gi"
                      }
                    }
                  },
                  "storage": {
                    "secret": {
                      "name": "my-storage-secret",
                      "type": "s3"
                    }
                  },
                  "storageSize": "1Gi",
                  "template": {
                    "queryFrontend": {
                      "jaegerQuery": {
                        "enabled": true,
                        "ingress": {
                          "type": "route"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/rhosdt/tempo-rhel8-operator@sha256:2b2a842990cabc139c7cc4fdeb4c681cc2221e95d49f713a3b9608dadbc51265
          createdAt: 16 Dec 2025, 17:37
          description: Create and manage deployments of Tempo, a high-scale distributed
            tracing backend.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=0.6.0 <0.19.0-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-tempo-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/grafana/tempo-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TempoMonolithic manages a Tempo deployment in monolithic
              mode.
            displayName: TempoMonolithic
            kind: TempoMonolithic
            name: tempomonolithics.tempo.grafana.com
            version: v1alpha1
          - description: TempoStack manages a Tempo deployment in microservices mode.
            displayName: TempoStack
            kind: TempoStack
            name: tempostacks.tempo.grafana.com
            version: v1alpha1
        description: |-
          Red Hat OpenShift distributed tracing platform based on Tempo. Tempo is an open-source, easy-to-use, and highly scalable distributed tracing backend. It provides observability for microservices architectures by allowing developers to track requests as they flow through distributed systems. Tempo is optimized to handle large volumes of trace data and is designed to be highly performant even under heavy loads.
          It can ingest common open source tracing protocols including Jaeger, Zipkin, and OpenTelemetry and requires only object storage to operate.

          The Tempo Operator supports Tempo deployments in Microservices mode (`TempoStack` CR) and Monolithic mode (`TempoMonolithic` CR).

          ### Core capabilities
          Tempo is used for monitoring and troubleshooting microservices-based distributed systems, including:
          * Distributed transaction monitoring
          * Root cause analysis
          * Performance / latency optimization

          ### Operator features
          * **Resource Limits** - Specify overall resource requests and limits in the `TempoStack` CR; the operator assigns fractions of it to each component
          * **AuthN and AuthZ** - Supports OpenID Control (OIDC) and role-based access control (RBAC)
          * **Managed upgrades** - Updating the operator will automatically update all managed Tempo clusters
          * **Multitenancy** - Multiple tenants can send traces to the same Tempo cluster
          * **mTLS** - Communication between the Tempo components can be secured via mTLS
          * **Jaeger UI** - Traces can be visualized in Jaeger UI and exposed via Ingress or OpenShift Route
          * **Observability** - The operator and `TempoStack` operands expose telemetry (metrics, traces) and integrate with Prometheus `ServiceMonitor` and `PrometheusRule`

          ### Before you start
          `TempoStack` requires object storage to store its traces. `TempoMonolithic` can store traces in-memory, in a Persistent Volume and in object storage.
          Please ensure that your system has a compatible object storage solution that is supported, such as OpenShift Data Foundation, Minio, AWS S3, Azure Storage, or Google Cloud Storage.

          ### Examples
          There is a list of examples to help you deploy different configurations in [this GitHub repository](https://github.com/os-observability/redhat-rhosdt-samples).

          ### Support & Troubleshooting
          Tempo Operator is available and supported as part of a Red Hat OpenShift subscription.
          Checking the [Red Hat Documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/distributed_tracing) is recommended when installing, configuring, and managing the Operator and instances.
        displayName: Tempo Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tempo
        - tracing
        - observability
        - monitoring
        - database
        links:
        - name: Tempo Operator
          url: https://github.com/grafana/tempo-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat support
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6bcfa981a7a75c242a16afa6dab36bf6e3b8a1442fa863875919ad551f48eceb
        - registry.redhat.io/rhosdt/tempo-gateway-opa-rhel8@sha256:18b76c6fd9ad82b8c62830f89332f85fa8d68e583f647a48b478fc44793d1261
        - registry.redhat.io/rhosdt/tempo-gateway-rhel8@sha256:b49ff19c40327b90a149edc98a57887f44c88310489dfca33c62b201d1faee58
        - registry.redhat.io/rhosdt/tempo-jaeger-query-rhel8@sha256:2c587b52015b07feea05c7cdb79e20362675bb5073e50eee1114476a9ca405dc
        - registry.redhat.io/rhosdt/tempo-query-rhel8@sha256:3aa486ed176f695af57b2b8d58dc53a070fbcef3ba0f233afdde0656eb55d5f6
        - registry.redhat.io/rhosdt/tempo-rhel8-operator@sha256:2b2a842990cabc139c7cc4fdeb4c681cc2221e95d49f713a3b9608dadbc51265
        - registry.redhat.io/rhosdt/tempo-rhel8@sha256:49c858da31e0bbede4ad67a1b34fac2910a777677ea46d2460b3c11ac51c6bab
        - registry.redhat.io/rhosdt/tempo-operator-bundle@sha256:59faa931ced3fb7d6121c0dd212e0a43e99d6e09d01a8eb0cf77694dabaabdac
        version: 0.19.0-2
      entries:
      - name: tempo-operator.v0.19.0-2
        version: 0.19.0-2
      - name: tempo-operator.v0.19.0-1
        version: 0.19.0-1
      - name: tempo-operator.v0.18.0-2
        version: 0.18.0-2
      - name: tempo-operator.v0.18.0-1
        version: 0.18.0-1
      - name: tempo-operator.v0.16.0-2
        version: 0.16.0-2
      - name: tempo-operator.v0.16.0-1
        version: 0.16.0-1
      - name: tempo-operator.v0.15.4-1
        version: 0.15.4-1
      - name: tempo-operator.v0.15.3-1
        version: 0.15.3-1
      - name: tempo-operator.v0.14.1-2
        version: 0.14.1-2
      - name: tempo-operator.v0.14.1-1
        version: 0.14.1-1
      - name: tempo-operator.v0.13.0-1-0.1730817419.p
        version: 0.13.0-1+0.1730817419.p
      - name: tempo-operator.v0.13.0-1
        version: 0.13.0-1
      - name: tempo-operator.v0.10.0-8
        version: 0.10.0-8
      - name: tempo-operator.v0.10.0-7
        version: 0.10.0-7
      - name: tempo-operator.v0.10.0-6
        version: 0.10.0-6
      - name: tempo-operator.v0.8.0-3
        version: 0.8.0-3
      - name: tempo-operator.v0.8.0-2
        version: 0.8.0-2
      - name: tempo-operator.v0.6.0-2
        version: 0.6.0-2
      - name: tempo-operator.v0.3.1-3
        version: 0.3.1-3
      - name: tempo-operator.v0.1.0-6
        version: 0.1.0-6
      - name: tempo-operator.v0.1.0-6-0.1687199947.p
        version: 0.1.0-6+0.1687199947.p
      name: stable
    defaultChannel: stable
    packageName: tempo-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-elasticache-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-elasticache-controller.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "CacheParameterGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "CacheSubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "ReplicationGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "Snapshot",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elasticache.services.k8s.aws/v1alpha1",
                "kind": "UserGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/elasticache-controller:1.3.1
          createdAt: "2025-12-24T21:35:58Z"
          description: AWS ElastiCache controller is a service controller for managing
            ElastiCache resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CacheCluster represents the state of an AWS elasticache CacheCluster
              resource.
            displayName: CacheCluster
            kind: CacheCluster
            name: cacheclusters.elasticache.services.k8s.aws
            version: v1alpha1
          - description: CacheParameterGroup represents the state of an AWS elasticache
              CacheParameterGroup resource.
            displayName: CacheParameterGroup
            kind: CacheParameterGroup
            name: cacheparametergroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: CacheSubnetGroup represents the state of an AWS elasticache
              CacheSubnetGroup resource.
            displayName: CacheSubnetGroup
            kind: CacheSubnetGroup
            name: cachesubnetgroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: ReplicationGroup represents the state of an AWS elasticache
              ReplicationGroup resource.
            displayName: ReplicationGroup
            kind: ReplicationGroup
            name: replicationgroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: ServerlessCache represents the state of an AWS elasticache
              ServerlessCache resource.
            displayName: ServerlessCache
            kind: ServerlessCache
            name: serverlesscaches.elasticache.services.k8s.aws
            version: v1alpha1
          - description: ServerlessCacheSnapshot represents the state of an AWS elasticache
              ServerlessCacheSnapshot resource.
            displayName: ServerlessCacheSnapshot
            kind: ServerlessCacheSnapshot
            name: serverlesscachesnapshots.elasticache.services.k8s.aws
            version: v1alpha1
          - description: Snapshot represents the state of an AWS elasticache Snapshot
              resource.
            displayName: Snapshot
            kind: Snapshot
            name: snapshots.elasticache.services.k8s.aws
            version: v1alpha1
          - description: UserGroup represents the state of an AWS elasticache UserGroup
              resource.
            displayName: UserGroup
            kind: UserGroup
            name: usergroups.elasticache.services.k8s.aws
            version: v1alpha1
          - description: User represents the state of an AWS elasticache User resource.
            displayName: User
            kind: User
            name: users.elasticache.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon ElastiCache resources in AWS from within your Kubernetes cluster.

          **About Amazon ElastiCache**

          Amazon ElastiCache allows you to seamlessly set up, run, and scale popular open-source compatible in-memory data stores in the cloud. Build data-intensive apps or boost the performance of your existing databases by retrieving data from high throughput and low latency in-memory data stores. Amazon ElastiCache is a popular choice for real-time use cases like Caching, Session Stores, Gaming, Geospatial Services, Real-Time Analytics, and Queuing.

          Amazon ElastiCache offers fully managed Redis, voted the most loved database by developers in the Stack Overflow 2020 Developer Survey, and Memcached for your most demanding applications that require sub-millisecond response times.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ElastiCache
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - elasticache
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ElastiCache Developer Resources
          url: https://aws.amazon.com/elasticache/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: elasticache maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/elasticache-controller:1.3.1
        - quay.io/community-operator-pipeline-prod/ack-elasticache-controller@sha256:baece0405590a42b0406416b7475a82618e9d6857f2cf2feae6c9ddc8e484157
        version: 1.3.1
      entries:
      - name: ack-elasticache-controller.v1.3.1
        version: 1.3.1
      - name: ack-elasticache-controller.v1.3.0
        version: 1.3.0
      - name: ack-elasticache-controller.v1.2.4
        version: 1.2.4
      - name: ack-elasticache-controller.v1.2.3
        version: 1.2.3
      - name: ack-elasticache-controller.v1.2.2
        version: 1.2.2
      - name: ack-elasticache-controller.v1.2.1
        version: 1.2.1
      - name: ack-elasticache-controller.v1.2.0
        version: 1.2.0
      - name: ack-elasticache-controller.v1.1.0
        version: 1.1.0
      - name: ack-elasticache-controller.v1.0.7
        version: 1.0.7
      - name: ack-elasticache-controller.v1.0.6
        version: 1.0.6
      - name: ack-elasticache-controller.v1.0.5
        version: 1.0.5
      - name: ack-elasticache-controller.v1.0.4
        version: 1.0.4
      - name: ack-elasticache-controller.v1.0.3
        version: 1.0.3
      - name: ack-elasticache-controller.v1.0.2
        version: 1.0.2
      - name: ack-elasticache-controller.v1.0.1
        version: 1.0.1
      - name: ack-elasticache-controller.v1.0.0
        version: 1.0.0
      - name: ack-elasticache-controller.v0.2.6
        version: 0.2.6
      - name: ack-elasticache-controller.v0.2.5
        version: 0.2.5
      - name: ack-elasticache-controller.v0.2.4
        version: 0.2.4
      - name: ack-elasticache-controller.v0.2.3
        version: 0.2.3
      - name: ack-elasticache-controller.v0.2.2
        version: 0.2.2
      - name: ack-elasticache-controller.v0.2.1
        version: 0.2.1
      - name: ack-elasticache-controller.v0.2.0
        version: 0.2.0
      - name: ack-elasticache-controller.v0.1.1
        version: 0.1.1
      - name: ack-elasticache-controller.v0.1.0
        version: 0.1.0
      - name: ack-elasticache-controller.v0.0.31
        version: 0.0.31
      - name: ack-elasticache-controller.v0.0.30
        version: 0.0.30
      - name: ack-elasticache-controller.v0.0.29
        version: 0.0.29
      - name: ack-elasticache-controller.v0.0.28
        version: 0.0.28
      - name: ack-elasticache-controller.v0.0.27
        version: 0.0.27
      - name: ack-elasticache-controller.v0.0.26
        version: 0.0.26
      - name: ack-elasticache-controller.v0.0.25
        version: 0.0.25
      - name: ack-elasticache-controller.v0.0.24
        version: 0.0.24
      - name: ack-elasticache-controller.v0.0.23
        version: 0.0.23
      - name: ack-elasticache-controller.v0.0.22
        version: 0.0.22
      - name: ack-elasticache-controller.v0.0.21
        version: 0.0.21
      - name: ack-elasticache-controller.v0.0.20
        version: 0.0.20
      - name: ack-elasticache-controller.v0.0.19
        version: 0.0.19
      - name: ack-elasticache-controller.v0.0.18
        version: 0.0.18
      - name: ack-elasticache-controller.v0.0.17
        version: 0.0.17
      - name: ack-elasticache-controller.v0.0.16
        version: 0.0.16
      - name: ack-elasticache-controller.v0.0.15
        version: 0.0.15
      - name: ack-elasticache-controller.v0.0.14
        version: 0.0.14
      - name: ack-elasticache-controller.v0.0.13
        version: 0.0.13
      - name: ack-elasticache-controller.v0.0.12
        version: 0.0.12
      - name: ack-elasticache-controller.v0.0.11
        version: 0.0.11
      - name: ack-elasticache-controller.v0.0.10
        version: 0.0.10
      - name: ack-elasticache-controller.v0.0.9
        version: 0.0.9
      - name: ack-elasticache-controller.v0.0.8
        version: 0.0.8
      name: alpha
    defaultChannel: alpha
    packageName: ack-elasticache-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudtrail-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudtrail-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cloudtrail.services.k8s.aws/v1alpha1",
                "kind": "EventDataStore",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "cloudtrail.services.k8s.aws/v1alpha1",
                "kind": "Trail",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudtrail-controller:1.2.0
          createdAt: "2025-11-29T04:04:51Z"
          description: AWS CloudTrail controller is a service controller for managing
            CloudTrail resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EventDataStore represents the state of an AWS cloudtrail
              EventDataStore resource.
            displayName: EventDataStore
            kind: EventDataStore
            name: eventdatastores.cloudtrail.services.k8s.aws
            version: v1alpha1
          - description: Trail represents the state of an AWS cloudtrail Trail resource.
            displayName: Trail
            kind: Trail
            name: trails.cloudtrail.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Elastic Compute Cloud (CloudTrail) resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudTrail**

          AWS CloudTrail is an AWS service that helps you enable operational and risk auditing, governance, and compliance of your AWS account. Actions taken by a user, role, or an AWS service are recorded as events in CloudTrail. Events include actions taken in the AWS Management Console, AWS Command Line Interface, and AWS SDKs and APIs.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon CloudTrail
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudtrail
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudTrail Developer Resources
          url: https://aws.amazon.com/cloudtrail/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudtrail maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-cloudtrail-controller@sha256:afee911b61274480b95dfdd96b7266d867c8ec5ad9b38d473d509e32dd279e1b
        - public.ecr.aws/aws-controllers-k8s/cloudtrail-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-cloudtrail-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudtrail-controller.v1.1.1
        version: 1.1.1
      - name: ack-cloudtrail-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudtrail-controller.v1.0.28
        version: 1.0.28
      - name: ack-cloudtrail-controller.v1.0.26
        version: 1.0.26
      - name: ack-cloudtrail-controller.v1.0.25
        version: 1.0.25
      - name: ack-cloudtrail-controller.v1.0.24
        version: 1.0.24
      - name: ack-cloudtrail-controller.v1.0.23
        version: 1.0.23
      - name: ack-cloudtrail-controller.v1.0.22
        version: 1.0.22
      - name: ack-cloudtrail-controller.v1.0.21
        version: 1.0.21
      - name: ack-cloudtrail-controller.v1.0.20
        version: 1.0.20
      - name: ack-cloudtrail-controller.v1.0.19
        version: 1.0.19
      - name: ack-cloudtrail-controller.v1.0.16
        version: 1.0.16
      - name: ack-cloudtrail-controller.v1.0.15
        version: 1.0.15
      - name: ack-cloudtrail-controller.v1.0.14
        version: 1.0.14
      - name: ack-cloudtrail-controller.v1.0.13
        version: 1.0.13
      - name: ack-cloudtrail-controller.v1.0.12
        version: 1.0.12
      - name: ack-cloudtrail-controller.v1.0.11
        version: 1.0.11
      - name: ack-cloudtrail-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudtrail-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudtrail-controller.v1.0.5
        version: 1.0.5
      - name: ack-cloudtrail-controller.v1.0.4
        version: 1.0.4
      - name: ack-cloudtrail-controller.v1.0.3
        version: 1.0.3
      - name: ack-cloudtrail-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudtrail-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudtrail-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudtrail-controller.v0.1.3
        version: 0.1.3
      - name: ack-cloudtrail-controller.v0.1.2
        version: 0.1.2
      - name: ack-cloudtrail-controller.v0.1.1
        version: 0.1.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudtrail-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: cloud-bulldozer
      provider-url: ""
    name: ripsaw
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ripsaw.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery, Cloud Provider
          containerImage: quay.io/cloud-bulldozer/benchmark-operator:latest
          description: '[Benchmark-operator](https://github.com/cloud-bulldozer/ripsaw/)
            is a benchmarking tool to benchmark your kubernetes cluster. The intent
            of this Operator is to deploy common workloads to establish a performance
            baseline of Kubernetes cluster'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/cloud-bulldozer/benchmark-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Benchmark
            name: benchmarks.ripsaw.cloudbulldozer.io
            version: v1alpha1
        description: '[Benchmark-operator](https://github.com/cloud-bulldozer/benchmark-operator/)
          is a benchmarking tool to benchmark your kubernetes cluster. The intent
          of this Operator is to deploy common workloads to establish a performance
          baseline of Kubernetes cluster'
        displayName: benchmark-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - performance
        - benchmark
        links:
        - name: Site
          url: https://github.com/cloud-bulldozer/benchmark-operator
        - name: Documentation
          url: https://github.com/cloud-bulldozer/benchmark-operator/tree/master/docs
        maintainers:
        - email: rsevilla@redhat.com
          name: rsevilla87
        - email: jtaleric@redhat.com
          name: jtaleric
        - email: rzaleski@redhat.com
          name: dry939
        - email: kwhitley@redhat.com
          name: whitleykeith
        maturity: alpha
        provider:
          name: cloud-bulldozer
        relatedImages:
        - quay.io/cloud-bulldozer/benchmark-operator:latest
        - quay.io/openshift-community-operators/ripsaw@sha256:ff8d796d5bd6c8cb0e155b3ced631122397758eb472470223e30352eeddba480
        - k8s.gcr.io/redis:v1
        version: 0.1.0
      entries:
      - name: ripsaw.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ripsaw
    provider:
      name: cloud-bulldozer
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ocs-client-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ocs-client-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-client-console"]'
          containerImage: registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:b2fe175cc0154906ecab7e0a0a4712e76f204db55fc9b4d32fcda27446e5f1be
          createdAt: "2025-12-18T07:54:46Z"
          description: OpenShift Data Foundation client operator enables consumption
            of storage services from a remote centralized OpenShift Data Foundation
            provider cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/red-hat-storage/ocs-client-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StorageClient is the Schema for the storageclients API
            displayName: Storage Client
            kind: StorageClient
            name: storageclients.ocs.openshift.io
            version: v1alpha1
        description: OpenShift Data Foundation client operator enables consumption
          of storage services from a remote centralized OpenShift Data Foundation
          provider cluster.
        displayName: OpenShift Data Foundation Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: OCS Client Operator
          url: https://github.com/red-hat-storage/ocs-client-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/ocs-client-operator-bundle@sha256:8417c655f110b508f858c1ff2a3d0315e0dab9baba9afec846f61c71cb294477
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:de6cd74955a0403d8ff97490a657b941316d69922e901fa3513f1837fb8d981b
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:3b0bc531e3fa6bb798739380361096ec8df84f0637f36b32ad4115a3c7b3be4d
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:5ee2a17163eb3a989d45c1ae90175a88b35d2f5ac4dd824f8210626d58627449
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:b2fe175cc0154906ecab7e0a0a4712e76f204db55fc9b4d32fcda27446e5f1be
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:e1d824c160ed39df2024e6cccd2269f0de9a3933986765d9d5d038b2c95e447f
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        version: 4.19.9-rhodf
      entries:
      - name: ocs-client-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: ocs-client-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: ocs-client-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: ocs-client-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: ocs-client-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: ocs-client-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: ocs-client-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: ocs-client-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: ocs-client-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: ocs-client-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: ocs-client-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Storage
          console.openshift.io/plugins: '["odf-client-console"]'
          containerImage: registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:f1553f73f4ce2390424d5f9153851e303564e7c50d769b5710adfe0ec5aca3cd
          createdAt: "2025-12-18T07:41:10Z"
          description: OpenShift Data Foundation client operator enables consumption
            of storage services from a remote centralized OpenShift Data Foundation
            provider cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/red-hat-storage/ocs-client-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StorageClient is the Schema for the storageclients API
            displayName: Storage Client
            kind: StorageClient
            name: storageclients.ocs.openshift.io
            version: v1alpha1
        description: OpenShift Data Foundation client operator enables consumption
          of storage services from a remote centralized OpenShift Data Foundation
          provider cluster.
        displayName: OpenShift Data Foundation Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - data
        - storage
        links:
        - name: OCS Client Operator
          url: https://github.com/red-hat-storage/ocs-client-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:a5773172f8fa4674b15e0df4c9cbe60885c0e7573c8504093a5432aef8303549
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:3d85e5161ec1511faac9222530a6053535743f3350533c527531a2302b32e3b8
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:dce5c8814030bf036efc929f71b7c75e79c32be800b72dd15328e79d408cd1be
        - registry.redhat.io/odf4/cephcsi-rhel9@sha256:565ad6527ce91641c2d66c42ff44e60ed469e658edfb441f2cfcee83237cbc34
        - registry.redhat.io/odf4/odf-external-snapshotter-sidecar-rhel9@sha256:87b5909be13793b80ab8cb916458c8863bdff29a7391630af0707b39080b8ebb
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:8df26600620a65df73917b216542d7532e88feb0ea3ae67c88ced0179d36e844
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:5ee2a17163eb3a989d45c1ae90175a88b35d2f5ac4dd824f8210626d58627449
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:6417e373fc9fbf4f3b5eaec64eff3d8eb74b8561d2e2f883f1a3c9ad688c8171
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c8bba9778d65fdae86b11402660ad5927601298ec09ab10c74b103c0a523c3b3
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:4b5c41ad9dc14dcf546eb77ceddfa6bf5576eef5d8e7b439452718128a4c5cd7
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:7ae5cd1afb0ba1a7e28acb6631b3fe7ec3e23fbba782162baa2df847de61b28e
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:eea223256d9d36b28d116e91907a0e9e537201b3de68c8b101b9ecbfcc3bc707
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:fc592ec120c7cd6222830082074ddc769e307ef73f00b1576c73e2a2de771bb8
        - registry.redhat.io/odf4/ocs-client-rhel9-operator@sha256:f1553f73f4ce2390424d5f9153851e303564e7c50d769b5710adfe0ec5aca3cd
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:98f2f931b23902b0f46ef1214b49b330571e755ae2e5a82647da409607c02430
        - registry.redhat.io/openshift4/ose-csi-external-snapshot-metadata-rhel9@sha256:da5c73b33774046408736738fac6e4bd82fc0f7c0a6e966e788941e81746fd28
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a685dde2117bddaf0502c3983f22a1bd595c2d3c85c83b68572a1f02ea69b6d1
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:5976ef0690b86f39e77b0f87c7a8bcf0ba7ad772fcf5784168c3377f4655c399
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/odf4/ocs-client-operator-bundle@sha256:a7a7533e91939980298a9b097ae535a40fb179a4f4d26b3194b13c396b845d17
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:267f8727ac339309499b624003331738d8adcabff7233dac22daf14f736dc165
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:e1d824c160ed39df2024e6cccd2269f0de9a3933986765d9d5d038b2c95e447f
        - registry.redhat.io/odf4/ocs-client-console-rhel9@sha256:954212cfe5ee83f95fb844f0b59d2c5230c0a0a0135ab4953f24e29ef4cd0157
        version: 4.20.4-rhodf
      entries:
      - name: ocs-client-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: ocs-client-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: ocs-client-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: ocs-client-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: ocs-client-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: ocs-client-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-wafv2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-wafv2-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wafv2.services.k8s.aws/v1alpha1",
                "kind": "IPSet",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/wafv2-controller:1.2.0
          createdAt: "2025-11-29T05:17:18Z"
          description: AWS WAFV2 controller is a service controller for managing WAFV2
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IPSet represents the state of an AWS wafv2 IPSet resource.
            displayName: IPSet
            kind: IPSet
            name: ipsets.wafv2.services.k8s.aws
            version: v1alpha1
          - description: RuleGroup represents the state of an AWS wafv2 RuleGroup
              resource.
            displayName: RuleGroup
            kind: RuleGroup
            name: rulegroups.wafv2.services.k8s.aws
            version: v1alpha1
          - description: WebACL represents the state of an AWS wafv2 WebACL resource.
            displayName: WebACL
            kind: WebACL
            name: webacls.wafv2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Web Application Firewall (Amazon WAFV2) resources in AWS from within your Kubernetes cluster.

          **About Amazon WAFV2**

          AWS WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to your protected web application resources. You can protect the following resource types:
          - Amazon CloudFront distribution
          - Amazon API Gateway REST API
          - Application Load Balancer
          - AWS AppSync GraphQL API
          - Amazon Cognito user pool
          - AWS App Runner service
          - AWS Verified Access instance

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon WAFV2
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - wafv2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon WAFV2 Developer Resources
          url: https://aws.amazon.com/waf/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: wafv2 maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/wafv2-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-wafv2-controller@sha256:0c0cc3819a4833ca703d36bb86c094f44886b30fd547f638761e5718358085ba
        version: 1.2.0
      entries:
      - name: ack-wafv2-controller.v1.2.0
        version: 1.2.0
      - name: ack-wafv2-controller.v1.1.2
        version: 1.1.2
      - name: ack-wafv2-controller.v1.1.1
        version: 1.1.1
      - name: ack-wafv2-controller.v1.1.0
        version: 1.1.0
      - name: ack-wafv2-controller.v1.0.14
        version: 1.0.14
      - name: ack-wafv2-controller.v1.0.13
        version: 1.0.13
      - name: ack-wafv2-controller.v1.0.12
        version: 1.0.12
      - name: ack-wafv2-controller.v1.0.10
        version: 1.0.10
      - name: ack-wafv2-controller.v1.0.9
        version: 1.0.9
      - name: ack-wafv2-controller.v1.0.8
        version: 1.0.8
      - name: ack-wafv2-controller.v1.0.6
        version: 1.0.6
      - name: ack-wafv2-controller.v1.0.5
        version: 1.0.5
      - name: ack-wafv2-controller.v1.0.4
        version: 1.0.4
      - name: ack-wafv2-controller.v1.0.1
        version: 1.0.1
      - name: ack-wafv2-controller.v1.0.0
        version: 1.0.0
      - name: ack-wafv2-controller.v0.0.4
        version: 0.0.4
      - name: ack-wafv2-controller.v0.0.3
        version: 0.0.3
      - name: ack-wafv2-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-wafv2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/limitador-operator
    name: limitador-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: limitador-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "limitador.kuadrant.io/v1alpha1",
                "kind": "Limitador",
                "metadata": {
                  "name": "limitador-sample"
                },
                "spec": {
                  "limits": [
                    {
                      "conditions": [
                        "get_toy == 'yes'"
                      ],
                      "max_value": 2,
                      "name": "toy_get_route",
                      "namespace": "toystore-app",
                      "seconds": 30,
                      "variables": []
                    }
                  ],
                  "listener": {
                    "grpc": {
                      "port": 8081
                    },
                    "http": {
                      "port": 8080
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/limitador-rhel9-operator@sha256:6092c510b04a4cee253a52c07b77b625e90d863fa9ccd8727eb901bd81b4e071
          createdAt: 07 Oct 2025, 11:32
          description: Enables rate limiting for Gateways and applications in a Gateway
            API network
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kuadrant/limitador-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Limitador is the Schema for the limitadors API
            displayName: Limitador
            kind: Limitador
            name: limitadors.limitador.kuadrant.io
            version: v1alpha1
        description: The Limitador operator installs and maintains limitador instances
        displayName: Limitador
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - rate-limit
        - kuadrant
        links:
        - name: Limitador Operator
          url: https://github.com/Kuadrant/limitador-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: asnaps@redhat.com
          name: Alex Snaps
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/limitador-operator
        relatedImages:
        - registry.redhat.io/rhcl-1/limitador-rhel9@sha256:aff28d76f9cfeefafd6b652e055bb25e1a2bf250e062e3e9b5e54db873f9eeb7
        - registry.redhat.io/rhcl-1/limitador-operator-bundle@sha256:fc0ee45511674e99f3ecd1b807a660e4bcf49af77bf5d66af935d1cb16336bc4
        - registry.redhat.io/rhcl-1/limitador-rhel9-operator@sha256:6092c510b04a4cee253a52c07b77b625e90d863fa9ccd8727eb901bd81b4e071
        version: 1.2.0
      entries:
      - name: limitador-operator.v1.2.0
        version: 1.2.0
      - name: limitador-operator.v1.1.1
        version: 1.1.1
      - name: limitador-operator.v1.1.0
        version: 1.1.0
      - name: limitador-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: limitador-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/limitador-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: openshift
      provider-url: ""
    name: pf-status-relay-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pf-status-relay-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pfstatusrelay.openshift.io/v1alpha1",
                "kind": "PFLACPMonitor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "pf-status-relay-operator"
                  },
                  "name": "pflacpmonitor-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.3.0-0 <4.19.0'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PFLACPMonitor is the Schema for the pflacpmonitors API
            displayName: PFLACPMonitor
            kind: PFLACPMonitor
            name: pflacpmonitors.pfstatusrelay.openshift.io
            version: v1alpha1
        description: It deploys the pf-status-relay application.
        displayName: pf-status-relay-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pf-status-relay
        - sriov
        - lacp
        links:
        - name: Pf Status Relay Operator
          url: https://pf-status-relay-operator.domain
        maintainers:
        - email: marguerr@redhat.com
          name: Marcelo Guerrero
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: openshift
        relatedImages:
        - registry.redhat.io/openshift4/pf-status-relay-rhel9-operator@sha256:d3429e65675d7b1bda2158db44a771c3b55fe6a3f269e08fe6ff9ef224226772
        - registry.redhat.io/openshift4/pf-status-relay-rhel9@sha256:0f7d8c9aa266a124f571ca2e58f0705ec7257e2cc96f353dd5c41a6f9de00f4a
        - registry.redhat.io/openshift4/pf-status-relay-operator-bundle@sha256:14ac9f4b837706b9ff92cf899f395e0c9f3758d2ab5c1f2e094a6ede45b24023
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 4.20.0-202512081147
      entries:
      - name: pf-status-relay-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: pf-status-relay-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: pf-status-relay-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: pf-status-relay-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: pf-status-relay-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: pf-status-relay-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: pf-status-relay-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: pf-status-relay-operator
    provider:
      name: openshift
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: https://stakater.com
    name: template-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: template-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-07-04T00:40:36Z"
          description: Operator to distribute plain kubernetes manifests, helm charts
            and, copy secrets and configmaps to multiple namespaces
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.0.1
          operatorframework.io/suggested-namespace: template-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterTemplateInstance is the Schema for the clustertemplateinstances
              API
            displayName: Cluster Template Instance
            kind: ClusterTemplateInstance
            name: clustertemplateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateGroupInstance is the Schema for the TemplateGroupInstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.templates.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
        description: '"Operator to distribute plain kubernetes manifests, helm charts
          and, copy secrets and configmaps to multiple namespaces"'
        displayName: Template Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - templates
        - secrets
        - configmaps
        - distribution
        - stakater
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/template-operator-bundle@sha256:6ef2956b297795a9d0c83119e71309549975df3ae5652e6a98cef035ace5d51a
        - registry.connect.redhat.com/stakater/template-operator@sha256:ad8312417e4e9621b74d3ad03020516840feef9c4b52c4f0d894dbb6dc6f906a
        version: 0.0.1
      entries:
      - name: template-operator.v0.0.1
        version: 0.0.1
      name: release-0.0
    - currentCSV: template-operator.v0.1.5
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-08-29T06:41:42Z"
          description: Operator to distribute plain kubernetes manifests, helm charts
            and, copy secrets and configmaps to multiple namespaces
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.1.5
          operatorframework.io/suggested-namespace: template-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterTemplateInstance is the Schema for the clustertemplateinstances
              API
            displayName: Cluster Template Instance
            kind: ClusterTemplateInstance
            name: clustertemplateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateGroupInstance is the Schema for the TemplateGroupInstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.templates.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.templates.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
        description: '"Operator to distribute plain kubernetes manifests, helm charts
          and, copy secrets and configmaps to multiple namespaces"'
        displayName: Template Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - templates
        - secrets
        - configmaps
        - distribution
        - stakater
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/template-operator-bundle@sha256:8831faee6979acfb5bd031b64cbc09fb90e9ea4f48bbff15e9d39ccdf6bf3d95
        - registry.connect.redhat.com/stakater/template-operator@sha256:88f722baf22ac07704503f098f2b0ea7d76815a1ab0552474b1c9ba6639d8142
        version: 0.1.5
      entries:
      - name: template-operator.v0.1.5
        version: 0.1.5
      name: release-0.1
    defaultChannel: release-0.1
    packageName: template-operator
    provider:
      name: Stakater
      url: https://stakater.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: GitLab Inc
      provider-url: https://about.gitlab.com/
    name: gitlab-operator-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:24:14Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - registry.connect.redhat.com/gitlab/gitlab-operator-bundle@sha256:3ce324ad0b7aa2c357a89b134b595e317ec929dcd7f4ff8bf3323fdeea97a8e7
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: stable
    - currentCSV: gitlab-operator-kubernetes.v2.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta1",
                "kind": "GitLab",
                "metadata": {
                  "name": "gitlab",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "chart": {
                    "values": {
                      "gitlab": {
                        "gitlab-shell": {
                          "maxReplicas": 2,
                          "minReplicas": 1
                        },
                        "sidekiq": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1000M"
                            }
                          }
                        },
                        "webservice": {
                          "maxReplicas": 2,
                          "minReplicas": 1,
                          "resources": {
                            "requests": {
                              "cpu": "500m",
                              "memory": "1500M"
                            }
                          }
                        }
                      },
                      "global": {
                        "hosts": {
                          "domain": "example.com",
                          "hostSuffix": null
                        },
                        "ingress": {
                          "configureCertmanager": false,
                          "tls": {
                            "secretName": null
                          }
                        }
                      },
                      "installCertmanager": false,
                      "minio": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      },
                      "nginx-ingress": {
                        "controller": {
                          "electionID": "ingress-controller-leader",
                          "replicaCount": 1
                        }
                      },
                      "postgresql": {
                        "primary": {
                          "extendedConfiguration": "max_connections = 200"
                        }
                      },
                      "redis": {
                        "resources": {
                          "requests": {
                            "cpu": "100m"
                          }
                        }
                      }
                    },
                    "version": "9.7.0"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Developer Tools
          certified: "true"
          containerImage: registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
          createdAt: "2025-12-23T06:24:14Z"
          description: The GitLab operator is responsible for managing the full lifecycle
            of GitLab instances in your Kubernetes or Openshift container platforms.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/suggested-namespace: gitlab-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLab is a complete DevOps platform, delivered in a single
              application
            displayName: GitLab
            kind: GitLab
            name: gitlabs.apps.gitlab.com
            version: v1beta1
        description: |
          # Overview

          **Installation using OLM is considered experimental.** GitLab does not support any issues related to instances deployed using OLM.
          For more information on potential issues with OLM, see [issue 241](https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/241).

          The GitLab operator is responsible for managing the full lifecycle of GitLab instances in your Kubernetes or Openshift container platforms.

          [Documentation](https://docs.gitlab.com/operator/)

          The operator, while new and still actively being developed, aims to:
          - ease installation and configuration of GitLab instances
          - offer seamless upgrades from version to version

          ## GitLab

          GitLab is a complete open-source DevOps platform, delivered as a single application, fundamentally changing the way Development, Security, and Ops teams collaborate and build software. From idea to production, GitLab helps teams improve cycle time from weeks to minutes, reduce development process costs and decrease time to market while increasing developer productivity.

          Built on Open Source, GitLab delivers new innovations and features on the same day of every month by leveraging contributions from a passionate, global community of thousands of developers and millions of users. Over 100,000 of the world’s most demanding organizations trust GitLab to deliver great software at new speeds.

          If you would like to enable advanced DevOps capabilities and activate enterprise features such as security, risk, and compliance capabilities, please contact our sales team to purchase an enterprise license.

          # Prerequisites

          Please visit [Prerequisites](https://docs.gitlab.com/operator/installation/#prerequisites) section of GitLab Operator Documentation.

          ## IngressClass

          Cluster-wide `IngressClass` should be created prior to Operator setup, as OLM does not currently support this object type:

          ```yaml
          apiVersion: networking.k8s.io/v1
          kind: IngressClass
          metadata:
            # Ensure this value matches `spec.chart.values.global.ingress.class`
            # in the GitLab CR on the next step.
            name: gitlab-nginx
          spec:
            controller: k8s.io/ingress-nginx
          ```
        displayName: GitLab
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - GitLab
        - DevOps
        - CI/CD
        - DAST
        - SAST
        links:
        - name: GitLab Docs
          url: https://docs.gitlab.com/
        - name: GitLab Operator Documentation
          url: https://docs.gitlab.com/operator/
        - name: GitLab and Kubernetes
          url: https://about.gitlab.com/solutions/kubernetes/
        - name: Gitlab Reference Architecture
          url: https://docs.gitlab.com/administration/reference_architectures/
        - name: GitLab Contact Sales
          url: https://about.gitlab.com/sales/
        maintainers:
        - email: distribution@gitlab.com
          name: GitLab Distribution Team
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: GitLab Inc
          url: https://about.gitlab.com/
        relatedImages:
        - registry.connect.redhat.com/gitlab/gitlab-operator-bundle@sha256:3ce324ad0b7aa2c357a89b134b595e317ec929dcd7f4ff8bf3323fdeea97a8e7
        - registry.gitlab.com/gitlab-org/cloud-native/gitlab-operator@sha256:886005ce43fba9057f60c34936581ecd07d0c4c454ea083590a914061f3af4d4
        version: 2.7.0
      entries:
      - name: gitlab-operator-kubernetes.v2.7.0
        version: 2.7.0
      - name: gitlab-operator-kubernetes.v2.6.2
        version: 2.6.2
      - name: gitlab-operator-kubernetes.v2.6.1
        version: 2.6.1
      - name: gitlab-operator-kubernetes.v2.6.0
        version: 2.6.0
      name: unstable
    defaultChannel: stable
    packageName: gitlab-operator-kubernetes
    provider:
      name: GitLab Inc
      url: https://about.gitlab.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Datadog
      provider-url: ""
    name: datadog-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datadog-operator.v0.8.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadog"
                },
                "spec": {
                  "agent": {
                    "apm": {
                      "enabled": false
                    },
                    "log": {
                      "enabled": false,
                      "logsConfigContainerCollectAll": false
                    },
                    "process": {
                      "enabled": true,
                      "processCollection": false
                    },
                    "security": {
                      "compliance": {
                        "enabled": false
                      },
                      "runtime": {
                        "enabled": false
                      }
                    },
                    "systemProbe": {
                      "bpfDebugEnabled": false
                    }
                  },
                  "clusterAgent": {
                    "config": {
                      "admissionController": {
                        "enabled": false
                      },
                      "clusterChecksEnabled": false,
                      "externalMetrics": {
                        "enabled": false
                      }
                    },
                    "replicas": 2
                  },
                  "clusterChecksRunner": {
                    "replicas": 2
                  },
                  "clusterName": "\u003cCLUSTER_NAME\u003e",
                  "credentials": {
                    "apiKey": "\u003cDATADOG_API_KEY\u003e",
                    "appKey": "\u003cDATADOG_APP_KEY\u003e",
                    "token": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e"
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: gcr.io/datadoghq/operator:0.8.4
          description: Datadog provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with Datadog Operator.
          olm.skipRange: <0.8.4
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/DataDog/datadog-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgent Deployment with Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v1alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
        description: Datadog provides a modern monitoring and analytics platform.
          Gather metrics, logs and traces for full observability of your Kubernetes
          cluster with Datadog Operator.
        displayName: Datadog Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - gcr.io/datadoghq/operator:0.8.4
        - quay.io/openshift-community-operators/datadog-operator@sha256:b1977170e5991e1f08c49037d6f34873c8543d29d3a2c3692ebb1d66734f5b3e
        version: 0.8.4
      entries:
      - name: datadog-operator.v0.8.4
        version: 0.8.4
      - name: datadog-operator.v0.8.2
        version: 0.8.2
      - name: datadog-operator.v0.8.1
        version: 0.8.1
      - name: datadog-operator.v0.8.0
        version: 0.8.0
      name: alpha
    - currentCSV: datadog-operator.v1.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgentProfile",
                "metadata": {
                  "name": "datadogagentprofile-sample"
                },
                "spec": {
                  "config": {
                    "override": {
                      "nodeAgent": {
                        "containers": {
                          "agent": {
                            "resources": {
                              "requests": {
                                "cpu": "256m"
                              }
                            }
                          }
                        }
                      }
                    }
                  },
                  "profileAffinity": {
                    "profileNodeAffinity": [
                      {
                        "key": "kubernetes.io/os",
                        "operator": "In",
                        "values": [
                          "linux"
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogDashboard",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "datadog-operator",
                    "app.kubernetes.io/instance": "datadogdashboard-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datadogdashboard",
                    "app.kubernetes.io/part-of": "datadog-operator"
                  },
                  "name": "datadogdashboard-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogGenericResource",
                "metadata": {
                  "name": "datadoggenericresource-notebook-sample"
                },
                "spec": {
                  "jsonSpec": "{\n  \"data\": {\n    \"attributes\": {\n      \"cells\": [\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"text\": \"## Some test markdown\\n\\n```js\\nvar x, y;\\nx = 5;\\ny = 6;\\n```\",\n              \"type\": \"markdown\"\n            }\n          },\n          \"type\": \"notebook_cells\"\n        },\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"requests\": [\n                {\n                  \"display_type\": \"line\",\n                  \"q\": \"avg:system.load.1{*}\",\n                  \"style\": {\n                    \"line_type\": \"solid\",\n                    \"line_width\": \"normal\",\n                    \"palette\": \"dog_classic\"\n                  }\n                }\n              ],\n              \"show_legend\": true,\n              \"type\": \"timeseries\",\n              \"yaxis\": {\n                \"scale\": \"linear\"\n              }\n            },\n            \"graph_size\": \"m\",\n            \"split_by\": {\n              \"keys\": [],\n              \"tags\": []\n            },\n            \"time\": null\n          },\n          \"type\": \"notebook_cells\"\n        }\n      ],\n      \"name\": \"Example-Notebook\",\n      \"status\": \"published\",\n      \"time\": {\n        \"live_span\": \"1h\"\n      }\n    },\n    \"type\": \"notebooks\"\n  }\n}",
                  "type": "notebook"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogPodAutoscaler",
                "metadata": {
                  "name": "datadogpodautoscaler-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogSLO",
                "metadata": {
                  "name": "datadogslo-sample"
                },
                "spec": {
                  "description": "This is an example metric SLO from datadog-operator",
                  "name": "datadogslo-sample",
                  "query": {
                    "denominator": "sum:requests.total{service:example,env:prod}.as_count()",
                    "numerator": "sum:requests.success{service:example,env:prod}.as_count()"
                  },
                  "tags": [
                    "service:example",
                    "env:prod"
                  ],
                  "targetThreshold": "99.9",
                  "timeframe": "7d",
                  "type": "metric"
                }
              },
              {
                "apiVersion": "datadoghq.com/v2alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadogagent-sample"
                },
                "spec": {
                  "features": {
                    "admissionController": {
                      "enabled": false
                    },
                    "apm": {
                      "enabled": false
                    },
                    "clusterChecks": {
                      "enabled": true,
                      "useClusterChecksRunners": true
                    },
                    "liveProcessCollection": {
                      "enabled": false
                    },
                    "logCollection": {
                      "containerCollectAll": true,
                      "enabled": true
                    }
                  },
                  "global": {
                    "clusterAgentToken": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e",
                    "clusterName": "\u003cCLUSTER_NAME\u003e",
                    "credentials": {
                      "apiKey": "\u003cDATADOG_API_KEY\u003e",
                      "appKey": "\u003cDATADOG_APP_KEY\u003e"
                    },
                    "criSocketPath": "/var/run/crio/crio.sock",
                    "kubelet": {
                      "tlsVerify": false
                    }
                  },
                  "override": {
                    "clusterAgent": {
                      "containers": {
                        "cluster-agent": {
                          "securityContext": {
                            "readOnlyRootFilesystem": false
                          }
                        }
                      },
                      "replicas": 2,
                      "serviceAccountName": "datadog-agent-scc"
                    },
                    "clusterChecksRunner": {
                      "replicas": 2
                    },
                    "nodeAgent": {
                      "hostNetwork": true,
                      "securityContext": {
                        "runAsUser": 0,
                        "seLinuxOptions": {
                          "level": "s0",
                          "role": "system_r",
                          "type": "spc_t",
                          "user": "system_u"
                        }
                      },
                      "serviceAccountName": "datadog-agent-scc"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: gcr.io/datadoghq/operator:1.20.0
          createdAt: "2025-11-11 19:36:47"
          description: Datadog provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with Datadog Operator.
          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.skipRange: '>=1.7.0 <1.20.0'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/DataDog/datadog-operator
          support: Datadog, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgentInternal is the Schema for the datadogagentinternals
              API
            displayName: Datadog Agent Internal
            kind: DatadogAgentInternal
            name: datadogagentinternals.datadoghq.com
            version: v1alpha1
          - description: DatadogAgentProfile is the Schema for the datadogagentprofiles
              API
            displayName: Datadog Agent Profile
            kind: DatadogAgentProfile
            name: datadogagentprofiles.datadoghq.com
            version: v1alpha1
          - description: DatadogAgent Deployment with the Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v2alpha1
          - description: DatadogDashboard is the Schema for the datadogdashboards
              API
            displayName: Datadog Dashboard
            kind: DatadogDashboard
            name: datadogdashboards.datadoghq.com
            version: v1alpha1
          - kind: DatadogGenericResource
            name: datadoggenericresources.datadoghq.com
            version: v1alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha2
          - description: DatadogSLO allows a user to define and manage datadog SLOs
              from Kubernetes cluster.
            displayName: Datadog SLO
            kind: DatadogSLO
            name: datadogslos.datadoghq.com
            version: v1alpha1
        description: Datadog provides a modern monitoring and analytics platform.
          Gather metrics, logs and traces for full observability of your Kubernetes
          cluster with Datadog Operator.
        displayName: Datadog Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - quay.io/community-operator-pipeline-prod/datadog-operator@sha256:e5dd17a7de9ae6bd921ab5b07a1d56c803784920c6b7a24151669ab7d24509ae
        - gcr.io/datadoghq/operator:1.20.0
        version: 1.20.0
      entries:
      - name: datadog-operator.v1.20.0
        version: 1.20.0
      - name: datadog-operator.v1.19.1
        version: 1.19.1
      - name: datadog-operator.v1.18.0
        version: 1.18.0
      - name: datadog-operator.v1.17.0
        version: 1.17.0
      - name: datadog-operator.v1.16.0
        version: 1.16.0
      - name: datadog-operator.v1.15.1
        version: 1.15.1
      - name: datadog-operator.v1.14.0
        version: 1.14.0
      - name: datadog-operator.v1.13.0
        version: 1.13.0
      - name: datadog-operator.v1.12.1
        version: 1.12.1
      - name: datadog-operator.v1.11.1
        version: 1.11.1
      - name: datadog-operator.v1.10.0
        version: 1.10.0
      - name: datadog-operator.v1.9.0
        version: 1.9.0
      - name: datadog-operator.v1.8.0
        version: 1.8.0
      - name: datadog-operator.v1.7.0
        version: 1.7.0
      - name: datadog-operator.v1.6.0
        version: 1.6.0
      - name: datadog-operator.v1.5.0
        version: 1.5.0
      - name: datadog-operator.v1.4.2
        version: 1.4.2
      - name: datadog-operator.v1.4.1
        version: 1.4.1
      - name: datadog-operator.v1.4.0
        version: 1.4.0
      - name: datadog-operator.v1.3.0
        version: 1.3.0
      - name: datadog-operator.v1.2.1
        version: 1.2.1
      - name: datadog-operator.v1.2.0
        version: 1.2.0
      - name: datadog-operator.v1.1.0
        version: 1.1.0
      name: stable
    defaultChannel: stable
    packageName: datadog-operator
    provider:
      name: Datadog
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: fuse-apicurito
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fuse-apicurito.v7.10.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1alpha1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:8d19ad579f874d6b9a08f127c8900906913a5a7c1e69cbe4b5cb0333b8d86152
          createdAt: 2022-02-28 09:35:38 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.10.3'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:4530ed52522a74051aaedabd62b99d5c5274a0ab72eb28d4e75207d9e9d3391b
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:8d19ad579f874d6b9a08f127c8900906913a5a7c1e69cbe4b5cb0333b8d86152
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:8dbeeb8b04c81f41d896f71db90813de57e67493fa85389b63ac23f390785043
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:c02c218ccfbb385ea29af98409995a3d9c26cb0b4c76caf2e0779fa233b5ff8c
        version: 7.10.3
      entries:
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.10.x
    - currentCSV: fuse-apicurito.v7.11.1-0.1687357785.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:2f8d4450187839f0e0c761e5ddcf61b03f5996acfe3d75b60120e76e5b0167c1
          createdAt: 2022-08-31 15:11:41 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.11.2'
          olm.substitutesFor: fuse-apicurito.v7.11.1-0.1682509045.p
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:02e6baf8619cc2b782cbb1f3072e554a7638eaf3fd804abe1ba5f43f692e511b
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:2f8d4450187839f0e0c761e5ddcf61b03f5996acfe3d75b60120e76e5b0167c1
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:df61aafc4023b9068a8636c35eabb0d5fda400f523b64cb1fc5d8c480272c435
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:4c493a2d690d0d7c1684c53d15c06b47d691aeffdde6dd471b6e75fed2fec6a9
        version: 7.11.1+0.1687357785.p
      entries:
      - name: fuse-apicurito.v7.11.1
        version: 7.11.1
      - name: fuse-apicurito.v7.11.1-0.1687357785.p
        version: 7.11.1+0.1687357785.p
      - name: fuse-apicurito.v7.11.1-0.1682509045.p
        version: 7.11.1+0.1682509045.p
      - name: fuse-apicurito.v7.11.1-0.1681224697.p
        version: 7.11.1+0.1681224697.p
      - name: fuse-apicurito.v7.11.1-0.1679272341.p
        version: 7.11.1+0.1679272341.p
      - name: fuse-apicurito.v7.11.1-0.1675972858.p
        version: 7.11.1+0.1675972858.p
      - name: fuse-apicurito.v7.11.1-0.1673364838.p
        version: 7.11.1+0.1673364838.p
      - name: fuse-apicurito.v7.11.0-0.1665994968.p
        version: 7.11.0+0.1665994968.p
      - name: fuse-apicurito.v7.11.0-0.1666805761.p
        version: 7.11.0+0.1666805761.p
      - name: fuse-apicurito.v7.11.0-0.1662457152.p
        version: 7.11.0+0.1662457152.p
      - name: fuse-apicurito.v7.11.0-0.1659517292.p
        version: 7.11.0+0.1659517292.p
      - name: fuse-apicurito.v7.11.0
        version: 7.11.0
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.11.x
    - currentCSV: fuse-apicurito.v7.12.1-0.1706187670.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:7ccefee63165e7eaf9a609e8a9f978a06f27deff69a318fe399a29292ad99106
          createdAt: 2022-08-31 15:11:41 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.12.1'
          olm.substitutesFor: fuse-apicurito.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:df59ef548b82e9d72fecd06aa6b9c569f96485693c8a4ecb8ec278ae92df436f
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:7ccefee63165e7eaf9a609e8a9f978a06f27deff69a318fe399a29292ad99106
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:4cd612283e8136839f1f48a3a220dac7c6c38adf14b61bc03a981e514baefe9b
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:bee0eeaa7898af835f80c5217059d73361daa42197fa6cbbaf416e1ba373eb54
        version: 7.12.1+0.1706187670.p
      entries:
      - name: fuse-apicurito.v7.12.1-0.1706187670.p
        version: 7.12.1+0.1706187670.p
      - name: fuse-apicurito.v7.12.1
        version: 7.12.1
      - name: fuse-apicurito.v7.12.0
        version: 7.12.0
      - name: fuse-apicurito.v7.12.0-0.1697748407.p
        version: 7.12.0+0.1697748407.p
      - name: fuse-apicurito.v7.12.0-0.1697419531.p
        version: 7.12.0+0.1697419531.p
      - name: fuse-apicurito.v7.12.0-0.1694087055.p
        version: 7.12.0+0.1694087055.p
      - name: fuse-apicurito.v7.11.1-0.1675972858.p
        version: 7.11.1+0.1675972858.p
      - name: fuse-apicurito.v7.11.1-0.1682509045.p
        version: 7.11.1+0.1682509045.p
      - name: fuse-apicurito.v7.11.1-0.1687357785.p
        version: 7.11.1+0.1687357785.p
      - name: fuse-apicurito.v7.11.1-0.1681224697.p
        version: 7.11.1+0.1681224697.p
      - name: fuse-apicurito.v7.11.1
        version: 7.11.1
      - name: fuse-apicurito.v7.11.1-0.1673364838.p
        version: 7.11.1+0.1673364838.p
      - name: fuse-apicurito.v7.11.1-0.1679272341.p
        version: 7.11.1+0.1679272341.p
      - name: fuse-apicurito.v7.11.0-0.1666805761.p
        version: 7.11.0+0.1666805761.p
      - name: fuse-apicurito.v7.11.0-0.1662457152.p
        version: 7.11.0+0.1662457152.p
      - name: fuse-apicurito.v7.11.0-0.1665994968.p
        version: 7.11.0+0.1665994968.p
      - name: fuse-apicurito.v7.11.0-0.1659517292.p
        version: 7.11.0+0.1659517292.p
      - name: fuse-apicurito.v7.11.0
        version: 7.11.0
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.12.x
    - currentCSV: fuse-apicurito.v7.13.0-0.1767583497.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                    "apiVersion": "apicur.io/v1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:112f86a152a0bd90776881417c43f2b768b4756471fc39d07e3690301d4fd57b
          createdAt: 2022-08-31 15:11:41 UTC
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=7.7.0 <7.13.0'
          olm.substitutesFor: fuse-apicurito.v7.13.0-0.1766137200.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Fuse Apicurito
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Apicurito is the Schema for the apicuritoes API
            displayName: Apicurito
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: Red Hat Integration - API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:323f7d1fa408dfa958afa2aba0fcfff69cef78073a9b1cd4d70d3908e46fb8f5
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:c828ea828ffa81ac936f445f78ca4465f37fc2fff2161d7d0c562fcfb5ac3a49
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:3c5557eced22a6e3760782a62523b5187321895a57a0b260f8d668a2f2d3e274
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:112f86a152a0bd90776881417c43f2b768b4756471fc39d07e3690301d4fd57b
        version: 7.13.0+0.1767583497.p
      entries:
      - name: fuse-apicurito.v7.13.0-0.1744280419.p
        version: 7.13.0+0.1744280419.p
      - name: fuse-apicurito.v7.13.0-0.1745523192.p
        version: 7.13.0+0.1745523192.p
      - name: fuse-apicurito.v7.13.0-0.1767583497.p
        version: 7.13.0+0.1767583497.p
      - name: fuse-apicurito.v7.13.0-0.1766137200.p
        version: 7.13.0+0.1766137200.p
      - name: fuse-apicurito.v7.13.0-0.1764853445.p
        version: 7.13.0+0.1764853445.p
      - name: fuse-apicurito.v7.13.0-0.1764853165.p
        version: 7.13.0+0.1764853165.p
      - name: fuse-apicurito.v7.13.0-0.1764239907.p
        version: 7.13.0+0.1764239907.p
      - name: fuse-apicurito.v7.13.0-0.1763465460.p
        version: 7.13.0+0.1763465460.p
      - name: fuse-apicurito.v7.13.0-0.1753785079.p
        version: 7.13.0+0.1753785079.p
      - name: fuse-apicurito.v7.13.0-0.1753778936.p
        version: 7.13.0+0.1753778936.p
      - name: fuse-apicurito.v7.13.0-0.1753778625.p
        version: 7.13.0+0.1753778625.p
      - name: fuse-apicurito.v7.13.0-0.1753702605.p
        version: 7.13.0+0.1753702605.p
      - name: fuse-apicurito.v7.13.0-0.1753701210.p
        version: 7.13.0+0.1753701210.p
      - name: fuse-apicurito.v7.13.0-0.1751291353.p
        version: 7.13.0+0.1751291353.p
      - name: fuse-apicurito.v7.13.0-0.1748960166.p
        version: 7.13.0+0.1748960166.p
      - name: fuse-apicurito.v7.13.0-0.1721607497.p
        version: 7.13.0+0.1721607497.p
      - name: fuse-apicurito.v7.13.0-0.1724053718.p
        version: 7.13.0+0.1724053718.p
      - name: fuse-apicurito.v7.13.0-0.1741884705.p
        version: 7.13.0+0.1741884705.p
      - name: fuse-apicurito.v7.13.0-0.1723709434.p
        version: 7.13.0+0.1723709434.p
      - name: fuse-apicurito.v7.13.0-0.1739885035.p
        version: 7.13.0+0.1739885035.p
      - name: fuse-apicurito.v7.13.0-0.1739473863.p
        version: 7.13.0+0.1739473863.p
      - name: fuse-apicurito.v7.13.0-0.1738056248.p
        version: 7.13.0+0.1738056248.p
      - name: fuse-apicurito.v7.13.0-0.1731460815.p
        version: 7.13.0+0.1731460815.p
      - name: fuse-apicurito.v7.13.0
        version: 7.13.0
      - name: fuse-apicurito.v7.13.0-0.1717672390.p
        version: 7.13.0+0.1717672390.p
      - name: fuse-apicurito.v7.13.0-0.1718285973.p
        version: 7.13.0+0.1718285973.p
      - name: fuse-apicurito.v7.13.0-0.1720707249.p
        version: 7.13.0+0.1720707249.p
      - name: fuse-apicurito.v7.13.0-0.1721224330.p
        version: 7.13.0+0.1721224330.p
      - name: fuse-apicurito.v7.13.0-0.1729189341.p
        version: 7.13.0+0.1729189341.p
      - name: fuse-apicurito.v7.13.0-0.1741875975.p
        version: 7.13.0+0.1741875975.p
      - name: fuse-apicurito.v7.13.0-0.1744737027.p
        version: 7.13.0+0.1744737027.p
      - name: fuse-apicurito.v7.13.0-0.1724659732.p
        version: 7.13.0+0.1724659732.p
      - name: fuse-apicurito.v7.13.0-0.1725022690.p
        version: 7.13.0+0.1725022690.p
      - name: fuse-apicurito.v7.13.0-0.1727193594.p
        version: 7.13.0+0.1727193594.p
      - name: fuse-apicurito.v7.13.0-0.1727957847.p
        version: 7.13.0+0.1727957847.p
      - name: fuse-apicurito.v7.12.1
        version: 7.12.1
      - name: fuse-apicurito.v7.12.1-0.1706187670.p
        version: 7.12.1+0.1706187670.p
      - name: fuse-apicurito.v7.12.0
        version: 7.12.0
      - name: fuse-apicurito.v7.12.0-0.1697748407.p
        version: 7.12.0+0.1697748407.p
      - name: fuse-apicurito.v7.12.0-0.1697419531.p
        version: 7.12.0+0.1697419531.p
      - name: fuse-apicurito.v7.12.0-0.1694087055.p
        version: 7.12.0+0.1694087055.p
      - name: fuse-apicurito.v7.11.1-0.1679272341.p
        version: 7.11.1+0.1679272341.p
      - name: fuse-apicurito.v7.11.1-0.1675972858.p
        version: 7.11.1+0.1675972858.p
      - name: fuse-apicurito.v7.11.1-0.1687357785.p
        version: 7.11.1+0.1687357785.p
      - name: fuse-apicurito.v7.11.1-0.1682509045.p
        version: 7.11.1+0.1682509045.p
      - name: fuse-apicurito.v7.11.1-0.1681224697.p
        version: 7.11.1+0.1681224697.p
      - name: fuse-apicurito.v7.11.1-0.1673364838.p
        version: 7.11.1+0.1673364838.p
      - name: fuse-apicurito.v7.11.1
        version: 7.11.1
      - name: fuse-apicurito.v7.11.0-0.1659517292.p
        version: 7.11.0+0.1659517292.p
      - name: fuse-apicurito.v7.11.0-0.1666805761.p
        version: 7.11.0+0.1666805761.p
      - name: fuse-apicurito.v7.11.0-0.1665994968.p
        version: 7.11.0+0.1665994968.p
      - name: fuse-apicurito.v7.11.0-0.1662457152.p
        version: 7.11.0+0.1662457152.p
      - name: fuse-apicurito.v7.11.0
        version: 7.11.0
      - name: fuse-apicurito.v7.10.3
        version: 7.10.3
      - name: fuse-apicurito.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-apicurito.v7.10.2-0.1648491130.p
        version: 7.10.2+0.1648491130.p
      - name: fuse-apicurito.v7.10.1
        version: 7.10.1
      - name: fuse-apicurito.v7.10.0
        version: 7.10.0
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.13.x
    - currentCSV: fuse-apicurito.v7.9.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [{
                    "apiVersion": "apicur.io/v1alpha1",
                    "kind": "Apicurito",
                    "metadata": {
                      "name": "apicurito-service"
                    },
                    "spec": {
                      "size": 3
                    }
            }]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:05c9676aada2d34a985a59abcf55105a3765d75b0d3764089d2b32e9ca5d367c
          createdAt: "2020-10-06 12:48:47"
          description: Manages the installation and upgrades of apicurito, a small/minimal
            version of Apicurio
          olm.skipRange: '>=7.7.0 <7.9.3'
          repository: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
          support: Apicurito Project
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CRD for Apicurito
            displayName: Apicurito CRD
            kind: Apicurito
            name: apicuritoes.apicur.io
            version: v1alpha1
        description: |+
          The API Designer is a small/minimal version of Apicurio, a standalone API design studio that can be used to create new or edit existing API designs (using the OpenAPI specification).

          This operator supports the installation and upgrade of apicurito. Apicurito components are:
             - apicurito-ui (Apicurito API designer application)
             - apicurito-generator (Apicurito fuse project generator)
             - apicurito route (to access apicurito from outside openshift)

          ### How to install
          When the operator is installed (you have created a subscription and the operator is running in the selected namespace) create a new CR of Kind Apicurito (click the Create New button). The CR spec contains all defaults.

          At the moment, following fields are supported as part of the CR:
             - size: how many pods apicurito operands will have.

        displayName: API Designer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - api
        - apicurio
        - apicurito
        links:
        - name: Apicurito source code
          url: https://github.com/Apicurio/apicurito
        - name: Apicurito operator source code
          url: https://github.com/Apicurio/apicurio-operators/tree/master/apicurito
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurito Project
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator-bundle@sha256:8ce258f36d3baab3175b29d5ed6df89588f128d249285bb1e7cb45539933c511
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8-operator@sha256:05c9676aada2d34a985a59abcf55105a3765d75b0d3764089d2b32e9ca5d367c
        - registry.redhat.io/fuse7/fuse-apicurito-rhel8@sha256:5535864ce393ae0ae5ee52ed0c7661e0351fb7df2f9235da70608245519530b2
        - registry.redhat.io/fuse7/fuse-apicurito-generator-rhel8@sha256:dc39b79c360511ff999eba5b2c299db3e08c9c244a0a1f3da8c90c02695e506d
        version: 7.9.3
      entries:
      - name: fuse-apicurito.v7.9.3
        version: 7.9.3
      name: fuse-apicurito-7.9.x
    defaultChannel: fuse-apicurito-7.13.x
    packageName: fuse-apicurito
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MySQL
      provider-url: https://artifacthub.io/packages/helm/mysql-ndb-operator/ndb-operator
    name: ndb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ndb-operator.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "mysql.oracle.com/v1","kind": "NdbCluster","metadata":
            {"name": "example-ndb"},"spec": {"redundancyLevel": 2,"dataNode": {"nodeCount":
            2},"mysqlNode": {"nodeCount":2}}}]'
          capabilities: Seamless Upgrades
          categories: Database
          containerImage: container-registry.oracle.com/mysql/community-ndb-operator:9.1.0-1.6.0
          createdAt: "2024-12-18T15:05:46.000Z"
          description: The MySQL NDB Operator is a Kubernetes operator for managing
            a MySQL NDB Cluster setup inside a Kubernetes Cluster.
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instance of a Ndb Cluster
            displayName: NdbCluster
            kind: NdbCluster
            name: ndbclusters.mysql.oracle.com
            version: v1
        description: |
          ## NdbCluster Custom Resource
          The NdbCluster custom resource is defined with custom fields that map to the configuration of a MySQL Cluster. To deploy a MySQL Cluster inside the K8s Cluster, an NdbCluster object with the desired configuration of the MySQL Cluster has to be created in the K8s Cluster. The NDB Operator watches for any changes made to any NdbCluster objects and will receive an event when the NdbCluster object is created in the K8s Cluster. It will then start deploying the MySQL Cluster, with the specified configuration, inside the K8s Cluster using native Kubernetes workloads and resources. Once the MySQL Cluster is ready, the NdbCluster resource can be further modified to make changes to the MySQL Cluster configuration. The Operator will receive this event as well and will update the configuration of the already running MySQL Cluster.

          The documentation at [NdbCluster-CRD.md](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/NdbCluster-CRD.md) explains the various custom fields of the NdbCluster CRD and the effect they have on the MySQL Cluster configuration. The [examples](https://github.com/mysql/mysql-ndb-operator/tree/main/docs/examples) folder has a few examples of the NdbCluster resource objects which can be used to deploy MySQL Cluster inside the K8s Cluster.
          ## Deploy a simple MySQL Cluster

          The [examples/example-ndb.yaml](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/examples/example-ndb.yaml) file has a NdbCluster object example-ndb that defines a simple MySQL Cluster with 2 data nodes and 2 MySQL Servers. To create this object in the default namespace of the K8s Cluster, run this command from the root of the repo :
          ```
          kubectl apply -f docs/examples/example-ndb.yaml
          ```

          Various NdbCluster status fields report back the actual status of the MySQL Cluster running inside the K8s Cluster. Wait for the MySQL Cluster nodes to be started and become ready using the [UpToDate](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/NdbCluster-CRD.md#ndbclusterconditiontypestring-alias) Condition defined in the NdbCluster object status :
          ```
          kubectl wait --for=condition=UpToDate ndb example-ndb --timeout=10m
          ```
          The MySQL Cluster is ready for transactions once the NdbCluster is UpToDate, i.e. the UpToDate condition becomes true.

          At any point, a brief status of an NdbCluster object can be viewed using kubectl get ndb command.
          ```
          kubectl get ndb example-ndb
          ```

          The output of the command gives a short summary the MySQL Cluster nodes controlled by the respective NdbCluster object.
          ```
          NAME          REPLICA   MANAGEMENT NODES   DATA NODES   MYSQL SERVERS AGE   UP-TO-DATE
          example-ndb   2         Ready:2/2          Ready:2/2    Ready:2/2 3m    True
          ```

          To list all the pods created by the NDB Operator, run :
          ```
          kubectl get pods -l mysql.oracle.com/v1=example-ndb
          ```

          For example-ndb NdbCluster object, two management nodes (*-mgmd-* pods), two multi-threaded data nodes (*-ndbmtd-* pods) and two MySQL Servers (*-mysqld-*) would have been created by the NDB operator :
          ```
          NAME                   READY   STATUS    RESTARTS   AGE
          example-ndb-mgmd-0     1/1     Running   0          3m53s
          example-ndb-mgmd-1     1/1     Running   0          2m5s
          example-ndb-mysqld-0   1/1     Running   0          78s
          example-ndb-mysqld-1   1/1     Running   0          78s
          example-ndb-ndbmtd-0   1/1     Running   0          3m53s
          example-ndb-ndbmtd-1   1/1     Running   0          3m53s
          ```
          If running inside a openshift cluster, pods from statefulset "example-ndb-mysqld" will not start up. By default openshift runs all the pod with "restricted" scc, but the statefulset "example-ndb-mysqld" required higher privilege. Use the below command to check the exact scc required
          ```
          oc get pods example-ndb-mysqld-0 -o yaml | oc adm policy scc-subject-review -f -
          ```
          Create a user account with the scc and set the user to the statefulset "example-ndb-mysqld". Below commands creates an user with "anyuid" and assign it to the statefulset.
          ```
          oc create sa any-uid-user
          oc adm policy add-scc-to-user anyuid -z any-uid-user
          oc set sa sts example-ndb-mysqld any-uid-user
          ```
          ## Connect to the MySQL Cluster

          The NDB Operator, by default, creates few Services to expose the services offered by the MySQL Cluster nodes within the Kubernetes Cluster.
          ```
          kubectl get services -l mysql.oracle.com/v1=example-ndb
          ```

          The above command will generate an output similar to :
          ```
          NAME                 TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S) AGE
          example-ndb-mgmd     ClusterIP   10.100.207.255   <none>        1186/TCP 5m
          example-ndb-mysqld   ClusterIP   10.103.182.157   <none>        3306/TCP 5m
          example-ndb-ndbmtd   ClusterIP   None             <none>        1186/TCP 5m
          ```

          The NDB Operator will also create a root user with a random password on all the MySQL Servers. The root password will be stored in a K8s Secret which can be retrieved from the NdbCluster object status :
          ```
          kubectl get ndb example-ndb -o jsonpath={.status.generatedRootPasswordSecretName}
          ```

          To extract and decode the password from the Secret :
          ```
          base64 -d <<< \
          $(kubectl get secret example-ndb-mysqld-root-password \
          -o jsonpath={.data.password})
          ```

          One can also specify the password and host to be used with the root account via the NdbCluster spec. See the [CRD documentation](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/NdbCluster-CRD.md#ndbmysqldspec) for more details on this.
          ## Access MySQL Cluster from inside K8s

          To connect to the Management and MySQL Servers from within the Kubernetes Cluster, you can use the example-ndb-mgmd and example-ndb-mysqld services as the MySQL Cluster connectstring and MySQL host respectively. You can also use the mgmd and mysqld pods' hostnames to directly connect to that particular pod. The mysql, ndb_mgm clients and any other ndb tools will work as expected.

          A demonstration is available at [connect-from-inside-k8s-demo.md](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/connect-from-inside-k8s-demo.md).
          ## Access MySQL Cluster from outside K8s

          By default, the Management and MySQL services created by the NDB Operator are of type [ClusterIP](https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types) and are accessible only from within the K8s Cluster. To expose them outside the K8s Cluster, the services have to be upgraded into a LoadBalancer type. This can be done by setting the spec.managementNode.enableLoadBalancer and spec.mysqlNode.enableLoadBalancer fields of the NdbCluster resource to true. These options can be enabled when the NdbCluster resource object is created or via an update to the object when the MySQL Cluster is already running.

          Once enabled, the previously ClusterIP type example-ndb-mgmd and example-ndb-mysqld services will be upgraded to LoadBalancer type, and they will be available at the external IP assigned to them by the cloud provider.

          Another way to access these services without enabling the LoadBalancers support is to use the kubectl port-forward command.

          In both ways, only the mysql and ndb_mgm clients work. Any NDB tool which uses the NDBAPI to connect to the MySQL data nodes will not work as expected from outside the K8s Cluster.

          A demonstration is available at [connect-from-outside-k8s-demo.md](https://github.com/mysql/mysql-ndb-operator/blob/main/docs/connect-from-outside-k8s-demo.md).
          ## Updating MySQL Cluster Configuration

          Once a MySQL Cluster has been deployed by the NDB Operator inside the K8s Cluster, its configuration can be updated by updating the spec of the NdbCluster resource object that represents it. The NDB Operator will pick up any changes made to the NdbCluster resource object and will apply the updated configuration to the respective MySQL Cluster. The NDB Operator takes care of updating the MySQL Cluster config file and restarting all the management/data nodes if required. When the update is being handled by the NdbOperator, it will set the UpToDate condition of the NdbCluster resource object to false and will not accept any further updates until it completes the current one.

          The kubectl get ndb example-ndb command will report the UpToDate status of an NdbCluster. It can be used to check if the current update has been completed.
          ```
          $ kubectl get ndb example-ndb
          NAME          REPLICA   MANAGEMENT NODES   DATA NODES   MYSQL SERVERS AGE   UP-TO-DATE
          example-ndb   2         Ready:2/2          Ready:1/2    Ready:2/2 10m   False
          ```

          The UpToDate condition can also be used to wait for the operator to complete the update.
          ```
          kubectl wait --for=condition=UpToDate ndb example-ndb --timeout=10m
          ```

          Once the update is complete, the UpToDate condition will be set back to true by the operator.
          ```
          $ kubectl get ndb example-ndb
          NAME          REPLICA   MANAGEMENT NODES   DATA NODES   MYSQL SERVERS AGE      UP-TO-DATE
          example-ndb   2         Ready:2/2          Ready:2/2    Ready:2/2 10m50s   True
          ```

          ## Delete a MySQL Cluster

          To stop and remove the MySQL Cluster running inside the K8s Cluster, delete the NdbCluster resource object.
          ```
          kubectl delete -f docs/examples/example-ndb.yaml
          ```

          (or)
          ```
          kubectl delete ndb example-ndb
          ```

          This will delete all the data, the pods running the MySQL Cluster nodes and also delete all other associated K8s resources created by the NDB Operator.
        displayName: Ndb Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mysql
        - ndb
        - in-memory
        links:
        - name: Document
          url: https://dev.mysql.com/doc/ndb-operator/en/
        maintainers:
        - email: paulo.p.silva@oracle.com
          name: paulofasilva
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: MySQL
          url: https://artifacthub.io/packages/helm/mysql-ndb-operator/ndb-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ndb-operator@sha256:5f33c2a8181ea8e91844afd1f4042affbd9eb878266b6b2bcc6906f0829ed00b
        - container-registry.oracle.com/mysql/community-ndb-operator:9.1.0-1.6.0
        version: 1.6.0
      entries:
      - name: ndb-operator.v1.6.0
        version: 1.6.0
      name: alpha
    defaultChannel: alpha
    packageName: ndb-operator
    provider:
      name: MySQL
      url: https://artifacthub.io/packages/helm/mysql-ndb-operator/ndb-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: vault-config-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vault-config-operator.v0.8.37
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Audit",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "audit-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "audit",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "audit-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "options": {
                    "enable_list_responses": "true",
                    "file_path": "stdout",
                    "hmac_accessor": "false"
                  },
                  "path": "audit-sample",
                  "type": "file"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AuditRequestHeader",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "auditrequestheader-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "auditrequestheader",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "auditrequestheader-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "hmac": true,
                  "name": "custom-header"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AuthEngineMount",
                "metadata": {
                  "name": "authenginemount-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "kube-authengine-mount-sample",
                  "type": "kubernetes"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureAuthEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azureauthengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azureauthengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azureauthengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "azureCredentials": {
                    "passwordKey": "clientsecret",
                    "secret": {
                      "name": "aad-credentials"
                    },
                    "usernameKey": "clientid"
                  },
                  "clientID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "environment": "AzurePublicCloud",
                  "maxRetries": 3,
                  "maxRetryDelay": 60,
                  "path": "azure/test",
                  "resource": "https://management.azure.com/",
                  "retryDelay": 4,
                  "tenantID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureAuthEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azureauthenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azureauthenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azureauthenginerole-sample"
                },
                "spec": {
                  "BoundResourceGroups": [
                    "resourcegroup1",
                    "resourcegroup2"
                  ],
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "boundGroupIDs": [
                    "group1",
                    "group2"
                  ],
                  "boundLocations": [
                    "location1",
                    "location2"
                  ],
                  "boundScaleSets": [
                    "scaleset1",
                    "scaleset1"
                  ],
                  "boundServicePrincipalIDs": [
                    "sp1",
                    "sp2"
                  ],
                  "boundSubscriptionIDs": [
                    "subscription1",
                    "subscription2"
                  ],
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "name": "dev-role",
                  "path": "azure",
                  "policies": [
                    "policy1",
                    "policy2"
                  ],
                  "tokenBoundCIDRs": [
                    "10.20.102.13",
                    "10.20.102.15"
                  ],
                  "tokenExplicitMaxTTL": "",
                  "tokenMaxTTL": "",
                  "tokenNoDefaultPolicy": false,
                  "tokenNumUses": 0,
                  "tokenPeriod": 0,
                  "tokenPolicies": [
                    "policy1",
                    "policy2"
                  ],
                  "tokenTTL": "",
                  "tokenType": ""
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureSecretEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azuresecretengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azuresecretengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azuresecretengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "azureCredentials": {
                    "passwordKey": "clientsecret",
                    "secret": {
                      "name": "aad-credentials"
                    },
                    "usernameKey": "clientid"
                  },
                  "clientID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "environment": "AzurePublicCloud",
                  "passwordPolicy": "",
                  "path": "azure",
                  "rootPasswordTTL": "128d",
                  "subscriptionID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
                  "tenantID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "AzureSecretEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "azuresecretenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "azuresecretenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "azuresecretenginerole-sample"
                },
                "spec": {
                  "TTL": "",
                  "applicationObjectID": "",
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "azureGroups": "",
                  "azureRoles": "",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "maxTTL": "",
                  "name": "azure-role",
                  "path": "azure",
                  "permanentlyDelete": "",
                  "persistApp": "",
                  "signInAudience": "",
                  "tags": ""
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "CertAuthEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "certauthengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "certauthengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "certauthengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "name": "test",
                  "path": "cert"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "CertAuthEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "certauthenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "certauthenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "certauthenginerole-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "certificate": "-----BEGIN CERTIFICATE-----\nMIIDJTCCAg2gAwIBAgIUF119kmCNlnMwK6yOOpfRs4JGhAAwDQYJKoZIhvcNAQEL\nBQAwFjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjUwMTIxMTM0MjExWhcNMjYw\nMTIxMTM0MjExWjAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBALad4Sx97VyFSfOepJoXUGYljg7hL+z20pVL2/M8\n8HXAQl4qf/i45b//Qz8VogMxdg3Y9J7O/M0n9hxbL18i1gm270VjEFyzjJCyUq0R\n72WMM4Sr3OjQPnVtJoQkWnH7wR3zsWK2N4NuIPdE3Ofb48Olyachffv7xCI+MLIa\n/adcyRggM4Z5f2nBCMcXL8D/eY03qCgd/U1aaPJ0WyJTZHLL4euL0ewKlKtB1JnU\n4MrRa5mbPQ3B+OhxcaD/7BNV6hPXAe2zftEv8LcimhbVoj3XmLJ+om58YIaEMadk\nJj61xnXbf+F/iV41onzwvTPNWCSWiLowDl8P3zkabuS583sCAwEAAaNrMGkwHQYD\nVR0OBBYEFH971CwrqkTvUz2qrUncWMS5ULwKMB8GA1UdIwQYMBaAFH971CwrqkTv\nUz2qrUncWMS5ULwKMA8GA1UdEwEB/wQFMAMBAf8wFgYDVR0RBA8wDYILZXhhbXBs\nZS5jb20wDQYJKoZIhvcNAQELBQADggEBAIQzT113TQC9BqitOCOoDFCJqcM+BHmf\nITEKlEhlqubPvA40lD4wkz67RP2SdQbF1glzZW5sDTxMjpHL+8nhdmo65CJpsQGP\nyMPwnOvx7W5JWQJa1Yt+48JNhgIymDMun+xwDsjNnlBqp0Kr7HkOxPimMPWN4R6B\nydG96puDGBYqxB1ujx5seOGfGvxPBBr3h8kNg054rtIIDrUG2iUTfpNIILJrd8Q2\nshop9//3VcIpUJO7Z1brvK/Hp4DrcKBZVo7vd8n+5uCx3vBA0tjqNAXYtFnSRvDZ\n6XV+rCZecDBFkaLuJ5YgYEK15gGe6lQAez6DTVLXMAKhZ52kceefnwM=\n-----END CERTIFICATE-----\n",
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "name": "test-role",
                  "path": "cert/test"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "DatabaseSecretEngineConfig",
                "metadata": {
                  "name": "my-postgresql-database"
                },
                "spec": {
                  "allowedRoles": [
                    "read-only"
                  ],
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "connectionURL": "postgresql://{{username}}:{{password}}@my-postgresql-database.test-vault-config-operator.svc:5432",
                  "path": "test-vault-config-operator/database",
                  "pluginName": "postgresql-database-plugin",
                  "rootCredentials": {
                    "passwordKey": "postgresql-password",
                    "secret": {
                      "name": "postgresql-admin-password"
                    }
                  },
                  "username": "postgres"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "DatabaseSecretEngineRole",
                "metadata": {
                  "name": "read-only"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "creationStatements": [
                    "CREATE ROLE \"{{name}}\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}'; GRANT SELECT ON ALL TABLES IN SCHEMA public TO \"{{name}}\";"
                  ],
                  "dBName": "my-postgresql-database",
                  "defaultTTL": "1h",
                  "maxTTL": "24h",
                  "path": "test-vault-config-operator/database"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "DatabaseSecretEngineStaticRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "databasesecretenginestaticrole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "databasesecretenginestaticrole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "databasesecretenginestaticrole-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "dBName": "db-name",
                  "path": "test-vault-config-operator/database",
                  "rotationPeriod": "24h",
                  "rotationStatements": [
                    "ALTER ROLE \"{{name}}\" WITH PASSWORD '{{password}}';git add"
                  ],
                  "username": "db-user"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GCPAuthEngineConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "gcpauthengineconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "gcpauthengineconfig",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "gcpauthengineconfig-sample"
                },
                "spec": {
                  "GCEalias": "role_id",
                  "GCEmetadata": "default",
                  "GCPCredentials": {
                    "passwordKey": "credentials",
                    "secret": {
                      "name": "gcp-serviceaccount-credentials"
                    },
                    "usernameKey": "serviceaccount"
                  },
                  "IAMalias": "default",
                  "IAMmetadata": "default",
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "customEndpoint": {},
                  "path": "azure",
                  "serviceAccount": "vault-sa"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GCPAuthEngineRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "gcpauthenginerole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "gcpauthenginerole",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "gcpauthenginerole-sample"
                },
                "spec": {
                  "addGroupAliases": false,
                  "allowGCEInference": false,
                  "authentication": {
                    "path": "vault-admin",
                    "role": "vault-admin",
                    "serviceAccount": {
                      "name": "vault"
                    }
                  },
                  "boundInstanceGroups": [],
                  "boundLabels": [],
                  "boundProjects": {},
                  "boundRegions": [],
                  "boundServiceAccounts": {},
                  "boundZones": [],
                  "connection": {
                    "address": "https://vault.example.com"
                  },
                  "maxJWTExp": "",
                  "name": "gcp-iam-role",
                  "path": "gcp",
                  "policies": [],
                  "tokenBoundCIDRs": [],
                  "tokenExplicitMaxTTL": "",
                  "tokenMaxTTL": "",
                  "tokenNoDefaultPolicy": false,
                  "tokenNumUses": 0,
                  "tokenPeriod": 0,
                  "tokenPolicies": [],
                  "tokenTTL": "",
                  "tokenType": "",
                  "type": "iam"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GitHubSecretEngineConfig",
                "metadata": {
                  "name": "githubsecretengineconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GitHubSecretEngineRole",
                "metadata": {
                  "name": "githubsecretenginerole-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Group",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "group-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "group",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "group-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "metadata": {
                    "team": "team-abc"
                  },
                  "policies": [
                    "team-abc-access"
                  ],
                  "type": "external"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupAlias",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "vault-config-operator",
                    "app.kubernetes.io/instance": "groupalias-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "groupalias",
                    "app.kubernetes.io/part-of": "vault-config-operator"
                  },
                  "name": "groupalias-sample"
                },
                "spec": {
                  "authEngineMountPath": "kubernetes",
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "groupName": "group-sample"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "JWTOIDCAuthEngineConfig",
                "metadata": {
                  "name": "azure-oidc-config"
                },
                "spec": {
                  "OIDCClientID": "000000000-0000-0000-0000-000000000",
                  "OIDCCredentials": {
                    "passwordKey": "oidc_client_secret",
                    "secret": {
                      "name": "oidccredentials"
                    },
                    "usernameKey": "oidc_client_id"
                  },
                  "OIDCDiscoveryURL": "https://login.microsoftonline.com/000000000-0000-0000-0000-000000000/v2.0",
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "oidc/azuread-oidc/"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "JWTOIDCAuthEngineRole",
                "metadata": {
                  "name": "azure-oidc-dev-role"
                },
                "spec": {
                  "OIDCScopes": [
                    "https://graph.microsoft.com/.default"
                  ],
                  "allowedRedirectURIs": [
                    "http://localhost:8250/oidc/callback",
                    "http://localhost:8200/ui/vault/auth/oidc/azuread-oidc/oidc/callback"
                  ],
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "groupsClaim": "groups",
                  "name": "dev-role",
                  "path": "oidc-aad/azuread-oidc",
                  "roleType": "oidc",
                  "tokenPolicies": [
                    "dev",
                    "prod"
                  ],
                  "userClaim": "email"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesAuthEngineConfig",
                "metadata": {
                  "name": "kubernetesauthengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "kube-authengine-mount-sample"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesAuthEngineRole",
                "metadata": {
                  "name": "database-engine-admin"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "path": "kubernetes",
                  "policies": [
                    "database-engine-admin"
                  ],
                  "targetNamespaces": {
                    "targetNamespaceSelector": {
                      "matchLabels": {
                        "database-engine-admin": "true"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesSecretEngineConfig",
                "metadata": {
                  "name": "kubernetessecretengineconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KubernetesSecretEngineRole",
                "metadata": {
                  "name": "kubernetessecretenginerole-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "LDAPAuthEngineConfig",
                "metadata": {
                  "name": "ldapauthengineconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "LDAPAuthEngineGroup",
                "metadata": {
                  "name": "ldapauthenginegroup-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin",
                    "serviceAccount": {
                      "name": "default"
                    }
                  },
                  "name": "test-group",
                  "path": "ldap/test"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "PKISecretEngineConfig",
                "metadata": {
                  "name": "pkisecretengineconfig-sample"
                },
                "spec": {
                  "TTL": "8760h",
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "commonName": "pki-vault-demo.internal.io",
                  "crlDistributionPoints": [
                    "https://vault-internal.vault.svc:8200/v1/test-vault-config-operator/pki/crl\""
                  ],
                  "issuingCertificates": [
                    "https://vault-internal.vault.svc:8200/v1/test-vault-config-operator/pki/ca"
                  ],
                  "path": "test-vault-config-operator/pki",
                  "privateKeyType": "internal",
                  "type": "root"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "PKISecretEngineRole",
                "metadata": {
                  "name": "pkisecretenginerole-sample"
                },
                "spec": {
                  "allowGlobDomains": true,
                  "allowSubdomains": true,
                  "allowedDomains": [
                    "internal.io",
                    "pki-vault-demo.svc",
                    "example.com"
                  ],
                  "allowedOtherSans": "*",
                  "allowedURISans": [
                    "*-pki-vault-demo.apps.example.com"
                  ],
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "maxTTL": "8760h",
                  "path": "test-vault-config-operator/pki"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "PasswordPolicy",
                "metadata": {
                  "name": "simple-password-policy"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "passwordPolicy": "length = 20\nrule \"charset\" {\n  charset = \"abcdefghijklmnopqrstuvwxyz\"\n}"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Policy",
                "metadata": {
                  "name": "database-engine-admin"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "policy-admin"
                  },
                  "policy": "# mount database secrets engines\npath \"/sys/mounts/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n  allowed_parameters = {\n    \"type\" = [\"database\"]\n    \"*\"   = []\n  }\n}\n\n# tune database secrets engines\npath \"/sys/mounts/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database/tune\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n}\n\n# Configure database secrets engines\npath \"/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database/config/+\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n}\n\n# Configure database roles\npath \"/{{identity.entity.aliases.${auth/kubernetes/@accessor}.metadata.service_account_namespace}}/database/roles/+\" {\n  capabilities = [ \"create\", \"read\", \"update\", \"delete\"]\n}\n"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuaySecretEngineConfig",
                "metadata": {
                  "name": "quaysecretengineconfig-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuaySecretEngineRole",
                "metadata": {
                  "name": "quaysecretenginerole-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "QuaySecretEngineStaticRole",
                "metadata": {
                  "name": "quaysecretenginestaticrole-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "RabbitMQSecretEngineConfig",
                "metadata": {
                  "name": "rabbitmqsecretengineconfig-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "rabbitMQ-engine-admin"
                  },
                  "connectionURI": "https://test.com",
                  "leaseMaxTTL": 86400,
                  "leaseTTL": 86400,
                  "path": "vault-config-operator/rabbitmq"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "RabbitMQSecretEngineRole",
                "metadata": {
                  "name": "rabbitmqsecretenginerole-sample"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "rabbitmq-engine-admin"
                  },
                  "path": "vault-config-operator/rabbitmq",
                  "tags": "administrator",
                  "vhostTopics": [
                    {
                      "topics": [
                        {
                          "permissions": {
                            "configure": ".*",
                            "read": ".*",
                            "write": ".*"
                          },
                          "topicName": "my-topic"
                        },
                        {
                          "permissions": {
                            "read": ".*"
                          },
                          "topicName": "my-read-topic"
                        }
                      ],
                      "vhostName": "/"
                    }
                  ],
                  "vhosts": [
                    {
                      "permissions": {
                        "configure": ".*",
                        "read": ".*",
                        "write": ".*"
                      },
                      "vhostName": "/"
                    },
                    {
                      "permissions": {
                        "read": "my-queue",
                        "write": "my-exchange"
                      },
                      "vhostName": "my-vhost"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "RandomSecret",
                "metadata": {
                  "name": "randomsecret-password"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "secret-writer"
                  },
                  "path": "test-vault-config-operator/kv",
                  "secretFormat": {
                    "passwordPolicyName": "simple-password-policy"
                  },
                  "secretKey": "password"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "SecretEngineMount",
                "metadata": {
                  "name": "database"
                },
                "spec": {
                  "authentication": {
                    "path": "kubernetes",
                    "role": "database-engine-admin"
                  },
                  "path": "test-vault-config-operator",
                  "type": "database"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "VaultSecret",
                "metadata": {
                  "name": "vaultsecret-sample"
                },
                "spec": {
                  "output": {
                    "annotations": {
                      "refresh": "every-minute"
                    },
                    "labels": {
                      "app": "test-vault-config-operator"
                    },
                    "name": "randomsecret",
                    "stringData": {
                      "anotherpassword": "{{ .anotherrandomsecret.password }}",
                      "password": "{{ .randomsecret.password }}"
                    },
                    "type": "Opaque"
                  },
                  "refreshPeriod": "3m0s",
                  "vaultSecretDefinitions": [
                    {
                      "authentication": {
                        "path": "kubernetes",
                        "role": "secret-reader",
                        "serviceAccount": {
                          "name": "default"
                        }
                      },
                      "name": "randomsecret",
                      "path": "test-vault-config-operator/kv/randomsecret-password"
                    },
                    {
                      "authentication": {
                        "path": "kubernetes",
                        "role": "secret-reader",
                        "serviceAccount": {
                          "name": "default"
                        }
                      },
                      "name": "anotherrandomsecret",
                      "path": "test-vault-config-operator/kv/another-password"
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/vault-config-operator@sha256:ca58fbf75ceb8f09db43c134ec0f99eafb257e8e0dae80f7cb4298f37e12d486
          createdAt: "2026-01-06T13:45:44Z"
          description: This operator provides primitives to declaratively configure
            Hashicorp Vault.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: vault-config-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/vault-config-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AuditRequestHeader is the Schema for the auditrequestheaders
              API
            displayName: Audit Request Header
            kind: AuditRequestHeader
            name: auditrequestheaders.redhatcop.redhat.io
            version: v1alpha1
          - description: Audit is the Schema for the audits API
            displayName: Audit
            kind: Audit
            name: audits.redhatcop.redhat.io
            version: v1alpha1
          - description: AuthEngineMount is the Schema for the authenginemounts API
            displayName: Auth Engine Mount
            kind: AuthEngineMount
            name: authenginemounts.redhatcop.redhat.io
            version: v1alpha1
          - description: AzureAuthEngineConfig is the Schema for the azureauthengineconfigs
              API
            displayName: Azure Auth Engine Config
            kind: AzureAuthEngineConfig
            name: azureauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: AzureAuthEngineRole is the Schema for the azureauthengineroles
              API
            displayName: Azure Auth Engine Role
            kind: AzureAuthEngineRole
            name: azureauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - kind: AzureSecretEngineConfig
            name: azuresecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: AzureSecretEngineRole is the Schema for the azuresecretengineroles
              API
            displayName: Azure Secret Engine Role
            kind: AzureSecretEngineRole
            name: azuresecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: CertAuthEngineConfig is the Schema for the certauthengineconfigs
              API
            displayName: Cert Auth Engine Config
            kind: CertAuthEngineConfig
            name: certauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: CertAuthEngineRole is the Schema for the certauthengineroles
              API
            displayName: Cert Auth Engine Role
            kind: CertAuthEngineRole
            name: certauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: DatabaseSecretEngineConfig is the Schema for the databasesecretengineconfigs
              API
            displayName: Database Secret Engine Config
            kind: DatabaseSecretEngineConfig
            name: databasesecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: DatabaseSecretEngineRole is the Schema for the databasesecretengineroles
              API
            displayName: Database Secret Engine Role
            kind: DatabaseSecretEngineRole
            name: databasesecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: DatabaseSecretEngineStaticRole is the Schema for the databasesecretenginestaticroles
              API
            displayName: Database Secret Engine Static Role
            kind: DatabaseSecretEngineStaticRole
            name: databasesecretenginestaticroles.redhatcop.redhat.io
            version: v1alpha1
          - description: GCPAuthEngineConfig is the Schema for the gcpauthengineconfigs
              API
            displayName: GCPAuth Engine Config
            kind: GCPAuthEngineConfig
            name: gcpauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: GCPAuthEngineRole is the Schema for the gcpauthengineroles
              API
            displayName: GCPAuth Engine Role
            kind: GCPAuthEngineRole
            name: gcpauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: GitHubSecretEngineConfig is the Schema for the githubsecretengineconfigs
              API
            displayName: Git Hub Secret Engine Config
            kind: GitHubSecretEngineConfig
            name: githubsecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: GitHubSecretEngineRole is the Schema for the githubsecretengineroles
              API
            displayName: Git Hub Secret Engine Role
            kind: GitHubSecretEngineRole
            name: githubsecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: GroupAlias is the Schema for the groupaliases API
            displayName: Group Alias
            kind: GroupAlias
            name: groupaliases.redhatcop.redhat.io
            version: v1alpha1
          - description: Group is the Schema for the groups API
            displayName: Group
            kind: Group
            name: groups.redhatcop.redhat.io
            version: v1alpha1
          - description: JWTOIDCAuthEngineConfig is the Schema for the jwtoidcauthengineconfigs
              API
            displayName: JWTOIDCAuth Engine Config
            kind: JWTOIDCAuthEngineConfig
            name: jwtoidcauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: JWTOIDCAuthEngineRole is the Schema for the jwtoidcauthengineroles
              API
            displayName: JWTOIDCAuth Engine Role
            kind: JWTOIDCAuthEngineRole
            name: jwtoidcauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesAuthEngineConfig is the Schema for the kubernetesauthengineconfigs
              API
            displayName: Kubernetes Auth Engine Config
            kind: KubernetesAuthEngineConfig
            name: kubernetesauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesAuthEngineRole can be used to define a KubernetesAuthEngineRole
              for the kube-auth authentication method
            displayName: Kubernetes Auth Engine Role
            kind: KubernetesAuthEngineRole
            name: kubernetesauthengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesSecretEngineConfig is the Schema for the kubernetessecretengineconfigs
              API
            displayName: Kubernetes Secret Engine Config
            kind: KubernetesSecretEngineConfig
            name: kubernetessecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: KubernetesSecretEngineRole is the Schema for the kubernetessecretengineroles
              API
            displayName: Kubernetes Secret Engine Role
            kind: KubernetesSecretEngineRole
            name: kubernetessecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: LDAPAuthEngineConfig is the Schema for the ldapauthengineconfigs
              API
            displayName: LDAPAuth Engine Config
            kind: LDAPAuthEngineConfig
            name: ldapauthengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: LDAPAuthEngineGroup is the Schema for the ldapauthenginegroups
              API
            displayName: LDAPAuth Engine Group
            kind: LDAPAuthEngineGroup
            name: ldapauthenginegroups.redhatcop.redhat.io
            version: v1alpha1
          - description: PasswordPolicy is the Schema for the passwordpolicies API
            displayName: Password Policy
            kind: PasswordPolicy
            name: passwordpolicies.redhatcop.redhat.io
            version: v1alpha1
          - description: PKISecretEngineConfig is the Schema for the pkisecretengineconfigs
              API
            displayName: PKISecret Engine Config
            kind: PKISecretEngineConfig
            name: pkisecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: PKISecretEngineRole is the Schema for the pkisecretengineroles
              API
            displayName: PKISecret Engine Role
            kind: PKISecretEngineRole
            name: pkisecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: Policy is the Schema for the policies API
            displayName: Policy
            kind: Policy
            name: policies.redhatcop.redhat.io
            version: v1alpha1
          - description: QuaySecretEngineConfig is the Schema for the quaysecretengineconfigs
              API
            displayName: Quay Secret Engine Config
            kind: QuaySecretEngineConfig
            name: quaysecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: QuaySecretEngineRole is the Schema for the quaysecretengineroles
              API
            displayName: Quay Secret Engine Role
            kind: QuaySecretEngineRole
            name: quaysecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: QuaySecretEngineStaticRole is the Schema for the quaysecretenginestaticroles
              API
            displayName: Quay Secret Engine Static Role
            kind: QuaySecretEngineStaticRole
            name: quaysecretenginestaticroles.redhatcop.redhat.io
            version: v1alpha1
          - description: RabbitMQSecretEngineConfig is the Schema for the rabbitmqsecretengineconfigs
              API
            displayName: Rabbit MQSecret Engine Config
            kind: RabbitMQSecretEngineConfig
            name: rabbitmqsecretengineconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: RabbitMQSecretEngineRole is the Schema for the rabbitmqsecretengineroles
              API
            displayName: Rabbit MQSecret Engine Role
            kind: RabbitMQSecretEngineRole
            name: rabbitmqsecretengineroles.redhatcop.redhat.io
            version: v1alpha1
          - description: RandomSecret is the Schema for the randomsecrets API
            displayName: Random Secret
            kind: RandomSecret
            name: randomsecrets.redhatcop.redhat.io
            version: v1alpha1
          - description: SecretEngineMount is the Schema for the secretenginemounts
              API
            displayName: Secret Engine Mount
            kind: SecretEngineMount
            name: secretenginemounts.redhatcop.redhat.io
            version: v1alpha1
          - description: VaultSecret is the Schema for the vaultsecrets API
            displayName: Vault Secret
            kind: VaultSecret
            name: vaultsecrets.redhatcop.redhat.io
            version: v1alpha1
        description: |
          This operator helps set up Vault Configurations. The main intent is to do so such that subsequently pods can consume the secrets made available.
          There are two main principles through all of the capabilities of this operator:

          1. high-fidelity API. The CRD exposed by this operator reflect field by field the Vault APIs. This is because we don't want to make any assumption on the kinds of configuration workflow that user will set up. That being said the Vault API is very extensive and we are starting with enough API coverage to support, we think, some simple and very common configuration workflows.
          2. attention to security (after all we are integrating with a security tool). To prevent credential leaks we give no permissions to the operator itself against Vault. All APIs exposed by this operator contains enough information to authenticate to Vault using a local service account (local to the namespace where the API exist). In other word for a namespace user to be abel to successfully configure Vault, a service account in that namespace must have been previously given the needed Vault permissions.

          Currently this operator supports the following CRDs:

          1. [Policy](https://github.com/redhat-cop/vault-config-operator#policy) Configures Vault [Policies](https://www.vaultproject.io/docs/concepts/policies)
          2. [KubernetesAuthEngineRole](https://github.com/redhat-cop/vault-config-operator#KubernetesAuthEngineRole) Configures a Vault [Kubernetes Authentication](https://www.vaultproject.io/docs/auth/kubernetes) Role
          3. [SecretEngineMount](https://github.com/redhat-cop/vault-config-operator#SecretEngineMount) Configures a Mount point for a [SecretEngine](https://www.vaultproject.io/docs/secrets)
          4. [DatabaseSecretEngineConfig](https://github.com/redhat-cop/vault-config-operator#DatabaseSecretEngineConfig) Configures a [Database Secret Engine](https://www.vaultproject.io/docs/secrets/databases) Connection
          5. [DatabaseSecretEngineRole](https://github.com/redhat-cop/vault-config-operator#DatabaseSecretEngineRole) Configures a [Database Secret Engine](https://www.vaultproject.io/docs/secrets/databases) Role
          6. [RandomSecret](https://github.com/redhat-cop/vault-config-operator#RandomSecret) Creates a random secret in a vault [kv Secret Engine](https://www.vaultproject.io/docs/secrets/kv) with one password field generated using a [PasswordPolicy](https://www.vaultproject.io/docs/concepts/password-policies)vault-config-operator
        displayName: Vault Config Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - secrets
        - gitops
        - policy
        - credentials
        links:
        - name: Vault Config Operator
          url: https://github.com/redhat-cop/vault-config-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/vault-config-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/redhat-cop/vault-config-operator@sha256:ca58fbf75ceb8f09db43c134ec0f99eafb257e8e0dae80f7cb4298f37e12d486
        - quay.io/community-operator-pipeline-prod/vault-config-operator@sha256:b2dc0c534d0cae9349d3cf2971d65725bad41fc3de8082ba43ec915152e08c8b
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 0.8.37
      entries:
      - name: vault-config-operator.v0.8.37
        version: 0.8.37
      - name: vault-config-operator.v0.8.36
        version: 0.8.36
      - name: vault-config-operator.v0.8.35
        version: 0.8.35
      - name: vault-config-operator.v0.8.34
        version: 0.8.34
      - name: vault-config-operator.v0.8.33
        version: 0.8.33
      - name: vault-config-operator.v0.8.32
        version: 0.8.32
      - name: vault-config-operator.v0.8.31
        version: 0.8.31
      - name: vault-config-operator.v0.8.30
        version: 0.8.30
      - name: vault-config-operator.v0.8.29
        version: 0.8.29
      - name: vault-config-operator.v0.8.28
        version: 0.8.28
      - name: vault-config-operator.v0.8.27
        version: 0.8.27
      - name: vault-config-operator.v0.8.25
        version: 0.8.25
      - name: vault-config-operator.v0.8.24
        version: 0.8.24
      - name: vault-config-operator.v0.8.23
        version: 0.8.23
      - name: vault-config-operator.v0.8.22
        version: 0.8.22
      - name: vault-config-operator.v0.8.21
        version: 0.8.21
      - name: vault-config-operator.v0.8.20
        version: 0.8.20
      - name: vault-config-operator.v0.8.19
        version: 0.8.19
      - name: vault-config-operator.v0.8.18
        version: 0.8.18
      - name: vault-config-operator.v0.8.17
        version: 0.8.17
      - name: vault-config-operator.v0.8.16
        version: 0.8.16
      - name: vault-config-operator.v0.8.15
        version: 0.8.15
      - name: vault-config-operator.v0.8.14
        version: 0.8.14
      - name: vault-config-operator.v0.8.13
        version: 0.8.13
      - name: vault-config-operator.v0.8.12
        version: 0.8.12
      - name: vault-config-operator.v0.8.11
        version: 0.8.11
      - name: vault-config-operator.v0.8.10
        version: 0.8.10
      - name: vault-config-operator.v0.8.9
        version: 0.8.9
      - name: vault-config-operator.v0.8.7
        version: 0.8.7
      - name: vault-config-operator.v0.8.5
        version: 0.8.5
      - name: vault-config-operator.v0.8.4
        version: 0.8.4
      - name: vault-config-operator.v0.8.3
        version: 0.8.3
      - name: vault-config-operator.v0.8.2
        version: 0.8.2
      - name: vault-config-operator.v0.8.0
        version: 0.8.0
      - name: vault-config-operator.v0.7.1
        version: 0.7.1
      - name: vault-config-operator.v0.6.5
        version: 0.6.5
      - name: vault-config-operator.v0.6.4
        version: 0.6.4
      - name: vault-config-operator.v0.6.3
        version: 0.6.3
      - name: vault-config-operator.v0.6.2
        version: 0.6.2
      - name: vault-config-operator.v0.6.1
        version: 0.6.1
      - name: vault-config-operator.v0.6.0
        version: 0.6.0
      - name: vault-config-operator.v0.5.1
        version: 0.5.1
      - name: vault-config-operator.v0.5.0
        version: 0.5.0
      - name: vault-config-operator.v0.4.1
        version: 0.4.1
      - name: vault-config-operator.v0.4.0
        version: 0.4.0
      - name: vault-config-operator.v0.3.1
        version: 0.3.1
      - name: vault-config-operator.v0.3.0
        version: 0.3.0
      - name: vault-config-operator.v0.2.0
        version: 0.2.0
      - name: vault-config-operator.v0.1.2
        version: 0.1.2
      - name: vault-config-operator.v0.1.1
        version: 0.1.1
      - name: vault-config-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: vault-config-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Kepler Operator Contributors
      provider-url: https://sustainable-computing.io/
    name: kepler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kepler-operator.v0.23.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kepler.system.sustainable.computing.io/v1alpha1",
                "kind": "PowerMonitor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "powermonitor",
                    "app.kubernetes.io/name": "powermonitor",
                    "app.kubernetes.io/part-of": "kepler-operator"
                  },
                  "name": "power-monitor"
                },
                "spec": {
                  "kepler": {
                    "config": {
                      "logLevel": "info"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          containerImage: quay.io/sustainable_computing_io/kepler-operator:0.23.0
          createdAt: "2025-11-27T12:36:15Z"
          description: Deploys and Manages Kepler on Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: |-
            [
              "powermonitorinternals.kepler.system.sustainable.computing.io"
            ]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/sustainable-computing-io/kepler-operator
          support: https://github.com/sustainable-computing-io/kepler-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PowerMonitorInternal is the Schema for internal/unsupported
              API
            displayName: PowerMonitorInternal
            kind: PowerMonitorInternal
            name: powermonitorinternals.kepler.system.sustainable.computing.io
            version: v1alpha1
          - description: PowerMonitor is the Schema for the powermonitors API
            displayName: PowerMonitor
            kind: PowerMonitor
            name: powermonitors.kepler.system.sustainable.computing.io
            version: v1alpha1
        description: |-
          Kepler (Kubernetes-based Efficient Power Level Exporter) is a Prometheus exporter that
          measures energy consumption metrics at the container, pod, and node level in Kubernetes clusters.

          ### Prerequisites
          To view the metrics exposed by Kepler, **[User Workload Monitoring](https://docs.redhat.com/documentation/openshift_container_platform/latest/html/monitoring/configuring-user-workload-monitoring)**
          MUST be enabled in your cluster.

          ### Documentation
          * [User Documentation](https://github.com/sustainable-computing-io/kepler-operator/blob/main/README.md)
          * [Developer Guide](https://github.com/sustainable-computing-io/kepler-operator/tree/main/docs/developer)

          ### Contributing
          * [Report Bugs](https://github.com/sustainable-computing-io/kepler-operator/issues/new?template=bug_report.md) - Found a bug? Let us know!
          * [Browse Issues](https://github.com/sustainable-computing-io/kepler-operator/issues) - See what we're working on

          ### License
          Licensed under [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
        displayName: Kepler
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Kepler
        - power
        - energy
        - monitoring
        links:
        - name: Installation Guide
          url: https://sustainable-computing.io/installation/community-operator/
        - name: Kepler Project
          url: https://sustainable-computing.io/
        maintainers:
        - email: sthaha@redhat.com
          name: Sunil Thaha
        - email: vprashar@redhat.com
          name: Vibhu Prashar
        - email: vimalkum@redhat.com
          name: Vimal Kumar
        - email: kaliu@redhat.com
          name: Kaiyi Liu
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Kepler Operator Contributors
          url: https://sustainable-computing.io/
        relatedImages:
        - quay.io/sustainable_computing_io/kepler:v0.11.3
        - quay.io/brancz/kube-rbac-proxy:v0.19.0
        - quay.io/community-operator-pipeline-prod/kepler-operator:0.23.0
        - quay.io/sustainable_computing_io/kepler-operator:0.23.0
        version: 0.23.0
      entries:
      - name: kepler-operator.v0.23.0
        version: 0.23.0
      - name: kepler-operator.v0.22.0
        version: 0.22.0
      - name: kepler-operator.v0.21.0
        version: 0.21.0
      - name: kepler-operator.v0.20.0
        version: 0.20.0
      name: alpha
    defaultChannel: alpha
    packageName: kepler-operator
    provider:
      name: Kepler Operator Contributors
      url: https://sustainable-computing.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app: enmasse
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: amq-online
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-online.1.7.4-0.1657725339.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "admin.enmasse.io/v1beta1",
                "kind": "StandardInfraConfig",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "broker": {
                    "resources": {
                      "memory": "1Gi",
                      "storage": "5Gi"
                    },
                    "addressFullPolicy": "FAIL"
                  },
                  "router": {
                    "linkCapacity": 50,
                    "resources": {
                      "memory": "512Mi"
                    }
                  }
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta1",
                "kind": "BrokeredInfraConfig",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "broker": {
                    "resources": {
                      "memory": "4Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta2",
                "kind": "AddressPlan",
                "metadata": {
                  "name": "standard-small-queue"
                },
                "spec": {
                  "addressType": "queue",
                  "shortDescription": "Small Queue",
                  "resources": {
                    "router": 0.01,
                    "broker": 0.1
                  }
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta2",
                "kind": "AddressSpacePlan",
                "metadata": {
                  "name": "standard-small"
                },
                "spec": {
                  "addressSpaceType": "standard",
                  "infraConfigRef": "default",
                  "shortDescription": "Small Address Space Plan",
                  "resourceLimits": {
                    "router": 1.0,
                    "broker": 2.0,
                    "aggregate": 2.0
                  },
                  "addressPlans": [
                    "standard-small-queue"
                  ]
                }
              },
              {
                "apiVersion": "admin.enmasse.io/v1beta1",
                "kind": "AuthenticationService",
                "metadata": {
                  "name": "standard-authservice"
                },
                "spec": {
                  "type": "standard",
                  "standard": {
                    "storage": {
                      "claimName": "standard-authservice",
                      "deleteClaim": true,
                      "size": "1Gi",
                      "type": "persistent-claim"
                    }
                  }
                }
              },
              {
                "apiVersion": "enmasse.io/v1beta1",
                "kind": "AddressSpace",
                "metadata": {
                  "name": "myspace"
                },
                "spec": {
                  "plan": "standard-small",
                  "type": "standard"
                }
              },
              {
                "apiVersion": "enmasse.io/v1beta1",
                "kind": "Address",
                "metadata": {
                  "name": "myspace.myqueue"
                },
                "spec": {
                  "address": "myqueue",
                  "plan": "standard-small-queue",
                  "type": "queue"
                }
              },
              {
                "apiVersion": "user.enmasse.io/v1beta1",
                "kind": "MessagingUser",
                "metadata": {
                  "name": "myspace.user"
                },
                "spec": {
                  "authentication": {
                    "password": "ZW5tYXNzZQ==",
                    "type": "password"
                  },
                  "authorization": [
                    {
                      "addresses": [
                        "myqueue"
                      ],
                      "operations": [
                        "send",
                        "recv"
                      ]
                    }
                  ],
                  "username": "user"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator@sha256:2aaf87224a96aa56dc595e96d8e7ec8d138aaf20240afa25a1e805b405941355
          createdAt: "2019-02-19T00:00:00Z"
          description: Red Hat Integration - AMQ Online provides messaging as a managed
            service on OpenShift
          olm.substitutesFor: amq-online.1.7.4
          operators.openshift.io/capability: '["license-required"]'
          operators.openshift.io/valid-licenses: '["Red Hat AMQ", "Red Hat Integration"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ"]'
          repository: ""
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A messaging user that can connect to an Address Space
            displayName: Messaging User
            kind: MessagingUser
            name: messagingusers.user.enmasse.io
            version: v1beta1
          - description: A resource representing the available schema of plans and
              authentication services
            displayName: AddressSpaceSchema
            kind: AddressSpaceSchema
            name: addressspaceschemas.enmasse.io
            version: v1beta1
          - description: A group of messaging addresses that can be accessed via the
              same endpoint
            displayName: Address Space
            kind: AddressSpace
            name: addressspaces.enmasse.io
            version: v1beta1
          - description: A messaging address that can be used to send/receive messages
              to/from
            displayName: Address
            kind: Address
            name: addresses.enmasse.io
            version: v1beta1
          - description: Infrastructure configuration template for the standard address
              space type
            displayName: Standard Infra Config
            kind: StandardInfraConfig
            name: standardinfraconfigs.admin.enmasse.io
            version: v1beta1
          - description: Infrastructure configuration template for the brokered address
              space type
            displayName: Brokered Infra Config
            kind: BrokeredInfraConfig
            name: brokeredinfraconfigs.admin.enmasse.io
            version: v1beta1
          - description: Plan describing the resource usage of a given address type
            displayName: Address Plan
            kind: AddressPlan
            name: addressplans.admin.enmasse.io
            version: v1beta2
          - description: Plan describing the capabilities and resource limits of a
              given address space type
            displayName: Address Space Plan
            kind: AddressSpacePlan
            name: addressspaceplans.admin.enmasse.io
            version: v1beta2
          - description: Authentication service configuration available to address
              spaces.
            displayName: Authentication Service
            kind: AuthenticationService
            name: authenticationservices.admin.enmasse.io
            version: v1beta1
          - description: Console Service Singleton for deploying global console.
            displayName: Console Service
            kind: ConsoleService
            name: consoleservices.admin.enmasse.io
            version: v1beta1
        description: "**Red Hat Integration - AMQ Online** provides messaging as a
          managed service on OpenShift.\nWith Red Hat Integration - AMQ Online, administrators
          can configure a cloud-native,\nmulti-tenant messaging service either in
          the cloud or on premise.\nDevelopers can provision messaging using the Red
          Hat Integration - AMQ Online Console.\nMultiple development teams can provision
          the brokers and queues from the\nconsole, without requiring each team to
          install, configure, deploy,\nmaintain, or patch any software. \n\n**The
          core capabilities include:**\n\n  * **Built-in authentication and authorization**
          - Use the built-in authentication service or\n    plug in your own authentication
          service for authentication and\n    authorization of messaging clients.\n\n
          \ * **Self-service messaging for applications** - The service administrator
          deploys\n    and manages the messaging infrastructure, while applications
          can request\n    messaging resources regardless of the messaging infrastructure.\n\n
          \ * **Support for a wide variety of messaging patterns** - Choose between\n
          \   JMS-style messaging with strict guarantees, or messaging that supports\n
          \   a larger number of connections and higher throughput.\n\n## Post-installation
          tasks\n\nTo fully use Red Hat Integration - AMQ Online, you need to create
          a few\ninfrastructure components after the installation, including:\n\n
          \ * An authentication service\n  * Infrastructure configuration for the
          standard and brokered address space\n  * Address and address space plans\n
          \ * (Optional) Create RBAC roles to allow users to discover available plans\n
          \ * (Optional) Create RBAC roles to allow users to self-manage addresses
          and\n    address spaces.\n\nFor a complete overview of how to configure
          Red Hat Integration - AMQ Online, see\n[Configuring Red Hat Integration
          - AMQ Online](https://access.redhat.com/documentation/en-us/red_hat_amq/7.7/html/installing_and_managing_amq_online_on_openshift/configuring-messaging).\n\n###
          Quickstart infrastructure configuration\n\nIf you simply want to get started
          quickly, you can import the following\nYAML by saving the content to a file
          and apply it by running the \n`oc apply -f <file>` command. You can also
          split the content (at the `---` marker)\nand import the single YAML document
          using the Web UI: \n\n~~~yaml\n---\napiVersion: admin.enmasse.io/v1beta1\nkind:
          StandardInfraConfig\nmetadata:\n  name: default\n---\napiVersion: admin.enmasse.io/v1beta2\nkind:
          AddressPlan\nmetadata:\n  name: standard-small-queue\nspec:\n  addressType:
          queue\n  resources:\n    router: 0.01\n    broker: 0.1\n---\napiVersion:
          admin.enmasse.io/v1beta2\nkind: AddressSpacePlan\nmetadata:\n  name: standard-small\nspec:\n
          \ addressSpaceType: standard\n  infraConfigRef: default\n  addressPlans:\n
          \ - standard-small-queue\n  resourceLimits:\n    router: 2.0\n    broker:
          3.0\n    aggregate: 4.0\n---\napiVersion: admin.enmasse.io/v1beta1\nkind:
          AuthenticationService\nmetadata:\n  name: standard-authservice\nspec:\n
          \ type: standard\n  standard:\n    storage:\n      claimName: standard-authservice\n
          \     deleteClaim: true\n      size: 1Gi\n      type: persistent-claim\n~~~\n\n###
          Create RBAC roles to allow users to discover available plans\n\nFor users
          to discover the available plans, cluster-wide roles to read the available\nschema
          can be created.  Import the following YAML by saving the content to a file
          and apply it by running the \n`oc apply -f <file>` command. You can also
          split the content (at the `---` marker)\nand import the single YAML document
          using the Web UI: \n\n~~~yaml\n---\napiVersion: rbac.authorization.k8s.io/v1\nkind:
          ClusterRole\nmetadata:\n  name: enmasse.io:schema\n  labels:\n    app: enmasse\nrules:\n
          \ - apiGroups: [ \"enmasse.io\" ]\n    resources: [ \"addressspaceschemas\"
          ]\n    verbs: [ \"get\", \"list\", \"watch\" ]\n---\napiVersion: rbac.authorization.k8s.io/v1\nkind:
          ClusterRoleBinding\nmetadata:\n  name: \"enmasse.io:schema\"\n  labels:\n
          \   app: enmasse\nroleRef:\n  apiGroup: rbac.authorization.k8s.io\n  kind:
          ClusterRole\n  name: enmasse.io:schema\nsubjects:\n- kind: Group\n  name:
          system:authenticated\n~~~\n\n### Creating infrastructure using the Web UI\n\nYou
          must create a new instance of each of the following custom resources. You
          can\nuse the example data directly, which is provided when using the\nWeb
          UI:\n\n  * *Authentication Service* – Create an authentication service.\n
          \ * *Brokered Infra Config* – Create the broker infrastructure configuration.\n
          \ * *Standard Infra Config* – Create the standard infrastructure\n    configuration.\n\nYou
          must also create at least one address space plan and one address plan.\n\n*Note*:
          The name of the address space plan and address plan is required\nlater when
          creating new addresses. Some examples use specific plan\nnames, which might
          not be available in your environment. You can\ncreate those plans, or edit
          the examples to use different plan names.\n\n## Configuration for messaging
          tenants\n\nWhile service administrators perform the infrastructure configuration,
          the following\nresources are for the actual users of the system, the messaging
          tenants.\n\nYou need to create those resources to satisfy your particular
          use case.\n\n  * *Address space* – A container for addresses\n  * *Address*
          – A messaging address (address, topic, queue, and so on)\n  * *Messaging
          user* – Manages access to an address\n"
        displayName: Red Hat Integration - AMQ Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - amq
        - messaging
        - amqp
        - iot
        - mqtt
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/7.7/html/using_amq_online_on_openshift/index
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-broker@sha256:1ec0437bbd82722148fdbb02dc55682b114c311cd6f521a8bc621a8c1cb4b32b
        - registry.redhat.io/amq7/amq-online-1-address-space-controller@sha256:9acc555c8e869aec7d72f53b60320e1a96cc82d748638e0d50970837229fdbee
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator@sha256:2aaf87224a96aa56dc595e96d8e7ec8d138aaf20240afa25a1e805b405941355
        - registry.redhat.io/amq7/amq-online-1-broker-plugin@sha256:2466a336c0d78b196635de3fad636aeff2d9265839f7271b8ef94f3ba97d9bc0
        - registry.redhat.io/amq7/amq-online-1-controller-manager-rhel7-operator-metadata@sha256:d6d0e71f5451e8255edfff87ef28ba7743fe7057efd53b25bbbd01bf9e1d0307
        - registry.redhat.io/amq7/amq-online-1-console-server-rhel7@sha256:1dcb3d0cc7bc6e84f4f96962ff88849511b7a7686a1f5dbd9300c4c2c8c05e2f
        - registry.redhat.io/amq7/amq-online-1-auth-plugin@sha256:68926f434b2f6ce4d9698938bc3c53d514c21c3f76c73b6b4cdf7fcf51f7cb0d
        - registry.redhat.io/amq7/amq-online-1-console-init@sha256:0970804909b82fdc3d4e7d5d88280e41157d743107de8bfa2d1baa1367543176
        - registry.redhat.io/amq7/amq-interconnect@sha256:5ebd4c4a0ed0db2725ae466550c915531b32933c420344cc2083c616da3f326f
        - registry.redhat.io/amq7/amq-online-1-none-auth-service@sha256:a013fb1806c002b408a7753ff943cee24fbcdf8a657eff1e9582c42b5a7b0844
        - registry.redhat.io/amq7/amq-online-1-topic-forwarder@sha256:de33a701339d91a4e9275f7cf65f917ff75368a59b8ab36dd66c90bc306875aa
        - registry.redhat.io/amq7/amq-online-1-standard-controller@sha256:070349af30cec52fa8efc185fc940077a64bb40e3e36310d7cc6e39ce0971436
        - registry.redhat.io/openshift3/oauth-proxy@sha256:59b20f23c03d0012ec5c95c4725892ee64277c22dedc9d0a90a7b6b0bc80fc72
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6d489a7897bd831ec273034f1ff0e223427a40afd01b9835ebb020a8bf9ddc66
        - registry.redhat.io/redhat-sso-7/sso73-openshift@sha256:18d15980f28f0d0c6b8582131a1f062d84463577512875b5391a612c3d7d1096
        - registry.redhat.io/amq7/amq-online-1-agent@sha256:f98ed8ee97ac59d8fdd40ec8b2c063a5afd360a3e183057c186e7a77a32801ee
        version: 1.7.4+0.1657725339.p
      entries:
      - name: amq-online.1.7.4
        version: 1.7.4
      - name: amq-online.1.7.4-0.1657725339.p
        version: 1.7.4+0.1657725339.p
      - name: amq-online.1.7.3
        version: 1.7.3
      - name: amq-online.1.7.2
        version: 1.7.2
      - name: amq-online.1.7.1
        version: 1.7.1
      - name: amq-online.1.7.1-0.1628610187.p
        version: 1.7.1+0.1628610187.p
      - name: amq-online.1.7.0
        version: 1.7.0
      name: stable
    defaultChannel: stable
    packageName: amq-online
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: tang-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tang-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "daemons.redhat.com/v1alpha1",
                "kind": "TangServer",
                "metadata": {
                  "finalizers": [
                    "finalizer.daemons.tangserver.redhat.com"
                  ],
                  "name": "tangserver",
                  "namespace": "nbde"
                },
                "spec": {
                  "healthScript": "/usr/bin/tangd-health-check",
                  "image": "registry.redhat.io/rhel9/tang",
                  "keyPath": "/var/db/tang",
                  "persistentVolumeClaim": "tangserver-pvc",
                  "replicas": 1,
                  "version": "latest"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:f43c96035f43040b3644e37119a3b35fc433f366d4b636459d1b9b02a05b5d3d
          createdAt: 2023-11-23T12:49:40
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TangServer is the Schema for the tangservers API
            displayName: Tang Server
            kind: TangServer
            name: tangservers.daemons.redhat.com
            version: v1alpha1
        description: NBDE Tang Server operator allows Tang Server deployment on OpenShift
        displayName: NBDE Tang Server
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nbde
        - tang
        links:
        - name: Tang Operator
          url: https://github.com/latchset/tang-operator
        maintainers:
        - email: sarroutb@redhat.com
          name: Sergio Arroutbi Braojos
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/nbde-tang-server/tang-operator-bundle@sha256:a77d39ded03271f2deb8b438abd4328a1846ee0d4886cce14d869ba61f84d600
        - registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:f43c96035f43040b3644e37119a3b35fc433f366d4b636459d1b9b02a05b5d3d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:97cade2c1ee468261aec5400728c8d44de387b459134aec7a4c3b5ec5a335d2c
        version: 1.0.0
      entries:
      - name: tang-operator.v1.0.0
        version: 1.0.0
      name: alpha
    - currentCSV: tang-operator.v1.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "daemons.redhat.com/v1alpha1",
                "kind": "TangServer",
                "metadata": {
                  "finalizers": [
                    "finalizer.daemons.tangserver.redhat.com"
                  ],
                  "name": "tangserver",
                  "namespace": "nbde"
                },
                "spec": {
                  "healthScript": "/usr/bin/tangd-health-check",
                  "image": "registry.redhat.io/rhel9/tang",
                  "keyPath": "/var/db/tang",
                  "persistentVolumeClaim": "tangserver-pvc",
                  "replicas": 1,
                  "version": "latest"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:1cb2f794689817282ac570cacb106d75a2751a1926d89d3b83b619e02d869e5e
          createdAt: 2024-12-04T19:01:27
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TangServer is the Schema for the tangservers API
            displayName: Tang Server
            kind: TangServer
            name: tangservers.daemons.redhat.com
            version: v1alpha1
        description: NBDE Tang Server operator allows Tang Server deployment on OpenShift
        displayName: NBDE Tang Server
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nbde
        - tang
        links:
        - name: Tang Operator
          url: https://github.com/latchset/tang-operator
        maintainers:
        - email: sarroutb@redhat.com
          name: Sergio Arroutbi Braojos
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/nbde-tang-server/tang-operator-bundle@sha256:a6f3a3a8aa52de4441ef3249a76dcff1b6b6defba417a9fdbba37eb458adee04
        - registry.redhat.io/nbde-tang-server/tang-rhel9-operator@sha256:1cb2f794689817282ac570cacb106d75a2751a1926d89d3b83b619e02d869e5e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1172e150fff22c5eeab572f26961f3f53fbf896ee76d08c7503cfe2777c55458
        version: 1.0.3
      entries:
      - name: tang-operator.v1.0.3
        version: 1.0.3
      name: stable
    defaultChannel: alpha
    packageName: tang-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: SAP LinuxLab - Red Hat
      provider-url: https://github.com/sap-linuxlab
    name: sap-hana-express-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sap-hana-express-operator.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "db.sap-redhat.io/v1alpha1",
                "kind": "HanaExpress",
                "metadata": {
                  "name": "hanaexpress-sample"
                },
                "spec": {
                  "credential": {
                    "key": "hxepasswd.json",
                    "name": "hxepasswd"
                  },
                  "pvcSize": "1Gi"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: quay.io/redhat-sap-cop/sap-hanaexpress-operator:0.1.4
          createdAt: "2023-07-16T20:53:02Z"
          description: Manage the lifecycle of SAP Hana Express
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HanaExpress is the Schema for the hanaexpresses API
            displayName: Hana Express
            kind: HanaExpress
            name: hanaexpresses.db.sap-redhat.io
            version: v1alpha1
        description: Operator for managing the lifecycle of SAP Hana Express on Kubernetes
          platform
        displayName: SAP Hana Express Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Database
        - SAP
        links:
        - name: Sap Hana Express Operator
          url: https://github.com/redhat-sap/sap-hana-express-operator
        maintainers:
        - email: mjiao@redhat.com
          name: RedHat@SAPLinuxLab
        maturity: alpha
        provider:
          name: SAP LinuxLab - Red Hat
          url: https://github.com/sap-linuxlab
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/openshift-community-operators/sap-hana-express-operator@sha256:0fa4f29bd7669690be87a08405bed95d3ead2293a125b28149de2b10b02d2cd6
        - quay.io/redhat-sap-cop/sap-hanaexpress-operator:0.1.4
        version: 1.0.2
      entries:
      - name: sap-hana-express-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: sap-hana-express-operator
    provider:
      name: SAP LinuxLab - Red Hat
      url: https://github.com/sap-linuxlab
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/limitador-operator
    name: limitador-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: limitador-operator.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "limitador.kuadrant.io/v1alpha1",
                "kind": "Limitador",
                "metadata": {
                  "name": "limitador-sample"
                },
                "spec": {
                  "limits": [
                    {
                      "conditions": [
                        "get_toy == 'yes'"
                      ],
                      "max_value": 2,
                      "namespace": "toystore-app",
                      "seconds": 30,
                      "variables": []
                    }
                  ],
                  "listener": {
                    "grpc": {
                      "port": 8081
                    },
                    "http": {
                      "port": 8080
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/limitador-operator:v0.5.0
          operators.operatorframework.io/builder: operator-sdk-v1.22.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/limitador-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Limitador
            name: limitadors.limitador.kuadrant.io
            version: v1alpha1
        description: The Limitador operator installs and maintains limitador instances
        displayName: Limitador
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - rate-limit
        links:
        - name: Limitador Operator
          url: https://github.com/Kuadrant/limitador-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: asnaps@redhat.com
          name: Alex Snaps
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/limitador-operator
        relatedImages:
        - quay.io/kuadrant/limitador:v1.2.0
        - quay.io/openshift-community-operators/limitador-operator@sha256:7aa0a4fe55e5e099e2e6e4c2cd44b9bfeba69d8cfade10500ccba3092fb60dd2
        - quay.io/kuadrant/limitador-operator:v0.5.0
        version: 0.5.0
      entries:
      - name: limitador-operator.v0.5.0
        version: 0.5.0
      - name: limitador-operator.v0.4.0
        version: 0.4.0
      - name: limitador-operator.v0.3.0
        version: 0.3.0
      name: alpha
    - currentCSV: limitador-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "limitador.kuadrant.io/v1alpha1",
                "kind": "Limitador",
                "metadata": {
                  "name": "limitador-sample"
                },
                "spec": {
                  "limits": [
                    {
                      "conditions": [
                        "get_toy == 'yes'"
                      ],
                      "max_value": 2,
                      "name": "toy_get_route",
                      "namespace": "toystore-app",
                      "seconds": 30,
                      "variables": []
                    }
                  ],
                  "listener": {
                    "grpc": {
                      "port": 8081
                    },
                    "http": {
                      "port": 8080
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/limitador-operator:v0.11.0
          createdAt: "2024-10-02T10:46:31Z"
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/limitador-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Limitador
            name: limitadors.limitador.kuadrant.io
            version: v1alpha1
        description: The Limitador operator installs and maintains limitador instances
        displayName: Limitador
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - rate-limit
        links:
        - name: Limitador Operator
          url: https://github.com/Kuadrant/limitador-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: asnaps@redhat.com
          name: Alex Snaps
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/limitador-operator
        relatedImages:
        - quay.io/kuadrant/limitador:v1.6.0
        - quay.io/community-operator-pipeline-prod/limitador-operator@sha256:450f9bf43b57b83e9975a1865981af22e28c725193573354d1180f406887664a
        - quay.io/kuadrant/limitador-operator:v0.11.0
        version: 0.11.0
      entries:
      - name: limitador-operator.v0.11.0
        version: 0.11.0
      - name: limitador-operator.v0.10.0
        version: 0.10.0
      - name: limitador-operator.v0.6.0
        version: 0.6.0
      - name: limitador-operator.v0.5.0
        version: 0.5.0
      - name: limitador-operator.v0.4.0
        version: 0.4.0
      - name: limitador-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: limitador-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/limitador-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: apicurio-registry-3
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-registry-3.v3.1.0-r1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry3",
                "metadata": {
                  "name": "simple"
                },
                "spec": {
                  "app": {
                    "ingress": {
                      "host": "simple-app.apps.cluster.example"
                    }
                  },
                  "ui": {
                    "ingress": {
                      "host": "simple-ui.apps.cluster.example"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/apicurio/apicurio-registry-rhel9-operator@sha256:ce7f4559a6942e9f41205fe6da95fdf333ff108bd41961a5bd62879021f30d20
          createdAt: "2025-10-15"
          description: Deploy and manage Red Hat build of Apicurio Registry 3 on OpenShift.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Application Foundations",
            "Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/Apicurio/apicurio-registry/tree/main/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry3 represents an instance of Red Hat build
              of Apicurio Registry version 3.
            displayName: Apicurio Registry 3
            kind: ApicurioRegistry3
            name: apicurioregistries3.registry.apicur.io
            version: v1
        description: |
          ## Red Hat build of Apicurio Registry 3

          Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Allows you manage event schemas and API designs using the Apicurio Registry web console, REST API, Maven plug-in, or Java client
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL, MySQL\*, SQL Server\*, in-memory\*
          - Compatible with Confluent APIs
          - Runs on a lightweight Quarkus platform

          _Note: Storage options marked with * have not yet been tested by Red Hat for production deployments._

          ## Red Hat build of Apicurio Registry 3 Operator

          Provides a quick and easy way to deploy and manage Red Hat build of Apicurio Registry 3 on OpenShift.

          **Features**
          - Supports installation and configuration of Red Hat build of Apicurio Registry 3
          - Perform a rolling upgrade of Red Hat build of Apicurio Registry 3

          ## Prerequisites

          This operator does not deploy storage for Red Hat build of Apicurio Registry 3. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Red Hat build of Apicurio Registry 3 and Apicurio Registry 3 Operator are licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry/blob/main/LICENSE)
        displayName: Red Hat build of Apicurio Registry 3
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        - email: jsenko+apicurio@redhat.com
          name: Jakub Senko
        - email: ewittman+apicurio@redhat.com
          name: Eric Wittmann
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/apicurio/apicurio-registry-ui-rhel9@sha256:9daa045d14192754950aabb4c0a741f29ff4f0f431cb19c12bd1268ad21de639
        - registry.redhat.io/apicurio/apicurio-registry-3-operator-bundle@sha256:0c29e835e253ff6bc0dfb2a9ca01e94756c8995f3396ddca07dde95c9e16e633
        - registry.redhat.io/apicurio/apicurio-registry-rhel9-operator@sha256:ce7f4559a6942e9f41205fe6da95fdf333ff108bd41961a5bd62879021f30d20
        - registry.redhat.io/apicurio/apicurio-registry-rhel9@sha256:fb3fdbb49017c86c25058c824d833be061cd4f51cfe6b43ab5d7f799f0a87e78
        version: 3.1.0-r1
      entries:
      - name: apicurio-registry-3.v3.1.0-r1
        version: 3.1.0-r1
      - name: apicurio-registry-3.v3.0.15-r1
        version: 3.0.15-r1
      - name: apicurio-registry-3.v3.0.9-r3
        version: 3.0.9-r3
      - name: apicurio-registry-3.v3.0.9-r2
        version: 3.0.9-r2
      - name: apicurio-registry-3.v3.0.9-r1
        version: 3.0.9-r1
      - name: apicurio-registry-3.v3.0.7-r2
        version: 3.0.7-r2
      - name: apicurio-registry-3.v3.0.7-r1
        version: 3.0.7-r1
      - name: apicurio-registry-3.v3.0.6-beta.r1
        version: 3.0.6-beta.r1
      - name: apicurio-registry-3.v3.0.6-beta.r1-0.1740495889.p
        version: 3.0.6-beta.r1+0.1740495889.p
      - name: apicurio-registry-3.v3.0.6-beta
        version: 3.0.6-beta
      name: 3.x
    defaultChannel: 3.x
    packageName: apicurio-registry-3
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/stolostron/multicluster-global-hub
    name: multicluster-global-hub-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-global-hub-operator.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "global-hub.open-cluster-management.io/v1alpha1",
                "kind": "ManagedClusterMigration",
                "metadata": {
                  "name": "migration-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha1",
                "kind": "MulticlusterGlobalHubAgent",
                "metadata": {
                  "name": "multiclusterglobalhubagent"
                },
                "spec": {
                  "transportConfigSecretName": "transport-config"
                }
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha4",
                "kind": "MulticlusterGlobalHub",
                "metadata": {
                  "name": "multiclusterglobalhub"
                },
                "spec": {
                  "dataLayer": {
                    "postgres": {
                      "retention": "18m"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-operator-globalhub-1-6@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
          createdAt: "2025-08-27T07:10:21Z"
          description: Manages the installation and upgrade of the Multicluster Global
            Hub.
          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: "true"
          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"
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1alpha4",
            "kind":"MulticlusterGlobalHub","metadata":{"name":"multiclusterglobalhub","namespace":"multicluster-global-hub"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-global-hub
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/multicluster-global-hub
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterMigration is a global hub resource that allows
              you to migrate managed clusters from one hub to another
            displayName: Managed Cluster Migration
            kind: ManagedClusterMigration
            name: managedclustermigrations.global-hub.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHubAgent is the Schema for the multiclusterglobalhubagents
              API
            displayName: Multicluster Global Hub Agent
            kind: MulticlusterGlobalHubAgent
            name: multiclusterglobalhubagents.operator.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHub defines the configuration for an instance
              of the multiCluster global hub
            displayName: Multicluster Global Hub
            kind: MulticlusterGlobalHub
            name: multiclusterglobalhubs.operator.open-cluster-management.io
            version: v1alpha4
        description: |
          The Multicluster Global Hub Operator contains the components of multicluster global hub. The Operator deploys all of the required components for global multicluster management. The components include `multicluster-global-hub-manager` and `multicluster-global-hub-grafana` in the global hub cluster and `multicluster-global-hub-agent` in the managed hub clusters.
          The Operator also deploys the strimzi kafka and crunchy postgres if you do not bring your own kafka and postgres.

          ## Prerequisites
          - Red Hat Advanced Cluster Management for Kubernetes needs to be installed. You can find the support matrix in the official document.

          ## How to Install
          Install the Multicluster Global Hub Operator by following the instructions that are displayed after you select the Install button.
          A pod will be created in `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                             READY   STATUS    RESTARTS   AGE
          multicluster-global-hub-operator-5ccbbc878d-98fdp                1/1     Running   0          19s
          ```
          The operator is now providing new Custom Resources Definitions: `multiclusterglobalhubs.operator.open-cluster-management.io`

          ## Using the Multicluster Global Hub Operator
          After installed the operator, create an instance of the MulticlusterGlobalHub resource to instantiate the Multicluster Global Hub.
          Once an instance of the MulticlusterGlobalHub is created, the following pods are created in the `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                    READY   STATUS    RESTARTS   AGE
          kafka-entity-operator-68dcd446f4-pg257                  3/3     Running   0          19m
          kafka-kraft-0                                           1/1     Running   0          20m
          kafka-kraft-1                                           1/1     Running   0          20m
          kafka-kraft-2                                           1/1     Running   0          20m
          multicluster-global-hub-grafana-5b7cfb6876-5rcnn        2/2     Running   0          19m
          multicluster-global-hub-grafana-5b7cfb6876-wq99v        2/2     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-hzfvw        1/1     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-wbkzl        1/1     Running   0          19m
          multicluster-global-hub-operator-768bd5bd4f-59xjd       1/1     Running   0          22m
          multicluster-global-hub-postgresql-0                    2/2     Running   0          22m
          strimzi-cluster-operator-v0.43.0-6fff49d5b5-5j22r       1/1     Running   0          22m
          ```
          ## Documentation
          For documentation about installing and using the Multicluster GlobalHub Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [Multicluser GlobalHub Documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html-single/multicluster_global_hub/index#doc-wrapper) in the Red Hat Advanced Cluster Management
          documentation.

          ## Support & Troubleshooting
          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: Multicluster Global Hub Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multicluster-global-hub
        - multiple-hubs
        links:
        - name: Multicluster Global Hub Operator
          url: https://github.com/stolostron/multicluster-global-hub
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: stable
        provider:
          name: Red Hat, Inc
          url: https://github.com/stolostron/multicluster-global-hub
        relatedImages:
        - quay.io/community-operator-pipeline-prod/multicluster-global-hub-operator:1.6.0
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/glo-grafana-globalhub-1-6@sha256:870866e86ce870ad8d97ee060483e3c9042076f4ec987d4769e09d8daddd963d
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-agent-globalhub-1-6@sha256:903aea3e61d68f13d60c33f98bc9fa220eb8426ccedb43948015b6dfd50e8cf0
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-manager-globalhub-1-6@sha256:98273949e754fc81aa9240b507ab13e12fe2e9ecb6dafe601756567af18a077c
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/multicluster-global-hub-operator-globalhub-1-6@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
        - quay.io/redhat-user-workloads/acm-multicluster-glo-tenant/postgres-exporter-globalhub-1-6@sha256:2a68afbc8b4208e8aa16e7f0a8266246a16a2e97d4d6f930318888fc1e0c7306
        - quay.io/stolostron/postgresql-16@sha256:db2f73275f9cc0f2d262fadb8e8a5da72b089f9d22f7c859bb1364d9f9a8b622
        version: 1.6.0
      entries:
      - name: multicluster-global-hub-operator.v1.6.0
        version: 1.6.0
      name: release-1.6
    defaultChannel: release-1.6
    packageName: multicluster-global-hub-operator
    provider:
      name: Red Hat, Inc
      url: https://github.com/stolostron/multicluster-global-hub
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Internal
      provider-url: redhat.com
    name: l5-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: l5-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pets.bestie.com/v1",
                "kind": "Bestie",
                "metadata": {
                  "name": "bestie"
                },
                "spec": {
                  "image": "quay.io/opdev/bestie",
                  "maxReplicas": 10,
                  "size": 3,
                  "version": "1.3"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Application Runtime
          certified: "false"
          containerImage: quay.io/opdev/l5-operator:v0.0.3
          createdAt: "2023-06-27T16:56:10Z"
          description: L5 Operator is a demo operator that aims to demonstrate level
            5 capabilities for web applications.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          relatedImages: quay.io/opdev/bestie@sha256:0e99ada2b1de19043845dd9076789584aeddc2646402e5f0987dd00424be1ee7
          repository: https://github.com/opdev/l5-operator-demo
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Bestie is the Schema for the besties API.
            displayName: Bestie
            kind: Bestie
            name: besties.pets.bestie.com
            version: v1
        description: |
          ## Usage
          The L5 operator is meant to demonstrate a minimum viable prototype of all capability levels outilned in the operator framework. The L5 operator is compatible with both Kubernetes and OpenShift clusters. When running on vanilla kubernetes a few prerequisites need to be kept in mind which may not be available out of the box. These include an ingress controller and a prometheus operator for level 4 capability. The L5 operator also depends on the Crunchy Data PostgreSQL operator. On openshift when installing via the Operator Lifecycle Manager, this will automatically be installed when installing the operator via the embdeded operator hub. The Operator Lifecycle Manager is also available for vanilla kubernetes however it may not be installed out of the box. In this case the Crunchy Data PostgreSQL operator must be installed manually. The Crunchy Data PostgreSQL operator can be installed on vanilla kuberentes using the [instructions provided by Crunchy Data](https://access.crunchydata.com/documentation/postgres-operator/4.7.5/installation/postgres-operator/) More documentation and examples can be found on [github](https://github.com/opdev/l5-operator-demo).
        displayName: L5 Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - l5-operator
        links:
        - name: L5 Operator
          url: https://opdev.github.io/l5-operator-demo/
        maintainers:
        - email: partnereng@redhat.com
          name: OpDev Team
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat Internal
          url: redhat.com
        relatedImages:
        - quay.io/opdev/l5-operator:v0.0.3
        - quay.io/openshift-community-operators/l5-operator@sha256:e4cb13801a80753c99a47f009ca0a29416b3e04afe5314d07d97c2464a6f0d75
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.0.3
      entries:
      - name: l5-operator.v0.0.3
        version: 0.0.3
      - name: l5-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: l5-operator
    provider:
      name: Red Hat Internal
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: fence-agents-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fence-agents-remediation.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediation",
                "metadata": {
                  "name": "worker-1"
                },
                "spec": {
                  "agent": "fence_ipmilan",
                  "nodeSecretNames": {
                    "master-0": "fence-agents-credentials-master0",
                    "master-1": "fence-agents-credentials-master1",
                    "master-2": "fence-agents-credentials-master2",
                    "worker-0": "fence-agents-credentials-worker0",
                    "worker-1": "fence-agents-credentials-worker1",
                    "worker-2": "fence-agents-credentials-worker2"
                  },
                  "nodeparameters": {
                    "--ipport": {
                      "master-0": "6230",
                      "master-1": "6231",
                      "master-2": "6232",
                      "worker-0": "6233",
                      "worker-1": "6234",
                      "worker-2": "6235"
                    }
                  },
                  "remediationStrategy": "ResourceDeletion",
                  "retrycount": 5,
                  "retryinterval": "5s",
                  "sharedSecretName": "fence-agents-credentials-shared",
                  "sharedparameters": {
                    "--action": "reboot",
                    "--ip": "192.168.111.1",
                    "--lanplus": "",
                    "--username": "admin"
                  },
                  "timeout": "60s"
                }
              },
              {
                "apiVersion": "fence-agents-remediation.medik8s.io/v1alpha1",
                "kind": "FenceAgentsRemediationTemplate",
                "metadata": {
                  "name": "fenceagentsremediationtemplate-default"
                },
                "spec": {
                  "template": {
                    "spec": {
                      "agent": "fence_ipmilan",
                      "nodeSecretNames": {
                        "master-0": "fence-agents-credentials-master0",
                        "master-1": "fence-agents-credentials-master1",
                        "master-2": "fence-agents-credentials-master2",
                        "worker-0": "fence-agents-credentials-worker0",
                        "worker-1": "fence-agents-credentials-worker1",
                        "worker-2": "fence-agents-credentials-worker2"
                      },
                      "nodeparameters": {
                        "--ipport": {
                          "master-0": "6230",
                          "master-1": "6231",
                          "master-2": "6232",
                          "worker-0": "6233",
                          "worker-1": "6234",
                          "worker-2": "6235"
                        }
                      },
                      "remediationStrategy": "ResourceDeletion",
                      "retrycount": 5,
                      "retryinterval": "5s",
                      "sharedSecretName": "fence-agents-credentials-shared",
                      "sharedparameters": {
                        "--action": "reboot",
                        "--ip": "192.168.111.1",
                        "--lanplus": "",
                        "--username": "admin"
                      },
                      "timeout": "60s"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: ""
          createdAt: "2025-09-08 09:19:00"
          description: Fence Agents Remediation Operator uses well-known agents to
            fence and remediate unhealthy nodes. The remediation includes rebooting
            the unhealthy node using a fence agent, and then evicting workloads from
            the unhealthy node.
          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: "true"
          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.skipRange: '>=0.5.0 <0.6.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/fence-agents-remediation
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FenceAgentsRemediation is the Schema for the fenceagentsremediations
              API
            displayName: Fence Agents Remediation
            kind: FenceAgentsRemediation
            name: fenceagentsremediations.fence-agents-remediation.medik8s.io
            version: v1alpha1
          - description: FenceAgentsRemediationTemplate is the Schema for the fenceagentsremediationtemplates
              API
            displayName: Fence Agents Remediation Template
            kind: FenceAgentsRemediationTemplate
            name: fenceagentsremediationtemplates.fence-agents-remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Fence Agents Remediation (FAR) is a Kubernetes operator that uses well-known agents to fence and remediate unhealthy nodes.
          The remediation includes rebooting the unhealthy node using a fence agent and then evicting workloads from the unhealthy node.

          ### Compatibility
          FAR is one of the remediator operators by [Medik8s](https://www.medik8s.io/remediation/remediation/),
          such as [Self Node Remediation](https://github.com/medik8s/self-node-remediation) and [Machine Deletion Remediation](https://github.com/medik8s/machine-deletion-remediation),
          that were designed to run with the Node HealthCheck Operator [(NHC)](https://github.com/medik8s/node-healthcheck-operator) which detects an unhealthy node and creates remediation CR.
          It is recommended to use FAR with NHC for an easier and smoother experience by fully automating the remediation process, but it can be used as a standalone remediator for the more experienced user.

          ### Advantages
          - Robustness - FAR has direct feedback from the traditional Application Programming Interface (API) call (e.g., IPMI) about the result of the fence action without using the Kubernetes API.
          - Speed - FAR is rapid since it can reboot a node and receive an acknowledgment from the API call while other remediators might need to wait a safe time till they can expect the node to be rebooted.
          - Diversity - FAR includes several fence agents from a large known set of upstream fencing agents for bare metal servers, virtual machines, cloud platforms, etc.
          - Adjustability - FAR allows to set up different parameters for running the API call that remediates the node.
        displayName: Fence Agents Remediation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - fencing
        - auto-healing
        - recovery
        - high-availability
        - fence-agents
        - fence-agents-remediation
        - remediation
        - far
        - baremetal
        links:
        - name: Fence Agents Remediation
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.8/html/remediation_fencing_and_maintenance/about-remediation-fencing-maintenance
        - name: Source Code
          url: https://www.github.com/medik8s/fence-agents-remediation
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/workload-availability/fence-agents-remediation-operator-bundle@sha256:6c0899610a78d2737c2096552e5146d9d5602b5568fab24b51b409dbffcf1961
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:d37a6d10b0fa07370066a31fdaffe2ea553faf4e4e98be7fcef5ec40d62ffe29
        - registry.redhat.io/workload-availability/fence-agents-remediation-rhel9-operator@sha256:eef1a298718650a22a3da4a07c140ce21b6f287d87af79801610317fa8f63d52
        version: 0.6.0
      entries:
      - name: fence-agents-remediation.v0.6.0
        version: 0.6.0
      - name: fence-agents-remediation.v0.5.1
        version: 0.5.1
      - name: fence-agents-remediation.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: fence-agents-remediation
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: runtimes-inventory-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runtimes-inventory-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          containerImage: registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-rhel9-operator@sha256:a4e12329119133ab09754489d29110f13f1793b01e30b5d19b9ab0b9525b7360
          createdAt: 15 Dec 2025, 21:14
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/RedHatInsights/runtimes-inventory-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: Operator support for Runtimes Inventory
        displayName: Runtimes Inventory Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - insights
        - java
        - runtimes
        - red hat
        links:
        - name: Runtimes Inventory Operator
          url: https://github.com/RedHatInsights/runtimes-inventory-operator
        maintainers:
        - email: ebaron@redhat.com
          name: Elliott Baron
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-agent-init-rhel9@sha256:6aede889f665445ea2f9ad3584f4b7004c6bfda8e6b1b4b3771d56da56347e2e
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-rhel9-operator@sha256:a4e12329119133ab09754489d29110f13f1793b01e30b5d19b9ab0b9525b7360
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-operator-bundle@sha256:b5f0ff2579eaa5f85452b009a2f7735238f87a05c3f7d503218807f0741c1a9f
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:cd1c4e0a2259d244eee0c552755d80a4dc751aa3cb0d3a69a5342c3135a0216a
        version: 1.0.0
      entries:
      - name: runtimes-inventory-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: runtimes-inventory-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: authorino-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: authorino-operator.v1.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "authorino.kuadrant.io/v1beta2",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "authorino.kuadrant.io/v1beta3",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/authorino-rhel9-operator@sha256:0b60bb9afa31a549d0eac9331f6024e461ab3aed5b1fb2d461dd4db8ddeebeb9
          createdAt: 25 Sep 2025, 09:37
          description: Enables authentication and authorization for Gateways and applications
            in a Gateway API network.
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta2
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta3
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: The operator to manage instances of Authorino
        displayName: Authorino Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: Authorino Operator
          url: https://github.com/Kuadrant/authorino-operator
        - name: Authorino
          url: https://github.com/Kuadrant/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhcl-1/authorino-operator-bundle@sha256:fc75af6e706a8d2e3ca9e4206baa64745a4d2ff7a0ea8bae8e187ea5b79c7e4d
        - registry.redhat.io/rhcl-1/authorino-rhel9-operator@sha256:0b60bb9afa31a549d0eac9331f6024e461ab3aed5b1fb2d461dd4db8ddeebeb9
        - registry.redhat.io/rhcl-1/authorino-rhel9@sha256:be77901b29529646bbec6baf0d1a7c350be0db291b07a845f353181c25d89f78
        version: 1.2.4
      entries:
      - name: authorino-operator.v1.2.4
        version: 1.2.4
      - name: authorino-operator.v1.2.3
        version: 1.2.3
      - name: authorino-operator.v1.2.2
        version: 1.2.2
      - name: authorino-operator.v1.2.1
        version: 1.2.1
      - name: authorino-operator.v1.1.3
        version: 1.1.3
      - name: authorino-operator.v1.1.2
        version: 1.1.2
      - name: authorino-operator.v1.1.1
        version: 1.1.1
      - name: authorino-operator.v1.1.0
        version: 1.1.0
      - name: authorino-operator.v1.0.2
        version: 1.0.2
      name: stable
    - currentCSV: authorino-operator.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "authorino.kuadrant.io/v1beta1",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "hosts": [
                    "my-api.io"
                  ],
                  "identity": [
                    {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "in": "authorization_header",
                        "keySelector": "APIKEY"
                      },
                      "name": "api-key-users"
                    }
                  ]
                }
              },
              {
                "apiVersion": "authorino.kuadrant.io/v1beta2",
                "kind": "AuthConfig",
                "metadata": {
                  "name": "my-api-protection"
                },
                "spec": {
                  "authentication": {
                    "api-key-users": {
                      "apiKey": {
                        "selector": {
                          "matchLabels": {
                            "group": "friends"
                          }
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "hosts": [
                    "my-api.io"
                  ]
                }
              },
              {
                "apiVersion": "operator.authorino.kuadrant.io/v1beta1",
                "kind": "Authorino",
                "metadata": {
                  "name": "authorino-sample"
                },
                "spec": {
                  "listener": {
                    "tls": {
                      "enabled": false
                    }
                  },
                  "oidcServer": {
                    "tls": {
                      "enabled": false
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/3scale-tech-preview/authorino-rhel9-operator@sha256:eb574781cf39917f8f5d9e5c806f520534601f819ee1ebcbb751832da8938008
          createdAt: "2024-11-08T11:06:33Z"
          description: Authorino
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/authorino-operator
          support: kuadrant
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta1
          - description: API to describe the desired protection for a service
            displayName: AuthConfig
            kind: AuthConfig
            name: authconfigs.authorino.kuadrant.io
            version: v1beta2
          - description: API to create instances of authorino
            displayName: Authorino
            kind: Authorino
            name: authorinos.operator.authorino.kuadrant.io
            version: v1beta1
        description: |-
          [Authorino](https://docs.kuadrant.io/authorino/) is Red Hat's Kubernetes-native lightweight external authorization service for tailor-made Zero Trust API security.

          Install this Red Hat official distribution of [Authorino Operator](https://docs.kuadrant.io/authorino-operator/) to manage instances of Authorino in this cluster.

          The current state of this distribution of the operator is: **_Technical Preview_**.

          The Community version of Authorino Operator, based on upstream public images, is available in [OperatorHub.io](https://operatorhub.io/operator/authorino-operator).

          ## Getting started

          After installing the Operator, request an instance of the external authorization service by creating an `Authorino` custom resource.

          **Minimal example (namespaced)**

          ```yaml
          apiVersion: operator.authorino.kuadrant.io/v1beta1
          kind: Authorino
          metadata:
            name: authorino
          spec:
            listener:
              tls:
                enabled: false
            oidcServer:
              tls:
                enabled: false
          ```

          **Extended example**

          ```yaml
          apiVersion: operator.authorino.kuadrant.io/v1beta1
          kind: Authorino
          metadata:
            name: authorino
          spec:
            clusterWide: true
            authConfigLabelSelectors: environment=production
            secretLabelSelectors: authorino.kuadrant.io/component=authorino,environment=production

            replicas: 2

            evaluatorCacheSize: 2 # mb

            logLevel: info
            logMode: production

            listener:
              ports:
                grpc: 50001
                http: 5001
              tls:
                certSecretRef:
                  name: authorino-server-cert # secret must contain `tls.crt` and `tls.key` entries
              timeout: 2

            oidcServer:
              port: 8083
              tls:
                certSecretRef:
                  name: authorino-oidc-server-cert # secret must contain `tls.crt` and `tls.key` entries

            metrics:
              port: 8080
              deep: true

            healthz:
              port: 8081

            tracing:
              endpoint: rpc://otel-collector.observability.svc.cluster.local:4317
              insecure: true

            volumes:
              items:
                - name: keycloak-tls-cert
                  mountPath: /etc/ssl/certs
                  configMaps:
                    - keycloak-tls-cert
                  items: # details to mount the k8s configmap in the authorino pods
                    - key: keycloak.crt
                      path: keycloak.crt
              defaultMode: 420
          ```

          ### Cluster-wide vs Namespaced

          Namespaced instances only watch auth resources (`AuthConfig` and `Secrets`) created in the same namespace as the Authorino service. Use this mode for dedicated instances that do not require elevated privileges.

          Cluster-wide instances watch resources across the entire cluster (all namespaces.) Deploying and running Authorino in this mode requires elevated privileges.

          ### Multi-tenancy

          Use the `authConfigLabelSelectors` field of the `Authorino` custom resource to narrow the scope of the Authorino instance.

          Only `AuthConfig` custom resources whose labels match the value of this field will be handled by the Authorino instance.

          ## Protect a host

          To protect a host, create an `AuthConfig` custom resource for the host. E.g.:

          ```yaml
          apiVersion: authorino.kuadrant.io/v1beta2
          kind: AuthConfig
          metadata:
            name: my-api-protection
          spec:
            hosts:
            - my-api.io

            authentication:
              "keycloak":
                jwt:
                  issuerUrl: https://keycloak.keycloak.svc.cluster.local:8080/realms/my-realm

            authorization:
              "k8s-rbac":
                kubernetesSubjectAccessReview:
                  user:
                    selector: auth.identity.user.username
                  resourceAttributes:
                    resource:
                      value: my-api
                    verb:
                      selector: request.method
                cache:
                  key:
                    selector: auth.identity.user.username
                  ttl: 30
              "after-2am-only":
                rego: |
                  allow {
                    [hour, _, _] := time.clock(time.now_ns())
                    hour >= 2
                  }
          ```

          Make sure all requests to the host are fisrt checked with the Authorino instance, by configuring an Envoy proxy for external authz:

          ```yaml
          clusters:
          - name: my-api
            …
          - name: authorino
            connect_timeout: 0.25s
            type: STRICT_DNS
            lb_policy: ROUND_ROBIN
            http2_protocol_options: {}
            load_assignment:
              cluster_name: authorino
              endpoints:
              - lb_endpoints:
                - endpoint:
                    address:
                      socket_address:
                        address: authorino-authorino-authorization
                        port_value: 50051
          listeners:
          - filter_chains:
            - filters:
              name: envoy.http_connection_manager
              typed_config:
                "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
                use_remote_address: true
                route_config:
                  name: my-api-config
                  virtual_hosts:
                  - name: my-api-vs
                    domains:
                    - my-api.io
                    routes:
                    - match:
                        prefix: /
                      route:
                        cluster: my-api
                http_filters:
                - name: envoy.filters.http.ext_authz
                  typed_config:
                    "@type": type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz
                    transport_api_version: V3
                    failure_mode_allow: false
                    include_peer_certificate: true
                    grpc_service:
                      envoy_grpc:
                        cluster_name: authorino
                      timeout: 1s
          ```

          ...or, if using Istio, by creating an [`AuthorizationPolicy`](https://istio.io/latest/docs/reference/config/security/authorization-policy/#AuthorizationPolicy) custom resource. Use `action: CUSTOM` in the resource and the Authorino authorization service configured in the mesh extension provider settings.

          ## Features

          **Authentication**

          * JWT validation (with OpenID Connect Discovery)
          * OAuth 2.0 Token Introspection (opaque tokens)
          * Kubernetes TokenReview (ServiceAccount tokens)
          * API key authentication
          * X.509 client certificate authentication
          * Anonymous access
          * Proxy-handled (authentication performed by the proxy)

          **Authorization**

          * Built-in simple pattern matching (e.g. JWT claims, request attributes checking)
          * OPA policies (inline Rego and fetch from external registry)
          * Kubernetes SubjectAccessReview (resource and non-resource attributes)
          * Authzed SpiceDB

          **External metadata**

          * HTTP request
          * OpenID Connect User Info
          * UMA-protected resource attributes

          **Custom responses**

          * Header injection (Festival Wristbands tokens, JSON, plain text)
          * Envoy Dynamic Metadata
          * Custom HTTP response (status code, headers, messages, body, etc)

          **Callbacks**

          * HTTP webhooks

          **Caching**

          * OpenID Connect and User-Managed Access configs
          * JSON Web Keys (JWKs) and JSON Web Key Sets (JWKS)
          * Access tokens
          * External metadata
          * Precompiled Rego policies
          * Policy evaluation

          Check out the full [Feature Specification](https://docs.kuadrant.io/authorino/docs/features/) and how-to guides in the [Kuadrant Docs](https://docs.kuadrant.io) website.
        displayName: Red Hat - Authorino (Technical Preview)
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Authorino
        - Authorino Operator
        - Kuadrant
        - Authorization
        - Authentication
        links:
        - name: GitHub
          url: https://github.com/kuadrant/authorino-operator
        - name: Documentation
          url: https://docs.kuadrant.io/authorino
        maintainers:
        - email: dcesare@redhat.com
          name: Didier Di Cesare
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:3a398158d10018bfac5df291d6998b513cf9a30e5477bcaefddcf66d229627c7
        - registry.redhat.io/3scale-tech-preview/authorino-operator-bundle@sha256:75cb78f7a40d3daedbc11cbbb5505e029328b4120f0de11d4f6423de943e92d8
        - registry.redhat.io/3scale-tech-preview/authorino-rhel9-operator@sha256:eb574781cf39917f8f5d9e5c806f520534601f819ee1ebcbb751832da8938008
        - registry.redhat.io/3scale-tech-preview/authorino-rhel9@sha256:a473dae20e71e3e813ac30ba978f2ab3c5e19d7d39b501ae9103dca892107c87
        version: 1.1.3
      entries:
      - name: authorino-operator.v1.1.3
        version: 1.1.3
      - name: authorino-operator.v1.1.2
        version: 1.1.2
      - name: authorino-operator.v1.1.1
        version: 1.1.1
      - name: authorino-operator.v1.1.0
        version: 1.1.0
      - name: authorino-operator.v1.0.2
        version: 1.0.2
      name: tech-preview-v1
    defaultChannel: stable
    packageName: authorino-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-druid-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: druid-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/druid-operator@sha256:ff1a696b13db48980e86003ba1f439b8996b08e7f5c0f527edd3d3dd4ca858f9
          description: Stackable Operator for Apache Druid
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/druid-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for DruidClusterSpec via `CustomResource`
            displayName: druidclusters.druid.stackable.tech
            kind: DruidCluster
            name: druidclusters.druid.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Druid
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - druid
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - registry.connect.redhat.com/stackable/stackable-apache-druid-operator@sha256:2167a293d682cad01573dbfefb91c0a4cf2feb18566922893d3e1f12dee10854
        - quay.io/stackable/druid-operator@sha256:ff1a696b13db48980e86003ba1f439b8996b08e7f5c0f527edd3d3dd4ca858f9
        version: 25.11.0
      entries:
      - name: druid-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-druid-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Vertica
      provider-url: http://www.vertica.com
    name: verticadb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: verticadb-operator.v1.11.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "EventTrigger",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "verticadb-operator",
                    "app.kubernetes.io/instance": "eventtrigger-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "eventtrigger",
                    "app.kubernetes.io/part-of": "verticadb-operator"
                  },
                  "name": "eventtrigger-sample"
                },
                "spec": {
                  "matches": [
                    {
                      "condition": {
                        "status": "True",
                        "type": "DBInitialized"
                      }
                    }
                  ],
                  "references": [
                    {
                      "object": {
                        "apiVersion": "vertica.com/v1beta1",
                        "kind": "VerticaDB",
                        "name": "verticadb-sample"
                      }
                    }
                  ],
                  "template": {
                    "metadata": {
                      "generateName": "create-user-table-"
                    },
                    "spec": {
                      "template": {
                        "spec": {
                          "containers": [
                            {
                              "command": [
                                "/opt/vertica/bin/vsql",
                                "-h",
                                "verticadb-sample-defaultsubcluster",
                                "-c",
                                "CREATE TABLE T1 (C1 INT);"
                              ],
                              "image": "vertica/vertica-k8s:latest",
                              "name": "main"
                            }
                          ],
                          "restartPolicy": "OnFailure"
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaAutoscaler",
                "metadata": {
                  "name": "verticaautoscaler-sample"
                },
                "spec": {
                  "serviceName": "defaultsubcluster",
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaDB",
                "metadata": {
                  "name": "verticadb-sample"
                },
                "spec": {
                  "communal": {
                    "endpoint": "https://s3.amazonaws.com"
                  },
                  "image": "vertica/vertica-k8s:23.3.0-0-minimal",
                  "subclusters": [
                    {
                      "name": "default_subcluster",
                      "size": 3
                    }
                  ]
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          containerImage: docker.io/vertica/verticadb-operator:1.11.2
          createdAt: "2023-08-02T11:29:39Z"
          description: Operator that manages a Vertica Eon Mode database.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/vertica/vertica-kubernetes
          support: Vertica
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EventTrigger is the Schema for the eventtriggers API
            displayName: Event Trigger
            kind: EventTrigger
            name: eventtriggers.vertica.com
            version: v1beta1
          - description: VerticaAutoscaler is a CR that allows you to autoscale one
              or more subclusters in a VerticaDB.
            displayName: Vertica Autoscaler
            kind: VerticaAutoscaler
            name: verticaautoscalers.vertica.com
            version: v1beta1
          - description: VerticaDB is the CR that defines a Vertica Eon mode cluster
              that is managed by the verticadb-operator.
            displayName: Vertica DB
            kind: VerticaDB
            name: verticadbs.vertica.com
            version: v1beta1
        description: |-
          ### What is Vertica?
          Vertica is a unified analytics platform, based on a massively scalable architecture with the broadest set of analytical functions spanning event and time series, pattern matching, geospatial and end-to-end in-database machine learning. Vertica enables you to easily apply these powerful functions to the largest and most demanding analytical workloads, arming you and your customers with predictive business insights faster than any analytics data warehouse in the market. Vertica provides a unified analytics platform across major public clouds and on-premises data centers and integrates data in cloud object storage and HDFS without forcing you to move any of your data.

          ### What does this operator do?
          This operator manages a Vertica Eon Mode database, and automates the following administrative tasks:

          * Installing Vertica
          * Creating and reviving a Vertica database
          * Restarting and rescheduling DOWN pods to maintain quorum
          * Upgrading Vertica to a new version while keeping the database online
          * Subcluster scaling, both manually and automatically with the Horizontal Pod Autoscaler
          * Service management and health monitoring for pods
          * Load balancing for internal and external traffic
          * Expose a metrics endpoint to integrate with Prometheus to monitor the operator's health

          For a brief overview on how to create a cluster, see the [Vertica GitHub repository](https://github.com/vertica/vertica-kubernetes). For an in-depth look at Vertica on Kubernetes, see the [Vertica documentation](https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm).
        displayName: VerticaDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - database
        - vertica
        links:
        - name: Documentation
          url: https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm
        - name: Vertica Container Images
          url: https://hub.docker.com/u/vertica
        maintainers:
        - email: matt.spilchen@vertica.com
          name: Matt Spilchen
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Vertica
          url: http://www.vertica.com
        relatedImages:
        - docker.io/vertica/verticadb-operator:1.11.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/openshift-community-operators/verticadb-operator@sha256:b7691da906474a8ab829966bb3da4a846eaf12909c97bd0d9cb6a1e5e7ff6c03
        version: 1.11.2
      entries:
      - name: verticadb-operator.v1.11.2
        version: 1.11.2
      - name: verticadb-operator.v1.11.1
        version: 1.11.1
      - name: verticadb-operator.v1.11.0
        version: 1.11.0
      - name: verticadb-operator.v1.10.2
        version: 1.10.2
      - name: verticadb-operator.v1.10.1
        version: 1.10.1
      - name: verticadb-operator.v1.10.0
        version: 1.10.0
      - name: verticadb-operator.v1.9.0
        version: 1.9.0
      - name: verticadb-operator.v1.8.0
        version: 1.8.0
      - name: verticadb-operator.v1.7.0
        version: 1.7.0
      - name: verticadb-operator.v1.6.0
        version: 1.6.0
      - name: verticadb-operator.v1.5.0
        version: 1.5.0
      - name: verticadb-operator.v1.4.0
        version: 1.4.0
      - name: verticadb-operator.v1.3.1
        version: 1.3.1
      - name: verticadb-operator.v1.3.0
        version: 1.3.0
      - name: verticadb-operator.v1.2.0
        version: 1.2.0
      name: stable
    - currentCSV: verticadb-operator.v25.4.0-0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vertica.com/v1",
                "kind": "VerticaAutoscaler",
                "metadata": {
                  "name": "verticaautoscaler-sample"
                },
                "spec": {
                  "customAutoscaler": {},
                  "scalingGranularity": "Subcluster",
                  "serviceName": "default-subcluster",
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1",
                "kind": "VerticaDB",
                "metadata": {
                  "name": "verticadb-sample"
                },
                "spec": {
                  "communal": {
                    "endpoint": "https://s3.amazonaws.com"
                  },
                  "image": "opentext/vertica-k8s:24.1.0-0-minimal",
                  "subclusters": [
                    {
                      "name": "default_subcluster",
                      "size": 3
                    }
                  ]
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "EventTrigger",
                "metadata": {
                  "name": "eventtrigger-sample"
                },
                "spec": {
                  "matches": [
                    {
                      "condition": {
                        "status": "True",
                        "type": "DBInitialized"
                      }
                    }
                  ],
                  "references": [
                    {
                      "object": {
                        "apiVersion": "vertica.com/v1beta1",
                        "kind": "VerticaDB",
                        "name": "verticadb-sample"
                      }
                    }
                  ],
                  "template": {
                    "metadata": {
                      "generateName": "create-user-table-"
                    },
                    "spec": {
                      "template": {
                        "spec": {
                          "containers": [
                            {
                              "command": [
                                "/opt/vertica/bin/vsql",
                                "-h",
                                "verticadb-sample-defaultsubcluster",
                                "-c",
                                "CREATE TABLE T1 (C1 INT);"
                              ],
                              "image": "opentext/vertica-k8s:23.4.0-0-minimal",
                              "name": "main"
                            }
                          ],
                          "restartPolicy": "OnFailure"
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaAutoscaler",
                "metadata": {
                  "name": "verticaautoscaler-sample"
                },
                "spec": {
                  "customAutoscaler": {},
                  "scalingGranularity": "Subcluster",
                  "serviceName": "default-subcluster",
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaReplicator",
                "metadata": {
                  "name": "verticareplicator-sample"
                },
                "spec": {
                  "source": {
                    "verticaDB": "sourceDBName"
                  },
                  "target": {
                    "verticaDB": "targetDBName"
                  }
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaRestorePointsQuery",
                "metadata": {
                  "name": "verticarestorepointsquery-sample"
                },
                "spec": {
                  "verticaDBName": "verticadb-sample"
                }
              },
              {
                "apiVersion": "vertica.com/v1beta1",
                "kind": "VerticaScrutinize",
                "metadata": {
                  "name": "verticascrutinize-sample"
                },
                "spec": {
                  "verticaDBName": "verticadb-sample"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          containerImage: docker.io/opentext/verticadb-operator:25.4.0-0
          createdAt: "2025-10-20T17:45:02Z"
          description: Operator that manages a Vertica Eon Mode database.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/vertica/vertica-kubernetes
          support: Vertica
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EventTrigger is the Schema for the eventtriggers API
            displayName: Event Trigger
            kind: EventTrigger
            name: eventtriggers.vertica.com
            version: v1beta1
          - description: |-
              VerticaAutoscaler is a CR that allows you to autoscale one or more
              subclusters in a VerticaDB.
            displayName: Vertica Autoscaler
            kind: VerticaAutoscaler
            name: verticaautoscalers.vertica.com
            version: v1
          - description: |-
              VerticaAutoscaler is a CR that allows you to autoscale one or more
              subclusters in a VerticaDB.
            displayName: Vertica Autoscaler
            kind: VerticaAutoscaler
            name: verticaautoscalers.vertica.com
            version: v1beta1
          - description: VerticaDB is the CR that defines a Vertica Eon mode cluster
              that is managed by the verticadb-operator.
            displayName: Vertica DB
            kind: VerticaDB
            name: verticadbs.vertica.com
            version: v1
          - description: VerticaReplicator is the Schema for the verticareplicators
              API
            displayName: Vertica Replicator
            kind: VerticaReplicator
            name: verticareplicators.vertica.com
            version: v1beta1
          - description: VerticaRestorePointsQuery is the Schema for the verticarestorepointsqueries
              API
            displayName: Vertica Restore Points Query
            kind: VerticaRestorePointsQuery
            name: verticarestorepointsqueries.vertica.com
            version: v1beta1
          - description: VerticaScrutinize is the schema for verticascrutinize API
            displayName: Vertica Scrutinize
            kind: VerticaScrutinize
            name: verticascrutinizers.vertica.com
            version: v1beta1
        description: |-
          ### What is Vertica?
          Vertica is a unified analytics platform, based on a massively scalable architecture with the broadest set of analytical functions spanning event and time series, pattern matching, geospatial and end-to-end in-database machine learning. Vertica enables you to easily apply these powerful functions to the largest and most demanding analytical workloads, arming you and your customers with predictive business insights faster than any analytics data warehouse in the market. Vertica provides a unified analytics platform across major public clouds and on-premises data centers and integrates data in cloud object storage and HDFS without forcing you to move any of your data.

          ### What does this operator do?
          This operator manages a Vertica Eon Mode database, and automates the following administrative tasks:

          * Installing Vertica
          * Creating and reviving a Vertica database
          * Restarting and rescheduling DOWN pods to maintain quorum
          * Upgrading Vertica to a new version while keeping the database online
          * Subcluster scaling, both manually and automatically with the Horizontal Pod Autoscaler
          * Service management and health monitoring for pods
          * Load balancing for internal and external traffic
          * Expose a metrics endpoint to integrate with Prometheus to monitor the operator's health

          For a brief overview on how to create a cluster, see the [Vertica GitHub repository](https://github.com/vertica/vertica-kubernetes). For an in-depth look at Vertica on Kubernetes, see the [Vertica documentation](https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm).
        displayName: VerticaDB Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - database
        - vertica
        links:
        - name: Documentation
          url: https://www.vertica.com/docs/latest/HTML/Content/Authoring/Containers/ContainerizedVertica.htm
        - name: Vertica Container Images
          url: https://hub.docker.com/u/vertica
        maintainers:
        - email: cchen8@opentext.com
          name: Cai Chen
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Vertica
          url: http://www.vertica.com
        relatedImages:
        - docker.io/opentext/verticadb-operator:25.4.0-0
        - quay.io/community-operator-pipeline-prod/verticadb-operator@sha256:8dade6084828c98f805bd33d1885e8eb9c8eff3d2fb3283091a6691419d54922
        version: 25.4.0-0
      entries:
      - name: verticadb-operator.v25.4.0-0
        version: 25.4.0-0
      - name: verticadb-operator.v25.3.1-0
        version: 25.3.1-0
      - name: verticadb-operator.v25.3.0-0
        version: 25.3.0-0
      - name: verticadb-operator.v25.2.1-0
        version: 25.2.1-0
      - name: verticadb-operator.v25.2.0-0
        version: 25.2.0-0
      - name: verticadb-operator.v25.1.0-0
        version: 25.1.0-0
      - name: verticadb-operator.v24.4.0-0
        version: 24.4.0-0
      - name: verticadb-operator.v2.2.0
        version: 2.2.0
      - name: verticadb-operator.v2.1.3
        version: 2.1.3
      - name: verticadb-operator.v2.1.2
        version: 2.1.2
      - name: verticadb-operator.v2.1.1
        version: 2.1.1
      - name: verticadb-operator.v2.1.0
        version: 2.1.0
      - name: verticadb-operator.v2.0.2
        version: 2.0.2
      - name: verticadb-operator.v2.0.1
        version: 2.0.1
      - name: verticadb-operator.v2.0.0
        version: 2.0.0
      name: v2-stable
    defaultChannel: v2-stable
    packageName: verticadb-operator
    provider:
      name: Vertica
      url: http://www.vertica.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: dns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dns-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSHealthCheckProbe",
                "metadata": {
                  "name": "$NAME"
                },
                "spec": {
                  "additionalHeadersRef": {
                    "name": "headers"
                  },
                  "address": "192.168.0.16",
                  "allowInsecureCertificate": true,
                  "failureThreshold": 5,
                  "hostname": "test.com",
                  "interval": "60s",
                  "path": "/healthz",
                  "port": 443,
                  "protocol": "HTTPS"
                }
              },
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSRecord",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dns-operator",
                    "app.kubernetes.io/instance": "dnsrecord-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dnsrecord",
                    "app.kubernetes.io/part-of": "dns-operator"
                  },
                  "name": "dnsrecord-sample"
                },
                "spec": {
                  "endpoints": [
                    {
                      "dnsName": "dnsrecord-simple.example.com",
                      "recordTTL": 60,
                      "recordType": "A",
                      "targets": [
                        "52.215.108.61",
                        "52.30.101.221"
                      ]
                    }
                  ],
                  "providerRef": {
                    "name": "dns-provider-creds"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/dns-rhel9-operator@sha256:61e8a471cf20273fe879031eb302a1c7179b5423db4f0a8b9dccefae753ffdf4
          createdAt: 25 Sep 2025, 13:03
          description: Configures how north-south traffic from outside the network
            is balanced and reaches Gateways.
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kuadrant/dns-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DNSHealthCheckProbe is the Schema for the dnshealthcheckprobes
              API
            displayName: DNSHealthCheckProbe
            kind: DNSHealthCheckProbe
            name: dnshealthcheckprobes.kuadrant.io
            version: v1alpha1
          - description: DNSRecord is the Schema for the dnsrecords API
            displayName: DNSRecord
            kind: DNSRecord
            name: dnsrecords.kuadrant.io
            version: v1alpha1
        description: A Kubernetes Operator to manage the lifecycle of DNS resources
        displayName: DNS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dns
        - kuadrant
        links:
        - name: DNS Operator
          url: https://github.com/Kuadrant/dns-operator
        maintainers:
        - email: mnairn@redhat.com
          name: Michael Nairn
        - email: pbrookes@redhat.com
          name: Phil Brookes
        - email: cbrookes@redhat.com
          name: Craig Brookes
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhcl-1/dns-operator-bundle@sha256:0139dbf3b822012c56a0ce2f17b8607c4e08d367ec2fbfb096892bb5e648803e
        - registry.redhat.io/rhcl-1/dns-rhel9-operator@sha256:61e8a471cf20273fe879031eb302a1c7179b5423db4f0a8b9dccefae753ffdf4
        version: 1.2.0
      entries:
      - name: dns-operator.v1.2.0
        version: 1.2.0
      - name: dns-operator.v1.1.1
        version: 1.1.1
      - name: dns-operator.v1.1.0
        version: 1.1.0
      - name: dns-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: dns-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Ab Initio
      provider-url: ""
    name: abinitio-runtime-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: abinitio-runtime-operator.v4.3.3-1
      currentCSVDesc:
        annotations:
          capabilities: Basic Install
          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"
          operatorframework.io/suggested-namespace: abinitio-system
          operators.operatorframework.io/builder: operator-sdk-v1.8.0-ocp
          operators.operatorframework.io/internal-objects: '["cooperatingsystemruntimepoolmetrics.cloud.abinitio.com",
            "cooperatingsystemruntimeprofiles.cloud.abinitio.com"]'
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Defines a *runtime claim*, an interface for reserving a runtime
              object (CoOperatingSystemRuntime) in a runtime pool (CoOperatingSystemRuntimePool)
              in order to launch a job.
            displayName: Co>Operating System Runtime Claim
            kind: CoOperatingSystemRuntimeClaim
            name: cooperatingsystemruntimeclaims.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Pool Metric
            kind: CoOperatingSystemRuntimePoolMetric
            name: cooperatingsystemruntimepoolmetrics.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime pool*, a set of templated runtime objects
              (CoOperatingSystemRuntime) that are available on demand for running
              jobs. A runtime pool's capacity is configurable and can be scheduled
              in response to usage patterns.
            displayName: Co>Operating System Runtime Pool
            kind: CoOperatingSystemRuntimePool
            name: cooperatingsystemruntimepools.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Profile
            kind: CoOperatingSystemRuntimeProfile
            name: cooperatingsystemruntimeprofiles.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime object*, a set of coordinated resources
              used to run a data processing job in parallel across a launcher pod
              and a dynamically scaled set of worker pods. Such a job leverages the
              full power of the Co>Operating System for processing complex enterprise
              data.
            displayName: Co>Operating System Runtime
            kind: CoOperatingSystemRuntime
            name: cooperatingsystemruntimes.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime template*, a reusable specification (CoOperatingSystemRuntimeSpec)
              that can be referenced and overridden by runtime objects as needed,
              making it possible to specify jobs concisely. The runtime objects in
              a runtime pool (CoOperatingSystemRuntimePool) are created from a runtime
              template.
            displayName: Co>Operating System Runtime Template
            kind: CoOperatingSystemRuntimeTemplate
            name: cooperatingsystemruntimetemplates.cloud.abinitio.com
            version: v1
        description: |-
          The Co>Operating System runtime operator brings the power of Ab Initio's Co>Operating
          System to Kubernetes by defining a set of custom API resources for provisioning and
          running data processing jobs.

          The operator is installed along with the following custom resource definitions (CRDs):

          - CoOperatingSystemRuntime
          - CoOperatingSystemRuntimeClaim
          - CoOperatingSystemRuntimePool
          - CoOperatingSystemRuntimeTemplate

          In combination, these resources give you significant flexibility in scheduling, running,
          and monitoring your jobs, which can run in parallel across a dynamically scaled set of
          containers. For reference documentation for these resources, see
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-FOUR-Reference/Co-Operating-System-runtime-operator-API-reference)
          in the Ab Initio Help.

          The following topics describe the basic requirements and procedures for creating custom
          resources for running jobs after you have installed the runtime operator.

          ## Requirements for using custom resources

          The runtime operator is fully configured when you install it in your OpenShift cluster
          through OperatorHub. Importantly, the operator is installed in unrestricted mode,
          which means it can manage the CoOperatingSystemRuntime family of CRDs in any namespace
          in your cluster.

          For creating custom resources in order to run jobs using the operator, you must meet
          the requirements and configure the settings described in the following sections.

          ### Container images for job agents

          To run jobs of kind CoOperatingSystemRuntime, you must have a way to build the following
          OCI container images:

          - A *processing* image with the Co>Operating System server software installed in it.
          - A *sandbox workspace* image with the graphs and other files needed to run your jobs.
          This image is based on the Co>Operating System image and functions as the job's launcher
          agent, which coordinates with a set of worker agents (processing containers) in order to
          run a job in parallel.

          For building and managing these container images, you need the following:

          - A Co>Operating System installation package.
          - Access to a technical repository containing the projects that make up your application.
          - A container-building tool.
          - Access to a private container registry for hosting the images you build. You need pull
          and push access to this registry from your container build context and pull access from
          your OpenShift cluster (for example, via a Kubernetes Secret).

          > WARNING! Never push container images with Ab Initio software to a public registry. Push
          them to a private container registry only.

          The Co>Operating System includes reference Dockerfiles and example scripts for building
          container images. Typically, you build these images as part of your CI/CD pipeline. For
          more information, contact your Ab Initio administrator or Ab Initio Support.

          ### Ab Initio key servers

          The key servers that you use to enable jobs must be reachable from your cluster. You
          specify these key servers via the `AB_HOSTNAME_KEYSERVER_URLS` configuration variable in
          the pod specifications for launcher and worker agents in the CoOperatingSystemRuntime
          resource.

          To discuss the software activation key requirements for jobs that run in Kubernetes,
          contact your key server administrator or Ab Initio Support.

          ### Namespace and role considerations

          The runtime operator is installed with the cluster-wide RBAC roles and role bindings that
          it needs in order to manage custom resources and run jobs.

          You typically use a separate namespace or namespaces for creating and managing custom
          resources to run jobs. Each of these namespaces must be equipped with a service
          account that can list pod limits and get and patch CoOperatingSystemRuntime resources.

          For each namespace in which you intend to create custom resources, create the needed RBAC
          role and role binding by applying the following Role and RoleBinding manifests:

          ```yaml
          apiVersion: rbac.authorization.k8s.io/v1
          kind: Role
          metadata:
            name: cooperatingsystemruntime-role
          rules:
          - apiGroups:
            - ""
            resources:
            - limitranges
            verbs:
            - list
          - apiGroups:
            - cloud.abinitio.com
            resources:
            - cooperatingsystemruntimes
            verbs:
            - get
            - patch
          ---
          apiVersion: rbac.authorization.k8s.io/v1
          kind: RoleBinding
          metadata:
            name: run-cooperatingsystemruntime-rolebinding
          subjects:
          - kind: ServiceAccount
            name: default
          roleRef:
            kind: Role
            name: cooperatingsystemruntime-role
            apiGroup: rbac.authorization.k8s.io
          ```

          One way to do this is to save these manifests to a file and specify a namespace when
          using `oc` to apply them to the cluster. In the following example, the manifests are
          saved to a file named `runtime-rbac.yaml` and the role and role binding are to be created
          for the `default` service account in the `hello-world` namespace:

          ```
          oc -n hello-world apply -f runtime-rbac.yaml
          ```

          To bind the role to a service account other than `default`, simply update the value of
          `subjects[0].name` in the provided RoleBinding manifest.

          ### Dynamic volume provisioning

          The launcher and worker template sections of the CoOperatingSystemRuntime resource
          require you to specify persistent volume claims (PVCs) for job recovery data. To ensure
          that these PVCs can be bound to approriate storage volumes, dynamic volume provisioning
          must be enabled in your cluster.

          Work with your cluster administrator to identify the storage needs of your jobs and to
          ensure that dynamic volume provisioning is enabled so that PVCs can be matched to
          persistent volumes of the right storage class.

          For more information about dynamic storage provisioning, see the
          [OpenShift documentation](https://docs.openshift.com/container-platform/latest/storage/dynamic-provisioning.html).

          ## Quick start and examples

          For an overview of the key concepts associated with running jobs in Kubernetes, see
          ["About running jobs in Kubernetes"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-TWO-Running-jobs-in-Kubernetes/About-running-jobs-in-Kubernetes)
          in the Ab Initio Help.

          As described in this topic, you might begin by creating a CoOperatingSystemRuntime
          manifest that defines the configuration and compute resources needed for a standalone test
          job. You could then use the specification for this job to create a CoOperatingSystemRuntimeTemplate
          resource, which would collect common settings and make it possible to concisely specify
          CoOperatingSystemRuntime jobs.

          You could also use a runtime pool (of kind CoOperatingSystemRuntime) to extend these basic
          resources: such a pool consists of an actively running group of templated runtime objects whose
          pods can be used to run jobs on demand. Finally, for reserving resources in a pool, you could
          create a CoOperatingSystemRuntimeClaim resource.

          For more information about these custom resources, refer to the
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-FOUR-Reference/Co-Operating-System-runtime-operator-API-reference).

          For a set of integrated examples (including complete YAML manifests) that show you how to
          create and use the custom resources, see ["Example manifests for running jobs"](https://docs.abinitio.com/r/latest/Co-Operating-System/Co-Operating-System-Guide-to-Cloud-and-Container-Computing/PART-TWO-Running-jobs-in-Kubernetes/Configuring-and-running-Co-Operating-System-jobs-in-Kubernetes/Example-manifests-for-CoOperatingSystemRuntime-jobs).
        displayName: Co>Operating System Runtime Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - abinitio
        - runtime
        - operator
        links:
        - name: Ab Initio
          url: https://www.abinitio.com/
        maintainers:
        - email: support@abinitio.com
          name: Ab Initio Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Ab Initio
        relatedImages:
        - registry.connect.redhat.com/abinitio/cooperating-system-runtime-operator@sha256:665efa8cc2ba97ad31f219161cdd53e15c1aef16b6c05ac60506be9bbc9ffc9a
        - registry.connect.redhat.com/abinitio/runtime-operator-bundle@sha256:d0bd55bad99bfd1ce09da5ee885a38229829570ebf80e1acc4341dff17a54e64
        version: 4.3.3-1
      entries:
      - name: abinitio-runtime-operator.v4.3.3-1
        version: 4.3.3-1
      - name: abinitio-runtime-operator.v4.3.1-0
        version: 4.3.1-0
      name: release-4.3
    - currentCSV: abinitio-runtime-operator.v4.2.3-0
      currentCSVDesc:
        annotations:
          capabilities: Basic Install
          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"
          operatorframework.io/suggested-namespace: abinitio-system
          operators.operatorframework.io/builder: operator-sdk-v1.8.0-ocp
          operators.operatorframework.io/internal-objects: '["cooperatingsystemruntimepoolmetrics.cloud.abinitio.com",
            "cooperatingsystemruntimeprofiles.cloud.abinitio.com"]'
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Defines a *runtime claim*, an interface for reserving a runtime
              object (CoOperatingSystemRuntime) in a runtime pool (CoOperatingSystemRuntimePool)
              in order to launch a job.
            displayName: Co>Operating System Runtime Claim
            kind: CoOperatingSystemRuntimeClaim
            name: cooperatingsystemruntimeclaims.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Pool Metric
            kind: CoOperatingSystemRuntimePoolMetric
            name: cooperatingsystemruntimepoolmetrics.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime pool*, a set of templated runtime objects
              (CoOperatingSystemRuntime) that are available on demand for running
              jobs. A runtime pool's capacity is configurable and can be scheduled
              in response to usage patterns.
            displayName: Co>Operating System Runtime Pool
            kind: CoOperatingSystemRuntimePool
            name: cooperatingsystemruntimepools.cloud.abinitio.com
            version: v1
          - description: For internal use only.
            displayName: Co>Operating System Runtime Profile
            kind: CoOperatingSystemRuntimeProfile
            name: cooperatingsystemruntimeprofiles.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime object*, a set of coordinated resources
              used to run a data processing job in parallel across a launcher pod
              and a dynamically scaled set of worker pods. Such a job leverages the
              full power of the Co>Operating System for processing complex enterprise
              data.
            displayName: Co>Operating System Runtime
            kind: CoOperatingSystemRuntime
            name: cooperatingsystemruntimes.cloud.abinitio.com
            version: v1
          - description: Defines a *runtime template*, a reusable specification (CoOperatingSystemRuntimeSpec)
              that can be referenced and overridden by runtime objects as needed,
              making it possible to specify jobs concisely. The runtime objects in
              a runtime pool (CoOperatingSystemRuntimePool) are created from a runtime
              template.
            displayName: Co>Operating System Runtime Template
            kind: CoOperatingSystemRuntimeTemplate
            name: cooperatingsystemruntimetemplates.cloud.abinitio.com
            version: v1
        description: |-
          The Co>Operating System runtime operator brings the power of Ab Initio's Co>Operating
          System to Kubernetes by defining a set of custom API resources for provisioning and
          running data processing jobs.

          The operator is installed along with the following custom resource definitions (CRDs):

          - CoOperatingSystemRuntime
          - CoOperatingSystemRuntimeClaim
          - CoOperatingSystemRuntimePool
          - CoOperatingSystemRuntimeTemplate

          In combination, these resources give you significant flexibility in scheduling, running,
          and monitoring your jobs, which can run in parallel across a dynamically scaled set of
          containers. For reference documentation for these resources, see
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Co_Operating_System_runtime_operator_API_reference)
          in the Ab Initio Help.

          The following topics describe the basic requirements and procedures for creating custom
          resources for running jobs after you have installed the runtime operator.

          ## Requirements for using custom resources

          The runtime operator is fully configured when you install it in your OpenShift cluster
          through OperatorHub. Importantly, the operator is installed in unrestricted mode,
          which means it can manage the CoOperatingSystemRuntime family of CRDs in any namespace
          in your cluster.

          For creating custom resources in order to run jobs using the operator, you must meet
          the requirements and configure the settings described in the following sections.

          ### Container images for job agents

          To run jobs of kind CoOperatingSystemRuntime, you must have a way to build the following
          OCI container images:

          - A *processing* image with the Co>Operating System server software installed in it.
          - A *sandbox workspace* image with the graphs and other files needed to run your jobs.
          This image is based on the Co>Operating System image and functions as the job's launcher
          agent, which coordinates with a set of worker agents (processing containers) in order to
          run a job in parallel.

          For building and managing these container images, you need the following:

          - A Co>Operating System installation package.
          - Access to a technical repository containing the projects that make up your application.
          - A container-building tool.
          - Access to a private container registry for hosting the images you build. You need pull
          and push access to this registry from your container build context and pull access from
          your OpenShift cluster (for example, via a Kubernetes Secret).

          > WARNING! Never push container images with Ab Initio software to a public registry. Push
          them to a private container registry only.

          The Co>Operating System includes reference Dockerfiles and example scripts for building
          container images. Typically, you build these images as part of your CI/CD pipeline. For
          more information, contact your Ab Initio administrator or Ab Initio Support.

          ### Ab Initio key servers

          The key servers that you use to enable jobs must be reachable from your cluster. You
          specify these key servers via the `AB_HOSTNAME_KEYSERVER_URLS` configuration variable in
          the pod specifications for launcher and worker agents in the CoOperatingSystemRuntime
          resource.

          To discuss the software activation key requirements for jobs that run in Kubernetes,
          contact your key server administrator or Ab Initio Support.

          ### Namespace and role considerations

          The runtime operator is installed with the cluster-wide RBAC roles and role bindings that
          it needs in order to manage custom resources and run jobs.

          You typically use a separate namespace or namespaces for creating and managing custom
          resources to run jobs. Each of these namespaces must be equipped with a service
          account that can list pod limits and get and patch CoOperatingSystemRuntime resources.

          For each namespace in which you intend to create custom resources, create the needed RBAC
          role and role binding by applying the following Role and RoleBinding manifests:

          ```yaml
          apiVersion: rbac.authorization.k8s.io/v1
          kind: Role
          metadata:
            name: cooperatingsystemruntime-role
          rules:
          - apiGroups:
            - ""
            resources:
            - limitranges
            verbs:
            - list
          - apiGroups:
            - cloud.abinitio.com
            resources:
            - cooperatingsystemruntimes
            verbs:
            - get
            - patch
          ---
          apiVersion: rbac.authorization.k8s.io/v1
          kind: RoleBinding
          metadata:
            name: run-cooperatingsystemruntime-rolebinding
          subjects:
          - kind: ServiceAccount
            name: default
          roleRef:
            kind: Role
            name: cooperatingsystemruntime-role
            apiGroup: rbac.authorization.k8s.io
          ```

          One way to do this is to save these manifests to a file and specify a namespace when
          using `oc` to apply them to the cluster. In the following example, the manifests are
          saved to a file named `runtime-rbac.yaml` and the role and role binding are to be created
          for the `default` service account in the `hello-world` namespace:

          ```
          oc -n hello-world apply -f runtime-rbac.yaml
          ```

          To bind the role to a service account other than `default`, simply update the value of
          `subjects[0].name` in the provided RoleBinding manifest.

          ### Dynamic volume provisioning

          The launcher and worker template sections of the CoOperatingSystemRuntime resource
          require you to specify persistent volume claims (PVCs) for job recovery data. To ensure
          that these PVCs can be bound to approriate storage volumes, dynamic volume provisioning
          must be enabled in your cluster.

          Work with your cluster administrator to identify the storage needs of your jobs and to
          ensure that dynamic volume provisioning is enabled so that PVCs can be matched to
          persistent volumes of the right storage class.

          For more information about dynamic storage provisioning, see the
          [OpenShift documentation](https://docs.openshift.com/container-platform/latest/storage/dynamic-provisioning.html).

          ## Quick start and examples

          For an overview of the key concepts associated with running jobs in Kubernetes, see
          ["About running jobs in Kubernetes"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Configuring_and_running_Co_Operating_System_jobs_in_Kubernetes/About_running_jobs_in_Kubernetes)
          in the Ab Initio Help.

          As described in this topic, you might begin by creating a CoOperatingSystemRuntime
          manifest that defines the configuration and compute resources needed for a standalone test
          job. You could then use the specification for this job to create a CoOperatingSystemRuntimeTemplate
          resource, which would collect common settings and make it possible to concisely specify
          CoOperatingSystemRuntime jobs.

          You could also use a runtime pool (of kind CoOperatingSystemRuntime) to extend these basic
          resources: such a pool consists of an actively running group of templated runtime objects whose
          pods can be used to run jobs on demand. Finally, for reserving resources in a pool, you could
          create a CoOperatingSystemRuntimeClaim resource.

          For more information about these custom resources, refer to the
          ["Co>Operating System runtime operator API reference"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Co_Operating_System_runtime_operator_API_reference).

          For a set of integrated examples (including complete YAML manifests) that show you how to
          create and use the custom resources, see ["Example manifests for running jobs"](https://docs.abinitio.com/r/422/Co_Operating_System/Co_Operating_System_Guide_to_Cloud_and_Container_Computing/Configuring_and_running_Co_Operating_System_jobs_in_Kubernetes/Creating_custom_resources_for_running_jobs/Example_manifests_for_running_jobs).
        displayName: Co>Operating System Runtime Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - abinitio
        - runtime
        - operator
        links:
        - name: Ab Initio
          url: https://www.abinitio.com/
        maintainers:
        - email: support@abinitio.com
          name: Ab Initio Support
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Ab Initio
        relatedImages:
        - registry.connect.redhat.com/abinitio/cooperating-system-runtime-operator@sha256:ee30210a153e8b3ba09080737216d881cc6a07e1a888e9684be0d17fd4ff791d
        - registry.connect.redhat.com/abinitio/runtime-operator-bundle@sha256:b9ffc18b2d88dfab92583af35b27e0ae36bceac7778cb448ab2ea2eae2ab3e94
        version: 4.2.3-0
      entries:
      - name: abinitio-runtime-operator.v4.2.3-0
        version: 4.2.3-0
      name: stable
    defaultChannel: release-4.3
    packageName: abinitio-runtime-operator
    provider:
      name: Ab Initio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Trilio
      provider-url: https://trilio.io/
    name: tvo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tvo-operator.6.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tvo.trilio.io/v1",
                "kind": "TVOControlPlane",
                "metadata": {
                  "name": "tvocontrolplane-sample"
                },
                "spec": {
                  "crdType": "TVOControlPlane",
                  "common": {
                    "dmapi_workers": "16",
                    "memcached_servers": "",
                    "my_ip": {
                      "host_interface": null
                    },
                    "nova_group_id": "42436",
                    "nova_user_id": "42436",
                    "oslo_enable_proxy_headers_parsing": false,
                    "trustee_role": "creator"
                  },
                  "database": {
                    "common": {
                      "host": "EDIT_DB_HOSTNAME",
                      "root_password": "EDIT_PASSWORD",
                      "root_user_name": "root"
                    },
                    "datamover_api": {
                      "database": "dmapi",
                      "password": "EDIT_PASSWORD",
                      "user": "dmapi"
                    },
                    "wlm_api": {
                      "database": "workloadmgr",
                      "password": "EDIT_PASSWORD",
                      "user": "workloadmgr"
                    }
                  },
                  "helm3_hook": true,
                  "images": {
                    "triliovault_datamover_api": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_datamover_db_sync": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_object_store": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_api": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_cloud_trust": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_cron": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_db_sync": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_scheduler": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1",
                    "triliovault_wlm_workloads": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1"
                  },
                  "keystone": {
                    "common": {
                      "admin_role_name": "admin",
                      "auth_uri": "",
                      "auth_url": "",
                      "ca_cert": "CERT MULTIPLE LINES\n",
                      "cloud_admin_domain_name": "Default",
                      "cloud_admin_project_name": "admin",
                      "cloud_admin_user_name": "admin",
                      "cloud_admin_user_password": "",
                      "is_self_signed_ssl_cert": true,
                      "keystone_auth_host": "",
                      "keystone_auth_port": "",
                      "keystone_auth_protocol": "",
                      "region_name": "regionOne",
                      "service_project_domain_name": "Default",
                      "service_project_name": "service"
                    },
                    "datamover_api": {
                      "internal_endpoint": "ENDPOINT_PROTOCOL_INTERNAL://ENDPOINT_HOST_INTERNAL:8784/v2",
                      "password": "EDIT_PASSWORD",
                      "public_auth_host": "",
                      "public_endpoint": "ENDPOINT_PROTOCOL_PUBLIC://ENDPOINT_HOST_PUBLIC:8784/v2",
                      "service_desc": "TrilioVault Datamover Api Service",
                      "service_name": "dmapi",
                      "service_type": "datamover",
                      "user": "dmapi"
                    },
                    "identity": null,
                    "keystone_interface": "internal",
                    "wlm_api": {
                      "internal_endpoint": "ENDPOINT_PROTOCOL_INTERNAL://ENDPOINT_HOST_INTERNAL:8781/v1/$(tenant_id)s",
                      "password": "EDIT_PASSWORD",
                      "public_auth_host": "",
                      "public_endpoint": "ENDPOINT_PROTOCOL_PUBLIC://ENDPOINT_HOST_PUBLIC:8781/v1/$(tenant_id)s",
                      "service_desc": "TrilioVault Workloadmgr Api Service",
                      "service_name": "TrilioVaultWLM",
                      "service_type": "workloads",
                      "user": "triliovault"
                    }
                  },
                  "labels": {
                    "datamover_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_cron": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_scheduler": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_workloads": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    }
                  },
                  "pod": {
                    "replicas": {
                      "triliovault_datamover_api": 3,
                      "triliovault_object_store": 3,
                      "triliovault_wlm_api": 3,
                      "triliovault_wlm_cron": 1,
                      "triliovault_wlm_scheduler": 3,
                      "triliovault_wlm_workloads": 3
                    },
                    "security_context": {
                      "triliovault": {
                        "container": {
                          "triliovault_datamover_api": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 0,
                            "runAsUser": 63630
                          },
                          "triliovault_datamover_api_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 63630,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_api": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_cron": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_scheduler": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_workloads": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "wlm_cloud_trust_creation": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 42436
                          }
                        }
                      }
                    }
                  },
                  "rabbitmq": {
                    "common": {
                      "admin_password": "EDIT_PASSWORD",
                      "admin_user": "admin",
                      "driver": "messagingv2",
                      "host": "EDIT_HOST",
                      "port": "5672"
                    },
                    "datamover_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "",
                      "user": "dmapi",
                      "vhost": "dmapi"
                    },
                    "wlm_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "",
                      "user": "workloadmgr",
                      "vhost": "workloadmgr"
                    }
                  },
                  "triliovault_backup_targets": [
                    {
                      "backup_target_name": "S3_BT1",
                      "backup_target_type": "s3",
                      "is_default": true,
                      "s3_access_key": "ACCESSKEY1",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "BUCKET1",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "ENDPOINT_URL1",
                      "s3_region_name": "REGION1",
                      "s3_secret_key": "SECRETKEY1",
                      "s3_self_signed_cert": false,
                      "s3_signature_version": "default",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "amazon_s3"
                    },
                    {
                      "backup_target_name": "S3_BT2",
                      "backup_target_type": "s3",
                      "is_default": true,
                      "s3_access_key": "ACCESSKEY2",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "BUCKET2",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "ENDPOINT_URL2",
                      "s3_region_name": "REGION2",
                      "s3_secret_key": "SECRETKEY2",
                      "s3_self_signed_cert": true,
                      "s3_signature_version": "default",
                      "s3_ssl_ca_cert": "SSL_CERT_LINE_1\n",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "amazon_s3"
                    },
                    {
                      "backup_target_name": "NFS_BT3",
                      "backup_target_type": "nfs",
                      "is_default": false,
                      "nfs_options": "nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10",
                      "nfs_shares": "11.30.1.10:/mnt/share"
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "true"
          containerImage: registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:3d80cad27a1043fb61735e7a6fb156c98b269cfcc68f8b9712713a7d4f6ad6bd
          createdAt: "2025-01-14T11:20:30Z"
          description: Cloud-Native Data Protection for OpenStack
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: trilio-openstack
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trilioData/triliovault-cfg-scripts
          support: Trilio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trilio for OpenStack Control Plane. Includes all control
              plane components like Datamover Api, Trilio object store and Workloadmgr
              services.
            displayName: Trilio for OpenStack Control Plane
            kind: TVOControlPlane
            name: tvocontrolplanes.tvo.trilio.io
            version: v1
          - description: Trilio for OpenStack Backup Target. This CR is responsible
              to add a new backup target.
            displayName: Trilio for OpenStack Backup Target
            kind: TVOBackupTarget
            name: tvobackuptargets.tvo.trilio.io
            version: v1
        description: |-
          Trilio for OpenStack provides scalable, native, agentless, multi-tenant backup and recovery solutions, ensuring seamless protection of workloads with flexible storage options for dynamic cloud environments.

            * OpenStack Backup and Recovery: Recover any OpenStack application quickly in the event of data loss or misconfiguration. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Such as One-Click-Restore to entire project recovery on different clusters.
            * Disaster Recovery: Recover any OpenStack application quickly in the event of a disaster. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Trilio makes OpenStack disaster recovery easy.

            * Migration: A tenant or administrator can capture an application and its data and non-disruptively migrate that exact point-in-time to another OpenStack cloud. The need to migrate OpenStack workloads can be driven by economics, security or test/dev.

            * Network Functions Virtualization backup and recovery: Business critical services like NFV can quickly be configured to any state, assuring the optimal quality of service. Trilio provides recovery from data damage and allows restoration of entire VNFs, selected VNFs, or individual data items using a point-in-time working copy. The platform also allows recovery from a disaster by restoring the OpenStack network topology and populating it with a working copy of the entire NFV.

          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for OpenStack
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OpenStack
        - Backup
        - Recovery
        - RHOSO Backup
        - Disaster Recovery
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/openstack-backup-and-recovery/
        - name: Operator Documentation
          url: https://docs.trilio.io/openstack
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        provider:
          name: Trilio
          url: https://trilio.io/
        relatedImages:
        - registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:3d80cad27a1043fb61735e7a6fb156c98b269cfcc68f8b9712713a7d4f6ad6bd
        - registry.connect.redhat.com/trilio/trilio-wlm@sha256:b62229854368726cbb3ac494622afb9574845699a31b400aa4244ee6571364d1
        - registry.connect.redhat.com/trilio/tvo-operator-rhoso@sha256:50b7f0a5f3fdd98cfb0294d664cc01ffd1e5359be66a3da14f5552e9cb3bae2c
        - registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82
        version: 6.1.1
      entries:
      - name: tvo-operator.6.1.1
        version: 6.1.1
      name: 6.0.x
    - currentCSV: tvo-operator.6.1.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tvo.trilio.io/v1",
                "kind": "TVOControlPlane",
                "metadata": {
                  "name": "tvocontrolplane-sample",
                  "namespace": "trilio-openstack"
                },
                "spec": {
                  "common": {
                    "dmapi_workers": "16",
                    "memcached_servers": "memcached-0.memcached.openstack.svc:11212",
                    "nova_group_id": "42436",
                    "nova_user_id": "42436",
                    "oslo_enable_proxy_headers_parsing": false,
                    "trustee_role": "member"
                  },
                  "crdType": "TVOControlPlane",
                  "database": {
                    "common": {
                      "host": "openstack.openstack.svc",
                      "port": 3306,
                      "root_password": "openstack",
                      "root_user_name": "root"
                    },
                    "datamover_api": {
                      "database": "dmapi",
                      "password": "dsw21aSyH5gHH6XE72k11Y3t3C308jY5rP02ndwJW",
                      "user": "dmapi"
                    },
                    "wlm_api": {
                      "database": "workloadmgr",
                      "password": "dfeeYb72OwUzX5YuRKcVjxXJaELV8YT0jZczIQwys0v",
                      "user": "workloadmgr"
                    }
                  },
                  "helm3_hook": true,
                  "images": {
                    "triliovault_datamover_api": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_datamover_db_sync": "registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82",
                    "triliovault_object_store": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_api": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_cloud_trust": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_cron": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_db_sync": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_scheduler": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_wlm_workloads": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd"
                  },
                  "keystone": {
                    "common": {
                      "admin_role_name": "admin",
                      "auth_uri": "https://keystone-internal.openstack.svc:5000/v3",
                      "auth_url": "https://keystone-internal.openstack.svc:5000",
                      "cloud_admin_domain_name": "Default",
                      "cloud_admin_project_name": "admin",
                      "cloud_admin_user_name": "admin",
                      "cloud_admin_user_password": "openstack",
                      "is_self_signed_ssl_cert": true,
                      "keystone_auth_host": "keystone-internal.openstack.svc",
                      "keystone_auth_port": "5000",
                      "keystone_auth_protocol": "https",
                      "region_name": "regionOne",
                      "service_project_domain_name": "Default",
                      "service_project_name": "service"
                    },
                    "datamover_api": {
                      "internal_endpoint": "https://triliovault-datamover-internal.trilio-openstack.svc:8784/v2",
                      "password": "defajgh48zgt88wFzzhwEt3xHGeCOdExYbLGQN2XRm",
                      "public_auth_host": "triliovault-datamover-public-trilio-openstack.apps.trilio.trilio.bos2",
                      "public_endpoint": "https://triliovault-datamover-public-trilio-openstack.apps.trilio.trilio.bos2/v2",
                      "service_desc": "TrilioVault Datamover Api Service",
                      "service_name": "dmapi",
                      "service_type": "datamover",
                      "user": "dmapi"
                    },
                    "keystone_interface": "internal",
                    "wlm_api": {
                      "internal_endpoint": "https://triliovault-wlm-internal.trilio-openstack.svc:8781/v1/$(tenant_id)s",
                      "password": "dsdeJl8axy0gv14fURwUUxy0qUOQbugUUOfXikz6j",
                      "public_auth_host": "triliovault-wlm-public-trilio-openstack.apps.trilio.trilio.bos2",
                      "public_endpoint": "https://triliovault-wlm-public-trilio-openstack.apps.trilio.trilio.bos2/v1/$(tenant_id)s",
                      "service_desc": "TrilioVault Workloadmgr Api Service",
                      "service_name": "TrilioVaultWLM",
                      "service_type": "workloads",
                      "user": "triliovault"
                    }
                  },
                  "labels": {
                    "datamover_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_api": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_cron": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_scheduler": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    },
                    "wlm_workloads": {
                      "node_selector_key": "trilio-control-plane",
                      "node_selector_value": "enabled"
                    }
                  },
                  "pod": {
                    "replicas": {
                      "triliovault_datamover_api": 3,
                      "triliovault_object_store": 3,
                      "triliovault_wlm_api": 3,
                      "triliovault_wlm_cron": 1,
                      "triliovault_wlm_scheduler": 3,
                      "triliovault_wlm_workloads": 3
                    },
                    "security_context": {
                      "triliovault": {
                        "container": {
                          "triliovault_datamover_api": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 0,
                            "runAsUser": 63630
                          },
                          "triliovault_datamover_api_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 63630,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_api": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_cron": {
                            "allowPrivilegeEscalation": false,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_init": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 0
                          },
                          "triliovault_wlm_scheduler": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "triliovault_wlm_workloads": {
                            "privileged": true,
                            "readOnlyRootFilesystem": false,
                            "runAsUser": 42436
                          },
                          "wlm_cloud_trust_creation": {
                            "readOnlyRootFilesystem": false,
                            "runAsGroup": 42436,
                            "runAsUser": 42436
                          }
                        }
                      }
                    }
                  },
                  "rabbitmq": {
                    "common": {
                      "admin_password": "EDIT_PASSWORD",
                      "admin_user": "admin",
                      "driver": "messagingv2",
                      "host": "EDIT_HOST",
                      "port": "15671",
                      "ssl": true
                    },
                    "datamover_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "rabbit://dmapi:${PASSWORD}@${RABBITMQ_HOST}:5671/dmapi?ssl=1",
                      "user": "dmapi",
                      "vhost": "dmapi"
                    },
                    "wlm_api": {
                      "password": "EDIT_PASSWORD",
                      "transport_url": "rabbit://workloadmgr:${PASSWORD}@${RABBITMQ_HOST}:5671/workloadmgr?ssl=1",
                      "user": "workloadmgr",
                      "vhost": "workloadmgr"
                    }
                  },
                  "triliovault_backup_targets": [
                    {
                      "backup_target_name": "BT1_S3",
                      "backup_target_type": "s3",
                      "is_default": false,
                      "s3_access_key": "",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "",
                      "s3_region_name": "",
                      "s3_secret_key": "",
                      "s3_self_signed_cert": false,
                      "s3_signature_version": "default",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "amazon_s3"
                    },
                    {
                      "backup_target_name": "BT2_Other_S3",
                      "backup_target_type": "s3",
                      "is_default": true,
                      "s3_access_key": "ACCESSKEY2",
                      "s3_auth_version": "DEFAULT",
                      "s3_bucket": "BUCKET2",
                      "s3_bucket_object_lock_enabled": false,
                      "s3_endpoint_url": "ENDPOINT_URL2",
                      "s3_region_name": "REGION2",
                      "s3_secret_key": "SECRETKEY2",
                      "s3_self_signed_cert": true,
                      "s3_signature_version": "default",
                      "s3_ssl_ca_cert": "SSL_CERT_LINE_1\nSSL_CERT_LINE_2\nSSL_CERT_LINE_N\n",
                      "s3_ssl_enabled": true,
                      "s3_ssl_verify": true,
                      "s3_type": "other_s3"
                    },
                    {
                      "backup_target_name": "BT3_NFS",
                      "backup_target_type": "nfs",
                      "is_default": false,
                      "nfs_options": "nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10",
                      "nfs_shares": "192.168.2.3:/nfs/share"
                    }
                  ]
                }
              },
              {
                "apiVersion": "tvo.trilio.io/v1",
                "kind": "TVOBackupTarget",
                "metadata": {
                  "name": "tvobackuptarget-sample",
                  "namespace": "trilio-openstack"
                },
                "spec": {
                  "crdType": "TVOBackupTarget",
                  "images": {
                    "triliovault_wlm_api": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd",
                    "triliovault_object_store": "registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd"
                  },
                  "triliovault_backup_target": {
                    "backup_target_name": "S3_BT4",
                    "backup_target_type": "s3",
                    "is_default": false,
                    "s3_type": "other_s3",
                    "s3_access_key": "",
                    "s3_secret_key": "",
                    "s3_region_name": "",
                    "s3_bucket": "",
                    "s3_endpoint_url": "",
                    "s3_signature_version": "default",
                    "s3_auth_version": "DEFAULT",
                    "s3_bucket_object_lock_enabled": false,
                    "s3_ssl_enabled": true,
                    "s3_ssl_verify": true,
                    "s3_self_signed_cert": true,
                    "s3_ssl_ca_cert": "SSL_CERT_LINE_1\nSSL_CERT_LINE_2\nSSL_CERT_LINE_N",
                    "nfs_shares": "192.168.2.30:/nfs/share",
                    "nfs_options": "nolock,soft,timeo=600,intr,lookupcache=none,nfsvers=3,retrans=10"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "true"
          containerImage: registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:1ac93a84ea57a554e84fadf43839016324a432825b50e168702c88af5fcfd4d5
          createdAt: "2025-01-14T11:20:30Z"
          description: Cloud-Native Data Protection for OpenStack
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: tvo-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trilioData/triliovault-cfg-scripts
          support: Trilio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trilio for OpenStack Control Plane. Includes all control
              plane components like Datamover Api, Trilio object store and Workloadmgr
              services.
            displayName: Trilio for OpenStack Control Plane
            kind: TVOControlPlane
            name: tvocontrolplanes.tvo.trilio.io
            version: v1
          - description: Trilio for OpenStack Backup Target. This CR is responsible
              to add a new backup target.
            displayName: Trilio for OpenStack Backup Target
            kind: TVOBackupTarget
            name: tvobackuptargets.tvo.trilio.io
            version: v1
        description: |-
          Trilio for OpenStack provides scalable, native, agentless, multi-tenant backup and recovery solutions, ensuring seamless protection of workloads with flexible storage options for dynamic cloud environments.

            * OpenStack Backup and Recovery: Recover any OpenStack application quickly in the event of data loss or misconfiguration. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Such as One-Click-Restore to entire project recovery on different clusters.
            * Disaster Recovery: Recover any OpenStack application quickly in the event of a disaster. Trilio enables easy restoration of entire workloads that reflect the clouds last best-known state. Trilio makes OpenStack disaster recovery easy.

            * Migration: A tenant or administrator can capture an application and its data and non-disruptively migrate that exact point-in-time to another OpenStack cloud. The need to migrate OpenStack workloads can be driven by economics, security or test/dev.

            * Network Functions Virtualization backup and recovery: Business critical services like NFV can quickly be configured to any state, assuring the optimal quality of service. Trilio provides recovery from data damage and allows restoration of entire VNFs, selected VNFs, or individual data items using a point-in-time working copy. The platform also allows recovery from a disaster by restoring the OpenStack network topology and populating it with a working copy of the entire NFV.

          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for OpenStack
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OpenStack
        - Backup
        - Recovery
        - RHOSO Backup
        - Disaster Recovery
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/openstack-backup-and-recovery/
        - name: Operator Documentation
          url: https://docs.trilio.io/openstack
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        provider:
          name: Trilio
          url: https://trilio.io/
        relatedImages:
        - registry.connect.redhat.com/trilio/trilio-datamover-api-rhoso@sha256:7d3f9bdde36d68a38e1e45007d222da2e3194bb212637d39fa1aa352f633cf82
        - registry.connect.redhat.com/trilio/trilio-openstack-operator-rhoso@sha256:1ac93a84ea57a554e84fadf43839016324a432825b50e168702c88af5fcfd4d5
        - registry.connect.redhat.com/trilio/trilio-wlm@sha256:32d355d9998fdb7489ccd37534f235d5d161484222cbb4e99de862d1c5a083dd
        - registry.connect.redhat.com/trilio/tvo-operator-rhoso@sha256:8073e7f803f0922c5b6532fdb99be45b6b2652bcd9d0ed554453d5e81ad1326a
        version: 6.1.10
      entries:
      - name: tvo-operator.6.1.10
        version: 6.1.10
      name: 6.1.x
    defaultChannel: 6.0.x
    packageName: tvo-operator
    provider:
      name: Trilio
      url: https://trilio.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: prometheus-exporter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometheus-exporter-operator.v0.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "monitoring.3scale.net/v1alpha1",
                "kind": "PrometheusExporter",
                "metadata": {
                  "name": "example-memcached"
                },
                "spec": {
                  "dbHost": "your-memcached-host",
                  "dbPort": 11211,
                  "grafanaDashboard": {
                    "label": {
                      "key": "autodiscovery",
                      "value": "enabled"
                    }
                  },
                  "type": "memcached"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/3scale/prometheus-exporter-operator:v0.7.0
          createdAt: "2023-09-07 00:00:00"
          description: Operator to setup 3rd party prometheus exporters, with a collection
            of grafana dashboards
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/3scale-ops/prometheus-exporter-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Configures a prometheus exporter to monitor a memcached instance
            displayName: PrometheusExporter
            kind: PrometheusExporter
            name: prometheusexporters.monitoring.3scale.net
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK to centralize the setup of 3rd party prometheus exporters on **Kubernetes/OpenShift**, with a collection of grafana dashboards.

          By just providing a few parameters like *dbHost* or *dbPort* (operator manage the container image, port, argument, command, volumes... and also prometheus `ServiceMonitor` and `GrafanaDashboard` k8s objects), you can setup different prometheus exporters to monitor:
          * The **internals from different databases**
          * **HTTP/TCP endpoints** (availability, latency, SSL/TLS certificate expiration...)
          * Any available **cloudwatch metric from any AWS Service**
          * Sendgrid email statistics (delivered, bounces, errors, spam...)

          Current prometheus exporters types supported, managed by same prometheus-exporter-operator:
          * memcached
          * redis
          * mysql
          * postgresql
          * sphinx
          * es (elasticsearch)
          * cloudwatch
          * probe (blackbox)
          * sendgrid

          The operator manages the lifecycle of the following objects:
          * Deployment (one per CR)
          * Service (one per CR)
          * ServiceMonitor (optional, one per CR)
          * GrafanaDashboard (optional, one per Namespace)

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale-ops/prometheus-exporter-operator#documentation).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale-ops/prometheus-exporter-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:
          * Raising any issues you find using Prometheus Exporter Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale-ops/prometheus-exporter-operator/pulls)
          * Submitting a patch or opening a PR
          * Improving [documentation](https://github.com/3scale-ops/prometheus-exporter-operator)
          * Talking about Prometheus Exporter Operator
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale-ops/prometheus-exporter-operator/issues).

          ### License
          Prometheus Exporter Operator is licensed under the [Apache 2.0 license](https://github.com/3scale-ops/prometheus-exporter-operator/blob/main/LICENSE)
        displayName: Prometheus Exporter Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - metrics
        - observability
        - prometheus
        - exporter
        - grafana
        - mysql
        - postgresql
        - memcached
        - redis
        - sphinx
        - elasticsearch
        - cloudwatch
        - blackbox
        - sendgrid
        links:
        - name: GitHub
          url: https://github.com/3scale-ops/prometheus-exporter-operator
        maintainers:
        - email: 3scale-operations@redhat.com
          name: 3scale Ops
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - quay.io/3scale/prometheus-exporter-operator:v0.7.0
        - quay.io/openshift-community-operators/prometheus-exporter-operator@sha256:e62276f4c7e583d1fb24997fa970662f1a8d510de0baea159ba796b48cff709b
        version: 0.7.0
      entries:
      - name: prometheus-exporter-operator.v0.7.0
        version: 0.7.0
      - name: prometheus-exporter-operator.v0.3.4
        version: 0.3.4
      name: alpha
    defaultChannel: alpha
    packageName: prometheus-exporter-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: volume-expander-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: volume-expander-operator.v0.3.6
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Storage,Monitoring
          certified: "false"
          containerImage: quay.io/redhat-cop/volume-expander-operator@sha256:e4059a66a9af7c786c8c651abb8a57a55a0e528342e3a59f8c264b40f87d6e25
          createdAt: "2022-05-05T13:25:53Z"
          description: This operator provides automation expanding pod's volumes when
            they are about to run out of space.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: volume-expander-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/volume-expander-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The purpose of the volume-expander-operator is to expand volumes when they are running out of space.
          This is achieved by using the [volume expansion feature](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#expanding-persistent-volumes-claims).

          The operator periodically checks the `kubelet_volume_stats_used_bytes` and `kubelet_volume_stats_capacity_bytes published` by the kubelets to decide when to expand a volume.
          Notice that these metrics are generated only when a volume is mounted to a pod. Also the kubelet takes a minute or two to start generating accurate values for these metrics. The operator accounts for that.

          This operator works based on the following annotations to PersistentVolumeClaim resources:

          | Annotation | Default &nbsp;  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  | Description  |
          | :--- | :--- | :--- |
          | `volume-expander-operator.redhat-cop.io/autoexpand`  | N/A  | if set to "true" enables the volume-expander-operator to watch on this PVC  |
          | `volume-expander-operator.redhat-cop.io/polling-frequency`  | `"30s"` | How frequently to poll the volume metrics. Express this value as a valid golang [Duration](https://golang.org/pkg/time/#ParseDuration)  |
          | `volume-expander-operator.redhat-cop.io/expand-threshold-percent` | `"80"` | the percentage of used storage after which the volume will be expanded. This must be a positive integer. |
          | `volume-expander-operator.redhat-cop.io/expand-by-percent` | `"25"` | the percentage by which the volume will be expanded, relative to the current size. This must be an integer between 0 and 100 |
          | `volume-expander-operator.redhat-cop.io/expand-up-to` | MaxInt64 | the upper bound for this volume to be expanded to. The default value is the largest quantity representable and is intended to be interpreted as infinite. If the default is used it is recommend to ensure the namespace has a quota on the used storage class. |

          Note that not all of the storage driver implementations support volume expansion. It is a responsibility of the user/platform administrator to ensure that storage class and the persistent volume claim meet all the requirements needed for the volume expansion feature to work properly.

          This operator was tested with [OCS](https://www.redhat.com/en/technologies/cloud-computing/openshift-container-storage), but should work with any other storage driver that supports volume expansion.
        displayName: Volume Expander Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - volume
        - storage
        - csi
        - expansion
        links:
        - name: Volume Expander Operator
          url: https://github.com/redhat-cop/volume-expander-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/volume-expander-operator@sha256:e4059a66a9af7c786c8c651abb8a57a55a0e528342e3a59f8c264b40f87d6e25
        - quay.io/openshift-community-operators/volume-expander-operator@sha256:b775df99f891e2cee9c2169e9c948a8d61d65b4cc90f36752b46a56e2d4be602
        version: 0.3.6
      entries:
      - name: volume-expander-operator.v0.3.6
        version: 0.3.6
      - name: volume-expander-operator.v0.3.5
        version: 0.3.5
      - name: volume-expander-operator.v0.3.4
        version: 0.3.4
      - name: volume-expander-operator.v0.3.3
        version: 0.3.3
      - name: volume-expander-operator.v0.3.2
        version: 0.3.2
      - name: volume-expander-operator.v0.3.1
        version: 0.3.1
      - name: volume-expander-operator.v0.3.0
        version: 0.3.0
      - name: volume-expander-operator.v0.2.0
        version: 0.2.0
      - name: volume-expander-operator.v0.1.8
        version: 0.1.8
      - name: volume-expander-operator.v0.1.7
        version: 0.1.7
      - name: volume-expander-operator.v0.1.6
        version: 0.1.6
      - name: volume-expander-operator.v0.1.5
        version: 0.1.5
      - name: volume-expander-operator.v0.1.4
        version: 0.1.4
      - name: volume-expander-operator.v0.1.3
        version: 0.1.3
      - name: volume-expander-operator.v0.1.2
        version: 0.1.2
      - name: volume-expander-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: volume-expander-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc
      provider-url: ""
    name: openshift-gitops-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-gitops-operator.v1.10.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:b0dc693854319ada341e2e3872b34d7db9823b470ed369edfde88d3ae73a40e1
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.8.19\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:2bec31b0c5407ffcecfd8b860d8afb1629eaab31a250f60191f94a824e0a52f4
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:c779ad87a7f71d851c2af818abf16e5151c43d3fd54e64eac2fc7117c00753f5
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:a74e0a1fe3589ebe9f226a2bad20e9a5d5601a0e62c5f3290902f466f55b7160
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:ed530db9b4a29fb591ea208cd0c6b3b83b49537ff5a0a4f501b54ce667f9b303
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:b0dc693854319ada341e2e3872b34d7db9823b470ed369edfde88d3ae73a40e1
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:b5c8a6c7438a45125fc7fd970946f715ab7193b7446d625fae80dde9d1f3f914
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:ece2fee4227ad1becadca47028b78ceaf8717a98ec84e3f1b5188a135c4b093c
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:0905ba3f5cf87780a1e95b6a00ea7cd340d4ed1b5054e4b2c82406270baeaefa
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:d35dff5d59e748ef0404e7e76b0237ea96b2bb19b86fa04a3a34df7a379277b2
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:da5d5061dbc2ec5082cf14b6c600fb5400b83cf91d7ccebfa80680a238d275db
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:4c842f0ea8f0e9b53eb16d94488fc2f4298bd8e4be2f48713be9157da24549e6
        version: 1.10.6
      entries:
      - name: openshift-gitops-operator.v1.10.6
        version: 1.10.6
      - name: openshift-gitops-operator.v1.10.5
        version: 1.10.5
      - name: openshift-gitops-operator.v1.10.4
        version: 1.10.4
      - name: openshift-gitops-operator.v1.10.3
        version: 1.10.3
      - name: openshift-gitops-operator.v1.10.2
        version: 1.10.2
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.10
    - currentCSV: openshift-gitops-operator.v1.11.7-0.1724840231.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d6ad2ee900bf99a3672049cc8ce9c94870d41176501ded1abbc1b229b9553401
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          olm.substitutesFor: openshift-gitops-operator.v1.11.7
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.9.21\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:4d22a7a6cc2f0442889512267ae3d9356f05ff0dfdbbe137c3d8ebebc24818c8
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:0b926fc9eae775425faa1ab9709a36fdac15afe4bfe523720e17ecf5df45bb28
        - registry.redhat.io/rhel8/redis-6@sha256:c4a98010f7dd5faec2047bb9803061704233a8efc930be2a02386ac16d062d86
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:42f809f32f1d43186b849e3cc78063d3ebb2b54c55b2a1b77908af09a5ce044b
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d6ad2ee900bf99a3672049cc8ce9c94870d41176501ded1abbc1b229b9553401
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:c94c2167dc957856682a104b9a6187d3d321dec71ae794acc0dc37794d2cc373
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:31bdff225bd825d02ce0f468b1edc77541ce85b7b9111f14a583c418c984232f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:0df37cf0a0e48efae02a0711c6da61c6165e7856db97097e98d56c8b6a137bb9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:eade50b8321c1b2e0a8ac4dcb34596d43dea0a137b8b97b6eb68c6d469c8b200
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:959de6a95ef8978f66fdbe1033bcaa0ddeff9a376023e5d1d2698c5acb417305
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:7ea96000768b3cf7711150531c4c1c7edff2c45a2f29fe10bd9811ab6b281909
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        version: 1.11.7+0.1724840231.p
      entries:
      - name: openshift-gitops-operator.v1.11.7-0.1724840231.p
        version: 1.11.7+0.1724840231.p
      - name: openshift-gitops-operator.v1.11.7
        version: 1.11.7
      - name: openshift-gitops-operator.v1.11.6
        version: 1.11.6
      - name: openshift-gitops-operator.v1.11.5
        version: 1.11.5
      - name: openshift-gitops-operator.v1.11.4
        version: 1.11.4
      - name: openshift-gitops-operator.v1.11.3
        version: 1.11.3
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.11
    - currentCSV: openshift-gitops-operator.v1.12.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:48dd1254fd3a887aef2eae9239f68637eae18514a50f72ea504414d83dc727b8
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.10.18\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:33bbb88343285a0510670384b87d0226dd6de8aa12c78b68921362c4d6f5a6aa
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:7d82c719b1cef64607d30e8aaa5ab293955771c5b1dbd430e0befc988a43356d
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:80198f65f7e3f9022a34e0342e9423807b855dcb7bda810172eebc9a27afb5c2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:73918f3b3c507fc64006b7a500ecfa9d58151d694852f696c41a4412edffc78e
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:1cf485a889c7586cb4944f000b53c0e97d08f97ba14e580bec57dad7cb13712e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:a1d4e26ea755181818401697f18260b9e876aa441be14830f9142081ee22a24d
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:06a6637c4776f4285bcb295d327ee60b1aed61b7adc5f7ab52898d79281ced70
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9e0fee30842a16d7b8a39d336123c80c5271cb2ceb50759fc7ee51a4ed09ceb3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:dbf3038daf7c797123c511f9a609c3485cb1a5bcae53c614fad17e0a65fa7ee3
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:b5736d1106db29fcdf42328ca20b96382d4339f90b97a07120ea73ee174ea1ad
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:48dd1254fd3a887aef2eae9239f68637eae18514a50f72ea504414d83dc727b8
        - registry.redhat.io/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        version: 1.12.6
      entries:
      - name: openshift-gitops-operator.v1.12.6
        version: 1.12.6
      - name: openshift-gitops-operator.v1.12.5-0.1727371523.p
        version: 1.12.5+0.1727371523.p
      - name: openshift-gitops-operator.v1.12.5
        version: 1.12.5
      - name: openshift-gitops-operator.v1.12.4
        version: 1.12.4
      - name: openshift-gitops-operator.v1.12.3
        version: 1.12.3
      - name: openshift-gitops-operator.v1.12.2
        version: 1.12.2
      - name: openshift-gitops-operator.v1.12.1
        version: 1.12.1
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.12
    - currentCSV: openshift-gitops-operator.v1.13.3-0.1741683398.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d41034bcf5c28bcb8afef08678793d0cc27a4032e2811a0c496c3bd0f10ecc17
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          olm.substitutesFor: openshift-gitops-operator.v1.13.3-0.1738142397.p
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.22.2
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.11.12\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_gitops/
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d4d5724f67859d24c32f0f5735f5af3e325f77db97f58bc7f17ed4b831b7e534
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:7c6bb4a525964d9cdf1c64c646174f91273501dea93224cab5382f81533c6642
        - registry.redhat.io/rhel8/redis-6@sha256:a848cc4edb4405846c673187dd68ce66c328dd1ad42f193f5737288c7971399d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:d41034bcf5c28bcb8afef08678793d0cc27a4032e2811a0c496c3bd0f10ecc17
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:3f2804bc2af437ff1f06c214b48a1a780dfcfab995650d901c03270057eb9f3c
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:f04d565eb5162fd5a9c78cd8443af6a3b184a660277537f1d6d575caa2e85441
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c02dc2c79ee24ce5450ea4e19493ac2a1997eeb5bfd359291642c529826d0cdd
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:b982df02ea7c45a7603d83fe82cac12e1faac303a1b72af6a727512bb97441df
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:06a6637c4776f4285bcb295d327ee60b1aed61b7adc5f7ab52898d79281ced70
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:8a7c3e31ce414e6c6fecf1652343b22c52502902676bf4d7a75bf42bdabfca06
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:a366229e6ee26ebe2d7f765b2a2da6057a29e783835655b5d97545ac563b541a
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:e87515d016565bb69cb2c2ac40432e0127dd2cb20a490ac82019836032ba15e5
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:bde11fa83b7e708677b08ea995041f480b88edfb93e4a62c10380d101c0a349c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6a90baa81d2272e681a16a91deacdc1c212b00142b0d9736aff14f772f68be11
        version: 1.13.3+0.1741683398.p
      entries:
      - name: openshift-gitops-operator.v1.13.3-0.1741683398.p
        version: 1.13.3+0.1741683398.p
      - name: openshift-gitops-operator.v1.13.3-0.1738142397.p
        version: 1.13.3+0.1738142397.p
      - name: openshift-gitops-operator.v1.13.3
        version: 1.13.3
      - name: openshift-gitops-operator.v1.13.2
        version: 1.13.2
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.13
    - currentCSV: openshift-gitops-operator.v1.14.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:7cf924af77d9c56e70710b99e080ed8aee162f05ec472f32085a76ef85cf9879
          createdAt: "2025-05-22 12:40:45"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.12.13-1\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_gitops/
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bcf6b3136a5e71803cb518c8763c165bb46ee37ef7bf55503911d7fcb36b3a8f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:7cf924af77d9c56e70710b99e080ed8aee162f05ec472f32085a76ef85cf9879
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:2c45cfc01f9ec7577afc09cadc4c1a6f470836f6a0a7c24d66b791913f89bb05
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8096f824bd96e3148cf4b6936766c888d1fff0af9e9d0be440ae4feb6adc03f2
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:773592dfb9964970f444871a8812e8b74db3f205faaa0bf148defa1a2b87b649
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:42a79aad641e8607fc339e4ce7f9cf1d258be01f863dbc31a94d2c27edb645bd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1ed3b514bf9af6ac0d386e3739874d1d964e667d54e041c2d67edd769b0009fb
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c369df980874aae270ca7bc6455f1ca45467d75d25fe80d7bcb06a7826bdeaa3
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:7358787959af7e7e589edfc043a97d80ebab87536bde365d33be7a600071bf0e
        - registry.redhat.io/rhel8/redis-6@sha256:a9f30ed08abcab0122556a5485fbcf6e0fc03860f19954dcebdbf5e754876a45
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:1112160243f227a5d393eeee165bd4fed0d3f42646a9280cbe9af60ef728aeb2
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:b7d3c882fc25fbbea28951afb197d4d47ace253864889339396e20f0c6897a7f
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:cd4965d91c163160bcf43a02c54ca60b8704281c95de904f904df942bfd83bcd
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:97e32825f59c33cca7d8dba3580095205c20435ccd15b91cf0aff37db9841e0e
        version: 1.14.4
      entries:
      - name: openshift-gitops-operator.v1.14.4
        version: 1.14.4
      - name: openshift-gitops-operator.v1.14.3-0.1746016855.p
        version: 1.14.3+0.1746016855.p
      - name: openshift-gitops-operator.v1.14.3-0.1742836272.p
        version: 1.14.3+0.1742836272.p
      - name: openshift-gitops-operator.v1.14.3
        version: 1.14.3
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.14
    - currentCSV: openshift-gitops-operator.v1.15.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad49a3d14f843bde0d2365093d00ffa6d3b9d59a75c81e0c56710ad37b53bd92
          createdAt: "2024-11-25T03:57:37Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v2.13.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:911733d78ae6f36f642b4d63f044cd102b7eee170508eaf518ac7acf0f339698
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:41717c27915251bda8afeef651b609b8a9ed410e0fa09c4cf8fa7e91d6a94292
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad49a3d14f843bde0d2365093d00ffa6d3b9d59a75c81e0c56710ad37b53bd92
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:56653df97e4498ecd67b9645d75e44f65c625594e312dbcf0f09937b57d76010
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:d41454824632475f0e88aa6e0031ec643bd37e1d575df36cd3ee63daf1403281
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:0c7f72546d0d918bfd21aff7157b983ff7c832b269f5efb84d2ed723a09bf612
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:6cec76d7ea70d77923cf4285177e375d34e96e3aecbe77b68cd5ff769e6e540b
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:2dd72760f736ab13e87d6e507e654c390d2d6af3154c6adb85610b5f58085b9c
        - registry.redhat.io/rhel9/redis-7@sha256:2fca0decc49230122f044afb2e7cd8f64921a00141c8c22c2f1402f3564f87f8
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:0b1771f697a700263c5b827dbde56a5c9bab610e9d7df55ef93885a4e54cc0e9
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:a9e2360f00c5c9840a100a6748bd905b8f34169140a33fb0ca4af9cf6db71642
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:5bda26e2c16beebf66dd8f3c3c55d48e2f00db870f2d9d4d44570d9d3b8bddb0
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:4d945dd1a6fc0e8b6cfc16f4359128f1427b094e76efd4ff31325a1839246107
        version: 1.15.4
      entries:
      - name: openshift-gitops-operator.v1.15.4
        version: 1.15.4
      - name: openshift-gitops-operator.v1.15.3
        version: 1.15.3
      - name: openshift-gitops-operator.v1.15.2
        version: 1.15.2
      - name: openshift-gitops-operator.v1.15.1
        version: 1.15.1
      - name: openshift-gitops-operator.v1.15.0-0.1738074324.p
        version: 1.15.0+0.1738074324.p
      - name: openshift-gitops-operator.v1.15.0
        version: 1.15.0
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.15
    - currentCSV: openshift-gitops-operator.v1.16.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:5672066f6a9d79c2ad2b8e44713fa67f384f5e1af803ce92c1bb807e12eb2ab4
          createdAt: "2025-09-30T07:01:55Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:3a58f07c4a562d106ec65fbeac3329fd06035e0da4627199cc984200e8365fac
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v2.14.21\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:3a58f07c4a562d106ec65fbeac3329fd06035e0da4627199cc984200e8365fac
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:1e7fb9262023798711dc58fecf9c57c2fbd260a7f942eef2a9fd2822dbfb0b74
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:636d307f13d82dd8984e362490fb3c8938b05d452e65f44c7c247e7fc4a8be8c
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:1a4d9d6d6c917a161fa3797fedf722a1ba9211eaa4c52cf976bebb629eabe40c
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:1935460f871ad2cc9fe097e1a7e32a67b4b4a3c58aa0412cffc28823f4ffb49f
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:2d361df79b6ea75f15eed2d6726303351298b47b4fee75aa8aac255a19e1ddbf
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:cebe39bdefb8ffc375f3d5f14bee4249f9886678a75fc5c80e43c6daabc5ef16
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:306ddf66c42edbebfdd35199b00edec8e3b01080e320b8d26f4527e89ff81f82
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:5672066f6a9d79c2ad2b8e44713fa67f384f5e1af803ce92c1bb807e12eb2ab4
        version: 1.16.5
      entries:
      - name: openshift-gitops-operator.v1.16.5
        version: 1.16.5
      - name: openshift-gitops-operator.v1.16.4
        version: 1.16.4
      - name: openshift-gitops-operator.v1.16.3
        version: 1.16.3
      - name: openshift-gitops-operator.v1.16.2
        version: 1.16.2
      - name: openshift-gitops-operator.v1.16.1
        version: 1.16.1
      - name: openshift-gitops-operator.v1.16.0-0.1746014725.p
        version: 1.16.0+0.1746014725.p
      - name: openshift-gitops-operator.v1.16.0
        version: 1.16.0
      - name: openshift-gitops-operator.v1.15.1
        version: 1.15.1
      - name: openshift-gitops-operator.v1.15.0
        version: 1.15.0
      - name: openshift-gitops-operator.v1.15.0-0.1738074324.p
        version: 1.15.0+0.1738074324.p
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.16
    - currentCSV: openshift-gitops-operator.v1.17.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad283faec7d54c2d4d255800929963c4e9ba929ddae1e779ff661088d7ceab0d
          createdAt: "2025-12-08T07:34:14Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:acc435158c325019d6c479c7d41107945207518869b434ea5c827c8c9babd00b
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.0.20\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:e1101b02df32a56a9aec80639372248b72963240dc86add446d0d07da65baca7
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:c02ad9e0709fbe52a34d9e8c146c90782cd49e351ce27e74e299cb9762246562
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:ad283faec7d54c2d4d255800929963c4e9ba929ddae1e779ff661088d7ceab0d
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8ea41862301665deb2eafd16fa19d4d76663cd20829256b575ba7090889cff82
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:d5233a088e71464f08d05f8a1f04efc236684634c89afcb93dbf3ac81a740a82
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:bafe22c773f034d4cb4c0498f2f669abff23927378b424a05ba13b196f242710
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:eb6bb1adf263abf1cc4f297f9db8289aff4c8bd73c3f9b8968facc1bdd2ee17a
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:acc435158c325019d6c479c7d41107945207518869b434ea5c827c8c9babd00b
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:56ea8e384f20a903c9b42da1d244f0ec98c77916e4efebb53f876e459761038e
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:724b4f15d0c255cc9c096cb44331ddc2e6456d4909d03ce463478af76b33304e
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        version: 1.17.3
      entries:
      - name: openshift-gitops-operator.v1.17.3
        version: 1.17.3
      - name: openshift-gitops-operator.v1.17.2
        version: 1.17.2
      - name: openshift-gitops-operator.v1.17.1
        version: 1.17.1
      - name: openshift-gitops-operator.v1.17.0
        version: 1.17.0
      name: gitops-1.17
    - currentCSV: openshift-gitops-operator.v1.18.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - \"\"\n  - discovery.k8s.io\n  kinds:\n  - Endpoints\n  - EndpointSlice\n- apiGroups:\n  - apiregistration.k8s.io\n  kinds:\n  - APIService\n- apiGroups:\n  - coordination.k8s.io\n  kinds:\n  - Lease\n- apiGroups:\n  - authentication.k8s.io\n  - authorization.k8s.io\n  kinds:\n  - SelfSubjectReview\n  - TokenReview\n  - LocalSubjectAccessReview\n  - SelfSubjectAccessReview\n  - SelfSubjectRulesReview\n  - SubjectAccessReview\n- apiGroups:\n  - certificates.k8s.io\n  kinds:\n  - CertificateSigningRequest\n- apiGroups:\n  - cert-manager.io\n  kinds:\n  - CertificateRequest\n- apiGroups:\n  - cilium.io\n  kinds:\n  - CiliumIdentity\n  - CiliumEndpoint\n  - CiliumEndpointSlice\n- apiGroups:\n  - kyverno.io\n  - reports.kyverno.io\n  - wgpolicyk8s.io\n  kinds:\n  - PolicyReport\n  - ClusterPolicyReport\n  - EphemeralReport\n  - ClusterEphemeralReport\n  - AdmissionReport\n  - ClusterAdmissionReport\n  - BackgroundScanReport\n  - ClusterBackgroundScanReport\n  - UpdateRequest\n- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun\n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:95aa28b8b04efde78d2e4495d2c58e7f8ebd5b399cb2afda927eb01011d2061e
          createdAt: "2025-11-20T04:44:08Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: ""
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:93d8de005289f52067f01295aad9ac47a1a618dd2f0865d2d8e2a3130281383d
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.1.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:684edd8ef336440fe06964bd977c0051ffb1b4df00c47ccabed710c48d19bbc3
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:93d8de005289f52067f01295aad9ac47a1a618dd2f0865d2d8e2a3130281383d
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:211703d9aada0596060cbe688d86727e7fe52b70e4ee7149b057d89aa6d13b2e
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b4d6b30d562e1cacbb1ca461e8c14b95c0d42be1baf876599c446669f2584feb
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c0e231e430daaff0b7a5b06f9b8628a2fe0ea3a82a314d42a364fe7f883f075a
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:337d52feb9a42ad04aa91211f41040db48e2de3a09266a516183882f9f587a6a
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:89263c0ed73f6f3bf6f73d9ed32c459489e1adf2b423ab73926b5343064d88a8
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:d5cf5da89528ed1505c0695183f432f1501b0226ce6402e84b7895ad14620d5d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:d7cec49c3e3ef02a3378ecd94f64a7e94f5ed93b5e7e6ff81f8d758eeabcb7c0
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:772adc241b808829d62631a288cef0b3d9cfb617f00d84aa3893616e48e30885
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:95aa28b8b04efde78d2e4495d2c58e7f8ebd5b399cb2afda927eb01011d2061e
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:fd3ab4af7bd27d2c7ed667cb140be9afff8eac39378001911a5f119e745f99ab
        version: 1.18.2
      entries:
      - name: openshift-gitops-operator.v1.18.2
        version: 1.18.2
      - name: openshift-gitops-operator.v1.18.1
        version: 1.18.1
      - name: openshift-gitops-operator.v1.18.0
        version: 1.18.0
      name: gitops-1.18
    - currentCSV: openshift-gitops-operator.v1.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - \"\"\n  - discovery.k8s.io\n  kinds:\n  - Endpoints\n  - EndpointSlice\n- apiGroups:\n  - apiregistration.k8s.io\n  kinds:\n  - APIService\n- apiGroups:\n  - coordination.k8s.io\n  kinds:\n  - Lease\n- apiGroups:\n  - authentication.k8s.io\n  - authorization.k8s.io\n  kinds:\n  - SelfSubjectReview\n  - TokenReview\n  - LocalSubjectAccessReview\n  - SelfSubjectAccessReview\n  - SelfSubjectRulesReview\n  - SubjectAccessReview\n- apiGroups:\n  - certificates.k8s.io\n  kinds:\n  - CertificateSigningRequest\n- apiGroups:\n  - cert-manager.io\n  kinds:\n  - CertificateRequest\n- apiGroups:\n  - cilium.io\n  kinds:\n  - CiliumIdentity\n  - CiliumEndpoint\n  - CiliumEndpointSlice\n- apiGroups:\n  - kyverno.io\n  - reports.kyverno.io\n  - wgpolicyk8s.io\n  kinds:\n  - PolicyReport\n  - ClusterPolicyReport\n  - EphemeralReport\n  - ClusterEphemeralReport\n  - AdmissionReport\n  - ClusterAdmissionReport\n  - BackgroundScanReport\n  - ClusterBackgroundScanReport\n  - UpdateRequest\n- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun\n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
          createdAt: "2025-11-20T04:37:10Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.0 <1.19.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: ImageUpdater
            name: imageupdaters.argocd-image-updater.argoproj.io
            version: v1alpha1
          - kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.1.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:5e78b9e6a98218c209af1d85e60c2000172a90f178f32f06f0e3b6bc11f33cce
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:5365dfcdcedde372b9d7cc787107b05f997c7526fd1d473e26f843718a5be92d
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c650147ab5940d7095eaee89ba75956726838595057ab6b216d41d0f09265f30
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8afea9d7876656c931f8050979d6d92c85b01069c7a5f2de46c0f65002663458
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
        version: 1.19.0
      entries:
      - name: openshift-gitops-operator.v1.19.0
        version: 1.19.0
      name: gitops-1.19
    - currentCSV: openshift-gitops-operator.v1.6.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:104cc7564fcc3261faa3fbf9c95720b4434e15103b876c080ed012b244ef1dae
          createdAt: "2021-09-15T22:31:21Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD v2.4.28\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces. \n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc.
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:104cc7564fcc3261faa3fbf9c95720b4434e15103b876c080ed012b244ef1dae
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0cc4fa704e581cd5581c816668183f602fae6ef9ab3c04ce0d99d561287ef140
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:dbcad68b70ab7918e944099aef4177c9bc3378e9ca49499dbb94a175927d3209
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:e9e2f950cda8153cff112e43872b98e4977d3cbdf59713b8de92defef6d34b6d
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:06f1150114d4c0bd236d2a5d4716c9c3e95a9733058297790389d6ba2a1bf264
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b22190de3162d3e03481cae8904ce563912756eea7ac7e7feec0acbbdae5e6f6
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        version: 1.6.6
      entries:
      - name: openshift-gitops-operator.v1.6.6
        version: 1.6.6
      - name: openshift-gitops-operator.v1.6.5
        version: 1.6.5
      - name: openshift-gitops-operator.v1.6.4
        version: 1.6.4
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.6
    - currentCSV: openshift-gitops-operator.v1.7.4-0.1690486082.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:e0967a4058fe5a9bfe7e998a3347529c99536cf3a44de9e40f9632035ff5a2fe
          createdAt: "2021-09-15T22:31:21Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          olm.substitutesFor: openshift-gitops-operator.v1.7.4
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD v2.5.16\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficient privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces. \n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc.
        relatedImages:
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:f1371d2012796e9aaca105112190ff89ec3d0be95968e05b19db101480f67975
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:c2f39be75173b4cc57498c5845b14c464bf9af92b49716df9661c8135ac2cf7a
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:45789c49d9334e0ed062641313714c101bd0117dc5633316b1ec63e7a6c76c15
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:5c11be8ec9db54331893f2f298aa27006e77b0eaded2d88d0531c77da91a421f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:e0967a4058fe5a9bfe7e998a3347529c99536cf3a44de9e40f9632035ff5a2fe
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:c55aadf45397083bec4e42d6c0514ed79169a07fd3d9d75671904df2c0520e52
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/rhel8/redis-6@sha256:53598a6effeb90e4f1b005b2521beffd2fa2b0c52d0e7f2347ee2abd2577cab3
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:26050fb95978e90e8d00e895032045e77cb236008a0e1417459e1aeca8a48c69
        version: 1.7.4+0.1690486082.p
      entries:
      - name: openshift-gitops-operator.v1.7.4-0.1690486082.p
        version: 1.7.4+0.1690486082.p
      - name: openshift-gitops-operator.v1.7.4
        version: 1.7.4
      - name: openshift-gitops-operator.v1.7.3
        version: 1.7.3
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.7
    - currentCSV: openshift-gitops-operator.v1.8.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:f32df77b3c23d6a833ff887386285ca7a5bd436641f0ec1ffc934c8247fa315f
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          olm.skipRange: ""
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.6.153\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:8cc59901689858e06f5c2942f8c975449c17454fa8364da6153d9b5a3538a985
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:b2d58f4dc20eb7e17e09af0e8c5de55fa04f9f4f697e10c6be81a7a6a08381b2
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:f32df77b3c23d6a833ff887386285ca7a5bd436641f0ec1ffc934c8247fa315f
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:0d13c03048b4435d9f5045a6fb7bd4b8808461b26aeca60c0047fa5937e1d45d
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/rh-sso-7/sso75-openshift-rhel8@sha256:d5829e880db4b82a50a4962d61ea148522a93644174931b256d7ad866eadcf40
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:f77594bc053be144b33ff9603ee9675c7e82946ec0dbfb04d8f942c8d73155da
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:8aa68fddef88921aeeede24a849d3dabbceff01dc03185342c21e6ee58033eaf
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:16d9184345e6d5a19f326a7b52f76d8a59b96763f233c50546ff017a625e5ff5
        version: 1.8.6
      entries:
      - name: openshift-gitops-operator.v1.8.6
        version: 1.8.6
      - name: openshift-gitops-operator.v1.8.5
        version: 1.8.5
      - name: openshift-gitops-operator.v1.8.4-0.1693214052.p
        version: 1.8.4+0.1693214052.p
      - name: openshift-gitops-operator.v1.8.4
        version: 1.8.4
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.8
    - currentCSV: openshift-gitops-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun        \n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "argo-rollout"
                },
                "spec": null
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:11a6084e11aa32511a34bd6cfb4f4995aec690c1f5ed61861e99f6e42d62afb4
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          olm.skipRange: ""
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n*
          Automated GitOps bootstrapping using Tekton and Argo CD with [GitOps Application
          Manager CLI](https://github.com/redhat-developer/kam)\n\n## Components\n*
          Argo CD 2.7.16\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n##
          How to Install \nAfter installing the OpenShift GitOps operator, an instance
          \ of Argo CD is installed in the `openshift-gitops` namespace which has
          sufficent privileges for managing cluster configurations. You can create
          additional Argo CD instances using the `ArgoCD` custom resource within the
          desired namespaces.\n```yaml\napiVersion: argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n
          \ name: argocd\nspec:\n  server:\n    route:\n      enabled: true\n```\n\nOpenShift
          GitOps is a layered product on top of OpenShift that enables teams to adopt
          GitOps principles for managing cluster configurations and automating secure
          and repeatable application delivery across hybrid multi-cluster Kubernetes
          environments. OpenShift GitOps is built around Argo CD as the core upstream
          project and assists customers to establish an end-to-end application delivery
          workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        links:
        - name: Release Notes
          url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html
        - name: Day 1 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1
        - name: Day 2 Operations
          url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:11a6084e11aa32511a34bd6cfb4f4995aec690c1f5ed61861e99f6e42d62afb4
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2
        - registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac
        - registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:3873d1f18b5643e1de2601419410270342650a21428bb26a4cbee20c0c63f98b
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:136d3a936759e112d3ea2e78f7c02bd882b0fd3011f4c452f45c32c43822772d
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:43bb961d847477902e66a92edd1539322cac8d5f74706b048a458ad037a0c7a3
        - registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:80f92842fe4cba008a873ad2ab6059a3a24e76e16671d8ece034dbbe666996bc
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:86012145d4b8798dc12f6f4f07a9316a193188aaac865e324b63f4e60e8ec584
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:3d17786e2f4063154b9e3a40b96bf8ec0a14b86395cea5fe7ca18c5b43764478
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:27efa0ab1d9c69047a924bc1dcd2b56108f5f390a6da56afb6ab7a37cb4578e2
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:a568c8c647e2e2d6abdf12138eeef8f8bdde1fdcbf786e9ca8c8f93bc79acaf9
        version: 1.9.4
      entries:
      - name: openshift-gitops-operator.v1.9.4
        version: 1.9.4
      - name: openshift-gitops-operator.v1.9.3
        version: 1.9.3
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: gitops-1.9
    - currentCSV: openshift-gitops-operator.v1.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Rollout",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "RolloutManager",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "rbac": {
                    "defaultPolicy": "",
                    "policy": "g, system:cluster-admins, role:admin\n",
                    "scopes": "[groups]"
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1024Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "resourceExclusions": "- apiGroups:\n  - \"\"\n  - discovery.k8s.io\n  kinds:\n  - Endpoints\n  - EndpointSlice\n- apiGroups:\n  - apiregistration.k8s.io\n  kinds:\n  - APIService\n- apiGroups:\n  - coordination.k8s.io\n  kinds:\n  - Lease\n- apiGroups:\n  - authentication.k8s.io\n  - authorization.k8s.io\n  kinds:\n  - SelfSubjectReview\n  - TokenReview\n  - LocalSubjectAccessReview\n  - SelfSubjectAccessReview\n  - SelfSubjectRulesReview\n  - SubjectAccessReview\n- apiGroups:\n  - certificates.k8s.io\n  kinds:\n  - CertificateSigningRequest\n- apiGroups:\n  - cert-manager.io\n  kinds:\n  - CertificateRequest\n- apiGroups:\n  - cilium.io\n  kinds:\n  - CiliumIdentity\n  - CiliumEndpoint\n  - CiliumEndpointSlice\n- apiGroups:\n  - kyverno.io\n  - reports.kyverno.io\n  - wgpolicyk8s.io\n  kinds:\n  - PolicyReport\n  - ClusterPolicyReport\n  - EphemeralReport\n  - ClusterEphemeralReport\n  - AdmissionReport\n  - ClusterAdmissionReport\n  - BackgroundScanReport\n  - ClusterBackgroundScanReport\n  - UpdateRequest\n- apiGroups:\n  - tekton.dev\n  clusters:\n  - '*'\n  kinds:\n  - TaskRun\n  - PipelineRun\n",
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "openShiftOAuth": true,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "pipelines.openshift.io/v1alpha1",
                "kind": "GitopsService",
                "metadata": {
                  "name": "gitopsservice-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          console.openshift.io/plugins: '["gitops-plugin"]'
          containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
          createdAt: "2025-11-20T04:37:10Z"
          description: Enables teams to adopt GitOps principles for managing cluster
            configurations and application delivery across hybrid multi-cluster Kubernetes
            environments.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.0 <1.19.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-gitops-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/gitops-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An AnalysisRun is an instantiation of an AnalysisTemplate.
              AnalysisRuns are like Jobs in that they eventually complete.
            displayName: AnalysisRun
            kind: AnalysisRun
            name: analysisruns.argoproj.io
            version: v1alpha1
          - description: An AnalysisTemplate is a template spec which defines how
              to perform a canary analysis, such as the metrics, its frequency, and
              the values which are considered successful or failed.
            displayName: AnalysisTemplate
            kind: AnalysisTemplate
            name: analysistemplates.argoproj.io
            version: v1alpha1
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: ApplicationSet is the representation of an ApplicationSet
              controller deployment.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: Argo CD is the representation of an Argo CD deployment.
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but
              it is not limited to its namespace. It can be used by any Rollout throughout
              the cluster.
            displayName: ClusterAnalysisTemplate
            kind: ClusterAnalysisTemplate
            name: clusteranalysistemplates.argoproj.io
            version: v1alpha1
          - description: An Experiment is limited run of one or more ReplicaSets for
              the purposes of analysis. Experiments typically run for a pre-determined
              duration, but can also run indefinitely until stopped.
            displayName: Experiment
            kind: Experiment
            name: experiments.argoproj.io
            version: v1alpha1
          - description: GitopsService is the Schema for the gitopsservices API
            displayName: Gitops Service
            kind: GitopsService
            name: gitopsservices.pipelines.openshift.io
            version: v1alpha1
          - kind: ImageUpdater
            name: imageupdaters.argocd-image-updater.argoproj.io
            version: v1alpha1
          - kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfigurations contains the notification template
              used to generate notifications that notify users about important changes
              in the application state.
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
          - description: A controller for managing Argo Rollouts
            displayName: RolloutManager
            kind: RolloutManager
            name: rolloutmanagers.argoproj.io
            version: v1alpha1
          - kind: Rollout
            name: rollouts.argoproj.io
            version: v1alpha1
        description: "Red Hat OpenShift GitOps is a declarative continuous delivery
          platform based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables
          teams to adopt GitOps principles for managing cluster configurations and
          automating secure and repeatable application delivery across hybrid multi-cluster
          Kubernetes environments. Following GitOps and infrastructure as code principles,
          you can store the configuration of clusters and applications in Git repositories
          and use Git workflows to roll them out to the target clusters.\n\n## Features\n*
          Automated install and upgrades of Argo CD\n* Manual and automated configuration
          sync from Git repositories to target OpenShift and Kubernetes clusters\n*
          Support for the Helm and Kustomize templating tools\n* Configuration drift
          detection and visualization on live clusters\n* Audit trails of rollouts
          to the clusters\n* Monitoring and logging integration with OpenShift\n##Components\n*
          Argo CD v3.1.9\n\n## How to Install \nAfter installing the OpenShift GitOps
          operator, an instance  of Argo CD is installed in the `openshift-gitops`
          namespace which has sufficient privileges for managing cluster configurations.
          You can create additional Argo CD instances using the `ArgoCD` custom resource
          within the desired namespaces.\n```yaml\napiVersion: argoproj.io/v1beta1\nkind:
          ArgoCD\nmetadata:\n  name: argocd\nspec:\n  server:\n    route:\n      enabled:
          true\n```\n\nOpenShift GitOps is a layered product on top of OpenShift that
          enables teams to adopt GitOps principles for managing cluster configurations
          and automating secure and repeatable application delivery across hybrid
          multi-cluster Kubernetes environments. OpenShift GitOps is built around
          Argo CD as the core upstream project and assists customers to establish
          an end-to-end application delivery workflow on GitOps principles.\n"
        displayName: Red Hat OpenShift GitOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devtools
        - gitops
        - pipelines
        maintainers:
        - email: team-gitops@redhat.com
          name: OpenShift GitOps Team
        maturity: GA
        provider:
          name: Red Hat Inc
        relatedImages:
        - registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:a5d9ecefafd75b1c8ba0fd067f6336d7df1cd8775e3c250032048c9745875e4f
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:fa0f52974e14c22af290c896f1f0b9ff62148a27317f48b3b5b2ea8768c9549b
        - registry.redhat.io/rhel9/redis-7@sha256:3d31c0cfaf4219f5bd1c52882b603215d1cb4aaef5b8d1a128d0174e090f96f3
        - registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:74112a7f92c432baef25f9af458d90bfae308aa23f0b188d46c15b9917090be1
        - registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:442508af831dd69f0bdfde9065c8bf2776abf5d37786467528f696e372f5d996
        - registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:5b6dac63fd10528d12a4cf64360a577d61bb33ff2abe251ffd6f60a2cf9c0c10
        - registry.redhat.io/openshift4/ose-haproxy-router@sha256:21f3a0248a09051849317576680f80820c75996d99d703a9b3206a88569e6581
        - registry.redhat.io/openshift-gitops-1/gitops-operator-bundle@sha256:5e78b9e6a98218c209af1d85e60c2000172a90f178f32f06f0e3b6bc11f33cce
        - registry.redhat.io/openshift-gitops-1/argocd-extensions-rhel8@sha256:8afea9d7876656c931f8050979d6d92c85b01069c7a5f2de46c0f65002663458
        - registry.redhat.io/openshift-gitops-1/argocd-image-updater-rhel8@sha256:3c8df368671ee9aa4fbbddf46b2e0e7730d040b617986d799f0807fb14f866d5
        - registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:5365dfcdcedde372b9d7cc787107b05f997c7526fd1d473e26f843718a5be92d
        - registry.redhat.io/openshift-gitops-1/argocd-agent-rhel8@sha256:c650147ab5940d7095eaee89ba75956726838595057ab6b216d41d0f09265f30
        - registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:c3f236b77221bfb0ffd9f44fbf231ecf44764905226f9eaa876c9335c27acb46
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:58698c84109b0833060ab86ef36c0092418c87aba61ba271bef60a18e6b5a6af
        version: 1.19.0
      entries:
      - name: openshift-gitops-operator.v1.19.0
        version: 1.19.0
      - name: openshift-gitops-operator.v1.18.2
        version: 1.18.2
      - name: openshift-gitops-operator.v1.18.1
        version: 1.18.1
      - name: openshift-gitops-operator.v1.18.0
        version: 1.18.0
      - name: openshift-gitops-operator.v1.17.1
        version: 1.17.1
      - name: openshift-gitops-operator.v1.17.0
        version: 1.17.0
      - name: openshift-gitops-operator.v1.16.2
        version: 1.16.2
      - name: openshift-gitops-operator.v1.16.1
        version: 1.16.1
      - name: openshift-gitops-operator.v1.16.0-0.1746014725.p
        version: 1.16.0+0.1746014725.p
      - name: openshift-gitops-operator.v1.16.0
        version: 1.16.0
      - name: openshift-gitops-operator.v1.15.1
        version: 1.15.1
      - name: openshift-gitops-operator.v1.15.0-0.1738074324.p
        version: 1.15.0+0.1738074324.p
      - name: openshift-gitops-operator.v1.15.0
        version: 1.15.0
      - name: openshift-gitops-operator.v1.14.2
        version: 1.14.2
      - name: openshift-gitops-operator.v1.14.2-0.1738140086.p
        version: 1.14.2+0.1738140086.p
      - name: openshift-gitops-operator.v1.14.1
        version: 1.14.1
      - name: openshift-gitops-operator.v1.14.0
        version: 1.14.0
      - name: openshift-gitops-operator.v1.13.1
        version: 1.13.1
      - name: openshift-gitops-operator.v1.13.0
        version: 1.13.0
      - name: openshift-gitops-operator.v1.12.0
        version: 1.12.0
      - name: openshift-gitops-operator.v1.11.2
        version: 1.11.2
      - name: openshift-gitops-operator.v1.11.1
        version: 1.11.1
      - name: openshift-gitops-operator.v1.11.0
        version: 1.11.0
      - name: openshift-gitops-operator.v1.10.1
        version: 1.10.1
      - name: openshift-gitops-operator.v1.10.0
        version: 1.10.0
      - name: openshift-gitops-operator.v1.9.2
        version: 1.9.2
      - name: openshift-gitops-operator.v1.9.1
        version: 1.9.1
      - name: openshift-gitops-operator.v1.9.0
        version: 1.9.0
      - name: openshift-gitops-operator.v1.8.3
        version: 1.8.3
      - name: openshift-gitops-operator.v1.8.2
        version: 1.8.2
      - name: openshift-gitops-operator.v1.8.1
        version: 1.8.1
      - name: openshift-gitops-operator.v1.8.0
        version: 1.8.0
      - name: openshift-gitops-operator.v1.7.2
        version: 1.7.2
      - name: openshift-gitops-operator.v1.7.1
        version: 1.7.1
      - name: openshift-gitops-operator.v1.7.0
        version: 1.7.0
      - name: openshift-gitops-operator.v1.6.3
        version: 1.6.3
      - name: openshift-gitops-operator.v1.6.2
        version: 1.6.2
      - name: openshift-gitops-operator.v1.6.1-0.1666124167.p
        version: 1.6.1+0.1666124167.p
      - name: openshift-gitops-operator.v1.6.1
        version: 1.6.1
      - name: openshift-gitops-operator.v1.6.0
        version: 1.6.0
      - name: openshift-gitops-operator.v1.5.4
        version: 1.5.4
      - name: openshift-gitops-operator.v1.5.3
        version: 1.5.3
      - name: openshift-gitops-operator.v1.5.2
        version: 1.5.2
      name: latest
    defaultChannel: latest
    packageName: openshift-gitops-operator
    provider:
      name: Red Hat Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CyberArk
      provider-url: https://www.cyberark.com/
    name: conjur-follower-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: conjur-follower-operator.v2.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "conjur.cyberark.com/v1",
                "kind": "ConjurFollower",
                "metadata": {
                  "labels": {
                    "app": "conjur-follower"
                  },
                  "name": "my-conjur-follower",
                  "namespace": "cyberark-conjur"
                },
                "spec": {
                  "images": {
                    "configurator": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:75fb5de2c111084ffcc3d973e6c63f1adfae78e29f6fd02152419fbca553ce7b",
                    "conjur": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:bee2cd31b3620a31e98f9d21326a2cdcecb36479099b06cc9660e4e83354d940",
                    "failoverRebaser": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:383776c23556a0a327a0bacc843d22c4b1516082ddd0cfb8a8275500f2eb841a",
                    "info": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:a9b109c7f3bfba5553aa4366338fa211896564f8e33856d75b4918acf8429f1e",
                    "nginx": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:b3096c17e7f3b9d723c906619dde293ea084e78c0da48c534335a8eee07b23c7",
                    "postgres": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:680a2044bc0e94fbc9376cd1eed9d067de91657f566c9752654480c939447841",
                    "syslogNg": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:ed53aea1866b1e2262386ac38cb9e1e47cc3f9047ae47f49070e2f506af6ca5a"
                  },
                  "livenessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "master": {
                    "account": "demo",
                    "audience": "https://conjur.host.name/",
                    "authentication": "authn-jwt",
                    "authenticatorID": "my-authenticator-id",
                    "caCertificateFrom": {
                      "configMapKeyRef": {
                        "key": "ca.crt",
                        "name": "conjur-master-ca.crt"
                      }
                    },
                    "hostname": "conjur-master.mycompany.local"
                  },
                  "readinessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          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: "true"
          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.skipRange: '>=2.5.0 <2.5.3'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: CyberArk
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConjurFollower is the Schema for the conjurfollowers API
            displayName: ConjurFollower
            kind: ConjurFollower
            name: conjurfollowers.conjur.cyberark.com
            version: v1
        description: |-
          Use this Operator for managing Conjur Followers in an OpenShift cluster.

          CyberArk products secure your most sensitive and high-value assets—and supporting your Identity Security goals is our top priority. We offer 24/7 service for high priority issues to all customers with resources across ten countries and in all continents.

          CyberArk Conjur makes secrets management simple. Conjur provides a seamless open source interface to securely authenticate, control, and audit non-human access across tools, applications, containers, and cloud environments via robust secrets management.
        displayName: Conjur Enterprise Follower Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - credential
        - cyber
        - cyberark
        - conjur
        - enterprise
        - management
        - password
        - secret
        - secrets management
        - security
        - vault
        links:
        - name: Conjur Secrets Manager Enterprise Documentation
          url: https://docs.cyberark.com/Product-Doc/OnlineHelp/AAM-DAP/Latest/en/Content/Resources/_TopNav/cc_Home.htm
        maintainers:
        - email: conj_maintainers@cyberark.com
          name: Conjur Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:383776c23556a0a327a0bacc843d22c4b1516082ddd0cfb8a8275500f2eb841a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:75fb5de2c111084ffcc3d973e6c63f1adfae78e29f6fd02152419fbca553ce7b
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:ed53aea1866b1e2262386ac38cb9e1e47cc3f9047ae47f49070e2f506af6ca5a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:a9b109c7f3bfba5553aa4366338fa211896564f8e33856d75b4918acf8429f1e
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:b3096c17e7f3b9d723c906619dde293ea084e78c0da48c534335a8eee07b23c7
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:680a2044bc0e94fbc9376cd1eed9d067de91657f566c9752654480c939447841
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:bee2cd31b3620a31e98f9d21326a2cdcecb36479099b06cc9660e4e83354d940
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator-bundle@sha256:60b293c23587072b3376f83afee95b0207228c5c7b80483b025adda572c3551d
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator@sha256:cf46bdb4238cdb1dc51329822da55b7836958be2344d26f9e1819c0aa97fece6
        version: 2.5.3
      entries:
      - name: conjur-follower-operator.v2.5.3
        version: 2.5.3
      name: "2.5"
    - currentCSV: conjur-follower-operator.v2.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "conjur.cyberark.com/v1",
                "kind": "ConjurFollower",
                "metadata": {
                  "labels": {
                    "app": "conjur-follower"
                  },
                  "name": "my-conjur-follower",
                  "namespace": "cyberark-conjur"
                },
                "spec": {
                  "images": {
                    "configurator": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473",
                    "conjur": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e",
                    "ephemeralSecrets": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b",
                    "failoverRebaser": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3",
                    "info": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5",
                    "nginx": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6",
                    "postgres": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46",
                    "syslogNg": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a"
                  },
                  "livenessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "master": {
                    "account": "demo",
                    "audience": "https://conjur.host.name/",
                    "authentication": "authn-jwt",
                    "authenticatorID": "my-authenticator-id",
                    "caCertificateFrom": {
                      "configMapKeyRef": {
                        "key": "ca.crt",
                        "name": "conjur-master-ca.crt"
                      }
                    },
                    "hostname": "conjur-master.mycompany.local"
                  },
                  "readinessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          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: "true"
          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.skipRange: ""
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: CyberArk
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConjurFollower is the Schema for the conjurfollowers API
            displayName: ConjurFollower
            kind: ConjurFollower
            name: conjurfollowers.conjur.cyberark.com
            version: v1
        description: |-
          Use this Operator for managing Conjur Followers in an OpenShift cluster.

          CyberArk products secure your most sensitive and high-value assets—and supporting your Identity Security goals is our top priority. We offer 24/7 service for high priority issues to all customers with resources across ten countries and in all continents.

          CyberArk Conjur makes secrets management simple. Conjur provides a seamless open source interface to securely authenticate, control, and audit non-human access across tools, applications, containers, and cloud environments via robust secrets management.
        displayName: Conjur Enterprise Follower Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - credential
        - cyber
        - cyberark
        - conjur
        - enterprise
        - management
        - password
        - secret
        - secrets management
        - security
        - vault
        links:
        - name: Conjur Secrets Manager Enterprise Documentation
          url: https://docs.cyberark.com/Product-Doc/OnlineHelp/AAM-DAP/Latest/en/Content/Resources/_TopNav/cc_Home.htm
        maintainers:
        - email: conj_maintainers@cyberark.com
          name: Conjur Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator@sha256:69d276feb493b8450c42efeeb56d0a741855004505e1e3776e5a9d382358f7ad
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator-bundle@sha256:bb3beb8cd763b581c9471ff7f38d76ae3bc124587b5c3aa5b3af145641059582
        version: 2.7.1
      entries:
      - name: conjur-follower-operator.v2.7.1
        version: 2.7.1
      - name: conjur-follower-operator.v2.7.0
        version: 2.7.0
      - name: conjur-follower-operator.v2.6.3
        version: 2.6.3
      - name: conjur-follower-operator.v2.6.2
        version: 2.6.2
      - name: conjur-follower-operator.v2.6.1
        version: 2.6.1
      - name: conjur-follower-operator.v2.6.0
        version: 2.6.0
      - name: conjur-follower-operator.v2.5.0
        version: 2.5.0
      - name: conjur-follower-operator.v2.4.4
        version: 2.4.4
      - name: conjur-follower-operator.v2.4.3
        version: 2.4.3
      - name: conjur-follower-operator.v2.4.2
        version: 2.4.2
      - name: conjur-follower-operator.v2.3.5
        version: 2.3.5
      - name: conjur-follower-operator.v2.3.4
        version: 2.3.4
      - name: conjur-follower-operator.v2.3.1-290
        version: 2.3.1
      - name: conjur-follower-operator.v2.3.0
        version: 2.3.0
      - name: conjur-follower-operator.v2.2.4
        version: 2.2.4
      - name: conjur-follower-operator.v2.2.2
        version: 2.2.2
      - name: conjur-follower-operator.v2.2.1
        version: 2.2.1
      name: preview
    - currentCSV: conjur-follower-operator.v2.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "conjur.cyberark.com/v1",
                "kind": "ConjurFollower",
                "metadata": {
                  "labels": {
                    "app": "conjur-follower"
                  },
                  "name": "my-conjur-follower",
                  "namespace": "cyberark-conjur"
                },
                "spec": {
                  "images": {
                    "configurator": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473",
                    "conjur": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e",
                    "ephemeralSecrets": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b",
                    "failoverRebaser": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3",
                    "info": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5",
                    "nginx": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6",
                    "postgres": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46",
                    "syslogNg": "registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a"
                  },
                  "livenessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "master": {
                    "account": "demo",
                    "audience": "https://conjur.host.name/",
                    "authentication": "authn-jwt",
                    "authenticatorID": "my-authenticator-id",
                    "caCertificateFrom": {
                      "configMapKeyRef": {
                        "key": "ca.crt",
                        "name": "conjur-master-ca.crt"
                      }
                    },
                    "hostname": "conjur-master.mycompany.local"
                  },
                  "readinessProbeSettings": {
                    "postgres": {
                      "failureThreshold": 240,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1,
                      "timeoutSeconds": 3
                    }
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          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: "true"
          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.skipRange: ""
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: CyberArk
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConjurFollower is the Schema for the conjurfollowers API
            displayName: ConjurFollower
            kind: ConjurFollower
            name: conjurfollowers.conjur.cyberark.com
            version: v1
        description: |-
          Use this Operator for managing Conjur Followers in an OpenShift cluster.

          CyberArk products secure your most sensitive and high-value assets—and supporting your Identity Security goals is our top priority. We offer 24/7 service for high priority issues to all customers with resources across ten countries and in all continents.

          CyberArk Conjur makes secrets management simple. Conjur provides a seamless open source interface to securely authenticate, control, and audit non-human access across tools, applications, containers, and cloud environments via robust secrets management.
        displayName: Conjur Enterprise Follower Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - credential
        - cyber
        - cyberark
        - conjur
        - enterprise
        - management
        - password
        - secret
        - secrets management
        - security
        - vault
        links:
        - name: Conjur Secrets Manager Enterprise Documentation
          url: https://docs.cyberark.com/Product-Doc/OnlineHelp/AAM-DAP/Latest/en/Content/Resources/_TopNav/cc_Home.htm
        maintainers:
        - email: conj_maintainers@cyberark.com
          name: Conjur Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-postgres@sha256:920a7888bfd6d7b6b541c6f4ce72a4d789f913ea5f2aea36b81521a62e6aed46
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-conjur@sha256:c081cf7e992eb21b766959451ec794cb2e3072b9c314d7e7f6bf62f44eff656e
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-nginx@sha256:8cc647bb2cab59647785cd1841455ee3e447c1fc9f8cfad3fa8ce292530b44c6
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-configurator@sha256:8b41bf990d3e68247db0df4bc670dd3ad559b6c6e4a345ee62b3a2ae573c0473
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-failover-rebaser@sha256:a6192b698223d7ec28d458ff271e1a16b0edbb782165bb81f196020c5485a2f3
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator-bundle@sha256:bb3beb8cd763b581c9471ff7f38d76ae3bc124587b5c3aa5b3af145641059582
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-operator@sha256:69d276feb493b8450c42efeeb56d0a741855004505e1e3776e5a9d382358f7ad
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-syslog-ng@sha256:2ffc00189d61cb78f48f4a94aeb932495423d00a4395286aada9ddf152208e3a
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-ephemeral-secrets@sha256:afa43aea15868c59af358892e8c235a70cfbddc96b2aa87fbf8c811e5913f60b
        - registry.connect.redhat.com/cyberark/conjur-openshift-follower-info@sha256:c59b6a40cc2cd6aa44d2a2cac7ba50155582493e2a13aa7186b46d2052fd63f5
        version: 2.7.1
      entries:
      - name: conjur-follower-operator.v2.7.1
        version: 2.7.1
      - name: conjur-follower-operator.v2.7.0
        version: 2.7.0
      - name: conjur-follower-operator.v2.6.3
        version: 2.6.3
      - name: conjur-follower-operator.v2.6.2
        version: 2.6.2
      - name: conjur-follower-operator.v2.6.1
        version: 2.6.1
      - name: conjur-follower-operator.v2.6.0
        version: 2.6.0
      - name: conjur-follower-operator.v2.5.0
        version: 2.5.0
      - name: conjur-follower-operator.v2.4.4
        version: 2.4.4
      - name: conjur-follower-operator.v2.4.3
        version: 2.4.3
      - name: conjur-follower-operator.v2.4.2
        version: 2.4.2
      - name: conjur-follower-operator.v2.3.5
        version: 2.3.5
      - name: conjur-follower-operator.v2.3.4
        version: 2.3.4
      - name: conjur-follower-operator.v2.3.1-290
        version: 2.3.1
      - name: conjur-follower-operator.v2.3.0
        version: 2.3.0
      - name: conjur-follower-operator.v2.2.4
        version: 2.2.4
      - name: conjur-follower-operator.v2.2.2
        version: 2.2.2
      - name: conjur-follower-operator.v2.2.1
        version: 2.2.1
      name: stable
    defaultChannel: stable
    packageName: conjur-follower-operator
    provider:
      name: CyberArk
      url: https://www.cyberark.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Aerospike
      provider-url: ""
    name: aerospike-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aerospike-kubernetes-operator.v2.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeCluster",
                "metadata": {
                  "name": "aerocluster",
                  "namespace": "aerospike"
                },
                "spec": {
                  "aerospikeConfig": {
                    "namespaces": [
                      {
                        "memory-size": 3000000000,
                        "name": "test",
                        "replication-factor": 2,
                        "storage-engine": {
                          "type": "memory"
                        }
                      }
                    ],
                    "network": {
                      "fabric": {
                        "port": 3001
                      },
                      "heartbeat": {
                        "port": 3002
                      },
                      "service": {
                        "port": 3000
                      }
                    },
                    "service": {
                      "feature-key-file": "/etc/aerospike/secret/features.conf"
                    }
                  },
                  "image": "aerospike/aerospike-server-enterprise:6.3.0.0",
                  "podSpec": {
                    "multiPodPerHost": true
                  },
                  "size": 2,
                  "storage": {
                    "volumes": [
                      {
                        "aerospike": {
                          "path": "/etc/aerospike/secret"
                        },
                        "name": "aerospike-config-secret",
                        "source": {
                          "secret": {
                            "secretName": "aerospike-secret"
                          }
                        }
                      }
                    ]
                  },
                  "validationPolicy": {
                    "skipWorkDirValidate": true,
                    "skipXdrDlogFileValidate": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Database
          containerImage: docker.io/aerospike/aerospike-kubernetes-operator:2.5.0
          createdAt: 2023-05-04T09:32:47UTC
          description: The Aerospike Kubernetes Operator automates the deployment
            and management of Aerospike enterprise clusters on Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/aerospike/aerospike-kubernetes-operator/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AerospikeCluster is the schema for the AerospikeCluster API
            displayName: Aerospike Cluster
            kind: AerospikeCluster
            name: aerospikeclusters.asdb.aerospike.com
            version: v1beta1
        description: |
          The Aerospike Kubernetes Operator automates the deployment and management of Aerospike enterprise clusters on Kubernetes. The operator allows you to deploy multi-node Aerospike clusters, recover automatically from node failures, scale up or down automatically as load changes, ensure nodes are evenly split across racks or zones, automatically update to new versions of Aerospike and manage configuration changes in your clusters.

          ### Capabilities:

           -   Deploy Aerospike clusters
           -   Scale up and down existing Aerospike clusters
           -   Version upgrade and downgrade
           -   Configure persistent storage and resource allocation
           -   Standardize and validate configurations
           -   Cluster security management
        displayName: Aerospike Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Aerospike
        links:
        - name: Documentation
          url: https://docs.aerospike.com/cloud/kubernetes/operator
        - name: Aerospike
          url: https://aerospike.com
        maintainers:
        - email: developers@aerospike.com
          name: Aerospike, Inc.
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Aerospike
        relatedImages:
        - docker.io/aerospike/aerospike-kubernetes-operator:2.5.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/openshift-community-operators/aerospike-kubernetes-operator@sha256:bfa83ff729ef8b3a4ebca27b02e223327d3e1351d8bc78a06c18873d288dfb02
        version: 2.5.0
      entries:
      - name: aerospike-kubernetes-operator.v2.5.0
        version: 2.5.0
      - name: aerospike-kubernetes-operator.v2.4.0
        version: 2.4.0
      - name: aerospike-kubernetes-operator.v2.3.0
        version: 2.3.0
      - name: aerospike-kubernetes-operator.v2.2.1
        version: 2.2.1
      - name: aerospike-kubernetes-operator.v2.2.0
        version: 2.2.0
      - name: aerospike-kubernetes-operator.v2.1.0
        version: 2.1.0
      name: alpha
    - currentCSV: aerospike-kubernetes-operator.v4.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "asdb.aerospike.com/v1",
                "kind": "AerospikeCluster",
                "metadata": {
                  "name": "aerocluster",
                  "namespace": "aerospike"
                },
                "spec": {
                  "aerospikeConfig": {
                    "namespaces": [
                      {
                        "name": "test",
                        "replication-factor": 2,
                        "storage-engine": {
                          "data-size": 1073741824,
                          "type": "memory"
                        }
                      }
                    ],
                    "network": {
                      "fabric": {
                        "port": 3001
                      },
                      "heartbeat": {
                        "port": 3002
                      },
                      "service": {
                        "port": 3000
                      }
                    },
                    "service": {
                      "feature-key-file": "/etc/aerospike/secret/features.conf"
                    }
                  },
                  "image": "aerospike/aerospike-server-enterprise:8.1.0.0",
                  "podSpec": {
                    "multiPodPerHost": true
                  },
                  "size": 2,
                  "storage": {
                    "volumes": [
                      {
                        "aerospike": {
                          "path": "/etc/aerospike/secret"
                        },
                        "name": "aerospike-config-secret",
                        "source": {
                          "secret": {
                            "secretName": "aerospike-secret"
                          }
                        }
                      }
                    ]
                  },
                  "validationPolicy": {
                    "skipWorkDirValidate": true,
                    "skipXdrDlogFileValidate": true
                  }
                }
              },
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeBackup",
                "metadata": {
                  "name": "aerospikebackup",
                  "namespace": "aerospike"
                },
                "spec": {
                  "backupService": {
                    "name": "aerospikebackupservice-sample",
                    "namespace": "aerospike"
                  },
                  "config": {
                    "aerospike-cluster": {
                      "aerospike-aerospikebackup-test-cluster": {
                        "credentials": {
                          "password": "admin123",
                          "user": "admin"
                        },
                        "seed-nodes": [
                          {
                            "host-name": "aerocluster.aerospike.svc.cluster.local",
                            "port": 3000
                          }
                        ]
                      }
                    },
                    "backup-routines": {
                      "aerospike-aerospikebackup-test-routine": {
                        "backup-policy": "test-policy",
                        "incr-interval-cron": "@hourly",
                        "interval-cron": "@daily",
                        "namespaces": [
                          "test"
                        ],
                        "source-cluster": "aerospike-aerospikebackup-test-cluster",
                        "storage": "local"
                      },
                      "aerospike-aerospikebackup-test-routine1": {
                        "backup-policy": "test-policy1",
                        "incr-interval-cron": "@hourly",
                        "interval-cron": "@daily",
                        "namespaces": [
                          "test"
                        ],
                        "source-cluster": "aerospike-aerospikebackup-test-cluster",
                        "storage": "s3Storage"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeBackupService",
                "metadata": {
                  "name": "aerospikebackupservice-sample",
                  "namespace": "aerospike"
                },
                "spec": {
                  "config": {
                    "backup-policies": {
                      "test-policy": {
                        "parallel": 3
                      },
                      "test-policy1": {
                        "parallel": 3
                      }
                    },
                    "service": {
                      "http": {
                        "port": 8081
                      }
                    },
                    "storage": {
                      "local": {
                        "local-storage": {
                          "path": "/tmp/localStorage"
                        }
                      },
                      "s3Storage": {
                        "s3-storage": {
                          "bucket": "aerospike-kubernetes-operator-test",
                          "s3-profile": "default",
                          "s3-region": "us-east-1"
                        }
                      }
                    }
                  },
                  "image": "aerospike/aerospike-backup-service:3.2.0",
                  "secrets": [
                    {
                      "secretName": "aws-secret",
                      "volumeMount": {
                        "mountPath": "/root/.aws/credentials",
                        "name": "aws-secret",
                        "subPath": "credentials"
                      }
                    }
                  ],
                  "service": {
                    "type": "LoadBalancer"
                  }
                }
              },
              {
                "apiVersion": "asdb.aerospike.com/v1beta1",
                "kind": "AerospikeRestore",
                "metadata": {
                  "name": "aerospikerestore-sample",
                  "namespace": "aerospike"
                },
                "spec": {
                  "backupService": {
                    "name": "aerospikebackupservice-sample",
                    "namespace": "aerospike"
                  },
                  "config": {
                    "backup-data-path": "aerospike-aerospikebackup-test-routine/backup/1733506015827/data/test",
                    "destination": {
                      "credentials": {
                        "password": "admin123",
                        "user": "admin"
                      },
                      "label": "destinationCluster",
                      "seed-nodes": [
                        {
                          "host-name": "aerocluster.test.svc.cluster.local",
                          "port": 3000
                        }
                      ]
                    },
                    "policy": {
                      "no-generation": true,
                      "no-indexes": true,
                      "parallel": 3
                    },
                    "source": {
                      "local-storage": {
                        "path": "/tmp/localStorage"
                      }
                    }
                  },
                  "type": "Full"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: docker.io/aerospike/aerospike-kubernetes-operator:4.1.2
          createdAt: "2025-12-04T06:56:33Z"
          description: The Aerospike Kubernetes Operator automates the deployment
            and management of Aerospike enterprise clusters on Kubernetes.
          olm.skipRange: '>=4.0.0 <4.1.2'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/aerospike/aerospike-kubernetes-operator/
          support: Aerospike
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AerospikeBackup is the Schema for the aerospikebackup API
            displayName: Aerospike Backup
            kind: AerospikeBackup
            name: aerospikebackups.asdb.aerospike.com
            version: v1beta1
          - description: AerospikeBackupService is the Schema for the aerospikebackupservices
              API
            displayName: Aerospike Backup Service
            kind: AerospikeBackupService
            name: aerospikebackupservices.asdb.aerospike.com
            version: v1beta1
          - description: AerospikeCluster is the schema for the AerospikeCluster API
            displayName: Aerospike Cluster
            kind: AerospikeCluster
            name: aerospikeclusters.asdb.aerospike.com
            version: v1
          - description: AerospikeRestore is the Schema for the aerospikerestores
              API
            displayName: Aerospike Restore
            kind: AerospikeRestore
            name: aerospikerestores.asdb.aerospike.com
            version: v1beta1
        description: |
          The Aerospike Kubernetes Operator automates the deployment and management of Aerospike enterprise clusters on Kubernetes. The operator allows you to deploy multi-node Aerospike clusters, recover automatically from node failures, scale up or down automatically as load changes, ensure nodes are evenly split across racks or zones, automatically update to new versions of Aerospike and manage configuration changes in your clusters.

          ### Capabilities:

           -   Deploy Aerospike clusters
           -   Scale up and down existing Aerospike clusters
           -   Version upgrade and downgrade
           -   Configure persistent storage and resource allocation
           -   Standardize and validate configurations
           -   Cluster security management
           -   Aerospike cluster monitoring
           -   Backup and restore Aerospike clusters
        displayName: Aerospike Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Aerospike
        links:
        - name: Documentation
          url: https://docs.aerospike.com/cloud/kubernetes/operator
        - name: Aerospike
          url: https://aerospike.com
        maintainers:
        - email: developers@aerospike.com
          name: Aerospike, Inc.
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Aerospike
        relatedImages:
        - docker.io/aerospike/aerospike-kubernetes-operator:4.1.2
        - quay.io/community-operator-pipeline-prod/aerospike-kubernetes-operator@sha256:b01aad90e4fa053a5e419b8fb9a1c49e328c7a30ef8e4b5dec57881fcc2e620e
        version: 4.1.2
      entries:
      - name: aerospike-kubernetes-operator.v4.1.2
        version: 4.1.2
      - name: aerospike-kubernetes-operator.v4.1.1
        version: 4.1.1
      - name: aerospike-kubernetes-operator.v4.1.0
        version: 4.1.0
      - name: aerospike-kubernetes-operator.v4.0.2
        version: 4.0.2
      - name: aerospike-kubernetes-operator.v4.0.1
        version: 4.0.1
      - name: aerospike-kubernetes-operator.v4.0.0
        version: 4.0.0
      - name: aerospike-kubernetes-operator.v3.4.1
        version: 3.4.1
      - name: aerospike-kubernetes-operator.v3.4.0
        version: 3.4.0
      - name: aerospike-kubernetes-operator.v3.3.1
        version: 3.3.1
      - name: aerospike-kubernetes-operator.v3.3.0
        version: 3.3.0
      - name: aerospike-kubernetes-operator.v3.2.2
        version: 3.2.2
      - name: aerospike-kubernetes-operator.v3.2.1
        version: 3.2.1
      - name: aerospike-kubernetes-operator.v3.2.0
        version: 3.2.0
      - name: aerospike-kubernetes-operator.v3.1.0
        version: 3.1.0
      - name: aerospike-kubernetes-operator.v3.0.0
        version: 3.0.0
      name: stable
    defaultChannel: stable
    packageName: aerospike-kubernetes-operator
    provider:
      name: Aerospike
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/cluster-nfd-operator
    name: nfd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nfd.4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nfd.k8s-sigs.io/v1alpha1",
                "kind": "NodeFeatureRule",
                "metadata": {
                  "name": "my-sample-rule-object"
                },
                "spec": {
                  "rules": [
                    {
                      "labels": {
                        "my-sample-feature": "true"
                      },
                      "matchFeatures": [
                        {
                          "feature": "kernel.loadedmodule",
                          "matchExpressions": {
                            "dummy": {
                              "op": "Exists"
                            }
                          }
                        },
                        {
                          "feature": "kernel.config",
                          "matchExpressions": {
                            "X86": {
                              "op": "In",
                              "value": [
                                "y"
                              ]
                            }
                          }
                        }
                      ],
                      "name": "my sample rule"
                    }
                  ]
                }
              },
              {
                "apiVersion": "nfd.openshift.io/v1",
                "kind": "NodeFeatureDiscovery",
                "metadata": {
                  "name": "nfd-instance",
                  "namespace": "openshift-nfd"
                },
                "spec": {
                  "customConfig": {
                    "configData": "#    - name: \"more.kernel.features\"\n#      matchOn:\n#      - loadedKMod: [\"example_kmod3\"]\n#    - name: \"more.features.by.nodename\"\n#      value: customValue\n#      matchOn:\n#      - nodename: [\"special-.*-node-.*\"]\n"
                  },
                  "operand": {
                    "imagePullPolicy": "IfNotPresent",
                    "servicePort": 12000
                  },
                  "workerConfig": {
                    "configData": "core:\n#  labelWhiteList:\n#  noPublish: false\n  sleepInterval: 60s\n#  sources: [all]\n#  klog:\n#    addDirHeader: false\n#    alsologtostderr: false\n#    logBacktraceAt:\n#    logtostderr: true\n#    skipHeaders: false\n#    stderrthreshold: 2\n#    v: 0\n#    vmodule:\n##   NOTE: the following options are not dynamically run-time \n##          configurable and require a nfd-worker restart to take effect\n##          after being changed\n#    logDir:\n#    logFile:\n#    logFileMaxSize: 1800\n#    skipLogHeaders: false\nsources:\n#  cpu:\n#    cpuid:\n##     NOTE: whitelist has priority over blacklist\n#      attributeBlacklist:\n#        - \"BMI1\"\n#        - \"BMI2\"\n#        - \"CLMUL\"\n#        - \"CMOV\"\n#        - \"CX16\"\n#        - \"ERMS\"\n#        - \"F16C\"\n#        - \"HTT\"\n#        - \"LZCNT\"\n#        - \"MMX\"\n#        - \"MMXEXT\"\n#        - \"NX\"\n#        - \"POPCNT\"\n#        - \"RDRAND\"\n#        - \"RDSEED\"\n#        - \"RDTSCP\"\n#        - \"SGX\"\n#        - \"SSE\"\n#        - \"SSE2\"\n#        - \"SSE3\"\n#        - \"SSE4.1\"\n#        - \"SSE4.2\"\n#        - \"SSSE3\"\n#      attributeWhitelist:\n#  kernel:\n#    kconfigFile: \"/path/to/kconfig\"\n#    configOpts:\n#      - \"NO_HZ\"\n#      - \"X86\"\n#      - \"DMI\"\n  pci:\n    deviceClassWhitelist:\n      - \"0200\"\n      - \"03\"\n      - \"12\"\n    deviceLabelFields:\n#      - \"class\"\n      - \"vendor\"\n#      - \"device\"\n#      - \"subsystem_vendor\"\n#      - \"subsystem_device\"\n#  usb:\n#    deviceClassWhitelist:\n#      - \"0e\"\n#      - \"ef\"\n#      - \"fe\"\n#      - \"ff\"\n#    deviceLabelFields:\n#      - \"class\"\n#      - \"vendor\"\n#      - \"device\"\n#  custom:\n#    - name: \"my.kernel.feature\"\n#      matchOn:\n#        - loadedKMod: [\"example_kmod1\", \"example_kmod2\"]\n#    - name: \"my.pci.feature\"\n#      matchOn:\n#        - pciId:\n#            class: [\"0200\"]\n#            vendor: [\"15b3\"]\n#            device: [\"1014\", \"1017\"]\n#        - pciId :\n#            vendor: [\"8086\"]\n#            device: [\"1000\", \"1100\"]\n#    - name: \"my.usb.feature\"\n#      matchOn:\n#        - usbId:\n#          class: [\"ff\"]\n#          vendor: [\"03e7\"]\n#          device: [\"2485\"]\n#        - usbId:\n#          class: [\"fe\"]\n#          vendor: [\"1a6e\"]\n#          device: [\"089a\"]\n#    - name: \"my.combined.feature\"\n#      matchOn:\n#        - pciId:\n#            vendor: [\"15b3\"]\n#            device: [\"1014\", \"1017\"]\n#          loadedKMod : [\"vendor_kmod1\", \"vendor_kmod2\"]\n"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery,OpenShift Optional
          containerImage: registry.redhat.io/openshift4/ose-cluster-nfd-rhel9-operator@sha256:5d03fdb900b6779fb260b186a112eed15ae66d64ce08122bda3d01a3bce316e6
          createdAt: "2025-04-20T11:31:43Z"
          description: |-
            The Node Feature Discovery Operator manages the detection of hardware features and configuration in a Kubernetes cluster by labeling the nodes with hardware-specific information. The Node Feature Discovery (NFD) will label the host with node-specific attributes, like PCI cards, kernel, or OS version, and many more.

            NFD consists  of the following software components:

            The NFD Operator is based on the Operator Framework an open source toolkit to manage Kubernetes native applications, called Operators, in an effective, automated, and scalable way.

            ##NFD-Master
            NFD-Master is the daemon responsible for communication towards the Kubernetes API. That is, it receives labeling requests from the worker and modifies node objects accordingly.

            ##NFD-Worker
            NFD-Worker is a daemon responsible for feature detection. It then communicates the information to nfd-master which does the actual node labeling. One instance of nfd-worker is supposed to be running on each node of the cluster.

            ##NFD-Topology-Updater
            NFD-Topology-Updater is a daemon responsible for examining allocated resources on a worker node to account for resources available to be allocated to new pod on a per-zone basis (where a zone can be a NUMA node). It then communicates the information to nfd-master which does the NodeResourceTopology CR creation corresponding to all the nodes in the cluster. One instance of nfd-topology-updater is supposed to be running on each node of the cluster.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.9.0 <4.20.0-202512081147'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-nfd
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/internal-objects: '["noderesourcetopologies.topology.node.k8s.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: Red Hat
          repository: https://github.com/openshift/cluster-nfd-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |
              The NodeFeatureDiscovery instance is the CustomResource being watched by the NFD-Operator, and holds all the needed information to setup the behaviour of the master and worker pods
            kind: NodeFeatureDiscovery
            name: nodefeaturediscoveries.nfd.openshift.io
            version: v1
          - kind: NodeFeatureGroup
            name: nodefeaturegroups.nfd.k8s-sigs.io
            version: v1alpha1
          - kind: NodeFeatureRule
            name: nodefeaturerules.nfd.k8s-sigs.io
            version: v1alpha1
          - description: |
              NodeFeatureRule resource specifies a configuration for feature-based customization of node objects, such as node labeling.
            kind: NodeFeatureRule
            name: nodefeaturerules.nfd.openshift.io
            version: v1alpha1
          - kind: NodeFeature
            name: nodefeatures.nfd.k8s-sigs.io
            version: v1alpha1
          - kind: NodeFeature
            name: nodefeatures.nfd.openshift.io
            version: v1alpha1
        description: |-
          The Node Feature Discovery Operator manages the detection of hardware features and configuration in a Kubernetes cluster by labeling the nodes with hardware-specific information. The Node Feature Discovery (NFD) will label the host with node-specific attributes, like PCI cards, kernel, or OS version, and many more.

          NFD consists  of the following software components:

          The NFD Operator is based on the Operator Framework an open source toolkit to manage Kubernetes native applications, called Operators, in an effective, automated, and scalable way.

          ##NFD-Master
          NFD-Master is the daemon responsible for communication towards the Kubernetes API. That is, it receives labeling requests from the worker and modifies node objects accordingly.

          ##NFD-Worker
          NFD-Worker is a daemon responsible for feature detection. It then communicates the information to nfd-master which does the actual node labeling. One instance of nfd-worker is supposed to be running on each node of the cluster.

          ##NFD-Topology-Updater
          NFD-Topology-Updater is a daemon responsible for examining allocated resources on a worker node to account for resources available to be allocated to new pod on a per-zone basis (where a zone can be a NUMA node). It then communicates the information to nfd-master which does the NodeResourceTopology CR creation corresponding to all the nodes in the cluster. One instance of nfd-topology-updater is supposed to be running on each node of the cluster.
        displayName: Node Feature Discovery Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - feature-discovery
        - feature-detection
        - node-labels
        links:
        - name: Node Feature Discovery Operator
          url: https://docs.openshift.com/container-platform/4.20/hardware_enablement/psap-node-feature-discovery-operator.html
        - name: Node Feature Discovery Documentation
          url: https://kubernetes-sigs.github.io/node-feature-discovery/stable/get-started/index.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://github.com/openshift/cluster-nfd-operator
        relatedImages:
        - registry.redhat.io/openshift4/ose-cluster-nfd-operator-bundle@sha256:84c08fe3720f5309f468eab26ab5b4a744629d4b3fb941bbbf95c5194a6ea633
        - registry.redhat.io/openshift4/ose-cluster-nfd-rhel9-operator@sha256:5d03fdb900b6779fb260b186a112eed15ae66d64ce08122bda3d01a3bce316e6
        - registry.redhat.io/openshift4/ose-node-feature-discovery-rhel9@sha256:fbd8db340dd4e4cda793b1f0453d42988bb8102d1061388827777bb848b067f2
        version: 4.20.0-202512081147
      entries:
      - name: nfd.4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: nfd.4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: nfd.4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: nfd.4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: nfd.4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: nfd.4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: nfd.4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: nfd
    provider:
      name: Red Hat
      url: https://github.com/openshift/cluster-nfd-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://redhat.com
    name: aws-load-balancer-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-load-balancer-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
          createdAt: 2025-12-16T11:55:37
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.3.0
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:dbad5680cdb7bbe998b569533d1135b9df8a37786ed64893373152a7f16b3e12
        - registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel9@sha256:03106a145ba31ae648092a48016d28d3b41dca737f76efdc82eae4628e4fa905
        version: 1.3.0
      entries:
      - name: aws-load-balancer-operator.v1.3.0
        version: 1.3.0
      - name: aws-load-balancer-operator.v1.2.0
        version: 1.2.0
      - name: aws-load-balancer-operator.v1.1.1
        version: 1.1.1
      - name: aws-load-balancer-operator.v1.1.0
        version: 1.1.0
      name: stable-v1
    - currentCSV: aws-load-balancer-operator.v1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:6e15df39a3d25755a79888f739e1af8b052c3fba57bf8f6b3434ef58fd4288cf
          createdAt: 2024-01-24T09:13:21
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.1
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify management of aws-load-balancer-controller

          ### Prerequisites for installation
          The operator requires AWS credentials in the installation namespace before it can be installed.

          1. Create the operator namespace with the following command:
          ```bash
          oc create namespace aws-load-balancer-operator
          ```
          2. Create the `CredentialsRequest` in the `openshift-cloud-credential-operator`
             namespace with the following command:

          ```
          cat <<EOF | oc create -f -
          apiVersion: cloudcredential.openshift.io/v1
          kind: CredentialsRequest
          metadata:
            name: aws-load-balancer-operator
            namespace: openshift-cloud-credential-operator
          spec:
            providerSpec:
              apiVersion: cloudcredential.openshift.io/v1
              kind: AWSProviderSpec
              statementEntries:
                - action:
                    - ec2:DescribeSubnets
                  effect: Allow
                  resource: "*"
                - action:
                    - ec2:CreateTags
                    - ec2:DeleteTags
                  effect: Allow
                  resource: arn:aws:ec2:*:*:subnet/*
                - action:
                    - ec2:DescribeVpcs
                  effect: Allow
                  resource: "*"
            secretRef:
              name: aws-load-balancer-operator
              namespace: aws-load-balancer-operator
            serviceAccountNames:
              - aws-load-balancer-operator-controller-manager
          EOF
          ```
          3. Ensure the credentials have been correctly provisioned
          ```bash
          oc get secret -n aws-load-balancer-operator aws-load-balancer-operator
          ```

          After this the operator can be installated through the console or through the command line.

          __Note about UPI:__ For UPI based installs, additional documentation can be found in
          [VPC and subnets](https://github.com/openshift/aws-load-balancer-operator/blob/release-1.0/docs/prerequisites.md#vpc-and-subnets)

          __Note about STS:__ For clusters using STS, use the [STS documentation](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#for-sts-clusters) instead.
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:6e15df39a3d25755a79888f739e1af8b052c3fba57bf8f6b3434ef58fd4288cf
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9f9f8f69ab98c1f25cc301572339e0cc5c5b76f2e29ed26e10ac91ad20e0090c
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel8@sha256:73db97d20ee9415e9a8941cc6a36ed81d901d760d9949e95e10c90866ef8bf64
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:59ff4966f4f653e49d42d97bfed6351d3730128db74f666ee4ecacff11790baf
        version: 1.0.1
      deprecation:
        message: |
          The stable-v1.0 channel is no longer supported. Please switch to a supported stable channel to receive the latest updates and support.
      entries:
      - deprecation:
          message: |
            aws-load-balancer-operator.v1.0.1 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: aws-load-balancer-operator.v1.0.1
        version: 1.0.1
      - deprecation:
          message: |
            aws-load-balancer-operator.v1.0.0 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: aws-load-balancer-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    - currentCSV: aws-load-balancer-operator.v1.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:16e9ffed36107527a37713ac5bd34a7bc20f042269a81077429fb5884914c4d0
          createdAt: 2024-01-23T11:21:00
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.1.1
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:01f2ca529d2486f113bcefc9fedce6a6fd07bcb48aaf534394b5b04c353f8853
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:16e9ffed36107527a37713ac5bd34a7bc20f042269a81077429fb5884914c4d0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel8@sha256:2e0b9332a44d8d9c23e19c7accab0813a651f39210257820db508cac28876595
        version: 1.1.1
      entries:
      - name: aws-load-balancer-operator.v1.1.1
        version: 1.1.1
      - name: aws-load-balancer-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: aws-load-balancer-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:53f14e88f05641545b675ff4edbcff6909d752659c02a1babf7491734f347153
          createdAt: 2024-12-20T15:52:44
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.2.0
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4a2324acaea757bae3b01b1aec59f49f4dd79bd1868e69d3418d57c210a6dfd9
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel8@sha256:f0b47b8200f85b557497a4f03d7b186cf415c4137e9cc0361633b67891cf2a24
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:e371c45e259eaf54d79b1bfc6c47b1093d87965a8d6076205d4860047146ed43
        - registry.redhat.io/albo/aws-load-balancer-rhel8-operator@sha256:53f14e88f05641545b675ff4edbcff6909d752659c02a1babf7491734f347153
        version: 1.2.0
      entries:
      - name: aws-load-balancer-operator.v1.2.0
        version: 1.2.0
      - name: aws-load-balancer-operator.v1.1.1
        version: 1.1.1
      - name: aws-load-balancer-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.2
    - currentCSV: aws-load-balancer-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.k8s.aws/v1alpha1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "IngressClassParams",
                "metadata": {
                  "name": "awesome-class"
                },
                "spec": {
                  "group": {
                    "name": "my-group"
                  }
                }
              },
              {
                "apiVersion": "elbv2.k8s.aws/v1beta1",
                "kind": "TargetGroupBinding",
                "metadata": {
                  "name": "my-tgb"
                },
                "spec": {
                  "serviceRef": {
                    "name": "awesome-service",
                    "port": 80
                  },
                  "targetGroupARN": "\u003carn-to-targetGroup\u003e"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              },
              {
                "apiVersion": "networking.olm.openshift.io/v1alpha1",
                "kind": "AWSLoadBalancerController",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "subnetTagging": "Auto"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
          createdAt: 2025-12-16T11:55:37
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: <1.3.0
          operatorframework.io/suggested-namespace: aws-load-balancer-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/aws-load-balancer-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API.
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1
          - description: AWSLoadBalancerController is the Schema for the awsloadbalancercontrollers
              API
            displayName: AWSLoad Balancer Controller
            kind: AWSLoadBalancerController
            name: awsloadbalancercontrollers.networking.olm.openshift.io
            version: v1alpha1
          - kind: IngressClassParams
            name: ingressclassparams.elbv2.k8s.aws
            version: v1beta1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1alpha1
          - kind: TargetGroupBinding
            name: targetgroupbindings.elbv2.k8s.aws
            version: v1beta1
        description: |-
          Operator to simplify the management of aws-load-balancer-controller.

          ### Prerequisites for installation
          In certain scenarios, the operator requires extra steps to be executed before it can be installed.

          #### Instructions for STS cluster (including ROSA in STS mode)

          [Bootstrapping AWS Load Balancer Operator on Security Token Service cluster](https://docs.openshift.com/container-platform/latest/networking/aws_load_balancer_operator/installing-albo-sts-cluster.html#nw-bootstra-albo-on-sts-cluster_albo-sts-cluster).

          #### Instructions for UPI based installation

          Additional documentation can be found in [VPC and Subnets](https://github.com/openshift/aws-load-balancer-operator/blob/main/docs/prerequisites.md#vpc-and-subnets).
        displayName: AWS Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws
        - load-balancer
        - ALB
        - ingress
        links:
        - name: Aws Load Balancer Operator
          url: https://aws-load-balancer-operator.domain
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat Inc.
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/albo/aws-load-balancer-controller-rhel9@sha256:03106a145ba31ae648092a48016d28d3b41dca737f76efdc82eae4628e4fa905
        - registry.redhat.io/albo/aws-load-balancer-operator-bundle@sha256:dbad5680cdb7bbe998b569533d1135b9df8a37786ed64893373152a7f16b3e12
        - registry.redhat.io/albo/aws-load-balancer-rhel9-operator@sha256:1ce50e777efaef0e8df8d9488c1d065cbfa87494b8f191ac79c5ccd4cd37034f
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        version: 1.3.0
      entries:
      - name: aws-load-balancer-operator.v1.3.0
        version: 1.3.0
      name: stable-v1.3
    defaultChannel: stable-v1
    packageName: aws-load-balancer-operator
    provider:
      name: Red Hat Inc.
      url: https://redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: loki-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: loki-operator.v6.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "summary": "High request latency"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "page"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "message": "{{ $labels.job }} is leaking http basic auth credentials."
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({namespace=\"prod\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.16-v4.20
          containerImage: registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:f7fde57f19ef352510cfca9f073ab4f73cd769bd097e1b1d771070d58f682240
          createdAt: "2025-03-06T11:32:52Z"
          description: |
            The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
            ## Prerequisites and Requirements
            ### Loki Operator Namespace
            The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
            ### Memory Considerations
            Loki is a memory intensive application.  The initial
            set of OCP nodes may not be large enough to support the Loki stack.  Additional OCP nodes must be added
            to the OCP cluster if you desire to run with the recommended (or better) memory.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=6.0.0-0 <6.2.7'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators-redhat
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.2
          operators.operatorframework.io.bundle.channels.v1: stable-6.2
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: loki-operator
          operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
          operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io.test.config.v1: tests/scorecard/
          operators.operatorframework.io.test.mediatype.v1: scorecard+v1
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Cluster Logging
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |
          The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
          ## Prerequisites and Requirements
          ### Loki Operator Namespace
          The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
          ### Memory Considerations
          Loki is a memory intensive application.  The initial
          set of OCP nodes may not be large enough to support the Loki cluster.  Additional OCP nodes must be added
          to the OCP cluster if you desire to run with the recommended (or better) memory.
        displayName: Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Loki Operator
          url: https://github.com/grafana/loki
        maintainers:
        - email: team-logging@redhat.com
          name: Red Hat, AOS Logging
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/loki-operator-bundle@sha256:7122d656b12bd9ae0c0db81acf99778d5e7ebe570e203eb1fa87a981cc9aa81e
        - registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:f7fde57f19ef352510cfca9f073ab4f73cd769bd097e1b1d771070d58f682240
        - registry.redhat.io/openshift-logging/lokistack-gateway-rhel9@sha256:574afd46f23637b1685ddb00b647bb71d2e2d527611182fd2826bb818c5eb198
        - registry.redhat.io/openshift-logging/opa-openshift-rhel9@sha256:182dc5ab627d64b5e565a2edb170903ac381fc534b4366fc5ffae088ea0de5e5
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:145e9784b681ac7defa0a1547c03a6db9a587bf9be2820428eee84f58f8f1f24
        - registry.redhat.io/openshift-logging/logging-loki-rhel9@sha256:8c073f8de8288bf63489a400d7f93e96562652832965d33e0515f48d46282459
        version: 6.2.7
      entries:
      - name: loki-operator.v6.2.7
        version: 6.2.7
      - name: loki-operator.v6.2.6
        version: 6.2.6
      - name: loki-operator.v6.2.5
        version: 6.2.5
      - name: loki-operator.v6.2.4
        version: 6.2.4
      - name: loki-operator.v6.2.3
        version: 6.2.3
      - name: loki-operator.v6.2.2
        version: 6.2.2
      - name: loki-operator.v6.2.1
        version: 6.2.1
      - name: loki-operator.v6.2.0
        version: 6.2.0
      name: stable-6.2
    - currentCSV: loki-operator.v6.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "summary": "High request latency"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "page"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "message": "{{ $labels.job }} is leaking http basic auth credentials."
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({namespace=\"prod\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.17-v4.20
          containerImage: registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:bc3216fceafcea24d7d7eaeaab400248431ec43bdaf45ca00201e6c7aea588f6
          createdAt: "2025-06-11T13:21:40Z"
          description: |
            The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
            ## Prerequisites and Requirements
            ### Loki Operator Namespace
            The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
            ### Memory Considerations
            Loki is a memory intensive application.  The initial
            set of OCP nodes may not be large enough to support the Loki stack.  Additional OCP nodes must be added
            to the OCP cluster if you desire to run with the recommended (or better) memory.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=6.1.0-0 <6.3.2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators-redhat
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.3
          operators.operatorframework.io.bundle.channels.v1: stable-6.3
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: loki-operator
          operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
          operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io.test.config.v1: tests/scorecard/
          operators.operatorframework.io.test.mediatype.v1: scorecard+v1
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Cluster Logging
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |
          The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
          ## Prerequisites and Requirements
          ### Loki Operator Namespace
          The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
          ### Memory Considerations
          Loki is a memory intensive application.  The initial
          set of OCP nodes may not be large enough to support the Loki cluster.  Additional OCP nodes must be added
          to the OCP cluster if you desire to run with the recommended (or better) memory.
        displayName: Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Loki Operator
          url: https://github.com/grafana/loki
        maintainers:
        - email: team-logging@redhat.com
          name: Red Hat, AOS Logging
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:145e9784b681ac7defa0a1547c03a6db9a587bf9be2820428eee84f58f8f1f24
        - registry.redhat.io/openshift-logging/logging-loki-rhel9@sha256:d1082544887b6f250b41002104689b4553c2962b82480eb2ea61c10ed1490f27
        - registry.redhat.io/openshift-logging/loki-operator-bundle@sha256:7909874cd7653aae0f55e08d3c63b22a02e324650967acefc5e40545f8c1f1a8
        - registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:bc3216fceafcea24d7d7eaeaab400248431ec43bdaf45ca00201e6c7aea588f6
        - registry.redhat.io/openshift-logging/lokistack-gateway-rhel9@sha256:686249a9891b9e0000ce63ec54b7fc8885fff3975ea94b7d0e53a2dad6ab3ca7
        - registry.redhat.io/openshift-logging/opa-openshift-rhel9@sha256:0d5c3c1eecb920c880644bf667fdfb5a4edb864b2e456b8f6ab8540b6b3b879f
        version: 6.3.2
      entries:
      - name: loki-operator.v6.3.2
        version: 6.3.2
      - name: loki-operator.v6.3.1
        version: 6.3.1
      - name: loki-operator.v6.3.0
        version: 6.3.0
      name: stable-6.3
    - currentCSV: loki-operator.v6.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in namespace example-namespace has an error rate above 5% for more than 10 minutes.",
                            "summary": "High error rate detected"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "warning"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in pod {{ $labels.pod }} is leaking HTTP basic auth credentials in logs.",
                            "summary": "HTTP credentials leaked in logs"
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({kubernetes_namespace_name=\"example-namespace\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "application"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.18-v4.21
          containerImage: registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:73dc60568c8ade290b53e4816c88f227054c4a63efb664857f793d5d59d15586
          createdAt: "2025-11-03T17:23:40Z"
          description: |
            The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
            ## Prerequisites and Requirements
            ### Loki Operator Namespace
            The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
            ### Memory Considerations
            Loki is a memory intensive application.  The initial
            set of OCP nodes may not be large enough to support the Loki stack.  Additional OCP nodes must be added
            to the OCP cluster if you desire to run with the recommended (or better) memory.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=6.2.0-0 <6.4.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators-redhat
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.4
          operators.operatorframework.io.bundle.channels.v1: stable-6.4
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: loki-operator
          operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
          operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io.test.config.v1: tests/scorecard/
          operators.operatorframework.io.test.mediatype.v1: scorecard+v1
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Cluster Logging
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |
          The Loki Operator for OCP provides a means for configuring and managing a Loki stack for cluster logging.
          ## Prerequisites and Requirements
          ### Loki Operator Namespace
          The Loki Operator must be deployed to the global operator group namespace `openshift-operators-redhat`.
          ### Memory Considerations
          Loki is a memory intensive application.  The initial
          set of OCP nodes may not be large enough to support the Loki cluster.  Additional OCP nodes must be added
          to the OCP cluster if you desire to run with the recommended (or better) memory.
        displayName: Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Loki Operator
          url: https://github.com/grafana/loki
        maintainers:
        - email: team-logging@redhat.com
          name: Red Hat, AOS Logging
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/lokistack-gateway-rhel9@sha256:74d61619b9420655da84bc9939e37f76040b437a70e9c96eeb3267f00dfe88ad
        - registry.redhat.io/openshift-logging/opa-openshift-rhel9@sha256:bd5619a05a193763628b027ee36d68b4eff5caae80b974161acfb8c1d37f7d3e
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.19@sha256:145e9784b681ac7defa0a1547c03a6db9a587bf9be2820428eee84f58f8f1f24
        - registry.redhat.io/openshift-logging/logging-loki-rhel9@sha256:2b491fcb180423632d30811515a439a7a7f41023c1cfe4780647f18969b85a1d
        - registry.redhat.io/openshift-logging/loki-operator-bundle@sha256:f671ac595873a42b28b30f5021205372782c352c05b7148246b15eaf7b161196
        - registry.redhat.io/openshift-logging/loki-rhel9-operator@sha256:73dc60568c8ade290b53e4816c88f227054c4a63efb664857f793d5d59d15586
        version: 6.4.1
      entries:
      - name: loki-operator.v6.4.1
        version: 6.4.1
      - name: loki-operator.v6.4.0
        version: 6.4.0
      name: stable-6.4
    defaultChannel: stable-6.4
    packageName: loki-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: https://www.turbonomic.com/
    name: t8c-tsc-client-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: t8c-tsc-client-certified.v1.4.3-candidate-20251022123244000
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "TurbonomicClient",
                "metadata": {
                  "name": "turbonomicclient-release"
                },
                "spec": {
                  "global": {
                    "version": "8.16.1"
                  },
                  "probes": {
                    "actionScript": {
                      "enabled": false
                    },
                    "actionStreamKafka": {
                      "enabled": false
                    },
                    "appDynamics": {
                      "enabled": false
                    },
                    "compellent": {
                      "enabled": false
                    },
                    "datadog": {
                      "enabled": false
                    },
                    "dynatrace": {
                      "enabled": false
                    },
                    "flexera": {
                      "enabled": false
                    },
                    "hds": {
                      "enabled": false
                    },
                    "hpe3par": {
                      "enabled": false
                    },
                    "hyperFlex": {
                      "enabled": false
                    },
                    "hyperV": {
                      "enabled": false
                    },
                    "ibmStorageFlashSystem": {
                      "enabled": false
                    },
                    "instana": {
                      "enabled": false
                    },
                    "jvm": {
                      "enabled": false
                    },
                    "mssql": {
                      "enabled": false
                    },
                    "mysql": {
                      "enabled": false
                    },
                    "netApp": {
                      "enabled": false
                    },
                    "newRelic": {
                      "enabled": false
                    },
                    "nutanix": {
                      "enabled": false
                    },
                    "oneView": {
                      "enabled": false
                    },
                    "oracle": {
                      "enabled": false
                    },
                    "powerVM": {
                      "enabled": false
                    },
                    "pure": {
                      "enabled": false
                    },
                    "scaleIO": {
                      "enabled": false
                    },
                    "serviceNow": {
                      "enabled": false
                    },
                    "snmp": {
                      "enabled": false
                    },
                    "terraform": {
                      "enabled": false
                    },
                    "tomcat": {
                      "enabled": false
                    },
                    "ucs": {
                      "enabled": false
                    },
                    "vCenter": {
                      "enabled": false
                    },
                    "vmax": {
                      "enabled": false
                    },
                    "vmm": {
                      "enabled": false
                    },
                    "vplex": {
                      "enabled": false
                    },
                    "webLogic": {
                      "enabled": false
                    },
                    "webSphere": {
                      "enabled": false
                    },
                    "wmi": {
                      "enabled": false
                    },
                    "xtremIO": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "VersionManager",
                "metadata": {
                  "name": "versionmanager-release"
                },
                "spec": {
                  "url": "http://remote-nginx-tunnel:9080/cluster-manager/clusterConfiguration"
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-client-operator@sha256:bd207d0c85f83e590dfa763eada9bbcb173a54c729ba93015485df487a4c3806
          createdAt: "2025-10-22T16:48:12Z"
          description: Turbonomic Secure Connect for Hybrid environment management
          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.skipRange: '>=1.1.0 <1.4.3-candidate-20251022123244000'
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TurbonomicClient is the Schema for the turbonomicclients
              API
            displayName: Turbonomic Client
            kind: TurbonomicClient
            name: turbonomicclients.clients.turbonomic.ibm.com
            version: v1alpha1
          - description: VersionManager is the Schema for the versionmanagers API
            displayName: Version Manager
            kind: VersionManager
            name: versionmanagers.clients.turbonomic.ibm.com
            version: v1alpha1
        description: "### Turbonomic Secure Connect for Hybrid environment management\nTurbonomic
          Workload Automation for Multicloud simultaneously optimizes performance,
          compliance, and cost in real-time. Workloads are precisely resourced, automatically,
          to perform while satisfying business constraints:\n* Continuous placement
          of workload across multiple clouds both on-prem and public clouds providers.\n*
          Continuous scaling for applications and the underlying infrastructure.\n*
          Capability to connect both public cloud and on-prem targets on single saas
          instance\nIt assures application performance by giving workloads the resources
          they need when they need them.\n\n### How do I start?\nTurbonomic documentation
          can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm.\nTo
          setup Turbonomic Secure Connect client, follow the instructions below:\n1.
          Click Install on the landing page\n2. Upon moving to Install Operator page,
          do not modify the default selection for any of the configuration\n3. Select
          the Installed namespace from the drop down or add a new namespace and click
          on create project to create the entered namespace.\n4. Click Install on
          the Install Operator page.\nAt this point operator is installed.\n\nOn the
          Details tab, under Provided APIs: \n1. Click Create instance for the Turbonomic
          Client API. Enable/Disable the probes based on the requirement, and click
          Create.\n2. Click Create instance for the Version Manager API. Do not modify
          the JSON/YAML file, click on Create.\n\n### How does it work?\nTurbonomic
          uses a public APIs already exposed by application and infrastructure instrumentation
          to discover and monitor your environment.\nTurbonomic determines the right
          actions that drive continuous health, including continuous placement and
          continuous scaling for applications and the underlying cluster.\nTurbonomic
          leverages the built-on orchestration provided by the application and infrastructure
          deployment tools and automates the execution of these actions to continiously
          meet the respective service level objective of each application service."
        displayName: Turbonomic Secure Connect Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - turbonomic
        - turbo secure connect
        links:
        - name: T8c Tsc Client Certified
          url: https://t8c-tsc-certified.domain
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        relatedImages:
        - icr.io/cpopen/t8c-client-operator@sha256:bd207d0c85f83e590dfa763eada9bbcb173a54c729ba93015485df487a4c3806
        - registry.connect.redhat.com/turbonomic/t8c-tsc-client-operator-bundle@sha256:14207fa7bc67daab46205107aec44d68d26354980c77bda1289fa968044bb2f2
        version: 1.4.3-candidate-20251022123244000
      entries:
      - name: t8c-tsc-client-certified.v1.4.3-candidate-20251022123244000
        version: 1.4.3-candidate-20251022123244000
      name: candidate
    - currentCSV: t8c-tsc-client-certified.v1.4.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "TurbonomicClient",
                "metadata": {
                  "name": "turbonomicclient-release"
                },
                "spec": {
                  "global": {
                    "version": "8.16.1"
                  },
                  "probes": {
                    "actionScript": {
                      "enabled": false
                    },
                    "actionStreamKafka": {
                      "enabled": false
                    },
                    "appDynamics": {
                      "enabled": false
                    },
                    "compellent": {
                      "enabled": false
                    },
                    "datadog": {
                      "enabled": false
                    },
                    "dynatrace": {
                      "enabled": false
                    },
                    "flexera": {
                      "enabled": false
                    },
                    "hds": {
                      "enabled": false
                    },
                    "hpe3par": {
                      "enabled": false
                    },
                    "hyperFlex": {
                      "enabled": false
                    },
                    "hyperV": {
                      "enabled": false
                    },
                    "ibmStorageFlashSystem": {
                      "enabled": false
                    },
                    "instana": {
                      "enabled": false
                    },
                    "jvm": {
                      "enabled": false
                    },
                    "mssql": {
                      "enabled": false
                    },
                    "mysql": {
                      "enabled": false
                    },
                    "netApp": {
                      "enabled": false
                    },
                    "newRelic": {
                      "enabled": false
                    },
                    "nutanix": {
                      "enabled": false
                    },
                    "oneView": {
                      "enabled": false
                    },
                    "oracle": {
                      "enabled": false
                    },
                    "powerVM": {
                      "enabled": false
                    },
                    "pure": {
                      "enabled": false
                    },
                    "scaleIO": {
                      "enabled": false
                    },
                    "serviceNow": {
                      "enabled": false
                    },
                    "snmp": {
                      "enabled": false
                    },
                    "terraform": {
                      "enabled": false
                    },
                    "tomcat": {
                      "enabled": false
                    },
                    "ucs": {
                      "enabled": false
                    },
                    "vCenter": {
                      "enabled": false
                    },
                    "vmax": {
                      "enabled": false
                    },
                    "vmm": {
                      "enabled": false
                    },
                    "vplex": {
                      "enabled": false
                    },
                    "webLogic": {
                      "enabled": false
                    },
                    "webSphere": {
                      "enabled": false
                    },
                    "wmi": {
                      "enabled": false
                    },
                    "xtremIO": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "clients.turbonomic.ibm.com/v1alpha1",
                "kind": "VersionManager",
                "metadata": {
                  "name": "versionmanager-release"
                },
                "spec": {
                  "url": "http://remote-nginx-tunnel:9080/cluster-manager/clusterConfiguration"
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: icr.io/cpopen/t8c-client-operator@sha256:372569f1b26ccdebae386e5a3e5da42722255ab6e604f1c420b922bb35baf716
          createdAt: "2025-10-24T17:03:25Z"
          description: Turbonomic Secure Connect for Hybrid environment management
          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.skipRange: '>=1.1.0 <1.4.3'
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: TurbonomicClient is the Schema for the turbonomicclients
              API
            displayName: Turbonomic Client
            kind: TurbonomicClient
            name: turbonomicclients.clients.turbonomic.ibm.com
            version: v1alpha1
          - description: VersionManager is the Schema for the versionmanagers API
            displayName: Version Manager
            kind: VersionManager
            name: versionmanagers.clients.turbonomic.ibm.com
            version: v1alpha1
        description: "### Turbonomic Secure Connect for Hybrid environment management\nTurbonomic
          Workload Automation for Multicloud simultaneously optimizes performance,
          compliance, and cost in real-time. Workloads are precisely resourced, automatically,
          to perform while satisfying business constraints:\n* Continuous placement
          of workload across multiple clouds both on-prem and public clouds providers.\n*
          Continuous scaling for applications and the underlying infrastructure.\n*
          Capability to connect both public cloud and on-prem targets on single saas
          instance\nIt assures application performance by giving workloads the resources
          they need when they need them.\n\n### How do I start?\nTurbonomic documentation
          can be found on the IBM Turbonomic documentation site here https://www.ibm.com/docs/en/tarm.\nTo
          setup Turbonomic Secure Connect client, follow the instructions below:\n1.
          Click Install on the landing page\n2. Upon moving to Install Operator page,
          do not modify the default selection for any of the configuration\n3. Select
          the Installed namespace from the drop down or add a new namespace and click
          on create project to create the entered namespace.\n4. Click Install on
          the Install Operator page.\nAt this point operator is installed.\n\nOn the
          Details tab, under Provided APIs: \n1. Click Create instance for the Turbonomic
          Client API. Enable/Disable the probes based on the requirement, and click
          Create.\n2. Click Create instance for the Version Manager API. Do not modify
          the JSON/YAML file, click on Create.\n\n### How does it work?\nTurbonomic
          uses a public APIs already exposed by application and infrastructure instrumentation
          to discover and monitor your environment.\nTurbonomic determines the right
          actions that drive continuous health, including continuous placement and
          continuous scaling for applications and the underlying cluster.\nTurbonomic
          leverages the built-on orchestration provided by the application and infrastructure
          deployment tools and automates the execution of these actions to continiously
          meet the respective service level objective of each application service."
        displayName: Turbonomic Secure Connect Client
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - turbonomic
        - turbo secure connect
        links:
        - name: T8c Tsc Client Certified
          url: https://t8c-tsc-certified.domain
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        relatedImages:
        - icr.io/cpopen/t8c-client-operator@sha256:372569f1b26ccdebae386e5a3e5da42722255ab6e604f1c420b922bb35baf716
        - registry.connect.redhat.com/turbonomic/t8c-tsc-client-operator-bundle@sha256:164c19fcede19adde16d688ddc3c076bf5240e17ea8ba62203166fde1ae34823
        version: 1.4.3
      entries:
      - name: t8c-tsc-client-certified.v1.4.3
        version: 1.4.3
      name: stable
    defaultChannel: stable
    packageName: t8c-tsc-client-certified
    provider:
      name: Turbonomic, Inc.
      url: https://www.turbonomic.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Digital.ai
      provider-url: https://digital.ai
    name: digitalai-release-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: digitalai-release-operator.v25.1.0-beta.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "small"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "cluster": {
                    "manager": "xlr-legacy",
                    "mode": "full",
                    "name": "xl-release_cluster",
                    "node": {
                      "datacenter": "default"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"${XLR_CLUSTER_NAME}\"\n    manager = \"${XLR_CLUSTER_MANAGER}\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n      {{- if .Values.storage.reportingEngine.downingProviderClass }}\n      cluster {\n        downing-provider-class = {{.Values.storage.reportingEngine.downingProviderClass | quote}}\n      }\n      {{- end }}\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n    {{- if or .Values.storage.reportingEngine.s3.enabled .Values.storage.reportingEngine.cleanupInterval }}\n    engine {\n      {{- if .Values.storage.reportingEngine.cleanupInterval }}\n      cleanUpInterval = \"{{ .Values.storage.reportingEngine.cleanupInterval }}\"\n      {{- end }}\n      {{- if or .Values.storage.reportingEngine.s3.enabled }}\n      type = \"xlr-s3\"\n      s3 {\n        bucket = \"{{ .Values.storage.reportingEngine.s3.bucket | required \"storage.reportingEngine.s3.bucket is required\" }}\"\n        base-key = \"{{ .Values.storage.reportingEngine.s3.baseKey | required \"storage.reportingEngine.s3.baseKey is required\" }}\"\n        region = \"{{ .Values.storage.reportingEngine.s3.region | required \"storage.reportingEngine.s3.region is required\" }}\"\n        {{- if .Values.storage.reportingEngine.s3.endpointUri }}\n        endpoint-uri = \"{{ .Values.storage.reportingEngine.s3.endpointUri }}\"\n        {{- end }}\n      }\n      {{- end }}\n    }\n    {{- end }}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  {{- if or .Values.storage.jobLog.s3.enabled .Values.storage.jobLog.cleanupInterval .Values.storage.jobLog.maxItemsPerCleanup }}\n  job-log {\n    {{- if .Values.storage.jobLog.cleanupInterval }}\n    cleanup-interval = \"{{ .Values.storage.jobLog.cleanupInterval }}\"\n    {{- end }}\n    {{- if .Values.storage.jobLog.maxItemsPerCleanup }}\n    max-items-per-cleanup = \"{{ .Values.storage.jobLog.maxItemsPerCleanup }}\"\n    {{- end }}\n    {{- if or .Values.storage.jobLog.s3.enabled }}\n    type = \"xlr-s3\"\n    s3 {\n      bucket = \"{{ .Values.storage.jobLog.s3.bucket | required \"storage.jobLog.s3.bucket is required\" }}\"\n      base-key = \"{{ .Values.storage.jobLog.s3.baseKey | required \"storage.jobLog.s3.baseKey is required\" }}\"\n      region = \"{{ .Values.storage.jobLog.s3.region | required \"storage.jobLog.s3.region is required\" }}\"\n      {{- if .Values.storage.jobLog.s3.endpointUri }}\n      endpoint-uri = \"{{ .Values.storage.jobLog.s3.endpointUri }}\"\n      {{- end }}\n    }\n    {{- end }}\n  }\n  {{- end }}\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    },
                    "node-conf_xl-release-conf-template": {
                      "content": "# The ${APP_HOME}/node-conf/xl-release.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-release.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-release.conf and this is specified in ${APP_HOME}/conf/xlr-wrapper-linux.conf\nxl {\n  cluster {\n    node {\n      id = ${XL_NODE_NAME}\n      hostname = ${XL_NODE_NAME}\n      datacenter = ${XLR_CLUSTER_DATACENTER}\n      clusterPort = 5531\n    }\n  }\n}\n",
                      "mode": 432,
                      "path": "node-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "readOnlyRootFilesystem": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-dair",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": "cd /tmp; \n/opt/xebialabs/xl-client/xl kube upgrade \\\n  --skip-context-check \\\n  --local-repo /opt/xebialabs/xl-op-blueprints \\\n  --answers /opt/xebialabs/xl-client/generated_answers.yaml\n",
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    }
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "livenessProbe": {
                    "enabled": true,
                    "failureThreshold": 3,
                    "initialDelaySeconds": 10,
                    "path": "s/actuator/health/liveness",
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 20
                  },
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.12.0-debian-12-r12"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "emptyDirPaths": [
                      "/opt/xebialabs/xl-release-server/cache",
                      "/opt/xebialabs/xl-release-server/conf",
                      "/opt/xebialabs/xl-release-server/driver/jdbc",
                      "/opt/xebialabs/xl-release-server/driver/mq",
                      "/opt/xebialabs/xl-release-server/log",
                      "/opt/xebialabs/xl-release-server/node-conf",
                      "/opt/xebialabs/xl-release-server/plugins",
                      "/opt/xebialabs/xl-release-server/work",
                      "/tmp"
                    ],
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "17.2.0-debian-12-r12"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "4.0.7-debian-12-r0"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "readinessProbe": {
                    "enabled": true,
                    "failureThreshold": 3,
                    "initialDelaySeconds": 10,
                    "path": "s/actuator/health/readiness",
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 20
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "startupProbe": {
                    "enabled": true,
                    "failureThreshold": 12,
                    "initialDelaySeconds": 60,
                    "path": "s/actuator/health/readiness",
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 20
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "storage": {
                    "jobLog": {
                      "cleanupInterval": null,
                      "maxItemsPerCleanup": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    },
                    "reportingEngine": {
                      "cleanupInterval": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    }
                  },
                  "terminationGracePeriodSeconds": 450,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r39"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabsunsupported/release-operator@sha256:13ba64f395ea66740d4f424a85ca94c0b018913c1ab672448b31d652b09ece5f '
          createdAt: "2025-04-09T14:48:21Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind: DigitalaiRelease\nmetadata:\n
          \ name: dair-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    enabled: false\n  containerSecurityContext:\n
          \   enabled: false\n  volumePermissions:\n    enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          JSESSIONID\n      haproxy.router.openshift.io/disable_cookies: 'false'\n
          \     haproxy.router.openshift.io/rewrite-target: /\n      haproxy.router.openshift.io/timeout:
          120s\n    hostname: '<mandatory-release-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n        enabled:
          false\n      containerSecurityContext:\n        enabled: false\n    volumePermissions:\n
          \     enabled: false\n  rabbitmq:\n    install: true\n    persistence:\n
          \     size: 1Gi\n      storageClass: ''\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n```\n\n#### Configuration
          Details\n\nThe sample configuration uses:\n\n- Autogenerated limited license\n-
          Simple administrator initial password\n- Default keystore setup\n- Only
          one replica is set for all pods\n- All Pods are missing resource limit setup\n-
          Default storage class and minimal size for persistent storage\n- Release
          pods are using persistence access mode `ReadWriteOnce`, for Release pods
          the requirement is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB
          management\n- Embedded RabbitMQ for message queue management\n\n#### Security
          Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined ranges (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:155a3bf3b1111eb17a78c72c50e36edfcb331b7fb0298692c59f1ef6b7a068ac
        - docker.io/xebialabsunsupported/release-operator@sha256:13ba64f395ea66740d4f424a85ca94c0b018913c1ab672448b31d652b09ece5f
        - docker.io/xebialabsunsupported/xl-release@sha256:7297abc6529aa2cc8d43d4df5caa6fc63eae412ab06e4a59f8da45524b3937f6
        version: 25.1.0-beta.6
      entries:
      - name: digitalai-release-operator.v25.1.0-beta.6
        version: 25.1.0-beta.6
      name: beta
    - currentCSV: digitalai-release-operator.v24.1.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "fsGroup": null,
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "fsGroup": null,
                    "runAsGroup": null,
                    "runAsUser": null
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"xl-release_cluster\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  jvm {\n      override-jvm-options = {{ .Values.jvm.overrideOptions }}\n      networkaddress.cache.ttl = {{ index .Values.jvm.options \"networkaddress.cache.ttl\" }}\n  }\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "ingressClass": "haproxy-dair",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "health": {
                    "enabled": true,
                    "periodScans": 10,
                    "probeFailureThreshold": 12,
                    "probesLivenessTimeout": 60,
                    "probesReadinessTimeout": 60
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-client/xl",
                        "kube",
                        "upgrade",
                        "--skip-context-check",
                        "--local-repo",
                        "/opt/xebialabs/xl-op-blueprints",
                        "--answers",
                        "/opt/xebialabs/xl-client/generated_answers.yaml"
                      ],
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    },
                    "overrideOptions": true
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.0-debian-12-r1"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.10.1-debian-12-r5"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "15.6.0-debian-12-r7"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.13-debian-12-r2"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "terminationGracePeriodSeconds": 200,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r16"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator without SCC creation and with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: docker.io/xebialabs/release-operator@sha256:47d6e31f66fce52c6566240b85fb028890409ad3addeea134120d1afa4814883
          createdAt: "2024-10-16T04:25:19Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind:
          DigitalaiRelease\nmetadata:\n  name: dair-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    runAsUser: null\n    runAsGroup: null\n
          \   fsGroup: null\n  containerSecurityContext:\n    runAsUser: null\n    runAsGroup:
          null\n  securityContextConstraints:\n    enabled: false\n  volumePermissions:\n
          \   enabled: false\n  route:\n    enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          JSESSIONID\n      haproxy.router.openshift.io/disable_cookies: 'false'\n
          \     haproxy.router.openshift.io/rewrite-target: /\n      haproxy.router.openshift.io/timeout:
          120s\n    hostname: '<mandatory-release-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n        enabled:
          false\n        runAsUser: null\n        runAsGroup: null\n        fsGroup:
          null\n      containerSecurityContext:\n        enabled: false\n        runAsUser:
          null\n        runAsGroup: null\n      securityContextConstraints:\n        enabled:
          false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n    install:
          true\n    persistence:\n      size: 1Gi\n      storageClass: ''\n    replicaCount:
          1\n    podSecurityContext:\n      enabled: false\n      runAsUser: null\n
          \     runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     enabled: false\n      runAsUser: null\n      runAsGroup: null\n    securityContextConstraints:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\nIf
          SCC is required, it must be managed manually. The necessary permissions
          for accessing SecurityContextConstraints must be granted when SCC is enabled;
          otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"dair-doc-digitalai-release-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xlr-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Release pods are using
          persistence access mode `ReadWriteOnce`, for Release pods the requirement
          is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB management\n- Embedded
          RabbitMQ for message queue management\n\n#### Security Configuration Details\n\n-
          `securityContextConstraints.enabled: false` - disables creation of SCCs;\n-
          `podSecurityContext/containerSecurityContext` - that disables the use of
          specific UIDs or GIDs, so the IDs can be assigned from the defined ranges
          (for example from restricted SCC);\n- `volumePermissions.enabled: false`
          - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/release-operator@sha256:47d6e31f66fce52c6566240b85fb028890409ad3addeea134120d1afa4814883
        - docker.io/xebialabs/xl-release@sha256:d1b65493ed524d37c60483f44b8bcc877ff398c81d36c7e767f2254dadec98cc
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:771a9a173e033a3ad8b46f5c00a7036eaa88c8d8d1fbd89217325168998113ea
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:a85d4f1c8a686abc0b9032dddda75991216d44dfade214625723d7009be314d3
        version: 24.1.10
      entries:
      - name: digitalai-release-operator.v24.1.10
        version: 24.1.10
      name: stable
    - currentCSV: digitalai-release-operator.v24.1.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"xl-release_cluster\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  jvm {\n      override-jvm-options = {{ .Values.jvm.overrideOptions }}\n      networkaddress.cache.ttl = {{ index .Values.jvm.options \"networkaddress.cache.ttl\" }}\n  }\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "image": {
                        "tag": "v0.14.7"
                      },
                      "ingressClass": "haproxy-dair",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "health": {
                    "enabled": true,
                    "periodScans": 10,
                    "probeFailureThreshold": 12,
                    "probesLivenessTimeout": 60,
                    "probesReadinessTimeout": 60
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-client/xl",
                        "kube",
                        "upgrade",
                        "--skip-context-check",
                        "--local-repo",
                        "/opt/xebialabs/xl-op-blueprints",
                        "--answers",
                        "/opt/xebialabs/xl-client/generated_answers.yaml"
                      ],
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    },
                    "overrideOptions": true
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.2-debian-12-r10"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r0"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "15.6.0-debian-12-r20"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.14-debian-12-r7"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "terminationGracePeriodSeconds": 200,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r40"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator without SCC creation and with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/release-operator@sha256:a190db714dfbba61077d21eb8917831b6b4d039299e2ce2fd3ea3934ff457171 '
          createdAt: "2025-04-07T05:35:54Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind:
          DigitalaiRelease\nmetadata:\n  name: dair-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    enabled: false\n  containerSecurityContext:\n
          \   enabled: false\n  securityContextConstraints:\n    enabled: false\n
          \ volumePermissions:\n    enabled: false\n  route:\n    enabled: false\n
          \   annotations:\n      haproxy.router.openshift.io/cookie_name: JSESSIONID\n
          \     haproxy.router.openshift.io/disable_cookies: 'false'\n      haproxy.router.openshift.io/rewrite-target:
          /\n      haproxy.router.openshift.io/timeout: 120s\n    hostname: '<mandatory-release-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n
          \       enabled: false\n      containerSecurityContext:\n        enabled:
          false\n      securityContextConstraints:\n        enabled: false\n    volumePermissions:\n
          \     enabled: false\n  rabbitmq:\n    install: true\n    persistence:\n
          \     size: 1Gi\n      storageClass: ''\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   securityContextConstraints:\n      enabled: false\n    volumePermissions:\n
          \     enabled: false\n```\n\nIf SCC is required, it must be managed manually.
          The necessary permissions for accessing SecurityContextConstraints must
          be granted when SCC is enabled; otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"dair-doc-digitalai-release-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xlr-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Release pods are using
          persistence access mode `ReadWriteOnce`, for Release pods the requirement
          is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB management\n- Embedded
          RabbitMQ for message queue management\n\n#### Security Configuration Details\n\n-
          `securityContextConstraints.enabled: false` - disables creation of SCCs;\n-
          `podSecurityContext/containerSecurityContext` - that disables the use of
          specific UIDs or GIDs, so the IDs can be assigned from the defined ranges
          (for example from restricted SCC);\n- `volumePermissions.enabled: false`
          - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/xl-release@sha256:c990bfa8c783898536aa78a8cbcff03644de1241a201af4a14835c81c9c654d9
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:7169b97771d93f504de73a3696dbd1d184ba987cb51ae1ab81bf4bef17b42bcf
        - docker.io/xebialabs/release-operator@sha256:a190db714dfbba61077d21eb8917831b6b4d039299e2ce2fd3ea3934ff457171
        version: 24.1.17
      entries:
      - name: digitalai-release-operator.v24.1.17
        version: 24.1.17
      - name: digitalai-release-operator.v24.1.14
        version: 24.1.14
      - name: digitalai-release-operator.v24.1.10
        version: 24.1.10
      name: stable-v24.1
    - currentCSV: digitalai-release-operator.v24.3.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "size": "1Gi",
                    "storageClass": ""
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "small"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": 1,
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "dair-placeholders"
                },
                "spec": {
                  "appHostname": "\u003cmandatory-release-hostname\u003e",
                  "appProtocol": "http",
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "containerSecurityContext": {
                    "enabled": false
                  },
                  "diagnosticMode": {
                    "enabled": false
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-db-host\u003e:5432/\u003cxlr-database-name\u003e",
                        "username": "\u003cxlr-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxlr-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxlr-report-db-host\u003e:5432/\u003cxlr-report-database-name\u003e",
                        "username": "\u003cxlr-report-username\u003e"
                      }
                    },
                    "mq": {
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    },
                    "installReleaseRunner": {
                      "answersSecret": "remote-runner-answers",
                      "enabled": false,
                      "releaseName": "remote-runner"
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaim": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaim": ""
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "size": "\u003crelease-storage-size\u003e",
                    "storageClass": "\u003cmandatory-release-storage-class-rwx\u003e"
                  },
                  "podSecurityContext": {
                    "enabled": false
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "replicaCount": "\u003crelease-replica-count\u003e",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-release-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "volumePermissions": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "xlr.digital.ai/v1alpha1",
                "kind": "DigitalaiRelease",
                "metadata": {
                  "name": "digitalairelease-sample"
                },
                "spec": {
                  "affinity": {},
                  "appContextRoot": "/",
                  "appHostname": "",
                  "appProtocol": "http",
                  "args": [
                    "--",
                    "/opt/xebialabs/xl-release-server/bin/run-in-container.sh"
                  ],
                  "auth": {
                    "adminPassword": null,
                    "sessionStorage": false
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "command": [
                    "/opt/xebialabs/tini"
                  ],
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "configuration": {
                    "default-conf_xl-release-conf-template": {
                      "content": "xl {\n  cluster {\n    # mode: \"default\", \"hot-standby\", \"full\"\n    mode = ${XL_CLUSTER_MODE}\n    name = \"xl-release_cluster\"\n    pekko {\n      loglevel = \"INFO\"\n      actor.debug.receive = off\n      remote {\n          log-received-messages = off\n          log-sent-messages = off\n      }\n    }\n  }\n\n  server {\n      http2 {\n          enabled = ${XLR_HTTP2_ENABLED}\n      }\n      ssl {\n          sniHostCheck = {{ .Values.ssl.sniHostCheck }}\n      }\n      session {\n          storage {\n              enabled = {{ include \"common.tplvalues.render\" ( dict \"value\" .Values.auth.sessionStorage \"context\" $ ) }}\n          }\n      }\n  }\n\n  license {\n    kind = ${XL_LICENSE_KIND}\n    product = \"xl-release\"\n  }\n\n  database {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_DB_URL}\"\n    db-username=${XL_DB_USERNAME}\n    max-pool-size=${XL_DB_MAX_POOL_SIZE}\n  }\n\n  # TODO Release does not support (H2) running in one schema.\n  reporting {\n    db-driver-classname=\"${XL_DB_DRIVER}\"\n    db-password=\"\"\"${XL_REPORT_DB_PASSWORD}\"\"\"\n    db-url=\"${XL_REPORT_DB_URL}\"\n    db-username=${XL_REPORT_DB_USERNAME}\n    max-pool-size=${XL_REPORT_DB_MAX_POOL_SIZE}\n    {{- if or .Values.storage.reportingEngine.s3.enabled .Values.storage.reportingEngine.cleanupInterval }}\n    engine {\n      {{- if .Values.storage.reportingEngine.cleanupInterval }}\n      cleanUpInterval = \"{{ .Values.storage.reportingEngine.cleanupInterval }}\"\n      {{- end }}\n      {{- if or .Values.storage.reportingEngine.s3.enabled }}\n      type = \"xlr-s3\"\n      s3 {\n        bucket = \"{{ .Values.storage.reportingEngine.s3.bucket | required \"storage.reportingEngine.s3.bucket is required\" }}\"\n        base-key = \"{{ .Values.storage.reportingEngine.s3.baseKey | required \"storage.reportingEngine.s3.baseKey is required\" }}\"\n        region = \"{{ .Values.storage.reportingEngine.s3.region | required \"storage.reportingEngine.s3.region is required\" }}\"\n        {{- if .Values.storage.reportingEngine.s3.endpointUri }}\n        endpoint-uri = \"{{ .Values.storage.reportingEngine.s3.endpointUri }}\"\n        {{- end }}\n      }\n      {{- end }}\n    }\n    {{- end }}\n  }\n\n  # Task queue\n  queue {\n    embedded=${ENABLE_EMBEDDED_QUEUE}\n    connector=\"${XLR_TASK_QUEUE_CONNECTOR_TYPE}\"\n    password=\"\"\"${XLR_TASK_QUEUE_PASSWORD}\"\"\"\n    queueName=\"${XLR_TASK_QUEUE_NAME}\"\n    url=\"${XLR_TASK_QUEUE_URL}\"\n    username=\"${XLR_TASK_QUEUE_USERNAME}\"\n    queueType=\"${XLR_TASK_QUEUE_TYPE}\"\n  }\n\n  metrics {\n    enabled = ${XL_METRICS_ENABLED}\n  }\n\n  {{- if .Values.oidc.enabled }}\n  security {\n    auth {\n      providers {\n        oidc {\n          clientId=\"\"\n          clientId=${?OIDC_CLIENT_ID}\n          clientSecret=\"\"\n          clientSecret=${?OIDC_CLIENT_SECRET}\n          {{- if .Values.oidc.clientAuthMethod }}\n          clientAuthMethod={{ .Values.oidc.clientAuthMethod | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.enable }}\n          clientAuthJwt {\n              jwsAlg={{ default \"\" .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n              tokenKeyId={{ default \"\" .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n              {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n              keyStore {\n                  path={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\n                  type={{ default \"\" .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n              }\n              {{- end }}\n              {{- if .Values.oidc.clientAuthJwt.key.enable }}\n              key {\n                  alias={{ default \"\" .Values.oidc.clientAuthJwt.key.alias | quote }}\n                  password=\"\"\n                  password=${?OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\n              }\n              {{- end }}\n          }\n          {{- end }}\n          issuer={{ .Values.oidc.issuer | quote }}\n          keyRetrievalUri={{ default \"\" .Values.oidc.keyRetrievalUri | quote }}\n          accessTokenUri={{ default \"\" .Values.oidc.accessTokenUri | quote }}\n          userAuthorizationUri={{ default \"\" .Values.oidc.userAuthorizationUri | quote }}\n          logoutUri={{ default \"\" .Values.oidc.logoutUri | quote }}\n          redirectUri={{ .Values.oidc.redirectUri | quote }}\n          postLogoutRedirectUri={{ .Values.oidc.postLogoutRedirectUri | quote }}\n          userNameClaim={{ default \"\" .Values.oidc.userNameClaim | quote }}\n          fullNameClaim={{ default \"\" .Values.oidc.fullNameClaim | quote }}\n          emailClaim={{ default \"\" .Values.oidc.emailClaim | quote }}\n          {{- if .Values.oidc.externalIdClaim }}\n          externalIdClaim={{ .Values.oidc.externalIdClaim | quote }}\n          {{- end }}\n          rolesClaim={{ default \"\" .Values.oidc.rolesClaim | quote }}\n          {{- if .Values.oidc.scopes }}\n          scopes={{ .Values.oidc.scopes }}\n          {{- else }}\n          scopes=[\"openid\"]\n          {{- end }}\n          {{- if .Values.oidc.idTokenJWSAlg }}\n          idTokenJWSAlg={{ .Values.oidc.idTokenJWSAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.enable }}\n          access-token {\n              issuer={{ default \"\" .Values.oidc.accessToken.issuer | quote }}\n              audience={{ default \"\" .Values.oidc.accessToken.audience | quote }}\n              keyRetrievalUri={{ default \"\" .Values.oidc.accessToken.keyRetrievalUri | quote }}\n              jwsAlg={{ default \"\" .Values.oidc.accessToken.jwsAlg | quote }}\n              secretKey=\"\"\n              secretKey=${?OIDC_ACCESS_TOKEN_SECRET_KEY}\n              }\n          {{- end }}\n          {{- if .Values.oidc.proxyHost }}\n          proxyHost={{ .Values.oidc.proxyHost | quote }}\n          {{- end }}\n          {{- if .Values.oidc.proxyPort }}\n          proxyPort={{ .Values.oidc.proxyPort | quote }}\n          {{- end }}\n        }\n      }\n    }\n  }\n  {{- end }}\n  {{- if or .Values.storage.jobLog.s3.enabled .Values.storage.jobLog.cleanupInterval .Values.storage.jobLog.maxItemsPerCleanup }}\n  job-log {\n    {{- if .Values.storage.jobLog.cleanupInterval }}\n    cleanup-interval = \"{{ .Values.storage.jobLog.cleanupInterval }}\"\n    {{- end }}\n    {{- if .Values.storage.jobLog.maxItemsPerCleanup }}\n    max-items-per-cleanup = \"{{ .Values.storage.jobLog.maxItemsPerCleanup }}\"\n    {{- end }}\n    {{- if or .Values.storage.jobLog.s3.enabled }}\n    type = \"xlr-s3\"\n    s3 {\n      bucket = \"{{ .Values.storage.jobLog.s3.bucket | required \"storage.jobLog.s3.bucket is required\" }}\"\n      base-key = \"{{ .Values.storage.jobLog.s3.baseKey | required \"storage.jobLog.s3.baseKey is required\" }}\"\n      region = \"{{ .Values.storage.jobLog.s3.region | required \"storage.jobLog.s3.region is required\" }}\"\n      {{- if .Values.storage.jobLog.s3.endpointUri }}\n      endpoint-uri = \"{{ .Values.storage.jobLog.s3.endpointUri }}\"\n      {{- end }}\n    }\n    {{- end }}\n  }\n  {{- end }}\n}\n",
                      "mode": 432,
                      "path": "default-conf/xl-release.conf.template"
                    },
                    "node-conf_xl-release-conf-template": {
                      "content": "# The ${APP_HOME}/node-conf/xl-release.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-release.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-release.conf and this is specified in ${APP_HOME}/conf/xlr-wrapper-linux.conf\nxl {\n  cluster {\n    node {\n      id = ${XL_NODE_NAME}\n      hostname = ${XL_NODE_NAME}\n      clusterPort = 5531\n    }\n  }\n}\n",
                      "mode": 432,
                      "path": "node-conf/xl-release.conf.template"
                    }
                  },
                  "containerPorts": {
                    "releaseHttp": 5516,
                    "releaseHttps": 5543
                  },
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "enabled": true,
                    "readOnlyRootFilesystem": true,
                    "runAsNonRoot": true,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "debugMode": {
                    "enabled": false,
                    "remoteJvmParams": "{{- if .Values.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8001{{- end }}"
                  },
                  "defaultInitContainers": {
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "diagnosticMode": {
                    "args": [
                      "--",
                      "sleep",
                      "infinity"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "enabled": false
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "",
                  "enableEmbeddedQueue": false,
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "connector": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "",
                      "url": "",
                      "username": null
                    }
                  },
                  "extraConfiguration": {},
                  "extraContainerPorts": [],
                  "extraDeploy": [],
                  "extraEnvVars": [],
                  "extraEnvVarsCM": "",
                  "extraEnvVarsSecret": "",
                  "extraSecrets": {},
                  "extraSecretsPrependReleaseName": false,
                  "extraVolumeMounts": [],
                  "extraVolumes": [],
                  "forceRemoveMissingTypes": false,
                  "forceUpgrade": true,
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-dair",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "health": {
                    "enabled": true,
                    "periodScans": 10,
                    "probeFailureThreshold": 12,
                    "probesLivenessTimeout": 60,
                    "probesReadinessTimeout": 60
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating release self-signed cert\"\nHOSTNAME=\"{{- include \"release.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-release -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Release,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-release -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-release-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --from-literal=host={{- include \"release.hostname\" . -}} \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-release-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-release\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/xl-release-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/xl-release-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-release-server/conf/xl-release-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-release-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-release-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"release.name\" . }}-license"
                    },
                    "installReleaseRunner": {
                      "answersSecret": "",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "extraEnvVars": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "xebialabsunsupported/xl-client",
                        "tag": "{{ .Chart.AppVersion }}"
                      },
                      "installCommand": "cd /tmp; \n/opt/xebialabs/xl-client/xl kube upgrade \\\n  --skip-context-check \\\n  --local-repo /opt/xebialabs/xl-op-blueprints \\\n  --answers /opt/xebialabs/xl-client/generated_answers.yaml\n",
                      "name": "{{ include \"release.name\" . }}-install-runner",
                      "releaseName": ""
                    }
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "xebialabsunsupported/xl-release",
                    "tag": "{{ .Chart.AppVersion }}"
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "initContainers": [],
                  "jvm": {
                    "options": {
                      "networkaddress.cache.ttl": 30
                    }
                  },
                  "jvmArgs": "",
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "lifecycleHooks": {},
                  "logback": {
                    "globalLoggingLevel": "info",
                    "scanEnabled": true,
                    "scanPeriod": "30 seconds"
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-dair"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r3"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-dair",
                      "name": "nginx-dair"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "nodeAffinityPreset": {
                    "key": "",
                    "type": "",
                    "values": []
                  },
                  "nodeSelector": {},
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "external": false,
                    "externalIdClaim": null,
                    "fullNameClaim": null,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaim": null,
                    "scopes": [
                      "openid"
                    ],
                    "userAuthorizationUri": null,
                    "userNameClaim": null
                  },
                  "pdb": {
                    "create": false,
                    "maxUnavailable": "",
                    "minAvailable": 1
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "annotations": {
                      "helm.sh/resource-policy": "keep"
                    },
                    "emptyDirPaths": [
                      "/opt/xebialabs/xl-release-server/cache",
                      "/opt/xebialabs/xl-release-server/conf",
                      "/opt/xebialabs/xl-release-server/driver/jdbc",
                      "/opt/xebialabs/xl-release-server/driver/mq",
                      "/opt/xebialabs/xl-release-server/log",
                      "/opt/xebialabs/xl-release-server/node-conf",
                      "/opt/xebialabs/xl-release-server/plugins",
                      "/opt/xebialabs/xl-release-server/work",
                      "/tmp"
                    ],
                    "enabled": true,
                    "existingClaim": "",
                    "paths": [
                      "/opt/xebialabs/xl-release-server/reports"
                    ],
                    "selector": {},
                    "single": true,
                    "size": "8Gi",
                    "storageClass": ""
                  },
                  "podAffinityPreset": "",
                  "podAnnotations": {},
                  "podAntiAffinityPreset": "soft",
                  "podLabels": {},
                  "podManagementPolicy": "OrderedReady",
                  "podSecurityContext": {
                    "enabled": true,
                    "fsGroup": 10001,
                    "runAsUser": 10001
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "image": {
                      "tag": "16.3.0-debian-12-r23"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-release"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "small",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "priorityClassName": "",
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n{{ if eq .Values.queueType \"quorum\" -}}\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n{{- end }}\n",
                    "extraPlugins": "rabbitmq_amqp1_0, rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.13.7-debian-12-r5"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-release",
                      "file": "/app/release_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "queueType": "classic",
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "replicaCount": 3,
                  "resources": {},
                  "resourcesPreset": "micro",
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "JSESSIONID",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/",
                      "haproxy.router.openshift.io/timeout": "120s"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "schedulerName": "",
                  "service": {
                    "annotations": {},
                    "annotationsHeadless": {},
                    "clusterIP": "",
                    "externalIPs": [],
                    "externalTrafficPolicy": "Cluster",
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePorts": {
                      "releaseHttp": "",
                      "releaseHttps": ""
                    },
                    "portEnabled": true,
                    "portNames": {
                      "releaseHttp": "release-http",
                      "releaseHttps": "release-https"
                    },
                    "ports": {
                      "releaseHttp": 80,
                      "releaseHttps": 443
                    },
                    "sessionAffinity": "None",
                    "sessionAffinityConfig": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "sidecars": [],
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": null,
                    "keystorePassword": null,
                    "keystoreType": "pkcs12",
                    "sniHostCheck": true
                  },
                  "statefulsetAnnotations": {},
                  "statefulsetLabels": {},
                  "storage": {
                    "jobLog": {
                      "cleanupInterval": null,
                      "maxItemsPerCleanup": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    },
                    "reportingEngine": {
                      "cleanupInterval": null,
                      "s3": {
                        "baseKey": null,
                        "bucket": null,
                        "enabled": false,
                        "endpointUri": null,
                        "region": null
                      }
                    }
                  },
                  "terminationGracePeriodSeconds": 200,
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "updateStrategy": {
                    "type": "RollingUpdate"
                  },
                  "useIpAsHostname": false,
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r42"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "150m",
                        "ephemeral-storage": "2Gi",
                        "memory": "192Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "ephemeral-storage": "50Mi",
                        "memory": "128Mi"
                      }
                    },
                    "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.containerSecurityContext.runAsUser }}:{{ .Values.podSecurityContext.fsGroup }}\"\ndone\n"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "dair-min": {
                "description": "Minimal configuration for the Digital.ai Release operator with embedded Postgresql and RabbitMQ and route setup"
              },
              "dair-placeholders": {
                "description": "Configuration for the Digital.ai Release operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalairelease-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/release-operator@sha256:f07c3a505e28db618b8991c7cf8a6b9a9423313be2757bacc776b9e59dfc9f45 '
          createdAt: "2025-04-08T15:13:48Z"
          description: Digital.ai Release empowers developer teams to seamlessly release
            and deploy software on a large scale across hybrid environments, all while
            ensuring that compliance and security requirements are effectively in
            place.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/release-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiRelease
            name: digitalaireleases.xlr.digital.ai
            version: v1alpha1
        description: "Digital.ai Release empowers developer teams to seamlessly release
          and deploy software on a large scale across hybrid environments, all while
          ensuring that compliance and security requirements are effectively in place.\n\n##
          About this Operator\n\nDigital.ai Releas operator is based on helm chart
          that is available from [here](https://github.com/digital-ai/release-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Release containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xlr.digital.ai/v1alpha1\nkind: DigitalaiRelease\nmetadata:\n
          \ name: dair-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66Cf9nrO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECD0yEJAHFhBOAgMDDUB1cQB+AAUAAACQUhNP1jw1dwOxWArpm0JBAX40fr4fvvAmyGGrx7mzlCVjb4uOxi4IroUoxcbBx8cpjiS6QzCUg6chsCQ0IABB6s7Tow2VR8vRlxXyxpJXvlUwfH8hwJn/ZK8rQuDsCkzd2rC+lYR0pEO0lUP3/AQ7dHJ4TgloyZOKKbWRNJvE4K4EOafqASuNTkyrr0SPflRydAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVO3iVKkgrEJQ78wacyjhp3UZBSB/Q=='\n
          \ replicaCount: 1\n  hooks:\n    getLicense:\n      enabled: true\n  persistence:\n
          \   storageClass: ''\n    accessModes:\n      - ReadWriteOnce\n    size:
          1Gi\n  podSecurityContext:\n    enabled: false\n  containerSecurityContext:\n
          \   enabled: false\n  volumePermissions:\n    enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          JSESSIONID\n      haproxy.router.openshift.io/disable_cookies: 'false'\n
          \     haproxy.router.openshift.io/rewrite-target: /\n      haproxy.router.openshift.io/timeout:
          120s\n    hostname: '<mandatory-release-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"small\"\n      podSecurityContext:\n        enabled:
          false\n      containerSecurityContext:\n        enabled: false\n    volumePermissions:\n
          \     enabled: false\n  rabbitmq:\n    install: true\n    persistence:\n
          \     size: 1Gi\n      storageClass: ''\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n```\n\n#### Configuration
          Details\n\nThe sample configuration uses:\n\n- Autogenerated limited license\n-
          Simple administrator initial password\n- Default keystore setup\n- Only
          one replica is set for all pods\n- All Pods are missing resource limit setup\n-
          Default storage class and minimal size for persistent storage\n- Release
          pods are using persistence access mode `ReadWriteOnce`, for Release pods
          the requirement is to have `ReadWriteMany`\n- Embedded PostgreSQL for DB
          management\n- Embedded RabbitMQ for message queue management\n\n#### Security
          Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined ranges (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Release, use
          this [guide](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-setup-truststore.html).\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-release-offline-plugin-management.html)"
        displayName: Digital.ai Release
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai-release-operator
        - digitalai
        - digital.ai
        - release
        - devops
        links:
        - name: Digital.ai Release
          url: https://digital.ai/products/release/
        - name: Digital.ai Release Documentation
          url: https://docs.digital.ai/bundle/devops-release-version-v.24.1/page/release/operator/xl-op-before-you-begin.html
        - name: Digital.ai Release Helm Chart
          url: https://github.com/digital-ai/release-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/xl-release@sha256:263fb67b774953a264f03945aa861fe6ed2ceb1ee25828ea11844f946e4619cf
        - registry.connect.redhat.com/digital-ai/release-operator@sha256:49919225644f55e6e752c7e64ce3afb3260d0201962939e0d9bb2b6088a8841b
        - docker.io/xebialabs/release-operator@sha256:f07c3a505e28db618b8991c7cf8a6b9a9423313be2757bacc776b9e59dfc9f45
        version: 24.3.6
      entries:
      - name: digitalai-release-operator.v24.3.6
        version: 24.3.6
      - name: digitalai-release-operator.v24.3.5
        version: 24.3.5
      name: stable-v24.3
    defaultChannel: stable-v24.3
    packageName: digitalai-release-operator
    provider:
      name: Digital.ai
      url: https://digital.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Broadcom
      provider-url: https://www.broadcom.com/
    name: layer7-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: layer7-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "security.brcmlabs.com/v1",
                "kind": "Gateway",
                "metadata": {
                  "name": "ssg"
                },
                "spec": {
                  "app": {
                    "image": "docker.io/caapim/gateway:11.1.3",
                    "management": {
                      "cluster": {
                        "hostname": "gateway.brcmlabs.com",
                        "password": "7layer"
                      },
                      "password": "7layer",
                      "username": "admin"
                    },
                    "replicas": 1,
                    "service": {
                      "ports": [
                        {
                          "name": "https",
                          "port": 8443,
                          "protocol": "TCP",
                          "targetPort": 8443
                        },
                        {
                          "name": "management",
                          "port": 9443,
                          "protocol": "TCP",
                          "targetPort": 9443
                        }
                      ],
                      "type": "LoadBalancer"
                    }
                  },
                  "license": {
                    "accept": false,
                    "secretName": "gateway-license"
                  },
                  "version": "11.1.3"
                },
                "status": {}
              },
              {
                "apiVersion": "security.brcmlabs.com/v1",
                "kind": "Repository",
                "metadata": {
                  "name": "my-repository"
                },
                "spec": {
                  "auth": {},
                  "branch": "main",
                  "enabled": true,
                  "endpoint": "https://github.com/\u003cusername\u003e/\u003crepository\u003e",
                  "type": "git"
                }
              },
              {
                "apiVersion": "security.brcmlabs.com/v1alpha1",
                "kind": "L7Api",
                "metadata": {
                  "name": "l7api-sample"
                },
                "spec": {
                  "deploymentTags": [
                    "ssg",
                    "ssg1"
                  ],
                  "graphmanBundle": "jsongz",
                  "portalPublished": false,
                  "serviceUrl": "/v1/api"
                }
              },
              {
                "apiVersion": "security.brcmlabs.com/v1alpha1",
                "kind": "L7Portal",
                "metadata": {
                  "name": "dev-portal"
                },
                "spec": {
                  "auth": {},
                  "deploymentTags": [
                    "ssg"
                  ],
                  "enabled": true,
                  "endpoint": "dev-ssg.brcmlabs.com",
                  "enrollmentBundle": "",
                  "portalTenant": "portal"
                }
              },
              {
                "apiVersion": "security.brcmlabs.com/v1alpha1",
                "kind": "L7StateStore",
                "metadata": {
                  "name": "state-store-example"
                },
                "spec": {
                  "redis": {
                    "database": 0,
                    "groupName": "l7gw",
                    "masterPassword": "7layer",
                    "standalone": {
                      "host": "redis-standalone",
                      "port": 6379
                    },
                    "storeId": "test",
                    "type": "standalone"
                  },
                  "type": "redis"
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: docker.io/caapim/layer7-operator:v1.2.2
          createdAt: "2025-11-28T13:43:31Z"
          description: The Layer7 Operator covers all aspects of deploying, maintaining
            and upgrading Layer7 API Gateways in Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: layer7-operator-system
          operators.openshift.io/valid-subscription: Layer7 (Broadcom) API Gateway
            license
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/caapim/layer7-operator
          support: Broadcom Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gateway is the Schema for the Gateway Custom Resource
            displayName: Gateway
            kind: Gateway
            name: gateways.security.brcmlabs.com
            version: v1
          - description: L7Api is the Schema for the l7apis API
            displayName: L7 Api
            kind: L7Api
            name: l7apis.security.brcmlabs.com
            version: v1alpha1
          - description: L7Portal is the Schema for the l7portals API
            displayName: L7 Portal
            kind: L7Portal
            name: l7portals.security.brcmlabs.com
            version: v1alpha1
          - description: L7StateStore is the Schema for the l7statestores API
            displayName: L7 State Store
            kind: L7StateStore
            name: l7statestores.security.brcmlabs.com
            version: v1alpha1
          - description: Repository is the Schema for the repositories API
            displayName: Repository
            kind: Repository
            name: repositories.security.brcmlabs.com
            version: v1
        description: |
          The [Layer7 Operator](https://github.com/CAAPIM/layer7-operator) covers all aspects of deploying, maintaining and upgrading Layer7 API Gateways in Kubernetes. The Layer7 Operator is exclusive to Kubernetes and utilizes the Container Gateway with specific emphasis on running in Ephemeral mode (without an external MySQL policy database).

          ## Getting Started
          This [Getting Started](https://github.com/CAAPIM/layer7-operator/wiki/Getting-Started) guide covers a simple introduction to the Layer7 Operator. You can find more documentation [here](https://github.com/CAAPIM/layer7-operator/wiki).
        displayName: Layer7 Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - layer7-operator
        links:
        - name: Layer7 Operator
          url: https://github.com/caapim/layer7-operator
        maintainers:
        - email: gary.vermeulen@broadcom.com
          name: Gary Vermeulen
        maturity: alpha
        provider:
          name: Broadcom
          url: https://www.broadcom.com/
        relatedImages:
        - docker.io/caapim/layer7-operator:v1.2.2
        - quay.io/community-operator-pipeline-prod/layer7-operator:1.2.2
        - docker.io/caapim/gateway:11.1.3
        - docker.io/caapim/graphman-static-init:1.0.4
        version: 1.2.2
      entries:
      - name: layer7-operator.v1.2.2
        version: 1.2.2
      - name: layer7-operator.v1.2.1
        version: 1.2.1
      - name: layer7-operator.v1.2.0
        version: 1.2.0
      name: preview
    defaultChannel: preview
    packageName: layer7-operator
    provider:
      name: Broadcom
      url: https://www.broadcom.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: ibm-block-csi-operator-community
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-block-csi-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "IBMBlockCSI",
                "metadata": {
                  "name": "ibm-block-csi"
                },
                "spec": {
                  "controller": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-controller",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "node": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-node",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "sidecars": [
                    {
                      "name": "csi-node-driver-registrar",
                      "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                      "tag": "v2.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-provisioner",
                      "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                      "tag": "v4.0.1",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-attacher",
                      "repository": "registry.k8s.io/sig-storage/csi-attacher",
                      "tag": "v4.9.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-snapshotter",
                      "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                      "tag": "v8.3.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-resizer",
                      "repository": "registry.k8s.io/sig-storage/csi-resizer",
                      "tag": "v1.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-addons-replicator",
                      "repository": "quay.io/ibmcsiblock/csi-block-volumereplication-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-volume-group",
                      "repository": "quay.io/ibmcsiblock/csi-volume-group-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "livenessprobe",
                      "repository": "registry.k8s.io/sig-storage/livenessprobe",
                      "tag": "v2.16.0",
                      "imagePullPolicy": "IfNotPresent"
                    }
                  ]
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefinition",
                "metadata": {
                  "name": "host-definition"
                },
                "spec": {
                  "hostDefinition": {
                    "nodeName": "node-name"
                  }
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefiner",
                "metadata": {
                  "name": "host-definer"
                },
                "spec": {
                  "hostDefiner": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-host-definer",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage,Cloud Provider
          certified: "true"
          containerImage: quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
          createdAt: "2024-08-27T11:00:00Z"
          description: Run IBM block storage CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.openshift.io/valid-subscription: ""
          repository: https://github.com/IBM/ibm-block-csi-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a block storage CSI driver
            displayName: IBM block storage CSI driver
            kind: IBMBlockCSI
            name: ibmblockcsis.csi.ibm.com
            version: v1
          - description: Represents a Host Definition for IBM block storage
            displayName: IBM block storage Host Definition
            kind: HostDefinition
            name: hostdefinitions.csi.ibm.com
            version: v1
          - description: Represents Host Definer for block storage CSI driver
            displayName: IBM block storage Host Definer
            kind: HostDefiner
            name: hostdefiners.csi.ibm.com
            version: v1
        description: |
          The Container Storage Interface (CSI) Driver for IBM block storage systems enables container orchestrators such as Kubernetes to manage the life cycle of persistent storage.

          This is the official operator to deploy and manage IBM block storage CSI driver.

          For compatibility, prerequisites, release notes, and other user information, see [IBM block storage CSI driver documentation](https://www.ibm.com/docs/en/stg-block-csi-driver).
        displayName: IBM block storage CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - BlockStorage
        - CSI
        links:
        - name: Source Code
          url: https://github.com/IBM/ibm-block-csi-operator
        maintainers:
        - email: csi.block1@il.ibm.com
          name: IBM Block CSI Team
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: IBM
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ibm-block-csi-operator-community@sha256:34f608627ff14d9e24f222306f3a481982a82ecaddfb855dbadcb140bb7283a5
        - quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
        version: 1.13.0
      entries:
      - name: ibm-block-csi-operator.v1.13.0
        version: 1.13.0
      name: stable
    - currentCSV: ibm-block-csi-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "IBMBlockCSI",
                "metadata": {
                  "name": "ibm-block-csi"
                },
                "spec": {
                  "controller": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-controller",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "node": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-node",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "sidecars": [
                    {
                      "name": "csi-node-driver-registrar",
                      "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                      "tag": "v2.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-provisioner",
                      "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                      "tag": "v4.0.1",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-attacher",
                      "repository": "registry.k8s.io/sig-storage/csi-attacher",
                      "tag": "v4.9.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-snapshotter",
                      "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                      "tag": "v8.3.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-resizer",
                      "repository": "registry.k8s.io/sig-storage/csi-resizer",
                      "tag": "v1.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-addons-replicator",
                      "repository": "quay.io/ibmcsiblock/csi-block-volumereplication-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-volume-group",
                      "repository": "quay.io/ibmcsiblock/csi-volume-group-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "livenessprobe",
                      "repository": "registry.k8s.io/sig-storage/livenessprobe",
                      "tag": "v2.16.0",
                      "imagePullPolicy": "IfNotPresent"
                    }
                  ]
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefinition",
                "metadata": {
                  "name": "host-definition"
                },
                "spec": {
                  "hostDefinition": {
                    "nodeName": "node-name"
                  }
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefiner",
                "metadata": {
                  "name": "host-definer"
                },
                "spec": {
                  "hostDefiner": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-host-definer",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage,Cloud Provider
          certified: "true"
          containerImage: quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
          createdAt: "2024-08-27T11:00:00Z"
          description: Run IBM block storage CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.openshift.io/valid-subscription: ""
          repository: https://github.com/IBM/ibm-block-csi-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a block storage CSI driver
            displayName: IBM block storage CSI driver
            kind: IBMBlockCSI
            name: ibmblockcsis.csi.ibm.com
            version: v1
          - description: Represents a Host Definition for IBM block storage
            displayName: IBM block storage Host Definition
            kind: HostDefinition
            name: hostdefinitions.csi.ibm.com
            version: v1
          - description: Represents Host Definer for block storage CSI driver
            displayName: IBM block storage Host Definer
            kind: HostDefiner
            name: hostdefiners.csi.ibm.com
            version: v1
        description: |
          The Container Storage Interface (CSI) Driver for IBM block storage systems enables container orchestrators such as Kubernetes to manage the life cycle of persistent storage.

          This is the official operator to deploy and manage IBM block storage CSI driver.

          For compatibility, prerequisites, release notes, and other user information, see [IBM block storage CSI driver documentation](https://www.ibm.com/docs/en/stg-block-csi-driver).
        displayName: IBM block storage CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - BlockStorage
        - CSI
        links:
        - name: Source Code
          url: https://github.com/IBM/ibm-block-csi-operator
        maintainers:
        - email: csi.block1@il.ibm.com
          name: IBM Block CSI Team
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: IBM
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ibm-block-csi-operator-community@sha256:34f608627ff14d9e24f222306f3a481982a82ecaddfb855dbadcb140bb7283a5
        - quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
        version: 1.13.0
      entries:
      - name: ibm-block-csi-operator.v1.13.0
        version: 1.13.0
      name: stable-v1.13
    - currentCSV: ibm-block-csi-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "IBMBlockCSI",
                "metadata": {
                  "name": "ibm-block-csi"
                },
                "spec": {
                  "controller": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-controller",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "node": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-driver-node",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  },
                  "sidecars": [
                    {
                      "name": "csi-node-driver-registrar",
                      "repository": "registry.k8s.io/sig-storage/csi-node-driver-registrar",
                      "tag": "v2.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-provisioner",
                      "repository": "registry.k8s.io/sig-storage/csi-provisioner",
                      "tag": "v4.0.1",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-attacher",
                      "repository": "registry.k8s.io/sig-storage/csi-attacher",
                      "tag": "v4.9.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-snapshotter",
                      "repository": "registry.k8s.io/sig-storage/csi-snapshotter",
                      "tag": "v8.3.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-resizer",
                      "repository": "registry.k8s.io/sig-storage/csi-resizer",
                      "tag": "v1.14.0",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-addons-replicator",
                      "repository": "quay.io/ibmcsiblock/csi-block-volumereplication-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "csi-volume-group",
                      "repository": "quay.io/ibmcsiblock/csi-volume-group-operator",
                      "tag": "v0.9.3",
                      "imagePullPolicy": "IfNotPresent"
                    },
                    {
                      "name": "livenessprobe",
                      "repository": "registry.k8s.io/sig-storage/livenessprobe",
                      "tag": "v2.16.0",
                      "imagePullPolicy": "IfNotPresent"
                    }
                  ]
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefinition",
                "metadata": {
                  "name": "host-definition"
                },
                "spec": {
                  "hostDefinition": {
                    "nodeName": "node-name"
                  }
                }
              },
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "HostDefiner",
                "metadata": {
                  "name": "host-definer"
                },
                "spec": {
                  "hostDefiner": {
                    "repository": "quay.io/ibmcsiblock/ibm-block-csi-host-definer",
                    "tag": "1.13.0",
                    "imagePullPolicy": "IfNotPresent",
                    "affinity": {
                      "nodeAffinity": {
                        "requiredDuringSchedulingIgnoredDuringExecution": {
                          "nodeSelectorTerms": [
                            {
                              "matchExpressions": [
                                {
                                  "key": "kubernetes.io/arch",
                                  "operator": "In",
                                  "values": [
                                    "amd64",
                                    "s390x",
                                    "ppc64le"
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage,Cloud Provider
          certified: "true"
          containerImage: quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
          createdAt: "2024-08-27T11:00:00Z"
          description: Run IBM block storage CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.openshift.io/valid-subscription: ""
          repository: https://github.com/IBM/ibm-block-csi-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a block storage CSI driver
            displayName: IBM block storage CSI driver
            kind: IBMBlockCSI
            name: ibmblockcsis.csi.ibm.com
            version: v1
          - description: Represents a Host Definition for IBM block storage
            displayName: IBM block storage Host Definition
            kind: HostDefinition
            name: hostdefinitions.csi.ibm.com
            version: v1
          - description: Represents Host Definer for block storage CSI driver
            displayName: IBM block storage Host Definer
            kind: HostDefiner
            name: hostdefiners.csi.ibm.com
            version: v1
        description: |
          The Container Storage Interface (CSI) Driver for IBM block storage systems enables container orchestrators such as Kubernetes to manage the life cycle of persistent storage.

          This is the official operator to deploy and manage IBM block storage CSI driver.

          For compatibility, prerequisites, release notes, and other user information, see [IBM block storage CSI driver documentation](https://www.ibm.com/docs/en/stg-block-csi-driver).
        displayName: IBM block storage CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - BlockStorage
        - CSI
        links:
        - name: Source Code
          url: https://github.com/IBM/ibm-block-csi-operator
        maintainers:
        - email: csi.block1@il.ibm.com
          name: IBM Block CSI Team
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: IBM
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ibm-block-csi-operator-community@sha256:34f608627ff14d9e24f222306f3a481982a82ecaddfb855dbadcb140bb7283a5
        - quay.io/ibmcsiblock/ibm-block-csi-operator@sha256:d6498d12891a06201013d47bd18e882513ccf7a43cc4b99eedd111497f0a8b74
        version: 1.13.0
      entries:
      - name: ibm-block-csi-operator.v1.13.0
        version: 1.13.0
      name: stable-v1.13.0
    defaultChannel: stable
    packageName: ibm-block-csi-operator-community
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-s3control-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-s3control-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/s3control-controller:1.2.0
          createdAt: "2025-11-29T03:56:06Z"
          description: AWS S3 Control controller is a service controller for managing
            S3 Control resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AccessPoint represents the state of an AWS s3control AccessPoint
              resource.
            displayName: AccessPoint
            kind: AccessPoint
            name: accesspoints.s3control.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon S3 Control resources in AWS from within your Kubernetes cluster.

          **About Amazon S3 Control**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon S3 Control
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - s3control
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon S3 Control Developer Resources
          url: https://aws.amazon.com/S3 Control/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: s3control maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/s3control-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-s3control-controller@sha256:9d6407d14686ee07e5c704e7fa78b09e4f493b2e62b186541fb5d0c22f98364f
        version: 1.2.0
      entries:
      - name: ack-s3control-controller.v1.2.0
        version: 1.2.0
      - name: ack-s3control-controller.v1.1.2
        version: 1.1.2
      - name: ack-s3control-controller.v1.1.1
        version: 1.1.1
      - name: ack-s3control-controller.v1.1.0
        version: 1.1.0
      - name: ack-s3control-controller.v1.0.11
        version: 1.0.11
      - name: ack-s3control-controller.v1.0.10
        version: 1.0.10
      name: alpha
    defaultChannel: alpha
    packageName: ack-s3control-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Intel Corporation
      provider-url: https://builders.intel.com/docs/networkbuilders/intel-vran-dedicated-accelerator-acc100-product-brief.pdf
    name: sriov-fec
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sriov-fec.v2.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecClusterConfig",
                "metadata": {
                  "name": "acc100SampleConfig",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "acceleratorSelector": {
                    "deviceID": "someDevice",
                    "driver": "someDriver",
                    "maxVirtualFunctions": 2,
                    "pciAddress": "somePciAddress",
                    "vendorID": "someVendor"
                  },
                  "drainSkip": false,
                  "nodeSelector": {
                    "expectedLabel1": "valueOfExpectedLabel1",
                    "expectedLabelN": "valueOfExpectedLabelN"
                  },
                  "physicalFunction": {
                    "bbDevConfig": {
                      "acc100": {
                        "downlink4G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 0
                        },
                        "downlink5G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 4
                        },
                        "maxQueueSize": 1024,
                        "numVfBundles": 16,
                        "pfMode": true,
                        "uplink4G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 0
                        },
                        "uplink5G": {
                          "aqDepthLog2": 4,
                          "numAqsPerGroups": 16,
                          "numQueueGroups": 4
                        }
                      }
                    },
                    "pfDriver": "pci-pf-stub",
                    "vfAmount": 2,
                    "vfDriver": "vfio-pci"
                  },
                  "priority": 100
                }
              },
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecClusterConfig",
                "metadata": {
                  "name": "n3000SampleConfig",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "acceleratorSelector": {
                    "deviceID": "someDevice",
                    "driver": "someDriver",
                    "maxVirtualFunctions": 2,
                    "pciAddress": "somePciAddress",
                    "vendorID": "someVendor"
                  },
                  "drainSkip": false,
                  "nodeSelector": {
                    "expectedLabel1": "valueOfExpectedLabel1",
                    "expectedLabelN": "valueOfExpectedLabelN"
                  },
                  "physicalFunction": {
                    "bbDevConfig": {
                      "n3000": {
                        "downlink": {
                          "bandwidth": 3,
                          "loadBalance": 128,
                          "queues": {
                            "vf0": 16,
                            "vf1": 16,
                            "vf2": 0,
                            "vf3": 0,
                            "vf4": 0,
                            "vf5": 0,
                            "vf6": 0,
                            "vf7": 0
                          }
                        },
                        "flrTimeout": 610,
                        "networkType": "FPGA_5GNR",
                        "pfMode": true,
                        "uplink": {
                          "bandwidth": 3,
                          "loadBalance": 128,
                          "queues": {
                            "vf0": 16,
                            "vf1": 16,
                            "vf2": 0,
                            "vf3": 0,
                            "vf4": 0,
                            "vf5": 0,
                            "vf6": 0,
                            "vf7": 0
                          }
                        }
                      }
                    },
                    "pfDriver": "pci-pf-stub",
                    "vfAmount": 2,
                    "vfDriver": "vfio-pci"
                  },
                  "priority": 100
                }
              },
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecNodeConfig",
                "metadata": {
                  "name": "acc100-worker",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "drainSkip": false,
                  "physicalFunctions": [
                    {
                      "bbDevConfig": {
                        "acc100": {
                          "downlink4G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 0
                          },
                          "downlink5G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 4
                          },
                          "maxQueueSize": 1024,
                          "numVfBundles": 16,
                          "pfMode": true,
                          "uplink4G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 0
                          },
                          "uplink5G": {
                            "aqDepthLog2": 4,
                            "numAqsPerGroups": 16,
                            "numQueueGroups": 4
                          }
                        }
                      },
                      "pci_addr": "somePciAddress",
                      "pf_driver": "pci-pf-stub",
                      "vf_amount": 2,
                      "vf_driver": "vfio-pci"
                    }
                  ]
                }
              },
              {
                "apiVersion": "sriovfec.intel.com/v2",
                "kind": "SriovFecNodeConfig",
                "metadata": {
                  "name": "n3000-worker",
                  "namespace": "vran-acceleration-operators"
                },
                "spec": {
                  "drainSkip": false,
                  "physicalFunctions": [
                    {
                      "bbDevConfig": {
                        "n3000": {
                          "downlink": {
                            "bandwidth": 3,
                            "loadBalance": 128,
                            "queues": {
                              "vf0": 16,
                              "vf1": 16,
                              "vf2": 0,
                              "vf3": 0,
                              "vf4": 0,
                              "vf5": 0,
                              "vf6": 0,
                              "vf7": 0
                            }
                          },
                          "flrTimeout": 610,
                          "networkType": "FPGA_5GNR",
                          "pfMode": true,
                          "uplink": {
                            "bandwidth": 3,
                            "loadBalance": 128,
                            "queues": {
                              "vf0": 16,
                              "vf1": 16,
                              "vf2": 0,
                              "vf3": 0,
                              "vf4": 0,
                              "vf5": 0,
                              "vf6": 0,
                              "vf7": 0
                            }
                          }
                        }
                      },
                      "pci_addr": "somePciAddress",
                      "pf_driver": "pci-pf-stub",
                      "vf_amount": 2,
                      "vf_driver": "vfio-pci"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/intel/sriov-fec-operator@sha256:adb6a4c2da6399c8ed40c906f790bce13bfcefae3326a047f6a50592b3f5e485
          createdAt: "2025-01-15"
          description: An operator for Intel Wireless FEC Accelerator to orchestrate
            and manage the resources/devices exposed by a range of Intel's vRAN FEC
            acceleration devices/hardware within the OpenShift cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/intel/sriov-fec-operator
          support: Intel Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SriovFecClusterConfig is the Schema for the sriovfecclusterconfigs
              API
            displayName: SriovFecClusterConfig
            kind: SriovFecClusterConfig
            name: sriovfecclusterconfigs.sriovfec.intel.com
            version: v2
          - description: SriovFecNodeConfig is the Schema for the sriovfecnodeconfigs
              API
            displayName: SriovFecNodeConfig
            kind: SriovFecNodeConfig
            name: sriovfecnodeconfigs.sriovfec.intel.com
            version: v2
          - description: SriovVrbClusterConfig is the Schema for the sriovvrbclusterconfigs
              API
            displayName: SriovVrbClusterConfig
            kind: SriovVrbClusterConfig
            name: sriovvrbclusterconfigs.sriovvrb.intel.com
            version: v1
          - description: SriovVrbNodeConfig is the Schema for the sriovvrbnodeconfigs
              API
            displayName: SriovVrbNodeConfig
            kind: SriovVrbNodeConfig
            name: sriovvrbnodeconfigs.sriovvrb.intel.com
            version: v1
        description: The Intel vRAN Boost family of accelerators ACC100/VRB1/VRB2,
          to offload and accelerate the computing-intensive process of forward error
          correction (FEC) and more for 4G/LTE and 5G technology, freeing up processing
          power. It allows the optimization of data plane performance to reduce total
          cost of ownership while maintaining a high degree of flexibility.  The Intel
          vRAN Boost accelerators ACC100/VRB1/VRB2 plays a key role in accelerating
          5G and network functions virtualization (NFV) adoption for ecosystem partners
          such as telecommunications equipment manufacturers (TEMs) virtual network
          functions (VNF) vendors, system integrators and telcos, to bring scalable
          and high-performance solutions to market. The Intel ACC100 includes a variant
          that is design to be Network Equipment Building System (NEBS)-friendly,
          and features a Root-of-Trust device that helps protect systems from FPGA
          host security exploits.
        displayName: SRIOV-FEC Operator for Intel vRAN Boost Accelerators
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ACC100
        - vRAN
        - ORAN
        links:
        - name: SRIOV-FEC source code
          url: https://github.com/intel/sriov-fec-operator
        maturity: alpha
        provider:
          name: Intel Corporation
          url: https://builders.intel.com/docs/networkbuilders/intel-vran-dedicated-accelerator-acc100-product-brief.pdf
        relatedImages:
        - registry.connect.redhat.com/intel/n3000-labeler@sha256:b417cfcedc998a35491784005cc7eee3d9c647b84eac5ca41cb459076870b8f6
        - registry.connect.redhat.com/intel/sriov-fec-daemon@sha256:5b0c60b67bcf5d7b2797deab0d5e3fa079577179f0acc6b0062533584ea0bc23
        - registry.connect.redhat.com/intel/sriov-fec-operator-bundle@sha256:c30849cbf451eb016786bc367e3716389b1d45676ad298c4de6a492c7bb00f4f
        - registry.connect.redhat.com/intel/sriov-fec-operator@sha256:adb6a4c2da6399c8ed40c906f790bce13bfcefae3326a047f6a50592b3f5e485
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:1ed3b514bf9af6ac0d386e3739874d1d964e667d54e041c2d67edd769b0009fb
        - registry.redhat.io/openshift4/ose-sriov-network-device-plugin@sha256:d0fcb6e9135d9a19ea26851bcdb4ac72c04bd747706fc5123020460e9dbfc21b
        version: 2.11.1
      entries:
      - name: sriov-fec.v2.11.1
        version: 2.11.1
      - name: sriov-fec.v2.11.0
        version: 2.11.0
      - name: sriov-fec.v2.10.0
        version: 2.10.0
      - name: sriov-fec.v2.9.0
        version: 2.9.0
      - name: sriov-fec.v2.8.0
        version: 2.8.0
      - name: sriov-fec.v2.7.2
        version: 2.7.2
      - name: sriov-fec.v2.7.1
        version: 2.7.1
      name: stable
    defaultChannel: stable
    packageName: sriov-fec
    provider:
      name: Intel Corporation
      url: https://builders.intel.com/docs/networkbuilders/intel-vran-dedicated-accelerator-acc100-product-brief.pdf
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: node-maintenance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-maintenance-operator.v0.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodemaintenance.medik8s.io/v1beta1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "nodeName": "node02",
                  "reason": "Test node maintenance"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/node-maintenance-operator:v0.19.0
          createdAt: "2025-11-24 11:25:52"
          description: Node Maintenance Operator for cordoning and draining nodes.
          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.skipRange: '>=0.12.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-maintenance-operator
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.nodemaintenance.medik8s.io
            version: v1beta1
        description: |
          Node Maintenance Operator (NMO)

          This operator will keep nodes cordoned and drained while a matching NodeMaintenance (nm) custom resource exists.
          This is useful when investigating problems with a machine, or performing an operation on the underlying machine that might result in node failure.
        displayName: Node Maintenance Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - Node-maintenance
        - nmo
        links:
        - name: Node Maintenance Operator
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/node-maintenance-operator
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: beta
        minKubeVersion: 1.23.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/community-operator-pipeline-prod/node-maintenance-operator@sha256:8074aa66432f27565fefdd0e0354c6f1cc0727cbe5a51037a716e0f0c4c1f750
        - quay.io/medik8s/node-maintenance-operator:v0.19.0
        version: 0.19.0
      entries:
      - name: node-maintenance-operator.v0.19.0
        version: 0.19.0
      - name: node-maintenance-operator.v0.18.0
        version: 0.18.0
      - name: node-maintenance-operator.v0.17.0
        version: 0.17.0
      - name: node-maintenance-operator.v0.16.1
        version: 0.16.1
      - name: node-maintenance-operator.v0.16.0
        version: 0.16.0
      - name: node-maintenance-operator.v0.15.0
        version: 0.15.0
      - name: node-maintenance-operator.v0.14.0
        version: 0.14.0
      - name: node-maintenance-operator.v0.13.0
        version: 0.13.0
      - name: node-maintenance-operator.v0.12.1
        version: 0.12.1
      name: stable
    defaultChannel: stable
    packageName: node-maintenance-operator
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Apache Software Foundation
      provider-url: ""
    name: camel-karavan-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: camel-karavan-operator.v3.20.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Karavan",
                "metadata": {
                  "labels": {
                    "app": "karavan"
                  },
                  "name": "karavan"
                },
                "spec": {
                  "instances": 1,
                  "auth": "public",
                  "environment": "dev",
                  "runtimes": "quarkus,spring-boot",
                  "gitPullInterval": "10s"
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          containerImage: ghcr.io/apache/camel-karavan-operator:3.20.1
          repository: https://github.com/apache/camel-karavan
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Karavan
            name: karavans.camel.apache.org
            version: v1
        description: |
          Apache Camel Karavan
          ====================
          Karavan is an Integration Toolkit for Apache Camel, which makes integration easy and fun through the visualization of pipelines,
          integration with runtimes and package, image build and deploy to kubernetes out-of-the-box.

          ## Installation

          1. Install Apache Camel Karavan Operator
          2. Install Tekton operator
          3. Create namespace, ex: `karavan`
          4. Create `Secret` in the namespace, ex:
          ```
          kind: Secret
          apiVersion: v1
          metadata:
            name: karavan
            namespace: karavan
          type: Opaque
          stringData:
            master-password: karavan
            oidc-secret: secret
            oidc-server-url: https://hostname/auth/realms/karavan
            oidc-frontend-url: https://hostname/auth
            git-repository: https://github.com/repository/projects.git
            git-password: password
            git-username: username
            git-branch: main
            image-registry: image-registry.openshift-image-registry.svc:5000
          ```
          5. Create `Karavan` instance in the namespace, ex:
          ```
          apiVersion: camel.apache.org/v1
          kind: Karavan
          metadata:
            name: karavan
            namespace: karavan
          spec:
            instances: 1
            auth: public
            environment: dev
            runtimes: quarkus,spring-boot
            gitPullInterval: 10s
          ```
        displayName: Camel Karavan Operator
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - camel
        - karavan
        - integration
        - microservices
        - low-code
        links:
        - name: Apache Camel Karavan source code repository
          url: https://github.com/apache/camel-karavan
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - ghcr.io/apache/camel-karavan-operator:3.20.1
        - quay.io/openshift-community-operators/camel-karavan-operator@sha256:6dc78ecdf6e1936872626c02d41986d6553c1500002d85692c97e86fa77c129d
        version: 3.20.1
      entries:
      - name: camel-karavan-operator.v3.20.1
        version: 3.20.1
      - name: camel-karavan-operator.v3.20.0
        version: 3.20.0
      - name: camel-karavan-operator.v3.18.5
        version: 3.18.5
      name: alpha
    defaultChannel: alpha
    packageName: camel-karavan-operator
    provider:
      name: The Apache Software Foundation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-efs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-efs-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "efs.services.k8s.aws/v1alpha1",
                "kind": "AccessPoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "efs.services.k8s.aws/v1alpha1",
                "kind": "FileSystem",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "efs.services.k8s.aws/v1alpha1",
                "kind": "MountTarget",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/efs-controller:1.2.0
          createdAt: "2025-11-29T03:26:52Z"
          description: AWS EFS controller is a service controller for managing EFS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AccessPoint represents the state of an AWS efs AccessPoint
              resource.
            displayName: AccessPoint
            kind: AccessPoint
            name: accesspoints.efs.services.k8s.aws
            version: v1alpha1
          - description: FileSystem represents the state of an AWS efs FileSystem
              resource.
            displayName: FileSystem
            kind: FileSystem
            name: filesystems.efs.services.k8s.aws
            version: v1alpha1
          - description: MountTarget represents the state of an AWS efs MountTarget
              resource.
            displayName: MountTarget
            kind: MountTarget
            name: mounttargets.efs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EFS resources in AWS from within your Kubernetes cluster.

          **About Amazon Elastic File System (Amazon EFS)**

          Amazon Elastic File System (Amazon EFS) provides serverless, fully elastic file storage so that you can share file data without provisioning or managing storage capacity and performance. Amazon EFS is built to scale on demand to petabytes without disrupting applications, growing and shrinking automatically as you add and remove files. Because Amazon EFS has a simple web services interface, you can create and configure file systems quickly and easily. The service manages all the file storage infrastructure for you, meaning that you can avoid the complexity of deploying, patching, and maintaining complex file system configurations.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Elastic File System (Amazon
          EFS)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - efs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EFS Developer Resources
          url: https://aws.amazon.com/efs/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: efs maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/efs-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-efs-controller@sha256:6b4bdb765f656e6fef9d1d27889dd0d6ec2a102190a50590e6c4bca65e928808
        version: 1.2.0
      entries:
      - name: ack-efs-controller.v1.2.0
        version: 1.2.0
      - name: ack-efs-controller.v1.1.2
        version: 1.1.2
      - name: ack-efs-controller.v1.1.1
        version: 1.1.1
      - name: ack-efs-controller.v1.1.0
        version: 1.1.0
      - name: ack-efs-controller.v1.0.19
        version: 1.0.19
      - name: ack-efs-controller.v1.0.18
        version: 1.0.18
      - name: ack-efs-controller.v1.0.17
        version: 1.0.17
      - name: ack-efs-controller.v1.0.16
        version: 1.0.16
      - name: ack-efs-controller.v1.0.15
        version: 1.0.15
      - name: ack-efs-controller.v1.0.14
        version: 1.0.14
      - name: ack-efs-controller.v1.0.13
        version: 1.0.13
      - name: ack-efs-controller.v1.0.12
        version: 1.0.12
      - name: ack-efs-controller.v1.0.11
        version: 1.0.11
      - name: ack-efs-controller.v1.0.10
        version: 1.0.10
      - name: ack-efs-controller.v1.0.8
        version: 1.0.8
      - name: ack-efs-controller.v1.0.6
        version: 1.0.6
      - name: ack-efs-controller.v1.0.5
        version: 1.0.5
      - name: ack-efs-controller.v1.0.3
        version: 1.0.3
      - name: ack-efs-controller.v1.0.2
        version: 1.0.2
      - name: ack-efs-controller.v1.0.0
        version: 1.0.0
      - name: ack-efs-controller.v0.0.9
        version: 0.0.9
      - name: ack-efs-controller.v0.0.8
        version: 0.0.8
      - name: ack-efs-controller.v0.0.7
        version: 0.0.7
      - name: ack-efs-controller.v0.0.6
        version: 0.0.6
      - name: ack-efs-controller.v0.0.5
        version: 0.0.5
      - name: ack-efs-controller.v0.0.4
        version: 0.0.4
      name: alpha
    defaultChannel: alpha
    packageName: ack-efs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: The cert-manager maintainers
      provider-url: https://cert-manager.io/
    name: cert-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cert-manager.v1.16.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "example-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "example-clusterissuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "example-certificate"
                },
                "spec": {
                  "dnsNames": [
                    "example.com"
                  ],
                  "issuerRef": {
                    "name": "example-issuer"
                  },
                  "secretName": "example-certificate-tls"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "name": "example-certificaterequest"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "name": "example-order"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "example-challenge"
                },
                "spec": {}
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: quay.io/jetstack/cert-manager-controller:v1.16.5
          createdAt: 2025-05-02T09:11:31
          olm.skipRange: '>=1.16.0 <1.16.5'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/internal-objects: |-
            [
              "challenges.acme.cert-manager.io",
              "orders.acme.cert-manager.io"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/cert-manager/cert-manager
          support: The cert-manager maintainers
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: (Internal) Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: Order is a type to represent an Order with an ACME server
            displayName: (Internal) Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          cert-manager is a Kubernetes add-on to automate the management and issuance of TLS certificates from various issuing sources.
          It will ensure certificates are valid and up to date periodically, and attempt to renew certificates at an appropriate time before expiry.

          cert-manager has the following [built in issuers][]:

          * ACME: sign certificates using Let's Encrypt (or any other [ACME][] compliant signer).
          * Vault: sign certificates using HashiCorp Vault.
          * Venafi: sign certificates using Venafi Cloud or Venafi Trust Protection Platform.
          * SelfSigned: the private key of the certificate will be used to sign the certificate.
          * CA: a private key stored as a Kubernetes Secret will be used to sign the certificate.

          [built in issuers]: https://cert-manager.io/docs/configuration/#supported-issuer-types
          [ACME]: https://datatracker.ietf.org/doc/html/rfc8555

          cert-manager also supports [external issuers][],
          which are out-of-tree components that provide support for other certificate authorities, such as:
          [Google Cloud Certificate Authority](https://github.com/jetstack/google-cas-issuer),
          [AWS Private Certificate Authority](https://github.com/cert-manager/aws-privateca-issuer), and
          [Cloudflare Origin CA](https://github.com/cloudflare/origin-ca-issuer)

          [external issuers]: https://cert-manager.io/docs/configuration/external/

          In order to configure cert-manager to issue certificates, you must first create an Issuer or ClusterIssuer.
          These resources represent a particular signing authority and tell cert-manager how to handle your certificate requests.
          The [Issuer Documentation][] has more detail.

          [configure cert-manager]: https://cert-manager.io/docs/configuration/
          [Issuer Documentation]: https://cert-manager.io/docs/concepts/issuer/

          Once an Issuer has been configured, you can create a Certificate resource,
          which is a definition of a certificate request that is to be honored by an issuer
          and which is to be kept up-to-date.
          This is the usual way that you will interact with cert-manager to request signed certificates.
          The [Certificate Documentation][] has more detail.

          [Certificate Documentation]: https://cert-manager.io/docs/usage/certificate/
        displayName: cert-manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TLS
        - secrets
        - security
        - certificates
        links:
        - name: Documentation
          url: https://cert-manager.io/
        - name: Release Notes
          url: https://cert-manager.io/docs/release-notes
        maintainers:
        - email: cert-manager-maintainers@googlegroups.com
          name: The cert-manager maintainers
        maturity: stable
        minKubeVersion: 1.19.0-0
        provider:
          name: The cert-manager maintainers
          url: https://cert-manager.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cert-manager@sha256:d8037cd7653b257737cec92308042cf71d559c6c2886d07b1879b5e432eeebcd
        - quay.io/jetstack/cert-manager-cainjector:v1.16.5
        - quay.io/jetstack/cert-manager-controller:v1.16.5
        - quay.io/jetstack/cert-manager-webhook:v1.16.5
        version: 1.16.5
      entries:
      - name: cert-manager.v1.16.5
        version: 1.16.5
      - name: cert-manager.v1.16.1
        version: 1.16.1
      - name: cert-manager.v1.16.0-beta.0
        version: 1.16.0-beta.0
      - name: cert-manager.v1.15.2
        version: 1.15.2
      - name: cert-manager.v1.15.0
        version: 1.15.0
      - name: cert-manager.v1.14.2
        version: 1.14.2
      - name: cert-manager.v1.14.2-rc1
        version: 1.14.2-rc1
      - name: cert-manager.v1.14.1-rc1
        version: 1.14.1-rc1
      - name: cert-manager.v1.13.3
        version: 1.13.3
      - name: cert-manager.v1.13.3-rc1
        version: 1.13.3-rc1
      - name: cert-manager.v1.13.1
        version: 1.13.1
      - name: cert-manager.v1.13.1-rc1
        version: 1.13.1-rc1
      - name: cert-manager.v1.12.2
        version: 1.12.2
      - name: cert-manager.v1.12.2-rc1
        version: 1.12.2-rc1
      - name: cert-manager.v1.11.4
        version: 1.11.4
      - name: cert-manager.v1.11.4-rc1
        version: 1.11.4-rc1
      - name: cert-manager.v1.11.3-rc1
        version: 1.11.3-rc1
      - name: cert-manager.v1.11.0
        version: 1.11.0
      - name: cert-manager.v1.11.0-rc1
        version: 1.11.0-rc1
      - name: cert-manager.v1.10.2
        version: 1.10.2
      - name: cert-manager.v1.10.2-rc1
        version: 1.10.2-rc1
      - name: cert-manager.v1.10.1
        version: 1.10.1
      - name: cert-manager.v1.10.1-rc1
        version: 1.10.1-rc1
      - name: cert-manager.v1.10.0
        version: 1.10.0
      - name: cert-manager.v1.10.0-rc1
        version: 1.10.0-rc1
      - name: cert-manager.v1.9.1
        version: 1.9.1
      - name: cert-manager.v1.9.1-rc1
        version: 1.9.1-rc1
      - name: cert-manager.v1.8.2
        version: 1.8.2
      - name: cert-manager.v1.8.2-rc1
        version: 1.8.2-rc1
      - name: cert-manager.v1.8.0
        version: 1.8.0
      - name: cert-manager.v1.8.0-rc1
        version: 1.8.0-rc1
      - name: cert-manager.v1.7.2
        version: 1.7.2
      - name: cert-manager.v1.7.1
        version: 1.7.1
      - name: cert-manager.v1.7.1-rc1
        version: 1.7.1-rc1
      - name: cert-manager.v1.6.2
        version: 1.6.2
      - name: cert-manager.v1.6.2-rc1
        version: 1.6.2-rc1
      name: candidate
    - currentCSV: cert-manager.v1.16.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "example-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "example-clusterissuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "example-certificate"
                },
                "spec": {
                  "dnsNames": [
                    "example.com"
                  ],
                  "issuerRef": {
                    "name": "example-issuer"
                  },
                  "secretName": "example-certificate-tls"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "name": "example-certificaterequest"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "name": "example-order"
                },
                "spec": {}
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "example-challenge"
                },
                "spec": {}
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: quay.io/jetstack/cert-manager-controller:v1.16.5
          createdAt: 2025-05-02T09:11:31
          olm.skipRange: '>=1.16.0 <1.16.5'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/internal-objects: |-
            [
              "challenges.acme.cert-manager.io",
              "orders.acme.cert-manager.io"
            ]
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/cert-manager/cert-manager
          support: The cert-manager maintainers
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: (Internal) Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: Order is a type to represent an Order with an ACME server
            displayName: (Internal) Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          cert-manager is a Kubernetes add-on to automate the management and issuance of TLS certificates from various issuing sources.
          It will ensure certificates are valid and up to date periodically, and attempt to renew certificates at an appropriate time before expiry.

          cert-manager has the following [built in issuers][]:

          * ACME: sign certificates using Let's Encrypt (or any other [ACME][] compliant signer).
          * Vault: sign certificates using HashiCorp Vault.
          * Venafi: sign certificates using Venafi Cloud or Venafi Trust Protection Platform.
          * SelfSigned: the private key of the certificate will be used to sign the certificate.
          * CA: a private key stored as a Kubernetes Secret will be used to sign the certificate.

          [built in issuers]: https://cert-manager.io/docs/configuration/#supported-issuer-types
          [ACME]: https://datatracker.ietf.org/doc/html/rfc8555

          cert-manager also supports [external issuers][],
          which are out-of-tree components that provide support for other certificate authorities, such as:
          [Google Cloud Certificate Authority](https://github.com/jetstack/google-cas-issuer),
          [AWS Private Certificate Authority](https://github.com/cert-manager/aws-privateca-issuer), and
          [Cloudflare Origin CA](https://github.com/cloudflare/origin-ca-issuer)

          [external issuers]: https://cert-manager.io/docs/configuration/external/

          In order to configure cert-manager to issue certificates, you must first create an Issuer or ClusterIssuer.
          These resources represent a particular signing authority and tell cert-manager how to handle your certificate requests.
          The [Issuer Documentation][] has more detail.

          [configure cert-manager]: https://cert-manager.io/docs/configuration/
          [Issuer Documentation]: https://cert-manager.io/docs/concepts/issuer/

          Once an Issuer has been configured, you can create a Certificate resource,
          which is a definition of a certificate request that is to be honored by an issuer
          and which is to be kept up-to-date.
          This is the usual way that you will interact with cert-manager to request signed certificates.
          The [Certificate Documentation][] has more detail.

          [Certificate Documentation]: https://cert-manager.io/docs/usage/certificate/
        displayName: cert-manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TLS
        - secrets
        - security
        - certificates
        links:
        - name: Documentation
          url: https://cert-manager.io/
        - name: Release Notes
          url: https://cert-manager.io/docs/release-notes
        maintainers:
        - email: cert-manager-maintainers@googlegroups.com
          name: The cert-manager maintainers
        maturity: stable
        minKubeVersion: 1.19.0-0
        provider:
          name: The cert-manager maintainers
          url: https://cert-manager.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cert-manager@sha256:d8037cd7653b257737cec92308042cf71d559c6c2886d07b1879b5e432eeebcd
        - quay.io/jetstack/cert-manager-cainjector:v1.16.5
        - quay.io/jetstack/cert-manager-controller:v1.16.5
        - quay.io/jetstack/cert-manager-webhook:v1.16.5
        version: 1.16.5
      entries:
      - name: cert-manager.v1.16.5
        version: 1.16.5
      - name: cert-manager.v1.16.1
        version: 1.16.1
      - name: cert-manager.v1.15.2
        version: 1.15.2
      - name: cert-manager.v1.15.0
        version: 1.15.0
      - name: cert-manager.v1.14.2
        version: 1.14.2
      - name: cert-manager.v1.13.3
        version: 1.13.3
      - name: cert-manager.v1.13.1
        version: 1.13.1
      - name: cert-manager.v1.13.1-rc1
        version: 1.13.1-rc1
      - name: cert-manager.v1.12.2
        version: 1.12.2
      - name: cert-manager.v1.11.4
        version: 1.11.4
      - name: cert-manager.v1.11.0
        version: 1.11.0
      - name: cert-manager.v1.10.2
        version: 1.10.2
      - name: cert-manager.v1.10.1
        version: 1.10.1
      - name: cert-manager.v1.10.0
        version: 1.10.0
      - name: cert-manager.v1.9.1
        version: 1.9.1
      - name: cert-manager.v1.8.2
        version: 1.8.2
      - name: cert-manager.v1.8.0
        version: 1.8.0
      - name: cert-manager.v1.7.2
        version: 1.7.2
      - name: cert-manager.v1.7.1
        version: 1.7.1
      - name: cert-manager.v1.6.2
        version: 1.6.2
      - name: cert-manager.v1.6.1
        version: 1.6.1
      - name: cert-manager.v1.6.0
        version: 1.6.0
      - name: cert-manager.v1.5.4
        version: 1.5.4
      - name: cert-manager.v1.5.3
        version: 1.5.3
      - name: cert-manager.v1.4.4
        version: 1.4.4
      - name: cert-manager.v1.4.3
        version: 1.4.3
      - name: cert-manager.v1.4.2
        version: 1.4.2
      - name: cert-manager.v1.4.1
        version: 1.4.1
      - name: cert-manager.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: cert-manager
    provider:
      name: The cert-manager maintainers
      url: https://cert-manager.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: project-quay
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: quay-operator.v3.10.0-nightly.20231014
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.10.0-nightly.20231014
          createdAt: 2023-10-14 06:26 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.10.0-nightly.20231014'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.10.0-nightly.20231014
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:add5d14653f57ac1e3254c2d1c70fc9232959f76ee6286fe5cb572696a5a4fd3
        - quay.io/projectquay/quay-operator:3.10.0-nightly.20231014
        version: 3.10.0-nightly.20231014
      entries:
      - name: quay-operator.v3.10.0-nightly.20231014
        version: 3.10.0-nightly.20231014
      - name: quay-operator.v3.10.0-nightly.20231013
        version: 3.10.0-nightly.20231013
      - name: quay-operator.v3.10.0-nightly.20231012
        version: 3.10.0-nightly.20231012
      - name: quay-operator.v3.10.0-nightly.20231011
        version: 3.10.0-nightly.20231011
      - name: quay-operator.v3.10.0-nightly.20231010
        version: 3.10.0-nightly.20231010
      - name: quay-operator.v3.10.0-nightly.20231009
        version: 3.10.0-nightly.20231009
      - name: quay-operator.v3.10.0-nightly.20231008
        version: 3.10.0-nightly.20231008
      - name: quay-operator.v3.10.0-nightly.20231007
        version: 3.10.0-nightly.20231007
      - name: quay-operator.v3.10.0-nightly.20231006
        version: 3.10.0-nightly.20231006
      - name: quay-operator.v3.10.0-nightly.20231005
        version: 3.10.0-nightly.20231005
      - name: quay-operator.v3.10.0-nightly.20231002
        version: 3.10.0-nightly.20231002
      - name: quay-operator.v3.10.0-nightly.20230930
        version: 3.10.0-nightly.20230930
      - name: quay-operator.v3.10.0-nightly.20230929
        version: 3.10.0-nightly.20230929
      - name: quay-operator.v3.10.0-nightly.20230928
        version: 3.10.0-nightly.20230928
      - name: quay-operator.v3.10.0-nightly.20230926
        version: 3.10.0-nightly.20230926
      - name: quay-operator.v3.10.0-nightly.20230925
        version: 3.10.0-nightly.20230925
      - name: quay-operator.v3.10.0-nightly.20230923
        version: 3.10.0-nightly.20230923
      - name: quay-operator.v3.10.0-nightly.20230922
        version: 3.10.0-nightly.20230922
      - name: quay-operator.v3.10.0-nightly.20230921
        version: 3.10.0-nightly.20230921
      - name: quay-operator.v3.10.0-nightly.20230920
        version: 3.10.0-nightly.20230920
      - name: quay-operator.v3.10.0-nightly.20230919
        version: 3.10.0-nightly.20230919
      - name: quay-operator.v3.10.0-nightly.20230918
        version: 3.10.0-nightly.20230918
      - name: quay-operator.v3.10.0-nightly.20230917
        version: 3.10.0-nightly.20230917
      - name: quay-operator.v3.10.0-nightly.20230916
        version: 3.10.0-nightly.20230916
      - name: quay-operator.v3.10.0-nightly.20230915
        version: 3.10.0-nightly.20230915
      - name: quay-operator.v3.10.0-nightly.20230914
        version: 3.10.0-nightly.20230914
      - name: quay-operator.v3.10.0-nightly.20230913
        version: 3.10.0-nightly.20230913
      name: candidate-3.10
    - currentCSV: quay-operator.v3.9.0-nightly.20230812
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.9.0-nightly.20230812
          createdAt: 2023-08-12 06:06 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.9.0-nightly.20230812'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.9.0-nightly.20230812
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:7fc4d97b5ee63085672fc9a562ebdad3d4c00d1b555e06679d1dd9ac945f1bb9
        - quay.io/projectquay/quay-operator:3.9.0-nightly.20230812
        version: 3.9.0-nightly.20230812
      entries:
      - name: quay-operator.v3.9.0-nightly.20230812
        version: 3.9.0-nightly.20230812
      - name: quay-operator.v3.9.0-nightly.20230724
        version: 3.9.0-nightly.20230724
      - name: quay-operator.v3.9.0-nightly.20230723
        version: 3.9.0-nightly.20230723
      - name: quay-operator.v3.9.0-nightly.20230722
        version: 3.9.0-nightly.20230722
      - name: quay-operator.v3.9.0-nightly.20230721
        version: 3.9.0-nightly.20230721
      - name: quay-operator.v3.9.0-nightly.20230720
        version: 3.9.0-nightly.20230720
      - name: quay-operator.v3.9.0-nightly.20230717
        version: 3.9.0-nightly.20230717
      - name: quay-operator.v3.9.0-nightly.20230716
        version: 3.9.0-nightly.20230716
      - name: quay-operator.v3.9.0-nightly.20230715
        version: 3.9.0-nightly.20230715
      - name: quay-operator.v3.9.0-nightly.20230714
        version: 3.9.0-nightly.20230714
      - name: quay-operator.v3.9.0-nightly.20230712
        version: 3.9.0-nightly.20230712
      - name: quay-operator.v3.9.0-nightly.20230711
        version: 3.9.0-nightly.20230711
      name: candidate-3.9
    - currentCSV: quay-operator.v3.7.0-rc.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.7.0-rc.4
          createdAt: 2022-05-17 14:05 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.3.x <3.7.0-rc.4'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.7.0-rc.4
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:05e12cc4caaebb7f185f651f8ca876c442c02d79794e561b743beba0d189fa04
        - quay.io/projectquay/quay-operator:3.7.0-rc.4
        version: 3.7.0-rc.4
      entries:
      - name: quay-operator.v3.7.0-rc.4
        version: 3.7.0-rc.4
      - name: quay-operator.v3.7.0-rc.3
        version: 3.7.0-rc.3
      - name: quay-operator.v3.7.0-rc.2
        version: 3.7.0-rc.2
      - name: quay-operator.v3.7.0-rc.1
        version: 3.7.0-rc.1
      name: preview-3.7
    - currentCSV: quay-operator.v3.8.0-rc.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.8.0-rc.7
          createdAt: 2022-11-29 15:11 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.8.0-rc.7'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.8.0-rc.7
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.8.0-rc.7
        - quay.io/openshift-community-operators/project-quay@sha256:84796005b6e71efa5d783c55b1f72bcc3762944bf32740cb75498bf8b908bffb
        version: 3.8.0-rc.7
      entries:
      - name: quay-operator.v3.8.0-rc.7
        version: 3.8.0-rc.7
      - name: quay-operator.v3.8.0-rc.6
        version: 3.8.0-rc.6
      - name: quay-operator.v3.8.0-rc.5
        version: 3.8.0-rc.5
      - name: quay-operator.v3.8.0-rc.4
        version: 3.8.0-rc.4
      - name: quay-operator.v3.8.0-rc.3
        version: 3.8.0-rc.3
      - name: quay-operator.v3.8.0-rc.2
        version: 3.8.0-rc.2
      - name: quay-operator.v3.8.0-rc.1
        version: 3.8.0-rc.1
      name: preview-3.8
    - currentCSV: quay-operator.v3.10.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.10.17
          createdAt: "2025-12-16T16:07:34Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.10.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.10.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:df1ae4cc8aa9e3c53b7e0b223aab2a9eda1130372348721444f507c22de51e66
        - quay.io/projectquay/quay-operator:3.10.17
        version: 3.10.17
      entries:
      - name: quay-operator.v3.10.17
        version: 3.10.17
      - name: quay-operator.v3.10.16
        version: 3.10.16
      - name: quay-operator.v3.10.15
        version: 3.10.15
      - name: quay-operator.v3.10.14
        version: 3.10.14
      - name: quay-operator.v3.10.13
        version: 3.10.13
      - name: quay-operator.v3.10.12
        version: 3.10.12
      - name: quay-operator.v3.10.11
        version: 3.10.11
      - name: quay-operator.v3.10.10
        version: 3.10.10
      - name: quay-operator.v3.10.9
        version: 3.10.9
      - name: quay-operator.v3.10.8
        version: 3.10.8
      - name: quay-operator.v3.10.7
        version: 3.10.7
      - name: quay-operator.v3.10.6
        version: 3.10.6
      - name: quay-operator.v3.10.5
        version: 3.10.5
      - name: quay-operator.v3.10.4
        version: 3.10.4
      - name: quay-operator.v3.10.3
        version: 3.10.3
      - name: quay-operator.v3.10.2
        version: 3.10.2
      - name: quay-operator.v3.10.1
        version: 3.10.1
      - name: quay-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: quay-operator.v3.11.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.11.13
          createdAt: "2025-09-02T06:02:15Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.11.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.11.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:9d505bf561650eb9785811ba50c920480d85679eac6a611a1c5794544e175934
        - quay.io/projectquay/quay-operator:3.11.13
        version: 3.11.13
      entries:
      - name: quay-operator.v3.11.13
        version: 3.11.13
      - name: quay-operator.v3.11.12
        version: 3.11.12
      - name: quay-operator.v3.11.11
        version: 3.11.11
      - name: quay-operator.v3.11.10
        version: 3.11.10
      - name: quay-operator.v3.11.9
        version: 3.11.9
      - name: quay-operator.v3.11.8
        version: 3.11.8
      - name: quay-operator.v3.11.7
        version: 3.11.7
      - name: quay-operator.v3.11.6
        version: 3.11.6
      - name: quay-operator.v3.11.5
        version: 3.11.5
      - name: quay-operator.v3.11.4
        version: 3.11.4
      - name: quay-operator.v3.11.3
        version: 3.11.3
      - name: quay-operator.v3.11.2
        version: 3.11.2
      - name: quay-operator.v3.11.1
        version: 3.11.1
      - name: quay-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: quay-operator.v3.12.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.12.13
          createdAt: "2025-12-17T02:20:28Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.12.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.12.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.12.13
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:a2d7545e0585785e90f3d5d1b7e2f6f2344b2e12c99014495f99fbc284c20baf
        version: 3.12.13
      entries:
      - name: quay-operator.v3.12.13
        version: 3.12.13
      - name: quay-operator.v3.12.12
        version: 3.12.12
      - name: quay-operator.v3.12.11
        version: 3.12.11
      - name: quay-operator.v3.12.10
        version: 3.12.10
      - name: quay-operator.v3.12.9
        version: 3.12.9
      - name: quay-operator.v3.12.8
        version: 3.12.8
      - name: quay-operator.v3.12.7
        version: 3.12.7
      - name: quay-operator.v3.12.6
        version: 3.12.6
      - name: quay-operator.v3.12.5
        version: 3.12.5
      - name: quay-operator.v3.12.4
        version: 3.12.4
      - name: quay-operator.v3.12.3
        version: 3.12.3
      - name: quay-operator.v3.12.2
        version: 3.12.2
      - name: quay-operator.v3.12.1
        version: 3.12.1
      - name: quay-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: quay-operator.v3.13.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.13.10
          createdAt: "2025-12-17T02:24:00Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.13.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.13.10
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.13.10
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:f3ffc40ee13bc38ccbe8b7cdeed93c6d9eee4b09ac6db237764c98e6abb4f99f
        version: 3.13.10
      entries:
      - name: quay-operator.v3.13.10
        version: 3.13.10
      - name: quay-operator.v3.13.9
        version: 3.13.9
      - name: quay-operator.v3.13.8
        version: 3.13.8
      - name: quay-operator.v3.13.7
        version: 3.13.7
      - name: quay-operator.v3.13.6
        version: 3.13.6
      - name: quay-operator.v3.13.5
        version: 3.13.5
      - name: quay-operator.v3.13.4
        version: 3.13.4
      - name: quay-operator.v3.13.3
        version: 3.13.3
      - name: quay-operator.v3.13.2
        version: 3.13.2
      - name: quay-operator.v3.13.1
        version: 3.13.1
      - name: quay-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: quay-operator.v3.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.14.5
          createdAt: "2025-09-22T14:19:49Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.14.5'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.14.5
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:023b9cc1e4ec2542b8d68b636b21a2e8c4eb143424581c62d16598fddb47da6a
        - quay.io/projectquay/quay-operator:3.14.5
        version: 3.14.5
      entries:
      - name: quay-operator.v3.14.5
        version: 3.14.5
      - name: quay-operator.v3.14.4
        version: 3.14.4
      - name: quay-operator.v3.14.3
        version: 3.14.3
      - name: quay-operator.v3.14.2
        version: 3.14.2
      - name: quay-operator.v3.14.1
        version: 3.14.1
      - name: quay-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: quay-operator.v3.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.15.2
          createdAt: "2025-09-22T13:44:32Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.15.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.15.2
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.15.2
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:3843fd48c57be102576db93e8483a30f8efe8cd46b5e09c704ac0bc5f18553a3
        version: 3.15.2
      entries:
      - name: quay-operator.v3.15.2
        version: 3.15.2
      - name: quay-operator.v3.15.1
        version: 3.15.1
      - name: quay-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: quay-operator.v3.6.2
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"quay.redhat.com/v1\",\n    \"kind\":
            \"QuayRegistry\",\n    \"metadata\": {\n      \"name\": \"example-registry\"\n
            \   },\n    \"spec\": {\n      \"components\": [\n        {\"kind\": \"clair\",
            \"managed\": true},\n        {\"kind\": \"postgres\", \"managed\": true},\n
            \       {\"kind\": \"objectstorage\", \"managed\": true},\n        {\"kind\":
            \"redis\", \"managed\": true},\n        {\"kind\": \"horizontalpodautoscaler\",
            \"managed\": true},\n        {\"kind\": \"route\", \"managed\": true},\n
            \       {\"kind\": \"mirror\", \"managed\": true},\n        {\"kind\":
            \"monitoring\", \"managed\": true},\n        {\"kind\": \"tls\", \"managed\":
            true}\n      ]\n    }\n  }, \n  {\n    \"apiVersion\": \"redhatcop.redhat.io/v1alpha1\",\n
            \   \"kind\": \"QuayEcosystem\",\n    \"metadata\": {\n      \"name\":
            \"example-quayecosystem\"\n    },\n    \"spec\": {}\n  }\n]"
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:v3.6.2
          createdAt: 2021-04-23 10:04 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.5.x <3.6.2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: v3.6.2
          repository: https://github.com/quay/quay-operator
          support: Quay Team
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Project Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        - quay
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:v3.6.2
        - quay.io/openshift-community-operators/project-quay@sha256:55bb4133abc945ce7b75e6c01c6beaf63c19c129fc8fbfb48f1b53b8e28aae97
        version: 3.6.2
      entries:
      - name: quay-operator.v3.6.2
        version: 3.6.2
      name: stable-3.6
    - currentCSV: quay-operator.v3.7.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.7.11
          createdAt: 2023-02-22 10:02 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.3.x <3.7.11'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.7.11
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/project-quay@sha256:43b959fcdcf107b70e4224d80b63d1c123560c3af055109bbcc7d68476546584
        - quay.io/projectquay/quay-operator:3.7.11
        version: 3.7.11
      entries:
      - name: quay-operator.v3.7.11
        version: 3.7.11
      - name: quay-operator.v3.7.10
        version: 3.7.10
      - name: quay-operator.v3.7.9
        version: 3.7.9
      - name: quay-operator.v3.7.8
        version: 3.7.8
      - name: quay-operator.v3.7.7
        version: 3.7.7
      - name: quay-operator.v3.7.6
        version: 3.7.6
      - name: quay-operator.v3.7.5
        version: 3.7.5
      - name: quay-operator.v3.7.4
        version: 3.7.4
      - name: quay-operator.v3.7.3
        version: 3.7.3
      - name: quay-operator.v3.7.2
        version: 3.7.2
      - name: quay-operator.v3.7.1
        version: 3.7.1
      - name: quay-operator.v3.7.0
        version: 3.7.0
      name: stable-3.7
    - currentCSV: quay-operator.v3.8.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.8.13
          createdAt: 2023-10-17 16:13 UTC
          description: Opinionated deployment of Quay on Kubernetes.
          olm.skipRange: '>=3.6.x <3.8.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.8.13
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/projectquay/quay-operator:3.8.13
        - quay.io/openshift-community-operators/project-quay@sha256:2845843f32b895dee0242e31380b44625e3f8381caee7ecb3258648311c302f7
        version: 3.8.13
      entries:
      - name: quay-operator.v3.8.13
        version: 3.8.13
      - name: quay-operator.v3.8.12
        version: 3.8.12
      - name: quay-operator.v3.8.11
        version: 3.8.11
      - name: quay-operator.v3.8.10
        version: 3.8.10
      - name: quay-operator.v3.8.8
        version: 3.8.8
      - name: quay-operator.v3.8.7
        version: 3.8.7
      - name: quay-operator.v3.8.6
        version: 3.8.6
      - name: quay-operator.v3.8.5
        version: 3.8.5
      - name: quay-operator.v3.8.4
        version: 3.8.4
      - name: quay-operator.v3.8.3
        version: 3.8.3
      - name: quay-operator.v3.8.2
        version: 3.8.2
      - name: quay-operator.v3.8.1
        version: 3.8.1
      - name: quay-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: quay-operator.v3.9.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/projectquay/quay-operator:3.9.17
          createdAt: "2025-12-16T16:36:17Z"
          description: Opinionated deployment of Quay on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          quay-version: 3.9.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: Opinionated deployment of Quay on Kubernetes.
        displayName: Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: quay-sig@googlegroups.com
          name: Project Quay Contributors
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/project-quay@sha256:3d5f35b0766ce91a1aceb0ccad72adc22c4d1707948b40e4ceaabae921c5486a
        - quay.io/projectquay/quay-operator:3.9.17
        version: 3.9.17
      entries:
      - name: quay-operator.v3.9.17
        version: 3.9.17
      - name: quay-operator.v3.9.16
        version: 3.9.16
      - name: quay-operator.v3.9.15
        version: 3.9.15
      - name: quay-operator.v3.9.14
        version: 3.9.14
      - name: quay-operator.v3.9.13
        version: 3.9.13
      - name: quay-operator.v3.9.12
        version: 3.9.12
      - name: quay-operator.v3.9.11
        version: 3.9.11
      - name: quay-operator.v3.9.10
        version: 3.9.10
      - name: quay-operator.v3.9.9
        version: 3.9.9
      - name: quay-operator.v3.9.6
        version: 3.9.6
      - name: quay-operator.v3.9.5
        version: 3.9.5
      - name: quay-operator.v3.9.4
        version: 3.9.4
      - name: quay-operator.v3.9.3
        version: 3.9.3
      - name: quay-operator.v3.9.2
        version: 3.9.2
      - name: quay-operator.v3.9.1
        version: 3.9.1
      - name: quay-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.15
    packageName: project-quay
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Weights & Biases
      provider-url: https://wandb.ai
    name: wandb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: wandb-operator.v1.21.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.wandb.com/v1",
                "kind": "WeightsAndBiases",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "wandb-operator",
                    "app.kubernetes.io/instance": "weightsandbiases-sample",
                    "app.kubernetes.io/managed-by": "olm",
                    "app.kubernetes.io/name": "weightsandbiases",
                    "app.kubernetes.io/part-of": "wandb-operator"
                  },
                  "name": "weightsandbiases-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning,Developer Tools
          certified: "false"
          containerImage: quay.io/wandb_tools/wandb-k8s-operator:1.21.2
          createdAt: "2024-10-10T14:46:54Z"
          description: Operator for Weights and Biases, enabling seamless integration
            and management of machine learning experiments in Kubernetes environments.
          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"
          operatorframework.io/suggested-namespace: wandb-system
          repository: https://github.com/wandb/operator
          support: WeightsAndBiases
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WeightsAndBiases is a custom resource for managing W&B configurations.
            displayName: Weights And Biases
            kind: WeightsAndBiases
            name: weightsandbiases.apps.wandb.com
            version: v1
        description: |-
          The Weights and Biases Operator simplifies the management of machine learning experiments, tracking, and infrastructure. It integrates with Kubernetes to deploy and manage Weights and Biases instances.
          Features:
          - Experiment Tracking
          - Hyperparameter Tuning
          - Model Management
          - Integration with popular ML frameworks
        displayName: Weights & Biases Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - machine learning
        - experiment tracking
        - ML infrastructure
        - weights and biases
        links:
        - name: Weights & Biases Documentation
          url: https://docs.wandb.ai/
        maintainers:
        - email: abhinav.garg@domain.com
          name: Abhinav Garg
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Weights & Biases
          url: https://wandb.ai
        relatedImages:
        - quay.io/wandb_tools/wandb-k8s-operator:1.21.2
        - quay.io/community-operator-pipeline-prod/wandb-operator@sha256:e6b970a12d5ea0d5531dd88c1707c53c0a490de0145ee869bdfc1dc1218c7b29
        version: 1.21.2
      entries:
      - name: wandb-operator.v1.21.2
        version: 1.21.2
      - name: wandb-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: wandb-operator
    provider:
      name: Weights & Biases
      url: https://wandb.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ec2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ec2-controller.v1.9.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "DHCPOptions",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "ElasticIPAddress",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "Instance",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "InternetGateway",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "NATGateway",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "RouteTable",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "SecurityGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "Subnet",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "TransitGateway",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "VPC",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ec2.services.k8s.aws/v1alpha1",
                "kind": "VPCEndpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ec2-controller:1.9.1
          createdAt: "2026-01-06T21:44:24Z"
          description: AWS EC2 controller is a service controller for managing EC2
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CapacityReservation represents the state of an AWS ec2 CapacityReservation
              resource.
            displayName: CapacityReservation
            kind: CapacityReservation
            name: capacityreservations.ec2.services.k8s.aws
            version: v1alpha1
          - description: DHCPOptions represents the state of an AWS ec2 DHCPOptions
              resource.
            displayName: DHCPOptions
            kind: DHCPOptions
            name: dhcpoptions.ec2.services.k8s.aws
            version: v1alpha1
          - description: ElasticIPAddress represents the state of an AWS ec2 ElasticIPAddress
              resource.
            displayName: ElasticIPAddress
            kind: ElasticIPAddress
            name: elasticipaddresses.ec2.services.k8s.aws
            version: v1alpha1
          - description: FlowLog represents the state of an AWS ec2 FlowLog resource.
            displayName: FlowLog
            kind: FlowLog
            name: flowlogs.ec2.services.k8s.aws
            version: v1alpha1
          - description: Instance represents the state of an AWS ec2 Instance resource.
            displayName: Instance
            kind: Instance
            name: instances.ec2.services.k8s.aws
            version: v1alpha1
          - description: InternetGateway represents the state of an AWS ec2 InternetGateway
              resource.
            displayName: InternetGateway
            kind: InternetGateway
            name: internetgateways.ec2.services.k8s.aws
            version: v1alpha1
          - description: LaunchTemplate represents the state of an AWS ec2 LaunchTemplate
              resource.
            displayName: LaunchTemplate
            kind: LaunchTemplate
            name: launchtemplates.ec2.services.k8s.aws
            version: v1alpha1
          - description: ManagedPrefixList represents the state of an AWS ec2 ManagedPrefixList
              resource.
            displayName: ManagedPrefixList
            kind: ManagedPrefixList
            name: managedprefixlists.ec2.services.k8s.aws
            version: v1alpha1
          - description: NATGateway represents the state of an AWS ec2 NATGateway
              resource.
            displayName: NATGateway
            kind: NATGateway
            name: natgateways.ec2.services.k8s.aws
            version: v1alpha1
          - description: NetworkACL represents the state of an AWS ec2 NetworkACL
              resource.
            displayName: NetworkACL
            kind: NetworkACL
            name: networkacls.ec2.services.k8s.aws
            version: v1alpha1
          - description: RouteTable represents the state of an AWS ec2 RouteTable
              resource.
            displayName: RouteTable
            kind: RouteTable
            name: routetables.ec2.services.k8s.aws
            version: v1alpha1
          - description: SecurityGroup represents the state of an AWS ec2 SecurityGroup
              resource.
            displayName: SecurityGroup
            kind: SecurityGroup
            name: securitygroups.ec2.services.k8s.aws
            version: v1alpha1
          - description: Subnet represents the state of an AWS ec2 Subnet resource.
            displayName: Subnet
            kind: Subnet
            name: subnets.ec2.services.k8s.aws
            version: v1alpha1
          - description: TransitGateway represents the state of an AWS ec2 TransitGateway
              resource.
            displayName: TransitGateway
            kind: TransitGateway
            name: transitgateways.ec2.services.k8s.aws
            version: v1alpha1
          - description: TransitGatewayVPCAttachment represents the state of an AWS
              ec2 TransitGatewayVPCAttachment resource.
            displayName: TransitGatewayVPCAttachment
            kind: TransitGatewayVPCAttachment
            name: transitgatewayvpcattachments.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPCEndpoint represents the state of an AWS ec2 VPCEndpoint
              resource.
            displayName: VPCEndpoint
            kind: VPCEndpoint
            name: vpcendpoints.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPCEndpointServiceConfiguration represents the state of an
              AWS ec2 VPCEndpointServiceConfiguration resource.
            displayName: VPCEndpointServiceConfiguration
            kind: VPCEndpointServiceConfiguration
            name: vpcendpointserviceconfigurations.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPCPeeringConnection represents the state of an AWS ec2 VPCPeeringConnection
              resource.
            displayName: VPCPeeringConnection
            kind: VPCPeeringConnection
            name: vpcpeeringconnections.ec2.services.k8s.aws
            version: v1alpha1
          - description: VPC represents the state of an AWS ec2 VPC resource.
            displayName: VPC
            kind: VPC
            name: vpcs.ec2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Elastic Compute Cloud (EC2) resources in AWS from within your Kubernetes cluster.

          **About Amazon EC2**

          Amazon Elastic Compute Cloud (Amazon EC2) provides scalable computing capacity in the Amazon Web Services (AWS) Cloud. Using Amazon EC2 eliminates your need to invest in hardware up front, so you can develop and deploy applications faster. You can use Amazon EC2 to launch as many or as few virtual servers as you need, configure security and networking, and manage storage. Amazon EC2 enables you to scale up or down to handle changes in requirements or spikes in popularity, reducing your need to forecast traffic.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EC2
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ec2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EC2 Developer Resources
          url: https://aws.amazon.com/ec2/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ec2 maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ec2-controller:1.9.1
        - quay.io/community-operator-pipeline-prod/ack-ec2-controller@sha256:84bb2fdba33925ac6845422483bdbeb38de6070ac190e9cd15be196dcfa1e770
        version: 1.9.1
      entries:
      - name: ack-ec2-controller.v1.9.1
        version: 1.9.1
      - name: ack-ec2-controller.v1.9.0
        version: 1.9.0
      - name: ack-ec2-controller.v1.8.0
        version: 1.8.0
      - name: ack-ec2-controller.v1.7.1
        version: 1.7.1
      - name: ack-ec2-controller.v1.7.0
        version: 1.7.0
      - name: ack-ec2-controller.v1.6.2
        version: 1.6.2
      - name: ack-ec2-controller.v1.6.1
        version: 1.6.1
      - name: ack-ec2-controller.v1.6.0
        version: 1.6.0
      - name: ack-ec2-controller.v1.4.11
        version: 1.4.11
      - name: ack-ec2-controller.v1.4.10
        version: 1.4.10
      - name: ack-ec2-controller.v1.4.9
        version: 1.4.9
      - name: ack-ec2-controller.v1.4.8
        version: 1.4.8
      - name: ack-ec2-controller.v1.4.7
        version: 1.4.7
      - name: ack-ec2-controller.v1.4.6
        version: 1.4.6
      - name: ack-ec2-controller.v1.4.5
        version: 1.4.5
      - name: ack-ec2-controller.v1.4.4
        version: 1.4.4
      - name: ack-ec2-controller.v1.4.2
        version: 1.4.2
      - name: ack-ec2-controller.v1.4.1
        version: 1.4.1
      - name: ack-ec2-controller.v1.4.0
        version: 1.4.0
      - name: ack-ec2-controller.v1.3.7
        version: 1.3.7
      - name: ack-ec2-controller.v1.3.6
        version: 1.3.6
      - name: ack-ec2-controller.v1.3.5
        version: 1.3.5
      - name: ack-ec2-controller.v1.3.4
        version: 1.3.4
      - name: ack-ec2-controller.v1.3.3
        version: 1.3.3
      - name: ack-ec2-controller.v1.3.1
        version: 1.3.1
      - name: ack-ec2-controller.v1.3.0
        version: 1.3.0
      - name: ack-ec2-controller.v1.2.28
        version: 1.2.28
      - name: ack-ec2-controller.v1.2.27
        version: 1.2.27
      - name: ack-ec2-controller.v1.2.26
        version: 1.2.26
      - name: ack-ec2-controller.v1.2.25
        version: 1.2.25
      - name: ack-ec2-controller.v1.2.24
        version: 1.2.24
      - name: ack-ec2-controller.v1.2.23
        version: 1.2.23
      - name: ack-ec2-controller.v1.2.22
        version: 1.2.22
      - name: ack-ec2-controller.v1.2.21
        version: 1.2.21
      - name: ack-ec2-controller.v1.2.20
        version: 1.2.20
      - name: ack-ec2-controller.v1.2.17
        version: 1.2.17
      - name: ack-ec2-controller.v1.2.16
        version: 1.2.16
      - name: ack-ec2-controller.v1.2.15
        version: 1.2.15
      - name: ack-ec2-controller.v1.2.14
        version: 1.2.14
      - name: ack-ec2-controller.v1.2.13
        version: 1.2.13
      - name: ack-ec2-controller.v1.2.12
        version: 1.2.12
      - name: ack-ec2-controller.v1.2.11
        version: 1.2.11
      - name: ack-ec2-controller.v1.2.10
        version: 1.2.10
      - name: ack-ec2-controller.v1.2.9
        version: 1.2.9
      - name: ack-ec2-controller.v1.2.8
        version: 1.2.8
      - name: ack-ec2-controller.v1.2.7
        version: 1.2.7
      - name: ack-ec2-controller.v1.2.6
        version: 1.2.6
      - name: ack-ec2-controller.v1.2.4
        version: 1.2.4
      - name: ack-ec2-controller.v1.2.1
        version: 1.2.1
      - name: ack-ec2-controller.v1.2.0
        version: 1.2.0
      - name: ack-ec2-controller.v1.1.2
        version: 1.1.2
      - name: ack-ec2-controller.v1.1.1
        version: 1.1.1
      - name: ack-ec2-controller.v1.1.0
        version: 1.1.0
      - name: ack-ec2-controller.v1.0.7
        version: 1.0.7
      - name: ack-ec2-controller.v1.0.6
        version: 1.0.6
      - name: ack-ec2-controller.v1.0.4
        version: 1.0.4
      - name: ack-ec2-controller.v1.0.3
        version: 1.0.3
      - name: ack-ec2-controller.v1.0.2
        version: 1.0.2
      - name: ack-ec2-controller.v1.0.1
        version: 1.0.1
      - name: ack-ec2-controller.v1.0.0
        version: 1.0.0
      - name: ack-ec2-controller.v0.1.1
        version: 0.1.1
      - name: ack-ec2-controller.v0.1.0
        version: 0.1.0
      - name: ack-ec2-controller.v0.0.21
        version: 0.0.21
      - name: ack-ec2-controller.v0.0.20
        version: 0.0.20
      - name: ack-ec2-controller.v0.0.19
        version: 0.0.19
      - name: ack-ec2-controller.v0.0.18
        version: 0.0.18
      - name: ack-ec2-controller.v0.0.17
        version: 0.0.17
      - name: ack-ec2-controller.v0.0.16
        version: 0.0.16
      - name: ack-ec2-controller.v0.0.15
        version: 0.0.15
      - name: ack-ec2-controller.v0.0.14
        version: 0.0.14
      - name: ack-ec2-controller.v0.0.13
        version: 0.0.13
      - name: ack-ec2-controller.v0.0.12
        version: 0.0.12
      - name: ack-ec2-controller.v0.0.11
        version: 0.0.11
      - name: ack-ec2-controller.v0.0.10
        version: 0.0.10
      - name: ack-ec2-controller.v0.0.9
        version: 0.0.9
      - name: ack-ec2-controller.v0.0.8
        version: 0.0.8
      - name: ack-ec2-controller.v0.0.7
        version: 0.0.7
      - name: ack-ec2-controller.v0.0.6
        version: 0.0.6
      - name: ack-ec2-controller.v0.0.5
        version: 0.0.5
      - name: ack-ec2-controller.v0.0.4
        version: 0.0.4
      - name: ack-ec2-controller.v0.0.3
        version: 0.0.3
      - name: ack-ec2-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-ec2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: sailoperator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sailoperator.v1.29.0-nightly-2026-01-05
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.28.1"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:9fea08273c18001666e4d33ae4b951c08bdb6eea24340fab55d0d2ca3613ffcb
          createdAt: "2026-01-05T03:50:08Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.28-latest
          - v1.28.1
          - v1.28.0
          - v1.27-latest
          - v1.27.4
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.7
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0
          - master
          - v1.29-alpha.33f91585

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - quay.io/community-operator-pipeline-prod/sailoperator:1.29.0-nightly-2026-01-05
        - gcr.io/istio-release/pilot@sha256:5109ab9a1e7f1cdc60430e8823957655710dcc4977479b67de3d43bbab18a3f6
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/proxyv2@sha256:8ff7b0d50cea9aa80512b6b9a75afc9021de6dc4d4151ce7946c5e04812a3de2
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/proxyv2@sha256:c68e79b821ba47c63af844422114af6d5cc01cc1fd8f1b0184c42be330afc1d2
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/pilot@sha256:dcc1431b635a2151f891ba17e8911d56f1aa1e4acaff0c543d0036b849cb0369
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/install-cni@sha256:ba4c1ad3c67be6681883162c8543e15b2ea78a79658665a450bce0f475674de5
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/pilot@sha256:43e24609869d90ea7c12c878474e5905b02676e7dd827903be42c15599cde1b7
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/ztunnel@sha256:f562d8dd28e803061ee63853e7e1da07188ec24e734ebf0d95ec2126b41ac392
        - gcr.io/istio-release/install-cni@sha256:a84971fd29ce54181dc4ceee6dbde8032bebd5a72301319a0468e5bc39902080
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/proxyv2@sha256:f95a5e91204afbfad9d33d6f1bc0556a96bf997b18edede6c9e6b86eb07543a1
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/ztunnel@sha256:352baf7040b916b2d3de03388f14a8da0da5fa5e02a2589218261119b39a4594
        - gcr.io/istio-release/install-cni@sha256:81295e43028ab50028f173a7ed2bf3d435201539b6b70f5938079771fe9e4561
        - gcr.io/istio-testing/proxyv2@sha256:0f0666237e310e2049aa328eec13dd40b062689295df2329b0770edd82708946
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/pilot@sha256:d0930e5cf028deeb636364595b4d0a42e05d5745850013bae297b32a9315ab18
        - gcr.io/istio-release/proxyv2@sha256:4c830a386c93683bdf88249e089bc971361c419365663dc35aa1d5ba6be73c19
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - quay.io/sail-dev/sail-operator@sha256:9fea08273c18001666e4d33ae4b951c08bdb6eea24340fab55d0d2ca3613ffcb
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/ztunnel@sha256:5991f9a9202c9a1a59c41efb7e8b89e7a9cfc0dc39f71afe91cdd78c6ecf697c
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/install-cni@sha256:8dda5692bbed6069d837acc084d5b142c325bba2491622a04ec42198c44562b4
        - gcr.io/istio-testing/pilot@sha256:4cce73203bf2a679876f8c3edcf688a59fd25b4fd55f7da72de8850d105ed4fa
        - gcr.io/istio-testing/ztunnel@sha256:79ad54a5b95cabc98ca973d71f5acfa54c850e3f56d2407b5b0436b174e85ea1
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-testing/install-cni@sha256:595ea71bc523b724db6e0a3447b37092b571590d433e508a8ab0d05d096fd48b
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/ztunnel@sha256:836e3f8b34527139523effc176cc138b93e69b4506ccb3dca75460e0ccb96138
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        version: 1.29.0-nightly-2026-01-05
      entries:
      - name: sailoperator.v1.29.0-nightly-2026-01-05
        version: 1.29.0-nightly-2026-01-05
      - name: sailoperator.v1.29.0-nightly-2026-01-04
        version: 1.29.0-nightly-2026-01-04
      - name: sailoperator.v1.29.0-nightly-2026-01-03
        version: 1.29.0-nightly-2026-01-03
      - name: sailoperator.v1.29.0-nightly-2026-01-02
        version: 1.29.0-nightly-2026-01-02
      - name: sailoperator.v1.29.0-nightly-2026-01-01
        version: 1.29.0-nightly-2026-01-01
      - name: sailoperator.v1.29.0-nightly-2025-12-31
        version: 1.29.0-nightly-2025-12-31
      - name: sailoperator.v1.29.0-nightly-2025-12-30
        version: 1.29.0-nightly-2025-12-30
      - name: sailoperator.v1.29.0-nightly-2025-12-29
        version: 1.29.0-nightly-2025-12-29
      - name: sailoperator.v1.29.0-nightly-2025-12-28
        version: 1.29.0-nightly-2025-12-28
      - name: sailoperator.v1.29.0-nightly-2025-12-27
        version: 1.29.0-nightly-2025-12-27
      - name: sailoperator.v1.29.0-nightly-2025-12-26
        version: 1.29.0-nightly-2025-12-26
      - name: sailoperator.v1.29.0-nightly-2025-12-25
        version: 1.29.0-nightly-2025-12-25
      - name: sailoperator.v1.29.0-nightly-2025-12-24
        version: 1.29.0-nightly-2025-12-24
      name: 1.29-nightly
    - currentCSV: sailoperator.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.23.0"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.23.0"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/maistra-dev/sail-operator:0.1-latest
          createdAt: "2024-08-20T11:54:30Z"
          description: Experimental operator for installing Istio service mesh
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1alpha1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1alpha1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1alpha1
          - description: |-
              RemoteIstio represents a remote Istio Service Mesh deployment consisting of one or more
              remote control plane instances (represented by one or more IstioRevision objects).
            displayName: Remote Istio
            kind: RemoteIstio
            name: remoteistios.sailoperator.io
            version: v1alpha1
        description: |-
          This is an experimental operator for installing Istio service mesh.

          This version of the operator supports the following Istio versions:

          - v1.23.0
          - v1.22.4

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - docker.io/istio/pilot:1.23.0
        - docker.io/istio/install-cni:1.23.0
        - docker.io/istio/ztunnel:1.23.0
        - quay.io/community-operator-pipeline-prod/sailoperator@sha256:a5698068f57fb27c6e4b8c385878c4651967ae5f17412c6ea6cf8bd34bfe76a1
        - docker.io/istio/install-cni:1.22.4
        - docker.io/istio/pilot:1.22.4
        - docker.io/istio/proxyv2:1.23.0
        - docker.io/istio/ztunnel:1.22.4
        - quay.io/maistra-dev/sail-operator:0.1-latest
        - docker.io/istio/proxyv2:1.22.4
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.16.0
        version: 0.1.0
      entries:
      - name: sailoperator.v0.1.0
        version: 0.1.0
      - name: sailoperator.v0.1.0-rc.1
        version: 0.1.0-rc.1
      name: candidates
    - currentCSV: sailoperator.v1.28.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
          createdAt: "2025-12-10T15:50:55Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.28-latest
          - v1.28.1
          - v1.28.0
          - v1.27-latest
          - v1.27.4
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.7
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - gcr.io/istio-release/proxyv2@sha256:8ff7b0d50cea9aa80512b6b9a75afc9021de6dc4d4151ce7946c5e04812a3de2
        - quay.io/community-operator-pipeline-prod/sailoperator:1.28.1
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/proxyv2@sha256:4c830a386c93683bdf88249e089bc971361c419365663dc35aa1d5ba6be73c19
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        - gcr.io/istio-release/install-cni@sha256:a84971fd29ce54181dc4ceee6dbde8032bebd5a72301319a0468e5bc39902080
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/install-cni@sha256:8dda5692bbed6069d837acc084d5b142c325bba2491622a04ec42198c44562b4
        - gcr.io/istio-release/pilot@sha256:d0930e5cf028deeb636364595b4d0a42e05d5745850013bae297b32a9315ab18
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/pilot@sha256:dcc1431b635a2151f891ba17e8911d56f1aa1e4acaff0c543d0036b849cb0369
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/ztunnel@sha256:f562d8dd28e803061ee63853e7e1da07188ec24e734ebf0d95ec2126b41ac392
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/pilot@sha256:5109ab9a1e7f1cdc60430e8823957655710dcc4977479b67de3d43bbab18a3f6
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:f95a5e91204afbfad9d33d6f1bc0556a96bf997b18edede6c9e6b86eb07543a1
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/ztunnel@sha256:352baf7040b916b2d3de03388f14a8da0da5fa5e02a2589218261119b39a4594
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/install-cni@sha256:ba4c1ad3c67be6681883162c8543e15b2ea78a79658665a450bce0f475674de5
        - gcr.io/istio-release/proxyv2@sha256:c68e79b821ba47c63af844422114af6d5cc01cc1fd8f1b0184c42be330afc1d2
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/ztunnel@sha256:5991f9a9202c9a1a59c41efb7e8b89e7a9cfc0dc39f71afe91cdd78c6ecf697c
        - gcr.io/istio-release/pilot@sha256:43e24609869d90ea7c12c878474e5905b02676e7dd827903be42c15599cde1b7
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/install-cni@sha256:81295e43028ab50028f173a7ed2bf3d435201539b6b70f5938079771fe9e4561
        - quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/ztunnel@sha256:836e3f8b34527139523effc176cc138b93e69b4506ccb3dca75460e0ccb96138
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        version: 1.28.1
      entries:
      - name: sailoperator.v1.28.1
        version: 1.28.1
      - name: sailoperator.v1.28.0
        version: 1.28.0
      - name: sailoperator.v1.27.3
        version: 1.27.3
      - name: sailoperator.v1.27.2
        version: 1.27.2
      - name: sailoperator.v1.27.1
        version: 1.27.1
      - name: sailoperator.v1.27.0
        version: 1.27.0
      - name: sailoperator.v1.26.3
        version: 1.26.3
      - name: sailoperator.v1.26.2
        version: 1.26.2
      - name: sailoperator.v1.26.1
        version: 1.26.1
      - name: sailoperator.v1.26.0
        version: 1.26.0
      - name: sailoperator.v1.25.2
        version: 1.25.2
      - name: sailoperator.v1.25.1
        version: 1.25.1
      - name: sailoperator.v1.25.0
        version: 1.25.0
      name: stable
    - currentCSV: sailoperator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.24.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.24.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator:1.0-latest
          createdAt: "2025-03-07T10:17:30Z"
          description: Experimental operator for installing Istio service mesh
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          This is an experimental operator for installing Istio service mesh.

          This version of the operator supports the following Istio versions:

          - v1.24-latest
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.23-latest
          - v1.23.5
          - v1.23.4
          - v1.23.3
          - v1.23.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/pilot:1.24.3
        - gcr.io/istio-release/ztunnel:1.24.1
        - gcr.io/istio-release/install-cni:1.23.0
        - gcr.io/istio-release/pilot:1.24.2
        - gcr.io/istio-release/pilot:1.23.4
        - gcr.io/istio-release/proxyv2:1.24.3
        - gcr.io/istio-release/ztunnel:1.23.0
        - gcr.io/istio-release/ztunnel:1.24.3
        - gcr.io/istio-release/proxyv2:1.24.1
        - gcr.io/istio-release/ztunnel:1.23.5
        - gcr.io/istio-release/pilot:1.23.0
        - gcr.io/istio-release/install-cni:1.23.4
        - gcr.io/istio-release/pilot:1.24.1
        - gcr.io/istio-release/proxyv2:1.23.4
        - gcr.io/istio-release/ztunnel:1.23.4
        - gcr.io/istio-release/ztunnel:1.24.2
        - gcr.io/istio-release/install-cni:1.24.2
        - quay.io/community-operator-pipeline-prod/sailoperator@sha256:5416c5fc62c7d9498349ed771bf93bfc0f712ad8da0b8ee109dc49d1e684fa56
        - gcr.io/istio-release/install-cni:1.23.3
        - gcr.io/istio-release/proxyv2:1.23.0
        - gcr.io/istio-release/pilot:1.23.5
        - gcr.io/istio-release/install-cni:1.23.5
        - gcr.io/istio-release/proxyv2:1.23.5
        - gcr.io/istio-release/ztunnel:1.23.3
        - gcr.io/istio-release/install-cni:1.24.3
        - gcr.io/istio-release/pilot:1.23.3
        - gcr.io/istio-release/install-cni:1.24.1
        - quay.io/sail-dev/sail-operator:1.0-latest
        - gcr.io/istio-release/proxyv2:1.23.3
        - gcr.io/istio-release/proxyv2:1.24.2
        version: 1.0.0
      entries:
      - name: sailoperator.v1.0.0
        version: 1.0.0
      name: stable-1.0
    - currentCSV: sailoperator.v1.25.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.25.2"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.25.2"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator:1.25.2
          createdAt: "2025-05-07T19:44:51Z"
          description: Experimental operator for installing Istio service mesh
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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.skipRange: '>=1.0.0 <1.25.2'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          This is an experimental operator for installing Istio service mesh.

          This version of the operator supports the following Istio versions:

          - v1.25-latest
          - v1.25.2
          - v1.25.1
          - v1.24-latest
          - v1.24.4
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.24.0
          - v1.23-latest
          - v1.23.5
          - v1.23.4
          - v1.23.3
          - v1.23.2
          - v1.22-latest
          - v1.22.8
          - v1.22.7
          - v1.22.6
          - v1.22.5
          - v1.21.6

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/ztunnel:1.23.4
        - gcr.io/istio-release/ztunnel:1.24.3
        - gcr.io/istio-release/ztunnel:1.21.6
        - gcr.io/istio-release/ztunnel:1.22.8
        - gcr.io/istio-release/proxyv2:1.24.0
        - gcr.io/istio-release/install-cni:1.21.6
        - gcr.io/istio-release/pilot:1.22.8
        - gcr.io/istio-release/pilot:1.25.1
        - gcr.io/istio-release/proxyv2:1.22.6
        - gcr.io/istio-release/proxyv2:1.22.7
        - gcr.io/istio-release/proxyv2:1.21.6
        - gcr.io/istio-release/ztunnel:1.25.2
        - gcr.io/istio-release/install-cni:1.22.5
        - quay.io/community-operator-pipeline-prod/sailoperator@sha256:9cc4d5a9f46e4d05f8adb5232459002a073c101cc813330325afb6682e2138ae
        - gcr.io/istio-release/pilot:1.25.2
        - gcr.io/istio-release/pilot:1.23.5
        - gcr.io/istio-release/install-cni:1.23.5
        - gcr.io/istio-release/install-cni:1.24.4
        - gcr.io/istio-release/proxyv2:1.23.2
        - gcr.io/istio-release/install-cni:1.25.2
        - gcr.io/istio-release/ztunnel:1.23.3
        - gcr.io/istio-release/install-cni:1.25.1
        - gcr.io/istio-release/proxyv2:1.22.8
        - gcr.io/istio-release/proxyv2:1.25.1
        - gcr.io/istio-release/proxyv2:1.24.3
        - gcr.io/istio-release/proxyv2:1.25.2
        - gcr.io/istio-release/pilot:1.23.2
        - gcr.io/istio-release/pilot:1.24.0
        - gcr.io/istio-release/proxyv2:1.23.4
        - gcr.io/istio-release/install-cni:1.22.8
        - gcr.io/istio-release/ztunnel:1.24.2
        - gcr.io/istio-release/pilot:1.24.4
        - gcr.io/istio-release/install-cni:1.24.0
        - quay.io/sail-dev/sail-operator:1.25.2
        - gcr.io/istio-release/proxyv2:1.24.4
        - gcr.io/istio-release/pilot:1.24.2
        - gcr.io/istio-release/pilot:1.23.4
        - gcr.io/istio-release/install-cni:1.22.7
        - gcr.io/istio-release/proxyv2:1.23.3
        - gcr.io/istio-release/pilot:1.22.5
        - gcr.io/istio-release/proxyv2:1.23.5
        - gcr.io/istio-release/ztunnel:1.23.2
        - gcr.io/istio-release/install-cni:1.24.2
        - gcr.io/istio-release/install-cni:1.24.1
        - gcr.io/istio-release/install-cni:1.23.4
        - gcr.io/istio-release/proxyv2:1.24.2
        - gcr.io/istio-release/ztunnel:1.22.7
        - gcr.io/istio-release/install-cni:1.22.6
        - gcr.io/istio-release/install-cni:1.23.3
        - gcr.io/istio-release/ztunnel:1.24.1
        - gcr.io/istio-release/pilot:1.21.6
        - gcr.io/istio-release/proxyv2:1.22.5
        - gcr.io/istio-release/ztunnel:1.24.4
        - gcr.io/istio-release/install-cni:1.23.2
        - gcr.io/istio-release/ztunnel:1.24.0
        - gcr.io/istio-release/pilot:1.22.7
        - gcr.io/istio-release/ztunnel:1.25.1
        - gcr.io/istio-release/ztunnel:1.22.6
        - gcr.io/istio-release/ztunnel:1.23.5
        - gcr.io/istio-release/proxyv2:1.24.1
        - gcr.io/istio-release/install-cni:1.24.3
        - gcr.io/istio-release/pilot:1.23.3
        - gcr.io/istio-release/pilot:1.24.1
        - gcr.io/istio-release/pilot:1.22.6
        - gcr.io/istio-release/pilot:1.24.3
        - gcr.io/istio-release/ztunnel:1.22.5
        version: 1.25.2
      entries:
      - name: sailoperator.v1.25.2
        version: 1.25.2
      - name: sailoperator.v1.25.1
        version: 1.25.1
      - name: sailoperator.v1.25.0
        version: 1.25.0
      name: stable-1.25
    - currentCSV: sailoperator.v1.26.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.26.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.26.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:d37258646d76a9f708a69fbaa081a0a95908a2b0c8837a14d7ecbfcf505f9bd4
          createdAt: "2025-08-04T06:23:45Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.26-latest
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0
          - v1.25-latest
          - v1.25.3
          - v1.25.2
          - v1.25.1
          - v1.24-latest
          - v1.24.6
          - v1.24.5
          - v1.24.4
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.24.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/proxyv2@sha256:445156b5f4a780242d079a47b7d88199cbbb5959c92358469b721af490eca1ae
        - gcr.io/istio-release/pilot@sha256:e082a6f27001101942d1e2be71764b17ad350ed0d289038020426e7ee603eb56
        - gcr.io/istio-release/pilot@sha256:f0bcb10a51dbb2b9e5552e7f82aa7fcc2ff4dd6d0d7d2224986036b1645b855b
        - gcr.io/istio-release/ztunnel@sha256:0e680a1b33d458e5dfd6f91808c8bd61d00a1103084545ea6a1956c935e7554e
        - gcr.io/istio-release/proxyv2@sha256:d62cc7585450bce8573338c3d147961f4e1df045ffcf5956abea29841cb5aaa4
        - gcr.io/istio-release/install-cni@sha256:3107b1947e755abe698fe2d5c3ed7ba5f228f0b4ff5ff30f484fcc984514b97e
        - gcr.io/istio-release/proxyv2@sha256:49ed9dd2c06383c0a847877a707a3563d0968d83779ad8d13a0c022a48c5c407
        - gcr.io/istio-release/pilot@sha256:32d0f6bd6c1259de78dbc79dfd88cf5f4dc8941613560ff2ca7dbabcf04dfd68
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:ee6565e57319e01b5e45b929335eb9dc3d4b30d531b4652467e6939ae81b41f7
        - gcr.io/istio-release/install-cni@sha256:d28af093e5b7f33e8750364e9077c8b2c464145d1904cae8be48227ec0110b04
        - gcr.io/istio-release/ztunnel@sha256:74ee23f374ea28b3455ad2eca2bea62da95bc2a23b865b7c8c301139046650d5
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/install-cni@sha256:7b12bcfabd92c5756e4b12bf82e373f4abcdd3ccf81ac0b93fe0aa6f8ccce63c
        - gcr.io/istio-release/pilot@sha256:7ccda8c22307ee796cb7ba3f4ce224ef533c3c683c063dcc92fd5a244d8a5c9d
        - gcr.io/istio-release/proxyv2@sha256:91382859f73b1a66ac113631f89ef73dabf9c931d6baf0bd7eb618c0fa958b34
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/install-cni@sha256:313165b70241f65c79b5984797b8e3bc43a264acfeaeda4f33fe3a7f89a2fdb8
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/pilot@sha256:4ad6b0c3839a11622e66323a1296c7fc19dcbbb2c371b2e3edd58bd4f763f19f
        - gcr.io/istio-release/pilot@sha256:c8ac4894f2e667eb439d1c960a47ac7fbc80aad3f0adb98f5fd9330d9c515696
        - gcr.io/istio-release/proxyv2@sha256:2edf332e1c7ddd46466e337d009eda091bcd43f827b6f460175b772addc8055a
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/proxyv2@sha256:a5f2c1804ac4397448149b63a67f6cfd1979d304b99a726667a4859d201c6305
        - quay.io/sail-dev/sail-operator@sha256:d37258646d76a9f708a69fbaa081a0a95908a2b0c8837a14d7ecbfcf505f9bd4
        - gcr.io/istio-release/ztunnel@sha256:ca14b3f869aa998da30c6f8f8d14b2e9cd61a40b78b05196b951cac9613d76d8
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/ztunnel@sha256:2402a1c71dce11c409b6da171d8ae27dff62c539d58aac41817499e1fcd7beb3
        - gcr.io/istio-release/install-cni@sha256:d241cd11295b7c7af6c1c7e22096db886b07ab1945b4b7b2fe3d7f95ef41b277
        - gcr.io/istio-release/install-cni@sha256:1d963aca195f1e06459925431c592cf556112d77b824c61e06555fbc31ee415f
        - gcr.io/istio-release/proxyv2@sha256:640733abb924663df83761e2ec95a2bddca797daf1ca37672ec0b045969cdeb1
        - gcr.io/istio-release/pilot@sha256:93d6b52a61e7e9891fe114e4f7d503b36e8d1566a22e82e5635084a2001eb14a
        - gcr.io/istio-release/ztunnel@sha256:eaae7b8ed53a3f18b0291f08db0e3330d7c958d39919fce9dbc43f3027bf2089
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/proxyv2@sha256:2cd83a25202af6c5aef48b432f7fed50b6de460c795ce7c84f80bf630f51ca4d
        - gcr.io/istio-release/install-cni@sha256:d85b955875b2fbfc2ca8166cf2aa0e4ac3d78dd00f4ec4140a2a22dd17e7deb9
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/pilot@sha256:21b6cdaf12e7eb8bb0ad1d493c32a76e7d34f574a41ece86ded0c79e7191e875
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/ztunnel@sha256:96daeeb4e71a304edbf2ee2d37bc4bd4b88b9da26d7e6cc0c34c94c1cd6e6cca
        - gcr.io/istio-release/ztunnel@sha256:56afd26e9384ff41a0244a8c637a0e3aa8654015b8d32b494df8b5023f213ec7
        - gcr.io/istio-release/ztunnel@sha256:ae90c4e06a4560898dbf414226e3ea879b8d0b10387af27b0c2907e8488fc5d1
        - gcr.io/istio-release/ztunnel@sha256:73b3ad311c9c9a2618e9c2f10259a3bf5414bb4fc6fd407baa6280bdd8d227f0
        - gcr.io/istio-release/pilot@sha256:29cccf38a413fe81a88d02e0bf924ca84a9cf1d6a3c9ece024c0636b1e3cb029
        - gcr.io/istio-release/install-cni@sha256:4b10d810228e553bf34924222b7d62fdfafbce5ed67dc54973d168bda384a4cd
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - quay.io/community-operator-pipeline-prod/sailoperator:1.26.3
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/install-cni@sha256:0f27cb9e3423a3ed8a444dd2137ae05f31a03df2bdd549b21ef8f0f3949e3cef
        - gcr.io/istio-release/ztunnel@sha256:45807d4c512e9a0e4855eb1a2535532319b698302ebbf4d4eaccf462997bb374
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/proxyv2@sha256:534f7589b085450b5b94e6c955f5106892df88d81676f53ac5e06a0cf5ec45da
        - gcr.io/istio-release/pilot@sha256:2961bf88463e475f1e53d82a118405841ecbb9d8a6e0b35c73c77bee53bc0c3e
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - gcr.io/istio-release/install-cni@sha256:a80a96d9e4e859d1568fe1db1b12525db8c26d153e4bb783ba4efb3c5b16f877
        version: 1.26.3
      entries:
      - name: sailoperator.v1.26.3
        version: 1.26.3
      - name: sailoperator.v1.26.2
        version: 1.26.2
      - name: sailoperator.v1.26.1
        version: 1.26.1
      - name: sailoperator.v1.26.0
        version: 1.26.0
      name: stable-1.26
    - currentCSV: sailoperator.v1.27.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:89bae0d643a074d759550ab497aa43af670ce7717db3f6fac50daaa32e61d371
          createdAt: "2025-10-21T10:12:31Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.27-latest
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0
          - v1.25-latest
          - v1.25.5
          - v1.25.4
          - v1.25.3
          - v1.25.2
          - v1.25.1
          - v1.24-latest
          - v1.24.6
          - v1.24.5
          - v1.24.4
          - v1.24.3
          - v1.24.2
          - v1.24.1
          - v1.24.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/ztunnel@sha256:56afd26e9384ff41a0244a8c637a0e3aa8654015b8d32b494df8b5023f213ec7
        - gcr.io/istio-release/ztunnel@sha256:eaae7b8ed53a3f18b0291f08db0e3330d7c958d39919fce9dbc43f3027bf2089
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/install-cni@sha256:313165b70241f65c79b5984797b8e3bc43a264acfeaeda4f33fe3a7f89a2fdb8
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/install-cni@sha256:3107b1947e755abe698fe2d5c3ed7ba5f228f0b4ff5ff30f484fcc984514b97e
        - gcr.io/istio-release/proxyv2@sha256:640733abb924663df83761e2ec95a2bddca797daf1ca37672ec0b045969cdeb1
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/install-cni@sha256:d241cd11295b7c7af6c1c7e22096db886b07ab1945b4b7b2fe3d7f95ef41b277
        - gcr.io/istio-release/pilot@sha256:32d0f6bd6c1259de78dbc79dfd88cf5f4dc8941613560ff2ca7dbabcf04dfd68
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/proxyv2@sha256:ee6565e57319e01b5e45b929335eb9dc3d4b30d531b4652467e6939ae81b41f7
        - gcr.io/istio-release/ztunnel@sha256:2402a1c71dce11c409b6da171d8ae27dff62c539d58aac41817499e1fcd7beb3
        - gcr.io/istio-release/pilot@sha256:e082a6f27001101942d1e2be71764b17ad350ed0d289038020426e7ee603eb56
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/ztunnel@sha256:96daeeb4e71a304edbf2ee2d37bc4bd4b88b9da26d7e6cc0c34c94c1cd6e6cca
        - gcr.io/istio-release/pilot@sha256:0d06b179025862f13150dda22608e0700a74a0127d0a1b66eebcadf18d3d4bd7
        - gcr.io/istio-release/proxyv2@sha256:75e272cbe8dd31fda4c193aedc251ee2e26593f0b7b4f305225f9ad804cc6f0d
        - gcr.io/istio-release/install-cni@sha256:f8043a943106f8638dc67ed9b8cce5ced0a25d0b8c9217281f7c7ff1dbd41c15
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/pilot@sha256:f0bcb10a51dbb2b9e5552e7f82aa7fcc2ff4dd6d0d7d2224986036b1645b855b
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/proxyv2@sha256:a5f2c1804ac4397448149b63a67f6cfd1979d304b99a726667a4859d201c6305
        - gcr.io/istio-release/pilot@sha256:c8ac4894f2e667eb439d1c960a47ac7fbc80aad3f0adb98f5fd9330d9c515696
        - gcr.io/istio-release/proxyv2@sha256:91382859f73b1a66ac113631f89ef73dabf9c931d6baf0bd7eb618c0fa958b34
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/install-cni@sha256:a80a96d9e4e859d1568fe1db1b12525db8c26d153e4bb783ba4efb3c5b16f877
        - gcr.io/istio-release/install-cni@sha256:d28af093e5b7f33e8750364e9077c8b2c464145d1904cae8be48227ec0110b04
        - gcr.io/istio-release/proxyv2@sha256:534f7589b085450b5b94e6c955f5106892df88d81676f53ac5e06a0cf5ec45da
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/proxyv2@sha256:2cd83a25202af6c5aef48b432f7fed50b6de460c795ce7c84f80bf630f51ca4d
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/proxyv2@sha256:445156b5f4a780242d079a47b7d88199cbbb5959c92358469b721af490eca1ae
        - gcr.io/istio-release/proxyv2@sha256:2edf332e1c7ddd46466e337d009eda091bcd43f827b6f460175b772addc8055a
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/pilot@sha256:7ccda8c22307ee796cb7ba3f4ce224ef533c3c683c063dcc92fd5a244d8a5c9d
        - quay.io/sail-dev/sail-operator@sha256:89bae0d643a074d759550ab497aa43af670ce7717db3f6fac50daaa32e61d371
        - gcr.io/istio-release/ztunnel@sha256:73b3ad311c9c9a2618e9c2f10259a3bf5414bb4fc6fd407baa6280bdd8d227f0
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/install-cni@sha256:f6e234ab501fabdd9643f1469f90bf0ff3696caa0f6456652e28c1a608644700
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/ztunnel@sha256:ca14b3f869aa998da30c6f8f8d14b2e9cd61a40b78b05196b951cac9613d76d8
        - gcr.io/istio-release/proxyv2@sha256:ac598d6c98415bfb323b4930ba1423b9c3d17a90c205de1ad2e5f28179275c75
        - gcr.io/istio-release/proxyv2@sha256:49ed9dd2c06383c0a847877a707a3563d0968d83779ad8d13a0c022a48c5c407
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/install-cni@sha256:d85b955875b2fbfc2ca8166cf2aa0e4ac3d78dd00f4ec4140a2a22dd17e7deb9
        - gcr.io/istio-release/pilot@sha256:2961bf88463e475f1e53d82a118405841ecbb9d8a6e0b35c73c77bee53bc0c3e
        - gcr.io/istio-release/ztunnel@sha256:0e680a1b33d458e5dfd6f91808c8bd61d00a1103084545ea6a1956c935e7554e
        - gcr.io/istio-release/install-cni@sha256:1d963aca195f1e06459925431c592cf556112d77b824c61e06555fbc31ee415f
        - gcr.io/istio-release/install-cni@sha256:0f27cb9e3423a3ed8a444dd2137ae05f31a03df2bdd549b21ef8f0f3949e3cef
        - gcr.io/istio-release/pilot@sha256:29cccf38a413fe81a88d02e0bf924ca84a9cf1d6a3c9ece024c0636b1e3cb029
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/install-cni@sha256:4b10d810228e553bf34924222b7d62fdfafbce5ed67dc54973d168bda384a4cd
        - gcr.io/istio-release/pilot@sha256:4ad6b0c3839a11622e66323a1296c7fc19dcbbb2c371b2e3edd58bd4f763f19f
        - gcr.io/istio-release/ztunnel@sha256:45807d4c512e9a0e4855eb1a2535532319b698302ebbf4d4eaccf462997bb374
        - gcr.io/istio-release/pilot@sha256:93d6b52a61e7e9891fe114e4f7d503b36e8d1566a22e82e5635084a2001eb14a
        - gcr.io/istio-release/proxyv2@sha256:d62cc7585450bce8573338c3d147961f4e1df045ffcf5956abea29841cb5aaa4
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/ztunnel@sha256:ae90c4e06a4560898dbf414226e3ea879b8d0b10387af27b0c2907e8488fc5d1
        - gcr.io/istio-release/ztunnel@sha256:74ee23f374ea28b3455ad2eca2bea62da95bc2a23b865b7c8c301139046650d5
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/install-cni@sha256:7b12bcfabd92c5756e4b12bf82e373f4abcdd3ccf81ac0b93fe0aa6f8ccce63c
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/ztunnel@sha256:45e0288894c9beed590bd4caed1dc04a96be7231de3cdd5e2c45f1c08f194503
        - gcr.io/istio-release/ztunnel@sha256:144093bb2d220b7ee402626dc5ea9ed7ddce2675ebe5ab4bf83646b4762484dd
        - gcr.io/istio-release/pilot@sha256:21b6cdaf12e7eb8bb0ad1d493c32a76e7d34f574a41ece86ded0c79e7191e875
        - quay.io/community-operator-pipeline-prod/sailoperator:1.27.3
        - gcr.io/istio-release/pilot@sha256:a6e8f88e35f886a45ae645bce076305d1f66a703f80059b6449026159ef767a8
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        version: 1.27.3
      entries:
      - name: sailoperator.v1.27.3
        version: 1.27.3
      - name: sailoperator.v1.27.2
        version: 1.27.2
      - name: sailoperator.v1.27.1
        version: 1.27.1
      - name: sailoperator.v1.27.0
        version: 1.27.0
      name: stable-1.27
    - currentCSV: sailoperator.v1.28.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.28.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
          createdAt: "2025-12-10T15:50:55Z"
          description: The Sail Operator manages the lifecycle of your Istio control
            plane. It provides custom resources for you to deploy and manage your
            control plane components.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Community based
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          The Sail Operator manages the lifecycle of your Istio control plane. It provides custom resources for you to deploy and manage your control plane components.

          This version of the operator supports the following Istio versions:

          - v1.28-latest
          - v1.28.1
          - v1.28.0
          - v1.27-latest
          - v1.27.4
          - v1.27.3
          - v1.27.2
          - v1.27.1
          - v1.27.0
          - v1.26-latest
          - v1.26.7
          - v1.26.6
          - v1.26.5
          - v1.26.4
          - v1.26.3
          - v1.26.2
          - v1.26.1
          - v1.26.0

          [See this page](https://github.com/istio-ecosystem/sail-operator/blob/main/bundle/README.md) for instructions on how to use it.
        displayName: Sail Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/istio-release/proxyv2@sha256:8ff7b0d50cea9aa80512b6b9a75afc9021de6dc4d4151ce7946c5e04812a3de2
        - gcr.io/istio-release/proxyv2@sha256:4c830a386c93683bdf88249e089bc971361c419365663dc35aa1d5ba6be73c19
        - quay.io/sail-dev/sail-operator@sha256:71f235f0f3072618bd868376c7830f6efe7a38cad16e20a606e5b56738db8671
        - gcr.io/istio-release/pilot@sha256:dcc1431b635a2151f891ba17e8911d56f1aa1e4acaff0c543d0036b849cb0369
        - gcr.io/istio-release/ztunnel@sha256:5991f9a9202c9a1a59c41efb7e8b89e7a9cfc0dc39f71afe91cdd78c6ecf697c
        - gcr.io/istio-release/pilot@sha256:4dd632cc5a1a820f56525ad7731d6723451b72366fd782cc2a5f79039a4cfe92
        - gcr.io/istio-release/install-cni@sha256:313c8b38e89137cb455ee96891c2dc5b69f2907b13af324f0cac8b140897f107
        - gcr.io/istio-release/ztunnel@sha256:836e3f8b34527139523effc176cc138b93e69b4506ccb3dca75460e0ccb96138
        - gcr.io/istio-release/ztunnel@sha256:c1fd261b86750a453e26b693737cfaf9575e80be80ac3136580954f84e1033c3
        - gcr.io/istio-release/proxyv2@sha256:a9268faf5bb9d621e0506e3db2e9d7178b199dbfc609e19c32c1de5a3aee2fc4
        - gcr.io/istio-release/install-cni@sha256:42794fa2bc6862440587a78bacf7ebd3d8cfa63fc176a97ac134569ee50ab96d
        - gcr.io/istio-release/proxyv2@sha256:9c14df68458fde932fefb0122c4df9b7f241598aeb430e91b42af3c632c4ae91
        - gcr.io/istio-release/pilot@sha256:6a155682facaae9179431bf46d2d4c630450fdfa9d58a2210be36b63e445b82b
        - gcr.io/istio-release/proxyv2@sha256:d902f7f80be93a0521af5e5796d1e989f2107afd0725eca8881eb4c9848bd7bf
        - gcr.io/istio-release/install-cni@sha256:e4760b3092177073e6dcebcd28d0370942455582a195b6e58c72e7325737a24e
        - gcr.io/istio-release/proxyv2@sha256:5b83f93307e7cb0cc0bd11882629c54b475b568fce1304c9afb0df459bab1e8a
        - gcr.io/istio-release/pilot@sha256:0d1103581b970b5eaaa8aef977779d569a153ebf18b541a88281efdb5a70652c
        - gcr.io/istio-release/install-cni@sha256:697243b54b541cf07e562a57ca29fe82b8b268f090e8ebb7d4f33cb4660c3f39
        - gcr.io/istio-release/proxyv2@sha256:bc19e6e0978569a7cc886f3dececc3cb3613cf6e457ddf09e3cb849a2b315231
        - gcr.io/istio-release/ztunnel@sha256:fabda07d39993a740b69a54bcb6218eccaaf8fa6b4bcdb733664baf729ec9b21
        - gcr.io/istio-release/install-cni@sha256:ba4c1ad3c67be6681883162c8543e15b2ea78a79658665a450bce0f475674de5
        - gcr.io/istio-release/proxyv2@sha256:f95a5e91204afbfad9d33d6f1bc0556a96bf997b18edede6c9e6b86eb07543a1
        - gcr.io/istio-release/pilot@sha256:502c5a57143e80f9d8731bf08a25f31f09dbe231284233b9e715b4e62f22639b
        - gcr.io/istio-release/pilot@sha256:69e78ea08b624b75ed614e0a846d10fac2a10847d465fb803910e1d23afeaef8
        - gcr.io/istio-release/ztunnel@sha256:352baf7040b916b2d3de03388f14a8da0da5fa5e02a2589218261119b39a4594
        - gcr.io/istio-release/ztunnel@sha256:403a8ec528f7a983a4327a4f9f2f9ab116a838393250ff040731aa623fb2ac9b
        - gcr.io/istio-release/ztunnel@sha256:7e33000f86ea39490764e5b6244282405a342fab8ac2df692acfeb876ab8b03f
        - gcr.io/istio-release/install-cni@sha256:81295e43028ab50028f173a7ed2bf3d435201539b6b70f5938079771fe9e4561
        - quay.io/community-operator-pipeline-prod/sailoperator:1.28.1
        - gcr.io/istio-release/install-cni@sha256:d154a138edfda0671c613cc8ea1000e6a6142e9e0d47bdc72b3e2489256c2b58
        - gcr.io/istio-release/proxyv2@sha256:921c5ce2c5122facd9a25a7f974aaa4d3679cee38cb3f809e10618384fc3ce7f
        - gcr.io/istio-release/pilot@sha256:5109ab9a1e7f1cdc60430e8823957655710dcc4977479b67de3d43bbab18a3f6
        - gcr.io/istio-release/ztunnel@sha256:7e077e83b23afe8cc6e70708195fd1f96602aea11a1b959d72cc14e0fcbe487a
        - gcr.io/istio-release/install-cni@sha256:0c12e182a0e2a66f870a6e76b99b0e29b01795ede7dac66bf79a69c48e7e9c7b
        - gcr.io/istio-release/install-cni@sha256:9a0ee38b9b1c6240bc71e58cc1f5a9c6963860a98c3b3655955fc47be9b7cf42
        - gcr.io/istio-release/install-cni@sha256:8dda5692bbed6069d837acc084d5b142c325bba2491622a04ec42198c44562b4
        - gcr.io/istio-release/ztunnel@sha256:f562d8dd28e803061ee63853e7e1da07188ec24e734ebf0d95ec2126b41ac392
        - gcr.io/istio-release/pilot@sha256:1d4fbb7859e515b85b6c2c4787224e4e7cba73aad4573d98e2a83cc028cad392
        - gcr.io/istio-release/pilot@sha256:c4e33921e030bb22d3b8fabc693851d52c07a7af79a9534addc2f50005fa462a
        - gcr.io/istio-release/ztunnel@sha256:e3bc4444deb33641b53883a54fff0b11ed4f95c86335dc9af02ab89a9dfe2e46
        - gcr.io/istio-release/proxyv2@sha256:fd734e6031566b4fb92be38f0f6bb02fdba6c199c45c2db5dc988bbc4fdee026
        - gcr.io/istio-release/ztunnel@sha256:38caa7fed18c6d3283892de20ce508aed536622645e4b500395c00f6d1bb26de
        - gcr.io/istio-release/ztunnel@sha256:9e90756a9696ea1c14d8b24aeddbb5fee7abeff5db5464fa1ba2292081885f7b
        - gcr.io/istio-release/proxyv2@sha256:b00a23cb37e7b8e422b57e617c1bb7304955e368308b5c166e38f0444e0f5a08
        - gcr.io/istio-release/pilot@sha256:35449fe268bb35adfb996a0769867fd13af19bdc9cc4db33947f45c052eca88e
        - gcr.io/istio-release/ztunnel@sha256:17cc6794403b3ab64629da79fbacccb22f3c7fff46bb53627f2120f5331d7a13
        - gcr.io/istio-release/install-cni@sha256:364a0a1cd49390b7ea27b5bf73c2a633810c834fa073f7710501363a4f592eb0
        - gcr.io/istio-release/ztunnel@sha256:2d567893e5b452d5c0b9c43a43efd4f8e28e639a344e28d90498f13858f13d46
        - gcr.io/istio-release/proxyv2@sha256:8479104e2f2f56cde857d64528afaa3adcd9715c8207691ea15971737b03d484
        - gcr.io/istio-release/pilot@sha256:df4506b4356a4ae14e4361751e74944232ec211036c763d7482633fc17187420
        - gcr.io/istio-release/pilot@sha256:43e24609869d90ea7c12c878474e5905b02676e7dd827903be42c15599cde1b7
        - gcr.io/istio-release/proxyv2@sha256:d78126603f2e604b8eff1a2f1bed27cb7ee16a75e5db69bbb909fea2862be873
        - gcr.io/istio-release/install-cni@sha256:3c5fff9805d1cd6ae684597d885e4c85a28e4555edd7b7b5b6bcc125b459f12e
        - gcr.io/istio-release/pilot@sha256:0bb4d26e88b61cd2f81d39378111a38a151ec5bf0cb65be49c20d1ef41956299
        - gcr.io/istio-release/ztunnel@sha256:4837a0c947fff4efa8516e7dd01596011b1f9ace62897bf81c37331ddfd9b13d
        - gcr.io/istio-release/proxyv2@sha256:763fe67a865798bcfbdd620bc3c298443a6e244dacf28560f15426465b5e6705
        - gcr.io/istio-release/pilot@sha256:1201572e4da6dbbd989376cab17340012176a94678742bca156fd077f0da4929
        - gcr.io/istio-release/install-cni@sha256:8e782f5077f63c0a15fd4b9a4fa75f8543033c28ccf2457e25afbf1aefb6a72a
        - gcr.io/istio-release/install-cni@sha256:a84971fd29ce54181dc4ceee6dbde8032bebd5a72301319a0468e5bc39902080
        - gcr.io/istio-release/install-cni@sha256:ee1f34354d7043e919216ef6addd2b155349a2e26bf23a35f7405b90724577fd
        - gcr.io/istio-release/pilot@sha256:d0930e5cf028deeb636364595b4d0a42e05d5745850013bae297b32a9315ab18
        - gcr.io/istio-release/proxyv2@sha256:c68e79b821ba47c63af844422114af6d5cc01cc1fd8f1b0184c42be330afc1d2
        version: 1.28.1
      entries:
      - name: sailoperator.v1.28.1
        version: 1.28.1
      - name: sailoperator.v1.28.0
        version: 1.28.0
      name: stable-1.28
    defaultChannel: stable
    packageName: sailoperator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: ""
    name: ingress-node-firewall
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ingress-node-firewall.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ingressnodefirewall.openshift.io/v1alpha1",
                "kind": "IngressNodeFirewall",
                "metadata": {
                  "name": "ingressnodefirewall-demo2"
                },
                "spec": {
                  "ingress": [
                    {
                      "rules": [
                        {
                          "action": "Deny",
                          "order": 10,
                          "protocolConfig": {
                            "icmp": {
                              "icmpType": 8
                            },
                            "protocol": "ICMP"
                          }
                        },
                        {
                          "action": "Deny",
                          "order": 20,
                          "protocolConfig": {
                            "protocol": "TCP",
                            "tcp": {
                              "ports": "8000-9000"
                            }
                          }
                        }
                      ],
                      "sourceCIDRs": [
                        "172.16.0.0/12"
                      ]
                    },
                    {
                      "rules": [
                        {
                          "action": "Deny",
                          "order": 10,
                          "protocolConfig": {
                            "icmpv6": {
                              "icmpType": 128
                            },
                            "protocol": "ICMPv6"
                          }
                        }
                      ],
                      "sourceCIDRs": [
                        "fc00:f853:ccd:e793::0/64"
                      ]
                    }
                  ],
                  "interfaces": [
                    "eth0"
                  ],
                  "nodeSelector": {
                    "matchLabels": {
                      "do-node-ingress-firewall": "true"
                    }
                  }
                }
              },
              {
                "apiVersion": "ingressnodefirewall.openshift.io/v1alpha1",
                "kind": "IngressNodeFirewallConfig",
                "metadata": {
                  "name": "ingressnodefirewallconfig",
                  "namespace": "ingress-node-firewall-system"
                },
                "spec": {
                  "debug": false,
                  "ebpfProgramManagerMode": false,
                  "nodeSelector": {
                    "node-role.kubernetes.io/worker": ""
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ingress-node-firewall-rhel9-operator@sha256:be9d43da922a7128c25945c296cb7b05f25c91417baf286d22330f43c3fbb9ff
          createdAt: "2025-09-04T08:25:04Z"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.11.0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-ingress-node-firewall
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/ingress-node-firewall
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: IngressNodeFirewallConfig
            name: ingressnodefirewallconfigs.ingressnodefirewall.openshift.io
            version: v1alpha1
          - kind: IngressNodeFirewallNodeState
            name: ingressnodefirewallnodestates.ingressnodefirewall.openshift.io
            version: v1alpha1
          - kind: IngressNodeFirewall
            name: ingressnodefirewalls.ingressnodefirewall.openshift.io
            version: v1alpha1
        description: The Ingress node firewall operator, manages the configuration
          of cluster scoped Ingress Node firewall rules for Kubernetes.
        displayName: Ingress Node Firewall Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ingressnodefirewall
        links:
        - name: Ingress Node Firewall
          url: https://github.com/openshift/ingress-node-firewall
        maintainers:
        - email: mmahmoud@redhat.com
          name: msherif1234
        maturity: alpha
        provider:
          name: Red Hat, Inc
        relatedImages:
        - registry.redhat.io/openshift4/ingress-node-firewall-operator-bundle@sha256:82df35fea3406d71cb5f49f06098ea2946cd3efb4685b662eee0f60d27ecf33c
        - registry.redhat.io/openshift4/ingress-node-firewall-rhel9-operator@sha256:be9d43da922a7128c25945c296cb7b05f25c91417baf286d22330f43c3fbb9ff
        - registry.redhat.io/openshift4/ingress-node-firewall-rhel9@sha256:9d305bfa5f20dcdec7dd826670814ec8a92c7c177b00b9bddaae4c8a1cb31403
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 4.20.0-202512081147
      entries:
      - name: ingress-node-firewall.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: ingress-node-firewall.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: ingress-node-firewall.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: ingress-node-firewall.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: ingress-node-firewall.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: ingress-node-firewall.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: ingress-node-firewall.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: ingress-node-firewall
    provider:
      name: Red Hat, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://skupper.io
    name: skupper-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: skupper-operator.v1.4.8-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:1fd908e80ef21fe7d7051c400cb099f2f3ca51c8cdd698705ef9784d34688911
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:4c9cc9df83baa1ef37cfb429babe5b86a962b8bb096209b3fb74291c67c94000
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:0f6c6faf7fdf7b6d69bc5cc4b0266064d0035e295d0562b957d95c8c81699f2b
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:c665677c639699d6a5ef24aed5a1a3d9c0a5ee25f077a6db42a9fc6247d93132
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:eedde9f2019d4e919612bcc18f427c0d88b4846e773751af231ba0e560d48869
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:65602221cdff7f718d4149f4dead167d05dbbe0cea1eaa8bf4b98be588135583
        version: 1.4.8-rh-1
      entries:
      - name: skupper-operator.v1.4.8-rh-1
        version: 1.4.8-rh-1
      - name: skupper-operator.v1.4.7-rh-3
        version: 1.4.7-rh-3
      - name: skupper-operator.v1.4.7-rh-2
        version: 1.4.7-rh-2
      - name: skupper-operator.v1.4.7-rh-1
        version: 1.4.7-rh-1
      - name: skupper-operator.v1.4.5-rh-4
        version: 1.4.5-rh-4
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: alpha
    - currentCSV: skupper-operator.v1.9.4-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.9.4-rh-1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:97f1a693c36b909b31a8b3141a5ea07b9c369acb98f9f89771de8db09d209fad
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:9abea7559799ec9315c646ac00688582044a2783973efb0caf01f8c401ca4c82
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:b981b42e7ba47169636ab14f3ec092aadfdc374399b5856d77a0cefd5295fca1
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:8010bd9fa41fcd706a84d20bf54c27f59ab1f6c6e1a10881e42e1f71a1c7e237
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:039fcc42f7935dc3a5fea4da1b9b858ae0dabf6855a101543edd5fcea2b57392
        version: 1.9.4-rh-1
      entries:
      - name: skupper-operator.v1.9.4-rh-1
        version: 1.9.4-rh-1
      - name: skupper-operator.v1.9.2-rh-1
        version: 1.9.2-rh-1
      - name: skupper-operator.v1.9.1-rh-1
        version: 1.9.1-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable
    - currentCSV: skupper-operator.v1.9.4-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.9.4-rh-1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:9abea7559799ec9315c646ac00688582044a2783973efb0caf01f8c401ca4c82
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:b981b42e7ba47169636ab14f3ec092aadfdc374399b5856d77a0cefd5295fca1
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:8010bd9fa41fcd706a84d20bf54c27f59ab1f6c6e1a10881e42e1f71a1c7e237
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:039fcc42f7935dc3a5fea4da1b9b858ae0dabf6855a101543edd5fcea2b57392
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:97f1a693c36b909b31a8b3141a5ea07b9c369acb98f9f89771de8db09d209fad
        version: 1.9.4-rh-1
      entries:
      - name: skupper-operator.v1.9.4-rh-1
        version: 1.9.4-rh-1
      - name: skupper-operator.v1.9.2-rh-1
        version: 1.9.2-rh-1
      - name: skupper-operator.v1.9.1-rh-1
        version: 1.9.1-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1
    - currentCSV: skupper-operator.v1.4.8-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:1fd908e80ef21fe7d7051c400cb099f2f3ca51c8cdd698705ef9784d34688911
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:4c9cc9df83baa1ef37cfb429babe5b86a962b8bb096209b3fb74291c67c94000
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:0f6c6faf7fdf7b6d69bc5cc4b0266064d0035e295d0562b957d95c8c81699f2b
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:c665677c639699d6a5ef24aed5a1a3d9c0a5ee25f077a6db42a9fc6247d93132
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:eedde9f2019d4e919612bcc18f427c0d88b4846e773751af231ba0e560d48869
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:be37ebbe5a0c07497ccd903a9c627dd3a3fec4dcedae1e8737dd1ffed367cf99
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:65602221cdff7f718d4149f4dead167d05dbbe0cea1eaa8bf4b98be588135583
        version: 1.4.8-rh-1
      entries:
      - name: skupper-operator.v1.4.8-rh-1
        version: 1.4.8-rh-1
      - name: skupper-operator.v1.4.7-rh-3
        version: 1.4.7-rh-3
      - name: skupper-operator.v1.4.7-rh-2
        version: 1.4.7-rh-2
      - name: skupper-operator.v1.4.7-rh-1
        version: 1.4.7-rh-1
      - name: skupper-operator.v1.4.5-rh-4
        version: 1.4.5-rh-4
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.4
    - currentCSV: skupper-operator.v1.5.5-rh-6
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:9e9e1f2288f0218e3ba2abf4bebac9731d7cf9f9c567e0f6de6767b0b66cbee4
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:1de071dabf620265252f3922c632f17f676ba716ce4c3df931a0ccb3871dbb6c
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:9e9e1f2288f0218e3ba2abf4bebac9731d7cf9f9c567e0f6de6767b0b66cbee4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:3e78ec8cdb729a704d5a26e54697f285ba7c0b9afee6160b7ecc703876120dea
        - registry.redhat.io/openshift4/ose-prometheus@sha256:53afaf53975807765fc3777314edd218c789c17680c1f57a8e33a8f9a76f38bf
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:5f8621d0013febcecbed4d7c82db11a4dded99ad8ce6b6d83858b9bdbe79ee5a
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:a5d7c1b2b9db672548126c0873d062a55667d93291fd3e32809d3c9c900c548e
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:aa261c79b421bd49f7b46974a3bb5a790d5a1a73dd8dea4e1d8a4634fb68a51f
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:be9dbcd2a3a1e1e536921390dcfd283fc45dc4423d2705376ef37a9fb53f7cf1
        version: 1.5.5-rh-6
      entries:
      - name: skupper-operator.v1.5.5-rh-6
        version: 1.5.5-rh-6
      - name: skupper-operator.v1.5.5-rh-5
        version: 1.5.5-rh-5
      - name: skupper-operator.v1.5.5-rh-4
        version: 1.5.5-rh-4
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.5
    - currentCSV: skupper-operator.v1.8.7-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:b0d43628b779a101a24e4b271318a34c21f3b71bcba2bf20804f941a93d27455
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.8.7-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:3adeef827eca0382cd410f7c3e99a0fee9b50791cb0e0c6fc130b72a2550684f
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5ea36e96f878577104ab7601e57e7a2a233f11dbdc533454f95e2e14a066d21f
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:56b8fde75a6e7df235c560a0f4b9114398da5ba8b20f75f1ea7338f48ce19506
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:d7d252cff08ba1589afd8707ed349f87d3b6214906a4fb49932bda0a4d19fee4
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:123488f0877c054a348f5b4135e68d77c17523bc4e5ea14dd73168372592f4ce
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:f798745e799515065af099a816057b9c98a741e951d30a0f45ed47ca50e6724e
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:61542c5f0989f51ac5d6c96f5d0e29aca75614b79e7626299c77c5a74636b564
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:b0d43628b779a101a24e4b271318a34c21f3b71bcba2bf20804f941a93d27455
        version: 1.8.7-rh-2
      entries:
      - name: skupper-operator.v1.8.7-rh-2
        version: 1.8.7-rh-2
      - name: skupper-operator.v1.8.7-rh-1
        version: 1.8.7-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.8
    - currentCSV: skupper-operator.v1.9.4-rh-1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
          createdAt: "2021-04-14T08:00:00Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>1.4.0-rh-1 <1.9.4-rh-1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The Red Hat Service Interconnect operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Red Hat Service Interconnect operator will create and configure the site instance.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper
          url: https://skupper.io
        maintainers:
        - email: ansmith@redhat.com
          name: Andy Smith
        - email: fgiorget@redhat.com
          name: Fernando Giorgetti
        - email: gsim@redhat.com
          name: Gordon Sim
        - email: nluaces@redhat.com
          name: Noe Luaces
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-service-controller-rhel9@sha256:b981b42e7ba47169636ab14f3ec092aadfdc374399b5856d77a0cefd5295fca1
        - registry.redhat.io/service-interconnect/skupper-site-controller-rhel9@sha256:a48771488b13663283783c8d2350cf67baf64b638e0108139ee37a702194593b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:8010bd9fa41fcd706a84d20bf54c27f59ab1f6c6e1a10881e42e1f71a1c7e237
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:039fcc42f7935dc3a5fea4da1b9b858ae0dabf6855a101543edd5fcea2b57392
        - registry.redhat.io/service-interconnect/skupper-config-sync-rhel9@sha256:a9926486d25ca1d9b5886a08a660fb11a08a6100adfa410ae9c353009bfbf4c5
        - registry.redhat.io/service-interconnect/skupper-flow-collector-rhel9@sha256:0bc6bb33f6bce7a48847f35656f8a8ec2910247150f8db1f1515a3487f1f6bba
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:97f1a693c36b909b31a8b3141a5ea07b9c369acb98f9f89771de8db09d209fad
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:9abea7559799ec9315c646ac00688582044a2783973efb0caf01f8c401ca4c82
        version: 1.9.4-rh-1
      entries:
      - name: skupper-operator.v1.9.4-rh-1
        version: 1.9.4-rh-1
      - name: skupper-operator.v1.9.2-rh-1
        version: 1.9.2-rh-1
      - name: skupper-operator.v1.9.1-rh-1
        version: 1.9.1-rh-1
      - name: skupper-operator.v1.8.5-rh-2
        version: 1.8.5-rh-2
      - name: skupper-operator.v1.8.3-rh-1
        version: 1.8.3-rh-1
      - name: skupper-operator.v1.8.2-rh-2
        version: 1.8.2-rh-2
      - name: skupper-operator.v1.8.1-rh-3
        version: 1.8.1-rh-3
      - name: skupper-operator.v1.5.5-rh-1
        version: 1.5.5-rh-1
      - name: skupper-operator.v1.5.4-rh-2
        version: 1.5.4-rh-2
      - name: skupper-operator.v1.5.3-rh-3
        version: 1.5.3-rh-3
      - name: skupper-operator.v1.4.4-rh-1
        version: 1.4.4-rh-1
      - name: skupper-operator.v1.4.3-rh-6
        version: 1.4.3-rh-6
      - name: skupper-operator.v1.4.2-rh-2
        version: 1.4.2-rh-2
      - name: skupper-operator.v1.4.1-rh-1
        version: 1.4.1-rh-1
      - name: skupper-operator.v1.2.2
        version: 1.2.2
      - name: skupper-operator.v1.2.1
        version: 1.2.1
      - name: skupper-operator.v1.2.0
        version: 1.2.0
      - name: skupper-operator.v1.0.8
        version: 1.0.8
      - name: skupper-operator.v1.0.7
        version: 1.0.7
      - name: skupper-operator.v1.0.6
        version: 1.0.6
      - name: skupper-operator.v1.0.5
        version: 1.0.5
      - name: skupper-operator.v1.0.4
        version: 1.0.4
      name: stable-1.9
    - currentCSV: skupper-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessGrant",
                "metadata": {
                  "name": "my-grant"
                },
                "spec": {
                  "expirationWindow": "1h",
                  "redemptionsAllowed": 10
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessToken",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "ca": "-----BEGIN CERTIFICATE-----\nMIIDNzCCAh+ … Q=\n-----END CERTIFICATE-----\n",
                  "code": "L1qCl2mZ7D81gbXp3ax4YT0K",
                  "url": "https://10.107.241.191:9090/86b80f6b-2b02-47ac-bab4-d285bb4f7b9d"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnector",
                "metadata": {
                  "name": "backend",
                  "namespace": "other"
                },
                "spec": {
                  "port": 8080,
                  "selector": "app=backend",
                  "siteNamespace": "west"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnectorBinding",
                "metadata": {
                  "name": "backend",
                  "namespace": "west"
                },
                "spec": {
                  "connectorNamespace": "other",
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "west-certificate"
                },
                "spec": {
                  "client": true
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Connector",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "port": 8080,
                  "routingKey": "backend",
                  "selector": "app=backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Link",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "endpoints": [
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "inter-router",
                      "port": "55671"
                    },
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "edge",
                      "port": "45671"
                    }
                  ],
                  "tlsCredentials": "my-token"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "host": "backend",
                  "port": 8080,
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "RouterAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "SecuredAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Site",
                "metadata": {
                  "name": "west"
                },
                "spec": {
                  "ha": true,
                  "linkAccess": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
          createdAt: "2025-10-21T19:59:28Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessGrant
            name: accessgrants.skupper.io
            version: v2alpha1
          - kind: AccessToken
            name: accesstokens.skupper.io
            version: v2alpha1
          - kind: AttachedConnectorBinding
            name: attachedconnectorbindings.skupper.io
            version: v2alpha1
          - kind: AttachedConnector
            name: attachedconnectors.skupper.io
            version: v2alpha1
          - kind: Certificate
            name: certificates.skupper.io
            version: v2alpha1
          - kind: Connector
            name: connectors.skupper.io
            version: v2alpha1
          - kind: Link
            name: links.skupper.io
            version: v2alpha1
          - kind: Listener
            name: listeners.skupper.io
            version: v2alpha1
          - kind: RouterAccess
            name: routeraccesses.skupper.io
            version: v2alpha1
          - kind: SecuredAccess
            name: securedaccesses.skupper.io
            version: v2alpha1
          - kind: Site
            name: sites.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:912185defb2a16b8cc9070e5decc704f1a0b363858e26c19701655ea34adf35a
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:c0f5768b542346686b8bd0132238f047d644a2ea1a7e3692d6d947f8f977dc93
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:ca6b432e34aa02e67e32f707bf1b4234760afc681a2561c19d85a503ecac00f0
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
        - registry.redhat.io/service-interconnect/skupper-kube-adaptor-rhel9@sha256:80cb17acc05e13c9aa3556d186a7ab8557085039db4105e21f0366d34b2074fe
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:d401f69273344a89767c1f385d74b7b5a4eb3b9552336dd097e06859e40ca4e5
        version: 2.1.2-rh-2
      entries:
      - name: skupper-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-operator.v2.1.1-rh-3
        version: 2.1.1-rh-3
      - name: skupper-operator.v2.0.1-rh-2
        version: 2.0.1-rh-2
      - name: skupper-operator.v2.0.0-rh-11
        version: 2.0.0-rh-11
      name: stable-2
    - currentCSV: skupper-operator.v2.0.1-rh-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessGrant",
                "metadata": {
                  "name": "my-grant"
                },
                "spec": {
                  "expirationWindow": "1h",
                  "redemptionsAllowed": 10
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessToken",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "ca": "-----BEGIN CERTIFICATE-----\nMIIDNzCCAh+ … Q=\n-----END CERTIFICATE-----\n",
                  "code": "L1qCl2mZ7D81gbXp3ax4YT0K",
                  "url": "https://10.107.241.191:9090/86b80f6b-2b02-47ac-bab4-d285bb4f7b9d"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnector",
                "metadata": {
                  "name": "backend",
                  "namespace": "other"
                },
                "spec": {
                  "port": 8080,
                  "selector": "app=backend",
                  "siteNamespace": "west"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnectorBinding",
                "metadata": {
                  "name": "backend",
                  "namespace": "west"
                },
                "spec": {
                  "connectorNamespace": "other",
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "west-certificate"
                },
                "spec": {
                  "client": true
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Connector",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "port": 8080,
                  "routingKey": "backend",
                  "selector": "app=backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Link",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "endpoints": [
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "inter-router",
                      "port": "55671"
                    },
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "edge",
                      "port": "45671"
                    }
                  ],
                  "tlsCredentials": "my-token"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "host": "backend",
                  "port": 8080,
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "RouterAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "SecuredAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Site",
                "metadata": {
                  "name": "west"
                },
                "spec": {
                  "ha": true,
                  "linkAccess": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:b092400308feb51d76d61616a26a76b1ec4f9962719e012187fdf931f0b93f25
          createdAt: "2025-11-28T14:26:01Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>2.0.0-rh-1 <2.0.1-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessGrant
            name: accessgrants.skupper.io
            version: v2alpha1
          - kind: AccessToken
            name: accesstokens.skupper.io
            version: v2alpha1
          - kind: AttachedConnectorBinding
            name: attachedconnectorbindings.skupper.io
            version: v2alpha1
          - kind: AttachedConnector
            name: attachedconnectors.skupper.io
            version: v2alpha1
          - kind: Certificate
            name: certificates.skupper.io
            version: v2alpha1
          - kind: Connector
            name: connectors.skupper.io
            version: v2alpha1
          - kind: Link
            name: links.skupper.io
            version: v2alpha1
          - kind: Listener
            name: listeners.skupper.io
            version: v2alpha1
          - kind: RouterAccess
            name: routeraccesses.skupper.io
            version: v2alpha1
          - kind: SecuredAccess
            name: securedaccesses.skupper.io
            version: v2alpha1
          - kind: Site
            name: sites.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:fe0081a3339698f20c44bdcf33885747f5a44d69aa7dcebc460dea586231b37f
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:96cae6bbe557d0f60cb9364919a7b12ea7c462c5d4c663d2084433393938cf2a
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:b8308c9c9eecf421756643ec0eaeacbacda70dfdbe5ec2c0883578e9db474952
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:b092400308feb51d76d61616a26a76b1ec4f9962719e012187fdf931f0b93f25
        - registry.redhat.io/service-interconnect/skupper-kube-adaptor-rhel9@sha256:215ead3803dc808532748db1105884c577e151a79170fa50bc4249161c335f49
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:c76a55e1687fb53e17e66d2b0e57849d637835147247acf7182b8a9eb4ce1575
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:aec9e002029591c20e94725cf0b09b0ae575139ac0bd0e3805f67e2446d4a702
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:f3430023e46fe5404176fd48b93cc6008836d2454131f09b00c38dacc0147e2b
        version: 2.0.1-rh-4
      entries:
      - name: skupper-operator.v2.0.1-rh-4
        version: 2.0.1-rh-4
      - name: skupper-operator.v2.0.1-rh-2
        version: 2.0.1-rh-2
      - name: skupper-operator.v2.0.0-rh-11
        version: 2.0.0-rh-11
      name: stable-2.0
    - currentCSV: skupper-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessGrant",
                "metadata": {
                  "name": "my-grant"
                },
                "spec": {
                  "expirationWindow": "1h",
                  "redemptionsAllowed": 10
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AccessToken",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "ca": "-----BEGIN CERTIFICATE-----\nMIIDNzCCAh+ … Q=\n-----END CERTIFICATE-----\n",
                  "code": "L1qCl2mZ7D81gbXp3ax4YT0K",
                  "url": "https://10.107.241.191:9090/86b80f6b-2b02-47ac-bab4-d285bb4f7b9d"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnector",
                "metadata": {
                  "name": "backend",
                  "namespace": "other"
                },
                "spec": {
                  "port": 8080,
                  "selector": "app=backend",
                  "siteNamespace": "west"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "AttachedConnectorBinding",
                "metadata": {
                  "name": "backend",
                  "namespace": "west"
                },
                "spec": {
                  "connectorNamespace": "other",
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Certificate",
                "metadata": {
                  "name": "west-certificate"
                },
                "spec": {
                  "client": true
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Connector",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "port": 8080,
                  "routingKey": "backend",
                  "selector": "app=backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Link",
                "metadata": {
                  "name": "my-token"
                },
                "spec": {
                  "endpoints": [
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "inter-router",
                      "port": "55671"
                    },
                    {
                      "group": "skupper-router-1",
                      "host": "10.102.82.46",
                      "name": "edge",
                      "port": "45671"
                    }
                  ],
                  "tlsCredentials": "my-token"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "backend"
                },
                "spec": {
                  "host": "backend",
                  "port": 8080,
                  "routingKey": "backend"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "RouterAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "SecuredAccess",
                "metadata": {
                  "name": "west-access"
                },
                "spec": {
                  "issuer": "default"
                }
              },
              {
                "apiVersion": "skupper.io/v2alpha1",
                "kind": "Site",
                "metadata": {
                  "name": "west"
                },
                "spec": {
                  "ha": true,
                  "linkAccess": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
          createdAt: "2025-10-21T19:59:28Z"
          description: Red Hat Service Interconnect Operator provides the ability
            to create a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessGrant
            name: accessgrants.skupper.io
            version: v2alpha1
          - kind: AccessToken
            name: accesstokens.skupper.io
            version: v2alpha1
          - kind: AttachedConnectorBinding
            name: attachedconnectorbindings.skupper.io
            version: v2alpha1
          - kind: AttachedConnector
            name: attachedconnectors.skupper.io
            version: v2alpha1
          - kind: Certificate
            name: certificates.skupper.io
            version: v2alpha1
          - kind: Connector
            name: connectors.skupper.io
            version: v2alpha1
          - kind: Link
            name: links.skupper.io
            version: v2alpha1
          - kind: Listener
            name: listeners.skupper.io
            version: v2alpha1
          - kind: RouterAccess
            name: routeraccesses.skupper.io
            version: v2alpha1
          - kind: SecuredAccess
            name: securedaccesses.skupper.io
            version: v2alpha1
          - kind: Site
            name: sites.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-cli-rhel9@sha256:ca6b432e34aa02e67e32f707bf1b4234760afc681a2561c19d85a503ecac00f0
        - registry.redhat.io/service-interconnect/skupper-controller-rhel9@sha256:58fb519a253f69f767f50eeb5a04771ca473300b6ef169d1aabb0cb7e5a13e6a
        - registry.redhat.io/service-interconnect/skupper-kube-adaptor-rhel9@sha256:80cb17acc05e13c9aa3556d186a7ab8557085039db4105e21f0366d34b2074fe
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/service-interconnect/skupper-operator-bundle@sha256:d401f69273344a89767c1f385d74b7b5a4eb3b9552336dd097e06859e40ca4e5
        - registry.redhat.io/service-interconnect/skupper-router-rhel9@sha256:912185defb2a16b8cc9070e5decc704f1a0b363858e26c19701655ea34adf35a
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:c0f5768b542346686b8bd0132238f047d644a2ea1a7e3692d6d947f8f977dc93
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        version: 2.1.2-rh-2
      entries:
      - name: skupper-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-operator.v2.1.1-rh-3
        version: 2.1.1-rh-3
      - name: skupper-operator.v2.0.1-rh-2
        version: 2.0.1-rh-2
      - name: skupper-operator.v2.0.0-rh-11
        version: 2.0.0-rh-11
      name: stable-2.1
    defaultChannel: stable-2
    packageName: skupper-operator
    provider:
      name: Red Hat
      url: https://skupper.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: eG Innovations
      provider-url: https://www.eginnovations.com
    name: eginnovations-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eginnovations-operator.v0.0.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eginnovations.com/v1beta1",
                "kind": "EgUniversalAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "eginnovations-operator"
                  },
                  "name": "eguniversalagent",
                  "namespace": "egagent"
                },
                "spec": {
                  "agent": {
                    "env": [
                      {
                        "name": "EG_MANAGER",
                        "value": "Replace with eG Manager IP"
                      },
                      {
                        "name": "EG_MANAGER_PORT",
                        "value": "Replace with eG Manager Port"
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "true"
          containerImage: docker.io/eginnovations/universal-agent-operator@sha256:b8e3e26dca1b94fabfd79496feb36f3f2de4434331ef9ca810125892a936dca7
          createdAt: "2025-09-11T20:08:00Z"
          description: eG Innovations provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with eG Universal Agent Operator.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/eginnovations/universal-agent-operator
          support: eG Innovations
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EgUniversalAgent is the Schema for the eguniversalagents
              API
            displayName: Eg Universal Agent
            kind: EgUniversalAgent
            name: eguniversalagents.eginnovations.com
            version: v1beta1
        description: |
          eG Innovations’ converged application and infrastructure performance monitoring capabilities provide end-to-end visibility and correlated analytics for every layer, every tier of your IT landscape.

          The eG Enterprise Universal Agent Operator automatically configures a host agent on every Kubernetes worker node. The host agent auto-discovers the worker nodes and application containers running as Pods on each node and tracks their performance and utilization levels. In-depth monitoring of applications running on containers is also provided using the same host agent. No additional agents are required for the containers.

          ### Capabilities
            * Rolls out the egagent pod per node to monitor its pods and the node itself
            * Automatic BTM profiler injection using webhook based injection for deep application monitoring and transection tracing.

          ### Installation
            1. Create the namespace "egagent" for installing eG Agent on OpenShift Cluster.

               <br />``` $ oc create ns egagent ```
            2. Add "egagent" serviceaccount to scc( Security Context Constraints ) of OpenShift Cluster as privileged using below command.

               <br />``` $ oc adm policy add-scc-to-user privileged -z egagent -n egagent ```
            2. Install eG Innovations Universal Agent operator from [OpenShift Container Platform](https://www.openshift.com/) OperatorHub.
            3. Create the eG Universal Agent CRD (Custom Resource Definition)
               a. Click "View YAML Example" and copy the yaml contents and save it to (filename).yaml on your host.
               b. To apply the CRD run the following command

               <br />``` $ oc apply -f (filename).yaml ```

          ### Required Parameters
            * EG\_MANAGER, EG\_MANAGER\_PORT - provide the ip and port of your eG Manager Installation.

          ### Advanced Options
            * Disable Certificate Checking - disable any certificate validation that may interact poorly with proxies within your cluster
            * Image Override - use a copy of the eG Iniversal Agent container image from a registry other that Docker's or Red Hat's
            * Environment variables - define environment variables for the eG Universal Agent container of for APM profiler.
            * Namespace Selectors- select a subset of namesapces to enable instrumentation for applications.

          For complete list of supported parameters and the detailed documentation available in [eG Innovations Docs](https://docs.eginnovations.com)
        displayName: eG Innovations Universal Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Monitoring
        - Tracing
        links:
        - name: eG Innovations Kubernetes Monitoring Overview
          url: https://www.eginnovations.com/documentation/Kubernetes/Introduction-to-Monitoring-Kubernetes.htm
        maintainers:
        - email: devops@eginnovations.com
          name: eG Innovations
        maturity: beta
        minKubeVersion: 1.26.0
        provider:
          name: eG Innovations
          url: https://www.eginnovations.com
        relatedImages:
        - docker.io/eginnovations/universal-agent-operator@sha256:b8e3e26dca1b94fabfd79496feb36f3f2de4434331ef9ca810125892a936dca7
        - registry.connect.redhat.com/eginnovations/universal-agent-operator@sha256:65f851074e0e1db57a62b559c0f10f9d30543011727aec3b832f9a35468139e9
        version: 0.0.11
      entries:
      - name: eginnovations-operator.v0.0.11
        version: 0.0.11
      name: beta
    defaultChannel: beta
    packageName: eginnovations-operator
    provider:
      name: eG Innovations
      url: https://www.eginnovations.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Aqua Security, Inc.
      provider-url: ""
    name: aqua-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aqua-operator.2022.4.860
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaCsp",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "namespace": "aqua",
                    "version": "2022.4",
                    "requirements": true
                  },
                  "common": {
                    "dbDiskSize": 10,
                    "databaseSecret": {
                      "key": "db-password",
                      "name": "aqua-database-password"
                    }
                  },
                  "database": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  },
                  "gateway": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  },
                  "server": {
                    "replicas": 1,
                    "service": "LoadBalancer"
                  },
                  "route": true,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaDatabase",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "splitDB": false
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  },
                  "diskSize": 10,
                  "runAsNonRoot": false
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "runAsNonRoot": false,
                  "gateway": {
                    "host": "aqua-gateway",
                    "port": 8443
                  },
                  "token": "<<your-token>>"
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaKubeEnforcer",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "infra": {
                    "version": "2022.4",
                    "serviceAccount": "aqua-kube-enforcer-sa"
                  },
                  "config": {
                    "gateway_address": "aqua-gateway.aqua:8443",
                    "cluster_name": "aqua-secure",
                    "imagePullSecret": "aqua-registry"
                  },
                  "deploy": {
                    "service": "ClusterIP"
                  },
                  "starboard": {
                    "infra": {
                      "serviceAccount": "starboard-operator"
                    },
                    "config": {
                      "imagePullSecret": "aqua-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    }
                  },
                  "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>"
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaGateway",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "ClusterIP"
                  }
                },
                "runAsNonRoot": false
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaScanner",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "deploy": {
                    "replicas": 1
                  },
                  "env": [],
                  "runAsNonRoot": false,
                  "login": {
                    "username": "<<YOUR AQUA USER NAME>>",
                    "password": "<<YOUR AQUA USER PASSWORD>>",
                    "host": "http://aqua-server:8080"
                  }
                }
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaServer",
                "metadata": {
                  "name": "aqua",
                  "namespace": "aqua"
                },
                "spec": {
                  "infra": {
                    "serviceAccount": "aqua-sa",
                    "version": "2022.4"
                  },
                  "common": {
                    "databaseSecret": {
                      "name": "<<EXTERNAL DB PASSWORD SECRET NAME>>",
                      "key": "<<EXTERNAL DB PASSWORD SECRET KEY>>"
                    },
                    "splitDB": false
                  },
                  "externalDb": {
                    "host": "<<EXTERNAL DB IP OR DNS>>",
                    "port": "<<EXTERNAL DB PORT>>",
                    "username": "<<EXTERNAL DB USERNAME>>",
                    "password": "<<EXTERNAL DB PASSWORD (if secret does not exist)>>"
                  },
                  "deploy": {
                    "replicas": 1,
                    "service": "LoadBalancer"
                  }
                },
                "runAsNonRoot": false
              },
              {
                "apiVersion": "operator.aquasec.com/v1alpha1",
                "kind": "AquaLightning",
                "metadata": {
                  "name": "aqua"
                },
                "spec": {
                  "global": {
                    "gateway_address": "aqua-gateway.aqua:8443",
                    "cluster_name": "Default-cluster-name"
                  },
                  "common": {
                    "imagePullSecret": "aqua-registry"
                  },
                  "kubeEnforcer": {
                    "infra": {
                      "serviceAccount": "aqua-kube-enforcer-sa"
                    },
                    "token": "<<KUBE_ENFORCER_GROUP_TOKEN>>",
                    "deploy": {
                      "service": "ClusterIP"
                    },
                    "starboard": {
                      "infra": {
                        "serviceAccount": "aqua-kube-enforcer-sa"
                      },
                      "config": {
                        "imagePullSecret": "aqua-registry"
                      },
                      "deploy": {
                        "replicas": 1
                      }
                    },
                    "env": []
                  },
                  "enforcer": {
                    "infra": {
                      "serviceAccount": "aqua-sa",
                      "version": "2022.4"
                    },
                    "deploy": null,
                    "token": "<<ENFORCER_GROUP_TOKEN>>",
                    "env": [
                    ],
                    "secret": {
                      "name": null,
                      "key": null
                    },
                    "runAsNonRoot": null,
                    "rhcosVersion": null
                  }
                }
              },
            {
                  "apiVersion": "operator.aquasec.com/v1alpha1",
                  "kind": "AquaCloudConnector",
                  "metadata": {
                    "name": "aqua"
                  },
                  "spec": {
                    "infra": {
                      "serviceAccount": "aqua-sa",
                      "version": "2022.4"
                    },
                    "common": {
                      "imagePullSecret": "aqua-registry"
                    },
                    "deploy": {
                      "replicas": 1
                    },
                    "runAsNonRoot": false,
                    "gateway": {
                      "host": "aqua-gateway",
                      "port": "8443"
                    },
                    "login": {
                      "host": "aqua-gateway:8443",
                      "password": "<<YOUR AQUA USER PASSWORD>>",
                      "token": "<<YOUR AQUA CLOUD CONNECTOR TOKEN>>",
                      "username": "<<YOUR AQUA USER NAME>>"
                    },
                    "tunnels": [
                      {
                        "host": "<account>.azurecr.io",
                        "port": "443"
                      },
                      {
                        "host": "gke.gcr.io",
                        "port": "443"
                      },
                      {
                        "host": "<account>.jfrog.io",
                        "port": "443"
                      },
                      {
                        "host": "1.1.1.1",
                        "port": "443"
                      },
                      {
                        "region": "us-east1",
                        "type": "ecr"
                      }
                    ]
                  }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "true"
          containerImage: registry.connect.redhat.com/aquasec/aquasec@sha256:4f80ed26014ffc3f08e078a8be96072fa211297000e306816f600e0a6d1d8fb1
          createdAt: ""
          description: The Aqua Security Operator runs within a Openshift cluster
            and provides a means to deploy and manage Aqua Security cluster and components.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=1.0.2 <2022.4.860'
          operators.operatorframework.io/internal-objects: '["aquastarboards.aquasecurity.github.io","configauditreports.aquasecurity.github.io",
            "clusterconfigauditreports.aquasecurity.github.io"]'
          repository: https://github.com/aquasecurity/aqua-operator
          support: Aqua Security, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Aqua Security CSP Deployment with Aqua Operator
            displayName: AquaCsp
            kind: AquaCsp
            name: aquacsps.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Lightning Enforcers Deployment with Aqua Operator
            displayName: AquaLightningEnforcers
            kind: AquaLightning
            name: aqualightnings.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Database Deployment with Aqua Operator
            displayName: AquaDatabase
            kind: AquaDatabase
            name: aquadatabases.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Enforcer Deployment with Aqua Operator
            displayName: AquaEnforcer
            kind: AquaEnforcer
            name: aquaenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security KubeEnforcer Deployment with Aqua Operator
            displayName: AquaKubeEnforcer
            kind: AquaKubeEnforcer
            name: aquakubeenforcers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Gateway Deployment with Aqua Operator
            displayName: AquaGateway
            kind: AquaGateway
            name: aquagateways.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Scanner Deployment with Aqua Operator
            displayName: AquaScanner
            kind: AquaScanner
            name: aquascanners.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Security Server Deployment with Aqua Operator
            displayName: AquaServer
            kind: AquaServer
            name: aquaservers.operator.aquasec.com
            version: v1alpha1
          - description: Aqua Starboard for kube-enforcer.
            displayName: AquaStarboard
            kind: AquaStarboard
            name: aquastarboards.aquasecurity.github.io
            version: v1alpha1
          - description: Aqua Cloud Connector Deployment with Aqua Operator
            displayName: AquaCloudConnector
            kind: AquaCloudConnector
            name: aquacloudconnectors.operator.aquasec.com
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ClusterConfigAuditReport
            kind: ClusterConfigAuditReport
            name: clusterconfigauditreports.aquasecurity.github.io
            version: v1alpha1
          - description: For Aqua Starboard.
            displayName: ConfigAuditReport
            kind: ConfigAuditReport
            name: configauditreports.aquasecurity.github.io
            version: v1alpha1
        description: |-
          The Aqua Security Operator runs within an OpenShift cluster and provides a means to deploy and manage the Aqua Security cluster and components :
          * Server (aka “console”)
          * Database (for production environments we recommend to use an external database and not the Aqua default database)
          * Gateway
          * Enforcer (aka “agent”)
          * KubeEnforcer
          * Scanner
          * CSP (package that contains the Server, Database, and Gateway)
          * LightningEnforcer (package that contains Enforcer and Kube Enforcer) - Do not deploy using Certified Operator.
          * AquaCloudConnector.

          Use the Aqua-Operator to
          * Deploy Aqua Security components on OpenShift
          * Scale up Aqua Security components with extra replicas
          * Assign metadata tags to Aqua Security components

          The Aqua Operator provides a few [Custom Resources](https://github.com/aquasecurity/aqua-operator/tree/master/config/crd) for managing the Aqua CSP platform.

          ## Prerequisites
          There are only 4 prerequisites:
          1. Verify that the OpenShift version is officially supported [Verify Here](https://docs.aquasec.com/saas/workload-protection/product-information/system-requirements/)
          2. Make sure you have a license and to obtain one, please contact Aqua Security at [Contact Us](mailto:cloudsales@aquasec.com).
          3. Create a new project for aqua

              ```oc new-project aqua```

          4. Create the secret for Aqua Database password. If you are using an External Database, make sure you use those credentials.
          NOTE: This step is optional and you can specify the Database password when creating the CRs.

              ```oc create secret generic aqua-database-password --from-literal=db-password=<password> -n aqua```

          Please note that for the certified operator, the Docker registry secret is NOT needed. For the Red Hat certified operator, the Aqua application images are stored in the Red Hat Connect registry and will be automatically pulled by the Aqua operator.

          ## Choosing the right channel

          Channels are a flexible publishing mechanism that offers you different Aqua versions to deploy, at any point. These channels map to their respective Aqua versions, describing the maturity based on where they are in their lifecycle:
          * 4.6: This maps to the older version of Aqua 4.6.0
          * 5.0: This maps to the Aqua version 5.0.0
          * 5.3: This maps to the Aqua version 5.3.0
          * 6.0: This maps to the Aqua version 6.0.0
          * 6.2: This maps to the Aqua version 6.2.0
          * 6.5: This maps to the Aqua version 6.5.0
          * 2022.4: This is the latest and greatest version of Aqua (default)

          ## Deploying the Aqua Operator

          Aqua Operator follows an easy push button deployment that installs the operator in its own aqua namespace.
          Please refer to the instructions [here](https://github.com/aquasecurity/aqua-operator/blob/2022.4.0/docs/DeployOpenShiftOperator.md).

          ## Configuring the Aqua Operator

          Operators leverage CRDs as a configuration mechanism for the application. Aqua offers a number of CRDs that can be tweaked and configured as per your needs. Please refer to this [link](https://github.com/aquasecurity/aqua-operator/blob/6.2.0/docs/DeployOpenShiftOperator.md#aquacsp-crds) for Custom Resource examples for popular scenarios.

          ## Support

          For support please contact support@aquasec.com.
        displayName: Aqua Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - aqua-security
        - scanning
        - security
        - runtime-security
        links:
        - name: Aqua Security
          url: https://www.aquasec.com/
        - name: Aqua Operator Github
          url: https://github.com/aquasecurity/aqua-operator
        maintainers:
        - email: support@aquasec.com
          name: Aqua Support, Aqua Security
        maturity: alpha
        provider:
          name: Aqua Security, Inc.
        relatedImages:
        - registry.connect.redhat.com/aquasec/aquasec@sha256:4f80ed26014ffc3f08e078a8be96072fa211297000e306816f600e0a6d1d8fb1
        - registry.connect.redhat.com/aquasec/kube-bench@sha256:ee897dfaaa5db7d71c619f8df77f35407d522cd3de998d6b9d7ab7045fc18398
        - registry.connect.redhat.com/aquasec/console@sha256:94bc4ba34a0821bd1e563a3120757907aeab9bd927896dc88c7bef8f63e809fb
        - registry.connect.redhat.com/aquasec/gateway@sha256:224d105b6377b95132b817836e6ac958f50f8263c253131c7502a80d00acfb1c
        - registry.connect.redhat.com/aquasec/kube-enforcer@sha256:f4e6bfd885c0cb7d725cbf202a2c12f91822582594e3d08b930a7bd6a17b3bfd
        - registry.connect.redhat.com/aquasec/scanner@sha256:29a6c291b749e648151402e9dc1673cfc6bee8506a8a9fa0f502ff74b67fc32f
        - registry.connect.redhat.com/aquasec/aquasec-operator-bundle@sha256:ee3bb301dd248c9d367e90c5c8f8b9ce7fa1b21b59394f56a9b6b3ad6bdc2f70
        - registry.connect.redhat.com/aquasec/cloud-connector@sha256:f9da1936ac5e4b8e4537dca69f920c682fb9fac98d091680e01d2122f2b0f85f
        - registry.connect.redhat.com/aquasec/starboard@sha256:e57d0b89c3118d0b552eb59b1b4ada090597620d45d966a71da495f7841ad411
        - registry.connect.redhat.com/aquasec/database@sha256:c91ae82b0179c3ec4e156835a9f23b66767ba15514ff33fb268b35d8f04d6fde
        - registry.connect.redhat.com/aquasec/enforcer@sha256:22fa84ded89046e349ea31ce5dd4b1b269df797bf72e91d50ab47de0530f7cb1
        version: 2022.4.860
      entries:
      - name: aqua-operator.2022.4.860
        version: 2022.4.860
      - name: aqua-operator.2022.4.848
        version: 2022.4.848
      - name: aqua-operator.2022.4.836
        version: 2022.4.836
      - name: aqua-operator.2022.4.829
        version: 2022.4.829
      - name: aqua-operator.2022.4.818
        version: 2022.4.818
      - name: aqua-operator.2022.4.805
        version: 2022.4.805
      - name: aqua-operator.2022.4.760
        version: 2022.4.760
      - name: aqua-operator.2022.4.759
        version: 2022.4.759
      - name: aqua-operator.2022.4.720
        version: 2022.4.720
      - name: aqua-operator.2022.4.683
        version: 2022.4.683
      - name: aqua-operator.2022.4.662
        version: 2022.4.662
      - name: aqua-operator.2022.4.588
        version: 2022.4.588
      - name: aqua-operator.2022.4.587
        version: 2022.4.587
      - name: aqua-operator.2022.4.519
        version: 2022.4.519
      - name: aqua-operator.2022.4.518
        version: 2022.4.518
      name: "2022.4"
    defaultChannel: "2022.4"
    packageName: aqua-operator-certified
    provider:
      name: Aqua Security, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Fossul Framework
      provider-url: https://github.com/fossul/fossul
    name: fossul-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fossul-operator.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"fossul.io/v1\",\n    \"kind\":
            \"Backup\",\n    \"metadata\": {\n      \"name\": \"mariadb-sample\"\n
            \   },\n    \"spec\": {\n      \"deployment_name\": \"mariadb\",\n      \"policy\":
            \"daily\"\n    }\n  },\n  {\n    \"apiVersion\": \"fossul.io/v1\",\n    \"kind\":
            \"Restore\",\n    \"metadata\": {\n      \"name\": \"mariadb-sample\"\n
            \   },\n    \"spec\": {\n      \"deployment_name\": \"mariadb\",\n      \"policy\":
            \"daily\",\n      \"workflow_id\": \"xxxx\"\n    }\n  },        \n  {\n
            \   \"apiVersion\": \"fossul.io/v1\",\n    \"kind\": \"BackupConfig\",\n
            \   \"metadata\": {\n      \"name\": \"mariadb-sample\"\n    },\n    \"spec\":
            {\n      \"container_platform\": \"openshift\",\n      \"operator_controlled\":
            true,\n      \"auto_discovery\": false,\n      \"deployment_name\": \"mariadb\",\n
            \     \"deployment_type\": \"DeploymentConfig\",\n      \"job_retention\":
            50,\n      \"overwrite_pcv_on_restore\": true,\n      \"policies\": [\n
            \       {\n          \"policy\": \"hourly\",\n          \"retentionNumber\":
            3\n        },\n        {\n          \"policy\": \"daily\",\n          \"retentionNumber\":
            10\n        }\n      ],\n      \"pvc_deletion_timeout\": 300,\n      \"restore_to_new_pvc\":
            false,\n      \"snapshot_timeout\": 180,\n      \"storage_plugin\": \"csi.so\",\n
            \     \"app_plugin\": \"mariadb.so\"\n    }\n  },\n  {\n    \"apiVersion\":
            \"fossul.io/v1\",\n    \"kind\": \"BackupSchedule\",\n    \"metadata\":
            {\n      \"name\": \"mariadb-sample\"\n    },\n    \"spec\": {\n      \"cron_schedule\":
            \"59 23 * * *\",\n      \"deployment_name\": \"mariadb\",\n      \"policy\":
            \"daily\"\n\n    }\n  },\n  {\n    \"apiVersion\": \"fossul.io/v1\",\n
            \   \"kind\": \"Fossul\",\n    \"metadata\": {\n      \"name\": \"fossul-sample\"\n
            \   },\n    \"spec\": {\n      \"enable_routes\": false,\n      \"enable_virtualmachines\":
            false,\n      \"container_platform\": \"openshift\"\n    }\n  }\n]"
          capabilities: Full Lifecycle
          categories: Storage
          certified: "false"
          containerImage: quay.io/fossul/fossul-operator:v0.6.0
          createdAt: "2022-01-25T20:09:00Z"
          description: Fossul is a application centric container native backup and
            restore framework for databases or applications
          operators.operatorframework.io/builder: operator-sdk-v1.10.1-ocp
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/fossul/fossul
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Manages application backup configurations
            kind: BackupConfig
            name: backupconfigs.fossul.io
            version: v1
          - description: Manages application backups
            kind: Backup
            name: backups.fossul.io
            version: v1
          - description: Manages application restores
            kind: Restore
            name: restores.fossul.io
            version: v1
          - description: Manages application backup scheduling
            kind: BackupSchedule
            name: backupschedules.fossul.io
            version: v1
          - description: Manages deployment of the Fossul Framework
            kind: Fossul
            name: fossuls.fossul.io
            version: v1
        description: "## Fossul Framework\nApplication backup and restore framework
          for container native applications on Kubernetes and OpenShift. Fossul provides
          application centric backup and recovery enabling integration with the application
          creating an application consistent backup. Since there are many applications
          and providers for storage or archive Fossul enables plugins that allow proper
          integration. Fossul provides plugins for postgresql, mariadb, mysql and
          mongo as well as plugin to integrate with CSI snapshots. Plugins can be
          written in any language. The Fossul operator deploys Fossul via the Fossul
          custom resource and additionally provides BackupConfig, Backup, BackupSchedule
          and Restore custom resources. Each user can configure and manage their own
          backups with simple custom resources that can be part of CI/CD or source
          control. Users can also opt to manage backups through Fossul CLI/API instead
          of the custom resources provided by the operator.\n\n## Installation\nIt
          is recommended to install the operator into the openshift-operators namespace
          which is the default location for operators. Once the operator is installed
          create a new project called ```fossul``` and create the Fossul custom resource
          under the fossul namespace. This will deploy the Fossul Framework. You can
          choose another namespace for the Fossul Framework but then also need to
          provide the optional 'fossul_namespace' parameter with the spec for all
          the additional custom resources. This is required so the Fossul operator
          can communicate with Fossul.\n\nOnce Fossul is deployed you can manage backups
          either through custom resources provided by the operator or the Fossul CLI/API.
          If using the customer resources, first create a BackupConfig custom resource
          for every application you want to backup. Once that is done, you can optionally
          create a backup by simply creating a Backup custom resource. You can also
          create a BackupSchedule custom resource using cron syntax which will schedule
          your backup to occur on a regular interval or do so via a Kubernetes job.
          Finally if a backup has been created you can perform a restore through a
          custom resource as well, providing the workflow id from the completed backup.
          If you are creating backups through the custom resource the workflow id
          will be appended to the spec once the backup completes. If you are using
          the Fossul CLI/API to create backups you will need to get the workflow id
          through the Fossul CLI/API directly using the backupList action.\n\nFor
          users of the cli, a cli pod is deployed with credentials and if desired
          you can create or manage backups from within that pod. To use the API you
          need the credentials stored in the fossul secret. The cli has already been
          pre-configured with these credentials. The API can also be optionally exposed
          via routes and API documentation is under ```/api/v1/index.html```.\n\n##
          Quick Setup\nWhen creating Fossul custom resources generally you will only
          need to update the ```deployment_name``` and ```deployment_type``` (DeploymentConfig,
          Deployment or VirtualMachine). All custom resources must be created in the
          namespace where the database or application exists. \n\n### Deploy Fossul
          in fossul namespace\n```$ oc new-project fossul```\n<pre>\n$ vi fossul.yaml\nkind:
          Fossul\napiVersion: fossul.io/v1\nmetadata:\n  name: fossul-sample\n  namespace:
          fossul\nspec: {}\n</pre>\n```$ oc create -f fossul.yaml```\n\n### Deploy
          Mariadb Database\nMake sure you create all Fossul custom resources in the
          same namespace as the database, application or virtual machine\n\n### Create
          MariaDB Fossul BackupConfig\nCreates a backup configuration for MariaDB
          or MySQL databases\n\n```$ vi backupconfig.yaml```\n<pre>\nkind: BackupConfig\napiVersion:
          fossul.io/v1\nmetadata:\n  name: mariadb-sample\n  namespace: databases\nspec:\n
          \ container_platform: openshift\n  operator_controlled: true\n  auto_discovery:
          false\n  deployment_name: mariadb\n  deployment_type: DeploymentConfig\n
          \ job_retention: 50\n  overwrite_pcv_on_restore: true\n  policies:\n    -
          policy: hourly\n      retentionNumber: 3\n    - policy: daily\n      retentionNumber:
          10\n  pvc_deletion_timeout: 300\n  restore_to_new_pvc: false\n  snapshot_timeout:
          180\n  storage_plugin: csi.so\n  app_plugin: mariadb.so \n</pre>\n```$ oc
          create -f backupconfig.yaml```\n\n### Create PostgreSQL Fossul BackupConfig\nCreates
          a backup config for PostgreSQL databases, you need to ensure the user defined
          in secret has backup permissions\n\n```$ vi backupconfig.yaml```\n<pre>\nkind:
          BackupConfig\napiVersion: fossul.io/v1\nmetadata:\n  name: postgresql-sample\n
          \ namespace: databases\nspec:\n  container_platform: openshift\n  operator_controlled:
          true    \n  auto_discovery: false\n  deployment_name: postgresql \n  deployment_type:
          DeploymentConfig\n  job_retention: 50\n  overwrite_pcv_on_restore: true\n
          \ policies:\n    - policy: hourly\n      retentionNumber: 3\n    - policy:
          daily\n      retentionNumber: 10\n  pvc_deletion_timeout: 300\n  restore_to_new_pvc:
          false\n  snapshot_timeout: 180\n  storage_plugin: csi.so\n  app_plugin:
          postgres.so \n</pre>\n```$ oc create -f backupconfig.yaml```\n\n### Create
          Kubevirt Fossul BackupConfig\nCreates a backup configuration for virtual
          machines\n\n```$ vi backupconfig.yaml```\n<pre>\nkind: BackupConfig\napiVersion:
          fossul.io/v1\nmetadata:\n  name: rhel8-vm-sample\n  namespace: virtualmachines\nspec:\n
          \ container_platform: openshift\n  operator_controlled: true    \n  auto_discovery:
          false\n  deployment_name: rhel8-vm\n  deployment_type: VirtualMachine\n
          \ job_retention: 50\n  overwrite_pcv_on_restore: true\n  policies:\n    -
          policy: hourly\n      retentionNumber: 3\n    - policy: daily\n      retentionNumber:
          10\n  pvc_deletion_timeout: 300\n  restore_to_new_pvc: false\n  snapshot_timeout:
          180\n  storage_plugin: csi.so\n  app_plugin: kubevirt.so \n</pre>\n```$
          oc create -f backupconfig.yaml```\n\n### Create Tar Fossul BackupConfig\nCreates
          a backup config using tar to backup folders and files where csi snapshots
          are not desired\n\n```$ vi backupconfig.yaml```\n<pre>\nkind: BackupConfig\napiVersion:
          fossul.io/v1\nmetadata:\n  name: tar-sample\n  namespace: databases\nspec:\n
          \ container_platform: openshift\n  operator_controlled: true    \n  auto_discovery:
          false\n  deployment_name: anyname\n  job_retention: 50\n  policies:\n    -
          policy: hourly\n      retentionNumber: 3\n    - policy: daily\n      retentionNumber:
          10\n  backup_source_paths: /opt/app-root/src/test\n  storage_plugin: tar.so\n</pre>\n```$
          oc create -f backupconfig.yaml```\n\n### Create BackupSchedule\nA backup
          can be scheduled per policy, defined by backup configuration using cron
          syntax\n\n```$ vi backupschedule.yaml```\n<pre>\nkind: BackupSchedule\napiVersion:
          fossul.io/v1\nmetadata:\n  name: mariadb-sample\n  namespace: databases\nspec:\n
          \ cron_schedule: '59 23 * * *'\n  deployment_name: mariadb\n  policy: daily\n</pre>\n```$
          oc create -f backupschedule.yaml```\n\n### Create Backup\nA backup will
          be created according to policy and deleted either manually or as defined
          in retention policy\n\n```$ vi backup.yaml```\n<pre>\nkind: Backup\napiVersion:
          fossul.io/v1\nmetadata:\n  name: mariadb-sample\n  namespace: databases\nspec:\n
          \ deployment_name: mariadb\n  policy: daily\n</pre>\n```$ oc create -f backup.yaml```\n\n###
          Perform Restore\nA restore requires a workflow_id located in the backup
          spec, upon a successful restore the custom resource will deleted automatically\n\n```$
          vi restore.yaml```\n<pre>\nkind: Restore\napiVersion: fossul.io/v1\nmetadata:\n
          \ name: mariadb-sample\n  namespace: databases\nspec:\n  deployment_name:
          mariadb\n  policy: daily\n  workflow_id: xxxx\n</pre>\n```$ oc create -f
          restore.yaml```\n"
        displayName: Fossul Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - application
        - consistent
        links:
        - name: Fossul Framework Community
          url: https://github.com/fossul/fossul
        maintainers:
        - email: ktenzer@redhat.com
          name: Keith Tenzer
        maturity: alpha
        provider:
          name: Fossul Framework
          url: https://github.com/fossul/fossul
        relatedImages:
        - quay.io/openshift-community-operators/fossul-operator@sha256:95c043ddc818f44a303e27508e0acdcbbcb3d9b1329712c85a8e3fd4cb647e9a
        - quay.io/fossul/fossul-operator:v0.6.0
        version: 0.6.0
      entries:
      - name: fossul-operator.v0.6.0
        version: 0.6.0
      - name: fossul-operator.v0.5.0
        version: 0.5.0
      - name: fossul-operator.v0.4.0
        version: 0.4.0
      - name: fossul-operator.v0.3.0
        version: 0.3.0
      - name: fossul-operator.v0.2.0
        version: 0.2.0
      - name: fossul-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: fossul-operator
    provider:
      name: Fossul Framework
      url: https://github.com/fossul/fossul
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: NGINX Inc
      provider-url: ""
    name: nginx-ingress-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nginx-ingress-operator.v3.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.nginx.org/v1alpha1",
                "kind": "NginxIngress",
                "metadata": {
                  "name": "nginxingress-sample"
                },
                "spec": {
                  "controller": {
                    "affinity": {},
                    "annotations": {},
                    "appprotect": {
                      "enable": false
                    },
                    "appprotectdos": {
                      "debug": false,
                      "enable": false,
                      "maxDaemons": 0,
                      "maxWorkers": 0,
                      "memory": 0
                    },
                    "autoscaling": {
                      "annotations": {},
                      "behavior": {},
                      "enabled": false,
                      "maxReplicas": 3,
                      "minReplicas": 1,
                      "targetCPUUtilizationPercentage": 50,
                      "targetMemoryUtilizationPercentage": 50
                    },
                    "config": {
                      "annotations": {},
                      "entries": {}
                    },
                    "containerPort": {
                      "http": 80,
                      "https": 443
                    },
                    "customConfigMap": "",
                    "customPorts": [],
                    "defaultHTTPListenerPort": 80,
                    "defaultHTTPSListenerPort": 443,
                    "defaultTLS": {
                      "cert": "",
                      "key": "",
                      "secret": ""
                    },
                    "disableIPV6": false,
                    "dnsPolicy": "ClusterFirst",
                    "enableCertManager": false,
                    "enableCustomResources": true,
                    "enableExternalDNS": false,
                    "enableLatencyMetrics": false,
                    "enableOIDC": false,
                    "enableSSLDynamicReload": true,
                    "enableSnippets": false,
                    "enableTLSPassthrough": false,
                    "env": [],
                    "extraContainers": [],
                    "globalConfiguration": {
                      "create": false,
                      "spec": {}
                    },
                    "healthStatus": false,
                    "healthStatusURI": "/nginx-health",
                    "hostNetwork": false,
                    "hostPort": {
                      "enable": false,
                      "http": 80,
                      "https": 443
                    },
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "nginx/nginx-ingress",
                      "tag": "5.3.1-ubi"
                    },
                    "ingressClass": {
                      "create": true,
                      "name": "nginx",
                      "setAsDefaultIngress": false
                    },
                    "initContainerResources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "initContainers": [],
                    "kind": "deployment",
                    "lifecycle": {},
                    "logFormat": "glog",
                    "logLevel": "info",
                    "mgmt": {
                      "licenseTokenSecretName": "license-token"
                    },
                    "minReadySeconds": 0,
                    "name": "controller",
                    "nginxDebug": false,
                    "nginxReloadTimeout": 60000,
                    "nginxStatus": {
                      "allowCidrs": "127.0.0.1",
                      "enable": true,
                      "port": 8080
                    },
                    "nginxplus": false,
                    "pod": {
                      "annotations": {},
                      "extraLabels": {}
                    },
                    "podDisruptionBudget": {
                      "annotations": {},
                      "enabled": false
                    },
                    "readOnlyRootFilesystem": false,
                    "readyStatus": {
                      "enable": true,
                      "initialDelaySeconds": 0,
                      "port": 8081
                    },
                    "replicaCount": 1,
                    "reportIngressStatus": {
                      "annotations": {},
                      "enable": true,
                      "enableLeaderElection": true,
                      "ingressLink": "",
                      "leaderElectionLockName": "nginx-ingress-leader"
                    },
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "selectorLabels": {},
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "create": true,
                      "customPorts": [],
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraLabels": {},
                      "httpPort": {
                        "enable": true,
                        "port": 80,
                        "targetPort": 80
                      },
                      "httpsPort": {
                        "enable": true,
                        "port": 443,
                        "targetPort": 443
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "type": "LoadBalancer"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "imagePullSecretName": "",
                      "imagePullSecretsNames": []
                    },
                    "shareProcessNamespace": false,
                    "strategy": {},
                    "terminationGracePeriodSeconds": 30,
                    "tlsPassthroughPort": 443,
                    "tolerations": [],
                    "volumeMounts": [],
                    "volumes": [],
                    "watchNamespace": "",
                    "watchNamespaceLabel": "",
                    "watchSecretNamespace": "",
                    "wildcardTLS": {
                      "cert": "",
                      "key": "",
                      "secret": ""
                    }
                  },
                  "nginxServiceMesh": {
                    "enable": false,
                    "enableEgress": false
                  },
                  "prometheus": {
                    "create": true,
                    "port": 9113,
                    "scheme": "http",
                    "secret": "",
                    "service": {
                      "create": false,
                      "labels": {
                        "service": "nginx-ingress-prometheus-service"
                      }
                    },
                    "serviceMonitor": {
                      "create": false,
                      "endpoints": [
                        {
                          "port": "prometheus"
                        }
                      ],
                      "labels": {},
                      "selectorMatchLabels": {
                        "service": "nginx-ingress-prometheus-service"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "serviceInsight": {
                    "create": false,
                    "port": 9114,
                    "scheme": "http",
                    "secret": ""
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Networking
          certified: "true"
          containerImage: quay.io/nginx/nginx-ingress-operator@sha256:d304c31f6bad9b06eda91a4a685f41348680da3c43fb26dfbae0e508b4e0be64
          createdAt: "2025-12-17T16:13:02Z"
          description: The NGINX Ingress Operator is a Kubernetes/OpenShift component
            which deploys and manages one or more NGINX/NGINX Plus Ingress Controllers
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: nginx-ingress
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/nginx/nginx-ingress-helm-operator
          support: NGINX Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The `NginxIngress` Custom Resource is the definition of a
              deployment of the Ingress Controller.
            displayName: Nginx Ingress Controller
            kind: NginxIngress
            name: nginxingresses.charts.nginx.org
            version: v1alpha1
        description: The NGINX Ingress Operator is a Kubernetes/OpenShift component
          which deploys and manages one or more NGINX/NGINX Plus Ingress Controllers
        displayName: Nginx Ingress Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nginx
        - ingress-controller
        - ingress
        - controller
        - kubernetes
        - openshift
        links:
        - name: Nginx Ingress Operator
          url: https://github.com/nginx/nginx-ingress-helm-operator
        maintainers:
        - email: kubernetes@nginx.com
          name: NGINX Inc
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: NGINX Inc
        relatedImages:
        - registry.connect.redhat.com/nginx/nginx-ingress-operator-bundle@sha256:d7572b2333b06a085849f284b9abc800b2bc2d3ce040747813e65193f52b9578
        - quay.io/brancz/kube-rbac-proxy@sha256:f5fbfec6a2b28726763880345f231d293fabb016f7abf6ad725c884bb0508edd
        - quay.io/nginx/nginx-ingress-operator@sha256:d304c31f6bad9b06eda91a4a685f41348680da3c43fb26dfbae0e508b4e0be64
        version: 3.4.1
      entries:
      - name: nginx-ingress-operator.v3.4.1
        version: 3.4.1
      - name: nginx-ingress-operator.v3.4.0
        version: 3.4.0
      - name: nginx-ingress-operator.v3.3.1
        version: 3.3.1
      name: alpha
    defaultChannel: alpha
    packageName: nginx-ingress-operator
    provider:
      name: NGINX Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stackwatch
      provider-url: www.kubecost.com
    name: kubecost
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubecost.v2.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.kubecost.com/v1alpha1",
                "kind": "CostAnalyzer",
                "metadata": {
                  "name": "costanalyzer-sample"
                },
                "spec": {
                  "global": {
                    "prometheus": {
                      "enabled": true,
                      "fqdn": "http://cost-analyzer-prometheus-server.default.svc"
                    },
                    "grafana": {
                      "enabled": false,
                      "domainName": "cost-analyzer-grafana.default.svc",
                      "scheme": "http",
                      "proxy": false
                    },
                    "gcpstore": {
                      "enabled": false
                    },
                    "gmp": {
                      "enabled": false,
                      "prometheusServerEndpoint": "http://localhost:8085/",
                      "gmpProxy": {
                        "enabled": false,
                        "image": "gke.gcr.io/prometheus-engine/frontend:v0.4.1-gke.0",
                        "imagePullPolicy": "Always",
                        "name": "gmp-proxy",
                        "port": 8085,
                        "projectId": "YOUR_PROJECT_ID"
                      }
                    },
                    "amp": {
                      "enabled": false,
                      "prometheusServerEndpoint": "http://localhost:8005/workspaces/<workspaceId>/",
                      "remoteWriteService": "https://aps-workspaces.us-west-2.amazonaws.com/workspaces/<workspaceId>/api/v1/remote_write",
                      "sigv4": {
                        "region": "us-west-2"
                      }
                    },
                    "mimirProxy": {
                      "enabled": false,
                      "name": "mimir-proxy",
                      "image": "nginxinc/nginx-unprivileged",
                      "port": 8085,
                      "mimirEndpoint": "$mimir_endpoint",
                      "orgIdentifier": "$your_tenant_ID"
                    },
                    "notifications": {
                      "alertmanager": {
                        "enabled": false,
                        "fqdn": "http://cost-analyzer-prometheus-server.default.svc"
                      }
                    },
                    "savedReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Example Saved Report 0",
                          "window": "today",
                          "aggregateBy": "namespace",
                          "chartDisplay": "category",
                          "idle": "separate",
                          "rate": "cumulative",
                          "accumulate": false,
                          "filters": [
                            {
                              "key": "cluster",
                              "operator": ":",
                              "value": "dev"
                            }
                          ]
                        },
                        {
                          "title": "Example Saved Report 1",
                          "window": "month",
                          "aggregateBy": "controllerKind",
                          "chartDisplay": "category",
                          "idle": "share",
                          "rate": "monthly",
                          "accumulate": false,
                          "filters": [
                            {
                              "key": "namespace",
                              "operator": "!:",
                              "value": "kubecost"
                            }
                          ]
                        },
                        {
                          "title": "Example Saved Report 2",
                          "window": "2020-11-11T00:00:00Z,2020-12-09T23:59:59Z",
                          "aggregateBy": "service",
                          "chartDisplay": "category",
                          "idle": "hide",
                          "rate": "daily",
                          "accumulate": true,
                          "filters": []
                        }
                      ]
                    },
                    "assetReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Example Asset Report 0",
                          "window": "today",
                          "aggregateBy": "type",
                          "accumulate": false,
                          "filters": [
                            {
                              "property": "cluster",
                              "value": "cluster-one"
                            }
                          ]
                        }
                      ]
                    },
                    "advancedReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Example Advanced Report 0",
                          "window": "7d",
                          "aggregateBy": "namespace",
                          "filters": [
                            {
                              "key": "cluster",
                              "operator": ":",
                              "value": "dev"
                            }
                          ],
                          "cloudBreakdown": "service",
                          "cloudJoin": "label:kubernetes_namespace"
                        }
                      ]
                    },
                    "cloudCostReports": {
                      "enabled": false,
                      "reports": [
                        {
                          "title": "Cloud Cost Report 0",
                          "window": "today",
                          "aggregateBy": "service",
                          "accumulate": false
                        }
                      ]
                    },
                    "podAnnotations": {},
                    "additionalLabels": {},
                    "securityContext": {
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      },
                      "fsGroup": 1001,
                      "runAsGroup": 1001,
                      "runAsUser": 1001,
                      "fsGroupChangePolicy": "OnRootMismatch"
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "platforms": {
                      "openshift": {
                        "enabled": true,
                        "route": {
                          "enabled": false,
                          "annotations": {}
                        },
                        "scc": {
                          "nodeExporter": false,
                          "networkCosts": false
                        },
                        "securityContext": {
                          "runAsNonRoot": true,
                          "seccompProfile": {
                            "type": "RuntimeDefault"
                          }
                        }
                      },
                      "cicd": {
                        "enabled": true,
                        "skipSanityChecks": true
                      }
                    }
                  },
                  "upgrade": {
                    "toV2": false
                  },
                  "kubecostToken": null,
                  "pricingCsv": {
                    "enabled": false,
                    "location": {
                      "provider": "AWS",
                      "region": "us-east-1",
                      "URI": "s3://kc-csv-test/pricing_schema.csv",
                      "csvAccessCredentials": "pricing-schema-access-secret"
                    }
                  },
                  "saml": {
                    "enabled": false,
                    "rbac": {
                      "enabled": false
                    }
                  },
                  "oidc": {
                    "enabled": false,
                    "clientID": "",
                    "clientSecret": "",
                    "existingCustomSecret": {
                      "enabled": false,
                      "name": ""
                    },
                    "skipOnlineTokenValidation": false,
                    "rbac": {
                      "enabled": false
                    }
                  },
                  "systemProxy": {
                    "enabled": false,
                    "httpProxyUrl": "",
                    "httpsProxyUrl": "",
                    "noProxy": ""
                  },
                  "kubecostFrontend": {
                    "enabled": true,
                    "deployMethod": "singlepod",
                    "haReplicas": 2,
                    "image": "gcr.io/kubecost1/frontend",
                    "imagePullPolicy": "Always",
                    "resources": {
                      "requests": {
                        "cpu": "10m",
                        "memory": "55Mi"
                      }
                    },
                    "deploymentStrategy": {},
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 1,
                      "periodSeconds": 5,
                      "failureThreshold": 6
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 1,
                      "periodSeconds": 5,
                      "failureThreshold": 6
                    },
                    "ipv6": {
                      "enabled": true
                    },
                    "useDefaultFqdn": false
                  },
                  "kubecostMetrics": {
                    "exporter": {
                      "enabled": false,
                      "port": 9005,
                      "prometheusScrape": true,
                      "resources": {},
                      "tolerations": [],
                      "affinity": {},
                      "service": {
                        "annotations": {}
                      },
                      "serviceMonitor": {
                        "enabled": false,
                        "additionalLabels": {},
                        "metricRelabelings": [],
                        "relabelings": []
                      },
                      "priorityClassName": "",
                      "additionalLabels": {},
                      "nodeSelector": {},
                      "extraArgs": []
                    }
                  },
                  "sigV4Proxy": {
                    "image": "public.ecr.aws/aws-observability/aws-sigv4-proxy:latest",
                    "imagePullPolicy": "Always",
                    "name": "aps",
                    "port": 8005,
                    "region": "us-west-2",
                    "host": "aps-workspaces.us-west-2.amazonaws.com",
                    "extraEnv": null,
                    "resources": {}
                  },
                  "kubecostModel": {
                    "image": "gcr.io/kubecost1/cost-model",
                    "imagePullPolicy": "Always",
                    "outOfClusterPromMetricsEnabled": false,
                    "warmCache": false,
                    "etl": true,
                    "etlFileStoreEnabled": true,
                    "etlDailyStoreDurationDays": 91,
                    "etlHourlyStoreDurationHours": 49,
                    "etlWeeklyStoreDurationWeeks": 53,
                    "etlReadOnlyMode": false,
                    "plugins": {
                      "enabled": false,
                      "install": {
                        "enabled": false,
                        "fullImageName": "curlimages/curl:latest",
                        "securityContext": {
                          "allowPrivilegeEscalation": false,
                          "seccompProfile": {
                            "type": "RuntimeDefault"
                          },
                          "capabilities": {
                            "drop": [
                              "ALL"
                            ]
                          },
                          "readOnlyRootFilesystem": true,
                          "runAsNonRoot": true,
                          "runAsUser": 1001
                        }
                      },
                      "folder": "/opt/opencost/plugin",
                      "enabledPlugins": [],
                      "configSecret": "kubecost-plugin-secret"
                    },
                    "cloudCost": {
                      "labelList": {
                        "IsIncludeList": false,
                        "labels": ""
                      },
                      "topNItems": 1000
                    },
                    "allocation": null,
                    "containerStatsEnabled": true,
                    "maxQueryConcurrency": 5,
                    "resources": {
                      "requests": {
                        "cpu": "200m",
                        "memory": "55Mi"
                      }
                    },
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "extraArgs": [],
                    "ingress": {
                      "enabled": false,
                      "labels": null,
                      "annotations": null,
                      "paths": [
                        "/"
                      ],
                      "pathType": "ImplementationSpecific",
                      "hosts": [
                        "cost-analyzer-model.local"
                      ],
                      "tls": []
                    },
                    "utcOffset": "+00:00",
                    "extraPorts": []
                  },
                  "etlUtils": {
                    "enabled": false,
                    "fullImageName": null,
                    "resources": {},
                    "env": {},
                    "nodeSelector": {},
                    "tolerations": {},
                    "affinity": {}
                  },
                  "ingress": {
                    "enabled": false,
                    "labels": null,
                    "annotations": null,
                    "paths": [
                      "/"
                    ],
                    "pathType": "ImplementationSpecific",
                    "hosts": [
                      "cost-analyzer.local"
                    ],
                    "tls": []
                  },
                  "nodeSelector": {},
                  "tolerations": [],
                  "affinity": {},
                  "topologySpreadConstraints": [],
                  "priority": {
                    "enabled": false,
                    "name": ""
                  },
                  "networkPolicy": {
                    "enabled": false,
                    "denyEgress": true,
                    "sameNamespace": true,
                    "costAnalyzer": {
                      "enabled": false,
                      "annotations": {},
                      "additionalLabels": {}
                    }
                  },
                  "extraVolumes": [],
                  "extraVolumeMounts": [],
                  "persistentVolume": {
                    "size": "32Gi",
                    "dbSize": "32.0Gi",
                    "enabled": true,
                    "labels": {},
                    "annotations": {},
                    "dbPVEnabled": false
                  },
                  "service": {
                    "type": "ClusterIP",
                    "port": 9090,
                    "targetPort": 9090,
                    "nodePort": {},
                    "labels": {},
                    "annotations": {},
                    "sessionAffinity": {
                      "enabled": false,
                      "timeoutSeconds": 10800
                    }
                  },
                  "prometheus": {
                    "rbac": {
                      "create": true
                    },
                    "serviceAccounts": {
                      "alertmanager": {
                        "create": true,
                        "name": null
                      },
                      "nodeExporter": {
                        "create": true,
                        "name": null
                      },
                      "pushgateway": {
                        "create": true,
                        "name": null
                      },
                      "server": {
                        "create": true,
                        "name": null,
                        "annotations": {}
                      }
                    },
                    "imagePullSecrets": null,
                    "extraScrapeConfigs": "- job_name: kubecost\n  honor_labels: true\n  scrape_interval: 1m\n  scrape_timeout: 60s\n  metrics_path: /metrics\n  scheme: http\n  dns_sd_configs:\n  - names:\n    - {{ template \"cost-analyzer.serviceName\" . }}\n    type: 'A'\n    port: 9003\n- job_name: kubecost-networking\n  kubernetes_sd_configs:\n    - role: pod\n  relabel_configs:\n  # Scrape only the the targets matching the following metadata\n    - source_labels: [__meta_kubernetes_pod_label_app_kubernetes_io_instance]\n      action: keep\n      regex:  kubecost\n    - source_labels: [__meta_kubernetes_pod_label_app_kubernetes_io_name]\n      action: keep\n      regex:  network-costs\n",
                    "server": {
                      "enabled": true,
                      "name": "server",
                      "sidecarContainers": null,
                      "strategy": {
                        "type": "Recreate",
                        "rollingUpdate": null
                      },
                      "image": {
                        "repository": "quay.io/prometheus/prometheus",
                        "tag": "v2.50.1",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "prefixURL": "",
                      "baseURL": "",
                      "env": [],
                      "extraFlags": [
                        "web.enable-lifecycle"
                      ],
                      "configPath": "/etc/config/prometheus.yml",
                      "global": {
                        "scrape_interval": "1m",
                        "scrape_timeout": "60s",
                        "evaluation_interval": "1m",
                        "external_labels": {
                          "cluster_id": "cluster-one"
                        }
                      },
                      "remoteWrite": {},
                      "remoteRead": {},
                      "extraArgs": {
                        "query.max-concurrency": 1,
                        "query.max-samples": 100000000
                      },
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "extraHostPathMounts": [],
                      "extraConfigmapMounts": [],
                      "extraSecretMounts": [],
                      "configMapOverrideName": "",
                      "ingress": {
                        "enabled": false,
                        "annotations": {},
                        "extraLabels": {},
                        "hosts": [],
                        "pathType": "Prefix",
                        "extraPaths": [],
                        "tls": []
                      },
                      "tolerations": [],
                      "nodeSelector": {},
                      "affinity": {},
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "persistentVolume": {
                        "enabled": true,
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "existingClaim": "",
                        "mountPath": "/data",
                        "size": "32Gi",
                        "subPath": ""
                      },
                      "emptyDir": {
                        "sizeLimit": ""
                      },
                      "podAnnotations": {},
                      "deploymentAnnotations": {},
                      "podLabels": {},
                      "alertmanagers": [],
                      "replicaCount": 1,
                      "statefulSet": {
                        "enabled": false,
                        "annotations": {},
                        "labels": {},
                        "podManagementPolicy": "OrderedReady",
                        "headless": {
                          "annotations": {},
                          "labels": {},
                          "servicePort": 80
                        }
                      },
                      "readinessProbeInitialDelay": 5,
                      "readinessProbeTimeout": 3,
                      "readinessProbeFailureThreshold": 3,
                      "readinessProbeSuccessThreshold": 1,
                      "livenessProbeInitialDelay": 5,
                      "livenessProbeTimeout": 3,
                      "livenessProbeFailureThreshold": 3,
                      "livenessProbeSuccessThreshold": 1,
                      "resources": {},
                      "verticalAutoscaler": {
                        "enabled": false
                      },
                      "securityContext": {},
                      "containerSecurityContext": {},
                      "service": {
                        "annotations": {},
                        "labels": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 80,
                        "sessionAffinity": "None",
                        "type": "ClusterIP",
                        "gRPC": {
                          "enabled": false,
                          "servicePort": 10901
                        },
                        "statefulsetReplica": {
                          "enabled": false,
                          "replica": 0
                        }
                      },
                      "terminationGracePeriodSeconds": 300,
                      "retention": "97h"
                    },
                    "alertmanager": {
                      "enabled": false,
                      "strategy": {
                        "type": "Recreate",
                        "rollingUpdate": null
                      },
                      "name": "alertmanager",
                      "image": {
                        "repository": "quay.io/prometheus/alertmanager",
                        "tag": "v0.27.0",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "extraArgs": {},
                      "prefixURL": "",
                      "baseURL": "http://localhost:9093",
                      "extraEnv": {},
                      "extraSecretMounts": [],
                      "configMapOverrideName": "",
                      "configFromSecret": "",
                      "configFileName": "alertmanager.yml",
                      "ingress": {
                        "enabled": false,
                        "annotations": {},
                        "extraLabels": {},
                        "hosts": [],
                        "extraPaths": [],
                        "tls": []
                      },
                      "tolerations": [],
                      "nodeSelector": {},
                      "affinity": {},
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "persistentVolume": {
                        "enabled": true,
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "existingClaim": "",
                        "mountPath": "/data",
                        "size": "2Gi",
                        "subPath": ""
                      },
                      "podAnnotations": {},
                      "podLabels": {},
                      "replicaCount": 1,
                      "statefulSet": {
                        "enabled": false,
                        "podManagementPolicy": "OrderedReady",
                        "headless": {
                          "annotations": {},
                          "labels": {},
                          "servicePort": 80
                        }
                      },
                      "resources": {},
                      "securityContext": {
                        "runAsUser": 1001,
                        "runAsNonRoot": true,
                        "runAsGroup": 1001,
                        "fsGroup": 1001
                      },
                      "service": {
                        "annotations": {},
                        "labels": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 80,
                        "sessionAffinity": "None",
                        "type": "ClusterIP"
                      }
                    },
                    "alertmanagerFiles": {
                      "alertmanager.yml": {
                        "global": {},
                        "receivers": [
                          {
                            "name": "default-receiver"
                          }
                        ],
                        "route": {
                          "group_wait": "10s",
                          "group_interval": "5m",
                          "receiver": "default-receiver",
                          "repeat_interval": "3h"
                        }
                      }
                    },
                    "configmapReload": {
                      "prometheus": {
                        "enabled": false,
                        "name": "configmap-reload",
                        "image": {
                          "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                          "tag": "v0.72.0",
                          "pullPolicy": "IfNotPresent"
                        },
                        "extraArgs": {},
                        "extraVolumeDirs": [],
                        "extraConfigmapMounts": [],
                        "resources": {},
                        "containerSecurityContext": {}
                      },
                      "alertmanager": {
                        "enabled": false,
                        "name": "configmap-reload",
                        "image": {
                          "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                          "tag": "v0.72.0",
                          "pullPolicy": "IfNotPresent"
                        },
                        "extraArgs": {},
                        "extraVolumeDirs": [],
                        "extraConfigmapMounts": [],
                        "resources": {}
                      }
                    },
                    "nodeExporter": {
                      "enabled": false,
                      "hostNetwork": true,
                      "hostPID": true,
                      "dnsPolicy": "ClusterFirstWithHostNet",
                      "name": "node-exporter",
                      "image": {
                        "repository": "prom/node-exporter",
                        "tag": "v1.7.0",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      },
                      "extraArgs": {},
                      "extraHostPathMounts": [],
                      "extraConfigmapMounts": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "deploymentAnnotations": {},
                      "pod": {
                        "labels": {}
                      },
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "resources": {},
                      "securityContext": {},
                      "service": {
                        "annotations": {
                          "prometheus.io/scrape": "true"
                        },
                        "labels": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "hostPort": 9100,
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 9100,
                        "type": "ClusterIP"
                      }
                    },
                    "pushgateway": {
                      "enabled": false,
                      "name": "pushgateway",
                      "image": {
                        "repository": "prom/pushgateway",
                        "tag": "v1.6.2",
                        "pullPolicy": "IfNotPresent"
                      },
                      "priorityClassName": "",
                      "extraArgs": {},
                      "ingress": {
                        "enabled": false,
                        "annotations": {},
                        "hosts": [],
                        "extraPaths": [],
                        "tls": []
                      },
                      "tolerations": [],
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "replicaCount": 1,
                      "podDisruptionBudget": {
                        "enabled": false,
                        "maxUnavailable": 1
                      },
                      "resources": {},
                      "securityContext": {
                        "runAsUser": 1001,
                        "runAsNonRoot": true
                      },
                      "service": {
                        "annotations": {
                          "prometheus.io/probe": "pushgateway"
                        },
                        "labels": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "servicePort": 9091,
                        "type": "ClusterIP"
                      },
                      "strategy": {
                        "type": "Recreate",
                        "rollingUpdate": null
                      },
                      "persistentVolume": {
                        "enabled": true,
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "existingClaim": "",
                        "mountPath": "/data",
                        "size": "2Gi",
                        "subPath": ""
                      }
                    },
                    "serverFiles": {
                      "alerting_rules.yml": {},
                      "alerts": {},
                      "recording_rules.yml": {},
                      "prometheus.yml": {
                        "rule_files": [
                          "/etc/config/recording_rules.yml",
                          "/etc/config/alerting_rules.yml",
                          "/etc/config/rules",
                          "/etc/config/alerts"
                        ],
                        "scrape_configs": [
                          {
                            "job_name": "prometheus",
                            "static_configs": [
                              {
                                "targets": [
                                  "localhost:9090"
                                ]
                              }
                            ]
                          },
                          {
                            "job_name": "kubernetes-nodes-cadvisor",
                            "scheme": "https",
                            "tls_config": {
                              "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                              "insecure_skip_verify": true
                            },
                            "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                            "kubernetes_sd_configs": [
                              {
                                "role": "node"
                              }
                            ],
                            "relabel_configs": [
                              {
                                "action": "labelmap",
                                "regex": "__meta_kubernetes_node_label_(.+)"
                              },
                              {
                                "target_label": "__address__",
                                "replacement": "kubernetes.default.svc:443"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_node_name"
                                ],
                                "regex": "(.+)",
                                "target_label": "__metrics_path__",
                                "replacement": "/api/v1/nodes/$1/proxy/metrics/cadvisor"
                              }
                            ],
                            "metric_relabel_configs": [
                              {
                                "source_labels": [
                                  "__name__"
                                ],
                                "regex": "(container_cpu_usage_seconds_total|container_memory_working_set_bytes|container_network_receive_errors_total|container_network_transmit_errors_total|container_network_receive_packets_dropped_total|container_network_transmit_packets_dropped_total|container_memory_usage_bytes|container_cpu_cfs_throttled_periods_total|container_cpu_cfs_periods_total|container_fs_usage_bytes|container_fs_limit_bytes|container_cpu_cfs_periods_total|container_fs_inodes_free|container_fs_inodes_total|container_fs_usage_bytes|container_fs_limit_bytes|container_cpu_cfs_throttled_periods_total|container_cpu_cfs_periods_total|container_network_receive_bytes_total|container_network_transmit_bytes_total|container_fs_inodes_free|container_fs_inodes_total|container_fs_usage_bytes|container_fs_limit_bytes|container_spec_cpu_shares|container_spec_memory_limit_bytes|container_network_receive_bytes_total|container_network_transmit_bytes_total|container_fs_reads_bytes_total|container_network_receive_bytes_total|container_fs_writes_bytes_total|container_fs_reads_bytes_total|cadvisor_version_info|kubecost_pv_info)",
                                "action": "keep"
                              },
                              {
                                "source_labels": [
                                  "container"
                                ],
                                "target_label": "container_name",
                                "regex": "(.+)",
                                "action": "replace"
                              },
                              {
                                "source_labels": [
                                  "pod"
                                ],
                                "target_label": "pod_name",
                                "regex": "(.+)",
                                "action": "replace"
                              }
                            ]
                          },
                          {
                            "job_name": "kubernetes-nodes",
                            "scheme": "https",
                            "tls_config": {
                              "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                              "insecure_skip_verify": true
                            },
                            "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                            "kubernetes_sd_configs": [
                              {
                                "role": "node"
                              }
                            ],
                            "relabel_configs": [
                              {
                                "action": "labelmap",
                                "regex": "__meta_kubernetes_node_label_(.+)"
                              },
                              {
                                "target_label": "__address__",
                                "replacement": "kubernetes.default.svc:443"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_node_name"
                                ],
                                "regex": "(.+)",
                                "target_label": "__metrics_path__",
                                "replacement": "/api/v1/nodes/$1/proxy/metrics"
                              }
                            ],
                            "metric_relabel_configs": [
                              {
                                "source_labels": [
                                  "__name__"
                                ],
                                "regex": "(kubelet_volume_stats_used_bytes)",
                                "action": "keep"
                              }
                            ]
                          },
                          {
                            "job_name": "kubernetes-service-endpoints",
                            "kubernetes_sd_configs": [
                              {
                                "role": "endpoints"
                              }
                            ],
                            "relabel_configs": [
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_annotation_prometheus_io_scrape"
                                ],
                                "action": "keep",
                                "regex": true
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_endpoints_name"
                                ],
                                "action": "keep",
                                "regex": "(.*node-exporter|kubecost-network-costs)"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_annotation_prometheus_io_scheme"
                                ],
                                "action": "replace",
                                "target_label": "__scheme__",
                                "regex": "(https?)"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_annotation_prometheus_io_path"
                                ],
                                "action": "replace",
                                "target_label": "__metrics_path__",
                                "regex": "(.+)"
                              },
                              {
                                "source_labels": [
                                  "__address__",
                                  "__meta_kubernetes_service_annotation_prometheus_io_port"
                                ],
                                "action": "replace",
                                "target_label": "__address__",
                                "regex": "([^:]+)(?::\\d+)?;(\\d+)",
                                "replacement": "$1:$2"
                              },
                              {
                                "action": "labelmap",
                                "regex": "__meta_kubernetes_service_label_(.+)"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_namespace"
                                ],
                                "action": "replace",
                                "target_label": "kubernetes_namespace"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_service_name"
                                ],
                                "action": "replace",
                                "target_label": "kubernetes_name"
                              },
                              {
                                "source_labels": [
                                  "__meta_kubernetes_pod_node_name"
                                ],
                                "action": "replace",
                                "target_label": "kubernetes_node"
                              }
                            ],
                            "metric_relabel_configs": [
                              {
                                "source_labels": [
                                  "__name__"
                                ],
                                "regex": "(container_cpu_allocation|container_cpu_usage_seconds_total|container_fs_limit_bytes|container_fs_writes_bytes_total|container_gpu_allocation|container_memory_allocation_bytes|container_memory_usage_bytes|container_memory_working_set_bytes|container_network_receive_bytes_total|container_network_transmit_bytes_total|DCGM_FI_DEV_GPU_UTIL|deployment_match_labels|kube_daemonset_status_desired_number_scheduled|kube_daemonset_status_number_ready|kube_deployment_spec_replicas|kube_deployment_status_replicas|kube_deployment_status_replicas_available|kube_job_status_failed|kube_namespace_annotations|kube_namespace_labels|kube_node_info|kube_node_labels|kube_node_status_allocatable|kube_node_status_allocatable_cpu_cores|kube_node_status_allocatable_memory_bytes|kube_node_status_capacity|kube_node_status_capacity_cpu_cores|kube_node_status_capacity_memory_bytes|kube_node_status_condition|kube_persistentvolume_capacity_bytes|kube_persistentvolume_status_phase|kube_persistentvolumeclaim_info|kube_persistentvolumeclaim_resource_requests_storage_bytes|kube_pod_container_info|kube_pod_container_resource_limits|kube_pod_container_resource_limits_cpu_cores|kube_pod_container_resource_limits_memory_bytes|kube_pod_container_resource_requests|kube_pod_container_resource_requests_cpu_cores|kube_pod_container_resource_requests_memory_bytes|kube_pod_container_status_restarts_total|kube_pod_container_status_running|kube_pod_container_status_terminated_reason|kube_pod_labels|kube_pod_owner|kube_pod_status_phase|kube_replicaset_owner|kube_statefulset_replicas|kube_statefulset_status_replicas|kubecost_cluster_info|kubecost_cluster_management_cost|kubecost_cluster_memory_working_set_bytes|kubecost_load_balancer_cost|kubecost_network_internet_egress_cost|kubecost_network_region_egress_cost|kubecost_network_zone_egress_cost|kubecost_node_is_spot|kubecost_pod_network_egress_bytes_total|node_cpu_hourly_cost|node_cpu_seconds_total|node_disk_reads_completed|node_disk_reads_completed_total|node_disk_writes_completed|node_disk_writes_completed_total|node_filesystem_device_error|node_gpu_count|node_gpu_hourly_cost|node_memory_Buffers_bytes|node_memory_Cached_bytes|node_memory_MemAvailable_bytes|node_memory_MemFree_bytes|node_memory_MemTotal_bytes|node_network_transmit_bytes_total|node_ram_hourly_cost|node_total_hourly_cost|pod_pvc_allocation|pv_hourly_cost|service_selector_labels|statefulSet_match_labels|kubecost_pv_info|up)",
                                "action": "keep"
                              }
                            ]
                          }
                        ]
                      },
                      "rules": {
                        "groups": [
                          {
                            "name": "CPU",
                            "rules": [
                              {
                                "expr": "sum(rate(container_cpu_usage_seconds_total{container!=\"\"}[5m]))",
                                "record": "cluster:cpu_usage:rate5m"
                              },
                              {
                                "expr": "rate(container_cpu_usage_seconds_total{container!=\"\"}[5m])",
                                "record": "cluster:cpu_usage_nosum:rate5m"
                              },
                              {
                                "expr": "avg(irate(container_cpu_usage_seconds_total{container!=\"POD\", container!=\"\"}[5m])) by (container,pod,namespace)",
                                "record": "kubecost_container_cpu_usage_irate"
                              },
                              {
                                "expr": "sum(container_memory_working_set_bytes{container!=\"POD\",container!=\"\"}) by (container,pod,namespace)",
                                "record": "kubecost_container_memory_working_set_bytes"
                              },
                              {
                                "expr": "sum(container_memory_working_set_bytes{container!=\"POD\",container!=\"\"})",
                                "record": "kubecost_cluster_memory_working_set_bytes"
                              }
                            ]
                          },
                          {
                            "name": "Savings",
                            "rules": [
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind!=\"DaemonSet\"}) by (pod) * sum(container_cpu_allocation) by (pod))",
                                "record": "kubecost_savings_cpu_allocation",
                                "labels": {
                                  "daemonset": "false"
                                }
                              },
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind=\"DaemonSet\"}) by (pod) * sum(container_cpu_allocation) by (pod)) / sum(kube_node_info)",
                                "record": "kubecost_savings_cpu_allocation",
                                "labels": {
                                  "daemonset": "true"
                                }
                              },
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind!=\"DaemonSet\"}) by (pod) * sum(container_memory_allocation_bytes) by (pod))",
                                "record": "kubecost_savings_memory_allocation_bytes",
                                "labels": {
                                  "daemonset": "false"
                                }
                              },
                              {
                                "expr": "sum(avg(kube_pod_owner{owner_kind=\"DaemonSet\"}) by (pod) * sum(container_memory_allocation_bytes) by (pod)) / sum(kube_node_info)",
                                "record": "kubecost_savings_memory_allocation_bytes",
                                "labels": {
                                  "daemonset": "true"
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    "alertRelabelConfigs": null,
                    "networkPolicy": {
                      "enabled": false
                    }
                  },
                  "networkCosts": {
                    "enabled": false,
                    "image": {
                      "repository": "gcr.io/kubecost1/kubecost-network-costs",
                      "tag": "v0.17.3"
                    },
                    "imagePullPolicy": "Always",
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "prometheusScrape": false,
                    "trafficLogging": true,
                    "logLevel": "info",
                    "port": 3001,
                    "resources": {
                      "limits": {
                        "cpu": "500m"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "20Mi"
                      }
                    },
                    "extraArgs": [],
                    "config": {
                      "destinations": {
                        "in-zone": [
                          "127.0.0.0/8",
                          "169.254.0.0/16",
                          "10.0.0.0/8",
                          "172.16.0.0/12",
                          "192.168.0.0/16"
                        ],
                        "in-region": [],
                        "cross-region": [],
                        "internet": [],
                        "direct-classification": []
                      },
                      "services": {
                        "google-cloud-services": false,
                        "amazon-web-services": false,
                        "azure-cloud-services": false
                      }
                    },
                    "tolerations": [],
                    "affinity": {},
                    "service": {
                      "annotations": {},
                      "labels": {}
                    },
                    "priorityClassName": "",
                    "podMonitor": {
                      "enabled": false,
                      "additionalLabels": {}
                    },
                    "additionalLabels": {},
                    "nodeSelector": {},
                    "annotations": {},
                    "healthCheckProbes": {},
                    "additionalSecurityContext": {}
                  },
                  "kubecostDeployment": {
                    "replicas": 1,
                    "labels": {},
                    "annotations": {}
                  },
                  "forecasting": {
                    "enabled": true,
                    "fullImageName": "gcr.io/kubecost1/kubecost-modeling:v0.1.6",
                    "resources": {
                      "requests": {
                        "cpu": "200m",
                        "memory": "300Mi"
                      },
                      "limits": {
                        "cpu": "1500m",
                        "memory": "1Gi"
                      }
                    },
                    "env": {
                      "GUNICORN_CMD_ARGS": "--log-level info -t 1200"
                    },
                    "priority": {
                      "enabled": false,
                      "name": ""
                    },
                    "nodeSelector": {},
                    "tolerations": {},
                    "affinity": {},
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    }
                  },
                  "kubecostAggregator": {
                    "deployMethod": "singlepod",
                    "enabled": false,
                    "replicas": 1,
                    "stagingEmptyDirSizeLimit": "2Gi",
                    "numDBCopyPartitions": 25,
                    "env": {
                      "LOG_LEVEL": "info",
                      "DB_READ_THREADS": "1",
                      "DB_WRITE_THREADS": "1",
                      "DB_CONCURRENT_INGESTION_COUNT": "3"
                    },
                    "persistentConfigsStorage": {
                      "storageClass": "",
                      "storageRequest": "1Gi"
                    },
                    "aggregatorDbStorage": {
                      "storageClass": "",
                      "storageRequest": "128Gi"
                    },
                    "resources": {},
                    "readinessProbe": {
                      "enabled": true,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "failureThreshold": 200
                    },
                    "cloudCost": {
                      "enabled": false,
                      "resources": {},
                      "readinessProbe": {
                        "enabled": true,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 10,
                        "failureThreshold": 200
                      }
                    },
                    "jaeger": {
                      "enabled": false,
                      "image": "jaegertracing/all-in-one",
                      "imageVersion": "latest"
                    }
                  },
                  "diagnostics": {
                    "enabled": true,
                    "primary": {
                      "enabled": false,
                      "retention": "7d",
                      "readonly": false
                    },
                    "pollingInterval": "300s",
                    "keepDiagnosticHistory": false,
                    "collectHelmValues": false,
                    "deployment": {
                      "enabled": false,
                      "resources": {
                        "requests": {
                          "cpu": "10m",
                          "memory": "20Mi"
                        }
                      },
                      "env": {},
                      "labels": {},
                      "securityContext": {},
                      "containerSecurityContext": {},
                      "nodeSelector": {},
                      "tolerations": {},
                      "affinity": {}
                    }
                  },
                  "clusterController": {
                    "enabled": false,
                    "image": {
                      "repository": "gcr.io/kubecost1/cluster-controller",
                      "tag": "v0.16.0"
                    },
                    "imagePullPolicy": "Always",
                    "priorityClassName": "",
                    "tolerations": [],
                    "actionConfigs": {
                      "clusterTurndown": [],
                      "namespaceTurndown": null,
                      "clusterRightsize": null,
                      "containerRightsize": null
                    },
                    "kubescaler": {
                      "defaultResizeAll": false
                    },
                    "namespaceTurndown": {
                      "rbac": {
                        "enabled": true
                      }
                    }
                  },
                  "reporting": {
                    "logCollection": true,
                    "productAnalytics": true,
                    "errorReporting": true,
                    "valuesReporting": true
                  },
                  "serviceMonitor": {
                    "enabled": false,
                    "additionalLabels": {},
                    "metricRelabelings": [],
                    "relabelings": [],
                    "networkCosts": {
                      "enabled": false,
                      "scrapeTimeout": "10s",
                      "additionalLabels": {},
                      "metricRelabelings": [],
                      "relabelings": []
                    }
                  },
                  "prometheusRule": {
                    "enabled": false,
                    "additionalLabels": {}
                  },
                  "supportNFS": false,
                  "initChownDataImage": "busybox",
                  "initChownData": {
                    "resources": {}
                  },
                  "grafana": {
                    "rbac": {
                      "create": true
                    },
                    "serviceAccount": {
                      "create": true,
                      "name": ""
                    },
                    "replicas": 1,
                    "deploymentStrategy": "RollingUpdate",
                    "readinessProbe": {
                      "httpGet": {
                        "path": "/api/health",
                        "port": 3000
                      }
                    },
                    "livenessProbe": {
                      "httpGet": {
                        "path": "/api/health",
                        "port": 3000
                      },
                      "initialDelaySeconds": 60,
                      "timeoutSeconds": 30,
                      "failureThreshold": 10
                    },
                    "image": {
                      "repository": "grafana/grafana",
                      "tag": "10.3.4",
                      "pullPolicy": "IfNotPresent"
                    },
                    "securityContext": {},
                    "priorityClassName": "",
                    "downloadDashboardsImage": {
                      "repository": "curlimages/curl",
                      "tag": "latest",
                      "pullPolicy": "IfNotPresent"
                    },
                    "podAnnotations": {},
                    "annotations": {},
                    "service": {
                      "type": "ClusterIP",
                      "port": 80,
                      "annotations": {},
                      "labels": {}
                    },
                    "ingress": {
                      "enabled": false,
                      "annotations": {},
                      "labels": {},
                      "path": "/",
                      "pathType": "Prefix",
                      "hosts": [
                        "chart-example.local"
                      ],
                      "tls": []
                    },
                    "resources": {},
                    "nodeSelector": {},
                    "tolerations": [],
                    "affinity": {},
                    "persistence": {
                      "enabled": false
                    },
                    "adminUser": "admin",
                    "adminPassword": "strongpassword",
                    "env": {},
                    "envFromSecret": "",
                    "extraSecretMounts": [],
                    "plugins": [],
                    "dashboardProviders": {},
                    "dashboards": {},
                    "dashboardsConfigMaps": {},
                    "ldap": {
                      "existingSecret": "",
                      "config": ""
                    },
                    "smtp": {
                      "existingSecret": ""
                    },
                    "sidecar": {
                      "image": {
                        "repository": "kiwigrid/k8s-sidecar",
                        "tag": "1.26.0",
                        "pullPolicy": "IfNotPresent"
                      },
                      "resources": {},
                      "dashboards": {
                        "enabled": true,
                        "label": "grafana_dashboard",
                        "labelValue": "1",
                        "annotations": {},
                        "error_throttle_sleep": 0,
                        "folder": "/tmp/dashboards"
                      },
                      "datasources": {
                        "enabled": false,
                        "error_throttle_sleep": 0,
                        "label": "grafana_datasource"
                      }
                    },
                    "grafana.ini": {
                      "server": {
                        "serve_from_sub_path": false,
                        "root_url": "%(protocol)s://%(domain)s:%(http_port)s/grafana"
                      },
                      "paths": {
                        "data": "/var/lib/grafana/data",
                        "logs": "/var/log/grafana",
                        "plugins": "/var/lib/grafana/plugins",
                        "provisioning": "/etc/grafana/provisioning"
                      },
                      "analytics": {
                        "check_for_updates": true
                      },
                      "log": {
                        "mode": "console"
                      },
                      "grafana_net": {
                        "url": "https://grafana.net"
                      },
                      "auth.anonymous": {
                        "enabled": true,
                        "org_role": "Editor",
                        "org_name": "Main Org."
                      }
                    }
                  },
                  "serviceAccount": {
                    "create": true,
                    "annotations": {}
                  },
                  "awsstore": {
                    "useAwsStore": false,
                    "imageNameAndVersion": "gcr.io/kubecost1/awsstore:latest",
                    "createServiceAccount": false,
                    "priorityClassName": "",
                    "nodeSelector": {},
                    "annotations": {}
                  },
                  "federatedETL": {
                    "agentOnly": false,
                    "federatedCluster": false,
                    "redirectS3Backup": false,
                    "useMultiClusterDB": false
                  },
                  "kubecostAdmissionController": {
                    "enabled": false,
                    "secretName": "webhook-server-tls",
                    "caBundle": "${CA_BUNDLE}"
                  },
                  "costEventsAudit": {
                    "enabled": false
                  },
                  "extraObjects": []
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: gcr.io/kubecost1/operator/kubecost-operator-controller:v2.2.4
          createdAt: "2024-05-19T20:46:35Z"
          description: An operator that deploys Kubecost 2.2.4 via the Helm chart.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Stackwatch
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The CostAnalyzer API describes a deployment of Kubecost and
              its dependencies.
            displayName: CostAnalyzer
            kind: CostAnalyzer
            name: costanalyzers.charts.kubecost.com
            version: v1alpha1
        description: |-
          Kubecost provides real-time cost visibility and insights for teams using Kubernetes, helping you continuously reduce your cloud costs.

          This OpenShift operator deploys Kubecost from the official Helm chart.

          Kubecost allows you to:

          * See allocated spend across all native Kubernetes concepts, so you can provide your teams with transparent, accurate cost data reconciled with your actual cloud bill.
          * Join in-cluster costs like CPU and memory with out-of-cluster spend from cloud infrastructure services for complete cost visibility—all services from AWS, GCP, and Microsoft Azure are supported.
          * Gain insights you can use to save 30-50% or more on your infrastructure spend, without exposing your private information—your data never gets shared externally, even with us.
          * Have real-time alerts and recurring reports, empowering teams to take control of their Kubernetes-enabled infrastructure, stay within budgeted limits, and address monitoring interruptions immediately.

          Visit the Kubecost website for more details including features, pricing, documentation, and more at www.kubecost.com.
        displayName: Kubecost
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubecost
        - cost
        - kubernetes
        links:
        - name: Kubecost
          url: https://www.kubecost.com
        maintainers:
        - email: czoller@kubecost.com
          name: Chip Zoller
        maturity: alpha
        provider:
          name: Stackwatch
          url: www.kubecost.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/kubecost@sha256:ff1e00f5a04e49fe9daf06db6b60c2ca14692efd098a38ecd622ef6bc5de8dd5
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - gcr.io/kubecost1/operator/kubecost-operator-controller:v2.2.4
        version: 2.2.4
      entries:
      - name: kubecost.v2.2.4
        version: 2.2.4
      - name: kubecost.v2.1.0
        version: 2.1.0
      - name: kubecost-operator.v1.107.1
        version: 1.107.1
      - name: kubecost-operator.v1.106.2
        version: 1.106.2
      - name: kubecost-operator.v1.106.0
        version: 1.106.0
      - name: kubecost.v1.99.0
        version: 1.99.0
      - name: kubecost.v1.97.0
        version: 1.97.0
      name: alpha
    defaultChannel: alpha
    packageName: kubecost
    provider:
      name: Stackwatch
      url: www.kubecost.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Net AI
      provider-url: https://netai.tech
    name: netai-demo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: netai-demo-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "deployments.netai.tech/v1alpha1",
                "kind": "AntennaDeployment",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netai-demo-operator"
                  },
                  "name": "antennadeployment-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, Networking
          com.redhat.openshift.versions: v4.18
          containerImage: ghcr.io/net-ai-tech/netai-demo-operator@sha256:fae0da9ec2f7a9fd6cfe0ec3e9dfb3b10bf6feaa964b81f081088297649c8bcb
          createdAt: "2025-07-09T11:33:08Z"
          description: Net AI Operator that uses EnergAIze engine forecasts to scale
            Red Hat OpenShift resources.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: ""
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Net AI
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AntennaDeployment is the Schema for the antennadeployments
              API
            displayName: Antenna Deployment
            kind: AntennaDeployment
            name: antennadeployments.deployments.netai.tech
            version: v1alpha1
          - description: Demo is the Schema for the Demo API
            displayName: Demo
            kind: Demo
            name: demos.deployments.netai.tech
            version: v1alpha1
        description: POC Operator that uses saved EnergAize forecasts to manage OpenShift
          Custom Resources
        displayName: netai-demo-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - energaize
        - scaling
        - scale
        - manage
        - forecast
        - cells
        - 5g
        - networking
        - net
        - ai
        - network
        - telecommunication
        - xapp
        links:
        - name: Netai Demo Operator
          url: https://netai-demo-operator.domain
        maturity: alpha
        minKubeVersion: 1.27.0
        provider:
          name: Net AI
          url: https://netai.tech
        relatedImages:
        - registry.access.redhat.com/ubi8/ubi@sha256:68fecea0d255ee253acbf0c860eaebb7017ef5ef007c25bee9eeffd29ce85b29
        - registry.connect.redhat.com/net-ai/demo-operator-bundle@sha256:b1a30de1e984da0487a7d042bd940876bedb5a2f43dd73c7895e684a3a35d81e
        - ghcr.io/net-ai-tech/netai-demo-operator-bundle@sha256:0783aba7b039a569b49de2a61ef6dc6ff1d1f301d93c26d623b7f652321871c5
        - ghcr.io/net-ai-tech/netai-demo-operator@sha256:fae0da9ec2f7a9fd6cfe0ec3e9dfb3b10bf6feaa964b81f081088297649c8bcb
        version: 0.0.1
      entries:
      - name: netai-demo-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: netai-demo-operator
    provider:
      name: Net AI
      url: https://netai.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-athena-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-athena-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "athena.services.k8s.aws/v1alpha1",
                "kind": "WorkGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/athena-controller:1.2.0
          createdAt: "2025-11-29T04:51:07Z"
          description: AWS Athena controller is a service controller for managing
            Athena resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PreparedStatement represents the state of an AWS athena PreparedStatement
              resource.
            displayName: PreparedStatement
            kind: PreparedStatement
            name: preparedstatements.athena.services.k8s.aws
            version: v1alpha1
          - description: WorkGroup represents the state of an AWS athena WorkGroup
              resource.
            displayName: WorkGroup
            kind: WorkGroup
            name: workgroups.athena.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Athena resources in AWS from within your Kubernetes cluster.

          **About Amazon Athena**

          Amazon Athena is an interactive query service that makes it easy to analyze data directly in Amazon Simple Storage Service (Amazon S3) using standard SQL. With a few actions in the AWS Management Console, you can point Athena at your data stored in Amazon S3 and begin using standard SQL to run ad-hoc queries and get results in seconds.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Athena
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - athena
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Athena Developer Resources
          url: https://aws.amazon.com/athena/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: athena maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/athena-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-athena-controller@sha256:391d422e57dcc2960e2d89d83f6a58f0d9dfa6eac69634b751cb7c2bdf185fe9
        version: 1.2.0
      entries:
      - name: ack-athena-controller.v1.2.0
        version: 1.2.0
      - name: ack-athena-controller.v1.1.2
        version: 1.1.2
      - name: ack-athena-controller.v1.1.1
        version: 1.1.1
      - name: ack-athena-controller.v1.1.0
        version: 1.1.0
      - name: ack-athena-controller.v1.0.14
        version: 1.0.14
      - name: ack-athena-controller.v1.0.13
        version: 1.0.13
      - name: ack-athena-controller.v1.0.12
        version: 1.0.12
      - name: ack-athena-controller.v1.0.11
        version: 1.0.11
      - name: ack-athena-controller.v1.0.10
        version: 1.0.10
      - name: ack-athena-controller.v1.0.9
        version: 1.0.9
      - name: ack-athena-controller.v1.0.8
        version: 1.0.8
      - name: ack-athena-controller.v1.0.7
        version: 1.0.7
      - name: ack-athena-controller.v1.0.6
        version: 1.0.6
      - name: ack-athena-controller.v1.0.5
        version: 1.0.5
      - name: ack-athena-controller.v1.0.4
        version: 1.0.4
      - name: ack-athena-controller.v1.0.1
        version: 1.0.1
      - name: ack-athena-controller.v1.0.0
        version: 1.0.0
      - name: ack-athena-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-athena-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: opdev
      provider-url: opdev.github.io
    name: airflow-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: airflow-helm-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "workflow.apache.org/v1alpha1",
                "kind": "AirFlow",
                "metadata": {
                  "name": "airflow-helm"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: quay.io/opdev/airflow-helm-operator:0.0.1
          createdAt: "2023-06-28T16:57:21Z"
          description: An experimental operator that installs Apache Airflow.
          operatorframework.io/suggested-namespace: airflow-helm
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: hybrid.helm.sdk.operatorframework.io/v1-alpha
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys Apache Airflow based on the official helm chart in
              openshift
            kind: AirFlow
            name: airflows.workflow.apache.org
            version: v1alpha1
        description: Deploys Apache Airflow based on the official helm chart with
          openshift specific modifications applied by default
        displayName: Airflow Helm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - airflow
        - data
        - batch
        - scheduler
        - data workflow
        links:
        - name: Airflow Helm Operator
          url: https://airflow-helm-operator.domain
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: opdev
          url: opdev.github.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/opdev/airflow-helm-operator:0.0.1
        - quay.io/openshift-community-operators/airflow-helm-operator@sha256:b3d05d2e2b4ff8ae64e4fc0338fcfa1ffdc345c6fdda8eaefed4e9108750fe58
        version: 0.0.1
      entries:
      - name: airflow-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: airflow-helm-operator
    provider:
      name: opdev
      url: opdev.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataTrucker.IO
      provider-url: https://www.datatrucker.io/
    name: datatrucker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datatrucker-operator.v2.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datatrucker.datatrucker.io/v1",
                "kind": "DatatruckerConfig",
                "metadata": {
                  "name": "datatruckerconfig-sample"
                },
                "spec": {
                  "API": {
                    "crypto": {
                      "CredentailEncryption": {
                        "Algorithm": "aes-256-cbc",
                        "IV": "eThWmZq4t7w!z$C\u0026",
                        "Key": "JaNdRgUkXp2s5u8x/A?D(G+KbPeShVmY"
                      },
                      "JWT": {
                        "authorization_keys": {
                          "private_key": "privateJWT.key",
                          "public_key": "publicJWT.key"
                        },
                        "signOptions": {
                          "algorithm": "RS256",
                          "expiresIn": "60m",
                          "issuer": "datatrucker"
                        },
                        "verify": {
                          "issuer": "datatrucker"
                        }
                      },
                      "keycloak": {
                        "client_id": "nodejs",
                        "client_secret": "7c5542ae-7264-420d-bf5f-766f4ab39ad3",
                        "jwt_publickey_verifier": "keycloak.key",
                        "realm": "TestRealm",
                        "url": "http://localhost:30015"
                      },
                      "passwordHash": {
                        "Algorithm": "sha256",
                        "SaltLength": 16
                      }
                    },
                    "cryptokeys": {
                      "keycloakkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUF4ZnhGY1gxb3RmTUN6SWlkZ09tMndZakZWZXZHN1BQT1h5dTNrTEFuTWtTVkUxUXl4TzJ4SFFvSGcydDFVcUU4SVNXeTN3ZkZTbERzdU1VK0J1VVkvaWI5L04vSlpBV3k5MGRET0YxREdIeGVwM21HMVBTUllMQWFGQ0I3NTVsbWZjL1dna3VzZFdLdmxOTmZuNkd6S1J6OXBmV3RNUnhWWkFrejhmNlVUeG0zWE02Q0tOMUludThubEcxU3ZzaFc5cmt3Lyt6UmVvOFVCV2pPcTh5RjdPV0tnS0ZZZlhENFREa090OWFxN3RaaSsxaExYOE5iV2xxRnJZYmhJcFZINXlLSko3ZTA5cUVIRkVEelg5QXJzVVNHamNjbFFFYTl1dmJxU2d4Rzc3RUZVbk82aDZxUkNnU3lNNnVYdk9qcWlIMHp4RTNmRHB4R2NhY2pvTW1EMlFJREFRQUIKLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0t",
                      "privateJWTkey": "LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQ0KTUlJRW9RSUJBQUtDQVFCVWd1ZDN1OFlXcUJCWWtYZ3M2K25pMS84bnM5YjRGNkZudzA4RDRKdGRlalg5L1ZaMg0KWFdOamJ1ekMxUkRHMnVseFM4QjZIdTZYeEhYWU9XU2ZzOEY0UHZ2eC9TUWdmRWtWUlNDL1pQN3pzM1ZETllaMA0Kc1JScDNSZzUza29qUG80T3o2azFaeGprbFRFZEpMWUtqYlZud3U1M3A3MTFsVTJkV3B4R3VEeGYxVTJuUWgrWA0KaUhKZkhyUmxTZVA1aVhYQkpxd21VTDFkK25lTU5BOXlGakR0MnNZMG5iSDRySDVxbk1VRk4xMEpsZ3V4NFdiUw0KaGFUNklNN3h1dUVHbDRDckVENmdTejBNNGF1UVk4ekZxQWxJNlFWUTlML28zQnBCRmxYUUMwWmowb3lwQVFKLw0KQ1VLaU9FcEhLRHgram02RU9KOE1aejlMQ01yTmdLME5KSWlaQWdNQkFBRUNnZ0VBRTBMMnNLSjZob1Z0bkZJag0KZXRHV01CNmN5QmJFSXkxM215ZTNwYUdXcDVxSUhjaVU0VXR0c0tjQ2pYRjBibTVNa0liOGFwa01Oa2tQdHVWMQ0KMnJSa254eHozZmFkT2s0NWRnQ1ljeWI0dU9DcEZGVnB2TVR6YXlGNk9RNUNCWUJuYmxiRU1TaTdVclh5U0xzcQ0KUm9OLzJoTml1S0RobktBWDNZcGVYZnYxdnIyaWIrMGtiRDVvMVZLcnB6SlJ5emlsWHFwQWJwNDQ4RExFZHVGeA0KTnJKc0tWb1dXMVhmS1FvR2VDMXZqNFJudzdhWkNyU1BjMEhvMUdKb29xSXlrNjRXZnhGWjhpVElsWDJMU1gzbQ0KQm1pN1ZXZnVJK0QvUXRtWEVpN05oTE1jUmExVXB4QkdiK1ZPZXlucEVyMEpxM3VZSmlva1VIZzloOGIzSDM1Yg0KK0lJaEFRS0JnUUNtbzUrRUNpOEJUcFRHdlpqQXBtdmxGZ055NkpWd0RvVHJLSGdCcHJHVHpsVGt6Q0tLYzJhTw0KTTMvQmVIVUQ1NVFqcTdUM094eGgzQUk3cG9kT0tCWS84eXgzenlYUExQUmVCMlR0eTNVQjE5YU5CclhNUGQ5RQ0KTG5hbUQ0SmZQeTV0WHpWWEloWVB0UzBiNjdGbjZnZFl4MlNBbGFYYWFjejU4eURLZnlZL3VRS0JnUUNCMUxNYg0KTFZNTU1Pd1U4R2xsVVB1V0Q5VnBsMnlURytCN2Nnd0ZiYTlrWVlVSFQ4TmlvaUdxQzlLZWxqeklKNnlUdyt3aA0KQisvNGNJU1o5Y0JDNHB0VnRlTWJwUkg3UTQwK20xU3M1SmQzU1VFcDBMOW5VbmdVNDhrMzlpSTV5aEgxU3JTRw0KREtBamVka2Rjb3hNVWFwUHB6cVprOVNKdGVHckVsTHY5WmcvNFFLQmdHcExQTmt3MWNMenFSc01uWDlscUxVOA0KVVg3ZXRWUUJMdkFCcEdzSk5ZU2V2TEFsTm5NeUlWemJwTVo0Vzh2ZDBEVGd0bEp0dGpFRjhiYXpCdVBuMWlsOA0KcUFUVWNiMnhZejhIWUczK3RlZ3pFWHhycDFOY3RDbjlxVmxMMDFHR0w4czhTLzRFbENYNDM0bEwwcUlDT2lWNw0KS3JTS3dIeU51RjVIbzhjSFRCS2hBb0dBVjhVRVpENEs0N1g3RTlqSFY3QWN0UUQxUkpJUzI0ekFBSlJFSGpOZA0KbkIzMVFkRWhoSCtaQkkxRGtPUitLTTN4ZEYvQ05UNVpjM29WbXNPeGUwWVl2eVBjYWViNU5nVWY2cEExK1QvOA0KU2E4ak4zS2d3dWZVdUVLWjJKUXo1UjkvYm5WWGZ6dnYwcXZnSkhFNCthdEgyTnR6MlRsQU9PelZwOElXZ1pSbA0KbmVFQ2dZQXpVS0RLS1ZKaXBYdC9TRC8xd2ZzWElCazFxYWpmdENHOFVTcFlGWGp5VzVYMlZ5bTlVTldmVEdJcA0KQlJkVldXamdFbWhyOU5Da1UrVEU4WEVjTXJNRnhWbXBEeTQ4YmxsQWltWFJtOEhNMlhKODQ4TlArTG5GdEtHdA0KTWswT3JuUHdPYitualZGcXdWUllNQ0QzeFN0Z2RnZUppUHFYcWd3SDhjR0M0OGVmZ0E9PQ0KLS0tLS1FTkQgUlNBIFBSSVZBVEUgS0VZLS0tLS0=",
                      "publicJWTkey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJVEFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUTRBTUlJQkNRS0NBUUJVZ3VkM3U4WVdxQkJZa1hnczYrbmkNCjEvOG5zOWI0RjZGbncwOEQ0SnRkZWpYOS9WWjJYV05qYnV6QzFSREcydWx4UzhCNkh1Nlh4SFhZT1dTZnM4RjQNClB2dngvU1FnZkVrVlJTQy9aUDd6czNWRE5ZWjBzUlJwM1JnNTNrb2pQbzRPejZrMVp4amtsVEVkSkxZS2piVm4NCnd1NTNwNzExbFUyZFdweEd1RHhmMVUyblFoK1hpSEpmSHJSbFNlUDVpWFhCSnF3bVVMMWQrbmVNTkE5eUZqRHQNCjJzWTBuYkg0ckg1cW5NVUZOMTBKbGd1eDRXYlNoYVQ2SU03eHV1RUdsNENyRUQ2Z1N6ME00YXVRWTh6RnFBbEkNCjZRVlE5TC9vM0JwQkZsWFFDMFpqMG95cEFRSi9DVUtpT0VwSEtEeCtqbTZFT0o4TVp6OUxDTXJOZ0swTkpJaVoNCkFnTUJBQUU9DQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0=",
                      "truckerapicrt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUQxVENDQXIyZ0F3SUJBZ0lVUFVzZ2NYVXZRYWtuQldjeUFDeEw2dmt3b204d0RRWUpLb1pJaHZjTkFRRUwKQlFBd2RqRUxNQWtHQTFVRUJoTUNRMEV4Q3pBSkJnTlZCQWdNQWs5T01ROHdEUVlEVlFRSERBWk5hV3gwYjI0eApGekFWQmdOVkJBb01Ea1JoZEdGVWNuVmphMlZ5TGtsUE1SUXdFZ1lEVlFRTERBdEZibWRwYm1WbGNtbHVaekVhCk1CZ0dBMVVFQXd3UlJHRjBZVlJ5ZFdOclpYSlNiMjkwUTBFd0hoY05NakF4TURFeU1UWXlOalV5V2hjTk1qTXcKTVRFMU1UWXlOalV5V2pCM01Rc3dDUVlEVlFRR0V3SkRRVEVMTUFrR0ExVUVDQXdDVDA0eER6QU5CZ05WQkFjTQpCazFwYkhSdmJqRVhNQlVHQTFVRUNnd09SR0YwWVZSeWRXTnJaWEl1U1U4eEZEQVNCZ05WQkFzTUMwVnVaMmx1ClpXVnlhVzVuTVJzd0dRWURWUVFEREJKa1lYUmhkSEoxWTJ0bGNpMWhjR2t1YVc4d2dnRWlNQTBHQ1NxR1NJYjMKRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEakM4ZmVCVEg4L3NnejFQcTJQYU9QQjc5YWtyeUZvWVpGV292bQpWOXNvMmJNRHp4NVBZSFJydVFGYmJQRzlVVlc2QWZpSHdEb1p2Z3NTVXpyS3ZyR1RlYjluNUhSVlVOMTl0NExTCjdtUFppNzFRbGE4bVR3QmdvTnE4TFppcnZUdzV0S2I4K3NmcFJxQUlUQkVsRmxVUEZISzllcDl2eFdvaHhwdGgKS1dPVkwvV2ZtWldhWXlRdjlLNDBkWUJpRWpGcTFKZVB4MDlnUFdHM2pOT1VYTTZQUVlMaHJDUXFFcy9VME9GWQpwVFRHUmNXZEx4TFVFZVNkcHJKK1ZEc3lEK1lVeUFRR2phYk14VmVTVlRUN1FGbFBjLzc3OVZsRkdXMC8xWVVaCmpqakNsSkFLUWZOTHg5bG85cWJERVBZL3grZmhnRnYyWUVaSTNTdGVyZWUvVDJoWEFnTUJBQUdqV2pCWU1COEcKQTFVZEl3UVlNQmFBRkNJVy9JYkZIUUNBeEdxZC9FVFpXbVhGeGMvQ01Ba0dBMVVkRXdRQ01BQXdDd1lEVlIwUApCQVFEQWdUd01CMEdBMVVkRVFRV01CU0NFbVJoZEdGMGNuVmphMlZ5TFdGd2FTNXBiekFOQmdrcWhraUc5dzBCCkFRc0ZBQU9DQVFFQUxrMlJDbnVweDA5Wmx0SmN3M1pUaFIveUZGNS9KVlVsWkdHTnc3MlAwQmR6SEloQncrVk4KRkNucGFPMjJ0WGF1NlJVeTVNUWhwc3JrbFNKYVdJT25jOUg0Uk0vbGh3YWsyRXN0MkFhdUFwNUdYSVFJMDVBeAo3NmtDZXEyMnUyalNXRWpFS1hGRnRiZXVDZnFpWlpqNWFLcGF1YlZWRG4ydEZTWjJRMFRib2RRN2dpTFdNUTBLCk5ycVgwQWNSU2J0ZnRSNjBhdGQ1YW41aFNXY0dyZUg5ZHdFUVRvVVNFblg2RFRZSURoeElsZStjQ2V5VjVSWk8KVS9hck5RZ0lFY3ZrZUM1d1lZaFFFL1FUN3lNb1lNajFnckxmOTZSZkRhbEVFNE1seUtDWm9wYWNJWUdzSmhuKwpLMWFISEQvbGZxTC9zbnNtY3pXdHlLUncxTDF1WkxPcjJnPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=",
                      "truckerapikey": "LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb3dJQkFBS0NBUUVBNHd2SDNnVXgvUDdJTTlUNnRqMmpqd2UvV3BLOGhhR0dSVnFMNWxmYktObXpBODhlClQyQjBhN2tCVzJ6eHZWRlZ1Z0g0aDhBNkdiNExFbE02eXI2eGszbS9aK1IwVlZEZGZiZUMwdTVqMll1OVVKV3YKSms4QVlLRGF2QzJZcTcwOE9iU20vUHJINlVhZ0NFd1JKUlpWRHhSeXZYcWZiOFZxSWNhYllTbGpsUy8xbjVtVgptbU1rTC9TdU5IV0FZaEl4YXRTWGo4ZFBZRDFodDR6VGxGek9qMEdDNGF3a0toTFAxTkRoV0tVMHhrWEZuUzhTCjFCSGtuYWF5ZmxRN01nL21GTWdFQm8ybXpNVlhrbFUwKzBCWlQzUCsrL1ZaUlJsdFA5V0ZHWTQ0d3BTUUNrSHoKUzhmWmFQYW13eEQyUDhmbjRZQmI5bUJHU04wclhxM252MDlvVndJREFRQUJBb0lCQUZSbFo2aiswMk1RcmdpZQpUWWQ2aUJhOXNZS1FjdVZWY2x6TFdKK0ozdHhqZCtpZGo4Mi9zK2JyQVRjajJ3UWRmTGxFekVaaHpQY09ybnprClZVRlIreDR2cmxlSEV6czNjTzJ2VGtEci9rKzZZdWZXakNHNFVoS1pHRlhFdVRCMWlqS0ZGV0dLTXM5aXdrL3oKUHBoRG9lQ1dJRVNRbFQxdDY1S2NpZHRuRUM0K3oxaURxR21ZZEVEa2xEZFFIVHorRGpseS80VzV2MFpVQWN2Vwo1Unkvd0JldmNURlBXQy9uZGFrN3hGUnVrU2xNZUlhTWhvTlllOU5uVCt2Nmh5VVh1MXp6cG45UEFJRTVpQWpOCnBsZkFEZitwakwrZFJDbW9sWW1LR3NQVjEzSmtCY1p2cEVoUWgrUmJnaWFwczJLc2plQ0NmTmtST0hndHc0MU0KeGxOTU1Ha0NnWUVBOHM1akpuZ2FMblIvTzZtakZEb0wvd1p2UWdnT1h3Z1RBN2tsQ0trbjBYM0xJS0hhaTZESgpyOVRGQktMdkhUazVFK1Y4NkhIZ29VMUFQQnYyMWJpaHhuQXhUYm8wSHZMdG5QOXU3YnZJejFNOWMyd2ZlWUgzCmliMG1FNkV0Y2wvNnVIUHdMVlZtRGh5bllneEZpeTRRRXp1ZHZwaFIvSnlPazQvUytQUzh2ZXNDZ1lFQTcySW8KWDlkY0xvUmYzSk0vRTF1SXhrRGRLZm1VakN6Mk1NN3pyRkpNUERobTFSUlJhQjdidHNxUzl4Mm5KeTI5amtoSQpndTR0Y2s5STdncm9WRXY0cEtkU0lOVzVNVUg0MXJPckxTbFBobCtMaTM5QXNrTERFVXVQbkFmYko3YWZibFFHCjNFWE1Ka1d2WFQxRG90aE11MUpUMTFPMjhmYlBmb3R3YVRucXFFVUNnWUE1RnArblh0dkJDbkVUNVJuTDJxNFIKWTBEcmhKdGthckNWMG9WTG1RSWN0bmY1RHpVa1dVU3lpOU5hK0xoQjViOXUxeWxjT2RJMytzTGNuektWSTVrZAo0Q2tuZmwxYzNYOVN4NWdjVzJlbW40cTJSYmpNeCtzY3ZwVmlUaVl5V3pESEI3Tno1VDFlbWd3YytJZXRac0l1CjAzaU9aSi82UmhFYnp0Z3E0dGd4eXdLQmdCanhwSDFnSm9YZVcxTFRzUlhtU3RsRnR3WUJzTDN1alhUR2k5T2YKKzd1bXNPaHhKbzV2OExzYVhyZ0xTZmltSm9ObCt0QlIyMEIzRElWcGM0NGRJSHFmeU1vTkd6QUx6TThxaDZLOApGRUpQUUc0M3cxa1A1ZDJ1ZnZkbVJpcmNONzY2V01DcE1UMm5zejlHKy81REJiUGJQMHRIdU45N3RXRmRURWhhCnRaMzFBb0dCQU5xZnVycEV4ZHozdXRNUm91RnJjTmVkV2s4VlVpVVZIV1hZMjhNNWQvRjcxMExIOTZuOW12V08Kc1cwcDFjcXBJMEsyQko2WlYwNVpybnlyRHBsVVpVdVpSQWxGR3hYR1dLU2trQzlmWm90SkFOWDBkR29KSitqTwpEYUNLNGxlcXdOMHNPRE1YZFErMlFPaUtlSUxkNU5KcDNUSW1YV1Z0RFlXUkRwOW9iSUdlCi0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg=="
                    },
                    "jobsServer": {
                      "ajv": {
                        "customOptions": {
                          "allErrors": true,
                          "coerceTypes": true,
                          "jsPropertySyntax": true,
                          "keepErrors": false,
                          "singleError": true
                        }
                      },
                      "bind": "0.0.0.0",
                      "compression": {
                        "threshold": 2048
                      },
                      "fastify": {
                        "ignoreTrailingSlash": true,
                        "logger": {
                          "level": "debug"
                        }
                      },
                      "helmet": {
                        "framegaurd": {
                          "action": "deny"
                        }
                      },
                      "jobResponseErrors": true,
                      "keycloak": true,
                      "pluginsEnable": {
                        "DB": true,
                        "FileSFTP": true,
                        "IOTKafka": true,
                        "IOTProxy": false,
                        "IOTRedis": true,
                        "Login": false,
                        "ScriptJS": true,
                        "ScriptSSH": true,
                        "ScriptShell": true,
                        "UtilEcho": true,
                        "UtilFuzzy": true,
                        "UtilSentiment": true,
                        "credentials": false,
                        "jobs": true,
                        "resources": false,
                        "statuschecks": true,
                        "ui": false,
                        "usermanagement": false
                      },
                      "port": "8080",
                      "protocol": {
                        "http2": false,
                        "httpsconfig": {
                          "allowHTTP1": true,
                          "cert": "truckerapi.crt",
                          "key": "truckerapi.key"
                        },
                        "type": "http"
                      },
                      "requestLog": false,
                      "serverID": "ServerHandler",
                      "writableResource": false
                    },
                    "loginServer": {
                      "ajv": {
                        "customOptions": {
                          "allErrors": true,
                          "coerceTypes": true,
                          "jsPropertySyntax": true,
                          "keepErrors": false,
                          "singleError": true
                        }
                      },
                      "bind": "0.0.0.0",
                      "compression": {
                        "threshold": 2048
                      },
                      "fastify": {
                        "ignoreTrailingSlash": true,
                        "logger": {
                          "level": "info"
                        }
                      },
                      "helmet": {
                        "framegaurd": {
                          "action": "deny"
                        }
                      },
                      "jobResponseErrors": true,
                      "keycloak": true,
                      "pluginsEnable": {
                        "DB": false,
                        "FileSFTP": false,
                        "IOTKafka": false,
                        "IOTProxy": false,
                        "IOTRedis": false,
                        "Login": true,
                        "ScriptJS": false,
                        "ScriptSSH": false,
                        "ScriptShell": false,
                        "UtilEcho": false,
                        "UtilFuzzy": false,
                        "UtilSentiment": false,
                        "credentials": false,
                        "jobs": false,
                        "resources": false,
                        "statuschecks": true,
                        "ui": false,
                        "usermanagement": false
                      },
                      "port": "8080",
                      "protocol": {
                        "http2": false,
                        "httpsconfig": {
                          "allowHTTP1": true,
                          "cert": "truckerapi.crt",
                          "key": "truckerapi.key"
                        },
                        "type": "http"
                      },
                      "requestLog": false,
                      "serverID": "ServerHandler",
                      "writableResource": false
                    },
                    "managementServer": {
                      "ajv": {
                        "customOptions": {
                          "allErrors": true,
                          "coerceTypes": true,
                          "jsPropertySyntax": true,
                          "keepErrors": false,
                          "singleError": true
                        }
                      },
                      "bind": "0.0.0.0",
                      "compression": {
                        "threshold": 2048
                      },
                      "fastify": {
                        "ignoreTrailingSlash": true,
                        "logger": {
                          "level": "debug"
                        }
                      },
                      "helmet": {
                        "framegaurd": {
                          "action": "deny"
                        }
                      },
                      "jobResponseErrors": true,
                      "keycloak": true,
                      "pluginsEnable": {
                        "DB": false,
                        "FileSFTP": false,
                        "IOTKafka": false,
                        "IOTProxy": false,
                        "IOTRedis": false,
                        "Login": true,
                        "ScriptJS": false,
                        "ScriptSSH": false,
                        "ScriptShell": false,
                        "UtilEcho": false,
                        "UtilFuzzy": false,
                        "UtilSentiment": false,
                        "credentials": true,
                        "jobs": false,
                        "resources": false,
                        "statuschecks": true,
                        "ui": true,
                        "usermanagement": true
                      },
                      "port": "8080",
                      "protocol": {
                        "http2": false,
                        "httpsconfig": {
                          "allowHTTP1": true,
                          "cert": "truckerapi.crt",
                          "key": "truckerapi.key"
                        },
                        "type": "http"
                      },
                      "requestLog": false,
                      "serverID": "ServerHandler",
                      "writableResource": false
                    },
                    "name": "API",
                    "resource": {
                      "Cache": {
                        "Creds": false,
                        "CredsFlush": 10,
                        "Resource": false,
                        "ResourceFlush": 10
                      },
                      "Templates": {
                        "Scripts": "scripts",
                        "Shell": "shell",
                        "keys": "keys",
                        "resourcedefinitions": "resourcedefinitions"
                      }
                    }
                  },
                  "DB": {
                    "databasename": "userdb",
                    "hostname": "db",
                    "password": "password",
                    "port": 5432,
                    "type": "pg",
                    "user": "testuser"
                  },
                  "TempDB": {
                    "enabled": false,
                    "pvc": "samplepvc"
                  }
                }
              },
              {
                "apiVersion": "datatrucker.datatrucker.io/v1",
                "kind": "DatatruckerFlow",
                "metadata": {
                  "name": "datatruckerflow-sample"
                },
                "spec": {
                  "API": {
                    "Image": {
                      "imageName": "datatrucker-server/datatrucker-api",
                      "imageNameUI": "datatruckerio/datatrucker-ui",
                      "repository": "registry.gitlab.com/datatruckerio",
                      "tagName": "latest"
                    },
                    "name": "api"
                  },
                  "DatatruckerConfig": "datatruckerconfig-sample",
                  "JobDefinitions": [
                    {
                      "name": "echoapi",
                      "restmethod": "GET",
                      "tenant": "Admin",
                      "type": "Util-Echo",
                      "validations": {
                        "properties": {
                          "voila": {
                            "enum": [
                              "true",
                              "false"
                            ],
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    }
                  ],
                  "Keys": {
                    "configmap": "placeholder"
                  },
                  "Replicas": 1,
                  "Resources": {
                    "limits": {
                      "cpu": "500m",
                      "memory": "256Mi"
                    },
                    "requests": {
                      "cpu": "250m",
                      "memory": "256Mi"
                    }
                  },
                  "Scripts": {
                    "configmap": "placeholder"
                  },
                  "Type": "Job"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/datatruckerio/datatrucker-operator:2.0.0
          createdAt: "2021-09-08 01:01:01"
          operators.operatorframework.io/builder: operator-sdk-v1.10.1-ocp
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: hhttps://gitlab.com/datatruckerio/datatrucker-server.git
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              - creates secrets to hold server configs
              - create tempDB for protoypting
              - create configs for seperating Login, management and Jobs endpoints
              - Create crypto configs
            displayName: Datatrucker Config
            kind: DatatruckerConfig
            name: datatruckerconfigs.datatrucker.datatrucker.io
            version: v1
          - description: '- creates an API as per Job Definitions'
            displayName: Datatrucker Flow
            kind: DatatruckerFlow
            name: datatruckerflows.datatrucker.datatrucker.io
            version: v1
        description: "## DataTrucker.IO\n\nDataTrucker.IO is a simple no-code / less-code
          API Backend\n\n### What does it do ?\n\nDatatrucker.IO is a product capable
          of reading simple json/yaml configs and building th code necessary for converting
          it into an API.\nAlong with building the code, it will also host the code
          base on a nodejs server , i.e. it will immediately make it available for
          consumption.\n\n### What does it offload from a developer ?\n\nDataTrucker
          is capable of removing the most common activities which a developer needs
          to do on every new project A few of such common activities are\n\n- Creating
          an API endpoint with a specified business logic (using simple plugins)\n-
          Applying standard RBAC\n- Applying Authorization logic\n- Applying hardening
          on endpoints\n- Log management\n- Connecting to variety of systems\n- Modularizing
          business logic\n- The best of doing it with little to no code\n\n### watch
          the quick elevator pitch to understand datatrucker.io\n\n https://youtu.be/DKLFDqhjs5M\n "
        displayName: DataTrucker.IO
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - datatrucker
        - operator
        - nocode
        - apibuilder
        links:
        - name: Website
          url: https://www.datatrucker.io/
        - name: Git Repo
          url: https://gitlab.com/datatruckerio/datatrucker-server.git
        maintainers:
        - email: gauravshankar.can@gmail.com
          name: Gaurav Shankar
        maturity: alpha
        provider:
          name: DataTrucker.IO
          url: https://www.datatrucker.io/
        relatedImages:
        - docker.io/datatruckerio/datatrucker-operator:2.0.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/openshift-community-operators/datatrucker-operator@sha256:4ab1d683d95d3eeba944b977594aff2e3b3e7203f56598b2fb2f7cff75354be3
        version: 2.0.0
      entries:
      - name: datatrucker-operator.v2.0.0
        version: 2.0.0
      - name: datatrucker-operator.v1.3.2
        version: 1.3.2
      - name: datatrucker-operator.v1.3.1
        version: 1.3.1
      - name: datatrucker-operator.v1.3.0
        version: 1.3.0
      name: alpha
    defaultChannel: alpha
    packageName: datatrucker-operator
    provider:
      name: DataTrucker.IO
      url: https://www.datatrucker.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: ""
    name: percona-server-mysql-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-server-mysql-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQL",
              "metadata": {
                "name": "ps-cluster1",
                "finalizers": [
                  "percona.com/delete-mysql-pods-in-order"
                ]
              },
              "spec": {
                "crVersion": "1.0.0",
                "secretsName": "ps-cluster1-secrets",
                "sslSecretName": "ps-cluster1-ssl",
                "updateStrategy": "SmartUpdate",
                "upgradeOptions": {
                  "versionServiceEndpoint": "https://check.percona.com",
                  "apply": "disabled"
                },
                "mysql": {
                  "clusterType": "group-replication",
                  "autoRecovery": true,
                  "image": "docker.io/percona/percona-server:8.4.6-6.1",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "resources": {
                    "requests": {
                      "memory": "2Gi"
                    },
                    "limits": {
                      "memory": "4Gi"
                    }
                  },
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "exposePrimary": {
                    "enabled": true
                  },
                  "volumeSpec": {
                    "persistentVolumeClaim": {
                      "resources": {
                        "requests": {
                          "storage": "2Gi"
                        }
                      }
                    }
                  },
                  "gracePeriod": 600
                },
                "proxy": {
                  "haproxy": {
                    "enabled": true,
                    "size": 3,
                    "image": "docker.io/percona/haproxy:2.8.15",
                    "imagePullPolicy": "Always",
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "1Gi",
                        "cpu": "600m"
                      }
                    },
                    "gracePeriod": 30,
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    }
                  },
                  "router": {
                    "enabled": false,
                    "image": "docker.io/percona/percona-mysql-router:8.4.6",
                    "imagePullPolicy": "Always",
                    "size": 3,
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "resources": {
                      "requests": {
                        "memory": "256M"
                      },
                      "limits": {
                        "memory": "256M"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "gracePeriod": 30
                  }
                },
                "orchestrator": {
                  "enabled": false,
                  "image": "docker.io/percona/percona-orchestrator:3.2.6-18",
                  "imagePullPolicy": "Always",
                  "size": 3,
                  "affinity": {
                    "antiAffinityTopologyKey": "kubernetes.io/hostname"
                  },
                  "podDisruptionBudget": {
                    "maxUnavailable": 1
                  },
                  "gracePeriod": 30,
                  "resources": {
                    "requests": {
                      "memory": "128M"
                    },
                    "limits": {
                      "memory": "256M"
                    }
                  }
                },
                "pmm": {
                  "enabled": false,
                  "image": "docker.io/percona/pmm-client:3.4.1",
                  "imagePullPolicy": "Always",
                  "resources": {
                    "requests": {
                      "memory": "150M",
                      "cpu": "300m"
                    }
                  },
                  "serverHost": "monitoring-service"
                },
                "backup": {
                  "enabled": true,
                  "image": "docker.io/percona/percona-xtrabackup:8.4.0-4.1",
                  "imagePullPolicy": "Always",
                  "storages": {
                    "s3-us-west": {
                      "type": "s3",
                      "verifyTLS": true,
                      "s3": {
                        "bucket": "S3-BACKUP-BUCKET-NAME-HERE",
                        "credentialsSecret": "ps-cluster1-s3-credentials",
                        "region": "us-west-2"
                      }
                    }
                  }
                },
                "toolkit": {
                  "image": "docker.io/percona/percona-toolkit:3.7.0-2",
                  "imagePullPolicy": "Always"
                }
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLBackup",
              "metadata": {
                "name": "backup1",
                "finalizers": [
                  "percona.com/delete-backup"
                ]
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "storageName": "minio"
              }
            },
            {
              "apiVersion": "ps.percona.com/v1",
              "kind": "PerconaServerMySQLRestore",
              "metadata": {
                "name": "restore1"
              },
              "spec": {
                "clusterName": "ps-cluster1",
                "backupName": "backup1"
              }
            }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: docker.io/percona/percona-server-mysql-operator:1.0.0
          createdAt: "2025-11-13T08:00:00.000Z"
          description: Percona Operator for MySQL based on Percona Server for MySQL
            automates the creation and management of highly available, enterprise-ready
            MySQL database clusters on Kubernetes.
          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"
          repository: https://github.com/percona/percona-server-mysql-operator
          support: Percona
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PerconaServerMySQLBackup is the Schema for the perconaservermysqlbackups
              API
            displayName: Percona Server MySQL Backup
            kind: PerconaServerMySQLBackup
            name: perconaservermysqlbackups.ps.percona.com
            version: v1
          - description: PerconaServerMySQLRestore is the Schema for the perconaservermysqlrestores
              API
            displayName: Percona Server MySQL Restore
            kind: PerconaServerMySQLRestore
            name: perconaservermysqlrestores.ps.percona.com
            version: v1
          - description: PerconaServerMySQL is the Schema for the perconaservermysqls
              API
            displayName: Percona Server MySQL
            kind: PerconaServerMySQL
            name: perconaservermysqls.ps.percona.com
            version: v1
        description: |2+

          ## Percona is Cloud Native

          Percona Operator for MySQL based on Percona Server for MySQL follows our best practices for deployment and configuration of highly-available, fault-tolerant MySQL instances in a Kubernetes-based environment on-premises or in the cloud. It provides the following capabilities:
          * Deploy group replication MySQL clusters with HAProxy or MySQL Router
          * Deploy asynchronous replication MySQL clusters with Orchestrator and HAProxy
          * Expose clusters with regular Kubernetes Services
          * Monitor the cluster with Percona Monitoring and Management
          * Customize MySQL configuration
          * Manage system user passwords

        displayName: Percona Operator for MySQL based on Percona Server for MySQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mysql
        - percona
        - database
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://docs.percona.com/percona-operator-for-mysql/ps/
        - name: Github
          url: https://github.com/percona/percona-server-mysql-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
        relatedImages:
        - quay.io/community-operator-pipeline-prod/percona-server-mysql-operator@sha256:b0e67a16cd6ba5e3e6ec109316b013ca01ede4149661ba48ef549f80b17a0504
        - docker.io/percona/percona-server-mysql-operator:1.0.0
        version: 1.0.0
      entries:
      - name: percona-server-mysql-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: percona-server-mysql-operator
    provider:
      name: Percona
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Foundation Model Stack
      provider-url: ""
    name: multi-nic-cni-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multi-nic-cni-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nic-cni-operator-multi-nicd",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.3.1",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nicd"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.3.1",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "multi-nic-cni-operator-highspeed",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "highspeed"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-node-1",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "node-1"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3-192.168.0.0-26"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "ipvlanl3"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.3.1
          createdAt: "2025-11-04T05:18:29Z"
          operators.operatorframework.io/builder: operator-sdk-v1.41.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CIDR is the Schema for the cidrs API
            displayName: CIDR
            kind: CIDR
            name: cidrs.multinic.fms.io
            version: v1
          - description: Config is the Schema for the configs API
            displayName: Config
            kind: Config
            name: configs.multinic.fms.io
            version: v1
          - description: DeviceClass is the Schema for the deviceclasses API
            displayName: Device Class
            kind: DeviceClass
            name: deviceclasses.multinic.fms.io
            version: v1
          - description: HostInterface is the Schema for the hostinterfaces API
            displayName: Host Interface
            kind: HostInterface
            name: hostinterfaces.multinic.fms.io
            version: v1
          - description: IPPool is the Schema for the ippools API
            displayName: IPPool
            kind: IPPool
            name: ippools.multinic.fms.io
            version: v1
          - description: MultiNicNetwork is the Schema for the multinicnetworks API
            displayName: Multi Nic Network
            kind: MultiNicNetwork
            name: multinicnetworks.multinic.fms.io
            version: v1
        description: "Multi-NIC CNI Operator helps to attaching secondary network
          interfaces that is linked to \ndifferent network interfaces on host (NIC)
          to pod provides benefits of network segmentation \nand top-up network bandwidth
          in the containerization system.\n\nMulti-NIC CNI is the CNI plugin operating
          on top of Multus CNI. \nHowever, instead of defining and handling each secondary
          network interface one by one, \nthis CNI automatically discovers all available
          secondary interfaces and handles them as a NIC pool. \nWith this manner,
          it can provide the following benefits.\n\ni) Common secondary network definition:
          User can manage only one network definition for \n   multiple secondary
          interfaces with a common CNI main plugin such as ipvlan, macvlan, and sr-iov.\n\nii)
          Common NAT-bypassing network solution: All secondary NICs on each host can
          be assigned \n    with non-conflict CIDR and non-conflict L3 routing configuration
          that can omit an overlay networking overhead. \n    Particularyly, the CNI
          is built-in with L3 IPVLAN solution composing of the following functionalities.\n\n
          \   1. Interface-host-devision CIDR Computation: compute allocating CIDR
          range for each host and each interface \n       from a single global subnet
          with the number of bits for hosts and for interface.\n    2. L3 Host Route
          Configuration: configure L3 routes (next hop via dev) in host route table
          according to the computed CIDR.\n    3. Distributed IP Allocation Management:
          manage IP allocation/deallocation distributedly via the communication \n
          \      between CNI program and daemon at each host.\n\niii) Policy-based
          secondary network attachment: Instead of statically set the desired \n     host's
          master interface name one by one, user can define a policy on attaching
          multiple secondary network \n     interfaces such as specifying only the
          number of desired interfaces, filtering only highspeed NICs.\n\n## Instructions\n\nPlease
          check the [User Guide](https://foundation-model-stack.github.io/multi-nic-cni/user_guide/)"
        displayName: multi-nic-cni-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multi-nic
        - cni
        - network
        links:
        - name: Multi-NIC CNI Operator
          url: https://github.com/foundation-model-stack/multi-nic-cni
        maintainers:
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: minzhang@redhat.com
          name: Min Zhang
        - email: ebendror@redhat.com
          name: Eran Ben Dror
        maturity: alpha
        provider:
          name: Foundation Model Stack
        relatedImages:
        - ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.3.1
        - quay.io/community-operator-pipeline-prod/multi-nic-cni-operator:1.3.1
        version: 1.3.1
      entries:
      - name: multi-nic-cni-operator.v1.3.1
        version: 1.3.1
      - name: multi-nic-cni-operator.v1.3.0
        version: 1.3.0
      - name: multi-nic-cni-operator.v1.2.9
        version: 1.2.9
      - name: multi-nic-cni-operator.v1.2.8
        version: 1.2.8
      - name: multi-nic-cni-operator.v1.2.2
        version: 1.2.2
      - name: multi-nic-cni-operator.v1.2.1
        version: 1.2.1
      - name: multi-nic-cni-operator.v1.0.2
        version: 1.0.2
      name: alpha
    - currentCSV: multi-nic-cni-operator.v1.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nic-cni-operator-multi-nicd",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.7",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nicd"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.7",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "multi-nic-cni-operator-highspeed",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "highspeed"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-node-1",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "node-1"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3-192.168.0.0-26"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "ipvlanl3"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.7
          createdAt: "2025-05-09T12:45:12Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CIDR is the Schema for the cidrs API
            displayName: CIDR
            kind: CIDR
            name: cidrs.multinic.fms.io
            version: v1
          - description: Config is the Schema for the configs API
            displayName: Config
            kind: Config
            name: configs.multinic.fms.io
            version: v1
          - description: DeviceClass is the Schema for the deviceclasses API
            displayName: Device Class
            kind: DeviceClass
            name: deviceclasses.multinic.fms.io
            version: v1
          - description: HostInterface is the Schema for the hostinterfaces API
            displayName: Host Interface
            kind: HostInterface
            name: hostinterfaces.multinic.fms.io
            version: v1
          - description: IPPool is the Schema for the ippools API
            displayName: IPPool
            kind: IPPool
            name: ippools.multinic.fms.io
            version: v1
          - description: MultiNicNetwork is the Schema for the multinicnetworks API
            displayName: Multi Nic Network
            kind: MultiNicNetwork
            name: multinicnetworks.multinic.fms.io
            version: v1
        description: "Multi-NIC CNI Operator helps to attaching secondary network
          interfaces that is linked to \ndifferent network interfaces on host (NIC)
          to pod provides benefits of network segmentation \nand top-up network bandwidth
          in the containerization system.\n\nMulti-NIC CNI is the CNI plugin operating
          on top of Multus CNI. \nHowever, instead of defining and handling each secondary
          network interface one by one, \nthis CNI automatically discovers all available
          secondary interfaces and handles them as a NIC pool. \nWith this manner,
          it can provide the following benefits.\n\ni) Common secondary network definition:
          User can manage only one network definition for \n   multiple secondary
          interfaces with a common CNI main plugin such as ipvlan, macvlan, and sr-iov.\n\nii)
          Common NAT-bypassing network solution: All secondary NICs on each host can
          be assigned \n    with non-conflict CIDR and non-conflict L3 routing configuration
          that can omit an overlay networking overhead. \n    Particularyly, the CNI
          is built-in with L3 IPVLAN solution composing of the following functionalities.\n\n
          \   1. Interface-host-devision CIDR Computation: compute allocating CIDR
          range for each host and each interface \n       from a single global subnet
          with the number of bits for hosts and for interface.\n    2. L3 Host Route
          Configuration: configure L3 routes (next hop via dev) in host route table
          according to the computed CIDR.\n    3. Distributed IP Allocation Management:
          manage IP allocation/deallocation distributedly via the communication \n
          \      between CNI program and daemon at each host.\n\niii) Policy-based
          secondary network attachment: Instead of statically set the desired \n     host's
          master interface name one by one, user can define a policy on attaching
          multiple secondary network \n     interfaces such as specifying only the
          number of desired interfaces, filtering only highspeed NICs.\n\n## Instructions\n\nPlease
          check the [User Guide](https://foundation-model-stack.github.io/multi-nic-cni/user_guide/)"
        displayName: multi-nic-cni-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multi-nic
        - cni
        - network
        links:
        - name: Multi-NIC CNI Operator
          url: https://github.com/foundation-model-stack/multi-nic-cni
        maintainers:
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: minzhang@redhat.com
          name: Min Zhang
        - email: ebendror@redhat.com
          name: Eran Ben Dror
        maturity: alpha
        provider:
          name: Foundation Model Stack
        relatedImages:
        - ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.7
        - quay.io/community-operator-pipeline-prod/multi-nic-cni-operator:1.2.7
        version: 1.2.7
      entries:
      - name: multi-nic-cni-operator.v1.2.7
        version: 1.2.7
      - name: multi-nic-cni-operator.v1.2.3
        version: 1.2.3
      - name: multi-nic-cni-operator.v1.2.0
        version: 1.2.0
      - name: multi-nic-cni-operator.v1.1.0
        version: 1.1.0
      name: beta
    - currentCSV: multi-nic-cni-operator.v1.2.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "CIDR",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3"
                },
                "spec": {
                  "cidr": [
                    {
                      "hosts": [
                        {
                          "hostIP": "10.244.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                          "podCIDR": "192.168.0.0/26"
                        },
                        {
                          "hostIP": "10.244.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth1",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.0.64-26",
                          "podCIDR": "192.168.0.64/26"
                        }
                      ],
                      "interfaceIndex": 0,
                      "netAddress": "10.244.0.0/16",
                      "vlanCIDR": "192.168.0.0/18"
                    },
                    {
                      "hosts": [
                        {
                          "hostIP": "10.0.0.168",
                          "hostIndex": 0,
                          "hostName": "node-1",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.0-26",
                          "podCIDR": "192.168.64.0/26"
                        },
                        {
                          "hostIP": "10.0.0.167",
                          "hostIndex": 1,
                          "hostName": "node-2",
                          "interfaceName": "eth2",
                          "ippool": "multi-nic-cni-operator-ipvlanl3-192.168.64.64-26",
                          "podCIDR": "192.168.64.64/26"
                        }
                      ],
                      "interfaceIndex": 1,
                      "netAddress": "10.0.0.0/16",
                      "vlanCIDR": "192.168.64.0/18"
                    }
                  ],
                  "config": {
                    "hostBlock": 8,
                    "interfaceBlock": 2,
                    "masterNets": [],
                    "name": "multi-nic-cni-operator-ipvlanl3",
                    "subnet": "192.168.0.0/16",
                    "type": "ipvlan",
                    "vlanMode": "l3"
                  }
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nic-cni-operator-multi-nicd",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.6",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "Config",
                "metadata": {
                  "annotations": {
                    "note": "The resource with default settings will be auto-created by multi-nic-cni-operator-controller-manager.\nPlease modify if need.\n"
                  },
                  "name": "multi-nicd"
                },
                "spec": {
                  "addRoutePath": "/addl3",
                  "cniType": "multi-nic",
                  "contextTimeoutMinutes": 2,
                  "daemon": {
                    "env": [
                      {
                        "name": "DAEMON_PORT",
                        "value": "11000"
                      },
                      {
                        "name": "RT_TABLE_PATH",
                        "value": "/opt/rt_tables"
                      }
                    ],
                    "image": "ghcr.io/foundation-model-stack/multi-nic-cni-daemon:v1.2.6",
                    "mounts": [
                      {
                        "hostpath": "/var/lib/cni/bin",
                        "name": "cnibin",
                        "podpath": "/host/opt/cni/bin"
                      },
                      {
                        "hostpath": "/var/lib/kubelet/device-plugins",
                        "name": "device-plugin",
                        "podpath": "/var/lib/kubelet/device-plugins"
                      },
                      {
                        "hostpath": "/etc/iproute2/rt_tables",
                        "name": "rt-tables",
                        "podpath": "/opt/rt_tables"
                      }
                    ],
                    "port": 11000,
                    "resources": {
                      "requests": {
                        "cpu": "100m",
                        "memory": "50Mi"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "deleteRoutePath": "/deletel3",
                  "getInterfacePath": "/interface",
                  "ipamType": "multi-nic-ipam",
                  "joinPath": "/join",
                  "logLevel": 4,
                  "longReconcileMinutes": 10,
                  "normalReconcileMinutes": 1,
                  "urgentReconcileSeconds": 5
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "multi-nic-cni-operator-highspeed",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "DeviceClass",
                "metadata": {
                  "name": "highspeed"
                },
                "spec": {
                  "ids": [
                    {
                      "products": [
                        "1019",
                        "101d"
                      ],
                      "vendor": "15b3"
                    },
                    {
                      "products": [
                        "efa0",
                        "efa1"
                      ],
                      "vendor": "1d0f"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-node-1",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "HostInterface",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "node-1"
                },
                "spec": {
                  "hostName": "node-1",
                  "interfaces": [
                    {
                      "hostIP": "10.0.0.168",
                      "interfaceName": "eth1",
                      "netAddress": "10.0.0.0/16",
                      "pciAddress": "0000:00:04.0",
                      "product": "1000",
                      "vendor": "1af4"
                    },
                    {
                      "hostIP": "10.1.0.168",
                      "interfaceName": "eth2",
                      "netAddress": "10.1.0.0/16",
                      "pciAddress": "0000:00:05.0",
                      "product": "1000",
                      "vendor": "1af4"
                    }
                  ]
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "multi-nic-cni-operator-ipvlanl3-192.168.0.0-26",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "IPPool",
                "metadata": {
                  "annotations": {
                    "note": "This resource will be auto-generated and controlled by multi-nic-cni-operator-controller-manager.\nDo not create/modify.\n"
                  },
                  "name": "ipvlanl3-192.168.0.0-26"
                },
                "spec": {
                  "allocations": [],
                  "excludes": [],
                  "hostName": "node-1",
                  "interfaceName": "eth1",
                  "netAttachDef": "multi-nic-cni-operator-ipvlanl3",
                  "podCIDR": "192.168.0.0/26",
                  "vlanCIDR": "192.168.0.0/18"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "multi-nic-cni-operator-ipvlanl3",
                  "namespace": "multi-nic-cni-operator-system"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              },
              {
                "apiVersion": "multinic.fms.io/v1",
                "kind": "MultiNicNetwork",
                "metadata": {
                  "name": "ipvlanl3"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"multi-nic-ipam\",\n  \"hostBlock\": 8, \n  \"interfaceBlock\": 2,\n  \"vlanMode\": \"l3\"\n}\n",
                  "multiNICIPAM": true,
                  "plugin": {
                    "args": {
                      "mode": "l3"
                    },
                    "cniVersion": "0.3.0",
                    "type": "ipvlan"
                  },
                  "subnet": "192.168.0.0/16"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.6
          createdAt: "2025-03-24T14:49:54Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CIDR is the Schema for the cidrs API
            displayName: CIDR
            kind: CIDR
            name: cidrs.multinic.fms.io
            version: v1
          - description: Config is the Schema for the configs API
            displayName: Config
            kind: Config
            name: configs.multinic.fms.io
            version: v1
          - description: DeviceClass is the Schema for the deviceclasses API
            displayName: Device Class
            kind: DeviceClass
            name: deviceclasses.multinic.fms.io
            version: v1
          - description: HostInterface is the Schema for the hostinterfaces API
            displayName: Host Interface
            kind: HostInterface
            name: hostinterfaces.multinic.fms.io
            version: v1
          - description: IPPool is the Schema for the ippools API
            displayName: IPPool
            kind: IPPool
            name: ippools.multinic.fms.io
            version: v1
          - description: MultiNicNetwork is the Schema for the multinicnetworks API
            displayName: Multi Nic Network
            kind: MultiNicNetwork
            name: multinicnetworks.multinic.fms.io
            version: v1
        description: "Multi-NIC CNI Operator helps to attaching secondary network
          interfaces that is linked to \ndifferent network interfaces on host (NIC)
          to pod provides benefits of network segmentation \nand top-up network bandwidth
          in the containerization system.\n\nMulti-NIC CNI is the CNI plugin operating
          on top of Multus CNI. \nHowever, instead of defining and handling each secondary
          network interface one by one, \nthis CNI automatically discovers all available
          secondary interfaces and handles them as a NIC pool. \nWith this manner,
          it can provide the following benefits.\n\ni) Common secondary network definition:
          User can manage only one network definition for \n   multiple secondary
          interfaces with a common CNI main plugin such as ipvlan, macvlan, and sr-iov.\n\nii)
          Common NAT-bypassing network solution: All secondary NICs on each host can
          be assigned \n    with non-conflict CIDR and non-conflict L3 routing configuration
          that can omit an overlay networking overhead. \n    Particularyly, the CNI
          is built-in with L3 IPVLAN solution composing of the following functionalities.\n\n
          \   1. Interface-host-devision CIDR Computation: compute allocating CIDR
          range for each host and each interface \n       from a single global subnet
          with the number of bits for hosts and for interface.\n    2. L3 Host Route
          Configuration: configure L3 routes (next hop via dev) in host route table
          according to the computed CIDR.\n    3. Distributed IP Allocation Management:
          manage IP allocation/deallocation distributedly via the communication \n
          \      between CNI program and daemon at each host.\n\niii) Policy-based
          secondary network attachment: Instead of statically set the desired \n     host's
          master interface name one by one, user can define a policy on attaching
          multiple secondary network \n     interfaces such as specifying only the
          number of desired interfaces, filtering only highspeed NICs.\n\n## Instructions\n\nPlease
          check the [User Guide](https://foundation-model-stack.github.io/multi-nic-cni/user_guide/)"
        displayName: multi-nic-cni-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - multi-nic
        - cni
        - network
        links:
        - name: Multi-NIC CNI Operator
          url: https://github.com/foundation-model-stack/multi-nic-cni
        maintainers:
        - email: sunyanan.choochotkaew1@ibm.com
          name: Sunyanan Choochotkaew
        - email: chiba@jp.ibm.com
          name: Tatsuhiro Chiba
        - email: minzhang@redhat.com
          name: Min Zhang
        - email: ebendror@redhat.com
          name: Eran Ben Dror
        maturity: alpha
        provider:
          name: Foundation Model Stack
        relatedImages:
        - ghcr.io/foundation-model-stack/multi-nic-cni-controller:v1.2.6
        - quay.io/community-operator-pipeline-prod/multi-nic-cni-operator:1.2.6
        version: 1.2.6
      entries:
      - name: multi-nic-cni-operator.v1.2.6
        version: 1.2.6
      - name: multi-nic-cni-operator.v1.2.5
        version: 1.2.5
      - name: multi-nic-cni-operator.v1.2.4
        version: 1.2.4
      - name: multi-nic-cni-operator.v1.0.5
        version: 1.0.5
      - name: multi-nic-cni-operator.v1.0.4
        version: 1.0.4
      - name: multi-nic-cni-operator.v1.0.3
        version: 1.0.3
      name: stable
    defaultChannel: stable
    packageName: multi-nic-cni-operator
    provider:
      name: Foundation Model Stack
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sns-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sns-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sns.services.k8s.aws/v1alpha1",
                "kind": "PlatformApplication",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sns.services.k8s.aws/v1alpha1",
                "kind": "PlatformEndpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sns.services.k8s.aws/v1alpha1",
                "kind": "Topic",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sns-controller:1.3.0
          createdAt: "2025-11-29T04:10:34Z"
          description: AWS SNS controller is a service controller for managing SNS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PlatformApplication represents the state of an AWS sns PlatformApplication
              resource.
            displayName: PlatformApplication
            kind: PlatformApplication
            name: platformapplications.sns.services.k8s.aws
            version: v1alpha1
          - description: PlatformEndpoint represents the state of an AWS sns PlatformEndpoint
              resource.
            displayName: PlatformEndpoint
            kind: PlatformEndpoint
            name: platformendpoints.sns.services.k8s.aws
            version: v1alpha1
          - description: Subscription represents the state of an AWS sns Subscription
              resource.
            displayName: Subscription
            kind: Subscription
            name: subscriptions.sns.services.k8s.aws
            version: v1alpha1
          - description: Topic represents the state of an AWS sns Topic resource.
            displayName: Topic
            kind: Topic
            name: topics.sns.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Simple Notification Service (SNS) resources in AWS from within your Kubernetes cluster.

          **About Amazon SNS**

          Amazon Simple Notification Service (Amazon SNS) is a managed service that provides message delivery from publishers to subscribers (also known as producers and consumers). Publishers communicate asynchronously with subscribers by sending messages to a topic, which is a logical access point and communication channel. Clients can subscribe to the SNS topic and receive published messages using a supported endpoint type, such as Amazon Kinesis Data Firehose, Amazon SQS, AWS Lambda, HTTP, email, mobile push notifications, and mobile text messages (SMS).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SNS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sns
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SNS Developer Resources
          url: https://aws.amazon.com/sns/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: sns maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sns-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-sns-controller@sha256:49d4f5f5a7747cdbdae724153d6afce7fdea9a340707e6c6aa0e946bd9295d79
        version: 1.3.0
      entries:
      - name: ack-sns-controller.v1.3.0
        version: 1.3.0
      - name: ack-sns-controller.v1.2.3
        version: 1.2.3
      - name: ack-sns-controller.v1.2.2
        version: 1.2.2
      - name: ack-sns-controller.v1.2.1
        version: 1.2.1
      - name: ack-sns-controller.v1.2.0
        version: 1.2.0
      - name: ack-sns-controller.v1.1.16
        version: 1.1.16
      name: alpha
    defaultChannel: alpha
    packageName: ack-sns-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Microsoft
      provider-url: ""
    name: azure-service-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: azure-service-operator.v1.0.59040
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "APIMgmtAPI",
                "metadata": {
                  "name": "aso-apimgmtapi-sample"
                },
                "spec": {
                  "apiId": "apiId0",
                  "apiService": "apimservice-sample",
                  "location": "westus",
                  "properties": {
                    "apiVersionDescription": "API version description",
                    "description": "API description",
                    "displayName": "aso-apimgmtapi-sample",
                    "isCurrent": true,
                    "isOnline": true,
                    "path": "/api/test",
                    "protocols": [
                      "http"
                    ],
                    "subscriptionRequired": false
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "ApimService",
                "metadata": {
                  "name": "apimservice-sample"
                },
                "spec": {
                  "appInsightsName": "appinsights-sample-wmm",
                  "appInsightsResourceGroup": "resourcegroup-azure-operators-wmm",
                  "location": "westus",
                  "publisherEmail": {
                    "Your email": ""
                  },
                  "publisherName": {
                    "Your name": ""
                  },
                  "resourceGroup": "resourcegroup-azure-operators",
                  "tier": "premium",
                  "vnetName": "virtualnetwork-sample",
                  "vnetResourceGroup": "resourcegroup-azure-operators",
                  "vnetSubnetName": "test1",
                  "vnetType": "none"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AppInsights",
                "metadata": {
                  "name": "appinsights-sample"
                },
                "spec": {
                  "applicationType": "other",
                  "kind": "other",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AppInsightsApiKey",
                "metadata": {
                  "name": "key-sample"
                },
                "spec": {
                  "appInsights": "appinsights-sample",
                  "authSDKControlChannel": true,
                  "readTelemetry": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "writeAnnotations": true
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureLoadBalancer",
                "metadata": {
                  "name": "lb-sample-01"
                },
                "spec": {
                  "backendAddressPoolName": "test",
                  "backendPort": 3000,
                  "frontendPortRangeEnd": 2000,
                  "frontendPortRangeStart": 1001,
                  "inboundNatPoolName": "test",
                  "location": "SouthCentralUS",
                  "publicIPAddressName": "lb-pip-sample-01",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureNetworkInterface",
                "metadata": {
                  "name": "nic-sample-01"
                },
                "spec": {
                  "location": "SouthCentralUS",
                  "publicIPAddressName": "nic-pip-sample-01",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnetName": "test1",
                  "vnetName": "vnet-sample-01"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureNetworkInterface",
                "metadata": {
                  "name": "nic-sample-02"
                },
                "spec": {
                  "location": "SouthCentralUS",
                  "publicIPAddressName": "nic-pip-sample-02",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnetName": "test1",
                  "vnetName": "vnet-sample-02"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzurePublicIPAddress",
                "metadata": {
                  "name": "lb-pip-sample-01"
                },
                "spec": {
                  "idleTimeoutInMinutes": 10,
                  "location": "SouthCentralUS",
                  "publicIPAddressVersion": "IPv4",
                  "publicIPAllocationMethod": "Static",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "skuName": "Basic"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzurePublicIPAddress",
                "metadata": {
                  "name": "nic-pip-sample-01"
                },
                "spec": {
                  "idleTimeoutInMinutes": 10,
                  "location": "SouthCentralUS",
                  "publicIPAddressVersion": "IPv4",
                  "publicIPAllocationMethod": "Static",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "skuName": "Basic"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzurePublicIPAddress",
                "metadata": {
                  "name": "nic-pip-sample-02"
                },
                "spec": {
                  "idleTimeoutInMinutes": 10,
                  "location": "SouthCentralUS",
                  "publicIPAddressVersion": "IPv4",
                  "publicIPAllocationMethod": "Static",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "skuName": "Basic"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSQLManagedUser",
                "metadata": {
                  "name": "azuresqlmanageduser-sample"
                },
                "spec": {
                  "dbName": "azuresqldatabase-sample",
                  "managedIdentityClientId": null,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "db_owner"
                  ],
                  "server": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSQLUser",
                "metadata": {
                  "name": "sqluser-sample"
                },
                "spec": {
                  "dbName": "azuresqldatabase-sample1",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "db_owner"
                  ],
                  "server": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSQLVNetRule",
                "metadata": {
                  "name": "azuresqlvnetrule-sample"
                },
                "spec": {
                  "ignoreMissingServiceEndpoint": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "subnetName": "test1",
                  "vNetName": "virtualnetwork-sample",
                  "vNetResourceGroup": "resourcegroup-vnet",
                  "vNetSubscriptionID": {
                    "vnet_subscription_id": ""
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlAction",
                "metadata": {
                  "name": "azuresqlaction-sample"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverName": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlDatabase",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "azuresqldatabase-sample1"
                },
                "spec": {
                  "edition": 0,
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlDatabase",
                "metadata": {
                  "labels": {
                    "tag1": "valueA",
                    "tag2": "valueB"
                  },
                  "name": "azuresqldatabase-sample3"
                },
                "spec": {
                  "edition": 0,
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample777"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlFailoverGroup",
                "metadata": {
                  "name": "azuresqlfailovergroup-sample"
                },
                "spec": {
                  "databaselist": [
                    "azuresqldatabase-sample1",
                    "azuresqldatabase-sample2"
                  ],
                  "failovergraceperiod": 30,
                  "failoverpolicy": "Automatic",
                  "location": "eastus",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "secondaryserver": "sqlserver-samplesec",
                  "secondaryserverresourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-samplepri"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlFirewallRule",
                "metadata": {
                  "name": "sqlf-allowazuresvcaccess"
                },
                "spec": {
                  "endipaddress": "0.0.0.0",
                  "resourcegroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "startipaddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "sqlserver-sample-777"
                },
                "spec": {
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureSqlServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "sqlserver-sample777"
                },
                "spec": {
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVMScaleSet",
                "metadata": {
                  "name": "vmss-sample-01"
                },
                "spec": {
                  "adminUserName": "azureuser7",
                  "backendAddressPoolName": "test",
                  "capacity": 3,
                  "inboundNatPoolName": "test",
                  "loadBalancerName": "lb-sample-01",
                  "location": "SouthCentralUS",
                  "osType": "Linux",
                  "platformImageURN": "Canonical:UbuntuServer:16.04-LTS:latest",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sshPublicKeyData": "{ssh public key}",
                  "subnetName": "test1",
                  "virtualNetworkName": "vnet-sample-01",
                  "vmSize": "Standard_DS1_v2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVirtualMachine",
                "metadata": {
                  "name": "hpfvm1"
                },
                "spec": {
                  "adminUserName": "azureuser",
                  "location": "SouthCentralUS",
                  "networkInterfaceName": "nic-sample-02",
                  "osType": "Linux",
                  "platformImageURN": "Canonical:UbuntuServer:16.04-LTS:latest",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sshPublicKeyData": {
                    "ssh key": ""
                  },
                  "vmSize": "Standard_DS1_v2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVirtualMachine",
                "metadata": {
                  "name": "hpfvm20"
                },
                "spec": {
                  "adminUserName": "azureuser",
                  "location": "SouthCentralUS",
                  "networkInterfaceName": "nic-sample-01",
                  "osType": "Linux",
                  "platformImageURN": "Canonical:UbuntuServer:16.04-LTS:latest",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sshPublicKeyData": "{ssh public key}",
                  "vmSize": "Standard_DS1_v2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "AzureVirtualMachineExtension",
                "metadata": {
                  "name": "vmext20a"
                },
                "spec": {
                  "autoUpgradeMinorVersion": true,
                  "forceUpdateTag": "Test2",
                  "location": "SouthCentralUS",
                  "protectedSettings": "{}",
                  "publisher": "Microsoft.Azure.Extensions",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "settings": "{\"commandToExecute\":\"echo 'hello, world'\"}",
                  "typeHandlerVersion": "2.1",
                  "typeName": "CustomScript",
                  "vmName": "vm20"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "BlobContainer",
                "metadata": {
                  "name": "blobcontainer-sample"
                },
                "spec": {
                  "accesslevel": "Container",
                  "accountname": "storageaccountsample777",
                  "location": "westus",
                  "resourcegroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "ConsumerGroup",
                "metadata": {
                  "name": "consumergroup-sample-1"
                },
                "spec": {
                  "eventHub": "eventhub-sample-1",
                  "namespace": "eventhubnamespace-sample-1",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "CosmosDB",
                "metadata": {
                  "name": "cosmosdb-sample-1"
                },
                "spec": {
                  "kind": "GlobalDocumentDB",
                  "location": "westus",
                  "properties": {
                    "databaseAccountOfferType": "Standard",
                    "isVirtualNetworkFilterEnabled": true
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "CosmosDB",
                "metadata": {
                  "labels": {
                    "CosmosAccountType": "Production"
                  },
                  "name": "cosmosdb-sample-2"
                },
                "spec": {
                  "ipRules": [
                    "104.42.195.92,40.76.54.131,52.176.6.30,52.169.50.45,52.187.184.26"
                  ],
                  "kind": "GlobalDocumentDB",
                  "location": "eastus",
                  "locations": [
                    {
                      "failoverPriority": 0,
                      "isZoneRedundant": true,
                      "locationName": "eastus"
                    },
                    {
                      "failoverPriority": 1,
                      "locationName": "westus"
                    }
                  ],
                  "properties": {
                    "databaseAccountOfferType": "Standard",
                    "enableMultipleWriteLocations": true
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "Eventhub",
                "metadata": {
                  "name": "eventhub-sample-1"
                },
                "spec": {
                  "authorizationRule": {
                    "name": "RootManageSharedAccessKey",
                    "rights": [
                      "Listen",
                      "Manage",
                      "Send"
                    ]
                  },
                  "location": "westus",
                  "namespace": "eventhubnamespace-sample-1",
                  "properties": {
                    "messageRetentionInDays": 7,
                    "partitionCount": 2
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "Eventhub",
                "metadata": {
                  "name": "eventhub-sample-2307-10-capture"
                },
                "spec": {
                  "authorizationRule": {
                    "name": "RootManageSharedAccessKey",
                    "rights": [
                      "Listen",
                      "Manage",
                      "Send"
                    ]
                  },
                  "location": "westus",
                  "namespace": "eventhubnamespace-sample-1",
                  "properties": {
                    "captureDescription": {
                      "destination": {
                        "archiveNameFormat": "{Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}",
                        "blobContainer": "capturecontainer",
                        "name": "EventHubArchive.AzureBlockBlob",
                        "storageAccount": {
                          "accountName": "storageaccountauv1",
                          "resourceGroup": "my-resource-group"
                        }
                      },
                      "enabled": true,
                      "intervalInSeconds": 120,
                      "sizeLimitInBytes": 524288000
                    },
                    "messageRetentionInDays": 7,
                    "partitionCount": 2
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "EventhubNamespace",
                "metadata": {
                  "name": "eventhubnamespace-sample-1"
                },
                "spec": {
                  "location": "westus",
                  "properties": {
                    "isAutoInflateEnabled": false,
                    "kafkaEnabled": false,
                    "maximumThroughputUnits": 0
                  },
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sku": {
                    "capacity": 1,
                    "name": "Standard",
                    "tier": "Standard"
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "KeyVault",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "keyvaultsample123"
                },
                "spec": {
                  "accessPolicies": [
                    {
                      "objectID": "\u003cobjectID\u003e",
                      "permissions": {
                        "certificates": [
                          "list",
                          "get"
                        ],
                        "keys": [
                          "list",
                          "get"
                        ],
                        "secrets": [
                          "list",
                          "get"
                        ],
                        "storage": [
                          "list",
                          "get"
                        ]
                      },
                      "tenantID": "\u003ctenantID\u003e"
                    }
                  ],
                  "enableSoftDelete": false,
                  "location": "westus",
                  "networkPolicies": {
                    "bypass": "AzureServices",
                    "defaultAction": "Allow",
                    "ipRules": [
                      "172.16.0.0/24",
                      "172.16.1.0/24"
                    ],
                    "virtualNetworkRules": [
                      "/subscriptions/\u003csubid\u003e/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1",
                      "/subscriptions/\u003csubid\u003e/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet2"
                    ]
                  },
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sku": {
                    "name": "standard"
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "KeyVault",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "keyvaultsample123-simple"
                },
                "spec": {
                  "enableSoftDelete": false,
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "KeyVaultKey",
                "metadata": {
                  "name": "keyvaultkey-sample"
                },
                "spec": {
                  "keySize": 4096,
                  "keyVault": "keyvaultsample123",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "type": "RSA"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLDatabase",
                "metadata": {
                  "name": "mysqldatabase-sample"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLDatabase",
                "metadata": {
                  "name": "mysqldatabase-sample2"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLFirewallRule",
                "metadata": {
                  "name": "mysqlfirewallrule-sample"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLFirewallRule",
                "metadata": {
                  "name": "mysqlfirewallrule-sample2"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample2",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLServer",
                "metadata": {
                  "name": "mysqlserver-replica"
                },
                "spec": {
                  "createMode": "Replica",
                  "location": "eastus2",
                  "replicaProperties": {
                    "sourceServerId": "/subscriptions/{SUBID}/resourceGroups/resourcegroup-azure-operators/providers/Microsoft.DBforMySQL/servers/mysqlserver-sample"
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLServer",
                "metadata": {
                  "name": "mysqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus2",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "8.0",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLServer",
                "metadata": {
                  "name": "mysqlserver-sample2"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus2",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "8.0",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLUser",
                "metadata": {
                  "name": "mysqluser-sample"
                },
                "spec": {
                  "dbName": "mysqldatabase-sample",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "SELECT"
                  ],
                  "server": "mysqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "MySQLVNetRule",
                "metadata": {
                  "name": "mysqlvnetrule-sample"
                },
                "spec": {
                  "ignoreMissingServiceEndpoint": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "mysqlserver-sample",
                  "subnetName": "test1",
                  "vNetName": "virtualnetwork-sample",
                  "vNetResourceGroup": "resourcegroup-vnet",
                  "vNetSubscriptionID": {
                    "vnet_subscription_id": ""
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLDatabase",
                "metadata": {
                  "name": "postgresqldatabase-sample"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLDatabase",
                "metadata": {
                  "name": "postgresqldatabase-sample2"
                },
                "spec": {
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample2"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLFirewallRule",
                "metadata": {
                  "name": "postgresqlfirewallrule-sample"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLFirewallRule",
                "metadata": {
                  "name": "postgresqlfirewallrule-sample2"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample2",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "name": "postgresqlserver-replica3"
                },
                "spec": {
                  "createMode": "Replica",
                  "location": "eastus",
                  "replicaProperties": {
                    "sourceServerId": "/subscriptions/{subscription ID}/resourceGroups/resourcegroup-azure-operators/providers/Microsoft.DBforPostgreSQL/servers/postgresqlserver-sample"
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "name": "postgresqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "10",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "name": "postgresqlserver-sample2"
                },
                "spec": {
                  "location": "southcentralus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "10",
                  "sku": {
                    "capacity": 2,
                    "family": "Gen5",
                    "name": "B_Gen5_2",
                    "size": "51200",
                    "tier": "Basic"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLUser",
                "metadata": {
                  "name": "psqluser-sample"
                },
                "spec": {
                  "dbName": "postgresqldatabase-sample",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "roles": [
                    "azure_pg_admin"
                  ],
                  "server": "postgresqlserver-sample"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "PostgreSQLVNetRule",
                "metadata": {
                  "name": "postgresqlvnetrule-sample1"
                },
                "spec": {
                  "ignoreMissingServiceEndpoint": true,
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "postgresqlserver-sample",
                  "subnetName": "test1",
                  "vNetName": "virtualnetwork-sample",
                  "vNetResourceGroup": "resourcegroup-azure-operators",
                  "vNetSubscriptionID": {
                    "vnet_subscription_id": ""
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "RedisCache",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "rediscache-sample-1"
                },
                "spec": {
                  "location": "westus",
                  "properties": {
                    "enableNonSslPort": true,
                    "sku": {
                      "capacity": 1,
                      "family": "C",
                      "name": "Basic"
                    }
                  },
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "RedisCacheAction",
                "metadata": {
                  "name": "rediscacheaction-sample-1"
                },
                "spec": {
                  "actionName": "rollallkeys",
                  "cacheName": "rediscache-sample-1",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "RedisCacheFirewallRule",
                "metadata": {
                  "name": "rediscachefirewallrule"
                },
                "spec": {
                  "properties": {
                    "endIP": "0.0.0.0",
                    "startIP": "0.0.0.0"
                  },
                  "redisCache": "rediscache-sample-1",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "ResourceGroup",
                "metadata": {
                  "name": "resourcegroup-azure-operators"
                },
                "spec": {
                  "location": "westus"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "StorageAccount",
                "metadata": {
                  "name": "storageaccountsample777"
                },
                "spec": {
                  "accessTier": "Hot",
                  "kind": "StorageV2",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "sku": {
                    "name": "Standard_RAGRS"
                  },
                  "supportsHttpsTrafficOnly": true
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "VirtualNetwork",
                "metadata": {
                  "name": "vnet-sample-01"
                },
                "spec": {
                  "addressSpace": "10.0.0.0/8",
                  "location": "SouthCentralUS",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnets": [
                    {
                      "subnetAddressPrefix": "10.1.0.0/16",
                      "subnetName": "test1"
                    },
                    {
                      "subnetAddressPrefix": "10.2.0.0/16",
                      "subnetName": "test2"
                    }
                  ]
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha1",
                "kind": "VirtualNetwork",
                "metadata": {
                  "name": "vnet-sample-02"
                },
                "spec": {
                  "addressSpace": "10.0.0.0/8",
                  "location": "SouthCentralUS",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "subnets": [
                    {
                      "subnetAddressPrefix": "10.1.0.0/16",
                      "subnetName": "test1"
                    },
                    {
                      "subnetAddressPrefix": "10.2.0.0/16",
                      "subnetName": "test2"
                    }
                  ]
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha2",
                "kind": "BlobContainer",
                "metadata": {
                  "name": "blobcontainer-sample"
                },
                "spec": {
                  "accessLevel": "Container",
                  "accountName": "storageaccountsample777",
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha2",
                "kind": "MySQLServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "mysqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus2",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "8.0",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1alpha2",
                "kind": "PostgreSQLServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "postgresqlserver-sample"
                },
                "spec": {
                  "createMode": "Default",
                  "location": "eastus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "serverVersion": "10",
                  "sku": {
                    "capacity": 4,
                    "family": "Gen5",
                    "name": "GP_Gen5_4",
                    "size": "51200",
                    "tier": "GeneralPurpose"
                  },
                  "sslEnforcement": "Enabled"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlDatabase",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "azuresqldatabase-sample"
                },
                "spec": {
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "sku": {
                    "name": "Basic",
                    "tier": "Basic"
                  }
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlFailoverGroup",
                "metadata": {
                  "name": "azuresqlfailovergroup-sample"
                },
                "spec": {
                  "databaseList": [
                    "azuresqldatabase-sample",
                    "azuresqldatabase-sample2"
                  ],
                  "failoverGracePeriod": 30,
                  "failoverPolicy": "automatic",
                  "location": "eastus",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "secondaryServer": "sqlserver-samplesec",
                  "secondaryServerResourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-samplepri"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlFirewallRule",
                "metadata": {
                  "name": "sqlf-allowazuresvcaccess"
                },
                "spec": {
                  "endIpAddress": "0.0.0.0",
                  "resourceGroup": "resourcegroup-azure-operators",
                  "server": "sqlserver-sample-777",
                  "startIpAddress": "0.0.0.0"
                }
              },
              {
                "apiVersion": "azure.microsoft.com/v1beta1",
                "kind": "AzureSqlServer",
                "metadata": {
                  "labels": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "name": "sqlserver-sample-777"
                },
                "spec": {
                  "location": "westus",
                  "resourceGroup": "resourcegroup-azure-operators"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Cloud Provider
          certified: "false"
          containerImage: mcr.microsoft.com/k8s/azureserviceoperator:1.0.59040
          createdAt: Mon 12 Jun 2023 04:24:02 UTC
          description: The Azure Service Operator helps you provision Azure resources
            and connect your applications to them from within Kubernetes.
          displayName: Azure Service Operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/Azure/azure-service-operator
          support: https://github.com/Azure/azure-service-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Creates an API with the specified properties in the specified
              API Management service.
            displayName: APIMgmtAPI
            kind: APIMgmtAPI
            name: apimgmtapis.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an API Management instance into a specified Resource
              Group at the specified location. It also provides the option to link
              to an Application Insights instance for logging, and to place the API
              Management instance in a specified Virtual Network.
            displayName: ApimService
            kind: ApimService
            name: apimservices.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Application Insights instance into a specified
              Resource Group at the specified location.
            displayName: AppInsights
            kind: AppInsights
            name: appinsights.azure.microsoft.com
            version: v1alpha1
          - description: Creates an Api Key to access a given Application Insights
              instance.
            displayName: AppInsightsApiKey
            kind: AppInsightsApiKey
            name: appinsightsapikeys.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Load Balancer (LB) into a specified Resource
              Group at the specified location.
            displayName: AzureLoadBalancer
            kind: AzureLoadBalancer
            name: azureloadbalancers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Network Interface (NIC) into a specified
              Resource Group at the specified location. Users can specify underlying
              public IP address and virtual network configurations in their NIC setup.
            displayName: AzureNetworkInterface
            kind: AzureNetworkInterface
            name: azurenetworkinterfaces.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Public IP Address (PIP) into a specified
              Resource Group at the specified location. Users can specify IP allocation
              method, idle timeout, IP address version, and SKU.
            displayName: AzurePublicIPAddress
            kind: AzurePublicIPAddress
            name: azurepublicipaddresses.azure.microsoft.com
            version: v1alpha1
          - description: Allows you to roll the password for the specified SQL server.
            displayName: AzureSqlAction
            kind: AzureSqlAction
            name: azuresqlactions.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an SQL database given the SQL server.
            displayName: AzureSqlDatabase
            kind: AzureSqlDatabase
            name: azuresqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an SQL database given the SQL server
            displayName: AzureSqlDatabase
            kind: AzureSqlDatabase
            name: azuresqldatabases.azure.microsoft.com
            version: v1beta1
          - description: Deploys a failover group on a specified Azure SQL server
              given the secondary server and the databases to failover.
            displayName: AzureSqlFailoverGroup
            kind: AzureSqlFailoverGroup
            name: azuresqlfailovergroups.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a failover group on a specified Azure SQL server
              given the secondary server and the databases to failover.
            displayName: AzureSqlFailoverGroup
            kind: AzureSqlFailoverGroup
            name: azuresqlfailovergroups.azure.microsoft.com
            version: v1beta1
          - description: Deploys a firewall rule to allow access to the SQL server
              from specific IPs.
            displayName: AzureSqlFirewallRule
            kind: AzureSqlFirewallRule
            name: azuresqlfirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the SQL server
              from specific IPs.
            displayName: AzureSqlFirewallRule
            kind: AzureSqlFirewallRule
            name: azuresqlfirewallrules.azure.microsoft.com
            version: v1beta1
          - description: Binds a specified Managed Identity as a user on the SQL database
            displayName: AzureSQLManagedUser
            kind: AzureSQLManagedUser
            name: azuresqlmanagedusers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure SQL server given the location and Resource
              Group.
            displayName: AzureSqlServer
            kind: AzureSqlServer
            name: azuresqlservers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure SQL server given the location and Resource
              Group.
            displayName: AzureSqlServer
            kind: AzureSqlServer
            name: azuresqlservers.azure.microsoft.com
            version: v1beta1
          - description: Creates an user on the specified Azure SQL database and stores
              the username/password as secrets.
            displayName: AzureSQLUser
            kind: AzureSQLUser
            name: azuresqlusers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a VirtualNetwork rule to allow access to the SQL
              server from specific VNets.
            displayName: AzureSQLVNetRule
            kind: AzureSQLVNetRule
            name: azuresqlvnetrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys Azure Virtual Machine Extensions to provide post-deployment
              configuration and automation on Azure VMs.
            displayName: AzureVirtualMachineExtension
            kind: AzureVirtualMachineExtension
            name: azurevirtualmachineextensions.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Virtual Machine (VM) into a specified Resource
              Group at the specified location. Users can specify platform image, size,
              user name and public SSH key, etc. for the VM.
            displayName: AzureVirtualMachine
            kind: AzureVirtualMachine
            name: azurevirtualmachines.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Virtual Machine Scale Set (VMSS) into a
              specified Resource Group at the specified location. Users can specify
              platform image, size, user name and public SSH key, etc. for the VMSS.
            displayName: AzureVMScaleSet
            kind: AzureVMScaleSet
            name: azurevmscalesets.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a Blob Container into a specified Resource Group
              at the specified location. A Storage Account must first be created prior
              to creating a Blob Container.
            displayName: BlobContainer
            kind: BlobContainer
            name: blobcontainers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a Blob Container into a specified Resource Group
              at the specified location. A Storage Account must first be created prior
              to creating a Blob Container.
            displayName: BlobContainer
            kind: BlobContainer
            name: blobcontainers.azure.microsoft.com
            version: v1alpha2
          - description: Deploys a consumer group given the Event Hub, Event Hubs
              namespace and Resource Group.
            displayName: ConsumerGroup
            kind: ConsumerGroup
            name: consumergroups.azure.microsoft.com
            version: v1alpha1
          - description: Provision a CosmosDB instance given the Cosmos DB instance
              type, location, and Resource Group.
            displayName: CosmosDB
            kind: CosmosDB
            name: cosmosdbs.azure.microsoft.com
            version: v1alpha1
          - kind: CosmosDBSQLDatabase
            name: cosmosdbsqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Event Hubs namespace given the Resource Group
              and location. Also has the ability to configure SKU, properties, and
              network rules.
            displayName: EventhubNamespace
            kind: EventhubNamespace
            name: eventhubnamespaces.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Event Hubs instance given the Event Hubs namespace,
              Resource Group and Location.
            displayName: Eventhub
            kind: Eventhub
            name: eventhubs.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Key Vault key given the location and Resource
              Group.
            displayName: KeyVaultKey
            kind: KeyVaultKey
            name: keyvaultkeys.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Key Vault given the location and Resource
              Group.
            displayName: KeyVault
            kind: KeyVault
            name: keyvaults.azure.microsoft.com
            version: v1alpha1
          - description: Add an AAD user to an existing MySQL database.
            kind: MySQLAADUser
            name: mysqlaadusers.azure.microsoft.com
            version: v1alpha1
          - description: Add an AAD user to an existing MySQL database.
            kind: MySQLAADUser
            name: mysqlaadusers.azure.microsoft.com
            version: v1alpha2
          - description: Deploys a database under the given Azure Database for MySQL
              server
            displayName: MySQLDatabase
            kind: MySQLDatabase
            name: mysqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the Azure Database
              for MySQL server from the specified IP range.
            displayName: MySQLFirewallRule
            kind: MySQLFirewallRule
            name: mysqlfirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Create an AAD-based admininistrative user in a MySQL server.
            kind: MySQLServerAdministrator
            name: mysqlserveradministrators.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for MySQL server given the Location,
              Resource Group and other properties. Also helps creating read replicas
              for MySQL server.
            displayName: MySQLServer
            kind: MySQLServer
            name: mysqlservers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for MySQL server given the Location,
              Resource Group and other properties. Also helps creating read replicas
              for MySQL server.
            displayName: MySQLServer
            kind: MySQLServer
            name: mysqlservers.azure.microsoft.com
            version: v1alpha2
          - description: Add a new user to an existing MySQL database.
            displayName: MySQLUser
            kind: MySQLUser
            name: mysqlusers.azure.microsoft.com
            version: v1alpha1
          - description: Add a new user to an existing MySQL database.
            kind: MySQLUser
            name: mysqlusers.azure.microsoft.com
            version: v1alpha2
          - description: Add virtual network rules to the MySQL server.
            displayName: MySQLVNetRule
            kind: MySQLVNetRule
            name: mysqlvnetrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a database under the given Azure Database for PostgreSQL
              server.
            displayName: PostgreSQLDatabase
            kind: PostgreSQLDatabase
            name: postgresqldatabases.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the Azure Database
              for PostgreSQL server from the specified IP range.
            displayName: PostgreSQLFirewallRule
            kind: PostgreSQLFirewallRule
            name: postgresqlfirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for PostgreSQL server given the
              Location and Resource Group.
            displayName: PostgreSQLServer
            kind: PostgreSQLServer
            name: postgresqlservers.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Database for PostgreSQL server given the
              Location and Resource Group.
            displayName: PostgreSQLServer
            kind: PostgreSQLServer
            name: postgresqlservers.azure.microsoft.com
            version: v1alpha2
          - description: Create and Manage Users for Azure Database for PostgreSQL
              server.
            displayName: PostgreSQLUser
            kind: PostgreSQLUser
            name: postgresqlusers.azure.microsoft.com
            version: v1alpha1
          - description: Create and manage VNet service endpoints and VNet rules in
              Azure Database for PostgreSQL.
            displayName: PostgreSQLVNetRule
            kind: PostgreSQLVNetRule
            name: postgresqlvnetrules.azure.microsoft.com
            version: v1alpha1
          - description: Allows you to regenerate keys and reboot the RedisCache cluster.
            displayName: RedisCacheAction
            kind: RedisCacheAction
            name: rediscacheactions.azure.microsoft.com
            version: v1alpha1
          - description: Deploys a firewall rule to allow access to the RedisCache
              from the specified IP range.
            displayName: RedisCacheFirewallRule
            kind: RedisCacheFirewallRule
            name: rediscachefirewallrules.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Cache for Redis into a specified Resource
              Group at the specified location.
            displayName: RedisCache
            kind: RedisCache
            name: rediscaches.azure.microsoft.com
            version: v1alpha1
          - description: Provisions a Resource Group given the location and a name.
            displayName: ResourceGroup
            kind: ResourceGroup
            name: resourcegroups.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Storage Account into a specified Resource
              Group at the specified location.
            displayName: StorageAccount
            kind: StorageAccount
            name: storageaccounts.azure.microsoft.com
            version: v1alpha1
          - description: Deploys an Azure Virtual Network into a specified Resource
              Group at the specified location, in the address space provided. Users
              are also able to add subnets to their virtual network through the operator.
            displayName: VirtualNetwork
            kind: VirtualNetwork
            name: virtualnetworks.azure.microsoft.com
            version: v1alpha1
        description: |
          ## Overview

          The Azure Service Operator comprises of:

          - The Custom Resource Definitions (CRDs) for each of the Azure services a Kubernetes user can provision.
          - The Kubernetes controller that watches for requests to create Custom Resources for each of these CRDs and creates them.

          The project was built using [Kubebuilder](https://book.kubebuilder.io/).

          Curious to see how it all works? Check out our [control flow diagrams](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/controlflow.md).

          **Note**: The current version of Azure Service Operator only supports watching all namespaces in the cluster.

          ## Supported Azure Services

          - [Resource Group](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/resourcegroup/resourcegroup.md)
          - [Event Hubs](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/eventhub/eventhub.md)
          - [Azure SQL](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/azuresql/azuresql.md)
          - [Azure Database for PostgreSQL](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/postgresql/postgresql.md)
          - [Azure Database for MySQL](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/mysql/mysql.md)
          - [Azure Key Vault](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/keyvault/keyvault.md)
          - [Azure Cache for Redis](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/rediscache/rediscache.md)
          - [Storage Account](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/storage/storageaccount.md)
          - [Blob Storage](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/storage/blobcontainer.md)
          - [Virtual Network](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/virtualnetwork/virtualnetwork.md)
          - [Application Insights](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/appinsights/appinsights.md)
          - [API Management](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/apimgmt/apimgmt.md)
          - [Cosmos DB](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/cosmosdb/cosmosdb.md)
          - [Virtual Machine](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/virtualmachine/virtualmachine.md)
          - [Virtual Machine Scale Set](https://github.com/Azure/azure-service-operator/tree/main/docs/v1/services/vmscaleset/vmscaleset.md)

          ## Instructions - Please read before installing

          Before you begin, verify you're running the Azure CLI version 2.0.53 or later. Run `az --version` to find the version. If you need to install or upgrade, see [Install Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli).

          1. Create an Azure Service Principal. You'll need this to grant Azure Service Operator permissions to create resources in your subscription.

              First, set the following environment variables to your Azure Tenant ID and Subscription ID with your values:
              ```yaml
              AZURE_TENANT_ID=<your-tenant-id-goes-here>
              AZURE_SUBSCRIPTION_ID=<your-subscription-id-goes-here>
              ```

              You can find these values by using the [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/?view=azure-cli-latest):
              ```sh
              az account show
              ```

          2. Next, we'll create a Service Principal with Contributor permissions for your subscription, so ASO can create resources in your subscription on your behalf. Note that the [ServicePrincipal](https://docs.microsoft.com/en-us/cli/azure/create-an-azure-service-principal-azure-cli) you pass to the command below needs to have access to create resources in your subscription. If you'd like to use Managed Identity for authorization instead, check out instructions [here](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/managedidentity.md).

              ```sh
              az ad sp create-for-rbac -n "azure-service-operator" --role contributor \
                  --scopes /subscriptions/$AZURE_SUBSCRIPTION_ID
              ```

              This should give you output like the following:
              ```sh
              "appId": "xxxxxxxxxx",
              "displayName": "azure-service-operator",
              "name": "http://azure-service-operator",
              "password": "xxxxxxxxxxx",
              "tenant": "xxxxxxxxxxxxx"
              ```

          3.  Once you have created a Service Principal, gather the following values:

              `AZURE_TENANT_ID` is the Tenant ID from Step 1.

              `AZURE_SUBSCRIPTION_ID` is the Subscription ID from Step 1.

              `AZURE_CLIENT_ID` is the appID from the Service Principal created in Step 2.

              `AZURE_CLIENT_SECRET` is the password from the service Principal we created in Step 2.

              `AZURE_CLOUD_ENV` is the Azure Environment you'd like to use, i.e. AzurePublicCloud, AzureUSGovernmentCloud, AzureChinaCloud, AzureGermanCloud.

          4.  Set those values in a `Secret` called `azureoperatorsettings` within the `operators` Namespace:
              ```yaml
              apiVersion: v1
              kind: Secret
              metadata:
                name: azureoperatorsettings
                namespace: operators
              stringData:
                AZURE_TENANT_ID: <your-tenant-id-goes-here>
                AZURE_SUBSCRIPTION_ID: <your-subscription-id-goes-here>
                AZURE_CLIENT_ID: <your-client-id>
                AZURE_CLIENT_SECRET: <your-client-secret>
                AZURE_CLOUD_ENV: <your-azure-cloud-environment>
              ```

          5. Now you can proceed to install the Azure Service Operator to the `operators` Namespace via the Install button on the top right of this page. After the operator is installed, you will then see the Azure Service Operator pod running in your cluster:

              ```console
              $ kubectl get pods -n operators
              NAME                                                READY   STATUS    RESTARTS   AGE
              azureoperator-controller-manager-7dd75bbd97-mk4s9   2/2     Running   0          35s
              ```

          ## About the project

          This project maintains [releases of the Azure Service Operator](https://github.com/Azure/azure-service-operator/releases).

          Please see the [FAQ](https://github.com/Azure/azure-service-operator/blob/main/docs/faq.md) for answers to commonly asked questions about the Azure Service Operator.

          Have more questions? Feel free to consult our documentation [here](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/contents.md).

          ## Contributing

          The [contribution guide](https://github.com/Azure/azure-service-operator/blob/main/CONTRIBUTING.md) covers everything you need to know about how you can contribute to Azure Service Operators. The [developer guide](https://github.com/Azure/azure-service-operator/blob/main/docs/v1/howto/contents.md#developing-azure-service-operator) will help you onboard as a developer.

          ## Support

          Azure Service Operator is an open source project that is **not** covered by the [Microsoft Azure support policy](https://support.microsoft.com/en-us/help/2941892/support-for-linux-and-open-source-technology-in-azure). Please search open issues [here](https://github.com/Azure/azure-service-operator/issues). If your issue isn't already represented, please [open a new one](https://github.com/Azure/azure-service-operator/issues/new/choose). The Azure Service Operator project maintainers will respond to the best of their abilities.

          ## Code of conduct

          This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information, see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.
        displayName: Azure Service Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - azure, microsoft, cloud service broker
        links:
        - name: Azure Service Operator
          url: https://github.com/Azure/azure-service-operator
        maintainers:
        - email: christian.muirhead@microsoft.com
          name: Christian Muirhead
        maturity: stable
        provider:
          name: Microsoft
        relatedImages:
        - mcr.microsoft.com/k8s/azureserviceoperator:1.0.59040
        - quay.io/openshift-community-operators/azure-service-operator@sha256:2430ebe724ead60e84f12aa485c8dae4af82af10d14400ce76356392030c8c0b
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 1.0.59040
      entries:
      - name: azure-service-operator.v1.0.59040
        version: 1.0.59040
      name: stable
    defaultChannel: stable
    packageName: azure-service-operator
    provider:
      name: Microsoft
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: KubeVirt project
      provider-url: ""
    name: community-kubevirt-hyperconverged
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubevirt-hyperconverged-operator.v1.10.7
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployTektonTaskResources":true,"deployVmConsoleProxy":true},"tektonPipelines":{"namespace":"kubevirt"},"tektonTasks":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"mtq.kubevirt.io/v1alpha1","kind":"MTQ","metadata":{"name":"mtq","namespace":"mtq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: quay.io/kubevirt/hyperconverged-cluster-operator@sha256:0ee30557d5d5a42dec19121e70ed77fbdacd8932f55b11e2c7c1a3d5ad5df4aa
          createdAt: "2024-02-09 14:34:30"
          description: A unified operator deploying and controlling KubeVirt and its
            supporting operators with opinionated defaults
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}}'
          operatorframework.io/suggested-namespace: kubevirt-hyperconverged
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","mtqs.mtq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: "false"
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of HyperConverged Cluster Operator
            displayName: HyperConverged Cluster Operator Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a MTQ deployment
            displayName: MTQ deployment
            kind: MTQ
            name: mtqs.mtq.kubevirt.io
            version: v1alpha1
        description: |-
          **HyperConverged Cluster Operator** is an Operator pattern for managing multi-operator products.
          Specifically, the HyperConverged Cluster Operator manages the deployment of KubeVirt,
          Containerized Data Importer (CDI), Virtual Machine import operator and Cluster Network Addons (CNA) operators.

          **KubeVirt** is a virtual machine management add-on for Kubernetes.
          The aim is to provide a common ground for virtualization solutions on top of
          Kubernetes.

          # Virtualization extension for Kubernetes

          At its core, KubeVirt extends [Kubernetes](https://kubernetes.io) by adding
          additional virtualization resource types (especially the `VirtualMachine` type) through
          [Kubernetes's Custom Resource Definitions API](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/).
          By using this mechanism, the Kubernetes API can be used to manage these `VirtualMachine`
          resources alongside all other resources Kubernetes provides.

          The resources themselves are not enough to launch virtual machines.
          For this to happen the _functionality and business logic_ needs to be added to
          the cluster. The functionality is not added to Kubernetes itself, but rather
          added to a Kubernetes cluster by _running_ additional controllers and agents
          on an existing cluster.

          The necessary controllers and agents are provided by KubeVirt.

          As of today KubeVirt can be used to declaratively

            * Create a predefined VM
            * Schedule a VM on a Kubernetes cluster
            * Launch a VM
            * Migrate a VM
            * Stop a VM
            * Delete a VM

          # Start using KubeVirt

            * Try our quickstart at [kubevirt.io](http://kubevirt.io/get_kubevirt/).
            * See our user documentation at [kubevirt.io/docs](http://kubevirt.io/user-guide).

          # Start developing KubeVirt

          To set up a development environment please read our
          [Getting Started Guide](https://github.com/kubevirt/kubevirt/blob/master/docs/getting-started.md).
          To learn how to contribute, please read our [contribution guide](https://github.com/kubevirt/kubevirt/blob/master/CONTRIBUTING.md).

          You can learn more about how KubeVirt is designed (and why it is that way),
          and learn more about the major components by taking a look at our developer documentation:

            * [Architecture](https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md) - High-level view on the architecture
            * [Components](https://github.com/kubevirt/kubevirt/blob/master/docs/components.md) - Detailed look at all components
            * [API Reference](https://github.com/kubevirt/kubevirt/blob/master/https://www.kubevirt.io/api-reference/)

          # Community

          If you got enough of code and want to speak to people, then you got a couple of options:

            * Follow us on [Twitter](https://twitter.com/kubevirt)
            * Chat with us in the #virtualization channel of the [Kubernetes Slack](https://slack.k8s.io/)
            * Discuss with us on the [kubevirt-dev Google Group](https://groups.google.com/forum/#!forum/kubevirt-dev)
            * Stay informed about designs and upcoming events by watching our [community content](https://github.com/kubevirt/community/)

          # License

          KubeVirt is distributed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt).
        displayName: KubeVirt HyperConverged Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        links:
        - name: KubeVirt project
          url: https://kubevirt.io
        - name: Source Code
          url: https://github.com/kubevirt/hyperconverged-cluster-operator
        maintainers:
        - email: kubevirt-dev@googlegroups.com
          name: KubeVirt project
        maturity: alpha
        provider:
          name: KubeVirt project
        relatedImages:
        - quay.io/kubevirt/virt-launcher@sha256:4c5fce3de2e2589197de72fb0c9436490ea318aca952c05a622c43e067023f35
        - quay.io/kubevirt/virt-exportserver@sha256:73311f79a9c71007f8572b3cc40cd6f6da404c7ef0a9c6509fb717d979546582
        - quay.io/kubevirt/virtio-container-disk@sha256:f8e71a3a930ce95d646d80862d5ff6f9d3ed7ef2541dd2e2acec0bce26274734
        - quay.io/kubevirt/cdi-uploadproxy@sha256:551221d79902a5053d1c734b81163d69f087217e2ac13c49bdf6900336ef0786
        - quay.io/kubevirt/hostpath-csi-driver@sha256:0ca8b50b0adb20afd4e20da9974200f3290b6d51aa7c1129de6e1b953bf26594
        - quay.io/kubevirt/virt-exportproxy@sha256:f14444b0200a85efb4b3c176caefe70aabba7d295e33d2af14027a59ce297e24
        - quay.io/kubevirt/hostpath-provisioner-operator@sha256:16ecabb1d733aa17084cd16d88963c5255d04f389e0f4d41941d67e8be973594
        - quay.io/kubevirt/kubemacpool@sha256:3214020c21204c189cdf2d767beb8efb61ee3ef65dd8de7f0f1edc61e13e8adf
        - quay.io/kubevirt/hyperconverged-cluster-webhook@sha256:86c10c122767661e31ee26a9e9de7ea606c2c1168b32793b4ea567ede2ae3b21
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:5ff5392cb762a41ee9bc4767e3a693249ae08b46a4322f623f24ad6b63dd06b5
        - quay.io/kubevirt/cdi-cloner@sha256:9d31b14f23259398c5bac636f5ead13ad0afd6fe8eeab4499e8e047b4d85074f
        - quay.io/kubevirt/cdi-controller@sha256:27c47883a08226f83757971d3adafb0cd9bcb26e58fbcf7208236070e0adf37e
        - registry.k8s.io/sig-storage/livenessprobe@sha256:4dc0b87ccd69f9865b89234d8555d3a614ab0a16ed94a3016ffd27f8106132ce
        - quay.io/kubevirt/cdi-operator@sha256:6c63521d835578b0fbb77d3145b648f95ab0932d5d1b36ff2068ed8fcd91bc5a
        - quay.io/kubevirt/cdi-importer@sha256:3143bbc67cdc6267eb48b7eaac664b8551ac4c11401dfbf4921efd3f233e6ce9
        - quay.io/kubevirt/cluster-network-addons-operator@sha256:f64ab5981d9ddef1662dd0a05888783f5dbadda8ede596585ba80bfc97a0f51e
        - quay.io/kubevirt/hyperconverged-cluster-operator@sha256:0ee30557d5d5a42dec19121e70ed77fbdacd8932f55b11e2c7c1a3d5ad5df4aa
        - quay.io/kubevirt/mtq-operator@sha256:ef5c4bb1fa72f9e6e75d5585ca352f7563720389e6c9876aa8b07d12d1be6194
        - quay.io/kubevirt-ui/kubevirt-apiserver-proxy@sha256:38293a1050bce9c7cb786cbe8719be1edb91a922a6c583eedb61e56729ed4c72
        - quay.io/kubevirt/virt-controller@sha256:0789fafed2913b35a771e3db882748502b3250be04ece86d97f30201779b4e54
        - quay.io/kubevirt/virt-artifacts-server:1.10.7-unstable
        - quay.io/kubevirt/ovs-cni-plugin@sha256:08f72edf2bef876bba0b0f5513d30225304ad5e7ad6912a61c083664acdb99ff
        - quay.io/kubevirt/bridge-marker@sha256:bba066e3b5ff3fb8c5e20861fe8abe51e3c9b50ad6ce3b2616af9cb5479a06d0
        - quay.io/kubevirt/mtq-lock-server@sha256:9614df0d5af7c998bcceaf73b548f2e3b29ff8ee4ca64c32613bfbdd6e452f6c
        - quay.io/kubevirt/kubevirt-template-validator@sha256:a148b6e812b70f326b48d0439b1e44a967a6e1f8cf2f98b1a08e9294a93674eb
        - quay.io/kubevirt/macvtap-cni@sha256:434420511e09b2b5ede785a2c9062b6658ffbc26fbdd4629ce06110f9039c600
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d078dc174323407e8cc6f0f9abd4efaac5db27838f1564d0253d5e3233e3f17f
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:f6717ce72a2615c7fbc746b4068f788e78579c54c43b8716e5ce650d97af2df1
        - quay.io/kubevirt/ssp-operator@sha256:49cac00844f091d6e80301573e00235d685415185ec29c89b4bd7361f938711e
        - quay.io/kubevirt/virt-api@sha256:707003b221496b4432da2f507d1e36e528b45888b5d321e06d460f0678da44ae
        - quay.io/kubevirt-ui/kubevirt-plugin@sha256:e79027973b09aac75860f267c7d7f830599978c38a081001f404b9a1c3d2990f
        - quay.io/kubevirt/hostpath-provisioner@sha256:eae30f37b3e837478a4500144b7bc8eb4f5ddf15f49fa7354bc9d5e240ea8aea
        - quay.io/community-operator-pipeline-prod/community-kubevirt-hyperconverged@sha256:e5e0c3b3a25c13ea916d70fa6f6ddc20f2c730bd9909aa2654672280c27afda2
        - quay.io/kubevirt/virt-operator@sha256:cbca7f93afbb18a840f7e763e4c03aeeb1fd97967f381c12c443cc179b51da29
        - quay.io/kubevirt/cni-default-plugins@sha256:825e3f9fec1996c54a52cec806154945b38f76476b160d554c36e38dfffe5e61
        - quay.io/kubevirt/cdi-apiserver@sha256:e9e39408413b1478d2e98eba68913f9e20c93000558b190b47de73bdfd1d9ac4
        - quay.io/kubevirt/mtq-controller@sha256:96dd73ea0d7847d9f6322192559747bd85655e25ee25482d112e6e3c6fef21b2
        - registry.k8s.io/coredns/coredns@sha256:a0ead06651cf580044aeb0a0feba63591858fb2e43ade8c9dea45a6a89ae7e5e
        - ghcr.io/k8snetworkplumbingwg/multus-cni@sha256:3fbcc32bd4e4d15bd93c96def784a229cd84cca27942bf4858b581f31c97ee02
        - ghcr.io/kubevirt/kubesecondarydns@sha256:e87e829380a1e576384145f78ccaa885ba1d5690d5de7d0b73d40cfb804ea24d
        - quay.io/kubevirt/cdi-uploadserver@sha256:30f1827d3696cf996b081c22c3267ca78e7219c872fdb54950198fa54359f6ee
        - quay.io/kubevirt/libguestfs-tools@sha256:b7e248be783691daad1326cf41641d5042be80c5c057ebc5315ca7a1619b0581
        - quay.io/kubevirt/virt-handler@sha256:138dfda5fea8622f3da0d6413fe214fef80c2fd6a6f9533592a0dbfa7e1865b5
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:f7567bea7f24184da06c3ed87b396c804342fcfd89f54989622780ce0b7b0724
        - ghcr.io/k8snetworkplumbingwg/multus-dynamic-networks-controller@sha256:57573a24923e5588bca6bc337a8b2b08406c5b77583974365d2cf063c0dd5d06
        version: 1.10.7
      entries:
      - name: kubevirt-hyperconverged-operator.v1.10.7
        version: 1.10.7
      name: 1.10.7
    - currentCSV: kubevirt-hyperconverged-operator.v1.11.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployTektonTaskResources":true,"deployVmConsoleProxy":true},"tektonPipelines":{"namespace":"kubevirt"},"tektonTasks":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"mtq.kubevirt.io/v1alpha1","kind":"MTQ","metadata":{"name":"mtq","namespace":"mtq"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: quay.io/kubevirt/hyperconverged-cluster-operator@sha256:dd6538e720f18b723b0807037ca7cc1014cba09e57b20706e10e6eb641ac6acc
          createdAt: "2024-03-06 15:11:00"
          description: A unified operator deploying and controlling KubeVirt and its
            supporting operators with opinionated defaults
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}}'
          operatorframework.io/suggested-namespace: kubevirt-hyperconverged
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: quay.io/kubevirt/must-gather
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","mtqs.mtq.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: "false"
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of HyperConverged Cluster Operator
            displayName: HyperConverged Cluster Operator Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a MTQ deployment
            displayName: MTQ deployment
            kind: MTQ
            name: mtqs.mtq.kubevirt.io
            version: v1alpha1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          **HyperConverged Cluster Operator** is an Operator pattern for managing multi-operator products.
          Specifically, the HyperConverged Cluster Operator manages the deployment of KubeVirt,
          Containerized Data Importer (CDI), Virtual Machine import operator and Cluster Network Addons (CNA) operators.

          **KubeVirt** is a virtual machine management add-on for Kubernetes.
          The aim is to provide a common ground for virtualization solutions on top of
          Kubernetes.

          # Virtualization extension for Kubernetes

          At its core, KubeVirt extends [Kubernetes](https://kubernetes.io) by adding
          additional virtualization resource types (especially the `VirtualMachine` type) through
          [Kubernetes's Custom Resource Definitions API](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/).
          By using this mechanism, the Kubernetes API can be used to manage these `VirtualMachine`
          resources alongside all other resources Kubernetes provides.

          The resources themselves are not enough to launch virtual machines.
          For this to happen the _functionality and business logic_ needs to be added to
          the cluster. The functionality is not added to Kubernetes itself, but rather
          added to a Kubernetes cluster by _running_ additional controllers and agents
          on an existing cluster.

          The necessary controllers and agents are provided by KubeVirt.

          As of today KubeVirt can be used to declaratively

            * Create a predefined VM
            * Schedule a VM on a Kubernetes cluster
            * Launch a VM
            * Migrate a VM
            * Stop a VM
            * Delete a VM

          # Start using KubeVirt

            * Try our quickstart at [kubevirt.io](http://kubevirt.io/get_kubevirt/).
            * See our user documentation at [kubevirt.io/docs](http://kubevirt.io/user-guide).

          # Start developing KubeVirt

          To set up a development environment please read our
          [Getting Started Guide](https://github.com/kubevirt/kubevirt/blob/master/docs/getting-started.md).
          To learn how to contribute, please read our [contribution guide](https://github.com/kubevirt/kubevirt/blob/master/CONTRIBUTING.md).

          You can learn more about how KubeVirt is designed (and why it is that way),
          and learn more about the major components by taking a look at our developer documentation:

            * [Architecture](https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md) - High-level view on the architecture
            * [Components](https://github.com/kubevirt/kubevirt/blob/master/docs/components.md) - Detailed look at all components
            * [API Reference](https://github.com/kubevirt/kubevirt/blob/master/https://www.kubevirt.io/api-reference/)

          # Community

          If you got enough of code and want to speak to people, then you got a couple of options:

            * Follow us on [Twitter](https://twitter.com/kubevirt)
            * Chat with us in the #virtualization channel of the [Kubernetes Slack](https://slack.k8s.io/)
            * Discuss with us on the [kubevirt-dev Google Group](https://groups.google.com/forum/#!forum/kubevirt-dev)
            * Stay informed about designs and upcoming events by watching our [community content](https://github.com/kubevirt/community/)

          # License

          KubeVirt is distributed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt).
        displayName: KubeVirt HyperConverged Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        links:
        - name: KubeVirt project
          url: https://kubevirt.io
        - name: Source Code
          url: https://github.com/kubevirt/hyperconverged-cluster-operator
        maintainers:
        - email: kubevirt-dev@googlegroups.com
          name: KubeVirt project
        maturity: alpha
        provider:
          name: KubeVirt project
        relatedImages:
        - quay.io/kubevirt/cdi-uploadproxy@sha256:b89104ef5513d63cab43b34ac52f752c3d935cb986d5527d920c2c31d3b6f239
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d078dc174323407e8cc6f0f9abd4efaac5db27838f1564d0253d5e3233e3f17f
        - quay.io/kubevirt/macvtap-cni@sha256:850b89343ace7c7ea6b18dd8e11964613974e9d1f7377af03854d407fb15230a
        - quay.io/kubevirt/cdi-controller@sha256:606de89e68be2ac911466e6713345932bda496c1e4f20e34ef5efa270456c9fd
        - quay.io/kubevirt/cni-default-plugins@sha256:c884d6d08f8c0db98964f1eb3877b44ade41fa106083802a9914775df17d5291
        - quay.io/kubevirt/cdi-apiserver@sha256:95f6e71b36883abcb9ec463cfea2332f5490ec9eb3e4868bdf0a4da769279094
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:f1bd6ee18c4021c1c94f29edfab89b49b6a4d1b800936c19dbef2d75f8202f2d
        - quay.io/kubevirt/hostpath-provisioner-operator@sha256:dd2948ca8e62d17eafba40bdcaad8367a97f092fd3b8d9849b2d62aec3152a72
        - quay.io/kubevirt/virt-handler@sha256:238550bb263608ba334b44a15647cbf875482ccfb46049713c14af5d5f0cc788
        - quay.io/kubevirt/kubevirt-template-validator@sha256:f6db539fe4d4b752644c6bc8a308f5a80ae09a71da5c5d535114dc4c3cf18e0a
        - quay.io/kubevirt-ui/kubevirt-apiserver-proxy@sha256:38293a1050bce9c7cb786cbe8719be1edb91a922a6c583eedb61e56729ed4c72
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:e2def4213ec0657e72eb790ae8a115511d5b8f164a62d3568d2f1bff189917e8
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:c53535af8a7f7e3164609838c4b191b42b2d81238d75c1b2a2b582ada62a9780
        - quay.io/kubevirt/mtq-operator@sha256:90c7608b0ba085582a65ccdc11d089049c5e6b0438d018dd9dc76eb3490383c7
        - quay.io/kubevirt/cdi-cloner@sha256:b22985af0ee7b1ce4e1dedded08c853d90d9e7209f98c5d470897bbefce2a063
        - quay.io/kubevirt/ssp-operator@sha256:d57ef05fea09c4690dbe728ebe6a39d9df1a3574dfa7d18346bf3fe66afed702
        - quay.io/kubevirt/bridge-marker@sha256:bba066e3b5ff3fb8c5e20861fe8abe51e3c9b50ad6ce3b2616af9cb5479a06d0
        - quay.io/kubevirt/virt-api@sha256:735662c824da3d6069624d40674163d758c2256f8043cf6f02f505c3a724afa3
        - quay.io/kubevirt/cdi-importer@sha256:7320dce01f4628363992997b592200b4804daf15a9f237cd50a4a6acab7798e8
        - quay.io/kubevirt/virt-artifacts-server@sha256:22fa3218deca38dc98fa0e905df16173a47ccec85707eb91404a367da6480817
        - quay.io/kubevirt/kubemacpool@sha256:cf8daa57ae6603b776d3af512331b143fa03bc2f4b72f28420fddcf5e4156d0a
        - quay.io/kubevirt/virt-exportserver@sha256:f8473fc824f8bac5f21c64b71cdb4227de28f9bb25c049932f1259216b874a86
        - ghcr.io/k8snetworkplumbingwg/multus-cni@sha256:3fbcc32bd4e4d15bd93c96def784a229cd84cca27942bf4858b581f31c97ee02
        - quay.io/kubevirt/hostpath-csi-driver@sha256:8d84b9a33e0ec3749aece7c5f9879d1e0d248e8028ab3f776528a044d387033c
        - quay.io/kubevirt/virtio-container-disk@sha256:f8e71a3a930ce95d646d80862d5ff6f9d3ed7ef2541dd2e2acec0bce26274734
        - quay.io/community-operator-pipeline-prod/community-kubevirt-hyperconverged@sha256:8c65e65bbaf0ebb10dba03655c5854c69c82ddc0e6b2a29293eee029222e5efa
        - registry.k8s.io/sig-storage/livenessprobe@sha256:5baeb4a6d7d517434292758928bb33efc6397368cbb48c8a4cf29496abf4e987
        - quay.io/kubevirt/hyperconverged-cluster-operator@sha256:dd6538e720f18b723b0807037ca7cc1014cba09e57b20706e10e6eb641ac6acc
        - ghcr.io/k8snetworkplumbingwg/multus-dynamic-networks-controller@sha256:57573a24923e5588bca6bc337a8b2b08406c5b77583974365d2cf063c0dd5d06
        - quay.io/kubevirt/aaq-server@sha256:0c6b01c48030e03e99b3ff2b319658c2bf2b2001f4e3e030ba70d1143b25717a
        - quay.io/kubevirt/hyperconverged-cluster-webhook@sha256:70efc16ab2bfec04f73ccc292064d080870659cfd47c2e0c9017ff7b6fd78863
        - quay.io/kubevirt/hostpath-provisioner@sha256:adb1d33e95e8991dc47107926172469b5ecbeace509391ce021ca42d305a41d3
        - ghcr.io/kubevirt/kubesecondarydns@sha256:e87e829380a1e576384145f78ccaa885ba1d5690d5de7d0b73d40cfb804ea24d
        - quay.io/kubevirt/cdi-operator@sha256:8a27e1450c3bf8c1d8924e74470a62419d02ed2202924b082a74e2414b1fc21a
        - quay.io/kubevirt/virt-exportproxy@sha256:942c548d4848a87945eba51683002797eb4e1f5c463a1873115b2ec0e1e6e169
        - quay.io/kubevirt/libguestfs-tools@sha256:4971af1ee42959d366a3db6129ab684d11064e00bbd3c2b36324ad14e90cb903
        - quay.io/kubevirt/mtq-controller@sha256:ae7dd07e4018c63414b021eba34aa4776a6c7d6ff4fcdf9fd2d7ca30aae98a29
        - quay.io/kubevirt/cdi-uploadserver@sha256:16d257e575b2bd504f148f63b57dc181fa6058d33a11ada64888183c3e4d4863
        - quay.io/kubevirt/mtq-lock-server@sha256:8e686107dd9990dab1a3d90ee1068541938f673bf54ea9e1308b2ed7218546b0
        - quay.io/kubevirt/ovs-cni-plugin@sha256:e16ac74343da21abb8fb668ce71e728053d00503a992dae2164b9e94a280113e
        - quay.io/kubevirt/virt-launcher@sha256:4fbfd76561667e98fafc75c0b804f77df251f96471d1121d69f149cf8fb9a4d8
        - quay.io/kubevirt/virt-operator@sha256:0e6d56ea0ebdf9bb832f29ab0dc4603f0f619474bb8bc02a01e0a06e9d8d6f4a
        - registry.k8s.io/coredns/coredns@sha256:a0ead06651cf580044aeb0a0feba63591858fb2e43ade8c9dea45a6a89ae7e5e
        - quay.io/kubevirt-ui/kubevirt-plugin@sha256:4ed1f37116cbaf883edd8783201d091fbbe121fcb84e7184ee531d3b1abd77ab
        - quay.io/kubevirt/aaq-operator@sha256:590d24742401eeff3fb6a9c8ed977c63442f8f0a0505509fae69aa1bf8aa84ae
        - quay.io/kubevirt/virt-controller@sha256:4f576e30b83db7b9f96dde77896898bde87db3517963c4227634d0c3e96bb86d
        - quay.io/kubevirt/cluster-network-addons-operator@sha256:bf17da674ed6dac95aa4fd7637173fd4e026ebb4523b66f529c0eff394a25bcc
        - quay.io/kubevirt/aaq-controller@sha256:cb2fa52ae3f6a1a99b2de77b58c5db54c43ba8ee86c6540b4844c901180ce611
        version: 1.11.0
      entries:
      - name: kubevirt-hyperconverged-operator.v1.11.0
        version: 1.11.0
      name: 1.11.0
    - currentCSV: kubevirt-hyperconverged-operator.v1.16.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployVmConsoleProxy":true},"templateValidator":{"replicas":2}}},{"apiVersion":"ssp.kubevirt.io/v1beta3","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: quay.io/kubevirt/hyperconverged-cluster-operator@sha256:78a1a9f656da5dea20022706ebf61982dd9b63dd5cb4dd75ae98d643e671fbde
          createdAt: "2025-11-11 08:46:34"
          description: A unified operator deploying and controlling KubeVirt and its
            supporting operators with opinionated defaults
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          openshift.io/required-scc: restricted-v2
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"kubevirt-hyperconverged"},"spec":{}}'
          operatorframework.io/suggested-namespace: kubevirt-hyperconverged
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: quay.io/kubevirt/must-gather
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: "false"
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of HyperConverged Cluster Operator
            displayName: HyperConverged Cluster Operator Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta3
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          **HyperConverged Cluster Operator** is an Operator pattern for managing multi-operator products.
          Specifically, the HyperConverged Cluster Operator manages the deployment of KubeVirt,
          Containerized Data Importer (CDI), Virtual Machine import operator and Cluster Network Addons (CNA) operators.

          **KubeVirt** is a virtual machine management add-on for Kubernetes.
          The aim is to provide a common ground for virtualization solutions on top of
          Kubernetes.

          # Virtualization extension for Kubernetes

          At its core, KubeVirt extends [Kubernetes](https://kubernetes.io) by adding
          additional virtualization resource types (especially the `VirtualMachine` type) through
          [Kubernetes's Custom Resource Definitions API](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/).
          By using this mechanism, the Kubernetes API can be used to manage these `VirtualMachine`
          resources alongside all other resources Kubernetes provides.

          The resources themselves are not enough to launch virtual machines.
          For this to happen the _functionality and business logic_ needs to be added to
          the cluster. The functionality is not added to Kubernetes itself, but rather
          added to a Kubernetes cluster by _running_ additional controllers and agents
          on an existing cluster.

          The necessary controllers and agents are provided by KubeVirt.

          As of today KubeVirt can be used to declaratively

            * Create a predefined VM
            * Schedule a VM on a Kubernetes cluster
            * Launch a VM
            * Migrate a VM
            * Stop a VM
            * Delete a VM

          # Start using KubeVirt

            * Try our quickstart at [kubevirt.io](http://kubevirt.io/get_kubevirt/).
            * See our user documentation at [kubevirt.io/docs](http://kubevirt.io/user-guide).

          # Start developing KubeVirt

          To set up a development environment please read our
          [Getting Started Guide](https://github.com/kubevirt/kubevirt/blob/master/docs/getting-started.md).
          To learn how to contribute, please read our [contribution guide](https://github.com/kubevirt/kubevirt/blob/master/CONTRIBUTING.md).

          You can learn more about how KubeVirt is designed (and why it is that way),
          and learn more about the major components by taking a look at our developer documentation:

            * [Architecture](https://github.com/kubevirt/kubevirt/blob/master/docs/architecture.md) - High-level view on the architecture
            * [Components](https://github.com/kubevirt/kubevirt/blob/master/docs/components.md) - Detailed look at all components
            * [API Reference](https://github.com/kubevirt/kubevirt/blob/master/https://www.kubevirt.io/api-reference/)

          # Community

          If you got enough of code and want to speak to people, then you got a couple of options:

            * Follow us on [Twitter](https://twitter.com/kubevirt)
            * Chat with us in the #virtualization channel of the [Kubernetes Slack](https://slack.k8s.io/)
            * Discuss with us on the [kubevirt-dev Google Group](https://groups.google.com/forum/#!forum/kubevirt-dev)
            * Stay informed about designs and upcoming events by watching our [community content](https://github.com/kubevirt/community/)

          # License

          KubeVirt is distributed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt).
        displayName: KubeVirt HyperConverged Cluster Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        links:
        - name: KubeVirt project
          url: https://kubevirt.io
        - name: Source Code
          url: https://github.com/kubevirt/hyperconverged-cluster-operator
        maintainers:
        - email: kubevirt-dev@googlegroups.com
          name: KubeVirt project
        maturity: alpha
        provider:
          name: KubeVirt project
        relatedImages:
        - registry.k8s.io/sig-storage/livenessprobe@sha256:88092d100909918ae0a768956cf78c88bc59cd7232720f7cdbdfb5d2e235001e
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d078dc174323407e8cc6f0f9abd4efaac5db27838f1564d0253d5e3233e3f17f
        - quay.io/kubevirt/hostpath-provisioner@sha256:a024ad8d0534d1e3ec6edd9a2a503a2aaa3853bf4c9e3181c6ace559d7cb6b23
        - quay.io/kubevirt/cni-default-plugins@sha256:976a24392c2a096c38c2663d234b2d3131f5c24558889196d30b9ac1b6716788
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97
        - quay.io/kubevirt/virt-handler@sha256:4e4a4c12d5781ebbcb8cbebef6fb2b9cb54b25f3804f1c19bbfd7fdb9dd383cc
        - quay.io/kubevirt/ssp-operator@sha256:7a8d04480403bcbbdd5cd854701013bfe57a4d7ae57aad6e9c83aae331e91bfa
        - quay.io/kubevirt/virt-exportproxy@sha256:fa49d5f034cf56ae73367879660bff402dfea4251db91d33364c376ddfa1e999
        - quay.io/kubevirt/network-passt-binding-cni@sha256:8e9a0fe4c0096abfea49f4eb36038842621bcb770ab6358ff5a6315016b6a243
        - ghcr.io/kubevirt/ipam-controller@sha256:4fdc9c77b9e683f274a31fcb7f6dbcf765799596efd93bc37512fb860f07b02f
        - quay.io/kubevirt/bridge-marker@sha256:bf269af61e618857e7b14439cfc003aac2d65db9ee633147a73f5d9648dab377
        - quay.io/kubevirt/cdi-controller@sha256:a173f818e6e7f2be3db6390b638399dd496bc2b5595550e4381ef9586a81c144
        - quay.io/kubevirt/cdi-importer@sha256:2ab689c89a7c9256fde8ccf7e13a6cfae7c89b7288fc756f139caf5930c39d10
        - quay.io/kubevirt/hyperconverged-cluster-webhook@sha256:5281c95090e27a492beb205c750f7661b15a24b438ceedc2d12c106da160f9fc
        - quay.io/kubevirt/kubemacpool@sha256:f9e5151798acc03798a007eacf51bc7a579c5e5a57851836eae601cc1eaa1c30
        - quay.io/kubevirt/virt-synchronization-controller@sha256:e9a3347c0c140aaf0f4864cca1299db33421ad795c744292322ed4d3e2fbb6f8
        - quay.io/openshift-virtualization/wasp-agent@sha256:eabfa6a425213f520f7a9e5b81b43e8b6430779d42c5c8b1bfd48a4f1730447a
        - ghcr.io/k8snetworkplumbingwg/multus-cni@sha256:a60a21ee1d00c9f215b0b2fa03b3d5e384ab7ddb9ea0d231d36aef220e95a69c
        - quay.io/kubevirt/hostpath-csi-driver@sha256:696e7b6c9fb92353579b8c003a43a27a7d78ce224a8119db3b3997295d330e3c
        - quay.io/kubevirt/virtio-container-disk@sha256:bf2c634591d7fca1b90479785084fa108a66fe9da6777c4312bb4f57cc837faa
        - quay.io/openshift/origin-kube-rbac-proxy@sha256:e2def4213ec0657e72eb790ae8a115511d5b8f164a62d3568d2f1bff189917e8
        - quay.io/kubevirt/aaq-server@sha256:dfb46682eb734e73a1142b9af5f94f2f70aa9a7e04a7c804565f2a89fbf0f989
        - quay.io/kubevirt/cdi-uploadserver@sha256:db3bf75d7a940e545b1a38d0bfff7fdc271cfc1d64a77609e07a5d0f2e6683ad
        - ghcr.io/kubevirt/kubesecondarydns@sha256:f5fe9c98fb6d7e5e57a6df23fe82e43e65db5953d76af44adda9ab40c46ad0bf
        - quay.io/kubevirt/cdi-operator@sha256:8b2028dc3695d1e3ec4b5d3ad0fff4e356f6e22f0c407cc70e5c551a55afaf47
        - ghcr.io/k8snetworkplumbingwg/multus-dynamic-networks-controller@sha256:2a2bb32c0ea8b232b3dbe81c0323a107e8b05f8cad06704fca2efd0d993a87be
        - quay.io/community-operator-pipeline-prod/community-kubevirt-hyperconverged@sha256:4ed2717b6f140841cc75b49adc664641399a05d2bae3455da01280dbee1eeba7
        - registry.k8s.io/coredns/coredns@sha256:a0ead06651cf580044aeb0a0feba63591858fb2e43ade8c9dea45a6a89ae7e5e
        - quay.io/kubevirt/macvtap-cni@sha256:af31faae20c0128a469dd4c1aa866d6bf78d1d2f5972127adf4c9438dcde10f4
        - quay.io/kubevirt/network-passt-binding@sha256:11cf7036b49f30c4f6b5c28feb274ea231533df981a58fce9e191f9f815f0a1c
        - quay.io/kubevirt/aaq-operator@sha256:98c4d2e73c733468f3c4724c72c4d42411f49706cdfa843ce1d507c356621088
        - quay.io/kubevirt/virt-operator@sha256:2d6ed0d12c13d86117d77233ef98626f0418c273e45730e922882ddedac3c4a0
        - quay.io/kubevirt/aaq-controller@sha256:04199fad9d42e0d9206ae042545b48da4c3bf14995d87aa6d8c804b0f9beeea4
        - quay.io/kubevirt/sidecar-shim@sha256:0252893b5cd3df04e417d82a8817b6dc1fc60ef475d73d7e87a36318c3257d0b
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:bc7be893ecc3ad524194aa6573b2f5c06cd469bdf21a500ab6c99c2ba1c4d64d
        - quay.io/kubevirt/virt-exportserver@sha256:371e217b1a7e68722a79203d4251e7034ef8c08e5ef5aec282a93cdcc0014cf7
        - quay.io/kubevirt/cdi-apiserver@sha256:7e36cab28362127345282b5f65ca358607cf275a4eacbfff9bafce18128d58e7
        - quay.io/kubevirt/virt-controller@sha256:8a3788c01a667a4a52bfde3ea284cde459afcf54af2644d0b4e62feb42ec9d97
        - quay.io/kubevirt/virt-launcher@sha256:66f02bfd67bfdbe59ea9c0139270d9efba4e1491e1ef81bccde5bd6c7794333d
        - quay.io/kubevirt-ui/kubevirt-apiserver-proxy@sha256:935475c2850466aa5ac57e4de627fb177515cb2c402a95842ead095d82b6df5f
        - quay.io/kubevirt/kubevirt-template-validator@sha256:87350bb8e68683509b8ffa72738ad719b22f48192b88bc58ab6223980c4ccee9
        - quay.io/kubevirt-ui/kubevirt-plugin@sha256:89269df1481bed69cac7095c8d8d875acbfa238e4b5735ab802cda90c9375a1b
        - quay.io/kubevirt/pr-helper@sha256:812fcb543d7519282607a4da991faaf7c734ff37e0c04dbf1083c9a9430ca168
        - quay.io/kubevirt/cdi-cloner@sha256:ff5c705081d59bc62141138979178ca542ebe31ff29906eca23b6d8b5c89aca0
        - quay.io/kubevirt/hyperconverged-cluster-operator@sha256:78a1a9f656da5dea20022706ebf61982dd9b63dd5cb4dd75ae98d643e671fbde
        - ghcr.io/k8snetworkplumbingwg/ovs-cni-plugin@sha256:435f374b434b3bc70a5cfaba0011fdcf5f433d96b98b06d29306cbd8db3a8c21
        - quay.io/kubevirt/virt-api@sha256:15dcc9da661ff1738fefa5746b22471ac8e954d8e4d3dbd884e8cf399fbbbe6f
        - quay.io/kubevirt/hostpath-provisioner-operator@sha256:ac0c005304acb52033f3c4ad4af2aab81361346d5327c92ec6bcbd98097ae88b
        - quay.io/kubevirt/libguestfs-tools@sha256:677e53432ac080d7b93031d501a9a8f2e6fa35ce67c48f5d43a05967e04467e5
        - quay.io/kubevirt/cdi-uploadproxy@sha256:b6b3cfaad4886faa1762888c0dc92105cc90d678f4ac14e12917af77f49d91a6
        - quay.io/kubevirt/cluster-network-addons-operator@sha256:0ec8c28176c12c2078ef34905c72da3031a9af51f76d4c2d23e22f75e9e1dbee
        - quay.io/kubevirt/virt-artifacts-server@sha256:edd66038da14527b205220e3d208c1bd598b3bed682dbd28413f1e9850e5f116
        version: 1.16.0
      entries:
      - name: kubevirt-hyperconverged-operator.v1.16.0
        version: 1.16.0
      - name: kubevirt-hyperconverged-operator.v1.15.2
        version: 1.15.2
      - name: kubevirt-hyperconverged-operator.v1.15.0
        version: 1.15.0
      - name: kubevirt-hyperconverged-operator.v1.14.0
        version: 1.14.0
      - name: kubevirt-hyperconverged-operator.v1.13.0
        version: 1.13.0
      - name: kubevirt-hyperconverged-operator.v1.12.0
        version: 1.12.0
      - name: kubevirt-hyperconverged-operator.v1.11.1
        version: 1.11.1
      - name: kubevirt-hyperconverged-operator.v1.10.0
        version: 1.10.0
      - name: kubevirt-hyperconverged-operator.v1.9.0
        version: 1.9.0
      - name: kubevirt-hyperconverged-operator.v1.8.2
        version: 1.8.2
      - name: kubevirt-hyperconverged-operator.v1.8.1
        version: 1.8.1
      - name: kubevirt-hyperconverged-operator.v1.8.0
        version: 1.8.0
      - name: kubevirt-hyperconverged-operator.v1.7.0
        version: 1.7.0
      - name: kubevirt-hyperconverged-operator.v1.6.0
        version: 1.6.0
      - name: kubevirt-hyperconverged-operator.v1.5.2
        version: 1.5.2
      - name: kubevirt-hyperconverged-operator.v1.5.1
        version: 1.5.1
      - name: kubevirt-hyperconverged-operator.v1.5.0
        version: 1.5.0
      - name: kubevirt-hyperconverged-operator.v1.4.4
        version: 1.4.4
      - name: kubevirt-hyperconverged-operator.v1.4.3
        version: 1.4.3
      - name: kubevirt-hyperconverged-operator.v1.4.2
        version: 1.4.2
      - name: kubevirt-hyperconverged-operator.v1.4.1
        version: 1.4.1
      - name: kubevirt-hyperconverged-operator.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: community-kubevirt-hyperconverged
    provider:
      name: KubeVirt project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-bamoe-businessautomation: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: bamoe-businessautomation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bamoe-businessautomation-operator.8.0.8-1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"app.kiegroup.org/v2","kind":"KieApp","metadata":{"name":"rhpam-trial"},"spec":{"environment":"rhpam-trial"}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/ibm-bamoe/bamoe-rhel8-operator@sha256:0646da8707d10b3cc2e2344269abd8797db34127a3326bf76bbc1547aa4bbd73
          createdAt: "2025-07-22 17:40:17"
          description: Deploys and manages IBM Business Automation Manager Open Editions
            environment.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["IBM Business Automation Manager
            Open Edition"]'
          repository: https://github.com/kiegroup/kie-cloud-operator
          support: https://www.ibm.com/mysupport
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A project prescription running an IBM BAMOE environment.
            displayName: KieApp
            kind: KieApp
            name: kieapps.app.kiegroup.org
            version: v2
        description: |-
          Deploys and manages IBM Business Automation Manager Open Editions environment.

          * **IBM Process Automation Manager** is a platform for developing containerized microservices and applications that automate business decisions and processes. It includes business process management (BPM), business rules management (BRM), and business resource optimization and complex event processing (CEP) technologies. It also includes a user experience platform to create engaging user interfaces for process and decision services with minimal coding.
        displayName: IBM Business Automation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kieapp
        - pam
        - decision
        - kie
        - cloud
        - bpm
        - process
        - automation
        - operator
        links:
        - name: Product Page
          url: https://ibm.com
        - name: Documentation
          url: https://www.ibm.com/docs/en/ibamoe
        maintainers:
        - email: mysphelp@us.ibm.com
          name: IBM
        maturity: 8.x-stable
        provider:
          name: IBM
        relatedImages:
        - registry.redhat.io/amq7/amq-broker@sha256:792c1cb19e62519cc47d834650fe5a6a6ca589a37d0b53d4f4549e80cabae3f9
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:2f1a7519617b5c0d082f943de0db295370649d968d699d76cfd829f4c9826a0f
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:82d8ebde7eb3ecfbf72e5b71e7e392d3a3597fc084b6cf35e8fec23bfe41210d
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:98e9a6618558bc8a1b9cb91d1c9b3380968d335092f6e953d1abe6af96abf65c
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:b3b7388b3b116ef37aabbb04b5d2c3e36e58d2fc95f1e59795b423010e071fc3
        - registry.redhat.io/openshift4/ose-cli@sha256:b2b93def4eb5edeccfa2d8ba22e493646325842674dff0446b45677bf641a342
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:25025e489c15108edffe5270d257e1ed9be0a67aa067bcfc184647793aac2617
        - registry.redhat.io/ibm-bamoe/bamoe-smartrouter-rhel8@sha256:5ed8821328413ec11859ae317679f0692afff9945f134fc8909e07a3ac387794
        - registry.redhat.io/jboss-datagrid-7/datagrid73-openshift@sha256:4056b1cf8ff5995f56eecfdc087d9ece56a216dba6bd73acc5693f0778e8d573
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:c9f08ddc6111cdd74faa0db5721d5730fc7716fccf4dc2a658595f7e0c184c10
        - registry.redhat.io/ibm-bamoe/bamoe-operator-bundle@sha256:54df7eba0292459c0491ba39c15bfcf793e1c0aef042a4b3f6c587b0d45f77af
        - registry.redhat.io/ibm-bamoe/bamoe-dashbuilder-rhel8@sha256:efa55e17190b0ebe1618452f786876ef354b8fbec25c316aed7ed5bb1ce88116
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:f714b9c1555e7f27a3c9cf2cf687a74188f36b1283d4e09cec4db3c084d9fe64
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-monitoring-rhel8@sha256:ef1d77bb085172f927ee53d1674c85e2acaf1f580d7cad55bae8bf2c33c49c01
        - registry.redhat.io/ibm-bamoe/bamoe-kieserver-rhel8@sha256:01bf97beffb3647968aae052cdd401d6d562c35f3e78ac483dbf55c44a71dc2f
        - registry.redhat.io/ibm-bamoe/bamoe-controller-rhel8@sha256:6cd0f07856d612dca46b0a01a93b796f7a0f112b98cedfd6754f9fd770ee843d
        - registry.redhat.io/rhscl/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/ibm-bamoe/bamoe-businesscentral-rhel8@sha256:c3553707936cb9eee8a6a622643f72c91e1b0c11add5ec9ad5865242a9e133b4
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:a287a2fbaded371b8fcae5e4124b2d905bb228f94da0fc899ca2600b378dca0d
        - registry.redhat.io/ibm-bamoe/bamoe-rhel8-operator@sha256:0646da8707d10b3cc2e2344269abd8797db34127a3326bf76bbc1547aa4bbd73
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:457fc73423fa94591bc7e35729a25c58d3465583afccf342fb338b6e11188575
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:191237ccffc476e764714a69e35d9421dcee5ddd7184442d7a8306a06b97e6bb
        - registry.redhat.io/ibm-bamoe/bamoe-controller-rhel8@sha256:3fcd9ae0bc194c198cbb5ee94272e80f302658733e467766bd1789357e9fd015
        - registry.redhat.io/ibm-bamoe/bamoe-process-migration-rhel8@sha256:3fd45f2dabca7220772d823275a5697b42dd35f53c27671b093117933ef2d4f6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:fb326be806b337b0ae1711f974d15e073aebcbad77aaa1123a63cf4f331da5f2
        version: 8.0.8-1
      entries:
      - name: bamoe-businessautomation-operator.8.0.8-1
        version: 8.0.8-1
      - name: bamoe-businessautomation-operator.8.0.7-2
        version: 8.0.7-2
      - name: bamoe-businessautomation-operator.8.0.7-1
        version: 8.0.7-1
      - name: bamoe-businessautomation-operator.8.0.6-3
        version: 8.0.6-3
      - name: bamoe-businessautomation-operator.8.0.6-2
        version: 8.0.6-2
      - name: bamoe-businessautomation-operator.8.0.6-1
        version: 8.0.6-1
      - name: bamoe-businessautomation-operator.8.0.5-3
        version: 8.0.5-3
      - name: bamoe-businessautomation-operator.8.0.5-2
        version: 8.0.5-2
      - name: bamoe-businessautomation-operator.8.0.5-1
        version: 8.0.5-1
      - name: bamoe-businessautomation-operator.8.0.4-3
        version: 8.0.4-3
      - name: bamoe-businessautomation-operator.8.0.4-2
        version: 8.0.4-2
      - name: bamoe-businessautomation-operator.8.0.4-1
        version: 8.0.4-1
      - name: bamoe-businessautomation-operator.8.0.3-4
        version: 8.0.3-4
      - name: bamoe-businessautomation-operator.8.0.3-3
        version: 8.0.3-3
      - name: bamoe-businessautomation-operator.8.0.3-2
        version: 8.0.3-2
      - name: bamoe-businessautomation-operator.8.0.3-1
        version: 8.0.3-1
      - name: bamoe-businessautomation-operator.8.0.2-3
        version: 8.0.2-3
      - name: bamoe-businessautomation-operator.8.0.2-2
        version: 8.0.2-2
      - name: bamoe-businessautomation-operator.8.0.2-1
        version: 8.0.2-1
      - name: bamoe-businessautomation-operator.8.0.1-2
        version: 8.0.1-2
      - name: bamoe-businessautomation-operator.8.0.1-1
        version: 8.0.1-1
      - name: bamoe-businessautomation-operator.8.0.0-1
        version: 8.0.0-1
      name: 8.x-stable
    defaultChannel: 8.x-stable
    packageName: bamoe-businessautomation-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Keysight
      provider-url: keysight.com
    name: keysight-loadcore-agents
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keysight-loadcore-agents.v0.1.21
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.loadcore.keysight.com/v1alpha1",
                "kind": "Agents",
                "metadata": {
                  "name": "loadcore-agents-sample",
                  "namespace": "keysight-loadcore-agents"
                },
                "spec": {
                  "agents": [
                    {
                      "args": {
                        "adminInterface": "eth0",
                        "middlewareAddr": "nats-core.keysight-wap.svc.cluster.local:4222",
                        "testInterfaces": [
                          "net1"
                        ]
                      },
                      "exposeIngress": true,
                      "lifecycle": {
                        "postStart": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "echo Hello from the postStart handler"
                            ]
                          }
                        },
                        "preStop": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "killall -0 tail"
                            ]
                          }
                        }
                      },
                      "livenessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "initialDelaySeconds": 60
                      },
                      "name": "agent1",
                      "networks": [
                        "keysight-loadcore-agents/loadcore-agent-network"
                      ],
                      "privileged": true,
                      "readinessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 30,
                        "periodSeconds": 20
                      },
                      "replicas": 2,
                      "startupProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 10,
                        "periodSeconds": 5
                      },
                      "terminationMessagePolicy": "FallbackToLogsOnError"
                    },
                    {
                      "args": {
                        "adminInterface": "eth0",
                        "middlewareAddr": "nats-core.keysight-wap.svc.cluster.local:4222",
                        "testInterfaces": [
                          "net1"
                        ]
                      },
                      "exposeIngress": true,
                      "lifecycle": {
                        "postStart": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "echo Hello from the postStart handler"
                            ]
                          }
                        },
                        "preStop": {
                          "exec": {
                            "command": [
                              "/bin/sh",
                              "-c",
                              "killall -0 tail"
                            ]
                          }
                        }
                      },
                      "livenessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "initialDelaySeconds": 60
                      },
                      "name": "agent2",
                      "networks": [
                        "keysight-loadcore-agents/loadcore-agent-network"
                      ],
                      "privileged": true,
                      "readinessProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 30,
                        "periodSeconds": 20
                      },
                      "startupProbe": {
                        "exec": {
                          "command": [
                            "cat",
                            "/dev/termination-log"
                          ]
                        },
                        "failureThreshold": 10,
                        "periodSeconds": 5
                      },
                      "terminationMessagePolicy": "FallbackToLogsOnError"
                    }
                  ],
                  "image": {
                    "registry": "prod.harbor.keysight.digital",
                    "repository": "loadcore/loadcore-agent",
                    "tag": "UBI8-0.1-7d990d7254"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "regcred"
                    }
                  ],
                  "networks": [
                    {
                      "config": "{ \"cniVersion\": \"0.3.1\", \"type\": \"ipvlan\", \"master\": \"ens192\", \"mode\": \"l2\", \"ipam\": { \"type\": \"whereabouts\", \"range\": \"192.168.1.0/24\", \"routes\": [ { \"dst\": \"0.0.0.0/0\" } ] } }",
                      "name": "loadcore-agent-network"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2023-09-19T12:53:55Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Agents
            name: agents.app.loadcore.keysight.com
            version: v1alpha1
        description: Keysight LoadCore Agents Operator
        displayName: Keysight LoadCore Agents Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - loadcore
        - keysight
        links:
        - name: Keysight Loadcore Agents
          url: https://keysight-loadcore-agents.domain
        maintainers:
        - email: vlad.butusina@keysight.com
          name: Vlad Butusina
        maturity: alpha
        provider:
          name: Keysight
          url: keysight.com
        relatedImages:
        - prod.harbor.keysight.digital/loadcore/keysight-loadcore-agents@sha256:f1d1e9f2aca11505407785bc33905744b667bc8aea49df73fcc50db379c0b375
        - registry.connect.redhat.com/loadcore/keysight-loadcore-agents-bundle@sha256:f16fcea424cb7b1eb647f3e9d3c08bd93c8a1b8bb7eab71a4e756da72a7a56a0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0848d89e9f94be04f17beeee75807d7fd11102737e6483ee674f2cf3ae28f213
        version: 0.1.21
      entries:
      - name: keysight-loadcore-agents.v0.1.21
        version: 0.1.21
      name: alpha
    defaultChannel: alpha
    packageName: keysight-loadcore-agents
    provider:
      name: Keysight
      url: keysight.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Solace Corporation
      provider-url: www.solace.com
    name: pubsubplus-eventbroker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pubsubplus-eventbroker-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pubsubplus.solace.com/v1beta1",
                "kind": "PubSubPlusEventBroker",
                "metadata": {
                  "name": "non-ha-standalone-example"
                },
                "spec": {
                  "redundancy": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "true"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.10
          containerImage: registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator@sha256:d68db92bcb217d94dc0ad0a1cea625a0a9c9299d886d325a903163f9f887dcd5
          createdAt: "2025-07-31T19:48:36Z"
          description: The Solace PubSub+ Event Broker Operator deploys and manages
            the lifecycle of PubSub+ Event Brokers
          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"
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
          support: Solace Products
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PubSub+ Event Broker
            displayName: PubSub+ Event Broker
            kind: PubSubPlusEventBroker
            name: pubsubpluseventbrokers.pubsubplus.solace.com
            version: v1beta1
        description: |
          ## Solace PubSub+ Platform
          Solace [PubSub+ Platform](https://solace.com/products/platform/) is a complete event streaming and management platform
          for real-time enterprises. The [PubSub+ Software Event Broker](https://solace.com/products/event-broker/software/) efficiently streams
          event-driven information between applications, IoT devices, and user interfaces running in the cloud, on-premises,
          and in hybrid environments using open APIs and protocols like AMQP, JMS, MQTT, REST and WebSocket.
          It can be installed into a variety of public and private clouds, PaaS, and on-premises environments.
          Event brokers in multiple locations can be linked together in an [Event Mesh](https://solace.com/what-is-an-event-mesh/)
          to dynamically share events across the distributed enterprise.

          ## Solace PubSub+ Event Broker Operator
          Solace Pubsub+ Event Broker Operator automatically deploys and manages PubSub+ Software Event Brokers on Kubernetes and OpenShift environments.

          Features include:
          * Initial deployment configuration: Production-ready HA, non-HA or for developers
          * Rolling update for configuration changes or broker upgrades
          * Prometheus monitoring support

          ## Getting started
          Refer to the [Solace PubSub+ Event Broker Operator Quick Start](https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/README.md)
        displayName: Solace PubSub+ Event Broker Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - solace
        - pubsubplus
        - pubsub+
        - pubsub
        - messaging
        - advanced event broker
        - event broker
        - event mesh
        - event streaming
        - data streaming
        - event integration
        - middleware
        links:
        - name: Operator QuickStart
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart
        - name: Operator Documentation
          url: https://github.com/SolaceProducts/pubsubplus-kubernetes-quickstart/blob/main/docs/EventBrokerOperatorUserGuide.md
        - name: Solace.com
          url: https://solace.com
        - name: Understanding Solace Technology
          url: https://solace.com/products/platform/
        - name: Solace PubSub+ Technical Documentation
          url: https://docs.solace.com/
        - name: Solace Developer Portal
          url: https://www.solace.dev/
        - name: Solace Community
          url: https://solace.community/
        maintainers:
        - email: support@solace.com
          name: Solace R&D
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Solace Corporation
          url: www.solace.com
        relatedImages:
        - registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator-bundle@sha256:85e75ec797f70c5807ec1ea25208cf0bb1990daa05eca9fbc82bc38aa4a840ab
        - registry.connect.redhat.com/solace/pubsubplus-eventbroker-operator@sha256:d68db92bcb217d94dc0ad0a1cea625a0a9c9299d886d325a903163f9f887dcd5
        version: 1.4.0
      entries:
      - name: pubsubplus-eventbroker-operator.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: pubsubplus-eventbroker-operator
    provider:
      name: Solace Corporation
      url: www.solace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Weaveworks
      provider-url: ""
    name: tf-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tf-controller.v0.9.0-rc.8
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"infra.contrib.fluxcd.io/v1alpha1\",\n
            \   \"kind\": \"Terraform\",\n    \"metadata\": {\n        \"name\": \"helloworld-tf\",\n
            \       \"namespace\": \"flux-system\"\n    },\n    \"spec\": {\n        \"interval\":
            \"5m\",\n        \"approvePlan\": \"auto\",\n        \"path\": \"./\",\n
            \       \"sourceRef\": {\n          \"kind\": \"GitRepository\",\n          \"name\":
            \"helloworld\",\n          \"namespace\": \"flux-system\"\n        }      \n
            \   }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: ghcr.io/weaveworks/tf-controller:v0.9.0-rc.8
          description: Weave TF-controller is a Flux controller that brings GitOps
            to Terraform resources.
          operatorframework.io/suggested-namespace: flux-system
          support: Weaveworks
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Terraform
            displayName: Terraform
            kind: Terraform
            name: terraforms.infra.contrib.fluxcd.io
            version: v1alpha1
        description: "**Weave GitOps Terraform Controller** (aka Weave TF-controller)
          is a Flux controller for reconciling Terraform resources in the GitOps way.
          \nWith the power of Flux together with Terraform, TF-controller allows you
          to GitOps-ify infrastructure, \nand application resources, in the Kubernetes
          and Terraform universe, together at your own pace.\n\nTF-controller offers
          many GitOps models:\n  1. **GitOps Automation Model:** GitOps your Terraform
          resources from the provision steps to the enforcement steps, like a whole
          EKS cluster.\n  2. **Hybrid GitOps Automation Model:** GitOps parts of your
          existing infrastructure resources. For example, you have an existing EKS
          cluster. You can choose to GitOps only its nodegroup, or its security group.\n
          \ 3. **State Enforcement Model:** You have a TFSTATE file, and you'd like
          to use GitOps enforce it, without changing anything else.\n  4. **Drift
          Detection Model:** You have a TFSTATE file, and you'd like to use GitOps
          just for drift detection, so you can decide to do things later when a drift
          occurs.\n\nFeatures\n  * GitOps Automation for Terraform\n  * Drift detection\n
          \ * Plan and Manual Approve"
        displayName: Weave GitOps Terraform Controller
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - weave
        - flux
        - cd
        - continuous delivery
        - terraform
        - gitops
        links:
        - name: Weave GitOps Terraform Controller
          url: https://github.com/weaveworks/tf-controller
        - name: Documentation
          url: https://weaveworks.github.io/tf-controller/
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Weaveworks
        relatedImages:
        - ghcr.io/weaveworks/tf-controller:v0.9.0-rc.8
        - quay.io/openshift-community-operators/tf-controller@sha256:cdaeb470d9b331a3fa08167e5c904befb00be983e1354651670e21e13560bf9b
        version: 0.9.0-rc.8
      entries:
      - name: tf-controller.v0.9.0-rc.8
        version: 0.9.0-rc.8
      - name: tf-controller.v0.9.0-rc.3
        version: 0.9.0-rc.3
      name: stable
    defaultChannel: stable
    packageName: tf-controller
    provider:
      name: Weaveworks
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://github.com/medik8s
    name: node-healthcheck-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-healthcheck-operator.v0.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "maxUnhealthy": "49%",
                  "remediationTemplate": {
                    "apiVersion": "poison-pill.medik8s.io/v1alpha1",
                    "kind": "PoisonPillRemediationTemplate",
                    "name": "group-x",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/node-healthcheck-operator:0.1.0-latest
          createdAt: "2021-04-20 12:00:00"
          description: An operator to monitor node healthcheck and remdiate via 3rd
            party providers like poison-pill.
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: This operator deploys the Node Health Check controller and its
          artifacts
        displayName: Node Health Check Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://node-healthcheck-operator.domain
        maintainers:
        - email: medik8s@googlegroups.com
          name: medik8s team
        maturity: alpha
        provider:
          name: medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/medik8s/node-healthcheck-operator:0.1.0-latest
        - quay.io/openshift-community-operators/node-healthcheck-operator@sha256:30264b9f49912cc0e6bed59001869e3168caace20b292c9dad4cc2d4947d289d
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.1.1
      entries:
      - name: node-healthcheck-operator.v0.1.1
        version: 0.1.1
      name: alpha
    - currentCSV: node-healthcheck-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample"
                },
                "spec": {
                  "minHealthy": "51%",
                  "remediationTemplate": {
                    "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                    "kind": "SelfNodeRemediationTemplate",
                    "name": "self-node-remediation-resource-deletion-template",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/node-healthcheck-operator:v0.3.0
          createdAt: "2022-08-24 11:40:38"
          description: Detect failed Nodes and trigger remediation with e.g. Self
            Node Remediation.
          olm.skipRange: '>=0.2.0 <0.3.0'
          operators.operatorframework.io/builder: operator-sdk-v1.18.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Hardware is imperfect, and software contains bugs. When node level failures such as kernel hangs or dead NICs
          occur, the work required from the cluster does not decrease - workloads from affected nodes need to be
          restarted somewhere.

          However some workloads, such as RWO volumes and StatefulSets, may require at-most-one semantics.
          Failures affecting these kind of workloads risk data loss and/or corruption if nodes (and the workloads
          running on them) are assumed to be dead whenever we stop hearing from them. For this reason it is important
          to know that the node has reached a safe state before initiating recovery of the workload.

          Unfortunately it is not always practical to require admin intervention in order to confirm the node’s true status.
          In order to automate the recovery of exclusive workloads, we provide operators for failure detection
          and remediation.

          ### Failure detection: Node Health Check operator
          The “Node Health Check” (NHC) operator checks each Node’s set of
          NodeConditions (eg. NotReady) against the criteria and thresholds defined in
          NodeHealthCheck configuration. If the Node is deemed to be in a failed
          state, NHC will initiate recovery by using the SIG Cluster API's “External
          Remediation” API to instantiate the configured remediation template which
          specifies the mechanism/controller to be used.

          ### Failure handling: Self Node Remediation
          By default NHC depends on the “Self Node Remediation” (SNR) operator, which
          is installed automatically.
          SNR uses watchdog timers and heuristics to ensure nodes enter a safe state
          (no longer hosting workloads) within a known and finite period of time,
          before signaling to the system that all Pods and VolumeAttachments on the
          failed Node are no longer active and can be relocated elsewhere.
          In the case of transient errors, the watchdog’s actions will also result in
          the node rebooting and rejoining the cluster - restoring capacity.
        displayName: Node Health Check Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - NHC
        - Self Node Remediation
        - SNR
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/node-healthcheck-operator
        maintainers:
        - email: medik8s@googlegroups.com
          name: medik8s team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: medik8s
          url: https://github.com/medik8s
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/medik8s/node-healthcheck-operator:v0.3.0
        - quay.io/openshift-community-operators/node-healthcheck-operator@sha256:d7cc6d2575eb252fb3e2468106e801f192da7844b0b153dc3c6a12cf7cc0a8fe
        version: 0.3.0
      entries:
      - name: node-healthcheck-operator.v0.3.0
        version: 0.3.0
      name: candidate
    - currentCSV: node-healthcheck-operator.v0.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample"
                },
                "spec": {
                  "minHealthy": "51%",
                  "remediationTemplate": {
                    "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                    "kind": "SelfNodeRemediationTemplate",
                    "name": "self-node-remediation-automatic-strategy-template",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/plugins: '["node-remediation-console-plugin"]'
          containerImage: quay.io/medik8s/node-healthcheck-operator:v0.10.0
          createdAt: "2025-11-24T11:39:14Z"
          description: Detect failed Nodes and trigger remediation with a remediation
            operator.
          olm.skipRange: '>=0.9.0 <0.10.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Hardware is imperfect, and software contains bugs. When node level failures such as kernel hangs or dead NICs
          occur, the work required from the cluster does not decrease - workloads from affected nodes need to be
          restarted somewhere.

          However some workloads, such as RWO volumes and StatefulSets, may require at-most-one semantics.
          Failures affecting these kind of workloads risk data loss and/or corruption if nodes (and the workloads
          running on them) are assumed to be dead whenever we stop hearing from them. For this reason it is important
          to know that the node has reached a safe state before initiating recovery of the workload.

          Unfortunately it is not always practical to require admin intervention in order to confirm the node’s true status.
          In order to automate the recovery of exclusive workloads, we provide operators for failure detection
          and remediation.

          ### Failure detection: Node Health Check operator
          The “Node Health Check” (NHC) operator checks each Node’s set of
          NodeConditions (eg. NotReady) against the criteria and thresholds defined in
          NodeHealthCheck configuration. If the Node is deemed to be in a failed
          state, NHC will initiate recovery by using the SIG Cluster API's “External
          Remediation” API to instantiate the configured remediation template which
          specifies the mechanism/controller to be used.

          ### Failure handling: External remediators
          There are multiple remediators for handling node failure that we recommend:
          - Self Node Remediation (SNR)
          - Fence Agents Remediation (FAR)
          - Machine Deletion Remediation (MDR)

          #### Self Node Remediation (SNR)
          SNR uses watchdog timers and heuristics to ensure nodes enter a safe state
          (no longer hosting workloads) within a known and finite period of time,
          before signaling to the system that all Pods on the failed Node are no longer active
          and can be relocated elsewhere.
          In the case of transient errors, the watchdog’s actions will also result in
          the node rebooting and rejoining the cluster - restoring capacity.

          #### Fence Agents Remediation (FAR)
          FAR uses well-known agents to fence unhealthy nodes, and eventually FAR remediates the nodes.
          The remediation includes rebooting the unhealthy node using a fence agent,
          and then evicting workloads from the unhealthy node.

          #### Machine Deletion Remediation (MDR)
          MDR is limited to OpenShift, and it uses Machine API for reprovisioning unhealthy nodes by deleting their machines.
        displayName: Node Health Check Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - NHC
        - Self Node Remediation
        - SNR
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/node-healthcheck-operator
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Medik8s
          url: https://github.com/medik8s
        relatedImages:
        - quay.io/medik8s/node-remediation-console:v0.10.1
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/node-healthcheck-operator@sha256:3824834753d392fd0c11d3fedd3055b5adab519a2f2777754296569ea077e675
        - quay.io/medik8s/node-healthcheck-operator:v0.10.0
        version: 0.10.0
      entries:
      - name: node-healthcheck-operator.v0.10.0
        version: 0.10.0
      - name: node-healthcheck-operator.v0.9.0
        version: 0.9.0
      - name: node-healthcheck-operator.v0.8.0
        version: 0.8.0
      - name: node-healthcheck-operator.v0.6.1
        version: 0.6.1
      - name: node-healthcheck-operator.v0.6.0
        version: 0.6.0
      - name: node-healthcheck-operator.v0.5.0
        version: 0.5.0
      - name: node-healthcheck-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: node-healthcheck-operator
    provider:
      name: Medik8s
      url: https://github.com/medik8s
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: lifecycle-agent
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lifecycle-agent.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "ImageBasedUpgrade",
                "metadata": {
                  "name": "upgrade"
                },
                "spec": {
                  "autoRollbackOnFailure": {},
                  "extraManifests": [
                    {
                      "name": "sno-extramanifests",
                      "namespace": "openshift-lifecycle-agent"
                    }
                  ],
                  "oadpContent": [
                    {
                      "name": "oadp-cm-sno-backup",
                      "namespace": "openshift-adp"
                    }
                  ],
                  "seedImageRef": {
                    "image": "quay.io/xyz",
                    "version": "4.16.0"
                  },
                  "stage": "Idle"
                }
              },
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "SeedGenerator",
                "metadata": {
                  "name": "seedimage"
                },
                "spec": {
                  "seedImage": "quay.io/xyz"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
          description: The Lifecycle Agent for OpenShift provides local lifecycle
            management services for Single Node Openshift (SNO) clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-lifecycle-agent
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-lifecycle-agent",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/lifecycle-agent
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ImageBasedUpgrade is the Schema for the ImageBasedUpgrades
              API
            displayName: Image-based Cluster Upgrade
            kind: ImageBasedUpgrade
            name: imagebasedupgrades.lca.openshift.io
            version: v1
          - description: SeedGenerator is the Schema for the seedgenerators API
            displayName: Seed Generator
            kind: SeedGenerator
            name: seedgenerators.lca.openshift.io
            version: v1
        description: |-
          Lifecycle Agent for OpenShift
          The Lifecycle Agent for OpenShift provides local lifecycle management services
          for Single Node Openshift (SNO) clusters.

          You can find additional guidance in the upstream repository: https://github.com/openshift-kni/lifecycle-agent
        displayName: Lifecycle Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - upgrade
        links:
        - name: Lifecycle Agent
          url: https://lifecycle-agent.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/lifecycle-agent-operator-bundle@sha256:251f1b0929695dff69795adbe8aa25da051decab877ea318d8317930c1dd4bb2
        - registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
        - registry.redhat.io/openshift4/recert-rhel9@sha256:db975b2012b3377e24fadbd65a829579cd17eb2db2419781eee7e34c8900f7df
        version: 4.20.0
      entries:
      - name: lifecycle-agent.v4.20.0
        version: 4.20.0
      name: "4.20"
    - currentCSV: lifecycle-agent.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "ImageBasedUpgrade",
                "metadata": {
                  "name": "upgrade"
                },
                "spec": {
                  "autoRollbackOnFailure": {},
                  "extraManifests": [
                    {
                      "name": "sno-extramanifests",
                      "namespace": "openshift-lifecycle-agent"
                    }
                  ],
                  "oadpContent": [
                    {
                      "name": "oadp-cm-sno-backup",
                      "namespace": "openshift-adp"
                    }
                  ],
                  "seedImageRef": {
                    "image": "quay.io/xyz",
                    "version": "4.16.0"
                  },
                  "stage": "Idle"
                }
              },
              {
                "apiVersion": "lca.openshift.io/v1",
                "kind": "SeedGenerator",
                "metadata": {
                  "name": "seedimage"
                },
                "spec": {
                  "seedImage": "quay.io/xyz"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
          description: The Lifecycle Agent for OpenShift provides local lifecycle
            management services for Single Node Openshift (SNO) clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-lifecycle-agent
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-lifecycle-agent",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/lifecycle-agent
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ImageBasedUpgrade is the Schema for the ImageBasedUpgrades
              API
            displayName: Image-based Cluster Upgrade
            kind: ImageBasedUpgrade
            name: imagebasedupgrades.lca.openshift.io
            version: v1
          - description: SeedGenerator is the Schema for the seedgenerators API
            displayName: Seed Generator
            kind: SeedGenerator
            name: seedgenerators.lca.openshift.io
            version: v1
        description: |-
          Lifecycle Agent for OpenShift
          The Lifecycle Agent for OpenShift provides local lifecycle management services
          for Single Node Openshift (SNO) clusters.

          You can find additional guidance in the upstream repository: https://github.com/openshift-kni/lifecycle-agent
        displayName: Lifecycle Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - upgrade
        links:
        - name: Lifecycle Agent
          url: https://lifecycle-agent.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/lifecycle-agent-operator-bundle@sha256:251f1b0929695dff69795adbe8aa25da051decab877ea318d8317930c1dd4bb2
        - registry.redhat.io/openshift4/lifecycle-agent-rhel9-operator@sha256:38cc3c30c2058fe9c2b3eaf39b34ed9effd92e9bc3d04025813c6ce0a6cafd39
        - registry.redhat.io/openshift4/recert-rhel9@sha256:db975b2012b3377e24fadbd65a829579cd17eb2db2419781eee7e34c8900f7df
        version: 4.20.0
      entries:
      - name: lifecycle-agent.v4.20.0
        version: 4.20.0
      name: stable
    defaultChannel: stable
    packageName: lifecycle-agent
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/streamshub
    name: amq-streams-console
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-streams-console.v3.0.1-5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
          createdAt: "2025-11-11T16:09:40Z"
          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: "true"
          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.skipRange: '>=2.9.0-0 <3.0.1-5'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:ce399e40e9467bce9b81c8d280d523732ba3e75d8f6c67e15cfcecd1842e024f
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:395103ad8ca8e1d2dcd3f05e7c3cc7abedef65189e008fe2d83928bc29558900
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        version: 3.0.1-5
      entries:
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: alpha
    - currentCSV: amq-streams-console.v2.8.0-13-0.1738265629.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:1b1b80710885b43600e22ff2a24930b5cab06cd91fad439ad8a282c00b4564b9
          createdAt: "2024-11-12T15:34:06Z"
          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: "true"
          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.substitutesFor: amq-streams-console.v2.8.0-13
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/2.8
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.23.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:366d60ff48fb9ba32dc73d92a775046d7b1eb1df21c93e31605372c7858f16ca
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:b83c3263e77904ce1c0f95b7bfab969605c97297a5598fd794d64daf508c52c0
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:1b1b80710885b43600e22ff2a24930b5cab06cd91fad439ad8a282c00b4564b9
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:38b80d81e54d59667c1f7dfa4da4125d5c7430816da130ddc84678a4e3cff6cf
        version: 2.8.0-13+0.1738265629.p
      entries:
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-2.8.x
    - currentCSV: amq-streams-console.v2.9.3-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
          createdAt: "2025-12-09T16:50:20Z"
          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: "true"
          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.skipRange: '>=2.8.0-0 <2.9.3-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/2.9
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:7d2e83b4cd9413f81a3dd196dd9b8585f46bf0ce15de20b064ec9d9184f0c506
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:fc53acbd342d479519c8ebfec15d2b6c46ff9d68b80cd4ccfb6f0232b75e48c3
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:1b10411e7ed6635720b0bc0928ab5b51bcd5f23e42cf6f50dc44428a99cade31
        version: 2.9.3-6
      entries:
      - name: amq-streams-console.v2.9.3-6
        version: 2.9.3-6
      - name: amq-streams-console.v2.9.3-5
        version: 2.9.3-5
      - name: amq-streams-console.v2.9.3-2
        version: 2.9.3-2
      - name: amq-streams-console.v2.9.2-2
        version: 2.9.2-2
      - name: amq-streams-console.v2.9.2-1
        version: 2.9.2-1
      - name: amq-streams-console.v2.9.1-7
        version: 2.9.1-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-2.9.x
    - currentCSV: amq-streams-console.v2.9.3-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
          createdAt: "2025-12-09T16:50:20Z"
          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: "true"
          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.skipRange: '>=2.8.0-0 <2.9.3-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/2.9
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:7d2e83b4cd9413f81a3dd196dd9b8585f46bf0ce15de20b064ec9d9184f0c506
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:fc53acbd342d479519c8ebfec15d2b6c46ff9d68b80cd4ccfb6f0232b75e48c3
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:ef4a363314c508afe5ff15fb43e538704611aba29e9bdeb818546e50a8bd79cb
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:1b10411e7ed6635720b0bc0928ab5b51bcd5f23e42cf6f50dc44428a99cade31
        version: 2.9.3-6
      entries:
      - name: amq-streams-console.v2.9.3-6
        version: 2.9.3-6
      - name: amq-streams-console.v2.9.3-5
        version: 2.9.3-5
      - name: amq-streams-console.v2.9.3-2
        version: 2.9.3-2
      - name: amq-streams-console.v2.9.2-2
        version: 2.9.2-2
      - name: amq-streams-console.v2.9.2-1
        version: 2.9.2-1
      - name: amq-streams-console.v2.9.1-7
        version: 2.9.1-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-2.x
    - currentCSV: amq-streams-console.v3.0.1-5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
          createdAt: "2025-11-11T16:09:40Z"
          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: "true"
          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.skipRange: '>=2.9.0-0 <3.0.1-5'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:ce399e40e9467bce9b81c8d280d523732ba3e75d8f6c67e15cfcecd1842e024f
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:395103ad8ca8e1d2dcd3f05e7c3cc7abedef65189e008fe2d83928bc29558900
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:baa3cfb9a2a708db04a30ca86f105567d4084238ba6a390dbcba3313e68107f6
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:c46d792cbb95b26679150c6733251d838b281da28f1925c8270201560cb357bc
        version: 3.0.1-5
      entries:
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-3.0.x
    - currentCSV: amq-streams-console.v3.1.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
          createdAt: "2025-12-04T18:26:37Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:bb7b7b7936d953e4d320d964defd5931bd6b9a07dd73ed3bbcf3ebaea59ea6f1
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:9038f28c2e875eea355957375dff6827fe463bd28b299a4231714311622ded19
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
        version: 3.1.0-4
      entries:
      - name: amq-streams-console.v3.1.0-4
        version: 3.1.0-4
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-3.1.x
    - currentCSV: amq-streams-console.v3.1.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
          createdAt: "2025-12-04T18:26:37Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:9038f28c2e875eea355957375dff6827fe463bd28b299a4231714311622ded19
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:bb7b7b7936d953e4d320d964defd5931bd6b9a07dd73ed3bbcf3ebaea59ea6f1
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        version: 3.1.0-4
      entries:
      - name: amq-streams-console.v3.1.0-4
        version: 3.1.0-4
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: amq-streams-3.x
    - currentCSV: amq-streams-console.v3.1.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"console.streamshub.github.com/v1alpha1",
                "kind":"Console",
                "metadata":{
                  "name":"example-console"
                },
                "spec":{
                  "hostname": "<console-hostname-for-ingress>",
                  "kafkaClusters": [
                    {
                      "name": "<strimzi-kafka-resource-name>",
                      "namespace": "<strimzi-kafka-resource-namespace>",
                      "listener": "<strimzi-kafka-listener-name>",
                      "credentials": {
                        "kafkaUser": {
                          "name": "<strimzi-kafka-user-name-for-connection>"
                        }
                      }
                    }
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "example-console": {
                "description": "Example Console instance with reference to on-cluster Strimzi Kafka resource"
              }
            }
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
          createdAt: "2025-12-04T18:26:37Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          repository: https://github.com/streamshub/console
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Console deployment
            displayName: Console
            kind: Console
            name: consoles.console.streamshub.github.com
            version: v1alpha1
        description: |-
          The Red Hat streams for Apache Kafka Console provides a web-based user interface tool for monitoring Apache Kafka® instances within an OpenShift cluster.

          It features a user-friendly way to view Kafka topics and consumer groups, facilitating the searching and filtering of streamed messages. The console also offers insights into Kafka broker disk usage, helping administrators monitor and optimize resource utilization. By simplifying complex Kafka operations, the streams for Apache Kafka Console enhances the efficiency and effectiveness of data streaming management within OpenShift environments.
        displayName: Streams for Apache Kafka Console
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        - web
        - console
        - ui
        - user interface
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        provider:
          name: Red Hat
          url: https://github.com/streamshub
        relatedImages:
        - registry.redhat.io/amq-streams/console-rhel9-operator@sha256:be1ff58044655db70dbce1b2dbed55a8d4f912e13d92ba70e33f36b476564f61
        - registry.redhat.io/amq-streams/console-ui-rhel9@sha256:bb7b7b7936d953e4d320d964defd5931bd6b9a07dd73ed3bbcf3ebaea59ea6f1
        - registry.redhat.io/amq-streams/console-api-rhel9@sha256:5cc350a0fe77fcb0a80f7ad37048624061a163a6a0d9c92f4469e3ce48c6a6f2
        - registry.redhat.io/amq-streams/console-operator-bundle@sha256:9038f28c2e875eea355957375dff6827fe463bd28b299a4231714311622ded19
        version: 3.1.0-4
      entries:
      - name: amq-streams-console.v3.1.0-4
        version: 3.1.0-4
      - name: amq-streams-console.v3.0.1-5
        version: 3.0.1-5
      - name: amq-streams-console.v3.0.1-3
        version: 3.0.1-3
      - name: amq-streams-console.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-console.v3.0.0-10
        version: 3.0.0-10
      - name: amq-streams-console.v3.0.0-7
        version: 3.0.0-7
      - name: amq-streams-console.v2.9.1-5
        version: 2.9.1-5
      - name: amq-streams-console.v2.9.1-2
        version: 2.9.1-2
      - name: amq-streams-console.v2.9.0-8
        version: 2.9.0-8
      - name: amq-streams-console.v2.9.0-6
        version: 2.9.0-6
      - name: amq-streams-console.v2.9.0-5
        version: 2.9.0-5
      - name: amq-streams-console.v2.9.0-3
        version: 2.9.0-3
      - name: amq-streams-console.v2.8.0-13
        version: 2.8.0-13
      - name: amq-streams-console.v2.8.0-13-0.1738265629.p
        version: 2.8.0-13+0.1738265629.p
      name: stable
    defaultChannel: stable
    packageName: amq-streams-console
    provider:
      name: Red Hat
      url: https://github.com/streamshub
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: ""
    name: runtime-component-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runtime-component.v0.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: registry.connect.redhat.com/ibm/runtime-component-operator@sha256:d37b3f62575c9ad1ffcb22c89e2c3886275c326bf27aa49fb1808acba475853d
          createdAt: "2022-03-25T14:00:00Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          olm.skipRange: <0.8.1
          operators.operatorframework.io/builder: operator-sdk-v1.6.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          This advanced Operator is capable of deploying any runtime component image with consistent, production-grade QoS. It enables enterprise architects to govern the way their applications get deployed & managed in the cluster, while dramatically reducing the learning curve for developers to deploy into Kubernetes - allowing them to focus on writing the code!
          Here are some key features:

          #### Application Lifecyle
          You can deploy your runtime component container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the Operator will watch for any updates and will re-deploy the modified image.

          #### Custom RBAC
          This Operator is capable of using a custom ServiceAccount from the caller, allowing it to follow RBAC restrictions. By default it creates a ServiceAccount if one is not specified, which can also be bound with specific roles.

          #### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as: labels, annotations, and environment variables from a ConfigMap, a Secret or a value.

          #### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configuration, such as TLS settings, are also easily enabled.

          #### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto scaling to create (and delete) instances based on resource consumption.

          #### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you.
          This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart.
          We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.

          #### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating kubernetes Secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to its required services without any intervention or interruption.

          #### Exposing metrics to Prometheus
          The Runtime Component Operator exposes the runtime container's metrics via the Prometheus Operator.
          You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `spec.monitoring` field to control configurations such as the poll interval and security credentials.

          #### Easily mount logs and transaction directories
          If you need to mount the logs and transaction data from your runtime component to an external volume such as NFS (or any storage supported in your cluster), simply add the following (to specify the volume size and the location to persist) to your RuntimeComponent CR:
          ``` storage: size: 2Gi mountPath: "/logs" ```

          #### Integration with OpenShift Serverless
          Deploy your serverless runtime component using a single toggle.  The Operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing your pod to automatically scale to 0 when it is idle.

          #### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and how they are connected.

          See our [**documentation**](https://github.com/application-stacks/runtime-component-operator/tree/main/doc/) for more information.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://github.com/application-stacks/runtime-component-operator/tree/main/doc
        - name: Repository
          url: https://github.com/application-stacks/runtime-component-operator
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: beta
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator@sha256:d37b3f62575c9ad1ffcb22c89e2c3886275c326bf27aa49fb1808acba475853d
        - registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:4603bf04e53ce948bbf0ee5d239d5e265b40598044ef9e1f4539f4e466e59cb2
        version: 0.8.1
      entries:
      - name: runtime-component.v0.8.1
        version: 0.8.1
      - name: runtime-component.v0.8.0
        version: 0.8.0
      name: beta2
    - currentCSV: runtime-component.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:1b818f1a9c27baab6a39ae42d86f78bac085d772cae5cd97b357d0ee5799cf85
          createdAt: "2023-08-28T16:46:50Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          olm.skipRange: '>=0.8.0 <1.2.2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:a178716e62ab8a752bcb9023ad9631af2dbc72357266cd13b43398e21f230828
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02
        - icr.io/appcafe/runtime-component-operator@sha256:1b818f1a9c27baab6a39ae42d86f78bac085d772cae5cd97b357d0ee5799cf85
        version: 1.2.2
      entries:
      - name: runtime-component.v1.2.2
        version: 1.2.2
      name: v1.2
    - currentCSV: runtime-component.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  },
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:682c5cb3e24566bf2933b1d4a4f6bf520d9b546edcedc1ee3214ec1ac4d48629
          createdAt: "2024-08-01T20:26:42Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.3.3'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:c5288fea5b2ef8125f7b1ff7f7633eccd4e52d14ac9cfc5e473c2e317018ca3d
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91
        - icr.io/appcafe/runtime-component-operator@sha256:682c5cb3e24566bf2933b1d4a4f6bf520d9b546edcedc1ee3214ec1ac4d48629
        version: 1.3.3
      entries:
      - name: runtime-component.v1.3.3
        version: 1.3.3
      name: v1.3
    - currentCSV: runtime-component.v1.4.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  },
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:6f527c5173421c28d175b42d8c690eb63c4d1c5092c31d5350fd7a5e93661eaa
          createdAt: "2025-07-18T20:38:10Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.4.4'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:704925128f81d4ffadc4dcfaa69fc8011cf3d0f431d24222a8d7a03bad675331
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3
        - icr.io/appcafe/runtime-component-operator@sha256:6f527c5173421c28d175b42d8c690eb63c4d1c5092c31d5350fd7a5e93661eaa
        version: 1.4.4
      entries:
      - name: runtime-component.v1.4.4
        version: 1.4.4
      name: v1.4
    - currentCSV: runtime-component.v1.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "service": {
                    "port": 9443
                  },
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeComponent",
                "metadata": {
                  "name": "runtimecomponent-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "rc.app.stacks/v1beta2",
                "kind": "RuntimeOperation",
                "metadata": {
                  "name": "runtimeoperation-sample"
                },
                "spec": {
                  "command": [
                    "./your_script.sh"
                  ],
                  "containerName": "app",
                  "podName": "Specify_Pod_Name_Here"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/runtime-component-operator@sha256:38959a0d24fdbaca34903095e21f263d9b8ed774b7b86d5fc0cebb53b274e012
          createdAt: "2025-12-08T16:01:38Z"
          description: Deploys any runtime component with dynamic and auto-tuning
            configuration
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.5.2'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/application-stacks/runtime-component-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1
          - description: Represents the deployment of a runtime component
            displayName: RuntimeComponent
            kind: RuntimeComponent
            name: runtimecomponents.rc.app.stacks
            version: v1beta2
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1
          - description: Day-2 operation to execute on an instance of runtime component
            displayName: RuntimeOperation
            kind: RuntimeOperation
            name: runtimeoperations.rc.app.stacks
            version: v1beta2
        description: |
          Runtime Component Operator allows you to deploy and manage any runtime components securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform day-2 operations using the operator.
          ## Documentation
          See our user guide [here](https://ibm.biz/rco-docs). If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/rco-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Exposing metrics to Prometheus
          Expose the application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the RuntimeComponent's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the RuntimeComponent's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless runtime component using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Application Lifecycle
          You can deploy your application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the runtime component.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Runtime Component
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Runtime Component
        - Application Runtime
        - Application
        - Node
        - Swift
        - MicroProfile
        - Spring
        - Java
        - Runtime
        - Open Source
        - Application Stacks
        - RCO
        links:
        - name: Documentation
          url: https://ibm.biz/rco-docs
        - name: Repository
          url: https://ibm.biz/rco-repo
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: stable
        provider:
          name: Community
        relatedImages:
        - registry.connect.redhat.com/ibm/runtime-component-operator-bundle@sha256:71533cea0d96615d3ffbbb3d7abb4dc378fa83393ba93dc1310883e74c05e3ac
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f
        - icr.io/appcafe/runtime-component-operator@sha256:38959a0d24fdbaca34903095e21f263d9b8ed774b7b86d5fc0cebb53b274e012
        version: 1.5.2
      entries:
      - name: runtime-component.v1.5.2
        version: 1.5.2
      name: v1.5
    defaultChannel: v1.5
    packageName: runtime-component-operator-certified
    provider:
      name: Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Seldon Technologies
      provider-url: ""
    name: seldon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: seldon-operator.v1.14.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machinelearning.seldon.io/v1",
                "kind": "SeldonDeployment",
                "metadata": {
                  "labels": {
                    "app": "seldon",
                    "app.kubernetes.io/instance": "seldon1",
                    "app.kubernetes.io/name": "seldon",
                    "app.kubernetes.io/version": "v0.5"
                  },
                  "name": "seldon-model"
                },
                "spec": {
                  "name": "test-deployment",
                  "predictors": [
                    {
                      "componentSpecs": [
                        {
                          "spec": {
                            "containers": [
                              {
                                "image": "seldonio/mock_classifier:1.6.0",
                                "name": "classifier"
                              }
                            ]
                          }
                        }
                      ],
                      "graph": {
                        "children": [],
                        "name": "classifier",
                        "type": "MODEL"
                      },
                      "name": "example",
                      "replicas": 1
                    }
                  ]
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: AI/Machine Learning
          certified: "false"
          containerImage: docker.io/seldonio/seldon-core-operator:1.14.1
          createdAt: "2019-05-21 15:00:00"
          description: The Seldon operator for management, monitoring and operations
            of machine learning systems through the Seldon Engine. Once installed,
            the Seldon Operator provides multiple functions which facilitate the productisation,
            monitoring and maintenance of machine learning systems at scale.
          olm.skipRange: <1.13.1
          operators.operatorframework.io/builder: operator-sdk-v1.22.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/SeldonIO/seldon-core
          support: Clive Cox
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A seldon engine deployment
            displayName: Seldon Deployment
            kind: SeldonDeployment
            name: seldondeployments.machinelearning.seldon.io
            version: v1
        description: "The Seldon operator enables for native operation of production
          machine learning workloads, including monitoring and operations of language-agnostic
          models with the benefits of real-time metrics and log analysis.\n   \n##
          Overview\nSeldon Core is an open source platform for deploying machine learning
          models on a Kubernetes cluster.\n\n* Deploy machine learning models in the
          cloud or on-premise.\n* Get metrics and ensure proper governance and compliance
          for your running machine learning models.\n* Create powerful inference graphs
          made up of multiple components.\n* Provide a consistent serving layer for
          models built using heterogeneous ML toolkits.\n\nYou can get started by
          following the guides in our documentation at https://docs.seldon.io/projects/seldon-core/en/latest/workflow/README.html\n"
        displayName: Seldon Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mlops
        - aiops
        - production
        - monitoring
        links:
        - name: Website
          url: https://www.seldon.io/
        - name: Documentation
          url: https://docs.seldon.io/projects/seldon-core/en/latest/
        maintainers:
        - email: hello@seldon.io
          name: Seldon Technologies
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Seldon Technologies
        relatedImages:
        - docker.io/seldonio/seldon-core-operator:1.14.1
        - quay.io/openshift-community-operators/seldon-operator@sha256:864e87ef21e81624010a1cbcee6b17c8c816dcb0a699c66badd32eec3baf39fd
        - ""
        version: 1.14.1
      entries:
      - name: seldon-operator.v1.14.1
        version: 1.14.1
      name: stable
    defaultChannel: stable
    packageName: seldon-operator
    provider:
      name: Seldon Technologies
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Backube
      provider-url: https://github.com/backube
    name: snapscheduler
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: snapscheduler.v3.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "snapscheduler.backube/v1",
                "kind": "SnapshotSchedule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "snapscheduler",
                    "app.kubernetes.io/instance": "daily",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "snapshotschedule",
                    "app.kubernetes.io/part-of": "snapscheduler"
                  },
                  "name": "daily"
                },
                "spec": {
                  "retention": {
                    "maxCount": 7
                  },
                  "schedule": "0 0 * * *"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          certified: "false"
          containerImage: quay.io/backube/snapscheduler:3.5.0
          createdAt: "2025-05-14T14:46:43Z"
          description: The SnapScheduler operator takes snapshots of Kubernetes CSI-based
            persistent volumes according to user-supplied schedules.
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/snapscheduler
          support: https://github.com/backube/snapscheduler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SnapshotSchedule defines a schedule for taking automated
              snapshots of PVC(s)
            displayName: Snapshot Schedule
            kind: SnapshotSchedule
            name: snapshotschedules.snapscheduler.backube
            version: v1
        description: |-
          ## About this operator

          The SnapScheduler operator takes snapshots of CSI-based PersistentVolumes
          according to a configurable
          [Cron-like](https://en.wikipedia.org/wiki/Cron#Overview) schedule. The
          schedules include configurable retention policies for snapshots as well as
          selectors to limit the volumes that are snapshotted. An example schedule
          could be:

          > *Snapshot **all volumes** in a namespace **daily at midnight**, retaining
          > the most recent **7** snapshots for each volume.*

          Multiple schedules can be combined to provide more elaborate protection
          schemes. For example, a given volume (or collection of volumes) could be
          protected with:

          - 6 hourly snapshots
          - 7 daily snapshots
          - 4 weekly snapshots
          - 12 monthly snapshots

          ### How it works

          The operator watches for `SnapshotSchedule` CRs in each namespace. When the
          current time matches the schedule's cronspec, the operator creates a
          `VolumeSnapshot` object for each `PersistentVolumeClaim` in the namespace
          (or subset thereof if a label selector is provided). The `VolumeSnapshot`
          objects are named according to the template:
          `<pvcname>-<schedulename>-<timestamp>`. After creating the new snapshots,
          the oldest snapshots are removed if necessary, according to the retention
          policy of the schedule.

          Please see the [full
          documentation](https://backube.github.io/snapscheduler/) for more
          information.

          ## Requirements

          - OpenShift >= 4.7 (Kubernetes >= 1.20)
          - CSI-based storage driver that supports snapshots (i.e. has the
            `CREATE_DELETE_SNAPSHOT` capability)

          ## Examples

          The schedule for snapshotting is controlled by the
          `snapshotschedules.snapscheduler.backube` Custom Resource. This is a
          namespaced resource that applies only to the PersistentVolumeClaims in its
          namespace.

          Below is a simple example that keeps 7 daily (taken at midnight) snapshots
          of all PVCs in a given namespace:

          ```yaml
          ---
          apiVersion: snapscheduler.backube/v1
          kind: SnapshotSchedule
          metadata:
            name: daily
          spec:
            retention:
              maxCount: 7
            schedule: "0 0 * * *"
          ```

          See the [usage
          documentation](https://backube.github.io/snapscheduler/usage.html) for full
          details, including how to:

          - add label selectors to restrict which PVCs this schedule applies to
          - set the VolumeSnapshotClass used by the schedule
          - apply custom labels to the automatically created VolumeSnapshot objects
        displayName: SnapScheduler
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - snapshot
        - storage
        - scheduler
        links:
        - name: Documentation
          url: https://backube.github.io/snapscheduler/
        - name: Source
          url: https://github.com/backube/snapscheduler
        - name: Blog
          url: https://backube.github.io/
        maintainers:
        - email: jstrunk@redhat.com
          name: John Strunk
        maturity: stable
        minKubeVersion: 1.20.0-0
        provider:
          name: Backube
          url: https://github.com/backube
        relatedImages:
        - quay.io/community-operator-pipeline-prod/snapscheduler@sha256:53902ba6ef33ee750285bdeacc6701027d90dada0184fd162c7a587cfdb57585
        - quay.io/backube/snapscheduler:3.5.0
        - quay.io/brancz/kube-rbac-proxy:v0.19.1
        version: 3.5.0
      entries:
      - name: snapscheduler.v3.5.0
        version: 3.5.0
      - name: snapscheduler.v3.4.0
        version: 3.4.0
      - name: snapscheduler.v3.3.0
        version: 3.3.0
      - name: snapscheduler.v3.2.0
        version: 3.2.0
      - name: snapscheduler.v3.1.0
        version: 3.1.0
      - name: snapscheduler.v3.0.0
        version: 3.0.0
      - name: snapscheduler.v2.1.0
        version: 2.1.0
      - name: snapscheduler.v2.0.0
        version: 2.0.0
      name: candidate
    - currentCSV: snapscheduler.v3.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "snapscheduler.backube/v1",
                "kind": "SnapshotSchedule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "snapscheduler",
                    "app.kubernetes.io/instance": "daily",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "snapshotschedule",
                    "app.kubernetes.io/part-of": "snapscheduler"
                  },
                  "name": "daily"
                },
                "spec": {
                  "retention": {
                    "maxCount": 7
                  },
                  "schedule": "0 0 * * *"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          certified: "false"
          containerImage: quay.io/backube/snapscheduler:3.5.0
          createdAt: "2025-05-14T14:46:43Z"
          description: The SnapScheduler operator takes snapshots of Kubernetes CSI-based
            persistent volumes according to user-supplied schedules.
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/snapscheduler
          support: https://github.com/backube/snapscheduler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SnapshotSchedule defines a schedule for taking automated
              snapshots of PVC(s)
            displayName: Snapshot Schedule
            kind: SnapshotSchedule
            name: snapshotschedules.snapscheduler.backube
            version: v1
        description: |-
          ## About this operator

          The SnapScheduler operator takes snapshots of CSI-based PersistentVolumes
          according to a configurable
          [Cron-like](https://en.wikipedia.org/wiki/Cron#Overview) schedule. The
          schedules include configurable retention policies for snapshots as well as
          selectors to limit the volumes that are snapshotted. An example schedule
          could be:

          > *Snapshot **all volumes** in a namespace **daily at midnight**, retaining
          > the most recent **7** snapshots for each volume.*

          Multiple schedules can be combined to provide more elaborate protection
          schemes. For example, a given volume (or collection of volumes) could be
          protected with:

          - 6 hourly snapshots
          - 7 daily snapshots
          - 4 weekly snapshots
          - 12 monthly snapshots

          ### How it works

          The operator watches for `SnapshotSchedule` CRs in each namespace. When the
          current time matches the schedule's cronspec, the operator creates a
          `VolumeSnapshot` object for each `PersistentVolumeClaim` in the namespace
          (or subset thereof if a label selector is provided). The `VolumeSnapshot`
          objects are named according to the template:
          `<pvcname>-<schedulename>-<timestamp>`. After creating the new snapshots,
          the oldest snapshots are removed if necessary, according to the retention
          policy of the schedule.

          Please see the [full
          documentation](https://backube.github.io/snapscheduler/) for more
          information.

          ## Requirements

          - OpenShift >= 4.7 (Kubernetes >= 1.20)
          - CSI-based storage driver that supports snapshots (i.e. has the
            `CREATE_DELETE_SNAPSHOT` capability)

          ## Examples

          The schedule for snapshotting is controlled by the
          `snapshotschedules.snapscheduler.backube` Custom Resource. This is a
          namespaced resource that applies only to the PersistentVolumeClaims in its
          namespace.

          Below is a simple example that keeps 7 daily (taken at midnight) snapshots
          of all PVCs in a given namespace:

          ```yaml
          ---
          apiVersion: snapscheduler.backube/v1
          kind: SnapshotSchedule
          metadata:
            name: daily
          spec:
            retention:
              maxCount: 7
            schedule: "0 0 * * *"
          ```

          See the [usage
          documentation](https://backube.github.io/snapscheduler/usage.html) for full
          details, including how to:

          - add label selectors to restrict which PVCs this schedule applies to
          - set the VolumeSnapshotClass used by the schedule
          - apply custom labels to the automatically created VolumeSnapshot objects
        displayName: SnapScheduler
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - snapshot
        - storage
        - scheduler
        links:
        - name: Documentation
          url: https://backube.github.io/snapscheduler/
        - name: Source
          url: https://github.com/backube/snapscheduler
        - name: Blog
          url: https://backube.github.io/
        maintainers:
        - email: jstrunk@redhat.com
          name: John Strunk
        maturity: stable
        minKubeVersion: 1.20.0-0
        provider:
          name: Backube
          url: https://github.com/backube
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.19.1
        - quay.io/community-operator-pipeline-prod/snapscheduler@sha256:53902ba6ef33ee750285bdeacc6701027d90dada0184fd162c7a587cfdb57585
        - quay.io/backube/snapscheduler:3.5.0
        version: 3.5.0
      entries:
      - name: snapscheduler.v3.5.0
        version: 3.5.0
      - name: snapscheduler.v3.4.0
        version: 3.4.0
      - name: snapscheduler.v3.3.0
        version: 3.3.0
      - name: snapscheduler.v3.2.0
        version: 3.2.0
      - name: snapscheduler.v3.1.0
        version: 3.1.0
      - name: snapscheduler.v3.0.0
        version: 3.0.0
      - name: snapscheduler.v2.1.0
        version: 2.1.0
      - name: snapscheduler.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: snapscheduler
    provider:
      name: Backube
      url: https://github.com/backube
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/securesign/secure-sign-operator
    name: rhtas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhtas-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": {
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname-intermediate",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname-leaf",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname-root",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname-intermediate",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname-leaf",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname-root",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": {
                  "database": {
                    "create": true
                  },
                  "server": {
                    "replicas": 1
                  },
                  "signer": {
                    "replicas": 1
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
          createdAt: "2025-11-21T12:45:10Z"
          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: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.1-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        version: 1.3.1
      entries:
      - name: rhtas-operator.v1.3.1
        version: 1.3.1
      - name: rhtas-operator.v1.3.0
        version: 1.3.0
      - name: rhtas-operator.v1.2.1
        version: 1.2.1
      - name: rhtas-operator.v1.2.0
        version: 1.2.0
      - deprecation:
          message: rhtas-operator.v1.1.2 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.2
        version: 1.1.2
      - deprecation:
          message: rhtas-operator.v1.1.1 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.1
        version: 1.1.1
      - deprecation:
          message: rhtas-operator.v1.1.0 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.0
        version: 1.1.0
      name: stable
    - currentCSV: rhtas-operator.v1.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": null,
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:e52d07e2cd8cbdc2ccd0336a4fd29cbb2e5b8a1be628350294a54579cc2636ed
          createdAt: "2025-04-08T09:29:59Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:75f1049431f9e92898a4217870309cbbb3b39c8362e929c0bad3b53cad4459db
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:e52d07e2cd8cbdc2ccd0336a4fd29cbb2e5b8a1be628350294a54579cc2636ed
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:329a0dad7842d4ef60430b0e3f188231bea9e579427443ecd42eb62a5c282266
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:7ce611aefdfedd8b2a633def482cf41f390c95b8f8c800b6163a585f117a9e2e
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:09b8259ec9e982a33bde84c7c901ad70c79f3e5f6dd7880b1b1e573dafcbd56c
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:dc994a95be22b0f4bab022fc362c4f44c6a7d1887a2eb0d04870d75654ec013b
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:603a2ffa54df0bd45ff42ac710dd16331560eda2be93442232b045c959773c4d
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:540556453c98db3919e5f305a99c699e767e2891a95fe7527ace578f3c67a308
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:76c24a38ac89ed632d38e44049f37e4997abfa27fa8cadbb8afb42575031296f
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:571c48ecb2658ce70199c06dc483ea48a16e032a764a6830388ad845f508d981
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:5a752cefdaf28bfc53847185cdd5fef1ee47e3dcff8472f8a8bf7bbdc224ef57
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:775b261b8f258b369213246f2da5c91218678acb5e3b8bb4670b143f487767af
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:796860a3e85712c60398c36983e0ff4d45325c7a4de869da2ebf1b6ba4b19825
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:6131053778ea04e437f3005f90d1138aa11ebc58e3a9295e2a8d8ef6713a52be
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:3b8f49c41df15022f8ffdf3a8f8605b14c14f4e10eae754a06a86b6585d158b3
        - registry.redhat.io/ubi9/httpd-24@sha256:366cc5bc3b96069fecaa0abeb9d3510c507e69a20de1d205d881da8ae8561ab4
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1f5a30a285a16635a7234c3c1763dfb385c8bffd605fc862b782bdb5c6c61ea3
        version: 1.1.2
      deprecation:
        message: stable-v1.1 is no longer supported. Please switch to channel 'stable'
          or channel 'stable-v1.2' for continued support.
      entries:
      - deprecation:
          message: rhtas-operator.v1.1.2 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.2
        version: 1.1.2
      - deprecation:
          message: rhtas-operator.v1.1.1 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.1
        version: 1.1.1
      - deprecation:
          message: rhtas-operator.v1.1.0 is deprecated. Please consider updating for
            continued support.
        name: rhtas-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: rhtas-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": null,
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:7395b169066adc88a530c421ab9534d61bd2a680c61f86b9afabf9cf8bfd4b7e
          createdAt: "2025-08-17T21:52:06Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:6270ba29adf779de5d3916d5e82f1cd9491ba89d4ae2042347b6ad6d1819dd26
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:02fbd4772c185edf38fcee4e5c5e1c9dad82b77c9da824addaebc445b67d35ac
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:640633823a54c11fe2a8b3d05e571399fda415b6f0b3adf1ba9806882a94bdd4
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:7c4e739622f68cd924afcb41cc788cdadc34c725283a097e564d620f39637bac
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:a93df3206409de75613d398e7dcd8b30ff7cc36eb00349c435784f73f00a2335
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:531603563c69aac6905cd6b8157d30781040527404ac2313acba5a9310e0b713
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:fe31830df2d99359749cb86cd1ac2f32fcc3de07aae427d2f2cd3998d31d2833
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:c22cdb9a17f85e13c00412cba83aa644e90a0faea0236029d0f1c53fe212e227
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:7395b169066adc88a530c421ab9534d61bd2a680c61f86b9afabf9cf8bfd4b7e
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:030986ea26f33db3a192c67a93cd2bde352f23c68a17b062fc062955675c3c51
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:fc018a45b7eb48690c46c83f52cac55fa40089e6b02686bc21265dc7c2205b8f
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:09b4aeeb607c88c72f69e6f87cb840c82ef5752c64a58fa13551db749fac2530
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:eb38e98dbb9828fe033a5388609132f7246fe77d2f4d258d015a94ea30752b24
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:1c2201d50469d70ec6e21546c7c74bd52251d420dc1dcfa5375c1cf61dd3a9fd
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:12b438ea70f83ee6edb12c96b507f92510f4afba824eac34c8f50793c4199db6
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:1d782a127d2f8bdab633f287cb2df2e400ae91bf5d4b913473539d8512dfaab6
        - registry.redhat.io/ubi9/httpd-24@sha256:badeee0aa3477e61de64f6a2b93e8a3673edd38fc860125f7536506f3d592132
        version: 1.2.1
      entries:
      - name: rhtas-operator.v1.2.1
        version: 1.2.1
      - name: rhtas-operator.v1.2.0
        version: 1.2.0
      name: stable-v1.2
    - currentCSV: rhtas-operator.v1.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "CTlog",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "ctlog-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Fulcio",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "fulcio-sample"
                },
                "spec": {
                  "certificate": {
                    "commonName": "fulcio.hostname",
                    "organizationEmail": "jdoe@redhat.com",
                    "organizationName": "Red Hat"
                  },
                  "config": {
                    "OIDCIssuers": [
                      {
                        "ClientID": "trusted-artifact-signer",
                        "Issuer": "https://your-oidc-issuer-url",
                        "IssuerURL": "https://your-oidc-issuer-url",
                        "Type": "email"
                      }
                    ]
                  },
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "rekor-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Securesign",
                "metadata": {
                  "annotations": {
                    "rhtas.redhat.com/metrics": "true"
                  },
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "securesign-sample"
                },
                "spec": {
                  "ctlog": {
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "fulcio": {
                    "certificate": {
                      "commonName": "fulcio.hostname",
                      "organizationEmail": "jdoe@redhat.com",
                      "organizationName": "Red Hat"
                    },
                    "config": {
                      "OIDCIssuers": [
                        {
                          "ClientID": "trusted-artifact-signer",
                          "Issuer": "https://your-oidc-issuer-url",
                          "IssuerURL": "https://your-oidc-issuer-url",
                          "Type": "email"
                        }
                      ]
                    },
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "rekor": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "trillian": {
                    "database": {
                      "create": true
                    },
                    "monitoring": {
                      "enabled": true
                    }
                  },
                  "tsa": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "monitoring": {
                      "enabled": true
                    },
                    "ntpMonitoring": {
                      "enabled": true
                    },
                    "signer": {
                      "certificateChain": {
                        "intermediateCA": [
                          {
                            "commonName": "tsa.hostname-intermediate",
                            "organizationEmail": "jdoe@redhat.com",
                            "organizationName": "Red Hat"
                          }
                        ],
                        "leafCA": {
                          "commonName": "tsa.hostname-leaf",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        },
                        "rootCA": {
                          "commonName": "tsa.hostname-root",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      }
                    }
                  },
                  "tuf": {
                    "externalAccess": {
                      "enabled": true
                    },
                    "keys": [
                      {
                        "name": "rekor.pub"
                      },
                      {
                        "name": "ctfe.pub"
                      },
                      {
                        "name": "fulcio_v1.crt.pem"
                      },
                      {
                        "name": "tsa.certchain.pem"
                      }
                    ],
                    "pvc": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "retain": true,
                      "size": "100Mi"
                    },
                    "rootKeySecretRef": {
                      "name": "tuf-root-keys"
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "TimestampAuthority",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhtas-operator",
                    "app.kubernetes.io/instance": "timestampauthority-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "timestampauthority",
                    "app.kubernetes.io/part-of": "rhtas-operator"
                  },
                  "name": "timestampauthority-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "monitoring": {
                    "enabled": true
                  },
                  "ntpMonitoring": {
                    "enabled": true
                  },
                  "signer": {
                    "certificateChain": {
                      "intermediateCA": [
                        {
                          "commonName": "tsa.hostname-intermediate",
                          "organizationEmail": "jdoe@redhat.com",
                          "organizationName": "Red Hat"
                        }
                      ],
                      "leafCA": {
                        "commonName": "tsa.hostname-leaf",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      },
                      "rootCA": {
                        "commonName": "tsa.hostname-root",
                        "organizationEmail": "jdoe@redhat.com",
                        "organizationName": "Red Hat"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Trillian",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "trillian-sample"
                },
                "spec": {
                  "database": {
                    "create": true
                  },
                  "server": {
                    "replicas": 1
                  },
                  "signer": {
                    "replicas": 1
                  }
                }
              },
              {
                "apiVersion": "rhtas.redhat.com/v1alpha1",
                "kind": "Tuf",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "securesign-sample",
                    "app.kubernetes.io/name": "securesign-sample",
                    "app.kubernetes.io/part-of": "trusted-artifact-signer"
                  },
                  "name": "tuf-sample"
                },
                "spec": {
                  "externalAccess": {
                    "enabled": true
                  },
                  "keys": [
                    {
                      "name": "rekor.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "rekor-pub-key"
                      }
                    },
                    {
                      "name": "fulcio_v1.crt.pem",
                      "secretRef": {
                        "key": "cert",
                        "name": "fulcio-pub-key"
                      }
                    },
                    {
                      "name": "ctfe.pub",
                      "secretRef": {
                        "key": "public",
                        "name": "ctlog-pub-key"
                      }
                    },
                    {
                      "name": "tsa.certchain.pem",
                      "secretRef": {
                        "key": "certificateChain",
                        "name": "tsa-cert-chain"
                      }
                    }
                  ],
                  "pvc": {
                    "accessModes": [
                      "ReadWriteMany"
                    ],
                    "retain": true,
                    "size": "100Mi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          containerImage: registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
          createdAt: "2025-11-21T12:45:10Z"
          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: "true"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Artifact Signer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.1-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/securesign/secure-sign-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CTlog is the Schema for the ctlogs API
            displayName: CTlog
            kind: CTlog
            name: ctlogs.rhtas.redhat.com
            version: v1alpha1
          - description: Fulcio is the Schema for the fulcios API
            displayName: Fulcio
            kind: Fulcio
            name: fulcios.rhtas.redhat.com
            version: v1alpha1
          - description: Rekor is the Schema for the rekors API
            displayName: Rekor
            kind: Rekor
            name: rekors.rhtas.redhat.com
            version: v1alpha1
          - description: Securesign is the Schema for the securesigns API
            displayName: Securesign
            kind: Securesign
            name: securesigns.rhtas.redhat.com
            version: v1alpha1
          - description: TimestampAuthority is the Schema for the timestampauthorities
              API
            displayName: Timestamp Authority
            kind: TimestampAuthority
            name: timestampauthorities.rhtas.redhat.com
            version: v1alpha1
          - description: Trillian is the Schema for the trillians API
            displayName: Trillian
            kind: Trillian
            name: trillians.rhtas.redhat.com
            version: v1alpha1
          - description: Tuf is the Schema for the tufs API
            displayName: Tuf
            kind: Tuf
            name: tufs.rhtas.redhat.com
            version: v1alpha1
        description: Red Hat Trusted Artifact Signer enhances software supply chain
          security by simplifying cryptographic signing and verifying of software
          artifacts, such as container images, binaries and documents. Trusted Artifact
          Signer provides a production ready deployment of the Sigstore project within
          an enterprise. Enterprises adopting it can meet signing-related criteria
          for achieving Supply Chain Levels for Software Artifacts (SLSA) compliance
          and have greater confidence in the security and trustworthiness of their
          software supply chains.
        displayName: Red Hat Trusted Artifact Signer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - rhtas
        - trust
        links:
        - name: RHTAS Operator
          url: https://github.com/securesign/secure-sign-operator
        maintainers:
        - email: rcook@redhat.com
          name: Ryan Cook
        - email: tturek@redhat.com
          name: Tomas Turek
        - email: jbouska@redhat.com
          name: Jan Bouska
        - email: gpereira@redhat.com
          name: Gregory Pereira
        - email: japower@redhat.com
          name: Jason Power
        - email: somalley@redhat.com
          name: Sally O'Malley
        - email: tdalton@redhat.com
          name: Tommy Dalton
        - email: lball@redhat.com
          name: Lance Ball
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://github.com/securesign/secure-sign-operator
        relatedImages:
        - registry.redhat.io/rhtas/createtree-rhel9@sha256:be3fcfdbd7a6bae84c2447819e9807aedd36138463b1d73269b3d1814941236b
        - registry.redhat.io/rhtas/rekor-monitor-rhel9@sha256:5f75a027de5949aea7727f0d00761a7f1592dd46cd7fec9638dc3e1ba744eb96
        - registry.redhat.io/rhtas/client-server-rhel9@sha256:cddda466bc9957f1c3902da3a0cf37ef3ec08f4aeb8c50a421405540120b75cf
        - registry.redhat.io/rhtas/trillian-logsigner-rhel9@sha256:9e37877e090ff45151a2906538e833a9dcfbb93f933e687532272c927ead7510
        - registry.redhat.io/openshift4/ose-tools-rhel9@sha256:b2873114e9da894239de944828f07c4fba21aac0224d802acc47aef5ce161b41
        - registry.redhat.io/rhtas/rekor-search-ui-rhel9@sha256:199c8a3ade4bd87affdc5a756bd59ed22fdf579c7b4d2bb800a09da3915a8868
        - registry.redhat.io/rhtas/rhtas-rhel9-operator@sha256:a13ae7d3627f31b42ead652cb55ac9544bd8d8a28359600820b9e4923c4ae0d6
        - registry.redhat.io/rhtas/rekor-backfill-redis-rhel9@sha256:57f1db8dd5e9cb42078a20c065c1f3052175a88d77b656f4c8e903ab40088303
        - registry.redhat.io/rhtas/trillian-redis-rhel9@sha256:58ef574fda207b044885fd26b189408e673c7cd213c2635369ce44418bdc2b69
        - registry.redhat.io/rhtas/fulcio-rhel9@sha256:b19900ebbf9cac67196127a60ea2434a8ce2011b17bab15a0e7fc96cf38a63fa
        - registry.redhat.io/rhtas/trillian-database-rhel9@sha256:5d4406c708b15a517d2da83923651f62a1d9cc6d37e45bc2a42808b69a3d04c4
        - registry.redhat.io/ubi9/httpd-24@sha256:8536169e5537fe6c330eba814248abdcf39cdd8f7e7336034d74e6fda9544050
        - registry.redhat.io/rhtas/certificate-transparency-rhel9@sha256:a9bdf1093c50094bb597961c5f395b51bef3758552d14b8b5bc5bf33006de330
        - registry.redhat.io/rhtas/timestamp-authority-rhel9@sha256:7b3eb9108c50321278ccad2032b3fb365911df83084cca953dd068cdd51f7874
        - registry.redhat.io/rhtas/tuffer-rhel9@sha256:0c69e80b59c34a27080fccd7ee7868b3b28b40cfca16aad10b2bcb435528198a
        - registry.redhat.io/rhtas/segment-reporting-rhel9@sha256:bc19af1e88ca334e7cf1dd9255042986ff472eb28676f321941a2831538466a7
        - registry.redhat.io/rhtas/trillian-logserver-rhel9@sha256:ca6b8828b51a029aa84ebe38f6b58443c85f1614fd24b6de4e82ae2e4dbeecd8
        - registry.redhat.io/rhtas/rhtas-operator-bundle@sha256:1c0f0f18fdb80179d431e0fe63f4517f323b97d4adad556131281efa20798823
        - registry.redhat.io/rhtas/rekor-server-rhel9@sha256:799b0b86f83f0fdf450ecbd2726419570b15f6ec5ba5b814750d45b8269e4dac
        version: 1.3.1
      entries:
      - name: rhtas-operator.v1.3.1
        version: 1.3.1
      - name: rhtas-operator.v1.3.0
        version: 1.3.0
      name: stable-v1.3
    defaultChannel: stable
    packageName: rhtas-operator
    provider:
      name: Red Hat
      url: https://github.com/securesign/secure-sign-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: HashiCorp
      provider-url: https://www.hashicorp.com/
    name: vault-secrets-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vault-secrets-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "secrets.hashicorp.com/v1beta1",
                "kind": "VaultConnection",
                "metadata": {
                  "name": "vaultconnection-sample",
                  "namespace": "tenant-1"
                },
                "spec": {
                  "address": "http://vault.vault.svc.cluster.local:8200"
                }
              },
              {
                "apiVersion": "secrets.hashicorp.com/v1beta1",
                "kind": "VaultAuth",
                "metadata": {
                  "name": "vaultauth-sample",
                  "namespace": "tenant-1"
                },
                "spec": {
                  "vaultConnectionRef": "vaultconnection-sample",
                  "method": "kubernetes",
                  "mount": "kubernetes",
                  "kubernetes": {
                    "role": "sample",
                    "serviceAccount": "default"
                  }
                }
              },
              {
                "apiVersion": "secrets.hashicorp.com/v1beta1",
                "kind": "VaultStaticSecret",
                "metadata": {
                  "name": "vaultstaticsecret-sample",
                  "namespace": "tenant-1"
                },
                "spec": {
                  "vaultAuthRef": "vaultauth-sample",
                  "mount": "kvv2",
                  "type": "kv-v2",
                  "path": "secret",
                  "refreshAfter": "5s",
                  "destination": {
                    "create": true,
                    "name": "secret1"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.connect.redhat.com/hashicorp/vault-secrets-operator@sha256:81f01193c67de89984d51c41d18d807c7e9b44eb949677caa5c191d008cf1562
          createdAt: "2025-12-12T23:37:58Z"
          description: The Vault Secrets Operator (VSO) allows Pods to consume Vault
            secrets natively from Kubernetes Secrets.
          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: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/hashicorp/vault-secrets-operator
          support: HashiCorp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CSISecrets
            name: csisecrets.secrets.hashicorp.com
            version: v1beta1
          - description: HCPAuth is the Schema for the hcpauths API
            displayName: HCPAuth
            kind: HCPAuth
            name: hcpauths.secrets.hashicorp.com
            version: v1beta1
          - description: HCPVaultSecretsApp is the Schema for the hcpvaultsecretsapps
              API
            displayName: HCPVault Secrets App
            kind: HCPVaultSecretsApp
            name: hcpvaultsecretsapps.secrets.hashicorp.com
            version: v1beta1
          - description: SecretTransformation is the Schema for the secrettransformations
              API
            displayName: Secret Transformation
            kind: SecretTransformation
            name: secrettransformations.secrets.hashicorp.com
            version: v1beta1
          - description: VaultAuthGlobal is the Schema for the vaultauthglobals API
            displayName: Vault Auth Global
            kind: VaultAuthGlobal
            name: vaultauthglobals.secrets.hashicorp.com
            version: v1beta1
          - description: VaultAuth is the Schema for the vaultauths API
            displayName: Vault Auth
            kind: VaultAuth
            name: vaultauths.secrets.hashicorp.com
            version: v1beta1
          - description: VaultConnection is the Schema for the vaultconnections API
            displayName: Vault Connection
            kind: VaultConnection
            name: vaultconnections.secrets.hashicorp.com
            version: v1beta1
          - description: VaultDynamicSecret is the Schema for the vaultdynamicsecrets
              API
            displayName: Vault Dynamic Secret
            kind: VaultDynamicSecret
            name: vaultdynamicsecrets.secrets.hashicorp.com
            version: v1beta1
          - description: VaultPKISecret is the Schema for the vaultpkisecrets API
            displayName: Vault PKISecret
            kind: VaultPKISecret
            name: vaultpkisecrets.secrets.hashicorp.com
            version: v1beta1
          - description: VaultStaticSecret is the Schema for the vaultstaticsecrets
              API
            displayName: Vault Static Secret
            kind: VaultStaticSecret
            name: vaultstaticsecrets.secrets.hashicorp.com
            version: v1beta1
        description: |-
          The Vault Secrets Operator (VSO) allows Pods to consume Vault secrets
          natively from Kubernetes Secrets.

          ## Overview

          The Vault Secrets Operator operates by watching for changes to its supported set of Custom Resource Definitions (CRD).
          Each CRD provides the specification required to allow the *Operator* to synchronize a Vault Secrets to a Kubernetes Secret.
          The *Operator* writes the *source* Vault secret data directly to the *destination* Kubernetes Secret, ensuring that any
          changes made to the *source* are replicated to the *destination* over its lifetime. In this way, an application only needs
          to have access to the *destination* secret in order to make use of the secret data contained within.

          See the developer docs for more info [here](https://developer.hashicorp.com/vault/docs/platform/k8s/vso), including
          [examples](https://developer.hashicorp.com/vault/docs/platform/k8s/vso/examples) and a
          [tutorial](https://developer.hashicorp.com/vault/tutorials/kubernetes/vault-secrets-operator)
          for getting started.
        displayName: Vault Secrets Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vault
        - security
        - secrets
        links:
        - name: Vault Secrets Operator
          url: https://github.com/hashicorp/vault-secrets-operator
        - name: Documentation
          url: https://developer.hashicorp.com/vault/docs/platform/k8s/vso
        maintainers:
        - email: support@hashicorp.com
          name: HashiCorp Support
        maturity: stable
        provider:
          name: HashiCorp
          url: https://www.hashicorp.com/
        relatedImages:
        - registry.connect.redhat.com/hashicorp/vault-secrets-operator-bundle@sha256:728c46ce4a9bbf785de180367f43b50ceebdfba815efbe41abe45020361e6ac7
        - registry.connect.redhat.com/hashicorp/vault-secrets-operator@sha256:81f01193c67de89984d51c41d18d807c7e9b44eb949677caa5c191d008cf1562
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:5b333f3daa2eebe3c3a959e30736993d8ebabbe594c6d3f1b7e14296485637d5
        version: 1.1.0
      entries:
      - name: vault-secrets-operator.v1.1.0
        version: 1.1.0
      - name: vault-secrets-operator.v1.0.1
        version: 1.0.1
      - name: vault-secrets-operator.v1.0.0
        version: 1.0.0
      - name: vault-secrets-operator.v0.10.0
        version: 0.10.0
      - name: vault-secrets-operator.v0.9.1
        version: 0.9.1
      - name: vault-secrets-operator.v0.9.0
        version: 0.9.0
      - name: vault-secrets-operator.v0.8.1
        version: 0.8.1
      - name: vault-secrets-operator.v0.8.0
        version: 0.8.0
      - name: vault-secrets-operator.v0.7.0
        version: 0.7.0
      - name: vault-secrets-operator.v0.6.0
        version: 0.6.0
      - name: vault-secrets-operator.v0.5.2
        version: 0.5.2
      - name: vault-secrets-operator.v0.5.1
        version: 0.5.1
      - name: vault-secrets-operator.v0.5.0
        version: 0.5.0
      - name: vault-secrets-operator.v0.4.3
        version: 0.4.3
      name: stable
    defaultChannel: stable
    packageName: vault-secrets-operator
    provider:
      name: HashiCorp
      url: https://www.hashicorp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Strimzi
      provider-url: ""
    name: strimzi-kafka-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: strimzi-cluster-operator.v0.49.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.1.1",
                      "metadataVersion": "4.1-IV1",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.1.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "groupId":"my-connect-group",
                  "configStorageTopic":"my-connect-configs",
                  "statusStorageTopic":"my-connect-status",
                  "offsetStorageTopic":"my-connect-offsets",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.1.1",
                  "replicas": 1,
                  "target": {
                    "alias": "cluster-b",
                    "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                    "groupId":"my-mm2-group",
                    "configStorageTopic":"my-mm2-configs",
                    "statusStorageTopic":"my-mm2-status",
                    "offsetStorageTopic":"my-mm2-offsets",
                    "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                    }
                  },
                  "mirrors": [
                    {
                      "source": {
                        "alias": "cluster-a",
                        "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                      },
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
          createdAt: "2025-11-18 15:11:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * ⚠️ **SECURITY: Strimzi 0.49.1 addresses CVE-2025-66623.**
            **If you use Strimzi 0.47.0 or newer, we recommend upgrading to 0.49.1.**

          * **Strimzi 0.49 introduces new API version `v1` to all Strimzi custom resources.**
            The old API versions (`v1alpha1`, `v1beta1`, and `v1beta2`) will continue to be supported until Strimzi 1.0.0 / 0.52.0.
            For more details about the migration to the v1 API and CRD upgrades, see the [documentation](https://strimzi.io/docs/operators/in-development/deploying.html#assembly-api-conversion-str).

          * **Before upgrading to Strimzi 0.49 or newer**, make sure that you update your KafkaUser resources to [use the `.spec.authorization.acls[].operations` field instead of the deprecated `.spec.authorization.acls[].operation`](https://strimzi.io/docs/operators/in-development/deploying.html#con-api-conversion-v1-str).
          * **When rack-awareness is enabled in the `Kafka` custom resource (`.spec.kafka.rack`), Strimzi will not automatically add the best-effort-affinity rules for spreading the Kafka Pods between the zones.**
            Please make sure to set your own `topologySpreadConstraint` or `affinity` rules instead.

          * **From Strimzi 0.48.0, we support only Kubernetes 1.27 and newer.**
            Kubernetes 1.25 and 1.26 are not supported anymore

          ### New in 0.49
          * Support for Kafka 4.0.1 and 4.1.1
          * New v1 API for Strimzi CRDs
          * Refactoring of the KafkaConnect and KafkaMirrorMaker2 custom resources and their structure
          * Changes to how the template fields in Kafka and KafkaNodePool custom resources are handled
          * Removed automatic best-effort affinity rules when rack-awareness is enabled
          * BlockOwnerDeletion is set to true in owner references
          * Support of Buildah for building custom Kafka Connect container images
          * And many more ...
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:d495d3b6c98d1ea22ed3bdf0d6d06d6cda1c5b35087c817e8cf807892b178520
        - quay.io/strimzi/kaniko-executor@sha256:ba89470b45a49e5e09aaab91a5c3c03ecb14f9013d598bc14b3d756eb9a145b4
        - quay.io/strimzi/maven-builder@sha256:b8831c2aad621b80dce38484fae353cc5226bfc4dffb0f4c9d8b8d86e0fb3933
        - quay.io/strimzi/kafka@sha256:8f775ee53622bf68b791c405e40299baa3d845b98e282d1a9269f9466018e990
        - quay.io/strimzi/kafka@sha256:bfbee54f85beb3731cf41483befa39d8c5ebe5db002df6265c6ea95b6a156749
        - quay.io/strimzi/buildah@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/kafka-bridge@sha256:53034f64f0b672f10b5bacea1c7a25132f118df7fd5c9032c4dbf702ed93796a
        - quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:928c76a840e7de6f1d9350988238bec7035ed981118e64cfedde4e32d5cb5baf
        - quay.io/strimzi/kafka@sha256:73799dcf5bc7d1bb19f500f345d8892a1f91cf0213e01d9b59d3a1a53cc80aca
        version: 0.49.1
      entries:
      - name: strimzi-cluster-operator.v0.49.1
        version: 0.49.1
      - name: strimzi-cluster-operator.v0.49.0
        version: 0.49.0
      - name: strimzi-cluster-operator.v0.48.0
        version: 0.48.0
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: stable
    - currentCSV: strimzi-cluster-operator.v0.23.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"2.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"2.8",
                        "inter.broker.protocol.version":"2.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnectS2I",
                "metadata":{
                  "name":"my-connect-s2i-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "whitelist":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 2,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"2.8.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": 1,
                        "offset.storage.replication.factor": 1,
                        "status.storage.replication.factor": 1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "NetworkOutboundCapacityGoal",
                    "CpuCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster with S2I support"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:59d939f342f96d0e8a54c96fd187832c4b19cd4137bf55ace53d486728ae6c5f
          createdAt: "2021-05-14 11:37:13"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster with Source 2 Image support
            displayName: Kafka Connect Source to Image
            kind: KafkaConnectS2I
            name: kafkaconnects2is.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  Starting with Strimzi 0.23, we support only the `v1beta2` API version of all Strimzi custom resources.  This is a required for migration to `apiextensions/v1` which is needed because Kubernetes 1.22 will remove support for `apiextensions/v1beta1`.  Migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs **before upgrading to Strimzi 0.23**. For more details about the CRD upgrades, see the [documentation](https://strimzi.io/docs/operators/0.23.0/deploying.html#assembly-upgrade-resources-str).
          ### New in 0.23
          * Migrate to CRD v1 (required by Kubernetes 1.22+)
          * Strimzi API versions `v1alpha1` and `v1beta1` were removed from all Strimzi custom resources apart from `KafkaTopic` and `KafkaUser` (use `v1beta2` versions instead)
          * Add support for Kafka 2.8.0 and 2.6.2, remove support for Kafka 2.5.x
          * Make it possible to configure maximum number of connections and maximum connection creation rate in listener configuration
          * Add support for configuring finalizers for `loadbalancer` type listeners
          * Use dedicated Service Account for Kafka Connect Build on Kubernetes
          * Remove direct ZooKeeper access for handling user quotas in the User Operator. Add usage of Admin Client API instead.
          * Support for configuring custom Authorizer implementation
          * Changed Reconciliation interval for Topic Operator from 90 to 120 seconds (to keep it the same as for other operators)
          * Changed Zookeeper session timeout default value to 18 seconds for Topic and User Operators (for improved resiliency)
          * Removed requirement for replicas and partitions KafkaTopic spec making these parameters optional
          * Support to configure a custom filter for parent CR's labels propagation into subresources
          * Allow disabling service links (environment variables describing Kubernetes services) in Pod template
          * Add support for separate control plane listener (disabled by default, available via the `ControlPlaneListener` feature gate)
          * Support for Dual Stack networking
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _master_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/master/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/master/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:e90695b35d6dd5db20c9900dd0dab95d1ef908f3145b4f9f436b903303c88549
        - quay.io/strimzi/operator@sha256:59d939f342f96d0e8a54c96fd187832c4b19cd4137bf55ace53d486728ae6c5f
        - quay.io/strimzi/kafka@sha256:641f46114c59d61577bcb3f4ef5af16aea3ed42c2a575f8d3641c82848df85e8
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:68cdc37990bc7da8a6bbe3a4908378c8026e5ff980bf8c44c0277f689006fc51
        - quay.io/strimzi/jmxtrans@sha256:b4ec1844f4cc5eb74cd0aac83d74b81b977e178bf670d1136d1af0b68663d0a3
        - quay.io/strimzi/kafka@sha256:699bff48ee445d8ba381a791cd0340015e3ecede8d169f41bc151095ab7fb5cc
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        - quay.io/strimzi/kafka-bridge@sha256:bed07186355a4c04ee50e90048e3bd3a023264093a9ef28f0278cce44640e93f
        - quay.io/strimzi/kafka@sha256:d2745f48ed262290ce66c3362ffb9b9a8cfeb9c76beac40c995f72f3f06ad10e
        - quay.io/strimzi/kafka@sha256:dbc53bb374d2cb9513a5bb8f80fea751c91b249cabd36d8b3c04af5e5c961738
        version: 0.23.0
      entries:
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.23.x
    - currentCSV: strimzi-cluster-operator.v0.24.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"2.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"2.8",
                        "inter.broker.protocol.version":"2.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnectS2I",
                "metadata":{
                  "name":"my-connect-s2i-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 2,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"2.8.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster with S2I support"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:786ea69c77e0651f009a73a8b3ce0b3d41b3cd71b917dc0d9bdc61c725f494a6
          createdAt: "2021-06-24 13:13:13"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster with Source 2 Image support
            displayName: Kafka Connect Source to Image
            kind: KafkaConnectS2I
            name: kafkaconnects2is.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: "Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org)
          cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/)
          in various deployment configurations. See our [website](https://strimzi.io)
          for more details about the project.\n### CRD Upgrades\n**!!! IMPORTANT !!!**
          \ This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.
          \ If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed
          for all Strimzi CRDs and CRs before the upgrade to 0.24 is done!  If upgrading
          from Strimzi version earlier than 0.22, you need to first install the CRDs
          from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi
          CRDs and CRs before the upgrade to 0.24 is done!  For more details about
          the CRD upgrades, see the documentation.\n### New in 0.24\n* Add support
          for Kafka 2.7.1 and remove support for 2.6.0, 2.6.1, and 2.6.2\n* Add support
          for [Kubernetes Configuration Provider for Apache Kafka](https://github.com/strimzi/kafka-kubernetes-config-provider)\n*
          Use Red Hat UBI8 base image\n* Support for patching of service accounts
          and configuring their labels and annotations. The feature is disabled by
          default and enabled using the new `ServiceAccountPatching` feature gate.\n*
          Added support for configuring cluster-operator's worker thread pool size
          that is used for various sync and async tasks\n* Add Kafka Quotas plugin
          with produce, consume, and storage quotas\n* Support pausing reconciliation
          of KafkaTopic CR with annotation `strimzi.io/pause-reconciliation`\n* Update
          cruise control to 2.5.57\n* Update to Strimzi Kafka Bridge to 0.20.1\n*
          Support for broker load information added to the rebalance optimization
          proposal. Information on the load difference, before and after a rebalance
          is stored in a ConfigMap\n* Add support for selectively changing the verbosity
          of logging for individual CRs, using markers.\n* Added support for `controller_mutation_rate'
          quota. Creation/Deletion of topics and creation of partitions can be configured
          through this.\n* Use newer version of Kafka Exporter with different bugfixes
          \n### Supported Features\n* **Manages the Kafka Cluster** - Deploys and
          manages all of the components of this complex application, including dependencies
          like Apache ZooKeeper® that are traditionally hard to administer.\n* **Includes
          Kafka Connect** - Allows for configuration of common data sources and sinks
          to move data into and out of the Kafka cluster.\n* **Topic Management**
          - Creates and manages Kafka Topics within the cluster.\n* **User Management**
          - Creates and manages Kafka Users within the cluster.\n* **Connector Management**
          - Creates and manages Kafka Connect connectors.\n* **Includes Kafka Mirror
          Maker 1 and 2** - Allows for morroring data between different Apache Kafka®
          clusters.\n* **Includes HTTP Kafka Bridge** - Allows clients to send and
          receive messages through an Apache Kafka® cluster via HTTP protocol.\n*
          **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes
          partition replicas according to specified goals in order to achieve the
          best cluster performance.\n* **Monitoring** - Built-in support for monitoring
          using Prometheus and provided Grafana dashabords\n### Upgrading your Clusters\nThe
          Strimzi Operator understands how to run and upgrade between a set of Kafka
          versions. When specifying a new version in your config, check to make sure
          you aren't using any features that may have been removed. See [the upgrade
          guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str)
          for more information.\n### Storage\nAn efficient data storage infrastructure
          is essential to the optimal performance of Apache Kafka®. Apache Kafka®
          deployed via Strimzi requires block storage. The use of file storage (for
          example, NFS) is not recommended.\nThe Strimzi Operator supports three types
          of data storage:\n* Ephemeral (Recommended for development only!)\n* Persistent\n*
          JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)\nStrimzi
          also supports advanced operations such as adding or removing disks in Apache
          Kafka® brokers or resizing the persistent volumes (where supported by the
          infrastructure).\n### Documentation\nDocumentation to the current _main_
          branch as well as all releases can be found on our [website](https://strimzi.io/documentation).\n###
          Getting help\nIf you encounter any issues while using Strimzi, you can get
          help using:\n* [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n*
          [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          Contributing\nYou can contribute by:\n* Raising any issues you find using
          Strimzi\n* Fixing issues by opening Pull Requests\n* Improving documentation\n*
          Talking about Strimzi\n\nAll bugs, tasks or enhancements are tracked as
          [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues).
          Issues which  might be a good start for new contributors are marked with
          [\"good-start\"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start)
          label.\n\nThe [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md)
          describes how to build Strimzi and how to  test your changes before submitting
          a patch or opening a PR.\n\nThe [Documentation Contributor Guide](https://strimzi.io/contributing/guide/)
          describes how to contribute to Strimzi documentation.\n\nIf you want to
          get in touch with us first before contributing, you can use:\n* [Strimzi
          mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n*
          [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          License\nStrimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).\n"
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:fbb08410d9595029bc4a02ed859971264e6ce2dc85dd6a9855eaa7bb58b52a25
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        - quay.io/strimzi/operator@sha256:786ea69c77e0651f009a73a8b3ce0b3d41b3cd71b917dc0d9bdc61c725f494a6
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:97762fcd8bfeec64fe4d3d43a6e60bc705ff2c8773354357e545adf31c8f85c5
        - quay.io/strimzi/jmxtrans@sha256:2c54adabf6f31c087dbb898057f9c5e200aaf4c5b39fb3a47bbaf7f6587df72d
        - quay.io/strimzi/kafka-bridge@sha256:537ea10e87619251204747ebc1005c632a6c6ed270f5ef06f86c0c3ae4a7553b
        - quay.io/strimzi/kafka@sha256:8959b7968ab8b3306906cdbff2ebb8d63329af37e58124a601843795c4ef5bd6
        - quay.io/strimzi/kafka@sha256:95cfe9000afda2f7def269ca46472d3803ee85146c521884884d8505a7187daf
        version: 0.24.0
      entries:
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.24.x
    - currentCSV: strimzi-cluster-operator.v0.25.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"2.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"2.8",
                        "inter.broker.protocol.version":"2.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"2.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"2.8.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster with S2I support"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:afaf1dd1f2f696ae80674d74159661ea239ae609f78a73a1423c7a17a39e5044
          createdAt: "2021-06-24 13:13:13"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.25 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.25 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.25
          * Move from Scala 2.12 to Scala 2.13
          * Open Policy Agent authorizer updated to a new version supporting Scala 2.13.
            The new version of the authroizer uses different format of the input data sent to the OPA server and might require you to update your policies.
            See [release notes](https://github.com/strimzi/strimzi-kafka-operator/releases/tag/0.25.0) for more details.

          * Allow a custom password to be set for SCRAM-SHA-512 users by referencing a secret in the `KafkaUser` resource
          * Add support for [EnvVar Configuration Provider for Apache Kafka](https://github.com/strimzi/kafka-env-var-config-provider)
          * Add support for `tls-external` authentication to User Operator to allow management of ACLs and Quotas for TLS users with user certificates generated externally
          * Support for disabling the automatic generation of network policies by the Cluster Operator
          * Configure fixed size limit for `emptyDir` volumes used for temporary files
          * Update Strimzi Kafka Bridge to 0.20.2
          * The `KafkaConnectS2I` resource has been removed and is no longer supported by the operator.
            Please use the [migration guide](https://strimzi.io/docs/operators/0.24.0/full/using.html#proc-migrating-kafka-connect-s2i-str) to migrate your `KafkaConnectS2I` deployments to [`KafkaConnect` Build](https://strimzi.io/docs/operators/latest/full/deploying.html#creating-new-image-using-kafka-connect-build-str) instead.

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/jmxtrans@sha256:af5eb8459ac9a0acbca51e67c6e0217f62ba404cba9f2251968c927dcef75252
        - quay.io/strimzi/kafka-bridge@sha256:a005e20d7fbe04d6f587f2093e21a00556ec62b850df757b9f7d9d57e3141c40
        - quay.io/strimzi/kafka@sha256:56a33815f7d50a97ea9bb4cce1e3a6d04d918b841b5aa285f16b792d8930059e
        - quay.io/strimzi/kafka@sha256:d8991608ec71f17e850c33714ee02ca87ba94bc0f077be62ad1ed127ca244823
        - quay.io/strimzi/kafka@sha256:ee17eb3611019b0cfa5e9e196610edc1dbd7084471fb20990f055c89da8eef45
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        - quay.io/strimzi/operator@sha256:afaf1dd1f2f696ae80674d74159661ea239ae609f78a73a1423c7a17a39e5044
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:4fa7a30eb3f679a495aeb96794056ffd003237686b2b60e693c8cabf6bc15bae
        version: 0.25.0
      entries:
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.25.x
    - currentCSV: strimzi-cluster-operator.v0.26.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.0.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"3.0",
                        "inter.broker.protocol.version":"3.0"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.0.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:5d90caa66f57939ba62a9a50efa00fce319ba596e719a3f8a42170d7635ee3f4
          createdAt: "2021-12-14 00:16:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.26 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.26 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.26.1
          * **Updated Log4j2 to fix CVE-2021-44228**
          ### New in 0.26.0
          * Add support for Kafka 2.8.1 and 3.0.0; remove Kafka 2.7.0 and 2.7.1
          * Add support for exposing JMX in Zookeeper
          * Allow configuring labels and annotations for JMX authentication secrets
          * Enable Cruise Control anomaly.detection configurations
          * Add support for building connector images from the Maven coordinates
          * Allow Kafka Connect Build artifacts to be downloaded from insecure servers
          * Add option to specify pull secret in Kafka Connect Build on OpenShift
          * Configurable authentication, authorization, and SSL for Cruise Control API
          * Allow to configure `/tmp` volume size via Pod template. By default `1Mi` is used.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/jmxtrans@sha256:bff5d3bab575d0b9ed95dd79d2d22518cc00c4d1c9dbb5614ed16149d4920a1b
        - quay.io/strimzi/kafka-bridge@sha256:d3899c79747e4cb3a6df5a9fcd80b81f038ca0634a97329c1d160499469876dd
        - quay.io/strimzi/kafka@sha256:bd22a134b0c351ddfc78a3263850c2f16733c52f57ac92984cbe0ffff477c724
        - quay.io/strimzi/operator@sha256:5d90caa66f57939ba62a9a50efa00fce319ba596e719a3f8a42170d7635ee3f4
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:6dce519730a6eb73bc18bef8372cdde65c29af3cb52eb78afc808d8582526fd3
        - quay.io/strimzi/kafka@sha256:6367b0fbba9593e3ac736040ea2d7ef71296b1ec144d3b54d9370352141b90e4
        - quay.io/strimzi/maven-builder@sha256:663eb81388ae8f824e7920c272f6d2e2274cf6c140d61416607261cdce9d50e2
        - quay.io/strimzi/kafka@sha256:8c022a8535742b2eea691737f863af5ddef1e8df08b415b8139ecd02a79052a5
        - quay.io/strimzi/kaniko-executor@sha256:b0ca0b4fb16822e55ea1250c54c73c7c4248282908065422ededa49fa400436a
        version: 0.26.1
      entries:
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.26.x
    - currentCSV: strimzi-cluster-operator.v0.27.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.0.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "log.message.format.version":"3.0",
                        "inter.broker.protocol.version":"3.0"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.0.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.0.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:9ea49407a04006d0bddfaaee822adfb95f5857af32ffcee81ba60ce891b07ba8
          createdAt: "2022-01-14 20:00:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.27 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.27 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.27.1
          * Updated Log4j2 to version 2.17.1 and Fabric8 Kubernetes Client to 5.10.2
          ### New in 0.27.0
          * Updated Log4j2 to version 2.17.0 (adresses CVE-2021-44228, CVE-2021-45046, CVE-2021-45105)
          * (Experimental) support for AArch64 / ARM64 architecture
          * `ControlPlaneListener` and `ServiceAccountPatching` feature gates are now in the beta phase and are enabled by default
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:a3ec567ca529df2fa41f8986d21e86dde66be94aa4baa56faa66db4dcb3b258e
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:9f2c01e88b29154ba7a0f70a1c69a49c86a567808cf057cb5d115159278cf2cf
        - quay.io/strimzi/jmxtrans@sha256:d2d2477517eb1ac98b51ad6d64d8c1c578141637afa8d46037076f0013183c0b
        - quay.io/strimzi/kaniko-executor@sha256:a07ebe6600d6baba09980abdde2931b3b6abd2f75aeb2cac5c6a2d22a37aa807
        - quay.io/strimzi/maven-builder@sha256:9acd178cc504be8acaa70a39f3c17830aae1f0e93a656110790f9476b09260d5
        - quay.io/strimzi/operator@sha256:9ea49407a04006d0bddfaaee822adfb95f5857af32ffcee81ba60ce891b07ba8
        - quay.io/strimzi/kafka-bridge@sha256:55a52316aead02efa2004174e11ad4728bb8b6f1c1415f725f597f1d2f2da188
        - quay.io/strimzi/kafka@sha256:f4d68bb94447c6612f70de7f6587e9e7ef712c83769ea1f11a8dbda0d241a059
        - quay.io/strimzi/kafka@sha256:5682a6bfcc4ee13d53a30d587c8f96bc40abe3618880989336c5af274ea3cefa
        version: 0.27.1
      entries:
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.27.x
    - currentCSV: strimzi-cluster-operator.v0.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.1.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.1"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.1.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.1.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.1.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:8b010c5fb8244b742a37f264feefc116d75bb2abd2d6895375cbeea250727b39
          createdAt: "2022-02-12 23:02:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.28 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.28 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.28.0
          * Support for Kafka 3.1.0
          * Support for `StrimziPodSet` resources (disabled by default through the `UseStrimziPodSets` feature gate)
          * Support custom authentication mechanisms in Kafka listeners
          * Intra-broker disk balancing using Cruise Control
          * Add support for disabling the FIPS mode in OpenJDK
          * Fix renewing your own CA certificates
          * Added the option `createBootstrapService` to disable the creation of the bootstrap service for the Load Balancer Type Listener
          * Dependency updates (Strimzi Kafka Bridge, Strimzi OAuth, Open Policy Agent Authroizer plugin and others)
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for morroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributes partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashabords
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.

          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.

          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.

          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:c345c783d8fbbee4edeca2ebc47e7c454fcc2e26686820b8037de97369280ba0
        - quay.io/strimzi/kafka@sha256:06e9bda15495feb2b92d9950e834cdeed6ef20064f021a879610f1b59dd46950
        - quay.io/strimzi/kafka@sha256:7c04f65e216bb941458aeadffb85e9eeee43d5ca67da566017c2c93a0664c98e
        - quay.io/strimzi/kaniko-executor@sha256:a07ebe6600d6baba09980abdde2931b3b6abd2f75aeb2cac5c6a2d22a37aa807
        - quay.io/strimzi/maven-builder@sha256:3d5d664e089651944712361a6d8ba42b578dbd9bb3dfd9972f614520c9cfab75
        - quay.io/strimzi/operator@sha256:8b010c5fb8244b742a37f264feefc116d75bb2abd2d6895375cbeea250727b39
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:edec37e045212f74d160724ffc7b2c8ccf4e60eb95629aae80360494d78d5433
        - quay.io/strimzi/jmxtrans@sha256:3a55a81790dc88b90d1bf858e2cfd7e591ad0e79f763c6d1667b2d3eb0d0c79d
        version: 0.28.0
      entries:
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.28.x
    - currentCSV: strimzi-cluster-operator.v0.29.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:afde94c6d2544207cb7f3c94b54455643558a9d5daaa13b9f736cc8da20e319c
          createdAt: "2022-05-15 00:01:07"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.29 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.29 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.29.0
          * Add support for Apache Kafka 3.0.1, 3.1.1 and 3.2.0
          * Renew user certificates in User Operator only during maintenance windows
          * Remove TLS sidecar from Cruise Control pod. Cruise Control is now configured to not using ZooKeeper, so the TLS sidecar is not needed anymore.
          * Allow Cruise Control topic names to be configured
          * Add support for `spec.rack.topologyKey` property in Mirror Maker 2 to enable "fetch from the closest replica" feature.
          * Experiemntal support for the s390x platform
          * Added new rebalancing modes on the `KafkaRebalance` custom resource to add or remove brokers
          * Experimental KRaft mode (ZooKeeper-less Kafka). Use it for development and testing only!
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:935caab03f1d0365b47ddefec0c1d8fa449fc3de715ccdd298aedef5ce968c73
        - quay.io/strimzi/kafka@sha256:95678e843bc87cbe571f3f299045dd075725816b59e1b87821cd6025876ec559
        - quay.io/strimzi/kafka@sha256:9dfc09273ad8fc4bdc75cbe93b4a061a05a5defb5884a221ae1e178ba602787f
        - quay.io/strimzi/kafka@sha256:284cde40784b6ff7bfb81b6dd28928e1e8c598fe6a72504f025592e5b43fa94c
        - quay.io/strimzi/kafka@sha256:ac190141120c1800cc7131d3a1f701e64efdcd4a5d87f0b2e0e2cadfdef8b438
        - quay.io/strimzi/kaniko-executor@sha256:544c4987f7f3ca558b04e9ef4357be204f088212b7b5b9ed0f909401a8bc5238
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:465f0bef1f167b1d16ba9ae5f2d9a1133d11786b6809698a84c5c962387dbf6f
        - quay.io/strimzi/jmxtrans@sha256:f89e3c9618430908a8b390f2490f5aa43687b12889b434472a962ce0170c6463
        - quay.io/strimzi/operator@sha256:afde94c6d2544207cb7f3c94b54455643558a9d5daaa13b9f736cc8da20e319c
        - quay.io/strimzi/maven-builder@sha256:0c096a59faf8fd224298c01415a895043db4647534c060cb7e53207e9448bf65
        - quay.io/strimzi/kafka-bridge@sha256:b7bc3dd90e87223766f608a0087b521f0bba79d1c21eaa833bc2708c71148b7f
        version: 0.29.0
      entries:
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.29.x
    - currentCSV: strimzi-cluster-operator.v0.30.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:587db6f4389f56209f48853beedbfe249f6d590a4cb0000be2c42b57e43c2adb
          createdAt: "2022-07-16 00:00:10"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: "Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org)
          cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/)
          in various deployment configurations. See our [website](https://strimzi.io)
          for more details about the project.\n### CRD Upgrades\n**!!! IMPORTANT !!!**
          \ This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.
          \ If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed
          for all Strimzi CRDs and CRs before the upgrade to 0.30 is done!  If upgrading
          from Strimzi version earlier than 0.22, you need to first install the CRDs
          from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi
          CRDs and CRs before the upgrade to 0.30 is done!  For more details about
          the CRD upgrades, see the documentation.\n### New in 0.30.0\n* The `UseStrimziPodSets`
          feature gate moves to beta stage. By default, StrimziPodSets are used instead
          of StatefulSets. If needed, `UseStrimziPodSets` can be disabled in the feature
          gates configuration in the Cluster Operator.\n* The `ServiceAccountPatching`
          feature gate moves to GA. It cannot be disabled anymore and will be permanently
          enabled.\n* Remove support for Kafka 3.0.0 and 3.0.1\n* Add support for
          `simple` authorization and for the User Operator to the experimental `UseKRaft`
          feature gate. _(Note: Due to [KAFKA-13909](https://issues.apache.org/jira/browse/KAFKA-13909),
          broker restarts currently don't work when authorization is enabled.)_\n*
          Add CPU and network capacity overrides for Cruise Control capacity config\n*
          Use better encryption and digest algorithms when creating the PKCS12 stores.
          For existing clusters, the certificates will not be updated during upgrade
          but only next time the PKCS12 store is created. \n* Operator emits Kafka
          events to explain why it restarted a Kafka broker\n* Better configurability
          of the Kafka Admin client in the User Operator\n* Update Strimzi Kafka Bridge
          to 0.21.6\n### Supported Features\n* **Manages the Kafka Cluster** - Deploys
          and manages all of the components of this complex application, including
          dependencies like Apache ZooKeeper® that are traditionally hard to administer.\n*
          **Includes Kafka Connect** - Allows for configuration of common data sources
          and sinks to move data into and out of the Kafka cluster.\n* **Topic Management**
          - Creates and manages Kafka Topics within the cluster.\n* **User Management**
          - Creates and manages Kafka Users within the cluster.\n* **Connector Management**
          - Creates and manages Kafka Connect connectors.\n* **Includes Kafka Mirror
          Maker 1 and 2** - Allows for mirroring data between different Apache Kafka®
          clusters.\n* **Includes HTTP Kafka Bridge** - Allows clients to send and
          receive messages through an Apache Kafka® cluster via HTTP protocol.\n*
          **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing
          partition replicas according to specified goals in order to achieve the
          best cluster performance.\n* **Monitoring** - Built-in support for monitoring
          using Prometheus and provided Grafana dashboards\n### Upgrading your Clusters\nThe
          Strimzi Operator understands how to run and upgrade between a set of Kafka
          versions. When specifying a new version in your config, check to make sure
          you aren't using any features that may have been removed. See [the upgrade
          guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str)
          for more information.\n### Storage\nAn efficient data storage infrastructure
          is essential to the optimal performance of Apache Kafka®. Apache Kafka®
          deployed via Strimzi requires block storage. The use of file storage (for
          example, NFS) is not recommended.\nThe Strimzi Operator supports three types
          of data storage:\n* Ephemeral (Recommended for development only!)\n* Persistent\n*
          JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)\nStrimzi
          also supports advanced operations such as adding or removing disks in Apache
          Kafka® brokers or resizing the persistent volumes (where supported by the
          infrastructure).\n### Documentation\nDocumentation to the current _main_
          branch as well as all releases can be found on our [website](https://strimzi.io/documentation).\n###
          Getting help\nIf you encounter any issues while using Strimzi, you can get
          help using:\n* [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n*
          [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          Contributing\nYou can contribute by:\n* Raising any issues you find using
          Strimzi\n* Fixing issues by opening Pull Requests\n* Improving documentation\n*
          Talking about Strimzi\nAll bugs, tasks or enhancements are tracked as [GitHub
          issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues
          which  might be a good start for new contributors are marked with [\"good-start\"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start)
          label.\nThe [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md)
          describes how to build Strimzi and how to  test your changes before submitting
          a patch or opening a PR.\nThe [Documentation Contributor Guide](https://strimzi.io/contributing/guide/)
          describes how to contribute to Strimzi documentation.\nIf you want to get
          in touch with us first before contributing, you can use:\n* [Strimzi mailing
          list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)\n* [Strimzi
          Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)\n###
          License\nStrimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).\n"
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/jmxtrans@sha256:de1ca88b713b926b72df535aca2cfad24fb1b2bf40481065d6fa0c421b872320
        - quay.io/strimzi/kaniko-executor@sha256:544c4987f7f3ca558b04e9ef4357be204f088212b7b5b9ed0f909401a8bc5238
        - quay.io/strimzi/maven-builder@sha256:f2cb45234f3a7a010824a370d03032b706271cd0d1d260da929f046f9259d7e0
        - quay.io/strimzi/kafka-bridge@sha256:77fc68da171c74d3a4b75b1030eaaa5eae12e200002f7aa2ee1969385eba1d66
        - quay.io/strimzi/kafka@sha256:5d881605425ab0b37d0b9cac6957d00ba904df0db185ca6181c810151bdab8e7
        - quay.io/strimzi/kafka@sha256:68d6f4cb5cc5ccad44de799bd9cf417c469a09e1024dbe42298942f25a09e004
        - quay.io/strimzi/kafka@sha256:d9258ddd453c3a53ca8e737b989d27725818da95f7a4fc879c9f07fe743c0cef
        - quay.io/strimzi/operator@sha256:587db6f4389f56209f48853beedbfe249f6d590a4cb0000be2c42b57e43c2adb
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:8be098242f971aefa61a4a24d2c6630ecaa7856ece842166c38887a66bce1bda
        version: 0.30.0
      entries:
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.30.x
    - currentCSV: strimzi-cluster-operator.v0.31.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.3",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.3",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:6e5e207c70c25c595d3ce60268c0214c7518e95836c9b1212ef1eb2f008c7a76
          createdAt: "2022-09-20 21:07:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          **This is the last version of Strimzi with support for Kubernetes 1.16, 1.17 and 1.18!**
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from Strimzi 0.22, migration to `v1beta2` needs to be completed for all Strimzi CRDs and CRs before the upgrade to 0.31 is done!  If upgrading from Strimzi version earlier than 0.22, you need to first install the CRDs from Strimzi 0.22 and complete the migration to `v1beta2` for all Strimzi CRDs and CRs before the upgrade to 0.31 is done!  For more details about the CRD upgrades, see the documentation.
          ### New in 0.31.1
          * Kafka 3.1.2 and 3.2.3 (fixes CVE-2022-34917)
          * Make `sasl.server.max.receive.size` broker option user configurable
          * Update Strimzi Kafka Bridge to 0.22.1
          ### New in 0.31.0
          * Support for Apache Kafka 3.2.1
          * Pluggable Pod Security Profiles with built-in support for _restricted_ Kubernetes Security Profile
          * Support for leader election and running multiple operator replicas (1 active leader replicas and one or more stand-by replicas)
          * Support for IPv6 addresses being used in Strimzi issued certificates
          * `StrimziPodSet` reconciliation metrics
          * Updated Strimzi Kafka Bridge to 0.22.0 and Kafka Exporter to 1.6.0
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:03cc48bc5cf367f898338665b253855bed7d6096fe577adfe344da2f2cddcfe4
        - quay.io/strimzi/kafka@sha256:430b3eb70e47a91d7b5b6f230d5be024c2de853099cc0437e219b443e0ead9f5
        - quay.io/strimzi/kafka@sha256:652924a1dba46aa716caba8381f1e791c09035e31ce62fdcc81f9b69af36cd02
        - quay.io/strimzi/kafka@sha256:9553aae22d35448681cbbf7a831a28149fb159f3df58ccf8c8ec4ca7eb9c1fdf
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:6afbc7ffc98918e3a557b0b3d9b2c3aa80caa47b9a73205fac9e6572c66f4df7
        - quay.io/strimzi/kaniko-executor@sha256:06581fb615f0b13ddfe27fae26ba5836b12c6e28afd55a81cba7685c9ca4bf79
        - quay.io/strimzi/maven-builder@sha256:670ca70900f2229ef140a592b77f2107934601f8b050b79250eab17ff62099b6
        - quay.io/strimzi/kafka@sha256:83acc1e2cc1e64a88bdbb54b9818a6ad3658c3da60e72c4be365f824c5fcf57c
        - quay.io/strimzi/kafka@sha256:b7c059bd72d8b063a96dde788d91d1ad87498bad3e73acba600929d595aeb7d6
        - quay.io/strimzi/operator@sha256:6e5e207c70c25c595d3ce60268c0214c7518e95836c9b1212ef1eb2f008c7a76
        - quay.io/strimzi/jmxtrans@sha256:52dd107062d78c29bb58c905ac654c39df72bbe3c25613023aa33e834930606d
        - quay.io/strimzi/kafka-bridge@sha256:3ddac62a4f8c8a3ebb72d5841d3826f7fd3fbb0e00eb75fb40bced0a576b86a9
        version: 0.31.1
      entries:
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.31.x
    - currentCSV: strimzi-cluster-operator.v0.32.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.3.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.3"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.3.1",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:c5e0e5dca7503a8371b8d366db0f49e3fc68f62ea480262e39b6cc277991c97c
          createdAt: "2022-10-31 17:05:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **From the 0.32.0 release, Strimzi supports only Kubernetes 1.19 and newer! Kubernetes 1.16, 1.17 and 1.18 are not supported anymore.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.32.0/deploying.html#assembly-upgrade-str).
          ### New in 0.32.0
          * Add support for Kafka 3.3.1 and remove support for Kafka 3.1.0, 3.1.1, and 3.1.2
          * Update KafkaConnector CR status so the 'NotReady' condition is added if the connector or any tasks are reporting a 'FAILED' state.
          * Add auto-approval mechanism on KafkaRebalance resource when an optimization proposal is ready
          * The ControlPlaneListener feature gate moves to GA
          * Add client rack-awareness support to Strimzi Bridge pods
          * Add support for OpenTelemetry for distributed tracing
          * ZookeeperRoller considers unready pods
          * Support multiple operations per ACLRule
          * Add new listener type "cluster-ip" which is using per-broker services instead of the pod DNS names
          * Update Strimzi OAuth library to 0.11.0
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:bb97008b7f928ed98939b2008a7baf8909c88e726a59aaf607f2eeba55375cc0
        - quay.io/strimzi/kafka@sha256:4bacf5b54041bd0ab9199c8c5d51e8058758139db4b7abc380cf0400737716ef
        - quay.io/strimzi/kaniko-executor@sha256:dc27d8aeb851245c79fb7276febe98769cc098d678bea096b338caaaf111dd27
        - quay.io/strimzi/operator@sha256:c5e0e5dca7503a8371b8d366db0f49e3fc68f62ea480262e39b6cc277991c97c
        - quay.io/strimzi/jmxtrans@sha256:208928133b2854f60bb34912e07561a3511de895b815960e73d565be2d553918
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:eefdd05485167d490f0011d9e5d2bb6112db1daea25940c79e1f55b3af254548
        - quay.io/strimzi/kafka-bridge@sha256:aad0cee4381cc1c8c6638ab5732b135acd271b5889486ca9a33312cce67e4a02
        - quay.io/strimzi/kafka@sha256:8c9f38b45dd814e617c9c51cc90fd51e23d7dd23e8efe7e9eff013522bd6a5a0
        - quay.io/strimzi/maven-builder@sha256:593e9980b786ca8ad3223151c3e17f16c7652ee0e86d722af4c34b023038ecc2
        - quay.io/strimzi/kafka@sha256:680ae1958dbcb9da8ee4128a67c1163a6ee2744221f7d29f73d8bcc237fd0173
        version: 0.32.0
      entries:
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.32.x
    - currentCSV: strimzi-cluster-operator.v0.33.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.4"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:cf0d41fdb99b20e91063e23eb1d664817c18866c9a2f5c4430eac897e78d5d53
          createdAt: "2023-02-18 21:21:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "Proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **Strimzi 0.33 supports only Kubernetes 1.19 and newer! Kubernetes versions 1.16, 1.17 and 1.18 are not supported anymore since Strimzi 0.32.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.33.2/deploying.html#assembly-upgrade-str).
          ### New in 0.33
          _Note: Strimzi 0.33.2 add support for Kafka 3.4.0 which fixes CVE-2023-25194._
          * Add support for Kafka 3.3.2
          * Automatic restarts of failed Connect or Mirror Maker 2 connectors
          * Redesign of Strimzi User Operator to improve its scalability
          * Move to Java 17
          * Improved FIPS support
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:9eca149cfc436580e3cdd6cee0ca318366b8d0ec53c2cf007e4e2c614b988921
        - quay.io/strimzi/operator@sha256:cf0d41fdb99b20e91063e23eb1d664817c18866c9a2f5c4430eac897e78d5d53
        - quay.io/strimzi/jmxtrans@sha256:5ebdafa7a5e3718ed3274d6254c9e655613c272340094b997b1c97fde2598b4a
        - quay.io/strimzi/kafka@sha256:301dc52ed5891ed4fa33e79ca3c344b1ac0eec7469dd46a5a7ac22064e053fc2
        - quay.io/strimzi/kafka@sha256:40a847f8455ec6ea9ff9fe1fff20b1ed01f848326dc13977d13ac911f0cb40b7
        - quay.io/strimzi/kafka@sha256:fe9d3f8b029ff32d5d725e57384592914957314d63e92fda3abf4028fe4e66f6
        - quay.io/strimzi/maven-builder@sha256:de9e51365e7acc63feae745618804e6286fd730f41c3b31582cbb7319a93b483
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:05e66583757da895fd23c3af9830ae1ac6a84d107107e5b6bbaece57e4d79c9a
        - quay.io/strimzi/kafka@sha256:30945aecb9d63cf8863c672222f130469c89aefa07078c95aaed52c40fd16146
        - quay.io/strimzi/kaniko-executor@sha256:dc27d8aeb851245c79fb7276febe98769cc098d678bea096b338caaaf111dd27
        - quay.io/strimzi/kafka-bridge@sha256:3a380d5f3ea509f90cdf95280d83b42f5de4f86ee3a512e02234e7639f50c9eb
        - quay.io/strimzi/kafka@sha256:116cf543fbadadd0b45007ce24d44a0c79a62280e8faa1fc80df40291fbdf05d
        version: 0.33.2
      entries:
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.33.x
    - currentCSV: strimzi-cluster-operator.v0.34.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.4"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:f4ee3ca482a2dd19785f59634578a0850273444c1173a5699a99cf02f3a018fe
          createdAt: "2023-03-17 13:02:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "Proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **Strimzi 0.34 supports only Kubernetes 1.19 and newer! Kubernetes versions 1.16, 1.17 and 1.18 are not supported anymore since Strimzi 0.32.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.34.0/deploying.html#assembly-upgrade-str).
          ### New in 0.34
          * Add support for Apache Kafka 3.4.0 (fixes CVE-2023-25194) and remove support for Apache Kafka 3.2.x
          * Stable Pod identities for Kafka Connect and MirrorMaker 2 (disabled by default)
          * Use JDK HTTP client in the Kubernetes client instead of the OkHttp client
          * Add truststore configuration for HTTPS connections to Open Policy Agent server
          * Update Strimzi HTTP Bridge to 0.25.0 and strimzi Oauth to 0.12.0
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:1da35fd7b36b113d1343e254fdc6efd97ca8660cc7977d8985aa3a3547d5ebb1
        - quay.io/strimzi/kafka@sha256:37cf8d0fea1d2078511920190a72b49977ff4047b6ecbfed6b394c6f9e1e2ff0
        - quay.io/strimzi/maven-builder@sha256:f781b6b857d437c2de62585462e97b9fae357912c9f6711c1df39f431278878d
        - quay.io/strimzi/kafka@sha256:1ace2cc0db9653ac1b388477fa56c3c1cd97c7b3846eba3c7824dc58ea179476
        - quay.io/strimzi/kaniko-executor@sha256:dc27d8aeb851245c79fb7276febe98769cc098d678bea096b338caaaf111dd27
        - quay.io/strimzi/jmxtrans@sha256:62272e8a03da2144340bd7267f7a824d1ed70f4f3e30dc7aadfba9ee1b9baf76
        - quay.io/strimzi/operator@sha256:f4ee3ca482a2dd19785f59634578a0850273444c1173a5699a99cf02f3a018fe
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:02f53d3395b2b98f92a96b466c83ca15c79a75d82451e2ed8ba921375e727c7f
        - quay.io/strimzi/kafka-bridge@sha256:51babca0f7a328f4db005c6a16daa8ac4a4306c46fe3ca89382919134aa09179
        version: 0.34.0
      entries:
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.34.x
    - currentCSV: strimzi-cluster-operator.v0.35.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.4"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:06a94a3021cf028ccc1a49271f35f79216029e344536e664f196c1725ff2c663
          createdAt: "2023-06-07 16:19:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **Strimzi 0.35 is the last version with support for Kubernetes 1.19 and 1.20. From Strimzi 0.36, only Kubernetes 1.21 and newer will be supported.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.35.1/deploying.html#assembly-upgrade-str).
          ### New in 0.35
          * Move feature gate `UseStrimziPodSets` to GA and remove support for StatefulSets
          * Remove support for JMX Trans
          * Redesigned the Cluster and User Operator configuration to make it more efficient and flexible
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kaniko-executor@sha256:39778b90c2b2afc30261e4ad5135805e1a10a2b60e2e53108fb9f80487f1208a
        - quay.io/strimzi/maven-builder@sha256:88a79eff3b3a386880a630658964b7754caed9e99dd6e645a4c0d23d0fdb47ee
        - quay.io/strimzi/operator@sha256:06a94a3021cf028ccc1a49271f35f79216029e344536e664f196c1725ff2c663
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:8abe0994052e2a328e54c9d30c920dc331e9b816a4606234a3023b9ef65ec4ed
        - quay.io/strimzi/kafka-bridge@sha256:d6be183e492f8f88157ab9fe0af53950df8b6711a8a8c33da465de6064f6f86e
        - quay.io/strimzi/kafka@sha256:0d910e7138cb49e1cd8cd84cef88bce35698b93ddd683a3398f1d485a3162693
        - quay.io/strimzi/kafka@sha256:4de4874a7b722ad813f4dcc58acf509527bca0609999b81e70d81e3b38534d9d
        - quay.io/strimzi/kafka@sha256:54c6b25b31f51ef401c1b6e2a1b27432911e819bf3e502e05186f01be3f798e5
        version: 0.35.1
      entries:
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.35.x
    - currentCSV: strimzi-cluster-operator.v0.36.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:e9e03b31007c0f9b67a6a33e6b644e8c1ba35bd9976804ee3d22a04e4bf511b1
          createdAt: "2023-07-10 21:47:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!! Strimzi 0.36.1 supports only Kubernetes 1.21 and newer! Kubernetes versions 1.19 and 1.20 are not supported anymore since Strimzi 0.36.**
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.35.1/deploying.html#assembly-upgrade-str).
          ### New in 0.36
          * Add support for Apache Kafka 3.4.1, 3.5.0, and 3.5.1
          * Remove support for 3.3.1 and 3.3.2
          * Add support for _Kafka node pools_
          * Add support for _Unidirectional Topic Operator_
          * Enable SCRAM-SHA authentication in KRaft mode (supported in Apache Kafka 3.5.0 and newer)
          * Add support for insecure flag in Maven artifacts in Kafka Connect Build
          * Improve Kafka rolling update to avoid rolling broker in log recovery
          * Added support for Kafka Exporter topic exclude and consumer group exclude parameters
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:ef3f85e1227e886a131d3ddec3fb431aef6d3daed46115b288246b9ace0e69e2
        - quay.io/strimzi/kafka-bridge@sha256:fefee252895e9f94756ed5c9ea71749e3fa89281df01bc55878a244ca7d17697
        - quay.io/strimzi/kafka@sha256:9f35f40be3d47b0cb1f6628f7ffd9c6a687ab9f564829f341dd66fd0759c064f
        - quay.io/strimzi/kafka@sha256:ea35817ff1ef295c682d70562f209ef658fcd87c61f467a4549d7a2f39e71700
        - quay.io/strimzi/maven-builder@sha256:2a469b40122027b981914db5b5c102be48280e039c3089963422c181174af226
        - quay.io/strimzi/kafka@sha256:67c2b563a65c85c9393608f9af7eaf12ea48dcc0ef5f726d51f27273a3845186
        - quay.io/strimzi/kafka@sha256:a0da6a48b5bcbff355365f07df2d99ef6443d22c5690495f10a6417e761b3799
        - quay.io/strimzi/kaniko-executor@sha256:5ff9fc7d0b7b694875ad0150fc787c582d42da3b4864d807ee8a6524e47b0e4e
        - quay.io/strimzi/operator@sha256:e9e03b31007c0f9b67a6a33e6b644e8c1ba35bd9976804ee3d22a04e4bf511b1
        version: 0.36.1
      entries:
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.36.x
    - currentCSV: strimzi-cluster-operator.v0.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:52f376e64b9b31d74162e26248c278e9bd301d2d8b4240ee5bcf780dfe2f8ef8
          createdAt: "2023-09-03 17:45:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.37.0/deploying.html#assembly-upgrade-str).
          ### New in 0.37
          * The StableConnectIdentites feature gate moves to a beta stage.
          * Support for the ppc64le platform
          * Version fields to the Kafka custom resource status to track installation and upgrade state
          * Infinite auto-restarts of Kafka Connect and Kafka Mirror Maker 2 connectors
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:2997ba1c169eb792a6004d7a41b674560515f3ea6e62ab8b9a1fdb747eab40c1
        - quay.io/strimzi/kafka@sha256:1de6e073e8625a193fcfd11dd1a6717cc17596911c10bcebd792c00b08a7ebaf
        - quay.io/strimzi/kaniko-executor@sha256:5729f1f0511da95e64e358cfabb3980ad9a660af2968118a87d6755f5d652a67
        - quay.io/strimzi/maven-builder@sha256:995be06a50b86c992fcee9f00e44f6a21c3406975e4e35802f10e88b72ffb9df
        - quay.io/strimzi/operator@sha256:52f376e64b9b31d74162e26248c278e9bd301d2d8b4240ee5bcf780dfe2f8ef8
        - quay.io/strimzi/kafka-bridge@sha256:5b821f6f3396002ffa7c5804391b627ff9da3b494b2777dde518c55c2b73cefc
        - quay.io/strimzi/kafka@sha256:38bbadcdb196a373e1698be890caa1dc01134ce91763d8f95c71768a117e1932
        - quay.io/strimzi/kafka@sha256:dfeb1eb7b94107c443b6bc82fcfee7fcf782516c83c6fc64451fb6a7e2de74a6
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:8b9b06ead5e014b920c82034ded615413dca53cf36f804005408726c9bbda66f
        version: 0.37.0
      entries:
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.37.x
    - currentCSV: strimzi-cluster-operator.v0.38.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.6.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.6"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:aee45bbe439335e45a0423e6565bae0d0727d85c7b807812949bfa127d467fe6
          createdAt: "2023-10-14 18:18:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.38.0/deploying.html#assembly-upgrade-str).
          ### New in 0.38
          * Add support for Apache Kafka 3.6.0 and remove support for 3.4.0 and 3.4.1
          * Container signing and SBOMs
          * Stopping Connect and MirrorMaker 2 connectors
          * Manual rolling updates of Kafka Connect and Kafka Mirror Maker 2 pods using annotation
          * Prevent scale-down of brokers that still contain any replicas
          * Run ZooKeeper- and KRaft-based clusters in parallel
          * Unidirectional Topic Operator improvements
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka@sha256:0cc01438e8596643407b6b8ff05fafcea7ef54fa9410d4ae2492a9dbf41118b1
        - quay.io/strimzi/kafka@sha256:20d451fb32ec82eab3c16891198ace46bb9b9193f1f5511bb60ce249080dd7d4
        - quay.io/strimzi/kafka@sha256:50e24c797455f9cdbb3cdde8e4f26bb8e1f0503469456da5d179017fd3e03ffe
        - quay.io/strimzi/kaniko-executor@sha256:4fe7a3f3f78e93369284a5ab456873c911230926ca071d1d88167e63d8ce376c
        - quay.io/strimzi/maven-builder@sha256:922d91dab9e2b8e14b6db25d8b48d7f4e3521bedd435468cc22039599ac4f888
        - quay.io/strimzi/operator@sha256:aee45bbe439335e45a0423e6565bae0d0727d85c7b807812949bfa127d467fe6
        - quay.io/openshift-community-operators/strimzi-kafka-operator@sha256:51db956f1472ae0498c57b9488448c34cf7e24afab6b9997eb3689b001d73277
        - quay.io/strimzi/kafka-bridge@sha256:13838889cc20a3a382ea64e749cad94f997c0b928840588f2d1befcf19247bea
        version: 0.38.0
      entries:
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.38.x
    - currentCSV: strimzi-cluster-operator.v0.39.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.6.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.6"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.6.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.6.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.6.1",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:50b49f9b5e554cca517fc2794e11319d5aaba1676494b285baa3a74fc79eb501
          createdAt: "2023-12-14 20:28:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.39.0/deploying.html#assembly-upgrade-str).

          **Strimzi 0.39 is the last minor release with support for Kubernetes 1.21 and 1.22.** From Strimzi 0.40 on, only Kubernetes 1.23 and newer will be supported.
          ### New in 0.39
          * Add support for Apache Kafka 3.5.2 and 3.6.1
          * The `StableConnectIdentities` feature gate moves to GA stage and is now permanently enabled without the possibility to disable it.
            All Connect and Mirror Maker 2 operands will now use StrimziPodSets.

          * The `KafkaNodePools` feature gate moves to the beta stage and is enabled by default.
            If needed, `KafkaNodePools` can be disabled in the feature gates configuration in the Cluster Operator.

          * The `UnidirectionalTopicOperator` feature gate moves to the beta stage and is enabled by default.
            If needed, `UnidirectionalTopicOperator` can be disabled in the feature gates configuration in the Cluster Operator.

          * Improved Kafka Connect metrics and dashboard example files
          * Allow specifying and managing KRaft metadata version
          * Add support for KRaft to KRaft upgrades (Apache Kafka upgrades for the KRaft-based clusters)
          * Improved Kafka Mirror Maker 2 dashboard example file
          * Support for rolling updates of KRaft controller nodes
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/maven-builder@sha256:6ce3c16284379d5db9e42a6f3e2b765c981091164a28fdd6bf927b6c5d4ab557
        - quay.io/strimzi/kafka-bridge@sha256:13838889cc20a3a382ea64e749cad94f997c0b928840588f2d1befcf19247bea
        - quay.io/strimzi/kafka@sha256:53b960411e852f5cb182ecc5d395a3562865f83e15e6251f3a9af0eb413feeed
        - quay.io/strimzi/kaniko-executor@sha256:723b7add2473e73c45c81361e1708af4971c321b0391c1298a0557fb8ca4f7f6
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:392f9299c75a3ca4f593eaebdfe515145696f12db9f990bb004cfa58dd6bf0ef
        - quay.io/strimzi/kafka@sha256:49b7530ada1175750ad5a706e545ba3594d85e1e3a90f98b0200a73fa9875057
        - quay.io/strimzi/kafka@sha256:84691b3afb67b312400e01572ff08b64c1e1b1d32a4276e0c21bba10c71c36fe
        - quay.io/strimzi/kafka@sha256:dd1706f36031c96dfcd0da7b3f804168e5f076220caa302973455fdcd76bd03e
        - quay.io/strimzi/operator@sha256:50b49f9b5e554cca517fc2794e11319d5aaba1676494b285baa3a74fc79eb501
        - quay.io/strimzi/kafka@sha256:2badc65532b483bba6c1f6a8b0c9895e993ce24e9ebd3cd953d0d17fbe36d27a
        version: 0.39.0
      entries:
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.39.x
    - currentCSV: strimzi-cluster-operator.v0.40.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:2228d89b53e3524e69d1bcf5c2cd373884ce696d9005389a6c78dad23310e837
          createdAt: "2024-03-09 21:27:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on  [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!**  You have to upgrade first to one of the previous versions of Strimzi.  You will also need to convert the CRD resources.  For more details, see the [documentation](https://strimzi.io/docs/operators/0.40.0/deploying.html#assembly-upgrade-str).

          **From Strimzi 0.40 on, we support only Kubernetes 1.23 and newer.** Kubernetes versions 1.21 and 1.22 are no longer supported.
          ### New in 0.40
          * Add support for Apache Kafka 3.7.0. Remove support for Apache Kafka 3.5.0, 3.5.1, and 3.5.2.
          * The `UseKRaft` feature gate moves to beta stage and is enabled by default. If needed, `UseKRaft` can be disabled in the feature gates configuration in the Cluster Operator.
          * Add support for ZooKeeper to KRaft migration by enabling the users to move from using ZooKeeper to store metadata to KRaft.
          * Add support for moving from dedicated controller-only KRaft nodes to mixed KRaft nodes
          * Added support for Kafka Exporter `offset.show-all` parameter
          * Prevent removal of the `broker` process role from KRaft mixed-nodes that have assigned partition-replicas
          * Improve broker scale-down prevention to continue in reconciliation when scale-down cannot be executed
          * Added support for Tiered Storage by enabling the configuration of custom storage plugins through the Kafka custom resource.
          * Update HTTP bridge to the latest 0.28.0 release
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Aapche ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which  might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to  test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:73deb1af0d93e9fa8955a5a412d0e7138384bdc80e7574e815d21796e446b636
        - quay.io/strimzi/kafka@sha256:2c143eb10b66037ef877311eb767457e4b877d5ff2c47d393c76babec155caff
        - quay.io/strimzi/kafka@sha256:c491a95f9b9b58f406461faf222ef612ad8d2f4d7b53f7f3645b20c99d7d1583
        - quay.io/strimzi/kafka@sha256:e2b9f2835498831bbf30ac2d651de143d57088bcb23943101b066e941db92aca
        - quay.io/strimzi/kaniko-executor@sha256:3fb4ace22589fcf8d3f01b74c37b10b32d87e15d103ea59e0933b61c4e46ff4a
        - quay.io/strimzi/maven-builder@sha256:d02a9b48c77a44eeab6426c9af4adf75405217994bcb01ce0196e616041350d8
        - quay.io/strimzi/operator@sha256:2228d89b53e3524e69d1bcf5c2cd373884ce696d9005389a6c78dad23310e837
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:df4e4dce45f87e684e7e1044a7edb2456160141afb6ba57b9af28088ffbac407
        version: 0.40.0
      entries:
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.40.x
    - currentCSV: strimzi-cluster-operator.v0.41.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:4c687a4fac96ffc22433ca6d00fb1bd31722767b44c9d87c465f95b57fb70089
          createdAt: "2024-05-09 22:23:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.41.0/deploying.html#assembly-upgrade-str).

          **Strimzi 0.41 supports only Kubernetes 1.23 and newer.** Kubernetes versions 1.21 and 1.22 are no longer supported.
          ### New in 0.41
          * Support for Apache Kafka 3.6.2
          * Metrics to monitor CA expiration
          * Support for JBOD storage in KRaft mode. (Note: JBOD support in KRaft mode is considered early access in Apache Kafka 3.7.x)
          * Support for changing topic replication factor by changing the `KafkaTopic` resources.
          * The `KafkaNodePools` feature gate moves to GA stage and is permanently enabled without the possibility to disable it. To use the Kafka Node Pool resources, you still need to use the `strimzi.io/node-pools: enabled` annotation on the `Kafka` custom resources.
          * Support for configuring the `externalIPs` field in node port type services.
          * The `UnidirectionalTopicOperator` feature gate moves to GA stage and is permanently enabled without the possibility to disable it. If the topics whose names start with `strimzi-store-topic` and `strimzi-topic-operator` still exist, you can delete them.
          * Improve validation of `KafkaMirrorMaker2` resource to make sure the Connect cluster is set to the target cluster
          * Continue reconciliation after failed manual rolling update using the `strimzi.io/manual-rolling-update` annotation (when the `ContinueReconciliationOnManualRollingUpdateFailure` feature gate is enabled)
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Aapche ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:fecad1a330421341e6946252f95735ed177a690eab6250be097413ea29ce9473
        - quay.io/strimzi/kaniko-executor@sha256:9404037bd5431b012c8c633ec3345907667453c5532e5bfaaedc78286de22c62
        - quay.io/strimzi/kafka-bridge@sha256:c833f930ead2d1e9054912a20689ee979d335f5e5ca8769e3c6b8a5514a0df96
        - quay.io/strimzi/kafka@sha256:41811bb106d6182978a889eaedffeadffaa5ab1599c4cd8e4f5015b131c7ac30
        - quay.io/strimzi/kafka@sha256:6243d98890c665ef65b5f5fa2ffd046412281ffef31bc7a07cac37bd77b2579d
        - quay.io/strimzi/kafka@sha256:c3a346235ce4dea42986648ca07f2482d8fc0bf654c1d441b1301a23999304db
        - quay.io/strimzi/operator@sha256:4c687a4fac96ffc22433ca6d00fb1bd31722767b44c9d87c465f95b57fb70089
        - quay.io/strimzi/kafka@sha256:bf49499980bbe5d4dd399de0dd396089b0fd9dd29bc46e14d39b20f1e826aec1
        - quay.io/strimzi/maven-builder@sha256:17f09b07fc41a059e6a048cb766046d43a072cfd3a8266c97388a37543dadee8
        version: 0.41.0
      entries:
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.41.x
    - currentCSV: strimzi-cluster-operator.v0.42.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.1",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:ca5c1b70e1196deec4bf519921bfa55a967aa1ea15bd4c182bc56bea08d2e114
          createdAt: "2024-07-03 12:34:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.42.0/deploying.html#assembly-upgrade-str).

          **From version 0.40.0, Strimzi supports only Kubernetes 1.23 and newer.** Kubernetes versions 1.21 and 1.22 are no longer supported.
          ### New in 0.42
          * Support for Apache Kafka 3.7.1
          * The UseKRaft feature gate moves to GA stage and is permanently enabled without the possibility of disabling it. To use KRaft (ZooKeeper-less Apache Kafka), you still need to use the strimzi.io/kraft: enabled annotation on the Kafka custom resources or migrate from an existing ZooKeeper-based cluster.
          * Update the base image used by Strimzi containers from UBI8 to UBI9
          * Add support for filename patterns when configuring trusted certificates
          * Enhance KafkaBridge resource with consumer inactivity timeout and HTTP consumer/producer enablement.
          * Add support for setting publishNotReadyAddresses on services for listener types other than internal.
          * Added support for configuring the quotas plugin with type strimzi or kafka in the Kafka custom resource. The Strimzi Quotas plugin version was updated to 0.3.1.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Aapche ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:fdddffb3de59ba48c05964bb0e760593088d24d1ee35b090112fe6cc6b553cd8
        - quay.io/strimzi/kafka@sha256:841a46e9c10481df3ef702412caf362b55ae07c30a3a5927073356cd36dc049f
        - quay.io/strimzi/kafka@sha256:c56c5abf94897f20f976603cba0678a33cdfbbcd6f9030a193f7684cb9894a6c
        - quay.io/strimzi/kafka@sha256:6527c426f753521c07f3a3df2ee432273a41b109594096b4c6cae2e8e609d669
        - quay.io/strimzi/kafka@sha256:bc49c10b3e839e161e515c3a1e411d1f8df9de5e2c8d71aa7b63ccdbbae9e8d2
        - quay.io/strimzi/kaniko-executor@sha256:11821b0078a270612f1bcc37f5dc716ab273c974648c40f95fa4804352e647a7
        - quay.io/strimzi/maven-builder@sha256:342e8d0086c53cf7334127798e5bd3764b28f5e4909ba67d65f6d937dc3dba05
        - quay.io/strimzi/kafka@sha256:6c519531cdd5f40f326b295d8827344140efe2607a1826f7f1cab8c3427f43f7
        - quay.io/strimzi/operator@sha256:ca5c1b70e1196deec4bf519921bfa55a967aa1ea15bd4c182bc56bea08d2e114
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:9dcf24fecf3ee0d999601c276ac15e8634c275590f2c42b8a6bcb83984bf1445
        version: 0.42.0
      entries:
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.42.x
    - currentCSV: strimzi-cluster-operator.v0.43.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.8.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:d3732245f34afaa6b571f1f912e1cd017891b22003d6367ae8ca059b2a5cb13c
          createdAt: "2024-08-22 15:19:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### Upgrades
          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.43.0/deploying.html#assembly-upgrade-str).

          **Strimzi 0.43 is the last version with support for Kubernetes 1.23 and 1.24.** From Strimzi 0.44, only Kubernetes versions 1.25 and newer will be supported.
          ### New in 0.43
          * Support for Apache Kafka 3.8.0
          * Removed support for Apache Kafka 3.6.0, 3.6.1, and 3.6.2
          * Specifying additional volumes and volume mounts in Strimzi custom resources
          * Support for custom Cruise Control API users
          * Unregistration of KRaft nodes after scale-down
          * Kafka Exporter updated to 1.8.0 (and the Grafana dashboard updated to work with it)
          * Service account based authentication
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/maven-builder@sha256:6414f8f3985f221b0eda53867c00494140108d17579c4dcbbc93934bb00e5d49
        - quay.io/strimzi/operator@sha256:d3732245f34afaa6b571f1f912e1cd017891b22003d6367ae8ca059b2a5cb13c
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:a9950264bfefc536b4e0a0adc2348f92aa41da55dd50a2324ddad0253291b67c
        - quay.io/strimzi/kafka-bridge@sha256:80f329ecd3ba96fac12e75be874dce0debc8395337737581de34238ce11c8fb1
        - quay.io/strimzi/kafka@sha256:ad06ead5125bce87498b1582a76e78143a6d21408ac4b12bb7e6007aa4cabd84
        - quay.io/strimzi/kafka@sha256:b2f4e8895e9ed66228512ce14aec685101fa75dc329128d47cb1c15e3aef3c9c
        - quay.io/strimzi/kafka@sha256:d27cf5bf3624e18ba705246b14f92d12b8a15eb8551b13abf027cf71b549baf0
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        version: 0.43.0
      entries:
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.43.x
    - currentCSV: strimzi-cluster-operator.v0.44.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.8.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:b07b81f7e282dea2e4e29a7c93cfdd911d4715a5c32fe4c4e3d7c71cba3091e8
          createdAt: "2024-08-22 15:19:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.44.0/deploying.html#assembly-upgrade-str).

          **From version 0.44, Strimzi supports only Kuberneets 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.**

          **ZooKeeper support will be soon removed from Apache Kafka and Strimzi.** Currently, the last Strimzi version with ZooKeeper support is expected to be Strimzi 0.45. Please plan your migration to KRaft (ZooKeeper-less Apache Kafka) accordingly. Follow the [documentation](https://strimzi.io/docs/operators/latest/full/deploying.html#assembly-kraft-mode-str) for more details.

          **Kafka Mirror Maker 1 support will be soon removed from Apache Kafka and Strimzi.** Currently, the last Strimzi version with Mirror Maker 1 support is expected to be Strimzi 0.45. Please plan your migration to Mirror Maker 2 or another mirroring tool.

          ### New in 0.44
          * Managing offsets in Connect and Mirror Maker 2 connectors through custom resources
          * Templating `advertisedHost` and `host` fields in listener configuration
          * Configuring environment variables in operands based on Secrets and ConfigMaps
          * Disabling Pod disruption Budget management
          * Auto-rebalancing at scale-up/scale-down
          * `ContinueReconciliationOnManualRollingUpdateFailure` feature gate moves to the beta stage and is enabled by default
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:4d59e60cc75de82bd3f3a063237cef8a5598d315f6d53e803d37589a94929b0e
        - quay.io/strimzi/kafka-bridge@sha256:cc95ce9f496057f3b18d5e8297b40a410cc66f9fd4a2227615971458a26bac25
        - quay.io/strimzi/kafka@sha256:238bb080825b7ecebaa819be09788bc3d056ae8162ebcd41444076dc22f85740
        - quay.io/strimzi/kafka@sha256:98d332b7fa5c9e48f60b516e00ed5812bd9268e014fd2337284e7cc3e664f1eb
        - quay.io/strimzi/kafka@sha256:9a4224635e09ece2c1d3ffe9d715813cf63037461c9f06c1b5f53554aed5ecdc
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        - quay.io/strimzi/maven-builder@sha256:7b55f971a3b62923a9a61a61c82f542e07deeb6ffdbaede68244ba358a0853f2
        - quay.io/strimzi/operator@sha256:b07b81f7e282dea2e4e29a7c93cfdd911d4715a5c32fe4c4e3d7c71cba3091e8
        version: 0.44.0
      entries:
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.44.x
    - currentCSV: strimzi-cluster-operator.v0.45.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.9.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.9"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.9.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.9.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.9.1",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:58e8722216b0b0e8b1dd79109725238fa4016a16cc6a9fca0e327bccb1506810
          createdAt: "2025-06-27 01:38:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.45.1/deploying.html#assembly-upgrade-str).

          **From version 0.45, Strimzi supports only Kuberneets 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.**

          **ZooKeeper and Kafka Mirror Maker 1 support will be removed from Apache Kafka and Strimzi.** Strimzi 0.45 is the last minor Strimzi version with support for ZooKeeper-based Apache Kafka clusters and MirrorMaker 1 deployments. Please make sure to [migrate to KRaft](https://strimzi.io/docs/operators/latest/full/deploying.html#assembly-kraft-mode-str) and MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.

          **Strimzi EnvVar Configuration Provider and Strimzi MirrorMaker 2 Extensions will be removed from Strimzi.** Strimzi 0.45 is the last Strimzi version to include the Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0). Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.
          ### New in 0.45.1
          * Add support for Kafka 3.9.1
          * Update HTTP bridge to 0.31.2
          * Update Strimzi Kafka OAuth library to 0.15.1
          * Fixed bug which may lead to metadata loss within the cluster when restarting a KRaft migration after a previous rollback due to missing `/migration` znode deletion.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        - quay.io/strimzi/operator@sha256:58e8722216b0b0e8b1dd79109725238fa4016a16cc6a9fca0e327bccb1506810
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:40d17d4d0632c272779da152f710fb7c2de50acc3791eb0b9fe445a13c0cb102
        - quay.io/strimzi/kafka-bridge@sha256:c462441a966f0732855e684b4840563bfad45391345c9511fa49e1630ba9c3e3
        - quay.io/strimzi/kafka@sha256:ba52ed046b1dccdbd96f4e68057ce014d862a7c9c1fc670760c023b9aa09f23f
        - quay.io/strimzi/kafka@sha256:e98fbe49cadbc5d3afbd8f17abea218f216c95d52f4fa1fe514a7a988624da24
        - quay.io/strimzi/maven-builder@sha256:770e410f1e7e0e92c31bae6c19831ba36d59dd11b44e90c159aef16a965aa998
        - quay.io/strimzi/kafka@sha256:173cb5793756f75739c51a83bbe06d7f0094fd003a2982160a5cc6e216cd6d28
        - quay.io/strimzi/kafka@sha256:6a05924839a2c7da0431408e6d6223a055e75d88b3f057ac5caa7f9097227f56
        version: 0.45.1
      entries:
      - name: strimzi-cluster-operator.v0.45.1
        version: 0.45.1
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.45.x
    - currentCSV: strimzi-cluster-operator.v0.46.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.0.0",
                      "metadataVersion": "4.0-IV3",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.0.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:6a22e4968e9d409405423d12c04a0e3fecaea2ee2794bd27de7cf21f59453265
          createdAt: "2025-06-26 11:58:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.

          **!!! IMPORTANT !!!**

          **Direct upgrade from Strimzi 0.22 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Strimzi. You will also need to convert the CRD resources. For more details, see the [documentation](https://strimzi.io/docs/operators/0.46.0/deploying.html#assembly-upgrade-str).

          **From version 0.46, Strimzi supports only Kuberneets 1.25 and newer. Kubernetes 1.23 and 1.24 are not supported anymore.**
          **Support for ZooKeeper-based clusters and for migration from ZooKeeper-based clusters to KRaft has been removed. Please make sure all your clusters are using KRaft before upgrading to Strimzi 0.46.0 or newer!
          **Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0) plugins were removed from Strimzi container images. Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.
          **Support for MirrorMaker 1 has been removed. Please make sure to migrate to MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.
          ### New in 0.46.1
          * Update CSV file for OLM installation to add missing permission for broker Pods to "get" nodes Kubernetes resource.
          * Allow the injection of annotations on the deployment object in Helm charts.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          You can contribute by:
          * Raising any issues you find using Strimzi
          * Fixing issues by opening Pull Requests
          * Improving documentation
          * Talking about Strimzi
          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/strimzi/strimzi-kafka-operator/issues). Issues which might be a good start for new contributors are marked with ["good-start"](https://github.com/strimzi/strimzi-kafka-operator/labels/good-start) label.
          The [Development guide](https://github.com/strimzi/strimzi-kafka-operator/blob/main/development-docs/DEV_GUIDE.md) describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.
          The [Documentation Contributor Guide](https://strimzi.io/contributing/guide/) describes how to contribute to Strimzi documentation.
          If you want to get in touch with us first before contributing, you can use:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/operator@sha256:6a22e4968e9d409405423d12c04a0e3fecaea2ee2794bd27de7cf21f59453265
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:8e321dc1bf74ba331b62d21bff4d8993956ab935cf5be32f01e7f7aa6897bf22
        - quay.io/strimzi/kafka-bridge@sha256:3e1815aed3f74b8573cebfced66b2c78ca0cf7c746c26db2002380cd39d09ae6
        - quay.io/strimzi/kafka@sha256:82273d873ce21a73f8f3118bf61627cb15734b43ea7ca92d43b290340b44e485
        - quay.io/strimzi/kafka@sha256:f3837f8cb2a60e906e84486128c41c398424f4085df2348e9e0486bfc12089fd
        - quay.io/strimzi/kaniko-executor@sha256:ef1a39c363e145041d80103c3c12da9429ce06cf21dff6fb1fb75d0c0ed9c35b
        - quay.io/strimzi/maven-builder@sha256:b532234c234fc30fecec992ad1a6154c5ef08ebf9a20ec8bc62e0c88d791ff36
        version: 0.46.1
      entries:
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.46.x
    - currentCSV: strimzi-cluster-operator.v0.47.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.0.0",
                      "metadataVersion": "4.0-IV3",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.0.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.0.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:589c4d63641d9a944462dd682f6e5febe8b38ff55b9253949b061aca16feb154
          createdAt: "2025-07-12 17:21:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * **Support for ZooKeeper-based clusters and for migration from ZooKeeper-based clusters to KRaft has been removed.**
            Please make sure all your clusters are using KRaft before upgrading to Strimzi 0.46.0 or newer!

          * **Strimzi 0.47 is the last Strimzi version with support for Kubernetes 1.25 and 1.26.**
            From Strimzi 0.48.0 on, we will support only Kubernetes 1.27 and newer.

          * **Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0) plugins were removed from Strimzi container images.**
            Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.

          * **Support for MirrorMaker 1 has been removed.**
            Please make sure to migrate to MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.

          ### New in 0.47.0
          * Support for Kafka 3.9.1
          * Progress tracking for Cruise Control rebalances
          * Support for Kubernetes Image Volumes to mount custom plugins
          * Support for [JsonTemplateLayout](https://logging.apache.org/log4j/2.x/manual/json-template-layout.html) in Operators, Cruise Control, and Kafka 4.0.0
          * Support for Strimzi Metrics Reporter for the Kafka brokers / controllers
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kafka-bridge@sha256:428c5587f547dabfc995a73745569d113380c7e6b8bf0b2504c6a9a00d6c4608
        - quay.io/strimzi/kafka@sha256:551882f47a6d2dc8300bcfca251fffffc3379acb2724a7efe16f17c0c4f529fb
        - quay.io/strimzi/kafka@sha256:8a793cdf5084cdb72c6663419530985158b16330a518720e9e9d1d96babbaf7e
        - quay.io/strimzi/kafka@sha256:978e2ed5f0d315e8bf0ab0503ee839acbd9da01ca427e6581b59ac25d36bc9c9
        - quay.io/strimzi/kaniko-executor@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/maven-builder@sha256:c67a3ad3d92420ac8b7f8435eeec53ebffaea4e894e65414a7c47c20e3faba27
        - quay.io/strimzi/operator@sha256:589c4d63641d9a944462dd682f6e5febe8b38ff55b9253949b061aca16feb154
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:16fbdaaf303ab40202d49438737f3307926594a5259081eeeb39595b7ea41f8e
        version: 0.47.0
      entries:
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.47.x
    - currentCSV: strimzi-cluster-operator.v0.48.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.1.0",
                      "metadataVersion": "4.1-IV1",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.1.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:73dc9555c4a73094b497ffb14d816de5ff40144ffc470efd75ccf128afa22778
          createdAt: "2025-09-25 10:32:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * **Support for ZooKeeper-based clusters and for migration from ZooKeeper-based clusters to KRaft has been removed.**
            Please make sure all your clusters are using KRaft before upgrading to Strimzi 0.46.0 or newer!

          * **Strimzi 0.48.0 supports only Kubernetes 1.27 and newer.**
            Kubernetes 1.25 and 1.26 are not supported anymore

          * **Strimzi EnvVar Configuration Provider (deprecated in Strimzi 0.38.0) and Strimzi MirrorMaker 2 Extensions (deprecated in Strimzi 0.28.0) plugins were removed from Strimzi container images.**
            Please use the Apache Kafka EnvVarConfigProvider and Identity Replication Policy instead.

          * **Support for MirrorMaker 1 has been removed.**
            Please make sure to migrate to MirrorMaker 2 before upgrading to Strimzi 0.46 or newer.

          ### New in 0.48.0
          * Support for Kafka 4.1.0
          * Add monitoring of custom resources using kubernetes-state-metrics (KSM)
          * Support for type: custom client authentication
          * Added support for Strimzi Metrics Reporter to Kafka Connect, Mirror Maker 2 and Kafka Bridge.
          * Added support for KIP-745 in Kafka Connector and Mirror Maker 2, allowing the usage of includeTasks and onlyFailed arguments in Kafka connectors restart.
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/strimzi/kaniko-executor@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/maven-builder@sha256:64380efcb8da87fdc0e0de238a20456be9abb830174c2f2331882b7a84657e57
        - quay.io/strimzi/operator@sha256:73dc9555c4a73094b497ffb14d816de5ff40144ffc470efd75ccf128afa22778
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:a4a74cd4bb69717cc58d8996231fd49d8a18be3069a88489ad2409bde4b2a17e
        - quay.io/strimzi/kafka-bridge@sha256:53034f64f0b672f10b5bacea1c7a25132f118df7fd5c9032c4dbf702ed93796a
        - quay.io/strimzi/kafka@sha256:34450afc1a3399a9026fc3c6ec90e9f6adfec9faf6520545b4d84e90cda34964
        - quay.io/strimzi/kafka@sha256:48db05ad2e9fa39eb388089e7e25654bcbf4da1ddc3a5635d675056c28bbcb96
        version: 0.48.0
      entries:
      - name: strimzi-cluster-operator.v0.48.0
        version: 0.48.0
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.48.x
    - currentCSV: strimzi-cluster-operator.v0.49.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec":{
                  "kafka":{
                      "version":"4.1.1",
                      "metadataVersion": "4.1-IV1",
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"4.1.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "groupId":"my-connect-group",
                  "configStorageTopic":"my-connect-configs",
                  "statusStorageTopic":"my-connect-status",
                  "offsetStorageTopic":"my-connect-offsets",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"4.1.1",
                  "replicas": 1,
                  "target": {
                    "alias": "cluster-b",
                    "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                    "groupId":"my-mm2-group",
                    "configStorageTopic":"my-mm2-configs",
                    "statusStorageTopic":"my-mm2-status",
                    "offsetStorageTopic":"my-mm2-offsets",
                    "config": {
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                    }
                  },
                  "mirrors": [
                    {
                      "source": {
                        "alias": "cluster-a",
                        "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                      },
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Strimzi Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
          createdAt: "2025-11-18 15:11:00"
          description: Strimzi provides a way to run an Apache Kafka cluster on Kubernetes
            or OpenShift in various deployment configurations.
          features.operators.openshift.io/disconnected: “true”
          features.operators.openshift.io/fips-compliant: “true”
          features.operators.openshift.io/proxy-aware: “true”
          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”
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy",
            "proxy-aware", "fips"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Strimzi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1
        description: |
          Strimzi provides a way to run an [Apache Kafka®](https://kafka.apache.org) cluster on [Kubernetes](https://kubernetes.io/) or [OpenShift](https://www.openshift.com/) in various deployment configurations. See our [website](https://strimzi.io) for more details about the project.
          ### !!! IMPORTANT !!!
          * ⚠️ **SECURITY: Strimzi 0.49.1 addresses CVE-2025-66623.**
            **If you use Strimzi 0.47.0 or newer, we recommend upgrading to 0.49.1.**

          * **Strimzi 0.49 introduces new API version `v1` to all Strimzi custom resources.**
            The old API versions (`v1alpha1`, `v1beta1`, and `v1beta2`) will continue to be supported until Strimzi 1.0.0 / 0.52.0.
            For more details about the migration to the v1 API and CRD upgrades, see the [documentation](https://strimzi.io/docs/operators/in-development/deploying.html#assembly-api-conversion-str).

          * **Before upgrading to Strimzi 0.49 or newer**, make sure that you update your KafkaUser resources to [use the `.spec.authorization.acls[].operations` field instead of the deprecated `.spec.authorization.acls[].operation`](https://strimzi.io/docs/operators/in-development/deploying.html#con-api-conversion-v1-str).
          * **When rack-awareness is enabled in the `Kafka` custom resource (`.spec.kafka.rack`), Strimzi will not automatically add the best-effort-affinity rules for spreading the Kafka Pods between the zones.**
            Please make sure to set your own `topologySpreadConstraint` or `affinity` rules instead.

          * **From Strimzi 0.48.0, we support only Kubernetes 1.27 and newer.**
            Kubernetes 1.25 and 1.26 are not supported anymore

          ### New in 0.49
          * Support for Kafka 4.0.1 and 4.1.1
          * New v1 API for Strimzi CRDs
          * Refactoring of the KafkaConnect and KafkaMirrorMaker2 custom resources and their structure
          * Changes to how the template fields in Kafka and KafkaNodePool custom resources are handled
          * Removed automatic best-effort affinity rules when rack-awareness is enabled
          * BlockOwnerDeletion is set to true in owner references
          * Support of Buildah for building custom Kafka Connect container images
          * And many more ...
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Strimzi Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://strimzi.io/docs/operators/latest/deploying.html#assembly-upgrading-kafka-versions-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Strimzi requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Strimzi Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Strimzi also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation to the current _main_ branch as well as all releases can be found on our [website](https://strimzi.io/documentation).
          ### Getting help
          If you encounter any issues while using Strimzi, you can get help using:
          * [Strimzi mailing list on CNCF](https://lists.cncf.io/g/cncf-strimzi-users/topics)
          * [Strimzi Slack channel on CNCF workspace](https://cloud-native.slack.com/messages/strimzi)
          ### Contributing
          Learn more about contributing to Strimzi on our [Join Us page](https://strimzi.io/join-us/).
          ### License
          Strimzi is licensed under the [Apache License, Version 2.0](https://github.com/strimzi/strimzi-kafka-operator/blob/main/LICENSE).
        displayName: Strimzi
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Website
          url: https://strimzi.io/
        - name: Documentation
          url: https://strimzi.io/documentation/
        - name: Mailing list
          url: https://lists.cncf.io/g/cncf-strimzi-users/topics
        - name: Slack
          url: https://cloud-native.slack.com/messages/strimzi
        - name: GitHub
          url: https://github.com/strimzi/strimzi-kafka-operator
        maintainers:
        - email: cncf-strimzi-users@lists.cncf.io
          name: Strimzi
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Strimzi
        relatedImages:
        - quay.io/community-operator-pipeline-prod/strimzi-kafka-operator@sha256:928c76a840e7de6f1d9350988238bec7035ed981118e64cfedde4e32d5cb5baf
        - quay.io/strimzi/kaniko-executor@sha256:ba89470b45a49e5e09aaab91a5c3c03ecb14f9013d598bc14b3d756eb9a145b4
        - quay.io/strimzi/buildah@sha256:a5088c14d7b8bf1d336669cba047b971bf3ece8969647dae2c1e3a07a7be0c5e
        - quay.io/strimzi/kafka-bridge@sha256:53034f64f0b672f10b5bacea1c7a25132f118df7fd5c9032c4dbf702ed93796a
        - quay.io/strimzi/kafka@sha256:8f775ee53622bf68b791c405e40299baa3d845b98e282d1a9269f9466018e990
        - quay.io/strimzi/kafka@sha256:73799dcf5bc7d1bb19f500f345d8892a1f91cf0213e01d9b59d3a1a53cc80aca
        - quay.io/strimzi/kafka@sha256:bfbee54f85beb3731cf41483befa39d8c5ebe5db002df6265c6ea95b6a156749
        - quay.io/strimzi/kafka@sha256:d495d3b6c98d1ea22ed3bdf0d6d06d6cda1c5b35087c817e8cf807892b178520
        - quay.io/strimzi/operator@sha256:f0cea0535f65bca8d9e503d62de27bd1327e18e8cee64a515f3e9d06506c5aad
        - quay.io/strimzi/maven-builder@sha256:b8831c2aad621b80dce38484fae353cc5226bfc4dffb0f4c9d8b8d86e0fb3933
        version: 0.49.1
      entries:
      - name: strimzi-cluster-operator.v0.49.1
        version: 0.49.1
      - name: strimzi-cluster-operator.v0.49.0
        version: 0.49.0
      - name: strimzi-cluster-operator.v0.48.0
        version: 0.48.0
      - name: strimzi-cluster-operator.v0.47.0
        version: 0.47.0
      - name: strimzi-cluster-operator.v0.46.1
        version: 0.46.1
      - name: strimzi-cluster-operator.v0.46.0
        version: 0.46.0
      - name: strimzi-cluster-operator.v0.45.0
        version: 0.45.0
      - name: strimzi-cluster-operator.v0.44.0
        version: 0.44.0
      - name: strimzi-cluster-operator.v0.43.0
        version: 0.43.0
      - name: strimzi-cluster-operator.v0.42.0
        version: 0.42.0
      - name: strimzi-cluster-operator.v0.41.0
        version: 0.41.0
      - name: strimzi-cluster-operator.v0.40.0
        version: 0.40.0
      - name: strimzi-cluster-operator.v0.39.0
        version: 0.39.0
      - name: strimzi-cluster-operator.v0.38.0
        version: 0.38.0
      - name: strimzi-cluster-operator.v0.37.0
        version: 0.37.0
      - name: strimzi-cluster-operator.v0.36.1
        version: 0.36.1
      - name: strimzi-cluster-operator.v0.36.0
        version: 0.36.0
      - name: strimzi-cluster-operator.v0.35.1
        version: 0.35.1
      - name: strimzi-cluster-operator.v0.35.0
        version: 0.35.0
      - name: strimzi-cluster-operator.v0.34.0
        version: 0.34.0
      - name: strimzi-cluster-operator.v0.33.2
        version: 0.33.2
      - name: strimzi-cluster-operator.v0.33.1
        version: 0.33.1
      - name: strimzi-cluster-operator.v0.33.0
        version: 0.33.0
      - name: strimzi-cluster-operator.v0.32.0
        version: 0.32.0
      - name: strimzi-cluster-operator.v0.31.1
        version: 0.31.1
      - name: strimzi-cluster-operator.v0.31.0
        version: 0.31.0
      - name: strimzi-cluster-operator.v0.30.0
        version: 0.30.0
      - name: strimzi-cluster-operator.v0.29.0
        version: 0.29.0
      - name: strimzi-cluster-operator.v0.28.0
        version: 0.28.0
      - name: strimzi-cluster-operator.v0.27.1
        version: 0.27.1
      - name: strimzi-cluster-operator.v0.27.0
        version: 0.27.0
      - name: strimzi-cluster-operator.v0.26.1
        version: 0.26.1
      - name: strimzi-cluster-operator.v0.26.0
        version: 0.26.0
      - name: strimzi-cluster-operator.v0.25.0
        version: 0.25.0
      - name: strimzi-cluster-operator.v0.24.0
        version: 0.24.0
      - name: strimzi-cluster-operator.v0.23.0
        version: 0.23.0
      name: strimzi-0.49.x
    defaultChannel: stable
    packageName: strimzi-kafka-operator
    provider:
      name: Strimzi
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: openshift-builds-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-builds-operator.v1.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "OpenShiftBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "sharedResource": {
                    "state": "Enabled"
                  },
                  "shipwright": {
                    "build": {
                      "state": "Enabled"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.shipwright.io/v1alpha1",
                "kind": "ShipwrightBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "targetNamespace": "openshift-builds"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/openshift-builds/openshift-builds-operator-rhel9
          createdAt: "2025-12-30T13:44:07Z"
          description: Builds for Red Hat OpenShift is a framework for building container
            images on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-builds
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["openshiftbuilds.operator.openshift.io","shipwrightbuilds.operator.shipwright.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/shipwright-io/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OpenShiftBuild describes the desired state of Builds for
              OpenShift, and the status of all deployed components.
            displayName: Open Shift Build
            kind: OpenShiftBuild
            name: openshiftbuilds.operator.openshift.io
            version: v1alpha1
          - description: ShipwrightBuild represents the deployment of Shipwright's
              build controller on a Kubernetes cluster.
            displayName: Shipwright Build
            kind: ShipwrightBuild
            name: shipwrightbuilds.operator.shipwright.io
            version: v1alpha1
        description: "Builds for Red Hat OpenShift is an extensible build framework
          based on the Shipwright project, \nwhich you can use to build container
          images on an OpenShift Container Platform cluster. \nYou can build container
          images from source code and Dockerfile by using image build tools, \nsuch
          as Source-to-Image (S2I), Buildah, and Buildpacks. You can create and apply
          build resources, view logs of build runs, \nand manage builds in your OpenShift
          Container Platform namespaces.\n\n## Prerequisites\n\n* OpenShift Pipelines
          operator must be installed before installing this operator\n\nRead more:
          [https://shipwright.io](https://shipwright.io)\n\n## Features\n\n* Standard
          Kubernetes-native API for building container images from source code and
          Dockerfile\n\n* Support for Source-to-Image (S2I) and Buildah build strategies\n\n*
          Extensibility with your own custom build strategies\n\n* Execution of builds
          from source code in a local directory\n\n* Shipwright CLI for creating and
          viewing logs, and managing builds on the cluster\n\n* Integrated user experience
          with the Developer perspective of the OpenShift Container Platform web console\n"
        displayName: Builds for Red Hat OpenShift Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - build
        - shipwright
        - tekton
        - cicd
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/builds_for_red_hat_openshift/1.4
        - name: Builds for Openshift
          url: https://github.com/redhat-openshift-builds/operator
        maintainers:
        - email: openshift-builds@redhat.com
          name: Red Hat OpenShift Builds Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift-builds/openshift-builds-git-cloner-rhel9@sha256:05c3e7cb8437bbfdbce0caa23eaf19a7fd88b7485cfac710ec05606776d4c426
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-operator-bundle@sha256:2111825788f8e8f63b780c20da94e9b7aa49b505f81e466ad3cd3dc5cec1f775
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-rhel9@sha256:ddedf46115f3dea9e7ef24ebf414e4f16d9fd69b39290d7e66dbb4482208d862
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:ce7050192d9850ed4c35cb3295ccdeec1aa593e27e3a3da6d6aca97cde782abe
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/openshift-builds/openshift-builds-controller-rhel9@sha256:332238b8796ce5441d7ab7e0c99c016c5bd49923549b46b456222c3a763fda69
        - registry.redhat.io/openshift-builds/openshift-builds-image-bundler-rhel9@sha256:58de712d39ab518e2ea41b165b2067bf057335fec58e4becc7c881d04f589b9f
        - registry.redhat.io/openshift-builds/openshift-builds-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        version: 1.6.2
      entries:
      - name: openshift-builds-operator.v1.6.2
        version: 1.6.2
      - name: openshift-builds-operator.v1.6.1
        version: 1.6.1
      - name: openshift-builds-operator.v1.6.0
        version: 1.6.0
      name: builds-1.6
    - currentCSV: openshift-builds-operator.v1.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "OpenShiftBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "sharedResource": {
                    "state": "Enabled"
                  },
                  "shipwright": {
                    "build": {
                      "state": "Enabled"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.shipwright.io/v1alpha1",
                "kind": "ShipwrightBuild",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "targetNamespace": "openshift-builds"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/openshift-builds/openshift-builds-operator-rhel9
          createdAt: "2025-12-30T13:44:07Z"
          description: Builds for Red Hat OpenShift is a framework for building container
            images on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-builds
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["openshiftbuilds.operator.openshift.io","shipwrightbuilds.operator.shipwright.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/shipwright-io/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OpenShiftBuild describes the desired state of Builds for
              OpenShift, and the status of all deployed components.
            displayName: Open Shift Build
            kind: OpenShiftBuild
            name: openshiftbuilds.operator.openshift.io
            version: v1alpha1
          - description: ShipwrightBuild represents the deployment of Shipwright's
              build controller on a Kubernetes cluster.
            displayName: Shipwright Build
            kind: ShipwrightBuild
            name: shipwrightbuilds.operator.shipwright.io
            version: v1alpha1
        description: "Builds for Red Hat OpenShift is an extensible build framework
          based on the Shipwright project, \nwhich you can use to build container
          images on an OpenShift Container Platform cluster. \nYou can build container
          images from source code and Dockerfile by using image build tools, \nsuch
          as Source-to-Image (S2I), Buildah, and Buildpacks. You can create and apply
          build resources, view logs of build runs, \nand manage builds in your OpenShift
          Container Platform namespaces.\n\n## Prerequisites\n\n* OpenShift Pipelines
          operator must be installed before installing this operator\n\nRead more:
          [https://shipwright.io](https://shipwright.io)\n\n## Features\n\n* Standard
          Kubernetes-native API for building container images from source code and
          Dockerfile\n\n* Support for Source-to-Image (S2I) and Buildah build strategies\n\n*
          Extensibility with your own custom build strategies\n\n* Execution of builds
          from source code in a local directory\n\n* Shipwright CLI for creating and
          viewing logs, and managing builds on the cluster\n\n* Integrated user experience
          with the Developer perspective of the OpenShift Container Platform web console\n"
        displayName: Builds for Red Hat OpenShift Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - build
        - shipwright
        - tekton
        - cicd
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/builds_for_red_hat_openshift/1.4
        - name: Builds for Openshift
          url: https://github.com/redhat-openshift-builds/operator
        maintainers:
        - email: openshift-builds@redhat.com
          name: Red Hat OpenShift Builds Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift-builds/openshift-builds-webhook-rhel9@sha256:975c8c146dee707b8f811f4f23ef9e44eadf0e0171908368a6b33eda808c4a45
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/openshift-builds/openshift-builds-controller-rhel9@sha256:332238b8796ce5441d7ab7e0c99c016c5bd49923549b46b456222c3a763fda69
        - registry.redhat.io/openshift-builds/openshift-builds-operator-bundle@sha256:2111825788f8e8f63b780c20da94e9b7aa49b505f81e466ad3cd3dc5cec1f775
        - registry.redhat.io/openshift-builds/openshift-builds-rhel9-operator@sha256:fd0d0ff08501d0592a674cbb0fb95e09c32515547c145a56fadc8e2ed6d0df25
        - registry.redhat.io/openshift-builds/openshift-builds-waiters-rhel9@sha256:1e94ff2ffc0e7d8734889c7ab459d9a3a62245679b197d7ceceef7d3a25da901
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:ce7050192d9850ed4c35cb3295ccdeec1aa593e27e3a3da6d6aca97cde782abe
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/ubi9/buildah@sha256:8ea2b81b32f70b9502d88722a5f69de8c0cf5efa6f30df041873546e9f9438cb
        - registry.redhat.io/openshift-builds/openshift-builds-git-cloner-rhel9@sha256:05c3e7cb8437bbfdbce0caa23eaf19a7fd88b7485cfac710ec05606776d4c426
        - registry.redhat.io/openshift-builds/openshift-builds-image-bundler-rhel9@sha256:58de712d39ab518e2ea41b165b2067bf057335fec58e4becc7c881d04f589b9f
        - registry.redhat.io/openshift-builds/openshift-builds-image-processing-rhel9@sha256:9e003dfee29d6ac713034d50fbe82c13a23e2637759cdd36c62a25c9815c093c
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-rhel9@sha256:ddedf46115f3dea9e7ef24ebf414e4f16d9fd69b39290d7e66dbb4482208d862
        - registry.redhat.io/openshift-builds/openshift-builds-shared-resource-webhook-rhel9@sha256:dbdb7e1d3e27a615968dcbfc416eaad39f37397b25dfe579d1a24589df113f62
        version: 1.6.2
      entries:
      - name: openshift-builds-operator.v1.6.2
        version: 1.6.2
      - name: openshift-builds-operator.v1.6.1
        version: 1.6.1
      - name: openshift-builds-operator.v1.6.0
        version: 1.6.0
      name: latest
    defaultChannel: latest
    packageName: openshift-builds-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Windup
      provider-url: ""
    name: windup-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: windup-operator.v0.0.25
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
             {
               "apiVersion": "windup.jboss.org/v1",
               "kind": "Windup",
               "metadata": {
                 "name": "windup",
                 "labels": {
                   "application": "windup"
                 }
               },
               "spec": {}
             }
            ]
          capabilities: Basic Install
          categories: Modernization & Migration
          certified: "false"
          containerImage: quay.io/windupeng/windup-operator-native:0.0.25
          createdAt: 01/22/24
          description: Windup is an analysis tool that supports the modernization
            and migration of Java applications.
          imagePullPolicy: Always
          operatorframework.io/suggested-namespace: windup
          repository: https://github.com/windup/windup-operator/
          support: https://issues.redhat.com/projects/WINDUP
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: "Create a Windup Web Console application.  \n\nTo access
              the Windup Web Console application from the \"Developer\" perspective,
              please go to Topology and click on the \"Open URL\" icon on the web-console
              pod.  \n\nAlternatively from the \"Administrator\" perspective, please
              go to Networking->Routes and click on the Location hyperlink.  \n\nKnown
              issue  \nIf you want to customize the Windup Web Console instance's
              parameters and you can not see any in the `Form view`, please switch
              to the `YAML view` and change them as needed.\n"
            displayName: Windup
            kind: Windup
            name: windups.windup.jboss.org
            version: v1
        description: |
          Windup is a web console application that supports large-scale Java application modernization and migration projects across a broad range of transformations and use cases.

          It analyzes application code, supports effort estimation, accelerates code migration, and enables users to move applications to containers.

          For more information please refer to the [https://windup.github.io/](https://windup.github.io/) page.
        displayName: Windup Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - modernization
        - windup
        links:
        - name: Website
          url: https://windup.github.io
        - name: GitHub
          url: https://github.com/windup/windup-operator
        maintainers:
        - email: migrate@redhat.com
          name: Windup
        maturity: alpha
        provider:
          name: Windup
        relatedImages:
        - quay.io/community-operator-pipeline-prod/windup-operator@sha256:4e2bafba54eb01b0ae77555d2ff3da2c34286c7c173756dd20a90de28be36535
        - quay.io/windupeng/windup-operator-native:0.0.25
        version: 0.0.25
      entries:
      - name: windup-operator.v0.0.25
        version: 0.0.25
      - name: windup-operator.v0.0.24
        version: 0.0.24
      - name: windup-operator.v0.0.23
        version: 0.0.23
      - name: windup-operator.v0.0.22
        version: 0.0.22
      - name: windup-operator.v0.0.21
        version: 0.0.21
      - name: windup-operator.v0.0.20
        version: 0.0.20
      - name: windup-operator.v0.0.19
        version: 0.0.19
      - name: windup-operator.v0.0.18
        version: 0.0.18
      - name: windup-operator.v0.0.17
        version: 0.0.17
      - name: windup-operator.v0.0.16
        version: 0.0.16
      - name: windup-operator.v0.0.15
        version: 0.0.15
      - name: windup-operator.v0.0.14
        version: 0.0.14
      - name: windup-operator.v0.0.13
        version: 0.0.13
      - name: windup-operator.v0.0.12
        version: 0.0.12
      - name: windup-operator.v0.0.11
        version: 0.0.11
      name: alpha
    defaultChannel: alpha
    packageName: windup-operator
    provider:
      name: Windup
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: aws-efs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-efs-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"aws-efs.managed.openshift.io/v1alpha1","kind":"SharedVolume","metadata":{"name":"sv1"},"spec":{"accessPointID":
            "fsap-0123456789abcdef", "fileSystemID": "fs-0123cdef"}}]'
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/app-sre/aws-efs-operator:9c87267
          createdAt: "2021-12-20T19:51:50Z"
          description: Manage read-write-many access to AWS EFS volumes in an OpenShift
            cluster.
          repository: https://github.com/openshift/aws-efs-operator
          support: https://github.com/openshift/aws-efs-operator/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Shared Volume
            displayName: SharedVolume
            kind: SharedVolume
            name: sharedvolumes.aws-efs.managed.openshift.io
            version: v1alpha1
        description: |-
          ## About the managed application
          AWS provides Elastic File System, an NFS-based shared storage solution. A couple of mechanisms exist to enable mounting such a file system in containers. Curating these options and making them work in a cluster is nontrivial.
          ## About this Operator
          The aws-efs-operator minimizes the barrier to entry for container use of EFS by:
          - Installing the [AWS EFS CSI Driver](https://github.com/kubernetes-sigs/aws-efs-csi-driver) and supporting infrastructure.
          - Reducing the identification of a shared storage resource to a simple Custom Resource Definition with only two fields.
          - Creating the necessary PersistentVolume and PersistentVolumeClaim resources that can simply be referenced from a Pod specification.

          More information can be found in the operator's [source repository](https://github.com/openshift/aws-efs-operator).
          ## Prerequisites for enabling this Operator
          An OpenShift cluster backed by AWS.
        displayName: AWS EFS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AWS
        - EFS
        - NFS
        - Shared storage
        links:
        - name: README
          url: https://github.com/openshift/aws-efs-operator/blob/master/README.md
        - name: Design
          url: https://github.com/openshift/aws-efs-operator/blob/master/DESIGN.md
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/app-sre/aws-efs-operator:9c87267
        - quay.io/openshift-community-operators/aws-efs-operator@sha256:6372847df81faddc23c938928157c3ac280e537a4eec9f7edd599480260bc566
        version: 0.0.8
      entries:
      - name: aws-efs-operator.v0.0.8
        version: 0.0.8
      name: stable
    defaultChannel: stable
    packageName: aws-efs-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Elastic
      provider-url: ""
    name: elasticsearch-eck-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: elasticsearch-eck-operator-certified.v3.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                    "apiVersion": "elasticsearch.k8s.elastic.co/v1",
                    "kind": "Elasticsearch",
                    "metadata": {
                        "name": "elasticsearch-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "nodeSets": [
                            {
                                "name": "default",
                                "config": {
                                    "node.roles": ["master", "data"],
                                    "node.attr.attr_name": "attr_value",
                                    "node.store.allow_mmap": false
                                },
                                "podTemplate": {
                                    "metadata": {
                                        "labels": {
                                            "foo": "bar"
                                        }
                                    },
                                    "spec": {
                                        "containers": [
                                            {
                                                "name": "elasticsearch",
                                                "resources": {
                                                    "requests": {
                                                        "memory": "4Gi",
                                                        "cpu": 1
                                                    },
                                                    "limits": {
                                                        "memory": "4Gi",
                                                        "cpu": 2
                                                    }
                                                }
                                            }
                                        ]
                                    }
                                },
                                "count": 3
                            }
                        ]
                    }
                },
                {
                    "apiVersion": "kibana.k8s.elastic.co/v1",
                    "kind": "Kibana",
                    "metadata": {
                        "name": "kibana-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        },
                        "podTemplate": {
                            "metadata": {
                                "labels": {
                                    "foo": "bar"
                                }
                            },
                            "spec": {
                                "containers": [
                                    {
                                        "name": "kibana",
                                        "resources": {
                                            "requests": {
                                                "memory": "1Gi",
                                                "cpu": 0.5
                                            },
                                            "limits": {
                                                "memory": "2Gi",
                                                "cpu": 2
                                            }
                                        }
                                    }
                                ]
                            }
                        }
                    }
                },
                {
                    "apiVersion": "apm.k8s.elastic.co/v1",
                    "kind": "ApmServer",
                    "metadata": {
                        "name": "apmserver-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        }
                    }
                },
                {
                    "apiVersion": "enterprisesearch.k8s.elastic.co/v1",
                    "kind": "EnterpriseSearch",
                    "metadata": {
                        "name": "ent-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "config": {
                            "ent_search.external_url": "https://localhost:3002"
                        },
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        }
                    }
                },
                {
                  "apiVersion": "beat.k8s.elastic.co/v1beta1",
                  "kind": "Beat",
                  "metadata": {
                    "name": "heartbeat-sample"
                  },
                  "spec": {
                    "type": "heartbeat",
                    "version": "9.2.0",
                    "elasticsearchRef": {
                      "name": "elasticsearch-sample"
                    },
                    "config": {
                      "heartbeat.monitors": [
                        {
                          "type": "tcp",
                          "schedule": "@every 5s",
                          "hosts": [
                            "elasticsearch-sample-es-http.default.svc:9200"
                          ]
                        }
                      ]
                    },
                    "deployment": {
                      "replicas": 1,
                      "podTemplate": {
                        "spec": {
                          "securityContext": {
                            "runAsUser": 0
                          }
                        }
                      }
                    }
                  }
                },
                {
                  "apiVersion": "agent.k8s.elastic.co/v1alpha1",
                  "kind": "Agent",
                  "metadata": {
                    "name": "agent-sample"
                  },
                  "spec": {
                    "version": "9.2.0",
                    "elasticsearchRefs": [
                      {
                        "name": "elasticsearch-sample"
                      }
                    ],
                    "daemonSet": {},
                    "config": {
                      "inputs": [
                        {
                          "name": "system-1",
                          "revision": 1,
                          "type": "system/metrics",
                          "use_output": "default",
                          "meta": {
                            "package": {
                              "name": "system",
                              "version": "0.9.1"
                            }
                          },
                          "data_stream": {
                            "namespace": "default"
                          },
                          "streams": [
                            {
                              "id": "system/metrics-system.cpu",
                              "data_stream": {
                                "dataset": "system.cpu",
                                "type": "metrics"
                              },
                              "metricsets": [
                                "cpu"
                              ],
                              "cpu.metrics": [
                                "percentages",
                                "normalized_percentages"
                              ],
                              "period": "10s"
                            }
                          ]
                        }
                      ]
                    }
                  }
                },
                {
                    "apiVersion": "maps.k8s.elastic.co/v1alpha1",
                    "kind": "ElasticMapsServer",
                    "metadata": {
                        "name": "ems-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1,
                        "elasticsearchRef": {
                            "name": "elasticsearch-sample"
                        }
                    }
                },
                {
                    "apiVersion": "logstash.k8s.elastic.co/v1alpha1",
                    "kind": "Logstash",
                    "metadata" : {
                        "name": "logstash-sample"
                    },
                    "spec": {
                        "version": "9.2.0",
                        "count": 1
                    }
                }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: registry.connect.redhat.com/elastic/eck-operator@sha256:28925fffef8f7c920b2510810cbcfc0f3dadab5f8a80b01fd5ae500e5c070105
          createdAt: "2025-10-31 20:52:32"
          description: Run Elasticsearch, Kibana, APM Server, Beats, Enterprise Search,
            Elastic Agent, Elastic Maps Server and Logstash on Kubernetes and OpenShift
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: Elastic Basic license
          repository: https://github.com/elastic/cloud-on-k8s
          support: elastic.co
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Elastic Agent instance
            displayName: Elastic Agent
            kind: Agent
            name: agents.agent.k8s.elastic.co
            version: v1alpha1
          - description: APM Server instance
            displayName: APM Server
            kind: ApmServer
            name: apmservers.apm.k8s.elastic.co
            version: v1
          - description: Beats instance
            displayName: Beats
            kind: Beat
            name: beats.beat.k8s.elastic.co
            version: v1beta1
          - description: Elastic Maps Server instance
            displayName: Elastic Maps Server
            kind: ElasticMapsServer
            name: elasticmapsservers.maps.k8s.elastic.co
            version: v1alpha1
          - description: Instance of an Elasticsearch autoscaler
            displayName: Elasticsearch Autoscaler
            kind: ElasticsearchAutoscaler
            name: elasticsearchautoscalers.autoscaling.k8s.elastic.co
            version: v1alpha1
          - description: Instance of an Elasticsearch cluster
            displayName: Elasticsearch Cluster
            kind: Elasticsearch
            name: elasticsearches.elasticsearch.k8s.elastic.co
            version: v1
          - description: Enterprise Search instance
            displayName: Enterprise Search
            kind: EnterpriseSearch
            name: enterprisesearches.enterprisesearch.k8s.elastic.co
            version: v1
          - description: Kibana instance
            displayName: Kibana
            kind: Kibana
            name: kibanas.kibana.k8s.elastic.co
            version: v1
          - description: Logstash instance
            displayName: Logstash
            kind: Logstash
            name: logstashes.logstash.k8s.elastic.co
            version: v1alpha1
          - description: Elastic Stack Config Policy
            displayName: Elastic Stack Config Policy
            kind: StackConfigPolicy
            name: stackconfigpolicies.stackconfigpolicy.k8s.elastic.co
            version: v1alpha1
        description: |-
          Elastic Cloud on Kubernetes (ECK) is the official operator by Elastic for automating the deployment, provisioning, management, and orchestration of Elasticsearch, Kibana, APM Server, Beats, Enterprise Search, Elastic Agent, Elastic Maps Server, and Logstash on Kubernetes.

          Current features:

          *  Elasticsearch, Kibana, APM Server, Enterprise Search, Beats, Elastic Agent, Elastic Maps Server, and Logstash deployments
          *  TLS Certificates management
          *  Safe Elasticsearch cluster configuration and topology changes
          *  Persistent volumes usage
          *  Custom node configuration and attributes
          *  Secure settings keystore updates

          Supported versions:

          * Kubernetes 1.30-1.34
          * OpenShift 4.15-4.19
          * Google Kubernetes Engine (GKE), Azure Kubernetes Service (AKS), and Amazon Elastic Kubernetes Service (EKS)
          * Elasticsearch, Kibana, APM Server: 7.17+, 8+, 9+
          * Enterprise Search: 7.17+, 8+
          * Beats: 7.17+, 8+, 9+
          * Elastic Agent: 7.17+, 8+, 9+
          * Elastic Maps Server: 7.17+, 8+, 9+
          * Logstash 8.12+, 9+

          ECK should work with all conformant installers as listed in these [FAQs](https://github.com/cncf/k8s-conformance/blob/master/faq.md#what-is-a-distribution-hosted-platform-and-an-installer). Distributions include source patches and so may not work as-is with ECK.
          Alpha, beta, and stable API versions follow the same [conventions used by Kubernetes](https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-versioning).
          See the full [Elastic support matrix](https://www.elastic.co/support/matrix#matrix_kubernetes) for more information.
          See the [Quickstart](https://www.elastic.co/guide/en/cloud-on-k8s/3.2/k8s-quickstart.html) to get started with ECK.
        displayName: Elasticsearch (ECK) Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - elasticsearch
        - kibana
        - analytics
        - search
        - database
        - apm
        - logstash
        links:
        - name: Documentation
          url: https://www.elastic.co/guide/en/cloud-on-k8s/3.2/index.html
        maintainers:
        - email: eck@elastic.co
          name: Elastic
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Elastic
        relatedImages:
        - registry.connect.redhat.com/elastic/eck-operator@sha256:28925fffef8f7c920b2510810cbcfc0f3dadab5f8a80b01fd5ae500e5c070105
        - registry.connect.redhat.com/elastic/eck@sha256:815e6949d8b96d832660e6ed715f8fbf080b230f1bccfc3e0f38781585b14eeb
        version: 3.2.0
      entries:
      - name: elasticsearch-eck-operator-certified.v3.2.0
        version: 3.2.0
      - name: elasticsearch-eck-operator-certified.v3.1.0
        version: 3.1.0
      - name: elasticsearch-eck-operator-certified.v3.0.0
        version: 3.0.0
      - name: elasticsearch-eck-operator-certified.v2.16.1
        version: 2.16.1
      - name: elasticsearch-eck-operator-certified.v2.16.0
        version: 2.16.0
      - name: elasticsearch-eck-operator-certified.v2.15.0
        version: 2.15.0
      - name: elasticsearch-eck-operator-certified.v2.14.0
        version: 2.14.0
      - name: elasticsearch-eck-operator-certified.v2.13.0
        version: 2.13.0
      - name: elasticsearch-eck-operator-certified.v2.12.1
        version: 2.12.1
      - name: elasticsearch-eck-operator-certified.v2.12.0
        version: 2.12.0
      - name: elasticsearch-eck-operator-certified.v2.11.1
        version: 2.11.1
      - name: elasticsearch-eck-operator-certified.v2.11.0
        version: 2.11.0
      - name: elasticsearch-eck-operator-certified.v2.10.0
        version: 2.10.0
      - name: elasticsearch-eck-operator-certified.v2.9.0
        version: 2.9.0
      - name: elasticsearch-eck-operator-certified.v2.8.0
        version: 2.8.0
      - name: elasticsearch-eck-operator-certified.v2.7.0
        version: 2.7.0
      - name: elasticsearch-eck-operator-certified.v2.6.2
        version: 2.6.2
      - name: elasticsearch-eck-operator-certified.v2.6.1
        version: 2.6.1
      - name: elasticsearch-eck-operator-certified.v2.5.0
        version: 2.5.0
      - name: elasticsearch-eck-operator-certified.v2.4.0
        version: 2.4.0
      - name: elasticsearch-eck-operator-certified.v2.3.0
        version: 2.3.0
      - name: elasticsearch-eck-operator-certified.v2.2.0
        version: 2.2.0
      - name: elasticsearch-eck-operator-certified.v2.1.0
        version: 2.1.0
      - name: elasticsearch-eck-operator-certified.v2.0.0
        version: 2.0.0
      name: stable
    defaultChannel: stable
    packageName: elasticsearch-eck-operator-certified
    provider:
      name: Elastic
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Arctera US LLC
      provider-url: https://www.arctera.io
    name: infoscale-dr-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infoscale-dr-manager.v8.0.220
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com",
                  "resRecord": {
                    "HostName_1": "100.200.30.41",
                    "HostName_2": "100.200.30.43",
                    "abc": "HostName_2",
                    "www": "HostName_1",
                    "xyz": "HostName_3"
                  },
                  "stealthMasters": [
                    "1.2.3.4"
                  ],
                  "tsigKeyFile": "/Kvcslnxdns.com.+157+10641.private"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "dataReplicationPointer": "test-datareplication",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 10,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          olm.skipRange: <8.0.220
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v155481520-155483981)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
            - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v151984431-155483981)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com/
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager-bundle@sha256:5f10cfc1bc8571f44a99d88755adade0743106219673bbdd2e4d3a04ee714778
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager@sha256:a98f9cc51f2c7baeec6dbb4933a42ae8ae20ff1a42c9d48a37174cf5211bbcf8
        version: 8.0.220
      entries:
      - name: infoscale-dr-manager.v8.0.220
        version: 8.0.220
      - name: infoscale-dr-manager.v8.0.100
        version: 8.0.100
      name: 8.0.200x
    - currentCSV: infoscale-dr-manager.v8.0.330
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          createdAt: "2024-06-17T10:14:13Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v155481520-155483981)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/155483965-155483981-0/v151984431-155483981)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Veritas
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.veritas.com/solution/virtualization/containers
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com/
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager-bundle@sha256:9f90cd7ab8c0ab5da6eb12f7f0dbd177df62f07c38fb759a97989899cfcbe75d
        - registry.connect.redhat.com/veritas-technologies/infoscale-dr-manager@sha256:c46cbf78631fc790c77b6c13c1d1d4b5ab35f49164f7c2e36c7ec59220cbdce2
        version: 8.0.330
      entries:
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: 8.0.300x
    - currentCSV: infoscale-dr-manager.v8.0.410
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:7dff20a0aff34e1e66a97c9a39cda883642dd1e94b872c8fc2f62efc7a4db1bb
          createdAt: "2024-02-22T14:14:42Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:7dff20a0aff34e1e66a97c9a39cda883642dd1e94b872c8fc2f62efc7a4db1bb
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:15d6d2d189c8acd42867a8ed6d843b8be819a07e71b42aab24ea5fdb1fd7bfec
        version: 8.0.410
      entries:
      - name: infoscale-dr-manager.v8.0.410
        version: 8.0.410
      - name: infoscale-dr-manager.v8.0.409
        version: 8.0.409
      - name: infoscale-dr-manager.v8.0.400
        version: 8.0.400
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: 8.0.400x
    - currentCSV: infoscale-dr-manager.v9.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:ca65f01cb406bb12faeef07decffe765d1b34954830073d053244a1846a1b24e
          createdAt: "2025-09-12T09:53:51Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API.
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API.
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API.
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API.
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:dc63dad730f6ccee19b6f0ca4274b90fdf8d4ff165bf59501aaf4294ebe139e1
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:ca65f01cb406bb12faeef07decffe765d1b34954830073d053244a1846a1b24e
        version: 9.0.1
      entries:
      - name: infoscale-dr-manager.v9.0.1
        version: 9.0.1
      name: beta
    - currentCSV: infoscale-dr-manager.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
          createdAt: "2025-09-12T09:53:51Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API.
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API.
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API.
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API.
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:85b8dcf4981197a28cfd8a5492668205db2a224369b1b5bfaeea16da619339d2
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
        version: 9.1.0
      entries:
      - name: infoscale-dr-manager.v9.1.0
        version: 9.1.0
      - name: infoscale-dr-manager.v8.0.410
        version: 8.0.410
      - name: infoscale-dr-manager.v8.0.409
        version: 8.0.409
      - name: infoscale-dr-manager.v8.0.400
        version: 8.0.400
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: fast
    - currentCSV: infoscale-dr-manager.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DNS",
                "metadata": {
                  "name": "test-dns"
                },
                "spec": {
                  "domain": "vcslnxdns.com"
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DataReplication",
                "metadata": {
                  "name": "test-datareplication"
                },
                "spec": {
                  "cloudVendor": "Local",
                  "currentPrimary": "Clus1",
                  "force": false,
                  "lbEnabled": false,
                  "localHostAddress": "10.0.0.1",
                  "localNIC": "eth0",
                  "localNetMask": "255.255.240.0",
                  "remoteClusterDetails": [
                    {
                      "bandwidthLimit": "N/A",
                      "clusterName": "Clus2",
                      "latencyProtection": "disable",
                      "logProtection": "autodcm",
                      "networkTransportProtocol": "TCP",
                      "remoteCloudVendor": "Local",
                      "remoteHostAddress": "10.0.0.2",
                      "remoteLbEnabled": false,
                      "remoteNIC": "eth0",
                      "remoteNetMask": "255.255.240.0",
                      "replicationState": "start",
                      "replicationType": "async"
                    }
                  ],
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "DisasterRecoveryPlan",
                "metadata": {
                  "name": "test-disaster-recovery-plan"
                },
                "spec": {
                  "clusterFailOverPolicy": "Manual",
                  "force": false,
                  "preferredClusterList": [
                    "Clus1",
                    "Clus2"
                  ],
                  "primaryCluster": "Clus1",
                  "selector": {
                    "namespace": "mysql"
                  }
                }
              },
              {
                "apiVersion": "infoscale.veritas.com/v1",
                "kind": "GlobalClusterMembership",
                "metadata": {
                  "name": "global-cluster-membership"
                },
                "spec": {
                  "backupClusterScopeCRD": true,
                  "counterMissTolerance": 5,
                  "datarepRefreshStatusFrequency": 5,
                  "globalClusterOperation": "none",
                  "globalMemberClusters": [
                    {
                      "clusterID": "Clus1",
                      "drControllerAddress": "10.0.10.1",
                      "drControllerPort": "8080"
                    },
                    {
                      "clusterID": "Clus2",
                      "drControllerAddress": "10.0.10.2",
                      "drControllerPort": "9090"
                    }
                  ],
                  "localClusterName": "Clus1",
                  "maximumMetadataCopies": 5,
                  "metadataBackupInterval": 15
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
          createdAt: "2025-09-12T09:53:51Z"
          description: InfoScale™ DR Manager manages the Disaster Recovery operations
            of InfoScale™ for container environment
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReplication is the Schema for the storagereplications
              API.
            displayName: Data Replication
            kind: DataReplication
            name: datareplications.infoscale.veritas.com
            version: v1
          - description: DisasterRecoveryPlan is the Schema for the disasterrecoveryplans
              API.
            displayName: Disaster Recovery Plan
            kind: DisasterRecoveryPlan
            name: disasterrecoveryplans.infoscale.veritas.com
            version: v1
          - description: DNS is the Schema for the DNSs API.
            displayName: DNS
            kind: DNS
            name: dns.infoscale.veritas.com
            version: v1
          - description: GlobalClusterMembership is the Schema for the globalclustermemberships
              API.
            displayName: Global Cluster Membership
            kind: GlobalClusterMembership
            name: globalclustermemberships.infoscale.veritas.com
            version: v1
        description: |
          ## InfoScale™ DR Manager

          InfoScale™ DR Manager manages the Disaster Recovery operations of InfoScale™ for container environment

          ## Overview

          - Disaster Recovery(DR) is provided to applications hosted in container ecosystems. Native container HA capabilities provide high availability to application components within a cluster. However, DR functionality provides disaster recovery in the event of a entire cluster failure and application components can be restored on another peer cluster in membership.
          - You can form a logical notion called 'Global Cluster' comprising clusters that can be used to migrate DR-enabled objects. DR-enabled objects migrate to peer cluster in case of a disaster like entire cluster going down, loss of connectivity with a particular cluster, user-initiated planned migration across cluster.

          ---

          ## Pre-requisites

          **1.** InfoScale must be installed and InfoScale pods must be configured on the clusters. [[More Details](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721648-168743109)]

          **2.** Create storage class with name, which must always be **`infoscale-dr-csi-sc`.**

          ```
          apiVersion: storage.k8s.io/v1
          kind: StorageClass
          metadata:
            name: infoscale-dr-csi-sc
          parameters:
            fstype: vxfs
            layout: mirror
          allowVolumeExpansion: true
          provisioner: org.veritas.infoscale
          reclaimPolicy: Delete

          ```

          **3.** Create persistent volume claim with name, which must always be **`infoscale-dr-meta-bkp-pvc`.**

          ```
          apiVersion: v1
          kind: PersistentVolumeClaim
          metadata:
            name: infoscale-dr-meta-bkp-pvc
          spec:
            accessModes:
              - ReadWriteOnce
            resources:
              requests:
                storage: 4Gi
            storageClassName: infoscale-dr-csi-sc
            volumeMode: Filesystem

          ```

          - **Note:** User must use InfoScale™ CSI provisioned storage.

          - [For more details, please refer to 'Installing InfoScale DR Manager on openshift' section from official documentation](https://www.veritas.com/content/support/en_US/doc/168721626-168743109-0/v168721654-168743109)

          ## InfoScale™ DR Manager custom resources

          - **Note:** InfoScale™ DR Manager custom resources must be created only in the following order

          **1. Global Cluster Membership:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: GlobalClusterMembership
          metadata:
            name: global-cluster-membership
          spec:
            # Local cluster name in the global membership
            localClusterName: Clus1

            globalMemberClusters:
                # Cluster ID of member of global cluster membership
              - clusterID: Clus1

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.1"

                # Port used for DR controller
                drControllerPort: "8080"

                # Cluster ID of member of global cluster membership
              - clusterID: Clus2

                # Address Used For Communicating With Peer Cluster's DR Controller
                drControllerAddress: "10.0.10.2"

                # Port used for DR controller
                drControllerPort: "9090"

          ```

          **2. Data Replication:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DataReplication
          metadata:
            name: test-datareplication
          spec:
            # Primary cluster details

            # Virtual IP address to configure VVR
            localHostAddress: 10.0.0.1

            # Corresponding netmask to configure VVR
            localNetMask: 255.255.240.0

            # Corresponding network interface to configure VVR (If NIC name is identical for all nodes)
            localNIC: eth0

            # Namespace and optional labels for which you want to configure data replication
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # Current primary cluster name - Name of the cluster you want to back up
            currentPrimary: Clus1

            # Secondary cluster details
            remoteClusterDetails:
                # ID of the Cluster to be used for a backup
              - clusterName: Clus2

                # Virtual IP address for VVR configuration of this cluster
                remoteHostAddress: 10.0.0.2

                # Corresponding Netmask of this cluster
                remoteNetMask: 255.255.240.0

                # Corresponding Network interface of this cluster
                remoteNIC: eth0

                # (optional) replication type can be sync or async.
                # default value will be async if not specified.
                replicationType: async

          ```
          **3. Disaster Recovery Plan:**

          ```
          apiVersion: infoscale.veritas.com/v1
          kind: DisasterRecoveryPlan
          metadata:
            name: test-disaster-recovery-plan
          spec:
            # Name of cluster that should be treated as primary for this DR plan
            primaryCluster: Clus1

            # (optional) Set force to True if peer cluster(s) is not reachable and local cluster needs to perform takeover
            force: false

            # List of member cluster(s) where this DRPlan can failover.
            # Sequence of MemberCluster specified in this list denotes relative preference of member cluster(s)
            # Must be subset of Global Cluster Membership
            preferredClusterList: ["Clus1", "Clus2"]

            # Kind of corrective action in case of disaster
            # default value will be "Manual" if not specified
            clusterFailOverPolicy: Manual

            # Specify namespace and optional labels to decide what all needs to be part of the disaster recovery plan
            selector:
              namespace: mysql
              #labels:
              #  app: db

            # (optional) Pointer to manage data replication
            dataReplicationPointer: test-datareplication

          ```
        displayName: InfoScale™ DR Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Infoscale
        - Storage foundation
        - Arctera
        - Data storage
        - Storage
        - Data
        - SDS
        - Software
        - Defined Storage
        - Clustered storage
        - CFS
        - DR
        - Disaster Recovery
        links:
        - name: Infoscale DR Manager
          url: https://www.arctera.io/infoscale-kubernetes
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-dr-operator-bundle@sha256:85b8dcf4981197a28cfd8a5492668205db2a224369b1b5bfaeea16da619339d2
        - registry.connect.redhat.com/arctera/infoscale-dr-operator@sha256:49e8de1290c01af884afec4dd828e2237434ddac22e6593d883991c73023f23f
        version: 9.1.0
      entries:
      - name: infoscale-dr-manager.v9.1.0
        version: 9.1.0
      - name: infoscale-dr-manager.v8.0.410
        version: 8.0.410
      - name: infoscale-dr-manager.v8.0.409
        version: 8.0.409
      - name: infoscale-dr-manager.v8.0.400
        version: 8.0.400
      - name: infoscale-dr-manager.v8.0.330
        version: 8.0.330
      - name: infoscale-dr-manager.v8.0.320
        version: 8.0.320
      - name: infoscale-dr-manager.v8.0.310
        version: 8.0.310
      - name: infoscale-dr-manager.v8.0.301
        version: 8.0.301
      name: stable
    defaultChannel: fast
    packageName: infoscale-dr-manager
    provider:
      name: Arctera US LLC
      url: https://www.arctera.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-pipes-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-pipes-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pipes.services.k8s.aws/v1alpha1",
                "kind": "Pipe",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/pipes-controller:1.2.0
          createdAt: "2025-11-29T03:55:44Z"
          description: AWS EventBridge Pipes controller is a service controller for
            managing Pipes resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Pipe represents the state of an AWS pipes Pipe resource.
            displayName: Pipe
            kind: Pipe
            name: pipes.pipes.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EventBridge Pipes resources in AWS from within your Kubernetes cluster.

          **About Amazon EventBridge Pipes**

          Amazon EventBridge Pipes connects sources to targets. Pipes are intended for point-to-point integrations between supported [sources](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html) and [targets](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-target.html), with support for advanced transformations and [enrichment](https://docs.aws.amazon.com/eventbridge/latest/userguide/pipes-enrichment.html). It reduces the need for specialized knowledge and integration code when developing event-driven architectures, fostering consistency across your company’s applications. To set up a pipe, you choose the source, add optional filtering, define optional enrichment, and choose the target for the event data.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EventBridge Pipes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - pipes
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EventBridge Pipes Developer Resources
          url: https://aws.amazon.com/eventbridge/pipes/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: pipes maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/pipes-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-pipes-controller@sha256:2f105744658b9f0e0a1e09eebecd83f2f9b2511a3e9522b96fca50638e4f38d2
        version: 1.2.0
      entries:
      - name: ack-pipes-controller.v1.2.0
        version: 1.2.0
      - name: ack-pipes-controller.v1.1.3
        version: 1.1.3
      - name: ack-pipes-controller.v1.1.2
        version: 1.1.2
      - name: ack-pipes-controller.v1.1.1
        version: 1.1.1
      - name: ack-pipes-controller.v1.1.0
        version: 1.1.0
      - name: ack-pipes-controller.v1.0.25
        version: 1.0.25
      - name: ack-pipes-controller.v1.0.24
        version: 1.0.24
      - name: ack-pipes-controller.v1.0.23
        version: 1.0.23
      - name: ack-pipes-controller.v1.0.22
        version: 1.0.22
      - name: ack-pipes-controller.v1.0.21
        version: 1.0.21
      - name: ack-pipes-controller.v1.0.20
        version: 1.0.20
      - name: ack-pipes-controller.v1.0.18
        version: 1.0.18
      - name: ack-pipes-controller.v1.0.17
        version: 1.0.17
      - name: ack-pipes-controller.v1.0.16
        version: 1.0.16
      - name: ack-pipes-controller.v1.0.15
        version: 1.0.15
      - name: ack-pipes-controller.v1.0.14
        version: 1.0.14
      - name: ack-pipes-controller.v1.0.13
        version: 1.0.13
      - name: ack-pipes-controller.v1.0.12
        version: 1.0.12
      - name: ack-pipes-controller.v1.0.11
        version: 1.0.11
      - name: ack-pipes-controller.v1.0.10
        version: 1.0.10
      - name: ack-pipes-controller.v1.0.9
        version: 1.0.9
      - name: ack-pipes-controller.v1.0.8
        version: 1.0.8
      - name: ack-pipes-controller.v1.0.6
        version: 1.0.6
      - name: ack-pipes-controller.v1.0.3
        version: 1.0.3
      - name: ack-pipes-controller.v1.0.2
        version: 1.0.2
      - name: ack-pipes-controller.v1.0.1
        version: 1.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-pipes-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: cert-utils-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cert-utils-operator.v1.3.12
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/cert-utils-operator@sha256:0290e7b2800a5aa8eb57b0268908f2a20a93b16403c76df4c61021048161d6ff
          createdAt: "2024-01-23T12:29:04Z"
          description: Set of utilities for TLS certificates
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-utils-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/cert-utils-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Cert utils operator is a set of functionalities around certificates packaged in a [Kubernetes operator](https://github.com/operator-framework/operator-sdk).

          Certificates are assumed to be available in a [secret](https://kubernetes.io/docs/concepts/configuration/secret/) of type `kubernetes.io/tls` (other types of secrets are *ignored* by this operator).
          By convention this type of secrets have three optional entries:

          1. `tls.key`: the private key of the certificate.
          2. `tls.crt`: the actual certificate.
          3. `ca.crt`: the CA bundle that validates the certificate.

          The functionalities are the following:

          1. [Ability to populate route certificates](https://github.com/redhat-cop/cert-utils-operator#Populating-route-certificates)
          2. [Ability to create java keystore and truststore from the certificates](https://github.com/redhat-cop/cert-utils-operator#Creating-java-keystore-and-truststore)
          3. [Ability to show info regarding the certificates](https://github.com/redhat-cop/cert-utils-operator#Showing-info-on-the-certificates)
          4. [Ability to alert when a certificate is about to expire](https://github.com/redhat-cop/cert-utils-operator#Alerting-when-a-certificate-is-about-to-expire)
          5. [Ability to inject ca bundles in ValidatingWebhookConfiguration, MutatingWebhookConfiguration, CustomResourceDefinition object](https://github.com/redhat-cop/cert-utils-operator#CA-injection)

          All these feature are activated via opt-in annotations.
        displayName: Cert Utils Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - TLS
        - secrets
        - security
        - certificates
        links:
        - name: Cert Utils Operator
          url: https://github.com/redhat-cop/cert-utils-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/cert-utils-operator
        maintainers:
        - email: rspazzoli@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/community-operator-pipeline-prod/cert-utils-operator@sha256:92a0c0b893b56330593e0a255b8df61031e92a61d172aecc58be5805d847798a
        - quay.io/redhat-cop/cert-utils-operator@sha256:0290e7b2800a5aa8eb57b0268908f2a20a93b16403c76df4c61021048161d6ff
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.3.12
      entries:
      - name: cert-utils-operator.v1.3.12
        version: 1.3.12
      - name: cert-utils-operator.v1.3.11
        version: 1.3.11
      - name: cert-utils-operator.v1.3.10
        version: 1.3.10
      - name: cert-utils-operator.v1.3.9
        version: 1.3.9
      - name: cert-utils-operator.v1.3.8
        version: 1.3.8
      - name: cert-utils-operator.v1.3.7
        version: 1.3.7
      - name: cert-utils-operator.v1.3.6
        version: 1.3.6
      - name: cert-utils-operator.v1.3.5
        version: 1.3.5
      - name: cert-utils-operator.v1.3.4
        version: 1.3.4
      - name: cert-utils-operator.v1.3.3
        version: 1.3.3
      - name: cert-utils-operator.v1.3.2
        version: 1.3.2
      - name: cert-utils-operator.v1.3.1
        version: 1.3.1
      - name: cert-utils-operator.v1.3.0
        version: 1.3.0
      - name: cert-utils-operator.v1.2.0
        version: 1.2.0
      - name: cert-utils-operator.v1.1.0
        version: 1.1.0
      - name: cert-utils-operator.v1.0.7
        version: 1.0.7
      - name: cert-utils-operator.v1.0.6
        version: 1.0.6
      - name: cert-utils-operator.v1.0.5
        version: 1.0.5
      - name: cert-utils-operator.v1.0.4
        version: 1.0.4
      - name: cert-utils-operator.v1.0.3
        version: 1.0.3
      - name: cert-utils-operator.v1.0.2
        version: 1.0.2
      - name: cert-utils-operator.v1.0.1
        version: 1.0.1
      - name: cert-utils-operator.v1.0.0
        version: 1.0.0
      - name: cert-utils-operator.v0.2.2
        version: 0.2.2
      - name: cert-utils-operator.v0.2.1
        version: 0.2.1
      - name: cert-utils-operator.v0.2.0
        version: 0.2.0
      - name: cert-utils-operator.v0.1.1
        version: 0.1.1
      - name: cert-utils-operator.v0.1.0
        version: 0.1.0
      - name: cert-utils-operator.v0.0.3
        version: 0.0.3
      - name: cert-utils-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: cert-utils-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Percona
      provider-url: ""
    name: percona-xtradb-cluster-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: percona-xtradb-cluster-operator.v1.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pxc.percona.com/v1-9-0",
                "kind": "PerconaXtraDBCluster",
                "metadata": {
                  "name": "cluster1",
                  "finalizers": [
                    "delete-pxc-pods-in-order"
                  ]
                },
                "spec": {
                  "crVersion": "1.9.0",
                  "secretsName": "my-cluster-secrets",
                  "vaultSecretName": "keyring-secret-vault",
                  "sslSecretName": "my-cluster-ssl",
                  "sslInternalSecretName": "my-cluster-ssl-internal",
                  "logCollectorSecretName": "my-log-collector-secrets",
                  "allowUnsafeConfigurations": false,
                  "updateStrategy": "SmartUpdate",
                  "upgradeOptions": {
                    "versionServiceEndpoint": "https://check.percona.com",
                    "apply": "8.0-recommended",
                    "schedule": "0 4 * * *"
                  },
                  "pxc": {
                    "size": 3,
                    "image": "percona/percona-xtradb-cluster:8.0.23-14.1",
                    "autoRecovery": true,
                    "resources": {
                      "requests": {
                        "memory": "1G",
                        "cpu": "600m"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "volumeSpec": {
                      "persistentVolumeClaim": {
                        "resources": {
                          "requests": {
                            "storage": "6G"
                          }
                        }
                      }
                    },
                    "gracePeriod": 600
                  },
                  "haproxy": {
                    "enabled": true,
                    "size": 3,
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-haproxy",
                    "resources": {
                      "requests": {
                        "memory": "1G",
                        "cpu": "600m"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "gracePeriod": 30
                  },
                  "proxysql": {
                    "enabled": false,
                    "size": 3,
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-proxysql",
                    "resources": {
                      "requests": {
                        "memory": "1G",
                        "cpu": "600m"
                      }
                    },
                    "affinity": {
                      "antiAffinityTopologyKey": "kubernetes.io/hostname"
                    },
                    "volumeSpec": {
                      "persistentVolumeClaim": {
                        "resources": {
                          "requests": {
                            "storage": "2G"
                          }
                        }
                      }
                    },
                    "podDisruptionBudget": {
                      "maxUnavailable": 1
                    },
                    "gracePeriod": 30
                  },
                  "logcollector": {
                    "enabled": true,
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-logcollector"
                  },
                  "pmm": {
                    "enabled": false,
                    "image": "percona/pmm-client:2.18.0",
                    "serverHost": "monitoring-service",
                    "serverUser": "admin"
                  },
                  "backup": {
                    "image": "percona/percona-xtradb-cluster-operator:1.9.0-pxc8.0-backup",
                    "pitr": {
                      "enabled": false,
                      "storageName": "STORAGE-NAME-HERE",
                      "timeBetweenUploads": 60
                    },
                    "storages": {
                      "s3-us-west": {
                        "type": "s3",
                        "s3": {
                          "bucket": "S3-BACKUP-BUCKET-NAME-HERE",
                          "credentialsSecret": "my-cluster-name-backup-s3",
                          "region": "us-west-2"
                        }
                      },
                      "fs-pvc": {
                        "type": "filesystem",
                        "volume": {
                          "persistentVolumeClaim": {
                            "accessModes": [
                              "ReadWriteOnce"
                            ],
                            "resources": {
                              "requests": {
                                "storage": "6G"
                              }
                            }
                          }
                        }
                      }
                    },
                    "schedule": [
                      {
                        "name": "sat-night-backup",
                        "schedule": "0 0 * * 6",
                        "keep": 3,
                        "storageName": "s3-us-west"
                      },
                      {
                        "name": "daily-backup",
                        "schedule": "0 0 * * *",
                        "keep": 5,
                        "storageName": "fs-pvc"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "fs-pvc"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1alpha1",
                "kind": "PerconaXtraDBBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "s3-us-west"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterRestore",
                "metadata": {
                  "name": "restore1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "backupName": "backup1"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "fs-pvc"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1alpha1",
                "kind": "PerconaXtraDBBackup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "storageName": "s3-us-west"
                }
              },
              {
                "apiVersion": "pxc.percona.com/v1",
                "kind": "PerconaXtraDBClusterRestore",
                "metadata": {
                  "name": "restore1"
                },
                "spec": {
                  "pxcCluster": "cluster1",
                  "backupName": "backup1"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: percona/percona-xtradb-cluster-operator:1.9.0
          createdAt: "2021-10-14T13:11:44.000Z"
          description: Percona Distribution for Mysql Operator manages the lifecycle
            of Percona XtraDB cluster instances.
          repository: https://github.com/percona/percona-xtradb-cluster-operator
          support: Percona
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instance of a Percona XtraDB Cluster
            displayName: PerconaXtraDBCluster
            kind: PerconaXtraDBCluster
            name: perconaxtradbclusters.pxc.percona.com
            version: v1-9-0
          - description: Instance of a Percona XtraDB Cluster Backup
            displayName: PerconaXtraDBClusterBackup
            kind: PerconaXtraDBClusterBackup
            name: perconaxtradbclusterbackups.pxc.percona.com
            version: v1
          - description: Instance of a Percona XtraDB Cluster Restore
            displayName: PerconaXtraDBClusterRestore
            kind: PerconaXtraDBClusterRestore
            name: perconaxtradbclusterrestores.pxc.percona.com
            version: v1
          - description: (Legacy) Instance of a Percona XtraDB Cluster Backup
            displayName: PerconaXtraDBBackup
            kind: PerconaXtraDBBackup
            name: perconaxtradbbackups.pxc.percona.com
            version: v1alpha1
        description: |2+

          ## Percona is Cloud Native

          Percona Distribution for Mysql Operator is an open-source drop in replacement for MySQL Enterprise with synchronous replication running on Kubernetes. It automates the deployment and management of the members in your Percona XtraDB Cluster environment. It can be used to instantiate a new Percona XtraDB Cluster, or to scale an existing environment.
          Consult the [documentation](https://percona.github.io/percona-xtradb-cluster-operator/) on the Percona Distribution for Mysql Operator for complete details on capabilities and options.

          ### Supported Features

          * **Scale Your Cluster**  change the `size` parameter to [add or remove members](https://percona.github.io/percona-xtradb-cluster-operator/install/scaling) of the cluster. Three is the minimum recommended size for a functioning cluster.

          * **Automate Your Backups**  [configure cluster backups](https://percona.github.io/percona-xtradb-cluster-operator/configure/operator) to run on a scheduled basis. Backups can be stored on a persistent volume or S3-compatible storage. Leverage [Point-in-time recovery](https://www.percona.com/doc/kubernetes-operator-for-pxc/backups.html#storing-binary-logs-for-point-in-time-recovery) to reduce RPO/RTO.
          * **Proxy integration**  choose HAProxy or ProxySQL as a proxy in front of the Percona XtraDB Cluster. Proxies are deployed and configured automatically with the Operator.
          ### Common Configurations

          * **Set Resource Limits** - set limitation on requests to CPU and memory resources.

          * **Customize Storage** - set the desired Storage Class and Access Mode for your database cluster data.

          * **Control Scheduling** - define how your PXC Pods are scheduled onto the K8S cluster with tolerations, pod disruption budgets, node selector and affinity settings.
          * Automatic synchronization of MySQL users with ProxySQL
          * Fully automated minor version updates (Smart Update)
          * Update Reader members before Writer member at cluster upgrades
          * Support MySQL versions 5.7 and 8.0
          ### Before You Start

          Add the PXC user `Secret` to Kubernetes. User information must be placed in the data section of the `secrets.yaml`
          file with Base64-encoded logins and passwords for the user accounts.

          Below is a sample `secrets.yaml` file for the correct formatting.

          ```
          apiVersion: v1
          kind: Secret
          metadata:
            name: my-cluster-secrets
          type: Opaque
          data:
            root: cm9vdF9wYXNzd29yZA==
            xtrabackup: YmFja3VwX3Bhc3N3b3Jk
            monitor: bW9uaXRvcg==
            clustercheck: Y2x1c3RlcmNoZWNrcGFzc3dvcmQ=
            proxyadmin: YWRtaW5fcGFzc3dvcmQ=
            pmmserver: c3VwYXxefHBheno=
            operator: b3BlcmF0b3JhZG1pbg==
          ```
          ###  Release Highlights

          * Starting from this release, the Operator changes its official name to Percona Distribution for MySQL Operator.
            This new name emphasizes gradual changes which incorporated a collection of Percona’s solutions to run and operate Percona Server for MySQL and Percona XtraDB Cluster, available separately as Percona Distribution for MySQL.
            Now you can see HAProxy metrics in your favorite Percona Monitoring and Management (PMM) dashboards automatically.
          * The cross-site replication feature allows an asynchronous replication between two Percona XtraDB Clusters, including scenarios when one of the clusters is outside of the Kubernetes environment.
            The feature is intended for the following use cases:
              * provide migrations of your Percona XtraDB Cluster to Kubernetes or vice versa,
              * migrate regular MySQL database to Percona XtraDB Cluster under the Operator control, or carry on backward migration,
              * enable disaster recovery capability for your cluster deployment.

        displayName: Percona XtraDB Cluster Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mysql
        - percona
        - database
        - pxc
        - galera
        links:
        - name: Percona
          url: https://www.percona.com/
        - name: Percona Kubernetes Operators Landing Page
          url: https://www.percona.com/software/percona-kubernetes-operators
        - name: Documentation
          url: https://percona.github.io/percona-xtradb-cluster-operator/
        - name: Github
          url: https://github.com/percona/percona-xtradb-cluster-operator
        maintainers:
        - email: info@percona.com
          name: Percona
        maturity: stable
        provider:
          name: Percona
        relatedImages:
        - percona/percona-xtradb-cluster-operator:1.9.0
        - quay.io/openshift-community-operators/percona-xtradb-cluster-operator@sha256:6138612eaecaac82239d52c2f4eecddcba3aa83d2986cf05b0f01903b72844e6
        version: 1.9.0
      entries:
      - name: percona-xtradb-cluster-operator.v1.9.0
        version: 1.9.0
      name: stable
    defaultChannel: stable
    packageName: percona-xtradb-cluster-operator
    provider:
      name: Percona
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-secretsmanager-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-secretsmanager-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "secretsmanager.services.k8s.aws/v1alpha1",
                "kind": "Secret",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/secretsmanager-controller:1.2.0
          createdAt: "2025-11-29T04:50:21Z"
          description: AWS Secrets Manager controller is a service controller for
            managing Secrets Manager resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Secret represents the state of an AWS secretsmanager Secret
              resource.
            displayName: Secret
            kind: Secret
            name: secrets.secretsmanager.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Secrets Manager resources in AWS from within your Kubernetes cluster.

          **About Amazon Secrets Manager**

          AWS Secrets Manager helps you manage, retrieve, and rotate database credentials, application credentials, OAuth tokens, API keys, and other secrets throughout their lifecycles. [Many AWS services that use secrets](https://docs.aws.amazon.com/secretsmanager/latest/userguide/integrating.html) store them in Secrets Manager.

          Secrets Manager helps you improve your security posture, because you no longer need hard-coded credentials in application source code. Storing the credentials in Secrets Manager helps avoid possible compromise by anyone who can inspect your application or the components. You replace hard-coded credentials with a runtime call to the Secrets Manager service to retrieve credentials dynamically when you need them.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Secrets Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secretsmanager
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Secrets Manager Developer Resources
          url: https://aws.amazon.com/secrets-manager/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: secretsmanager maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/secretsmanager-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-secretsmanager-controller@sha256:0ef52e0e1cfddc7f8f6fcb65b21299e50c5ce34d0391e4c21e36e1abf2d5f04d
        version: 1.2.0
      entries:
      - name: ack-secretsmanager-controller.v1.2.0
        version: 1.2.0
      - name: ack-secretsmanager-controller.v1.1.2
        version: 1.1.2
      - name: ack-secretsmanager-controller.v1.1.1
        version: 1.1.1
      - name: ack-secretsmanager-controller.v1.1.0
        version: 1.1.0
      - name: ack-secretsmanager-controller.v1.0.14
        version: 1.0.14
      - name: ack-secretsmanager-controller.v1.0.13
        version: 1.0.13
      - name: ack-secretsmanager-controller.v1.0.12
        version: 1.0.12
      - name: ack-secretsmanager-controller.v1.0.11
        version: 1.0.11
      - name: ack-secretsmanager-controller.v1.0.10
        version: 1.0.10
      - name: ack-secretsmanager-controller.v1.0.9
        version: 1.0.9
      - name: ack-secretsmanager-controller.v1.0.8
        version: 1.0.8
      - name: ack-secretsmanager-controller.v1.0.7
        version: 1.0.7
      - name: ack-secretsmanager-controller.v1.0.6
        version: 1.0.6
      - name: ack-secretsmanager-controller.v1.0.5
        version: 1.0.5
      - name: ack-secretsmanager-controller.v1.0.4
        version: 1.0.4
      - name: ack-secretsmanager-controller.v1.0.3
        version: 1.0.3
      - name: ack-secretsmanager-controller.v1.0.1
        version: 1.0.1
      - name: ack-secretsmanager-controller.v1.0.0
        version: 1.0.0
      - name: ack-secretsmanager-controller.v0.0.11
        version: 0.0.11
      - name: ack-secretsmanager-controller.v0.0.10
        version: 0.0.10
      - name: ack-secretsmanager-controller.v0.0.9
        version: 0.0.9
      - name: ack-secretsmanager-controller.v0.0.8
        version: 0.0.8
      - name: ack-secretsmanager-controller.v0.0.7
        version: 0.0.7
      - name: ack-secretsmanager-controller.v0.0.2
        version: 0.0.2
      - name: ack-secretsmanager-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-secretsmanager-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Skupper Project
      provider-url: https://skupper.io
    name: skupper-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: alpha
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1
    - currentCSV: skupper-operator.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:e5f8b2ddf378cf3e40f4c7b7ec8482eb3321947cd46481c868d727932c449d78
          createdAt: "2024-02-26T18:22:07Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/flow-collector@sha256:3870c5bc89e623b7cebe21856bfefc22de76313705efa0ec551a5963789fff3b
        - quay.io/skupper/service-controller@sha256:345edf2d9d72b5a97bcce0e8cea8cda82d120f7bf83756d73f9ac114c2fcced8
        - quay.io/skupper/site-controller@sha256:e5f8b2ddf378cf3e40f4c7b7ec8482eb3321947cd46481c868d727932c449d78
        - quay.io/skupper/skupper-router@sha256:bf8d5955ce4e406275a4934278efe51c1af9a1a269a70e8fe642b7d94d80cb81
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:3a96ab2db995d24a9ca064b5566821828d6e73ea20df77c9932d8972cb8e5780
        - quay.io/openshift/origin-oauth-proxy@sha256:a7dff785d821acc4b972d94964947713fade45f007dedb5deee17a2869bf5d24
        - quay.io/prometheus/prometheus@sha256:d2ab0a27783fd4ad96a8853e2847b99a0be0043687b8a5d1ebfb2dd3fa4fd1b8
        - quay.io/skupper/config-sync@sha256:659fe28d1df7c99bba3bb854b1e9991c715ae4de99d91c88d5db5e4f9ef4c852
        version: 1.6.0
      entries:
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.6
    - currentCSV: skupper-operator.v1.7.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:4809db7263d77a95797061798e910f1bdbb5d5fe2db2bb3c743b97f5d0c7b3af
          createdAt: "2024-06-12T14:36:59Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/config-sync@sha256:a884b26a32179af5a2bfa85118bf873852eec6e2930e92da778b57506c0a0880
        - quay.io/skupper/flow-collector@sha256:bf646b0cb75e1c29bbe0261aa9943e06d33118f5e6a5ccb7503c60c974167692
        - quay.io/skupper/service-controller@sha256:624e88e695297df28e485db7e802945ad1978ac6b0c9e9edca8b5e6013af8991
        - quay.io/skupper/site-controller@sha256:4809db7263d77a95797061798e910f1bdbb5d5fe2db2bb3c743b97f5d0c7b3af
        - quay.io/skupper/skupper-router@sha256:5eb258a0927e7706e7c035f1def2eb5211c8c33dd371fafa7210517fd894f68b
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:c2b996e8dac2f4c81a3e48e4203499f48e4e15d0692e98d61dc8c97192e0a776
        - quay.io/openshift/origin-oauth-proxy@sha256:a7dff785d821acc4b972d94964947713fade45f007dedb5deee17a2869bf5d24
        - quay.io/prometheus/prometheus@sha256:d2ab0a27783fd4ad96a8853e2847b99a0be0043687b8a5d1ebfb2dd3fa4fd1b8
        version: 1.7.1
      entries:
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.7
    - currentCSV: skupper-operator.v1.8.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:ffe3ea5067d350b64b69120bdf6d9e3ee9a30e8a2559b77170a10d66635623b8
          createdAt: "2025-03-27T20:11:53Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/skupper/skupper-router@sha256:7633b143f1844ee559322e4642ca80e8248a08711c8e814d489c26c39ecf9bd0
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:68eb666168d3a41cc98f91a0f2d74656af73cf76ec2cbe2cc308ae2ffab84875
        - quay.io/openshift/origin-oauth-proxy@sha256:c15baf57dbd17dcc517cd2fa2299462d62124f689d6f5a48a3c9fd154fc77ccf
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:9e96d6a585f037f60ca3d89b5efee27ec92444d353e8b289ca35b94aeed1e309
        - quay.io/skupper/flow-collector@sha256:252244ab6aaf6b80118bfc06b690d4f5e8d7829b999fca60d194a84452fee7f6
        - quay.io/skupper/service-controller@sha256:a45de211b8f8a8294a3588932a0a72766cf0d5ce64b01f4f744832c8d09aaa46
        - quay.io/skupper/site-controller@sha256:ffe3ea5067d350b64b69120bdf6d9e3ee9a30e8a2559b77170a10d66635623b8
        version: 1.8.4
      entries:
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.8
    - currentCSV: skupper-operator.v1.9.4
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
          createdAt: "2025-08-28T19:54:31Z"
          description: Skupper Operator provides the ability to create a service network
          operators.operatorframework.io/builder: operator-sdk-v1.4.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/skupperproject/skupper-operator
          support: Skupper Project
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Skupper enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Skupper instance.

          The Skupper operator allows you create and manage sites.
          The operator processes any ConfigMap named skupper-site and configures the site for the service network accordingly.

          To get started, create the following ConfigMap in the desired namespace, the
          Skupper operator will create the Skupper instance and configure the site.

                apiVersion: v1
                kind: ConfigMap
                metadata:
                  name: skupper-site

          The operator can be installed to a single namespace or at cluster level, watching for the skupper-site ConfigMap in all namespaces.
        displayName: Skupper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - service
        - mesh
        - van
        links:
        - name: Skupper Operator
          url: https://github.com/skupperproject/skupper-operator
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Skupper Project
          url: https://skupper.io
        relatedImages:
        - quay.io/community-operator-pipeline-prod/skupper-operator@sha256:b32411e6dff4d74ed34ba1985e2d912da8f86dd2e6730e1777f86ae24405cf4d
        - quay.io/openshift/origin-oauth-proxy@sha256:702ba441b48cddec62c2bfe4d3d58080792243faaad094ae4e10062b25ec5fbd
        - quay.io/prometheus/prometheus@sha256:b1935d181b6dd8e9c827705e89438815337e1b10ae35605126f05f44e5c6940f
        - quay.io/skupper/config-sync@sha256:d0e6a601274bc98a28962fd0ea09aa0328a19c2a83eab5b8c54bc13e0b433aa7
        - quay.io/skupper/flow-collector@sha256:504d0d28d2a79a93bfbb572cc5bc9394469163605b9c087d21e58864ee4ae1c0
        - quay.io/skupper/service-controller@sha256:bf620cbd297824f94b9be28a5abd416d5a6b9f6a2de5af9c11a87d34bc223015
        - quay.io/skupper/site-controller@sha256:928209bc28667bef30acc2e3762d5ea60c55ddf189da74a7108ec650677d645e
        - quay.io/skupper/skupper-router@sha256:d87c4fbc6a1cbe40a5805cc8b886bf98b5481a56f71b80e950260e00bb58eff5
        version: 1.9.4
      entries:
      - name: skupper-operator.v1.9.4
        version: 1.9.4
      - name: skupper-operator.v1.9.3
        version: 1.9.3
      - name: skupper-operator.v1.9.2
        version: 1.9.2
      - name: skupper-operator.v1.9.1
        version: 1.9.1
      - name: skupper-operator.v1.9.0
        version: 1.9.0
      - name: skupper-operator.v1.8.4
        version: 1.8.4
      - name: skupper-operator.v1.8.3
        version: 1.8.3
      - name: skupper-operator.v1.8.2
        version: 1.8.2
      - name: skupper-operator.v1.8.1
        version: 1.8.1
      - name: skupper-operator.v1.8.0
        version: 1.8.0
      - name: skupper-operator.v1.7.1
        version: 1.7.1
      - name: skupper-operator.v1.7.0
        version: 1.7.0
      - name: skupper-operator.v1.6.0
        version: 1.6.0
      - name: skupper-operator.v1.5.3
        version: 1.5.3
      name: stable-1.9
    defaultChannel: stable
    packageName: skupper-operator
    provider:
      name: Skupper Project
      url: https://skupper.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: submariner.io
      provider-url: ""
    name: submariner
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: submariner.v0.21.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Broker",
                "metadata": {
                  "name": "submariner-broker"
                },
                "spec": {
                  "components": [
                    "service-discovery",
                    "connectivity"
                  ],
                  "defaultGlobalnetClusterSize": 8192,
                  "globalnetEnabled": false
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "ServiceDiscovery",
                "metadata": {
                  "name": "servicediscovery"
                },
                "spec": {
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "clusterID": "cluster1",
                  "debug": false,
                  "globalnetEnabled": false,
                  "namespace": "submariner-operator",
                  "repository": "quay.io/submariner",
                  "version": "v0.21.2"
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Submariner",
                "metadata": {
                  "name": "submariner"
                },
                "spec": {
                  "broker": "k8s",
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "cableDriver": "libreswan",
                  "ceIPSecDebug": false,
                  "ceIPSecIKEPort": 500,
                  "ceIPSecNATTPort": 4500,
                  "ceIPSecPSK": "$(IPSEC_PSK)",
                  "clusterCIDR": "192.168.67.0/24",
                  "clusterID": "cluster1",
                  "connectionHealthCheck": {
                    "enabled": false,
                    "intervalSeconds": 1,
                    "maxPacketLossCount": 5
                  },
                  "debug": false,
                  "globalCIDR": "",
                  "namespace": "submariner-operator",
                  "natEnabled": true,
                  "repository": "quay.io/submariner",
                  "serviceCIDR": "192.168.66.0/24",
                  "serviceDiscoveryEnabled": true,
                  "version": "v0.21.2"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: $(SUBMARINER_OPERATOR_IMAGE)
          createdAt: "2025-11-18 12:44:16"
          description: Creates and manages Submariner deployments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: submariner-operator
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/submariner-io/submariner-operator
          support: Submariner
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Broker is the Schema for the brokers API.
            displayName: Submariner Broker
            kind: Broker
            name: brokers.submariner.io
            version: v1alpha1
          - description: ServiceDiscovery is the Schema for the servicediscoveries
              API.
            displayName: Service Discovery
            kind: ServiceDiscovery
            name: servicediscoveries.submariner.io
            version: v1alpha1
          - description: Submariner is the Schema for the submariners API.
            displayName: Submariner
            kind: Submariner
            name: submariners.submariner.io
            version: v1alpha1
        description: |
          [Submariner](https://submariner.io) enables direct networking between Pods and Services in different Kubernetes
          clusters. With Submariner, your applications and services can span multiple cloud providers, data centers, and regions.

          Submariner is designed to be cloud provider and network plugin (CNI) agnostic.

          Submariner consists of several main components that work in conjunction to securely connect workloads across
          multiple Kubernetes clusters, both on-premise and on public clouds:
          * [Gateway Engine](https://submariner.io/getting-started/architecture/gateway-engine/): manages the secure tunnels to other clusters.
          * [Route Agent](https://submariner.io/getting-started/architecture/route-agent/): routes cross-cluster traffic from nodes
          to the active Gateway Engine.
          * [Broker](https://submariner.io/getting-started/architecture/broker/): facilitates the exchange of metadata between Gateway
          Engines enabling them to discover one another.

          Submariner has optional components that provide additional functionality:
          * [Globalnet Controller](https://submariner.io/getting-started/architecture/globalnet/): handles overlapping CIDRs across clusters.
          * [Service Discovery](https://submariner.io/getting-started/architecture/service-discovery/): provides DNS discovery of services
          across clusters.

          ### Prerequisites
          Submariner has a few requirements to get started, all are documented [here](https://submariner.io/getting-started/quickstart/kind/#prerequisites).

          If running on an OpenShift cluster, perform the following steps to bind the Submariner service accounts to the **privileged** SCC.

          ```shell
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-gateway
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-routeagent
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-globalnet
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-lighthouse-coredns
          ```

          ### Deployment
          Submariner provides an [Operator](https://github.com/submariner-io/submariner-operator) for easy API-based
          installation and management.
          A command line utility, [subctl](https://github.com/submariner-io/submariner-operator/releases), wraps the
          Operator to aid users with manual deployments and easy experimentation.
          subctl greatly simplifies the deployment of Submariner, and is therefore the recommended deployment method.
          For complete information about subctl, please refer to [this page](https://submariner.io/operations/deployment/subctl).
          In addition to Operator and subctl, Submariner also provides [Helm Charts](https://submariner.io/operations/deployment/helm).

          On the broker cluster:
          1. Create the broker namespace called `submariner-k8s-broker`.
          2. Apply the broker RBAC definitions:

              ```shell
              git clone --depth 1 --single-branch --branch release-0.21 https://github.com/submariner-io/submariner-operator
              kubectl apply -k submariner-operator/config/broker -n submariner-k8s-broker
              ```

          3. Install the Submariner Operator from the catalog.
          4. Create a new `Broker` custom resource named **submariner-broker**.

          On connected clusters:
          1. Install the Submariner Operator from the catalog.
          2. Create a new `Submariner` custom resource named **submariner**.

          The following values can be specified for the **Broker** CR:
          * **defaultCustomDomains**: List of domains to use for multicluster service discovery.
          * **defaultGlobalnetClusterSize**: Default cluster size for GlobalCIDR allocated to each cluster (amount of global IPs).
          * **globalnetEnabled**: Enable support for Overlapping CIDRs in connecting clusters (default disabled).
          * **globalnetCIDRRange**: GlobalCIDR supernet range for allocating GlobalCIDRs to each cluster.
          * **components**: List of components to be installed [service-discovery, connectivity].

          The following values can be specified for the **Submariner** CR:
          * **namespace**: The namespace to install in.
          * **serviceCIDR**: The service CIDR.
          * **clusterCIDR**: The cluster CIDR.
          * **clusterID**: The cluster ID used to identify the tunnels.
          * **colorCodes**: The color code(s) for the cluster.
          * **debug**: *'true'* to enable operator debugging information - verbose logging.
          * **natEnabled**: *'true'* if there is NAT between clusters. Typically *'true'* in public cloud or mixed on-prem/public cloud environments and *'false'* when all clusters are on-prem.
          * **broker**: This must be *k8s* currently.
          * **brokerK8sApiServer**: The broker API server URL.
              To retrieve it run the following command on the broker cluster:

              `kubectl -n default get endpoints kubernetes -o
              jsonpath="{.subsets[0].addresses[0].ip}:{.subsets[0].ports[?(@.name=='https')].port}"`

          * **brokerK8sApiServerToken**: The broker API server token.
              To retrieve the token run the following command on the broker cluster, assuming the broker is running in the
              *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data.token != null)] | .[0].data.token' | base64 --decode`

          * **brokerK8sRemoteNamespace**: The broker namespace.
          * **brokerK8sCA**: The broker certificate authority.
              To retrieve the broker CA run the following command on the broker cluster, assuming the broker is running in
              the *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data."ca.crt" != null)] | .[0].data."ca.crt"' | base64 --decode`

          * **ceIPSecPSK**: The IPsec Pre-Shared Key which must be identical in all route agents across the cluster.
              To generate a unique PSK run the following command on your machine:

              `dd if=/dev/urandom count=64 bs=8 | LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 64 | head -n 1`

          * **ceIPSecDebug**: *'true'* to enable logging IPsec debugging information - verbose logging from the IPsec daemon.
          * **ceIPSecIKEPort**: The IPsec IKE port (500 usually).
          * **ceIPSecNATTPort**: The IPsec NAT traversal port (4500 usually).
          * **repository**: The container repository to use.
          * **version**: The container version to use.
          * **imageOverrides**: A string map that overrides the images by defining a path for each component.
                                This field is meant to be used by CI, development or testing.

            **example:**

            ```yaml
            imageOverrides:
              submariner-route-agent=my_repo/my_custom_image:my_tag
              submariner-globalnet=my_repo/my_custom_image:my_tag
            ```
        displayName: Submariner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multi-cluster
        - ipsec
        - tunnel
        - submariner-operator
        links:
        - name: Website
          url: https://submariner.io
        - name: GitHub
          url: https://github.com/submariner-io
        - name: Slack
          url: https://kubernetes.slack.com/archives/C010RJV694M
        - name: YouTube
          url: https://www.youtube.com/channel/UCZ3brSgl2v4boglZoeChClQ/videos
        - name: Twitter
          url: https://twitter.com/submarinerio
        maintainers:
        - email: submariner-dev@googlegroups.com
          name: Submariner project
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: submariner.io
        relatedImages:
        - registry.redhat.io/rhacm2/lighthouse-coredns-rhel9@sha256:37fb020f4e261f01205d9937375958f9ae679dcbae6d6f44a6a3b037ca37daf5
        - registry.redhat.io/rhacm2/nettest-rhel9@sha256:216411b2b30bcbd993553d1e6e801aee2a8d059ff77a2daf34d7f89e2897a87a
        - registry.redhat.io/rhacm2/submariner-gateway-rhel9@sha256:86eb47f7db45c51fc334e12a95ccbcc955d36cff55d302e9b835df0198881ed6
        - registry.redhat.io/rhacm2/submariner-globalnet-rhel9@sha256:f8223f48bca9166c8be441158c8eeffbcf6f4dff55b3bb47c05edfcc001569e8
        - registry.redhat.io/rhacm2/submariner-rhel9-operator@sha256:c18f75ecce7a2ff854ce438110c0441d7ca94c92fd0f6544694921f28d9ae815
        - registry.redhat.io/rhacm2/submariner-route-agent-rhel9@sha256:9d57f677f46236a94987223783d88a61101e8eb44bdb72420c1480fa8f39fd67
        - registry.redhat.io/rhacm2/submariner-operator-bundle@sha256:bee92e4e7d305ab6f48d4a06fa7130f59ceebd004bbe802cd41a1eb4ffb98aee
        - registry.redhat.io/rhacm2/lighthouse-agent-rhel9@sha256:b3d220c9f8dd7ce3f4a2a01365ead67d8306a677e4ed292ad075ae81b90939dd
        version: 0.21.2
      entries:
      - name: submariner.v0.21.2
        version: 0.21.2
      - name: submariner.v0.21.0
        version: 0.21.0
      name: stable-0.21
    - currentCSV: submariner.v0.22.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Broker",
                "metadata": {
                  "name": "submariner-broker"
                },
                "spec": {
                  "components": [
                    "service-discovery",
                    "connectivity"
                  ],
                  "defaultGlobalnetClusterSize": 8192,
                  "globalnetEnabled": false
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "ServiceDiscovery",
                "metadata": {
                  "name": "servicediscovery"
                },
                "spec": {
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "clusterID": "cluster1",
                  "debug": false,
                  "globalnetEnabled": false,
                  "namespace": "submariner-operator",
                  "repository": "quay.io/submariner",
                  "version": "v0.22.0"
                }
              },
              {
                "apiVersion": "submariner.io/v1alpha1",
                "kind": "Submariner",
                "metadata": {
                  "name": "submariner"
                },
                "spec": {
                  "broker": "k8s",
                  "brokerK8sApiServer": "192.168.67.110:8443",
                  "brokerK8sApiServerToken": "$(BROKER_K8S_API_TOKEN)",
                  "brokerK8sCA": "$(BROKER_K8S_CA)",
                  "brokerK8sRemoteNamespace": "submariner-k8s-broker",
                  "cableDriver": "libreswan",
                  "ceIPSecDebug": false,
                  "ceIPSecIKEPort": 500,
                  "ceIPSecNATTPort": 4500,
                  "ceIPSecPSK": "$(IPSEC_PSK)",
                  "clusterCIDR": "192.168.67.0/24",
                  "clusterID": "cluster1",
                  "connectionHealthCheck": {
                    "enabled": false,
                    "intervalSeconds": 1,
                    "maxPacketLossCount": 5
                  },
                  "debug": false,
                  "globalCIDR": "",
                  "namespace": "submariner-operator",
                  "natEnabled": true,
                  "repository": "quay.io/submariner",
                  "serviceCIDR": "192.168.66.0/24",
                  "serviceDiscoveryEnabled": true,
                  "version": "v0.22.0"
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: $(SUBMARINER_OPERATOR_IMAGE)
          createdAt: "2025-12-04 09:45:04"
          description: Creates and manages Submariner deployments.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: submariner-operator
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/submariner-io/submariner-operator
          support: Submariner
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Broker is the Schema for the brokers API.
            displayName: Submariner Broker
            kind: Broker
            name: brokers.submariner.io
            version: v1alpha1
          - description: ServiceDiscovery is the Schema for the servicediscoveries
              API.
            displayName: Service Discovery
            kind: ServiceDiscovery
            name: servicediscoveries.submariner.io
            version: v1alpha1
          - description: Submariner is the Schema for the submariners API.
            displayName: Submariner
            kind: Submariner
            name: submariners.submariner.io
            version: v1alpha1
        description: |
          [Submariner](https://submariner.io) enables direct networking between Pods and Services in different Kubernetes
          clusters. With Submariner, your applications and services can span multiple cloud providers, data centers, and regions.

          Submariner is designed to be cloud provider and network plugin (CNI) agnostic.

          Submariner consists of several main components that work in conjunction to securely connect workloads across
          multiple Kubernetes clusters, both on-premise and on public clouds:
          * [Gateway Engine](https://submariner.io/getting-started/architecture/gateway-engine/): manages the secure tunnels to other clusters.
          * [Route Agent](https://submariner.io/getting-started/architecture/route-agent/): routes cross-cluster traffic from nodes
          to the active Gateway Engine.
          * [Broker](https://submariner.io/getting-started/architecture/broker/): facilitates the exchange of metadata between Gateway
          Engines enabling them to discover one another.

          Submariner has optional components that provide additional functionality:
          * [Globalnet Controller](https://submariner.io/getting-started/architecture/globalnet/): handles overlapping CIDRs across clusters.
          * [Service Discovery](https://submariner.io/getting-started/architecture/service-discovery/): provides DNS discovery of services
          across clusters.

          ### Prerequisites
          Submariner has a few requirements to get started, all are documented [here](https://submariner.io/getting-started/quickstart/kind/#prerequisites).

          If running on an OpenShift cluster, perform the following steps to bind the Submariner service accounts to the **privileged** SCC.

          ```shell
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-gateway
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-routeagent
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-globalnet
          oc adm policy add-scc-to-user privileged system:serviceaccount:submariner-operator:submariner-lighthouse-coredns
          ```

          ### Deployment
          Submariner provides an [Operator](https://github.com/submariner-io/submariner-operator) for easy API-based
          installation and management.
          A command line utility, [subctl](https://github.com/submariner-io/submariner-operator/releases), wraps the
          Operator to aid users with manual deployments and easy experimentation.
          subctl greatly simplifies the deployment of Submariner, and is therefore the recommended deployment method.
          For complete information about subctl, please refer to [this page](https://submariner.io/operations/deployment/subctl).
          In addition to Operator and subctl, Submariner also provides [Helm Charts](https://submariner.io/operations/deployment/helm).

          On the broker cluster:
          1. Create the broker namespace called `submariner-k8s-broker`.
          2. Apply the broker RBAC definitions:

              ```shell
              git clone --depth 1 --single-branch --branch release-0.22 https://github.com/submariner-io/submariner-operator
              kubectl apply -k submariner-operator/config/broker -n submariner-k8s-broker
              ```

          3. Install the Submariner Operator from the catalog.
          4. Create a new `Broker` custom resource named **submariner-broker**.

          On connected clusters:
          1. Install the Submariner Operator from the catalog.
          2. Create a new `Submariner` custom resource named **submariner**.

          The following values can be specified for the **Broker** CR:
          * **defaultCustomDomains**: List of domains to use for multicluster service discovery.
          * **defaultGlobalnetClusterSize**: Default cluster size for GlobalCIDR allocated to each cluster (amount of global IPs).
          * **globalnetEnabled**: Enable support for Overlapping CIDRs in connecting clusters (default disabled).
          * **globalnetCIDRRange**: GlobalCIDR supernet range for allocating GlobalCIDRs to each cluster.
          * **components**: List of components to be installed [service-discovery, connectivity].

          The following values can be specified for the **Submariner** CR:
          * **namespace**: The namespace to install in.
          * **serviceCIDR**: The service CIDR.
          * **clusterCIDR**: The cluster CIDR.
          * **clusterID**: The cluster ID used to identify the tunnels.
          * **colorCodes**: The color code(s) for the cluster.
          * **debug**: *'true'* to enable operator debugging information - verbose logging.
          * **natEnabled**: *'true'* if there is NAT between clusters. Typically *'true'* in public cloud or mixed on-prem/public cloud environments and *'false'* when all clusters are on-prem.
          * **broker**: This must be *k8s* currently.
          * **brokerK8sApiServer**: The broker API server URL.
              To retrieve it run the following command on the broker cluster:

              `kubectl -n default get endpoints kubernetes -o
              jsonpath="{.subsets[0].addresses[0].ip}:{.subsets[0].ports[?(@.name=='https')].port}"`

          * **brokerK8sApiServerToken**: The broker API server token.
              To retrieve the token run the following command on the broker cluster, assuming the broker is running in the
              *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data.token != null)] | .[0].data.token' | base64 --decode`

          * **brokerK8sRemoteNamespace**: The broker namespace.
          * **brokerK8sCA**: The broker certificate authority.
              To retrieve the broker CA run the following command on the broker cluster, assuming the broker is running in
              the *submariner-k8s-broker* namespace:

              `kubectl -n submariner-k8s-broker get secrets -o json
              | jq -r -c '[.items[] | select(.metadata.annotations."kubernetes.io/service-account.name"=="submariner-k8s-broker-client")
              | select(.data."ca.crt" != null)] | .[0].data."ca.crt"' | base64 --decode`

          * **ceIPSecPSK**: The IPsec Pre-Shared Key which must be identical in all route agents across the cluster.
              To generate a unique PSK run the following command on your machine:

              `dd if=/dev/urandom count=64 bs=8 | LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 64 | head -n 1`

          * **ceIPSecDebug**: *'true'* to enable logging IPsec debugging information - verbose logging from the IPsec daemon.
          * **ceIPSecIKEPort**: The IPsec IKE port (500 usually).
          * **ceIPSecNATTPort**: The IPsec NAT traversal port (4500 usually).
          * **repository**: The container repository to use.
          * **version**: The container version to use.
          * **imageOverrides**: A string map that overrides the images by defining a path for each component.
                                This field is meant to be used by CI, development or testing.

            **example:**

            ```yaml
            imageOverrides:
              submariner-route-agent=my_repo/my_custom_image:my_tag
              submariner-globalnet=my_repo/my_custom_image:my_tag
            ```
        displayName: Submariner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multi-cluster
        - ipsec
        - tunnel
        - submariner-operator
        links:
        - name: Website
          url: https://submariner.io
        - name: GitHub
          url: https://github.com/submariner-io
        - name: Slack
          url: https://kubernetes.slack.com/archives/C010RJV694M
        - name: YouTube
          url: https://www.youtube.com/channel/UCZ3brSgl2v4boglZoeChClQ/videos
        - name: Twitter
          url: https://twitter.com/submarinerio
        maintainers:
        - email: submariner-dev@googlegroups.com
          name: Submariner project
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: submariner.io
        relatedImages:
        - registry.redhat.io/rhacm2/nettest-rhel9@sha256:81fd7584951aaf7bcb86d4038089675e3ec4da3791b2a49fe73ae55f217f4303
        - registry.redhat.io/rhacm2/submariner-gateway-rhel9@sha256:1112c506ac82bbd14bf970a859690529b2165945c337b5da04a2e963bb7f6a77
        - registry.redhat.io/rhacm2/submariner-globalnet-rhel9@sha256:ef127d44c1bfa39e2e301eca2a1de736df43285b66e3b766860f372fd2cfb591
        - registry.redhat.io/rhacm2/submariner-rhel9-operator@sha256:3f71495eab9e2f82f74a21df6143c799bfb8a0038aef4e97b766a498bb535c16
        - registry.redhat.io/rhacm2/submariner-route-agent-rhel9@sha256:096c3fa7333d2cca1984d2852af84ca6735de3ca6fabcdd1aff25fee372acf98
        - registry.redhat.io/rhacm2/submariner-operator-bundle@sha256:bb851aac8a0b44e3322da36c4349723e564ff8ce489210859210eddcb8f3c425
        - registry.redhat.io/rhacm2/lighthouse-agent-rhel9@sha256:5ee9a8aff7bd566cc4633c5191c40d7370349abdbfe19ac6e0588956f879c0c8
        - registry.redhat.io/rhacm2/lighthouse-coredns-rhel9@sha256:cd29afa47105e0b49b0f640651c16a73d1190c84fb28aa6feee75d5e89b40b2c
        version: 0.22.0
      entries:
      - name: submariner.v0.22.0
        version: 0.22.0
      name: stable-0.22
    defaultChannel: stable-0.22
    packageName: submariner
    provider:
      name: submariner.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Instana
      provider-url: ""
    name: instana-agent-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: instana-agent-operator.v2.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "instana.io/v1",
                "kind": "InstanaAgent",
                "metadata": {
                  "name": "instana-agent",
                  "namespace": "instana-agent"
                },
                "spec": {
                  "agent": {
                    "configuration_yaml": "# You can leave this empty, or use this to configure your instana agent.\n# See https://github.com/instana/instana-agent-operator/blob/main/config/samples/instana_v1_extended_instanaagent.yaml for the extended version.\n",
                    "endpointHost": "ingress-red-saas.instana.io",
                    "endpointPort": "443",
                    "env": {},
                    "key": "replace-key"
                  },
                  "cluster": {
                    "name": "my-cluster"
                  },
                  "opentelemetry": {
                    "grpc": {
                      "enabled": true
                    },
                    "http": {
                      "enabled": true
                    }
                  },
                  "zone": {
                    "name": "edited-zone"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring,Logging & Tracing,OpenShift Optional
          certified: "false"
          containerImage: icr.io/instana/instana-agent-operator@sha256:c81463e192b47a673797e762c87587bf6646b3d6b48b628236e9fdd6337f6a9b
          description: Fully automated Application Performance Monitoring (APM) for
            microservices.
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/instana/instana-agent-operator
          support: Instana
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: InstanaAgent is the Schema for the agents API
            displayName: Instana Agent
            kind: InstanaAgent
            name: agents.instana.io
            version: v1
          - description: InstanaAgentRemote is the Schema for the agents API
            displayName: Instana Agent Remote
            kind: InstanaAgentRemote
            name: agentsremote.instana.io
            version: v1
        description: |
          # Instana

          Instana is an [APM solution](https://www.instana.com/product-overview/) built for microservices that enables IT Ops to build applications faster and deliver higher quality services by automating monitoring, tracing and root cause analysis. The solution is optimized for [Kubernetes](https://www.instana.com/automatic-kubernetes-monitoring/) and [OpenShift](https://www.instana.com/blog/automatic-root-cause-analysis-for-openshift-applications/).

          ## Instana Agent Operator

          This is the Kubernetes Operator for installing the Instana Agent on Kubernetes or OpenShift.

          ## Prerequisites for OpenShift

          Before the agent will be able to run in OpenShift, you need to perform a couple of extra configuration steps.

          You need to set up a project for the Instana Agent and configure it's permissions.

          The project you create here needs to be the namespace where you create the Instana Agent custom resource that the operator will use to deploy the agent.

          For example, create the `instana-agent` project:

              oc new-project instana-agent

          Then, ensure the `instana-agent` service account is in the privileged security context:

              oc adm policy add-scc-to-user privileged -z instana-agent

          The `instana-agent-remote` service account must be allowed to use any userid:

              oc adm policy add-scc-to-user anyuid -z instana-agent-remote -n instana-agent

          This service account will be created by the operator.

          Now you can proceed with installing the operator for the Instana agent.

          ## Installation and Configuration

          First, install this operator from [OperatorHub.io](https://operatorhub.io/), [OpenShift Container Platform](https://www.openshift.com/), or [OKD](https://www.okd.io/).

          Second, create a custom resource with the agent configuration in the target namespace (for now, this MUST always be the `instana-agent` namespace). The operator will pick up the custom resource and install the Instana agent accordingly.

          The following is a minimal template of the custom resource:

          ```yaml
          apiVersion: instana.io/v1
          kind: InstanaAgent
          metadata:
            name: instana-agent
            namespace: instana-agent
          spec:
            zone:
              name: my-zone # (optional) name of the zone of the host
            cluster:
              name: replace-me # replace with the name of your Kubernetes cluster
            agent:
              key: replace-me # replace with your Instana agent key
              endpointHost: ingress-red-saas.instana.io # the monitoring ingress endpoint
              endpointPort: "443" # the monitoring ingress endpoint port, wrapped in quotes
              env:
                INSTANA_AGENT_TAGS: example
              configuration_yaml: |
                # You can leave this empty, or use this to configure your instana agent.
                # See https://ibm.biz/monitoring-k8s
          ```

          Save the template in a file `instana-agent.yaml` and edit the following values:

          * If your target namespace is not `instana-agent`, replace the `namespace:` accordingly.
          * `agent.key` must be set with your Instana agent key.
          * `agent.endpointHost` must be set with the monitoring ingress endpoint, generally either `saas-us-west-2.instana.io` or `saas-eu-west-1.instana.io`.
          * `agent.endpointPort` must be set with the monitoring ingress port, generally "443" (wrapped in quotes).
          * `zone.name` should be set with the name of the Kubernetes cluster that is be displayed in Instana.

          For advanced configuration, you can edit the contents of the `configuration.yaml` file. View documentation [here](https://ibm.biz/monitoring-k8s).

          Apply the custom resource with `kubectl apply -f instana-agent.yaml`. After some time, you should see `instana-agent` Pods being created on each node of your cluster, and your cluster should show on the infrastructure map on your Instana Web interface.

          In addition to the InstanaAgent custom resource, a remote agent can be deployed. This agent will not monitor workload running inside the cluster, but can deploy a single replica of an agent which can get an independent configuration for running remote monitoring for certain sensors.

          ```yaml
          apiVersion: instana.io/v1
          kind: InstanaAgentRemote
          metadata:
            name: remote-agent
            namespace: "instana-agent"
          spec:
            zone:
              name: edited-zone # name of the zone of the host
            hostname:
              name: use-custom-hostname-for-remote-agent # (optional) give your remote agent pod a custom hostname
            agent:
              key: replace-key # replace with your Instana agent key
              endpointHost: ingress-red-saas.instana.io
              endpointPort: "443"
              env: {}
              configuration_yaml: |
                # You can leave this empty, or use this to configure your instana agent.
                # See https://github.com/instana/instana-agent-operator/blob/main/config/samples/instana_v1_extended_instanaagent.yaml for the extended version.
          ```

          ## Uninstalling

          In order to uninstall the Instana agent, simply remove the custom resource with `kubectl delete -f instana-agent.yaml`.

          ## Source Code

          The Instana agent operator is an open source project hosted on [https://github.com/instana/instana-agent-operator](https://github.com/instana/instana-agent-operator/).
        displayName: Instana Agent Operator
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - APM
        - Instana
        links:
        - name: GitHub Repository
          url: https://github.com/instana/instana-agent-operator
        maintainers:
        - email: support@instana.com
          name: Instana
        maturity: stable
        minKubeVersion: 1.11.0
        provider:
          name: Instana
        relatedImages:
        - icr.io/instana/agent@sha256:cafef53efc0baa0e99c3a7fef619d3d8f0311e8ca38c141052c98d9a33ba4f1c
        - icr.io/instana/instana-agent-operator@sha256:c81463e192b47a673797e762c87587bf6646b3d6b48b628236e9fdd6337f6a9b
        - registry.connect.redhat.com/instana/instana-agent-operator-bundle@sha256:18267a5e3a10369ddc462f52edf50ff20023ae5f123b867648fb53383d525a8e
        version: 2.2.4
      entries:
      - name: instana-agent-operator.v2.2.4
        version: 2.2.4
      - name: instana-agent-operator.v2.2.2
        version: 2.2.2
      - name: instana-agent-operator.v2.2.1
        version: 2.2.1
      - name: instana-agent-operator.v2.2.0
        version: 2.2.0
      - name: instana-agent-operator.v2.1.36
        version: 2.1.36
      - name: instana-agent-operator.v2.1.35
        version: 2.1.35
      - name: instana-agent-operator.v2.1.34
        version: 2.1.34
      - name: instana-agent-operator.v2.1.33
        version: 2.1.33
      - name: instana-agent-operator.v2.1.32
        version: 2.1.32
      - name: instana-agent-operator.v2.1.31
        version: 2.1.31
      - name: instana-agent-operator.v2.1.30
        version: 2.1.30
      - name: instana-agent-operator.v2.1.29
        version: 2.1.29
      - name: instana-agent-operator.v2.1.28
        version: 2.1.28
      - name: instana-agent-operator.v2.1.27
        version: 2.1.27
      - name: instana-agent-operator.v2.1.25
        version: 2.1.25
      - name: instana-agent-operator.v2.1.24
        version: 2.1.24
      - name: instana-agent-operator.v2.1.23
        version: 2.1.23
      - name: instana-agent-operator.v2.1.22
        version: 2.1.22
      - name: instana-agent-operator.v2.1.21
        version: 2.1.21
      - name: instana-agent-operator.v2.1.20
        version: 2.1.20
      - name: instana-agent-operator.v2.1.19
        version: 2.1.19
      - name: instana-agent-operator.v2.1.18
        version: 2.1.18
      - name: instana-agent-operator.v2.1.17
        version: 2.1.17
      - name: instana-agent-operator.v2.1.16
        version: 2.1.16
      - name: instana-agent-operator.v2.1.15
        version: 2.1.15
      - name: instana-agent-operator.v2.1.14
        version: 2.1.14
      - name: instana-agent-operator.v2.1.13
        version: 2.1.13
      - name: instana-agent-operator.v2.1.12
        version: 2.1.12
      - name: instana-agent-operator.v2.1.11
        version: 2.1.11
      - name: instana-agent-operator.v2.1.10
        version: 2.1.10
      - name: instana-agent-operator.v2.1.9
        version: 2.1.9
      - name: instana-agent-operator.v2.1.8
        version: 2.1.8
      - name: instana-agent-operator.v2.1.7
        version: 2.1.7
      - name: instana-agent-operator.v2.1.6
        version: 2.1.6
      - name: instana-agent-operator.v2.1.5
        version: 2.1.5
      - name: instana-agent-operator.v2.1.4
        version: 2.1.4
      - name: instana-agent-operator.v2.1.3
        version: 2.1.3
      - name: instana-agent-operator.v2.1.2
        version: 2.1.2
      - name: instana-agent-operator.v2.1.1
        version: 2.1.1
      - name: instana-agent-operator.v2.1.0
        version: 2.1.0
      - name: instana-agent-operator.v2.0.32
        version: 2.0.32
      - name: instana-agent-operator.v2.0.31
        version: 2.0.31
      - name: instana-agent-operator.v2.0.30
        version: 2.0.30
      - name: instana-agent-operator.v2.0.27
        version: 2.0.27
      - name: instana-agent-operator.v2.0.19
        version: 2.0.19
      - name: instana-agent-operator.v2.0.18
        version: 2.0.18
      - name: instana-agent-operator.v2.0.17
        version: 2.0.17
      - name: instana-agent-operator.v2.0.13
        version: 2.0.13
      - name: instana-agent-operator.v2.0.12
        version: 2.0.12
      - name: instana-agent-operator.v2.0.11
        version: 2.0.11
      - name: instana-agent-operator.v2.0.10
        version: 2.0.10
      - name: instana-agent-operator.v2.0.9
        version: 2.0.9
      - name: instana-agent-operator.v2.0.8
        version: 2.0.8
      - name: instana-agent-operator.v2.0.7
        version: 2.0.7
      - name: instana-agent-operator.v2.0.5
        version: 2.0.5
      - name: instana-agent-operator.v2.0.4
        version: 2.0.4
      name: stable
    defaultChannel: stable
    packageName: instana-agent-operator
    provider:
      name: Instana
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: The Jumpstarter Community
      provider-url: https://jumpstarter.dev
    name: jumpstarter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jumpstarter-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "Client",
                "metadata": {
                  "labels": {
                    "type": "developer"
                  },
                  "name": "client-sample"
                },
                "spec": {
                  "username": "keycloak:user-name-in-keycloak"
                }
              },
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "Exporter",
                "metadata": {
                  "labels": {
                    "type": "nxp-imx8mm-evk"
                  },
                  "name": "exporter-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "ExporterAccessPolicy",
                "metadata": {
                  "name": "exporteraccesspolicy-sample"
                },
                "spec": {
                  "exporterSelector": {
                    "matchLabels": {
                      "lab": "jumpstarter"
                    }
                  },
                  "policies": [
                    {
                      "from": [
                        {
                          "clientSelector": {
                            "matchLabels": {
                              "team": "platform"
                            }
                          }
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "jumpstarter.dev/v1alpha1",
                "kind": "Lease",
                "metadata": {
                  "name": "lease-sample"
                },
                "spec": {
                  "clientRef": {
                    "name": "client-sample"
                  },
                  "duration": "1h",
                  "selector": {
                    "matchLabels": {
                      "board": "rcar-s4"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.jumpstarter.dev/v1alpha1",
                "kind": "Jumpstarter",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "jumpstarter-operator"
                  },
                  "name": "jumpstarter-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery
          com.redhat.openshift.versions: v4.18-v4.21
          containerImage: quay.io/jumpstarter-dev/jumpstarter-operator:latest
          createdAt: "2025-11-28T14:46:02Z"
          description: Jumpstarter is a cloud-native framework for Hardware-in-the-Loop
            (HIL) testing and development
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/jumpstarter-dev/jumpstarter-controller
          support: The Jumpstarter Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |
              Client is the schema for the Clients API. Clients represent a user that can access the Jumpstarter Controller. Clients can be associated to external identity OIDC providers by providing Username, i.e. Spec.Username: "kc:user-name-in-keycloak"
            displayName: Client
            kind: Client
            name: clients.jumpstarter.dev
            version: v1alpha1
          - description: Exporter access policies define how exporters can be accessed
              by clients.
            displayName: ExporterAccessPolicy
            kind: ExporterAccessPolicy
            name: exporteraccesspolicies.jumpstarter.dev
            version: v1alpha1
          - description: |
              Exporters represent the services that connect to the physical or virtual devices. They are responsible for providing the access to the devices and for the communication with the devices. A jumpstarter exporter service should be ran on a linux machine, or a pod, with the exporter credentials and the right configuration for this resource to become online. For more information see the Jumpstarter documentation: https://jumpstarter.dev/main/introduction/exporters.html#exporters
            displayName: Exporter
            kind: Exporter
            name: exporters.jumpstarter.dev
            version: v1alpha1
          - description: Jumpstarter is the Schema for the jumpstarters API.
            displayName: Jumpstarter
            kind: Jumpstarter
            name: jumpstarters.operator.jumpstarter.dev
            version: v1alpha1
          - description: |
              Lease is the schema for the Leases API. Leases represent a request for a specific exporter by a client. The lease is acquired by the client and the exporter is assigned to the lease. The lease is released by the client when the client is done with the exporter. For more information see the Jumpstarter documentation:
                https://jumpstarter.dev/main/reference/man-pages/jmp.html#jmp-create-lease
                https://jumpstarter.dev/main/reference/man-pages/jmp.html#jmp-shell
            displayName: Lease
            kind: Lease
            name: leases.jumpstarter.dev
            version: v1alpha1
        description: Jumpstarter is a cloud-native framework for Hardware-in-the-Loop
          (HIL) automation that bridges the gap between embedded development workflows
          and real-world deployment environments. This operator installs and manages
          the Jumpstarter Controller, which acts as the central brain for your testing
          infrastructure. It orchestrates secure, shared access to physical hardware
          and virtual devices (represented as "exporters") directly from your Kubernetes
          or OpenShift cluster.
        displayName: Jumpstarter Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hil
        - hardware-in-the-loop
        - hardware
        - device
        - embedded
        - testing
        - framework
        links:
        - name: Jumpstarter Operator
          url: https://jumpstarter.dev/main/getting-started/installation/service/index.html
        maintainers:
        - email: majopela@redhat.com
          name: Miguel Angel Ajo
        - email: bzlotnik@redhat.com
          name: Benny Zlotnik
        - email: bkhizgiy@redhat.com
          name: Bella Khizgiyaev
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: The Jumpstarter Community
          url: https://jumpstarter.dev
        relatedImages:
        - quay.io/jumpstarter-dev/jumpstarter-operator:latest
        - quay.io/community-operator-pipeline-prod/jumpstarter-operator:0.8.0
        version: 0.8.0
      entries:
      - name: jumpstarter-operator.v0.8.0
        version: 0.8.0
      name: alpha
    defaultChannel: alpha
    packageName: jumpstarter-operator
    provider:
      name: The Jumpstarter Community
      url: https://jumpstarter.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com
    name: ibm-security-verify-access-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-security-verify-access-operator.v23.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ibm.com/v1",
                "kind": "IBMSecurityVerifyAccess",
                "metadata": {
                  "name": "isva-sample"
                },
                "spec": {
                  "image": "icr.io/isva/verify-access-wrp:10.0.5.0",
                  "instance": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: icr.io/isva/verify-access-operator:23.3.0
          createdAt: Mon Mar  20 00:59:34 UTC 2023
          description: The IBM Security Verify Access Operator manages the lifecycle
            of IBM Security Verify Access worker containers.
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/IBM-Security/verify-access-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBMSecurityVerifyAccess is the Schema for the ibmsecurityverifyaccesses
              API.
            displayName: IBMSecurity Verify Access
            kind: IBMSecurityVerifyAccess
            name: ibmsecurityverifyaccesses.ibm.com
            version: v1
        description: |+
          In a world of highly fragmented access management environments, [IBM Security Verify Access](https://www.ibm.com/au-en/products/verify-access) helps you simplify your users' access while more securely adopting web, mobile and cloud technologies. This solution helps you strike a balance between usability and security through the use of risk-based access, single sign-on, integrated access management control, identity federation and its mobile multi-factor authentication capability, IBM Verify. Take back control of your access management with IBM Security Verify Access.

          The IBM Security Verify Access operator provides lifecycle management of the lightweight containers which are used to protect an environment, namely:
          * [Web Reverse Proxy](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-web-reverse-proxy)
          * [Runtime](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-runtime)
          * [Distributed Session Cache](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-distributed-session-cache)

          The operator will manage the deployment of these lightweight IBM Security Verify Access worker containers, and also control the rolling restart of these containers when a configuration snapshot is updated.

          See the project [Readme](https://github.com/IBM-Security/verify-access-operator/blob/master/README.md) for further information and details.

        displayName: IBM Security Verify Access Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - identity and access
        - security
        links:
        - name: Verify Access Product Information
          url: https://www.ibm.com/au-en/products/verify-access
        - name: Verify Access Documentation
          url: https://www.ibm.com/docs/en/sva
        maintainers:
        - email: isamdev@au1.ibm.com
          name: Verify Access Development Team
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: IBM
          url: https://www.ibm.com
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - icr.io/isva/verify-access-operator:23.3.0
        - quay.io/openshift-community-operators/ibm-security-verify-access-operator@sha256:ec3970c7a6a5ee3ac863dfe6f16234fe19cd7ea4a541fd0cbae9a8183d0763a2
        version: 23.3.0
      entries:
      - name: ibm-security-verify-access-operator.v23.3.0
        version: 23.3.0
      - name: ibm-security-verify-access-operator.v22.10.0
        version: 22.10.0
      name: stable
    defaultChannel: stable
    packageName: ibm-security-verify-access-operator
    provider:
      name: IBM
      url: https://www.ibm.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: unsupported
      operatorframework.io/arch.ppc64le: unsupported
      operatorframework.io/arch.s390x: unsupported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: mta-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mta-operator.v6.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:f5d10cd2528bebf5094c7744e47d9de6fe827fd09024c5ffc0e1b74f1a6cc3b4
          createdAt: "2023-04-26T14:04:20Z"
          description: MTA contains tools that support the modernization and migration
            of applications to Kubernetes and OpenShift
          olm.skipRange: '>=0.0.0 <6.0.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/tackle2-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is a collection of tools that supports large-scale application modernization and migration projects to Kubernetes and OpenShift.


          Migration Toolkit for Applications allows users to maintain their portfolio of applications with a full set of metadata and to assess their suitability for modernization leveraging a questionnaire based approach.


          ### Install

          By default, MTA requires a RWX capable storage class for caching purposes, this can be disabled via the rwx_supported parameter in Tackle CR.

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:a66dd030eb99207b6aaacc6b7c7cb5182901da836ebf50373c14f8e5ecb7b642
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:f5d10cd2528bebf5094c7744e47d9de6fe827fd09024c5ffc0e1b74f1a6cc3b4
        - registry.redhat.io/mta/mta-ui-rhel8@sha256:de6cb95ce3663922ecc725b186876b043a9c7794e95510459ffbcba7d668fc26
        - registry.redhat.io/mta/mta-windup-addon-rhel8@sha256:a4200fc0a39df67eae31c53ee9ae0c05769fb410d0312ebd0bbf8bf1567b2a48
        - registry.redhat.io/rhel8/postgresql-12@sha256:3a69efa85af6a6f95665eca69085b007fa1fcb645a37f356895aeb4c9527a621
        - registry.redhat.io/mta/mta-admin-addon-rhel8@sha256:812b8dc621a06bb99cf2c59abb8257da3ceeb165c563e14d258e69803a557cc8
        - registry.redhat.io/mta/mta-hub-rhel8@sha256:c75e1d9d3307d95be392a53440d9123601a6ada3693e3f2573e03022565e4339
        - registry.redhat.io/mta/mta-operator-bundle@sha256:65c0932bfda32b1e62be9edd0f96bb4d6e41e302a2e8080fc6cc794ee5c52276
        version: 6.0.3
      entries:
      - name: mta-operator.v6.0.3
        version: 6.0.3
      - name: mta-operator.v6.0.2
        version: 6.0.2
      - name: mta-operator.v6.0.1
        version: 6.0.1
      - name: mta-operator.v6.0.0
        version: 6.0.0
      name: stable-v6.0
    - currentCSV: mta-operator.v6.1.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:6da71d4caecfbe049e63576d4325d4919002196da2e875f79703d8ff0d5a1705
          createdAt: "2023-10-26T15:29:26Z"
          description: MTA contains tools that support the modernization and migration
            of applications to Kubernetes and OpenShift
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=6.0.0 <6.1.4'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/tackle2-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is a collection of tools that supports large-scale application modernization and migration projects to Kubernetes and OpenShift.


          Migration Toolkit for Applications allows users to maintain their portfolio of applications with a full set of metadata and to assess their suitability for modernization leveraging a questionnaire based approach.


          ### Install

          By default, MTA requires a RWX capable storage class for caching purposes, this can be disabled via the rwx_supported parameter in Tackle CR.

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:6da71d4caecfbe049e63576d4325d4919002196da2e875f79703d8ff0d5a1705
        - registry.redhat.io/mta/mta-ui-rhel8@sha256:3845d6d246003ebeb49bcf1d95d6be2eb9cd05a280a5bf8320b201e878a41427
        - registry.redhat.io/mta/mta-windup-addon-rhel8@sha256:6bcaf8e8b63e169652d6568d77e91a289084e621a586105a2d429b5726569058
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/mta/mta-hub-rhel8@sha256:32624f2bddfe8b6b9c6c1c3f2be541c8c61be29680d13b6d446e8874bdf8e219
        - registry.redhat.io/mta/mta-operator-bundle@sha256:f3d585e24d65905b2e9f594dcdb67721aa95057ab7587ae531c3487aa2f94e53
        - registry.redhat.io/mta/mta-pathfinder-rhel8@sha256:1df881da1e20c2501caf53e1cf59b6b366281d842f0948ca5f91694ec1db829d
        version: 6.1.4
      entries:
      - name: mta-operator.v6.1.4
        version: 6.1.4
      - name: mta-operator.v6.1.3
        version: 6.1.3
      - name: mta-operator.v6.1.2
        version: 6.1.2
      - name: mta-operator.v6.1.1
        version: 6.1.1
      - name: mta-operator.v6.1.0
        version: 6.1.0
      name: stable-v6.1
    - currentCSV: mta-operator.v6.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:6938c3fc6dd8fb032e1765fc11d9586dbfd1aaba4b423b0d87da4120ee0bb60d
          createdAt: "2024-06-10T22:12:58Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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.skipRange: '>=6.0.0 <6.2.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Pathfinder, a service to manage the assessment questionnaires.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-windup-addon-rhel9@sha256:d1f4939b92dd13c15cb7344ec47a571669f6d108dc2e7d795ce29350f2cb3838
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e52f88555004b575104691fe96f758ee5e6ec832b99107a5a18fc8379d29afda
        - registry.redhat.io/rhel8/postgresql-12@sha256:c4716bee5e2cf2e43698bc99e5aa42f16a0f2d68c1fbdcd3602696bf88e408dc
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:e59725832547e80cab58077a1b6e42c313a4057621defa841f35c0a7627f149d
        - registry.redhat.io/mta/mta-operator-bundle@sha256:a13643117c2867351718a872f7f1b2350c67855ca73a727a1dc140754ffe6589
        - registry.redhat.io/mta/mta-pathfinder-rhel9@sha256:a2a8b6d204d99494a6a005e8cb1fbd92afdc84dc01e4c1de4ad7d8798bd83741
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:6938c3fc6dd8fb032e1765fc11d9586dbfd1aaba4b423b0d87da4120ee0bb60d
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:c35f3ed429a7d351cb8c2d07600b4ad35615a5ba08e5cc9f8b9bd504aea3f7ee
        version: 6.2.3
      entries:
      - name: mta-operator.v6.2.3
        version: 6.2.3
      - name: mta-operator.v6.2.2
        version: 6.2.2
      - name: mta-operator.v6.2.1
        version: 6.2.1
      - name: mta-operator.v6.2.0
        version: 6.2.0
      name: stable-v6.2
    - currentCSV: mta-operator.v7.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "addon-example",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "image": "addon-fqin"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:268ecf5efc51af71f9b2bc2d01b410f8cfcf81a948b82d2d476fef6c0cd3e033
          createdAt: "2024-05-10T19:37:30Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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.skipRange: '>=6.2.0 <7.0.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Tackle Instance
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Represents a Tackle Addon Instance
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:18c611415589a093e16e9c2f2fba9f3c83d9514f79c8e4fde9704ef0679ea4d5
        - registry.redhat.io/mta/mta-operator-bundle@sha256:9eeb43af2bcab84f5261d1575f7c897903a7696dba011d256abffa1fe850eba2
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:0e1ec99af5666a060176adc52612f20209e3398a9a5a2aa1dcff11ef260b2006
        - registry.redhat.io/mta/mta-windup-shim-rhel9@sha256:e2ea89055936d7ad229b5e890c6ba234c6cb22d8b688515ed4d6a34848efea83
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:af879d8b9b5e396a5308fb675a1d6dba6d70151b9bdbe7829362e081a6adab1c
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:1b5e016046d93b6a2674d63f08e0a46f8050e785bd58fd94ba7a70487efe7e2a
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:d554cc36748fc05e30eb10e6fe816ff6aab2fe07b61cc60e9d93de5c3cf17748
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:268ecf5efc51af71f9b2bc2d01b410f8cfcf81a948b82d2d476fef6c0cd3e033
        - registry.redhat.io/rhel8/postgresql-12@sha256:da619f6617d99790b4fe00fdb23ab4aea0cdb0592590162d51b3ef94aca01a7b
        - registry.redhat.io/mta/mta-analyzer-lsp-rhel9@sha256:0c8f59f35a950ea8b45f16cf71362128ccc335b58a996a099384fd737dd6ff90
        version: 7.0.3
      entries:
      - name: mta-operator.v7.0.3
        version: 7.0.3
      - name: mta-operator.v7.0.2
        version: 7.0.2
      - name: mta-operator.v7.0.1
        version: 7.0.1
      - name: mta-operator.v7.0.0
        version: 7.0.0
      name: stable-v7.0
    - currentCSV: mta-operator.v7.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:08b33b44140397785f8aa1b736796e09cf6e49ac30cf7c386a2fbd8b678d47b1
          createdAt: "2024-09-16T23:45:42Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          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.skipRange: '>=6.2.0 <7.1.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:30a3b1d5a70dec74a9253ca34f18bd8f2cdfaa68b85b0b25dc395158c2596330
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:e4e70201df23c9e1168646d3c6013a8ffa22481a85b07df491f240310c13ebe1
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel8@sha256:582f28e609c1a0466d30c5586d6b6023f1b1de3c28f76cabb498322914ab24d4
        - registry.redhat.io/mta/mta-operator-bundle@sha256:6aef520983fe01351886e108d32b998b20e74116fc0280c754a914bfad03d0bf
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:ee2c8ce2af0be097353758d9ee7eaa7e6b3fcd5f2bf5e04280e450e2b619d2d8
        - registry.redhat.io/rhel8/postgresql-15@sha256:16faf1ee82382263408f713ee4002f47ff13c82d4545e8a69d5b0ebd1d289330
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:4ad19b50cdd6be21e010155f2026abf0dc865e72aac1353e35bbb5eeb8320a4e
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:16cb28d683159ba71a5d7c233404ac1d6b7a07a374b46d24effe551a13a596c3
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:08b33b44140397785f8aa1b736796e09cf6e49ac30cf7c386a2fbd8b678d47b1
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:23c97ac122eb7cd1e953df8da968da420f6db8708baf772759517aca4929748b
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ac38f1c3d34bc718928eb20743835c99783d846f63a3197d13839ea22f1634c8
        version: 7.1.1
      entries:
      - name: mta-operator.v7.1.1
        version: 7.1.1
      - name: mta-operator.v7.1.0
        version: 7.1.0
      name: stable-v7.1
    - currentCSV: mta-operator.v7.2.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel8-operator@sha256:917d6cd534c158f6c4a7e9c83f0c66fa85ba81037c352d8a039e198581126a7f
          createdAt: "2025-06-17T16:04:15Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          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.skipRange: '>=6.2.0 <7.2.3'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:2dfc51d5398a90e73273b3e332f70d7ed94bac05e12b142fba22104ecc929436
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel8@sha256:c0643c05833dd1b70ed361bf56c46f56ed6536aac3106b92f0d85b83da1b9d15
        - registry.redhat.io/rhel8/postgresql-15@sha256:dd4aec2775da1cf187c0839384cb16d69268e9781d4330874bbc865f98153a7a
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:70ff3b5e429a8fe0c68752ee05c47ead885b59bf9c8d7235337801270e7fc1de
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:b10fdc78c6f453a34a3d306313dc29fcb3152688a6a1d54cd236d00d9fab88af
        - registry.redhat.io/mta/mta-rhel8-operator@sha256:917d6cd534c158f6c4a7e9c83f0c66fa85ba81037c352d8a039e198581126a7f
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:9d6c02f6463771e747a30126de95fc0728fd95fff4ddfa6c70d828c55e0b6790
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:4cde2c2df482293bd4d6b86a344336e13d2f9f81b29323698f603e656b14b190
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:c9447659195b9eebb8f8a265fd5052ca9b2611d57080017448297a33409863c6
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:10ef4b218d603432508b5e1f3685fb32a80cbce6c327e35952cdcccb0465468b
        - registry.redhat.io/mta/mta-operator-bundle@sha256:0ed10e35f45a140e21d826bee71b3ab96e67f1b4dc8c2f7f1676380fa51b67fe
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:5391e9ec3748fec2b820db5fb0b8bd167a1efd607b8a0c090cce5ad2e94f4fcc
        version: 7.2.3
      entries:
      - name: mta-operator.v7.2.3
        version: 7.2.3
      - name: mta-operator.v7.2.2
        version: 7.2.2
      - name: mta-operator.v7.2.1
        version: 7.2.1
      - name: mta-operator.v7.2.0
        version: 7.2.0
      name: stable-v7.2
    - currentCSV: mta-operator.v7.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel9-operator@sha256:6abd6541a955543207c1ff4b903928debcc89dd6ea3d7aeaa3e47465849f7b37
          createdAt: "2025-08-15T16:32:16Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=6.2.0 <7.3.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/mta/mta-operator-bundle@sha256:68953a2a721309fd103e09f3171d0c9d50020413631b575f1a44602a5d2ac855
        - registry.redhat.io/mta/mta-rhel9-operator@sha256:6abd6541a955543207c1ff4b903928debcc89dd6ea3d7aeaa3e47465849f7b37
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel9@sha256:9748d954ad8654ac203257286497ccf19cfdfa211fee40449cbe732ff48c1176
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:b2ff154a4b4ead22311005b7115c02346928b5ebf77d776ef909ad4af1f350bc
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:32328fc0459099ef1de0f92e064c15d29a46d88dfe2f54c88f822d44ab82e3f4
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:072f676323e9abcb2ff22eb5e7a70f6681e9d885d8666ddd81060fbad54c443e
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:ef57a58e609e244333d35681a164a1d3bf382c0eee37d33c993b018439814198
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:a93cbb575ff59bc8015602165645204b9ca56e327308b11a3d75b651701db875
        - registry.redhat.io/rhel8/postgresql-15@sha256:854710b428c4c1132c448cbe9ad30087a8a4b3c33ae9c0c3a4de21a15c0ae642
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:6118c1db15667851f26eb2acf6060e045ed9065459e3e649bbdd0e2625d825bd
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:8ca00460b2fb64583a247f5b906c19743b7732b60ff8215f1baec12a766c61d1
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:80aa13813fe121da49e166d81d09d63749393f3375c3b96d762d0b09c6685ca9
        version: 7.3.2
      entries:
      - name: mta-operator.v7.3.2
        version: 7.3.2
      - name: mta-operator.v7.3.1
        version: 7.3.1
      - name: mta-operator.v7.3.0
        version: 7.3.0
      name: stable-v7.3
    - currentCSV: mta-operator.v8.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "myaddon",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "container": {
                    "image": "addon-img",
                    "imagePullPolicy": "Always",
                    "name": "myaddon",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "512Mi"
                      }
                    }
                  },
                  "task": "mytask"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Extension",
                "metadata": {
                  "name": "myextension",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "addon": "myaddon",
                  "container": {
                    "args": [
                      "--port",
                      "$(PORT)"
                    ],
                    "env": [
                      {
                        "name": "PORT",
                        "value": "${seq:8000}"
                      }
                    ],
                    "image": "external-provider-img",
                    "imagePullPolicy": "Always",
                    "name": "myextension",
                    "resources": {
                      "limits": {
                        "cpu": 1,
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": 1,
                        "memory": "1Gi"
                      }
                    }
                  },
                  "metadata": {
                    "provider": {
                      "address": "localhost:$(PORT)",
                      "name": "myextension"
                    }
                  },
                  "selector": "tag:Language=MyLang"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Schema",
                "metadata": {
                  "name": "myschema",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "domain": "mydomain",
                  "subject": "mysubject",
                  "variant": "myvariant",
                  "versions": [
                    {
                      "definition": {
                        "$schema": "https://json-schema.org/draft/2020-12/schema",
                        "properties": {
                          "names": {
                            "description": "Application names. Each may be a glob expression.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 0,
                            "type": "array"
                          },
                          "spaces": {
                            "description": "Space names.",
                            "items": {
                              "minLength": 1,
                              "type": "string"
                            },
                            "minItems": 1,
                            "type": "array"
                          }
                        },
                        "required": [
                          "spaces"
                        ],
                        "title": "Coordinates",
                        "type": "object"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Tackle",
                "metadata": {
                  "name": "tackle",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "feature_auth_required": "true"
                }
              },
              {
                "apiVersion": "tackle.konveyor.io/v1alpha1",
                "kind": "Task",
                "metadata": {
                  "name": "mytask",
                  "namespace": "openshift-mta"
                },
                "spec": {
                  "dependencies": [
                    "myaddon"
                  ],
                  "priority": 10
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mta/mta-rhel9-operator@sha256:fea69ccd89a0632f2ae00b2d90b271bfd1bbcd48733f2b631e8e9b5cd0d3d4a2
          createdAt: "2025-11-19T23:58:24Z"
          description: MTA is an application modernization platform that helps organizations
            safely and predictably modernize applications to OpenShift at scale.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=7.3.0 <8.0.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "tackle.konveyor.io/v1alpha1",
              "kind": "Tackle",
              "metadata": {
                "name": "tackle",
                "namespace": "openshift-mta"
              },
              "spec": {
                  "feature_auth_required": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mta
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tackle Addon
            displayName: Addon
            kind: Addon
            name: addons.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Extension
            displayName: Extension
            kind: Extension
            name: extensions.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Schema
            displayName: Schema
            kind: Schema
            name: schemas.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle
            displayName: Tackle
            kind: Tackle
            name: tackles.tackle.konveyor.io
            version: v1alpha1
          - description: Tackle Task
            displayName: Task
            kind: Task
            name: tasks.tackle.konveyor.io
            version: v1alpha1
        description: |+
          Migration Toolkit for Applications is an application modernization platform that helps organizations safely and predictably modernize applications to new technologies, with an initial focus on accelerating the adoption of legacy applications to OpenShift.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Tackle CR.

          By default, the Operator installs the following components on a target cluster:

          * Hub, to manage the application inventory and coordinate the migration process.
          * UI, the web console to manage the application inventory and drive the migration waves.
          * Keycloak, to manage authentication, including with 3rd-party providers.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Applications Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

        displayName: Migration Toolkit for Applications Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - modernization
        - migration
        - konveyor
        - tackle
        - mta
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_applications
        - name: Developers
          url: https://developers.redhat.com/products/mta
        - name: Konveyor
          url: https://www.konveyor.io
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/mta/mta-analyzer-addon-rhel9@sha256:229197ca303eb3bd553accde1c29546916b128ffc7e43961b520c8e375e07c84
        - registry.redhat.io/mta/mta-cli-rhel9@sha256:c97afda6c66fd862738961abd73471f1ef4546eeb2157f13da264205d25e3455
        - registry.redhat.io/mta/mta-java-external-provider-rhel9@sha256:8d152829867909dfc98853a837ab50dbe4f09a331718010e15961e5468fc3db3
        - registry.redhat.io/mta/mta-operator-bundle@sha256:75127a29a68c19490c96b4dde9146500c38b640f4ddc1bfcb2183372f3c4ce50
        - registry.redhat.io/mta/mta-solution-server-rhel9@sha256:08161faacb63d0842e8dc4abae5922fa84c4c10dede31bbebd2f7485884644fe
        - registry.redhat.io/mta/mta-discovery-addon-rhel9@sha256:95393ff3b7f90c2077947d46e539eefa4305d01679cab40cdc27b4a4404256d9
        - registry.redhat.io/mta/mta-rhel9-operator@sha256:fea69ccd89a0632f2ae00b2d90b271bfd1bbcd48733f2b631e8e9b5cd0d3d4a2
        - registry.redhat.io/mta/mta-dotnet-external-provider-rhel9@sha256:968075d405848a097f6ef91a2717091c96108a5a0ed8066c69a19c07e5c4ab17
        - registry.redhat.io/mta/mta-hub-rhel9@sha256:2783f01f9c739c89dff0aa1177f9dd46340bfed269dca948529d269c9b3c37f7
        - registry.redhat.io/mta/mta-ui-rhel9@sha256:acff26b2dc0151443b592c71065c271a2f044c985f32365b093685c5e224f3c7
        - registry.redhat.io/mta/mta-generic-external-provider-rhel9@sha256:fda12c5ebf9de14d17d5d49239cee9815352f6d7e75926f7226d9f5bb0356909
        - registry.redhat.io/mta/mta-platform-addon-rhel9@sha256:a288d5a156006695854c2e76d09dfe356a31136efb72ba4f85f24940a5aac32f
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/rhel8/postgresql-15@sha256:68fc74033591a7c7608adb438a81ffdf232f199adbc7c92df286097debd815d0
        version: 8.0.1
      entries:
      - name: mta-operator.v8.0.1
        version: 8.0.1
      - name: mta-operator.v8.0.0
        version: 8.0.0
      name: stable-v8.0
    defaultChannel: stable-v8.0
    packageName: mta-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Isovalent
      provider-url: ""
    name: cilium-enterprise
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cilium.v1.10.13-xed86eae
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{"endpointRoutes":{"enabled":true},"kubeProxyReplacement":"probe","cni":{"binPath":"/var/lib/cni/bin","confPath":"/var/run/multus/cni/net.d"},"ipam":{"prometheus":{"serviceMonitor":{"enabled":false}},"mode":"cluster-pool"},"hubble":{"tls":{"enabled":false}}}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Cilium Enterprise - eBPF-based Networking, Security, and Observability
        displayName: Cilium Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Cilium Enterprise Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Cilium Enterprise
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/cilium@sha256:6887537789603946543aaa370a3ec592287a235231bf16aa386e091823285515
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:cc1f0e6b27ccda8a843dfb7fa4a8fef052ba29716646557815677c5d1bea2a1a
        - quay.io/cilium/certgen@sha256:0c2b71bb3469990e7990e7e26243617aa344b5a69a4ce465740b8577f9d48ab9
        - quay.io/isovalent/hubble-enterprise-operator@sha256:0d5e6a5d9c07780c18e5aa81d8f1c95c399bff2d36a44fa5f61ac89a788ca83b
        - quay.io/isovalent/clustermesh-apiserver@sha256:eb3ee3d2cb07e6c5966e4bc2e50615949303be5d5128e156d5c0dbe8404dc093
        - quay.io/isovalent/hubble-enterprise-metadata@sha256:72c7aa3961f14df413569cd156820a45553bb24d393b11246a18bf8b6553e022
        - quay.io/isovalent/hubble-rbac@sha256:03f3304c157024356a6de13c3d91b4506b8e54d587920d80ebcc76cbcfeaeda6
        - quay.io/oauth2-proxy/oauth2-proxy@sha256:ecd26b74a01f2b547ddaed4d32d35f8f5e09c378d5c1fc6cfa63f0adf659ac2b
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:3dbb71004362a70683a5ee9f0916bca75c0d1c351d144677fd9d85bcb2ca8bf7
        - quay.io/cilium/startup-script@sha256:1daf817f34000399fcb5da9a94cb299e2810d2c7a52e51de22ba0d4783b6ce84
        - quay.io/isovalent/hubble-export-fluentd@sha256:05cb13f533f2c89b98a47cd58badda07add54077cd22283ca5028cb39f2e4486
        - quay.io/isovalent/hubble-export-s3@sha256:ce4f71f7f13301133b7d471b87fb81108b2c2da7fc29865ef96bc8431b2be72b
        - quay.io/isovalent/hubble-relay@sha256:9145b03acc954efde54e1ab9da878462526c5e820b83a92e32cc24291f784d33
        - quay.io/isovalent/hubble-ui-enterprise-backend@sha256:e892cba6dafcdf6704df3135a0b38d11894a5f276ace40683e74cb62b9c311d8
        - quay.io/isovalent/hubble-ui-enterprise@sha256:c9921c65892a5293a4f1bef787636d6ae58cec1af65da06862a47e3450afdc6e
        - quay.io/isovalent/operator-generic@sha256:1cc0b0d2e71564ad8759be326c66ea13b4955b9441fb67e906da534e1b38aefa
        - quay.io/cilium/cilium-etcd-operator@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/coreos/etcd@sha256:04833b601fa130512450afa45c4fe484fee1293634f34c7ddc231bd193c74017
        - quay.io/isovalent/hubble-enterprise@sha256:1e1d3e6c199546b2398f4166ff64210c04075bb407c8f07c5be8d3db08560d4a
        - quay.io/cilium/hubble-export-stdout@sha256:f1b1475a3c89950481264f5f8ca63eea3b911a45dc83fdf15122d695a0fba9b3
        version: 1.10.13+xed86eae
      entries:
      - name: cilium.v1.10.13-xed86eae
        version: 1.10.13+xed86eae
      - name: cilium.v1.10.12-xb203fae
        version: 1.10.12+xb203fae
      - name: cilium.v1.10.11-x10ae342
        version: 1.10.11+x10ae342
      name: "1.10"
    - currentCSV: cilium.v1.11.21-xd0d07b1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Cilium Enterprise - eBPF-based Networking, Security, and Observability
        displayName: Cilium Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Cilium Enterprise Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Cilium Enterprise
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/hubble-relay:v1.11.21-cee.1@sha256:5933dd1f8111d6bca0c68db9247385b5d215d5b613095bafab8244098f2c5a26
        - quay.io/isovalent/operator-generic:v1.11.21-cee.1@sha256:25b668c1febe1d1a70b63dfe926be4e55fbf77fd186e9df7581e41d7e9813469
        - quay.io/cilium/certgen:v0.1.5@sha256:0c2b71bb3469990e7990e7e26243617aa344b5a69a4ce465740b8577f9d48ab9
        - quay.io/coreos/etcd:v3.4.13@sha256:04833b601fa130512450afa45c4fe484fee1293634f34c7ddc231bd193c74017
        - cgr.dev/chainguard/oauth2-proxy:7.4.0@sha256:54857c70321004d3e0b8b8d7208ce5422c1f71c18db5be02d2543f187ea8e8e2
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:89d480ae76480829660d4cccfede74717faeb7e62a4a48b932750e41a945783d
        - quay.io/isovalent/hubble-export-stdout:v1.0.3@sha256:bef600089c1671fce11bb4bcb98b81f25e65152a1a2f13b64ea637cfc5779c11
        - quay.io/isovalent/hubble-rbac:v1.3.0@sha256:4c106dd133861a678eb24cf98b35d5023cccca0834c954c49b68514c366aedf0
        - quay.io/isovalent/hubble-ui-enterprise:v0.23.0@sha256:02635d1392cca7e09ab7797f69147880068ba7e3b0d865be97eeab33edd646a0
        - quay.io/isovalent/cilium:v1.11.21-cee.1@sha256:f41241a15cd96d26727aa1ec413ace643728ddbe42f7fb7b234dbda22bf3950b
        - quay.io/isovalent/hubble-enterprise-operator:v1.10.5@sha256:31b18a1ea7002936f04dd070549e0c9a02f8a33394666fc5b0523ab1350c6120
        - quay.io/isovalent/hubble-export-fluentd:v1.5.1@sha256:eaf42a84821509b69e2ef2b658796062e79a90e63045a98689da3da99a12e492
        - quay.io/isovalent/hubble-enterprise:v1.10.5@sha256:340700d4e28ded2aa9c50ff9f938996bb43faa84e0b2ba38ec79452648d7e5d7
        - quay.io/cilium/cilium-etcd-operator:v2.0.7@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/isovalent/clustermesh-apiserver:v1.11.21-cee.1@sha256:e16d8375ed8a1c3a872047b3aacf3469bde43552f1a51ee3e159ef2e9fea3e97
        - quay.io/isovalent/hubble-export-s3:v1.0.0@sha256:89c178c0a010166c68819ab5de32ab59b64a88aa23a05d8e4f78adb1a4b6c3d3
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:d3148bf3b9765467936ee067b25b5ef3683d3e55260f517c7fe271ac0e19cb47
        - quay.io/cilium/startup-script:62093c5c233ea914bfa26a10ba41f8780d9b737f@sha256:a1454ca1f93b69ecd2c43482c8e13dc418ae15e28a46009f5934300a20afbdba
        - quay.io/isovalent/hubble-ui-enterprise-backend:v0.23.0@sha256:2fbdad86bb5244075f31487262d790f6fa75cdd993f868b952252905c118621c
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:372511f6fa3523dadfe9128caf77520cf74ce24df4a19e1583ee197375e06014
        version: 1.11.21+xd0d07b1
      entries:
      - name: cilium.v1.11.21-xd0d07b1
        version: 1.11.21+xd0d07b1
      - name: cilium.v1.11.20-x0f6d966
        version: 1.11.20+x0f6d966
      name: "1.11"
    - currentCSV: cilium.v1.12.21-x3861686
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.12.14 <1.12.21'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/hubble-export-stdout:v1.0.3@sha256:bef600089c1671fce11bb4bcb98b81f25e65152a1a2f13b64ea637cfc5779c11
        - quay.io/cilium/certgen:v0.1.8@sha256:4a456552a5f192992a6edcec2febb1c54870d665173a33dc7d876129b199ddbd
        - quay.io/coreos/etcd:v3.5.4@sha256:795d8660c48c439a7c3764c2330ed9222ab5db5bb524d8d0607cac76f7ba82a3
        - quay.io/isovalent/hubble-enterprise-operator:v1.10.5@sha256:31b18a1ea7002936f04dd070549e0c9a02f8a33394666fc5b0523ab1350c6120
        - quay.io/isovalent/hubble-export-fluentd:v1.5.1@sha256:eaf42a84821509b69e2ef2b658796062e79a90e63045a98689da3da99a12e492
        - quay.io/isovalent/hubble-ui-enterprise:v0.28.1@sha256:11dfba0e4fcf43415aa6e8b3b6e98a5c4f468ec67b377328ad48b92037bbfbb0
        - quay.io/isovalent/hubble-rbac:v1.3.0@sha256:4c106dd133861a678eb24cf98b35d5023cccca0834c954c49b68514c366aedf0
        - quay.io/isovalent/oauth2-proxy:7.6.0@sha256:b6e40d76f0925e76f0a5b181be3f6c62728fa3e4aaef979caf9ea245f4ed03da
        - quay.io/isovalent/hubble-ui-enterprise-backend:v0.28.1@sha256:515aeb8166dd6995b04d4cd3333c94a740182943ba4e90a38871ee89c0b64e92
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:f95c9e8002d8e381d604752b1d59b75595badbdb0b11237ac1cac4ecd04f4800
        - quay.io/cilium/startup-script:62093c5c233ea914bfa26a10ba41f8780d9b737f@sha256:a1454ca1f93b69ecd2c43482c8e13dc418ae15e28a46009f5934300a20afbdba
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:71cbb44a41b60ab64c6eae99f819796868a57234a5ff210598bd23b73b3b02c7
        - quay.io/isovalent/hubble-relay:v1.12.21-cee.1@sha256:9d8dadc3f330acf0fa169c428d5fdf1d138d0294065eec5c628f6647106fe8b6
        - quay.io/isovalent/operator-generic:v1.12.21-cee.1@sha256:4e19cda799a747b69f53b5e5a860ba256399d18221d5a4bbf243142ba1c69bb8
        - quay.io/isovalent/cilium:v1.12.21-cee.1@sha256:3a462308cf12b572db987c03d190ee33691ccb04775d01beb192703a52f8d47b
        - quay.io/isovalent/hubble-export-s3:v1.0.0@sha256:89c178c0a010166c68819ab5de32ab59b64a88aa23a05d8e4f78adb1a4b6c3d3
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:a71b6fe33997db924669253992436e1e02d88769bb97376c0871848c2d330fed
        - quay.io/cilium/cilium-etcd-operator:v2.0.7@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/isovalent/clustermesh-apiserver:v1.12.21-cee.1@sha256:3f6549409966086a49e338c7829b9141a73ef2ebeebaac91db430aeb3ccd2e22
        - quay.io/isovalent/hubble-enterprise:v1.10.5@sha256:340700d4e28ded2aa9c50ff9f938996bb43faa84e0b2ba38ec79452648d7e5d7
        version: 1.12.21+x3861686
      entries:
      - name: cilium.v1.12.21-x3861686
        version: 1.12.21+x3861686
      - name: cilium.v1.12.19-xca684e0
        version: 1.12.19+xca684e0
      - name: cilium.v1.12.18-xcb1adcf
        version: 1.12.18+xcb1adcf
      - name: cilium.v1.12.17-xae21c14
        version: 1.12.17+xae21c14
      - name: cilium.v1.12.16-x38e0b62
        version: 1.12.16+x38e0b62
      - name: cilium.v1.12.15-x8ca64a3
        version: 1.12.15+x8ca64a3
      - name: cilium.v1.12.14-xc86b260
        version: 1.12.14+xc86b260
      - name: cilium.v1.12.13-x2b5cec9
        version: 1.12.13+x2b5cec9
      - name: cilium.v1.12.12-xbd7b835
        version: 1.12.12+xbd7b835
      - name: cilium.v1.12.11-xffdea76
        version: 1.12.11+xffdea76
      - name: cilium.v1.12.10-x4a0e9e7
        version: 1.12.10+x4a0e9e7
      - name: cilium.v1.12.9-x4be66e4
        version: 1.12.9+x4be66e4
      - name: cilium.v1.12.8-x87b90a9
        version: 1.12.8+x87b90a9
      - name: cilium.v1.12.7-x53a2aab
        version: 1.12.7+x53a2aab
      name: "1.12"
    - currentCSV: cilium-enterprise.v1.13.21-x96449fb
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.13.7 <1.13.21+x96449fb'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/hubble-export-fluentd:v1.11.0@sha256:50cd2e4c2d04e8befcc2ae1a1463f07cba01edb9b546fb455fe7976311165385
        - quay.io/isovalent/hubble-export-s3:v1.0.2@sha256:518daea1074d260d824c3e03a93ab6b2a7a5f4c22b8e07938770add8257f4a52
        - quay.io/isovalent/hubble-ui-enterprise:v1.0.3@sha256:55bf787c96561f4a460e2bfe5966421e2d85f3f9a38ac2487c6f6486c97cd5af
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:1074f45a625df6ea412a9ffef3d4f4e53f3107ca45bb1de9bb030c47ce6518d9
        - quay.io/cilium/cilium-etcd-operator:v2.0.7@sha256:04b8327f7f992693c2cb483b999041ed8f92efc8e14f2a5f3ab95574a65ea2dc
        - quay.io/isovalent/operator-generic:v1.13.21-cee.2@sha256:6f2d0d575e3f74395c959833992cd5fbb6971f4e292df1b7cf45be8b07be5e7a
        - quay.io/isovalent/hubble-enterprise-operator:v1.11.6@sha256:38253c2e17a8b2e88a226f0976c9cf4a00445212e2886e6f07cbb3a52757324f
        - quay.io/cilium/certgen:v0.1.13@sha256:01802e6a153a9473b06ebade7ee5730f8f2c6cc8db8768508161da3cdd778641
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:71cbb44a41b60ab64c6eae99f819796868a57234a5ff210598bd23b73b3b02c7
        - quay.io/isovalent/cilium:v1.13.21-cee.2@sha256:f760cd85fa64eb8a197ec282644a8db630745a8a2854ee08aa2662cf67188db5
        - quay.io/isovalent/hubble-relay:v1.13.21-cee.2@sha256:aaf5f959a76d6b517e627d2d0b09dab86ae942616819a9a95f057ed4f45ea480
        - quay.io/cilium/startup-script:c54c7edeab7fde4da68e59acd319ab24af242c3f@sha256:a9d0f451353f1b2f29ed3868e230ecfae10150eab9fd521de67adb3c8ca9c33a
        - quay.io/isovalent/clustermesh-apiserver:v1.13.21-cee.2@sha256:980b0235fd16817ecc4457ad4317a4601993b76df2e81b07a53f6f437c2705af
        - quay.io/isovalent/hubble-ui-enterprise-backend:v1.0.3@sha256:6756d2b808c38efce4765f90641d26aa2e0e79329ecc378a123cd3dc2c439640
        - quay.io/isovalent/hubble-export-stdout:v1.0.4@sha256:a0ff77efa890478f18f5deeba2cd1e2dfd6c5c77981adac57b14d7734de71ff1
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:b04e75456359b50b18e75464da5d7b467fdfeb058fc08ce3a10f057ba5f60107
        - quay.io/isovalent/hubble-rbac:v1.5.6@sha256:739ca45ea09829b0fa8a6198901b34eb5254df55be071bc854bbd37cae12a557
        - quay.io/isovalent/oauth2-proxy:7.6.0@sha256:fc7046dee1a204163e68a6d9a42fec200b02129493a7d166f899dd12e2763364
        - quay.io/coreos/etcd:v3.5.4@sha256:795d8660c48c439a7c3764c2330ed9222ab5db5bb524d8d0607cac76f7ba82a3
        - quay.io/isovalent/hubble-enterprise:v1.11.6@sha256:eb60d59d1fb1b136855829274b31805c4206f8d050c3bf068e63a552576c1b38
        version: 1.13.21+x96449fb
      entries:
      - name: cilium-enterprise.v1.13.21-x96449fb
        version: 1.13.21+x96449fb
      - name: cilium-enterprise.v1.13.20-x5b70650
        version: 1.13.20+x5b70650
      - name: cilium-enterprise.v1.13.19-xdb27142
        version: 1.13.19+xdb27142
      - name: cilium-enterprise.v1.13.18-x0c21a94
        version: 1.13.18+x0c21a94
      - name: cilium-enterprise.v1.13.17-xc8f905f
        version: 1.13.17+xc8f905f
      - name: cilium-enterprise.v1.13.16-xcfe62ed
        version: 1.13.16+xcfe62ed
      - name: cilium-enterprise.v1.13.15-x1dfd26f
        version: 1.13.15+x1dfd26f
      - name: cilium.v1.13.14-xb70933f
        version: 1.13.14+xb70933f
      - name: cilium.v1.13.12-x453f6ad
        version: 1.13.12+x453f6ad
      - name: cilium.v1.13.11-xf6d6935
        version: 1.13.11+xf6d6935
      - name: cilium.v1.13.10-x9d57fc7
        version: 1.13.10+x9d57fc7
      - name: cilium.v1.13.9-xe8a359b
        version: 1.13.9+xe8a359b
      - name: cilium.v1.13.8-x96e1ca9
        version: 1.13.8+x96e1ca9
      - name: cilium.v1.13.7-x7320e7d
        version: 1.13.7+x7320e7d
      - name: cilium.v1.13.6-xd3714ef
        version: 1.13.6+xd3714ef
      - name: cilium.v1.13.5-x8386cae
        version: 1.13.5+x8386cae
      - name: cilium.v1.13.4-xc8b22ea
        version: 1.13.4+xc8b22ea
      - name: cilium.v1.13.3-x69e9561
        version: 1.13.3+x69e9561
      - name: cilium.v1.13.2-x4b1c6c8
        version: 1.13.2+x4b1c6c8
      name: "1.13"
    - currentCSV: cilium-enterprise.v1.14.22-x6d86c88
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.14.0 <1.14.22+x6d86c88'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/cilium:v1.14.22-cee.1@sha256:0e664a5a9e0edba38ab1a25eb7fa50861bb15f69ed0bbe3f3c792bd909240da3
        - quay.io/isovalent/hubble-enterprise:v1.11.6@sha256:eb60d59d1fb1b136855829274b31805c4206f8d050c3bf068e63a552576c1b38
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:148b1029eac14049e2ba84d4d75be1ca43ef2d89951adbdeddec392ad7c9fe1e
        - quay.io/cilium/startup-script:c54c7edeab7fde4da68e59acd319ab24af242c3f@sha256:a9d0f451353f1b2f29ed3868e230ecfae10150eab9fd521de67adb3c8ca9c33a
        - quay.io/coreos/etcd:v3.5.4@sha256:a67fb152d4c53223e96e818420c37f11d05c2d92cf62c05ca5604066c37295e9
        - quay.io/isovalent/oauth2-proxy:7.6.0@sha256:fc7046dee1a204163e68a6d9a42fec200b02129493a7d166f899dd12e2763364
        - quay.io/isovalent/operator-generic:v1.14.22-cee.1@sha256:a997fe24ff0b7f7df3ee12748413ae53d6e07c803162b0db4d812b916b0cfc74
        - quay.io/isovalent/hubble-export-s3:v1.0.2@sha256:518daea1074d260d824c3e03a93ab6b2a7a5f4c22b8e07938770add8257f4a52
        - quay.io/isovalent/hubble-enterprise-operator:v1.11.6@sha256:38253c2e17a8b2e88a226f0976c9cf4a00445212e2886e6f07cbb3a52757324f
        - quay.io/isovalent/hubble-ui-enterprise:v1.2.2@sha256:3e03a58f6eea5d2df195f42ee2817f7b28fa20bbe140f5086937eee8da1b8d56
        - quay.io/isovalent/clustermesh-apiserver:v1.14.22-cee.1@sha256:588e2b173ab409288eda2d404571184562d3d9fd12e2d9afe7282a5a7d79113a
        - quay.io/isovalent/hubble-enterprise-metadata:current@sha256:71cbb44a41b60ab64c6eae99f819796868a57234a5ff210598bd23b73b3b02c7
        - quay.io/isovalent/hubble-relay:v1.14.22-cee.1@sha256:d7ffc880d2e42e0876417ec26115b0e9155ad9a2e7f47c02c434746afa42b29a
        - quay.io/isovalent/hubble-rbac:v1.5.2@sha256:29309837e2246a1b6849d7a09d01ceebfdb43fa0ade973d14584f0e52b856b95
        - quay.io/cilium/cilium-envoy:v1.32.5-1743506100-0821ef0acdf9f824d47d34e02932be522b3e7233@sha256:305c8b7da56ef1b64e4deb0642acf93a3944f2712e40c99a40bb005e6dc9761b
        - quay.io/cilium/certgen:v0.1.17@sha256:07959f3125dae659ab9036c14df046e2536f7a4f6c92dabda837388b0344dc74
        - quay.io/isovalent/hubble-export-stdout:v1.0.4@sha256:a0ff77efa890478f18f5deeba2cd1e2dfd6c5c77981adac57b14d7734de71ff1
        - quay.io/isovalent/hubble-ui-enterprise-backend:v1.2.2@sha256:4258f7e0bff24ff1e0b214f62b37097032b6426ba28edd3dfc4f451a34de0110
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:0543e615d8a48ba6aaf90a8de0b0a79d37689c64bfe71f91c340455d9a359426
        - quay.io/isovalent/hubble-export-fluentd:v1.8.1@sha256:ce0cce63a8473d5ae73872fc65d82c54f2875511bb03f0bc8ee8480148c43ee1
        version: 1.14.22+x6d86c88
      entries:
      - name: cilium-enterprise.v1.14.22-x6d86c88
        version: 1.14.22+x6d86c88
      - name: cilium-enterprise.v1.14.21-xe0c9553
        version: 1.14.21+xe0c9553
      - name: cilium-enterprise.v1.14.20-xe01e743
        version: 1.14.20+xe01e743
      - name: cilium-enterprise.v1.14.19-xc1b9aff
        version: 1.14.19+xc1b9aff
      name: "1.14"
    - currentCSV: cilium-enterprise.v1.15.22-xfb6ee71
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.15.0 <1.15.22+xfb6ee71'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:2aede84df42365c9da6bf3d4e9b77b3e4ea0fc0646df72c7bce382abd0139055
        - quay.io/isovalent/cilium-envoy-ubi:v1.33.4-1752151664-7c2edb0b44cf95f326d628b837fcdd845102ba68@sha256:e81fdde48c3d5cd93111e1d51d9f8554adb32ee937601a9124354e0894933b99
        - quay.io/isovalent/cilium:v1.15.22-cee.1@sha256:ce6331fa084d92ab65047b2b246f8ebae555e263e41722cb14978a152edb667f
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.15.22-cee.1@sha256:c5d1ae516aae27fac17b266cfdcfe659aa0d4e214027e0c2d84ae2970e7a5cf5
        - quay.io/isovalent/hubble-ui-backend-ubi:v1.3.8@sha256:a8bb183635215854b9dcd6340d4b93a123990a2ee8ded75a143c52b01f9b72d8
        - quay.io/isovalent/hubble-ui-frontend-ubi:v1.3.8@sha256:2a8f95d4bfdb0f196e27e5ebe0e00bbbbdab2f963c5beed587538f68618849c0
        - quay.io/isovalent/operator-generic-ubi:v1.15.22-cee.1@sha256:b1db5ebc6fb614a38e53e8d9be5960aeac09b961a5355e558d4ee964a9a6c07c
        - quay.io/isovalent/startup-script-ubi:1755531540-60ee83e@sha256:2e1d5048cbfcd3c77f732da8203a6c792cbf19897b5cf137b9ad23a6a267f6b2
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:eb5db92aa51052943a238aef136daab3ccc5daf60b035a4b569fd04ac02ab8e1
        - quay.io/isovalent/certgen-ubi:v0.1.19@sha256:c32e96b0972c9bcd3896945c46ea23e330c9dea407afee3a637daae637296f4c
        - quay.io/isovalent/hubble-relay-ubi:v1.15.22-cee.1@sha256:887789a333224deaaadeaf3406d5a6133febf097076e7a7f9f55bd0e43afd3b2
        - quay.io/isovalent/oauth2-proxy:7.12.0-20250819@sha256:fe8f76728c36536d498b2a5c11172cb18dc30bbb555df2a6d14c036b29cb9f10
        version: 1.15.22+xfb6ee71
      entries:
      - name: cilium-enterprise.v1.15.22-xfb6ee71
        version: 1.15.22+xfb6ee71
      - name: cilium-enterprise.v1.15.21-x2661a01
        version: 1.15.21+x2661a01
      - name: cilium-enterprise.v1.15.20-x6df37bb
        version: 1.15.20+x6df37bb
      - name: cilium-enterprise.v1.15.19-x0be49ab
        version: 1.15.19+x0be49ab
      - name: cilium-enterprise.v1.15.18-xeeaa70b
        version: 1.15.18+xeeaa70b
      - name: cilium-enterprise.v1.15.17-xdfd9482
        version: 1.15.17+xdfd9482
      - name: cilium-enterprise.v1.15.16-xc7e31ca
        version: 1.15.16+xc7e31ca
      - name: cilium-enterprise.v1.15.15-xf37f22c
        version: 1.15.15+xf37f22c
      - name: cilium-enterprise.v1.15.14-x0e512e3
        version: 1.15.14+x0e512e3
      - name: cilium-enterprise.v1.15.13-x134fa29
        version: 1.15.13+x134fa29
      name: "1.15"
    - currentCSV: cilium-enterprise.v1.16.16-xf0717b8
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"cilium.io/v1alpha1","kind":"CiliumConfig","metadata":{"name":"cilium-openshift-default","namespace":"placeholder"},"spec":{}}]'
          alm-examples-metadata: '{"cilium-openshift-default":{"description":"Default
            CiliumConfig CR for OpenShift"}}'
          capabilities: Seamless Upgrades
          categories: Networking,Security
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.16.0 <1.16.16+xf0717b8'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          repository: http://github.com/isovalent
          support: support@isovalent.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Enterprise for Cilium - eBPF-based Networking, Security,
          and Observability
        displayName: Isovalent Enterprise for Cilium
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - networking
        - security
        - observability
        - eBPF
        links:
        - name: Isovalent Enterprise for Cilium Homepage
          url: https://isovalent.com/
        maintainers:
        - email: maintainer@isovalent.com
          name: Isovalent
        maturity: stable
        provider:
          name: Isovalent
        relatedImages:
        - quay.io/isovalent/cilium-envoy-ubi:v1.16.16-cee.1@sha256:db1439f994966d7f2abda9e46f8a5f2c4df05236ace0f9710f9f19f3eae4f520
        - quay.io/isovalent/startup-script-ubi:v1.16.16-cee.1@sha256:16e6199da8c27cfa44656c8a9326ccfcf7911621080329a8a2f919a10b12002d
        - quay.io/isovalent/certgen-ubi:v1.16.16-cee.1@sha256:caf5b5802091462d8e277a0054c9e4aed62da634c967a0e429b9e7458b0bf32c
        - quay.io/isovalent/cilium-ubi:v1.16.16-cee.1@sha256:825ae0912f4e56068b3a320f4d0fbfcaad5c33295944176d3390d3ce2b83d5f3
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.16.16-cee.1@sha256:cf10ac7c8ef966647359d7c581d5d43537fb0a02e3e777db00e7404885dd3ffa
        - quay.io/isovalent/hubble-relay-ubi:v1.16.16-cee.1@sha256:ec02a881eeeecd7477fbd5cd0760655d321b1e006a79eee82af0918a1c9967b3
        - quay.io/isovalent/operator-generic-ubi:v1.16.16-cee.1@sha256:eb4940955d70fb7cfd9d7fbf4c2260a2243b8a71baa438ab3364c161bc05d644
        - registry.connect.redhat.com/isovalent/cilium-ee-olm-metadata@sha256:9c6929d43ee16fe8548d41f7ea2be5faa66c4938629d9466546505113371fbf6
        - registry.connect.redhat.com/isovalent/cilium-ee-olm@sha256:a0eb3d7bf42f891eb9fba3b39b1133372cb006d5aa08128e3aa1898d4b303e6f
        version: 1.16.16+xf0717b8
      entries:
      - name: cilium-enterprise.v1.16.16-xf0717b8
        version: 1.16.16+xf0717b8
      - name: cilium-enterprise.v1.16.15-x6419e26
        version: 1.16.15+x6419e26
      - name: cilium-enterprise.v1.16.13-xb2de075
        version: 1.16.13+xb2de075
      - name: cilium-enterprise.v1.16.12-xd373871
        version: 1.16.12+xd373871
      - name: cilium-enterprise.v1.16.11-xbd1cd23
        version: 1.16.11+xbd1cd23
      - name: cilium-enterprise.v1.16.10-x89ab4b0
        version: 1.16.10+x89ab4b0
      - name: cilium-enterprise.v1.16.9-x8ec4137
        version: 1.16.9+x8ec4137
      - name: cilium-enterprise.v1.16.8-yd2b50b4
        version: 1.16.8+yd2b50b4
      - name: cilium-enterprise.v1.16.7-x4867421
        version: 1.16.7+x4867421
      - name: cilium-enterprise.v1.16.6-x7e6eb1c
        version: 1.16.6+x7e6eb1c
      name: "1.16"
    defaultChannel: "1.16"
    packageName: cilium-enterprise
    provider:
      name: Isovalent
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-applicationautoscaling-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-applicationautoscaling-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "applicationautoscaling.services.k8s.aws/v1alpha1",
                "kind": "ScalableTarget",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "applicationautoscaling.services.k8s.aws/v1alpha1",
                "kind": "ScalingPolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/applicationautoscaling-controller:1.2.0
          createdAt: "2025-11-29T04:48:11Z"
          description: AWS Application Auto Scaling controller is a service controller
            for managing Application Auto Scaling resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ScalableTarget represents the state of an AWS applicationautoscaling
              ScalableTarget resource.
            displayName: ScalableTarget
            kind: ScalableTarget
            name: scalabletargets.applicationautoscaling.services.k8s.aws
            version: v1alpha1
          - description: ScalingPolicy represents the state of an AWS applicationautoscaling
              ScalingPolicy resource.
            displayName: ScalingPolicy
            kind: ScalingPolicy
            name: scalingpolicies.applicationautoscaling.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Application Auto Scaling resources in AWS from within your Kubernetes cluster.
          **About Amazon Application Auto Scaling**
          Application Auto Scaling is a web service for developers and system administrators who need a solution for automatically scaling their scalable resources for individual AWS services beyond Amazon EC2. Application Auto Scaling allows you to configure automatic scaling for the following resources:
          - AppStream 2.0 fleets
          - Aurora replicas
          - Amazon Comprehend document classification and entity recognizer endpoints
          - DynamoDB tables and global secondary indexes
          - Amazon Elastic Container Service (ECS) services
          - Amazon EMR clusters
          - Amazon Keyspaces (for Apache Cassandra) tables
          - Lambda function provisioned concurrency
          - Amazon Managed Streaming for Apache Kafka (MSK) broker storage
          - SageMaker endpoint variants
          - Spot Fleet requests
          - Custom resources provided by your own applications or services. For more information, see the [GitHub repository](https://github.com/aws/aws-auto-scaling-custom-resource)

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Application Auto Scaling
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - applicationautoscaling
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Application Auto Scaling User Guide
          url: https://docs.aws.amazon.com/autoscaling/application/userguide/what-is-application-auto-scaling.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: application auto scaling maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/applicationautoscaling-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-applicationautoscaling-controller@sha256:bfb1bb568c09825641fc13e7b9cc2a9632d49222be29341cf82f0df1c90229be
        version: 1.2.0
      entries:
      - name: ack-applicationautoscaling-controller.v1.2.0
        version: 1.2.0
      - name: ack-applicationautoscaling-controller.v1.1.2
        version: 1.1.2
      - name: ack-applicationautoscaling-controller.v1.1.1
        version: 1.1.1
      - name: ack-applicationautoscaling-controller.v1.1.0
        version: 1.1.0
      - name: ack-applicationautoscaling-controller.v1.0.30
        version: 1.0.30
      - name: ack-applicationautoscaling-controller.v1.0.29
        version: 1.0.29
      - name: ack-applicationautoscaling-controller.v1.0.27
        version: 1.0.27
      - name: ack-applicationautoscaling-controller.v1.0.26
        version: 1.0.26
      - name: ack-applicationautoscaling-controller.v1.0.25
        version: 1.0.25
      - name: ack-applicationautoscaling-controller.v1.0.24
        version: 1.0.24
      - name: ack-applicationautoscaling-controller.v1.0.23
        version: 1.0.23
      - name: ack-applicationautoscaling-controller.v1.0.22
        version: 1.0.22
      - name: ack-applicationautoscaling-controller.v1.0.21
        version: 1.0.21
      - name: ack-applicationautoscaling-controller.v1.0.19
        version: 1.0.19
      - name: ack-applicationautoscaling-controller.v1.0.18
        version: 1.0.18
      - name: ack-applicationautoscaling-controller.v1.0.17
        version: 1.0.17
      - name: ack-applicationautoscaling-controller.v1.0.16
        version: 1.0.16
      - name: ack-applicationautoscaling-controller.v1.0.15
        version: 1.0.15
      - name: ack-applicationautoscaling-controller.v1.0.11
        version: 1.0.11
      - name: ack-applicationautoscaling-controller.v1.0.9
        version: 1.0.9
      - name: ack-applicationautoscaling-controller.v1.0.8
        version: 1.0.8
      - name: ack-applicationautoscaling-controller.v1.0.7
        version: 1.0.7
      - name: ack-applicationautoscaling-controller.v1.0.6
        version: 1.0.6
      - name: ack-applicationautoscaling-controller.v1.0.5
        version: 1.0.5
      - name: ack-applicationautoscaling-controller.v1.0.4
        version: 1.0.4
      - name: ack-applicationautoscaling-controller.v1.0.3
        version: 1.0.3
      - name: ack-applicationautoscaling-controller.v1.0.2
        version: 1.0.2
      - name: ack-applicationautoscaling-controller.v1.0.0
        version: 1.0.0
      - name: ack-applicationautoscaling-controller.v0.2.16
        version: 0.2.16
      - name: ack-applicationautoscaling-controller.v0.2.15
        version: 0.2.15
      - name: ack-applicationautoscaling-controller.v0.2.14
        version: 0.2.14
      - name: ack-applicationautoscaling-controller.v0.2.13
        version: 0.2.13
      - name: ack-applicationautoscaling-controller.v0.2.12
        version: 0.2.12
      - name: ack-applicationautoscaling-controller.v0.2.10
        version: 0.2.10
      - name: ack-applicationautoscaling-controller.v0.2.9
        version: 0.2.9
      - name: ack-applicationautoscaling-controller.v0.2.8
        version: 0.2.8
      - name: ack-applicationautoscaling-controller.v0.2.7
        version: 0.2.7
      - name: ack-applicationautoscaling-controller.v0.2.6
        version: 0.2.6
      - name: ack-applicationautoscaling-controller.v0.2.5
        version: 0.2.5
      - name: ack-applicationautoscaling-controller.v0.2.4
        version: 0.2.4
      - name: ack-applicationautoscaling-controller.v0.2.3
        version: 0.2.3
      - name: ack-applicationautoscaling-controller.v0.2.2
        version: 0.2.2
      - name: ack-applicationautoscaling-controller.v0.2.1
        version: 0.2.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-applicationautoscaling-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-mq-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-mq-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mq.services.k8s.aws/v1alpha1",
                "kind": "Broker",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/mq-controller:1.2.0
          createdAt: "2025-11-29T03:37:35Z"
          description: AWS MQ controller is a service controller for managing MQ resources
            in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Broker represents the state of an AWS mq Broker resource.
            displayName: Broker
            kind: Broker
            name: brokers.mq.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon MQ resources in AWS from within your Kubernetes cluster.

          **About Amazon MQ**

          Amazon MQ is a managed message broker service for Apache ActiveMQ and RabbitMQ that makes it easy to set up and operate message brokers on AWS. Amazon MQ reduces your operational responsibilities by managing the provisioning, setup, and maintenance of message brokers for you. Because Amazon MQ connects to your current applications with industry-standard APIs and protocols, you can easily migrate to AWS without having to rewrite code.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon MQ
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mq
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon MQ Developer Resources
          url: https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: mq maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/mq-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-mq-controller@sha256:e9a599737eb39ce150b2d31461354d25fb060d4f2cf45557ffa26e10d52c7c8c
        version: 1.2.0
      entries:
      - name: ack-mq-controller.v1.2.0
        version: 1.2.0
      - name: ack-mq-controller.v1.1.3
        version: 1.1.3
      - name: ack-mq-controller.v1.1.2
        version: 1.1.2
      - name: ack-mq-controller.v1.1.1
        version: 1.1.1
      - name: ack-mq-controller.v1.1.0
        version: 1.1.0
      - name: ack-mq-controller.v1.0.13
        version: 1.0.13
      - name: ack-mq-controller.v1.0.11
        version: 1.0.11
      - name: ack-mq-controller.v1.0.10
        version: 1.0.10
      - name: ack-mq-controller.v1.0.9
        version: 1.0.9
      - name: ack-mq-controller.v1.0.8
        version: 1.0.8
      - name: ack-mq-controller.v1.0.7
        version: 1.0.7
      - name: ack-mq-controller.v1.0.6
        version: 1.0.6
      - name: ack-mq-controller.v1.0.5
        version: 1.0.5
      - name: ack-mq-controller.v1.0.2
        version: 1.0.2
      - name: ack-mq-controller.v1.0.1
        version: 1.0.1
      - name: ack-mq-controller.v1.0.0
        version: 1.0.0
      - name: ack-mq-controller.v0.0.36
        version: 0.0.36
      - name: ack-mq-controller.v0.0.35
        version: 0.0.35
      - name: ack-mq-controller.v0.0.34
        version: 0.0.34
      - name: ack-mq-controller.v0.0.31
        version: 0.0.31
      - name: ack-mq-controller.v0.0.29
        version: 0.0.29
      - name: ack-mq-controller.v0.0.27
        version: 0.0.27
      - name: ack-mq-controller.v0.0.26
        version: 0.0.26
      - name: ack-mq-controller.v0.0.25
        version: 0.0.25
      - name: ack-mq-controller.v0.0.24
        version: 0.0.24
      - name: ack-mq-controller.v0.0.23
        version: 0.0.23
      - name: ack-mq-controller.v0.0.22
        version: 0.0.22
      - name: ack-mq-controller.v0.0.21
        version: 0.0.21
      - name: ack-mq-controller.v0.0.20
        version: 0.0.20
      - name: ack-mq-controller.v0.0.19
        version: 0.0.19
      - name: ack-mq-controller.v0.0.18
        version: 0.0.18
      - name: ack-mq-controller.v0.0.17
        version: 0.0.17
      - name: ack-mq-controller.v0.0.16
        version: 0.0.16
      - name: ack-mq-controller.v0.0.15
        version: 0.0.15
      - name: ack-mq-controller.v0.0.14
        version: 0.0.14
      - name: ack-mq-controller.v0.0.13
        version: 0.0.13
      - name: ack-mq-controller.v0.0.12
        version: 0.0.12
      - name: ack-mq-controller.v0.0.11
        version: 0.0.11
      - name: ack-mq-controller.v0.0.10
        version: 0.0.10
      - name: ack-mq-controller.v0.0.9
        version: 0.0.9
      - name: ack-mq-controller.v0.0.8
        version: 0.0.8
      - name: ack-mq-controller.v0.0.7
        version: 0.0.7
      name: alpha
    defaultChannel: alpha
    packageName: ack-mq-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: web-terminal
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: web-terminal.v1.15.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
            ]
          capabilities: Basic Install
          categories: Developer Tools
          certified: "false"
          containerImage: registry.redhat.io/web-terminal/web-terminal-rhel9-operator@sha256:54aee8a20fe456c48d9b5001b08a6bd2a84b37f2abb0966d9d9c5c2ad087d3ae
          createdAt: "2021-10-26T07:24:32Z"
          description: Start a web terminal in your browser with common CLI tools
            for interacting with the cluster
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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: "true"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/redhat-developer/web-terminal-operator/
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          required:
          - kind: DevWorkspaceRouting
            name: devworkspaceroutings.controller.devfile.io
            version: v1alpha1
          - kind: DevWorkspace
            name: devworkspaces.workspace.devfile.io
            version: v1alpha1
        description: |
          Start a web terminal in your browser with common CLI tools for interacting with
          the cluster.

          **Note:** The Web Terminal Operator integrates with the OpenShift Console in
          OpenShift 4.5.3 and higher to simplify web terminal instance creation and
          automate OpenShift login. In earlier versions of OpenShift, the operator can
          be installed but web terminals will have to be created and accessed manually.

          ## Description
          The Web Terminal Operator leverages the
          [DevWorkspace Operator](https://github.com/devfile/devworkspace-operator)
          to provision enviroments which support common cloud CLI tools. When this
          operator is installed, the DevWorkspace Operator will be installed as a
          dependency.

          ## How to Install
          Press the **Install** button, choose the upgrade strategy, and wait for the
          **Installed** Operator status.

          When the operator is installed, you will see a terminal button appear on the
          top right of the console after refreshing the OpenShift console window.

          ## How to Uninstall
          The Web Terminal Operator requires manual steps to fully uninstall the operator.
          As the Web Terminal Operator is designed as a way to access the OpenShift
          cluster, web terminal instances store user credentials. To avoid exposing these
          credentials to unwanted parties, the operator deploys webhooks and finalizers
          that aren't removed when the operator is uninstalled. See the
          [uninstall guide](https://docs.openshift.com/container-platform/latest/web_console/web_terminal/uninstalling-web-terminal.html)
          for more details.

          ## Documentation
          Documentation for this Operator is available at https://docs.openshift.com/container-platform/latest/web\_console/web\_terminal/installing-web-terminal.html
        displayName: Web Terminal
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - workspace
        - devtools
        - developer
        - ide
        - terminal
        links:
        - name: Web Terminal Repo
          url: https://github.com/redhat-developer/web-terminal-operator/
        maintainers:
        - email: dakwon@redhat.com
          name: David Kwon
        - email: ibuziuk@redhat.com
          name: Ilya Buziuk
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/web-terminal/web-terminal-tooling-rhel9@sha256:a107f3d0a1e0046a2a3c089d67b4d54f0b94048154dd2fbd5f8344506c9994cd
        - registry.redhat.io/web-terminal/web-terminal-operator-bundle@sha256:a9be30074f26b71e14cab823718dc4fd03edcc2694826cdd8aa3c06ed2201057
        - registry.redhat.io/web-terminal/web-terminal-exec-rhel9@sha256:f887c71de000744733326c39725e52d7e576c0e8a9177548d59eb98706b97189
        - registry.redhat.io/web-terminal/web-terminal-rhel9-operator@sha256:54aee8a20fe456c48d9b5001b08a6bd2a84b37f2abb0966d9d9c5c2ad087d3ae
        version: 1.15.0
      entries:
      - name: web-terminal.v1.15.0
        version: 1.15.0
      - name: web-terminal.v1.14.0
        version: 1.14.0
      - name: web-terminal.v1.13.0
        version: 1.13.0
      - name: web-terminal.v1.12.1-0.1745393748.p
        version: 1.12.1+0.1745393748.p
      - name: web-terminal.v1.12.1-0.1743657317.p
        version: 1.12.1+0.1743657317.p
      - name: web-terminal.v1.12.1-0.1742484227.p
        version: 1.12.1+0.1742484227.p
      - name: web-terminal.v1.12.1
        version: 1.12.1
      - name: web-terminal.v1.11.1-0.1747215995.p
        version: 1.11.1+0.1747215995.p
      - name: web-terminal.v1.11.1
        version: 1.11.1
      - name: web-terminal.v1.11.0
        version: 1.11.0
      - name: web-terminal.v1.10.1
        version: 1.10.1
      - name: web-terminal.v1.10.1-0.1740684238.p
        version: 1.10.1+0.1740684238.p
      - name: web-terminal.v1.10.0-0.1720402943.p
        version: 1.10.0+0.1720402943.p
      - name: web-terminal.v1.10.0-0.1732652667.p
        version: 1.10.0+0.1732652667.p
      - name: web-terminal.v1.10.0-0.1731481377.p
        version: 1.10.0+0.1731481377.p
      - name: web-terminal.v1.10.0-0.1727169028.p
        version: 1.10.0+0.1727169028.p
      - name: web-terminal.v1.10.0-0.1720435222.p
        version: 1.10.0+0.1720435222.p
      - name: web-terminal.v1.10.0
        version: 1.10.0
      - name: web-terminal.v1.9.0-0.1708477317.p
        version: 1.9.0+0.1708477317.p
      - name: web-terminal.v1.9.0
        version: 1.9.0
      - name: web-terminal.v1.8.0-0.1708477299.p
        version: 1.8.0+0.1708477299.p
      - name: web-terminal.v1.8.0-0.1701199376.p
        version: 1.8.0+0.1701199376.p
      - name: web-terminal.v1.8.0-0.1692219820.p
        version: 1.8.0+0.1692219820.p
      - name: web-terminal.v1.8.0
        version: 1.8.0
      - name: web-terminal.v1.7.0-0.1681197295.p
        version: 1.7.0+0.1681197295.p
      - name: web-terminal.v1.7.0-0.1708477265.p
        version: 1.7.0+0.1708477265.p
      - name: web-terminal.v1.7.0
        version: 1.7.0
      - name: web-terminal.v1.7.0-0.1692219820.p
        version: 1.7.0+0.1692219820.p
      - name: web-terminal.v1.7.0-0.1682321121.p
        version: 1.7.0+0.1682321121.p
      - name: web-terminal.v1.7.0-0.1684429884.p
        version: 1.7.0+0.1684429884.p
      - name: web-terminal.v1.6.0
        version: 1.6.0
      - name: web-terminal.v1.6.0-0.1692219820.p
        version: 1.6.0+0.1692219820.p
      - name: web-terminal.v1.5.1-0.1661829403.p
        version: 1.5.1+0.1661829403.p
      - name: web-terminal.v1.5.1
        version: 1.5.1
      - name: web-terminal.v1.5.0-0.1657220207.p
        version: 1.5.0+0.1657220207.p
      - name: web-terminal.v1.5.0
        version: 1.5.0
      - name: web-terminal.v1.4.0
        version: 1.4.0
      - name: web-terminal.v1.3.0
        version: 1.3.0
      name: fast
    defaultChannel: fast
    packageName: web-terminal
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: devspaces
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: devspacesoperator.v3.25.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "org.eclipse.che/v1",
                "kind": "CheCluster",
                "metadata": {
                  "name": "devspaces",
                  "namespace": "openshift-devspaces"
                },
                "spec": {
                  "auth": {
                    "identityProviderURL": "",
                    "oAuthClientName": "",
                    "oAuthSecret": ""
                  },
                  "database": {
                    "externalDb": false
                  },
                  "k8s": {
                    "ingressDomain": null,
                    "tlsSecretName": null
                  },
                  "metrics": {
                    "enable": true
                  },
                  "server": {
                    "workspaceNamespaceDefault": "<username>-devspaces"
                  },
                  "storage": {
                    "pvcStrategy": "common"
                  }
                }
              },
              {
                "apiVersion": "org.eclipse.che/v2",
                "kind": "CheCluster",
                "metadata": {
                  "name": "devspaces",
                  "namespace": "openshift-devspaces"
                },
                "spec": {
                  "components": {},
                  "containerRegistry": {},
                  "devEnvironments": {},
                  "gitServices": {},
                  "networking": {}
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: registry.redhat.io/devspaces/devspaces-rhel9-operator@sha256:06cb161519fde83b8c5bcced51f6d639f25a4669e3718338c7ab8dfdefbaa746
          createdAt: "2025-12-13T03:50:34+00:00"
          description: Devfile v2 and v1 development solution, 1 instance per cluster,
            for portable, collaborative k8s workspaces.
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-developer/devspaces-images/
          skipRange: '>=3.0.0 <3.25.0'
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              The `CheCluster` custom resource allows defining and managing Red Hat OpenShift Dev Spaces server installation.
              Based on these settings, the  Operator automatically creates and maintains several ConfigMaps:
              `che`, `plugin-registry` that will contain the appropriate environment variables
              of the various components of the installation. These generated ConfigMaps must NOT be updated manually.
            displayName: Red Hat OpenShift Dev Spaces instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v2
          - description: The `CheCluster` custom resource allows defining and managing
              a Che server installation
            displayName: Red Hat OpenShift Dev Spaces instance Specification
            kind: CheCluster
            name: checlusters.org.eclipse.che
            version: v1
        description: |
          A collaborative Kubernetes-native development solution that delivers OpenShift workspaces and in-browser IDE for rapid cloud application development.
          This operator installs the Plugin and Devfile registries, Dashboard, Gateway and the Red Hat OpenShift Dev Spaces server, and configures these services.
          OpenShift OAuth is used directly for authentication. TLS mode is on.

          ## How to Install
          Press the **Install** button, choose the channel and the upgrade strategy, and wait for the **Installed** Operator status.
          When the operator is installed, create a new Custom Resource (CR) of Kind CheCluster (click the **Create New** button).
          The CR spec contains all defaults. You can start using Red Hat OpenShift Dev Spaces when the CR status is set to **Available**, and you see a URL to Red Hat OpenShift Dev Spaces.

          ## Defaults
          By default, the operator deploys Red Hat OpenShift Dev Spaces with:
          * 10Gi storage
          * Auto-generated passwords
          * Bundled Plugin and Devfile registries

          Use `oc edit checluster/devspaces -n openshift-devspaces` to update Red Hat OpenShift Dev Spaces default installation options.
          See more in the [Installation guide](https://docs.redhat.com/en/documentation/red_hat_openshift_dev_spaces/3.25/html/administration_guide/configuring-devspaces).

          ### Certificates
          Operator uses a default router certificate to secure Red Hat OpenShift Dev Spaces routes.
          Follow the [guide](https://docs.redhat.com/en/documentation/red_hat_openshift_dev_spaces/3.25/html/administration_guide/configuring-devspaces#importing-untrusted-tls-certificates)
          to import certificates into Red Hat OpenShift Dev Spaces.
        displayName: Red Hat OpenShift Dev Spaces
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eclipse che
        - workspaces
        - devtools
        - developer
        - ide
        - java
        - devspaces
        links:
        - name: Product Page
          url: https://developers.redhat.com/products/openshift-dev-spaces/overview/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_openshift_dev_spaces
        - name: Operator GitHub Repo
          url: https://github.com/redhat-developer/devspaces-images/
        maintainers:
        - email: abazko@redhat.com
          name: Anatolii Bazko
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/devspaces/pluginregistry-rhel9@sha256:572df83aa7e8ac0c198731ece8dd321bede3848fa1e6f2e3dc7bdfc5f8942759
        - registry.redhat.io/devspaces/devspaces-rhel9-operator@sha256:06cb161519fde83b8c5bcced51f6d639f25a4669e3718338c7ab8dfdefbaa746
        - registry.redhat.io/devspaces/udi-rhel9@sha256:bb5baa05f316944ca6df56ad718c368b248e8f4b2488551549b1b13c4ed5844b
        - registry.redhat.io/devspaces/code-rhel9@sha256:7b68bf06abf4f2b948d21ffa82401b44f26965b093e4875653344ae2b7fe46c8
        - registry.redhat.io/devspaces/configbump-rhel9@sha256:7f33a59aa8d1820f8a99ed20eb4b7192c1fb57414a8bc83f5432b8ea2363bb0f
        - registry.redhat.io/devspaces/server-rhel9@sha256:fccbb4185e7694f8c53c994b04e140306a72ed8aa5a6befa7f0690f21e4c19dc
        - registry.redhat.io/devspaces/traefik-rhel9@sha256:7bd1c5582082949142aead1db07b45d41840c58c14ddf18b062df45283e1a316
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:af847bf3d0220392de2f8d56fc3d431add3b31986f8200a4758d287b5bd7a6fe
        - registry.redhat.io/devspaces/dashboard-rhel9@sha256:09607fdeaf2567659a10148c50b19ac265b4a548278b800682ced9d975377cb4
        - registry.redhat.io/devspaces/jetbrains-ide-rhel9@sha256:b6e79f77712ede50d385d477b1d09a34ec4aee074785d385556a12a0a596e582
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:d26a9f4fd48c83bd488ebb889ccec7d65f3bd49e2c94e57c98971a3594d90612
        - registry.redhat.io/devspaces/devspaces-operator-bundle@sha256:74b83b79cba88af0545e7fb52dd70df2c1b96cf23b8963517fc779fbfe3e9aac
        - registry.redhat.io/devspaces/code-sshd-rhel9@sha256:938dfb964aaae293190273034af8b09c5a007d614afa09b735756f930b34666f
        version: 3.25.0
      entries:
      - name: devspacesoperator.v3.25.0
        version: 3.25.0
      - name: devspacesoperator.v3.24.1
        version: 3.24.1
      - name: devspacesoperator.v3.24.0
        version: 3.24.0
      - name: devspacesoperator.v3.23.1
        version: 3.23.1
      - name: devspacesoperator.v3.23.0
        version: 3.23.0
      - name: devspacesoperator.v3.22.1
        version: 3.22.1
      - name: devspacesoperator.v3.22.0
        version: 3.22.0
      - name: devspacesoperator.v3.21.0
        version: 3.21.0
      - name: devspacesoperator.v3.20.0
        version: 3.20.0
      - name: devspacesoperator.v3.19.0
        version: 3.19.0
      - name: devspacesoperator.v3.18.1-0.1739475915.p
        version: 3.18.1+0.1739475915.p
      - name: devspacesoperator.v3.18.1
        version: 3.18.1
      - name: devspacesoperator.v3.18.0
        version: 3.18.0
      - name: devspacesoperator.v3.17.0
        version: 3.17.0
      - name: devspacesoperator.v3.16.1
        version: 3.16.1
      - name: devspacesoperator.v3.16.0
        version: 3.16.0
      - name: devspacesoperator.v3.15.0
        version: 3.15.0
      - name: devspacesoperator.v3.14.0
        version: 3.14.0
      - name: devspacesoperator.v3.13.0
        version: 3.13.0
      - name: devspacesoperator.v3.12.0
        version: 3.12.0
      - name: devspacesoperator.v3.12.0-0.1712003563.p
        version: 3.12.0+0.1712003563.p
      - name: devspacesoperator.v3.11.0
        version: 3.11.0
      - name: devspacesoperator.v3.10.1
        version: 3.10.1
      - name: devspacesoperator.v3.10.0
        version: 3.10.0
      - name: devspacesoperator.v3.9.1
        version: 3.9.1
      - name: devspacesoperator.v3.9.0
        version: 3.9.0
      - name: devspacesoperator.v3.8.0
        version: 3.8.0
      - name: devspacesoperator.v3.7.2
        version: 3.7.2
      - name: devspacesoperator.v3.7.1-0.1691548593.p
        version: 3.7.1+0.1691548593.p
      - name: devspacesoperator.v3.7.1-0.1691407091.p
        version: 3.7.1+0.1691407091.p
      - name: devspacesoperator.v3.7.1
        version: 3.7.1
      - name: devspacesoperator.v3.7.0
        version: 3.7.0
      - name: devspacesoperator.v3.6.0-0.1685322634.p
        version: 3.6.0+0.1685322634.p
      - name: devspacesoperator.v3.6.0-0.1685320856.p
        version: 3.6.0+0.1685320856.p
      - name: devspacesoperator.v3.6.0
        version: 3.6.0
      - name: devspacesoperator.v3.5.0
        version: 3.5.0
      - name: devspacesoperator.v3.4.0-0.1675914643.p
        version: 3.4.0+0.1675914643.p
      - name: devspacesoperator.v3.4.0
        version: 3.4.0
      - name: devspacesoperator.v3.3.0-0.1673528130.p
        version: 3.3.0+0.1673528130.p
      - name: devspacesoperator.v3.3.0
        version: 3.3.0
      name: stable
    defaultChannel: stable
    packageName: devspaces
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Advanced Micro Devices, Inc.
      provider-url: ""
    name: amd-gpu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amd-gpu-operator.v1.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "amd.com/v1alpha1",
                "kind": "DeviceConfig",
                "metadata": {
                  "name": "test-deviceconfig",
                  "namespace": "openshift-amd-gpu"
                },
                "spec": {
                  "devicePlugin": {
                    "devicePluginImage": "rocm/k8s-device-plugin:rhubi-latest",
                    "nodeLabellerImage": "rocm/k8s-node-labeller:rhubi-latest"
                  },
                  "driver": {
                    "enable": "true",
                    "version": "7.0"
                  },
                  "selector": {
                    "feature.node.kubernetes.io/amd-gpu": "true"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: AI/Machine Learning,Monitoring
          containerImage: docker.io/rocm/gpu-operator@sha256:619f6d1ddef671df2704e87a8cca82ee4c1b07d645f05c8d5cb2eb9c6604a270
          createdAt: "2025-10-31T08:47:42Z"
          description: |-
            Operator responsible for deploying AMD GPU kernel drivers, device plugin, device test runner and device metrics exporter
            For more information, visit [documentation](https://instinct.docs.amd.com/projects/gpu-operator/en/latest/)
          deviceConfigManagerImage: docker.io/rocm/device-config-manager@sha256:76363ac0cc42617f1723e14eaeb11434d4d1fa2d4d39d67bc49b3525c599c0ba
          devicePluginImage: docker.io/rocm/k8s-device-plugin@sha256:6976ee40f7fcba3759bbbf5a36e3f12daaf306836606df18592b1b67f7f651d7
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          metricsExporterImage: docker.io/rocm/device-metrics-exporter@sha256:3872ca3534c6679159ffbef504a02e937eb3e11b215c18e649456c0d0ca9bc8d
          nodelabellerImage: docker.io/rocm/k8s-node-labeller@sha256:8206d27891606ebc2f234fed6fe45d181cb31c3ff694a0ff9c3f02d62c280eee
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-amd-gpu
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ROCm/gpu-operator
          support: Advanced Micro Devices, Inc.
          testRunnerImage: docker.io/rocm/test-runner@sha256:529a13953979e7fbd4ff9333735bd2268a81eaa4fdf8f187698cce7d8e720beb
          utilsContainerImage: docker.io/rocm/gpu-operator-utils@sha256:9cbe60dce5b3a2ffd93f7148a363ed5f072a320377d5e5bcbbfb1e05d4959287
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DeviceConfig describes how to enable AMD GPU device
            displayName: DeviceConfig
            kind: DeviceConfig
            name: deviceconfigs.amd.com
            version: v1alpha1
        description: |-
          Operator responsible for deploying AMD GPU kernel drivers, device plugin, device test runner and device metrics exporter
          For more information, visit [documentation](https://instinct.docs.amd.com/projects/gpu-operator/en/latest/)
        displayName: amd-gpu-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AMD
        - GPU
        - AI
        - Deep Learning
        - Hardware
        - Driver
        - Monitoring
        links:
        - name: AMD GPU Operator
          url: https://github.com/ROCm/gpu-operator
        maintainers:
        - email: Yan.Sun3@amd.com
          name: Yan Sun
        - email: farshad.ghodsian@amd.com
          name: Farshad Ghodsian
        - email: shrey.ajmera@amd.com
          name: Shrey Ajmera
        maturity: stable
        provider:
          name: Advanced Micro Devices, Inc.
        relatedImages:
        - docker.io/rocm/k8s-device-plugin@sha256:6976ee40f7fcba3759bbbf5a36e3f12daaf306836606df18592b1b67f7f651d7
        - docker.io/rocm/k8s-node-labeller@sha256:8206d27891606ebc2f234fed6fe45d181cb31c3ff694a0ff9c3f02d62c280eee
        - docker.io/rocm/test-runner@sha256:529a13953979e7fbd4ff9333735bd2268a81eaa4fdf8f187698cce7d8e720beb
        - registry.connect.redhat.com/amd/gpu-operator-v1@sha256:4918beef3a778e8e6bb835240f356002a8b41e40ba011112ca360faa88fe57f4
        - docker.io/rocm/device-config-manager@sha256:76363ac0cc42617f1723e14eaeb11434d4d1fa2d4d39d67bc49b3525c599c0ba
        - docker.io/rocm/device-metrics-exporter@sha256:3872ca3534c6679159ffbef504a02e937eb3e11b215c18e649456c0d0ca9bc8d
        - docker.io/rocm/gpu-operator-utils@sha256:9cbe60dce5b3a2ffd93f7148a363ed5f072a320377d5e5bcbbfb1e05d4959287
        - docker.io/rocm/gpu-operator@sha256:619f6d1ddef671df2704e87a8cca82ee4c1b07d645f05c8d5cb2eb9c6604a270
        version: 1.4.1
      entries:
      - name: amd-gpu-operator.v1.4.1
        version: 1.4.1
      - name: amd-gpu-operator.v1.3.2
        version: 1.3.2
      - name: amd-gpu-operator.v1.3.1
        version: 1.3.1
      - name: amd-gpu-operator.v1.2.1
        version: 1.2.1
      - name: amd-gpu-operator.v1.1.1
        version: 1.1.1
      name: alpha
    defaultChannel: alpha
    packageName: amd-gpu-operator
    provider:
      name: Advanced Micro Devices, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Kubecost
      provider-url: https://www.kubecost.com
    name: kubecost-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubecost-operator.v2.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.kubecost.com/v1alpha1",
                "kind": "CostAnalyzer",
                "metadata": {
                  "name": "costanalyzer-sample"
                },
                "spec": {
                  "clusterController": {
                    "image": {
                      "repository": "registry.connect.redhat.com/kubecost/kubecost-cluster-controller@sha256",
                      "tag": "1a6f11dcd7341ab3f24eba23ec06c7b75646a534a7ed960153601806425469d1"
                    }
                  },
                  "forecasting": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-modeling@sha256:8f59f8fd8696964c1b5322ca79fae78befe97323fa56c2b509bdcc67ee4c0edd"
                  },
                  "global": {
                    "platforms": {
                      "openshift": {
                        "createMonitoringClusterRoleBinding": true,
                        "createMonitoringResourceReaderRoleBinding": true,
                        "enabled": true,
                        "scc": {
                          "clusterController": true,
                          "networkCosts": true,
                          "nodeExporter": true
                        }
                      }
                    },
                    "prometheus": {
                      "enabled": false,
                      "fqdn": "https://prometheus-k8s.openshift-monitoring.svc.cluster.local:9091",
                      "kubeRBACProxy": true
                    }
                  },
                  "grafana": {
                    "image": {
                      "repository": "registry.redhat.io/rhel9/grafana@sha256",
                      "tag": "9f71de028c18034e07a8d15dac13ef68afb91cb899b9e8e7d39703547dd0eac1"
                    },
                    "sidecar": {
                      "image": {
                        "repository": "quay.io/kiwigrid/k8s-sidecar@sha256",
                        "tag": "d3749777d5bedf62549b452a7e2ccb205da53588dc7f04927efc75d0da5b6d23"
                      }
                    }
                  },
                  "kubecostAggregator": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:1b9c9f309e6f41addc7fb6418724a6a6b08486290e31fe1f614efc649874bcef"
                  },
                  "kubecostFrontend": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-frontend@sha256:f9b2196dc6ac017b8074f8fe40f1a58e7a2630282c5b7a019ca9f3dbdb670dc8"
                  },
                  "kubecostModel": {
                    "fullImageName": "registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:1b9c9f309e6f41addc7fb6418724a6a6b08486290e31fe1f614efc649874bcef"
                  },
                  "networkCosts": {
                    "image": {
                      "repository": "registry.connect.redhat.com/kubecost/kubecost-network-costs@sha256",
                      "tag": "c444d475be4f1aa36680bd84358e1e07303dcfe5d13a95544ad9e59f80d4a5f0"
                    }
                  },
                  "prometheusRule": {
                    "enabled": true
                  },
                  "serviceMonitor": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          createdAt: "2025-08-08T19:34:34Z"
          description: Deploys Kubecost 2.8.2 via the Helm chart.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: Contact Kubecost for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Kubecost.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The CostAnalyzer API describes a deployment of Kubecost and
              its dependencies.
            displayName: CostAnalyzer
            kind: CostAnalyzer
            name: costanalyzers.charts.kubecost.com
            version: v1alpha1
        description: |2-

          IMPORTANT - Before installation, you must run the following command to allow monitoring of the Kubecost namespace by the local OpenShift Promtheus. If you install in a namespace other than "Kubecost", adjust accordingly.

          `oc label namespace kubecost openshift.io/cluster-monitoring=true`

          Kubecost provides real-time cost visibility and insights for teams using Kubernetes, helping you continuously reduce your cloud costs.

          This OpenShift Operator deploys Kubecost from the official Helm chart.

          Kubecost allows you to:

          * See allocated spend across all native Kubernetes concepts and provide your teams with transparent, accurate cost data reconciled with your actual cloud bill.
          * Join in-cluster costs like CPU and memory with out-of-cluster spend from other cloud services.
          * Get complete cost visibility across OpenShift, On-Prem, AWS, GCP, Azure, Oracle, AliCloud + more.
          * Gain insights you can use to save 30-50%+ on your infrastructure spend, without exposing your private information — your data never gets shared externally, even with us.
          * Have real-time alerts and recurring reports, empowering teams to take control of their Kubernetes-enabled infrastructure and stay within budgeted limits.

          Visit the Kubecost website for more details including features, pricing, documentation, and more at www.kubecost.com.
        displayName: Kubecost
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kubernetes
        - cost
        - kubernetes costs
        - kubernetes optimization
        - k8s
        - cost monitoring
        - cloud costs
        - k8s cost
        links:
        - name: Kubecost
          url: https://www.kubecost.com
        maintainers:
        - email: support@kubecost.com
          name: Kubecost Support
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Kubecost
          url: https://www.kubecost.com
        relatedImages:
        - registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:1b9c9f309e6f41addc7fb6418724a6a6b08486290e31fe1f614efc649874bcef
        - registry.connect.redhat.com/kubecost/kubecost-operator-manager@sha256:582223a66a77f35d1f7ca33460032cfca1581a8ff30f75ead289d8cd4cf62bb9
        - registry.redhat.io/rhel9/grafana@sha256:9f71de028c18034e07a8d15dac13ef68afb91cb899b9e8e7d39703547dd0eac1
        - registry.connect.redhat.com/kubecost/kubecost-cluster-controller@sha256:1a6f11dcd7341ab3f24eba23ec06c7b75646a534a7ed960153601806425469d1
        - registry.connect.redhat.com/kubecost/kubecost-frontend@sha256:f9b2196dc6ac017b8074f8fe40f1a58e7a2630282c5b7a019ca9f3dbdb670dc8
        - registry.connect.redhat.com/kubecost/kubecost-network-costs@sha256:c444d475be4f1aa36680bd84358e1e07303dcfe5d13a95544ad9e59f80d4a5f0
        - registry.connect.redhat.com/kubecost/operator@sha256:2cb5ec186af3264cba42333245616dd01f0f9868a849129b1a31afbc51ee1410
        - registry.connect.redhat.com/kubecost/kubecost-modeling@sha256:8f59f8fd8696964c1b5322ca79fae78befe97323fa56c2b509bdcc67ee4c0edd
        - quay.io/kiwigrid/k8s-sidecar@sha256:d3749777d5bedf62549b452a7e2ccb205da53588dc7f04927efc75d0da5b6d23
        version: 2.8.2
      entries:
      - name: kubecost-operator.v2.8.2
        version: 2.8.2
      - name: kubecost-operator.v2.8.1
        version: 2.8.1
      - name: kubecost-operator.v2.8.0
        version: 2.8.0
      - name: kubecost-operator.v2.7.2
        version: 2.7.2
      - name: kubecost-operator.v2.7.1
        version: 2.7.1
      - name: kubecost-operator.v2.5.4
        version: 2.5.4
      name: alpha
    - currentCSV: kubecost-operator.v3.0.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.kubecost.com/v1",
                "kind": "Kubecost",
                "metadata": {
                  "name": "kubecost-sample"
                },
                "spec": {
                  "global": {
                    "clusterId": "SET_A_UNIQUE_CLUSTER_ID_HERE",
                    "platforms": {
                      "cicd": {
                        "enabled": true,
                        "skipSanityChecks": true
                      },
                      "openshift": {
                        "enabled": true,
                        "route": {
                          "annotations": {},
                          "enabled": false
                        },
                        "scc": {
                          "clusterController": true,
                          "networkCosts": true
                        },
                        "securityContext": {
                          "runAsNonRoot": true,
                          "seccompProfile": {
                            "type": "RuntimeDefault"
                          }
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          createdAt: "2025-12-10T23:50:25Z"
          description: Deploys Kubecost 3.0.6 via the Helm chart.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: Contact Kubecost for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: Kubecost.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Kubecost
            name: kubecosts.charts.kubecost.com
            version: v1
        description: |-
          Kubecost provides real-time cost visibility and insights for teams using Kubernetes, helping you continuously reduce your cloud costs.

          This OpenShift Operator deploys Kubecost from the official Helm chart.

          Kubecost allows you to:

          * See allocated spend across all native Kubernetes concepts and provide your teams with transparent, accurate cost data reconciled with your actual cloud bill.
          * Join in-cluster costs like CPU and memory with out-of-cluster spend from other cloud services.
          * Get complete cost visibility across OpenShift, On-Prem, AWS, GCP, Azure, Oracle, AliCloud + more.
          * Gain insights you can use to save 30-50%+ on your infrastructure spend, without exposing your private information — your data never gets shared externally, even with us.
          * Have real-time alerts and recurring reports, empowering teams to take control of their Kubernetes-enabled infrastructure and stay within budgeted limits.

          Visit the Kubecost website for more details including features, pricing, documentation, and more at www.kubecost.com.
        displayName: Kubecost
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kubernetes
        - cost
        - kubernetes costs
        - kubernetes optimization
        - k8s
        - cost monitoring
        - cloud costs
        - k8s cost
        links:
        - name: Kubecost
          url: https://www.kubecost.com
        maintainers:
        - email: support@kubecost.com
          name: Kubecost Support
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Kubecost
          url: https://www.kubecost.com
        relatedImages:
        - registry.connect.redhat.com/kubecost/kubecost-frontend@sha256:4e17cf2dfe83c0de79674cbeb6df7876fb572ee551ba4237a3036610770ad8e6
        - registry.connect.redhat.com/kubecost/kubecost-modeling@sha256:5d1e47f806520bfbb5448df19c0713a89e9a5a7b8e153407ac3eb356d44d979b
        - registry.connect.redhat.com/kubecost/kubecost-network-costs@sha256:3fca4e19e1270c64fdf3f3e7770cee1102c276bf86f6e8f1dded7cae8f005ac4
        - registry.connect.redhat.com/kubecost/kubecost-operator-manager@sha256:686bee59ecbdc1f002520f667e9883caaf0869de4a351154e9ae1c6fd60b4054
        - registry.connect.redhat.com/kubecost/operator@sha256:d04943c19d6e07111bcdada1f98af307dafb17f0107892c4dbc860e69510a728
        - registry.connect.redhat.com/kubecost/ibm-finops-agent@sha256:0ae8416f609c986ebc79819c3e5e29ca7957b40501fdbada8efdec7fa6123d01
        - registry.connect.redhat.com/kubecost/kubecost-cluster-controller@sha256:7389dfb6f47de9e0d9ee3a7d22b6cacd6ef120e08476cceaa3c12e6cea4d1a3c
        - registry.connect.redhat.com/kubecost/kubecost-cost-model@sha256:59a3a12bd394a428a99a56add3b3624eafd8adb73eaa4465ece431a0d666030d
        version: 3.0.6
      entries:
      - name: kubecost-operator.v3.0.6
        version: 3.0.6
      - name: kubecost-operator.v3.0.5
        version: 3.0.5
      - name: kubecost-operator.v3.0.4
        version: 3.0.4
      - name: kubecost-operator.v3.0.3
        version: 3.0.3
      - name: kubecost-operator.v3.0.2
        version: 3.0.2
      - name: kubecost-operator.v3.0.1
        version: 3.0.1
      - name: kubecost-operator.v3.0.0
        version: 3.0.0
      name: stable
    defaultChannel: stable
    packageName: kubecost-operator
    provider:
      name: Kubecost
      url: https://www.kubecost.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The CloudNativePG Contributors
      provider-url: ""
    name: cloudnative-pg
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cloudnative-pg.v1.28.0-rc2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: ghcr.io/cloudnative-pg/cloudnative-pg@sha256:97e930eb35abbcf91c913b6c2c11082687da071d902b9cdb086b9b2c0cca33fe
          createdAt: "2025-11-29T16:48:48Z"
          description: CloudNativePG is an open source operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/cloudnative-pg/cloudnative-pg
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.cnpg.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.cnpg.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.cnpg.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.io
            version: v1
        description: |
          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover by promoting the most aligned replica.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnpg` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: CloudNativePG
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnpg
        links:
        - name: CloudNativePG
          url: https://cloudnative-pg.io/
        - name: Documentation
          url: https://cloudnative-pg.io/docs/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: The CloudNativePG Contributors
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloudnative-pg@sha256:98bb34761d25ec5a6d8b6272ac7b64702512ee398c910b1cba5828b29b86622a
        - ghcr.io/cloudnative-pg/cloudnative-pg@sha256:97e930eb35abbcf91c913b6c2c11082687da071d902b9cdb086b9b2c0cca33fe
        - ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891
        - ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b
        version: 1.28.0-rc2
      entries:
      - name: cloudnative-pg.v1.28.0-rc2
        version: 1.28.0-rc2
      - name: cloudnative-pg.v1.28.0-rc1
        version: 1.28.0-rc1
      - name: cloudnative-pg.v1.27.0-rc1
        version: 1.27.0-rc1
      - name: cloudnative-pg.v1.26.0-rc3
        version: 1.26.0-rc3
      - name: cloudnative-pg.v1.26.0-rc2
        version: 1.26.0-rc2
      - name: cloudnative-pg.v1.26.0-rc1
        version: 1.26.0-rc1
      name: candidate
    - currentCSV: cloudnative-pg.v1.28.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  }
                },
                "status": {
                  "serverName": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Cluster",
                "metadata": {
                  "name": "cluster-sample"
                },
                "spec": {
                  "instances": 3,
                  "logLevel": "info",
                  "primaryUpdateStrategy": "unsupervised",
                  "storage": {
                    "size": "1Gi"
                  },
                  "walStorage": {
                    "size": "1Gi"
                  }
                },
                "status": {
                  "instances": 3
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ClusterImageCatalog",
                "metadata": {
                  "name": "postgresql"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Database",
                "metadata": {
                  "name": "database-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "name": "database-sample",
                  "owner": "app"
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ImageCatalog",
                "metadata": {
                  "name": "postgresql",
                  "namespace": "default"
                },
                "spec": {
                  "images": [
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891",
                      "major": 15
                    },
                    {
                      "image": "ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b",
                      "major": 16
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Pooler",
                "metadata": {
                  "name": "pooler-sample-rw"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "instances": 1,
                  "pgbouncer": {
                    "poolMode": "session"
                  },
                  "type": "rw"
                },
                "status": {
                  "instances": 1
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Publication",
                "metadata": {
                  "name": "publication-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "dbname": "app",
                  "name": "pub",
                  "target": {
                    "allTables": true
                  }
                },
                "status": {
                  "applied": false
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "ScheduledBackup",
                "metadata": {
                  "name": "scheduledbackup-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample"
                  },
                  "schedule": "0 0 0 * * *"
                },
                "status": {
                  "lastCheckTime": null
                }
              },
              {
                "apiVersion": "postgresql.cnpg.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "subscription-sample"
                },
                "spec": {
                  "cluster": {
                    "name": "cluster-sample-dest"
                  },
                  "dbname": "app",
                  "externalClusterName": "cluster-sample",
                  "name": "sub",
                  "publicationName": "pub"
                },
                "status": {
                  "applied": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: ghcr.io/cloudnative-pg/cloudnative-pg@sha256:0869f9b996923aaf3eb761abe032b10ef482eaaef32fc6c604605a7223c13c1b
          createdAt: "2025-12-09T17:23:26Z"
          description: CloudNativePG is an open source operator designed to manage
            highly available PostgreSQL databases with a primary/standby architecture
            on any supported Kubernetes cluster.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/cloudnative-pg/cloudnative-pg
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PostgreSQL backup (physical base backup)
            displayName: Backups
            kind: Backup
            name: backups.postgresql.cnpg.io
            version: v1
          - description: A cluster-wide catalog of PostgreSQL operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.io
            version: v1
          - description: PostgreSQL cluster (primary/standby architecture)
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a database on a Cluster
            displayName: Postgres Database
            kind: Database
            name: databases.postgresql.cnpg.io
            version: v1
          - description: FailoverQuorum contains the information about the current
              failover quorum status of a PG cluster
            displayName: Failover Quorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.io
            version: v1
          - description: A catalog of PostgreSQL operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.io
            version: v1
          - description: Pooler for a Postgres Cluster (with PgBouncer)
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Publication in a PostgreSQL Cluster
            displayName: Postgres Publication
            kind: Publication
            name: publications.postgresql.cnpg.io
            version: v1
          - description: Backup scheduler for a given Postgres cluster
            displayName: Scheduled Backups
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.io
            version: v1
          - description: Declarative creation and management of a Logical Replication
              Subscription in a PostgreSQL Cluster to a previously defined Publication
            displayName: Postgres Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.io
            version: v1
        description: |
          Main features:

          - Direct integration with the Kubernetes API server for High Availability,
            eliminating the need for external tools.
          - Self-healing capabilities, including:
              - Automated failover, promoting the replica with the most up-to-date data,
                with the option to use quorum-based failover and synchronous replication
                for increased data durability and safety.
              - Automatic recreation of failed replicas.
          - Planned switchover of the primary instance by promoting a selected replica.
          - Declarative management of key PostgreSQL configurations, including:
              - PostgreSQL settings.
              - Roles, users, and groups.
              - Databases, extensions, and schemas.
              - Tablespaces (including temporary tablespaces).
          - Flexible instance definition, supporting any number of instances (minimum 1
            primary server).
          - Scale-up/down capabilities to dynamically adjust cluster size.
          - Read-Write and Read-Only Services, ensuring applications connect correctly:
              - *Read-Write Service*: Routes connections to the primary server.
              - *Read-Only Service*: Distributes connections among replicas for read workloads.
          - Support for quorum-based and priority-based PostgreSQL Synchronous
            Replication.
          - Replica clusters enabling PostgreSQL distributed topologies across multiple
            Kubernetes clusters (private, public, hybrid, and multi-cloud).
          - Delayed Replica clusters for point-in-time access to historical data.
          - Persistent volume management, including:
              - Support for Local Persistent Volumes with PVC templates.
              - Reuse of Persistent Volumes storage in Pods.
              - Separate volumes for WAL files and tablespaces.
          - Backup and recovery options, including:
              - Integration with the [Barman Cloud plugin](https://github.com/cloudnative-pg/plugin-barman-cloud)
                for continuous online backup via WAL archiving to AWS S3, S3-compatible
                services, Azure Blob Storage, and Google Cloud Storage, with support for
                retention policies based on a configurable recovery window.
              - Backups using volume snapshots (where supported by storage classes).
              - Full and Point-In-Time recovery from volume snapshots or object stores (via Barman Cloud plugin).
              - Backup from standby replicas to reduce primary workload impact.
          - Offline and online import of PostgreSQL databases, including major upgrades:
              - *Offline Import*: Direct restore from existing databases.
              - *Online Import*: PostgreSQL native logical replication via the `Subscription` resource.
          - Offline In-Place Major Upgrades of PostgreSQL
          - High Availability physical replication slots, including synchronization of
            user-defined replication slots.
          - Parallel WAL archiving and restore, ensuring high-performance data
            synchronization in high-write environments.
          - TLS support, including:
              - Secure connections and client certificate authentication.
              - Custom TLS certificates (integrated with `cert-manager`).
          - Startup and readiness probes, including replica probes based on desired lag
            from the primary.
          - Declarative rolling updates for:
              - PostgreSQL minor versions.
              - Operator upgrades (in-place or rolling updates).
          - Standard output logging of PostgreSQL error messages in JSON format for
            easier integration with log aggregation tools.
          - Prometheus-compatible metrics exporter (`metrics` port 9187) for custom
            monitoring.
          - `cnpg` plugin for `kubectl` to simplify cluster operations.
          - Cluster hibernation for resource efficiency in inactive states.
          - Fencing of PostgreSQL clusters (full cluster or subset) to isolate instances
            when needed.
          - Connection pooling with PgBouncer for improved database efficiency.
          - OLM (Operator Lifecycle Manager) installation support for streamlined
            deployments.
          - Multi-arch container images, including Software Bill of Materials (SBOM) and
            provenance attestations for security compliance.
        displayName: CloudNativePG
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - cloudnativepg
        - cloudnative-pg
        - cnpg
        links:
        - name: CloudNativePG
          url: https://cloudnative-pg.io/
        - name: Documentation
          url: https://cloudnative-pg.io/docs/
        maintainers:
        - email: jonathan.gonzalez@enterprisedb.com
          name: Jonathan Gonzalez V.
        - email: jonathan.battiato@enterprisedb.com
          name: Jonathan Battiato
        - email: niccolo.fei@enterprisedb.com
          name: Niccolo Fei
        - email: gabriele.bartolini@enterprisedb.com
          name: Gabriele Bartolini
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: The CloudNativePG Contributors
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/cloudnative-pg@sha256:1301ead85309191e6f91d5c94de7e2569e3b0379172f86332d43dc8bddb94409
        - ghcr.io/cloudnative-pg/cloudnative-pg@sha256:0869f9b996923aaf3eb761abe032b10ef482eaaef32fc6c604605a7223c13c1b
        - ghcr.io/cloudnative-pg/postgresql@sha256:1c97e0d6e94d8b335be7f258eeda2202966df5fde0c934eef4b13c760ec6a891
        - ghcr.io/cloudnative-pg/postgresql@sha256:ee2e3ce7f0ea935c3f4ab245c0b3959c9f1c49816ae02222ceb6bc347f48e43b
        version: 1.28.0
      entries:
      - name: cloudnative-pg.v1.28.0
        version: 1.28.0
      - name: cloudnative-pg.v1.27.1
        version: 1.27.1
      - name: cloudnative-pg.v1.27.0
        version: 1.27.0
      - name: cloudnative-pg.v1.26.1
        version: 1.26.1
      - name: cloudnative-pg.v1.26.0
        version: 1.26.0
      - name: cloudnative-pg.v1.25.1
        version: 1.25.1
      - name: cloudnative-pg.v1.25.0
        version: 1.25.0
      - name: cloudnative-pg.v1.24.1
        version: 1.24.1
      - name: cloudnative-pg.v1.24.0
        version: 1.24.0
      - name: cloudnative-pg.v1.23.3
        version: 1.23.3
      - name: cloudnative-pg.v1.23.2
        version: 1.23.2
      - name: cloudnative-pg.v1.23.1
        version: 1.23.1
      name: stable-v1
    defaultChannel: stable-v1
    packageName: cloudnative-pg
    provider:
      name: The CloudNativePG Contributors
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ecrpublic-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ecrpublic-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ecrpublic-controller:1.2.0
          createdAt: "2025-11-29T03:26:51Z"
          description: AWS ECR PUBLIC controller is a service controller for managing
            ECR PUBLIC resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Repository represents the state of an AWS ecrpublic Repository
              resource.
            displayName: Repository
            kind: Repository
            name: repositories.ecrpublic.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon ECR PUBLIC resources in AWS from within your Kubernetes cluster.

          **About Amazon ECR PUBLIC**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ECR PUBLIC
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecrpublic
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ECR PUBLIC Developer Resources
          url: https://aws.amazon.com/ECR PUBLIC/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ecrpublic maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ecrpublic-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ecrpublic-controller@sha256:f63dd423730053d25be121eeeda0c5189d3e9bbce4d73963348e7a9220913e36
        version: 1.2.0
      entries:
      - name: ack-ecrpublic-controller.v1.2.0
        version: 1.2.0
      - name: ack-ecrpublic-controller.v1.1.2
        version: 1.1.2
      - name: ack-ecrpublic-controller.v1.1.1
        version: 1.1.1
      - name: ack-ecrpublic-controller.v1.1.0
        version: 1.1.0
      - name: ack-ecrpublic-controller.v1.0.14
        version: 1.0.14
      - name: ack-ecrpublic-controller.v1.0.12
        version: 1.0.12
      name: alpha
    defaultChannel: alpha
    packageName: ack-ecrpublic-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: The bpfman Community
      provider-url: https://bpfman.io/
    name: bpfman-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bpfman-operator.v0.5.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "bpfapplication"
                  },
                  "name": "bpfapplication-sample"
                },
                "spec": {
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/go-app-counter:v0.5.6"
                    }
                  },
                  "nodeselector": {},
                  "programs": [
                    {
                      "kprobe": {
                        "bpffunctionname": "kprobe_counter",
                        "func_name": "try_to_wake_up",
                        "offset": 0,
                        "retprobe": false
                      },
                      "type": "Kprobe"
                    },
                    {
                      "tracepoint": {
                        "bpffunctionname": "tracepoint_kill_recorder",
                        "names": [
                          "syscalls/sys_enter_kill"
                        ]
                      },
                      "type": "Tracepoint"
                    },
                    {
                      "tc": {
                        "bpffunctionname": "stats",
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      },
                      "type": "TC"
                    },
                    {
                      "tcx": {
                        "bpffunctionname": "tcx_stats",
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 500
                      },
                      "type": "TCX"
                    },
                    {
                      "type": "Uprobe",
                      "uprobe": {
                        "bpffunctionname": "uprobe_counter",
                        "containers": {
                          "containernames": [
                            "bpfman",
                            "bpfman-agent"
                          ],
                          "namespace": "bpfman",
                          "pods": {
                            "matchLabels": {
                              "name": "bpfman-daemon"
                            }
                          }
                        },
                        "func_name": "malloc",
                        "retprobe": false,
                        "target": "libc"
                      }
                    },
                    {
                      "type": "XDP",
                      "xdp": {
                        "bpffunctionname": "xdp_stats",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfNsApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "bpfnsapplication"
                  },
                  "name": "bpfapplication-sample",
                  "namespace": "acme"
                },
                "spec": {
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/go-app-counter:v0.5.6"
                    }
                  },
                  "nodeselector": {},
                  "programs": [
                    {
                      "tc": {
                        "bpffunctionname": "stats",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      },
                      "type": "TC"
                    },
                    {
                      "tcx": {
                        "bpffunctionname": "tcx_stats",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "direction": "ingress",
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 500
                      },
                      "type": "TCX"
                    },
                    {
                      "type": "Uprobe",
                      "uprobe": {
                        "bpffunctionname": "uprobe_counter",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "func_name": "malloc",
                        "retprobe": false,
                        "target": "libc"
                      }
                    },
                    {
                      "type": "XDP",
                      "xdp": {
                        "bpffunctionname": "xdp_stats",
                        "containers": {
                          "pods": {
                            "matchLabels": {
                              "app": "nginx"
                            }
                          }
                        },
                        "interfaceselector": {
                          "primarynodeinterface": true
                        },
                        "priority": 55
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "FentryProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "fentryprogram"
                  },
                  "name": "fentry-example"
                },
                "spec": {
                  "bpffunctionname": "test_fentry",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/fentry:v0.5.6"
                    }
                  },
                  "func_name": "do_unlinkat",
                  "nodeselector": {}
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "FexitProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "fexitprogram"
                  },
                  "name": "fexit-example"
                },
                "spec": {
                  "bpffunctionname": "test_fexit",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/fexit:v0.5.6"
                    }
                  },
                  "func_name": "do_unlinkat",
                  "nodeselector": {}
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "KprobeProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "kprobeprogram"
                  },
                  "name": "kprobe-example"
                },
                "spec": {
                  "bpffunctionname": "my_kprobe",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/kprobe:v0.5.6"
                    }
                  },
                  "func_name": "try_to_wake_up",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeselector": {},
                  "offset": 0,
                  "retprobe": false
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcnsprogram"
                  },
                  "name": "tc-containers",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tc_pass:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "interfaces": [
                      "eth0"
                    ]
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcprogram"
                  },
                  "name": "tc-pass-all-nodes"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tc_pass:v0.5.6"
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "primarynodeinterface": true
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcxNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcxnsprogram"
                  },
                  "name": "tcx-containers",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "tcx_next",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tcx_test:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "interfaces": [
                      "eth0"
                    ]
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TcxProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tcxprogram"
                  },
                  "name": "tcx-pass-all-nodes"
                },
                "spec": {
                  "bpffunctionname": "tcx_pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tcx_test:v0.5.6"
                    }
                  },
                  "direction": "ingress",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "primarynodeinterface": true
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "TracepointProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "tracepointprogram"
                  },
                  "name": "tracepoint-example"
                },
                "spec": {
                  "bpffunctionname": "enter_openat",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/tracepoint:v0.5.6"
                    }
                  },
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "names": [
                    "syscalls/sys_enter_openat"
                  ],
                  "nodeselector": {}
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "UprobeNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "uprobensprogram"
                  },
                  "name": "uprobe-example",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "my_uprobe",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/uprobe:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "func_name": "syscall",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeselector": {},
                  "retprobe": false,
                  "target": "libc"
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "UprobeProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "uprobeprogram"
                  },
                  "name": "uprobe-example"
                },
                "spec": {
                  "bpffunctionname": "my_uprobe",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/uprobe:v0.5.6"
                    }
                  },
                  "func_name": "syscall",
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeselector": {},
                  "retprobe": false,
                  "target": "libc"
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "XdpNsProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "xdpnsprogram"
                  },
                  "name": "xdp-ns-pass-all-nodes",
                  "namespace": "acme"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/xdp_pass:v0.5.6"
                    }
                  },
                  "containers": {
                    "containernames": [
                      "nginx"
                    ],
                    "pods": {
                      "matchLabels": {
                        "app": "nginx"
                      }
                    }
                  },
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "interfaces": [
                      "eth0"
                    ]
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "XdpProgram",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "xdpprogram"
                  },
                  "name": "xdp-pass-all-nodes"
                },
                "spec": {
                  "bpffunctionname": "pass",
                  "bytecode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/xdp_pass:v0.5.6"
                    }
                  },
                  "globaldata": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "interfaceselector": {
                    "primarynodeinterface": true
                  },
                  "nodeselector": {},
                  "priority": 0
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/bpfman/bpfman-operator:v0.5.6
          createdAt: "2025-02-18T13:44:53Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: bpfman
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "bpfman",
                "labels": {
                  "pod-security.kubernetes.io/enforce": "privileged",
                  "pod-security.kubernetes.io/audit": "privileged",
                  "pod-security.kubernetes.io/warn": "privileged",
                },
                "annotations": {
                  "openshift.io/node-selector": ""
                },
              }
            }
          operators.openshift.io/infrastructure-features: '["csi", "disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/bpfman/bpfman
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BpfApplication is the Schema for the bpfapplications API
            displayName: Bpf Application
            kind: BpfApplication
            name: bpfapplications.bpfman.io
            version: v1alpha1
          - description: BpfNsApplication is the Schema for the BpfNsApplications
              API
            displayName: Bpf Namespaced Application
            kind: BpfNsApplication
            name: bpfnsapplications.bpfman.io
            version: v1alpha1
          - description: BpfNsProgram is the Schema for the BpfNsProgram API
            displayName: Bpf Namespaced Program
            kind: BpfNsProgram
            name: bpfnsprograms.bpfman.io
            version: v1alpha1
          - description: BpfProgram is the Schema for the BpfProgram API
            displayName: Bpf Program
            kind: BpfProgram
            name: bpfprograms.bpfman.io
            version: v1alpha1
          - description: FentryProgram is the Schema for the Fentryprograms API
            displayName: Fentry Program
            kind: FentryProgram
            name: fentryprograms.bpfman.io
            version: v1alpha1
          - description: FexitProgram is the Schema for the Fexitprograms API
            displayName: Fexit Program
            kind: FexitProgram
            name: fexitprograms.bpfman.io
            version: v1alpha1
          - description: KprobeProgram is the Schema for the Kprobeprograms API
            displayName: Kprobe Program
            kind: KprobeProgram
            name: kprobeprograms.bpfman.io
            version: v1alpha1
          - description: TcNsProgram is the Schema for the Tcnsprograms API
            displayName: TC Namespaced Program
            kind: TcNsProgram
            name: tcnsprograms.bpfman.io
            version: v1alpha1
          - description: TcProgram is the Schema for the Tcprograms API
            displayName: TC Program
            kind: TcProgram
            name: tcprograms.bpfman.io
            version: v1alpha1
          - description: TcxNsProgram is the Schema for the Tcxnsprograms API
            displayName: TCX Namespaced Program
            kind: TcxNsProgram
            name: tcxnsprograms.bpfman.io
            version: v1alpha1
          - description: TcxProgram is the Schema for the Tcxprograms API
            displayName: TCX Program
            kind: TcxProgram
            name: tcxprograms.bpfman.io
            version: v1alpha1
          - description: TracepointProgram is the Schema for the Tracepointprograms
              API
            displayName: Tracepoint Program
            kind: TracepointProgram
            name: tracepointprograms.bpfman.io
            version: v1alpha1
          - description: UprobeNsProgram is the Schema for the Uprobensprograms API
            displayName: Uprobe Namespaced Program
            kind: UprobeNsProgram
            name: uprobensprograms.bpfman.io
            version: v1alpha1
          - description: UprobeProgram is the Schema for the Uprobeprograms API
            displayName: Uprobe Program
            kind: UprobeProgram
            name: uprobeprograms.bpfman.io
            version: v1alpha1
          - description: XdpNsProgram is the Schema for the Xdpnsprograms API
            displayName: Xdp Namespaced Program
            kind: XdpNsProgram
            name: xdpnsprograms.bpfman.io
            version: v1alpha1
          - description: XdpProgram is the Schema for the Xdpprograms API
            displayName: Xdp Program
            kind: XdpProgram
            name: xdpprograms.bpfman.io
            version: v1alpha1
        description: "The bpfman Operator is a Kubernetes Operator for deploying [bpfman](https://bpfman.netlify.app/),
          a system daemon\nfor managing eBPF programs. It deploys bpfman itself along
          with CRDs to make deploying\neBPF programs in Kubernetes much easier.\n\n##
          Quick Start\n\nTo get bpfman up and running quickly simply click 'install'
          to deploy the bpfman-operator in the bpfman namespace via operator-hub.\n##
          Configuration\n\nThe `bpfman-config` configmap is automatically created
          in the `bpfman` namespace and used to configure the bpfman deployment.\n\nTo
          edit the config simply run\n\n```bash\nkubectl edit cm bpfman-config\n```\n\nThe
          following fields are adjustable\n\n- `bpfman.agent.image`: The image used
          for the bpfman-agent`\n- `bpfman.image`: The image used for bpfman`\n- `bpfman.log.level`:
          the log level for bpfman, currently supports `debug`, `info`, `warn`, `error`,
          and `fatal`, defaults to `info`\n- `bpfman.agent.log.level`: the log level
          for the bpfman-agent currently supports `info`, `debug`, and `trace` \n\nThe
          bpfman operator deploys eBPF programs via CRDs. The following CRDs are currently
          available, \n\n- BpfApplication\n- FentryProgram\n- FexitProgram\n - KprobeProgram\n-
          TcProgram\n- TcxProgram\n- TracepointProgram\n- UprobeProgram\n- XdpProgram\n
          - BpfNsApplication\n- TcNsProgram\n- TcxNsProgram\n- UprobeNsProgram\n-
          XdpNsProgram\n- BpfProgram\n - BpfNsProgram\n\n ## More information\n\nPlease
          checkout the [bpfman community website](https://bpfman.io/) for more information."
        displayName: Bpfman Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ebpf
        - kubernetes
        links:
        - name: bpfman website
          url: https://bpfman.io/
        maintainers:
        - email: astoycos@redhat.com
          name: Andrew Stoycos
        - email: afredette@redhat.com
          name: Andre Fredette
        maturity: alpha
        provider:
          name: The bpfman Community
          url: https://bpfman.io/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/bpfman-operator@sha256:6b3603c7c1917c67b5aa57202d1d2fdc0d9ac6b3a9373afa7172f322b3b3fa9b
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/bpfman/bpfman-operator:v0.5.6
        version: 0.5.6
      entries:
      - name: bpfman-operator.v0.5.6
        version: 0.5.6
      - name: bpfman-operator.v0.5.5
        version: 0.5.5
      - name: bpfman-operator.v0.5.4
        version: 0.5.4
      - name: bpfman-operator.v0.5.2
        version: 0.5.2
      - name: bpfman-operator.v0.5.1
        version: 0.5.1
      - name: bpfman-operator.v0.5.0
        version: 0.5.0
      name: alpha
    defaultChannel: alpha
    packageName: bpfman-operator
    provider:
      name: The bpfman Community
      url: https://bpfman.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: keepalived-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keepalived-operator.v1.5.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "KeepalivedGroup",
                "metadata": {
                  "name": "keepalivedgroup-workers"
                },
                "spec": {
                  "blacklistRouterIDs": [
                    1,
                    2
                  ],
                  "image": "registry.redhat.io/openshift4/ose-keepalived-ipfailover",
                  "interface": "ens3",
                  "nodeSelector": {
                    "node-role.kubernetes.io/loadbalancer": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Networking, Cloud Provider
          certified: "false"
          containerImage: quay.io/redhat-cop/keepalived-operator@sha256:cd0c2f7df82df1178795e4a18a0942da33adb9670b192a7b7a2b1483a5b4ccf8
          createdAt: "2023-03-11T18:48:22Z"
          description: This operator provides a simple way to create self-hosted load
            balancers using keepalived.
          operatorframework.io/suggested-namespace: keepalived-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/keepalived-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: KeepalivedGroup
            name: keepalivedgroups.redhatcop.redhat.io
            version: v1alpha1
        description: "The objective of the keepalived operator is to allow for a way
          to create self-hosted load balancers in an automated way. From a user experience
          point of view the behavior is the same as of when creating [`LoadBalancer`](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
          services with a cloud provider able to manage them.\n\nThe keepalived operator
          can be used in all environments that allows nodes to advertise additional
          IPs on their NICs (and at least for now, in networks that allow multicast),
          however it's mainly aimed at supporting LoadBalancer services and ExternalIPs
          on bare metal installations (or other installation environments where a
          cloud provider is not available).\n\nOne possible use of the keepalived
          operator is also to support [OpenShift Ingresses](https://docs.openshift.com/container-platform/4.5/networking/configuring_ingress_cluster_traffic/overview-traffic.html)
          in environments where an external load balancer cannot be provisioned.\n\n##
          How it works\n\nThe keepalived operator will create one or more [VIPs](https://en.wikipedia.org/wiki/Virtual_IP_address)
          (an HA IP that floats between multiple nodes), based on the [`LoadBalancer`](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
          services and/or services requesting [`ExternalIPs`](https://kubernetes.io/docs/concepts/services-networking/service/#external-ips).\n\nFor
          `LoadBalancer` services the IPs found at `.Status.LoadBalancer.Ingress[].IP`
          will become VIPs.\n\nFor services requesting a `ExternalIPs`, the IPs found
          at `.Spec.ExternalIPs[]` will become VIPs.\n\nNote that a service can be
          of `LoadBalancer` type and also request `ExternalIPs`, it this case both
          sets of IPs will become VIPs.\n\nDue to a [keepalived](https://www.keepalived.org/manpage.html)
          limitation a single keepalived cluster can manage up to 256 VIP configurations.
          Multiple keepalived clusters can coexists in the same network as long as
          they use different multicast ports [TODO verify this statement].\n\nTo address
          this limitation the `KeepalivedGroup` [CRD](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/)
          has been introduced. This CRD is supposed to be configured by an administrator
          and allows you to specify a node selector to pick on which nodes the keepalived
          pods should be deployed. Here is an example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          KeepalivedGroup\nmetadata:\n  name: keepalivedgroup-router\nspec:\n  image:
          registry.redhat.io/openshift4/ose-keepalived-ipfailover\n  interface: ens3\n
          \ nodeSelector:\n    node-role.kubernetes.io/loadbalancer: \"\"\n  blacklistRouterIDs:\n
          \ - 1\n  - 2  \n```\n\nThis KeepalivedGroup will be deployed on all the
          nodes with role `loadbalancer`. One must also specify the network device
          on which the VIPs will be exposed, it is assumed that all the nodes have
          the same network device configuration.\n\nServices must be annotated to
          opt-in to being observed by the keepalived operator and to specify which
          KeepalivedGroup they refer to. The annotation looks like this:\n\n`keepalived-operator.redhat-cop.io/keepalivedgroup:
          <keepalivedgroup namespace>/<keepalivedgroup-name>`\n\nThe image used for
          the keepalived containers can be specified with `.Spec.Image` it will default
          to `registry.redhat.io/openshift4/ose-keepalived-ipfailover` if undefined.
          \n\n## Requirements\n\n### Security Context Constraints\n\nEach KeepalivedGroup
          deploys a [daemonset](https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/)
          that requires the [privileged scc](https://docs.openshift.com/container-platform/4.5/authentication/managing-security-context-constraints.html),
          this permission must be given to the `default` service account in the namespace
          where the keepalived group is created by and administrator.\n\n```shell\noc
          adm policy add-scc-to-user privileged -z default -n keepalived-operator\n```\n\n###
          Cluster Network Operator\n\nIn Openshift, use of an external IP address
          is governed by the following fields in the `Network.config.openshift.io`
          CR named `cluster`\n\n* `spec.externalIP.autoAssignCIDRs` defines an IP
          address block used by the load balancer when choosing an external IP address
          for the service. OpenShift supports only a single IP address block for automatic
          assignment.\n\n* `spec.externalIP.policy` defines the permissible IP address
          blocks when manually specifying an IP address. OpenShift does not apply
          policy rules to IP address blocks defined by `spec.externalIP.autoAssignCIDRs`\n\nThe
          following patch can be used to configure the Cluster Network Operator:\n\n```yaml\nspec:\n
          \ externalIP:\n    policy:\n      allowedCIDRs:\n      - ${ALLOWED_CIDR}\n
          \   autoAssignCIDRs:\n      - \"${AUTOASSIGNED_CIDR}\"\n```\n\nHere is an
          example of how to apply the patch:\n\n```shell\nexport ALLOWED_CIDR=\"192.168.131.128/26\"\nexport
          AUTOASSIGNED_CIDR=\"192.168.131.192/26\"\noc patch network cluster -p \"$(envsubst
          < ./network-patch.yaml | yq r -j -)\" --type=merge\n```\nAdditionally, the
          fields can be edited manually via `oc edit Network.config.openshift.io cluster`\n\n##
          Blacklisting router IDs\n\nIf the Keepalived pods are deployed on nodes
          which are in the same network (same broadcast domain to be precise) with
          other keepalived the process, it's necessary to ensure that there is no
          collision between the used routers it.\nFor this purpose it is possible
          to provide a `blacklistRouterIDs` field with a list of black-listed IDs
          that will not be used.\n\n## OpenShift RHV, vSphere, OSP and bare metal
          IPI instructions\n\nWhen IPI is used for RHV, vSphere, OSP or bare metal
          platforms, three keepalived VIPs are deployed. To make sure that keepalived-operator
          can work in these environment we need to discover and blacklist the corresponding
          VRRP router IDs.\n\nTo discover the VRRP router IDs being used, run the
          following command, you can run this command from you laptop:\n\n```shell\npodman
          run quay.io/openshift/origin-baremetal-runtimecfg:4.5 vr-ids <cluster_name>\n```\n\nIf
          you don't know your cluster name, run this command:\n\n```shell\npodman
          run quay.io/openshift/origin-baremetal-runtimecfg:4.5 vr-ids $(oc get cm
          cluster-config-v1 -n kube-system -o jsonpath='{.data.install-config}'| yq
          -r .metadata.name)\n```\n\nThen use these [instructions](#Blacklisting-router-IDs)
          to blacklist those VRRP router IDs.\n\n## Verbatim Configurations\n\nKeepalived
          has dozens of [configurations](https://www.keepalived.org/manpage.html).
          At the early stage of this project it's difficult to tell which one should
          be modeled in the API. Yet, users of this project may still need to use
          them. To account for that there is a way to pass verbatim options both at
          the keepalived group level (which maps to the keepalived config `global_defs`
          section) and at the service level (which maps to the keepalived config `vrrp_instance`
          section).\n\nKeepalivedGroup-level verbatim configurations can be passed
          as in the following example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          KeepalivedGroup\nmetadata:\n  name: keepalivedgroup-router\nspec:\n  interface:
          ens3\n  nodeSelector:\n    node-role.kubernetes.io/loadbalancer: \"\"\n
          \ verbatimConfig:  \n    vrrp_iptables: my-keepalived\n```\n\nthis will
          map to the following `global_defs`:\n\n```\n    global_defs {\n        router_id
          keepalivedgroup-router\n        vrrp_iptables my-keepalived\n    }\n```\n\nService-level
          verbatim configurations can be passed as in the following example:\n\n```yaml\napiVersion:
          v1\nkind: Service\nmetadata:\n  annotations:\n    keepalived-operator.redhat-cop.io/keepalivedgroup:
          keepalived-operator/keepalivedgroup-router\n    keepalived-operator.redhat-cop.io/verbatimconfig:
          '{ \"track_src_ip\": \"\" }'\n```\n\nthis will map to the following `vrrp_instance`
          section\n\n```\n    vrrp_instance openshift-ingress/router-default {\n        interface
          ens3\n        virtual_router_id 1  \n        virtual_ipaddress {\n          192.168.131.129\n
          \       }\n        track_src_ip\n    }\n```\n\n## Metrics collection\n\nEach
          keepalived pod exposes a [Prometheus](https://prometheus.io/) metrics port
          at `9650`. Metrics are collected with [keepalived_exporter](github.com/gen2brain/keepalived_exporter),
          the available metrics are described in the project documentation.\n\nWhen
          a keepalived group is created a [`PodMonitor`](https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#podmonitor)
          rule to collect those metrics. All PodMonitor resources created that way
          have the label: `metrics: keepalived`. It is up to you to make sure your
          Prometheus instance watches for those `PodMonitor` rules. Here is an example
          of a fragment of a `Prometheus` CR configured to collect the keepalived
          pod metrics:\n\n```yaml\n  podMonitorSelector:\n    matchLabels:\n      metrics:
          keepalived\n```\n"
        displayName: Keepalived Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - loadbalancer
        - keepalived
        - ipfailover
        - externalIP
        - self-hosted
        links:
        - name: Keepalived Operator
          url: https://github.com/redhat-cop/keepalived-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/keepalived-operator
        maintainers:
        - email: rspazzol@redhat.com'
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/keepalived-operator@sha256:5a46fcb72f02a1f0d9cbc72f44948ef4b09149a4b3fe2e45fd31df90d20b3c56
        - quay.io/redhat-cop/keepalived-operator@sha256:cd0c2f7df82df1178795e4a18a0942da33adb9670b192a7b7a2b1483a5b4ccf8
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.5.4
      entries:
      - name: keepalived-operator.v1.5.4
        version: 1.5.4
      - name: keepalived-operator.v1.5.3
        version: 1.5.3
      - name: keepalived-operator.v1.5.2
        version: 1.5.2
      - name: keepalived-operator.v1.5.1
        version: 1.5.1
      - name: keepalived-operator.v1.5.0
        version: 1.5.0
      - name: keepalived-operator.v1.4.2
        version: 1.4.2
      - name: keepalived-operator.v1.4.1
        version: 1.4.1
      - name: keepalived-operator.v1.4.0
        version: 1.4.0
      - name: keepalived-operator.v1.3.4
        version: 1.3.4
      - name: keepalived-operator.v1.3.3
        version: 1.3.3
      - name: keepalived-operator.v1.3.2
        version: 1.3.2
      - name: keepalived-operator.v1.3.1
        version: 1.3.1
      - name: keepalived-operator.v1.3.0
        version: 1.3.0
      - name: keepalived-operator.v1.2.2
        version: 1.2.2
      - name: keepalived-operator.v1.2.1
        version: 1.2.1
      - name: keepalived-operator.v1.2.0
        version: 1.2.0
      - name: keepalived-operator.v1.1.0
        version: 1.1.0
      - name: keepalived-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: keepalived-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Pulp Community
      provider-url: https://github.com/pulp/pulp-operator
    name: pulp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pulp-operator.v1.0.0-alpha.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "Pulp",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "api": {
                    "replicas": 1
                  },
                  "cache_enabled": true,
                  "content": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "file_storage_access_mode": "ReadWriteMany",
                  "file_storage_size": "10Gi",
                  "ingress_type": "Route",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/pulp/"
                  },
                  "storage_type": "File",
                  "worker": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "Pulp",
                "metadata": {
                  "name": "example-pulp"
                },
                "spec": {
                  "api": {
                    "replicas": 1
                  },
                  "cache": {
                    "enabled": true,
                    "redis_storage_class": "standard"
                  },
                  "content": {
                    "replicas": 1
                  },
                  "database": {
                    "postgres_storage_class": "standard"
                  },
                  "deployment_type": "pulp",
                  "file_storage_access_mode": "ReadWriteOnce",
                  "file_storage_size": "2Gi",
                  "file_storage_storage_class": "standard",
                  "image_version": "nightly",
                  "image_web_version": "nightly",
                  "ingress_type": "nodeport",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/pulp/",
                    "telemetry": false
                  },
                  "web": {
                    "replicas": 1
                  },
                  "worker": {
                    "replicas": 1
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "Pulp",
                "metadata": {
                  "name": "galaxy-example"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "api": {
                    "replicas": 1
                  },
                  "content": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "database": {
                    "postgres_storage_class": "standard"
                  },
                  "deployment_type": "galaxy",
                  "file_storage_access_mode": "ReadWriteMany",
                  "file_storage_size": "10Gi",
                  "file_storage_storage_class": "standard",
                  "image": "quay.io/pulp/galaxy-minimal",
                  "image_version": "nightly",
                  "image_web": "quay.io/pulp/galaxy-web",
                  "image_web_version": "nightly",
                  "ingress_type": "nodeport",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/api/galaxy/pulp/",
                    "telemetry": false
                  },
                  "signing_scripts_configmap": "signing-scripts",
                  "signing_secret": "signing-galaxy",
                  "storage_type": "File",
                  "web": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "worker": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "PulpBackup",
                "metadata": {
                  "name": "pulpbackup-sample"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "backup_storage_class": "standard",
                  "deployment_name": "galaxy-example",
                  "deployment_type": "galaxy",
                  "instance_name": "pulp",
                  "postgres_configuration_secret": "galaxy-example-postgres-configuration"
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1alpha1",
                "kind": "PulpRestore",
                "metadata": {
                  "name": "ci-pulprestore"
                },
                "spec": {
                  "backup_name": "pulpbackup-sample",
                  "deployment_name": "galaxy-example"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          containerImage: quay.io/pulp/pulp-operator:v1.0.0-alpha.1
          createdAt: "2021-03-26 16:57:40"
          description: Pulp is a platform for managing repositories of software packages
            and making them available to a large number of consumers.
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/pulp/pulp-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PulpBackup is the Schema for the pulpbackups API
            displayName: Pulp Backup
            kind: PulpBackup
            name: pulpbackups.repo-manager.pulpproject.org
            version: v1alpha1
          - description: PulpRestore is the Schema for the pulprestores API
            displayName: Pulp Restore
            kind: PulpRestore
            name: pulprestores.repo-manager.pulpproject.org
            version: v1alpha1
          - description: Pulp is the Schema for the pulps API
            displayName: Pulp
            kind: Pulp
            name: pulps.repo-manager.pulpproject.org
            version: v1alpha1
        description: |-
          [Pulp](https://pulpproject.org/) is a platform for managing repositories of content, such as software packages, and making them available to a large number of consumers.

          With Pulp you can:

          * Locally mirror all or part of a repository
          * Host your own content in a new repository
          * Manage content from multiple sources in one place
          * Promote content through different repos in an organized way

          If you have dozens, hundreds, or thousands of software packages and need a better way to manage them, Pulp can help.

          Pulp is completely free and open-source!

          * License: GPLv2+
          * Documentation: [https://docs.pulpproject.org/](https://docs.pulpproject.org/)
          * Source: [https://github.com/pulp/pulpcore/](https://github.com/pulp/pulpcore/)

          For more information, check out the project website: [https://pulpproject.org](https://pulpproject.org)

          If you want to evaluate Pulp quickly, try [Pulp in One Container](https://pulpproject.org/pulp-in-one-container/)

          ## Pulp Operator

          Pulp Operator is under active development, with the goal to provide a scalable and robust cluster for Pulp 3.

          Note that Pulp operator works with three different types of service containers (the operator itself, the main service and the web service):

          |           | Operator | Main | Web |
          | --------- | -------- | ---- | --- |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[pulp-minimal](https://quay.io/repository/pulp/pulp-minimal?tab=tags) | [pulp-web](https://quay.io/repository/pulp/pulp-web?tab=tags) |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[galaxy-minimal](https://quay.io/repository/pulp/galaxy-minimal?tab=tags) | [galaxy-web](https://quay.io/repository/pulp/galaxy-web?tab=tags) |

          <br>Pulp operator is manually built and [hosted on quay.io](https://quay.io/repository/pulp/pulp-operator). Read more about the container images [here](https://docs.pulpproject.org/pulp_operator/container/).

          ## Custom Resource Definitions
          Pulp Operator currently provides three different kinds of [Custom Resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#custom-resources): Pulp, Pulp Backup and Pulp Restore.
          ### Pulp
          Manages the Pulp application and its deployments, services, etc.
          ### Pulp Backup
          Manages pulp backup.

          ### Pulp Restore
          Manages the restoration of a pulp backup.

          ## Get Help

          Documentation: [https://docs.pulpproject.org/pulp_operator/](https://docs.pulpproject.org/pulp_operator/)

          Issue Tracker: [https://github.com/pulp/pulp-operator/issues](https://github.com/pulp/pulp-operator/issues)

          Forum: [https://discourse.pulpproject.org/](https://discourse.pulpproject.org/)

          Join [**#pulp** on Matrix](https://matrix.to/#/#pulp:matrix.org)

          Join [**#pulp-dev** on Matrix](https://matrix.to/#/#pulp-dev:matrix.org) for Developer discussion.
        displayName: Pulp Project
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pulp
        - pulpcore
        - content
        - repositories
        - lifecycle
        links:
        - name: Pulp Operator
          url: https://github.com/pulp/pulp-operator
        - name: Pulp Project
          url: https://pulpproject.org/
        - name: Docs
          url: https://docs.pulpproject.org/pulp_operator/
        maintainers:
        - email: pulp-list@redhat.com
          name: Pulp Community
        maturity: beta
        provider:
          name: Pulp Community
          url: https://github.com/pulp/pulp-operator
        relatedImages:
        - docker.io/library/postgres:13
        - docker.io/library/redis:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/openshift-community-operators/pulp-operator@sha256:1926e96b185443ff0c7a2861cefc2e3aded0c0493e0d7f7d78e45447e06750d4
        - quay.io/pulp/pulp-minimal:stable
        - quay.io/pulp/pulp-operator:v1.0.0-alpha.1
        - quay.io/pulp/pulp-web:stable
        version: 1.0.0-alpha.1
      entries:
      - name: pulp-operator.v1.0.0-alpha.1
        version: 1.0.0-alpha.1
      name: alpha
    - currentCSV: pulp-operator.v1.0.0-beta.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "Pulp",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "api": {
                    "replicas": 1
                  },
                  "cache": {
                    "enabled": true
                  },
                  "content": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "ingress_type": "nodeport",
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "api_root": "/pulp/"
                  },
                  "worker": {
                    "replicas": 2,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "Pulp",
                "metadata": {
                  "name": "galaxy-example"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "api": {
                    "replicas": 1
                  },
                  "content": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "database": {
                    "postgres_storage_class": "standard"
                  },
                  "deployment_type": "galaxy",
                  "file_storage_access_mode": "ReadWriteMany",
                  "file_storage_size": "10Gi",
                  "file_storage_storage_class": "standard",
                  "image": "quay.io/pulp/galaxy-minimal",
                  "image_version": "4.6.3",
                  "image_web": "quay.io/pulp/galaxy-web",
                  "image_web_version": "4.6.3",
                  "ingress_type": "nodeport",
                  "nodeport_port": 30000,
                  "pulp_settings": {
                    "allowed_export_paths": [
                      "/tmp"
                    ],
                    "allowed_import_paths": [
                      "/tmp"
                    ],
                    "analytics": false,
                    "ansible_api_hostname": "http://nodeport.local:30000",
                    "api_root": "/api/galaxy/pulp/",
                    "content_origin": "http://nodeport.local:30000",
                    "galaxy_feature_flags": {
                      "ai_deny_index": true,
                      "execution_environments": true
                    },
                    "token_server": "http://nodeport.local:30000/token/"
                  },
                  "signing_scripts": "signing-scripts",
                  "signing_secret": "signing-galaxy",
                  "web": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "worker": {
                    "replicas": 1,
                    "resource_requirements": {
                      "limits": {
                        "cpu": "800m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "256Mi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "PulpBackup",
                "metadata": {
                  "name": "pulpbackup-sample"
                },
                "spec": {
                  "admin_password_secret": "example-pulp-admin-password",
                  "backup_storage_class": "standard",
                  "deployment_name": "galaxy-example",
                  "deployment_type": "galaxy",
                  "postgres_configuration_secret": "galaxy-example-postgres-configuration"
                }
              },
              {
                "apiVersion": "repo-manager.pulpproject.org/v1beta2",
                "kind": "PulpRestore",
                "metadata": {
                  "name": "ci-pulprestore"
                },
                "spec": {
                  "backup_name": "pulpbackup-sample",
                  "deployment_name": "galaxy-example"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: quay.io/pulp/pulp-operator:v1.0.0-beta.4
          createdAt: "2024-01-18T20:33:37Z"
          description: Pulp is a platform for managing repositories of software packages
            and making them available to a large number of consumers.
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/pulp/pulp-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PulpBackup is the Schema for the pulpbackups API
            displayName: Pulp Backup
            kind: PulpBackup
            name: pulpbackups.repo-manager.pulpproject.org
            version: v1beta2
          - description: PulpRestore is the Schema for the pulprestores API
            displayName: Pulp Restore
            kind: PulpRestore
            name: pulprestores.repo-manager.pulpproject.org
            version: v1beta2
          - description: Pulp is the Schema for the pulps API
            displayName: Pulp
            kind: Pulp
            name: pulps.repo-manager.pulpproject.org
            version: v1beta2
        description: |-
          [Pulp](https://pulpproject.org/) is a platform for managing repositories of content, such as software packages, and making them available to a large number of consumers.

          With Pulp you can:

          * Locally mirror all or part of a repository
          * Host your own content in a new repository
          * Manage content from multiple sources in one place
          * Promote content through different repos in an organized way

          If you have dozens, hundreds, or thousands of software packages and need a better way to manage them, Pulp can help.

          Pulp is completely free and open-source!

          * License: GPLv2+
          * Documentation: [https://docs.pulpproject.org/](https://docs.pulpproject.org/)
          * Source: [https://github.com/pulp/pulpcore/](https://github.com/pulp/pulpcore/)

          For more information, check out the project website: [https://pulpproject.org](https://pulpproject.org)

          If you want to evaluate Pulp quickly, try [Pulp in One Container](https://pulpproject.org/pulp-in-one-container/)

          ## Pulp Operator

          Pulp Operator is under active development, with the goal to provide a scalable and robust cluster for Pulp 3.

          Note that Pulp operator works with three different types of service containers (the operator itself, the main service and the web service):

          |           | Operator | Main | Web |
          | --------- | -------- | ---- | --- |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[pulp-minimal](https://quay.io/repository/pulp/pulp-minimal?tab=tags) | [pulp-web](https://quay.io/repository/pulp/pulp-web?tab=tags) |
          | **Image** | [pulp-operator](https://quay.io/repository/pulp/pulp-operator?tab=tags) |[galaxy-minimal](https://quay.io/repository/pulp/galaxy-minimal?tab=tags) | [galaxy-web](https://quay.io/repository/pulp/galaxy-web?tab=tags) |

          <br>Pulp operator is manually built and [hosted on quay.io](https://quay.io/repository/pulp/pulp-operator). Read more about the container images [here](https://docs.pulpproject.org/pulp_operator/container/).

          ## Custom Resource Definitions
          Pulp Operator currently provides three different kinds of [Custom Resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#custom-resources): Pulp, Pulp Backup and Pulp Restore.
          ### Pulp
          Manages the Pulp application and its deployments, services, etc.
          ### Pulp Backup
          Manages pulp backup.

          ### Pulp Restore
          Manages the restoration of a pulp backup.

          ## Get Help

          Documentation: [https://docs.pulpproject.org/pulp_operator/](https://docs.pulpproject.org/pulp_operator/)

          Issue Tracker: [https://github.com/pulp/pulp-operator/issues](https://github.com/pulp/pulp-operator/issues)

          Forum: [https://discourse.pulpproject.org/](https://discourse.pulpproject.org/)

          Join [**#pulp** on Matrix](https://matrix.to/#/#pulp:matrix.org)

          Join [**#pulp-dev** on Matrix](https://matrix.to/#/#pulp-dev:matrix.org) for Developer discussion.
        displayName: Pulp Project
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pulp
        - pulpcore
        - content
        - repositories
        - lifecycle
        links:
        - name: Pulp Operator
          url: https://github.com/pulp/pulp-operator
        - name: Pulp Project
          url: https://pulpproject.org/
        - name: Docs
          url: https://docs.pulpproject.org/pulp_operator/
        maintainers:
        - email: pulp-list@redhat.com
          name: Pulp Community
        maturity: beta
        provider:
          name: Pulp Community
          url: https://github.com/pulp/pulp-operator
        relatedImages:
        - quay.io/pulp/pulp-operator:v1.0.0-beta.4
        - quay.io/pulp/pulp-web:stable
        - docker.io/library/postgres:13
        - docker.io/library/redis:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.14.4
        - quay.io/community-operator-pipeline-prod/pulp-operator@sha256:1e75649538f13cf3bb2e6131160f038a70689d6f92a110bdcec348e865040c4a
        - quay.io/pulp/pulp-minimal:stable
        version: 1.0.0-beta.4
      entries:
      - name: pulp-operator.v1.0.0-beta.4
        version: 1.0.0-beta.4
      - name: pulp-operator.v1.0.0-beta.3
        version: 1.0.0-beta.3
      - name: pulp-operator.v1.0.0-beta.2
        version: 1.0.0-beta.2
      - name: pulp-operator.v1.0.0-beta.1
        version: 1.0.0-beta.1
      - name: pulp-operator.v1.0.0-alpha.9
        version: 1.0.0-alpha.9
      - name: pulp-operator.v1.0.0-alpha.8
        version: 1.0.0-alpha.8
      - name: pulp-operator.v1.0.0-alpha.7
        version: 1.0.0-alpha.7
      - name: pulp-operator.v1.0.0-alpha.6
        version: 1.0.0-alpha.6
      - name: pulp-operator.v1.0.0-alpha.5
        version: 1.0.0-alpha.5
      - name: pulp-operator.v1.0.0-alpha.4
        version: 1.0.0-alpha.4
      - name: pulp-operator.v1.0.0-alpha.3
        version: 1.0.0-alpha.3
      - name: pulp-operator.v1.0.0-alpha.2
        version: 1.0.0-alpha.2
      - name: pulp-operator.v1.0.0-alpha.1
        version: 1.0.0-alpha.1
      name: beta
    defaultChannel: beta
    packageName: pulp-operator
    provider:
      name: Pulp Community
      url: https://github.com/pulp/pulp-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Altair Engineering Inc.
      provider-url: ""
    name: anzounstructured-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: anzounstructured-operator.v3.1.300
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "anzounstructured.clusters.cambridgesemantics.com/v1",
                "kind": "AnzoUnstructured",
                "metadata": {
                  "name": "au01"
                },
                "spec": {
                  "auWorker": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app": "anzounstructured"
                          }
                        },
                        "serviceName": "au-au01-w",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app": "anzounstructured"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzo-unstructured-worker@sha256:94e4686d284c876a3dca36f7dfad7a06755f70ece16bf365b3933138b9283aa2",
                                "name": "w",
                                "resources": {
                                  "limits": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  },
                                  "requests": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  }
                                }
                              }
                            ],
                            "serviceAccountName": "unstructured-operator"
                          }
                        }
                      }
                    }
                  },
                  "msLeader": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app": "anzounstructured"
                          }
                        },
                        "serviceName": "au-au01-ms",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app": "anzounstructured"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzo-microservices-leader@sha256:3575310a78b08818781cab678d98f31160f539cf7c99c3601a86beb5bcf3d9fb",
                                "name": "ms",
                                "resources": {
                                  "limits": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  },
                                  "requests": {
                                    "cpu": "2",
                                    "memory": "4Gi"
                                  }
                                }
                              }
                            ],
                            "serviceAccountName": "unstructured-operator"
                          }
                        }
                      }
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Basic Install
          categories: Database, Big Data
          certified: "true"
          containerImage: registry.connect.redhat.com/cambridgesemantics/unstructured-operator@sha256:597df02d6e3be3bc42929559c6a14369bc8e5183a39fb6db32f56f1ea6d6b50b
          createdAt: "2025-10-08T07:30:55Z"
          description: Kubernetes Operator for Altair Graph Studio Unstructured
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: unknown
          repository: ""
          support: Cambridge Semantics
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnzoUnstructured is the Schema for the anzounstructureds
              API
            displayName: Altair Graph Studio Unstructured Operator
            kind: AnzoUnstructured
            name: anzounstructureds.anzounstructured.clusters.cambridgesemantics.com
            version: v1
        description: |-
          The Altair Graph Studio Unstructured Operator provides the way to install and configure an anzo unstructured setup on Red Hat K8S environment.
          Currently, this is possible only through existing Anzo installation.

          ### Installation
           Refer [installation instructions]( https://github.com/cambridgesemantics/csi-k8s-operator-anzo-unstructured/blob/v3.1.3/README.md )

          ### Documentation

          You can find our documentation [here.]( https://docs.cambridgesemantics.com/anzo/userdoc/cloud-deployments.htm )

          ### Support

          We offer Support to our customers [here]( https://altair.com/customer-support ) or by emailing the Data Analytics Support team at dasupport@altair.com.
        displayName: Altair Graph Studio Unstructured Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Database
        - Big Data
        links:
        - name: Altair Graph Studio Unstructured Operator
          url: https://github.com/cambridgesemantics/csi-k8s-operator-anzo-unstructured/blob/v3.1.3/README.md
        maintainers:
        - email: fschwichtenberg@altair.com
          name: Frank Schwichtenberg
        maturity: stable
        provider:
          name: Altair Engineering Inc.
        relatedImages:
        - registry.connect.redhat.com/cambridgesemantics/unstructured-operator@sha256:597df02d6e3be3bc42929559c6a14369bc8e5183a39fb6db32f56f1ea6d6b50b
        - registry.connect.redhat.com/cambridgesemantics/anzo-microservices-leader@sha256:3575310a78b08818781cab678d98f31160f539cf7c99c3601a86beb5bcf3d9fb
        - registry.connect.redhat.com/cambridgesemantics/anzo-unstructured-operator-bundle@sha256:cd5c4d5023b5021bae1067ef460bfa65bc50bb804c50331d622edaca6508d9f1
        - registry.connect.redhat.com/cambridgesemantics/anzo-unstructured-worker@sha256:94e4686d284c876a3dca36f7dfad7a06755f70ece16bf365b3933138b9283aa2
        version: 3.1.300
      entries:
      - name: anzounstructured-operator.v3.1.300
        version: 3.1.300
      - name: anzounstructured-operator.v3.1.200
        version: 3.1.200
      - name: anzounstructured-operator.v3.1.104
        version: 3.1.104
      - name: anzounstructured-operator.v3.1.103
        version: 3.1.103
      name: stable
    defaultChannel: stable
    packageName: anzounstructured-operator
    provider:
      name: Altair Engineering Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: mercury-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mercury-operator.1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "mercury.redhat.io/v1alpha1",
                "kind": "ServiceDomainInfra",
                "metadata": {
                  "name": "my-example-sdi",
                  "labels": {
                    "app": "examples"
                  }
                },
                "spec": {
                  "kafka": {
                    "replicas": 3,
                    "storage": {
                      "type": "persistent-claim",
                      "size": "100Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "mercury.redhat.io/v1alpha1",
                "kind": "ServiceDomain",
                "metadata": {
                  "name": "example-customer-credit-rating",
                  "labels": {
                    "app": "example"
                  }
                },
                "spec": {
                  "businessImage": "quay.io/ecosystem-appeng/customer-credit-rating-example:1.0.1",
                  "serviceDomainInfra": "my-example-sdi",
                  "type": "CustomerCreditRating",
                  "expose": ["http"]
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/ecosystem-appeng/mercury-operator:1.0.1
          description: Deploys and manages BIAN Service Domains with the Mercury framework
          repository: https://github.com/open-accelerators/mercury
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A Service Domain Infra represents a group of Service Domains that interact between themselves and
              share the same infrastructure resources
            displayName: Service Domain Infra
            kind: ServiceDomainInfra
            name: servicedomaininfras.mercury.redhat.io
            version: v1alpha1
          - description: |-
              A Service Domain is a standalone service representing one of the BIAN defined Service Domains.
              e.g. Customer Offer. A Service Domain must belong to a Service Domain Infra
            displayName: Service Domain
            kind: ServiceDomain
            name: servicedomains.mercury.redhat.io
            version: v1alpha1
          required:
          - kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - kind: Integration
            name: integrations.camel.apache.org
            version: v1
        description: |-
          # An open platform for a modular, digital bank

          Project Mercury aims at developing a solution approach for the modernization of core banking systems, exploring new technologies and ways of operating in an open hybrid cloud. Creating and enabling the foundation of an open platform for modular, digital banking. Using open-source software and open standards currently available, combined with industry best practices.

          The provided reference implementation can serve as an example. While some resulting artifacts leverage the expertise of developing this solution approach can become reusable templates, repeatable processes, and building blocks of cloud-native components and applications.

          We invite the collaboration of technology experts and experienced business practitioners across the financial services industry to join and participate in co-creation.
        displayName: Mercury Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bian
        - mercury
        links:
        - name: GitHub Repository
          url: https://github.com/open-accelerators/mercury
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/mercury-operator@sha256:0c253fd002cb389db40b2438d4d1c9e953a84125dbf0f4b6f5e3a6efd87cf3a6
        - quay.io/ecosystem-appeng/mercury-operator:1.0.1
        version: 1.0.1
      entries:
      - name: mercury-operator.1.0.1
        version: 1.0.1
      name: 1.0.x
    defaultChannel: 1.0.x
    packageName: mercury-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: stolostron
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stolostron.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "operator.open-cluster-management.io/v1",
            "kind": "MultiClusterHub", "metadata": {"name": "multiclusterhub", "namespace":
            "open-cluster-management"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/stolostron/multiclusterhub-operator@sha256:b00318c5b7b8cd04dc80df188e466853d9c007c854fc16fe5c49c3118b87b348
          createdAt: "2025-11-05T18:50:10Z"
          description: Advanced management of OpenShift and Kubernetes clusters
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1",
            "kind":"MultiClusterHub","metadata":{"name":"multiclusterhub","namespace":"stolostron"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: stolostron
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          repository: https://github.com/stolostron/stolostron
          support: Stolostron Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MulticlusterHub defines the configuration
              for an instance of a multicluster hub, a central point for managing multiple
              Kubernetes-based clusters. The deployment of multicluster hub components
              is determined based on the configuration that is defined in this resource.
            displayName: MultiClusterHub
            kind: MultiClusterHub
            name: multiclusterhubs.operator.open-cluster-management.io
            version: v1
        description: 'Stolostron provides the multicluster hub, a central management
          console for managing multiple Kubernetes-based clusters across data centers,
          public clouds, and private clouds. You can use the hub to create Red Hat
          OpenShift Container Platform clusters on selected providers, or import existing
          Kubernetes-based clusters. After the clusters are managed, you can set compliance
          requirements to ensure that the clusters maintain the specified security
          requirements. You can also deploy business applications across your clusters. '
        displayName: Stolostron
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - install
        - multiclusterhub
        links:
        - name: Documentation
          url: https://github.com/stolostron/stolostron
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: pre-release
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/stolostron/postgresql-12@sha256:da0b8d525b173ef472ff4c71fae60b396f518860d6313c4f3287b844aab6d622
        - quay.io/stolostron/flightctl-worker@sha256:7ad048be0df7dae5f3c322bdc48ed4d1ea52c6e78ad5379c839ad2da4aca8c1a
        - quay.io/stolostron/grc-policy-framework-tests@sha256:ca9492e998c82910b6968111f6173a90fda693c0f98661ad51919da080fa1c59
        - quay.io/stolostron/cluster-proxy-addon@sha256:5c9df70888b1cbc5209b0217bd0312991e6320cd9442e72e208f0af1498aa2f1
        - quay.io/stolostron/redis-7-c9s@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/search-operator-bundle@sha256:d3fbacdcc760259c7abda625c6964d1ad4382b6988a98be0f8f33bbd951dc7be
        - quay.io/stolostron/governance-policy-propagator@sha256:33ce7bdfe0a60411398962ef653b3b877cfb87671b8367b95de4118d000768d5
        - quay.io/stolostron/applifecycle-backend-e2e@sha256:05da11b343938866c5afcfe844bcd15d9c513fdb10fd7ea0d3473b455b427c2a
        - quay.io/stolostron/observatorium@sha256:ed9d70744cc9072d5f096b11bf6e24d83e02a4f8824399b52f3eb1916b897e8c
        - quay.io/stolostron/flightctl-ui@sha256:0eb00d63e1e9a52fd09483bd745e1090c93e71c1f1e1cc56851c70ec5810885c
        - quay.io/stolostron/multiclusterhub-operator@sha256:b00318c5b7b8cd04dc80df188e466853d9c007c854fc16fe5c49c3118b87b348
        - quay.io/stolostron/search-e2e@sha256:51dde02f030e09ef60cafdaaaaaa2e3ed2d37b1ffebe6a355d33bb1aaaa1984b
        - quay.io/stolostron/mtv-integrations@sha256:ea42533e46b99b871bc6cc04a376079e96ef0d4e368b01d5c14de18b791a46f5
        - quay.io/stolostron/multicluster-global-hub-operator@sha256:106efd2686b2ed1b975503f69a509b31c5534b11823739c5a411081f4ac65aed
        - quay.io/stolostron/prometheus@sha256:3bb172a2b7eec02d2543cb48a17b8d8749d5a88ccec9f54ec626c68922473756
        - quay.io/stolostron/multiclusterhub-operator-tests@sha256:12fd6f287fecfea68fc06914b90a50cb75f09c101eb66b9c01f1414e3677d31f
        - quay.io/stolostron/cert-policy-controller@sha256:18dd1db4780f97508a41a1fb80524347366ab1fe706e387f27af25f5458e5f6b
        - quay.io/stolostron/search-collector@sha256:87804b34cecd327768d4468f0a41e9994a1dc3b03afa8754a1a6369e8841622f
        - quay.io/stolostron/origin-cli@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/prometheus-alertmanager@sha256:8735f212888379caff4bec1ae5ff1909c5eecd5e2ce3ce51eb1bbd7b9e54a4b4
        - quay.io/stolostron/postgresql-13@sha256:f8c4c4364ab8d27d2c774cbd02a0d02b9d6e3cb6e8d69af728cdd889df312b56
        - quay.io/stolostron/flightctl-userinfo-proxy@sha256:3c09c290fd935bc32b5ba50d347cd83c9216ffbe4fa196229ff4ef5c1a714818
        - quay.io/stolostron/origin-oauth-proxy-48@sha256:c92a1480b2628d50d8fe158df9451598406e2e5cc7177cf5efcb81caba120afd
        - quay.io/stolostron/helloworld@sha256:4465550664bd210cf0df8edfd706de2fc51cacf01b66a962b5607935f9666ebc
        - quay.io/stolostron/klusterlet-addon-controller@sha256:b927b9b80a4016c4564792ed7326faa67468d4e01ca2b35cf9367e4151f01205
        - quay.io/stolostron/endpoint-monitoring-operator@sha256:ffd1920f90eb7b868414528d5c26656c1fddd84753a9a26ecd16700ca7d2abbe
        - quay.io/stolostron/console@sha256:0c35078ebdf547dac53ba04011e8a60304526bf2af38d98889ca5c17754088fc
        - quay.io/stolostron/grafana-dashboard-loader@sha256:901b5239063a2b0dc265ef3d2938a2c6b888ae7745af43b4283901ad63857d18
        - quay.io/community-operator-pipeline-prod/stolostron@sha256:924b3d003d81dc9cddb23276fe1b764f492e8d9d9247793881ff5bacd95ad4d6
        - quay.io/stolostron/flightctl-db-setup@sha256:44d8d92431035647d8639bfbdbe6c1654f058e0b3276dd5dc24947b335df51c0
        - quay.io/stolostron/kube-state-metrics@sha256:8401353f4de5017e3ec39e4c090753927b0eac986142d886920abf859364da99
        - quay.io/stolostron/thanos-receive-controller@sha256:713d979636547ed46a71ffd4cc02ed7be0deabf777cd431434f01efb27113797
        - quay.io/stolostron/multicluster-operators-channel@sha256:608e7ee661e3e33bf24a12d5353f2fddb5b490c1dbce554f890e0e8a3451f0c6
        - quay.io/stolostron/siteconfig-operator@sha256:91287560901e88799f009ae88da62571c70395bacb344dfedc0c1ac8d5f2660f
        - quay.io/stolostron/flightctl-api@sha256:a9f6e3a11e677820d1d37220b3b5c16c442d5cb4a9da2324e6d4388d8c85f960
        - quay.io/stolostron/metrics-collector@sha256:b743b28b54ae38549713ff24e29d7d7fe9367388d77a18d9a29215be44fa83c4
        - quay.io/stolostron/observatorium-operator@sha256:ba7b2ae31f88208647e7f6b1c238fa89b7c1c91591eddba082d90ac4ab3f709d
        - quay.io/stolostron/must-gather@sha256:0634da33001f41e709ad0414c1062187af76799a188f4535e197358b20656a09
        - quay.io/stolostron/flightctl-periodic@sha256:3c30398ca6f2f5da385e7554bb77a95562d595ae29e72c687ac80737931272a1
        - quay.io/stolostron/multicloud-integrations@sha256:20fc5ce8fdff0931d21d6ec556166eb6dbd986dd566105b029a12ac6abd189d1
        - quay.io/stolostron/insights-client@sha256:15ce834bf864b4d415592ca08d45c74447e4c804d7dbace45b761d3772f515ad
        - quay.io/stolostron/prometheus-operator@sha256:d3e2d11a868de9796abc939ffa97ca549845e6463ba20d0493385421ca8ecae3
        - quay.io/stolostron/multicluster-observability-operator@sha256:2bebf578b17058ab00baa51ec3b74d5d924a27faf1c36b9fae7784ebef47b87e
        - quay.io/stolostron/acm-cli@sha256:edd0eca7da92ac675237059b8c774fd39198c4ec39ab3c71f013b816cf95b62b
        - quay.io/stolostron/origin-oauth-proxy-49-and-up@sha256:0e72ed64cdf76828392ef8cfe4ee49d644a013ac00ff1590d6c53774d77615e3
        - quay.io/stolostron/helloprow-go@sha256:0671c58cc5c1f3fb9e00ae58ad6ef2c1f470867e26637b823261e9ab9279f05e
        - quay.io/stolostron/origin-oauth-proxy-415-and-below@sha256:41762eda03298362d3f97e1fd0be4af429d22658b520f94023941655e062d1a1
        - quay.io/stolostron/flightctl-alert-exporter@sha256:6fc5faba5bd241970751b78072a99695c27756ae793395e9e7f8255d15633623
        - quay.io/stolostron/node-exporter@sha256:80f4bba97684bcebd2e8be3460f47db90dec6432f7f1ae025105d9a438345f52
        - quay.io/stolostron/origin-oauth-proxy-416-and-up@sha256:0b1051e9e7a18a81a9156bbc182424ad3eb480968256a4765cfd07c13bf4931a
        - quay.io/stolostron/search-indexer@sha256:29b90a727c1aed8bf2b439bc24b3adf2d1499dca5055275e0d682db632aff237
        - quay.io/stolostron/cluster-permission@sha256:a495b3baff27bb75dbb9e18e7b7e9a38969847bc188f8c7d17868557e5394e3e
        - quay.io/stolostron/origin-oauth-proxy@sha256:c92a1480b2628d50d8fe158df9451598406e2e5cc7177cf5efcb81caba120afd
        - quay.io/stolostron/kube-rbac-proxy@sha256:d90d4dfb5e0f8eec50bcfc86d4c457123f26cc961e632e26e25f24c5d6699a8c
        - quay.io/stolostron/submariner-addon@sha256:765404364ab4a206f6a198b833ad7c3f47f42781487c2e994a1a3a99a30ad4d4
        - quay.io/stolostron/thanos@sha256:38e9d0c45556878b81c3ef8b05ce6c8bef37597859c390153d34c44de183ef91
        - quay.io/stolostron/cluster-proxy@sha256:decd4ebdad2fcadd15fcc4be977ac85f5bb6331afcd96dc862626ae8e1f58691
        - quay.io/stolostron/observability-e2e-test@sha256:bab2ceda615b69d37cb42595eea4d915001ea6115ea7dd1b4a753ac6480307f5
        - quay.io/stolostron/multicluster-operators-subscription@sha256:7cdecaf11316290512e88483b259f682f78589a9e351e334d0b6c109adcf75d8
        - quay.io/stolostron/cluster-templates-operator@sha256:133e5cede92a5dbe9373982c851ca40134fc4de8665e54de60ecc7738f9f50f7
        - quay.io/stolostron/insights-metrics@sha256:ccf217a70625f2b53e76c6ab1916286b31ba89664aa93d638293b54677c73595
        - quay.io/stolostron/postgresql-16@sha256:db2f73275f9cc0f2d262fadb8e8a5da72b089f9d22f7c859bb1364d9f9a8b622
        - quay.io/stolostron/prometheus-config-reloader@sha256:cac144214cd8d76eda94f6aa2bf55d1cda05a5817c1b6152231c7f1473eee35b
        - quay.io/stolostron/cluster-lifecycle-e2e@sha256:1d997d1238d92c852e35162be21c338ff87216e4f92bce24203b997da827197c
        - quay.io/stolostron/grafana@sha256:791c6a90290eb08bbc87d9384042e6246e38e404d2c73958ca962d113c83b83a
        - quay.io/stolostron/flightctl-cli-artifacts@sha256:7bfde294440629efb65c0b5bf22ba0eb12e28a81d0f5da31951eac325501fc85
        - quay.io/stolostron/rbac-query-proxy@sha256:d3496b4c01df742ce8a255f55937335fdb9e55e12a252fd7f8b3ccee1ac8e137
        - quay.io/stolostron/search-v2-api@sha256:f959f84c38b15481e147241772af7a9b840743ac25bd1d02d53751c33f07edb7
        - quay.io/stolostron/multicluster-operators-application@sha256:d5de12b22f933b1c14131d938fd2b6c2081675e039cbb00a8266e94ccd56a375
        - quay.io/stolostron/flightctl-ocp-ui@sha256:5874277619745aacae1b8f8c52cf3c89d70d9097f4e3574a960c1591019ecac1
        - quay.io/stolostron/governance-policy-addon-controller@sha256:0954a617e01bb1b6b052addd29bc99273bd6e9562f36761e87d5735f8debb3e6
        - quay.io/stolostron/search-v2-operator@sha256:0bfe92b74ae6f0f91d3b4c66616aa71c1e8dcfbdafa7ec9a82af792d2bfa92d4
        - quay.io/stolostron/flightctl-alertmanager-proxy@sha256:f5636ff13374fb4fa40d5f3a0b29d10e5d8a04d4275374f7b84a22cb47aa4be5
        - quay.io/stolostron/multicluster-role-assignment@sha256:345b72961a8cc94d21cc7510ae800263e2d97454966d4a8ed4c9a466bc3be19d
        - quay.io/stolostron/volsync-addon-controller@sha256:c95a7e58c42d5ae875cbd7359af0397f2d3cd740c6608240bf4020de1ba73a0e
        - quay.io/stolostron/analytics-recommends@sha256:1d4a3cfb193992bed84578661affc31be25523966af3aea9f13d1d52498bac8b
        - quay.io/stolostron/governance-policy-framework-addon@sha256:a6779f2c42f3f117654a3b380f4c3e9ba858f3bbfe011801fe2fb36fa6168433
        - quay.io/stolostron/iam-policy-controller@sha256:27cefc2f923d7ed216f7e650b569551668d1f67f0047b6b98902d37032f6ab92
        - quay.io/stolostron/bailer@sha256:b6d0f5ff086a0a19e98ef4b60ac4e1c3f61e775863ee772d7829395800eb6492
        - quay.io/stolostron/cluster-backup-controller@sha256:cf3ec9d108e5da4bae12532ab2099eb6244a3015bf347589896367fbcba7c6c9
        - quay.io/stolostron/config-policy-controller@sha256:e9b900ab0b2c04826fea52d88469185d877426b61d023a942570d14c6217591c
        version: 0.8.2
      entries:
      - name: stolostron.v0.8.2
        version: 0.8.2
      - name: stolostron.v0.8.0
        version: 0.8.0
      name: community-0.8
    defaultChannel: community-0.8
    packageName: stolostron
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: namespace-configuration-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: namespace-configuration-operator.v1.2.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GroupConfig",
                "metadata": {
                  "name": "test-groupconfig"
                },
                "spec": {
                  "labelSelector": {
                    "matchLabels": {
                      "type": "team"
                    }
                  },
                  "templates": [
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-dev\n  labels:\n    group: {{ .Name }}  \n"
                    },
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-qa\n  labels:\n    group: {{ .Name }}          \n"
                    },
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-prod\n  labels:\n    group: {{ .Name }}                           \n"
                    },
                    {
                      "objectTemplate": "apiVersion: quota.openshift.io/v1\nkind: ClusterResourceQuota\nmetadata:\n  name: {{ .Name }}-quota\nspec:\n  quota:\n    hard:\n      pods: \"4\" \n      requests.cpu: \"1\" \n      requests.memory: 1Gi \n      requests.ephemeral-storage: 2Gi \n      limits.cpu: \"2\" \n      limits.memory: 2Gi \n      limits.ephemeral-storage: 4Gi\n  selector:\n    labels:\n      matchLabels:\n        group: {{ .Name }}\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "NamespaceConfig",
                "metadata": {
                  "name": "test-namespaceconfig"
                },
                "spec": {
                  "labelSelector": {
                    "matchLabels": {
                      "type": "secure"
                    }
                  },
                  "templates": [
                    {
                      "objectTemplate": "apiVersion: v1\nkind: ResourceQuota\nmetadata:\n  name: standard-sandbox\n  namespace: {{ .Name }}\nspec:\n  hard:\n    pods: \"4\" \n    requests.cpu: \"1\" \n    requests.memory: 1Gi \n    requests.ephemeral-storage: 2Gi \n    limits.cpu: \"2\" \n    limits.memory: 2Gi \n    limits.ephemeral-storage: 4Gi\n"
                    },
                    {
                      "objectTemplate": "kind: EgressNetworkPolicy\napiVersion: network.openshift.io/v1\nmetadata:\n  name: air-gapped\n  namespace: {{ .Name }}  \nspec:\n  egress:\n  - type: Deny\n    to:\n      cidrSelector: 0.0.0.0/0\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "UserConfig",
                "metadata": {
                  "name": "test-user-config"
                },
                "spec": {
                  "providerName": "my-provider",
                  "templates": [
                    {
                      "objectTemplate": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: {{ .Name }}-sandbox\n"
                    },
                    {
                      "objectTemplate": "apiVersion: v1\nkind: ResourceQuota\nmetadata:\n  name: standard-sandbox\n  namespace: {{ .Name }}-sandbox\nspec:\n  hard:\n    pods: \"4\" \n    requests.cpu: \"1\" \n    requests.memory: 1Gi \n    requests.ephemeral-storage: 2Gi \n    limits.cpu: \"2\" \n    limits.memory: 2Gi \n    limits.ephemeral-storage: 4Gi\n"
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/namespace-configuration-operator@sha256:49ed7d6155342adaa2b12fd80c6761c3081d8e6149d187cb7ff91a247cdf2e7a
          createdAt: "2023-11-22T15:58:50Z"
          description: This operator provides a facility to define and enforce namespace
            configurations
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: namespace-configuration-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/namespace-configuration-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GroupConfig is the Schema for the groupconfigs API
            displayName: Group Config
            kind: GroupConfig
            name: groupconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: NamespaceConfig is the Schema for the namespaceconfigs API
            displayName: Namespace Config
            kind: NamespaceConfig
            name: namespaceconfigs.redhatcop.redhat.io
            version: v1alpha1
          - description: UserConfig is the Schema for the userconfigs API
            displayName: User Config
            kind: UserConfig
            name: userconfigs.redhatcop.redhat.io
            version: v1alpha1
        description: "The `namespace-configuration-operator` helps keeping configurations
          related to Users, Groups and Namespaces aligned with one of more policies
          specified as a CRs. The purpose is to provide the foundational building
          block to create an end-to-end onboarding process. \nBy onboarding process
          we mean all the provisioning steps needed to a developer team working on
          one or more applications to OpenShift.\n This usually involves configuring
          resources such as: Groups, RoleBindings, Namespaces, ResourceQuotas, NetworkPolicies,
          EgressNetworkPolicies, etc.... . Depending on the specific environment the
          list could continue.\nNaturally such a process should be as automatic and
          scalable as possible.\n\nWith the namespace-configuration-operator one can
          create rules that will react to the creation of Users, Groups and Namespace
          and will create and enforce a set of resources.\n\nHere are some examples
          of the type of onboarding processes that one could support:\n\n1. [developer
          sandbox](https://github.com/redhat-cop/namespace-configuration-operator/blob/master/examples/user-sandbox/readme.md)\n
          2. [team onboarding](https://github.com/redhat-cop/namespace-configuration-operator//blob/master/examples/team-onboarding/readme.md)
          with support of the entire SDLC in a multitentant environment.\n\nPolicies
          can be expressed with the following CRDs:\n\n| Watched Resource | CRD |\n|--|--|\n
          | Groups | [GroupConfig](#GroupConfig) |\n| Users | [UserConfig](#UserConfig)
          |\n| Namespace | [NamespaceConfig](#NamespaceConfig) |\n\nThese CRDs all
          share some commonalities:\n\n1. Templated Resources\n2. List of ignored
          jason path\n \n### Templated Resources\n\nEach has a parameter called `templatedResources`,
          which is an array. Each element of the array has two fields `objectTemplate`
          and `excludedPaths` (see below).\n\nThe `objectTemplate` field must contains
          a [go template](https://golang.org/pkg/text/template/) that resolves to
          a single API Resource expressed in `yaml`. The template is merged with the
          object selected by the CR. For example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n
          kind: UserConfig\nmetadata:\n  name: test-user-config\nspec:\n  provider:
          corp-ldap\n  templates:\n  - objectTemplate: |\n      apiVersion: v1\n      kind:
          Namespace\n      metadata:\n        name: {{ .Name }}-sandbox\n```\n\nThis
          create a rule in which every time a user from the `corp-ldap` provider is
          created, a namespace called `<username>-sandbox` is also created.\n\n###
          Excluded Paths\n\nThe logic of the `namespace-configuration-operator` is
          to enforce that the resources resolved by processing the templates \"stays
          in place\". In other words if those resources are changed and/or deleted
          they will be reset by the operator.\nBut there are situations in which at
          least part of a resource is allowed to change. Common use cases are: annotations
          and in general the metadata section of a resource can be updated by the
          various operators watching that resources. The status field is often updated
          by the main operator managing that resources. Finally, when applicable the
          `spec.replicas` field should also be allowed to change.\n\nTo handle special
          use case, one can also specify additional *jsonpaths* that should be ignored
          when comparing the desired resource and the current resource and making
          a decision on whether that resource should be reset.\n\nThe following paths
          are always included:\n \n1. `.metadata`\n2. `.status`\n3. `.spec.replicas`\n\n##
          NamespaceConfig\n\n The `NamespaceConfig` CR allows specifying one or more
          objects that will be created in the selected namespaces.\n\nNamespaces can
          be selected by labels or annotations via a label selector for example:\n\n```yaml\napiVersion:
          redhatcop.redhat.io/v1alpha1\n kind: NamespaceConfig\nmetadata:\n  name:
          small-namespace\n  selector:\n    matchLabels:\n      size: small  \n  resources:\n
          \ - apiVersion: v1\n    kind: ResourceQuota\n    metadata:\n      name:
          small-size  \n    spec:\n      hard:\n        requests.cpu: \"4\"\n        requests.memory:
          \"2Gi\"\n```\n\nHere is a `NamespaceConfig` object using a `matchExpressions`
          selector:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n kind: NamespaceConfig\nmetadata:\n
          \ name: tier-config\nspec:\n  annotationSelector:\n    matchExpressions:\n
          \     - {key: tier, operator: In, values: [gold,silver]}\n ```\n\nAlthough
          not enforced by the operator the general expectation is that the NamespaceConfig
          CR will be used to create objects inside the selected namespace.\n \nExamples
          of NamespaceConfig usages can be found [here](https://github.com/redhat-cop/namespace-configuration-operator/blob/master/examples/namespace-config/readme.md)\n
          \n## GroupConfig\n\nThe `GroupConfig` CR allows specifying one or more objects
          that will be created in the selected Group.\nGroups can be selected by labels
          or annotations via a label selector, similarly to the `NamespaceConfig`.\n\nOften
          groups are created in OpenShift by a job that synchronizes an Identity Provider
          with OCP. So the idea is that when new groups are added or deleted the configuration
          in OpenShift will adapt automatically.\n\nAlthough not enforced by the operator,
          GroupConfig are expected to create cluster-scoped resources like Namespaces,
          ClusterResourceQuotas and potentially some namespaced resources like RoleBindings.\n\n##
          UserConfig\n \nIn OpenShift an external user is defined by two entities:
          Users and Identities. There is a relationship of on to many between Users
          and Identities. Given one user, there can be one Identity per authentication
          mechanism.\n\nThe `UserConfig` CR allows specifying one or more objects
          that will be created in the selected User.\nUsers can be selected by label
          or annotation like `NamespaceConfig` and `UserConfig`.\nUSers can also be
          selected by provider name (the name of the authentication mechanism) and
          identity extra field.\n\nHere is an example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          UserConfig\nmetadata:\n  name: test-user-config\nspec:\n  providerName:
          okta-provider\n  identityExtraFieldSelector:\n    matchLabels:\n      sandbox_enabled:
          \"true\"\n  templates:\n  - objectTemplate: |\n      apiVersion: v1\n      kind:
          Namespace\n      metadata:\n        name: {{ .Name }}-sandbox\n ```\n\nUser
          will be selected by this `UserConfig` only if they login via the *okta-provider*
          and if the extra field was populate with the label `sandbox_enabled: \"true\"
          `. Note that not all authentication provider allow populating the extra
          fields in the Identity object.\n"
        displayName: Namespace Configuration Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - namespace
        - user
        - group
        - configuration
        - policy
        - management
        links:
        - name: Namespace Configuration Operator
          url: https://github.com/redhat-cop/namespace-configuration-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/namespace-configuration-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/namespace-configuration-operator@sha256:971991d2bf717001a98b175c50580cd7db9d230492e72670606c2ed50c53feb0
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/namespace-configuration-operator@sha256:49ed7d6155342adaa2b12fd80c6761c3081d8e6149d187cb7ff91a247cdf2e7a
        version: 1.2.6
      entries:
      - name: namespace-configuration-operator.v1.2.6
        version: 1.2.6
      - name: namespace-configuration-operator.v1.2.5
        version: 1.2.5
      - name: namespace-configuration-operator.v1.2.4
        version: 1.2.4
      - name: namespace-configuration-operator.v1.2.3
        version: 1.2.3
      - name: namespace-configuration-operator.v1.2.2
        version: 1.2.2
      - name: namespace-configuration-operator.v1.2.1
        version: 1.2.1
      - name: namespace-configuration-operator.v1.2.0
        version: 1.2.0
      - name: namespace-configuration-operator.v1.1.0
        version: 1.1.0
      - name: namespace-configuration-operator.v1.0.7
        version: 1.0.7
      - name: namespace-configuration-operator.v1.0.6
        version: 1.0.6
      - name: namespace-configuration-operator.v1.0.5
        version: 1.0.5
      - name: namespace-configuration-operator.v1.0.4
        version: 1.0.4
      - name: namespace-configuration-operator.v1.0.3
        version: 1.0.3
      - name: namespace-configuration-operator.v1.0.2
        version: 1.0.2
      - name: namespace-configuration-operator.v1.0.1
        version: 1.0.1
      - name: namespace-configuration-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: namespace-configuration-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Snyk Ltd.
      provider-url: ""
    name: snyk-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: snyk-operator.v1.92.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.helm.k8s.io/v1alpha1",
                "kind": "SnykMonitor",
                "metadata": {
                  "name": "snyk-monitor"
                },
                "spec": {
                  "clusterName": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "snyk/kubernetes-monitor",
                    "tag": "1.92.0-ubi8"
                  },
                  "integrationApi": "",
                  "monitorSecrets": "snyk-monitor",
                  "scope": "Cluster",
                  "temporaryStorageSize": "50Gi",
                  "pvc": {
                    "enabled": false,
                    "create": false,
                    "name": "snyk-monitor-pvc",
                    "storageClassName": null
                  },
                  "initContainerImage": {
                    "repository": "busybox",
                    "tag": "latest"
                  },
                  "requests": {
                    "memory": "400Mi"
                  },
                  "limits": {
                    "memory": "2Gi"
                  },
                  "nodeAffinity": {
                    "disableBetaArchNodeSelector": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Security
          certified: "false"
          containerImage: docker.io/snyk/kubernetes-operator:1.92.0
          createdAt: "2022-06-09T17:49:36Z"
          description: A Kubernetes Operator for creating and managing Snyk controller
            instances.
          olm.skipRange: <1.68.2
          repository: https://github.com/snyk/kubernetes-monitor
          support: Snyk Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a deployment of the Snyk controller, which scans
              container images in the cluster for vulnerabilities.
            displayName: Snyk Monitor
            kind: SnykMonitor
            name: snykmonitors.charts.helm.k8s.io
            version: v1alpha1
        description: |-
          A Kubernetes Operator for creating and managing Snyk Kubernetes controller instances.

          Snyk integrates with Kubernetes, enabling you to import and test your running workloads and identify vulnerabilities in their associated images and configurations that might make those workloads less secure. Once imported, Snyk continues to monitor those workloads, identifying additional security issues as new images are deployed and the workload configuration changes.

          ## Prerequisites

          To start using the Operator and the Snyk controller that it manages, you will need to create a secret containing your Snyk integrationId and Docker config file:

          ```
          kubectl create namespace snyk-monitor
          kubectl create secret generic snyk-monitor -n snyk-monitor --from-literal=dockercfg.json={} --from-literal=integrationId=${SNYK_INTEGRATION_ID}
          ```

          Refer to the [Snyk documentation](https://support.snyk.io/hc/en-us/articles/360003916138-Kubernetes-integration-overview) for more details.
        displayName: Snyk Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - snyk
        - controller
        - monitor
        - operator
        - security
        - cluster
        - container
        - image
        - security
        - vulnerabilities
        - advisories
        - audit
        - scan
        - scanning
        links:
        - name: Website
          url: https://snyk.io
        - name: Documentation
          url: https://support.snyk.io/hc/en-us/articles/360003916138-Kubernetes-integration-overview
        maintainers:
        - email: support@snyk.io
          name: Snyk Ltd.
        maturity: stable
        provider:
          name: Snyk Ltd.
        relatedImages:
        - quay.io/openshift-community-operators/snyk-operator@sha256:97908144406700ae9c038316661dc7904f3e0f4e01b1bbdf68259b59dfb86d6c
        - docker.io/snyk/kubernetes-operator:1.92.0
        version: 1.92.0
      entries:
      - name: snyk-operator.v1.92.0
        version: 1.92.0
      - name: snyk-operator.v1.90.2
        version: 1.90.2
      - name: snyk-operator.v1.90.1
        version: 1.90.1
      - name: snyk-operator.v1.88.4
        version: 1.88.4
      - name: snyk-operator.v1.85.2
        version: 1.85.2
      - name: snyk-operator.v1.82.1
        version: 1.82.1
      - name: snyk-operator.v1.81.1
        version: 1.81.1
      - name: snyk-operator.v1.80.0
        version: 1.80.0
      - name: snyk-operator.v1.73.0
        version: 1.73.0
      - name: snyk-operator.v1.72.0
        version: 1.72.0
      - name: snyk-operator.v1.70.4
        version: 1.70.4
      - name: snyk-operator.v1.70.1
        version: 1.70.1
      name: stable
    defaultChannel: stable
    packageName: snyk-operator
    provider:
      name: Snyk Ltd.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: keycloak-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keycloak-operator.v19.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "externalAccess": {
                    "enabled": true
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "example-keycloakrealm",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realm": {
                    "id": "basic",
                    "realm": "basic",
                    "enabled": true,
                    "displayName": "Basic Realm"
                  },
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakBackup",
                "metadata": {
                  "name": "example-keycloakbackup"
                },
                "spec": {
                  "instanceSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "client-secret",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  },
                  "client": {
                    "clientId": "client-secret",
                    "secret": "client-secret",
                    "clientAuthenticatorType": "client-secret"
                  }
                }
              },
              {
                "apiVersion": "keycloak.org/v1alpha1",
                "kind": "KeycloakUser",
                "metadata": {
                  "name": "example-realm-user",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "user": {
                    "username": "realm_user",
                    "firstName": "John",
                    "lastName": "Doe",
                    "email": "user@example.com",
                    "enabled": true,
                    "emailVerified": false
                  },
                  "realmSelector": {
                    "matchLabels": {
                      "app": "sso"
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "False"
          containerImage: quay.io/keycloak/keycloak-operator:19.0.3-legacy
          createdAt: "2022-10-07 17:00:00"
          description: An Operator for installing and managing Keycloak
          repository: https://github.com/keycloak/keycloak-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak Realm
            displayName: KeycloakRealm
            kind: KeycloakRealm
            name: keycloakrealms.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak Backup
            displayName: KeycloakBackup
            kind: KeycloakBackup
            name: keycloakbackups.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak Client
            displayName: KeycloakClient
            kind: KeycloakClient
            name: keycloakclients.keycloak.org
            version: v1alpha1
          - description: Represents a Keycloak User
            displayName: KeycloakUser
            kind: KeycloakUser
            name: keycloakusers.keycloak.org
            version: v1alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
          * Import Keycloak Clients
          * Import Keycloak Users
          * Create scheduled backups of the database
          * Install Extensions
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/docs/latest/server_installation/index.html#_operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@lists.jboss.org
          name: Keycloak DEV mailing list
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/keycloak/keycloak-operator:19.0.3-legacy
        - quay.io/openshift-community-operators/keycloak-operator@sha256:a4da3bcbb4e99d60b8217d9e62742eeb83eef163dfefb2f7efda131f312e46e3
        version: 19.0.3
      entries:
      - name: keycloak-operator.v19.0.3
        version: 19.0.3
      - name: keycloak-operator.v19.0.2
        version: 19.0.2
      - name: keycloak-operator.v19.0.1
        version: 19.0.1
      - name: keycloak-operator.v19.0.0
        version: 19.0.0
      - name: keycloak-operator.v18.0.2
        version: 18.0.2
      - name: keycloak-operator.v18.0.1
        version: 18.0.1
      - name: keycloak-operator.v18.0.0
        version: 18.0.0
      - name: keycloak-operator.v17.0.1
        version: 17.0.1
      - name: keycloak-operator.v17.0.0
        version: 17.0.0
      - name: keycloak-operator.v16.1.0
        version: 16.1.0
      - name: keycloak-operator.v16.0.0
        version: 16.0.0
      - name: keycloak-operator.v15.1.1
        version: 15.1.1
      - name: keycloak-operator.v15.1.0
        version: 15.1.0
      - name: keycloak-operator.v15.0.2
        version: 15.0.2
      - name: keycloak-operator.v15.0.1
        version: 15.0.1
      - name: keycloak-operator.v15.0.0
        version: 15.0.0
      - name: keycloak-operator.v14.0.0
        version: 14.0.0
      name: alpha
    - currentCSV: keycloak-operator.v20.0.0-alpha.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": "example.org",
                  "tlsSecret": "my-tls-secret"
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "False"
          containerImage: quay.io/keycloak/keycloak-operator:19.0.3
          createdAt: 10/07/22 17:00:00
          description: An Operator for installing and managing Keycloak
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/docs/latest/server_installation/index.html#_operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@lists.jboss.org
          name: Keycloak DEV mailing list
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/keycloak/keycloak-operator:19.0.3
        - quay.io/openshift-community-operators/keycloak-operator@sha256:65fe00f310289b70538a6dde897ef663731d0da44a7bb1d0f55a3001a50e53fa
        version: 20.0.0-alpha.7
      entries:
      - name: keycloak-operator.v20.0.0-alpha.7
        version: 20.0.0-alpha.7
      - name: keycloak-operator.v20.0.0-alpha.6
        version: 20.0.0-alpha.6
      - name: keycloak-operator.v20.0.0-alpha.5
        version: 20.0.0-alpha.5
      - name: keycloak-operator.v20.0.0-alpha.4
        version: 20.0.0-alpha.4
      - name: keycloak-operator.v20.0.0-alpha.3
        version: 20.0.0-alpha.3
      - name: keycloak-operator.v20.0.0-alpha.2
        version: 20.0.0-alpha.2
      - name: keycloak-operator.v20.0.0-alpha.1
        version: 20.0.0-alpha.1
      name: candidate
    - currentCSV: keycloak-operator.v26.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: quay.io/keycloak/keycloak-operator:26.4.7
          createdAt: "2025-12-01T08:24:52Z"
          description: An Operator for installing and managing Keycloak
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: batch
          kind: Job
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: networking.k8s.io
          kind: NetworkPolicy
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/keycloak/keycloak-operator:26.4.7
        - quay.io/community-operator-pipeline-prod/keycloak-operator@sha256:157776c3e6cd0016d7791ffed92f0bfe5ca2658485b427b4e76ddc0c0b37924b
        version: 26.4.7
      entries:
      - name: keycloak-operator.v26.4.7
        version: 26.4.7
      - name: keycloak-operator.v26.4.6
        version: 26.4.6
      - name: keycloak-operator.v26.4.5
        version: 26.4.5
      - name: keycloak-operator.v26.4.4
        version: 26.4.4
      - name: keycloak-operator.v26.4.2
        version: 26.4.2
      - name: keycloak-operator.v26.4.1
        version: 26.4.1
      - name: keycloak-operator.v26.4.0
        version: 26.4.0
      - name: keycloak-operator.v26.3.5
        version: 26.3.5
      - name: keycloak-operator.v26.3.4
        version: 26.3.4
      - name: keycloak-operator.v26.3.3
        version: 26.3.3
      - name: keycloak-operator.v26.3.2
        version: 26.3.2
      - name: keycloak-operator.v26.3.1
        version: 26.3.1
      - name: keycloak-operator.v26.3.0
        version: 26.3.0
      - name: keycloak-operator.v26.2.5
        version: 26.2.5
      - name: keycloak-operator.v26.2.4
        version: 26.2.4
      - name: keycloak-operator.v26.2.3
        version: 26.2.3
      - name: keycloak-operator.v26.2.2
        version: 26.2.2
      - name: keycloak-operator.v26.2.1
        version: 26.2.1
      - name: keycloak-operator.v26.2.0
        version: 26.2.0
      - name: keycloak-operator.v26.1.5
        version: 26.1.5
      - name: keycloak-operator.v26.1.4
        version: 26.1.4
      - name: keycloak-operator.v26.1.3
        version: 26.1.3
      - name: keycloak-operator.v26.1.2
        version: 26.1.2
      - name: keycloak-operator.v26.1.1
        version: 26.1.1
      - name: keycloak-operator.v26.1.0
        version: 26.1.0
      - name: keycloak-operator.v26.0.8
        version: 26.0.8
      - name: keycloak-operator.v26.0.7
        version: 26.0.7
      - name: keycloak-operator.v26.0.6
        version: 26.0.6
      - name: keycloak-operator.v26.0.5
        version: 26.0.5
      - name: keycloak-operator.v26.0.4
        version: 26.0.4
      - name: keycloak-operator.v26.0.2
        version: 26.0.2
      - name: keycloak-operator.v26.0.1
        version: 26.0.1
      - name: keycloak-operator.v26.0.0
        version: 26.0.0
      - name: keycloak-operator.v25.0.6
        version: 25.0.6
      - name: keycloak-operator.v25.0.5
        version: 25.0.5
      - name: keycloak-operator.v25.0.4
        version: 25.0.4
      - name: keycloak-operator.v25.0.2
        version: 25.0.2
      - name: keycloak-operator.v25.0.1
        version: 25.0.1
      - name: keycloak-operator.v25.0.0
        version: 25.0.0
      - name: keycloak-operator.v24.0.5
        version: 24.0.5
      - name: keycloak-operator.v24.0.4
        version: 24.0.4
      - name: keycloak-operator.v24.0.3
        version: 24.0.3
      - name: keycloak-operator.v24.0.2
        version: 24.0.2
      - name: keycloak-operator.v24.0.1
        version: 24.0.1
      - name: keycloak-operator.v24.0.0
        version: 24.0.0
      - name: keycloak-operator.v23.0.7
        version: 23.0.7
      - name: keycloak-operator.v23.0.6
        version: 23.0.6
      - name: keycloak-operator.v23.0.5
        version: 23.0.5
      - name: keycloak-operator.v23.0.4
        version: 23.0.4
      - name: keycloak-operator.v23.0.3
        version: 23.0.3
      - name: keycloak-operator.v23.0.2
        version: 23.0.2
      - name: keycloak-operator.v23.0.1
        version: 23.0.1
      - name: keycloak-operator.v23.0.0
        version: 23.0.0
      - name: keycloak-operator.v22.0.5
        version: 22.0.5
      - name: keycloak-operator.v22.0.4
        version: 22.0.4
      - name: keycloak-operator.v22.0.3
        version: 22.0.3
      - name: keycloak-operator.v22.0.2
        version: 22.0.2
      - name: keycloak-operator.v22.0.1
        version: 22.0.1
      - name: keycloak-operator.v22.0.0
        version: 22.0.0
      - name: keycloak-operator.v21.1.2
        version: 21.1.2
      - name: keycloak-operator.v21.1.1
        version: 21.1.1
      - name: keycloak-operator.v21.1.0
        version: 21.1.0
      - name: keycloak-operator.v21.0.2
        version: 21.0.2
      - name: keycloak-operator.v21.0.1
        version: 21.0.1
      - name: keycloak-operator.v21.0.0
        version: 21.0.0
      - name: keycloak-operator.v20.0.3
        version: 20.0.3
      - name: keycloak-operator.v20.0.2
        version: 20.0.2
      - name: keycloak-operator.v20.0.1
        version: 20.0.1
      - name: keycloak-operator.v20.0.0
        version: 20.0.0
      name: fast
    defaultChannel: fast
    packageName: keycloak-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: logic-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: logic-operator.v1.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "host/namespace",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          createdAt: "2025-09-28T18:26:11Z"
          description: OpenShift Serverless Logic Kubernetes Operator for deploying
            workflow applications based on the CNCF Serverless Workflow specification
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: openshift-serverless-logic
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kubesmarts/kie-tools
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: Sonata Flow Build
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: Sonata Flow Cluster Platform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: Sonata Flow Platform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: Sonata Flow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          OpenShift Serverless Logic Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification v0.8](https://serverlessworkflow.io/).
        displayName: OpenShift Serverless Logic Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        - workflows
        links:
        - name: Documentation
          url: https://docs.openshift.com/serverless/
        - name: Source Repository
          url: https://github.com/kiegroup/kogito-serverless-operator/
        maintainers:
        - email: serverless-logic-team@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/logic-swf-devmode-rhel9@sha256:e51b77bde368c4d34b9e1536677c1bd02182c2d6ee3a999d63f213c6853510ea
        - registry.redhat.io/openshift-serverless-1/logic-data-index-postgresql-rhel9@sha256:071078f5f5963fb07d0b161fa925c4681045229778cc911800a54529a14b3797
        - registry.redhat.io/openshift-serverless-1/logic-operator-bundle@sha256:90f9864ae2872acaedf12afc9c707e26bdaba0ef48623153ad0881b1b9945dc9
        - registry.redhat.io/openshift-serverless-1/logic-rhel9-operator@sha256:e7e35b4a80ed8261f09b474c3449f34071bc9636f151ea6604c1f9efd5195827
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4564ca3dc5bac80d6faddaf94c817fbbc270698a9399d8a21ee1005d85ceda56
        - registry.redhat.io/openshift-serverless-1/logic-data-index-ephemeral-rhel9@sha256:bac7496c5c95f529494625778deb14a7c429f2d2aff988b8fca3968de5751f00
        - registry.redhat.io/openshift-serverless-1/logic-jobs-service-postgresql-rhel9@sha256:10503b5a1f1629df1ee61d9009e720f625c05df515078157ba5ed683c1308012
        - registry.redhat.io/openshift-serverless-1/logic-swf-builder-rhel9@sha256:37490d642d03a627f434d806fffae5b0e1245a4fe0d5fee6b13bfff162314af1
        - registry.redhat.io/openshift-serverless-1/logic-jobs-service-ephemeral-rhel9@sha256:b9522442546f5daf0d2481794e9a565fa08c6db9b6db1f9e8c2a7824b2562e33
        - registry.redhat.io/openshift-serverless-1/logic-db-migrator-tool-rhel9@sha256:6818e069bf9ab89cddd5cea1c2e93c6dd1707c479cc21f116e33d8e6db345ad8
        version: 1.37.0
      entries:
      - name: logic-operator.v1.37.0
        version: 1.37.0
      name: stable
    defaultChannel: stable
    packageName: logic-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.0-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: lvms-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lvms-operator.v4.19.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "my-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "default": true,
                        "fstype": "xfs",
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:3701735419e2e68b3c579a68c48106f00b8fb7c1915200ee37437cc0f73a975a
          description: Logical volume manager storage provides dynamically provisioned
            local storage for container workloads
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.2.0 <4.19.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |-
            {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "test-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
          operatorframework.io/suggested-namespace: openshift-storage
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-storage",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/internal-objects: '["logicalvolumes.topolvm.io",
            "lvmvolumegroups.lvm.topolvm.io", "lvmvolumegroupnodestatuses.lvm.topolvm.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lvm-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: LogicalVolume
            name: logicalvolumes.topolvm.io
            version: v1
          - description: LVMCluster is the Schema for the lvmclusters API
            displayName: LVMCluster
            kind: LVMCluster
            name: lvmclusters.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroupNodeStatus
            name: lvmvolumegroupnodestatuses.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroup
            name: lvmvolumegroups.lvm.topolvm.io
            version: v1alpha1
        description: Logical volume manager storage provides dynamically provisioned
          local storage.
        displayName: LVM Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - local storage
        - operator
        - LVM
        links:
        - name: Source Repository
          url: https://github.com/openshift/lvm-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:1e455df18829d87ac99cc7673e1a236fa8f4cc4cc2f56c922810acc0af98cc65
        - registry.redhat.io/lvms4/lvms-operator-bundle@sha256:db9b7aa0d4feb713d0e9a0d122f9be41c95761de356a592012eea8bc52351209
        - registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:3701735419e2e68b3c579a68c48106f00b8fb7c1915200ee37437cc0f73a975a
        version: 4.19.1
      entries:
      - name: lvms-operator.v4.19.1
        version: 4.19.1
      - name: lvms-operator.v4.19.0
        version: 4.19.0
      name: stable-4.19
    - currentCSV: lvms-operator.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "my-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "default": true,
                        "fstype": "xfs",
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:ffd7f0e091cbc9a788a0c857187a3a558f123b4373f33e556486a2fdf8f57d27
          description: Logical volume manager storage provides dynamically provisioned
            local storage for container workloads
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.2.0 <4.20.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |-
            {
                "apiVersion": "lvm.topolvm.io/v1alpha1",
                "kind": "LVMCluster",
                "metadata": {
                  "name": "test-lvmcluster"
                },
                "spec": {
                  "storage": {
                    "deviceClasses": [
                      {
                        "name": "vg1",
                        "thinPoolConfig": {
                          "name": "thin-pool-1",
                          "overprovisionRatio": 10,
                          "sizePercent": 90
                        }
                      }
                    ]
                  }
                }
              }
          operatorframework.io/suggested-namespace: openshift-lvm-storage
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-lvm-storage",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/must-gather-image: registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:d264281158ca5ac4885905231900d435e273be059ec6432477da5086916a2108
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/internal-objects: '["logicalvolumes.topolvm.io",
            "lvmvolumegroups.lvm.topolvm.io", "lvmvolumegroupnodestatuses.lvm.topolvm.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/lvm-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: LogicalVolume
            name: logicalvolumes.topolvm.io
            version: v1
          - description: LVMCluster is the Schema for the lvmclusters API
            displayName: LVMCluster
            kind: LVMCluster
            name: lvmclusters.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroupNodeStatus
            name: lvmvolumegroupnodestatuses.lvm.topolvm.io
            version: v1alpha1
          - kind: LVMVolumeGroup
            name: lvmvolumegroups.lvm.topolvm.io
            version: v1alpha1
        description: Logical volume manager storage provides dynamically provisioned
          local storage.
        displayName: LVM Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - local storage
        - operator
        - LVM
        links:
        - name: Source Repository
          url: https://github.com/openshift/lvm-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/lvms4/lvms-must-gather-rhel9@sha256:d264281158ca5ac4885905231900d435e273be059ec6432477da5086916a2108
        - registry.redhat.io/lvms4/lvms-rhel9-operator@sha256:ffd7f0e091cbc9a788a0c857187a3a558f123b4373f33e556486a2fdf8f57d27
        - registry.redhat.io/lvms4/lvms-operator-bundle@sha256:f2270236ca0f96bac3d2f616b349b3b5d44ffa3889fa91838508be3d9b58fe3b
        version: 4.20.0
      entries:
      - name: lvms-operator.v4.20.0
        version: 4.20.0
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: lvms-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: samsung
      provider-url: ""
    name: socmmd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: socmmd.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cmmd.samsung.com/v1",
                "kind": "CMMD",
                "metadata": {
                  "name": "my-app",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "allocateMode": "auto",
                  "enable": true,
                  "payload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "metadata": {
                      "name": "my-app"
                    },
                    "spec": {
                      "replicas": 1,
                      "selector": {
                        "matchLabels": {
                          "name": "my-app"
                        }
                      },
                      "template": {
                        "metadata": {
                          "labels": {
                            "name": "my-app"
                          }
                        },
                        "spec": {
                          "containers": [
                            {
                              "image": "quay.io/my-account/my-app:latest",
                              "name": "my-app-01"
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "cmmd.samsung.com/v1",
                "kind": "Label",
                "metadata": {
                  "labels": {
                    "machineconfiguration.openshift.io/role": "cmmd"
                  },
                  "name": "cmmd-node-label",
                  "namespace": "socmmd"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          console.openshift.io/plugins: '["socmmd-console-plugin"]'
          containerImage: quay.io/samsung_sag/socmmd@sha256:2ef361fb15f0fec99e0a8f1ef83ad4dd14f701d579c900cce084c4a62cf805f8
          createdAt: "2024-08-01T05:45:38Z"
          description: Samsung Operator For CMM-D
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "cmmd.samsung.com/v1",
              "kind": "Label",
              "metadata": {
                "name": "cmmd-node-label",
                "namespace": "socmmd",
                "labels": {}
              },
              "spec": {}
            }
          operatorframework.io/suggested-namespace: socmmd-system
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/OpenMPDK/SMDK/tree/main/lib/redhat/socmmd
          support: samsung
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CMMD is the Schema for the cmmds API.
            displayName: CMMD
            kind: CMMD
            name: cmmds.cmmd.samsung.com
            version: v1
          - description: Label is the Schema for the labels API.
            displayName: Node Label
            kind: Label
            name: labels.cmmd.samsung.com
            version: v1
        description: Samsung Operator For CMM-D
        displayName: socmmd
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - samsung
        - memory
        - extend
        - cmm-d
        links:
        - name: Samsung Operator For CMM-D
          url: https://github.com/OpenMPDK/SMDK/tree/main/lib/redhat/socmmd
        maintainers:
        - email: junhyeok.im@samsung.com
          name: junhyeok-im
        maturity: stable
        provider:
          name: samsung
        relatedImages:
        - quay.io/community-operator-pipeline-prod/socmmd@sha256:5adf9706daf49b35cfcf74b6fb07b056f87714b87047803b797a56f138c77486
        - quay.io/samsung_sag/socmmd@sha256:2ef361fb15f0fec99e0a8f1ef83ad4dd14f701d579c900cce084c4a62cf805f8
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        version: 0.0.2
      entries:
      - name: socmmd.v0.0.2
        version: 0.0.2
      - name: socmmd.v0.0.1
        version: 0.0.1
      name: stable
    defaultChannel: stable
    packageName: socmmd
    provider:
      name: samsung
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: volsync-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: volsync-product.v0.14.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationDestination",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationdestination-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationdestination",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationdestination-sample"
                },
                "spec": {
                  "rsync": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "capacity": "10Gi",
                    "copyMethod": "Snapshot",
                    "serviceType": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationsource",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationsource-sample"
                },
                "spec": {
                  "rsync": {
                    "address": "my.host.com",
                    "copyMethod": "Clone",
                    "sshKeys": "secretRef"
                  },
                  "sourcePVC": "pvcname",
                  "trigger": {
                    "schedule": "0 * * * *"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
          createdAt: "2025-10-20T14:45:52Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.4.0 <0.14.0'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/volsync
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A ReplicationDestination is a VolSync resource that you can
              use to define the destination of a VolSync replication or synchronization.
            displayName: Replication Destination
            kind: ReplicationDestination
            name: replicationdestinations.volsync.backube
            version: v1alpha1
          - description: A ReplicationSource is a VolSync resource that you can use
              to define the source PVC and replication mover type, enabling you to
              replicate or synchronize PVC data to a remote location.
            displayName: Replication Source
            kind: ReplicationSource
            name: replicationsources.volsync.backube
            version: v1alpha1
        description: |-
          Asynchronous volume replication for Kubernetes CSI storage

          VolSync is a Kubernetes operator that performs asynchronous replication of
          persistent volumes within, or across, clusters. VolSync supports replication
          independent of the storage system. This means that replication can be used
          with storage systems that do not natively support replication. Data can also be
          replicated across different types (and vendors) of storage.

          VolSync supports both 1:1 replication relationships as well as 1:many
          relationships. This provides the flexibility to support use cases such as:

          - Disaster recovery
          - Mirroring data to a test environment
          - Data distribution to a set of remote clusters from a central site
          - Migrating between storage vendors (changing the StorageClass of a
            persistent volume claim).
          - Creating periodic data backups

          ### How it works

          You specify the details of how, when, and where to replicate the data
          in a ReplicationSource object in the same namespace as the persistent
          volume claim (PVC).

          You create a ReplicationDestination object at the destination, which
          specifies the target for the replicated data.

          VolSync uses multiple replication methods to replicate data:

          - Rclone-based replication for 1:many data distribution:

            Data is replicated from the source to an intermediate cloud storage
            service, which is [supported by Rclone](https://rclone.org/#providers).
            The destinations retrieve the data from the intermediate location.

          - Restic-based backup of PVC contents:

            Data in a PVC is backed up by using the [restic](https://restic.net/)
            program. This method works well when the deployment configuration of
            the application is already source-controlled, and only the
            preservation of its persistent state is needed.

          - Rsync-based replication for one-to-one data replication:

            Data is replicated directly to a remote location. The replication uses
            the [Rsync](https://rsync.samba.org/) utility over an ssh connection
            to securely and efficiently transfer data.

          ### Documentation

          For documentation about installing and using the VolSync Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [VolSync persistent volume replication service](https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync) in the Red Hat Advanced Cluster Management
          documentation.

          For additional information about the VolSync project, including features that might not be supported by Red Hat, see
          the [VolSync community](https://volsync.readthedocs.ioe/) documentation.

          ### Support & Troubleshooting

          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: VolSync
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - csi
        - data
        - disaster recovery
        - replication
        - storage
        links:
        - name: Documentation
          url: https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync
        - name: Source
          url: https://github.com/backube/volsync
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:57cb4ed66c27720b2526ce4ebeda21086a9088305393af9607fb766447df39bd
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        version: 0.14.0
      entries:
      - name: volsync-product.v0.14.0
        version: 0.14.0
      - name: volsync-product.v0.13.1
        version: 0.13.1
      - name: volsync-product.v0.13.0
        version: 0.13.0
      name: stable
    - currentCSV: volsync-product.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationDestination",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationdestination-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationdestination",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationdestination-sample"
                },
                "spec": {
                  "rsync": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "capacity": "10Gi",
                    "copyMethod": "Snapshot",
                    "serviceType": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationsource",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationsource-sample"
                },
                "spec": {
                  "rsync": {
                    "address": "my.host.com",
                    "copyMethod": "Clone",
                    "sshKeys": "secretRef"
                  },
                  "sourcePVC": "pvcname",
                  "trigger": {
                    "schedule": "0 * * * *"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
          createdAt: "2025-08-27T13:12:05Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.4.0 <0.13.1'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/volsync
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A ReplicationDestination is a VolSync resource that you can
              use to define the destination of a VolSync replication or synchronization.
            displayName: Replication Destination
            kind: ReplicationDestination
            name: replicationdestinations.volsync.backube
            version: v1alpha1
          - description: A ReplicationSource is a VolSync resource that you can use
              to define the source PVC and replication mover type, enabling you to
              replicate or synchronize PVC data to a remote location.
            displayName: Replication Source
            kind: ReplicationSource
            name: replicationsources.volsync.backube
            version: v1alpha1
        description: |-
          Asynchronous volume replication for Kubernetes CSI storage

          VolSync is a Kubernetes operator that performs asynchronous replication of
          persistent volumes within, or across, clusters. VolSync supports replication
          independent of the storage system. This means that replication can be used
          with storage systems that do not natively support replication. Data can also be
          replicated across different types (and vendors) of storage.

          VolSync supports both 1:1 replication relationships as well as 1:many
          relationships. This provides the flexibility to support use cases such as:

          - Disaster recovery
          - Mirroring data to a test environment
          - Data distribution to a set of remote clusters from a central site
          - Migrating between storage vendors (changing the StorageClass of a
            persistent volume claim).
          - Creating periodic data backups

          ### How it works

          You specify the details of how, when, and where to replicate the data
          in a ReplicationSource object in the same namespace as the persistent
          volume claim (PVC).

          You create a ReplicationDestination object at the destination, which
          specifies the target for the replicated data.

          VolSync uses multiple replication methods to replicate data:

          - Rclone-based replication for 1:many data distribution:

            Data is replicated from the source to an intermediate cloud storage
            service, which is [supported by Rclone](https://rclone.org/#providers).
            The destinations retrieve the data from the intermediate location.

          - Restic-based backup of PVC contents:

            Data in a PVC is backed up by using the [restic](https://restic.net/)
            program. This method works well when the deployment configuration of
            the application is already source-controlled, and only the
            preservation of its persistent state is needed.

          - Rsync-based replication for one-to-one data replication:

            Data is replicated directly to a remote location. The replication uses
            the [Rsync](https://rsync.samba.org/) utility over an ssh connection
            to securely and efficiently transfer data.

          ### Documentation

          For documentation about installing and using the VolSync Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [VolSync persistent volume replication service](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/business_continuity/business-cont-overview#volsync) in the Red Hat Advanced Cluster Management
          documentation.

          For additional information about the VolSync project, including features that might not be supported by Red Hat, see
          the [VolSync community](https://volsync.readthedocs.ioe/) documentation.

          ### Support & Troubleshooting

          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: VolSync
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - csi
        - data
        - disaster recovery
        - replication
        - storage
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/business_continuity/business-cont-overview#volsync
        - name: Source
          url: https://github.com/backube/volsync
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:32cd9b5812506656ff9ff1c2c9fdacde44f179313ea2bfbbc18564fee635ca67
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:d37a6d10b0fa07370066a31fdaffe2ea553faf4e4e98be7fcef5ec40d62ffe29
        version: 0.13.1
      entries:
      - name: volsync-product.v0.13.1
        version: 0.13.1
      - name: volsync-product.v0.13.0
        version: 0.13.0
      name: stable-0.13
    - currentCSV: volsync-product.v0.14.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationDestination",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationdestination-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationdestination",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationdestination-sample"
                },
                "spec": {
                  "rsync": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "capacity": "10Gi",
                    "copyMethod": "Snapshot",
                    "serviceType": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "volsync.backube/v1alpha1",
                "kind": "ReplicationSource",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "volsync",
                    "app.kubernetes.io/instance": "replicationsource-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "replicationsource",
                    "app.kubernetes.io/part-of": "volsync"
                  },
                  "name": "replicationsource-sample"
                },
                "spec": {
                  "rsync": {
                    "address": "my.host.com",
                    "copyMethod": "Clone",
                    "sshKeys": "secretRef"
                  },
                  "sourcePVC": "pvcname",
                  "trigger": {
                    "schedule": "0 * * * *"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
          createdAt: "2025-10-20T14:45:52Z"
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.4.0 <0.14.0'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/backube/volsync
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A ReplicationDestination is a VolSync resource that you can
              use to define the destination of a VolSync replication or synchronization.
            displayName: Replication Destination
            kind: ReplicationDestination
            name: replicationdestinations.volsync.backube
            version: v1alpha1
          - description: A ReplicationSource is a VolSync resource that you can use
              to define the source PVC and replication mover type, enabling you to
              replicate or synchronize PVC data to a remote location.
            displayName: Replication Source
            kind: ReplicationSource
            name: replicationsources.volsync.backube
            version: v1alpha1
        description: |-
          Asynchronous volume replication for Kubernetes CSI storage

          VolSync is a Kubernetes operator that performs asynchronous replication of
          persistent volumes within, or across, clusters. VolSync supports replication
          independent of the storage system. This means that replication can be used
          with storage systems that do not natively support replication. Data can also be
          replicated across different types (and vendors) of storage.

          VolSync supports both 1:1 replication relationships as well as 1:many
          relationships. This provides the flexibility to support use cases such as:

          - Disaster recovery
          - Mirroring data to a test environment
          - Data distribution to a set of remote clusters from a central site
          - Migrating between storage vendors (changing the StorageClass of a
            persistent volume claim).
          - Creating periodic data backups

          ### How it works

          You specify the details of how, when, and where to replicate the data
          in a ReplicationSource object in the same namespace as the persistent
          volume claim (PVC).

          You create a ReplicationDestination object at the destination, which
          specifies the target for the replicated data.

          VolSync uses multiple replication methods to replicate data:

          - Rclone-based replication for 1:many data distribution:

            Data is replicated from the source to an intermediate cloud storage
            service, which is [supported by Rclone](https://rclone.org/#providers).
            The destinations retrieve the data from the intermediate location.

          - Restic-based backup of PVC contents:

            Data in a PVC is backed up by using the [restic](https://restic.net/)
            program. This method works well when the deployment configuration of
            the application is already source-controlled, and only the
            preservation of its persistent state is needed.

          - Rsync-based replication for one-to-one data replication:

            Data is replicated directly to a remote location. The replication uses
            the [Rsync](https://rsync.samba.org/) utility over an ssh connection
            to securely and efficiently transfer data.

          ### Documentation

          For documentation about installing and using the VolSync Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [VolSync persistent volume replication service](https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync) in the Red Hat Advanced Cluster Management
          documentation.

          For additional information about the VolSync project, including features that might not be supported by Red Hat, see
          the [VolSync community](https://volsync.readthedocs.ioe/) documentation.

          ### Support & Troubleshooting

          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: VolSync
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - csi
        - data
        - disaster recovery
        - replication
        - storage
        links:
        - name: Documentation
          url: https://docs.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html/business_continuity/business-cont-overview#volsync
        - name: Source
          url: https://github.com/backube/volsync
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:c1a84feb88d53e93bdcf2cd5f76e2cbb18541c8b0e2979c132a888d6c280b664
        - registry.redhat.io/rhacm2/volsync-operator-bundle@sha256:57cb4ed66c27720b2526ce4ebeda21086a9088305393af9607fb766447df39bd
        version: 0.14.0
      entries:
      - name: volsync-product.v0.14.0
        version: 0.14.0
      name: stable-0.14
    defaultChannel: stable
    packageName: volsync-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com
    name: ibm-application-gateway-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-application-gateway-operator.v25.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ibm.com/v1",
                "kind": "IBMApplicationGateway",
                "metadata": {
                  "name": "iag-instance"
                },
                "spec": {
                  "configuration": [
                    {
                      "dataKey": "config",
                      "name": "test-config",
                      "type": "configmap"
                    },
                    {
                      "discoveryEndpoint": "https://isam.mmfa.ibm.com/mga/sps/oauth/oauth20/metadata/test",
                      "postData": [
                        {
                          "name": "redirect_uris",
                          "values": [
                            "https://isam.mmfa.ibm.com/pkmsoidc"
                          ]
                        },
                        {
                          "name": "client_name",
                          "value": "OperatorTest"
                        },
                        {
                          "name": "enforce_pkce",
                          "value": "false"
                        },
                        {
                          "name": "all_users_entitled",
                          "value": "true"
                        },
                        {
                          "name": "consent_action",
                          "value": "never_prompt"
                        }
                      ],
                      "secret": "oidc-client",
                      "type": "oidc_registration"
                    },
                    {
                      "headers": [
                        {
                          "name": "Authorization",
                          "secretKey": "value",
                          "type": "secret",
                          "value": "githubsecret"
                        }
                      ],
                      "type": "web",
                      "url": "https://raw.github.com/ibm-security/iag-config/master/test/sample1.yaml"
                    },
                    {
                      "type": "literal",
                      "value": "version: \"22.07\"\n\nserver:\n  local_applications:\n    cred_viewer:\n      path_segment: creds\n      enable_html: true\n\nidentity:\n  oidc:\n    discovery_endpoint: \"https://iag-dev.ibmcloudsecurity.com/oidc/endpoint/default/.well-known/openid-configuration\"\n    client_id: 1cbfe647-9e5f-4d99-8e05-8ed1c862eb47\n    client_secret: uPP8rM7N0e\n"
                    }
                  ],
                  "deployment": {
                    "image": "icr.io/ibmappgateway/ibm-application-gateway@sha256:1144b79a2930fe942ce627b0abcc3bed2f0b0770ae8313cb77ffe6772511c1f9",
                    "imagePullPolicy": "Always",
                    "imagePullSecrets": [
                      {
                        "name": "regcred"
                      }
                    ],
                    "lang": "C",
                    "livenessProbe": {
                      "failureThreshold": 6,
                      "initialDelaySeconds": 8,
                      "periodSeconds": 9,
                      "successThreshold": 7,
                      "timeoutSeconds": 1
                    },
                    "readinessProbe": {
                      "failureThreshold": 2,
                      "initialDelaySeconds": 7,
                      "periodSeconds": 8,
                      "successThreshold": 4,
                      "timeoutSeconds": 5
                    },
                    "serviceAccountName": "iag"
                  },
                  "replicas": 1
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: icr.io/ibmappgateway/ibm-application-gateway-operator@sha256:6a16d4ef802a866942f504b11a948565245d303f322944200c1a1269fe7c371c
          createdAt: "2025-02-05T21:15:37Z"
          description: The IBM Application Gateway operator manages the lifecycle
            of IBM Application Gateway containers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM-Security/ibm-application-gateway-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBMApplicationGateway is the Schema for the ibmapplicationgateways
              API
            displayName: IBMApplication Gateway
            kind: IBMApplicationGateway
            name: ibmapplicationgateways.ibm.com
            version: v1
        description: "The [IBM Application Gateway (IAG)](https://ibm.biz/ibm-app-gateway)
          image provides a containerized secure Web Reverse proxy which is designed
          to sit in front of your application, seamlessly adding authentication and
          authorization protection to your application.\n\nAn IAG instance deployed
          on Kubernetes can be a complex deployment.  In particular the configuration
          can be defined externally in one or more locations, and changes to this
          configuration may require all instances to be reloaded for the changes to
          take effect. \n\nThe internal Kubernetes deployment controller does not
          have any knowledge of how an IBM Application Gateway instance should behave
          when the configuration changes. As such this IBM Application Gateway specific
          Kubernetes operator is available to be deployed. Once deployed the operator
          can manage the lifecycle of the IBM Application Gateway instances.\n\nSee
          the project [Readme](https://github.com/IBM-Security/ibm-application-gateway-operator/blob/master/README.md)
          for further information and details.\n\n"
        displayName: IBM Application Gateway Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - IBM
        - Security
        - Identity and Access
        links:
        - name: IBM Application Gateway product documentation
          url: https://ibm.biz/ibm-app-gateway
        maintainers:
        - email: isamdev@au1.ibm.com
          name: IBM Application Gateway Development Team
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: IBM
          url: https://www.ibm.com
        relatedImages:
        - icr.io/ibmappgateway/ibm-application-gateway-operator@sha256:6a16d4ef802a866942f504b11a948565245d303f322944200c1a1269fe7c371c
        - icr.io/ibmappgateway/ibm-application-gateway@sha256:1144b79a2930fe942ce627b0abcc3bed2f0b0770ae8313cb77ffe6772511c1f9
        - registry.connect.redhat.com/ibm/ibm-application-gateway-operator-bundle@sha256:e4ece7113fa7056980507408ac29d60676cf51c20d71a058a1accf765a6ea7e3
        version: 25.2.0
      entries:
      - name: ibm-application-gateway-operator.v25.2.0
        version: 25.2.0
      - name: ibm-application-gateway-operator.v24.4.0
        version: 24.4.0
      name: stable
    defaultChannel: stable
    packageName: ibm-application-gateway-operator
    provider:
      name: IBM
      url: https://www.ibm.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: multicluster-operators-subscription
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-operators-subscription.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/multicluster-operators-subscription:2.3.0
          createdAt: "2021-07-19T18:00:00Z"
          description: An operator to subscribe resources from object Bucket, helm
            and github types of channels
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:3bc76999ece42fcb3acd913b32be3fa0e0da056832922819b81119dcfb5f1582
        - quay.io/open-cluster-management/multicluster-operators-application:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-channel:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-deployable:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-placementrule:2.3.0
        - quay.io/open-cluster-management/multicluster-operators-subscription:2.3.0
        version: 0.3.0
      entries:
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.3
    - currentCSV: multicluster-operators-subscription.v0.3.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/multicluster-operators-subscription:2.4.0
          createdAt: "2021-09-29T10:23:00Z"
          description: An operator to subscribe resources from object Bucket, helm
            and github types of channels
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1beta1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/open-cluster-management/multicluster-operators-placementrule:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-subscription:2.4.0
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:2aeba259864bbddaa8cdd46ab6d8c3495450a0081469a27b9acde53008d91bed
        - quay.io/open-cluster-management/multicloud-integrations:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-application:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-channel:2.4.0
        - quay.io/open-cluster-management/multicluster-operators-deployable:2.4.0
        version: 0.3.6
      entries:
      - name: multicluster-operators-subscription.v0.3.6
        version: 0.3.6
      - name: multicluster-operators-subscription.v0.3.5
        version: 0.3.5
      - name: multicluster-operators-subscription.v0.3.4
        version: 0.3.4
      - name: multicluster-operators-subscription.v0.3.3
        version: 0.3.3
      - name: multicluster-operators-subscription.v0.3.2
        version: 0.3.2
      - name: multicluster-operators-subscription.v0.3.1
        version: 0.3.1
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.4
    - currentCSV: multicluster-operators-subscription.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/open-cluster-management/multicluster-operators-subscription:2.5.0
          createdAt: "2022-03-23T18:00:00Z"
          description: An operator for deploying resources from object Bucket, helm
            repo or github repo to multiple managed clusters
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management-io/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: subscription status per cluster per app
            displayName: App Subscription Report
            kind: SubscriptionReport
            name: subscriptionreports.apps.open-cluster-management.io
            version: v1alpha1
          - description: subscription status per package
            displayName: App Subscription Status
            kind: SubscriptionStatus
            name: subscriptionstatuses.apps.open-cluster-management.io
            version: v1alpha1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1beta1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/open-cluster-management/multicluster-operators-subscription:2.5.0
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:f58f60283f6cf9ea745f4a25378ef6690d98af8fda0eb63f663066631e71450b
        - quay.io/open-cluster-management/multicloud-integrations:2.5.0
        - quay.io/open-cluster-management/multicluster-operators-application:2.5.0
        - quay.io/open-cluster-management/multicluster-operators-channel:2.5.0
        version: 0.4.0
      entries:
      - name: multicluster-operators-subscription.v0.4.0
        version: 0.4.0
      - name: multicluster-operators-subscription.v0.3.9
        version: 0.3.9
      - name: multicluster-operators-subscription.v0.3.8
        version: 0.3.8
      - name: multicluster-operators-subscription.v0.3.7
        version: 0.3.7
      - name: multicluster-operators-subscription.v0.3.6
        version: 0.3.6
      - name: multicluster-operators-subscription.v0.3.5
        version: 0.3.5
      - name: multicluster-operators-subscription.v0.3.4
        version: 0.3.4
      - name: multicluster-operators-subscription.v0.3.3
        version: 0.3.3
      - name: multicluster-operators-subscription.v0.3.2
        version: 0.3.2
      - name: multicluster-operators-subscription.v0.3.1
        version: 0.3.1
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.5
    - currentCSV: multicluster-operators-subscription.v0.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Channel",
                "metadata": {
                  "name": "dev-helmrepo"
                },
                "spec": {
                  "type": "HelmRepo",
                  "pathname": "http://kubernetes-charts.storage.googleapis.com/"
                },
                "status": {
                  "state": "N/A"
                }
              },
              {
                "apiVersion": "apps.open-cluster-management.io/v1",
                "kind": "Subscription",
                "metadata": {
                  "name": "sub-nginx"
                },
                "spec": {
                  "channel": "ns-ch/predev-ch",
                  "name": "nginx-ingress",
                  "packageFilter": {
                    "version": "=1.26.1"
                  },
                  "packageOverrides": [
                    {
                      "packageAlias": "nginx-ingress",
                      "packageName": "nginx-ingress",
                      "packageOverrides": [
                        {
                          "path": "spec",
                          "value": {
                            "defaultBackend": {
                              "replicaCount": 3
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "placement": {
                    "local": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/stolostron/multicluster-operators-subscription:2.6.0
          createdAt: "2022-06-06T18:00:00Z"
          description: An operator for deploying resources from object Bucket, helm
            repo or github repo to multiple managed clusters
          olm.skipRange: <0.1.4
          repository: https://github.com/open-cluster-management-io/multicloud-operators-subscription
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Subscribe resources from a channel according to its package
              filters
            displayName: App Subscription
            kind: Subscription
            name: subscriptions.apps.open-cluster-management.io
            version: v1
          - description: subscription status per cluster per app
            displayName: App Subscription Report
            kind: SubscriptionReport
            name: subscriptionreports.apps.open-cluster-management.io
            version: v1alpha1
          - description: subscription status per package
            displayName: App Subscription Status
            kind: SubscriptionStatus
            name: subscriptionstatuses.apps.open-cluster-management.io
            version: v1alpha1
          - description: Represent a helm chart repository
            displayName: Channel
            kind: Channel
            name: channels.apps.open-cluster-management.io
            version: v1
          - description: Represent a helm chart selected by the subscription, for
              internal use only.
            displayName: Helm Release
            kind: HelmRelease
            name: helmreleases.apps.open-cluster-management.io
            version: v1
          - description: Contain a k8s resource template for deployment, for internal
              use only.
            displayName: Deployable
            kind: Deployable
            name: deployables.apps.open-cluster-management.io
            version: v1
          - description: Placement Rules to determine which mangaged clusters will
              be deployed by multicluster applications.
            displayName: Placement Rule
            kind: PlacementRule
            name: placementrules.apps.open-cluster-management.io
            version: v1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1alpha1
          - description: GitOps Cluster to determine which mangaged cluster secret
              will be imported to which argocd server.
            displayName: GitOps Cluster
            kind: GitOpsCluster
            name: gitopsclusters.apps.open-cluster-management.io
            version: v1beta1
          - description: Application selectors to determine which subscriptions and
              deployables are bundled into the application
            displayName: Application
            kind: Application
            name: applications.app.k8s.io
            version: v1beta1
        description: "A multicluster subscription operator subscribes resources from
          multiple types of Channels and get them deployed to multiple managed clusters\n##
          Prerequisites\n- Operator Lifecycle Manager (OLM) needs to be installed.\n\nOLM
          installation can be checked by running the command:\n  ```\n  $ kubectl
          get pods --all-namespaces | grep olm\n  olm        catalog-operator-7f54797f5f-z9l9n
          \        1/1     Running            0          46s\n  olm        olm-operator-65874bdb76-vs6gf
          \            1/1     Running            0          46s\n  olm        operatorhubio-catalog-8wp2d
          \              1/1     Running            0          36s\n  olm        packageserver-7fb4588767-8mxv4
          \           1/1     Running            0          34s\n  olm        packageserver-7fb4588767-d6h8j
          \           1/1     Running            0          25s\n  ```\n\n## How to
          Install\n- Install `Multicluster Subscription Operator` by following instructions
          in top right button `Install`.\n\nThree new pods are created in `openshift-operators`
          namespace\n\n```\n$ kubectl get pods -n openshift-operators\nNAME                                                            READY
          \  STATUS    RESTARTS   AGE\nmulticluster-operators-application-5ccbbc878d-98fdp
          \              4/4     Running   0          49s\nmulticluster-operators-channel-dffcb4f8c-rx5g8
          \                   1/1     Running   0          49s\nmulticluster-operators-hub-subscription-65f7d689d6-6vpr5
          \         1/1     Running   0          49s\nmulticluster-operators-standalone-subscription-86df85d4bf-m4bd9
          \  1/1     Running   0          49s\n```\n\nThe operator is now providing
          new Custom Resources Definitions: `subscriptions.apps.open-cluster-management.io`,
          `channels.apps.open-cluster-management.io`\n\n## Using the Multicluster
          Subscription Operator\nHere is an example to demonstrate how to create one
          Multicluster Subscription CR to subscribe the helm chart nginx-ingress v1.26.1\n\n-
          \ Create a channel `dev-helmrepo` in namespace `dev` to point to a helm
          repo `kubernetes-charts.storage.googleapis.com`\n\n```\napiVersion: v1\nkind:
          Namespace\nmetadata:\n  name: dev\n---\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Channel\nmetadata:\n  name: dev-helmrepo\n  namespace: dev\nspec:\n    type:
          HelmRepo\n    pathname: https://charts.helm.sh/stable/\n    configRef: \n
          \     name: skip-cert-verify\n      apiVersion: v1\n      kind: ConfigMap\n---\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: skip-cert-verify\n  namespace: dev\ndata:\n
          \ insecureSkipVerify: \"true\"\n```\n\n-  Create a subscription `simple`
          in the `default` namespace to subscribe the nginx-ingress v1.26.1 package.
          The subscription is disabled by default.\n\n```\napiVersion: apps.open-cluster-management.io/v1\nkind:
          Subscription\nmetadata:\n  name: simple\nspec:\n  channel: dev/dev-helmrepo\n
          \ name: nginx-ingress\n  placement:\n    local: false\n  packageFilter:\n
          \   version: \"1.36.x\"\n  packageOverrides:\n  - packageName: nginx-ingress\n
          \   packageAlias: nginx-ingress\n    packageOverrides:\n    - path: spec\n
          \     value:\n        defaultBackend:\n          replicaCount: 3\n  overrides:\n
          \ - clusterName: \"/\"\n    clusterOverrides:\n    - path: \"metadata.namespace\"\n
          \     value: default\n```\n\n- Deploy the nginx-ingress v1.36 package by
          setting the subscription `spec.placement.local` to `true`\n\n```\nkubectl
          patch subscriptions.apps.open-cluster-management.io simple --type='json'
          -p='[{\"op\": \"replace\", \"path\": \"/spec/placement/local\", \"value\":
          true}]'\n```\n\n- Make sure the subscribed nginx-ingress package being deployed
          to the default namespace\n\n```\n$ kubectl get pods -n default |grep nginx\nnginx-ingress-controller-775b4967cb-8nx9m
          \       1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-bfkn8
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-fpcnp
          \  1/1     Running   0          118s\nnginx-ingress-default-backend-659bd647bd-v4nbf
          \  1/1     Running   0          118s\n```\n"
        displayName: Multicluster Subscription Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Red Hat
        - multicluster
        - subscription
        - channel
        links:
        - name: Multicluster Subscription Operator Project
          url: https://github.com/open-cluster-management/multicloud-operators-subscription
        maintainers:
        - email: ocm-dev@open-cluster-management.io
          name: Open Cluster Management Project team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/stolostron/multicloud-integrations:2.6.0
        - quay.io/stolostron/multicluster-operators-application:2.6.0
        - quay.io/stolostron/multicluster-operators-channel:2.6.0
        - quay.io/stolostron/multicluster-operators-subscription:2.6.0
        - quay.io/openshift-community-operators/multicluster-operators-subscription@sha256:48b37c9f9417ef442d896e79851b176505045b487bddf77bb4e6d91fd5ad3dd1
        version: 0.4.1
      entries:
      - name: multicluster-operators-subscription.v0.4.1
        version: 0.4.1
      - name: multicluster-operators-subscription.v0.4.0
        version: 0.4.0
      - name: multicluster-operators-subscription.v0.3.9
        version: 0.3.9
      - name: multicluster-operators-subscription.v0.3.8
        version: 0.3.8
      - name: multicluster-operators-subscription.v0.3.7
        version: 0.3.7
      - name: multicluster-operators-subscription.v0.3.6
        version: 0.3.6
      - name: multicluster-operators-subscription.v0.3.5
        version: 0.3.5
      - name: multicluster-operators-subscription.v0.3.4
        version: 0.3.4
      - name: multicluster-operators-subscription.v0.3.3
        version: 0.3.3
      - name: multicluster-operators-subscription.v0.3.2
        version: 0.3.2
      - name: multicluster-operators-subscription.v0.3.1
        version: 0.3.1
      - name: multicluster-operators-subscription.v0.3.0
        version: 0.3.0
      - name: multicluster-operators-subscription.v0.2.9
        version: 0.2.9
      - name: multicluster-operators-subscription.v0.2.8
        version: 0.2.8
      - name: multicluster-operators-subscription.v0.2.7
        version: 0.2.7
      name: release-2.6
    defaultChannel: release-2.5
    packageName: multicluster-operators-subscription
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apache KIE
      provider-url: ""
    name: sonataflow-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sonataflow-operator.v10.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "docker.io/apache",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: docker.io/apache/incubator-kie-sonataflow-operator:10.0.0
          description: SonataFlow Kubernetes Operator for deploying workflow applications
            based on the CNCF Serverless Workflow specification
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/apache/incubator-kie-tools/packages/sonataflow-operator
          support: Apache Software Foundation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: Sonata Flow Build
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: Sonata Flow Cluster Platform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: Sonata Flow Platform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: Sonata Flow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          SonataFlow Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification](https://serverlessworkflow.io/):

          * Deploy workflow applications using the [dev profile](https://sonataflow.org/serverlessworkflow/latest/cloud/operator/developing-workflows.html), suited for the your development cycle
          * Build workflow applications based on the platform you're currently working on.
        displayName: SonataFlow Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        links:
        - name: Product Page
          url: https://github.com/apache/incubator-kie-tools
        maintainers:
        - email: dev@kie.apache.org
          name: Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Apache Software Foundation
        relatedImages:
        - docker.io/apache/incubator-kie-sonataflow-operator:10.0.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/community-operator-pipeline-prod/sonataflow-operator@sha256:8ad2282afef801c794e316c93a12834d688cfa44766132231f93013c3124944f
        version: 10.0.0
      entries:
      - name: sonataflow-operator.v10.0.0
        version: 10.0.0
      - name: sonataflow-operator.v1.40.1
        version: 1.40.1
      - name: sonataflow-operator.v1.40.0
        version: 1.40.0
      name: alpha
    - currentCSV: sonataflow-operator.v10.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "host/namespace",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: docker.io/apache/incubator-kie-sonataflow-operator:10.1.0
          createdAt: "2025-09-11T14:44:56Z"
          description: SonataFlow Kubernetes Operator for deploying workflow applications
            based on the CNCF Serverless Workflow specification
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/apache/incubator-kie-tools/packages/sonataflow-operator
          support: Apache KIE
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: SonataFlowBuild
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: SonataFlowClusterPlatform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: SonataFlowPlatform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: SonataFlow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          SonataFlow Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification](https://serverlessworkflow.io/):

          * Deploy workflow applications using the [dev profile](https://sonataflow.org/serverlessworkflow/latest/cloud/operator/developing-workflows.html), suited for the your development cycle
          * Build workflow applications based on the platform you're currently working on.
        displayName: SonataFlow Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        links:
        - name: Product Page
          url: https://sonataflow.org/serverlessworkflow/latest/index.html
        maintainers:
        - email: dev@kie.apache.org
          name: Apache KIE
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Apache KIE
        relatedImages:
        - docker.io/apache/incubator-kie-sonataflow-operator:10.1.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/sonataflow-operator@sha256:d4ec9966370c3e770209042e437c53b0780401150f5385069b8476e26c343919
        version: 10.1.0
      entries:
      - name: sonataflow-operator.v10.1.0
        version: 10.1.0
      - name: sonataflow-operator.v10.0.0
        version: 10.0.0
      - name: sonataflow-operator.v1.40.1
        version: 1.40.1
      - name: sonataflow-operator.v1.40.0
        version: 1.40.0
      name: stable
    defaultChannel: stable
    packageName: sonataflow-operator
    provider:
      name: Apache KIE
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: opentelemetry-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opentelemetry-operator.v0.140.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "Instrumentation",
                "metadata": {
                  "name": "instrumentation"
                },
                "spec": {
                  "exporter": {
                    "endpoint": "http://otel-collector-headless:4317"
                  }
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpAMPBridge",
                "metadata": {
                  "name": "opampbridge-sample"
                },
                "spec": {
                  "capabilities": {
                    "AcceptsOpAMPConnectionSettings": true,
                    "AcceptsOtherConnectionSettings": true,
                    "AcceptsRemoteConfig": true,
                    "AcceptsRestartCommand": true,
                    "ReportsEffectiveConfig": true,
                    "ReportsHealth": true,
                    "ReportsOwnLogs": true,
                    "ReportsOwnMetrics": true,
                    "ReportsOwnTraces": true,
                    "ReportsRemoteConfig": true,
                    "ReportsStatus": true
                  },
                  "componentsAllowed": {
                    "exporters": [
                      "debug"
                    ],
                    "processors": [
                      "memory_limiter"
                    ],
                    "receivers": [
                      "otlp"
                    ]
                  },
                  "endpoint": "ws://opamp-server:4320/v1/opamp"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": "receivers:\n  otlp:\n    protocols: \n      grpc: {}\n      http: {}\n\nexporters:\n  debug: {}\n\nservice:\n  pipelines:\n    traces:\n      receivers: [otlp]\n      exporters: [debug]\n"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1beta1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": {
                    "exporters": {
                      "debug": {}
                    },
                    "receivers": {
                      "otlp": {
                        "protocols": {
                          "grpc": {},
                          "http": {}
                        }
                      }
                    },
                    "service": {
                      "pipelines": {
                        "traces": {
                          "exporters": [
                            "debug"
                          ],
                          "receivers": [
                            "otlp"
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/rhosdt/opentelemetry-rhel8-operator@sha256:899d19bc4e6fbde8e8e8ee5bc3ef6e4151bd18ed8d8e6f2cc8280e4a18fd3dfc
          createdAt: 27 Nov 2025, 12:24
          description: Provides the OpenTelemetry components, including the Collector
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.33.0 <0.140.0-1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-opentelemetry-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-telemetry/opentelemetry-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instrumentation is the spec for OpenTelemetry instrumentation.
            displayName: OpenTelemetry Instrumentation
            kind: Instrumentation
            name: instrumentations.opentelemetry.io
            version: v1alpha1
          - description: OpAMPBridge is the Schema for the opampbridges API.
            displayName: OpAMP Bridge
            kind: OpAMPBridge
            name: opampbridges.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1beta1
          - description: TargetAllocator is the Schema for the targetallocators API.
            displayName: Target Allocator
            kind: TargetAllocator
            name: targetallocators.opentelemetry.io
            version: v1alpha1
        description: |-
          Red Hat build of OpenTelemetry is a collection of tools, APIs, and SDKs. You use it to instrument, generate, collect, and export telemetry data (metrics, logs, and traces) for analysis in order to understand your software's performance and behavior.
          This operator was previously called Red Hat OpenShift distributed tracing data collection.

          ### Operator features

          * **Sidecar injection** - annotate your pods and let the operator inject a sidecar.
          * **Managed upgrades** - updating the operator will automatically update your OpenTelemetry collectors.
          * **Deployment modes** - your collector can be deployed as sidecar, daemon set, or regular deployment.
          * **Service port management** - the operator detects which ports need to be exposed based on the provided configuration.

          ## Examples

          There is a list of examples to help you deploy different configurations in [this GitHub repository](https://github.com/os-observability/redhat-rhosdt-samples)

          ### Support & Troubleshooting

          Red Hat build of OpenTelemetry is available as part of a Red Hat OpenShift subscription.
          Checking the [Red Hat Documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/4.17/html/red_hat_build_of_opentelemetry/index) is recommended when installing, configuring, and managing the Operator and instances.
        displayName: Red Hat build of OpenTelemetry
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opentelemetry
        - tracing
        - logging
        - metrics
        - monitoring
        - troubleshooting
        links:
        - name: OpenTelemetry Operator
          url: https://github.com/open-telemetry/opentelemetry-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat support
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhosdt/opentelemetry-target-allocator-rhel8@sha256:fd3fde1995d4271f5e4c36093839c369f403211b3fe9d3a4e09906efe8d000d7
        - registry.redhat.io/rhosdt/opentelemetry-operator-bundle@sha256:6ac3bc6ae3aa20a23b4144b01b1aa5ae50f2194e4951446f02a8d60a397aef68
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:6b6c25b6849139cfe88b02df1a095fa0abbbaec9a987d20f75ca007c3cf4e2b7
        - registry.redhat.io/rhosdt/opentelemetry-collector-rhel8@sha256:adf3760df254b939a476428449b792037f197e64bbea44d39ac7c60661818855
        - registry.redhat.io/rhosdt/opentelemetry-rhel8-operator@sha256:899d19bc4e6fbde8e8e8ee5bc3ef6e4151bd18ed8d8e6f2cc8280e4a18fd3dfc
        version: 0.140.0-1
      entries:
      - name: opentelemetry-operator.v0.140.0-1
        version: 0.140.0-1
      - name: opentelemetry-operator.v0.135.0-1
        version: 0.135.0-1
      - name: opentelemetry-operator.v0.127.0-2
        version: 0.127.0-2
      - name: opentelemetry-operator.v0.127.0-1
        version: 0.127.0-1
      - name: opentelemetry-operator.v0.119.0-2
        version: 0.119.0-2
      - name: opentelemetry-operator.v0.119.0-1
        version: 0.119.0-1
      - name: opentelemetry-operator.v0.113.0-2
        version: 0.113.0-2
      - name: opentelemetry-operator.v0.113.0-1
        version: 0.113.0-1
      - name: opentelemetry-operator.v0.107.0-5
        version: 0.107.0-5
      - name: opentelemetry-operator.v0.107.0-4-0.1727168137.p
        version: 0.107.0-4+0.1727168137.p
      - name: opentelemetry-operator.v0.107.0-4
        version: 0.107.0-4
      - name: opentelemetry-operator.v0.102.0-3
        version: 0.102.0-3
      - name: opentelemetry-operator.v0.102.0-2
        version: 0.102.0-2
      - name: opentelemetry-operator.v0.100.1-3
        version: 0.100.1-3
      - name: opentelemetry-operator.v0.93.0-3
        version: 0.93.0-3
      - name: opentelemetry-operator.v0.93.0-2
        version: 0.93.0-2
      - name: opentelemetry-operator.v0.89.0-3
        version: 0.89.0-3
      - name: opentelemetry-operator.v0.81.1-5
        version: 0.81.1-5
      - name: opentelemetry-operator.v0.74.0-5-0.1687199949.p
        version: 0.74.0-5+0.1687199949.p
      - name: opentelemetry-operator.v0.74.0-5
        version: 0.74.0-5
      - name: opentelemetry-operator.v0.60.0-2
        version: 0.60.0-2
      - name: opentelemetry-operator.v0.56.0-1
        version: 0.56.0-1
      name: stable
    defaultChannel: stable
    packageName: opentelemetry-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: external-dns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: external-dns-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure-private"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/privateDnsZones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
          createdAt: 2025-12-10T16:08:35
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.3.3
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        - registry.redhat.io/edo/external-dns-rhel9@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        version: 1.3.3
      entries:
      - name: external-dns-operator.v1.3.3
        version: 1.3.3
      - name: external-dns-operator.v1.3.2
        version: 1.3.2
      - name: external-dns-operator.v1.3.1
        version: 1.3.1
      - name: external-dns-operator.v1.3.0
        version: 1.3.0
      - name: external-dns-operator.v1.2.0
        version: 1.2.0
      - name: external-dns-operator.v1.1.1
        version: 1.1.1
      - name: external-dns-operator.v1.1.0
        version: 1.1.0
      - deprecation:
          message: |
            external-dns-operator.v1.0.1 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.1
        version: 1.0.1
      - deprecation:
          message: |
            external-dns-operator.v1.0.0 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.0
        version: 1.0.0
      name: stable-v1
    - currentCSV: external-dns-operator.v1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel8-operator@sha256:0877eb0a111efe0bff63173a2dfeb7a06a61afd0efbcdba053322a539e0dc667
          createdAt: 2024-01-22T09:26:37
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.1
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:0a86a1808d9906eb57886d3d3cd5c04cf9578a80860342132d36ecfc411bf807
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:0877eb0a111efe0bff63173a2dfeb7a06a61afd0efbcdba053322a539e0dc667
        - registry.redhat.io/edo/external-dns-rhel8@sha256:17f4127cbb9a9304769e9655c19cbea2260107c7e9371a99a9aa3e85d759c00b
        version: 1.0.1
      deprecation:
        message: |
          The stable-v1.0 channel is no longer supported. Please switch to a supported stable channel to receive the latest updates and support.
      entries:
      - deprecation:
          message: |
            external-dns-operator.v1.0.1 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.1
        version: 1.0.1
      - deprecation:
          message: |
            external-dns-operator.v1.0.0 is no longer supported. Please upgrade to the latest version from a supported stable channel.
        name: external-dns-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    - currentCSV: external-dns-operator.v1.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel8-operator@sha256:9ca751e84b8843cc62dc60550e5c4af741bf09a381ef62220e7eb3760ffe8524
          createdAt: 2024-01-22T09:56:14
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.1.1
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:f11f71448986aa17abec9caadb568a6cc34ef1a7898e6dc20bc6a512830ba476
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:b02bab3af52a2469ced96618f1d122464568ba21ebc0a3a945b78ec4e6bdc80d
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:9ca751e84b8843cc62dc60550e5c4af741bf09a381ef62220e7eb3760ffe8524
        - registry.redhat.io/edo/external-dns-rhel8@sha256:ffcc3f2e9b9feb889e7882465f7f034aba6b9ee0699a1b6c24e83f501a63ecca
        version: 1.1.1
      entries:
      - name: external-dns-operator.v1.1.1
        version: 1.1.1
      - name: external-dns-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: external-dns-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.3.1"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel8-operator@sha256:15700d4acb4705ec900c03b77fa50eaa7db9e59f33bbc819e4fdfc0b9f362f82
          createdAt: 2023-11-15T09:24:04
          olm.skipRange: <1.2.0
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/edo/external-dns-rhel8-operator@sha256:15700d4acb4705ec900c03b77fa50eaa7db9e59f33bbc819e4fdfc0b9f362f82
        - registry.redhat.io/edo/external-dns-rhel8@sha256:6263a78b2a170e56dfca2173f14dbf14f0a5bddb6ea600bfdef248c7d5f20e4b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e33874a51971a90917cf437fc6cbeea1da569ba07217f66f1bba96d594f58aed
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:a614ec94c2468e34e129e9ecd4bc0d1895eb67b96e77eb5ad94cd8bd507860f5
        version: 1.2.0
      entries:
      - name: external-dns-operator.v1.2.0
        version: 1.2.0
      name: stable-v1.2
    - currentCSV: external-dns-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1alpha1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-aws"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "testextdnsoperator.apacshift.support"
                    }
                  ],
                  "provider": {
                    "type": "AWS"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "Z04015592QJX3EK1YYYYY"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/dnszones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-azure-private"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-azure1.qe.azure.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "Azure"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "/subscriptions/53b4f551-f0fc-4bea-8cba-11111111111/resourceGroups/test-azure1-nxkxm-rg/providers/Microsoft.Network/privateDnsZones/test-azure1.qe.azure.devcluster.openshift.com"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-bluecat"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "blueCat": {
                      "configFile": {
                        "name": "bluecat-config"
                      }
                    },
                    "type": "BlueCat"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-gcp"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "test-gcp1.qe.gcp.devcluster.openshift.com"
                    }
                  ],
                  "provider": {
                    "type": "GCP"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  },
                  "zones": [
                    "test-gcp1-q6m5v-private-zone"
                  ]
                }
              },
              {
                "apiVersion": "externaldns.olm.openshift.io/v1beta1",
                "kind": "ExternalDNS",
                "metadata": {
                  "name": "sample-infoblox"
                },
                "spec": {
                  "domains": [
                    {
                      "filterType": "Include",
                      "matchType": "Exact",
                      "name": "myzonedomain.com"
                    }
                  ],
                  "provider": {
                    "infoblox": {
                      "credentials": {
                        "name": "infoblox-credentials"
                      },
                      "gridHost": "100.100.100.100",
                      "wapiPort": 443,
                      "wapiVersion": "2.12.2"
                    },
                    "type": "Infoblox"
                  },
                  "source": {
                    "openshiftRouteOptions": {
                      "routerName": "default"
                    },
                    "type": "OpenShiftRoute"
                  }
                }
              }
            ]
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
          createdAt: 2025-12-10T16:08:35
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.3.3
          operatorframework.io/suggested-namespace: external-dns-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/external-dns-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1alpha1
          - description: ExternalDNS describes a managed ExternalDNS controller instance
              for a cluster. The controller is responsible for creating external DNS
              records in supported DNS providers based off of instances of select
              Kubernetes resources.
            displayName: External DNS
            kind: ExternalDNS
            name: externaldnses.externaldns.olm.openshift.io
            version: v1beta1
        description: |-
          The ExternalDNS Operator deploys and manages ExternalDNS, which dynamically manages DNS records in external DNS Providers for specific Kubernetes resources.

          ## How it works
           Follow this link to get an idea of how ExternalDNS Operator works: [flow diagram](https://raw.githubusercontent.com/openshift/external-dns-operator/main/docs/images/external-dns-flow-openshift.png).
        displayName: ExternalDNS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - openshift
        - dns
        - externaldns
        - operator
        links:
        - name: Source code
          url: https://github.com/openshift/external-dns-operator
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/edo/external-dns-operator-bundle@sha256:07520162925e260338ac84df2beaa6c9a26775663f27305e6f66bbc68f3493bc
        - registry.redhat.io/edo/external-dns-rhel9-operator@sha256:f3e05eb1c1280a92a2c451a061b61d99828574a48cfef91369372065133b4464
        - registry.redhat.io/edo/external-dns-rhel9@sha256:36a24459014086c2df189ba457f01fb41d566a46e1986a6701ef113e14ac34af
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:ba9ff4c933739f1774bc8277d636053c5306863221a8c7b7b9ddc4470eb7feff
        version: 1.3.3
      entries:
      - name: external-dns-operator.v1.3.3
        version: 1.3.3
      - name: external-dns-operator.v1.3.2
        version: 1.3.2
      - name: external-dns-operator.v1.3.1
        version: 1.3.1
      - name: external-dns-operator.v1.3.0
        version: 1.3.0
      name: stable-v1.3
    defaultChannel: stable-v1
    packageName: external-dns-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: redhat.com
    name: service-binding-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: service-binding-operator.v0.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "service.binding/v1alpha2",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: quay.io/redhat-developer/servicebinding-operator@sha256:b355d2370926063a3de8c7a09c0ca8c2348a8d158d6a7095d0e5e8381cc95be5
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.service.binding
            version: v1alpha2
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/openshift-community-operators/service-binding-operator@sha256:5a5e2f775760aa68c85d0f69b700d23ef2a6be7bb415bd96401d03eb6077f90c
        - quay.io/redhat-developer/servicebinding-operator@sha256:b355d2370926063a3de8c7a09c0ca8c2348a8d158d6a7095d0e5e8381cc95be5
        version: 0.10.0
      entries:
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: beta
    - currentCSV: service-binding-operator.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindablekinds-sample"
                }
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "Kind": "Ddeployment",
                    "apiVersion": "apps/v1",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: quay.io/redhat-developer/servicebinding-operator@sha256:c9c9e45321db2d4d3cdc2d364337af844f69c9893d0cc74d2fa56c846ffcf3da
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
        description: " The Service Binding Operator enables application developers
          to more easily bind applications together with operator managed backing
          services such as databases, without having to perform manual configuration
          of secrets, configmaps, etc. The Service Binding Operator accomplishes this
          through automatically collecting binding information and sharing with an
          application to bind it with operator managed backing services. The binding
          is performed through a new custom resource called a ServiceBindingRequest.\n###
          Example\nA set of examples, each of which illustrates a usage scenario for
          the Service Binding Operator, is being developed in parallel with the Operator.
          Each example includes documentation and can be run either through the OpenShift
          web console or command line client. The examples are available [here](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md#example-scenarios)\n###
          Documentation\nRefer to the [documentation](https://github.com/redhat-developer/service-binding-operator/blob/master/README.md)\n###
          \ Help\nRaise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)\n###
          Licence\nService Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE) "
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Blog post
          url: https://developers.redhat.com/blog/2019/12/19/introducing-the-service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/openshift-community-operators/service-binding-operator@sha256:79a9191f0cd5d11af004ead87ba9eb5359c67fd658c346db4c3cea3b16b23987
        - quay.io/redhat-developer/servicebinding-operator@sha256:c9c9e45321db2d4d3cdc2d364337af844f69c9893d0cc74d2fa56c846ffcf3da
        version: 0.11.0
      entries:
      - name: service-binding-operator.v0.11.0
        version: 0.11.0
      - name: service-binding-operator.v0.10.0
        version: 0.10.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: candidate
    - currentCSV: service-binding-operator.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "BindableKinds",
                "metadata": {
                  "name": "bindable-kinds"
                },
                "spec": {}
              },
              {
                "apiVersion": "binding.operators.coreos.com/v1alpha1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "example-servicebinding"
                },
                "spec": {
                  "application": {
                    "group": "apps",
                    "name": "nodejs-rest-http-crud",
                    "resource": "deployments",
                    "version": "v1"
                  },
                  "services": [
                    {
                      "group": "postgresql.example.dev",
                      "kind": "Database",
                      "name": "pg-instance",
                      "version": "v1alpha1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1alpha3",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "application": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  },
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  }
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ClusterWorkloadResourceMapping",
                "metadata": {
                  "name": "cronjobs.batch"
                },
                "spec": {
                  "versions": [
                    {
                      "containers": [
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.containers[*]"
                        },
                        {
                          "path": ".spec.jobTemplate.spec.template.spec.initContainers[*]"
                        }
                      ],
                      "version": "*",
                      "volumes": ".spec.jobTemplate.spec.template.spec.volumes"
                    }
                  ]
                }
              },
              {
                "apiVersion": "servicebinding.io/v1beta1",
                "kind": "ServiceBinding",
                "metadata": {
                  "name": "servicebinding-sample"
                },
                "spec": {
                  "service": {
                    "apiVersion": "postgresql.example.dev/v1alpha1",
                    "kind": "Database",
                    "name": "pg-instance"
                  },
                  "type": "postgres",
                  "workload": {
                    "apiVersion": "apps/v1",
                    "kind": "Deployment",
                    "name": "nodejs-rest-http-crud"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          containerImage: quay.io/redhat-developer/servicebinding-operator@sha256:ac47f496fb7ecdcbc371f8c809fad2687ec0c35bbc8c522a7ab63b3e5ffd90ea
          description: An operator to support binding capabilities between imported
            apps and operator backed services
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-developer/service-binding-operator
          support: Service Binding Operator Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BindableKinds contains a list of bindable type (group, version,
              kind) found in the cluster. It is cluster-scoped and there is only single
              instance named 'bindable-kinds'.
            displayName: Bindable Kinds
            kind: BindableKinds
            name: bindablekinds.binding.operators.coreos.com
            version: v1alpha1
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1alpha3
          - description: Cluster Workload Resource Mapping defines the mapping for
              a specific version of an workload resource to a logical PodTemplateSpec-like
              structure. It provides a way to define exactly where binding data needs
              to be projected. Use this method when you are not able to configure
              custom path locations correctly by any other methods.
            displayName: Cluster Workload Resource Mapping
            kind: ClusterWorkloadResourceMapping
            name: clusterworkloadresourcemappings.servicebinding.io
            version: v1beta1
          - description: Service Binding expresses intent to bind a backing service
              with an application workload.
            displayName: Service Binding
            kind: ServiceBinding
            name: servicebindings.binding.operators.coreos.com
            version: v1alpha1
          - description: (Tech Preview) Service Binding implementing community specification
              (https://github.com/k8s-service-bindings/spec) describing the connection
              between a backing service and an application workload. Available as
              tech preview but subjected to change in near future.
            displayName: Service Binding (Spec API Tech Preview)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1alpha3
          - description: Service Binding implementing community specification (https://github.com/k8s-service-bindings/spec)
              describing the connection between a backing service and an application
              workload.
            displayName: Service Binding (Spec API)
            kind: ServiceBinding
            name: servicebindings.servicebinding.io
            version: v1beta1
        description: |
          The Service Binding Operator manages the data plane for applications and backing services. It enables developers to connect their
          applications to backing services (REST API, databases, event buses and others) with a consistent and predictable
          experience. The operator reads data made available by the control plane of backing services and projects the bindings
          data to applications either as accessible files mounted into the application’s container or environment variables.

          In Kubernetes, each service suggests a different way to access their secrets and developers will consume them in their
          application in a custom way. While this provides a good deal of flexibility, it also creates discrepancies and
          complexity dealing with each specific services, which leads large development teams to lose overall velocity.

          Service Binding Operator removes the error-prone manual configuration of binding information, provides service operators
          a low-touch administrative experience to provision and manage access to services and enriches development lifecycle.

          For additional details refer to the project [documentation](https://redhat-developer.github.io/service-binding-operator).

          Get Started with Service Binding Operator
          * Find out about SBO’s [prerequisites](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/installing-service-binding.html).
          * Refer to the [Quick Start Guide](https://redhat-developer.github.io/service-binding-operator/userguide/getting-started/quick-start.html) to see SBO in action in a simple scenario.

          Need Help
          * Raise a ticket for bugs, features and enhancement [here](https://github.com/redhat-developer/service-binding-operator/)

          Licence
          * Service Binding Operator is licensed under [Apache License 2.0](https://github.com/redhat-developer/service-binding-operator/blob/master/LICENSE)

          Service Binding Operator is providing and supporting two different APIs.
          * `binding.operators.coreos.com/v1alpha1`: This API is compliant with the Service Binding specification. It is fully supported and considered as the mature API. It’s the API we recommend in production environments.
          * `servicebinding.io/v1beta1`: This API is the one defined in the Service Binding specification. It is available in Service Binding Operator 1.x.

          We’ll consider supporting only the API from the specification, once the Service Binding specification will be officially GA. Of course, that will be a breaking change and handle in a safe way for you.
        displayName: Service Binding Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ""
        links:
        - name: Documentation
          url: https://redhat-developer.github.io/service-binding-operator
        maintainers:
        - email: service-binding-support@redhat.com
          name: Openshift Application Services
        maturity: candidate
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/redhat-developer/servicebinding-operator@sha256:ac47f496fb7ecdcbc371f8c809fad2687ec0c35bbc8c522a7ab63b3e5ffd90ea
        - quay.io/openshift-community-operators/service-binding-operator@sha256:54ea11add0a1d988e0c965968f9a65e011978190f76fa2f826f1378474bac1d4
        version: 1.4.0
      entries:
      - name: service-binding-operator.v1.4.0
        version: 1.4.0
      - name: service-binding-operator.v1.3.4
        version: 1.3.4
      - name: service-binding-operator.v1.3.3
        version: 1.3.3
      - name: service-binding-operator.v1.3.2
        version: 1.3.2
      - name: service-binding-operator.v1.3.1
        version: 1.3.1
      - name: service-binding-operator.v1.3.0
        version: 1.3.0
      - name: service-binding-operator.v1.2.0
        version: 1.2.0
      - name: service-binding-operator.v1.1.1
        version: 1.1.1
      - name: service-binding-operator.v1.1.0
        version: 1.1.0
      - name: service-binding-operator.v1.0.1
        version: 1.0.1
      - name: service-binding-operator.v1.0.0
        version: 1.0.0
      - name: service-binding-operator.v0.9.1
        version: 0.9.1
      - name: service-binding-operator.v0.9.0
        version: 0.9.0
      - name: service-binding-operator.v0.8.0
        version: 0.8.0
      - name: service-binding-operator.v0.7.1
        version: 0.7.1
      - name: service-binding-operator.v0.7.0
        version: 0.7.0
      - name: service-binding-operator.v0.6.0
        version: 0.6.0
      - name: service-binding-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: service-binding-operator
    provider:
      name: Red Hat
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/openshift/kueue-operator
    name: kueue-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kueue-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kueue.openshift.io/v1",
                "kind": "Kueue",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kueue-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "config": {
                    "integrations": {
                      "frameworks": [
                        "BatchJob"
                      ]
                    }
                  },
                  "managementState": "Managed"
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-09-17T12:13:48Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-kueue-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Kueue
            name: kueues.kueue.openshift.io
            version: v1
        description: Red Hat build of Kueue is a collection of APIs, based on the
          [Kueue](https://kueue.sigs.k8s.io/docs/) open source project, that extends
          Kubernetes to manage access to resources for jobs. Red Hat build of Kueue
          does not replace any existing components in a Kubernetes cluster, but instead
          integrates with the existing Kubernetes API server, scheduler, and cluster
          autoscaler components to determine when a job waits, is admitted to start
          by creating pods, or should be preempted.
        displayName: Red Hat build of Kueue
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kueue-operator
        links:
        - name: Kueue Operator
          url: https://github.com/openshift/kueue-operator
        maintainers:
        - email: aos-node@redhat.com
          name: Node team
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/kueue-operator
        relatedImages:
        - registry.redhat.io/kueue/kueue-rhel9-operator@sha256:43b1aa1c12ccb31905ae7b9f04ac33f4b56f44076a24f708f514e1ee63f929dc
        - registry.redhat.io/kueue/kueue-rhel9@sha256:dcb9dec563ef3178217e00a544ef0408fb25cd4f3fe155a7e6ad6e6f6ab98613
        - registry.redhat.io/kueue/kueue-must-gather-rhel9@sha256:5db9b63e8917bf1f5c32dbdc438d067fd0c6e424b6bbb8dc575ad322d590396e
        - registry.redhat.io/kueue/kueue-operator-bundle@sha256:c39816efcfdf1566636ab39ebdeb6c2c26c6d3a16a050eb2364548a555cb62b6
        version: 1.1.0
      entries:
      - name: kueue-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    - currentCSV: kueue-operator.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kueue.openshift.io/v1",
                "kind": "Kueue",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kueue-operator"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "config": {
                    "integrations": {
                      "frameworks": [
                        "BatchJob"
                      ]
                    }
                  },
                  "managementState": "Managed"
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-11-14T19:51:19Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-kueue-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Kueue is a cluster resource for configuration of the Kueue
              operand
            displayName: Kueue
            kind: Kueue
            name: kueues.kueue.openshift.io
            version: v1
        description: Red Hat build of Kueue is a collection of APIs, based on the
          [Kueue](https://kueue.sigs.k8s.io/docs/) open source project, that extends
          Kubernetes to manage access to resources for jobs. Red Hat build of Kueue
          does not replace any existing components in a Kubernetes cluster, but instead
          integrates with the existing Kubernetes API server, scheduler, and cluster
          autoscaler components to determine when a job waits, is admitted to start
          by creating pods, or should be preempted.
        displayName: Red Hat build of Kueue
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kueue-operator
        links:
        - name: Kueue Operator
          url: https://github.com/openshift/kueue-operator
        maintainers:
        - email: aos-node@redhat.com
          name: Node team
        maturity: stable
        minKubeVersion: 1.28.0
        provider:
          name: Red Hat, Inc
          url: https://github.com/openshift/kueue-operator
        relatedImages:
        - registry.redhat.io/kueue/kueue-must-gather-rhel9@sha256:0d6fe9adb309e62104deb675c5f1b72a4e62821991f2f673182a025cbaa795d0
        - registry.redhat.io/kueue/kueue-operator-bundle@sha256:005047a1a84c92358df9736f9661136e185b1b9d4d9a2eeeb322aa6cb61d63a1
        - registry.redhat.io/kueue/kueue-rhel9-operator@sha256:0e99e54d7b740518813788ca79def5a31ecaae9c154d9b243afb681c30cb5b66
        - registry.redhat.io/kueue/kueue-rhel9@sha256:bdf48afa3c62beec7402edddac8803363e793cf74c1c4cf908ae81845296ce3b
        version: 1.2.0
      entries:
      - name: kueue-operator.v1.2.0
        version: 1.2.0
      name: stable-v1.2
    defaultChannel: stable-v1.2
    packageName: kueue-operator
    provider:
      name: Red Hat, Inc
      url: https://github.com/openshift/kueue-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: advanced-cluster-management
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: advanced-cluster-management.v2.14.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "operator.open-cluster-management.io/v1",
            "kind": "MultiClusterHub", "metadata": {"name": "multiclusterhub", "namespace":
            "open-cluster-management"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-10-27T20:24:30Z"
          description: Advanced provisioning and management of OpenShift and Kubernetes
            clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.13.0 <2.14.1'
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1",
            "kind":"MultiClusterHub","metadata":{"name":"multiclusterhub","namespace":"open-cluster-management"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: open-cluster-management
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:b6eb5df09bfae9f9d0bccef736aefbd561127c02a78b00e38f38e4efb3ec04f2
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          repository: https://github.com/open-cluster-management/multiclusterhub-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MulticlusterHub defines the configuration
              for an instance of a multicluster hub, a central point for managing multiple
              Kubernetes-based clusters. The deployment of multicluster hub components
              is determined based on the configuration that is defined in this resource.
            displayName: MultiClusterHub
            kind: MultiClusterHub
            name: multiclusterhubs.operator.open-cluster-management.io
            version: v1
        description: "Red Hat Advanced Cluster Management for Kubernetes provides
          the multicluster hub, a central management console for managing multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the hub to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can set compliance requirements to ensure
          that the clusters maintain the specified security requirements. You can
          also deploy business applications across your clusters.\n\n## How to install\nUse
          of this Red Hat product requires a licensing and subscription agreement.\n\nInstall
          the Red Hat Advanced Cluster Management for Kubernetes operator by following
          instructions presented when you click the `Install` button. After installing
          the operator, create an instance of the `MultiClusterHub` resource to install
          the hub.\n\nNote that if you will be using the hub to manage non-OpenShift
          4.x clusters, you will need to create a Kubernetes `Secret` resource containing
          your OpenShift pull secret and specify this `Secret` in the `MultiClusterHub`
          resource, as described in the install documentation.\n### Special considerations
          for disconnected network environments\nIf you are installing Red Hat Advanced
          Cluster Management for Kubernetes in a disconnected network environment,
          there are some special install and upgrade requirements.\n#### Include multicluster
          engine for Kubernetes in mirrored catalog\nInstalling an OLM operator in
          a disconnected network environment involves the use of a local mirrored
          operator catalog and image registry. Red Hat Advanced Cluster Management
          for Kubernetes requires (and automatically installs) the multicluster engine
          for Kuberenetes operator so this operator package is needed in your local
          mirrored operator catalog in addition to the one for Red Hat Advanced Cluster
          Management for Kubernetes.\n\nif you are using a full mirror of the Red
          Hat operators catalog, no special action is needed when creating the mirror
          catalog.\n\nIf you are using a filtered (rather than full) mirror of the
          OLM catalog, be sure to include both the `advanced-cluster-management` **and**
          `multicluster-engine` packages in your mirrored catalog when creating it.\n####
          Add annotation to MultiClusterHub resource\nIf you are installing or upgrading
          to a Red Hat Advanced Cluster Management for Kubernetes release prior to
          release 2.7, an `mce-subscription-spec` annotation is required in the instance
          of the `MultiClusterHub` resource you create to set up your hub. This annotation
          identifies the catalog source for your local mirrored operator catalog and
          is required when installing releases prior to release 2.7 regardless of
          whether your local mirrored operator catalog is a full mirror or a filtered
          one.\n\nThe `mce-subscription-spec` annotation is not usually needed, and
          thus can usually be omitted, when installing or upgrading to release 2.7
          or a later release. Starting with release 2.7, the Red Hat Advanced Cluster
          Management for Kubernetes operator is able to automatically determine the
          catalog source to use in typical scenarios.\n\nThe following is an example
          of the `mce-subscription-spec` annotation:\n\n```\n apiVersion: operator.open-cluster-management.io/v1\n
          kind: MultiClusterHub\n metadata:\n \tannotations:\n \t\tinstaller.open-cluster-management.io/mce-subscription-spec:
          '{\"source\": \"my-catalog-source\"}'\n spec: {}\n\n```\n\nReplace `my-catalog-source`
          with the name of your catalog source.\n\nIf you are creating the `MultiClusterHub`
          resource using the OperatorHub UI, switch to the YAML view for the resource
          in order to insert the annotation.\n### Where to find more installation
          information\nYou can find additional installation guidance in the [install
          documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/install/installing). "
        displayName: Advanced Cluster Management for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - acm
        - advanced-cluster-management
        - install
        - multiclusterhub
        - rhacm
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.14/
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:6cc12edafea8f130331797349cc9f1c06853cef5ee0a238d20205894a77aec96
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:cce2e0c3e48140e70a389821f4238e53ea496473d3ccd74b045059bc3cfd2982
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:ac64da0f40dc39078e7cf604293471e20ca627e90c381826f1f10136c21ac1a2
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:17b7618bd0d09665c97a9ad835ea6389ac4d1540f3675f6a34851916fc19b923
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:0bb769131d07651f425b823e759746ea9d9af1e1006d610341f4e49188450f2d
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:0e137637b57c5c77087f3f0cf81d22c2eb9ecfd60ba96c90ff1e363d2650cf84
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:ee59f307e468e2b7b38f7c040898d587d441f8fb3d59cb022ae23e4717739e3f
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:393c385c8d4424539cd95b9fab090f3015e0812a3688beee83c2c515f1235f24
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:91e009061d720b1d1e5a6deafe295fa4dd7d7dd0c6fe17587639a623ca07159a
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:7a5f323bada97dbe0ad204a64f714c0acf37e9d261776a24f0cc7e0122327354
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:39b5feb4dcf91feb124adfb629c14ec729f96860c6c16e8a2c05b6b2348a6b6c
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:97049a14110198594e3ae815748111262359970937bcd6a83d9c98a70bbd134a
        - registry.redhat.io/rhel8/postgresql-16@sha256:776f420f734f9c1d6e0589fc6d9acee8f1c2bfd1f838348360bb9db584920602
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:f84cad07033b005bed36048f3e4bb00a613800cffd3d3892bfb1e3ccea2a1c58
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:b83f150ab2dd851e3662ad01f3057482e5f454e28d04d50ce1c321efa2090f33
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:e53522a9ce0e3adfabdd809125a442b550c11c4c753d9665794c8ff640b86895
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c3d261bd2eb4842c279a0d35c754699a484ebb320617a893195088579a46fec9
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:7ca1b3ffb295e55b4b6d08ffad5d5a982c8e9d8ce7638eb956ea877580a57975
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:c058a4198b256d998f85bd8ee07882f42628748d827bd978d4a70af05d411665
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:1b1f6f85af0910f1acd029f54a608b25d3a2977c3d8b323266391543324305b4
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:afa4337370e8ea6da0e25d62c7197157b85281916a1fff4c881eafaf14a2c3e8
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:c05ba064ebaad51a625361ceecf30b6d4bd28f3c5d9efb279f39c98afc050a75
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:dd4a7678648872ea4294b867cdc7bca0ac063b81eaeac9bf5d4fddcaffb96bac
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:6c369fa856f18ef60d25a57f0588ec5a0bef18d0226b957db5e5d597fa5158f7
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:7f86f9a33460384c60e62813e665b89bb6288aa3a4d56ca09040063d7b02b9bc
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:0684f07fdb2f648182a8410722156decef4ee503cb1eb66274af32d946bd8d80
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:b42323be8ff41fa98332a5b2fa31af73a0da9605ff746122420ac46aa8f4a8d2
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:a89c3f88ab17823607e3c6af022991263b418b38d667507d4c522acd590680b3
        - registry.redhat.io/rhacm2/console-rhel9@sha256:94cfe0cdb4c01ff7ad602bf0ee6af3010e5b748363845d2205070764dcbb2eb2
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:973eb3ca3da32c87ba308928a21fbd25514b2f6a6662300d4928479cb554cff3
        - registry.redhat.io/rhel9/redis-7@sha256:b4f58ad83ab8719a2e102f38ee526546cd1d56428901afc3add45c9a0e2a2f12
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:f6511171c82d52fef18533eee1d6511f3850c5cf4eda2bd9007a7a8642d0a1c8
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:b8f8f931f498855461ff997f73470fd957a5f32719a62c993f07050e75d76bfe
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:50840a92f947e739ef4e7cc1106341511221cd22901fc818f4f53697ef73045b
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:5a86ed779e8a9f68f121029ea7fd21c37a4108ab3202b35dbb371a2b0612f215
        - registry.redhat.io/rhacm2/acm-governance-policy-framework-addon-rhel9@sha256:f60071d35949e2e53cb0b8eec84f7d5c1e24bfd5f3165b34707059b61bb98cb0
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:b6eb5df09bfae9f9d0bccef736aefbd561127c02a78b00e38f38e4efb3ec04f2
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:dec26e10f2c5c0da5a3d2be3d22255c08c55c3afcd9c9c34f53b29330f74efcb
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:d31e3e2b0126f94f12f9eb0af37c8bc08ccdeea06b61068a04d711cbfd9e3b99
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:4c09ad98d2cd3a41f5f437ee7023137ca57084430e00fb44e976a7a687dfadf9
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:973f4e668937fa9faee550fdf8451c74354f48756c54471f5f1a63307e4e5a66
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:940c0564ced75b7912d3ffc923a1f6bab9aed0f4a52962f7f894d08937b7d37e
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:bf26f5a794224b5ac6b5a7c7457f345914612610d24e9af563b92eecea614eba
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:3cdc71fc6932406fb44dc0d162826713a515d7b032ddb8fec5582bfa9a9cb937
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:a74270d8ec7d1d64c86e80fd2c67d8dc8bb0a31b30b996de737491e3c7180e46
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:e20ce08100730812c47977fd754c53d3bc47ce13f57c0716b3f6487fba939c8f
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:f930cda4750df9922781fd8fff84b9f4df219679cd2929e58961c9371dc2c5a1
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:2233fe74d4d9cbd226e130b314a546d5473515e0389cd19c25164c6c543aa54a
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:57f28e416e9d84a9d690b6d262a4263d8da060a3254253c68aa7945414f15535
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:467557f453bde3feaa0129f38c52fba00c3b98acddbf8978bf21ef13a9890fab
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c13557b24b0a172deac742cbc4b6dc6b09090170c0c0a4a9c0dd307a00c54661
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:a72ceef5e2f992ef6d593978623be5fb15a10f1a5276a3bdba0364d26aaaa0fa
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:3491ec932d90112e89f3a4cebe5bdd9ed6a7811f116df43bab8bb5f827129361
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:4628b05c002b6186d07f1bd6bd670bc2f65254168532d868282589b1da48e930
        - registry.redhat.io/rhel9/memcached@sha256:42a0c2506b38ce9f5ee744a299cb135781186e628fdf7c09d2d35ba3b6decef8
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:d28520c44b861c75d1de8544be8b3a8659cb5695c0ea0e7b4ea3a9adfaa26748
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:b297b4deda5906897b8d1949ddbabb6fb90224244ff2b6d86139110ac900fd9b
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:f99086a8e828f25d96249048905743ccd5a21f184b21fca62d01650c898a346f
        version: 2.14.1
      entries:
      - name: advanced-cluster-management.v2.14.1
        version: 2.14.1
      - name: advanced-cluster-management.v2.14.0
        version: 2.14.0
      name: release-2.14
    - currentCSV: advanced-cluster-management.v2.15.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "operator.open-cluster-management.io/v1",
            "kind": "MultiClusterHub", "metadata": {"name": "multiclusterhub", "namespace":
            "open-cluster-management"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          createdAt: "2025-12-03T14:52:20Z"
          description: Advanced provisioning and management of OpenShift and Kubernetes
            clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=2.13.0 <2.15.0'
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1",
            "kind":"MultiClusterHub","metadata":{"name":"multiclusterhub","namespace":"open-cluster-management"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: open-cluster-management
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:5740d54261321739e324665725566bed539687d21b4b46b7edb359cce491dadc
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          repository: https://github.com/open-cluster-management/multiclusterhub-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MulticlusterHub defines the configuration
              for an instance of a multicluster hub, a central point for managing multiple
              Kubernetes-based clusters. The deployment of multicluster hub components
              is determined based on the configuration that is defined in this resource.
            displayName: MultiClusterHub
            kind: MultiClusterHub
            name: multiclusterhubs.operator.open-cluster-management.io
            version: v1
        description: "Red Hat Advanced Cluster Management for Kubernetes provides
          the multicluster hub, a central management console for managing multiple
          Kubernetes-based clusters across data centers, public clouds, and private
          clouds. You can use the hub to create Red Hat OpenShift Container Platform
          clusters on selected providers, or import existing Kubernetes-based clusters.
          After the clusters are managed, you can set compliance requirements to ensure
          that the clusters maintain the specified security requirements. You can
          also deploy business applications across your clusters.\n\n## How to install\nUse
          of this Red Hat product requires a licensing and subscription agreement.\n\nInstall
          the Red Hat Advanced Cluster Management for Kubernetes operator by following
          instructions presented when you click the `Install` button. After installing
          the operator, create an instance of the `MultiClusterHub` resource to install
          the hub.\n\nNote that if you will be using the hub to manage non-OpenShift
          4.x clusters, you will need to create a Kubernetes `Secret` resource containing
          your OpenShift pull secret and specify this `Secret` in the `MultiClusterHub`
          resource, as described in the install documentation.\n### Special considerations
          for disconnected network environments\nIf you are installing Red Hat Advanced
          Cluster Management for Kubernetes in a disconnected network environment,
          there are some special install and upgrade requirements.\n#### Include multicluster
          engine for Kubernetes in mirrored catalog\nInstalling an OLM operator in
          a disconnected network environment involves the use of a local mirrored
          operator catalog and image registry. Red Hat Advanced Cluster Management
          for Kubernetes requires (and automatically installs) the multicluster engine
          for Kuberenetes operator so this operator package is needed in your local
          mirrored operator catalog in addition to the one for Red Hat Advanced Cluster
          Management for Kubernetes.\n\nif you are using a full mirror of the Red
          Hat operators catalog, no special action is needed when creating the mirror
          catalog.\n\nIf you are using a filtered (rather than full) mirror of the
          OLM catalog, be sure to include both the `advanced-cluster-management` **and**
          `multicluster-engine` packages in your mirrored catalog when creating it.\n####
          Add annotation to MultiClusterHub resource\nIf you are installing or upgrading
          to a Red Hat Advanced Cluster Management for Kubernetes release prior to
          release 2.7, an `mce-subscription-spec` annotation is required in the instance
          of the `MultiClusterHub` resource you create to set up your hub. This annotation
          identifies the catalog source for your local mirrored operator catalog and
          is required when installing releases prior to release 2.7 regardless of
          whether your local mirrored operator catalog is a full mirror or a filtered
          one.\n\nThe `mce-subscription-spec` annotation is not usually needed, and
          thus can usually be omitted, when installing or upgrading to release 2.7
          or a later release. Starting with release 2.7, the Red Hat Advanced Cluster
          Management for Kubernetes operator is able to automatically determine the
          catalog source to use in typical scenarios.\n\nThe following is an example
          of the `mce-subscription-spec` annotation:\n\n```\n apiVersion: operator.open-cluster-management.io/v1\n
          kind: MultiClusterHub\n metadata:\n \tannotations:\n \t\tinstaller.open-cluster-management.io/mce-subscription-spec:
          '{\"source\": \"my-catalog-source\"}'\n spec: {}\n\n```\n\nReplace `my-catalog-source`
          with the name of your catalog source.\n\nIf you are creating the `MultiClusterHub`
          resource using the OperatorHub UI, switch to the YAML view for the resource
          in order to insert the annotation.\n### Where to find more installation
          information\nYou can find additional installation guidance in the [install
          documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.12/html/install/installing). "
        displayName: Advanced Cluster Management for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - acm
        - advanced-cluster-management
        - install
        - multiclusterhub
        - rhacm
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.12/
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhacm2/acm-cli-rhel9@sha256:c5bc42e57f4bae70f1e0b2fd1de345d0f1ef7e1e41fa6cd790198bcd2023bc1a
        - registry.redhat.io/rhacm2/multicluster-operators-subscription-rhel9@sha256:2c8f89fa9958f0422c6ce6a1acf6e6343967c78d0966937fca19e27e52e7a428
        - registry.redhat.io/rhacm2/cert-policy-controller-rhel9@sha256:90b919807421554282a06cbb5d2e4b4b376b686a884e62566fbf257351f5a31f
        - registry.redhat.io/rhacm2/kube-state-metrics-rhel9@sha256:78c00553182db4b8d923c33afcf64617499cb5c701314a4c977673613b8fa5a6
        - registry.redhat.io/rhacm2/node-exporter-rhel9@sha256:b70ed3f5e36043f6050d6d71455acbf0ac9f6968a26579abbe20e47b71e91203
        - registry.redhat.io/rhacm2/multicloud-integrations-rhel9@sha256:1054b185a0118a9752c18ee6036c486f84d824366ed879d2ab4594c542219099
        - registry.redhat.io/rhacm2/acm-operator-bundle@sha256:e25d8d0deab4139ba82e64666074e51b4d9c768f4e5e377483bf1d787613d33c
        - registry.redhat.io/rhacm2/cluster-backup-rhel9-operator@sha256:833837b3f89a4c9f8925e32c7550418169a839ce14b12915d85de6af095d5847
        - registry.redhat.io/rhem/flightctl-userinfo-proxy-rhel9@sha256:357ce9e08c63c1f91512dcf01fc1073d3d44222ac1d97306709467282e4db9fa
        - registry.redhat.io/rhel9/memcached@sha256:14568dc13790fa3d8827e3ae7ef7bae37096ef32b8a158310b3e489bca5a0ab3
        - registry.redhat.io/rhacm2/console-rhel9@sha256:f96a68657bd4eef8c0fb1c9d86203e73fecfea62b4f87425caa1e5f65173c0b7
        - registry.redhat.io/rhacm2/mtv-integrations-rhel9@sha256:4508924c255a6f352c3868b281c7e8eb19a6d857e32fa5f59d925875384549e7
        - registry.redhat.io/rhacm2/acm-search-v2-api-rhel9@sha256:296062e27abf3c960f042757bcdcca3169d9e318627d2fcd94ff6fcfa72ae2f5
        - registry.redhat.io/rhacm2/acm-must-gather-rhel9@sha256:5740d54261321739e324665725566bed539687d21b4b46b7edb359cce491dadc
        - registry.redhat.io/rhacm2/rbac-query-proxy-rhel9@sha256:4228de3d4a7d2240e13cfbb9132f75792a9c4b86e494fb3bb0ed53f6df267573
        - registry.redhat.io/rhacm2/grafana-dashboard-loader-rhel9@sha256:c0fc3b0eeda8340f8ca684c215333c50d7896e861b6f899d4c93317c90f21d65
        - registry.redhat.io/openshift4/ose-configmap-reloader-rhel9@sha256:de5f2b08ea7f938bdb8764bec1401d6ee55298754f91e912e14fc2faa0bf0796
        - registry.redhat.io/rhacm2/acm-cluster-permission-rhel9@sha256:f22a55f1a6c720d83532a5af45e7aeb1593163f0e467290d2ffadbf4bb8b10cc
        - registry.redhat.io/rhacm2/acm-prometheus-config-reloader-rhel9@sha256:029a326a842d7645fc944b177234053e416517747ac6a6753675555adf2af328
        - registry.redhat.io/rhacm2/multicluster-operators-application-rhel9@sha256:265e3de1cb6b823d2165a109dfb2fae4c7647ae543c920fe66d566698d851360
        - registry.redhat.io/rhacm2/insights-metrics-rhel9@sha256:4512e39b757445f9d3d523f121319620208bf81642f39006fe491cb37028a429
        - registry.redhat.io/rhacm2/metrics-collector-rhel9@sha256:2b2a285276dcbce1863b2bf535042d3a4cd394f11cf73adc451226e53af54ad9
        - registry.redhat.io/rhacm2/multiclusterhub-rhel9@sha256:6b57bada2bce96583d5f80ae4bbcf4cdb54fcd1a214e75433e56d626e4a7f0bf
        - registry.redhat.io/rhacm2/acm-governance-policy-framework-addon-rhel9@sha256:a88b2a9ec0b88483294f01848cd35548d82607c8b76ec4f24ad87271b5d7d56e
        - registry.redhat.io/rhem/flightctl-db-setup-rhel9@sha256:2aab6e480a201e202dd7f670caa27838db2c219e08c2726cbea5e7885091d639
        - registry.redhat.io/rhacm2/thanos-rhel9@sha256:5bf5ff559fd9f0c06995237cc235d0939b44c023612e0179a9bc8de99cf185e5
        - registry.redhat.io/rhacm2/acm-multicluster-observability-addon-rhel9@sha256:0ef909e3fa2bd636c2c727bb86ae86904af4eafa77ef533359c52727567e0c4e
        - registry.redhat.io/rhacm2/memcached-exporter-rhel9@sha256:490ad6fd2150a463cc7783342ad8ffdd5753af9c76cf27dd3266364439e2b6ab
        - registry.redhat.io/rhacm2/acm-governance-policy-addon-controller-rhel9@sha256:ad124178d2f0d7e4184a1c18445a916e289629b382d0ed9fceb76ab8eeaeb6fd
        - registry.redhat.io/rhacm2/acm-grafana-rhel9@sha256:435b0f0df603380649b287ec8e0be94905501badbbaa24ae99450fb9c3f20378
        - registry.redhat.io/rhacm2/observatorium-rhel9-operator@sha256:a4bd68cf7b12b5f9b133983c988bd668f1dcddfd090b9912ee3d069d2f9d7517
        - registry.redhat.io/rhacm2/multicluster-observability-rhel9-operator@sha256:91f98eefba17fb0766eb3d6b94e7cd276a1ee5baf6c39c153929b4704b3c3b91
        - registry.redhat.io/rhacm2/config-policy-controller-rhel9@sha256:79c843df370a7ff57d1f9fbba162c252729b7de331d88fb1679b54544cc7caac
        - registry.redhat.io/rhel9/redis-7@sha256:bbce339dd580334f0e1019a31d97b053796bd16bdee79745a3102a22ce2983b0
        - registry.redhat.io/rhacm2/prometheus-alertmanager-rhel9@sha256:22a6b529dbf9aa27d15f3260bcc6acc1300bb6ac9ad60f47fcc115f24a5b832b
        - registry.redhat.io/rhem/flightctl-ui-rhel9@sha256:9d486e0652b865d109c8fd7592ae96b43c1bfcda6ce154c11d6b91fbc15eb293
        - registry.redhat.io/rhacm2/multicluster-role-assignment-rhel9@sha256:203cc1df7f09512c1578867722c61fcb90518c19d612e9a89b7b626db2805ea9
        - registry.redhat.io/rhacm2/volsync-rhel9@sha256:3dfa7a76514dbd82e6043e535a868c018d909f19ae9714745934765a68e3c3fd
        - registry.redhat.io/rhem/flightctl-alertmanager-proxy-rhel9@sha256:1d59b2cdbc4824ae2a8c1b32e7beae87331b410bb1f24c5216efd2629dd08a86
        - registry.redhat.io/rhacm2/multicluster-operators-channel-rhel9@sha256:b541e86af7b6b458c58755f092147868164c2cbf0b239239d8331876fb6996b9
        - registry.redhat.io/rhacm2/search-collector-rhel9@sha256:fa26debe735df99a87997ef107ea56b7edf94168b98bd02bfe146f593c3e58c9
        - registry.redhat.io/rhem/flightctl-periodic-rhel9@sha256:e1bc46429dc2da167e27400cce84af2082be150f577b37f98912371b6d684bbc
        - registry.redhat.io/rhacm2/prometheus-rhel9@sha256:4f78bd465a4892788b85f2817c4e950d98fede462a2cc6725546bedc68683281
        - registry.redhat.io/rhem/flightctl-alert-exporter-rhel9@sha256:2a1f1cf703782cc0cb07a8c6f950eadf209f47baf1186a2045210eda6b6d8246
        - registry.redhat.io/rhacm2/klusterlet-addon-controller-rhel9@sha256:3ea6921965c3f90b02a8e71287159f0771cc9fb5bbd37ab8c594df235e79d9fc
        - registry.redhat.io/rhem/flightctl-cli-artifacts-rhel9@sha256:1c73ab166a99713bb9a7e17d347150213399740849524dc0a9471804c1a80d61
        - registry.redhat.io/rhacm2/acm-search-v2-rhel9@sha256:7a050603905f8cd0a5545b87475f077ff5639cff3c1c72eba0e6c9adfa1136e2
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:eac5ade5fc49b724ef33c05c81bf960f7bec3f52faa2e44db249d05bcc45c280
        - registry.redhat.io/rhacm2/kube-rbac-proxy-rhel9@sha256:1621430aed061d140280a41bca527d616b4801f6dec9684792e7372a75fd778e
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:5f1fc557bef7e06ad285e94e20e4c1bb4f2b8b31c6239d195fd93ff02a530f9c
        - registry.redhat.io/rhacm2/acm-prometheus-rhel9@sha256:c1a264cc0484c6f58dd9915cb6575605ca3d6b1c2dc20a4841fc7afd906a8833
        - registry.redhat.io/rhacm2/governance-policy-propagator-rhel9@sha256:e27e5adc9169479aacc701677c740bb21c12a81d0df4a55442605d3dceffa91b
        - registry.redhat.io/rhacm2/insights-client-rhel9@sha256:3329ee154252a8aa0f6208a59d21fd93198c01b42a1022a7310796ece8eeed0d
        - registry.redhat.io/rhem/flightctl-worker-rhel9@sha256:cbd55d9bfd2056b3916581e51e547225b5b007c266c670844fc0881ed2cc67de
        - registry.redhat.io/rhacm2/acm-search-indexer-rhel9@sha256:34e66dd3f7dbc4760c8c6d3c9feae7bed6ff3357c8ee5a1d16e058bd496f7188
        - registry.redhat.io/rhacm2/endpoint-monitoring-rhel9-operator@sha256:259bda37cfa2785051894838cf660a22564a36739eed7f25952703bf193c27fd
        - registry.redhat.io/rhacm2/thanos-receive-controller-rhel9@sha256:d589008f69fdc4738b2384d1098de2beeb7b7d2ee3dd64309d4f10308ab40afa
        - registry.redhat.io/rhacm2/observatorium-rhel9@sha256:0e09bf9106e6937212b83c989657f8984547c81b272990cfe6b71158b8966a03
        - registry.redhat.io/rhem/flightctl-ui-ocp-rhel9@sha256:19630eb9d520219cb515c2da23090efba4a15f3bdc6539af695c5b546c35d61e
        - registry.redhat.io/rhem/flightctl-api-rhel9@sha256:ad8ee7504e9d69edace4de3b119cdde99885677bebdbf0a6c11d3e62d92d1aec
        - registry.redhat.io/cluster-observability-operator/obo-prometheus-rhel9-operator@sha256:e2681bce57dc9c15701f5591532c2dfe8f19778606661339553a28dc003dbca5
        - registry.redhat.io/rhacm2/acm-volsync-addon-controller-rhel9@sha256:a7b322fe65406009776e894d98055e848abe38f3c6e4c5ec7abb40321c066ff6
        - registry.redhat.io/rhacm2/acm-siteconfig-rhel9@sha256:d8645f5266b1cadb7fc8139ae1c8e77732cbbe0642f52547df536e9fbcecc03a
        - registry.redhat.io/rhel8/postgresql-16@sha256:d64b9dff3ebf4a277080adf043d4ad56efc7b14a646f0ea72b911f58e28d50cf
        - registry.redhat.io/rhacm2/submariner-addon-rhel9@sha256:e30dc28359ddb8fe2ddaa55e43e69cafed9ffe3a64fecebcb03a850a64fe2c59
        - registry.redhat.io/ubi9/ubi-minimal@sha256:34880b64c07f28f64d95737f82f891516de9a3b43583f39970f7bf8e4cfa48b7
        version: 2.15.0
      entries:
      - name: advanced-cluster-management.v2.15.0
        version: 2.15.0
      name: release-2.15
    defaultChannel: release-2.15
    packageName: advanced-cluster-management
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-kafka-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kafka-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/kafka-operator@sha256:0070de045fb7c4e5962075c4fd259e600d66c64fced1172c0fff0a4f8c2d677f
          description: Stackable Operator for Apache Kafka
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/kafka-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for KafkaClusterSpec via `CustomResource`
            displayName: kafkaclusters.kafka.stackable.tech
            kind: KafkaCluster
            name: kafkaclusters.kafka.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - registry.connect.redhat.com/stackable/stackable-apache-kafka-operator@sha256:59b651c4353f3908af5feee8f44f66385b20caab983a477087c434244f4f9234
        - quay.io/stackable/kafka-operator@sha256:0070de045fb7c4e5962075c4fd259e600d66c64fced1172c0fff0a4f8c2d677f
        version: 25.11.0
      entries:
      - name: kafka-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-kafka-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: SusQL Operator Contributors
      provider-url: https://github.com/sustainable-computing-io/susql-operator
    name: susql-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: susql-operator.v0.0.34
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "susql.ibm.com/v1",
                "kind": "LabelGroup",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "susql-operator",
                    "app.kubernetes.io/instance": "labelgroup-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "susql-operator",
                    "app.kubernetes.io/part-of": "susql-operator"
                  },
                  "name": "labelgroup-sample"
                },
                "spec": {
                  "labels": [
                    "labelgroup-sample-1",
                    "labelgroup-sample-2"
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: quay.io/sustainable_computing_io/susql_operator:0.0.34
          createdAt: "2025-07-10T01:20:37Z"
          description: 'Aggregates energy and CO2 emission data for pods tagged with
            SusQL labels '
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/sustainable-computing-io/susql-operator
          support: https://github.com/sustainable-computing-io/susql-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: LabelGroup is the Schema for the LabelGroups API
            displayName: Label Group
            kind: LabelGroup
            name: labelgroups.susql.ibm.com
            version: v1
        description: |-
          ### About this Operator

          SusQL is a Kubernetes operator that aggregates energy and estimated
          carbon dioxide emission data for pods tagged with SusQL specific
          labels. The energy measurements are taken from Kepler which should
          be deployed in the cluster before using SusQL.

          ### Prerequisites

          1. Deployment of [Kepler](https://sustainable-computing.io/) on the cluster
          2. Ensure that [User Project Monitoring](https://docs.openshift.com/container-platform/latest/monitoring/enabling-monitoring-for-user-defined-projects.html)
          is enabled to monitor energy consumed in user projects.
          3. Creation of a SusQL Service Monitor:
                `oc apply -n <NAMESPACE> -f https://raw.githubusercontent.com/sustainable-computing-io/susql-operator/main/hack/susql-servicemonitor.yaml`

          ### API Backward Compatibility

          Until Operator supports **seamless upgrades**, a new version of the operator may
          introduce a change that is **NOT** backwards compatible with the previous version.
          Thus, to upgrade the operator, uninstall the already installed version completely
          (including CRDs) and install the new version. For example to upgrade from 0.1.0
          to 0.2.0, you must first uninstall 0.1.0.

          ### LabelGroup spec Example

          ```
          apiVersion: susql.ibm.com/v1
          kind: LabelGroup
          metadata:
            name: labelgroup-name
            namespace: susql-operator
          spec:
            labels:
              - my-label-1
              - my-label-2
          ```

          ### Documentation

          Documentation can be found at [SusQL Operator](https://github.com/sustainable-computing-io/susql-operator#readme).

          ### Getting help

          If you encounter any issues while using the SusQL Operator, you can create an
          [issue](https://github.com/sustainable-computing-io/susql-operator/issues)
          on our GitHub repo for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by raising [issues](https://github.com/sustainable-computing-io/susql-operator/issues)
          related to susql-operator.

          ### License
          susql-operator is licensed under the Apache 2.0 license
        displayName: SusQL
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - aggregation
        - sustainability
        - energy
        - kepler
        - susql
        - carbon dioxide (CO2) emissions
        - green computing
        links:
        - name: SusQL Operator
          url: https://github.com/sustainable-computing-io/susql-operator
        - name: Sustainable Computing
          url: https://github.com/sustainable-computing-io
        maintainers:
        - email: trent@jp.ibm.com
          name: Scott Trent
        - email: mohammed.munir.abdi@ibm.com
          name: Mohammed Abdi
        maturity: alpha
        provider:
          name: SusQL Operator Contributors
          url: https://github.com/sustainable-computing-io/susql-operator
        relatedImages:
        - quay.io/community-operator-pipeline-prod/susql-operator@sha256:aa0934d55377b2d32588794150f80f7e9ac198b63f6cba7aeb42d165899e56d6
        - quay.io/sustainable_computing_io/susql_operator:0.0.34
        version: 0.0.34
      entries:
      - name: susql-operator.v0.0.34
        version: 0.0.34
      name: alpha
    defaultChannel: alpha
    packageName: susql-operator
    provider:
      name: SusQL Operator Contributors
      url: https://github.com/sustainable-computing-io/susql-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hazelcast, Inc
      provider-url: ""
    name: hazelcast-platform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hazelcast-platform-operator.v5.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "cache-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "CronHotBackup",
                "metadata": {
                  "name": "cronhotbackup-sample"
                },
                "spec": {
                  "hotBackupTemplate": {
                    "metadata": {
                      "labels": {
                        "cron-hotbackup": "true"
                      }
                    },
                    "spec": {
                      "hazelcastResourceName": "hazelcast"
                    }
                  },
                  "schedule": "*/30 * * * *"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast"
                },
                "spec": {
                  "clusterSize": 3,
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast-sample"
                },
                "spec": {
                  "clusterSize": 3,
                  "jet": {
                    "bucketConfig": {
                      "bucketURI": "gs://operator-user-code/jetJobs",
                      "secretName": "br-secret-gcp"
                    },
                    "enabled": true,
                    "resourceUploadEnabled": true
                  },
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HazelcastEndpoint",
                "metadata": {
                  "name": "hazelcastendpoint-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "port": 5701,
                  "type": "Discovery"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HotBackup",
                "metadata": {
                  "name": "hot-backup"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-longrun"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-longrun-2.0.0.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-1.0.2.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJobSnapshot",
                "metadata": {
                  "name": "jetjobsnapshot-sample"
                },
                "spec": {
                  "cancelJob": false,
                  "jetJobResourceName": "jet-job"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ManagementCenter",
                "metadata": {
                  "name": "managementcenter"
                },
                "spec": {
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "hazelcastClusters": [
                    {
                      "address": "hazelcast",
                      "name": "dev"
                    }
                  ],
                  "licenseKeySecretName": "hazelcast-license-key",
                  "persistence": {
                    "enabled": true,
                    "size": "10Gi"
                  },
                  "repository": "hazelcast/management-center"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Map",
                "metadata": {
                  "name": "map"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "MultiMap",
                "metadata": {
                  "name": "multimap-sample"
                },
                "spec": {
                  "backupCount": 3,
                  "binary": true,
                  "collectionType": "LIST",
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Queue",
                "metadata": {
                  "name": "queue-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ReplicatedMap",
                "metadata": {
                  "name": "replicatedmap-sample"
                },
                "spec": {
                  "asyncFillup": true,
                  "hazelcastResourceName": "hazelcast",
                  "inMemoryFormat": "OBJECT"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Topic",
                "metadata": {
                  "name": "topic-sample"
                },
                "spec": {
                  "globalOrderingEnabled": true,
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "UserCodeNamespace",
                "metadata": {
                  "name": "ucn-sample"
                },
                "spec": {
                  "bucketConfig": {
                    "bucketURI": "gs://operator-user-code/userCodeNamespace",
                    "secretName": "br-secret-gcp"
                  },
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanReplication",
                "metadata": {
                  "name": "wanreplication-sample"
                },
                "spec": {
                  "endpoints": "35.192.33.252",
                  "resources": [
                    {
                      "kind": "Map",
                      "name": "map-sample"
                    },
                    {
                      "kind": "Hazelcast",
                      "name": "hz-sample"
                    }
                  ],
                  "targetClusterName": "dev"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanSync",
                "metadata": {
                  "name": "wansync-sample"
                },
                "spec": {
                  "wanReplicationResourceName": "wan-replication-sample"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: docker.io/hazelcast/hazelcast-platform-operator@sha256:99005afda5c71ceeac200928dfed4ea35480f871053101e3aeaa44005e3fda14
          createdAt: "2024-07-29T15:35:56Z"
          description: '[DEPRECATED] Use the certified Hazelcast Operator instead'
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/hazelcast/hazelcast-platform-operator/
          support: Hazelcast, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.hazelcast.com
            version: v1alpha1
          - description: CronHotBackup is the Schema for the cronhotbackups API
            displayName: Cron Hot Backup
            kind: CronHotBackup
            name: cronhotbackups.hazelcast.com
            version: v1alpha1
          - description: HazelcastEndpoint is the Schema for the hazelcastendpoints
              API
            displayName: Hazelcast Endpoint
            kind: HazelcastEndpoint
            name: hazelcastendpoints.hazelcast.com
            version: v1alpha1
          - description: Hazelcast is the Schema for the hazelcasts API
            displayName: Hazelcast
            kind: Hazelcast
            name: hazelcasts.hazelcast.com
            version: v1alpha1
          - description: HotBackup is the Schema for the hot backup API
            displayName: Hot Backup
            kind: HotBackup
            name: hotbackups.hazelcast.com
            version: v1alpha1
          - description: JetJob is the Schema for the jetjobs API
            displayName: Jet Job
            kind: JetJob
            name: jetjobs.hazelcast.com
            version: v1alpha1
          - description: JetJobSnapshot is the Schema for the jetjobsnapshots API
            displayName: Jet Job Snapshot
            kind: JetJobSnapshot
            name: jetjobsnapshots.hazelcast.com
            version: v1alpha1
          - description: ManagementCenter is the Schema for the managementcenters
              API
            displayName: Management Center
            kind: ManagementCenter
            name: managementcenters.hazelcast.com
            version: v1alpha1
          - description: Map is the Schema for the maps API
            displayName: Map
            kind: Map
            name: maps.hazelcast.com
            version: v1alpha1
          - description: MultiMap is the Schema for the multimaps API
            displayName: Multi Map
            kind: MultiMap
            name: multimaps.hazelcast.com
            version: v1alpha1
          - description: Queue is the Schema for the queues API
            displayName: Queue
            kind: Queue
            name: queues.hazelcast.com
            version: v1alpha1
          - description: ReplicatedMap is the Schema for the replicatedmaps API
            displayName: Replicated Map
            kind: ReplicatedMap
            name: replicatedmaps.hazelcast.com
            version: v1alpha1
          - description: Topic is the Schema for the topics API
            displayName: Topic
            kind: Topic
            name: topics.hazelcast.com
            version: v1alpha1
          - description: UserCodeNamespace is the Schema for the usercodenamespaces
              API
            displayName: User Code Namespace
            kind: UserCodeNamespace
            name: usercodenamespaces.hazelcast.com
            version: v1alpha1
          - description: WanReplication is the Schema for the wanreplications API
            displayName: Wan Replication
            kind: WanReplication
            name: wanreplications.hazelcast.com
            version: v1alpha1
          - description: WanSync is the Schema for the wansyncs API
            displayName: Wan Sync
            kind: WanSync
            name: wansyncs.hazelcast.com
            version: v1alpha1
        description: |
          ## Deprecated
          Use the certified Hazelcast Operator instead.
          # Hazelcast Platform Operator #

          Easily deploy Hazelcast clusters and Management Center into Kubernetes environments and manage their lifecycles.

          ## Before You Start

          If you are planning to create Hazelcast Platform Enterprise clusters, you need to [create a secret](https://docs.hazelcast.com/operator/latest/get-started#step-2-start-the-hazelcast-cluster) for the license. You can request a trial license key from [here](https://trialrequest.hazelcast.com).

          For Hazelcast Platform clusters, you can simply continue.

          ## Documentation

          1. [Get started](https://docs.hazelcast.com/operator/latest/get-started) with the Operator
          2. [Connect to the cluster from outside Kubernetes](https://guides.hazelcast.org/hazelcast-platform-operator-expose-externally)
          3. [Restore a Cluster from Cloud Storage with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-external-backup-restore)
          4. [Replicate Data between Two Hazelcast Clusters with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-wan-replication)

          ## Features

          Hazelcast Platform Operator supports the features below:

          * Custom resource for Hazelcast Platform (Enterprise) and Management Center
          * Observe status of Hazelcast clusters and Management Center instances
          * High Availability Mode configuration to create clusters that are resilient to node and zone failures
          * Support for TLS connections between members using self-signed certificates
          * Scale up and down Hazelcast clusters
          * Expose Hazelcast cluster to external clients ([Smart & Unisocket](https://docs.hazelcast.com/hazelcast/latest/clients/java#java-client-operation-modes))
          * Backup Hazelcast persistence data to cloud storage with the possibility of scheduling it and restoring the data accordingly
          * WAN Replication feature when you need to synchronize multiple Hazelcast clusters, which are connected by WANs
          * Full and Delta WAN Sync support
          * Tiered Storage support for Hazelcast and Map CRs
          * CP Subsystem configuration support for Hazelcast CR
          * User Code Deployment feature, which allows you to deploy custom and domain classes from cloud storages and URLs to Hazelcast members
          * The User Code Namespaces feature allows you to deploy custom and domain classes at runtime without a members restart
          * Support the configuration of advanced networking options
          * Support Multi-namespace configuration
          * ExecutorService and EntryProcessor support
          * Support several data structures like Map, Topic, MultiMap, ReplicatedMap, Queue and Cache which can be created dynamically via specific Custom Resources
          * MapStore, Near Cache and off-heap memory (HD memory and native memory) support for the Map CR
          * Native Memory support for the Cache CR
          * Support Jet configuration and Jet Job submission using the JetJob CR
          * Support for exporting the snapshots of JetJob CRs using JetJobSnapshot CR
          * Support for custom configurations using ConfigMap
        displayName: '[DEPRECATED] Hazelcast Platform Operator'
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hazelcast
        - keyvalue
        - in-memory
        - database
        - caching
        links:
        - name: Documentation
          url: https://docs.hazelcast.com/operator/latest/
        - name: Source Code
          url: https://github.com/hazelcast/hazelcast-platform-operator
        maintainers:
        - email: cloudnative@hazelcast.com
          name: Hazelcast Cloud Native Team
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Hazelcast, Inc
        relatedImages:
        - quay.io/community-operator-pipeline-prod/hazelcast-platform-operator@sha256:1209876fc9103eb2d69c34e97e4e2e0b384a9a778ae7e6a53222b8552fbf2f26
        - docker.io/hazelcast/hazelcast-platform-operator@sha256:99005afda5c71ceeac200928dfed4ea35480f871053101e3aeaa44005e3fda14
        version: 5.13.0
      entries:
      - name: hazelcast-platform-operator.v5.13.0
        version: 5.13.0
      - name: hazelcast-platform-operator.v5.12.0
        version: 5.12.0
      - name: hazelcast-platform-operator.v5.11.0
        version: 5.11.0
      - name: hazelcast-platform-operator.v5.10.0
        version: 5.10.0
      - name: hazelcast-platform-operator.v5.9.0
        version: 5.9.0
      - name: hazelcast-platform-operator.v5.8.0
        version: 5.8.0
      - name: hazelcast-platform-operator.v5.7.0
        version: 5.7.0
      - name: hazelcast-platform-operator.v5.6.0
        version: 5.6.0
      - name: hazelcast-platform-operator.v5.5.0
        version: 5.5.0
      - name: hazelcast-platform-operator.v5.4.0
        version: 5.4.0
      - name: hazelcast-platform-operator.v5.3.0
        version: 5.3.0
      - name: hazelcast-platform-operator.v5.2.0
        version: 5.2.0
      - name: hazelcast-platform-operator.v5.1.0
        version: 5.1.0
      - name: hazelcast-platform-operator.v5.0.0
        version: 5.0.0
      name: alpha
    defaultChannel: alpha
    packageName: hazelcast-platform-operator
    provider:
      name: Hazelcast, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com/
    name: varnish-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: varnish-operator.v0.27.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "caching.ibm.com/v1alpha1",
                "kind": "VarnishCluster",
                "metadata": {
                  "name": "varnishcluster-sample"
                },
                "spec": {
                  "backend": {
                    "port": "web",
                    "selector": {
                      "app": "nginx"
                    }
                  },
                  "replicas": 1,
                  "service": {
                    "port": 80
                  },
                  "varnish": {
                    "args": [
                      "-p",
                      "default_ttl=3600",
                      "-p",
                      "default_grace=3600"
                    ]
                  },
                  "vcl": {
                    "configMapName": "vcl-files",
                    "entrypointFileName": "entrypoint.vcl"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking
          certified: "false"
          containerImage: ibmcom/varnish-operator:0.27.2
          createdAt: 2021-02-15T11:15:31+0000
          description: Run and manage Varnish clusters on Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/IBM/varnish-operator
          support: https://ibm.github.io/varnish-operator/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VarnishCluster is the Schema for the varnishclusters API
            displayName: Varnish Cluster
            kind: VarnishCluster
            name: varnishclusters.caching.ibm.com
            version: v1alpha1
        description: |
          Run and manage Varnish clusters on Kubernetes

          The operator manages the whole lifecycle of the cluster: creating, deleting and keeping the cluster configuration up to date.

          The operator is responsible for building the VCL configuration using templates defined by the users and keeping the configuration up to date when relevant events occur (backend pod failure, scaling of the deployment, VCL configuration change).

          Example of a simple `VarnishCluster`:

          ```yaml
          apiVersion: caching.ibm.com/v1alpha1
          kind: VarnishCluster
          metadata:
            name: varnishcluster-sample
            namespace: varnish-ns
          spec:
            vcl:
              configMapName: vcl-files
              entrypointFileName: entrypoint.vcl
            replicas: 3
            backend:
              selector:
                app: nginx
            service:
              port: 80
          ```

          Full documentation can be found [here](https://ibm.github.io/varnish-operator/)
        displayName: Varnish Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - varnish
        - cache
        links:
        - name: Varnish Operator Docs
          url: https://ibm.github.io/varnish-operator
        - name: Varnish Operator Source Code
          url: https://github.com/IBM/varnish-operator
        maintainers:
        - email: tomash.sidei@ibm.com
          name: Tomash Sidei
        - email: cingram@us.ibm.com
          name: Craig Ingram
        maturity: alpha
        provider:
          name: IBM
          url: https://www.ibm.com/
        relatedImages:
        - ibmcom/varnish-operator:0.27.2
        - quay.io/openshift-community-operators/varnish-operator@sha256:46de72c5abad80cef3d6426be967131c51c2c15029a6a38744975578c805a44e
        version: 0.27.2
      entries:
      - name: varnish-operator.v0.27.2
        version: 0.27.2
      name: alpha
    defaultChannel: alpha
    packageName: varnish-operator
    provider:
      name: IBM
      url: https://www.ibm.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: clusterresourceoverride
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clusterresourceoverride-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.autoscaling.openshift.io/v1",
                "kind": "ClusterResourceOverride",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "podResourceOverride": {
                    "spec": {
                      "memoryRequestToLimitPercent": 50,
                      "cpuRequestToLimitPercent": 25,
                      "limitCPUToMemoryPercent": 200
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certifiedLevel: Primed
          containerImage: registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9-operator@sha256:549a0aa3c79b04c5443f5c75d41d6b2af8cfb4bc1efd90268760f944ffc6b215
          createdAt: 2019/11/15
          description: An operator to manage the OpenShift ClusterResourceOverride
            Mutating Admission Webhook Server
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          healthIndex: B
          olm.skipRange: '>=4.3.0 <4.20.0-202512081147'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/cluster-resource-override-admission-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an instance of ClusterResourceOverride Admission
              Webhook
            displayName: ClusterResourceOverride
            kind: ClusterResourceOverride
            name: clusterresourceoverrides.operator.autoscaling.openshift.io
            version: v1
        description: "ClusterResourceOverride\n==============\n\nContainers can specify
          compute resource requests and limits. Requests are used for scheduling your
          container and provide a minimum service guarantee. Limits constrain the
          amount of compute resource that may be consumed on your node.\n\nThe scheduler
          attempts to optimize the compute resource use across all nodes in your cluster.
          It places pods onto specific nodes, taking the pods' compute resource requests
          and nodes' available capacity into consideration.\n\nRequests and limits
          enable administrators to allow and manage the overcommitment of resources
          on a node, which may be desirable in development environments where a trade
          off of guaranteed performance for capacity is acceptable.\n\n### Requests
          and Limits\n\nFor each compute resource, a container may specify a resource
          request and limit. Scheduling decisions are made based on the request to
          ensure that a node has enough capacity available to meet the requested value.
          If a container specifies limits, but omits requests, the requests are defaulted
          to the limits. A container is not able to exceed the specified limit on
          the node.\n\nThe enforcement of limits is dependent upon the compute resource
          type. If a container makes no request or limit, the container is scheduled
          to a node with no resource guarantees. In practice, the container is able
          to consume as much of the specified resource as is available with the lowest
          local priority. In low resource situations, containers that specify no resource
          requests are given the lowest quality of service.\n\n### Compute Resources\n\nThe
          node-enforced behavior for compute resources is specific to the resource
          type.\n\n#### CPU\n\nA container is guaranteed the amount of CPU it requests
          and is additionally able to consume excess CPU available on the node, up
          to any limit specified by the container. If multiple containers are attempting
          to use excess CPU, CPU time is distributed based on the amount of CPU requested
          by each container.\n\nFor example, if one container requested 500m of CPU
          time and another container requested 250m of CPU time, then any extra CPU
          time available on the node is distributed among the containers in a 2:1
          ratio. If a container specified a limit, it will be throttled not to use
          more CPU than the specified limit.\n\nCPU requests are enforced using the
          CFS shares support in the Linux kernel. By default, CPU limits are enforced
          using the CFS quota support in the Linux kernel over a 100ms measuring interval,
          though this can be disabled.\n\n#### Memory\n\nA container is guaranteed
          the amount of memory it requests. A container may use more memory than requested,
          but once it exceeds its requested amount, it could be killed in a low memory
          situation on the node.\n\nIf a container uses less memory than requested,
          it will not be killed unless system tasks or daemons need more memory than
          was accounted for in the node’s resource reservation. If a container specifies
          a limit on memory, it is immediately killed if it exceeds the limit amount.\n\n###
          Configuring the Cluster for Overcommitment\n\nScheduling is based on resources
          requested, while quota and hard limits refer to resource limits, which can
          be set higher than requested resources. The difference between request and
          limit determines the level of overcommit; for instance, if a container is
          given a memory request of 1Gi and a memory limit of 2Gi, it is scheduled
          based on the 1Gi request being available on the node, but could use up to
          2Gi; so it is 200% overcommitted. If OpenShift Container Platform administrators
          would like to control the level of overcommit and manage container density
          on nodes, ClusterResourceOverride Admission Webhook can be configured to
          override the ratio between request and limit set on developer containers.
          In conjunction with a per-project LimitRange specifying limits and defaults,
          this adjusts the container limit and request to achieve the desired level
          of overcommit.\n\nThis requires creating a custom resource of `ClusterResourceOverride`
          type as in the following example:\n\n    \n    - apiVersion: operator.autoscaling.openshift.io/v1\n
          \   - kind: ClusterResourceOverride\n    - metadata:\n    -   name: cluster\n
          \   - spec:\n    -   podResourceOverride:\n    -     spec:\n    -       memoryRequestToLimitPercent:
          25\n    -       cpuRequestToLimitPercent: 25\n    -       limitCPUToMemoryPercent:
          200\n    \n **memoryRequestToLimitPercent**: (optional, 1-100) If a container
          memory limit has been specified or defaulted, the memory request is overridden
          to this percentage of the limit.\n\n **cpuRequestToLimitPercent**: (optional,
          1-100) If a container CPU limit has been specified or defaulted, the CPU
          request is overridden to this percentage of the limit.\n\n **limitCPUToMemoryPercent**:
          (optional, positive integer) If a container memory limit has been specified
          or defaulted, the CPU limit is overridden to a percentage of the memory
          limit, with a 100 percentage scaling 1Gi of RAM to equal 1 CPU core. This
          is processed prior to overriding CPU request (if configured).\n\n Note that
          these overrides have no effect if no limits have been set on containers.
          [Create a LimitRange object] (https://docs.openshift.com/container-platform/3.3/admin_guide/limits.html#admin-guide-limits)
          with default limits (per individual project, or in the [project template](https://docs.openshift.com/container-platform/3.3/admin_guide/managing_projects.html#modifying-the-template-for-new-projects))
          in order to ensure that the overrides apply.\n\nWhen configured, overrides
          can be enabled per-project by applying the following label.\n    ```\n    clusterresourceoverrides.admission.autoscaling.openshift.io/enabled:
          \"true\"\n    ```\n\n"
        displayName: ClusterResourceOverride Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - deschedule
        - scale
        - binpack
        - efficiency
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-operator-bundle@sha256:c5f8be89116c08822005cd5026a7fa5b9c6ccf706a076ff6b0a3bd3c1991102c
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9-operator@sha256:549a0aa3c79b04c5443f5c75d41d6b2af8cfb4bc1efd90268760f944ffc6b215
        - registry.redhat.io/openshift4/ose-clusterresourceoverride-rhel9@sha256:688729db8a70fa8e3a37a1a00f62dad124b6b6f9c90e46503873bbf40a066225
        version: 4.20.0-202512081147
      entries:
      - name: clusterresourceoverride-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: clusterresourceoverride-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: clusterresourceoverride-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: clusterresourceoverride-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: clusterresourceoverride-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: clusterresourceoverride-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: clusterresourceoverride-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: clusterresourceoverride
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: sriov-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sriov-network-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovIBNetwork",
                "metadata": {
                  "name": "example-sriovibnetwork",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"host-local\",\n  \"subnet\": \"10.56.217.0/24\",\n  \"rangeStart\": \"10.56.217.171\",\n  \"rangeEnd\": \"10.56.217.181\",\n  \"routes\": [{\n    \"dst\": \"0.0.0.0/0\"\n  }],\n  \"gateway\": \"10.56.217.1\"\n}\n",
                  "linkState": "auto",
                  "networkNamespace": "default",
                  "resourceName": "mellanoxnics"
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetwork",
                "metadata": {
                  "name": "example-sriovnetwork",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "ipam": "{\n  \"type\": \"host-local\",\n  \"subnet\": \"10.56.217.0/24\",\n  \"rangeStart\": \"10.56.217.171\",\n  \"rangeEnd\": \"10.56.217.181\",\n  \"routes\": [{\n    \"dst\": \"0.0.0.0/0\"\n  }],\n  \"gateway\": \"10.56.217.1\"\n}\n",
                  "networkNamespace": "default",
                  "resourceName": "intelnics",
                  "spoofChk": "on",
                  "trust": "off",
                  "vlan": 0
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetworkNodePolicy",
                "metadata": {
                  "name": "policy-1",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "deviceType": "vfio-pci",
                  "mtu": 9000,
                  "nicSelector": {
                    "pfNames": [
                      "eth1"
                    ],
                    "rootDevices": [
                      "0000:01:00.1"
                    ],
                    "vendor": "8086"
                  },
                  "nodeSelector": {
                    "feature.node.kubernetes.io/network-sriov.capable": "true"
                  },
                  "numVfs": 6,
                  "priority": 99,
                  "resourceName": "intelnics"
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetworkNodeState",
                "metadata": {
                  "name": "minikube",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "interfaces": []
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovNetworkPoolConfig",
                "metadata": {
                  "name": "sriovnetworkpoolconfig-sample"
                },
                "spec": {
                  "foo": "bar"
                }
              },
              {
                "apiVersion": "sriovnetwork.openshift.io/v1",
                "kind": "SriovOperatorConfig",
                "metadata": {
                  "name": "default",
                  "namespace": "openshift-sriov-network-operator"
                },
                "spec": {
                  "enableInjector": true,
                  "enableOperatorWebhook": true,
                  "logLevel": 2
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-sriov-network-rhel9-operator@sha256:c4b91f426ee2ca995472dc03e04276cab57e1edf01e7af7a57b360c1b0ec5bd0
          createdAt: "2025-08-05T11:50:34Z"
          description: An operator for configuring SR-IOV components and initializing
            SRIOV network devices in Openshift cluster.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.3.0-0 <4.20.0-202512081147'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "sriovnetwork.openshift.io/v1",
              "kind": "SriovOperatorConfig",
              "metadata": {
                "name": "default"
              },
              "spec": {
                "configurationMode": "daemon",
                "disableDrain": false,
                "enableInjector": true,
                "enableOperatorWebhook": true,
                "logLevel": 2,
                "featureGates": {
                    "resourceInjectorMatchCondition": true
                }
              }
            }
          operatorframework.io/suggested-namespace: openshift-sriov-network-operator
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-sriov-network-operator",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/internal-objects: '["sriovnetworknodestates.sriovnetwork.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/k8snetworkplumbingwg/sriov-network-operator
          support: Red Hat
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OVSNetwork is the Schema for the ovsnetworks API
            displayName: OVSNetwork
            kind: OVSNetwork
            name: ovsnetworks.sriovnetwork.openshift.io
            version: v1
          - description: SriovIBNetwork is the Schema for the sriovibnetworks API
            displayName: Sriov IBNetwork
            kind: SriovIBNetwork
            name: sriovibnetworks.sriovnetwork.openshift.io
            version: v1
          - description: SriovNetworkNodePolicy is the Schema for the sriovnetworknodepolicies
              API
            displayName: Sriov Network Node Policy
            kind: SriovNetworkNodePolicy
            name: sriovnetworknodepolicies.sriovnetwork.openshift.io
            version: v1
          - description: SriovNetworkNodeState is the Schema for the sriovnetworknodestates
              API
            displayName: Sriov Network Node State
            kind: SriovNetworkNodeState
            name: sriovnetworknodestates.sriovnetwork.openshift.io
            version: v1
          - kind: SriovNetworkPoolConfig
            name: sriovnetworkpoolconfigs.sriovnetwork.openshift.io
            version: v1
          - description: SriovNetwork is the Schema for the sriovnetworks API
            displayName: Sriov Network
            kind: SriovNetwork
            name: sriovnetworks.sriovnetwork.openshift.io
            version: v1
          - description: SriovOperatorConfig is the Schema for the sriovoperatorconfigs
              API
            displayName: Sriov Operator Config
            kind: SriovOperatorConfig
            name: sriovoperatorconfigs.sriovnetwork.openshift.io
            version: v1
        description: |
          # SR-IOV Network Operator for Openshift

          ## Introduction
          The sriov-network-operator is generally responsible for configuring the sriov components in a openshift cluster.

          ### Supported Features
          * Initialize the SR-IOV NICs on nodes.
          * provision SR-IOV device plugin on selected node.
          * provision SR-IOV CNI plugin on selected nodes.
          * manage configuration of SR-IOV device plugin.
          * generate net-att-def CRs for SR-IOV CNI plugin.

          This operator has to run in namespace 'openshift-sriov-network-operator'. An Operator Group is also required to install this operator:

          ```
          $ oc create namespace openshift-sriov-network-operator

          $ oc create -f - <<EOF
          apiVersion: operators.coreos.com/v1
          kind: OperatorGroup
          metadata:
            name: sriov-network-operators
            namespace: openshift-sriov-network-operator
          spec:
            targetNamespaces:
            - openshift-sriov-network-operator
          EOF
          ```
        displayName: SR-IOV Network Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - network
        - sr-iov
        - sriov
        links:
        - name: Source Code
          url: https://github.com/k8snetworkplumbingwg/sriov-network-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-sriov-infiniband-cni-rhel9@sha256:b423a3dca275e650fd498e6ca928c9d3c6bd1744c03986d30fb8775f04609b39
        - registry.redhat.io/openshift4/ose-sriov-network-config-daemon-rhel9@sha256:e912e692c32a70f22c34360ca8e8960bdf40bc141f54c5782da3380b972b62ff
        - registry.redhat.io/openshift4/ose-sriov-network-device-plugin-rhel9@sha256:6508614560de3d333fe93d7c72e6b6a1fffb4b5fd75632bf74fc686eb9deaf80
        - registry.redhat.io/openshift4/ose-sriov-network-metrics-exporter-rhel9@sha256:41b94f5b270e5d57b2130de47b0fa25796bfcf64c4dc771058ca0cd433404c05
        - registry.redhat.io/openshift4/ose-sriov-dp-admission-controller-rhel9@sha256:f14abff38a42cb72299e58b957c6f0f09af5182208800a4a6ed55e57e4ab5f28
        - registry.redhat.io/openshift4/ose-sriov-network-operator-bundle@sha256:b85986a39227398c90a8f178da7859900b5eb09e5e77949ca698e8a675904195
        - registry.redhat.io/openshift4/ose-sriov-network-rhel9-operator@sha256:c4b91f426ee2ca995472dc03e04276cab57e1edf01e7af7a57b360c1b0ec5bd0
        - registry.redhat.io/openshift4/ose-sriov-network-webhook-rhel9@sha256:6b23062ab592c3776ff7207ce7caed878474566033e45e377a893c4bac01de82
        - registry.redhat.io/openshift4/ose-sriov-rdma-cni-rhel9@sha256:276e01d4ce0e9407f5f67e015af36ec552f61303fbb7b2d45de5beacdc417937
        - registry.redhat.io/openshift4/sriov-cni-rhel9@sha256:6a3b0070b671a818f094f78073279669c9646ebdc668f7099e44d007380b6060
        version: 4.20.0-202512081147
      entries:
      - name: sriov-network-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: sriov-network-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: sriov-network-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: sriov-network-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: sriov-network-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: sriov-network-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: sriov-network-operator.v4.20.0-202509262224
        version: 4.20.0-202509262224
      name: stable
    defaultChannel: stable
    packageName: sriov-network-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-iam-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-iam-controller.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "Role",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "Group",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "OpenIDConnectProvider",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "Policy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "iam.services.k8s.aws/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/iam-controller:1.6.0
          createdAt: "2025-11-29T04:48:58Z"
          description: AWS IAM controller is a service controller for managing IAM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Group represents the state of an AWS iam Group resource.
            displayName: Group
            kind: Group
            name: groups.iam.services.k8s.aws
            version: v1alpha1
          - description: InstanceProfile represents the state of an AWS iam InstanceProfile
              resource.
            displayName: InstanceProfile
            kind: InstanceProfile
            name: instanceprofiles.iam.services.k8s.aws
            version: v1alpha1
          - description: OpenIDConnectProvider represents the state of an AWS iam
              OpenIDConnectProvider resource.
            displayName: OpenIDConnectProvider
            kind: OpenIDConnectProvider
            name: openidconnectproviders.iam.services.k8s.aws
            version: v1alpha1
          - description: Policy represents the state of an AWS iam Policy resource.
            displayName: Policy
            kind: Policy
            name: policies.iam.services.k8s.aws
            version: v1alpha1
          - description: Role represents the state of an AWS iam Role resource.
            displayName: Role
            kind: Role
            name: roles.iam.services.k8s.aws
            version: v1alpha1
          - description: ServiceLinkedRole represents the state of an AWS iam ServiceLinkedRole
              resource.
            displayName: ServiceLinkedRole
            kind: ServiceLinkedRole
            name: servicelinkedroles.iam.services.k8s.aws
            version: v1alpha1
          - description: User represents the state of an AWS iam User resource.
            displayName: User
            kind: User
            name: users.iam.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Identity and Access Management (IAM) resources in AWS from within your Kubernetes cluster.

          **About Amazon IAM**

          AWS Identity and Access Management (IAM) is a web service that helps you securely control access to AWS resources. You use IAM to control who is authenticated (signed in) and authorized (has permissions) to use resources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon IAM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - iam
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon IAM Developer Resources
          url: https://aws.amazon.com/iam/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: iam maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/iam-controller:1.6.0
        - quay.io/community-operator-pipeline-prod/ack-iam-controller@sha256:372c8ffd7d949547362a8bf6241b7d3a472190820a12cfddb3c685b85afd1ca7
        version: 1.6.0
      entries:
      - name: ack-iam-controller.v1.6.0
        version: 1.6.0
      - name: ack-iam-controller.v1.5.4
        version: 1.5.4
      - name: ack-iam-controller.v1.5.3
        version: 1.5.3
      - name: ack-iam-controller.v1.5.2
        version: 1.5.2
      - name: ack-iam-controller.v1.5.1
        version: 1.5.1
      - name: ack-iam-controller.v1.5.0
        version: 1.5.0
      - name: ack-iam-controller.v1.4.4
        version: 1.4.4
      - name: ack-iam-controller.v1.4.3
        version: 1.4.3
      - name: ack-iam-controller.v1.4.2
        version: 1.4.2
      - name: ack-iam-controller.v1.4.1
        version: 1.4.1
      - name: ack-iam-controller.v1.4.0
        version: 1.4.0
      - name: ack-iam-controller.v1.3.22
        version: 1.3.22
      - name: ack-iam-controller.v1.3.21
        version: 1.3.21
      - name: ack-iam-controller.v1.3.20
        version: 1.3.20
      - name: ack-iam-controller.v1.3.19
        version: 1.3.19
      - name: ack-iam-controller.v1.3.18
        version: 1.3.18
      - name: ack-iam-controller.v1.3.17
        version: 1.3.17
      - name: ack-iam-controller.v1.3.15
        version: 1.3.15
      - name: ack-iam-controller.v1.3.14
        version: 1.3.14
      - name: ack-iam-controller.v1.3.13
        version: 1.3.13
      - name: ack-iam-controller.v1.3.12
        version: 1.3.12
      - name: ack-iam-controller.v1.3.11
        version: 1.3.11
      - name: ack-iam-controller.v1.3.10
        version: 1.3.10
      - name: ack-iam-controller.v1.3.9
        version: 1.3.9
      - name: ack-iam-controller.v1.3.8
        version: 1.3.8
      - name: ack-iam-controller.v1.3.6
        version: 1.3.6
      - name: ack-iam-controller.v1.3.2
        version: 1.3.2
      - name: ack-iam-controller.v1.3.1
        version: 1.3.1
      - name: ack-iam-controller.v1.3.0
        version: 1.3.0
      - name: ack-iam-controller.v1.2.6
        version: 1.2.6
      - name: ack-iam-controller.v1.2.5
        version: 1.2.5
      - name: ack-iam-controller.v1.2.3
        version: 1.2.3
      - name: ack-iam-controller.v1.2.2
        version: 1.2.2
      - name: ack-iam-controller.v1.2.1
        version: 1.2.1
      - name: ack-iam-controller.v1.2.0
        version: 1.2.0
      - name: ack-iam-controller.v1.1.3
        version: 1.1.3
      - name: ack-iam-controller.v1.1.2
        version: 1.1.2
      - name: ack-iam-controller.v1.1.1
        version: 1.1.1
      - name: ack-iam-controller.v1.1.0
        version: 1.1.0
      - name: ack-iam-controller.v1.0.0
        version: 1.0.0
      - name: ack-iam-controller.v0.1.2
        version: 0.1.2
      - name: ack-iam-controller.v0.1.1
        version: 0.1.1
      - name: ack-iam-controller.v0.1.0
        version: 0.1.0
      - name: ack-iam-controller.v0.0.22
        version: 0.0.22
      - name: ack-iam-controller.v0.0.21
        version: 0.0.21
      - name: ack-iam-controller.v0.0.20
        version: 0.0.20
      - name: ack-iam-controller.v0.0.19
        version: 0.0.19
      - name: ack-iam-controller.v0.0.18
        version: 0.0.18
      - name: ack-iam-controller.v0.0.17
        version: 0.0.17
      - name: ack-iam-controller.v0.0.16
        version: 0.0.16
      - name: ack-iam-controller.v0.0.15
        version: 0.0.15
      - name: ack-iam-controller.v0.0.14
        version: 0.0.14
      - name: ack-iam-controller.v0.0.13
        version: 0.0.13
      - name: ack-iam-controller.v0.0.12
        version: 0.0.12
      - name: ack-iam-controller.v0.0.11
        version: 0.0.11
      - name: ack-iam-controller.v0.0.10
        version: 0.0.10
      - name: ack-iam-controller.v0.0.9
        version: 0.0.9
      - name: ack-iam-controller.v0.0.8
        version: 0.0.8
      - name: ack-iam-controller.v0.0.7
        version: 0.0.7
      - name: ack-iam-controller.v0.0.6
        version: 0.0.6
      - name: ack-iam-controller.v0.0.5
        version: 0.0.5
      - name: ack-iam-controller.v0.0.4
        version: 0.0.4
      - name: ack-iam-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-iam-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://www.medik8s.io/
    name: self-node-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: self-node-remediation.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediation",
                "metadata": {
                  "name": "selfnoderemediation-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationConfig",
                "metadata": {
                  "name": "self-node-remediation-config",
                  "namespace": "self-node-remediation"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationTemplate",
                "metadata": {
                  "name": "selfnoderemediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/self-node-remediation-operator:v0.11.0
          createdAt: "2025-11-24 11:26:35"
          description: Self Node Remediation Operator for remediate itself in case
            of a failure.
          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.skipRange: '>=0.4.0 <0.11.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/self-node-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SelfNodeRemediationConfig is the Schema for the selfnoderemediationconfigs
              API in which a user can configure the self node remediation agents
            displayName: Self Node Remediation Config
            kind: SelfNodeRemediationConfig
            name: selfnoderemediationconfigs.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediation is the Schema for the selfnoderemediations
              API
            displayName: Self Node Remediation
            kind: SelfNodeRemediation
            name: selfnoderemediations.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediationTemplate is the Schema for the selfnoderemediationtemplates
              API
            displayName: Self Node Remediation Template
            kind: SelfNodeRemediationTemplate
            name: selfnoderemediationtemplates.self-node-remediation.medik8s.io
            version: v1alpha1
        description: This self node remediation operator is using an alternate mechanism
          for a node in a cluster to detect its health status and take actions to
          remediate itself in case of a failure. While not all remediation events
          can result in the node returning to a healthy state, the operator does allow
          surviving parts of the cluster to assume the node has reached a safe state
          so that it’s workloads can be automatically recovered. A prerequisite for
          the Self Node Remediation operator is a functioning health detection system
          that implements the external remediation API, such as Node Health Check
          Operator or Machine Health Check Controller (in OCP or Cluster-API based
          clusters). Once a node/machine is unhealthy, the detection system will create
          the SelfNodeRemediation CR, which triggers the Self Node Remediation Operator.
          For this the configuration of the health detection system needs to refer
          to a SelfNodeRemediationTemplate CR. Such a template is created by default
          in the operator's namespace, for usage in other namespaces it needs to be
          created manually. The Node Health Check Operator is configured to use Self
          Node Remediation by default.
        displayName: Self Node Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - fencing
        - remediation
        - auto-healing
        - recovery
        - high-availability
        - baremetal
        - SNR
        links:
        - name: Self Node Remediation
          url: https://medik8s.io
        - name: Source Code
          url: https://github.com/medik8s/self-node-remediation
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Medik8s
          url: https://www.medik8s.io/
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/self-node-remediation@sha256:f47ab630017f6eb3884af3bb5e134f3e71a44d99fddbdf261addf2e3b755a6c9
        - quay.io/medik8s/self-node-remediation-operator:v0.11.0
        version: 0.11.0
      entries:
      - name: self-node-remediation.v0.11.0
        version: 0.11.0
      - name: self-node-remediation.v0.10.0
        version: 0.10.0
      - name: self-node-remediation.v0.9.0
        version: 0.9.0
      - name: self-node-remediation.v0.8.0
        version: 0.8.0
      - name: self-node-remediation.v0.7.1
        version: 0.7.1
      - name: self-node-remediation.v0.7.0
        version: 0.7.0
      - name: self-node-remediation.v0.6.1
        version: 0.6.1
      - name: self-node-remediation.v0.6.0
        version: 0.6.0
      - name: self-node-remediation.v0.5.0
        version: 0.5.0
      - name: self-node-remediation.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: self-node-remediation
    provider:
      name: Medik8s
      url: https://www.medik8s.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Airlock
      provider-url: ""
    name: airlock-microgateway
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: airlock-microgateway.v4.5.9
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControl","metadata":{"name":"access-control-example"},"spec":{"policies":[{"requestConditions":{"path":{"matcher":{"exact":"/secure"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}},{"oidc":{"claim":{"name":"roles","value":{"matcher":{"contains":"\"admin\""}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"oidc-example"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"authorization":{}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"secured"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/test/"}}},"authorization":{"requireAny":[{"oidc":{"claim":{"name":"roles","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"group","value":{"matcher":{"exact":"superusers"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-1"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-metadata"}},{"identityPropagationRef":{"name":"test-header-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"exact":"/public"}}},"authorization":{}},{"requestConditions":{"path":{"matcher":{"regex":"^/api/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name"}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-defaults"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-oidc-idtoken"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-bearertoken-metadata"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-idtoken"}}],"onFailure":"Pass"}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurity","metadata":{"name":"content-security-example"},"spec":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-example-1"},"spec":{"value":{"name":"ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-http-filter-example-1"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}}}}},"defaults":{"sessionHandlingRef":{"name":"session-handling-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with TLS information of the downstream connection to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"defaultTimeouts":{"lifetime":"16h"},"prefix":"session_prefix_example"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SidecarGateway","metadata":{"name":"sidecar-gateway-example"},"spec":{"podSelector":{"matchLabels":{"app":"example-app"}},"sessionHandlingRef":{"name":"session-handling-example"},"applications":[{"containerPort":8443,"routes":[{"pathPrefix":"/metrics","unsecured":{}},{"pathPrefix":"/","secured":{"accessControlRef":{"name":"access-control-example"},"contentSecurityRef":{"name":"content-security-example"}}}],"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}},"restrictions":{"http":{"headersLength":"80Ki"}},"protocol":{"auto":{}},"tls":{"enable":true,"secretRef":{"name":"example-tls-secret"},"protocol":{"minimum":"TLSv1_3"},"clientCertificate":{"ignored":{}},"xfcc":"AlwaysForwardOnly"}},"upstream":{"tls":{"enable":true,"protocol":{"minimum":"TLSv1_2"}}},"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-http-filter-example-1"}]},"telemetryRef":{"name":"telemetry-example"}}],"envoyClusterRefs":[{"name":"envoy-cluster-example-1"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-11-26T12:58:13Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: AccessControl
            name: accesscontrols.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurity
            name: contentsecurities.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: SidecarGateway
            name: sidecargateways.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000056)
          * Gateway API
          * (Optional) Airlock Microgateway CNI (Required for [data plane mode sidecar](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000137)).

          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
          2. Check your inbox and save the license file microgateway-license.txt locally.

          *See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000056) to choose the right license type.*

          ### Install Gateway API standard channel
          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ### (Optional) Install Airlock Microgateway CNI
          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          Refer to [our documentation](https://docs.airlock.com/microgateway/4.5/?topic=MGW-00000140) for installation instructions

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD_MONITOR\_CREATE | "false" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.5/
        - name: Airlock Microgateway Labs
          url: https://play.instruqt.com/airlock/invite/hyi9fy4b4jzc?icp_referrer=openshift
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:552204cfe7419d394d9eccc8a14135606c412294fc300d95c73373dc5fe54bbe
        - registry.connect.redhat.com/airlock/microgateway@sha256:7693e3131582fe96c85812e20914ef77eead098d314bcee71e52d8cf0f02fcd9
        version: 4.5.9
      entries:
      - name: airlock-microgateway.v4.5.9
        version: 4.5.9
      - name: airlock-microgateway.v4.5.8
        version: 4.5.8
      - name: airlock-microgateway.v4.5.7
        version: 4.5.7
      - name: airlock-microgateway.v4.5.6
        version: 4.5.6
      - name: airlock-microgateway.v4.5.5
        version: 4.5.5
      - name: airlock-microgateway.v4.5.4
        version: 4.5.4
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.5"
    - currentCSV: airlock-microgateway.v4.6.7
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControl","metadata":{"name":"access-control-example"},"spec":{"policies":[{"requestConditions":{"path":{"matcher":{"exact":"/secure"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}},{"oidc":{"claim":{"name":"roles","value":{"matcher":{"contains":"\"admin\""}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"oidc-example"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"tokenExchange":{"onFailure":"Block","actions":[{"tokenExchangeRef":{"name":"token-exchange-example"}}]},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"jwt-example"}}}}},{"authorization":{}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"secured"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/test/"}}},"authorization":{"requireAny":[{"oidc":{"claim":{"name":"roles","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"group","value":{"matcher":{"exact":"superusers"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-1"}}}},"tokenExchange":{"onFailure":"Block","actions":[{"tokenExchangeRef":{"name":"test-token-exchange"}}]},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-metadata"}},{"identityPropagationRef":{"name":"test-header-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"exact":"/public"}}},"authorization":{}},{"requestConditions":{"path":{"matcher":{"regex":"^/api/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name"}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-defaults"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-oidc-idtoken"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-bearertoken-metadata"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-idtoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurity","metadata":{"name":"content-security-example"},"spec":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-example-1"},"spec":{"value":{"name":"ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-http-filter-example-1"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}}}}},"defaults":{"sessionHandlingRef":{"name":"session-handling-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with TLS information of the downstream connection to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"defaultTimeouts":{"lifetime":"16h"},"prefix":"session_prefix_example"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SidecarGateway","metadata":{"name":"sidecar-gateway-example"},"spec":{"podSelector":{"matchLabels":{"app":"example-app"}},"sessionHandlingRef":{"name":"session-handling-example"},"applications":[{"containerPort":8443,"routes":[{"pathPrefix":"/metrics","unsecured":{}},{"pathPrefix":"/","secured":{"accessControlRef":{"name":"access-control-example"},"contentSecurityRef":{"name":"content-security-example"}}}],"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}},"restrictions":{"http":{"headersLength":"80Ki"}},"protocol":{"auto":{}},"tls":{"enable":true,"secretRef":{"name":"example-tls-secret"},"protocol":{"minimum":"TLSv1_3"},"clientCertificate":{"ignored":{}},"xfcc":"AlwaysForwardOnly"}},"upstream":{"tls":{"enable":true,"protocol":{"minimum":"TLSv1_2"}}},"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-http-filter-example-1"}]},"telemetryRef":{"name":"telemetry-example"}}],"envoyClusterRefs":[{"name":"envoy-cluster-example-1"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-10T09:11:36Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: AccessControl
            name: accesscontrols.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurity
            name: contentsecurities.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: SidecarGateway
            name: sidecargateways.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000056)
          * Gateway API
          * (Optional) Airlock Microgateway CNI (Required for [data plane mode sidecar](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000137)).

          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
          2. Check your inbox and save the license file microgateway-license.txt locally.

          *See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000056) to choose the right license type.*

          ### Install Gateway API standard channel
          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.3.0/standard-install.yaml
          ```

          ### (Optional) Install Airlock Microgateway CNI
          ***Note:*** *The Airlock Microgateway CNI is not certified for RedHat OpenShift.*

          Refer to [our documentation](https://docs.airlock.com/microgateway/4.6/?topic=MGW-00000140) for installation instructions

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD_MONITOR\_CREATE | "false" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.6/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:f7f171ed5f8a72313942d5a1fae8720d41bd753f9a43a63980d96d63d853fa90
        - registry.connect.redhat.com/airlock/microgateway@sha256:4af539fc7ca699e082914e73b886ea5e851259ddb1b9afaa18693669f4b0bbb6
        version: 4.6.7
      entries:
      - name: airlock-microgateway.v4.6.7
        version: 4.6.7
      - name: airlock-microgateway.v4.6.6
        version: 4.6.6
      - name: airlock-microgateway.v4.6.5
        version: 4.6.5
      - name: airlock-microgateway.v4.6.4
        version: 4.6.4
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.6"
    - currentCSV: airlock-microgateway.v4.7.5
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"secured"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/test/"}}},"authorization":{"requireAny":[{"oidc":{"claim":{"name":"roles","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"group","value":{"matcher":{"exact":"superusers"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-1"}}}},"tokenExchange":{"onFailure":"Block","actions":[{"tokenExchangeRef":{"name":"test-token-exchange"}}]},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-metadata"}},{"identityPropagationRef":{"name":"test-header-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"exact":"/public"}}},"authorization":{}},{"requestConditions":{"path":{"matcher":{"regex":"^/api/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name"}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-defaults"}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-header-oidc-idtoken"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-accesstoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"test-bearertoken-metadata"}},{"identityPropagationRef":{"name":"test-bearertoken-oidc-idtoken"}}],"onFailure":"Pass"}},{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-ext-authz","namespace":"default"},"spec":{"value":{"name":"envoycluster/default/envoy-cluster-ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyExtensionPolicy","metadata":{"name":"envoy-extension-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-httpfilter-ext-authz"}],"append":[{"name":"lua-transform-request"}]},"envoyClusterRefs":[{"name":"envoy-cluster-ext-authz"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-httpfilter-ext-authz"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"envoycluster/default/envoy-cluster-ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"volumes":[{"name":"vol-1","emptyDir":{}}],"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"volumeMounts":[{"name":"vol-1","mountPath":"/tmp/data"}]}}},"defaults":{"sessionHandlingRef":{"name":"session-handling-example"},"telemetryRef":{"name":"telemetry-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with TLS information of the downstream connection to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"mode":"Enforce","persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"defaultTimeouts":{"idle":"30s","lifetime":"16h"},"prefix":"session_prefix_example","cookie":{"name":"SESS","attributes":{"domain":"example.org","path":"/","sameSite":"Strict","secure":true}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"},"session":{"id":"%SESSION_ID%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-10T12:05:46Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyExtensionPolicy
            name: envoyextensionpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.7/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ***Note:*** Sidecar-based data plane mode is *not* supported by this OLM Bundle.
          If you want to use the Sidecar-based data plane mode, use Helm instead. Please note that the Airlock Microgateway CNI and the Helm charts are not certified for RedHat OpenShift.
          Refer to https://github.com/airlock/microgateway for installation instruction with Helm.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.7/?topic=MGW-00000056)
          * [Gateway API](https://gateway-api.sigs.k8s.io/)

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
          2. Check your inbox and save the license file microgateway-license.txt locally.

          *See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.7/?topic=MGW-00000056) to choose the right license type.*

          ### Install Gateway API standard channel
          ***Note:*** *This step is only required for OpenShift versions below 4.19, as Gateway API is included by default in OpenShift 4.19+.*

          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD\_MONITOR\_CREATE | "true" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gateway API
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.7/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:cd453189f3f50fd20db7744f72e965cbdfc308abfec79a61ed97020aeb12baa2
        - registry.connect.redhat.com/airlock/microgateway@sha256:dd8c021d4333a3eec9360a336089d8984cf56fd0870f03d4e79cdd0f74da9cb6
        version: 4.7.5
      entries:
      - name: airlock-microgateway.v4.7.5
        version: 4.7.5
      - name: airlock-microgateway.v4.7.4
        version: 4.7.4
      - name: airlock-microgateway.v4.7.3
        version: 4.7.3
      - name: airlock-microgateway.v4.7.2
        version: 4.7.2
      - name: airlock-microgateway.v4.7.1
        version: 4.7.1
      - name: airlock-microgateway.v4.7.0
        version: 4.7.0
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.7"
    - currentCSV: airlock-microgateway.v4.8.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/secure"}}},"authorization":{"requireAll":[{"clientCertificate":{"hash":{"in":{"values":["69e4caf01b2b3490cd938b053274a2c9001c45c21b2cb58e3612c550568a42ca","df6ff72fe9116521268f6f2dd4966f51df479883fe7037b39f75916ac3049d1a"]}}}},{"clientCertificate":{"subject":{"field":"Organization","value":{"matcher":{"exact":"Company"}}}}},{"clientCertificate":{"san":{"type":"Email","value":{"matcher":{"suffix":"@company.com"}}}}}]}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/partner/"}}},"authorization":{"requireAll":[{"tokenExchange":{"claim":{"name":"group","value":{"matcher":{"exact":"partner"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"}}}},"tokenExchange":{"actions":[{"tokenExchangeRef":{"name":"token-exchange-example"}}]}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-example"},"spec":{"statusCode":400,"content":[{"contentType":"application/json","headers":[{"name":"X-Request-Id","value":"%STREAM_ID%"},{"name":"X-Some-Header","value":"some-value"}],"body":{"value":"{\n  \"error\":
            \"something went wrong\"\n}"}},{"contentType":"text/html","body":{"value":"<!DOCTYPE
            html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<title>Error</title>\n<style>\n  body
            {\n    font-family: Arial, Helvetica, sans-serif;\n    background-color:
            #222222;\n  }\n  h1 {\n    color: #aaaaaa;\n  }\n</style>\n</head>\n<body>\n<h1>Something
            went wrong!</h1>\n<p>Request ID: %STREAM_ID%</p>\n</body>\n</html>"}},{"contentType":"application/xml","body":{"valueFrom":{"configMapKeyRef":{"name":"custom-response-example","key":"response.xml"}}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponsePolicy","metadata":{"name":"custom-response-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":{"local":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"api-401"}}]},{"requestConditions":{"path":{"matcher":{"prefix":"/default"}}},"responses":[]},{"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}]}],"upstream":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[]},{"responses":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]}]}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-redirect-404-example"},"spec":{"statusCode":302,"content":[{"contentType":"none/none","headers":[{"name":"Location","value":"https://company.com/error/404.html?request_id=%STREAM_ID%"}]}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-ext-authz","namespace":"default"},"spec":{"value":{"name":"envoycluster/default/envoy-cluster-ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyExtensionPolicy","metadata":{"name":"envoy-extension-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-httpfilter-ext-authz"}],"append":[{"name":"lua-transform-request"}]},"envoyClusterRefs":[{"name":"envoy-cluster-ext-authz"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-httpfilter-ext-authz"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"envoycluster/default/envoy-cluster-ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"volumes":[{"name":"vol-1","emptyDir":{}}],"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"volumeMounts":[{"name":"vol-1","mountPath":"/tmp/data"}],"securityContext":{"capabilities":{"add":["BPF"]}}}}},"defaults":{"customResponses":{"local":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}],"upstream":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]},"sessionHandlingRef":{"name":"session-handling-example"},"telemetryRef":{"name":"telemetry-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with downstream TLS connection information to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"bearerToken":{"source":{"jwt":{}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"mode":"Enforce","persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"prefix":"session_prefix_example","agent":{"logging":{"level":"debug"}},"defaultTimeouts":{"idle":"30s","lifetime":"16h"},"cookie":{"name":"SESS","attributes":{"domain":"example.org","path":"/","sameSite":"Strict","secure":true}},"limits":{"sessionsPerIP":{"thresholds":{"logging":1000,"blocking":1500},"exceptions":[{"remoteIP":{"cidrRanges":["192.168.0.0/16"]}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"},"session":{"id":"%SESSION_ID%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"},"tls":{"peer":{"issuer":"%UPSTREAM_PEER_ISSUER%","subject":"%UPSTREAM_PEER_SUBJECT%"}}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-11T08:40:33Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponsePolicy
            name: customresponsepolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponse
            name: customresponses.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyExtensionPolicy
            name: envoyextensionpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056)
          * [Gateway API](https://gateway-api.sigs.k8s.io/)

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          Airlock Microgateway requires a valid license. See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056) to choose the right license type.
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
                A license will be sent automatically within minutes.
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
                Your sales partner will contact you for licensing.
          2. Check your inbox and save the license file microgateway-license.txt locally.

          ### Deploy Airlock Microgateway License
          1. Create the `airlock-microgateway-system` namespace.

          ```console
          oc create project airlock-microgateway-system
          ```
          2. Create a Kubernetes secret with the name `airlock-microgateway-license` and the key `microgateway-license.txt` in the Microgateway Operator namespace to store the license.

          ```console
          oc create secret generic airlock-microgateway-license \
            -n airlock-microgateway-system \
            --from-file=microgateway-license.txt=<path-to-your-local-microgateway-license.txt>
          ```

          ### Install Gateway API standard channel
          ***Note:*** *This step is only required for OpenShift versions below 4.19, as Gateway API is included by default in OpenShift 4.19+.*

          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD\_MONITOR\_CREATE | "true" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gateway API
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.8/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:a0f546d8f705b8c1dd1051a431327bd89a52207ec8abaf236a9570037db5ac49
        - registry.connect.redhat.com/airlock/microgateway@sha256:0dfe84720ab96cbdb5d390d5b481eea05bc6aec9fb37207a8aada5c252aeed31
        version: 4.8.1
      entries:
      - name: airlock-microgateway.v4.8.1
        version: 4.8.1
      - name: airlock-microgateway.v4.8.0
        version: 4.8.0
      - name: airlock-microgateway.v4.7.4
        version: 4.7.4
      - name: airlock-microgateway.v4.7.3
        version: 4.7.3
      - name: airlock-microgateway.v4.7.2
        version: 4.7.2
      - name: airlock-microgateway.v4.7.1
        version: 4.7.1
      - name: airlock-microgateway.v4.7.0
        version: 4.7.0
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: "4.8"
    - currentCSV: airlock-microgateway.v4.8.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"APIProtection","metadata":{"name":"api-protection-example"},"spec":{"policies":[{"name":"My
            REST API exception","requestConditions":{"path":{"matcher":{"prefix":"/rest/no-validation"}}},"noValidation":{}},{"name":"My
            REST API","requestConditions":{"path":{"matcher":{"prefix":"/rest"}}},"openAPIRef":{"name":"open-api-example"}},{"name":"My
            GraphQL API","requestConditions":{"path":{"matcher":{"prefix":"/graphql"}}},"graphQLRef":{"name":"graphql-example"}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/secure"}}},"authorization":{"requireAll":[{"clientCertificate":{"hash":{"in":{"values":["69e4caf01b2b3490cd938b053274a2c9001c45c21b2cb58e3612c550568a42ca","df6ff72fe9116521268f6f2dd4966f51df479883fe7037b39f75916ac3049d1a"]}}}},{"clientCertificate":{"subject":{"field":"Organization","value":{"matcher":{"exact":"Company"}}}}},{"clientCertificate":{"san":{"type":"Email","value":{"matcher":{"suffix":"@company.com"}}}}}]}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"authorization":{"requireAll":[{"jwt":{"claim":{"name":"sub","value":{"matcher":{"prefix":"/group/a/"}}}}}],"authentication":{"jwt":{"jwtRef":{"name":"test-jwt"}}}}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"AccessControlPolicy","metadata":{"name":"access-control-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":[{"requestConditions":{"invert":true,"remoteIP":{"cidrRanges":["192.168.0.0/16"]}},"authorization":{"deny":{}}},{"requestConditions":{"path":{"matcher":{"regex":"^/partner/"}}},"authorization":{"requireAll":[{"tokenExchange":{"claim":{"name":"group","value":{"matcher":{"exact":"partner"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"}}}},"tokenExchange":{"actions":[{"tokenExchangeRef":{"name":"token-exchange-example"}}]}},{"requestConditions":{"path":{"matcher":{"regex":"^/admin/"}}},"authorization":{"requireAll":[{"oidc":{"claim":{"name":"name","value":{"matcher":{"exact":"admin"}}}}},{"oidc":{"claim":{"name":"email","value":{"matcher":{"suffix":"@company.com"}}}}}],"authentication":{"oidc":{"oidcRelyingPartyRef":{"name":"test-2"},"introspection":{"strategy":{"random":{"probability":"0.1%"}}}}}},"identityPropagation":{"actions":[{"identityPropagationRef":{"name":"identity-propagation-example"}}],"onFailure":"Pass"}},{"authorization":{"deny":{}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CSRFProtection","metadata":{"name":"csrf-protection-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"exceptions":[{"requestConditions":{"path":{"matcher":{"regex":"^/member/","ignoreCase":true}},"invert":false,"remoteIP":{"cidrRanges":["192.168.1.0/24","10.0.0.0/16"],"invert":false},"method":["DELETE"]}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"ContentSecurityPolicy","metadata":{"name":"content-security-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"secured":{"parserRef":{"name":"parser-example"},"limitsRef":{"name":"limits-example"},"headerRewritesRef":{"name":"header-rewrites-example"},"filter":{"denyRulesRef":{"name":"deny-rules-example"}},"apiProtectionRef":{"name":"api-protection-example"},"csrfProtectionRef":{"name":"csrf-protection-example"}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-example"},"spec":{"statusCode":400,"content":[{"contentType":"application/json","headers":[{"name":"X-Request-Id","value":"%STREAM_ID%"},{"name":"X-Some-Header","value":"some-value"}],"body":{"value":"{\n  \"error\":
            \"something went wrong\"\n}"}},{"contentType":"text/html","body":{"value":"<!DOCTYPE
            html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<title>Error</title>\n<style>\n  body
            {\n    font-family: Arial, Helvetica, sans-serif;\n    background-color:
            #222222;\n  }\n  h1 {\n    color: #aaaaaa;\n  }\n</style>\n</head>\n<body>\n<h1>Something
            went wrong!</h1>\n<p>Request ID: %STREAM_ID%</p>\n</body>\n</html>"}},{"contentType":"application/xml","body":{"valueFrom":{"configMapKeyRef":{"name":"custom-response-example","key":"response.xml"}}}}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponsePolicy","metadata":{"name":"custom-response-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"policies":{"local":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"api-401"}}]},{"requestConditions":{"path":{"matcher":{"prefix":"/default"}}},"responses":[]},{"responses":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}]}],"upstream":[{"requestConditions":{"path":{"matcher":{"prefix":"/api"}}},"responses":[]},{"responses":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]}]}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"CustomResponse","metadata":{"name":"custom-response-redirect-404-example"},"spec":{"statusCode":302,"content":[{"contentType":"none/none","headers":[{"name":"Location","value":"https://company.com/error/404.html?request_id=%STREAM_ID%"}]}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"DenyRules","metadata":{"name":"deny-rules-example"},"spec":{"request":{"builtIn":{"settings":{"level":"Strict","threatHandlingMode":"Block"},"overrides":[{"conditions":{"ruleKeys":["XSS"],"types":["Parameter"]},"settings":{"level":"Standard"}},{"conditions":{"types":["GraphQL"]},"settings":{"level":"Standard"}}],"exceptions":[{"blockedData":{"parameter":{"name":{"matcher":{"exact":"search"}},"source":"Query"}},"requestConditions":{"path":{"matcher":{"prefix":"/member/"}},"method":["GET"]},"ruleKeys":["SQL"]},{"blockedData":{"graphQL":{"field":{"matcher":{"exact":"films"}},"argument":{"matcher":{"exact":"search"}},"value":{"matcher":{"exact":"abc"}}}}}]},"custom":{"rules":[{"ruleKey":"CM_REFERRER_BLOCK","blockData":{"header":{"name":{"matcher":{"exact":"referer"}},"value":{"matcher":{"regex":".*bad.tv"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyCluster","metadata":{"name":"envoy-cluster-ext-authz","namespace":"default"},"spec":{"value":{"name":"envoycluster/default/envoy-cluster-ext-authz","connect_timeout":"1s","type":"LOGICAL_DNS","load_assignment":{"cluster_name":"ext-authz","endpoints":[{"lb_endpoints":[{"endpoint":{"address":{"socket_address":{"address":"opa.service.internal","port_value":8099}}}}]}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyExtensionPolicy","metadata":{"name":"envoy-extension-policy-example"},"spec":{"targetRefs":[{"group":"gateway.networking.k8s.io","kind":"HTTPRoute","name":"backend"}],"envoyHTTPFilterRefs":{"prepend":[{"name":"envoy-httpfilter-ext-authz"}],"append":[{"name":"lua-transform-request"}]},"envoyClusterRefs":[{"name":"envoy-cluster-ext-authz"}]}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"EnvoyHTTPFilter","metadata":{"name":"envoy-httpfilter-ext-authz"},"spec":{"value":{"name":"envoy.filters.http.ext_authz","typed_config":{"@type":"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz","http_service":{"path_prefix":"/auth/login","server_uri":{"uri":"http://opa.service.internal:8099","cluster":"envoycluster/default/envoy-cluster-ext-authz","timeout":"0.25s"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GatewayParameters","metadata":{"name":"gateway-parameters-example"},"spec":{"logging":{"level":"debug"},"kubernetes":{"service":{"type":"LoadBalancer","annotations":{"service.beta.kubernetes.io/aws-load-balancer-type":"external","service.beta.kubernetes.io/aws-load-balancer-nlb-target-type":"ip","service.beta.kubernetes.io/aws-load-balancer-scheme":"internet-facing"}},"deployment":{"replicas":3,"strategy":{"type":"RollingUpdate","rollingUpdate":{"maxUnavailable":1}},"placement":{"nodeSelector":{"node.kubernetes.io/instance-type":"m3.medium"},"topologySpreadConstraints":[{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}]},"volumes":[{"name":"vol-1","emptyDir":{}}],"engineContainer":{"resources":{"limits":{"cpu":"500m","memory":"128Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"volumeMounts":[{"name":"vol-1","mountPath":"/tmp/data"}],"securityContext":{"capabilities":{"add":["BPF"]}}}}},"defaults":{"customResponses":{"local":[{"statusCodeCondition":{"matcher":{"exact":401}},"customResponseRef":{"name":"custom-401"}},{"statusCodeCondition":{"matcher":{"exact":404}},"customResponseRef":{"name":"custom-404"}},{"statusCodeCondition":{"matcher":{"range":{"start":400,"end":499}}},"customResponseRef":{"name":"custom-400"}},{"statusCodeCondition":{"matcher":{"range":{"start":500,"end":599}}},"customResponseRef":{"name":"custom-5xx"}}],"upstream":[{"responseConditions":{"statusCode":{"matcher":{"range":{"start":400,"end":499}}}},"customResponseRef":{"name":"upstream-4xx"}},{"responseConditions":{"statusCode":{"matcher":{"range":{"start":500,"end":599}}}},"customResponseRef":{"name":"upstream-5xx"}}]},"sessionHandlingRef":{"name":"session-handling-example"},"telemetryRef":{"name":"telemetry-example"},"downstream":{"remoteIP":{"xff":{"numTrustedHops":1}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"GraphQL","metadata":{"name":"graphql-example"},"spec":{"settings":{"threatHandlingMode":"Block","allowMutations":true,"allowIntrospection":false,"schema":{"source":{"configMapRef":{"name":"graphql-schema"}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"HeaderRewrites","metadata":{"name":"header-rewrites-example"},"spec":{"request":{"allow":{"matchingHeaders":{"builtIn":{"standardHeaders":true,"tracingHeaders":true},"custom":[{"name":"Allow
            X-CSRF-Token header","headers":[{"name":{"matcher":{"exact":"X-CSRF-TOKEN"}}}]}]}},"remove":{"builtIn":{"alternativeForwardedHeaders":true},"custom":[{"name":"Remove
            X-Forwarded-Host","headers":[{"name":{"matcher":{"exact":"X-Forwarded-Host"}}}]}]},"add":{"custom":[{"name":"Add
            headers with downstream TLS connection information to member requests","headers":[{"name":"X-TLS-DOWNSTREAM-PEER-CERT","value":"%DOWNSTREAM_PEER_CERT%"}],"mode":"OverwriteOrAdd","requestConditions":{"path":{"matcher":{"regex":"^/member/"}}}}]}},"response":{"allow":{"allHeaders":{}},"remove":{"builtIn":{"auth":{"basic":true}}},"add":{"custom":[{"name":"Add
            application version as header","headers":[{"name":"X-APP-VERSION","value":"3.7.4"}],"mode":"OverwriteOrAdd"}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"bearerToken":{"source":{"jwt":{}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"IdentityPropagation","metadata":{"name":"identity-propagation-example"},"spec":{"header":{"name":"X-USER-NAME","value":{"source":{"oidc":{"idToken":{"claim":"name"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWKS","metadata":{"name":"jwks-example"},"spec":{"provider":{"remote":{"uri":"https://example.com/.well-known/jwks.json","timeouts":{"connect":"1s"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"JWT","metadata":{"name":"jwt-example"},"spec":{"extractionSources":[{"bearerToken":{}},{"cookie":{"name":"creds"}}],"requireAny":[{"jwksRef":{"name":"example-jwks"},"issuer":"https://token.example.com","audiences":["bookstore_web.apps.example.com"],"subject":{"matcher":{"prefix":"spiffe://spiffe.example.com/"}}}],"expirationRequired":true,"maxLifetime":"24h","clockSkewTolerance":"10s"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Limits","metadata":{"name":"limits-example"},"spec":{"settings":{"threatHandlingMode":"Block"},"request":{"limited":{"general":{"bodySize":"10Mi","pathLength":"1Ki"},"parameter":{"bodySize":"10Ki","count":128,"nameLength":128,"valueLength":"1Ki"},"json":{"bodySize":"10Ki","nestingDepth":100,"keyCount":250,"elementCount":150000,"keyLength":128,"valueLength":"8Ki"},"multipart":{"bodySize":"10Mi"},"graphQL":{"querySize":512,"nestingDepth":5,"valueLength":128},"exceptions":[{"length":{"json":{"jsonPath":"$.logo"}},"requestConditions":{"path":{"matcher":{"prefix":"/project/"}}}},{"length":{"parameter":{"name":{"matcher":{"exact":"txtbdy"}},"source":"Post"}}},{"length":{"graphQL":{"field":{"matcher":{"exact":"search"}},"argument":{"matcher":{"exact":"text"}}}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCProvider","metadata":{"name":"oidc-provider-example"},"spec":{"static":{"issuer":"https://iam.airlock.com/","endpoints":{"authorization":{"uri":"https://iam.airlock.com/authorize"},"token":{"uri":"https://iam.airlock.com/token"},"introspection":{"uri":"https://iam.airlock.com/introspection"}},"tokenValidation":{"idToken":{"signatureVerification":{"jwksRef":{"name":"jwks-example"}}}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OIDCRelyingParty","metadata":{"name":"oidc-rp-example"},"spec":{"oidcProviderRef":{"name":"example-provider"},"clientID":"my-id","scopes":["openid","profile","email","roles"],"credentials":{"clientSecret":{"method":"BasicAuth","secretRef":{"name":"client-password"}}},"pathMapping":{"logoutPath":{"matcher":{"exact":"/logout"}},"redirectPath":{"matcher":{"exact":"/callback"}}},"redirectURI":"%REQ(:x-forwarded-proto)%://%REQ(:authority)%/callback","flowTimeout":"7m"}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"OpenAPI","metadata":{"name":"open-api-example"},"spec":{"settings":{"schema":{"source":{"configMapRef":{"name":"openapi3-spec"}}},"threatHandlingMode":"Block","logging":{"maxFailedSubvalidations":10},"validation":{"authentication":{"oAuth2":{"allowedParameters":{"builtIn":{"standardParameters":true},"custom":["param1","param2"]}},"oidc":{"allowedParameters":{"builtIn":{"standardParameters":false},"custom":["param3","param4"]}}}}},"response":{"unsecured":{}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Parser","metadata":{"name":"parser-example"},"spec":{"request":{"defaultContentType":"application/json","parsers":{"json":{"enable":true,"mediaTypePattern":".*json.*"},"form":{"enable":true,"mediaTypePattern":".*form-urlencoded.*"},"multipart":{"enable":true,"mediaTypePattern":".*multipart.*"}},"custom":{"rules":[{"requestConditions":{"method":["POST"],"path":{"matcher":{"exact":"/company/contact.php"}}},"action":{"parse":{"json":{}}}},{"requestConditions":{"path":{"matcher":{"exact":"/support/upload.php"}}},"action":{"skip":{}}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"RedisProvider","metadata":{"name":"redis-provider-example"},"spec":{"mode":{"standalone":{"host":"redis.example.com","port":1111}},"tls":{"certificateVerification":{"custom":{"trustedCA":{"certificates":[{"secretRef":{"name":"ca"}}]}}},"clientCertificate":{"secretRef":{"name":"client-certificate"}}},"timeouts":{"connect":"10s"},"auth":{"username":"user1","password":{"secretRef":{"name":"redis-password"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"SessionHandling","metadata":{"name":"session-handling-example"},"spec":{"mode":"Enforce","persistence":{"redisProviderRef":{"name":"redis-provider-example"}},"prefix":"session_prefix_example","agent":{"logging":{"level":"debug"}},"defaultTimeouts":{"idle":"30s","lifetime":"16h"},"cookie":{"name":"SESS","attributes":{"domain":"example.org","path":"/","sameSite":"Strict","secure":true}},"limits":{"sessionsPerIP":{"thresholds":{"logging":1000,"blocking":1500},"exceptions":[{"remoteIP":{"cidrRanges":["192.168.0.0/16"]}}]}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"Telemetry","metadata":{"name":"telemetry-example"},"spec":{"logging":{"accessLog":{"format":{"json":{"@timestamp":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","ecs":{"version":"8.5"},"log":{"logger":"access","level":"info"},"event":{"kind":"event","category":["web"],"type":"%EVENT_TYPE%","module":"envoy","dataset":"envoy.access","outcome":"success","start":"%START_TIME(%Y-%m-%dT%T.%3f%z)%","end":"%END_TIME(%Y-%m-%dT%T.%3f%z)%","duration":"%DURATION_IN_NANOSECONDS%"},"airlock":{"access_control":"%ACCESS_CONTROL%","actions":{"block":"%BLOCK_ACTION%","header_rewrites":"%HEADER_REWRITES%","log_only":"%LOG_ONLY_ACTIONS%"},"http":{"request":{"accept_language":"%REQ(ACCEPT-LANGUAGE):100%","correlation_id":"%DYNAMIC_METADATA(com.airlock.microgateway.telemetry:correlation_id)%"},"response":{"redirect_url":"%RESP(LOCATION):1000%"},"session":{"id":"%SESSION_ID%"}},"log_correlation":"%LOG_CORRELATION%","summary":{"action":"%SUMMARY_ACTION%","details":"%RESPONSE_CODE_DETAILS%","flags":"%RESPONSE_FLAGS%"},"upstream":{"destination":{"ip":"%UPSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%UPSTREAM_REMOTE_PORT%"},"http":{"version":"%UPSTREAM_HTTP_VERSION%"},"tls":{"peer":{"issuer":"%UPSTREAM_PEER_ISSUER%","subject":"%UPSTREAM_PEER_SUBJECT%"}}}},"destination":{"ip":"%DOWNSTREAM_LOCAL_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_LOCAL_PORT%"},"http":{"request":{"body":{"bytes":"%BYTES_RECEIVED%"},"bytes":"%REQUEST_HEADERS_AND_BODY_BYTES%","id":"%STREAM_ID%","method":"%REQ(:METHOD):100%","mime_type":"%REQ_MIME_TYPE:500%","referrer":"%REQ(REFERER):1000%"},"response":{"body":{"bytes":"%BYTES_SENT%"},"bytes":"%RESPONSE_HEADERS_AND_BODY_BYTES%","mime_type":"%RESP_MIME_TYPE:500%","status_code":"%RESPONSE_CODE%"},"version":"%HTTP_VERSION%"},"network":{"forwarded_ip":"%DOWNSTREAM_REMOTE_ADDRESS_WITHOUT_PORT%"},"observer":{"product":"Airlock
            Microgateway","type":"waap","vendor":"Ergon Informatik AG","version":"%ENVIRONMENT(ENGINE_VERSION)%"},"source":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"},"url":{"domain":"%HTTP_HOST:500%","path":"%REQ_WITHOUT_QUERY(:PATH):1000%","query":"%REQ_QUERY(:PATH):1000%"},"user_agent":{"original":"%REQ(USER-AGENT):500%"},"custom":{"downstream":{"tls":{"protocol":"%DOWNSTREAM_TLS_VERSION%","cipher":"%DOWNSTREAM_TLS_CIPHER%","session_id":"%DOWNSTREAM_TLS_SESSION_ID%"},"direct_remote_address":{"ip":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS_WITHOUT_PORT%","port":"%DOWNSTREAM_DIRECT_REMOTE_PORT%"}},"http":{"request":{"cookie":"%REQ(cookie):500%"}}}}}}},"correlation":{"idSource":{"header":{"name":"X-Request-Id"}}}}},{"apiVersion":"microgateway.airlock.com/v1alpha1","kind":"TokenExchange","metadata":{"name":"token-exchange-example"},"spec":{"tokenEndpoint":{"endpoint":{"uri":"https://iam.airlock.com/token","tls":{"protocol":{"minimum":"TLSv1_3"}},"timeouts":{"connect":"2s"}},"credentials":{"clientPassword":{"method":"BasicAuth","clientID":"my-id","clientSecret":{"secretRef":{"name":"client-password"}}}}},"requestedTokenType":"urn:ietf:params:oauth:token-type:jwt","audiences":["https://api.airlock.com/realms/a","my-audience"],"resources":["https://resource.airlock.com/"],"scopes":["db"]}}]'
          capabilities: Seamless Upgrades
          categories: Security
          createdAt: "2025-12-11T08:40:33Z"
          description: Airlock Microgateway is a Kubernetes native WAAP (Web Application
            and API Protection) solution to protect microservices.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: airlock-microgateway-system
          operators.openshift.io/valid-subscription: '["Airlock Microgateway Community
            License", "Airlock Microgateway Premium License"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["envoyconfigurations.microgateway.airlock.com"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/airlock/microgateway
          support: Airlock
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AccessControlPolicy
            name: accesscontrolpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: APIProtection
            name: apiprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: ContentSecurityPolicy
            name: contentsecuritypolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CSRFProtection
            name: csrfprotections.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponsePolicy
            name: customresponsepolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: CustomResponse
            name: customresponses.microgateway.airlock.com
            version: v1alpha1
          - kind: DenyRules
            name: denyrules.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyCluster
            name: envoyclusters.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyConfiguration
            name: envoyconfigurations.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyExtensionPolicy
            name: envoyextensionpolicies.microgateway.airlock.com
            version: v1alpha1
          - kind: EnvoyHTTPFilter
            name: envoyhttpfilters.microgateway.airlock.com
            version: v1alpha1
          - kind: GatewayParameters
            name: gatewayparameters.microgateway.airlock.com
            version: v1alpha1
          - kind: GraphQL
            name: graphqls.microgateway.airlock.com
            version: v1alpha1
          - kind: HeaderRewrites
            name: headerrewrites.microgateway.airlock.com
            version: v1alpha1
          - kind: IdentityPropagation
            name: identitypropagations.microgateway.airlock.com
            version: v1alpha1
          - kind: JWKS
            name: jwks.microgateway.airlock.com
            version: v1alpha1
          - kind: JWT
            name: jwts.microgateway.airlock.com
            version: v1alpha1
          - kind: Limits
            name: limits.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCProvider
            name: oidcproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: OIDCRelyingParty
            name: oidcrelyingparties.microgateway.airlock.com
            version: v1alpha1
          - kind: OpenAPI
            name: openapis.microgateway.airlock.com
            version: v1alpha1
          - kind: Parser
            name: parsers.microgateway.airlock.com
            version: v1alpha1
          - kind: RedisProvider
            name: redisproviders.microgateway.airlock.com
            version: v1alpha1
          - kind: SessionHandling
            name: sessionhandlings.microgateway.airlock.com
            version: v1alpha1
          - kind: Telemetry
            name: telemetries.microgateway.airlock.com
            version: v1alpha1
          - kind: TokenExchange
            name: tokenexchanges.microgateway.airlock.com
            version: v1alpha1
        description: |-
          Airlock Microgateway is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.

          Modern application security is embedded in the development workflow and follows DevSecOps paradigms. Airlock Microgateway is the perfect fit for these requirements.
          It is a lightweight WAAP solution (formerly known as WAF), optimized for Kubernetes environments.
          Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.

          For a list of all features, view the [comparison of the community and premium edition](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056).

          The instructions below provide a quick start guide.

          ## Prerequisites

          * [Airlock Microgateway License](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056)
          * [Gateway API](https://gateway-api.sigs.k8s.io/)

          In order to use Airlock Microgateway you need a license. You may either request a community license free of charge or purchase a premium license.

          ### Obtain Airlock Microgateway License
          Airlock Microgateway requires a valid license. See [Community vs. Premium editions in detail](https://docs.airlock.com/microgateway/4.8/?topic=MGW-00000056) to choose the right license type.
          1. Either request a community or premium license
              * Community license: [airlock.com/microgateway-community](https://airlock.com/en/microgateway-community)
                A license will be sent automatically within minutes.
              * Premium license: [airlock.com/microgateway-premium](https://airlock.com/en/microgateway-premium)
                Your sales partner will contact you for licensing.
          2. Check your inbox and save the license file microgateway-license.txt locally.

          ### Deploy Airlock Microgateway License
          1. Create the `airlock-microgateway-system` namespace.

          ```console
          oc create project airlock-microgateway-system
          ```
          2. Create a Kubernetes secret with the name `airlock-microgateway-license` and the key `microgateway-license.txt` in the Microgateway Operator namespace to store the license.

          ```console
          oc create secret generic airlock-microgateway-license \
            -n airlock-microgateway-system \
            --from-file=microgateway-license.txt=<path-to-your-local-microgateway-license.txt>
          ```

          ### Install Gateway API standard channel
          ***Note:*** *This step is only required for OpenShift versions below 4.19, as Gateway API is included by default in OpenShift 4.19+.*

          ```console
          kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
          ```

          ## Configuring Airlock Microgateway Operator deployed by OLM
          ***Note:*** *It is possible to configure how OLM deploys an Operator via the [Subscription Config](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md).*

          The following environment variables are supported:
          | Name        | Default     | Example     | Description |
          | ----------- | ----------- | ----------- | ----------- |
          | LOG\_LEVEL   | "info"      | "debug"     | Operator application log level. Allowed Values: “error”, “warn”, “info”, “debug” |
          | GATEWAY\_API\_ENABLED |  "true"  |  "true"    | Whether to enable the Kubernetes Gateway API related controllers. Requires that the gateway.networking.k8s.io/v1 resources are installed on the cluster. See [https://gateway-api.sigs.k8s.io/guides/#install-standard-channel](https://gateway-api.sigs.k8s.io/guides/#install-standard-channel). |
          | GATEWAY\_API\_CONTROLLER\_NAME |  "microgateway.airlock.com/gatewayclass-controller" | "true" | Controller name referred in the GatewayClasses managed by this operator. The value must be a path prefixed by the domain microgateway.airlock.com. |
          | GATEWAY\_API\_POD\_MONITOR\_CREATE | "true" | "true" | Whether to create a PodMonitor resource for monitoring the Gateway API resources. |
          | GATEWAY\_API\_POD\_MONITOR\_ADDITIONAL\_LABELS | "" | "release=my-microgateway,env=dev" | Labels to add to the PodMonitor. Allowed Values: Comma-separated list of key=value pairs|
        displayName: Airlock Microgateway
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gateway API
        - WAF
        - Web Application Firewall
        - WAAP
        - Web Application and API protection
        - OWASP
        - Airlock
        - Microgateway
        - Security
        - Filtering
        - DevSecOps
        - shift left
        - control plane
        - Operator
        links:
        - name: Airlock Microgateway Documentation
          url: https://docs.airlock.com/microgateway/4.8/
        - name: Airlock Microgateway Labs
          url: https://airlock.instruqt.com/pages/airlock-microgateway-labs
        - name: Airlock Microgateway Forum
          url: https://forum.airlock.com/
        maintainers:
        - email: support@airlock.com
          name: Airlock
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Airlock
        relatedImages:
        - quay.io/airlock/microgateway-operator@sha256:a0f546d8f705b8c1dd1051a431327bd89a52207ec8abaf236a9570037db5ac49
        - registry.connect.redhat.com/airlock/microgateway@sha256:0dfe84720ab96cbdb5d390d5b481eea05bc6aec9fb37207a8aada5c252aeed31
        version: 4.8.1
      entries:
      - name: airlock-microgateway.v4.8.1
        version: 4.8.1
      - name: airlock-microgateway.v4.8.0
        version: 4.8.0
      - name: airlock-microgateway.v4.7.4
        version: 4.7.4
      - name: airlock-microgateway.v4.7.3
        version: 4.7.3
      - name: airlock-microgateway.v4.7.2
        version: 4.7.2
      - name: airlock-microgateway.v4.7.1
        version: 4.7.1
      - name: airlock-microgateway.v4.7.0
        version: 4.7.0
      - name: airlock-microgateway.v4.6.3
        version: 4.6.3
      - name: airlock-microgateway.v4.6.2
        version: 4.6.2
      - name: airlock-microgateway.v4.6.1
        version: 4.6.1
      - name: airlock-microgateway.v4.6.0
        version: 4.6.0
      - name: airlock-microgateway.v4.5.3
        version: 4.5.3
      - name: airlock-microgateway.v4.5.2
        version: 4.5.2
      - name: airlock-microgateway.v4.5.1
        version: 4.5.1
      - name: airlock-microgateway.v4.5.0
        version: 4.5.0
      name: stable
    defaultChannel: "4.8"
    packageName: airlock-microgateway
    provider:
      name: Airlock
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: MariaDB Corporation
      provider-url: ""
    name: mariadb-enterprise-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mariadb-enterprise-operator.v25.8.1-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup"
                },
                "spec": {
                  "args": [
                    "--single-transaction",
                    "--all-databases"
                  ],
                  "logLevel": "info",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "0 0 * * *",
                    "suspend": false
                  },
                  "stagingStorage": {
                    "persistentVolumeClaim": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "1Gi"
                        }
                      }
                    }
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "backups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Connection",
                "metadata": {
                  "name": "connection"
                },
                "spec": {
                  "database": "mariadb",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "secretName": "connection",
                  "secretTemplate": {
                    "key": "dsn"
                  },
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Database",
                "metadata": {
                  "name": "database"
                },
                "spec": {
                  "characterSet": "utf8",
                  "collate": "utf8_general_ci",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "name": "my-logical-database"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Grant",
                "metadata": {
                  "name": "grant"
                },
                "spec": {
                  "database": "*",
                  "grantOption": true,
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "privileges": [
                    "SELECT",
                    "INSERT",
                    "UPDATE"
                  ],
                  "table": "*",
                  "username": "my-user"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "MariaDB",
                "metadata": {
                  "name": "mariadb"
                },
                "spec": {
                  "connection": {
                    "secretName": "mariadb-conn",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "database": "mariadb",
                  "galera": {
                    "enabled": true
                  },
                  "metrics": {
                    "enabled": true,
                    "passwordSecretKeyRef": {
                      "generate": true,
                      "key": "password",
                      "name": "mariadb-metrics"
                    }
                  },
                  "myCnf": "[mariadb]\nbind-address=*\ndefault_storage_engine=InnoDB\nbinlog_format=row\ninnodb_autoinc_lock_mode=2\ninnodb_buffer_pool_size=1024M\nmax_allowed_packet=256M\n",
                  "passwordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-password"
                  },
                  "primaryConnection": {
                    "secretName": "mariadb-conn-primary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "primaryService": {
                    "type": "ClusterIP"
                  },
                  "replicas": 3,
                  "rootPasswordSecretKeyRef": {
                    "generate": true,
                    "key": "password",
                    "name": "mariadb-root"
                  },
                  "secondaryConnection": {
                    "secretName": "mariadb-conn-secondary",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "secondaryService": {
                    "type": "ClusterIP"
                  },
                  "service": {
                    "type": "ClusterIP"
                  },
                  "storage": {
                    "size": "1Gi"
                  },
                  "updateStrategy": {
                    "type": "ReplicasFirstPrimaryLast"
                  },
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "MaxScale",
                "metadata": {
                  "name": "maxscale"
                },
                "spec": {
                  "admin": {
                    "guiEnabled": true,
                    "port": 8989
                  },
                  "auth": {
                    "adminPasswordSecretKeyRef": {
                      "generate": true,
                      "key": "password",
                      "name": "maxscale-admin"
                    },
                    "adminUsername": "mariadb-enterprise-operator",
                    "generate": true
                  },
                  "config": {
                    "sync": {
                      "database": "mysql",
                      "interval": "5s",
                      "timeout": "10s"
                    }
                  },
                  "connection": {
                    "port": 3306,
                    "secretName": "maxscale-conn",
                    "secretTemplate": {
                      "key": "dsn"
                    }
                  },
                  "guiKubernetesService": {
                    "type": "ClusterIP"
                  },
                  "kubernetesService": {
                    "type": "ClusterIP"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "metrics": {
                    "enabled": true
                  },
                  "monitor": {
                    "cooperativeMonitoring": "majority_of_all",
                    "interval": "2s",
                    "params": {
                      "available_when_donor": "false",
                      "disable_master_failback": "false",
                      "disable_master_role_setting": "false"
                    }
                  },
                  "replicas": 2,
                  "requeueInterval": "10s",
                  "services": [
                    {
                      "listener": {
                        "port": 3306,
                        "protocol": "MariaDBProtocol"
                      },
                      "name": "rw-router",
                      "params": {
                        "transaction_replay": "true",
                        "transaction_replay_attempts": "10",
                        "transaction_replay_timeout": "5s"
                      },
                      "router": "readwritesplit"
                    }
                  ]
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "PhysicalBackup",
                "metadata": {
                  "name": "physicalbackup"
                },
                "spec": {
                  "compression": "bzip2",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxRetention": "720h",
                  "podAffinity": true,
                  "resources": {
                    "limits": {
                      "cpu": "300m",
                      "memory": "512Mi"
                    },
                    "requests": {
                      "cpu": "100m",
                      "memory": "128Mi"
                    }
                  },
                  "schedule": {
                    "cron": "0 0 * * *",
                    "immediate": true,
                    "suspend": false
                  },
                  "serviceAccountName": "backup",
                  "stagingStorage": {
                    "persistentVolumeClaim": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "1Gi"
                        }
                      }
                    }
                  },
                  "storage": {
                    "s3": {
                      "accessKeyIdSecretKeyRef": {
                        "key": "access-key-id",
                        "name": "minio"
                      },
                      "bucket": "physicalbackups",
                      "endpoint": "minio.minio.svc.cluster.local:9000",
                      "prefix": "mariadb",
                      "region": "us-east-1",
                      "secretAccessKeySecretKeyRef": {
                        "key": "secret-access-key",
                        "name": "minio"
                      },
                      "tls": {
                        "caSecretKeyRef": {
                          "key": "ca.crt",
                          "name": "minio-ca"
                        },
                        "enabled": true
                      }
                    }
                  },
                  "timeout": "1h"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore"
                },
                "spec": {
                  "backupRef": {
                    "name": "backup"
                  },
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "targetRecoveryTime": "2023-12-19T09:00:00Z"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "SqlJob",
                "metadata": {
                  "name": "sqljob"
                },
                "spec": {
                  "database": "mariadb",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  },
                  "schedule": {
                    "cron": "*/1 * * * *",
                    "suspend": false
                  },
                  "sql": "CREATE TABLE IF NOT EXISTS orders (\n  id bigint PRIMARY KEY AUTO_INCREMENT,\n  customer_id INT,\n  order_date DATE,\n  total_amount_cents INT\n);\nINSERT INTO orders (customer_id, order_date, total_amount_cents) VALUES\n  (101, '2024-05-15', 5000),\n  (102, '2024-05-14', 7525),\n  (103, '2024-05-13', 10050),\n  (104, '2024-05-12', 2575);",
                  "username": "mariadb"
                }
              },
              {
                "apiVersion": "enterprise.mariadb.com/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "user"
                },
                "spec": {
                  "host": "%",
                  "mariaDbRef": {
                    "name": "mariadb"
                  },
                  "maxUserConnections": 20,
                  "name": "my-user",
                  "passwordSecretKeyRef": {
                    "key": "password",
                    "name": "mariadb"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: docker.mariadb.com/mariadb-enterprise-operator@sha256:1effbbfa7632be92c17ef61c18a25f010b187840beec42c31d2410d0209e6985
          createdAt: "2025-08-28T11:35:03Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["MariaDB Enterprise"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: MariaDB Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API. It is used to define
              backup jobs and its storage.
            displayName: Backup
            kind: Backup
            name: backups.enterprise.mariadb.com
            version: v1alpha1
          - description: Connection is the Schema for the connections API. It is used
              to configure connection strings for the applications connecting to MariaDB.
            displayName: Connection
            kind: Connection
            name: connections.enterprise.mariadb.com
            version: v1alpha1
          - description: Database is the Schema for the databases API. It is used
              to define a logical database as if you were running a 'CREATE DATABASE'
              statement.
            displayName: Database
            kind: Database
            name: databases.enterprise.mariadb.com
            version: v1alpha1
          - description: Grant is the Schema for the grants API. It is used to define
              grants as if you were running a 'GRANT' statement.
            displayName: Grant
            kind: Grant
            name: grants.enterprise.mariadb.com
            version: v1alpha1
          - description: MariaDB is the Schema for the mariadbs API. It is used to
              define MariaDB clusters.
            displayName: Maria DB
            kind: MariaDB
            name: mariadbs.enterprise.mariadb.com
            version: v1alpha1
          - description: MaxScale is the Schema for the maxscales API. It is used
              to define MaxScale clusters.
            displayName: Max Scale
            kind: MaxScale
            name: maxscales.enterprise.mariadb.com
            version: v1alpha1
          - description: PhysicalBackup is the Schema for the physicalbackups API.
              It is used to define physical backup jobs and its storage.
            displayName: Physical Backup
            kind: PhysicalBackup
            name: physicalbackups.enterprise.mariadb.com
            version: v1alpha1
          - description: Restore is the Schema for the restores API. It is used to
              define restore jobs and its restoration source.
            displayName: Restore
            kind: Restore
            name: restores.enterprise.mariadb.com
            version: v1alpha1
          - description: SqlJob is the Schema for the sqljobs API. It is used to run
              sql scripts as jobs.
            displayName: Sql Job
            kind: SqlJob
            name: sqljobs.enterprise.mariadb.com
            version: v1alpha1
          - description: User is the Schema for the users API.  It is used to define
              grants as if you were running a 'CREATE USER' statement.
            displayName: User
            kind: User
            name: users.enterprise.mariadb.com
            version: v1alpha1
        description: |
          MariaDB Enterprise Operator for Openshift is an operator that manages MariaDB Enterprise operands declaratively via Custom Resources, with support for the following features:

          * Provision and Configure MariaDB and MaxScale Declaratively: Define MariaDB Enterprise Server and MaxScale clusters in YAML manifests and deploy them with ease in Kubernetes.
          * High Availability with Galera: Ensure availability with MariaDB Enterprise Cluster, providing synchronous multi-master replication.
          * Query and Connection-Based Routing with MaxScale: MaxScale provides query routing and connection load balancing for improved application performance.
          * Cluster-Aware Rolling Updates: Perform rolling updates on MariaDB and MaxScale clusters, ensuring zero-downtime upgrades with no disruptions to your applications.
          * Flexible Storage Configuration and Volume Expansion: Easily configure storage for MariaDB instances, including the ability to expand volumes as needed.
          * Physical Backups based on [mariadb-backup](https://mariadb.com/docs/server/server-usage/backup-and-restore/mariadb-backup/full-backup-and-restore-with-mariadb-backup) and [Kubernetes VolumeSnapshots](https://kubernetes.io/docs/concepts/storage/volume-snapshots/). By leveraging the [BACKUP STAGE](https://mariadb.com/docs/server/reference/sql-statements/administrative-sql-statements/backup-commands/backup-stage) feature, backups are taken without long read locks or service interruptions.
          * Logical Backups based on [mariadb-dump](https://mariadb.com/docs/server/clients-and-utilities/backup-restore-and-import-clients/mariadb-dump).
          * Backup Management: Take, restore, and schedule backups with multiple storage types supported: S3, PVCs, Kubernetes volumes and VolumeSnapshots..
          * Policy-Driven Backup Retention: Implement backup retention policies with bzip2 and gzip compression.
          * Target Recovery Time: Restore your database to the closest available backup based on a specified recovery time.
          * Bootstrap New Instances: Initialize new MariaDB instances from backups, S3, PVCs or VolumeSnapshots to quickly spin up new clusters.
          * TLS Certificate Management: Issue, configure, and rotate TLS certificates and Certificate Authorities (CAs) for secure connections.
          * Advanced TLS Support: customize certificate lifetime, private key algorithm and TLS version.
          * Native Integration with cert-manager: Leverage [cert-manager](https://cert-manager.io/docs/), the de-facto standard for managing certificates in Kubernetes, to enable issuance with private CAs, public CAs and HashiCorp Vault.
          * Prometheus Metrics: Expose metrics using the MariaDB and MaxScale Prometheus exporters.
          * Native Integration with prometheus-operator: Leverage [prometheus-operator](https://github.com/prometheus-operator/prometheus-operator) to scrape metrics from MariaDB and MaxScale instances.
          * Declarative User and Database Management: Manage users, grants, and logical databases in a declarative manner using Kubernetes resources.
          * Secure, immutable and lightweight images based on Red Hat UBI, available for multiple architectires (amd64, arm64 and ppc64le).
          * [Operator certified ](https://catalog.redhat.com/en/software/container-stacks/detail/65789bcbe17f1b31944acb1d#overview) by Red Hat.

          ## Installation

          In order to use this product, you will need a [MariaDB Enterprise subscription](https://mariadb.com/products/enterprise/).

          To be able to pull MariaDB Enterprise images, you will need to configure the MariaDB registry credentials in Openshift using the [MariaDB customer download token](https://customers.mariadb.com/downloads/token/) as described below:

          - Extract your [Openshift global pull secret](https://docs.redhat.com/en/documentation/openshift_container_platform/4.18/html/images/managing-images#images-update-global-pull-secret_using-image-pull-secrets):
            ```bash
            oc extract secret/pull-secret -n openshift-config --confirm
            ```

          - Login in the MariaDB registry providing the customer download token as password:
            ```bash
            oc registry login \
              --registry="docker.mariadb.com" \
              --auth-basic="<email>:<customer-download-token>" \
              --to=.dockerconfigjson
            ```

          - Update the global pull secret:
            ```bash
            oc set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson
            ```

          Alternatively, you can also create a `Secret` named `mariadb-enterprise` in the namespace where are you installing the operator by using the following command:
            ```bash
            oc create secret docker-registry mariadb-enterprise \
              --docker-server=docker.mariadb.com \
              --docker-username=<email> \
              --docker-password=<customer-download-token> \
              -n <operator-namespace>
            ```

          At this point, you can proceed to install the MariaDB Enterprise Operator, either via the Openshift console or by creating a `Subscription` object as described in the [Openshift installation docs](https://mariadb.com/kb/en/openshift/).

          Refer to the [quickstart guide](https://mariadb.com/kb/en/quickstart/), the [examples catalog](https://mariadb.com/kb/en/examples-catalog/) and the [API reference](https://mariadb.com/kb/en/api-reference/) for getting started with the Custom Resources offered by this operator.
        displayName: MariaDB Enterprise Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - mariadb
        - mysql
        - database
        - operator
        - mariadb-enterprise-operator
        - database
        links:
        - name: MariaDB Enterprise
          url: https://mariadb.com/products/enterprise/
        - name: Documentation
          url: https://mariadb.com/kb/en/mariadb-enterprise-operator/
        maintainers:
        - email: operator@mariadb.com
          name: MariaDB Corporation
        - email: support@mariadb.com
          name: Support
        - email: sales-EMEA@mariadb.com
          name: Sales EMEA
        - email: sales-APAC@mariadb.com
          name: Sales APAC
        - email: sales-nam@mariadb.com
          name: Sales Americas
        maturity: beta
        minKubeVersion: 1.29.0
        provider:
          name: MariaDB Corporation
        relatedImages:
        - docker.mariadb.com/mariadb-enterprise-operator@sha256:1effbbfa7632be92c17ef61c18a25f010b187840beec42c31d2410d0209e6985
        - docker.mariadb.com/maxscale@sha256:d9e04a7a406353dab2051e190be0c32ed20b780ed71e56e55cedd4ccb61af416
        - mariadb/mariadb-prometheus-exporter-ubi@sha256:f072175198cad050e80617d13e63f415bacdfe47e2dd177fde7283a96ee56c07
        - mariadb/maxscale-prometheus-exporter-ubi@sha256:cc17c1554795ad01b4d8db799f6aa90e00e41ede431f09d30eec64d9dd4479d9
        - registry.connect.redhat.com/mariadb/mariadb-enterprise-operator-bundle@sha256:73e7f243a6676d559068bf8ab80cc0ffe0db58152675603ca8bd360334439f26
        - docker.mariadb.com/enterprise-server@sha256:9872721d35ebe8d820b1aa9c6dd83b363a7b2df9af11a65bff6b80ff4144460a
        version: 25.8.1-1
      entries:
      - name: mariadb-enterprise-operator.v25.8.1-1
        version: 25.8.1-1
      - name: mariadb-enterprise-operator.v25.8.0
        version: 25.8.0
      - name: mariadb-enterprise-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: mariadb-enterprise-operator
    provider:
      name: MariaDB Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Helm Community
      provider-url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
    name: cockroachdb
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cockroachdb.v5.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.operatorhub.io/v1alpha1",
                "kind": "Cockroachdb",
                "metadata": {
                  "name": "cockroachdb-sample"
                },
                "spec": {
                  "clusterDomain": "cluster.local",
                  "conf": {
                    "attrs": [],
                    "cache": "25%",
                    "cluster-name": "",
                    "disable-cluster-name-verification": false,
                    "http-port": 8080,
                    "join": [],
                    "locality": "",
                    "logtostderr": "INFO",
                    "max-sql-memory": "25%",
                    "port": 26257,
                    "single-node": false,
                    "sql-audit-dir": ""
                  },
                  "image": {
                    "credentials": {},
                    "pullPolicy": "IfNotPresent",
                    "repository": "cockroachdb/cockroach",
                    "tag": "v20.2.4"
                  },
                  "ingress": {
                    "annotations": {},
                    "enabled": false,
                    "hosts": [],
                    "labels": {},
                    "paths": [
                      "/"
                    ],
                    "tls": []
                  },
                  "init": {
                    "affinity": {},
                    "annotations": {},
                    "labels": {
                      "app.kubernetes.io/component": "init"
                    },
                    "nodeSelector": {},
                    "resources": {},
                    "tolerations": []
                  },
                  "labels": {},
                  "networkPolicy": {
                    "enabled": false,
                    "ingress": {
                      "grpc": [],
                      "http": []
                    }
                  },
                  "service": {
                    "discovery": {
                      "annotations": {},
                      "labels": {
                        "app.kubernetes.io/component": "cockroachdb"
                      }
                    },
                    "ports": {
                      "grpc": {
                        "external": {
                          "name": "grpc",
                          "port": 26257
                        },
                        "internal": {
                          "name": "grpc-internal",
                          "port": 26257
                        }
                      },
                      "http": {
                        "name": "http",
                        "port": 8080
                      }
                    },
                    "public": {
                      "annotations": {},
                      "labels": {
                        "app.kubernetes.io/component": "cockroachdb"
                      },
                      "type": "ClusterIP"
                    }
                  },
                  "serviceMonitor": {
                    "annotations": {},
                    "enabled": false,
                    "interval": "10s",
                    "labels": {}
                  },
                  "statefulset": {
                    "annotations": {},
                    "args": [],
                    "budget": {
                      "maxUnavailable": 1
                    },
                    "env": [],
                    "labels": {
                      "app.kubernetes.io/component": "cockroachdb"
                    },
                    "nodeAffinity": {},
                    "nodeSelector": {},
                    "podAffinity": {},
                    "podAntiAffinity": {
                      "topologyKey": "kubernetes.io/hostname",
                      "type": "soft",
                      "weight": 100
                    },
                    "podManagementPolicy": "Parallel",
                    "priorityClassName": "",
                    "replicas": 3,
                    "resources": {},
                    "secretMounts": [],
                    "tolerations": [],
                    "topologySpreadConstraints": {
                      "maxSkew": 1,
                      "topologyKey": "topology.kubernetes.io/zone",
                      "whenUnsatisfiable": "ScheduleAnyway"
                    },
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    }
                  },
                  "storage": {
                    "hostPath": "",
                    "persistentVolume": {
                      "annotations": {},
                      "enabled": true,
                      "labels": {},
                      "size": "100Gi",
                      "storageClass": ""
                    }
                  },
                  "tls": {
                    "certs": {
                      "clientRootSecret": "cockroachdb-root",
                      "nodeSecret": "cockroachdb-node",
                      "provided": false,
                      "tlsSecret": false
                    },
                    "enabled": false,
                    "init": {
                      "image": {
                        "credentials": {},
                        "pullPolicy": "IfNotPresent",
                        "repository": "cockroachdb/cockroach-k8s-request-cert",
                        "tag": "0.4"
                      }
                    },
                    "serviceAccount": {
                      "create": true,
                      "name": ""
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Database
          certified: "false"
          containerImage: quay.io/helmoperators/cockroachdb:v5.0.4
          createdAt: 2021-01-23T10-00-00Z
          description: CockroachDB Operator based on the CockroachDB helm chart
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/dmesser/cockroachdb-operator
          support: dmesser
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a CockroachDB cluster
            displayName: CockroachDB
            kind: Cockroachdb
            name: cockroachdbs.charts.operatorhub.io
            version: v1alpha1
        description: |
          CockroachDB is a scalable, survivable, strongly-consistent SQL database.
          ## About this Operator
          This Operator is based on a Helm chart for CockroachDB. It supports the same parameters like the official [CockroachDB Helm Chart](https://github.com/cockroachdb/helm-charts/tree/master/cockroachdb).

          ## Core capabilities
          * **StatefulSet** - Sets up a dynamically scalable CockroachDB cluster using a Kubernetes StatefulSet
          * **Expand Replicas** - Supports expanding the set of replicas by simply editing your object
          * **Dashboard** - Installs the CockroachDB user interface to administer your cluster. Easily expose it via an Ingress rule.
          Review all of the [confiuguration options](https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration) to best run your database instance. The example configuration is derived from the chart's [`values.yaml`](https://github.com/helm/charts/blob/master/stable/cockroachdb/values.yaml).
          ## Using the cluster
          The resulting cluster endpoint can be consumed from a `Service` that follows the pattern: `<StatefulSet-name>-public`. For example to connect using the command line client, use something like the following to obtain the name of the service:
          ```
          kubectl get service -l chart=cockroachdb-5.0.4
          NAME                                           TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)              AGE
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb          ClusterIP   None             <none>        26257/TCP,8080/TCP   24m
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public   ClusterIP   10.106.249.134   <none>        26257/TCP,8080/TCP   24m
          ```
          Then you can use the CockroachDB command line client to connect to the database cluster:
          ```
          kubectl run -it --rm cockroach-client --image=cockroachdb/cockroach --restart=Never --command -- ./cockroach sql --insecure --host example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public
          ```
          ## Before you start
          This Operator requires a cluster with PV support in order to run correctly.

          Note that for a production cluster, you will likely want to override the following parameters in [`values.yaml`](values.yaml) with your own values.

          - `statefulset.resources.requests.memory` and `statefulset.resources.limits.memory` allocate memory resources to CockroachDB pods in your cluster.
          - `conf.cache` and `conf.max-sql-memory` are memory limits that we recommend setting to 1/4 of the above resource allocation. When running CockroachDB, you must set these limits explicitly to avoid running out of memory.
          - `storage.persistentVolume.size` defaults to `100Gi` of disk space per pod, which you may increase or decrease for your use case.
          - `storage.persistentVolume.storageClass` uses the default storage class for your environment. We strongly recommend that you specify a storage class which uses an SSD.
          - `tls.enabled` must be set to `yes`/`true` to deploy in secure mode.

          For more information on overriding the `values.yaml` parameters, please see:
          > <https://www.cockroachlabs.com/docs/stable/orchestrate-cockroachdb-with-kubernetes.html#step-2-start-cockroachdb>

          If you are running in secure mode (with configuration parameter `tls.enabled` set to `yes`/`true`) and `tls.certs.provided` set to `no`/`false`), then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          When `tls.certs.provided` is set to `yes`/`true`, this chart will use certificates created outside of Kubernetes. You may want to use this if you want to use a different certificate authority from the one being used by Kubernetes or if your Kubernetes cluster doesn't fully support certificate-signing requests. To use this, first set up your certificates and load them into your Kubernetes cluster as Secrets using the commands below:

          ```
          mkdir certs
          mkdir my-safe-directory
          cockroach cert create-ca --certs-dir=certs --ca-key=my-safe-directory/ca.key
          cockroach cert create-client root --certs-dir=certs --ca-key=my-safe-directory/ca.key
          kubectl create secret generic cockroachdb-root --from-file=certs
          cockroach cert create-node --certs-dir=certs --ca-key=my-safe-directory/ca.key localhost 127.0.0.1 eerie-horse-cockroachdb-public eerie-horse-cockroachdb-public.default eerie-horse-cockroachdb-public.default.svc.cluster.local *.eerie-horse-cockroachdb *.eerie-horse-cockroachdb.default *.eerie-horse-cockroachdb.default.svc.cluster.local
          kubectl create secret generic cockroachdb-node --from-file=certs
          ```

          Set `tls.certs.tlsSecret` to `yes/true` if you make use of [cert-manager][3] in your cluster.

          [cert-manager][3] stores generated certificates in dedicated TLS secrets. Thus, they are always named:

          * `ca.crt`
          * `tls.crt`
          * `tls.key`

          On the other hand, CockroachDB also demands dedicated certificate filenames:

          * `ca.crt`
          * `node.crt`
          * `node.key`
          * `client.root.crt`
          * `client.root.key`

          By activating `tls.certs.tlsSecret` we benefit from projected secrets and convert the TLS secret filenames to their according CockroachDB filenames.

          If you are running in secure mode, then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          Confirm that all pods are `Running` successfully and init has been completed:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS      RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running     0          1m
          my-release-cockroachdb-1            1/1       Running     0          1m
          my-release-cockroachdb-2            1/1       Running     0          1m
          my-release-cockroachdb-init-k6jcr   0/1       Completed   0          1m
          ```

          Confirm that persistent volumes are created and claimed for each pod:

          ```shell
          kubectl get pv
          ```

          ```
          NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS    CLAIM                                      STORAGECLASS   REASON    AGE
          pvc-64878ebf-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-0   standard                 51s
          pvc-64945b4f-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-1   standard                 51s
          pvc-649d920d-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-2   standard                 51s
          ```

          ## Upgrading the cluster

          ### Chart version 3.0.0 and after

          Launch a temporary interactive pod and start the built-in SQL client:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          Set `cluster.preserve_downgrade_option`, where `$current_version` is the CockroachDB version currently running (e.g., `19.2`):

          ```sql
          > SET CLUSTER SETTING cluster.preserve_downgrade_option = '$current_version';
          ```

          Exit the shell and delete the temporary pod:

          ```sql
          > \q
          ```

          Kick off the upgrade process by changing the new Docker image, where `$new_version` is the CockroachDB version to which you are upgrading:

          ```shell
          kubectl delete job my-release-cockroachdb-init
          ```

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"image":{"tag":"<new version tag here>"}}}' --type merge
          ```

          Kubernetes will carry out a safe [rolling upgrade](https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets) of your CockroachDB nodes one-by-one. Monitor the cluster's pods until all have been successfully restarted:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS              RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running             0          2m
          my-release-cockroachdb-1            1/1       Running             0          3m
          my-release-cockroachdb-2            1/1       Running             0          3m
          my-release-cockroachdb-3            0/1       ContainerCreating   0          25s
          my-release-cockroachdb-init-nwjkh   0/1       ContainerCreating   0          6s
          ```

          ```shell
          kubectl get pods \
          -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.spec.containers[0].image}{"\n"}'
          ```

          ```
          my-release-cockroachdb-0    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-1    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-2    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-3    cockroachdb/cockroach:v20.2.4
          ```

          Resume normal operations. Once you are comfortable that the stability and performance of the cluster is what you'd expect post-upgrade, finalize the upgrade:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          ```sql
          > RESET CLUSTER SETTING cluster.preserve_downgrade_option;
          > \q
          ```

          ## Configuration

          The following table lists the configurable parameters of the CockroachDB chart and their default values.
          For details see the [`values.yaml`](values.yaml) file.

          | Parameter                                                 | Description                                                     | Default                                          |
          | ---------                                                 | -----------                                                     | -------                                          |
          | `clusterDomain`                                           | Cluster's default DNS domain                                    | `cluster.local`                                  |
          | `conf.attrs`                                              | CockroachDB node attributes                                     | `[]`                                             |
          | `conf.cache`                                              | Size of CockroachDB's in-memory cache                           | `25%`                                            |
          | `conf.cluster-name`                                       | Name of CockroachDB cluster                                     | `""`                                             |
          | `conf.disable-cluster-name-verification`                  | Disable CockroachDB cluster name verification                   | `no`                                             |
          | `conf.join`                                               | List of already-existing CockroachDB instances                  | `[]`                                             |
          | `conf.max-disk-temp-storage`                              | Max storage capacity for temp data                              | `0`                                              |
          | `conf.max-offset`                                         | Max allowed clock offset for CockroachDB cluster                | `500ms`                                          |
          | `conf.max-sql-memory`                                     | Max memory to use processing SQL querie                         | `25%`                                            |
          | `conf.locality`                                           | Locality attribute for this deployment                          | `""`                                             |
          | `conf.single-node`                                        | Disable CockroachDB clustering (standalone mode)                | `no`                                             |
          | `conf.sql-audit-dir`                                      | Directory for SQL audit log                                     | `""`                                             |
          | `conf.port`                                               | CockroachDB primary serving port in Pods                        | `26257`                                          |
          | `conf.http-port`                                          | CockroachDB HTTP port in Pods                                   | `8080`                                           |
          | `image.repository`                                        | Container image name                                            | `cockroachdb/cockroach`                          |
          | `image.tag`                                               | Container image tag                                             | `v20.2.4`                                        |
          | `image.pullPolicy`                                        | Container pull policy                                           | `IfNotPresent`                                   |
          | `image.credentials`                                       | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `statefulset.replicas`                                    | StatefulSet replicas number                                     | `3`                                              |
          | `statefulset.updateStrategy`                              | Update strategy for StatefulSet Pods                            | `{"type": "RollingUpdate"}`                      |
          | `statefulset.podManagementPolicy`                         | `OrderedReady`/`Parallel` Pods creation/deletion order          | `Parallel`                                       |
          | `statefulset.budget.maxUnavailable`                       | k8s PodDisruptionBudget parameter                               | `1`                                              |
          | `statefulset.args`                                        | Extra command-line arguments                                    | `[]`                                             |
          | `statefulset.env`                                         | Extra env vars                                                  | `[]`                                             |
          | `statefulset.secretMounts`                                | Additional Secrets to mount at cluster members                  | `[]`                                             |
          | `statefulset.labels`                                      | Additional labels of StatefulSet and its Pods                   | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `statefulset.annotations`                                 | Additional annotations of StatefulSet Pods                      | `{}`                                             |
          | `statefulset.nodeAffinity`                                | [Node affinity rules][2] of StatefulSet Pods                    | `{}`                                             |
          | `statefulset.podAffinity`                                 | [Inter-Pod affinity rules][1] of StatefulSet Pods               | `{}`                                             |
          | `statefulset.podAntiAffinity`                             | [Anti-affinity rules][1] of StatefulSet Pods                    | auto                                             |
          | `statefulset.podAntiAffinity.topologyKey`                 | The topologyKey for auto [anti-affinity rules][1]               | `kubernetes.io/hostname`                         |
          | `statefulset.podAntiAffinity.type`                        | Type of auto [anti-affinity rules][1]                           | `soft`                                           |
          | `statefulset.podAntiAffinity.weight`                      | Weight for `soft` auto [anti-affinity rules][1]                 | `100`                                            |
          | `statefulset.nodeSelector`                                | Node labels for StatefulSet Pods assignment                     | `{}`                                             |
          | `statefulset.priorityClassName`                           | [PriorityClassName][4] for StatefulSet Pods                     | `""`                                             |
          | `statefulset.tolerations`                                 | Node taints to tolerate by StatefulSet Pods                     | `[]`                                             |
          | `statefulset.topologySpreadConstraints`                   | [Topology Spread Constraints rules][5] of StatefulSet Pods      | auto                                             |
          | `statefulset.topologySpreadConstraints.maxSkew`           | Degree to which Pods may be unevenly distributed                | `1`                                              |
          | `statefulset.topologySpreadConstraints.topologyKey`       | The key of node labels                                          | `topology.kubernetes.io/zone`                    |
          | `statefulset.topologySpreadConstraints.whenUnsatisfiable` | `ScheduleAnyway`/`DoNotSchedule` for unsatisfiable constraints  | `ScheduleAnyway`                                 |
          | `statefulset.resources`                                   | Resource requests and limits for StatefulSet Pods               | `{}`                                             |
          | `service.ports.grpc.external.port`                        | CockroachDB primary serving port in Services                    | `26257`                                          |
          | `service.ports.grpc.external.name`                        | CockroachDB primary serving port name in Services               | `grpc`                                           |
          | `service.ports.grpc.internal.port`                        | CockroachDB inter-communication port in Services                | `26257`                                          |
          | `service.ports.grpc.internal.name`                        | CockroachDB inter-communication port name in Services           | `grpc-internal`                                  |
          | `service.ports.http.port`                                 | CockroachDB HTTP port in Services                               | `8080`                                           |
          | `service.ports.http.name`                                 | CockroachDB HTTP port name in Services                          | `http`                                           |
          | `service.public.type`                                     | Public Service type                                             | `ClusterIP`                                      |
          | `service.public.labels`                                   | Additional labels of public Service                             | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.public.annotations`                              | Additional annotations of public Service                        | `{}`                                             |
          | `service.discovery.labels`                                | Additional labels of discovery Service                          | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.discovery.annotations`                           | Additional annotations of discovery Service                     | `{}`                                             |
          | `ingress.enabled`                                         | Enable ingress resource for CockroachDB                         | `false`                                          |
          | `ingress.labels`                                          | Additional labels of Ingress                                    | `{}`                                             |
          | `ingress.annotations`                                     | Additional annotations of Ingress                               | `{}`                                             |
          | `ingress.paths`                                           | Paths for the default host                                      | `[/]`                                            |
          | `ingress.hosts`                                           | CockroachDB Ingress hostnames                                   | `[]`                                             |
          | `ingress.tls[0].hosts`                                    | CockroachDB Ingress tls hostnames                               | `nil`                                            |
          | `ingress.tls[0].secretName`                               | CockroachDB Ingress tls secret name                             | `nil`                                            |
          | `serviceMonitor.enabled`                                  | Create [ServiceMonitor](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/design.md#servicemonitor) Resource for scraping metrics using [PrometheusOperator](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/user-guides/getting-started.md#prometheus-operator)                     | `false`                                             |
          | `serviceMonitor.labels`                                   | Additional labels of ServiceMonitor                             | `{}`                                             |
          | `serviceMonitor.annotations`                              | Additional annotations of ServiceMonitor                        | `{}`                                             |
          | `serviceMonitor.interval`                                 | ServiceMonitor scrape metrics interval                          | `10s`                                            |
          | `serviceMonitor.scrapeTimeout`                            | ServiceMonitor scrape timeout                                   | `nil`                                            |
          | `storage.hostPath`                                        | Absolute path on host to store data                             | `""`                                             |
          | `storage.persistentVolume.enabled`                        | Whether to use PersistentVolume to store data                   | `yes`                                            |
          | `storage.persistentVolume.size`                           | PersistentVolume size                                           | `100Gi`                                          |
          | `storage.persistentVolume.storageClass`                   | PersistentVolume class                                          | `""`                                             |
          | `storage.persistentVolume.labels`                         | Additional labels of PersistentVolumeClaim                      | `{}`                                             |
          | `storage.persistentVolume.annotations`                    | Additional annotations of PersistentVolumeClaim                 | `{}`                                             |
          | `init.labels`                                             | Additional labels of init Job and its Pod                       | `{"app.kubernetes.io/component": "init"}`        |
          | `init.annotations`                                        | Additional labels of the Pod of init Job                        | `{}`                                             |
          | `init.affinity`                                           | [Affinity rules][2] of init Job Pod                             | `{}`                                             |
          | `init.nodeSelector`                                       | Node labels for init Job Pod assignment                         | `{}`                                             |
          | `init.tolerations`                                        | Node taints to tolerate by init Job Pod                         | `[]`                                             |
          | `init.resources`                                          | Resource requests and limits for the Pod of init Job            | `{}`                                             |
          | `tls.enabled`                                             | Whether to run securely using TLS certificates                  | `no`                                             |
          | `tls.serviceAccount.create`                               | Whether to create a new RBAC service account                    | `yes`                                            |
          | `tls.serviceAccount.name`                                 | Name of RBAC service account to use                             | `""`                                             |
          | `tls.certs.provided`                                      | Bring your own certs scenario, i.e certificates are provided    | `no`                                             |
          | `tls.certs.clientRootSecret`                              | If certs are provided, secret name for client root cert         | `cockroachdb-root`                               |
          | `tls.certs.nodeSecret`                                    | If certs are provided, secret name for node cert                | `cockroachdb-node`                               |
          | `tls.certs.tlsSecret`                                     | Own certs are stored in TLS secret                              | `no`                                             |
          | `tls.init.image.repository`                               | Image to use for requesting TLS certificates                    | `cockroachdb/cockroach-k8s-request-cert`         |
          | `tls.init.image.tag`                                      | Image tag to use for requesting TLS certificates                | `0.4`                                            |
          | `tls.init.image.pullPolicy`                               | Requesting TLS certificates container pull policy               | `IfNotPresent`                                   |
          | `tls.init.image.credentials`                              | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `networkPolicy.enabled`                                   | Enable NetworkPolicy for CockroachDB's Pods                     | `no`                                             |
          | `networkPolicy.ingress.grpc`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |
          | `networkPolicy.ingress.http`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |


          Override the default parameters using the `CockroachDB` custom resource.

          ## Deep dive

          ### Connecting to the CockroachDB cluster

          Once you've created the cluster, you can start talking to it by connecting to its `-public` Service. CockroachDB is PostgreSQL wire protocol compatible, so there's a [wide variety of supported clients](https://www.cockroachlabs.com/docs/install-client-drivers.html). As an example, we'll open up a SQL shell using CockroachDB's built-in shell and play around with it a bit, like this (likely needing to replace `my-release-cockroachdb-public` with the name of the `-public` Service that was created with your installed chart):

          ```shell
          kubectl run cockroach-client --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host my-release-cockroachdb-public
          ```

          ```
          Waiting for pod default/cockroach-client to be running, status is Pending,
          pod ready: false
          If you don't see a command prompt, try pressing enter.
          root@my-release-cockroachdb-public:26257> SHOW DATABASES;
          +--------------------+
          |      Database      |
          +--------------------+
          | information_schema |
          | pg_catalog         |
          | system             |
          +--------------------+
          (3 rows)
          root@my-release-cockroachdb-public:26257> CREATE DATABASE bank;
          CREATE DATABASE
          root@my-release-cockroachdb-public:26257> CREATE TABLE bank.accounts (id INT
          PRIMARY KEY, balance DECIMAL);
          CREATE TABLE
          root@my-release-cockroachdb-public:26257> INSERT INTO bank.accounts VALUES
          (1234, 10000.50);
          INSERT 1
          root@my-release-cockroachdb-public:26257> SELECT * FROM bank.accounts;
          +------+---------+
          |  id  | balance |
          +------+---------+
          | 1234 | 10000.5 |
          +------+---------+
          (1 row)
          root@my-release-cockroachdb-public:26257> \q
          Waiting for pod default/cockroach-client to terminate, status is Running
          pod "cockroach-client" deleted
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          ### Cluster health

          Because our pod spec includes regular health checks of the CockroachDB processes, simply running `kubectl get pods` and looking at the `STATUS` column is sufficient to determine the health of each instance in the cluster.

          If you want more detailed information about the cluster, the best place to look is the Admin UI.

          ### Accessing the Admin UI

          If you want to see information about how the cluster is doing, you can try pulling up the CockroachDB Admin UI by port-forwarding from your local machine to one of the pods (replacing `my-release-cockroachdb-0` with the name of one of your pods:

          ```shell
          kubectl port-forward my-release-cockroachdb-0 8080
          ```

          You should then be able to access the Admin UI by visiting <http://localhost:8080/> in your web browser.

          ### Failover

          If any CockroachDB member fails, it is restarted or recreated automatically by the Kubernetes infrastructure, and will re-join the cluster automatically when it comes back up. You can test this scenario by killing any of the CockroachDB pods:

          ```shell
          kubectl delete pod my-release-cockroachdb-1
          ```

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          After a while:

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-1  1/1       Running       0          20s
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          You can check the state of re-joining from the new pod's logs:

          ```shell
          kubectl logs my-release-cockroachdb-1
          ```

          ```
          [...]
          I161028 19:32:09.754026 1 server/node.go:586  [n1] node connected via gossip and
          verified as part of cluster {"35ecbc27-3f67-4e7d-9b8f-27c31aae17d6"}
          [...]
          cockroachdb-0.my-release-cockroachdb.default.svc.cluster.local:26257
          build:      beta-20161027-55-gd2d3c7f @ 2016/10/28 19:27:25 (go1.7.3)
          admin:      http://0.0.0.0:8080
          sql:
          postgresql://root@my-release-cockroachdb-1.my-release-cockroachdb.default.svc.cluster.local:26257?sslmode=disable
          logs:       cockroach-data/logs
          store[0]:   path=cockroach-data
          status:     restarted pre-existing node
          clusterID:  {35ecbc27-3f67-4e7d-9b8f-27c31aae17d6}
          nodeID:     2
          [...]
          ```

          ### NetworkPolicy

          To enable NetworkPolicy for CockroachDB, install [a networking plugin that implements the Kubernetes NetworkPolicy spec](https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy#before-you-begin), and set `networkPolicy.enabled` to `yes`/`true`.

          For Kubernetes v1.5 & v1.6, you must also turn on NetworkPolicy by setting the `DefaultDeny` Namespace annotation. Note: this will enforce policy for _all_ pods in the Namespace:

          ```shell
          kubectl annotate namespace default "net.beta.kubernetes.io/network-policy={\"ingress\":{\"isolation\":\"DefaultDeny\"}}"
          ```

          For more precise policy, set `networkPolicy.ingress.grpc` and `networkPolicy.ingress.http` rules. This will only allow pods that match the provided rules to connect to CockroachDB.

          ### Scaling

          Scaling should be managed via the `helm upgrade` command. After resizing your cluster on your cloud environment (e.g., GKE or EKS), run the following command to add a pod. This assumes you scaled from 3 to 4 nodes:

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"statefulset":{"replicas":"4"}}}' --type merge
          ```

          Note, that if you are running in secure mode (`tls.enabled` is `yes`/`true`) and increase the size of your cluster, you will also have to approve the CSR (certificate-signing request) of each new node (using `kubectl get csr` and `kubectl certificate approve`).

          [1]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#inter-pod-affinity-and-anti-affinity
          [2]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#node-affinity
          [3]: https://cert-manager.io/
          [4]: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass
          [5]: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
        displayName: CockroachDB Helm Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cockroach
        - cockroachdb
        links:
        - name: Helm Chart Source
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb
        - name: Configuration Options
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration
        - name: CockroachDB Source
          url: https://github.com/cockroachdb/cockroach
        maintainers:
        - email: dmesser@redhat.com
          name: Daniel Messer
        maturity: stable
        minKubeVersion: 1.8.0
        provider:
          name: Helm Community
          url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
        relatedImages:
        - quay.io/openshift-community-operators/cockroachdb@sha256:f42337e7b85a46d83c94694638e2312e10ca16a03542399a65ba783c94a32b63
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/helmoperators/cockroachdb:v5.0.4
        version: 5.0.4
      entries:
      - name: cockroachdb.v5.0.4
        version: 5.0.4
      - name: cockroachdb.v5.0.3
        version: 5.0.3
      name: stable-5.x
    - currentCSV: cockroachdb.v6.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.operatorhub.io/v1alpha1",
                "kind": "Cockroachdb",
                "metadata": {
                  "name": "cockroachdb-sample"
                },
                "spec": {"image":{"repository":"cockroachdb/cockroach","tag":"v22.2.4","pullPolicy":"IfNotPresent","credentials":{}},"labels":{},"clusterDomain":"cluster.local","conf":{"attrs":[],"cache":"25%","cluster-name":"","disable-cluster-name-verification":false,"join":[],"log":{"enabled":false,"config":{}},"logtostderr":"INFO","max-sql-memory":"25%","locality":"","single-node":false,"sql-audit-dir":"","port":26257,"http-port":8080,"path":"cockroach-data","store":{"enabled":false,"type":null,"size":null,"attrs":null}},"statefulset":{"replicas":3,"updateStrategy":{"type":"RollingUpdate"},"podManagementPolicy":"Parallel","budget":{"maxUnavailable":1},"args":[],"env":[],"secretMounts":[],"labels":{"app.kubernetes.io/component":"cockroachdb"},"annotations":{},"nodeAffinity":{},"podAffinity":{},"podAntiAffinity":{"topologyKey":"kubernetes.io/hostname","type":"soft","weight":100},"nodeSelector":{},"priorityClassName":"","tolerations":[],"topologySpreadConstraints":{"maxSkew":1,"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"},"resources":{},"customLivenessProbe":{},"customReadinessProbe":{}},"service":{"ports":{"grpc":{"external":{"port":26257,"name":"grpc"},"internal":{"port":26257,"name":"grpc-internal"}},"http":{"port":8080,"name":"http"}},"public":{"type":"ClusterIP","labels":{"app.kubernetes.io/component":"cockroachdb"},"annotations":{}},"discovery":{"labels":{"app.kubernetes.io/component":"cockroachdb"},"annotations":{}}},"ingress":{"enabled":false,"labels":{},"annotations":{},"paths":["/"],"hosts":[],"tls":[]},"prometheus":{"enabled":true},"serviceMonitor":{"enabled":false,"labels":{},"annotations":{},"interval":"10s","namespaced":false},"storage":{"hostPath":"","persistentVolume":{"enabled":true,"size":"100Gi","storageClass":"","labels":{},"annotations":{}}},"init":{"labels":{"app.kubernetes.io/component":"init"},"jobAnnotations":{},"annotations":{},"affinity":{},"nodeSelector":{},"tolerations":[],"resources":{},"provisioning":{"enabled":false,"clusterSettings":null,"users":[],"databases":[]}},"tls":{"enabled":true,"serviceAccount":{"create":true,"name":""},"copyCerts":{"image":"busybox"},"certs":{"provided":false,"clientRootSecret":"cockroachdb-root","nodeSecret":"cockroachdb-node","tlsSecret":false,"selfSigner":{"enabled":true,"caProvided":false,"caSecret":"","minimumCertDuration":"624h","caCertDuration":"43800h","caCertExpiryWindow":"648h","clientCertDuration":"672h","clientCertExpiryWindow":"48h","nodeCertDuration":"8760h","nodeCertExpiryWindow":"168h","rotateCerts":true,"readinessWait":"30s","podUpdateTimeout":"2m"},"certManager":false,"certManagerIssuer":{"group":"cert-manager.io","kind":"Issuer","name":"cockroachdb","clientCertDuration":"672h","clientCertExpiryWindow":"48h","nodeCertDuration":"8760h","nodeCertExpiryWindow":"168h"},"useCertManagerV1CRDs":false},"selfSigner":{"image":{"repository":"cockroachlabs-helm-charts/cockroach-self-signer-cert","tag":"1.3","pullPolicy":"IfNotPresent","credentials":{},"registry":"gcr.io"}}},"networkPolicy":{"enabled":false,"ingress":{"grpc":[],"http":[]}},"iap":{"enabled":false}}
              }
            ]
          capabilities: Basic Install
          categories: Database
          certified: "false"
          containerImage: quay.io/cockroachdb/cockroach-helm-operator:6.0.0
          createdAt: 2021-01-23T10-00-00Z
          description: CockroachDB Operator based on the CockroachDB helm chart
          olm.skipRange: <6.0.0
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/cockroachdb/helm-charts
          support: CockroachDB
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a CockroachDB cluster
            displayName: CockroachDB
            kind: Cockroachdb
            name: cockroachdbs.charts.operatorhub.io
            version: v1alpha1
        description: |
          CockroachDB is a scalable, survivable, strongly-consistent SQL database.
          ## About this Operator
          This Operator is based on a Helm chart for CockroachDB. It supports reconfiguration for some parameters, but notably does not handle scale down of the replica count in a seamless manner. Scale up works great.

          ## Core capabilities
          * **StatefulSet** - Sets up a dynamically scalable CockroachDB cluster using a Kubernetes StatefulSet
          * **Expand Replicas** - Supports expanding the set of replicas by simply editing your object
          * **Dashboard** - Installs the CockroachDB user interface to administer your cluster. Easily expose it via an Ingress rule.
          Review all of the [confiuguration options](https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration) to best run your database instance. The example configuration is derived from the chart's [`values.yaml`](https://github.com/helm/charts/blob/master/stable/cockroachdb/values.yaml).
          ## Using the cluster
          The resulting cluster endpoint can be consumed from a `Service` that follows the pattern: `<StatefulSet-name>-public`. For example to connect using the command line client, use something like the following to obtain the name of the service:
          ```
          kubectl get service -l chart=cockroachdb-6.0.0
          NAME                                           TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)              AGE
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb          ClusterIP   None             <none>        26257/TCP,8080/TCP   24m
          example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public   ClusterIP   10.106.249.134   <none>        26257/TCP,8080/TCP   24m
          ```
          Then you can use the CockroachDB command line client to connect to the database cluster:
          ```
          kubectl run -it --rm cockroach-client --image=cockroachdb/cockroach --restart=Never --command -- ./cockroach sql --insecure --host example-9f8ngwzrxbxrulxqmdqfhn51h-cdb-public
          ```
          ## Before you start
          This Operator requires a cluster with PV support in order to run correctly.

          Note that for a production cluster, you will likely want to override the following parameters in [`values.yaml`](values.yaml) with your own values.

          - `statefulset.resources.requests.memory` and `statefulset.resources.limits.memory` allocate memory resources to CockroachDB pods in your cluster.
          - `conf.cache` and `conf.max-sql-memory` are memory limits that we recommend setting to 1/4 of the above resource allocation. When running CockroachDB, you must set these limits explicitly to avoid running out of memory.
          - `storage.persistentVolume.size` defaults to `100Gi` of disk space per pod, which you may increase or decrease for your use case.
          - `storage.persistentVolume.storageClass` uses the default storage class for your environment. We strongly recommend that you specify a storage class which uses an SSD.
          - `tls.enabled` must be set to `yes`/`true` to deploy in secure mode.

          For more information on overriding the `values.yaml` parameters, please see:
          > <https://www.cockroachlabs.com/docs/stable/orchestrate-cockroachdb-with-kubernetes.html#step-2-start-cockroachdb>

          If you are running in secure mode (with configuration parameter `tls.enabled` set to `yes`/`true`) and `tls.certs.provided` set to `no`/`false`), then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          When `tls.certs.provided` is set to `yes`/`true`, this chart will use certificates created outside of Kubernetes. You may want to use this if you want to use a different certificate authority from the one being used by Kubernetes or if your Kubernetes cluster doesn't fully support certificate-signing requests. To use this, first set up your certificates and load them into your Kubernetes cluster as Secrets using the commands below:

          ```
          mkdir certs
          mkdir my-safe-directory
          cockroach cert create-ca --certs-dir=certs --ca-key=my-safe-directory/ca.key
          cockroach cert create-client root --certs-dir=certs --ca-key=my-safe-directory/ca.key
          kubectl create secret generic cockroachdb-root --from-file=certs
          cockroach cert create-node --certs-dir=certs --ca-key=my-safe-directory/ca.key localhost 127.0.0.1 eerie-horse-cockroachdb-public eerie-horse-cockroachdb-public.default eerie-horse-cockroachdb-public.default.svc.cluster.local *.eerie-horse-cockroachdb *.eerie-horse-cockroachdb.default *.eerie-horse-cockroachdb.default.svc.cluster.local
          kubectl create secret generic cockroachdb-node --from-file=certs
          ```

          Set `tls.certs.tlsSecret` to `yes/true` if you make use of [cert-manager][3] in your cluster.

          [cert-manager][3] stores generated certificates in dedicated TLS secrets. Thus, they are always named:

          * `ca.crt`
          * `tls.crt`
          * `tls.key`

          On the other hand, CockroachDB also demands dedicated certificate filenames:

          * `ca.crt`
          * `node.crt`
          * `node.key`
          * `client.root.crt`
          * `client.root.key`

          By activating `tls.certs.tlsSecret` we benefit from projected secrets and convert the TLS secret filenames to their according CockroachDB filenames.

          If you are running in secure mode, then you will have to manually approve the cluster's security certificates as the pods are created. You can see the pending CSRs (certificate signing requests) by running `kubectl get csr`, and approve them by running `kubectl certificate approve <csr-name>`. You'll have to approve one certificate for each CockroachDB node (e.g., `default.node.my-release-cockroachdb-0` and one client certificate for the job that initializes the cluster (e.g., `default.node.root`).

          Confirm that all pods are `Running` successfully and init has been completed:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS      RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running     0          1m
          my-release-cockroachdb-1            1/1       Running     0          1m
          my-release-cockroachdb-2            1/1       Running     0          1m
          my-release-cockroachdb-init-k6jcr   0/1       Completed   0          1m
          ```

          Confirm that persistent volumes are created and claimed for each pod:

          ```shell
          kubectl get pv
          ```

          ```
          NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS    CLAIM                                      STORAGECLASS   REASON    AGE
          pvc-64878ebf-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-0   standard                 51s
          pvc-64945b4f-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-1   standard                 51s
          pvc-649d920d-f3f0-11e8-ab5b-42010a8e0035   100Gi      RWO            Delete           Bound     default/datadir-my-release-cockroachdb-2   standard                 51s
          ```

          ## Upgrading the cluster

          ### Chart version 3.0.0 and after

          Launch a temporary interactive pod and start the built-in SQL client:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          Set `cluster.preserve_downgrade_option`, where `$current_version` is the CockroachDB version currently running (e.g., `19.2`):

          ```sql
          > SET CLUSTER SETTING cluster.preserve_downgrade_option = '$current_version';
          ```

          Exit the shell and delete the temporary pod:

          ```sql
          > \q
          ```

          Kick off the upgrade process by changing the new Docker image, where `$new_version` is the CockroachDB version to which you are upgrading:

          ```shell
          kubectl delete job my-release-cockroachdb-init
          ```

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"image":{"tag":"<new version tag here>"}}}' --type merge
          ```

          Kubernetes will carry out a safe [rolling upgrade](https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets) of your CockroachDB nodes one-by-one. Monitor the cluster's pods until all have been successfully restarted:

          ```shell
          kubectl get pods
          ```

          ```
          NAME                                READY     STATUS              RESTARTS   AGE
          my-release-cockroachdb-0            1/1       Running             0          2m
          my-release-cockroachdb-1            1/1       Running             0          3m
          my-release-cockroachdb-2            1/1       Running             0          3m
          my-release-cockroachdb-3            0/1       ContainerCreating   0          25s
          my-release-cockroachdb-init-nwjkh   0/1       ContainerCreating   0          6s
          ```

          ```shell
          kubectl get pods \
          -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.spec.containers[0].image}{"\n"}'
          ```

          ```
          my-release-cockroachdb-0    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-1    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-2    cockroachdb/cockroach:v20.2.4
          my-release-cockroachdb-3    cockroachdb/cockroach:v20.2.4
          ```

          Resume normal operations. Once you are comfortable that the stability and performance of the cluster is what you'd expect post-upgrade, finalize the upgrade:

          ```shell
          kubectl run cockroachdb --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host=my-release-cockroachdb-public
          ```

          ```sql
          > RESET CLUSTER SETTING cluster.preserve_downgrade_option;
          > \q
          ```

          ## Configuration

          The following table lists the configurable parameters of the CockroachDB chart and their default values.
          For details see the [`values.yaml`](values.yaml) file.

          | Parameter                                                 | Description                                                     | Default                                          |
          | ---------                                                 | -----------                                                     | -------                                          |
          | `clusterDomain`                                           | Cluster's default DNS domain                                    | `cluster.local`                                  |
          | `conf.attrs`                                              | CockroachDB node attributes                                     | `[]`                                             |
          | `conf.cache`                                              | Size of CockroachDB's in-memory cache                           | `25%`                                            |
          | `conf.cluster-name`                                       | Name of CockroachDB cluster                                     | `""`                                             |
          | `conf.disable-cluster-name-verification`                  | Disable CockroachDB cluster name verification                   | `no`                                             |
          | `conf.join`                                               | List of already-existing CockroachDB instances                  | `[]`                                             |
          | `conf.max-disk-temp-storage`                              | Max storage capacity for temp data                              | `0`                                              |
          | `conf.max-offset`                                         | Max allowed clock offset for CockroachDB cluster                | `500ms`                                          |
          | `conf.max-sql-memory`                                     | Max memory to use processing SQL querie                         | `25%`                                            |
          | `conf.locality`                                           | Locality attribute for this deployment                          | `""`                                             |
          | `conf.single-node`                                        | Disable CockroachDB clustering (standalone mode)                | `no`                                             |
          | `conf.sql-audit-dir`                                      | Directory for SQL audit log                                     | `""`                                             |
          | `conf.port`                                               | CockroachDB primary serving port in Pods                        | `26257`                                          |
          | `conf.http-port`                                          | CockroachDB HTTP port in Pods                                   | `8080`                                           |
          | `image.repository`                                        | Container image name                                            | `cockroachdb/cockroach`                          |
          | `image.tag`                                               | Container image tag                                             | `v20.2.4`                                        |
          | `image.pullPolicy`                                        | Container pull policy                                           | `IfNotPresent`                                   |
          | `image.credentials`                                       | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `statefulset.replicas`                                    | StatefulSet replicas number                                     | `3`                                              |
          | `statefulset.updateStrategy`                              | Update strategy for StatefulSet Pods                            | `{"type": "RollingUpdate"}`                      |
          | `statefulset.podManagementPolicy`                         | `OrderedReady`/`Parallel` Pods creation/deletion order          | `Parallel`                                       |
          | `statefulset.budget.maxUnavailable`                       | k8s PodDisruptionBudget parameter                               | `1`                                              |
          | `statefulset.args`                                        | Extra command-line arguments                                    | `[]`                                             |
          | `statefulset.env`                                         | Extra env vars                                                  | `[]`                                             |
          | `statefulset.secretMounts`                                | Additional Secrets to mount at cluster members                  | `[]`                                             |
          | `statefulset.labels`                                      | Additional labels of StatefulSet and its Pods                   | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `statefulset.annotations`                                 | Additional annotations of StatefulSet Pods                      | `{}`                                             |
          | `statefulset.nodeAffinity`                                | [Node affinity rules][2] of StatefulSet Pods                    | `{}`                                             |
          | `statefulset.podAffinity`                                 | [Inter-Pod affinity rules][1] of StatefulSet Pods               | `{}`                                             |
          | `statefulset.podAntiAffinity`                             | [Anti-affinity rules][1] of StatefulSet Pods                    | auto                                             |
          | `statefulset.podAntiAffinity.topologyKey`                 | The topologyKey for auto [anti-affinity rules][1]               | `kubernetes.io/hostname`                         |
          | `statefulset.podAntiAffinity.type`                        | Type of auto [anti-affinity rules][1]                           | `soft`                                           |
          | `statefulset.podAntiAffinity.weight`                      | Weight for `soft` auto [anti-affinity rules][1]                 | `100`                                            |
          | `statefulset.nodeSelector`                                | Node labels for StatefulSet Pods assignment                     | `{}`                                             |
          | `statefulset.priorityClassName`                           | [PriorityClassName][4] for StatefulSet Pods                     | `""`                                             |
          | `statefulset.tolerations`                                 | Node taints to tolerate by StatefulSet Pods                     | `[]`                                             |
          | `statefulset.topologySpreadConstraints`                   | [Topology Spread Constraints rules][5] of StatefulSet Pods      | auto                                             |
          | `statefulset.topologySpreadConstraints.maxSkew`           | Degree to which Pods may be unevenly distributed                | `1`                                              |
          | `statefulset.topologySpreadConstraints.topologyKey`       | The key of node labels                                          | `topology.kubernetes.io/zone`                    |
          | `statefulset.topologySpreadConstraints.whenUnsatisfiable` | `ScheduleAnyway`/`DoNotSchedule` for unsatisfiable constraints  | `ScheduleAnyway`                                 |
          | `statefulset.resources`                                   | Resource requests and limits for StatefulSet Pods               | `{}`                                             |
          | `service.ports.grpc.external.port`                        | CockroachDB primary serving port in Services                    | `26257`                                          |
          | `service.ports.grpc.external.name`                        | CockroachDB primary serving port name in Services               | `grpc`                                           |
          | `service.ports.grpc.internal.port`                        | CockroachDB inter-communication port in Services                | `26257`                                          |
          | `service.ports.grpc.internal.name`                        | CockroachDB inter-communication port name in Services           | `grpc-internal`                                  |
          | `service.ports.http.port`                                 | CockroachDB HTTP port in Services                               | `8080`                                           |
          | `service.ports.http.name`                                 | CockroachDB HTTP port name in Services                          | `http`                                           |
          | `service.public.type`                                     | Public Service type                                             | `ClusterIP`                                      |
          | `service.public.labels`                                   | Additional labels of public Service                             | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.public.annotations`                              | Additional annotations of public Service                        | `{}`                                             |
          | `service.discovery.labels`                                | Additional labels of discovery Service                          | `{"app.kubernetes.io/component": "cockroachdb"}` |
          | `service.discovery.annotations`                           | Additional annotations of discovery Service                     | `{}`                                             |
          | `ingress.enabled`                                         | Enable ingress resource for CockroachDB                         | `false`                                          |
          | `ingress.labels`                                          | Additional labels of Ingress                                    | `{}`                                             |
          | `ingress.annotations`                                     | Additional annotations of Ingress                               | `{}`                                             |
          | `ingress.paths`                                           | Paths for the default host                                      | `[/]`                                            |
          | `ingress.hosts`                                           | CockroachDB Ingress hostnames                                   | `[]`                                             |
          | `ingress.tls[0].hosts`                                    | CockroachDB Ingress tls hostnames                               | `nil`                                            |
          | `ingress.tls[0].secretName`                               | CockroachDB Ingress tls secret name                             | `nil`                                            |
          | `serviceMonitor.enabled`                                  | Create [ServiceMonitor](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/design.md#servicemonitor) Resource for scraping metrics using [PrometheusOperator](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/user-guides/getting-started.md#prometheus-operator)                     | `false`                                             |
          | `serviceMonitor.labels`                                   | Additional labels of ServiceMonitor                             | `{}`                                             |
          | `serviceMonitor.annotations`                              | Additional annotations of ServiceMonitor                        | `{}`                                             |
          | `serviceMonitor.interval`                                 | ServiceMonitor scrape metrics interval                          | `10s`                                            |
          | `serviceMonitor.scrapeTimeout`                            | ServiceMonitor scrape timeout                                   | `nil`                                            |
          | `storage.hostPath`                                        | Absolute path on host to store data                             | `""`                                             |
          | `storage.persistentVolume.enabled`                        | Whether to use PersistentVolume to store data                   | `yes`                                            |
          | `storage.persistentVolume.size`                           | PersistentVolume size                                           | `100Gi`                                          |
          | `storage.persistentVolume.storageClass`                   | PersistentVolume class                                          | `""`                                             |
          | `storage.persistentVolume.labels`                         | Additional labels of PersistentVolumeClaim                      | `{}`                                             |
          | `storage.persistentVolume.annotations`                    | Additional annotations of PersistentVolumeClaim                 | `{}`                                             |
          | `init.labels`                                             | Additional labels of init Job and its Pod                       | `{"app.kubernetes.io/component": "init"}`        |
          | `init.annotations`                                        | Additional labels of the Pod of init Job                        | `{}`                                             |
          | `init.affinity`                                           | [Affinity rules][2] of init Job Pod                             | `{}`                                             |
          | `init.nodeSelector`                                       | Node labels for init Job Pod assignment                         | `{}`                                             |
          | `init.tolerations`                                        | Node taints to tolerate by init Job Pod                         | `[]`                                             |
          | `init.resources`                                          | Resource requests and limits for the Pod of init Job            | `{}`                                             |
          | `tls.enabled`                                             | Whether to run securely using TLS certificates                  | `no`                                             |
          | `tls.serviceAccount.create`                               | Whether to create a new RBAC service account                    | `yes`                                            |
          | `tls.serviceAccount.name`                                 | Name of RBAC service account to use                             | `""`                                             |
          | `tls.certs.provided`                                      | Bring your own certs scenario, i.e certificates are provided    | `no`                                             |
          | `tls.certs.clientRootSecret`                              | If certs are provided, secret name for client root cert         | `cockroachdb-root`                               |
          | `tls.certs.nodeSecret`                                    | If certs are provided, secret name for node cert                | `cockroachdb-node`                               |
          | `tls.certs.tlsSecret`                                     | Own certs are stored in TLS secret                              | `no`                                             |
          | `tls.init.image.repository`                               | Image to use for requesting TLS certificates                    | `cockroachdb/cockroach-k8s-request-cert`         |
          | `tls.init.image.tag`                                      | Image tag to use for requesting TLS certificates                | `0.4`                                            |
          | `tls.init.image.pullPolicy`                               | Requesting TLS certificates container pull policy               | `IfNotPresent`                                   |
          | `tls.init.image.credentials`                              | `registry`, `user` and `pass` credentials to pull private image | `{}`                                             |
          | `networkPolicy.enabled`                                   | Enable NetworkPolicy for CockroachDB's Pods                     | `no`                                             |
          | `networkPolicy.ingress.grpc`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |
          | `networkPolicy.ingress.http`                              | Whitelist resources to access gRPC port of CockroachDB's Pods   | `[]`                                             |


          Override the default parameters using the `CockroachDB` custom resource.

          ## Deep dive

          ### Connecting to the CockroachDB cluster

          Once you've created the cluster, you can start talking to it by connecting to its `-public` Service. CockroachDB is PostgreSQL wire protocol compatible, so there's a [wide variety of supported clients](https://www.cockroachlabs.com/docs/install-client-drivers.html). As an example, we'll open up a SQL shell using CockroachDB's built-in shell and play around with it a bit, like this (likely needing to replace `my-release-cockroachdb-public` with the name of the `-public` Service that was created with your installed chart):

          ```shell
          kubectl run cockroach-client --rm -it \
          --image=cockroachdb/cockroach \
          --restart=Never \
          -- sql --insecure --host my-release-cockroachdb-public
          ```

          ```
          Waiting for pod default/cockroach-client to be running, status is Pending,
          pod ready: false
          If you don't see a command prompt, try pressing enter.
          root@my-release-cockroachdb-public:26257> SHOW DATABASES;
          +--------------------+
          |      Database      |
          +--------------------+
          | information_schema |
          | pg_catalog         |
          | system             |
          +--------------------+
          (3 rows)
          root@my-release-cockroachdb-public:26257> CREATE DATABASE bank;
          CREATE DATABASE
          root@my-release-cockroachdb-public:26257> CREATE TABLE bank.accounts (id INT
          PRIMARY KEY, balance DECIMAL);
          CREATE TABLE
          root@my-release-cockroachdb-public:26257> INSERT INTO bank.accounts VALUES
          (1234, 10000.50);
          INSERT 1
          root@my-release-cockroachdb-public:26257> SELECT * FROM bank.accounts;
          +------+---------+
          |  id  | balance |
          +------+---------+
          | 1234 | 10000.5 |
          +------+---------+
          (1 row)
          root@my-release-cockroachdb-public:26257> \q
          Waiting for pod default/cockroach-client to terminate, status is Running
          pod "cockroach-client" deleted
          ```

          > If you are running in secure mode, you will have to provide a client certificate to the cluster in order to authenticate, so the above command will not work. See [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/client-secure.yaml) for an example of how to set up an interactive SQL shell against a secure cluster or [here](https://github.com/cockroachdb/cockroach/blob/master/cloud/kubernetes/example-app-secure.yaml) for an example application connecting to a secure cluster.

          ### Cluster health

          Because our pod spec includes regular health checks of the CockroachDB processes, simply running `kubectl get pods` and looking at the `STATUS` column is sufficient to determine the health of each instance in the cluster.

          If you want more detailed information about the cluster, the best place to look is the Admin UI.

          ### Accessing the Admin UI

          If you want to see information about how the cluster is doing, you can try pulling up the CockroachDB Admin UI by port-forwarding from your local machine to one of the pods (replacing `my-release-cockroachdb-0` with the name of one of your pods:

          ```shell
          kubectl port-forward my-release-cockroachdb-0 8080
          ```

          You should then be able to access the Admin UI by visiting <http://localhost:8080/> in your web browser.

          ### Failover

          If any CockroachDB member fails, it is restarted or recreated automatically by the Kubernetes infrastructure, and will re-join the cluster automatically when it comes back up. You can test this scenario by killing any of the CockroachDB pods:

          ```shell
          kubectl delete pod my-release-cockroachdb-1
          ```

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          After a while:

          ```shell
          kubectl get pods -l "app.kubernetes.io/instance=my-release,app.kubernetes.io/component=cockroachdb"
          ```

          ```
          NAME                      READY     STATUS        RESTARTS   AGE
          my-release-cockroachdb-0  1/1       Running       0          5m
          my-release-cockroachdb-1  1/1       Running       0          20s
          my-release-cockroachdb-2  1/1       Running       0          5m
          ```

          You can check the state of re-joining from the new pod's logs:

          ```shell
          kubectl logs my-release-cockroachdb-1
          ```

          ```
          [...]
          I161028 19:32:09.754026 1 server/node.go:586  [n1] node connected via gossip and
          verified as part of cluster {"35ecbc27-3f67-4e7d-9b8f-27c31aae17d6"}
          [...]
          cockroachdb-0.my-release-cockroachdb.default.svc.cluster.local:26257
          build:      beta-20161027-55-gd2d3c7f @ 2016/10/28 19:27:25 (go1.7.3)
          admin:      http://0.0.0.0:8080
          sql:
          postgresql://root@my-release-cockroachdb-1.my-release-cockroachdb.default.svc.cluster.local:26257?sslmode=disable
          logs:       cockroach-data/logs
          store[0]:   path=cockroach-data
          status:     restarted pre-existing node
          clusterID:  {35ecbc27-3f67-4e7d-9b8f-27c31aae17d6}
          nodeID:     2
          [...]
          ```

          ### NetworkPolicy

          To enable NetworkPolicy for CockroachDB, install [a networking plugin that implements the Kubernetes NetworkPolicy spec](https://kubernetes.io/docs/tasks/administer-cluster/declare-network-policy#before-you-begin), and set `networkPolicy.enabled` to `yes`/`true`.

          For Kubernetes v1.5 & v1.6, you must also turn on NetworkPolicy by setting the `DefaultDeny` Namespace annotation. Note: this will enforce policy for _all_ pods in the Namespace:

          ```shell
          kubectl annotate namespace default "net.beta.kubernetes.io/network-policy={\"ingress\":{\"isolation\":\"DefaultDeny\"}}"
          ```

          For more precise policy, set `networkPolicy.ingress.grpc` and `networkPolicy.ingress.http` rules. This will only allow pods that match the provided rules to connect to CockroachDB.

          ### Scaling

          Scaling should be managed via the `helm upgrade` command. After resizing your cluster on your cloud environment (e.g., GKE or EKS), run the following command to add a pod. This assumes you scaled from 3 to 4 nodes:

          ```shell
          kubectl patch cockroachdbs example -p '{"spec": {"statefulset":{"replicas":"4"}}}' --type merge
          ```

          Note, that if you are running in secure mode (`tls.enabled` is `yes`/`true`) and increase the size of your cluster, you will also have to approve the CSR (certificate-signing request) of each new node (using `kubectl get csr` and `kubectl certificate approve`).

          [1]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#inter-pod-affinity-and-anti-affinity
          [2]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#node-affinity
          [3]: https://cert-manager.io/
          [4]: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass
          [5]: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
        displayName: CockroachDB Helm Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cockroach
        - cockroachdb
        links:
        - name: Helm Chart Source
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb
        - name: Configuration Options
          url: https://github.com/helm/charts/tree/master/stable/cockroachdb#configuration
        - name: CockroachDB Source
          url: https://github.com/cockroachdb/cockroach
        maintainers:
        - email: yandu@cockroachlabs.com
          name: Yandu Oppacher
        maturity: stable
        minKubeVersion: 1.8.0
        provider:
          name: Helm Community
          url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/cockroachdb/cockroach-helm-operator:6.0.0
        - quay.io/openshift-community-operators/cockroachdb@sha256:d3016b1507515fc7712f9c47fd9082baf9ccb070aaab58ed0ef6e5abdedde8ba
        version: 6.0.0
      entries:
      - name: cockroachdb.v6.0.0
        version: 6.0.0
      name: stable-v6.x
    defaultChannel: stable-v6.x
    packageName: cockroachdb
    provider:
      name: Helm Community
      url: https://artifacthub.io/packages/helm/cockroachdb/cockroachdb
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OnGres
      provider-url: https://ongres.com
    name: stackgres-community
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stackgres-community.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - quay.io/community-operator-pipeline-prod/stackgres-community@sha256:d6a2bb38278da721b32ea1d84f613cd38fe9e3d570c1f5d3c81e1d812e3e6b09
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        version: 1.18.3
      entries:
      - name: stackgres-community.v1.18.3
        version: 1.18.3
      - name: stackgres-community.v1.18.2
        version: 1.18.2
      - name: stackgres-community.v1.18.1
        version: 1.18.1
      name: candidate
    - currentCSV: stackgres-community.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/stackgres-community@sha256:d6a2bb38278da721b32ea1d84f613cd38fe9e3d570c1f5d3c81e1d812e3e6b09
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        version: 1.18.3
      entries:
      - name: stackgres-community.v1.18.3
        version: 1.18.3
      - name: stackgres-community.v1.18.2
        version: 1.18.2
      - name: stackgres-community.v1.18.1
        version: 1.18.1
      name: fast
    - currentCSV: stackgres-community.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - quay.io/community-operator-pipeline-prod/stackgres-community@sha256:d6a2bb38278da721b32ea1d84f613cd38fe9e3d570c1f5d3c81e1d812e3e6b09
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        version: 1.18.3
      entries:
      - name: stackgres-community.v1.18.3
        version: 1.18.3
      - name: stackgres-community.v1.18.2
        version: 1.18.2
      - name: stackgres-community.v1.18.1
        version: 1.18.1
      name: stable
    defaultChannel: stable
    packageName: stackgres-community
    provider:
      name: OnGres
      url: https://ongres.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: mtv-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mtv-operator.v2.10.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "ForkliftController",
                "metadata": {
                  "name": "forklift-controller",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "feature_ui_plugin": "true",
                  "feature_validation": "true",
                  "feature_volume_populator": "true"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Hook",
                "metadata": {
                  "name": "example-hook",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "image": "quay.io/konveyor/hook-runner",
                  "playbook": "\u003cbase64-encoded-playbook\u003e"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Host",
                "metadata": {
                  "name": "example-host",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "id": "",
                  "ipAddress": "",
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Migration",
                "metadata": {
                  "name": "example-migration",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "plan": {
                    "name": "example-plan",
                    "namespace": "openshift-mtv"
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "NetworkMap",
                "metadata": {
                  "name": "example-networkmap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "name": "",
                        "namespace": "",
                        "type": "pod"
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OpenstackVolumePopulator",
                "metadata": {
                  "name": "example-openstack",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "identityUrl": "",
                  "imageId": "",
                  "secretName": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OvirtVolumePopulator",
                "metadata": {
                  "name": "example-ovirt-imageio",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "diskId": "",
                  "engineSecretName": "",
                  "engineUrl": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Plan",
                "metadata": {
                  "name": "example-plan",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "provider": {
                    "destination": {
                      "name": "",
                      "namespace": ""
                    },
                    "source": {
                      "name": "",
                      "namespace": ""
                    }
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                  "name": "example-provider",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "secret": {
                    "name": "",
                    "namespace": ""
                  },
                  "type": "vmware",
                  "url": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "StorageMap",
                "metadata": {
                  "name": "example-storagemap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "storageClass": ""
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "true"
          containerImage: registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:f364639313bdcd065a5f6c71f74c7c7cf920e2919e1342e6b184780455c8fb6e
          createdAt: "2025-12-16T16:35:23Z"
          description: Facilitates migration of VM workloads to OpenShift Virtualization
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/fipsmode: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "forklift.konveyor.io/v1beta1",
              "kind": "ForkliftController",
              "metadata": {
                "name": "forklift-controller",
                "namespace": "openshift-mtv"
              },
              "spec": {
                "feature_ui_plugin": "true",
                "feature_validation": "true",
                "feature_volume_populator": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mtv
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/kubev2v/forklift
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VM migration controller
            displayName: ForkliftController
            kind: ForkliftController
            name: forkliftcontrollers.forklift.konveyor.io
            version: v1beta1
          - description: Hook schema for the hooks API
            displayName: Hook
            kind: Hook
            name: hooks.forklift.konveyor.io
            version: v1beta1
          - description: VM host
            displayName: Host
            kind: Host
            name: hosts.forklift.konveyor.io
            version: v1beta1
          - description: VM migration
            displayName: Migration
            kind: Migration
            name: migrations.forklift.konveyor.io
            version: v1beta1
          - description: VM network map
            displayName: NetworkMap
            kind: NetworkMap
            name: networkmaps.forklift.konveyor.io
            version: v1beta1
          - description: OpenStack Volume Populator
            displayName: OpenstackVolumePopulator
            kind: OpenstackVolumePopulator
            name: openstackvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: OVA Provider Server
            displayName: OVAProviderServer
            kind: OVAProviderServer
            name: ovaproviderservers.forklift.konveyor.io
            version: v1beta1
          - description: oVirt Volume Populator
            displayName: OvirtVolumePopulator
            kind: OvirtVolumePopulator
            name: ovirtvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: VM migration plan
            displayName: Plan
            kind: Plan
            name: plans.forklift.konveyor.io
            version: v1beta1
          - description: VM provider
            displayName: Provider
            kind: Provider
            name: providers.forklift.konveyor.io
            version: v1beta1
          - description: VM storage map
            displayName: StorageMap
            kind: StorageMap
            name: storagemaps.forklift.konveyor.io
            version: v1beta1
          - description: VSphere Xcopy Volume Populator
            displayName: VSphereXcopyVolumePopulator
            kind: VSphereXcopyVolumePopulator
            name: vspherexcopyvolumepopulators.forklift.konveyor.io
            version: v1beta1
        description: |
          The Migration Toolkit for Virtualization Operator manages the deployment and life cycle of Migration Toolkit for Virtualization on [OpenShift](https://www.openshift.com/) Container Platform.

          ### Installation

          OpenShift Virtualization must be installed on an OpenShift migration target cluster before you can use MTV to transfer any VMs to that cluster

          Once you have successfully installed the Operator, proceed to deploy components by creating the required ForkliftController CR.

          By default, the Operator installs the following components on a target cluster:

          * Controller, to coordinate migration processes.
          * UI, the web console to manage migrations.
          * Validation, a service to validate migration workflows.

          ### Compatibility

          Migration Toolkit for Virtualization 2.9 is supported on OpenShift 4.17, 4.18 and 4.19

          Migration Toolkit for Virtualization 2.10 is supported on OpenShift 4.18, 4.19 and 4.20

          More information on compatibility in the [MTV Lifecycle document](https://access.redhat.com/support/policy/updates/migration-toolkit-for-virtualization).

          ### Documentation
          Documentation can be found on the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization/).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Virtualization Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Creating a case in the [Red Hat Customer Portal](https://access.redhat.com/support/cases/) with any issues you find using Migration Toolkit for Application and its Operator.
          * Fixing issues by opening Pull Requests in the [KubeV2V](https://github.com/kubev2v/) under Forklift Projects.
          * Improving Forklift upstream [documentation](https://github.com/kubev2v/forklift-documentation/).
        displayName: Migration Toolkit for Virtualization Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - forklift
        - konveyor
        - mtv
        links:
        - name: Migration Toolkit for Virtualization Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization
        - name: Forklift Operator
          url: https://github.com/kubev2v/forklift
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:8ae52c3487c3eff996800be4321ef5cd594a6a451c2cfe9ed283c862e9fa5703
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:be16e654be6a8d0513f92ba2e148941cd6ddb8e597085f66be6899c1ba605ce5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:f6e5d3c93ee1c8962828ef889902a099a4bbb1f6665a0975bdffa9e8d6e4cb6d
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fe352650a328af67ba8cb331bafb320f0f147fe8a41782311206b8a6f0255552
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:8bde2126f5f8a6e1ca6b84c559c83771c8580fae0fca338219e94cba3e908e29
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel10@sha256:3d927816fbd65ad819444432c6d80907143944e0fba525826edc10c8ca568849
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:2cbcb294f707d4832de3436df5cb35b442f8db69d24f3fb7c66ca7c2579e7930
        - registry.redhat.io/migration-toolkit-virtualization/mtv-cli-download-rhel9@sha256:220639596f63897fecdb261d9faa7a8f6c1b1b9661c26e449336e3e19585d8f9
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:4417efc0a042ab078138d5a83eb1b32e7f1d6ad90f69efdab40ed43c01d1fe30
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:7b5871df7274de2dd7df16f311fe97b8873b88032571d83216d6e61820aa288f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:018f9305c10388d368b8a29ef6a827494492df23a3279265ff3e41971e1dda43
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:869705843f9c42a664f0e27afad9d609d2f8d56204f1fd2c693e340cc384afd9
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:92fcb195ede1bcc5e1108bbea950aaf953f8058fd1bc3ff4381f7d7d11da1859
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-proxy-rhel9@sha256:d990f6ddd51e468aeef329fe6c0c083ad524e6b72d8dc4ff8fcfe4cea4d16156
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:f364639313bdcd065a5f6c71f74c7c7cf920e2919e1342e6b184780455c8fb6e
        version: 2.10.2
      entries:
      - name: mtv-operator.v2.10.2
        version: 2.10.2
      - name: mtv-operator.v2.10.1
        version: 2.10.1
      - name: mtv-operator.v2.10.0
        version: 2.10.0
      name: release-v2.10
    - currentCSV: mtv-operator.v2.7.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "ForkliftController",
                "metadata": {
                  "name": "forklift-controller",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "feature_ui_plugin": "true",
                  "feature_validation": "true",
                  "feature_volume_populator": "true"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Hook",
                "metadata": {
                  "name": "example-hook",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "image": "quay.io/konveyor/hook-runner",
                  "playbook": "<base64-encoded-playbook>"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Host",
                "metadata": {
                  "name": "example-host",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "id": "",
                  "ipAddress": "",
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Migration",
                "metadata": {
                  "name": "example-migration",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "plan": {
                    "name": "example-plan",
                    "namespace": "openshift-mtv"
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "NetworkMap",
                "metadata": {
                  "name": "example-networkmap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "name": "",
                        "namespace": "",
                        "type": "pod"
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OpenstackVolumePopulator",
                "metadata": {
                  "name": "example-openstack",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "identityUrl": "",
                  "imageId": "",
                  "secretName": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OvirtVolumePopulator",
                "metadata": {
                  "name": "example-ovirt-imageio",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "diskId": "",
                  "engineSecretName": "",
                  "engineUrl": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Plan",
                "metadata": {
                  "name": "example-plan",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "provider": {
                    "destination": {
                      "name": "",
                      "namespace": ""
                    },
                    "source": {
                      "name": "",
                      "namespace": ""
                    }
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                  "name": "example-provider",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "secret": {
                    "name": "",
                    "namespace": ""
                  },
                  "type": "vmware",
                  "url": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "StorageMap",
                "metadata": {
                  "name": "example-storagemap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "storageClass": ""
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "true"
          containerImage: registry.redhat.io/migration-toolkit-virtualization/mtv-rhel8-operator@sha256:8dbeace89a921e0d11f85378099e39cc357702d2f20dfb9d14cebbe150d2500d
          createdAt: "2024-10-11T14:05:47Z"
          description: Facilitates migration of VM workloads to OpenShift Virtualization
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/fipsmode: "true"
          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.skipRange: '>=0.0.0 <2.7.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "forklift.konveyor.io/v1beta1",
              "kind": "ForkliftController",
              "metadata": {
                "name": "forklift-controller",
                "namespace": "openshift-mtv"
              },
              "spec": {
                "feature_ui_plugin": "true",
                "feature_validation": "true",
                "feature_volume_populator": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mtv
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/kubev2v/forklift
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VM migration controller
            displayName: ForkliftController
            kind: ForkliftController
            name: forkliftcontrollers.forklift.konveyor.io
            version: v1beta1
          - description: Hook schema for the hooks API
            displayName: Hook
            kind: Hook
            name: hooks.forklift.konveyor.io
            version: v1beta1
          - description: VM host
            displayName: Host
            kind: Host
            name: hosts.forklift.konveyor.io
            version: v1beta1
          - description: VM migration
            displayName: Migration
            kind: Migration
            name: migrations.forklift.konveyor.io
            version: v1beta1
          - description: VM network map
            displayName: NetworkMap
            kind: NetworkMap
            name: networkmaps.forklift.konveyor.io
            version: v1beta1
          - description: OpenStack Volume Populator
            displayName: OpenstackVolumePopulator
            kind: OpenstackVolumePopulator
            name: openstackvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: oVirt Volume Populator
            displayName: OvirtVolumePopulator
            kind: OvirtVolumePopulator
            name: ovirtvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: VM migration plan
            displayName: Plan
            kind: Plan
            name: plans.forklift.konveyor.io
            version: v1beta1
          - description: VM provider
            displayName: Provider
            kind: Provider
            name: providers.forklift.konveyor.io
            version: v1beta1
          - description: VM storage map
            displayName: StorageMap
            kind: StorageMap
            name: storagemaps.forklift.konveyor.io
            version: v1beta1
        description: |
          The Migration Toolkit for Virtualization Operator manages the deployment and life cycle of Migration Toolkit for Virtualization on [OpenShift](https://www.openshift.com/) Container Platform.

          ### Installation

          OpenShift Virtualization must be installed on an OpenShift migration target cluster before you can use MTV to transfer any VMs to that cluster

          Once you have successfully installed the Operator, proceed to deploy components by creating the required ForkliftController CR.

          By default, the Operator installs the following components on a target cluster:

          * Controller, to coordinate migration processes.
          * UI, the web console to manage migrations.
          * Validation, a service to validate migration workflows.

          ### Compatibility

          Migration Toolkit for Virtualization 2.5 is supported on OpenShift 4.12 and 4.13

          Migration Toolkit for Virtualization 2.6 is supported on OpenShift 4.14 and 4.15

          Migration Toolkit for Virtualization 2.7 is supported on OpenShift 4.16 and 4.17

          More information on compatibility in the [MTV Lifecycle document](https://access.redhat.com/articles/6001751).

          ### Documentation
          Documentation can be found on the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization/).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Virtualization Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Creating a case in the [Red Hat Customer Portal](https://access.redhat.com/support/cases/) with any issues you find using Migration Toolkit for Application and its Operator.
          * Fixing issues by opening Pull Requests in the [KubeV2V](https://github.com/kubev2v/) under Forklift Projects.
          * Improving Forklift upstream [documentation](https://github.com/kubev2v/forklift-documentation/).
        displayName: Migration Toolkit for Virtualization Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - forklift
        - konveyor
        - mtv
        links:
        - name: Migration Toolkit for Virtualization Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization
        - name: Forklift
          url: http://github.com/kubev2v/forklift
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:936fd68d7659683de7789fcf34d2e5873bd4bd1534c01c2d80501647f7c3c442
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:c543dbbb66fcac02345e1d3c12333780721bf049dca0f0a27d4c55b15a5d3e14
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:fd6fb83bbeb9010f7e91f0afc91beac0bf38cb79c2de8f533a2bd07b1b238262
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:6d0aeffbccaf9df83b42c530bf82707aa7c1cc16f72a5ef30b66fbd562c01ab3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:8c05a303be5c536f4051ef291475b578d4d38ca0946fb4b4dd8bca376ef432aa
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:e91c2e5473f3e24c185dd25e9843f333e6d7419d9c5f4d4396669717b5969683
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:a65780c5680a6fbbd0e3d0eed423b14a9c9b3d7d17f801c1eb6eb6b777384ca5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel8-operator@sha256:8dbeace89a921e0d11f85378099e39cc357702d2f20dfb9d14cebbe150d2500d
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:4bea07e101740afc36a1617363a79b1c474efcacd584f6e475a53b3f2395a079
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:8337924489a1747d4bbca6dd6ac42210731cf721b549b5830846b271621e2ac1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:1dd8f0f08ff1323d910fea8adfa13cef64c2fd2f01968e4d9d55f71cf42835d3
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:365115407964d182de7e7564438c6fd089e2c0bcc0f94ec48621ca0cc2bf0fe4
        version: 2.7.2
      entries:
      - name: mtv-operator.v2.7.2
        version: 2.7.2
      name: release-v2.7
    - currentCSV: mtv-operator.v2.8.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "ForkliftController",
                "metadata": {
                  "name": "forklift-controller",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "feature_ui_plugin": "true",
                  "feature_validation": "true",
                  "feature_volume_populator": "true"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Hook",
                "metadata": {
                  "name": "example-hook",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "image": "quay.io/konveyor/hook-runner",
                  "playbook": "<base64-encoded-playbook>"
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Host",
                "metadata": {
                  "name": "example-host",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "id": "",
                  "ipAddress": "",
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Migration",
                "metadata": {
                  "name": "example-migration",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "plan": {
                    "name": "example-plan",
                    "namespace": "openshift-mtv"
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "NetworkMap",
                "metadata": {
                  "name": "example-networkmap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "name": "",
                        "namespace": "",
                        "type": "pod"
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OpenstackVolumePopulator",
                "metadata": {
                  "name": "example-openstack",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "identityUrl": "",
                  "imageId": "",
                  "secretName": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "OvirtVolumePopulator",
                "metadata": {
                  "name": "example-ovirt-imageio",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "diskId": "",
                  "engineSecretName": "",
                  "engineUrl": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Plan",
                "metadata": {
                  "name": "example-plan",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "provider": {
                    "destination": {
                      "name": "",
                      "namespace": ""
                    },
                    "source": {
                      "name": "",
                      "namespace": ""
                    }
                  }
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "Provider",
                "metadata": {
                  "name": "example-provider",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "secret": {
                    "name": "",
                    "namespace": ""
                  },
                  "type": "vmware",
                  "url": ""
                }
              },
              {
                "apiVersion": "forklift.konveyor.io/v1beta1",
                "kind": "StorageMap",
                "metadata": {
                  "name": "example-storagemap",
                  "namespace": "openshift-mtv"
                },
                "spec": {
                  "map": [
                    {
                      "destination": {
                        "storageClass": ""
                      },
                      "source": {
                        "id": ""
                      }
                    }
                  ],
                  "provider": {
                    "name": "",
                    "namespace": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "true"
          containerImage: registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:d267c04e414d986daba9750bad590d6387bcb798df64bc583da97d88b182dc9f
          createdAt: "2025-05-29T13:56:42Z"
          description: Facilitates migration of VM workloads to OpenShift Virtualization
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/fipsmode: "true"
          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.skipRange: '>=0.0.0 <2.8.5'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "forklift.konveyor.io/v1beta1",
              "kind": "ForkliftController",
              "metadata": {
                "name": "forklift-controller",
                "namespace": "openshift-mtv"
              },
              "spec": {
                "feature_ui_plugin": "true",
                "feature_validation": "true",
                "feature_volume_populator": "true"
              }
            }
          operatorframework.io/suggested-namespace: openshift-mtv
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/kubev2v/forklift
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VM migration controller
            displayName: ForkliftController
            kind: ForkliftController
            name: forkliftcontrollers.forklift.konveyor.io
            version: v1beta1
          - description: Hook schema for the hooks API
            displayName: Hook
            kind: Hook
            name: hooks.forklift.konveyor.io
            version: v1beta1
          - description: VM host
            displayName: Host
            kind: Host
            name: hosts.forklift.konveyor.io
            version: v1beta1
          - description: VM migration
            displayName: Migration
            kind: Migration
            name: migrations.forklift.konveyor.io
            version: v1beta1
          - description: VM network map
            displayName: NetworkMap
            kind: NetworkMap
            name: networkmaps.forklift.konveyor.io
            version: v1beta1
          - description: OpenStack Volume Populator
            displayName: OpenstackVolumePopulator
            kind: OpenstackVolumePopulator
            name: openstackvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: oVirt Volume Populator
            displayName: OvirtVolumePopulator
            kind: OvirtVolumePopulator
            name: ovirtvolumepopulators.forklift.konveyor.io
            version: v1beta1
          - description: VM migration plan
            displayName: Plan
            kind: Plan
            name: plans.forklift.konveyor.io
            version: v1beta1
          - description: VM provider
            displayName: Provider
            kind: Provider
            name: providers.forklift.konveyor.io
            version: v1beta1
          - description: VM storage map
            displayName: StorageMap
            kind: StorageMap
            name: storagemaps.forklift.konveyor.io
            version: v1beta1
          - description: VSphere Xcopy Volume Populator
            displayName: VSphereXcopyVolumePopulator
            kind: VSphereXcopyVolumePopulator
            name: vspherexcopyvolumepopulators.forklift.konveyor.io
            version: v1beta1
        description: |
          The Migration Toolkit for Virtualization Operator manages the deployment and life cycle of Migration Toolkit for Virtualization on [OpenShift](https://www.openshift.com/) Container Platform.

          ### Installation

          OpenShift Virtualization must be installed on an OpenShift migration target cluster before you can use MTV to transfer any VMs to that cluster

          Once you have successfully installed the Operator, proceed to deploy components by creating the required ForkliftController CR.

          By default, the Operator installs the following components on a target cluster:

          * Controller, to coordinate migration processes.
          * UI, the web console to manage migrations.
          * Validation, a service to validate migration workflows.

          ### Compatibility

          Migration Toolkit for Virtualization 2.7 is supported on OpenShift 4.15, 4.16 and 4.17

          Migration Toolkit for Virtualization 2.8 is supported on OpenShift 4.16, 4.17, 4.18 and 4.19

          More information on compatibility in the [MTV Lifecycle document](https://access.redhat.com/support/policy/updates/migration-toolkit-for-virtualization).

          ### Documentation
          Documentation can be found on the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization/).

          ### Getting help
          If you encounter any issues while using Migration Toolkit for Virtualization Operator, create a [support case](https://access.redhat.com/support/cases/) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Creating a case in the [Red Hat Customer Portal](https://access.redhat.com/support/cases/) with any issues you find using Migration Toolkit for Application and its Operator.
          * Fixing issues by opening Pull Requests in the [KubeV2V](https://github.com/kubev2v/) under Forklift Projects.
          * Improving Forklift upstream [documentation](https://github.com/kubev2v/forklift-documentation/).
        displayName: Migration Toolkit for Virtualization Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - forklift
        - konveyor
        - mtv
        links:
        - name: Migration Toolkit for Virtualization Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_virtualization
        - name: Forklift
          url: http://github.com/kubev2v/forklift
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/migration-toolkit-virtualization/mtv-console-plugin-rhel9@sha256:1344719931cedfd7c64acc9419af6fc0cc5850c23b2aa3e597d9f92600b6259b
        - registry.redhat.io/migration-toolkit-virtualization/mtv-must-gather-rhel8@sha256:6a3c257eae44adde04d7b2a7e3b0f2bb966f0e6aa53a23302258618bb27d064b
        - registry.redhat.io/migration-toolkit-virtualization/mtv-ova-provider-server-rhel9@sha256:49b2a58eeb994c5398f31e89abeb2959b079207de29fae876eb8ab90a2f79b95
        - registry.redhat.io/migration-toolkit-virtualization/mtv-validation-rhel9@sha256:d2f7d3e51e225c045376eb435169b2a7b11e0b7de98d11e78d2a21d4540565d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-virt-v2v-rhel9@sha256:931b5d94251a065c819b3e1b39a9d35e0919174b98b0ffde86dae71a15f2f1d5
        - registry.redhat.io/migration-toolkit-virtualization/mtv-api-rhel9@sha256:8933f1a8dad97352e225e1a1f7f0edbd2820fd60ff1d0c80a49065257b6ca9f1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-openstack-populator-rhel9@sha256:4861381a24d81f3f25153af9c066839be83cf74adf5ec900464719197611af27
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhel9-operator@sha256:d267c04e414d986daba9750bad590d6387bcb798df64bc583da97d88b182dc9f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-vsphere-xcopy-volume-populator-rhel9@sha256:d6ca7787981b6229eedce40893280381abfaa124dd84be3bc1fb6f043a22d2d1
        - registry.redhat.io/migration-toolkit-virtualization/mtv-controller-rhel9@sha256:80fdc43060387a455d177019de81ab274dbdf754b9ab68a61696068d9c4bfaac
        - registry.redhat.io/migration-toolkit-virtualization/mtv-populator-controller-rhel9@sha256:84998b76aab53a0ca9a83a6b8baf3cb408763fba07008e3c892e2669740b481f
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:930d472f486c74d36ffc3e9ed510044e15745a6350503b386f5221c82df2a7f6
        - registry.redhat.io/migration-toolkit-virtualization/mtv-operator-bundle@sha256:29ce66f04b7339725d0e3dd7d4cfeca794c33e917e0deef00c44149a86a1c3b9
        version: 2.8.5
      entries:
      - name: mtv-operator.v2.8.5
        version: 2.8.5
      name: release-v2.8
    defaultChannel: release-v2.10
    packageName: mtv-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: apicast-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicast-operator.v0.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:ccd64090b85536ddaf1b81ca07d40279c9f277b1c5911628f11d678b98dc3bad
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.11/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: msoriano+apicastoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:f0e9f64c353fdbee3bf7ec0eaf070c3b75330ef659a881ec4ebc874ba584d085
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:9db455e082454734d2a17811dcfec53d3d60c28df6e7fe8bc979a45b28a35061
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:ccd64090b85536ddaf1b81ca07d40279c9f277b1c5911628f11d678b98dc3bad
        version: 0.5.3
      entries:
      - name: apicast-operator.v0.5.3
        version: 0.5.3
      - name: apicast-operator.v0.5.2
        version: 0.5.2
      - name: apicast-operator.v0.5.2-0.1646742993.p
        version: 0.5.2+0.1646742993.p
      - name: apicast-operator.v0.5.2-0.1649688685.p
        version: 0.5.2+0.1649688685.p
      - name: apicast-operator.v0.5.1
        version: 0.5.1
      - name: apicast-operator.v0.5.0
        version: 0.5.0
      - name: apicast-operator.v0.5.0-0.1638885516.p
        version: 0.5.0+0.1638885516.p
      - name: apicast-operator.v0.5.0-0.1638984223.p
        version: 0.5.0+0.1638984223.p
      name: threescale-2.11
    - currentCSV: apicast-operator.v0.6.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:8c7fe66b8d4044ad965e7b3d149e9d8e3846ac4e55465873f7095a25b297b3df
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: msoriano+apicastoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:8c7fe66b8d4044ad965e7b3d149e9d8e3846ac4e55465873f7095a25b297b3df
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:12f7a8e69a1369a51bbcd2b34d4ec8c66dd1fc9fb515349a04e7b202953423e3
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:8650430afd813fd749fcd80ad5f6fd0aeaab3df048e8fe34e6aa72a07ab801fc
        version: 0.6.4
      entries:
      - name: apicast-operator.v0.6.4
        version: 0.6.4
      - name: apicast-operator.v0.6.3
        version: 0.6.3
      - name: apicast-operator.v0.6.2
        version: 0.6.2
      - name: apicast-operator.v0.6.1
        version: 0.6.1
      - name: apicast-operator.v0.6.0
        version: 0.6.0
      - name: apicast-operator.v0.5.3
        version: 0.5.3
      - name: apicast-operator.v0.5.2-0.1649688685.p
        version: 0.5.2+0.1649688685.p
      - name: apicast-operator.v0.5.2-0.1646742993.p
        version: 0.5.2+0.1646742993.p
      - name: apicast-operator.v0.5.2
        version: 0.5.2
      - name: apicast-operator.v0.5.1
        version: 0.5.1
      - name: apicast-operator.v0.5.0
        version: 0.5.0
      - name: apicast-operator.v0.5.0-0.1638984223.p
        version: 0.5.0+0.1638984223.p
      - name: apicast-operator.v0.5.0-0.1638885516.p
        version: 0.5.0+0.1638885516.p
      name: threescale-2.12
    - currentCSV: apicast-operator.v0.7.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:bde44c0fb9f13f212184b24e0bef45db734a8439a92179a2089e5aebd6b87b63
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          olm.skipRange: '>=0.6.2 <0.7.5'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.13/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: msoriano+apicastoperator@redhat.com
          name: Miguel Soriano
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:ed063f507fa8e2f378d0adbde823c110484d0212d124cc72d67efa987e86444e
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:bde44c0fb9f13f212184b24e0bef45db734a8439a92179a2089e5aebd6b87b63
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:88dc7a289c803248efbe151999707325b1bc0aac2d26827ea1707e46e5c71652
        version: 0.7.5
      entries:
      - name: apicast-operator.v0.7.5
        version: 0.7.5
      name: threescale-2.13
    - currentCSV: apicast-operator.v0.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:21db8c1bde63b5d574b66b46ec3ee95eb05a3c34b9541ca32d5bbf4daf18daf4
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          olm.skipRange: '>=0.6.2 <0.8.1'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.14/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator-metadata@sha256:bcc5ed9560667c7347f3044c7fa6148e3867c17e93e83595a62794339a5a6b0d
        - registry.redhat.io/3scale-amp2/apicast-rhel7-operator@sha256:21db8c1bde63b5d574b66b46ec3ee95eb05a3c34b9541ca32d5bbf4daf18daf4
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:68b310ed3cfd65db893ba015ef1d5442365201c0ced006c1915e90edb99933ea
        version: 0.8.1
      entries:
      - name: apicast-operator.v0.8.1
        version: 0.8.1
      name: threescale-2.14
    - currentCSV: apicast-operator.v0.7.9-mas
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/3scale-mas/apicast-rhel7-operator@sha256:3fd03155935a1a1946669db9dadc8e82737de46e1fcb0ba92a9815a277ae35aa
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway to be used together with Red Hat
            3scale
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat 3scale API Management"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |-
          APIcast is an API gateway to be used together with Red Hat 3scale. This Operator supports standalone deployment of the gateway as opposed to the built-in APIcast as part of a 3scale installation.

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator) for more information.

          ### Documentation
          Documentation can be found on our [website](https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: Red Hat Integration - 3scale APIcast gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_3scale_api_management/2.12/html/installing_3scale/installing-apicast#deploying-apicast-gateway-self-managed-operator
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/3scale-mas/apicast-gateway-rhel8@sha256:ea2229948fea841343fcaa337bb7e2854acf5f563d3ffb0af8bda1c21ec2a91f
        - registry.redhat.io/3scale-mas/apicast-operator-bundle@sha256:d3a608b37aa089ea46e803696ba4957585b875f8a810f517e891f385ad105937
        - registry.redhat.io/3scale-mas/apicast-rhel7-operator@sha256:3fd03155935a1a1946669db9dadc8e82737de46e1fcb0ba92a9815a277ae35aa
        version: 0.7.9-mas
      entries:
      - name: apicast-operator.v0.7.9-mas
        version: 0.7.9-mas
      - name: apicast-operator.v0.7.8-mas
        version: 0.7.8-mas
      - name: apicast-operator.v0.7.7-mas
        version: 0.7.7-mas
      - name: apicast-operator.v0.7.6-mas
        version: 0.7.6-mas
      - name: apicast-operator.v0.7.5-mas
        version: 0.7.5-mas
      - name: apicast-operator.v0.7.4-mas
        version: 0.7.4-mas
      - name: apicast-operator.v0.7.3-mas
        version: 0.7.3-mas
      - name: apicast-operator.v0.7.2-mas
        version: 0.7.2-mas
      - name: apicast-operator.v0.7.1-mas
        version: 0.7.1-mas
      - name: apicast-operator.v0.7.0-mas
        version: 0.7.0-mas
      - name: apicast-operator.v0.6.0-mas
        version: 0.6.0-mas
      - name: apicast-operator.v0.5.2-0.1649688685.p
        version: 0.5.2+0.1649688685.p
      - name: apicast-operator.v0.5.2-0.1646742993.p
        version: 0.5.2+0.1646742993.p
      - name: apicast-operator.v0.5.2
        version: 0.5.2
      - name: apicast-operator.v0.5.1
        version: 0.5.1
      - name: apicast-operator.v0.5.0
        version: 0.5.0
      - name: apicast-operator.v0.5.0-0.1638984223.p
        version: 0.5.0+0.1638984223.p
      - name: apicast-operator.v0.5.0-0.1638885516.p
        version: 0.5.0+0.1638885516.p
      name: threescale-mas
    defaultChannel: threescale-2.14
    packageName: apicast-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: github.com/stakater-ab/hibernation-operator
    name: hibernation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hibernation-operator.v0.1.103
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Monitoring
          createdAt: "2025-10-02T05:44:42Z"
          description: Operator to engage and disengage hibernation on k8s resources
            using cron expressions
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.1.103
          operatorframework.io/suggested-namespace: hibernation-operator-system
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Cluster Resource Supervisor
            kind: ClusterResourceSupervisor
            name: clusterresourcesupervisors.hibernation.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.hibernation.stakater.com
            version: v1beta1
        description: Schedule k8s resources using cron expressions via Hibernation
          Operator
        displayName: Hibernation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - redhat
        - k8s
        - stakater
        - hibernation
        - operator
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maintainers:
        - email: hello@stakater.com
          name: StakaterAB
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Stakater
          url: github.com/stakater-ab/hibernation-operator
        relatedImages:
        - registry.connect.redhat.com/stakater/hibernation-operator-bundle@sha256:ded790c5b21a5b0cadac01943bfb239750d9ac6e340dc4237c9681f243858bdd
        - registry.connect.redhat.com/stakater/hibernation-operator@sha256:3738f82834d53aec4f8fba5caad6258c7adb4bdc23a57bde47c7ec22030fae5c
        version: 0.1.103
      entries:
      - name: hibernation-operator.v0.1.103
        version: 0.1.103
      name: release-0.1
    defaultChannel: release-0.1
    packageName: hibernation-operator
    provider:
      name: Stakater
      url: github.com/stakater-ab/hibernation-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Medik8s
      provider-url: https://www.medik8s.io/
    name: customized-user-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: customized-user-remediation.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "customized-user-remediation.medik8s.io/v1alpha1",
                "kind": "CustomizedUserRemediation",
                "metadata": {
                  "name": "customizeduserremediation-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "customized-user-remediation.medik8s.io/v1alpha1",
                "kind": "CustomizedUserRemediationConfig",
                "metadata": {
                  "name": "customizeduserremediationconfig-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "customized-user-remediation.medik8s.io/v1alpha1",
                "kind": "CustomizedUserRemediationTemplate",
                "metadata": {
                  "name": "customizeduserremediationtemplate-sample",
                  "namespace": "openshift-workload-availability"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/medik8s/customized-user-remediation-operator:v0.1.0
          createdAt: "2024-03-25 16:17:57"
          description: Customized User Remediation Operator will remediate unhealthy
            nodes by running a pre defined user script on the unhealthy node. Since
            the user has full control over the script content, is may be quite risky
            so apply discretion.
          olm.skipRange: '>=0.0.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/customized-user-remediation
          support: Medik8s
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CustomizedUserRemediationConfig is the Schema for the customizeduserremediationconfigs
              API
            displayName: Customized User Remediation Config
            kind: CustomizedUserRemediationConfig
            name: customizeduserremediationconfigs.customized-user-remediation.medik8s.io
            version: v1alpha1
          - description: CustomizedUserRemediation is the Schema for the customizeduserremediations
              API
            displayName: Customized User Remediation
            kind: CustomizedUserRemediation
            name: customizeduserremediations.customized-user-remediation.medik8s.io
            version: v1alpha1
          - description: CustomizedUserRemediationTemplate is the Schema for the customizeduserremediationtemplates
              API
            displayName: Customized User Remediation Template
            kind: CustomizedUserRemediationTemplate
            name: customizeduserremediationtemplates.customized-user-remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Customized User Remediation (CUR) works with Node Health Check to remediate unhealthy nodes by running a user customized script on the unhealthy node.
          This operator does not preform any fencing on the remediated node so users should be careful with the scripts that are being used.

          ### Compatibility
          CUR is one of the remediator operators by [Medik8s](https://www.medik8s.io/remediation/remediation/),
          such as [Self Node Remediation](https://github.com/medik8s/self-node-remediation) and [Machine Deletion Remediation](https://github.com/medik8s/machine-deletion-remediation),
          that were designed to run with the Node HealthCheck Operator [(NHC)](https://github.com/medik8s/node-healthcheck-operator) which detects an unhealthy node and creates remediation CR.
          It is recommended to use FAR with NHC for an easier and smoother experience by fully automating the remediation process, but it can be used as a standalone remediator for the more experienced user.

          ### Advantages
          - Flexibility - CUR is quite flexible sine it runs in the remediation process a user customized script.
        displayName: Customized User Remediation Operator - Community Edition
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - remediation
        - auto-healing
        - recovery
        - high-availability
        - baremetal
        - script
        - CUR
        links:
        - name: Customized User Remediation
          url: https://customized-user-remediation.domain
        maintainers:
        - email: medik8s@googlegroups.com
          name: Medik8s Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Medik8s
          url: https://www.medik8s.io/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/community-operator-pipeline-prod/customized-user-remediation@sha256:dc517e2349fe993e3417b858865fb73b98b7b163c0b4231d4d7be1f11992bb78
        - quay.io/medik8s/customized-user-remediation-operator:v0.1.0
        version: 0.1.0
      entries:
      - name: customized-user-remediation.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: customized-user-remediation
    provider:
      name: Medik8s
      url: https://www.medik8s.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-bedrockagentcorecontrol-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-bedrockagentcorecontrol-controller.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/bedrockagentcorecontrol-controller:1.1.0
          createdAt: "2025-11-29T04:35:31Z"
          description: Amazon Bedrock Agent Core Control controller is a service controller
            for managing Bedrock Agent Core Control resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AgentRuntimeEndpoint represents the state of an AWS bedrockagentcorecontrol
              AgentRuntimeEndpoint resource.
            displayName: AgentRuntimeEndpoint
            kind: AgentRuntimeEndpoint
            name: agentruntimeendpoints.bedrockagentcorecontrol.services.k8s.aws
            version: v1alpha1
          - description: AgentRuntime represents the state of an AWS bedrockagentcorecontrol
              AgentRuntime resource.
            displayName: AgentRuntime
            kind: AgentRuntime
            name: agentruntimes.bedrockagentcorecontrol.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Bedrock Agent Core Control resources in AWS from within your Kubernetes cluster.

          **About Amazon Bedrock Agent Core Control**

          Amazon Bedrock Agent Core Control is a fully managed service that makes it easy to build and scale generative AI applications. With Bedrock, you can access foundation models from leading AI companies, customize them with your own data, and integrate them into your applications.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Bedrock Agent Core Control
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bedrockagentcorecontrol
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Bedrock Agent Core Control Developer Resources
          url: https://aws.amazon.com/bedrock/dev-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: bedrockagentcorecontrol maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-bedrockagentcorecontrol-controller@sha256:16eb4efd399e2db735c25ddcf9a77dc41123ce8df0ff634ec6907f9e2eab22db
        - public.ecr.aws/aws-controllers-k8s/bedrockagentcorecontrol-controller:1.1.0
        version: 1.1.0
      entries:
      - name: ack-bedrockagentcorecontrol-controller.v1.1.0
        version: 1.1.0
      - name: ack-bedrockagentcorecontrol-controller.v1.0.1
        version: 1.0.1
      - name: ack-bedrockagentcorecontrol-controller.v1.0.0
        version: 1.0.0
      - name: ack-bedrockagentcorecontrol-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-bedrockagentcorecontrol-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-networkfirewall-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-networkfirewall-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "networkfirewall.services.k8s.aws/v1alpha1",
                "kind": "Firewall",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "networkfirewall.services.k8s.aws/v1alpha1",
                "kind": "FirewallPolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "networkfirewall.services.k8s.aws/v1alpha1",
                "kind": "RuleGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/networkfirewall-controller:1.2.0
          createdAt: "2025-11-29T03:54:36Z"
          description: AWS Network Firewall controller is a service controller for
            managing Network Firewall resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FirewallPolicy represents the state of an AWS networkfirewall
              FirewallPolicy resource.
            displayName: FirewallPolicy
            kind: FirewallPolicy
            name: firewallpolicies.networkfirewall.services.k8s.aws
            version: v1alpha1
          - description: Firewall represents the state of an AWS networkfirewall Firewall
              resource.
            displayName: Firewall
            kind: Firewall
            name: firewalls.networkfirewall.services.k8s.aws
            version: v1alpha1
          - description: RuleGroup represents the state of an AWS networkfirewall
              RuleGroup resource.
            displayName: RuleGroup
            kind: RuleGroup
            name: rulegroups.networkfirewall.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Network Firewall resources in AWS from within your Kubernetes cluster.

          **About Amazon Network Firewall**

          AWS Network Firewall is a stateful, managed, network firewall and intrusion detection and prevention service for your virtual private cloud (VPC) that you create in Amazon Virtual Private Cloud (Amazon VPC).
          With Network Firewall, you can filter traffic at the perimeter of your VPC. This includes filtering traffic going to and coming from an internet gateway, NAT gateway, or over VPN or AWS Direct Connect. Network Firewall uses the open source intrusion prevention system (IPS), Suricata, for stateful inspection. Network Firewall supports Suricata compatible rules. For more information, see [Working with stateful rule groups in AWS Network Firewall](https://docs.aws.amazon.com/network-firewall/latest/developerguide/stateful-rule-groups-ips.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Network Firewall
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - networkfirewall
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Network Firewall Developer Resources
          url: https://aws.amazon.com/network-firewall/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: network firewall maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-networkfirewall-controller@sha256:f4f39f53a83482b8645cc1b3121b0d988d7c0fa44c07e57502980ff8796d6e76
        - public.ecr.aws/aws-controllers-k8s/networkfirewall-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-networkfirewall-controller.v1.2.0
        version: 1.2.0
      - name: ack-networkfirewall-controller.v1.1.2
        version: 1.1.2
      - name: ack-networkfirewall-controller.v1.1.1
        version: 1.1.1
      - name: ack-networkfirewall-controller.v1.1.0
        version: 1.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-networkfirewall-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: redhat.com
    name: special-resource-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: special-resource-operator.v4.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sro.openshift.io/v1beta1",
                "kind": "SpecialResource",
                "metadata": {
                  "name": "simple-kmod"
                },
                "spec": {
                  "chart": {
                    "name": "simple-kmod",
                    "repository": {
                      "name": "example",
                      "url": "file:///charts/example"
                    },
                    "version": "0.0.1"
                  },
                  "driverContainer": {
                    "source": {
                      "git": {
                        "ref": "master",
                        "uri": "https://github.com/openshift-psap/kvc-simple-kmod.git"
                      }
                    }
                  },
                  "namespace": "simple-kmod",
                  "set": {
                    "apiVersion": "sro.openshift.io/v1beta1",
                    "buildArgs": [
                      {
                        "name": "KMODVER",
                        "value": "SRO"
                      }
                    ],
                    "kind": "Values",
                    "kmodNames": [
                      "simple-kmod",
                      "simple-procfs-kmod"
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional, Storage
          containerImage: quay.io/openshift-psap/special-resource-operator:release-4.9
          description: The special resource operator is an orchestrator for resources
            in a cluster required to deploy special hardware and software. Examples
            include hardware accelerators or software defined storage, where extra
            management or kernel modules are needed.
          olm.skipRange: '>=4.6.0 <4.9.0'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SpecialResource is the Schema for the specialresources API
            displayName: Special Resource
            kind: SpecialResource
            name: specialresources.sro.openshift.io
            version: v1beta1
          required:
          - description: Discovers special resources and labels the nodes with the
              PCI vendor ID.
            displayName: Node Feature Discovery
            kind: NodeFeatureDiscovery
            name: nodefeaturediscoveries.nfd.openshift.io
            version: v1
        description: "## About the managed application \nThe SRO will deploy the complete
          stack for enabling the accelerator in a cluster. \nIt manages the drivers,
          device-plugin, node-exporter, grafana and feature discovery.\n## About this
          Operator\n README: [https://github.com/openshift-psap/special-resource-operator](https://github.com/openshift-psap/special-resource-operator)\n\n##
          Prerequisites for enabling this Operator\nThe SRO has a dependency on NFD
          (Node Feature Discovery)\n"
        displayName: Special Resource Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GPI
        links:
        - name: README
          url: https://github.com/openshift-psap/special-resource-operator
        maintainers:
        - email: zkaiser@redhat.com
          name: Zvonko Kaiser
        - email: dagray@redhat.com
          name: David Gray
        maturity: alpha
        provider:
          name: Red Hat
          url: redhat.com
        relatedImages:
        - quay.io/openshift-psap/special-resource-operator:release-4.9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy
        - quay.io/openshift-community-operators/special-resource-operator@sha256:df87c400713311f2495d6d02769acf29e5251330194f992c11719063095fdaea
        version: 4.9.0
      entries:
      - name: special-resource-operator.v4.9.0
        version: 4.9.0
      - name: special-resource-operator.v4.8.2
        version: 4.8.2
      - name: special-resource-operator.v4.8.1
        version: 4.8.1
      - name: special-resource-operator.v4.8.0
        version: 4.8.0
      name: alpha
    defaultChannel: alpha
    packageName: special-resource-operator
    provider:
      name: Red Hat
      url: redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhpam-kogito-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhpam-kogito-operator.7.13.5-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "ruleunit-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogitoinfra-sample"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "kafka.strimzi.io/v1beta2",
                    "kind": "Kafka",
                    "name": "kogito-kafka"
                  }
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/rhpam-7/rhpam-kogito-rhel8-operator@sha256:19497d4aff0ea3ea114dccb0d0e265458bb14ba6d325353eb82b554547dbd2e4
          description: RHPAM Kogito Operator for deployment and management of Kogito
            services.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Process Automation
            Manager", "Red Hat Decision Manager"]'
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/rhpam-kogito-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.rhpam.kiegroup.org
            version: v1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.rhpam.kiegroup.org
            version: v1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.rhpam.kiegroup.org
            version: v1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.rhpam.kiegroup.org
            version: v1
        description: |-
          RHPAM Kogito Operator is designed for deployment and management of Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Builds a RHPAM Kogito service from a remote git repository and creates a custom image for the given runtime: Red Hat build of Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Deploy RHPAM Kogito service from user provided image.
          * Setup Grafana Dashboard when Grafana Operator is available in cluster.
          * Create Prometheus monitor object when Prometheus operator is available in cluster.

          **IMPORTANT!** RHPAM Kogito Operator may need Grafana and Prometheus Operator to configure monitoring in cases if you do not provide these services beforehand. If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the RHPAM Kogito Operator.
        displayName: RHPAM Kogito Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-process-automation-manager
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_process_automation_manager/7.13/html/getting_started_with_red_hat_build_of_kogito_in_red_hat_process_automation_manager/assembly-deploying-kogito-microservices-on-openshift
        - name: Source
          url: https://github.com/kiegroup/kogito-operator/
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9492c67eaa7ab37df6f5fa623c4aac955b7d7ffaab9ae2e57dea745e82907e40
        - registry.redhat.io/rhpam-7/rhpam-kogito-rhel8-operator-bundle@sha256:0192000a2994a62a904ce4aabfc1ff04caf2fa9d779d27c016922b9121877fac
        - registry.redhat.io/rhpam-7/rhpam-kogito-rhel8-operator@sha256:19497d4aff0ea3ea114dccb0d0e265458bb14ba6d325353eb82b554547dbd2e4
        version: 7.13.5-4
      entries:
      - name: rhpam-kogito-operator.7.13.5-4
        version: 7.13.5-4
      - name: rhpam-kogito-operator.7.13.5-3
        version: 7.13.5-3
      - name: rhpam-kogito-operator.7.13.5-2
        version: 7.13.5-2
      - name: rhpam-kogito-operator.7.13.5-1
        version: 7.13.5-1
      - name: rhpam-kogito-operator.7.13.4-3
        version: 7.13.4-3
      - name: rhpam-kogito-operator.7.13.4-2
        version: 7.13.4-2
      - name: rhpam-kogito-operator.7.13.4-1
        version: 7.13.4-1
      - name: rhpam-kogito-operator.7.13.3-1
        version: 7.13.3-1
      - name: rhpam-kogito-operator.7.13.2-3
        version: 7.13.2-3
      - name: rhpam-kogito-operator.7.13.2-2
        version: 7.13.2-2
      - name: rhpam-kogito-operator.7.13.2-1
        version: 7.13.2-1
      - name: rhpam-kogito-operator.7.13.1-2
        version: 7.13.1-2
      - name: rhpam-kogito-operator.7.13.1-1
        version: 7.13.1-1
      - name: rhpam-kogito-operator.7.13.0-1
        version: 7.13.0-1
      - name: rhpam-kogito-operator.v7.12.0-4
        version: 7.12.0-4
      - name: rhpam-kogito-operator.v7.12.0-3
        version: 7.12.0-3
      - name: rhpam-kogito-operator.v7.12.0-2
        version: 7.12.0-2
      name: 7.x
    defaultChannel: 7.x
    packageName: rhpam-kogito-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: t8c
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: t8c-operator.v42.22.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.5"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.22
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.22
        - quay.io/openshift-community-operators/t8c@sha256:3c48e0bb9fd04d86d92bddb5bc2367f7ee4b86af74421c8dcbd809a7ba657770
        version: 42.22.0
      entries:
      - name: t8c-operator.v42.22.0
        version: 42.22.0
      - name: t8c-operator.v42.21.0
        version: 42.21.0
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: stable
    - currentCSV: t8c-operator.v42.10.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.10
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:6e5cbb3287ad3ec69f3064fd5dd88f0e4794fef985bab390c5135c7162c2872c
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.10
        version: 42.10.0
      entries:
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.10.0
    - currentCSV: t8c-operator.v42.10.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.10
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:6e5cbb3287ad3ec69f3064fd5dd88f0e4794fef985bab390c5135c7162c2872c
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.10
        version: 42.10.0
      entries:
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.12.0
    - currentCSV: t8c-operator.v42.13.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.7"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.13
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:088d0eebf60c8f6961ca72c268f61d12648d575aa41552ae6398fefc6d9700cb
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.13
        version: 42.13.0
      entries:
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.13.0
    - currentCSV: t8c-operator.v42.14.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.7"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.14
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:d6d444e642bfd567eb40c7e084f5df743c23b47935e52e35ef541c67fcc00433
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.14
        version: 42.14.0
      entries:
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.14.0
    - currentCSV: t8c-operator.v42.15.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.6.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.15
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:b3469cd953ef2015fad2f7f96d960cee5ecaa6c19df631a9c882154ab5b3de98
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.15
        version: 42.15.0
      entries:
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.15.0
    - currentCSV: t8c-operator.v42.16.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.16
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:f49d3eddbfcec1018fd3716cd0ec2addef9961d2d308099636541868566979b0
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.16
        version: 42.16.0
      entries:
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.16.0
    - currentCSV: t8c-operator.v42.17.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.6.6"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.17
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:403b29a6262ba0e06de117f788aea7224268b798868c3e5b738b05e96df20456
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.17
        version: 42.17.0
      entries:
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.17.0
    - currentCSV: t8c-operator.v42.18.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.1"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.18
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.18
        - quay.io/openshift-community-operators/t8c@sha256:4bfaf97ab09a1aff1316536b99957b1f82763b009dde6d08fc9eea1fdd290fbf
        version: 42.18.0
      entries:
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.18.0
    - currentCSV: t8c-operator.v42.19.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.2"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.19
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:61f1ea9b3851d7272703f5bc21203ff03bb35fd52ed9780d0cf996379c78a00b
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.19
        version: 42.19.0
      entries:
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.19.0
    - currentCSV: t8c-operator.v42.20.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.20
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:48a5a9fbfa92b4b87b3653613467a3fcceacadbbabd274e367b40f6871039cc8
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.20
        version: 42.20.0
      entries:
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.20.0
    - currentCSV: t8c-operator.v42.21.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.4"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.21
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:d65834d8f9946c2764d45666c90c50f428b74afe7b066d666c18e9545994c9a8
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.21
        version: 42.21.0
      entries:
      - name: t8c-operator.v42.21.0
        version: 42.21.0
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.21.0
    - currentCSV: t8c-operator.v42.22.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.7.5"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.22
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:3c48e0bb9fd04d86d92bddb5bc2367f7ee4b86af74421c8dcbd809a7ba657770
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.22
        version: 42.22.0
      entries:
      - name: t8c-operator.v42.22.0
        version: 42.22.0
      - name: t8c-operator.v42.21.0
        version: 42.21.0
      - name: t8c-operator.v42.20.0
        version: 42.20.0
      - name: t8c-operator.v42.19.0
        version: 42.19.0
      - name: t8c-operator.v42.18.0
        version: 42.18.0
      - name: t8c-operator.v42.17.0
        version: 42.17.0
      - name: t8c-operator.v42.16.0
        version: 42.16.0
      - name: t8c-operator.v42.15.0
        version: 42.15.0
      - name: t8c-operator.v42.14.0
        version: 42.14.0
      - name: t8c-operator.v42.13.0
        version: 42.13.0
      - name: t8c-operator.v42.12.0
        version: 42.12.0
      - name: t8c-operator.v42.10.0
        version: 42.10.0
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.22.0
    - currentCSV: t8c-operator.v42.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.4.3"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.6
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:4964196aba839fde569ce58ab7e4eef438c9638ae4057194f2d7a58eaa5a98d9
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.6
        version: 42.6.0
      entries:
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.6.0
    - currentCSV: t8c-operator.v42.7.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.4.6"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.7
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.7
        - quay.io/openshift-community-operators/t8c@sha256:46c815fa635d58820757f41b1d8f04333638c39471f4d6c901a6500379680b57
        version: 42.7.0
      entries:
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.7.0
    - currentCSV: t8c-operator.v42.8.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.0"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.8
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:d8a575a84dd86d241acaaec53af1e164bc1ff1b95b5eb710851ae698bbed6bf5
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.8
        version: 42.8.0
      entries:
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.8.0
    - currentCSV: t8c-operator.v42.9.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Xl","metadata":{"name":"xl-release"},"spec":{"global":{"tag":"8.5.1"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: registry.connect.redhat.com/turbonomic/t8c-operator:42.9
          createdAt: "2019-07-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/t8c-install/tree/master/operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Turbonomic Platform Operator
            kind: Xl
            name: xls.charts.helm.k8s.io
            version: v1
        description: |-
          ### Realtime Decision Automation for Multicloud Applications
          Turbonomic Workload Automation for Multicloud simultaneously optimizes performance, compliance, and cost in real-time. Workloads are precisely resourced, automatically, to perform while satisfying business constraints:
          * Continuous placement of workload across multiple clouds both on-prem and public clouds providers.
          * Continuous scaling for applications and the underlying infrastructure.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a public APIs already exposed by application and infrastructure instrumentation to discover and monitor your environment.
          Turbonomic determines the right actions that drive continuous health, including continuous placement and continuous scaling for applications and the underlying cluster.
          Turbonomic leverages the built-on orchestration provided by the application and infrastructure deployment tools and automates the execution of these actions to continiously meet the respective service level objective of each application service.
        displayName: Turbonomic Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Turbonomic Platform Operator
          url: https://github.com/turbonomic/t8c-install/tree/master/operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/t8c@sha256:dfdc8fbdfc0ee76b2d5c62f6fd5deac2c50756661871d8b4357e25043e5ce66a
        - registry.connect.redhat.com/turbonomic/t8c-operator:42.9
        version: 42.9.0
      entries:
      - name: t8c-operator.v42.9.0
        version: 42.9.0
      - name: t8c-operator.v42.8.0
        version: 42.8.0
      - name: t8c-operator.v42.7.0
        version: 42.7.0
      - name: t8c-operator.v42.6.0
        version: 42.6.0
      - name: t8c-operator.v42.5.0
        version: 42.5.0
      - name: t8c-operator.v42.4.0
        version: 42.4.0
      - name: t8c-operator.v42.3.0
        version: 42.3.0
      - name: t8c-operator.v42.2.0
        version: 42.2.0
      name: v42.9.0
    defaultChannel: stable
    packageName: t8c
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HPE
      provider-url: ""
    name: hpe-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hpe-csi-operator.v3.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "storage.hpe.com/v1",
                "kind": "HPECSIDriver",
                "metadata": {
                  "name": "hpecsidriver-sample"
                },
                "spec": {
                  "controller": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  },
                  "csp": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  },
                  "disable": {
                    "alletra6000": false,
                    "alletra9000": false,
                    "alletraStorageMP": false,
                    "b10000FileService": false,
                    "nimble": false,
                    "primera": false
                  },
                  "disableHostDeletion": false,
                  "disableNodeConfiguration": false,
                  "disableNodeConformance": false,
                  "disableNodeGetVolumeStats": false,
                  "disableNodeMonitor": false,
                  "disablePreInstallHooks": false,
                  "imagePullPolicy": "IfNotPresent",
                  "images": {
                    "b10000FileServiceCSP": "quay.io/hpestorage/alletrastoragemp-b10000-nfs-csp@sha256:6a1855a2ef1a83b886bb1f45b596e8e420e5e13c84bbf446c8c202eaf27a2013",
                    "csiAttacher": "registry.k8s.io/sig-storage/csi-attacher@sha256:5aaefc24f315b182233c8b6146077f8c32e274d864cb03c632206e78bd0302da",
                    "csiControllerDriver": "quay.io/hpestorage/csi-driver@sha256:27f3bd05372b4ed705b90461d053388a4f6d9cefa0cd3033e2747cbe1a7c045f",
                    "csiExtensions": "quay.io/hpestorage/csi-extensions@sha256:27074aaa8df3b867cfa3d12318612c45f8e541d750c27db5e080734592160c89",
                    "csiNodeDriver": "quay.io/hpestorage/csi-driver@sha256:27f3bd05372b4ed705b90461d053388a4f6d9cefa0cd3033e2747cbe1a7c045f",
                    "csiNodeDriverRegistrar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97",
                    "csiProvisioner": "registry.k8s.io/sig-storage/csi-provisioner@sha256:bb057f866177d5f4139a1527e594499cbe0feeb67b63aaca8679dfdf0a6016f9",
                    "csiResizer": "registry.k8s.io/sig-storage/csi-resizer@sha256:8ddd178ba5d08973f1607f9b84619b58320948de494b31c9d7cd5375b316d6d4",
                    "csiSnapshotter": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:5f4bb469fec51147ce157329dab598c758da1b018bad6dad26f0ff469326d769",
                    "csiVolumeGroupProvisioner": "quay.io/hpestorage/volume-group-provisioner@sha256:0a5f39f52113b963978a695bb8e5a5a3c4d387a02eb4d4a9647b4bc804de7399",
                    "csiVolumeGroupSnapshotter": "quay.io/hpestorage/volume-group-snapshotter@sha256:177d9abf8fbd3ac26ca4c12ca4b4adde20ebab308c79f10b04632f0171746fa8",
                    "csiVolumeMutator": "quay.io/hpestorage/volume-mutator@sha256:bf6beac1af5edcd3c9774f0dcc9579b79ef9cc8e4b74a4238082ab9aa443b5ed",
                    "nfsProvisioner": "quay.io/hpestorage/nfs-provisioner@sha256:5bf5952453ecca28e26724df85ebd5c8f0b7479ae4cb683d4a09c415da00e002",
                    "nimbleCSP": "quay.io/hpestorage/alletra-6000-and-nimble-csp@sha256:5480ffdebd74fdc547bc4a11b4434abac7bbfee3cee349f1ac893fbad84bb8d1",
                    "primera3parCSP": "quay.io/hpestorage/alletra-9000-primera-and-3par-csp@sha256:8af6e87075c47ba8d9714d55848ab2a0fef62b0768681e30d9e63ed7f396b0bf"
                  },
                  "iscsi": {
                    "chapSecretName": ""
                  },
                  "kubeletRootDir": "/var/lib/kubelet",
                  "logLevel": "info",
                  "maxVolumesPerNode": 100,
                  "node": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/hpestorage/csi-driver-operator@sha256:a3db9916f921de1379d4df953904bddb0057eee63705f57b435e40439c52ffca
          createdAt: "2025-12-17T08:03:50Z"
          description: A Container Storage Interface (CSI) driver for HPE storage
            platforms. The CSI driver allows you to use HPE storage with your preferred
            container orchestrator.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=1.0.0 <3.0.2'
          operatorframework.io/suggested-namespace: hpe-storage
          operatorhub.io/ui-metadata-max-k8s-version: "1.33"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/hpe-storage/co-deployments
          support: HPE
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HPE CSI Driver for Kubernetes
            displayName: HPECSIDriver
            kind: HPECSIDriver
            name: hpecsidrivers.storage.hpe.com
            version: v1
        description: |
          The HPE CSI Operator for OpenShift deploys the HPE CSI Driver on Kubernetes and OpenShift for dynamic provisioning of persistent volumes on HPE storage systems.
          The HPE CSI Driver for Kubernetes leverages HPE storage platforms to provide scalable and persistent storage for stateful applications.
          Please refer to our CSI driver [documentation](https://scod.hpedev.io/csi_driver/index.html) for supported HPE platforms and full list of supported CSI features.
          ## Installation
          Refer to the HPE CSI Operator for OpenShift [documentation](https://scod.hpedev.io/csi_driver/deployment.html#operator).
        displayName: HPE CSI Operator for OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - HPE
        - HPE CSI
        - HPE Storage
        - CSI
        links:
        - name: Documentation
          url: https://scod.hpedev.io/csi_driver/index.html
        maintainers:
        - email: dev-hi-containers@hpe.com
          name: HPE Storage Containers Team
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: HPE
        relatedImages:
        - registry.k8s.io/sig-storage/csi-resizer@sha256:8ddd178ba5d08973f1607f9b84619b58320948de494b31c9d7cd5375b316d6d4
        - quay.io/hpestorage/csi-driver@sha256:27f3bd05372b4ed705b90461d053388a4f6d9cefa0cd3033e2747cbe1a7c045f
        - quay.io/hpestorage/volume-group-provisioner@sha256:0a5f39f52113b963978a695bb8e5a5a3c4d387a02eb4d4a9647b4bc804de7399
        - quay.io/hpestorage/volume-group-snapshotter@sha256:177d9abf8fbd3ac26ca4c12ca4b4adde20ebab308c79f10b04632f0171746fa8
        - quay.io/hpestorage/volume-mutator@sha256:bf6beac1af5edcd3c9774f0dcc9579b79ef9cc8e4b74a4238082ab9aa443b5ed
        - registry.k8s.io/sig-storage/csi-attacher@sha256:5aaefc24f315b182233c8b6146077f8c32e274d864cb03c632206e78bd0302da
        - quay.io/hpestorage/alletrastoragemp-b10000-nfs-csp@sha256:6a1855a2ef1a83b886bb1f45b596e8e420e5e13c84bbf446c8c202eaf27a2013
        - registry.connect.redhat.com/hpestorage/csi-driver-operator@sha256:a3db9916f921de1379d4df953904bddb0057eee63705f57b435e40439c52ffca
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97
        - quay.io/hpestorage/alletra-9000-primera-and-3par-csp@sha256:8af6e87075c47ba8d9714d55848ab2a0fef62b0768681e30d9e63ed7f396b0bf
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:5f4bb469fec51147ce157329dab598c758da1b018bad6dad26f0ff469326d769
        - registry.connect.redhat.com/hpestorage/csi-driver-operator-bundle@sha256:ae86d21d2f53c21a2e7b6494937b6cbcf8f1d08c500cd2d1ea3090e40f2da96f
        - quay.io/hpestorage/alletra-6000-and-nimble-csp@sha256:5480ffdebd74fdc547bc4a11b4434abac7bbfee3cee349f1ac893fbad84bb8d1
        - quay.io/hpestorage/nfs-provisioner@sha256:5bf5952453ecca28e26724df85ebd5c8f0b7479ae4cb683d4a09c415da00e002
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:bb057f866177d5f4139a1527e594499cbe0feeb67b63aaca8679dfdf0a6016f9
        - quay.io/hpestorage/csi-extensions@sha256:27074aaa8df3b867cfa3d12318612c45f8e541d750c27db5e080734592160c89
        version: 3.0.2
      entries:
      - name: hpe-csi-operator.v3.0.2
        version: 3.0.2
      name: stable
    defaultChannel: stable
    packageName: hpe-csi-operator
    provider:
      name: HPE
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: GitLab, Inc.
      provider-url: https://gitlab.com
    name: gitlab-runner-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-runner-operator.v1.43.3
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta2",
                "kind": "Runner",
                "metadata": {
                  "name": "gitlab-runner-example",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "gitlabUrl": "https://gitlab.example.com",
                  "token": "runner-token-secret",
                  "tags": "kubernetes,example",
                  "concurrent": 10,
                  "imagePullPolicy": "IfNotPresent"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery, Developer Tools
          containerImage: registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
          createdAt: "2025-11-28T23:15:09Z"
          description: GitLab Runner operator manages lifecycle of GitLab Runner instances
          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: "true"
          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.skipRange: '>=1.11.0 <1.43.3'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: none
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
          support: GitLab, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Runner is the open source project used to run your jobs and
              send the results back to GitLab
            displayName: GitLab Runner
            kind: Runner
            name: runners.apps.gitlab.com
            version: v1beta2
        description: |-
          GitLab Runner is the lightweight, highly-scalable agent that runs your build jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.

              The GitLab Runner operator manages the lifecycle of GitLab Runner in Kubernetes or Openshift clusters. The operator aims to automate the tasks needed to run your CI/CD jobs in your container orchestration platform.

              ## Prerequisites

                For Kubernetes cluster, install cert-manager:

                ```shell
                kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.7.1/cert-manager.yaml
                ```

              ## GitLab Runner version

              This version of **GitLab Runner Operator** ships with **GitLab Runner v18.6.3**.

              To use a different version of **GitLab Runner** change the [`runnerImage` and `helperImage` properties](https://docs.gitlab.com/runner/configuration/configuring_runner_operator.html#operator-properties).

              ## Usage

               To link a GitLab Runner instance to a self-hosted GitLab instance or the hosted [GitLab](https://gitlab.com), you first need to:

               1. Create a secret containing the `runner-token` from your GitLab project.

                ```
                cat > gitlab-runner-secret.yml << EOF
                apiVersion: v1
                kind: Secret
                metadata:
                  name: gitlab-runner-secret
                type: Opaque
                # Only one of the following fields must be set. The Operator will fail to register Runner if both are provided.
                # # NOTE: runner-registration-token is deprecated and will be removed in GitLab 18.0. You should use runner-token instead.
                stringData:
                  runner-token: REPLACE_ME # your project runner token
                  # runner-registration-token: "" # your project runner secret
                EOF
                ```

                ```
                oc apply -f gitlab-runner-secret.yml
                ```

               2. Create the Custom Resource Definition (CRD) file and include the following information. The tags value must be openshift for the job to run.

                 ```
                 cat > gitlab-runner.yml << EOF
                 apiVersion: apps.gitlab.com/v1beta2
                 kind: Runner
                 metadata:
                   name: gitlab-runner
                 spec:
                   gitlabUrl: https://gitlab.example.com
                   buildImage: alpine
                   token: gitlab-runner-secret
                   tags: openshift
                 EOF
                 ```

                ```
                oc apply -f gitlab-runner.yml
                ```

              ## Full documentation

              Visit [Install GitLab Runner Operator](https://docs.gitlab.com/runner/install/operator.html)
        displayName: GitLab Runner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GitLab
        - CI/CD
        - DevOps
        - SAST
        - DAST
        links:
        - name: Gitlab Runner Operator
          url: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
        - name: GitLab Docs
          url: https://docs.gitlab.com
        - name: GitLab Runner
          url: https://docs.gitlab.com/runner/
        - name: GitLab CI/CD
          url: https://docs.gitlab.com/ee/ci/quick_start/
        maintainers:
        - email: support@gitlab.com
          name: Georgi N. Georgiev
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: GitLab, Inc.
          url: https://gitlab.com
        relatedImages:
        - registry.connect.redhat.com/gitlab/gitlab-runner-operator-bundle@sha256:0a633ff6d83e6fe961516724c51c16bb06f84efecfca16c36b17d525d3b937c3
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-helper-ocp@sha256:9c1723a09b7255e8ab13954375e263965de1955d9f1fdc5e64d7610c7495e614
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-ocp@sha256:de78dc586ebc1c1ea6e4be7b8a21e949bc24860051e3eab93f3468751a04ca0a
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/openshift4/ose-kube-rbac-proxy@sha256:bb84ead437042603254efcb703442be8500a9450b10bbcaaee81b48a6ed869ea
        version: 1.43.3
      entries:
      - name: gitlab-runner-operator.v1.43.3
        version: 1.43.3
      - name: gitlab-runner-operator.v1.43.2
        version: 1.43.2
      - name: gitlab-runner-operator.v1.43.1
        version: 1.43.1
      - name: gitlab-runner-operator.v1.43.0
        version: 1.43.0
      name: stable
    defaultChannel: stable
    packageName: gitlab-runner-operator
    provider:
      name: GitLab, Inc.
      url: https://gitlab.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-kms-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-kms-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kms.services.k8s.aws/v1alpha1",
                "kind": "Alias",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "kms.services.k8s.aws/v1alpha1",
                "kind": "Grant",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "kms.services.k8s.aws/v1alpha1",
                "kind": "Key",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/kms-controller:1.2.0
          createdAt: "2025-11-29T03:55:26Z"
          description: AWS KMS controller is a service controller for managing KMS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alias represents the state of an AWS kms Alias resource.
            displayName: Alias
            kind: Alias
            name: aliases.kms.services.k8s.aws
            version: v1alpha1
          - description: Grant represents the state of an AWS kms Grant resource.
            displayName: Grant
            kind: Grant
            name: grants.kms.services.k8s.aws
            version: v1alpha1
          - description: Key represents the state of an AWS kms Key resource.
            displayName: Key
            kind: Key
            name: keys.kms.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Key Management Service (KMS) resources in AWS from within your Kubernetes cluster.

          **About Amazon KMS**

          AWS Key Management Service (AWS KMS) is a managed service that makes it easy for you to create and control the cryptographic keys that are used to protect your data. AWS KMS uses hardware security modules (HSM) to protect and validate your AWS KMS keys under the [FIPS 140-2 Cryptographic Module Validation Program](https://csrc.nist.gov/projects/cryptographic-module-validation-program/Certificate/3139), except in the China (Beijing) and China (Ningxia) Regions.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon KMS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kms
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon KMS Developer Resources
          url: https://aws.amazon.com/kms/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: kms maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/kms-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-kms-controller@sha256:fcadd7b195741affd5ee61bf911911408153dcfa26192ceff8c9d0d830acd6e0
        version: 1.2.0
      entries:
      - name: ack-kms-controller.v1.2.0
        version: 1.2.0
      - name: ack-kms-controller.v1.1.2
        version: 1.1.2
      - name: ack-kms-controller.v1.1.1
        version: 1.1.1
      - name: ack-kms-controller.v1.1.0
        version: 1.1.0
      - name: ack-kms-controller.v1.0.31
        version: 1.0.31
      - name: ack-kms-controller.v1.0.30
        version: 1.0.30
      - name: ack-kms-controller.v1.0.29
        version: 1.0.29
      - name: ack-kms-controller.v1.0.28
        version: 1.0.28
      - name: ack-kms-controller.v1.0.27
        version: 1.0.27
      - name: ack-kms-controller.v1.0.26
        version: 1.0.26
      - name: ack-kms-controller.v1.0.25
        version: 1.0.25
      - name: ack-kms-controller.v1.0.24
        version: 1.0.24
      - name: ack-kms-controller.v1.0.23
        version: 1.0.23
      - name: ack-kms-controller.v1.0.22
        version: 1.0.22
      - name: ack-kms-controller.v1.0.19
        version: 1.0.19
      - name: ack-kms-controller.v1.0.18
        version: 1.0.18
      - name: ack-kms-controller.v1.0.17
        version: 1.0.17
      - name: ack-kms-controller.v1.0.16
        version: 1.0.16
      - name: ack-kms-controller.v1.0.15
        version: 1.0.15
      - name: ack-kms-controller.v1.0.14
        version: 1.0.14
      - name: ack-kms-controller.v1.0.13
        version: 1.0.13
      - name: ack-kms-controller.v1.0.12
        version: 1.0.12
      - name: ack-kms-controller.v1.0.8
        version: 1.0.8
      - name: ack-kms-controller.v1.0.7
        version: 1.0.7
      - name: ack-kms-controller.v1.0.5
        version: 1.0.5
      - name: ack-kms-controller.v1.0.4
        version: 1.0.4
      - name: ack-kms-controller.v1.0.3
        version: 1.0.3
      - name: ack-kms-controller.v1.0.2
        version: 1.0.2
      - name: ack-kms-controller.v1.0.0
        version: 1.0.0
      - name: ack-kms-controller.v0.1.5
        version: 0.1.5
      - name: ack-kms-controller.v0.1.4
        version: 0.1.4
      - name: ack-kms-controller.v0.1.3
        version: 0.1.3
      - name: ack-kms-controller.v0.1.2
        version: 0.1.2
      - name: ack-kms-controller.v0.1.1
        version: 0.1.1
      - name: ack-kms-controller.v0.1.0
        version: 0.1.0
      - name: ack-kms-controller.v0.0.20
        version: 0.0.20
      - name: ack-kms-controller.v0.0.19
        version: 0.0.19
      - name: ack-kms-controller.v0.0.18
        version: 0.0.18
      - name: ack-kms-controller.v0.0.17
        version: 0.0.17
      - name: ack-kms-controller.v0.0.16
        version: 0.0.16
      - name: ack-kms-controller.v0.0.15
        version: 0.0.15
      - name: ack-kms-controller.v0.0.14
        version: 0.0.14
      - name: ack-kms-controller.v0.0.13
        version: 0.0.13
      - name: ack-kms-controller.v0.0.12
        version: 0.0.12
      - name: ack-kms-controller.v0.0.11
        version: 0.0.11
      - name: ack-kms-controller.v0.0.10
        version: 0.0.10
      - name: ack-kms-controller.v0.0.9
        version: 0.0.9
      - name: ack-kms-controller.v0.0.8
        version: 0.0.8
      - name: ack-kms-controller.v0.0.7
        version: 0.0.7
      - name: ack-kms-controller.v0.0.6
        version: 0.0.6
      - name: ack-kms-controller.v0.0.5
        version: 0.0.5
      - name: ack-kms-controller.v0.0.4
        version: 0.0.4
      - name: ack-kms-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-kms-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-prometheus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-prometheus-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:2a74517c3befcac1566f5c65e0f573e4378eafe4ba88816229a46557cc1b2b62
          createdAt: "2024-03-01T23:43:00Z"
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/prometheus-operator/prometheus-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:2a74517c3befcac1566f5c65e0f573e4378eafe4ba88816229a46557cc1b2b62
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:3901127db6a0cb2323651885f04a603391478f58ad2d5bcaa161a9e16332288e
        - registry.redhat.io/odf4/odf-prometheus-operator-bundle@sha256:978e6ca6c295ced191eaa8439ce80bb48ed8122409f34a334b5f05d25899be88
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager-rhel9@sha256:0033bfb29ebb2dcf16323276a9287f6f21339c1d797783f9d140909951b18f90
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader-rhel9@sha256:4eca079cbaf2b8e69eac9e8b8418ef091ef78b4a48a48dfc317d243c53d55758
        version: 4.19.9-rhodf
      entries:
      - name: odf-prometheus-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-prometheus-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-prometheus-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-prometheus-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-prometheus-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-prometheus-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-prometheus-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-prometheus-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-prometheus-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-prometheus-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-prometheus-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:f995093d6fd6c66e2c50cc4bceee9c739d09453ea85eca0232013632371fc594
          createdAt: "2024-03-01T23:43:00Z"
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/prometheus-operator/prometheus-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:101993f6e65d6fda8b90c583b718b720809182961f69bc777295f47e6df4d7ce
        - registry.redhat.io/odf4/odf-prometheus-operator-bundle@sha256:efc835326cd0bf95c479809f9e02c1ce921bedd3dd2a8e67605346ec623e4032
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager-rhel9@sha256:7e7e39f59a298ff2ca6aba00ce861866dc16bf39398e78523ba4e7600c46dea9
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader-rhel9@sha256:b99613494e9d6a4a8207323872d63cc02b830fc80a8bf972e62c64381aa4cd17
        - registry.redhat.io/openshift4/ose-prometheus-rhel9-operator@sha256:f995093d6fd6c66e2c50cc4bceee9c739d09453ea85eca0232013632371fc594
        version: 4.20.4-rhodf
      entries:
      - name: odf-prometheus-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-prometheus-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-prometheus-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-prometheus-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-prometheus-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-prometheus-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-activemqartemis: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/
    name: amq-broker-rhel8
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-broker-operator.v7.10.7-opr-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [{
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                    "name": "ex-aao",
                    "application": "ex-aao-app"
                },
                "spec": {
                    "deploymentPlan": {
                        "image": "placeholder",
                        "size": 2,
                        "requireLogin": false,
                        "persistenceEnabled": false,
                        "journalType": "nio",
                        "messageMigration": false,
                        "jolokiaAgentEnabled": false,
                        "managementRBACEnabled": true
                    }
                }
            }, {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                    "name": "ex-aaoaddress"
                },
                "spec": {
                    "addressName": "myAddress0",
                    "queueName": "myQueue0",
                    "routingType": "anycast"
                }
            }, {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                    "name": "ex-aaoscaledown"
                },
                "spec": {
                    "localOnly": "true"
                }
            }, {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                    "name": "ex-keycloak"
                },
                "spec": {
                    "loginModules": {
                        "propertiesLoginModules": [
                            {
                                "name": "prop-module",
                                "users": [
                                    {
                                        "name": "superman",
                                        "roles": [
                                            "root"
                                        ]
                                    }
                                ]
                            }
                        ]
                    },
                    "securityDomains": {
                        "brokerDomain": {
                            "name": "activemq",
                            "loginModules": [
                                {
                                    "name": "prop-module",
                                    "flag": "sufficient"
                                }
                            ]
                        }
                    }
                }
            }]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:1a7aa54d2799d238eb5f49f7a95a78a896f6bf8d222567e9118e0e3963cc9aad
          createdAt: "2021-06-18T00:02:04Z"
          description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A stateful deployment of one or more brokers
            displayName: AMQ Broker
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: Adding and removing addresses via custom resource definitions
            displayName: AMQ Broker Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: Provides message migration on clustered broker scaledown
            displayName: AMQ Broker Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: Security configuration for the broker
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
          to deploy and manage stateful AMQ Broker broker clusters
        displayName: Red Hat Integration - AMQ Broker for RHEL 8 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: rkieley@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:1a7aa54d2799d238eb5f49f7a95a78a896f6bf8d222567e9118e0e3963cc9aad
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c5f4c08e068b9721967cf7c7cbd9a9e93fb5e39b264dd13b653e99d8f3fa9e0e
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:5ff28e3062d3eabb9f52d8271b837fdab06cafbd8b8f732b1bc00de49ad69aad
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9a02decbc460ddfc501d8a4a9b41cd084776090951906b027838c0829e1fc15a
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:e140415e0361cabeab192ba6d22634283cd47749dd25e9cee4a775d3c409cd97
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:61e5a8c1e46f1c18648e0406e2a57c52f911979079020cc57c7a4b06a56940bb
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        version: 7.10.7-opr-1
      entries:
      - name: amq-broker-operator.v7.10.7-opr-1
        version: 7.10.7-opr-1
      - name: amq-broker-operator.v7.10.6-opr-1
        version: 7.10.6-opr-1
      - name: amq-broker-operator.v7.10.5-opr-1
        version: 7.10.5-opr-1
      - name: amq-broker-operator.v7.10.4-opr-1
        version: 7.10.4-opr-1
      - name: amq-broker-operator.v7.10.3-opr-3
        version: 7.10.3-opr-3
      - name: amq-broker-operator.v7.10.3-opr-2
        version: 7.10.3-opr-2
      - name: amq-broker-operator.v7.10.3-opr-1
        version: 7.10.3-opr-1
      - name: amq-broker-operator.v7.10.2-opr-2-0.1676475747.p
        version: 7.10.2-opr-2+0.1676475747.p
      - name: amq-broker-operator.v7.10.2-opr-2-0.1680622941.p
        version: 7.10.2-opr-2+0.1680622941.p
      - name: amq-broker-operator.v7.10.2-opr-2
        version: 7.10.2-opr-2
      - name: amq-broker-operator.v7.10.2-opr-1
        version: 7.10.2-opr-1
      - name: amq-broker-operator.v7.10.1-opr-2
        version: 7.10.1-opr-2
      - name: amq-broker-operator.v7.10.1-opr-1
        version: 7.10.1-opr-1
      - name: amq-broker-operator.v7.10.0-opr-4
        version: 7.10.0-opr-4
      - name: amq-broker-operator.v7.10.0-opr-3
        version: 7.10.0-opr-3
      - name: amq-broker-operator.v7.10.0-opr-2
        version: 7.10.0-opr-2
      - name: amq-broker-operator.v7.10.0-opr-1
        version: 7.10.0-opr-1
      name: 7.10.x
    - currentCSV: amq-broker-operator.v7.11.8-opr-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "application": "ex-aao-app",
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisSecurity is the Schema for the activemqartemissecurities
              API
            displayName: Active MQArtemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: |
          **Red Hat AMQ Broker** is a pure-Java multiprotocol message broker. It’s built on an efficient, asynchronous core with a fast journal for message persistence.

          You can provision multiple instances and update the broker configuration on the fly using the associated Custom Resource Definitions.
          In addition, you can use the following CRDs to configure your broker environment:

          - **Address CRD**: define addresses and queues for the brokers in your deployment
          - **Security CRD**: define the security configuration for the brokers in your deployment, including:
              - users and roles
              - role based access control
              - console access control

          ## Selecting a channel
          You can specify the channel used to track and receive updates for the Operator by selecting either to track the minor or patch level versions.

          ## Supported Features
          - **Console** - Allows you view the broker topology, clients and messages. Red Hat Fuse users can integrate the broker console into the Fuse console for OpenShift.
          - **Persistence** - ephemeral and stateful deployments.
          - **Advanced queueing** - Last value queues, message groups, topic hierarchies, and large message support.
          - **Multiprotocol** - AMQP 1.0, MQTT, STOMP, OpenWire, and HornetQ Core.
          - **Address Management** - Creates and manages addresses and queues.
          - **User Management** - Creates and manages broker users.
          - **Monitoring** - Support for monitoring using Prometheus and provided Grafana dashboards.
          - **Scaledown** - Ensure consistency of messages using message migration.

          ## Storage
          An efficient data storage infrastructure is essential to the optimal performance of AMQ Broker.  AMQ Broker supports:
            - **Ephemeral** (Recommended for development only!)
            - **Persistent**
              - For example, block or NFS storage.
          Note: Your cloud provider might provide options that are not suitable for AMQ Broker, for example Amazon Elastic File System.  If in doubt, contact Red Hat Support

          ## Documentation
          Documentation for the current release is available from the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq/2021.q4/#category-amq-broker).
        displayName: Red Hat Integration - AMQ Broker for RHEL 8 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:f2651cb097eb631fc6af90e4a8404d36516aa2205c546125bf0c37739ab525fa
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f37f98c809c6f29a83e3d5a3ac4494e28efe9b25d33c54f533c6a08662244622
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:67ae74e72927557c55611d0248347b2099b117ac1aa245dac05856fe782fb59c
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:34ab1f66d8daa544e3823464383e9788e307665c875499838fbed95f3a74a4dd
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:97c3aa5673610875a53571449f7d5210ae8d675072d044f17b416725ed0dba88
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:d4010af53429502f41d722c39d69a7bb147bb06d19e3d4a69de70dbe88e3990e
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:1a9f13fd565113055b2aa2022bd0709a63c1dc058a8570e0fd7eba5c7b101334
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:c3ac4602b48867f3d4f7cc0efd5c9f133098e409626cfb402f80386ff460dbf4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0d857b95084e39c011651be89482d4dcc77c2d1c3ac3c6a819f3c9d5a57a425f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:45a5e054546a2c1ee338518f8477f728f5f7108c9dd8b516b4c79d4a7d6f5ba7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0b2126cfb6054fdf428c1f43b69e36e93a09a49ce15350e9273c98cc08c6598b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:e6f71001dccfbbe1cd7cf4fded69e181c10f46cc5c8bd3a8d3045a3f3ac41e2f
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:9465e398a55c89c121b3ae50374414190a991839fa5e1018fc02551f6aa3b9aa
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:83faefa67b33d93836a1be3cb438bb147242d602565dcbe59b4ed42b26072191
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:56282c6a461e945a83bffb13d3f3d8d9621800f0fc9cd755a75d21eacd8f5fbf
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ba21779c29b431a22c824e91820705c9501fb0b7d6f7e1ae22fcd3becc8c8a2f
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:2cb14c917246ffcbd5d861ca6f3d58cb1146a4e55715ee08160e115d3dfc1c3e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:5d39f26f06769fe5c989ea0e0ee8f9166120e152ce2c9bc3336fc8d7cab2ff92
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:ba0f5df7da08bc030ff5e0e68ecb52a931c25f6b67c6556aa8a9661c82d69d42
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:e03945756d86bd189e8c33027fa668d2065c168510085dfd06defd9f40d3e0ab
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:7abfdcfd7b2d3d12b9234f7b057bd199bceefa47bdf02f62236f82a13fdbf5b7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3c00b524722b500ff0922fe7a8722868557512183a8f69248f37a68c45c6a770
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:86ff145bd68e797a0507495570063b54cbe4186fcb4acd83c900406619ef9524
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ff819e913406911735da39c51699405f747bd697116a273a00897ff176bf05ff
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:aa7af7e038a12b5202108b362c8af243954603e84034a16c0192684c86d5d28b
        - registry.redhat.io/amq7/amq-broker-openjdk-11-rhel8@sha256:967d840b831b310abd3a468a8652d1fa48b2ce28b342bfab53999245deb004f1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c5f4c08e068b9721967cf7c7cbd9a9e93fb5e39b264dd13b653e99d8f3fa9e0e
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:3219f90789690a3c5cfcc86e5f602c443e75f1fdb3a19660f43ee3996bfa8f62
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:4e09ee3bd8ff3479fdd00e221b7b1505ae04ca6c64fd6bc9e2f1a34b8e98d137
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:4b7796235a0a545db83570add7a675fdd9d82b17f931eb81d0cafbedb1fbf22c
        - registry.redhat.io/amq7/amq-broker-init-openj9-11-rhel8@sha256:5ff28e3062d3eabb9f52d8271b837fdab06cafbd8b8f732b1bc00de49ad69aad
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:d2ae3defac36f00112c6b773e13626336ba15d6f50f905ad1c33f122bfe1a6a9
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:83ed89fa942ccbf4451954956db42138c83f9b015e7de07fc159ddc4bb6dc843
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:f58678f03a250dbb296ebeb112c9150340155799ba4dad9e90bf347b9ed0ca7b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a8b2a9364fd06c8e1c29b8f8f28d3e4844bf7840a62b67137b663c558982d4a3
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:61e5a8c1e46f1c18648e0406e2a57c52f911979079020cc57c7a4b06a56940bb
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9a02decbc460ddfc501d8a4a9b41cd084776090951906b027838c0829e1fc15a
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:869cda365447b0b7b53ed21d2496884c15dc9c07295a9dfa0337c2c9974fe018
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:34739366153b825dcb113e0ed6115ef5656085cf8d47492789ff17464042b576
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-init-openjdk-11-rhel8@sha256:d4a9176f49ffd9db6051fbda15d47a1aa32c282fb5010d0caf5b9243e80bf055
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b575d6eebf44dc9049445e357488efb17a690953852419b534df30e0105b9ca4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b74d03ed852a3731467ffda95266ce49f2065972f1c37bf254f3d52b34c11991
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b0b3684ef1ebf8b44d3a4c46391984173792dde1bd7363ea06d43a8f95a717d0
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:6e9e0e3fddc44fbf87591d8904176407f1ec409d578a7d108c13cdd48d85131b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:c9eba0d1f9fba588711774f4db75221f057578407065127ed60c33eef564f499
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:137b893ad15e0cd5353bae134c8fae833257a12641b12d0f774f1565ce66f63c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:a94fa8135d3765363e442bda45df6e02a3e22bee7ea198bcb0d3584331a4320c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ff6fefad518a6c997d4c5a6e475ba89640260167f0bc27715daf3cc30116fad1
        - registry.redhat.io/amq7/amq-broker-openj9-11-rhel8@sha256:4440b20349032bb5c0bb2a8deb89832b37767af6f0b3208b067867a85641913e
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:979b59325aa0f34eb05625201beba53fccbb83bd5eb80a89dcb5261ae358138f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:35b7d96d5065f280a528626abd2c3df84e79ccea93ab6bd8b8837af66c330f30
        version: 7.11.8-opr-1
      entries:
      - name: amq-broker-operator.v7.11.8-opr-1
        version: 7.11.8-opr-1
      - name: amq-broker-operator.v7.11.7-opr-2-1742200979
        version: 7.11.7-opr-2-1742200979
      - name: amq-broker-operator.v7.11.7-opr-2-1740583644
        version: 7.11.7-opr-2-1740583644
      - name: amq-broker-operator.v7.11.7-opr-2-1736956309
        version: 7.11.7-opr-2-1736956309
      - name: amq-broker-operator.v7.11.7-opr-2-1731330819
        version: 7.11.7-opr-2-1731330819
      - name: amq-broker-operator.v7.11.7-opr-2
        version: 7.11.7-opr-2
      - name: amq-broker-operator.v7.11.7-opr-1-1726157430
        version: 7.11.7-opr-1-1726157430
      - name: amq-broker-operator.v7.11.7-opr-1-1723204800
        version: 7.11.7-opr-1-1723204800
      - name: amq-broker-operator.v7.11.7-opr-1
        version: 7.11.7-opr-1
      - name: amq-broker-operator.v7.11.6-opr-2
        version: 7.11.6-opr-2
      - name: amq-broker-operator.v7.11.5-opr-1
        version: 7.11.5-opr-1
      - name: amq-broker-operator.v7.11.4-opr-1
        version: 7.11.4-opr-1
      - name: amq-broker-operator.v7.11.3-opr-1
        version: 7.11.3-opr-1
      - name: amq-broker-operator.v7.11.2-opr-1
        version: 7.11.2-opr-1
      - name: amq-broker-operator.v7.11.1-opr-2
        version: 7.11.1-opr-2
      - name: amq-broker-operator.v7.11.1-opr-1
        version: 7.11.1-opr-1
      - name: amq-broker-operator.v7.11.0-opr-3
        version: 7.11.0-opr-3
      - name: amq-broker-operator.v7.11.0-opr-2
        version: 7.11.0-opr-2
      name: 7.11.x
    - currentCSV: amq-broker-operator.v7.12.5-opr-1-0.1766088985.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          description: AMQ Broker Operator for RHEL 8 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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.substitutesFor: amq-broker-operator.v7.12.5-opr-1-0.1764078330.p
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - description: Provides internal message migration on clustered broker scaledown
            displayName: ActiveMQ Artemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: |
          **Red Hat AMQ Broker** is a pure-Java multiprotocol message broker. It’s built on an efficient, asynchronous core with a fast journal for message persistence.

          You can provision multiple instances and update the broker configuration on the fly using the associated Custom Resource Definitions.
          In addition, you can use the following CRDs to configure your broker environment:

          - **Address CRD**: define addresses and queues for the brokers in your deployment
          - **Security CRD**: define the security configuration for the brokers in your deployment, including:
              - users and roles
              - role based access control
              - console access control

          ## Selecting a channel
          You can specify the channel used to track and receive updates for the Operator by selecting either to track the minor or patch level versions.

          ## Supported Features
          - **Console** - Allows you view the broker topology, clients and messages. Red Hat Fuse users can integrate the broker console into the Fuse console for OpenShift.
          - **Persistence** - ephemeral and stateful deployments.
          - **Advanced queueing** - Last value queues, message groups, topic hierarchies, and large message support.
          - **Multiprotocol** - AMQP 1.0, MQTT, STOMP, OpenWire, and HornetQ Core.
          - **Address Management** - Creates and manages addresses and queues.
          - **User Management** - Creates and manages broker users.
          - **Monitoring** - Support for monitoring using Prometheus and provided Grafana dashboards.
          - **Scaledown** - Ensure consistency of messages using message migration.

          ## Storage
          An efficient data storage infrastructure is essential to the optimal performance of AMQ Broker.  AMQ Broker supports:
            - **Ephemeral** (Recommended for development only!)
            - **Persistent**
              - For example, block or NFS storage.
          Note: Your cloud provider might provide options that are not suitable for AMQ Broker, for example Amazon Elastic File System.  If in doubt, contact Red Hat Support

          ## Documentation
          Documentation for the current release is available from the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq/2021.q4/#category-amq-broker).
        displayName: Red Hat Integration - AMQ Broker for RHEL 8 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:cc438b4bc2b14f6bff4e5d32e7dc0fad6d2ca391c4e84b5ae925b7b40af76729
        - registry.redhat.io/amq7/amq-broker-rhel8-operator-bundle@sha256:92305253e5770277b74bea6f4bddcb918664df174ac1cf1bcfd84f261465f9a4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5e5d8b551ab8ca377e0bc939037970a2f31ee14e9f555853ebea2759d673895a
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b9f93c243ead118651083880786a81c624f390fcc3596c7ec5ebd55f34f95ea3
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:47fd4ce2533496828aba37bd1f9715e2164d5c90bd0fc6b25e7e0786d723bf01
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:bb6fbd68475a7852b4d99eea6c4ab313f9267da7963162f0d75375d7063409e7
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9cc48eecf1442ae04b8543fa5d4381a13bc2831390850828834d387006d1342b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:25c3732e945b4bc3e9aca721ce709d0217339b065d9dac9afdb6202e9fd8a799
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:5f842ebe9a6a4294a056ad10189a5f277cfd3fb4e6e0b3225e194bd5c131151d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ffffa9875f0379e9373f89f05eb06e5a193273bb04bc3aa5f85b044357b79098
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:29f07006ad62023c20d34971cb3ae900349efae5ab2918aaa8e5647d788032be
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:40ccaf2bb2e0f8132f2541b39cb835f17b38050b3ca9232f0861fd5fcaf4324a
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:dc13871dfed52402c40fd192900fc3cb5a49da4fa08e4ec4d0e23a879e83db25
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:16253895bc113f395dc6ab5cd511901e43b6ee676369ec80d598a8741c3c9bf4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7d53744ae8c77aea09c59165486c9ed0eaa131140f6b346042293bce0bd8a745
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:36ea76632f4928c6c34087d06b942c44f6d5bdd4f1828ab4e5efe36cdaf0632f
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:442b6638133d42fa7faa41d86e47be95cdca56c2e16efcd6e7e22991c3812a36
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d42d713da0ce6806fdc6492b6342586783e6865a82a8647d3c4288439b1751ee
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9c1ac38bf8eec67a3da57c3cc61105513776a749408cb287fe6448a17889de4e
        - registry.redhat.io/amq7/amq-broker-rhel8-operator@sha256:023478b773a0c42739b86e822a4d435e01ef341b8136566ea52463f1b7e447ed
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:eacc4fb55e8c4c30894a51944960d536508001a49fda62782c6cb2ca8767961d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:7f9b921d89b6d4d91b365659afff127d99f1455b94b48a10a6a7f4c38dd8b700
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:8b4c4400a02c6cacfd978147b158e2ccbe5da955578b4b970a5ee7edac865326
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ade37271426ab8f543d72f8da3e9f663d665f9427379a2539fc9323f6897cc44
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b2402179b1d0ff9c950defe5d8808195ef9a4c3e13e3c469cae31ab51d5f5014
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:7f83cabd3579472283c9a22e5722ddc58b14bc819fa9ba8d2281560920b392e8
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:b9aecae6b0ce0b241c7a5b9e6e096395940bb6a384373a4d121822cf10c26d99
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d71506472636d940b5dbd3e708d3e0448d777eeecfd38de61ba49e281d2979c6
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:0dde839c2dce7cb684094bf26523c8e16677de03149a0fff468b8c3f106e1f4f
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:89bb769b4c33eb931cc7866eeabec9a315b913851cfa84bc6e11ae8d1e8b2cbb
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:40920687402fd747ca02d384e63692a5e1db625723a2bf3056a607c92ee8eee1
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:0f443f5aa818dd85bfa93e51e37bdac3909628a283aa52a89125b527dd75d9aa
        version: 7.12.5-opr-1+0.1766088985.p
      entries:
      - name: amq-broker-operator.v7.12.5-opr-1-0.1762191931.p
        version: 7.12.5-opr-1+0.1762191931.p
      - name: amq-broker-operator.v7.12.5-opr-1
        version: 7.12.5-opr-1
      - name: amq-broker-operator.v7.12.5-opr-1-0.1764078330.p
        version: 7.12.5-opr-1+0.1764078330.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1764016479.p
        version: 7.12.5-opr-1+0.1764016479.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1763602793.p
        version: 7.12.5-opr-1+0.1763602793.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1762407308.p
        version: 7.12.5-opr-1+0.1762407308.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1761126305.p
        version: 7.12.5-opr-1+0.1761126305.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1761129569.p
        version: 7.12.5-opr-1+0.1761129569.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1766088985.p
        version: 7.12.5-opr-1+0.1766088985.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1757928550.p
        version: 7.12.5-opr-1+0.1757928550.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1756216162.p
        version: 7.12.5-opr-1+0.1756216162.p
      - name: amq-broker-operator.v7.12.5-opr-1-0.1754272113.p
        version: 7.12.5-opr-1+0.1754272113.p
      - name: amq-broker-operator.v7.12.4-opr-1
        version: 7.12.4-opr-1
      - name: amq-broker-operator.v7.12.4-opr-1-0.1747217191.p
        version: 7.12.4-opr-1+0.1747217191.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1730142550.p
        version: 7.12.3-opr-1+0.1730142550.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1731483798.p
        version: 7.12.3-opr-1+0.1731483798.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1739889884.p
        version: 7.12.3-opr-1+0.1739889884.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1739991235.p
        version: 7.12.3-opr-1+0.1739991235.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1741881887.p
        version: 7.12.3-opr-1+0.1741881887.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1741883943.p
        version: 7.12.3-opr-1+0.1741883943.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1741884937.p
        version: 7.12.3-opr-1+0.1741884937.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1738596517.p
        version: 7.12.3-opr-1+0.1738596517.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1737643631.p
        version: 7.12.3-opr-1+0.1737643631.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1733315503.p
        version: 7.12.3-opr-1+0.1733315503.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1732654016.p
        version: 7.12.3-opr-1+0.1732654016.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1739390944.p
        version: 7.12.3-opr-1+0.1739390944.p
      - name: amq-broker-operator.v7.12.3-opr-1-0.1730813578.p
        version: 7.12.3-opr-1+0.1730813578.p
      - name: amq-broker-operator.v7.12.3-opr-1
        version: 7.12.3-opr-1
      - name: amq-broker-operator.v7.12.2-opr-1
        version: 7.12.2-opr-1
      - name: amq-broker-operator.v7.12.1-opr-1-0.1724054375.p
        version: 7.12.1-opr-1+0.1724054375.p
      - name: amq-broker-operator.v7.12.1-opr-1-0.1723669176.p
        version: 7.12.1-opr-1+0.1723669176.p
      - name: amq-broker-operator.v7.12.1-opr-1-0.1721247907.p
        version: 7.12.1-opr-1+0.1721247907.p
      - name: amq-broker-operator.v7.12.1-opr-1
        version: 7.12.1-opr-1
      - name: amq-broker-operator.v7.12.0-opr-2
        version: 7.12.0-opr-2
      - name: amq-broker-operator.v7.12.0-opr-1
        version: 7.12.0-opr-1
      name: 7.12.x
    defaultChannel: 7.12.x
    packageName: amq-broker-rhel8
    provider:
      name: Red Hat
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-lambda-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-lambda-controller.v1.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "Alias",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "CodeSigningConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "EventSourceMapping",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "lambda.services.k8s.aws/v1alpha1",
                "kind": "Function",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/lambda-controller:1.10.0
          createdAt: "2025-11-29T05:54:22Z"
          description: AWS Lambda controller is a service controller for managing
            Lambda resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Alias represents the state of an AWS lambda Alias resource.
            displayName: Alias
            kind: Alias
            name: aliases.lambda.services.k8s.aws
            version: v1alpha1
          - description: CodeSigningConfig represents the state of an AWS lambda CodeSigningConfig
              resource.
            displayName: CodeSigningConfig
            kind: CodeSigningConfig
            name: codesigningconfigs.lambda.services.k8s.aws
            version: v1alpha1
          - description: EventSourceMapping represents the state of an AWS lambda
              EventSourceMapping resource.
            displayName: EventSourceMapping
            kind: EventSourceMapping
            name: eventsourcemappings.lambda.services.k8s.aws
            version: v1alpha1
          - description: Function represents the state of an AWS lambda Function resource.
            displayName: Function
            kind: Function
            name: functions.lambda.services.k8s.aws
            version: v1alpha1
          - description: FunctionURLConfig represents the state of an AWS lambda FunctionURLConfig
              resource.
            displayName: FunctionURLConfig
            kind: FunctionURLConfig
            name: functionurlconfigs.lambda.services.k8s.aws
            version: v1alpha1
          - description: LayerVersion represents the state of an AWS lambda LayerVersion
              resource.
            displayName: LayerVersion
            kind: LayerVersion
            name: layerversions.lambda.services.k8s.aws
            version: v1alpha1
          - description: Version represents the state of an AWS lambda Version resource.
            displayName: Version
            kind: Version
            name: versions.lambda.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Lambda resources in AWS from within your Kubernetes cluster.

          **About Amazon Lambda**

          Lambda is a compute service that lets you run code without provisioning or managing servers. Lambda runs your code on a high-availability compute infrastructure and performs all of the administration of the compute resources, including server and operating system maintenance, capacity provisioning and automatic scaling, code monitoring and logging. With Lambda, you can run code for virtually any type of application or backend service. All you need to do is supply your code in one of the [languages that Lambda supports](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Lambda
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - lambda
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Lambda Developer Resources
          url: https://aws.amazon.com/lambda/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: lambda maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/lambda-controller:1.10.0
        - quay.io/community-operator-pipeline-prod/ack-lambda-controller@sha256:d6e322492f07052cff6d7d727a56080d52437d56e3f4cf8ee1e19c28656be83d
        version: 1.10.0
      entries:
      - name: ack-lambda-controller.v1.10.0
        version: 1.10.0
      - name: ack-lambda-controller.v1.9.2
        version: 1.9.2
      - name: ack-lambda-controller.v1.9.1
        version: 1.9.1
      - name: ack-lambda-controller.v1.9.0
        version: 1.9.0
      - name: ack-lambda-controller.v1.8.0
        version: 1.8.0
      - name: ack-lambda-controller.v1.7.7
        version: 1.7.7
      - name: ack-lambda-controller.v1.7.6
        version: 1.7.6
      - name: ack-lambda-controller.v1.7.5
        version: 1.7.5
      - name: ack-lambda-controller.v1.7.4
        version: 1.7.4
      - name: ack-lambda-controller.v1.7.2
        version: 1.7.2
      - name: ack-lambda-controller.v1.7.1
        version: 1.7.1
      - name: ack-lambda-controller.v1.7.0
        version: 1.7.0
      - name: ack-lambda-controller.v1.6.3
        version: 1.6.3
      - name: ack-lambda-controller.v1.6.2
        version: 1.6.2
      - name: ack-lambda-controller.v1.6.1
        version: 1.6.1
      - name: ack-lambda-controller.v1.6.0
        version: 1.6.0
      - name: ack-lambda-controller.v1.5.8
        version: 1.5.8
      - name: ack-lambda-controller.v1.5.7
        version: 1.5.7
      - name: ack-lambda-controller.v1.5.6
        version: 1.5.6
      - name: ack-lambda-controller.v1.5.5
        version: 1.5.5
      - name: ack-lambda-controller.v1.5.4
        version: 1.5.4
      - name: ack-lambda-controller.v1.5.3
        version: 1.5.3
      - name: ack-lambda-controller.v1.5.2
        version: 1.5.2
      - name: ack-lambda-controller.v1.5.1
        version: 1.5.1
      - name: ack-lambda-controller.v1.5.0
        version: 1.5.0
      - name: ack-lambda-controller.v1.4.2
        version: 1.4.2
      - name: ack-lambda-controller.v1.4.0
        version: 1.4.0
      - name: ack-lambda-controller.v1.3.4
        version: 1.3.4
      - name: ack-lambda-controller.v1.3.2
        version: 1.3.2
      - name: ack-lambda-controller.v1.3.1
        version: 1.3.1
      - name: ack-lambda-controller.v1.3.0
        version: 1.3.0
      - name: ack-lambda-controller.v1.2.1
        version: 1.2.1
      - name: ack-lambda-controller.v1.2.0
        version: 1.2.0
      - name: ack-lambda-controller.v1.1.1
        version: 1.1.1
      - name: ack-lambda-controller.v1.1.0
        version: 1.1.0
      - name: ack-lambda-controller.v1.0.1
        version: 1.0.1
      - name: ack-lambda-controller.v1.0.0
        version: 1.0.0
      - name: ack-lambda-controller.v0.1.7
        version: 0.1.7
      - name: ack-lambda-controller.v0.1.6
        version: 0.1.6
      - name: ack-lambda-controller.v0.1.5
        version: 0.1.5
      - name: ack-lambda-controller.v0.1.3
        version: 0.1.3
      - name: ack-lambda-controller.v0.1.2
        version: 0.1.2
      - name: ack-lambda-controller.v0.1.1
        version: 0.1.1
      - name: ack-lambda-controller.v0.1.0
        version: 0.1.0
      - name: ack-lambda-controller.v0.0.17
        version: 0.0.17
      - name: ack-lambda-controller.v0.0.16
        version: 0.0.16
      - name: ack-lambda-controller.v0.0.15
        version: 0.0.15
      - name: ack-lambda-controller.v0.0.14
        version: 0.0.14
      - name: ack-lambda-controller.v0.0.13
        version: 0.0.13
      - name: ack-lambda-controller.v0.0.12
        version: 0.0.12
      - name: ack-lambda-controller.v0.0.11
        version: 0.0.11
      - name: ack-lambda-controller.v0.0.10
        version: 0.0.10
      - name: ack-lambda-controller.v0.0.9
        version: 0.0.9
      - name: ack-lambda-controller.v0.0.8
        version: 0.0.8
      - name: ack-lambda-controller.v0.0.7
        version: 0.0.7
      - name: ack-lambda-controller.v0.0.6
        version: 0.0.6
      - name: ack-lambda-controller.v0.0.5
        version: 0.0.5
      - name: ack-lambda-controller.v0.0.4
        version: 0.0.4
      - name: ack-lambda-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-lambda-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: JohnSnowLABS
      provider-url: nlp.johnsnowlabs.com
    name: annotationlab
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: annotationlab.v5.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.johnsnowlabs.com/v1",
                "kind": "Annotationlab",
                "metadata": {
                  "name": "annotationlab"
                },
                "spec": {
                  "activelearning": {
                    "extraEnv": "",
                    "extraVolumeMounts": "",
                    "extraVolumes": "",
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "docker.io/johnsnowlabs/annotationlab",
                      "tag": "active-learning-5.7.0"
                    },
                    "lifecycleHooks": ""
                  },
                  "affinity": "podAntiAffinity:\n  requiredDuringSchedulingIgnoredDuringExecution:\n    - labelSelector:\n        matchLabels:\n          {{- include \"annotationlab.selectorLabels\" . | nindent 10 }}\n        matchExpressions:\n          - key: role\n            operator: NotIn\n            values:\n              - test\n      topologyKey: kubernetes.io/hostname\n  preferredDuringSchedulingIgnoredDuringExecution:\n    - weight: 100\n      podAffinityTerm:\n        labelSelector:\n          matchLabels:\n            {{- include \"annotationlab.selectorLabels\" . | nindent 12 }}\n          matchExpressions:\n            - key: role\n              operator: NotIn\n              values:\n                - test\n        topologyKey: failure-domain.beta.kubernetes.io/zone\n",
                  "airflow": {
                    "activelearning": {
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/johnsnowlabs/annotationlab",
                        "tag": "active-learning-5.7.0"
                      }
                    },
                    "affinity": {},
                    "airflowConfigAnnotations": {},
                    "airflowHome": "/opt/airflow",
                    "airflowLocalSettings": "{{- if semverCompare \"\u003e=2.2.0\" .Values.airflowVersion }}\n{{- if not (or .Values.webserverSecretKey .Values.webserverSecretKeySecretName) }}\nfrom airflow.www.utils import UIAlert\n\nDASHBOARD_UIALERTS = [\n  UIAlert(\n    'Usage of a dynamic webserver secret key detected. We recommend a static webserver secret key instead.'\n    ' See the \u003ca href='\n    '\"https://airflow.apache.org/docs/helm-chart/stable/production-guide.html#webserver-secret-key\"\u003e'\n    'Helm Chart Production Guide\u003c/a\u003e for more details.',\n    category=\"warning\",\n    roles=[\"Admin\"],\n    html=True,\n  )\n]\n{{- end }}\n{{- end }}",
                    "airflowPodAnnotations": {},
                    "airflowVersion": "2.5.1",
                    "allowPodLaunching": true,
                    "cleanup": {
                      "affinity": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow kubernetes cleanup-pods --namespace={{ .Release.Namespace }}"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "failedJobsHistoryLimit": null,
                      "labels": {},
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "resources": {},
                      "schedule": "*/15 * * * *",
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "successfulJobsHistoryLimit": null,
                      "tolerations": [],
                      "topologySpreadConstraints": []
                    },
                    "config": {
                      "api": {
                        "auth_backend": "airflow.api.auth.backend.default"
                      },
                      "celery": {
                        "flower_url_prefix": "{{ .Values.ingress.flower.path }}",
                        "worker_concurrency": 16
                      },
                      "celery_kubernetes_executor": {
                        "kubernetes_queue": "kubernetes"
                      },
                      "core": {
                        "colored_console_log": "False",
                        "dags_are_paused_at_creation": "False",
                        "dags_folder": "{{ include \"airflow_dags\" . }}",
                        "executor": "{{ .Values.executor }}",
                        "load_examples": "False",
                        "remote_logging": "{{- ternary \"True\" \"False\" .Values.elasticsearch.enabled }}"
                      },
                      "elasticsearch": {
                        "json_format": "True",
                        "log_id_template": "{dag_id}_{task_id}_{execution_date}_{try_number}"
                      },
                      "elasticsearch_configs": {
                        "max_retries": 3,
                        "retry_timeout": "True",
                        "timeout": 30
                      },
                      "kerberos": {
                        "ccache": "{{ .Values.kerberos.ccacheMountPath }}/{{ .Values.kerberos.ccacheFileName }}",
                        "keytab": "{{ .Values.kerberos.keytabPath }}",
                        "principal": "{{ .Values.kerberos.principal }}",
                        "reinit_frequency": "{{ .Values.kerberos.reinitFrequency }}"
                      },
                      "kubernetes": {
                        "airflow_configmap": "{{ include \"airflow_config\" . }}",
                        "airflow_local_settings_configmap": "{{ include \"airflow_config\" . }}",
                        "multi_namespace_mode": "{{ ternary \"True\" \"False\" .Values.multiNamespaceMode }}",
                        "namespace": "{{ .Release.Namespace }}",
                        "pod_template_file": "{{ include \"airflow_pod_template_file\" . }}/pod_template_file.yaml",
                        "worker_container_repository": "{{ .Values.images.airflow.repository | default .Values.defaultAirflowRepository }}",
                        "worker_container_tag": "{{ .Values.images.airflow.tag | default .Values.defaultAirflowTag }}"
                      },
                      "logging": {
                        "colored_console_log": "False",
                        "remote_logging": "{{- ternary \"True\" \"False\" .Values.elasticsearch.enabled }}"
                      },
                      "metrics": {
                        "statsd_host": "{{ printf \"%s-statsd\" .Release.Name }}",
                        "statsd_on": "{{ ternary \"True\" \"False\" .Values.statsd.enabled }}",
                        "statsd_port": 9125,
                        "statsd_prefix": "airflow"
                      },
                      "scheduler": {
                        "run_duration": 41460,
                        "standalone_dag_processor": "{{ ternary \"True\" \"False\" .Values.dagProcessor.enabled }}",
                        "statsd_host": "{{ printf \"%s-statsd\" .Release.Name }}",
                        "statsd_on": "{{ ternary \"True\" \"False\" .Values.statsd.enabled }}",
                        "statsd_port": 9125,
                        "statsd_prefix": "airflow"
                      },
                      "webserver": {
                        "authenticate": "False",
                        "base_url": "http://0.0.0.0:8080",
                        "enable_proxy_fix": "True",
                        "rbac": "False"
                      }
                    },
                    "createUserJob": {
                      "affinity": {},
                      "annotations": {},
                      "applyCustomEnv": true,
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"users create\" \"create_user\" }} \"$@\"",
                        "--",
                        "-r",
                        "{{ .Values.webserver.defaultUser.role }}",
                        "-u",
                        "{{ .Values.webserver.defaultUser.username }}",
                        "-e",
                        "{{ .Values.webserver.defaultUser.email }}",
                        "-f",
                        "{{ .Values.webserver.defaultUser.firstName }}",
                        "-l",
                        "{{ .Values.webserver.defaultUser.lastName }}",
                        "-p",
                        "{{ .Values.webserver.defaultUser.password }}"
                      ],
                      "command": null,
                      "env": [],
                      "extraContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "jobAnnotations": {},
                      "labels": {},
                      "nodeSelector": {},
                      "resources": {},
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-create-user-job"
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "useHelmHooks": true
                    },
                    "dagProcessor": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow dag-processor"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "livenessProbe": {
                        "command": null,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "strategy": {
                        "rollingUpdate": {
                          "maxSurge": "100%",
                          "maxUnavailable": "50%"
                        }
                      },
                      "terminationGracePeriodSeconds": 60,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      }
                    },
                    "dags": {
                      "gitSync": {
                        "branch": "v2-2-stable",
                        "containerName": "git-sync",
                        "depth": 1,
                        "enabled": false,
                        "env": [],
                        "extraVolumeMounts": [],
                        "maxFailures": 0,
                        "repo": "https://github.com/apache/airflow.git",
                        "resources": {},
                        "rev": "HEAD",
                        "securityContext": {},
                        "subPath": "tests/dags",
                        "uid": 65533,
                        "wait": 5
                      },
                      "persistence": {
                        "accessMode": "ReadWriteOnce",
                        "enabled": false,
                        "existingClaim": null,
                        "size": "1Gi",
                        "storageClassName": null,
                        "subPath": null
                      }
                    },
                    "data": {
                      "brokerUrl": null,
                      "brokerUrlSecretName": null,
                      "metadataConnection": {
                        "db": "airflow",
                        "pass": "airflow",
                        "port": 5432,
                        "protocol": "postgresql",
                        "sslmode": "disable",
                        "user": "airflow"
                      },
                      "metadataSecretName": null,
                      "resultBackendConnection": null,
                      "resultBackendSecretName": null
                    },
                    "defaultAirflowRepository": "apache/airflow",
                    "defaultAirflowTag": "2.5.1",
                    "elasticsearch": {
                      "connection": {},
                      "enabled": false,
                      "secretName": null
                    },
                    "enableBuiltInSecretEnvVars": {
                      "AIRFLOW_CONN_AIRFLOW_DB": true,
                      "AIRFLOW__CELERY__BROKER_URL": true,
                      "AIRFLOW__CELERY__CELERY_RESULT_BACKEND": true,
                      "AIRFLOW__CELERY__RESULT_BACKEND": true,
                      "AIRFLOW__CORE__FERNET_KEY": true,
                      "AIRFLOW__CORE__SQL_ALCHEMY_CONN": true,
                      "AIRFLOW__DATABASE__SQL_ALCHEMY_CONN": true,
                      "AIRFLOW__ELASTICSEARCH__ELASTICSEARCH_HOST": true,
                      "AIRFLOW__ELASTICSEARCH__HOST": true,
                      "AIRFLOW__WEBSERVER__SECRET_KEY": true
                    },
                    "env": [],
                    "executor": "CeleryExecutor",
                    "extraConfigMaps": {},
                    "extraEnv": "- name: ACTIVE_LEARNING_IMAGE_PULL_POLICY\n  value: \"{{ .Values.activelearning.image.pullPolicy }}\"\n- name: ACTIVE_LEARNING_IMAGE\n  value: \"{{ .Values.activelearning.image.repository }}:{{ .Values.activelearning.image.tag }}\"\n- name: NUMBER_OF_PREANNOTATOR_DAG\n  value: {{ .Values.preannotator_queues.count | quote }}\n- name: AIRFLOW__LOGGING__LOGGING_LEVEL\n  value: INFO\n- name: ANNOTATIONLAB_FULLNAME\n  value: {{ include \"annotationlab.annotationlab.fullname\" . }}\n- name: ANNOTATIONLAB_URL\n  value: http://{{ include \"annotationlab.annotationlab.fullname\" . }}:8200\n- name: AIRFLOW_NAMESPACE\n  value: {{ .Release.Namespace }}\n- name: DATABASE_CONNECTION_STRING\n  valueFrom:\n    secretKeyRef:\n      name: {{ include \"annotationlab.annotationlab.fullname\" . }}-secret\n      key: DATABASE_CONNECTION_STRING\n",
                    "extraEnvFrom": null,
                    "extraSecrets": {},
                    "fernetKey": null,
                    "fernetKeySecretName": null,
                    "flower": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"celery flower\" \"flower\" }}"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "extraContainers": [],
                      "extraNetworkPolicies": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "networkPolicy": {
                        "ingress": {
                          "from": [],
                          "ports": [
                            {
                              "port": "{{ .Values.ports.flowerUI }}"
                            }
                          ]
                        }
                      },
                      "nodeSelector": {},
                      "password": null,
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "secretName": null,
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "loadBalancerIP": null,
                        "loadBalancerSourceRanges": [],
                        "ports": [
                          {
                            "name": "flower-ui",
                            "port": "{{ .Values.ports.flowerUI }}"
                          }
                        ],
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "username": null
                    },
                    "fullnameOverride": "",
                    "gid": 0,
                    "global": {},
                    "image": {
                      "repository": "docker.io/johnsnowlabs/annotationlab"
                    },
                    "images": {
                      "airflow": {
                        "pullPolicy": "IfNotPresent",
                        "repository": null,
                        "tag": "dataflows-5.7.0"
                      },
                      "flower": {
                        "pullPolicy": "IfNotPresent",
                        "repository": null,
                        "tag": null
                      },
                      "gitSync": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "k8s.gcr.io/git-sync/git-sync",
                        "tag": "v3.6.3"
                      },
                      "migrationsWaitTimeout": 60,
                      "pgbouncer": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "apache/airflow",
                        "tag": "airflow-pgbouncer-2021.04.28-1.14.0"
                      },
                      "pgbouncerExporter": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "apache/airflow",
                        "tag": "airflow-pgbouncer-exporter-2021.09.22-0.12.0"
                      },
                      "pod_template": {
                        "pullPolicy": "IfNotPresent",
                        "repository": null,
                        "tag": null
                      },
                      "redis": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/redis",
                        "tag": "alpine3.16"
                      },
                      "statsd": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "quay.io/prometheus/statsd-exporter",
                        "tag": "v0.22.8"
                      },
                      "useDefaultImageForMigration": false
                    },
                    "ingress": {
                      "enabled": false,
                      "flower": {
                        "annotations": {},
                        "enabled": false,
                        "host": "",
                        "hosts": [],
                        "ingressClassName": "",
                        "path": "/",
                        "pathType": "ImplementationSpecific",
                        "tls": {
                          "enabled": false,
                          "secretName": ""
                        }
                      },
                      "web": {
                        "annotations": {},
                        "enabled": false,
                        "host": "",
                        "hosts": [],
                        "ingressClassName": "",
                        "path": "/",
                        "pathType": "ImplementationSpecific",
                        "precedingPaths": [],
                        "succeedingPaths": [],
                        "tls": {
                          "enabled": false,
                          "secretName": ""
                        }
                      }
                    },
                    "kerberos": {
                      "ccacheFileName": "cache",
                      "ccacheMountPath": "/var/kerberos-ccache",
                      "config": "# This is an example config showing how you can use templating and how \"example\" config\n# might look like. It works with the test kerberos server that we are using during integration\n# testing at Apache Airflow (see `scripts/ci/docker-compose/integration-kerberos.yml` but in\n# order to make it production-ready you must replace it with your own configuration that\n# Matches your kerberos deployment. Administrators of your Kerberos instance should\n# provide the right configuration.\n\n[logging]\ndefault = \"FILE:{{ template \"airflow_logs_no_quote\" . }}/kerberos_libs.log\"\nkdc = \"FILE:{{ template \"airflow_logs_no_quote\" . }}/kerberos_kdc.log\"\nadmin_server = \"FILE:{{ template \"airflow_logs_no_quote\" . }}/kadmind.log\"\n\n[libdefaults]\ndefault_realm = FOO.COM\nticket_lifetime = 10h\nrenew_lifetime = 7d\nforwardable = true\n\n[realms]\nFOO.COM = {\n  kdc = kdc-server.foo.com\n  admin_server = admin_server.foo.com\n}\n",
                      "configPath": "/etc/krb5.conf",
                      "enabled": false,
                      "keytabBase64Content": null,
                      "keytabPath": "/etc/airflow.keytab",
                      "principal": "airflow@FOO.COM",
                      "reinitFrequency": 3600
                    },
                    "kubeVersionOverride": "",
                    "labels": {},
                    "limits": [],
                    "logs": {
                      "persistence": {
                        "enabled": false,
                        "existingClaim": null,
                        "size": "100Gi",
                        "storageClassName": null
                      }
                    },
                    "migrateDatabaseJob": {
                      "affinity": {},
                      "annotations": {},
                      "applyCustomEnv": true,
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"db upgrade\" \"upgradedb\" }}"
                      ],
                      "command": null,
                      "enabled": true,
                      "extraContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "jobAnnotations": {},
                      "nodeSelector": {},
                      "resources": {},
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-migrate-database-job"
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "useHelmHooks": true
                    },
                    "multiNamespaceMode": false,
                    "nameOverride": "",
                    "networkPolicies": {
                      "enabled": false
                    },
                    "nodeSelector": {},
                    "pgbouncer": {
                      "affinity": {},
                      "annotations": {},
                      "args": null,
                      "auth_file": "/etc/pgbouncer/users.txt",
                      "auth_type": "md5",
                      "ciphers": "normal",
                      "command": [
                        "pgbouncer",
                        "-u",
                        "nobody",
                        "/etc/pgbouncer/pgbouncer.ini"
                      ],
                      "configSecretName": null,
                      "enabled": false,
                      "extraIni": null,
                      "extraIniMetadata": null,
                      "extraIniResultBackend": null,
                      "extraNetworkPolicies": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "logConnections": 0,
                      "logDisconnections": 0,
                      "maxClientConn": 100,
                      "metadataPoolSize": 10,
                      "metricsExporterSidecar": {
                        "resources": {},
                        "sslmode": "disable"
                      },
                      "nodeSelector": {},
                      "podDisruptionBudget": {
                        "config": {
                          "maxUnavailable": 1
                        },
                        "enabled": false
                      },
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "resultBackendPoolSize": 5,
                      "revisionHistoryLimit": null,
                      "service": {
                        "extraAnnotations": {}
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": null
                      },
                      "ssl": {
                        "ca": null,
                        "cert": null,
                        "key": null
                      },
                      "sslmode": "prefer",
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "uid": 65534,
                      "verbose": 0
                    },
                    "podTemplate": null,
                    "ports": {
                      "airflowUI": 8080,
                      "flowerUI": 5555,
                      "pgbouncer": 6543,
                      "pgbouncerScrape": 9127,
                      "redisDB": 6379,
                      "statsdIngest": 9125,
                      "statsdScrape": 9102,
                      "workerLogs": 8793
                    },
                    "postgresql": {
                      "auth": {
                        "enablePostgresUser": true,
                        "password": null,
                        "postgresPassword": "postgres",
                        "username": null
                      },
                      "common": {
                        "exampleValue": "common-chart",
                        "global": {
                          "postgresql": {}
                        }
                      },
                      "commonAnnotations": {},
                      "enabled": true,
                      "extraEnv": [],
                      "global": {
                        "postgresql": {}
                      },
                      "image": {
                        "debug": false,
                        "pullPolicy": "IfNotPresent",
                        "registry": "docker.io",
                        "repository": "bitnami/postgresql",
                        "tag": "11"
                      },
                      "ldap": {
                        "baseDN": "",
                        "bindDN": "",
                        "enabled": false,
                        "port": "",
                        "prefix": "",
                        "scheme": "",
                        "search_attr": "",
                        "search_filter": "",
                        "server": "",
                        "suffix": "",
                        "tls": false,
                        "url": ""
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 30,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "master": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": [],
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "metrics": {
                        "enabled": false,
                        "extraEnvVars": {},
                        "image": {
                          "pullPolicy": "IfNotPresent",
                          "registry": "docker.io",
                          "repository": "bitnami/postgres-exporter",
                          "tag": "0.8.0-debian-10-r166"
                        },
                        "livenessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "prometheusRule": {
                          "additionalLabels": {},
                          "enabled": false,
                          "namespace": "",
                          "rules": []
                        },
                        "readinessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "securityContext": {},
                        "service": {
                          "annotations": {
                            "prometheus.io/port": "9187",
                            "prometheus.io/scrape": "true"
                          },
                          "type": "ClusterIP"
                        },
                        "serviceMonitor": {
                          "additionalLabels": {},
                          "enabled": false
                        }
                      },
                      "nameOverride": "airflow-postgresql",
                      "networkPolicy": {
                        "allowExternal": true,
                        "enabled": false,
                        "explicitNamespacesSelector": {}
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "enabled": true,
                        "mountPath": "/bitnami/postgresql",
                        "size": "8Gi",
                        "subPath": ""
                      },
                      "postgresqlDataDir": "/bitnami/postgresql/data",
                      "postgresqlDatabase": "airflow",
                      "postgresqlPassword": "airflow",
                      "postgresqlUsername": "airflow",
                      "psp": {
                        "create": false
                      },
                      "rbac": {
                        "create": false
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "replication": {
                        "applicationName": "my_application",
                        "enabled": false,
                        "numSynchronousReplicas": 0,
                        "password": "repl_password",
                        "slaveReplicas": 1,
                        "synchronousCommit": "off",
                        "user": "repl_user"
                      },
                      "resources": {
                        "requests": {
                          "cpu": "250m",
                          "memory": "256Mi"
                        }
                      },
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "port": 5432,
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "enabled": true,
                        "name": "annotationlab-airflow-postgresql"
                      },
                      "shmVolume": {
                        "chmod": {
                          "enabled": true
                        },
                        "enabled": true
                      },
                      "slave": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": "# - name: do-something\n#   image: busybox\n#   command: ['do', 'something']\n",
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "tls": {
                        "certFilename": "",
                        "certKeyFilename": "",
                        "certificatesSecret": "",
                        "enabled": false,
                        "preferServerCiphers": true
                      },
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      },
                      "volumePermissions": {
                        "enabled": false,
                        "image": {
                          "pullPolicy": "Always",
                          "registry": "docker.io",
                          "repository": "bitnami/minideb",
                          "tag": "buster"
                        },
                        "securityContext": {}
                      }
                    },
                    "preannotator_queues": {
                      "count": 5
                    },
                    "quotas": {},
                    "rbac": {
                      "create": true,
                      "createSCCRoleBinding": false
                    },
                    "redis": {
                      "affinity": {},
                      "enabled": true,
                      "nodeSelector": {},
                      "password": "DefaulTRediS-P0ss",
                      "passwordSecretName": null,
                      "persistence": {
                        "annotations": {},
                        "enabled": true,
                        "size": "1Gi",
                        "storageClassName": null
                      },
                      "podAnnotations": {},
                      "resources": {},
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "annotationlab-airflow-redis"
                      },
                      "terminationGracePeriodSeconds": 600,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "uid": 0
                    },
                    "registry": {
                      "connection": {},
                      "secretName": "kubernetesdockerhub"
                    },
                    "registryCredentials": {
                      "pullPolicy": "IfNotPresent",
                      "registryUrl": "docker.io/annotationlab"
                    },
                    "revisionHistoryLimit": null,
                    "scheduler": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow scheduler"
                      ],
                      "command": null,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "livenessProbe": {
                        "command": null,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "logGroomerSidecar": {
                        "args": [
                          "bash",
                          "/clean-logs"
                        ],
                        "command": null,
                        "enabled": true,
                        "resources": {},
                        "retentionDays": 15
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podDisruptionBudget": {
                        "config": {
                          "maxUnavailable": 1
                        },
                        "enabled": false
                      },
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-scheduler"
                      },
                      "strategy": null,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "updateStrategy": null,
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      }
                    },
                    "secret": [],
                    "securityContext": {},
                    "statsd": {
                      "affinity": {},
                      "args": [
                        "--statsd.mapping-config=/etc/statsd-exporter/mappings.yml"
                      ],
                      "enabled": false,
                      "extraMappings": [],
                      "extraNetworkPolicies": [],
                      "nodeSelector": {},
                      "overrideMappings": [],
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "securityContext": {},
                      "service": {
                        "extraAnnotations": {}
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-statsd"
                      },
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "uid": 65534
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "triggerer": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow triggerer"
                      ],
                      "command": null,
                      "enabled": false,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "livenessProbe": {
                        "command": null,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "annotationlab-airflow-triggerer"
                      },
                      "strategy": {
                        "rollingUpdate": {
                          "maxSurge": "100%",
                          "maxUnavailable": "50%"
                        }
                      },
                      "terminationGracePeriodSeconds": 60,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      }
                    },
                    "uid": 50000,
                    "volumeMounts": [],
                    "volumes": [],
                    "webserver": {
                      "affinity": {},
                      "allowPodLogReading": true,
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec airflow webserver"
                      ],
                      "command": null,
                      "defaultUser": {
                        "email": "admin@example.com",
                        "enabled": false,
                        "firstName": "admin",
                        "lastName": "user",
                        "password": "admin",
                        "role": "Admin",
                        "username": "admin"
                      },
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraNetworkPolicies": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "livenessProbe": {
                        "failureThreshold": 20,
                        "initialDelaySeconds": 15,
                        "periodSeconds": 5,
                        "scheme": "HTTP",
                        "timeoutSeconds": 30
                      },
                      "networkPolicy": {
                        "ingress": {
                          "from": [],
                          "ports": [
                            {
                              "port": "{{ .Values.ports.airflowUI }}"
                            }
                          ]
                        }
                      },
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podDisruptionBudget": {
                        "config": {
                          "maxUnavailable": 1
                        },
                        "enabled": false
                      },
                      "priorityClassName": null,
                      "readinessProbe": {
                        "failureThreshold": 20,
                        "initialDelaySeconds": 15,
                        "periodSeconds": 5,
                        "scheme": "HTTP",
                        "timeoutSeconds": 30
                      },
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "loadBalancerIP": null,
                        "loadBalancerSourceRanges": [],
                        "ports": [
                          {
                            "name": "airflow-ui",
                            "port": "{{ .Values.ports.airflowUI }}"
                          }
                        ],
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-webserver"
                      },
                      "strategy": null,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "waitForMigrations": {
                        "enabled": true,
                        "env": []
                      },
                      "webserverConfig": null,
                      "webserverConfigConfigMapName": null
                    },
                    "webserverSecretKey": "f565cd64401775f93c820dc63fc3d4f6",
                    "webserverSecretKeySecretName": null,
                    "workers": {
                      "affinity": {},
                      "annotations": {},
                      "args": [
                        "bash",
                        "-c",
                        "exec \\\nairflow {{ semverCompare \"\u003e=2.0.0\" .Values.airflowVersion | ternary \"celery worker\" \"worker\" }}"
                      ],
                      "command": null,
                      "env": [],
                      "extraContainers": [],
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "hostAliases": [],
                      "keda": {
                        "advanced": {},
                        "cooldownPeriod": 30,
                        "enabled": false,
                        "maxReplicaCount": 10,
                        "minReplicaCount": 0,
                        "namespaceLabels": {},
                        "pollingInterval": 5
                      },
                      "kerberosSidecar": {
                        "enabled": false,
                        "resources": {}
                      },
                      "labels": {},
                      "livenessProbe": {
                        "command": null,
                        "enabled": true,
                        "failureThreshold": 5,
                        "initialDelaySeconds": 10,
                        "periodSeconds": 60,
                        "timeoutSeconds": 20
                      },
                      "logGroomerSidecar": {
                        "args": [
                          "bash",
                          "/clean-logs"
                        ],
                        "command": null,
                        "enabled": true,
                        "resources": {},
                        "retentionDays": 15
                      },
                      "nodeSelector": {},
                      "persistence": {
                        "annotations": {},
                        "enabled": true,
                        "fixPermissions": false,
                        "size": "5Gi",
                        "storageClassName": null
                      },
                      "podAnnotations": {},
                      "priorityClassName": null,
                      "replicas": 1,
                      "resources": {},
                      "revisionHistoryLimit": null,
                      "safeToEvict": true,
                      "securityContext": {},
                      "serviceAccount": {
                        "annotations": {},
                        "create": false,
                        "name": "airflow-worker"
                      },
                      "strategy": {
                        "rollingUpdate": {
                          "maxSurge": "100%",
                          "maxUnavailable": "50%"
                        }
                      },
                      "terminationGracePeriodSeconds": 600,
                      "tolerations": [],
                      "topologySpreadConstraints": [],
                      "updateStrategy": null,
                      "waitForMigrations": {
                        "env": []
                      }
                    }
                  },
                  "backup": {
                    "enable": false,
                    "files": true,
                    "image": {
                      "repository": null,
                      "tag": null
                    },
                    "s3_access_key": "",
                    "s3_bucket_fullpath": "",
                    "s3_secret_key": ""
                  },
                  "configuration": {
                    "FLASK_SECRET_KEY": "rpaQghA-9lmpLwB8qxW0FsW1TJyZZYuB60ppzswpTzM=",
                    "KEYCLOAK_CLIENT_ID": "annotationlab",
                    "KEYCLOAK_CLIENT_SECRET_KEY": "09a71c59-0351-4ce6-bc8f-8fd3feb9d2ff",
                    "KEYCLOAK_REALM_NAME": "master",
                    "PERSISTENT_STORAGE": "/projects"
                  },
                  "extraContainers": "",
                  "extraEnv": "",
                  "extraNetworkPolicies": "- namespaceSelector: {}\n",
                  "extraVolumeMounts": "",
                  "extraVolumes": "",
                  "github_oauth_origin": "https://github.oauth.johnsnowlabs.com",
                  "google_analytics": {
                    "api_secret": "WENfd00yeUxRRWl4N0Utbml5SWt3Zw==",
                    "measurement_id": "Ry1XODBIMDhTTFBZ"
                  },
                  "hostAliases": [],
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "docker.io/johnsnowlabs/annotationlab",
                    "tag": "5.7.0"
                  },
                  "ingress": {
                    "annotations": {},
                    "defaultBackend": false,
                    "enabled": true,
                    "hosts": [
                      {
                        "host": "annotationlab",
                        "path": "/"
                      }
                    ],
                    "ingressroute": {
                      "enabled": false
                    },
                    "servicePort": "http",
                    "tls": [],
                    "uploadLimitInMegabytes": 16
                  },
                  "installAirflow": true,
                  "installKeycloak": true,
                  "installPostgresql": true,
                  "keycloak": {
                    "affinity": "podAntiAffinity:\n  requiredDuringSchedulingIgnoredDuringExecution:\n    - labelSelector:\n        matchLabels:\n          {{- include \"keycloak.selectorLabels\" . | nindent 10 }}\n        matchExpressions:\n          - key: app.kubernetes.io/component\n            operator: NotIn\n            values:\n              - test\n      topologyKey: kubernetes.io/hostname\n  preferredDuringSchedulingIgnoredDuringExecution:\n    - weight: 100\n      podAffinityTerm:\n        labelSelector:\n          matchLabels:\n            {{- include \"keycloak.selectorLabels\" . | nindent 12 }}\n          matchExpressions:\n            - key: app.kubernetes.io/component\n              operator: NotIn\n              values:\n                - test\n        topologyKey: topology.kubernetes.io/zone\n",
                    "args": [],
                    "auththeme": {
                      "image": {
                        "repository": "docker.io/johnsnowlabs/annotationlab",
                        "tag": "auth-theme-5.7.0"
                      }
                    },
                    "autoscaling": {
                      "behavior": {
                        "scaleDown": {
                          "policies": [
                            {
                              "periodSeconds": 300,
                              "type": "Pods",
                              "value": 1
                            }
                          ],
                          "stabilizationWindowSeconds": 300
                        }
                      },
                      "enabled": false,
                      "labels": {},
                      "maxReplicas": 10,
                      "metrics": [
                        {
                          "resource": {
                            "name": "cpu",
                            "target": {
                              "averageUtilization": 80,
                              "type": "Utilization"
                            }
                          },
                          "type": "Resource"
                        }
                      ],
                      "minReplicas": 3
                    },
                    "cache": {
                      "stack": "default"
                    },
                    "clusterDomain": "cluster.local",
                    "command": [
                      "/opt/keycloak/bin/kc.sh",
                      "--verbose",
                      "start",
                      "--http-enabled=true",
                      "--http-port=8080",
                      "--hostname-strict=false",
                      "--hostname-strict-https=false",
                      "--spi-events-listener-jboss-logging-success-level=info",
                      "--spi-events-listener-jboss-logging-error-level=warn"
                    ],
                    "database": {
                      "enabled": true,
                      "postgresqlDatabase": "keycloak",
                      "postgresqlPassword": "keycloak",
                      "postgresqlUsername": "keycloak"
                    },
                    "dbchecker": {
                      "enabled": false,
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/busybox",
                        "tag": 1.32
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "32Mi"
                        },
                        "requests": {
                          "cpu": "20m",
                          "memory": "32Mi"
                        }
                      },
                      "securityContext": {}
                    },
                    "enableServiceLinks": true,
                    "extraContainers": "",
                    "extraEnv": "- name: KC_FEATURES\n  value: \"authorization,account-api,admin-api,admin-fine-grained-authz,ciba,impersonation,kerberos,preview,step-up-authentication,token-exchange,web-authn\"\n- name: KEYCLOAK_ADMIN\n  valueFrom:\n    secretKeyRef:\n      name: {{ include \"keycloak.fullname\" . }}-admincreds\n      key: user\n- name: KEYCLOAK_ADMIN_PASSWORD\n  valueFrom:\n    secretKeyRef:\n      name: {{ include \"keycloak.fullname\" . }}-admincreds\n      key: password\n- name: JAVA_OPTS_APPEND\n  value: \u003e-\n    -XX:+UseContainerSupport\n    -XX:MaxRAMPercentage=50.0\n    -Djava.awt.headless=true\n    -Djgroups.dns.query={{ include \"keycloak.fullname\" . }}-headless\n",
                    "extraEnvFrom": "",
                    "extraInitContainers": "- name: theme-provider\n  image: {{ .Values.auththeme.image.repository }}:{{ .Values.auththeme.image.tag }}\n  imagePullPolicy: IfNotPresent\n  command:\n    - sh\n  args:\n    - -c\n    - |\n      echo \"Copying theme...\"\n      cp -R /johnsnowlabs/* /theme\n  volumeMounts:\n    - name: theme\n      mountPath: /theme\n",
                    "extraPorts": [],
                    "extraServiceMonitor": {
                      "annotations": {},
                      "enabled": false,
                      "interval": "10s",
                      "labels": {},
                      "namespace": "",
                      "namespaceSelector": {},
                      "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/realms/master/metrics",
                      "port": "http",
                      "scrapeTimeout": "10s"
                    },
                    "extraVolumeMounts": "- name: admincreds\n  mountPath: /secrets/admincreds\n  readOnly: true\n- name: theme\n  mountPath: /opt/keycloak/themes/johnsnowlabs\n",
                    "extraVolumes": "- name: admincreds\n  secret:\n    secretName: '{{ include \"annotationlab.keycloak.fullname\" . }}-admincreds'\n- name: theme\n  emptyDir: {}\n",
                    "fullnameOverride": "",
                    "global": {},
                    "health": {
                      "enabled": true
                    },
                    "hostAliases": [],
                    "http": {
                      "relativePath": "/auth"
                    },
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "repository": "docker.io/keycloak/keycloak",
                      "tag": "20.0.3"
                    },
                    "imagePullSecrets": [
                      {
                        "name": "kubernetesdockerhub"
                      }
                    ],
                    "ingress": {
                      "annotations": {
                        "nginx.ingress.kubernetes.io/proxy-buffer-size": "16k"
                      },
                      "console": {
                        "annotations": {},
                        "enabled": false,
                        "ingressClassName": "",
                        "rules": [
                          {
                            "host": "{{ .Release.Name }}.keycloak.example.com",
                            "paths": [
                              {
                                "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/admin",
                                "pathType": "Prefix"
                              }
                            ]
                          }
                        ],
                        "tls": []
                      },
                      "enabled": false,
                      "ingressClassName": "",
                      "labels": {},
                      "rules": [
                        {
                          "host": "keycloak.example.com",
                          "paths": [
                            {
                              "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/",
                              "pathType": "Prefix"
                            }
                          ]
                        }
                      ],
                      "servicePort": "http",
                      "tls": []
                    },
                    "lifecycleHooks": "",
                    "livenessProbe": "httpGet:\n  path: '{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/health/live'\n  port: http\ninitialDelaySeconds: 0\ntimeoutSeconds: 5\n",
                    "metrics": {
                      "enabled": true
                    },
                    "nameOverride": "",
                    "networkPolicy": {
                      "egress": [],
                      "enabled": false,
                      "extraFrom": [],
                      "labels": {}
                    },
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {},
                    "postgresql": {
                      "common": {
                        "exampleValue": "common-chart",
                        "global": {
                          "postgresql": {}
                        }
                      },
                      "commonAnnotations": {},
                      "enabled": true,
                      "extraEnv": [],
                      "global": {
                        "postgresql": {}
                      },
                      "image": {
                        "debug": false,
                        "pullPolicy": "IfNotPresent",
                        "registry": "docker.io",
                        "repository": "bitnami/postgresql",
                        "tag": "11.20.0-debian-11-r12"
                      },
                      "ldap": {
                        "baseDN": "",
                        "bindDN": "",
                        "bind_password": null,
                        "enabled": false,
                        "port": "",
                        "prefix": "",
                        "scheme": "",
                        "search_attr": "",
                        "search_filter": "",
                        "server": "",
                        "suffix": "",
                        "tls": false,
                        "url": ""
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 30,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "master": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": [],
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "metrics": {
                        "enabled": false,
                        "extraEnvVars": {},
                        "image": {
                          "pullPolicy": "IfNotPresent",
                          "registry": "docker.io",
                          "repository": "bitnami/postgres-exporter",
                          "tag": "0.8.0-debian-10-r166"
                        },
                        "livenessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "prometheusRule": {
                          "additionalLabels": {},
                          "enabled": false,
                          "namespace": "",
                          "rules": []
                        },
                        "readinessProbe": {
                          "enabled": true,
                          "failureThreshold": 6,
                          "initialDelaySeconds": 5,
                          "periodSeconds": 10,
                          "successThreshold": 1,
                          "timeoutSeconds": 5
                        },
                        "securityContext": {},
                        "service": {
                          "annotations": {
                            "prometheus.io/port": "9187",
                            "prometheus.io/scrape": "true"
                          },
                          "loadBalancerIP": null,
                          "type": "ClusterIP"
                        },
                        "serviceMonitor": {
                          "additionalLabels": {},
                          "enabled": false
                        }
                      },
                      "nameOverride": "keycloak-postgres",
                      "networkPolicy": {
                        "allowExternal": true,
                        "enabled": false,
                        "explicitNamespacesSelector": {}
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "enabled": true,
                        "mountPath": "/bitnami/postgresql",
                        "size": "8Gi",
                        "subPath": ""
                      },
                      "postgresqlDataDir": "/bitnami/postgresql/data",
                      "postgresqlDatabase": "keycloak",
                      "postgresqlPassword": "keycloak",
                      "postgresqlUsername": "keycloak",
                      "psp": {
                        "create": false
                      },
                      "rbac": {
                        "create": false
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "replication": {
                        "applicationName": "my_application",
                        "enabled": false,
                        "numSynchronousReplicas": 0,
                        "password": "repl_password",
                        "slaveReplicas": 1,
                        "synchronousCommit": "off",
                        "user": "repl_user"
                      },
                      "resources": {
                        "requests": {
                          "cpu": "250m",
                          "memory": "256Mi"
                        }
                      },
                      "securityContext": {},
                      "service": {
                        "annotations": {},
                        "port": 5432,
                        "type": "ClusterIP"
                      },
                      "serviceAccount": {
                        "enabled": true,
                        "name": "annotationlab-keycloak-postgresql"
                      },
                      "shmVolume": {
                        "chmod": {
                          "enabled": true
                        },
                        "enabled": true
                      },
                      "slave": {
                        "affinity": {},
                        "annotations": {},
                        "extraInitContainers": "# - name: do-something\n#   image: busybox\n#   command: ['do', 'something']\n",
                        "extraVolumeMounts": [],
                        "extraVolumes": [],
                        "labels": {},
                        "nodeSelector": {},
                        "podAnnotations": {},
                        "podLabels": {},
                        "priorityClassName": "",
                        "service": {},
                        "sidecars": [],
                        "tolerations": []
                      },
                      "tls": {
                        "certCAFilename": null,
                        "certFilename": "",
                        "certKeyFilename": "",
                        "certificatesSecret": "",
                        "crlFilename": null,
                        "enabled": false,
                        "preferServerCiphers": true
                      },
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      },
                      "volumePermissions": {
                        "enabled": false,
                        "image": {
                          "pullPolicy": "Always",
                          "registry": "docker.io",
                          "repository": "bitnami/minideb",
                          "tag": "buster"
                        },
                        "securityContext": {}
                      }
                    },
                    "priorityClassName": "",
                    "prometheusRule": {
                      "annotations": {},
                      "enabled": false,
                      "labels": {},
                      "namespace": "",
                      "rules": []
                    },
                    "proxy": {
                      "enabled": true,
                      "mode": "edge"
                    },
                    "rbac": {
                      "create": false,
                      "rules": []
                    },
                    "readinessProbe": "httpGet:\n  path: '{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/health/ready'\n  port: http\ninitialDelaySeconds: 10\ntimeoutSeconds: 1\n",
                    "replicas": 1,
                    "resources": {},
                    "restartPolicy": "Always",
                    "route": {
                      "annotations": {},
                      "enabled": false,
                      "host": "",
                      "labels": {},
                      "path": "/",
                      "tls": {
                        "enabled": true,
                        "insecureEdgeTerminationPolicy": "Redirect",
                        "termination": "edge"
                      }
                    },
                    "secrets": {
                      "admincreds": {
                        "stringData": {
                          "password": "secret",
                          "user": "admin"
                        }
                      }
                    },
                    "securityContext": {},
                    "service": {
                      "annotations": {},
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "httpNodePort": null,
                      "httpPort": 80,
                      "httpsNodePort": null,
                      "httpsPort": 8443,
                      "labels": {},
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "sessionAffinity": "",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "allowReadPods": false,
                      "annotations": {},
                      "automountServiceAccountToken": true,
                      "create": false,
                      "imagePullSecrets": [],
                      "labels": {},
                      "name": "annotationlab-keyclo"
                    },
                    "serviceHeadless": {
                      "annotations": {}
                    },
                    "serviceMonitor": {
                      "annotations": {},
                      "enabled": false,
                      "interval": "10s",
                      "labels": {},
                      "namespace": "",
                      "namespaceSelector": {},
                      "path": "{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/metrics",
                      "port": "http",
                      "scrapeTimeout": "10s"
                    },
                    "skipInitContainers": false,
                    "startupProbe": "httpGet:\n  path: '{{ tpl .Values.http.relativePath $ | trimSuffix \"/\" }}/health'\n  port: http\ninitialDelaySeconds: 15\ntimeoutSeconds: 1\nfailureThreshold: 60\nperiodSeconds: 5\n",
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {},
                    "terminationGracePeriodSeconds": 60,
                    "test": {
                      "deletionPolicy": "before-hook-creation",
                      "enabled": false,
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "docker.io/seleniarm/standalone-chromium",
                        "tag": "111.0"
                      },
                      "podSecurityContext": {},
                      "securityContext": {}
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": null,
                    "updateStrategy": "RollingUpdate"
                  },
                  "licenseserver": {
                    "origin": "https://license.johnsnowlabs.com"
                  },
                  "lifecycleHooks": "# postStart:\n#   exec:\n#     command: [\"/bin/sh\", \"-c\", \"ls\"]\n",
                  "modelshub_origin": "https://modelshub.johnsnowlabs.com",
                  "myjohnsnowlabs": {
                    "client_id": "UIGgoiIL9szXW8Nnik0O7tPT4to87oVtWvYWfc6r",
                    "origin": "https://my.johnsnowlabs.com"
                  },
                  "networkPolicy": {
                    "enabled": false
                  },
                  "nodeSelector": {},
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "annotations": {},
                    "enabled": true,
                    "size": "8Gi"
                  },
                  "podAnnotations": {},
                  "podLabels": {},
                  "postgresql": {
                    "common": {
                      "exampleValue": "common-chart",
                      "global": {
                        "postgresql": {}
                      }
                    },
                    "commonAnnotations": {},
                    "extraEnv": [],
                    "global": {
                      "postgresql": {}
                    },
                    "image": {
                      "debug": false,
                      "pullPolicy": "IfNotPresent",
                      "registry": "docker.io",
                      "repository": "bitnami/postgresql",
                      "tag": "11.20.0-debian-11-r12"
                    },
                    "ldap": {
                      "baseDN": "",
                      "bindDN": "",
                      "bind_password": null,
                      "enabled": false,
                      "port": "",
                      "prefix": "",
                      "scheme": "",
                      "search_attr": "",
                      "search_filter": "",
                      "server": "",
                      "suffix": "",
                      "tls": false,
                      "url": ""
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "master": {
                      "affinity": {},
                      "annotations": {},
                      "extraInitContainers": [],
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podLabels": {},
                      "priorityClassName": "",
                      "service": {},
                      "sidecars": [],
                      "tolerations": []
                    },
                    "metrics": {
                      "enabled": false,
                      "extraEnvVars": {},
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "registry": "docker.io",
                        "repository": "bitnami/postgres-exporter",
                        "tag": "0.8.0-debian-10-r166"
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "prometheusRule": {
                        "additionalLabels": {},
                        "enabled": false,
                        "namespace": "",
                        "rules": []
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 6,
                        "initialDelaySeconds": 5,
                        "periodSeconds": 10,
                        "successThreshold": 1,
                        "timeoutSeconds": 5
                      },
                      "securityContext": {},
                      "service": {
                        "annotations": {
                          "prometheus.io/port": "9187",
                          "prometheus.io/scrape": "true"
                        },
                        "loadBalancerIP": null,
                        "type": "ClusterIP"
                      },
                      "serviceMonitor": {
                        "additionalLabels": {},
                        "enabled": false
                      }
                    },
                    "networkPolicy": {
                      "allowExternal": true,
                      "enabled": false,
                      "explicitNamespacesSelector": {}
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "enabled": true,
                      "mountPath": "/bitnami/postgresql",
                      "size": "8Gi",
                      "subPath": ""
                    },
                    "postgresqlDataDir": "/bitnami/postgresql/data",
                    "postgresqlDatabase": "annotationlab",
                    "postgresqlPassword": "annotationlab",
                    "postgresqlUsername": "annotationlab",
                    "psp": {
                      "create": false
                    },
                    "rbac": {
                      "create": false
                    },
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "replication": {
                      "applicationName": "my_application",
                      "enabled": false,
                      "numSynchronousReplicas": 0,
                      "password": "repl_password",
                      "slaveReplicas": 1,
                      "synchronousCommit": "off",
                      "user": "repl_user"
                    },
                    "resources": {
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "securityContext": {},
                    "service": {
                      "annotations": {},
                      "port": 5432,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "enabled": false
                    },
                    "shmVolume": {
                      "chmod": {
                        "enabled": true
                      },
                      "enabled": true
                    },
                    "slave": {
                      "affinity": {},
                      "annotations": {},
                      "extraInitContainers": "# - name: do-something\n#   image: busybox\n#   command: ['do', 'something']\n",
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "labels": {},
                      "nodeSelector": {},
                      "podAnnotations": {},
                      "podLabels": {},
                      "priorityClassName": "",
                      "service": {},
                      "sidecars": [],
                      "tolerations": []
                    },
                    "tls": {
                      "certCAFilename": null,
                      "certFilename": "",
                      "certKeyFilename": "",
                      "certificatesSecret": "",
                      "crlFilename": null,
                      "enabled": false,
                      "preferServerCiphers": true
                    },
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "volumePermissions": {
                      "enabled": false,
                      "image": {
                        "pullPolicy": "Always",
                        "registry": "docker.io",
                        "repository": "bitnami/minideb",
                        "tag": "buster"
                      },
                      "securityContext": {}
                    }
                  },
                  "preannotator_queues": {
                    "count": 5,
                    "service": {
                      "port": 5000,
                      "portName": "http",
                      "type": "ClusterIP"
                    }
                  },
                  "priorityClassName": "",
                  "readinessProbe": "httpGet:\n  path: /healthz\n  port: http\ninitialDelaySeconds: 10\ntimeoutSeconds: 1\n",
                  "registryCredentials": {
                    "create": false,
                    "password": "XXXXX",
                    "secretName": "kubernetesdockerhub",
                    "username": "XXXXX"
                  },
                  "replicas": 1,
                  "resources": {},
                  "restartPolicy": "Always",
                  "securityContext": {
                    "enabled": false,
                    "fsGroup": 65534,
                    "fsGroupChangePolicy": "OnRootMismatch",
                    "runAsUser": 65534
                  },
                  "service": {
                    "port": 8200,
                    "portName": "http",
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": false,
                    "name": "annotationlab"
                  },
                  "sharedData": {
                    "enabled": true,
                    "images": {
                      "storageSize": "5Gi"
                    },
                    "storageSize": "100Gi"
                  },
                  "sqlalchemy_pool_size": 10,
                  "telemetry": {
                    "enabled": true
                  },
                  "terminationGracePeriodSeconds": 60,
                  "tolerations": [],
                  "updateStrategy": {
                    "type": "Recreate"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: registry.johnsnowlabs.com/annotationlab/annotationlab-operator:v5.7.0
          createdAt: "2023-12-19T10:26:54Z"
          marketplace.openshift.io/remote-workflow: https://marketplace.redhat.com/en-us/operators/annotationlab/pricing?utm_source=openshift_console
          marketplace.openshift.io/support-workflow: https://marketplace.redhat.com/en-us/operators/annotationlab/support?utm_source=openshift_console
          operatorframework.io/suggested-namespace: johnsnowlabs-operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          support: NLP Lab
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Annotationlab
            name: annotationlabs.apps.johnsnowlabs.com
            version: v1
        description: "NLP Lab is a data labeling and annotation tool that helps you\nlabel
          different types of data using a simple interface with a standardized output\nformat.\n\nIt
          contains enterprise features like Project Management and sharing, SSO\nintegration,
          OpenAPI Specification 3.0 compliant API, task management, and active\nlearning/preannotation
          using Spark NLP.\n\nFurthermore, the production deployment of the application
          is done using a helm chart.\nThe same helm chart is also used to create
          an AWS AMI for an EC2 based single server \ndeployment using packer.\n\nMake
          sure you have defined shared storage such as efs/nfs/cephfs prior to installing
          the NLP Lab Operator.\nUpdate the host property in the YAML configuration
          to define the required domain name to use instead of the \ndefault hostname
          annotationlab.\n\nNLP Lab Operator Installtion guide [NLP Lab Operator][]:\n[NLP
          Lab Operator]: https://nlp.johnsnowlabs.com/docs/en/alab/install    \n"
        displayName: NLPLab
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nlplab
        links:
        - name: Annotationlab
          url: https://annotationlab.domain
        maintainers:
        - email: bhandari@johnsnowlabs.com
          name: bikash
        maturity: alpha
        provider:
          name: JohnSnowLABS
          url: nlp.johnsnowlabs.com
        relatedImages:
        - registry.johnsnowlabs.com/annotationlab/annotationlab-operator:v5.7.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/annotationlab@sha256:b69fde0eb341114893aba097d58455c9e316a97cb829b41c0d080987490a83d3
        version: 5.7.0
      entries:
      - name: annotationlab.v5.7.0
        version: 5.7.0
      - name: annotationlab.v5.4.1
        version: 5.4.1
      - name: annotationlab.v4.9.2
        version: 4.9.2
      name: alpha
    defaultChannel: alpha
    packageName: annotationlab
    provider:
      name: JohnSnowLABS
      url: nlp.johnsnowlabs.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-zero-trust-workload-identity-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: zero-trust-workload-identity-manager.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpiffeCSIDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "agentSocketPath": "/run/spire/agent-sockets",
                  "pluginName": "csi.spiffe.io"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpireAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "logFormat": "text",
                  "logLevel": "info",
                  "nodeAttestor": {
                    "k8sPSATEnabled": "true"
                  },
                  "workloadAttestors": {
                    "k8sEnabled": "true",
                    "workloadAttestorsVerification": {
                      "type": "auto"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpireOIDCDiscoveryProvider",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "csiDriverName": "csi.spiffe.io",
                  "jwtIssuer": "https://oidc-discovery.example.com",
                  "logFormat": "text",
                  "logLevel": "info",
                  "managedRoute": "true",
                  "replicaCount": 1
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "SpireServer",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "caKeyType": "rsa-2048",
                  "caSubject": {
                    "commonName": "SPIRE Server CA",
                    "country": "US",
                    "organization": "Example Corp"
                  },
                  "caValidity": "24h",
                  "datastore": {
                    "connectionString": "/run/spire/data/datastore.sqlite3",
                    "databaseType": "sqlite3",
                    "maxIdleConns": 2,
                    "maxOpenConns": 100
                  },
                  "defaultJWTValidity": "5m",
                  "defaultX509Validity": "1h",
                  "federation": {
                    "bundleEndpoint": {
                      "profile": "https_spiffe",
                      "refreshHint": 300
                    },
                    "federatesWith": [
                      {
                        "bundleEndpointProfile": "https_spiffe",
                        "bundleEndpointUrl": "https://federation.partner.example.com:8443",
                        "endpointSpiffeId": "spiffe://partner.example.com/federation/endpoint",
                        "trustDomain": "partner.example.com"
                      }
                    ],
                    "managedRoute": "true"
                  },
                  "jwtIssuer": "https://oidc-discovery.example.com",
                  "logFormat": "text",
                  "logLevel": "info",
                  "persistence": {
                    "accessMode": "ReadWriteOnce",
                    "size": "2Gi",
                    "storageClass": ""
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ZeroTrustWorkloadIdentityManager",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "cluster"
                },
                "spec": {
                  "bundleConfigMap": "spire-bundle",
                  "clusterName": "prod-cluster",
                  "trustDomain": "example.com"
                }
              },
              {
                "apiVersion": "spire.spiffe.io/v1alpha1",
                "kind": "ClusterFederatedTrustDomain",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "example.com"
                },
                "spec": {
                  "bundleEndpointProfile": "https_web",
                  "trustDomain": "example.com"
                }
              },
              {
                "apiVersion": "spire.spiffe.io/v1alpha1",
                "kind": "ClusterSPIFFEID",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "example-workload",
                  "namespace": "default"
                },
                "spec": {
                  "dnsNameTemplates": [
                    "*.example.com"
                  ],
                  "ttl": 3600,
                  "workloadSelector": {
                    "k8sServiceAccount": {
                      "name": "example-sa",
                      "namespace": "example-ns"
                    }
                  }
                }
              },
              {
                "apiVersion": "spire.spiffe.io/v1alpha1",
                "kind": "ClusterStaticEntry",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/managed-by": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/name": "zero-trust-workload-identity-manager",
                    "app.kubernetes.io/part-of": "zero-trust-workload-identity-manager"
                  },
                  "name": "example-static-entry",
                  "namespace": "default"
                },
                "spec": {
                  "parentID": "spiffe://example.com/spire/server",
                  "selectors": [
                    {
                      "type": "unix",
                      "value": "uid:1000"
                    }
                  ],
                  "spiffeID": "spiffe://example.com/example-workload",
                  "ttl": 3600
                }
              }
            ]
          capabilities: Basic Install
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-rhel9@sha256:9d88df06140dfdfd18f9467fb7ecfdb5508a8f559301b6173c9b6490cc22cc37
          createdAt: 2025-12-17T07:13:42
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: zero-trust-workload-identity-manager
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/zero-trust-workload-identity-manager
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterFederatedTrustDomain
            name: clusterfederatedtrustdomains.spire.spiffe.io
            version: v1alpha1
          - kind: ClusterSPIFFEID
            name: clusterspiffeids.spire.spiffe.io
            version: v1alpha1
          - kind: ClusterStaticEntry
            name: clusterstaticentries.spire.spiffe.io
            version: v1alpha1
          - kind: SpiffeCSIDriver
            name: spiffecsidrivers.operator.openshift.io
            version: v1alpha1
          - kind: SpireAgent
            name: spireagents.operator.openshift.io
            version: v1alpha1
          - kind: SpireOIDCDiscoveryProvider
            name: spireoidcdiscoveryproviders.operator.openshift.io
            version: v1alpha1
          - kind: SpireServer
            name: spireservers.operator.openshift.io
            version: v1alpha1
          - kind: ZeroTrustWorkloadIdentityManager
            name: zerotrustworkloadidentitymanagers.operator.openshift.io
            version: v1alpha1
        description: The Zero Trust Workload Identity Manager is an Openshift Day-2
          Operator designed to automate the setup and management of SPIFFE/SPIRE components
          (like spire-server, spire-agent, spiffe-csi-driver, and oidc-discovery-provider)
          within OpenShift clusters. It enables zero-trust security by dynamically
          issuing and rotating workload identities, enforcing strict identity-based
          authentication across workloads. This manager abstracts complex SPIRE configurations,
          streamlining workload onboarding with secure identities and improving the
          cluster's overall security posture.
        displayName: Zero Trust Workload Identity Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - zero-trust-workload-identity-manager
        - ztwim
        - spire
        - spiffe-spire
        - security
        links:
        - name: Documentation
          url: https://github.com/openshift/zero-trust-workload-identity-manager/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-controller-manager-rhel9@sha256:7ddf330a798dbb112c2f58d2548941100a964db705617680d09969eaa3e07727
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-oidc-discovery-provider-rhel9@sha256:70f04312f96851a37ec9bfcc605d6a7edb4c87b548621007183b7caa2333816a
        - registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-rhel9@sha256:9d88df06140dfdfd18f9467fb7ecfdb5508a8f559301b6173c9b6490cc22cc37
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-csi-driver-rhel9@sha256:5359e8709d1b73386eddef202d59b7c511aa5366ca04f5ee707bbf760977e55d
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:1c480fa5089a32cf804fc84df7219ca64066cbac2eeb962c4385754132c3873b
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-agent-rhel9@sha256:54865d9de74a500528dcef5c24dfe15c0baee8df662e76459e83bf9921dfce4e
        - registry.redhat.io/zero-trust-workload-identity-manager/spiffe-spire-server-rhel9@sha256:6a14fb03c3b7256a405cff52ae0e5c7e66b1fa1a8e3a955d6670123f5534d4e4
        - registry.access.redhat.com/ubi9@sha256:dec374e05cc13ebbc0975c9f521f3db6942d27f8ccdf06b180160490eef8bdbc
        - registry.redhat.io/zero-trust-workload-identity-manager/zero-trust-workload-identity-manager-operator-bundle@sha256:3776c07bfffdf464660750d69bf3725aa74dfc1f207ee8d1f408a8dc6c11eabb
        version: 1.0.0
      entries:
      - name: zero-trust-workload-identity-manager.v1.0.0
        version: 1.0.0
      name: stable-v1
    defaultChannel: stable-v1
    packageName: openshift-zero-trust-workload-identity-manager
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Altair Engineering Inc.
      provider-url: ""
    name: anzograph-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: anzograph-operator.v3.2.500
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "anzograph.clusters.cambridgesemantics.com/v2",
                "kind": "AnzoGraph",
                "metadata": {
                  "name": "azg01"
                },
                "spec": {
                  "db": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app_data": "anzograph-data-grpc",
                            "app_mgmt": "anzograph-mgmt-grpc"
                          }
                        },
                        "serviceName": "anzograph-azg01",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app_data": "anzograph-data-grpc",
                              "app_mgmt": "anzograph-mgmt-grpc"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzograph-db@sha256:30ed2ec337135701ab8b54e75bb48ad8928a2c48818643c23b9dba4484255a2e",
                                "name": "db",
                                "resources": {
                                  "limits": {
                                    "cpu": "8000m",
                                    "memory": "8Gi"
                                  },
                                  "requests": {
                                    "cpu": "8000m",
                                    "memory": "8Gi"
                                  }
                                }
                              }
                            ],
                            "securityContext": {
                              "fsGroup": 1000,
                              "runAsNonRoot": true,
                              "runAsUser": 1000,
                              "seccompProfile": {
                                "type": "RuntimeDefault"
                              }
                            },
                            "serviceAccountName": "anzograph-operator"
                          }
                        }
                      }
                    }
                  },
                  "deployFrontend": false,
                  "frontend": {
                    "nodeConfig": {
                      "spec": {
                        "replicas": 1,
                        "selector": {
                          "matchLabels": {
                            "app_mgmt": "anzograph-frontend"
                          }
                        },
                        "serviceName": "anzograph-azg01",
                        "template": {
                          "metadata": {
                            "labels": {
                              "app_mgmt": "anzograph-frontend"
                            }
                          },
                          "spec": {
                            "containers": [
                              {
                                "image": "registry.connect.redhat.com/cambridgesemantics/anzograph-frontend@sha256:e5446b3c04889f2189e955702c4165eb243eb89f47ac797eb417b60b1459647f",
                                "name": "frontend",
                                "resources": {
                                  "limits": {
                                    "cpu": "2000m",
                                    "memory": "4Gi"
                                  },
                                  "requests": {
                                    "cpu": "2000m",
                                    "memory": "4Gi"
                                  }
                                }
                              }
                            ],
                            "securityContext": {
                              "fsGroup": 1000,
                              "runAsNonRoot": true,
                              "runAsUser": 1000,
                              "seccompProfile": {
                                "type": "RuntimeDefault"
                              }
                            },
                            "serviceAccountName": "anzograph-operator"
                          }
                        }
                      }
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Basic Install
          categories: Database, Big Data
          certified: "true"
          containerImage: registry.connect.redhat.com/cambridgesemantics/anzograph-operator@sha256:2333154a14ab7f3a03a601f00c017feeafb9d9814aff5e59c95cef615ab2abd6
          createdAt: "2025-09-22T12:03:18Z"
          description: kubernetes operator for Altair Graph Lakehouse DB
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: unknown
          repository: ""
          support: Altair Engineering Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AnzoGraph is the Schema for the anzographs API
            displayName: Altair Graph Lakehouse Operator
            kind: AnzoGraph
            name: anzographs.anzograph.clusters.cambridgesemantics.com
            version: v2
        description: |-
          The Altair Graph Lakehouse Operator provides the way to install and configure an Altair Graph Lakehouse
          cluster on Red Hat K8S environment.

          ### Installation
           Refer [installation instructions]( https://github.com/cambridgesemantics/csi-k8s-operator-anzograph/blob/v3.2.5/README_openshift_marketplace.md )

          ### Documentation

          You can find our documentation [here.]( https://docs.cambridgesemantics.com/anzograph/userdoc/ )

          ### Support

          We offer Support to our customers with the Altair Graph Lakehouse db Enterprise Edition License [here]( https://altair.com/customer-support ) or by emailing the Data Analytics Support team at dasupport@altair.com.
        displayName: Altair Graph Lakehouse Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Big Data
        - Database
        links:
        - name: Anzograph Operator
          url: https://github.com/cambridgesemantics/csi-k8s-operator-anzograph/blob/v3.2.5/README_openshift_marketplace.md
        maintainers:
        - email: fschwichtenberg@altair.com
          name: Frank Schwichtenberg
        maturity: stable
        provider:
          name: Altair Engineering Inc.
        relatedImages:
        - registry.connect.redhat.com/cambridgesemantics/anzograph-frontend@sha256:e5446b3c04889f2189e955702c4165eb243eb89f47ac797eb417b60b1459647f
        - registry.connect.redhat.com/cambridgesemantics/anzograph-operator-bundle@sha256:a7b60f1c65a6fb4ee0109c7b2b0bd12fb9487e2f6edb059bd18cfd2337ea9116
        - registry.connect.redhat.com/cambridgesemantics/anzograph-operator@sha256:2333154a14ab7f3a03a601f00c017feeafb9d9814aff5e59c95cef615ab2abd6
        - registry.connect.redhat.com/cambridgesemantics/anzograph-db@sha256:30ed2ec337135701ab8b54e75bb48ad8928a2c48818643c23b9dba4484255a2e
        version: 3.2.500
      entries:
      - name: anzograph-operator.v3.2.500
        version: 3.2.500
      - name: anzograph-operator.v3.2.300
        version: 3.2.300
      - name: anzograph-operator.v3.2.200
        version: 3.2.200
      - name: anzograph-operator.v3.2.104
        version: 3.2.104
      name: stable
    defaultChannel: stable
    packageName: anzograph-operator
    provider:
      name: Altair Engineering Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Habana Labs Ltd.
      provider-url: https://habana.ai
    name: habana-ai-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: habana-ai-operator.v1.22.2-32-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "habanalabs.habana.ai/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "habana-ai"
                },
                "spec": {
                  "bmc_monitoring": {
                    "image": {
                      "repository": "vault.habana.ai/habana-bmc-exporter/bmc-exporter",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "250Mi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "device_plugin": {
                    "image": {
                      "repository": "vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "20m",
                        "memory": "64Mi"
                      },
                      "requests": {
                        "cpu": "10m",
                        "memory": "32Mi"
                      }
                    }
                  },
                  "driver": {
                    "driver_loader": {
                      "images": {
                        "rhel_9.4": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "rhel_9.6": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "tencentos_3.1": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_22.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_24.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer",
                          "tag": "1.22.2-32"
                        }
                      },
                      "mlnx_ofed_repo_path": "artifactory/gaudi-installer/deps",
                      "mlnx_ofed_version": "mlnx-ofed-5.8-2.0.3.0-rhel8.4-x86_64.tar.gz",
                      "repo_path": "artifactory/gaudi-installer/repos",
                      "repo_server": "vault.habana.ai",
                      "resources": {
                        "limits": {
                          "cpu": "4000m",
                          "memory": "16Gi"
                        },
                        "requests": {
                          "cpu": "2000m",
                          "memory": "8Gi"
                        }
                      }
                    },
                    "driver_runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "feature_discovery": {
                    "nfd_plugin": false,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "image_registry": "vault.habana.ai",
                  "metric_exporter": {
                    "interval": 20,
                    "port": 41611,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/gaudi-metric-exporter/metric-exporter",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "memory": "120Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "100Mi"
                        }
                      }
                    }
                  },
                  "runtime": {
                    "configuration": {
                      "container_engine": "crio"
                    },
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habana-container-runtime",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
          createdAt: "2025-11-29T20:54:26Z"
          description: Manages Intel Gaudi AI accelerators within a Kubernetes cluster
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.9.0 <1.22.2-32-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: habana-ai-operator
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: http://github.com/HabanaAI/habana-ai-operator
          support: Habana Labs Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy is the Schema for the clusterpolicies API.
            displayName: Cluster Policy
            kind: ClusterPolicy
            name: clusterpolicies.habanalabs.habana.ai
            version: v1
        description: |
          Kubernetes provides access to accelerators such as Intel Gaudi AI accelerators and other devices through the [Device Plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The Intel Gaudi uses the [operator framework](https://coreos.com/blog/introducing-operator-framework) within Kubernetes to automate the management of all Intel Gaudi software components needed to provision and monitor the Intel Gaudi AI accelerators. These components include:
          * The Intel Gaudi kernel modules to enable the hardware
          * The Kubernetes DevicePlugin to allow the Intel Gaudi AI accelerator allocation via the kubelet
          ### Documentation
          Visit the [Intel Gaudi developer site](https://developer.habana.ai/) for more information.
          To get started with using Intel Gaudi with OpenShift, see the instructions in the [Intel Gaudi Documentation](https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html).
        displayName: Intel Gaudi Base Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - habanalabs
        - hardware
        - driver
        links:
        - name: Intel Gaudi Documentation
          url: https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html
        maintainers:
        - email: erik.berlin@intel.com
          name: Erik Berlin
        - email: tal.david@intel.com
          name: Tal David
        - email: lukasz.wencel@intel.com
          name: Lukasz Wencel
        maturity: stable
        provider:
          name: Habana Labs Ltd.
          url: https://habana.ai
        relatedImages:
        - vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin@sha256:3d47bdff68c5d277bcc9fbacae0a2a9becd3566b5939eeff0899e37d256ba399
        - vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer@sha256:8e2c240d88f353dcbe583d8a2f080ac8c0d67b262bfa3259cfa977c89ac37926
        - vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer@sha256:b4e0e572f521c4d0ec936e08a57261de595fb60cd949c1f630010a6fdc3adc04
        - vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer@sha256:89c88d3881e678a8a7658abddea4548f43f7271d16d6fc23816b59ac7b54a045
        - vault.habana.ai/habana-ai-operator/habana-container-runtime@sha256:4a518f14a65a30fe0838e8e02246b32f04b90d34c473306e36ed5ca34462253e
        - registry.connect.redhat.com/ospid-627904f807c06bb948c71e73/habana-ai@sha256:5a939703888b51e15248203489a2c86874a31dbc4051fedee104cb2663ce8d45
        - vault.habana.ai/gaudi-metric-exporter/metric-exporter@sha256:535a9737602f35b0e1c706f60b2c10cd7bd3fc84f57f72f1b3eedd6c16035382
        - vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer@sha256:1d9a78720caba968c885884844217034e318e3379db840fd1490911a4baaec8c
        - vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery@sha256:837d781b678f0719e33a9d5b43ead4868b16ae8420d959666cbdfaaf74ff47f8
        - vault.habana.ai/habana-bmc-exporter/bmc-exporter@sha256:158af426fef28f8c14a77f71299314701345f786ff0c079066837bdc201b36e7
        - quay.io/brancz/kube-rbac-proxy@sha256:c2ef3c3fcb4ffcfab30088b19c8ef18931aac8cf072c75ef72c654457e1d632b
        - vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer@sha256:1a6e4c500cce53ec77bfc00cd78dbc30038a8b1c55bc59004e52de0254d9d0d1
        - vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
        version: 1.22.2-32-2
      entries:
      - name: habana-ai-operator.v1.22.2-32-2
        version: 1.22.2-32-2
      name: "1.22"
    - currentCSV: habana-ai-operator.v1.22.2-32-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "habanalabs.habana.ai/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "habana-ai"
                },
                "spec": {
                  "bmc_monitoring": {
                    "image": {
                      "repository": "vault.habana.ai/habana-bmc-exporter/bmc-exporter",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "250Mi"
                      },
                      "requests": {
                        "cpu": "150m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "device_plugin": {
                    "image": {
                      "repository": "vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin",
                      "tag": "1.22.2-32"
                    },
                    "resources": {
                      "limits": {
                        "cpu": "20m",
                        "memory": "64Mi"
                      },
                      "requests": {
                        "cpu": "10m",
                        "memory": "32Mi"
                      }
                    }
                  },
                  "driver": {
                    "driver_loader": {
                      "images": {
                        "rhel_9.4": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "rhel_9.6": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "tencentos_3.1": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_22.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                          "tag": "1.22.2-32"
                        },
                        "ubuntu_24.04": {
                          "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer",
                          "tag": "1.22.2-32"
                        }
                      },
                      "mlnx_ofed_repo_path": "artifactory/gaudi-installer/deps",
                      "mlnx_ofed_version": "mlnx-ofed-5.8-2.0.3.0-rhel8.4-x86_64.tar.gz",
                      "repo_path": "artifactory/gaudi-installer/repos",
                      "repo_server": "vault.habana.ai",
                      "resources": {
                        "limits": {
                          "cpu": "4000m",
                          "memory": "16Gi"
                        },
                        "requests": {
                          "cpu": "2000m",
                          "memory": "8Gi"
                        }
                      }
                    },
                    "driver_runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "feature_discovery": {
                    "nfd_plugin": false,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  },
                  "image_registry": "vault.habana.ai",
                  "metric_exporter": {
                    "interval": 20,
                    "port": 41611,
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/gaudi-metric-exporter/metric-exporter",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "memory": "120Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "100Mi"
                        }
                      }
                    }
                  },
                  "runtime": {
                    "configuration": {
                      "container_engine": "crio"
                    },
                    "runner": {
                      "image": {
                        "repository": "vault.habana.ai/habana-ai-operator/habana-container-runtime",
                        "tag": "1.22.2-32"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "20m",
                          "memory": "64Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "32Mi"
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
          createdAt: "2025-11-29T20:54:26Z"
          description: Manages Intel Gaudi AI accelerators within a Kubernetes cluster
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.9.0 <1.22.2-32-2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: habana-ai-operator
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: http://github.com/HabanaAI/habana-ai-operator
          support: Habana Labs Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy is the Schema for the clusterpolicies API.
            displayName: Cluster Policy
            kind: ClusterPolicy
            name: clusterpolicies.habanalabs.habana.ai
            version: v1
        description: |
          Kubernetes provides access to accelerators such as Intel Gaudi AI accelerators and other devices through the [Device Plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The Intel Gaudi uses the [operator framework](https://coreos.com/blog/introducing-operator-framework) within Kubernetes to automate the management of all Intel Gaudi software components needed to provision and monitor the Intel Gaudi AI accelerators. These components include:
          * The Intel Gaudi kernel modules to enable the hardware
          * The Kubernetes DevicePlugin to allow the Intel Gaudi AI accelerator allocation via the kubelet
          ### Documentation
          Visit the [Intel Gaudi developer site](https://developer.habana.ai/) for more information.
          To get started with using Intel Gaudi with OpenShift, see the instructions in the [Intel Gaudi Documentation](https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html).
        displayName: Intel Gaudi Base Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - habanalabs
        - hardware
        - driver
        links:
        - name: Intel Gaudi Documentation
          url: https://docs.habana.ai/en/latest/Orchestration/HabanaAI_Operator/index.html
        maintainers:
        - email: erik.berlin@intel.com
          name: Erik Berlin
        - email: tal.david@intel.com
          name: Tal David
        - email: lukasz.wencel@intel.com
          name: Lukasz Wencel
        maturity: stable
        provider:
          name: Habana Labs Ltd.
          url: https://habana.ai
        relatedImages:
        - vault.habana.ai/docker-k8s-device-plugin/docker-k8s-device-plugin@sha256:3d47bdff68c5d277bcc9fbacae0a2a9becd3566b5939eeff0899e37d256ba399
        - vault.habana.ai/gaudi-metric-exporter/metric-exporter@sha256:535a9737602f35b0e1c706f60b2c10cd7bd3fc84f57f72f1b3eedd6c16035382
        - vault.habana.ai/habana-ai-operator/habana-container-runtime@sha256:4a518f14a65a30fe0838e8e02246b32f04b90d34c473306e36ed5ca34462253e
        - quay.io/brancz/kube-rbac-proxy@sha256:c2ef3c3fcb4ffcfab30088b19c8ef18931aac8cf072c75ef72c654457e1d632b
        - vault.habana.ai/habana-ai-operator/intel-gaudi-kubernetes-operator@sha256:4075a036ac3f32cb1ca4eb38bd011e67c532fd2f9cd250663111fa927b9169c3
        - vault.habana.ai/habana-ai-operator/driver/rhel9.4/driver-installer@sha256:1a6e4c500cce53ec77bfc00cd78dbc30038a8b1c55bc59004e52de0254d9d0d1
        - vault.habana.ai/habana-ai-operator/driver/tencentos3.1/driver-installer@sha256:b4e0e572f521c4d0ec936e08a57261de595fb60cd949c1f630010a6fdc3adc04
        - vault.habana.ai/habana-ai-operator/driver/ubuntu24.04/driver-installer@sha256:89c88d3881e678a8a7658abddea4548f43f7271d16d6fc23816b59ac7b54a045
        - vault.habana.ai/habana-ai-operator/habanalabs-feature-discovery@sha256:837d781b678f0719e33a9d5b43ead4868b16ae8420d959666cbdfaaf74ff47f8
        - vault.habana.ai/habana-ai-operator/driver/rhel9.6/driver-installer@sha256:8e2c240d88f353dcbe583d8a2f080ac8c0d67b262bfa3259cfa977c89ac37926
        - vault.habana.ai/habana-ai-operator/driver/ubuntu22.04/driver-installer@sha256:1d9a78720caba968c885884844217034e318e3379db840fd1490911a4baaec8c
        - vault.habana.ai/habana-bmc-exporter/bmc-exporter@sha256:158af426fef28f8c14a77f71299314701345f786ff0c079066837bdc201b36e7
        - registry.connect.redhat.com/ospid-627904f807c06bb948c71e73/habana-ai@sha256:5a939703888b51e15248203489a2c86874a31dbc4051fedee104cb2663ce8d45
        version: 1.22.2-32-2
      entries:
      - name: habana-ai-operator.v1.22.2-32-2
        version: 1.22.2-32-2
      name: stable
    defaultChannel: stable
    packageName: habana-ai-operator
    provider:
      name: Habana Labs Ltd.
      url: https://habana.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ptp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ptp-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ptp.openshift.io/v1",
                "kind": "NodePtpDevice",
                "metadata": {
                  "name": "node.example.com"
                },
                "spec": {}
              },
              {
                "apiVersion": "ptp.openshift.io/v1",
                "kind": "PtpConfig",
                "metadata": {
                  "name": "example-ptpconfig"
                },
                "spec": {
                  "profile": [
                    {
                      "interface": "ens787f1",
                      "name": "profile1",
                      "phc2sysOpts": "-a -r",
                      "ptp4lOpts": "-s -2",
                      "ptpClockThreshold": {}
                    }
                  ],
                  "recommend": [
                    {
                      "match": [
                        {
                          "nodeLabel": "node-role.kubernetes.io/worker=",
                          "nodeName": "node.example.com"
                        }
                      ],
                      "priority": 4,
                      "profile": "profile1"
                    }
                  ]
                }
              },
              {
                "apiVersion": "ptp.openshift.io/v1",
                "kind": "PtpOperatorConfig",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "daemonNodeSelector": {
                    "feature.node.kubernetes.io/ptp-capable": "yes",
                    "node-role.kubernetes.io/worker": ""
                  },
                  "ptpEventConfig": {}
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-ptp-rhel9-operator@sha256:60db6e526e38ecc4b5f6bfb7bb036776522052ff2e7b7815f83ca896eeaf07d3
          createdAt: "2024-06-12"
          description: This software enables configuration of Precision Time Protocol(PTP)
            on Kubernetes. It detects hardware capable PTP devices on each node, and
            configures linuxptp processes such as ptp4l, phc2sys and timemaster.
          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: "true"
          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.skipRange: '>=4.3.0-0 <4.20.0-202512090918'
          operatorframework.io/suggested-namespace: openshift-ptp
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.22.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: Red Hat
          repository: https://github.com/k8snetworkplumbingwg/ptp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodePtpDevice is the Schema for the nodeptpdevices API
            displayName: Node Ptp Device
            kind: NodePtpDevice
            name: nodeptpdevices.ptp.openshift.io
            version: v1
          - description: PtpConfig is the Schema for the ptpconfigs API
            displayName: Ptp Config
            kind: PtpConfig
            name: ptpconfigs.ptp.openshift.io
            version: v1
          - description: PtpOperatorConfig is the Schema for the ptpoperatorconfigs
              API
            displayName: Ptp Operator Config
            kind: PtpOperatorConfig
            name: ptpoperatorconfigs.ptp.openshift.io
            version: v1
        description: |
          # Precision Time Protocol (PTP) Operator for Openshift

          ## Introdution
          PTP Operator manages cluster wide PTP configuration.
          This operator has to run in namespace 'openshift-ptp'. An Operator Group is also required to install this operator:
          ```
          $ oc create -f - <<EOF
          apiVersion: v1
          kind: Namespace
          metadata:
            name: openshift-ptp
            labels:
              name: openshift-ptp
              openshift.io/cluster-monitoring: "true"
          EOF

          $ oc create -f - <<EOF
          apiVersion: operators.coreos.com/v1
          kind: OperatorGroup
          metadata:
            name: ptp-operators
            namespace: openshift-ptp
          spec:
            targetNamespaces:
            - openshift-ptp
          EOF
          ```
        displayName: PTP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ptp
        links:
        - name: Documentation operator
          url: https://github.com/k8snetworkplumbingwg/ptp-operator
        - name: Documentation operand
          url: https://github.com/k8snetworkplumbingwg/linuxptp-daemon
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-ptp-operator-bundle@sha256:8c575641252b62703f2c9a925805f6ba29ba2b21f31c3c4ef2752942fda4dc3e
        - registry.redhat.io/openshift4/ose-cloud-event-proxy-rhel9@sha256:d96187c19aff7b750075052828058c1b061a7b476c047598d78414c545b58562
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-ptp-rhel9-operator@sha256:60db6e526e38ecc4b5f6bfb7bb036776522052ff2e7b7815f83ca896eeaf07d3
        - registry.redhat.io/openshift4/ose-ptp-rhel9@sha256:bb0c3bd53144f85bea73066bed2770b0fd49a9c019f56a9f6d6f92e63c8afc81
        version: 4.20.0-202512090918
      entries:
      - name: ptp-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: ptp-operator.v4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: ptp-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: ptp-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: ptp-operator.v4.20.0-202511042325
        version: 4.20.0-202511042325
      - name: ptp-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: ptp-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: ptp-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: ptp-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ODH
      provider-url: ""
    name: opendatahub-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opendatahub-operator.v2.35.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "odh-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "opendatahub",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "opendatahub"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v2.35.0
          createdAt: "2025-10-01T13:12:27Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/opendatahub-io/opendatahub-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odh
        - notebooks
        - serving
        - training
        - pipelines
        - modelmesh
        - workbenches
        - dashboard
        - kserve
        - distributed workloads
        - trustyai
        - modelregistry
        - feast
        - featurestore
        - llamastack
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: opendatahub@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ODH
        relatedImages:
        - quay.io/community-operator-pipeline-prod/opendatahub-operator:2.35.0
        - quay.io/opendatahub/opendatahub-operator:v2.35.0
        version: 2.35.0
      entries:
      - name: opendatahub-operator.v2.35.0
        version: 2.35.0
      - name: opendatahub-operator.v2.34.0
        version: 2.34.0
      - name: opendatahub-operator.v2.33.0
        version: 2.33.0
      - name: opendatahub-operator.v2.32.0
        version: 2.32.0
      - name: opendatahub-operator.v2.31.0
        version: 2.31.0
      - name: opendatahub-operator.v2.30.0
        version: 2.30.0
      - name: opendatahub-operator.v2.29.0
        version: 2.29.0
      - name: opendatahub-operator.v2.28.0
        version: 2.28.0
      - name: opendatahub-operator.v2.27.0
        version: 2.27.0
      - name: opendatahub-operator.v2.26.0
        version: 2.26.0
      - name: opendatahub-operator.v2.25.0
        version: 2.25.0
      - name: opendatahub-operator.v2.24.0
        version: 2.24.0
      - name: opendatahub-operator.v2.23.0
        version: 2.23.0
      - name: opendatahub-operator.v2.22.0
        version: 2.22.0
      - name: opendatahub-operator.v2.21.0
        version: 2.21.0
      - name: opendatahub-operator.v2.20.0
        version: 2.20.0
      - name: opendatahub-operator.v2.19.0
        version: 2.19.0
      - name: opendatahub-operator.v2.18.2
        version: 2.18.2
      - name: opendatahub-operator.v2.18.1
        version: 2.18.1
      - name: opendatahub-operator.v2.18.0
        version: 2.18.0
      - name: opendatahub-operator.v2.17.0
        version: 2.17.0
      - name: opendatahub-operator.v2.16.0
        version: 2.16.0
      - name: opendatahub-operator.v2.15.0
        version: 2.15.0
      - name: opendatahub-operator.v2.14.0
        version: 2.14.0
      - name: opendatahub-operator.v2.13.0
        version: 2.13.0
      - name: opendatahub-operator.v2.12.1
        version: 2.12.1
      - name: opendatahub-operator.v2.12.0
        version: 2.12.0
      - name: opendatahub-operator.v2.11.1
        version: 2.11.1
      - name: opendatahub-operator.v2.11.0
        version: 2.11.0
      - name: opendatahub-operator.v2.10.0
        version: 2.10.0
      name: fast
    - currentCSV: opendatahub-operator.v3.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v2",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "datasciencecluster"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "aipipelines": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "rawDeploymentServiceConfig": "Headed"
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "mlflowoperator": {
                      "managementState": "Removed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "odh-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainer": {
                      "managementState": "Removed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v2",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "dscinitialization"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "opendatahub",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "opendatahub"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v3.2.0
          createdAt: "2025-12-19T00:40:32Z"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["featuretrackers.features.opendatahub.io",
            "dashboards.components.platform.opendatahub.io", "datasciencepipelines.components.platform.opendatahub.io",
            "kserves.components.platform.opendatahub.io", "kueues.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io",
            "llamastackoperators.components.platform.opendatahub.io", "trainers.components.platform.opendatahub.io",
            "mlflowoperators.components.platform.opendatahub.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/opendatahub-io/opendatahub-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v2
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v2
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: GatewayConfig is the Schema for the gatewayconfigs API
            displayName: Gateway Config
            kind: GatewayConfig
            name: gatewayconfigs.services.platform.opendatahub.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: MLflowOperator is the Schema for the MLflowOperators API
            displayName: MLflow Operator
            kind: MLflowOperator
            name: mlflowoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelsAsService
            name: modelsasservices.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - kind: Trainer
            name: trainers.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: "The Open Data Hub is a machine-learning-as-a-service platform
          built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open
          Data Hub integrates multiple AI/ML open source components into one operator
          that can easily be downloaded and installed by OpenShift users.\n\nOpen
          Data Hub operator allows users to install and manage components of the Open
          Data Hub. Users can mix and match tools from each project to fulfill the
          needs of their use case. Each of the projects share some components, but
          can be mostly seen as an extension of each other to provide a complete solution
          for both novice and skilled enterprise users.\n    \n### Components\n\n*
          Open Data Hub Dashboard - A web dashboard that displays installed Open Data
          Hub components with easy access to component UIs and documentation\n* ODH
          Notebook Controller - Secure management of Jupyter Notebook in Kubernetes
          environments built on top of Kubeflow Notebook Controller with support for
          OAuth\n* Jupyter Notebooks - JupyterLab notebook that provide Python support
          for GPU workloads\n* Data Science Pipelines - Pipeline solution for end
          to end MLOps workflows that support the Kubeflow Pipelines SDK and Argo
          Workflows\n* Model Mesh - ModelMesh Serving is the Controller for managing
          ModelMesh, a general-purpose model serving management/routing layer\n* Distributed
          Workloads(Incubation) - Stack built to make managing distributed compute
          infrastructure in the cloud easy and intuitive for Data Scientists. This
          stack consists of two components\n                                      KubeRay
          and Kueue.\n* Kserve - Kserve is the Controller for for serving machine
          learning (ML) models on arbitrary frameworks\n* Feast - Feature Store is
          the fastest path to manage existing infrastructure to productionize analytic
          data for model training and online inference.\n* Llama Stack – unified open‑source
          APIs for inference, RAG, agents, safety, evals & telemetry\n* MLflow - MLflow
          is an open-source platform, purpose-built to assist machine learning practitioners
          and teams in handling the complexities of the machine learning process.
          MLflow focuses on the full lifecycle for machine learning projects, ensuring
          that each phase is manageable, traceable, and reproducible."
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odh
        - notebooks
        - serving
        - training
        - pipelines
        - workbenches
        - dashboard
        - kserve
        - distributed workloads
        - trustyai
        - modelregistry
        - feast
        - featurestore
        - llamastack
        - mlflow
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: ai-core-platform@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ODH
        relatedImages:
        - quay.io/community-operator-pipeline-prod/opendatahub-operator:3.2.0
        - quay.io/opendatahub/odh-kube-auth-proxy:v3.2.0
        - quay.io/opendatahub/opendatahub-operator:v3.2.0
        version: 3.2.0
      entries:
      - name: opendatahub-operator.v3.2.0
        version: 3.2.0
      - name: opendatahub-operator.v3.1.0
        version: 3.1.0
      - name: opendatahub-operator.v3.0.0
        version: 3.0.0
      name: fast-3
    - currentCSV: opendatahub-operator.v2.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "opendatahub",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "opendatahub"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              },
              {
                "apiVersion": "features.opendatahub.io/v1",
                "kind": "FeatureTracker",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "opendatahub-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "default-feature",
                    "app.kubernetes.io/part-of": "opendatahub-operator"
                  },
                  "name": "default-feature"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v2.8.0
          createdAt: "2024-2-20T00:00:00Z"
          operatorframework.io/initialization-resource: |-
            {
            "apiVersion": "dscinitialization.opendatahub.io/v1",
            "kind": "DSCInitialization",
            "metadata": {
            "labels": {
             "app.kubernetes.io/created-by": "opendatahub-operator",
             "app.kubernetes.io/instance": "default",
             "app.kubernetes.io/managed-by": "kustomize",
             "app.kubernetes.io/name": "dscinitialization",
             "app.kubernetes.io/part-of": "opendatahub-operator"
            },
            "name": "default-dsci"
            },
            "spec": {
            "applicationsNamespace": "opendatahub",
            "monitoring": {
             "managementState": "Managed",
             "namespace": "opendatahub"
            },
            "serviceMesh": {
             "controlPlane": {
               "metricsCollection": "Istio",
               "name": "data-science-smcp",
               "namespace": "istio-system"
             },
             "managementState": "Managed"
            },
            "trustedCABundle": {
             "customCABundle": "",
             "managementState": "Managed"
            }
            }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/opendatahub-io/opendatahub-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: "The Open Data Hub is a machine-learning-as-a-service platform
          built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open
          Data Hub integrates multiple AI/ML open source components into one operator
          that can easily be downloaded and installed by OpenShift users.\n\nOpen
          Data Hub operator allows users to install and manage components of the Open
          Data Hub. Users can mix and match tools from each project to fulfill the
          needs of their use case. Each of the projects share some components, but
          can be mostly seen as an extension of each other to provide a complete solution
          for both novice and skilled enterprise users.\n    \n### Components\n\n*
          Open Data Hub Dashboard - A web dashboard that displays installed Open Data
          Hub components with easy access to component UIs and documentation\n* ODH
          Notebook Controller - Secure management of Jupyter Notebook in Kubernetes
          environments built on top of Kubeflow Notebook Controller with support for
          OAuth\n* Jupyter Notebooks - JupyterLab notebook that provide Python support
          for GPU workloads\n* Data Science Pipelines - Pipeline solution for end
          to end MLOps workflows that support the Kubeflow Pipelines SDK and Tekton\n*
          Model Mesh - ModelMesh Serving is the Controller for managing ModelMesh,
          a general-purpose model serving management/routing layer\n* Distributed
          Workloads(Incubation) - Stack built to make managing distributed compute
          infrastructure in the cloud easy and intuitive for Data Scientists. This
          stack consists of three components \n                                      Codeflare
          , KubeRay and Kueue.\n* Kserve - Kserve is the Controller for for serving
          machine learning (ML) models on arbitrary frameworks"
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odh
        - notebooks
        - serving
        - training
        - pipelines
        - modelmesh
        - workbenches
        - dashboard
        - kserve
        - distributed-workloads
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: opendatahub@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: ODH
        relatedImages:
        - quay.io/community-operator-pipeline-prod/opendatahub-operator@sha256:d3e3d5ae02b834522481fa9046bf2ad3ea06d706c5cb06a32d32e61e229e4a6c
        - quay.io/opendatahub/opendatahub-operator:v2.8.0
        version: 2.8.1
      entries:
      - name: opendatahub-operator.v2.8.1
        version: 2.8.1
      name: odh-2.8.z
    - currentCSV: opendatahub-operator.v1.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kfdef.apps.kubeflow.org/v1",
                "kind": "KfDef",
                "metadata": {
                  "name": "opendatahub",
                  "namespace": "opendatahub"
                },
                "spec": {
                  "applications": [
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-common"
                        }
                      },
                      "name": "odh-common"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-dashboard"
                        }
                      },
                      "name": "odh-dashboard"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "data-science-pipelines-operator/"
                        }
                      },
                      "name": "data-science-pipelines-operator"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-notebook-controller"
                        }
                      },
                      "name": "odh-notebook-controller"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "notebook-images"
                        }
                      },
                      "name": "notebook-images"
                    },
                    {
                      "kustomizeConfig": {
                        "parameters": [
                          {
                            "name": "monitoring-namespace",
                            "value": "opendatahub"
                          }
                        ],
                        "repoRef": {
                          "name": "manifests",
                          "path": "model-mesh"
                        }
                      },
                      "name": "model-mesh"
                    }
                  ],
                  "repos": [
                    {
                      "name": "manifests",
                      "uri": "file:///opt/manifests/odh-manifests.tar.gz"
                    }
                  ]
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhApplication",
                "metadata": {
                  "name": "example-odhapplication",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started,Model development,Model training,Notebook environments,Package management,Data Management"
                  }
                },
                "spec": {
                  "displayName": "ODHAPPLICATION DISPLAY NAME",
                  "provider": "PROVIDER_NAME",
                  "description": "Description of your ODHApplication",
                  "kfdefApplications": [
                    "<NAME OF THE ODH APPLICATION IN KFDEF>"
                  ],
                  "route": "<APPLICATION_OCP_ROUTE_OBJECT_NAME>",
                  "img": "<svg xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" viewBox=\"-1.13 -1.13 58.50 48.94\"><title>Open Data Hub logo</title><g><g><g fill=\"#4d5258\" stroke-width=\".006\"><path fill=\"#bbb\" d=\"M112.30231 22.797083c-.2034 0-.35737.143517-.35737.337407 0 .192939.15397.339307.35737.339307.20339 0 .35736-.147318.35736-.339307 0-.19294-.15397-.337407-.35736-.337407zm.002.131161c.1112 0 .20149.08934.20149.206246 0 .116904-.0903.208146-.20149.208146-.1112 0-.2053-.09124-.2053-.208146 0-.116904.0931-.206246.2053-.206246zM113.04141 22.801836h-.28228v.665308h.15017v-.190088h.13211c.16918 0 .26612-.08934.26612-.244263 0-.147319-.0969-.230957-.26612-.230957zm-.008.349762h-.12451v-.225255h.12451c.0836 0 .13116.03707.13116.111202 0 .07603-.0475.114053-.13116.114053zM113.40328 22.801836v.665308h.51703v-.124508h-.36687v-.147318h.32125V23.07081h-.32125v-.144467h.35642v-.124507zM114.03814 22.801836v.665308h.14352v-.426748l.3222.426748h.13686v-.665308h-.14257v.427698L114.175 22.801836z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/><path d=\"M115.29685 22.801836h-.28228v.665308h.27658c.21004 0 .35546-.136863.35546-.332654 0-.196741-.14351-.332654-.34976-.332654zm.004.538899h-.13591v-.412491h.12926c.11405 0 .19959.08459.19959.207196 0 .121657-.0817.205295-.19294.205295zM116.21878 23.467144h.16062l-.28418-.665308h-.15492l-.28894.665308h.15493l.0523-.12926h.30794zm-.3108-.249966l.1055-.25852.10455.25852zM116.31525 22.801836v.127359h.20244v.537949h.15017v-.537949h.2034v-.127359zM117.37527 23.467144h.16063l-.28419-.665308h-.15492l-.28893.665308h.15492l.0523-.12926h.30795zm-.31079-.249966l.1055-.25852.10454.25852zM117.83433 22.801836v.665308h.15017v-.262322h.30129v.262322h.15017v-.665308h-.15017v.277528h-.30129v-.277528zM118.72025 23.188665v-.386829h-.15017v.386829c0 .175831.11785.285132.30224.285132.18343 0 .29844-.109301.29844-.285132v-.386829h-.15017v.386829c0 .09599-.0589.153971-.14827.153971-.0893 0-.15207-.05798-.15207-.153971zM119.61059 22.801836h-.30604v.665308h.31649c.15492 0 .25092-.07033.25092-.184385 0-.08744-.0532-.152071-.13876-.168228.0713-.01806.115-.07413.115-.146368 0-.102648-.0912-.166327-.23761-.166327zm-.008.268024h-.14826v-.145418h.14826c.0561 0 .0913.02566.0913.07128 0 .04657-.0352.07413-.0913.07413zm0 .274677h-.14826v-.158723h.14826c.0713 0 .11406.02946.11406.07794 0 .05132-.0428.08079-.11406.08079z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g><g fill=\"#58595b\" stroke-width=\".01\"><path d=\"M112.19192 24.15027h.0381l-.13717-.306759h-.0364l-.1376.306759h.0372l.0342-.07844h.16696zm-.18712-.110871l.0688-.157763.0697.157763zM112.27858 23.843511v.306759h.0351v-.306759zM112.64205 23.843511h-.11525v.306759h.0351v-.09729h.0802c.0758 0 .11964-.039.11964-.10649 0-.0653-.0438-.102983-.11964-.102983zm-.001.177044h-.0789V23.87594h.0789c.0552 0 .0872.02454.0872.07143 0 .0482-.032.07318-.0872.07318zM112.81775 23.825105v.325165h.0342v-.325165zM113.1137 24.15027l-.00044-.152503c-.00044-.04908-.032-.07932-.089-.07932-.0394 0-.0644.01139-.0942.03111l.0145.0241c.0241-.01709.0478-.02673.0732-.02673.0408 0 .0618.0206.0618.05434v.01446h-.0758c-.0543.000439-.0863.02586-.0863.06617 0 .03944.0307.06968.0784.06968.0368 0 .0662-.01227.0846-.03725v.03593zm-.11131-.02717c-.0324 0-.053-.01709-.053-.04251 0-.02585.0202-.03769.0587-.03769h.0719v.02805c-.009.03287-.0386.05215-.0776.05215zM113.29915 24.108201c-.0127.0074-.025.01139-.0368.01183-.0197 0-.0307-.01139-.0307-.03944v-.127086h.0732v-.02673h-.0732v-.06048h-.0337v.06048h-.0333v.02673h.0333v.132783c0 .04558.025.06573.0587.0653.0184 0 .0359-.0061.0521-.01709zM113.44228 23.854466c.0118 0 .0245.0044.0351.01183l.014-.02629c-.014-.01052-.032-.01622-.0495-.01622-.0386-.000438-.0741.02717-.0741.07713v.02586h-.0298v.02673h.0298v.196764h.0337v-.196764h.0662v-.02673h-.0662v-.03024c0-.02717.0184-.04251.0408-.04207zM113.59236 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM113.80323 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM114.22747 23.918448c-.0443.000438-.0767.01972-.0911.06004-.01-.03813-.0394-.06004-.0828-.06004-.0416.000438-.0727.01753-.0881.05346v-.05215h-.0337v.230508h.0337v-.113501c0-.04996.0285-.08458.0758-.08589.0403 0 .064.02454.064.06617v.133221h.0346v-.113501c0-.04996.0276-.08458.0754-.08589.0399 0 .064.02454.064.06617v.133221h.0342V24.00828c0-.05609-.032-.08984-.0859-.08984zM114.63474 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0487.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11088-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM114.89934 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM115.02844 23.919762l.0863.230508h.0355l.0675-.188876.0679.188876h.0355l.0855-.230508h-.0355l-.0675.195888-.0679-.195888h-.0359l-.067.195888-.0684-.195888zM115.53009 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM115.73075 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM115.95034 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11482.116569.0386 0 .071-.01402.0929-.03813l-.0188-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18843c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM116.29474 23.825105v.144615c-.0171-.03287-.0491-.05171-.0903-.05171-.0653 0-.11087.04777-.11087.116569 0 .0688.0456.117445.11131.117445.0412 0 .0727-.01884.0898-.05127v.04952h.0342v-.325165zm-.0833.297557c-.0491 0-.0837-.03637-.0837-.08721 0-.05083.0346-.08765.0837-.08765.0486 0 .0833.03681.0833.08765 0 .05083-.0346.08721-.0833.08721zM116.65984 23.918448c-.0403 0-.0719.01884-.089.05083v-.144177h-.0342v.325165h.0342v-.04952c.0171.03199.0486.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM116.89657 24.183138l.10605-.263376h-.0351l-.0732.191944-.0767-.191944h-.0359l.0955.228756-.01.02191c-.009.02191-.0241.03331-.0421.03331-.0114 0-.0219-.0035-.0324-.01095l-.0145.02717c.014.01139.0294.01665.0486.01665.0307 0 .0548-.01841.0692-.05346zM117.29947 23.842634c-.0898 0-.16083.06793-.16083.154257 0 .08633.071.154694.16083.154694.0894 0 .16039-.06836.16039-.154694 0-.08633-.071-.154257-.16039-.154257zm0 .03243c.0684 0 .12446.0539.12446.121828 0 .06792-.0561.122703-.12446.122703-.0684 0-.12533-.05478-.12533-.122703 0-.06793.057-.121828.12533-.121828zM117.64414 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0486.05083.0898.05083.0653 0 .10999-.04777.10999-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM117.9061 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM118.19616 23.918448c-.0421.000438-.0732.01709-.0894.05215v-.05084h-.0342v.230508h.0342v-.12358c.004-.0447.032-.07494.0776-.07537.0408 0 .0653.02454.0653.06573v.133221h.0342v-.141986c0-.05609-.0324-.08984-.0876-.08984zM118.65836 23.901795l.0149-.03111c-.0254-.01709-.0618-.02848-.0973-.02848-.0635 0-.10605.03068-.10605.07888 0 .109995.17266.06661.17222.148559 0 .0298-.0276.04777-.0719.04777-.0346 0-.0736-.01578-.1021-.04295l-.0158.03024c.0289.02761.0727.04689.11745.04689.0657 0 .11087-.03287.11087-.0837.00044-.11131-.17223-.06968-.17223-.149436 0-.02629.0259-.04207.0653-.04207.0245 0 .057.0075.0846.02542zM118.84168 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .11701-.04777.11701-.117007 0-.06836-.0487-.11613-.11701-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM119.18446 23.919762v.113063c0 .04996-.0281.08502-.0758.08589-.0399 0-.064-.02454-.064-.06573v-.133222h-.0342v.141986c0 .05565.0324.08984.0863.08984.0416-.000438.0723-.01753.0876-.05346v.05215h.0342v-.230508zM119.33586 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM119.62557 23.976294l.0188-.02366c-.021-.02147-.0517-.03418-.089-.03418-.0666 0-.11438.0482-.11438.116568 0 .0688.0473.116569.11438.116569.0399 0 .0719-.0149.0925-.03988l-.0197-.02016c-.0162.01928-.0412.0298-.0714.0298-.0478 0-.082-.03506-.082-.08633 0-.05083.0342-.08589.082-.08589.028 0 .0513.01008.0688.02717zM119.78997 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g></g><g><g><path fill=\"#a586f3\" d=\"m 7808.8125,2097.1875 c -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 v 329.875 c -0.8781,10.2195 7.1804,19 17.4375,19 10.2571,0 19.0227,-8.7805 18.1446,-19 v -77.7324 l 0.4179,-6.1426 c 0,-55.1597 44.2153,-99.5625 99.375,-99.5625 55.1596,0 99.5625,44.4028 99.5625,99.5625 0.01,0.1837 0.015,0.3674 0.027,0.5508 -0.026,0.4409 -0.035,0.8826 -0.027,1.3242 v 110 c 0,9.6822 7.849,17.5312 17.5312,17.5312 9.6823,0 17.5313,-7.849 17.5313,-17.5312 v -110 c 0,-0.3245 -0.012,-0.6488 -0.031,-0.9727 0.018,-0.3004 0.029,-0.6013 0.031,-0.9023 1e-4,-74.075 -60.55,-134.4374 -134.625,-134.4375 -39.9177,1e-4 -75.8465,17.5354 -100.5,45.293 V 2115 c 0.1749,-9.8356 -7.7881,-17.8833 -17.625,-17.8125 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><path fill=\"#5ed3ee\" d=\"m 7765.8027,2098.123 c -0.038,5e-4 -0.077,0 -0.1152,0 -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 V 2361 c 0,41.9333 -26.0162,79.2671 -65.4375,93.5625 -39.4213,14.2954 -83.5594,2.3741 -110.4375,-29.8125 -26.878,-32.1865 -30.6579,-77.5719 -9.5625,-113.8125 21.0955,-36.2406 62.4262,-55.2897 103.6875,-47.8125 9.5173,1.7397 18.6463,-4.5547 20.4043,-14.0686 1.758,-9.514 -4.5187,-18.6551 -14.0293,-20.4314 -55.6354,-10.082 -111.8054,15.8219 -140.25,64.6875 -28.4446,48.8656 -23.3039,110.5381 12.9375,153.9375 36.2415,43.3993 95.908,59.4005 149.0625,40.125 44.7667,-16.2337 77.0286,-54.658 86.0977,-100.1562 0,0 1.9812,-4.7686 2.5898,-9.1563 0.6086,-4.3877 0,-17.0625 0,-17.0625 v -245.0625 c 0.1769,-9.865 -7.8313,-17.9263 -17.6973,-17.8145 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><g fill=\"none\" stroke-width=\".365\" transform=\"translate(-449.265 -83.342) scale(5.91262)\"><circle cx=\"79.677\" cy=\"16.823\" r=\".645\" stroke=\"#c6ea70\"/><path stroke=\"#dff3b1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 80.808656,18.234303 a 1.8088735,1.8088735 0 0 1 -2.309183,-0.03848 1.8088735,1.8088735 0 0 1 -0.389241,-2.276466 1.8088735,1.8088735 0 0 1 2.165211,-0.803532\"/><path stroke=\"#f2fadf\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 82.216272,17.248644 a 2.455857,2.4425189 0 0 1 -2.468226,2.016391 2.455857,2.4425189 0 0 1 -2.383743,-2.114547 2.455857,2.4425189 0 0 1 1.733108,-2.668494\"/></g></g></g></g></svg>",
                  "category": "Open Data Hub",
                  "support": "open data hub",
                  "docsLink": "http://REPLACE.THIS.URL",
                  "quickStart": "example-odhquickstart",
                  "getStartedLink": "http://REPLACE.THIS.URL",
                  "getStartedMarkDown": "# Header for Getting Started MarkDown section\nHere is where you add information about your ODHApplication in markdown format\n\n1. List item\n1. List item\n1. List item"
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhDocument",
                "metadata": {
                  "name": "example-odhdocument",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHDocument",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "type": "how-to",
                  "description": "This is an example of an ODHDocument custom resource",
                  "url": "http://REPLACE.THIS.URL",
                  "durationMinutes": 5
                }
              },
              {
                "apiVersion": "console.openshift.io/v1",
                "kind": "OdhQuickStart",
                "metadata": {
                  "name": "example-odhquickstart",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHQuickstart Name",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "durationMinutes": 5,
                  "description": "Description of an example quickstart",
                  "introduction": "### Introduction Header\nThis is the body of the introduction for an ODHQuickstart",
                  "tasks": [
                    {
                      "title": "Title of the first task",
                      "description": "### Description header for the first task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the first task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    },
                    {
                      "title": "Title of the second task",
                      "description": "### Description header for the second task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the second task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    }
                  ],
                  "conclusion": "Message for the conclusion of the ODHQuickstart",
                  "nextQuickStart": null
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v1.11.0
          createdAt: "2023-10-31T00:00:00Z"
          description: Open Data Hub Operator for deployment and management of Open
            Data Hub
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/opendatahub-io/opendatahub-operator
          support: Open Data Hub
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AcceleratorProfile is the Schema for the acceleratorprofiles
            displayName: AcceleratorProfile
            kind: AcceleratorProfile
            name: acceleratorprofiles.dashboard.opendatahub.io
            version: v1alpha
          - description: KfDef is the Schema for the kfdefs API
            displayName: Kf Def
            kind: KfDef
            name: kfdefs.kfdef.apps.kubeflow.org
            version: v1
          - description: OdhApplication is the Schema for the odhapplications
            displayName: Open Data Hub Dashboard Application
            kind: OdhApplication
            name: odhapplications.dashboard.opendatahub.io
            version: v1
          - description: OdhDashboardConfig is the Schema for the odhdashboardconfigs
            displayName: Open Data Hub Dashboard Configuration
            kind: OdhDashboardConfig
            name: odhdashboardconfigs.opendatahub.io
            version: v1alpha
          - description: OdhDocument is the Schema for the odhdocuments
            displayName: Open Data Hub Dashboard Documentation
            kind: OdhDocument
            name: odhdocuments.dashboard.opendatahub.io
            version: v1
          - description: Extension for guiding user through various workflows in the
              Open Data Hub dashboard.
            displayName: Open Data Hub Dashboard QuickStart
            kind: OdhQuickStart
            name: odhquickstarts.console.openshift.io
            version: v1
        description: |
          The Open Data Hub is a machine-learning-as-a-service platform built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open Data Hub integrates multiple AI/ML open source components into one operator that can easily be downloaded and installed by OpenShift users.

          Open Data Hub operator allows users to install and manage components of the Open Data Hub. Users can mix and match tools from each project to fulfill the needs of their use case. Each of the
          projects share some components, but can be mostly seen as an extension of each other to provide a complete solution for both novice and skilled enterprise users.

          ### Components
          * Open Data Hub Dashboard - A web dashboard that displays installed Open Data Hub components with easy access to component UIs and documentation
          * ODH Notebook Controller - Secure management of Jupyter Notebook in Kubernetes environments built on top of Kubeflow Notebook Controller with support for OAuth
          * Jupyter Notebooks - JupyterLab notebook that provide Python support for GPU workloads
          * Data Science Pipelines - Pipeline solution for end to end MLOps workflows that support the Kubeflow Pipelines SDK and Tekton
          * Model Mesh - ModelMesh Serving is the Controller for managing ModelMesh, a general-purpose model serving management/routing layer.
          * TrustyAI - TrustyAI is an open source AI Explainability (XAI) Toolkit

          To install one or multiple of these components use the default KfDef provided with the operator.
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io/opendatahub-community
        maintainers:
        - email: opendatahub@redhat.com
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Open Data Hub
        relatedImages:
        - quay.io/openshift-community-operators/opendatahub-operator@sha256:2992841660e8b1664fa2ce06da894aa828d4ea1be3eb5b27476efdd73731486a
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/opendatahub/opendatahub-operator:v1.11.0
        version: 1.11.0
      entries:
      - name: opendatahub-operator.v1.11.0
        version: 1.11.0
      - name: opendatahub-operator.v1.10.1
        version: 1.10.1
      - name: opendatahub-operator.v1.10.0
        version: 1.10.0
      - name: opendatahub-operator.v1.9.0
        version: 1.9.0
      - name: opendatahub-operator.v1.8.0
        version: 1.8.0
      - name: opendatahub-operator.v1.7.0
        version: 1.7.0
      - name: opendatahub-operator.v1.6.0
        version: 1.6.0
      - name: opendatahub-operator.v1.5.0
        version: 1.5.0
      - name: opendatahub-operator.v1.4.2
        version: 1.4.2
      - name: opendatahub-operator.v1.4.1
        version: 1.4.1
      - name: opendatahub-operator.v1.4.0
        version: 1.4.0
      - name: opendatahub-operator.v1.3.0
        version: 1.3.0
      - name: opendatahub-operator.v1.2.0
        version: 1.2.0
      - name: opendatahub-operator.v1.1.2
        version: 1.1.2
      - name: opendatahub-operator.v1.1.1
        version: 1.1.1
      name: rolling
    - currentCSV: opendatahub-operator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kfdef.apps.kubeflow.org/v1",
                "kind": "KfDef",
                "metadata": {
                  "name": "opendatahub",
                  "namespace": "opendatahub"
                },
                "spec": {
                  "applications": [
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-common"
                        }
                      },
                      "name": "odh-common"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-dashboard"
                        }
                      },
                      "name": "odh-dashboard"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "prometheus/cluster"
                        }
                      },
                      "name": "prometheus-cluster"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "prometheus/operator"
                        }
                      },
                      "name": "prometheus-operator"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "grafana/cluster"
                        }
                      },
                      "name": "grafana-cluster"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "grafana/grafana"
                        }
                      },
                      "name": "grafana-instance"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "odh-notebook-controller"
                        }
                      },
                      "name": "odh-notebook-controller"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "notebook-images"
                        }
                      },
                      "name": "notebook-images"
                    },
                    {
                      "kustomizeConfig": {
                        "overlays": [
                          "odh-model-controller"
                        ],
                        "repoRef": {
                          "name": "manifests",
                          "path": "model-mesh"
                        }
                      },
                      "name": "model-mesh"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "data-science-pipelines-operator"
                        }
                      },
                      "name": "data-science-pipelines-operator"
                    },
                    {
                      "kustomizeConfig": {
                        "repoRef": {
                          "name": "manifests",
                          "path": "trustyai-service"
                        }
                      },
                      "name": "trustyai"
                    }
                  ],
                  "repos": [
                    {
                      "name": "manifests",
                      "uri": "https://github.com/opendatahub-io/odh-manifests/tarball/v1.5"
                    }
                  ]
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhApplication",
                "metadata": {
                  "name": "example-odhapplication",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started,Model development,Model training,Notebook environments,Package management,Data Management"
                  }
                },
                "spec": {
                  "displayName": "ODHAPPLICATION DISPLAY NAME",
                  "provider": "PROVIDER_NAME",
                  "description": "Description of your ODHApplication",
                  "kfdefApplications": [
                    "<NAME OF THE ODH APPLICATION IN KFDEF>"
                  ],
                  "route": "<APPLICATION_OCP_ROUTE_OBJECT_NAME>",
                  "img": "<svg xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" viewBox=\"-1.13 -1.13 58.50 48.94\"><title>Open Data Hub logo</title><g><g><g fill=\"#4d5258\" stroke-width=\".006\"><path fill=\"#bbb\" d=\"M112.30231 22.797083c-.2034 0-.35737.143517-.35737.337407 0 .192939.15397.339307.35737.339307.20339 0 .35736-.147318.35736-.339307 0-.19294-.15397-.337407-.35736-.337407zm.002.131161c.1112 0 .20149.08934.20149.206246 0 .116904-.0903.208146-.20149.208146-.1112 0-.2053-.09124-.2053-.208146 0-.116904.0931-.206246.2053-.206246zM113.04141 22.801836h-.28228v.665308h.15017v-.190088h.13211c.16918 0 .26612-.08934.26612-.244263 0-.147319-.0969-.230957-.26612-.230957zm-.008.349762h-.12451v-.225255h.12451c.0836 0 .13116.03707.13116.111202 0 .07603-.0475.114053-.13116.114053zM113.40328 22.801836v.665308h.51703v-.124508h-.36687v-.147318h.32125V23.07081h-.32125v-.144467h.35642v-.124507zM114.03814 22.801836v.665308h.14352v-.426748l.3222.426748h.13686v-.665308h-.14257v.427698L114.175 22.801836z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/><path d=\"M115.29685 22.801836h-.28228v.665308h.27658c.21004 0 .35546-.136863.35546-.332654 0-.196741-.14351-.332654-.34976-.332654zm.004.538899h-.13591v-.412491h.12926c.11405 0 .19959.08459.19959.207196 0 .121657-.0817.205295-.19294.205295zM116.21878 23.467144h.16062l-.28418-.665308h-.15492l-.28894.665308h.15493l.0523-.12926h.30794zm-.3108-.249966l.1055-.25852.10455.25852zM116.31525 22.801836v.127359h.20244v.537949h.15017v-.537949h.2034v-.127359zM117.37527 23.467144h.16063l-.28419-.665308h-.15492l-.28893.665308h.15492l.0523-.12926h.30795zm-.31079-.249966l.1055-.25852.10454.25852zM117.83433 22.801836v.665308h.15017v-.262322h.30129v.262322h.15017v-.665308h-.15017v.277528h-.30129v-.277528zM118.72025 23.188665v-.386829h-.15017v.386829c0 .175831.11785.285132.30224.285132.18343 0 .29844-.109301.29844-.285132v-.386829h-.15017v.386829c0 .09599-.0589.153971-.14827.153971-.0893 0-.15207-.05798-.15207-.153971zM119.61059 22.801836h-.30604v.665308h.31649c.15492 0 .25092-.07033.25092-.184385 0-.08744-.0532-.152071-.13876-.168228.0713-.01806.115-.07413.115-.146368 0-.102648-.0912-.166327-.23761-.166327zm-.008.268024h-.14826v-.145418h.14826c.0561 0 .0913.02566.0913.07128 0 .04657-.0352.07413-.0913.07413zm0 .274677h-.14826v-.158723h.14826c.0713 0 .11406.02946.11406.07794 0 .05132-.0428.08079-.11406.08079z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g><g fill=\"#58595b\" stroke-width=\".01\"><path d=\"M112.19192 24.15027h.0381l-.13717-.306759h-.0364l-.1376.306759h.0372l.0342-.07844h.16696zm-.18712-.110871l.0688-.157763.0697.157763zM112.27858 23.843511v.306759h.0351v-.306759zM112.64205 23.843511h-.11525v.306759h.0351v-.09729h.0802c.0758 0 .11964-.039.11964-.10649 0-.0653-.0438-.102983-.11964-.102983zm-.001.177044h-.0789V23.87594h.0789c.0552 0 .0872.02454.0872.07143 0 .0482-.032.07318-.0872.07318zM112.81775 23.825105v.325165h.0342v-.325165zM113.1137 24.15027l-.00044-.152503c-.00044-.04908-.032-.07932-.089-.07932-.0394 0-.0644.01139-.0942.03111l.0145.0241c.0241-.01709.0478-.02673.0732-.02673.0408 0 .0618.0206.0618.05434v.01446h-.0758c-.0543.000439-.0863.02586-.0863.06617 0 .03944.0307.06968.0784.06968.0368 0 .0662-.01227.0846-.03725v.03593zm-.11131-.02717c-.0324 0-.053-.01709-.053-.04251 0-.02585.0202-.03769.0587-.03769h.0719v.02805c-.009.03287-.0386.05215-.0776.05215zM113.29915 24.108201c-.0127.0074-.025.01139-.0368.01183-.0197 0-.0307-.01139-.0307-.03944v-.127086h.0732v-.02673h-.0732v-.06048h-.0337v.06048h-.0333v.02673h.0333v.132783c0 .04558.025.06573.0587.0653.0184 0 .0359-.0061.0521-.01709zM113.44228 23.854466c.0118 0 .0245.0044.0351.01183l.014-.02629c-.014-.01052-.032-.01622-.0495-.01622-.0386-.000438-.0741.02717-.0741.07713v.02586h-.0298v.02673h.0298v.196764h.0337v-.196764h.0662v-.02673h-.0662v-.03024c0-.02717.0184-.04251.0408-.04207zM113.59236 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM113.80323 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM114.22747 23.918448c-.0443.000438-.0767.01972-.0911.06004-.01-.03813-.0394-.06004-.0828-.06004-.0416.000438-.0727.01753-.0881.05346v-.05215h-.0337v.230508h.0337v-.113501c0-.04996.0285-.08458.0758-.08589.0403 0 .064.02454.064.06617v.133221h.0346v-.113501c0-.04996.0276-.08458.0754-.08589.0399 0 .064.02454.064.06617v.133221h.0342V24.00828c0-.05609-.032-.08984-.0859-.08984zM114.63474 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0487.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11088-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM114.89934 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .117-.04777.117-.117007 0-.06836-.0486-.11613-.117-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM115.02844 23.919762l.0863.230508h.0355l.0675-.188876.0679.188876h.0355l.0855-.230508h-.0355l-.0675.195888-.0679-.195888h-.0359l-.067.195888-.0684-.195888zM115.53009 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM115.73075 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM115.95034 23.918448c-.067.000438-.11438.04777-.11438.116568 0 .0688.0469.116569.11482.116569.0386 0 .071-.01402.0929-.03813l-.0188-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18843c.004-.07801-.0333-.129277-.1078-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM116.29474 23.825105v.144615c-.0171-.03287-.0491-.05171-.0903-.05171-.0653 0-.11087.04777-.11087.116569 0 .0688.0456.117445.11131.117445.0412 0 .0727-.01884.0898-.05127v.04952h.0342v-.325165zm-.0833.297557c-.0491 0-.0837-.03637-.0837-.08721 0-.05083.0346-.08765.0837-.08765.0486 0 .0833.03681.0833.08765 0 .05083-.0346.08721-.0833.08721zM116.65984 23.918448c-.0403 0-.0719.01884-.089.05083v-.144177h-.0342v.325165h.0342v-.04952c.0171.03199.0486.05083.0898.05083.0653 0 .11-.04777.11-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM116.89657 24.183138l.10605-.263376h-.0351l-.0732.191944-.0767-.191944h-.0359l.0955.228756-.01.02191c-.009.02191-.0241.03331-.0421.03331-.0114 0-.0219-.0035-.0324-.01095l-.0145.02717c.014.01139.0294.01665.0486.01665.0307 0 .0548-.01841.0692-.05346zM117.29947 23.842634c-.0898 0-.16083.06793-.16083.154257 0 .08633.071.154694.16083.154694.0894 0 .16039-.06836.16039-.154694 0-.08633-.071-.154257-.16039-.154257zm0 .03243c.0684 0 .12446.0539.12446.121828 0 .06792-.0561.122703-.12446.122703-.0684 0-.12533-.05478-.12533-.122703 0-.06793.057-.121828.12533-.121828zM117.64414 23.918448c-.0403 0-.0719.01884-.089.05083v-.04952h-.0342v.315525h.0342v-.134536c.0171.03199.0486.05083.0898.05083.0653 0 .10999-.04777.10999-.11613 0-.0688-.0456-.117007-.11087-.117007zm-.006.202899c-.0486 0-.0828-.03593-.0828-.08677 0-.0504.0342-.08677.0828-.08677.0482 0 .0824.03681.0824.08677 0 .0504-.0342.08677-.0824.08677zM117.9061 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362zM118.19616 23.918448c-.0421.000438-.0732.01709-.0894.05215v-.05084h-.0342v.230508h.0342v-.12358c.004-.0447.032-.07494.0776-.07537.0408 0 .0653.02454.0653.06573v.133221h.0342v-.141986c0-.05609-.0324-.08984-.0876-.08984zM118.65836 23.901795l.0149-.03111c-.0254-.01709-.0618-.02848-.0973-.02848-.0635 0-.10605.03068-.10605.07888 0 .109995.17266.06661.17222.148559 0 .0298-.0276.04777-.0719.04777-.0346 0-.0736-.01578-.1021-.04295l-.0158.03024c.0289.02761.0727.04689.11745.04689.0657 0 .11087-.03287.11087-.0837.00044-.11131-.17223-.06968-.17223-.149436 0-.02629.0259-.04207.0653-.04207.0245 0 .057.0075.0846.02542zM118.84168 23.918448c-.0684 0-.11701.04777-.11701.11613 0 .06924.0486.117007.11701.117007.0684 0 .11701-.04777.11701-.117007 0-.06836-.0487-.11613-.11701-.11613zm0 .03024c.0482 0 .0828.0355.0828.08633 0 .05171-.0346.08677-.0828.08677-.0482 0-.0828-.03506-.0828-.08677 0-.05083.0346-.08633.0828-.08633zM119.18446 23.919762v.113063c0 .04996-.0281.08502-.0758.08589-.0399 0-.064-.02454-.064-.06573v-.133222h-.0342v.141986c0 .05565.0324.08984.0863.08984.0416-.000438.0723-.01753.0876-.05346v.05215h.0342v-.230508zM119.33586 23.971035v-.05127h-.0342v.230508h.0342V24.02757c.004-.04645.0342-.07669.0828-.07581v-.0333c-.039.000438-.0675.01884-.0828.05259zM119.62557 23.976294l.0188-.02366c-.021-.02147-.0517-.03418-.089-.03418-.0666 0-.11438.0482-.11438.116568 0 .0688.0473.116569.11438.116569.0399 0 .0719-.0149.0925-.03988l-.0197-.02016c-.0162.01928-.0412.0298-.0714.0298-.0478 0-.082-.03506-.082-.08633 0-.05083.0342-.08589.082-.08589.028 0 .0513.01008.0688.02717zM119.78997 23.918448c-.067.000438-.11437.04777-.11437.116568 0 .0688.0469.116569.11481.116569.0386 0 .071-.01402.0929-.03813l-.0189-.01972c-.018.01884-.0429.02936-.0714.02936-.0451 0-.078-.0298-.0837-.07538h.18844c.004-.07801-.0333-.129277-.10781-.129277zm-.0806.102107c.005-.0447.0364-.07362.0806-.07362.0451 0 .0749.02892.0771.07362z\" transform=\"translate(-789.851 -124.305) scale(7.05736)\"/></g></g><g><g><path fill=\"#a586f3\" d=\"m 7808.8125,2097.1875 c -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 v 329.875 c -0.8781,10.2195 7.1804,19 17.4375,19 10.2571,0 19.0227,-8.7805 18.1446,-19 v -77.7324 l 0.4179,-6.1426 c 0,-55.1597 44.2153,-99.5625 99.375,-99.5625 55.1596,0 99.5625,44.4028 99.5625,99.5625 0.01,0.1837 0.015,0.3674 0.027,0.5508 -0.026,0.4409 -0.035,0.8826 -0.027,1.3242 v 110 c 0,9.6822 7.849,17.5312 17.5312,17.5312 9.6823,0 17.5313,-7.849 17.5313,-17.5312 v -110 c 0,-0.3245 -0.012,-0.6488 -0.031,-0.9727 0.018,-0.3004 0.029,-0.6013 0.031,-0.9023 1e-4,-74.075 -60.55,-134.4374 -134.625,-134.4375 -39.9177,1e-4 -75.8465,17.5354 -100.5,45.293 V 2115 c 0.1749,-9.8356 -7.7881,-17.8833 -17.625,-17.8125 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><path fill=\"#5ed3ee\" d=\"m 7765.8027,2098.123 c -0.038,5e-4 -0.077,0 -0.1152,0 -9.6898,0.1378 -17.423,8.1233 -17.25,17.8125 V 2361 c 0,41.9333 -26.0162,79.2671 -65.4375,93.5625 -39.4213,14.2954 -83.5594,2.3741 -110.4375,-29.8125 -26.878,-32.1865 -30.6579,-77.5719 -9.5625,-113.8125 21.0955,-36.2406 62.4262,-55.2897 103.6875,-47.8125 9.5173,1.7397 18.6463,-4.5547 20.4043,-14.0686 1.758,-9.514 -4.5187,-18.6551 -14.0293,-20.4314 -55.6354,-10.082 -111.8054,15.8219 -140.25,64.6875 -28.4446,48.8656 -23.3039,110.5381 12.9375,153.9375 36.2415,43.3993 95.908,59.4005 149.0625,40.125 44.7667,-16.2337 77.0286,-54.658 86.0977,-100.1562 0,0 1.9812,-4.7686 2.5898,-9.1563 0.6086,-4.3877 0,-17.0625 0,-17.0625 v -245.0625 c 0.1769,-9.865 -7.8313,-17.9263 -17.6973,-17.8145 z\" color=\"#000\" transform=\"translate(-449.265 -129.165) scale(.06159)\" style=\"text-indent:0;text-align:start;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000;text-transform:none;text-orientation:mixed;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000;solid-opacity:1\" overflow=\"visible\"/><g fill=\"none\" stroke-width=\".365\" transform=\"translate(-449.265 -83.342) scale(5.91262)\"><circle cx=\"79.677\" cy=\"16.823\" r=\".645\" stroke=\"#c6ea70\"/><path stroke=\"#dff3b1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 80.808656,18.234303 a 1.8088735,1.8088735 0 0 1 -2.309183,-0.03848 1.8088735,1.8088735 0 0 1 -0.389241,-2.276466 1.8088735,1.8088735 0 0 1 2.165211,-0.803532\"/><path stroke=\"#f2fadf\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m 82.216272,17.248644 a 2.455857,2.4425189 0 0 1 -2.468226,2.016391 2.455857,2.4425189 0 0 1 -2.383743,-2.114547 2.455857,2.4425189 0 0 1 1.733108,-2.668494\"/></g></g></g></g></svg>",
                  "category": "Open Data Hub",
                  "support": "open data hub",
                  "docsLink": "http://REPLACE.THIS.URL",
                  "quickStart": "example-odhquickstart",
                  "getStartedLink": "http://REPLACE.THIS.URL",
                  "getStartedMarkDown": "# Header for Getting Started MarkDown section\nHere is where you add information about your ODHApplication in markdown format\n\n1. List item\n1. List item\n1. List item"
                }
              },
              {
                "apiVersion": "dashboard.opendatahub.io/v1",
                "kind": "OdhDocument",
                "metadata": {
                  "name": "example-odhdocument",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHDocument",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "type": "how-to",
                  "description": "This is an example of an ODHDocument custom resource",
                  "url": "http://REPLACE.THIS.URL",
                  "durationMinutes": 5
                }
              },
              {
                "apiVersion": "console.openshift.io/v1",
                "kind": "OdhQuickStart",
                "metadata": {
                  "name": "example-odhquickstart",
                  "annotations": {
                    "opendatahub.io/categories": "Getting started"
                  }
                },
                "spec": {
                  "displayName": "Example ODHQuickstart Name",
                  "appName": "<EXAMPLE-ODHAPPLICATION-CUSTOM-RESOURCE-NAME>",
                  "durationMinutes": 5,
                  "description": "Description of an example quickstart",
                  "introduction": "### Introduction Header\nThis is the body of the introduction for an ODHQuickstart",
                  "tasks": [
                    {
                      "title": "Title of the first task",
                      "description": "### Description header for the first task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the first task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    },
                    {
                      "title": "Title of the second task",
                      "description": "### Description header for the second task\n1. First Step\n2. Second Step\n3. Third Step",
                      "review": {
                        "instructions": "#### Header for the review instructions\nThis is the body of the review instructions for the second task",
                        "failedTaskHelp": "This task is not verified yet. Try the task again."
                      },
                      "summary": {
                        "success": "Success Message",
                        "failed": "Failure Message"
                      }
                    }
                  ],
                  "conclusion": "Message for the conclusion of the ODHQuickstart",
                  "nextQuickStart": null
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: quay.io/opendatahub/opendatahub-operator:v1.5.0
          createdAt: "2022-10-18T00:00:00Z"
          description: Open Data Hub Operator for deployment and management of Open
            Data Hub
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/opendatahub-io/opendatahub-operator
          support: Open Data Hub
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KfDef is the Schema for the kfdefs API
            displayName: Kf Def
            kind: KfDef
            name: kfdefs.kfdef.apps.kubeflow.org
            version: v1
          - description: OdhApplication is the Schema for the odhapplications
            displayName: Open Data Hub Dashboard Application
            kind: OdhApplication
            name: odhapplications.dashboard.opendatahub.io
            version: v1
          - description: OdhDashboardConfig is the Schema for the odhdashboardconfigs
            displayName: Open Data Hub Dashboard Configuration
            kind: OdhDashboardConfig
            name: odhdashboardconfigs.opendatahub.io
            version: v1alpha
          - description: OdhDocument is the Schema for the odhdocuments
            displayName: Open Data Hub Dashboard Documentation
            kind: OdhDocument
            name: odhdocuments.dashboard.opendatahub.io
            version: v1
          - description: Extension for guiding user through various workflows in the
              Open Data Hub dashboard.
            displayName: Open Data Hub Dashboard QuickStart
            kind: OdhQuickStart
            name: odhquickstarts.console.openshift.io
            version: v1
        description: |
          The Open Data Hub is a machine-learning-as-a-service platform built on Red Hat's Kubernetes-based OpenShift® Container Platform. Open Data Hub integrates multiple AI/ML open source components into one operator that can easily be downloaded and installed by OpenShift users.

          Open Data Hub operator allows users to install and manage components of the Open Data Hub. Users can mix and match tools from each project to fulfill the needs of their use case. Each of the
          projects share some components, but can be mostly seen as an extension of each other to provide a complete solution for both novice and skilled enterprise users.

          ### Components
          * Open Data Hub Dashboard - A web dashboard that displays installed Open Data Hub components with easy access to component UIs and documentation
          * ODH Notebook Controller - Secure management of Jupyter Notebook in Kubernetes environments built on top of Kubeflow Notebook Controller with support for OAuth
          * Jupyter Notebooks - JupyterLab notebook that provide Python support for GPU workloads
          * Data Science Pipelines - Pipeline solution for end to end MLOps workflows that support the Kubeflow Pipelines SDK and Tekton
          * Model Mesh - ModelMesh Serving is the Controller for managing ModelMesh, a general-purpose model serving management/routing layer.

          To install one or multiple of these components use the default KfDef provided with the operator.

          ### Available Channels

          #### Stable

          Channel `stable` offers the major releases of Open Data Hub operator and ODH manifests. It is based on Kubeflow Operator and Kustomize for deployment configuration. This version is compatible with [Open Data Hub manifests](https://github.com/opendatahub-io/odh-manifests/) as well as [Kubeflow manifests](https://github.com/opendatahub-io/manifests). This channel will offer new components and features that have been thoroughly tested by consumers of the `rolling` channel

          NOTE: The `stable` channel will be deprecated starting with the ODH 1.6 release and we will only be publishing updates on the `rolling` channel for all future releases

          #### Rolling

          Channel `rolling` will offer the latest release of Open Data Hub operator and manifests. Subscribing to this branch will provide faster updates and access to components that will be in developement and testing for the next stable release
        displayName: Open Data Hub Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        links:
        - name: Open Data Hub
          url: https://opendatahub.io
        - name: Open Data Hub Community
          url: https://github.com/opendatahub-io
        maintainers:
        - email: maintainers@lists.opendatahub.io
          name: Open Data Hub Maintainers
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Open Data Hub
        relatedImages:
        - quay.io/opendatahub/opendatahub-operator:v1.5.0
        - quay.io/openshift-community-operators/opendatahub-operator@sha256:bf85a9da8a100a90deb3745497bc1505852910ef23dd12c624fa17de51bd8377
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        version: 1.5.0
      entries:
      - name: opendatahub-operator.v1.5.0
        version: 1.5.0
      - name: opendatahub-operator.v1.4.2
        version: 1.4.2
      - name: opendatahub-operator.v1.4.1
        version: 1.4.1
      - name: opendatahub-operator.v1.4.0
        version: 1.4.0
      - name: opendatahub-operator.v1.3.0
        version: 1.3.0
      - name: opendatahub-operator.v1.2.0
        version: 1.2.0
      - name: opendatahub-operator.v1.1.2
        version: 1.1.2
      - name: opendatahub-operator.v1.1.1
        version: 1.1.1
      name: stable
    defaultChannel: fast-3
    packageName: opendatahub-operator
    provider:
      name: ODH
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: VASTData
      provider-url: https://www.vastdata.com
    name: vast-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vast-csi-operator.v2.6.4
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"storage.vastdata.com/v1","kind":"VastCSIDriver","metadata":{"name":"csi.vastdata.com"},"spec":{"applySecurityContextConstraints":true,"attachRequired":true,"blockHostsAutoPrune":false,"controller":{"dnsPolicy":"Default","extraArgs":{"csiAttacher":[],"csiProvisioner":[],"csiResizer":[],"csiSnapshotter":[]},"nodeAffinity":{},"nodeSelector":{},"podAffinity":{},"podAntiAffinity":{},"resources":{"csiAttacher":{"limits":{"memory":"200Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiProvisioner":{"limits":{"memory":"400Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiResizer":{"limits":{"memory":"300Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiSnapshotter":{"limits":{"memory":"200Mi"},"requests":{"cpu":"10m","memory":"20Mi"}},"csiVastPlugin":{"limits":{"memory":"500Mi"},"requests":{"cpu":"100m","memory":"50Mi"}}},"runOnControlPlane":false,"runOnMaster":false,"tolerations":[]},"deletionViewPolicy":null,"deletionVipPool":null,"dontUseTrashApi":false,"driverType":"nfs","endpoint":null,"image":{"csiAttacher":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-attacher@sha256:b4d611100ece2f9bc980d1cb19c2285b8868da261e3b1ee8f45448ab5512ab94"},"csiNodeDriverRegistrar":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:f25af73ee708ff9c82595ae99493cdef9295bd96953366cddf36305f82555dac"},"csiProvisioner":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-provisioner@sha256:405a14e1aa702f7ea133cea459e8395fe40a6125c088c55569e696d48e1bd385"},"csiResizer":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-resizer@sha256:a541e6cc2d8b011bb21b1d4ffec6b090e85270cce6276ee302d86153eec0af43"},"csiSnapshotter":{"imagePullPolicy":"IfNotPresent","repository":"registry.k8s.io/sig-storage/csi-snapshotter@sha256:2e04046334baf9be425bb0fa1d04c2d1720d770825eedbdbcdb10d430da4ad8c"},"csiVastPlugin":{"imagePullPolicy":"IfNotPresent","repository":"registry.connect.redhat.com/vastdataorg/csi@sha256:596e9cbbd456de387ebb926e7fb57377c9c3d95b745b2f4baf8cf106c5e59718"}},"imagePullSecrets":[],"kubeletPath":"/var/lib/kubelet","logLevel":5,"node":{"dnsPolicy":"Default","nodeAffinity":{},"nodeSelector":{},"podAffinity":{},"podAntiAffinity":{},"propagateHostMountOptions":true,"resources":{"csiVastPlugin":{"limits":{"memory":"500Mi"},"requests":{"cpu":"200m","memory":"300Mi"}},"nodeDriverRegistrar":{"limits":{"memory":"100Mi"},"requests":{"cpu":"10m","memory":"20Mi"}}},"tolerations":[]},"numWorkers":10,"operationRetryIntervalMax":60,"operationRetryIntervalStart":10,"operationTimeout":15,"secretName":null,"sslCertsSecretName":null,"truncateVolumeName":64,"useLocalIpForMount":null,"verifySsl":false}},{"apiVersion":"storage.vastdata.com/v1","kind":"VastStorage","metadata":{"name":"vastdata-filesystem"},"spec":{"allowVolumeExpansion":true,"blockingClones":false,"clusterName":"","createSnapshotClass":true,"driverType":"nfs","ephemeralVolumeNameFormat":"csi:{namespace}:{name}:{id}","fsType":"","hostEncryption":null,"mountOptions":[],"provisioner":"","qosPolicy":"","reclaimPolicy":"Delete","secretName":"","secretNamespace":"","setDefaultStorageClass":false,"snapshotClass":{"deletionPolicy":"Delete","setDefaultSnapshotClass":false,"snapshotNameFormat":"csi:{namespace}:{name}:{id}"},"storagePath":"","subsystem":"","tenantName":"","viewPolicy":"","vipPool":"","vipPoolFQDN":null,"volumeGroup":"","volumeNameFormat":"csi:{namespace}:{name}:{id}"}},{"apiVersion":"storage.vastdata.com/v1","kind":"VastCluster","metadata":{"name":"vastcluster-sample"},"spec":{"endpoint":null,"passphrase":null,"password":null,"sslCert":null,"tenant":null,"token":null,"username":null}}]'
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/vastdataorg/csi-operator@sha256:a1c4675c5dd64687b6f4aba223e52708140582bd9ca55d06f88403d5253b823a
          createdAt: "2024-07-01T11:59:59Z"
          description: Kubernetes operator for automated deployment and lifecycle
            management of VAST Data CSI drivers.
          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"
          operatorframework.io/suggested-namespace: vast-csi
          operators.operatorframework.io/builder: operator-sdk-v1.3.0-ocp
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/vast-data/vast-csi
          support: VastData Infra Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VastCSIDriver is a common specification for VAST CSI Controller
              and VAST CSI Node plugins, typically intended for creation in a single
              instance.
            displayName: VastCSIDriver
            kind: VastCSIDriver
            name: vastcsidrivers.storage.vastdata.com
            version: v1
          - description: VastCluster encapsulates the connection details required
              for accessing a VAST cluster. This information is ultimately stored
              in a Kubernetes Secret.
            displayName: VastCluster
            kind: VastCluster
            name: vastclusters.storage.vastdata.com
            version: v1
          - description: Represents VAST storage. Each VastStorage instance generates
              a corresponding storage class that can be used in PVCs to create workloads.
            displayName: VastStorage
            kind: VastStorage
            name: vaststorages.storage.vastdata.com
            version: v1
        description: |-
          VAST CSI Operator supports seamless installation and upgrade of VAST Data's CSI Driver.
          The VAST CSI Driver allows container orchestration frameworks such as Kubernetes to dynamically provision, manage and scale volumes on the [VAST Data Platform](https://www.vastdata.com/platform/overview). VAST provides scalable, reliable, and fast persistent storage that can be accessed remotely by any Kubernetes application container.
          ### Installation
          Refer to the VASTData Operator for Kubernetes [official documentation](https://support.vastdata.com/s/document-item?bundleId=vast-csi-driver-2.6-administrator-s-guide&topicId=deploying-vast-csi-driver/deploying-vast-csi-driver-on-openshift-with-vast-csi-operator.html&_LANG=enus).
        displayName: VAST CSI driver operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - VAST
        - VASTData
        - CSI
        - Multi Cluster
        - AI
        - High-Performance Computing
        links:
        - name: VAST CSI Plugin
          url: https://github.com/vast-data/vast-csi
        maintainers:
        - email: volodymyr.boiko@vastdata.com
          name: VAST Infrastructure Team
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: VASTData
          url: https://www.vastdata.com
        relatedImages:
        - registry.k8s.io/sig-storage/csi-attacher@sha256:b4d611100ece2f9bc980d1cb19c2285b8868da261e3b1ee8f45448ab5512ab94
        - registry.k8s.io/sig-storage/csi-resizer@sha256:a541e6cc2d8b011bb21b1d4ffec6b090e85270cce6276ee302d86153eec0af43
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:2e04046334baf9be425bb0fa1d04c2d1720d770825eedbdbcdb10d430da4ad8c
        - registry.connect.redhat.com/vastdataorg/csi-operator@sha256:a1c4675c5dd64687b6f4aba223e52708140582bd9ca55d06f88403d5253b823a
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:405a14e1aa702f7ea133cea459e8395fe40a6125c088c55569e696d48e1bd385
        - docker.io/kubebuilder/kube-rbac-proxy@sha256:a2523c532c0c3d51a5396a901d7ded23e402a9a1492c783aae27af6d0c1d2ec5
        - registry.connect.redhat.com/vastdataorg/csi-operator-bundle@sha256:64b6c40b3855c5cbba0aa22f83a0a38a3ed5ae69f8bd522dc00f608566c76bd0
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:f25af73ee708ff9c82595ae99493cdef9295bd96953366cddf36305f82555dac
        - registry.connect.redhat.com/vastdataorg/csi@sha256:596e9cbbd456de387ebb926e7fb57377c9c3d95b745b2f4baf8cf106c5e59718
        version: 2.6.4
      entries:
      - name: vast-csi-operator.v2.6.4
        version: 2.6.4
      name: stable
    defaultChannel: stable
    packageName: vast-csi-operator
    provider:
      name: VASTData
      url: https://www.vastdata.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Lightbits Labs
      provider-url: https://www.lightbitslabs.com
    name: lightbits-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lightbits-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "storage.lightbitslabs.com/v1alpha1",
                "kind": "CSIDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightbits-operator",
                    "app.kubernetes.io/instance": "csidriver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "csidriver",
                    "app.kubernetes.io/part-of": "lightbits-operator"
                  },
                  "name": "csi.lightbitslabs.com",
                  "namespace": "lightbits-operator"
                },
                "spec": {
                  "controller": {
                    "registry": "docker.lightbitslabs.com",
                    "repository": "lightbits-operator/lb-csi-plugin",
                    "tag": "v1.21.0-ubi9"
                  },
                  "node": {
                    "registry": "docker.lightbitslabs.com",
                    "repository": "lightbits-operator/lb-csi-plugin",
                    "sidecars": {
                      "lb-nvme-discovery-client": {
                        "registry": "docker.lightbitslabs.com",
                        "repository": "lightbits-operator/lb-nvme-discovery-client",
                        "tag": "v1.21.0-ubi9"
                      }
                    },
                    "tag": "v1.21.0-ubi9"
                  }
                }
              },
              {
                "apiVersion": "storage.lightbitslabs.com/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "lightbits-operator",
                    "app.kubernetes.io/instance": "cluster1",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cluster",
                    "app.kubernetes.io/part-of": "lightbits-operator"
                  },
                  "name": "cluster1",
                  "namespace": "lightbits-operator"
                },
                "spec": {
                  "addresses": "192.168.40.46,192.168.40.47,192.168.40.48",
                  "apiService": "192.168.40.46:443,192.168.40.47:443,192.168.40.48:443",
                  "clusterAdminSecretName": "lb-secret",
                  "clusterName": "cluster1"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          com.redhat.openshift.versions: v4.17
          containerImage: docker.lightbitslabs.com/lightbits-operator/lightbits-operator@sha256:9eaec3c91c5403f2f9e26c128da4ca779cacdc0f21f09f721001bdf0ae1a74f5
          createdAt: "2025-11-24T15:33:38Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/supported-versions: v4.17
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/internal-objects: '[]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          operators.operatorframework.io/suggested-namespace: lightbits-operator
          repository: https://github.com/LightBitsLabs/lightbits-operator
          support: Lightbits Labs <support@lightbitslabs.com>
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster is the Schema for the clusters API
            displayName: Lightbits Cluster
            kind: Cluster
            name: clusters.storage.lightbitslabs.com
            version: v1alpha1
          - description: CSIDriver is the Schema for the csidrivers API
            displayName: Lightbits CSI Driver
            kind: CSIDriver
            name: csidrivers.storage.lightbitslabs.com
            version: v1alpha1
        description: |-
          Operator for deploying and managing Lightbits CSI driver.

          By using the operator users can quickly and easily deploy and upgrade Lightbits CSI Driver.

          ## Requirements

          - Kernel support for NVMe-TCP
          - Kernel support for NVMe Asymmetric Namespace Access (ANA)

          ## CSI driver Supported Features

          - Filesystem Volumes (xfs/ext4)
          - Raw Block Volumes
          - Dynamic/Static Provisioning
          - Volume Snapshots
          - Volume Clones
          - Multi-Tenancy & Credentials
          - Volume Expansion (Online/Offline)
          - Storage Capacity Tracking
          - Host-Side Encryption (LUKS)
          - Publish ReadOnly volumes

          ## How to install

          See the official documentation [here](https://lightbitslabs.github.io/lightbits-operator/install_lightbits_operator.html#installation)

          ## Documentation

          See the official documentation [here](https://lightbitslabs.github.io/lightbits-operator/)
        displayName: Lightbits Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - csi
        - storage
        - lightbits
        links:
        - name: Lightbits Operator
          url: https://github.com/lightbitslabs/lightbits-operator
        maintainers:
        - email: k8s@lightbitslabs.com
          name: Lightbits Labs
        maturity: alpha
        minKubeVersion: 1.28.0
        provider:
          name: Lightbits Labs
          url: https://www.lightbitslabs.com
        relatedImages:
        - docker.lightbitslabs.com/lightbits-operator/lightbits-operator@sha256:9eaec3c91c5403f2f9e26c128da4ca779cacdc0f21f09f721001bdf0ae1a74f5
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d99a8d144816b951a67648c12c0b988936ccd25cf3754f3cd85ab8c01592248f
        - registry.connect.redhat.com/lightbitslabs/lightbits-operator@sha256:fafb27b54cc654d67b0b4c19e6bba00e27aded08019dc93e37a04f1af8418306
        version: 1.2.2
      entries:
      - name: lightbits-operator.v1.2.2
        version: 1.2.2
      name: alpha
    defaultChannel: alpha
    packageName: lightbits-operator
    provider:
      name: Lightbits Labs
      url: https://www.lightbitslabs.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Trilio
      provider-url: ""
    name: k8s-triliovault
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: k8s-triliovault-stable.3.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "800Mi",
                      "cpu": "100m"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          containerImage: registry.connect.redhat.com/trilio/k8s-triliovault-operator@sha256:0e3094945427231ecbb884b903dc4d347dfaa73e5a04eb4c5cbaed6fce1cbbb8
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          olm.skipRange: '>=3.0.0 <3.1.3'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          TrilioVault for Kubernetes is an enterprise-grade, cloud-native platform purpose built for data protection and management of Kubernetes applications for IT managers, administrators and developers. TrilioVault supports upstream Kubernetes and OpenShift environments and offers the following features:
            * Application-Centric - protects both data and metadata for Helm, Operator or custom Label based applications.
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any Storage (CSI, NFS, S3), or any Cloud (Private or Public).
            * Application Deployment & Tooling: Helm, Operators, Labels, Prometheus, Fluentd.
          Tutorials
          ------------
          Please click the link below to access the TrilioVault for Kubernetes "How-To" series for deployment, best practice and use-case videos
          <a href="https://www.trilio.io/triliovault-for-kubernetes">TrilioVault for Kubernetes - Tutorials and How-To </a>”
          Licensing
          --------
          Customers can download a 30-day Free Trial or a 10-node Basic Edition at no cost.  You can also connect with the Trilio team for an Enterprise Edition license with no limitations and Premium Support.
          For more information on license plans please vist:
          <a href="www.trilio.io/plans"> Trilio Vault for Kubernetes licensing and plans </a>
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our TrilioVault technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. www.trilio.io and @triliodata on Twitter.
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://www.trilio.io/
        - name: Product Licensing
          url: https://www.trilio.io/plans
        - name: Tutorials
          url: https://www.trilio.io/triliovault-for-kubernetes/
        - name: Support for Free/Basic Users
          url: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: Trilio
        relatedImages:
        - registry.connect.redhat.com/trilio/control-plane@sha256:01e36ed5b07104865f922d2996d2211b2b6000adc90266197d9bac74d908db97
        - registry.connect.redhat.com/trilio/datamover@sha256:c7bc15f8217899ed73a812d278eb118633edbee1bf284132054b6f9ca2afd801
        - registry.connect.redhat.com/trilio/event-stack@sha256:37c33ae1adddfe739c98fd2b2183c49ec7cfdafc88dec2970ad7c670016ebaac
        - registry.connect.redhat.com/trilio/k8s-triliovault-operator@sha256:0e3094945427231ecbb884b903dc4d347dfaa73e5a04eb4c5cbaed6fce1cbbb8
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:e80f87f289ea944a78b5c38df600c0a22fa470a2ce90f0b1e9453cd63586d75d
        - registry.connect.redhat.com/trilio/web@sha256:76865d8afa8059d40810cb94df29420950a7593a40e87d142d771c57b3319e1d
        - registry.connect.redhat.com/trilio/minio@sha256:cee0f976edc79ff9e7a3f3574a7115dd960042241f3ed5b4636240ad609f9bca
        - registry.connect.redhat.com/trilio/dex@sha256:b6331cf3cb3a6a66d9b9ea639cda3c2559fbf1f92f7174032352c1c7bb5176d9
        - registry.connect.redhat.com/trilio/nats@sha256:47396bfcff3e65efb3410fa8369f11f20d794ab543f9ada87b451448b1813178
        - registry.connect.redhat.com/trilio/trilio-webhook-init@sha256:c45e9b6b75862451d873d3eba29d6bd11cafc64823855f82ccb8c0b3d779ebb0
        version: 3.1.3
      entries:
      - name: k8s-triliovault-stable.3.1.3
        version: 3.1.3
      - name: k8s-triliovault-stable.3.1.2
        version: 3.1.2
      - name: k8s-triliovault-stable.3.1.1
        version: 3.1.1
      - name: k8s-triliovault-stable.3.1.0
        version: 3.1.0
      name: 3.1.x
    - currentCSV: k8s-triliovault-stable.4.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "800Mi",
                      "cpu": "100m"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:69871613ceecefff7f691f21bb0b9147236af5a5dc2c7b36ad5e0cd8551f0e6a
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <4.0.5'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.20.0
        provider:
          name: Trilio
        relatedImages:
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:bddfd4ebd973089f7446cb16ed9668d418f91c3907a5ede22052be4ccbea6d0c
        - quay.io/triliodata/event-stack@sha256:c793418df5a1fc1a49f629d335f4684d9cde1a5f2b462f7c9483ffba904456d2
        - quay.io/triliodata/web@sha256:20de1a2f9477ad238bf24f48c8c16a38521c3a86164f2eb6b10d20f09839016e
        - quay.io/triliodata/dex@sha256:b4b2372fd03be586b9ff8cd269b9001797d813a34155ab37de31a44fe3cab1ea
        - quay.io/triliodata/k8s-triliovault-operator@sha256:69871613ceecefff7f691f21bb0b9147236af5a5dc2c7b36ad5e0cd8551f0e6a
        - quay.io/triliodata/operator-webhook-init@sha256:aa85b787f7f37a71e909f049d2abdda746cdd0627e2f74aaf7476d5e5a7f4401
        - quay.io/triliodata/control-plane@sha256:53368a72a60a38d3ce4293236a841346da6da2380ffd2525e5ffdb8dbcf11c7f
        - quay.io/triliodata/datamover@sha256:e6848d94ba9f81843bde882a030b0f2556aae4bf16d79e2c5b199417cf626c85
        - quay.io/triliodata/nats@sha256:e6723595bcc5674b6201091d45d711d29a5cd1421c8b97c76cf00e468379fddf
        version: 4.0.5
      entries:
      - name: k8s-triliovault-stable.4.0.5
        version: 4.0.5
      - name: k8s-triliovault-stable.4.0.4
        version: 4.0.4
      - name: k8s-triliovault-stable.4.0.3
        version: 4.0.3
      - name: k8s-triliovault-stable.4.0.2
        version: 4.0.2
      - name: k8s-triliovault-stable.4.0.1
        version: 4.0.1
      - name: k8s-triliovault-stable.4.0.0
        version: 4.0.0
      name: 4.0.x
    - currentCSV: k8s-triliovault-stable.5.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "800Mi",
                      "cpu": "100m"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:8d582842dbef1c64bbe3b0ce5eeb64790910bdc0416c5e5561557642dede7022
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <5.0.4'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.20.0
        provider:
          name: Trilio
        relatedImages:
        - quay.io/triliodata/k8s-triliovault-operator@sha256:8d582842dbef1c64bbe3b0ce5eeb64790910bdc0416c5e5561557642dede7022
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:b31ebfab28ec75c0d7110d6f01e3b26fd973c36013308e12f69584ff38ab3779
        - quay.io/triliodata/control-plane@sha256:e60ef0a2c7a5b7879c9718e9a14c223f5290b4710b598fae19466a7558484824
        - quay.io/triliodata/datamover@sha256:104bdca9513c78f81c4340e9a3219df0a3bc8a5b026e4a252363a7e2c10977ba
        - quay.io/triliodata/event-stack@sha256:859535e19e0ebebc8261c649c2446f8ca5fe4b4e5b6236e69b780dcc0d0bb5b9
        - quay.io/triliodata/web@sha256:04c4baadae9c05f4add098ff62774d00102d56581e261626840d17f74effe438
        - quay.io/triliodata/dex@sha256:b4b2372fd03be586b9ff8cd269b9001797d813a34155ab37de31a44fe3cab1ea
        - quay.io/triliodata/nats@sha256:e6723595bcc5674b6201091d45d711d29a5cd1421c8b97c76cf00e468379fddf
        - quay.io/triliodata/operator-webhook-init@sha256:ffcc55e85f884b884947b73fa7d2fb257704ff70ccd7f2dc37d07e02292abed6
        version: 5.0.4
      entries:
      - name: k8s-triliovault-stable.5.0.4
        version: 5.0.4
      - name: k8s-triliovault-stable.5.0.3
        version: 5.0.3
      - name: k8s-triliovault-stable.5.0.2
        version: 5.0.2
      - name: k8s-triliovault-stable.5.0.1
        version: 5.0.1
      - name: k8s-triliovault-stable.5.0.0
        version: 5.0.0
      name: 5.0.x
    - currentCSV: k8s-triliovault-stable.5.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logLevel": "Info",
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "2Gi",
                      "cpu": "1"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:bdf9407e70ee6425ea9408d6a4b0d85ec1890084b81cf58669c7f0e5725fddf8
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <5.1.2'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.20.0
        provider:
          name: Trilio
        relatedImages:
        - quay.io/triliodata/k8s-triliovault-operator@sha256:bdf9407e70ee6425ea9408d6a4b0d85ec1890084b81cf58669c7f0e5725fddf8
        - quay.io/triliodata/control-plane@sha256:68964e8116f14643c213003a046e5969eb69f53f4bb034852f5b5c1f3447f3e3
        - quay.io/triliodata/filerecovery-vm-ssh-server@sha256:5b8af222755347e64a2362ed7cf0ef0a956364395efdfa99c5181c3432e6452a
        - quay.io/triliodata/filerecovery@sha256:4708c98fb1168d6d2a61f76f670b5918eed765c827de27e0381a428fa1a1f36f
        - quay.io/triliodata/nats@sha256:3bcf9d2e94f118822077c25445118cc8f22479ffadc8c1dcec7ea995bec9f33c
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:3a8747ca2bbb998672051d3d8f5422b205cea02dd56b07138a67ae80a6453ece
        - quay.io/triliodata/datamover@sha256:6116b4c7ca929396f63af887f8923cb3d52226be97bc895cecfc2777eabbd220
        - quay.io/triliodata/dex@sha256:13ef89a9edcfb497a284df11518f30fc9aca37cf963c6cf6cfb574a00ec5d72f
        - quay.io/triliodata/web@sha256:eede3ee96e8b13565597ecd0d99e69feb6fa2cd819ad7d69e110d86c0ff930b1
        - quay.io/triliodata/event-stack@sha256:9a2e454b80ab5b8e768b4b87835700122eb573c2511beae6a9a95e65af25c09f
        version: 5.1.2
      entries:
      - name: k8s-triliovault-stable.5.1.2
        version: 5.1.2
      - name: k8s-triliovault-stable.5.1.1
        version: 5.1.1
      - name: k8s-triliovault-stable.5.1.0
        version: 5.1.0
      name: 5.1.x
    - currentCSV: k8s-triliovault-stable.5.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "triliovault.trilio.io/v1",
                "kind": "TrilioVaultManager",
                "metadata": {
                  "name": "triliovault-manager"
                },
                "spec": {
                  "applicationScope": "Cluster",
                  "tvkInstanceName": "tvk-instance",
                  "logConfig": {
                    "logLevel": "Info"
                  },
                  "componentConfiguration": {
                    "ingress-controller": {
                      "enabled": false
                    }
                  },
                  "dataJobResources": {
                    "requests": {
                      "memory": "2Gi",
                      "cpu": "1"
                    }
                  },
                  "metadataJobResources": {
                    "requests": {
                      "memory": "10Mi",
                      "cpu": "10m"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage,Database,Monitoring,Security,Developer Tools
          certified: "false"
          console.openshift.io/plugins: '["tvk-console-plugin"]'
          containerImage: quay.io/triliodata/k8s-triliovault-operator@sha256:acc4df98d8720fb41c6650e82825105f9a8785f394851ef866b26b217842d4db
          createdAt: "2020-04-27 17:12:00"
          description: Cloud-Native Data Protection for Kubernetes
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0 <5.2.0'
          operatorframework.io/suggested-namespace: trilio-system
          repository: https://github.com/triliovault-k8s-issues/triliovault-k8s-issues
          support: Trilio
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents TrilioVault Manager which is an instance of TrilioVault
              for Kubernetes.
            displayName: TrilioVault Manager
            kind: TrilioVaultManager
            name: triliovaultmanagers.triliovault.trilio.io
            version: v1
        description: |-
          Trilio for Red Hat OpenShift provides fast and easy backup of application containers and virtual machines, disaster and ransomware recovery and application mobility across any cluster, anywhere.
          Trilio for Red Hat OpenShift:
            * Red Hat Certified - first backup and recovery solution with OpenShift Operator Certification.
            * Application-Centric - protects both data and metadata for Helm or Label based applications.
            * Namespace protection: Protect single or multi-namespace protection for complete cluster recovery
            * Fully multi-tenant tool, adhering to OpenShift RBAC policies, allowing you to operate hybrid, on-prem, air-gapped, public cloud (ROSA or ARO) or OpenShift on public cloud instances.
            * OpenShift Virtualization - protects data and metadata of OpenShift Virtualization Virtual Machines
            * Operators - protect and recover Red Hat OpenShift Lifecycle Management (OLM) Operators
            * Native to Kubernetes & OpenShift: Packaged and deployed as an Operator, provides new CRDs, integrated via Kubernetes API and with all features that it provides.
            * Infrastructure Agnostic: Compatible with any CSI Persistent Volume storage; backup storage based on NFS, S3, Blob/Container; and run on any Cloud (Private or Public).
            * Avoid vendor lock-in with industry proven Open Source backup format
            * Application Deployment & Tooling protection: Helm, Operators, Labels, Namespaces
            * Observability: Prometheus, Grafana
            * Fully Automated: Use our Ansible Certified Collection and our seamless integration with Red Hat Advanced Cluster Manager to fully automate your backup strategy and enable automated Disaster Recovery testing.
            * Unattended Recovery: Integrate Trilio with your Event Drive Ansible architecture for unattended recovery.
            * Fast Disaster Recovery: Utilize Trilio’s Continuous Restore to continually copy Persistent Volume data to any number of Kubernetes and OpenShift clusters, shortening recovery times and remote site failover
          More Information
          ----------------------
          Please click the link below to access more information about Trilio for Red Hat OpenShift:
          <a target="_blank" href="https://trilio.io/products/openshift-backup-and-recovery/">More Information</a>"
          About Trilio
          ----------------
          Trilio is trusted by global cloud infrastructure operators to deliver data protection, application resiliency, infrastructure migration and infrastructure version management. Our Trilio technology supports Kubernetes, OpenStack and Virtualization environments to recover from disasters, migrate tenant workloads, move workloads to new infrastructures and migrate to new infrastructure software distributions. Visit our website https://trilio.io
        displayName: Trilio for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - backup
        - restore
        - data protection
        - disaster recovery
        - protect
        - recover
        - migrate
        - migration
        - DR
        links:
        - name: Trilio Homepage
          url: https://trilio.io/
        - name: Tutorials
          url: https://trilio.io/products/trilio-for-red-hat-openshift/
        - name: Documentation page
          url: https://docs.trilio.io/kubernetes/getting-started-3/red-hat-openshift
        maintainers:
        - email: info@trilio.io
          name: Trilio
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Trilio
        relatedImages:
        - quay.io/triliodata/dex@sha256:169607295b90018c16a864943b473a3ffe94b7c41ce67e12b9e810c2daf2c9df
        - quay.io/triliodata/event-stack@sha256:c4190db6212b9ae33cec9fe0d37d49def0df1695dc23d8bf6674c4e1dff374a4
        - quay.io/triliodata/k8s-triliovault-operator@sha256:acc4df98d8720fb41c6650e82825105f9a8785f394851ef866b26b217842d4db
        - registry.connect.redhat.com/trilio/r-3445381-bundle@sha256:5e069f7241b8418a54da73cb838395ae6af21e5d1e008917ddae55331d5a4bdc
        - quay.io/triliodata/control-plane@sha256:f7d596ad5101354d43ed6c0c96dca9fd94705c757008deece013fa3b6fcd8fc4
        - quay.io/triliodata/datamover@sha256:beffcf6d6c0057f480faf2bc05a83b0bc4be00edaac26ee9706dc79a72a95e05
        - quay.io/triliodata/filerecovery-vm-ssh-server@sha256:05865888f267cca29133de733f5bb4f811fc0923b395047ba0a29c6034346f19
        - quay.io/triliodata/filerecovery@sha256:ada85e6b17f88e7cc49e7356d04ac90cf11c12747f19a3c72bb9f94cb90e768e
        - quay.io/triliodata/nats@sha256:35366081d4e81199b2d3e9b933d2594283c10c1582d7676dffa90953b2f0e9a1
        - quay.io/triliodata/web@sha256:cb1ac887e13a8e7c9e091f9ae6dac967237a55fa01ef7cb485f90e7a58035f0c
        version: 5.2.0
      entries:
      - name: k8s-triliovault-stable.5.2.0
        version: 5.2.0
      name: 5.2.x
    defaultChannel: 5.2.x
    packageName: k8s-triliovault
    provider:
      name: Trilio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cloudfront-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cloudfront-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
                "kind": "CachePolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
                "kind": "Distribution",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "cloudfront.services.k8s.aws/v1alpha1",
                "kind": "Function",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cloudfront-controller:1.3.0
          createdAt: "2025-11-29T04:46:46Z"
          description: AWS CloudFront controller is a service controller for managing
            CloudFront resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CachePolicy represents the state of an AWS cloudfront CachePolicy
              resource.
            displayName: CachePolicy
            kind: CachePolicy
            name: cachepolicies.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: Distribution represents the state of an AWS cloudfront Distribution
              resource.
            displayName: Distribution
            kind: Distribution
            name: distributions.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: Function represents the state of an AWS cloudfront Function
              resource.
            displayName: Function
            kind: Function
            name: functions.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: OriginAccessControl represents the state of an AWS cloudfront
              OriginAccessControl resource.
            displayName: OriginAccessControl
            kind: OriginAccessControl
            name: originaccesscontrols.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: OriginRequestPolicy represents the state of an AWS cloudfront
              OriginRequestPolicy resource.
            displayName: OriginRequestPolicy
            kind: OriginRequestPolicy
            name: originrequestpolicies.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: ResponseHeadersPolicy represents the state of an AWS cloudfront
              ResponseHeadersPolicy resource.
            displayName: ResponseHeadersPolicy
            kind: ResponseHeadersPolicy
            name: responseheaderspolicies.cloudfront.services.k8s.aws
            version: v1alpha1
          - description: VPCOrigin represents the state of an AWS cloudfront VPCOrigin
              resource.
            displayName: VPCOrigin
            kind: VPCOrigin
            name: vpcorigins.cloudfront.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon CloudFront resources in AWS from within your Kubernetes cluster.

          **About Amazon CloudFront**

          Amazon CloudFront is a web service that speeds up distribution of your static and dynamic web content, such as .html, .css, .js, and image files, to your users. CloudFront delivers your content through a worldwide network of data centers called edge locations.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon CloudFront
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloudfront
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon CloudFront Developer Resources
          url: https://aws.amazon.com/cloudfront/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cloudfront maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/cloudfront-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-cloudfront-controller@sha256:9eab71b0aa3305a6cd40801523c750daf181b70c002630ef481d17a8c18fa2c3
        version: 1.3.0
      entries:
      - name: ack-cloudfront-controller.v1.3.0
        version: 1.3.0
      - name: ack-cloudfront-controller.v1.2.2
        version: 1.2.2
      - name: ack-cloudfront-controller.v1.2.1
        version: 1.2.1
      - name: ack-cloudfront-controller.v1.2.0
        version: 1.2.0
      - name: ack-cloudfront-controller.v1.1.6
        version: 1.1.6
      - name: ack-cloudfront-controller.v1.1.4
        version: 1.1.4
      - name: ack-cloudfront-controller.v1.1.3
        version: 1.1.3
      - name: ack-cloudfront-controller.v1.1.2
        version: 1.1.2
      - name: ack-cloudfront-controller.v1.1.1
        version: 1.1.1
      - name: ack-cloudfront-controller.v1.1.0
        version: 1.1.0
      - name: ack-cloudfront-controller.v1.0.10
        version: 1.0.10
      - name: ack-cloudfront-controller.v1.0.9
        version: 1.0.9
      - name: ack-cloudfront-controller.v1.0.8
        version: 1.0.8
      - name: ack-cloudfront-controller.v1.0.7
        version: 1.0.7
      - name: ack-cloudfront-controller.v1.0.6
        version: 1.0.6
      - name: ack-cloudfront-controller.v1.0.2
        version: 1.0.2
      - name: ack-cloudfront-controller.v1.0.1
        version: 1.0.1
      - name: ack-cloudfront-controller.v1.0.0
        version: 1.0.0
      - name: ack-cloudfront-controller.v0.0.15
        version: 0.0.15
      - name: ack-cloudfront-controller.v0.0.14
        version: 0.0.14
      - name: ack-cloudfront-controller.v0.0.13
        version: 0.0.13
      - name: ack-cloudfront-controller.v0.0.12
        version: 0.0.12
      - name: ack-cloudfront-controller.v0.0.11
        version: 0.0.11
      - name: ack-cloudfront-controller.v0.0.10
        version: 0.0.10
      - name: ack-cloudfront-controller.v0.0.9
        version: 0.0.9
      - name: ack-cloudfront-controller.v0.0.8
        version: 0.0.8
      - name: ack-cloudfront-controller.v0.0.6
        version: 0.0.6
      - name: ack-cloudfront-controller.v0.0.5
        version: 0.0.5
      - name: ack-cloudfront-controller.v0.0.4
        version: 0.0.4
      - name: ack-cloudfront-controller.v0.0.3
        version: 0.0.3
      - name: ack-cloudfront-controller.v0.0.2
        version: 0.0.2
      - name: ack-cloudfront-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-cloudfront-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio
      provider-url: ""
    name: apicurio-registry
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-registry-operator.v1.1.3-v2.6.4.final
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry",
                "metadata": {
                  "name": "example-apicurioregistry-mem"
                },
                "spec": {
                  "configuration": {
                    "persistence": "mem"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/apicurio/apicurio-registry-operator:1.1.3
          createdAt: "2024-09-17"
          description: Deploy and manage Apicurio Registry on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Apicurio/apicurio-registry-operator
          support: Apicurio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry represents an Apicurio Registry instance
            displayName: Apicurio Registry
            kind: ApicurioRegistry
            name: apicurioregistries.registry.apicur.io
            version: v1
        description: |
          ## Apicurio Registry

          Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Provides a REST API and web UI to manage the artifacts and artifact meta-data
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL, in-memory
          - Compatible with Confluent and IBM APIs
          - Runs on a lightweight Quarkus platform
          - Includes Maven plugin to integrate with Maven based builds

          ## Apicurio Registry Operator

          Provides a quick and easy way to deploy and manage Apicurio Registry on Kubernetes.

          **Features**
          - Supports installation and configuration of the Registry for all storage options
          - Easily perform a rolling upgrade of Apicurio Registry

          ## Prerequisites

          This operator does not deploy storage for Apicurio Registry. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Apicurio Registry Operator is licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry-operator/blob/main/LICENSE)
        displayName: Apicurio Registry Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        - name: Twitter
          url: https://twitter.com/Apicurio
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Apicurio
        relatedImages:
        - quay.io/apicurio/apicurio-registry-operator:1.1.3
        - quay.io/community-operator-pipeline-prod/apicurio-registry@sha256:7087ec1377c2612edf3b8a76f6e115d66c3ec2b4b20f5d8374638d6bf0037e93
        version: 1.1.3-v2.6.4.final
      entries:
      - name: apicurio-registry-operator.v1.1.3-v2.6.4.final
        version: 1.1.3-v2.6.4.final
      - name: apicurio-registry-operator.v1.1.2-v2.5.11.final
        version: 1.1.2-v2.5.11.final
      - name: apicurio-registry-operator.v1.1.1-v2.5.9.final
        version: 1.1.1-v2.5.9.final
      - name: apicurio-registry-operator.v1.1.0-v2.4.12.final
        version: 1.1.0-v2.4.12.final
      - name: apicurio-registry-operator.v1.0.0-v2.0.0.final
        version: 1.0.0-v2.0.0.final
      name: 2.x
    defaultChannel: 2.x
    packageName: apicurio-registry
    provider:
      name: Apicurio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: machine-deletion-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: machine-deletion-remediation.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediation",
                "metadata": {
                  "name": "machinedeletionremediation-sample"
                },
                "spec": {},
                "status": {
                  "conditions": [
                    {
                      "reason": "RemediationFinished",
                      "status": false,
                      "type": "Processing"
                    },
                    {
                      "reason": "RemediationFinished",
                      "status": true,
                      "type": "Succeeded"
                    },
                    {
                      "reason": "MachineDeletionOnBareMetalProviderReason",
                      "status": false,
                      "type": "PermanentNodeDeletionExpected"
                    }
                  ]
                }
              },
              {
                "apiVersion": "machine-deletion-remediation.medik8s.io/v1alpha1",
                "kind": "MachineDeletionRemediationTemplate",
                "metadata": {
                  "name": "machinedeletionremediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: ""
          createdAt: "2025-11-11 13:38:42"
          description: Machine Deletion Remediation operator for reprovisioning unhealthy
            nodes using the Machine API.
          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: "true"
          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.skipRange: '>=0.4.0 <0.5.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/machine-deletion-remediation
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MachineDeletionRemediation is the Schema for the machinedeletionremediations
              API
            displayName: Machine Deletion Remediation
            kind: MachineDeletionRemediation
            name: machinedeletionremediations.machine-deletion-remediation.medik8s.io
            version: v1alpha1
          - description: MachineDeletionRemediationTemplate is the Schema for the
              machinedeletionremediationtemplates API
            displayName: Machine Deletion Remediation Template
            kind: MachineDeletionRemediationTemplate
            name: machinedeletionremediationtemplates.machine-deletion-remediation.medik8s.io
            version: v1alpha1
        description: |
          Machine Deletion Remediation (MDR) is a remediator designed to reprovision unhealthy
          nodes using the Machine API. MDR can be used together with NodeHealthCheck (NHC),
          which detects the unhealthy Node and creates the Custom Resource for MDR.

          # How it works
          MDR follows the annotation on the Node to the associated Machine object, confirms
          that it has an owning controller (e.g. MachineSetController), that will recreate the
          Machine once deleted, and then proceeds with deleting the Machine.

          # How to use MDR with NHC
          To use MDR as remediation mechanism for NHC, it needs to be configured with the
          following steps:

          - Create the MDR Template CR
          - Modify NHC's `.spec.remediationTemplate` to use MDR as it's remediator

          see https://github.com/medik8s/machine-deletion-remediation#readme for configuration examples.
        displayName: Machine Deletion Remediation operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - machine
        - deletion
        - remediation
        - mdr
        links:
        - name: Machine Deletion Remediation
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance/index
        - name: Source Code
          url: https://github.com/medik8s/machine-deletion-remediation
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/workload-availability/machine-deletion-remediation-operator-bundle@sha256:f751650b9213f599d0cca1fcc08b5841c8d612a9e8499b8fd74485ecdc2565cc
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/machine-deletion-remediation-rhel9-operator@sha256:687f6d6b71aab8e0f5db32c9e11c2a7305c6a5746819bd54c38c584b27d6d06a
        version: 0.5.0
      entries:
      - name: machine-deletion-remediation.v0.5.0
        version: 0.5.0
      - name: machine-deletion-remediation.v0.4.1
        version: 0.4.1
      - name: machine-deletion-remediation.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: machine-deletion-remediation
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: F5 NGINX
      provider-url: https://www.f5.com/go/product/welcome-to-nginx
    name: nginx-gateway-fabric
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nginx-gateway-fabric.v1.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "gateway.nginx.org/v1alpha1",
                "kind": "NginxGatewayFabric",
                "metadata": {
                  "name": "nginxgatewayfabric-sample"
                },
                "spec": {
                  "certGenerator": {
                    "affinity": {},
                    "agentTLSSecretName": "agent-tls",
                    "annotations": {},
                    "nodeSelector": {},
                    "overwrite": false,
                    "serverTLSSecretName": "server-tls",
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "ttlSecondsAfterFinished": 30
                  },
                  "clusterDomain": "cluster.local",
                  "gateways": [],
                  "nginx": {
                    "autoscaling": {
                      "enable": false
                    },
                    "config": {},
                    "container": {
                      "hostPorts": [],
                      "lifecycle": {},
                      "readinessProbe": {},
                      "resources": {},
                      "volumeMounts": []
                    },
                    "debug": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/nginx/nginx-gateway-fabric/nginx",
                      "tag": "2.2.2-ubi"
                    },
                    "imagePullSecret": "",
                    "imagePullSecrets": [],
                    "kind": "deployment",
                    "nginxOneConsole": {
                      "dataplaneKeySecretName": "",
                      "endpointHost": "agent.connect.nginx.com",
                      "endpointPort": 443,
                      "skipVerify": false
                    },
                    "patches": [],
                    "plus": false,
                    "pod": {},
                    "replicas": 1,
                    "service": {
                      "externalTrafficPolicy": "Local",
                      "loadBalancerClass": "",
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": [],
                      "patches": [],
                      "type": "LoadBalancer"
                    },
                    "usage": {
                      "caSecretName": "",
                      "clientSSLSecretName": "",
                      "endpoint": "",
                      "enforceInitialReport": true,
                      "resolver": "",
                      "secretName": "nplus-license",
                      "skipVerify": false
                    }
                  },
                  "nginxGateway": {
                    "affinity": {},
                    "autoscaling": {
                      "enable": false
                    },
                    "config": {
                      "logging": {
                        "level": "info"
                      }
                    },
                    "configAnnotations": {},
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "gatewayClassAnnotations": {},
                    "gatewayClassName": "nginx",
                    "gatewayControllerName": "gateway.nginx.org/nginx-gateway-controller",
                    "gwAPIExperimentalFeatures": {
                      "enable": false
                    },
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "ghcr.io/nginx/nginx-gateway-fabric",
                      "tag": "2.2.2-ubi"
                    },
                    "kind": "deployment",
                    "labels": {},
                    "leaderElection": {
                      "enable": true,
                      "lockName": ""
                    },
                    "lifecycle": {},
                    "metrics": {
                      "enable": true,
                      "port": 9113,
                      "secure": false
                    },
                    "name": "",
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "productTelemetry": {
                      "enable": true
                    },
                    "readinessProbe": {
                      "enable": true,
                      "initialDelaySeconds": 3,
                      "port": 8081
                    },
                    "replicas": 1,
                    "resources": {},
                    "service": {
                      "annotations": {},
                      "labels": {}
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "imagePullSecret": "",
                      "imagePullSecrets": [],
                      "name": ""
                    },
                    "snippetsFilters": {
                      "enable": false
                    },
                    "terminationGracePeriodSeconds": 30,
                    "tolerations": [],
                    "topologySpreadConstraints": []
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "true"
          com.redhat.openshift.versions: v4.19
          containerImage: ghcr.io/nginx/nginx-gateway-fabric/operator@sha256:726c4744ebb1033b5d81fc6c7d5d1e29680461b839610846245bba092843a152
          createdAt: "2025-12-11T09:36:30Z"
          description: The NGINX Gateway Fabric is a Kubernetes Gateway API implementation
            that provides application traffic management for modern cloud-native applications
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: nginx-gateway
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/nginx/nginx-gateway-fabric
          support: NGINX Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NginxGatewayFabric
            name: nginxgatewayfabrics.gateway.nginx.org
            version: v1alpha1
        description: NGINX Gateway Fabric provides an implementation of the Gateway
          API using NGINX as the data plane
        displayName: NGINX Gateway Fabric
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nginx
        - gateway
        - kubernetes
        - networking
        links:
        - name: Nginx Gateway Fabric
          url: https://github.com/nginx/nginx-gateway-fabric
        maintainers:
        - email: kubernetes@nginx.com
          name: F5NGINX
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: F5 NGINX
          url: https://www.f5.com/go/product/welcome-to-nginx
        relatedImages:
        - ghcr.io/nginx/nginx-gateway-fabric/operator@sha256:726c4744ebb1033b5d81fc6c7d5d1e29680461b839610846245bba092843a152
        - registry.connect.redhat.com/nginx/nginx-gateway-fabric-operator-bundle@sha256:94bd7123cec4eec21fc395df493c2a34415c214f075e0011439c5056f6ce6ae2
        version: 1.0.2
      entries:
      - name: nginx-gateway-fabric.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: nginx-gateway-fabric
    provider:
      name: F5 NGINX
      url: https://www.f5.com/go/product/welcome-to-nginx
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-apigatewayv2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-apigatewayv2-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Deployment",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "API",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Authorizer",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Route",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "Stage",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigatewayv2.services.k8s.aws/v1alpha1",
                "kind": "VPCLink",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/apigatewayv2-controller:1.2.0
          createdAt: "2025-11-29T05:41:40Z"
          description: AWS API Gateway v2 controller is a service controller for managing
            API Gateway v2 resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIMapping represents the state of an AWS apigatewayv2 APIMapping
              resource.
            displayName: APIMapping
            kind: APIMapping
            name: apimappings.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: API represents the state of an AWS apigatewayv2 API resource.
            displayName: API
            kind: API
            name: apis.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Authorizer represents the state of an AWS apigatewayv2 Authorizer
              resource.
            displayName: Authorizer
            kind: Authorizer
            name: authorizers.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Deployment represents the state of an AWS apigatewayv2 Deployment
              resource.
            displayName: Deployment
            kind: Deployment
            name: deployments.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: DomainName represents the state of an AWS apigatewayv2 DomainName
              resource.
            displayName: DomainName
            kind: DomainName
            name: domainnames.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Integration represents the state of an AWS apigatewayv2 Integration
              resource.
            displayName: Integration
            kind: Integration
            name: integrations.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Route represents the state of an AWS apigatewayv2 Route resource.
            displayName: Route
            kind: Route
            name: routes.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: Stage represents the state of an AWS apigatewayv2 Stage resource.
            displayName: Stage
            kind: Stage
            name: stages.apigatewayv2.services.k8s.aws
            version: v1alpha1
          - description: VPCLink represents the state of an AWS apigatewayv2 VPCLink
              resource.
            displayName: VPCLink
            kind: VPCLink
            name: vpclinks.apigatewayv2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon API Gateway v2 resources in AWS from within your Kubernetes cluster. Currently only HTTP APIs are supported. WebSocket API support will be added soon. For HTTP APIs, DomainName and APIMapping resource support will be added soon.

          **About Amazon API Gateway v2**

          Amazon API Gateway is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale. APIs act as the "front door" for applications to access data, business logic, or functionality from your backend services. Using API Gateway, you can create RESTful APIs and WebSocket APIs that enable real-time two-way communication applications. API Gateway supports containerized and serverless workloads, as well as web applications.

          API Gateway handles all the tasks involved in accepting and processing up to hundreds of thousands of concurrent API calls, including traffic management, CORS support, authorization and access control, throttling, monitoring, and API version management. API Gateway has no minimum fees or startup costs. You pay for the API calls you receive and the amount of data transferred out and, with the API Gateway tiered pricing model, you can reduce your cost as your API usage scales.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon API Gateway v2
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apigatewayv2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon API Gateway v2 Developer Resources
          url: https://aws.amazon.com/api-gateway/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: api gateway maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/apigatewayv2-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-apigatewayv2-controller@sha256:1484e3b2d292a0f844b37510aee801631a3f3784ace790910e1a7bc9ba28b336
        version: 1.2.0
      entries:
      - name: ack-apigatewayv2-controller.v1.2.0
        version: 1.2.0
      - name: ack-apigatewayv2-controller.v1.1.1
        version: 1.1.1
      - name: ack-apigatewayv2-controller.v1.1.0
        version: 1.1.0
      - name: ack-apigatewayv2-controller.v1.0.30
        version: 1.0.30
      - name: ack-apigatewayv2-controller.v1.0.29
        version: 1.0.29
      - name: ack-apigatewayv2-controller.v1.0.28
        version: 1.0.28
      - name: ack-apigatewayv2-controller.v1.0.26
        version: 1.0.26
      - name: ack-apigatewayv2-controller.v1.0.25
        version: 1.0.25
      - name: ack-apigatewayv2-controller.v1.0.23
        version: 1.0.23
      - name: ack-apigatewayv2-controller.v1.0.21
        version: 1.0.21
      - name: ack-apigatewayv2-controller.v1.0.17
        version: 1.0.17
      - name: ack-apigatewayv2-controller.v1.0.16
        version: 1.0.16
      - name: ack-apigatewayv2-controller.v1.0.15
        version: 1.0.15
      - name: ack-apigatewayv2-controller.v1.0.13
        version: 1.0.13
      - name: ack-apigatewayv2-controller.v1.0.12
        version: 1.0.12
      - name: ack-apigatewayv2-controller.v1.0.7
        version: 1.0.7
      - name: ack-apigatewayv2-controller.v1.0.6
        version: 1.0.6
      - name: ack-apigatewayv2-controller.v1.0.5
        version: 1.0.5
      - name: ack-apigatewayv2-controller.v1.0.4
        version: 1.0.4
      - name: ack-apigatewayv2-controller.v1.0.3
        version: 1.0.3
      - name: ack-apigatewayv2-controller.v1.0.2
        version: 1.0.2
      - name: ack-apigatewayv2-controller.v1.0.0
        version: 1.0.0
      - name: ack-apigatewayv2-controller.v0.1.6
        version: 0.1.6
      - name: ack-apigatewayv2-controller.v0.1.4
        version: 0.1.4
      - name: ack-apigatewayv2-controller.v0.1.3
        version: 0.1.3
      - name: ack-apigatewayv2-controller.v0.1.2
        version: 0.1.2
      - name: ack-apigatewayv2-controller.v0.1.1
        version: 0.1.1
      - name: ack-apigatewayv2-controller.v0.1.0
        version: 0.1.0
      - name: ack-apigatewayv2-controller.v0.0.22
        version: 0.0.22
      - name: ack-apigatewayv2-controller.v0.0.21
        version: 0.0.21
      - name: ack-apigatewayv2-controller.v0.0.20
        version: 0.0.20
      - name: ack-apigatewayv2-controller.v0.0.19
        version: 0.0.19
      - name: ack-apigatewayv2-controller.v0.0.18
        version: 0.0.18
      - name: ack-apigatewayv2-controller.v0.0.17
        version: 0.0.17
      - name: ack-apigatewayv2-controller.v0.0.16
        version: 0.0.16
      - name: ack-apigatewayv2-controller.v0.0.15
        version: 0.0.15
      - name: ack-apigatewayv2-controller.v0.0.14
        version: 0.0.14
      - name: ack-apigatewayv2-controller.v0.0.13
        version: 0.0.13
      - name: ack-apigatewayv2-controller.v0.0.12
        version: 0.0.12
      - name: ack-apigatewayv2-controller.v0.0.11
        version: 0.0.11
      - name: ack-apigatewayv2-controller.v0.0.10
        version: 0.0.10
      - name: ack-apigatewayv2-controller.v0.0.9
        version: 0.0.9
      name: alpha
    defaultChannel: alpha
    packageName: ack-apigatewayv2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: KEDA Community
      provider-url: ""
    name: keda
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keda.v2.7.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "KedaController",
                "metadata": {
                  "name": "keda",
                  "namespace": "keda"
                },
                "spec": {
                  "watchNamespace": "",
                  "operator": {
                    "logLevel": "info",
                    "logEncoder": "console"
                  },
                  "metricsServer": {
                    "logLevel": "0"
                  },
                  "serviceAccount": {}
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledJob",
                "metadata": {
                  "name": "scaledjob-sample"
                },
                "spec": {
                  "failedJobsHistoryLimit": 5,
                  "jobTargetRef": {
                    "activeDeadlineSeconds": 600,
                    "backoffLimit": 6,
                    "completions": 1,
                    "parallelism": 1,
                    "template": null
                  },
                  "maxReplicaCount": 100,
                  "pollingInterval": 30,
                  "successfulJobsHistoryLimit": 5,
                  "triggers": [
                    {
                      "metadata": {
                        "property": "examle-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ScaledObject",
                "metadata": {
                  "name": "example-scaledobject"
                },
                "spec": {
                  "cooldownPeriod": 300,
                  "maxReplicaCount": 100,
                  "minReplicaCount": 0,
                  "pollingInterval": 30,
                  "scaleTargetRef": {
                    "name": "example-deployment"
                  },
                  "triggers": [
                    {
                      "metadata": {
                        "property": "examle-property"
                      },
                      "type": "example-trigger"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "TriggerAuthentication",
                "metadata": {
                  "name": "example-triggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "exmaple-secret-parameter"
                    }
                  ]
                }
              },
              {
                "apiVersion": "keda.sh/v1alpha1",
                "kind": "ClusterTriggerAuthentication",
                "metadata": {
                  "name": "example-clustertriggerauthentication"
                },
                "spec": {
                  "secretTargetRef": [
                    {
                      "key": "example-role-key",
                      "name": "example-secret-name",
                      "parameter": "exmaple-secret-parameter"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Cloud Provider
          certified: "false"
          containerImage: ghcr.io/kedacore/keda-olm-operator:2.7.1
          createdAt: "2022-05-11T00:00:00.000Z"
          description: '[DEPRECATED] Use Custom Metrics Autoscaler Operator instead'
          operatorframework.io/suggested-namespace: keda
          operators.operatorframework.io/builder: operator-sdk-v1.1.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/kedacore/keda-olm-operator
          support: KEDA Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |
              Represents an installation of a particular version of KEDA Controller.
            displayName: KedaController
            kind: KedaController
            name: kedacontrollers.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your jobs and what the triggers
            displayName: ScaledJob
            kind: ScaledJob
            name: scaledjobs.keda.sh
            version: v1alpha1
          - description: Defines how KEDA should scale your application and what the
              triggers are
            displayName: ScaledObject
            kind: ScaledObject
            name: scaledobjects.keda.sh
            version: v1alpha1
          - description: Describes authentication parameters
            displayName: TriggerAuthentication
            kind: TriggerAuthentication
            name: triggerauthentications.keda.sh
            version: v1alpha1
          - description: Describes cluster wide authentication parameters
            displayName: ClusterTriggerAuthentication
            kind: ClusterTriggerAuthentication
            name: clustertriggerauthentications.keda.sh
            version: v1alpha1
        description: "## Deprecated\n This KEDA community operator is deprecated,
          please use `Custom Metrics Autoscaler` Operator instead.\n## About the managed
          application\nKEDA is a Kubernetes-based event driven autoscaler.  KEDA can
          monitor event sources like Kafka, RabbitMQ, or cloud event sources and feed
          the metrics from those sources into the Kubernetes horizontal pod autoscaler.
          \ With KEDA, you can have event driven and serverless scale of deployments
          within any Kubernetes cluster.\n## About this Operator\nThe KEDA Operator
          deploys and manages installation of KEDA Controller in the cluster. Install
          this operator and follow installation instructions on how to install KEDA
          in you cluster.\n\n## Prerequisites for enabling this Operator\nPlease note
          that you can not run both KEDA 1.x and 2.x on the same Kubernetes cluster.
          You need to uninstall KEDA 1.x first, in order to install and use KEDA 2.x.\n\nDon't
          forget to uninstall KEDA v1 CRDs as well, to ensure that, please run:\n\n```
          oc delete crd scaledobjects.keda.k8s.io ```\n\n``` oc delete crd triggerauthentications.keda.k8s.io
          \ ```\n## How to install KEDA in the cluster\nThe installation of KEDA is
          triggered by the creation of `KedaController` resource, please refer to
          [KedaController Example](https://github.com/kedacore/keda-olm-operator#kedacontroller-spec)
          for more deatils on available options.\n\nOnly resource named `keda` in
          namespace `keda` will trigger the installation, reconfiguration or removal
          of the KEDA Controller resource.\n\nThere could be only one KEDA Controller
          in the cluster. \n"
        displayName: '[DEPRECATED] KEDA'
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - keda
        - scaling
        - event
        links:
        - name: Homepage
          url: https://keda.sh
        - name: Source Code
          url: https://github.com/kedacore/keda
        - name: Slack Channel
          url: https://kubernetes.slack.com/messages/CKZJ36A5D
        maintainers:
        - email: cncf-keda-maintainers@lists.cncf.io
          name: KEDA Community
        maturity: deprecated
        minKubeVersion: 1.17.0
        provider:
          name: KEDA Community
        relatedImages:
        - quay.io/openshift-community-operators/keda@sha256:50816f675c76d36dbc62846579150477018ef87df325861751f3fc02a70c8781
        - ghcr.io/kedacore/keda-olm-operator:2.7.1
        version: 2.7.1
      entries:
      - name: keda.v2.7.1
        version: 2.7.1
      - name: keda.v2.6.1
        version: 2.6.1
      - name: keda.v2.6.0
        version: 2.6.0
      - name: keda.v2.5.0
        version: 2.5.0
      - name: keda.v2.4.0
        version: 2.4.0
      - name: keda.v2.3.0
        version: 2.3.0
      - name: keda.v2.2.0
        version: 2.2.0
      - name: keda.v2.1.0
        version: 2.1.0
      - name: keda.v2.0.0
        version: 2.0.0
      name: alpha
    defaultChannel: alpha
    packageName: keda
    provider:
      name: KEDA Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-airflow-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: airflow-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/airflow-operator@sha256:e7090465bfcce12ce945289421223bdbbc0597dfc816dac95cbafb286454fef8
          description: Stackable Operator for Apache Airflow
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/airflow-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for AirflowClusterSpec via `CustomResource`
            displayName: airflowclusters.airflow.stackable.tech
            kind: AirflowCluster
            name: airflowclusters.airflow.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Airflow
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - airflow
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/airflow-operator@sha256:e7090465bfcce12ce945289421223bdbbc0597dfc816dac95cbafb286454fef8
        - registry.connect.redhat.com/stackable/stackable-apache-airflow-operator@sha256:983b65960949b01b01a60f23271f3072c048c5fa2e23ab3303fe28ebafb40576
        version: 25.11.0
      entries:
      - name: airflow-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-airflow-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Intel® Corporation
      provider-url: https://intel.com
    name: intel-device-plugins-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: intel-device-plugins-operator.v0.32.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "DsaDevicePlugin",
                "metadata": {
                  "name": "dsadeviceplugin-sample"
                },
                "spec": {
                  "image": "registry.connect.redhat.com/intel/intel-dsa-plugin@sha256:2742a13279cc3f301daa09b6389517024530f658d4e1dd13db495cc94d9ba57c",
                  "initImage": "registry.connect.redhat.com/intel/intel-idxd-config-initcontainer@sha256:b74dc43fa81ce14ea97f20ff6b2f726039f6309fdd868d5f45d751d0a8662cc1",
                  "logLevel": 4,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/dsa": "true"
                  },
                  "sharedDevNum": 10
                }
              },
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "GpuDevicePlugin",
                "metadata": {
                  "name": "gpudeviceplugin-sample"
                },
                "spec": {
                  "enableMonitoring": true,
                  "image": "registry.connect.redhat.com/intel/intel-gpu-plugin@sha256:e2c2ce658e78c35c425f16a4f8e85c5f32ce31848d9b53a644a05e7f8b7f71b0",
                  "preferredAllocationPolicy": "none",
                  "logLevel": 4,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/gpu": "true"
                  },
                  "sharedDevNum": 1
                }
              },
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "QatDevicePlugin",
                "metadata": {
                  "name": "qatdeviceplugin-sample"
                },
                "spec": {
                  "dpdkDriver": "vfio-pci",
                  "image": "registry.connect.redhat.com/intel/intel-qat-plugin@sha256:8d79dba051b83ec770a4b0fdc3da6ac92264cb19cac8d455b707ed92a6a95d02",
                  "initImage": "registry.connect.redhat.com/intel/intel-qat-initcontainer@sha256:34f0b993ca654ea0b386217cba1a44d5ef3da841b3befc780508f5323e95fa90",
                  "kernelVfDrivers": [
                    "4xxxvf"
                  ],
                  "logLevel": 4,
                  "maxNumDevices": 128,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/qat": "true"
                  }
                }
              },
              {
                "apiVersion": "deviceplugin.intel.com/v1",
                "kind": "SgxDevicePlugin",
                "metadata": {
                  "name": "sgxdeviceplugin-sample"
                },
                "spec": {
                  "enclaveLimit": 110,
                  "image": "registry.connect.redhat.com/intel/intel-sgx-plugin@sha256:f2c77521c6dae6b4db1896a5784ba8b06a5ebb2a01684184fc90143cfcca7bf4",
                  "logLevel": 4,
                  "nodeSelector": {
                    "intel.feature.node.kubernetes.io/sgx": "true"
                  },
                  "provisionLimit": 110
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Security, AI/Machine Learning
          containerImage: registry.connect.redhat.com/intel/intel-deviceplugin-operator@sha256:5ca1fd11f0ca4e7fb941749c67461c9c66fe9417c9d0f0a9247b6b172b0bcdd5
          description: This operator is a Kubernetes custom controller whose goal
            is to serve the installation and lifecycle management of Intel device
            plugins for Kubernetes.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/intel/intel-technology-enabling-for-openshift
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DsaDevicePlugin is the Schema for the dsadeviceplugins API.
              It represents the DSA device plugin responsible for advertising Intel
              DSA hardware resources to the kubelet.
            displayName: Intel DSA Device Plugin
            kind: DsaDevicePlugin
            name: dsadeviceplugins.deviceplugin.intel.com
            version: v1
          - description: |-
              GpuDevicePlugin is the Schema for the gpudeviceplugins API. It represents
              the GPU device plugin responsible for advertising Intel GPU hardware resources to
              the kubelet.
            displayName: Intel GPU Device Plugin
            kind: GpuDevicePlugin
            name: gpudeviceplugins.deviceplugin.intel.com
            version: v1
          - description: |-
              QatDevicePlugin is the Schema for the qatdeviceplugins API. It represents the QAT device
              plugin responsible for advertising Intel QuickAssist Technology hardware resources
              to the kubelet.
            displayName: Intel QuickAssist Technology Device Plugin
            kind: QatDevicePlugin
            name: qatdeviceplugins.deviceplugin.intel.com
            version: v1
          - description: |-
              SgxDevicePlugin is the Schema for the sgxdeviceplugins API. It represents
              the SGX device plugin responsible for advertising SGX device nodes to
              the kubelet.
            displayName: Intel Software Guard Extensions Device Plugin
            kind: SgxDevicePlugin
            name: sgxdeviceplugins.deviceplugin.intel.com
            version: v1
        description: |
          [Intel Device Plugins for Kubernetes](https://github.com/intel/intel-technology-enabling-for-openshift) is a collection of
          [device plugins](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/) advertising Intel specific hardware resources
          to the kubelet. Currently the operator has basic support for Intel SGX, Intel GPU, Intel QAT and Intel DSA. Intel IAA device plugin will be supported in a future release.
        displayName: Intel Device Plugins Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - fpga
        - qat
        - sgx
        - gpu
        - dsa
        - dlb
        links:
        - name: Intel Device Plugins Operator
          url: https://github.com/intel/intel-technology-enabling-for-openshift
        maintainers:
        - email: martin.xu@intel.com
          name: Martin Xu
        - email: chaitanya.kulkarni@intel.com
          name: Chaitanya kulkarni
        maturity: alpha
        minKubeVersion: 1.21.0
        provider:
          name: Intel® Corporation
          url: https://intel.com
        relatedImages:
        - registry.connect.redhat.com/intel/intel-device-plugins-operator-bundle@sha256:4a422ca897caeabb9fc3be3dfef3746819868de1674ea61c657cad257fbddf12
        - registry.connect.redhat.com/intel/intel-deviceplugin-operator@sha256:5ca1fd11f0ca4e7fb941749c67461c9c66fe9417c9d0f0a9247b6b172b0bcdd5
        - registry.connect.redhat.com/intel/intel-dsa-plugin@sha256:2742a13279cc3f301daa09b6389517024530f658d4e1dd13db495cc94d9ba57c
        - registry.connect.redhat.com/intel/intel-gpu-plugin@sha256:e2c2ce658e78c35c425f16a4f8e85c5f32ce31848d9b53a644a05e7f8b7f71b0
        - registry.connect.redhat.com/intel/intel-idxd-initcontainer@sha256:b74dc43fa81ce14ea97f20ff6b2f726039f6309fdd868d5f45d751d0a8662cc1
        - registry.connect.redhat.com/intel/intel-qat-initcontainer@sha256:34f0b993ca654ea0b386217cba1a44d5ef3da841b3befc780508f5323e95fa90
        - registry.connect.redhat.com/intel/intel-qat-plugin@sha256:8d79dba051b83ec770a4b0fdc3da6ac92264cb19cac8d455b707ed92a6a95d02
        - registry.connect.redhat.com/intel/intel-sgx-plugin@sha256:f2c77521c6dae6b4db1896a5784ba8b06a5ebb2a01684184fc90143cfcca7bf4
        version: 0.32.1
      entries:
      - name: intel-device-plugins-operator.v0.32.1
        version: 0.32.1
      - name: intel-device-plugins-operator.v0.29.1
        version: 0.29.1
      - name: intel-device-plugins-operator.v0.29.0
        version: 0.29.0
      - name: intel-device-plugins-operator.v0.28.0
        version: 0.28.0
      name: alpha
    defaultChannel: alpha
    packageName: intel-device-plugins-operator
    provider:
      name: Intel® Corporation
      url: https://intel.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: opdev
      provider-url: https://opdev.github.io/
    name: loki-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: loki-helm-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.example.com/v1alpha1",
                "kind": "Loki",
                "metadata": {
                  "annotations": {
                    "helm.sdk.operatorframework.io/install-disable-crds": "true"
                  },
                  "name": "loki-sample"
                },
                "spec": {
                  "global": {
                    "clusterDomain": "cluster.local",
                    "dnsNamespace": "openshift-dns",
                    "dnsService": "dns-default"
                  },
                  "loki": {
                    "auth_enabled": false,
                    "commonConfig": {
                      "replication_factor": 1
                    },
                    "storage": {
                      "type": "filesystem"
                    }
                  },
                  "monitoring": {
                    "dashboards": {
                      "enabled": false
                    },
                    "lokiCanary": {
                      "enabled": false
                    },
                    "rules": {
                      "alerting": false,
                      "enabled": false
                    },
                    "selfMonitoring": {
                      "enabled": false,
                      "grafanaAgent": {
                        "installOperator": false
                      }
                    },
                    "serviceMonitor": {
                      "enabled": false,
                      "metricsInstance": {
                        "enabled": false
                      }
                    }
                  },
                  "rbac": {
                    "sccEnabled": true
                  },
                  "singleBinary": {
                    "replicas": 1
                  },
                  "test": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: quay.io/opdev/loki-helm-operator-controller:0.0.1
          createdAt: "2023-07-14T15:06:17Z"
          description: An experimental operator that installs loki from its official
            helmchart.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: hybrid.helm.sdk.operatorframework.io/v1-alpha
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys the loki operator helm chart
            displayName: Loki
            kind: Loki
            name: lokis.charts.example.com
            version: v1alpha1
        description: Loki operator based on the helm chart with single binary mode
          deployment optionality
        displayName: Loki Helm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - loki
        - single-binary
        - demo
        - helm
        links:
        - name: Loki Helm Operator
          url: https://github.com/skattoju/loki-helm-operator
        maintainers:
        - email: skattoju@redhat.com
          name: Sid Kattoju
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: opdev
          url: https://opdev.github.io/
        relatedImages:
        - quay.io/openshift-community-operators/loki-helm-operator@sha256:fa3662ec16e6cb3f866ad46982a50d8fdefb43c68f3caa13291239013e03af13
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/opdev/loki-helm-operator-controller:0.0.1
        version: 0.0.1
      entries:
      - name: loki-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: loki-helm-operator
    provider:
      name: opdev
      url: https://opdev.github.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: egressip-ipam-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: egressip-ipam-operator.v1.2.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "EgressIPAM",
                "metadata": {
                  "name": "egressipam-aws"
                },
                "spec": {
                  "cidrAssignments": [
                    {
                      "CIDR": "10.0.128.0/19",
                      "labelValue": "us-west-2a"
                    },
                    {
                      "CIDR": "10.0.160.0/19",
                      "labelValue": "us-west-2b",
                      "reservedIPs": [
                        "10.0.160.126"
                      ]
                    },
                    {
                      "CIDR": "10.0.192.0/19",
                      "labelValue": "us-west-2c"
                    }
                  ],
                  "nodeSelector": {
                    "matchLabels": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "topologyLabel": "failure-domain.beta.kubernetes.io/zone"
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "EgressIPAM",
                "metadata": {
                  "name": "egressipam-baremetal"
                },
                "spec": {
                  "cidrAssignments": [
                    {
                      "CIDR": "192.169.0.0/24",
                      "labelValue": "true"
                    }
                  ],
                  "nodeSelector": {
                    "matchLabels": {
                      "node-role.kubernetes.io/worker": ""
                    }
                  },
                  "topologyLabel": "egressGateway"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Networking, Cloud Provider, Security
          certified: "false"
          containerImage: quay.io/redhat-cop/egressip-ipam-operator@sha256:d6129bd287b87696a23e0da64dcd598958f779dc88ae33b46b3c909dbab80adf
          createdAt: "2022-07-25T15:07:22Z"
          description: This operator provides automation around managing egressIPs.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: egressip-ipam-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/egressip-ipam-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: EgressIPAM is the Schema for the egressipams API
            displayName: Egress IPAM
            kind: EgressIPAM
            name: egressipams.redhatcop.redhat.io
            version: v1alpha1
        description: |
          This operator automates the assignment of egressIPs to namespaces.
          Namespaces can opt in to receiving one or more egressIPs with the following annotation `egressip-ipam-operator.redhat-cop.io/egressipam:<egressIPAM>`, where `egressIPAM` is the CRD that controls how egressIPs are assigned.
          IPs assigned to the namespace can be looked up in the following annotation: `egressip-ipam-operator.redhat-cop.io/egressips`.

          EgressIP assignments is managed by the EgressIPAM CRD. Here is an example of it:

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: EgressIPAM
          metadata:
            name: example-egressipam
          spec:
            cidrAssignments:
              - labelValue: "true"
                CIDR: 192.169.0.0/24
                reservedIPs:
                - "192.159.0.5"
            topologyLabel: egressGateway
            nodeSelector:
              node-role.kubernetes.io/worker: ""
          ```

          This EgressIPAM specifies that all nodes that comply with the specified node selector and that also have labels `egressGateway: "true"` will be assigned egressIP from the specified CIDR.

          Note that the `cidrAssigments` field is an array and therefore, multiple groups of nodes can be identified with the labelValue and different CIDRs can be assigned to them. This is usually not necessary on a bare metal deployment.

          In the bare metal scenario, when this egressCRD is created, all the `hostsubnet` relative to the nodes selected by this EgressIPAM will be update to have the EgressCIDRs field equal to the specified CIDR (see below for cloud provider scenarios).

          When a namespace is created with the opt-in annotation: `egressip-ipam-operator.redhat-cop.io/egressipam=<egressIPAM>`, an available egressIP is selected from the CIDR and assigned to the namespace.The `netnamespace` associated with this namespace is updated to use that egressIP.

          It is possible to specify a set of reserved IPs. These IPs must belong to the CIDR and will never be assigned.

          ## Passing EgressIPs as input

          The normal mode of operation of this operator is to pick a random IP from the configured CIDR. However, it also supports a scenario where egressIPs are picked by an external process and passed as input.

          In this case IPs must me passed as an annotation to the namespace, like this: `egressip-ipam-operator.redhat-cop.io/egressips=IP1,IP2...`. The value of the annotation is a comma separated array of ip with no spaces.

          There must be exactly one IP per CIDR defined in the referenced egressIPAM. Moreover, each IP must belong to the corresponding CIDR. Because this situation can lead to inconsistencies, failing to have correspondence between IPs in the namespace annotation and CIDRs in the egressIPAM CR will cause the operator to error out and stop processing all the namespaces associated with the given EgressIPAM CR.

          It also also a responsibility of the progress picking the IPs to ensure that those IPs are actually available.

          ## Assumptions

          The following assumptions apply when using this operator:

          1. If multiple EgressIPAMs are defined, their selected nodes MUST NOT overlap.
          2. When using a cloud provider the topology label MUST be `failure-domain.beta.kubernetes.io/zone`.

          ## Support for AWS

          In AWS as well as other cloud providers, one cannot freely assign IPs to machines. Additional steps need to be performed in this case. Considering this EgressIPAM

          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: EgressIPAM
          metadata:
            name: egressipam-aws
          spec:
            cidrAssignments:
              - labelValue: "eu-central-1a"
                CIDR: 10.0.128.0/20
              - labelValue: "eu-central-1b"
                CIDR: 10.0.144.0/20
              - labelValue: "eu-central-1c"
                CIDR: 10.0.160.0/20
            topologyLabel: failure-domain.beta.kubernetes.io/zone
            nodeSelector:
              matchLabels:
                node-role.kubernetes.io/worker: ""
          ```

          When a namespace with the opt-in annotation is created, the following happens:

          1. for each of the CIDRs, an available IP is selected and assigned to the namespace
          2. the relative `netnamespace` is update to reflect the assignment (multiple IPs will be assigned in this case).
          3. one node per zone is selected to carry the egressIP
          4. the relative aws machines are assigned the additional IP on the main interface (support for secondary interfaces in not available)
          5. the relative `hostsubnets` are updated to reflect the assigned IP, the `egressIP` field is updated.
        displayName: Egressip Ipam Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - egressIPs
        - high availability
        - firewall support
        - traffic management
        - ipam
        links:
        - name: Egressip Ipam Operator
          url: https://github.com/redhat-cop/egressip-ipam-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/egressip-ipam-operator:v0.1.2
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/egressip-ipam-operator@sha256:1e2443488e0aad361cccece51689e2b8da882862cb62c1208a14ab1b5ec2922d
        - quay.io/redhat-cop/egressip-ipam-operator@sha256:d6129bd287b87696a23e0da64dcd598958f779dc88ae33b46b3c909dbab80adf
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.2.4
      entries:
      - name: egressip-ipam-operator.v1.2.4
        version: 1.2.4
      - name: egressip-ipam-operator.v1.2.3
        version: 1.2.3
      - name: egressip-ipam-operator.v1.2.2
        version: 1.2.2
      - name: egressip-ipam-operator.v1.2.1
        version: 1.2.1
      - name: egressip-ipam-operator.v1.2.0
        version: 1.2.0
      - name: egressip-ipam-operator.v1.1.0
        version: 1.1.0
      - name: egressip-ipam-operator.v1.0.8
        version: 1.0.8
      - name: egressip-ipam-operator.v1.0.7
        version: 1.0.7
      - name: egressip-ipam-operator.v1.0.6
        version: 1.0.6
      - name: egressip-ipam-operator.v1.0.5
        version: 1.0.5
      - name: egressip-ipam-operator.v1.0.4
        version: 1.0.4
      - name: egressip-ipam-operator.v1.0.3
        version: 1.0.3
      - name: egressip-ipam-operator.v1.0.2
        version: 1.0.2
      - name: egressip-ipam-operator.v1.0.1
        version: 1.0.1
      - name: egressip-ipam-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: egressip-ipam-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: windows-machine-config-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: windows-machine-config-operator.v10.20.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          createdAt: "2025-09-16T22:12:55Z"
          description: An operator that enables Windows container workloads on OCP
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=10.19.0 <10.20.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-windows-machine-config-operator
          operators.openshift.io/valid-subscription: '["Red Hat OpenShift support
            for Windows Containers"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/windows-machine-config-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          ### Introduction
          The Windows Machine Config Operator configures Windows Machines into nodes, enabling Windows container workloads to
          be run on OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets),
          or by specifying existing instances through a [ConfigMap](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/byoh-windows-instance)
          The operator completes all the necessary steps to configure the Windows instance so that it can join the cluster as a worker node.

          Usage of this operator requires an OpenShift Container Platform for Windows Containers subscription. Users looking to
          deploy Windows containers workloads in production clusters should acquire a subscription before attempting to
          install this operator. Users without a subscription can try the community operator, a distribution which lacks
          official support.

          ### Pre-requisites
          * A Red Hat OpenShift Container Platform for Windows Containers [subscription](https://access.redhat.com/support/policy/updates/openshift#windows)
          * OCP 4.20 cluster running on Azure, AWS, GCP or vSphere configured with hybrid OVN Kubernetes networking
          * [WMCO prerequisites](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/understanding-windows-container-workloads)

          ### Usage
          Once the `openshift-windows-machine-config-operator` namespace has been created, a secret must be created containing
          the private key that will be used to access the Windows VMs:
          ```
          # Create secret containing the private key in the openshift-windows-machine-config-operator namespace
          oc create secret generic cloud-private-key --from-file=private-key.pem=/path/to/key -n openshift-windows-machine-config-operator
          ```
          We strongly recommend not using the same
          [private key](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/installing_on_azure/installing-on-azure#ssh-agent-using_installing-azure-customizations)
          used when installing the cluster

          Below is an example of a vSphere Windows MachineSet which can create Windows Machines that the WMCO can react upon.
          Please note that the windows-user-data secret will be created by the WMCO lazily when it is configuring the first
          Windows Machine. After that, the windows-user-data will be available for the subsequent MachineSets to be consumed.
          It might take around 10 minutes for the Windows VM to be configured so that it joins the cluster. Please note that
          the MachineSet should have following labels:
          * `machine.openshift.io/os-id: Windows`
          * `machine.openshift.io/cluster-api-machine-role: worker`
          * `machine.openshift.io/cluster-api-machine-type: worker`

          The following label must be added to the Machine spec within the MachineSet spec:
          * `node-role.kubernetes.io/worker: ""`

          Not having these labels will result in the Windows node not being marked as a worker.

          `<infrastructureID>` should be replaced with the output of:
          ```
          oc get -o jsonpath='{.status.infrastructureName}{"\n"}' infrastructure cluster
          ```

          The following template variables need to be replaced as follows with values from your vSphere environment:
          * `<Windows_VM_template>`: template name
          * `<VM Network Name>`: network name
          * `<vCenter DataCenter Name>`: datacenter name
          * `<Path to VM Folder in vCenter>`: path where your OpenShift cluster is running
          * `<vCenter Datastore Name>`: datastore name
          * `<vCenter Server FQDN/IP>`: IP address or FQDN of the vCenter server

          Please note that on vSphere, Windows Machine names cannot be more than 15 characters long. The MachineSet name therefore
          cannot be more than 9 characters long, due to the way Machine names are generated from it.
          ```
          apiVersion: machine.openshift.io/v1beta1
          kind: MachineSet
          metadata:
            labels:
              machine.openshift.io/cluster-api-cluster: <infrastructureID>
            name: winworker
            namespace: openshift-machine-api
          spec:
            replicas: 1
            selector:
              matchLabels:
                machine.openshift.io/cluster-api-cluster: <infrastructureID>
                machine.openshift.io/cluster-api-machineset: winworker
            template:
              metadata:
                labels:
                  machine.openshift.io/cluster-api-cluster: <infrastructureID>
                  machine.openshift.io/cluster-api-machine-role: worker
                  machine.openshift.io/cluster-api-machine-type: worker
                  machine.openshift.io/cluster-api-machineset: winworker
                  machine.openshift.io/os-id: Windows
              spec:
                metadata:
                  labels:
                    node-role.kubernetes.io/worker: ""
                providerSpec:
                  value:
                    apiVersion: vsphereprovider.openshift.io/v1beta1
                    credentialsSecret:
                      name: vsphere-cloud-credentials
                      namespace: openshift-machine-api
                    diskGiB: 128
                    kind: VSphereMachineProviderSpec
                    memoryMiB: 16384
                    metadata:
                      creationTimestamp: null
                    network:
                      devices:
                      - networkName: "<VM Network Name>"
                    numCPUs: 4
                    numCoresPerSocket: 1
                    snapshot: ""
                    template: <Windows_VM_template
                    userDataSecret:
                      name: windows-user-data
                    workspace:
                      datacenter: <vCenter DataCenter Name>
                      datastore: <vCenter Datastore Name>
                      folder: <Path to VM Folder in vCenter> # e.g. /DC/vm/ocp45-2tdrm
                      server: <vCenter Server FQDN/IP>
          ```
          Example MachineSet for other cloud providers:
          - [AWS](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-aws)
          - [Azure](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-azure)
          - [GCP](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/windows_container_support_for_openshift/creating-windows-machine-sets#creating-windows-machineset-gcp)

          ### Limitations
          #### DeploymentConfigs
          Windows Nodes do not support workloads created via DeploymentConfigs. Please use a normal Deployment, or other method to
          deploy workloads.

          ### Reporting issues
          Support for this distribution of WMCO requires a Red Hat OpenShfit subscription. Support should be requested through the Red Hat Customer Portal.
          Please read through the [troubleshooting document](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/support/troubleshooting)
          before opening a support case.
        displayName: Windows Machine Config Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - windows
        maintainers:
        - email: team-winc@redhat.com
          name: Red Hat, Windows Container Support for OpenShift
        maturity: stable
        minKubeVersion: 1.33.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4-wincw/windows-machine-config-rhel9-operator@sha256:9d5bdca5f80895a316d7af75e8c5316b0e27ded1dd4b4d4fac01ef1c23b7a6fc
        - registry.redhat.io/openshift4-wincw/windows-machine-config-operator-bundle@sha256:e3d896e0f2e6713ad972f733d7424af371a0d75ce6fd0f8b9fadf5ad71c6c22d
        version: 10.20.0
      entries:
      - name: windows-machine-config-operator.v10.20.0
        version: 10.20.0
      name: stable
    defaultChannel: stable
    packageName: windows-machine-config-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-keyspaces-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-keyspaces-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keyspaces.services.k8s.aws/v1alpha1",
                "kind": "Keyspace",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "keyspaces.services.k8s.aws/v1alpha1",
                "kind": "Table",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/keyspaces-controller:1.2.0
          createdAt: "2025-11-29T04:36:08Z"
          description: AWS Keyspaces controller is a service controller for managing
            Keyspaces resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Keyspace represents the state of an AWS keyspaces Keyspace
              resource.
            displayName: Keyspace
            kind: Keyspace
            name: keyspaces.keyspaces.services.k8s.aws
            version: v1alpha1
          - description: Table represents the state of an AWS keyspaces Table resource.
            displayName: Table
            kind: Table
            name: tables.keyspaces.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Keyspaces resources in AWS from within your Kubernetes cluster.

          **About Amazon Keyspaces**

          Amazon Keyspaces (for Apache Cassandra) is a scalable, highly available, and managed Apache Cassandra–compatible database service. With Amazon Keyspaces, you don’t have to provision, patch, or manage servers, and you don’t have to install, maintain, or operate software.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Keyspaces
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - keyspaces
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Keyspaces Developer Resources
          url: https://aws.amazon.com/keyspaces/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: keyspaces maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/keyspaces-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-keyspaces-controller@sha256:95da338a7390cc9e5fbff4b5d22d7741d4e1d67ed4403c874dd39b073e3a0487
        version: 1.2.0
      entries:
      - name: ack-keyspaces-controller.v1.2.0
        version: 1.2.0
      - name: ack-keyspaces-controller.v1.1.2
        version: 1.1.2
      - name: ack-keyspaces-controller.v1.1.1
        version: 1.1.1
      - name: ack-keyspaces-controller.v1.1.0
        version: 1.1.0
      - name: ack-keyspaces-controller.v1.0.14
        version: 1.0.14
      - name: ack-keyspaces-controller.v1.0.12
        version: 1.0.12
      - name: ack-keyspaces-controller.v1.0.11
        version: 1.0.11
      - name: ack-keyspaces-controller.v1.0.10
        version: 1.0.10
      - name: ack-keyspaces-controller.v1.0.9
        version: 1.0.9
      - name: ack-keyspaces-controller.v1.0.7
        version: 1.0.7
      - name: ack-keyspaces-controller.v1.0.6
        version: 1.0.6
      - name: ack-keyspaces-controller.v1.0.5
        version: 1.0.5
      - name: ack-keyspaces-controller.v1.0.3
        version: 1.0.3
      - name: ack-keyspaces-controller.v1.0.2
        version: 1.0.2
      - name: ack-keyspaces-controller.v1.0.1
        version: 1.0.1
      - name: ack-keyspaces-controller.v1.0.0
        version: 1.0.0
      - name: ack-keyspaces-controller.v0.0.16
        version: 0.0.16
      - name: ack-keyspaces-controller.v0.0.15
        version: 0.0.15
      - name: ack-keyspaces-controller.v0.0.14
        version: 0.0.14
      - name: ack-keyspaces-controller.v0.0.13
        version: 0.0.13
      - name: ack-keyspaces-controller.v0.0.12
        version: 0.0.12
      - name: ack-keyspaces-controller.v0.0.11
        version: 0.0.11
      - name: ack-keyspaces-controller.v0.0.10
        version: 0.0.10
      - name: ack-keyspaces-controller.v0.0.9
        version: 0.0.9
      - name: ack-keyspaces-controller.v0.0.8
        version: 0.0.8
      - name: ack-keyspaces-controller.v0.0.7
        version: 0.0.7
      - name: ack-keyspaces-controller.v0.0.6
        version: 0.0.6
      - name: ack-keyspaces-controller.v0.0.5
        version: 0.0.5
      - name: ack-keyspaces-controller.v0.0.4
        version: 0.0.4
      - name: ack-keyspaces-controller.v0.0.3
        version: 0.0.3
      - name: ack-keyspaces-controller.v0.0.2
        version: 0.0.2
      - name: ack-keyspaces-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-keyspaces-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Managed Openshift Black Belt
      provider-url: ""
    name: ecr-secret-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ecr-secret-operator.v0.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecr.mobb.redhat.com/v1alpha1",
                "kind": "Secret",
                "metadata": {
                  "name": "ecr-secret-sample",
                  "namespace": "test-ecr-secret-operator"
                },
                "spec": {
                  "ecr_registry": "ACCOUNT_ID.dkr.ecr.us-east-2.amazonaws.com",
                  "frequency": "10h",
                  "generated_secret_name": "ecr-docker-secret",
                  "region": "us-east-2"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/mobb/ecr-secret-operator:v0.3.2
          operatorframework.io/suggested-namespace: ecr-secret-operator
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-mobb/ecr-secret-operator
          support: Managed Openshift Black Belt
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Secret is the Schema for the secrets API
            displayName: Secret
            kind: Secret
            name: secrets.ecr.mobb.redhat.com
            version: v1alpha1
        description: "# ECR Secret Operator\n\nAmazon Elastic Container Registry [Private
          Registry Authentication](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry_auth.html)
          provides a temporary token that is valid only for 12 hours. It is a challenge
          for automatic container image build process to refresh the token or secret
          in a timely manner.\n\nThis operators frequently talks with AWS ECR GetAuthroization
          Token and create/update the secret, so that the service account can perform
          docker image build.\n\n\n## How to use this operator\n\n### Prerequisites\n\n*
          [Create an ECR private repository](https://docs.aws.amazon.com/AmazonECR/latest/userguide/repository-create.html)\n*
          Create An Openshift Cluster\n* Provide AWS Authentication to the operator.
          Two Options:\n  **Note: You have to provide a secret aws-ecr-cloud-credentials
          in the installed namespace**\n  * [IAM User](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_user.md)\n
          \ * [STS Assume Role](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_assume_role.md)\n\n###
          Install the operator\n\n### Create the ECR Secret CRD\n\n```\napiVersion:
          ecr.mobb.redhat.com/v1alpha1\nkind: Secret\nmetadata:\n  name: ecr-secret\n
          \ namespace: test-ecr-secret-operator\nspec:\n  generated_secret_name: ecr-docker-secret\n
          \ ecr_registry: [ACCOUNT_ID].dkr.ecr.us-east-2.amazonaws.com\n  frequency:
          10h\n  region: us-east-2\n```\n\n```\noc create -f CRD_FILE\n```\n\nA docker
          registry secret is created by the operator momentally and the token is patched
          every 10 hours\n\n```\noc get secret ecr-docker-secret   \nNAME                TYPE
          \                            DATA   AGE\necr-docker-secret   kubernetes.io/dockerconfigjson
          \  1      16h\n```\n\n### A sample build process with generated secret\n\n\nLink
          the secret to builder\n\n```\noc secrets link builder ecr-docker-secret
          \n```\n\nConfigure [build config](https://github.com/rh-mobb/ecr-secret-operator/tree/main/samples/build-config.yaml)
          to point to your ECR Container repository\n\n```\noc create imagestream
          ruby\noc tag openshift/ruby:2.5-ubi8 ruby:2.5\noc create -f samples/build-config.yaml\noc
          start-build ruby-sample-build --wait\n```\n\nBuild should succeed and push
          the image to the the private ECR Container repository\n\n"
        displayName: ECR Secret Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecr
        - aws
        - redhat
        links:
        - name: Ecr Secret Operator
          url: https://github.com/rh-mobb/ecr-secret-operator
        maintainers:
        - email: shading@redhat.com
          name: Shaozhen Ding
        maturity: alpha
        provider:
          name: Managed Openshift Black Belt
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/mobb/ecr-secret-operator:v0.3.2
        - quay.io/openshift-community-operators/ecr-secret-operator@sha256:90f512ce90433a33b50c58613d9b7136e00f116c48e179c4a1be89d6a35f9abc
        version: 0.3.2
      entries:
      - name: ecr-secret-operator.v0.3.2
        version: 0.3.2
      name: v0.3
    - currentCSV: ecr-secret-operator.v0.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecr.mobb.redhat.com/v1alpha1",
                "kind": "Secret",
                "metadata": {
                  "name": "ecr-secret-sample",
                  "namespace": "test-ecr-secret-operator"
                },
                "spec": {
                  "ecr_registry": "ACCOUNT_ID.dkr.ecr.us-east-2.amazonaws.com",
                  "frequency": "10h",
                  "generated_secret_name": "ecr-docker-secret",
                  "region": "us-east-2"
                }
              },
              {
                "apiVersion": "ecr.mobb.redhat.com/v1alpha1",
                "kind": "ArgoHelmRepoSecret",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ecr-secret-operator",
                    "app.kubernetes.io/instance": "argohelmreposecret-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "argohelmreposecret",
                    "app.kubernetes.io/part-of": "ecr-secret-operator"
                  },
                  "name": "argohelmreposecret-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/mobb/ecr-secret-operator:v0.4.1
          createdAt: "2023-04-14T14:52:13Z"
          operatorframework.io/suggested-namespace: ecr-secret-operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-mobb/ecr-secret-operator
          support: Managed Openshift Black Belt
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ArgoHelmRepoSecret is the Schema for the argohelmreposecrets
              API
            displayName: Argo Helm Repo Secret
            kind: ArgoHelmRepoSecret
            name: argohelmreposecrets.ecr.mobb.redhat.com
            version: v1alpha1
          - description: Secret is the Schema for the secrets API
            displayName: Secret
            kind: Secret
            name: secrets.ecr.mobb.redhat.com
            version: v1alpha1
        description: "# ECR Secret Operator\n\nAmazon Elastic Container Registry [Private
          Registry Authentication](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry_auth.html)
          provides a temporary token that is valid only for 12 hours. It is a challenge
          for automatic container image build process to refresh the token or secret
          in a timely manner.\n\nThis operators frequently talks with AWS ECR GetAuthroization
          Token and create/update the secret, so that the service account can perform
          docker image build.\n\n\n## How to use this operator\n\n### Prerequisites\n\n*
          [Create an ECR private repository](https://docs.aws.amazon.com/AmazonECR/latest/userguide/repository-create.html)\n*
          Create An Openshift Cluster\n* Provide AWS Authentication to the operator.
          Two Options:\n  **Note: You have to provide a secret aws-ecr-cloud-credentials
          in the installed namespace**\n  * [IAM User](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_user.md)\n
          \ * [STS Assume Role](https://github.com/rh-mobb/ecr-secret-operator/tree/main/docs/iam_assume_role.md)\n\n###
          Install the operator\n\n### Create the ECR Secret CRD\n\n```\napiVersion:
          ecr.mobb.redhat.com/v1alpha1\nkind: Secret\nmetadata:\n  name: ecr-secret\n
          \ namespace: test-ecr-secret-operator\nspec:\n  generated_secret_name: ecr-docker-secret\n
          \ ecr_registry: [ACCOUNT_ID].dkr.ecr.us-east-2.amazonaws.com\n  frequency:
          10h\n  region: us-east-2\n```\n\n```\noc create -f CRD_FILE\n```\n\nA docker
          registry secret is created by the operator momentally and the token is patched
          every 10 hours\n\n```\noc get secret ecr-docker-secret   \nNAME                TYPE
          \                            DATA   AGE\necr-docker-secret   kubernetes.io/dockerconfigjson
          \  1      16h\n```\n\n### A sample build process with generated secret\n\n\nLink
          the secret to builder\n\n```\noc secrets link builder ecr-docker-secret
          \n```\n\nConfigure [build config](https://github.com/rh-mobb/ecr-secret-operator/tree/main/samples/build-config.yaml)
          to point to your ECR Container repository\n\n```\noc create imagestream
          ruby\noc tag openshift/ruby:2.5-ubi8 ruby:2.5\noc create -f samples/build-config.yaml\noc
          start-build ruby-sample-build --wait\n```\n\nBuild should succeed and push
          the image to the the private ECR Container repository\n\n"
        displayName: ECR Secret Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecr
        - aws
        - redhat
        links:
        - name: Ecr Secret Operator
          url: https://github.com/rh-mobb/ecr-secret-operator
        maintainers:
        - email: shading@redhat.com
          name: Shaozhen Ding
        maturity: alpha
        provider:
          name: Managed Openshift Black Belt
        relatedImages:
        - quay.io/openshift-community-operators/ecr-secret-operator@sha256:53e73c53c31e0e06c990d3d966c2b4053d559a58a17a781155a3ceff3efac831
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/mobb/ecr-secret-operator:v0.4.1
        version: 0.4.1
      entries:
      - name: ecr-secret-operator.v0.4.1
        version: 0.4.1
      - name: ecr-secret-operator.v0.4.0
        version: 0.4.0
      name: v0.4
    defaultChannel: v0.4
    packageName: ecr-secret-operator
    provider:
      name: Managed Openshift Black Belt
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: node-healthcheck-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-healthcheck-operator.v0.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "remediation.medik8s.io/v1alpha1",
                "kind": "NodeHealthCheck",
                "metadata": {
                  "name": "nodehealthcheck-sample"
                },
                "spec": {
                  "minHealthy": "51%",
                  "remediationTemplate": {
                    "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                    "kind": "SelfNodeRemediationTemplate",
                    "name": "self-node-remediation-automatic-strategy-template",
                    "namespace": "openshift-operators"
                  },
                  "selector": {
                    "matchExpressions": [
                      {
                        "key": "node-role.kubernetes.io/worker",
                        "operator": "Exists"
                      }
                    ]
                  },
                  "unhealthyConditions": [
                    {
                      "duration": "300s",
                      "status": "False",
                      "type": "Ready"
                    },
                    {
                      "duration": "300s",
                      "status": "Unknown",
                      "type": "Ready"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/plugins: '["node-remediation-console-plugin"]'
          containerImage: registry.redhat.io/workload-availability/node-healthcheck-rhel9-operator@sha256:f7ef379b374b824da311a2696351b5bd930717d193515f68f12040b40df8e75c
          createdAt: "2025-11-11 21:43:16"
          description: Detect failed Nodes and trigger remediation with a remediation
            operator.
          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: "true"
          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.skipRange: '>=0.9.0 <0.10.1'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-healthcheck-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeHealthCheck is the Schema for the nodehealthchecks API
            displayName: Node Health Check
            kind: NodeHealthCheck
            name: nodehealthchecks.remediation.medik8s.io
            version: v1alpha1
        description: |
          ### Introduction
          Hardware is imperfect, and software contains bugs. When node level failures such as kernel hangs or dead NICs
          occur, the work required from the cluster does not decrease - workloads from affected nodes need to be
          restarted somewhere.

          However some workloads, such as RWO volumes and StatefulSets, may require at-most-one semantics.
          Failures affecting these kind of workloads risk data loss and/or corruption if nodes (and the workloads
          running on them) are assumed to be dead whenever we stop hearing from them. For this reason it is important
          to know that the node has reached a safe state before initiating recovery of the workload.

          Unfortunately it is not always practical to require admin intervention in order to confirm the node’s true status.
          In order to automate the recovery of exclusive workloads, we provide operators for failure detection
          and remediation.

          ### Failure detection: Node Health Check operator
          The “Node Health Check” (NHC) operator checks each Node’s set of
          NodeConditions (eg. NotReady) against the criteria and thresholds defined in
          NodeHealthCheck configuration. If the Node is deemed to be in a failed
          state, NHC will initiate recovery by using the SIG Cluster API's “External
          Remediation” API to instantiate the configured remediation template which
          specifies the mechanism/controller to be used.

          ### Failure handling: External remediators
          There are multiple remediators for handling node failure that we recommend:
          - Self Node Remediation (SNR)
          - Fence Agents Remediation (FAR)
          - Machine Deletion Remediation (MDR)

          #### Self Node Remediation (SNR)
          SNR uses watchdog timers and heuristics to ensure nodes enter a safe state
          (no longer hosting workloads) within a known and finite period of time,
          before signaling to the system that all Pods on the failed Node are no longer active
          and can be relocated elsewhere.
          In the case of transient errors, the watchdog’s actions will also result in
          the node rebooting and rejoining the cluster - restoring capacity.

          #### Fence Agents Remediation (FAR)
          FAR uses well-known agents to fence unhealthy nodes, and eventually FAR remediates the nodes.
          The remediation includes rebooting the unhealthy node using a fence agent,
          and then evicting workloads from the unhealthy node.

          #### Machine Deletion Remediation (MDR)
          MDR is limited to OpenShift, and it uses Machine API for reprovisioning unhealthy nodes by deleting their machines.
        displayName: Node Health Check Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - NHC
        - Self Node Remediation
        - SNR
        - Remediation
        - Fencing
        - medik8s
        - k8s
        links:
        - name: Node Healthcheck Operator
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance
        - name: Source Code
          url: https://github.com/medik8s/node-healthcheck-operator
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/node-healthcheck-must-gather-rhel9@sha256:6bfbfe36d4e01d1b320a6f8a3ffb2d937b7c2cdc17884d63a29f02c1e4e4d658
        - registry.redhat.io/workload-availability/node-healthcheck-rhel9-operator@sha256:f7ef379b374b824da311a2696351b5bd930717d193515f68f12040b40df8e75c
        - registry.redhat.io/workload-availability/node-remediation-console-rhel9@sha256:e476663624956f6c00387cac9e41129973718f8cb46129153d1e58a039357683
        - registry.redhat.io/workload-availability/node-healthcheck-operator-bundle@sha256:e60e749a273732fa4f3c570ecdb250f71e747b81fe379b5ffb75282d293032a8
        version: 0.10.1
      entries:
      - name: node-healthcheck-operator.v0.10.1
        version: 0.10.1
      - name: node-healthcheck-operator.v0.10.0
        version: 0.10.0
      - name: node-healthcheck-operator.v0.9.1
        version: 0.9.1
      - name: node-healthcheck-operator.v0.9.0
        version: 0.9.0
      name: stable
    defaultChannel: stable
    packageName: node-healthcheck-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CephCSI Community
      provider-url: ""
    name: cephcsi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cephcsi-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:50:12Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CephConnection
            name: cephconnections.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfileMapping
            name: clientprofilemappings.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfile
            name: clientprofiles.csi.ceph.io
            version: v1alpha1
          - kind: Driver
            name: drivers.csi.ceph.io
            version: v1alpha1
          - kind: OperatorConfig
            name: operatorconfigs.csi.ceph.io
            version: v1alpha1
        description: Operator to deploy ceph csi drivers.
        displayName: CephCSI operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: Github Repo
          url: https://github.com/ceph/ceph-csi-operator
        maintainers:
        - email: ceph-csi-team@redhat.com
          name: CephCSI Community
        maturity: alpha
        provider:
          name: CephCSI Community
        relatedImages:
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:1bc7b2785534ab8d8a9a00e81cdc961838a817df7c3c5d4de527b0e5eb697d9a
        - registry.redhat.io/odf4/cephcsi-rhel9-operator@sha256:55e3fb0c0f140fa98e90b639cb0bf933874977d5cebaef1b885150fde7dcc77a
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: cephcsi-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: cephcsi-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: cephcsi-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: cephcsi-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: cephcsi-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: cephcsi-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: cephcsi-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: cephcsi-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: cephcsi-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: cephcsi-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: cephcsi-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:35:25Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CephConnection
            name: cephconnections.csi.ceph.io
            version: v1
          - kind: CephConnection
            name: cephconnections.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfileMapping
            name: clientprofilemappings.csi.ceph.io
            version: v1
          - kind: ClientProfileMapping
            name: clientprofilemappings.csi.ceph.io
            version: v1alpha1
          - kind: ClientProfile
            name: clientprofiles.csi.ceph.io
            version: v1
          - kind: ClientProfile
            name: clientprofiles.csi.ceph.io
            version: v1alpha1
          - kind: Driver
            name: drivers.csi.ceph.io
            version: v1
          - kind: Driver
            name: drivers.csi.ceph.io
            version: v1alpha1
          - kind: OperatorConfig
            name: operatorconfigs.csi.ceph.io
            version: v1
          - kind: OperatorConfig
            name: operatorconfigs.csi.ceph.io
            version: v1alpha1
        description: Operator to deploy ceph csi drivers.
        displayName: CephCSI operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: Github Repo
          url: https://github.com/ceph/ceph-csi-operator
        maintainers:
        - email: ceph-csi-team@redhat.com
          name: CephCSI Community
        maturity: alpha
        provider:
          name: CephCSI Community
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/cephcsi-operator-bundle@sha256:87990cdf6adf9a27e9bf9a4d6935d6c7328939da223bc1d145b0991b2dfea25c
        - registry.redhat.io/odf4/cephcsi-rhel9-operator@sha256:4a25fab343836486ac80c25d69e3d5d1223911085a5e6a7240eecaa1ed7b952d
        version: 4.20.4-rhodf
      entries:
      - name: cephcsi-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: cephcsi-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: cephcsi-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: cephcsi-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: cephcsi-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: cephcsi-operator
    provider:
      name: CephCSI Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: o-cloud-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: o-cloud-manager.v4.20.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ClusterTemplate",
                "metadata": {
                  "name": "clustertemplate-sample.v1.0.0",
                  "namespace": "clustertemplate-a-v4-16-3"
                },
                "spec": {
                  "characteristics": {
                    "age": "31"
                  },
                  "description": "nice description",
                  "metadata": {
                    "apple": "23"
                  },
                  "name": "clustertemplate-a",
                  "release": "4.16.3",
                  "templateParameterSchema": {
                    "properties": {
                      "clusterInstanceParameters": {
                        "description": "clusterInstanceParameters defines the available parameters for cluster installation",
                        "properties": {
                          "additionalNTPSources": {
                            "description": "AdditionalNTPSources is a list of NTP sources (hostname or IP) to be added to all cluster hosts. They are added to any NTP sources that were configured through other means.",
                            "items": {
                              "type": "string"
                            },
                            "type": "array"
                          },
                          "apiVIPs": {
                            "description": "APIVIPs are the virtual IPs used to reach the OpenShift cluster's API. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "baseDomain": {
                            "description": "BaseDomain is the base domain to use for the deployed cluster.",
                            "type": "string"
                          },
                          "clusterName": {
                            "description": "ClusterName is the name of the cluster.",
                            "type": "string"
                          },
                          "extraAnnotations": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide annotations to be applied to the rendered templates",
                            "type": "object"
                          },
                          "extraLabels": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide labels to be applied to the rendered templates",
                            "type": "object"
                          },
                          "ingressVIPs": {
                            "description": "IngressVIPs are the virtual IPs used for cluster ingress traffic. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "machineNetwork": {
                            "description": "MachineNetwork is the list of IP address pools for machines.",
                            "items": {
                              "description": "MachineNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "nodes": {
                            "items": {
                              "description": "NodeSpec",
                              "properties": {
                                "extraAnnotations": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level annotations to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "extraLabels": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level labels to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "hostName": {
                                  "description": "Hostname is the desired hostname for the host",
                                  "type": "string"
                                },
                                "nodeLabels": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "NodeLabels allows the specification of custom roles for your nodes in your managed clusters. These are additional roles are not used by any OpenShift Container Platform components, only by the user. When you add a custom role, it can be associated with a custom machine config pool that references a specific configuration for that role. Adding custom labels or roles during installation makes the deployment process more effective and prevents the need for additional reboots after the installation is complete.",
                                  "type": "object"
                                },
                                "nodeNetwork": {
                                  "description": "NodeNetwork is a set of configurations pertaining to the network settings for the node.",
                                  "properties": {
                                    "config": {
                                      "description": "yaml that can be processed by nmstate, using custom marshaling/unmarshaling that will allow to populate nmstate config as plain yaml.",
                                      "type": "object",
                                      "x-kubernetes-preserve-unknown-fields": true
                                    }
                                  },
                                  "type": "object"
                                }
                              },
                              "required": [
                                "hostName"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "serviceNetwork": {
                            "description": "ServiceNetwork is the list of IP address pools for services.",
                            "items": {
                              "description": "ServiceNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "sshPublicKey": {
                            "description": "SSHPublicKey is the public Secure Shell (SSH) key to provide access to instances. This key will be added to the host to allow ssh access",
                            "type": "string"
                          }
                        },
                        "required": [
                          "clusterName",
                          "nodes"
                        ],
                        "type": "object"
                      },
                      "nodeClusterName": {
                        "type": "string"
                      },
                      "oCloudSiteId": {
                        "type": "string"
                      },
                      "policyTemplateParameters": {
                        "description": "policyTemplateParameters defines the available parameters for cluster configuration",
                        "properties": {
                          "cpu-isolated": {
                            "type": "string"
                          },
                          "cpu-reserved": {
                            "type": "string"
                          },
                          "hugepages-count": {
                            "type": "string"
                          },
                          "hugepages-default": {
                            "type": "string"
                          },
                          "hugepages-size": {
                            "type": "string"
                          },
                          "install-plan-approval": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-1": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-2": {
                            "type": "string"
                          },
                          "sriov-network-vlan-1": {
                            "type": "string"
                          },
                          "sriov-network-vlan-2": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "required": [
                      "nodeClusterName",
                      "oCloudSiteId",
                      "policyTemplateParameters",
                      "clusterInstanceParameters"
                    ],
                    "type": "object"
                  },
                  "templates": {
                    "clusterInstanceDefaults": "clustertemplate-sample.v1.0.0-clusterinstance-defaults",
                    "hwTemplate": "sample-hwtemplate-v1",
                    "policyTemplateDefaults": "clustertemplate-sample.v1.0.0-policytemplate-defaults",
                    "upgradeDefaults": "upgrade-defaults-v1"
                  },
                  "version": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwarePlugin",
                "metadata": {
                  "name": "metal3-hwplugin",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "apiRoot": "https://metal3-hardwareplugin-server.oran-o2ims.svc.cluster.local:8443",
                  "authClientConfig": {
                    "type": "ServiceAccount"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareProfile",
                "metadata": {
                  "name": "hardwareprofile-sample",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bios": {
                    "attributes": {
                      "SriovGlobalEnable": "Enabled",
                      "SysProfile": "Custom",
                      "WorkloadProfile": "TelcoOptimizedProfile"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareTemplate",
                "metadata": {
                  "name": "r740-blue-basic",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hardwareProvisioningTimeout": "60m",
                  "nodeGroupData": [
                    {
                      "hwProfile": "rh-profile-r740-bios-settings",
                      "name": "controller",
                      "resourceSelector": {
                        "resourceselector.clcm.openshift.io/server-colour": "blue",
                        "server-type": "R740"
                      },
                      "role": "master"
                    }
                  ]
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ProvisioningRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "provisioningrequest-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "provisioningrequest",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "123e4567-e89b-12d3-a456-426614174000"
                },
                "spec": {
                  "description": "Provisioning request for setting up a Single Node OpenShift (SNO) in the test environment.",
                  "name": "TestEnv-SNO-Provisioning-site-sno-du-1",
                  "templateName": "clustertemplate-sample",
                  "templateParameters": {
                    "clusterInstanceParameters": {
                      "additionalNTPSources": [
                        "NTP.server1",
                        "1.1.1.1"
                      ],
                      "apiVIPs": [
                        "192.0.2.2"
                      ],
                      "baseDomain": "example.com",
                      "clusterName": "site-sno-du-1",
                      "extraAnnotations": {
                        "AgentClusterInstall": {
                          "extra-annotation-key": "extra-annotation-value"
                        }
                      },
                      "extraLabels": {
                        "AgentClusterInstall": {
                          "extra-label-key": "extra-label-value"
                        },
                        "ManagedCluster": {
                          "cluster-version": "v4.16",
                          "clustertemplate-a-policy": "v1"
                        }
                      },
                      "ingressVIPs": [
                        "192.0.2.3"
                      ],
                      "machineNetwork": [
                        {
                          "cidr": "192.0.2.0/24"
                        }
                      ],
                      "nodes": [
                        {
                          "bootMode": "UEFI",
                          "extraAnnotations": {
                            "BareMetalHost": {
                              "extra-annotation-key": "extra-annotation-value"
                            }
                          },
                          "extraLabels": {
                            "BareMetalHost": {
                              "extra-label-key": "extra-label-value"
                            }
                          },
                          "hostName": "node1.baseDomain.com",
                          "nodeLabels": {
                            "node-role.kubernetes.io/infra": "",
                            "node-role.kubernetes.io/master": ""
                          },
                          "nodeNetwork": {
                            "config": {
                              "dns-resolver": {
                                "config": {
                                  "server": [
                                    "192.0.2.22"
                                  ]
                                }
                              },
                              "interfaces": [
                                {
                                  "ipv4": {
                                    "address": [
                                      {
                                        "ip": "192.0.2.10",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.11",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.12",
                                        "prefix-length": 24
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:601",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:602",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:603",
                                        "prefix-length": 64
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "name": "eno1",
                                  "type": "ethernet"
                                },
                                {
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:1302::100"
                                      }
                                    ],
                                    "enabled": true,
                                    "link-aggregation": {
                                      "mode": "balance-rr",
                                      "options": {
                                        "miimon": "140"
                                      },
                                      "slaves": [
                                        "eth0",
                                        "eth1"
                                      ]
                                    },
                                    "prefix-length": 64
                                  },
                                  "name": "bond99",
                                  "state": "up",
                                  "type": "bond"
                                }
                              ],
                              "routes": {
                                "config": [
                                  {
                                    "destination": "0.0.0.0/0",
                                    "next-hop-address": "192.0.2.254",
                                    "next-hop-interface": "eno1",
                                    "table-id": 254
                                  }
                                ]
                              }
                            }
                          }
                        }
                      ],
                      "serviceNetwork": [
                        {
                          "cidr": "233.252.0.0/24"
                        }
                      ],
                      "sshPublicKey": "ssh-rsa"
                    },
                    "nodeClusterName": "site-sno-du-1",
                    "oCloudSiteId": "local-west-12345",
                    "policyTemplateParameters": {
                      "sriov-network-vlan-1": "114",
                      "sriov-network-vlan-2": "111"
                    }
                  },
                  "templateVersion": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "ocloud.openshift.io/v1alpha1",
                "kind": "Inventory",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "inventory-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "inventory",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "default",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "caBundleName": "o2ims-custom-ca-certs",
                  "cloudID": "b7dcb3ff-583d-42d9-abb5-f484386fc688",
                  "ingress": {
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    }
                  },
                  "smo": {
                    "oauth": {
                      "clientSecretName": "oauth-client-secrets",
                      "groupsClaim": "roles",
                      "scopes": [
                        "openid",
                        "profile",
                        "role:ocloud-manager"
                      ],
                      "tokenEndpoint": "/protocol/openid-connect/token",
                      "url": "https://oauth.example.com:8443/realms/oran",
                      "usernameClaim": "preferred_username"
                    },
                    "registrationEndpoint": "/smo/v1/registration",
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    },
                    "url": "https://smo.example.com"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "AllocatedNode",
                "metadata": {
                  "name": "91c70863-8a83-422a-ab7a-a75f744d5210",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "groupName": "controller",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hwMgrNodeId": "r740xserver1",
                  "hwMgrNodeNs": "r740-pool",
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "nodeAllocationRequest": "metal3-b12f3e77848a4002bf40"
                },
                "status": {
                  "bmc": {
                    "address": "idrac-virtualmedia+https://127.0.0.1/redfish/v1/Systems/System.Embedded.1",
                    "credentialsName": "bmc-secret-r740xserver1"
                  },
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Provisioned",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "interfaces": [
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:19",
                      "name": "ens1f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1a",
                      "name": "ens3f1np1"
                    },
                    {
                      "label": "bootable-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1b",
                      "name": "eno1np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1c",
                      "name": "ens5f3"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1d",
                      "name": "ens5f1"
                    },
                    {
                      "label": "data-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1e",
                      "name": "eno2np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1f",
                      "name": "ens7f0np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:20",
                      "name": "ens7f1np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:21",
                      "name": "ens1f1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:22",
                      "name": "ens5f2"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:23",
                      "name": "ens5f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:24",
                      "name": "ens3f0np0"
                    }
                  ]
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "NodeAllocationRequest",
                "metadata": {
                  "name": "metal3-b12f3e77848a4002bf40",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "clusterId": "cluster1",
                  "configTransactionId": 1,
                  "hardwarePluginRef": "metal3-hwplugin",
                  "nodeGroup": [
                    {
                      "nodeGroupData": {
                        "hwProfile": "rh-profile-r740-bios-settings",
                        "name": "controller",
                        "resourceSelector": {
                          "resourceselector.clcm.openshift.io/server-colour": "blue",
                          "server-type": "R740"
                        },
                        "role": "master"
                      },
                      "size": 1
                    }
                  ],
                  "site": "ottawa"
                },
                "status": {
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Created",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwMgrPlugin": {
                    "observedGeneration": 1
                  },
                  "observedConfigTransactionId": 0,
                  "properties": {
                    "nodeNames": [
                      "91c70863-8a83-422a-ab7a-a75f744d5210"
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
          description: The O-Cloud Manager operator provides an implementation of
            the O-RAN O2 IMS API on top of OpenShift and ACM.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/oran-o2ims
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AllocatedNode is the schema for an allocated node
            displayName: Allocated Node
            kind: AllocatedNode
            name: allocatednodes.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ClusterTemplate is the Schema for the clustertemplates API
            displayName: Cluster Template
            kind: ClusterTemplate
            name: clustertemplates.clcm.openshift.io
            version: v1alpha1
          - description: HardwarePlugin is the Schema for the hardwareplugins API
            displayName: Hardware Plugin
            kind: HardwarePlugin
            name: hardwareplugins.clcm.openshift.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.clcm.openshift.io
            version: v1alpha1
          - description: HardwareTemplate is the Schema for the hardwaretemplates
              API
            displayName: Hardware Template
            kind: HardwareTemplate
            name: hardwaretemplates.clcm.openshift.io
            version: v1alpha1
          - description: Inventory is the Schema for the Inventory API
            displayName: O-Cloud Manager Inventory
            kind: Inventory
            name: inventories.ocloud.openshift.io
            version: v1alpha1
          - description: NodeAllocationRequest is the schema for an allocation request
              of nodes
            displayName: Node Allocation Request
            kind: NodeAllocationRequest
            name: nodeallocationrequests.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ProvisioningRequest is the Schema for the provisioningrequests
              API
            displayName: Provisioning Request
            kind: ProvisioningRequest
            name: provisioningrequests.clcm.openshift.io
            version: v1alpha1
        description: O-cloud manager operator
        displayName: o-cloud manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ORAN
        - O2IMS
        links:
        - name: Oran O2ims
          url: https://oran-o2ims.domain
        maintainers:
        - email: imihai@redhat.com
          name: IrinaMihai
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/o-cloud-manager-operator-bundle@sha256:d403352abf14d6553da6665e47342927500608f2646cb17eac80414f44320ae0
        - registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
        - registry.redhat.io/rhel9/postgresql-16@sha256:4f46bed6bce211be83c110a3452bd3f151a1e8ab150c58f2a02c56e9cc83db98
        version: 4.20.1
      entries:
      - name: o-cloud-manager.v4.20.1
        version: 4.20.1
      - name: o-cloud-manager.v4.20.0
        version: 4.20.0
      name: "4.20"
    - currentCSV: o-cloud-manager.v4.20.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ClusterTemplate",
                "metadata": {
                  "name": "clustertemplate-sample.v1.0.0",
                  "namespace": "clustertemplate-a-v4-16-3"
                },
                "spec": {
                  "characteristics": {
                    "age": "31"
                  },
                  "description": "nice description",
                  "metadata": {
                    "apple": "23"
                  },
                  "name": "clustertemplate-a",
                  "release": "4.16.3",
                  "templateParameterSchema": {
                    "properties": {
                      "clusterInstanceParameters": {
                        "description": "clusterInstanceParameters defines the available parameters for cluster installation",
                        "properties": {
                          "additionalNTPSources": {
                            "description": "AdditionalNTPSources is a list of NTP sources (hostname or IP) to be added to all cluster hosts. They are added to any NTP sources that were configured through other means.",
                            "items": {
                              "type": "string"
                            },
                            "type": "array"
                          },
                          "apiVIPs": {
                            "description": "APIVIPs are the virtual IPs used to reach the OpenShift cluster's API. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "baseDomain": {
                            "description": "BaseDomain is the base domain to use for the deployed cluster.",
                            "type": "string"
                          },
                          "clusterName": {
                            "description": "ClusterName is the name of the cluster.",
                            "type": "string"
                          },
                          "extraAnnotations": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide annotations to be applied to the rendered templates",
                            "type": "object"
                          },
                          "extraLabels": {
                            "additionalProperties": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "description": "Additional cluster-wide labels to be applied to the rendered templates",
                            "type": "object"
                          },
                          "ingressVIPs": {
                            "description": "IngressVIPs are the virtual IPs used for cluster ingress traffic. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.",
                            "items": {
                              "type": "string"
                            },
                            "maxItems": 2,
                            "type": "array"
                          },
                          "machineNetwork": {
                            "description": "MachineNetwork is the list of IP address pools for machines.",
                            "items": {
                              "description": "MachineNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "nodes": {
                            "items": {
                              "description": "NodeSpec",
                              "properties": {
                                "extraAnnotations": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level annotations to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "extraLabels": {
                                  "additionalProperties": {
                                    "additionalProperties": {
                                      "type": "string"
                                    },
                                    "type": "object"
                                  },
                                  "description": "Additional node-level labels to be applied to the rendered templates",
                                  "type": "object"
                                },
                                "hostName": {
                                  "description": "Hostname is the desired hostname for the host",
                                  "type": "string"
                                },
                                "nodeLabels": {
                                  "additionalProperties": {
                                    "type": "string"
                                  },
                                  "description": "NodeLabels allows the specification of custom roles for your nodes in your managed clusters. These are additional roles are not used by any OpenShift Container Platform components, only by the user. When you add a custom role, it can be associated with a custom machine config pool that references a specific configuration for that role. Adding custom labels or roles during installation makes the deployment process more effective and prevents the need for additional reboots after the installation is complete.",
                                  "type": "object"
                                },
                                "nodeNetwork": {
                                  "description": "NodeNetwork is a set of configurations pertaining to the network settings for the node.",
                                  "properties": {
                                    "config": {
                                      "description": "yaml that can be processed by nmstate, using custom marshaling/unmarshaling that will allow to populate nmstate config as plain yaml.",
                                      "type": "object",
                                      "x-kubernetes-preserve-unknown-fields": true
                                    }
                                  },
                                  "type": "object"
                                }
                              },
                              "required": [
                                "hostName"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "serviceNetwork": {
                            "description": "ServiceNetwork is the list of IP address pools for services.",
                            "items": {
                              "description": "ServiceNetworkEntry is a single IP address block for node IP blocks.",
                              "properties": {
                                "cidr": {
                                  "description": "CIDR is the IP block address pool for machines within the cluster.",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "cidr"
                              ],
                              "type": "object"
                            },
                            "type": "array"
                          },
                          "sshPublicKey": {
                            "description": "SSHPublicKey is the public Secure Shell (SSH) key to provide access to instances. This key will be added to the host to allow ssh access",
                            "type": "string"
                          }
                        },
                        "required": [
                          "clusterName",
                          "nodes"
                        ],
                        "type": "object"
                      },
                      "nodeClusterName": {
                        "type": "string"
                      },
                      "oCloudSiteId": {
                        "type": "string"
                      },
                      "policyTemplateParameters": {
                        "description": "policyTemplateParameters defines the available parameters for cluster configuration",
                        "properties": {
                          "cpu-isolated": {
                            "type": "string"
                          },
                          "cpu-reserved": {
                            "type": "string"
                          },
                          "hugepages-count": {
                            "type": "string"
                          },
                          "hugepages-default": {
                            "type": "string"
                          },
                          "hugepages-size": {
                            "type": "string"
                          },
                          "install-plan-approval": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-1": {
                            "type": "string"
                          },
                          "sriov-network-pfNames-2": {
                            "type": "string"
                          },
                          "sriov-network-vlan-1": {
                            "type": "string"
                          },
                          "sriov-network-vlan-2": {
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    },
                    "required": [
                      "nodeClusterName",
                      "oCloudSiteId",
                      "policyTemplateParameters",
                      "clusterInstanceParameters"
                    ],
                    "type": "object"
                  },
                  "templates": {
                    "clusterInstanceDefaults": "clustertemplate-sample.v1.0.0-clusterinstance-defaults",
                    "hwTemplate": "sample-hwtemplate-v1",
                    "policyTemplateDefaults": "clustertemplate-sample.v1.0.0-policytemplate-defaults",
                    "upgradeDefaults": "upgrade-defaults-v1"
                  },
                  "version": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwarePlugin",
                "metadata": {
                  "name": "metal3-hwplugin",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "apiRoot": "https://metal3-hardwareplugin-server.oran-o2ims.svc.cluster.local:8443",
                  "authClientConfig": {
                    "type": "ServiceAccount"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareProfile",
                "metadata": {
                  "name": "hardwareprofile-sample",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bios": {
                    "attributes": {
                      "SriovGlobalEnable": "Enabled",
                      "SysProfile": "Custom",
                      "WorkloadProfile": "TelcoOptimizedProfile"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "HardwareTemplate",
                "metadata": {
                  "name": "r740-blue-basic",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hardwareProvisioningTimeout": "60m",
                  "nodeGroupData": [
                    {
                      "hwProfile": "rh-profile-r740-bios-settings",
                      "name": "controller",
                      "resourceSelector": {
                        "resourceselector.clcm.openshift.io/server-colour": "blue",
                        "server-type": "R740"
                      },
                      "role": "master"
                    }
                  ]
                }
              },
              {
                "apiVersion": "clcm.openshift.io/v1alpha1",
                "kind": "ProvisioningRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "provisioningrequest-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "provisioningrequest",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "123e4567-e89b-12d3-a456-426614174000"
                },
                "spec": {
                  "description": "Provisioning request for setting up a Single Node OpenShift (SNO) in the test environment.",
                  "name": "TestEnv-SNO-Provisioning-site-sno-du-1",
                  "templateName": "clustertemplate-sample",
                  "templateParameters": {
                    "clusterInstanceParameters": {
                      "additionalNTPSources": [
                        "NTP.server1",
                        "1.1.1.1"
                      ],
                      "apiVIPs": [
                        "192.0.2.2"
                      ],
                      "baseDomain": "example.com",
                      "clusterName": "site-sno-du-1",
                      "extraAnnotations": {
                        "AgentClusterInstall": {
                          "extra-annotation-key": "extra-annotation-value"
                        }
                      },
                      "extraLabels": {
                        "AgentClusterInstall": {
                          "extra-label-key": "extra-label-value"
                        },
                        "ManagedCluster": {
                          "cluster-version": "v4.16",
                          "clustertemplate-a-policy": "v1"
                        }
                      },
                      "ingressVIPs": [
                        "192.0.2.3"
                      ],
                      "machineNetwork": [
                        {
                          "cidr": "192.0.2.0/24"
                        }
                      ],
                      "nodes": [
                        {
                          "bootMode": "UEFI",
                          "extraAnnotations": {
                            "BareMetalHost": {
                              "extra-annotation-key": "extra-annotation-value"
                            }
                          },
                          "extraLabels": {
                            "BareMetalHost": {
                              "extra-label-key": "extra-label-value"
                            }
                          },
                          "hostName": "node1.baseDomain.com",
                          "nodeLabels": {
                            "node-role.kubernetes.io/infra": "",
                            "node-role.kubernetes.io/master": ""
                          },
                          "nodeNetwork": {
                            "config": {
                              "dns-resolver": {
                                "config": {
                                  "server": [
                                    "192.0.2.22"
                                  ]
                                }
                              },
                              "interfaces": [
                                {
                                  "ipv4": {
                                    "address": [
                                      {
                                        "ip": "192.0.2.10",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.11",
                                        "prefix-length": 24
                                      },
                                      {
                                        "ip": "192.0.2.12",
                                        "prefix-length": 24
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:601",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:602",
                                        "prefix-length": 64
                                      },
                                      {
                                        "ip": "2620:52:0:10e7:e42:a1ff:fe8a:603",
                                        "prefix-length": 64
                                      }
                                    ],
                                    "dhcp": false,
                                    "enabled": true
                                  },
                                  "name": "eno1",
                                  "type": "ethernet"
                                },
                                {
                                  "ipv6": {
                                    "address": [
                                      {
                                        "ip": "2620:52:0:1302::100"
                                      }
                                    ],
                                    "enabled": true,
                                    "link-aggregation": {
                                      "mode": "balance-rr",
                                      "options": {
                                        "miimon": "140"
                                      },
                                      "slaves": [
                                        "eth0",
                                        "eth1"
                                      ]
                                    },
                                    "prefix-length": 64
                                  },
                                  "name": "bond99",
                                  "state": "up",
                                  "type": "bond"
                                }
                              ],
                              "routes": {
                                "config": [
                                  {
                                    "destination": "0.0.0.0/0",
                                    "next-hop-address": "192.0.2.254",
                                    "next-hop-interface": "eno1",
                                    "table-id": 254
                                  }
                                ]
                              }
                            }
                          }
                        }
                      ],
                      "serviceNetwork": [
                        {
                          "cidr": "233.252.0.0/24"
                        }
                      ],
                      "sshPublicKey": "ssh-rsa"
                    },
                    "nodeClusterName": "site-sno-du-1",
                    "oCloudSiteId": "local-west-12345",
                    "policyTemplateParameters": {
                      "sriov-network-vlan-1": "114",
                      "sriov-network-vlan-2": "111"
                    }
                  },
                  "templateVersion": "v1.0.0"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "ocloud.openshift.io/v1alpha1",
                "kind": "Inventory",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oran-o2ims",
                    "app.kubernetes.io/instance": "inventory-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "inventory",
                    "app.kubernetes.io/part-of": "oran-o2ims"
                  },
                  "name": "default",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "caBundleName": "o2ims-custom-ca-certs",
                  "cloudID": "b7dcb3ff-583d-42d9-abb5-f484386fc688",
                  "ingress": {
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    }
                  },
                  "smo": {
                    "oauth": {
                      "clientSecretName": "oauth-client-secrets",
                      "groupsClaim": "roles",
                      "scopes": [
                        "openid",
                        "profile",
                        "role:ocloud-manager"
                      ],
                      "tokenEndpoint": "/protocol/openid-connect/token",
                      "url": "https://oauth.example.com:8443/realms/oran",
                      "usernameClaim": "preferred_username"
                    },
                    "registrationEndpoint": "/smo/v1/registration",
                    "tls": {
                      "secretName": "oran-o2ims-tls-certificate"
                    },
                    "url": "https://smo.example.com"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "AllocatedNode",
                "metadata": {
                  "name": "91c70863-8a83-422a-ab7a-a75f744d5210",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "groupName": "controller",
                  "hardwarePluginRef": "metal3-hwplugin",
                  "hwMgrNodeId": "r740xserver1",
                  "hwMgrNodeNs": "r740-pool",
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "nodeAllocationRequest": "metal3-b12f3e77848a4002bf40"
                },
                "status": {
                  "bmc": {
                    "address": "idrac-virtualmedia+https://127.0.0.1/redfish/v1/Systems/System.Embedded.1",
                    "credentialsName": "bmc-secret-r740xserver1"
                  },
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Provisioned",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwProfile": "rh-profile-r740-bios-settings",
                  "interfaces": [
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:19",
                      "name": "ens1f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1a",
                      "name": "ens3f1np1"
                    },
                    {
                      "label": "bootable-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1b",
                      "name": "eno1np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1c",
                      "name": "ens5f3"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1d",
                      "name": "ens5f1"
                    },
                    {
                      "label": "data-interface",
                      "macAddress": "c3:f7:f5:b2:4d:1e",
                      "name": "eno2np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:1f",
                      "name": "ens7f0np0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:20",
                      "name": "ens7f1np1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:21",
                      "name": "ens1f1"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:22",
                      "name": "ens5f2"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:23",
                      "name": "ens5f0"
                    },
                    {
                      "label": "",
                      "macAddress": "c3:f7:f5:b2:4d:24",
                      "name": "ens3f0np0"
                    }
                  ]
                }
              },
              {
                "apiVersion": "plugins.clcm.openshift.io/v1alpha1",
                "kind": "NodeAllocationRequest",
                "metadata": {
                  "name": "metal3-b12f3e77848a4002bf40",
                  "namespace": "oran-o2ims"
                },
                "spec": {
                  "bootInterfaceLabel": "bootable-interface",
                  "clusterId": "cluster1",
                  "configTransactionId": 1,
                  "hardwarePluginRef": "metal3-hwplugin",
                  "nodeGroup": [
                    {
                      "nodeGroupData": {
                        "hwProfile": "rh-profile-r740-bios-settings",
                        "name": "controller",
                        "resourceSelector": {
                          "resourceselector.clcm.openshift.io/server-colour": "blue",
                          "server-type": "R740"
                        },
                        "role": "master"
                      },
                      "size": 1
                    }
                  ],
                  "site": "ottawa"
                },
                "status": {
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-07-16T12:57:12Z",
                      "message": "Created",
                      "reason": "Completed",
                      "status": "True",
                      "type": "Provisioned"
                    }
                  ],
                  "hwMgrPlugin": {
                    "observedGeneration": 1
                  },
                  "observedConfigTransactionId": 0,
                  "properties": {
                    "nodeNames": [
                      "91c70863-8a83-422a-ab7a-a75f744d5210"
                    ]
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
          description: The O-Cloud Manager operator provides an implementation of
            the O-RAN O2 IMS API on top of OpenShift and ACM.
          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: "true"
          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"
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/oran-o2ims
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AllocatedNode is the schema for an allocated node
            displayName: Allocated Node
            kind: AllocatedNode
            name: allocatednodes.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ClusterTemplate is the Schema for the clustertemplates API
            displayName: Cluster Template
            kind: ClusterTemplate
            name: clustertemplates.clcm.openshift.io
            version: v1alpha1
          - description: HardwarePlugin is the Schema for the hardwareplugins API
            displayName: Hardware Plugin
            kind: HardwarePlugin
            name: hardwareplugins.clcm.openshift.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.clcm.openshift.io
            version: v1alpha1
          - description: HardwareTemplate is the Schema for the hardwaretemplates
              API
            displayName: Hardware Template
            kind: HardwareTemplate
            name: hardwaretemplates.clcm.openshift.io
            version: v1alpha1
          - description: Inventory is the Schema for the Inventory API
            displayName: O-Cloud Manager Inventory
            kind: Inventory
            name: inventories.ocloud.openshift.io
            version: v1alpha1
          - description: NodeAllocationRequest is the schema for an allocation request
              of nodes
            displayName: Node Allocation Request
            kind: NodeAllocationRequest
            name: nodeallocationrequests.plugins.clcm.openshift.io
            version: v1alpha1
          - description: ProvisioningRequest is the Schema for the provisioningrequests
              API
            displayName: Provisioning Request
            kind: ProvisioningRequest
            name: provisioningrequests.clcm.openshift.io
            version: v1alpha1
        description: O-cloud manager operator
        displayName: o-cloud manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ORAN
        - O2IMS
        links:
        - name: Oran O2ims
          url: https://oran-o2ims.domain
        maintainers:
        - email: imihai@redhat.com
          name: IrinaMihai
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/o-cloud-manager-rhel9-operator@sha256:8480a6849f1644d5af4d390db398eeddb7d3e73ea2c19a6fc502b598b0a52b61
        - registry.redhat.io/rhel9/postgresql-16@sha256:4f46bed6bce211be83c110a3452bd3f151a1e8ab150c58f2a02c56e9cc83db98
        - registry.redhat.io/openshift4/o-cloud-manager-operator-bundle@sha256:d403352abf14d6553da6665e47342927500608f2646cb17eac80414f44320ae0
        version: 4.20.1
      entries:
      - name: o-cloud-manager.v4.20.1
        version: 4.20.1
      - name: o-cloud-manager.v4.20.0
        version: 4.20.0
      name: stable
    defaultChannel: stable
    packageName: o-cloud-manager
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: ibmcloud-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibmcloud-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"ibmcloud.ibm.com/v1","kind":"Service","metadata":{"annotations":{"ibmcloud.ibm.com/self-healing":"enabled"},"name":"mytranslator"},"spec":{"plan":"lite","serviceClass":"language-translator"}},{"apiVersion":"ibmcloud.ibm.com/v1","kind":"Binding","metadata":{"name":"binding-translator"},"spec":{"parameters":[{"name":"serviceid_crn","value":"crn:v1:bluemix:public:iam-identity::a/ACCOUNT_ID::serviceid:SERVICE_ID"}],"secretName":"translator-secret","serviceName":"mytranslator"}}]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: cloudoperators/ibmcloud-operator:1.1.0
          createdAt: "2022-03-17T04:17:40Z"
          description: The IBM Cloud Operator provides a Kubernetes CRD-Based API
            to manage the lifecycle of IBM public cloud services.
          repository: https://github.com/IBM/cloud-operators
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Binding is an instance of a service binding resource on IBM
              Cloud. A Binding creates a secret with the service instance credentials.
            displayName: Binding
            kind: Binding
            name: bindings.ibmcloud.ibm.com
            version: v1
          - description: Service is an instance of a Service resource on IBM Cloud.
            displayName: Service
            kind: Service
            name: services.ibmcloud.ibm.com
            version: v1
        description: |-
          With the IBM Cloud Operator, you can provision and bind [IBM public cloud services](https://cloud.ibm.com/catalog#services) to your Kubernetes cluster in a Kubernetes-native way. The IBM Cloud Operator is based on the [Kubernetes custom resource definition (CRD) API](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) so that your applications can create, update, and delete IBM Cloud services from within the cluster by calling Kubnernetes APIs, instead of needing to use several IBM Cloud APIs in addition to configuring your app for Kubernetes.


          ## Features

          * **Service provisioning**: Create any service with any plan that is available in the [IBM Cloud catalog](https://cloud.ibm.com/catalog#services).

          * **Bindings management**: Automatically create Kubernetes secrets in your Kubernetes cluster with the credentials to bind to any provisioned service to the cluster.


          ## Upgrading the operator


          To upgrade an OperatorHub installation, use the OpenShift web console to perform the upgrade. If upgrading from the `alpha` channel subscription to `stable`, follow the additional upgrade instructions below.

          ### Upgrading to version v0.3 or v1.0
          **IMPORTANT NOTICE:** v0.1 and v0.2 used a different naming scheme for secrets and configmaps. Before you update the IBM Cloud Operator, create secret and configmap resources with these names and copy the contents of your previous resources to the new resources. Then, the upgraded operator recognizes and continues to update the resources.

          Existing `Service` and `Binding` resources **do not** need modification for the upgrade.

          | Previous names (v0.1 and v0.2)         | **Current names (v0.3 and v1.0)**             | Description                                                                           |
          |:---------------------------------------|:--------------------------------------------|:--------------------------------------------------------------------------------------|
          | secret-ibm-cloud-operator              | **ibmcloud-operator-secret**                | Secret with the API key, scoped to the namespace.                                     |
          | config-ibm-cloud-operator              | **ibmcloud-operator-defaults**              | ConfigMap with the default values for new resources.                                  |
          | ibm-cloud-operator                     | **ibmcloud-operator-config**                | ConfigMap with the management namespace configuration.                                |
          | ${namespace}-secret-ibm-cloud-operator | **${namespace}-ibmcloud-operator-secret**   | Management namespace Secret with the API key for ${namespace}.                        |
          | ${namespace}-config-ibm-cloud-operator | **${namespace}-ibmcloud-operator-defaults** | Management namespace ConfigMap with default values for new resources in ${namespace}. |

          **Tip:** Forgot to update the secret and configmap names before upgrading? The operator will not take action on Service and Binding resources until the new secrets and configmaps have been created. Creating these after the upgrade will also work.


          ### OperatorHub stable channel
          Continuous updates and bug fixes are provided in the latest stable channel. Subscribing to the `stable` channel in OperatorHub means you automatically get the latest updates without breaking backward compatibility.

          ### Changelog

          For a list of recent changes, see the [releases page](https://github.com/IBM/cloud-operators/releases).


          ## Prerequisites

          1.  Have an [IBM Cloud account](https://cloud.ibm.com/registration).
          2.  Have a cluster that runs Kubernetes version 1.11 or later (OpenShift 3.11 or later).
          3.  Install the required command line tools.
              *   [IBM Cloud CLI](https://cloud.ibm.com/docs/cli?topic=cloud-cli-getting-started) (`ibmcloud`)
              *   [Kubernetes CLI](https://kubernetes.io/docs/tasks/tools/install-kubectl/) (`kubectl`)
          4.  Log in to your IBM Cloud account from the CLI.

              ```bash
              ibmcloud login
              ```

          5.  Target the appropriate resource group (`-g`) and default region (`-r`) for provisioning services:

              ```bash
              ibmcloud target -g default -r us-south
              ```

          6.  If you also want to provision Cloud Foundry services, target the appropriate `org` and `space` (`--cf`).

              ```bash
              ibmcloud target --cf
              ```

          7.  Set the Kubernetes context of your CLI to your cluster so that you can run `kubectl` commands. For example, if your cluster runs OpenShift, use the `oc login` command.


          ## Setting up the operator

          You can use an installation script to set up the IBM Cloud Operator.
          By default, the installation script stores an API key in a Kubernetes secret in your cluster that can be accessed by the IBM Cloud Operator.
          Next, the script sets default values that are used to provision IBM Cloud services, like the resource group and region to provision the services in. Later, you can override any default value in the `Service` custom resource. Finally, the script deploys the operator in your cluster.

          To use your own API key, set the `IBMCLOUD_API_KEY` environment variable to the key before running the installation script:

              export IBMCLOUD_API_KEY="CUSTOM_API_KEY"

          If installed with Operator Hub, the operator will run in the `openshift-operators` namespace. Otherwise, it will run in the `ibmcloud-operator-system` namespace.

          Prefer to create the secrets and defaults yourself? See the [IBM Cloud Operator installation guide](https://github.com/IBM/cloud-operators/blob/master/docs/install.md).

          ### Using a service ID

          By default, the installation script creates an IBM Cloud API key that impersonates your user credentials, to use to set up the IBM Cloud Operator. However, you might want to create a service ID in IBM Cloud Identity and Access Managment (IAM). By using a service ID, you can control access for the IBM Cloud Operator without having the permissions tied to a particular user, such as if that user leaves the company. For more information, see the [IBM Cloud docs](https://cloud.ibm.com/docs/account?topic=account-serviceids).

          1.  Create a service ID in IBM Cloud IAM. If possible, do not use spaces in the names for your IAM credentials. When you use the operator binding feature, any spaces are replaced with underscores.

              ```bash
              ibmcloud iam service-id-create serviceid-ico -d service-ID-for-ibm-cloud-operator
              ```

          2.  Assign the service ID access to the required permissions to work with the IBM Cloud services that you want the operator to manage. The required permissions vary with each IBM Cloud service. You can also scope an access policy to different regions or resource groups. For example, the following command grants the service ID the **Administrator** platform role in the default resource group in the US South (Dallas) region. For more information, see the [IBM Cloud docs](https://cloud.ibm.com/docs/account?topic=account-userroles).

              ```bash
              ibmcloud iam service-policy-create serviceid-ico --roles Administrator --resource-group-name default --region us-south
              ```

          3.  Create an API key for the service ID.

              ```bash
              ibmcloud iam service-api-key-create apikey-ico serviceid-ico -d api-key-for-ibm-cloud-operator
              ```

          4.  Set the API key of the service ID as your CLI environment variable. Now, when you run the installation script, the script uses the service ID's API key. The following command is an example for macOS.

              ```bash
              export IBMCLOUD_API_KEY=<apikey-ico-value>
              ```

          5.  Confirm that the API key environment variable is set in your CLI.

              ```bash
              echo $IBMCLOUD_API_KEY
              ```

          6.  Follow the [prerequisite steps](https://github.com/IBM/cloud-operators/blob/master/README.md#prerequisites) to log in to the IBM Cloud account that owns the service ID.


          ### Installing the operator for OpenShift clusters

          Before you begin, complete the [prerequisite steps](https://github.com/IBM/cloud-operators/blob/master/README.md#prerequisites) to log in to IBM Cloud and your cluster, and optionally set up a [service ID API key](https://github.com/IBM/cloud-operators/blob/master/README.md#using-a-service-id).

          To configure the latest release for OpenShift before installing via the OperatorHub, run the following script:

          *   **Latest release**:

              ```bash
              curl -sL https://raw.githubusercontent.com/IBM/cloud-operators/master/hack/configure-operator.sh | bash
              ```

          *   **Specific release**: Replace `-v 0.0.0` with the specific version that you want to install.

              ```bash
              curl -sL https://raw.githubusercontent.com/IBM/cloud-operators/master/hack/configure-operator.sh | bash -s -- -v 0.0.0 store-creds
              ```


          ## Using the IBM Cloud Operator

          To use the IBM Cloud Operator, create a service instance and then bind the service to your cluster. For more information, see the [sample configuration files](https://github.com/IBM/cloud-operators/blob/master/config/samples), [user guide](https://github.com/IBM/cloud-operators/blob/master/docs/user-guide.md), and [reference documentation](https://github.com/IBM/cloud-operators/blob/master/README.md#reference).

          #### Step 1: Creating a service instance

          1.  To create an instance of an IBM public cloud service, first create a `Service` custom resource file. For more options, see the [Service properties](https://github.com/IBM/cloud-operators/blob/master/README.md#service-properties) reference doc.
              *   `<SERVICE_CLASS>` is the IBM Cloud service that you want to create. To list IBM Cloud services, run `ibmcloud catalog service-marketplace` and use the **Name** value from the output.
              *   `<PLAN>` is the plan for the IBM Cloud service that you want to create, such as `free` or `standard`. To list available plans, run `ibmcloud catalog service <SERVICE_CLASS> | grep plan`.

              ```yaml
              apiVersion: ibmcloud.ibm.com/v1
              kind: Service
              metadata:
                  name: myservice
              spec:
                  plan: <PLAN>
                  serviceClass: <SERVICE_CLASS>
              ```

          2.  Create the service instance in your cluster.

              ```bash
              kubectl apply -f filepath/myservice.yaml
              ```

          3.  Check that your service status is **Online** in your cluster.

              ```bash
              kubectl get services.ibmcloud
              NAME           STATUS   AGE
              myservice      Online   12s
              ```

          4.  Verify that your service instance is created in IBM Cloud.

              ```bash
              ibmcloud resource service-instances | grep myservice
              ```

          #### Step 2: Binding the service instance

          1.  To bind your service to the cluster so that your apps can use the service, create a `Binding` custom resource, where the `serviceName` field is the name of the `Service` custom resource that you previously created. For more options, see [Binding properties](https://github.com/IBM/cloud-operators/blob/master/README.md#binding-properties).

              ```yaml
              apiVersion: ibmcloud.ibm.com/v1
              kind: Binding
              metadata:
                  name: mybinding
              spec:
                  serviceName: myservice
              ```

          2.  Create the binding in your cluster.

              ```bash
              kubectl apply -f filepath/mybinding.yaml
              ```

          3.  Check that your service status is **Online**.

              ```bash
              kubectl get bindings.ibmcloud
              NAME         STATUS   AGE
              mybinding    Online   25s
              ```

          4.  Check that a secret of the same name as your binding is created. The secret contains the service credentials that apps in your cluster can use to access the service.

              ```bash
              kubectl get secrets
              NAME         TYPE      DATA   AGE
              mybinding    Opaque    6      102s
              ```
        displayName: IBM Cloud Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - IBM
        - Cloud
        links:
        - name: Source on GitHub
          url: https://github.com/ibm/cloud-operators
        maintainers:
        - email: johnstarich@johnstarich.com
          name: John Starich
        - email: mvaziri@us.ibm.com
          name: vazirim
        - email: greg.lanthier@ca.ibm.com
          name: Greg Lanthier
        - email: halacs@users.noreply.github.com
          name: Halacs
        - email: artberger@users.noreply.github.com
          name: Art
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: IBM
        relatedImages:
        - cloudoperators/ibmcloud-operator:1.1.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/openshift-community-operators/ibmcloud-operator@sha256:b22e89daf6b7f0fd55ba6db7eb7d7a48cbaef2844dfe20e558d7b821482e9480
        version: 1.1.0
      entries:
      - name: ibmcloud-operator.v1.1.0
        version: 1.1.0
      name: stable
    defaultChannel: stable
    packageName: ibmcloud-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: dns-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dns-operator.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSRecord",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "dns-operator",
                    "app.kubernetes.io/instance": "dnsrecord-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dnsrecord",
                    "app.kubernetes.io/part-of": "dns-operator"
                  },
                  "name": "dnsrecord-sample"
                },
                "spec": {
                  "endpoints": [
                    {
                      "dnsName": "dnsrecord-simple.example.com",
                      "recordTTL": 60,
                      "recordType": "A",
                      "targets": [
                        "52.215.108.61",
                        "52.30.101.221"
                      ]
                    }
                  ],
                  "providerRef": {
                    "name": "dns-provider-creds"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/dns-operator:v0.6.0
          createdAt: "2024-09-13T09:55:39Z"
          description: A Kubernetes Operator to manage the lifecycle of DNS resources
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kuadrant/dns-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DNSRecord is the Schema for the dnsrecords API
            displayName: DNSRecord
            kind: DNSRecord
            name: dnsrecords.kuadrant.io
            version: v1alpha1
        description: A Kubernetes Operator to manage the lifecycle of DNS resources
        displayName: DNS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dns
        - kuadrant
        links:
        - name: DNS Operator
          url: https://github.com/Kuadrant/dns-operator
        maintainers:
        - email: mnairn@redhat.com
          name: Michael Nairn
        - email: pbrookes@redhat.com
          name: Phil Brookes
        - email: cbrookes@redhat.com
          name: Craig Brookes
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/dns-operator@sha256:d5eadbf006aade69ac18156c891614da899d0779ba9e8fbaf755a256c46f055c
        - quay.io/kuadrant/dns-operator:v0.6.0
        version: 0.6.0
      entries:
      - name: dns-operator.v0.6.0
        version: 0.6.0
      name: stable
    defaultChannel: stable
    packageName: dns-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: sosivio
      provider-url: https://www.sosiv.io
    name: sosivio
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sosivio-operator.v1.5.1-97
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sosivio.sosiv.io/v1alpha1",
                "kind": "Sosivio",
                "metadata": {
                  "name": "sosivio"
                },
                "spec": {
                  "platform": "ocp4",
                  "useSha": false
                }
              },
              {
                "apiVersion": "sosivio.sosiv.io/v1alpha1",
                "kind": "Sosivio",
                "metadata": {
                  "name": "sosivio"
                },
                "spec": {
                  "platform": "ocp4",
                  "useSha": false
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Monitoring,Integration & Delivery,Logging & Tracing,Developer
            Tools
          com.redhat.openshift.versions: v4.1-v4.1
          containerImage: quay.io/sosivio/sosivio-operator:v1.5.1-97
          createdAt: "2021-10-28 01:01:01"
          description: Sosivio | Predictive Troubleshooting for Kubernetes
          operatorhub.io/ui-metadata-max-k8s-version: "1.25"
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Sosivio/operator
          support: Sosivio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Sosivio is the Schema for the sosivios API
            displayName: Sosivio
            kind: Sosivio
            name: sosivios.sosivio.sosiv.io
            version: v1alpha1
        description: "# Sosivio Operator\nThe Sosivio Operator for RedHat’s Openshift
          Container Platform allows users to quickly and easily deploy Sosivio’s Kubernetes
          Predictive Troubleshooting Platform on your cluster.\n\n# Sosivio Overview\n\nSosivio
          is the first and only non-intrusive and predictive autonomous cloud-native
          platform built specifically for Kubernetes from the ground up. Sosivio provides
          predictive troubleshooting tools, root cause determination and instant remediation
          for any failures in Kubernetes environments.\n\nPredict and Prevent!\n\nThe
          Operator will deploy and manage Sosivio on Kubernetes and OpenShift. Included
          are the following features;\n-   **Root Cause Analysis and Remediation**
          - predictive troubleshooting to prevent failures before they occur. Instantly
          understand where the root cause is and how to fix it.\n-   **Application
          Profiling** - analyze container resource consumption and recommendations
          for requests and limits.\n-   **Real-time Metrics** - in-depth, granular,
          and accurate real-time data from the process level inside containers (and
          pods) with failure correlation.\n-   **Cluster Health Checks** - proactive
          health checks for cluster infrastructure and applications running on the
          cluster.\n-   **Multi-Cluster View** - management, monitoring, and maintenance
          capabilities for all clusters from one location. \n-   **Kubernetes Components
          Alerting** - notifications sent through Slack, email and other 3rd party
          platforms.\n\n# Installation\nSosivio is completely **non-intrusive** and
          **does not require any persistent storage**. There is **no data offloading**
          outside of your Kubernetes cluster. Applying our Data Swirling methodology
          enables the product to perform at a **remarkably low resource footprint**
          and requires **no persistent volume configurations**.\n\n\nSosivio is installed
          under one namespace (labeled: \"sosivio\") which creates all the required
          components for the product.\n\nAll users will start with 4 weeks of Sosivio
          Premium after which Sosivio will automatically convert to the Community
          Version (free forever).\n\n# Help\nMore information about Sosivio and our
          product usage instructions can be found in our documentation [here](https://docs.sosiv.io/)
          \ \n"
        displayName: Sosivio | Predictive Troubleshooting for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sosivio
        - kubernetes
        - observanility
        - monitoring
        - root cause
        links:
        - name: Sosivio
          url: https://www.sosiv.io
        - name: Documentation
          url: https://docs.sosiv.io
        maintainers:
        - email: info@sosiv.io
          name: Sosivio
        maturity: stable
        minKubeVersion: 1.11.0
        provider:
          name: sosivio
          url: https://www.sosiv.io
        relatedImages:
        - quay.io/sosivio/sosivio-dashboard@sha256:fdfca5bb2123d1008cec2b656cde73c7e9364f84c5ff4f4a6fee5751b1bfb2f8
        - quay.io/sosivio/classifier@sha256:dd8bf145524db23ff333efa1bcdff258dab116d3534f95f73775d8dd339e6963
        - quay.io/sosivio/kube-rbac-proxy:v0.8.0
        - quay.io/sosivio/sosivio-operator@sha256:11bc627773bb5e08b629e0b013e7f600fcb4aaefbd97f2de337d339475616763
        - quay.io/sosivio/sosivio-node-pinger@sha256:937de52ad7b76e6cff4ad5197de9705988d61f285ebadac5ebadb5856f59ee58
        - quay.io/openshift-community-operators/sosivio@sha256:110d7f4fb993d65ff497eca57c42206faab07dc5f5b1f43b1b682387e7cd3a10
        - quay.io/sosivio/correlation-entities@sha256:c00af09b2589bad4740fd44d7a81c69b2e29138c360939b2a45f65edd44b6901
        - quay.io/sosivio/kube-rbac-proxy@sha256:34e8724e0f47e31eb2ec3279ac398b657db5f60f167426ee73138e2e84af6486
        - quay.io/sosivio/sosivio-node-collector@sha256:61ed8dd52de5edc09d16a31b18f2f65ad9344c0b6c9cfab323c3eb3d7e7ed060
        - quay.io/sosivio/crud-manager@sha256:38289a28829fa737917d76dd4810ba6140e123061ead0a4b79fa79b2e246a293
        - quay.io/sosivio/analyzer@sha256:3825608fe7c43ef059108e76665acc99fe72bea77d4d9e3852f6ad45e74379b1
        - quay.io/sosivio/notifier@sha256:35f5f3e8e5ccad914fcfe34fb4b4a1b044ee87f5a6141284cd5273f0b2b3bf22
        - quay.io/sosivio/contract-testing@sha256:cad6fac6ed3fdf2597ceb09ba5dbb7d81f70cf45f483a7064e3968215dd982e3
        - quay.io/sosivio/network-aggregator@sha256:e59d937f4d9c52acad0adadab39c6849d20b4ee72a83e239a33ea137f08323f4
        - quay.io/sosivio/nsq@sha256:781aac23ef0a1ed0af2b8e93d625ae49bd11dbdd98787d3c79dde8d128f3810d
        - quay.io/sosivio/communicator@sha256:fffec9a6c66594fde5f05e2dfb84361544ca9d53a345188c197a0ea6f53bc4b9
        - quay.io/sosivio/sosiviodb@sha256:a3c6c3975bc2b0316135ee5c547f1eb215f3a1f9c8b0a9c8eceff23415f93597
        - quay.io/sosivio/sequence-recognition@sha256:7335cf8f3e40bc46e8ca0de525d99f0655833b7c52d36dc273aa7b096eb70fa2
        - quay.io/sosivio/sosivio-operator:v1.5.1-97
        - quay.io/sosivio/actuator@sha256:a9abe9730800ca2b0a1bbd7a361b2ab3a818cbf127798314e5477fb1cb16ba4c
        - quay.io/sosivio/authentication@sha256:0ea6025f333576792f5b1fc4d96d9ab1a404749f185830410e71248683004da2
        - quay.io/sosivio/sosivio-node-netpacket@sha256:84dd159b1dfdb52dee3eb1c4c93f323bae49ce517ff44663b69978e14bdd8390
        - quay.io/sosivio/discovery-engine@sha256:b87b3f7c9ed3aed80d0a77788fd8925789450d9dc05d25017e89dff611cd82da
        version: 1.5.1
      entries:
      - name: sosivio-operator.v1.5.1-97
        version: 1.5.1
      - name: sosivio-operator.v1.5.0-95
        version: 1.5.0
      - name: sosivio-operator.v1.4.4-85
        version: 1.4.4
      - name: sosivio-operator.v1.4.3-83
        version: 1.4.3
      - name: sosivio-operator.v1.4.2-82
        version: 1.4.2
      - name: sosivio-operator.v1.4.1-81
        version: 1.4.1-81
      - name: sosivio-operator.v1.4.1.1-80
        version: 1.4.1-80
      - name: sosivio-operator.v1.4.1-78
        version: 1.4.1-79
      - name: sosivio-operator.v1.3.1-76
        version: 1.3.1-76
      - name: sosivio-operator.v1.3.0-75
        version: 1.3.0-75
      - name: sosivio-operator.v1.2.1-1
        version: 1.2.1-1
      - name: sosivio-operator.v1.2.0-1
        version: 1.2.0-1
      name: stable
    defaultChannel: stable
    packageName: sosivio
    provider:
      name: sosivio
      url: https://www.sosiv.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EPAM Delivery Platform
      provider-url: https://epam.github.io/edp-install/
    name: nexus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nexus-operator.v3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "Nexus",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexus-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexus",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexus-sample"
                },
                "spec": {
                  "secret": "nexus-secret",
                  "url": "https://nexus-example.com"
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "NexusRepository",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexusrepository-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexusrepository",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexusrepository-sample"
                },
                "spec": {
                  "go": {
                    "proxy": {
                      "cleanup": {
                        "policyNames": [
                          "cleanup-policy"
                        ]
                      },
                      "httpClient": {
                        "autoBlock": true,
                        "blocked": true,
                        "connection": {
                          "retries": 1440,
                          "timeout": 1440,
                          "userAgentSuffix": "user-agent-suffix"
                        }
                      },
                      "name": "go-proxy",
                      "negativeCache": {
                        "enabled": true,
                        "timeToLive": 1440
                      },
                      "online": true,
                      "proxy": {
                        "contentMaxAge": 1440,
                        "metadataMaxAge": 1440,
                        "remoteUrl": "https://test.com"
                      },
                      "routingRule": "routing-rule",
                      "storage": {
                        "blobStoreName": "blob-store-name",
                        "strictContentTypeValidation": true
                      }
                    }
                  },
                  "nexusRef": {
                    "name": "nexus-sample"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "NexusRole",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexusrole-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexusrole",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexusrole-sample"
                },
                "spec": {
                  "description": "test-role",
                  "id": "test-role",
                  "name": "test-role",
                  "nexusRef": {
                    "kind": "Nexus",
                    "name": "nexus-sample"
                  },
                  "privileges": [
                    "nx-blobstores-all"
                  ]
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "NexusUser",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "nexus-operator",
                    "app.kubernetes.io/instance": "nexususer-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nexususer",
                    "app.kubernetes.io/part-of": "nexus-operator"
                  },
                  "name": "nexususer-sample"
                },
                "spec": {
                  "email": "test@gmail.com",
                  "firstName": "John1",
                  "id": "test-user",
                  "lastName": "Doe",
                  "nexusRef": {
                    "kind": "Nexus",
                    "name": "nexus-sample"
                  },
                  "roles": [
                    "nx-admin"
                  ],
                  "secret": "$user-secret:password"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Developer Tools
          containerImage: docker.io/epamedp/nexus-operator:3.0.0
          createdAt: "2023-12-11T12:54:50Z"
          description: An Operator for managing Nexus entities.
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/epam/edp-nexus-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Nexus is the Schema for the nexus API.
            displayName: Nexus
            kind: Nexus
            name: nexuses.edp.epam.com
            version: v1alpha1
          - description: NexusRepository is the Schema for the nexusrepositories API.
            displayName: Nexus Repository
            kind: NexusRepository
            name: nexusrepositories.edp.epam.com
            version: v1alpha1
          - description: NexusRole is the Schema for the nexusroles API.
            displayName: Nexus Role
            kind: NexusRole
            name: nexusroles.edp.epam.com
            version: v1alpha1
          - description: NexusUser is the Schema for the nexususers API.
            displayName: Nexus User
            kind: NexusUser
            name: nexususers.edp.epam.com
            version: v1alpha1
        description: |
          Nexus Operator is an operator that is responsible for establishing
          a connection to provided NexusRepository Server, reconciling Nexus entities (groups,
          users, repositories, etc) according to the created CRs.

          ## Quick Start

          1. Create a User in the Nexus Repository.

          2. Insert newly created user credentials into Kubernetes secret:

              ```yaml
              apiVersion: v1
              kind: Secret
              metadata:
                name:  nexus-secret
              type: Opaque
              data:
                username: dXNlcg==   # base64-encoded value of "user"
                password: cGFzcw==   # base64-encoded value of "pass"
              ```

          3. Create Custom Resource `kind: Nexus` with Nexus instance URL and secret created on the previous step:

              ```yaml
              apiVersion: v1.edp.epam.com/v1alpha1
              kind: Nexus
              metadata:
                name: nexus-sample
              spec:
                secret: nexus-secret                # Secret name
                url: https://nexus.example.com      # Nexus URL
              ```

              Wait for the `.status` field with  `status.connected: true`
        displayName: EDP Nexus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - edp
        - nexus
        - operator
        - artifact
        - storage
        links:
        - name: Nexus Operator
          url: https://github.com/epam/edp-nexus-operator
        maintainers:
        - email: SupportEPMD-EDP@epam.com
          name: epmd-edp
        maturity: alpha
        provider:
          name: EPAM Delivery Platform
          url: https://epam.github.io/edp-install/
        relatedImages:
        - quay.io/openshift-community-operators/nexus-operator@sha256:277b94985c0dc982abb76b5dd8c93b37305ccca32c000d67552d540d4918cbba
        - docker.io/epamedp/nexus-operator:3.0.0
        version: 3.0.0
      entries:
      - name: nexus-operator.v3.0.0
        version: 3.0.0
      name: alpha
    defaultChannel: alpha
    packageName: nexus-operator
    provider:
      name: EPAM Delivery Platform
      url: https://epam.github.io/edp-install/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://access.redhat.com/products/red-hat-integration
    name: red-hat-camel-k
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
          createdAt: "2024-10-07T13:45:51Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          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: "true"
          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.skipRange: '>=1.8.0 <1.10.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:72ed79d0b4bf82ab58d22a174190f69401da83d80a09785648148760e1803d9d
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
        version: 1.10.8+0.1733993735.p
      entries:
      - name: red-hat-camel-k-operator.v1.10.8-0.1731578390.p
        version: 1.10.8+0.1731578390.p
      - name: red-hat-camel-k-operator.v1.10.8
        version: 1.10.8
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993120.p
        version: 1.10.8+0.1733993120.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731485816.p
        version: 1.10.8+0.1731485816.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124835.p
        version: 1.10.8+0.1733124835.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124325.p
        version: 1.10.8+0.1733124325.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731894055.p
        version: 1.10.8+0.1731894055.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731893478.p
        version: 1.10.8+0.1731893478.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
        version: 1.10.8+0.1733993735.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
        version: 1.10.8+0.1733135130.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1723633518.p
        version: 1.10.7+0.1723633518.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724202359.p
        version: 1.10.7+0.1724202359.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724145144.p
        version: 1.10.7+0.1724145144.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724144664.p
        version: 1.10.7+0.1724144664.p
      - name: red-hat-camel-k-operator.v1.10.7
        version: 1.10.7
      - name: red-hat-camel-k-operator.v1.10.7-0.1723632902.p
        version: 1.10.7+0.1723632902.p
      - name: red-hat-camel-k-operator.v1.10.6
        version: 1.10.6
      - name: red-hat-camel-k-operator.v1.10.5
        version: 1.10.5
      - name: red-hat-camel-k-operator.v1.10.5-0.1705608149.p
        version: 1.10.5+0.1705608149.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1699536334.p
        version: 1.10.4+0.1699536334.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1700072719.p
        version: 1.10.4+0.1700072719.p
      - name: red-hat-camel-k-operator.v1.10.4
        version: 1.10.4
      - name: red-hat-camel-k-operator.v1.10.3
        version: 1.10.3
      - name: red-hat-camel-k-operator.v1.10.2
        version: 1.10.2
      - name: red-hat-camel-k-operator.v1.10.1
        version: 1.10.1
      - name: red-hat-camel-k-operator.v1.10.1-0.1695295065.p
        version: 1.10.1+0.1695295065.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693789561.p
        version: 1.10.1+0.1693789561.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693378374.p
        version: 1.10.1+0.1693378374.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1682325781.p
        version: 1.10.0+0.1682325781.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1687356936.p
        version: 1.10.0+0.1687356936.p
      - name: red-hat-camel-k-operator.v1.10.0
        version: 1.10.0
      - name: red-hat-camel-k-operator.v1.10.0-0.1679561624.p
        version: 1.10.0+0.1679561624.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1678893647.p
        version: 1.10.0+0.1678893647.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: 1.10.x
    - currentCSV: red-hat-camel-k-operator.v1.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1beta1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:9e4fb5369e0479d4a68f60725e7d12abdc66c552babe59f1358f6e6b0f26357d
          createdAt: "2020-10-06T02:45:00Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:c60664e5da8eb23bbd918b1c13b83565b1f33a1aa8961b425232fa1ef4d1a6f1
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:9e4fb5369e0479d4a68f60725e7d12abdc66c552babe59f1358f6e6b0f26357d
        version: 1.4.2
      entries:
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: 1.4.x
    - currentCSV: red-hat-camel-k-operator.v1.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
          createdAt: "2022-08-15T20:17:25Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          olm.skipRange: '>=1.6.7 <=1.6.8'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:bcc0ef48ec42c88d212173167615feb2cf276c133b26b866ae3453af7ab1ee80
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
        version: 1.6.10
      entries:
      - name: red-hat-camel-k-operator.v1.6.10
        version: 1.6.10
      - name: red-hat-camel-k-operator.v1.6.9
        version: 1.6.9
      name: 1.6.x
    - currentCSV: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:e916f9040d3f4feb26cc1534d3ab2722890b34c7fe146cdce8b6085b47206e22
          createdAt: "2022-11-28T10:43:18Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          olm.skipRange: '>=1.6.7 <1.8.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:82cafd48db8107dd141064ce7530468b11804c8c54235a317eb450a7606bac3e
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:e916f9040d3f4feb26cc1534d3ab2722890b34c7fe146cdce8b6085b47206e22
        version: 1.8.2+0.1675913507.p
      entries:
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: 1.8.x
    - currentCSV: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
          createdAt: "2024-10-07T13:45:51Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          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: "true"
          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.skipRange: '>=1.8.0 <1.10.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:72ed79d0b4bf82ab58d22a174190f69401da83d80a09785648148760e1803d9d
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
        version: 1.10.8+0.1733993735.p
      entries:
      - name: red-hat-camel-k-operator.v1.10.8-0.1731578390.p
        version: 1.10.8+0.1731578390.p
      - name: red-hat-camel-k-operator.v1.10.8
        version: 1.10.8
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993120.p
        version: 1.10.8+0.1733993120.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731485816.p
        version: 1.10.8+0.1731485816.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124835.p
        version: 1.10.8+0.1733124835.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124325.p
        version: 1.10.8+0.1733124325.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731894055.p
        version: 1.10.8+0.1731894055.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731893478.p
        version: 1.10.8+0.1731893478.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
        version: 1.10.8+0.1733993735.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
        version: 1.10.8+0.1733135130.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1723633518.p
        version: 1.10.7+0.1723633518.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724202359.p
        version: 1.10.7+0.1724202359.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724145144.p
        version: 1.10.7+0.1724145144.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724144664.p
        version: 1.10.7+0.1724144664.p
      - name: red-hat-camel-k-operator.v1.10.7
        version: 1.10.7
      - name: red-hat-camel-k-operator.v1.10.7-0.1723632902.p
        version: 1.10.7+0.1723632902.p
      - name: red-hat-camel-k-operator.v1.10.6
        version: 1.10.6
      - name: red-hat-camel-k-operator.v1.10.5
        version: 1.10.5
      - name: red-hat-camel-k-operator.v1.10.5-0.1705608149.p
        version: 1.10.5+0.1705608149.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1699536334.p
        version: 1.10.4+0.1699536334.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1700072719.p
        version: 1.10.4+0.1700072719.p
      - name: red-hat-camel-k-operator.v1.10.4
        version: 1.10.4
      - name: red-hat-camel-k-operator.v1.10.3
        version: 1.10.3
      - name: red-hat-camel-k-operator.v1.10.2
        version: 1.10.2
      - name: red-hat-camel-k-operator.v1.10.1
        version: 1.10.1
      - name: red-hat-camel-k-operator.v1.10.1-0.1695295065.p
        version: 1.10.1+0.1695295065.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693789561.p
        version: 1.10.1+0.1693789561.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693378374.p
        version: 1.10.1+0.1693378374.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1682325781.p
        version: 1.10.0+0.1682325781.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1687356936.p
        version: 1.10.0+0.1687356936.p
      - name: red-hat-camel-k-operator.v1.10.0
        version: 1.10.0
      - name: red-hat-camel-k-operator.v1.10.0-0.1679561624.p
        version: 1.10.0+0.1679561624.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1678893647.p
        version: 1.10.0+0.1678893647.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: candidate
    - currentCSV: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
          createdAt: "2024-10-07T13:45:51Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          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: "true"
          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.skipRange: '>=1.8.0 <1.10.0'
          olm.substitutesFor: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat Application Foundations", "Red Hat Camel K"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:72ed79d0b4bf82ab58d22a174190f69401da83d80a09785648148760e1803d9d
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:431db7af80d2d6cbaef1d1cb8ebf96d58cd71cba10bc24aeba97b9410da53a8e
        version: 1.10.8+0.1733993735.p
      entries:
      - name: red-hat-camel-k-operator.v1.10.8-0.1731578390.p
        version: 1.10.8+0.1731578390.p
      - name: red-hat-camel-k-operator.v1.10.8
        version: 1.10.8
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993120.p
        version: 1.10.8+0.1733993120.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731485816.p
        version: 1.10.8+0.1731485816.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124835.p
        version: 1.10.8+0.1733124835.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733124325.p
        version: 1.10.8+0.1733124325.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731894055.p
        version: 1.10.8+0.1731894055.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1731893478.p
        version: 1.10.8+0.1731893478.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733993735.p
        version: 1.10.8+0.1733993735.p
      - name: red-hat-camel-k-operator.v1.10.8-0.1733135130.p
        version: 1.10.8+0.1733135130.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1723633518.p
        version: 1.10.7+0.1723633518.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724202359.p
        version: 1.10.7+0.1724202359.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724145144.p
        version: 1.10.7+0.1724145144.p
      - name: red-hat-camel-k-operator.v1.10.7-0.1724144664.p
        version: 1.10.7+0.1724144664.p
      - name: red-hat-camel-k-operator.v1.10.7
        version: 1.10.7
      - name: red-hat-camel-k-operator.v1.10.7-0.1723632902.p
        version: 1.10.7+0.1723632902.p
      - name: red-hat-camel-k-operator.v1.10.6
        version: 1.10.6
      - name: red-hat-camel-k-operator.v1.10.5
        version: 1.10.5
      - name: red-hat-camel-k-operator.v1.10.5-0.1705608149.p
        version: 1.10.5+0.1705608149.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1699536334.p
        version: 1.10.4+0.1699536334.p
      - name: red-hat-camel-k-operator.v1.10.4-0.1700072719.p
        version: 1.10.4+0.1700072719.p
      - name: red-hat-camel-k-operator.v1.10.4
        version: 1.10.4
      - name: red-hat-camel-k-operator.v1.10.3
        version: 1.10.3
      - name: red-hat-camel-k-operator.v1.10.2
        version: 1.10.2
      - name: red-hat-camel-k-operator.v1.10.1
        version: 1.10.1
      - name: red-hat-camel-k-operator.v1.10.1-0.1695295065.p
        version: 1.10.1+0.1695295065.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693789561.p
        version: 1.10.1+0.1693789561.p
      - name: red-hat-camel-k-operator.v1.10.1-0.1693378374.p
        version: 1.10.1+0.1693378374.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1682325781.p
        version: 1.10.0+0.1682325781.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1687356936.p
        version: 1.10.0+0.1687356936.p
      - name: red-hat-camel-k-operator.v1.10.0
        version: 1.10.0
      - name: red-hat-camel-k-operator.v1.10.0-0.1679561624.p
        version: 1.10.0+0.1679561624.p
      - name: red-hat-camel-k-operator.v1.10.0-0.1678893647.p
        version: 1.10.0+0.1678893647.p
      - name: red-hat-camel-k-operator.v1.8.2
        version: 1.8.2
      - name: red-hat-camel-k-operator.v1.8.2-0.1673533600.p
        version: 1.8.2+0.1673533600.p
      - name: red-hat-camel-k-operator.v1.8.2-0.1675913507.p
        version: 1.8.2+0.1675913507.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1669858726.p
        version: 1.8.1+0.1669858726.p
      - name: red-hat-camel-k-operator.v1.8.1-0.1667495781.p
        version: 1.8.1+0.1667495781.p
      - name: red-hat-camel-k-operator.v1.8.0
        version: 1.8.0
      - name: red-hat-camel-k-operator.v1.6.7
        version: 1.6.7
      - name: red-hat-camel-k-operator.v1.6.6
        version: 1.6.6
      - name: red-hat-camel-k-operator.v1.6.5
        version: 1.6.5
      - name: red-hat-camel-k-operator.v1.6.4-0.1648537022.p
        version: 1.6.4+0.1648537022.p
      - name: red-hat-camel-k-operator.v1.6.4
        version: 1.6.4
      - name: red-hat-camel-k-operator.v1.6.3
        version: 1.6.3
      - name: red-hat-camel-k-operator.v1.6.2
        version: 1.6.2
      - name: red-hat-camel-k-operator.v1.6.1
        version: 1.6.1
      - name: red-hat-camel-k-operator.v1.6.0
        version: 1.6.0
      - name: red-hat-camel-k-operator.v1.4.2
        version: 1.4.2
      - name: red-hat-camel-k-operator.v1.4.1
        version: 1.4.1
      - name: red-hat-camel-k-operator.v1.4.0
        version: 1.4.0
      name: latest
    - currentCSV: red-hat-camel-k-operator.v1.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
          createdAt: "2022-08-15T20:17:25Z"
          description: Red Hat Integration - Camel K is a lightweight integration
            platform, born on Kubernetes, with serverless superpowers.
          olm.skipRange: '>=1.6.7 <=1.6.8'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Red Hat Integration - Camel K
          ==============

          **Red Hat Integration - Camel K** is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Red Hat Integration - Camel K
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Apache Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-integration
        relatedImages:
        - registry.redhat.io/integration/camel-k-rhel8-operator-bundle@sha256:bcc0ef48ec42c88d212173167615feb2cf276c133b26b866ae3453af7ab1ee80
        - registry.redhat.io/integration/camel-k-rhel8-operator@sha256:244e22723124ac6e13a417a94396383f872f15d6f772c80bbd3693a148657526
        version: 1.6.10
      entries:
      - name: red-hat-camel-k-operator.v1.6.10
        version: 1.6.10
      - name: red-hat-camel-k-operator.v1.6.9
        version: 1.6.9
      name: stable
    defaultChannel: 1.10.x
    packageName: red-hat-camel-k
    provider:
      name: Red Hat
      url: https://access.redhat.com/products/red-hat-integration
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: https://github.com/redhat-developer/app-services-operator/
    name: rhoas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhoas-operator.0.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhoas.redhat.com/v1alpha1",
                "kind": "ServiceRegistryConnection",
                "metadata": {
                  "name": "example",
                  "namespace": "example-namespace",
                  "labels": {
                    "app.kubernetes.io/component": "external-service",
                    "app.kubernetes.io/managed-by": "rhoas"
                  }
                },
                "spec": {
                  "accessTokenSecretName": "rh-managed-services-api-accesstoken",
                  "serviceRegistryId": "exampleId",
                  "credentials": {
                    "serviceAccountSecretName": "service-account-secret"
                  }
                }
              },
              {
                "apiVersion": "rhoas.redhat.com/v1alpha1",
                "kind": "CloudServiceAccountRequest",
                "metadata": {
                  "name": "example",
                  "namespace": "example-namespace"
                },
                "spec": {
                  "serviceAccountName": "rhoas-sa",
                  "serviceAccountDescription": "Operator created service account",
                  "serviceAccountSecretName": "service-account-credentials",
                  "accessTokenSecretName": "rh-managed-services-api-accesstoken"
                }
              },
              {
                "apiVersion": "rhoas.redhat.com/v1alpha1",
                "kind": "CloudServicesRequest",
                "metadata": {
                  "name": "example",
                  "namespace": "example-namespace",
                  "labels": {
                    "app.kubernetes.io/component": "external-service",
                    "app.kubernetes.io/managed-by": "rhoas"
                  }
                },
                "spec": {
                  "accessTokenSecretName": "rh-cloud-services-api-accesstoken"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools, OpenShift Optional, Integration & Delivery
          certified: "false"
          containerImage: quay.io/rhoas/service-operator:0.13.0
          createdAt: "2023-01-20 16:09:37"
          description: Red Hat OpenShift Application Services Operator
          olm.skipRange: '>=0.0.1 <0.13.0'
          repository: https://github.com/redhat-developer/app-services-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Creates RHOAS Service Accounts
            displayName: Cloud Service Account Request
            kind: CloudServiceAccountRequest
            name: cloudserviceaccountrequests.rhoas.redhat.com
            version: v1alpha1
          - description: Cloud Services Request
            displayName: Cloud Services Request
            kind: CloudServicesRequest
            name: cloudservicesrequests.rhoas.redhat.com
            version: v1alpha1
          - description: Binds Kafka Instance
            displayName: Kafka Connection
            kind: KafkaConnection
            name: kafkaconnections.rhoas.redhat.com
            version: v1alpha1
          - description: Binds Service Registry Instance
            displayName: Service Registry Connection
            kind: ServiceRegistryConnection
            name: serviceregistryconnections.rhoas.redhat.com
            version: v1alpha1
        description: "**OpenShift Application Services Operator (RHOAS-Operator)**
          creates instances of Red Hat OpenShift Application Services in your cluster.
          Operator is currently available as limited Beta and it cannot be consumed
          without invitation.\n\nRed Hat OpenShift Application Services, when added
          to Red Hat OpenShift Dedicated,  provide a streamlined developer experience
          for building, deploying,  and scaling cloud-native applications in open
          hybrid-cloud environments.   \n\nRHOAS-Operator enables developers to connect
          with their Application Services directly in their own cluster by using [RHOAS
          cli](https://github.com/redhat-developer/app-services-cli) and OpenShift
          Console UI.  \n\nRHOAS-Operator requires developers to connect with their
          Red Hat OpenShift Streams for Apache Kafka (RHOSAK) instances.  "
        displayName: OpenShift Application Services (RHOAS)
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - rhoas
        - kafka
        - serviceregistry
        - app-services
        - application
        - services
        links:
        - name: RHOAS Operator Documentation
          url: https://github.com/redhat-developer/app-services-operator/tree/main/docs
        maintainers:
        - email: rhosak-eval-support@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat Inc.
          url: https://github.com/redhat-developer/app-services-operator/
        relatedImages:
        - quay.io/openshift-community-operators/rhoas-operator@sha256:5299cd4c88012692b31d560ef981f80f994a0468552f43e03623adbf89b49ff6
        - quay.io/rhoas/service-operator:0.13.0
        version: 0.13.0
      entries:
      - name: rhoas-operator.0.13.0
        version: 0.13.0
      - name: rhoas-operator.0.12.0
        version: 0.12.0
      - name: rhoas-operator.0.11.0
        version: 0.11.0
      - name: rhoas-operator.0.9.6
        version: 0.9.6
      - name: rhoas-operator.0.9.5
        version: 0.9.5
      - name: rhoas-operator.0.9.3
        version: 0.9.3
      - name: rhoas-operator.0.9.2
        version: 0.9.2
      - name: rhoas-operator.0.9.1
        version: 0.9.1
      - name: rhoas-operator.0.9.0
        version: 0.9.0
      - name: rhoas-operator.0.8.2
        version: 0.8.2
      - name: rhoas-operator.0.7.10
        version: 0.7.10
      - name: rhoas-operator.0.7.9
        version: 0.7.9
      - name: rhoas-operator.0.7.8
        version: 0.7.8
      - name: rhoas-operator.0.7.6
        version: 0.7.6
      - name: rhoas-operator.0.7.2
        version: 0.7.2
      - name: rhoas-operator.0.7.1
        version: 0.7.1
      - name: rhoas-operator.0.6.8
        version: 0.6.8
      name: beta
    defaultChannel: beta
    packageName: rhoas-operator
    provider:
      name: Red Hat Inc.
      url: https://github.com/redhat-developer/app-services-operator/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: m88i Labs
      provider-url: ""
    name: nexus-operator-m88i
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nexus-operator.v0.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.m88i.io/v1alpha1",
                "kind": "Nexus",
                "metadata": {
                  "name": "nexus3"
                },
                "spec": {
                  "networking": {
                    "expose": false
                  },
                  "persistence": {
                    "persistent": false
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "2",
                      "memory": "2Gi"
                    },
                    "requests": {
                      "cpu": "1",
                      "memory": "2Gi"
                    }
                  },
                  "useRedHatImage": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/m88i/nexus-operator:0.6.0
          createdAt: "2019-11-16T13:12:22Z"
          description: Nexus Operator to deploy and manage Nexus 3.x servers
          operators.operatorframework.io/builder: operator-sdk-v1.4.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/m88i/nexus-operator
          support: m88i Labs
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: Nexus
            kind: Nexus
            name: nexus.apps.m88i.io
            version: v1alpha1
        description: |-
          Creates a new Nexus 3.x deployment in a Kubernetes cluster. Will help DevOps to have a quick Nexus application exposed to the world that can be used in a CI/CD process:

          * Deploys a new Nexus 3.x server based on either Community or Red Hat images
          * Creates an [Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) in Kubernetes (1.14+) environments to expose the application to the world
          * On OpenShift, creates a Route to expose the service outside the cluster
          * Automatically creates Apache, Red Hat and JBoss Maven repositories
          * Automatically updates Nexus within the same minor version

          [See our documentation](https://github.com/m88i/nexus-operator/blob/main/README.md) for more installation and usage scenarios.

          If you experience any issues or have any ideas for new features, please [file an issue in our Github repository](https://github.com/m88i/nexus-operator/issues) or send an email to our maillist: [nexus-operator@googlegroups.com](mailto:nexus-operator@googlegroups.com)

          *Please note that the operator is an individual work and it's not provided nor supported by Sonatype.*
        displayName: Nexus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nexus
        - sonatype
        - maven
        - docker
        - ci
        - continuous integration
        - continuous delivery
        - repository
        - repository manager
        - dev tools
        links:
        - name: Documentation
          url: https://github.com/m88i/nexus-operator/blob/main/README.md
        - name: Nexus Operator source code repository
          url: https://github.com/m88i/nexus-operator
        maintainers:
        - email: nexus-operator@googlegroups.com
          name: m88i Labs
        maturity: alpha
        provider:
          name: m88i Labs
        relatedImages:
        - quay.io/m88i/nexus-operator:0.6.0
        - quay.io/openshift-community-operators/nexus-operator-m88i@sha256:46cd06d477b4d09dbfca7ca4434ea58f881314138ed744c6390033bd6fb7dc0f
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        version: 0.6.0
      entries:
      - name: nexus-operator.v0.6.0
        version: 0.6.0
      name: alpha
    defaultChannel: alpha
    packageName: nexus-operator-m88i
    provider:
      name: m88i Labs
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: MinIO
      provider-url: https://min.io
    name: minio-minkms
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: minio-minkms.v2025.12.17191008
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "minkms.min.io/v1alpha1",
                "kind": "MinKMS",
                "metadata": {
                  "name": "my-minkms",
                  "namespace": "ns-1"
                },
                "spec": {
                  "apiKeySecret": {
                    "name": "my-api-key"
                  },
                  "configuration": {
                    "name": "my-kms-server-config"
                  },
                  "hsmSecret": {
                    "name": "my-kms-hsm"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "registry-creds"
                    }
                  ],
                  "replicas": 2,
                  "volumeClaimTemplate": {
                    "metadata": {
                      "name": "minkms-volume"
                    },
                    "spec": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "100Mi"
                        }
                      },
                      "storageClassName": "standard"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security, Storage
          createdAt: "2025-12-17T19:10:08Z"
          description: MinIO AIStor is the standard for building large scale AI data
            infrastructure.
          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"
          operatorframework.io/suggested-namespace: aistor
          operators.openshift.io/valid-subscription: Contact MinIO for subscription
            information.
          operators.operatorframework.io.bundle.channel.default.v1: stable
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: unknown
          support: min.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: MinKMS
            name: minkmses.minkms.min.io
            version: v1alpha1
        description: |-
          Highly available, powerful and operationally simple, MinIO's Enterprise Key Management Server (MinKMS) is optimized for large storage infrastructures where billions of cryptographic keys are required.

          MinIO's AIStor MinKMS establishes its foundational trust using the concept of an hardware security module (but given MinKMS is software, this is only a concept). That module assumes a pivotal role in sealing and unsealing the MinKMS root encryption key. The module responsibility extends to safeguarding the integrity of MinKMS by allowing the unsealing of its encrypted on-disk state and facilitating communication among nodes within a MinKMS cluster.

          It solves the challenges associated with billions of cryptographic keys and hundreds of thousands of cryptographic operations per node per second - which are commonplace in larger deployments.

          <b>High Availability and Fault Tolerance</b>
          In the dynamic landscape of large-scale systems, network or node outages are inevitable. Taking down a cluster for maintenance is rarely feasible. MinIO's AIStor MinKMS ensures uninterrupted availability, even when faced with such disruptions, mitigating cascading effects that can take down the entire storage infrastructure. Specifically, you could lose all but one node of a cluster and still handle any encryption, decryption or data key generation requests.

          <b>Scalability</b>
          While the amount of data usually only increases, the load on a large-scale storage system may vary significantly from time to time. MinIO's AIStor MinKMS supports dynamic cluster resizing and nodes can be added or removed at any point without incurring any downtime.

          <b>Multi-Tenancy</b>
          Large-scale storage infrastructures are often used by many applications and teams across the entire organization. Isolating teams and groups into their own namespaces is a core requirement. MinIO's AIStor MinKMS supports namespacing in the form of enclaves. Each tenant can be assigned its own enclave which is completely independent and isolated from all other enclaves on the MinKMS cluster.

          <b>Predictable Behavior</b>
          MinIO's AIStor MinKMS is designed to be easily managed, providing operators with the ability to comprehend its state intuitively. Due to its simple design, MinIO's AIStor MinKMS is significantly easier to operate than similar solutions that rely on more complex consensus algorithms like Raft, or Paxos.

          <b>Consistent and Performant</b>
          The responsiveness of the MinKMS for GET/PUT operations directly influences the overall efficiency and speed of the storage system. MinIO's AIStor MinKMS nodes don't have to coordinate when handling such requests from the storage system. Therefore, the performance of a MinIO's AIStor MinKMS cluster increases linearly with the number of nodes. Further, MinIO's AIStor MinKMS supports request pipelining to handle hundreds of thousands of cryptographic operations per node and second.

          <b>Simplicity</b>
          Operating a MinKMS cluster does not require expertise in cryptography or distributed systems. Everything can be done from the AIStor Console.

          <a href="https://resources.min.io/request-a-demo-marketplaces/">Request a demo today</a>
        displayName: MinKMS
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - AI Storage
        - MinIO
        links:
        - name: Minio AIStor
          url: https://min.io
        - name: Support
          url: https://subnet.min.io
        - name: Github
          url: https://github.com/minio/aistor
        maintainers:
        - email: dev@min.io
          name: MinIO
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: MinIO
          url: https://min.io
        relatedImages:
        - quay.io/minio/aistor/operator@sha256:2c3cb98193815b76f73e89bb3d6311ccd75c3b354bdccd04758715a08b163436
        - registry.connect.redhat.com/minkms/minkms@sha256:2bf2b896bd39e585ed3797f3e37922b7ac60b51e92cc80667199280c4aea5c99
        - quay.io/minio/aistor/minkms-sidecar@sha256:f460aef51e32fd6bd556f3d30f14f026855cb4010f662c82d1964e1596c50f2a
        - quay.io/minio/aistor/minkms@sha256:4c089d787b4ebf862dbce7826ac6eadeca5e0811b1f0379f43fb732f321fda8f
        version: 2025.12.17191008
      entries:
      - name: minio-minkms.v2025.12.17191008
        version: 2025.12.17191008
      - name: minio-minkms.v2025.12.16205103
        version: 2025.12.16205103
      name: stable
    defaultChannel: stable
    packageName: minio-minkms
    provider:
      name: MinIO
      url: https://min.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Nutanix
      provider-url: ""
    name: nutanixcsioperator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nutanixcsioperator.v3.3.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "crd.nutanix.com/v1alpha1",
                "kind": "NutanixCsiStorage",
                "metadata": {
                  "name": "nutanixcsistorage"
                },
                "spec": {
                  "ntnxInitConfigMap": {
                    "usePC": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/nutanix/nutanix-csi-operator@sha256:0c2f43cdc7d530fb0e8730abc225401f557f05806f5de3fcd82aedcf17ecb89e
          createdAt: "2025-11-28T07:13:29Z"
          description: An Operator for deploying and managing the Nutanix CSI Driver
          features.operators.openshift.io/csi: "true"
          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.skipRange: <3.3.9
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi","disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/nutanix/csi-operator
          support: Nutanix Support Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy a new instance of Nutanix CSI Driver
            displayName: Nutanix CSI Storage
            kind: NutanixCsiStorage
            name: nutanixcsistorages.crd.nutanix.com
            version: v1alpha1
        description: "# Important\nPlease read the following instructions carefully
          before upgrading from 2.6.x to 3.3.9, for more information please refer
          to [documentation](https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v3_3:CSI-Volume-Driver-v3_3)
          \n- Please do not upgrade to the CSI 3.x operator if:\n    * You are using
          LVM volumes.\n\n- CSI 3.3.9 supports PC service account-based authentication
          in Nutanix Volumes and Nutanix Files. Instead of using username and password
          secrets, Prism Central administrators can now create service accounts, configure
          RBAC, and use generated API keys for secure storage provisioning. Create
          a Nutanix Prism Central secret with service account key as shown [here](#create-a-nutanix-pc-secret)\n\nNote:
          In order to use this feature you should uninstall the driver(delete existing
          nutanixcsistorage resource), create a nutanix-pc-secret with the service
          account key as shown [here](#create-a-nutanix-pc-secret) and install the
          driver again by passing the newly created secret name in pcSecretName and
          authType: \"service-auth\" in nutanixcsistorage spec.\n    \n- To upgrade
          from the CSI 2.6.x to CSI 3.3 (interacting with Prism Central) operator\n
          \   * Create a Nutanix Prism Central secret as explained below.\n    * Delete
          the csidriver object from the cluster:\n\n        ```\n        oc delete
          csidriver csi.nutanix.com\n        ```\n\n    * In the installed operators,
          go to Nutanix CSI Operator and change the subscription channel from stable
          to stable-3.x. \n    If you have installed the operator with automatic update
          approval, the operator will be automatically upgraded to CSI 3.3, and then
          the nutanixcsistorage resource will be upgraded.\n    An update plan will
          be generated for manual updates. Upon approval, the operator will be successfully
          upgraded.\n    \n- Direct upgrades from CSI 2.6.x to CSI 3.3 interacting
          with Prism Element are not supported. \n    The only solution is to recreate
          the nutanixcsistorage instance by following the below procedure:\n    -
          In the installed operators, go to Nutanix CSI Operator and delete the nutanixcsistorage
          instance.\n    - Next change the subscription channel from stable to stable-3.x.\n
          \   - Verify the following points:\n        - Ensure a Nutanix Prism Element
          secret is present in the namespace.\n        - Ensure that all the storage
          classes with provisioner: csi.nutanix.com have a controller publish secret
          as explained below.\n\n            ```\n            csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n            csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n            ```\n\n            If this secret
          is not present in the storage class please delete and recreate the storage
          classes with the required secrets.\n    - Create a new instance of nutanixcsistorage
          from this operator by specifying `usePC: false` in YAML spec section.\n
          \   - Caution: Moving from CSI driver interacting with Prism Central to
          CSI driver interacting with Prism Element is not supported.\n    \n- Troubleshooting:\n
          \   \n    If the upgrade was unsuccessful and you want to revert to version
          CSI 2.6.x, please delete the csidriver object as explained above, uninstall
          the operator (no need to delete the nutanixcsistorage custom resource),
          and install version CSI 2.6.x from the stable channel.\n# Overview \nThe
          Nutanix CSI Operator for Kubernetes packages, deploys, manages, and upgrades
          the Nutanix CSI Driver on Kubernetes and OpenShift for dynamic provisioning
          of persistent volumes on the Nutanix Enterprise Cloud platform.\nThe Nutanix
          Container Storage Interface (CSI) Driver for Kubernetes leverages Nutanix
          Volumes and Nutanix Files to provide scalable and persistent storage for
          stateful applications.\nWith the Nutanix CSI Provider, you can:\n*  **Provide
          persistent storage to your containers**\n    * Leverage PVC resources to
          consume dynamically Nutanix storage\n    * With Files storage classes, applications
          on multiple pods can access the same storage and have the benefit of multi-pod
          read and write access. \n## Warning\nIf you upgrade from a previous version,
          make sure to validate your existing StorageClass parameters against the
          corresponding [documentation](https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v3_3:CSI-Volume-Driver-v3_3)\n##
          Supported Access mode\n| Storage Class mode | ReadWriteOnce | ReadOnlyMany
          | ReadWriteMany |\n|--------------------|---------------|--------------|---------------|\n|
          Nutanix Volumes    | yes           | yes          | no            |\n| Nutanix
          Files      | yes           | yes          | yes           |\n## Supported
          orchestration platforms\nThe following table details orchestration platforms
          suitable for deployment of the Nutanix CSI driver.\n| Orchestration platform
          | Version | Architecture |\n|------------------------|---------|--------------|\n|
          Red Hat OpenShift      | 4.12    | x86          |\n| Red Hat OpenShift      |
          4.13    | x86          |\n| Red Hat OpenShift      | 4.14    | x86          |\n|
          Red Hat OpenShift      | 4.15    | x86          |\n| Red Hat OpenShift      |
          4.16    | x86          |\n| Red Hat OpenShift      | 4.17    | x86          |\n|
          Red Hat OpenShift      | 4.18    | x86          |\n| Red Hat OpenShift      |
          4.19    | x86          |\n| Red Hat OpenShift      | 4.20    | x86          |\n##
          Configuring k8s secret and storage class\nTo use this driver, create the
          relevant storage classes and secrets and deploy your NutanixCsiStorage instance
          by following the [documentation](https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v3_3:CSI-Volume-Driver-v3_3)
          or the example in below section:\n### Create a Nutanix PE secret\n```yaml\napiVersion:
          v1\nkind: Secret\nmetadata:\n  name: ntnx-pe-secret\n  namespace: openshift-cluster-csi-drivers\nstringData:\n
          \ # prism-ip:prism-port:username:password.\n  key: 1.2.3.4:9440:admin:password\n
          \ files-key: \"fileserver01.sample.com:csi:password1\"\n```\n### Create
          a Nutanix PC secret\n- basic authentication\n```yaml\napiVersion: v1\nkind:
          Secret\nmetadata:\n  name: ntnx-pc-secret\n  namespace: openshift-cluster-csi-drivers\nstringData:\n
          \ # prism-ip:prism-port:username:password.\n  key: 1.2.3.4:9440:admin:password\n```\n-
          service account based authentication\n```yaml\napiVersion: v1\nkind: Secret\nmetadata:\n
          \ name: ntnx-pc-secret\n  namespace: openshift-cluster-csi-drivers\ntype:
          Opaque\nstringData:\n  host: 1.2.3.4\n  port: 9440\n  key_type: \"api-key\"\n
          \ key_value: \"xxxxxxxxxxx\"\n  auth_type: \"service-auth\"\n```\n### Create
          a NutanixCsiStorage resource to deploy your driver\nYou can do it directly
          inside the Operator UI with the `Create instance` button or with the following
          resource\n```yaml\napiVersion: crd.nutanix.com/v1alpha1\nkind: NutanixCsiStorage\nmetadata:\n
          \ name: nutanixcsistorage\n  namespace: openshift-cluster-csi-drivers\nspec:
          \n  ntnxInitConfigMap:\n    usePC : true (false for PE based installations.
          Default is true.)\n```\n### Create storage classes\n- volume mode example
          for 3.x installation\n```yaml\nkind: StorageClass\napiVersion: storage.k8s.io/v1\nmetadata:\n
          \ name: nutanix-volume\nprovisioner: csi.nutanix.com\nparameters:\n  csi.storage.k8s.io/provisioner-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/provisioner-secret-namespace: openshift-cluster-csi-drivers\n
          \ csi.storage.k8s.io/node-publish-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/node-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-expand-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-expand-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/fstype: ext4\n  storageContainer:
          default-container\n  storageType: NutanixVolumes\n  #description: \"description
          added to each storage object created by the driver\"\n  #hypervisorAttached:
          ENABLED\nallowVolumeExpansion: true\nreclaimPolicy: Delete\n```\n- volume
          mode example for 2.x installation\n```yaml\nkind: StorageClass\napiVersion:
          storage.k8s.io/v1\nmetadata:\n  name: nutanix-volume\nprovisioner: csi.nutanix.com\nparameters:\n
          \ csi.storage.k8s.io/provisioner-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/provisioner-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/node-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/node-publish-secret-namespace: openshift-cluster-csi-drivers\n
          \ csi.storage.k8s.io/controller-expand-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/controller-expand-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/fstype: ext4\n   storageContainer:
          default-container\n   storageType: NutanixVolumes\n   #description: \"description
          added to each storage object created by the driver\"\n   #isSegmentedIscsiNetwork:
          \"false\"\n   #whitelistIPMode: ENABLED\n   #chapAuth: ENABLED\n   #isLVMVolume:
          \"false\"\n   #numLVMDisks: 4\n allowVolumeExpansion: true\n reclaimPolicy:
          Delete\n```\n- dynamic files mode example\n```yaml\nkind: StorageClass\napiVersion:
          storage.k8s.io/v1\nmetadata:\n    name: nutanix-dynfiles\nprovisioner: csi.nutanix.com\nparameters:\n
          \ dynamicProv: ENABLED\n  nfsServerName: fs\n  csi.storage.k8s.io/provisioner-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/provisioner-secret-namespace: openshift-cluster-csi-drivers\n
          \ csi.storage.k8s.io/node-publish-secret-name: ntnx-pe-secret\n  csi.storage.k8s.io/node-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-expand-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-expand-secret-namespace:
          openshift-cluster-csi-drivers\n  csi.storage.k8s.io/controller-publish-secret-name:
          ntnx-pe-secret\n  csi.storage.k8s.io/controller-publish-secret-namespace:
          openshift-cluster-csi-drivers\n  storageType: NutanixFiles\n  squashType:
          \"none\"\n  #description: \"description added to each storage object created
          by the driver\"\nallowVolumeExpansion: true\n```"
        displayName: Nutanix CSI Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Nutanix
        - CSI
        - Volumes
        - Files
        - Storage
        links:
        - name: Documentation
          url: https://portal.nutanix.com/page/documents/list?type=software&filterKey=product&filterVal=CSI
        maintainers:
        - email: cloudnative@nutanix.com
          name: Nutanix Cloud Native
        maturity: beta
        provider:
          name: Nutanix
        relatedImages:
        - registry.connect.redhat.com/nutanix/ntnx-csi-os@sha256:92ab85b4f728ad1b1f31b75ec591f569cf37717035ce6df04bf4569577f5f86c
        - registry.connect.redhat.com/nutanix/ntnx-csi-os@sha256:f23dd74af1a094c473983916d04cfd60290c806f8ce6adf379a6211bbdd0b9c3
        - registry.connect.redhat.com/nutanix/nutanix-csi-operator-bundle@sha256:7d6b9e826cd5043f7d8148e5036d2d2cfb070b4b651d7ca86cbd2591f42d6e52
        - registry.connect.redhat.com/nutanix/nutanix-csi-operator@sha256:0c2f43cdc7d530fb0e8730abc225401f557f05806f5de3fcd82aedcf17ecb89e
        - registry.k8s.io/sig-storage/csi-external-health-monitor-controller@sha256:9e581022a4e063b9d8b4f9466a36eabe4d0ced3badc8e353f13b700074ce4553
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:0f64602ea791246712b51df334bbd701a0f31df9950a4cb9c28c059f367baa9e
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:9af9bf28430b00a0cedeb2ec29acadce45e6afcecd8bdf31c793c624cfa75fa7
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:f1bd6ee18c4021c1c94f29edfab89b49b6a4d1b800936c19dbef2d75f8202f2d
        - registry.k8s.io/sig-storage/livenessprobe@sha256:82adbebdf5d5a1f40f246aef8ddbee7f89dea190652aefe83336008e69f9a89f
        - registry.k8s.io/sig-storage/csi-attacher@sha256:d7325367ab72b2d469a5091d87b4fc01142d2d13d1a28b2defbbe3e6fdbc4611
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:04c55b93a032ad8075cae540d60fc740a72c31006590dbdb61ad4ab9813959d0
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:10624570c0aceb03f55f1eb07147b0c537e4676869cca2e9bd4bab113f810ac4
        - registry.k8s.io/sig-storage/csi-resizer@sha256:3c116f543f0590aeff3299c8bb0683f250817d11a77d9e9071b15a0bffdabcd9
        version: 3.3.9
      entries:
      - name: nutanixcsioperator.v3.3.9
        version: 3.3.9
      - name: nutanixcsioperator.v3.3.8
        version: 3.3.8
      - name: nutanixcsioperator.v3.3.4
        version: 3.3.4
      name: stable-3.x
    defaultChannel: stable-3.x
    packageName: nutanixcsioperator
    provider:
      name: Nutanix
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: JohnSnowLabs
      provider-url: ""
    name: nlp-server
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nlp-server.v0.8.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.johnsnowlabs.com/v1",
                "kind": "Nlpserver",
                "metadata": {
                  "name": "nlpserver-sample"
                },
                "spec": {
                  "ExtraEnv": {
                    "johnsnowlabs_client_id": "sI4MKSmLHOX2Pg7XhM3McJS2oyKG5PHcp0BlANEW",
                    "nb_uid": "1000",
                    "nb_user": "johnsnowlabs",
                    "pyspark_version": "3.0.2",
                    "spark_nlp_version": "3.4.4"
                  },
                  "affinity": {},
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "johnsnowlabs/nlp-server",
                    "tag": "0.8.0rc1"
                  },
                  "imagePullSecrets": [],
                  "ingress": {
                    "annotations": {
                      "kubernetes.io/ingress.class": "nginx",
                      "nginx.ingress.kubernetes.io/ssl-redirect": "true"
                    },
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "nlp-server.jsl.aiplatform.eks.test.johnsnowlabs.com",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": [
                      {
                        "hosts": [
                          "nlp-server.jsl.aiplatform.eks.test.johnsnowlabs.com"
                        ],
                        "secretName": "annotationlab-tls-secret"
                      }
                    ]
                  },
                  "livenessProbe": "httpGet:\n  path: /\n  port: http\ninitialDelaySeconds: 15\ntimeoutSeconds: 3\n",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podSecurityContext": {},
                  "readinessProbe": "httpGet:\n  path: /\n  port: http\ninitialDelaySeconds: 15\ntimeoutSeconds: 3\n",
                  "replicaCount": 1,
                  "resources": {},
                  "securityContext": {},
                  "service": {
                    "port": 5000,
                    "portName": "http",
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": "nlp-server-sa"
                  },
                  "tolerations": []
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: registry.johnsnowlabs.com/nlp-server/nlp-server-operator:0.8.6
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Nlpserver
            name: nlpservers.apps.johnsnowlabs.com
            version: v1
        description: NLPServer from JohnSnow labs
        displayName: nlp-server
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nlp-server
        links:
        - name: Nlp Server
          url: https://johnsnowlabs.com
        maturity: alpha
        provider:
          name: JohnSnowLabs
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/openshift-community-operators/nlp-server@sha256:6f80f44822301252540c6b808a20cea327f0eedeadc7643d31fc743de5c5e696
        - registry.johnsnowlabs.com/nlp-server/nlp-server-operator:0.8.6
        version: 0.8.6
      entries:
      - name: nlp-server.v0.8.6
        version: 0.8.6
      name: alpha
    defaultChannel: alpha
    packageName: nlp-server
    provider:
      name: JohnSnowLabs
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ThinkParQ
      provider-url: https://www.thinkparq.com
    name: beegfs-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: beegfs-csi-driver-operator.v1.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "beegfs.csi.netapp.com/v1",
                "kind": "BeegfsDriver",
                "metadata": {
                  "name": "csi-beegfs-cr"
                },
                "spec": {
                  "nodeAffinityControllerService": {
                    "preferredDuringSchedulingIgnoredDuringExecution": [
                      {
                        "preference": {
                          "matchExpressions": [
                            {
                              "key": "node-role.kubernetes.io/master",
                              "operator": "Exists"
                            }
                          ]
                        },
                        "weight": 50
                      }
                    ],
                    "requiredDuringSchedulingIgnoredDuringExecution": {
                      "nodeSelectorTerms": [
                        {
                          "matchExpressions": [
                            {
                              "key": "node.openshift.io/os_id",
                              "operator": "NotIn",
                              "values": [
                                "rhcos"
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  },
                  "nodeAffinityNodeService": {
                    "requiredDuringSchedulingIgnoredDuringExecution": {
                      "nodeSelectorTerms": [
                        {
                          "matchExpressions": [
                            {
                              "key": "node.openshift.io/os_id",
                              "operator": "NotIn",
                              "values": [
                                "rhcos"
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: ghcr.io/thinkparq/beegfs-csi-driver-operator:v1.8.0
          createdAt: 2021-06-30:03:11:00
          description: Install and manage the BeeGFS CSI driver
          operatorframework.io/suggested-namespace: beegfs-csi
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ThinkParQ/beegfs-csi-driver
          support: ThinkParQ
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploys the BeeGFS CSI driver
            displayName: BeeGFS Driver
            kind: BeegfsDriver
            name: beegfsdrivers.beegfs.csi.netapp.com
            version: v1
        description: |
          The BeeGFS Container Storage Interface (CSI) driver provides high performing and scalable storage for workloads
          running in container orchestrators like Kubernetes. It allows containers to access existing datasets or request
          on-demand ephemeral or persistent high speed storage backed by BeeGFS parallel file systems.

          This operator eases the installation and management of the BeeGFS CSI driver in an OpenShift or other Operator
          Lifecycle Manager enabled cluster.

          ### Documentation

          Compatibility information and a quick start guide for the BeeGFS CSI driver itself are available on our [main GitHub
          page](https://www.github.com/ThinkParQ/beegfs-csi-driver). Additional detailed documentation for the driver is
          available in the [docs directory](https://www.github.com/ThinkParQ/beegfs-csi-driver/tree/master/docs) and for the
          operator is available in the [operator
          README](https://www.github.com/ThinkParQ/beegfs-csi-driver/tree/master/operator/README.md).

          ### Important Notes

          The BeeGFS client packages and kernel module must be pre-installed on all nodes that will run the driver. See the
          driver ["Getting Started" guide](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/README.md#getting-started)
          for additional information.

          The BeeGFS CSI driver is only supported on nodes running a [BeeGFS supported Linux
          distribution](https://doc.beegfs.io/latest/release_notes.html#supported-linux-distributions-and-kernels). Red Hat
          CoreOS (RHCOS), the default distribution in OpenShift environments, is NOT supported. However, Red Hat Enterprise
          Linux (RHEL) nodes can be added to an OpenShift cluster and RHEL is supported for running BeeGFS. By default, the
          operator will install the driver with a node affinity that ensures it does not run on RHCOS nodes. See the driver
          [compatibility
          matrix](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/README.md#interoperability-and-csi-feature-matrix)
          for additional information.

          We have recently published experimental manifests that enable the BeeGFS CSI driver on OpenShift nodes running
          RHCOS. These manifests are not intended for production use. See [this
          README](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/deploy/openshift-beegfs-client/README.md) for more
          details.

          All driver configuration can be specified through the BeegfsDrivers API (in a BeegfsDriver Custom Resource)
          except for BeeGFS connAuth information, which must be placed separately into a Kubernetes Secret. See the [ConnAuth
          Configuration
          section](https://github.com/ThinkParQ/beegfs-csi-driver/blob/master/operator/README.md#connauth-configuration) of the
          operator documentation for additional information.

          Starting with version 1.4.0 of the BeeGFS CSI driver the driver and operator images will be signed using the Cosign
          tool. Refer to the [BeeGFS CSI driver operator
          README](https://www.github.com/ThinkParQ/beegfs-csi-driver/tree/master/operator/README.md)
          for details on how to verify the operator and driver image signatures.
        displayName: BeeGFS CSI Driver
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - CSI
        - BeeGFS
        - ThinkParQ
        - HPC
        - AI
        - High-Performance Computing
        links:
        - name: BeeGFS introduction
          url: https://www.beegfs.io/c/
        - name: BeeGFS documentation
          url: https://doc.beegfs.io/latest/index.html
        - name: BeeGFS CSI driver source code
          url: https://github.com/ThinkParQ/beegfs-csi-driver
        - name: BeeGFS blog posts
          url: https://www.beegfs.io/c/blog/
        maintainers:
        - email: csi-driver@beegfs.io
          name: ThinkParQ
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: ThinkParQ
          url: https://www.thinkparq.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/beegfs-csi-driver-operator@sha256:f62ae88c74faef808733ab2b905e1bc5b80ca3f3cc96bb946a8e939a73ccb59f
        - ghcr.io/thinkparq/beegfs-csi-driver-operator:v1.8.0
        version: 1.8.0
      entries:
      - name: beegfs-csi-driver-operator.v1.8.0
        version: 1.8.0
      - name: beegfs-csi-driver-operator.v1.7.0
        version: 1.7.0
      - name: beegfs-csi-driver-operator.v1.6.0
        version: 1.6.0
      - name: beegfs-csi-driver-operator.v1.5.0
        version: 1.5.0
      - name: beegfs-csi-driver-operator.v1.4.0
        version: 1.4.0
      - name: beegfs-csi-driver-operator.v1.3.0
        version: 1.3.0
      - name: beegfs-csi-driver-operator.v1.2.2
        version: 1.2.2
      - name: beegfs-csi-driver-operator.v1.2.1
        version: 1.2.1
      - name: beegfs-csi-driver-operator.v1.2.0
        version: 1.2.0
      name: stable
    defaultChannel: stable
    packageName: beegfs-csi-driver-operator
    provider:
      name: ThinkParQ
      url: https://www.thinkparq.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: amq-streams
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amqstreams.v2.2.2-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.2.3",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.2"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.2.3",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.2.3",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:f908d848b5e67de4b162597b190ef18d449ffd4b6540457b24b491445d5c5ea3
          createdAt: "2022-07-01 10:33:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          olm.skipRange: '>=2.1.0-0 <2.2.2-2'
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["Red Hat Integration", "Red
            Hat AMQ", "Red Hat Application Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### CRD Upgrades
          **!!! IMPORTANT !!!**  This release supports only the API version `v1beta2` and CRD version `apiextensions.k8s.io/v1`.  If upgrading from AMQ Streams 1.7, migration to `v1beta2` needs to be completed for all AMQ Streams CRDs and CRs before the upgrade to 2.2 is done! If upgrading from AMQ Streams version earlier than 1.7, you need to first install the CRDs from AMQ Streams 1.7 and complete the migration to `v1beta2` for all AMQ Streams CRDs and CRs before the upgrade to 2.2 is done! For more details about the CRD upgrades, see the [documentation](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.2/html/deploying_and_upgrading_amq_streams_on_openshift/assembly-upgrade-str#assembly-upgrade-resources-str).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.2/html/deploying_and upgrading_amq_streams_on_openshift/assembly-upgrade-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: Red Hat Integration - AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-streams-bridge-rhel8@sha256:5d49bd23da40590e74422424b9457398bad89da8276718ff6a8a088e901c8345
        - registry.redhat.io/amq7/amq-streams-kafka-31-rhel8@sha256:d0607285fae95365b9d34b9474466824fb5ad012871204e8b13e52e438b66bf5
        - registry.redhat.io/amq7/amq-streams-kafka-32-rhel8@sha256:e3bbfff505f12c0360e175f4640c2dd9a7adcf3dce1ae2f586f2bde805ed8b1f
        - registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:f908d848b5e67de4b162597b190ef18d449ffd4b6540457b24b491445d5c5ea3
        - registry.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:826354c9c06a06f998e522a88d6a81239e003e1d6a2633e9b7b27b8a61d5fe38
        version: 2.2.2-2
      entries:
      - name: amqstreams.v2.2.2-2
        version: 2.2.2-2
      - name: amqstreams.v2.2.2-1
        version: 2.2.2-1
      - name: amqstreams.v2.2.2-0
        version: 2.2.2-0
      - name: amqstreams.v2.2.1-7
        version: 2.2.1-7
      - name: amqstreams.v2.2.1-6
        version: 2.2.1-6
      - name: amqstreams.v2.2.1-5
        version: 2.2.1-5
      - name: amqstreams.v2.2.1-4
        version: 2.2.1-4
      - name: amqstreams.v2.2.1-3
        version: 2.2.1-3
      - name: amqstreams.v2.2.1-2
        version: 2.2.1-2
      - name: amqstreams.v2.2.1-1
        version: 2.2.1-1
      - name: amqstreams.v2.2.1-0
        version: 2.2.1-0
      - name: amqstreams.v2.2.0-5
        version: 2.2.0-5
      name: amq-streams-2.2.x
    - currentCSV: amqstreams.v2.3.0-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.3.1",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.3"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.3.1",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.3.1",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:2e46a25144d697761f0119deaf528c6f1c2ccd04e2acd95c661b0df4f32e1a9f
          createdAt: "2022-10-31 17:05:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          olm.skipRange: '>=2.2.0-0 <2.3.0-4'
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.3.0 release, AMQ Streams supports only OCP 4.8 to 4.12!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 2.2 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more details, see the [documentation](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.3/html/deploying_and_upgrading_amq_streams_on_openshift/assembly-upgrade-str#assembly-upgrade-resources-str

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.3/html/deploying_and upgrading_amq_streams_on_openshift/assembly-upgrade-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq7/amq-streams-bridge-rhel8@sha256:c822b3d87f7dea233fc523238d8d0516e42f9a3d252f50f4d427c934995f9b22
        - registry.redhat.io/amq7/amq-streams-kafka-32-rhel8@sha256:0152a85f2d0bc85881dacaee62c6e8b0b8b04f57a542b9b82dc93ad5303d6bf9
        - registry.redhat.io/amq7/amq-streams-kafka-33-rhel8@sha256:046c2539fef32bd928fc1f4f4c41e63f9a143b371fcc201d78c66f48fc34ea32
        - registry.redhat.io/amq7/amq-streams-operator-bundle@sha256:a59435a22c2f470b149ff721240f14144d2e56200b141e59a4f1011267a6c925
        - registry.redhat.io/amq7/amq-streams-rhel8-operator@sha256:2e46a25144d697761f0119deaf528c6f1c2ccd04e2acd95c661b0df4f32e1a9f
        - registry.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        version: 2.3.0-4
      entries:
      - name: amqstreams.v2.3.0-4
        version: 2.3.0-4
      name: amq-streams-2.3.x
    - currentCSV: amqstreams.v2.4.0-3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.4.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.3"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.4.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operation":"Read",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Write",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Create",
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operation":"Describe",
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "my-cluster-target",
                  "clusters": [
                    {
                      "alias": "my-cluster-source",
                      "bootstrapServers": "my-cluster-source-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "my-cluster-target",
                      "bootstrapServers": "my-cluster-target-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "my-cluster-source",
                      "targetCluster": "my-cluster-target",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": 1,
                          "offset-syncs.topic.replication.factor": 1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "heartbeatConnector": {
                        "config": {
                          "heartbeats.topic.replication.factor": 1
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": 1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:cd1fefcd199400a504b4b9942c24ba6becafcecc952a9e39fa2729228be79e77
          createdAt: "2022-10-31 17:05:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          olm.skipRange: '>=2.3.0-0 <2.4.0-3'
          operators.openshift.io/infrastructure-features: '["Disconnected", "Proxy",
            "proxy-aware", "fips"]'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.4.0 release, AMQ Streams supports only OCP 4.8 to 4.12!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more details, see the [documentation](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.4/html/deploying_and_managing_amq_streams_on_openshift/assembly-upgrade-str)

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. See [the upgrade guide](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/2.4/html/deploying_and upgrading_amq_streams_on_openshift/assembly-upgrade-str) for more information.
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.access.redhat.com/ubi8/openjdk-11@sha256:d9739b266415be7c915daf3c61f8f1cc4e14d0b237a0ab664693bc2e0d3577e4
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:8d467fc746b78440df06f6d88d266f6ac9b5a4574a2b17fd870c173a107f8d65
        - registry.redhat.io/amq-streams/kafka-33-rhel8@sha256:aa780a250444c2426be79e95366050a33f4a4c9d68c08b58743413ea67a2d6d7
        - registry.redhat.io/amq-streams/kafka-34-rhel8@sha256:50b3be789993cfeedc4923a8e760c1cf52498b2178be3abfa3719fc2d15ce723
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:1346dcee82f2120bd2af22be9f041e057bdc32f9ad1c3ef717d599ba6519faeb
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:cd1fefcd199400a504b4b9942c24ba6becafcecc952a9e39fa2729228be79e77
        version: 2.4.0-3
      entries:
      - name: amqstreams.v2.4.0-3
        version: 2.4.0-3
      - name: amqstreams.v2.4.0-2
        version: 2.4.0-2
      - name: amqstreams.v2.4.0-1
        version: 2.4.0-1
      name: amq-streams-2.4.x
    - currentCSV: amqstreams.v2.5.2-8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
          createdAt: "2023-07-10 21:47:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.2.0-0 <2.5.2-8'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.5.2 release, AMQ Streams supports only OCP 4.12 to 4.16!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more information, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:4ede5eeed159bddacfe830a768bab4996003d4c57a496fc8ec9b41df916d4acc
        - registry.redhat.io/amq-streams/kafka-34-rhel8@sha256:95bc35951eb545b918114af1e92a7139e2e3323b7d054dcb2a060843c7326d28
        - registry.redhat.io/amq-streams/kafka-35-rhel8@sha256:8c7e8ccb6c2d5da32b70d9d0c3919c303ad73a25447f6993d964f7b19cca1072
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:3d5bcf889f3d534402a8bbfa51fc4a9499b7d6dfaac0d7b11e91363b379be192
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        - registry.redhat.io/ubi8/openjdk-17@sha256:8796da64c626c5f63f31a4e3ac0ac3b179333a7c6d5472a195b9b3f61ccd1099
        version: 2.5.2-8
      entries:
      - name: amqstreams.v2.5.2-8
        version: 2.5.2-8
      - name: amqstreams.v2.5.2-7
        version: 2.5.2-7
      - name: amqstreams.v2.5.2-6
        version: 2.5.2-6
      - name: amqstreams.v2.5.2-5
        version: 2.5.2-5
      - name: amqstreams.v2.5.2-4
        version: 2.5.2-4
      - name: amqstreams.v2.5.2-3
        version: 2.5.2-3
      - name: amqstreams.v2.5.2-2
        version: 2.5.2-2
      - name: amqstreams.v2.5.2-1
        version: 2.5.2-1
      - name: amqstreams.v2.5.2-0
        version: 2.5.2-0
      - name: amqstreams.v2.5.1-5
        version: 2.5.1-5
      - name: amqstreams.v2.5.1-4
        version: 2.5.1-4
      - name: amqstreams.v2.5.1-3
        version: 2.5.1-3
      - name: amqstreams.v2.5.1-2
        version: 2.5.1-2
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.5.x
    - currentCSV: amqstreams.v2.6.0-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.6.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.6"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.6.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.6.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:dacf7ddffe7cbe2dc35e7d3290637b3334117e09dde986e6eaeaceded7069fbf
          createdAt: "2023-10-14 18:18:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.5.0-0 <2.6.0-2'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: "**Red Hat AMQ Streams** is a massively scalable, distributed,
          and high performance data streaming platform based on the Apache Kafka®
          project. AMQ Streams provides an event streaming backbone that allows microservices
          and other application components to exchange data with extremely high throughput
          and low latency.\n**From the 2.6.0 release, AMQ Streams supports only OCP
          4.11 to 4.14! \n**The core capabilities include:** * A pub/sub messaging
          model, similar to a traditional enterprise messaging system, in which application
          components publish and consume events to/from an ordered stream\n* The long
          term, fault-tolerant storage of events\n* The ability for a consumer to
          replay streams of events\n* The ability to partition topics for horizontal
          scalability\n### Upgrades\n**!!! IMPORTANT !!!** **Direct upgrade from AMQ
          Stream 1.7 or earlier is not supported!** You have to upgrade first to one
          of the previous versions of AMQ Streams. You will also need to convert the
          CRD resources. For more information, see the [documentation for AMQ Streams
          on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).\n###
          Supported Features\n* **Manages the Kafka Cluster** - Deploys and manages
          all of the components of this complex application, including dependencies
          like Apache ZooKeeper® that are traditionally hard to administer.\n* **Includes
          Kafka Connect** - Allows for configuration of common data sources and sinks
          to move data into and out of the Kafka cluster.\n* **Topic Management**
          - Creates and manages Kafka Topics within the cluster.\n* **User Management**
          - Creates and manages Kafka Users within the cluster.\n* **Connector Management**
          - Creates and manages Kafka Connect connectors.\n* **Includes Kafka Mirror
          Maker 1 and 2** - Allows for mirroring data between different Apache Kafka®
          clusters.\n* **Includes HTTP Kafka Bridge** - Allows clients to send and
          receive messages through an Apache Kafka® cluster via HTTP protocol.\n*
          **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing
          partition replicas according to specified goals in order to achieve the
          best cluster performance.\n* **Monitoring** - Built-in support for monitoring
          using Prometheus and provided Grafana dashboards\n### Upgrading your Clusters\nThe
          AMQ Streams Operator understands how to run and upgrade between a set of
          Kafka versions. When specifying a new version in your config, check to make
          sure you aren't using any features that may have been removed. For more
          information on upgrading, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).\n###
          Storage\nAn efficient data storage infrastructure is essential to the optimal
          performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires
          block storage. The use of file storage (for example, NFS) is not recommended.\nThe
          AMQ Streams Operator supports three types of data storage:\n* Ephemeral
          (Recommended for development only!)\n* Persistent\n* JBOD (Just a Bunch
          of Disks, suitable for Kafka only. Not supported in Zookeeper.)\nAMQ Streams
          also supports advanced operations such as adding or removing disks in Apache
          Kafka® brokers or resizing the persistent volumes (where supported by the
          infrastructure).\n### Documentation\nDocumentation for the current release
          can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).\n"
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:dacf7ddffe7cbe2dc35e7d3290637b3334117e09dde986e6eaeaceded7069fbf
        - registry.redhat.io/ubi8/openjdk-17@sha256:8796da64c626c5f63f31a4e3ac0ac3b179333a7c6d5472a195b9b3f61ccd1099
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:be7466ffd7f624f769eedca2e4106c597d2bf1d95cc9679f235e6dcdec66cfa9
        - registry.redhat.io/amq-streams/kafka-35-rhel8@sha256:fa8361e5089ab4449261f5a0ad57bd0bd059dc254b94bd9ab68340faae386947
        - registry.redhat.io/amq-streams/kafka-36-rhel8@sha256:8b10bfb697b48ba3ed246fb846384f4cc67f05f670e9521edf0f47f829869404
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:44a5c4cc3086e4eac42dc78a72b7492d13df0098017288278d9006e767a480a1
        version: 2.6.0-2
      entries:
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.6.x
    - currentCSV: amqstreams.v2.7.0-7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.7.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.7"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.7.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.7.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:671c1a2fcb0856cb208c0ead539fff9571fa2281a1e3d45b3df9ebd3df8c787e
          createdAt: "2024-03-09 21:27:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.6.0-0 <2.7.0-7'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.6.0 release, Streams supports only OCP 4.12 to 4.14!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:be9b82af13cbc120bb415abf4fcc97420e543172d6450b836c47344e4dcacd00
        - registry.redhat.io/amq-streams/kafka-36-rhel9@sha256:8890c3217343d9aa3dd2ab9c7fa1742f960b5a26e09906581ce6075e61dc2888
        - registry.redhat.io/amq-streams/kafka-37-rhel9@sha256:66362c800b78003d26df9471b7f21f5c9ad7fca8e8fd2511428dfc549cdf46c2
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:a7620559f3e5a0a4d5ecee44538619f698158847d9d0a06c7168404ed6f7cd36
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:b9dbbce235b7a4f45f42184cf0b908e91e17094e971bc29a8710f35127a6b06f
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:671c1a2fcb0856cb208c0ead539fff9571fa2281a1e3d45b3df9ebd3df8c787e
        version: 2.7.0-7
      entries:
      - name: amqstreams.v2.7.0-7
        version: 2.7.0-7
      - name: amqstreams.v2.7.0-6
        version: 2.7.0-6
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.7.x
    - currentCSV: amqstreams.v2.8.0-0-0.1738265624.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.8.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.8"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.8.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.8.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:675d4acc375fb20e1a3fd5755184a318341c15f9337a11ea41e902fcda6d0bec
          createdAt: "2024-08-22 15:19:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.7.0-0 <2.8.0-0'
          olm.substitutesFor: amqstreams.v2.8.0-0
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.8.0 release, Streams supports only OCP 4.12 to 4.14!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:b46457a0a7f63518bc12b2789f75afb0e44496e62de918b9b584129c7078de86
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:026418bae8b2d425d45b2b3481f65c241d89e25f455e3fbfcf2f79536d978bca
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:675d4acc375fb20e1a3fd5755184a318341c15f9337a11ea41e902fcda6d0bec
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:4df906cf1490922a4587d96250f3be6ff605fe2caf87dfba7b812c144c5c5774
        - registry.redhat.io/amq-streams/kafka-37-rhel9@sha256:17b2d255439f38c6ef54c0a56929ae636743b12c688d42223ac3fb58729e51ad
        - registry.redhat.io/amq-streams/kafka-38-rhel9@sha256:e771a84a458388c07ecf970ec625e4203c18e5d2bd91e7571d9c44ebb09313de
        version: 2.8.0-0+0.1738265624.p
      entries:
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.8.x
    - currentCSV: amqstreams.v2.9.3-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.9.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.9"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.9.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
          createdAt: "2024-08-22 15:19:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.5.0-0 <2.9.3-2'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.9.0 release, Streams supports only OCP 4.14 to 4.18!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:14a9fcbf0d8590e6182407c534cc207d76ffdaf6571bd6e066a8b5d2cfbe0833
        - registry.redhat.io/amq-streams/kafka-38-rhel9@sha256:f9fa8ced8078e1278e7744227979633bbe085446ce581414b3d6d49b87cb330a
        - registry.redhat.io/amq-streams/kafka-39-rhel9@sha256:f710c3db4fb289e255ebd4d8bfb2eac7a757c94a34e06fb1daecd0285d0938bc
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:f912d1c8ab83b26999b021f7c967649453b4f39928f63905adf6f827495905d0
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:813f793850f89fe48e2e627db980baddb099e7fb285fc3ebd75d73ff5ed0c0b9
        version: 2.9.3-2
      entries:
      - name: amqstreams.v2.9.3-2
        version: 2.9.3-2
      - name: amqstreams.v2.9.3-1
        version: 2.9.3-1
      - name: amqstreams.v2.9.3-0
        version: 2.9.3-0
      - name: amqstreams.v2.9.2-1
        version: 2.9.2-1
      - name: amqstreams.v2.9.2-0
        version: 2.9.2-0
      - name: amqstreams.v2.9.1-2
        version: 2.9.1-2
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.9.x
    - currentCSV: amqstreams.v2.9.3-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.9.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.9"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "pattern":"*.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.9.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.9.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
          createdAt: "2024-08-22 15:19:00"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.5.0-0 <2.9.3-2'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.9.0 release, Streams supports only OCP 4.14 to 4.18!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream * The long term, fault-tolerant storage of events * The ability for a consumer to replay streams of events * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!**
          **Direct upgrade from Streams 1.7 or earlier is not supported anymore!** You have to upgrade first to one of the previous versions of Streams. You will also need to convert the CRD resources. For more information, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Supports KRaft** - You can run your Apache Kafka clusters without Apache ZooKeeper.
          * **Tiered storage** - Offloads older, less critical data to a lower-cost, lower-performance storage tier, such as object storage.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Auto-rebalancing when scaling** - Automatically rebalance the Kafka cluster after a scale-up or before a scale-down.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for Streams for Apache Kafka on OpenShift](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:14a9fcbf0d8590e6182407c534cc207d76ffdaf6571bd6e066a8b5d2cfbe0833
        - registry.redhat.io/amq-streams/kafka-38-rhel9@sha256:f9fa8ced8078e1278e7744227979633bbe085446ce581414b3d6d49b87cb330a
        - registry.redhat.io/amq-streams/kafka-39-rhel9@sha256:f710c3db4fb289e255ebd4d8bfb2eac7a757c94a34e06fb1daecd0285d0938bc
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:f912d1c8ab83b26999b021f7c967649453b4f39928f63905adf6f827495905d0
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:813f793850f89fe48e2e627db980baddb099e7fb285fc3ebd75d73ff5ed0c0b9
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:4e2cf737e40fa20a6b763be866eb88e54553f666f82e120f1068695cebc7b100
        version: 2.9.3-2
      entries:
      - name: amqstreams.v2.9.3-2
        version: 2.9.3-2
      - name: amqstreams.v2.9.3-1
        version: 2.9.3-1
      - name: amqstreams.v2.9.3-0
        version: 2.9.3-0
      - name: amqstreams.v2.9.2-1
        version: 2.9.2-1
      - name: amqstreams.v2.9.2-0
        version: 2.9.2-0
      - name: amqstreams.v2.9.1-2
        version: 2.9.1-2
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-2.x
    - currentCSV: amqstreams.v3.0.1-7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.0.0",
                    "metadataVersion": "4.0-IV3",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.0.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.0.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:231861dd89a01b949e9713dc2b0049530643059b44ad711e3ba17509ab21564b
          createdAt: "2025-11-14T17:16:59Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.9.0-0 <3.0.1-7'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/kafka-39-rhel9@sha256:9ed77907cbed09eb66172b0d18855d723add80b18a82fcee424148bef81e1886
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:352ab87382fc1d1d3b68833a16770c75e081a0dd07788a8ba0ab9792837c628e
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:99e4a789597e567eea920004364a20c71580a2ca58fc68ffa5ec797160d174bf
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:dd27c81c5a13a01acf5c50a802ce94d737e9280cf4053a1f3739ff4c3c6ba053
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:231861dd89a01b949e9713dc2b0049530643059b44ad711e3ba17509ab21564b
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:5d1e188d3e7b12fbb1b94ed1ac58ea059609a53243ded1bee6d1f179c2b48b4a
        version: 3.0.1-7
      entries:
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-3.0.x
    - currentCSV: amqstreams.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.1.0",
                    "metadataVersion": "4.1-IV1",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
          createdAt: "2025-12-04T17:25:00Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/kafka-41-rhel9@sha256:e2a2d7a93678a4de948fc6bde45e2b251aa129a691f555c93003fef50cac1027
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:1be01356959972d6d8b4683d6449679c8705c08c13dcb0da02f96601ad6ef424
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:03051a89cc209fa54b9cf6c6119167959dcaf38761f50c8450ae3f694ccbd2d7
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:97320d4348dc793278b28345a7bb2c255bff0f1ec12a728b88789fe4b9c07f91
        version: 3.1.0-6
      entries:
      - name: amqstreams.v3.1.0-6
        version: 3.1.0-6
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-3.1.x
    - currentCSV: amqstreams.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.1.0",
                    "metadataVersion": "4.1-IV1",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
          createdAt: "2025-12-04T17:25:00Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:03051a89cc209fa54b9cf6c6119167959dcaf38761f50c8450ae3f694ccbd2d7
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:97320d4348dc793278b28345a7bb2c255bff0f1ec12a728b88789fe4b9c07f91
        - registry.redhat.io/amq-streams/kafka-41-rhel9@sha256:e2a2d7a93678a4de948fc6bde45e2b251aa129a691f555c93003fef50cac1027
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:1be01356959972d6d8b4683d6449679c8705c08c13dcb0da02f96601ad6ef424
        version: 3.1.0-6
      entries:
      - name: amqstreams.v3.1.0-6
        version: 3.1.0-6
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-3.x
    - currentCSV: amqstreams.v2.5.2-8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"Kafka",
                "metadata":{
                  "name":"my-cluster"
                },
                "spec":{
                  "kafka":{
                      "version":"3.5.0",
                      "replicas":3,
                      "listeners": [
                        {
                          "name": "plain",
                          "port": 9092,
                          "type": "internal",
                          "tls": false
                        },
                        {
                          "name": "tls",
                          "port": 9093,
                          "type": "internal",
                          "tls": true
                        }
                      ],
                      "config":{
                        "offsets.topic.replication.factor":3,
                        "transaction.state.log.replication.factor":3,
                        "transaction.state.log.min.isr":2,
                        "default.replication.factor":3,
                        "min.insync.replicas":2,
                        "inter.broker.protocol.version":"3.5"
                      },
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "zookeeper":{
                      "replicas":3,
                      "storage":{
                        "type":"ephemeral"
                      }
                  },
                  "entityOperator":{
                      "topicOperator":{
                        },
                      "userOperator":{
                        }
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaConnect",
                "metadata":{
                  "name":"my-connect-cluster"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9093",
                  "tls":{
                      "trustedCertificates":[
                        {
                            "secretName":"my-cluster-cluster-ca-cert",
                            "certificate":"ca.crt"
                        }
                      ]
                  },
                  "config": {
                      "group.id": "connect-cluster",
                      "offset.storage.topic": "connect-cluster-offsets",
                      "config.storage.topic": "connect-cluster-configs",
                      "status.storage.topic": "connect-cluster-status",
                      "config.storage.replication.factor": -1,
                      "offset.storage.replication.factor": -1,
                      "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaMirrorMaker",
                "metadata":{
                  "name":"my-mirror-maker"
                },
                "spec":{
                  "version":"3.5.0",
                  "replicas":1,
                  "consumer":{
                      "bootstrapServers":"my-source-cluster-kafka-bootstrap:9092",
                      "groupId":"my-source-group-id"
                  },
                  "producer":{
                      "bootstrapServers":"my-target-cluster-kafka-bootstrap:9092"
                  },
                  "include":".*"
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaBridge",
                "metadata":{
                  "name":"my-bridge"
                },
                "spec":{
                  "replicas":1,
                  "bootstrapServers":"my-cluster-kafka-bootstrap:9092",
                  "http":{
                      "port":8080
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaTopic",
                "metadata":{
                  "name":"my-topic",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "partitions":10,
                  "replicas":3,
                  "config":{
                      "retention.ms":604800000,
                      "segment.bytes":1073741824
                  }
                }
              },
              {
                "apiVersion":"kafka.strimzi.io/v1beta2",
                "kind":"KafkaUser",
                "metadata":{
                  "name":"my-user",
                  "labels":{
                      "strimzi.io/cluster":"my-cluster"
                  }
                },
                "spec":{
                  "authentication":{
                      "type":"tls"
                  },
                  "authorization":{
                      "type":"simple",
                      "acls":[
                        {
                            "resource":{
                              "type":"topic",
                              "name":"my-topic",
                              "patternType":"literal"
                            },
                            "operations":["Read", "Describe", "Write", "Create"],
                            "host":"*"
                        },
                        {
                            "resource":{
                              "type":"group",
                              "name":"my-group",
                              "patternType":"literal"
                            },
                            "operations":["Read"],
                            "host":"*"
                        }
                      ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version":"3.4.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "strimzi-pod-set-example"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "strimzi-pod-set-example"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "strimzi-pod-set-example"
                    }
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster with Ephemeral storage"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mirror-maker": {
                "description": "Example Kafka Mirror Maker 1 deployment"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example AMQ Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
          createdAt: "2023-07-10 21:47:00"
          description: Red Hat AMQ Streams is a massively scalable, distributed, and
            high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=2.2.0-0 <2.5.2-8'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker cluster
            displayName: Kafka Mirror Maker
            kind: KafkaMirrorMaker
            name: kafkamirrormakers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Red Hat AMQ Streams** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project. AMQ Streams provides an event streaming backbone that allows microservices and other application components to exchange data with extremely high throughput and low latency.
          **From the 2.5.2 release, AMQ Streams supports only OCP 4.12 to 4.16!
          **The core capabilities include:** * A pub/sub messaging model, similar to a traditional enterprise messaging system, in which application components publish and consume events to/from an ordered stream
          * The long term, fault-tolerant storage of events
          * The ability for a consumer to replay streams of events
          * The ability to partition topics for horizontal scalability
          ### Upgrades
          **!!! IMPORTANT !!!** **Direct upgrade from AMQ Stream 1.7 or earlier is not supported!** You have to upgrade first to one of the previous versions of AMQ Streams. You will also need to convert the CRD resources. For more information, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).

          ### Supported Features
          * **Manages the Kafka Cluster** - Deploys and manages all of the components of this complex application, including dependencies like Apache ZooKeeper® that are traditionally hard to administer.
          * **Includes Kafka Connect** - Allows for configuration of common data sources and sinks to move data into and out of the Kafka cluster.
          * **Topic Management** - Creates and manages Kafka Topics within the cluster.
          * **User Management** - Creates and manages Kafka Users within the cluster.
          * **Connector Management** - Creates and manages Kafka Connect connectors.
          * **Includes Kafka Mirror Maker 1 and 2** - Allows for mirroring data between different Apache Kafka® clusters.
          * **Includes HTTP Kafka Bridge** - Allows clients to send and receive messages through an Apache Kafka® cluster via HTTP protocol.
          * **Cluster Rebalancing** - Uses built-in Cruise Control for redistributing partition replicas according to specified goals in order to achieve the best cluster performance.
          * **Monitoring** - Built-in support for monitoring using Prometheus and provided Grafana dashboards
          ### Upgrading your Clusters
          The AMQ Streams Operator understands how to run and upgrade between a set of Kafka versions. When specifying a new version in your config, check to make sure you aren't using any features that may have been removed. For more information on upgrading, see the [documentation for AMQ Streams on OpenShift](https://access.redhat.com/documentation/en-us/red_hat_amq_streams/).
          ### Storage
          An efficient data storage infrastructure is essential to the optimal performance of Apache Kafka®. Apache Kafka® deployed via AMQ Streams requires block storage. The use of file storage (for example, NFS) is not recommended.
          The AMQ Streams Operator supports three types of data storage:
          * Ephemeral (Recommended for development only!)
          * Persistent
          * JBOD (Just a Bunch of Disks, suitable for Kafka only. Not supported in Zookeeper.)
          AMQ Streams also supports advanced operations such as adding or removing disks in Apache Kafka® brokers or resizing the persistent volumes (where supported by the infrastructure).
          ### Documentation
          Documentation for the current release can be found on the Red Hat [Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq_streams).
        displayName: AMQ Streams
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq_streams
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/ubi8/openjdk-17@sha256:8796da64c626c5f63f31a4e3ac0ac3b179333a7c6d5472a195b9b3f61ccd1099
        - registry.redhat.io/amq-streams/bridge-rhel8@sha256:4ede5eeed159bddacfe830a768bab4996003d4c57a496fc8ec9b41df916d4acc
        - registry.redhat.io/amq-streams/kafka-34-rhel8@sha256:95bc35951eb545b918114af1e92a7139e2e3323b7d054dcb2a060843c7326d28
        - registry.redhat.io/amq-streams/kafka-35-rhel8@sha256:8c7e8ccb6c2d5da32b70d9d0c3919c303ad73a25447f6993d964f7b19cca1072
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:3d5bcf889f3d534402a8bbfa51fc4a9499b7d6dfaac0d7b11e91363b379be192
        - registry.redhat.io/amq-streams/strimzi-rhel8-operator@sha256:67ba7b0280fbddd4e7281d07d5844dfd37d69aa81d71dc42fddbf91b59cd479a
        version: 2.5.2-8
      entries:
      - name: amqstreams.v2.5.2-8
        version: 2.5.2-8
      - name: amqstreams.v2.5.2-7
        version: 2.5.2-7
      - name: amqstreams.v2.5.2-6
        version: 2.5.2-6
      - name: amqstreams.v2.5.2-5
        version: 2.5.2-5
      - name: amqstreams.v2.5.2-4
        version: 2.5.2-4
      - name: amqstreams.v2.5.2-3
        version: 2.5.2-3
      - name: amqstreams.v2.5.2-2
        version: 2.5.2-2
      - name: amqstreams.v2.5.2-1
        version: 2.5.2-1
      - name: amqstreams.v2.5.2-0
        version: 2.5.2-0
      - name: amqstreams.v2.5.1-5
        version: 2.5.1-5
      - name: amqstreams.v2.5.1-4
        version: 2.5.1-4
      - name: amqstreams.v2.5.1-3
        version: 2.5.1-3
      - name: amqstreams.v2.5.1-2
        version: 2.5.1-2
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: amq-streams-lts
    - currentCSV: amqstreams.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "Kafka",
                "metadata": {
                  "name": "my-cluster",
                  "annotations": {
                    "strimzi.io/node-pools": "enabled",
                    "strimzi.io/kraft": "enabled"
                  }
                },
                "spec": {
                  "kafka": {
                    "version": "4.1.0",
                    "metadataVersion": "4.1-IV1",
                    "listeners": [
                      {
                        "name": "plain",
                        "port": 9092,
                        "type": "internal",
                        "tls": false
                      },
                      {
                        "name": "tls",
                        "port": 9093,
                        "type": "internal",
                        "tls": true
                      }
                    ],
                    "config": {
                      "offsets.topic.replication.factor": 3,
                      "transaction.state.log.replication.factor": 3,
                      "transaction.state.log.min.isr": 2,
                      "default.replication.factor": 3,
                      "min.insync.replicas": 2
                    }
                  },
                  "entityOperator": {
                    "topicOperator": {},
                    "userOperator": {}
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnect",
                "metadata": {
                  "name": "my-connect-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9093",
                  "tls": {
                    "trustedCertificates": [
                      {
                        "secretName": "my-cluster-cluster-ca-cert",
                        "pattern": "*.crt"
                      }
                    ]
                  },
                  "config": {
                    "group.id": "connect-cluster",
                    "offset.storage.topic": "connect-cluster-offsets",
                    "config.storage.topic": "connect-cluster-configs",
                    "status.storage.topic": "connect-cluster-status",
                    "config.storage.replication.factor": -1,
                    "offset.storage.replication.factor": -1,
                    "status.storage.replication.factor": -1
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaMirrorMaker2",
                "metadata": {
                  "name": "my-mm2-cluster"
                },
                "spec": {
                  "version": "4.1.0",
                  "replicas": 1,
                  "connectCluster": "cluster-b",
                  "clusters": [
                    {
                      "alias": "cluster-a",
                      "bootstrapServers": "cluster-a-kafka-bootstrap:9092"
                    },
                    {
                      "alias": "cluster-b",
                      "bootstrapServers": "cluster-b-kafka-bootstrap:9092",
                      "config": {
                        "config.storage.replication.factor": -1,
                        "offset.storage.replication.factor": -1,
                        "status.storage.replication.factor": -1
                      }
                    }
                  ],
                  "mirrors": [
                    {
                      "sourceCluster": "cluster-a",
                      "targetCluster": "cluster-b",
                      "sourceConnector": {
                        "config": {
                          "replication.factor": -1,
                          "offset-syncs.topic.replication.factor": -1,
                          "sync.topic.acls.enabled": "false"
                        }
                      },
                      "checkpointConnector": {
                        "config": {
                          "checkpoints.topic.replication.factor": -1
                        }
                      },
                      "topicsPattern": ".*",
                      "groupsPattern": ".*"
                    }
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaBridge",
                "metadata": {
                  "name": "my-bridge"
                },
                "spec": {
                  "replicas": 1,
                  "bootstrapServers": "my-cluster-kafka-bootstrap:9092",
                  "http": {
                    "port": 8080
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "my-topic",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "partitions": 10,
                  "replicas": 3,
                  "config": {
                    "retention.ms": 604800000,
                    "segment.bytes": 1073741824
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaUser",
                "metadata": {
                  "name": "my-user",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "authentication": {
                    "type": "tls"
                  },
                  "authorization": {
                    "type": "simple",
                    "acls": [
                      {
                        "resource": {
                          "type": "topic",
                          "name": "my-topic",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read",
                          "Describe",
                          "Write",
                          "Create"
                        ],
                        "host": "*"
                      },
                      {
                        "resource": {
                          "type": "group",
                          "name": "my-group",
                          "patternType": "literal"
                        },
                        "operations": [
                          "Read"
                        ],
                        "host": "*"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaConnector",
                "metadata": {
                  "name": "my-source-connector",
                  "labels": {
                    "strimzi.io/cluster": "my-connect-cluster"
                  }
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSourceConnector",
                  "tasksMax": 1,
                  "config": {
                    "file": "/opt/kafka/LICENSE",
                    "topic": "my-topic"
                  }
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaRebalance",
                "metadata": {
                  "name": "my-rebalance",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "goals": [
                    "CpuCapacityGoal",
                    "NetworkInboundCapacityGoal",
                    "DiskCapacityGoal",
                    "RackAwareGoal",
                    "MinTopicLeadersPerBrokerGoal",
                    "NetworkOutboundCapacityGoal",
                    "ReplicaCapacityGoal"
                  ]
                }
              },
              {
                "apiVersion": "kafka.strimzi.io/v1beta2",
                "kind": "KafkaNodePool",
                "metadata": {
                  "name": "my-pool",
                  "labels": {
                    "strimzi.io/cluster": "my-cluster"
                  }
                },
                "spec": {
                  "replicas": 3,
                  "roles": [
                    "broker"
                  ],
                  "storage": {
                    "type": "jbod",
                    "volumes": [
                      {
                        "id": 0,
                        "type": "persistent-claim",
                        "size": "100Gi",
                        "deleteClaim": false
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "core.strimzi.io/v1beta2",
                "kind": "StrimziPodSet",
                "metadata": {
                  "name": "my-podset"
                },
                "spec": {
                  "pods": [
                    {
                      "apiVersion": "v1",
                      "kind": "Pod",
                      "metadata": {
                        "labels": {
                          "app": "my-podset"
                        },
                        "name": "example-pod"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              3600
                            ],
                            "image": "busybox:latest",
                            "imagePullPolicy": "IfNotPresent",
                            "name": "busybox"
                          }
                        ]
                      }
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app": "my-podset"
                    }
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "my-cluster": {
                "description": "Example Kafka cluster (to be used together with KafkaNodePool)"
              },
              "my-connect-cluster": {
                "description": "Example Kafka Connect cluster"
              },
              "my-mm2-cluster": {
                "description": "Example Kafka Mirror Maker 2 deployment"
              },
              "my-bridge": {
                "description": "Example Streams Kafka HTTP Bridge deployment"
              },
              "my-topic": {
                "description": "Example KafkaTopic custom resource"
              },
              "my-user": {
                "description": "Example KafkaUser custom resource"
              },
              "my-source-connector": {
                "description": "Example Kafka Connect source connector"
              },
              "my-rebalance": {
                "description": "Example Cruise Control rebalance request"
              },
              "my-pool": {
                "description": "Example KafkaNodePool custom resource"
              },
              "my-podset": {
                "description": "Example StrimziPodSet custom resource"
              }
            }
          capabilities: Deep Insights
          categories: Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
          createdAt: "2025-12-04T17:25:00Z"
          description: Streams for Apache Kafka is a massively scalable, distributed,
            and high performance data streaming platform based on Apache Kafka®.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/internal-objects: '["strimzipodsets.core.strimzi.io"]'
          repository: https://github.com/strimzi/strimzi-kafka-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Kafka cluster
            displayName: Kafka
            kind: Kafka
            name: kafkas.kafka.strimzi.io
            version: v1beta2
          - description: Represents a pool of Kafka brokers
            displayName: Kafka Node Pool
            kind: KafkaNodePool
            name: kafkanodepools.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Connect cluster
            displayName: Kafka Connect
            kind: KafkaConnect
            name: kafkaconnects.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka Bridge cluster
            displayName: Kafka Bridge
            kind: KafkaBridge
            name: kafkabridges.kafka.strimzi.io
            version: v1beta2
          - description: Represents a topic inside a Kafka cluster
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.kafka.strimzi.io
            version: v1beta2
          - description: Represents a user inside a Kafka cluster
            displayName: Kafka User
            kind: KafkaUser
            name: kafkausers.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Connector inside a Kafka Connect cluster
            displayName: Kafka Connector
            kind: KafkaConnector
            name: kafkaconnectors.kafka.strimzi.io
            version: v1beta2
          - description: Represents a Kafka MirrorMaker 2 cluster
            displayName: Kafka MirrorMaker 2
            kind: KafkaMirrorMaker2
            name: kafkamirrormaker2s.kafka.strimzi.io
            version: v1beta2
          - description: Triggeres rebalance of replicas in a Kafka cluster
            displayName: Kafka Rebalance
            kind: KafkaRebalance
            name: kafkarebalances.kafka.strimzi.io
            version: v1beta2
          - description: Internal custom resource used to manage Strimzi pods
            displayName: Strimzi Pod Set
            kind: StrimziPodSet
            name: strimzipodsets.core.strimzi.io
            version: v1beta2
        description: |
          **Streams for Apache Kafka** is a massively scalable, distributed, and high performance data streaming platform based on the Apache Kafka® project.

          It provides an event streaming backbone that enables microservices and other application components to exchange data with extremely high throughput and low latency.

          > NOTE: For supported OpenShift versions, see the latest [Streams for Apache Kafka on OpenShift Release Notes](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/).

          ***

          ### Core Capabilities

          * **Pub/sub messaging** – Delivers high-throughput, low-latency event streams.
          * **Durable storage** – Replicates data for fault tolerance and long-term retention.
          * **Replay support** – Replays past messages from persistent storage.
          * **Horizontal scaling** – Distributes processing using partitioned topics.

          ***

          ### Key Features

          * **Manage Kafka clusters** – Deploy, scale, and upgrade Kafka and its components.
          * **Manage topics, users, and connectors** – Create and configure Kafka resources.
          * **Integrate with Kafka Connect** – Move data between Kafka and external systems.
          * **Mirror with MirrorMaker 2** – Replicate data across Kafka clusters.
          * **Bridge with HTTP Kafka Bridge** – Send and receive Kafka messages over HTTP.
          * **Offload data with tiered storage** – Store older data in low-cost object storage.
          * **Optimize with Cruise Control** – Rebalance clusters based on performance goals.
          * **Auto-rebalance on scale** – Trigger rebalancing during scale-up or scale-down.
          * **Monitor with built-in tools** – Export metrics to Prometheus and visualize with Grafana.

          ***

          ### Upgrades

          Kafka is KRaft-only starting with version 4.0.
          As a result, **Streams for Apache Kafka 2.9** was the last version that supported Kafka clusters using ZooKeeper.

          > **Important:** To upgrade from versions earlier than **2.7**, first upgrade to a **2.7–2.9** release and complete the migration to KRaft. For migration steps, refer to the [Streams for Apache Kafka on OpenShift documentation](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/) for version **2.9**.

          **Upgrade Options**

          * **Incremental upgrade** – Move between consecutive minor versions.
          * **Multi-version upgrade** – Skip one or more minor versions between [Long-Term Support (LTS) releases](https://access.redhat.com/articles/6975608) by switching to a version-specific channel and manually upgrading Kafka using the `Kafka` resource.

          > **Note:** Multi-version upgrades are **not supported in the deprecated LTS channel (`amq-streams-lts`)**. No new LTS versions are being added. Use version-specific channels for future LTS-to-LTS upgrades.

          **Recommendation:** Always test upgrades in a controlled environment before applying them in production.

          ***

          ### Storage

          Kafka requires **block storage** for performance.
          File storage, such as NFS, is **not recommended**.

          Supported storage types:

          * **Ephemeral** (for development)
          * **Persistent**
          * **JBOD**

          Streams for Apache Kafka supports advanced storage operations:

          * Adding/removing broker disks
          * Resizing persistent volumes (if supported by infrastructure)

          ***

          ### Documentation

          Documentation for the current release can be found on the [Red Hat Documentation site](https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka).
        displayName: Streams for Apache Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - messaging
        - kafka-connect
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/amq-streams/strimzi-operator-bundle@sha256:58876879728eec69e87ec6696b8f44d512f1fa11babec64739108d0a1ba9caf3
        - registry.redhat.io/amq-streams/strimzi-rhel9-operator@sha256:45574bbe7b099d146bd554187e6a69efa5d2c2655fa27d4d3f775b04e9441e0c
        - registry.redhat.io/amq-streams/bridge-rhel9@sha256:03051a89cc209fa54b9cf6c6119167959dcaf38761f50c8450ae3f694ccbd2d7
        - registry.redhat.io/amq-streams/kafka-40-rhel9@sha256:97320d4348dc793278b28345a7bb2c255bff0f1ec12a728b88789fe4b9c07f91
        - registry.redhat.io/amq-streams/kafka-41-rhel9@sha256:e2a2d7a93678a4de948fc6bde45e2b251aa129a691f555c93003fef50cac1027
        - registry.redhat.io/amq-streams/maven-builder-rhel9@sha256:1be01356959972d6d8b4683d6449679c8705c08c13dcb0da02f96601ad6ef424
        version: 3.1.0-6
      entries:
      - name: amqstreams.v3.1.0-6
        version: 3.1.0-6
      - name: amqstreams.v3.0.1-7
        version: 3.0.1-7
      - name: amqstreams.v3.0.1-3
        version: 3.0.1-3
      - name: amqstreams.v3.0.1-2
        version: 3.0.1-2
      - name: amqstreams.v3.0.1-1
        version: 3.0.1-1
      - name: amqstreams.v3.0.0-13
        version: 3.0.0-13
      - name: amq-streams.v3.0.0-9
        version: 3.0.0-9
      - name: amqstreams.v2.9.1-1
        version: 2.9.1-1
      - name: amqstreams.v2.9.1-0
        version: 2.9.1-0
      - name: amqstreams.v2.8.0-0-0.1738265624.p
        version: 2.8.0-0+0.1738265624.p
      - name: amqstreams.v2.8.0-0
        version: 2.8.0-0
      - name: amqstreams.v2.7.0-5
        version: 2.7.0-5
      - name: amqstreams.v2.7.0-4
        version: 2.7.0-4
      - name: amqstreams.v2.7.0-3
        version: 2.7.0-3
      - name: amqstreams.v2.7.0-2
        version: 2.7.0-2
      - name: amqstreams.v2.7.0-1
        version: 2.7.0-1
      - name: amqstreams.v2.7.0-0
        version: 2.7.0-0
      - name: amqstreams.v2.6.0-2
        version: 2.6.0-2
      - name: amqstreams.v2.6.0-1
        version: 2.6.0-1
      - name: amqstreams.v2.6.0-0
        version: 2.6.0-0
      - name: amqstreams.v2.5.1-1
        version: 2.5.1-1
      - name: amqstreams.v2.5.1-0
        version: 2.5.1-0
      - name: amqstreams.v2.5.0-1
        version: 2.5.0-1
      - name: amqstreams.v2.5.0-0
        version: 2.5.0-0
      name: stable
    defaultChannel: stable
    packageName: amq-streams
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Automotive SIG CentOS
      provider-url: ""
    name: automotive-infra
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: automotive-infra.v0.0.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "automotive.sig.centos.org/v1",
                "kind": "ContainerBuild",
                "metadata": {
                  "name": "cb-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "automotive.sig.centos.org/v1",
                "kind": "ImageBuild",
                "metadata": {
                  "name": "imagebuild-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "automotive.sig.centos.org/v1",
                "kind": "OperatorConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "automotive-infra"
                  },
                  "name": "operatorconfig-sample",
                  "namespace": "automotive-infra-operator"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/fedora-sig-robotics/infra-ci-operator:v0.0.10
          createdAt: "2025-03-31T14:06:33Z"
          description: Streamline CI/CD for RHIVOS and its ecosystem using OpenShift
            Pipelines
          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: "true"
          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"
          operatorframework.io/suggested-namespace: automotive-infra-operator
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://gitlab.com/fedora/sigs/robotics/infra/infra-ci-operator
          support: https://gitlab.com/fedora/sigs/robotics/infra/infra-ci-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Client
            name: clients.jumpstarter.dev
            version: v1alpha1
          - kind: ContainerBuild
            name: containerbuilds.automotive.sig.centos.org
            version: v1
          - kind: ExporterAccessPolicy
            name: exporteraccesspolicies.jumpstarter.dev
            version: v1alpha1
          - kind: Exporter
            name: exporters.jumpstarter.dev
            version: v1alpha1
          - kind: ImageBuild
            name: imagebuilds.automotive.sig.centos.org
            version: v1
          - kind: Lease
            name: leases.jumpstarter.dev
            version: v1alpha1
          - kind: OperatorConfig
            name: operatorconfigs.automotive.sig.centos.org
            version: v1
        description: This operator is designed to streamline CI/CD for RHIVOS and
          its ecosystem using OpenShift Pipelines
        displayName: Automotive-CI
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Automotive
        - RHIVOS
        - Pipelines
        - CI
        links:
        - name: Automotive infra Operator
          url: https://gitlab.com/fedora/sigs/robotics/infra/infra-ci-operator
        maintainers:
        - email: automotive-sig@lists.centos.org
          name: Automotive SIG CentOS Community
        maturity: alpha
        provider:
          name: Automotive SIG CentOS
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/community-operator-pipeline-prod/automotive-infra@sha256:6d4180ff6899d4de8ba2cd4a06ece234bbd8f0ec1bd0b4b0ae4b7a0c047121da
        - quay.io/fedora-sig-robotics/infra-ci-operator:v0.0.10
        version: 0.0.10
      entries:
      - name: automotive-infra.v0.0.10
        version: 0.0.10
      - name: automotive-infra.v0.0.9
        version: 0.0.9
      - name: automotive-infra.v0.0.8
        version: 0.0.8
      - name: automotive-infra.v0.0.7
        version: 0.0.7
      - name: automotive-infra.v0.0.6
        version: 0.0.6
      - name: automotive-infra.v0.0.5
        version: 0.0.5
      - name: automotive-infra.v0.0.4
        version: 0.0.4
      - name: automotive-infra.v0.0.3
        version: 0.0.3
      - name: automotive-infra.v0.0.2
        version: 0.0.2
      - name: automotive-infra.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: automotive-infra
    provider:
      name: Automotive SIG CentOS
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-documentdb-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-documentdb-controller.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "documentdb.services.k8s.aws/v1alpha1",
                "kind": "DBCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "documentdb.services.k8s.aws/v1alpha1",
                "kind": "DBInstance",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "documentdb.services.k8s.aws/v1alpha1",
                "kind": "DBSubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/documentdb-controller:1.2.1
          createdAt: "2025-12-18T20:33:13Z"
          description: AWS DocumentDB controller is a service controller for managing
            DocumentDB resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DBCluster represents the state of an AWS documentdb DBCluster
              resource.
            displayName: DBCluster
            kind: DBCluster
            name: dbclusters.documentdb.services.k8s.aws
            version: v1alpha1
          - description: DBInstance represents the state of an AWS documentdb DBInstance
              resource.
            displayName: DBInstance
            kind: DBInstance
            name: dbinstances.documentdb.services.k8s.aws
            version: v1alpha1
          - description: DBSubnetGroup represents the state of an AWS documentdb DBSubnetGroup
              resource.
            displayName: DBSubnetGroup
            kind: DBSubnetGroup
            name: dbsubnetgroups.documentdb.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon DocumentDB resources in AWS from within your Kubernetes cluster.

          **About Amazon DocumentDB**

          Amazon DocumentDB (with MongoDB compatibility) is a fast, reliable, and fully managed database service. Amazon DocumentDB makes it easy to set up, operate, and scale MongoDB-compatible databases in the cloud. With Amazon DocumentDB, you can run the same application code and use the same drivers and tools that you use with MongoDB.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon DocumentDB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - documentdb
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon DocumentDB Developer Resources
          url: https://aws.amazon.com/documentdb/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: documentdb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-documentdb-controller@sha256:07abf00bafb1d030c19d608f4ebb30d0cb9e72ab639a241034ceceefe4599715
        - public.ecr.aws/aws-controllers-k8s/documentdb-controller:1.2.1
        version: 1.2.1
      entries:
      - name: ack-documentdb-controller.v1.2.1
        version: 1.2.1
      - name: ack-documentdb-controller.v1.2.0
        version: 1.2.0
      - name: ack-documentdb-controller.v1.1.2
        version: 1.1.2
      - name: ack-documentdb-controller.v1.1.1
        version: 1.1.1
      - name: ack-documentdb-controller.v1.1.0
        version: 1.1.0
      - name: ack-documentdb-controller.v1.0.14
        version: 1.0.14
      - name: ack-documentdb-controller.v1.0.13
        version: 1.0.13
      - name: ack-documentdb-controller.v1.0.12
        version: 1.0.12
      - name: ack-documentdb-controller.v1.0.11
        version: 1.0.11
      - name: ack-documentdb-controller.v1.0.10
        version: 1.0.10
      - name: ack-documentdb-controller.v1.0.9
        version: 1.0.9
      - name: ack-documentdb-controller.v1.0.7
        version: 1.0.7
      - name: ack-documentdb-controller.v1.0.6
        version: 1.0.6
      - name: ack-documentdb-controller.v1.0.5
        version: 1.0.5
      - name: ack-documentdb-controller.v1.0.2
        version: 1.0.2
      - name: ack-documentdb-controller.v1.0.1
        version: 1.0.1
      - name: ack-documentdb-controller.v1.0.0
        version: 1.0.0
      - name: ack-documentdb-controller.v0.0.9
        version: 0.0.9
      - name: ack-documentdb-controller.v0.0.8
        version: 0.0.8
      - name: ack-documentdb-controller.v0.0.6
        version: 0.0.6
      name: alpha
    defaultChannel: alpha
    packageName: ack-documentdb-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat HPC Community
      provider-url: ""
    name: slurm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: slurm-operator.v0.4.1-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "Accounting",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1"
                  },
                  "name": "slurm",
                  "namespace": "slurm"
                },
                "spec": {
                  "initconf": {
                    "image": "ghcr.io/slinkyproject/sackd:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "jwtHs256KeyRef": {
                    "key": "jwt_hs256.key",
                    "name": "slurm-auth-jwths256"
                  },
                  "slurmKeyRef": {
                    "key": "slurm.key",
                    "name": "slurm-auth-slurm"
                  },
                  "slurmdbd": {
                    "args": [],
                    "image": "ghcr.io/slinkyproject/slurmdbd:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "storageConfig": {
                    "database": "slurm_acct_db",
                    "host": "mariadb",
                    "passwordKeyRef": {
                      "key": "password",
                      "name": "mariadb-password"
                    },
                    "port": 3306,
                    "username": "slurm"
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": []
                    }
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "Controller",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1"
                  },
                  "name": "slurm",
                  "namespace": "slurm"
                },
                "spec": {
                  "accountingRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "epilogScriptRefs": null,
                  "extraConf": "PartitionName=all Nodes=ALL Default=YES MaxTime=UNLIMITED State=UP\n",
                  "jwtHs256KeyRef": {
                    "key": "jwt_hs256.key",
                    "name": "slurm-auth-jwths256"
                  },
                  "logfile": {
                    "image": "docker.io/library/alpine:latest",
                    "resources": {}
                  },
                  "persistence": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "enabled": true,
                    "resources": {
                      "requests": {
                        "storage": "4Gi"
                      }
                    }
                  },
                  "prologScriptRefs": null,
                  "reconfigure": {
                    "image": "ghcr.io/slinkyproject/slurmctld:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "slurmKeyRef": {
                    "key": "slurm.key",
                    "name": "slurm-auth-slurm"
                  },
                  "slurmctld": {
                    "args": [],
                    "image": "ghcr.io/slinkyproject/slurmctld:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": []
                    }
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "LoginSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1",
                    "loginset.slinky.slurm.net/name": "slurm-login-slinky"
                  },
                  "name": "slurm-login-slinky",
                  "namespace": "slurm"
                },
                "spec": {
                  "controllerRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "login": {
                    "env": [],
                    "image": "ghcr.io/slinkyproject/login:25.05-ubuntu24.04",
                    "resources": {},
                    "securityContext": {
                      "privileged": true
                    },
                    "volumeMounts": []
                  },
                  "replicas": 1,
                  "service": {
                    "spec": {
                      "type": "LoadBalancer"
                    }
                  },
                  "sssdConfRef": {
                    "key": "sssd.conf",
                    "name": "slurm-login-slinky-sssd-conf"
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1",
                        "loginset.slinky.slurm.net/name": "slurm-login-slinky"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": [],
                      "volumes": []
                    }
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "NodeSet",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1",
                    "nodeset.slinky.slurm.net/name": "slurm-worker-slinky"
                  },
                  "name": "slurm-worker-slinky",
                  "namespace": "slurm"
                },
                "spec": {
                  "controllerRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "logfile": {
                    "image": "docker.io/library/alpine:latest",
                    "resources": {}
                  },
                  "partition": {
                    "enabled": true
                  },
                  "replicas": 1,
                  "slurmd": {
                    "args": [],
                    "env": [
                      {
                        "name": "POD_CPUS",
                        "value": "0"
                      },
                      {
                        "name": "POD_MEMORY",
                        "value": "0"
                      }
                    ],
                    "image": "ghcr.io/slinkyproject/slurmd:25.05-ubuntu24.04",
                    "resources": {},
                    "volumeMounts": []
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1",
                        "nodeset.slinky.slurm.net/name": "slurm-worker-slinky"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "hostname": "slinky-",
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": [],
                      "volumes": []
                    }
                  },
                  "updateStrategy": {
                    "rollingUpdate": {
                      "maxUnavailable": "100%"
                    },
                    "type": "RollingUpdate"
                  }
                }
              },
              {
                "apiVersion": "slinky.slurm.net/v1alpha1",
                "kind": "RestApi",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "Helm",
                    "app.kubernetes.io/part-of": "slurm",
                    "app.kubernetes.io/version": "25.05",
                    "helm.sh/chart": "slurm-0.4.1"
                  },
                  "name": "slurm",
                  "namespace": "slurm"
                },
                "spec": {
                  "controllerRef": {
                    "name": "slurm",
                    "namespace": "slurm"
                  },
                  "replicas": 1,
                  "slurmrestd": {
                    "args": [],
                    "env": [],
                    "image": "ghcr.io/slinkyproject/slurmrestd:25.05-ubuntu24.04",
                    "resources": {}
                  },
                  "template": {
                    "metadata": {
                      "labels": {
                        "app.kubernetes.io/managed-by": "Helm",
                        "app.kubernetes.io/part-of": "slurm",
                        "app.kubernetes.io/version": "25.05",
                        "helm.sh/chart": "slurm-0.4.1"
                      }
                    },
                    "spec": {
                      "affinity": {},
                      "imagePullSecrets": null,
                      "initContainers": [],
                      "nodeSelector": {
                        "kubernetes.io/os": "linux"
                      },
                      "priorityClassName": null,
                      "tolerations": []
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, Big Data
          certified: "false"
          containerImage: ghcr.io/slinkyproject/slurm-operator:0.4.0
          createdAt: "2025-10-29T12:41:12Z"
          description: Run Slurm on Kubernetes, by SchedMD. A Slinky project.
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "slinky",
                "labels": {
                  "pod-security.kubernetes.io/enforce": "privileged",
                  "pod-security.kubernetes.io/audit": "privileged",
                  "pod-security.kubernetes.io/warn": "privileged",
                },
                "annotations": {
                  "openshift.io/node-selector": ""
                },
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/redhat-hpc/slinky-on-openshift
          support: SchedMD
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Accounting is the Schema for the accountings API
            displayName: Accounting
            kind: Accounting
            name: accountings.slinky.slurm.net
            version: v1alpha1
          - description: Controller is the Schema for the controllers API
            displayName: Controller
            kind: Controller
            name: controllers.slinky.slurm.net
            version: v1alpha1
          - description: A set of homogeneous login nodes (submit node, jump host)
              for Slurm, which manage user identity via SSSD.
            displayName: LoginSet
            kind: LoginSet
            name: loginsets.slinky.slurm.net
            version: v1alpha1
          - description: A set of homogeneous Slurm workers (compute nodes), which
              are delegated to execute the Slurm workload.
            displayName: NodeSet
            kind: NodeSet
            name: nodesets.slinky.slurm.net
            version: v1alpha1
          - description: Restapi is the Schema for the restapis API
            displayName: RestAPI
            kind: RestApi
            name: restapis.slinky.slurm.net
            version: v1alpha1
          - description: Token CRD to define a secret containing a JWT, generated
              from an HS256 Key
            displayName: Token
            kind: Token
            name: tokens.slinky.slurm.net
            version: v1alpha1
        description: |
          # Kubernetes Operator for Slurm Clusters

          Run [Slurm] on [Kubernetes], by [SchedMD]. A [Slinky] project.

          ## Overview

          [Slurm] and [Kubernetes] are workload managers originally designed for different
          kinds of workloads. In broad strokes: Kubernetes excels at scheduling workloads
          that typically run for an indefinite amount of time, with potentially vague
          resource requirements, on a single node, with loose policy, but can scale its
          resource pool infinitely to meet demand; Slurm excels at quickly scheduling
          workloads that run for a finite amount of time, with well defined resource
          requirements and topology, on multiple nodes, with strict policy, but its
          resource pool is known.

          This project enables the best of both workload managers, unified on Kubernetes.
          It contains a [Kubernetes] operator to deploy and manage certain components of
          [Slurm] clusters. This repository implements [custom-controllers] and
          [custom resource definitions (CRDs)][crds] designed for the lifecycle (creation,
          upgrade, graceful shutdown) of Slurm clusters.

          ### Slurm Cluster

          Slurm clusters are very flexible and can be configured in various ways. Our
          Slurm helm chart provides a reference implementation that is highly customizable
          and tries to expose everything Slurm has to offer.

          ## Features

          ### NodeSets

          A set of homogeneous Slurm workers (compute nodes), which are delegated to
          execute the Slurm workload.

          The operator will take into consideration the running workload among Slurm nodes
          as it needs to scale-in, upgrade, or otherwise handle node failures. Slurm nodes
          will be marked as [drain][slurm-drain] before their eventual termination pending
          scale-in or upgrade.

          Slurm node states (e.g. Idle, Allocated, Mixed, Down, Drain, Not Responding,
          etc...) are applied to each NodeSet pod via their pod conditions; each NodeSet
          pod contains a pod status that reflects their own Slurm node state.

          The operator supports NodeSet scale to zero, scaling the resource down to zero
          replicas. Hence, any Horizontal Pod Autoscaler (HPA) that also support scale to
          zero can be best paired with NodeSets.

          ### LoginSets

          A set of homogeneous login nodes (submit node, jump host) for Slurm, which
          manage user identity via SSSD.

          The operator supports LoginSet scale to zero, scaling the resource down to zero
          replicas. Hence, any Horizontal Pod Autoscaler (HPA) that also support scale to
          zero can be best paired with LoginSets.

          ### Hybrid Support

          Sometimes a Slurm cluster has some, but not all, of its components in
          Kubernetes. The operator and its CRD are designed support these use cases.

          ### Slurm

          Slurm is a full featured HPC workload manager. To highlight a few features:

          - [**Accounting**][slurm-accounting]: collect accounting information for every
            job and job step executed.
          - [**Partitions**][slurm-arch]: job queues with sets of resources and
            constraints (e.g. job size limit, job time limit, users permitted).
          - [**Reservations**][slurm-reservations]: reserve resources for jobs being
            executed by select users and/or select accounts.
          - [**Job Dependencies**][slurm-dependency]: defer the start of jobs until the
            specified dependencies have been satisfied.
          - [**Job Containers**][slurm-containers]: jobs which run an unprivileged OCI
            container bundle.
          - [**MPI**][slurm-mpi]: launch parallel MPI jobs, supports various MPI
            implementations.
          - [**Priority**][slurm-priority]: assigns priorities to jobs upon submission and
            on an ongoing basis (e.g. as they age).
          - [**Preemption**][slurm-preempt]: stop one or more low-priority jobs to let a
            high-priority job run.
          - [**QoS**][slurm-qos]: sets of policies affecting scheduling priority,
            preemption, and resource limits.
          - [**Fairshare**][slurm-fairshare]: distribute resources equitably among users
            and accounts based on historical usage.
          - [**Node Health Check**][slurm-healthcheck]: periodically check node health via
            script.

          ## Compatibility

          | Software   |                             Minimum Version                              |
          | :--------- | :----------------------------------------------------------------------: |
          | Kubernetes | [v1.29](https://kubernetes.io/blog/2023/12/13/kubernetes-v1-29-release/) |
          | Slurm      | [25.05](https://www.schedmd.com/slurm-version-25-05-0-is-now-available/) |

          ## Documentation

          Project documentation is located in the docs directory of [this repository](https://github.com/SlinkyProject/slurm-operator)

          There is also supplemental work in the community for enabling [Slinky On OpenShift](https://github.com/redhat-hpc/slinky-on-openshift)

          ## Support and Development

          Feature requests, code contributions, and bug reports are welcome!

          Github/Gitlab submitted issues and PRs/MRs are handled on a best effort basis.

          The SchedMD official issue tracker is at <https://support.schedmd.com/>.

          To schedule a demo or simply to reach out, please
          [contact SchedMD][contact-schedmd].

          ## License

          Copyright (C) SchedMD LLC.

          Licensed under the
          [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0) you
          may not use project except in compliance with the license.

          Unless required by applicable law or agreed to in writing, software distributed
          under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
          CONDITIONS OF ANY KIND, either express or implied. See the License for the
          specific language governing permissions and limitations under the License.

          <!-- links -->


          [cert-manager]: https://cert-manager.io/docs/installation/helm/
          [contact-schedmd]: https://www.schedmd.com/slurm-resources/contact-schedmd/
          [crds]: https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#customresourcedefinitions
          [custom-controllers]: https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#custom-controllers

          [kubernetes]: https://kubernetes.io/
          [schedmd]: https://schedmd.com/
          [slinky]: https://slinky.ai/
          [slinky-docs]: https://slinky.schedmd.com/
          [slurm]: https://slurm.schedmd.com/overview.html
          [slurm-accounting]: https://slurm.schedmd.com/accounting.html
          [slurm-arch]: https://slurm.schedmd.com/quickstart.html#arch
          [slurm-containers]: https://slurm.schedmd.com/containers.html
          [slurm-dependency]: https://slurm.schedmd.com/sbatch.html#OPT_dependency

          [slurm-drain]: https://slurm.schedmd.com/scontrol.html#OPT_DRAIN
          [slurm-fairshare]: https://slurm.schedmd.com/fair_tree.html
          [slurm-healthcheck]: https://slurm.schedmd.com/slurm.conf.html#OPT_HealthCheckProgram
          [slurm-mpi]: https://slurm.schedmd.com/mpi_guide.html
          [slurm-preempt]: https://slurm.schedmd.com/preempt.html
          [slurm-priority]: https://slurm.schedmd.com/priority_multifactor.html
          [slurm-qos]: https://slurm.schedmd.com/qos.html
          [slurm-reservations]: https://slurm.schedmd.com/reservations.html
        displayName: Slurm Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - slurm-operator
        - slurm
        - slinky
        links:
        - name: Slinky on OpenShift
          url: https://github.com/redhat-hpc/slinky-on-openshift
        - name: Slurm Operator
          url: https://github.com/SlinkyProject/slurm-operator
        maintainers:
        - email: jkincl@redhat.com
          name: Jason Kincl
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: Red Hat HPC Community
        relatedImages:
        - quay.io/community-operator-pipeline-prod/slurm-operator:0.4.1-1
        - ghcr.io/slinkyproject/slurm-operator-webhook:0.4.1
        - ghcr.io/slinkyproject/slurm-operator:0.4.1
        version: 0.4.1-1
      entries:
      - name: slurm-operator.v0.4.1-1
        version: 0.4.1-1
      - name: slurm-operator.v0.4.0
        version: 0.4.0
      name: alpha
    defaultChannel: alpha
    packageName: slurm-operator
    provider:
      name: Red Hat HPC Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: gcp-filestore-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gcp-filestore-csi-driver-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9-operator@sha256:8ddda9375e180daf57f1e526bdddf91b05e736afdab4b7a29add258786cf98be
          createdAt: "2021-07-14T00:00:00Z"
          description: Install and configure GCP Filestore CSI driver.
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=4.11.0-0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/gcp-filestore-csi-driver-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          Operator that installs and configures the CSI driver for GCP Filestore.
        displayName: GCP Filestore CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - filestore
        links:
        - name: Documentation
          url: https://github.com/openshift/gcp-filestore-csi-driver-operator
        - name: Source Repository
          url: https://github.com/openshift/gcp-filestore-csi-driver-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:8fc19f983ecc4fae38123f2f27ce435516f203c57eba04d43c4dc92ebed60a01
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9-operator@sha256:8ddda9375e180daf57f1e526bdddf91b05e736afdab4b7a29add258786cf98be
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-rhel9@sha256:2e146263311f096251110baa0a88bc49b73d76effe5d1bcc4f2b8d1230206090
        - registry.redhat.io/openshift4/ose-gcp-filestore-csi-driver-operator-bundle@sha256:a7ddfc685797cc2f2d26366b6573fb46285097adaf0727198cf19e91c8dc5531
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        version: 4.20.0-202512081147
      entries:
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: gcp-filestore-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: gcp-filestore-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-multicluster-orchestrator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-multicluster-orchestrator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multicluster.odf.openshift.io/v1alpha1",
                "kind": "MirrorPeer",
                "metadata": {
                  "name": "mirrorpeer-sample"
                },
                "spec": {
                  "items": [
                    {
                      "clusterName": "local-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    },
                    {
                      "clusterName": "spoke-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    }
                  ],
                  "manageS3": false,
                  "schedulingIntervals": [
                    "5m"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          console.openshift.io/plugins: '["odf-multicluster-console"]'
          createdAt: "2025-12-18T07:59:46Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MirrorPeer is the Schema for the mirrorpeers API
            displayName: Mirror Peer
            kind: MirrorPeer
            name: mirrorpeers.multicluster.odf.openshift.io
            version: v1alpha1
        description: |
          Orchestrator for OpenShift Data Foundation clusters running across multiple OpenShift clusters.
          It uses Red Hat Advanced Cluster Management for Kubernetes as the multicluster control plane.
        displayName: ODF Multicluster Orchestrator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odf
        - multicluster
        - orchestrator
        - storage
        - acm
        links:
        - name: ODF Multicluster Orchestrator
          url: https://github.com/red-hat-storage/odf-multicluster-orchestrator
        maintainers:
        - email: uchapaga@redhat.com
          name: Umanga Chapagain
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-multicluster-operator-bundle@sha256:2041de7d28a07fbc593ef975b59fb9470b5a13070d4eff9ae225c6180b3f9417
        - registry.redhat.io/odf4/odf-multicluster-console-rhel9@sha256:0d937371ad5b44f668e96d35b2fbfe189b72f5ec89ab55faea9359c92d1026ab
        - registry.redhat.io/odf4/odf-multicluster-rhel9-operator@sha256:635869f91d1c5be205545396abf0d6d8c6b2a4efedfb2a3d10f97a9f13b936d2
        version: 4.19.9-rhodf
      entries:
      - name: odf-multicluster-orchestrator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-multicluster-orchestrator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-multicluster-orchestrator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-multicluster-orchestrator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-multicluster-orchestrator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-multicluster-orchestrator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-multicluster-orchestrator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-multicluster-orchestrator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-multicluster-orchestrator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-multicluster-orchestrator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-multicluster-orchestrator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "multicluster.odf.openshift.io/v1alpha1",
                "kind": "MirrorPeer",
                "metadata": {
                  "name": "mirrorpeer-sample"
                },
                "spec": {
                  "items": [
                    {
                      "clusterName": "local-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    },
                    {
                      "clusterName": "spoke-cluster",
                      "storageClusterRef": {
                        "name": "ocs-storagecluster",
                        "namespace": "openshift-storage"
                      }
                    }
                  ],
                  "manageS3": false,
                  "schedulingIntervals": [
                    "5m"
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          console.openshift.io/plugins: '["odf-multicluster-console"]'
          createdAt: "2025-12-18T07:47:53Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: MirrorPeer is the Schema for the mirrorpeers API
            displayName: Mirror Peer
            kind: MirrorPeer
            name: mirrorpeers.multicluster.odf.openshift.io
            version: v1alpha1
        description: |
          Orchestrator for OpenShift Data Foundation clusters running across multiple OpenShift clusters.
          It uses Red Hat Advanced Cluster Management for Kubernetes as the multicluster control plane.
        displayName: ODF Multicluster Orchestrator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - odf
        - multicluster
        - orchestrator
        - storage
        - acm
        links:
        - name: ODF Multicluster Orchestrator
          url: https://github.com/red-hat-storage/odf-multicluster-orchestrator
        maintainers:
        - email: uchapaga@redhat.com
          name: Umanga Chapagain
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-multicluster-operator-bundle@sha256:fad8bd45737ac4588b79f02c519e153949cbdb2ff4de8b5aff315283004b15a9
        - registry.redhat.io/odf4/odf-multicluster-console-rhel9@sha256:34470d03b82ccd51a32c24697583b485aa2971e83b30f185e35f57468e99c9fb
        - registry.redhat.io/odf4/odf-multicluster-rhel9-operator@sha256:ccb80153311fb5e13ba15eaff3eca09d157bca6aebbf055783418843858e16eb
        version: 4.20.4-rhodf
      entries:
      - name: odf-multicluster-orchestrator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-multicluster-orchestrator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-multicluster-orchestrator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-multicluster-orchestrator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-multicluster-orchestrator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-multicluster-orchestrator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Perficient Inc
      provider-url: http://www.perficient.com
    name: devopsinabox
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: devopsinabox.v0.0.45
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apimc.com.perficient/v1alpha1",
                "kind": "DevSecOpsManager",
                "metadata": {
                  "name": "devsecopsmanager-sample"
                },
                "spec": {
                  "config": {
                    "repoPath": "",
                    "repoUrl": ""
                  },
                  "forwarding": {
                    "fluentd": {
                      "affinity": {},
                      "caFile": "files/default-openshift-logging-fluentd.crt",
                      "image": "registry.redhat.io/openshift4/ose-logging-fluentd:v4.4",
                      "keyFile": "files/default-openshift-logging-fluentd.key",
                      "loglevel": "warn",
                      "nodeSelector": {},
                      "passphrase": "",
                      "persistence": {
                        "accessMode": "ReadWriteOnce",
                        "enabled": false,
                        "size": "10Gi",
                        "storageClass": ""
                      },
                      "port": 24224,
                      "replicas": 2,
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "1024Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "512Mi"
                        }
                      },
                      "sharedkey": "splunkforwarding",
                      "ssl": true,
                      "tolerations": [],
                      "updateStrategy": {
                        "type": "RollingUpdate"
                      }
                    },
                    "preserveDefault": true
                  },
                  "fullnameOverride": "",
                  "git": {
                    "password": "",
                    "server": "https://gitlab.com",
                    "token": "",
                    "username": ""
                  },
                  "nameOverride": "",
                  "prometheus": {
                    "token": ""
                  }
                }
              },
              {
                "apiVersion": "apimc.com.perficient/v1alpha1",
                "kind": "ManagedNamespace",
                "metadata": {
                  "name": "managednamespace-sample"
                },
                "spec": {
                  "config": {
                    "repoBranch": "master",
                    "repoPath": "",
                    "repoUrl": ""
                  },
                  "container": {
                    "password": "",
                    "registry": "https://quay.io",
                    "username": ""
                  },
                  "fullnameOverride": "",
                  "git": {
                    "password": "",
                    "server": "https://gitlab.com",
                    "token": "",
                    "username": ""
                  },
                  "manager": {
                    "namespace": ""
                  },
                  "mirrors": {
                    "maven": ""
                  },
                  "nameOverride": ""
                }
              },
              {
                "apiVersion": "apimc.com.perficient/v1alpha1",
                "kind": "SpringBootApp",
                "metadata": {
                  "name": "springbootapp-sample"
                },
                "spec": {
                  "autoscaling": {
                    "enabled": false,
                    "maxReplicas": 100,
                    "minReplicas": 1,
                    "targetCPUUtilizationPercentage": 80
                  },
                  "config": {
                    "repo": ""
                  },
                  "container": {
                    "image": "placeholder",
                    "registry": ""
                  },
                  "fullnameOverride": "",
                  "git": {
                    "branch": "master",
                    "module": "",
                    "url": ""
                  },
                  "management": {
                    "port": 8081
                  },
                  "maven": {
                    "mirror": ""
                  },
                  "nameOverride": "",
                  "podAnnotations": {},
                  "replicaCount": 1,
                  "resources": {},
                  "service": {
                    "port": 8080
                  },
                  "serviceAccount": {
                    "annotations": {}
                  },
                  "version": {
                    "branch": "",
                    "image": "placeholder",
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Modernization & Migration,Developer Tools,Application Runtime
          containerImage: quay.io/mrethers/devopsinabox-operator:v0.0.45
          createdAt: 2021-03-03 10:51:09Z
          description: Perficient's DevSecOps Manager For Kubernetes Applications
          operators.operatorframework.io/builder: operator-sdk-v1.4.2
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/prft-rh/devopsinabox-operator
          support: Matthieu Rethers
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DevSecOpsManager
            name: devsecopsmanagers.apimc.com.perficient
            version: v1alpha1
          - kind: ManagedNamespace
            name: managednamespaces.apimc.com.perficient
            version: v1alpha1
          - kind: SpringBootApp
            name: springbootapps.apimc.com.perficient
            version: v1alpha1
        description: "The devops-in-a-box Operator manages the entire lifecycle of
          your applications in Kubernetes. It encapsulates all the best devsecops
          practices gathered by Perficient over the years working on many large projects.
          Use it to migrate existing applications with minimum changes or deploy new
          ones with little to no knowledge of Kubernetes.\n\nOnce installed, the Devops-in-a-box
          operator provides the following features:\n\n* **Create/Destroy**: Easily
          launch a new DevSecOpsManager instance to bootstrap your cluster and start
          deploying new applications with total confidence.\n\n* **Gitops Simplified**:
          Configure your cluster and individual applications through Git and watch
          your changes propagate instantly. Just point to where your code is and let
          the operator do the rest with preconfigured cloud-native CI/CD pipelines.\n\n*
          **Production-Ready**: Automatically register your applications with Openshift
          logging and monitoring systems and enjoy special additions for Spring Boot
          like custom dashboards and searchable logs.\n\n*Contact us on Github for
          installation and usage instruction*\n\n### Other Supported Features\n\n**Blue/Green,
          Canary, A/B Deployments**\n\nRun multiple versions of your applications
          simultaneously and configure traffic rules to target specific groups of
          users using Service Mesh.\n\n**Updates via automated operations**\n\nGet
          the latest enhancements automatically through the Operator Lifecycle Manager
          and upgrade all your running applications at once. "
        displayName: Devops-in-a-box
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - devops
        - devsecops
        - spring
        - boot
        - java
        - gitops
        - cicd
        - argo
        links:
        - name: Devops-in-a-box Operator
          url: https://github.com/prft-rh/devopsinabox-operator
        maintainers:
        - email: matthieu.rethers@perficient.com
          name: Matthieu Rethers
        maturity: alpha
        provider:
          name: Perficient Inc
          url: http://www.perficient.com
        relatedImages:
        - quay.io/mrethers/devopsinabox-operator:v0.0.45
        - quay.io/openshift-community-operators/devopsinabox@sha256:1c2ad76102151a56ecd753d9b86fd9f155d64b912067738d1858d33a02557928
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        version: 0.0.45
      entries:
      - name: devopsinabox.v0.0.45
        version: 0.0.45
      name: alpha
    defaultChannel: alpha
    packageName: devopsinabox
    provider:
      name: Perficient Inc
      url: http://www.perficient.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://access.redhat.com/products/red-hat-fuse
    name: fuse-online
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: fuse-online.v7.10.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:ed4faedcb97bb6a45f568586ff19da19da31ecbc304f12e0ae7978381247744a
          createdAt: 2022-01-31 15:55:46 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus@sha256:7f679d6c03535e300dac366f4bc6dd8d781d96dc47592836713f8bb76be36fa9
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:ed4faedcb97bb6a45f568586ff19da19da31ecbc304f12e0ae7978381247744a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:96810c770f75057b8bba6b78a5ba414c8289315d8af1a387f681ae5e4fb7d6dd
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:fcdd0292ebfc7e9edc36241f63b54a9d924a7605329c934ff2b10373af26dbbf
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:df2d55dd8092e9e94d034166890117cf5d1cfd5cf52ef0f90cfa2374cc9e2d06
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:3f0277e2c278740307c9b2d966f539ba12317e306198cb6c4c1c52a2ad9f4f40
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:53777788253eaa1199e1854d14782619aeec0df9844d86b83742fe0005671cde
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:5dd1bc8f6b7e724736f4aeac86409bda3e0f64f62b736688e9572d14411232f1
        - registry.redhat.io/rhel8/postgresql-12@sha256:44215c5b244b190c82d9d371a8ffd39b0c83576bd85c980cc72782a5cf9e6e1b
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:5048cd4fab2f98e6000bc60835c539cc40b70dbe265e927cfe185595347d8054
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:ef229a4c8851ec495f28d0eeab83b137cd02698e283f76ea1b32271b7222621b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:4f8849362e9ed6ff95d318a04e287b7ba33254a2cf7abdaf9b90cab7cbba6646
        version: 7.10.4
      entries:
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.10.x
    - currentCSV: fuse-online.v7.11.1-0.1687357787.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:658af3fc7819efb7cc39cd3a0504dcddc2ce7788c9b1e5178df869f7c9a742a8
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.11.1-0.1684718286.p
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-12@sha256:9248c4eaa8aeedacc1c06d7e3141ca1457147eef59e329273eb78e32fcd27e79
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:e3a13ea8b84b9e1abd158d394e11113e5f6c04d879547fa1d3e8638f1ac979d8
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:658af3fc7819efb7cc39cd3a0504dcddc2ce7788c9b1e5178df869f7c9a742a8
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:8b9bd777bcbd20b1a1bbbc18274a5076a67bea1f928d772cb243c57fb1da7408
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:4de91e4527022e1b25df8d3835ddf778f773c20334314be9ba01a885c82287f5
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:ac514973ec428d815d7a248d09d27f2a84f762aedfea63b3b48de9e633267ed5
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:251c29e81f8e338f980b475b841647a977807908c388f4c86e18da7bff1b198a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:400a6ee03c3200c19b9b15c5d037a849633156a62e13922fb2e62838024ae69c
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:a2b1cd0256f30aff8fa37c332419b4483c0bfe34fb4f574ad8f18b0858969342
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:3d98d775bec85704c9a10c2f0d8e4f8116b7a41494f73c0b763e010262e5cd4d
        version: 7.11.1+0.1687357787.p
      entries:
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.11.x
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.12.x
    - currentCSV: fuse-online.v7.9.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta2",
                "kind": "Syndesis",
                "metadata": {
                  "labels": {
                    "app": "syndesis"
                  },
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:c70c5e76dc3db559c722bea2a767eb7dcba1eda786e1ef3a45c4cf32e1aca9ee
          createdAt: 2021-07-21 12:25:15 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta2
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to the product documentation at https://access.redhat.com/documentation/en-us/red_hat_fuse
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bafd85b0fd1256b8a60a2bb368a7e68f5dbad72718e5059a65660e01a425d8e2
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:75d5772c792a7c795281acec3d59e90021c109e9d7d1110868be0b882768aefb
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:eff9f8edf28ccbadcacab2022fff9e6bc93926af97521b49e3968eaf7b6fda65
        - registry.redhat.io/rhscl/postgresql-12-rhel7@sha256:c3e95e808eecba8ac57632452d3553509131ca783f62c68754a582cf5c55efab
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:d6f0c804c179fa559d3baed2e2d106c916a0439dc2215c4d34b878bc2e9bc281
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:c70c5e76dc3db559c722bea2a767eb7dcba1eda786e1ef3a45c4cf32e1aca9ee
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:60d5cf00411b03af3f1149a2bb3aeeb196c063d19625f876a094ae6baf46b54b
        - registry.redhat.io/openshift4/ose-prometheus@sha256:13e9ea359cbcd3e0e94a6589b86b708dc84197f152701fd4092fffa234d11b58
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:c668fe1f5d25baddf627acd79df4c8d2ab8b05309d3d41784ddc0a10dd5f34ad
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:f65600506db985689e5b7cd8b838e646d4268a0c4e272e19d7db3577a8dd7ac4
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:31258400bb37f4b8837ef294820f8a728ae83f8031d4e01ff0392690a315a30f
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:d6df09b15599e776b49e1d46aa01728fd02d5629cee65e77dc277c0166554e0a
        version: 7.9.3
      entries:
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: 7.9.x
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: candidate
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: latest
    - currentCSV: fuse-online.v7.12.1-0.1706187675.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "syndesis.io/v1beta3",
                "kind": "Syndesis",
                "metadata": {
                  "name": "app"
                },
                "spec": {
                  "addons": {
                    "jaeger": {
                      "enabled": true
                    },
                    "ops": {
                      "enabled": false
                    },
                    "publicApi": {
                      "enabled": false
                    },
                    "todo": {
                      "enabled": false
                    }
                  }
                },
                "status": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
          createdAt: 2022-04-04 12:44:36 UTC
          description: Manages the installation of Fuse Online, a flexible and customizable
            open source platform that provides core integration capabilities as a
            service.
          olm.substitutesFor: fuse-online.v7.12.1
          operators.openshift.io/valid-subscription: '["Red Hat Integration"]'
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/syndesisio/syndesis/
          support: Fuse Online
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Syndesis is the Schema for the Syndeses API
            displayName: Syndesis
            kind: Syndesis
            name: syndesises.syndesis.io
            version: v1beta3
        description: |
          ### Fuse-Online operator
          Fuse Online is a flexible and customizable, open source platform that provides core integration capabilities as a service.

          This operator installs as well as configures the following Fuse Online components:
          - syndesis-server
          - syndesis-meta
          - syndesis-ui
          - syndesis-db
          - syndesis-prometheus
          - syndesis-proxy
          - syndesis-oauthproxy

          ### Before you begin
          You must configure authentication to Red Hat container registry before you can import and use the Red Hat Fuse OpenShift Image Streams. Follow instruction given below to configure the registration to container registry.

          1. Log in to the OpenShift Server as an administrator, as follow:
              ```
              oc login -u system:admin
              ```
          2. Log in to the OpenShift project where you will be installing the operator.
              ```
              oc project fuse-online
              ```
          3. Create a docker-registry secret using either Red Hat Customer Portal account or Red Hat Developer Program account credentials.
              ```
              oc create secret docker-registry syndesis-pull-secret \
                --docker-server=registry.redhat.io \
                --docker-username=CUSTOMER_PORTAL_USERNAME \
                --docker-password=CUSTOMER_PORTAL_PASSWORD \
                --docker-email=EMAIL_ADDRESS
              ```
              NOTE: You need to create a docker-registry secret in every new namespace where the image streams reside and which use registry.redhat.io.

              If you do not wish to use your Red Hat account username and password to create the secret, it is recommended to create an authentication token using a [registry service account](https://access.redhat.com/terms-based-registry/).

          ### How to install
          - When the operator is installed (you have created a subscription and the operator is running in the selected namespace) and before you create a new CR of Kind Syndesis, you have to link the secret created in the previous section to the operator service account.
          ```
          oc secrets link syndesis-operator syndesis-pull-secret --for=pull
          ```

          - Create a new CR of Kind Syndesis (click the Create New button). The CR spec contains all defaults (see below).

          ### CR Defaults
          The CR definition is pretty simple and an empy CR will trigger a base installation.

          Within the addons section, users are able to enable specific addons. The available addons at the moment are:
          - jaeger: enable jaeger
          - ops: enables monitoring, requires extra CRDs
          - todo: a simple todo application

          To enable addons, set "addon_name": {"enabled": true} in the CR.
          If you enable the todo addon, you should link the previously created syndesis-pull-secret to the builder serviceAccount.
          ```
          oc secrets link builder syndesis-pull-secret --for=pull,mount
          ```

          For a more detailed set of instructions and a complete reference of config options,
          please refer to [Fuse Online documentation](https://access.redhat.com/documentation/en-us/red_hat_fuse)
        displayName: Red Hat Integration - Fuse Online
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - camel
        - integration
        - syndesis
        - fuse
        - online
        links:
        - name: Red Hat Fuse Online Documentation
          url: https://access.redhat.com/documentation/en-us/red-hat-fuse
        - name: Upstream project Syndesis
          url: https://github.com/syndesisio/syndesis
        - name: Upstream Syndesis Operator
          url: https://github.com/syndesisio/syndesis/tree/master/install/operator
        maintainers:
        - email: janstey@redhat.com
          name: Jon Anstey
        - email: parichar@redhat.com
          name: Paul Richardson
        maturity: beta
        provider:
          name: Red Hat
          url: https://access.redhat.com/products/red-hat-fuse
        relatedImages:
        - registry.redhat.io/fuse7/fuse-online-upgrade-rhel8@sha256:08c6df76f764abd9e9197ed7252f190cba0a54e0670f3a82a977e47e7e8b4c7b
        - registry.redhat.io/fuse7/fuse-postgres-exporter-rhel8@sha256:7d441bb58b9a469579b96ac1bbf0e3171e8d1e0177dfd4a39240ee462638b5dc
        - registry.redhat.io/rhel8/php-72@sha256:48a5e695139a2ee45ee562960324b2e6875ad2689c7f102da7128936153adfd4
        - registry.redhat.io/rhel8/postgresql-12@sha256:d8c5112a34ad9a5b93223389fbb64e6429f299c1703876b6652c8810fcacd59d
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/fuse7/fuse-online-meta-rhel8@sha256:2946ba7ee37b80c1c3d04928f6cffcb9e2d3265226e7aba0bd12a4e99c771c38
        - registry.redhat.io/fuse7/fuse-online-server-rhel8@sha256:19c580d25c9c52b42f9dad4988788dec2f5701b446103c59679fabf19d98f71a
        - registry.redhat.io/fuse7/fuse-online-ui-rhel8@sha256:d28471a9946d0574f9b135b41f19cb4b56629eae2c462a89f6deac67e7d00131
        - registry.redhat.io/openshift4/ose-prometheus@sha256:8d0a70d15c8ca20bae2387b35f39125028c4d6b3c2d27173f46f0a0ce54179c7
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator-bundle@sha256:063051dac9fae01ca92e74eb044d7a126b3d493c78846fde5b4793922ef1dc87
        - registry.redhat.io/fuse7/fuse-online-rhel8-operator@sha256:fe47dfb31a4853d2a37fef749996e19717ea5e1fa406f3a1e0ecdc4b78605072
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:e97e19a7acd23d2021bd0667d9f4f69b2cbbb48ce5a20934ff0883adcd4d6eb0
        - registry.redhat.io/fuse7/fuse-online-builder-rhel8@sha256:660e87daec112a226322738ebcaa9cf60490bd866e16e48767d20ee3f2d7dd5d
        version: 7.12.1+0.1706187675.p
      entries:
      - name: fuse-online.v7.12.1-0.1706187675.p
        version: 7.12.1+0.1706187675.p
      - name: fuse-online.v7.12.1
        version: 7.12.1
      - name: fuse-online.v7.12.0
        version: 7.12.0
      - name: fuse-online.v7.12.0-0.1697748412.p
        version: 7.12.0+0.1697748412.p
      - name: fuse-online.v7.12.0-0.1697419534.p
        version: 7.12.0+0.1697419534.p
      - name: fuse-online.v7.12.0-0.1696814252.p
        version: 7.12.0+0.1696814252.p
      - name: fuse-online.v7.12.0-0.1694087053.p
        version: 7.12.0+0.1694087053.p
      - name: fuse-online.v7.12.0-0.1693227897.p
        version: 7.12.0+0.1693227897.p
      - name: fuse-online.v7.12.0-0.1689618244.p
        version: 7.12.0+0.1689618244.p
      - name: fuse-online.v7.11.1-0.1679272339.p
        version: 7.11.1+0.1679272339.p
      - name: fuse-online.v7.11.1-0.1682419260.p
        version: 7.11.1+0.1682419260.p
      - name: fuse-online.v7.11.1
        version: 7.11.1
      - name: fuse-online.v7.11.1-0.1669927569.p
        version: 7.11.1+0.1669927569.p
      - name: fuse-online.v7.11.1-0.1673344689.p
        version: 7.11.1+0.1673344689.p
      - name: fuse-online.v7.11.1-0.1675972855.p
        version: 7.11.1+0.1675972855.p
      - name: fuse-online.v7.11.1-0.1677678164.p
        version: 7.11.1+0.1677678164.p
      - name: fuse-online.v7.11.1-0.1687357787.p
        version: 7.11.1+0.1687357787.p
      - name: fuse-online.v7.11.1-0.1681224700.p
        version: 7.11.1+0.1681224700.p
      - name: fuse-online.v7.11.1-0.1684718286.p
        version: 7.11.1+0.1684718286.p
      - name: fuse-online.v7.11.1-0.1682509048.p
        version: 7.11.1+0.1682509048.p
      - name: fuse-online.v7.11.0-0.1665994963.p
        version: 7.11.0+0.1665994963.p
      - name: fuse-online.v7.11.0-0.1665054365.p
        version: 7.11.0+0.1665054365.p
      - name: fuse-online.v7.11.0-0.1662457147.p
        version: 7.11.0+0.1662457147.p
      - name: fuse-online.v7.11.0-0.1659517286.p
        version: 7.11.0+0.1659517286.p
      - name: fuse-online.v7.11.0
        version: 7.11.0
      - name: fuse-online.v7.10.4
        version: 7.10.4
      - name: fuse-online.v7.10.3
        version: 7.10.3
      - name: fuse-online.v7.10.2-0.1649640025.p
        version: 7.10.2+0.1649640025.p
      - name: fuse-online.v7.10.2-0.1648491127.p
        version: 7.10.2+0.1648491127.p
      - name: fuse-online.v7.10.1
        version: 7.10.1
      - name: fuse-online.v7.10.0
        version: 7.10.0
      - name: fuse-online.v7.9.3
        version: 7.9.3
      - name: fuse-online.v7.9.2
        version: 7.9.2
      - name: fuse-online.v7.9.1
        version: 7.9.1
      - name: fuse-online.v7.9.0
        version: 7.9.0
      name: stable
    defaultChannel: latest
    packageName: fuse-online
    provider:
      name: Red Hat
      url: https://access.redhat.com/products/red-hat-fuse
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Mantisnet
      provider-url: https://www.mantisnet.com
    name: tawon-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tawon-operator.v2.29.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tawon.mantisnet.com/v1alpha1",
                "kind": "Directive",
                "metadata": {
                  "name": "amf-h2"
                },
                "spec": {
                  "condition": {
                    "equal": {
                      "field": "process.name",
                      "value": "amf"
                    }
                  },
                  "container": {
                    "resources": {
                      "limits": {
                        "cpu": "500m"
                      }
                    }
                  },
                  "pod": {
                    "nodeSelector": {
                      "myNodeType": "nodeType1"
                    }
                  },
                  "tasks": [
                    {
                      "config": {
                        "filter": "port 8080"
                      },
                      "task": "payload"
                    },
                    {
                      "task": "h2"
                    },
                    {
                      "config": {
                        "addr": "nats://nats:4222",
                        "topic": "hello"
                      },
                      "task": "publish"
                    }
                  ]
                }
              },
              {
                "apiVersion": "tawon.mantisnet.com/v1alpha1",
                "kind": "TopologyAggregator",
                "metadata": {
                  "name": "topology-aggregator"
                },
                "spec": {
                  "messaging": {
                    "nats": {
                      "url": "nats://nats:4222"
                    }
                  },
                  "pod": {
                    "nodeSelector": {
                      "myNodeType": "nodeType1"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2023-11-13T01:16:29Z"
          olm.skipRange: '>=2.23.0 <2.29.1'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Directive allows to define a Tawon task pipeline that will
              be applied to a Kubernetes cluster.
            displayName: Tawon Directive
            kind: Directive
            name: directives.tawon.mantisnet.com
            version: v1alpha1
          - description: TopologyAggregator is the Schema for the topologyaggregators
              API
            displayName: Tawon Topology Aggregator
            kind: TopologyAggregator
            name: topologyaggregators.tawon.mantisnet.com
            version: v1alpha1
        description: Tawon is a cloud-native observability fabric for deeply instrumenting
          microservice-based applications.
        displayName: Tawon
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - networking
        - metrics
        - ebpf
        links:
        - name: Tawon Docs
          url: https://docs.tawon.xmantis.net
        maintainers:
        - email: elliott@mantisnet.com
          name: Elliott Starin
        - email: nicolas@mantisnet.com
          name: Nicolas Paton
        - email: thiago@mantisnet.com
          name: Thiago Navarro
        maturity: alpha
        provider:
          name: Mantisnet
          url: https://www.mantisnet.com
        relatedImages:
        - registry.connect.redhat.com/a5f1f0cc7ac3db90370970f9b/tawon@sha256:3691c0948c8eb266ada348de504622227af6516f3b3d331eb09fd258dd0609a5
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d99a8d144816b951a67648c12c0b988936ccd25cf3754f3cd85ab8c01592248f
        - quay.io/mantisnet/kernel-headers@sha256:242e837af831b6eed98d522b6bae7416928b9fbe451fb6e02ffa678686771068
        - quay.io/mantisnet/kernel-headers@sha256:2aa3bc7871fe0fc0a79ac812d941e55cd0d25a5f0d1d9b3e2435aab6f3d70c67
        - quay.io/mantisnet/nats@sha256:6afc7ced92181a7c12d709e9693740847297dc5d60ab78cbac7b9b6c859ecdd1
        - quay.io/mantisnet/tawon-operator@sha256:d5669dde46bb30411964baa86844d97721655886769b96809626246a4123caad
        - quay.io/mantisnet/tawon@sha256:83575079fe00ae6e53bb13005b94ef0047cc1974d95015c19e64dd53e13bcb93
        - quay.io/mantisnet/tawonctl@sha256:d436ef902bb08d830f64f34fdb86b20d2bd18d86233c8240014f0722c60e5e94
        version: 2.29.1
      entries:
      - name: tawon-operator.v2.29.1
        version: 2.29.1
      name: alpha
    defaultChannel: alpha
    packageName: tawon-operator
    provider:
      name: Mantisnet
      url: https://www.mantisnet.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Netscaler
      provider-url: https://www.netscaler.com
    name: netscaler-adm-agent-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: netscaler-adm-agent-operator.v141.60.38
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgent",
                "metadata": {
                  "name": "adm-agent"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "adm.cloud.com",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-55.40",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgentOnprem",
                "metadata": {
                  "name": "adm-agent-onprem"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "<adm server ip>",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-60.38",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:9d9c9fbeca81441737ff9a4b371684dbf248212241e400da4c7ad0f4c391ff55
          createdAt: "2025-11-19T07:38:53Z"
          description: This is an operator to deploy container-based ADM agent to
            connect NetScaler CPX with ADM Service for management and monitoring.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler ADM Agent Operator On Prem
            displayName: NetScaler ADM Agent Operator On Prem
            kind: AdmAgentOnprem
            name: admagentonprems.netscaler.com
            version: v1
          - description: To install NetScaler ADM Agent Operator
            displayName: NetScaler ADM Agent Operator for Service
            kind: AdmAgent
            name: admagents.netscaler.com
            version: v1
        description: |-
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster.
          Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Agent Operator for Service](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          2. [NetScaler Agent Operator for On Prem](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          ### Installation

          Refer [installation instructions](https://github.com/netscaler/netscaler-k8s-ingress-controller/blob/master/docs/deploy/deploy-ns-operator.md)
          This operator version contains:
          1. NetScaler ADM Agent for Service [141.55.40](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v1.40.12)
          2. NetScaler ADM Agent for OnPrem[141.60.38](https://docs.netscaler.com/en-us/citrix-adc/14-1/citrix-adc-release-notes/release-notes-14-1-17-38)
          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin)
          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: Netscaler Adm Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Ingress
        - NetScaler
        - ADC
        - Kubernetes
        - OpenShift
        - Citrix
        - Controller
        - Observability
        - Metrices
        links:
        - name: Netscaler Adm Agent Operator
          url: https://netscaler-adm-agent-operator.domain
        maintainers:
        - email: pavan.belani@cloud.com
          name: Pavan Belani
        - email: swapnil.khanderaokakade@cloud.com
          name: Swapnil Khanderao
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Netscaler
          url: https://www.netscaler.com
        relatedImages:
        - quay.io/citrix/adm-agent@sha256:65c052c60999ffb4fe611fb10ba620c248720e1a483313a623e61769228ddd85
        - quay.io/citrix/developers-adm-agent@sha256:d7cbc49faae3e5502f0238c271f51249e827e11f3da1138acce1deced69bff34
        - registry.connect.redhat.com/citrix/admagent-operator-bundle@sha256:a43b3be056522477a467722cc82c492561512f97f6f0e6a4c7004921a07eb568
        - registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:9d9c9fbeca81441737ff9a4b371684dbf248212241e400da4c7ad0f4c391ff55
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        version: 141.60.38
      entries:
      - name: netscaler-adm-agent-operator.v141.60.38
        version: 141.60.38
      name: alpha
    - currentCSV: netscaler-adm-agent-operator.v141.60.54
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgent",
                "metadata": {
                  "name": "adm-agent"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "adm.cloud.com",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-55.40",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "AdmAgentOnprem",
                "metadata": {
                  "name": "adm-agent-onprem"
                },
                "spec": {
                  "accessSecret": "",
                  "admURL": "<adm server ip>",
                  "affinity": {},
                  "clusterPrefix": "",
                  "core": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 30,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 30,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "2000Mi"
                      }
                    }
                  },
                  "fullnameOverride": "",
                  "helper": {
                    "image": "{{ .Values.helper.imageRegistry }}/{{ .Values.helper.imageRepository }}:{{ .Values.helper.imageTag }}",
                    "imageRegistry": "quay.io",
                    "imageRepository": "citrix/adm-agent-helper",
                    "imageTag": "2.0.1",
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "200Mi"
                      }
                    }
                  },
                  "hpa": {
                    "maxReplicas": 10,
                    "minReplicas": 1,
                    "required": false,
                    "targetCPUUtilization": "1000m",
                    "targetMemoryUtilization": "4000Mi"
                  },
                  "image": "{{ .Values.imageRegistry }}/{{ .Values.imageRepository }}:{{ .Values.imageTag }}",
                  "imagePullSecrets": [],
                  "imageRegistry": "quay.io",
                  "imageRepository": "citrix/adm-agent",
                  "imageTag": "14.1-60.54",
                  "kad": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "50m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "lic": {
                    "livenessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 600,
                      "periodSeconds": 20,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "100m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "loginSecret": "",
                  "nameOverride": "",
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "redis": {
                    "livenessProbe": {
                      "failureThreshold": 5,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "readinessProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 20,
                      "periodSeconds": 10,
                      "required": true,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "1000Mi"
                      }
                    }
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true
                  },
                  "sharding": {
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "10m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "tolerations": []
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:49a08eb5ed1f23e877d90dcd7fa8f952e2ec7ed4982649995be181c25f8743b1
          createdAt: "2025-12-11T10:08:16Z"
          description: This is an operator to deploy container-based NetScaler Console
            agent to manage NetScaler CPX with NetScaler Console for management and
            monitoring.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler ADM Agent Operator On Prem
            displayName: NetScaler ADM Agent Operator On Prem
            kind: AdmAgentOnprem
            name: admagentonprems.netscaler.com
            version: v1
          - description: To install NetScaler ADM Agent Operator
            displayName: NetScaler ADM Agent Operator for Service
            kind: AdmAgent
            name: admagents.netscaler.com
            version: v1
        description: |-
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster.
          Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Agent Operator for Service](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          2. [NetScaler Agent Operator for On Prem](https://docs.netscaler.com/en-us/netscaler-console-service/getting-started/install-agent-as-operator-openshift)
          ### Installation
          Refer [installation instructions](https://github.com/netscaler/netscaler-k8s-ingress-controller/blob/master/docs/deploy/deploy-ns-operator.md).

          This operator version contains:
          1. NetScaler ADM Agent for Service [141.55.40](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v1.40.12)
          2. NetScaler ADM Agent for OnPrem[141.60.54](https://docs.netscaler.com/en-us/citrix-adc/14-1/citrix-adc-release-notes/release-notes-14-1-17-38)

          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin).

          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: Netscaler Adm Agent Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Ingress
        - NetScaler
        - ADC
        - Kubernetes
        - OpenShift
        - Citrix
        - Controller
        - Observability
        - Metrices
        links:
        - name: Netscaler Adm Agent Operator
          url: https://netscaler-adm-agent-operator.domain
        maintainers:
        - email: ritesh.padhi@citrix.com
          name: ritesh
        - email: swapnil.khanderaokakade@citrix.com
          name: swapnil
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: Netscaler
          url: https://www.netscaler.com
        relatedImages:
        - registry.connect.redhat.com/citrix/netscaler-adm-agent-operator@sha256:49a08eb5ed1f23e877d90dcd7fa8f952e2ec7ed4982649995be181c25f8743b1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - quay.io/citrix/adm-agent@sha256:65c052c60999ffb4fe611fb10ba620c248720e1a483313a623e61769228ddd85
        - quay.io/citrix/developers-adm-agent@sha256:283f2ce4b964cf234c9d12c4955bedfbf1866292a939363e402b26ee544cb57a
        - registry.connect.redhat.com/citrix/admagent-operator-bundle@sha256:148aecf6a21b16940d11d62738f786574fa1d09eb20d441fb94bf956e57ecd3e
        version: 141.60.54
      entries:
      - name: netscaler-adm-agent-operator.v141.60.54
        version: 141.60.54
      name: stable
    defaultChannel: stable
    packageName: netscaler-adm-agent-operator
    provider:
      name: Netscaler
      url: https://www.netscaler.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-route53resolver-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-route53resolver-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "route53resolver.services.k8s.aws/v1alpha1",
                "kind": "ResolverEndpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "route53resolver.services.k8s.aws/v1alpha1",
                "kind": "ResolverRule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/route53resolver-controller:1.2.0
          createdAt: "2025-11-29T04:47:09Z"
          description: AWS Route53Resolver controller is a service controller for
            managing Route53Resolver resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ResolverEndpoint represents the state of an AWS route53resolver
              ResolverEndpoint resource.
            displayName: ResolverEndpoint
            kind: ResolverEndpoint
            name: resolverendpoints.route53resolver.services.k8s.aws
            version: v1alpha1
          - description: ResolverRule represents the state of an AWS route53resolver
              ResolverRule resource.
            displayName: ResolverRule
            kind: ResolverRule
            name: resolverrules.route53resolver.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Route53Resolver resources in AWS from within your Kubernetes cluster.

          **About Amazon Route53Resolver**

          Amazon Route 53 Resolver responds recursively to DNS queries from AWS resources for public records, Amazon VPC-specific DNS names, and Amazon Route 53 private hosted zones, and is available by default in all VPCs.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Route53Resolver
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - route53resolver
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Route53Resolver Developer Resources
          url: https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: route53resolver maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-route53resolver-controller@sha256:cd80c4eb559418ffe863c880b3954251ce13508493bf56d5e7b9e5b282838b36
        - public.ecr.aws/aws-controllers-k8s/route53resolver-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-route53resolver-controller.v1.2.0
        version: 1.2.0
      - name: ack-route53resolver-controller.v1.1.2
        version: 1.1.2
      - name: ack-route53resolver-controller.v1.1.1
        version: 1.1.1
      - name: ack-route53resolver-controller.v1.0.15
        version: 1.0.15
      - name: ack-route53resolver-controller.v1.0.14
        version: 1.0.14
      - name: ack-route53resolver-controller.v1.0.13
        version: 1.0.13
      - name: ack-route53resolver-controller.v1.0.11
        version: 1.0.11
      - name: ack-route53resolver-controller.v1.0.10
        version: 1.0.10
      - name: ack-route53resolver-controller.v1.0.9
        version: 1.0.9
      - name: ack-route53resolver-controller.v1.0.7
        version: 1.0.7
      - name: ack-route53resolver-controller.v1.0.6
        version: 1.0.6
      - name: ack-route53resolver-controller.v1.0.5
        version: 1.0.5
      - name: ack-route53resolver-controller.v1.0.3
        version: 1.0.3
      - name: ack-route53resolver-controller.v1.0.2
        version: 1.0.2
      - name: ack-route53resolver-controller.v1.0.0
        version: 1.0.0
      - name: ack-route53resolver-controller.v0.0.11
        version: 0.0.11
      - name: ack-route53resolver-controller.v0.0.10
        version: 0.0.10
      - name: ack-route53resolver-controller.v0.0.9
        version: 0.0.9
      - name: ack-route53resolver-controller.v0.0.7
        version: 0.0.7
      - name: ack-route53resolver-controller.v0.0.4
        version: 0.0.4
      - name: ack-route53resolver-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-route53resolver-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ram-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ram-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ram-controller:1.2.0
          createdAt: "2025-11-29T05:19:01Z"
          description: AWS RAM controller is a service controller for managing RAM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Permission represents the state of an AWS ram Permission
              resource.
            displayName: Permission
            kind: Permission
            name: permissions.ram.services.k8s.aws
            version: v1alpha1
          - description: ResourceShare represents the state of an AWS ram ResourceShare
              resource.
            displayName: ResourceShare
            kind: ResourceShare
            name: resourceshares.ram.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon RAM resources in AWS from within your Kubernetes cluster.

          **About Amazon RAM**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon RAM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ram
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon RAM Developer Resources
          url: https://aws.amazon.com/RAM/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ram maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ram-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ram-controller@sha256:59b2e55dc3a4154a742dff715ec45e012a64bb6699d837f311e448c7301d7aff
        version: 1.2.0
      entries:
      - name: ack-ram-controller.v1.2.0
        version: 1.2.0
      - name: ack-ram-controller.v1.1.2
        version: 1.1.2
      - name: ack-ram-controller.v1.1.1
        version: 1.1.1
      - name: ack-ram-controller.v1.1.0
        version: 1.1.0
      - name: ack-ram-controller.v1.0.11
        version: 1.0.11
      - name: ack-ram-controller.v1.0.10
        version: 1.0.10
      name: alpha
    defaultChannel: alpha
    packageName: ack-ram-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Dynatrace LLC
      provider-url: www.dynatrace.com
    name: dynatrace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dynatrace-operator.v1.7.2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Deep Insights
          categories: Monitoring,Logging & Tracing
          containerImage: registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
          createdAt: 2025-11-17T09:03:01.768309
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.7.2
          operatorframework.io/suggested-namespace: dynatrace
          operators.openshift.io/valid-subscription: '["Dynatrace Platform Subscription
            (DPS)","Dynatrace Classic License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.36.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Dynatrace/dynatrace-operator
          support: Dynatrace
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta3
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta4
          - kind: DynaKube
            name: dynakubes.dynatrace.com
            version: v1beta5
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha1
          - kind: EdgeConnect
            name: edgeconnects.dynatrace.com
            version: v1alpha2
        description: |
          The Dynatrace Operator supports rollout and lifecycle management of various Dynatrace components in Kubernetes and OpenShift.

          Currently the Dynatrace Operator supports the following capabilities:

          ### OneAgent
            * `classicFullStack` rolls out one OneAgent pod per node to monitor its pods and the node itself
            * `applicationMonitoring` is a webhook based injection mechanism for automatic app-only injection
            * `hostMonitoring` monitors only the hosts, i.e., the nodes, in the cluster without app-only injection
          ### ActiveGate
            * `routing` routes OneAgent traffic through the ActiveGate
            * `kubernetes-monitoring` allows monitoring the Kubernetes API
            * `metrics-ingest` routes enriched metrics through an ActiveGate

          For more information please refer to [our DynaKube Custom Resource examples](https://dt-url.net/dynakube-samples).

          ### Installation
          Once you've installed the Dynatrace Operator, you can create a DynaKube custom resource.

          First, please add a Secret within the Project you've deployed the Dynatrace Operator to, which would contain your API and PaaS tokens. Create tokens of type *Dynatrace API* (`API_TOKEN`) and *Platform as a Service* (`PAAS_TOKEN`) and use their values in the following commands respectively.

          For assistance please refer to [Create user-generated access tokens](https://www.dynatrace.com/support/help/shortlink/token#create-user-generated-access-tokens).

          ``` $ oc -n <project> create secret generic dynakube --from-literal="apiToken=API_TOKEN" --from-literal="paasToken=PAAS_TOKEN" ```

          You may update this Secret at any time to rotate the tokens.

          After creation of the secret add the DynaKube object in the project where the Dynatrace Operator has been deployed, configured to your needs.

          ### Required Parameters
          * `apiUrl` - provide the URL to the API of your Dynatrace environment. In Dynatrace SaaS it will look like `https://<ENVIRONMENTID>.live.dynatrace.com/api` . In Dynatrace Managed like `https://<YourDynatraceServerURL>/e/<ENVIRONMENTID>/api` .

          ### Advanced Options
          * **Disable Certificate Checking** - disable any certificate validation that may interact poorly with proxies with in your cluster
          * **Image Override** - use a copy of the ActiveGate container image from a registry other than Docker's or Red Hat's

          For a complete list of supported parameters please consult the [Operator Deploy Guide](https://www.dynatrace.com/support/help/shortlink/openshift-deploy).

          ### Help
          You can find more about our instructions in our [documentation](https://www.dynatrace.com/support/help/shortlink/openshift-deploy#install-dynatrace-operator).
        displayName: Dynatrace Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - dynatrace
        - oneagent
        - activegate
        - observability
        links:
        - name: Dynatrace Operator
          url: https://github.com/Dynatrace/dynatrace-operator
        - name: OpenShift Monitoring Info
          url: https://www.dynatrace.com/technologies/openshift-monitoring
        maintainers:
        - email: support@dynatrace.com
          name: Dynatrace LLC
        maturity: alpha
        provider:
          name: Dynatrace LLC
          url: www.dynatrace.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/dynatrace-operator@sha256:c57565f3a0b29d24d944aa15e10bb4027957f02f7ab9ca18d259fc93657ab75a
        - registry.connect.redhat.com/dynatrace/dynatrace-operator@sha256:88a1aafe4cfc11353bd760cb89523c35d48bc376fca562c1f0d4508b82ff9e0f
        version: 1.7.2
      entries:
      - name: dynatrace-operator.v1.7.2
        version: 1.7.2
      - name: dynatrace-operator.v1.7.1
        version: 1.7.1
      - name: dynatrace-operator.v1.7.0
        version: 1.7.0
      - name: dynatrace-operator.v1.6.3
        version: 1.6.3
      - name: dynatrace-operator.v1.6.2
        version: 1.6.2
      - name: dynatrace-operator.v1.6.1
        version: 1.6.1
      - name: dynatrace-operator.v1.6.0
        version: 1.6.0
      - name: dynatrace-operator.v1.5.1
        version: 1.5.1
      - name: dynatrace-operator.v1.4.2
        version: 1.4.2
      - name: dynatrace-operator.v1.4.1
        version: 1.4.1
      - name: dynatrace-operator.v1.4.0
        version: 1.4.0
      - name: dynatrace-operator.v0.6.0
        version: 0.6.0
      - name: dynatrace-operator.v0.5.1
        version: 0.5.1
      - name: dynatrace-operator.v0.5.0
        version: 0.5.0
      name: alpha
    defaultChannel: alpha
    packageName: dynatrace-operator
    provider:
      name: Dynatrace LLC
      url: www.dynatrace.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Antline-Soft
      provider-url: ""
    name: cxl-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cxl-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cxl.antline.com/v1",
                "kind": "CXL",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "cxl-operator",
                    "app.kubernetes.io/instance": "cxl-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cxl",
                    "app.kubernetes.io/part-of": "cxl-operator"
                  },
                  "name": "cxl-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          createdAt: "2024-05-08T08:36:12Z"
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CXL is the Schema for the cxls API
            displayName: CXL
            kind: CXL
            name: cxls.cxl.antline.com
            version: v1
        description: memory extend operator
        displayName: extend-community-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - memory
        - extend
        - community
        - operator
        links:
        - name: Cxl Operator
          url: https://cxl-operator.domain
        maintainers:
        - email: tomboy@antlinesoft.com
          name: Antline-Soft
        maturity: alpha
        provider:
          name: Antline-Soft
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ncn-community-operator@sha256:15edc1898fe9f8f56708da7d6de3548d06f1df3bdbb3f66a9cf4f7990fe9fad6
        - rasen708/cxl-operator:latest
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.14
        version: 0.0.1
      entries:
      - name: cxl-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: cxl-operator
    provider:
      name: Antline-Soft
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: assisted-service-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: assisted-service-operator.v0.7.74
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-x86_64-live.x86_64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-aarch64-live.aarch64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-s390x-live.s390x.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-x86_64-live.x86_64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-aarch64-live.aarch64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-s390x-live.s390x.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-x86_64-live.x86_64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-aarch64-live.aarch64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-ppc64le-live.ppc64le.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-s390x-live.s390x.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-x86_64-live.x86_64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-aarch64-live.aarch64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-ppc64le-live.ppc64le.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-s390x-live.s390x.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-s390x-live.s390x.iso",
                      "version": "418.94.202409162337-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service:latest
          createdAt: "2024-10-16T17:43:34Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.74'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AgentClassification is the Schema for the AgentClassifications
              API
            displayName: Agent Classification
            kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - description: Agent is the Schema for the hosts API
            displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: Infra Env
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/assisted-service-operator@sha256:0e8a33d795a2d3fa3c5fd409e4e1c40805d5c08a71481afbf9e7b8014b4179ca
        - quay.io/edge-infrastructure/assisted-service:latest
        version: 0.7.74
      entries:
      - name: assisted-service-operator.v0.7.74
        version: 0.7.74
      - name: assisted-service-operator.v0.7.73
        version: 0.7.73
      - name: assisted-service-operator.v0.7.72
        version: 0.7.72
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: assisted-service-operator.v0.7.71
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-x86_64-live.x86_64.iso",
                      "version": "414.92.202310170514-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-aarch64-live.aarch64.iso",
                      "version": "414.92.202310170514-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202309201615-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-s390x-live.s390x.iso",
                      "version": "414.92.202309201615-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "415.92.202310310037-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "415.92.202310310037-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202310310037-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.15.0-ec.2/rhcos-4.15.0-ec.2-s390x-live.s390x.iso",
                      "version": "415.92.202310310037-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:cffbdc5fd51c08f16ec2aa484cf226e3b29510919a8aa9668d766007de8f3d79
          createdAt: "2023-12-15T15:26:08Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.71'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:4e12e48d0b2b884de2a0d32682da044cff419aea53bb162915538e2179fcd7f3
        - quay.io/edge-infrastructure/assisted-image-service@sha256:027fa9c5a881848786745aafeac5e48575eefe22417abe29d9e8eb17940b8f80
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:40bafed94547a5fe96deb5492f10225501b965198227c9634869931692bda492
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:98740646fbfc0520f9d85ac5b483d1a898f22e164c5234901be51970bef7fcf3
        - quay.io/edge-infrastructure/assisted-installer@sha256:0f4ecf9a75b6755d02a45f9b70357ac45b6b4db66f24f0e83f888269d64f4293
        - quay.io/edge-infrastructure/assisted-service@sha256:cffbdc5fd51c08f16ec2aa484cf226e3b29510919a8aa9668d766007de8f3d79
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        version: 0.7.71
      entries:
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.10
    - currentCSV: assisted-service-operator.v0.7.73
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-x86_64-live.x86_64.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-aarch64-live.aarch64.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.15/rhcos-4.14.15-s390x-live.s390x.iso",
                      "version": "414.92.202402130420-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-x86_64-live.x86_64.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-aarch64-live.aarch64.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-s390x-live.s390x.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.16.0-ec.4/rhcos-4.16.0-ec.4-x86_64-live.x86_64.iso",
                      "version": "416.94.202403071059-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-aarch64-live.aarch64.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202402130021-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.0/rhcos-4.15.0-s390x-live.s390x.iso",
                      "version": "415.92.202402130021-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:641fb65d8f0117cc6007567337ae38d5e912add454a76905617b60db99b60a64
          createdAt: "2024-03-20T10:08:49Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.73'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/community-operator-pipeline-prod/assisted-service-operator@sha256:9eca42cc297a93293200a1c46e8ed949a61770550366044ef54e36bed9d7a116
        - quay.io/edge-infrastructure/assisted-image-service@sha256:b33068bbe88e38c0444fb158e233e5644fb127416198d52fdc809a3f2e684fde
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:2cc14304ba27c51d61b86db05445f3f0acc68593a4d76081da8eb9d6bae41757
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:d0da07ec81877302fc376e8049dca69c1acdbf56a37aa3e320cd75f2b85a2ed0
        - quay.io/edge-infrastructure/assisted-installer@sha256:234e4680b0ff4376f2c11d6f94a75a5dd6ae16c3218d6b63d2003cf43c65e185
        - quay.io/edge-infrastructure/assisted-service@sha256:641fb65d8f0117cc6007567337ae38d5e912add454a76905617b60db99b60a64
        version: 0.7.73
      entries:
      - name: assisted-service-operator.v0.7.73
        version: 0.7.73
      - name: assisted-service-operator.v0.7.72
        version: 0.7.72
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.11
    - currentCSV: assisted-service-operator.v0.7.74
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-x86_64-live.x86_64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-aarch64-live.aarch64.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.14/4.14.34/rhcos-4.14.34-s390x-live.s390x.iso",
                      "version": "414.92.202407091253-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-x86_64-live.x86_64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-aarch64-live.aarch64.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-ppc64le-live.ppc64le.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.15",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.15/4.15.23/rhcos-4.15.23-s390x-live.s390x.iso",
                      "version": "415.92.202407091355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-x86_64-live.x86_64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-aarch64-live.aarch64.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-ppc64le-live.ppc64le.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.16",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.16/4.16.3/rhcos-4.16.3-s390x-live.s390x.iso",
                      "version": "416.94.202406251923-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-x86_64-live.x86_64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-aarch64-live.aarch64.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-ppc64le-live.ppc64le.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.17",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.17/4.17.0/rhcos-4.17.0-s390x-live.s390x.iso",
                      "version": "417.94.202408270355-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "418.94.202409162337-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.18",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.18.0-ec.2/rhcos-4.18.0-ec.2-s390x-live.s390x.iso",
                      "version": "418.94.202409162337-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service:latest
          createdAt: "2024-10-16T17:43:34Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.74'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AgentClassification is the Schema for the AgentClassifications
              API
            displayName: Agent Classification
            kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - description: Agent is the Schema for the hosts API
            displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: Infra Env
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/assisted-service:latest
        - quay.io/community-operator-pipeline-prod/assisted-service-operator@sha256:0e8a33d795a2d3fa3c5fd409e4e1c40805d5c08a71481afbf9e7b8014b4179ca
        version: 0.7.74
      entries:
      - name: assisted-service-operator.v0.7.74
        version: 0.7.74
      - name: assisted-service-operator.v0.7.73
        version: 0.7.73
      - name: assisted-service-operator.v0.7.72
        version: 0.7.72
      - name: assisted-service-operator.v0.7.71
        version: 0.7.71
      - name: assisted-service-operator.v0.7.70
        version: 0.7.70
      - name: assisted-service-operator.v0.7.69
        version: 0.7.69
      - name: assisted-service-operator.v0.7.68
        version: 0.7.68
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.13
    - currentCSV: assisted-service-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "osImages": [
                    {
                      "openshiftVersion": "4.8",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202105062123-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/ocpmetal/assisted-service@sha256:64e88c5aa41c606bc2db2b0991acdbb1166559306474e13f5e2810f325616d64
          createdAt: "2021-09-23T11:11:20Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.0 <0.0.8'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.7.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled, for
              all other names a "Warning" event will be emitted + message logged and
              it will be ignored forever.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent".
          No other name will be accepted.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/ocpmetal/assisted-installer@sha256:db97f7a565a8d5af61f3876d6465996e90c7f79dad6ec71c5bb5cce837444974
        - quay.io/ocpmetal/assisted-service@sha256:64e88c5aa41c606bc2db2b0991acdbb1166559306474e13f5e2810f325616d64
        - quay.io/ocpmetal/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:31eda4f1888b180feb023c42a6ec93478b2e956f13420d55987d9abf7c7797c3
        - quay.io/ocpmetal/assisted-installer-agent@sha256:a391892766d1ce81300bf82943318e7c3be0d2945fc19065527ab9f64fc24cf8
        - quay.io/ocpmetal/assisted-installer-controller@sha256:43b65c310eee985ee0fc20ad8ee684f7557ffe704fd1a2fa53831e3dbc41e849
        version: 0.0.8
      entries:
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.3
    - currentCSV: assisted-service-operator.v0.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.2/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.2/rhcos-4.8.2-x86_64-live.x86_64.iso",
                      "version": "48.84.202107202156-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-x86_64-live.x86_64.iso",
                      "version": "49.84.202110081407-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:c3a852842b88f47c51cf1c62d3a19b102729fb355df19ced0e03e8265739c39c
          createdAt: "2022-04-07T11:23:06Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.1.3'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled, for
              all other names a "Warning" event will be emitted + message logged and
              it will be ignored forever.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent".
          No other name will be accepted.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:7d5f9e02f3d6c3e2ac63f1fd33240dc696ee79563c214d21d2897ee773517e9c
        - quay.io/edge-infrastructure/assisted-image-service@sha256:add19e251cafdfc4f34264d0aec5b660f0ea2dcc13326f4a2c8d50a2e465c0a2
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:979650f2e03e457d71958e8813285fcb7185fe0035f21a6ba956b4277cb29b70
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:658787d1e6c1f733c5f03863655aff315258c0b38e1972573c3878df46e4e463
        - quay.io/edge-infrastructure/assisted-installer@sha256:461d60b21d1d3ccb15a170f937f4871088cd0f83108b2271e84bdf2883a66870
        - quay.io/edge-infrastructure/assisted-service@sha256:c3a852842b88f47c51cf1c62d3a19b102729fb355df19ced0e03e8265739c39c
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        version: 0.1.3
      entries:
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.4
    - currentCSV: assisted-service-operator.v0.3.30
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-x86_64-live.x86_64.iso",
                      "version": "49.84.202110081407-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.9",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-aarch64-live-rootfs.aarch64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.9/4.9.0/rhcos-4.9.0-aarch64-live.aarch64.iso",
                      "version": "49.84.202110080947-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "rootFSUrl": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.3/rhcos-4.10.3-x86_64-live-rootfs.x86_64.img",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.3/rhcos-4.10.3-x86_64-live.x86_64.iso",
                      "version": "410.84.202201251210-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:7c13ce52d82f761aec47bc5a6639d7baabe99d0f4f2e2106c4341018c606b458
          createdAt: "2022-06-13T23:16:28Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.3.30'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:5b061126dc3adf1fc9c8c22dfded18f4652bd62537aefca88ddcc585078b94ae
        - quay.io/edge-infrastructure/assisted-image-service@sha256:d6396f9360b877a4f57139ba5b4969f243278db709be4de3573f2fba75e50018
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:6271d639e4c0647bd28fbc85cea54f31143a876c3237376b9c670ec254a9c2fc
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:2267d2d7be38f81d530fed977b0c46f6c976369cd89c123c8e036c3b1dd988d5
        - quay.io/edge-infrastructure/assisted-installer@sha256:57cf8d5fe49067a8c1345bedaf90f2b63aededdd7d615878496182c35a13892e
        - quay.io/edge-infrastructure/assisted-service@sha256:7c13ce52d82f761aec47bc5a6639d7baabe99d0f4f2e2106c4341018c606b458
        version: 0.3.30
      entries:
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.5
    - currentCSV: assisted-service-operator.v0.4.41
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.40/rhcos-4.9.40-x86_64-live.x86_64.iso",
                      "version": "49.84.202206171736-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.16/rhcos-4.10.16-x86_64-live.x86_64.iso",
                      "version": "410.84.202205191234-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.16/rhcos-4.10.16-aarch64-live.aarch64.iso",
                      "version": "410.84.202205191023-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.11.0-rc.2/rhcos-4.11.0-rc.2-x86_64-live.x86_64.iso",
                      "version": "411.86.202207090519-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.11.0-rc.2/rhcos-4.11.0-rc.2-aarch64-live.aarch64.iso",
                      "version": "411.86.202207090159-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:0fa869095185759c26c391f0e353f293c903ea739576f160d6668f5f20404bdb
          createdAt: "2022-09-11T14:56:07Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.4.41'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/assisted-installer@sha256:803168aeb7e01db77e3b2ff7418ceea3d93daccaceeb95f8fc02027144ebac75
        - quay.io/edge-infrastructure/assisted-service@sha256:0fa869095185759c26c391f0e353f293c903ea739576f160d6668f5f20404bdb
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:4ca00219efbc0d9dcce415dadc1039e9495f3a3b00ab3bd575b41554d7934899
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:007a3d43633fe355202002737f766a7c636f537f3daeffa1f62356c0bbf969aa
        - quay.io/edge-infrastructure/assisted-image-service@sha256:104d2aae313c724fb10d3ef3bba78b2370fc0597de31335453894b679a450ab8
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:56484f99799d22f345215bb65c6b81b6ee14e07d26b625c3f283a2ddfdc37238
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:951b9d625bc300b5b72a3916cb382015527ea786f10b7acbeebf83ae854ca51a
        version: 0.4.41
      entries:
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.6
    - currentCSV: assisted-service-operator.v0.4.50
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-x86_64-live.x86_64.iso",
                      "version": "411.86.202210041459-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-aarch64-live.aarch64.iso",
                      "version": "411.86.202210032347-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "412.86.202208101039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "412.86.202208101040-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:0ca1cfe04f088cd4c7318cb91978754d6472ada29e3436d05e22335740bfff49
          createdAt: "2022-11-23T19:17:47Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.4.50'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:87594d78977ead074e53b39a52e905a2d2861d24d69d2f2e33b066077cd279a4
        - quay.io/edge-infrastructure/assisted-image-service@sha256:71e8c9c76caa8fe01255fdb4a1172cda372969f7fe1399a3a54fb93e967e68cf
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:34e0341c0471b1772db11535107db06e511c8d5d9816edc3971e745928164ecd
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:c1c7281b9f06e56330cc55ac8d74185d42ee82dff105ae747db677b8eb059aea
        - quay.io/edge-infrastructure/assisted-installer@sha256:f225c86242b0bfbf58753123ef33b7c07f367a5099641d19cfda5a7121382586
        - quay.io/edge-infrastructure/assisted-service@sha256:0ca1cfe04f088cd4c7318cb91978754d6472ada29e3436d05e22335740bfff49
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:54b39c6cafefb70d258ec1d491b6a0f1dd888cd85bd442c8f40a4805cf4721ca
        version: 0.4.50
      entries:
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.7
    - currentCSV: assisted-service-operator.v0.6.65
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.8",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso",
                      "version": "48.84.202109241901-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-x86_64-live.x86_64.iso",
                      "version": "411.86.202210041459-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-aarch64-live.aarch64.iso",
                      "version": "411.86.202210032347-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-s390x-live.s390x.iso",
                      "version": "411.86.202210171842-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.9/rhcos-4.11.9-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202210171844-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-x86_64-live.x86_64.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-aarch64-live.aarch64.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-s390x-live.s390x.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.10/rhcos-4.12.10-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202303211731-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-x86_64-live.x86_64.iso",
                      "version": "413.92.202303281804-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-aarch64-live.aarch64.iso",
                      "version": "413.92.202303281804-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202303281804-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.13.0-rc.2/rhcos-4.13.0-rc.2-s390x-live.s390x.iso",
                      "version": "413.92.202303281804-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:2dfaf2c3ac58b2987b0088df302c7cf717d0b6640cdb8b2327370aa110120784
          createdAt: "2023-05-24T11:15:57Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.6.65'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:1287d947464fbf5275feb31d106d2feb856c6117f0eaec8d947f2e03bd8618c5
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:ff8e563d97f0d0e42c690ca3e61d3625e920947264ea99c396392c440cd43201
        - quay.io/edge-infrastructure/assisted-image-service@sha256:b1ba1076fe16b2f868ed31a660b16583a957a83634c7ec3cf03574b56e02144c
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:1ad91b13c763437863480df68f5b65576e95c558d4537886432a81c0b8d3cedc
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:a6f99547564cc2e047df74003019817b2dbd3dad992a0c8e53aaaba4f5b02ab6
        - quay.io/edge-infrastructure/assisted-installer@sha256:f8a7e7cb6ff1a4a7daa0cb26f0fab8da17f109653af5979c9d53c35b7ca2c1bb
        - quay.io/edge-infrastructure/assisted-service@sha256:2dfaf2c3ac58b2987b0088df302c7cf717d0b6640cdb8b2327370aa110120784
        version: 0.6.65
      entries:
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.8
    - currentCSV: assisted-service-operator.v0.7.67
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "agent-install.openshift.io/v1beta1",
                "kind": "AgentServiceConfig",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "databaseStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "filesystemStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "100Gi"
                      }
                    }
                  },
                  "imageStorage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "10Gi"
                      }
                    }
                  },
                  "mustGatherImages": [
                    {
                      "name": "cnv",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5"
                    },
                    {
                      "name": "ocs",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/ocs4/ocs-must-gather-rhel8"
                    },
                    {
                      "name": "lso",
                      "openshiftVersion": "4.8",
                      "url": "registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8"
                    }
                  ],
                  "osImages": [
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.9",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso",
                      "version": "49.84.202207192205-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-x86_64-live.x86_64.iso",
                      "version": "410.84.202210040010-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.10",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.37/rhcos-4.10.37-aarch64-live.aarch64.iso",
                      "version": "410.84.202210040011-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-x86_64-live.x86_64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-aarch64-live.aarch64.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-s390x-live.s390x.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.11",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.11/4.11.48/rhcos-4.11.48-ppc64le-live.ppc64le.iso",
                      "version": "411.86.202308081056-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-x86_64-live.x86_64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-aarch64-live.aarch64.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-s390x-live.s390x.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.12",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.12/4.12.30/rhcos-4.12.30-ppc64le-live.ppc64le.iso",
                      "version": "412.86.202308081039-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-x86_64-live.x86_64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-aarch64-live.aarch64.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-ppc64le-live.ppc64le.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.13",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/4.13/4.13.10/rhcos-4.13.10-s390x-live.s390x.iso",
                      "version": "413.92.202307260246-0"
                    },
                    {
                      "cpuArchitecture": "x86_64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-x86_64-live.x86_64.iso",
                      "version": "414.92.202305090606-0"
                    },
                    {
                      "cpuArchitecture": "arm64",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-aarch64-live.aarch64.iso",
                      "version": "414.92.202305090606-0"
                    },
                    {
                      "cpuArchitecture": "ppc64le",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/ppc64le/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-ppc64le-live.ppc64le.iso",
                      "version": "414.92.202305090606-0"
                    },
                    {
                      "cpuArchitecture": "s390x",
                      "openshiftVersion": "4.14",
                      "url": "https://mirror.openshift.com/pub/openshift-v4/s390x/dependencies/rhcos/pre-release/4.14.0-ec.2/rhcos-4.14.0-ec.2-s390x-live.s390x.iso",
                      "version": "414.92.202305090606-0"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/edge-infrastructure/assisted-service@sha256:fb0397a1402d42a64e3128e66a0817aa9466e67eb407cb792dda0d380bd5a189
          createdAt: "2023-10-08T07:14:20Z"
          description: The Infrastructure Operator for Red Hat OpenShift is responsible
            for managing the deployment of the Assisted Service.
          olm.skipRange: '>=0.0.1 <0.7.67'
          operatorframework.io/suggested-namespace: assisted-installer
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/assisted-service
          support: https://github.com/openshift/assisted-service/issues/new
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AgentClassification
            name: agentclassifications.agent-install.openshift.io
            version: v1beta1
          - kind: AgentClusterInstall
            name: agentclusterinstalls.extensions.hive.openshift.io
            version: v1beta1
          - displayName: Agent
            kind: Agent
            name: agents.agent-install.openshift.io
            version: v1beta1
          - description: AgentServiceConfig represents an Assisted Service deployment.
              Only an AgentServiceConfig with name="agent" will be reconciled. All
              other names will be rejected.
            displayName: Agent Service Config
            kind: AgentServiceConfig
            name: agentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - kind: HypershiftAgentServiceConfig
            name: hypershiftagentserviceconfigs.agent-install.openshift.io
            version: v1beta1
          - displayName: InfraEnv
            kind: InfraEnv
            name: infraenvs.agent-install.openshift.io
            version: v1beta1
          - displayName: NMStateConfig
            kind: NMStateConfig
            name: nmstateconfigs.agent-install.openshift.io
            version: v1beta1
        description: |-
          The Infrastructure Operator for Red Hat OpenShift is responsible for managing
          the deployment of the Assisted Service. Assisted Service is used to orchestrate
          baremetal OpenShift installations.

          The Assisted Service can currently install clusters with highly-available
          control planes (3 hosts and above) and can also install Single-Node
          OpenShift (SNO).  Highly available clusters are configured to use
          OpenShift's `baremetal` platform (typically used in
          [bare metal IPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_bare_metal_ipi/ipi-install-overview.html)),
          while SNO uses `none` (typically used in
          [UPI deployments](https://docs.openshift.com/container-platform/4.7/installing/installing_platform_agnostic/installing-platform-agnostic.html)).

          When creating the AgentServiceConfig CR. It is important to note that the
          controller will only ever reconcile an AgentServiceConfig named "agent",
          any other name will be ignored.
        displayName: Infrastructure Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - assisted-service
        - assisted-installer
        - OpenShift
        links:
        - name: Assisted Service
          url: https://github.com/openshift/assisted-service
        - name: Assisted Image Service
          url: https://github.com/openshift/assisted-image-service
        - name: Assisted Installer
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Controller
          url: https://github.com/openshift/assisted-installer
        - name: Assisted Installer Agent
          url: https://github.com/openshift/assisted-installer-agent
        maintainers:
        - email: support@redhat.com
          name: Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/edge-infrastructure/assisted-image-service@sha256:69ff087be8e5d8458a97f49d88b8b2025ee341d362dcf5618988c011b66688e0
        - quay.io/edge-infrastructure/assisted-installer-agent@sha256:f2aeb4f7d193ea2c5702cae0f6039c02991b9f417d091468d46974408c97efe4
        - quay.io/edge-infrastructure/assisted-installer-controller@sha256:35c118d8c07dd72fe3307424cc051d9e0426e916412171449a05e41445b9f599
        - quay.io/edge-infrastructure/assisted-installer@sha256:d85be59bc379927f46d0a88ef04172c5c6733e31e1e4a8188de2d434d5bedb66
        - quay.io/edge-infrastructure/assisted-service@sha256:fb0397a1402d42a64e3128e66a0817aa9466e67eb407cb792dda0d380bd5a189
        - quay.io/edge-infrastructure/postgresql-12-centos7@sha256:c65e48c23994a077f618075f06faa8e24a58f64f78e47902f7cf4174c43b4b1b
        - quay.io/openshift-community-operators/assisted-service-operator@sha256:12a02131f13e532a26572a524ae542766092ff75624113994d304824951161b4
        version: 0.7.67
      entries:
      - name: assisted-service-operator.v0.7.67
        version: 0.7.67
      - name: assisted-service-operator.v0.7.66
        version: 0.7.66
      - name: assisted-service-operator.v0.6.66
        version: 0.6.66
      - name: assisted-service-operator.v0.6.65
        version: 0.6.65
      - name: assisted-service-operator.v0.6.64
        version: 0.6.64
      - name: assisted-service-operator.v0.6.63
        version: 0.6.63
      - name: assisted-service-operator.v0.6.62
        version: 0.6.62
      - name: assisted-service-operator.v0.6.61
        version: 0.6.61
      - name: assisted-service-operator.v0.5.61
        version: 0.5.61
      - name: assisted-service-operator.v0.5.60
        version: 0.5.60
      - name: assisted-service-operator.v0.5.59
        version: 0.5.59
      - name: assisted-service-operator.v0.5.58
        version: 0.5.58
      - name: assisted-service-operator.v0.5.57
        version: 0.5.57
      - name: assisted-service-operator.v0.5.56
        version: 0.5.56
      - name: assisted-service-operator.v0.5.55
        version: 0.5.55
      - name: assisted-service-operator.v0.5.54
        version: 0.5.54
      - name: assisted-service-operator.v0.5.53
        version: 0.5.53
      - name: assisted-service-operator.v0.5.52
        version: 0.5.52
      - name: assisted-service-operator.v0.5.51
        version: 0.5.51
      - name: assisted-service-operator.v0.5.50
        version: 0.5.50
      - name: assisted-service-operator.v0.4.50
        version: 0.4.50
      - name: assisted-service-operator.v0.4.49
        version: 0.4.49
      - name: assisted-service-operator.v0.4.48
        version: 0.4.48
      - name: assisted-service-operator.v0.4.47
        version: 0.4.47
      - name: assisted-service-operator.v0.4.46
        version: 0.4.46
      - name: assisted-service-operator.v0.4.45
        version: 0.4.45
      - name: assisted-service-operator.v0.4.44
        version: 0.4.44
      - name: assisted-service-operator.v0.4.43
        version: 0.4.43
      - name: assisted-service-operator.v0.4.42
        version: 0.4.42
      - name: assisted-service-operator.v0.4.41
        version: 0.4.41
      - name: assisted-service-operator.v0.4.40
        version: 0.4.40
      - name: assisted-service-operator.v0.4.39
        version: 0.4.39
      - name: assisted-service-operator.v0.4.38
        version: 0.4.38
      - name: assisted-service-operator.v0.3.38
        version: 0.3.38
      - name: assisted-service-operator.v0.3.37
        version: 0.3.37
      - name: assisted-service-operator.v0.3.36
        version: 0.3.36
      - name: assisted-service-operator.v0.3.35
        version: 0.3.35
      - name: assisted-service-operator.v0.3.34
        version: 0.3.34
      - name: assisted-service-operator.v0.3.33
        version: 0.3.33
      - name: assisted-service-operator.v0.3.32
        version: 0.3.32
      - name: assisted-service-operator.v0.3.31
        version: 0.3.31
      - name: assisted-service-operator.v0.3.30
        version: 0.3.30
      - name: assisted-service-operator.v0.3.29
        version: 0.3.29
      - name: assisted-service-operator.v0.3.28
        version: 0.3.28
      - name: assisted-service-operator.v0.3.27
        version: 0.3.27
      - name: assisted-service-operator.v0.3.26
        version: 0.3.26
      - name: assisted-service-operator.v0.3.25
        version: 0.3.25
      - name: assisted-service-operator.v0.2.25
        version: 0.2.25
      - name: assisted-service-operator.v0.2.24
        version: 0.2.24
      - name: assisted-service-operator.v0.2.23
        version: 0.2.23
      - name: assisted-service-operator.v0.2.22
        version: 0.2.22
      - name: assisted-service-operator.v0.2.21
        version: 0.2.21
      - name: assisted-service-operator.v0.2.20
        version: 0.2.20
      - name: assisted-service-operator.v0.2.19
        version: 0.2.19
      - name: assisted-service-operator.v0.2.18
        version: 0.2.18
      - name: assisted-service-operator.v0.2.17
        version: 0.2.17
      - name: assisted-service-operator.v0.2.16
        version: 0.2.16
      - name: assisted-service-operator.v0.2.15
        version: 0.2.15
      - name: assisted-service-operator.v0.2.14
        version: 0.2.14
      - name: assisted-service-operator.v0.2.13
        version: 0.2.13
      - name: assisted-service-operator.v0.2.12
        version: 0.2.12
      - name: assisted-service-operator.v0.2.11
        version: 0.2.11
      - name: assisted-service-operator.v0.2.10
        version: 0.2.10
      - name: assisted-service-operator.v0.2.9
        version: 0.2.9
      - name: assisted-service-operator.v0.2.8
        version: 0.2.8
      - name: assisted-service-operator.v0.2.7
        version: 0.2.7
      - name: assisted-service-operator.v0.2.6
        version: 0.2.6
      - name: assisted-service-operator.v0.2.5
        version: 0.2.5
      - name: assisted-service-operator.v0.2.4
        version: 0.2.4
      - name: assisted-service-operator.v0.2.3
        version: 0.2.3
      - name: assisted-service-operator.v0.2.2
        version: 0.2.2
      - name: assisted-service-operator.v0.2.1
        version: 0.2.1
      - name: assisted-service-operator.v0.2.0
        version: 0.2.0
      - name: assisted-service-operator.v0.1.3
        version: 0.1.3
      - name: assisted-service-operator.v0.1.2
        version: 0.1.2
      - name: assisted-service-operator.v0.1.1
        version: 0.1.1
      - name: assisted-service-operator.v0.1.0
        version: 0.1.0
      - name: assisted-service-operator.v0.0.8
        version: 0.0.8
      - name: assisted-service-operator.v0.0.7
        version: 0.0.7
      - name: assisted-service-operator.v0.0.6
        version: 0.0.6
      - name: assisted-service-operator.v0.0.5
        version: 0.0.5
      - name: assisted-service-operator.v0.0.5-rc.1
        version: 0.0.5-rc.1
      - name: assisted-service-operator.v0.0.4
        version: 0.0.4
      - name: assisted-service-operator.v0.0.3
        version: 0.0.3
      - name: assisted-service-operator.v0.0.2
        version: 0.0.2
      - name: assisted-service-operator.v0.0.1
        version: 0.0.1
      name: ocm-2.9
    defaultChannel: alpha
    packageName: assisted-service-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Devfile
      provider-url: https://devfile.io
    name: devworkspace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: devworkspace-operator.v0.38.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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: "true"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.7.1+git
          operators.operatorframework.io/internal-objects: '["devworkspaceroutings.controller.devfile.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DevWorkspaceOperatorConfig
            name: devworkspaceoperatorconfigs.controller.devfile.io
            version: v1alpha1
          - kind: DevWorkspaceRouting
            name: devworkspaceroutings.controller.devfile.io
            version: v1alpha1
          - kind: DevWorkspace
            name: devworkspaces.workspace.devfile.io
            version: v1alpha1
          - kind: DevWorkspace
            name: devworkspaces.workspace.devfile.io
            version: v1alpha2
          - kind: DevWorkspaceTemplate
            name: devworkspacetemplates.workspace.devfile.io
            version: v1alpha1
          - kind: DevWorkspaceTemplate
            name: devworkspacetemplates.workspace.devfile.io
            version: v1alpha2
        description: |
          The DevWorkspace Operator enables cluster-level support for the
          [Devfile 2.0 spec](https://docs.devfile.io), enabling static, reproducible
          configurations for launching cloud-based editors and IDEs in OpenShift and
          Kubernetes clusters.

          Leveraging the language server protocol and the Eclipse Theia web IDE, the
          DevWorkspace operator provides easy configuration of full development
          environments on the cloud with support for a wide variety of languages and
          technologies, including Go, Java, Typescript/Javascript, Python, and more.

          The DevWorkspace Operator is also used in the Web Terminal Operator to
          automatically provision Web Terminal environments.

          ## Installing the operator
          The DevWorkspace Operator can be installed directly from the OperatorHub UI and
          will be available in all namespaces on the cluster. DevWorkspace creation is
          driven by the DevWorkspace custom resource, which can be created in any
          namespace to provision a full development environment. To get started, browse
          the DevWorkspace [spec](https://devfile.io/docs/2.3.0/devfile-schema).

          Once a DevWorkspace is started, it can be accessed via the URL in its
          `.status.mainUrl` field.

          It's recommended to install the DevWorkspace Operator to the
          `openshift-operators` namespace for compatibility.

          ## Uninstalling the operator
          The DevWorkspace Operator utilizes finalizers on resources it creates and
          webhooks to restrict access to development resources. As a result, manual steps
          are required in uninstalling the operator. See the
          [documentation](https://github.com/devfile/devworkspace-operator/blob/main/docs/uninstall.md)
          for details.
        displayName: DevWorkspace Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Devworkspace Operator
        - DevWorkspaces
        - Devfile
        links:
        - name: Devworkspace Operator
          url: https://github.com/devfile/devworkspace-operator
        maintainers:
        - email: dakwon@redhat.com
          name: David Kwon
        - email: ibuziuk@redhat.com
          name: Ilya Buziuk
        maturity: alpha
        provider:
          name: Devfile
          url: https://devfile.io
        relatedImages:
        - registry.redhat.io/ubi9/ubi-minimal@sha256:a50731d3397a4ee28583f1699842183d4d24fadcc565c4688487af9ee4e13a44
        - registry.redhat.io/devworkspace/devworkspace-operator-bundle@sha256:e2b731c676f12ff02781f0ac279ce4aa3652b6e24e90eba5880579c49b737adf
        - registry.redhat.io/devworkspace/devworkspace-project-clone-rhel9@sha256:3f0619571d6fa2259796f837ebfd0eb0fa225054ac38ed0d144245cccce51515
        - registry.redhat.io/devworkspace/devworkspace-rhel9-operator@sha256:5382d54bbd3ade51a7dda1c8a8a86aca30fb5655c61a4a4e85ecceef7e36f168
        version: 0.38.0
      entries:
      - name: devworkspace-operator.v0.38.0
        version: 0.38.0
      - name: devworkspace-operator.v0.37.0
        version: 0.37.0
      - name: devworkspace-operator.v0.36.0
        version: 0.36.0
      - name: devworkspace-operator.v0.35.1
        version: 0.35.1
      - name: devworkspace-operator.v0.34.0
        version: 0.34.0
      - name: devworkspace-operator.v0.33.0
        version: 0.33.0
      - name: devworkspace-operator.v0.32.1
        version: 0.32.1
      - name: devworkspace-operator.v0.31.2
        version: 0.31.2
      - name: devworkspace-operator.v0.31.1
        version: 0.31.1
      - name: devworkspace-operator.v0.31.0
        version: 0.31.0
      - name: devworkspace-operator.v0.30.2
        version: 0.30.2
      - name: devworkspace-operator.v0.30.1
        version: 0.30.1
      - name: devworkspace-operator.v0.30.0
        version: 0.30.0
      - name: devworkspace-operator.v0.29.0
        version: 0.29.0
      - name: devworkspace-operator.v0.28.0-0.1719314743.p
        version: 0.28.0+0.1719314743.p
      - name: devworkspace-operator.v0.28.0
        version: 0.28.0
      - name: devworkspace-operator.v0.27.0-0.1714987663.p
        version: 0.27.0+0.1714987663.p
      - name: devworkspace-operator.v0.27.0
        version: 0.27.0
      - name: devworkspace-operator.v0.26.0
        version: 0.26.0
      - name: devworkspace-operator.v0.25.0
        version: 0.25.0
      - name: devworkspace-operator.v0.24.0
        version: 0.24.0
      - name: devworkspace-operator.v0.23.0
        version: 0.23.0
      - name: devworkspace-operator.v0.22.0
        version: 0.22.0
      - name: devworkspace-operator.v0.21.2
        version: 0.21.2
      - name: devworkspace-operator.v0.21.1
        version: 0.21.1
      - name: devworkspace-operator.v0.20.0
        version: 0.20.0
      - name: devworkspace-operator.v0.19.1
        version: 0.19.1
      - name: devworkspace-operator.v0.19.1-0.1682321189.p
        version: 0.19.1+0.1682321189.p
      - name: devworkspace-operator.v0.19.1-0.1679521112.p
        version: 0.19.1+0.1679521112.p
      - name: devworkspace-operator.v0.18.1
        version: 0.18.1
      - name: devworkspace-operator.v0.18.1-0.1675929565.p
        version: 0.18.1+0.1675929565.p
      - name: devworkspace-operator.v0.17.0
        version: 0.17.0
      - name: devworkspace-operator.v0.16.0-0.1666668361.p
        version: 0.16.0+0.1666668361.p
      - name: devworkspace-operator.v0.16.0
        version: 0.16.0
      - name: devworkspace-operator.v0.15.2-0.1661828401.p
        version: 0.15.2+0.1661828401.p
      - name: devworkspace-operator.v0.15.2
        version: 0.15.2
      - name: devworkspace-operator.v0.14.1
        version: 0.14.1
      - name: devworkspace-operator.v0.13.0
        version: 0.13.0
      - name: devworkspace-operator.v0.12.0
        version: 0.12.0
      - name: devworkspace-operator.v0.11.0
        version: 0.11.0
      - name: devworkspace-operator.v0.10.0
        version: 0.10.0
      - name: devworkspace-operator.v0.9.0
        version: 0.9.0
      name: fast
    defaultChannel: fast
    packageName: devworkspace-operator
    provider:
      name: Devfile
      url: https://devfile.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-opensearch-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opensearch-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/opensearch-operator@sha256:fea1404da760585252a5aa573a04fbfa9662e48164254dff34babbfb6902e332
          description: Stackable Operator for OpenSearch
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/opensearch-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for OpenSearchClusterSpec via
              `CustomResource`
            displayName: opensearchclusters.opensearch.stackable.tech
            kind: OpenSearchCluster
            name: opensearchclusters.opensearch.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for OpenSearch
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opensearch
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/opensearch-operator@sha256:fea1404da760585252a5aa573a04fbfa9662e48164254dff34babbfb6902e332
        - registry.connect.redhat.com/stackable/stackable-opensearch-operator:25.11.0
        version: 25.11.0
      entries:
      - name: opensearch-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-opensearch-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: aws-neuron-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aws-neuron-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.aws/v1alpha1",
                "kind": "DeviceConfig",
                "metadata": {
                  "name": "device-config",
                  "namespace": "ai-operator-on-aws"
                },
                "spec": {
                  "customSchedulerImage": "public.ecr.aws/eks-distro/kubernetes/kube-scheduler:v1.32.9-eks-1-32-24",
                  "devicePluginImage": "public.ecr.aws/neuron/neuron-device-plugin:2.24.23.0",
                  "driversImage": "public.ecr.aws/q5p6u7h8/neuron-openshift/neuron-kernel-module:2.24.7.0",
                  "schedulerExtensionImage": "public.ecr.aws/neuron/neuron-scheduler:2.24.23.0",
                  "selector": {
                    "feature.node.kubernetes.io/aws-neuron": "true"
                  },
                  "useInTreeDrivers": false
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-10-27T12:17:40Z"
          description: AWS Neuron operator is resposible for deploying AWS Neuron
            kernel drivers, device plugin and customed scheduler
          operatorframework.io/suggested-namespace: ai-operator-on-aws
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DeviceConfig
            name: deviceconfigs.k8s.aws
            version: v1alpha1
        description: AWS Neuron operator is resposible for deploying AWS Neuron kernel
          drivers, device plugin and customed scheduler
        displayName: Aws Neuron Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws-neuron-operator
        links:
        - name: Aws Neuron Operator
          url: https://aws-neuron-operator.domain
        maintainers:
        - email: yshnaidm@redhat.com
          name: Yeggeny Shnaidman
        - email: shapirov@amazon.com
          name: Mikhail Shapirov
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/q5p6u7h8/neuron-openshift/operator:v0.1.1
        - quay.io/community-operator-pipeline-prod/aws-neuron-operator:0.0.3
        version: 0.0.3
      entries:
      - name: aws-neuron-operator.v0.0.3
        version: 0.0.3
      - name: aws-neuron-operator.v0.0.2
        version: 0.0.2
      - name: aws-neuron-operator.v0.0.1
        version: 0.0.1
      name: Fast
    - currentCSV: aws-neuron-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.aws/v1alpha1",
                "kind": "DeviceConfig",
                "metadata": {
                  "name": "device-config",
                  "namespace": "ai-operator-on-aws"
                },
                "spec": {
                  "customSchedulerImage": "public.ecr.aws/eks-distro/kubernetes/kube-scheduler:v1.32.9-eks-1-32-24",
                  "devicePluginImage": "public.ecr.aws/neuron/neuron-device-plugin:2.24.23.0",
                  "driversImage": "public.ecr.aws/q5p6u7h8/neuron-openshift/neuron-kernel-module:2.24.7.0",
                  "schedulerExtensionImage": "public.ecr.aws/neuron/neuron-scheduler:2.24.23.0",
                  "selector": {
                    "feature.node.kubernetes.io/aws-neuron": "true"
                  },
                  "useInTreeDrivers": false
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-10-27T12:17:40Z"
          description: AWS Neuron operator is resposible for deploying AWS Neuron
            kernel drivers, device plugin and customed scheduler
          operatorframework.io/suggested-namespace: ai-operator-on-aws
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DeviceConfig
            name: deviceconfigs.k8s.aws
            version: v1alpha1
        description: AWS Neuron operator is resposible for deploying AWS Neuron kernel
          drivers, device plugin and customed scheduler
        displayName: Aws Neuron Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - aws-neuron-operator
        links:
        - name: Aws Neuron Operator
          url: https://aws-neuron-operator.domain
        maintainers:
        - email: yshnaidm@redhat.com
          name: Yeggeny Shnaidman
        - email: shapirov@amazon.com
          name: Mikhail Shapirov
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/aws-neuron-operator:0.0.3
        - public.ecr.aws/q5p6u7h8/neuron-openshift/operator:v0.1.1
        version: 0.0.3
      entries:
      - name: aws-neuron-operator.v0.0.3
        version: 0.0.3
      - name: aws-neuron-operator.v0.0.2
        version: 0.0.2
      - name: aws-neuron-operator.v0.0.1
        version: 0.0.1
      name: Stable
    defaultChannel: Fast
    packageName: aws-neuron-operator
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OpenShift Database Access
      provider-url: ""
    name: dbaas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dbaas-operator.v0.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSConnection",
                "metadata": {
                  "name": "dbaasconnection-example"
                },
                "spec": {
                  "databaseServiceID": "instance-example",
                  "databaseServiceType": "instance",
                  "inventoryRef": {
                    "name": "inventory-example",
                    "namespace": "openshift-dbaas-operator"
                  }
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSInstance",
                "metadata": {
                  "name": "dbaasinstance-sample"
                },
                "spec": {
                  "cloudProvider": "AWS",
                  "cloudRegion": "US_EAST_1",
                  "inventoryRef": {
                    "name": "inventory-example",
                    "namespace": "openshift-dbaas-operator"
                  },
                  "name": "my-cluster-free"
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSInventory",
                "metadata": {
                  "name": "inventory-example"
                },
                "spec": {
                  "credentialsRef": {
                    "name": "dbaas-vendor-credentials"
                  },
                  "providerRef": {
                    "name": "provider-example-registration"
                  }
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSPolicy",
                "metadata": {
                  "name": "dbaaspolicy-sample"
                },
                "spec": {
                  "disableProvisions": false
                }
              },
              {
                "apiVersion": "dbaas.redhat.com/v1beta1",
                "kind": "DBaaSProvider",
                "metadata": {
                  "labels": {
                    "related-to": "dbaas-operator",
                    "type": "dbaas-provider-registration"
                  },
                  "name": "provider-example-registration"
                },
                "spec": {
                  "allowsFreeTrial": true,
                  "connectionKind": "ProviderConnection",
                  "credentialFields": [
                    {
                      "displayName": "ProviderAPIKeyD",
                      "helpText": "This is the API Key for the example provider to show on UI",
                      "key": "APIKey",
                      "required": true,
                      "type": "maskedstring"
                    }
                  ],
                  "externalProvisionDescription": "Follow the guide to start a free Provider Serverless (beta) cluster",
                  "externalProvisionURL": "https://www.exmample.com/docs/provider/quickstart.html",
                  "groupVersion": "dbaas.redhat.com/v1beta1",
                  "instanceKind": "ProviderInstance",
                  "inventoryKind": "ProviderInventory",
                  "provider": {
                    "displayDescription": "This is an example for providers on how to implement their operator to integrate with DBaaS.",
                    "displayName": "DBaaS Provider Example ",
                    "icon": {
                      "base64data": "SGVsbG8sIHdvcmxkLg==",
                      "mediatype": "image/png"
                    },
                    "name": "Provider Example"
                  },
                  "provisioningParameters": {
                    "cloudProvider": {
                      "conditionalData": [
                        {
                          "defaultValue": "GCP",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "FREETRIAL"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "Google Cloud Platform",
                              "value": "GCP"
                            }
                          ]
                        },
                        {
                          "defaultValue": "AWS",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "SERVERLESS"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "Amazon Web Services",
                              "value": "AWS"
                            },
                            {
                              "displayValue": "Google Cloud Platform",
                              "value": "GCP"
                            }
                          ]
                        },
                        {
                          "defaultValue": "AWS",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "Amazon Web Services",
                              "value": "AWS"
                            },
                            {
                              "displayValue": "Google Cloud Platform",
                              "value": "GCP"
                            }
                          ]
                        }
                      ],
                      "displayName": "Cloud Provider"
                    },
                    "dedicatedLocationLabel": {
                      "displayName": "Select regions \u0026 nodes",
                      "helpText": "Select the geographical region where you want the database instance to run, and set the number of nodes you want running in this dedicated cluster."
                    },
                    "hardwareLabel": {
                      "displayName": "Hardware per node",
                      "helpText": "Select the compute and storage requirements for this database instance."
                    },
                    "machineType": {
                      "conditionalData": [
                        {
                          "defaultValue": "m5.large",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "AWS"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "2 vCPU, 8 GiB RAM",
                              "value": "m5.large"
                            },
                            {
                              "displayValue": "4 vCPU, 16 GiB RAM",
                              "value": "m5.xlarge"
                            },
                            {
                              "displayValue": "8 vCPU, 32 GiB RAM",
                              "value": "m5.2xlarge"
                            },
                            {
                              "displayValue": "16 vCPU, 64 GiB RAM",
                              "value": "m5.4xlarge"
                            },
                            {
                              "displayValue": "32 vCPU, 128 GiB RAM",
                              "value": "m5.8xlarge"
                            }
                          ]
                        },
                        {
                          "defaultValue": "n1-standard-2",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "GCP"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "2 vCPU, 7.5 GiB RAM",
                              "value": "n1-standard-2"
                            },
                            {
                              "displayValue": "4 vCPU, 15 GiB RAM",
                              "value": "n1-standard-4"
                            },
                            {
                              "displayValue": "8 vCPU, 30 GiB RAM",
                              "value": "n1-standard-8"
                            },
                            {
                              "displayValue": "16 vCPU, 60 GiB RAM",
                              "value": "n1-standard-16"
                            },
                            {
                              "displayValue": "32 vCPU, 120 GiB RAM",
                              "value": "n1-standard-32"
                            }
                          ]
                        }
                      ],
                      "displayName": "Compute"
                    },
                    "name": {
                      "displayName": "Cluster name"
                    },
                    "nodes": {
                      "displayName": "nodes"
                    },
                    "plan": {
                      "conditionalData": [
                        {
                          "defaultValue": "SERVERLESS",
                          "options": [
                            {
                              "displayValue": "Free trial",
                              "value": "FREETRIAL"
                            },
                            {
                              "displayValue": "Serverless",
                              "value": "SERVERLESS"
                            },
                            {
                              "displayValue": "Dedicated",
                              "value": "DEDICATED"
                            }
                          ]
                        }
                      ],
                      "displayName": "Hosting plan"
                    },
                    "planLabel": {
                      "displayName": "Select a plan"
                    },
                    "regions": {
                      "displayName": "us-west-2"
                    },
                    "serverlessLocationLabel": {
                      "displayName": "Select regions",
                      "helpText": "Select the geographical region where you want the database instance to run."
                    },
                    "spendLimit": {
                      "conditionalData": [
                        {
                          "defaultValue": "0",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "SERVERLESS"
                            }
                          ]
                        }
                      ],
                      "displayName": "Spend limit"
                    },
                    "spendLimitLabel": {
                      "displayName": "Spend limit",
                      "helpText": "Set a spending limit on resources for this database instance."
                    },
                    "storageGib": {
                      "conditionalData": [
                        {
                          "defaultValue": "15",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "AWS"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "15 GiB",
                              "value": "15"
                            },
                            {
                              "displayValue": "35 GiB",
                              "value": "35"
                            },
                            {
                              "displayValue": "75 GiB",
                              "value": "75"
                            },
                            {
                              "displayValue": "150 GiB",
                              "value": "150"
                            },
                            {
                              "displayValue": "300 GiB",
                              "value": "300"
                            },
                            {
                              "displayValue": "600 GiB",
                              "value": "600"
                            }
                          ]
                        },
                        {
                          "defaultValue": "15",
                          "dependencies": [
                            {
                              "field": "plan",
                              "value": "DEDICATED"
                            },
                            {
                              "field": "cloudProvider",
                              "value": "GCP"
                            }
                          ],
                          "options": [
                            {
                              "displayValue": "15 GiB",
                              "value": "15"
                            },
                            {
                              "displayValue": "35 GiB",
                              "value": "35"
                            },
                            {
                              "displayValue": "75 GiB",
                              "value": "75"
                            },
                            {
                              "displayValue": "150 GiB",
                              "value": "150"
                            },
                            {
                              "displayValue": "300 GiB",
                              "value": "300"
                            },
                            {
                              "displayValue": "600 GiB",
                              "value": "600"
                            }
                          ]
                        }
                      ],
                      "displayName": "Storage"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Database
          containerImage: quay.io/ecosystem-appeng/dbaas-operator:v0.5.0
          description: Discover & connect with database instances hosted on 3rd-party
            ISV cloud platforms.
          operatorframework.io/suggested-namespace: openshift-dbaas-operator
          operators.operatorframework.io/builder: operator-sdk-v1.22.2
          operators.operatorframework.io/internal-objects: '["dbaasconnections.dbaas.redhat.com","dbaasproviders.dbaas.redhat.com","dbaasplatforms.dbaas.redhat.com","dbaasinstances.dbaas.redhat.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/RHEcosystemAppEng/dbaas-operator
          support: rhoda-requests@redhat.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DBaaSConnection
            name: dbaasconnections.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSConnection defines the schema for the DBaaSConnection
              API.
            displayName: DBaaSConnection
            kind: DBaaSConnection
            name: dbaasconnections.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSInstance
            name: dbaasinstances.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSInstance defines the schema for the DBaaSInstance API.
            displayName: DBaaSInstance
            kind: DBaaSInstance
            name: dbaasinstances.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSInventory
            name: dbaasinventories.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSInventory defines the schema for the DBaaSInventory
              API. Inventory objects must be created in a valid namespace, determined
              by the existence of a DBaaSPolicy object.
            displayName: Provider Account
            kind: DBaaSInventory
            name: dbaasinventories.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSPlatform
            name: dbaasplatforms.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSPlatform defines the schema for the DBaaSPlatform API.
            displayName: DBaaSPlatform
            kind: DBaaSPlatform
            name: dbaasplatforms.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSPolicy
            name: dbaaspolicies.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSPolicy enables administrative capabilities within a
              namespace, and sets a default inventory policy. Policy defaults can
              be overridden on a per-inventory basis.
            displayName: Provider Account Policy
            kind: DBaaSPolicy
            name: dbaaspolicies.dbaas.redhat.com
            version: v1beta1
          - kind: DBaaSProvider
            name: dbaasproviders.dbaas.redhat.com
            version: v1alpha1
          - description: DBaaSProvider defines the schema for the DBaaSProvider API.
            displayName: DBaaSProvider
            kind: DBaaSProvider
            name: dbaasproviders.dbaas.redhat.com
            version: v1beta1
        description: |
          The OpenShift Database Access Operator enables OpenShift users to discover & connect with database instances
          hosted on 3rd-party ISV cloud platforms such as CrunchyData Bridge & CockroachCloud.

          ## Feedback & Support

          Please contact us at [rhoda-requests@redhat.com](mailto:rhoda-requests@redhat.com)

          For more information on how to use our service, please refer to our [Quick Starts](quickstart?keyword=database).
        displayName: OpenShift Database Access Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rhoda
        - oda
        - dbaas
        - database
        - db
        - data
        - access
        - crunchy
        - bridge
        - cockroach
        - cockroachdb
        - cloud
        - ack
        - amazon
        - rds
        - relational
        links:
        - name: GitHub
          url: https://github.com/RHEcosystemAppEng/dbaas-operator
        maintainers:
        - email: ecosystem-appeng@redhat.com
          name: Red Hat Ecosystem App Engineering
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: OpenShift Database Access
        relatedImages:
        - quay.io/ecosystem-appeng/dbaas-dynamic-plugin:0.5.0
        - quay.io/ecosystem-appeng/dbaas-operator:v0.5.0
        - quay.io/ecosystem-appeng/rds-dbaas-operator-catalog:v0.4.0
        - quay.io/openshift-community-operators/dbaas-operator@sha256:b2474b569406fb0f47a7042042429bbc5cd2edbbd119e701c6f440a139e1b3ac
        - quay.io/openshift/origin-kube-rbac-proxy:4.10.0
        - registry.developers.crunchydata.com/crunchydata/crunchy-bridge-operator-catalog:v0.0.6
        - gcr.io/cockroach-shared/ccapi-k8s-operator-catalog:v0.0.5
        version: 0.5.0
      entries:
      - name: dbaas-operator.v0.5.0
        version: 0.5.0
      name: stable
    defaultChannel: stable
    packageName: dbaas-operator
    provider:
      name: OpenShift Database Access
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EPAM Delivery Platform
      provider-url: https://epam.github.io/edp-install/
    name: sonar-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sonar-operator.v3.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "Sonar",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonar-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonar",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonar-sample"
                },
                "spec": {
                  "defaultPermissionTemplate": "edp-default",
                  "secret": "sonar-secret",
                  "settings": [
                    {
                      "key": "sonar.global.exclusions",
                      "values": [
                        "**/*.jsx",
                        "**/*.tsx"
                      ]
                    },
                    {
                      "fieldValues": {
                        "beginBlockRegexp": ".*",
                        "endBlockRegexp": ".*"
                      },
                      "key": "sonar.issue.ignore.block"
                    },
                    {
                      "key": "sonar.dbcleaner.hoursBeforeKeepingOnlyOneSnapshotByDay",
                      "value": "20"
                    }
                  ],
                  "url": "https://example.com"
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarGroup",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonargroup-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonargroup",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonargroup-sample"
                },
                "spec": {
                  "description": "Developers",
                  "name": "sonar-developers",
                  "permissions": [
                    "admin"
                  ],
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarPermissionTemplate",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonarpermissiontemplate-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonarpermissiontemplate",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonarpermissiontemplate-sample"
                },
                "spec": {
                  "default": true,
                  "description": "EDP permission templates",
                  "groupsPermissions": {
                    "sonar-developers": [
                      "scan"
                    ],
                    "sonar-users": [
                      "issueadmin"
                    ]
                  },
                  "name": "edp-default",
                  "projectKeyPattern": ".+",
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarQualityGate",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonarqualitygate-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonarqualitygate",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonarqualitygate-sample"
                },
                "spec": {
                  "conditions": {
                    "new_duplicated_lines_density": {
                      "error": "1",
                      "op": "GT"
                    }
                  },
                  "default": true,
                  "name": "sonarqualitygate-sample",
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarQualityProfile",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonarqualityprofile-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonarqualityprofile",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonarqualityprofile-sample"
                },
                "spec": {
                  "default": true,
                  "language": "go",
                  "name": "sonarqualityprofile-sample",
                  "rules": {
                    "go:S1151": {
                      "params": "max=\"6\"",
                      "severity": "MAJOR"
                    }
                  },
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              },
              {
                "apiVersion": "edp.epam.com/v1alpha1",
                "kind": "SonarUser",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "sonar-operator",
                    "app.kubernetes.io/instance": "sonaruser-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sonaruser",
                    "app.kubernetes.io/part-of": "sonar-operator"
                  },
                  "name": "sonaruser-sample"
                },
                "spec": {
                  "email": "sonaruser@mail.com",
                  "groups": [
                    "sonar-administrators"
                  ],
                  "login": "sonaruser",
                  "name": "sonar user",
                  "permissions": [
                    "scan"
                  ],
                  "secret": "sonaruser-secret",
                  "sonarRef": {
                    "name": "sonar"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Developer Tools
          containerImage: docker.io/epamedp/sonar-operator:3.1.0
          createdAt: "2023-09-08T12:53:57Z"
          description: An Operator for managing Sonar entities.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/epam/edp-sonar-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonarGroup is the Schema for the sonar group API.
            displayName: Sonar Group
            kind: SonarGroup
            name: sonargroups.edp.epam.com
            version: v1alpha1
          - description: SonarPermissionTemplate is the Schema for the sonar permission
              template API.
            displayName: Sonar Permission Template
            kind: SonarPermissionTemplate
            name: sonarpermissiontemplates.edp.epam.com
            version: v1alpha1
          - description: SonarQualityGate is the Schema for the sonarqualitygates
              API
            displayName: Sonar Quality Gate
            kind: SonarQualityGate
            name: sonarqualitygates.edp.epam.com
            version: v1alpha1
          - description: SonarQualityProfile is the Schema for the sonarqualityprofiles
              API
            displayName: Sonar Quality Profile
            kind: SonarQualityProfile
            name: sonarqualityprofiles.edp.epam.com
            version: v1alpha1
          - description: Sonar is the Schema for the sonars API.
            displayName: Sonar
            kind: Sonar
            name: sonars.edp.epam.com
            version: v1alpha1
          - description: SonarUser is the Schema for the sonarusers API
            displayName: Sonar User
            kind: SonarUser
            name: sonarusers.edp.epam.com
            version: v1alpha1
        description: |
          Sonar Operator is an operator that is responsible for establishing
          a connection to provided SonarQube server, reconciling Sonar entities (users,
          groups, permission templates, etc) according to the created CRs.
        displayName: EDP Sonar Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - analysis
        - automation
        - code
        - continuous
        - devops
        - edp
        - inspection
        - metrics
        - metrics
        - monitoring
        - operator
        - quality
        - security
        - software
        - static
        - technical
        - vulnerabilities
        links:
        - name: Sonar Operator
          url: https://github.com/epam/edp-sonar-operator
        maintainers:
        - email: SupportEPMD-EDP@epam.com
          name: epmd-edp
        maturity: alpha
        provider:
          name: EPAM Delivery Platform
          url: https://epam.github.io/edp-install/
        relatedImages:
        - docker.io/epamedp/sonar-operator:3.1.0
        - quay.io/openshift-community-operators/sonar-operator@sha256:5e7a87f52955162f090c1d7fc69f6d0917444b553355a11c061ab60f289a17d7
        version: 3.1.0
      entries:
      - name: sonar-operator.v3.1.0
        version: 3.1.0
      name: alpha
    defaultChannel: alpha
    packageName: sonar-operator
    provider:
      name: EPAM Delivery Platform
      url: https://epam.github.io/edp-install/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Opstree Solutions
      provider-url: ""
    name: redis-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: redis-operator.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"Redis","metadata":{"name":"redis"},"spec":{"mode":"cluster","size":3,"global":{"image":"quay.io/opstree/redis:v6.2","imagePullPolicy":"IfNotPresent","password":"Opstree@1234","resources":{"requests":{"cpu":"100m","memory":"128Mi"},"limits":{"cpu":"100m","memory":"128Mi"}}},"master":{"service":{"type":"ClusterIP"},"redisConfig":{}},"slave":{"service":{"type":"ClusterIP"},"redisConfig":{}},"service":{"type":"ClusterIP"},"redisConfig":{},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:1.0","imagePullPolicy":"Always","resources":{"requests":{"cpu":"100m","memory":"128Mi"},"limits":{"cpu":"100m","memory":"128Mi"}}},"storage":{"volumeClaimTemplate":{"spec":{"storageClassName":"buildpiper-storage","accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}}}}]'
          capabilities: Seamless Upgrades
          categories: Database, Storage
          certified: "false"
          containerImage: quay.io/opstree/redis-operator:v0.4.0
          createdAt: 06-02-2021
          description: A Golang based redis operator that will make/oversee Redis
            standalone/cluster mode setup on top of the Kubernetes.
          repository: https://github.com/ot-container-kit/redis-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Redis
            displayName: Redis
            kind: Redis
            name: redis.redis.redis.opstreelabs.in
            version: v1beta1
        description: |+
          A Golang based redis operator that will make/oversee Redis standalone/cluster mode setup on top of the Kubernetes. It can create a redis cluster setup with best practices on Cloud as well as the Bare metal environment. Also, it provides an in-built monitoring capability using redis-exporter.

          ### Supported Features

          Here the features which are supported by this operator:-
          - Redis cluster/standalone mode setup
          - Inbuilt monitoring with prometheus exporter
          - Dynamic storage provisioning with pvc template
          - Resources restrictions with k8s requests and limits
          - Password/Password-less setup
          - Node selector and affinity
          - Priority class to manage setup priority
          - SecurityContext to manipulate kernel parameters
          ### Documentation

          [Documentation](https://docs.opstreelabs.in/redis-operator/)

          ### Getting Help

          This project is managed by OpsTree Solutions. If you have any queries or suggestions, mail us at opensource@opstree.com.

          ### Contributing

          You can contribute to this project by:-
          - Raising Bugs and Feature Requests
          - Fixing issue by opening a Pull Request
          - Improving Documentation

          ### License

          Logging Operator is licensed under [Apache License, Version 2.0](https://github.com/OT-CONTAINER-KIT/redis-operator/blob/master/LICENSE)


        displayName: Redis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Database
        - Redis
        - Opstree
        - CRD
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://docs.opstreelabs.in/redis-operator/
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep Rawat
        maturity: beta
        minKubeVersion: 1.11.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/opstree/redis-operator:v0.4.0
        - quay.io/openshift-community-operators/redis-operator@sha256:21f4648e0e71b33ef24b4921ab34b9e2b5e90eac25ade735d51331ac4f7c4cf3
        version: 0.4.0
      entries:
      - name: redis-operator.v0.4.0
        version: 0.4.0
      - name: redis-operator.v0.3.0
        version: 0.3.0
      name: preview
    - currentCSV: redis-operator.v0.15.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"RedisCluster","metadata":{"name":"redis-cluster"},"spec":{"clusterSize":3,"clusterVersion":"v7","securityContext":{"runAsUser":1000,"fsGroup":1000},"persistenceEnabled":true,"kubernetesConfig":{"image":"quay.io/opstree/redis:v7.0.5","imagePullPolicy":"IfNotPresent"},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:v1.44.0","imagePullPolicy":"IfNotPresent"},"storage":{"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}}}},{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"Redis","metadata":{"name":"redis-standalone"},"spec":{"kubernetesConfig":{"image":"quay.io/opstree/redis:v7.0.5","imagePullPolicy":"IfNotPresent"},"storage":{"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:v1.44.0","imagePullPolicy":"IfNotPresent"},"securityContext":{"runAsUser":1000,"fsGroup":1000}}},{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"RedisSentinel","metadata":{"name":"redis-sentinel"},"spec":{"clusterSize":3,"podSecurityContext":{"runAsUser":1000,"fsGroup":1000},"redisSentinelConfig":{"redisReplicationName":"redis-replication"},"kubernetesConfig":{"image":"quay.io/opstree/redis-sentinel:v7.0.7","imagePullPolicy":"IfNotPresent","resources":{"requests":{"cpu":"101m","memory":"128Mi"},"limits":{"cpu":"101m","memory":"128Mi"}}}}},{"apiVersion":"redis.redis.opstreelabs.in/v1beta1","kind":"RedisReplication","metadata":{"name":"redis-replication"},"spec":{"clusterSize":3,"kubernetesConfig":{"image":"quay.io/opstree/redis:v7.0.5","imagePullPolicy":"IfNotPresent"},"storage":{"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}}}}},"redisExporter":{"enabled":true,"image":"quay.io/opstree/redis-exporter:v1.44.0","imagePullPolicy":"Always"},"podSecurityContext":{"runAsUser":1000,"fsGroup":1000}}}]'
          capabilities: Seamless Upgrades
          categories: Database, Storage
          certified: "false"
          containerImage: quay.io/opstree/redis-operator:v0.15.1
          createdAt: 24-09-2023
          description: A Golang based redis operator that will make/oversee Redis
            standalone/cluster mode setup on top of the Kubernetes.
          repository: https://github.com/ot-container-kit/redis-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Redis Cluster
            displayName: RedisCluster
            kind: RedisCluster
            name: redisclusters.redis.redis.opstreelabs.in
            version: v1beta1
          - description: Redis Replication
            displayName: RedisReplication
            kind: RedisReplication
            name: redisreplications.redis.redis.opstreelabs.in
            version: v1beta1
          - description: Redis Sentinel
            displayName: RedisSentinel
            kind: RedisSentinel
            name: redissentinels.redis.redis.opstreelabs.in
            version: v1beta1
          - description: Redis
            displayName: Redis
            kind: Redis
            name: redis.redis.redis.opstreelabs.in
            version: v1beta1
        description: "A Golang based redis operator that will make/oversee Redis\nstandalone/cluster
          mode setup on top of the Kubernetes. It can create a\nredis cluster setup
          with best practices on Cloud as well as the Bare metal\nenvironment. Also,
          it provides an in-built monitoring capability using\nredis-exporter.\n\nOrganizations
          that are using Redis Operator to manage their redis workload \ncan be found
          here. If your organization is also using Redis Operator, please \nfree to
          add by creating a PR https://github.com/OT-CONTAINER-KIT/redis-operator/pulls.\n\nThis
          operator only supports versions of redis =>6.\n\n### Supported Features\n\nHere
          the features which are supported by this operator:-\n- Redis cluster and
          standalone mode setup\n- Redis cluster failover and recovery\n- Redis leader
          and follower setup with Sentinel for High Availability\n- Inbuilt monitoring
          with redis exporter\n- Password and password-less setup of redis\n- TLS
          support for additional security layer\n- Ipv4 and Ipv6 support for redis
          setup\n- External configuration support for leader and follower\n- Detailed
          monitoring grafana dashboard\n\n### Documentation\n\n[Documentation](https://ot-redis-operator.netlify.app/)\n\n###
          Getting Help\nThis project is managed by OpsTree Solutions. If you have
          any queries or\nsuggestions, mail us at opensource@opstree.com.\n\n### Contributing\n\nYou
          can contribute to this project by:-\n- Raising Bugs and Feature Requests\n-
          Fixing issue by opening a Pull Request\n- Improving Documentation\n\n###
          License\n\nLogging Operator is licensed under [Apache License, Version\n2.0](https://github.com/OT-CONTAINER-KIT/redis-operator/blob/master/LICENSE)\n"
        displayName: Redis Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Database
        - Redis
        - Opstree
        - CRD
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://ot-redis-operator.netlify.app/
        - name: Buildpiper
          url: https://buildpiper.io
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep Rawat
        maturity: beta
        minKubeVersion: 1.20.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/openshift-community-operators/redis-operator@sha256:2ed6bfdf37e36c63cde3633443553dee410201200ad351e6d91a5651f8e20ecc
        - quay.io/opstree/redis-operator:v0.15.1
        version: 0.15.1
      entries:
      - name: redis-operator.v0.15.1
        version: 0.15.1
      - name: redis-operator.v0.15.0
        version: 0.15.0
      - name: redis-operator.v0.14.0
        version: 0.14.0
      - name: redis-operator.v0.13.0
        version: 0.13.0
      - name: redis-operator.v0.8.0
        version: 0.8.0
      - name: redis-operator.v0.6.0
        version: 0.6.0
      - name: redis-operator.v0.5.0
        version: 0.5.0
      - name: redis-operator.v0.4.0
        version: 0.4.0
      - name: redis-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: redis-operator
    provider:
      name: Opstree Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: node-maintenance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: node-maintenance-operator.v5.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodemaintenance.medik8s.io/v1beta1",
                "kind": "NodeMaintenance",
                "metadata": {
                  "name": "nodemaintenance-sample"
                },
                "spec": {
                  "nodeName": "node02",
                  "reason": "Test node maintenance"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: ""
          createdAt: "2025-11-03 11:08:50"
          description: Node Maintenance Operator for cordoning and draining nodes.
          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: "true"
          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.skipRange: '>=5.4.0 <5.5.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/node-maintenance-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NodeMaintenance is the Schema for the nodemaintenances API
            displayName: Node Maintenance
            kind: NodeMaintenance
            name: nodemaintenances.nodemaintenance.medik8s.io
            version: v1beta1
        description: |
          Node Maintenance Operator (NMO)

          This operator will keep nodes cordoned and drained while a matching NodeMaintenance (nm) custom resource exists.
          This is useful when investigating problems with a machine, or performing an operation on the underlying machine that might result in node failure.
        displayName: Node Maintenance Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - medik8s
        - Node-maintenance
        - nmo
        links:
        - name: Node Maintenance Operator
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance/node-maintenance-operator
        - name: Source Code
          url: https://github.com/medik8s/node-maintenance-operator
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: beta
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/workload-availability/node-maintenance-operator-bundle@sha256:6cefc4f419229dbdd5677dd2e672201941117ee52cff715754db2dfd5607dd54
        - registry.redhat.io/workload-availability/node-maintenance-rhel9-operator@sha256:fb1ba771e3a1bbcc635ea0209bc7365b23744744a39e2134266b4e5c3a23573b
        version: 5.5.0
      entries:
      - name: node-maintenance-operator.v5.5.0
        version: 5.5.0
      - name: node-maintenance-operator.v5.4.1
        version: 5.4.1
      - name: node-maintenance-operator.v5.4.0
        version: 5.4.0
      name: stable
    defaultChannel: stable
    packageName: node-maintenance-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: serverless-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: serverless-operator.v1.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>1.36.1 <1.37.0'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel9@sha256:591bc064b99356334b7b53c56e2b14538dd8747577127b37fcffadbbd5df4498
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel9@sha256:052fe86c647d1ebedba9dbe1054c3d94fd7b02bb9670837e434549c5a7544e37
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel9@sha256:abe431c9d7390e6e3032c3ac74532b8162564729be7e5a6bca70c3d2374a3437
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:f64b1bf7dca0906dfa673ae299a2d965527c1c7a714020d046dad277d329f965
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel9@sha256:6886795e240a9d602a3f68c910f543b5f4c7874ede3bc3e229182d77d509e294
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel9@sha256:d9a299304e810eeef13adc7bdac4cad7a6fe80a9e18fa3ce93a2796f0586323b
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel9@sha256:8c4cd89255e0424249cbadc7f77ad0cbee43d7b9fe3cfb67b4ef63ab3fa827f6
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel9@sha256:4a7848b64e1bacadf5205de9a0fd64437c8b7dcf86959dc1095e12d873a4610a
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel9@sha256:615627148f347917a6214b3e036e201d7d23a119445d8b19dfefdde9647546d6
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel9@sha256:43856ee2f87c7ce642b998c48405785a5f940cda17f9f1afbbe626f7f860394c
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel9-operator@sha256:23e10eb061828568dc06cf4d4b3485e8fbd5fe8b711b2424ea954b7e1dd2534f
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel9@sha256:50293c7fe9b2bc102e9eb9a57fa97bf6d6ee7c3334866217aa6debf3fb77e7ec
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel9@sha256:dffaac938538b6a28306e8d3a444ff6c794d50501dfcfb742c7e99558c71296a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel9@sha256:04d23df5bec13af304cf718e66f65d198a5d1d29e022db536b96c9a7f7817a34
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        version: 1.37.0
      entries:
      - name: serverless-operator.v1.37.0
        version: 1.37.0
      - name: serverless-operator.v1.36.1
        version: 1.36.1
      - name: serverless-operator.v1.36.0
        version: 1.36.0
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable
    - currentCSV: serverless-operator.v1.29.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2023-07-28T05:42:31Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          olm.skipRange: '>=1.29.0 <1.29.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of a particular version of Knative
              Serving
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Eventing
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Kafka components
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:f37f494956adf0892ffca34d2a4c9b839ce28dc9f2779ca32e8801fb4f0e9105
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:216f58dc8c8166c0c69fc0312b667daad14cf39b7aeb7bc0fe1e313376f1a5fd
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:fd86ea2a34de43014dea3ba2b8d705a3d94347d3a24a370a8bfd032ed239dc56
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:b780634fffe2257eb845f8c1d25498d9c654d0327c1f8841b40d90c176a2bfe0
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:03a3d6f0314acf4da4f3d3d85f1e273a3ef25828d28f5b22f394441d55a645f3
        - registry.redhat.io/ocp-tools-4-tech-preview/source-to-image-rhel8@sha256:98d8cb3a255641ca6a1bce854e5e2460c20de9fb9b28e3cc67eb459f122873dd
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:04866e16881f64ff2b5edd379eab0731c9d66a47c25ebfe79c8d8ad33d8116e6
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:61fb98802490323bb03ff4a7060334d8fbda9e9f95cd6366b29b1b6494e4ef8b
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:4408d1fcf34c0ffe9327d4c9c0bc772afa969d831bc5de1097164d10b4e8d900
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:16b39335e97bcc7c970a8ba385c61d8333e9912faaee813ccf8520d434b7bb7a
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:3d7801f7ffe6420595779673a170235921a9090333f8ca51d5b7f664e19c82b2
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:aea5f200a845e1d4dc718d76465fdbb1eeac2b20ecae224d5d20a98214ad0357
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ad399867cbb712111db6affaf5c9e3573699ed0eb0def8ce6057de02054ced4f
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:8273842d8e1714fa03c7e0809924b1ffc5ef282f79b9606bd8ac88c03e7a16bd
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:3b7449287adf98f0cf0a1dc74e03b69218be3bcf5538327bc34ef776cc1c69c4
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a10e76aa15707e708f82c8d9e8b5179bf67780d99f3c3e2e99b84ae2a0aa4ecb
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:10788ca67809e5a2d76d6d72df7dd64ea4407773999707a7681e0cf1b5c4695f
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:a59ba5aeb8e66db3d8ba9074b8e553603c59e6b0e35b57b82c4ce3de589b94cc
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:7dd11d385b3d5a178566d901650ecd45e4af395faec2141d57b98af8fc1e5151
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:594c3ac24bf59802e2d3fa127e4051277bc07b6444f934f535fddeb668ccc144
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:de0634d14962bdb8701a8c29e80b7b70684824462bc5203e5fa7f139839cb73b
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:3aab995872336e6ccb590ef6488c097cff38a91348055031145427a00aa6b732
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:c4cff5ad5b0ac79e71a16b88640a312ab320817041317f50caf575f7e12a864e
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:a3c5d5fd8014c432830be912aedebbc58f9c60a8cabd87ae6c42c7b8d27db8f9
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:e5db11a0adb889f907cad797dad9cf2de09c433e5522fa333193cb35575802d8
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:56e48afb1dcbf4e266ace944105f3c45042550d8d4a0528c982225a793d26d56
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:b520305189c7567b2f8ac867b20468259fb22cd3edc5b4576af2bfcdb0c11855
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:31d45f10a8519addec9aac115c5edc8a2e14f9621c875d95f123d1291776ef4b
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:fe916630003194dbcd3894dd880cad8b15a041a5e534cd8f76fde6296db00797
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:a4943c0563c45ceccfda0a01e26be3a01c1437c89d927714c577bf6060495958
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:397eb425f383c1273c7976bea69a603530676a00a61f461ceb5f48d67901c4cd
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:ab90ec9b3cd9203fdcdd7c43abf95f48c9d7479a9c7af479eb1e4b6599ba9642
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c2cb80bce34a74afa76151d2b44dc25ece73fb274cdfc6fdf243b1b0cb7d989f
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:6342358e6aed2339333ebf37fc223a41a0a3e199a0e4a840f3f66e5accf8f233
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:0229a0a4f026f04f8fa0a1cd8e7afea10117fe3f12e21986ec6089769c8afcaf
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c12c471902b8e2596588d9e553ad59b501d979dd04f301d45f7d45e794737a8c
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:557e73127326be051aa6257e7daeb9721e2af04d2f06cc26cfc7a1073666b989
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:bd134e64c156dc5c81d14522c9c9efcc1f56b2e972ac8ecb1bb1b130c76adc60
        version: 1.29.1
      entries:
      - name: serverless-operator.v1.29.1
        version: 1.29.1
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.29
    - currentCSV: serverless-operator.v1.30.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2023-10-30T14:03:25Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          olm.skipRange: '>=1.30.0 <1.30.2'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of a particular version of Knative
              Serving
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Eventing
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: Represents an installation of a particular version of Knative
              Kafka components
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c933641efc6bf919b1945be5a01dfb7774ae865975b1bb1f44653b3e4ca9f1f
        - registry.redhat.io/ocp-tools-4-tech-preview/source-to-image-rhel8@sha256:98d8cb3a255641ca6a1bce854e5e2460c20de9fb9b28e3cc67eb459f122873dd
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:124087e6402caa375b24b976c3b9fd7d53890e20ac3b0b57ba3ac646e352c7ce
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:e8c756b659f6187790bc1a5115e0f71791bff96630859a905bc5b75d14596e0e
        - registry.redhat.io/rhel8/buildah@sha256:a1e5cc0fb334e333e5eab69689223e8bd1f0c060810d260603b26cf8c0da2023
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3fb6e7626d2b0c92c2a2fef35e9b8171382b4bdf54393f2ab1281ae7ab441761
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:a9c95fc208cc03625cf49bcebdaac73da823d1fa3bfae4239d7db20d3a0b8723
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:ce4b36c90955a356a5774410356aafdac2b60795526a3488b0b76ac2ec1a018c
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:e97eb2bb7eb529cbfe67c14e823ffa1269d614e2d35723896e89efa12a499c6a
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:1455606c8edf611d996a48e29ead53e0bb4078f55384b7689058bb25fc59fb2c
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:c9353a022e6f883b7c0b2d87b1bc4653172feb13806ebf0aa075d6f9f43c264e
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:e9505aba7c44cffc3f261a5dc7617a0e54ed98e78f73ea3c9c7a508560b792ed
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:9a28cb1d4c4f4dd7d494829eeeb7122db2174a27747f915244672c95dc8f9d12
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:2d3e314a6584fc6974517c1a992fb59f5133f54c2f6cfaa42f579c0d332e0300
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:6057a2d18406e00b0b7b1731870f707844e39193d4cce6de50137b77f17d220b
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:3c8bf480dbb05e09e8d07cab12e4736643f61bf9b5d98efa6bc0557eb31887bc
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:06e9e073f092dce67d4227e282fd8eea6dc9f38b90a8d444cf448d80d027b616
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:12bc62246142a605f4efed0f6bb8843aa2df7699cc1c5ab53debb94b0682e9d1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:53d3620bb0490d83aaf6a356bb7d3b9e7147222d1a2017f8317f05fa90cd3de9
        - registry.redhat.io/ubi8/python-39@sha256:0ff58549041d32b685cc850aaa85da32d1ef73f99cd4b6e0f6882dad5f0399bf
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d03f2bf8f5e7cba47102ba26ea0149ae6719076c645d5e451058392d6044b738
        - registry.redhat.io/openshift-serverless-1-tech-preview/eventing-istio-controller-rhel8@sha256:b6ef281fca2b80d379b1e28fe3f23119df8ff765fb2cca291d514053fb512da6
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ef116868c9c60e5ee246060688da49832571ff6a7901cfe143a42d048743736e
        - registry.redhat.io/ubi8/nodejs-16@sha256:8abeddc6ccfffbe313f87e5e069e18cb7047f2c7880ad63cf15bcd0a79ba71ff
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:01c8fee92889a84a19136b0843e4fed5db31c1f2a6d997669f103373fd995e36
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:a0c5a91348ec71697747113990652feb024143fbbd0cdd67e8ae672730383a79
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:3508434d5ab6b38c8a7466256f1158ebcd75e8b751afcc5255da8c21566804f0
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:cd1abeb2067afa44a0f1eca301cce37307582d56c1147820ff86b9b64a40588b
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:51ac9aced282f62c8fb2d3696da3696b8496d8f877e9846fe3a4a743ccd63bea
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:66149df8549380673c24e1487d0c2c8eb638b7e502455671ca64ed6f32ff82c3
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:69ea22c646c09208ca68345d4b3508453d8c49f7f7fd9a4ff4c4cb78be7bff43
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:a5154f9d13a1c373b8ba47e2bcfb9d4474fd03e08db4134c92aa4f049536f1a8
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:21a638b481639c3c58e8b026d875917c30a5874b08fa4ceac40d447076b2bfa4
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:96d6f52711ba433ab2f273be8080840a88e626e989027480424d19c2fe1e9454
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:92a39ca90984cebb1938447a31c9170b52994ae98f83caa860acdb2c3ebb75c7
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:32445e4a73bc7c1e8007775adeb147175d934b17e7d3d4dcf422104dbe80a52b
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:2264d2cd4ee2a720667d625ff42b6f8be4f2cd65b57a91eb6044da086a110740
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:1f7e65009168383cdcb6b2caa22fe4db49e03c71574973a8086f6c332dc5e26e
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:96c135ced2e3bff434addb012368d96d0778ef1d294ba507ae7e624811e20d46
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:85a369d5696771d0932b61760336e52ae3f7c66f9a3def5312aefcac03ba516e
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:16939b802f4c16a3d9d941917d0363325f40cdef28f6e1a982bc95401117674c
        - registry.redhat.io/ubi8/openjdk-17@sha256:af305e087061cbaa4107ce0b304a1ef987f6b54bae3f75bfd529cfd084cba9b5
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:4800c85e8de031bf77f6fae0e4c8e6c1a9912ccdfb77799cc2ea574c37d870ac
        version: 1.30.2
      entries:
      - name: serverless-operator.v1.30.2
        version: 1.30.2
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.30
    - currentCSV: serverless-operator.v1.31.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-02-01T19:15:42Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          olm.skipRange: '>=1.31.0 <1.31.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.13/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c078071cd51c7fd5584039b54a2004331c05a897ee8b0689bfcb9204a8ebae80
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:3be4fc173b489d0beb768739f60274e07d95ffee86d70a8423e1f59678c805ea
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:63e08279d2852d494d4f8836c54e2ce942a342f452a23ef437df9640bb2f5bc9
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:eacdad8db61b23634c3f89bffa3f1c30ac5c7bbb5e938c6208003ff00f9595f1
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:d8bdd96c6a9b31f48c961ca438c254511db785fd34bd10b98084b702baf0ebab
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:486bf60d17a5d265ebd65d590a6ee1a7e13bf3953ea797b2f6c2b5910789858f
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:dbd9c0cac86f79b8d91ab65ae7543854144781d4cb17ef16183931ec9bc234a7
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:8353ccb4f0d70597d61e4fd1f799d4bb74e5bc038f6b9916059e712aa70b97c1
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:bf693eaa845373e1a06041626a9314ec00519a6fd2437b12f7f4f3f104864039
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:af5c30fc9f631d9ed110641b815315d8b4aef539f687277a3821d9939ca5dd46
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-webhook-rhel8@sha256:99f5dcb92a33c047f0b68236a3a42ffaec78037dd0a5eb79d1144d62d6bfcf43
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:887480662b1bfe09626fbca8ec7c5da879d097c46dca11764ea98474ec78ab5d
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:3181ad775ead55f317f96466c2719b2b73c5b35d31933733da21273955d160c4
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:9221a833ecc66fe2354aee7aaec2a2470b21e2d89cb6ed287ece32edab2a2edb
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:d2a34100f6309c3cbac7c9ccd452b7bdab2a533afc99463bfbf91e3ba2706d54
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3b01ebdb0704dc6a1a993ac076819489495ab3fe32e3c14609e42d1358856be2
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:ef7d28580e75d746449a90cc0e5343ef3f4ddd75bd9fb866d97836bfbc3b314d
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:e49220eaf3143a8958f0cb1f22115b2e834fb7177755433bdc592b753a54a8ec
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:3dab790fa845ed7eda088e5abdc87799da1354884a53ff1ff728739b8e278418
        - registry.redhat.io/ubi8/nodejs-16@sha256:f90b28179d1d5de68d42ef1a9166d70a9dfea85a1c6a4bf12dce2c59eeb2fbb1
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:0a2989f688b966277652957b312df736ada43fff78fd89b17f60b2137e38f115
        - registry.redhat.io/ubi8/python-39@sha256:4f35cbcc6f4e108c69f7d2b70cce5afb138741b0c961506376d524e001b922f4
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:565becc77dbe3bf03d89b1399d6e1853253276a71e80b6b14069285d03cb14b2
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:677be039353b2cee51d5faa5d5a2abd6a7bd46992ffe9521eb033eea9925c785
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:b2480154951109a159acfb88c5472a312a515d6a6b060d832b3f7bfc16f90ac5
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:3a4e7412322755b4c278540c965a403f9e178f138bd4ad7929c1c24a8036dd14
        - registry.redhat.io/openshift-serverless-1/serving-domain-mapping-rhel8@sha256:22ffe08d6a0d5461158613f2b2a2ac6936025357e282a09197a750c42b5e6922
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:a82288782b61ea46d068cc09ee10608d3201c136abfc767e4d37734775101390
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:9e120ecdbea54eecbc5e0412c1774f8a2ee70d7fca682ecd0757b8627f70680b
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:7941b421b3e18bda8c565305241621fcdf1212cbbe0dc02f38f4ab0565d2bfcb
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b37dd2cf4b459fecb6d681cac36918e486c3bd22501df50b90e20b15fe164d56
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1-tech-preview/eventing-istio-controller-rhel8@sha256:5b38e5c71e422161e40f9c37dd2f46212cb80e8e37b00247767276b957080397
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:cda04e3b7c2c1f37164733ad162ea0c4e52f14fdc8eb8bdef8507f0ed5454640
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:1ee675125f7141e91f4ee57ebce082967834bbdabe1a870c221f31aeb8750be4
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:433821e6c7f43da5ca2e38c0550722feb179a0bab021decd9a97ad020cb78b76
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:df1aee67a161fa19d7f49ba56d53e0682cc1996436e985a12a2068fa419b54ea
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:1fcecc11b55007b9c6969a24940a391968378e4102eebf7ceabbe7efda138575
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:2572d98363cca2dd94984d6cefa573c5054fc206ee70048f901ad4b846d8dd52
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:80361e052d366ffffe9a99893cd83965bd69a9ff81d8c9262976de145bbc6184
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:de62762efa0df95ed23df56f5520490d8a231e47ce13c433c512254ceff81844
        version: 1.31.1
      entries:
      - name: serverless-operator.v1.31.1
        version: 1.31.1
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.31
    - currentCSV: serverless-operator.v1.32.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-08-01T10:56:58Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.32.0 <1.32.2'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:16c026f09b377c44253cdb902b9a5fa0ae766fd0185cca1863798a212e0daee1
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.14/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:2f0f84767f7d76dbbf4387ca2e272766267a2c46b5bc29f5d01f05dfa39cb944
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:14ca32e999767776c3e585ff5eb1aa568f7d76fd3e5ae24cae05ce7564678080
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:e1e2273fdf6384d95e1128e54c0794d7d620291a272bfb1f91e0c2723be7f1b7
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:2a30ae808d5c32d812406ff4ac9b472e82b6bb0555e62eee4c2c6a972f8750c2
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:22b4d47725ed8cdd663ee26a03f31198fff9e71dc703532e70c42bdfb4840811
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:828d31bf8a441091b8aed03da213a6b4ffae260070eff58c3319156f9bf04f5a
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:e7e6cbb46720eeca3f0f4b9829dfeeb3db373a83c89cd808b667ded4d5e139a4
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1a1de677297525c0c5d317fe8a7a42684fe3f1b422a7d6bea1f70f0924653b08
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:ab09a1710aa2331e24df9e7283f3909fdb104c1b314dea88e919d0a396f334d3
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:3be20d63d7e82f35ac88274532d6ab7839f9a7306ca272e7d532ac03215faea9
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:1befc9969edd2062b3df69f45aee9771b33a2659c3a14db0aaaf5c3df985af58
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:25cbdf78b67e7f5a360313ccfbe3b6e2c98873b4e9ddee46c115a623e77c7abb
        - registry.redhat.io/ubi8/openjdk-21@sha256:bb95ea866269ac8652f666ee1587d71f4f43da33493c2be7f6a9548bcfd2407c
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:a5a7b2be50f211d4d9d555b2a2e2302096c139ff5011d984cc386f1530007f16
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:0551f1657dc158bd41eb2338dd6514d55c39fc77300cdf1744d8f5ab14e9ed1b
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:7c8cefd5823ad953f112b905c651f12a97491aafc008b2ba0111f0c9e83e50ae
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:9d36cde68bd822016e967148eebd2ef3e7ffab9dcdd37d17f33017e9b703d9b2
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:0729de0f3f03ed220216c6cb718fc34beece0ceacd926b5e2480bdfcf44df5cd
        - registry.redhat.io/ubi8/nodejs-16@sha256:69439fe83fa957089cb6fd3c1042ab71d719f81dd457a5d1fbc56c1e3ea600da
        - registry.redhat.io/ubi8/openjdk-17@sha256:a166bd2fedb99cb62ebf4695ab46e19c7e451f887940cdf0b8245c81e403aea2
        - registry.redhat.io/rhel8/buildah@sha256:55f5c7d88c77e1ab5a2ab8e877172b2b66cb196e21f10dc45148470d0ee8bbae
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:da5f813dea324ffe9679524ea7f3801536fa48f7dbbd8da56a8492b916b15fc3
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:8033b7c1e903ba313134645c626eb3bf7ab1a0d68dc2575bc8e26884ad4f805f
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:4933b76d95d411d597d4dc460fc46c92875d28e107cda661946206a9d934b8b5
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:5930caa25ea875d29dff0ec5e235eaa13cb6dc98980d8045335eba1a09ae761d
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:990962ad245a6d62cd11551bd4e1f8b14dc08abbebe47beddb2f4874f78d4f47
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:46b8dc1c8ea6c40401d4d1a9868ab3edbe8b9e92364a43add6722489e2eefa04
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:04e5b3882223d45a5f5383ce6481efb7b2cbedea57ebd894caafb1454ad8c09d
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:e70dd3a9e067075eb56e5f2772642545e308348cd49b89357c02de3979b1a5be
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:ab9a1b952e9603b4ecc5f197715a1d871abc25ebb0c5e6470d4f0b365ae94276
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:0507ea8745267fdb53329a5274d59d23c387225d2594af51dd2603b4ad99db0f
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:e55c70591c0498b6b85f0d68e304e88b830ea0b35219ba8881143555757be4b7
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:b0db9f0fc85fcdcd5da980633a3a44be2bbabae068f89d0965263de38789e812
        - registry.redhat.io/ubi8/python-39@sha256:8c96e8648cc6651d0cefbd20496a89f208621601f9664554d3fdeef8ced25453
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:42f31eb8f12dd36541c8c0b6572d942c62e2064d5418428482d676d117a6c426
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:20566173a8e907980e603d82fae4d96fcdfd5c43d9004c2e506cf0e09a47b91e
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:b008da825ee2429f04cf39258389740c68056f82cf4bde0cbd3db850b6256885
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:70c26c7ac48d1eaaf1f95ca5c5b8ba8ee6b047a3c9c4a2c2db9c49a506bb2205
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:4c9faea6fd162db3340aee8c11af11a08c9d79bbed104967c25df26c4933c8ae
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:3ffcf746df914f0949477b46f90cb2992bb63f8198d73ffd54208e7a777a9cb1
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:9b6524f9c0e7f78e6ffb372a8587eaf5f4f1281eaf64f93dd00b63be84a4c21e
        version: 1.32.2
      entries:
      - name: serverless-operator.v1.32.2
        version: 1.32.2
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.32
    - currentCSV: serverless-operator.v1.33.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-11-20T08:38:34Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.33.0 <1.33.3'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:e1cb1c24333605e52364456f9bd8d86d787d1bae17ef75dd04be61257fdb2256
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/installing-serverless#install-serverless-operator).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/installing-serverless)
          - [Develop Serverless Applications](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:9b94875e0e5d7abdb3b9ba7b04e217a2a9b7b4410d38d1608c86d1c21f929cc1
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:56c6ac59a68976741d2ba676a53e59fc494d04dc44b513d72fdf8a9ad894a54d
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:b871bd08b782c9168e9a54340efffc0b0effadde8079915b848e4eff72bb3e95
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:eb95deb2105f14c6a9f3bb2cdd7306b446109a9b142a7bfc726b6429f270d9e5
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:af66cc7dbed88907d96a390fe5c8807a2a60bbe3276b8cd13b4b061cbaf7b162
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:a9c84ac7e7c3fb1e5dedaf949d54a3aee8a62397d2bd6022094671de00b651da
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:05e3dd6255294b691783523f7722cfaf13aca1a1e1dab344a25eeea72aaf9f9e
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:d8ae7bc888f11121fbbba65074389b879bc22453bbabc551d79d0cee68fc33a3
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:eab4aa93b9d175045b1f01bff09681107d839285e0d633cd5146d2a2efab373c
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:dd1f7c850f7cf2a4d70403deedd8a57ecc6e0ee5455d68fdfc49ff175fe42dde
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:ea9e4de6228d5c3ed494c2ce5317ec290543ad40bcf7c43c2a3d6565e5d94e5d
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:28c9d05a3ba73b76f293e8f4902b574deb44f77a2bae8cf92473b8a8b10cee92
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:f938cc534fc4b24bb9449f1e1e1e904dc588e6646c98474de4b8c81d083b4d96
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:5c7f29554d04eb9348932953344f2ea0806d14e7704355619381bf395d993f58
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:9b850afa750a67120f68a49f4834ba7f105563df22cbcbc563317fe1545640d1
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ace72435e3e63ab21dff2345f958cf6bd171537ef2846c5d5d91cf821877140d
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:b12272e1a9cb4f4bb62c4badc62b0bab110abb99484612dc781c46bfeac13cc0
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:42d16e4d9f14a427e7a5b7e3a4ea07c258e0f2c74984baeee3b4926a8c5e2640
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:993597ff83a4d62a23f642fadc92f182944b953770716b73b7d19492b5a462c3
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:b2be693c71cfc4ce934d5b01efb863dc6e391f93a6b15fe7eeb15914063a8294
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:09060de091d617bd4606f7a289b4528265ae0b7a04737f383e79efd5b0d3eb79
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:672022b6f2a080483d9d6f6f4a5f42e52e522a5797105f3465731809c6cf4947
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:359f8b9fbb4c3c2f79e8c70f3b50c994693b930f6f078c34c87112ebb93037e3
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:a8821b59d495e24598b27c6510b32ef19de2bb04ea1e568fc5afb9135d772036
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:28ae309e4cf7feabaf78ac6067e1173f9f5b33a71c06d6c27cf25e01a0b1ed64
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:2bd241898bd54dcb248ae86470430042dc545d45e7519ed470a1a9c8c63bdc37
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:62bf4bee0ea17ecc60366ecc71431adc79d6f0a5b9f59489913b474128c4adb0
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:93b2f5211e79abc38bf92f0b8fb8adf046303efa2fe62c47a2fef9dfb5662f55
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:e1cb1c24333605e52364456f9bd8d86d787d1bae17ef75dd04be61257fdb2256
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:6dbfa2573a2c78e450d3c1c04c6e7cbc50d9272233e828fe9b42e575ecf386c0
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:510e98837a549f489b2d74939f3b9c7ed90a8260ba914910f681d5c0dec7655c
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:879fca768b46676f1df89de1cdc4ded8dac310209c146c2f381ed1deb19b06be
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:e9b38f1df225238836aa829f3a2016372859fb8709cdd2b30496498669a90be1
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:ccbda564735555785815f27f8f25ad9c6c27dabe4e262586fc51609331692527
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:c3dee2598088bda36ef474f4748943a29169ed9589aeb0f77bc79a7f6bef9907
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:a0399a993155e755409355740b260d9b0019559a62be3b6253d8693a4fb59286
        version: 1.33.3
      entries:
      - name: serverless-operator.v1.33.3
        version: 1.33.3
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.33
    - currentCSV: serverless-operator.v1.34.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2024-11-20T08:53:53Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.34.0 <1.34.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:a4b3d75903de1929326041e9885213074473f07fda91b299548d45680c295c00
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.34/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Build strategies including Source-to-Image (S2I) and Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.34/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.34/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-ingress-rhel8@sha256:0f126893074cd0398654c4018df6e882b7610e148c82a41ac814f4bf3830bf9d
        - registry.redhat.io/openshift-serverless-1/knative-rhel8-operator@sha256:01ea7a06332d60ac16ae0a27adcaaede3f680a98a22ff995259a6c42ac0e358d
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:095629572a40469eb651c9f81d6c10ff46254eff8b9813cadce54d6f0075c2fb
        - registry.redhat.io/openshift-serverless-1/serving-controller-rhel8@sha256:946daeff59b41a6f8c4842f8c2668f97ff1b49e2a8afae5d64ba3baa916b1d95
        - registry.redhat.io/openshift-serverless-1/kn-cli-artifacts-rhel8@sha256:c0376504edae12e7af6b6cce02ac53b6b374f5058ebefcbdbd32628b551bb0c4
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-post-install-rhel8@sha256:76480201188dd142206040af845bd55b44155af92e0c5ee9bcdb8660bea0cdb8
        - registry.redhat.io/ubi8/openjdk-21@sha256:095175ef8573de8055e67bd5c8a21098448ac73db4e0d6ccd5269dd36b4d263c
        - registry.redhat.io/openshift-serverless-1/eventing-istio-controller-rhel8@sha256:ef7f34a025e40f93fbd51f3a4596998a6dc508db824f137ffa1fbaf90e88f4a8
        - registry.redhat.io/openshift-serverless-1/serving-activator-rhel8@sha256:144883b09d8a999fd4d2a109d074e44d7d8b959987512379aa71c71e4060ca28
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-controller-rhel8@sha256:86ffb8be1762782d643c147cefcfbc2b4723b0f97d017314a99bd2275d05a1cf
        - registry.redhat.io/openshift-serverless-1/kourier-control-rhel8@sha256:b9d85323e110d8eb6600223c38f9d4cbe89b50d59e03bf1e6b8808f7cef9a3a5
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/ubi8/python-39@sha256:ac12e4706e0fdc464e791a3f274474ac1bb14d5af8f217c440fbb0c76d6a5d00
        - registry.redhat.io/openshift-serverless-1/serving-queue-rhel8@sha256:a5950f81cbc64d1edb64ae7f7f120c3435d36afcd14ffc34ae522af297d87e1e
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-controller-rhel8@sha256:1252960c0c0a4dc7b39090cde0fd5742a19453b1a65a08b737bc41d044a0882a
        - registry.redhat.io/openshift-serverless-1/func-utils-rhel8@sha256:e520d1b6b87f85dfffab5e53cfb70562ab7edf450061c07609da39e3b2498fdd
        - registry.redhat.io/ubi8/nodejs-20-minimal@sha256:acee3b00ccf8ff49bcebcf10e028e34a84d45f28f855363bafb3b93c75e84f11
        - registry.redhat.io/openshift-serverless-1-tech-preview/backstage-plugins-eventmesh-rhel8@sha256:09dd94090eea9cac7a1935a6d671cb97fd9fd5714c715c9d2aed461e468ca54a
        - registry.redhat.io/openshift-serverless-1/serverless-rhel8-operator@sha256:633ea30ea3b6d5152bbdb61acb4271e5905d50fbe3c731fb4c8d8640a57f1970
        - registry.redhat.io/openshift-serverless-1/eventing-mtchannel-broker-rhel8@sha256:586fc8ed88f91298dbff31bc2fc4c63e0d6d9356e3358b2f853f49511c3ff9bf
        - registry.redhat.io/openshift-serverless-1/ingress-rhel8-operator@sha256:b07010595201d7cfe0ec4f18e612d323eb38464c74eb187f275617a744d9df12
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-dispatcher-rhel8@sha256:d40daf67b36387faa9f55e70e50d10d02accfd19470c0ac11b78bf969947fed1
        - registry.redhat.io/openshift-serverless-1/eventing-webhook-rhel8@sha256:30cb41f09067959cfe3792e070fca62820fcca4035683e5c43dd46d1cce97c01
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-rhel8@sha256:3d17f12cc9da578549254ba1b8934b5afc66e453b1d5d667bb90281e45b8795c
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-webhook-rhel8@sha256:0f8d006d0e7468783739942a1c82c7aec376c9948f23841132c8ddece8ecba06
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/serving-autoscaler-hpa-rhel8@sha256:a9e8583c19ca3e01593f8c0e54731cb73df9b46b2ed47a2b1c711828c2295f82
        - registry.redhat.io/openshift-serverless-1/eventing-mtping-rhel8@sha256:d5ad3c9db7ce8e4fc950261f7c388476214a03d92e0043c7bbc4f0add2b1e69e
        - registry.redhat.io/openshift-serverless-1-tech-preview/knative-client-plugin-event-sender-rhel8@sha256:f94f0e8d21a6b6341b1db00513a1a2ed5cd84fcd898a376ecde942e940a518e7
        - registry.redhat.io/openshift-serverless-1/eventing-apiserver-receive-adapter-rhel8@sha256:84994eabeb7342a0771c7cb1bdd70e7ee3928dd45874eafa64cde5bb385fe964
        - registry.redhat.io/openshift-serverless-1/eventing-storage-version-migration-rhel8@sha256:2adb0124f04d6c4a552ade79dd1499c8ca997edb45855bf438ca8043b2709e19
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:45bc50a993d04b775a153e985a43d587d5455883fc4c6f31b772408297cf9040
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:76a47d100de1f2afa23803bec503d9440605db03c7179b231f963e5663a3d12a
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:6d042c614431aa9a9e77cf8ba0064423e903f7c418e367ecc23bc02a24a796c0
        - registry.redhat.io/openshift-serverless-1/eventing-in-memory-channel-dispatcher-rhel8@sha256:b801ed7b1cb32d4a1522a959e97f280f2eff6fc92e47fea2ea022f180d37831a
        - registry.redhat.io/openshift-serverless-1/eventing-kafka-broker-receiver-rhel8@sha256:d8b94bbce98325fe8079c11c0b7a6c59bad8a7edd0532a7d27ef1632ff0de708
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:33d62d13e16f47db9951ac826671f39fdc048fe7c3fb019eeb4bf9bd0f814222
        - registry.redhat.io/openshift-serverless-1/serving-storage-version-migration-rhel8@sha256:512c4d93dc13cc53d923a6990770a7527d6fb657278e2c5d8f0ece3cd5020155
        - registry.redhat.io/openshift-serverless-1/serving-webhook-rhel8@sha256:4b6f161c14c68536ec2c7679d30681afa9a1fa2d512548f0f591791a10a8b894
        - registry.redhat.io/openshift-serverless-1/eventing-mtbroker-filter-rhel8@sha256:75228e70fb1383bbdbcc64d0cf24bf5d977c09112e3f32316824188264c3a2bc
        - registry.redhat.io/openshift-serverless-1/eventing-controller-rhel8@sha256:1c82d20ccf5eb5f8e7725839f1060f4efdfd1c1b4773a99bd905e690a6e36f38
        - registry.redhat.io/openshift-serverless-1/svls-must-gather-rhel8@sha256:a4b3d75903de1929326041e9885213074473f07fda91b299548d45680c295c00
        version: 1.34.1
      entries:
      - name: serverless-operator.v1.34.1
        version: 1.34.1
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.34
    - currentCSV: serverless-operator.v1.35.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          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.skipRange: '>=1.35.0 <1.35.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:f23d3ab058667c6fe9ee44dc249aa7e8449c1bb9581380ddbc66624511b286d2
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.35/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel8@sha256:80a155d2637f47e249fd69760b250c9b7a1eeb6781de9308b54162bb3e1bce71
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:732827652b7a7a49181e86d561831001c28b72b7e12d5e3c1d71b2e496003229
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel8@sha256:ab0342b325ee67cc2a7d321aa1eda9c6797dc91fe2b6f26e3cbab53fadf564c7
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:018459cbba2e3169bc4be6564cf3747c9cd0677445912abf237f8fe6d58e46ac
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:f23d3ab058667c6fe9ee44dc249aa7e8449c1bb9581380ddbc66624511b286d2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:8a4e5e0934197c32e0dfa1efc922d750940587fb61e0df49d476a2d035c53413
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:cb2ebe98481808e788ca70e7f0a9b3402818b622158f327b99a1e87c23226d2d
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:818dc7bd69b453ba5882b4ccb82841f2d48c7552368417bac20bef1df64f52ff
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel8@sha256:dfcd11686f161d44786a205d12f9d628d9e847d40ffdb628ec9aa4a0da0b86f0
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:91456907c61952017daf07e376b565472ef86d67a2925f60e189c639ceb68595
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:d68fae6fc07efa9da9af0532aadb49f897a15afcdf9a98dc7517ff5e17735454
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:da8d975527ba100313b92e87d6d2690fddae9988aa8d82d728221295955b7224
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel8@sha256:acb28d84cf03b8551efa32646864005dc3bc9bb341a696544892dfd0c87fbda6
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:56e7a0158a713c70765ead847732db4e5f8439aacf31e9a4a22672b583028064
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel8@sha256:86074674b7926ad9bfc95556e50820792fcbc5e11ab02879378625ffabdd1889
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:6722aecbbbefa80dfaf93143e033c562cea0982514e2eea27654dd4638e1d072
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:0751b9ea7ca197480c4cbca17654d0653d1c0c760ca3c818c2a1018dc952cdc8
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:477b1ac0db0abf1e16ae31bb22fdb73dd98f4dbd243fa0a7e6e94852b16a813c
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:6f4fa254d923f3260ab0f7d6a0b459554f83b1abfcb575a5ce2c0135fba32427
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:3130a5159adb9b4eaab75a0209d2ac639156d5e9f2346a8b2e6e0e22fad4b45f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:ffaad2214fa897e89e92e574eb5cd1c671edab7f6eab87cf2ffd4ebf162b3cf4
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel8@sha256:2980eca437e4c1cd22a2b6c2ccae9c4d6b55921b3d575fbd4b9241f1f0a8a3a4
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel8@sha256:d00a0059f6134b2519f9b1e034b81a943cae7ce391109703f24db21e56ee923d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel8@sha256:6b842b4eddfc71a2c8f6c1fcebb8f23a05f50c95be1ba2d20a1be660d3014c8e
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:86386b54cc10743023884193b7d6c7159b90052bc5e4a0608a6cdfd47865c966
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:020264063c50f2a4590f3d7524b271f0f77350a1f8fa3c35ca6e28f0162aa9a5
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:b2de6b658a1595084a202203c90704c3f9de018a7a904ca276112ad606e374f1
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:ab8f85bb18311b0bfee00561ef6b5d9faf810358c954ac2c6f39cf2a7739e07c
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:0e58edf5ee340fdfb282faeb6c9bee8cd6323e7f29a9b282dbb91c2622131a9c
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:2cbe84afebac23b5397d144b4d5660af33290df451141fa3625607b6033983e0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel8@sha256:e743dd93b7ae855825716403979db3f34cd300caad130e7d3011172b1aa4eaf7
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:b66bb9531f05cd46360f787955c849208496e3e45541cb50b23bfb6b68570aa8
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:9b176477be4c782ce60d81a72bacb566069a499579ce6df5a987a0841f05ad5c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:f56d21089566330ecbd9aa8acf14da332d3db7360aaf6da00c9a19df83f7334c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:e7aa54986c3d388c1bb00828c9ccb294ca0b6c26376c7593ed6bfddda0ef4e5d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:4ca1bfaf2d7e9477583cddfa40f0b2ce59c20ff9ab20022038774dc3cc49662b
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:b5db9a51bbb46640b23712c61e9c5a1c7bbdbcd9a53b0b92fa36b80dcaffffc0
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:d0650e4d7e72241e07a3796f20931adba231fbf5e401a45d794761f2c5afae48
        version: 1.35.1
      entries:
      - name: serverless-operator.v1.35.1
        version: 1.35.1
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.35
    - currentCSV: serverless-operator.v1.36.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.36.0 <1.36.1'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:36e589adaf5ff2856f5aada90b3a2be893d9ff89f92b1b2c42ee59523c9c9c8e
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.36/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:01d632b69b4a4112426afc4184c72eae6d8816974088e5980c9c808f0782b85c
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel8@sha256:3d780ad1ab280b5092b90e277485d589da2a18e8b08090af7d95aecd17af545d
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel8@sha256:51b5e18e8d4c1ca81d7c5ddfea6352a3887f757acfcc53bd2f8bd3b01337ed42
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel8@sha256:30b8045ef5f925a36c58941386f1899bec125d005a08aeeeba5edd49b0859149
        - registry.access.redhat.com/ubi8/python-39@sha256:27e795fd6b1b77de70d1dc73a65e4c790650748a9cfda138fdbd194b3d6eea3d
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel8@sha256:36e589adaf5ff2856f5aada90b3a2be893d9ff89f92b1b2c42ee59523c9c9c8e
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel8@sha256:c39cb88afaddc295d93a3774b8a20d001b82392df540fb502ee02316d82460a9
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel8@sha256:6210a946f373b9c36c9b31293debe6fed090008b8234c0ba17d37fa81646172e
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel8@sha256:4344716eb2940c6a3fa9a278250f936602bb1549fece6037912837719c178b24
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel8@sha256:27e74287774cda208f667bc2a386debe6b6255e8991abfb37c959c8525f2af53
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel8@sha256:631eb3a8dd9d83ceafa7d8a4da4b1e2d4f2740e6017c766828dcc7575cf1322f
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel8@sha256:5352e4eb4e426a41521276decadf204b6d23b4762a298e4d3dc73969e3eddc68
        - registry.access.redhat.com/ubi8/nodejs-20-minimal@sha256:a2a7e399aaf09a48c28f40820da16709b62aee6f2bc703116b9345fab5830861
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel8@sha256:4aeb68a22f63300e54391ec6b4cda8c4e665d904b5dcdd3c40155040525742a0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel8@sha256:52ba6b1252b6f3d41e2a0b3b880cb768010ab9dd925ac34596f6adaedcbbe07c
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel8@sha256:d9b944e64391a996104afbe8a21f66316a948e9fb7b91734e861847285be59c7
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:ee6533b71cf280877c9d7489dfd821c9209c6802bed7fa3fdb4f8f00fbeacb09
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel8@sha256:a1834b620f875681388f0ae224dd0771773a8b61b1d8e5214a942f232854b87b
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel8@sha256:82e69a1890042f5636ac7bb645b1aaeaba0a4894851eccc1fa1c63296918e31a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel8@sha256:afa634e029bcf79a972f49372498d44b45bcfbdb6eb28ecaf4f0b0b2a0a1824b
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel8@sha256:4274004b6289fa9bea3fa6e56d64077a328a6b5e63a9f0e9c41f6d561f682bd7
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel8@sha256:187fb9d64b53c55a029ffce3c0f9e7c3304683fa8a0e832cfb7134e8a3d0c237
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ed89e221d7a0a1dd82f2fa75e9e70bff3dddcb8979594396590bd3a15673a152
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel8@sha256:3b04e9d8cd4b5e43a07ece838d10478723a6c6529350f010550b4a0d1d0950d1
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel8@sha256:3fe326ad9a00b112fc888ffd345c8d5042f0a22cf32ea575931192c39ce1fece
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel8@sha256:429d5d9568cca31fbe83c663276a300286af4cdbf3d35685afdbe5f6f2f8c6e0
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel8@sha256:0c2cdf917bbad1f5bca8a2a2ef12a96cfcd0c77c190cc35687eb57169b54ab6f
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel8@sha256:bf82b37ab8fd29c7a7cd846008a16d14b4cfdc1c09df4f731d71be3957e90123
        - registry.access.redhat.com/ubi8/openjdk-21@sha256:441897a1f691c7d4b3a67bb3e0fea83e18352214264cb383fd057bbbd5ed863c
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel8@sha256:a6f565d73375e827d830dca85838f4c4cb7f08b0c078acb0c0d567b25f0d256a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel8@sha256:f2d112ba9fdfccea988589b99b463c8a7157475f7a3f03678e8999e65b678cc3
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel8@sha256:8fed5ef9a1f39a55077bb5026c8854d0ee7fc8d8ff5da277ce9c1bfc2ab2474b
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel8@sha256:dcfe5fbc57b9f8520adbff368c8bf29eb491c9c26d1a1737a1722cffea83eb1b
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel8@sha256:259e5dab50d36cdbfc117a42325128c4e16f34c048ba64b36d4a89132ddb4c1a
        - registry.redhat.io/rhel8/buildah@sha256:3d505d9c0f5d4cd5a4ec03b8d038656c6cdbdf5191e00ce6388f7e0e4d2f1b74
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel8@sha256:596a7272d6de714d7dbc6e00e9e50a2872846c269547465252d953172ef0b009
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel8@sha256:77e4689b2ce7a713e905553e0e42b8e128045f40cb6c6d4ee082f126cbc46b00
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel8@sha256:f3d87a7fa5b5f2818effcac3304bd56eddcdb0db97a18ac0f35a06fc7e223e7d
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel8@sha256:e3ae1cc6012f19631c012a07b113fb015977d2ee4f9faab3207fbc2464c25aa7
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel8@sha256:3af4c48030263eb5769e5f36a6dd13fd390d8566efaab37532f39e1df1c95c67
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel8@sha256:074ebfc4494581611647ba90049655a470ca43743610a27be77db66a8633bac6
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel8@sha256:f4d86b196457cdeebdc380b6f1b707c10f8dee789c7779c90ee1332e511af8c4
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel8@sha256:c7c2e738e0d9da1d2d1993f68938e72c4709b1f28a54fa92224ef6a0e456b0aa
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel8@sha256:a47b6b5237a87ccd90e5a49a53d06485fd55c87eebf12d01c335b87fc3a8c494
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel8@sha256:6b7316cce3432d391adc6ac38c92ff0ee86dd7ae0101957cc65cd338cc69e352
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel8@sha256:ed60e889a677fb139f2eb4bd9ab4fda6ecc39fd050ca2b6cc1c19717e428535a
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel8-operator@sha256:78fee4c596f2848487ca704da3fa1074e3c9c99b3f96f66833aeba63836d7b93
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel8@sha256:88323da16360981f27b8e4686fbbb64053e4e0e3c79c65d695edb317b334e1e0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel8@sha256:a903480159ebf1d8652eeaa702d9885fb76bb106c02d75cec5c82c31d77d6410
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel8@sha256:9b328fff0cc8545fb9bb1f24f11d78cfac3ee76dedc11fa4def4262d79a60e8c
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel8@sha256:d6f338e08fa937c8a4ccfec692424de4acded565f7ca3971ea507dffeb351503
        version: 1.36.1
      entries:
      - name: serverless-operator.v1.36.1
        version: 1.36.1
      - name: serverless-operator.v1.36.0
        version: 1.36.0
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.36
    - currentCSV: serverless-operator.v1.37.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeServing",
                "metadata": {
                  "name": "knative-serving"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.knative.dev/v1beta1",
                "kind": "KnativeEventing",
                "metadata": {
                  "name": "knative-eventing"
                },
                "spec": {
                }
              },
              {
                "apiVersion": "operator.serverless.openshift.io/v1alpha1",
                "kind": "KnativeKafka",
                "metadata": {
                  "name": "knative-kafka"
                },
                "spec": {
                  "broker": {
                    "enabled": false,
                    "defaultConfig": {
                      "numPartitions": 10,
                      "replicationFactor": 3,
                      "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                    }
                  },
                  "source": {
                    "enabled": false
                  },
                  "sink": {
                    "enabled": false
                  },
                  "channel": {
                    "enabled": false,
                    "bootstrapServers": "REPLACE_WITH_COMMA_SEPARATED_KAFKA_BOOTSTRAP_SERVERS"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking,Integration & Delivery,Cloud Provider,Developer Tools
          certified: "false"
          createdAt: "2020-04-20T17:00:00Z"
          description: Deploy and manage event-driven serverless applications and
            functions using Knative.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>1.36.1 <1.37.0'
          operatorframework.io/suggested-namespace: openshift-serverless
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift-knative/serverless-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A platform for streamlined application deployment, traffic-based
              auto-scaling from zero to N, and traffic-split rollouts
            displayName: Knative Serving
            kind: KnativeServing
            name: knativeservings.operator.knative.dev
            version: v1beta1
          - description: An event-driven application platform that leverages CloudEvents
              with a simple HTTP interface
            displayName: Knative Eventing
            kind: KnativeEventing
            name: knativeeventings.operator.knative.dev
            version: v1beta1
          - description: An extension to Knative Eventing, merging HTTP accessibility
              with Apache Kafka's proven efficiency and reliability
            displayName: Knative Kafka
            kind: KnativeKafka
            name: knativekafkas.operator.serverless.openshift.io
            version: v1alpha1
        description: |-
          The Red Hat OpenShift Serverless operator provides a collection of APIs that
          enables containers, microservices and functions to run "serverless".
          Serverless applications can scale up and down (to zero) on demand and be triggered by a
          number of event sources. OpenShift Serverless integrates with a number of
          platform services, such as Monitoring and it is based on the open
          source project Knative.

          # Prerequisites
          Knative Serving (and Knative Eventing respectively) can only be installed into the
          `knative-serving` (`knative-eventing`) namespace. These namespaces will be
          automatically created when installing the operator.

          The components provided with the OpenShift Serverless operator require minimum cluster sizes on
          OpenShift Container Platform. For more information, see the documentation on [Getting started
          with OpenShift Serverless](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications).

          # Supported Features
          - **Easy to get started:** Provides a simplified developer experience to deploy
            and run cloud native applications on Kubernetes, providing powerful
            abstractions.
          - **Immutable Revisions:** Deploy new features performing canary, A/B or
            blue-green testing with gradual traffic rollout following best practices.
          - **Use any programming language or runtime of choice:** From Java, Python, Go
            and JavaScript to Quarkus, SpringBoot or Node.js.
          - **Automatic scaling:** Removes the requirement to configure numbers of replicas
            or idling behavior. Applications automatically scale to zero when not in use,
            or scale up to meet demand, with built in reliability and fault tolerance.
          - **Event Driven Applications:** You can build loosely coupled, distributed applications
            that can be connected to a variety of either built in or third party event sources,
            powered by operators.
          - **Ready for the hybrid cloud:** Provides true, portable serverless functionality,
            that can run anywhere OpenShift Container Platform runs. You can leverage data
            locality and SaaS as you need it.

          # Components & APIs
          This operator provides the following components:

          ## Knative Serving
          Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers.
          Serving simplifies the application deployment, dynamically scales based on in incoming traffic and supports custom rollout strategies with traffic splitting.
          Other features include:
          - Simplified deployment of serverless containers
          - Traffic-based auto-scaling, including scale-to-zero
          - Routing and network programming
          - Point-in-time application snapshots and their configurations

          ## Knative Eventing
          Knative Eventing provides a platform that offers composable primitives to enable late-binding event sources and
          event consumers.
          Knative Eventing supports the following architectural cloud-native concepts:

          - Services are loosely coupled during development and deployed independently to production
          - A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that are not yet being produced.
          - Services can be connected to create new applications without modifying producer or consumer, and with the ability to select a specific subset of events from a particular producer.

          ## Knative Functions
          Knative Functions allows developers to write functions that let them focus on business logic.
          These functions are deployed as Knative Services and take advantage of Knative Serving and Eventing.
          Knative Functions bring greater efficiency, more scalability and faster development to facilitate rapid go-to-market.

          Other features include:
          - Buildpacks
          - Multiple runtimes, including Node.js, Quarkus and Go
          - Local developer experience through the kn CLI
          - Project templates
          - Support for receiving CloudEvents and plain HTTP requests

          ## Knative CLI `kn`
          The Knative client `kn` allows you to create Knative resources from the command line or from within
          Shell scripts.
          With its extensive help pages and autocompletion support, it frees you from memorizing the detailed structure of the Knative resource schemas.

          `kn` offers you:
          - Full support for managing all features of Knative Serving: Services, Revisions and Routes
          - Support for managing Knative Eventing entities: Sources, Brokers, Triggers, Channels and Subscriptions
          - A kubectl-like plugin architecture to extend the built-in functionality
          - Easy integration of Knative into Tekton pipelines by using `kn` in a Tekton task
          - Create, build and deploy Knative Functions for multiple runtimes, including Node.js, Quarkus, and Go

          # Further Information
          For documentation on OpenShift Serverless, see:
          - [Installation
          Guide](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index)
          - [Develop Serverless Applications](https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/serving/getting-started-with-knative-serving#serverless-applications)
        displayName: Red Hat OpenShift Serverless
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless
        - FaaS
        - microservices
        - scale to zero
        - knative
        - serving
        - eventing
        - kafka
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_serverless/1.37/html/installing_openshift_serverless/index
        - name: Source Repository
          url: https://github.com/openshift-knative/serverless-operator
        maintainers:
        - email: support@redhat.com
          name: Serverless Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/kn-ekb-dispatcher-rhel9@sha256:591bc064b99356334b7b53c56e2b14538dd8747577127b37fcffadbbd5df4498
        - registry.redhat.io/openshift-serverless-1/kn-eventing-controller-rhel9@sha256:052fe86c647d1ebedba9dbe1054c3d94fd7b02bb9670837e434549c5a7544e37
        - registry.redhat.io/openshift-serverless-1/serverless-operator-bundle@sha256:18c5bc25aa7fd36f1433fe4920a843336517210c903c467b16f035e3a46f2d4e
        - registry.access.redhat.com/ubi9/nodejs-20-minimal@sha256:badc5c47327f1af2ca2c0d9c68bac4c0a5e3f42bea398fc9654effbefc40b40b
        - registry.redhat.io/openshift-serverless-1/kn-serving-queue-rhel9@sha256:ab2c338d505e53dc59b0480e8b1b369bd0808c93ff2a6a9b2600bcdc0d4e98dd
        - registry.redhat.io/openshift-serverless-1/serverless-kn-operator-rhel9@sha256:4d0d56d1ad5c9e958cca5e6f9f77408e2beede8e779f4b8f9f6ed596658f7534
        - registry.redhat.io/openshift-serverless-1/kn-eventing-migrate-rhel9@sha256:10bb3cfdc955b2f8684f9258d9980730685d6fa7feada66ef3667acb7bd4cd69
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtping-rhel9@sha256:78daaa2d4d7295da88b3217d06ead5929612b31d5704c05f32108dccf125e238
        - registry.redhat.io/openshift-serverless-1/kn-eventing-filter-rhel9@sha256:25f8590de6ada4928e7cef07332ae9131d1ca44c0bc30a89624cd1f8bb7d95da
        - registry.redhat.io/openshift-serverless-1/kn-serving-controller-rhel9@sha256:169e40d976405a57a32c80e70125ec7f15c4f358ec87e8d03874fd8eb16bad2a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-source-rhel9@sha256:d9a299304e810eeef13adc7bdac4cad7a6fe80a9e18fa3ce93a2796f0586323b
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel9@sha256:e213fd263772c5286aa560132cd8c043cf2946f04f96eedf18cd240859bd8a48
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-s3-sink-rhel9@sha256:6886795e240a9d602a3f68c910f543b5f4c7874ede3bc3e229182d77d509e294
        - registry.redhat.io/openshift-serverless-1/net-istio-webhook-rhel9@sha256:8c4cd89255e0424249cbadc7f77ad0cbee43d7b9fe3cfb67b4ef63ab3fa827f6
        - registry.redhat.io/openshift-serverless-1/kn-serving-storage-version-migration-rhel9@sha256:b6343e1a2d7bd959dc62fc574bce95462090357d5aa25f6428a5130268745236
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sns-sink-rhel9@sha256:04d23df5bec13af304cf718e66f65d198a5d1d29e022db536b96c9a7f7817a34
        - registry.redhat.io/openshift-serverless-1/net-kourier-kourier-rhel9@sha256:abe431c9d7390e6e3032c3ac74532b8162564729be7e5a6bca70c3d2374a3437
        - registry.redhat.io/rhel9/buildah@sha256:a3978b1b626897c19e834e27f49e7cd07a3947fc27fd4f6e6a0850d6cc2e0511
        - registry.redhat.io/openshift-serverless-1/kn-serving-webhook-rhel9@sha256:3edf2bc759ea27a19798de54dd30005ab10156d0f484fa9efd6a959dd140cbc0
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-controller-rhel9@sha256:dffaac938538b6a28306e8d3a444ff6c794d50501dfcfb742c7e99558c71296a
        - registry.redhat.io/openshift-serverless-1/kn-ekb-post-install-rhel9@sha256:70807d51d23088e80fe00213802fd8d7ed718e8c16301831058acac2652f67d9
        - registry.redhat.io/openshift-serverless-1/kn-plugin-func-func-util-rhel9@sha256:13db3b2ff6284a4c41dcc15b720d9f462fcc08086202d112fab1a7b19a9ff6b4
        - registry.redhat.io/openshift-serverless-1/kn-serving-activator-rhel9@sha256:320fb8d659514f8faa16b542444a72e5b313f0323cd635b17c5eb690dd34cc56
        - registry.redhat.io/openshift-serverless-1/kn-eventing-jobsink-rhel9@sha256:06c087a2c5f0b95b08ebe16e4bc43b8a6986775cd902bd258e10231a5ecfe1f0
        - registry.redhat.io/openshift-serverless-1/kn-client-cli-artifacts-rhel9@sha256:22766600fde62f23742c1edd50b8e25b8ca1b7f396c2edfe16c5d50dffdeadac
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-ddb-streams-source-rhel9@sha256:50293c7fe9b2bc102e9eb9a57fa97bf6d6ee7c3334866217aa6debf3fb77e7ec
        - registry.redhat.io/openshift-serverless-1/kn-ekb-receiver-rhel9@sha256:108488c416e2cb5a3bfb8d5c82f58ec8400e0062048046ec60ee93f22046d287
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-source-rhel9@sha256:dd89ffe87e56c6c3f4783d8a0f923c6d2abf61d35bf79792211926325e2315ac
        - registry.redhat.io/openshift-serverless-1/serverless-must-gather-rhel9@sha256:f9923816229a2c745246dd6bd90c69c0c03c7b0f7e44b8a34ff01be6098dcd73
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-hpa-rhel9@sha256:6654d805c89e18cdf4fa8b43aac6836d69edb85313e266235bdb01fadcd16ecc
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-transform-jsonata-rhel9@sha256:32c9161671c6fa0985a193dde924e7c7270088d9584ded4ddb6b940963863a49
        - registry.access.redhat.com/ubi9/python-39@sha256:1985fef5119fbecf1e9746f8e9ae023df82a33c75aaf5b4d6ce570b6a712a267
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:f64b1bf7dca0906dfa673ae299a2d965527c1c7a714020d046dad277d329f965
        - registry.redhat.io/openshift-serverless-1/serverless-ingress-rhel9@sha256:5697cb7c13c4131e33ca73acf47636c9cff5a4adf81a034293d54a63a9c070df
        - registry.redhat.io/openshift-serverless-1/kn-ekb-webhook-kafka-rhel9@sha256:8a0fde414e05253bc25fc02acbbfe1e17f6d8937b7d951e551a9487257c6efff
        - registry.redhat.io/openshift-serverless-1/kn-eventing-apiserver-receive-adapter-rhel9@sha256:65614407640332db2015f779866f079c618268bea9ead6966710472b30c046e1
        - registry.redhat.io/openshift-serverless-1/kn-eventing-channel-dispatcher-rhel9@sha256:5927cbafde7394f30ade87c27acb955cac3a53c535f82ea51bbd67bbe021a3d3
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-aws-sqs-sink-rhel9@sha256:f4cfa8f24acc69cdb32b54d6bab583a07babbe9db6d01ac4c41ae94402a009c2
        - registry.redhat.io/openshift-serverless-1/kn-eventing-webhook-rhel9@sha256:6a7377d669fb7ef8c2bf031a728ed5f31330543e5c7eef43e91258c010ed5d18
        - registry.redhat.io/openshift-serverless-1/net-istio-controller-rhel9@sha256:9dabb88a3fbb7530aece8b3955df12d5dc72d39adada828a22a25f9d3610dc6a
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-timer-source-rhel9@sha256:70fe3af462d270c1149659fb89e9ee7c1f0ffe6a7eaf385de70c2ec9051ffb85
        - registry.redhat.io/openshift-serverless-1/kn-eventing-istio-controller-rhel9@sha256:43856ee2f87c7ce642b998c48405785a5f940cda17f9f1afbbe626f7f860394c
        - registry.redhat.io/openshift-serverless-1/kn-serving-autoscaler-rhel9@sha256:615627148f347917a6214b3e036e201d7d23a119445d8b19dfefdde9647546d6
        - registry.redhat.io/openshift-serverless-1/kn-backstage-plugins-eventmesh-rhel9@sha256:cdad9d50a9eeb5e659f680b6d822a4bb298e1d46900269b0f5d8da50917ba777
        - registry.redhat.io/openshift-serverless-1/kn-plugin-event-sender-rhel9@sha256:cf299500dd7b83635239d5c239ce1bd77d8d9011268b84947b73142d82355c13
        - registry.redhat.io/openshift-serverless-1/kn-eventing-ingress-rhel9@sha256:20bd5a46db2ceff70630610afc52aee3786d3889fd268e2fff87f91de71d9a59
        - registry.redhat.io/openshift-serverless-1/kn-eventing-mtchannel-broker-rhel9@sha256:d6ab47f53ba2bf6e0f87de5c7d383f2b44fe762ce02cd58bf134f0500a70ddae
        - registry.redhat.io/openshift-serverless-1/serverless-openshift-kn-rhel9-operator@sha256:23e10eb061828568dc06cf4d4b3485e8fbd5fe8b711b2424ea954b7e1dd2534f
        - registry.redhat.io/openshift-serverless-1/kn-ekb-kafka-controller-rhel9@sha256:4a7848b64e1bacadf5205de9a0fd64437c8b7dcf86959dc1095e12d873a4610a
        - registry.access.redhat.com/ubi9/openjdk-21@sha256:b4f4010269b9783e01dc07ae9461c96f33a20d075b501f131b85e0e604c568ab
        - registry.redhat.io/openshift-serverless-1/kn-eventing-integrations-log-sink-rhel9@sha256:8fb4efbe5daa5df33522cf364c1d04eb326a3764bb642529853398243d8c0195
        version: 1.37.0
      entries:
      - name: serverless-operator.v1.37.0
        version: 1.37.0
      - name: serverless-operator.v1.36.1
        version: 1.36.1
      - name: serverless-operator.v1.36.0
        version: 1.36.0
      - name: serverless-operator.v1.35.0
        version: 1.35.0
      - name: serverless-operator.v1.34.0
        version: 1.34.0
      - name: serverless-operator.v1.33.0
        version: 1.33.0
      - name: serverless-operator.v1.32.0
        version: 1.32.0
      - name: serverless-operator.v1.31.0
        version: 1.31.0
      - name: serverless-operator.v1.30.0
        version: 1.30.0
      - name: serverless-operator.v1.29.0
        version: 1.29.0
      - name: serverless-operator.v1.28.0
        version: 1.28.0
      - name: serverless-operator.v1.27.1
        version: 1.27.1
      - name: serverless-operator.v1.27.0
        version: 1.27.0
      - name: serverless-operator.v1.26.0
        version: 1.26.0
      - name: serverless-operator.v1.25.0
        version: 1.25.0
      - name: serverless-operator.v1.24.0
        version: 1.24.0
      - name: serverless-operator.v1.23.0
        version: 1.23.0
      - name: serverless-operator.v1.22.0
        version: 1.22.0
      - name: serverless-operator.v1.21.0
        version: 1.21.0
      - name: serverless-operator.v1.20.0
        version: 1.20.0
      name: stable-1.37
    defaultChannel: stable
    packageName: serverless-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NeuVector
      provider-url: ""
    name: neuvector-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: neuvector-operator.v1.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apm.neuvector.com/v1alpha1",
                "kind": "Neuvector",
                "metadata": {
                  "name": "neuvector"
                },
                "spec": {
                  "openshift": true,
                  "registry": "docker.io",
                  "tag": "5.4.8",
                  "oem": "",
                  "imagePullSecrets": "",
                  "psp": false,
                  "rbac": true,
                  "serviceAccount": "default",
                  "leastPrivilege": false,
                  "global": {
                    "cattle": {
                      "url": ""
                    },
                    "azure": {
                      "enabled": false,
                      "identity": {
                        "clientId": "DONOTMODIFY"
                      },
                      "marketplace": {
                        "planId": "DONOTMODIFY"
                      },
                      "extension": {
                        "resourceId": "DONOTMODIFY"
                      },
                      "serviceAccount": "csp",
                      "imagePullSecrets": "",
                      "images": {
                        "neuvector_csp_pod": {
                          "tag": "latest",
                          "image": "neuvector-billing-azure-by-suse-llc",
                          "registry": "registry.suse.de/suse/sle-15-sp5/update/pubclouds/images",
                          "imagePullPolicy": "IfNotPresent"
                        },
                        "controller": {
                          "tag": "5.2.4",
                          "image": "controller",
                          "registry": "docker.io/neuvector"
                        },
                        "manager": {
                          "tag": "5.2.4",
                          "image": "manager",
                          "registry": "docker.io/neuvector"
                        },
                        "enforcer": {
                          "tag": "5.2.4",
                          "image": "enforcer",
                          "registry": "docker.io/neuvector"
                        }
                      }
                    },
                    "aws": {
                      "enabled": false,
                      "accountNumber": "",
                      "roleName": "",
                      "serviceAccount": "csp",
                      "annotations": {},
                      "imagePullSecrets": "",
                      "image": {
                        "digest": "",
                        "repository": "neuvector/neuvector-csp-adapter",
                        "tag": "latest",
                        "imagePullPolicy": "IfNotPresent"
                      }
                    }
                  },
                  "bootstrapPassword": "",
                  "autoGenerateCert": true,
                  "defaultValidityPeriod": 365,
                  "internal": {
                    "certmanager": {
                      "enabled": false,
                      "secretname": "neuvector-internal"
                    },
                    "autoGenerateCert": true,
                    "autoRotateCert": true
                  },
                  "controller": {
                    "enabled": true,
                    "annotations": {},
                    "strategy": {
                      "type": "RollingUpdate",
                      "rollingUpdate": {
                        "maxSurge": 1,
                        "maxUnavailable": 0
                      }
                    },
                    "image": {
                      "repository": "neuvector/controller",
                      "imagePullPolicy": "IfNotPresent",
                      "hash": ""
                    },
                    "replicas": 3,
                    "disruptionbudget": 0,
                    "schedulerName": "",
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "searchRegistries": "",
                    "env": [],
                    "affinity": {
                      "podAntiAffinity": {
                        "preferredDuringSchedulingIgnoredDuringExecution": [
                          {
                            "weight": 100,
                            "podAffinityTerm": {
                              "labelSelector": {
                                "matchExpressions": [
                                  {
                                    "key": "app",
                                    "operator": "In",
                                    "values": [
                                      "neuvector-controller-pod"
                                    ]
                                  }
                                ]
                              },
                              "topologyKey": "kubernetes.io/hostname"
                            }
                          }
                        ]
                      }
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "nodeSelector": {},
                    "apisvc": {
                      "ctrlServerPort": 10443,
                      "type": "",
                      "annotations": {},
                      "nodePort": "",
                      "route": {
                        "enabled": false,
                        "termination": "passthrough",
                        "host": "",
                        "tls": ""
                      }
                    },
                    "ranchersso": {
                      "enabled": false
                    },
                    "pvc": {
                      "enabled": false,
                      "existingClaim": false,
                      "accessModes": [
                        "ReadWriteMany"
                      ],
                      "storageClass": "",
                      "capacity": ""
                    },
                    "azureFileShare": {
                      "enabled": false,
                      "secretName": "",
                      "shareName": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "federation": {
                      "mastersvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      },
                      "managedsvc": {
                        "type": "",
                        "loadBalancerIP": "",
                        "clusterIP": "",
                        "nodePort": "",
                        "externalTrafficPolicy": "",
                        "internalTrafficPolicy": "",
                        "ingress": {
                          "enabled": false,
                          "host": "",
                          "ingressClassName": "",
                          "path": "/",
                          "annotations": {
                            "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                          },
                          "tls": false,
                          "secretName": ""
                        },
                        "annotations": {},
                        "route": {
                          "enabled": false,
                          "termination": "passthrough",
                          "host": "",
                          "tls": ""
                        }
                      }
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {
                        "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                      },
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "configmap": {
                      "enabled": false,
                      "data": ""
                    },
                    "secret": {
                      "enabled": false,
                      "data": {
                        "userinitcfg.yaml": {
                          "users": [
                            {
                              "Fullname": "admin",
                              "Password": "",
                              "Role": "admin"
                            }
                          ]
                        }
                      }
                    },
                    "certupgrader": {
                      "env": [],
                      "schedule": "",
                      "imagePullPolicy": "IfNotPresent",
                      "timeout": 3600,
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "prime": {
                      "enabled": false,
                      "image": {
                        "repository": "neuvector/compliance-config",
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "1.0.9",
                        "hash": ""
                      }
                    }
                  },
                  "enforcer": {
                    "enabled": true,
                    "image": {
                      "repository": "neuvector/enforcer",
                      "imagePullPolicy": "IfNotPresent",
                      "hash": ""
                    },
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "priorityClassName": "",
                    "podLabels": {},
                    "podAnnotations": {},
                    "env": [],
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/master"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/control-plane"
                      },
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/etcd"
                      }
                    ],
                    "resources": {},
                    "internal": {
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt",
                        "caFile": "ca.crt"
                      }
                    },
                    "securityContext": {
                      "privileged": true
                    }
                  },
                  "manager": {
                    "enabled": true,
                    "image": {
                      "repository": "neuvector/manager",
                      "imagePullPolicy": "IfNotPresent",
                      "hash": ""
                    },
                    "priorityClassName": "",
                    "env": {
                      "ssl": true,
                      "envs": []
                    },
                    "svc": {
                      "mgrServerPort": 8443,
                      "type": "ClusterIP",
                      "nodePort": "",
                      "loadBalancerIP": "",
                      "annotations": {}
                    },
                    "route": {
                      "enabled": true,
                      "termination": "passthrough",
                      "host": "",
                      "tls": ""
                    },
                    "certificate": {
                      "secret": "",
                      "keyFile": "tls.key",
                      "pemFile": "tls.pem"
                    },
                    "ingress": {
                      "enabled": false,
                      "host": "",
                      "ingressClassName": "",
                      "path": "/",
                      "annotations": {},
                      "tls": false,
                      "secretName": ""
                    },
                    "resources": {},
                    "topologySpreadConstraints": [],
                    "affinity": {},
                    "podLabels": {},
                    "podAnnotations": {},
                    "tolerations": [],
                    "nodeSelector": {},
                    "runAsUser": "",
                    "probes": {
                      "enabled": false,
                      "timeout": 1,
                      "periodSeconds": 10,
                      "startupFailureThreshold": 30
                    }
                  },
                  "cve": {
                    "adapter": {
                      "enabled": false,
                      "image": {
                        "repository": "neuvector/registry-adapter",
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "0.2.2",
                        "hash": ""
                      },
                      "priorityClassName": "",
                      "resources": {},
                      "affinity": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "env": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": "",
                      "certificate": {
                        "secret": "",
                        "keyFile": "tls.key",
                        "pemFile": "tls.crt"
                      },
                      "harbor": {
                        "protocol": "https",
                        "secretName": ""
                      },
                      "svc": {
                        "type": "ClusterIP",
                        "loadBalancerIP": "",
                        "annotations": {}
                      },
                      "route": {
                        "enabled": true,
                        "termination": "passthrough",
                        "host": "",
                        "tls": ""
                      },
                      "ingress": {
                        "enabled": false,
                        "host": "",
                        "ingressClassName": "",
                        "path": "/",
                        "annotations": {
                          "nginx.ingress.kubernetes.io/backend-protocol": "HTTPS"
                        },
                        "tls": false,
                        "secretName": ""
                      },
                      "internal": {
                        "certificate": {
                          "secret": "",
                          "keyFile": "tls.key",
                          "pemFile": "tls.crt",
                          "caFile": "ca.crt"
                        }
                      }
                    },
                    "updater": {
                      "enabled": true,
                      "secure": false,
                      "cacert": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                      "image": {
                        "registry": "",
                        "repository": "neuvector/updater",
                        "imagePullPolicy": "IfNotPresent",
                        "tag": "0.0.7",
                        "hash": ""
                      },
                      "schedule": "0 0 * * *",
                      "priorityClassName": "",
                      "resources": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": ""
                    },
                    "scanner": {
                      "enabled": true,
                      "replicas": 3,
                      "dockerPath": "",
                      "strategy": {
                        "type": "RollingUpdate",
                        "rollingUpdate": {
                          "maxSurge": 1,
                          "maxUnavailable": 0
                        }
                      },
                      "image": {
                        "registry": "",
                        "repository": "neuvector/scanner",
                        "imagePullPolicy": "Always",
                        "tag": "6",
                        "hash": ""
                      },
                      "priorityClassName": "",
                      "resources": {},
                      "topologySpreadConstraints": [],
                      "affinity": {},
                      "podLabels": {},
                      "podAnnotations": {},
                      "env": [],
                      "tolerations": [],
                      "nodeSelector": {},
                      "runAsUser": "",
                      "internal": {
                        "certificate": {
                          "secret": "",
                          "keyFile": "tls.key",
                          "pemFile": "tls.crt",
                          "caFile": "ca.crt"
                        }
                      },
                      "volumes": "",
                      "volumeMounts": ""
                    }
                  },
                  "resources": {},
                  "runtimePath": "",
                  "docker": {
                    "enabled": false,
                    "path": "/var/run/docker.sock"
                  },
                  "k3s": {
                    "enabled": false,
                    "runtimePath": "/run/k3s/containerd/containerd.sock"
                  },
                  "bottlerocket": {
                    "enabled": false,
                    "runtimePath": "/run/dockershim.sock"
                  },
                  "containerd": {
                    "enabled": false,
                    "path": "/var/run/containerd/containerd.sock"
                  },
                  "crio": {
                    "enabled": true,
                    "path": "/var/run/crio/crio.sock"
                  },
                  "admissionwebhook": {
                    "type": "ClusterIP"
                  },
                  "crdwebhooksvc": {
                    "enabled": true
                  },
                  "crdwebhook": {
                    "enabled": true,
                    "type": "ClusterIP"
                  },
                  "lease": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring, Networking, Security
          certified: "false"
          containerImage: docker.io/neuvector/neuvector-operator@sha256:2b2ef4fbc567e7ae40c7bbc4f763f1806a8b1c872972c7bdbae9d8c58ba64ce4
          createdAt: "2019-11-18T02:09:59Z"
          description: NeuVector delivers the only cloud-native Kubernetes security
            platform with uncompromising end-to-end protection from DevOps vulnerability
            protection to automated run-time security, and featuring a true Layer
            7 container firewall.
          repository: https://github.com/neuvector/neuvector-operator
          support: support@neuvector.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A Full LifeCycle Container Security Platform
            displayName: NeuVector
            kind: Neuvector
            name: neuvectors.apm.neuvector.com
            version: v1alpha1
        description: |+
          NeuVector delivers the only cloud-native Kubernetes security platform with uncompromising end-to-end protection from DevOps vulnerability protection to automated run-time security, and featuring a true Layer 7 container firewall.

          The NeuVector Operator runs  in the openshift container platform to deploy and manage the NeuVector Security cluster components. The NeuVector operator contains all necessary information to deploy NeuVector using helm charts. You simply need to install the NeuVector operator from the OpenShift embeded operator hub and create NeuVector instance. You can modify the NeuVector installation configuration by modifying yaml while creating the NeuVector instance such as imagePullSecrets, tag version, etc. Please refer to [github link](https://github.com/neuvector/neuvector-helm) for the values that can be modifed during installation. To upgrade to a newer version of NeuVector, just reapply the NeuVector instance with desired tag , which in turn pulls the specified NeuVector image tags and upgrades as per upgrade plan configured on the helm chart. NeuVector Operator version 1.5.7 deploys NeuVector app version 5.4.8.

          **Complete below steps to create namespace and Grant Service Account Access to the Privileged SCC before installation.**

          Create the NeuVector namespace

                   oc new-project  neuvector
          Login as system:admin account

                   oc login -u system:admin

          Privileged SCC is added to Service Account specified in the deploment yaml by Operator version 1.3.4 and above in new deployment. In case of upgrading NeuVector Operator from previous version to 1.3.4, please delete Privileged SCC before upgrading.

                   oc delete rolebinding -nneuvector system:openshift:scc:privileged

          The following info will be added in the Privileged SCC users:

                   - system:serviceaccount:neuvector:default

          In OpenShift 4.6+ use the following to check:

                   oc get rolebinding system:openshift:scc:privileged -n neuvector -o wide
                   system:openshift:scc:privileged   ClusterRole/system:openshift:scc:privileged   9m22s  neuvector/default


        displayName: NeuVector Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - wavefront
        - wavefront collector
        - wavefront proxy
        links:
        - name: NeuVector Operator
          url: https://github.com/neuvector/neuvector-operator
        maintainers:
        - email: support@neuvector.com
          name: A Full LifeCycle Container Security Platform
        maturity: beta
        provider:
          name: NeuVector
        relatedImages:
        - quay.io/community-operator-pipeline-prod/neuvector-community-operator@sha256:d8088a7d3ecda8bb08a8313a942cf6140f49cca3610255ab70235a5436cb3ffb
        - docker.io/neuvector/neuvector-operator@sha256:2b2ef4fbc567e7ae40c7bbc4f763f1806a8b1c872972c7bdbae9d8c58ba64ce4
        version: 1.5.7
      entries:
      - name: neuvector-operator.v1.5.7
        version: 1.5.7
      - name: neuvector-operator.v1.5.6
        version: 1.5.6
      - name: neuvector-operator.v1.5.5
        version: 1.5.5
      - name: neuvector-operator.v1.5.4
        version: 1.5.4
      - name: neuvector-operator.v1.5.3
        version: 1.5.3
      - name: neuvector-operator.v1.5.2
        version: 1.5.2
      - name: neuvector-operator.v1.5.1
        version: 1.5.1
      - name: neuvector-operator.v1.5.0
        version: 1.5.0
      - name: neuvector-operator.v1.4.9
        version: 1.4.9
      - name: neuvector-operator.v1.4.8
        version: 1.4.8
      - name: neuvector-operator.v1.4.7
        version: 1.4.7
      - name: neuvector-operator.v1.4.6
        version: 1.4.6
      - name: neuvector-operator.v1.4.5
        version: 1.4.5
      - name: neuvector-operator.v1.4.4
        version: 1.4.4
      - name: neuvector-operator.v1.4.3
        version: 1.4.3
      - name: neuvector-operator.v1.4.2
        version: 1.4.2
      - name: neuvector-operator.v1.4.1
        version: 1.4.1
      - name: neuvector-operator.v1.4.0
        version: 1.4.0
      - name: neuvector-operator.v1.3.9
        version: 1.3.9
      - name: neuvector-operator.v1.3.8
        version: 1.3.8
      - name: neuvector-operator.v1.3.7
        version: 1.3.7
      - name: neuvector-operator.v1.3.6
        version: 1.3.6
      - name: neuvector-operator.v1.3.5
        version: 1.3.5
      - name: neuvector-operator.v1.3.4
        version: 1.3.4
      - name: neuvector-operator.v1.3.3
        version: 1.3.3
      - name: neuvector-operator.v1.3.2
        version: 1.3.2
      - name: neuvector-operator.v1.3.1
        version: 1.3.1
      - name: neuvector-operator.v1.3.0
        version: 1.3.0
      - name: neuvector-operator.v1.2.9
        version: 1.2.9
      name: beta
    defaultChannel: beta
    packageName: neuvector-community-operator
    provider:
      name: NeuVector
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-activemqartemis: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/
    name: amq-broker-rhel9
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-broker-operator.v7.13.3-opr-1-0.1766396094.p
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          certified: "false"
          description: AMQ Broker Operator for RHEL 9 (Multiarch) provides the ability
            to deploy and manage stateful AMQ Broker clusters
          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: "true"
          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.substitutesFor: amq-broker-operator.v7.13.3-opr-1
          operators.openshift.io/valid-subscription: '["Red Hat Runtimes", "Red Hat
            Integration", "Red Hat Process Automation", "Red Hat AMQ"]'
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-messaging/activemq-artemis-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemisAddress is the Schema for the activemqartemisaddresses
              API
            displayName: Active MQArtemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: ActiveMQArtemis is the Schema for the activemqartemises API
            displayName: Active MQArtemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - description: Provides internal message migration on clustered broker scaledown
            displayName: ActiveMQ Artemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: |
          **Red Hat AMQ Broker** is a pure-Java multiprotocol message broker. It’s built on an efficient, asynchronous core with a fast journal for message persistence.

          You can provision multiple instances and update the broker configuration on the fly using the associated Custom Resource Definitions.
          In addition, you can use the following CRDs to configure your broker environment:

          - **Address CRD**: define addresses and queues for the brokers in your deployment
          - **Security CRD**: define the security configuration for the brokers in your deployment, including:
              - users and roles
              - role based access control
              - console access control

          ## Selecting a channel
          You can specify the channel used to track and receive updates for the Operator by selecting either to track the minor or patch level versions.

          ## Supported Features
          - **Console** - Allows you view the broker topology, clients and messages. Red Hat Fuse users can integrate the broker console into the Fuse console for OpenShift.
          - **Persistence** - ephemeral and stateful deployments.
          - **Advanced queueing** - Last value queues, message groups, topic hierarchies, and large message support.
          - **Multiprotocol** - AMQP 1.0, MQTT, STOMP, OpenWire, and HornetQ Core.
          - **Address Management** - Creates and manages addresses and queues.
          - **User Management** - Creates and manages broker users.
          - **Monitoring** - Support for monitoring using Prometheus and provided Grafana dashboards.
          - **Scaledown** - Ensure consistency of messages using message migration.

          ## Storage
          An efficient data storage infrastructure is essential to the optimal performance of AMQ Broker.  AMQ Broker supports:
            - **Ephemeral** (Recommended for development only!)
            - **Persistent**
              - For example, block or NFS storage.
          Note: Your cloud provider might provide options that are not suitable for AMQ Broker, for example Amazon Elastic File System.  If in doubt, contact Red Hat Support

          ## Documentation
          Documentation for the current release is available from the [Red Hat Customer Portal](https://access.redhat.com/documentation/en-us/red_hat_amq/2021.q4/#category-amq-broker).
        displayName: Red Hat Integration - AMQ Broker for RHEL 9 (Multiarch)
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - activemqartemis
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq/
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_amq/
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:9cc48eecf1442ae04b8543fa5d4381a13bc2831390850828834d387006d1342b
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:755d0f7421efba76f52818bb3a8667cd7d2dcff2c7054dac1a4637b74ecac51d
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b2402179b1d0ff9c950defe5d8808195ef9a4c3e13e3c469cae31ab51d5f5014
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:ffffa9875f0379e9373f89f05eb06e5a193273bb04bc3aa5f85b044357b79098
        - registry.redhat.io/amq7/amq-broker-rhel9-operator-bundle@sha256:7d3c6e3137aae3a0f612731fb8e2d44fa6c7f708fea2b6382ffee0a4d1f15b3e
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:dd84cb2dfdecd4f5a3fc50a9e167ea6970d1d52d8c7427c201a74a76e151d430
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:bb6fbd68475a7852b4d99eea6c4ab313f9267da7963162f0d75375d7063409e7
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:47fd4ce2533496828aba37bd1f9715e2164d5c90bd0fc6b25e7e0786d723bf01
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:dc13871dfed52402c40fd192900fc3cb5a49da4fa08e4ec4d0e23a879e83db25
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:f92b41ededb92e88d439caf1fbeb9322354da4b7a298bb4ae6873871a1e3fcad
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:16253895bc113f395dc6ab5cd511901e43b6ee676369ec80d598a8741c3c9bf4
        - registry.redhat.io/amq7/amq-broker-rhel9@sha256:c8ccf2fb03e97fcedc3299ada2f63f47beaa7643df4b201fcb30899f923436b9
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:ff80e0a7accda6825bf834d9aec27f48205dd6329991890dd017b4d21d0da5c8
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:b3f83d5f406fd902bd9c6773f14c07649474edc4ca40bbcf75142b316a094247
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:54004a7076fff8787f14e238a7c2dd21884a882097fb474412d96b0138ca9249
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:81a004dc9d33eec151ae38f2767fe264a590710d2c3a60e934d440587f9980c4
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:7f9b921d89b6d4d91b365659afff127d99f1455b94b48a10a6a7f4c38dd8b700
        - registry.redhat.io/amq7/amq-broker-init-rhel8@sha256:40920687402fd747ca02d384e63692a5e1db625723a2bf3056a607c92ee8eee1
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:80bca92852d08a7657fb090fe44bfda10baf231c31139a24edec83f542f36232
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:d42d713da0ce6806fdc6492b6342586783e6865a82a8647d3c4288439b1751ee
        - registry.redhat.io/amq7/amq-broker-rhel9-operator@sha256:6fb2c32028429d50b8ffb26b63b6f9b055c9c3fedb479dde6f7d8dab9465922b
        - registry.redhat.io/amq7/amq-broker-init-rhel9@sha256:7a9c3e61345a8ab7c6f91701babca4a566beeb959bdd6008ea9b75df79a3b532
        version: 7.13.3-opr-1+0.1766396094.p
      entries:
      - name: amq-broker-operator.v7.13.3-opr-1-0.1766396094.p
        version: 7.13.3-opr-1+0.1766396094.p
      - name: amq-broker-operator.v7.13.3-opr-1-0.1766088994.p
        version: 7.13.3-opr-1+0.1766088994.p
      - name: amq-broker-operator.v7.13.3-opr-1-0.1766088986.p
        version: 7.13.3-opr-1+0.1766088986.p
      - name: amq-broker-operator.v7.13.3-opr-1
        version: 7.13.3-opr-1
      - name: amq-broker-operator.v7.13.2-opr-1
        version: 7.13.2-opr-1
      - name: amq-broker-operator.v7.13.2-opr-1-0.1761129569.p
        version: 7.13.2-opr-1+0.1761129569.p
      - name: amq-broker-operator.v7.13.2-opr-1-0.1761126307.p
        version: 7.13.2-opr-1+0.1761126307.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1754564924.p
        version: 7.13.1-opr-1+0.1754564924.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1758027574.p
        version: 7.13.1-opr-1+0.1758027574.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1758024989.p
        version: 7.13.1-opr-1+0.1758024989.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1756381365.p
        version: 7.13.1-opr-1+0.1756381365.p
      - name: amq-broker-operator.v7.13.1-opr-1-0.1756374447.p
        version: 7.13.1-opr-1+0.1756374447.p
      - name: amq-broker-operator.v7.13.1-opr-1
        version: 7.13.1-opr-1
      - name: amq-broker-operator.v7.13.0-opr-1
        version: 7.13.0-opr-1
      - name: amq-broker-operator.v7.13.0-opr-1-0.1747658456.p
        version: 7.13.0-opr-1+0.1747658456.p
      - name: amq-broker-operator.v7.13.0-opr-1-0.1747315188.p
        version: 7.13.0-opr-1+0.1747315188.p
      name: 7.13.x
    defaultChannel: 7.13.x
    packageName: amq-broker-rhel9
    provider:
      name: Red Hat
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Oracle Corporation
      provider-url: https://github.com/oracle/coherence-operator
    name: coherence-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: coherence-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "Coherence",
                "metadata": {
                  "name": "coherence-sample"
                },
                "spec": {
                  "replicas": 3
                }
              },
              {
                "apiVersion": "coherence.oracle.com/v1",
                "kind": "CoherenceJob",
                "metadata": {
                  "name": "coherence-job-sample"
                },
                "spec": {
                  "replicas": 1
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          certified: "false"
          containerImage: container-registry.oracle.com/middleware/coherence-operator@sha256:cbdd72331ef89cc44d13f40ae1cff33a3ca83162e1171a40b04630456432550e
          createdAt: "2025-11-24T17:26:13Z"
          description: The Oracle Coherence Kubernetes Operator enables easy management
            of Coherence clusters in a Kubernetes environment.
          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: "true"
          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"
          operatorframework.io/arch.amd64: supported
          operatorframework.io/arch.arm64: supported
          operatorframework.io/os.linux: supported
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/oracle/coherence-operator
          support: Oracle Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Coherence is the top level schema for the Coherence API and
              custom resource definition (CRD).
            displayName: Coherence
            kind: Coherence
            name: coherence.coherence.oracle.com
            version: v1
          - description: |-
              CoherenceJob is the top level schema for the CoherenceJob API and custom resource definition (CRD)
              for configuring Coherence Job workloads.
            displayName: Coherence Job
            kind: CoherenceJob
            name: coherencejob.coherence.oracle.com
            version: v1
        description: |
          The Oracle Coherence Kubernetes Operator enables easy management of Coherence clusters in a Kubernetes environment.

          ### Installation Guide & Configuration

          For the complete installation guide and all configuration options please refer to
          [Coherence Operator Documentation](https://oracle.github.io/coherence-operator/docs/latest/#/about/01_overview).
        displayName: Coherence Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Coherence
        - Oracle
        - In Memory Data
        - Caching
        links:
        - name: Coherence Kubernetes Operator
          url: https://oracle.github.io/coherence-operator/docs/latest
        - name: Oracle Coherence
          url: https://coherence.community
        maintainers:
        - email: jonathan.knight@oracle.com
          name: Jonathan Knight
        maturity: mature
        minKubeVersion: 1.26.0
        provider:
          name: Oracle Corporation
          url: https://github.com/oracle/coherence-operator
        relatedImages:
        - container-registry.oracle.com/middleware/coherence-operator@sha256:cbdd72331ef89cc44d13f40ae1cff33a3ca83162e1171a40b04630456432550e
        - registry.connect.redhat.com/oracle/coherence-operator-bundle@sha256:5f627eb1e51281dc820c2c3b358e762192ec7a0554997407011c0e7a2c66cbb2
        version: 3.5.7
      entries:
      - name: coherence-operator.v3.5.7
        version: 3.5.7
      name: stable
    defaultChannel: stable
    packageName: coherence-operator
    provider:
      name: Oracle Corporation
      url: https://github.com/oracle/coherence-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-eventbridge-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-eventbridge-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eventbridge.services.k8s.aws/v1alpha1",
                "kind": "Archive",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eventbridge.services.k8s.aws/v1alpha1",
                "kind": "Endpoint",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eventbridge.services.k8s.aws/v1alpha1",
                "kind": "EventBus",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eventbridge.services.k8s.aws/v1alpha1",
                "kind": "Rule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/eventbridge-controller:1.2.0
          createdAt: "2025-11-29T03:54:36Z"
          description: AWS EventBridge controller is a service controller for managing
            EventBridge resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Archive represents the state of an AWS eventbridge Archive
              resource.
            displayName: Archive
            kind: Archive
            name: archives.eventbridge.services.k8s.aws
            version: v1alpha1
          - description: Endpoint represents the state of an AWS eventbridge Endpoint
              resource.
            displayName: Endpoint
            kind: Endpoint
            name: endpoints.eventbridge.services.k8s.aws
            version: v1alpha1
          - description: EventBus represents the state of an AWS eventbridge EventBus
              resource.
            displayName: EventBus
            kind: EventBus
            name: eventbuses.eventbridge.services.k8s.aws
            version: v1alpha1
          - description: Rule represents the state of an AWS eventbridge Rule resource.
            displayName: Rule
            kind: Rule
            name: rules.eventbridge.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon EventBridge resources in AWS from within your Kubernetes cluster.

          **About Amazon EventBridge**

          EventBridge is a serverless service that uses events to connect application components together, making it easier for you to build scalable event-driven applications. Use it to route events from sources such as home-grown applications, AWS services, and third- party software to consumer applications across your organization. EventBridge provides a simple and consistent way to ingest, filter, transform, and deliver events so you can build new applications quickly.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EventBridge
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eventbridge
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EventBridge Developer Resources
          url: https://aws.amazon.com/eventbridge/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: eventbridge maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/eventbridge-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-eventbridge-controller@sha256:16dd357be53a6fab81b109557f4e2ae5b47438520881b54c538c2aa68623d61d
        version: 1.2.0
      entries:
      - name: ack-eventbridge-controller.v1.2.0
        version: 1.2.0
      - name: ack-eventbridge-controller.v1.1.2
        version: 1.1.2
      - name: ack-eventbridge-controller.v1.1.1
        version: 1.1.1
      - name: ack-eventbridge-controller.v1.1.0
        version: 1.1.0
      - name: ack-eventbridge-controller.v1.0.28
        version: 1.0.28
      - name: ack-eventbridge-controller.v1.0.27
        version: 1.0.27
      - name: ack-eventbridge-controller.v1.0.26
        version: 1.0.26
      - name: ack-eventbridge-controller.v1.0.25
        version: 1.0.25
      - name: ack-eventbridge-controller.v1.0.24
        version: 1.0.24
      - name: ack-eventbridge-controller.v1.0.23
        version: 1.0.23
      - name: ack-eventbridge-controller.v1.0.22
        version: 1.0.22
      - name: ack-eventbridge-controller.v1.0.21
        version: 1.0.21
      - name: ack-eventbridge-controller.v1.0.20
        version: 1.0.20
      - name: ack-eventbridge-controller.v1.0.18
        version: 1.0.18
      - name: ack-eventbridge-controller.v1.0.17
        version: 1.0.17
      - name: ack-eventbridge-controller.v1.0.16
        version: 1.0.16
      - name: ack-eventbridge-controller.v1.0.15
        version: 1.0.15
      - name: ack-eventbridge-controller.v1.0.14
        version: 1.0.14
      - name: ack-eventbridge-controller.v1.0.13
        version: 1.0.13
      - name: ack-eventbridge-controller.v1.0.12
        version: 1.0.12
      - name: ack-eventbridge-controller.v1.0.11
        version: 1.0.11
      - name: ack-eventbridge-controller.v1.0.6
        version: 1.0.6
      - name: ack-eventbridge-controller.v1.0.5
        version: 1.0.5
      - name: ack-eventbridge-controller.v1.0.4
        version: 1.0.4
      - name: ack-eventbridge-controller.v1.0.3
        version: 1.0.3
      - name: ack-eventbridge-controller.v1.0.1
        version: 1.0.1
      - name: ack-eventbridge-controller.v1.0.0
        version: 1.0.0
      - name: ack-eventbridge-controller.v0.0.7
        version: 0.0.7
      - name: ack-eventbridge-controller.v0.0.6
        version: 0.0.6
      - name: ack-eventbridge-controller.v0.0.5
        version: 0.0.5
      - name: ack-eventbridge-controller.v0.0.4
        version: 0.0.4
      - name: ack-eventbridge-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-eventbridge-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: APIMatic.io
      provider-url: https://www.apimatic.io/
    name: apimatic-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apimatic-kubernetes-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apicodegen.apimatic.io/v1beta1",
                "kind": "APIMatic",
                "metadata": {
                  "name": "apimatic-sample"
                },
                "spec": {
                  "licensespec": {
                    "licenseSourceName": "apimaticlicense",
                    "licenseSourceType": "ConfigMap"
                  },
                  "podspec": {
                    "apimaticContainerSpec": {
                      "image": "apimaticio/apimatic-codegen",
                      "imagePullSecret": "apimaticimagesecret"
                    }
                  },
                  "replicas": 3,
                  "servicespec": {
                    "apimaticserviceport": {
                      "nodePort": 32000,
                      "port": 8070
                    },
                    "servicetype": "NodePort"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: docker.io/apimaticio/apimatic-kubernetes-operator:v0.0.1
          createdAt: "2021-08-24 12:00:00"
          description: Generate client SDKs and interactive Documentation for your
            APIs in minutes
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/apimatic/apimatic-kubernetes-operator
          support: APIMatic.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIMatic is the Schema for the apimatics API
            displayName: APIMatic App
            kind: APIMatic
            name: apimatics.apicodegen.apimatic.io
            version: v1beta1
        description: "##About APIMatic \n\n APIMatic is a Developer Experience   platform
          for Web APIs that empowers users to create multi-language SDKs with API
          reference docs, dynamic code samples, assisted authentication and more -
          all auto-generated to provide a comprehensive developer experience beyond
          any API documentation tool.\n\n## Table of contents\n\n* [Introduction](#introduction)\n*
          [Features](#features)\n* [Running the Sample](#running-the-sample)\n  *
          [Prerequisites](#prerequisites)\n  * [Steps for Direct Deployment](#steps-for-direct-deployment)\n
          \ * [Steps for OLM Deployment](#steps-for-olm-deployment)\n* [Technical
          Support](#technical-support)\n* [Copyrights](#copyrights)\n\n## Introduction\n\nAPIMatic
          Operator simplifies the configuration and lifecycle management of the APIMatic
          code and docs generation solution on different Kubernetes distributions
          and OpenShift. The Operator encapsulates key operational knowledge on how
          to configure and upgrade the APIMatic CodeGen application, making it easy
          to get up and running.\n\n\nMore information about the underlying APIMatic
          CodeGen API that is exposed\nby this operator can be found [here](https://apimatic-core-v3-docs.netlify.app/#/http/getting-started/overview-apimatic-core).\n\n##
          Features\n\nAPIMatic Operator provides the following features:\n- Deploys
          the APIMatic CodeGen Web API service within the Kubernetes or OpenShift
          cluster.\n- Exposes the APIMatic CodeGen API external to the cluster, using
          Service type as [NodePort](https://kubernetes.io/docs/concepts/services-networking/service/#nodeport),
          [LoadBalancer](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
          or [ExternalName](https://kubernetes.io/docs/concepts/services-networking/service/#externalname).\n-
          For exposing the service through an ingress resource, create an Ingress
          resource in the namespace of your APIMatic CR and set owned APIMatic service
          created by the operator as a backed service. More information can be found
          [here](https://kubernetes.io/docs/concepts/services-networking/ingress/).\n-
          Manual horizontal scaling of pods.\n  ```sh\n  kubectl scale apm apimatic-sample--replicas=2\n
          \ ```\n\n## Running the Sample \n\n### Prerequisites\n\nPlease contact APIMatic
          at [support@apimatic.io](mailto:support@apimatic.io) to register with the
          APIMatic CodeGen Docker Hub registry and acquire a valid license to run
          the APIMatic CodeGen API.\n\nFurther prerequisites for running the sample
          include:\n\n- [go](https://golang.org/) v1.16.*\n- [git](https://git-scm.com/)\n-
          [make](https://www.gnu.org/software/make/)\n- [Operator SDK](https://sdk.operatorframework.io/docs/overview/)\n-
          A running Kubernetes cluster with [kubectl](https://kubernetes.io/docs/reference/kubectl/overview/)
          on client. For testing purposes, you can use [Minikube](https://minikube.sigs.k8s.io/docs/)
          or [kind](https://kind.sigs.k8s.io/)\n- For checking the service created
          by the APIMatic operator on-prem, you can use [MetalLB](https://metallb.org/)\n\n###
          Steps for Direct Deployment\n\nTo run the sample for checking the APIMatic
          operator:\n\n- Clone the APIMatic repository into your working directory
          using the following command:\n  ```sh\n  git clone https://github.com/apimatic/apimatic-kubernetes-operator.git\n
          \ ```\n- Run `make deploy` to set up the APIMatic operator resources. This
          will deploy the '`apimatic-system`' namespace as well as the CRD and the
          RBAC manifests.\n\n- Create a secret named '`apimaticimagesecret`' to allow
          pulling the APIMatic CodeGen image using the Docker Hub username registered
          with APIMatic. If you have not done so, please contact support@apimatic.io
          for the steps required.\n  ```sh\n  kubectl create secret docker-registry
          apimaticimagesecret --docker-server=https://index.docker.io/v1/ --docker-username=<your-name>
          --docker-password=<your-pword> --docker-email=<your-email>\n  ```\n- Create
          a [configmap](https://kubernetes.io/docs/concepts/configuration/configmap/)
          resource named '`apimaticlicense`' that will serve as the volume storing
          the APIMatic license. An example of this is given below which will create
          the ConfigMap using the *License.lic* file located at */usr/local/apimatic/license/*\n
          \ ```sh\n  kubectl create configmap apimaticlicense --from-file /usr/local/apimatic/license/License.lic\n
          \ ```\n- This will deploy a ConfigMap resource with the following definition:\n
          \ ```sh\n  apiVersion: v1\n  data:\n    License.lic: \\\"<License file contents
          here>\\\"\n  kind: ConfigMap\n  metadata:\n    name: apimaticlicense\n    namespace:
          default\n  ```\n- Now run the sample using the following command:\n  ```sh\n
          \ kubectl apply -f config/samples/apicodegen_v1beta1_apimatic.yaml\n  ```\n-
          You will now see a new [Deployment](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/)
          with replica count of 3 and [Service](https://kubernetes.io/docs/concepts/services-networking/service/)
          of type `NodePort` created, both named ***apimatic-sample***. Accessing
          http://localhost:32000 from your browser (or using curl from within the
          Minikube or Kind cluster, if using that) should now show the APIMatic Titan
          page.\n- You can now use the exposed APIMatic CodeGen API to generate API
          SDKs and Docs using [curl](https://curl.se/), [Postman](https://www.postman.com/)
          or your own custom Web application that consumes the APIMatic CodeGen API
          service.\n\n- Once done, you can remove the APIMatic resources using the
          following command:\n  ```sh\n  make undeploy\n  ```\n\n### Steps for OLM
          Deployment\n\nThe following steps can be used to utilize [Operator LifeCycle
          Manager (OLM)](https://olm.operatorframework.io/docs/) to deploy the operator
          and run the sample. The steps are as follows:\n\n- If not already done so,
          clone the APIMatic repository into your working directory:\n  ```sh\n  git
          clone https://github.com/apimatic/apimatic-kubernetes-operator.git\n  ```
          \n- [Install OLM in your Kubernetes cluster](https://olm.operatorframework.io/docs/getting-started/#installing-olm-in-your-cluster).\n\n-
          Run the following script to install the resources required by OLM to deploy
          the APIMatic operator in the Kubernetes cluster within the `apimatic-system`
          namespace. Information about the different resources required can be found
          using the steps given [here](https://olm.operatorframework.io/docs/tasks/).\n
          \ ```sh\n  kubectl apply -f olm/manifests.yaml\n  ```\n\n- This should spin
          up the `ClusterServiceVersion` of the operator in the `apimatic-system`
          namespace, following which the operator pod will spin up. To ensure the
          that the operator installed successfully, check for the `ClusterServiceVersion`
          and the operator deployment in the namespace it was installed in.\n  ```sh\n
          \ kubectl get csv -n apimatic-system\n  \n  kubectl get deployment -n apimatic-system\n
          \ ```\n\n  - Create a secret named `apimaticimagesecret` to allow pulling
          the APIMatic CodeGen image using the Docker Hub username registered with
          APIMatic. If you have not done so, please contact support@apimatic.io for
          the steps required.\n  ```sh\n  kubectl create secret docker-registry apimaticimagesecret
          --docker-server=https://index.docker.io/v1/ --docker-username=<your-name>
          --docker-password=<your-pword> --docker-email=<your-email>\n  ```\n- Create
          a [configmap](https://kubernetes.io/docs/concepts/configuration/configmap/)
          resource named `apimaticlicense` that will serve as the volume storing the
          APIMatic license. An example of this is given below which will create the
          ConfigMap using the *License.lic* file located at */usr/local/apimatic/license/*\n
          \ ```sh\n  kubectl create configmap apimaticlicense --from-file /usr/local/apimatic/license/License.lic\n
          \ ```\n- This will deploy a ConfigMap resource with the following definition:\n
          \ ```sh\n  apiVersion: v1\n  data:\n    License.lic: \\\"<License file contents
          here>\\\"\n  kind: ConfigMap\n  metadata:\n    name: apimaticlicense\n    namespace:
          default\n  ```\n- Now run the sample using the following command:\n  ```sh\n
          \ kubectl apply -f config/samples/apicodegen_v1beta1_apimatic.yaml\n  ```\n\n-
          You will now see a new [Deployment](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/)
          with replica count of 3 and [Service](https://kubernetes.io/docs/concepts/services-networking/service/)
          of type `NodePort` created, both named ***apimatic-sample***. Accessing
          http://localhost:32000 from your browser (or using curl from within the
          Minikube or Kind cluster, if using that) should now show the APIMatic Titan
          page.\n- You can now use the exposed APIMatic CodeGen API to generate API
          SDKs and Docs using [curl](https://curl.se/), [Postman](https://www.postman.com/)
          or your own custom Web application that consumes the APIMatic CodeGen API
          service.\n- Once done, you can remove the APIMatic operator resources using
          the follow script:\n  ```sh\n  kubectl delete -f olm/manifests.yaml\n  ```\n\n##
          Technical Support\n\n- To request additional features in the future, or
          if you notice any discrepancy regarding this document, please drop an email
          to [support@apimatic.io](mailto:support@apimatic.io).\n\n### Copyrights\n\n&copy;
          2021 APIMatic.io\n"
        displayName: APIMatic Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Rest APIs
        - API SDK Generator
        - API Docs Generator
        - API Developer Portal
        - APIMatic
        - Developer Tools
        links:
        - name: Overview
          url: https://www.apimatic.io/
        - name: Developer Experience Portal
          url: https://www.apimatic.io/developer-experience-portal
        - name: Code-Gen as a Service
          url: https://www.apimatic.io/continuous-code-generation
        - name: API Transformer
          url: https://www.apimatic.io/transformer
        - name: Contact
          url: https://www.apimatic.io/contact
        - name: Documentation
          url: https://docs.apimatic.io/
        - name: Blogs
          url: https://www.apimatic.io/blog/
        maintainers:
        - email: support@apimatic.io
          name: Support
        maturity: alpha
        provider:
          name: APIMatic.io
          url: https://www.apimatic.io/
        relatedImages:
        - quay.io/openshift-community-operators/apimatic-kubernetes-operator@sha256:a5f68205291caa9bb7903180afc974fe86252ba87e671978c8b49e0206976d06
        - docker.io/apimaticio/apimatic-kubernetes-operator:v0.0.1
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.0.1
      entries:
      - name: apimatic-kubernetes-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: apimatic-kubernetes-operator
    provider:
      name: APIMatic.io
      url: https://www.apimatic.io/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: ansible-cloud-addons-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aca-operator.v2.5.0-0.1761049779
      currentCSVDesc:
        annotations:
          alm-examples: ""
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          description: The Ansible Cloud Addons Operator manages everything Automation
          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: "true"
          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.skipRange: '>=2.1.1-0.1645500829 <2.5.1'
          operatorframework.io/suggested-namespace: aap
          operators.operatorframework.io/builder: operator-sdk-v1.11.0+git
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: ansible
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Deploy an AAP AWS Billing instance
            displayName: AnsibleAutomationPlatformAwsBilling
            kind: AnsibleAutomationPlatformAwsBilling
            name: ansibleautomationplatformawsbillings.platform.ansible.com
            version: v1alpha1
          - description: Deploy an AAP Azure Billing instance
            displayName: AnsibleAutomationPlatformAzureBilling
            kind: AnsibleAutomationPlatformAzureBilling
            name: ansibleautomationplatformazurebillings.platform.ansible.com
            version: v1alpha1
          - description: Deploy an AAP Metrics instance
            displayName: AnsibleAutomationPlatformMetrics
            kind: AnsibleAutomationPlatformMetrics
            name: ansibleautomationplatformmetrics.platform.ansible.com
            version: v1alpha1
          - description: Deploy an AAP UI instance
            displayName: AutomationPlatform
            kind: AutomationPlatform
            name: automationplatforms.platform.ansible.com
            version: v1alpha1
        description: |
          Red Hat Ansible Cloud Addons is designed to help your organization accelerate, orchestrate and innovate with automation. Scale automation with control and insight. Collaborate across teams. Manage policy and governance. Empower multiple IT domains without slowing down development. With Ansible Automation Platform you can drive business outcomes and unleash the full potential of your teams and technology.

          ## About this Operator

          The Ansible Cloud Addons Operator provides for push-button deployments of Cloud Add-ons into your OpenShift environment. Ansible Cloud Addons deployments include:
            * Cloud Billing - Cloud billing connector for Ansible Automation Platform
            * Cloud UI - Unified welcome page UI for Ansible Automation Platform

          ## How to Install

          Use of this Red Hat product requires a licensing and subscription agreement.
          Install the Red Hat Ansible Cloud Addons operator by following instructions presented when you click the Install button.
        displayName: Ansible Cloud Addons
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ansible
        - automation
        - automation-platform
        - ansible-automation-platform
        - aap
        - cloud
        - management
        links:
        - name: About Ansible Automation Platform
          url: https://www.redhat.com/en/technologies/management/ansible
        maintainers:
        - email: aap-maintainers@redhat.com
          name: Ansible Automation Platform Productization Team
        maturity: stable
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/ansible-automation-platform/cloud-addons-operator-bundle@sha256:dc5e1a714748b7310815fbf177d8d6dbece65d2e50317c92118559c0b5412cd5
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-billing-rhel8-operator@sha256:42d72b27e80757639d48718efec330725a22523aed2b39ec2c979f98ca3af2d3
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-billing-rhel8@sha256:eb7d09283ce86258e1ad2322ffeea00e524557aae1d0edeb5719fe86623ee518
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-metrics-collector-rhel8@sha256:cb739c11db66098a6df8bfe1e1c9d4f9fc7fe6f7e0323fc25c07e24da4a0f9dc
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-ui-rhel8-operator@sha256:bf081586cf195425d2e6cc1e911aca46b4a81bcf941df809880fc070584a11de
        - registry.redhat.io/ansible-automation-platform-25/aap-cloud-ui-rhel8@sha256:be4516bad34a4ce25fc615fc0d8ba72c9628d6cbb44bbe8a1e67c9b12a920275
        version: 2.5.0+0.1761049779
      entries:
      - name: aca-operator.v2.5.0-0.1727240231
        version: 2.5.0+0.1727240231
      - name: aca-operator.v2.5.0-0.1727874815
        version: 2.5.0+0.1727874815
      - name: aca-operator.v2.5.0-0.1728516369
        version: 2.5.0+0.1728516369
      - name: aca-operator.v2.5.0-0.1729737962
        version: 2.5.0+0.1729737962
      - name: aca-operator.v2.5.0-0.1731452082
        version: 2.5.0+0.1731452082
      - name: aca-operator.v2.5.0-0.1733188778
        version: 2.5.0+0.1733188778
      - name: aca-operator.v2.5.0-0.1733964232
        version: 2.5.0+0.1733964232
      - name: aca-operator.v2.5.0-0.1736892777
        version: 2.5.0+0.1736892777
      - name: aca-operator.v2.5.0-0.1737095650
        version: 2.5.0+0.1737095650
      - name: aca-operator.v2.5.0-0.1737671171
        version: 2.5.0+0.1737671171
      - name: aca-operator.v2.5.0-0.1739244024
        version: 2.5.0+0.1739244024
      - name: aca-operator.v2.5.0-0.1740088272
        version: 2.5.0+0.1740088272
      - name: aca-operator.v2.5.0-0.1740769078
        version: 2.5.0+0.1740769078
      - name: aca-operator.v2.5.0-0.1741367998
        version: 2.5.0+0.1741367998
      - name: aca-operator.v2.5.0-0.1742427652
        version: 2.5.0+0.1742427652
      - name: aca-operator.v2.5.0-0.1743655743
        version: 2.5.0+0.1743655743
      - name: aca-operator.v2.5.0-0.1746134365
        version: 2.5.0+0.1746134365
      - name: aca-operator.v2.5.0-0.1747339736
        version: 2.5.0+0.1747339736
      - name: aca-operator.v2.5.0-0.1749072064
        version: 2.5.0+0.1749072064
      - name: aca-operator.v2.5.0-0.1750895274
        version: 2.5.0+0.1750895274
      - name: aca-operator.v2.5.0-0.1753899647
        version: 2.5.0+0.1753899647
      - name: aca-operator.v2.5.0-0.1755834478
        version: 2.5.0+0.1755834478
      - name: aca-operator.v2.5.0-0.1758143647
        version: 2.5.0+0.1758143647
      - name: aca-operator.v2.5.0-0.1761049779
        version: 2.5.0+0.1761049779
      name: stable-2.5-cluster-scoped
    defaultChannel: stable-2.5-cluster-scoped
    packageName: ansible-cloud-addons-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhbk-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhbk-operator.v22.0.13-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": "example.org",
                  "tlsSecret": "my-tls-secret"
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:21e808c676cf3e231f0d5592a48ec668c069ba00cbc7c5aaac08f61d52323ad8
          createdAt: "2024-09-17T11:20:22Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:21e808c676cf3e231f0d5592a48ec668c069ba00cbc7c5aaac08f61d52323ad8
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:884afe0ca1698d85a02aa47b6d60b8222e50d70ad280db6f98e1a4bbdbe13c40
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:c342da2a8183de278abebf98ef23332ce382544233a8b1128bf1ff74126e9c14
        version: 22.0.13-opr.1
      entries:
      - name: rhbk-operator.v22.0.13-opr.1
        version: 22.0.13-opr.1
      - name: rhbk-operator.v22.0.12-opr.1
        version: 22.0.12-opr.1
      - name: rhbk-operator.v22.0.11-opr.2
        version: 22.0.11-opr.2
      - name: rhbk-operator.v22.0.11-opr.1
        version: 22.0.11-opr.1
      - name: rhbk-operator.v22.0.10-opr.1
        version: 22.0.10-opr.1
      - name: rhbk-operator.v22.0.9-opr.1
        version: 22.0.9-opr.1
      - name: rhbk-operator.v22.0.8-opr.2
        version: 22.0.8-opr.2
      - name: rhbk-operator.v22.0.8-opr.1
        version: 22.0.8-opr.1
      - name: rhbk-operator.v22.0.7-opr.1
        version: 22.0.7-opr.1
      - name: rhbk-operator.v22.0.6-opr.1
        version: 22.0.6-opr.1
      name: stable-v22
    - currentCSV: rhbk-operator.v22.0.13-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": "example.org",
                  "tlsSecret": "my-tls-secret"
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:21e808c676cf3e231f0d5592a48ec668c069ba00cbc7c5aaac08f61d52323ad8
          createdAt: "2024-09-17T11:20:22Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:c342da2a8183de278abebf98ef23332ce382544233a8b1128bf1ff74126e9c14
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:21e808c676cf3e231f0d5592a48ec668c069ba00cbc7c5aaac08f61d52323ad8
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:884afe0ca1698d85a02aa47b6d60b8222e50d70ad280db6f98e1a4bbdbe13c40
        version: 22.0.13-opr.1
      entries:
      - name: rhbk-operator.v22.0.13-opr.1
        version: 22.0.13-opr.1
      - name: rhbk-operator.v22.0.12-opr.1
        version: 22.0.12-opr.1
      - name: rhbk-operator.v22.0.11-opr.2
        version: 22.0.11-opr.2
      - name: rhbk-operator.v22.0.11-opr.1
        version: 22.0.11-opr.1
      - name: rhbk-operator.v22.0.10-opr.1
        version: 22.0.10-opr.1
      - name: rhbk-operator.v22.0.9-opr.1
        version: 22.0.9-opr.1
      - name: rhbk-operator.v22.0.8-opr.2
        version: 22.0.8-opr.2
      - name: rhbk-operator.v22.0.8-opr.1
        version: 22.0.8-opr.1
      - name: rhbk-operator.v22.0.7-opr.1
        version: 22.0.7-opr.1
      - name: rhbk-operator.v22.0.6-opr.1
        version: 22.0.6-opr.1
      name: stable-v22.0
    - currentCSV: rhbk-operator.v24.0.11-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ee815bf36c438e81b9553f0359a7725f0b3f633a5143f04cc822ea865940801a
          createdAt: "2025-03-26T02:27:51Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ee815bf36c438e81b9553f0359a7725f0b3f633a5143f04cc822ea865940801a
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:d339ecf788d1681ba9945a2ea63ca675caec863ec75f497ef916103f4c898003
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:df74d1b1479c6cf371e45b4775bc6c905a9855cf182fb6ff8a752c6e846f55a6
        version: 24.0.11-opr.1
      entries:
      - name: rhbk-operator.v24.0.11-opr.1
        version: 24.0.11-opr.1
      - name: rhbk-operator.v24.0.10-opr.1
        version: 24.0.10-opr.1
      - name: rhbk-operator.v24.0.9-opr.1
        version: 24.0.9-opr.1
      - name: rhbk-operator.v24.0.8-opr.1
        version: 24.0.8-opr.1
      - name: rhbk-operator.v24.0.7-opr.1
        version: 24.0.7-opr.1
      - name: rhbk-operator.v24.0.6-opr.1
        version: 24.0.6-opr.1
      - name: rhbk-operator.v24.0.5-opr.1
        version: 24.0.5-opr.1
      - name: rhbk-operator.v24.0.4-opr.1
        version: 24.0.4-opr.1
      - name: rhbk-operator.v24.0.3-opr.1
        version: 24.0.3-opr.1
      name: stable-v24
    - currentCSV: rhbk-operator.v24.0.11-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ee815bf36c438e81b9553f0359a7725f0b3f633a5143f04cc822ea865940801a
          createdAt: "2025-03-26T02:27:51Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:df74d1b1479c6cf371e45b4775bc6c905a9855cf182fb6ff8a752c6e846f55a6
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ee815bf36c438e81b9553f0359a7725f0b3f633a5143f04cc822ea865940801a
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:d339ecf788d1681ba9945a2ea63ca675caec863ec75f497ef916103f4c898003
        version: 24.0.11-opr.1
      entries:
      - name: rhbk-operator.v24.0.11-opr.1
        version: 24.0.11-opr.1
      - name: rhbk-operator.v24.0.10-opr.1
        version: 24.0.10-opr.1
      - name: rhbk-operator.v24.0.9-opr.1
        version: 24.0.9-opr.1
      - name: rhbk-operator.v24.0.8-opr.1
        version: 24.0.8-opr.1
      - name: rhbk-operator.v24.0.7-opr.1
        version: 24.0.7-opr.1
      - name: rhbk-operator.v24.0.6-opr.1
        version: 24.0.6-opr.1
      - name: rhbk-operator.v24.0.5-opr.1
        version: 24.0.5-opr.1
      - name: rhbk-operator.v24.0.4-opr.1
        version: 24.0.4-opr.1
      - name: rhbk-operator.v24.0.3-opr.1
        version: 24.0.3-opr.1
      name: stable-v24.0
    - currentCSV: rhbk-operator.v26.4.7-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:8a65029e243ec354f69d71391b9567afd3664e0ce7c8ffd566dcf0cdda1805c9
          createdAt: "2025-12-05T15:23:54Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Red Hat build of Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: batch
          kind: Job
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: networking.k8s.io
          kind: NetworkPolicy
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:550e4bd289be652779bae87764c208ec57636e2eb17fdba928aaaacc450e8112
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:8a65029e243ec354f69d71391b9567afd3664e0ce7c8ffd566dcf0cdda1805c9
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:eaddec56b89ad4a9ad0bf4350e91dc0951f18192e02a5d95be36865a17c83002
        version: 26.4.7-opr.1
      entries:
      - name: rhbk-operator.v26.4.7-opr.1
        version: 26.4.7-opr.1
      - name: rhbk-operator.v26.4.6-opr.1
        version: 26.4.6-opr.1
      - name: rhbk-operator.v26.4.5-opr.1
        version: 26.4.5-opr.1
      - name: rhbk-operator.v26.4.4-opr.1
        version: 26.4.4-opr.1
      - name: rhbk-operator.v26.4.2-opr.1
        version: 26.4.2-opr.1
      - name: rhbk-operator.v26.2.12-opr.1
        version: 26.2.12-opr.1
      - name: rhbk-operator.v26.2.11-opr.1
        version: 26.2.11-opr.1
      - name: rhbk-operator.v26.2.10-opr.1
        version: 26.2.10-opr.1
      - name: rhbk-operator.v26.2.9-opr.1
        version: 26.2.9-opr.1
      - name: rhbk-operator.v26.2.8-opr.1
        version: 26.2.8-opr.1
      - name: rhbk-operator.v26.2.7-opr.1
        version: 26.2.7-opr.1
      - name: rhbk-operator.v26.2.6-opr.1
        version: 26.2.6-opr.1
      - name: rhbk-operator.v26.2.5-opr.1
        version: 26.2.5-opr.1
      - name: rhbk-operator.v26.2.4-opr.2
        version: 26.2.4-opr.2
      - name: rhbk-operator.v26.2.4-opr.1
        version: 26.2.4-opr.1
      - name: rhbk-operator.v26.0.17-opr.1
        version: 26.0.17-opr.1
      - name: rhbk-operator.v26.0.16-opr.1
        version: 26.0.16-opr.1
      - name: rhbk-operator.v26.0.15-opr.1
        version: 26.0.15-opr.1
      - name: rhbk-operator.v26.0.14-opr.1
        version: 26.0.14-opr.1
      - name: rhbk-operator.v26.0.13-opr.1
        version: 26.0.13-opr.1
      - name: rhbk-operator.v26.0.12-opr.1
        version: 26.0.12-opr.1
      - name: rhbk-operator.v26.0.11-opr.1
        version: 26.0.11-opr.1
      - name: rhbk-operator.v26.0.10-opr.1
        version: 26.0.10-opr.1
      - name: rhbk-operator.v26.0.9-opr.1
        version: 26.0.9-opr.1
      - name: rhbk-operator.v26.0.8-opr.1
        version: 26.0.8-opr.1
      - name: rhbk-operator.v26.0.7-opr.1
        version: 26.0.7-opr.1
      - name: rhbk-operator.v26.0.6-opr.1
        version: 26.0.6-opr.1
      - name: rhbk-operator.v26.0.5-opr.1
        version: 26.0.5-opr.1
      name: stable-v26
    - currentCSV: rhbk-operator.v26.0.17-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:9c8b7f9690808a17426a066a840055422a53585ed03beeb8e5adfd678abbc37d
          createdAt: "2025-11-05T03:02:05Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Red Hat build of Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:9c8b7f9690808a17426a066a840055422a53585ed03beeb8e5adfd678abbc37d
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:8c5c8c530c63bf9eaf4909b9e6b7d234a0ff266f31030b60869c4af1b2167b73
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:1696b6f86abea123341f703981c26d79365c8a0c046d7add6970fb7b1848ace2
        version: 26.0.17-opr.1
      entries:
      - name: rhbk-operator.v26.0.17-opr.1
        version: 26.0.17-opr.1
      - name: rhbk-operator.v26.0.16-opr.1
        version: 26.0.16-opr.1
      - name: rhbk-operator.v26.0.15-opr.1
        version: 26.0.15-opr.1
      - name: rhbk-operator.v26.0.14-opr.1
        version: 26.0.14-opr.1
      - name: rhbk-operator.v26.0.13-opr.1
        version: 26.0.13-opr.1
      - name: rhbk-operator.v26.0.12-opr.1
        version: 26.0.12-opr.1
      - name: rhbk-operator.v26.0.11-opr.1
        version: 26.0.11-opr.1
      - name: rhbk-operator.v26.0.10-opr.1
        version: 26.0.10-opr.1
      - name: rhbk-operator.v26.0.9-opr.1
        version: 26.0.9-opr.1
      - name: rhbk-operator.v26.0.8-opr.1
        version: 26.0.8-opr.1
      - name: rhbk-operator.v26.0.7-opr.1
        version: 26.0.7-opr.1
      - name: rhbk-operator.v26.0.6-opr.1
        version: 26.0.6-opr.1
      - name: rhbk-operator.v26.0.5-opr.1
        version: 26.0.5-opr.1
      name: stable-v26.0
    - currentCSV: rhbk-operator.v26.2.12-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ced1c761aa580d1c1a188064d0ae5ab9b4f717c0429df5a6d5e32ad2182f16a5
          createdAt: "2025-12-02T16:40:11Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Red Hat build of Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: batch
          kind: Job
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: networking.k8s.io
          kind: NetworkPolicy
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:905406a14759d960b41f56dbb30170961fafc7b59421efb6c2bba5c6f91a9f39
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:ced1c761aa580d1c1a188064d0ae5ab9b4f717c0429df5a6d5e32ad2182f16a5
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:293e3169bad9ed1739b0750d13a7e4572594c2f5eb2eca6cea04b588ed06029e
        version: 26.2.12-opr.1
      entries:
      - name: rhbk-operator.v26.2.12-opr.1
        version: 26.2.12-opr.1
      - name: rhbk-operator.v26.2.11-opr.1
        version: 26.2.11-opr.1
      - name: rhbk-operator.v26.2.10-opr.1
        version: 26.2.10-opr.1
      - name: rhbk-operator.v26.2.9-opr.1
        version: 26.2.9-opr.1
      - name: rhbk-operator.v26.2.8-opr.1
        version: 26.2.8-opr.1
      - name: rhbk-operator.v26.2.7-opr.1
        version: 26.2.7-opr.1
      - name: rhbk-operator.v26.2.6-opr.1
        version: 26.2.6-opr.1
      - name: rhbk-operator.v26.2.5-opr.1
        version: 26.2.5-opr.1
      - name: rhbk-operator.v26.2.4-opr.2
        version: 26.2.4-opr.2
      - name: rhbk-operator.v26.2.4-opr.1
        version: 26.2.4-opr.1
      name: stable-v26.2
    - currentCSV: rhbk-operator.v26.4.7-opr.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "example-keycloak",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "instances": 1,
                  "hostname": {
                    "hostname": "example.org"
                  },
                  "http": {
                    "tlsSecret": "my-tls-secret"
                  }
                }
              },
              {
                "apiVersion": "k8s.keycloak.org/v2alpha1",
                "kind": "KeycloakRealmImport",
                "metadata": {
                  "name": "example-keycloak-realm-import",
                  "labels": {
                    "app": "sso"
                  }
                },
                "spec": {
                  "keycloakCRName": "example-keycloak",
                  "realm": {}
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:8a65029e243ec354f69d71391b9567afd3664e0ce7c8ffd566dcf0cdda1805c9
          createdAt: "2025-12-05T15:23:54Z"
          description: An Operator for installing and managing Keycloak
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/keycloak/keycloak
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Keycloak Realm Import
            displayName: KeycloakRealmImport
            kind: KeycloakRealmImport
            name: keycloakrealmimports.k8s.keycloak.org
            version: v2alpha1
          - description: Represents a Keycloak Instance
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.k8s.keycloak.org
            version: v2alpha1
        description: |
          A Kubernetes Operator based on the Operator SDK for installing and managing Keycloak.

          Keycloak lets you add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box.

          The operator can deploy and manage Keycloak instances on Kubernetes and OpenShift.
          The following features are supported:

          * Install Keycloak to a namespace
          * Import Keycloak Realms
        displayName: Red Hat build of Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Keycloak
        - Identity
        - Access
        links:
        - name: Documentation
          url: https://www.keycloak.org/guides#operator
        - name: Keycloak
          url: https://www.keycloak.org/
        - name: Keycloak Discourse
          url: https://keycloak.discourse.group/
        maintainers:
        - email: keycloak-dev@googlegroups.com
          name: Keycloak DEV mailing list
        maturity: stable
        nativeApis:
        - group: ""
          kind: Secret
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: apps
          kind: StatefulSet
          version: v1
        - group: batch
          kind: Job
          version: v1
        - group: networking.k8s.io
          kind: Ingress
          version: v1
        - group: networking.k8s.io
          kind: NetworkPolicy
          version: v1
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhbk/keycloak-operator-bundle@sha256:550e4bd289be652779bae87764c208ec57636e2eb17fdba928aaaacc450e8112
        - registry.redhat.io/rhbk/keycloak-rhel9-operator@sha256:8a65029e243ec354f69d71391b9567afd3664e0ce7c8ffd566dcf0cdda1805c9
        - registry.redhat.io/rhbk/keycloak-rhel9@sha256:eaddec56b89ad4a9ad0bf4350e91dc0951f18192e02a5d95be36865a17c83002
        version: 26.4.7-opr.1
      entries:
      - name: rhbk-operator.v26.4.7-opr.1
        version: 26.4.7-opr.1
      - name: rhbk-operator.v26.4.6-opr.1
        version: 26.4.6-opr.1
      - name: rhbk-operator.v26.4.5-opr.1
        version: 26.4.5-opr.1
      - name: rhbk-operator.v26.4.4-opr.1
        version: 26.4.4-opr.1
      - name: rhbk-operator.v26.4.2-opr.1
        version: 26.4.2-opr.1
      name: stable-v26.4
    defaultChannel: stable-v26.4
    packageName: rhbk-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      full_version: 4.20.4-1
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: odf-dependencies
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-dependencies.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          createdAt: "2025-12-18T07:58:16Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          olm.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          deploys dependencies.
        displayName: Data Foundation Dependencies
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-dependencies-operator-bundle@sha256:7d89cc28cd82e5f4fe0c675d111ee4b795e417e1d16ec10aebaa5529d5cedd38
        version: 4.19.9-rhodf
      entries:
      - name: odf-dependencies.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-dependencies.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-dependencies.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-dependencies.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-dependencies.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-dependencies.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-dependencies.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-dependencies.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-dependencies.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-dependencies.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-dependencies.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          createdAt: "2025-12-18T07:45:08Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.21"}]'
          olm.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operatorframework.io/suggested-namespace: openshift-storage
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          deploys dependencies.
        displayName: Data Foundation Dependencies
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/odf-operator
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/odf4/odf-dependencies-operator-bundle@sha256:55a7e1e729f476187b550f2ceae203ab579418157fa95657ffcbcb70f258c324
        version: 4.20.4-rhodf
      entries:
      - name: odf-dependencies.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-dependencies.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-dependencies.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-dependencies.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-dependencies.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-dependencies
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: mtr-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mtr-operator.1.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
             {
               "apiVersion": "windup.jboss.org/v1",
               "kind": "Windup",
               "metadata": {
                 "namespace": "mtr",
                 "name": "mtr",
                 "labels": {
                   "application": "windup"
                 }
               },
               "spec": {}
             }
            ]
          capabilities: Basic Install
          categories: Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/mtr/mtr-rhel8-operator@sha256:4df7c4ad353339e8b958ffc651e811667767c8a0dcdd61f89352c926da52a513
          createdAt: "2024-09-03T17:22:23Z"
          description: Migration Toolkit for Runtimes is an analysis tool that supports
            the modernization and migration of Java applications.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          imagePullPolicy: Always
          operatorframework.io/suggested-namespace: mtr
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/windup/windup-operator/
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: "Create an MTR Web Console application.  \n\nTo access the
              MTR Web Console application from the \"Developer\" perspective, please
              go to Topology and click on the \"Open URL\" icon on the web-console
              pod.  \n\nAlternatively from the \"Administrator\" perspective, please
              go to Networking->Routes and click on the Location hyperlink.  \n\nIn
              order to connect with default login credentials, please use \"migration\"
              as username and \"password\" as password.  \n\nKnown issue  \nIf you
              want to customize the MTR Web Console instance's parameters and you
              can not see any in the `Form view`, please switch to the `YAML view`
              and change them as needed.\n"
            displayName: Migration Toolkit for Runtimes
            kind: Windup
            name: windups.windup.jboss.org
            version: v1
        description: "The Migration Toolkit for Runtimes (MTR) is a web console application
          that supports large-scale Java application modernization and migration projects
          across a broad range of transformations and use cases.  \n\nIt analyzes
          application code, supports effort estimation, accelerates code migration,
          and enables users to move applications to containers.  \n\nFor more information
          please refer to the [https://developers.redhat.com/products/mtr/overview](https://developers.redhat.com/products/mtr/overview)
          page.\n"
        displayName: Migration Toolkit for Runtimes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - monitoring
        - security
        - alerting
        - metric
        - troubleshooting
        - run-time
        - migration
        - modernization
        links:
        - name: Website
          url: https://developers.redhat.com/products/mtr/overview
        - name: GitHub
          url: https://github.com/windup/windup-operator
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/migration_toolkit_for_runtimes
        maintainers:
        - email: migrate@redhat.com
          name: Migration Toolkit for Runtimes
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/mtr/mtr-rhel8-operator@sha256:4df7c4ad353339e8b958ffc651e811667767c8a0dcdd61f89352c926da52a513
        - registry.redhat.io/mtr/mtr-web-container-rhel8@sha256:cb88a5453b506ca70563537ec6db2f44ff8cb4050c9652ec86eb5128aa313003
        - registry.redhat.io/mtr/mtr-web-executor-container-rhel8@sha256:2f0622774367f33efc321926196681322ab1535144e6a0785608c8050fc59f2e
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/mtr/mtr-operator-bundle@sha256:190a6fa2a6a9b6b182cdf9cab18814d05c203b54ca18dc533e553fa5dcca779e
        version: 1.2.7
      entries:
      - name: mtr-operator.1.2.7
        version: 1.2.7
      - name: mtr-operator.1.2.6
        version: 1.2.6
      - name: mtr-operator.1.2.5
        version: 1.2.5
      - name: mtr-operator.1.2.4
        version: 1.2.4
      - name: mtr-operator.1.2.3
        version: 1.2.3
      - name: mtr-operator.1.2.2
        version: 1.2.2
      - name: mtr-operator.1.2.1
        version: 1.2.1
      - name: mtr-operator.1.2.0
        version: 1.2.0
      - name: mtr-operator.1.1.1
        version: 1.1.1
      - name: mtr-operator.1.1.0
        version: 1.1.0
      - name: mtr-operator.1.0.3
        version: 1.0.3
      - name: mtr-operator.1.0.2
        version: 1.0.2
      - name: mtr-operator.1.0.1
        version: 1.0.1
      - name: mtr-operator.1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: mtr-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NooBaa
      provider-url: ""
    name: mcg-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mcg-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[{"kind":"NooBaa","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"noobaa","creationTimestamp":null},"spec":{"cleanupPolicy":{},"security":{"kms":{}},"loadBalancerSourceSubnets":{},"autoscaler":{},"bucketLogging":{},"bucketNotifications":{"enabled":false}},"status":{"lastKeyRotateTime":null}},{"kind":"BackingStore","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"type":""},"status":{"mode":{}}},{"kind":"NamespaceStore","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"type":""},"status":{"mode":{}}},{"kind":"BucketClass","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{},"status":{}},{"kind":"NooBaaAccount","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"allow_bucket_creation":false},"status":{}}]'
          capabilities: Seamless Upgrades
          categories: Storage,Big Data
          certified: "false"
          containerImage: registry.redhat.io/odf4/mcg-rhel9-operator@sha256:1b5bb3031e350b8bd96029fc46beb17f7f7100f829555cf4017b2cd7a2fcd67f
          createdAt: "2019-07-08T13:10:20.940Z"
          description: NooBaa is an object data service for hybrid and multi cloud
            environments.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/infrastructure-features: ֿ'["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/noobaa/noobaa-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A NooBaa system - Create this to start
            displayName: NooBaa
            kind: NooBaa
            name: noobaas.noobaa.io
            version: v1alpha1
          - description: Storage target spec such as aws-s3, s3-compatible, ibm-cos,
              PV's and more. Used in BucketClass to construct data placement policies.
            displayName: Backing Store
            kind: BackingStore
            name: backingstores.noobaa.io
            version: v1alpha1
          - description: Storage target spec such as aws-s3, s3-compatible, ibm-cos
              and more. Used in BucketClass to construct namespace policies.
            displayName: Namespace Store
            kind: NamespaceStore
            name: namespacestores.noobaa.io
            version: v1alpha1
          - description: Storage policy spec  tiering, mirroring, spreading, namespace
              policy. Combines BackingStores Or NamespaceStores. Referenced by ObjectBucketClaims.
            displayName: Bucket Class
            kind: BucketClass
            name: bucketclasses.noobaa.io
            version: v1alpha1
          - kind: NooBaaAccount
            name: noobaaaccounts.noobaa.io
            version: v1alpha1
          - description: Claim a bucket just like claiming a PV. Automate you app
              bucket provisioning by creating OBC with your app deployment. A secret
              and configmap (name=claim) will be created with access details for the
              app pods.
            displayName: Object Bucket Claim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
          - description: Used under-the-hood. Created per ObjectBucketClaim and keeps
              provisioning information.
            displayName: Object Bucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Backup
            kind: Backup
            name: backups.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ClusterImageCatalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Database
            kind: Database
            name: databases.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: FailoverQuorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ImageCatalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Publication
            kind: Publication
            name: publications.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ScheduledBackup
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.noobaa.io
            version: v1
        description: "The noobaa operator creates and reconciles a NooBaa system in
          a Kubernetes/Openshift cluster.\n\nNooBaa provides an S3 object-store service
          abstraction and data placement policies to create hybrid and multi cloud
          data solutions.\n\nFor more information on using NooBaa refer to [Github](https://github.com/noobaa/noobaa-core)
          / [Website](https://www.noobaa.io) / [Articles](https://noobaa.desk.com).
          \n\n## How does it work?\n\n- The operator deploys the noobaa core pod and
          two services - Mgmt (UI/API) and S3 (object-store).\n- Both services require
          credentials which you will get from a secret that the operator creates -
          use describe noobaa to locate it.\n- The service addresses will also appear
          in the describe output - pick the one that is suitable for your client:\n
          \   - minikube - use the NodePort address.\n    - remote cluster - probably
          need one of the External addresses.\n    - connect an application on the
          same cluster - use Internal DNS (though any address should work)\n    \n-
          Feel free to email us or open github issues on any question.\n\n## Getting
          Started\n\n### Notes:\n- The following instructions are for **minikube**
          but it works on any Kubernetes/Openshift clusters.\n- This will setup noobaa
          in the **my-noobaa-operator** namespace.\n- You will need **jq**, **curl**,
          **kubectl** or **oc**, **aws-cli**.\n\n### 1. Install OLM (if you don't
          have it already):\n```\ncurl -sL https://github.com/operator-framework/operator-lifecycle-manager/releases/download/0.12.0/install.sh
          | bash -s 0.12.0\n```\n\n### 2. Install noobaa-operator:\n```\nkubectl create
          -f https://operatorhub.io/install/noobaa-operator.yaml\n```\nWait for it
          to be ready:\n```\nkubectl wait pod -n my-noobaa-operator -l noobaa-operator
          --for=condition=ready\n```\n\n### 3. Create noobaa system:\n```\ncurl -sL
          https://operatorhub.io/api/operator?packageName=noobaa-operator | \n    jq
          '.operator.customResourceDefinitions[0].yamlExample | .metadata.namespace=\"my-noobaa-operator\"'
          |\n    kubectl create -f -\n```\nWait for it to be ready:\n```\nkubectl
          wait pod -n my-noobaa-operator -l noobaa-core --for=condition=ready\nkubectl
          get noobaa -n my-noobaa-operator -w\n# NAME     PHASE   MGMT-ENDPOINTS                  S3-ENDPOINTS
          \                   IMAGE                    AGE\n# noobaa   **Ready**   [https://192.168.64.12:31121]
          \  [https://192.168.64.12:32557]   noobaa/noobaa-core:4.0   19m\n```\n\n###
          4. Get system information to your shell:\n```\nNOOBAA_SECRET=$(kubectl get
          noobaa noobaa -n my-noobaa-operator -o json | jq -r '.status.accounts.admin.secretRef.name'
          )\nNOOBAA_MGMT=$(kubectl get noobaa noobaa -n my-noobaa-operator -o json
          | jq -r '.status.services.serviceMgmt.nodePorts[0]' )\nNOOBAA_S3=$(kubectl
          get noobaa noobaa -n my-noobaa-operator -o json | jq -r '.status.services.serviceS3.nodePorts[0]'
          )\nNOOBAA_ACCESS_KEY=$(kubectl get secret $NOOBAA_SECRET -n my-noobaa-operator
          -o json | jq -r '.data.AWS_ACCESS_KEY_ID|@base64d')\nNOOBAA_SECRET_KEY=$(kubectl
          get secret $NOOBAA_SECRET -n my-noobaa-operator -o json | jq -r '.data.AWS_SECRET_ACCESS_KEY|@base64d')\n```\n\n###
          5. Connect to Mgmt UI:\n```\n# show email/password from the secret:\nkubectl
          get secret $NOOBAA_SECRET -n my-noobaa-operator -o json | jq '.data|map_values(@base64d)'\n\n#
          open mgmt UI login:\nopen $NOOBAA_MGMT\n```\n\n### 6. Connect to S3 with
          aws-cli:\n```\nalias s3='AWS_ACCESS_KEY_ID=$NOOBAA_ACCESS_KEY AWS_SECRET_ACCESS_KEY=$NOOBAA_SECRET_KEY
          aws --endpoint $NOOBAA_S3 --no-verify-ssl s3'\ns3 ls\ns3 sync /var/log/
          s3://first.bucket\ns3 ls s3://first.bucket\n```\n"
        displayName: NooBaa Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - noobaa
        - kubernetes
        - openshift
        - cloud
        - hybrid
        - multi
        - data
        - storage
        - s3
        - tiering
        - mirroring
        links:
        - name: Github
          url: https://github.com/noobaa/noobaa-core
        - name: Website
          url: https://www.noobaa.io
        - name: Articles
          url: https://noobaa.desk.com
        maintainers:
        - email: gmargali@redhat.com
          name: Guy Margalit
        - email: etamir@redhat.com
          name: Eran Tamir
        - email: nbecker@redhat.com
          name: Nimrod Becker
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: NooBaa
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/mcg-operator-bundle@sha256:d93a51ca539c50ee69799913548d4e09c930fcef902dac542def357fac2d8afa
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:ac173cc6724b867a5cd2cec68cb3bab81a431ea11fdbb23810426dff5e531b03
        - registry.redhat.io/odf4/mcg-rhel9-operator@sha256:1b5bb3031e350b8bd96029fc46beb17f7f7100f829555cf4017b2cd7a2fcd67f
        - registry.redhat.io/odf4/odf-cloudnative-pg-rhel9-operator@sha256:3436b32c7d5edb418aa36d048193bb92ba0e5899914d04295e5dfbfc7f267db5
        - registry.redhat.io/odf4/odf-cosi-sidecar-rhel9@sha256:da477c2268fbeb1985538cada189981694589bd6f0c653976ab67a6623d8a8aa
        version: 4.19.9-rhodf
      entries:
      - name: mcg-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: mcg-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: mcg-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: mcg-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: mcg-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: mcg-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: mcg-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: mcg-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: mcg-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: mcg-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: mcg-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[{"kind":"NooBaa","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"noobaa","creationTimestamp":null},"spec":{"cleanupPolicy":{},"security":{"kms":{}},"loadBalancerSourceSubnets":{},"autoscaler":{},"bucketLogging":{},"bucketNotifications":{"enabled":false}},"status":{"lastKeyRotateTime":null}},{"kind":"BackingStore","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"type":""},"status":{"mode":{}}},{"kind":"NamespaceStore","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"type":""},"status":{"mode":{}}},{"kind":"BucketClass","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{},"status":{}},{"kind":"NooBaaAccount","apiVersion":"noobaa.io/v1alpha1","metadata":{"name":"default","creationTimestamp":null},"spec":{"allow_bucket_creation":false},"status":{}}]'
          capabilities: Seamless Upgrades
          categories: Storage,Big Data
          certified: "false"
          containerImage: registry.redhat.io/odf4/mcg-rhel9-operator@sha256:2400c5a97946d6d9a057bf14edca386f8bb283adaccfe612c0fb227241699f02
          createdAt: "2019-07-08T13:10:20.940Z"
          description: NooBaa is an object data service for hybrid and multi cloud
            environments.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          olm.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/infrastructure-features: ֿ'["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/operator-type: non-standalone
          repository: https://github.com/noobaa/noobaa-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A NooBaa system - Create this to start
            displayName: NooBaa
            kind: NooBaa
            name: noobaas.noobaa.io
            version: v1alpha1
          - description: Storage target spec such as aws-s3, s3-compatible, ibm-cos,
              PV's and more. Used in BucketClass to construct data placement policies.
            displayName: Backing Store
            kind: BackingStore
            name: backingstores.noobaa.io
            version: v1alpha1
          - description: Storage target spec such as aws-s3, s3-compatible, ibm-cos
              and more. Used in BucketClass to construct namespace policies.
            displayName: Namespace Store
            kind: NamespaceStore
            name: namespacestores.noobaa.io
            version: v1alpha1
          - description: Storage policy spec  tiering, mirroring, spreading, namespace
              policy. Combines BackingStores Or NamespaceStores. Referenced by ObjectBucketClaims.
            displayName: Bucket Class
            kind: BucketClass
            name: bucketclasses.noobaa.io
            version: v1alpha1
          - kind: NooBaaAccount
            name: noobaaaccounts.noobaa.io
            version: v1alpha1
          - description: Claim a bucket just like claiming a PV. Automate you app
              bucket provisioning by creating OBC with your app deployment. A secret
              and configmap (name=claim) will be created with access details for the
              app pods.
            displayName: Object Bucket Claim
            kind: ObjectBucketClaim
            name: objectbucketclaims.objectbucket.io
            version: v1alpha1
          - description: Used under-the-hood. Created per ObjectBucketClaim and keeps
              provisioning information.
            displayName: Object Bucket
            kind: ObjectBucket
            name: objectbuckets.objectbucket.io
            version: v1alpha1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Backup
            kind: Backup
            name: backups.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ClusterImageCatalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Cluster
            kind: Cluster
            name: clusters.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Database
            kind: Database
            name: databases.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: FailoverQuorum
            kind: FailoverQuorum
            name: failoverquorums.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ImageCatalog
            kind: ImageCatalog
            name: imagecatalogs.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Pooler
            kind: Pooler
            name: poolers.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Publication
            kind: Publication
            name: publications.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: ScheduledBackup
            kind: ScheduledBackup
            name: scheduledbackups.postgresql.cnpg.noobaa.io
            version: v1
          - description: This CRD is intended for internal use by Noobaa Operator.
            displayName: Subscription
            kind: Subscription
            name: subscriptions.postgresql.cnpg.noobaa.io
            version: v1
        description: "The noobaa operator creates and reconciles a NooBaa system in
          a Kubernetes/Openshift cluster.\n\nNooBaa provides an S3 object-store service
          abstraction and data placement policies to create hybrid and multi cloud
          data solutions.\n\nFor more information on using NooBaa refer to [Github](https://github.com/noobaa/noobaa-core)
          / [Website](https://www.noobaa.io) / [Articles](https://noobaa.desk.com).
          \n\n## How does it work?\n\n- The operator deploys the noobaa core pod and
          two services - Mgmt (UI/API) and S3 (object-store).\n- Both services require
          credentials which you will get from a secret that the operator creates -
          use describe noobaa to locate it.\n- The service addresses will also appear
          in the describe output - pick the one that is suitable for your client:\n
          \   - minikube - use the NodePort address.\n    - remote cluster - probably
          need one of the External addresses.\n    - connect an application on the
          same cluster - use Internal DNS (though any address should work)\n    \n-
          Feel free to email us or open github issues on any question.\n\n## Getting
          Started\n\n### Notes:\n- The following instructions are for **minikube**
          but it works on any Kubernetes/Openshift clusters.\n- This will setup noobaa
          in the **my-noobaa-operator** namespace.\n- You will need **jq**, **curl**,
          **kubectl** or **oc**, **aws-cli**.\n\n### 1. Install OLM (if you don't
          have it already):\n```\ncurl -sL https://github.com/operator-framework/operator-lifecycle-manager/releases/download/0.12.0/install.sh
          | bash -s 0.12.0\n```\n\n### 2. Install noobaa-operator:\n```\nkubectl create
          -f https://operatorhub.io/install/noobaa-operator.yaml\n```\nWait for it
          to be ready:\n```\nkubectl wait pod -n my-noobaa-operator -l noobaa-operator
          --for=condition=ready\n```\n\n### 3. Create noobaa system:\n```\ncurl -sL
          https://operatorhub.io/api/operator?packageName=noobaa-operator | \n    jq
          '.operator.customResourceDefinitions[0].yamlExample | .metadata.namespace=\"my-noobaa-operator\"'
          |\n    kubectl create -f -\n```\nWait for it to be ready:\n```\nkubectl
          wait pod -n my-noobaa-operator -l noobaa-core --for=condition=ready\nkubectl
          get noobaa -n my-noobaa-operator -w\n# NAME     PHASE   MGMT-ENDPOINTS                  S3-ENDPOINTS
          \                   IMAGE                    AGE\n# noobaa   **Ready**   [https://192.168.64.12:31121]
          \  [https://192.168.64.12:32557]   noobaa/noobaa-core:4.0   19m\n```\n\n###
          4. Get system information to your shell:\n```\nNOOBAA_SECRET=$(kubectl get
          noobaa noobaa -n my-noobaa-operator -o json | jq -r '.status.accounts.admin.secretRef.name'
          )\nNOOBAA_MGMT=$(kubectl get noobaa noobaa -n my-noobaa-operator -o json
          | jq -r '.status.services.serviceMgmt.nodePorts[0]' )\nNOOBAA_S3=$(kubectl
          get noobaa noobaa -n my-noobaa-operator -o json | jq -r '.status.services.serviceS3.nodePorts[0]'
          )\nNOOBAA_ACCESS_KEY=$(kubectl get secret $NOOBAA_SECRET -n my-noobaa-operator
          -o json | jq -r '.data.AWS_ACCESS_KEY_ID|@base64d')\nNOOBAA_SECRET_KEY=$(kubectl
          get secret $NOOBAA_SECRET -n my-noobaa-operator -o json | jq -r '.data.AWS_SECRET_ACCESS_KEY|@base64d')\n```\n\n###
          5. Connect to Mgmt UI:\n```\n# show email/password from the secret:\nkubectl
          get secret $NOOBAA_SECRET -n my-noobaa-operator -o json | jq '.data|map_values(@base64d)'\n\n#
          open mgmt UI login:\nopen $NOOBAA_MGMT\n```\n\n### 6. Connect to S3 with
          aws-cli:\n```\nalias s3='AWS_ACCESS_KEY_ID=$NOOBAA_ACCESS_KEY AWS_SECRET_ACCESS_KEY=$NOOBAA_SECRET_KEY
          aws --endpoint $NOOBAA_S3 --no-verify-ssl s3'\ns3 ls\ns3 sync /var/log/
          s3://first.bucket\ns3 ls s3://first.bucket\n```\n"
        displayName: NooBaa Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - noobaa
        - kubernetes
        - openshift
        - cloud
        - hybrid
        - multi
        - data
        - storage
        - s3
        - tiering
        - mirroring
        links:
        - name: Github
          url: https://github.com/noobaa/noobaa-core
        - name: Website
          url: https://www.noobaa.io
        - name: Articles
          url: https://noobaa.desk.com
        maintainers:
        - email: gmargali@redhat.com
          name: Guy Margalit
        - email: etamir@redhat.com
          name: Eran Tamir
        - email: nbecker@redhat.com
          name: Nimrod Becker
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: NooBaa
        relatedImages:
        - registry.redhat.io/odf4/mcg-core-rhel9@sha256:1e1e53d68779e4575ff7958307c61e1341efffc225ccfdc75c2518e8797f0fd7
        - registry.redhat.io/odf4/mcg-rhel9-operator@sha256:2400c5a97946d6d9a057bf14edca386f8bb283adaccfe612c0fb227241699f02
        - registry.redhat.io/odf4/odf-cloudnative-pg-rhel9-operator@sha256:1769b528ed5ff4fcf2d59318ada4d200d545c0f2633e54708e1251f8ab0f9465
        - registry.redhat.io/odf4/odf-cosi-sidecar-rhel9@sha256:f6f1d8f6d783c81b932280cb8d4923ba4b84aefa748d26351d6392c8673d10ee
        - registry.redhat.io/rhel9/postgresql-16@sha256:34f12364ca2b2b9251cfc87ad626c58e0c368599da5e3723660819c9d4e69322
        - registry.redhat.io/odf4/mcg-operator-bundle@sha256:74e59db870df08fcc30a6869451af3a6f5112777ef25bd7de887984ce015bc5c
        version: 4.20.4-rhodf
      entries:
      - name: mcg-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: mcg-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: mcg-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: mcg-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: mcg-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: mcg-operator
    provider:
      name: NooBaa
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-eks-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-eks-controller.v1.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "eks.services.k8s.aws/v1alpha1",
                "kind": "Addon",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eks.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eks.services.k8s.aws/v1alpha1",
                "kind": "FargateProfile",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "eks.services.k8s.aws/v1alpha1",
                "kind": "Nodegroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/eks-controller:1.11.0
          createdAt: "2025-12-05T02:21:53Z"
          description: AWS EKS controller is a service controller for managing EKS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AccessEntry represents the state of an AWS eks AccessEntry
              resource.
            displayName: AccessEntry
            kind: AccessEntry
            name: accessentries.eks.services.k8s.aws
            version: v1alpha1
          - description: Addon represents the state of an AWS eks Addon resource.
            displayName: Addon
            kind: Addon
            name: addons.eks.services.k8s.aws
            version: v1alpha1
          - description: Capability represents the state of an AWS eks Capability
              resource.
            displayName: Capability
            kind: Capability
            name: capabilities.eks.services.k8s.aws
            version: v1alpha1
          - description: Cluster represents the state of an AWS eks Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.eks.services.k8s.aws
            version: v1alpha1
          - description: FargateProfile represents the state of an AWS eks FargateProfile
              resource.
            displayName: FargateProfile
            kind: FargateProfile
            name: fargateprofiles.eks.services.k8s.aws
            version: v1alpha1
          - description: IdentityProviderConfig represents the state of an AWS eks
              IdentityProviderConfig resource.
            displayName: IdentityProviderConfig
            kind: IdentityProviderConfig
            name: identityproviderconfigs.eks.services.k8s.aws
            version: v1alpha1
          - description: Nodegroup represents the state of an AWS eks Nodegroup resource.
            displayName: Nodegroup
            kind: Nodegroup
            name: nodegroups.eks.services.k8s.aws
            version: v1alpha1
          - description: PodIdentityAssociation represents the state of an AWS eks
              PodIdentityAssociation resource.
            displayName: PodIdentityAssociation
            kind: PodIdentityAssociation
            name: podidentityassociations.eks.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Elastic Kubernetes Service (EKS) resources in AWS from within your Kubernetes cluster.

          **About Amazon EKS**

          Amazon Elastic Kubernetes Service (Amazon EKS) is a managed service that you can use to run Kubernetes on AWS without needing to install, operate, and maintain your own Kubernetes control plane or nodes. Kubernetes is an open-source system for automating the deployment, scaling, and management of containerized applications.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon EKS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eks
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon EKS Developer Resources
          url: https://aws.amazon.com/eks/getting-started/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: eks maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/eks-controller:1.11.0
        - quay.io/community-operator-pipeline-prod/ack-eks-controller@sha256:c05877fc8fa9a3cfbf8790db8e153d69f18627c020b8a0efeaabc6c7ae21d038
        version: 1.11.0
      entries:
      - name: ack-eks-controller.v1.11.0
        version: 1.11.0
      - name: ack-eks-controller.v1.10.0
        version: 1.10.0
      - name: ack-eks-controller.v1.9.4
        version: 1.9.4
      - name: ack-eks-controller.v1.9.3
        version: 1.9.3
      - name: ack-eks-controller.v1.9.2
        version: 1.9.2
      - name: ack-eks-controller.v1.9.1
        version: 1.9.1
      - name: ack-eks-controller.v1.9.0
        version: 1.9.0
      - name: ack-eks-controller.v1.8.0
        version: 1.8.0
      - name: ack-eks-controller.v1.7.6
        version: 1.7.6
      - name: ack-eks-controller.v1.7.5
        version: 1.7.5
      - name: ack-eks-controller.v1.7.4
        version: 1.7.4
      - name: ack-eks-controller.v1.7.3
        version: 1.7.3
      - name: ack-eks-controller.v1.7.2
        version: 1.7.2
      - name: ack-eks-controller.v1.6.4
        version: 1.6.4
      - name: ack-eks-controller.v1.6.3
        version: 1.6.3
      - name: ack-eks-controller.v1.6.2
        version: 1.6.2
      - name: ack-eks-controller.v1.6.1
        version: 1.6.1
      - name: ack-eks-controller.v1.6.0
        version: 1.6.0
      - name: ack-eks-controller.v1.5.5
        version: 1.5.5
      - name: ack-eks-controller.v1.5.4
        version: 1.5.4
      - name: ack-eks-controller.v1.5.3
        version: 1.5.3
      - name: ack-eks-controller.v1.5.2
        version: 1.5.2
      - name: ack-eks-controller.v1.5.1
        version: 1.5.1
      - name: ack-eks-controller.v1.5.0
        version: 1.5.0
      - name: ack-eks-controller.v1.4.7
        version: 1.4.7
      - name: ack-eks-controller.v1.4.6
        version: 1.4.6
      - name: ack-eks-controller.v1.4.5
        version: 1.4.5
      - name: ack-eks-controller.v1.4.4
        version: 1.4.4
      - name: ack-eks-controller.v1.4.3
        version: 1.4.3
      - name: ack-eks-controller.v1.4.2
        version: 1.4.2
      - name: ack-eks-controller.v1.4.1
        version: 1.4.1
      - name: ack-eks-controller.v1.4.0
        version: 1.4.0
      - name: ack-eks-controller.v1.3.5
        version: 1.3.5
      - name: ack-eks-controller.v1.3.3
        version: 1.3.3
      - name: ack-eks-controller.v1.3.1
        version: 1.3.1
      - name: ack-eks-controller.v1.3.0
        version: 1.3.0
      - name: ack-eks-controller.v1.2.3
        version: 1.2.3
      - name: ack-eks-controller.v1.2.2
        version: 1.2.2
      - name: ack-eks-controller.v1.2.1
        version: 1.2.1
      - name: ack-eks-controller.v1.2.0
        version: 1.2.0
      - name: ack-eks-controller.v1.1.3
        version: 1.1.3
      - name: ack-eks-controller.v1.1.2
        version: 1.1.2
      - name: ack-eks-controller.v1.1.1
        version: 1.1.1
      - name: ack-eks-controller.v1.1.0
        version: 1.1.0
      - name: ack-eks-controller.v1.0.5
        version: 1.0.5
      - name: ack-eks-controller.v1.0.4
        version: 1.0.4
      - name: ack-eks-controller.v1.0.3
        version: 1.0.3
      - name: ack-eks-controller.v1.0.2
        version: 1.0.2
      - name: ack-eks-controller.v1.0.1
        version: 1.0.1
      - name: ack-eks-controller.v1.0.0
        version: 1.0.0
      - name: ack-eks-controller.v0.1.9
        version: 0.1.9
      - name: ack-eks-controller.v0.1.8
        version: 0.1.8
      - name: ack-eks-controller.v0.1.7
        version: 0.1.7
      - name: ack-eks-controller.v0.1.6
        version: 0.1.6
      - name: ack-eks-controller.v0.1.5
        version: 0.1.5
      - name: ack-eks-controller.v0.1.4
        version: 0.1.4
      - name: ack-eks-controller.v0.1.3
        version: 0.1.3
      - name: ack-eks-controller.v0.1.2
        version: 0.1.2
      - name: ack-eks-controller.v0.1.1
        version: 0.1.1
      - name: ack-eks-controller.v0.1.0
        version: 0.1.0
      - name: ack-eks-controller.v0.0.15
        version: 0.0.15
      - name: ack-eks-controller.v0.0.14
        version: 0.0.14
      - name: ack-eks-controller.v0.0.13
        version: 0.0.13
      - name: ack-eks-controller.v0.0.12
        version: 0.0.12
      - name: ack-eks-controller.v0.0.11
        version: 0.0.11
      - name: ack-eks-controller.v0.0.10
        version: 0.0.10
      - name: ack-eks-controller.v0.0.9
        version: 0.0.9
      - name: ack-eks-controller.v0.0.8
        version: 0.0.8
      - name: ack-eks-controller.v0.0.7
        version: 0.0.7
      - name: ack-eks-controller.v0.0.6
        version: 0.0.6
      - name: ack-eks-controller.v0.0.5
        version: 0.0.5
      - name: ack-eks-controller.v0.0.4
        version: 0.0.4
      - name: ack-eks-controller.v0.0.3
        version: 0.0.3
      - name: ack-eks-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-eks-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-elbv2-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-elbv2-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "elbv2.services.k8s.aws/v1alpha1",
                "kind": "Listener",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elbv2.services.k8s.aws/v1alpha1",
                "kind": "LoadBalancer",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elbv2.services.k8s.aws/v1alpha1",
                "kind": "Rule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "elbv2.services.k8s.aws/v1alpha1",
                "kind": "TargetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/elbv2-controller:1.2.0
          createdAt: "2025-11-29T05:54:55Z"
          description: AWS ELB controller is a service controller for managing ELB
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Listener represents the state of an AWS elbv2 Listener resource.
            displayName: Listener
            kind: Listener
            name: listeners.elbv2.services.k8s.aws
            version: v1alpha1
          - description: LoadBalancer represents the state of an AWS elbv2 LoadBalancer
              resource.
            displayName: LoadBalancer
            kind: LoadBalancer
            name: loadbalancers.elbv2.services.k8s.aws
            version: v1alpha1
          - description: Rule represents the state of an AWS elbv2 Rule resource.
            displayName: Rule
            kind: Rule
            name: rules.elbv2.services.k8s.aws
            version: v1alpha1
          - description: TargetGroup represents the state of an AWS elbv2 TargetGroup
              resource.
            displayName: TargetGroup
            kind: TargetGroup
            name: targetgroups.elbv2.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Elastic Load Balancing (ELB) resources in AWS from within your Kubernetes cluster.

          **About Amazon ELB**

          Elastic Load Balancing automatically distributes your incoming traffic across multiple targets, such as EC2 instances, containers, and IP addresses, in one or more Availability Zones. It monitors the health of its registered targets, and routes traffic only to the healthy targets. Elastic Load Balancing scales your load balancer capacity automatically in response to changes in incoming traffic.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ELB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - elbv2
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ELB Developer Resources
          url: https://aws.amazon.com/elasticloadbalancing
        maintainers:
        - email: ack-maintainers@amazon.com
          name: elb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/elbv2-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-elbv2-controller@sha256:908d40fc7c406369ca775a432386649fef9d8ffd09576ba0c9dad30ae2846a18
        version: 1.2.0
      entries:
      - name: ack-elbv2-controller.v1.2.0
        version: 1.2.0
      - name: ack-elbv2-controller.v1.1.3
        version: 1.1.3
      - name: ack-elbv2-controller.v1.1.2
        version: 1.1.2
      - name: ack-elbv2-controller.v1.1.1
        version: 1.1.1
      - name: ack-elbv2-controller.v1.1.0
        version: 1.1.0
      - name: ack-elbv2-controller.v1.0.13
        version: 1.0.13
      - name: ack-elbv2-controller.v1.0.12
        version: 1.0.12
      - name: ack-elbv2-controller.v1.0.10
        version: 1.0.10
      - name: ack-elbv2-controller.v1.0.9
        version: 1.0.9
      - name: ack-elbv2-controller.v1.0.8
        version: 1.0.8
      - name: ack-elbv2-controller.v1.0.7
        version: 1.0.7
      - name: ack-elbv2-controller.v1.0.6
        version: 1.0.6
      - name: ack-elbv2-controller.v1.0.5
        version: 1.0.5
      - name: ack-elbv2-controller.v1.0.4
        version: 1.0.4
      - name: ack-elbv2-controller.v1.0.3
        version: 1.0.3
      - name: ack-elbv2-controller.v1.0.2
        version: 1.0.2
      - name: ack-elbv2-controller.v1.0.1
        version: 1.0.1
      - name: ack-elbv2-controller.v1.0.0
        version: 1.0.0
      - name: ack-elbv2-controller.v0.0.11
        version: 0.0.11
      - name: ack-elbv2-controller.v0.0.10
        version: 0.0.10
      - name: ack-elbv2-controller.v0.0.9
        version: 0.0.9
      - name: ack-elbv2-controller.v0.0.8
        version: 0.0.8
      - name: ack-elbv2-controller.v0.0.6
        version: 0.0.6
      - name: ack-elbv2-controller.v0.0.5
        version: 0.0.5
      - name: ack-elbv2-controller.v0.0.4
        version: 0.0.4
      - name: ack-elbv2-controller.v0.0.3
        version: 0.0.3
      - name: ack-elbv2-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-elbv2-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Sonatype
      provider-url: ""
    name: nxiq-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nxiq-operator-certified.v1.197.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonatype.com/v1alpha1",
                "kind": "NexusIQ",
                "metadata": {
                  "name": "example-nexusiq"
                },
                "spec": {
                  "deployment": {
                    "postStart": {
                      "command": null
                    }
                  },
                  "deploymentStrategy": {
                    "type": "Recreate"
                  },
                  "fullnameOverride": "",
                  "imagePullSecrets": [],
                  "ingress": {
                    "annotations": {},
                    "enabled": false,
                    "hosts": [],
                    "path": "/",
                    "tls": []
                  },
                  "iq": {
                    "adminPort": 8071,
                    "applicationPort": 8070,
                    "env": [
                      {
                        "name": "JAVA_OPTS",
                        "value": "-Djava.util.prefs.userRoot=$(SONATYPE_WORK)/javaprefs -Djavax.net.ssl.trustStore=/etc/nexus-iq-server/jks/keystore.jks"
                      }
                    ],
                    "configYaml": {
                      "sonatypeWork": "/sonatype-work",
                      "createSampleData": true,
                      "server": {
                        "adminConnectors": [
                          {
                            "port": 8071,
                            "type": "http"
                          }
                        ],
                        "applicationConnectors": [
                          {
                            "port": 8070,
                            "type": "http"
                          }
                        ],
                        "requestLog": {
                          "appenders": [
                            {
                              "type": "file",
                              "currentLogFilename": "/var/log/nexus-iq-server/request.log",
                              "logFormat": "%clientHost %l %user [%date] \"%requestURL\" %statusCode %bytesSent %elapsedTime \"%header{User-Agent}\"",
                              "archivedLogFilenamePattern": "/var/log/nexus-iq-server/request-%d.log.gz",
                              "archivedFileCount": 50
                            }
                          ]
                        }
                      },
                      "logging": {
                        "level": "DEBUG",
                        "loggers": {
                          "com.sonatype.insight.scan": "INFO",
                          "eu.medsea.mimeutil.MimeUtil2": "INFO",
                          "org.apache.http": "INFO",
                          "org.apache.http.wire": "ERROR",
                          "org.eclipse.birt.report.engine.layout.pdf.font.FontConfigReader": "WARN",
                          "org.eclipse.jetty": "INFO",
                          "org.apache.shiro.web.filter.authc.BasicHttpAuthenticationFilter": "INFO",
                          "com.sonatype.insight.audit": {
                            "appenders": [
                              {
                                "type": "file",
                                "currentLogFilename": "/var/log/nexus-iq-server/audit.log",
                                "archivedLogFilenamePattern": "/var/log/nexus-iq-server/audit-%d.log.gz",
                                "archivedFileCount": 50
                              }
                            ]
                          },
                          "com.sonatype.insight.policy.violation": {
                            "appenders": [
                              {
                                "type": "console",
                                "threshold": "INFO"
                              }
                            ]
                          }
                        },
                        "appenders": [
                          {
                            "type": "console",
                            "threshold": "INFO",
                            "logFormat": "%d{'yyyy-MM-dd HH:mm:ss,SSSZ'} %level [%thread] %X{username} %logger - %msg%n"
                          },
                          {
                            "type": "file",
                            "threshold": "ALL",
                            "logFormat": "%d{'yyyy-MM-dd HH:mm:ss,SSSZ'} %level [%thread] %X{username} %logger - %msg%n",
                            "currentLogFilename": "/var/log/nexus-iq-server/clm-server.log",
                            "archivedLogFilenamePattern": "/var/log/nexus-iq-server/clm-server-%d.log.gz",
                            "archivedFileCount": 50
                          }
                        ]
                      }
                    },
                    "imageName": "registry.connect.redhat.com/sonatype/nexus-iq-server@sha256:b62cf10b73ee069b8c5d166cdb42a7ce08c3410ff7c027b44843840a430b1ca3",
                    "imagePullPolicy": "IfNotPresent",
                    "imagePullSecret": "",
                    "licenseSecret": "",
                    "memory": "1Gi",
                    "name": "nxiq",
                    "certificates": {}
                  },
                  "nameOverride": "",
                  "persistence": {
                    "accessMode": "ReadWriteOnce",
                    "storageSize": "1Gi"
                  },
                  "service": {
                    "annotations": {},
                    "enabled": false,
                    "labels": {},
                    "ports": [
                      {
                        "name": "nexus-service",
                        "port": 80,
                        "targetPort": 80
                      }
                    ]
                  },
                  "serviceAccount": {
                    "create": true,
                    "name": null
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "true"
          containerImage: registry.connect.redhat.com/sonatype/nxiq-operator-certified@sha256:0c302a42c09dc8dfc41f4256eeaa4ee43866c7ac1a28cb4517f06e6b21374c45
          createdAt: "2020-07-20"
          description: |-
            Nexus Lifecycle is an open source governance platform that continuously identifies risk,
            automatically enforces policy, and provides visibility throughout the entire SDLC.
          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.skipRange: <1.197.0-1
          repository: https://github.com/sonatype/operator-iq
          support: Sonatype
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Nexus IQ Server
            displayName: NexusIQ
            kind: NexusIQ
            name: nexusiqs.sonatype.com
            version: v1alpha1
        description: |-
          Nexus Lifecycle is an open source governance platform that continuously identifies risk,
          automatically enforces policy, and provides visibility throughout the entire SDLC.
          Developers leveraging open source require a solution that helps them make safer choices
          while still delivering at DevOps speed.
          Nexus Lifecycle empowers developers and security teams to choose the best components
          and govern open source usage, ensuring organizations continue to innovate with less risk.

          ## Core Capabilities

          * **Dependency Management**:
            Generate a precise software bill of materials for all applications
            to identify open source components and gather contextual direct
            and transitive dependency information for faster action.
          * **One-Click Remediation**:
            Upgrade to the best components and versions based on real-time intelligence.
            Available in your preferred IDE or a GitHub pull request.
          * **Automated Open Source Policy Enforcement**:
            Create custom security, license, and architectural policies based
            on application type or organization and contextually enforce those policies
            across every stage of the SDLC.
          * **Continuous Monitoring**:
            Real-time notifications of newly discovered defects,
            as well as vulnerabilities based on component,
            risk level or application/container affected.

          ## Extras

          * IDE Integrations: Eclipse, IntelliJ, and Visual Studio
          * Source Control Integrations: GitHub, GitLab, and Bitbucket
          * Chrome Browser Extension
          * Red Hat Clair for Container Scanning

          ## Limitations

          This operator will be released on a quarterly basis.

          ## Controlling Automatic vs Manual Update

          If you use the default configuration for the Nexus IQ Operator installation,
          please notice that on any new operator release, the corresponding deployments are
          also updated without user intervention, resulting in unscheduled downtime.

          If you want to avoid this unscheduled downtime, we recommend installing the operator
          into **its own namespace** with **manual approval** for updates.

          ## Usage

          Once the server instance is created by the operator and running,
          you'll want to expose the service as you see fit:
          1. Create a Route to the new service for iq.applicationPort (8070).
          2. Visit the URL provided by the Route, login, and set new credentials.
            The default credentials are `admin`/`admin123`.

          The Nexus IQ Server can be further configured via the NexusIQ custom resource definition:

          | Parameter            | Description                                                  | Default           |
          | -------------------- | ------------------------------------------------------------ | ----------------- |
          | `iq.applicationPort` | Port of the application connector. Must match the value in the `configYaml` property | `8070`            |
          | `iq.adminPort`       | Port of the application connector. Must match the value in the `configYaml` property | `8071`            |
          | `iq.memory`          | The amount of RAM to allocate                                | `1Gi`             |
          | `iq.env`             | Customize the server environment, including `JAVA_OPTS`      | See example YAML show when ceating a NexusIQ. |
          | `iq.licenseSecret`   | The base-64 encoded license file to be installed at startup  | `""`              |
          | `iq.configYaml`      | A YAML block which will be used as a configuration block for IQ Server. | See example YAML shown when creating a NexusIQ. |
          | `iq.certificates`   | Add your own certificates for your own trusted Certificate Authorities with names and plain armored text. | `{}` |
          | `ingress.enabled`                           | Create an ingress for Nexus         | `true`                                  |
          | `ingress.annotations`                       | Annotations to enhance ingress configuration  | `{}`                          |
          | `ingress.tls.enabled`                       | Enable TLS                          | `true`                                 |
          | `ingress.tls.secretName`                    | Name of the secret storing TLS cert, `false` to use the Ingress' default certificate | `nexus-tls`                             |
          | `ingress.path`                              | Path for ingress rules. GCP users should set to `/*` | `/`                    |
          | `deploymentStrategy.type`                   | Deployment Strategy                 |  `Recreate` |
          | `initContainers`                            | Containers to run before starting the server | `nil` |
          | `deployment.postStart.command`              | Command to run after starting the IQ Server container  | `nil`                    |
          | `deployment.terminationGracePeriodSeconds` | Time to allow for clean shutdown                        | 120                      |
          | `persistence.storageClass` | The provisioner class                        | `-` (disables dynamic provisioning)            |
          | `persistence.storageSize` | The amount of drive space to allocate                        | `1Gi`             |
          | `persistence.accessMode` | Default access mode                        | `ReadWriteOnce`             |
          | `persistence.volumeConfiguration` | A YAML block to configure the persistent volume type. Defaults to `hostPath` which should not be used in production | `hostPath`             |

          ## Configuring IQ Server

          You can define the `config.yml` for IQ Server in your CRD on startup.
          It is the `iq.configYaml` property. For more details, see the [Configuring IQ Server](https://help.sonatype.com/iqserver/configuring) help page.

          ## Installing the License

          The license file can be installed via the UI when IQ server is running, or it can be done as a part of the deploy.
          If you leave the `licenseFile` field empty/commented, IQ Server will start and prompt you to manually install the license
          when you first enter the GUI.

          ### Installing the License Automatically
          To do it automatically, first encode your `.lic` file in Base 64 with no line breaks, eg:

          ```bash
          base64 --wrap=0 mylicense.lic > lic.base64
          ```

          Then add this value to your CRD file as `iq.licenseSecret`, eg:

          ```yaml
          iq:
            licenseSecret: bXkgc2FtcGxlIGxpY2Vuc2U=
          ```

          Specify the `licenseFile` path in `iq.configYaml` as:

          ```yaml
          iq:
            configYaml:
              sonatypeWork: /sonatype-work
              createSampleData: true
              # add this line and the `licenseSecret` above to autoconfigure licensing
              licenseFile: /etc/nexus-iq-license/license_lic
              server:
                applicationConnectors:
                  - type: http
                    port: 8070
                adminConnectors:
                  - type: http
                    port: 8071
          ```

          ## Adding Certificates for Your Own Trusted Certificate Authorities

          Specify a set of certificates to be imported into the Java trust store
          of the running IQ Server. More than one certificate can be provided.

          ```yaml
          iq:
            certificates:
              my-company-cert: |
                -----BEGIN CERTIFICATE-----
                ...
                -----END CERTIFICATE-----
          ```

          ## Running Commands Before Initialization of the Server

          If you need custom initialization, you can use standard Kubernetes
          [`initContainers`](https://kubernetes.io/docs/concepts/workloads/pods/init-containers/)
          to run any series of containers and commands you need.

          ```yaml
          initContainers:
            - name: an-init-container
              image: busybox:1.28
              command: ['/bin/sh', '-c', 'echo "initializing"']
          ```
        displayName: Nexus IQ Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - sonatype
        - licensing
        - policy
        - components
        links:
        - name: Nexus Lifecycle
          url: https://www.sonatype.com/product-nexus-lifecycle
        maintainers:
        - email: support@sonaype.com
          name: Sonatype
        maturity: stable
        provider:
          name: Sonatype
        relatedImages:
        - registry.connect.redhat.com/sonatype/nexus-iq-server@sha256:b62cf10b73ee069b8c5d166cdb42a7ce08c3410ff7c027b44843840a430b1ca3
        - registry.connect.redhat.com/sonatype/nxiq-operator-bundle@sha256:3240bf7c3b0441192ed5cbd3cc5715e6e76605f4f42176876421daa008b5044f
        - registry.connect.redhat.com/sonatype/nxiq-operator-certified@sha256:0c302a42c09dc8dfc41f4256eeaa4ee43866c7ac1a28cb4517f06e6b21374c45
        version: 1.197.0-1
      entries:
      - name: nxiq-operator-certified.v1.197.0-1
        version: 1.197.0-1
      name: stable
    defaultChannel: stable
    packageName: nxiq-operator-certified
    provider:
      name: Sonatype
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Confluent, Inc.
      provider-url: https://confluent.io
    name: confluent-for-kubernetes
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: confluent-for-kubernetes.v3.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "CMFRestClass",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "cmfrestclass-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": null
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ClusterLink",
                "metadata": {
                  "name": "clusterlink-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "aclFilters": [
                    {
                      "accessFilter": {
                        "host": "example.com",
                        "operation": "read",
                        "permissionType": "allow",
                        "principal": "User:Bob"
                      },
                      "resourceFilter": {
                        "name": "coffee",
                        "patternType": "prefixed",
                        "resourceType": "topic"
                      }
                    }
                  ],
                  "configs": {
                    "connections.max.idle.ms": "620000"
                  },
                  "consumerGroupFilters": [
                    {
                      "filterType": "INCLUDE",
                      "name": "filter-example",
                      "patternType": "LITERAL"
                    }
                  ],
                  "destinationKafkaCluster": {
                    "kafkaRestClassRef": {
                      "name": "krc-example"
                    }
                  },
                  "sourceKafkaCluster": {
                    "bootstrapEndpoint": "example.com:9092",
                    "clusterID": "test_kafka_cluster_id"
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ConfluentRolebinding",
                "metadata": {
                  "name": "cfrb-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "clustersScopeByIds": {
                    "schemaRegistryClusterId": "id_schemaregistry_confluent"
                  },
                  "kafkaRestClassRef": {
                    "name": "default"
                  },
                  "principal": {
                    "name": "user-example",
                    "type": "user"
                  },
                  "role": "SecurityAdmin"
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Connect",
                "metadata": {
                  "name": "connect-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "connect-basic-example"
                    },
                    "type": "basic"
                  },
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-server-connect:8.0.3",
                    "init": "confluentinc/confluent-init-container-operator"
                  },
                  "replicas": 2,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Connector",
                "metadata": {
                  "name": "connector-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSinkConnector",
                  "configs": {
                    "file": "/tmp/test.txt",
                    "topics": "test-topic"
                  },
                  "connectClusterRef": {
                    "name": "connect",
                    "namespace": "confluent"
                  },
                  "connectRest": {
                    "authentication": {
                      "secretRef": "basic-credential-example",
                      "type": "basic"
                    }
                  },
                  "restartPolicy": {
                    "maxRetry": 20,
                    "type": "OnFailure"
                  },
                  "taskMax": 4
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ControlCenter",
                "metadata": {
                  "name": "controlcenter-ng-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "controlcenter-basic-example"
                    },
                    "type": "basic"
                  },
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "alertManagerClient": {
                      "url": "http://controlcenter-next-gen.confluent.svc.cluster.local:9093"
                    },
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071"
                    },
                    "prometheusClient": {
                      "url": "http://controlcenter-next-gen.confluent.svc.cluster.local:9090"
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-enterprise-control-center-next-gen:2.2.0",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "replicas": 1,
                  "services": {
                    "alertmanager": {
                      "image": "confluentinc/cp-enterprise-alertmanager:2.2.0"
                    },
                    "prometheus": {
                      "image": "confluentinc/cp-enterprise-prometheus:2.2.0",
                      "pvc": {
                        "dataVolumeCapacity": "10Gi"
                      }
                    }
                  },
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "FlinkApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "flinkapplication-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": null
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "FlinkEnvironment",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "flinkenvironment-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": null
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KRaftController",
                "metadata": {
                  "name": "kraftcontroller-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10G",
                  "image": {
                    "application": "confluentinc/cp-server:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "listeners": {
                    "controller": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential"
                        },
                        "type": "plain"
                      },
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KRaftMigrationJob",
                "metadata": {
                  "name": "kraft-migration-job",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kRaftController": {
                      "name": "kraftcontroller",
                      "namespace": "confluent"
                    },
                    "kafka": {
                      "name": "kafka",
                      "namespace": "confluent"
                    },
                    "zookeeper": {
                      "name": "zookeeper",
                      "namespace": "confluent"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Kafka",
                "metadata": {
                  "name": "kafka-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "zookeeper": {
                      "endpoint": "zookeeper.confluent.svc.cluster.local:2181"
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-server:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "listeners": {
                    "internal": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaRestClass",
                "metadata": {
                  "name": "krc-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "kafkaClusterRef": {
                    "name": "kafka",
                    "namespace": "confluent"
                  },
                  "kafkaRest": {
                    "authentication": {
                      "bearer": {
                        "secretRef": "rest-credential-example"
                      },
                      "type": "bearer"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaRestProxy",
                "metadata": {
                  "name": "krp-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-kafka-rest:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "topic-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "configs": {
                    "cleanup.policy": "compact"
                  },
                  "kafkaClusterRef": {
                    "name": "kafka",
                    "namespace": "confluent"
                  },
                  "partitionCount": 12,
                  "replicas": 1
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KsqlDB",
                "metadata": {
                  "name": "ksqldb-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "ksqldb-basic-example"
                    },
                    "type": "basic"
                  },
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-ksqldb-server:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "replicas": 2,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Schema",
                "metadata": {
                  "name": "schema-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "data": {
                    "configRef": "schema-config",
                    "format": "avro"
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "SchemaExporter",
                "metadata": {
                  "name": "schemaexporter-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "contextName": "mycustom",
                  "destinationCluster": {
                    "schemaRegistryClusterRef": {
                      "name": "schemaregistry",
                      "namespace": "destination"
                    }
                  },
                  "sourceCluster": {
                    "schemaRegistryClusterRef": {
                      "name": "schemaregistry",
                      "namespace": "source"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "SchemaRegistry",
                "metadata": {
                  "name": "schemaregistry-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-schema-registry:8.0.3",
                    "init": "confluentinc/confluent-init-container:3.0.2"
                  },
                  "replicas": 1,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Streaming & Messaging
          containerImage: docker.io/confluentinc/confluent-operator@sha256:fedcd7decc5cccca5454feb56edc9e28323d2696a6215faa755cd9e0565b204e
          createdAt: "2025-12-09T10:17:15Z"
          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: "true"
          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.skipRange: '>=2.11.0 <3.0.0'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Confluent Platform License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Confluent, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterLink is the schema for the ClusterLink API.
            displayName: Cluster Link
            kind: ClusterLink
            name: clusterlinks.platform.confluent.io
            version: v1beta1
          - description: CMFRestClass is the Schema for the cmfrestclasses API
            displayName: CMFRest Class
            kind: CMFRestClass
            name: cmfrestclasses.platform.confluent.io
            version: v1beta1
          - description: ConfluentRolebinding is the schema for the ConfluentRolebinding
              API.
            displayName: Confluent Rolebinding
            kind: ConfluentRolebinding
            name: confluentrolebindings.platform.confluent.io
            version: v1beta1
          - description: Connector is the schema for the Connector API.
            displayName: Connector
            kind: Connector
            name: connectors.platform.confluent.io
            version: v1beta1
          - description: Connect is the schema for the Connect API.
            displayName: Connect
            kind: Connect
            name: connects.platform.confluent.io
            version: v1beta1
          - description: ControlCenter is the schema for the Control Center API.
            displayName: Control Center
            kind: ControlCenter
            name: controlcenters.platform.confluent.io
            version: v1beta1
          - description: FlinkApplication is the Schema for the flinkapplications
              API
            displayName: Flink Application
            kind: FlinkApplication
            name: flinkapplications.platform.confluent.io
            version: v1beta1
          - description: FlinkEnvironment is the Schema for the flinkenvironments
              API
            displayName: Flink Environment
            kind: FlinkEnvironment
            name: flinkenvironments.platform.confluent.io
            version: v1beta1
          - description: KafkaRestClass is the schema for the Kafka REST API.
            displayName: Kafka Rest Class
            kind: KafkaRestClass
            name: kafkarestclasses.platform.confluent.io
            version: v1beta1
          - description: KafkaRestProxy is the schema for the Kafka REST Proxy API.
            displayName: Kafka Rest Proxy
            kind: KafkaRestProxy
            name: kafkarestproxies.platform.confluent.io
            version: v1beta1
          - description: Kafka is the schema for the Kafka API.
            displayName: Kafka
            kind: Kafka
            name: kafkas.platform.confluent.io
            version: v1beta1
          - description: KafkaTopic is the schema for the Kafka Topic API.
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.platform.confluent.io
            version: v1beta1
          - description: KRaftController is the schema for the KRaft Controller API.
            displayName: KRaft Controller
            kind: KRaftController
            name: kraftcontrollers.platform.confluent.io
            version: v1beta1
          - description: KRaftMigrationJob is the schema for the KRaftMigrationJob
              API.
            displayName: KRaft Migration Job
            kind: KRaftMigrationJob
            name: kraftmigrationjobs.platform.confluent.io
            version: v1beta1
          - description: KsqlDB is the schema for the ksqlDB API.
            displayName: Ksql DB
            kind: KsqlDB
            name: ksqldbs.platform.confluent.io
            version: v1beta1
          - description: SchemaExporter is the schema for the SchemaExporter API.
            displayName: Schema Exporter
            kind: SchemaExporter
            name: schemaexporters.platform.confluent.io
            version: v1beta1
          - description: SchemaRegistry is the schema for the Schema Registry API.
            displayName: Schema Registry
            kind: SchemaRegistry
            name: schemaregistries.platform.confluent.io
            version: v1beta1
          - displayName: Schema
            kind: Schema
            name: schemas.platform.confluent.io
            version: v1beta1
          - description: Zookeeper is the schema for the Zookeeper API.
            displayName: Zookeeper
            kind: Zookeeper
            name: zookeepers.platform.confluent.io
            version: v1beta1
        description: Confluent for Kubernetes (CFK) is a cloud-native control plane
          for deploying and managing Confluent in your private cloud environment.
          It provides standard and simple interface to customize, deploy, and manage
          Confluent Platform through declarative API.Confluent for Kubernetes runs
          on Kubernetes, the runtime for private cloud architectures.
        displayName: Confluent for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Confluent
        - Kafka
        - Kubernetes
        - Private Cloud
        - Cloud-Native
        - Event Streaming
        - Data in Motion
        links:
        - name: Documentation
          url: https://docs.confluent.io/operator/current/overview.html
        - name: Examples and Tutorials
          url: https://github.com/confluentinc/confluent-kubernetes-examples
        - name: Product Overview (Blog)
          url: https://www.confluent.io/blog/confluent-for-kubernetes-offers-cloud-native-kafka-automation/
        maintainers:
        - email: confluent-private-cloud-team@confluent.io
          name: Confluent Private Cloud team
        maturity: stable
        provider:
          name: Confluent, Inc.
          url: https://confluent.io
        relatedImages:
        - docker.io/confluentinc/cp-server@sha256:4f1437345c62a9968d734310ac46e6cc2f2a2d999d2fe92eaaa22f85866729d6
        - docker.io/confluentinc/confluent-init-container@sha256:f63b312bad0428928f60b65d0b8017c35ebc500b85afaf62437f4073184e3e91
        - registry.connect.redhat.com/confluentinc/confluent-for-kubernetes-v2@sha256:cc7bf94454d98bdb7425508d2e11056fb8c8cd2c2c3a5a38678d941fe2c2e388
        - confluentinc/confluent-operator@sha256:fedcd7decc5cccca5454feb56edc9e28323d2696a6215faa755cd9e0565b204e
        - docker.io/confluentinc/cp-enterprise-control-center-next-gen@sha256:6378a0174433685ee52a7fe2e48424d3f598827ed2a5570ec74b916102485e0d
        - docker.io/confluentinc/cp-enterprise-prometheus@sha256:db0989ef9859dbc88bc59f9b8ade86f2ba13e9dc36533e654566218328e5ff57
        - docker.io/confluentinc/cp-kafka-rest@sha256:7d3e6f31bfa187058a01cb93bc5225755cd9f10d3ef4926e73a391178747594c
        - docker.io/confluentinc/cp-ksqldb-server@sha256:fadc1ff1f88a4cd81cce912be414ead7c53d8a2d8a526f68e431e09f534afee0
        - docker.io/confluentinc/cp-schema-registry@sha256:c05a05ceb4e2ac9c55231f66597d2d679b57002a9b38617e7cbcce8e64ffac09
        - docker.io/confluentinc/confluent-operator@sha256:fedcd7decc5cccca5454feb56edc9e28323d2696a6215faa755cd9e0565b204e
        - docker.io/confluentinc/cp-enterprise-alertmanager@sha256:fcce6f5311c26cd58427a039530a9f8dfd009249ff5a519694aa945d34502252
        - docker.io/confluentinc/cp-server-connect@sha256:3a3c99ee71de410299d81ed1fa580ab64c73e3660dbd5fe9e2a02275bbc58a7a
        version: 3.0.2
      entries:
      - name: confluent-for-kubernetes.v3.0.2
        version: 3.0.2
      name: "3.0"
    - currentCSV: confluent-for-kubernetes.v3.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "CMFRestClass",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "cmfrestclass-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": null
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ClusterLink",
                "metadata": {
                  "name": "clusterlink-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "aclFilters": [
                    {
                      "accessFilter": {
                        "host": "example.com",
                        "operation": "read",
                        "permissionType": "allow",
                        "principal": "User:Bob"
                      },
                      "resourceFilter": {
                        "name": "coffee",
                        "patternType": "prefixed",
                        "resourceType": "topic"
                      }
                    }
                  ],
                  "configs": {
                    "connections.max.idle.ms": "620000"
                  },
                  "consumerGroupFilters": [
                    {
                      "filterType": "INCLUDE",
                      "name": "filter-example",
                      "patternType": "LITERAL"
                    }
                  ],
                  "destinationKafkaCluster": {
                    "kafkaRestClassRef": {
                      "name": "krc-example"
                    }
                  },
                  "sourceKafkaCluster": {
                    "bootstrapEndpoint": "example.com:9092",
                    "clusterID": "test_kafka_cluster_id"
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ConfluentRolebinding",
                "metadata": {
                  "name": "cfrb-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "clustersScopeByIds": {
                    "schemaRegistryClusterId": "id_schemaregistry_confluent"
                  },
                  "kafkaRestClassRef": {
                    "name": "default"
                  },
                  "principal": {
                    "name": "user-example",
                    "type": "user"
                  },
                  "role": "SecurityAdmin"
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Connect",
                "metadata": {
                  "name": "connect-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "connect-basic-example"
                    },
                    "type": "basic"
                  },
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-server-connect:8.1.1",
                    "init": "confluentinc/confluent-init-container-operator"
                  },
                  "replicas": 2,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Connector",
                "metadata": {
                  "name": "connector-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "class": "org.apache.kafka.connect.file.FileStreamSinkConnector",
                  "configs": {
                    "file": "/tmp/test.txt",
                    "topics": "test-topic"
                  },
                  "connectClusterRef": {
                    "name": "connect",
                    "namespace": "confluent"
                  },
                  "connectRest": {
                    "authentication": {
                      "secretRef": "basic-credential-example",
                      "type": "basic"
                    }
                  },
                  "restartPolicy": {
                    "maxRetry": 20,
                    "type": "OnFailure"
                  },
                  "taskMax": 4
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "ControlCenter",
                "metadata": {
                  "name": "controlcenter-ng-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "controlcenter-basic-example"
                    },
                    "type": "basic"
                  },
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "alertManagerClient": {
                      "url": "http://controlcenter-next-gen.confluent.svc.cluster.local:9093"
                    },
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071"
                    },
                    "prometheusClient": {
                      "url": "http://controlcenter-next-gen.confluent.svc.cluster.local:9090"
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-enterprise-control-center-next-gen:2.2.0",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 1,
                  "services": {
                    "alertmanager": {
                      "image": "confluentinc/cp-enterprise-alertmanager:2.2.0"
                    },
                    "prometheus": {
                      "image": "confluentinc/cp-enterprise-prometheus:2.2.0",
                      "pvc": {
                        "dataVolumeCapacity": "10Gi"
                      }
                    }
                  },
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "FlinkApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "flinkapplication-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "cmfRestClassRef": {
                    "name": "default",
                    "namespace": "operator"
                  },
                  "flinkConfiguration": {
                    "metrics.reporter.prom.factory.class": "org.apache.flink.metrics.prometheus.PrometheusReporterFactory",
                    "metrics.reporter.prom.port": "9249-9250",
                    "rest.profiling.enabled": "true",
                    "taskmanager.numberOfTaskSlots": "2"
                  },
                  "flinkEnvironment": "flinkenvironment-sample",
                  "flinkVersion": "v1_19",
                  "image": "confluentinc/cp-flink:1.19.1-cp1",
                  "job": {
                    "jarURI": "local:///opt/flink/examples/streaming/StateMachineExample.jar",
                    "parallelism": 3,
                    "state": "running",
                    "upgradeMode": "stateless"
                  },
                  "jobManager": {
                    "resource": {
                      "cpu": 1,
                      "memory": "1048m"
                    }
                  },
                  "serviceAccount": "flink",
                  "taskManager": {
                    "resource": {
                      "cpu": 1,
                      "memory": "1048m"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "FlinkEnvironment",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "flinkenvironment-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "cmfRestClassRef": {
                    "name": "default",
                    "namespace": "operator"
                  },
                  "flinkApplicationDefaults": {
                    "metadata": {
                      "annotations": {
                        "fmc.platform.confluent.io/intra-cluster-ssl": "false"
                      }
                    },
                    "spec": {
                      "flinkConfiguration": {
                        "taskmanager.numberOfTaskSlots": "2"
                      }
                    }
                  },
                  "kubernetesNamespace": "default"
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Gateway",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "confluent-gateway",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "image": {
                    "application": "confluentinc/cpc-gateway:1.0.0",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 3,
                  "routes": [
                    {
                      "brokerIdentificationStrategy": {
                        "pattern": "broker{nodeId}.gw.mycompany.com:9092",
                        "type": "host"
                      },
                      "endpoint": "payments_authorization.gw.mycompany.com:9092",
                      "name": "payments_authorization",
                      "security": {
                        "auth": "passthrough",
                        "client": {
                          "tls": {
                            "secretRef": "tls-certs"
                          }
                        }
                      },
                      "streamingDomain": {
                        "bootstrapServerId": "payments_SASL_SSL",
                        "name": "payments"
                      }
                    },
                    {
                      "brokerIdentificationStrategy": {
                        "type": "port"
                      },
                      "endpoint": "orders_notification.gw.mycompany.com:9092",
                      "name": "orders_notification",
                      "security": {
                        "auth": "passthrough"
                      },
                      "streamingDomain": {
                        "bootstrapServerId": "orders_SASL_PLAINTEXT",
                        "name": "orders"
                      }
                    }
                  ],
                  "streamingDomains": [
                    {
                      "kafkaCluster": {
                        "bootstrapServers": [
                          {
                            "endpoint": "SASL_SSL://payments-kafka0.mycompany.com:9092",
                            "id": "payments_SASL_SSL",
                            "tls": {
                              "secretRef": "tls-certs-1"
                            }
                          }
                        ]
                      },
                      "name": "payments",
                      "type": "kafka"
                    },
                    {
                      "kafkaCluster": {
                        "bootstrapServers": [
                          {
                            "endpoint": "SASL_PLAINTEXT://orders-kafka0.mycompany.com:9090",
                            "id": "orders_SASL_PLAINTEXT"
                          }
                        ],
                        "nodeIdRanges": [
                          {
                            "end": 2,
                            "name": "pool-1",
                            "start": 0
                          },
                          {
                            "end": 7,
                            "name": "pool-2",
                            "start": 5
                          }
                        ]
                      },
                      "name": "orders",
                      "type": "kafka"
                    }
                  ]
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KRaftController",
                "metadata": {
                  "name": "kraftcontroller-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10G",
                  "image": {
                    "application": "confluentinc/cp-server:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "listeners": {
                    "controller": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential"
                        },
                        "type": "plain"
                      },
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KRaftMigrationJob",
                "metadata": {
                  "name": "kraft-migration-job",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kRaftController": {
                      "name": "kraftcontroller",
                      "namespace": "confluent"
                    },
                    "kafka": {
                      "name": "kafka",
                      "namespace": "confluent"
                    },
                    "zookeeper": {
                      "name": "zookeeper",
                      "namespace": "confluent"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Kafka",
                "metadata": {
                  "name": "kafka-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "zookeeper": {
                      "endpoint": "zookeeper.confluent.svc.cluster.local:2181"
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-server:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "listeners": {
                    "internal": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaRestClass",
                "metadata": {
                  "name": "krc-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "kafkaClusterRef": {
                    "name": "kafka",
                    "namespace": "confluent"
                  },
                  "kafkaRest": {
                    "authentication": {
                      "bearer": {
                        "secretRef": "rest-credential-example"
                      },
                      "type": "bearer"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaRestProxy",
                "metadata": {
                  "name": "krp-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-kafka-rest:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 3,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KafkaTopic",
                "metadata": {
                  "name": "topic-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "configs": {
                    "cleanup.policy": "compact"
                  },
                  "kafkaClusterRef": {
                    "name": "kafka",
                    "namespace": "confluent"
                  },
                  "partitionCount": 12,
                  "replicas": 1
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "KsqlDB",
                "metadata": {
                  "name": "ksqldb-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "ksqldb-basic-example"
                    },
                    "type": "basic"
                  },
                  "dataVolumeCapacity": "10Gi",
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-ksqldb-server:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 2,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Schema",
                "metadata": {
                  "name": "schema-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "data": {
                    "configRef": "schema-config",
                    "format": "avro"
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "SchemaExporter",
                "metadata": {
                  "name": "schemaexporter-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "contextName": "mycustom",
                  "destinationCluster": {
                    "schemaRegistryClusterRef": {
                      "name": "schemaregistry",
                      "namespace": "destination"
                    }
                  },
                  "sourceCluster": {
                    "schemaRegistryClusterRef": {
                      "name": "schemaregistry",
                      "namespace": "source"
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "SchemaRegistry",
                "metadata": {
                  "name": "schemaregistry-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dependencies": {
                    "kafka": {
                      "authentication": {
                        "jaasConfig": {
                          "secretRef": "credential-example"
                        },
                        "type": "plain"
                      },
                      "bootstrapEndpoint": "kafka.confluent.svc.cluster.local:9071",
                      "tls": {
                        "enabled": true
                      }
                    }
                  },
                  "image": {
                    "application": "confluentinc/cp-schema-registry:8.1.1",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 1,
                  "tls": {
                    "autoGeneratedCerts": true
                  }
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "USMAgent",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "confluent-for-kubernetes"
                  },
                  "name": "usmagent-sample",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "authentication": {
                    "basic": {
                      "secretRef": "credential"
                    },
                    "type": "basic"
                  },
                  "confluentCloudClient": {
                    "authentication": {
                      "basic": {
                        "secretRef": "ccloud-credential"
                      },
                      "type": "basic"
                    },
                    "endpoint": "\u003cfrontdoor_url\u003e",
                    "environmentId": "\u003cenv_id\u003e"
                  },
                  "image": {
                    "application": "confluentinc/cp-usm-agent:1.0.0",
                    "init": "confluentinc/confluent-init-container:3.1.1"
                  },
                  "replicas": 1
                }
              },
              {
                "apiVersion": "platform.confluent.io/v1beta1",
                "kind": "Zookeeper",
                "metadata": {
                  "name": "zookeeper-example",
                  "namespace": "confluent-operator-system"
                },
                "spec": {
                  "dataVolumeCapacity": "10Gi",
                  "image": {
                    "application": "confluentinc/cp-zookeeper",
                    "init": "confluentinc/confluent-init-container"
                  },
                  "logVolumeCapacity": "10Gi",
                  "replicas": 3
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Streaming & Messaging
          containerImage: docker.io/confluentinc/confluent-operator@sha256:c430b476e80e29fce6f3c2827fee1e28ba7aadeca903815c4329af984ff18b8f
          createdAt: "2025-12-09T11:48:55Z"
          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: "true"
          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.skipRange: '>=3.0.0 <3.1.0'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Confluent Platform License"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Confluent, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterLink is the schema for the ClusterLink API.
            displayName: Cluster Link
            kind: ClusterLink
            name: clusterlinks.platform.confluent.io
            version: v1beta1
          - description: CMFRestClass is the Schema for the cmfrestclasses API
            displayName: CMFRest Class
            kind: CMFRestClass
            name: cmfrestclasses.platform.confluent.io
            version: v1beta1
          - description: ConfluentRolebinding is the schema for the ConfluentRolebinding
              API.
            displayName: Confluent Rolebinding
            kind: ConfluentRolebinding
            name: confluentrolebindings.platform.confluent.io
            version: v1beta1
          - description: Connector is the schema for the Connector API.
            displayName: Connector
            kind: Connector
            name: connectors.platform.confluent.io
            version: v1beta1
          - description: Connect is the schema for the Connect API.
            displayName: Connect
            kind: Connect
            name: connects.platform.confluent.io
            version: v1beta1
          - description: ControlCenter is the schema for the Control Center API.
            displayName: Control Center
            kind: ControlCenter
            name: controlcenters.platform.confluent.io
            version: v1beta1
          - description: FlinkApplication is the Schema for the flinkapplications
              API
            displayName: Flink Application
            kind: FlinkApplication
            name: flinkapplications.platform.confluent.io
            version: v1beta1
          - description: FlinkEnvironment is the Schema for the flinkenvironments
              API
            displayName: Flink Environment
            kind: FlinkEnvironment
            name: flinkenvironments.platform.confluent.io
            version: v1beta1
          - description: Gateway is the Schema for the gateways API
            displayName: Gateway
            kind: Gateway
            name: gateways.platform.confluent.io
            version: v1beta1
          - description: KafkaRestClass is the schema for the Kafka REST API.
            displayName: Kafka Rest Class
            kind: KafkaRestClass
            name: kafkarestclasses.platform.confluent.io
            version: v1beta1
          - description: KafkaRestProxy is the schema for the Kafka REST Proxy API.
            displayName: Kafka Rest Proxy
            kind: KafkaRestProxy
            name: kafkarestproxies.platform.confluent.io
            version: v1beta1
          - description: Kafka is the schema for the Kafka API.
            displayName: Kafka
            kind: Kafka
            name: kafkas.platform.confluent.io
            version: v1beta1
          - description: KafkaTopic is the schema for the Kafka Topic API.
            displayName: Kafka Topic
            kind: KafkaTopic
            name: kafkatopics.platform.confluent.io
            version: v1beta1
          - description: KRaftController is the schema for the KRaft Controller API.
            displayName: KRaft Controller
            kind: KRaftController
            name: kraftcontrollers.platform.confluent.io
            version: v1beta1
          - description: KRaftMigrationJob is the schema for the KRaftMigrationJob
              API.
            displayName: KRaft Migration Job
            kind: KRaftMigrationJob
            name: kraftmigrationjobs.platform.confluent.io
            version: v1beta1
          - description: KsqlDB is the schema for the ksqlDB API.
            displayName: Ksql DB
            kind: KsqlDB
            name: ksqldbs.platform.confluent.io
            version: v1beta1
          - description: SchemaExporter is the schema for the SchemaExporter API.
            displayName: Schema Exporter
            kind: SchemaExporter
            name: schemaexporters.platform.confluent.io
            version: v1beta1
          - kind: SchemaImporter
            name: schemaimporters.platform.confluent.io
            version: v1beta1
          - description: SchemaRegistry is the schema for the Schema Registry API.
            displayName: Schema Registry
            kind: SchemaRegistry
            name: schemaregistries.platform.confluent.io
            version: v1beta1
          - displayName: Schema
            kind: Schema
            name: schemas.platform.confluent.io
            version: v1beta1
          - description: USMAgent is the Schema for the usmagents API
            displayName: USMAgent
            kind: USMAgent
            name: usmagents.platform.confluent.io
            version: v1beta1
          - description: Zookeeper is the schema for the Zookeeper API.
            displayName: Zookeeper
            kind: Zookeeper
            name: zookeepers.platform.confluent.io
            version: v1beta1
        description: Confluent for Kubernetes (CFK) is a cloud-native control plane
          for deploying and managing Confluent in your private cloud environment.
          It provides standard and simple interface to customize, deploy, and manage
          Confluent Platform through declarative API.Confluent for Kubernetes runs
          on Kubernetes, the runtime for private cloud architectures.
        displayName: Confluent for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Confluent
        - Kafka
        - Kubernetes
        - Private Cloud
        - Cloud-Native
        - Event Streaming
        - Data in Motion
        links:
        - name: Documentation
          url: https://docs.confluent.io/operator/current/overview.html
        - name: Examples and Tutorials
          url: https://github.com/confluentinc/confluent-kubernetes-examples
        - name: Product Overview (Blog)
          url: https://www.confluent.io/blog/confluent-for-kubernetes-offers-cloud-native-kafka-automation/
        maintainers:
        - email: confluent-private-cloud-team@confluent.io
          name: Confluent Private Cloud team
        maturity: stable
        provider:
          name: Confluent, Inc.
          url: https://confluent.io
        relatedImages:
        - docker.io/confluentinc/cp-enterprise-control-center-next-gen@sha256:6378a0174433685ee52a7fe2e48424d3f598827ed2a5570ec74b916102485e0d
        - docker.io/confluentinc/cp-usm-agent@sha256:28cb42bc59ae9d584059bd8b958dd62d5ad99aa8fc0ee36560d6fd3e129f631b
        - docker.io/confluentinc/cp-enterprise-alertmanager@sha256:fcce6f5311c26cd58427a039530a9f8dfd009249ff5a519694aa945d34502252
        - docker.io/confluentinc/cp-ksqldb-server@sha256:eb86c4eef5b7b9b52ca2e6424d20c5df004e9f9ccced4186621ef8b5a5eaf03e
        - docker.io/confluentinc/cp-server-connect@sha256:ae35ba598decf8e996d522899919a2cdf5d3a26a6bfdfe8532265192940f255b
        - docker.io/confluentinc/cp-server@sha256:6881860d5faf38bacfab7d5b0b2abcb8196f46ae3ca1b4a0306913374480788a
        - confluentinc/confluent-operator@sha256:c430b476e80e29fce6f3c2827fee1e28ba7aadeca903815c4329af984ff18b8f
        - docker.io/confluentinc/cp-enterprise-prometheus@sha256:db0989ef9859dbc88bc59f9b8ade86f2ba13e9dc36533e654566218328e5ff57
        - docker.io/confluentinc/cp-kafka-rest@sha256:e9462636ab87b68db3ecc178099224cdc2bad58c72762e5031ea8ec65f965c9d
        - docker.io/confluentinc/cpc-gateway@sha256:2d96d7141579258242367e7084dec64a5c7e19330e833f4c48a132fbdebf6737
        - registry.connect.redhat.com/confluentinc/confluent-for-kubernetes-v2@sha256:6a9a9c3edfe62d8567637ec20b02eb012299004dd12f034e49118f5cc57e4f51
        - docker.io/confluentinc/confluent-init-container@sha256:7b20d6a4ffbbc062662162e75db5365ca057cb95776e94ad5fb221219bb2232a
        - docker.io/confluentinc/cp-schema-registry@sha256:b23fd1be38cddd3e7da3d940d54000384441628148565ae4f43a59242f3a994a
        - docker.io/confluentinc/confluent-operator@sha256:c430b476e80e29fce6f3c2827fee1e28ba7aadeca903815c4329af984ff18b8f
        version: 3.1.1
      entries:
      - name: confluent-for-kubernetes.v3.1.1
        version: 3.1.1
      name: "3.1"
    defaultChannel: "3.1"
    packageName: confluent-for-kubernetes
    provider:
      name: Confluent, Inc.
      url: https://confluent.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: https://horreum.hyperfoil.io
    name: horreum-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: horreum-operator.v0.7.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hyperfoil.io/v1alpha1",
                "kind": "Horreum",
                "metadata": {
                  "name": "horreum"
                },
                "spec": {
                  "nodeHost": "127.0.0.1"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/hyperfoil/horreum-operator:0.7.9
          createdAt: "2023-06-13T10:42:39Z"
          description: Performance results repository
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/hyperfoil/horreum-operator
          support: Red Hat Application Runtimes Performance Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Horreum is the object configuring Horreum performance results
              repository
            displayName: Horreum
            kind: Horreum
            name: horreums.hyperfoil.io
            version: v1alpha1
        description: Performance results repository
        displayName: Horreum
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - performance
        - repository
        - database
        - results
        - hyperfoil
        - benchmark
        links:
        - name: Horreum Operator
          url: https://horreum-operator.domain
        maintainers:
        - email: rvansa@redhat.com
          name: Radim Vansa
        - email: spederse@redhat.com
          name: Ståle W. Pedersen
        - email: wreicher@redhat.com
          name: Will Reichert
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat, Inc.
          url: https://horreum.hyperfoil.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/hyperfoil/horreum-operator:0.7.9
        - quay.io/openshift-community-operators/horreum-operator@sha256:a9d82ce368b015e45b93f917d4069978a0ba323f3dd684d470cdfd262e0c9f05
        version: 0.7.9
      entries:
      - name: horreum-operator.v0.7.9
        version: 0.7.9
      - name: horreum-operator.v0.2.0
        version: 0.2.0
      name: alpha
    defaultChannel: alpha
    packageName: horreum-operator
    provider:
      name: Red Hat, Inc.
      url: https://horreum.hyperfoil.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-memorydb-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-memorydb-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "ACL",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "ParameterGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "Snapshot",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "SubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "memorydb.services.k8s.aws/v1alpha1",
                "kind": "User",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/memorydb-controller:1.2.0
          createdAt: "2025-11-29T05:06:38Z"
          description: Amazon MemoryDB for Redis controller is a service controller
            for managing MemoryDB resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ACL represents the state of an AWS memorydb ACL resource.
            displayName: ACL
            kind: ACL
            name: acls.memorydb.services.k8s.aws
            version: v1alpha1
          - description: Cluster represents the state of an AWS memorydb Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.memorydb.services.k8s.aws
            version: v1alpha1
          - description: ParameterGroup represents the state of an AWS memorydb ParameterGroup
              resource.
            displayName: ParameterGroup
            kind: ParameterGroup
            name: parametergroups.memorydb.services.k8s.aws
            version: v1alpha1
          - description: Snapshot represents the state of an AWS memorydb Snapshot
              resource.
            displayName: Snapshot
            kind: Snapshot
            name: snapshots.memorydb.services.k8s.aws
            version: v1alpha1
          - description: SubnetGroup represents the state of an AWS memorydb SubnetGroup
              resource.
            displayName: SubnetGroup
            kind: SubnetGroup
            name: subnetgroups.memorydb.services.k8s.aws
            version: v1alpha1
          - description: User represents the state of an AWS memorydb User resource.
            displayName: User
            kind: User
            name: users.memorydb.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon MemoryDB for Redis resources in AWS from within your Kubernetes cluster.

          **About Amazon MemoryDB for Redis**

          MemoryDB for Redis is a durable, in-memory database service that delivers ultra-fast performance. It is purpose-built for modern applications with microservices architectures.
          MemoryDB is compatible with Redis, a popular open source data store, enabling you to quickly build applications using the same flexible and friendly Redis data structures, APIs, and commands that they already use today. With MemoryDB, all of your data is stored in memory, which enables you to achieve microsecond read and single-digit millisecond write latency and high throughput. MemoryDB also stores data durably across multiple Availability Zones (AZs) using a Multi-AZ transactional log to enable fast failover, database recovery, and node restarts.
          Delivering both in-memory performance and Multi-AZ durability, MemoryDB can be used as a high-performance primary database for your microservices applications, eliminating the need to separately manage both a cache and durable database.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - MemoryDB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - memorydb
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon MemoryDB for Redis Developer Resources
          url: https://docs.aws.amazon.com/memorydb/?id=docs_gateway
        maintainers:
        - email: ack-maintainers@amazon.com
          name: memorydb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/memorydb-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-memorydb-controller@sha256:5bd92572f3dae9b8195368ed2491a3a2cc8fea56af1a4cbc60a0742d1461d457
        version: 1.2.0
      entries:
      - name: ack-memorydb-controller.v1.2.0
        version: 1.2.0
      - name: ack-memorydb-controller.v1.1.2
        version: 1.1.2
      - name: ack-memorydb-controller.v1.1.1
        version: 1.1.1
      - name: ack-memorydb-controller.v1.1.0
        version: 1.1.0
      - name: ack-memorydb-controller.v1.0.15
        version: 1.0.15
      - name: ack-memorydb-controller.v1.0.13
        version: 1.0.13
      - name: ack-memorydb-controller.v1.0.12
        version: 1.0.12
      - name: ack-memorydb-controller.v1.0.11
        version: 1.0.11
      - name: ack-memorydb-controller.v1.0.10
        version: 1.0.10
      - name: ack-memorydb-controller.v1.0.9
        version: 1.0.9
      - name: ack-memorydb-controller.v1.0.8
        version: 1.0.8
      - name: ack-memorydb-controller.v1.0.7
        version: 1.0.7
      - name: ack-memorydb-controller.v1.0.6
        version: 1.0.6
      - name: ack-memorydb-controller.v1.0.5
        version: 1.0.5
      - name: ack-memorydb-controller.v1.0.4
        version: 1.0.4
      - name: ack-memorydb-controller.v1.0.3
        version: 1.0.3
      - name: ack-memorydb-controller.v1.0.2
        version: 1.0.2
      - name: ack-memorydb-controller.v1.0.1
        version: 1.0.1
      - name: ack-memorydb-controller.v1.0.0
        version: 1.0.0
      - name: ack-memorydb-controller.v0.0.12
        version: 0.0.12
      - name: ack-memorydb-controller.v0.0.11
        version: 0.0.11
      - name: ack-memorydb-controller.v0.0.10
        version: 0.0.10
      - name: ack-memorydb-controller.v0.0.9
        version: 0.0.9
      - name: ack-memorydb-controller.v0.0.8
        version: 0.0.8
      - name: ack-memorydb-controller.v0.0.7
        version: 0.0.7
      - name: ack-memorydb-controller.v0.0.6
        version: 0.0.6
      - name: ack-memorydb-controller.v0.0.5
        version: 0.0.5
      - name: ack-memorydb-controller.v0.0.4
        version: 0.0.4
      - name: ack-memorydb-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-memorydb-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Arkmq-org
      provider-url: https://arkmq-org.io
    name: arkmq-org-broker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: arkmq-org-broker-operator.v2.1.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "broker.amq.io/v1alpha1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "jolokiaAgentEnabled": false,
                    "journalType": "nio",
                    "managementRBACEnabled": true,
                    "messageMigration": false,
                    "persistenceEnabled": false,
                    "requireLogin": false,
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v1beta1",
                "kind": "ActiveMQArtemisSecurity",
                "metadata": {
                  "name": "ex-prop"
                },
                "spec": {
                  "loginModules": {
                    "propertiesLoginModules": [
                      {
                        "name": "prop-module",
                        "users": [
                          {
                            "name": "bob",
                            "roles": [
                              "root"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "securityDomains": {
                    "brokerDomain": {
                      "loginModules": [
                        {
                          "flag": "sufficient",
                          "name": "prop-module"
                        }
                      ],
                      "name": "activemq"
                    }
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha1",
                "kind": "ActiveMQArtemisScaledown",
                "metadata": {
                  "name": "ex-aaoscaledown"
                },
                "spec": {
                  "localOnly": true
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha2",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha3",
                "kind": "ActiveMQArtemisAddress",
                "metadata": {
                  "name": "ex-aaoaddress"
                },
                "spec": {
                  "addressName": "myAddress0",
                  "queueName": "myQueue0",
                  "routingType": "anycast"
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha4",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "broker.amq.io/v2alpha5",
                "kind": "ActiveMQArtemis",
                "metadata": {
                  "name": "ex-aao"
                },
                "spec": {
                  "deploymentPlan": {
                    "image": "placeholder",
                    "size": 2
                  }
                },
                "status": {
                  "conditions": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Streaming & Messaging
          containerImage: quay.io/arkmq-org/activemq-artemis-operator:2.1.1
          createdAt: "2025-04-04 14:35:00"
          description: An operator for managing the Apache ActiveMQ Artemis message
            broker
          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: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/arkmq-org/activemq-artemis-operator
          support: arkmq-org
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v1beta1
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha1
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha2
          - description: Adding and removing addresses using custom resource definitions
            displayName: ActiveMQ Artemis Address
            kind: ActiveMQArtemisAddress
            name: activemqartemisaddresses.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v1beta1
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha1
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha2
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha3
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha4
          - description: A stateful deployment of one or more brokers
            displayName: ActiveMQ Artemis
            kind: ActiveMQArtemis
            name: activemqartemises.broker.amq.io
            version: v2alpha5
          - description: Provides internal message migration on clustered broker scaledown
            displayName: ActiveMQ Artemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v1beta1
          - description: ActiveMQArtemisScaledown is the Schema for the activemqartemisscaledowns
              API
            displayName: Active MQArtemis Scaledown
            kind: ActiveMQArtemisScaledown
            name: activemqartemisscaledowns.broker.amq.io
            version: v2alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1alpha1
          - description: Security configuration for the broker
            displayName: ActiveMQ Artemis Security
            kind: ActiveMQArtemisSecurity
            name: activemqartemissecurities.broker.amq.io
            version: v1beta1
        description: ArkMQ Operator manages ActiveMQ Artemis messaging broker in the
          cloud
        displayName: ArkMQ Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - messaging
        - cloud
        - kubernetes
        - activemq
        - artemis
        - integration
        - operator
        links:
        - name: Documentation
          url: https://arkmq-org.io/docs
        - name: Repository
          url: https://github.com/arkmq-org/activemq-artemis-operator
        maintainers:
        - email: dbruscin@redhat.com
          name: Domenico Francesco Bruscino
        - email: gtully@redhat.com
          name: Gary Tully
        - email: hgao@redhat.com
          name: Howard Gao
        - email: rkieley@redhat.com
          name: Roderick Kieley
        maturity: beta
        minKubeVersion: 1.22.0
        provider:
          name: Arkmq-org
          url: https://arkmq-org.io
        relatedImages:
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:52f337cd5d7d5d199eebf4fc722f8c5279f652506f009efbc0f8f6de88e18718
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:4bba8828e72fd7c9d38c22ba1c2a4f7130817a4e7eac8fb63c13e86465a8e1e7
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:37ab7354273f4dcd19bad6936f10e92220d98b8c0266002221477a0e2d146c81
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:de82344daa0caeabc6559656da0af285436a687e8f371744c0c51bdbc309167d
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:1fd99a46758cd29fce846d0d590021758b2a7a3efedb817bb205359caa7d4f67
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:de52f034dc04bbf1c3a7a68f3ff040d76730bfb64b760c4420526c924613c1a0
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:edbec2276270c2f890572daf9141390bc33b5cf75621eca6e10f11bb144944f3
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:9e1fefc9a94d72a7b5a3f4e2d53ebd23e5ab221df17a5afde42ce973277838f6
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:da95bff69deb63545d9782ed20cbdd17c1a79c6b16165580bf96a1d5191e6a59
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:f63ba7261c3f9b81d3c29251a584a74b153109482753a20a960acf65bd851601
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:005074711b2af77d56309e18e44cd9a7bd7c49b0982ae312d7ca2b120100b351
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:ac9e2d43313412f8c3b4f7687181fa8cdb111937ecb19ad6f416618da8f347a4
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:3fb06f246c1beda919338aae6ab4b9d5ab03f06eb1a61c7c5278af50d822cc48
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:f10983c68aff358e285d89d827c27b3487a3ee3b8e121cdaa295bf5fa8501145
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:49f34122ab46ab5d7ead094b6e40817b62c75b6a809f67db07d68bce750da51e
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:b6f61188379def8c796c738549c099bd40bcd9bb44f5c30682c5edd136347aca
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:ddaf00914e3a412d21ec3a814e24f3d4cc382b5c4d6c21e9b1b94dde16ddf194
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:a4a0d0453f0761b9e114d0d4cc7c14091a2a9c30790f18ffa6bf1e365d5083fe
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:2d155bffd246f26f516a6075ec170babc1373c72bb664cba4e3c58521ffd3558
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:a34bcbf7585078a178e464f047e2f670eb0217ac66e409b08c4da0594f5907d3
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:39f34248f112751b7835f746016990046d21374a6514cb528632e0b06c76616b
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:a4628c2591ec06caf21a3467f6e3faeaede7fa402b4f137d943b25b4dd4ad343
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:895512e378006bc519d0b28196f61eabff27c6800e3a2951b21a19ac74cd5579
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:e2438670831bad39bb08147bbebe67ef9465899fb7750f1a5a185569f99d5fb5
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:264b33a9aad90d32a41258904f35092a141d76dcef0c115d414475444100aace
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:2895b2cf6292c951a0cdde78e755514f5d7cb43ce9f7b6e7dc381d8dfeec31ab
        - quay.io/community-operator-pipeline-prod/arkmq-org-broker-operator@sha256:7394f503ef1760490025304523ee39914c687e043f66b7629f57d235648d5e89
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:decb3932ebb5b848b90a4a23b083f0cb5237eec2844095d8c58a6798da8bb999
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:6f2da9ecd8f5021964d0dfa85144830efcfbd0462d18f18f036971e5f17b3bb6
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:f2c853ff91809282c04d5b1381ceae366518bf07b16649a61aa6c60c47f10714
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:e438bcacf099a92b143793e88c00c6ac0afb31effe4b0eed49a935c9265ad943
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:70d4c799c7d905fac27457d63e662ea72bca9e899a692e425609e4eaa45129e6
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:ffa0d7cb4068df84319776dbfb66210297da1b8466ccd5451318fc3de79736c3
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:fc9b9a4c7550d84fd90335dd4f9e0d8d39c09136c6034b28490a368368cb11f1
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:42230ce9d11a1949a5bb73b6ee218b1581f585bcd553485ee438e1c5b50fcf8b
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:4fa0e5420f0f3fc3669b2268de12abcf441e3b70babf07a5fbdac1b946ab33d0
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:fd94e89353cbfb282f3716da7862e087348e41a81033f5e90c45552938217c55
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:8fbdd1ba728058d5f437186b9055ca28596140068ebc69ecff4fa52717b19a82
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:b05852acb764caa16bec496eef108f5f9b66d8f300e09a0a267b7eaf4c910596
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:634f3d8fd620607b56e0360a191d23a9cb8a32ba0ba1f24fe20791ec52343586
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:474de621b3c892a7fdcb992a7c03b496f39f70c78d23f3c9159294e2db7b4bd4
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:3bbfb6177e4839087f615a01ee54f9e06a95acaddbb083e11851b6af9315dbf0
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:5e768aefade6d18cd65cb1eb5ee233844f9f7e7b52631f93a0982b67d382239d
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:0acbcc75f2d83d54dc10fcf3f59c35979d27085265f13869184d1ea5c372fd25
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:719178251893def955e444e706ff07042ea98d294671315d95da504c1f47de24
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:93168fd8cd4fb32f041795afb8fb0e21cf81081d6cc463a44356e153dc1ad032
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:673384959d87408cab9fc92f305dc47b3e7bad3a81b182de104d47f76e7df4e1
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:58b4effb8b83666c59adb657149dc0f037604254b4cd538de0cfaf50f9c14ddd
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:b293c1269166cc6181f68b8d803fdfcf20fdbd5df2787ed0453724b22e298fb2
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:f3e8ebad14c2385e47b260113beb7d6467f834aa04bc37eb12bc9bbc92b7b8b7
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:9bbb915855f29ea16950a3fd50d0b9bac25f82cba7d197579e04d9c33a5b02c4
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:56bae938a6b4cd87f9f5284931f440f9b9d116cda3b63b13f83a4b1c6c641959
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:88a0098a628fe43a9b422f8ebb774086fb65ed389a195e2779482a4a63447e28
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:d7dbd0c929c7ea0c213fa0824fd8135b381784a8873dee45256a6fb53a85f937
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:81590ec33b2f00775d3c6596f610887b670de7c0b89148b09eab7584f5b0b0ec
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:661931ae563086458a15b387e9d7b2561a64b48d4790529f636ed78cf399f579
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:f25db980c3229e66cf48690aa175f6f93e3dce3974c0e70ab23af6462e7d1893
        - quay.io/arkmq-org/activemq-artemis-operator:2.1.1
        - quay.io/arkmq-org/activemq-artemis-broker-kubernetes@sha256:4be60cfa2a300b2eef9b5f10ea756bd3f55d75fbd8890232d907f8d64080449b
        - quay.io/arkmq-org/activemq-artemis-broker-init@sha256:c9e0442ed7a2f3d378e52b92b85d6bfbf650896948890ef912e7bedf478fea52
        version: 2.1.1
      entries:
      - name: arkmq-org-broker-operator.v2.1.1
        version: 2.1.1
      - name: arkmq-org-broker-operator.v2.1.0
        version: 2.1.0
      name: stable
    defaultChannel: stable
    packageName: arkmq-org-broker-operator
    provider:
      name: Arkmq-org
      url: https://arkmq-org.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://skupper.io
    name: skupper-netobs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: skupper-netobs-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability.skupper.io/v2alpha1",
                "kind": "NetworkObserver",
                "metadata": {
                  "name": "networkobserver-sample"
                },
                "spec": {
                  "auth": {
                    "basic": {
                      "create": true,
                      "secretName": ""
                    },
                    "openshift": {
                      "cookieSecretName": "",
                      "createCookieSecret": true,
                      "serviceAccount": {
                        "create": true,
                        "nameOverride": ""
                      }
                    },
                    "strategy": "openshift"
                  },
                  "extraArgs": null,
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "registry.redhat.io/service-interconnect/skupper-network-observer-rhel9",
                    "tag": "2.1.2"
                  },
                  "ingress": {
                    "annotations": {},
                    "className": "",
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "chart-example.local",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": []
                  },
                  "nameOverride": "",
                  "nginx": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/ubi9/nginx-124",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": 9.6
                  },
                  "openshiftOauthProxy": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/openshift4/ose-oauth-proxy-rhel9",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": "v4.19.0"
                  },
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "prometheus": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/openshift4/ose-prometheus-rhel9",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": "v4.16.0"
                  },
                  "resources": {},
                  "route": {
                    "enabled": true
                  },
                  "router": {
                    "certificate": {
                      "create": true,
                      "nameOverride": ""
                    },
                    "endpoint": "amqps://skupper-router-local"
                  },
                  "securityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    }
                  },
                  "service": {
                    "port": 443,
                    "type": "ClusterIP"
                  },
                  "skipManagementLabels": false,
                  "tls": {
                    "openshiftIssued": true,
                    "secretName": "",
                    "skupperIssued": false
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-network-observer-rhel9-operator@sha256:c3bf7a7270556aa9fea22bfc71f90260b58d37fc21651704235c4906d7b4f958
          createdAt: "2025-10-21T14:13:17Z"
          description: Red Hat Service Interconnect Network Observer Operator provides
            the ability to monitor and observe a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NetworkObserver
            name: networkobservers.observability.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect Network Observer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-network-observer-operator-bundle@sha256:d5ffeb26ed57dd380b64dfc06c19991eae370dfb34f0a521dc250328430e0afb
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9-operator@sha256:c3bf7a7270556aa9fea22bfc71f90260b58d37fc21651704235c4906d7b4f958
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/ubi9/nginx-124@sha256:aa73fdb10af2bf24611ba714a412c2e65cec88a00eee628a0f2a75e564ec18f2
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:fd28171b7db948fcdb0902265f90ac76cfebb93c06c465736c0fdcceda062ff3
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        version: 2.1.2-rh-2
      entries:
      - name: skupper-netobs-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-netobs-operator.v2.1.1-rh-8
        version: 2.1.1-rh-8
      name: stable-2
    - currentCSV: skupper-netobs-operator.v2.1.2-rh-2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "observability.skupper.io/v2alpha1",
                "kind": "NetworkObserver",
                "metadata": {
                  "name": "networkobserver-sample"
                },
                "spec": {
                  "auth": {
                    "basic": {
                      "create": true,
                      "secretName": ""
                    },
                    "openshift": {
                      "cookieSecretName": "",
                      "createCookieSecret": true,
                      "serviceAccount": {
                        "create": true,
                        "nameOverride": ""
                      }
                    },
                    "strategy": "openshift"
                  },
                  "extraArgs": null,
                  "fullnameOverride": "",
                  "image": {
                    "pullPolicy": "Always",
                    "repository": "registry.redhat.io/service-interconnect/skupper-network-observer-rhel9",
                    "tag": "2.1.2"
                  },
                  "ingress": {
                    "annotations": {},
                    "className": "",
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "chart-example.local",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": []
                  },
                  "nameOverride": "",
                  "nginx": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/ubi9/nginx-124",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": 9.6
                  },
                  "openshiftOauthProxy": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/openshift4/ose-oauth-proxy-rhel9",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": "v4.19.0"
                  },
                  "podAnnotations": {},
                  "podLabels": {},
                  "podSecurityContext": {
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "prometheus": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "registry.redhat.io/openshift4/ose-prometheus-rhel9",
                    "securityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      }
                    },
                    "tag": "v4.16.0"
                  },
                  "resources": {},
                  "route": {
                    "enabled": true
                  },
                  "router": {
                    "certificate": {
                      "create": true,
                      "nameOverride": ""
                    },
                    "endpoint": "amqps://skupper-router-local"
                  },
                  "securityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    }
                  },
                  "service": {
                    "port": 443,
                    "type": "ClusterIP"
                  },
                  "skipManagementLabels": false,
                  "tls": {
                    "openshiftIssued": true,
                    "secretName": "",
                    "skupperIssued": false
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery, Networking, Streaming & Messaging
          certified: "false"
          containerImage: registry.redhat.io/service-interconnect/skupper-network-observer-rhel9-operator@sha256:c3bf7a7270556aa9fea22bfc71f90260b58d37fc21651704235c4906d7b4f958
          createdAt: "2025-10-21T14:13:17Z"
          description: Red Hat Service Interconnect Network Observer Operator provides
            the ability to monitor and observe a service network
          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.skipRange: '>2.0.0-rh-1 <2.1.2-rh-2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Service Interconnect"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/skupperproject/skupper
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NetworkObserver
            name: networkobservers.observability.skupper.io
            version: v2alpha1
        description: |
          Red Hat Service Interconnect enables communication between services running in different network locations.
          It allows geographically distributed services to connect as if they were all running in the same site.

          Each site is a namespace with a running Red Hat Service Interconnect instance.

          The operator can only be installed at cluster level, watching for the skupper resources in all namespaces.
        displayName: Red Hat Service Interconnect Network Observer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - skupper
        - rhsi
        - service
        - interconnect
        - mesh
        - van
        links:
        - name: Red Hat Service Interconnect
          url: https://www.redhat.com/en/technologies/cloud-computing/service-interconnect
        maintainers:
        - email: skupper@googlegroups.com
          name: Skupper Community
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://skupper.io
        relatedImages:
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9@sha256:280f5de45cd2fe77b64645c7ff711daf3c2c7357645aa50431845aee65b6d495
        - registry.redhat.io/ubi9/nginx-124@sha256:aa73fdb10af2bf24611ba714a412c2e65cec88a00eee628a0f2a75e564ec18f2
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:fd28171b7db948fcdb0902265f90ac76cfebb93c06c465736c0fdcceda062ff3
        - registry.redhat.io/openshift4/ose-prometheus-rhel9@sha256:5d18a681a9dda928bed455ba93437305696aa1871246c9c5eb697561847f2f94
        - registry.redhat.io/service-interconnect/skupper-network-observer-operator-bundle@sha256:d5ffeb26ed57dd380b64dfc06c19991eae370dfb34f0a521dc250328430e0afb
        - registry.redhat.io/service-interconnect/skupper-network-observer-rhel9-operator@sha256:c3bf7a7270556aa9fea22bfc71f90260b58d37fc21651704235c4906d7b4f958
        version: 2.1.2-rh-2
      entries:
      - name: skupper-netobs-operator.v2.1.2-rh-2
        version: 2.1.2-rh-2
      - name: skupper-netobs-operator.v2.1.1-rh-8
        version: 2.1.1-rh-8
      name: stable-2.1
    defaultChannel: stable-2
    packageName: skupper-netobs-operator
    provider:
      name: Red Hat
      url: https://skupper.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: smb-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: smb-csi-driver-operator.v4.20.0-202512081147
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-smb-csi-driver-rhel9-operator@sha256:8adc4f5f3b02a79344012bb44539ed9f5c87534acb771337ab53d527b5b37adf
          createdAt: "2021-07-14T00:00:00Z"
          description: Install and configure CIFS/SMB CSI driver.
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=4.15.0-0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/csi-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          CIFS/SMB CSI Driver Operator provides Server Message Block (SMB) CSI Driver that enables you to create and mount CIFS/SMB PersistentVolumes.
        displayName: CIFS/SMB CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - smb
        - cifs
        links:
        - name: Documentation
          url: https://github.com/openshift/csi-operator
        - name: Source Repository
          url: https://github.com/openshift/csi-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.29.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-smb-csi-driver-rhel9-operator@sha256:8adc4f5f3b02a79344012bb44539ed9f5c87534acb771337ab53d527b5b37adf
        - registry.redhat.io/openshift4/ose-smb-csi-driver-rhel9@sha256:a6273e028d0e483241532b3a92cf891ecabedb47f39c167898bfecde5154769c
        - registry.redhat.io/openshift4/ose-smb-csi-driver-operator-bundle@sha256:14912624bed0a1061894c1efbc392f6dec8361fb3b8e92d73b17e9dd95078329
        version: 4.20.0-202512081147
      entries:
      - name: smb-csi-driver-operator.v4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: smb-csi-driver-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: smb-csi-driver-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: smb-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: smb-csi-driver-operator.v4.20.0-202510290158
        version: 4.20.0-202510290158
      - name: smb-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: smb-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/trustification/trusted-profile-analyzer-operator
    name: rhtpa-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhtpa-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhtpa.io/v1",
                "kind": "TrustedProfileAnalyzer",
                "metadata": {
                  "name": "trustedprofileanalyzer-sample"
                },
                "spec": {
                  "appDomain": "change-me",
                  "collector": {},
                  "database": {},
                  "image": {},
                  "infrastructure": {
                    "port": 9010
                  },
                  "ingress": {},
                  "metrics": {
                    "enabled": false
                  },
                  "modules": {
                    "createDatabase": {
                      "enabled": false,
                      "image": {}
                    },
                    "createImporters": {
                      "enabled": false,
                      "image": {},
                      "importers": {}
                    },
                    "importer": {
                      "concurrency": 1,
                      "enabled": true,
                      "image": {},
                      "infrastructure": {},
                      "metrics": {},
                      "replicas": 1,
                      "resources": {
                        "requests": {
                          "cpu": 1,
                          "memory": "8Gi"
                        }
                      },
                      "rust": {},
                      "tracing": {},
                      "workingDirectory": {
                        "size": "32Gi"
                      }
                    },
                    "migrateDatabase": {
                      "enabled": false,
                      "image": {}
                    },
                    "server": {
                      "enabled": true,
                      "image": {},
                      "infrastructure": {},
                      "ingress": {},
                      "metrics": {},
                      "replicas": 1,
                      "resources": {
                        "requests": {
                          "cpu": 1,
                          "memory": "8Gi"
                        }
                      },
                      "rust": {},
                      "tracing": {}
                    }
                  },
                  "oidc": {
                    "clients": {
                      "cli": {
                        "clientSecret": null
                      },
                      "frontend": {}
                    }
                  },
                  "openshift": {
                    "useServiceCa": true
                  },
                  "partOf": "trustify",
                  "replicas": 1,
                  "rust": {},
                  "storage": {},
                  "tls": {},
                  "tracing": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/rhtpa/rhtpa-rhel9-operator@sha256:82c7c370c029a8fc6a0a918c16ea14e25aab8aa8b87ca586b31f3aa5e8633b39
          createdAt: "2025-11-13T15:04:16Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Trusted Profile Analyzer"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trustification/trusted-profile-analyzer-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: TrustedProfileAnalyzer
            name: trustedprofileanalyzers.rhtpa.io
            version: v1
        description: |
          Red Hat Trusted Profile Analyzer (RHTPA) provides a single source of truth for your software inventory across all your environments. You can verify the integrity of your in-house and third-party applications against their respective Software Bill of Materials (SBOM) document.  Trusted Profile Analyzer provides vulnerability, component and license transparency, strengthens your software supply chain security, and enables an accurate, up-to-date understanding of your software inventory.

          Features and Benefits:

          Enhanced Software Supply Chain Security: Offers critical transparency and integrity verification across the entire software lifecycle.

          Reduced Operational Risk: Proactively identifies and helps remediate vulnerabilities minimizing risk and compliance violations.

          Improved Compliance and Auditability: Simplifies the process of meeting regulatory requirements for software transparency and integrity by providing verifiable documentation and continuous monitoring.

          Faster Remediation and Incident Response: Provides targeted, actionable insights to prioritize and accelerate the patching and remediation of vulnerabilities.

          Increased Developer Productivity & Trust: Integrates security into existing workflows without significant overhead, allowing developers to build and deploy with greater confidence in the integrity of their code and components.

          Centralized Visibility and Control: Consolidates disparate security information into a single pane of glass, offering a holistic view of your application security posture.

          Red Hat Trusted Profile Analyzer is a crucial tool for any organization running applications on OpenShift that needs to confidently understand, verify, and secure the software they deploy, especially in an era of complex software supply chains and increasing regulatory scrutiny.

          [Documentation](https://docs.redhat.com/en/documentation/red_hat_trusted_profile_analyzer/2.2).
        displayName: Red Hat Trusted Profile Analyzer
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - rhtpa
        - trusted-profile-analyzer
        links:
        - name: Trusted Profile Analyzer Operator
          url: https://github.com/trustification/trusted-profile-analyzer-operator
        maintainers:
        - email: rhtpa-support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: Red Hat
          url: https://github.com/trustification/trusted-profile-analyzer-operator
        relatedImages:
        - registry.redhat.io/rhtpa/rhtpa-operator-bundle@sha256:296c7c5ce1236c732583922dcf61dc2dfc5b872cc633203ae8d983b7105535f1
        - registry.redhat.io/rhtpa/rhtpa-rhel9-operator@sha256:82c7c370c029a8fc6a0a918c16ea14e25aab8aa8b87ca586b31f3aa5e8633b39
        version: 1.1.0
      entries:
      - name: rhtpa-operator.v1.1.0
        version: 1.1.0
      name: stable-v1.1
    defaultChannel: stable-v1.1
    packageName: rhtpa-operator
    provider:
      name: Red Hat
      url: https://github.com/trustification/trusted-profile-analyzer-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hitachi
      provider-url: ""
    name: hspc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hspc-operator.v1.17.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.hitachi.com/v1",
                "kind": "HSPC",
                "metadata": {
                  "name": "hspc",
                  "namespace": "kube-system"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Storage
          containerImage: registry.hitachivantara.com/hitachicsi-oci-oss/hspc-operator@sha256:3833ceb961234ea1e57eac144870995f565167ba99367e30187ccd9d4d6c5d23
          createdAt: "2025-12-15T10:35:09Z"
          description: An operator for managing Hitachi Storage Plug-in for Containers
            CSI driver
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          support: Hitachi
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HSPC is the Schema for the hspcs API
            displayName: HSPC
            kind: HSPC
            name: hspcs.csi.hitachi.com
            version: v1
        description: |-
          ## About
          Hitachi Storage Plug-in for Containers is a software plugin component for Kubernetes and OpenShift environments that is used to create and manage persistent block storage from Hitachi Virtual Storage Platform One storages.


          For full documentation, go to our [Product Documentation site](https://docs.hitachivantara.com/home) and refer to the reference guide for HSPC v3.17.3.

          ## Requirements

          ### Supported Driver Version

          * HSPC v3.17.3
        displayName: Hitachi Storage Plug-in for Containers
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hitachi
        - Storage
        - Container Storage Interface
        - CSI
        links:
        - name: Product Documentation
          url: https://docs.hitachivantara.com/home
        maintainers:
        - email: Container-info@hitachivantara.com
          name: Hitachi
        maturity: stable
        provider:
          name: Hitachi
        relatedImages:
        - registry.k8s.io/sig-storage/csi-attacher@sha256:5aaefc24f315b182233c8b6146077f8c32e274d864cb03c632206e78bd0302da
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:672e45d6a55678abc1d102de665b5cbd63848e75dc7896f238c8eaaf3c7d322f
        - registry.k8s.io/sig-storage/csi-attacher@sha256:47ab8aebebdc59316004ba8d51a903637d808f4e62a6d0f599ed3c2483cea901
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:bb057f866177d5f4139a1527e594499cbe0feeb67b63aaca8679dfdf0a6016f9
        - registry.hitachivantara.com/hitachicsi-oci-oss/hspc-csi-driver@sha256:dbc6d8eab86e97187589467e8429dd90435fa0679f489ce69c78574053b90250
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:5244abbe87e01b35adeb8bb13882a74785df0c0619f8325c9e950395c3f72a97
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:81d32545fb1b2c319bfeb36a70db4b4d3aea9c51c0574b209b8f64750b32d2f0
        - registry.hitachivantara.com/hitachicsi-oci-oss/hspc-operator@sha256:3833ceb961234ea1e57eac144870995f565167ba99367e30187ccd9d4d6c5d23
        - registry.k8s.io/sig-storage/livenessprobe@sha256:13f6b1f9d0514b859e549e20b731d93c90a144186deb68bfc931e3dbf9041afc
        - registry.k8s.io/sig-storage/csi-resizer@sha256:5e7cbb63fd497fa913caa21fee1a69f727c220c6fa83c5f8bb0995e2ad73a474
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:0d23a6fd60c421054deec5e6d0405dc3498095a5a597e175236c0692f4adee0f
        - registry.k8s.io/sig-storage/csi-resizer@sha256:706f7cdcccd30ca5f0e94d548e2e0c658f69c0fe4b68a5bf37818a04ca618d3d
        - registry.connect.redhat.com/hitachi/hspc-operator-bundle@sha256:1c7e40b02bfd5013796e50dbf4b13bd733a23f8599b653faad0f15498063ac0e
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:7b3d53cfefcb1c8836d5ac45f64dfdbf3fe6c813251b0b2ec79af7812cc53bfa
        - registry.k8s.io/sig-storage/livenessprobe@sha256:57dba2ee519e49afacf899af7e265d977b02ec4c1f60c9b636ab0e575612dbfd
        version: 1.17.3
      entries:
      - name: hspc-operator.v1.17.3
        version: 1.17.3
      name: stable
    defaultChannel: stable
    packageName: hspc-operator
    provider:
      name: Hitachi
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EPAM Delivery Platform
      provider-url: https://epam.github.io/edp-install/
    name: edp-keycloak-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: edp-keycloak-operator.v1.19.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "Keycloak",
                "metadata": {
                  "name": "keycloak-sample"
                },
                "spec": {
                  "secret": "my-keycloak-secret",
                  "url": "https://example.com"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakAuthFlow",
                "metadata": {
                  "name": "keycloakauthflow-sample"
                },
                "spec": {
                  "alias": "MyBrowser",
                  "authenticationExecutions": [
                    {
                      "authenticator": "auth-cookie",
                      "priority": 0,
                      "requirement": "ALTERNATIVE"
                    },
                    {
                      "authenticator": "identity-provider-redirector",
                      "authenticatorConfig": {
                        "alias": "my-alias",
                        "config": {
                          "defaultProvider": "my-alias"
                        }
                      },
                      "priority": 1,
                      "requirement": "REQUIRED"
                    }
                  ],
                  "builtIn": false,
                  "description": "browser with idp",
                  "providerId": "basic-flow",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  },
                  "topLevel": true
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakClient",
                "metadata": {
                  "name": "keycloakclient-sample"
                },
                "spec": {
                  "advancedProtocolMappers": true,
                  "clientId": "agocd",
                  "defaultClientScopes": [
                    "argocd_groups"
                  ],
                  "directAccess": true,
                  "public": false,
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  },
                  "secret": "$client-secret-name:client-secret-key",
                  "webUrl": "https://argocd.example.com"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakClientScope",
                "metadata": {
                  "name": "keycloakclientscope-sample"
                },
                "spec": {
                  "description": "Group Membership",
                  "name": "groups",
                  "protocol": "openid-connect",
                  "protocolMappers": [
                    {
                      "config": {
                        "access.token.claim": "true",
                        "claim.name": "groups",
                        "full.path": "false",
                        "id.token.claim": "true",
                        "userinfo.token.claim": "true"
                      },
                      "name": "groups",
                      "protocol": "openid-connect",
                      "protocolMapper": "oidc-group-membership-mapper"
                    }
                  ],
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealm",
                "metadata": {
                  "name": "keycloakrealm-sample"
                },
                "spec": {
                  "id": "d1-id-kc-realm-name",
                  "keycloakRef": {
                    "kind": "Keycloak",
                    "name": "keycloak-sample"
                  },
                  "passwordPolicy": [
                    {
                      "type": "forceExpiredPasswordChange",
                      "value": "365"
                    },
                    {
                      "type": "length",
                      "value": "8"
                    }
                  ],
                  "realmEventConfig": {
                    "adminEventsDetailsEnabled": false,
                    "adminEventsEnabled": true,
                    "enabledEventTypes": [
                      "UPDATE_CONSENT_ERROR",
                      "CLIENT_LOGIN"
                    ],
                    "eventsEnabled": true,
                    "eventsExpiration": 15000,
                    "eventsListeners": [
                      "jboss-logging"
                    ]
                  },
                  "realmName": "d2-id-kc-realm-name",
                  "ssoAutoRedirectEnabled": false,
                  "ssoRealmEnabled": false,
                  "ssoRealmName": "openshift"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmComponent",
                "metadata": {
                  "name": "keycloakrealmcomponent-sample"
                },
                "spec": {
                  "config": {
                    "allowPasswordAuthentication": [
                      "true"
                    ],
                    "cachePolicy": [
                      "EVICT_WEEKLY"
                    ],
                    "debug": [
                      "true"
                    ],
                    "editMode": [
                      "READ_ONLY"
                    ],
                    "enabled": [
                      "true"
                    ],
                    "evictionDay": [
                      "3"
                    ],
                    "evictionHour": [
                      "5"
                    ],
                    "evictionMinute": [
                      "7"
                    ],
                    "kerberosRealm": [
                      "test-realm"
                    ],
                    "keyTab": [
                      "test-key-tab"
                    ],
                    "priority": [
                      "0"
                    ],
                    "serverPrincipal": [
                      "srv-principal-test"
                    ],
                    "updateProfileFirstLogin": [
                      "true"
                    ]
                  },
                  "name": "cr-kerb-test",
                  "providerId": "kerberos",
                  "providerType": "org.keycloak.storage.UserStorageProvider",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmGroup",
                "metadata": {
                  "name": "keycloakrealmgroup-sample"
                },
                "spec": {
                  "name": "ArgoCDAdmins",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmIdentityProvider",
                "metadata": {
                  "name": "keycloakrealmidentityprovider-sample"
                },
                "spec": {
                  "alias": "instagram",
                  "authenticateByDefault": false,
                  "config": {
                    "clientId": "foo",
                    "clientSecret": "$secretName:secretKey",
                    "hideOnLoginPage": "true",
                    "syncMode": "IMPORT",
                    "useJwksUrl": "true"
                  },
                  "enabled": true,
                  "firstBrokerLoginFlowAlias": "first broker login",
                  "mappers": [
                    {
                      "config": {
                        "role": "role-tr",
                        "syncMode": "INHERIT"
                      },
                      "identityProviderAlias": "instagram",
                      "identityProviderMapper": "oidc-hardcoded-role-idp-mapper",
                      "name": "test3212"
                    },
                    {
                      "config": {
                        "attribute": "foo",
                        "attribute.value": "bar",
                        "syncMode": "IMPORT"
                      },
                      "identityProviderAlias": "instagram",
                      "identityProviderMapper": "hardcoded-attribute-idp-mapper",
                      "name": "test-33221"
                    }
                  ],
                  "providerId": "instagram",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmRole",
                "metadata": {
                  "name": "keycloakrealmrole-sample"
                },
                "spec": {
                  "composite": true,
                  "description": "default developer role",
                  "name": "developer",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  }
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmRoleBatch",
                "metadata": {
                  "name": "keycloakrealmrolebatch-sample"
                },
                "spec": {
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  },
                  "roles": [
                    {
                      "composite": true,
                      "description": "default developer role",
                      "isDefault": false,
                      "name": "developer"
                    },
                    {
                      "composite": true,
                      "description": "default administrator role",
                      "isDefault": false,
                      "name": "administrator"
                    }
                  ]
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1",
                "kind": "KeycloakRealmUser",
                "metadata": {
                  "name": "keycloakrealmuser-sample"
                },
                "spec": {
                  "attributes": {
                    "baz": "jazz",
                    "foo": "bar"
                  },
                  "email": "john.snow13@example.com",
                  "emailVerified": true,
                  "enabled": true,
                  "firstName": "John",
                  "keepResource": true,
                  "lastName": "Snow",
                  "password": "12345678",
                  "realmRef": {
                    "kind": "KeycloakRealm",
                    "name": "keycloakrealm-sample"
                  },
                  "requiredUserActions": [
                    "UPDATE_PASSWORD"
                  ],
                  "username": "john.snow13"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1alpha1",
                "kind": "ClusterKeycloak",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "edp-keycloak-operator",
                    "app.kubernetes.io/instance": "clusterkeycloak-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "clusterkeycloak",
                    "app.kubernetes.io/part-of": "edp-keycloak-operator"
                  },
                  "name": "clusterkeycloak-sample"
                },
                "spec": {
                  "secret": "keycloak-access",
                  "url": "https://keycloak.example.com"
                }
              },
              {
                "apiVersion": "v1.edp.epam.com/v1alpha1",
                "kind": "ClusterKeycloakRealm",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "edp-keycloak-operator",
                    "app.kubernetes.io/instance": "clusterkeycloakrealm-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "clusterkeycloakrealm",
                    "app.kubernetes.io/part-of": "edp-keycloak-operator"
                  },
                  "name": "clusterkeycloakrealm-sample"
                },
                "spec": {
                  "clusterKeycloakRef": "clusterkeycloak-sample",
                  "realmName": "realm-sample"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          containerImage: docker.io/epamedp/keycloak-operator:1.19.0
          createdAt: "2023-11-15T16:04:45Z"
          description: An Operator for managing Keycloak
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/epam/edp-keycloak-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterKeycloakRealm is the Schema for the clusterkeycloakrealms
              API.
            displayName: Cluster Keycloak Realm
            kind: ClusterKeycloakRealm
            name: clusterkeycloakrealms.v1.edp.epam.com
            version: v1alpha1
          - description: ClusterKeycloak is the Schema for the clusterkeycloaks API.
            displayName: Cluster Keycloak
            kind: ClusterKeycloak
            name: clusterkeycloaks.v1.edp.epam.com
            version: v1alpha1
          - description: KeycloakAuthFlow is the Schema for the keycloak authentication
              flow API.
            displayName: Keycloak Auth Flow
            kind: KeycloakAuthFlow
            name: keycloakauthflows.v1.edp.epam.com
            version: v1
          - description: KeycloakClient is the Schema for the keycloak clients API.
            displayName: Keycloak Client
            kind: KeycloakClient
            name: keycloakclients.v1.edp.epam.com
            version: v1
          - description: KeycloakClientScope is the Schema for the keycloakclientscopes
              API.
            displayName: Keycloak Client Scope
            kind: KeycloakClientScope
            name: keycloakclientscopes.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmComponent is the Schema for the keycloak component
              API.
            displayName: Keycloak Realm Component
            kind: KeycloakRealmComponent
            name: keycloakrealmcomponents.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmGroup is the Schema for the keycloak group API.
            displayName: Keycloak Realm Group
            kind: KeycloakRealmGroup
            name: keycloakrealmgroups.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmIdentityProvider is the Schema for the keycloak
              realm identity provider API.
            displayName: Keycloak Realm Identity Provider
            kind: KeycloakRealmIdentityProvider
            name: keycloakrealmidentityproviders.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmRoleBatch is the Schema for the keycloak roles
              API.
            displayName: Keycloak Realm Role Batch
            kind: KeycloakRealmRoleBatch
            name: keycloakrealmrolebatches.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmRole is the Schema for the keycloak group API.
            displayName: Keycloak Realm Role
            kind: KeycloakRealmRole
            name: keycloakrealmroles.v1.edp.epam.com
            version: v1
          - description: KeycloakRealm is the Schema for the keycloak realms API.
            displayName: Keycloak Realm
            kind: KeycloakRealm
            name: keycloakrealms.v1.edp.epam.com
            version: v1
          - description: KeycloakRealmUser is the Schema for the keycloak user API.
            displayName: Keycloak Realm User
            kind: KeycloakRealmUser
            name: keycloakrealmusers.v1.edp.epam.com
            version: v1
          - description: Keycloak is the Schema for the keycloaks API.
            displayName: Keycloak
            kind: Keycloak
            name: keycloaks.v1.edp.epam.com
            version: v1
        description: |
          Keycloak Operator is an operator that is responsible for establishing
          a connection to provided Keycloak Server, reconciling Keycloak entities (realms,
          roles, groups, users, etc) according to the created CRs.

          ## Quick Start

          1. Create a User in the Keycloak `Master` realm, and assign a `create-realm` role.

          2. Insert newly created user credentials into Kubernetes secret:

              ```yaml
              apiVersion: v1
              kind: Secret
              metadata:
                name:  keycloak-access
              type: Opaque
              data:
                username: dXNlcg==   # base64-encoded value of "user"
                password: cGFzcw==   # base64-encoded value of "pass"
              ```

          3. Create Custom Resource `kind: Keycloak` with Keycloak instance URL and secret created on the previous step:

              ```yaml
              apiVersion: v1.edp.epam.com/v1
              kind: Keycloak
              metadata:
                name: keycloak-sample
              spec:
                secret: keycloak-access             # Secret name
                url: https://keycloak.example.com   # Keycloak URL
              ```

              Wait for the `.status` field with  `status.connected: true`

          4. Create Keycloak realm and group using Custom Resources:

            ```yaml
            apiVersion: v1.edp.epam.com/v1
            kind: KeycloakRealm
            metadata:
              name: keycloakrealm-sample
            spec:
              realmName: realm-sample
              keycloakOwner: keycloak-sample   # the name of `kind: Keycloak`
              ```

              ```yaml
              apiVersion: v1.edp.epam.com/v1
              kind: KeycloakRealmGroup
              metadata:
                name: argocd-admins
              spec:
                name: ArgoCDAdmins
                realm: keycloakrealm-sample   # the name of `kind: KeycloakRealm`
              ```
        displayName: EDP Keycloak Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - authentication
        - authorization
        - edp
        - idp
        - keycloak
        - oauth
        - oidc
        - operator
        - saml
        - sso
        links:
        - name: Edp Keycloak Operator
          url: https://github.com/epam/edp-keycloak-operator
        maintainers:
        - email: SupportEPMD-EDP@epam.com
          name: epmd-edp
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: EPAM Delivery Platform
          url: https://epam.github.io/edp-install/
        relatedImages:
        - docker.io/epamedp/keycloak-operator:1.19.0
        - quay.io/openshift-community-operators/edp-keycloak-operator@sha256:82ff141bb86599f12d4a516fd1b6c5252f9ff24ef2547be6c58e2f3d88219914
        version: 1.19.0
      entries:
      - name: edp-keycloak-operator.v1.19.0
        version: 1.19.0
      - name: edp-keycloak-operator.v1.18.2
        version: 1.18.2
      - name: edp-keycloak-operator.v1.17.1
        version: 1.17.1
      - name: edp-keycloak-operator.v1.13.0
        version: 1.13.0
      name: alpha
    defaultChannel: alpha
    packageName: edp-keycloak-operator
    provider:
      name: EPAM Delivery Platform
      url: https://epam.github.io/edp-install/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      operatorframework.io/os.zos: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/file-integrity-operator
    name: file-integrity-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: file-integrity-operator.v0.1.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fileintegrity.openshift.io/v1alpha1",
                "kind": "FileIntegrity",
                "metadata": {
                  "name": "example-fileintegrity",
                  "namespace": "openshift-file-integrity"
                },
                "spec": {
                  "config": {},
                  "debug": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.6 <0.1.13'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-file-integrity
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          repository: https://github.com/openshift/file-integrity-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileIntegrity is the Schema for the fileintegrities API
            kind: FileIntegrity
            name: fileintegrities.fileintegrity.openshift.io
            version: v1alpha1
          - description: FileIntegrityNodeStatus defines the status of a specific
              node
            kind: FileIntegrityNodeStatus
            name: fileintegritynodestatuses.fileintegrity.openshift.io
            version: v1alpha1
        description: An operator that manages file integrity checks on nodes.
        displayName: File Integrity Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Integrity
        - security
        links:
        - name: File Integrity Operator
          url: https://file-integrity-operator.domain
        maintainers:
        - email: mrogers@redhat.com
          name: Matt Rogers
        maturity: alpha
        provider:
          name: Red Hat
          url: https://github.com/openshift/file-integrity-operator
        relatedImages:
        - registry.redhat.io/openshift4/file-integrity-rhel8-operator-metadata@sha256:7fb2750941193d64f8cca278ff7d81d3ca5e29a2ad0568dff7ddae4396548bb3
        - registry.redhat.io/openshift4/file-integrity-rhel8-operator@sha256:a65f1244636649734763164a5d6155a6f6a7b79b3950ecc03fb3c58188583599
        version: 0.1.13
      entries:
      - name: file-integrity-operator.v0.1.13
        version: 0.1.13
      name: "4.7"
    - currentCSV: file-integrity-operator.v0.1.32
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fileintegrity.openshift.io/v1alpha1",
                "kind": "FileIntegrity",
                "metadata": {
                  "name": "example-fileintegrity",
                  "namespace": "openshift-file-integrity"
                },
                "spec": {
                  "config": {},
                  "debug": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.6 <0.1.32'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-file-integrity
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/file-integrity-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileIntegrity is the Schema for the fileintegrities API
            displayName: File Integrity
            kind: FileIntegrity
            name: fileintegrities.fileintegrity.openshift.io
            version: v1alpha1
          - description: FileIntegrityNodeStatus defines the status of a specific
              node
            kind: FileIntegrityNodeStatus
            name: fileintegritynodestatuses.fileintegrity.openshift.io
            version: v1alpha1
        description: An operator that manages file integrity checks on nodes.
        displayName: File Integrity Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Integrity
        - security
        links:
        - name: File Integrity Operator upstream repo
          url: https://github.com/openshift/file-integrity-operator
        - name: File Integrity Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/file_integrity_operator/file-integrity-operator-understanding.html
        maintainers:
        - email: mrogers@redhat.com
          name: Matt Rogers
        maturity: alpha
        provider:
          name: Red Hat
          url: https://github.com/openshift/file-integrity-operator
        relatedImages:
        - registry.redhat.io/compliance/openshift-file-integrity-operator-bundle@sha256:57e796822bcd705974c0efcd6c190ce39eac2e70b9d6a0c27f69d85dfe966db2
        - registry.redhat.io/compliance/openshift-file-integrity-rhel8-operator@sha256:c3e34e6198eadb48c007cd949d8be38e26ef7d15d2f9047a8c3c89c03201e4ea
        version: 0.1.32
      entries:
      - name: file-integrity-operator.v0.1.32
        version: 0.1.32
      name: release-0.1
    - currentCSV: file-integrity-operator.v1.3.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fileintegrity.openshift.io/v1alpha1",
                "kind": "FileIntegrity",
                "metadata": {
                  "name": "example-fileintegrity",
                  "namespace": "openshift-file-integrity"
                },
                "spec": {
                  "config": {},
                  "debug": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          createdAt: "2024-11-21T18:02:08Z"
          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: "true"
          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.skipRange: '>=1.0.0 <1.3.8'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-file-integrity
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/file-integrity-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileIntegrity is the Schema for the fileintegrities API
            displayName: File Integrity
            kind: FileIntegrity
            name: fileintegrities.fileintegrity.openshift.io
            version: v1alpha1
          - description: FileIntegrityNodeStatus defines the status of a specific
              node
            kind: FileIntegrityNodeStatus
            name: fileintegritynodestatuses.fileintegrity.openshift.io
            version: v1alpha1
        description: An operator that manages file integrity checks on nodes.
        displayName: File Integrity Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Integrity
        - security
        links:
        - name: File Integrity Operator upstream repo
          url: https://github.com/openshift/file-integrity-operator
        - name: File Integrity Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/file_integrity_operator/file-integrity-operator-understanding.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
          url: https://github.com/openshift/file-integrity-operator
        relatedImages:
        - registry.redhat.io/compliance/openshift-file-integrity-operator-bundle@sha256:efb25a29f837eebee8a0b566eb2c8cf8cebce7cb16198e90d87231fe3cc35316
        - registry.redhat.io/compliance/openshift-file-integrity-rhel8-operator@sha256:ce9c08c45902954ac7c26cd3dc89a00bf99c032399db80f7d7c3f2a77584e7f6
        version: 1.3.8
      entries:
      - name: file-integrity-operator.v1.3.8
        version: 1.3.8
      - name: file-integrity-operator.v1.3.7
        version: 1.3.7
      - name: file-integrity-operator.v1.3.6
        version: 1.3.6
      - name: file-integrity-operator.v1.3.5
        version: 1.3.5
      - name: file-integrity-operator.v1.3.4
        version: 1.3.4
      - name: file-integrity-operator.v1.3.3
        version: 1.3.3
      name: stable
    - currentCSV: file-integrity-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fileintegrity.openshift.io/v1alpha1",
                "kind": "FileIntegrity",
                "metadata": {
                  "name": "example-fileintegrity",
                  "namespace": "openshift-file-integrity"
                },
                "spec": {
                  "config": {},
                  "debug": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.6 <1.0.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-file-integrity
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/file-integrity-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileIntegrity is the Schema for the fileintegrities API
            displayName: File Integrity
            kind: FileIntegrity
            name: fileintegrities.fileintegrity.openshift.io
            version: v1alpha1
          - description: FileIntegrityNodeStatus defines the status of a specific
              node
            kind: FileIntegrityNodeStatus
            name: fileintegritynodestatuses.fileintegrity.openshift.io
            version: v1alpha1
        description: An operator that manages file integrity checks on nodes.
        displayName: File Integrity Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Integrity
        - security
        links:
        - name: File Integrity Operator upstream repo
          url: https://github.com/openshift/file-integrity-operator
        - name: File Integrity Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/file_integrity_operator/file-integrity-operator-understanding.html
        maintainers:
        - email: mrogers@redhat.com
          name: Matt Rogers
        maturity: alpha
        provider:
          name: Red Hat
          url: https://github.com/openshift/file-integrity-operator
        relatedImages:
        - registry.redhat.io/compliance/openshift-file-integrity-operator-bundle@sha256:f234e8af232f2d3a9472307ae82834f96756841b8d60b8c42ac4f9ca3fd17545
        - registry.redhat.io/compliance/openshift-file-integrity-rhel8-operator@sha256:dd1dfeccf59214a0de653c3a4c4dbbc8c41640954318d13386cda73891660e4f
        version: 1.0.0
      entries:
      - name: file-integrity-operator.v1.0.0
        version: 1.0.0
      name: v1
    defaultChannel: stable
    packageName: file-integrity-operator
    provider:
      name: Red Hat
      url: https://github.com/openshift/file-integrity-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: servicemeshoperator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: servicemeshoperator.v2.6.11
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"maistra.io/v2\",\n    \"kind\":
            \"ServiceMeshControlPlane\",\n    \"metadata\": {\n      \"name\": \"basic\",\n
            \     \"namespace\": \"control-plane-namespace\"\n    },\n    \"spec\":
            {\n      \"version\": \"v2.6\",\n      \"policy\": {\n         \"type\":
            \"Istiod\"\n      },\n      \"telemetry\": {\n         \"type\": \"Istiod\"\n
            \     },\n      \"addons\": {\n        \"prometheus\": {\n          \"enabled\":
            true\n        },\n        \"kiali\": {\n          \"enabled\": true\n
            \       },\n        \"grafana\": {\n          \"enabled\": true\n        }\n
            \     }\n    }\n  },\n  {\n    \"apiVersion\": \"maistra.io/v1\",\n    \"kind\":
            \"ServiceMeshMemberRoll\",\n    \"metadata\": {\n      \"name\": \"default\",\n
            \     \"namespace\": \"control-plane-namespace\"\n    },\n    \"spec\":
            {\n      \"members\": [\n        \"your-project\",\n        \"another-of-your-projects\"
            \n      ]\n    }\n  },\n  {\n    \"apiVersion\": \"maistra.io/v1\",\n
            \   \"kind\": \"ServiceMeshMember\",\n    \"metadata\": {\n      \"name\":
            \"default\",\n      \"namespace\": \"application-namespace\"\n    },\n
            \   \"spec\": {\n      \"controlPlaneRef\": {\n        \"name\": \"basic\",\n
            \       \"namespace\": \"control-plane-namespace\"\n      }\n    }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
          createdAt: 2025-09-09T13:46:27CEST
          description: The OpenShift Service Mesh 2 Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh 2.6
            and earlier releases. OpenShift Service Mesh 2 is based on the open source
            Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.2 <2.6.11-0'
          operators.openshift.io/infrastructure-features: '["Disconnected","fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/maistra/istio-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Istio control plane installation
            displayName: Istio Service Mesh Control Plane
            kind: ServiceMeshControlPlane
            name: servicemeshcontrolplanes.maistra.io
            version: v2
          - description: Marks the containing namespace as a member of the referenced
              Service Mesh
            displayName: Istio Service Mesh Member
            kind: ServiceMeshMember
            name: servicemeshmembers.maistra.io
            version: v1
          - description: A list of namespaces in Service Mesh
            displayName: Istio Service Mesh Member Roll
            kind: ServiceMeshMemberRoll
            name: servicemeshmemberrolls.maistra.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh 2 is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh 2, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh 2
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh 2 provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh 2 supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### Joining Projects Into a Mesh

          Once an instance of Red Hat OpenShift Service Mesh 2 has been installed, it will only exercise control over services within its own
          project.  Other projects may be added into the mesh using one of two methods:

          1. A **ServiceMeshMember** resource may be created in other projects to add those projects into the mesh.  The
            **ServiceMeshMember** specifies a reference to the **ServiceMeshControlPlane** object that was used to install
            the control plane.  The user creating the **ServiceMeshMember** resource must have permission to *use* the
            **ServiceMeshControlPlane** object.  The adminstrator for the project containing the control plane can grant
            individual users or groups the *use* permissions.

          2. A **ServiceMeshMemberRoll** resource may be created in the project containing the control plane.  This resource
            contains a single *members* list of all the projects that should belong in the mesh.  The resource must be named
            *default*.  The user creating the resource must have *edit* or *admin* permissions for all projects in the
            *members* list.

          ### More Information

          * [Documentation](https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 2
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - maistra
        - servicemesh
        links:
        - name: Red Hat OpenShift Service Mesh 2
          url: https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html
        - name: Istio
          url: https://istio.io/
        - name: Operator Source Code
          url: https://github.com/Maistra/istio-operator
        - name: Bugs
          url: https://issues.redhat.com/projects/OSSM
        maintainers:
        - email: istio-feedback@redhat.com
          name: Red Hat, OpenShift Service Mesh
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d95762c62087072cadee5948c706619f09202a349e1310f0ed81bfb42f11203f
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6b4623c416fc85bd8e38904c16494fa3c4aeae25c90dc0da9763a0a87141bc04
        - registry.redhat.io/openshift4/ose-prometheus@sha256:5337742d305ff580471e9657345b384a950f82be7fd8a55196459008d2fca0a2
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:57eb7ba03f24781501a7ceed2e160ff95317869af6c2caf8f9a83990e6a6c7b9
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:a36d5db6097749c55e946bba3b8ddd13a84b1f6f68b62d0ccbad5a803e9b46fb
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:1ca80927334c6af8e386de8d44704f568b4b35d3f7afbe785a999d0fa4efd0bf
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:f2fa0849e1304457ef69020c090ad79d928faa1a90c3042a6ecaca842c2a97fa
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6fb7d50b188dc27ffb9a396edabbfb21767fe438344fd70d4754d1ec7cf27957
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:4669724b430683bf2e895c5cf941c2d99536117815999d38131e5b6f162bbef0
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:877aa4c6546146f0ed42eca52500e1adfc28a1dda80a08500f9cc9e023254ccd
        - registry.redhat.io/openshift-service-mesh/prometheus-rhel8@sha256:71e193a2d403bb06a7a76686b376985315aa0c32f495b8b9dacd73c7ccce2af3
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:515c5d9e6700fae981b0ea3807436b250acb1534e9ecf50043e5df8474e66dce
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:a3d65983d46dcf47b94f26e7265ed32082208ce08abcf3587a9a4e15c19b274a
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:c77183e50a34d33b5e2fede60350f54b18ab3536c3189e331569d5df862d9979
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:d16a60204d266bf4cc266c005fabf175b533b827500f171013884a713c88857a
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:3dc1bddb070fd530ce6251666989b9a849de90591718a578da4a9900f98d93ec
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:e734ca310e09f737b4f06f3ecfeb9ac12971c63884fdcc27e3bebef9d5b18722
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:49bd04cf8d17d568be9649e706dba4a1a5bd7a7a87c075b97ea3b706dd1ed17c
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:6a420228e684596ce2b900614a874f3e1284a6f2bbbba4c5a71ade158867affe
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-service-mesh/istio-operator-bundle@sha256:4923f618c4f5dca6fb67b3559436f8fdecfdb42965444440b92d15200e126a11
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:ee9c27eea4e786097db0fae63ba99c0272548eb9708c75ce4844e0d43bcaa490
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:b6883bf18708526e22939d083fa0e6b2d0485b61c677b9e39bb4109dc035dc52
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:fdcd165abf3f93810248a6ac14611c1ba7f5e8d48dafb81666a8211d1edf6a5a
        version: 2.6.11-0
      entries:
      - name: servicemeshoperator.v2.6.11
        version: 2.6.11-0
      - name: servicemeshoperator.v2.6.10
        version: 2.6.10-0
      - name: servicemeshoperator.v2.6.9
        version: 2.6.9-0
      - name: servicemeshoperator.v2.6.8
        version: 2.6.8-0
      - name: servicemeshoperator.v2.6.7
        version: 2.6.7-0
      - name: servicemeshoperator.v2.6.6
        version: 2.6.6-0
      - name: servicemeshoperator.v2.6.5
        version: 2.6.5-0
      - name: servicemeshoperator.v2.6.4
        version: 2.6.4-0
      - name: servicemeshoperator.v2.6.3
        version: 2.6.3-0
      - name: servicemeshoperator.v2.6.2
        version: 2.6.2-0
      - name: servicemeshoperator.v2.6.1
        version: 2.6.1-0
      - name: servicemeshoperator.v2.6.0
        version: 2.6.0-0
      - name: servicemeshoperator.v2.5.2
        version: 2.5.2-0
      - name: servicemeshoperator.v2.5.1
        version: 2.5.1-0
      - name: servicemeshoperator.v2.5.0
        version: 2.5.0-0
      - name: servicemeshoperator.v2.4.5
        version: 2.4.5-0
      - name: servicemeshoperator.v2.4.4
        version: 2.4.4-0
      - name: servicemeshoperator.v2.4.3
        version: 2.4.3-0
      - name: servicemeshoperator.v2.4.2
        version: 2.4.2-0
      - name: servicemeshoperator.v2.4.1
        version: 2.4.1-0
      - name: servicemeshoperator.v2.4.0
        version: 2.4.0-0
      - name: servicemeshoperator.v2.3.3
        version: 2.3.3-0
      - name: servicemeshoperator.v2.3.2
        version: 2.3.2-0
      - name: servicemeshoperator.v2.3.1
        version: 2.3.1-0
      - name: servicemeshoperator.v2.3.0
        version: 2.3.0-0
      - name: servicemeshoperator.v2.2.3
        version: 2.2.3-0
      - name: servicemeshoperator.v2.2.2
        version: 2.2.2-0
      - name: servicemeshoperator.v2.2.1
        version: 2.2.1-0
      - name: servicemeshoperator.v2.2.0
        version: 2.2.0-0
      - name: servicemeshoperator.v2.1.3
        version: 2.1.3-0
      - name: servicemeshoperator.v2.1.2
        version: 2.1.2-0
      - name: servicemeshoperator.v2.1.1
        version: 2.1.1-0
      - name: servicemeshoperator.v2.1.0
        version: 2.1.0-0
      - name: servicemeshoperator.v2.0.8
        version: 2.0.8-0
      name: "1.0"
    - currentCSV: servicemeshoperator.v2.6.11
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"maistra.io/v2\",\n    \"kind\":
            \"ServiceMeshControlPlane\",\n    \"metadata\": {\n      \"name\": \"basic\",\n
            \     \"namespace\": \"control-plane-namespace\"\n    },\n    \"spec\":
            {\n      \"version\": \"v2.6\",\n      \"policy\": {\n         \"type\":
            \"Istiod\"\n      },\n      \"telemetry\": {\n         \"type\": \"Istiod\"\n
            \     },\n      \"addons\": {\n        \"prometheus\": {\n          \"enabled\":
            true\n        },\n        \"kiali\": {\n          \"enabled\": true\n
            \       },\n        \"grafana\": {\n          \"enabled\": true\n        }\n
            \     }\n    }\n  },\n  {\n    \"apiVersion\": \"maistra.io/v1\",\n    \"kind\":
            \"ServiceMeshMemberRoll\",\n    \"metadata\": {\n      \"name\": \"default\",\n
            \     \"namespace\": \"control-plane-namespace\"\n    },\n    \"spec\":
            {\n      \"members\": [\n        \"your-project\",\n        \"another-of-your-projects\"
            \n      ]\n    }\n  },\n  {\n    \"apiVersion\": \"maistra.io/v1\",\n
            \   \"kind\": \"ServiceMeshMember\",\n    \"metadata\": {\n      \"name\":
            \"default\",\n      \"namespace\": \"application-namespace\"\n    },\n
            \   \"spec\": {\n      \"controlPlaneRef\": {\n        \"name\": \"basic\",\n
            \       \"namespace\": \"control-plane-namespace\"\n      }\n    }\n  }\n]"
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery
          certified: "false"
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
          createdAt: 2025-09-09T13:46:27CEST
          description: The OpenShift Service Mesh 2 Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh 2.6
            and earlier releases. OpenShift Service Mesh 2 is based on the open source
            Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.0.2 <2.6.11-0'
          operators.openshift.io/infrastructure-features: '["Disconnected","fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/maistra/istio-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Istio control plane installation
            displayName: Istio Service Mesh Control Plane
            kind: ServiceMeshControlPlane
            name: servicemeshcontrolplanes.maistra.io
            version: v2
          - description: Marks the containing namespace as a member of the referenced
              Service Mesh
            displayName: Istio Service Mesh Member
            kind: ServiceMeshMember
            name: servicemeshmembers.maistra.io
            version: v1
          - description: A list of namespaces in Service Mesh
            displayName: Istio Service Mesh Member Roll
            kind: ServiceMeshMemberRoll
            name: servicemeshmemberrolls.maistra.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh 2 is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh 2, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh 2
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh 2 provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh 2 supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### Joining Projects Into a Mesh

          Once an instance of Red Hat OpenShift Service Mesh 2 has been installed, it will only exercise control over services within its own
          project.  Other projects may be added into the mesh using one of two methods:

          1. A **ServiceMeshMember** resource may be created in other projects to add those projects into the mesh.  The
            **ServiceMeshMember** specifies a reference to the **ServiceMeshControlPlane** object that was used to install
            the control plane.  The user creating the **ServiceMeshMember** resource must have permission to *use* the
            **ServiceMeshControlPlane** object.  The adminstrator for the project containing the control plane can grant
            individual users or groups the *use* permissions.

          2. A **ServiceMeshMemberRoll** resource may be created in the project containing the control plane.  This resource
            contains a single *members* list of all the projects that should belong in the mesh.  The resource must be named
            *default*.  The user creating the resource must have *edit* or *admin* permissions for all projects in the
            *members* list.

          ### More Information

          * [Documentation](https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 2
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - maistra
        - servicemesh
        links:
        - name: Red Hat OpenShift Service Mesh 2
          url: https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html
        - name: Istio
          url: https://istio.io/
        - name: Operator Source Code
          url: https://github.com/Maistra/istio-operator
        - name: Bugs
          url: https://issues.redhat.com/projects/OSSM
        maintainers:
        - email: istio-feedback@redhat.com
          name: Red Hat, OpenShift Service Mesh
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:a36d5db6097749c55e946bba3b8ddd13a84b1f6f68b62d0ccbad5a803e9b46fb
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:49bd04cf8d17d568be9649e706dba4a1a5bd7a7a87c075b97ea3b706dd1ed17c
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6b4623c416fc85bd8e38904c16494fa3c4aeae25c90dc0da9763a0a87141bc04
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:d16a60204d266bf4cc266c005fabf175b533b827500f171013884a713c88857a
        - registry.redhat.io/openshift-service-mesh/istio-rhel8-operator@sha256:ca9a5300e3d7b1b7743e8ccf6bfdc2165189f47808775040f5da07d7750186b4
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:f2fa0849e1304457ef69020c090ad79d928faa1a90c3042a6ecaca842c2a97fa
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:4669724b430683bf2e895c5cf941c2d99536117815999d38131e5b6f162bbef0
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:c77183e50a34d33b5e2fede60350f54b18ab3536c3189e331569d5df862d9979
        - registry.redhat.io/openshift4/ose-prometheus@sha256:5337742d305ff580471e9657345b384a950f82be7fd8a55196459008d2fca0a2
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:fdcd165abf3f93810248a6ac14611c1ba7f5e8d48dafb81666a8211d1edf6a5a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:e734ca310e09f737b4f06f3ecfeb9ac12971c63884fdcc27e3bebef9d5b18722
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:b6883bf18708526e22939d083fa0e6b2d0485b61c677b9e39bb4109dc035dc52
        - registry.redhat.io/openshift-service-mesh/grafana-rhel8@sha256:6fb7d50b188dc27ffb9a396edabbfb21767fe438344fd70d4754d1ec7cf27957
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:57eb7ba03f24781501a7ceed2e160ff95317869af6c2caf8f9a83990e6a6c7b9
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:d95762c62087072cadee5948c706619f09202a349e1310f0ed81bfb42f11203f
        - registry.redhat.io/openshift-service-mesh/istio-operator-bundle@sha256:4923f618c4f5dca6fb67b3559436f8fdecfdb42965444440b92d15200e126a11
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel8@sha256:6a420228e684596ce2b900614a874f3e1284a6f2bbbba4c5a71ade158867affe
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:1ca80927334c6af8e386de8d44704f568b4b35d3f7afbe785a999d0fa4efd0bf
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:515c5d9e6700fae981b0ea3807436b250acb1534e9ecf50043e5df8474e66dce
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:ee9c27eea4e786097db0fae63ba99c0272548eb9708c75ce4844e0d43bcaa490
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:877aa4c6546146f0ed42eca52500e1adfc28a1dda80a08500f9cc9e023254ccd
        - registry.redhat.io/openshift-service-mesh/pilot-rhel8@sha256:3dc1bddb070fd530ce6251666989b9a849de90591718a578da4a9900f98d93ec
        - registry.redhat.io/openshift-service-mesh/prometheus-rhel8@sha256:71e193a2d403bb06a7a76686b376985315aa0c32f495b8b9dacd73c7ccce2af3
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:1c19cf86fd05940ef3d0d6e79e6f371db993153f70baedb9107bbe73f236dc24
        - registry.redhat.io/openshift-service-mesh/ratelimit-rhel8@sha256:a3d65983d46dcf47b94f26e7265ed32082208ce08abcf3587a9a4e15c19b274a
        version: 2.6.11-0
      entries:
      - name: servicemeshoperator.v2.6.11
        version: 2.6.11-0
      - name: servicemeshoperator.v2.6.10
        version: 2.6.10-0
      - name: servicemeshoperator.v2.6.9
        version: 2.6.9-0
      - name: servicemeshoperator.v2.6.8
        version: 2.6.8-0
      - name: servicemeshoperator.v2.6.7
        version: 2.6.7-0
      - name: servicemeshoperator.v2.6.6
        version: 2.6.6-0
      - name: servicemeshoperator.v2.6.5
        version: 2.6.5-0
      - name: servicemeshoperator.v2.6.4
        version: 2.6.4-0
      - name: servicemeshoperator.v2.6.3
        version: 2.6.3-0
      - name: servicemeshoperator.v2.6.2
        version: 2.6.2-0
      - name: servicemeshoperator.v2.6.1
        version: 2.6.1-0
      - name: servicemeshoperator.v2.6.0
        version: 2.6.0-0
      - name: servicemeshoperator.v2.5.2
        version: 2.5.2-0
      - name: servicemeshoperator.v2.5.1
        version: 2.5.1-0
      - name: servicemeshoperator.v2.5.0
        version: 2.5.0-0
      - name: servicemeshoperator.v2.4.5
        version: 2.4.5-0
      - name: servicemeshoperator.v2.4.4
        version: 2.4.4-0
      - name: servicemeshoperator.v2.4.3
        version: 2.4.3-0
      - name: servicemeshoperator.v2.4.2
        version: 2.4.2-0
      - name: servicemeshoperator.v2.4.1
        version: 2.4.1-0
      - name: servicemeshoperator.v2.4.0
        version: 2.4.0-0
      - name: servicemeshoperator.v2.3.3
        version: 2.3.3-0
      - name: servicemeshoperator.v2.3.2
        version: 2.3.2-0
      - name: servicemeshoperator.v2.3.1
        version: 2.3.1-0
      - name: servicemeshoperator.v2.3.0
        version: 2.3.0-0
      - name: servicemeshoperator.v2.2.3
        version: 2.2.3-0
      - name: servicemeshoperator.v2.2.2
        version: 2.2.2-0
      - name: servicemeshoperator.v2.2.1
        version: 2.2.1-0
      - name: servicemeshoperator.v2.2.0
        version: 2.2.0-0
      - name: servicemeshoperator.v2.1.3
        version: 2.1.3-0
      - name: servicemeshoperator.v2.1.2
        version: 2.1.2-0
      - name: servicemeshoperator.v2.1.1
        version: 2.1.1-0
      - name: servicemeshoperator.v2.1.0
        version: 2.1.0-0
      - name: servicemeshoperator.v2.0.8
        version: 2.0.8-0
      name: stable
    defaultChannel: stable
    packageName: servicemeshoperator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Arctera US LLC
      provider-url: https://www.arctera.io
    name: infoscale-licensing-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infoscale-licensing-operator.v8.0.220
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Developer"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator@sha256:feeabfe4ecd36205306e3f3bf6c11517cfee735d7ae7eb4350abd01e9d76610b
          createdAt: "2022-06-22T16:36:59Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          olm.skipRange: <8.0.220
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Veritas
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Veritas
        - InfoScale
        - Licensing
        - Veritas Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator@sha256:2f3de2bf46920cfe8c251011fc99841b43999561c1d3fe44850b205e94585a68
        - registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator-bundle@sha256:6d9eabdb4f645aa1b8b6c08ca94f9ec89466cdc35b3cb02aaba22e160d8fd9ea
        version: 8.0.220
      entries:
      - name: infoscale-licensing-operator.v8.0.220
        version: 8.0.220
      - name: infoscale-licensing-operator.v8.0.110
        version: 8.0.110
      - name: infoscale-licensing-operator.v8.0.100
        version: 8.0.100
      name: 8.0.200x
    - currentCSV: infoscale-licensing-operator.v8.0.330
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator@sha256:b357b2203466516684c8fbc209757a98a45ec2376981f8699faf7dd5e37486a3
          createdAt: "2022-06-22T16:36:59Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Veritas Technologies LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Veritas
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Veritas
        - InfoScale
        - Licensing
        - Veritas Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Veritas Technologies LLC
          url: https://www.veritas.com
        relatedImages:
        - registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator-bundle@sha256:5484f8ecf079ee126d24c05e1bcb06467146b3b8e751e90e0fd68f3e933125f0
        - registry.connect.redhat.com/veritas-technologies/infoscale-licensing-operator@sha256:b357b2203466516684c8fbc209757a98a45ec2376981f8699faf7dd5e37486a3
        version: 8.0.330
      entries:
      - name: infoscale-licensing-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-licensing-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-licensing-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-licensing-operator.v8.0.301
        version: 8.0.301
      name: 8.0.300x
    - currentCSV: infoscale-licensing-operator.v8.0.410
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:1ebab8aec17e0e5260678616696be43b720f801127c97820b3a07f3a8cb73e6a
          createdAt: "2022-06-22T16:36:59Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Arctera
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Arctera
        - InfoScale
        - Licensing
        - Arctera Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-license-operator-bundle@sha256:f67479555b113a3ff194370dab48a517005001ce412a1d2ef1ecded9dd1c95f5
        - registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:1ebab8aec17e0e5260678616696be43b720f801127c97820b3a07f3a8cb73e6a
        version: 8.0.410
      entries:
      - name: infoscale-licensing-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-licensing-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-licensing-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-licensing-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-licensing-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-licensing-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-licensing-operator.v8.0.301
        version: 8.0.301
      name: 8.0.400x
    - currentCSV: infoscale-licensing-operator.v9.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:89f5066e017b4bff78ce790482dc8369fd180f05f8c5bc6cf69d8bfc8a73a87f
          createdAt: "2025-09-10T10:17:07Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Arctera
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Arctera
        - InfoScale
        - Licensing
        - Arctera Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-license-operator-bundle@sha256:61bc6246f9035d22572a63176f66b9789382d45d412f3585f9a784c3f8647f9c
        - registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:89f5066e017b4bff78ce790482dc8369fd180f05f8c5bc6cf69d8bfc8a73a87f
        version: 9.0.1
      entries:
      - name: infoscale-licensing-operator.v9.0.1
        version: 9.0.1
      name: beta
    - currentCSV: infoscale-licensing-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:a01d6ad7c33203ddbf6e4fc1eef6a83c7727627bff9f64b085a1bd4f38be434c
          createdAt: "2025-09-10T10:17:07Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Arctera
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Arctera
        - InfoScale
        - Licensing
        - Arctera Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-license-operator-bundle@sha256:06064589e5d1c391ad3126757269fec764e60e30e4f778b4ad32e2041198dbad
        - registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:a01d6ad7c33203ddbf6e4fc1eef6a83c7727627bff9f64b085a1bd4f38be434c
        version: 9.1.0
      entries:
      - name: infoscale-licensing-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-licensing-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-licensing-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-licensing-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-licensing-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-licensing-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-licensing-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-licensing-operator.v8.0.301
        version: 8.0.301
      name: fast
    - currentCSV: infoscale-licensing-operator.v9.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "vlic.veritas.com/v1",
                "kind": "License",
                "metadata": {
                  "name": "license-dev"
                },
                "spec": {
                  "licenseEdition": "Enterprise"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:a01d6ad7c33203ddbf6e4fc1eef6a83c7727627bff9f64b085a1bd4f38be434c
          createdAt: "2025-09-10T10:17:07Z"
          description: InfoScale™ Licensing Operator manages the lifecycle of the
            Licensing for InfoScale™ cluster
          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: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorframework.io/suggested-namespace: infoscale-vtas
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Arctera US LLC
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: License is the Schema for the licenses API
            displayName: License
            kind: License
            name: licenses.vlic.veritas.com
            version: v1
        description: InfoScale™ Licensing Operator provides license to use Arctera
          Products.
        displayName: InfoScale™ Licensing Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Arctera
        - InfoScale
        - Licensing
        - Arctera Licensing
        - VLIC
        - Storage
        - Data Storage
        - SDS
        - Software Defined Storage
        links:
        - name: InfoScale™ Licensing Operator
          url: https://licensing-operator.domain
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: Arctera US LLC
          url: https://www.arctera.io
        relatedImages:
        - registry.connect.redhat.com/arctera/infoscale-license-operator-bundle@sha256:06064589e5d1c391ad3126757269fec764e60e30e4f778b4ad32e2041198dbad
        - registry.connect.redhat.com/arctera/infoscale-license-operator@sha256:a01d6ad7c33203ddbf6e4fc1eef6a83c7727627bff9f64b085a1bd4f38be434c
        version: 9.1.0
      entries:
      - name: infoscale-licensing-operator.v9.1.0
        version: 9.1.0
      - name: infoscale-licensing-operator.v8.0.410
        version: 8.0.410
      - name: infoscale-licensing-operator.v8.0.409
        version: 8.0.409
      - name: infoscale-licensing-operator.v8.0.400
        version: 8.0.400
      - name: infoscale-licensing-operator.v8.0.330
        version: 8.0.330
      - name: infoscale-licensing-operator.v8.0.320
        version: 8.0.320
      - name: infoscale-licensing-operator.v8.0.310
        version: 8.0.310
      - name: infoscale-licensing-operator.v8.0.301
        version: 8.0.301
      name: stable
    defaultChannel: fast
    packageName: infoscale-licensing-operator
    provider:
      name: Arctera US LLC
      url: https://www.arctera.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: patch-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: patch-operator.v0.1.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "Patch",
                "metadata": {
                  "name": "test-complex-patch"
                },
                "spec": {
                  "patches": {
                    "test-complex-patch": {
                      "patchTemplate": "metadata:\n  annotations:\n    {{ (index . 1).metadata.name }}: {{ (index . 2).metadata.name }}    \n",
                      "patchType": "application/strategic-merge-patch+json",
                      "sourceObjectRefs": [
                        {
                          "apiVersion": "v1",
                          "kind": "Namespace",
                          "name": "test-patch-operator"
                        },
                        {
                          "apiVersion": "v1",
                          "kind": "ServiceAccount",
                          "name": "default",
                          "namespace": "test-patch-operator"
                        }
                      ],
                      "targetObjectRef": {
                        "apiVersion": "v1",
                        "kind": "ServiceAccount",
                        "name": "test",
                        "namespace": "test-patch-operator"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/patch-operator@sha256:030ade9b9428deca3ac6390618dc4d6e6d728577d1467a22dc4d4b68c9848886
          createdAt: "2024-05-10T14:07:19Z"
          description: An operator to apply patches to Kubernetes objects in a declarative
            way.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: patch-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/patch-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Patch
            name: patches.redhatcop.redhat.io
            version: v1alpha1
        description: "The patch operator helps with defining patches in a declarative
          way. This operator has two main features:\n\n1. [ability to patch an object
          at creation time via a mutating webhook](#creation-time-patch-injection)\n2.
          [ability to enforce patches on one or more objects via a controller](#runtime-patch-enforcement)\n
          \n## Creation-time patch injection\n\nWhy apply a patch at creation time
          when you could directly create the correct object? The reason is that sometime
          the correct value depends on configuration set on the specific cluster in
          which the object is being deployed. For example, an ingress/route hostname
          might depend on the specific cluster. Consider the following example based
          on cert-manager:\n \n```yaml\napiVersion: cert-manager.io/v1\nkind: ClusterIssuer\nmetadata:\n
          \ name: letsencrypt-issuer\nspec:\n  acme:\n    server: 'https://acme-v02.api.letsencrypt.org/directory'\n
          \   email: {{ .Values.letsencrypt.email }}\n    privateKeySecretRef:\n      name:
          letsencrypt-staging\n    solvers:  \n    - dns01:\n        route53:\n          accessKeyID:
          << access_key >>\n          secretAccessKeySecretRef:\n            name:
          cert-manager-dns-credentials\n            key: aws_secret_access_key\n          region:
          << region >>\n          hostedZoneID: << hosted_zone_id >>\n ```\n\nIn this
          example the fields: `<< access_key >>`, `<< region >>` and `<< hosted_zone_id
          >>` are dependent on the specific region in which the cluster is being deployed
          and in many cases they are discoverable from other configurations already
          present in the cluster. If you want to deploy the above Cluster Issuer object
          with a gitops approach, then there is no easy way to discover those values.
          The solution so far is to manually discover those values and create a different
          gitops configuration for each cluster. But consider if you could look up
          values at deploy time based on the cluster you are deploying to. Here is
          how this object might look:\n\n```yaml\napiVersion: cert-manager.io/v1\nkind:
          ClusterIssuer\nmetadata:\n  name: letsencrypt-issuer\n  namespace: {{ .Release.Namespace
          }}\n  annotations:\n    \"redhat-cop.redhat.io/patch\": |\n      spec:\n
          \       acme:\n        - dns01:\n            route53:\n              accessKeyID:
          {{ (lookup \"v1\" \"Secret\" .metadata.namespace \"cert-manager-dns-credentials\").data.aws_access_key_id
          | b64dec }}\n              secretAccessKeySecretRef:\n                name:
          cert-manager-dns-credentials\n                key: aws_secret_access_key\n
          \             region: {{ (lookup \"config.openshift.io/v1\" \"Infrastructure\"
          \"\" \"cluster\").status.platformStatus.aws.region }}\n              hostedZoneID:
          {{ (lookup \"config.openshift.io/v1\" \"DNS\" \"\" \"cluster\").spec.publicZone.id
          }} \nspec:\n  acme:\n    server: 'https://acme-v02.api.letsencrypt.org/directory'\n
          \   email: {{ .Values.letsencrypt.email }}\n    privateKeySecretRef:\n      name:
          letsencrypt-staging\n    solvers:  \n    - dns01:\n        route53:\n          accessKeyID:
          << access_key >>\n          secretAccessKeySecretRef:\n            name:
          cert-manager-dns-credentials\n            key: aws_secret_access_key\n          region:
          << region >>\n          hostedZoneID: << hosted_zone_id >>\n ```\n\nThe
          annotation specifies a patch that will be applied by a [MutatingWebhook](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/),
          as you can see the three values are now looked up from different configurations
          in the cluster.\n\nTwo annotations influences the behavior of this MutatingWebhook\n
          \n1. \"redhat-cop.redhat.io/patch\" : this is the patch itself. The patch
          is evaluated as a template with the object itself as it's only parameter.
          The template is expressed in golang template notation and supports the same
          functions as helm template including the [lookup](https://helm.sh/docs/chart_template_guide/functions_and_pipelines/#using-the-lookup-function)
          function which plays a major role here. The patch must be expressed in yaml
          for readability. It will be converted to json by the webhook logic.\n2.
          \"redhat-cop.redhat.io/patch-type\" : this is the type of json patch. The
          possible values are: `application/json-patch+json`, `application/merge-patch+json`
          and `application/strategic-merge-patch+json`. If this annotation is omitted
          it defaults to strategic merge.\n\n### Security Considerations\n \nThe lookup
          function, if used by the template, is executed with a client which impersonates
          the user issuing the object creation/update request. This should prevent
          security permission leakage.\n\n### Installing the creation time webhook\n
          \nThe creation time webhook is not installed by the operator. This is because
          there is no way to know which specific object type should be intercepted
          and intercepting all of the types would be too inefficient. It's up to the
          administrator then to install the webhook. Here is some guidance.\n\nIf
          you installed the operator via OLM, use the following webhook template:\n\n```yaml\napiVersion:
          admissionregistration.k8s.io/v1\n kind: MutatingWebhookConfiguration\nmetadata:\n
          \ name: patch-operator-inject\n  annotations:\n    service.beta.openshift.io/inject-cabundle:
          \"true\"\nwebhooks:\n - admissionReviewVersions:\n  - v1\n  clientConfig:\n
          \   service:\n      name: patch-operator-webhook-service\n      namespace:
          patch-operator\n      path: /inject\n  failurePolicy: Fail\n  name: patch-operator-inject.redhatcop.redhat.io\n
          \ rules:\n  - << add your intercepted objects here >>\n  sideEffects: None\n```\n\nIf
          you installed the operator via the Helm chart and are using cert-manager,
          use the following webhook template:\n\n```yaml\napiVersion: admissionregistration.k8s.io/v1\n
          kind: MutatingWebhookConfiguration\nmetadata:\n  name: patch-operator-inject\n
          \ annotations:\n    cert-manager.io/inject-ca-from: '{{ .Release.Namespace
          }}/webhook-server-cert'\n webhooks:\n- admissionReviewVersions:\n  - v1\n
          \ clientConfig:\n    service:\n      name: patch-operator-webhook-service\n
          \     namespace: patch-operator\n      path: /inject\n  failurePolicy: Fail\n
          \ name: patch-operator-inject.redhatcop.redhat.io\n  rules:\n  - << add
          your intercepted objects here >>\n  sideEffects: None\n```  \n\nYou should
          need to enable the webhook only for `CREATE` operations. So for example
          to enable the webhook on configmaps:\n\n```yaml\n  rules:\n  - apiGroups:\n
          \   - \"\"\n    apiVersions:\n    - v1\n    operations:\n    - CREATE\n
          \   resources:\n    - configmaps\n```\n\n## Runtime patch enforcement\n\nThere
          are situations when we need to patch pre-existing objects. Again this is
          a use case that is hard to model with gitops operators which will work only
          on object that they own. Especially with sophisticated Kubernetes distributions,
          it is not uncommon that a Kubernetes instance, at installation time, is
          configured with some default settings. Changing those configurations means
          patching those objects. For example, let's take the case of OpenShift Oauth
          configuration. This object is present by default and it is expected to be
          patched with any newly enabled authentication mechanism. This is how it
          looks like after installation:\n\n```yaml\napiVersion: config.openshift.io/v1\n
          kind: OAuth\nmetadata:\n  name: cluster\n  ownerReferences:\n    - apiVersion:
          config.openshift.io/v1\n      kind: ClusterVersion\n      name: version\n
          \     uid: 9a9d450b-3076-4e30-ac05-a889d6341fc3\n  resourceVersion: '20405124'\n
          spec: []\n```\n\nIf we need to patch it we can use the patch controller
          and the `Patch` object as follows:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n
          kind: Patch\nmetadata:\n  name: gitlab-ocp-oauth-provider\n  namespace:
          openshift-config\nspec:\n  serviceAccountRef:\n    name: default\n  patches:\n
          \   gitlab-ocp-oauth-provider:\n      targetObjectRef:\n        apiVersion:
          config.openshift.io/v1\n        kind: OAuth\n        name: cluster\n      patchTemplate:
          |\n        spec:\n          identityProviders:\n          - name: my-github
          \n            mappingMethod: claim \n            type: GitHub\n            github:\n
          \             clientID: \"{{ (index . 1).data.client_id | b64dec }}\" \n
          \             clientSecret: \n                name: ocp-github-app-credentials\n
          \             organizations: \n              - my-org\n              teams:
          []            \n      patchType: application/merge-patch+json\n      sourceObjectRefs:\n
          \     - apiVersion: v1\n        kind: Secret\n        name: ocp-github-app-credentials\n
          \       namespace: openshift-config\n```\n\nThis will cause the OAuth object
          to be patched and the patch to be enforced. That means that if anything
          changes on the secret that we use a parameter (which may be rotated) or
          in Oauth object itself, the patch will be reapplied. In this case we are
          adding a gitlab authentication provider.\n\n A `patch` has the following
          fields:\n\n`targetObjectRef` this refers to the object(s) receiving the
          patch. Mutliple object can be selected based on the following rules:\n \n|
          Namespaced Type | Namespace | Name | Selection type |\n| --- | --- | ---
          | --- |\n| yes | null | null | multiple selection across namespaces |\n|
          yes | null | not null | multiple selection across namespaces where the name
          corresponds to the passed name |\n| yes | not null | null | multiple selection
          within a namespace |\n| yes | not null | not nul | single selection |\n|
          no | N/A | null | multiple selection  |\n| no | N/A | not null | single
          selection |\n\nSelection can be further narrowed down by filtering by labels
          and/or annotations using the `labelSelector` and `annotationSelector` fields.
          The patch will be applied to all of the selected instances.\n\n`sourceObjectRefs`
          these are the objects that will be watched and become part of the parameters
          of the patch template. Name and Namespace of sourceRefObjects are interpreted
          as golang templates with the current target instance and the only parameter.
          This allows to select different source object for each target object.\n
          \nSo, for example, with this patch:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\n
          kind: Patch\nmetadata:\n  name: multiple-namespaced-targets-patch\nspec:\n
          \ serviceAccountRef:\n    name: default\n  patches:\n    multiple-namespaced-targets-patch:\n
          \     targetObjectRef:\n        apiVersion: v1\n        kind: ServiceAccount\n
          \       name: deployer\n      patchTemplate: |\n        metadata:\n          annotations:\n
          \           {{ (index . 1).metadata.uid }}: {{ (index . 1) }}\n      patchType:
          application/strategic-merge-patch+json\n      sourceObjectRefs:\n      -
          apiVersion: v1\n        kind: ServiceAccount\n        name: default\n        namespace:
          \"{{ .metadata.namespace }}\"\n        fieldPath: $.metadata.uid\n```\n\nThe
          `deployer` service accounts from all namespaces are selected as target of
          this patch, each patch template will receive a different parameter and that
          is the `default` service account of the same namespace as the namespace
          of the `deployer` service account being processed.\n\n`sourceObjectRefs`
          also have the `fieldPath` field which can contain a jsonpath expression.
          If a value is passed the jsonpath expression will be calculate for the current
          source object and the result will be passed as parameter of the template.\n\n`patchTemplate`
          This is the the template that will be evaluated. The result must be a valid
          patch compatible with the requested type and expressed in yaml for readability.
          The parameters passed to the template are the target object and then the
          all of the source object. So if you want to refer to the target object in
          the template you can use this expression `(index . 0)`. Higher indexes refer
          to the sourceObjectRef array. The template is expressed in golang template
          notation and supports the same functions as helm template.\n\n`patchType`
          is the type of the json patch. The possible values are: `application/json-patch+json`,
          `application/merge-patch+json` and `application/strategic-merge-patch+json`.
          If this annotation is omitted it defaults to strategic merge.\n\n### Patch
          Controller Security Considerations\n\nThe patch enforcement enacted by the
          patch controller is executed with a client which uses the service account
          referenced by the `serviceAccountRef` field. So before a patch object can
          actually work an administrator must have granted the needed permissions
          to a service account in the same namespace. The `serviceAccountRef` will
          default to the `default` service account if not specified.\n\n### Patch
          Controller Performance Considerations\n\nThe patch controller will create
          a controller-manager and per `Patch` object and a reconciler for each of
          the `PatchSpec` defined in the array on patches in the `Patch` object.\nThese
          reconcilers share the same cached client. In order to be able to watch changes
          on target and source objects of a `PatchSpec`, all of the target and source
          object type instances will be cached by the client. This is a normal behavior
          of a controller-manager client, but it implies that if you create patches
          on object types that have many instances in etcd (Secrets, ServiceAccounts,
          Namespaces for example), the patch operator instance will require a significant
          amount of memory. A way to contain this issue is to try to aggregate together
          `PatchSpec` that deal with the same object types. This will cause those
          object type instances to cached only once.  \n"
        displayName: Patch Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - patch
        - enforcing
        - declarative
        links:
        - name: Patch Operator
          url: https://github.com/redhat-cop/patch-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/patch-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/community-operator-pipeline-prod/patch-operator@sha256:437f5b7c661d3e9bc2c8ac13b0c8f3565f685b9e5ef52791312bc64d55e2e476
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/patch-operator@sha256:030ade9b9428deca3ac6390618dc4d6e6d728577d1467a22dc4d4b68c9848886
        version: 0.1.11
      entries:
      - name: patch-operator.v0.1.11
        version: 0.1.11
      - name: patch-operator.v0.1.10
        version: 0.1.10
      - name: patch-operator.v0.1.9
        version: 0.1.9
      - name: patch-operator.v0.1.8
        version: 0.1.8
      - name: patch-operator.v0.1.7
        version: 0.1.7
      - name: patch-operator.v0.1.6
        version: 0.1.6
      - name: patch-operator.v0.1.5
        version: 0.1.5
      - name: patch-operator.v0.1.4
        version: 0.1.4
      - name: patch-operator.v0.1.3
        version: 0.1.3
      - name: patch-operator.v0.1.2
        version: 0.1.2
      - name: patch-operator.v0.1.1
        version: 0.1.1
      - name: patch-operator.v0.1.0
        version: 0.1.0
      - name: patch-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: patch-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Performance
      provider-url: ""
    name: cluster-impairment-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-impairment-operator.v1.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "all-impairments"
                },
                "spec": {
                  "duration": 480,
                  "egress": {
                    "bandwidth": 10000,
                    "latency": 50,
                    "loss": 0.02
                  },
                  "ingress": {
                    "bandwidth": 10000,
                    "latency": 50,
                    "loss": 0.02
                  },
                  "interfaces": [
                    "ens2f0"
                  ],
                  "linkFlapping": {
                    "downTime": 30,
                    "enable": true,
                    "upTime": 120
                  },
                  "startDelay": 5
                }
              },
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "duplication"
                },
                "spec": {
                  "duration": 60,
                  "egress": {
                    "duplication": 25
                  },
                  "ingress": {
                    "duplication": 25
                  },
                  "interfaces": [
                    "ens3"
                  ],
                  "startDelay": 5
                }
              },
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "two-min-flap"
                },
                "spec": {
                  "duration": 480,
                  "interfaces": [
                    "ens2f0"
                  ],
                  "linkFlapping": {
                    "downTime": 120,
                    "enable": true,
                    "upTime": 120
                  },
                  "startDelay": 5
                }
              },
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "typical-scenario"
                },
                "spec": {
                  "duration": 30,
                  "egress": {
                    "latency": 50
                  },
                  "ingress": {
                    "latency": 50
                  },
                  "interfaces": [
                    "ens2f0",
                    "eno1"
                  ],
                  "loss": 0.02,
                  "startDelay": 5
                }
              },
              {
                "apiVersion": "apps.redhat.com/v1alpha1",
                "kind": "ClusterImpairment",
                "metadata": {
                  "name": "uneven-latency"
                },
                "spec": {
                  "duration": 60,
                  "egress": {
                    "latency": 100
                  },
                  "ingress": {
                    "latency": 10
                  },
                  "interfaces": [
                    "ens2f0"
                  ],
                  "nodeSelector": {
                    "key": "node-role.kubernetes.io/worker",
                    "value": ""
                  },
                  "startDelay": 5
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking, Developer Tools
          containerImage: quay.io/redhat-performance/cluster-impairment-operator:1.0.4
          createdAt: "2021-08-11 12:15:00"
          description: Run Impairments on Kubernetes/Openshift Nodes
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/redhat-performance/cluster-impairment-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterImpairment
            name: clusterimpairments.apps.redhat.com
            version: v1alpha1
        description: "cluster-impairment-operator is an operator designed to automate
          the application of impairments to the nodes in a cluster.\n\n## Features\n\nTraffic
          Direction:\n\n* Egress impairments affect the traffic going out.    \n*
          Ingress impairments affect the traffic coming in. (Ingress impairments require
          the kernel module IFB.)\n\n### Impairments\n\n| Impairment    | Description
          \                               | Unit    | Uses Netem | Correlation Supported
          |\n|---------------|--------------------------------------------|---------|------------|-----------------------|\n|
          Bandwidth     | The bandwidth limit                        | kbit/s  | Yes
          \       | No                    |\n| Latency       | The delay of the packets
          \                  | ms      | Yes        | Yes                   |\n| Packet
          Loss   | The percent of packets that are dropped    | percent | Yes        |
          Yes                   |\n| Corruption    | The percent of packets that are
          corrupted  | percent | Yes        | Yes                   |\n| Duplication
          \  | The percent of packets that are duplicated | percent | Yes        |
          Yes                   |\n| Link Flapping | Turns the interface on and off
          \            | bool    | No         | No                    |\n\n\nOn the
          tested environment (RHEL CoreOS 48.84), the impairments can be used alongside
          link flapping.\n\n\n#### Latency Options\n\nIn addition to simply delaying
          the packets, there are advanced latency options.\n\n##### Jitter\n\nSemi-randomly
          adds or subtracts from the latency according to the distribution up to the
          amount specified.\nIf latency is 100ms, and jitter is 10ms, the actual latency
          will vary 100±10ms.\n\n\n##### Distribution\n\nThe distribution of the jitter.
          The options are:\n* Normal\n* Uniform\n* Pareto\n* Paretonormal\n\n#####
          Jitter correlation\n\nThe percent chance that the next latency's jitter
          value will correlate with the preceeding latency.\n\n##### Reorder\n\nThe
          percentage of packets that are not delayed, causing a reorder due to them
          being sent before the delayed ones.\nApplying jitter itself has the potential
          to also cause reordering.\n\n##### Reorder correlation\n\nThe percet chance
          that the value for the next reorder will correlate with the preceeding value.\n\n####
          Loss options\n\n##### Correlation\n\nThe percent chance that the previous
          loss value for a packet correlates with the loss value for the next packet.\n\n####
          Corruption options\n\n###### Corruption\n\nThe percent chance that each
          packet will be corrupted.\n\n##### Corruption correlation\n\nThe percet
          chance that the value for the next corruption will correlate with the preceeding
          value.\n\n#### Duplication options\n\n##### Duplication\n\nThe percent chance
          that each packet will be duplicated.\n\n##### Duplication correlation\n\nThe
          percet chance that the value for the next duplication will correlate with
          the preceeding value.\n\n\n\n## Configuration\n\nHere is an example of the
          ClusterImpairment custom resource.\n\n\n```\n\napiVersion: apps.redhat.com/v1alpha1\nkind:
          ClusterImpairment\nmetadata:\n  name: test-impairment-cr\nspec:\n  duration:
          30 # seconds\n  startDelay: 5 # seconds. It typically takes about 2-3 seconds
          for the Daemonset to run\n  interfaces:\n  - \"ens2f0\"\n  ingress: # uses
          ifb\n    bandwidth: 0 # kbit\n    latency: 10 # ms\n    latencyOptions:\n
          \     jitter: 5 # ms\n      jitterCorrelation: 25 # percent\n      distribution:
          normal\n      reorder: 25 # percent of packets that will skip the delay\n
          \     reorderCorrelation: 25 # percent\n    loss: 0 # percent\n    lossOptions:\n
          \     correlation: 25 # percent\n    corruption: 0.1 # percent\n    corruptionOptions:\n
          \     correlation: 25 # percent\n    duplication: 1 # percent\n    duplicationOptions:\n
          \     correlation: 25 # percent\n  egress:\n    bandwidth: 0 # kbit\n    latency:
          100 # ms\n    loss: 0 # percent\n  linkFlapping:\n    enable: false\n    downTime:
          3 # Seconds\n    upTime: 3 # Seconds\n  nodeSelector:\n    key: \"node-role.kubernetes.io/worker\"\n
          \   value: \"\"\n    \n```\n\n#### Interfaces\n\nThe interfaces configuration
          option is a list of all interfaces that the impairments should be applied
          to. The current implementation will error out once it hits an invalid interface.\n\nIf
          an invalid interface is found, it will print out the list of interfaces.\n\n####
          Node Selector\n\nThe default node selector is all worker nodes, but you
          can change it to whatever node selector you want by setting the key and
          value.\nThere is a toleration to allow it to run on master nodes if the
          node selector includes master nodes.\n\n#### Duration\n\nThe number of seconds
          the impairments should run. It will try to sync the start and end time between
          all pods.\nIf set to -1, it will run indefinitely (a year), until you remove
          the ClusterImpairment custom resource. This is good for testing that requires
          steady impairments.\n\nIf the script is link flapping, set this value to
          be short enough so that if the link flap interrupts communication between
          the nodes, the daemonset will remove itself.\n\n#### Start Delay\n\nThe
          delay before starting the script. If you want the pods to be in sync, a
          minimum of a few seconds should be used because the pods take time to start
          up.\n\nYou can also utilize this feature to run an separate impairment after
          another. Just apply two resources at the same time, but add the duration
          and start delay of the first to the start delay of the second.\n\n#### Ingress
          and Egress\n\nThe configuration sections \"ingress\" and \"egress\" apply
          to each direction.\n\n##### Examples:\n\n##### Example 1\n\n\nIn this example,
          egress latency is set to 100ms, but the ingress latency is set to 10ms.
          So the latency to the interface will end up being 10ms, but 100ms going
          out. When pinging, this will result in 110ms of latency.\n\n```\n\napiVersion:
          apps.redhat.com/v1alpha1\nkind: ClusterImpairment\nmetadata:\n  name: uneven-latency\nspec:\n
          \ duration: 60\n  startDelay: 5\n  interfaces:\n  - \"ens2f0\"\n  ingress:\n
          \   latency: 10 # ms\n  egress:\n    latency: 100 # ms\n\n```\n\n##### Example
          2\n\n\nIn this example, link flapping will be enabled, and it will turn
          the interface on and off every 2 minutes. That is long enough for kubernetes
          to determine that a node is unavailable.\n\n```\n\napiVersion: apps.redhat.com/v1alpha1\nkind:
          ClusterImpairment\nmetadata:\n  name: two-min-flap\nspec:\n  duration: 480\n
          \ startDelay: 5\n  interfaces:\n  - \"ens2f0\"\n  linkFlapping:\n    enable:
          true\n    downTime: 120 # Seconds\n    upTime: 120 # Seconds\n\n```\n\n#####
          Example 3\n\n\nIn this example, a realistic set of impairments is applied
          to `ens2f0` and `eno1` for 30 seconds:\n\n```\n\napiVersion: apps.redhat.com/v1alpha1\nkind:
          ClusterImpairment\nmetadata:\n  name: typical-scenario\nspec:\n  duration:
          30 # seconds\n  startDelay: 5 # seconds\n  interfaces:\n  - \"ens2f0\"\n
          \ - \"eno1\"\n  egress:\n    latency: 50 # ms. Bidirectional, so total of
          100ms\n  ingress:\n    latency: 50 # ms. Bidirectional, so total of 100ms\n
          \ loss: 0.02 # percent\n\n```\n\n##### Example 4\n\n\nIn this example, a
          combination of latency, packet loss, bandwidth, and link flapping is applied.\n\n```\n\napiVersion:
          apps.redhat.com/v1alpha1\nkind: ClusterImpairment\nmetadata:\n  name: all-impairments\nspec:\n
          \ duration: 480 # seconds\n  startDelay: 5 # seconds\n  interfaces:\n  -
          \"ens2f0\"\n  egress:\n    latency: 50 # ms. Bidirectional, so total of
          100ms\n    loss: 0.02 # percent\n    bandwidth: 1000 # 1000 kbit/s, about
          1 mbit/s\n  ingress:\n    latency: 50 # ms. Bidirectional, so total of 100ms\n
          \   loss: 0.02 # percent\n    bandwidth: 1000 # 1000 kbit/s, about 1 mbit/s\n
          \ linkFlapping:\n    enable: true\n    downTime: 30 # Seconds\n    upTime:
          120 # Seconds\n\n```\n\n##### Example 5\n\n\nIn this example, packet duplicaiton
          is applied.\n\n\n```\n\napiVersion: apps.redhat.com/v1alpha1\nkind: ClusterImpairment\nmetadata:\n
          \ name: duplication\nspec:\n  duration: 60\n  startDelay: 5\n  interfaces:\n
          \ - \"ens3\"\n  ingress:\n    duplication: 25 # percent\n  egress:\n    duplication:
          25 # percent\n\n```\n\n## Setup\n\n### Requirements\n\n1. You need `make`
          installed.\n2. You need access to the kubernetes cluster with a kubeconfig.\n\n###
          Installation\n\nTo run using the current latest image:\n1. Clone the repository.\n2.
          Run `make deploy` with KUBECONFIG environment variable set to the location
          of the kubeconfig.\n\nTo run with your own code, there are more steps.\n1.
          Fork the repository.\n2. Clone to a machine that has access to the Kubernetes
          cluster and the kubeconfig.\n3. Modify the makefile to change the `IMG`
          variable to your image repository. If you do not have podman installed,
          also change podman to docker.\n4. Run `make docker-build` then `make docker-push`.\n5.
          Then run `make deploy`\n\n### Deploying from operator-hub\n\n*Important*
          You must manually apply the serviceaccount!\n\nFirst, Follow the instructions
          on this site to deploy from here.\n\nNext, apply the manifest \"serviceaccount.yaml\"
          from the manifests folder.\n\nThen you can apply your ClusterImpairment
          resources.\n\n## Running impairments\n\nFirst, configure a ClusterImpairment
          type's spec with the information for the impairment you want to run. Most
          importantly, set the interface(s). You can list the interfaces with `ifconfig`.
          If an invalid interface is set, the pod's logs will show `ifconfig` output.\n\n\nOnce
          the clusterimpairment type is set, apply it and it will work.\n\n\nTo re-run
          an impairment, delete the impairment with `oc delete -f path/to/manifest.yaml`,
          then apply it again.\n\n\n## Limitations\n\n\n### Multiple Impairments\n\n\nYou
          should avoid any configurations that apply impairments to the same interface
          on the same node. There are potential conflicts. The worker pod will attempt
          to remove all impairments on that interface before applying new ones.\n\n\nInstead,
          take advantage of the full control of both ingress and egress impairments
          from within the same ClusterImpairment resource.\n\n\nThere is currently
          a configured limit of 20 ClusterImpairment resources working at the same
          time. If that is a limitation for your use case, you can change it in `config/manager/manager.yaml`
          or you can try to find a way to make each ClusterImpairment do more.\n\n###
          Traffic Control (TC)\n\nTraffic control is how cluster-impairment-operator
          applies the latency, bandwidth, and packet loss impairments. The limitation
          is due to Linux not being realtime operating system, so the impairment will
          not be perfectly consistent.\n\n### Link Flapping\n\nWhen link flapping,
          if you flap the link that Kubernetes uses to communicate with the pods,
          you may be unable to remove the pod until the link is on long enough for
          Kubernetes to communicate with the impaired node.\n\n\nIn this case, it
          is helpful to set the duration properly instead of running for an indefinite
          or large amount of time, because the node will properly go back to the unimpaired
          state at that time.\n\n\nIf the cluster becomes offline due to the link
          flapping when you do not want it to be offline, soft restarting the nodes
          after removing the custom resource should remove all impairments.\n"
        displayName: cluster-impairment-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network
        - impairment
        - kubernetes
        - openshift
        - tc
        - trafficcontrol
        links:
        - name: Cluster Impairment Operator
          url: https://github.com/redhat-performance/cluster-impairment-operator
        maintainers:
        - email: joconnel@redhat.com
          name: Jared O'Connell
        - email: akrzos@redhat.com
          name: Alex Krzos
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat Performance
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/cluster-impairment-operator@sha256:6fd114eb8f525f670e505373c2999a4e66b53beda988e99b267204d2fe0e1b4f
        - quay.io/redhat-performance/cluster-impairment-operator:1.0.4
        version: 1.0.4
      entries:
      - name: cluster-impairment-operator.v1.0.4
        version: 1.0.4
      - name: cluster-impairment-operator.v1.0.3
        version: 1.0.3
      - name: cluster-impairment-operator.v1.0.2
        version: 1.0.2
      - name: cluster-impairment-operator.v1.0.1
        version: 1.0.1
      name: beta
    defaultChannel: beta
    packageName: cluster-impairment-operator
    provider:
      name: Red Hat Performance
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: dpu-network-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: dpu-network-operator.4.13.0-202309181427
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dpu.openshift.io/v1alpha1",
                "kind": "OVNKubeConfig",
                "metadata": {
                  "name": "ovnkubeconfig-sample"
                },
                "spec": {
                  "kubeConfigFile": "tenant-cluster-1-kubeconf",
                  "nodeSelector": {
                    "matchLabels": {
                      "node-role.kubernetes.io/dpu-worker": ""
                    }
                  },
                  "poolName": "dpu"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional, Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/dpu-network-rhel8-operator@sha256:d07b8ecb5d1625599878b5c1e34b0de94188b81d90c829787a2d13969f6d5971
          createdAt: "2023-07-13T18:03:11Z"
          description: The operator is responsible for the life-cycle management of
            the ovn-kube components and the necessary host network initialization
            on DPU cards.
          olm.skipRange: '>=4.10.0-0 <4.13.0-202309181427'
          operatorframework.io/suggested-namespace: openshift-dpu-network-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/dpu-network-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: OVNKubeConfig is the Schema for the ovnkubeconfigs API
            displayName: OVNKube Config
            kind: OVNKubeConfig
            name: ovnkubeconfigs.dpu.openshift.io
            version: v1alpha1
        description: The operator to be responsible for the life-cycle management
          of the ovn-kube components and the necessary host network initialization
          on DPU cards.
        displayName: DPU Network Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dpu
        - network
        links:
        - name: Dpu Network Operator
          url: https://dpu-network-operator.domain
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/dpu-network-rhel8-operator@sha256:d07b8ecb5d1625599878b5c1e34b0de94188b81d90c829787a2d13969f6d5971
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:767682dd3bd65651a8204c9fb732b9c48b99127189992b43abc6ecce027f4589
        - registry.redhat.io/openshift4/dpu-network-operator-bundle@sha256:006edc597eec839f960bfd191b75217fc8c6bfaea9d1694e7ac9fa34266f9b4f
        version: 4.13.0-202309181427
      entries:
      - name: dpu-network-operator.4.13.0-202309181427
        version: 4.13.0-202309181427
      name: stable
    defaultChannel: stable
    packageName: dpu-network-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Isovalent, part of Cisco
      provider-url: https://isovalent.com/
    name: clife
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clife.v1.16.17-cee.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cilium.io/v1alpha1",
                "kind": "CiliumConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "clife"
                  },
                  "name": "ciliumconfig"
                },
                "spec": {
                  "cluster": {
                    "name": "default"
                  },
                  "clusterHealthPort": 9940,
                  "cni": {
                    "binPath": "/var/lib/cni/bin",
                    "chainingMode": "portmap",
                    "confPath": "/var/run/multus/cni/net.d",
                    "exclusive": false
                  },
                  "enterprise": {
                    "featureGate": {
                      "approved": [
                        "CNIChainingMode"
                      ]
                    }
                  },
                  "hubble": {
                    "enabled": true
                  },
                  "ipam": {
                    "mode": "cluster-pool"
                  },
                  "kubeProxyReplacement": false,
                  "operator": {
                    "prometheus": {
                      "enabled": true,
                      "serviceMonitor": {
                        "enabled": true
                      }
                    }
                  },
                  "prometheus": {
                    "enabled": true,
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "securityContext": {
                    "privileged": true
                  },
                  "sessionAffinity": true,
                  "tunnelPort": 4789
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Networking,Security
          createdAt: "2025-11-25T07:15:13Z"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CiliumConfig defines the configuration of Isovalent Networking
              for Kubernetes and all its components
            displayName: CiliumConfig
            kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Networking for Kubernetes, built on Cilium, provides
          eBPF-based networking, observability, and security with optimal scale and
          performance for platform teams operating Kubernetes environments across
          cloud and on-prem infrastructure.
        displayName: Isovalent Networking for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Cilium
        - networking
        - observability
        - security
        - eBPF
        - CNI
        links:
        - name: Isovalent Networking for Kubernetes
          url: https://isovalent.com/product/
        maintainers:
        - email: support@isovalent.com
          name: Isovalent, part of Cisco
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Isovalent, part of Cisco
          url: https://isovalent.com/
        relatedImages:
        - quay.io/isovalent/certgen-ubi:v1.16.17-cee.1@sha256:29b6a63fd696f362feb4845f20ac92f42ca7898a62c380b46704801c271f4c5d
        - quay.io/isovalent/clife@sha256:9dd151a5a693d4126745d93c65ffb30871350e5c7ece43d6175e2483a4387071
        - quay.io/isovalent/hubble-relay-ubi:v1.16.17-cee.1@sha256:fdc9152855df11cca45593a99c4982264037843b4ca0461071564e8919364c55
        - quay.io/isovalent/startup-script-ubi:v1.16.17-cee.1@sha256:acd5d43f2cfee6ab165ef7c34af484a67963be5aecf11039c86b5f7bab6bf58d
        - quay.io/isovalent/cilium-envoy-ubi:v1.16.17-cee.1@sha256:bea6ea831a03793390b3575d531a63450b5a13f1dc56d707986d4b09d4f25083
        - quay.io/isovalent/operator-generic-ubi:v1.16.17-cee.1@sha256:2479dd34bcf22d0dca632b3511df79db0c54229d78e9a60b63a983f4e27d07f9
        - quay.io/isovalent/cilium-ubi:v1.16.17-cee.1@sha256:02a6e4a3b599c9aa5f3cab11f824cb60984da996cb0d18dc50f761c3744f4efb
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.16.17-cee.1@sha256:f5f122e52d8f45e290d9da0170f5dd1360e3789ce021e50841d0176371fa7ba7
        - registry.connect.redhat.com/isovalent/clife-bundle@sha256:c1602e6b2b5afdc108e17734ee8a6ef416dd62eb55fb78cfff6776511d996b1c
        version: 1.16.17-cee.1
      entries:
      - name: clife.v1.16.17-cee.1
        version: 1.16.17-cee.1
      name: "1.16"
    - currentCSV: clife.v1.17.10-cee.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cilium.io/v1alpha1",
                "kind": "CiliumConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "clife"
                  },
                  "name": "ciliumconfig"
                },
                "spec": {
                  "cluster": {
                    "name": "default"
                  },
                  "clusterHealthPort": 9940,
                  "cni": {
                    "binPath": "/var/lib/cni/bin",
                    "chainingMode": "portmap",
                    "confPath": "/var/run/multus/cni/net.d",
                    "exclusive": false
                  },
                  "enterprise": {
                    "featureGate": {
                      "approved": [
                        "CNIChainingMode"
                      ]
                    }
                  },
                  "hubble": {
                    "enabled": true
                  },
                  "ipam": {
                    "mode": "cluster-pool"
                  },
                  "kubeProxyReplacement": false,
                  "operator": {
                    "prometheus": {
                      "enabled": true,
                      "serviceMonitor": {
                        "enabled": true
                      }
                    }
                  },
                  "prometheus": {
                    "enabled": true,
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "securityContext": {
                    "privileged": true
                  },
                  "sessionAffinity": true,
                  "tunnelPort": 4789
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Networking,Security
          createdAt: "2025-12-03T02:47:07Z"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CiliumConfig defines the configuration of Isovalent Networking
              for Kubernetes and all its components
            displayName: CiliumConfig
            kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Networking for Kubernetes, built on Cilium, provides
          eBPF-based networking, observability, and security with optimal scale and
          performance for platform teams operating Kubernetes environments across
          cloud and on-prem infrastructure.
        displayName: Isovalent Networking for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Cilium
        - networking
        - observability
        - security
        - eBPF
        - CNI
        links:
        - name: Isovalent Networking for Kubernetes
          url: https://isovalent.com/product/
        maintainers:
        - email: support@isovalent.com
          name: Isovalent, part of Cisco
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Isovalent, part of Cisco
          url: https://isovalent.com/
        relatedImages:
        - registry.connect.redhat.com/isovalent/clife-bundle@sha256:d101066873649de3146929ced913ddb60ba82c57ef2be5b6dad8d57650c65ee8
        - quay.io/isovalent/cilium-ubi:v1.17.10-cee.2@sha256:9f60ad3e84cd3af01ef597de9e8160a0fa6778eb9c9e6ba33edceb2183631bfa
        - quay.io/isovalent/startup-script-ubi:v1.17.10-cee.2@sha256:28920cfccc2001abab830248ae627c313eb6eb1652018972ce7b4931904e1f49
        - quay.io/isovalent/certgen-ubi:v1.17.10-cee.2@sha256:12101c99158461fc2a8d66edad8226825ef38cf383ac673126e08b0b23b4ae72
        - quay.io/isovalent/clife@sha256:49d40a233552fc881bfdd1be35912e1e4392181ccb85937bc42c9475d857284e
        - quay.io/isovalent/cilium-envoy-ubi:v1.17.10-cee.2@sha256:c49bf199b69d159dfb281b33bbd2fa8c5b2534dc04b7062fe53e41d079ed7629
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.17.10-cee.2@sha256:1d5eaafd93007172cbd22e3bde8ba37d4208be6621cc12f4550eb4910f70e7fb
        - quay.io/isovalent/hubble-relay-ubi:v1.17.10-cee.2@sha256:abfcafbf62bced38cd883ff4da609aab9ce94bd36370a7aff3c4fdbd237d4898
        - quay.io/isovalent/operator-generic-ubi:v1.17.10-cee.2@sha256:45c76bd41041f67d77634b83e5e6fbc016ff1b7905afb6424dba6b6c27340561
        version: 1.17.10-cee.2
      entries:
      - name: clife.v1.17.10-cee.2
        version: 1.17.10-cee.2
      - name: clife.v1.17.10-cee.1
        version: 1.17.10-cee.1
      - name: clife.v1.17.9-cee.1
        version: 1.17.9-cee.1
      - name: clife.v1.17.8-cee.1
        version: 1.17.8-cee.1
      - name: clife.v1.17.7-cee.1
        version: 1.17.7-cee.1
      - name: clife.v1.17.5-cee.1
        version: 1.17.5-cee.1
      - name: clife.v1.17.4-cee.1
        version: 1.17.4-cee.1
      - name: clife.v0.0.1
        version: 0.0.1
      name: "1.17"
    - currentCSV: clife.v1.18.4-cee.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cilium.io/v1alpha1",
                "kind": "CiliumConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "clife"
                  },
                  "name": "ciliumconfig"
                },
                "spec": {
                  "cluster": {
                    "name": "default"
                  },
                  "clusterHealthPort": 9940,
                  "cni": {
                    "binPath": "/var/lib/cni/bin",
                    "chainingMode": "portmap",
                    "confPath": "/var/run/multus/cni/net.d",
                    "exclusive": false
                  },
                  "enterprise": {
                    "featureGate": {
                      "approved": [
                        "CNIChainingMode"
                      ]
                    }
                  },
                  "hubble": {
                    "enabled": true
                  },
                  "ipam": {
                    "mode": "cluster-pool"
                  },
                  "kubeProxyReplacement": false,
                  "operator": {
                    "prometheus": {
                      "enabled": true,
                      "serviceMonitor": {
                        "enabled": true
                      }
                    }
                  },
                  "prometheus": {
                    "enabled": true,
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "securityContext": {
                    "privileged": true
                  },
                  "sessionAffinity": true,
                  "tunnelPort": 4789
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Networking,Security
          createdAt: "2025-11-25T07:07:17Z"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CiliumConfig defines the configuration of Isovalent Networking
              for Kubernetes and all its components
            displayName: CiliumConfig
            kind: CiliumConfig
            name: ciliumconfigs.cilium.io
            version: v1alpha1
        description: Isovalent Networking for Kubernetes, built on Cilium, provides
          eBPF-based networking, observability, and security with optimal scale and
          performance for platform teams operating Kubernetes environments across
          cloud and on-prem infrastructure.
        displayName: Isovalent Networking for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Cilium
        - networking
        - observability
        - security
        - eBPF
        - CNI
        links:
        - name: Isovalent Networking for Kubernetes
          url: https://isovalent.com/product/
        maintainers:
        - email: support@isovalent.com
          name: Isovalent, part of Cisco
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Isovalent, part of Cisco
          url: https://isovalent.com/
        relatedImages:
        - quay.io/isovalent/cilium-envoy-ubi:v1.18.4-cee.1@sha256:d40843aa7dbd9e3136d9491f231182a85e7c163f5aab97d64270e12389bc5be4
        - quay.io/isovalent/startup-script-ubi:v1.18.4-cee.1@sha256:d8396159dcf9b80e0b53d368da7b76a815f27439659995116b873070a3a4ba6b
        - registry.connect.redhat.com/isovalent/clife-bundle@sha256:f18fb8ec75c6664461a770dbb358f07822c965f72cff2be79fff733c30b26d26
        - quay.io/isovalent/clustermesh-apiserver-ubi:v1.18.4-cee.1@sha256:e6b85075e551fb685f7a87557373d7d315d461d0b59ceeaff353a253290cbcbb
        - quay.io/isovalent/cilium-ubi:v1.18.4-cee.1@sha256:039a42fe11110cc80a522341be889ab9be925532256427b71a240f021155171c
        - quay.io/isovalent/hubble-relay-ubi:v1.18.4-cee.1@sha256:c6ed87627321b26c9451c1a1cd5dad9fde71359106161c855ec2ae52a39e162c
        - quay.io/isovalent/operator-generic-ubi:v1.18.4-cee.1@sha256:15077a75abb86af2c628d600acd76682c4e3cec6f05f51ee1060bf4c43192013
        - quay.io/isovalent/certgen-ubi:v1.18.4-cee.1@sha256:009324b74b0ad203fa8093c57f9d8981d81a4f80a2b8472fc986a70c9cb5bc3d
        - quay.io/isovalent/clife@sha256:bf1953df529e58d15d1ae9ff1293e6eb22e6e38cc628620420b19cfc6e3e9b99
        version: 1.18.4-cee.1
      entries:
      - name: clife.v1.18.4-cee.1
        version: 1.18.4-cee.1
      name: "1.18"
    defaultChannel: "1.17"
    packageName: clife
    provider:
      name: Isovalent, part of Cisco
      url: https://isovalent.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ecr-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ecr-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecr.services.k8s.aws/v1alpha1",
                "kind": "Repository",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ecr-controller:1.4.0
          createdAt: "2025-11-29T03:26:30Z"
          description: AWS ECR controller is a service controller for managing ECR
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: PullThroughCacheRule represents the state of an AWS ecr PullThroughCacheRule
              resource.
            displayName: PullThroughCacheRule
            kind: PullThroughCacheRule
            name: pullthroughcacherules.ecr.services.k8s.aws
            version: v1alpha1
          - description: Repository represents the state of an AWS ecr Repository
              resource.
            displayName: Repository
            kind: Repository
            name: repositories.ecr.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Elastic Container Registry (ECR) resources in AWS from within your Kubernetes cluster.

          **About Amazon ECR**

          Amazon Elastic Container Registry (Amazon ECR) is an AWS managed container image registry service that is secure, scalable, and reliable. Amazon ECR supports private repositories with resource-based permissions using AWS IAM. This is so that specified users or Amazon EC2 instances can access your container repositories and images. You can use your preferred CLI to push, pull, and manage Docker images, Open Container Initiative (OCI) images, and OCI compatible artifacts.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ECR
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecr
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ECR Developer Resources
          url: https://aws.amazon.com/ecr/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ecr maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ecr-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-ecr-controller@sha256:07c2be7962f1f53174d5b24c81f0732e834aaabceff3561e06bde2799e300c0d
        version: 1.4.0
      entries:
      - name: ack-ecr-controller.v1.4.0
        version: 1.4.0
      - name: ack-ecr-controller.v1.3.3
        version: 1.3.3
      - name: ack-ecr-controller.v1.3.2
        version: 1.3.2
      - name: ack-ecr-controller.v1.3.1
        version: 1.3.1
      - name: ack-ecr-controller.v1.3.0
        version: 1.3.0
      - name: ack-ecr-controller.v1.2.0
        version: 1.2.0
      - name: ack-ecr-controller.v1.1.0
        version: 1.1.0
      - name: ack-ecr-controller.v1.0.33
        version: 1.0.33
      - name: ack-ecr-controller.v1.0.32
        version: 1.0.32
      - name: ack-ecr-controller.v1.0.31
        version: 1.0.31
      - name: ack-ecr-controller.v1.0.30
        version: 1.0.30
      - name: ack-ecr-controller.v1.0.29
        version: 1.0.29
      - name: ack-ecr-controller.v1.0.28
        version: 1.0.28
      - name: ack-ecr-controller.v1.0.27
        version: 1.0.27
      - name: ack-ecr-controller.v1.0.25
        version: 1.0.25
      - name: ack-ecr-controller.v1.0.24
        version: 1.0.24
      - name: ack-ecr-controller.v1.0.23
        version: 1.0.23
      - name: ack-ecr-controller.v1.0.22
        version: 1.0.22
      - name: ack-ecr-controller.v1.0.21
        version: 1.0.21
      - name: ack-ecr-controller.v1.0.20
        version: 1.0.20
      - name: ack-ecr-controller.v1.0.19
        version: 1.0.19
      - name: ack-ecr-controller.v1.0.17
        version: 1.0.17
      - name: ack-ecr-controller.v1.0.16
        version: 1.0.16
      - name: ack-ecr-controller.v1.0.15
        version: 1.0.15
      - name: ack-ecr-controller.v1.0.14
        version: 1.0.14
      - name: ack-ecr-controller.v1.0.12
        version: 1.0.12
      - name: ack-ecr-controller.v1.0.10
        version: 1.0.10
      - name: ack-ecr-controller.v1.0.9
        version: 1.0.9
      - name: ack-ecr-controller.v1.0.8
        version: 1.0.8
      - name: ack-ecr-controller.v1.0.7
        version: 1.0.7
      - name: ack-ecr-controller.v1.0.6
        version: 1.0.6
      - name: ack-ecr-controller.v1.0.4
        version: 1.0.4
      - name: ack-ecr-controller.v1.0.3
        version: 1.0.3
      - name: ack-ecr-controller.v1.0.2
        version: 1.0.2
      - name: ack-ecr-controller.v1.0.0
        version: 1.0.0
      - name: ack-ecr-controller.v0.1.9
        version: 0.1.9
      - name: ack-ecr-controller.v0.1.7
        version: 0.1.7
      - name: ack-ecr-controller.v0.1.6
        version: 0.1.6
      - name: ack-ecr-controller.v0.1.5
        version: 0.1.5
      - name: ack-ecr-controller.v0.1.4
        version: 0.1.4
      - name: ack-ecr-controller.v0.1.3
        version: 0.1.3
      - name: ack-ecr-controller.v0.1.2
        version: 0.1.2
      - name: ack-ecr-controller.v0.1.1
        version: 0.1.1
      - name: ack-ecr-controller.v0.1.0
        version: 0.1.0
      - name: ack-ecr-controller.v0.0.27
        version: 0.0.27
      - name: ack-ecr-controller.v0.0.26
        version: 0.0.26
      - name: ack-ecr-controller.v0.0.25
        version: 0.0.25
      - name: ack-ecr-controller.v0.0.24
        version: 0.0.24
      - name: ack-ecr-controller.v0.0.23
        version: 0.0.23
      - name: ack-ecr-controller.v0.0.22
        version: 0.0.22
      - name: ack-ecr-controller.v0.0.21
        version: 0.0.21
      - name: ack-ecr-controller.v0.0.20
        version: 0.0.20
      - name: ack-ecr-controller.v0.0.19
        version: 0.0.19
      - name: ack-ecr-controller.v0.0.18
        version: 0.0.18
      - name: ack-ecr-controller.v0.0.17
        version: 0.0.17
      - name: ack-ecr-controller.v0.0.16
        version: 0.0.16
      - name: ack-ecr-controller.v0.0.15
        version: 0.0.15
      - name: ack-ecr-controller.v0.0.14
        version: 0.0.14
      - name: ack-ecr-controller.v0.0.13
        version: 0.0.13
      - name: ack-ecr-controller.v0.0.12
        version: 0.0.12
      - name: ack-ecr-controller.v0.0.11
        version: 0.0.11
      name: alpha
    defaultChannel: alpha
    packageName: ack-ecr-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: kubevirt-hyperconverged
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubevirt-hyperconverged-operator.v4.20.4
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"openshift-cnv"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployVmConsoleProxy":true},"templateValidator":{"replicas":2}}},{"apiVersion":"ssp.kubevirt.io/v1beta3","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "true"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:748b24436b546d7eefacc3fc95803ee5dae4b4def6802e265523415aab09fc86
          createdAt: "2025-12-28 21:17:40"
          description: Creates and maintains an OpenShift Virtualization Deployment
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          openshift.io/required-scc: restricted-v2
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"openshift-cnv"},"spec":{}}'
          operatorframework.io/suggested-namespace: openshift-cnv
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware","fips","sno"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:2357fb1d24d0d7adfabeb4573f00ffaee77a969dd06c8899e42d398d9cb3807d
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: Red Hat
          test-images-nvrs: kubevirt-ssp-operator-test-rhel9:v4.20.4-6,hyperconverged-cluster-operator-test-rhel9:v4.20.4-4,kubevirt-common-instancetypes-test-rhel9:v4.20.4-3,kubevirt-tekton-tasks-test-rhel9:v4.20.4-3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of OpenShift Virtualization
            displayName: OpenShift Virtualization Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta3
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Details
          **OpenShift Virtualization** extends Red Hat OpenShift Container Platform, allowing you to host and manage virtualized workloads on the same platform as container-based workloads. From the OpenShift Container Platform web console, you can import a VMware virtual machine from vSphere, create new or clone existing VMs, perform live migrations between nodes, and more. You can use OpenShift Virtualization to manage both Linux and Windows VMs.

          The technology behind OpenShift Virtualization is developed in the [KubeVirt](https://kubevirt.io) open source community. The KubeVirt project extends [Kubernetes](https://kubernetes.io) by adding additional virtualization resource types through [Custom Resource Definitions](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/) (CRDs). Administrators can use Custom Resource Definitions to manage `VirtualMachine` resources alongside all other resources that Kubernetes provides.
        displayName: OpenShift Virtualization
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        - CNV
        - Container-native virtualization
        - Container native virtualization
        - Virt
        - Virtual
        links:
        - name: Source Code
          url: https://github.com/kubevirt
        - name: OpenShift Virtualization
          url: https://www.openshift.com/learn/topics/virtualization/
        - name: KubeVirt Project
          url: https://kubevirt.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/container-native-virtualization/ocp-virt-validation-checkup-rhel9@sha256:b44ea7853c23ab1320f68f8693defb47e89dba2f7301ad46f5e28d71f1fc99c9
        - registry.redhat.io/container-native-virtualization/virt-artifacts-server-rhel9@sha256:6db561d095d29d656abba9713392fd94cdf031e7ecaf1c9df5b8460c45730df8
        - registry.redhat.io/container-native-virtualization/wasp-agent-rhel9@sha256:2979769ff3b5d494633f221190a9520503a1526dfcdaf930f0d7526e370ea473
        - registry.redhat.io/container-native-virtualization/vm-network-latency-checkup-rhel9@sha256:62b720486b6e60adb9aa86b83117d48197abdcd8e3aef972ec2213b3fbec98b0
        - registry.redhat.io/container-native-virtualization/aaq-controller-rhel9@sha256:8d45195acdeb8aa507ce9d6a89de4197f2564f9f1daae19fbd771090586d2ad3
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:748b24436b546d7eefacc3fc95803ee5dae4b4def6802e265523415aab09fc86
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-create-datavolume-rhel9@sha256:2efcb5bf1bd79d0e8f4b9b0dd3d91d93ad56fa9db5645ce1cba80eb061907624
        - registry.redhat.io/container-native-virtualization/kubevirt-apiserver-proxy-rhel9@sha256:752cd22c335aa4963f4b9311cb05fd18ea6bb89e5031b627459a0d9919d10ad5
        - registry.redhat.io/container-native-virtualization/kubevirt-ssp-operator-rhel9@sha256:c2f128f9001c0c67619386e1a860663cfa8b6b1f790af1ef00670d76c686c4e5
        - registry.redhat.io/container-native-virtualization/virt-controller-rhel9@sha256:8e6a791528a0b8809d38ce153e80e9e1f19c58a2415777e617631ea7876d2b7a
        - registry.redhat.io/container-native-virtualization/virt-cdi-importer-rhel9@sha256:edeb0af7736a94afa9ada1ba7be1254264754a0df41e761f6d53463b5f07fcf5
        - registry.redhat.io/container-native-virtualization/virt-exportserver-rhel9@sha256:45a57cc3913b84e841be83daabdc5f5985d55075c0d371af9daffca1152ac0ad
        - registry.redhat.io/container-native-virtualization/cnv-containernetworking-plugins-rhel9@sha256:a62635a6a458fb26f702fe77afb8976e23e37ee069bfd37f4c7029841ece8d63
        - registry.redhat.io/container-native-virtualization/virt-exportproxy-rhel9@sha256:6c5f2307fee82aa4c09be8250d52f2b5afdcddea6558879f161df0e184df9146
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:ef0dca763d85023bf3b1e3be135177007b1fe5c56bc356a8cf7145b4dd3c669c
        - registry.redhat.io/container-native-virtualization/virt-cdi-controller-rhel9@sha256:c4a38bcc6094b76a0f082d20e5dff3f2912da442930804c4c42c3018aff2709c
        - registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:2357fb1d24d0d7adfabeb4573f00ffaee77a969dd06c8899e42d398d9cb3807d
        - registry.redhat.io/container-native-virtualization/virt-api-rhel9@sha256:e5fbde9eca277212206e4e1b619ea1809e7e6506dd6ea86b6d34a75f128060fa
        - registry.redhat.io/container-native-virtualization/kubevirt-ipam-controller-rhel9@sha256:ec6699bb6f648cd70065a3849c6bf3a57722d0f6fc87c1a8b582e18bb9e4ebce
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-disk-virt-customize-rhel9@sha256:34df9b10d96231666cb0bff52ffe2a2a07c38b73e20472bcd005f5961ae3b7a6
        - registry.redhat.io/container-native-virtualization/vm-console-proxy-rhel9@sha256:cb3d2fee13d9a82ad852495da7d9a2cf1b003edd39bf1edc34096bbd9005d28b
        - registry.redhat.io/container-native-virtualization/virt-synchronization-controller-rhel9@sha256:376d3b416da5afaab1b525d9cbc508ed10e1d9adcd29d0d05e2b51ccefc5ef73
        - registry.redhat.io/container-native-virtualization/virt-migration-controller-rhel9@sha256:8c16cfd74922b28b0adeafd422b7b2dc3896c35d7000c9d5e57be0f566058f78
        - registry.redhat.io/container-native-virtualization/kubevirt-api-lifecycle-automation-rhel9@sha256:c2b07b95fd47a5d968e809303d9ab79286dcde62bf173adc5717586ec182c0fa
        - registry.redhat.io/container-native-virtualization/virt-launcher-rhel9@sha256:8fde93d45a81ecdee95649a281f80a9b2a0a71952771a43f0555cb97ef7d1605
        - registry.redhat.io/container-native-virtualization/virt-handler-rhel9@sha256:6611d88a0c69650f1c2c9b946ed6df976b3312226ecfac1800bdd4e187ac9629
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:12b8793c89f31671584b97b75720c9a941774ced862d7cf275911ae0814d4d9c
        - registry.redhat.io/container-native-virtualization/kubevirt-common-instancetypes-rhel9@sha256:3cbace21d5a03b007e4fadebbb584d7c5daff150fb974707b2d8d7a2caa33159
        - registry.redhat.io/container-native-virtualization/ovs-cni-plugin-rhel9@sha256:7d9eb580f06b9077c45bb6a42287882e0ead5b4eead67e05a77f0d3345b5256f
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-cni-rhel9@sha256:230ccf9d52838aef4c236d51aef22f71ce0c548f56b384a7361921492c68abdc
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-operator-rhel9@sha256:56f2401c00e5b6f4ff7262725ddce0b4cd431a3eb7e393385b6b9db8e3506b91
        - registry.redhat.io/openshift4/ose-coredns-rhel9@sha256:943018739e3db1763c3184b460dbc409e058abbac76d57b9927faad317be85e4
        - registry.redhat.io/container-native-virtualization/multus-dynamic-networks-rhel9@sha256:cea5e74574f8d3ac40cf63b4084ad107d4efff5f5f6c87f1dd655109b5bb0c8a
        - registry.redhat.io/container-native-virtualization/virt-cdi-operator-rhel9@sha256:abfa2a92650be61f1785643bcd051dfc26c186974430e2c7aaf722665a057e93
        - registry.redhat.io/container-native-virtualization/aaq-server-rhel9@sha256:d3036a5f83bd488ac4d641c17cbad9f7621943edc2dd86be5b0b6119019c9d52
        - registry.redhat.io/container-native-virtualization/virtio-win-rhel9@sha256:d6c330e2a2b56fa9e75f57c3f75e95096862b6c8ca31069de8f41f64e8481e26
        - registry.redhat.io/container-native-virtualization/kubevirt-template-validator-rhel9@sha256:28106cbd0375054cf0d06f3fd55d3add39fc26dde9a35a22cb6a95cd0fe59003
        - registry.redhat.io/container-native-virtualization/kubesecondarydns-rhel9@sha256:d198956224d3333bae0b872616faa2affd98947e19ff4da78e3ec28cd632119e
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadserver-rhel9@sha256:53daad8fa0b71bf5e362ee44c50b0e70cd976b6b30d425d5e29088fb8163f8fc
        - registry.redhat.io/container-native-virtualization/virt-cdi-apiserver-rhel9@sha256:ef3b5088f20b1e0b101f22d307876b87fa9ce0b3248b26e0e1d4e003cd89256b
        - registry.redhat.io/container-native-virtualization/pr-helper-rhel9@sha256:3857e1d21bcb5fe82ef0d8efa8969b90e150c2659fd115b2e357b2c137b19a4c
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/container-native-virtualization/kubevirt-console-plugin-rhel9@sha256:c451d67a6a1154c3f31dee5aa573b87484becc3527ed36a1c553a1013184fcf9
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-sidecar-rhel9@sha256:96bd1b744a5e034cb3831c2c9c45b0ec65130f1ba124946f74633a2795f23fe8
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-rhel9@sha256:e4aece12cd6900642c54597bb774baa476c0d3c09b8f94cd6cb8f30d21204010
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/container-native-virtualization/kubemacpool-rhel9@sha256:600ca5470697e6dc1d8dd51b905943773b8bb602d8f167dbbfe4328168853514
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/container-native-virtualization/hostpath-csi-driver-rhel9@sha256:04096d91f02fae6188a085e456227a0bb52e52f07f966bfc883c63e7f50d6870
        - registry.redhat.io/container-native-virtualization/cluster-network-addons-operator-rhel9@sha256:6ea1f813aa546acc9887f809207a7fd2a5d913ae0f42d944d7923620a4fe877c
        - registry.redhat.io/container-native-virtualization/virt-migration-operator-rhel9@sha256:357057fb344983d0cc0b29ccbc8be12deaa3ca506023064988cfccb41557a645
        - registry.redhat.io/container-native-virtualization/virt-operator-rhel9@sha256:9eb617c02a50e52ff412c97fe2ece275d9a682686bbb127a3a6ce51f6864d6b4
        - registry.redhat.io/container-native-virtualization/virt-cdi-cloner-rhel9@sha256:829714c6d8ae2160e3b3e4e4680e637d3c5abaad985ad6a166a80cef9605c75e
        - registry.redhat.io/container-native-virtualization/kubevirt-storage-checkup-rhel9@sha256:167957fc864966c356d70a6c333b03404c8234e4ece8e8abc6169de86b409983
        - registry.redhat.io/container-native-virtualization/sidecar-shim-rhel9@sha256:74180dbda759a0f30b9c9321585ced206afea318ddbcbb362bbb61f1b6978597
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadproxy-rhel9@sha256:26b86907ad25fe1bddfc69c1227e403879fffd1495c52c9d833ac2ae44ebcb75
        - registry.redhat.io/container-native-virtualization/libguestfs-tools-rhel9@sha256:9997909581c8cd9150f4581a3aec964691dbbfd3b92a06679b0e795830599052
        - registry.redhat.io/container-native-virtualization/bridge-marker-rhel9@sha256:d1d96c13e31b52fd4d0cfa6c463752b496d4561ca1d073ca7d05095221922d60
        - registry.redhat.io/container-native-virtualization/aaq-operator-rhel9@sha256:1ec50edc886c4fcd04bdc9de3e9880e90824741f8d6ae384f69f579fa6ae2c50
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:190107681cd4617373821599517a3fe4f8563df781cded372f040fa423f8bfde
        - registry.redhat.io/container-native-virtualization/hco-bundle-registry-rhel9@sha256:dd0f81a803da2b2c520f922039045e2db9b96c61cea26d60eda9c7c9626bc449
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-webhook-rhel9@sha256:34982a06432fbee263892b58d24409e3f2119f649abd510609c8fbc63f7c4953
        version: 4.20.4
      entries:
      - name: kubevirt-hyperconverged-operator.v4.20.4
        version: 4.20.4
      - name: kubevirt-hyperconverged-operator.v4.20.3
        version: 4.20.3
      - name: kubevirt-hyperconverged-operator.v4.20.2
        version: 4.20.2
      - name: kubevirt-hyperconverged-operator.v4.20.1
        version: 4.20.1
      name: candidate
    - currentCSV: kubevirt-hyperconverged-operator.v4.20.3
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"openshift-cnv"},"spec":{}},{"apiVersion":"networkaddonsoperator.network.kubevirt.io/v1","kind":"NetworkAddonsConfig","metadata":{"name":"cluster"},"spec":{"imagePullPolicy":"IfNotPresent","kubeMacPool":{"rangeEnd":"FD:FF:FF:FF:FF:FF","rangeStart":"02:00:00:00:00:00"},"linuxBridge":{},"macvtap":{},"multus":{},"ovs":{}}},{"apiVersion":"kubevirt.io/v1","kind":"KubeVirt","metadata":{"name":"kubevirt","namespace":"kubevirt"},"spec":{"imagePullPolicy":"Always"}},{"apiVersion":"ssp.kubevirt.io/v1beta2","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"featureGates":{"deployVmConsoleProxy":true},"templateValidator":{"replicas":2}}},{"apiVersion":"ssp.kubevirt.io/v1beta3","kind":"SSP","metadata":{"name":"ssp-sample","namespace":"kubevirt"},"spec":{"commonTemplates":{"namespace":"kubevirt"},"templateValidator":{"replicas":2}}},{"apiVersion":"cdi.kubevirt.io/v1beta1","kind":"CDI","metadata":{"name":"cdi","namespace":"cdi"},"spec":{"imagePullPolicy":"IfNotPresent"}},{"apiVersion":"hostpathprovisioner.kubevirt.io/v1beta1","kind":"HostPathProvisioner","metadata":{"name":"hostpath-provisioner"},"spec":{"imagePullPolicy":"IfNotPresent","storagePools":[{"name":"local","path":"/var/hpvolumes","pvcTemplate":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"50Gi"}}}}],"workload":{"nodeSelector":{"kubernetes.io/os":"linux"}}}},{"apiVersion":"aaq.kubevirt.io/v1alpha1","kind":"AAQ","metadata":{"name":"aaq","namespace":"aaq"},"spec":{"imagePullPolicy":"IfNotPresent"}}]'
          capabilities: Deep Insights
          categories: OpenShift Optional
          certified: "true"
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:774619385a49ac6c60b3eab5d0b7e81ef1399cbb15dd341f7a445117ad3136f8
          createdAt: "2025-12-12 15:08:43"
          description: Creates and maintains an OpenShift Virtualization Deployment
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          openshift.io/required-scc: restricted-v2
          operatorframework.io/initialization-resource: '{"apiVersion":"hco.kubevirt.io/v1beta1","kind":"HyperConverged","metadata":{"annotations":{"deployOVS":"false"},"name":"kubevirt-hyperconverged","namespace":"openshift-cnv"},"spec":{}}'
          operatorframework.io/suggested-namespace: openshift-cnv
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware","fips","sno"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:cb51501b85b3734f42c933d8a6e20dd4312c426e0c34175ac83c86af789b8878
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io","kubevirts.kubevirt.io","ssps.ssp.kubevirt.io","ssps.ssp.kubevirt.io","cdis.cdi.kubevirt.io","aaqs.aaq.kubevirt.io"]'
          repository: https://github.com/kubevirt/hyperconverged-cluster-operator
          support: Red Hat
          test-images-nvrs: kubevirt-ssp-operator-test-rhel9:v4.20.3-7,hyperconverged-cluster-operator-test-rhel9:v4.20.3-5,kubevirt-common-instancetypes-test-rhel9:v4.20.3-3,kubevirt-tekton-tasks-test-rhel9:v4.20.3-6
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of OpenShift Virtualization
            displayName: OpenShift Virtualization Deployment
            kind: HyperConverged
            name: hyperconvergeds.hco.kubevirt.io
            version: v1beta1
          - description: Cluster Network Addons
            displayName: Cluster Network Addons
            kind: NetworkAddonsConfig
            name: networkaddonsconfigs.networkaddonsoperator.network.kubevirt.io
            version: v1
          - description: Represents a KubeVirt deployment
            displayName: KubeVirt deployment
            kind: KubeVirt
            name: kubevirts.kubevirt.io
            version: v1
          - description: SSP is the Schema for the ssps API
            displayName: SSP
            kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta2
          - kind: SSP
            name: ssps.ssp.kubevirt.io
            version: v1beta3
          - description: Represents a CDI deployment
            displayName: CDI deployment
            kind: CDI
            name: cdis.cdi.kubevirt.io
            version: v1beta1
          - description: Represents the deployment of HostPathProvisioner
            displayName: HostPathProvisioner Deployment
            kind: HostPathProvisioner
            name: hostpathprovisioners.hostpathprovisioner.kubevirt.io
            version: v1beta1
          - description: Represents a AAQ deployment
            displayName: AAQ deployment
            kind: AAQ
            name: aaqs.aaq.kubevirt.io
            version: v1alpha1
        description: |-
          # Requirements
          Your cluster must be installed on bare metal infrastructure with Red Hat Enterprise Linux CoreOS workers.

          # Details
          **OpenShift Virtualization** extends Red Hat OpenShift Container Platform, allowing you to host and manage virtualized workloads on the same platform as container-based workloads. From the OpenShift Container Platform web console, you can import a VMware virtual machine from vSphere, create new or clone existing VMs, perform live migrations between nodes, and more. You can use OpenShift Virtualization to manage both Linux and Windows VMs.

          The technology behind OpenShift Virtualization is developed in the [KubeVirt](https://kubevirt.io) open source community. The KubeVirt project extends [Kubernetes](https://kubernetes.io) by adding additional virtualization resource types through [Custom Resource Definitions](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/) (CRDs). Administrators can use Custom Resource Definitions to manage `VirtualMachine` resources alongside all other resources that Kubernetes provides.
        displayName: OpenShift Virtualization
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - KubeVirt
        - Virtualization
        - VM
        - CNV
        - Container-native virtualization
        - Container native virtualization
        - Virt
        - Virtual
        links:
        - name: Source Code
          url: https://github.com/kubevirt
        - name: OpenShift Virtualization
          url: https://www.openshift.com/learn/topics/virtualization/
        - name: KubeVirt Project
          url: https://kubevirt.io
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/container-native-virtualization/libguestfs-tools-rhel9@sha256:4d5457ce137f9984f3a8227be66b51df7ca24d2cee950c7a62fe07e4da8c957a
        - registry.redhat.io/container-native-virtualization/bridge-marker-rhel9@sha256:13475ebdb09e49a5f33cb255491226415752551adbf19f1f11555ade84832490
        - registry.redhat.io/container-native-virtualization/vm-network-latency-checkup-rhel9@sha256:2279ab798e8c18b13c87cbce75e6018a9b5be872666c9a19b4929837ca7784d2
        - registry.redhat.io/container-native-virtualization/virt-cdi-importer-rhel9@sha256:84d3534ff8027475d41f6dee3c827640905b98dc5251c6a31abad5c7d4cdb2dc
        - registry.redhat.io/container-native-virtualization/ovs-cni-plugin-rhel9@sha256:8870efa7ee50541cdef7a9058cda0030e66e31eeee26209443de888aa472fd40
        - registry.redhat.io/container-native-virtualization/virt-migration-controller-rhel9@sha256:bf5236671c5f149cb69c58acc3204a3dbd5531022342b3ab4e70908c46ed75d6
        - registry.redhat.io/container-native-virtualization/hco-bundle-registry-rhel9@sha256:b648126d95b88bf7cd346dd2a112fb77e2686d899ea51fe1090a510bc2ec8f24
        - registry.redhat.io/container-native-virtualization/hostpath-csi-driver-rhel9@sha256:95f0ee74ce70b75c23ffba8d400db7018bb5d8b002ffa20bc4326cadb1aa1434
        - registry.redhat.io/container-native-virtualization/virt-launcher-rhel9@sha256:3138ad3a4471ca69be37fbe50a96be4b89e120de0e2808067ca99ff576f16256
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-operator-rhel9@sha256:304b1845e9b7bf2b443b6c889e2e37e446908f02d70f9733e4206f9799e9e963
        - registry.redhat.io/container-native-virtualization/pr-helper-rhel9@sha256:9a2691eafd72990f03f4600e0fac40e1572479493723387c159f66261a85eeab
        - registry.redhat.io/container-native-virtualization/kubevirt-api-lifecycle-automation-rhel9@sha256:6644a1c779f055ced237d73fa5a92abb0b61119983d1dc966b5e5592e58839f0
        - registry.redhat.io/container-native-virtualization/wasp-agent-rhel9@sha256:554c6882d9c1320274c17336f5efd80a615b5a6b97a4383f452813e080ccd9da
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:5d7478a62742900e39d7b007dde5375cd06c6076ced6dab69d805f5fcce3f342
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadserver-rhel9@sha256:ad84fd70798dab76dd65da6a0e54d34d1b233f042df97b0c2894ce5cba641e03
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-sidecar-rhel9@sha256:665bd5625630898222a3ecf02244ce31f38f310c87f5f6529ab53ca22ecb5237
        - registry.redhat.io/container-native-virtualization/kubevirt-ssp-operator-rhel9@sha256:fad86adf9d9e682e9aff8764c776d2650e78b0d7101fd6c2804a4c445a9daebd
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:1c480fa5089a32cf804fc84df7219ca64066cbac2eeb962c4385754132c3873b
        - registry.redhat.io/container-native-virtualization/virt-cdi-apiserver-rhel9@sha256:18b1188326dc55855da1afe01659fa0ea06fc9f0d5c8a2154f2aedcf49a204dc
        - registry.redhat.io/container-native-virtualization/aaq-controller-rhel9@sha256:7da428ce43d513b042b5f6b58e58b134937071df97f769d8e191ac178a34d5d9
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-operator-rhel9@sha256:774619385a49ac6c60b3eab5d0b7e81ef1399cbb15dd341f7a445117ad3136f8
        - registry.redhat.io/container-native-virtualization/kubemacpool-rhel9@sha256:89beb3c6acc06cf04d97ffa7f1791ab380f873b692e5e694b476558693590759
        - registry.redhat.io/container-native-virtualization/vm-console-proxy-rhel9@sha256:013b3f599fd23278b88ec362c9b89ca3df3f5820a9820bc6ceeeff76f1ec1a2a
        - registry.redhat.io/container-native-virtualization/virt-operator-rhel9@sha256:1823a4c581900087411be32c46297e8224087ebad0c10adafb1e48fc9fb5af8f
        - registry.redhat.io/container-native-virtualization/kubevirt-storage-checkup-rhel9@sha256:ed454addfc02bdde63bfa619f53d036128d107cc1cff3f595819521be1671e59
        - registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9@sha256:cb51501b85b3734f42c933d8a6e20dd4312c426e0c34175ac83c86af789b8878
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:4cf3eca6e1f958a9b3c14cdb6be536a2b8f11491b475b23dbfee4eee8de8a60d
        - registry.redhat.io/container-native-virtualization/virt-cdi-operator-rhel9@sha256:aa1d79d10ab0f88f472eace2961cc0b83963b13517f636b4db74f9636fbf993d
        - registry.redhat.io/container-native-virtualization/virt-cdi-uploadproxy-rhel9@sha256:5bc8eba190a09b03141b866c50c7ee244631e2d7e9fd76c6fb3bdce933b20f9c
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-create-datavolume-rhel9@sha256:6473ce9becf07dac29d2bb597fb1c9088475f2ce3d71c635ac41b13ee6d620c5
        - registry.redhat.io/container-native-virtualization/virt-synchronization-controller-rhel9@sha256:9e46d42b1c81ef70de81b43109b7d3cff9c259899da6454467e6ceef4cd069fc
        - registry.redhat.io/container-native-virtualization/aaq-operator-rhel9@sha256:3c3a543b0cf8b8f7031a31790c474d01fa23ca8ebd581f4a4fc1f42a4c4cce71
        - registry.redhat.io/migration-toolkit-virtualization/mtv-rhv-populator-rhel8@sha256:ef0dca763d85023bf3b1e3be135177007b1fe5c56bc356a8cf7145b4dd3c669c
        - registry.redhat.io/container-native-virtualization/kubevirt-console-plugin-rhel9@sha256:80192f34263a9a9a8ef9812f7b8dc37090ace003e257e74db58902f4a1299887
        - registry.redhat.io/container-native-virtualization/cnv-containernetworking-plugins-rhel9@sha256:fbec311480fc899bada5159771ce6d33ff8adbdd2a2c53e1f08e2bca75b2abac
        - registry.redhat.io/container-native-virtualization/virtio-win-rhel9@sha256:e38fa87ca295c7f750e207b5c29ea9e4c784e51a2e9a365719cd6e45d55642e6
        - registry.redhat.io/container-native-virtualization/kubevirt-template-validator-rhel9@sha256:a1b60487bef71216a67daacfeaa357de08f94294be66187cb219d06645076616
        - registry.redhat.io/openshift4/ose-coredns-rhel9@sha256:2a4fa36bccbd1750c7ba21d8774592205558eefa10c4a59807d0d7fb255c4d7d
        - registry.redhat.io/container-native-virtualization/virt-exportserver-rhel9@sha256:89a4a5077410687afaeceb73af8c43d6330661ceb34225c72a7a18785321a6e1
        - registry.redhat.io/container-native-virtualization/virt-cdi-cloner-rhel9@sha256:ae01e86a9f67be13e9072b9491b86c6fb1682f153dadaf86afdd8269c04e8e58
        - registry.redhat.io/container-native-virtualization/sidecar-shim-rhel9@sha256:6abf158997ac1207a2ae7d0589d830a14e5724905c98e84b32a3b41882211e04
        - registry.redhat.io/container-native-virtualization/virt-controller-rhel9@sha256:9451fbcaaf9b486168195661f3b370a34656bbe856133644cec7364fb0f9327a
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:ea07bb35db9c047015fb6292608d28572fed17b3d190bb2cb3127e63404be654
        - registry.redhat.io/container-native-virtualization/kubevirt-apiserver-proxy-rhel9@sha256:2efdb15604ea5ee3b71dda28c796ed67651e7d3a2811739542f702c285e8873d
        - registry.redhat.io/container-native-virtualization/kubevirt-tekton-tasks-disk-virt-customize-rhel9@sha256:14eb7f410c4e2fbd7416a3aedbfba5f45e401e3bd9d4f49b68bbb3bbc47ba59f
        - registry.redhat.io/container-native-virtualization/virt-api-rhel9@sha256:dc021c2d95737add38dbe43a961e8ae2ae8245df3cbcf46727b3ad89d8e27af1
        - registry.redhat.io/container-native-virtualization/virt-exportproxy-rhel9@sha256:1fb533343f9eb45062f1817e8be3e46c315887fc24d146fce4d83b53fcdbd6c6
        - registry.redhat.io/container-native-virtualization/virt-handler-rhel9@sha256:fb61c086221a580b2a084611d0163635eda53d584c390f8df52a730e22925922
        - registry.redhat.io/container-native-virtualization/cluster-network-addons-operator-rhel9@sha256:c370e913c758e0a896a1bf47ceec0a44ae3019232f33ea6994b90ed7f4567c65
        - registry.redhat.io/container-native-virtualization/hostpath-provisioner-rhel9@sha256:80355df8da40dd604f65b897b4987b64c1c7aca77811a4f013659e0e4abde531
        - registry.redhat.io/container-native-virtualization/kubesecondarydns-rhel9@sha256:c91fc0b7b07743c58c449155d1fcc43844e0f1c909b058fd1126674978afe5f4
        - registry.redhat.io/container-native-virtualization/virt-migration-operator-rhel9@sha256:93d4db5d1afac1364915dc2284c6f58a0d4e1f9cd8395d84177dee0568f8fae5
        - registry.redhat.io/container-native-virtualization/hyperconverged-cluster-webhook-rhel9@sha256:9f081d7b24658145adb4ba5ed494091be3968cb4c8305f2e197a49f6d61226a3
        - registry.redhat.io/container-native-virtualization/virt-artifacts-server-rhel9@sha256:63f4d29d6724055bc857b9113c7ee2cc686f0a4c70dc0600b24b6a51d03b1ec4
        - registry.redhat.io/container-native-virtualization/kubevirt-common-instancetypes-rhel9@sha256:22790edf1eea155cf40943609499deb577283bdee8d8cf3a5bde67c7806f152c
        - registry.redhat.io/container-native-virtualization/kubevirt-ipam-controller-rhel9@sha256:3dcd47d947a86c87d35dcb26da02dda2b9478bcaafe9c809db76707508353570
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:591720c7e2301931e160cf1280c6b55bba9de1fe6a38545de09e05be38c50fc1
        - registry.redhat.io/container-native-virtualization/aaq-server-rhel9@sha256:65ef0b5b5f2be5c829f9d25a9ef5a0e54505051d40b6233df4353e7761bd2909
        - registry.redhat.io/container-native-virtualization/ocp-virt-validation-checkup-rhel9@sha256:244f5df211adf0631afdd76786d98b2bc01bff8ac11d1d47d87e3022d999ec47
        - registry.redhat.io/container-native-virtualization/virt-cdi-controller-rhel9@sha256:508963662b9172f0d5e3d16b91a3a359c45ce050bdb8e5d0ddb99fdc2b44b260
        - registry.redhat.io/container-native-virtualization/passt-network-binding-plugin-cni-rhel9@sha256:899349fd7dde3ace0171661f61a34d0e794750f16f0e59003073239d109c4ac8
        - registry.redhat.io/container-native-virtualization/multus-dynamic-networks-rhel9@sha256:2bc541d27e9be750363c3706fd0692bdaa5b16b69efa842be7f16046fec2b8a0
        version: 4.20.3
      entries:
      - name: kubevirt-hyperconverged-operator.v4.20.3
        version: 4.20.3
      - name: kubevirt-hyperconverged-operator.v4.20.1
        version: 4.20.1
      - name: kubevirt-hyperconverged-operator.v4.20.0
        version: 4.20.0
      - name: kubevirt-hyperconverged-operator.v4.19.6
        version: 4.19.6
      - name: kubevirt-hyperconverged-operator.v4.19.3
        version: 4.19.3
      - name: kubevirt-hyperconverged-operator.v4.19.1
        version: 4.19.1
      - name: kubevirt-hyperconverged-operator.v4.18.8
        version: 4.18.8
      - name: kubevirt-hyperconverged-operator.v4.18.3
        version: 4.18.3
      - name: kubevirt-hyperconverged-operator.v4.18.2
        version: 4.18.2
      - name: kubevirt-hyperconverged-operator.v4.18.1
        version: 4.18.1
      - name: kubevirt-hyperconverged-operator.v4.18.0
        version: 4.18.0
      - name: kubevirt-hyperconverged-operator.v4.17.4
        version: 4.17.4
      - name: kubevirt-hyperconverged-operator.v4.17.3
        version: 4.17.3
      - name: kubevirt-hyperconverged-operator.v4.17.2
        version: 4.17.2
      - name: kubevirt-hyperconverged-operator.v4.17.1
        version: 4.17.1
      - name: kubevirt-hyperconverged-operator.v4.17.0
        version: 4.17.0
      - name: kubevirt-hyperconverged-operator.v4.16.3
        version: 4.16.3
      - name: kubevirt-hyperconverged-operator.v4.16.2
        version: 4.16.2
      - name: kubevirt-hyperconverged-operator.v4.16.1
        version: 4.16.1
      - name: kubevirt-hyperconverged-operator.v4.16.0
        version: 4.16.0
      - name: kubevirt-hyperconverged-operator.v4.15.2
        version: 4.15.2
      - name: kubevirt-hyperconverged-operator.v4.15.1
        version: 4.15.1
      - name: kubevirt-hyperconverged-operator.v4.15.0
        version: 4.15.0
      - name: kubevirt-hyperconverged-operator.v4.14.3
        version: 4.14.3
      - name: kubevirt-hyperconverged-operator.v4.14.2
        version: 4.14.2
      - name: kubevirt-hyperconverged-operator.v4.14.1
        version: 4.14.1
      - name: kubevirt-hyperconverged-operator.v4.14.0
        version: 4.14.0
      - name: kubevirt-hyperconverged-operator.v4.13.4
        version: 4.13.4
      - name: kubevirt-hyperconverged-operator.v4.13.3
        version: 4.13.3
      - name: kubevirt-hyperconverged-operator.v4.13.2
        version: 4.13.2
      - name: kubevirt-hyperconverged-operator.v4.13.1
        version: 4.13.1
      - name: kubevirt-hyperconverged-operator.v4.13.0
        version: 4.13.0
      - name: kubevirt-hyperconverged-operator.v4.12.2
        version: 4.12.2
      - name: kubevirt-hyperconverged-operator.v4.12.1
        version: 4.12.1
      - name: kubevirt-hyperconverged-operator.v4.12.0
        version: 4.12.0
      name: stable
    defaultChannel: stable
    packageName: kubevirt-hyperconverged
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: LINBIT
      provider-url: https://linbit.com
    name: linstor-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: linstor-operator.v2.10.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "piraeus.io/v1",
                "kind": "LinstorCluster",
                "metadata": {
                  "name": "linstorcluster"
                },
                "spec": {},
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "piraeus.io/v1",
                "kind": "LinstorNodeConnection",
                "metadata": {
                  "name": "example-connection"
                },
                "spec": {},
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "piraeus.io/v1",
                "kind": "LinstorSatellite",
                "metadata": {
                  "name": "example-satellite"
                },
                "spec": {
                  "clusterRef": {
                    "name": "linstorcluster"
                  }
                },
                "status": {
                  "conditions": []
                }
              },
              {
                "apiVersion": "piraeus.io/v1",
                "kind": "LinstorSatelliteConfiguration",
                "metadata": {
                  "name": "all-satellites"
                },
                "spec": {},
                "status": {
                  "conditions": []
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          com.redhat.openshift.versions: v4.7
          containerImage: drbd.io/linstor-operator@sha256:c13c8710c7d508a5a63b996c64031c370b1040c20a48e1a6dbcfa183db58da91
          createdAt: "2025-12-09T14:51:34Z"
          description: LINSTOR Operator deploys LINBIT SDS in the cluster.
          features.operators.openshift.io/csi: "true"
          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"
          operatorframework.io/suggested-namespace: linbit-sds
          operators.openshift.io/valid-subscription: '[''LINBIT SDS Subscription'']'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/internal-objects: '["linstorsatellites.piraeus.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: LINBIT
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster-wide configuration for LINSTOR.
            displayName: Linstor Cluster
            kind: LinstorCluster
            name: linstorclusters.piraeus.io
            version: v1
          - description: Configuration for connections between specific nodes.
            displayName: Linstor Node Connection
            kind: LinstorNodeConnection
            name: linstornodeconnections.piraeus.io
            version: v1
          - description: Configuration for specific Satellites/Nodes in the LINSTOR
              Cluster.
            displayName: Linstor Satellite Configuration
            kind: LinstorSatelliteConfiguration
            name: linstorsatelliteconfigurations.piraeus.io
            version: v1
          - description: Resource to configure a single satellite, managed by the
              Operator itself.
            displayName: Linstor Satellite
            kind: LinstorSatellite
            name: linstorsatellites.piraeus.io
            version: v1
          required:
          - kind: ServiceMonitor
            name: servicemonitors.monitoring.coreos.com
            version: v1
          - kind: PrometheusRule
            name: prometheusrules.monitoring.coreos.com
            version: v1
          - kind: PodMonitor
            name: podmonitors.monitoring.coreos.com
            version: v1
        description: |
          The LINSTOR Operator manages [LINSTOR](https://github.com/LINBIT/linstor-server) clusters in Kubernetes.

          All components of the LINSTOR software stack can be managed by the operator:
          * DRBD
          * LINSTOR
          * LINSTOR CSI driver
          * LINSTOR HA Controller
        displayName: LINSTOR Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        links:
        - name: User Guide
          url: https://linbit.com/drbd-user-guide/linstor-guide-1_0-en/
        - name: LINSTOR Operator
          url: https://charts.linstor.io/
        - name: Source Code
          url: https://github.com/LINBIT/linstor-operator-builder
        maintainers:
        - email: support@linbit.com
          name: LINBIT
        maturity: stable
        minKubeVersion: 1.20.0
        nativeApis:
        - group: ""
          kind: ConfigMap
          version: v1
        - group: ""
          kind: Service
          version: v1
        - group: ""
          kind: ServiceAccount
          version: v1
        - group: apps
          kind: DaemonSet
          version: v1
        - group: apps
          kind: Deployment
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          version: v1
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          version: v1
        - group: rbac.authorization.k8s.io
          kind: Role
          version: v1
        - group: rbac.authorization.k8s.io
          kind: RoleBinding
          version: v1
        - group: storage.k8s.io
          kind: CSIDriver
          version: v1
        provider:
          name: LINBIT
          url: https://linbit.com
        relatedImages:
        - drbd.io/drbd-shutdown-guard@sha256:16793f5aa10b46b198806c9198216fbd1aaec31269c28adea7e526dd17ff6f57
        - drbd.io/drbd9-rhel10@sha256:0e8baeab42e33c543cbdc784f4ff6559ce90ac0fab35c8f599440b8c79de0ffa
        - registry.redhat.io/openshift4/ose-csi-external-snapshotter-rhel9@sha256:f5d39776894fdb35e4119a592bb9b2c754a834f542712fd7f57c54d6eceeca29
        - drbd.io/linstor-satellite@sha256:1cff883efa5694babc51987a343c68bbe844427ca23d3744266679697d6b2cc9
        - registry.redhat.io/openshift4/ose-csi-external-attacher-rhel9@sha256:33c42e88b72c0ea9d58fed8db8cb2175e56399c3d2e988bcbb669bec3de291de
        - registry.connect.redhat.com/linbit/linstor-operator-bundle:v2.10.3
        - registry.k8s.io/sig-storage/csi-external-health-monitor-controller@sha256:ac3963bfd4246da386b82d810a348e9d42a9e4b746acaf4dbcbe0766643cc2fa
        - drbd.io/linstor-operator@sha256:c13c8710c7d508a5a63b996c64031c370b1040c20a48e1a6dbcfa183db58da91
        - drbd.io/drbd9-rhel7@sha256:24a9a3d894668f142751611621fb17d567e4f6b385557784b2d19cf09936352c
        - drbd.io/drbd9-rhel9@sha256:9d2e7e4336b0f97de65e08d95b89318b928f7685cd68c48e576bfc41c84d7a20
        - drbd.io/linstor-controller@sha256:4aaa87ec39e261be7c46834e2a25d8c306688fc7b2b6c793bb09929996406b08
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:13aa61d56d283901b113a49524eb57e447eb541b56d3666f8186fd807cc3c180
        - drbd.io/drbd9-rhel8@sha256:eb091a38c6811391f27df0b22c34cfe7df5ad69bcbe8ec37075edc50d732aeea
        - registry.redhat.io/openshift4/ose-csi-external-provisioner-rhel9@sha256:b54a79b0c5a39a23dc8a1809fffaa376a474945df364a30077112eab87d558dd
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:c4a2626cc9c4903a32e67a6fa68b874fb5e67085126030389a8a3210bf766de7
        - drbd.io/ktls-utils@sha256:3351a6e0fc048fe1544499095cdb8fdd221e832cecfa8a9a01f046c271991138
        - drbd.io/linstor-affinity-controller@sha256:de3445f5bcc643e1b9d7c4e880fd289ca05dee300120d3b0d7a83498de91a79f
        - drbd.io/linstor-csi@sha256:6615bc6b5a0a6b504588a460b028ec4a185c0a26e61b1f45e3ac9910ba165fe2
        - drbd.io/linstor-k8s-ha-controller@sha256:13bc9273fe4b752aaa9a0aa0add2c4261589f80fae2d367ab36728b8abc93d0e
        - drbd.io/drbd-reactor@sha256:95a2422d55394bcc322c5ce9c85e234b055d8c9976a69102ba5e12f7c24a311d
        - drbd.io/nfs-server@sha256:e999aa5c4a38c49e63b6258503db405d57f1d4e5ab8735ff1400cbd4f23d4b88
        - registry.redhat.io/openshift4/ose-csi-external-resizer-rhel9@sha256:a9d0a3f14e303f80c1e0b81cf38af700d1e038b875834bbc6d1a31ad60b16d8f
        version: 2.10.3
      entries:
      - name: linstor-operator.v2.10.3
        version: 2.10.3
      - name: linstor-operator.v2.10.2
        version: 2.10.2
      - name: linstor-operator.v2.10.1
        version: 2.10.1
      - name: linstor-operator.v2.10.1-0.gbf3c346
        version: 2.10.1-0.gbf3c346
      - name: linstor-operator.v2.9.1
        version: 2.9.1
      - name: linstor-operator.v2.9.0
        version: 2.9.0
      - name: linstor-operator.v2.8.1
        version: 2.8.1
      name: stable-v2
    defaultChannel: stable-v2
    packageName: linstor-operator
    provider:
      name: LINBIT
      url: https://linbit.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-firehose-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-firehose-controller.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/firehose-controller:0.2.0
          createdAt: "2025-11-29T03:46:06Z"
          description: AWS Firehose controller is a service controller for managing
            Firehose resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DeliveryStream represents the state of an AWS firehose DeliveryStream
              resource.
            displayName: DeliveryStream
            kind: DeliveryStream
            name: deliverystreams.firehose.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Firehose resources in AWS from within your Kubernetes cluster.

          **About Amazon Firehose**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Firehose
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - firehose
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Firehose Developer Resources
          url: https://aws.amazon.com/Firehose/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: firehose maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-firehose-controller@sha256:72fb109fd6b29d10b0b5e6ffd02809dc00ee8e54791c553d1e5f34a7c0a4e0c5
        - public.ecr.aws/aws-controllers-k8s/firehose-controller:0.2.0
        version: 0.2.0
      entries:
      - name: ack-firehose-controller.v0.2.0
        version: 0.2.0
      - name: ack-firehose-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-firehose-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stolostron
      provider-url: ""
    name: cluster-aas-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-aas-operator.v0.1.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "clustertemplate.openshift.io/v1alpha1",
                "kind": "ClusterTemplate",
                "metadata": {
                  "name": "clustertemplate-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "clustertemplate.openshift.io/v1alpha1",
                "kind": "ClusterTemplateInstance",
                "metadata": {
                  "name": "clustertemplateinstance-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "clustertemplate.openshift.io/v1alpha1",
                "kind": "ClusterTemplateQuota",
                "metadata": {
                  "name": "clustertemplatequota-sample"
                },
                "spec": {}
              }
            ]
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: quay.io/stolostron/cluster-templates-operator:2.11.0-0c3131154065397d37e3b66ae635d7ea88650bf9
          createdAt: "2024-06-06T19:34:44Z"
          description: Easily install fully configured clusters with guard-rails.
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/cluster-templates-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents instance of a cluster
            displayName: Cluster template instance
            kind: ClusterTemplateInstance
            name: clustertemplateinstances.clustertemplate.openshift.io
            version: v1alpha1
          - description: Defines which ClusterTemplates can be used in a given namespace
            displayName: Cluster template quota
            kind: ClusterTemplateQuota
            name: clustertemplatequotas.clustertemplate.openshift.io
            version: v1alpha1
          - description: Template of a cluster - both installation and post-install
              setup are defined as ArgoCD application spec. Any application source
              is supported - typically a Helm chart
            displayName: Cluster template
            kind: ClusterTemplate
            name: clustertemplates.clustertemplate.openshift.io
            version: v1alpha1
          - kind: ClusterTemplateSetup
            name: clustertemplatesetup.clustertemplate.openshift.io
            version: v1alpha1
          - kind: Config
            name: config.clustertemplate.openshift.io
            version: v1alpha1
        description: |
          **Self-service clusters with guardrails!**
          Cluster as a service operator provides an easy way to define clusters as templates and allows creating instances of those templates even for non-privileged developer/devops engineers. Cluster templates operator also allows specifing quotas for the developer/devops engineers.

          ### User Interface
          The User interface is installed but is not enabled by default. To enable go to `Home` -> `Overview` -> in the status card click `Dynamic Plugins` -> click `View all` -> click the `pencil` icon -> pick `Enable` and hit `Save`. You can access the UI in the `All Clusters` perspective under `Infrastructure` -> `Cluster Templates`.

          ### Documentation
          Documentation can be found on our [website](https://github.com/stolostron/cluster-templates-operator).

          ### Getting help
          To report any issues or ask questions, create an issue on our [Github repo](https://github.com/stolostron/cluster-templates-operator/issues)
        displayName: Cluster as a service operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cluster
        - templates
        - hive
        - hypershift
        - selfservice
        - openshift
        - multicluster
        - quota
        - helm
        - argocd
        links:
        - name: Cluster as a service operator
          url: https://github.com/stolostron/cluster-templates-operator
        maintainers:
        - email: rawagner@redhat.com
          name: Rastislav Wagner
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Stolostron
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.11.0
        - quay.io/community-operator-pipeline-prod/cluster-aas-operator@sha256:aad6afc2f6f1f4e3b2c0d14b6c178d6f71ef318b0d3efc97faa5fdb736eaa721
        - quay.io/stolostron/cluster-templates-operator:2.11.0-0c3131154065397d37e3b66ae635d7ea88650bf9
        version: 0.1.5
      entries:
      - name: cluster-aas-operator.v0.1.5
        version: 0.1.5
      - name: cluster-aas-operator.v0.1.4
        version: 0.1.4
      - name: cluster-aas-operator.v0.1.3
        version: 0.1.3
      - name: cluster-aas-operator.v0.1.2
        version: 0.1.2
      - name: cluster-aas-operator.v0.1.1
        version: 0.1.1
      - name: cluster-aas-operator.v0.1.0
        version: 0.1.0
      - name: cluster-aas-operator.v0.0.6
        version: 0.0.6
      - name: cluster-aas-operator.v0.0.5
        version: 0.0.5
      - name: cluster-aas-operator.v0.0.4
        version: 0.0.4
      - name: cluster-aas-operator.v0.0.3
        version: 0.0.3
      - name: cluster-aas-operator.v0.0.2
        version: 0.0.2
      - name: cluster-aas-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: cluster-aas-operator
    provider:
      name: Stolostron
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Google
      provider-url: https://cloud.google.com/alloydb/omni
    name: alloydb-omni-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: alloydb-omni-operator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup1"
                },
                "spec": {
                  "backupPlanRef": "backupplan1",
                  "dbclusterRef": "dbcluster-sample",
                  "manual": true,
                  "physicalBackupSpec": {
                    "backupType": "full"
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "BackupPlan",
                "metadata": {
                  "name": "backupplan1"
                },
                "spec": {
                  "backupRetainDays": 14,
                  "backupSchedules": {
                    "full": "0 0 * * 0",
                    "incremental": "0 21 * * *"
                  },
                  "dbclusterRef": "dbcluster-sample",
                  "paused": false
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "clone1"
                },
                "spec": {
                  "clonedDBClusterConfig": {
                    "dbclusterName": "new-dbcluster-sample"
                  },
                  "pointInTime": "2024-02-23T19:59:43Z",
                  "sourceDBCluster": "dbcluster-sample"
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "DBCluster",
                "metadata": {
                  "name": "dbcluster-sample"
                },
                "spec": {
                  "databaseVersion": "16.3.0",
                  "primarySpec": {
                    "adminUser": {
                      "passwordRef": {
                        "name": "db-pw-dbcluster-sample"
                      }
                    },
                    "resources": {
                      "cpu": 1,
                      "disks": [
                        {
                          "name": "DataDisk",
                          "size": "10Gi"
                        }
                      ],
                      "memory": "5Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "DBInstance",
                "metadata": {
                  "name": "dbcluster-sample-rp-1"
                },
                "spec": {
                  "dbcParent": {
                    "name": "dbcluster-sample"
                  },
                  "instanceType": "ReadPool",
                  "nodeCount": 2,
                  "resources": {
                    "cpu": 2,
                    "disks": [
                      {
                        "name": "DataDisk",
                        "size": "15Gi"
                      }
                    ],
                    "memory": "6Gi"
                  },
                  "schedulingconfig": {
                    "nodeaffinity": {
                      "preferredDuringSchedulingIgnoredDuringExecution": [
                        {
                          "preference": {
                            "matchExpressions": [
                              {
                                "key": "another-node-label-key",
                                "operator": "In",
                                "values": [
                                  "another-node-label-value"
                                ]
                              }
                            ]
                          },
                          "weight": 1
                        }
                      ]
                    },
                    "podAffinity": {
                      "preferredDuringSchedulingIgnoredDuringExecution": [
                        {
                          "podAffinityTerm": {
                            "labelSelector": {
                              "matchExpressions": [
                                {
                                  "key": "app",
                                  "operator": "In",
                                  "values": [
                                    "store"
                                  ]
                                }
                              ]
                            },
                            "topologyKey": "kubernetes.io/hostname"
                          },
                          "weight": 1
                        }
                      ]
                    },
                    "podAntiAffinity": {
                      "preferredDuringSchedulingIgnoredDuringExecution": [
                        {
                          "podAffinityTerm": {
                            "labelSelector": {
                              "matchExpressions": [
                                {
                                  "key": "security",
                                  "operator": "In",
                                  "values": [
                                    "S1"
                                  ]
                                }
                              ]
                            },
                            "topologyKey": "topology.kubernetes.io/zone"
                          },
                          "weight": 1
                        }
                      ]
                    },
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "key": "node-role.kubernetes.io/control-plane",
                        "operator": "Exists"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Failover",
                "metadata": {
                  "name": "failover-sample"
                },
                "spec": {
                  "dbclusterRef": "dbcluster-sample"
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "PgBouncer",
                "metadata": {
                  "name": "mypgbouncer"
                },
                "spec": {
                  "allowSuperUserAccess": true,
                  "dbclusterRef": "dbcluster-sample",
                  "parameters": {
                    "default_pool_size": "15",
                    "ignore_startup_parameters": "extra_float_digits",
                    "max_client_conn": "800",
                    "max_db_connections": "160",
                    "pool_mode": "transaction"
                  },
                  "podSpec": {
                    "image": "gcr.io/alloydb-omni/operator/g-pgbouncer:1.5.0",
                    "resources": {
                      "cpu": 1,
                      "memory": "1Gi"
                    }
                  },
                  "replicaCount": 1,
                  "serviceOptions": {
                    "type": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Replication",
                "metadata": {
                  "name": "replication-downstream-sample"
                },
                "spec": {
                  "dbcluster": {
                    "name": "dbcluster-sample"
                  },
                  "downstream": {
                    "control": "setup",
                    "host": "10.10.10.10",
                    "password": {
                      "name": "ha-rep-pw-dbcluster-sample"
                    },
                    "port": 5432,
                    "replicationSlotName": "dbcluster_sample_replication_upstream_sample",
                    "username": "alloydbreplica"
                  }
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Replication",
                "metadata": {
                  "name": "replication-upstream-sample"
                },
                "spec": {
                  "dbcluster": {
                    "name": "dbcluster-sample"
                  },
                  "upstream": {}
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore1"
                },
                "spec": {
                  "backup": "backup1",
                  "sourceDBCluster": "dbcluster-sample"
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Sidecar",
                "metadata": {
                  "name": "sidecar-sample"
                },
                "spec": {
                  "sidecars": [
                    {
                      "args": [
                        "-c",
                        "while [ true ]\ndo\ndate\nset -x\nls -lh /logs/diagnostic\nset +x\ndone\n"
                      ],
                      "command": [
                        "/bin/sh"
                      ],
                      "image": "busybox",
                      "name": "sidecar-sample",
                      "volumeMounts": [
                        {
                          "mountPath": "/logs",
                          "name": "obsdisk"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "alloydbomni.dbadmin.goog/v1",
                "kind": "Switchover",
                "metadata": {
                  "name": "switchover-sample"
                },
                "spec": {
                  "dbclusterRef": "dbcluster-sample",
                  "newPrimary": "aaaa-dbcluster-sample"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          containerImage: gcr.io/alloydb-omni/operator/fleet-operator:1.5.0
          createdAt: "2025-07-25T04:12:04Z"
          operatorframework.io/suggested-namespace: alloydb-omni-system
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["backuprepositories.alloydbomni.internal.dbadmin.goog",
            "failovers.alloydbomni.internal.dbadmin.goog", "instancebackupplans.alloydbomni.internal.dbadmin.goog","instancebackups.alloydbomni.internal.dbadmin.goog","instancerestores.alloydbomni.internal.dbadmin.goog","instances.alloydbomni.internal.dbadmin.goog","instanceswitchovers.alloydbomni.internal.dbadmin.goog","instanceuserdefinedauthentications.alloydbomni.internal.dbadmin.goog","lrojobs.alloydbomni.internal.dbadmin.goog","replicationconfigs.alloydbomni.internal.dbadmin.goog","sidecars.alloydbomni.internal.dbadmin.goog","createstandbyjobs.alloydbomni.internal.dbadmin.goog","deletestandbyjobs.alloydbomni.internal.dbadmin.goog"]'
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BackupPlan is the Schema for the backupplans API.
            displayName: Backup Plan
            kind: BackupPlan
            name: backupplans.alloydbomni.dbadmin.goog
            version: v1
          - description: Backup is the Schema for the backups API.
            displayName: Backup
            kind: Backup
            name: backups.alloydbomni.dbadmin.goog
            version: v1
          - description: CreateStandbyJob is an internal workflow tracking object.
              Users should not directly interact with this.
            displayName: (Internal) Create Standby Job
            kind: CreateStandbyJob
            name: createstandbyjobs.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: DBCluster is the Schema for the DBClusters API.
            displayName: DB Cluster
            kind: DBCluster
            name: dbclusters.alloydbomni.dbadmin.goog
            version: v1
          - description: DBInstance is the Schema for the DBInstances API.
            displayName: DB Instance
            kind: DBInstance
            name: dbinstances.alloydbomni.dbadmin.goog
            version: v1
          - description: DeleteStandbyJob is an internal workflow tracking object.
              Users should not directly interact with this.
            displayName: (Internal) Delete Standby Job
            kind: DeleteStandbyJob
            name: deletestandbyjobs.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: Failover represents the parameters and status of a single
              failover operation.
            displayName: Failover
            kind: Failover
            name: failovers.alloydbomni.dbadmin.goog
            version: v1
          - description: PgBouncer is the Schema for the PgBouncer API.
            displayName: PgBouncer
            kind: PgBouncer
            name: pgbouncers.alloydbomni.dbadmin.goog
            version: v1
          - description: Replication is the Schema for the Replications API.
            displayName: Replication
            kind: Replication
            name: replications.alloydbomni.dbadmin.goog
            version: v1
          - description: Restore is the Schema for the Restores API.
            displayName: Restore
            kind: Restore
            name: restores.alloydbomni.dbadmin.goog
            version: v1
          - description: Sidecar is the Schema for the Sidecar API.
            displayName: Sidecar
            kind: Sidecar
            name: sidecars.alloydbomni.dbadmin.goog
            version: v1
          - description: Switchover represents the parameters and status of a single
              switchover.
            displayName: Switchover
            kind: Switchover
            name: switchovers.alloydbomni.dbadmin.goog
            version: v1
          - description: UserDefinedAuthentication is the Schema for the UserDefinedAuthentications
              API.
            displayName: User Defined Authentication
            kind: UserDefinedAuthentication
            name: userdefinedauthentications.alloydbomni.dbadmin.goog
            version: v1
          - description: BackupRepository is the Schema for the backuprepositories
              API.
            displayName: (Internal) Backup Repository
            kind: BackupRepository
            name: backuprepositories.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: Failover is the Schema for the failover API.
            displayName: (Internal) Failover
            kind: Failover
            name: failovers.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceBackupPlan is the Schema for the InstanceBackupPlan
              API.
            displayName: (Internal) Instance Backup Plan
            kind: InstanceBackupPlan
            name: instancebackupplans.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceBackup is the Schema for the InstanceBackup API.
            displayName: (Internal) Instance Backup
            kind: InstanceBackup
            name: instancebackups.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceRestore is the Schema for the InstanceRestore API.
            displayName: (Internal) Instance Restore
            kind: InstanceRestore
            name: instancerestores.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: Instance is the Schema for the Instance API.
            displayName: (Internal) Instance
            kind: Instance
            name: instances.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceSwitchover is the Schema for the InstanceSwitchover
              API.
            displayName: (Internal) Instance Switchover
            kind: InstanceSwitchover
            name: instanceswitchovers.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: InstanceUserDefinedAuthentication is the Schema for the InstanceUserDefinedAuthentication
              API.
            displayName: (Internal) Instance User Defined Authentication
            kind: InstanceUserDefinedAuthentication
            name: instanceuserdefinedauthentications.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: LROJob is the Schema for the LROJob API.
            displayName: (Internal) LRO Job
            kind: LROJob
            name: lrojobs.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: ReplicationConfig is the Schema for the ReplicationConfig
              API.
            displayName: (Internal) Replication Config
            kind: ReplicationConfig
            name: replicationconfigs.alloydbomni.internal.dbadmin.goog
            version: v1
          - description: Sidecar is the Schema for the Sidecar API.
            displayName: (Internal) Sidecar
            kind: Sidecar
            name: sidecars.alloydbomni.internal.dbadmin.goog
            version: v1
        description: |-
          AlloyDB Omni is a database that lets you deploy a streamlined edition of AlloyDB for PostgreSQL in your own computing environment. While being 100% compatible with PostgreSQL applications and tools, AlloyDB Omni delivers higher performance for both OLTP and OLAP workloads and makes administration easy with a number of autopilots. AlloyDB AI provides powerful tools to build generative AI applications with the ability to create, store, and index vector embeddings right in your database.

          ## Post-installation

          After installing the operator, you need to manually create the cert-manager resources in your cluster as this is a strict dependency for our operator. For this, follow these steps:

          ```
          kubectl create ns ${NAMESPACE:?}
          ```

          ```
          kubectl apply -f - <<EOF
          apiVersion: cert-manager.io/v1
          kind: ClusterIssuer
          metadata:
            name: alloydbomni-selfsigned-cluster-issuer
          spec:
            selfSigned: {}
          ---
          apiVersion: cert-manager.io/v1
          kind: Issuer
          metadata:
            name: fleet-selfsigned-issuer
            namespace: ${NAMESPACE:?}
          spec:
            selfSigned: {}
          ---
          apiVersion: cert-manager.io/v1
          kind: Certificate
          metadata:
            name: fleet-serving-cert
            namespace: ${NAMESPACE:?}
          spec:
            dnsNames:
            - fleet-webhook-service.alloydb-omni-system.svc
            - fleet-webhook-service.alloydb-omni-system.svc.cluster.local
            issuerRef:
              kind: Issuer
              name: fleet-selfsigned-issuer
            secretName: fleet-webhook-server-cert
          ---
          apiVersion: cert-manager.io/v1
          kind: Issuer
          metadata:
            name: local-selfsigned-issuer
            namespace: ${NAMESPACE:?}
          spec:
            selfSigned: {}
          ---
          apiVersion: cert-manager.io/v1
          kind: Certificate
          metadata:
            name: local-serving-cert
            namespace: ${NAMESPACE:?}
          spec:
            dnsNames:
            - local-webhook-service.alloydb-omni-system.svc
            - local-webhook-service.alloydb-omni-system.svc.cluster.local
            issuerRef:
              kind: Issuer
              name: local-selfsigned-issuer
            secretName: local-webhook-server-cert
          EOF
          ```

          Replace the following:
          * `NAMESPACE` : the namespace where you have installed your operator. Suggested namespace: `alloydb-omni-system`.

          ## Creating a database cluster

          After you install the AlloyDB Omni operator on your Kubernetes cluster, you can create an AlloyDB Omni database cluster. For each database cluster you create, you must first create a password secret using the following format:

          ```
          apiVersion: v1
          kind: Secret
          metadata:
            name: db-pw-${DB_CLUSTER_NAME:s?}
            namespace: ${DB_CLUSTER_NAMESPACE:?}
          type: Opaque
          data:
            ${DB_CLUSTER_NAME:?}: "ENCODED_PASSWORD"
          ```

          Replace the following:
          * `DB_CLUSTER_NAME`: the name of this database cluster. For example, `my-db-cluster`.
          * `DB_CLUSTER_NAMESPACE` (Optional): the namespace where you want to create the database cluster. For example, `my-db-cluster-namespace`.
          * `ENCODED_PASSWORD`: the database login password for the default postgres user role, encoded as a base64 string. For example, `Q2hhbmdlTWUxMjM=` for password `ChangeMe123`.

          Follow [these][database-cluster] steps for creating a database cluster.

          ## Connect to AlloyDB Omni running on Kubernetes
          Follow [these][connect] steps to connect to AlloyDB Omni.

          [database-cluster]: https://cloud.google.com/alloydb/omni/docs/deploy-kubernetes#create
          [connect]: https://cloud.google.com/alloydb/omni/docs/run-connect#connect-kubernetes
        displayName: AlloyDB Omni Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - database
        - sql
        - postgres
        - vector
        - ai
        - analytics
        - postgresql
        - alloydb
        links:
        - name: Documentation
          url: https://cloud.google.com/alloydb/omni/docs
        - name: Release Notes
          url: https://cloud.google.com/alloydb/docs/release-notes
        maintainers:
        - email: alloydb-omni-ext@google.com
          name: Google Cloud
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Google
          url: https://cloud.google.com/alloydb/omni
        relatedImages:
        - quay.io/community-operator-pipeline-prod/alloydb-omni-operator@sha256:08fafb811f709780c0ccb3c22e3c6417cb14a70a9305e46a7b50457647a82102
        - gcr.io/alloydb-omni/operator/fleet-operator:1.5.0
        - gcr.io/alloydb-omni/operator/local-operator:1.5.0
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.14.1
        version: 1.5.0
      entries:
      - name: alloydb-omni-operator.v1.5.0
        version: 1.5.0
      - name: alloydb-omni-operator.v1.4.1
        version: 1.4.1
      - name: alloydb-omni-operator.v1.4.0
        version: 1.4.0
      - name: alloydb-omni-operator.v1.3.0
        version: 1.3.0
      name: stable
    defaultChannel: stable
    packageName: alloydb-omni-operator
    provider:
      name: Google
      url: https://cloud.google.com/alloydb/omni
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: VictoriaMetrics
      provider-url: ""
    name: victoriametrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: victoriametrics-operator.v0.66.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.victoriametrics.com/v1",
                "kind": "VLAgent",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "persistentVolumeClaimRetentionPolicy": {
                    "whenDeleted": "Delete"
                  },
                  "remoteWrite": [
                    {
                      "maxDiskUsage": "10GB",
                      "url": "http://vlsingle-example-0.default.svc:9428/internal/insert"
                    }
                  ],
                  "remoteWriteSettings": {
                    "maxBlockSize": "30MB"
                  },
                  "replicaCount": 2,
                  "resources": {
                    "limits": {
                      "cpu": "500m",
                      "memory": "850Mi"
                    },
                    "requests": {
                      "cpu": "50m",
                      "memory": "350Mi"
                    }
                  },
                  "storage": {
                    "volumeClaimTemplate": {
                      "spec": {
                        "resources": {
                          "requests": {
                            "storage": "50Gi"
                          }
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1",
                "kind": "VLCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "victoriametrics-operator"
                  },
                  "name": "example"
                },
                "spec": {
                  "requestsLoadBalancer": {
                    "enabled": true,
                    "spec": {}
                  },
                  "vlinsert": {
                    "replicaCount": 1
                  },
                  "vlselect": {
                    "replicaCount": 1
                  },
                  "vlstorage": {
                    "replicaCount": 2,
                    "retentionPeriod": "1y",
                    "storage": {
                      "volumeClaimTemplate": {
                        "spec": {
                          "resources": {
                            "requests": {
                              "storage": "50Gi"
                            }
                          }
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1",
                "kind": "VLSingle",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "victoriametrics-operator"
                  },
                  "name": "sample"
                },
                "spec": {
                  "retentionMaxDiskSpaceUsageBytes": "20GB",
                  "retentionPeriod": "1y",
                  "storage": {
                    "resources": {
                      "requests": {
                        "storage": "50Gi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VLogs",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "retentionPeriod": "2"
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAgent",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "extraArgs": {
                    "memory.allowedPercent": "40"
                  },
                  "remoteWrite": [
                    {
                      "maxDiskUsage": "10GB",
                      "url": "http://vmsingle-dc-1.default.svc:8429/api/v1/write"
                    },
                    {
                      "maxDiskUsage": "15GB",
                      "url": "http://vmsingle-dc-2.default.svc:8429/api/v1/write"
                    },
                    {
                      "url": "http://vminsert-main.default.svc:8480/insert/1:1/prometheus/api/v1/write"
                    }
                  ],
                  "remoteWriteSettings": {
                    "maxDiskUsagePerURL": "5GB"
                  },
                  "replicaCount": 1,
                  "resources": {
                    "limits": {
                      "cpu": "500m",
                      "memory": "850Mi"
                    },
                    "requests": {
                      "cpu": "50m",
                      "memory": "350Mi"
                    }
                  },
                  "selectAllByDefault": true
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAlert",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "datasource": {
                    "url": "http://vmsingle-example-pvc.default.svc:8429"
                  },
                  "evaluationInterval": "30s",
                  "notifier": {
                    "url": "http://vmalertmanager-example.default.svc:9093"
                  },
                  "replicaCount": 1,
                  "selectAllByDefault": true
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAlertmanager",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "configSecret": "am-global-config",
                  "replicaCount": 1,
                  "selectAllByDefault": true,
                  "storage": {
                    "volumeClaimTemplate": {
                      "spec": {
                        "resources": {
                          "requests": {
                            "storage": "2Gi"
                          }
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAlertmanagerConfig",
                "metadata": {
                  "name": "example-email-web"
                },
                "spec": {
                  "receivers": [
                    {
                      "email_configs": [
                        {
                          "from": "alerting@example.com",
                          "smarthost": "example.com:25",
                          "text": "ALARM",
                          "to": "some-email@example.com"
                        }
                      ],
                      "name": "email",
                      "webhook_configs": [
                        {
                          "url": "http://some-other-wh"
                        }
                      ]
                    }
                  ],
                  "route": {
                    "group_interval": "1m",
                    "receiver": "email",
                    "routes": [
                      {
                        "receiver": "email"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMAuth",
                "metadata": {
                  "name": "vmauth-sample"
                },
                "spec": {
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "repository": "victoriametrics/vmauth"
                  },
                  "replicaCount": 1,
                  "resources": {
                    "limits": {
                      "cpu": "500m",
                      "memory": "850Mi"
                    },
                    "requests": {
                      "cpu": "250m",
                      "memory": "350Mi"
                    }
                  },
                  "selectAllByDefault": true
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMCluster",
                "metadata": {
                  "name": "example-persistent"
                },
                "spec": {
                  "replicationFactor": 2,
                  "retentionPeriod": "4",
                  "vminsert": {
                    "replicaCount": 2,
                    "resources": {
                      "limits": {
                        "cpu": "1",
                        "memory": "1000Mi"
                      },
                      "requests": {
                        "cpu": "0.5",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "vmselect": {
                    "cacheMountPath": "/select-cache",
                    "replicaCount": 2,
                    "resources": {
                      "limits": {
                        "cpu": "1",
                        "memory": "1000Mi"
                      },
                      "requests": {
                        "cpu": "0.5",
                        "memory": "500Mi"
                      }
                    },
                    "storage": {
                      "volumeClaimTemplate": {
                        "spec": {
                          "resources": {
                            "requests": {
                              "storage": "2Gi"
                            }
                          }
                        }
                      }
                    }
                  },
                  "vmstorage": {
                    "replicaCount": 2,
                    "resources": {
                      "limits": {
                        "cpu": "1",
                        "memory": "1500Mi"
                      }
                    },
                    "storage": {
                      "volumeClaimTemplate": {
                        "spec": {
                          "resources": {
                            "requests": {
                              "storage": "10Gi"
                            }
                          }
                        }
                      }
                    },
                    "storageDataPath": "/vm-data"
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMNodeScrape",
                "metadata": {
                  "name": "cadvisor-metrics"
                },
                "spec": {
                  "bearerTokenFile": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                  "interval": "10s",
                  "relabelConfigs": [
                    {
                      "action": "labelmap",
                      "regex": "__meta_kubernetes_node_label_(.+)"
                    },
                    {
                      "replacement": "kubernetes.default.svc:443",
                      "targetLabel": "__address__"
                    },
                    {
                      "regex": "(.+)",
                      "replacement": "/api/v1/nodes/$1/proxy/metrics/cadvisor",
                      "sourceLabels": [
                        "__meta_kubernetes_node_name"
                      ],
                      "targetLabel": "__metrics_path__"
                    }
                  ],
                  "scheme": "https",
                  "scrapeTimeout": "2s",
                  "selector": {},
                  "tlsConfig": {
                    "caFile": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt",
                    "insecureSkipVerify": true
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMPodScrape",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "podMetricsEndpoints": [
                    {
                      "port": "metrics",
                      "scheme": "http"
                    }
                  ],
                  "selector": {
                    "matchLabels": {
                      "app.kubernetes.io/name": "example-application",
                      "monitored-by": "vm-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMProbe",
                "metadata": {
                  "name": "agent"
                },
                "spec": {
                  "interval": "2s",
                  "jobName": "static-probe",
                  "module": "http_2xx",
                  "targets": {
                    "staticConfig": {
                      "targets": [
                        "vmagent-example.default.svc:8429/health"
                      ]
                    }
                  },
                  "vmProberSpec": {
                    "url": "prometheus-blackbox-exporter.default.svc:9115"
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMRule",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "groups": [
                    {
                      "name": "kafka",
                      "rules": [
                        {
                          "alert": "coordinator down",
                          "annotations": {
                            "description": "kafka coordinator is down",
                            "value": "{{ $value }}"
                          },
                          "expr": "ml_app_gauge{exec_context=\"consumer_group_state\"} == 0",
                          "for": "60s",
                          "labels": {
                            "job": "{{ $labels.job }}",
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMScrapeConfig",
                "metadata": {
                  "name": "mongodb"
                },
                "spec": {
                  "consulSDConfigs": [
                    {
                      "server": "https://consul-dns:8500",
                      "services": [
                        "mongodb"
                      ]
                    }
                  ],
                  "relabelConfigs": [
                    {
                      "action": "replace",
                      "sourceLabels": [
                        "__meta_consul_service"
                      ],
                      "targetLabel": "job"
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMServiceScrape",
                "metadata": {
                  "name": "example-scrape"
                },
                "spec": {
                  "endpoints": [
                    {
                      "port": "http"
                    }
                  ],
                  "namespaceSelector": {},
                  "selector": {
                    "matchLabels": {
                      "app.kubernetes.io/name": "example-application",
                      "monitored-by": "vm-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMSingle",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "retentionPeriod": "1"
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMSingle",
                "metadata": {
                  "name": "example-pvc"
                },
                "spec": {
                  "removePvcAfterDelete": true,
                  "retentionPeriod": "1",
                  "storage": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "1Gi"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMStaticScrape",
                "metadata": {
                  "name": "vmstaticscrape-sample"
                },
                "spec": {
                  "jobName": "static",
                  "targetEndpoints": [
                    {
                      "labels": {
                        "env": "dev",
                        "project": "operator"
                      },
                      "targets": [
                        "192.168.0.1:9100",
                        "196.168.0.50:9100"
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.victoriametrics.com/v1beta1",
                "kind": "VMUser",
                "metadata": {
                  "name": "vmuser-tenant-1"
                },
                "spec": {
                  "bearerToken": "some-token",
                  "targetRefs": [
                    {
                      "crd": {
                        "kind": "VMCluster/vminsert",
                        "name": "test-persistent",
                        "namespace": "vm"
                      },
                      "target_path_suffix": "/insert/1"
                    },
                    {
                      "crd": {
                        "kind": "VMCluster/vmselect",
                        "name": "test-persistent",
                        "namespace": "vm"
                      },
                      "target_path_suffix": "/select/1"
                    },
                    {
                      "paths": [
                        "/internal/resetRollupResultCache"
                      ],
                      "static": {
                        "url": "http://vmselect-test-persistent.default.svc:8481/"
                      }
                    }
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/victoriametrics/operator@sha256:f4d54f2892712fdab87e0371066c59b54903a8c4fadd68bc38218e995718a722
          createdAt: "2025-12-06T15:03:12Z"
          description: Provides monitoring capabilities for kubernetes clusters and
            applications
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorhub.io/ui-metadata-max-k8s-version: "1.30"
          operators.openshift.io/infrastructure-features: '[fips]'
          operators.operatorframework.io.bundle.channel.default.v1: beta
          operators.operatorframework.io.bundle.channels.v1: beta
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/VictoriaMetrics/operator
          support: VictoriaMetrics
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: VLAgent - is a tiny but brave agent, which helps you collect
              logs from various sources and stores them in VictoriaLogs.
            displayName: VLAgent
            kind: VLAgent
            name: vlagents.operator.victoriametrics.com
            version: v1
          - description: VLCluster is fast, cost-effective and scalable logs database.
            displayName: VLCluster
            kind: VLCluster
            name: vlclusters.operator.victoriametrics.com
            version: v1
          - description: |-
              VLogs is fast, cost-effective and scalable logs database.
              VLogs is the Schema for the vlogs API
            displayName: VLogs
            kind: VLogs
            name: vlogs.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VLSingle is fast, cost-effective and scalable logs database.
              VLSingle is the Schema for the API
            displayName: VLSingle
            kind: VLSingle
            name: vlsingles.operator.victoriametrics.com
            version: v1
          - description: |-
              VMAgent - is a tiny but brave agent, which helps you collect metrics from various sources and stores them in VictoriaMetrics
              or any other Prometheus-compatible storage system that supports the remote_write protocol.
            displayName: VMAgent
            kind: VMAgent
            name: vmagents.operator.victoriametrics.com
            version: v1beta1
          - description: VMAlertmanagerConfig is the Schema for the vmalertmanagerconfigs
              API
            displayName: VMAlertmanager Config
            kind: VMAlertmanagerConfig
            name: vmalertmanagerconfigs.operator.victoriametrics.com
            version: v1beta1
          - description: VMAlertmanager represents Victoria-Metrics deployment for
              Alertmanager.
            displayName: VMAlertmanager
            kind: VMAlertmanager
            name: vmalertmanagers.operator.victoriametrics.com
            version: v1beta1
          - description: VMAlert  executes a list of given alerting or recording rules
              against configured address.
            displayName: VMAlert
            kind: VMAlert
            name: vmalerts.operator.victoriametrics.com
            version: v1beta1
          - description: VMAnomaly is the Schema for the vmanomalies API.
            displayName: VMAnomaly
            kind: VMAnomaly
            name: vmanomalies.operator.victoriametrics.com
            version: v1
          - description: VMAuth is the Schema for the vmauths API
            displayName: VMAuth
            kind: VMAuth
            name: vmauths.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMCluster is fast, cost-effective and scalable time-series database.
              Cluster version with
            displayName: VMCluster
            kind: VMCluster
            name: vmclusters.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMNodeScrape defines discovery for targets placed on kubernetes nodes,
              usually its node-exporters and other host services.
              InternalIP is used as __address__ for scraping.
            displayName: VMNode Scrape
            kind: VMNodeScrape
            name: vmnodescrapes.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMPodScrape is scrape configuration for pods,
              it generates vmagent's config for scraping pod targets
              based on selectors.
            displayName: VMPod Scrape
            kind: VMPodScrape
            name: vmpodscrapes.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMProbe defines a probe for targets, that will be executed with prober,
              like blackbox exporter.
              It helps to monitor reachability of target with various checks.
            displayName: VMProbe
            kind: VMProbe
            name: vmprobes.operator.victoriametrics.com
            version: v1beta1
          - description: VMRule defines rule records for vmalert application
            displayName: VMRule
            kind: VMRule
            name: vmrules.operator.victoriametrics.com
            version: v1beta1
          - description: VMScrapeConfig specifies a set of targets and parameters
              describing how to scrape them.
            displayName: VMScrape Config
            kind: VMScrapeConfig
            name: vmscrapeconfigs.operator.victoriametrics.com
            version: v1beta1
          - description: |-
              VMServiceScrape is scrape configuration for endpoints associated with
              kubernetes service,
              it generates scrape configuration for vmagent based on selectors.
              result config will scrape service endpoints
            displayName: VMService Scrape
            kind: VMServiceScrape
            name: vmservicescrapes.operator.victoriametrics.com
            version: v1beta1
          - description: VMSingle  is fast, cost-effective and scalable time-series
              database.
            displayName: VMSingle
            kind: VMSingle
            name: vmsingles.operator.victoriametrics.com
            version: v1beta1
          - description: VMStaticScrape  defines static targets configuration for
              scraping.
            displayName: VMStatic Scrape
            kind: VMStaticScrape
            name: vmstaticscrapes.operator.victoriametrics.com
            version: v1beta1
          - description: VMUser is the Schema for the vmusers API
            displayName: VMUser
            kind: VMUser
            name: vmusers.operator.victoriametrics.com
            version: v1beta1
          - description: VTCluster is fast, cost-effective and scalable traces database.
            displayName: VTCluster
            kind: VTCluster
            name: vtclusters.operator.victoriametrics.com
            version: v1
          - description: |-
              VTSingle is fast, cost-effective and scalable traces database.
              VTSingle is the Schema for the API
            displayName: VTSingle
            kind: VTSingle
            name: vtsingles.operator.victoriametrics.com
            version: v1
        description: |
          Operator manages VictoriaMetrics applications and provides monitoring features for applications running inside and outside kubernetes cluster. It has support for prometheus-operator objects and
          provides migration mechanism.

          Operator designed to use existing installation of VictoriaMetrics inside or outside kubernetes cluster or it could
          bring own resources and fully manages them.

           You can read more about operator at docs:
            - quick start [doc](https://github.com/VictoriaMetrics/operator/blob/master/docs/quick-start.md)
            - high availability [doc](https://github.com/VictoriaMetrics/operator/blob/master/docs/high-availability.md)
            - design and description of implementation [design](https://github.com/VictoriaMetrics/operator/blob/master/docs/design.md)
            - operator objects description [doc](https://github.com/VictoriaMetrics/operator/blob/master/docs/api.md)

          # VictoriaMetrics
          * VictoriaMetrics can be used as long-term storage for Prometheus or for [vmagent](https://github.com/VictoriaMetrics/VictoriaMetrics/blob/master/app/vmagent/README.md).
          See [these docs](https://github.com/VictoriaMetrics/VictoriaMetrics#prometheus-setup) for details.
          * Supports [Prometheus querying API](https://prometheus.io/docs/prometheus/latest/querying/api/), so it can be used as Prometheus drop-in replacement in Grafana.
          VictoriaMetrics implements [MetricsQL](https://github.com/VictoriaMetrics/VictoriaMetrics/wiki/MetricsQL) query language, which is inspired by PromQL.
          * Supports global query view. Multiple Prometheus instances may write data into VictoriaMetrics. Later this data may be used in a single query.
          * High performance and good scalability for both [inserts](https://medium.com/@valyala/high-cardinality-tsdb-benchmarks-victoriametrics-vs-timescaledb-vs-influxdb-13e6ee64dd6b)
          and [selects](https://medium.com/@valyala/when-size-matters-benchmarking-victoriametrics-vs-timescale-and-influxdb-6035811952d4).
          [Outperforms InfluxDB and TimescaleDB by up to 20x](https://medium.com/@valyala/measuring-vertical-scalability-for-time-series-databases-in-google-cloud-92550d78d8ae).
          * [Uses 10x less RAM than InfluxDB](https://medium.com/@valyala/insert-benchmarks-with-inch-influxdb-vs-victoriametrics-e31a41ae2893) when working with millions of unique time series (aka high cardinality).
          * Optimized for time series with high churn rate. Think about [prometheus-operator](https://github.com/coreos/prometheus-operator) metrics from frequent deployments in Kubernetes.
          * High data compression, so [up to 70x more data points](https://medium.com/@valyala/when-size-matters-benchmarking-victoriametrics-vs-timescale-and-influxdb-6035811952d4)
          may be crammed into limited storage comparing to TimescaleDB.
          * Optimized for storage with high-latency IO and low IOPS (HDD and network storage in AWS, Google Cloud, Microsoft Azure, etc). See [graphs from these benchmarks](https://medium.com/@valyala/high-cardinality-tsdb-benchmarks-victoriametrics-vs-timescaledb-vs-influxdb-13e6ee64dd6b).
          * A single-node VictoriaMetrics may substitute moderately sized clusters built with competing solutions such as Thanos, M3DB, Cortex, InfluxDB or TimescaleDB.
          See [vertical scalability benchmarks](https://medium.com/@valyala/measuring-vertical-scalability-for-time-series-databases-in-google-cloud-92550d78d8ae),
          [comparing Thanos to VictoriaMetrics cluster](https://medium.com/@valyala/comparing-thanos-to-victoriametrics-cluster-b193bea1683)
          and [Remote Write Storage Wars](https://promcon.io/2019-munich/talks/remote-write-storage-wars/) talk
          from [PromCon 2019](https://promcon.io/2019-munich/talks/remote-write-storage-wars/).
          * Easy operation:
              * VictoriaMetrics consists of a single [small executable](https://medium.com/@valyala/stripping-dependency-bloat-in-victoriametrics-docker-image-983fb5912b0d) without external dependencies.
              * All the configuration is done via explicit command-line flags with reasonable defaults.
              * All the data is stored in a single directory pointed by `-storageDataPath` flag.
              * Easy and fast backups from [instant snapshots](https://medium.com/@valyala/how-victoriametrics-makes-instant-snapshots-for-multi-terabyte-time-series-data-e1f3fb0e0282)
              to S3 or GCS with [vmbackup](https://github.com/VictoriaMetrics/VictoriaMetrics/blob/master/app/vmbackup/README.md) / [vmrestore](https://github.com/VictoriaMetrics/VictoriaMetrics/blob/master/app/vmrestore/README.md).
              See [this article](https://medium.com/@valyala/speeding-up-backups-for-big-time-series-databases-533c1a927883) for more details.
          * Storage is protected from corruption on unclean shutdown (i.e. OOM, hardware reset or `kill -9`) thanks to [the storage architecture](https://medium.com/@valyala/how-victoriametrics-makes-instant-snapshots-for-multi-terabyte-time-series-data-e1f3fb0e0282).
          * Supports metrics' scraping, ingestion and [backfilling](https://github.com/VictoriaMetrics/VictoriaMetrics#backfilling) via the following protocols:
            * [Metrics from Prometheus exporters](https://github.com/prometheus/docs/blob/master/content/docs/instrumenting/exposition_formats.md#text-based-format)
              such as [node_exporter](https://github.com/prometheus/node_exporter). See [these docs](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-scrape-prometheus-exporters-such-as-node-exporter) for details.
              * [Prometheus remote write API](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#remote_write)
              * [InfluxDB line protocol](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-send-data-from-influxdb-compatible-agents-such-as-telegraf) over HTTP, TCP and UDP.
              * [Graphite plaintext protocol](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-send-data-from-graphite-compatible-agents-such-as-statsd) with [tags](https://graphite.readthedocs.io/en/latest/tags.html#carbon)
              if `-graphiteListenAddr` is set.
              * [OpenTSDB put message](https://github.com/VictoriaMetrics/VictoriaMetrics#sending-data-via-telnet-put-protocol) if `-opentsdbListenAddr` is set.
              * [HTTP OpenTSDB /api/put requests](https://github.com/VictoriaMetrics/VictoriaMetrics#sending-opentsdb-data-via-http-apiput-requests) if `-opentsdbHTTPListenAddr` is set.
              * [How to import time series data](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-import-time-series-data).
              * [Prometheus exposition format](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-import-data-in-prometheus-exposition-format).
              * [Arbitrary CSV data](https://github.com/VictoriaMetrics/VictoriaMetrics#how-to-import-csv-data).
          * Supports metrics' relabeling. See [these docs](https://github.com/VictoriaMetrics/VictoriaMetrics#relabeling) for details.
          * Ideally works with big amounts of time series data from Kubernetes, IoT sensors, connected cars, industrial telemetry, financial data and various Enterprise workloads.
        displayName: VictoriaMetrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - monitoring
        - prometheus
        - victoriametrics
        links:
        - name: VictoriaMetrics
          url: https://victoriametrics.com
        maintainers:
        - email: nik@victoriametrics.com
          name: f41gh7
        - email: info@victoriametrics.com
          name: info
        maturity: beta
        minKubeVersion: 1.23.0
        provider:
          name: VictoriaMetrics
        relatedImages:
        - docker.io/victoriametrics/operator:v0.66.1
        - quay.io/community-operator-pipeline-prod/victoriametrics-operator:0.66.1
        version: 0.66.1
      entries:
      - name: victoriametrics-operator.v0.66.1
        version: 0.66.1
      - name: victoriametrics-operator.v0.66.0
        version: 0.66.0
      - name: victoriametrics-operator.v0.65.0
        version: 0.65.0
      - name: victoriametrics-operator.v0.64.1
        version: 0.64.1
      - name: victoriametrics-operator.v0.64.0
        version: 0.64.0
      - name: victoriametrics-operator.v0.63.0
        version: 0.63.0
      - name: victoriametrics-operator.v0.62.0
        version: 0.62.0
      - name: victoriametrics-operator.v0.61.2
        version: 0.61.2
      - name: victoriametrics-operator.v0.61.1
        version: 0.61.1
      - name: victoriametrics-operator.v0.61.0
        version: 0.61.0
      - name: victoriametrics-operator.v0.60.2
        version: 0.60.2
      - name: victoriametrics-operator.v0.60.1
        version: 0.60.1
      - name: victoriametrics-operator.v0.60.0
        version: 0.60.0
      - name: victoriametrics-operator.v0.59.2
        version: 0.59.2
      - name: victoriametrics-operator.v0.59.1
        version: 0.59.1
      - name: victoriametrics-operator.v0.59.0
        version: 0.59.0
      - name: victoriametrics-operator.v0.58.1
        version: 0.58.1
      - name: victoriametrics-operator.v0.58.0
        version: 0.58.0
      - name: victoriametrics-operator.v0.57.0
        version: 0.57.0
      - name: victoriametrics-operator.v0.56.0
        version: 0.56.0
      - name: victoriametrics-operator.v0.55.0
        version: 0.55.0
      - name: victoriametrics-operator.v0.54.1
        version: 0.54.1
      - name: victoriametrics-operator.v0.53.0
        version: 0.53.0
      - name: victoriametrics-operator.v0.52.0
        version: 0.52.0
      name: beta
    defaultChannel: beta
    packageName: victoriametrics-operator
    provider:
      name: VictoriaMetrics
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: job-set
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: jobset-operator.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "JobSetOperator",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-jobset-operator"
                },
                "spec": {
                  "managementState": "Managed",
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-08-26"
          description: |
            The JobSet Operator provides the ability to deploy a JobSet controller in OpenShift.
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-jobset-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          repository: https://github.com/openshift/jobset-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: Job Set Operator
            kind: JobSetOperator
            name: jobsetoperators.operator.openshift.io
            version: v1
        description: |
          The JobSet Operator provides the ability to deploy a JobSet controller in OpenShift.
        displayName: Job Set Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - jobset-operator
        - jobset
        links:
        - name: Source Code
          url: https://github.com/openshift/kubernetes-sigs-jobset
        - name: Source Code
          url: https://github.com/openshift/jobset-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.31.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/job-set/jobset-operator-bundle@sha256:1f8fd0e1c6636b04dcc7cf4cf27d33edd70c31db5b6c5fc305e415df8a5b10d5
        - registry.redhat.io/job-set/jobset-rhel9-operator@sha256:e5b874a603a2f6cb97b4312ea2b00275cc4304773bcd9fca0782f1335576cd0b
        - registry.redhat.io/job-set/jobset-rhel9@sha256:104e8a00fea252ffeb7fbef678be0b2f57c6e0cdde8dcae0134c2a4d681cb63b
        version: 0.1.0
      entries:
      - name: jobset-operator.v0.1.0
        version: 0.1.0
      name: tech-preview-v0.1
    defaultChannel: tech-preview-v0.1
    packageName: job-set
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: CyberArk
      provider-url: https://www.cyberark.com/
    name: vcp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: vcp-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "installer.venafi.com/v1alpha1",
                "kind": "VenafiInstall",
                "metadata": {
                  "name": "install-venafi-enhanced-issuer"
                },
                "spec": {
                  "certManager": {
                    "install": true
                  },
                  "globals": {
                    "imagePullSecretNames": [
                      "venafi"
                    ]
                  },
                  "venafiConnection": {
                    "install": true
                  },
                  "venafiEnhancedIssuer": {
                    "install": true
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.venafi.cloud/public/venafi-images/vcp-operator@sha256:9da79fd0941c21e433f22aaaccc43ebbd4646e685aea0050194954d8b4019c05
          createdAt: "2024-05-30T11:35:41Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              VenafiInstall is an object for installing Venafi components onto a Kubernetes
              cluster
            displayName: VenafiInstall
            kind: VenafiInstall
            name: venafiinstalls.installer.venafi.com
            version: v1alpha1
        description: |
          Venafi Control Plane Operator for Red Hat OpenShift simplifies deployment of Venafi's enterprise components and dependencies.

          The enterprise components include:
          - Enterprise cert-manager: An enhanced version of cert-manager designed for application certificate management within your clusters.
          - Venafi Enhanced Issuer: Enables seamless certificate enrollment for your clusters directly from the Venafi Control Plane.
          - Venafi Firefly: A high-performance, lightweight issuer for certificates, centrally managed by the Venafi Control Plane.
          - Venafi Kubernetes Agent: Provides real-time visibility into certificates and Kubernetes resources directly within the Venafi Control Plane.
        displayName: Venafi Control Plane Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - venafi
        - vcp-operator
        links:
        - name: Documentation
          url: https://docs.venafi.cloud/
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: Venafi
          url: https://venafi.com
        relatedImages:
        - registry.connect.redhat.com/venafi/vcp-operator@sha256:9d24507aabd06856c7c35d73417b6ce065164f9c966053b494d68f14f0e260b7
        - registry.venafi.cloud/public/venafi-images/vcp-operator@sha256:9da79fd0941c21e433f22aaaccc43ebbd4646e685aea0050194954d8b4019c05
        version: 1.0.0
      entries:
      - name: vcp-operator.v1.0.0
        version: 1.0.0
      name: alpha
    - currentCSV: vcp-operator.v1.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "installer.venafi.com/v1alpha1",
                "kind": "VenafiInstall",
                "metadata": {
                  "name": "install-venafi-enhanced-issuer"
                },
                "spec": {
                  "certManager": {
                    "install": true
                  },
                  "globals": {
                    "imagePullSecretNames": [
                      "venafi"
                    ]
                  },
                  "venafiConnection": {
                    "install": true
                  },
                  "venafiEnhancedIssuer": {
                    "install": true
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.venafi.cloud/public/venafi-images/vcp-operator@sha256:e866acaacd26a0d586c0a7d3cc01b72d611054a267f79d34b8a9ef3cafc300b0
          createdAt: "2025-11-10T13:26:46Z"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: unknown
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              VenafiInstall is an object for installing CyberArk components onto a Kubernetes
              cluster
            displayName: VenafiInstall
            kind: VenafiInstall
            name: venafiinstalls.installer.venafi.com
            version: v1alpha1
        description: |
          The CyberArk Certificate Manager Operator for Red Hat OpenShift, formerly known as the Venafi Control Plane Operator, simplifies the deployment of enterprise components part of the CyberArk Certificate Manager for Kubernetes.

          The components include:
          - cert-manager: An enterprise distribution of cert-manager designed for application certificate management within your clusters.
          - Enterprise Issuer: Enables seamless certificate enrollment directly from the Certificate Manager.
          - Workload Identity Manager: A high-performance issuer for certificates, centrally managed by the Certificate Manager.
          - Agent: Provides real-time visibility into cluster resources directly within the Certificate Manager.
        displayName: CyberArk Certificate Manager Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cyberark
        - vcp-operator
        links:
        - name: Documentation
          url: https://docs.venafi.cloud/vaas/k8s-components/c-vcpo-overview/
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: CyberArk
          url: https://www.cyberark.com/
        relatedImages:
        - registry.connect.redhat.com/venafi/vcp-operator@sha256:ba1267a2046585c3b24c78198365dd8a13c6aaebbdbe76d6e666b89f11e9429d
        - registry.venafi.cloud/public/venafi-images/vcp-operator@sha256:e866acaacd26a0d586c0a7d3cc01b72d611054a267f79d34b8a9ef3cafc300b0
        version: 1.8.2
      entries:
      - name: vcp-operator.v1.8.2
        version: 1.8.2
      - name: vcp-operator.v1.8.1
        version: 1.8.1
      - name: vcp-operator.v1.8.0
        version: 1.8.0
      - name: vcp-operator.v1.7.0
        version: 1.7.0
      - name: vcp-operator.v1.6.0
        version: 1.6.0
      - name: vcp-operator.v1.5.0
        version: 1.5.0
      - name: vcp-operator.v1.4.0
        version: 1.4.0
      - name: vcp-operator.v1.3.0
        version: 1.3.0
      - name: vcp-operator.v1.2.1
        version: 1.2.1
      - name: vcp-operator.v1.2.0
        version: 1.2.0
      - name: vcp-operator.v1.1.1
        version: 1.1.1
      name: stable
    defaultChannel: stable
    packageName: vcp-operator
    provider:
      name: CyberArk
      url: https://www.cyberark.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Fusion Access for SAN Team
      provider-url: ""
    name: openshift-fusion-access-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-fusion-access-operator.v1.1.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "fusion.storage.openshift.io/v1alpha1",
                "kind": "FileSystemClaim",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "openshift-fusion-access-operator"
                  },
                  "name": "filesystemclaim-sample"
                },
                "spec": {
                  "devices": [
                    "uuid.58d49490-25b4-56a2-a78f-bcdb9112f72b",
                    "uuid.e9751ba1-37d2-53b2-82e7-6a9b661c9556",
                    "eui.0025388b21109b01"
                  ]
                }
              },
              {
                "apiVersion": "fusion.storage.openshift.io/v1alpha1",
                "kind": "FusionAccess",
                "metadata": {
                  "name": "fusionaccess-object"
                },
                "spec": {
                  "storageDeviceDiscovery": {
                    "create": true
                  },
                  "storageScaleVersion": "v5.2.3.5"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-12-17T06:26:05Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operatorframework.io/initialization-resource: '{"apiVersion":"fusion.storage.openshift.io/v1alpha1","kind":"FusionAccess","metadata":{"name":"fusionaccess-object"},"spec":{"storageDeviceDiscovery":{"create":true},"storageScaleVersion":"v5.2.3.5"}}'
          operatorframework.io/suggested-namespace: ibm-fusion-access
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["Openshift Container Platform","OpenShift
            Virtualization Engine"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["localvolumediscoveryresults.fusion.storage.openshift.io","localvolumediscoveries.fusion.storage.openshift.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: FileSystemClaim is the Schema for the filesystemclaims API.
            displayName: File System Claim
            kind: FileSystemClaim
            name: filesystemclaims.fusion.storage.openshift.io
            version: v1alpha1
          - description: FusionAccess is the Schema for the fusionaccesses API
            displayName: Fusion Access
            kind: FusionAccess
            name: fusionaccesses.fusion.storage.openshift.io
            version: v1alpha1
          - kind: LocalVolumeDiscovery
            name: localvolumediscoveries.fusion.storage.openshift.io
            version: v1alpha1
          - kind: LocalVolumeDiscoveryResult
            name: localvolumediscoveryresults.fusion.storage.openshift.io
            version: v1alpha1
        description: "IBM Fusion Access for SAN is a cloud-native storage solution
          designed to\nhelp enterprises transition smoothly from traditional virtualization\nenvironments
          to OpenShift. \n\nBuilt on IBM Storage Scale technology, it provides a consistent,\nhigh-performance
          datastore-like experience while reusing existing SAN\ninfrastructure. With
          enhanced observability, platform-storage separation, and\ntrue storage abstraction,
          Fusion Access simplifies management and boosts\nefficiency.\n\n## Prerequisites
          and warnings\n\n- storage clusters require at least 3 available nodes\n-
          each available node must have at least 20 GiB of RAM\n\nFor more information,
          see [Prerequisites and configuration](https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/virtualization/storage#fusion-access-san-prereqs_install-configure-fusion-access-san).\n\nThis
          operator will need an IBM Fusion Entitlement. See [https://access.ibmfusion.eu/](https://access.ibmfusion.eu/)\nfor
          additional information.\n"
        displayName: Fusion Access for SAN
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gpfs
        - storage
        - virtualization
        links:
        - name: Fusion Access for SAN
          url: https://access.ibmfusion.eu/
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/virtualization/storage#install-configure-fusion-access-san
        maintainers:
        - email: sughosh@redhat.com
          name: Suvro
        - email: nlevanon@redhat.com
          name: Nadav
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Fusion Access for SAN Team
        relatedImages:
        - icr.io/cpopen/fusion-access/devicefinder-rhel9@sha256:7aa10cd4c1b7d58f981355ba8ab7a61ef8f8dd22b4d5f685980deb2b1bd5f034
        - registry.connect.redhat.com/ibm/fusion-access-bundle@sha256:edf8351ab0a7c942e0dbabdc1e3e5b75c5e463a429d347d4579a73dfeef5858e
        - icr.io/cpopen/fusion-access-controller-rhel9-operator@sha256:f5286af9394931f61b727c923324fadc20b6ea77539be79614d198fd2e7504a7
        - icr.io/cpopen/fusion-access/console-plugin-rhel9@sha256:fcfc796b0c51b55fe743c49e8afa2e5ff1ac25ae360879920902a65ddfd54881
        version: 1.1.0-1
      entries:
      - name: openshift-fusion-access-operator.v1.1.0-1
        version: 1.1.0-1
      - name: openshift-fusion-access-operator.v1.0.1
        version: 1.0.1
      - name: openshift-fusion-access-operator.v1.0.0
        version: 1.0.0
      - name: openshift-fusion-access-operator.v0.9.3
        version: 0.9.3
      name: stable-v1
    defaultChannel: stable-v1
    packageName: openshift-fusion-access-operator
    provider:
      name: Fusion Access for SAN Team
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: community-windows-machine-config-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: community-windows-machine-config-operator.v6.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/openshift-windows/community-windows-machine-config-operator:community-4.11-6c3601f
          createdAt: "2022-08-31T18:57:22Z"
          description: An operator that enables Windows container workloads on OCP
          olm.skipRange: '>=5.0.0 <6.0.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-windows-machine-config-operator
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/windows-machine-config-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          ## WARNING
          Community distribution of the Windows Machine Config Operator.
          This is a preview build, and is not meant for production workloads.
          Issues with this distribution of WMCO can be opened against the [WMCO repository](https://github.com/openshift/windows-machine-config-operator).
          Please read through the [troubleshooting doc](https://github.com/openshift/windows-machine-config-operator/blob/community-4.11/docs/TROUBLESHOOTING.md)
          before opening an issue.
          Please ensure that when installing this operator the starting CSV you subscribe to is supported on the
          version of OKD/OCP you are using. This CSV is meant for OKD/OCP community-4.11.
          ## Documentation
          ### Introduction
          The Windows Machine Config Operator configures Windows instances into nodes, enabling Windows container workloads
          to be ran within OKD/OCP clusters. Windows instances can be added either by creating a [MachineSet](https://docs.openshift.com/container-platform/latest/machine_management/creating_machinesets/creating-machineset-aws.html#machine-api-overview_creating-machineset-aws),
          or by specifying existing instances through a [ConfigMap](https://github.com/openshift/windows-machine-config-operator/blob/community-4.11/README.md#configuring-byoh-bring-your-own-host-windows-instances).
          The operator will do all the necessary steps to configure the instance so that it can join the cluster as a worker node.
          ### Pre-requisites
          - [Cluster and OS pre-requisites](https://github.com/openshift/windows-machine-config-operator/blob/community-4.11/docs/wmco-prerequisites.md)
          ### Usage
          Please see the usage section of [README.md](https://github.com/openshift/windows-machine-config-operator/blob/community-4.11/README.md#usage).
          ### Limitations
          #### DeploymentConfigs
          Windows Nodes do not support workloads created via DeploymentConfigs. Please use a normal Deployment, or other method to
          deploy workloads.
        displayName: Community Windows Machine Config Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - windows
        maintainers:
        - email: team-winc@redhat.com
          name: Red Hat, Windows Container Support for OpenShift
        maturity: preview
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/community-windows-machine-config-operator@sha256:2b79f0e6b8bc069fac7d6cb5c86783fdc98ccae30d279ca0492f1eca96b6ea3f
        - quay.io/openshift-windows/community-windows-machine-config-operator:community-4.11-6c3601f
        version: 6.0.0
      entries:
      - name: community-windows-machine-config-operator.v6.0.0
        version: 6.0.0
      name: preview
    defaultChannel: preview
    packageName: community-windows-machine-config-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Infinispan
      provider-url: ""
    name: infinispan
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infinispan-operator.v2.2.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: quay.io/infinispan/operator:2.2.5.Final
          description: Create and manage Infinispan clusters.
          olm.skipRange: '>=2.1.x <2.2.1'
          operators.operatorframework.io/builder: operator-sdk-v1.3.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Infinispan is an in-memory data store and open-source project.

          ### Infinispan
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Infinispan cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Infinispan pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Infinispan Operator lets you adjust resource allocation to suit your requirements.
        displayName: Infinispan Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Blog
          url: https://blog.infinispan.org/
        - name: Documentation
          url: https://infinispan.org/documentation
        - name: Chat
          url: https://infinispan.zulipchat.com/#narrow/stream/185835-infinispan-cloud
        - name: Operator Source Code
          url: https://github.com/infinispan/infinispan-operator
        maintainers:
        - email: infinispan-dev@lists.jboss.org
          name: Infinispan Community
        maturity: alpha
        provider:
          name: Infinispan
        relatedImages:
        - quay.io/infinispan/operator:2.2.5.Final
        - quay.io/openshift-community-operators/infinispan@sha256:3ba9d20e83825f3c041a7dfd195b0800f74fa0f5cd1e6218fbd3547fedd85d64
        version: 2.2.5
      entries:
      - name: infinispan-operator.v2.2.5
        version: 2.2.5
      - name: infinispan-operator.v2.2.4
        version: 2.2.4
      - name: infinispan-operator.v2.2.3
        version: 2.2.3
      - name: infinispan-operator.v2.2.2
        version: 2.2.2
      - name: infinispan-operator.v2.2.1
        version: 2.2.1
      - name: infinispan-operator.v2.2.0
        version: 2.2.0
      name: 2.2.x
    - currentCSV: infinispan-operator.v2.3.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create cache --template=org.infinispan.DIST_SYNC mycache\nput --cache=mycache hello world\nput --cache=mycache hola mundo\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "templateName": "org.infinispan.DIST_SYNC"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: quay.io/infinispan/operator:2.3.7.Final
          description: Create and manage Infinispan clusters.
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Infinispan is an in-memory data store and open-source project.

          ### Infinispan
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Infinispan cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Infinispan pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Infinispan Operator lets you adjust resource allocation to suit your requirements.
        displayName: Infinispan Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Blog
          url: https://blog.infinispan.org/
        - name: Documentation
          url: https://infinispan.org/documentation
        - name: Chat
          url: https://infinispan.zulipchat.com/#narrow/stream/185835-infinispan-cloud
        - name: Operator Source Code
          url: https://github.com/infinispan/infinispan-operator
        maintainers:
        - email: infinispan-dev@lists.jboss.org
          name: Infinispan Community
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Infinispan
        relatedImages:
        - quay.io/community-operator-pipeline-prod/infinispan@sha256:f165693aa550903d7a26b429ed4d093f60194a7a04148e65e61c52d67b527fad
        - quay.io/infinispan/operator:2.3.7.Final
        version: 2.3.8
      entries:
      - name: infinispan-operator.v2.3.8
        version: 2.3.8
      - name: infinispan-operator.v2.3.7
        version: 2.3.7
      - name: infinispan-operator.v2.3.6
        version: 2.3.6
      - name: infinispan-operator.v2.3.5
        version: 2.3.5
      - name: infinispan-operator.v2.3.4
        version: 2.3.4
      - name: infinispan-operator.v2.3.3
        version: 2.3.3
      - name: infinispan-operator.v2.3.2
        version: 2.3.2
      - name: infinispan-operator.v2.3.1
        version: 2.3.1
      - name: infinispan-operator.v2.3.0
        version: 2.3.0
      name: 2.3.x
    - currentCSV: infinispan-operator.v2.4.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create counter --concurrency-level=1 --initial-value=5 --storage=VOLATILE --type=weak batch-counter\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "template": "\u003cdistributed-cache /\u003e"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: quay.io/infinispan/operator:2.4.17.Final
          description: Create and manage Infinispan clusters.
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Infinispan is an in-memory data store and open-source project.

          ### Infinispan
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Infinispan cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Infinispan pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Infinispan Operator lets you adjust resource allocation to suit your requirements.
        displayName: Infinispan Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Blog
          url: https://blog.infinispan.org/
        - name: Documentation
          url: https://infinispan.org/documentation
        - name: Chat
          url: https://infinispan.zulipchat.com/#narrow/stream/185835-infinispan-cloud
        - name: Operator Source Code
          url: https://github.com/infinispan/infinispan-operator
        maintainers:
        - email: infinispan-dev@lists.jboss.org
          name: Infinispan Community
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Infinispan
        relatedImages:
        - quay.io/community-operator-pipeline-prod/infinispan@sha256:5e1a1fdb5a78a34155abe77754c774c65335ea8cbfdec2a222ee22a062c2db46
        - quay.io/infinispan/operator:2.4.17.Final
        version: 2.4.17
      entries:
      - name: infinispan-operator.v2.4.17
        version: 2.4.17
      - name: infinispan-operator.v2.4.16
        version: 2.4.16
      - name: infinispan-operator.v2.4.15
        version: 2.4.15
      - name: infinispan-operator.v2.4.14
        version: 2.4.14
      - name: infinispan-operator.v2.4.13
        version: 2.4.13
      - name: infinispan-operator.v2.4.12
        version: 2.4.12
      - name: infinispan-operator.v2.4.11
        version: 2.4.11
      - name: infinispan-operator.v2.4.10
        version: 2.4.10
      - name: infinispan-operator.v2.4.9
        version: 2.4.9
      - name: infinispan-operator.v2.4.8
        version: 2.4.8
      - name: infinispan-operator.v2.4.7
        version: 2.4.7
      - name: infinispan-operator.v2.4.6
        version: 2.4.6
      - name: infinispan-operator.v2.4.5
        version: 2.4.5
      - name: infinispan-operator.v2.4.4
        version: 2.4.4
      - name: infinispan-operator.v2.4.3
        version: 2.4.3
      - name: infinispan-operator.v2.4.2
        version: 2.4.2
      - name: infinispan-operator.v2.4.1
        version: 2.4.1
      - name: infinispan-operator.v2.4.0
        version: 2.4.0
      - name: infinispan-operator.v2.3.8
        version: 2.3.8
      - name: infinispan-operator.v2.3.7
        version: 2.3.7
      - name: infinispan-operator.v2.3.6
        version: 2.3.6
      - name: infinispan-operator.v2.3.5
        version: 2.3.5
      - name: infinispan-operator.v2.3.4
        version: 2.3.4
      - name: infinispan-operator.v2.3.3
        version: 2.3.3
      - name: infinispan-operator.v2.3.2
        version: 2.3.2
      - name: infinispan-operator.v2.3.1
        version: 2.3.1
      - name: infinispan-operator.v2.3.0
        version: 2.3.0
      name: 2.4.x
    - currentCSV: infinispan-operator.v2.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "infinispan.org/v1",
                "kind": "Infinispan",
                "metadata": {
                  "name": "example-infinispan"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example-backup"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Batch",
                "metadata": {
                  "name": "example-batch-inline"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "config": "create counter --concurrency-level=1 --initial-value=5 --storage=VOLATILE --type=weak batch-counter\n"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "example-cache"
                },
                "spec": {
                  "clusterName": "example-infinispan",
                  "name": "mycache",
                  "template": "\u003cdistributed-cache /\u003e"
                }
              },
              {
                "apiVersion": "infinispan.org/v2alpha1",
                "kind": "Restore",
                "metadata": {
                  "name": "example-restore"
                },
                "spec": {
                  "cluster": "example-infinispan",
                  "container": {
                    "cpu": "1000m",
                    "extraJvmOpts": "-Djava.property=me",
                    "memory": "1Gi"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "false"
          containerImage: quay.io/infinispan/operator:2.5.0
          description: Create and manage Infinispan clusters.
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/infinispan/infinispan-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup is the Schema for the backups API
            displayName: Backup
            kind: Backup
            name: backups.infinispan.org
            version: v2alpha1
          - description: Batch is the Schema for the batches API
            displayName: Batch
            kind: Batch
            name: batches.infinispan.org
            version: v2alpha1
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.infinispan.org
            version: v2alpha1
          - description: Infinispan is the Schema for the infinispans API
            displayName: Infinispan Cluster
            kind: Infinispan
            name: infinispans.infinispan.org
            version: v1
          - description: Restore is the Schema for the restores API
            displayName: Restore
            kind: Restore
            name: restores.infinispan.org
            version: v2alpha1
        description: |
          Infinispan is an in-memory data store and open-source project.

          ### Infinispan
          * **Schemaless structure:** Store objects in key/value pairs.
          * **Grid storage:** Distribute and replicate data across clusters.
          * **Elasticity:** Scale to meet workload demands without service disruption.
          * **Polyglot access:** Read, write, and query from multiple client languages with different endpoints.
          * **Continuous availability:** Create a fault-tolerant caching service that guarantees business continuity.

          ### Operator capabilities
          * Built-in intelligence to automate Infinispan cluster deployment.
          * Infinispan CR for service configuration.
          * Cross site configuration and management.
          * Deployment of Grafana and Prometheus resources.
          * Cache CR for fully configurable caches.
          * Batch CR for scripting bulk resource creation.
          * REST and Hot Rod endpoints available at port `11222`.
          * Default application user: `developer`. Infinispan Operator generates credentials in an authentication secret at startup.
          * Infinispan pods request `0.25` (limit `0.50`) CPUs, 512MiB of memory and 1Gi of ReadWriteOnce persistent storage. Infinispan Operator lets you adjust resource allocation to suit your requirements.
        displayName: Infinispan Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - infinispan
        - key value
        - database
        - datagrid
        - open source
        links:
        - name: Blog
          url: https://blog.infinispan.org/
        - name: Documentation
          url: https://infinispan.org/documentation
        - name: Chat
          url: https://infinispan.zulipchat.com/#narrow/stream/185835-infinispan-cloud
        - name: Operator Source Code
          url: https://github.com/infinispan/infinispan-operator
        maintainers:
        - email: infinispan-dev@lists.jboss.org
          name: Infinispan Community
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Infinispan
        relatedImages:
        - quay.io/infinispan/operator:2.5.0
        - quay.io/community-operator-pipeline-prod/infinispan@sha256:251d904a78bf70811acfdce2d7e914d7b81068527e56867c2828c5f34a35ec50
        version: 2.5.0
      entries:
      - name: infinispan-operator.v2.5.0
        version: 2.5.0
      - name: infinispan-operator.v2.4.18
        version: 2.4.18
      - name: infinispan-operator.v2.4.16
        version: 2.4.16
      - name: infinispan-operator.v2.4.15
        version: 2.4.15
      - name: infinispan-operator.v2.4.14
        version: 2.4.14
      - name: infinispan-operator.v2.4.13
        version: 2.4.13
      - name: infinispan-operator.v2.4.12
        version: 2.4.12
      - name: infinispan-operator.v2.4.11
        version: 2.4.11
      - name: infinispan-operator.v2.4.10
        version: 2.4.10
      - name: infinispan-operator.v2.4.9
        version: 2.4.9
      - name: infinispan-operator.v2.4.8
        version: 2.4.8
      - name: infinispan-operator.v2.4.7
        version: 2.4.7
      - name: infinispan-operator.v2.4.6
        version: 2.4.6
      - name: infinispan-operator.v2.4.5
        version: 2.4.5
      - name: infinispan-operator.v2.4.4
        version: 2.4.4
      - name: infinispan-operator.v2.4.3
        version: 2.4.3
      - name: infinispan-operator.v2.4.2
        version: 2.4.2
      - name: infinispan-operator.v2.4.1
        version: 2.4.1
      - name: infinispan-operator.v2.4.0
        version: 2.4.0
      - name: infinispan-operator.v2.3.8
        version: 2.3.8
      - name: infinispan-operator.v2.3.7
        version: 2.3.7
      - name: infinispan-operator.v2.3.6
        version: 2.3.6
      - name: infinispan-operator.v2.3.5
        version: 2.3.5
      - name: infinispan-operator.v2.3.4
        version: 2.3.4
      - name: infinispan-operator.v2.3.3
        version: 2.3.3
      - name: infinispan-operator.v2.3.2
        version: 2.3.2
      - name: infinispan-operator.v2.3.1
        version: 2.3.1
      - name: infinispan-operator.v2.3.0
        version: 2.3.0
      name: stable
    defaultChannel: stable
    packageName: infinispan
    provider:
      name: Infinispan
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/kuadrant-operator
    name: rhcl-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhcl-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1",
                "kind": "AuthPolicy",
                "metadata": {
                  "name": "authpolicy-sample"
                },
                "spec": {
                  "rules": {
                    "authentication": {
                      "apikey": {
                        "apiKey": {
                          "selector": {}
                        },
                        "credentials": {
                          "authorizationHeader": {
                            "prefix": "APIKEY"
                          }
                        }
                      }
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1",
                "kind": "DNSPolicy",
                "metadata": {
                  "name": "dnspolicy-sample"
                },
                "spec": {
                  "healthCheck": {
                    "protocol": "HTTP"
                  },
                  "providerRefs": [
                    {
                      "name": "provider-ref"
                    }
                  ],
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1",
                "kind": "RateLimitPolicy",
                "metadata": {
                  "name": "ratelimitpolicy-sample"
                },
                "spec": {
                  "limits": {
                    "toys": {
                      "rates": [
                        {
                          "limit": 50,
                          "window": "1m"
                        }
                      ]
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1",
                "kind": "TLSPolicy",
                "metadata": {
                  "name": "tlspolicy-sample"
                },
                "spec": {
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "self-signed-ca"
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "Kuadrant",
                "metadata": {
                  "name": "kuadrant-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.redhat.io/rhcl-1/rhcl-rhel9-operator@sha256:1afb2fe0fe38bb0ef02c4b8cb9edb83f7847da47f8ddad766223664dc05ce272
          createdAt: 27 Nov 2025, 19:24
          description: Red Hat Connectivity Link enables you to secure, protect, and
            connect your APIs and applications in multicluster, multicloud, and hybrid
            cloud environments
          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"
          operators.openshift.io/valid-subscription: '["Red Hat Connectivity Link"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kuadrant/kuadrant-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AuthPolicy enables authentication and authorization for service
              workloads in a Gateway API network
            displayName: AuthPolicy
            kind: AuthPolicy
            name: authpolicies.kuadrant.io
            version: v1
          - description: DNSPolicy configures how North-South based traffic should
              be balanced and reach the gateways
            displayName: DNSPolicy
            kind: DNSPolicy
            name: dnspolicies.kuadrant.io
            version: v1
          - description: Kuadrant configures installations of Kuadrant Service Protection
              components
            displayName: Kuadrant
            kind: Kuadrant
            name: kuadrants.kuadrant.io
            version: v1beta1
          - kind: OIDCPolicy
            name: oidcpolicies.extensions.kuadrant.io
            version: v1alpha1
          - kind: PlanPolicy
            name: planpolicies.extensions.kuadrant.io
            version: v1alpha1
          - description: RateLimitPolicy enables rate limiting for service workloads
              in a Gateway API network
            displayName: RateLimitPolicy
            kind: RateLimitPolicy
            name: ratelimitpolicies.kuadrant.io
            version: v1
          - kind: TelemetryPolicy
            name: telemetrypolicies.extensions.kuadrant.io
            version: v1alpha1
          - description: TLSPolicy provides tls for gateway listeners by managing
              the lifecycle of tls certificates
            displayName: TLSPolicy
            kind: TLSPolicy
            name: tlspolicies.kuadrant.io
            version: v1
          - kind: TokenRateLimitPolicy
            name: tokenratelimitpolicies.kuadrant.io
            version: v1alpha1
        description: A Kubernetes Operator to manage the lifecycle of the Kuadrant
          system
        displayName: Red Hat Connectivity Link
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - api-management
        - Kuadrant
        - kubernetes
        - openshift
        - cloud-service-protection
        - rate-limiting
        - authentication
        - authorization
        links:
        - name: Kuadrant Operator
          url: https://github.com/Kuadrant/kuadrant-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/kuadrant-operator
        relatedImages:
        - registry.access.redhat.com/rhcl-1/wasm-shim-rhel9@sha256:aa524e9278976aa3ef0f2d3aeb981e28d2ea6ed6fc5fede05a5dd33db0bb3de2
        - registry.redhat.io/rhcl-1/rhcl-operator-bundle@sha256:f9f233b605c7468e0b3923e8e53156ae3efaf43ab4c73f4fde9937518d1ad59b
        - registry.redhat.io/rhcl-1/rhcl-rhel9-operator@sha256:1afb2fe0fe38bb0ef02c4b8cb9edb83f7847da47f8ddad766223664dc05ce272
        version: 1.2.1
      entries:
      - name: rhcl-operator.v1.2.1
        version: 1.2.1
      - name: rhcl-operator.v1.2.0
        version: 1.2.0
      - name: rhcl-operator.v1.1.1
        version: 1.1.1
      - name: rhcl-operator.v1.1.0
        version: 1.1.0
      - name: rhcl-operator.v1.0.2
        version: 1.0.2
      name: stable
    defaultChannel: stable
    packageName: rhcl-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/kuadrant-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-s3-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-s3-controller.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "s3.services.k8s.aws/v1alpha1",
                "kind": "Bucket",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/s3-controller:1.2.1
          createdAt: "2025-12-30T00:58:23Z"
          description: AWS S3 controller is a service controller for managing S3 resources
            in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Bucket represents the state of an AWS s3 Bucket resource.
            displayName: Bucket
            kind: Bucket
            name: buckets.s3.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Simple Storage Service (S3) resources in AWS from within your Kubernetes cluster.

          **About Amazon S3**

          Amazon Simple Storage Service (Amazon S3) is an object storage service that offers industry-leading scalability, data availability, security, and performance. This means customers of all sizes and industries can use it to store and protect any amount of data for a range of use cases, such as data lakes, websites, mobile applications, backup and restore, archive, enterprise applications, IoT devices, and big data analytics. Amazon S3 provides easy-to-use management features so you can organize your data and configure finely-tuned access controls to meet your specific business, organizational, and compliance requirements. Amazon S3 is designed for 99.999999999% (11 9s) of durability, and stores data for millions of applications for companies all around the world.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon S3
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - s3
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon S3 Developer Resources
          url: https://aws.amazon.com/s3/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: s3 maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/s3-controller:1.2.1
        - quay.io/community-operator-pipeline-prod/ack-s3-controller@sha256:557e1570664b2a98577c7a6fb095a64c020b3cc4e58c8729ebef6189445edc9a
        version: 1.2.1
      entries:
      - name: ack-s3-controller.v1.2.1
        version: 1.2.1
      - name: ack-s3-controller.v1.2.0
        version: 1.2.0
      - name: ack-s3-controller.v1.1.3
        version: 1.1.3
      - name: ack-s3-controller.v1.1.2
        version: 1.1.2
      - name: ack-s3-controller.v1.1.1
        version: 1.1.1
      - name: ack-s3-controller.v1.1.0
        version: 1.1.0
      - name: ack-s3-controller.v1.0.35
        version: 1.0.35
      - name: ack-s3-controller.v1.0.33
        version: 1.0.33
      - name: ack-s3-controller.v1.0.32
        version: 1.0.32
      - name: ack-s3-controller.v1.0.31
        version: 1.0.31
      - name: ack-s3-controller.v1.0.30
        version: 1.0.30
      - name: ack-s3-controller.v1.0.29
        version: 1.0.29
      - name: ack-s3-controller.v1.0.28
        version: 1.0.28
      - name: ack-s3-controller.v1.0.27
        version: 1.0.27
      - name: ack-s3-controller.v1.0.26
        version: 1.0.26
      - name: ack-s3-controller.v1.0.25
        version: 1.0.25
      - name: ack-s3-controller.v1.0.24
        version: 1.0.24
      - name: ack-s3-controller.v1.0.23
        version: 1.0.23
      - name: ack-s3-controller.v1.0.21
        version: 1.0.21
      - name: ack-s3-controller.v1.0.20
        version: 1.0.20
      - name: ack-s3-controller.v1.0.19
        version: 1.0.19
      - name: ack-s3-controller.v1.0.18
        version: 1.0.18
      - name: ack-s3-controller.v1.0.17
        version: 1.0.17
      - name: ack-s3-controller.v1.0.16
        version: 1.0.16
      - name: ack-s3-controller.v1.0.15
        version: 1.0.15
      - name: ack-s3-controller.v1.0.14
        version: 1.0.14
      - name: ack-s3-controller.v1.0.13
        version: 1.0.13
      - name: ack-s3-controller.v1.0.12
        version: 1.0.12
      - name: ack-s3-controller.v1.0.11
        version: 1.0.11
      - name: ack-s3-controller.v1.0.9
        version: 1.0.9
      - name: ack-s3-controller.v1.0.7
        version: 1.0.7
      - name: ack-s3-controller.v1.0.6
        version: 1.0.6
      - name: ack-s3-controller.v1.0.5
        version: 1.0.5
      - name: ack-s3-controller.v1.0.4
        version: 1.0.4
      - name: ack-s3-controller.v1.0.3
        version: 1.0.3
      - name: ack-s3-controller.v1.0.2
        version: 1.0.2
      - name: ack-s3-controller.v1.0.1
        version: 1.0.1
      - name: ack-s3-controller.v1.0.0
        version: 1.0.0
      - name: ack-s3-controller.v0.1.8
        version: 0.1.8
      - name: ack-s3-controller.v0.1.7
        version: 0.1.7
      - name: ack-s3-controller.v0.1.6
        version: 0.1.6
      - name: ack-s3-controller.v0.1.5
        version: 0.1.5
      - name: ack-s3-controller.v0.1.4
        version: 0.1.4
      - name: ack-s3-controller.v0.1.3
        version: 0.1.3
      - name: ack-s3-controller.v0.1.2
        version: 0.1.2
      - name: ack-s3-controller.v0.1.1
        version: 0.1.1
      - name: ack-s3-controller.v0.1.0
        version: 0.1.0
      - name: ack-s3-controller.v0.0.20
        version: 0.0.20
      - name: ack-s3-controller.v0.0.19
        version: 0.0.19
      - name: ack-s3-controller.v0.0.18
        version: 0.0.18
      - name: ack-s3-controller.v0.0.17
        version: 0.0.17
      - name: ack-s3-controller.v0.0.16
        version: 0.0.16
      - name: ack-s3-controller.v0.0.15
        version: 0.0.15
      - name: ack-s3-controller.v0.0.14
        version: 0.0.14
      - name: ack-s3-controller.v0.0.13
        version: 0.0.13
      - name: ack-s3-controller.v0.0.12
        version: 0.0.12
      - name: ack-s3-controller.v0.0.11
        version: 0.0.11
      - name: ack-s3-controller.v0.0.10
        version: 0.0.10
      - name: ack-s3-controller.v0.0.9
        version: 0.0.9
      - name: ack-s3-controller.v0.0.8
        version: 0.0.8
      - name: ack-s3-controller.v0.0.7
        version: 0.0.7
      name: alpha
    defaultChannel: alpha
    packageName: ack-s3-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-rds-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-rds-controller.v1.7.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rds.services.k8s.aws/v1alpha1",
                "kind": "DBParameterGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "rds.services.k8s.aws/v1alpha1",
                "kind": "DBSubnetGroup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/rds-controller:1.7.2
          createdAt: "2025-12-29T22:18:45Z"
          description: AWS RDS controller is a service controller for managing RDS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DBClusterEndpoint represents the state of an AWS rds DBClusterEndpoint
              resource.
            displayName: DBClusterEndpoint
            kind: DBClusterEndpoint
            name: dbclusterendpoints.rds.services.k8s.aws
            version: v1alpha1
          - description: DBClusterParameterGroup represents the state of an AWS rds
              DBClusterParameterGroup resource.
            displayName: DBClusterParameterGroup
            kind: DBClusterParameterGroup
            name: dbclusterparametergroups.rds.services.k8s.aws
            version: v1alpha1
          - description: DBCluster represents the state of an AWS rds DBCluster resource.
            displayName: DBCluster
            kind: DBCluster
            name: dbclusters.rds.services.k8s.aws
            version: v1alpha1
          - description: DBClusterSnapshot represents the state of an AWS rds DBClusterSnapshot
              resource.
            displayName: DBClusterSnapshot
            kind: DBClusterSnapshot
            name: dbclustersnapshots.rds.services.k8s.aws
            version: v1alpha1
          - description: DBInstance represents the state of an AWS rds DBInstance
              resource.
            displayName: DBInstance
            kind: DBInstance
            name: dbinstances.rds.services.k8s.aws
            version: v1alpha1
          - description: DBParameterGroup represents the state of an AWS rds DBParameterGroup
              resource.
            displayName: DBParameterGroup
            kind: DBParameterGroup
            name: dbparametergroups.rds.services.k8s.aws
            version: v1alpha1
          - description: DBProxy represents the state of an AWS rds DBProxy resource.
            displayName: DBProxy
            kind: DBProxy
            name: dbproxies.rds.services.k8s.aws
            version: v1alpha1
          - description: DBSnapshot represents the state of an AWS rds DBSnapshot
              resource.
            displayName: DBSnapshot
            kind: DBSnapshot
            name: dbsnapshots.rds.services.k8s.aws
            version: v1alpha1
          - description: DBSubnetGroup represents the state of an AWS rds DBSubnetGroup
              resource.
            displayName: DBSubnetGroup
            kind: DBSubnetGroup
            name: dbsubnetgroups.rds.services.k8s.aws
            version: v1alpha1
          - description: GlobalCluster represents the state of an AWS rds GlobalCluster
              resource.
            displayName: GlobalCluster
            kind: GlobalCluster
            name: globalclusters.rds.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Relational Database Service ("RDS") resources in AWS from within your Kubernetes cluster.

          **About Amazon RDS**

          Amazon Relational Database Service (Amazon RDS) makes it easy to set up, operate, and scale a relational database in the cloud. It provides cost-efficient and resizable capacity while automating time-consuming administration tasks such as hardware provisioning, database setup, patching and backups. It frees you to focus on your applications so you can give them the fast performance, high availability, security and compatibility they need.

          Amazon RDS is available on several database instance types - optimized for memory, performance or I/O -and provides you with six familiar database engines to choose from, including Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle Database, and SQL Server. You can use the AWS Database Migration Service to easily migrate or replicate your existing databases to Amazon RDS.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon RDS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rds
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon RDS Developer Resources
          url: https://aws.amazon.com/rds/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: rds maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/rds-controller:1.7.2
        - quay.io/community-operator-pipeline-prod/ack-rds-controller@sha256:082446fd6d91abc8b8467a1b230b55c7d628e38551c2033238b5ca388c9b7352
        version: 1.7.2
      entries:
      - name: ack-rds-controller.v1.7.2
        version: 1.7.2
      - name: ack-rds-controller.v1.7.1
        version: 1.7.1
      - name: ack-rds-controller.v1.7.0
        version: 1.7.0
      - name: ack-rds-controller.v1.6.3
        version: 1.6.3
      - name: ack-rds-controller.v1.6.2
        version: 1.6.2
      - name: ack-rds-controller.v1.6.1
        version: 1.6.1
      - name: ack-rds-controller.v1.6.0
        version: 1.6.0
      - name: ack-rds-controller.v1.5.0
        version: 1.5.0
      - name: ack-rds-controller.v1.4.26
        version: 1.4.26
      - name: ack-rds-controller.v1.4.25
        version: 1.4.25
      - name: ack-rds-controller.v1.4.24
        version: 1.4.24
      - name: ack-rds-controller.v1.4.22
        version: 1.4.22
      - name: ack-rds-controller.v1.4.21
        version: 1.4.21
      - name: ack-rds-controller.v1.4.20
        version: 1.4.20
      - name: ack-rds-controller.v1.4.19
        version: 1.4.19
      - name: ack-rds-controller.v1.4.18
        version: 1.4.18
      - name: ack-rds-controller.v1.4.17
        version: 1.4.17
      - name: ack-rds-controller.v1.4.16
        version: 1.4.16
      - name: ack-rds-controller.v1.4.15
        version: 1.4.15
      - name: ack-rds-controller.v1.4.14
        version: 1.4.14
      - name: ack-rds-controller.v1.4.13
        version: 1.4.13
      - name: ack-rds-controller.v1.4.12
        version: 1.4.12
      - name: ack-rds-controller.v1.4.11
        version: 1.4.11
      - name: ack-rds-controller.v1.4.10
        version: 1.4.10
      - name: ack-rds-controller.v1.4.8
        version: 1.4.8
      - name: ack-rds-controller.v1.4.7
        version: 1.4.7
      - name: ack-rds-controller.v1.4.6
        version: 1.4.6
      - name: ack-rds-controller.v1.4.4
        version: 1.4.4
      - name: ack-rds-controller.v1.4.3
        version: 1.4.3
      - name: ack-rds-controller.v1.4.2
        version: 1.4.2
      - name: ack-rds-controller.v1.4.1
        version: 1.4.1
      - name: ack-rds-controller.v1.4.0
        version: 1.4.0
      - name: ack-rds-controller.v1.3.0
        version: 1.3.0
      - name: ack-rds-controller.v1.2.5
        version: 1.2.5
      - name: ack-rds-controller.v1.2.4
        version: 1.2.4
      - name: ack-rds-controller.v1.2.3
        version: 1.2.3
      - name: ack-rds-controller.v1.2.2
        version: 1.2.2
      - name: ack-rds-controller.v1.2.1
        version: 1.2.1
      - name: ack-rds-controller.v1.2.0
        version: 1.2.0
      - name: ack-rds-controller.v1.1.11
        version: 1.1.11
      - name: ack-rds-controller.v1.1.9
        version: 1.1.9
      - name: ack-rds-controller.v1.1.8
        version: 1.1.8
      - name: ack-rds-controller.v1.1.7
        version: 1.1.7
      - name: ack-rds-controller.v1.1.6
        version: 1.1.6
      - name: ack-rds-controller.v1.1.5
        version: 1.1.5
      - name: ack-rds-controller.v1.1.4
        version: 1.1.4
      - name: ack-rds-controller.v1.1.3
        version: 1.1.3
      - name: ack-rds-controller.v1.1.2
        version: 1.1.2
      - name: ack-rds-controller.v1.1.1
        version: 1.1.1
      - name: ack-rds-controller.v1.1.0
        version: 1.1.0
      - name: ack-rds-controller.v1.0.0
        version: 1.0.0
      - name: ack-rds-controller.v0.1.3
        version: 0.1.3
      - name: ack-rds-controller.v0.1.1
        version: 0.1.1
      - name: ack-rds-controller.v0.1.0
        version: 0.1.0
      - name: ack-rds-controller.v0.0.30
        version: 0.0.30
      - name: ack-rds-controller.v0.0.29
        version: 0.0.29
      - name: ack-rds-controller.v0.0.28
        version: 0.0.28
      - name: ack-rds-controller.v0.0.27
        version: 0.0.27
      - name: ack-rds-controller.v0.0.26
        version: 0.0.26
      - name: ack-rds-controller.v0.0.25
        version: 0.0.25
      - name: ack-rds-controller.v0.0.24
        version: 0.0.24
      - name: ack-rds-controller.v0.0.23
        version: 0.0.23
      - name: ack-rds-controller.v0.0.22
        version: 0.0.22
      - name: ack-rds-controller.v0.0.21
        version: 0.0.21
      - name: ack-rds-controller.v0.0.20
        version: 0.0.20
      - name: ack-rds-controller.v0.0.19
        version: 0.0.19
      - name: ack-rds-controller.v0.0.18
        version: 0.0.18
      - name: ack-rds-controller.v0.0.17
        version: 0.0.17
      - name: ack-rds-controller.v0.0.16
        version: 0.0.16
      - name: ack-rds-controller.v0.0.15
        version: 0.0.15
      - name: ack-rds-controller.v0.0.14
        version: 0.0.14
      - name: ack-rds-controller.v0.0.13
        version: 0.0.13
      - name: ack-rds-controller.v0.0.12
        version: 0.0.12
      name: alpha
    defaultChannel: alpha
    packageName: ack-rds-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: apicast-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicast-community-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/apicast-operator:v0.8.0
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway built on top of NGINX. It is part
            of the Red Hat 3scale API Management Platform
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |
          The APIcast Operator creates and maintains the Red Hat 3scale API Gateway in several deployment configurations.

          APIcast is an API gateway built on top of [NGINX](https://www.nginx.com/). It is part of the [Red Hat 3scale API Management Platform](https://www.redhat.com/en/technologies/jboss-middleware/3scale).

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator/blob/v0.8.0/doc/operator-user-guide.md#upgrading-APIcast) for more information.

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/apicast-operator/tree/v0.8.0).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: APIcast
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://github.com/3scale/apicast-operator/tree/v0.8.0
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/apicast-community-operator@sha256:b0e697be3b4af0554de09306016b5852a4dadacd1962ab9417f6e682491519cd
        - quay.io/3scale/apicast-operator:v0.8.0
        version: 0.8.0
      entries:
      - name: apicast-community-operator.v0.8.0
        version: 0.8.0
      - name: apicast-community-operator.v0.7.1
        version: 0.7.1
      - name: apicast-community-operator.v0.6.0
        version: 0.6.0
      - name: apicast-community-operator.v0.5.1
        version: 0.5.1
      name: alpha
    - currentCSV: apicast-community-operator.v0.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.3scale.net/v1alpha1",
                "kind": "APIcast",
                "metadata": {
                  "name": "example-apicast"
                },
                "spec": {
                  "adminPortalCredentialsRef": {
                    "name": "mysecretname"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/3scale/apicast-operator:v0.8.0
          createdAt: "2019-10-27T22:40:00Z"
          description: APIcast is an API gateway built on top of NGINX. It is part
            of the Red Hat 3scale API Management Platform
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/3scale/apicast-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIcast is the Schema for the apicasts API.
            displayName: APIcast
            kind: APIcast
            name: apicasts.apps.3scale.net
            version: v1alpha1
        description: |
          The APIcast Operator creates and maintains the Red Hat 3scale API Gateway in several deployment configurations.

          APIcast is an API gateway built on top of [NGINX](https://www.nginx.com/). It is part of the [Red Hat 3scale API Management Platform](https://www.redhat.com/en/technologies/jboss-middleware/3scale).

          ### Supported Features
          * **Installer** A way to install an APIcast gateway instance on Kubernetes
          * **Upgrade** Upgrade from previously installed APIcast gateway instance
          * **Reconcilliation** Tunable CRD parameters after the APIcast gateway is installed

          ### Upgrading your installation
          The APIcast Operator understands how to run and upgrade between a set of APIcast versions.
          See [the upgrade guide](https://github.com/3scale/apicast-operator/blob/v0.8.0/doc/operator-user-guide.md#upgrading-APIcast) for more information.

          ### Documentation
          Documentation can be found on our [website](https://github.com/3scale/apicast-operator/tree/v0.8.0).

          ### Getting help
          If you encounter any issues while using operator, you can create an issue on our [website](https://github.com/3scale/apicast-operator) for bugs, enhancements, or other requests.

          ### Contributing
          You can contribute by:

          * Raising any issues you find using APIcast Operator
          * Fixing issues by opening [Pull Requests](https://github.com/3scale/apicast-operator/pulls)
          * Improving [documentation](https://github.com/3scale/apicast-operator)
          * Talking about APIcast Operator

          All bugs, tasks or enhancements are tracked as [GitHub issues](https://github.com/3scale/apicast-operator/issues).

          ### License
          APIcast Operator is licensed under the [Apache 2.0 license](https://github.com/3scale/apicast-operator/blob/master/LICENSE)
        displayName: APIcast
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - 3scale
        - API
        - api
        - APIcast
        - apicast
        - gateway
        - api-gateway
        - openresty
        links:
        - name: GitHub
          url: https://github.com/3scale/apicast-operator
        - name: Documentation
          url: https://github.com/3scale/apicast-operator/tree/v0.8.0
        maintainers:
        - email: eastizle+apicastoperator@redhat.com
          name: Eguzki Astiz
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/apicast-operator:v0.8.0
        - quay.io/community-operator-pipeline-prod/apicast-community-operator@sha256:b0e697be3b4af0554de09306016b5852a4dadacd1962ab9417f6e682491519cd
        version: 0.8.0
      entries:
      - name: apicast-community-operator.v0.8.0
        version: 0.8.0
      - name: apicast-community-operator.v0.7.1
        version: 0.7.1
      - name: apicast-community-operator.v0.6.0
        version: 0.6.0
      - name: apicast-community-operator.v0.5.1
        version: 0.5.1
      name: stable
    defaultChannel: stable
    packageName: apicast-community-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Odoo Community Association
      provider-url: ""
    name: odoo-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odoo-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"odoo-community.org/v1alpha1","kind":"Odoo","metadata":{"name":"example"},"spec":{"postgresqlVolumeSize":"4Gi","odooVolumeSize":"4Gi"}}]'
          capabilities: Full Lifecycle
          categories: Application Runtime
          certified: "false"
          containerImage: ursa/odoo-operator:0.0.2
          createdAt: "2021-04-26T12:00:00Z"
          description: Operator to manage Odoo instances within an OpenShift cluster
          operators.operatorframework.io/builder: operator-sdk-v1.5.0
          repository: https://github.com/ursais/odoo-operator
          support: Open Source Integrators
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Odoo
            displayName: Odoo
            kind: Odoo
            name: odoos.odoo-community.org
            version: v1alpha1
        description: |
          ## About Odoo

          [Odoo](https://odoo-community.org), is a suite of business management software tools including CRM, e-commerce, billing, accounting, manufacturing, warehouse, project management, and inventory management to name a few.
          ## About the Odoo Operator

          This is an Ansible-based operator created with operator-sdk v1.5.0.

          The upgrade is handled by the Odoo container itself using [Marabunta](https://pypi.org/project/marabunta/) and [Anthem](https://pypi.org/project/anthem/).

          ## Roadmap
          * Add horizontal pod autoscaler
          * Add cronjob for backup
          ## Prerequisites for enabling this Operator

          Please refer to the README file on the [GitHub project](https://github.com/ursais/odoo-operator).
        displayName: Odoo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - ERP
        - Business Software
        links:
        - name: Odoo Community Association
          url: https://odoo-community.org
        - name: GitHub Repository
          url: https://github.com/ursais/odoo-operator
        - name: Open Source Integrators
          url: https://opensourceintegrators.com
        maintainers:
        - email: mchambreuil@opensourceintegrators.com
          name: Maxime Chambreuil
        maturity: alpha
        provider:
          name: Odoo Community Association
        relatedImages:
        - quay.io/openshift-community-operators/odoo-operator@sha256:616e1067ebf8deb66636d57cae2ac1f9981b83419d8e7f023bc7df1c1b745536
        - ursa/odoo-operator:0.0.2
        version: 0.0.2
      entries:
      - name: odoo-operator.v0.0.2
        version: 0.0.2
      - name: odoo-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: odoo-operator
    provider:
      name: Odoo Community Association
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: New England Research Cloud
      provider-url: https://nerc.mghpcc.org/
    name: keycloak-permissions-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: keycloak-permissions-operator.v1.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "keycloak.nerc.mghpcc.org/v1",
                "kind": "KeycloakAuthorization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "keycloak-permissions-operator",
                    "app.kubernetes.io/instance": "keycloakauthorization-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "keycloakauthorization",
                    "app.kubernetes.io/part-of": "keycloak-permissions-operator"
                  },
                  "name": "example"
                },
                "spec": {
                  "cleanupUndefinedAuthorizations": false,
                  "description": "",
                  "keycloak": {
                    "adminSecret": {
                      "name": "keycloak-initial-admin",
                      "passwordKey": "password",
                      "usernameKey": "username"
                    }
                  },
                  "managementState": "Managed",
                  "realm": null,
                  "validateCerts": true
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Security
          com.redhat.openshift.versions: v4.11
          containerImage: quay.io/nerc-images/keycloak-permissions-operator:1.4.1
          createdAt: "2024-05-07T21:09:02Z"
          description: Managing Keycloak resources, scopes, policies, and permissions
            for fine-grained resource permissions
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/nerc-images/keycloak-permissions-operator
          support: New England Research Cloud
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Manages Keycloak resources, scopes, policies, and permissions
              for fine-grained resource permissions.
            displayName: Keycloak Authorization
            kind: KeycloakAuthorization
            name: keycloakauthorizations.keycloak.nerc.mghpcc.org
            version: v1
        description: "An OpenShift Operator for managing Keycloak resources, scopes,
          policies,\nand permissions for fine-grained resource permissions.\nAccording
          to the [Keycloak Authorization Services documentation](https://www.keycloak.org/docs/23.0.7/authorization_services/):\n\n-
          A resource can be a web page, a RESTFul resource, a file in your file system,
          or other entity you wish to authorize access to.\n- Scopes usually represent
          the actions that can be performed on a resource, but they are not limited
          to that. You can also use scopes to represent one or more attributes within
          a resource.\n- Policies define the conditions that must be satisfied to
          access or perform operations on something (resource or scope), but they
          are not tied to what they are protecting. They are generic and can be reused
          to build permissions or even more complex policies.\n- Permissions are coupled
          with the resource they are protecting. Here you specify what you want to
          protect (resource or scope) and the policies that must be satisfied to grant
          or deny permission.\n\n## Getting started with the Keycloak Permissions
          Operator\n\nStart by defining the name of your KeycloakAuthorization and
          the same namespace where Keycloak is deployed.\n\n```yaml\napiVersion: keycloak.nerc.mghpcc.org/v1\nkind:
          KeycloakAuthorization\nmetadata:\n  name: example\n  namespace: keycloak\n```\n\n##
          KeycloakAuthorization spec\n\nNext, define the spec. \n\n- `validateCerts:
          false` If your Keycloak does not have valid certificates, if you are deploying
          to OpenShift Local for example. You don't need this line if Keycloak has
          valid certificates.\n- `cleanupUndefinedAuthorizations: true` if you would
          like to remove any undefined authorizations that may have been added manually.
          This is useful for keeping in sync with GitOps. If you do not want the operator
          removing any resources, policies, or permissions, then remove this line.\n\n```yaml\nspec:\n
          \ validateCerts: false\n  cleanupUndefinedAuthorizations: true\n```\n\n##
          Keycloak admin credentials\n\nSpecify the details to connect to keycloak,
          including the `baseUrl`, and the Secret name containing the Keycloak admin
          usernameKey and passwordKey.\n\n```yaml\n  keycloak:\n    baseUrl: https://keycloak-service:8443\n
          \   adminSecret:\n      name: keycloak-initial-admin\n      usernameKey:
          username\n      passwordKey: password\n```\n\n## Realm\n\nSpecify the realm
          id you wish to add authorization configuration to. If you want to add authorization
          configuration to multiple realms, then create a KeycloakAuthorization resource
          for each realm.\n\n```yaml\n  realm:\n    id: NERC\n```\n\n## Clients\n\nFor
          each client in the realm you wish to configure, add authorizationSettings.\n\n```yaml\n
          \   clients:\n      - id: ai4cloudops\n        authorizationSettings:\n```\n\n##
          Authorization Scopes\n\nList the scopes you wish to define for the client.\n\n```yaml\n
          \         scopes:\n            - id: prod\n              name: prod\n              displayName:
          Production\n            - id: test\n              name: test\n              displayName:
          Test\n```\n\n## Authorization Resources\n\nList the resources and corresponding
          scopes you wish to define for the client.\n\n```yaml\n          resources:\n
          \           - name: cluster\n              displayName: cluster\n              scopes:\n
          \               - id: prod\n                  name: prod\n                  displayName:
          Production\n                - id: test\n                  name: test\n                  displayName:
          Test\n```\n\n## Authorization Policies\n\nDefine the policies you wish to
          use in your permissions. You can choose from all the different types of
          permissions, including: aggregated, client, client-scope, group, regex,
          role, time, and user.\n\n```yaml\n          policies:\n            - id:
          client-example\n              name: client-example\n              logic:
          POSITIVE\n              decisionStrategy: UNANIMOUS\n              type:\n
          \               client:\n                  clients:\n                    -
          example\n            - id: group-example\n              name: group-example\n
          \             logic: POSITIVE\n              decisionStrategy: UNANIMOUS\n
          \             type:\n                group:\n                  groups:\n
          \                   - id: example\n```\n\n## Authorization Permissions\n\nDefine
          the permissions, connecting the resources, scopes, and policies together.\n\n```yaml\n
          \         permissions:\n            - name: group-example-cluster-test\n
          \             client: test\n              policy: group-example\n              resource:
          cluster\n            - name: client-example-cluster-test\n              client:
          example\n              policy: client-test\n              resource: cluster\n
          \             scope: test\n```\n\n## Other details\n\nResources, scopes,
          policies, and permissions will all be applied to Keycloak if you have configured
          the admin credentials to Keycloak successfully.\nWhen the KeycloakAuthorization
          is deleted, then the configured resources, policies, and permissions will
          be deleted as well. "
        displayName: Keycloak Permissions Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - fine-grained resource permissions
        - keycloak
        - resources
        - scopes
        - policies
        - permissions
        links:
        - name: Keycloak Permissions Operator
          url: https://keycloak-permissions-operator.domain
        maintainers:
        - email: computate@computate.org
          name: Christopher Tate
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: New England Research Cloud
          url: https://nerc.mghpcc.org/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/keycloak-permissions-operator@sha256:4de19e52e84cdba0963bdd852a63912f097280800d65add8d474c0953da478a0
        - quay.io/nerc-images/keycloak-permissions-operator:1.4.1
        version: 1.4.1
      entries:
      - name: keycloak-permissions-operator.v1.4.1
        version: 1.4.1
      - name: keycloak-permissions-operator.v1.3.0
        version: 1.3.0
      - name: keycloak-permissions-operator.v1.2.0
        version: 1.2.0
      name: alpha
    defaultChannel: alpha
    packageName: keycloak-permissions-operator
    provider:
      name: New England Research Cloud
      url: https://nerc.mghpcc.org/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com/
    name: bpfman-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bpfman-operator.v0.5.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "bpfapplication"
                  },
                  "name": "bpfapplication-sample",
                  "namespace": "acme"
                },
                "spec": {
                  "byteCode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/app-test:latest"
                    }
                  },
                  "globalData": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeSelector": {},
                  "programs": [
                    {
                      "name": "tc_pass_test",
                      "tc": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "priority": 55
                          }
                        ]
                      },
                      "type": "TC"
                    },
                    {
                      "name": "tcx_next_test",
                      "tcx": {
                        "links": [
                          {
                            "direction": "Egress",
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      },
                      "type": "TCX"
                    },
                    {
                      "name": "uprobe_test",
                      "type": "UProbe",
                      "uprobe": {
                        "links": [
                          {
                            "containers": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "function": "malloc",
                            "target": "libc"
                          }
                        ]
                      }
                    },
                    {
                      "name": "uretprobe_test",
                      "type": "URetProbe",
                      "uretprobe": {
                        "links": [
                          {
                            "containers": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "function": "malloc",
                            "target": "libc"
                          }
                        ]
                      }
                    },
                    {
                      "name": "xdp_pass_test",
                      "type": "XDP",
                      "xdp": {
                        "links": [
                          {
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "pods": {
                                "matchLabels": {
                                  "app": "test-target"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "BpfApplicationState",
                "metadata": {
                  "creationTimestamp": "2025-04-30T20:59:17Z",
                  "finalizers": [
                    "bpfman.io.nsbpfapplicationcontroller/finalizer"
                  ],
                  "generation": 1,
                  "labels": {
                    "bpfman.io/ownedByProgram": "bpfapplication-sample",
                    "kubernetes.io/hostname": "bpfman-deployment-control-plane"
                  },
                  "name": "bpfapplication-sample-ed7beed4",
                  "namespace": "acme",
                  "ownerReferences": [
                    {
                      "apiVersion": "bpfman.io/v1alpha1",
                      "blockOwnerDeletion": true,
                      "controller": true,
                      "kind": "BpfApplication",
                      "name": "bpfapplication-sample",
                      "uid": "a3897014-2014-4585-90a1-ccdb70adeef9"
                    }
                  ],
                  "resourceVersion": "1348",
                  "uid": "5728d3b2-a576-4144-be74-e5c83619344e"
                },
                "status": {
                  "appLoadStatus": "LoadSuccess",
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-04-30T21:01:50Z",
                      "message": "The BPF application has been successfully loaded and attached",
                      "reason": "Success",
                      "status": "True",
                      "type": "Success"
                    }
                  ],
                  "node": "bpfman-deployment-control-plane",
                  "programs": [
                    {
                      "name": "tc_pass_test",
                      "programId": 1398,
                      "programLinkStatus": "Success",
                      "tc": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 1909324080,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3041/ns/net",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "38e00746-b7be-4bcf-bf14-622ad349b4fa"
                          },
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 1342701196,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3032/ns/net",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "ba806cdf-5980-4e7f-8d8f-d819e6a57220"
                          },
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 2698014225,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2792/ns/net",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "e74fa413-d5df-4aa8-8d17-b580b6cb42a5"
                          },
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 184300305,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2833/ns/net",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "cef8985d-f184-4b18-9ee2-fe21018fae77"
                          }
                        ]
                      },
                      "type": "TC"
                    },
                    {
                      "name": "tcx_next_test",
                      "programId": 1399,
                      "programLinkStatus": "Success",
                      "tcx": {
                        "links": [
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 1256673356,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3041/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "3feed40b-fe4b-4a69-8e91-49624df45673"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 18009714,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3032/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "37b02539-0884-418d-bee4-31456384495e"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 3446068106,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2792/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "24a56373-8967-46f4-bbd4-423a7872f18b"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 733646956,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2833/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "4c855178-0a35-4ac6-abf7-83e61541aca4"
                          }
                        ]
                      },
                      "type": "TCX"
                    },
                    {
                      "name": "uprobe_test",
                      "programId": 1400,
                      "programLinkStatus": "Success",
                      "type": "UProbe",
                      "uprobe": {
                        "links": [
                          {
                            "containerPid": 3041,
                            "function": "malloc",
                            "linkId": 3629930733,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "ed72f8a7-cdc9-4245-8c40-c645fa5969d7"
                          },
                          {
                            "containerPid": 3032,
                            "function": "malloc",
                            "linkId": 1860984127,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "5c3b196d-bbe9-4b2c-8c5c-9d78c5ed6512"
                          },
                          {
                            "containerPid": 2792,
                            "function": "malloc",
                            "linkId": 3256920823,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "927071d2-c574-4c1f-87f2-baa5e7cfcc8f"
                          },
                          {
                            "containerPid": 2833,
                            "function": "malloc",
                            "linkId": 3700254381,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "fd351a1a-fb83-4b6c-af2f-c84906c6b54b"
                          }
                        ]
                      }
                    },
                    {
                      "name": "uretprobe_test",
                      "programId": 1401,
                      "programLinkStatus": "Success",
                      "type": "URetProbe",
                      "uretprobe": {
                        "links": [
                          {
                            "containerPid": 3041,
                            "function": "malloc",
                            "linkId": 4161687115,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "2c8ad027-eca0-4da9-baa6-f7b6f0fc25fd"
                          },
                          {
                            "containerPid": 3032,
                            "function": "malloc",
                            "linkId": 3445215503,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "623f2642-9f85-45ca-bab4-8f98d8a31079"
                          },
                          {
                            "containerPid": 2792,
                            "function": "malloc",
                            "linkId": 1387817990,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "fe81f29b-493d-41a9-b1c7-35733c9ee861"
                          },
                          {
                            "containerPid": 2833,
                            "function": "malloc",
                            "linkId": 2271422622,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "d6af1106-2c72-4f7d-9ee9-5c32e59e03b7"
                          }
                        ]
                      }
                    },
                    {
                      "name": "xdp_pass_test",
                      "programId": 1402,
                      "programLinkStatus": "Success",
                      "type": "XDP",
                      "xdp": {
                        "links": [
                          {
                            "interfaceName": "eth0",
                            "linkId": 1752219747,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3041/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "17760ccc-5ca7-4d21-9590-5f6e5c0fd4ab"
                          },
                          {
                            "interfaceName": "eth0",
                            "linkId": 3877814802,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/3032/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "194d2096-a15f-417f-9be6-2032217f3e86"
                          },
                          {
                            "interfaceName": "eth0",
                            "linkId": 2514284800,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2792/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "de0f43b3-6a0e-4c22-8127-9fb519a0238b"
                          },
                          {
                            "interfaceName": "eth0",
                            "linkId": 1682543086,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2833/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "84289766-bff1-4af5-a0bd-5d150747a29a"
                          }
                        ]
                      }
                    }
                  ],
                  "updateCount": 2
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "ClusterBpfApplication",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "clusterbpfapplication"
                  },
                  "name": "clusterbpfapplication-sample"
                },
                "spec": {
                  "byteCode": {
                    "image": {
                      "url": "quay.io/bpfman-bytecode/app-test:latest"
                    }
                  },
                  "globalData": {
                    "GLOBAL_u32": [
                      13,
                      12,
                      11,
                      10
                    ],
                    "GLOBAL_u8": [
                      1
                    ]
                  },
                  "nodeSelector": {},
                  "programs": [
                    {
                      "kprobe": {
                        "links": [
                          {
                            "function": "try_to_wake_up",
                            "offset": 0
                          }
                        ]
                      },
                      "name": "kprobe_test",
                      "type": "KProbe"
                    },
                    {
                      "kretprobe": {
                        "links": [
                          {
                            "function": "try_to_wake_up"
                          }
                        ]
                      },
                      "name": "kretprobe_test",
                      "type": "KRetProbe"
                    },
                    {
                      "name": "tracepoint_test",
                      "tracepoint": {
                        "links": [
                          {
                            "name": "syscalls/sys_enter_openat"
                          }
                        ]
                      },
                      "type": "TracePoint"
                    },
                    {
                      "name": "tc_pass_test",
                      "tc": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceSelector": {
                              "primaryNodeInterface": true
                            },
                            "priority": 55
                          },
                          {
                            "direction": "Egress",
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      },
                      "type": "TC"
                    },
                    {
                      "name": "tcx_next_test",
                      "tcx": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceSelector": {
                              "primaryNodeInterface": true
                            },
                            "priority": 500
                          },
                          {
                            "direction": "Egress",
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      },
                      "type": "TCX"
                    },
                    {
                      "name": "uprobe_test",
                      "type": "UProbe",
                      "uprobe": {
                        "links": [
                          {
                            "containers": {
                              "containerNames": [
                                "bpfman",
                                "bpfman-agent"
                              ],
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "function": "malloc",
                            "target": "libc"
                          }
                        ]
                      }
                    },
                    {
                      "name": "uretprobe_test",
                      "type": "URetProbe",
                      "uretprobe": {
                        "links": [
                          {
                            "containers": {
                              "containerNames": [
                                "bpfman",
                                "bpfman-agent"
                              ],
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "function": "malloc",
                            "target": "libc"
                          }
                        ]
                      }
                    },
                    {
                      "name": "xdp_pass_test",
                      "type": "XDP",
                      "xdp": {
                        "links": [
                          {
                            "interfaceSelector": {
                              "primaryNodeInterface": true
                            },
                            "priority": 55
                          },
                          {
                            "interfaceSelector": {
                              "interfaces": [
                                "eth0"
                              ]
                            },
                            "networkNamespaces": {
                              "namespace": "bpfman",
                              "pods": {
                                "matchLabels": {
                                  "name": "bpfman-daemon"
                                }
                              }
                            },
                            "priority": 100
                          }
                        ]
                      }
                    },
                    {
                      "fentry": {
                        "function": "do_unlinkat",
                        "links": [
                          {
                            "mode": "Attach"
                          }
                        ]
                      },
                      "name": "fentry_test",
                      "type": "FEntry"
                    },
                    {
                      "fexit": {
                        "function": "do_unlinkat",
                        "links": [
                          {
                            "mode": "Attach"
                          }
                        ]
                      },
                      "name": "fexit_test",
                      "type": "FExit"
                    }
                  ]
                }
              },
              {
                "apiVersion": "bpfman.io/v1alpha1",
                "kind": "ClusterBpfApplicationState",
                "metadata": {
                  "creationTimestamp": "2025-04-30T20:58:34Z",
                  "finalizers": [
                    "bpfman.io.clbpfapplicationcontroller/finalizer"
                  ],
                  "generation": 1,
                  "labels": {
                    "bpfman.io/ownedByProgram": "clusterbpfapplication-sample",
                    "kubernetes.io/hostname": "bpfman-deployment-control-plane"
                  },
                  "name": "clusterbpfapplication-sample-d3cc4fee",
                  "ownerReferences": [
                    {
                      "apiVersion": "bpfman.io/v1alpha1",
                      "blockOwnerDeletion": true,
                      "controller": true,
                      "kind": "ClusterBpfApplication",
                      "name": "clusterbpfapplication-sample",
                      "uid": "ab16b9a6-16bd-4a22-98ec-4268efaf8c8d"
                    }
                  ],
                  "resourceVersion": "1176",
                  "uid": "6e7e7446-306f-46ae-98e6-6ff28d9b5bcd"
                },
                "status": {
                  "appLoadStatus": "LoadSuccess",
                  "conditions": [
                    {
                      "lastTransitionTime": "2025-04-30T21:00:16Z",
                      "message": "The BPF application has been successfully loaded and attached",
                      "reason": "Success",
                      "status": "True",
                      "type": "Success"
                    }
                  ],
                  "node": "bpfman-deployment-control-plane",
                  "programs": [
                    {
                      "kprobe": {
                        "links": [
                          {
                            "function": "try_to_wake_up",
                            "linkId": 818584239,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "uuid": "3c71185f-8d68-4be8-92cb-32a14a6f118b"
                          }
                        ]
                      },
                      "name": "kprobe_test",
                      "programId": 1323,
                      "programLinkStatus": "Success",
                      "type": "KProbe"
                    },
                    {
                      "kretprobe": {
                        "links": [
                          {
                            "function": "try_to_wake_up",
                            "linkId": 3409359936,
                            "linkStatus": "Attached",
                            "shouldAttach": true,
                            "uuid": "44c75019-f175-4b1e-bb34-d8896e3b0456"
                          }
                        ]
                      },
                      "name": "kretprobe_test",
                      "programId": 1324,
                      "programLinkStatus": "Success",
                      "type": "KRetProbe"
                    },
                    {
                      "name": "tracepoint_test",
                      "programId": 1325,
                      "programLinkStatus": "Success",
                      "tracepoint": {
                        "links": [
                          {
                            "linkId": 2625161294,
                            "linkStatus": "Attached",
                            "name": "syscalls/sys_enter_openat",
                            "shouldAttach": true,
                            "uuid": "40164d8a-5b55-4ff6-8e73-aa53d9180a6d"
                          }
                        ]
                      },
                      "type": "TracePoint"
                    },
                    {
                      "name": "tc_pass_test",
                      "programId": 1327,
                      "programLinkStatus": "Success",
                      "tc": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 1304307969,
                            "linkStatus": "Attached",
                            "priority": 55,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "44e6491e-ca98-44a0-b1b7-647b494c84fa"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 1425071644,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2196/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pipe",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "89a05d8f-bb4a-448a-af11-2605d0094b98"
                          }
                        ]
                      },
                      "type": "TC"
                    },
                    {
                      "name": "tcx_next_test",
                      "programId": 1328,
                      "programLinkStatus": "Success",
                      "tcx": {
                        "links": [
                          {
                            "direction": "Ingress",
                            "interfaceName": "eth0",
                            "linkId": 858546813,
                            "linkStatus": "Attached",
                            "priority": 500,
                            "shouldAttach": true,
                            "uuid": "6dff4163-4d62-4c93-bc34-739a796ddbb4"
                          },
                          {
                            "direction": "Egress",
                            "interfaceName": "eth0",
                            "linkId": 5042726,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2196/ns/net",
                            "priority": 100,
                            "shouldAttach": true,
                            "uuid": "c066df6a-667e-4382-9e2f-a59f64bc1b7e"
                          }
                        ]
                      },
                      "type": "TCX"
                    },
                    {
                      "name": "uprobe_test",
                      "programId": 1329,
                      "programLinkStatus": "Success",
                      "type": "UProbe",
                      "uprobe": {
                        "links": [
                          {
                            "containerPid": 2089,
                            "function": "malloc",
                            "linkId": 2687038538,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "e48f1563-f56b-41fa-a87d-b8593fc5faca"
                          },
                          {
                            "containerPid": 2040,
                            "function": "malloc",
                            "linkId": 1651822558,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "e0d778df-4791-413b-b0f4-13ed1088500c"
                          }
                        ]
                      }
                    },
                    {
                      "name": "uretprobe_test",
                      "programId": 1330,
                      "programLinkStatus": "Success",
                      "type": "URetProbe",
                      "uretprobe": {
                        "links": [
                          {
                            "containerPid": 2089,
                            "function": "malloc",
                            "linkId": 3774838420,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "2f37f466-6ff4-47a1-9c8d-8dd1f97528bb"
                          },
                          {
                            "containerPid": 2040,
                            "function": "malloc",
                            "linkId": 1373645282,
                            "linkStatus": "Attached",
                            "offset": 0,
                            "shouldAttach": true,
                            "target": "libc",
                            "uuid": "319bbaf0-1c8a-45b4-9d99-5dec27e2e5f1"
                          }
                        ]
                      }
                    },
                    {
                      "name": "xdp_pass_test",
                      "programId": 1332,
                      "programLinkStatus": "Success",
                      "type": "XDP",
                      "xdp": {
                        "links": [
                          {
                            "interfaceName": "eth0",
                            "linkId": 4243141192,
                            "linkStatus": "Attached",
                            "priority": 55,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "c3bea5b9-d3e0-4784-9a17-c286b6661fc2"
                          },
                          {
                            "interfaceName": "eth0",
                            "linkId": 1465833891,
                            "linkStatus": "Attached",
                            "netnsPath": "/host/proc/2196/ns/net",
                            "priority": 100,
                            "proceedOn": [
                              "Pass",
                              "DispatcherReturn"
                            ],
                            "shouldAttach": true,
                            "uuid": "1e24df86-f3ff-4e0a-8f20-6759272ddb08"
                          }
                        ]
                      }
                    },
                    {
                      "fentry": {
                        "function": "do_unlinkat",
                        "links": [
                          {
                            "linkId": 950386839,
                            "linkStatus": "Attached",
                            "shouldAttach": true,
                            "uuid": "2eda2367-4540-478b-a40d-cc984475a570"
                          }
                        ]
                      },
                      "name": "fentry_test",
                      "programId": 1333,
                      "programLinkStatus": "Success",
                      "type": "FEntry"
                    },
                    {
                      "fexit": {
                        "function": "do_unlinkat",
                        "links": [
                          {
                            "linkId": 2243237521,
                            "linkStatus": "Attached",
                            "shouldAttach": true,
                            "uuid": "98910fe0-cad6-457f-8797-9f8200106511"
                          }
                        ]
                      },
                      "name": "fexit_test",
                      "programId": 1334,
                      "programLinkStatus": "Success",
                      "type": "FExit"
                    }
                  ],
                  "updateCount": 2
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: registry.redhat.io/bpfman/bpfman-rhel9-operator@sha256:d168cb1d5472ca5726aa3621e239005eb3b54d5f5d5d5ffad9a61f95a7c1ed23
          createdAt: 18 Nov 2025, 14:36
          description: The eBPF manager Operator is designed to manage eBPF programs
            for applications.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: bpfman
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "bpfman",
                "labels": {
                  "pod-security.kubernetes.io/enforce": "privileged",
                  "pod-security.kubernetes.io/audit": "privileged",
                  "pod-security.kubernetes.io/warn": "privileged",
                },
                "annotations": {
                  "openshift.io/node-selector": ""
                },
              }
            }
          operators.openshift.io/infrastructure-features: '["csi", "disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/bpfman-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BpfApplication is the Schema for the BpfApplications API
            displayName: Namespaced Bpf Application
            kind: BpfApplication
            name: bpfapplications.bpfman.io
            version: v1alpha1
          - description: BpfApplicationState is the Schema for the BpfApplicationState
              API
            displayName: Namespaced Bpf Application State
            kind: BpfApplicationState
            name: bpfapplicationstates.bpfman.io
            version: v1alpha1
          - description: ClusterBpfApplication is the Schema for the clusterbpfapplications
              API
            displayName: Cluster Bpf Application
            kind: ClusterBpfApplication
            name: clusterbpfapplications.bpfman.io
            version: v1alpha1
          - description: ClusterBpfApplicationState is the Schema for the ClusterBpfApplicationState
              API
            displayName: Cluster Bpf Application State
            kind: ClusterBpfApplicationState
            name: clusterbpfapplicationstates.bpfman.io
            version: v1alpha1
        description: "The eBPF manager Operator is a Kubernetes Operator for deploying
          [bpfman](https://github.com/openshift/bpfman-operator), a system daemon\nfor
          managing eBPF programs. It deploys bpfman itself along with CRDs to make
          deploying\neBPF programs in Kubernetes much easier.\n\n## Quick Start\n\nTo
          get bpfman up and running quickly simply click 'install' to deploy the bpfman-operator
          in the bpfman namespace via operator-hub.\n## Configuration\n\nThe `bpfman-config`
          configmap is automatically created in the `bpfman` namespace and used to
          configure the bpfman deployment.\n\nTo edit the config simply run\n\n```bash\nkubectl
          edit cm bpfman-config\n```\n\nThe following fields are adjustable\n\n- `bpfman.agent.image`:
          The image used for the bpfman-agent`\n- `bpfman.image`: The image used for
          bpfman`\n- `bpfman.log.level`: the log level for bpfman, currently supports
          `debug`, `info`, `warn`, `error`, and `fatal`, defaults to `info`\n- `bpfman.agent.log.level`:
          the log level for the bpfman-agent currently supports `info`, `debug`, and
          `trace` \n\nThe bpfman operator deploys eBPF programs via CRDs. The following
          CRDs are currently available, \n\n- BpfApplication\n- ClusterBpfApplication\n
          - BpfApplicationState\n- ClusterBpfApplicationState\n\n ## More information\n\nPlease
          checkout the [bpfman community website](https://bpfman.io/) for more information."
        displayName: eBPF Manager Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ebpf
        - kubernetes
        links:
        - name: bpfman website
          url: https://www.redhat.com/
        maintainers:
        - email: afredette@redhat.com
          name: Andre Fredette
        - email: mmahmoud@redhat.com
          name: Mohamed Mahmoud
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
          url: https://www.redhat.com/
        relatedImages:
        - registry.redhat.io/bpfman/bpfman-operator-bundle@sha256:f015580da52da53c9fa9e5629804b9ac6b3026208d271f8d7ac0bd55f887bad7
        - registry.redhat.io/bpfman/bpfman-rhel9-operator@sha256:d168cb1d5472ca5726aa3621e239005eb3b54d5f5d5d5ffad9a61f95a7c1ed23
        version: 0.5.10
      entries:
      - name: bpfman-operator.v0.5.10
        version: 0.5.10
      - name: bpfman-operator.v0.5.9
        version: 0.5.9
      - name: bpfman-operator.v0.5.8
        version: 0.5.8
      name: stable
    defaultChannel: stable
    packageName: bpfman-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HashiCorp
      provider-url: https://www.hashicorp.com/
    name: hcp-terraform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hcp-terraform-operator.v2.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "AgentPool",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "agentTokens": [
                    {
                      "name": "token"
                    }
                  ],
                  "name": "NAME",
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "AgentToken",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "agentPool": {
                    "name": "AGENT_POOL_NAME"
                  },
                  "agentTokens": [
                    {
                      "name": "token-a"
                    },
                    {
                      "name": "token-b"
                    }
                  ],
                  "deletionPolicy": "destroy",
                  "managementPolicy": "merge",
                  "organization": "HCP_TF_ORG_NAME",
                  "secretName": "SECRET_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "Module",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "module": {
                    "source": "redeux/terraform-cloud-agent/kubernetes",
                    "version": "1.0.1"
                  },
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  },
                  "workspace": {
                    "id": "WORKSPACE_ID"
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "Project",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "name": "NAME",
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "RunsCollector",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "agentPool": {
                    "name": "AGENT_POOL_NAME"
                  },
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              },
              {
                "apiVersion": "app.terraform.io/v1alpha2",
                "kind": "Workspace",
                "metadata": {
                  "name": "NAME"
                },
                "spec": {
                  "name": "NAME",
                  "organization": "HCP_TF_ORG_NAME",
                  "token": {
                    "secretKeyRef": {
                      "key": "SECRET_KEY",
                      "name": "SECRET_NAME"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: registry.connect.redhat.com/hashicorp/hcp-terraform-operator@sha256:a80e83e7b6c08783e89be972588d5c24a6f9efafeb66eb63a3dd490642857c91
          createdAt: "2025-12-22T09:35:34Z"
          description: HCP Terraform Operator for Kubernetes allows managing HCP Terraform
            / Terraform Enterprise resources via Kubernetes Custom Resources.
          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"
          operators.openshift.io/valid-subscription: Valid HCP Terraform / Terraform
            Enterprise subscription is required
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/hashicorp/hcp-terraform-operator
          support: HashiCorp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              AgentPool manages HCP Terraform Agent Pools, HCP Terraform Agent Tokens and can perform HCP Terraform Agent scaling.
              More infromation:
                - https://developer.hashicorp.com/terraform/cloud-docs/agents/agent-pools
                - https://developer.hashicorp.com/terraform/cloud-docs/users-teams-organizations/api-tokens#agent-api-tokens
                - https://developer.hashicorp.com/terraform/cloud-docs/agents
            displayName: Agent Pool
            kind: AgentPool
            name: agentpools.app.terraform.io
            version: v1alpha2
          - description: |-
              AgentToken manages HCP Terraform Agent Tokens.
              More information:
              - https://developer.hashicorp.com/terraform/cloud-docs/users-teams-organizations/api-tokens#agent-api-tokens
            displayName: Agent Token
            kind: AgentToken
            name: agenttokens.app.terraform.io
            version: v1alpha2
          - description: |-
              Module implements API-driven Run Workflows.
              More information:
                - https://developer.hashicorp.com/terraform/cloud-docs/run/api
            displayName: Module
            kind: Module
            name: modules.app.terraform.io
            version: v1alpha2
          - description: |-
              Project manages HCP Terraform Projects.
              More information:
                - https://developer.hashicorp.com/terraform/cloud-docs/projects/manage
            displayName: Project
            kind: Project
            name: projects.app.terraform.io
            version: v1alpha2
          - description: |-
              RunsCollector scraptes HCP Terraform Run statuses from a given Agent Pool and exposes them as Prometheus-compatible metrics.
              More information:
                - https://developer.hashicorp.com/terraform/cloud-docs/run/remote-operations
            displayName: Runs Collector
            kind: RunsCollector
            name: runscollectors.app.terraform.io
            version: v1alpha2
          - description: |-
              Workspace manages HCP Terraform Workspaces.
              More information:
                - https://developer.hashicorp.com/terraform/cloud-docs/workspaces
            displayName: Workspace
            kind: Workspace
            name: workspaces.app.terraform.io
            version: v1alpha2
        description: HCP Terraform Operator for Kubernetes allows managing HCP Terraform
          / Terraform Enterprise resources via Kubernetes Custom Resources.
        displayName: HCP Terraform Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - terraform
        links:
        - name: HCP Terraform Operator
          url: https://github.com/hashicorp/hcp-terraform-operator
        maintainers:
        - email: hcp-tf-operator@hashicorp.com
          name: HashiCorp
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: HashiCorp
          url: https://www.hashicorp.com/
        relatedImages:
        - registry.connect.redhat.com/hashicorp/hcp-terraform-operator@sha256:a80e83e7b6c08783e89be972588d5c24a6f9efafeb66eb63a3dd490642857c91
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c8336efb1269a7f40113aa9767c6dc9affe4fd830a1ca6004206bcef1d0274a3
        - registry.connect.redhat.com/hashicorp/hcp-terraform-operator-bundle@sha256:611fc96e2c82aca4b8252fcddb67d5b39e730a0377ded4f7693104128a49069d
        version: 2.11.0
      entries:
      - name: hcp-terraform-operator.v2.11.0
        version: 2.11.0
      - name: hcp-terraform-operator.v2.9.2
        version: 2.9.2
      - name: hcp-terraform-operator.v2.9.1
        version: 2.9.1
      - name: hcp-terraform-operator.v2.9.0
        version: 2.9.0
      - name: hcp-terraform-operator.v2.8.1
        version: 2.8.1
      - name: hcp-terraform-operator.v2.8.0
        version: 2.8.0
      name: alpha
    defaultChannel: alpha
    packageName: hcp-terraform-operator
    provider:
      name: HashiCorp
      url: https://www.hashicorp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/component: operator
      app.kubernetes.io/managed-by: kustomize
      app.kubernetes.io/name: zabbix-operator-certified
      app.kubernetes.io/part-of: zabbix-operator-certified
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Zabbix LLC
      provider-url: ""
    name: zabbix-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: zabbix-operator-certified.v6.0.42
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixAgent",
                "metadata": {
                  "labels": {
                    "app": "agent",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-agent"
                },
                "spec": {
                  "active_allow": true,
                  "activeservers": "",
                  "allow_key": "",
                  "allow_privileged": true,
                  "buffer_send": 5,
                  "buffer_size": 100,
                  "debug_level": 3,
                  "deny_key": "system.run[*]",
                  "host_interface": "",
                  "host_interface_item": "",
                  "hostname": "",
                  "hostname_item": "system.hostname",
                  "load_module": "",
                  "log_remote_commands": true,
                  "max_lines_per_second": 20,
                  "metadata": "",
                  "metadata_item": "",
                  "passive_allow": true,
                  "passive_servers": "",
                  "refresh_active_checks": 120,
                  "server_host": "zabbix-server",
                  "start_agents": 3,
                  "timeout": 3,
                  "tls_accept": "unencrypted",
                  "tls_ca_file_name": "",
                  "tls_cert_file_name": "",
                  "tls_cipher_all": "",
                  "tls_cipher_all_13": "",
                  "tls_cipher_cert": "",
                  "tls_cipher_cert_13": "",
                  "tls_cipher_psk": "",
                  "tls_cipher_psk_13": "",
                  "tls_connect": "unencrypted",
                  "tls_crl_file_name": "",
                  "tls_key_file_name": "",
                  "tls_psk_file_name": "",
                  "tls_psk_identity": "",
                  "tls_server_cert_issuer": "",
                  "tls_server_cert_subject": "",
                  "unsafe_user_parameters": false,
                  "use_host_node_name": true
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixAgent2",
                "metadata": {
                  "labels": {
                    "app": "agent2",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-agent2"
                },
                "spec": {
                  "active_allow": true,
                  "activeservers": "",
                  "allow_key": "",
                  "allow_privileged": true,
                  "buffer_send": 5,
                  "buffer_size": 100,
                  "debug_level": 3,
                  "deny_key": "system.run[*]",
                  "enable_persistent_buffer": false,
                  "enable_status_port": false,
                  "host_interface": "",
                  "host_interface_item": "",
                  "hostname": "",
                  "hostname_item": "system.hostname",
                  "load_module": "",
                  "metadata": "",
                  "metadata_item": "",
                  "passive_allow": true,
                  "passive_servers": "",
                  "persistent_buffer_claim": "",
                  "persistent_buffer_period": "1h",
                  "refresh_active_checks": 120,
                  "server_host": "zabbix-server",
                  "start_agents": 3,
                  "timeout": 3,
                  "tls_accept": "unencrypted",
                  "tls_ca_file_name": "",
                  "tls_cert_file_name": "",
                  "tls_cipher_all": "",
                  "tls_cipher_all_13": "",
                  "tls_cipher_cert": "",
                  "tls_cipher_cert_13": "",
                  "tls_cipher_psk": "",
                  "tls_cipher_psk_13": "",
                  "tls_connect": "unencrypted",
                  "tls_crl_file_name": "",
                  "tls_key_file_name": "",
                  "tls_psk_file_name": "",
                  "tls_psk_identity": "",
                  "tls_server_cert_issuer": "",
                  "tls_server_cert_subject": "",
                  "unsafe_user_parameters": false,
                  "use_host_node_name": true
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixFull",
                "metadata": {
                  "labels": {
                    "app": "server",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-full"
                },
                "spec": {
                  "builtin_report_service": true,
                  "enable_report_service": false,
                  "enable_snmp_traps": false,
                  "history_storage_url": "",
                  "java_gateway": {
                    "debug_level": "info",
                    "start_pollers": 5,
                    "timeout": 3
                  },
                  "java_gateway_size": 1,
                  "server": {
                    "allow_unsupported_db_versions": false,
                    "cache_size": "32M",
                    "cache_update_frequency": 60,
                    "db_tls_cipher": "",
                    "db_tls_cipher_13": "",
                    "db_tls_connect": "",
                    "debug_level": 3,
                    "export_file_size": "",
                    "history_cache_size": "16M",
                    "history_index_cache_size": "4M",
                    "history_storage_date_index": true,
                    "history_storage_types": "",
                    "housekeeping_frequency": 1,
                    "load_module": "",
                    "log_slow_queries": 0,
                    "max_housekeeper_delete": 5000,
                    "proxy_config_frequency": 3600,
                    "proxy_data_frequency": 1,
                    "service_manager_sync_frequency": 60,
                    "start_alerters": 3,
                    "start_db_syncers": 4,
                    "start_discoverers": 1,
                    "start_escalators": 1,
                    "start_history_pollers": 5,
                    "start_http_pollers": 1,
                    "start_ipmi_pollers": 0,
                    "start_java_pollers": 5,
                    "start_lld_processors": 2,
                    "start_odbc_pollers": 1,
                    "start_pingers": 1,
                    "start_pollers": 5,
                    "start_pollers_unreachable": 1,
                    "start_preprocessors": 3,
                    "start_proxy_pollers": 0,
                    "start_report_writers": 1,
                    "start_timers": 1,
                    "start_trappers": 5,
                    "start_vmware_collectors": 0,
                    "stats_allowed_ip": "",
                    "timeout": 4,
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_cipher_all": "",
                    "tls_cipher_all_13": "",
                    "tls_cipher_cert": "",
                    "tls_cipher_cert_13": "",
                    "tls_cipher_psk": "",
                    "tls_cipher_psk_13": "",
                    "tls_crl_file_name": "",
                    "tls_key_file_name": "",
                    "trapper_timeout": 300,
                    "trend_cache_size": "4M",
                    "trend_function_cache_size": "4M",
                    "unavailable_delay": 60,
                    "unreachable_delay": 15,
                    "unreachable_period": 45,
                    "value_cache_size": "8M",
                    "vault_db_path": "",
                    "vmware_cache_size": "8M",
                    "vmware_frequency": 60,
                    "vmware_perf_frequency": 60,
                    "vmware_timeout": 10,
                    "web_service_url": ""
                  },
                  "snmp_traps_volumeclaim": "",
                  "snmptraps": {
                    "snmp_trap_date_format": "+%Y%m%d.%H%M%S",
                    "snmp_trap_format": "\\n"
                  },
                  "vault_token": "",
                  "vault_url": "",
                  "web": {
                    "db_cipher_list": "",
                    "db_double_ieee754": true,
                    "db_encryption": false,
                    "db_verify_host": false,
                    "deny_gui_access": false,
                    "enable_web_access_log": true,
                    "gui_access_ip_range": "",
                    "gui_warning_msg": "Zabbix is under maintenance.",
                    "history_storage_types": "",
                    "max_execution_time": 300,
                    "max_input_time": 300,
                    "memory_limit": "128M",
                    "post_max_size": "16M",
                    "server_name": "Kubernetes installation",
                    "session_name": "zbx_sessionid",
                    "sso_settings": "",
                    "timezone": "Europe/Riga",
                    "upload_max_filesize": "2M",
                    "vault_db_path": ""
                  },
                  "web_enable_route": true,
                  "web_service": {
                    "allowed_ip": "0.0.0.0/0",
                    "debug_level": 3,
                    "ignore_url_cert_errors": false,
                    "timeout": 3,
                    "tls_accept": "unencrypted",
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_key_file_name": ""
                  },
                  "web_size": 2,
                  "zabbix_mysql_volumeclaim": "mysql-full-zabbix",
                  "zabbix_mysqlsecret": "zabbix-full-secrets"
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixProxyMysql",
                "metadata": {
                  "labels": {
                    "app": "proxy",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-proxy-mysql"
                },
                "spec": {
                  "db_server_port": 3306,
                  "enable_snmp_traps": false,
                  "internal_db": true,
                  "java_gateway": {
                    "debug_level": "info",
                    "start_pollers": 5,
                    "timeout": 3
                  },
                  "java_gateway_size": 1,
                  "mysql_database": "zabbix_proxy",
                  "proxy": {
                    "allow_unsupported_db_versions": false,
                    "cache_size": "8M",
                    "config_frequency": 3600,
                    "data_sender_frequency": 1,
                    "db_tls_cipher": "",
                    "db_tls_cipher_13": "",
                    "db_tls_connect": "",
                    "debug_level": 3,
                    "enable_remote_commands": false,
                    "history_cache_size": "16M",
                    "history_index_cache_size": "4M",
                    "hostname": "",
                    "hostname_item": "system.hostname",
                    "housekeeping_frequency": 1,
                    "log_remote_commands": true,
                    "log_slow_queries": 0,
                    "proxy_heartbeat_frequency": 60,
                    "proxy_local_buffer": 0,
                    "proxy_mode": 0,
                    "proxy_offline_buffer": 1,
                    "server_host": "zabbix-server",
                    "start_db_syncers": 4,
                    "start_discoverers": 1,
                    "start_history_pollers": 1,
                    "start_http_pollers": 1,
                    "start_ipmi_pollers": 0,
                    "start_java_pollers": 5,
                    "start_odbc_pollers": 1,
                    "start_pingers": 1,
                    "start_pollers": 5,
                    "start_pollers_unreachable": 1,
                    "start_preprocessors": 3,
                    "start_trappers": 5,
                    "start_vmware_collectors": 0,
                    "timeout": 4,
                    "tls_accept": "unencrypted",
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_cipher_all": "",
                    "tls_cipher_all_13": "",
                    "tls_cipher_cert": "",
                    "tls_cipher_cert_13": "",
                    "tls_cipher_psk": "",
                    "tls_cipher_psk_13": "",
                    "tls_connect": "unencrypted",
                    "tls_crl_file_name": "",
                    "tls_key_file_name": "",
                    "tls_psk_file_name": "",
                    "tls_psk_identity": "",
                    "tls_server_cert_issuer": "",
                    "tls_server_cert_subject": "",
                    "trapper_timeout": 300,
                    "unavailable_delay": 60,
                    "unreachable_delay": 15,
                    "unreachable_period": 45,
                    "vault_db_path": "",
                    "vmware_cache_size": "8M",
                    "vmware_frequency": 60,
                    "vmware_perf_frequency": 60,
                    "vmware_timeout": 10
                  },
                  "snmp_traps_volumeclaim": "zabbix-snmptraps",
                  "snmptraps": {
                    "snmp_trap_date_format": "+%Y%m%d.%H%M%S",
                    "snmp_trap_format": "\\n"
                  },
                  "vault_token": "",
                  "vault_url": "",
                  "zabbix_mysql_volumeclaim": "mysql-proxy-zabbix",
                  "zabbix_mysqlsecret": "zabbix-full-secrets"
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixProxySqlite",
                "metadata": {
                  "labels": {
                    "app": "proxy",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-proxy-sqlite"
                },
                "spec": {
                  "db_data_volumeclaim": "zabbix-proxy-sqlite",
                  "enable_snmp_traps": false,
                  "java_gateway": {
                    "debug_level": "info",
                    "start_pollers": 5,
                    "timeout": 3
                  },
                  "java_gateway_size": 1,
                  "proxy": {
                    "cache_size": "8M",
                    "config_frequency": 3600,
                    "data_sender_frequency": 1,
                    "debug_level": 3,
                    "enable_remote_commands": false,
                    "history_cache_size": "16M",
                    "history_index_cache_size": "4M",
                    "hostname": "",
                    "hostname_item": "system.hostname",
                    "housekeeping_frequency": 1,
                    "log_remote_commands": true,
                    "log_slow_queries": 0,
                    "node_name_as_db_name": true,
                    "proxy_heartbeat_frequency": 60,
                    "proxy_local_buffer": 0,
                    "proxy_mode": 0,
                    "proxy_offline_buffer": 1,
                    "server_host": "zabbix-server",
                    "start_db_syncers": 4,
                    "start_discoverers": 1,
                    "start_history_pollers": 1,
                    "start_http_pollers": 1,
                    "start_ipmi_pollers": 0,
                    "start_java_pollers": 5,
                    "start_odbc_pollers": 1,
                    "start_pingers": 1,
                    "start_pollers": 5,
                    "start_pollers_unreachable": 1,
                    "start_preprocessors": 3,
                    "start_trappers": 5,
                    "start_vmware_collectors": 0,
                    "timeout": 4,
                    "tls_accept": "unencrypted",
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_cipher_all": "",
                    "tls_cipher_all_13": "",
                    "tls_cipher_cert": "",
                    "tls_cipher_cert_13": "",
                    "tls_cipher_psk": "",
                    "tls_cipher_psk_13": "",
                    "tls_connect": "unencrypted",
                    "tls_crl_file_name": "",
                    "tls_key_file_name": "",
                    "tls_psk_file_name": "",
                    "tls_psk_identity": "",
                    "tls_server_cert_issuer": "",
                    "tls_server_cert_subject": "",
                    "trapper_timeout": 300,
                    "unavailable_delay": 60,
                    "unreachable_delay": 15,
                    "unreachable_period": 45,
                    "vmware_cache_size": "8M",
                    "vmware_frequency": 60,
                    "vmware_perf_frequency": 60,
                    "vmware_timeout": 10
                  },
                  "proxy_size": 1,
                  "snmp_traps_volumeclaim": "zabbix-snmptraps",
                  "snmptraps": {
                    "snmp_trap_date_format": "+%Y%m%d.%H%M%S",
                    "snmp_trap_format": "\\n"
                  }
                }
              },
              {
                "apiVersion": "kubernetes.zabbix.com/v1alpha1",
                "kind": "ZabbixServer",
                "metadata": {
                  "labels": {
                    "app": "server",
                    "vendor": "zabbix"
                  },
                  "name": "zabbix-server"
                },
                "spec": {
                  "builtin_report_service": true,
                  "db_server_host": "mysql-server",
                  "db_server_port": 3306,
                  "enable_report_service": false,
                  "enable_snmp_traps": false,
                  "history_storage_url": "",
                  "java_gateway": {
                    "debug_level": "info",
                    "start_pollers": 5,
                    "timeout": 3
                  },
                  "java_gateway_size": 1,
                  "mysql_database": "zabbix",
                  "server": {
                    "allow_unsupported_db_versions": false,
                    "cache_size": "32M",
                    "cache_update_frequency": 60,
                    "db_tls_cipher": "",
                    "db_tls_cipher_13": "",
                    "db_tls_connect": "",
                    "debug_level": 3,
                    "export_file_size": "",
                    "history_cache_size": "16M",
                    "history_index_cache_size": "4M",
                    "history_storage_date_index": true,
                    "history_storage_types": "",
                    "housekeeping_frequency": 1,
                    "load_module": "",
                    "log_slow_queries": 0,
                    "max_housekeeper_delete": 5000,
                    "proxy_config_frequency": 3600,
                    "proxy_data_frequency": 1,
                    "service_manager_sync_frequency": 60,
                    "start_alerters": 3,
                    "start_db_syncers": 4,
                    "start_discoverers": 1,
                    "start_escalators": 1,
                    "start_history_pollers": 5,
                    "start_http_pollers": 1,
                    "start_ipmi_pollers": 0,
                    "start_java_pollers": 5,
                    "start_lld_processors": 2,
                    "start_odbc_pollers": 1,
                    "start_pingers": 1,
                    "start_pollers": 5,
                    "start_pollers_unreachable": 1,
                    "start_preprocessors": 3,
                    "start_proxy_pollers": 0,
                    "start_report_writers": 1,
                    "start_timers": 1,
                    "start_trappers": 5,
                    "start_vmware_collectors": 0,
                    "stats_allowed_ip": "",
                    "timeout": 4,
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_cipher_all": "",
                    "tls_cipher_all_13": "",
                    "tls_cipher_cert": "",
                    "tls_cipher_cert_13": "",
                    "tls_cipher_psk": "",
                    "tls_cipher_psk_13": "",
                    "tls_crl_file_name": "",
                    "tls_key_file_name": "",
                    "trapper_timeout": 300,
                    "trend_cache_size": "4M",
                    "trend_function_cache_size": "4M",
                    "unavailable_delay": 60,
                    "unreachable_delay": 15,
                    "unreachable_period": 45,
                    "value_cache_size": "8M",
                    "vault_db_path": "",
                    "vmware_cache_size": "8M",
                    "vmware_frequency": 60,
                    "vmware_perf_frequency": 60,
                    "vmware_timeout": 10,
                    "web_service_url": ""
                  },
                  "snmp_traps_volumeclaim": "",
                  "snmptraps": {
                    "snmp_trap_date_format": "+%Y%m%d.%H%M%S",
                    "snmp_trap_format": "\\n"
                  },
                  "vault_token": "",
                  "vault_url": "",
                  "web": {
                    "db_cipher_list": "",
                    "db_double_ieee754": true,
                    "db_encryption": false,
                    "db_verify_host": false,
                    "deny_gui_access": false,
                    "enable_web_access_log": true,
                    "gui_access_ip_range": "",
                    "gui_warning_msg": "Zabbix is under maintenance.",
                    "history_storage_types": "",
                    "max_execution_time": 300,
                    "max_input_time": 300,
                    "memory_limit": "128M",
                    "post_max_size": "16M",
                    "server_name": "Kubernetes installation",
                    "session_name": "zbx_sessionid",
                    "sso_settings": "",
                    "timezone": "Europe/Riga",
                    "upload_max_filesize": "2M",
                    "vault_db_path": ""
                  },
                  "web_enable_route": true,
                  "web_service": {
                    "allowed_ip": "0.0.0.0/0",
                    "debug_level": 3,
                    "ignore_url_cert_errors": false,
                    "timeout": 3,
                    "tls_accept": "unencrypted",
                    "tls_ca_file_name": "",
                    "tls_cert_file_name": "",
                    "tls_key_file_name": ""
                  },
                  "web_size": 2,
                  "zabbix_mysqlsecret": "zabbix-full-secrets"
                }
              }
            ]
          ansible.operator-sdk/reconcile-period: 5s
          capabilities: Seamless Upgrades
          categories: Monitoring, Networking
          certified: "true"
          containerImage: registry.connect.redhat.com/zabbix/zabbixoperator-certified@sha256:77e30cbaade0405adfab5d3b25c95fa45c40c29c6552308922062512b71af614
          createdAt: "2025-10-21T02:46:43Z"
          description: Zabbix operator with multiple deployment variants and different
            components
          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.skipRange: <6.0.42
          operatorframework.io/suggested-namespace: zabbix
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: ""
          support: Zabbix
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Zabbix agent 2 is a new generation of Zabbix agent and may
              be used in place of Zabbix agent
            displayName: Zabbix agent 2
            kind: ZabbixAgent2
            name: zabbixagent2s.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix agent is deployed on a monitoring nodes to actively
              monitor local resources and applications
            displayName: Zabbix agent
            kind: ZabbixAgent
            name: zabbixagents.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix server with MySQL database server, Nginx web-server
              and Zabbix Java Gateway
            displayName: Zabbix Full
            kind: ZabbixFull
            name: zabbixfulls.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix proxy with MySQL database server
            displayName: Zabbix proxy (MySQL)
            kind: ZabbixProxyMysql
            name: zabbixproxymysqls.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix proxy with SQLite database
            displayName: Zabbix proxy (SQLite3)
            kind: ZabbixProxySqlite
            name: zabbixproxysqlites.kubernetes.zabbix.com
            version: v1alpha1
          - description: Zabbix server with MySQL database support, Nginx web-server
              and Zabbix Java Gateway
            displayName: Zabbix Server
            kind: ZabbixServer
            name: zabbixservers.kubernetes.zabbix.com
            version: v1alpha1
        description: "## About this Operator\n\nZabbix helps you to real-time monitoring
          of millions of metrics collected from tens of thousands of servers, virtual
          machines and network devices.\nThe Zabbix Operator allows users to easily
          deploy, manage, and maintain Zabbix deployments on OpenShift. By installing
          this integration you will be able to deploy Zabbix server / proxies and
          other components with a single command.\n## Supported Features\n* **Zabbix
          Server** - Simple Zabbix installation with included Zabbix server, Zabbix
          web-interface and Zabbix Java Gateway with MySQL database support. The feature
          does not provide MySQL service and requires an external MySQL database.
          \n* **Zabbix Server (Full)** - Zabbix installation with included Zabbix
          server, Zabbix web-interface, Zabbix Java Gateway and MySQL server instance.\n*
          **Zabbix proxy (SQLite3)** - Very simple way to gain power of Zabbix proxy.
          The feature has  SQLite3 support for Zabbix proxies and allow to specify
          amount of proxies. \n* **Zabbix proxy (MySQL)** - Another option of Zabbix
          proxy. The option support and deliver MySQL database.\n* **Zabbix agent**
          - Zabbix agent can be deployed on each available node for stability and
          performance monitoring on remote nodes. It allows to gather metrics with
          full automation!* \n## Prerequisites\nAll deployment options are require
          additional information during deployment. Please, check the following instructions
          and provide required configuration:\n* **Zabbix Server** - MySQL database
          host information and MySQL database credentials in specially formatted *Secret*.
          Additionally it is possible to specify SSL certificates for HTTPS support
          in *Secret*.\n* **Zabbix Server (Full)** - MySQL database credentials in
          specially formatted *Secret*. MySQL database volume name information. Additionally
          it is possible to specify SSL certificates for HTTPS support in *Secret*.\n*
          **Zabbix proxy (SQLite3)** - Zabbix server host information only.\n* **Zabbix
          proxy (MySQL)** - MySQL database credentials in specially formatted *Secrets*
          and Zabbix server host information.\n* **Zabbix agent** - Zabbix server
          host information only for outgoing and incoming connections. Zabbix agent
          uses \"privileged\" mode to monitor node resources! For example, running
          processes.* \n### MySQL credentials\n```\nkind: Secret\napiVersion: v1\nmetadata:\n
          \ name: zabbix-full-secrets\ndata:\n  mysql_root_password: emFiYml4X3N1cGVyX3Jvb3Q=
          [1]\n  mysql_zabbix_password: emFiYml4X3VzZXJfcGFzc3dvcmQ= [2]\n  mysql_zabbix_username:
          emFiYml4 [3]\ntype: Opaque\n```\nUsing MySQL root password (*mysqlrootpassword*
          [1]) Zabbix server / proxy will try to create MySQL database schema with
          grant permissions to *mysqlzabbixusername* [2] and *mysqlzabbixpassword*
          [3].\n### SSL certificates for HTTPS\n```\nkind: Secret\napiVersion: v1\nmetadata:\n
          \ name: zabbix-web-sslsecret\ndata:\n  ssl.crt: >-\n   < ssl.crt data>\n
          \ ssl.key: >-\n\t < ssl.key data >\n  dhparam.pem: >-\n   <  dhparam.pem
          data >\n```\nFiles *ssl.crt*, *ssl.key* and *dhparam.perm* are required
          for Zabbix web-interface for SSL support.\n"
        displayName: Zabbix Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - monitoring
        - zabbix
        - appliance
        - agent
        - metrics
        links:
        - name: Zabbix
          url: https://www.zabbix.com
        - name: Zabbix Official Documentation
          url: https://www.zabbix.com/documentation/6.0/en/manual/quickstart
        - name: Zabbix Operator Installation
          url: https://www.zabbix.com/documentation/6.0/en/manual/installation/containers/openshift
        - name: Downloads
          url: https://www.zabbix.com/download
        maintainers:
        - email: alexey.pustovalov@zabbix.com
          name: Alexey Pustovalov
        maturity: stable
        minKubeVersion: 1.19.0
        provider:
          name: Zabbix LLC
        relatedImages:
        - registry.connect.redhat.com/zabbix/zabbix-java-gateway-60@sha256:19437b3d912fe852fe568592cca5c45c0d1cee717981b94f2aed3a56a36f98ee
        - registry.connect.redhat.com/zabbix/zabbix-proxy-mysql-60@sha256:a32212ca9914b6b615d3218cb8c31b46e79a24b95408bbf7d2ae2bc2438b994d
        - registry.connect.redhat.com/zabbix/zabbix-server-mysql-60@sha256:d6a72aa83d6b33539d95363a3b1f551913323423034cb9d601d8350a3202e900
        - registry.connect.redhat.com/zabbix/zabbix-web-service-60@sha256:8fd7c44bd53a432656ff1b867001294ccdc96e307c1b5ef0efdabfd38c64d792
        - registry.connect.redhat.com/zabbix/zabbix-agent-60@sha256:c70bc90da7b35b7a1a1d9e990bd74cbcd19b152d480575af6ebc470a77ba3654
        - registry.connect.redhat.com/zabbix/zabbix-snmptraps-60@sha256:9fff7dd44cfdb94772f44e45bf09522c136d6b31e430a01182bb583f8add08b6
        - registry.connect.redhat.com/zabbix/zabbix-web-mysql-60@sha256:0d0004d7e2d16e824833dddd797a03f56df98da4aad84aa94156593c8d4c1391
        - registry.connect.redhat.com/zabbix/zabbixoperator-certified-bundle@sha256:9e2c710933fd100f9a26eb8efc9ec26a674e4295e35e62c008639436d357bbb8
        - registry.connect.redhat.com/zabbix/zabbix-proxy-sqlite-60@sha256:1eca475781f58a299d7b432a2c58c1a28bf1624b55b963837b05934ed29c2539
        - registry.connect.redhat.com/zabbix/zabbixoperator-certified@sha256:77e30cbaade0405adfab5d3b25c95fa45c40c29c6552308922062512b71af614
        - registry.redhat.io/rhel9/mysql-80@sha256:9e9d7d742346b0c8f8a244255e9b029f2c50d87eef71cdd809f3bda7b47d81ec
        - registry.connect.redhat.com/zabbix/zabbix-agent2-60@sha256:41e5a21d000096d40b8d4eab8dd295e97d34e1185064a5e16ce321f80996a154
        version: 6.0.42
      entries:
      - name: zabbix-operator-certified.v6.0.42
        version: 6.0.42
      - name: zabbix-operator-certified.v6.0.40
        version: 6.0.40
      - name: zabbix-operator-certified.v6.0.38
        version: 6.0.38
      - name: zabbix-operator-certified.v6.0.36
        version: 6.0.36
      - name: zabbix-operator-certified.v6.0.33
        version: 6.0.33
      - name: zabbix-operator-certified.v6.0.29
        version: 6.0.29
      - name: zabbix-operator-certified.v6.0.27
        version: 6.0.27
      - name: zabbix-operator-certified.v6.0.26
        version: 6.0.26
      - name: zabbix-operator-certified.v6.0.17
        version: 6.0.17
      - name: zabbix-operator-certified.v6.0.14
        version: 6.0.14
      - name: zabbix-operator-certified.v6.0.13
        version: 6.0.13
      name: lts
    defaultChannel: lts
    packageName: zabbix-operator-certified
    provider:
      name: Zabbix LLC
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: open-liberty-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: open-liberty-operator.v0.8.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4",
                  "expose": true,
                  "replicas": 1
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread",
                    "heap"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: registry.connect.redhat.com/ibm/open-liberty-operator-controller@sha256:18f188e48725c785557c8edea46f69c464d6f81ab47860a3bb0ec978c20a26db
          createdAt: "2022-03-25T14:00:00Z"
          description: Deploy and manage applications running on Liberty
          olm.skipRange: <0.8.1
          operators.operatorframework.io/builder: operator-sdk-v1.6.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          This advanced Operator can be used to deploy and manage Open Liberty applications with consistent, production-grade QoS. This operator is based on the [Runtime Component Operator](https://github.com/application-stacks/runtime-component-operator) and provides all of its capabilities in addition to Open Liberty specific features such as gathering traces and dumps (Day-2 operations) and easily configuring and managing the single sign-on information for your Open Liberty applications.

          Open Liberty Operator enables enterprise architects to govern the way their applications get deployed & managed in the cluster, while dramatically reducing the learning curve for developers to deploy into Kubernetes - allowing them to focus on writing the code!

          Here are some key features:

          #### Application Lifecyle
          You can deploy your Open Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the Operator will watch for any updates and will re-deploy the modified image.

          #### Custom RBAC
          This Operator is capable of using a custom ServiceAccount from the caller, allowing it to follow RBAC restrictions. By default it creates a ServiceAccount if one is not specified, which can also be bound with specific roles.

          #### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as: labels, annotations, and environment variables from a ConfigMap, a Secret or a value.

          #### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configuration, such as TLS settings, are also easily enabled.

          #### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto scaling to create (and delete) instances based on resource consumption.

          #### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you.
          This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart.
          We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode.
          You can also easily configure and use a single storage for serviceability related Day-2 operations, such as gatherig server traces and dumps.

          #### Service Binding
          Your runtime components can expose services by a simple toggle. We take care of the heavy lifting such as creating kubernetes Secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to its required services without any intervention or interruption.

          #### Single Sign-On (SSO)
          Open Liberty provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows to easily configure and manage the single sign-on information for your applications.

          #### Exposing metrics to Prometheus
          Expose the Open Liberty application's metrics via the Prometheus Operator.
          You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `spec.monitoring` field to control configurations such as poll interval and security credentials.

          #### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply add the following configuration (to specify the volume size and the location to persist) to your OpenLibertyApplication CR:
          ``` storage: size: 2Gi mountPath: "/logs" ```

          #### Integration with OpenShift Serverless
          Deploy your serverless runtime component using a single toggle.  The Operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing your pod to automatically scale to 0 when it is idle.

          #### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and how they are connected.

          See our [**documentation**](https://github.com/OpenLiberty/open-liberty-operator/tree/main/doc/) for more information.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://github.com/OpenLiberty/open-liberty-operator/tree/main/doc
        - name: Open Liberty
          url: https://openliberty.io/
        - name: Open Liberty Container Images
          url: https://github.com/OpenLiberty/ci.docker
        maintainers:
        - email: arturdzm@ibm.com
          name: Artur Dzmitryieu
        - email: leojc@ca.ibm.com
          name: Leo Christy Jesuraj
        maturity: beta
        provider:
          name: IBM
        relatedImages:
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:591fc4b5867dff26df1952653423b33889c0f56ba3f756057694d4c0e396eeb0
        - registry.connect.redhat.com/ibm/open-liberty-operator-controller@sha256:18f188e48725c785557c8edea46f69c464d6f81ab47860a3bb0ec978c20a26db
        - registry.connect.redhat.com/ibm/open-liberty-samples@sha256:8ea2d3405ff2829d93c5dda4dab5d695ea8ead34e804aaf6e39ea84f53a15ee4
        version: 0.8.1
      entries:
      - name: open-liberty-operator.v0.8.1
        version: 0.8.1
      - name: open-liberty-operator.v0.8.0
        version: 0.8.0
      name: beta2
    - currentCSV: open-liberty-operator.v1.2.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread",
                    "heap"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread",
                    "heap"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/open-liberty-operator@sha256:d45c296d43dc4c4100f38bb736f073e04c8b4d72b68ddf1189e311aff8ad66e3
          createdAt: "2023-08-28T16:39:10Z"
          description: Deploy and manage containerized Liberty applications
          olm.skipRange: '>=0.8.0 <1.2.2'
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          Open Liberty is a lightweight open framework for building fast and efficient cloud-native Java microservices. Open Liberty is the most flexible server runtime available to Java developers in this solar system. It is optimized for modern cloud technologies and practices, making it an ideal choice for container and Kubernetes-based deployments.

          Open Liberty Operator allows you to deploy and manage containerized Liberty applications securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform Day-2 operations such as gathering traces and memory dumps easily using the operator.
          ## Documentation
          See our [**documentation**](https://ibm.biz/olo-docs) for more information. If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/olo-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Application Lifecycle
          You can deploy your Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Integration with Semeru Cloud Compiler
          Use a single toggle to stand up a compatible Semeru Cloud Compiler instance to handle compilation requests from the multiple instances of the same application. Liberty Operator automatically sets up encrypted communication between the compiler and the application. It also handles application upgrade scenarios gracefully to ensure compiler and application instances remain compatible.
          ### Exposing metrics to Prometheus
          Expose the Liberty application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Single Sign-On (SSO)
          Liberty runtime provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows you to easily configure and manage the single sign-on information for your applications.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the OpenLibertyApplication's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your applications can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless applications using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the Liberty server.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode. You can also easily configure and use single storage for serviceability-related day-2 operations, such as gathering server traces and dumps.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://ibm.biz/olo-docs
        - name: Open Liberty
          url: https://openliberty.io
        - name: Open Liberty Container Images
          url: https://ibm.biz/ol-images
        maintainers:
        - email: support@ibm.com
          name: IBM Support
        maturity: stable
        provider:
          name: IBM
        relatedImages:
        - icr.io/appcafe/open-liberty-operator@sha256:d45c296d43dc4c4100f38bb736f073e04c8b4d72b68ddf1189e311aff8ad66e3
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:6bf52d536e94d6aa6eaa3ca9639e0fe9f5e71dbd891c50362939dd6aca519d02
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:3225c49cf30a146784533496ce478466034d4549ff9721752958bac342fdec77
        version: 1.2.2
      entries:
      - name: open-liberty-operator.v1.2.2
        version: 1.2.2
      name: v1.2
    - currentCSV: open-liberty-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/open-liberty-operator@sha256:d68bb66a8133702a198f7be655d7cff5f500bb620c460a81547971e00124ef73
          createdAt: "2024-08-01T20:19:13Z"
          description: Deploy and manage containerized Liberty applications
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.3.3'
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          Open Liberty is a lightweight open framework for building fast and efficient cloud-native Java microservices. Open Liberty is the most flexible server runtime available to Java developers in this solar system. It is optimized for modern cloud technologies and practices, making it an ideal choice for container and Kubernetes-based deployments.

          Open Liberty Operator allows you to deploy and manage containerized Liberty applications securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform Day-2 operations such as gathering traces and memory dumps easily using the operator.
          ## Documentation
          See our [**documentation**](https://ibm.biz/olo-docs) for more information. If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/olo-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Application Lifecycle
          You can deploy your Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Management of Lightweight Third-Party Authentication (LTPA)
          LTPA provides a method of SSO configuration to authenticate users to access applications. The Liberty operator can generate and manage the LTPA key for applications. A single LTPA key can be used per each namespace and shared with participating microservices and applications to allow users to authenticate only once.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Integration with Semeru Cloud Compiler
          Use a single toggle to stand up a compatible Semeru Cloud Compiler instance to handle compilation requests from the multiple instances of the same application. Liberty Operator automatically sets up encrypted communication between the compiler and the application. It also handles application upgrade scenarios gracefully to ensure compiler and application instances remain compatible.
          ### Exposing metrics to Prometheus
          Expose the Liberty application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Single Sign-On (SSO)
          Liberty runtime provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows you to easily configure and manage the single sign-on information for your applications.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the OpenLibertyApplication's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your applications can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless applications using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the Liberty server.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode. You can also easily configure and use single storage for serviceability-related day-2 operations, such as gathering server traces and dumps.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://ibm.biz/olo-docs
        - name: Open Liberty
          url: https://openliberty.io
        - name: Open Liberty Container Images
          url: https://ibm.biz/ol-images
        maintainers:
        - email: support@ibm.com
          name: IBM Support
        maturity: stable
        provider:
          name: IBM
        relatedImages:
        - icr.io/appcafe/open-liberty-operator@sha256:d68bb66a8133702a198f7be655d7cff5f500bb620c460a81547971e00124ef73
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:422a7a00edc338497c0a91890b09204b8505ef0e377bb9b5944ace0102055e91
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:b0fa6b0356d83626509289b33dfa669bd7d32542aba986a18d296b85ce63389a
        version: 1.3.3
      entries:
      - name: open-liberty-operator.v1.3.3
        version: 1.3.3
      name: v1.3
    - currentCSV: open-liberty-operator.v1.4.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/open-liberty-operator@sha256:67b5b46dfed008dab4ea7fd176d3bc31dae8940d72194a10aebb98b1dea9043e
          createdAt: "2025-07-18T20:45:06Z"
          description: Deploy and manage containerized Liberty applications
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.4.4'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          Open Liberty is a lightweight open framework for building fast and efficient cloud-native Java microservices. Open Liberty is the most flexible server runtime available to Java developers in this solar system. It is optimized for modern cloud technologies and practices, making it an ideal choice for container and Kubernetes-based deployments.

          Open Liberty Operator allows you to deploy and manage containerized Liberty applications securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform Day-2 operations such as gathering traces and memory dumps easily using the operator.
          ## Documentation
          See our [**documentation**](https://ibm.biz/olo-docs) for more information. If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/olo-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Application Lifecycle
          You can deploy your Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Management of Lightweight Third-Party Authentication (LTPA)
          LTPA provides a method of SSO configuration to authenticate users to access applications. The Liberty operator can generate and manage the LTPA key for applications. A single LTPA key can be used per each namespace and shared with participating microservices and applications to allow users to authenticate only once.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Integration with Semeru Cloud Compiler
          Use a single toggle to stand up a compatible Semeru Cloud Compiler instance to handle compilation requests from the multiple instances of the same application. Liberty Operator automatically sets up encrypted communication between the compiler and the application. It also handles application upgrade scenarios gracefully to ensure compiler and application instances remain compatible.
          ### Exposing metrics to Prometheus
          Expose the Liberty application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Single Sign-On (SSO)
          Liberty runtime provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows you to easily configure and manage the single sign-on information for your applications.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the OpenLibertyApplication's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your applications can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless applications using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the Liberty server.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode. You can also easily configure and use single storage for serviceability-related day-2 operations, such as gathering server traces and dumps.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://ibm.biz/olo-docs
        - name: Open Liberty
          url: https://openliberty.io
        - name: Open Liberty Container Images
          url: https://ibm.biz/ol-images
        maintainers:
        - email: support@ibm.com
          name: IBM Support
        maturity: stable
        provider:
          name: IBM
        relatedImages:
        - icr.io/appcafe/open-liberty-operator@sha256:67b5b46dfed008dab4ea7fd176d3bc31dae8940d72194a10aebb98b1dea9043e
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:494f54bd1476465a4226cb62f0d97cd59cd85b55ff955073e176bda4bd2afbd3
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:fe759127885502dc66423530ff03e37973355c5566a1c27e988b59d71528dd2b
        version: 1.4.4
      entries:
      - name: open-liberty-operator.v1.4.4
        version: 1.4.4
      name: v1.4
    - currentCSV: open-liberty-operator.v1.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "manageTLS": true,
                  "replicas": 1,
                  "serviceAccount": {
                    "mountToken": true
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyPerformanceData",
                "metadata": {
                  "name": "openliberty-performance-data-sample"
                },
                "spec": {
                  "interval": 30,
                  "podName": "Specify_Pod_Name_Here",
                  "timespan": 240
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyApplication",
                "metadata": {
                  "name": "openliberty-app-sample"
                },
                "spec": {
                  "applicationImage": "icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f",
                  "expose": true,
                  "replicas": 1,
                  "service": {
                    "port": 9080
                  }
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyDump",
                "metadata": {
                  "name": "openliberty-dump-sample"
                },
                "spec": {
                  "include": [
                    "thread"
                  ],
                  "podName": "Specify_Pod_Name_Here"
                }
              },
              {
                "apiVersion": "apps.openliberty.io/v1beta2",
                "kind": "OpenLibertyTrace",
                "metadata": {
                  "name": "openliberty-trace-sample"
                },
                "spec": {
                  "maxFileSize": 20,
                  "maxFiles": 5,
                  "podName": "Specify_Pod_Name_Here",
                  "traceSpecification": "*=info:com.ibm.ws.webcontainer*=all"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Application Runtime
          certified: "true"
          containerImage: icr.io/appcafe/open-liberty-operator@sha256:f7df04f70c2eb6d93610cea7efe7c351169ccb92cd9a4644fbed3a1d00ec6cfc
          createdAt: "2025-12-08T17:02:43Z"
          description: Deploy and manage containerized Liberty applications
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.8.0 <1.5.2'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/OpenLiberty/open-liberty-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1
          - description: Represents the deployment of an Open Liberty application
            displayName: OpenLibertyApplication
            kind: OpenLibertyApplication
            name: openlibertyapplications.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1
          - description: Day-2 operation for generating server dumps
            displayName: OpenLibertyDump
            kind: OpenLibertyDump
            name: openlibertydumps.apps.openliberty.io
            version: v1beta2
          - description: Day-2 operation for generating server performance data
            displayName: OpenLibertyPerformanceData
            kind: OpenLibertyPerformanceData
            name: openlibertyperformancedata.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1
          - description: Day-2 operation for gathering server traces
            displayName: OpenLibertyTrace
            kind: OpenLibertyTrace
            name: openlibertytraces.apps.openliberty.io
            version: v1beta2
        description: |
          Open Liberty is a lightweight open framework for building fast and efficient cloud-native Java microservices. Open Liberty is the most flexible server runtime available to Java developers in this solar system. It is optimized for modern cloud technologies and practices, making it an ideal choice for container and Kubernetes-based deployments.

          Open Liberty Operator allows you to deploy and manage containerized Liberty applications securely and easily on Red Hat OpenShift as well as other Kubernetes-based platforms in a consistent way. You can also perform Day-2 operations such as gathering traces and memory dumps easily using the operator.
          ## Documentation
          See our [**documentation**](https://ibm.biz/olo-docs) for more information. If you are **upgrading from versions 0.8.x or below**, make sure to review the documentation, prior to the upgrade, on [behavioural changes](https://ibm.biz/olo-upgrade-v1) that could impact your applications.
          ## Supported platforms
          Kubernetes platform installed on one of the following platforms:
          - Linux&reg; x86_64 (amd64)
          - Linux&reg; on IBM&reg; Z (s390x)
          - Linux&reg; on Power&reg; (ppc64le)
          ## Details
          Key features provided by the operator:
          ### Application Lifecycle
          You can deploy your Liberty application container by either pointing to a container image, or an OpenShift ImageStream. When using an ImageStream the operator will watch for any updates and will automatically deploy the new image.
          ### Integration with Certificate Managers
          The [cert-manager APIs](https://cert-manager.io/) when available on the cluster will be used to generate certificates for the application. Otherwise, on Red Hat OpenShift, the operator will generate certificates using OpenShift's Certificate Manager. The operator will automatically provision TLS certificates for applications' pods and they are automatically refreshed when the certificates are updated. Optionally, you can bring your own (BYO) certificate authority (CA) or Issuer to generate certificates to secure your applications.
          ### Management of Lightweight Third-Party Authentication (LTPA)
          LTPA provides a method of SSO configuration to authenticate users to access applications. The Liberty operator can generate and manage the LTPA key for applications. A single LTPA key can be used per each namespace and shared with participating microservices and applications to allow users to authenticate only once.
          ### Automatically restrict network communication
          Network policies are created for each application by default to limit incoming traffic to pods in the same namespace that are part of the same application. Only the ports configured by the service are allowed. The network policy can be configured to allow either namespaces and/or pods with certain labels. On OpenShift, the operator automatically configures network policy to allow traffic from ingress, when the application is exposed, and from the monitoring stack.
          ### Integration with Semeru Cloud Compiler
          Use a single toggle to stand up a compatible Semeru Cloud Compiler instance to handle compilation requests from the multiple instances of the same application. Liberty Operator automatically sets up encrypted communication between the compiler and the application. It also handles application upgrade scenarios gracefully to ensure compiler and application instances remain compatible.
          ### Exposing metrics to Prometheus
          Expose the Liberty application's metrics via the Prometheus Operator. You can pick between a basic mode, where you simply specify the label that Prometheus is watching to scrape the metrics from the container, or you can specify the full `ServiceMonitor` spec embedded into the OpenLibertyApplication's `.spec.monitoring` field to control configurations such as poll interval and security credentials.
          ### Single Sign-On (SSO)
          Liberty runtime provides capabilities to delegate authentication to external providers. Your application users can log in using their existing social media credentials from providers such as Google, Facebook, LinkedIn, Twitter, GitHub, and any OpenID Connect (OIDC) or OAuth 2.0 clients. Open Liberty Operator allows you to easily configure and manage the single sign-on information for your applications.
          ### Easily mount logs and transaction directories
          Do you need to mount the logs and transaction data from your application to an external volume such as NFS (or any storage supported in your cluster)? Simply specify the volume size and the location to persist and the operator takes care of the rest. For example, add the following configuration into the OpenLibertyApplication's `.spec.storage` field :
          ``` size: 2Gi mountPath: "/logs" ```
          ### Service Binding
          Your applications can expose services by a simple toggle. We take care of the heavy lifting such as creating Kubernetes secrets with information other services can use to bind. We also keep the bindable information synchronized, so your applications can dynamically reconnect to their required services without any intervention or interruption.
          ### Integration with Knative (OpenShift Serverless)
          Deploy your serverless applications using a single toggle. The operator will convert all of its generated resources into [Knative](https://knative.dev) resources, allowing the application to automatically scale to 0 when it is idle.
          ### Custom RBAC
          This Operator is capable of using a custom Kubernetes service account from the caller, allowing it to follow RBAC restrictions. By default, it creates a service account if one is not specified, which can also be bound with specific roles.
          ### Environment Configuration
          You can configure a variety of artifacts with your deployment, such as labels, annotations, and environment variables from a ConfigMap, a Secret, or a value.
          ### Routing
          Expose your application to external users via a single toggle to create a Route on OpenShift or an Ingress on other Kubernetes environments. Advanced configurations, such as for TLS, are also easily enabled. Renewed certificates are automatically made available to the Liberty server.
          ### High Availability via Horizontal Pod Autoscaling
          Run multiple instances of your application for high availability. Either specify a static number of replicas or easily configure horizontal auto-scaling to create (and delete) instances based on resource consumption.
          ### Persistence and advanced storage
          Enable persistence for your application by specifying simple requirements: just tell us the size of the storage and where you would like it to be mounted and we will create and manage that storage for you. This toggles a StatefulSet resource instead of a Deployment resource, so your container can recover transactions and state upon a pod restart. We offer an advanced mode where you can specify a built-in PersistentVolumeClaim, allowing you to configure many details of the persistent volume, such as its storage class and access mode. You can also easily configure and use single storage for serviceability-related day-2 operations, such as gathering server traces and dumps.
          ### Integration with OpenShift's Topology UI
          We set the corresponding labels to support OpenShift's Developer Topology UI, which allows you to visualize your entire set of deployments and services and how they are connected.
        displayName: Open Liberty
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Open Liberty
        - MicroProfile
        - Jakarta EE
        - Java
        - Application Server
        - Application Runtime
        - Runtime
        - Spring
        - Application
        - Open Source
        - OpenLiberty
        - OLO
        links:
        - name: Documentation
          url: https://ibm.biz/olo-docs
        - name: Open Liberty
          url: https://openliberty.io
        - name: Open Liberty Container Images
          url: https://ibm.biz/ol-images
        maintainers:
        - email: support@ibm.com
          name: IBM Support
        maturity: stable
        provider:
          name: IBM
        relatedImages:
        - icr.io/appcafe/open-liberty-operator@sha256:f7df04f70c2eb6d93610cea7efe7c351169ccb92cd9a4644fbed3a1d00ec6cfc
        - icr.io/appcafe/open-liberty/samples/getting-started@sha256:80a28b6a71ec02369cc13f621e4c3cca0d63b1977be76e15dabbfba48411107f
        - registry.connect.redhat.com/ibm/open-liberty-operator-bundle@sha256:42ff7b444c7dddd77f54483e5b6e0144e4eaea054ae79913567817f389df24b5
        version: 1.5.2
      entries:
      - name: open-liberty-operator.v1.5.2
        version: 1.5.2
      name: v1.5
    defaultChannel: v1.5
    packageName: open-liberty-certified
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Opstree Solutions
      provider-url: ""
    name: mongodb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mongodb-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"opstreelabs.in/v1alpha1","kind":"MongoDB","metadata":{"name":"mongodb"},"spec":{"kubernetesConfig":{"image":"quay.io/opstree/mongo:v5.0.6","imagePullPolicy":"IfNotPresent","securityContext":{"fsGroup":1001}},"storage":{"accessModes":["ReadWriteOnce"],"storageSize":"1Gi","storageClass":"gp2"},"mongoDBSecurity":{"mongoDBAdminUser":"admin","secretRef":{"name":"mongodb-secret","key":"password"}}}},{"apiVersion":"opstreelabs.in/v1alpha1","kind":"MongoDBCluster","metadata":{"name":"mongodb"},"spec":{"clusterSize":3,"kubernetesConfig":{"image":"quay.io/opstree/mongo:v5.0.6","imagePullPolicy":"IfNotPresent","securityContext":{"fsGroup":1001}},"storage":{"accessModes":["ReadWriteOnce"],"storageSize":"1Gi","storageClass":"gp2"},"mongoDBSecurity":{"mongoDBAdminUser":"admin","secretRef":{"name":"mongodb-secret","key":"password"}}}}]'
          capabilities: Seamless Upgrades
          categories: Database,  OpenShift Optional, Storage
          certified: "false"
          containerImage: quay.io/opstree/mongodb-operator:v0.3.0
          createdAt: 05-04-2022
          description: A golang based operator to create and manage MongoDB standalone
            setup and cluster setup
          k8sMaxVersion: ""
          k8sMinVersion: 1.17.0
          repository: https://github.com/ot-container-kit/mongodb-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Mongo DB Cluster
            displayName: MongoDBCluster
            kind: MongoDBCluster
            name: mongodbclusters.opstreelabs.in
            version: v1alpha1
          - description: Mongo DB
            displayName: MongoDB
            kind: MongoDB
            name: mongodbs.opstreelabs.in
            version: v1alpha1
        description: |+
          MongoDB Operator is an operator created in Golang to create, update, and manage MongoDB standalone, replicated, and arbiter replicated setup on Kubernetes and Openshift clusters. This operator is capable of doing the setup for MongoDB with all the required best practices.

          ### Supported Features

          * MongoDB replicated cluster setup
          * MongoDB standalone setup
          * MongoDB replicated cluster failover and recovery
          * Monitoring support with MongoDB Exporter
          * Password based authentication for MongoDB
          * Kubernetes's resources for MongoDB standalone and cluster
          * Customizable configuration changes in MongoDB
          * Insightful Grafana dashboards

          ### Documentation

          **[Documentation](https://ot-mongodb-operator.netlify.app/)**
          ### Getting Help

          This project is managed by OpsTree Solutions. If you have any queries or suggestions, mail us at opensource@opstree.com.
          ### Contributing
          You can contribute to this project by:-

          * Raising Bugs and Feature Requests
          * Fixing issue by opening a Pull Request
          * Improving Documentation

          ### License

          MongoDB  Operator is licensed under [Apache License, Version 2.0](https://github.com/OT-CONTAINER-KIT/mongodb-operator/blob/master/LICENSE)


        displayName: MongoDB Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Database
        - MongoDB
        - Opstree
        - Operatork
        - Cloud Native
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://ot-mongodb-operator.netlify.app/
        - name: Buildpiper
          url: https://buildpiper.io
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep Rawat
        maturity: alpha
        minKubeVersion: 1.17.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/openshift-community-operators/mongodb-operator@sha256:1c06d3e936348ceeed773eb45144c9dd702e50ba293610421a93e3b3942ac9ef
        - quay.io/opstree/mongodb-operator:v0.3.0
        version: 0.3.0
      entries:
      - name: mongodb-operator.v0.3.0
        version: 0.3.0
      name: alpha
    defaultChannel: alpha
    packageName: mongodb-operator
    provider:
      name: Opstree Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: TrendMicro
      provider-url: trendmicro.com
    name: visionone-containersecurity
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: visionone-containersecurity.v0.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "container-security.trendmicro.com/v1alpha1",
                "kind": "VisionOneContainerSecurity",
                "metadata": {
                  "name": "sample",
                  "namespace": "trendmicro-system"
                },
                "spec": {
                  "visionOne": {
                    "bootstrapToken": "",
                    "clusterRegistrationKey": false,
                    "endpoint": "https://api.xdr.trendmicro.com/external/v2/direct/vcs/external/vcs",
                    "exclusion": {
                      "namespaces": [
                        "kube-system",
                        "openshift",
                        "openshift-apiserver",
                        "openshift-apiserver-operator",
                        "openshift-aqua",
                        "openshift-authentication",
                        "openshift-authentication-operator",
                        "openshift-backplane",
                        "openshift-backplane-cee",
                        "openshift-backplane-srep",
                        "openshift-build-test",
                        "openshift-cloud-credential-operator",
                        "openshift-cloud-ingress-operator",
                        "openshift-cluster-csi-drivers",
                        "openshift-cluster-machine-approver",
                        "openshift-cluster-node-tuning-operator",
                        "openshift-cluster-samples-operator",
                        "openshift-cluster-storage-operator",
                        "openshift-cluster-version",
                        "openshift-codeready-workspaces",
                        "openshift-config",
                        "openshift-config-managed",
                        "openshift-config-operator",
                        "openshift-console",
                        "openshift-console-operator",
                        "openshift-console-user-settings",
                        "openshift-controller-manager",
                        "openshift-controller-manager-operator",
                        "openshift-custom-domains-operator",
                        "openshift-customer-monitoring",
                        "openshift-dns",
                        "openshift-dns-operator",
                        "openshift-etcd",
                        "openshift-etcd-operator",
                        "openshift-host-network",
                        "openshift-image-registry",
                        "openshift-infra",
                        "openshift-ingress",
                        "openshift-ingress-canary",
                        "openshift-ingress-operator",
                        "openshift-insights",
                        "openshift-kni-infra",
                        "openshift-kube-apiserver",
                        "openshift-kube-apiserver-operator",
                        "openshift-kube-controller-manager",
                        "openshift-kube-controller-manager-operator",
                        "openshift-kube-scheduler",
                        "openshift-kube-scheduler-operator",
                        "openshift-kube-storage-version-migrator",
                        "openshift-kube-storage-version-migrator-operator",
                        "openshift-kubevirt-infra",
                        "openshift-logging",
                        "openshift-machine-api",
                        "openshift-machine-config-operator",
                        "openshift-managed-upgrade-operator",
                        "openshift-marketplace",
                        "openshift-monitoring",
                        "openshift-multus",
                        "openshift-must-gather-operator",
                        "openshift-network-diagnostics",
                        "openshift-network-operator",
                        "openshift-node",
                        "openshift-oauth-apiserver",
                        "openshift-openstack-infra",
                        "openshift-operator-lifecycle-manager",
                        "openshift-operators",
                        "openshift-operators-redhat",
                        "openshift-osd-metrics",
                        "openshift-ovirt-infra",
                        "openshift-rbac-permissions",
                        "openshift-route-monitor-operator",
                        "openshift-sdn",
                        "openshift-security",
                        "openshift-service-ca",
                        "openshift-service-ca-operator",
                        "openshift-splunk-forwarder-operator",
                        "openshift-sre-pruning",
                        "openshift-sre-sshd",
                        "openshift-strimzi",
                        "openshift-user-workload-monitoring",
                        "openshift-validation-webhook",
                        "openshift-velero",
                        "openshift-vsphere-infra",
                        "openshift-addon-operator",
                        "openshift-backplane-managed-scripts",
                        "openshift-cloud-controller-manager-operator",
                        "openshift-cloud-network-config-controller",
                        "openshift-deployment-validation-operator",
                        "openshift-managed-node-metadata-operator",
                        "openshift-ocm-agent-operator",
                        "openshift-ovn-kubernetes",
                        "openshift-azure-operator",
                        "openshift-azure-loggi",
                        "openshift-cloud-controller-manager",
                        "openshift-nutanix-infra",
                        "openshift-route-controller-manager",
                        "dedicated-admin",
                        "default",
                        "openshift-aws-vpce-operator",
                        "openshift-backplane-csa",
                        "openshift-backplane-cse",
                        "openshift-backplane-csm",
                        "openshift-backplane-mobb",
                        "openshift-backplane-tam",
                        "openshift-cluster-api",
                        "openshift-compliance",
                        "openshift-compliance-monkey",
                        "openshift-container-security",
                        "openshift-file-integrity",
                        "openshift-observability-operator",
                        "openshift-platform-operators",
                        "openshift-scanning",
                        "openshift-suricata"
                      ]
                    },
                    "inventoryCollection": {
                      "enabled": true
                    },
                    "malwareScanning": {
                      "enabled": true
                    },
                    "runtimeSecurity": {
                      "enabled": true
                    },
                    "secretScanning": {
                      "enabled": true
                    },
                    "vulnerabilityScanning": {
                      "enabled": true
                    }
                  }
                }
              },
              {
                "apiVersion": "container-security.trendmicro.com/v1alpha1",
                "kind": "VisionOneContainerSecurity",
                "metadata": {
                  "name": "visionone-containersecurity-sample",
                  "namespace": "trendmicro-system"
                },
                "spec": {
                  "visionOne": {
                    "bootstrapToken": "",
                    "clusterRegistrationKey": false,
                    "endpoint": "https://api.xdr.trendmicro.com/external/v2/direct/vcs/external/vcs",
                    "exclusion": {
                      "namespaces": [
                        "kube-system",
                        "openshift",
                        "openshift-apiserver",
                        "openshift-apiserver-operator",
                        "openshift-aqua",
                        "openshift-authentication",
                        "openshift-authentication-operator",
                        "openshift-backplane",
                        "openshift-backplane-cee",
                        "openshift-backplane-srep",
                        "openshift-build-test",
                        "openshift-cloud-credential-operator",
                        "openshift-cloud-ingress-operator",
                        "openshift-cluster-csi-drivers",
                        "openshift-cluster-machine-approver",
                        "openshift-cluster-node-tuning-operator",
                        "openshift-cluster-samples-operator",
                        "openshift-cluster-storage-operator",
                        "openshift-cluster-version",
                        "openshift-codeready-workspaces",
                        "openshift-config",
                        "openshift-config-managed",
                        "openshift-config-operator",
                        "openshift-console",
                        "openshift-console-operator",
                        "openshift-console-user-settings",
                        "openshift-controller-manager",
                        "openshift-controller-manager-operator",
                        "openshift-custom-domains-operator",
                        "openshift-customer-monitoring",
                        "openshift-dns",
                        "openshift-dns-operator",
                        "openshift-etcd",
                        "openshift-etcd-operator",
                        "openshift-host-network",
                        "openshift-image-registry",
                        "openshift-infra",
                        "openshift-ingress",
                        "openshift-ingress-canary",
                        "openshift-ingress-operator",
                        "openshift-insights",
                        "openshift-kni-infra",
                        "openshift-kube-apiserver",
                        "openshift-kube-apiserver-operator",
                        "openshift-kube-controller-manager",
                        "openshift-kube-controller-manager-operator",
                        "openshift-kube-scheduler",
                        "openshift-kube-scheduler-operator",
                        "openshift-kube-storage-version-migrator",
                        "openshift-kube-storage-version-migrator-operator",
                        "openshift-kubevirt-infra",
                        "openshift-logging",
                        "openshift-machine-api",
                        "openshift-machine-config-operator",
                        "openshift-managed-upgrade-operator",
                        "openshift-marketplace",
                        "openshift-monitoring",
                        "openshift-multus",
                        "openshift-must-gather-operator",
                        "openshift-network-diagnostics",
                        "openshift-network-operator",
                        "openshift-node",
                        "openshift-oauth-apiserver",
                        "openshift-openstack-infra",
                        "openshift-operator-lifecycle-manager",
                        "openshift-operators",
                        "openshift-operators-redhat",
                        "openshift-osd-metrics",
                        "openshift-ovirt-infra",
                        "openshift-rbac-permissions",
                        "openshift-route-monitor-operator",
                        "openshift-sdn",
                        "openshift-security",
                        "openshift-service-ca",
                        "openshift-service-ca-operator",
                        "openshift-splunk-forwarder-operator",
                        "openshift-sre-pruning",
                        "openshift-sre-sshd",
                        "openshift-strimzi",
                        "openshift-user-workload-monitoring",
                        "openshift-validation-webhook",
                        "openshift-velero",
                        "openshift-vsphere-infra",
                        "openshift-addon-operator",
                        "openshift-backplane-managed-scripts",
                        "openshift-cloud-controller-manager-operator",
                        "openshift-cloud-network-config-controller",
                        "openshift-deployment-validation-operator",
                        "openshift-managed-node-metadata-operator",
                        "openshift-ocm-agent-operator",
                        "openshift-ovn-kubernetes",
                        "openshift-azure-operator",
                        "openshift-azure-loggi",
                        "openshift-cloud-controller-manager",
                        "openshift-nutanix-infra",
                        "openshift-route-controller-manager",
                        "dedicated-admin",
                        "default",
                        "openshift-aws-vpce-operator",
                        "openshift-backplane-csa",
                        "openshift-backplane-cse",
                        "openshift-backplane-csm",
                        "openshift-backplane-mobb",
                        "openshift-backplane-tam",
                        "openshift-cluster-api",
                        "openshift-compliance",
                        "openshift-compliance-monkey",
                        "openshift-container-security",
                        "openshift-file-integrity",
                        "openshift-observability-operator",
                        "openshift-platform-operators",
                        "openshift-scanning",
                        "openshift-suricata"
                      ]
                    },
                    "inventoryCollection": {
                      "enabled": true
                    },
                    "malwareScanning": {
                      "enabled": true
                    },
                    "runtimeSecurity": {
                      "enabled": true
                    },
                    "secretScanning": {
                      "enabled": true
                    },
                    "vulnerabilityScanning": {
                      "enabled": true
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          com.redhat.openshift.versions: v4.12-v4.20
          containerImage: public.ecr.aws/trendmicro/container-security/visionone-containersecurity-operator:v0.0.5
          createdAt: "2025-12-16T17:00:49Z"
          description: Trend Vision One™ Container Security delivers full lifecycle
            protection for containers with real-time threat detection, policy enforcement,
            compliance assurance, and rapid incident response.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: trendmicro-system
          operatorhub.io/ui-metadata-max-k8s-version: "1.26"
          operators.openshift.io/valid-subscription: VisionOneContainerSecurity Subscription
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trendmicro/visionone-container-security-helm
          support: TrendMicro Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trend Vision One™ Container Security delivers full lifecycle
              protection for containers with real-time threat detection, policy enforcement,
              compliance assurance, and rapid incident response.
            displayName: VisionOneContainerSecurity
            kind: VisionOneContainerSecurity
            name: visiononecontainersecurities.container-security.trendmicro.com
            version: v1alpha1
        description: "[Trend Vision One™ Container Security](https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-container-security)
          delivers comprehensive, end-to-end\n protection for containerized workloads
          across OpenShift and Kubernetes environments.\n It continuously monitors
          for threats, vulnerabilities, policy violations, and\n exposed secrets ensuring
          compliance and enabling rapid, automated response. Purpose-built\n for hybrid
          cloud, it instantly isolates compromised containers to prevent lateral\n
          movement and minimize impact. Seamlessly integrating into OpenShift DevSecOps\n
          pipelines, it empowers security teams to enforce policies while enabling
          developers\n to innovate and deploy with confidence without disrupting workflows
          or compromising\n agility.\n\n **Installation**\n \n - Use the recommended
          `trendmicro-system` namespace.\n - Refer to the [Trend Vision One™ Documentation](https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-red-hat-openshift-operator)
          for registration and installation steps.\n"
        displayName: Trend Vision One™ Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trendmicro
        - visionone
        - container-security
        links:
        - name: Documentation
          url: https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-red-hat-openshift-operator
        maintainers:
        - email: support@trendmicro.com
          name: TrendMicro VisionOne Support Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: TrendMicro
          url: trendmicro.com
        relatedImages:
        - public.ecr.aws/trendmicro/container-security/visionone-containersecurity-operator:v0.0.5
        - quay.io/community-operator-pipeline-prod/visionone-containersecurity:0.0.5
        version: 0.0.5
      entries:
      - name: visionone-containersecurity.v0.0.5
        version: 0.0.5
      - name: visionone-containersecurity.v0.0.4
        version: 0.0.4
      - name: visionone-containersecurity.v0.0.3
        version: 0.0.3
      - name: visionone-containersecurity.v0.0.2
        version: 0.0.2
      - name: visionone-containersecurity.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: visionone-containersecurity.v0.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "container-security.trendmicro.com/v1alpha1",
                "kind": "VisionOneContainerSecurity",
                "metadata": {
                  "name": "sample",
                  "namespace": "trendmicro-system"
                },
                "spec": {
                  "visionOne": {
                    "bootstrapToken": "",
                    "clusterRegistrationKey": false,
                    "endpoint": "https://api.xdr.trendmicro.com/external/v2/direct/vcs/external/vcs",
                    "exclusion": {
                      "namespaces": [
                        "kube-system",
                        "openshift",
                        "openshift-apiserver",
                        "openshift-apiserver-operator",
                        "openshift-aqua",
                        "openshift-authentication",
                        "openshift-authentication-operator",
                        "openshift-backplane",
                        "openshift-backplane-cee",
                        "openshift-backplane-srep",
                        "openshift-build-test",
                        "openshift-cloud-credential-operator",
                        "openshift-cloud-ingress-operator",
                        "openshift-cluster-csi-drivers",
                        "openshift-cluster-machine-approver",
                        "openshift-cluster-node-tuning-operator",
                        "openshift-cluster-samples-operator",
                        "openshift-cluster-storage-operator",
                        "openshift-cluster-version",
                        "openshift-codeready-workspaces",
                        "openshift-config",
                        "openshift-config-managed",
                        "openshift-config-operator",
                        "openshift-console",
                        "openshift-console-operator",
                        "openshift-console-user-settings",
                        "openshift-controller-manager",
                        "openshift-controller-manager-operator",
                        "openshift-custom-domains-operator",
                        "openshift-customer-monitoring",
                        "openshift-dns",
                        "openshift-dns-operator",
                        "openshift-etcd",
                        "openshift-etcd-operator",
                        "openshift-host-network",
                        "openshift-image-registry",
                        "openshift-infra",
                        "openshift-ingress",
                        "openshift-ingress-canary",
                        "openshift-ingress-operator",
                        "openshift-insights",
                        "openshift-kni-infra",
                        "openshift-kube-apiserver",
                        "openshift-kube-apiserver-operator",
                        "openshift-kube-controller-manager",
                        "openshift-kube-controller-manager-operator",
                        "openshift-kube-scheduler",
                        "openshift-kube-scheduler-operator",
                        "openshift-kube-storage-version-migrator",
                        "openshift-kube-storage-version-migrator-operator",
                        "openshift-kubevirt-infra",
                        "openshift-logging",
                        "openshift-machine-api",
                        "openshift-machine-config-operator",
                        "openshift-managed-upgrade-operator",
                        "openshift-marketplace",
                        "openshift-monitoring",
                        "openshift-multus",
                        "openshift-must-gather-operator",
                        "openshift-network-diagnostics",
                        "openshift-network-operator",
                        "openshift-node",
                        "openshift-oauth-apiserver",
                        "openshift-openstack-infra",
                        "openshift-operator-lifecycle-manager",
                        "openshift-operators",
                        "openshift-operators-redhat",
                        "openshift-osd-metrics",
                        "openshift-ovirt-infra",
                        "openshift-rbac-permissions",
                        "openshift-route-monitor-operator",
                        "openshift-sdn",
                        "openshift-security",
                        "openshift-service-ca",
                        "openshift-service-ca-operator",
                        "openshift-splunk-forwarder-operator",
                        "openshift-sre-pruning",
                        "openshift-sre-sshd",
                        "openshift-strimzi",
                        "openshift-user-workload-monitoring",
                        "openshift-validation-webhook",
                        "openshift-velero",
                        "openshift-vsphere-infra",
                        "openshift-addon-operator",
                        "openshift-backplane-managed-scripts",
                        "openshift-cloud-controller-manager-operator",
                        "openshift-cloud-network-config-controller",
                        "openshift-deployment-validation-operator",
                        "openshift-managed-node-metadata-operator",
                        "openshift-ocm-agent-operator",
                        "openshift-ovn-kubernetes",
                        "openshift-azure-operator",
                        "openshift-azure-loggi",
                        "openshift-cloud-controller-manager",
                        "openshift-nutanix-infra",
                        "openshift-route-controller-manager",
                        "dedicated-admin",
                        "default",
                        "openshift-aws-vpce-operator",
                        "openshift-backplane-csa",
                        "openshift-backplane-cse",
                        "openshift-backplane-csm",
                        "openshift-backplane-mobb",
                        "openshift-backplane-tam",
                        "openshift-cluster-api",
                        "openshift-compliance",
                        "openshift-compliance-monkey",
                        "openshift-container-security",
                        "openshift-file-integrity",
                        "openshift-observability-operator",
                        "openshift-platform-operators",
                        "openshift-scanning",
                        "openshift-suricata"
                      ]
                    },
                    "inventoryCollection": {
                      "enabled": true
                    },
                    "malwareScanning": {
                      "enabled": true
                    },
                    "runtimeSecurity": {
                      "enabled": true
                    },
                    "secretScanning": {
                      "enabled": true
                    },
                    "vulnerabilityScanning": {
                      "enabled": true
                    }
                  }
                }
              },
              {
                "apiVersion": "container-security.trendmicro.com/v1alpha1",
                "kind": "VisionOneContainerSecurity",
                "metadata": {
                  "name": "visionone-containersecurity-sample",
                  "namespace": "trendmicro-system"
                },
                "spec": {
                  "visionOne": {
                    "bootstrapToken": "",
                    "clusterRegistrationKey": false,
                    "endpoint": "https://api.xdr.trendmicro.com/external/v2/direct/vcs/external/vcs",
                    "exclusion": {
                      "namespaces": [
                        "kube-system",
                        "openshift",
                        "openshift-apiserver",
                        "openshift-apiserver-operator",
                        "openshift-aqua",
                        "openshift-authentication",
                        "openshift-authentication-operator",
                        "openshift-backplane",
                        "openshift-backplane-cee",
                        "openshift-backplane-srep",
                        "openshift-build-test",
                        "openshift-cloud-credential-operator",
                        "openshift-cloud-ingress-operator",
                        "openshift-cluster-csi-drivers",
                        "openshift-cluster-machine-approver",
                        "openshift-cluster-node-tuning-operator",
                        "openshift-cluster-samples-operator",
                        "openshift-cluster-storage-operator",
                        "openshift-cluster-version",
                        "openshift-codeready-workspaces",
                        "openshift-config",
                        "openshift-config-managed",
                        "openshift-config-operator",
                        "openshift-console",
                        "openshift-console-operator",
                        "openshift-console-user-settings",
                        "openshift-controller-manager",
                        "openshift-controller-manager-operator",
                        "openshift-custom-domains-operator",
                        "openshift-customer-monitoring",
                        "openshift-dns",
                        "openshift-dns-operator",
                        "openshift-etcd",
                        "openshift-etcd-operator",
                        "openshift-host-network",
                        "openshift-image-registry",
                        "openshift-infra",
                        "openshift-ingress",
                        "openshift-ingress-canary",
                        "openshift-ingress-operator",
                        "openshift-insights",
                        "openshift-kni-infra",
                        "openshift-kube-apiserver",
                        "openshift-kube-apiserver-operator",
                        "openshift-kube-controller-manager",
                        "openshift-kube-controller-manager-operator",
                        "openshift-kube-scheduler",
                        "openshift-kube-scheduler-operator",
                        "openshift-kube-storage-version-migrator",
                        "openshift-kube-storage-version-migrator-operator",
                        "openshift-kubevirt-infra",
                        "openshift-logging",
                        "openshift-machine-api",
                        "openshift-machine-config-operator",
                        "openshift-managed-upgrade-operator",
                        "openshift-marketplace",
                        "openshift-monitoring",
                        "openshift-multus",
                        "openshift-must-gather-operator",
                        "openshift-network-diagnostics",
                        "openshift-network-operator",
                        "openshift-node",
                        "openshift-oauth-apiserver",
                        "openshift-openstack-infra",
                        "openshift-operator-lifecycle-manager",
                        "openshift-operators",
                        "openshift-operators-redhat",
                        "openshift-osd-metrics",
                        "openshift-ovirt-infra",
                        "openshift-rbac-permissions",
                        "openshift-route-monitor-operator",
                        "openshift-sdn",
                        "openshift-security",
                        "openshift-service-ca",
                        "openshift-service-ca-operator",
                        "openshift-splunk-forwarder-operator",
                        "openshift-sre-pruning",
                        "openshift-sre-sshd",
                        "openshift-strimzi",
                        "openshift-user-workload-monitoring",
                        "openshift-validation-webhook",
                        "openshift-velero",
                        "openshift-vsphere-infra",
                        "openshift-addon-operator",
                        "openshift-backplane-managed-scripts",
                        "openshift-cloud-controller-manager-operator",
                        "openshift-cloud-network-config-controller",
                        "openshift-deployment-validation-operator",
                        "openshift-managed-node-metadata-operator",
                        "openshift-ocm-agent-operator",
                        "openshift-ovn-kubernetes",
                        "openshift-azure-operator",
                        "openshift-azure-loggi",
                        "openshift-cloud-controller-manager",
                        "openshift-nutanix-infra",
                        "openshift-route-controller-manager",
                        "dedicated-admin",
                        "default",
                        "openshift-aws-vpce-operator",
                        "openshift-backplane-csa",
                        "openshift-backplane-cse",
                        "openshift-backplane-csm",
                        "openshift-backplane-mobb",
                        "openshift-backplane-tam",
                        "openshift-cluster-api",
                        "openshift-compliance",
                        "openshift-compliance-monkey",
                        "openshift-container-security",
                        "openshift-file-integrity",
                        "openshift-observability-operator",
                        "openshift-platform-operators",
                        "openshift-scanning",
                        "openshift-suricata"
                      ]
                    },
                    "inventoryCollection": {
                      "enabled": true
                    },
                    "malwareScanning": {
                      "enabled": true
                    },
                    "runtimeSecurity": {
                      "enabled": true
                    },
                    "secretScanning": {
                      "enabled": true
                    },
                    "vulnerabilityScanning": {
                      "enabled": true
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          com.redhat.openshift.versions: v4.12-v4.20
          containerImage: public.ecr.aws/trendmicro/container-security/visionone-containersecurity-operator:v0.0.5
          createdAt: "2025-12-16T17:00:49Z"
          description: Trend Vision One™ Container Security delivers full lifecycle
            protection for containers with real-time threat detection, policy enforcement,
            compliance assurance, and rapid incident response.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operatorframework.io/suggested-namespace: trendmicro-system
          operatorhub.io/ui-metadata-max-k8s-version: "1.26"
          operators.openshift.io/valid-subscription: VisionOneContainerSecurity Subscription
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/trendmicro/visionone-container-security-helm
          support: TrendMicro Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Trend Vision One™ Container Security delivers full lifecycle
              protection for containers with real-time threat detection, policy enforcement,
              compliance assurance, and rapid incident response.
            displayName: VisionOneContainerSecurity
            kind: VisionOneContainerSecurity
            name: visiononecontainersecurities.container-security.trendmicro.com
            version: v1alpha1
        description: "[Trend Vision One™ Container Security](https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-container-security)
          delivers comprehensive, end-to-end\n protection for containerized workloads
          across OpenShift and Kubernetes environments.\n It continuously monitors
          for threats, vulnerabilities, policy violations, and\n exposed secrets ensuring
          compliance and enabling rapid, automated response. Purpose-built\n for hybrid
          cloud, it instantly isolates compromised containers to prevent lateral\n
          movement and minimize impact. Seamlessly integrating into OpenShift DevSecOps\n
          pipelines, it empowers security teams to enforce policies while enabling
          developers\n to innovate and deploy with confidence without disrupting workflows
          or compromising\n agility.\n\n **Installation**\n \n - Use the recommended
          `trendmicro-system` namespace.\n - Refer to the [Trend Vision One™ Documentation](https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-red-hat-openshift-operator)
          for registration and installation steps.\n"
        displayName: Trend Vision One™ Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trendmicro
        - visionone
        - container-security
        links:
        - name: Documentation
          url: https://docs.trendmicro.com/en-us/documentation/article/trend-vision-one-red-hat-openshift-operator
        maintainers:
        - email: support@trendmicro.com
          name: TrendMicro VisionOne Support Team
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: TrendMicro
          url: trendmicro.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/visionone-containersecurity:0.0.5
        - public.ecr.aws/trendmicro/container-security/visionone-containersecurity-operator:v0.0.5
        version: 0.0.5
      entries:
      - name: visionone-containersecurity.v0.0.5
        version: 0.0.5
      - name: visionone-containersecurity.v0.0.4
        version: 0.0.4
      - name: visionone-containersecurity.v0.0.3
        version: 0.0.3
      - name: visionone-containersecurity.v0.0.2
        version: 0.0.2
      name: stable
    defaultChannel: stable
    packageName: visionone-containersecurity
    provider:
      name: TrendMicro
      url: trendmicro.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: logic-operator-rhel8
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: logic-operator-rhel8.v1.36.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlow",
                "metadata": {
                  "annotations": {
                    "sonataflow.org/description": "Greeting example on k8s!",
                    "sonataflow.org/version": "0.0.1"
                  },
                  "name": "greeting"
                },
                "spec": {
                  "flow": {
                    "functions": [
                      {
                        "name": "greetFunction",
                        "operation": "sysout",
                        "type": "custom"
                      }
                    ],
                    "start": "ChooseOnLanguage",
                    "states": [
                      {
                        "dataConditions": [
                          {
                            "condition": "${ .language == \"English\" }",
                            "transition": "GreetInEnglish"
                          },
                          {
                            "condition": "${ .language == \"Spanish\" }",
                            "transition": "GreetInSpanish"
                          }
                        ],
                        "defaultCondition": "GreetInEnglish",
                        "name": "ChooseOnLanguage",
                        "type": "switch"
                      },
                      {
                        "data": {
                          "greeting": "Hello from JSON Workflow, "
                        },
                        "name": "GreetInEnglish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "data": {
                          "greeting": "Saludos desde JSON Workflow, "
                        },
                        "name": "GreetInSpanish",
                        "transition": "GreetPerson",
                        "type": "inject"
                      },
                      {
                        "actions": [
                          {
                            "functionRef": {
                              "arguments": {
                                "message": ".greeting+.name"
                              },
                              "refName": "greetFunction"
                            },
                            "name": "greetAction"
                          }
                        ],
                        "end": true,
                        "name": "GreetPerson",
                        "type": "operation"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowBuild",
                "metadata": {
                  "name": "greeting"
                },
                "spec": {
                  "timeout": "360s"
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowClusterPlatform",
                "metadata": {
                  "name": "sonataflow-clusterplatform"
                },
                "spec": {
                  "platformRef": {
                    "name": "sonataflow-platform",
                    "namespace": "sonataflow-operator-system"
                  }
                }
              },
              {
                "apiVersion": "sonataflow.org/v1alpha08",
                "kind": "SonataFlowPlatform",
                "metadata": {
                  "name": "sonataflow-platform"
                },
                "spec": {
                  "build": {
                    "config": {
                      "registry": {
                        "address": "host/namespace",
                        "secret": "regcred"
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          certified: "false"
          createdAt: "2025-05-26T14:10:15Z"
          description: OpenShift Serverless Logic Kubernetes Operator for deploying
            workflow applications based on the CNCF Serverless Workflow specification
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: openshift-serverless-logic
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/kubesmarts/kie-tools
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SonataFlowBuild is an internal custom resource to control
              workflow build instances in the target platform
            displayName: Sonata Flow Build
            kind: SonataFlowBuild
            name: sonataflowbuilds.sonataflow.org
            version: v1alpha08
          - description: SonataFlowClusterPlatform is the Schema for the sonataflowclusterplatforms
              API
            displayName: Sonata Flow Cluster Platform
            kind: SonataFlowClusterPlatform
            name: sonataflowclusterplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlowPlatform is the descriptor for the workflow platform
              infrastructure.
            displayName: Sonata Flow Platform
            kind: SonataFlowPlatform
            name: sonataflowplatforms.sonataflow.org
            version: v1alpha08
          - description: SonataFlow is the descriptor representation for a workflow
              application based on the CNCF Serverless Workflow specification.
            displayName: Sonata Flow
            kind: SonataFlow
            name: sonataflows.sonataflow.org
            version: v1alpha08
        description: |-
          OpenShift Serverless Logic Kubernetes Operator for deploying workflow applications
          based on the [CNCF Serverless Workflow specification v0.8](https://serverlessworkflow.io/).
        displayName: OpenShift Serverless Logic Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sonataflow
        - cncf
        - serverless
        - serverlessworkflow
        - workflows
        links:
        - name: Documentation
          url: https://docs.openshift.com/serverless/
        - name: Source Repository
          url: https://github.com/kiegroup/kogito-serverless-operator/
        maintainers:
        - email: serverless-logic-team@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4564ca3dc5bac80d6faddaf94c817fbbc270698a9399d8a21ee1005d85ceda56
        - registry.redhat.io/openshift-serverless-1/logic-operator-bundle@sha256:5fff2717f7b08df2c90a2be7bfb36c27e13be188d23546497ed9ce266f1c03f4
        - registry.redhat.io/openshift-serverless-1/logic-rhel8-operator@sha256:8d3682448ebdac3aeabb2d23842b7e67a252b95f959c408af805037f9728fd3c
        version: 1.36.0
      entries:
      - name: logic-operator-rhel8.v1.36.0
        version: 1.36.0
      - name: logic-operator-rhel8.v1.35.0
        version: 1.35.0
      - name: logic-operator-rhel8.v1.34.0
        version: 1.34.0
      - name: logic-operator-rhel8.v1.33.0
        version: 1.33.0
      name: alpha
    defaultChannel: alpha
    packageName: logic-operator-rhel8
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: numaresources-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: numaresources-operator.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nodetopology.openshift.io/v1alpha1",
                "kind": "NUMAResourcesOperator",
                "metadata": {
                  "name": "numaresourcesoperator"
                },
                "spec": {
                  "nodeGroups": [
                    {
                      "machineConfigPoolSelector": {
                        "matchLabels": {
                          "pools.operator.machineconfiguration.openshift.io/worker": ""
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "nodetopology.openshift.io/v1alpha1",
                "kind": "NUMAResourcesScheduler",
                "metadata": {
                  "name": "numaresourcesscheduler"
                },
                "spec": {
                  "imageSpec": "URL_OF_SCHEDULER_IMAGE_FROM_REDHAT_REGISTRY",
                  "logLevel": "Normal",
                  "schedulerName": "topo-aware-scheduler"
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-08-08T10:00:51Z"
          features.operators.openshift.io/cnf: "true"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.19.0 <4.20.0'
          operatorframework.io/cluster-monitoring: "true"
          operators.openshift.io/valid-subscription: |-
            [
              "OpenShift Kubernetes Engine",
              "OpenShift Container Platform",
              "OpenShift Platform Plus"
            ]
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NUMAResourcesOperator is the Schema for the numaresourcesoperators
              API
            displayName: NUMA Resources Operator
            kind: NUMAResourcesOperator
            name: numaresourcesoperators.nodetopology.openshift.io
            version: v1
          - description: NUMAResourcesOperator is the Schema for the numaresourcesoperators
              API
            displayName: NUMA Resources Operator
            kind: NUMAResourcesOperator
            name: numaresourcesoperators.nodetopology.openshift.io
            version: v1alpha1
          - description: NUMAResourcesScheduler is the Schema for the numaresourcesschedulers
              API
            displayName: NUMA Aware Scheduler
            kind: NUMAResourcesScheduler
            name: numaresourcesschedulers.nodetopology.openshift.io
            version: v1
          - description: NUMAResourcesScheduler is the Schema for the numaresourcesschedulers
              API
            displayName: NUMA Aware Scheduler
            kind: NUMAResourcesScheduler
            name: numaresourcesschedulers.nodetopology.openshift.io
            version: v1alpha1
        description: NUMA resources exporter operator
        displayName: numaresources-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - RTE
        - NUMA
        links:
        - name: Numaresources Operator
          url: https://github.com/openshift-kni/numaresources-operator
        maintainers:
        - email: fromani@redhat.com
          name: fromani
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/numaresources-operator-bundle@sha256:68958183a9e33d86ca9d4d1cb1d1915952a9e34b5e8823430aeb8acf2d3566c0
        - registry.redhat.io/openshift4/numaresources-rhel9-operator@sha256:4c5e69588adca9d3d0c62b25397190f23243ea2fb15fac8c862ce943197791cc
        version: 4.20.0
      entries:
      - name: numaresources-operator.v4.20.0
        version: 4.20.0
      name: "4.20"
    defaultChannel: "4.20"
    packageName: numaresources-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OpenTelemetry Community
      provider-url: ""
    name: opentelemetry-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: opentelemetry-operator.v0.141.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "Instrumentation",
                "metadata": {
                  "name": "instrumentation"
                },
                "spec": {
                  "exporter": {
                    "endpoint": "http://otel-collector-headless:4317"
                  }
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpAMPBridge",
                "metadata": {
                  "name": "opampbridge-sample"
                },
                "spec": {
                  "capabilities": {
                    "AcceptsOpAMPConnectionSettings": true,
                    "AcceptsOtherConnectionSettings": true,
                    "AcceptsRemoteConfig": true,
                    "AcceptsRestartCommand": true,
                    "ReportsEffectiveConfig": true,
                    "ReportsHealth": true,
                    "ReportsOwnLogs": true,
                    "ReportsOwnMetrics": true,
                    "ReportsOwnTraces": true,
                    "ReportsRemoteConfig": true,
                    "ReportsStatus": true
                  },
                  "componentsAllowed": {
                    "exporters": [
                      "debug"
                    ],
                    "processors": [
                      "memory_limiter"
                    ],
                    "receivers": [
                      "otlp"
                    ]
                  },
                  "endpoint": "ws://opamp-server:4320/v1/opamp"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1alpha1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": "receivers:\n  otlp:\n    protocols: \n      grpc: {}\n      http: {}\n\nexporters:\n  debug: {}\n\nservice:\n  pipelines:\n    traces:\n      receivers: [otlp]\n      exporters: [debug]\n"
                }
              },
              {
                "apiVersion": "opentelemetry.io/v1beta1",
                "kind": "OpenTelemetryCollector",
                "metadata": {
                  "name": "otel"
                },
                "spec": {
                  "config": {
                    "exporters": {
                      "debug": {}
                    },
                    "receivers": {
                      "otlp": {
                        "protocols": {
                          "grpc": {},
                          "http": {}
                        }
                      }
                    },
                    "service": {
                      "pipelines": {
                        "traces": {
                          "exporters": [
                            "debug"
                          ],
                          "receivers": [
                            "otlp"
                          ]
                        }
                      }
                    }
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Logging & Tracing,Monitoring
          certified: "false"
          containerImage: ghcr.io/open-telemetry/opentelemetry-operator/opentelemetry-operator
          createdAt: "2025-12-05T22:10:57Z"
          description: Provides the OpenTelemetry components, including the Collector
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/open-telemetry/opentelemetry-operator
          support: OpenTelemetry Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Instrumentation is the spec for OpenTelemetry instrumentation.
            displayName: OpenTelemetry Instrumentation
            kind: Instrumentation
            name: instrumentations.opentelemetry.io
            version: v1alpha1
          - description: OpAMPBridge is the Schema for the opampbridges API.
            displayName: OpAMP Bridge
            kind: OpAMPBridge
            name: opampbridges.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1alpha1
          - description: OpenTelemetryCollector is the Schema for the opentelemetrycollectors
              API.
            displayName: OpenTelemetry Collector
            kind: OpenTelemetryCollector
            name: opentelemetrycollectors.opentelemetry.io
            version: v1beta1
          - description: TargetAllocator is the Schema for the targetallocators API.
            displayName: Target Allocator
            kind: TargetAllocator
            name: targetallocators.opentelemetry.io
            version: v1alpha1
        description: |-
          OpenTelemetry is a collection of tools, APIs, and SDKs. You use it to instrument, generate, collect, and export telemetry data (metrics, logs, and traces) for analysis in order to understand your software's performance and behavior.

          ### Operator features

          * **Sidecar injection** - annotate your pods and let the operator inject a sidecar.
          * **Managed upgrades** - updating the operator will automatically update your OpenTelemetry collectors.
          * **Deployment modes** - your collector can be deployed as sidecar, daemon set, or regular deployment.
          * **Service port management** - the operator detects which ports need to be exposed based on the provided configuration.
        displayName: Community OpenTelemetry Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opentelemetry
        - tracing
        - logging
        - metrics
        - monitoring
        - troubleshooting
        links:
        - name: OpenTelemetry Operator
          url: https://github.com/open-telemetry/opentelemetry-operator
        maintainers:
        - email: jpkroehling@redhat.com
          name: Juraci Paixão Kröhling
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: OpenTelemetry Community
        relatedImages:
        - quay.io/brancz/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/opentelemetry-operator@sha256:66a8780dc96bb46056c9682a3608d2328e36832d2958763888ccd802e97d5784
        - ghcr.io/open-telemetry/opentelemetry-operator/opentelemetry-operator:0.141.0
        version: 0.141.0
      entries:
      - name: opentelemetry-operator.v0.141.0
        version: 0.141.0
      - name: opentelemetry-operator.v0.140.0
        version: 0.140.0
      - name: opentelemetry-operator.v0.139.0
        version: 0.139.0
      - name: opentelemetry-operator.v0.138.0
        version: 0.138.0
      - name: opentelemetry-operator.v0.137.0
        version: 0.137.0
      - name: opentelemetry-operator.v0.136.0
        version: 0.136.0
      - name: opentelemetry-operator.v0.135.0
        version: 0.135.0
      - name: opentelemetry-operator.v0.134.0
        version: 0.134.0
      - name: opentelemetry-operator.v0.132.0
        version: 0.132.0
      - name: opentelemetry-operator.v0.131.0
        version: 0.131.0
      - name: opentelemetry-operator.v0.129.1
        version: 0.129.1
      - name: opentelemetry-operator.v0.127.0
        version: 0.127.0
      - name: opentelemetry-operator.v0.126.0
        version: 0.126.0
      - name: opentelemetry-operator.v0.125.0
        version: 0.125.0
      - name: opentelemetry-operator.v0.124.0
        version: 0.124.0
      - name: opentelemetry-operator.v0.123.0
        version: 0.123.0
      - name: opentelemetry-operator.v0.122.0
        version: 0.122.0
      - name: opentelemetry-operator.v0.121.0
        version: 0.121.0
      - name: opentelemetry-operator.v0.120.0
        version: 0.120.0
      - name: opentelemetry-operator.v0.119.0
        version: 0.119.0
      - name: opentelemetry-operator.v0.118.0
        version: 0.118.0
      - name: opentelemetry-operator.v0.117.0
        version: 0.117.0
      - name: opentelemetry-operator.v0.116.0
        version: 0.116.0
      - name: opentelemetry-operator.v0.115.0
        version: 0.115.0
      - name: opentelemetry-operator.v0.114.1
        version: 0.114.1
      - name: opentelemetry-operator.v0.112.0
        version: 0.112.0
      - name: opentelemetry-operator.v0.111.0
        version: 0.111.0
      - name: opentelemetry-operator.v0.110.0
        version: 0.110.0
      - name: opentelemetry-operator.v0.109.0
        version: 0.109.0
      - name: opentelemetry-operator.v0.108.0
        version: 0.108.0
      - name: opentelemetry-operator.v0.107.0
        version: 0.107.0
      - name: opentelemetry-operator.v0.106.0
        version: 0.106.0
      - name: opentelemetry-operator.v0.105.0
        version: 0.105.0
      name: alpha
    defaultChannel: alpha
    packageName: opentelemetry-operator
    provider:
      name: OpenTelemetry Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Managed OpenShift Black Belt
      provider-url: https://github.com/rh-mobb/ocm-operator
    name: ocm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ocm-operator.v0.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ocm.mobb.redhat.com/v1alpha1",
                "kind": "GitLabIdentityProvider",
                "metadata": {
                  "name": "gitlab-sample"
                },
                "spec": {
                  "clientID": "gitlab",
                  "clientSecret": {
                    "name": "gitlab"
                  },
                  "clusterName": "my-cluster",
                  "displayName": "gitlab-sample",
                  "mappingMethod": "claim",
                  "url": "https://gitlab.com"
                }
              },
              {
                "apiVersion": "ocm.mobb.redhat.com/v1alpha1",
                "kind": "LDAPIdentityProvider",
                "metadata": {
                  "name": "ldap-sample"
                },
                "spec": {
                  "bindDN": "CN=test,OU=Users,DC=example,DC=com",
                  "bindPassword": {
                    "name": "test"
                  },
                  "clusterName": "my-cluster",
                  "displayName": "ldap-sample",
                  "mappingMethod": "claim",
                  "url": "ldap://test.example.com:389"
                }
              },
              {
                "apiVersion": "ocm.mobb.redhat.com/v1alpha1",
                "kind": "MachinePool",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "aws": {
                    "spotInstances": {
                      "enabled": false
                    }
                  },
                  "clusterName": "my-cluster",
                  "instanceType": "m5.xlarge",
                  "labels": {
                    "owner": "my-user"
                  },
                  "maximumNodesPerZone": 1,
                  "minimumNodesPerZone": 1,
                  "wait": false
                }
              },
              {
                "apiVersion": "ocm.mobb.redhat.com/v1alpha1",
                "kind": "ROSACluster",
                "metadata": {
                  "name": "rosa-sample"
                },
                "spec": {
                  "accountID": "111111111111",
                  "defaultMachinePool": {
                    "instanceType": "m5.xlarge",
                    "labels": {
                      "owner": "my-owner"
                    },
                    "minimumNodesPerZone": 2
                  },
                  "displayName": "my-cluster",
                  "iam": {
                    "userRole": "arn:aws:iam::111111111111:role/ManagedOpenShift-User-my_user-Role"
                  },
                  "tags": {
                    "owner": "my-owner"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/mobb/ocm-operator:v0.1.0
          createdAt: "2023-06-02T17:32:25Z"
          operatorframework.io/suggested-namespace: ocm-operator
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/rh-mobb/ocm-operator
          support: Managed Openshift Black Belt
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitLabIdentityProvider is the Schema for the gitlabidentityproviders
              API.
            displayName: Git Lab Identity Provider
            kind: GitLabIdentityProvider
            name: gitlabidentityproviders.ocm.mobb.redhat.com
            version: v1alpha1
          - description: LDAPIdentityProvider is the Schema for the ldapidentityproviders
              API.
            displayName: LDAPIdentity Provider
            kind: LDAPIdentityProvider
            name: ldapidentityproviders.ocm.mobb.redhat.com
            version: v1alpha1
          - description: MachinePool is the Schema for the machinepools API.
            displayName: Machine Pool
            kind: MachinePool
            name: machinepools.ocm.mobb.redhat.com
            version: v1alpha1
          - description: ROSACluster is the Schema for the clusters API.
            displayName: ROSACluster
            kind: ROSACluster
            name: rosaclusters.ocm.mobb.redhat.com
            version: v1alpha1
        description: "# Quick Start\n\n## Prerequisites\n\n- [oc](https://docs.openshift.com/container-platform/4.8/cli_reference/openshift_cli/getting-started-cli.html)\n-
          [aws](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)\n-
          [ROSA Cluster (4.12+)](https://mobb.ninja/docs/rosa/sts/)\n\n> **Warning:**\n>
          This is only tested on ROSA, but may work on other Kubernetes and OpenShift
          variants.  It requires\n> an AWS STS-enabled cluster.  Additionally, OpenShift
          versions 4.12+ are recommended, as they \n> enable [CRD CEL validation](https://kubernetes.io/blog/2022/09/23/crd-validation-rules-beta/).
          \ Versions\n> prior to 4.12 provide a lower version of Kubernetes that does
          not enable this feature.  They may \n> work, but provide no input validation
          when submitting custom resources to the cluster.\n\nBefore installing this
          operator, there are a couple secrets that must be created.\n\n1. OCM Token:
          used to authenticate against the OCM API.  The controller will not start
          without\nthis token as it used for all calls into OCM.\n2. AWS Credentials:
          uses an assume role to a role created in the instructions below in order\nto
          access AWS resources.  This is needed for cluster creation.  See \n[Create
          AWS IAM Policies and Roles](#create-aws-iam-policies-and-roles) for more
          details.\n\n> **Note:**\n> Certain custom resources have their own specific
          prerequisites.  Please use `oc explain` \n> or read the docs [here](https://github.com/rh-mobb/ocm-operator/tree/main/docs)
          for more details.\n\n### Create OCM Token Secret\n\n1. Create a namespace
          where you wish to install the operator:\n\n```bash\noc new-project ocm-operator\n```\n\n2.
          Create a secret containing the OCM_TOKEN.  This token can be obtained form
          \nhttps://console.redhat.com/openshift/token and is used by the operator
          to authenticate \nagainst the OCM API.  This token must exist in the same
          namespace that the operator \nis running and be named `ocm-token`.  It also
          expects the key to be called `OCM_TOKEN` \nas the operator is expecting
          this value as an environment variable.\n\n```bash\noc create secret generic
          ocm-token \\\n  --namespace=ocm-operator \\\n  --from-literal=OCM_TOKEN=${MY_OCM_TOKEN}\n```\n\n###
          Create AWS IAM Policies and Roles\n\nThe operator will need to elevate privileges
          in order to perform things like \ncreating the operator-roles for the clusters.
          \ Because of this, the operator \nmust have a specific role created to allow
          it these permissions.\n\n**NOTE:** please understand what you are doing
          if you deviate from the known good \npolicies.  If errors or more stringent
          security lockdowns are found, please submit a PR \nso that we can get this
          fixed.\n\n1. Set `ACCOUNT_ID` environment variable to define your AWS account
          ID:\n\n```bash\nexport ACCOUNT_ID=111111111111\n```\n\n2. Create the permissions
          boundary.  Because the operator needs to create policies and \nroles, the
          boundary ensures that the operator is not allowed to create additional\npermissions
          outside of the defined boundary.  The sample permission set is located \nat
          `test/aws/boundary.json` in this repository:\n\n```bash\nboundary=$(curl
          -s \"https://raw.githubusercontent.com/rh-mobb/ocm-operator/main/test/aws/boundary.json\")\naws
          iam create-policy \\\n  --policy-name \"OCMOperatorBoundary\" \\\n  --policy-document
          \"$boundary\"\n```\n\n3. Create the policy.  This policy sets what the operator
          is allowed to do.  For any \n`iam` permission, the boundary created above
          is used.  The sample permission set is \nlocated at `test/aws/iam_policy.json`
          in this repository:\n\n```bash\npolicy=$(curl -s \"https://raw.githubusercontent.com/rh-mobb/ocm-operator/main/test/aws/iam_policy.json\")\naws
          iam create-policy \\\n  --policy-name \"OCMOperator\" \\\n  --policy-document
          \"$policy\"\n```\n\n4. Create the role using a trust policy and attach the
          previously created role.  The trust \npolicy is located at `test/aws/trust_policy.json`
          in this repository.  Please note that \nthe trust policy requires an OIDC
          configuration.  The OIDC configuration refers to \n**where the operator
          is running, NOT what it is provisioning**:\n\n```bash\ntrust_policy=$(curl
          -s \"https://raw.githubusercontent.com/rh-mobb/ocm-operator/main/test/aws/trust_policy.json\")\naws
          iam create-role \\\n    --role-name OCMOperator \\\n    --assume-role-policy-document
          \"$trust_policy\"\naws iam attach-role-policy \\\n    --role-name OCMOperator
          \\\n    --policy-arn arn:aws:iam::$ACCOUNT_ID:policy/OCMOperator\n```\n\n5.
          Finally, create the secret containing the assume role credentials.  The
          previous steps allow \nthe operator to assume the role you created in the
          previous step with the permissions created \nvia the previous policies.\n\n```bash\ncat
          <<EOF > /tmp/credentials\n[default]\nrole_arn = arn:aws:iam::$ACCOUNT_ID:role/OCMOperator\nweb_identity_token_file
          = /var/run/secrets/openshift/serviceaccount/token\nEOF\n\noc create secret
          generic aws-credentials \\\n  --namespace=ocm-operator \\\n  --from-file=credentials=/tmp/credentials\n```\n\n##
          Install the Operator\n\n```bash\ncat <<EOF | oc apply -f -\napiVersion:
          operators.coreos.com/v1alpha1\nkind: Subscription\nmetadata:\n  name: ocm-operator\n
          \ namespace: ocm-operator\nspec:\n  channel: v0.1\n  installPlanApproval:
          Automatic\n  name: ocm-operator\n  source: community-operators\n  sourceNamespace:
          ocm-operator\n  startingCSV: ocm-operator.v0.1.0\nEOF\n```\n\n## Provision
          Resources\n\nOnce the operator is available and running, you can provision
          any of the \nresources that it manages.  Also note that documentation is
          always available \nonce the operator is installed as well by using the `oc
          explain` command.  For \nexample, `oc explain rosacluster.spec.clusterName`
          will give you detailed documentation \nabout what the field does.\n\nSee
          the following documentation for details:\n\n* [ROSA Clusters](https://github.com/rh-mobb/ocm-operator/blob/main/docs/clusters.md)\n*
          [Machine Pools](https://github.com/rh-mobb/ocm-operator/blob/main/docs/machinepools.md)\n*
          [Identity Providers](https://github.com/rh-mobb/ocm-operator/blob/main/docs/identityproviders.md)\n"
        displayName: OpenShift Cluster Manager Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ocm
        - rosa
        - redhat
        - machinepool
        - mobb
        links:
        - name: OCM Machine Pool Operator
          url: https://github.com/rh-mobb/ocm-operator
        maintainers:
        - email: dscott@redhat.com
          name: Dustin Scott
        maturity: alpha
        provider:
          name: Managed OpenShift Black Belt
          url: https://github.com/rh-mobb/ocm-operator
        relatedImages:
        - quay.io/openshift-community-operators/ocm-operator@sha256:ca6a3b24ca4ecfcab52ee0402e007d6f14b23fa7f3408d740923806989b170e4
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/mobb/ocm-operator:v0.1.0
        version: 0.1.0
      entries:
      - name: ocm-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ocm-operator
    provider:
      name: Managed OpenShift Black Belt
      url: https://github.com/rh-mobb/ocm-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cincinnati-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: update-service-operator.v5.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "updateservice.operator.openshift.io/v1",
                "kind": "UpdateService",
                "metadata": {
                  "name": "sample"
                },
                "spec": {
                  "replicas": 1
                }
              }
            ]
          capabilities: Basic Install
          description: Creates and maintains an OpenShift Update Service instance
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-update-service
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: UpdateService is the Schema for the updateservices API.
            displayName: Update Service
            kind: UpdateService
            name: updateservices.updateservice.operator.openshift.io
            version: v1
        description: |-
          # Use Case
          Running an Update Service instance in a cluster is appealing for offline OpenShift
          clusters or for admins that want to provide their own graph data instead of
          using [https://github.com/openshift/cincinnati-graph-data](https://github.com/openshift/cincinnati-graph-data/).

          # About Update Service
          Update Service uses **Cincinnati** which is an update protocol designed to facilitate
          automatic updates. It describes a particular method for representing transitions between
          releases of a project and allowing a client to perform automatic updates between these
          releases.

          ## Components
          A **Graph Builder** iterates over the release payloads hosted by the
          storage component and builds a DAG of the releases. It is responsible for
          verifying that the graph described by the releases is acyclic and connected.

          A **Policy Engine** is in charge of altering a client's view of the graph
          by applying a set of filters which are defined within the particular Policy
          Engine instance. Both the input to and the output from Policy Engines is a
          graph, allowing multiple Policy Engines to be chained together. The first
          Policy Engine in a chain will fetch its graph from the Graph Builder and the
          last Policy Engine in a chain will serve the modified graph to the client.

          An **Update Service client** is the end consumer of the release payloads. The
          client periodically queries the Policy Engine for updates and applys them if
          available.

          # Query OpenShift's Update Service Endpoint
          $ curl --silent --header 'Accept:application/json' 'https://api.openshift.com/api/upgrades_info/v1/graph?arch=amd64&channel=stable-4.2' | jq '. as $graph | $graph.nodes | map(.version == "4.2.13") | index(true) as $orig | $graph.edges | map(select(.[0] == $orig)[1]) | map($graph.nodes[.])'
        displayName: OpenShift Update Service
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Update Service
        - UpdateService
        - update-service
        - OSUS
        - Cincinnati
        - version
        - upgrade
        links:
        - name: Update Service Operator
          url: https://github.com/openshift/cincinnati-operator
        - name: OpenShift Update Service
          url: https://github.com/openshift/cincinnati
        - name: OpenShift Graph Data
          url: https://github.com/openshift/cincinnati-graph-data
        maintainers:
        - email: aos-team-ota@redhat.com
          name: OpenShift Update Service maintainers
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8@sha256:a9468a662babb272917df92bc9c827535b4b37883edb440b6d2d7c32ffb2145e
        - registry.redhat.io/openshift-update-service/cincinnati-operator-bundle@sha256:50e9c88ca31182c54f9c4bc6682642a5115fa280044e6c125f99626c69d999ad
        - registry.redhat.io/openshift-update-service/openshift-update-service-rhel8-operator@sha256:759f4de107a5b429933c5e44046ffb4ed75c674aea75440513a6df8fa93a83a3
        version: 5.0.3
      entries:
      - name: update-service-operator.v5.0.3
        version: 5.0.3
      - name: update-service-operator.v5.0.2
        version: 5.0.2
      - name: update-service-operator.v5.0.1
        version: 5.0.1
      - name: update-service-operator.v5.0.0
        version: 5.0.0
      - name: update-service-operator.v4.9.1
        version: 4.9.1
      - name: update-service-operator.v4.9.0
        version: 4.9.0
      name: v1
    defaultChannel: v1
    packageName: cincinnati-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: kubernetes-nmstate-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubernetes-nmstate-operator.4.20.0-202512081147
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nmstate.io/v1",
                "kind": "NMState",
                "metadata": {
                  "name": "nmstate"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:b18c8571422372834e54a388f7b826c6b647b24bad46063484adaa5758a8b31d
          createdAt: "2025-08-20T05:45:09Z"
          description: |
            Kubernetes NMState is a declaritive means of configuring NetworkManager.
          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: "true"
          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.skipRange: '>=4.3.0 <4.20.0-202512081147'
          operatorframework.io/suggested-namespace: openshift-nmstate
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/kubernetes-nmstate
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an NMState deployment.
            displayName: NMState
            kind: NMState
            name: nmstates.nmstate.io
            version: v1
        description: A Kubernetes Operator to install Kubernetes NMState
        displayName: Kubernetes NMState Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - nmstate
        - networking
        - NetworkManager
        links:
        - name: Kubernetes Nmstate Operator
          url: https://github.com/nmstate/kubernetes-nmstate
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: GA
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/nmstate-console-plugin-rhel9@sha256:fb2ec4f44752bf8fa661ae34b1b2bda8a34e06468ea7b072dc46a670c95d3729
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-kubernetes-nmstate-handler-rhel9@sha256:e3a542bff2590c0936aa112dd3e51486101b2b76e1b4a4cc56db83a80d6647f2
        - registry.redhat.io/openshift4/kubernetes-nmstate-operator-bundle@sha256:c6d75810e8565ff5ec92b0429eb2936a381b88d3ba33d918c0b0e39399958c0c
        - registry.redhat.io/openshift4/kubernetes-nmstate-rhel9-operator@sha256:b18c8571422372834e54a388f7b826c6b647b24bad46063484adaa5758a8b31d
        version: 4.20.0-202512081147
      entries:
      - name: kubernetes-nmstate-operator.4.20.0-202512081147
        version: 4.20.0-202512081147
      - name: kubernetes-nmstate-operator.4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: kubernetes-nmstate-operator.4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: kubernetes-nmstate-operator.4.20.0-202511110624
        version: 4.20.0-202511110624
      - name: kubernetes-nmstate-operator.4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: kubernetes-nmstate-operator.4.20.0-202510220756
        version: 4.20.0-202510220756
      - name: kubernetes-nmstate-operator.4.20.0-202510151915
        version: 4.20.0-202510151915
      name: stable
    defaultChannel: stable
    packageName: kubernetes-nmstate-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HPE Ezmeral
      provider-url: ""
    name: hpe-ezmeral-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hpe-ezmeral-csi-operator.v1.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ezmeral.hpe.com/v1",
                "kind": "HPEEzmeralCSIDriver",
                "metadata": {
                  "name": "hpeezmeralcsidriver"
                },
                "spec": {
                  "controllerImage": "registry.connect.redhat.com/maprtech/csi-kdfprovisioner@sha256:89a397c26960ba05542ac069e3a47059bced2bc958cfff4aa0f1eb081fab5d42",
                  "nodeImage": "registry.connect.redhat.com/maprtech/csi-kdfplugin@sha256:480b6fb8b2501caa76013c94feac91bef7f9b5ae6ad0b286ec621fd6a9ce4bef",
                  "pullPolicy": "Always"
                }
              },
              {
                "apiVersion": "ezmeral.hpe.com/v1",
                "kind": "HPEEzmeralNFSCSIDriver",
                "metadata": {
                  "name": "hpeezmeralnfscsidriver"
                },
                "spec": {
                  "controllerImage": "registry.connect.redhat.com/maprtech/csi-kdfprovisioner@sha256:89a397c26960ba05542ac069e3a47059bced2bc958cfff4aa0f1eb081fab5d42",
                  "nodeImage": "registry.connect.redhat.com/maprtech/csi-nfsplugin@sha256:35c275363a6949fed56b8ddfe3886ed42a6267fb07271494d8367abbd4d8c822",
                  "pullPolicy": "Always"
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/maprtech/hpe-ezmeral-csi-operator@sha256:82f52179dcd59a1e16f249bcd21f7aae22c09e84f24b479a923fef2adee45c7f
          createdAt: "2022-03-17T12:56:12Z"
          description: A Container Storage Interface (CSI) driver for HPE Ezmeral
            Data Fabric platform. The CSI driver allows you to use HPE Ezmeral Data
            Fabric with your preferred container orchestrator.
          repository: https://github.com/mapr/mapr-csi
          support: HPE Ezmeral Data Fabric
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HPE Ezmeral CSI Driver (FUSE)
            displayName: HPEEzmeralCSIDriver
            kind: HPEEzmeralCSIDriver
            name: hpeezmeralcsidrivers.ezmeral.hpe.com
            version: v1
          - description: HPE Ezmeral CSI Driver (NFS)
            displayName: HPEEzmeralNFSCSIDriver
            kind: HPEEzmeralNFSCSIDriver
            name: hpeezmeralnfscsidrivers.ezmeral.hpe.com
            version: v1
        description: |
          The HPE Ezmeral CSI Operator for Kubernetes packages, deploys, manages, upgrades the HPE Ezmeral CSI Driver on Kubernetes and OpenShift for dynamic provisioning of persistent volumes on HPE Ezmeral Data Fabric platform.
          The HPE Ezmeral CSI Driver for Kubernetes leverages HPE Ezmeral Data Fabric platform to provide scalable and persistent storage for stateful applications. Please refer to our CSI driver [documentation](https://docs.datafabric.hpe.com/home/CSIdriver/csi_overview.html) for full list of supported CSI features.
          ## Installation
          Refer to the HPE Ezmeral CSI Operator for Kubernetes [documentation](https://docs.datafabric.hpe.com/home/CSIdriver/csi_installing_operator.html)
        displayName: HPE Ezmeral Data Fabric CSI Operator for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - HPE
        - HPE Ezmeral
        - HPE Ezmeral Data Fabric
        - Storage
        - FileSystem
        - BlockVolume
        links:
        - name: Documentation
          url: https://docs.datafabric.hpe.com/home/CSIdriver/csi_overview.html
        maintainers:
        - email: ezmeral-csi-support@hpe.com
          name: HPE Ezmeral Data Fabric
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: HPE Ezmeral
        relatedImages:
        - registry.connect.redhat.com/maprtech/csi-kdfprovisioner@sha256:89a397c26960ba05542ac069e3a47059bced2bc958cfff4aa0f1eb081fab5d42
        - registry.connect.redhat.com/maprtech/csi-nfsplugin@sha256:35c275363a6949fed56b8ddfe3886ed42a6267fb07271494d8367abbd4d8c822
        - registry.connect.redhat.com/maprtech/hpe-ezmeral-csi-operator-bundle@sha256:b23ef079d0bcbeaa227a0d759c900c103f97310ad2e00a566a74b100f95a37ff
        - registry.connect.redhat.com/maprtech/hpe-ezmeral-csi-operator@sha256:82f52179dcd59a1e16f249bcd21f7aae22c09e84f24b479a923fef2adee45c7f
        - registry.connect.redhat.com/maprtech/csi-kdfplugin@sha256:480b6fb8b2501caa76013c94feac91bef7f9b5ae6ad0b286ec621fd6a9ce4bef
        version: 1.0.9
      entries:
      - name: hpe-ezmeral-csi-operator.v1.0.9
        version: 1.0.9
      name: stable
    defaultChannel: stable
    packageName: hpe-ezmeral-csi-operator
    provider:
      name: HPE Ezmeral
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: boxboat-github-practice
      provider-url: https://github.com/boxboat-github-practice
    name: github-arc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: github-arc-operator.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "github-practice.boxboat.com/v1alpha1",
                "kind": "ActionsRunnerController",
                "metadata": {
                  "name": "arc-sample"
                },
                "spec": {
                  "authSecret": {
                    "name": "ghauth"
                  },
                  "createRunnerNamespaces": true,
                  "openshift": true,
                  "runnerNamespaces": [
                    "test1",
                    "test2"
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools, Integration & Delivery, OpenShift Optional
          containerImage: ghcr.io/boxboat-github-practice/github-arc-operator:1.1.0
          createdAt: "2023-03-03T20:49:16Z"
          description: Operator for deploying the github actions runner controller
          operators.operatorframework.io/builder: operator-sdk-v1.26.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/boxboat-github-practice/github-arc-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ActionsRunnerController is the schema for the ActionsRunnerController
              API
            displayName: Actions Runner Controller
            kind: ActionsRunnerController
            name: actionsrunnercontrollers.github-practice.boxboat.com
            version: v1alpha1
        description: helm based operator for github actions runner controller
        displayName: github-arc-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - github
        - actions
        - boxboat
        - ibm
        - self-hosted
        - runners
        links:
        - name: Github Arc Operator
          url: https://github.com/boxboat-github-practice/github-arc-operator
        - name: Actions Runner Controller
          url: https://github.com/actions/actions-runner-controller
        - name: Boxboat
          url: https://boxboat.com/
        maintainers:
        - email: Michael.McMullen@ibm.com
          name: mbmcmullen27
        maturity: alpha
        provider:
          name: boxboat-github-practice
          url: https://github.com/boxboat-github-practice
        relatedImages:
        - ghcr.io/boxboat-github-practice/github-arc-operator:1.1.0
        - quay.io/openshift-community-operators/github-arc-operator@sha256:d8d97d19cea466c4c240097b79bfb7de90312d937ad4db63f9e90901686e54da
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        version: 1.1.0
      entries:
      - name: github-arc-operator.v1.1.0
        version: 1.1.0
      - name: github-arc-operator.v1.0.4
        version: 1.0.4
      name: alpha
    defaultChannel: alpha
    packageName: github-arc-operator
    provider:
      name: boxboat-github-practice
      url: https://github.com/boxboat-github-practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: DataStax
      provider-url: ""
    name: cass-operator-community
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cass-operator.v1.23.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cassandra.datastax.com/v1beta1",
                "kind": "CassandraDatacenter",
                "metadata": {
                  "name": "dc1"
                },
                "spec": {
                  "clusterName": "development",
                  "config": {
                    "cassandra-yaml": {
                      "authenticator": "PasswordAuthenticator",
                      "authorizer": "CassandraAuthorizer",
                      "num_tokens": 16,
                      "role_manager": "CassandraRoleManager"
                    },
                    "jvm-server-options": {
                      "initial_heap_size": "1G",
                      "max_heap_size": "1G"
                    }
                  },
                  "managementApiAuth": {
                    "insecure": {}
                  },
                  "podTemplateSpec": {
                    "spec": {
                      "containers": [
                        {
                          "name": "cassandra"
                        }
                      ],
                      "securityContext": {}
                    }
                  },
                  "racks": [
                    {
                      "name": "rack1"
                    },
                    {
                      "name": "rack2"
                    },
                    {
                      "name": "rack3"
                    }
                  ],
                  "resources": {
                    "requests": {
                      "cpu": "1000m",
                      "memory": "2Gi"
                    }
                  },
                  "serverType": "cassandra",
                  "serverVersion": "4.1.2",
                  "size": 3,
                  "storageConfig": {
                    "cassandraDataVolumeClaimSpec": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "resources": {
                        "requests": {
                          "storage": "10Gi"
                        }
                      },
                      "storageClassName": "server-storage"
                    }
                  }
                }
              },
              {
                "apiVersion": "control.k8ssandra.io/v1alpha1",
                "kind": "CassandraTask",
                "metadata": {
                  "name": "example-cleanup"
                },
                "spec": {
                  "datacenter": {
                    "name": "dc2",
                    "namespace": "cass-operator"
                  },
                  "jobs": [
                    {
                      "command": "cleanup",
                      "name": "cleanup-run"
                    }
                  ]
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database,Big Data,OpenShift Optional
          certified: "true"
          containerImage: cr.k8ssandra.io/k8ssandra/cass-operator:v1.23.2
          createdAt: "2025-03-20"
          description: |
            Simple provisioning, turn-key operations, and automated remediation of Apache Cassandra clusters
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/k8ssandra/cass-operator
          support: DataStax
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CassandraDatacenter is the Schema for the cassandradatacenters
              API
            displayName: Cassandra Datacenter
            kind: CassandraDatacenter
            name: cassandradatacenters.cassandra.datastax.com
            version: v1beta1
          - description: CassandraTask is the Schema for the cassandrajobs API
            displayName: Cassandra Task
            kind: CassandraTask
            name: cassandratasks.control.k8ssandra.io
            version: v1alpha1
        description: "## Apache Cassandra\n\nThe Apache Cassandra database is the
          right choice when you need scalability and\nhigh availability without compromising
          performance. Linear scalability and\nproven fault-tolerance on commodity
          hardware or cloud infrastructure make it the\nperfect platform for mission-critical
          data. Cassandra's support for replicating\nacross multiple datacenters is
          best-in-class, providing lower latency for your\nusers and the peace of
          mind of knowing that you can survive regional outages.\n\n## DataStax Enterprise\n\nThe
          most advanced distribution of Apache Cassandra™ on the market, with the\nenterprise
          functionality needed for serious production systems and backed up and\nsupported
          by the best distributed-experts in the world. It's one platform for\nall
          types of applications anywhere, any cloud, any model: key-value, graph,\ntabular,
          JSON.\n\nDataStax Enterprise is a fully integrated and optimized database,
          with graph,\nanalytics, and search included, all with a unified security
          model. Simply put,\nit's the only database capable of meeting today's demanding
          requirements\n\n## Operator Details\n\n`cass-operator` is designed as a
          modular operator for Apache Cassandra and\nderived  distributions. Apache
          Cassandra is a distributed database consisting of\nmultiple nodes working
          in concert to store data and process queries along a\nnumber of fault domains.
          `cass-operator` has the deployment of a Cassandra\ncluster around the logical
          domain of a datacenter with the `CassandraDatacenter`\ncustom resource.\n
          \   \nUpon submission of one of these resources it handles provisioning
          the underlying\nstateful sets (analogous to C\\* logical racks), services,
          and configuration.\nAdditionally through monitoring pod state via Kubernetes
          callbacks it handles day to day\noperations such as restarting failed processes,
          scaling clusters up, and deploying\nconfiguration changes in a rolling,
          non-disruptive, fashion.\n    \nThis operator is designed to be `Namespace`
          scoped. A single Kubernetes cluster may\nbe running multiple instances of
          this operator, in separate namespaces, to support\na number of C\\* clusters
          and environments. Configuration is simple with the usage of\nYAML based
          overrides in the Custom Resource paired with an `init` container.\n    \nIn
          C\\* clusters ordering and timing of certain operations are important to
          keep the system\nevenly distributed. `cass-operator` takes advantage of
          a sidecar process within the\nmain container to handle the orchestration
          of starting our main C* process."
        displayName: DataStax Kubernetes Operator for Apache Cassandra
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - k8ssandra
        - cass-operator
        - DataStax Enterprise
        - Apache Cassandra
        - DSE
        - C*
        - Cassandra
        links:
        - name: DataStax
          url: https://datastax.com
        - name: Operator GitHub Repo
          url: https://github.com/k8ssandra/cass-operator
        - name: Config Builder GitHub Repo
          url: https://github.com/datastax/cass-config-builder
        - name: Documentation [1]
          url: https://github.com/k8ssandra/cass-operator/tree/master/docs/user
        - name: Documentation [2]
          url: https://docs.datastax.com/en/cass-operator/doc/cass-operator/cassOperatorTOC.html
        maintainers:
        - email: cass-operator@datastax.com
          name: DataStax Operator Team
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: DataStax
        relatedImages:
        - cr.k8ssandra.io/k8ssandra/cass-operator:v1.23.2
        - quay.io/community-operator-pipeline-prod/cass-operator-community@sha256:428effade29fcb3e8981e84f7df945f9bc49fe1a9b56217573db8b387706c26b
        version: 1.23.2
      entries:
      - name: cass-operator.v1.23.2
        version: 1.23.2
      - name: cass-operator.v1.23.1
        version: 1.23.1
      - name: cass-operator.v1.23.0
        version: 1.23.0
      - name: cass-operator.v1.21.1
        version: 1.21.1
      - name: cass-operator.v1.19.1
        version: 1.19.1
      - name: cass-operator.v1.17.1
        version: 1.17.1
      - name: cass-operator.v1.16.0
        version: 1.16.0
      - name: cass-operator.v1.14.0
        version: 1.14.0
      - name: cass-operator.v1.13.0
        version: 1.13.0
      - name: cass-operator.v1.10.4
        version: 1.10.4
      - name: cass-operator.v1.10.1
        version: 1.10.1
      name: stable
    defaultChannel: stable
    packageName: cass-operator-community
    provider:
      name: DataStax
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: marin3r
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: marin3r.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyConfig",
                "metadata": {
                  "name": "envoyconfig-example",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "nodeID": "example",
                  "resources": [
                    {
                      "type": "cluster",
                      "value": {
                        "connect_timeout": "0.01s",
                        "dns_lookup_family": "V4_ONLY",
                        "lb_policy": "ROUND_ROBIN",
                        "load_assignment": {
                          "cluster_name": "example",
                          "endpoints": [
                            {
                              "lb_endpoints": [
                                {
                                  "endpoint": {
                                    "address": {
                                      "socket_address": {
                                        "address": "example",
                                        "port_value": 8080
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        },
                        "name": "example",
                        "type": "STRICT_DNS"
                      }
                    },
                    {
                      "type": "route",
                      "value": {
                        "name": "local",
                        "virtual_hosts": [
                          {
                            "domains": [
                              "*"
                            ],
                            "name": "all",
                            "routes": [
                              {
                                "match": {
                                  "prefix": "/"
                                },
                                "route": {
                                  "cluster": "example"
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "listener",
                      "value": {
                        "address": {
                          "socket_address": {
                            "address": "0.0.0.0",
                            "port_value": 8443
                          }
                        },
                        "filter_chains": [
                          {
                            "filters": [
                              {
                                "name": "envoy.filters.network.http_connection_manager",
                                "typed_config": {
                                  "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager",
                                  "access_log": [
                                    {
                                      "name": "envoy.access_loggers.file",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog",
                                        "path": "/dev/stdout"
                                      }
                                    }
                                  ],
                                  "http_filters": [
                                    {
                                      "name": "envoy.filters.http.router",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router"
                                      }
                                    }
                                  ],
                                  "rds": {
                                    "config_source": {
                                      "ads": {},
                                      "resource_api_version": "V3"
                                    },
                                    "route_config_name": "local"
                                  },
                                  "stat_prefix": "https"
                                }
                              }
                            ],
                            "transport_socket": {
                              "name": "envoy.transport_sockets.tls",
                              "typed_config": {
                                "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext",
                                "common_tls_context": {
                                  "tls_certificate_sds_secret_configs": [
                                    {
                                      "name": "example.default.svc",
                                      "sds_config": {
                                        "ads": {},
                                        "resource_api_version": "V3"
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          }
                        ],
                        "name": "https"
                      }
                    },
                    {
                      "blueprint": "tlsCertificate",
                      "generateFromTlsSecret": "example.default.svc",
                      "type": "secret"
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "DiscoveryService",
                "metadata": {
                  "name": "discoveryservice-example",
                  "namespace": "my-namespace"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyDeployment",
                "metadata": {
                  "name": "envoydeployment-sample",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "discoveryServiceRef": "discoveryservice-example",
                  "envoyConfigRef": "envoyconfig-example",
                  "ports": [
                    {
                      "name": "https",
                      "port": 8443
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking
          certified: "false"
          containerImage: quay.io/3scale/marin3r
          createdAt: "2024-08-05T16:08:25Z"
          description: Lighweight, CRD based Envoy control plane for Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["envoyconfigrevisions.marin3r.3scale.net","discoveryservicecertificates.operator.marin3r.3scale.net"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/3scale-ops/marin3r
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DiscoveryServiceCertificate is an internal resource used
              to create certificates. This resource is used by the DiscoveryService
              controller to create the required certificates for the different components.
              Direct use of DiscoveryServiceCertificate objects is discouraged.
            displayName: DiscoveryServiceCertificate
            kind: DiscoveryServiceCertificate
            name: discoveryservicecertificates.operator.marin3r.3scale.net
            version: v1alpha1
          - description: DiscoveryService represents an envoy discovery service server.
              Only one instance per namespace is currently supported.
            displayName: DiscoveryService
            kind: DiscoveryService
            name: discoveryservices.operator.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfigRevision is an internal resource that stores a
              specific version of an EnvoyConfig resource. EnvoyConfigRevisions are
              automatically created and deleted by the EnvoyConfig controller and
              are not intended to be directly used. Use EnvoyConfig objects instead.
            displayName: EnvoyConfigRevision
            kind: EnvoyConfigRevision
            name: envoyconfigrevisions.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfig holds the configuration for a given envoy nodeID.
              The spec of an EnvoyConfig object holds the Envoy resources that conform
              the desired configuration for the given nodeID and that the discovery
              service will send to any envoy client that identifies itself with that
              nodeID.
            displayName: EnvoyConfig
            kind: EnvoyConfig
            name: envoyconfigs.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyDeployment is a resource to deploy and manage a Kubernetes
              Deployment of Envoy Pods.
            displayName: EnvoyDeployment
            kind: EnvoyDeployment
            name: envoydeployments.operator.marin3r.3scale.net
            version: v1alpha1
        description: |
          MARIN3R implements a control plane to deploy, configure and operate a fleet of envoy instances within a Kubernetes cluster.
          It operates a group of gateways and Pod sidecar containers to provide general purpose functionality required to operate production systems.

          Features:

          * Deploy and manage an Envoy xDS server using the DiscoveryService custom resource.
          * Inject Envoy sidecar containers based on Pod annotations.
          * Deploy Envoy as a Kubernetes Deployment using the EnvoyDeployment custom resource.
          * Dynamic Envoy configuration and re-configuration using the EnvoyConfig custom resource.
          * Use Kubernetes Secrets as certificate sources.
          * Syntactic validation of Envoy configurations.
          * Lifecycle management of Envoy containers (graceful shutdown and connection draining).
          * Self-healing.

          Check the [docs](https://github.com/3scale-ops/marin3r#readme) for more information.

          ## License
          MARIN3R is licensed under the [Apache 2.0 license](https://github.com/3scale/prometheus-exporter-operator/blob/master/LICENSE)
        displayName: MARIN3R
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - envoy
        - discovery
        - controlplane
        - proxy
        - sidecar
        - xds
        - network
        - gateway
        links:
        - name: GitHub
          url: https://github.com/3scale-ops/marin3r
        maintainers:
        - email: 3scale-operations+marin3r@redhat.com
          name: 3scale Operations Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/marin3r:v0.13.1
        - quay.io/community-operator-pipeline-prod/marin3r@sha256:68875b0da5165c5fc0d39b5c079a3706b57879f444dba77f4ed04f4db4f1c664
        version: 0.13.1
      entries:
      - name: marin3r.v0.13.1
        version: 0.13.1
      - name: marin3r.v0.12.3
        version: 0.12.3
      - name: marin3r.v0.11.1
        version: 0.11.1
      - name: marin3r.v0.10.0
        version: 0.10.0
      name: alpha
    - currentCSV: marin3r.v0.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyConfig",
                "metadata": {
                  "name": "envoyconfig-example",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "nodeID": "example",
                  "resources": [
                    {
                      "type": "cluster",
                      "value": {
                        "connect_timeout": "0.01s",
                        "dns_lookup_family": "V4_ONLY",
                        "lb_policy": "ROUND_ROBIN",
                        "load_assignment": {
                          "cluster_name": "example",
                          "endpoints": [
                            {
                              "lb_endpoints": [
                                {
                                  "endpoint": {
                                    "address": {
                                      "socket_address": {
                                        "address": "example",
                                        "port_value": 8080
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          ]
                        },
                        "name": "example",
                        "type": "STRICT_DNS"
                      }
                    },
                    {
                      "type": "route",
                      "value": {
                        "name": "local",
                        "virtual_hosts": [
                          {
                            "domains": [
                              "*"
                            ],
                            "name": "all",
                            "routes": [
                              {
                                "match": {
                                  "prefix": "/"
                                },
                                "route": {
                                  "cluster": "example"
                                }
                              }
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "listener",
                      "value": {
                        "address": {
                          "socket_address": {
                            "address": "0.0.0.0",
                            "port_value": 8443
                          }
                        },
                        "filter_chains": [
                          {
                            "filters": [
                              {
                                "name": "envoy.filters.network.http_connection_manager",
                                "typed_config": {
                                  "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager",
                                  "access_log": [
                                    {
                                      "name": "envoy.access_loggers.file",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog",
                                        "path": "/dev/stdout"
                                      }
                                    }
                                  ],
                                  "http_filters": [
                                    {
                                      "name": "envoy.filters.http.router",
                                      "typed_config": {
                                        "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router"
                                      }
                                    }
                                  ],
                                  "rds": {
                                    "config_source": {
                                      "ads": {},
                                      "resource_api_version": "V3"
                                    },
                                    "route_config_name": "local"
                                  },
                                  "stat_prefix": "https"
                                }
                              }
                            ],
                            "transport_socket": {
                              "name": "envoy.transport_sockets.tls",
                              "typed_config": {
                                "@type": "type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext",
                                "common_tls_context": {
                                  "tls_certificate_sds_secret_configs": [
                                    {
                                      "name": "example.default.svc",
                                      "sds_config": {
                                        "ads": {},
                                        "resource_api_version": "V3"
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          }
                        ],
                        "name": "https"
                      }
                    },
                    {
                      "blueprint": "tlsCertificate",
                      "generateFromTlsSecret": "example.default.svc",
                      "type": "secret"
                    }
                  ]
                }
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "DiscoveryService",
                "metadata": {
                  "name": "discoveryservice-example",
                  "namespace": "my-namespace"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.marin3r.3scale.net/v1alpha1",
                "kind": "EnvoyDeployment",
                "metadata": {
                  "name": "envoydeployment-sample",
                  "namespace": "my-namespace"
                },
                "spec": {
                  "discoveryServiceRef": "discoveryservice-example",
                  "envoyConfigRef": "envoyconfig-example",
                  "ports": [
                    {
                      "name": "https",
                      "port": 8443
                    }
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Networking
          certified: "false"
          containerImage: quay.io/3scale/marin3r
          createdAt: "2024-08-05T16:08:25Z"
          description: Lighweight, CRD based Envoy control plane for Kubernetes
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["envoyconfigrevisions.marin3r.3scale.net","discoveryservicecertificates.operator.marin3r.3scale.net"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/3scale-ops/marin3r
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DiscoveryServiceCertificate is an internal resource used
              to create certificates. This resource is used by the DiscoveryService
              controller to create the required certificates for the different components.
              Direct use of DiscoveryServiceCertificate objects is discouraged.
            displayName: DiscoveryServiceCertificate
            kind: DiscoveryServiceCertificate
            name: discoveryservicecertificates.operator.marin3r.3scale.net
            version: v1alpha1
          - description: DiscoveryService represents an envoy discovery service server.
              Only one instance per namespace is currently supported.
            displayName: DiscoveryService
            kind: DiscoveryService
            name: discoveryservices.operator.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfigRevision is an internal resource that stores a
              specific version of an EnvoyConfig resource. EnvoyConfigRevisions are
              automatically created and deleted by the EnvoyConfig controller and
              are not intended to be directly used. Use EnvoyConfig objects instead.
            displayName: EnvoyConfigRevision
            kind: EnvoyConfigRevision
            name: envoyconfigrevisions.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyConfig holds the configuration for a given envoy nodeID.
              The spec of an EnvoyConfig object holds the Envoy resources that conform
              the desired configuration for the given nodeID and that the discovery
              service will send to any envoy client that identifies itself with that
              nodeID.
            displayName: EnvoyConfig
            kind: EnvoyConfig
            name: envoyconfigs.marin3r.3scale.net
            version: v1alpha1
          - description: EnvoyDeployment is a resource to deploy and manage a Kubernetes
              Deployment of Envoy Pods.
            displayName: EnvoyDeployment
            kind: EnvoyDeployment
            name: envoydeployments.operator.marin3r.3scale.net
            version: v1alpha1
        description: |
          MARIN3R implements a control plane to deploy, configure and operate a fleet of envoy instances within a Kubernetes cluster.
          It operates a group of gateways and Pod sidecar containers to provide general purpose functionality required to operate production systems.

          Features:

          * Deploy and manage an Envoy xDS server using the DiscoveryService custom resource.
          * Inject Envoy sidecar containers based on Pod annotations.
          * Deploy Envoy as a Kubernetes Deployment using the EnvoyDeployment custom resource.
          * Dynamic Envoy configuration and re-configuration using the EnvoyConfig custom resource.
          * Use Kubernetes Secrets as certificate sources.
          * Syntactic validation of Envoy configurations.
          * Lifecycle management of Envoy containers (graceful shutdown and connection draining).
          * Self-healing.

          Check the [docs](https://github.com/3scale-ops/marin3r#readme) for more information.

          ## License
          MARIN3R is licensed under the [Apache 2.0 license](https://github.com/3scale/prometheus-exporter-operator/blob/master/LICENSE)
        displayName: MARIN3R
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - envoy
        - discovery
        - controlplane
        - proxy
        - sidecar
        - xds
        - network
        - gateway
        links:
        - name: GitHub
          url: https://github.com/3scale-ops/marin3r
        maintainers:
        - email: 3scale-operations+marin3r@redhat.com
          name: 3scale Operations Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/3scale/marin3r:v0.13.1
        - quay.io/community-operator-pipeline-prod/marin3r@sha256:68875b0da5165c5fc0d39b5c079a3706b57879f444dba77f4ed04f4db4f1c664
        version: 0.13.1
      entries:
      - name: marin3r.v0.13.1
        version: 0.13.1
      - name: marin3r.v0.12.3
        version: 0.12.3
      - name: marin3r.v0.11.1
        version: 0.11.1
      - name: marin3r.v0.10.0
        version: 0.10.0
      name: stable
    defaultChannel: stable
    packageName: marin3r
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: kubeturbo
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubeturbo-operator.v8.6.5-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.6.5
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - turbonomic/kubeturbo-operator:8.6.5
        - quay.io/openshift-community-operators/kubeturbo@sha256:0739d5035590cece6d2a573aa1e799b0b0cab8b548a41cc2488cf465486cf4a5
        version: 8.6.5-beta.1
      entries:
      - name: kubeturbo-operator.v8.6.5-beta.1
        version: 8.6.5-beta.1
      - name: kubeturbo-operator.v8.6.0
        version: 8.6.0
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: beta
    - currentCSV: kubeturbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.6
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/kubeturbo@sha256:f7c7a998ce5b4590c80ae301c6e1bd81bb577a54059a8b375c5468aad1f2bf6f
        - turbonomic/kubeturbo-operator:8.6
        version: 8.6.0
      entries:
      - name: kubeturbo-operator.v8.6.0
        version: 8.6.0
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: stable
    - currentCSV: kubeturbo-operator.v8.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.4
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/kubeturbo@sha256:3028579f4909be6b8dcd970e778bc88d0576c76e55b98c886738b8f601cdf4c1
        - turbonomic/kubeturbo-operator:8.4
        version: 8.4.0
      entries:
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: v8.4.0
    - currentCSV: kubeturbo-operator.v8.5.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.5
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - turbonomic/kubeturbo-operator:8.5
        - quay.io/openshift-community-operators/kubeturbo@sha256:e50343879b4c3c4002c5e7ff67f4664df441cf5f239f59fa98b7fddd75516d41
        version: 8.5.0
      entries:
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: v8.5.0
    - currentCSV: kubeturbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Kubeturbo","metadata":{"name":"kubeturbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"},"targetConfig":{"targetName":"Cluster_Name"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/kubeturbo-operator:8.6
          createdAt: "2019-05-01T00:00:00.000Z"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Kubeturbo Operator
            kind: Kubeturbo
            name: kubeturbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — KubeTurbo — that runs in your Kubernetes or Red Hat OpenShift cluster to discover and monitor your environment.
          KubeTurbo runs together with the default scheduler and sends this data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Kubeturbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Kubeturbo Operator
          url: https://github.com/turbonomic/kubeturbo/tree/master/deploy/kubeturbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/kubeturbo@sha256:f7c7a998ce5b4590c80ae301c6e1bd81bb577a54059a8b375c5468aad1f2bf6f
        - turbonomic/kubeturbo-operator:8.6
        version: 8.6.0
      entries:
      - name: kubeturbo-operator.v8.6.0
        version: 8.6.0
      - name: kubeturbo-operator.v8.5.0
        version: 8.5.0
      - name: kubeturbo-operator.v8.4.0
        version: 8.4.0
      - name: kubeturbo-operator.v8.3.3
        version: 8.3.3
      name: v8.6.0
    defaultChannel: stable
    packageName: kubeturbo
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/openshift/lws-operator
    name: leader-worker-set
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: leader-worker-set.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "LeaderWorkerSetOperator",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed",
                  "operatorLogLevel": "Normal"
                }
              }
            ]
          capabilities: Basic Install
          categories: Openshift Optional
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-04-14T08:12:51Z"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-lws-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          repository: https://github.com/openshift/lws-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: LeaderWorkerSetOperator
            name: leaderworkersetoperators.operator.openshift.io
            version: v1
        description: "Leader Worker Set Operator is based on the [LWS](https://lws.sigs.k8s.io/docs/)
          open source project.\nLeader Worker Set: An API for deploying a group of
          pods as a unit of replication. \nIt aims to address common deployment patterns
          of AI/ML inference workloads, \nespecially multi-host inference workloads
          where the LLM will be sharded and run across multiple devices on multiple
          nodes.\n"
        displayName: Leader Worker Set Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - leader-worker-set
        links:
        - name: Leader Worker Set
          url: https://lws.sigs.k8s.io/docs/overview/
        - name: Operand Source Code
          url: https://github.com/openshift/kubernetes-sigs-lws
        - name: Operator Source Code
          url: https://github.com/openshift/lws-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: Red Hat
          url: https://github.com/openshift/lws-operator
        relatedImages:
        - registry.redhat.io/leader-worker-set/lws-operator-bundle@sha256:f641cf3b2d6659e26eb0ae49c67a3416152a2fbc2f26f490889a2bd169b9ea06
        - registry.redhat.io/leader-worker-set/lws-rhel9-operator@sha256:c202bfa15626262ff22682b64ac57539d28dd35f5960c490f5afea75cef34309
        - registry.redhat.io/leader-worker-set/lws-rhel9@sha256:affb303b1173c273231bb50fef07310b0e220d2f08bfc0aa5912d0825e3e0d4f
        version: 1.0.0
      entries:
      - name: leader-worker-set.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    defaultChannel: stable-v1.0
    packageName: leader-worker-set
    provider:
      name: Red Hat
      url: https://github.com/openshift/lws-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-businessautomation: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: businessautomation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: businessautomation-operator.7.13.5-17
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"app.kiegroup.org/v2","kind":"KieApp","metadata":{"name":"rhpam-trial"},"spec":{"environment":"rhpam-trial"}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/rhpam-7/rhpam-rhel8-operator@sha256:3b4f420def9e5d2c768d5209264bd5f9af6d6a37b22ef9a988a167ff7d9959cf
          createdAt: "2025-09-29 14:49:42"
          description: Deploys and manages Red Hat Process Automation Manager and
            Red Hat Decision Manager environments.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["Red Hat Process Automation
            Manager", "Red Hat Decision Manager"]'
          repository: https://github.com/kiegroup/kie-cloud-operator
          support: Red Hat
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A project prescription running an RHPAM/RHDM environment.
            displayName: KieApp
            kind: KieApp
            name: kieapps.app.kiegroup.org
            version: v2
        description: |-
          Deploys and manages Red Hat Process Automation Manager and Red Hat Decision Manager environments.

          * **Red Hat Process Automation Manager** is a platform for developing containerized microservices and applications that automate business decisions and processes. It includes business process management (BPM), business rules management (BRM), and business resource optimization and complex event processing (CEP) technologies. It also includes a user experience platform to create engaging user interfaces for process and decision services with minimal coding.

          [See more](https://www.redhat.com/en/products/process-automation).
        displayName: Business Automation
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - kieapp
        - pam
        - decision
        - kie
        - cloud
        - bpm
        - process
        - automation
        - operator
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-process-automation-manager
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_process_automation_manager/7.13/#category-deploying-red-hat-process-automation-manager-on-openshift
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhscl/postgresql-13-rhel7@sha256:338dd09681dcf860e6a976a3bc48a1474c2376d698815e4eb611ae9c5aa68966
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:3e5d34d689309eaa346b27ed9f0f517199d82eb9410d1bcc5e99dea367e9e242
        - registry.redhat.io/openshift4/ose-cli@sha256:310339cb93bca052f20d897f3fabdd608983e910af19ec18d1c1c67833ee3cb7
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:a3e44e81b1fe4bcbd3c1e1d7dcbd6c4fc24d9eb2458d503675d431b973b9d080
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:4ba07c476202c61c9a2b59414afd6113a55c5c8d73cc4d56281943c81f73fe6b
        - registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8@sha256:d1e5461db8983a13f98259152dc3cfa2aa677c29f799104190e5cefa83cf97b5
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:4ee8b93e87cb8012b46324a35e3806c6f7a72d6b27292cf5180dcf0f5da6810f
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:bd5c6586b4859dec23ad9530ee98bab33497ab251d544f863fc0af01cbd45101
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef9165b4497da980bd33c935a638179f7e1969dc227668b21cb79b94ecd10e51
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:32912270eba0f2464da88f315bde8bf1ef5bbded814db156811d7a415a458f86
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-monitoring-rhel8@sha256:7cf8ca0c015621c90d8fc62629ef8711571d5292e2d5ae12a0f541cdd9bd49b9
        - registry.redhat.io/rhpam-7/rhpam-controller-rhel8@sha256:3a901b54a9d35d38b5aca275df2160e3190a874e139fcb606b9969b38284b3dc
        - registry.redhat.io/rhpam-7/rhpam-operator-bundle@sha256:b18c746b4270819be88665dedae34c7635df44d492e989f433515dee0d992384
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ef10b2ecbfa0c4ac8568af9ee64ee4a554e3fdc9089ee5683b6c2c3a74caafbe
        - registry.redhat.io/datagrid/datagrid-8-rhel8@sha256:fef9789befa5796a9bec23023c9dfda27810846dc4406b126e0c344a656611a2
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:012b24f6713f98358ac044a8b5936502af22370a032cb7fbf17edacbc5e165b7
        - registry.redhat.io/rhpam-7/rhpam-dashbuilder-rhel8@sha256:4edac282119898ab1395030eecaee584990064e88fc8e65fb999f19ea2ef3f8b
        - registry.redhat.io/rhpam-7/rhpam-rhel8-operator@sha256:3b4f420def9e5d2c768d5209264bd5f9af6d6a37b22ef9a988a167ff7d9959cf
        - registry.redhat.io/amq7/amq-broker-rhel8@sha256:ae79b5dab78c4f48993fd8999b09bdcaa918b8e30a9f750bf24d411710f71928
        - registry.redhat.io/rhpam-7/rhpam-businesscentral-rhel8@sha256:228c6ab5b83e215a98f6eb76250feb2ae3096fd21398c44e5b2701257c9c3493
        - registry.redhat.io/rhscl/mysql-80-rhel7@sha256:e4f535c78bc2fdb58914c52fb805185035ff31515452b4df714f9ab623ba383a
        - registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8@sha256:3fbef82d1c5da8da1606d1a2d5dcfd20000da574737eb32b772d4f0123b179cb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:dc24aa382e02c4ac058d4b824a21f0e90a6259d6d817d0341b2a41809b5daa78
        - registry.redhat.io/rhpam-7/rhpam-process-migration-rhel8@sha256:a94739f0e52ae43bd73f3218482daf0199b6eda367a2e510ecb7b64fb7ba9942
        version: 7.13.5-17
      entries:
      - name: businessautomation-operator.7.13.5-17
        version: 7.13.5-17
      - name: businessautomation-operator.7.13.5-16
        version: 7.13.5-16
      - name: businessautomation-operator.7.13.5-15
        version: 7.13.5-15
      - name: businessautomation-operator.7.13.5-14
        version: 7.13.5-14
      - name: businessautomation-operator.7.13.5-13
        version: 7.13.5-13
      - name: businessautomation-operator.7.13.5-12
        version: 7.13.5-12
      - name: businessautomation-operator.7.13.5-11
        version: 7.13.5-11
      - name: businessautomation-operator.7.13.5-10
        version: 7.13.5-10
      - name: businessautomation-operator.7.13.5-9
        version: 7.13.5-9
      - name: businessautomation-operator.7.13.5-8
        version: 7.13.5-8
      - name: businessautomation-operator.7.13.5-7
        version: 7.13.5-7
      - name: businessautomation-operator.7.13.5-6
        version: 7.13.5-6
      - name: businessautomation-operator.7.13.5-5
        version: 7.13.5-5
      - name: businessautomation-operator.7.13.5-4
        version: 7.13.5-4
      - name: businessautomation-operator.7.13.5-3
        version: 7.13.5-3
      - name: businessautomation-operator.7.13.5-2
        version: 7.13.5-2
      - name: businessautomation-operator.7.13.5-1
        version: 7.13.5-1
      - name: businessautomation-operator.7.13.4-4
        version: 7.13.4-4
      - name: businessautomation-operator.7.13.4-3
        version: 7.13.4-3
      - name: businessautomation-operator.7.13.4-2
        version: 7.13.4-2
      - name: businessautomation-operator.7.13.4-1
        version: 7.13.4-1
      - name: businessautomation-operator.7.13.3-5
        version: 7.13.3-5
      - name: businessautomation-operator.7.13.3-4
        version: 7.13.3-4
      - name: businessautomation-operator.7.13.3-3
        version: 7.13.3-3
      - name: businessautomation-operator.7.13.3-2
        version: 7.13.3-2
      - name: businessautomation-operator.7.13.3-1
        version: 7.13.3-1
      - name: businessautomation-operator.7.13.2-3
        version: 7.13.2-3
      - name: businessautomation-operator.7.13.2-2
        version: 7.13.2-2
      - name: businessautomation-operator.7.13.2-1
        version: 7.13.2-1
      - name: businessautomation-operator.7.13.1-2
        version: 7.13.1-2
      - name: businessautomation-operator.7.13.1-1
        version: 7.13.1-1
      - name: businessautomation-operator.7.13.0-1
        version: 7.13.0-1
      - name: businessautomation-operator.7.12.1-4
        version: 7.12.1-4
      - name: businessautomation-operator.7.12.1-3
        version: 7.12.1-3
      - name: businessautomation-operator.7.12.1-2
        version: 7.12.1-2
      - name: businessautomation-operator.7.12.1-1
        version: 7.12.1-1
      - name: businessautomation-operator.7.12.0-2
        version: 7.12.0-2
      - name: businessautomation-operator.7.12.0-1
        version: 7.12.0-1
      - name: businessautomation-operator.7.11.1-3
        version: 7.11.1-3
      - name: businessautomation-operator.7.11.1-2
        version: 7.11.1-2
      - name: businessautomation-operator.7.11.1-1
        version: 7.11.1-1
      - name: businessautomation-operator.7.11.0-2
        version: 7.11.0-2
      - name: businessautomation-operator.7.11.0-1
        version: 7.11.0-1
      - name: businessautomation-operator.7.10.1-2
        version: 7.10.1-2
      - name: businessautomation-operator.7.10.1-1
        version: 7.10.1-1
      - name: businessautomation-operator.7.10.0-2
        version: 7.10.0-2
      - name: businessautomation-operator.7.10.0-1
        version: 7.10.0-1
      - name: businessautomation-operator.7.9.1-1
        version: 7.9.1-1
      - name: businessautomation-operator.7.9.0
        version: 7.9.0
      - name: businessautomation-operator.7.9.0-2
        version: 7.9.0-2
      - name: businessautomation-operator.7.8.1
        version: 7.8.1
      - name: businessautomation-operator.7.8.0
        version: 7.8.0
      - name: businessautomation-operator.1.4.1
        version: 1.4.1
      - name: businessautomation-operator.1.4.0
        version: 1.4.0
      - name: businessautomation-operator.1.3.0
        version: 1.3.0
      - name: businessautomation-operator.1.2.1
        version: 1.2.1
      - name: businessautomation-operator.1.2.0
        version: 1.2.0
      name: stable
    defaultChannel: stable
    packageName: businessautomation-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-commons-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: commons-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/commons-operator@sha256:b06a873ea5d18482fbe431031e5cb5b156669a89e7d6844edefe673dc13e6bc4
          description: Stackable Commons Operator
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/commons-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for AuthenticationClassSpec via
              `CustomResource`
            displayName: authenticationclasses.authentication.stackable.tech
            kind: AuthenticationClass
            name: authenticationclasses.authentication.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for ConnectionSpec via `CustomResource`
            displayName: s3connections.s3.stackable.tech
            kind: S3Connection
            name: s3connections.s3.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for BucketSpec via `CustomResource`
            displayName: s3buckets.s3.stackable.tech
            kind: S3Bucket
            name: s3buckets.s3.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Commons Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - commons
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/commons-operator@sha256:b06a873ea5d18482fbe431031e5cb5b156669a89e7d6844edefe673dc13e6bc4
        - registry.connect.redhat.com/stackable/stackable-commons-operator@sha256:2a9de3ee2f44c74604a516a2f4ad7525315ea37b3b7193505c68e065821a9b06
        version: 25.11.0
      entries:
      - name: commons-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-commons-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: GitLab, Inc.
      provider-url: https://gitlab.com
    name: gitlab-runner-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitlab-runner-operator.v1.43.3
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "apps.gitlab.com/v1beta2",
                "kind": "Runner",
                "metadata": {
                  "name": "gitlab-runner-example",
                  "namespace": "gitlab-system"
                },
                "spec": {
                  "gitlabUrl": "https://gitlab.example.com",
                  "token": "runner-token-secret",
                  "tags": "kubernetes,example",
                  "concurrent": 10,
                  "imagePullPolicy": "IfNotPresent"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery, Developer Tools
          containerImage: registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
          createdAt: "2025-11-28T23:15:09Z"
          description: GitLab Runner operator manages lifecycle of GitLab Runner instances
          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: "true"
          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.skipRange: '>=1.11.0 <1.43.3'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: none
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
          support: GitLab, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Runner is the open source project used to run your jobs and
              send the results back to GitLab
            displayName: GitLab Runner
            kind: Runner
            name: runners.apps.gitlab.com
            version: v1beta2
        description: |-
          GitLab Runner is the lightweight, highly-scalable agent that runs your build jobs and sends the results back to a GitLab instance. GitLab Runner works in conjunction with GitLab CI/CD, the open-source continuous integration service included with GitLab.

              The GitLab Runner operator manages the lifecycle of GitLab Runner in Kubernetes or Openshift clusters. The operator aims to automate the tasks needed to run your CI/CD jobs in your container orchestration platform.

              ## Prerequisites

                For Kubernetes cluster, install cert-manager:

                ```shell
                kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.7.1/cert-manager.yaml
                ```

              ## GitLab Runner version

              This version of **GitLab Runner Operator** ships with **GitLab Runner v18.6.3**.

              To use a different version of **GitLab Runner** change the [`runnerImage` and `helperImage` properties](https://docs.gitlab.com/runner/configuration/configuring_runner_operator.html#operator-properties).

              ## Usage

               To link a GitLab Runner instance to a self-hosted GitLab instance or the hosted [GitLab](https://gitlab.com), you first need to:

               1. Create a secret containing the `runner-token` from your GitLab project.

                ```
                cat > gitlab-runner-secret.yml << EOF
                apiVersion: v1
                kind: Secret
                metadata:
                  name: gitlab-runner-secret
                type: Opaque
                # Only one of the following fields must be set. The Operator will fail to register Runner if both are provided.
                # # NOTE: runner-registration-token is deprecated and will be removed in GitLab 18.0. You should use runner-token instead.
                stringData:
                  runner-token: REPLACE_ME # your project runner token
                  # runner-registration-token: "" # your project runner secret
                EOF
                ```

                ```
                oc apply -f gitlab-runner-secret.yml
                ```

               2. Create the Custom Resource Definition (CRD) file and include the following information. The tags value must be openshift for the job to run.

                 ```
                 cat > gitlab-runner.yml << EOF
                 apiVersion: apps.gitlab.com/v1beta2
                 kind: Runner
                 metadata:
                   name: gitlab-runner
                 spec:
                   gitlabUrl: https://gitlab.example.com
                   buildImage: alpine
                   token: gitlab-runner-secret
                   tags: openshift
                 EOF
                 ```

                ```
                oc apply -f gitlab-runner.yml
                ```

              ## Full documentation

              Visit [Install GitLab Runner Operator](https://docs.gitlab.com/runner/install/operator.html)
        displayName: GitLab Runner
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GitLab
        - CI/CD
        - DevOps
        - SAST
        - DAST
        links:
        - name: Gitlab Runner Operator
          url: https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator
        - name: GitLab Docs
          url: https://docs.gitlab.com
        - name: GitLab Runner
          url: https://docs.gitlab.com/runner/
        - name: GitLab CI/CD
          url: https://docs.gitlab.com/ee/ci/quick_start/
        maintainers:
        - email: support@gitlab.com
          name: Georgi N. Georgiev
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: GitLab, Inc.
          url: https://gitlab.com
        relatedImages:
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/openshift4/ose-kube-rbac-proxy@sha256:bb84ead437042603254efcb703442be8500a9450b10bbcaaee81b48a6ed869ea
        - quay.io/community-operator-pipeline-prod/gitlab-runner-operator@sha256:3b051d097c14fa948cbc7356ca60e1a7fb3ca3e4ce4aeea19a5d8c5b0ffb8c5d
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-helper-ocp@sha256:9c1723a09b7255e8ab13954375e263965de1955d9f1fdc5e64d7610c7495e614
        - registry.gitlab.com/gitlab-org/ci-cd/gitlab-runner-ubi-images/gitlab-runner-ocp@sha256:de78dc586ebc1c1ea6e4be7b8a21e949bc24860051e3eab93f3468751a04ca0a
        - registry.gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/gitlab-runner-operator@sha256:2af2e3fc0304df4f520d6f24cc02268893b182fc553dd3c7c1c5317db067a36e
        version: 1.43.3
      entries:
      - name: gitlab-runner-operator.v1.43.3
        version: 1.43.3
      - name: gitlab-runner-operator.v1.43.2
        version: 1.43.2
      - name: gitlab-runner-operator.v1.43.1
        version: 1.43.1
      - name: gitlab-runner-operator.v1.43.0
        version: 1.43.0
      name: stable
    defaultChannel: stable
    packageName: gitlab-runner-operator
    provider:
      name: GitLab, Inc.
      url: https://gitlab.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: OnGres
      provider-url: https://ongres.com
    name: stackgres-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stackgres.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - registry.connect.redhat.com/ongres/stackgres-certified-1@sha256:faa7a5d70521507defdbde77666970420dbd8c6241a7144ba1f2e18624256498
        version: 1.18.3
      entries:
      - name: stackgres.v1.18.3
        version: 1.18.3
      - name: stackgres.v1.18.2
        version: 1.18.2
      - name: stackgres.v1.18.1
        version: 1.18.1
      name: candidate
    - currentCSV: stackgres.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        - registry.connect.redhat.com/ongres/stackgres-certified-1@sha256:faa7a5d70521507defdbde77666970420dbd8c6241a7144ba1f2e18624256498
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        version: 1.18.3
      entries:
      - name: stackgres.v1.18.3
        version: 1.18.3
      - name: stackgres.v1.18.2
        version: 1.18.2
      - name: stackgres.v1.18.1
        version: 1.18.1
      name: fast
    - currentCSV: stackgres.v1.18.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGCluster",
                "metadata": {
                  "name": "demo-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "instances": 3,
                  "pods": {
                    "persistentVolume": {
                      "size": "20Gi"
                    }
                  },
                  "postgres": {
                    "version": "latest"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGConfig",
                "metadata": {
                  "name": "stackgres-operator"
                },
                "spec": {
                  "authentication": {
                    "type": "jwt",
                    "user": "admin"
                  },
                  "containerRegistry": "quay.io",
                  "extensions": {
                    "repositoryUrls": [
                      "https://extensions.stackgres.io/postgres/repository"
                    ]
                  },
                  "grafana": {
                    "autoEmbed": false,
                    "datasourceName": "Prometheus",
                    "password": "prom-operator",
                    "schema": "http",
                    "user": "admin"
                  },
                  "imagePullPolicy": "IfNotPresent",
                  "prometheus": {
                    "allowAutobind": true
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgCluster": "demo-db"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGDistributedLogs",
                "metadata": {
                  "name": "distributedlogs",
                  "namespace": "demo-db"
                },
                "spec": {
                  "persistentVolume": {
                    "size": "20Gi"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGInstanceProfile",
                "metadata": {
                  "name": "size-m",
                  "namespace": "demo-db"
                },
                "spec": {
                  "cpu": "4",
                  "memory": "8Gi"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPoolingConfig",
                "metadata": {
                  "name": "poolconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "pgBouncer": {
                    "pgbouncer.ini": {
                      "databases": {
                        "demo": {
                          "dbname": "demo",
                          "pool_size": 400,
                          "reserve_pool": 5
                        },
                        "postgres": {
                          "dbname": "postgres",
                          "pool_size": 10,
                          "reserve_pool": 5
                        }
                      },
                      "pgbouncer": {
                        "default_pool_size": "100",
                        "max_client_conn": "2000",
                        "pool_mode": "session"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGPostgresConfig",
                "metadata": {
                  "name": "pgconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "postgresVersion": "15",
                  "postgresql.conf": {
                    "effective_cache_size": "5GB",
                    "hot_standby_feedback": "on",
                    "log_min_duration_statement": "1000",
                    "maintenance_work_mem": "2GB",
                    "max_connections": "600",
                    "shared_buffers": "3GB",
                    "work_mem": "16MB"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "create-db-script",
                  "namespace": "demo-db"
                },
                "spec": {
                  "continueOnError": false,
                  "managedVersions": true,
                  "scripts": [
                    {
                      "name": "create-demo-database",
                      "script": "CREATE DATABASE demo WITH OWNER postgres;\n"
                    }
                  ]
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGScript",
                "metadata": {
                  "name": "stream-db",
                  "namespace": "demo-db"
                },
                "spec": {
                  "source": {
                    "sgCluster": {
                      "name": "demo-db"
                    },
                    "type": "SGCluster"
                  },
                  "target": {
                    "cloudEvent": {
                      "http": {
                        "url": "http://cloudevents-nodejs"
                      }
                    },
                    "type": "CloudEvent"
                  }
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedBackup",
                "metadata": {
                  "name": "demo-backup",
                  "namespace": "demo-db"
                },
                "spec": {
                  "managedLifecycle": false,
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1",
                "kind": "SGShardedDbOps",
                "metadata": {
                  "name": "demo-restart-op",
                  "namespace": "demo-db"
                },
                "spec": {
                  "op": "restart",
                  "sgShardedCluster": "demo-shardeddb"
                }
              },
              {
                "apiVersion": "stackgres.io/v1alpha1",
                "kind": "SGShardedCluster",
                "metadata": {
                  "name": "demo-shardeddb",
                  "namespace": "demo-db"
                },
                "spec": {
                  "coordinator": {
                    "instances": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "database": "sharded",
                  "postgres": {
                    "version": "15.3"
                  },
                  "shards": {
                    "clusters": 3,
                    "instancesPerCluster": 2,
                    "pods": {
                      "persistentVolume": {
                        "size": "10Gi"
                      }
                    }
                  },
                  "type": "citus"
                }
              },
              {
                "apiVersion": "stackgres.io/v1beta1",
                "kind": "SGObjectStorage",
                "metadata": {
                  "name": "backupconfig",
                  "namespace": "demo-db"
                },
                "spec": {
                  "gcs": {
                    "bucket": "stackgres-backups",
                    "gcpCredentials": {
                      "secretKeySelectors": {
                        "serviceAccountJSON": {
                          "key": "gcloudkey",
                          "name": "backups-gcp"
                        }
                      }
                    }
                  },
                  "type": "gcs"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Database
          certified: "true"
          containerImage: quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
          createdAt: "2025-12-26T11:33:48Z"
          description: |
            The most advanced Postgres Enterprise Platform.
            Fully Open Source.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "false"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operatorhub.io/ui-metadata-max-k8s-version: 1.35.999
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: quarkus.javaoperatorsdk.io/v1-alpha
          repository: https://gitlab.com/ongresinc/stackgres
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Handle to a performed (or to be performed, if run manually)
              backup
            displayName: StackGres Backup
            kind: SGBackup
            name: sgbackups.stackgres.io
            version: v1
          - description: Main CRD, manages Postgres clusters (one or more Postgres
              pods)
            displayName: StackGres Cluster
            kind: SGCluster
            name: sgclusters.stackgres.io
            version: v1
          - description: Operator configuration for OLM-based installations (equivalent
              to values.yaml with Helm)
            displayName: StackGres Operator Configuration
            kind: SGConfig
            name: sgconfigs.stackgres.io
            version: v1
          - description: Day 2 Operations, including upgrades, restarts, vacuum, repack,
              etc
            displayName: StackGres Database Operation
            kind: SGDbOps
            name: sgdbops.stackgres.io
            version: v1
          - description: Multi-tenant logs server, to aggregate Postgres logs. Fully
              managed
            displayName: StackGres Distributed Logs
            kind: SGDistributedLogs
            name: sgdistributedlogs.stackgres.io
            version: v1
          - description: Instance Profiles are like "t-shirt" sizes, used for pods
              sizing
            displayName: StackGres Instance Profile
            kind: SGInstanceProfile
            name: sginstanceprofiles.stackgres.io
            version: v1
          - description: Handle to an existing Object Storage (e.g. S3), used to store
              backups
            displayName: StackGres Object Storage
            kind: SGObjectStorage
            name: sgobjectstorages.stackgres.io
            version: v1beta1
          - description: Strongly validated customized Postgres configuration (postgresql.conf)
            displayName: StackGres Postgres Configuration
            kind: SGPostgresConfig
            name: sgpgconfigs.stackgres.io
            version: v1
          - description: Customized PgBouncer (connection pooler) configuration
            displayName: StackGres Connection Pooling Configuration
            kind: SGPoolingConfig
            name: sgpoolconfigs.stackgres.io
            version: v1
          - description: Managed SQL Scripts, used for initial SQL commands or migrations
            displayName: StackGres Script
            kind: SGScript
            name: sgscripts.stackgres.io
            version: v1
          - description: Handle to a performed (or to be performed, if run manually)
              backup for sharded clusters
            displayName: StackGres Sharded Backup
            kind: SGShardedBackup
            name: sgshardedbackups.stackgres.io
            version: v1
          - description: Manages Postgres sharded clusters (two or more SGClusters)
            displayName: StackGres Sharded Cluster
            kind: SGShardedCluster
            name: sgshardedclusters.stackgres.io
            version: v1alpha1
          - description: Day 2 Operations for sharded clusters, including restarts,
              resharding, etc
            displayName: StackGres Sharded DbOps
            kind: SGShardedDbOps
            name: sgshardeddbops.stackgres.io
            version: v1
          - description: Stream Change Data Captured (CDC) events
            displayName: StackGres Stream
            kind: SGStream
            name: sgstreams.stackgres.io
            version: v1alpha1
        description: |2

          [StackGres](https://stackgres.io) is the **Stack** required for enterprise production Post**Gres**. A fully-featured platform to run Postgres on Kubernetes. Fully Open Source, StackGres supports both a declarative approach suitable for GitOps workflows and a complete Web Console for the best user experience.

          Built by [OnGres](https://ongres.com) ("**On** Post**Gres**"), StackGres requires little to no prior Postgres experience. StackGres can perform fully automated deployments; fully automated database operations ("Day 2 operations") and comes with advanced database tuning by default. Yet remaining highly customizable for Postgres expert DBAs.

          [StackGres features](https://stackgres.io/features/) include, among others:

          * **High Availability with automated failover**. StackGres relies on [Patroni](https://github.com/zalando/patroni), and its built-in and fully automatic.
          * **Integrated connection pooling**. Built-in, by default, like it should be for production workloads.
          * **Automatic backups with lifecycle policies**. Backup your clusters automatically to any object store. Apply retention policies. Restoration supports PITR.
          * **Advanced replication modes**, including async, sync and group replication. It also supports cascading replication and standby clusters on separate Kubernetes clusters for disaster recovery.
          * **More than 150 Postgres extensions**. The Postgres platform with [the largest number of extensions in the world](https://stackgres.io/extensions/). With new extensions added continuously.
          * **Observability**. Fully integrated with the Prometheus stack. Includes pre-defined, Postgres-specific dashboards and alerts.
          * **Fully-featured Web Console**. Perform any operation from the Web Console. Supports SSO, fine-grained RBAC and a REST API.
          * **Distributed Logs**. StackGres developed a mechanism to ship logs from all pods to a central log server, managed by StackGres, that store logs in Postgres. Query your logs with SQL or from the Web Console!
          * **Automated Day 2 Operations**. Minor and major version upgrades, container upgrades, controlled restart, vacuum, repack, even benchmarks!
          * **Expertly tuned by default**. From the creators of [CONF](https://postgresqlco.nf), StackGres pre-tunes your Postgres servers with more than 40 parameters tuned by default.
          * **100% Open Source**. No "premium version with advanced features", no production usage restrictions. Just Open Source.
          * **[24/7 Support](https://stackgres.io/pricing/) Available from OnGres**

          ## Installation and documentation

          Installation:
          * For a quick test, you can follow our [quickstart](https://stackgres.io/doc/latest/demo/quickstart/).
          * [Production installations](https://stackgres.io/doc/latest/install/).

          All the documentation is available at [stackgres.io/doc](https://stackgres.io/doc/latest/install/).

          Join the [Slack](https://slack.stackgres.io) and/or [Discord](https://discord.stackgres.io) Public Communities for Community support.
        displayName: StackGres
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - postgres
        - database
        - sql
        - rdbms
        - open source
        - ongres
        links:
        - name: StackGres Web
          url: https://stackgres.io
        - name: StackGres Docs
          url: https://stackgres.io/doc
        maintainers:
        - email: stackgres@ongres.com
          name: OnGres
        maturity: stable
        minKubeVersion: 1.18.0
        provider:
          name: OnGres
          url: https://ongres.com
        relatedImages:
        - registry.connect.redhat.com/ongres/stackgres-certified-1@sha256:faa7a5d70521507defdbde77666970420dbd8c6241a7144ba1f2e18624256498
        - quay.io/ongres/kubectl@sha256:3bb27ccffb13242f3af4ca995f87ac1950d3daf7e3f6a7eb302a0adb35741b3a
        - quay.io/stackgres/admin-ui@sha256:e94e72ef80bb91d187488680ee45c5c7266300ca64b0792fcedcff3568f736e1
        - quay.io/stackgres/operator@sha256:ec7c8671d4deab4ef202db991dd2c13d027ec9aa0060c5c7492cbee776921fbf
        - quay.io/stackgres/restapi@sha256:62dfe8bd27dc900a9be2ddf7ec979d0b2f95a031a7851e9a7c2f09258a7a06da
        version: 1.18.3
      entries:
      - name: stackgres.v1.18.3
        version: 1.18.3
      - name: stackgres.v1.18.2
        version: 1.18.2
      - name: stackgres.v1.18.1
        version: 1.18.1
      name: stable
    defaultChannel: stable
    packageName: stackgres-certified
    provider:
      name: OnGres
      url: https://ongres.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-glue-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-glue-controller.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/glue-controller:0.3.0
          createdAt: "2025-11-29T04:47:04Z"
          description: AWS Glue controller is a service controller for managing Glue
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Job represents the state of an AWS glue Job resource.
            displayName: Job
            kind: Job
            name: jobs.glue.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Glue resources in AWS from within your Kubernetes cluster.

          **About Amazon Glue**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Glue
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - glue
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Glue Developer Resources
          url: https://aws.amazon.com/Glue/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: glue maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-glue-controller@sha256:cd4c331b8a043a636f00c854514d1e4f4baff330787d94a8f114e69ab125a227
        - public.ecr.aws/aws-controllers-k8s/glue-controller:0.3.0
        version: 0.3.0
      entries:
      - name: ack-glue-controller.v0.3.0
        version: 0.3.0
      - name: ack-glue-controller.v0.2.2
        version: 0.2.2
      - name: ack-glue-controller.v0.2.1
        version: 0.2.1
      - name: ack-glue-controller.v0.2.0
        version: 0.2.0
      - name: ack-glue-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-glue-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Cisco
      provider-url: ""
    name: aci-containers-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: aci-containers-operator.v1.0.11
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"aci.ctrl/v1alpha1","kind":"AciContainersOperator","metadata":{"name":"acicnioperator","namespace":"aci-containers-system"},"spec":{}}]'
          capabilities: Seamless Upgrades
          categories: Networking
          certified: "false"
          containerImage: quay.io/noiro/aci-containers-operator@sha256:73ceb1c96e68c2bd1c85feb495371b460329450d27e73818e76af1916dd412d6
          createdAt: "2025-11-12T12:00:00Z"
          description: The Cisco Application Centric Infrastructure (ACI) Containers
            Operator brings the ACI CNI Plugin and Policy model to Kubernetes clusters.
          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"
          marketplace.openshift.io/action-text: Install-time Instructions
          marketplace.openshift.io/remote-workflow: https://github.com/noironetworks/aci-containers/blob/master/README.md
          repository: https://github.com/noironetworks/aci-containers
          support: acisupport@cisco.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Aci Containers Operator
            displayName: AciContainersOperator
            kind: AciContainersOperator
            name: acicontainersoperators.aci.ctrl
            version: v1alpha1
        description: |
          ## ACI CNI Plugin

          The Cisco Application Centric Infrastructure (ACI) CNI plugin brings the ACI Networking and Policy model to Kubernetes clusters that reside on-prem or in the cloud. It is fully open source and relies on the Opflex Protocol to program Open vSwitch instances running on the Kubernetes nodes. It provides IP address management, L2/L3 networking, load balancing, and security functions for container workloads.

          The Cisco ACI CNI plugin for the Red Hat OpenShift Container Platform provides a single, programmable network infrastructure that eliminates bottlenecks between OpenShift workloads and the rest of the infrastructure while providing enterprise-grade security and offers flexible micro segmentation possibilities.

          Unified Networking - By extending the integrated overlay of the ACI fabric to OpenShift workloads, Pod and Service endpoints are managed as native ACI network resources at the same level as Bare Metal or Virtual Machines.

          No Egress Router Required - Applications running in OpenShift Pods that need high-bandwidth, low-latency traffic for data transfers external to the cluster suffer the bottleneck imposed by the egress router implementation. Pods can easily connect with other fabric or non-fabric endpoints leveraging the combined hardware and software distributed routing and switching provided by ACI and the ACI CNI plugin.

          Simplified Operations and Enhanced Visibility - Whether policies and networking are defined by the devops or fabric or security admins, the APIC becomes the single source of truth for operations and security governance. Kubernetes workload visibility is provided to Network Operators within their familiar Cisco tools.

          Hardware-assisted Load Balancing - Ingress connections to LoadBalancer-type services using ACI’s Policy Based Redirect technology moves load balancing into the fabric's hardware.

          Granular Security - Security can be implemented by using native NetworkPolicy or by using ACI EPGs and contracts, or both models complementing each other. Network policy of container workloads becomes a shared responsibility while ensuring global compliance and tenant constraints are enforced.
        displayName: Cisco ACI Containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cisco
        - aci
        links:
        - name: Cisco ACI Homepage
          url: https://www.cisco.com/c/en/us/td/docs/switches/datacenter/aci/apic/sw/kb/b_Kubernetes_Integration_with_ACI.html
        maintainers:
        - email: abhishs9@cisco.com
          name: 'Abhishek Sharma '
        - email: sumitnaiksatam@gmail.com
          name: Sumit Naiksatam
        - email: vlella@cisco.com
          name: Vishal Lella
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: Cisco
        relatedImages:
        - registry.connect.redhat.com/noiro/aci-operator-bundle@sha256:07ff4b08266ebe5b5f897689a1253afc17805b2ba3e5c7de7b71358709466883
        - quay.io/noiro/acc-provision-operator@sha256:f4d1bff9c15e1ecbc8fec870c191669d3e75e2552d0070bd14908328f0924023
        - quay.io/noiro/aci-containers-operator@sha256:73ceb1c96e68c2bd1c85feb495371b460329450d27e73818e76af1916dd412d6
        version: 1.0.11
      entries:
      - name: aci-containers-operator.v1.0.11
        version: 1.0.11
      name: stable
    defaultChannel: stable
    packageName: aci-containers-operator
    provider:
      name: Cisco
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Harness Inc.
      provider-url: https://harness.io
    name: harness-gitops-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: harness-gitops-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "gitops.harness.io/v1alpha1",
                "kind": "GitopsAgent",
                "metadata": {
                  "annotations": {
                    "containerImage": "harness/gitops-agent-controller@sha256:e4342fb1599538d2b6145e644f1e302b2783a48347c53a1da7ec8e2454df5fde",
                    "createdAt": "2025-07-31T12:11:18Z"
                  },
                  "name": "gitops-agent-sample"
                },
                "spec": {
                  "identity": {
                    "accountIdentifier": "accountIdentifier",
                    "agentIdentifier": "agentIdentifier",
                    "agentName": "agentName"
                  },
                  "replicas": 1,
                  "secrets": {
                    "agentSecret": "agentSecret"
                  },
                  "target": {
                    "http": "https://app.harness.io/gitops/",
                    "protocol": "HTTP1"
                  },
                  "upgrade": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: harness/gitops-agent-controller@sha256:e4342fb1599538d2b6145e644f1e302b2783a48347c53a1da7ec8e2454df5fde
          createdAt: "2025-07-31T06:41:18Z"
          description: Harness operator to manage and provision GitOps Agent
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.openshift.io/valid-subscription: Not required
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Harness Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Schema for the Gitops Agents API
            displayName: Gitops Agent
            kind: GitopsAgent
            name: gitopsagents.gitops.harness.io
            version: v1alpha1
        description: |-
          ## Overview
          Harness Gitops Operator manages the full lifecycle for [Gitops Agent](https://developer.harness.io/docs/continuous-delivery/gitops/connect-and-manage/install-a-harness-git-ops-agent/)

          The operator aims to provide the following:

            * Easy configuration and installation of Harness GitOps Agent.
            * Provide seamless upgrades for Harness GitOps Agent.
            * Monitoring and autorecovery for GitOps Agent.

          ## Usage
          Deploy gitops-agent in namespace where operator is installed with basic setup.

          ### Prerequisites:
            * Go to your Harness account and create a new gitops agent
            * Copy account, org and project identifiers
            * Retrieve the agent secret key

          ```
          apiVersion: gitops.harness.io/v1alpha1
          kind: GitopsAgent
          metadata:
            name: gitops-agent-sample
          spec:
            identity:
              accountIdentifier: accountIdentifier
              agentIdentifier: agentIdentifier
              agentName: agentName
            secrets:
              agentSecret: agentSecret
            target:
              http: https://app.harness.io/gitops/
              protocol: HTTP1
            replicas: 1
            upgrade:
              enabled: true
          ```
          **Note:** Gitops Agent require an active ArgoCD instance running in the same namespace where agent is installed.

          See [Harness Documentation](https://developer.harness.io/) for more information.
        displayName: Harness GitOps Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - harness
        - agent
        - cd
        - argocd
        - kubernetes
        links:
        - name: Harness Gitops Operator
          url: https://harness-gitops-operator.domain
        maintainers:
        - email: alexandru.bosii@harness.io
          name: Alexandru Bosii
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Harness Inc.
          url: https://harness.io
        relatedImages:
        - docker.io/harness/gitops-agent@sha256:c9f57338be294d32a73a4cbecf90dfff50f5d36a699f3ec32d962dcb64d8d085
        - harness/gitops-agent-controller@sha256:e4342fb1599538d2b6145e644f1e302b2783a48347c53a1da7ec8e2454df5fde
        - registry.connect.redhat.com/harness/gitops-operator@sha256:f97cdc2245b7133a04235c55540d3a87165e080b1d5b9572a663731f6ccbe597
        version: 0.3.0
      entries:
      - name: harness-gitops-operator.v0.3.0
        version: 0.3.0
      name: alpha
    defaultChannel: alpha
    packageName: harness-gitops-operator
    provider:
      name: Harness Inc.
      url: https://harness.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-secret-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: secret-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          description: Stackable Secret Operator
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/secret-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |-
          This is a Kubernetes operator to provide secret functionality to other Stackable operators. The Stackable Secret Operator
          is part of the Stackable Data Platform, a curated selection of the best open source data apps like Kafka, Druid, Trino or Spark, all
          working together seamlessly. Based on Kubernetes, it runs everywhere - on prem or in the cloud.

          You can install the operator using [stackablectl or helm](https://docs.stackable.tech/home/stable/secret-operator/installation.html).

          NOTE: Make sure you install this operator in a namespace called "stackable-operators". Failing to do so will result in a broken installation.
        displayName: Stackable Secret Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - secret
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/secret-operator@sha256:832b8c0b4900c51337ce9d1b631e3aea9bf221bcdbcf7b585b0fedaae77b5c87
        - quay.io/stackable/sig-storage/csi-node-driver-registrar@sha256:ab4a3289015f7de39c4dc987fa6183bcb157294a841c88fa842332ce66b068d8
        - quay.io/stackable/sig-storage/csi-provisioner@sha256:142e0b069dcc100671c91d66d8c973d56ea330b4e11ab79e5eb4fea5c79c6ecb
        - registry.connect.redhat.com/stackable/secret-operator@sha256:9e7955fccd149247741beb9eb6d30f519f262a847a8ba8310c8863a334cd4fee
        version: 25.11.0
      entries:
      - name: secret-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-secret-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: rebellions
      provider-url: https://rebellions.ai/
    name: rbln-npu-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rbln-npu-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rebellions.ai/v1beta1",
                "kind": "RBLNClusterPolicy",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "rbln-npu-operator"
                  },
                  "name": "rbln-cluster-policy"
                },
                "spec": {
                  "daemonsets": {},
                  "devicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "rebellions/rbln-metrics-exporter",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "name": "rbln",
                  "npuFeatureDiscovery": {
                    "enabled": true,
                    "image": "rebellions/rbln-npu-feature-discovery",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM_PT",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest",
                    "vfioChecker": {
                      "image": "rebellions/rbln-vfio-manager",
                      "version": "latest"
                    }
                  },
                  "vfioManager": {
                    "enabled": true,
                    "image": "rebellions/rbln-vfio-manager",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "version": "latest"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
          createdAt: "2025-09-10T02:09:06Z"
          description: Deploy and manage Rebellions NPU in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Rebellions
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RBLNClusterPolicy is the Schema for the RBLNClusterPolicys
              API
            displayName: RBLNCluster Policy
            kind: RBLNClusterPolicy
            name: rblnclusterpolicies.rebellions.ai
            version: v1beta1
        description: RBLN Operator automates the deployment and management of RBLN
          NPU drivers, device plugins, CRDs, firmware updates, and health monitoring
          for seamless integration into Kubernetes.
        displayName: RBLN operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rebellions
        - ai
        - AI
        - NPU
        - AI acceleration
        - ML inference
        links:
        - name: Rbln K8s Operator
          url: https://rbln-npu-operator.domain
        maintainers:
        - email: heesu.sung@rebellions.ai
          name: heesu.sung
        - email: mskim@rebellions.ai
          name: minsik.kim
        maturity: stable
        minKubeVersion: 1.30.0
        provider:
          name: rebellions
          url: https://rebellions.ai/
        relatedImages:
        - docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
        - docker.io/rebellions/rbln-vfio-manager@sha256:308baaa997eda83db530c1631e2ce097df79d2efda818ee85b330a0934113048
        - registry.connect.redhat.com/rebellions/rbln-npu-operator-bundle@sha256:f9283bccc4acc424f6abd9bea9d0f64ce7c8940aebccbfc8effcf4d87457b310
        - docker.io/rebellions/k8s-device-plugin@sha256:05ef97d5cb3678f33b833c57a3de1e417a8e4f58c098c8ffc7bc85682a820f86
        - docker.io/rebellions/rbln-metrics-exporter@sha256:f696d75b40e948cad25a1bc14c43e256463acb55477a7787b1be4e7086908240
        - docker.io/rebellions/rbln-npu-feature-discovery@sha256:02ea11356b04e05d2dbbdd7b60286aec239e846e4beb26fdf515f61535b3e885
        version: 0.0.3
      entries:
      - name: rbln-npu-operator.v0.0.3
        version: 0.0.3
      name: candidate
    - currentCSV: rbln-npu-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rebellions.ai/v1beta1",
                "kind": "RBLNClusterPolicy",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "rbln-npu-operator"
                  },
                  "name": "rbln-cluster-policy"
                },
                "spec": {
                  "daemonsets": {},
                  "devicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "rebellions/rbln-metrics-exporter",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "name": "rbln",
                  "npuFeatureDiscovery": {
                    "enabled": true,
                    "image": "rebellions/rbln-npu-feature-discovery",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM_PT",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest",
                    "vfioChecker": {
                      "image": "rebellions/rbln-vfio-manager",
                      "version": "latest"
                    }
                  },
                  "vfioManager": {
                    "enabled": true,
                    "image": "rebellions/rbln-vfio-manager",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "version": "latest"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
          createdAt: "2025-09-10T02:09:06Z"
          description: Deploy and manage Rebellions NPU in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Rebellions
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RBLNClusterPolicy is the Schema for the RBLNClusterPolicys
              API
            displayName: RBLNCluster Policy
            kind: RBLNClusterPolicy
            name: rblnclusterpolicies.rebellions.ai
            version: v1beta1
        description: RBLN Operator automates the deployment and management of RBLN
          NPU drivers, device plugins, CRDs, firmware updates, and health monitoring
          for seamless integration into Kubernetes.
        displayName: RBLN operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rebellions
        - ai
        - AI
        - NPU
        - AI acceleration
        - ML inference
        links:
        - name: Rbln K8s Operator
          url: https://rbln-npu-operator.domain
        maintainers:
        - email: heesu.sung@rebellions.ai
          name: heesu.sung
        - email: mskim@rebellions.ai
          name: minsik.kim
        maturity: stable
        minKubeVersion: 1.30.0
        provider:
          name: rebellions
          url: https://rebellions.ai/
        relatedImages:
        - registry.connect.redhat.com/rebellions/rbln-npu-operator-bundle@sha256:f9283bccc4acc424f6abd9bea9d0f64ce7c8940aebccbfc8effcf4d87457b310
        - docker.io/rebellions/k8s-device-plugin@sha256:05ef97d5cb3678f33b833c57a3de1e417a8e4f58c098c8ffc7bc85682a820f86
        - docker.io/rebellions/rbln-metrics-exporter@sha256:f696d75b40e948cad25a1bc14c43e256463acb55477a7787b1be4e7086908240
        - docker.io/rebellions/rbln-npu-feature-discovery@sha256:02ea11356b04e05d2dbbdd7b60286aec239e846e4beb26fdf515f61535b3e885
        - docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
        - docker.io/rebellions/rbln-vfio-manager@sha256:308baaa997eda83db530c1631e2ce097df79d2efda818ee85b330a0934113048
        version: 0.0.3
      entries:
      - name: rbln-npu-operator.v0.0.3
        version: 0.0.3
      name: fast
    - currentCSV: rbln-npu-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rebellions.ai/v1beta1",
                "kind": "RBLNClusterPolicy",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "rbln-npu-operator"
                  },
                  "name": "rbln-cluster-policy"
                },
                "spec": {
                  "daemonsets": {},
                  "devicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest"
                  },
                  "metricsExporter": {
                    "enabled": true,
                    "image": "rebellions/rbln-metrics-exporter",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "name": "rbln",
                  "npuFeatureDiscovery": {
                    "enabled": true,
                    "image": "rebellions/rbln-npu-feature-discovery",
                    "imagePullPolicy": "IfNotPresent",
                    "version": "latest"
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true,
                    "image": "rebellions/k8s-device-plugin",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "resourceList": [
                      {
                        "productCardNames": [
                          "RBLN-CA22",
                          "RBLN-CA25"
                        ],
                        "resourceName": "ATOM_PT",
                        "resourcePrefix": "rebellions.ai"
                      }
                    ],
                    "version": "latest",
                    "vfioChecker": {
                      "image": "rebellions/rbln-vfio-manager",
                      "version": "latest"
                    }
                  },
                  "vfioManager": {
                    "enabled": true,
                    "image": "rebellions/rbln-vfio-manager",
                    "imagePullPolicy": "IfNotPresent",
                    "priorityClassName": "system-node-critical",
                    "version": "latest"
                  }
                }
              }
            ]
          capabilities: Basic Install
          containerImage: docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
          createdAt: "2025-09-10T02:09:06Z"
          description: Deploy and manage Rebellions NPU in Kubernetes
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Rebellions
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: RBLNClusterPolicy is the Schema for the RBLNClusterPolicys
              API
            displayName: RBLNCluster Policy
            kind: RBLNClusterPolicy
            name: rblnclusterpolicies.rebellions.ai
            version: v1beta1
        description: RBLN Operator automates the deployment and management of RBLN
          NPU drivers, device plugins, CRDs, firmware updates, and health monitoring
          for seamless integration into Kubernetes.
        displayName: RBLN operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - rebellions
        - ai
        - AI
        - NPU
        - AI acceleration
        - ML inference
        links:
        - name: Rbln K8s Operator
          url: https://rbln-npu-operator.domain
        maintainers:
        - email: heesu.sung@rebellions.ai
          name: heesu.sung
        - email: mskim@rebellions.ai
          name: minsik.kim
        maturity: stable
        minKubeVersion: 1.30.0
        provider:
          name: rebellions
          url: https://rebellions.ai/
        relatedImages:
        - docker.io/rebellions/rbln-metrics-exporter@sha256:f696d75b40e948cad25a1bc14c43e256463acb55477a7787b1be4e7086908240
        - docker.io/rebellions/rbln-npu-feature-discovery@sha256:02ea11356b04e05d2dbbdd7b60286aec239e846e4beb26fdf515f61535b3e885
        - docker.io/rebellions/rbln-npu-operator@sha256:e7ef866247ebd4cb3336ee45ad98db3aeb12372027b390755765ace99278be2b
        - docker.io/rebellions/rbln-vfio-manager@sha256:308baaa997eda83db530c1631e2ce097df79d2efda818ee85b330a0934113048
        - registry.connect.redhat.com/rebellions/rbln-npu-operator-bundle@sha256:f9283bccc4acc424f6abd9bea9d0f64ce7c8940aebccbfc8effcf4d87457b310
        - docker.io/rebellions/k8s-device-plugin@sha256:05ef97d5cb3678f33b833c57a3de1e417a8e4f58c098c8ffc7bc85682a820f86
        version: 0.0.3
      entries:
      - name: rbln-npu-operator.v0.0.3
        version: 0.0.3
      name: stable
    defaultChannel: stable
    packageName: rbln-npu-operator
    provider:
      name: rebellions
      url: https://rebellions.ai/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Portworx by PureStorage
      provider-url: ""
    name: portworx-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: portworx-operator.v25.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageCluster",
                "metadata": {
                  "name": "portworx",
                  "namespace": "test-operator",
                  "annotations": {
                    "portworx.io/is-openshift": "true"
                  }
                },
                "spec": {}
              },
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageNode",
                "metadata": {
                  "name": "example",
                  "namespace": "test-operator"
                },
                "spec": {}
              }
            ]
          capabilities: Auto Pilot
          categories: Storage
          certified: "true"
          console.openshift.io/plugins: '["portworx"]'
          containerImage: registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
          createdAt: "2026-01-06T19:58:49Z"
          description: Cloud native storage solution for production workloads
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "core.libopenstorage.org/v1",
              "kind": "StorageCluster",
              "metadata": {
                "name": "portworx",
                "annotations": {
                  "portworx.io/is-openshift": "true"
                }
              }
            }
          support: Portworx, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Storage Cluster installs Portworx in the cluster. It has
              all the necessary configurations to setup and update a Portworx cluster.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.core.libopenstorage.org
            version: v1
          - description: Do not create Storage Node as it is internally created by
              the operator. It represents the status of a Portworx node.
            displayName: Storage Node
            kind: StorageNode
            name: storagenodes.core.libopenstorage.org
            version: v1
        description: |
          Portworx-Enterprise is the most widely-used and reliable cloud-native
          storage solution for production workloads and provides high-availability,
          data protection and security for containerized applications.

          Portworx Enterprise enables you to migrate entire applications, including
          data, between clusters in a single data center or cloud, or between clouds,
          with a single kubectl command.

          The cloud native storage and data management platform that enterprises trust
          to manage data in containers now has an operator which simplifies the install,
          configuration, upgrades and manages the Portworx Enterprise cluster lifecycle.

          Learn more about the Portworx Enterprise
          [the data platform for Kubernetes](https://portworx.com/products/introduction)

          To learn more about the platform features, please visit our
          [product features page](https://portworx.com/products/features)

          ### About Portworx

          Portworx is the solution for running stateful containers in production,
          designed with DevOps in mind. With Portworx, users can manage any database
          or stateful service on any infrastructure using any container scheduler,
          including Kubernetes, Mesosphere DC/OS, and Docker Swarm. Portworx solves
          the five most common problems DevOps teams encounter when running stateful
          services in production: persistence, high availability, data automation,
          security, and support for multiple data stores and infrastructure.

          ### How to install StorageCluster

          To customize your cluster's configuration (specification), use the
          [Spec Generator](https://central.portworx.com/) from PX-Central.

          ### Prerequisite

          Ensure ports 17001-17020 on worker nodes are reachable from master and other worker nodes.

          ### Tutorials

          * [Portworx Enterprise on Openshift](https://portworx.com/openshift)

          * [Stateful applications on Kubernetes](https://docs.portworx.com/portworx-enterprise/concepts/kubernetes-storage-101/applications)

          * [Portworx Enterprise on Kubernetes](https://docs.portworx.com/portworx-install-with-kubernetes)

          * [Kafka on Kubernetes](https://portworx.com/kafka-kubernetes)

          * [Elastisearch on Kubernetes](https://portworx.com/elasticsearch-kubernetes)

          * [PostgreSQL on Kubernetes](https://portworx.com/postgres-kubernetes/)

          * [MongoDB on Kubernetes](https://portworx.com/mongodb-kubernetes/)

          * [Cassandra on Kubernetes](https://portworx.com/cassandra-kubernetes/)

          * [Kubernetes backup and recovery](https://portworx.com/kubernetes-backup/)

          * [Disaster Recovery for Kubernetes](https://portworx.com/kubernetes-disaster-recovery/)

          ### Uninstall

          Deleting the StorageCluster object for Portworx cluster does not stop Portworx
          service running on the nodes, to avoid application downtime.

          To uninstall Portworx completely without wiping the data, you should add the
          following delete strategy to the StorageCluster spec:
          ```
          spec:
            deleteStrategy:
              type: Uninstall
          ```
          **Caution:** To uninstall Portworx and **wipe all the data**, you should use the following
          delete strategy:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndWipe
          ```
          **Note:** Starting with Operator version 25.5.0 and Portworx version 3.5.0, you can also use the following delete strategy
          to uninstall Portworx, **wipe all the data**, and **delete the drives**:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndDelete
          ```
        displayName: Portworx Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - portworx
        - persistent storage
        - storage
        - cloud native
        - open source
        links:
        - name: Product Features
          url: https://portworx.com/products/features
        - name: Documentation
          url: https://docs.portworx.com/portworx-enterprise/platform/openshift
        - name: Support
          url: https://docs.portworx.com/portworx-enterprise/support/contact-support
        - name: Source Code
          url: https://github.com/libopenstorage/operator
        maintainers:
        - email: support@portworx.com
          name: Portworx
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Portworx by PureStorage
        relatedImages:
        - registry.connect.redhat.com/portworx/portworx-certified-bundle@sha256:6864d81f92272c5a9b865211b745170a3ecacfe43d8bd597e91b84e1a3774fa8
        - registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
        version: 25.5.1
      entries:
      - name: portworx-operator.v25.5.1
        version: 25.5.1
      - name: portworx-operator.v25.5.0
        version: 25.5.0
      - name: portworx-operator.v25.4.0
        version: 25.4.0
      - name: portworx-operator.v25.3.1
        version: 25.3.1
      - name: portworx-operator.v25.3.0
        version: 25.3.0
      - name: portworx-operator.v25.2.2
        version: 25.2.2
      - name: portworx-operator.v25.2.1
        version: 25.2.1
      - name: portworx-operator.v25.2.0
        version: 25.2.0
      - name: portworx-operator.v24.2.4
        version: 24.2.4
      - name: portworx-operator.v24.2.3
        version: 24.2.3
      - name: portworx-operator.v24.2.2
        version: 24.2.2
      - name: portworx-operator.v24.2.1
        version: 24.2.1
      - name: portworx-operator.v24.2.0
        version: 24.2.0
      - name: portworx-operator.v24.1.3
        version: 24.1.3
      - name: portworx-operator.v24.1.2
        version: 24.1.2
      - name: portworx-operator.v24.1.1
        version: 24.1.1
      - name: portworx-operator.v24.1.0
        version: 24.1.0
      - name: portworx-operator.v23.10.5
        version: 23.10.5
      - name: portworx-operator.v23.10.4
        version: 23.10.4
      - name: portworx-operator.v23.10.3
        version: 23.10.3
      - name: portworx-operator.v23.10.2
        version: 23.10.2
      - name: portworx-operator.v23.10.1
        version: 23.10.1
      - name: portworx-operator.v23.7.0
        version: 23.7.0
      - name: portworx-operator.v23.5.1
        version: 23.5.1
      - name: portworx-operator.v23.5.0
        version: 23.5.0
      - name: portworx-operator.v23.4.0
        version: 23.4.0
      - name: portworx-operator.v23.3.1
        version: 23.3.1
      - name: portworx-operator.v23.3.0
        version: 23.3.0
      - name: portworx-operator.v1.10.5
        version: 1.10.5
      - name: portworx-operator.v1.10.4
        version: 1.10.4
      - name: portworx-operator.v1.10.3
        version: 1.10.3
      - name: portworx-operator.v1.10.2
        version: 1.10.2
      - name: portworx-operator.v1.10.1
        version: 1.10.1
      - name: portworx-operator.v1.10.0
        version: 1.10.0
      - name: portworx-operator.v1.9.1
        version: 1.9.1
      - name: portworx-operator.v1.9.0
        version: 1.9.0
      - name: portworx-operator.v1.8.1
        version: 1.8.1
      - name: portworx-operator.v1.8.0
        version: 1.8.0
      - name: portworx-operator.v1.7.1
        version: 1.7.1
      - name: portworx-operator.v1.6.1
        version: 1.6.1
      name: alpha
    - currentCSV: portworx-operator.v25.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageCluster",
                "metadata": {
                  "name": "portworx",
                  "namespace": "test-operator",
                  "annotations": {
                    "portworx.io/is-openshift": "true"
                  }
                },
                "spec": {}
              },
              {
                "apiVersion": "core.libopenstorage.org/v1",
                "kind": "StorageNode",
                "metadata": {
                  "name": "example",
                  "namespace": "test-operator"
                },
                "spec": {}
              }
            ]
          capabilities: Auto Pilot
          categories: Storage
          certified: "true"
          console.openshift.io/plugins: '["portworx"]'
          containerImage: registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
          createdAt: "2026-01-06T19:58:49Z"
          description: Cloud native storage solution for production workloads
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "core.libopenstorage.org/v1",
              "kind": "StorageCluster",
              "metadata": {
                "name": "portworx",
                "annotations": {
                  "portworx.io/is-openshift": "true"
                }
              }
            }
          support: Portworx, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Storage Cluster installs Portworx in the cluster. It has
              all the necessary configurations to setup and update a Portworx cluster.
            displayName: Storage Cluster
            kind: StorageCluster
            name: storageclusters.core.libopenstorage.org
            version: v1
          - description: Do not create Storage Node as it is internally created by
              the operator. It represents the status of a Portworx node.
            displayName: Storage Node
            kind: StorageNode
            name: storagenodes.core.libopenstorage.org
            version: v1
        description: |
          Portworx-Enterprise is the most widely-used and reliable cloud-native
          storage solution for production workloads and provides high-availability,
          data protection and security for containerized applications.

          Portworx Enterprise enables you to migrate entire applications, including
          data, between clusters in a single data center or cloud, or between clouds,
          with a single kubectl command.

          The cloud native storage and data management platform that enterprises trust
          to manage data in containers now has an operator which simplifies the install,
          configuration, upgrades and manages the Portworx Enterprise cluster lifecycle.

          Learn more about the Portworx Enterprise
          [the data platform for Kubernetes](https://portworx.com/products/introduction)

          To learn more about the platform features, please visit our
          [product features page](https://portworx.com/products/features)

          ### About Portworx

          Portworx is the solution for running stateful containers in production,
          designed with DevOps in mind. With Portworx, users can manage any database
          or stateful service on any infrastructure using any container scheduler,
          including Kubernetes, Mesosphere DC/OS, and Docker Swarm. Portworx solves
          the five most common problems DevOps teams encounter when running stateful
          services in production: persistence, high availability, data automation,
          security, and support for multiple data stores and infrastructure.

          ### How to install StorageCluster

          To customize your cluster's configuration (specification), use the
          [Spec Generator](https://central.portworx.com/) from PX-Central.

          ### Prerequisite

          Ensure ports 17001-17020 on worker nodes are reachable from master and other worker nodes.

          ### Tutorials

          * [Portworx Enterprise on Openshift](https://portworx.com/openshift)

          * [Stateful applications on Kubernetes](https://docs.portworx.com/portworx-enterprise/concepts/kubernetes-storage-101/applications)

          * [Portworx Enterprise on Kubernetes](https://docs.portworx.com/portworx-install-with-kubernetes)

          * [Kafka on Kubernetes](https://portworx.com/kafka-kubernetes)

          * [Elastisearch on Kubernetes](https://portworx.com/elasticsearch-kubernetes)

          * [PostgreSQL on Kubernetes](https://portworx.com/postgres-kubernetes/)

          * [MongoDB on Kubernetes](https://portworx.com/mongodb-kubernetes/)

          * [Cassandra on Kubernetes](https://portworx.com/cassandra-kubernetes/)

          * [Kubernetes backup and recovery](https://portworx.com/kubernetes-backup/)

          * [Disaster Recovery for Kubernetes](https://portworx.com/kubernetes-disaster-recovery/)

          ### Uninstall

          Deleting the StorageCluster object for Portworx cluster does not stop Portworx
          service running on the nodes, to avoid application downtime.

          To uninstall Portworx completely without wiping the data, you should add the
          following delete strategy to the StorageCluster spec:
          ```
          spec:
            deleteStrategy:
              type: Uninstall
          ```
          **Caution:** To uninstall Portworx and **wipe all the data**, you should use the following
          delete strategy:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndWipe
          ```
          **Note:** Starting with Operator version 25.5.0 and Portworx version 3.5.0, you can also use the following delete strategy
          to uninstall Portworx, **wipe all the data**, and **delete the drives**:
          ```
          spec:
            deleteStrategy:
              type: UninstallAndDelete
          ```
        displayName: Portworx Enterprise
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - portworx
        - persistent storage
        - storage
        - cloud native
        - open source
        links:
        - name: Product Features
          url: https://portworx.com/products/features
        - name: Documentation
          url: https://docs.portworx.com/portworx-enterprise/platform/openshift
        - name: Support
          url: https://docs.portworx.com/portworx-enterprise/support/contact-support
        - name: Source Code
          url: https://github.com/libopenstorage/operator
        maintainers:
        - email: support@portworx.com
          name: Portworx
        maturity: stable
        minKubeVersion: 1.21.0
        provider:
          name: Portworx by PureStorage
        relatedImages:
        - registry.connect.redhat.com/portworx/openstorage-operator@sha256:cfb69133609c6d9fe7ec93f22ca81fdbb6a1f78e06244c26626e168464101567
        - registry.connect.redhat.com/portworx/portworx-certified-bundle@sha256:6864d81f92272c5a9b865211b745170a3ecacfe43d8bd597e91b84e1a3774fa8
        version: 25.5.1
      entries:
      - name: portworx-operator.v25.5.1
        version: 25.5.1
      - name: portworx-operator.v25.5.0
        version: 25.5.0
      - name: portworx-operator.v25.4.0
        version: 25.4.0
      - name: portworx-operator.v25.3.1
        version: 25.3.1
      - name: portworx-operator.v25.3.0
        version: 25.3.0
      - name: portworx-operator.v25.2.2
        version: 25.2.2
      - name: portworx-operator.v25.2.1
        version: 25.2.1
      - name: portworx-operator.v25.2.0
        version: 25.2.0
      - name: portworx-operator.v24.2.4
        version: 24.2.4
      - name: portworx-operator.v24.2.3
        version: 24.2.3
      - name: portworx-operator.v24.2.2
        version: 24.2.2
      - name: portworx-operator.v24.2.1
        version: 24.2.1
      - name: portworx-operator.v24.2.0
        version: 24.2.0
      - name: portworx-operator.v24.1.3
        version: 24.1.3
      - name: portworx-operator.v24.1.2
        version: 24.1.2
      - name: portworx-operator.v24.1.1
        version: 24.1.1
      - name: portworx-operator.v24.1.0
        version: 24.1.0
      - name: portworx-operator.v23.10.5
        version: 23.10.5
      - name: portworx-operator.v23.10.4
        version: 23.10.4
      - name: portworx-operator.v23.10.3
        version: 23.10.3
      - name: portworx-operator.v23.10.2
        version: 23.10.2
      - name: portworx-operator.v23.10.1
        version: 23.10.1
      - name: portworx-operator.v23.7.0
        version: 23.7.0
      - name: portworx-operator.v23.5.1
        version: 23.5.1
      - name: portworx-operator.v23.5.0
        version: 23.5.0
      - name: portworx-operator.v23.4.0
        version: 23.4.0
      - name: portworx-operator.v23.3.1
        version: 23.3.1
      - name: portworx-operator.v23.3.0
        version: 23.3.0
      - name: portworx-operator.v1.10.5
        version: 1.10.5
      - name: portworx-operator.v1.10.4
        version: 1.10.4
      - name: portworx-operator.v1.10.3
        version: 1.10.3
      - name: portworx-operator.v1.10.2
        version: 1.10.2
      - name: portworx-operator.v1.10.1
        version: 1.10.1
      - name: portworx-operator.v1.10.0
        version: 1.10.0
      - name: portworx-operator.v1.9.1
        version: 1.9.1
      - name: portworx-operator.v1.9.0
        version: 1.9.0
      - name: portworx-operator.v1.8.1
        version: 1.8.1
      - name: portworx-operator.v1.8.0
        version: 1.8.0
      - name: portworx-operator.v1.7.1
        version: 1.7.1
      - name: portworx-operator.v1.6.1
        version: 1.6.1
      name: stable
    defaultChannel: stable
    packageName: portworx-certified
    provider:
      name: Portworx by PureStorage
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: koku-metrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: koku-metrics-operator.v4.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
                "kind": "CostManagementMetricsConfig",
                "metadata": {
                  "name": "costmanagementmetricscfg-sample-v1beta1"
                },
                "spec": {
                  "authentication": {
                    "type": "token"
                  },
                  "packaging": {
                    "max_reports_to_store": 30,
                    "max_size_MB": 100
                  },
                  "prometheus_config": {
                    "collect_previous_data": true,
                    "context_timeout": 120,
                    "disable_metrics_collection_cost_management": false,
                    "disable_metrics_collection_resource_optimization": false
                  },
                  "source": {
                    "check_cycle": 1440,
                    "create_source": false,
                    "name": ""
                  },
                  "upload": {
                    "upload_cycle": 360,
                    "upload_toggle": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
          createdAt: "2025-10-29T15:49:19Z"
          description: A Golang-based OpenShift Operator that generates and uploads
            OpenShift usage metrics to cost management.
          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: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
              "kind": "CostManagementMetricsConfig",
              "metadata": {
                "name": "costmanagementmetricscfg-sample-v1beta1"
              },
              "spec": {
                "authentication": {
                  "token_url": "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token",
                  "type": "token"
                },
                "api_url": "https://console.redhat.com/",
                "packaging": {
                  "max_reports_to_store": 30,
                  "max_size_MB": 100
                },
                "upload": {
                  "ingress_path": "/api/ingress/v1/upload",
                  "upload_cycle": 360,
                  "upload_toggle": true,
                  "validate_cert": true
                },
                "prometheus_config": {
                  "collect_previous_data": true,
                  "context_timeout": 120,
                  "disable_metrics_collection_cost_management": false,
                  "disable_metrics_collection_resource_optimization": false,
                  "service_address": "https://thanos-querier.openshift-monitoring.svc:9091",
                  "skip_tls_verification": false
                },
                "source": {
                  "check_cycle": 1440,
                  "create_source": false,
                  "name": "",
                  "sources_path": "/api/sources/v1.0/"
                }
              }
            }
          operatorframework.io/suggested-namespace: koku-metrics-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/project-koku/koku-metrics-operator
          support: Cost Management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CostManagementMetricsConfig is the Schema for the costmanagementmetricsconfig
              API
            displayName: Cost Management Metrics Config
            kind: CostManagementMetricsConfig
            name: costmanagementmetricsconfigs.costmanagement-metrics-cfg.openshift.io
            version: v1beta1
        description: |
          # Koku Metrics Operator
          ## Introduction
          The `koku-metrics-operator` is a component of the [cost managment](https://access.redhat.com/documentation/en-us/cost_management_service) service for Openshift. The operator runs on the latest supported versions of Openshift. This operator obtains OpenShift usage data by querying Prometheus every hour to create metric reports that it uploads to Cost Management at [console.redhat.com](https://console.redhat.com) to be processed. For more information, reach out to <costmanagement@redhat.com>.

          This operator is capable of functioning within a disconnected/restricted network (aka air-gapped mode). In this mode, the operator will store the packaged reports for manual retrieval instead of being uploaded to Cost Management. Documentation for installing an operator within a restricted network can be found [here](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html).

          ## Features and Capabilities
          #### Metrics collection:
          The Koku Metrics Operator (`koku-metrics-operator`) collects the metrics required for Cost Management by:
          * Querying Prometheus to gather the necessary metrics for Cost Management.
          * Writing the results of Prometheus queries to CSV report files.
          * Packaging the CSV report files into tarballs.

          #### Additional Capabilities:
          * Resource Optimization metrics collection.
          * The operator can be configured to gather all previous data within the configured retention period or a maximum of 90 days. The default data collection period is the 14 previous days. This setting is only applicable to newly created KokuMetricsConfigs.
          * The operator can be configured to automatically upload the packaged reports to Cost Management through Red Hat Insights Ingress service.
          * The operator can create an integration in console.redhat.com. An integration is required for Cost Management to process the uploaded packages.
          * PersistentVolumeClaim (PVC) configuration: The KokuMetricsConfig CR can accept a PVC definition and the operator will create and mount the PVC. If one is not provided, a default PVC will be created.
          * Restricted network installation: this operator can function on a restricted network. In this mode, the operator stores the packaged reports for manual retrieval.

          ## New in v4.3.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for cost management.

          ## New in v4.2.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for resource optimization.
          * (Bugfix) Fixed custom CA certificate validation and configuration issues.
          * (Bugfix) Fixed issue where ROS queries were missing workload metadata for namespaces labeled only with the legacy `insights_cost_management_optimizations` label.

          ## New in v4.1.0:
          * Enabled gathering and reporting namespace metrics to provide more granular data for resource optimization.
          * Updated CSV report filenames to be more descriptive, replacing the previous generic UID-based names with content-reflective names.
          * Introduced a new generic label, `cost_management_optimizations`, for resource optimization while ensuring backward compatibility with the older `insights_cost_management_optimizations` label.

          ## New in v4.0.0:
          * **Virtual Machine Metrics:** Adds capabilities for collecting metrics and generating reports for running virtual machines within your OpenShift environment.
          * **Progress towards FIPS 140 Compliance:** The operator is using the Go Cryptographic Module v1.0.0 to progress toward FIPS 140 compliance. Although this module is not validated at the time of this release, the operator aims to meet stricter security standards when the module does successfully achieve FIPS validation.
          * **API Name Change:** The Custom Resource Definition (CRD) for configuring the upstream `Koku Metrics Operator` was renamed from `KokuMetricsConfig` to `CostManagementMetricsConfig`.

          ### NOTE:
            * The API name change impacts only users of the upstream (community) Koku Metrics Operator.
            * The downstream (Red Hat-supported) Cost Management Metrics Operator is not impacted by this change and users should continue using their existing configurations.

          **Important Upgrade Instructions:**

            If you are upgrading the upstream Koku Metrics Operator to version 4.0.0 or higher, you must manually migrate your configuration. The operator will no longer recognize existing `KokuMetricsConfig` resources.

            To successfully upgrade and retain your operator's configuration, complete the following steps. You can use the provided `oc` commands replacing the angle brackets (`< >`) with your specific values:

            1. Backup existing configuration (recommended):

               Before you upgrade, retrieve the details of your current `KokuMetricsConfig` instance to help you recreate it with the new API name.

               ```
               oc get kokumetricsconfig -n koku-metrics-operator <your-config-name> -o yaml > koku-metrics-config-backup.yaml
               ```

            2. Delete the previous `KokuMetricsConfig` instance (recommended):

                After the operator is upgraded to `version 4.0.0`, delete any existing `KokuMetricsConfig` resources.

                ```
                oc delete kokumetricsconfig -n koku-metrics-operator <your-config-name>
                ```

            3. Create the new `CostManagementMetricsConfig` instance:

                Using the information from your backup (or a new configuration), create a new `CostManagementMetricsConfig` instance. Adjust the spec section based on your specific needs. For more information about configurations, [refer to the configurable parameters](#configurable-parameters).

            4. Apply your new configuration:

                ```
                oc apply -f <your-costmanagementmetricsconfig-file>.yaml -n koku-metrics-operator
                ```

          ## New in v3.3.2:
          * Leader election settings are now configurable via environment variables. These variables can be modified in the operator [Subscription](https://github.com/operator-framework/operator-lifecycle-manager/blob/5a01f50258003e248bd5630df0837fe0bb0f1cb7/doc/design/subscription-config.md). The values should be specified as durations in seconds in the format `<number-of-seconds>s`. The default values for `LEADER_ELECTION_LEASE_DURATION`, `LEADER_ELECTION_RENEW_DEADLINE`, and `LEADER_ELECTION_RETRY_PERIOD` are '60s', '30s', and '5s', respectively.

            ```
            kind: Subscription
            metadata:
            ...
            spec:
              ...
              config:
                env:
                - name: LEADER_ELECTION_LEASE_DURATION
                  value: "60s"
                - name: LEADER_ELECTION_RENEW_DEADLINE
                  value: "30s"
                - name: LEADER_ELECTION_RETRY_PERIOD
                  value: "5s"
            ```

          ## New in v3.3.1:
          * Optimize memory usage when reading CSV files.

          ## New in v3.3.0:
          * Storage reports now contain `node`, `csi_driver`, and `csi_volume_handle` fields.
          * The PVC capacity is now populated using the `kube_persistentvolume_capacity_bytes` metric instead of `kubelet_volume_stats_capacity_bytes`.
          * To receive resource optimization recommendations for your namespaces, you must now first enable each namespace. To enable a namespace, label it with `insights_cost_management_optimizations='true'`. In the CLI, run:
            ```
              oc label namespace NAMESPACE insights_cost_management_optimizations="true" --overwrite=true
            ```
          * __DEPRECATION NOTICE__: Basic authentication is deprecated and will not be supported beyond December 31, 2024. If the default token authentication method cannot be used, you must switch to [service account](https://console.redhat.com/iam/service-accounts) authentication ([more on creating a service account](https://access.redhat.com/articles/7036194)). Once you have created your service account, follow [this documentation](https://access.redhat.com/documentation/en-us/cost_management_service/1-latest/html-single/integrating_openshift_container_platform_data_into_cost_management/index#service-account-authentication_adding-an-ocp-int) on how to configure your operator to use service account authentication. Service-accounts must also be used if manually uploading payloads to console.redhat.com.

          ## New in v3.2.1:
          * The minimum supported configuration for `upload_cycle` is now 60 (minutes).
          * (Bugfix) many-to-many matching not allowed query fix.
          * (Bugfix) Sequentially collect data during initial install.

          ## New in v3.2.0:
          * Support for amd64, arm64, ppc64le, s390x architectures.
          * add liveness and readiness probes to controller Pod.
          * update pod security settings so that the controller Pod can run in Restricted mode [more info](https://sdk.operatorframework.io/docs/best-practices/pod-security-standards/).

          ## New in v3.1.0:
          * Add service-account authentication type.
          * __Deprecation Notice:__ Basic authentication is deprecated and will be removed in a future version of the operator.

          ## New in v3.0.0:
          * Daily report generation: Operator versions prior to v3.0.0 generated sequential reports. Now, reports are generated starting at 0:00 UTC. Any payloads generated throughout a given day will contain all data starting from 0:00 UTC. Once the next day starts, the previous day's reports are packaged, and the new report again starts at 0:00 UTC for the current day.
          * Failed query retry: In an attempt to prevent missing data, the operator will retry queries from the last successful query time, up to 5 times.

          ## New in v2.0.0:
          * Adds metrics and report generation for resource optimization. This feature will collect additional usage metrics and create a new report in the payload. These metrics are enabled by default, but can be disabled by setting `disable_metrics_collection_resource_optimization` to `true`.
          * Collect all available Prometheus data upon CR creation. This feature only applies to newly created KokuMetricsConfigs. The operator will check the monitoring stack configuration in the `openshift-monitoring` namespace. The operator will use the `retention` period set in the `cluster-monitoring-config` ConfigMap if defined, up to a maximum of 90 days. Otherwise it will fall back to collecting 14 days of data, if available. This data collection may be disabled by setting `collect_previous_data` to `false`. Turning this feature off results in the operator collecting metrics from the time the KokuMetricsConfig is created, forward.

          ## Limitations and Pre-Requisites
          #### Limitations (Potential for metrics data loss)
          * An integration **must** exist in console.redhat.com for an uploaded payload to be processed by Cost Management. The operator sends the payload to the Red Hat Insights Ingress service which usually returns successfully, but the operator does not currently confirm with Cost Management that the payload was processed. After Ingress accepts the uploaded payload, it is deleted from the operator. If the data within the payload is not processed, a gap will be introduced in the usage metrics. Data may be recollected by deleting the `KokuMetricsConfig`, creating a new `KokuMetricsConfig`, and setting `collect_previous_data: true`. This re-collection of data will gather all data stored in Prometheus, up to 90 days.

          **Note** The following limitations are specific to operators configured to run in a restricted network:
          * The `koku-metrics-operator` will not be able to generate new reports if the PVC storage is full. If this occurs, the reports must be manually deleted from the PVC so that the operator can function as normal.
          * The default report retention is 30 reports (about one week's worth of data). The reports must be manually downloaded and uploaded to console.redhat.com every week, or they will be deleted and the data will be lost.

          #### Storage configuration prerequisite
          The operator will attempt to create and use the following PVC when installed:

                volume_claim_template:
                  apiVersion: v1
                  kind: PersistentVolumeClaim
                  metadata:
                    name: koku-metrics-operator-data
                  spec:
                    accessModes:
                      - ReadWriteOnce
                    resources:
                      requests:
                        storage: 10Gi

          If a different PVC should be utilized, a valid PVC should be specified in the KokuMetricsConfig CR as described in the appropriate section below. The PVC to be used may exist already, or the operator will attempt to create it.

          To use the default specification, the follow assumptions must be met:
          1. A default StorageClass is defined.
          2. Dynamic provisioning for that default StorageClass is enabled.

          If these assumptions are not met, the operator will not deploy correctly. In these cases, storage must be manually configured. After configuring storage, a valid PVC template should be supplied in the `volume_claim_template` spec of the KokuMetricsConfig CR.

          ## Configurable parameters:
            * `authentication`:
              * `type: token` -> The authentication method for connecting to `console.redhat.com`. The default and preferred method is `token`. `basic` (deprecated) and `service-account` authentication methods are used when the openshift-config pull-secret does not contain a token for `console.redhat.com`.
              * `secret_name` -> The Secret used by the operator when the authentication type is `basic` (deprecated) or `service-account`. This parameter is required **only if** the authentication type is `basic` (deprecated) or `service-account`.
            * `packaging`:
              * `max_reports_to_store: 30` -> The number of reports to store when configured in air-gapped mode. The default is 30, with a minimum of 1 and no maximum. When the operator is not configured in air-gapped mode, this parameter has no effect. Reports are removed as soon as they are uploaded.
              * `max_size: 100` -> The maximum size for packaged files in Megabytes prior to compression. The default is 100, with a minimum of 1 and maximum of 100.
            * `prometheus_config`:
              * `collect_previous_data: true` -> Toggle for collecting all available data in Prometheus **upon KokuMetricsConfig creation** (This parameter will start to appear in KokuMetricsConfigs that were created prior to v2.0.0 but will not have any effect unless the KokuMetricsConfig is deleted and recreated). The default is `true`. The operator will first look for a `retention` period in the `cluster-monitoring-config` ConfigMap in the `openshift-monitoring` namespace and gather data over this time period up to a maximum of 90 days. If this configuration is not set, the default is 14 days. (New in v2.0.0)
              * `disable_metrics_collection_cost_management: false` -> Toggle for disabling the collection of metrics for Cost Management. The default is false. (New in v2.0.0)
              * `disable_metrics_collection_resource_optimization: false` -> Toggle for disabling the collection of metrics for Resource Optimization. The default is false. (New in v2.0.0)
              * `context_timeout: 120` -> The time in seconds before Prometheus queries timeout due to exceeding context timeout. The default is 120, with a minimum of 10 and maximum of 180.
            * `source`:
              * `name: ''` -> The name of the integration the operator will create in `console.redhat.com`. If the name value is empty, the default intergration name is the **cluster id**.
              * `create_source: false` -> Toggle for whether or not the operator will create the integration in `console.redhat.com`. The default is False. This parameter should be switched to True when an integration does not already exist in `console.redhat.com` for this cluster.
              * `check_cycle: 1440` -> The time in minutes to wait between checking if an integration exists for this cluster. The default is 1440 minutes (24 hrs).
            * `upload`:
              * `upload_cycle: 360` -> The time in minutes between payload uploads. The default is 360 (6 hours), minimum is 60 (1 hour).
              * `upload_toggle: true` -> Toggle to turn upload on or off -> true means upload, false means do not upload (false == air-gapped mode). The default is `true`.
              * `upload_wait` -> The amount of time (in seconds) to pause before uploading a payload. The default is a random number between 0 and 35. This is used to decrease service load, but may be set to `0` if desired.
            * `volume_claim_template` -> see the "Storage configuration prerequisite" section above.

          ## Configure the koku-metrics-operator
          **Note** There are separate instructions for configuring the `koku-metrics-operator` to run in a restricted network.
          ##### Configure authentication
          The default authentication for the operator is `token`. No further steps are required to configure token authentication. If `basic` (deprecated) or `service-account` is the preferred authentication method, a Secret which holds the credentials must be created:
          1. On the left navigation pane, select `Workloads` -> `Secrets` -> select Project: `koku-metrics-operator` -> `Create` -> `Key/Value Secret`
          2. Give the Secret a name and add 2 keys (all lowercase) for the respective authentication type. The values for these keys correspond to console.redhat.com credentials:
              * basic auth (deprecated): `username` and `password`
              * service-account auth: `client_id` and `client_secret`

          3. Select `Create`.
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. For `basic` (deprecated) or `service-account` authentication, edit the following values in the spec:
              * Replace `authentication: type:` with `basic` or `service-account`.
              * Add the `secret_name` field under `authentication`, and set it equal to the name of the authentication Secret that was created above. The spec should look similar to the following:

                  * for basic auth type (deprecated)
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: basic
                  ```

                  * for service-account auth type
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: service-account
                  ```

          3. To configure the koku-metrics-operator to create a cost management integration, edit the following values in the `source` field:
              * Replace the `name` field value with the preferred name of the integration to be created.
              * Replace the `create_source` field value with `true`.

              **Note:** if the integration already exists, replace the empty string value of the `name` field with the existing name, and leave `create_source` as false. This will allow the operator to confirm that the integration exists.

          4. If not specified, the operator will create a default PersistentVolumeClaim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec:

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          5. Select `Create`.

          # Restricted Network Usage (disconnected/air-gapped mode)
          ## Installation
          To install the `koku-metrics-operator` in a restricted network, follow the [olm documentation](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html). The operator is found in the `community-operators` Catalog in the `registry.redhat.io/redhat/community-operator-index:latest` Index. If pruning the index before pushing to the mirrored registry, keep the `koku-metrics-operator` package.

          Within a restricted network, the operator queries prometheus to gather the necessary usage metrics, writes the query results to CSV files, and packages the reports for storage in the PVC. These reports then need to be manually downloaded from the cluster and uploaded to [console.redhat.com](https://console.redhat.com).

          ## Configure the koku-metrics-operator for a restricted network
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. Specify the desired storage. If not specified, the operator will create a default Persistent Volume Claim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec (below is only a template. Any _valid_ `PersistentVolumeClaim` may be defined here):

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      storageClassName: <insert-class-name>
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          3. (Optional) Specify the desired report retention. The operator will retain 30 reports by default. This corresponds to approximately one week's worth of data if using the default packaging cycle. To modify the number of retained reports:
              * Change the `packaging` spec field `max_reports_to_store` to the desired number of reports to retain. Once this max number is reached, the operator will start removing the oldest packages remaining on the PVC:

                ```
                  packaging:
                    max_size_MB: 100
                    max_reports_to_store: 30
                ```

              **Note:** The number of retained reports directly affects the frequency that reports must be manually downloaded from the PVC. Take caution in setting this to a higher number of reports, as the operator cannot write data to the PVC if the storage is full.
          4. To configure the operator to perform in a restricted network, set the `upload_toggle` to `false`:

            ```
              upload:
                upload_cycle: 360
                upload_toggle: false
            ```

          5. Select `Create`.

          ## Download reports from the Operator & clean up the PVC
          If the `koku-metrics-operator` is configured to run in a restricted network, the metric reports will not automatically upload to cost managment. Instead, they need to be manually copied from the PVC for upload to [console.redhat.com](https://console.redhat.com). The default configuration saves one week of reports which means the process of downloading and uploading reports should be repeated weekly to prevent loss of metrics data. To download the reports, complete the following steps:
          1. Create the following Pod, ensuring the `claimName` matches the PVC containing the report data:

            ```
              kind: Pod
              apiVersion: v1
              metadata:
                name: volume-shell
                namespace: koku-metrics-operator
                labels:
                  app: koku-metrics-operator
              spec:
                volumes:
                - name: koku-metrics-operator-reports
                  persistentVolumeClaim:
                    claimName: koku-metrics-operator-data
                containers:
                - name: volume-shell
                  image: busybox
                  command: ['sleep', 'infinity']
                  volumeMounts:
                  - name: koku-metrics-operator-reports
                    mountPath: /tmp/koku-metrics-operator-reports
            ```

          2. Use rsync to copy all of the files ready for upload from the PVC to a local folder:

            ```
            $ oc rsync volume-shell:/tmp/koku-metrics-operator-reports/upload local/path/to/save/folder
            ```

          3. Once confirming that the files have been successfully copied, use rsh to connect to the pod and delete the contents of the upload folder so that they are no longer in storage:

            ```
            $ oc rsh volume-shell
            $ rm /tmp/koku-metrics-operator-reports/upload/*
            ```

          4. (Optional) Delete the pod that was used to connect to the PVC:

            ```
            $ oc delete -f volume-shell.yaml
            ```

          ## Create an Integration
          In a restricted network, the `koku-metrics-operator` cannot automatically create an integration. This process must be done manually. In the console.redhat.com platform, open the [Integrations menu](https://console.redhat.com/settings/integrations/) to begin adding an OpenShift integration to Cost Management:

          Prerequisites:
          * The cluster identifier which can be found in the KokuMetricsConfig CR, the cluster Overview page, or the cluster Help > About.

          Creating an integration:
          1. Navigate to the Integrations menu
          2. Select the `Red Hat` tab
          3. Create a new `Red Hat Openshift Container Platform` integration:
              * give the integration a unique name
              * add the Cost Management application
              * add the cluster identifier
          4. In the Source wizard, review the details and click `Finish` to create the source.

          ## Upload the reports to cost managment
          Uploading reports to cost managment is done through curl:

              $ curl -vvvv -F "file=@FILE_NAME.tar.gz;type=application/vnd.redhat.hccm.tar+tgz" https://console.redhat.com/api/ingress/v1/upload -H "Authorization: Bearer ${ACCESS_TOKEN}"

          where `FILE_NAME` is the name of the report to upload. The `ACCESS_TOKEN` is acquired using a service account. See documentation on [creating and managing a service account](https://docs.redhat.com/en/documentation/red_hat_customer_portal/1/html/creating_and_managing_service_accounts).
        displayName: Koku Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cost
        - management
        - usage
        - monitor
        links:
        - name: Koku Metrics Operator source code repository
          url: https://github.com/project-koku/koku-metrics-operator
        maintainers:
        - email: costmanagement@redhat.com
          name: costmanagement
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/koku-metrics-operator:4.3.0
        - quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
        version: 4.3.0
      entries:
      - name: koku-metrics-operator.v4.3.0
        version: 4.3.0
      - name: koku-metrics-operator.v4.2.0
        version: 4.2.0
      - name: koku-metrics-operator.v4.1.0
        version: 4.1.0
      - name: koku-metrics-operator.v4.0.0
        version: 4.0.0
      - name: koku-metrics-operator.v3.3.2
        version: 3.3.2
      - name: koku-metrics-operator.v3.3.1
        version: 3.3.1
      - name: koku-metrics-operator.v3.3.0
        version: 3.3.0
      - name: koku-metrics-operator.v3.2.1
        version: 3.2.1
      - name: koku-metrics-operator.v3.2.0
        version: 3.2.0
      - name: koku-metrics-operator.v3.1.0
        version: 3.1.0
      - name: koku-metrics-operator.v3.0.1
        version: 3.0.1
      - name: koku-metrics-operator.v3.0.0
        version: 3.0.0
      - name: koku-metrics-operator.v2.0.0
        version: 2.0.0
      - name: koku-metrics-operator.v1.2.0
        version: 1.2.0
      - name: koku-metrics-operator.v1.1.9
        version: 1.1.9
      - name: koku-metrics-operator.v1.1.8
        version: 1.1.8
      - name: koku-metrics-operator.v1.1.7
        version: 1.1.7
      - name: koku-metrics-operator.v1.1.6
        version: 1.1.6
      - name: koku-metrics-operator.v1.1.5
        version: 1.1.5
      - name: koku-metrics-operator.v1.1.4
        version: 1.1.4
      - name: koku-metrics-operator.v1.1.3
        version: 1.1.3
      - name: koku-metrics-operator.v1.1.2
        version: 1.1.2
      - name: koku-metrics-operator.v1.1.1
        version: 1.1.1
      - name: koku-metrics-operator.v0.9.8
        version: 0.9.8
      - name: koku-metrics-operator.v0.9.7
        version: 0.9.7
      - name: koku-metrics-operator.v0.9.6
        version: 0.9.6
      - name: koku-metrics-operator.v0.9.5
        version: 0.9.5
      - name: koku-metrics-operator.v0.9.4
        version: 0.9.4
      - name: koku-metrics-operator.v0.9.3
        version: 0.9.3
      - name: koku-metrics-operator.v0.9.2
        version: 0.9.2
      - name: koku-metrics-operator.v0.9.1
        version: 0.9.1
      - name: koku-metrics-operator.v0.9.0
        version: 0.9.0
      name: alpha
    - currentCSV: koku-metrics-operator.v4.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
                "kind": "CostManagementMetricsConfig",
                "metadata": {
                  "name": "costmanagementmetricscfg-sample-v1beta1"
                },
                "spec": {
                  "authentication": {
                    "type": "token"
                  },
                  "packaging": {
                    "max_reports_to_store": 30,
                    "max_size_MB": 100
                  },
                  "prometheus_config": {
                    "collect_previous_data": true,
                    "context_timeout": 120,
                    "disable_metrics_collection_cost_management": false,
                    "disable_metrics_collection_resource_optimization": false
                  },
                  "source": {
                    "check_cycle": 1440,
                    "create_source": false,
                    "name": ""
                  },
                  "upload": {
                    "upload_cycle": 360,
                    "upload_toggle": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
          createdAt: "2025-10-29T15:49:19Z"
          description: A Golang-based OpenShift Operator that generates and uploads
            OpenShift usage metrics to cost management.
          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: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
              "kind": "CostManagementMetricsConfig",
              "metadata": {
                "name": "costmanagementmetricscfg-sample-v1beta1"
              },
              "spec": {
                "authentication": {
                  "token_url": "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token",
                  "type": "token"
                },
                "api_url": "https://console.redhat.com/",
                "packaging": {
                  "max_reports_to_store": 30,
                  "max_size_MB": 100
                },
                "upload": {
                  "ingress_path": "/api/ingress/v1/upload",
                  "upload_cycle": 360,
                  "upload_toggle": true,
                  "validate_cert": true
                },
                "prometheus_config": {
                  "collect_previous_data": true,
                  "context_timeout": 120,
                  "disable_metrics_collection_cost_management": false,
                  "disable_metrics_collection_resource_optimization": false,
                  "service_address": "https://thanos-querier.openshift-monitoring.svc:9091",
                  "skip_tls_verification": false
                },
                "source": {
                  "check_cycle": 1440,
                  "create_source": false,
                  "name": "",
                  "sources_path": "/api/sources/v1.0/"
                }
              }
            }
          operatorframework.io/suggested-namespace: koku-metrics-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/project-koku/koku-metrics-operator
          support: Cost Management
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CostManagementMetricsConfig is the Schema for the costmanagementmetricsconfig
              API
            displayName: Cost Management Metrics Config
            kind: CostManagementMetricsConfig
            name: costmanagementmetricsconfigs.costmanagement-metrics-cfg.openshift.io
            version: v1beta1
        description: |
          # Koku Metrics Operator
          ## Introduction
          The `koku-metrics-operator` is a component of the [cost managment](https://access.redhat.com/documentation/en-us/cost_management_service) service for Openshift. The operator runs on the latest supported versions of Openshift. This operator obtains OpenShift usage data by querying Prometheus every hour to create metric reports that it uploads to Cost Management at [console.redhat.com](https://console.redhat.com) to be processed. For more information, reach out to <costmanagement@redhat.com>.

          This operator is capable of functioning within a disconnected/restricted network (aka air-gapped mode). In this mode, the operator will store the packaged reports for manual retrieval instead of being uploaded to Cost Management. Documentation for installing an operator within a restricted network can be found [here](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html).

          ## Features and Capabilities
          #### Metrics collection:
          The Koku Metrics Operator (`koku-metrics-operator`) collects the metrics required for Cost Management by:
          * Querying Prometheus to gather the necessary metrics for Cost Management.
          * Writing the results of Prometheus queries to CSV report files.
          * Packaging the CSV report files into tarballs.

          #### Additional Capabilities:
          * Resource Optimization metrics collection.
          * The operator can be configured to gather all previous data within the configured retention period or a maximum of 90 days. The default data collection period is the 14 previous days. This setting is only applicable to newly created KokuMetricsConfigs.
          * The operator can be configured to automatically upload the packaged reports to Cost Management through Red Hat Insights Ingress service.
          * The operator can create an integration in console.redhat.com. An integration is required for Cost Management to process the uploaded packages.
          * PersistentVolumeClaim (PVC) configuration: The KokuMetricsConfig CR can accept a PVC definition and the operator will create and mount the PVC. If one is not provided, a default PVC will be created.
          * Restricted network installation: this operator can function on a restricted network. In this mode, the operator stores the packaged reports for manual retrieval.

          ## New in v4.3.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for cost management.

          ## New in v4.2.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for resource optimization.
          * (Bugfix) Fixed custom CA certificate validation and configuration issues.
          * (Bugfix) Fixed issue where ROS queries were missing workload metadata for namespaces labeled only with the legacy `insights_cost_management_optimizations` label.

          ## New in v4.1.0:
          * Enabled gathering and reporting namespace metrics to provide more granular data for resource optimization.
          * Updated CSV report filenames to be more descriptive, replacing the previous generic UID-based names with content-reflective names.
          * Introduced a new generic label, `cost_management_optimizations`, for resource optimization while ensuring backward compatibility with the older `insights_cost_management_optimizations` label.

          ## New in v4.0.0:
          * **Virtual Machine Metrics:** Adds capabilities for collecting metrics and generating reports for running virtual machines within your OpenShift environment.
          * **Progress towards FIPS 140 Compliance:** The operator is using the Go Cryptographic Module v1.0.0 to progress toward FIPS 140 compliance. Although this module is not validated at the time of this release, the operator aims to meet stricter security standards when the module does successfully achieve FIPS validation.
          * **API Name Change:** The Custom Resource Definition (CRD) for configuring the upstream `Koku Metrics Operator` was renamed from `KokuMetricsConfig` to `CostManagementMetricsConfig`.

          ### NOTE:
            * The API name change impacts only users of the upstream (community) Koku Metrics Operator.
            * The downstream (Red Hat-supported) Cost Management Metrics Operator is not impacted by this change and users should continue using their existing configurations.

          **Important Upgrade Instructions:**

            If you are upgrading the upstream Koku Metrics Operator to version 4.0.0 or higher, you must manually migrate your configuration. The operator will no longer recognize existing `KokuMetricsConfig` resources.

            To successfully upgrade and retain your operator's configuration, complete the following steps. You can use the provided `oc` commands replacing the angle brackets (`< >`) with your specific values:

            1. Backup existing configuration (recommended):

               Before you upgrade, retrieve the details of your current `KokuMetricsConfig` instance to help you recreate it with the new API name.

               ```
               oc get kokumetricsconfig -n koku-metrics-operator <your-config-name> -o yaml > koku-metrics-config-backup.yaml
               ```

            2. Delete the previous `KokuMetricsConfig` instance (recommended):

                After the operator is upgraded to `version 4.0.0`, delete any existing `KokuMetricsConfig` resources.

                ```
                oc delete kokumetricsconfig -n koku-metrics-operator <your-config-name>
                ```

            3. Create the new `CostManagementMetricsConfig` instance:

                Using the information from your backup (or a new configuration), create a new `CostManagementMetricsConfig` instance. Adjust the spec section based on your specific needs. For more information about configurations, [refer to the configurable parameters](#configurable-parameters).

            4. Apply your new configuration:

                ```
                oc apply -f <your-costmanagementmetricsconfig-file>.yaml -n koku-metrics-operator
                ```

          ## New in v3.3.2:
          * Leader election settings are now configurable via environment variables. These variables can be modified in the operator [Subscription](https://github.com/operator-framework/operator-lifecycle-manager/blob/5a01f50258003e248bd5630df0837fe0bb0f1cb7/doc/design/subscription-config.md). The values should be specified as durations in seconds in the format `<number-of-seconds>s`. The default values for `LEADER_ELECTION_LEASE_DURATION`, `LEADER_ELECTION_RENEW_DEADLINE`, and `LEADER_ELECTION_RETRY_PERIOD` are '60s', '30s', and '5s', respectively.

            ```
            kind: Subscription
            metadata:
            ...
            spec:
              ...
              config:
                env:
                - name: LEADER_ELECTION_LEASE_DURATION
                  value: "60s"
                - name: LEADER_ELECTION_RENEW_DEADLINE
                  value: "30s"
                - name: LEADER_ELECTION_RETRY_PERIOD
                  value: "5s"
            ```

          ## New in v3.3.1:
          * Optimize memory usage when reading CSV files.

          ## New in v3.3.0:
          * Storage reports now contain `node`, `csi_driver`, and `csi_volume_handle` fields.
          * The PVC capacity is now populated using the `kube_persistentvolume_capacity_bytes` metric instead of `kubelet_volume_stats_capacity_bytes`.
          * To receive resource optimization recommendations for your namespaces, you must now first enable each namespace. To enable a namespace, label it with `insights_cost_management_optimizations='true'`. In the CLI, run:
            ```
              oc label namespace NAMESPACE insights_cost_management_optimizations="true" --overwrite=true
            ```
          * __DEPRECATION NOTICE__: Basic authentication is deprecated and will not be supported beyond December 31, 2024. If the default token authentication method cannot be used, you must switch to [service account](https://console.redhat.com/iam/service-accounts) authentication ([more on creating a service account](https://access.redhat.com/articles/7036194)). Once you have created your service account, follow [this documentation](https://access.redhat.com/documentation/en-us/cost_management_service/1-latest/html-single/integrating_openshift_container_platform_data_into_cost_management/index#service-account-authentication_adding-an-ocp-int) on how to configure your operator to use service account authentication. Service-accounts must also be used if manually uploading payloads to console.redhat.com.

          ## New in v3.2.1:
          * The minimum supported configuration for `upload_cycle` is now 60 (minutes).
          * (Bugfix) many-to-many matching not allowed query fix.
          * (Bugfix) Sequentially collect data during initial install.

          ## New in v3.2.0:
          * Support for amd64, arm64, ppc64le, s390x architectures.
          * add liveness and readiness probes to controller Pod.
          * update pod security settings so that the controller Pod can run in Restricted mode [more info](https://sdk.operatorframework.io/docs/best-practices/pod-security-standards/).

          ## New in v3.1.0:
          * Add service-account authentication type.
          * __Deprecation Notice:__ Basic authentication is deprecated and will be removed in a future version of the operator.

          ## New in v3.0.0:
          * Daily report generation: Operator versions prior to v3.0.0 generated sequential reports. Now, reports are generated starting at 0:00 UTC. Any payloads generated throughout a given day will contain all data starting from 0:00 UTC. Once the next day starts, the previous day's reports are packaged, and the new report again starts at 0:00 UTC for the current day.
          * Failed query retry: In an attempt to prevent missing data, the operator will retry queries from the last successful query time, up to 5 times.

          ## New in v2.0.0:
          * Adds metrics and report generation for resource optimization. This feature will collect additional usage metrics and create a new report in the payload. These metrics are enabled by default, but can be disabled by setting `disable_metrics_collection_resource_optimization` to `true`.
          * Collect all available Prometheus data upon CR creation. This feature only applies to newly created KokuMetricsConfigs. The operator will check the monitoring stack configuration in the `openshift-monitoring` namespace. The operator will use the `retention` period set in the `cluster-monitoring-config` ConfigMap if defined, up to a maximum of 90 days. Otherwise it will fall back to collecting 14 days of data, if available. This data collection may be disabled by setting `collect_previous_data` to `false`. Turning this feature off results in the operator collecting metrics from the time the KokuMetricsConfig is created, forward.

          ## Limitations and Pre-Requisites
          #### Limitations (Potential for metrics data loss)
          * An integration **must** exist in console.redhat.com for an uploaded payload to be processed by Cost Management. The operator sends the payload to the Red Hat Insights Ingress service which usually returns successfully, but the operator does not currently confirm with Cost Management that the payload was processed. After Ingress accepts the uploaded payload, it is deleted from the operator. If the data within the payload is not processed, a gap will be introduced in the usage metrics. Data may be recollected by deleting the `KokuMetricsConfig`, creating a new `KokuMetricsConfig`, and setting `collect_previous_data: true`. This re-collection of data will gather all data stored in Prometheus, up to 90 days.

          **Note** The following limitations are specific to operators configured to run in a restricted network:
          * The `koku-metrics-operator` will not be able to generate new reports if the PVC storage is full. If this occurs, the reports must be manually deleted from the PVC so that the operator can function as normal.
          * The default report retention is 30 reports (about one week's worth of data). The reports must be manually downloaded and uploaded to console.redhat.com every week, or they will be deleted and the data will be lost.

          #### Storage configuration prerequisite
          The operator will attempt to create and use the following PVC when installed:

                volume_claim_template:
                  apiVersion: v1
                  kind: PersistentVolumeClaim
                  metadata:
                    name: koku-metrics-operator-data
                  spec:
                    accessModes:
                      - ReadWriteOnce
                    resources:
                      requests:
                        storage: 10Gi

          If a different PVC should be utilized, a valid PVC should be specified in the KokuMetricsConfig CR as described in the appropriate section below. The PVC to be used may exist already, or the operator will attempt to create it.

          To use the default specification, the follow assumptions must be met:
          1. A default StorageClass is defined.
          2. Dynamic provisioning for that default StorageClass is enabled.

          If these assumptions are not met, the operator will not deploy correctly. In these cases, storage must be manually configured. After configuring storage, a valid PVC template should be supplied in the `volume_claim_template` spec of the KokuMetricsConfig CR.

          ## Configurable parameters:
            * `authentication`:
              * `type: token` -> The authentication method for connecting to `console.redhat.com`. The default and preferred method is `token`. `basic` (deprecated) and `service-account` authentication methods are used when the openshift-config pull-secret does not contain a token for `console.redhat.com`.
              * `secret_name` -> The Secret used by the operator when the authentication type is `basic` (deprecated) or `service-account`. This parameter is required **only if** the authentication type is `basic` (deprecated) or `service-account`.
            * `packaging`:
              * `max_reports_to_store: 30` -> The number of reports to store when configured in air-gapped mode. The default is 30, with a minimum of 1 and no maximum. When the operator is not configured in air-gapped mode, this parameter has no effect. Reports are removed as soon as they are uploaded.
              * `max_size: 100` -> The maximum size for packaged files in Megabytes prior to compression. The default is 100, with a minimum of 1 and maximum of 100.
            * `prometheus_config`:
              * `collect_previous_data: true` -> Toggle for collecting all available data in Prometheus **upon KokuMetricsConfig creation** (This parameter will start to appear in KokuMetricsConfigs that were created prior to v2.0.0 but will not have any effect unless the KokuMetricsConfig is deleted and recreated). The default is `true`. The operator will first look for a `retention` period in the `cluster-monitoring-config` ConfigMap in the `openshift-monitoring` namespace and gather data over this time period up to a maximum of 90 days. If this configuration is not set, the default is 14 days. (New in v2.0.0)
              * `disable_metrics_collection_cost_management: false` -> Toggle for disabling the collection of metrics for Cost Management. The default is false. (New in v2.0.0)
              * `disable_metrics_collection_resource_optimization: false` -> Toggle for disabling the collection of metrics for Resource Optimization. The default is false. (New in v2.0.0)
              * `context_timeout: 120` -> The time in seconds before Prometheus queries timeout due to exceeding context timeout. The default is 120, with a minimum of 10 and maximum of 180.
            * `source`:
              * `name: ''` -> The name of the integration the operator will create in `console.redhat.com`. If the name value is empty, the default intergration name is the **cluster id**.
              * `create_source: false` -> Toggle for whether or not the operator will create the integration in `console.redhat.com`. The default is False. This parameter should be switched to True when an integration does not already exist in `console.redhat.com` for this cluster.
              * `check_cycle: 1440` -> The time in minutes to wait between checking if an integration exists for this cluster. The default is 1440 minutes (24 hrs).
            * `upload`:
              * `upload_cycle: 360` -> The time in minutes between payload uploads. The default is 360 (6 hours), minimum is 60 (1 hour).
              * `upload_toggle: true` -> Toggle to turn upload on or off -> true means upload, false means do not upload (false == air-gapped mode). The default is `true`.
              * `upload_wait` -> The amount of time (in seconds) to pause before uploading a payload. The default is a random number between 0 and 35. This is used to decrease service load, but may be set to `0` if desired.
            * `volume_claim_template` -> see the "Storage configuration prerequisite" section above.

          ## Configure the koku-metrics-operator
          **Note** There are separate instructions for configuring the `koku-metrics-operator` to run in a restricted network.
          ##### Configure authentication
          The default authentication for the operator is `token`. No further steps are required to configure token authentication. If `basic` (deprecated) or `service-account` is the preferred authentication method, a Secret which holds the credentials must be created:
          1. On the left navigation pane, select `Workloads` -> `Secrets` -> select Project: `koku-metrics-operator` -> `Create` -> `Key/Value Secret`
          2. Give the Secret a name and add 2 keys (all lowercase) for the respective authentication type. The values for these keys correspond to console.redhat.com credentials:
              * basic auth (deprecated): `username` and `password`
              * service-account auth: `client_id` and `client_secret`

          3. Select `Create`.
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. For `basic` (deprecated) or `service-account` authentication, edit the following values in the spec:
              * Replace `authentication: type:` with `basic` or `service-account`.
              * Add the `secret_name` field under `authentication`, and set it equal to the name of the authentication Secret that was created above. The spec should look similar to the following:

                  * for basic auth type (deprecated)
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: basic
                  ```

                  * for service-account auth type
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: service-account
                  ```

          3. To configure the koku-metrics-operator to create a cost management integration, edit the following values in the `source` field:
              * Replace the `name` field value with the preferred name of the integration to be created.
              * Replace the `create_source` field value with `true`.

              **Note:** if the integration already exists, replace the empty string value of the `name` field with the existing name, and leave `create_source` as false. This will allow the operator to confirm that the integration exists.

          4. If not specified, the operator will create a default PersistentVolumeClaim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec:

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          5. Select `Create`.

          # Restricted Network Usage (disconnected/air-gapped mode)
          ## Installation
          To install the `koku-metrics-operator` in a restricted network, follow the [olm documentation](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html). The operator is found in the `community-operators` Catalog in the `registry.redhat.io/redhat/community-operator-index:latest` Index. If pruning the index before pushing to the mirrored registry, keep the `koku-metrics-operator` package.

          Within a restricted network, the operator queries prometheus to gather the necessary usage metrics, writes the query results to CSV files, and packages the reports for storage in the PVC. These reports then need to be manually downloaded from the cluster and uploaded to [console.redhat.com](https://console.redhat.com).

          ## Configure the koku-metrics-operator for a restricted network
          ##### Create the KokuMetricsConfig
          Configure the koku-metrics-operator by creating a `KokuMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `koku-metrics-operator` -> `KokuMetricsConfig` -> `Create Instance`.
          2. Specify the desired storage. If not specified, the operator will create a default Persistent Volume Claim called `koku-metrics-operator-data` with 10Gi of storage. To configure the koku-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec (below is only a template. Any _valid_ `PersistentVolumeClaim` may be defined here):

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      storageClassName: <insert-class-name>
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          3. (Optional) Specify the desired report retention. The operator will retain 30 reports by default. This corresponds to approximately one week's worth of data if using the default packaging cycle. To modify the number of retained reports:
              * Change the `packaging` spec field `max_reports_to_store` to the desired number of reports to retain. Once this max number is reached, the operator will start removing the oldest packages remaining on the PVC:

                ```
                  packaging:
                    max_size_MB: 100
                    max_reports_to_store: 30
                ```

              **Note:** The number of retained reports directly affects the frequency that reports must be manually downloaded from the PVC. Take caution in setting this to a higher number of reports, as the operator cannot write data to the PVC if the storage is full.
          4. To configure the operator to perform in a restricted network, set the `upload_toggle` to `false`:

            ```
              upload:
                upload_cycle: 360
                upload_toggle: false
            ```

          5. Select `Create`.

          ## Download reports from the Operator & clean up the PVC
          If the `koku-metrics-operator` is configured to run in a restricted network, the metric reports will not automatically upload to cost managment. Instead, they need to be manually copied from the PVC for upload to [console.redhat.com](https://console.redhat.com). The default configuration saves one week of reports which means the process of downloading and uploading reports should be repeated weekly to prevent loss of metrics data. To download the reports, complete the following steps:
          1. Create the following Pod, ensuring the `claimName` matches the PVC containing the report data:

            ```
              kind: Pod
              apiVersion: v1
              metadata:
                name: volume-shell
                namespace: koku-metrics-operator
                labels:
                  app: koku-metrics-operator
              spec:
                volumes:
                - name: koku-metrics-operator-reports
                  persistentVolumeClaim:
                    claimName: koku-metrics-operator-data
                containers:
                - name: volume-shell
                  image: busybox
                  command: ['sleep', 'infinity']
                  volumeMounts:
                  - name: koku-metrics-operator-reports
                    mountPath: /tmp/koku-metrics-operator-reports
            ```

          2. Use rsync to copy all of the files ready for upload from the PVC to a local folder:

            ```
            $ oc rsync volume-shell:/tmp/koku-metrics-operator-reports/upload local/path/to/save/folder
            ```

          3. Once confirming that the files have been successfully copied, use rsh to connect to the pod and delete the contents of the upload folder so that they are no longer in storage:

            ```
            $ oc rsh volume-shell
            $ rm /tmp/koku-metrics-operator-reports/upload/*
            ```

          4. (Optional) Delete the pod that was used to connect to the PVC:

            ```
            $ oc delete -f volume-shell.yaml
            ```

          ## Create an Integration
          In a restricted network, the `koku-metrics-operator` cannot automatically create an integration. This process must be done manually. In the console.redhat.com platform, open the [Integrations menu](https://console.redhat.com/settings/integrations/) to begin adding an OpenShift integration to Cost Management:

          Prerequisites:
          * The cluster identifier which can be found in the KokuMetricsConfig CR, the cluster Overview page, or the cluster Help > About.

          Creating an integration:
          1. Navigate to the Integrations menu
          2. Select the `Red Hat` tab
          3. Create a new `Red Hat Openshift Container Platform` integration:
              * give the integration a unique name
              * add the Cost Management application
              * add the cluster identifier
          4. In the Source wizard, review the details and click `Finish` to create the source.

          ## Upload the reports to cost managment
          Uploading reports to cost managment is done through curl:

              $ curl -vvvv -F "file=@FILE_NAME.tar.gz;type=application/vnd.redhat.hccm.tar+tgz" https://console.redhat.com/api/ingress/v1/upload -H "Authorization: Bearer ${ACCESS_TOKEN}"

          where `FILE_NAME` is the name of the report to upload. The `ACCESS_TOKEN` is acquired using a service account. See documentation on [creating and managing a service account](https://docs.redhat.com/en/documentation/red_hat_customer_portal/1/html/creating_and_managing_service_accounts).
        displayName: Koku Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cost
        - management
        - usage
        - monitor
        links:
        - name: Koku Metrics Operator source code repository
          url: https://github.com/project-koku/koku-metrics-operator
        maintainers:
        - email: costmanagement@redhat.com
          name: costmanagement
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/project-koku/koku-metrics-operator@sha256:cd508e50f21961491f200bc691a705c336ed862eae8fad1fcd8f59388005fb09
        - quay.io/community-operator-pipeline-prod/koku-metrics-operator:4.3.0
        version: 4.3.0
      entries:
      - name: koku-metrics-operator.v4.3.0
        version: 4.3.0
      - name: koku-metrics-operator.v4.2.0
        version: 4.2.0
      - name: koku-metrics-operator.v4.1.0
        version: 4.1.0
      - name: koku-metrics-operator.v4.0.0
        version: 4.0.0
      - name: koku-metrics-operator.v3.3.2
        version: 3.3.2
      - name: koku-metrics-operator.v3.3.1
        version: 3.3.1
      - name: koku-metrics-operator.v3.3.0
        version: 3.3.0
      - name: koku-metrics-operator.v3.2.1
        version: 3.2.1
      - name: koku-metrics-operator.v3.2.0
        version: 3.2.0
      - name: koku-metrics-operator.v3.1.0
        version: 3.1.0
      - name: koku-metrics-operator.v3.0.1
        version: 3.0.1
      - name: koku-metrics-operator.v3.0.0
        version: 3.0.0
      - name: koku-metrics-operator.v2.0.0
        version: 2.0.0
      - name: koku-metrics-operator.v1.2.0
        version: 1.2.0
      - name: koku-metrics-operator.v1.1.9
        version: 1.1.9
      - name: koku-metrics-operator.v1.1.8
        version: 1.1.8
      - name: koku-metrics-operator.v1.1.7
        version: 1.1.7
      - name: koku-metrics-operator.v1.1.6
        version: 1.1.6
      - name: koku-metrics-operator.v1.1.5
        version: 1.1.5
      - name: koku-metrics-operator.v1.1.4
        version: 1.1.4
      - name: koku-metrics-operator.v1.1.3
        version: 1.1.3
      - name: koku-metrics-operator.v1.1.2
        version: 1.1.2
      - name: koku-metrics-operator.v1.1.1
        version: 1.1.1
      - name: koku-metrics-operator.v0.9.8
        version: 0.9.8
      - name: koku-metrics-operator.v0.9.7
        version: 0.9.7
      - name: koku-metrics-operator.v0.9.6
        version: 0.9.6
      - name: koku-metrics-operator.v0.9.5
        version: 0.9.5
      - name: koku-metrics-operator.v0.9.4
        version: 0.9.4
      - name: koku-metrics-operator.v0.9.3
        version: 0.9.3
      - name: koku-metrics-operator.v0.9.2
        version: 0.9.2
      - name: koku-metrics-operator.v0.9.1
        version: 0.9.1
      - name: koku-metrics-operator.v0.9.0
        version: 0.9.0
      name: beta
    defaultChannel: beta
    packageName: koku-metrics-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: quay-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: quay-operator.v3.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:d73321dfa6dcced943405fae45c2ccf841663e0ab57e8be8cc1ddba251b7ce08
          createdAt: 2021-11-02 11:11 UTC
          description: Opinionated deployment of Red Hat Quay on Kubernetes.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:2a471300f70d3995ab7e9fcc3df35c5513e73fcc1d140fb4d651a1c3eae949eb
        - registry.redhat.io/quay/quay-operator-bundle@sha256:b793aef88881aa75d47a22377d8932efc0b497bb01b2f3f376d64891d1dace54
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:d73321dfa6dcced943405fae45c2ccf841663e0ab57e8be8cc1ddba251b7ce08
        - registry.redhat.io/quay/quay-rhel8@sha256:ed8c4249d376b4226e35bf088ffe5bf688bf68b059718c5e218aa1184fe048d0
        - registry.redhat.io/rhel8/postgresql-10@sha256:b2695e9af379624621bef9ec785f0cb618bfdabae98c5f17eea82ff5f8d2d5cb
        - registry.redhat.io/rhel8/redis-5@sha256:8d7e66927ce4b3050ca15ab4df4dbaeb593cb855e16fb0a6f5dde950e9db7db9
        - registry.redhat.io/quay/clair-rhel8@sha256:af5e2fd1543365b365b1a6cce00b86e44fe5e66cde6491e9b113324c21f629c8
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:0e6bef51caf479074925115fa11621c41bcada375cc1925d0511a73084b93543
        version: 3.4.7
      entries:
      - name: quay-operator.v3.4.7
        version: 3.4.7
      name: quay-v3.4
    - currentCSV: quay-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:1f5e4cc9ec2d9b8b89d82f1a698acfa1ac2764ca4ebc5c85b3417da7730b5867
          createdAt: 2021-09-09 20:09 UTC
          description: Opinionated deployment of Red Hat Quay on Kubernetes.
          olm.skipRange: '>=3.4.x <3.5.7'
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.5.7
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:7fe408a1e428b2d0660cb578c1dcd4b961f838e37166fe7b21b2bed70d288594
        - registry.redhat.io/quay/quay-operator-bundle@sha256:722cf3c05eb5663a737cb1385b971b6d1f0c8b2595d5ac425f7b100c25e2fd26
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:1f5e4cc9ec2d9b8b89d82f1a698acfa1ac2764ca4ebc5c85b3417da7730b5867
        - registry.redhat.io/quay/quay-rhel8@sha256:c599892160ac20c744d833603d9375923af7aec1edfd86982b7513e02fb6d463
        - registry.redhat.io/rhel8/postgresql-10@sha256:a723bb3a7a5046527b9a5b628ddfb211c526e3814cc4242262c4f8a016f38edd
        - registry.redhat.io/rhel8/redis-5@sha256:7916760ff03af5ca230df5e96b2bf353fbf1829386de1c063c05f623837be7f7
        - registry.redhat.io/quay/clair-rhel8@sha256:d242bd9d37f95b2a5a8267b3f1eba02c671d46121712baae43466c86d1da89f9
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:5d72577ccfd63c6d9ad712b376b604c40d2d3ecb53e391e2ee0d18caa6e0225a
        version: 3.5.7
      entries:
      - name: quay-operator.v3.5.7
        version: 3.5.7
      name: quay-v3.5
    - currentCSV: quay-operator.v3.10.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:3dd66f1963715d3e38540c8020c3c18cddd0019f342cceff22aa6412844e06da
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.7.x <3.10.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.10.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-rhel8@sha256:9837d3583892538c03a1918510c507be46290ea4045ba22de8cfd416a50a787d
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:3dd66f1963715d3e38540c8020c3c18cddd0019f342cceff22aa6412844e06da
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/quay/clair-rhel8@sha256:3967b2027cc8ee045da7c6a214c959f8651fb873bd60b81cd78f167e57ba95a5
        - registry.redhat.io/quay/quay-operator-bundle@sha256:91ce9e64184afb90b00360c64f5ba37d30130ab0344b2439b93db15f2b35b74d
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:56c4668b72768c2b7017215f547039b4783498efd89d17dc3fdc7d0444cc8ad9
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:907dd22eb16925813711a70a3d0df30963a3d1d0c060ca9b4f071ec101f14b87
        version: 3.10.17
      entries:
      - name: quay-operator.v3.10.17
        version: 3.10.17
      - name: quay-operator.v3.10.16
        version: 3.10.16
      - name: quay-operator.v3.10.15
        version: 3.10.15
      - name: quay-operator.v3.10.14
        version: 3.10.14
      - name: quay-operator.v3.10.13
        version: 3.10.13
      - name: quay-operator.v3.10.12
        version: 3.10.12
      - name: quay-operator.v3.10.11
        version: 3.10.11
      - name: quay-operator.v3.10.10
        version: 3.10.10
      - name: quay-operator.v3.10.9
        version: 3.10.9
      - name: quay-operator.v3.10.8
        version: 3.10.8
      - name: quay-operator.v3.10.7
        version: 3.10.7
      - name: quay-operator.v3.10.6
        version: 3.10.6
      - name: quay-operator.v3.10.5
        version: 3.10.5
      - name: quay-operator.v3.10.4
        version: 3.10.4
      - name: quay-operator.v3.10.3
        version: 3.10.3
      - name: quay-operator.v3.10.2
        version: 3.10.2
      - name: quay-operator.v3.10.1
        version: 3.10.1
      - name: quay-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: quay-operator.v3.11.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:cb3a41caa3a572b7981d424be2a32b8e881127cc03b557ee0a36ab13f430b897
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.8.x <3.11.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: v3.11.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures ODF for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For production deployment of
          Red Hat OpenShift Data Foundation, please refer to the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-rhel8@sha256:7230fa1d4970e877cb6de8716e99a9bd43302c0ff23b4501f2aa806a8d496d9b
        - registry.redhat.io/rhel8/postgresql-13@sha256:35d86936c539007a78a89869a14b87b76788fe117df442a670f63936b978ed5b
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:11b8c9d64c42f0f0c7b2df491bba859d0410666a8ef1d2fd41eb77e4ad9d2dc8
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:cb3a41caa3a572b7981d424be2a32b8e881127cc03b557ee0a36ab13f430b897
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/clair-rhel8@sha256:3746677ef1cb0ddd4f237ab598b14cf0bc76dcce080ffde127b5bba87ffe6693
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:1a083cd72502609427428ed22fb60846613ddb41a4613496c5cddc797b382d3a
        - registry.redhat.io/quay/quay-operator-bundle@sha256:f19ae051041c46fe7587f903a9c6221bcbe8be2c4cc0235739f7592eb93ae164
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        version: 3.11.13
      entries:
      - name: quay-operator.v3.11.13
        version: 3.11.13
      - name: quay-operator.v3.11.12
        version: 3.11.12
      - name: quay-operator.v3.11.11
        version: 3.11.11
      - name: quay-operator.v3.11.10
        version: 3.11.10
      - name: quay-operator.v3.11.9
        version: 3.11.9
      - name: quay-operator.v3.11.8
        version: 3.11.8
      - name: quay-operator.v3.11.7
        version: 3.11.7
      - name: quay-operator.v3.11.6
        version: 3.11.6
      - name: quay-operator.v3.11.5
        version: 3.11.5
      - name: quay-operator.v3.11.4
        version: 3.11.4
      - name: quay-operator.v3.11.3
        version: 3.11.3
      - name: quay-operator.v3.11.2
        version: 3.11.2
      - name: quay-operator.v3.11.1
        version: 3.11.1
      - name: quay-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: quay-operator.v3.12.13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:48417bfa200db498b71a750dd147c1c11405ea4b61ad41d32731923b56a0bc43
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.9.x <3.12.13'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.12.13
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:48417bfa200db498b71a750dd147c1c11405ea4b61ad41d32731923b56a0bc43
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/quay/clair-rhel8@sha256:8879a32314409b2367d8cdc0d7076667dab8a72df1b2f06ed6078ba022adb082
        - registry.redhat.io/quay/quay-operator-bundle@sha256:1c915a6f813564b9bf8062ea5c6a83097a8dd78a38fda0171fae9cc8d81299c7
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:206d249da9c156fc7b76eacc40759b3accb82dce85aa2bb2bbd7a33af52ee104
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:b3a950f2c8a123b9bcba240db407608dab6a4fb00cb9fcc6e083e07144928390
        - registry.redhat.io/quay/quay-rhel8@sha256:1076d78eba4bef63cf45ab04c1dff52f0407ab9e16fb4729bee7c1ab642f59b7
        version: 3.12.13
      entries:
      - name: quay-operator.v3.12.13
        version: 3.12.13
      - name: quay-operator.v3.12.12
        version: 3.12.12
      - name: quay-operator.v3.12.11
        version: 3.12.11
      - name: quay-operator.v3.12.10
        version: 3.12.10
      - name: quay-operator.v3.12.9
        version: 3.12.9
      - name: quay-operator.v3.12.8
        version: 3.12.8
      - name: quay-operator.v3.12.7
        version: 3.12.7
      - name: quay-operator.v3.12.6
        version: 3.12.6
      - name: quay-operator.v3.12.5
        version: 3.12.5
      - name: quay-operator.v3.12.4
        version: 3.12.4
      - name: quay-operator.v3.12.3
        version: 3.12.3
      - name: quay-operator.v3.12.2
        version: 3.12.2
      - name: quay-operator.v3.12.1
        version: 3.12.1
      - name: quay-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: quay-operator.v3.13.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:9fe5f2672eef5f780797c1fa1eeaca531dcf71a9d565e80c2698d9b51244c187
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.10.x <3.13.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.13.10
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/quay/quay-operator-bundle@sha256:e3bda08789b2ba41154d080a5f013ee0e2406d60f8414e63be451a6439555cc1
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:9fe5f2672eef5f780797c1fa1eeaca531dcf71a9d565e80c2698d9b51244c187
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:b3f7fa8d48a772171dfb9eb893bc8e51985147c7f44fb8b1351325dbbf59810a
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:92ffbfe625489fe0b00e32a144f76935a4c36d1835af42d9b45bc3904760b085
        - registry.redhat.io/quay/clair-rhel8@sha256:3af5c1b75dedb37fb8c7cc3500882f7145314d44735b0957dad7d588a0cbf825
        - registry.redhat.io/quay/quay-rhel8@sha256:f112ecb55942c8785c4aa20162b74bac904634a87bdc8b9755873ef19eccd6df
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        version: 3.13.10
      entries:
      - name: quay-operator.v3.13.10
        version: 3.13.10
      - name: quay-operator.v3.13.9
        version: 3.13.9
      - name: quay-operator.v3.13.8
        version: 3.13.8
      - name: quay-operator.v3.13.7
        version: 3.13.7
      - name: quay-operator.v3.13.6
        version: 3.13.6
      - name: quay-operator.v3.13.5
        version: 3.13.5
      - name: quay-operator.v3.13.4
        version: 3.13.4
      - name: quay-operator.v3.13.3
        version: 3.13.3
      - name: quay-operator.v3.13.2
        version: 3.13.2
      - name: quay-operator.v3.13.1
        version: 3.13.1
      - name: quay-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: quay-operator.v3.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:8ebc1f0511f7d394ceaa39a4c993e955c560dc04588072cb3f8c8fab8c85e32b
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.11.x <3.14.5'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: v3.14.5
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures ODF for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For production deployment of
          Red Hat OpenShift Data Foundation, please refer to the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-operator-bundle@sha256:f16c0a135dd7380e2a489f963b38bd76a63a973f482d06ece8d3656aff223703
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:8ebc1f0511f7d394ceaa39a4c993e955c560dc04588072cb3f8c8fab8c85e32b
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        - registry.redhat.io/quay/quay-rhel8@sha256:33e984892650d315065313fcb5f8808e145aadec5a287219c7031d85b713235e
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/clair-rhel8@sha256:e11e8a819d17bd14c67f093b5303b4958855e731f89ce67dcca70fcb7b77f45a
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:43ef8adddbf9b007b6e2396f53bd6a5475150d28c2f4254f031a0fe6c7de5826
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:a12a0918f6dea114b0aae231d7119a4acfd0cd297074d895f4ecf190d2aec43a
        version: 3.14.5
      entries:
      - name: quay-operator.v3.14.5
        version: 3.14.5
      - name: quay-operator.v3.14.4
        version: 3.14.4
      - name: quay-operator.v3.14.3
        version: 3.14.3
      - name: quay-operator.v3.14.2
        version: 3.14.2
      - name: quay-operator.v3.14.1
        version: 3.14.1
      - name: quay-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: quay-operator.v3.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:05fb981d9848281b97b3683093f752b1c1dc5ced439a2b4ba18b26ff8e11231e
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.12.x <3.15.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: v3.15.2
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures ODF for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For production deployment of
          Red Hat OpenShift Data Foundation, please refer to the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-rhel8@sha256:aa8c9f7b6ce57441ca1fe9dbaaefaf2bb83fd44aa367647b663bb822bf890362
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/postgresql-13@sha256:1d1364c675bd1f7cbcaf34d695ddbd385ddc59e16fb00334ddf7a9b5ba47ec70
        - registry.redhat.io/rhel8/postgresql-15@sha256:b70af4767a5b34c4a67761aa28bee72b4f9cd1ce31245596640371f670d0dbba
        - registry.redhat.io/quay/clair-rhel8@sha256:861be31d30142bae125cd059bb716d79b28694e9c4336333c68adf4a3823b61d
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:956f3110f944d880bc27bb6df9472d0804cd75f5dcf4ed11bcf721e9d1d4542b
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:873a3daf1dadf2438eb96e151072326c31ba34ed48cac041614b604413d5f8e7
        - registry.redhat.io/quay/quay-operator-bundle@sha256:b499eebed32c0261db414e307f96f8aef9e743035544c80c048526e7ba4fbdc2
        - registry.redhat.io/rhel8/redis-6@sha256:72ee6edb5cc470104fd29e0ee0876ee5e811b6aac03f0ee2e946a2aad24304e6
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:05fb981d9848281b97b3683093f752b1c1dc5ced439a2b4ba18b26ff8e11231e
        version: 3.15.2
      entries:
      - name: quay-operator.v3.15.2
        version: 3.15.2
      - name: quay-operator.v3.15.1
        version: 3.15.1
      - name: quay-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: quay-operator.v3.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel9@sha256:16616e52f128f4a9b8511e7d9288bb1fcdd4e096a5a9b58400badbd0fad21476
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.13.x <3.16.0'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.16.0
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhel9/postgresql-15@sha256:90ec347a35ab8a5d530c8d09f5347b13cc71df04f3b994bfa8b1a409b1171d59
        - registry.redhat.io/rhel9/redis-6@sha256:686620b9acef6dfc3fc5e8221ca4d7a00c1fb102319352e7871fb9bc0ea127e3
        - registry.redhat.io/quay/clair-rhel9@sha256:b9a5096fef74999c34dfb721ca1b5e47623cfa21b48213f60a5b889894d4874e
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:adc9eb1500491144a259fd95c14237be15fa92478523bf33769a708b301d66cb
        - registry.redhat.io/rhel9/postgresql-13@sha256:5105fc7494c8e9886204951ea6eed0a04dcc638ea65a2e1c15df5ebf99aae356
        - registry.redhat.io/rhel8/postgresql-13@sha256:3e3e87ba0081e6f2d00b7a0f44f1b7fe6465c3c8176503c5f967237a949fd9d7
        - registry.redhat.io/quay/quay-rhel9@sha256:c855425208f7f33a550d216328965fdcb3abebc3ee28fc0854bf62c58ce07266
        - registry.redhat.io/rhel8/postgresql-10@sha256:0b9dcbac4969cc755505ee152369f23ac891a0e4030e9e2519cae25e32416500
        - registry.redhat.io/quay/quay-builder-rhel9@sha256:d3803200676de5a10f81539d3cb65e3d1cfad4fdfe7171284cab758bfc1bdd6a
        - registry.redhat.io/quay/quay-operator-bundle@sha256:000771d05a6151960a085bce375f090d706c48328009000437dbc5a8711c9ac8
        - registry.redhat.io/quay/quay-operator-rhel9@sha256:16616e52f128f4a9b8511e7d9288bb1fcdd4e096a5a9b58400badbd0fad21476
        version: 3.16.0
      entries:
      - name: quay-operator.v3.16.0
        version: 3.16.0
      name: stable-3.16
    - currentCSV: quay-operator.v3.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:7a6e592d7f5f760b4451f9c974dbb96f56b1d3de92f039adcbf284f78ba13a02
          createdAt: 2021-10-12 22:10 UTC
          description: Opinionated deployment of Red Hat on Kubernetes.
          olm.skipRange: '>=3.3.x <3.6.10'
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: 3.6.10
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:75df6b8e6bef14844a08f7d994470fa6ec4ffa66d4b15faaa0a3ba373f612fbb
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:ec36241f0a9a2983b1894cd8501898e6b70379af51a81b1e09b0ba0e9b54b33f
        - registry.redhat.io/quay/quay-operator-bundle@sha256:55a5e6297109aea029bd40fac09a9fbc10c28a8c5558f9afc9b9b86c5dc7a4d4
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:7a6e592d7f5f760b4451f9c974dbb96f56b1d3de92f039adcbf284f78ba13a02
        - registry.redhat.io/quay/quay-rhel8@sha256:e75e4d084eba9bb65b9cc72e38294af314d49316b12a0beb75db808dc057830b
        - registry.redhat.io/rhel8/postgresql-10@sha256:4b912c80085b88a03309aeb7907efcc29dd3342fa3952b6ea067afb1914bfe53
        - registry.redhat.io/rhel8/redis-6@sha256:d7c7852338717308cbb59e9303e1ea35cc8e5c01ceb2818569be20c15f3f943d
        - registry.redhat.io/quay/clair-rhel8@sha256:cbafddd1eb50c1c0f9159ffafd86f44a8c0b976194903c96c6f144bfe62e749d
        version: 3.6.10
      entries:
      - name: quay-operator.v3.6.10
        version: 3.6.10
      - name: quay-operator.v3.6.9
        version: 3.6.9
      - name: quay-operator.v3.6.8
        version: 3.6.8
      - name: quay-operator.v3.6.7
        version: 3.6.7
      - name: quay-operator.v3.6.6
        version: 3.6.6
      - name: quay-operator.v3.6.5
        version: 3.6.5
      - name: quay-operator.v3.6.4
        version: 3.6.4
      - name: quay-operator.v3.6.2
        version: 3.6.2
      - name: quay-operator.v3.6.1
        version: 3.6.1
      - name: quay-operator.v3.6.0
        version: 3.6.0
      name: stable-3.6
    - currentCSV: quay-operator.v3.7.14
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:a8283c2be661e07c5f2f2e5b683c520846bcb91d580d9a3a0aa27ce994ddfff6
          createdAt: 2021-04-23 10:04 UTC
          description: Opinionated deployment of Red Hat on Kubernetes.
          olm.skipRange: '>=3.4.x <3.7.14'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: v3.7.14
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/clair-rhel8@sha256:d676af83e96740220e6f18721c98817ba071fd023a62ebdc3815424e94838083
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:04ac405c152bffb43b33fb2e7f45df8b3940eb21e055ebf6aa17bd81ebdeeab4
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:c54c77e09c95dc7d80d7b31e796857c8d06f2f733426629b53d3298206d23b20
        - registry.redhat.io/quay/quay-operator-bundle@sha256:e3f63ea56de7ca5388a20c17ac63e16f07935ab09bcdcd38a86639c9d59c8a7d
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:a8283c2be661e07c5f2f2e5b683c520846bcb91d580d9a3a0aa27ce994ddfff6
        - registry.redhat.io/quay/quay-rhel8@sha256:7bc9e115e9bace07505ffd225242cab83d5eb6d50358188d18fd9161bdf1a5a6
        - registry.redhat.io/rhel8/postgresql-10@sha256:a52ad402458ec8ef3f275972c6ebed05ad64398f884404b9bb8e3010c5c95291
        - registry.redhat.io/rhel8/redis-6@sha256:b15335d88b240bd6bbedeb7fe26f0a1de2f6c330af9758b0fb2edab7ca69f6df
        version: 3.7.14
      entries:
      - name: quay-operator.v3.7.14
        version: 3.7.14
      - name: quay-operator.v3.7.13
        version: 3.7.13
      - name: quay-operator.v3.7.12
        version: 3.7.12
      - name: quay-operator.v3.7.11
        version: 3.7.11
      - name: quay-operator.v3.7.10
        version: 3.7.10
      name: stable-3.7
    - currentCSV: quay-operator.v3.8.15
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:abec0fa7ee641c8e424e995b5fe07b98e522ad1eb92c3b90426f69941f33eb2e
          createdAt: 2021-04-23 10:04 UTC
          description: Opinionated deployment of Red Hat on Kubernetes.
          olm.skipRange: '>=3.5.x <3.8.15'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          operators.operatorframework.io/internal-objects: '["quayecosystems.redhatcop.redhat.io"]'
          quay-version: v3.8.15
          repository: https://github.com/quay/quay-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
          - description: '[DEPRECATED] Old representation of a full Quay installation.'
            displayName: Quay Ecosystem
            kind: QuayEcosystem
            name: quayecosystems.redhatcop.redhat.io
            version: v1alpha1
        description: |-
          The Red Hat Quay Operator deploys and manages a production-ready
          [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
          This operator provides an opinionated installation and configuration of Red Hat Quay.
          All components required, including Clair, database, and storage, are provided in an
          operator-managed fashion. Each component may optionally be self-managed.

          ## Operator Features

          * Automated installation of Red Hat Quay
          * Provisions instance of Redis
          * Provisions PostgreSQL to support both Quay and Clair
          * Installation of Clair for container scanning and integration with Quay
          * Provisions and configures RHOCS for supported registry object storage
          * Enables and configures Quay's registry mirroring feature

          ## Prerequisites

          By default, the Red Hat Quay operator expects RHOCS to be installed on the cluster to
          provide the _ObjectBucketClaim_ API for object storage. For instructions installing and
          configuring the RHOCS Operator, see the "Enabling OpenShift Container Storage" in the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html-single/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index#enabling_openshift_container_storage).

          ## Simplified Deployment

          The following example provisions a fully operator-managed deployment of Red Hat Quay,
          including all services necessary for production:

          ```
          apiVersion: quay.redhat.com/v1
          kind: QuayRegistry
          metadata:
            name: my-registry
          ```

          ## Documentation

          See the
          [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploy_red_hat_quay_on_openshift_with_the_quay_operator/index)
          for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-operator-bundle@sha256:53fcddadaa31a5f7d74c38f0bbd0d80b4c09796a580ef8494f60ff82fb6fe6c1
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:abec0fa7ee641c8e424e995b5fe07b98e522ad1eb92c3b90426f69941f33eb2e
        - registry.redhat.io/quay/quay-rhel8@sha256:de2b65506f99eebb5eaafca6bb42b4ebec08e9479dd0d50aa1286f197e42d6de
        - registry.redhat.io/rhel8/postgresql-10@sha256:b7fa644277d5e406b642685ff2ace1b1de7aea2e2a1421b3cbcda7d60405f44d
        - registry.redhat.io/rhel8/redis-6@sha256:444200241cb9186cd97d564d7acf077d83fc997a8ee5ee7fdae41b604895085c
        - registry.redhat.io/quay/clair-rhel8@sha256:b327fcfd7472cdb9d83a564904976b26b285fa576dc0a76e5590990ec77fd871
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:3c047c7b22fb42557bd3a9b9c9ac333f0df7d5e4a4d333a2b02a4313f57085be
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:7e4e57071439d671971b0de46b597cf6cff8ef3879ab711125a6ae7ecb9c6d29
        version: 3.8.15
      entries:
      - name: quay-operator.v3.8.15
        version: 3.8.15
      - name: quay-operator.v3.8.14
        version: 3.8.14
      - name: quay-operator.v3.8.13
        version: 3.8.13
      - name: quay-operator.v3.8.12
        version: 3.8.12
      - name: quay-operator.v3.8.11
        version: 3.8.11
      - name: quay-operator.v3.8.10
        version: 3.8.10
      - name: quay-operator.v3.8.9
        version: 3.8.9
      - name: quay-operator.v3.8.8
        version: 3.8.8
      - name: quay-operator.v3.8.7
        version: 3.8.7
      - name: quay-operator.v3.8.6
        version: 3.8.6
      - name: quay-operator.v3.8.5
        version: 3.8.5
      - name: quay-operator.v3.8.4
        version: 3.8.4
      - name: quay-operator.v3.8.3
        version: 3.8.3
      - name: quay-operator.v3.8.2
        version: 3.8.2
      - name: quay-operator.v3.8.1
        version: 3.8.1
      - name: quay-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: quay-operator.v3.9.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "quay.redhat.com/v1",
                "kind": "QuayRegistry",
                "metadata": {
                  "name": "example-registry"
                },
                "spec": {
                  "components": [
                    {"kind": "clair", "managed": true},
                    {"kind": "postgres", "managed": true},
                    {"kind": "objectstorage", "managed": true},
                    {"kind": "redis", "managed": true},
                    {"kind": "horizontalpodautoscaler", "managed": true},
                    {"kind": "route", "managed": true},
                    {"kind": "mirror", "managed": true},
                    {"kind": "monitoring", "managed": true},
                    {"kind": "tls", "managed": true},
                    {"kind": "quay", "managed": true},
                    {"kind": "clairpostgres", "managed": true}
                  ]
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          containerImage: registry.redhat.io/quay/quay-operator-rhel8@sha256:81809b56de4139a26a6064239430f29744d8eb9bc07ee3260516d65b09ab86e0
          createdAt: "2021-04-23T10:04:00Z"
          description: Opinionated deployment of Red Hat on Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.9.17
          repository: https://github.com/quay/quay-operator
          support: Project Quay
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a full Quay registry installation.
            displayName: Quay Registry
            kind: QuayRegistry
            name: quayregistries.quay.redhat.com
            version: v1
        description: |2
              The Red Hat Quay Operator deploys and manages a production-ready
              [Red Hat Quay](https://www.openshift.com/products/quay) private container registry.
              This operator provides an opinionated installation and configuration of Red Hat Quay.
              All components required, including Clair, database, and storage, are provided in an
              operator-managed fashion. Each component may optionally be self-managed.

              ## Operator Features

              * Automated installation of Red Hat Quay
              * Provisions instance of Redis
              * Provisions PostgreSQL to support both Quay and Clair
              * Installation of Clair for container scanning and integration with Quay
              * Provisions and configures ODF for supported registry object storage
              * Enables and configures Quay's registry mirroring feature

              ## Prerequisites

              By default, the Red Hat Quay Operator expects ODF to be installed on the cluster to
              provide the _ObjectBucketClaim_ API for object storage. For production deployment of
              Red Hat OpenShift Data Foundation, please refer to the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/).

              ## Simplified Deployment

              The following example provisions a fully operator-managed deployment of Red Hat Quay,
              including all services necessary for production:

              ```
              apiVersion: quay.redhat.com/v1
              kind: QuayRegistry
              metadata:
                name: my-registry
              ```

              ## Documentation

              See the
              [official documentation](https://access.redhat.com/documentation/en-us/red_hat_quay/3/html/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index)
              for more complex deployment scenarios and information.
        displayName: Red Hat Quay
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - registry
        links:
        - name: Source Code
          url: https://github.com/quay/quay-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-builder-qemu-rhcos-rhel8@sha256:571d88c0dc93c9194a5242b02101b7d77871d2d9496307df7dcb9dac971ab444
        - registry.redhat.io/quay/quay-builder-rhel8@sha256:94f7e4f69cf8bad09b00ffb85bcf621f87df000e8a6077ba49fca88997a163fa
        - registry.redhat.io/quay/quay-operator-bundle@sha256:3c1f25918b505ec71eaf93d2a0b963d209e36d847e7fc48469f9d40b534344ae
        - registry.redhat.io/quay/quay-rhel8@sha256:f713bd016f375427a0a348e58639622cf21560c05d1b82653f2c47493fcba186
        - registry.redhat.io/rhel8/postgresql-13@sha256:05ebb5e22be17bd434277c4ea35031a4f7c07f7422a07ee15286407f25b072a0
        - registry.redhat.io/rhel8/postgresql-15@sha256:79be8ed57a159d553442c2db4ccc7868eb65de3e39ed719fd8529c87d7bc933b
        - registry.redhat.io/quay/quay-operator-rhel8@sha256:81809b56de4139a26a6064239430f29744d8eb9bc07ee3260516d65b09ab86e0
        - registry.redhat.io/rhel8/postgresql-10@sha256:eec360a32519d45c885efbfc6539dc5ff74447e1aceeb5115d1aa30b40c52aeb
        - registry.redhat.io/rhel8/redis-6@sha256:cefc749916bb70a025acb560e3863e0593015832044b31d7e23e400e20b89bff
        - registry.redhat.io/quay/clair-rhel8@sha256:f4bb5da4f6ea525d620c94180548603e1686de8b85b9c92c0a8c59840a1f69da
        version: 3.9.17
      entries:
      - name: quay-operator.v3.9.17
        version: 3.9.17
      - name: quay-operator.v3.9.16
        version: 3.9.16
      - name: quay-operator.v3.9.15
        version: 3.9.15
      - name: quay-operator.v3.9.14
        version: 3.9.14
      - name: quay-operator.v3.9.13
        version: 3.9.13
      - name: quay-operator.v3.9.12
        version: 3.9.12
      - name: quay-operator.v3.9.11
        version: 3.9.11
      - name: quay-operator.v3.9.10
        version: 3.9.10
      - name: quay-operator.v3.9.9
        version: 3.9.9
      - name: quay-operator.v3.9.8
        version: 3.9.8
      - name: quay-operator.v3.9.7
        version: 3.9.7
      - name: quay-operator.v3.9.6
        version: 3.9.6
      - name: quay-operator.v3.9.5
        version: 3.9.5
      - name: quay-operator.v3.9.4
        version: 3.9.4
      - name: quay-operator.v3.9.3
        version: 3.9.3
      - name: quay-operator.v3.9.2
        version: 3.9.2
      - name: quay-operator.v3.9.1
        version: 3.9.1
      - name: quay-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.16
    packageName: quay-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: eventing-kogito
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eventing-kogito.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kogito.knative.dev/v1alpha1",
                "kind": "KogitoSource",
                "metadata": {
                  "name": "kogito-order-processing"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "eventing.knative.dev/v1",
                      "kind": "Broker",
                      "name": "default"
                    }
                  },
                  "subject": {
                    "apiVersion": "serving.knative.dev/v1",
                    "kind": "Service",
                    "name": "serverless-workflow-order-processing"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: gcr.io/knative-releases/knative.dev/eventing-kogito/cmd/controller:v1.2.0
          createdAt: "2021-08-25T12:00:00Z"
          olm.targetNamespaces: knative-kogito
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/knative-sandbox/eventing-kogito
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoSource is the representation of a Knative Eventing
              Source for a Kogito custom Service.
            displayName: Kogito Source
            kind: KogitoSource
            name: kogitosources.kogito.knative.dev
            version: v1alpha1
        description: |-
          Knative Eventing Source for Kogito Services. This controller will enable easy configuration of any Kogito custom Service
          with the Knative Eventing platform. Please find more information about using this source in the [Official Kogito Documentation](https://docs.jboss.org/kogito/release/latest/html_single/#_kogito_knative_eventing_add_on)

          **Note:** The admission webhooks are not installed via OLM at this time. Because of that, please ensure that you create the `KogitoSource` objects with the subbject and sink information with the appropriate namespace.
        displayName: Kogito Knative Eventing Source
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - serverless workflow
        - kogito
        - knative
        - dmn
        - bpmn
        - eventing
        - cloudevents
        - messaging
        links:
        - name: Source Repository
          url: https://github.com/knative-sandbox/eventing-kogito
        - name: Kogito Knative Add-On Documentation
          url: https://docs.jboss.org/kogito/release/latest/html_single/#_kogito_knative_eventing_add_on
        maintainers:
        - email: bsig-cloud@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.20.0
        provider:
          name: Red Hat
        relatedImages:
        - gcr.io/knative-releases/knative.dev/eventing-kogito/cmd/controller:v1.2.0
        - quay.io/openshift-community-operators/eventing-kogito@sha256:abe8d5803d2d96ebbb9fe4cda0feaa0217e92def6a669404362bcf741d934690
        version: 1.2.0
      entries:
      - name: eventing-kogito.v1.2.0
        version: 1.2.0
      - name: eventing-kogito.v1.1.0
        version: 1.1.0
      name: alpha
    defaultChannel: alpha
    packageName: eventing-kogito
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: k8gb.io
      provider-url: https://github.com/k8gb-io/k8gb
    name: k8gb
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: k8gb.v0.11.4
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"k8gb.absa.oss/v1beta1","kind":"Gslb","metadata":{"name":"test-gslb-failover","namespace":"test-gslb"},"spec":{"ingress":{"rules":[{"host":"failover.test.k8gb.io","http":{"paths":[{"backend":{"service":{"name":"frontend-podinfo","port":{"name":"http"}}},"path":"/"}]}}]},"strategy":{"primaryGeoTag":"eu-west-1","type":"failover"}}}]'
          capabilities: Seamless Upgrades
          categories: Networking
          certified: "false"
          containerImage: docker.io/absaoss/k8gb:v0.11.4
          createdAt: "2021-09-24 12:00:00"
          description: A cloud native Kubernetes Global Balancer
          operatorframework.io/suggested-namespace: k8gb
          operators.operatorframework.io.bundle.channels.v1: alpha
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: k8gb
          operators.operatorframework.io/builder: operator-sdk-v1.12.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/k8gb-io/k8gb
          support: cncf-k8gb-maintainers@lists.cncf.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gslb resource for global load balancing strategy configuration
            displayName: Gslb
            kind: Gslb
            name: gslbs.k8gb.absa.oss
            version: v1beta1
          - description: Using ExternalDNS it synchronizes exposed Kubernetes Services
              and Ingresses with DNS providers
            displayName: DNSEndpoint
            kind: DNSEndpoint
            name: dnsendpoints.externaldns.k8s.io
            version: v1alpha1
        description: |
          **A cloud native Kubernetes Global Balancer**

          A Global Service Load Balancing solution with a focus on having cloud native qualities and work natively in a Kubernetes context.

          Key Differentiators:
           - Load balancing is based on timeproof DNS protocol which is perfect for global scope and extremely reliable
           - No dedicated management cluster and no single point of failure
           - Kubernetes native application health checks utilizing status of Liveness and Readiness probes for load balancing decisions
           - Configuration with a single Kubernetes CRD of `Gslb` kind

          Operator needs to be configured by setting couple of environment variables. This can be done by modifying
          the subscription yaml in the web ui or via kubectl. Here is an example of changing the `EDGE_DNS_ZONE`:

          ```yaml
          kind: Subscription
            ...
          spec:
            ...
            config:
              env:
              - name: CLUSTER_GEO_TAG
                value: us
              - name: EDGE_DNS_ZONE
                value: mycloud.example.com
                ...
           ```
           For more deployment variables see [helm code](https://github.com/k8gb-io/k8gb/blob/v0.8.3/chart/k8gb/templates/operator.yaml#L53:L68).

           For more information see [k8gb.io](https://k8gb.io).
        displayName: k8gb
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gslb
        - dns-lb
        - kuberneters-global-balancer
        - kubernetes-operator
        - balancer
        - multi-cluster
        links:
        - name: Home
          url: https://www.k8gb.io/
        - name: Source
          url: https://github.com/k8gb-io/k8gb
        maintainers:
        - email: dinar.valeev@absa.africa
          name: Dinar Valeev
        - email: jiri.kremser@gmail.com
          name: Jiri Kremser
        - email: kuritka@gmail.com
          name: Michal Kuritka
        - email: timofey.ilinykh@absa.africa
          name: Timofey Ilinykh
        - email: yury.tsarev@absa.africa
          name: Yury Tsarev
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: k8gb.io
          url: https://github.com/k8gb-io/k8gb
        relatedImages:
        - quay.io/openshift-community-operators/k8gb@sha256:9743f957b00e5ad344fed0c062d616d8222990139ac4afbf14871fd9813f0ef0
        - absaoss/k8s_crd:v0.0.11
        - docker.io/absaoss/k8gb:v0.11.4
        version: 0.11.4
      entries:
      - name: k8gb.v0.11.4
        version: 0.11.4
      name: alpha
    defaultChannel: alpha
    packageName: k8gb
    provider:
      name: k8gb.io
      url: https://github.com/k8gb-io/k8gb
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: global-load-balancer-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: global-load-balancer-operator.v1.4.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSRecord",
                "metadata": {
                  "name": "hello-global-record"
                },
                "spec": {
                  "endpoints": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    }
                  ],
                  "globalZoneRef": {
                    "name": "external-dns-zone"
                  },
                  "loadBalancingPolicy": "Multivalue",
                  "name": "hello.my.base.domain",
                  "ttl": 60
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSRecord",
                "metadata": {
                  "name": "route53-geoproximity-global-record-with-healthcheck"
                },
                "spec": {
                  "endpoints": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3",
                      "loadBalancerServiceRef": {
                        "name": "cluster-default",
                        "namespace": "openshift-ingress"
                      }
                    }
                  ],
                  "globalZoneRef": {
                    "name": "route53-global-dns-zone"
                  },
                  "healthCheck": {
                    "failureThreshold": 3,
                    "httpGet": {
                      "host": "geoproximity-hc.${global_base_domain}",
                      "path": "/healthz",
                      "port": 80,
                      "scheme": "HTTP"
                    },
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 2
                  },
                  "loadBalancingPolicy": "Geoproximity",
                  "name": "geoproximity-hc.my.base.domain",
                  "ttl": 60
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSZone",
                "metadata": {
                  "name": "external-dns-zone"
                },
                "spec": {
                  "domain": "myglobalzone.mybasedomain.io",
                  "provider": {
                    "externalDNS": {
                      "annotations": {
                        "type": "global"
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalDNSZone",
                "metadata": {
                  "name": "route53-global-dns-zone"
                },
                "spec": {
                  "domain": "myglobalzone.mybasedomain.io",
                  "provider": {
                    "route53": {
                      "credentialsSecretRef": {
                        "name": "route53-global-zone-credentials",
                        "namespace": "mynamespace"
                      },
                      "zoneID": "Z083892239ROKNEP70BDY"
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalRouteDiscovery",
                "metadata": {
                  "name": "external-dns-globalroutediscovery"
                },
                "spec": {
                  "clusters": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3"
                    }
                  ],
                  "defaultLoadBalancingPolicy": "Multivalue",
                  "defaultTTL": 30,
                  "globalZoneRef": {
                    "name": "external-dns-zone"
                  },
                  "routeSelector": {
                    "matchLabels": {
                      "route-type": "global"
                    }
                  }
                }
              },
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GlobalRouteDiscovery",
                "metadata": {
                  "name": "route53-globalroutediscovery"
                },
                "spec": {
                  "clusters": [
                    {
                      "clusterCredentialRef": {
                        "name": "secret1",
                        "namespace": "cluster1"
                      },
                      "clusterName": "cluster1"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret2",
                        "namespace": "cluster2"
                      },
                      "clusterName": "cluster2"
                    },
                    {
                      "clusterCredentialRef": {
                        "name": "secret3",
                        "namespace": "cluster3"
                      },
                      "clusterName": "cluster3"
                    }
                  ],
                  "defaultLoadBalancingPolicy": "Multivalue",
                  "defaultTTL": 30,
                  "globalZoneRef": {
                    "name": "route53-global-dns-zone"
                  },
                  "routeSelector": {
                    "matchLabels": {
                      "route-type": "global"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking, Cloud Provider
          certified: "false"
          containerImage: quay.io/redhat-cop/global-load-balancer-operator@sha256:c0b6ac9b03571a74a56b28302d720e8aa4442233f7867d05ed365e022f7cb8f5
          createdAt: "2021-12-02T17:33:23Z"
          description: This operator creates automation around a DNS to operate as
            a global load balancer for a set of OpenShift clusters.
          operatorframework.io/suggested-namespace: global-load-balancer-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/global-load-balancer-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DNSEndpoint
            name: dnsendpoints.externaldns.k8s.io
            version: v1alpha1
          - description: GlobalDNSRecord is the Schema for the globaldnsrecords API
            displayName: Global DNSRecord
            kind: GlobalDNSRecord
            name: globaldnsrecords.redhatcop.redhat.io
            version: v1alpha1
          - description: GlobalDNSZone is the Schema for the globaldnszones API
            displayName: Global DNSZone
            kind: GlobalDNSZone
            name: globaldnszones.redhatcop.redhat.io
            version: v1alpha1
          - description: GlobalRouteDiscovery is the Schema for the globalroutediscoveries
              API
            displayName: Global Route Discovery
            kind: GlobalRouteDiscovery
            name: globalroutediscoveries.redhatcop.redhat.io
            version: v1alpha1
        description: "The global-load-balancer-operator implements automation to program
          a DNS service to act as global load balancer for applications deployed to
          multiple OpenShift clusters.\nThis operator is designed to be deployed to
          a control cluster which will watch the load balanced clusters (controlled
          clusters).\nThere are two main concepts (APIs) provided by this operator:\n\n1.
          GlobalDNSZone\n2. GlobalDNSRecord\n\n## GlobalDNSZone\n\nThe `GlobalDNSZone`
          CR allows you to configure a zone which will contain global load balanced
          records and the provider used to populate it.\nHere is an example of GlobalDNSZone:\n\n```yaml\napiVersion:
          redhatcop.redhat.io/v1alpha1\nkind: GlobalDNSZone\nmetadata:\n  name: external-dns-zone\nspec:\n
          \ # Add fields here\n  domain: global.myzone.io\n  provider:\n    externalDNS:\n
          \     annotations:\n        type: global\n```\n\nHere is a table summarizing
          the supported providers and their capabilities:\n\n| Provider  | Supports
          Health Checks  | Supports Multivalue LB | Supports Latency LB  | Supports
          GeoProximity LB  |\n|:--:|:--:|:---:|:---:|:---:|\n| External-dns  | no
          \ | yes | no  | no  |\n| Route53  | yes | yes(*)  | yes(*)  | yes(*)  |\n\n(*)
          only if all controlled clusters run on AWS.\n\n## GlobalDNSRecord\n\nThe
          `GlobalDNSRecord` CR allows you to specify the intention to create a global
          dns record. Here is an example\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          GlobalDNSRecord\nmetadata:\n  name: hello-global-record\nspec:\n  name:
          hello.global.myzone.io\n  endpoints:\n  - clusterName: cluster1\n    clusterCredentialRef:\n
          \     name: kubeconfig\n      namespace: cluster1\n    loadBalancerServiceRef:\n
          \     name: router-default\n      namespace: openshift-ingress\n  - clusterName:
          cluster2\n    clusterCredentialRef:\n      name: kubeconfig\n      namespace:
          cluster2\n    loadBalancerServiceRef:\n      name: router-default\n      namespace:
          openshift-ingress\n  - clusterName: cluster3\n    clusterCredentialRef:\n
          \     name: kubeconfig\n      namespace: cluster3\n    loadBalancerServiceRef:\n
          \     name: router-default\n      namespace: openshift-ingress\n  ttl: 60\n
          \ loadBalancingPolicy: Multivalue\n  globalZoneRef:\n    name: external-dns-zone\n
          \ healthCheck:\n    failureThreshold: 3\n    httpGet:\n      host: hello.global.myzone.io\n
          \     httpHeaders:\n        - name: ciao\n          value: hello\n      path:
          /readyz\n      port: 80\n      scheme: HTTP\n    periodSeconds: 10\n    successThreshold:
          1\n    timeoutSeconds: 1     \n```\n\nThe list of endpoints identifies the
          set of `LoadBalancer` type of services to watch on the remote clusters (at
          the moment only LoadBalancer services are supported). These are the `LoadBalancer`
          services created by the [ingress controller](https://docs.openshift.com/container-platform/4.5/networking/ingress-operator.html)
          on which the routers rely. Each entry of this list requires a reference
          to the loadbalancer service on the remote cluster and a reference to a local
          secret containing the credential to connect to the remote cluster.\n\nThis
          secret must contain one entry called `kubeconfig` with a kubeconfig file
          with a default context pointing to the remote cluster. The account used
          by the kubeconfig file (presumably a service account) will require at a
          minimum cluster-level permissions as described in this [cluster role](./docs/scripts/remote-account-cluster-role.yaml).\n\nThe
          `globalZoneRef` field refers to a local (same namespace) `GlobalZone` CR.
          The DNS record represented by this `GlobalDNSRecord`, will be created in
          the referenced zone.\n\n`ttl` is the TTL of the crated DNS record.\n\n`loadBalancingPolicy`
          is the load balancing policy for this global record. It must match one of
          the policy supported by the provider of the referenced `GlobalZone`.\n\nFinally,
          `healthcheck` represent a [probe](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/#probe-v1-core)
          to be used to test the health of a record. This field will be ignored if
          the provider does not support health checks.\n\n## External DNS Provider\n\nThe
          [external-dns](https://github.com/kubernetes-sigs/external-dns) provider
          delegates to external-dns the creation of the actual DNS records by creating
          a `DNSEndpoint` object.\nThe `DNSEndpoint` object will be created in the
          same namespace as the `GlobalDNSRecord` and will be owned by it.\nThe `DNSEdnpoint`
          object will have the same labels as the `GlobalDNSRecord` and the annotations
          specified in the GlobalDNSZone configuration.\nExternal-dns should be configured
          to watch for DNSEnpoints at the cluster level and to point to the desired
          provider.\nDetails on configuration can be found at the external-dns git
          repository.\nThe External-dns should be used as a fall back option when
          other options are not available as it does not support health checks and
          advanced load balancing policies.\n\n## AWS Route53 provider\n\nAWS Route53
          provider uses the Route53 service as a global loadbalancer and offers advanced
          routing capabilities via [route53 traffic policies](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/traffic-flow.html)
          (note that traffic policies will trigger an expense).\nThe following routing
          polices are currently supported:\n\n1. [Multivalue](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-multivalue)\n2.
          [Geoproximity](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-geoproximity)\n3.
          [Latency](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-latency)\n\nAWS
          Route53 provider at the moment requires that all the controlled clusters
          run in AWS.\n\nIf health checks are defined, a route53 health check originating
          from any reason (you have to ensure connectivity) will be created for each
          of the endpoint. Because the endpoint represent s a shared ELB (shared with
          other apps, that is) and the health check is app specific, we cannot use
          the ELB health check, so the route53 endpoint is created with one of the
          two IP exposed by the ELB. This is suboptimal, but it works in most situations.\n\n##
          Global Route Auto Discovery\n\nThe aboev examples showed how to create global
          DNS records. This can be good in some situations, but most of the times
          in an openshift deployment global DNS records will point to routes that
          are intended to be global.\nThe global-load-balancer operator can auto-discover
          these routes and automatically create the corresponding `GloablDNSRecord`.
          The `GlobalRouteDiscovery` CRD is used to configure the discovery process,
          here is an example:\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          GlobalRouteDiscovery\nmetadata:\n  name: route53-globalroutediscovery\nspec:\n
          \ clusters:\n  - clusterName: cluster1\n    clusterCredentialRef:\n      name:
          ${cluster1_secret_name}\n      namespace: cluster1\n...\n  routeSelector:\n
          \   matchLabels:\n      route-type: global\n  defaultLoadBalancingPolicy:
          Multivalue\n  defaultTTL: 30 \n  globalZoneRef:\n    name: route53-global-dns-zone\n```\n\nThis
          global discovery route will discover routes in the provided list of cluster.
          Only the routes that match the route selector will be considered global.
          \nThe default load balancing policy and default TTL can be expressed in
          the `GlobalRouteDiscovery` CR. However with the following annotations, it's
          possible to configure route-specific values:\n\n* `global-load-balancer-operator.redhat-cop.io/load-balancing-policy`
          to set the load balancing policy\n* `global-load-balancer-operator.redhat-cop.io/ttl`
          to set the TTL\n\nThe globalZoneRef refers to the global zone to be used
          for the created `GlobalDNSRecords`.\n\nHealth checks will also be automatically
          discovered. If the pods behind the route expose a readiness check of httpGet
          kind, that configuration will be used to create the GlobalDNSRecord health
          check.\nWhen more than one container is present in the pod, by default the
          first container will be examined for health check. This behavior can be
          overridden with the this annotation on the route: `global-load-balancer-operator.redhat-cop.io/container-probe`
          where the value will container the name of the container with teh correct
          readiness probe.\n\nIf routes with the same namespace and name exists in
          multiple cluster, the following conditions must be met:\n\n* all host names
          must be the same\n* all load balancing policy must be the same\n* all TTLs
          must be the same\n* all discovered readiness checks must be the same\n\n##
          Examples\n\nThese examples are intended to help you setting up working configuration
          with each of the providers\n\n### Cluster Set up\n\nTwo approaches for cluster
          setup are provided\n\n1. [One cluster, three ingress-gateways.](https://github.com/redhat-cop/global-load-balancer-operator/docs/one-cluster-three-ingress-gateways.md)
          This approach is intended for development purposes and has the objective
          to keep resource consumption at the minimum.\n2. [Control cluster and three
          controlled clusters in different regions.](https://github.com/redhat-cop/global-load-balancer-operator/docs/three-clusters.md).
          This approach represents a more realistic set-up albeit it consumes more
          resources.\n\nYou can also set up the cluster on your own, at the end the
          following conditions must be met:\n\nThree namespace `cluster1` `cluster2`
          `cluster3` are created.\nthe following environment variables are initialized
          for each cluster:\n\n1. <cluster>_secret_name. Pointing to a secret in each
          of the cluster namespaces containing a valid kubeconfig fot that cluster\n2.
          <cluster>_service_name.  Pointing to the name of the loadbalancer service
          to be used for that cluster.\n3. <cluster>_service_namespace. Pointing to
          the namespace of the loadbalancer service to be used for that cluster.\n\nHere
          are examples for the supported provider:\n\n1. [Setting up external-dns
          as provider](https://github.com/redhat-cop/global-load-balancer-operator/docs/external-dns-provider.md)\n2.
          [Setting up route53 as a provider](https://github.com/redhat-cop/global-load-balancer-operator/docs/aws-route53-provider.md)\n"
        displayName: Global Load Balancer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Networking
        - Cloud Provider
        - Global Load Balancing
        - GLB
        - GTM
        - route53
        - DNS
        links:
        - name: GigHub Repository
          url: https://github.com/redhat-cop/global-load-balancer-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/global-load-balancer-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/global-load-balancer-operator@sha256:50771c320c8b7faea144f765535e89979f9f81e61d34c8dd2e86139fa68e222e
        - quay.io/redhat-cop/global-load-balancer-operator@sha256:c0b6ac9b03571a74a56b28302d720e8aa4442233f7867d05ed365e022f7cb8f5
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        version: 1.4.2
      entries:
      - name: global-load-balancer-operator.v1.4.2
        version: 1.4.2
      - name: global-load-balancer-operator.v1.4.1
        version: 1.4.1
      - name: global-load-balancer-operator.v1.4.0
        version: 1.4.0
      - name: global-load-balancer-operator.v1.3.0
        version: 1.3.0
      - name: global-load-balancer-operator.v1.2.0
        version: 1.2.0
      - name: global-load-balancer-operator.v1.1.0
        version: 1.1.0
      - name: global-load-balancer-operator.v1.0.7
        version: 1.0.7
      - name: global-load-balancer-operator.v1.0.6
        version: 1.0.6
      - name: global-load-balancer-operator.v1.0.5
        version: 1.0.5
      - name: global-load-balancer-operator.v1.0.4
        version: 1.0.4
      - name: global-load-balancer-operator.v1.0.3
        version: 1.0.3
      - name: global-load-balancer-operator.v1.0.2
        version: 1.0.2
      - name: global-load-balancer-operator.v1.0.1
        version: 1.0.1
      - name: global-load-balancer-operator.v1.0.0
        version: 1.0.0
      name: alpha
    defaultChannel: alpha
    packageName: global-load-balancer-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: cli-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cli-manager-operator.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "CliManager",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-cli-manager-operator"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed",
                  "operatorLogLevel": "Normal"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          console.openshift.io/operator-monitoring-default: "true"
          createdAt: "2025-11-24"
          description: "The CLI Manager is a comprehensive tool designed to simplify
            the management of \nOpenShift CLI plugins within the OpenShift environment.
            \nModeled after the popular krew plugin manager, it offers seamless integration,
            \neasy installation, and efficient handling of a wide array of plugins,
            \nenhancing your OpenShift command-line experience.\n"
          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: "true"
          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"
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-cli-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          repository: https://github.com/openshift/cli-manager-operator
          skipRange: '>=0.1.1 <0.2.0'
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - displayName: CLI Manager
            kind: CliManager
            name: climanagers.operator.openshift.io
            version: v1
          - displayName: CLI Plugin
            kind: Plugin
            name: plugins.config.openshift.io
            version: v1alpha1
        description: "The CLI Manager is a comprehensive tool designed to simplify
          the management of \nOpenShift CLI plugins within the OpenShift environment.
          \nModeled after the popular krew plugin manager, it offers seamless integration,
          \neasy installation, and efficient handling of a wide array of plugins,
          \nenhancing your OpenShift command-line experience.\n"
        displayName: CLI Manager
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cli-manager-operator
        - cli-manager
        links:
        - name: Source Code
          url: https://github.com/openshift/cli-manager
        - name: Source Code
          url: https://github.com/openshift/cli-manager-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.30.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/cli-manager/cli-manager-operator-bundle@sha256:f84f5609ed0c329c810bb85d66f24e2be6b0ae421c9870048d6af6079f01abed
        - registry.redhat.io/cli-manager/cli-manager-rhel9-operator@sha256:e68b034798ebb1cfa7e17c055dbeec8c8aa46afa7d1291a7a2dbecbb691f71ba
        - registry.redhat.io/cli-manager/cli-manager-rhel9@sha256:4185a2d8f361b3bafbf677e35229c2b58245d3a52dae44d67b5990b62ceffb94
        version: 0.2.0
      entries:
      - name: cli-manager-operator.v0.2.0
        version: 0.2.0
      - name: cli-manager-operator.v0.1.1
        version: 0.1.1
      name: tech-preview
    defaultChannel: tech-preview
    packageName: cli-manager
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Odigos
      provider-url: https://odigos.io
    name: odigos-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odigos-operator.v1.8.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.odigos.io/v1alpha1",
                "kind": "Odigos",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "odigos-operator"
                  },
                  "name": "odigos-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: Logging & Tracing
          containerImage: registry.connect.redhat.com/odigos/odigos-certified-operator-ubi9@sha256:3045bd830d1f614e04e7d0444bbee2aac6bf0f7c7eb5a1f4e418888d3a383d2b
          createdAt: "2025-10-23T21:01:56Z"
          description: Odigos enables automatic distributed tracing with OpenTelemetry
            and eBPF.
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: Odigos Enterprise subscription
            (for enterprise features)
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Odigos
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Odigos is the Schema for the odigos API
            displayName: Odigos
            kind: Odigos
            name: odigos.operator.odigos.io
            version: v1alpha1
        description: |-
          The Odigos Operator provides options for installing and configuring Odigos.

          Upon creation of an Odigos resource, the Odigos Operator installs the following Odigos components:

          - Instrumentor
          - Odiglet
          - Autoscaler
          - Scheduler
          - Frontend UI

          With Odigos installed, follow the Odigos docs at docs.odigos.io for instructions on instrumenting applications and configuring destinations.
        displayName: Odigos Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - OpenTelemetry
        - eBPF
        - tracing
        - observability
        - distributed tracing
        - otel
        - monitoring
        links:
        - name: Odigos
          url: https://odigos.io
        - name: Odigos Documentation
          url: https://docs.odigos.io
        - name: Odigos on Github
          url: https://github.com/odigos-io/odigos
        maintainers:
        - email: mike@odigos.io
          name: Mike Dame
        maturity: alpha
        minKubeVersion: 1.20.15
        provider:
          name: Odigos
          url: https://odigos.io
        relatedImages:
        - registry.connect.redhat.com/odigos/odigos-enterprise-instrumentor-ubi9@sha256:825989f7c215ead4ad1ef4a08a4f08c2ac92bcb9e6119498fcd197e239615cf6
        - registry.connect.redhat.com/odigos/odigos-enterprise-odiglet-ubi9@sha256:7b4405c8b46c19ec2120863d68684aae036623e4bc118d0b76b28d7ed547b7a9
        - registry.connect.redhat.com/odigos/odigos-odiglet-ubi9@sha256:707a17cf290f1f4959525b51b4c3f3bec5ab84ebbc7ab3744f99698866c85587
        - registry.connect.redhat.com/odigos/odigos-instrumentor-ubi9@sha256:cc72a55962322f911d2c4fa5bd9a0cb976e600883c43846d5550a10d60d93a83
        - registry.connect.redhat.com/odigos/operator-bundle@sha256:4c478ef3756f061bcb682bcbb39aa1abcad768ed50230629c1a1ccea77ab3ff1
        - registry.connect.redhat.com/odigos/odigos-scheduler-ubi9@sha256:df9474ea9f0e789ce94fb212c710163959b6d02f8cc90ecdf88339d645703418
        - registry.connect.redhat.com/odigos/odigos-ui-ubi9@sha256:d825f32fd723ba969a3dc101731e006e7323d9bd9a85d9ceeaec5027f4dadcc0
        - registry.connect.redhat.com/odigos/odigos-autoscaler-ubi9@sha256:1ee37adda9ee8bc52491ffd1c60ae0e1d99ba232fcf7af81fdeef79646069bab
        - registry.connect.redhat.com/odigos/odigos-certified-operator-ubi9@sha256:3045bd830d1f614e04e7d0444bbee2aac6bf0f7c7eb5a1f4e418888d3a383d2b
        - registry.connect.redhat.com/odigos/odigos-collector-ubi9@sha256:d8660623961e54d90150df87a89459fb164724f16a3b151c0cd7bbbeaa773aae
        version: 1.8.4
      entries:
      - name: odigos-operator.v1.8.4
        version: 1.8.4
      name: alpha
    defaultChannel: alpha
    packageName: odigos-operator
    provider:
      name: Odigos
      url: https://odigos.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NdmSpc project
      provider-url: ""
    name: ndmspc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ndmspc-operator.v0.20250209.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.ndmspc.io/v1alpha1",
                "kind": "NdmSpcConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ndmspc-operator",
                    "app.kubernetes.io/instance": "ndmspcconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ndmspcconfig",
                    "app.kubernetes.io/part-of": "ndmspc-operator"
                  },
                  "name": "ndmspc-sample"
                },
                "spec": {
                  "executor": {
                    "image": "registry.gitlab.com/ndmspc/api:v0.20240215.2",
                    "name": "executor"
                  },
                  "executors": 1,
                  "ingressclasstype": "nginx",
                  "ingressenabled": true,
                  "ingresshostdomain": "127.0.0.1.sslip.io",
                  "ingressnostname": "ndmspc",
                  "ingressssltraefik": false,
                  "naf": {
                    "image": "registry.gitlab.com/ndmspc/naf:v0.20250129.0",
                    "name": "naf"
                  },
                  "ndmvr": {
                    "image": "registry.gitlab.com/ndmspc/ndmvr/shared:v0.20230320.0",
                    "name": "ndmvr"
                  },
                  "salsa": {
                    "image": "registry.gitlab.com/ndmspc/user/ndmspc:v0.20240412.0"
                  },
                  "storage": {
                    "image": "registry.gitlab.com/ndmspc/storage-server:v0.20250205.0",
                    "mongodb": {
                      "image": "docker.io/library/mongo:latest",
                      "password": "admin",
                      "port": 27017,
                      "username": "admin"
                    },
                    "name": "storage",
                    "port": 8080
                  },
                  "webapp": {
                    "image": "registry.gitlab.com/ndmspc/react-ndmspc:v0.20240412.0",
                    "name": ""
                  },
                  "webappcontainerport": 8080,
                  "webapps": 1,
                  "worker": {
                    "resources": {
                      "limits": {
                        "cpu": "200m",
                        "memory": "2Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "1Gi"
                      }
                    }
                  },
                  "workers": 2,
                  "workerslots": 1,
                  "zmq2ws": {
                    "image": "registry.gitlab.com/ndmspc/zmq2ws:v1.20231012.0",
                    "name": "zmq2ws"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Big Data
          containerImage: registry.gitlab.com/ndmspc/ndmspc-operator:0.20250209.0
          createdAt: "2025-02-09T12:49:06Z"
          description: The NdmSpc operator automates the deployment and management
            of Ndmspc suite on Kubernetes cluster.
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://gitlab.com/ndmspc/ndmspc-operator
          support: NDMSPC Team
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NdmSpc configuration
            displayName: NdmSpc Config
            kind: NdmSpcConfig
            name: ndmspcconfigs.apps.ndmspc.io
            version: v1alpha1
        description: "The NdmSpc operator automates the deployment and management
          of Ndmspc suite on Kubernetes cluster. This operator allows user to deploy
          SALSA cluster with ZMQ2WS and job executor service and specify custom webapp
          page.\n\n### Capabilities\n\n- SALSA cluster\n- ZMQ2WS api service\n- Job
          executor service \n- Custom WebApp page\n"
        displayName: NdmSpc operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ndmspc
        links:
        - name: Ndmspc Operator
          url: https://ndmspc.gitlab.io/docs
        maintainers:
        - email: ndmspc@gmail.com
          name: NdmSpc Support
        maturity: alpha
        provider:
          name: NdmSpc project
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/ndmspc-operator@sha256:b1f47ce0cd6930d902dc3538a1a87140dbe9257dd50773a518fc2350185f90cc
        - registry.gitlab.com/ndmspc/ndmspc-operator:0.20250209.0
        version: 0.20250209.0
      entries:
      - name: ndmspc-operator.v0.20250209.0
        version: 0.20250209.0
      - name: ndmspc-operator.v0.20250131.0
        version: 0.20250131.0
      - name: ndmspc-operator.v0.20240412.0
        version: 0.20240412.0
      - name: ndmspc-operator.v0.11.6
        version: 0.11.6
      - name: ndmspc-operator.v0.11.4
        version: 0.11.4
      - name: ndmspc-operator.v0.11.3
        version: 0.11.3
      - name: ndmspc-operator.v0.11.2
        version: 0.11.2
      - name: ndmspc-operator.v0.11.1
        version: 0.11.1
      - name: ndmspc-operator.v0.10.2
        version: 0.10.2
      - name: ndmspc-operator.v0.10.1
        version: 0.10.1
      - name: ndmspc-operator.v0.10.0
        version: 0.10.0
      - name: ndmspc-operator.v0.9.0
        version: 0.9.0
      - name: ndmspc-operator.v0.7.4
        version: 0.7.4
      - name: ndmspc-operator.v0.7.1
        version: 0.7.1
      - name: ndmspc-operator.v0.6.0
        version: 0.6.0
      - name: ndmspc-operator.v0.5.0
        version: 0.5.0
      name: alpha
    defaultChannel: alpha
    packageName: ndmspc-operator
    provider:
      name: NdmSpc project
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: K4all
      provider-url: https://github.com/gpillon/kubevirt-wol
    name: kubevirt-wol
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubevirt-wol.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kubevirt-wol"
                  },
                  "name": "default"
                },
                "spec": {
                  "agent": {
                    "imagePullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "All",
                  "namespaceSelectors": [
                    "default"
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "explicit-example"
                },
                "spec": {
                  "agent": {
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 600,
                  "discoveryMode": "Explicit",
                  "explicitMappings": [
                    {
                      "macAddress": "52:54:00:12:34:56",
                      "namespace": "default",
                      "vmName": "my-vm-1"
                    },
                    {
                      "macAddress": "52:54:00:ab:cd:ef",
                      "namespace": "production",
                      "vmName": "my-vm-2"
                    }
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "labelselector-example"
                },
                "spec": {
                  "agent": {
                    "nodeSelector": {
                      "node-role.kubernetes.io/worker": ""
                    },
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "LabelSelector",
                  "namespaceSelectors": [
                    "production"
                  ],
                  "vmSelector": {
                    "matchLabels": {
                      "wol.pillon.org/enabled": "true"
                    }
                  },
                  "wolPorts": [
                    9,
                    7
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: OpenShift Optional
          containerImage: quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
          createdAt: "2025-10-27T02:37:07Z"
          description: |
            A Kubernetes Operator that enables Wake-on-LAN functionality for KubeVirt VirtualMachines. This operator listens for WOL magic packets on the network and automatically starts the corresponding VirtualMachines in your Kubernetes cluster.
          operatorframework.io/suggested-namespace: kubevirt-wol-system
          operatorframework.io/suggested-namespace-template: |
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "kubevirt-wol-system",
                "annotations": {
                  "openshift.io/node-selector": ""
                },
                "labels": {
                  "openshift.io/cluster-monitoring": "true"
                }
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["servicemonitors.monitoring.coreos.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/gpillon/kubevirt-wol
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WolConfig is the Schema for the Wake-on-LAN configurations
              API
            displayName: Wol Config
            kind: WolConfig
            name: wolconfigs.wol.pillon.org
            version: v1beta1
        description: "A Kubernetes Operator that enables Wake-on-LAN functionality
          for KubeVirt VirtualMachines.\n\n**Installation**: This operator must be
          installed in the `kubevirt-wol-system` namespace.\n\n**Prerequisites**:
          \n- **Required**: KubeVirt must be installed in your cluster.\n- **Optional**:
          Prometheus Operator (for ServiceMonitor-based metrics collection). The operator
          works without it, but metrics will not be automatically scraped.\n\n**Features**:\n-
          Automatically starts VirtualMachines when WOL magic packets are received\n-
          Supports multiple WOL ports (default: UDP 9)\n- Three discovery modes: All
          VMs, Label Selector, or Explicit MAC mappings\n- Dynamic agent deployment
          per WolConfig\n- Automatic cleanup via OwnerReference\n- Prometheus metrics
          integration (ServiceMonitor optional)\n\n**Post-Installation (OpenShift)**:
          To enable metrics collection in OpenShift cluster monitoring, run:\n```\noc
          label namespace <operator-namespace> openshift.io/cluster-monitoring=true\n```\nReplace
          `<operator-namespace>` with the namespace where the operator is installed
          (e.g., `kubevirt-wol-system`).\n\nAfter labeling the namespace, the operator
          metrics will appear in OpenShift Console → Observe → Targets.\n\n**Note
          on Metrics**: If Prometheus Operator is not installed, the ServiceMonitor
          resource will not be reconciled, but the operator will continue to function
          normally. Metrics are still available at the `/metrics` endpoint.\n\n**Usage**:
          After installation, create a WolConfig resource to configure Wake-on-LAN
          for your KubeVirt VirtualMachines.\n\n**Documentation**: https://github.com/gpillon/kubevirt-wol\n"
        displayName: Kubevirt Wake on Lan
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubevirt
        - wol
        - wake on lan
        - wake
        links:
        - name: Kubevirt Wol
          url: https://github.com/gpillon/kubevirt-wol
        maintainers:
        - email: gpillon@redhat.com
          name: Giorgio Pillon
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: K4all
          url: https://github.com/gpillon/kubevirt-wol
        relatedImages:
        - quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
        - quay.io/community-operator-pipeline-prod/kubevirt-wol:0.0.2
        version: 0.0.2
      entries:
      - name: kubevirt-wol.v0.0.2
        version: 0.0.2
      name: candidate-v0
    - currentCSV: kubevirt-wol.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kubevirt-wol"
                  },
                  "name": "default"
                },
                "spec": {
                  "agent": {
                    "imagePullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "All",
                  "namespaceSelectors": [
                    "default"
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "explicit-example"
                },
                "spec": {
                  "agent": {
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 600,
                  "discoveryMode": "Explicit",
                  "explicitMappings": [
                    {
                      "macAddress": "52:54:00:12:34:56",
                      "namespace": "default",
                      "vmName": "my-vm-1"
                    },
                    {
                      "macAddress": "52:54:00:ab:cd:ef",
                      "namespace": "production",
                      "vmName": "my-vm-2"
                    }
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "labelselector-example"
                },
                "spec": {
                  "agent": {
                    "nodeSelector": {
                      "node-role.kubernetes.io/worker": ""
                    },
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "LabelSelector",
                  "namespaceSelectors": [
                    "production"
                  ],
                  "vmSelector": {
                    "matchLabels": {
                      "wol.pillon.org/enabled": "true"
                    }
                  },
                  "wolPorts": [
                    9,
                    7
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: OpenShift Optional
          containerImage: quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
          createdAt: "2025-10-27T02:37:07Z"
          description: |
            A Kubernetes Operator that enables Wake-on-LAN functionality for KubeVirt VirtualMachines. This operator listens for WOL magic packets on the network and automatically starts the corresponding VirtualMachines in your Kubernetes cluster.
          operatorframework.io/suggested-namespace: kubevirt-wol-system
          operatorframework.io/suggested-namespace-template: |
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "kubevirt-wol-system",
                "annotations": {
                  "openshift.io/node-selector": ""
                },
                "labels": {
                  "openshift.io/cluster-monitoring": "true"
                }
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["servicemonitors.monitoring.coreos.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/gpillon/kubevirt-wol
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WolConfig is the Schema for the Wake-on-LAN configurations
              API
            displayName: Wol Config
            kind: WolConfig
            name: wolconfigs.wol.pillon.org
            version: v1beta1
        description: "A Kubernetes Operator that enables Wake-on-LAN functionality
          for KubeVirt VirtualMachines.\n\n**Installation**: This operator must be
          installed in the `kubevirt-wol-system` namespace.\n\n**Prerequisites**:
          \n- **Required**: KubeVirt must be installed in your cluster.\n- **Optional**:
          Prometheus Operator (for ServiceMonitor-based metrics collection). The operator
          works without it, but metrics will not be automatically scraped.\n\n**Features**:\n-
          Automatically starts VirtualMachines when WOL magic packets are received\n-
          Supports multiple WOL ports (default: UDP 9)\n- Three discovery modes: All
          VMs, Label Selector, or Explicit MAC mappings\n- Dynamic agent deployment
          per WolConfig\n- Automatic cleanup via OwnerReference\n- Prometheus metrics
          integration (ServiceMonitor optional)\n\n**Post-Installation (OpenShift)**:
          To enable metrics collection in OpenShift cluster monitoring, run:\n```\noc
          label namespace <operator-namespace> openshift.io/cluster-monitoring=true\n```\nReplace
          `<operator-namespace>` with the namespace where the operator is installed
          (e.g., `kubevirt-wol-system`).\n\nAfter labeling the namespace, the operator
          metrics will appear in OpenShift Console → Observe → Targets.\n\n**Note
          on Metrics**: If Prometheus Operator is not installed, the ServiceMonitor
          resource will not be reconciled, but the operator will continue to function
          normally. Metrics are still available at the `/metrics` endpoint.\n\n**Usage**:
          After installation, create a WolConfig resource to configure Wake-on-LAN
          for your KubeVirt VirtualMachines.\n\n**Documentation**: https://github.com/gpillon/kubevirt-wol\n"
        displayName: Kubevirt Wake on Lan
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubevirt
        - wol
        - wake on lan
        - wake
        links:
        - name: Kubevirt Wol
          url: https://github.com/gpillon/kubevirt-wol
        maintainers:
        - email: gpillon@redhat.com
          name: Giorgio Pillon
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: K4all
          url: https://github.com/gpillon/kubevirt-wol
        relatedImages:
        - quay.io/community-operator-pipeline-prod/kubevirt-wol:0.0.2
        - quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
        version: 0.0.2
      entries:
      - name: kubevirt-wol.v0.0.2
        version: 0.0.2
      name: fast-v0
    - currentCSV: kubevirt-wol.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "kubevirt-wol"
                  },
                  "name": "default"
                },
                "spec": {
                  "agent": {
                    "imagePullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "All",
                  "namespaceSelectors": [
                    "default"
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "explicit-example"
                },
                "spec": {
                  "agent": {
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 600,
                  "discoveryMode": "Explicit",
                  "explicitMappings": [
                    {
                      "macAddress": "52:54:00:12:34:56",
                      "namespace": "default",
                      "vmName": "my-vm-1"
                    },
                    {
                      "macAddress": "52:54:00:ab:cd:ef",
                      "namespace": "production",
                      "vmName": "my-vm-2"
                    }
                  ],
                  "wolPorts": [
                    9
                  ]
                }
              },
              {
                "apiVersion": "wol.pillon.org/v1beta1",
                "kind": "WolConfig",
                "metadata": {
                  "name": "labelselector-example"
                },
                "spec": {
                  "agent": {
                    "nodeSelector": {
                      "node-role.kubernetes.io/worker": ""
                    },
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "64Mi"
                      }
                    }
                  },
                  "cacheTTL": 300,
                  "discoveryMode": "LabelSelector",
                  "namespaceSelectors": [
                    "production"
                  ],
                  "vmSelector": {
                    "matchLabels": {
                      "wol.pillon.org/enabled": "true"
                    }
                  },
                  "wolPorts": [
                    9,
                    7
                  ]
                }
              }
            ]
          capabilities: Deep Insights
          categories: OpenShift Optional
          containerImage: quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
          createdAt: "2025-10-27T02:37:07Z"
          description: |
            A Kubernetes Operator that enables Wake-on-LAN functionality for KubeVirt VirtualMachines. This operator listens for WOL magic packets on the network and automatically starts the corresponding VirtualMachines in your Kubernetes cluster.
          operatorframework.io/suggested-namespace: kubevirt-wol-system
          operatorframework.io/suggested-namespace-template: |
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "kubevirt-wol-system",
                "annotations": {
                  "openshift.io/node-selector": ""
                },
                "labels": {
                  "openshift.io/cluster-monitoring": "true"
                }
              }
            }
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["servicemonitors.monitoring.coreos.com"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/gpillon/kubevirt-wol
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: WolConfig is the Schema for the Wake-on-LAN configurations
              API
            displayName: Wol Config
            kind: WolConfig
            name: wolconfigs.wol.pillon.org
            version: v1beta1
        description: "A Kubernetes Operator that enables Wake-on-LAN functionality
          for KubeVirt VirtualMachines.\n\n**Installation**: This operator must be
          installed in the `kubevirt-wol-system` namespace.\n\n**Prerequisites**:
          \n- **Required**: KubeVirt must be installed in your cluster.\n- **Optional**:
          Prometheus Operator (for ServiceMonitor-based metrics collection). The operator
          works without it, but metrics will not be automatically scraped.\n\n**Features**:\n-
          Automatically starts VirtualMachines when WOL magic packets are received\n-
          Supports multiple WOL ports (default: UDP 9)\n- Three discovery modes: All
          VMs, Label Selector, or Explicit MAC mappings\n- Dynamic agent deployment
          per WolConfig\n- Automatic cleanup via OwnerReference\n- Prometheus metrics
          integration (ServiceMonitor optional)\n\n**Post-Installation (OpenShift)**:
          To enable metrics collection in OpenShift cluster monitoring, run:\n```\noc
          label namespace <operator-namespace> openshift.io/cluster-monitoring=true\n```\nReplace
          `<operator-namespace>` with the namespace where the operator is installed
          (e.g., `kubevirt-wol-system`).\n\nAfter labeling the namespace, the operator
          metrics will appear in OpenShift Console → Observe → Targets.\n\n**Note
          on Metrics**: If Prometheus Operator is not installed, the ServiceMonitor
          resource will not be reconciled, but the operator will continue to function
          normally. Metrics are still available at the `/metrics` endpoint.\n\n**Usage**:
          After installation, create a WolConfig resource to configure Wake-on-LAN
          for your KubeVirt VirtualMachines.\n\n**Documentation**: https://github.com/gpillon/kubevirt-wol\n"
        displayName: Kubevirt Wake on Lan
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubevirt
        - wol
        - wake on lan
        - wake
        links:
        - name: Kubevirt Wol
          url: https://github.com/gpillon/kubevirt-wol
        maintainers:
        - email: gpillon@redhat.com
          name: Giorgio Pillon
        maturity: alpha
        minKubeVersion: 1.14.0
        provider:
          name: K4all
          url: https://github.com/gpillon/kubevirt-wol
        relatedImages:
        - quay.io/kubevirtwol/kubevirt-wol-manager:v0.0.2
        - quay.io/community-operator-pipeline-prod/kubevirt-wol:0.0.2
        version: 0.0.2
      entries:
      - name: kubevirt-wol.v0.0.2
        version: 0.0.2
      name: stable-v0
    defaultChannel: stable-v0
    packageName: kubevirt-wol
    provider:
      name: K4all
      url: https://github.com/gpillon/kubevirt-wol
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: self-node-remediation
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: self-node-remediation.v0.11.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediation",
                "metadata": {
                  "name": "selfnoderemediation-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationConfig",
                "metadata": {
                  "name": "self-node-remediation-config",
                  "namespace": "self-node-remediation"
                },
                "spec": {}
              },
              {
                "apiVersion": "self-node-remediation.medik8s.io/v1alpha1",
                "kind": "SelfNodeRemediationTemplate",
                "metadata": {
                  "name": "selfnoderemediationtemplate-sample"
                },
                "spec": {
                  "template": {
                    "spec": {}
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: registry.redhat.io/workload-availability/self-node-remediation-rhel9-operator@sha256:f13f5b22014e8819be39f45e476aef4a67e3645f9d20ad67b10fae9325ae473a
          createdAt: "2025-11-13 13:22:41"
          description: Self Node Remediation Operator for remediate itself in case
            of a failure.
          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: "true"
          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.skipRange: '>=0.10.0 <0.11.0'
          operatorframework.io/suggested-namespace: openshift-workload-availability
          operatorframework.io/suggested-namespace-template: '{"kind":"Namespace","apiVersion":"v1","metadata":{"name":"openshift-workload-availability","annotations":{"openshift.io/node-selector":""}}}'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/medik8s/self-node-remediation
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SelfNodeRemediationConfig is the Schema for the selfnoderemediationconfigs
              API in which a user can configure the self node remediation agents
            displayName: Self Node Remediation Config
            kind: SelfNodeRemediationConfig
            name: selfnoderemediationconfigs.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediation is the Schema for the selfnoderemediations
              API
            displayName: Self Node Remediation
            kind: SelfNodeRemediation
            name: selfnoderemediations.self-node-remediation.medik8s.io
            version: v1alpha1
          - description: SelfNodeRemediationTemplate is the Schema for the selfnoderemediationtemplates
              API
            displayName: Self Node Remediation Template
            kind: SelfNodeRemediationTemplate
            name: selfnoderemediationtemplates.self-node-remediation.medik8s.io
            version: v1alpha1
        description: This self node remediation operator is using an alternate mechanism
          for a node in a cluster to detect its health status and take actions to
          remediate itself in case of a failure. While not all remediation events
          can result in the node returning to a healthy state, the operator does allow
          surviving parts of the cluster to assume the node has reached a safe state
          so that it’s workloads can be automatically recovered. A prerequisite for
          the Self Node Remediation operator is a functioning health detection system
          that implements the external remediation API, such as Node Health Check
          Operator or Machine Health Check Controller (in OCP or Cluster-API based
          clusters). Once a node/machine is unhealthy, the detection system will create
          the SelfNodeRemediation CR, which triggers the Self Node Remediation Operator.
          For this the configuration of the health detection system needs to refer
          to a SelfNodeRemediationTemplate CR. Such a template is created by default
          in the operator's namespace, for usage in other namespaces it needs to be
          created manually. The Node Health Check Operator is configured to use Self
          Node Remediation by default.
        displayName: Self Node Remediation Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - fencing
        - remediation
        - auto-healing
        - recovery
        - high-availability
        - baremetal
        - SNR
        links:
        - name: Self Node Remediation
          url: https://access.redhat.com/documentation/en-us/workload_availability_for_red_hat_openshift/25.9/html/remediation_fencing_and_maintenance/about-remediation-fencing-maintenance
        - name: Source Code
          url: https://github.com/medik8s/self-node-remediation
        maintainers:
        - email: team-dragonfly@redhat.com
          name: Dragonfly Team
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:b488f8b1cda2b5d2c9c9a0b55fcc9e687716f62fb101abea3f44b8fa46f6c814
        - registry.redhat.io/workload-availability/self-node-remediation-rhel9-operator@sha256:f13f5b22014e8819be39f45e476aef4a67e3645f9d20ad67b10fae9325ae473a
        - registry.redhat.io/workload-availability/self-node-remediation-operator-bundle@sha256:3bf8ef27f9a7f50c7e9fa066cabe8927efc8a3a890783bd9b60156b4ef417a77
        version: 0.11.0
      entries:
      - name: self-node-remediation.v0.11.0
        version: 0.11.0
      - name: self-node-remediation.v0.10.2
        version: 0.10.2
      - name: self-node-remediation.v0.10.1
        version: 0.10.1
      - name: self-node-remediation.v0.10.0
        version: 0.10.0
      name: stable
    defaultChannel: stable
    packageName: self-node-remediation
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: openshift-external-secrets-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: external-secrets-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secret-cluster"
                },
                "spec": {
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "gcp-secret"
                        },
                        "secretKey": "key"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    },
                    "target": {
                      "creationPolicy": "Owner",
                      "name": "gcp-secret-k8s"
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "app.kubernetes.io/managed-by": "external-secrets-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-cluster-secretstore"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds",
                            "namespace": "external-secrets"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-secret",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "gcp-secret",
                        "property": "Key"
                      },
                      "secretKey": "Key"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secretstore"
                  },
                  "target": {
                    "creationPolicy": "Owner",
                    "name": "k8s-secret"
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "SecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/disable-maintenance-checks": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secretstore",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "PushSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "pushsecret-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "config": {
                    "gcp": {
                      "projectID": "openshift-sample-project",
                      "secret": {
                        "name": "test",
                        "replicationPolicy": "automatic",
                        "version": "latest"
                      }
                    }
                  },
                  "secretStoreRefs": [
                    {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    }
                  ],
                  "selector": {
                    "secret": {
                      "name": "gcp-secret-k8s"
                    }
                  }
                }
              },
              {
                "apiVersion": "generators.external-secrets.io/v1alpha1",
                "kind": "Password",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "password-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "excludeLowercase": false,
                  "excludeNumbers": false,
                  "excludeUppercase": false,
                  "includeSymbols": true,
                  "length": 20
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsConfig",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsManager",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
          createdAt: 2025-11-03T08:48:11
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.0
          operator.openshift.io/uninstall-message: The External Secrets Operator for
            Red Hat OpenShift will be removed from external-secrets-operator namespace.
            If your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/external_secrets_operator/external-secrets-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: external-secrets-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/external-secrets-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ACRAccessToken returns an Azure Container Registry token that can be used for pushing/pulling images.
              Note: by default it will return an ACR Refresh Token with full access (depending on the identity).
              This can be scoped down to the repository level using .spec.scope. In case scope is defined it will return an ACR Access Token.

              See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
            displayName: ACRAccessToken
            kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterExternalSecret is the Schema for the clusterexternalsecrets
              API.
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1
          - description: ClusterGenerator represents a cluster-wide generator which
              can be referenced as part of `generatorRef` fields.
            displayName: ClusterGenerator
            kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterPushSecret is the Schema for the clusterpushsecrets
              API.
            displayName: ClusterPushSecret
            kind: ClusterPushSecret
            name: clusterpushsecrets.external-secrets.io
            version: v1alpha1
          - description: ClusterSecretStore represents a secure external location
              for storing secrets, which can be referenced as part of `storeRef` fields.
            displayName: ClusterSecretStore
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1
          - description: |-
              ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token. The authorization
              token is valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded and
              used in a Docker login command to authenticate to a registry. For more information, see Registry authentication
              (https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth)
              in the Amazon Elastic Container Registry User Guide.
            displayName: ECRAuthorizationToken
            kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: ExternalSecret is the Schema for the external-secrets API.
            displayName: ExternalSecret
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1
          - description: |-
              ExternalSecretsConfig describes configuration and information about the managed external-secrets deployment.
              The name must be `cluster` as ExternalSecretsConfig is a singleton, allowing only one instance per cluster.

              When an ExternalSecretsConfig is created, the controller installs the external-secrets and keeps it in the desired state.
            displayName: ExternalSecretsConfig
            kind: ExternalSecretsConfig
            name: externalsecretsconfigs.operator.openshift.io
            version: v1alpha1
          - description: |-
              ExternalSecretsManager describes configuration and information about the deployments managed by
              the operator. The name must be `cluster` to make ExternalSecretsManager a singleton that is, to
              allow only one instance of ExternalSecretsManager per cluster.

              ExternalSecretsManager is mainly for configuring the global options and enabling the features, which
              serves as a common/centralized config for managing multiple controllers of the operator. The object
              will be created during the operator installation.
            displayName: ExternalSecretsManager
            kind: ExternalSecretsManager
            name: externalsecretsmanagers.operator.openshift.io
            version: v1alpha1
          - description: GCRAccessToken generates a GCP access token that can be used
              to authenticate with GCR.
            displayName: GCRAccessToken
            kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: GeneratorState is the Schema for the generatorstates API.
            displayName: GeneratorState
            kind: GeneratorState
            name: generatorstates.generators.external-secrets.io
            version: v1alpha1
          - description: GithubAccessToken generates a ghs_ access token
            displayName: GithubAccessToken
            kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Grafana is the Schema for the grafanas API.
            displayName: Grafana
            kind: Grafana
            name: grafanas.generators.external-secrets.io
            version: v1alpha1
          - description: MFA generates a new TOTP token that is compliant with RFC
              6238.
            displayName: MFA
            kind: MFA
            name: mfas.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Password generates a random password based on the configuration parameters in spec. You can specify the length,
              character set and other attributes.
            displayName: Password
            kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - description: PushSecret is the Schema for the pushsecrets API.
            displayName: PushSecret
            kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: QuayAccessToken generates a Quay OAuth token for pulling/pushing
              images.
            displayName: QuayAccessToken
            kind: QuayAccessToken
            name: quayaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: SecretStore represents a secure external location for storing
              secrets, which can be referenced as part of `storeRef` fields.
            displayName: SecretStore
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1
          - description: SSHKey generates SSH key pairs.
            displayName: SSHKey
            kind: SSHKey
            name: sshkeys.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              STSSessionToken uses the GetSessionToken API to retrieve an authorization token. The authorization token is
              valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded.
              For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
            displayName: STSSessionToken
            kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - description: UUID generates a version 1 UUID (for example, 6ba7b810-9dad-11d1-80b4-00c04fd430c8).
            displayName: UUID
            kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - description: VaultDynamicSecret is the Schema for the vaultdynamicsecrets
              API.
            displayName: VaultDynamicSecret
            kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Webhook connects to a third party API server to handle the secrets generation configuration parameters in spec. You
              can specify the server, the token, and additional body parameters. See documentation for the full API specification
              for requests and responses.
            displayName: Webhook
            kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: External Secrets Operator for Red Hat OpenShift deploys and manages
          `external-secrets` application in OpenShift clusters. `external-secrets`
          provides an uniform interface to fetch secrets stored in external providers
          like  AWS Secrets Manager, HashiCorp Vault, Google Secrets Manager, Azure
          Key Vault, IBM Cloud Secrets Manager to name a few, stores them as secrets
          in OpenShift. It provides APIs to define authentication and the details
          of the secret to fetch.
        displayName: External Secrets Operator for Red Hat OpenShift
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - secrets
        - external-secrets
        - external-secrets-operator
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/security_and_compliance/external-secrets-operator-for-red-hat-openshift
        - name: External Secrets Operator
          url: https://github.com/openshift/external-secrets-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/external-secrets-operator/bitwarden-sdk-server-rhel9@sha256:0e00fb4b8fc3815e55e9c593766cfa85a34671b8401eabc488b48b66b5d1b374
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-bundle@sha256:8c59a65dda3545cf009585f154e62bd19dce02c95214b76ae164f51999ad760c
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
        - registry.redhat.io/external-secrets-operator/external-secrets-rhel9@sha256:a594323b4d3ad6a739246f3767231ad2d57ca94bb1d035610d52a525b420b452
        version: 1.0.0
      entries:
      - name: external-secrets-operator.v1.0.0
        version: 1.0.0
      name: stable-v1
    - currentCSV: external-secrets-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secret-cluster"
                },
                "spec": {
                  "externalSecretSpec": {
                    "data": [
                      {
                        "remoteRef": {
                          "key": "gcp-secret"
                        },
                        "secretKey": "key"
                      }
                    ],
                    "refreshInterval": "1h",
                    "secretStoreRef": {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    },
                    "target": {
                      "creationPolicy": "Owner",
                      "name": "gcp-secret-k8s"
                    }
                  },
                  "namespaceSelector": {
                    "matchLabels": {
                      "app.kubernetes.io/managed-by": "external-secrets-operator"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ClusterSecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-cluster-secretstore"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds",
                            "namespace": "external-secrets"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "ExternalSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "gcp-secret",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "data": [
                    {
                      "remoteRef": {
                        "key": "gcp-secret",
                        "property": "Key"
                      },
                      "secretKey": "Key"
                    }
                  ],
                  "refreshInterval": "1h",
                  "secretStoreRef": {
                    "kind": "SecretStore",
                    "name": "secretstore"
                  },
                  "target": {
                    "creationPolicy": "Owner",
                    "name": "k8s-secret"
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1",
                "kind": "SecretStore",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/disable-maintenance-checks": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "secretstore",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "provider": {
                    "gcpsm": {
                      "auth": {
                        "secretRef": {
                          "secretAccessKeySecretRef": {
                            "key": "secret-access-key.json",
                            "name": "gcp-creds"
                          }
                        }
                      },
                      "projectID": "openshift-sample-project"
                    }
                  }
                }
              },
              {
                "apiVersion": "external-secrets.io/v1alpha1",
                "kind": "PushSecret",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "pushsecret-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "config": {
                    "gcp": {
                      "projectID": "openshift-sample-project",
                      "secret": {
                        "name": "test",
                        "replicationPolicy": "automatic",
                        "version": "latest"
                      }
                    }
                  },
                  "secretStoreRefs": [
                    {
                      "kind": "ClusterSecretStore",
                      "name": "gcp-cluster-secretstore"
                    }
                  ],
                  "selector": {
                    "secret": {
                      "name": "gcp-secret-k8s"
                    }
                  }
                }
              },
              {
                "apiVersion": "generators.external-secrets.io/v1alpha1",
                "kind": "Password",
                "metadata": {
                  "annotations": {
                    "external-secrets.io/example": "true"
                  },
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "password-sample",
                  "namespace": "external-secrets"
                },
                "spec": {
                  "excludeLowercase": false,
                  "excludeNumbers": false,
                  "excludeUppercase": false,
                  "includeSymbols": true,
                  "length": 20
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsConfig",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "ExternalSecretsManager",
                "metadata": {
                  "labels": {
                    "app": "external-secrets-operator"
                  },
                  "name": "cluster"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
          createdAt: 2025-11-03T08:48:11
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: <1.0.0
          operator.openshift.io/uninstall-message: The External Secrets Operator for
            Red Hat OpenShift will be removed from external-secrets-operator namespace.
            If your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/external_secrets_operator/external-secrets-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: external-secrets-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/external-secrets-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ACRAccessToken returns an Azure Container Registry token that can be used for pushing/pulling images.
              Note: by default it will return an ACR Refresh Token with full access (depending on the identity).
              This can be scoped down to the repository level using .spec.scope. In case scope is defined it will return an ACR Access Token.

              See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
            displayName: ACRAccessToken
            kind: ACRAccessToken
            name: acraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterExternalSecret is the Schema for the clusterexternalsecrets
              API.
            displayName: ClusterExternalSecret
            kind: ClusterExternalSecret
            name: clusterexternalsecrets.external-secrets.io
            version: v1
          - description: ClusterGenerator represents a cluster-wide generator which
              can be referenced as part of `generatorRef` fields.
            displayName: ClusterGenerator
            kind: ClusterGenerator
            name: clustergenerators.generators.external-secrets.io
            version: v1alpha1
          - description: ClusterPushSecret is the Schema for the clusterpushsecrets
              API.
            displayName: ClusterPushSecret
            kind: ClusterPushSecret
            name: clusterpushsecrets.external-secrets.io
            version: v1alpha1
          - description: ClusterSecretStore represents a secure external location
              for storing secrets, which can be referenced as part of `storeRef` fields.
            displayName: ClusterSecretStore
            kind: ClusterSecretStore
            name: clustersecretstores.external-secrets.io
            version: v1
          - description: |-
              ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token. The authorization
              token is valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded and
              used in a Docker login command to authenticate to a registry. For more information, see Registry authentication
              (https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth)
              in the Amazon Elastic Container Registry User Guide.
            displayName: ECRAuthorizationToken
            kind: ECRAuthorizationToken
            name: ecrauthorizationtokens.generators.external-secrets.io
            version: v1alpha1
          - description: ExternalSecret is the Schema for the external-secrets API.
            displayName: ExternalSecret
            kind: ExternalSecret
            name: externalsecrets.external-secrets.io
            version: v1
          - description: |-
              ExternalSecretsConfig describes configuration and information about the managed external-secrets deployment.
              The name must be `cluster` as ExternalSecretsConfig is a singleton, allowing only one instance per cluster.

              When an ExternalSecretsConfig is created, the controller installs the external-secrets and keeps it in the desired state.
            displayName: ExternalSecretsConfig
            kind: ExternalSecretsConfig
            name: externalsecretsconfigs.operator.openshift.io
            version: v1alpha1
          - description: |-
              ExternalSecretsManager describes configuration and information about the deployments managed by
              the operator. The name must be `cluster` to make ExternalSecretsManager a singleton that is, to
              allow only one instance of ExternalSecretsManager per cluster.

              ExternalSecretsManager is mainly for configuring the global options and enabling the features, which
              serves as a common/centralized config for managing multiple controllers of the operator. The object
              will be created during the operator installation.
            displayName: ExternalSecretsManager
            kind: ExternalSecretsManager
            name: externalsecretsmanagers.operator.openshift.io
            version: v1alpha1
          - description: GCRAccessToken generates a GCP access token that can be used
              to authenticate with GCR.
            displayName: GCRAccessToken
            kind: GCRAccessToken
            name: gcraccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: GeneratorState is the Schema for the generatorstates API.
            displayName: GeneratorState
            kind: GeneratorState
            name: generatorstates.generators.external-secrets.io
            version: v1alpha1
          - description: GithubAccessToken generates a ghs_ access token
            displayName: GithubAccessToken
            kind: GithubAccessToken
            name: githubaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: Grafana is the Schema for the grafanas API.
            displayName: Grafana
            kind: Grafana
            name: grafanas.generators.external-secrets.io
            version: v1alpha1
          - description: MFA generates a new TOTP token that is compliant with RFC
              6238.
            displayName: MFA
            kind: MFA
            name: mfas.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Password generates a random password based on the configuration parameters in spec. You can specify the length,
              character set and other attributes.
            displayName: Password
            kind: Password
            name: passwords.generators.external-secrets.io
            version: v1alpha1
          - description: PushSecret is the Schema for the pushsecrets API.
            displayName: PushSecret
            kind: PushSecret
            name: pushsecrets.external-secrets.io
            version: v1alpha1
          - description: QuayAccessToken generates a Quay OAuth token for pulling/pushing
              images.
            displayName: QuayAccessToken
            kind: QuayAccessToken
            name: quayaccesstokens.generators.external-secrets.io
            version: v1alpha1
          - description: SecretStore represents a secure external location for storing
              secrets, which can be referenced as part of `storeRef` fields.
            displayName: SecretStore
            kind: SecretStore
            name: secretstores.external-secrets.io
            version: v1
          - description: SSHKey generates SSH key pairs.
            displayName: SSHKey
            kind: SSHKey
            name: sshkeys.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              STSSessionToken uses the GetSessionToken API to retrieve an authorization token. The authorization token is
              valid for 12 hours. The authorizationToken returned is a base64 encoded string that can be decoded.
              For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
            displayName: STSSessionToken
            kind: STSSessionToken
            name: stssessiontokens.generators.external-secrets.io
            version: v1alpha1
          - description: UUID generates a version 1 UUID (for example, 6ba7b810-9dad-11d1-80b4-00c04fd430c8).
            displayName: UUID
            kind: UUID
            name: uuids.generators.external-secrets.io
            version: v1alpha1
          - description: VaultDynamicSecret is the Schema for the vaultdynamicsecrets
              API.
            displayName: VaultDynamicSecret
            kind: VaultDynamicSecret
            name: vaultdynamicsecrets.generators.external-secrets.io
            version: v1alpha1
          - description: |-
              Webhook connects to a third party API server to handle the secrets generation configuration parameters in spec. You
              can specify the server, the token, and additional body parameters. See documentation for the full API specification
              for requests and responses.
            displayName: Webhook
            kind: Webhook
            name: webhooks.generators.external-secrets.io
            version: v1alpha1
        description: External Secrets Operator for Red Hat OpenShift deploys and manages
          `external-secrets` application in OpenShift clusters. `external-secrets`
          provides an uniform interface to fetch secrets stored in external providers
          like  AWS Secrets Manager, HashiCorp Vault, Google Secrets Manager, Azure
          Key Vault, IBM Cloud Secrets Manager to name a few, stores them as secrets
          in OpenShift. It provides APIs to define authentication and the details
          of the secret to fetch.
        displayName: External Secrets Operator for Red Hat OpenShift
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - secrets
        - external-secrets
        - external-secrets-operator
        links:
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/security_and_compliance/external-secrets-operator-for-red-hat-openshift
        - name: External Secrets Operator
          url: https://github.com/openshift/external-secrets-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/external-secrets-operator/bitwarden-sdk-server-rhel9@sha256:0e00fb4b8fc3815e55e9c593766cfa85a34671b8401eabc488b48b66b5d1b374
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-bundle@sha256:8c59a65dda3545cf009585f154e62bd19dce02c95214b76ae164f51999ad760c
        - registry.redhat.io/external-secrets-operator/external-secrets-operator-rhel9@sha256:72c906d2908f999e8ac26a36a882a230973d07e4ddfd0b7935ccf8b30ad90ef2
        - registry.redhat.io/external-secrets-operator/external-secrets-rhel9@sha256:a594323b4d3ad6a739246f3767231ad2d57ca94bb1d035610d52a525b420b452
        version: 1.0.0
      entries:
      - name: external-secrets-operator.v1.0.0
        version: 1.0.0
      name: stable-v1.0
    defaultChannel: stable-v1
    packageName: openshift-external-secrets-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NetScaler
      provider-url: https://netscaler.com
    name: netscaler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: netscaler-operator.v3.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCloudController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalercloudcontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "azure": {
                    "clientsecret": "",
                    "image": "quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb",
                    "location": "",
                    "pullPolicy": "IfNotPresent",
                    "resourcegroupname": "",
                    "resources": {},
                    "subnetname": "",
                    "subscriptionid": "",
                    "tenantid": "",
                    "vnetname": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCpxWithIngressController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalercpxwithingresscontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "admSettings": {
                    "admIP": "",
                    "bandWidth": 1000,
                    "bandWidthLicense": false,
                    "cpxCores": 1,
                    "licenseEdition": "PLATINUM",
                    "licenseServerIP": "",
                    "licenseServerPort": 27000,
                    "licensingMode": "pool",
                    "loginSecret": "",
                    "platform": false,
                    "vCPULicense": false
                  },
                  "affinity": {},
                  "analyticsConfig": {
                    "distributedTracing": {
                      "enable": false,
                      "samplingRate": 100
                    },
                    "endpoint": {
                      "metrics": {
                        "service": ""
                      },
                      "transactions": {
                        "service": ""
                      }
                    },
                    "required": false,
                    "timeseries": {
                      "auditLogs": {
                        "enable": false
                      },
                      "events": {
                        "enable": false
                      },
                      "metrics": {
                        "enable": false,
                        "enableNativeScrape": false,
                        "exportFrequency": 30,
                        "mode": "avro",
                        "schemaFile": "schema.json"
                      },
                      "port": 5563
                    },
                    "transactions": {
                      "enable": false,
                      "port": 5557
                    }
                  },
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {}
                  },
                  "extraVolumes": [],
                  "imagePullSecrets": [],
                  "ingressController": {
                    "defaultSSLCertSecret": "",
                    "defaultSSLSNICertSecret": "",
                    "disableAPIServerCertVerify": false,
                    "disableOpenshiftRoutes": true,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "k8s",
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "ingressClass": [],
                    "ipam": false,
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "logProxy": "",
                    "namespaceLabels": "",
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "profileHttpFrontend": {},
                    "profileSslFrontend": {},
                    "profileTcpFrontend": {},
                    "pullPolicy": "IfNotPresent",
                    "rbacRole": false,
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 50,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "128m",
                        "memory": "500Mi"
                      }
                    },
                    "routeLabels": "",
                    "setAsDefaultIngressClass": false,
                    "updateIngressStatus": true
                  },
                  "netscalerCpx": {
                    "bgpSettings": {
                      "bgpConfig": [
                        {
                          "bgpRouter": {
                            "localAS": 100,
                            "neighbor": [
                              {
                                "ASOriginationInterval": 10,
                                "address": "",
                                "advertisementInterval": 10,
                                "remoteAS": 100
                              }
                            ]
                          }
                        }
                      ],
                      "bgpPort": 179
                    },
                    "cpxBgpRouter": false,
                    "cpxCommands": [],
                    "cpxLicenseAggregator": "",
                    "cpxShellCommands": [],
                    "daemonSet": false,
                    "enableLivenessProbe": true,
                    "enableStartupProbe": true,
                    "extraVolumeMounts": [],
                    "hostname": "",
                    "image": "quay.io/netscaler/netscaler-cpx@sha256:c7fca5069cf2306f915b6f9aeac59a9f921a0093681768ab81e7fb4fef84f970",
                    "ingressIP": "",
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    },
                    "mgmtHttpPort": 9080,
                    "mgmtHttpsPort": 9443,
                    "nitroReadTimeout": 20,
                    "nsConfigDnsRec": false,
                    "nsCookieVersion": 0,
                    "nsDnsNameserver": "",
                    "nsEnableLabels": true,
                    "nsGateway": "192.168.1.1",
                    "nsHttp2ServerSide": "OFF",
                    "nsIP": "192.168.1.2",
                    "nsLbHashAlgo": {
                      "hashAlgorithm": "default",
                      "hashFingers": 500,
                      "required": false
                    },
                    "nsProtocol": "HTTP",
                    "nsSvcLbDnsRec": false,
                    "prometheusCredentialSecret": "",
                    "pullPolicy": "IfNotPresent",
                    "service": {
                      "annotations": {},
                      "spec": {}
                    },
                    "startupProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    }
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "replicaCount": 1,
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCpxWithK8sGatewayController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalercpxwithk8sgatewaycontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "admSettings": {
                    "admIP": "",
                    "bandWidth": 1000,
                    "bandWidthLicense": false,
                    "cpxCores": 1,
                    "licenseEdition": "PLATINUM",
                    "licenseServerIP": "",
                    "licenseServerPort": 27000,
                    "licensingMode": "pool",
                    "loginSecret": "",
                    "platform": false,
                    "vCPULicense": false
                  },
                  "affinity": {},
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {}
                  },
                  "extraVolumes": [],
                  "gatewayController": {
                    "certBundle": false,
                    "disableAPIServerCertVerify": false,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "k8s",
                    "extraVolumeMounts": [],
                    "gatewayControllerName": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "namespaceLabels": "",
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "pullPolicy": "IfNotPresent",
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 50,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "128m",
                        "memory": "500Mi"
                      }
                    }
                  },
                  "imagePullSecrets": [],
                  "netscalerCpx": {
                    "cpxCommands": [],
                    "cpxLicenseAggregator": "",
                    "cpxShellCommands": [],
                    "enableLivenessProbe": true,
                    "enableStartupProbe": true,
                    "extraVolumeMounts": [],
                    "hostname": "",
                    "image": "quay.io/netscaler/netscaler-cpx@sha256:c7fca5069cf2306f915b6f9aeac59a9f921a0093681768ab81e7fb4fef84f970",
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    },
                    "mgmtHttpPort": 9080,
                    "mgmtHttpsPort": 9443,
                    "nitroReadTimeout": 20,
                    "nsIP": "192.168.1.2",
                    "nsProtocol": "HTTP",
                    "pullPolicy": "IfNotPresent",
                    "resources": {},
                    "service": {
                      "annotations": {},
                      "spec": {}
                    },
                    "startupProbe": {
                      "failureThreshold": 20,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 5,
                      "successThreshold": 1
                    }
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "replicaCount": 1,
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerGslbController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalergslbcontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "gslbController": {
                    "disableAPIServerCertVerify": false,
                    "entityPrefix": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "kubernetesURL": "",
                    "localCluster": "",
                    "localRegion": "",
                    "logLevel": "INFO",
                    "openshift": true,
                    "pullPolicy": "IfNotPresent",
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "32m",
                        "memory": "128Mi"
                      }
                    },
                    "siteData": [
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteMask": "",
                        "siteName": "",
                        "sitePublicIp": "",
                        "siteRegion": ""
                      },
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteMask": "",
                        "siteName": "",
                        "sitePublicIp": "",
                        "siteRegion": ""
                      }
                    ]
                  },
                  "imagePullSecrets": [],
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "localSiteSelection": false,
                    "nitroReadTimeout": 20,
                    "nsIP": "",
                    "nsPort": 443,
                    "nsProtocol": "HTTPS"
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerIngressController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscaleringresscontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "analyticsConfig": {
                    "distributedTracing": {
                      "enable": false,
                      "samplingRate": 100
                    },
                    "endpoint": {
                      "metrics": {
                        "service": ""
                      },
                      "transactions": {
                        "service": ""
                      }
                    },
                    "required": false,
                    "timeseries": {
                      "auditLogs": {
                        "enable": false
                      },
                      "events": {
                        "enable": false
                      },
                      "metrics": {
                        "enable": false,
                        "enableNativeScrape": false,
                        "exportFrequency": 50,
                        "mode": "avro",
                        "schemaFile": "schema.json"
                      },
                      "port": 50002
                    },
                    "transactions": {
                      "enable": false,
                      "port": 50005
                    }
                  },
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {},
                    "serviceMonitorExtraLabels": {}
                  },
                  "extraVolumes": [],
                  "hostAliases": [],
                  "imagePullSecrets": [],
                  "ingressController": {
                    "certBundle": false,
                    "clusterName": "",
                    "defaultSSLCertSecret": "",
                    "defaultSSLSNICertSecret": "",
                    "disableAPIServerCertVerify": false,
                    "disableOpenshiftRoutes": true,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "",
                    "extraVolumeMounts": [],
                    "ignoreNodeExternalIP": false,
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "ingressClass": [],
                    "ipam": false,
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "logProxy": "",
                    "multiClusterPrefix": "",
                    "namespaceLabels": "",
                    "nodeLabels": "",
                    "nodeWatch": false,
                    "nsValidateCert": {},
                    "nsncPbr": false,
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "podIPsforServiceGroupMembers": false,
                    "profileHttpFrontend": {},
                    "profileSslFrontend": {},
                    "profileTcpFrontend": {},
                    "pullPolicy": "IfNotPresent",
                    "rbacRole": false,
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "32m",
                        "memory": "128Mi"
                      }
                    },
                    "routeLabels": "",
                    "serviceClass": [],
                    "setAsDefaultIngressClass": false,
                    "updateIngressStatus": true
                  },
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "nitroReadTimeout": 20,
                    "nsConfigDnsRec": false,
                    "nsCookieVersion": 0,
                    "nsDnsNameserver": "",
                    "nsHttp2ServerSide": "OFF",
                    "nsIP": "",
                    "nsLbHashAlgo": {
                      "hashAlgorithm": "default",
                      "hashFingers": 256,
                      "required": false
                    },
                    "nsPort": 443,
                    "nsProtocol": "HTTPS",
                    "nsSNIPs": [],
                    "nsSvcLbDnsRec": false,
                    "nsVIP": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerIpamController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscaleripamcontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "clusterName": "",
                  "image": "quay.io/netscaler/netscaler-ipam-controller@sha256:7c25b59a2e1df0e4f5615a779a9bea939c60a3eca065cb6c2295daf0d03831d8",
                  "localIPAM": {
                    "vipRange": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "reuseIngressVIP": true,
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerK8sGatewayController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalerk8sgatewaycontroller-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "exporter": {
                    "extraVolumeMounts": [],
                    "image": "quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20",
                    "ports": {
                      "containerPort": 8888
                    },
                    "pullPolicy": "IfNotPresent",
                    "required": false,
                    "resources": {},
                    "serviceMonitorExtraLabels": {}
                  },
                  "extraVolumes": [],
                  "gatewayController": {
                    "certBundle": false,
                    "clusterName": "",
                    "disableAPIServerCertVerify": false,
                    "enableLivenessProbe": true,
                    "enableReadinessProbe": true,
                    "entityPrefix": "",
                    "extraVolumeMounts": [],
                    "gatewayControllerName": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67",
                    "jsonLog": false,
                    "kubernetesURL": "",
                    "livenessProbe": {
                      "initialDelaySeconds": 30,
                      "periodSeconds": 60
                    },
                    "logLevel": "INFO",
                    "nodeWatch": false,
                    "nsValidateCert": {},
                    "nsncPbr": false,
                    "openshift": true,
                    "optimizeEndpointBinding": false,
                    "podIPsforServiceGroupMembers": false,
                    "pullPolicy": "IfNotPresent",
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 60,
                      "successThreshold": 1
                    },
                    "resources": {
                      "limits": {},
                      "requests": {
                        "cpu": "32m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "hostAliases": [],
                  "imagePullSecrets": [],
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "nitroReadTimeout": 20,
                    "nsIP": "",
                    "nsPort": 443,
                    "nsProtocol": "HTTPS",
                    "nsSNIPs": [],
                    "nsVIP": ""
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "serviceAccount": {
                      "create": true
                    },
                  "tokenExpirationSeconds": 31536000,
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerObservabilityExporter",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscaler-operator"
                  },
                  "name": "netscalerobservabilityexporter-sample"
                },
                "spec": {
                  "acceptLicense": "No",
                  "affinity": {},
                  "elasticsearch": {
                    "enabled": false,
                    "server": "http://elasticsearch:9200"
                  },
                  "headless": false,
                  "image": "quay.io/netscaler/netscaler-observability-exporter@sha256:626e3a954c67bbb910477352dc740aaab21ff1c1cfb03354becf50beab17d4a4",
                  "jsonTransRateLimiting": {
                    "enabled": false,
                    "limit": 100,
                    "queueLimit": 1000,
                    "window": 5
                  },
                  "kafka": {
                    "auditLogs": "no",
                    "broker": "",
                    "dataFormat": "AVRO",
                    "enabled": false,
                    "events": "no",
                    "topic": "HTTP"
                  },
                  "nodePortRequired": false,
                  "nodeSelector": {},
                  "nsoeLogLevel": "INFO",
                  "nstracing": {
                    "enabled": false,
                    "server": "zipkin:9411/api/v1/spans"
                  },
                  "podAnnotations": {},
                  "pullPolicy": "IfNotPresent",
                  "replicas": 1,
                  "resources": {},
                  "splunk": {
                    "authToken": "",
                    "enabled": false,
                    "indexPrefix": "adc_nsoe",
                    "server": "http://splunk:8088"
                  },
                  "timeseries": {
                    "enabled": false
                  },
                  "tolerations": [],
                  "upgradeImageAlways": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-operator@sha256:912813b608a51be599ef01ea340ad09238d7ab76fbfa4e83ee8128fa2348bf5b
          createdAt: "2025-08-25T17:13:12Z"
          description: This is an operator to install Cloud Native portfolio provided
            by NetScaler
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler Kubernetes Gateway Controller for NetScaler
              VPX/MPX/SDX.
            displayName: Netscaler K8s Gateway Controller
            kind: NetscalerK8sGatewayController
            name: netscalerk8sgatewaycontrollers.netscaler.com
            version: v1
          - description: To Install NetScaler CPX with Kubernetes Gateway Controller.
            displayName: Netscaler CPX With K8s Gateway Controller
            kind: NetscalerCpxWithK8sGatewayController
            name: netscalercpxwithk8sgatewaycontrollers.netscaler.com
            version: v1
          - description: To install NetScaler Ingress Controller for NetScaler VPX/MPX/SDX.
            displayName: Netscaler Ingress Controller
            kind: NetscalerIngressController
            name: netscaleringresscontrollers.netscaler.com
            version: v1
          - description: To install NetScaler CPX with Ingress Controller.
            displayName: Netscaler CPX With Ingress Controller
            kind: NetscalerCpxWithIngressController
            name: netscalercpxwithingresscontrollers.netscaler.com
            version: v1
          - description: To install NetScaler GSLB Controller for NetScaler VPX/MPX/SDX.
            displayName: Netscaler GSLB Controller
            kind: NetscalerGslbController
            name: netscalergslbcontrollers.netscaler.com
            version: v1
          - description: To install NetScaler IPAM Controller for NetScaler CPX/VPX/MPX/SDX.
            displayName: Netscaler IPAM Controller
            kind: NetscalerIpamController
            name: netscaleripamcontrollers.netscaler.com
            version: v1
          - description: To install NetScaler Observability Exporter for NetScaler.
            displayName: Netscaler Observability Exporter
            kind: NetscalerObservabilityExporter
            name: netscalerobservabilityexporters.netscaler.com
            version: v1
          - description: To install NetScaler Cloud Controller for NetScaler VPX/MPX/SDX
              with Azure Redhat OpenShift in Azure.
            displayName: Netscaler Cloud Controller
            kind: NetscalerCloudController
            name: netscalercloudcontrollers.netscaler.com
            version: v1
        description: |
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster. Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Kubernetes Gateway Controller](https://docs.netscaler.com/en-us/netscaler-kubernetes-gateway-controller/getting-started#how-to-deploy-netscaler-kubernetes-gateway-controller-in-a-kubernetes-cluster)
          2. [NetScaler CPX with Kubernetes Gateway Controller](https://docs.netscaler.com/en-us/netscaler-kubernetes-gateway-controller/getting-started#how-to-deploy-netscaler-cpx-with-netscaler-kubernetes-gateway-controller-in-a-kubernetes-cluster)
          3. [NetScaler Ingress Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/unified-ingress-deployment)
          4. [NetScaler CPX with Ingress Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/two-tier-deployment)
          5. [NetScaler GSLB Controller ](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/gslb/gslb)
          6. [NetScaler IPAM Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/ipam-installation.html)
          7. [NetScaler Observability Exporter](https://docs.netscaler.com/en-us/netscaler-observability-exporter/deploy-coe)
          8. [NetScaler Cloud Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-cloud-controller)

          ### Installation
          Refer [installation instructions](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-operator-openshift).

          This operator version contains:
          1. NetScaler Ingress Controller version [3.3.2](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v3.3.2)
          2. NetScaler CPX version [14.1-47.48](https://docs.netscaler.com/en-us/updates?product=NetScaler%2520ADC%2520%28includes%2520NetScaler%2520Gateway%29&version=14.1&build=47.48)
          3. NetScaler GSLB Controller version [3.3.2](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v3.3.2)
          4. NetScaler Observability Exporter version [1.10.001](https://github.com/citrix/citrix-helm-charts/releases/tag/nsoe-v1.10.001)
          5. NetScaler Metrics Exporter [1.6.0](https://github.com/netscaler/netscaler-k8s-ingress-controller/releases/tag/me_1.6.0)
          6. NetScaler IPAM Controller [2.1.2](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v2.3.15)
          7. NetScaler Kubernetes Gateway Controller version [1.3.0](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsk8sgwctr-1.3.0)
          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin).

          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: NetScaler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - GatewayAPI
        - Gateway
        - Ingress
        - NetScaler
        - ADC
        - Kubernetes
        - OpenShift
        - Citrix
        - Controller
        - Observability
        - Metrices
        links:
        - name: Netscaler Operator
          url: https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-operator-openshift
        maintainers:
        - email: priyanka.sharma@citrix.com
          name: Priyanka Sharma
        - email: arijit.ray@citrix.com
          name: Arijit Ray
        maturity: stable
        minKubeVersion: 1.24.0
        provider:
          name: NetScaler
          url: https://netscaler.com
        relatedImages:
        - quay.io/netscaler/netscaler-observability-exporter@sha256:626e3a954c67bbb910477352dc740aaab21ff1c1cfb03354becf50beab17d4a4
        - registry.connect.redhat.com/citrix/netscaler-operator@sha256:912813b608a51be599ef01ea340ad09238d7ab76fbfa4e83ee8128fa2348bf5b
        - registry.connect.redhat.com/citrix/netscaler-bundle@sha256:d8453ba9d5284e359f34c185618c35ef5a417bb6d96b99a85fa1b50f0c67f7b6
        - quay.io/netscaler/netscaler-adc-metrics-exporter@sha256:558ecc754698f79769197b7dc66cdc17ac7a1bfa92e39650b6bc277c8df47e20
        - quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb
        - quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:fffa0c8790a9e1f299320ae909f10b7be762c118fb008124d71b64d1f65e6f67
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:89f44c45373da73a51b0b9a02de7efe519dc2d5343b65fe382526cccc92f8f5c
        - quay.io/netscaler/netscaler-cpx@sha256:c7fca5069cf2306f915b6f9aeac59a9f921a0093681768ab81e7fb4fef84f970
        - quay.io/netscaler/netscaler-ipam-controller@sha256:7c25b59a2e1df0e4f5615a779a9bea939c60a3eca065cb6c2295daf0d03831d8
        version: 3.3.0
      entries:
      - name: netscaler-operator.v3.3.0
        version: 3.3.0
      - name: netscaler-operator.v3.2.0
        version: 3.2.0
      - name: netscaler-operator.v3.1.2
        version: 3.1.2
      - name: netscaler-operator.v3.1.1
        version: 3.1.1
      - name: netscaler-operator.v3.0.1
        version: 3.0.1
      name: stable
    - currentCSV: netscaler-operator.v3.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerCloudController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "netscaler-operator",
                    "app.kubernetes.io/instance": "nscc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscalercloudcontroller",
                    "app.kubernetes.io/part-of": "netscaler-operator"
                  },
                  "name": "nscc"
                },
                "spec": {
                  "azure": {
                    "clientsecret": "",
                    "image": "quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb",
                    "location": "",
                    "pullPolicy": "IfNotPresent",
                    "resourcegroupname": "",
                    "resources": {},
                    "subnetname": "",
                    "subscriptionid": "",
                    "tenantid": "",
                    "vnetname": ""
                  }
                }
              },
              {
                "apiVersion": "netscaler.com/v1",
                "kind": "NetscalerGslbController",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "netscaler-operator",
                    "app.kubernetes.io/instance": "nsgc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "netscalergslbcontroller",
                    "app.kubernetes.io/part-of": "netscaler-operator"
                  },
                  "name": "nsgc"
                },
                "spec": {
                  "gslbController": {
                    "acceptLicense": "Yes",
                    "cleanupGSLBSiteConfig": false,
                    "disableAPIServerCertVerify": false,
                    "entityPrefix": "",
                    "image": "quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:88114c518ecceb54b000f38bfc330efe184bfeb5b5df0ee308950cf29e7a777f",
                    "imagePullSecrets": [],
                    "kubernetesURL": "",
                    "localCluster": "",
                    "localRegion": "",
                    "logLevel": "Debug",
                    "openshift": true,
                    "pullPolicy": "IfNotPresent",
                    "siteData": [
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteName": "",
                        "siteRegion": ""
                      },
                      {
                        "secretName": "",
                        "siteIp": "",
                        "siteName": "",
                        "siteRegion": ""
                      }
                    ]
                  },
                  "netscaler": {
                    "adcCredentialSecret": "",
                    "nitroReadTimeout": 20,
                    "nsIP": "",
                    "nsPort": 443,
                    "nsProtocol": "HTTPS"
                  },
                  "resources": {
                    "limits": {},
                    "requests": {
                      "cpu": "32m",
                      "memory": "128Mi"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/citrix/netscaler-operator@sha256:3f71f9a46d7b29e3da98a301965f635c03a022b5535b586d7d5c699341f68193
          createdAt: "2024-07-31T06:33:49Z"
          description: This is an operator to install Cloud Native portfolio provided
            by NetScaler
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/netscaler/netscaler-k8s-ingress-controller
          support: NetScaler
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: To install NetScaler Cloud Controller for NetScaler VPX/MPX/SDX
              with Azure Redhat OpenShift in Azure.
            displayName: Netscaler Cloud Controller
            kind: NetscalerCloudController
            name: netscalercloudcontrollers.netscaler.com
            version: v1
          - description: To install NetScaler GSLB Controller for NetScaler VPX/MPX/SDX.
            displayName: Netscaler GSLB Controller
            kind: NetscalerGslbController
            name: netscalergslbcontrollers.netscaler.com
            version: v1
        description: |-
          NetScaler provides various products to empower Developer/DevOps managing your applications in OpenShift Cluster. Using this operator you can deploy below controllers for NetScaler appliance:
          1. [NetScaler Cloud Controller](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-cloud-controller)
          2. [NetScaler GSLB Controller ](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/gslb-openshift-operator)

          ### Installation
          Refer [installation instructions](https://github.com/netscaler/netscaler-k8s-ingress-controller/blob/master/docs/deploy/deploy-ns-operator.md).

          This operator version contains:
          1. NetScaler Cloud Controller version [1.2.0](https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/netscaler-cloud-controller)
          2. NetScaler GSLB Controller version [1.43.7](https://github.com/netscaler/netscaler-helm-charts/releases/tag/nsic-v1.43.7)

          ### Support

          For debugging issues, please use [NetScaler Kubernetes Plugin](https://github.com/netscaler/modern-apps-toolkit/tree/main/netscaler-plugin).

          For questions and support, the following channels are available:
          - [NetScaler community portal](https://community.netscaler.com/s/)
          - [Contact us](https://www.netscaler.com/contact)
        displayName: NetScaler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Ingress
        - NetScaler
        links:
        - name: Netscaler Operator
          url: https://docs.netscaler.com/en-us/netscaler-k8s-ingress-controller/deploy/gslb-openshift-operator
        maintainers:
        - email: priyanka.sharma@cloud.com
          name: Priyanka Sharma
        - email: arijit.ray@cloud.com
          name: Arijit Ray
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: NetScaler
          url: https://netscaler.com
        relatedImages:
        - quay.io/netscaler/netscaler-cloud-controller@sha256:6897df79411bd1b4ddb5195d570f10e01bd3c084772b918112797a346980f4cb
        - quay.io/netscaler/netscaler-k8s-ingress-controller@sha256:88114c518ecceb54b000f38bfc330efe184bfeb5b5df0ee308950cf29e7a777f
        - registry.connect.redhat.com/citrix/netscaler-bundle@sha256:b405d6148aa680bf31bdc6185c1702916c3219983d8482f27d89ed2f93659aa7
        - registry.connect.redhat.com/citrix/netscaler-operator@sha256:3f71f9a46d7b29e3da98a301965f635c03a022b5535b586d7d5c699341f68193
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:23405618050a4ceea8ea0c748cc7d9d16dbb80f10e4c39f7e82014a3ac80cec9
        version: 3.0.1
      entries:
      - name: netscaler-operator.v3.0.1
        version: 3.0.1
      name: tech-preview
    defaultChannel: stable
    packageName: netscaler-operator
    provider:
      name: NetScaler
      url: https://netscaler.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/instance: ibm-spectrum-scale-csi-operator
      app.kubernetes.io/managed-by: ibm-spectrum-scale-csi-operator
      app.kubernetes.io/name: ibm-spectrum-scale-csi-operator
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: ibm-spectrum-scale-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-spectrum-scale-csi-operator.v2.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csi.ibm.com/v1",
                "kind": "CSIScaleOperator",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/instance": "ibm-spectrum-scale-csi-operator",
                    "app.kubernetes.io/managed-by": "ibm-spectrum-scale-csi-operator",
                    "app.kubernetes.io/name": "ibm-spectrum-scale-csi-operator",
                    "release": "ibm-spectrum-scale-csi-operator"
                  },
                  "name": "ibm-spectrum-scale-csi",
                  "namespace": "ibm-spectrum-scale-csi-driver"
                },
                "spec": {
                  "attacherNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "clusters": [
                    {
                      "id": "\u003cPrimary Cluster ID\u003e",
                      "primary": {
                        "primaryFs": "\u003c Primary Filesystem \u003e"
                      },
                      "restApi": [
                        {
                          "guiHost": "\u003c Primary cluster GUI IP/Hostname \u003e"
                        }
                      ],
                      "secrets": "secret1",
                      "secureSslMode": false
                    }
                  ],
                  "pluginNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "provisionerNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "resizerNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ],
                  "snapshotterNodeSelector": [
                    {
                      "key": "scale",
                      "value": "true"
                    }
                  ]
                },
                "status": {}
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/ibm-spectrum-scale/ibm-spectrum-scale-csi-operator@sha256:b62ad588fbc338090f405740fd8bceaf59b3267cdb532c60ae965643ccae4d5d
          createdAt: Thu May 5 04:42:15 IST 2022
          description: An operator for deploying and managing the IBM Spectrum Scale
            CSI Driver.
          operators.operatorframework.io/builder: operator-sdk-v1.14.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/IBM/ibm-spectrum-scale-csi/
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CSIScaleOperator is the Schema for the csiscaleoperators
              API
            displayName: IBM CSI Spectrum Scale Driver
            kind: CSIScaleOperator
            name: csiscaleoperators.csi.ibm.com
            version: v1
        description: |
          The IBM Spectrum Scale CSI Operator for Kubernetes installs, manages,
          upgrades the IBM Spectrum Scale CSI Driver on OpenShift and Kubernetes
          for provisioning of persistent volumes on IBM Spectrum Scale.

          ### Documentation Documentation for IBM Spectrum Scale CSI Driver and Operator can be found at [IBM Documentation](https://www.ibm.com/docs/en/spectrum-scale-csi).

          ### Getting help
          IBM Spectrum Scale CSI driver is part of the IBM Spectrum Scale offering.
          Please follow the [IBM support procedure](https://www.ibm.com/mysupport/s/?language=en_US) for any issues with the driver.

          For non-urgent issues, suggestions, recommendations feel free to open an
          issue in [github](https://github.com/IBM/ibm-spectrum-scale-csi). Issues will be addressed as team availability permits.

          **Note:** Custom Resource example represents the minimum settings needed to run
          the operator. If your environment needs more advanced settings (e.g. remote clusters,
          node mapping, image pull secret, Taint and Toleration etc.) please refer to  the sample [Custom Resource](https://raw.githubusercontent.com/IBM/ibm-spectrum-scale-csi/v2.6.0/operator/config/samples/csiscaleoperators.csi.ibm.com_cr.yaml).
        displayName: IBM Spectrum Scale CSI Plugin Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - IBM
        - GPFS
        - Spectrum Scale
        - CSI Driver
        links:
        - name: IBM CSI Spectrum Scale Documentation
          url: https://www.ibm.com/docs/en/spectrum-scale-csi
        - name: CSI Developer Documentation
          url: https://kubernetes-csi.github.io/docs/
        maintainers:
        - email: madhu.punjabi@in.ibm.com
          name: Madhu Thorat
        - email: amdabhad@in.ibm.com
          name: Amol Dabhade
        - email: Nitish.Kumar4@ibm.com
          name: Nitish Kumar
        maturity: alpha
        provider:
          name: IBM
        relatedImages:
        - quay.io/ibm-spectrum-scale/ibm-spectrum-scale-csi-operator@sha256:b62ad588fbc338090f405740fd8bceaf59b3267cdb532c60ae965643ccae4d5d
        - quay.io/openshift-community-operators/ibm-spectrum-scale-csi-operator@sha256:01d24dfa0d6b6146230459f8f7e74f2749d7fff3c4d75c40de386e014f9367d6
        version: 2.6.0
      entries:
      - name: ibm-spectrum-scale-csi-operator.v2.6.0
        version: 2.6.0
      - name: ibm-spectrum-scale-csi-operator.v2.5.1
        version: 2.5.1
      - name: ibm-spectrum-scale-csi-operator.v2.5.0
        version: 2.5.0
      - name: ibm-spectrum-scale-csi-operator.v2.4.0
        version: 2.4.0
      - name: ibm-spectrum-scale-csi-operator.v2.3.1
        version: 2.3.1
      - name: ibm-spectrum-scale-csi-operator.v2.3.0
        version: 2.3.0
      name: stable
    defaultChannel: stable
    packageName: ibm-spectrum-scale-csi-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-acmpca-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-acmpca-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acmpca.services.k8s.aws/v1alpha1",
                "kind": "CertificateAuthority",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/acmpca-controller:1.2.0
          createdAt: "2025-11-29T03:33:40Z"
          description: AWS ACM PCA controller is a service controller for managing
            ACM PCA resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CertificateAuthority represents the state of an AWS acmpca
              CertificateAuthority resource.
            displayName: CertificateAuthority
            kind: CertificateAuthority
            name: certificateauthorities.acmpca.services.k8s.aws
            version: v1alpha1
          - description: CertificateAuthorityActivation represents the state of an
              AWS acmpca CertificateAuthorityActivation resource.
            displayName: CertificateAuthorityActivation
            kind: CertificateAuthorityActivation
            name: certificateauthorityactivations.acmpca.services.k8s.aws
            version: v1alpha1
          - description: Certificate represents the state of an AWS acmpca Certificate
              resource.
            displayName: Certificate
            kind: Certificate
            name: certificates.acmpca.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon ACM PCA resources in AWS from within your Kubernetes cluster.

          **About Amazon ACM PCA**

          AWS Private CA enables creation of private certificate authority (CA) hierarchies, including root and subordinate CAs, without the investment and maintenance costs of operating an on-premises CA. Your private CAs can issue end-entity X.509 certificates useful in scenarios including:
          - Creating encrypted TLS communication channels
          - Authenticating users, computers, API endpoints, and IoT devices
          - Cryptographically signing code
          - Implementing Online Certificate Status Protocol (OCSP) for obtaining certificate revocation status

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ACM PCA
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acmpca
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ACM PCA Developer Resources
          url: https://aws.amazon.com/private-ca/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: acmpca maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/acmpca-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-acmpca-controller@sha256:b413bc9c33cfa7364da019f3d192bb9fd7fbb6e52701284f093679ebdb839caf
        version: 1.2.0
      entries:
      - name: ack-acmpca-controller.v1.2.0
        version: 1.2.0
      - name: ack-acmpca-controller.v1.1.2
        version: 1.1.2
      - name: ack-acmpca-controller.v1.1.1
        version: 1.1.1
      - name: ack-acmpca-controller.v1.1.0
        version: 1.1.0
      - name: ack-acmpca-controller.v1.0.10
        version: 1.0.10
      - name: ack-acmpca-controller.v1.0.9
        version: 1.0.9
      - name: ack-acmpca-controller.v1.0.8
        version: 1.0.8
      - name: ack-acmpca-controller.v1.0.7
        version: 1.0.7
      - name: ack-acmpca-controller.v1.0.6
        version: 1.0.6
      - name: ack-acmpca-controller.v1.0.5
        version: 1.0.5
      - name: ack-acmpca-controller.v1.0.4
        version: 1.0.4
      - name: ack-acmpca-controller.v1.0.3
        version: 1.0.3
      - name: ack-acmpca-controller.v1.0.2
        version: 1.0.2
      - name: ack-acmpca-controller.v1.0.1
        version: 1.0.1
      - name: ack-acmpca-controller.v1.0.0
        version: 1.0.0
      - name: ack-acmpca-controller.v0.0.20
        version: 0.0.20
      - name: ack-acmpca-controller.v0.0.16
        version: 0.0.16
      - name: ack-acmpca-controller.v0.0.15
        version: 0.0.15
      - name: ack-acmpca-controller.v0.0.14
        version: 0.0.14
      - name: ack-acmpca-controller.v0.0.13
        version: 0.0.13
      - name: ack-acmpca-controller.v0.0.12
        version: 0.0.12
      - name: ack-acmpca-controller.v0.0.11
        version: 0.0.11
      - name: ack-acmpca-controller.v0.0.10
        version: 0.0.10
      - name: ack-acmpca-controller.v0.0.9
        version: 0.0.9
      - name: ack-acmpca-controller.v0.0.8
        version: 0.0.8
      - name: ack-acmpca-controller.v0.0.5
        version: 0.0.5
      - name: ack-acmpca-controller.v0.0.4
        version: 0.0.4
      - name: ack-acmpca-controller.v0.0.3
        version: 0.0.3
      - name: ack-acmpca-controller.v0.0.2
        version: 0.0.2
      - name: ack-acmpca-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-acmpca-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/Kuadrant/kuadrant-operator
    name: kuadrant-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kuadrant-operator.v0.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "AuthPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "authScheme": {
                    "identity": [
                      {
                        "apiKey": {
                          "allNamespaces": true,
                          "selector": {
                            "matchLabels": {
                              "app": "toystore"
                            }
                          }
                        },
                        "credentials": {
                          "in": "authorization_header",
                          "keySelector": "APIKEY"
                        },
                        "name": "friends"
                      }
                    ],
                    "response": [
                      {
                        "json": {
                          "properties": [
                            {
                              "name": "userID",
                              "valueFrom": {
                                "authJSON": "auth.identity.metadata.annotations.secret\\.kuadrant\\.io/user-id"
                              }
                            }
                          ]
                        },
                        "name": "rate-limit-apikey",
                        "wrapper": "envoyDynamicMetadata",
                        "wrapperKey": "ext_auth_data"
                      }
                    ]
                  },
                  "rules": null,
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "Kuadrant",
                "metadata": {
                  "name": "kuadrant-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "RateLimitPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "rateLimits": [
                    {
                      "configurations": [
                        {
                          "actions": [
                            {
                              "metadata": {
                                "default_value": "no-user",
                                "descriptor_key": "userID",
                                "metadata_key": {
                                  "key": "envoy.filters.http.ext_authz",
                                  "path": [
                                    {
                                      "segment": {
                                        "key": "ext_auth_data"
                                      }
                                    },
                                    {
                                      "segment": {
                                        "key": "userID"
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          ]
                        }
                      ],
                      "limits": [
                        {
                          "conditions": [],
                          "maxValue": 2,
                          "seconds": 10,
                          "variables": [
                            "userID"
                          ]
                        }
                      ]
                    }
                  ],
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/kuadrant-operator:v0.3.1
          createdAt: "2023-06-01T12:24:17Z"
          operators.operatorframework.io/builder: operator-sdk-v1.28.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/kuadrant-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Enable AuthN and AuthZ based access control on workloads
            displayName: AuthPolicy
            kind: AuthPolicy
            name: authpolicies.kuadrant.io
            version: v1beta1
          - description: Kuadrant is the Schema for the kuadrants API
            displayName: Kuadrant
            kind: Kuadrant
            name: kuadrants.kuadrant.io
            version: v1beta1
          - description: Enable access control on workloads based on HTTP rate limiting
            displayName: RateLimitPolicy
            kind: RateLimitPolicy
            name: ratelimitpolicies.kuadrant.io
            version: v1beta1
        description: A Kubernetes Operator to manage the lifecycle of the Kuadrant
          system
        displayName: Kuadrant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - api-management
        - Kuadrant
        - kubernetes
        - openshift
        - cloud-service-protection
        - rate-limiting
        - authentication
        - authorization
        links:
        - name: Kuadrant Operator
          url: https://github.com/Kuadrant/kuadrant-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.8.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/kuadrant-operator
        relatedImages:
        - oci://quay.io/kuadrant/wasm-shim:v0.2.0
        - quay.io/kuadrant/kuadrant-operator:v0.3.1
        - quay.io/openshift-community-operators/kuadrant-operator@sha256:398c9230878feb756ad393d7de5675a7370c883a18acf73483a660e9303d807c
        version: 0.3.1
      entries:
      - name: kuadrant-operator.v0.3.1
        version: 0.3.1
      - name: kuadrant-operator.v0.3.0
        version: 0.3.0
      - name: kuadrant-operator.v0.2.1
        version: 0.2.1
      - name: kuadrant-operator.v0.2.0
        version: 0.2.0
      name: alpha
    - currentCSV: kuadrant-operator.v0.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "DNSPolicy",
                "metadata": {
                  "name": "dnspolicy-sample"
                },
                "spec": {
                  "healthCheck": {
                    "endpoint": "/",
                    "protocol": "HTTP"
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1alpha1",
                "kind": "TLSPolicy",
                "metadata": {
                  "name": "tlspolicy-sample"
                },
                "spec": {
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "self-signed-ca"
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "Gateway",
                    "name": "example-gateway"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta1",
                "kind": "Kuadrant",
                "metadata": {
                  "name": "kuadrant-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "kuadrant.io/v1beta2",
                "kind": "AuthPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "rules": {
                    "authentication": {
                      "apikey": {
                        "apiKey": {
                          "selector": {}
                        }
                      },
                      "credentials": {
                        "authorizationHeader": {
                          "prefix": "APIKEY"
                        }
                      }
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              },
              {
                "apiVersion": "kuadrant.io/v1beta2",
                "kind": "RateLimitPolicy",
                "metadata": {
                  "name": "toystore"
                },
                "spec": {
                  "limits": {
                    "toys": {
                      "rates": [
                        {
                          "duration": 1,
                          "limit": 50,
                          "unit": "minute"
                        }
                      ]
                    }
                  },
                  "targetRef": {
                    "group": "gateway.networking.k8s.io",
                    "kind": "HTTPRoute",
                    "name": "toystore"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: quay.io/kuadrant/kuadrant-operator:v0.11.0
          createdAt: "2024-10-02T20:30:45Z"
          description: '[DEPRECATED] Follow https://docs.kuadrant.io instead'
          operators.operatorframework.io/builder: operator-sdk-v1.32.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Kuadrant/kuadrant-operator
          support: kuadrant
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AuthPolicy enables authentication and authorization for service
              workloads in a Gateway API network
            displayName: AuthPolicy
            kind: AuthPolicy
            name: authpolicies.kuadrant.io
            version: v1beta2
          - description: DNSPolicy configures how North-South based traffic should
              be balanced and reach the gateways
            displayName: DNSPolicy
            kind: DNSPolicy
            name: dnspolicies.kuadrant.io
            version: v1alpha1
          - description: Kuadrant configures installations of Kuadrant Service Protection
              components
            displayName: Kuadrant
            kind: Kuadrant
            name: kuadrants.kuadrant.io
            version: v1beta1
          - description: RateLimitPolicy enables rate limiting for service workloads
              in a Gateway API network
            displayName: RateLimitPolicy
            kind: RateLimitPolicy
            name: ratelimitpolicies.kuadrant.io
            version: v1beta2
          - description: TLSPolicy provides tls for gateway listeners by managing
              the lifecycle of tls certificates
            displayName: TLSPolicy
            kind: TLSPolicy
            name: tlspolicies.kuadrant.io
            version: v1alpha1
        description: |-
          ## Deprecated
          This Kuadrant community operator is deprecated, Follow https://docs.kuadrant.io instead.
        displayName: '[DEPRECATED] Kuadrant Operator'
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - api
        - api-management
        - Kuadrant
        - kubernetes
        - openshift
        - cloud-service-protection
        - rate-limiting
        - authentication
        - authorization
        links:
        - name: Kuadrant Operator
          url: https://github.com/Kuadrant/kuadrant-operator
        - name: Kuadrant Docs
          url: https://kuadrant.io
        maintainers:
        - email: eastizle@redhat.com
          name: Eguzki Astiz Lezaun
        - email: mcassola@redhat.com
          name: Guilherme Cassolato
        - email: didier@redhat.com
          name: Didier Di Cesare
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat
          url: https://github.com/Kuadrant/kuadrant-operator
        relatedImages:
        - oci://quay.io/kuadrant/wasm-shim:v0.6.0
        - quay.io/community-operator-pipeline-prod/kuadrant-operator@sha256:f21456392af3b37ae48d77dc7f19fa23c6946269555bb1280978b29420bbf31e
        - quay.io/kuadrant/kuadrant-operator:v0.11.0
        version: 0.11.1
      entries:
      - name: kuadrant-operator.v0.11.1
        version: 0.11.1
      - name: kuadrant-operator.v0.11.0
        version: 0.11.0
      - name: kuadrant-operator.v0.10.0
        version: 0.10.0
      - name: kuadrant-operator.v0.7.2
        version: 0.7.2
      - name: kuadrant-operator.v0.4.1
        version: 0.4.1
      - name: kuadrant-operator.v0.4.0
        version: 0.4.0
      name: stable
    defaultChannel: stable
    packageName: kuadrant-operator
    provider:
      name: Red Hat
      url: https://github.com/Kuadrant/kuadrant-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: EnterpriseDB Corporation
      provider-url: ""
    name: edb-hcp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: edb-hcp-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edbpgai.edb.com/v1alpha1",
                "kind": "HybridControlPlane",
                "metadata": {
                  "name": "placeholder"
                },
                "spec": {
                  "beaconAgent": {
                    "applianceProviderEnabled": true,
                    "beaconDBConnected": true,
                    "beaconServerAddress": "upm-beacon-server-ingestion.upm-beacon.svc.cluster.local:8080",
                    "inCluster": true,
                    "location": "devspatcher",
                    "logLevel": "debug",
                    "plaintext": true,
                    "providers": [
                      "appliance"
                    ],
                    "provisioning": {
                      "imageDiscovery": true,
                      "imagesetDiscoveryAuthenticationType": "token",
                      "imagesetDiscoveryContainerRegistryURL": "placeholder",
                      "loadBalancersEnabled": true,
                      "nodePortDomain": "nodeportdomain.com",
                      "openshift": true,
                      "provider": "aws"
                    },
                    "tlsInsecure": false,
                    "transparentDataEncryptionMethods": [
                      "passphrase",
                      "hashicorp_vault"
                    ]
                  },
                  "beaconServer": {
                    "logLevel": "debug"
                  },
                  "componentsParameters": {
                    "edb-migration-portal": {
                      "enable_pdb": "false"
                    },
                    "transporter-data-operator": {
                      "fips_enabled": "false"
                    },
                    "transporter-dp-agent": {
                      "rw_service_url": "placeholder"
                    },
                    "transporter-rw-service": {
                      "domain_name": "placeholder"
                    },
                    "upm-api-pnxt-metric": {
                      "log_level": "info",
                      "tsdb_host": "thanos-query.monitoring.svc.cluster.local",
                      "tsdb_port": "9090"
                    },
                    "upm-api-pnxt-pd": {
                      "log_level": "info"
                    },
                    "upm-beaco-ff-base": {
                      "aes_key_rotation_interval": "2160h",
                      "usage_generator_interval": "24h"
                    },
                    "upm-beaco-usages": {
                      "usage_generator_interval": "24h"
                    },
                    "upm-beacon": {
                      "beacon_db_hibernation": "\"off\"",
                      "beacon_location_id": "devspatcher",
                      "beacon_server_replicas": "1",
                      "external_metrics_replicas": "1",
                      "image_discovery_credentials_secret_name": "placeholder",
                      "server_host": "placeholder"
                    },
                    "upm-istio": {
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288"
                    },
                    "upm-istio-gateway": {
                      "cookie_aeskey": "rzkutHl8NJNztPMEJYykZouHslNiA7xmIXH+58ISUVo=",
                      "enable_server_session": "true",
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288",
                      "openshift_console_domain_name": "placeholder"
                    },
                    "upm-prometheus": {
                      "cpu": "200m",
                      "memory": "6Gi",
                      "prometheus_retention_size": "15GB",
                      "prometheus_storage_size": "20Gi"
                    },
                    "upm-thanos": {
                      "memcached_cpu": "500m",
                      "memcached_memory": "2Gi",
                      "query_frontend_cpu": "200m",
                      "query_frontend_memory": "128Mi"
                    },
                    "upm-trust-manager": {
                      "cert_manager_namespace": "cert-manager"
                    }
                  },
                  "flavour": "placeholder",
                  "globalParameters": {
                    "default_ingress_domain": "placeholder",
                    "internal_backup_folder": "a7462dbc7106",
                    "internal_db_backup_compression": "gzip",
                    "internal_db_backup_retention": "30d",
                    "portal_certificate_secret": "beaco-istio-gw-cert",
                    "portal_domain_name": "placeholder",
                    "portal_port": "443",
                    "session_duration_seconds": "86400",
                    "storage_class": "placeholder"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "placeholder",
                      "namespace": "default"
                    }
                  ],
                  "imageRegistry": "placeholder",
                  "pgai": {
                    "portal": {
                      "authentication": {
                        "clientSecret": "edb-postgres-ai-secret",
                        "idpConnectors": [],
                        "staticPasswords": [
                          {
                            "email": "owner@mycompany.com",
                            "hash": "$2y$10/yXkob4KWJDqpiwudBqC",
                            "userID": "c5998173-a605-449a-a9a5-4a9c33e26df7",
                            "username": "Owner MyCompany"
                          },
                          {
                            "email": "admin@mycompany.com",
                            "hash": "$2y$10/yYwtXRrOagYO2jNtwVzGQPPEfDvX0QllV8NXbku",
                            "userID": "b7e2c2e2-2e7a-4c7b-9e2a-7e6b8c1f2a3d",
                            "username": "Admin MyCompany"
                          }
                        ]
                      }
                    }
                  },
                  "source": {
                    "useLocalKustomizations": true
                  },
                  "version": "placeholder"
                }
              }
            ]
          capabilities: Basic Install
          categories: Database,AI/Machine Learning
          containerImage: docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
          createdAt: "2025-12-16T03:00:39Z"
          description: Unify transactional, analytical, and AI workloads and bring
            cloud agility to your hybrid data infrastructure.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/EnterpriseDB/edb-hcp-operator
          support: techsupport@enterprisedb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HybridControlPlane is the Schema for the hybridcontrolplanes
              API
            displayName: Hybrid Control Plane
            kind: HybridControlPlane
            name: hybridcontrolplanes.edbpgai.edb.com
            version: v1alpha1
        description: |
          EDB Postgres AI is a sovereign data and AI platform that brings analytics and AI closer to core operational data and enables cloud agility in private environments.
          Unify your structured and unstructured data in one multi-model data platform with centralized management and observability to:
          - Accelerate enterprise-grade transactional databases
          - Enable rapid analytics and powerful lakehouse integrations
          - Automate AI pipelines and semantic search for faster GenAI development
          Using EDB’s unmatched Postgres expertise, EDB Postgres AI automates database operations, ensuring expert-level execution across deployments – boosting operational efficiency by up to 30% and accelerating innovation.
        displayName: EDB Postgres AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Postgres
        - Database
        - DBaaS
        - EDB Postgres AI
        links:
        - name: EDB Postgres AI Software Deployment
          url: https://www.enterprisedb.com/products/software-deployment
        maintainers:
        - email: techsupport@enterprisedb.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/edb-hcp-operator@sha256:1fb27bf4a51cb903b59a1c24d9a0233148a258426bbb0b7a101e12f6f64b28f8
        - docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
        version: 1.3.3
      entries:
      - name: edb-hcp-operator.v1.3.3
        version: 1.3.3
      name: alpha
    - currentCSV: edb-hcp-operator.v1.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "edbpgai.edb.com/v1alpha1",
                "kind": "HybridControlPlane",
                "metadata": {
                  "name": "placeholder"
                },
                "spec": {
                  "beaconAgent": {
                    "applianceProviderEnabled": true,
                    "beaconDBConnected": true,
                    "beaconServerAddress": "upm-beacon-server-ingestion.upm-beacon.svc.cluster.local:8080",
                    "inCluster": true,
                    "location": "devspatcher",
                    "logLevel": "debug",
                    "plaintext": true,
                    "providers": [
                      "appliance"
                    ],
                    "provisioning": {
                      "imageDiscovery": true,
                      "imagesetDiscoveryAuthenticationType": "token",
                      "imagesetDiscoveryContainerRegistryURL": "placeholder",
                      "loadBalancersEnabled": true,
                      "nodePortDomain": "nodeportdomain.com",
                      "openshift": true,
                      "provider": "aws"
                    },
                    "tlsInsecure": false,
                    "transparentDataEncryptionMethods": [
                      "passphrase",
                      "hashicorp_vault"
                    ]
                  },
                  "beaconServer": {
                    "logLevel": "debug"
                  },
                  "componentsParameters": {
                    "edb-migration-portal": {
                      "enable_pdb": "false"
                    },
                    "transporter-data-operator": {
                      "fips_enabled": "false"
                    },
                    "transporter-dp-agent": {
                      "rw_service_url": "placeholder"
                    },
                    "transporter-rw-service": {
                      "domain_name": "placeholder"
                    },
                    "upm-api-pnxt-metric": {
                      "log_level": "info",
                      "tsdb_host": "thanos-query.monitoring.svc.cluster.local",
                      "tsdb_port": "9090"
                    },
                    "upm-api-pnxt-pd": {
                      "log_level": "info"
                    },
                    "upm-beaco-ff-base": {
                      "aes_key_rotation_interval": "2160h",
                      "usage_generator_interval": "24h"
                    },
                    "upm-beaco-usages": {
                      "usage_generator_interval": "24h"
                    },
                    "upm-beacon": {
                      "beacon_db_hibernation": "\"off\"",
                      "beacon_location_id": "devspatcher",
                      "beacon_server_replicas": "1",
                      "external_metrics_replicas": "1",
                      "image_discovery_credentials_secret_name": "placeholder",
                      "server_host": "placeholder"
                    },
                    "upm-istio": {
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288"
                    },
                    "upm-istio-gateway": {
                      "cookie_aeskey": "rzkutHl8NJNztPMEJYykZouHslNiA7xmIXH+58ISUVo=",
                      "enable_server_session": "true",
                      "ingress_grpc_tls_node_port": "30290",
                      "ingress_http_node_port": "32542",
                      "ingress_https_node_port": "30288",
                      "openshift_console_domain_name": "placeholder"
                    },
                    "upm-prometheus": {
                      "cpu": "200m",
                      "memory": "6Gi",
                      "prometheus_retention_size": "15GB",
                      "prometheus_storage_size": "20Gi"
                    },
                    "upm-thanos": {
                      "memcached_cpu": "500m",
                      "memcached_memory": "2Gi",
                      "query_frontend_cpu": "200m",
                      "query_frontend_memory": "128Mi"
                    },
                    "upm-trust-manager": {
                      "cert_manager_namespace": "cert-manager"
                    }
                  },
                  "flavour": "placeholder",
                  "globalParameters": {
                    "default_ingress_domain": "placeholder",
                    "internal_backup_folder": "a7462dbc7106",
                    "internal_db_backup_compression": "gzip",
                    "internal_db_backup_retention": "30d",
                    "portal_certificate_secret": "beaco-istio-gw-cert",
                    "portal_domain_name": "placeholder",
                    "portal_port": "443",
                    "session_duration_seconds": "86400",
                    "storage_class": "placeholder"
                  },
                  "imagePullSecrets": [
                    {
                      "name": "placeholder",
                      "namespace": "default"
                    }
                  ],
                  "imageRegistry": "placeholder",
                  "pgai": {
                    "portal": {
                      "authentication": {
                        "clientSecret": "edb-postgres-ai-secret",
                        "idpConnectors": [],
                        "staticPasswords": [
                          {
                            "email": "owner@mycompany.com",
                            "hash": "$2y$10/yXkob4KWJDqpiwudBqC",
                            "userID": "c5998173-a605-449a-a9a5-4a9c33e26df7",
                            "username": "Owner MyCompany"
                          },
                          {
                            "email": "admin@mycompany.com",
                            "hash": "$2y$10/yYwtXRrOagYO2jNtwVzGQPPEfDvX0QllV8NXbku",
                            "userID": "b7e2c2e2-2e7a-4c7b-9e2a-7e6b8c1f2a3d",
                            "username": "Admin MyCompany"
                          }
                        ]
                      }
                    }
                  },
                  "source": {
                    "useLocalKustomizations": true
                  },
                  "version": "placeholder"
                }
              }
            ]
          capabilities: Basic Install
          categories: Database,AI/Machine Learning
          containerImage: docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
          createdAt: "2025-12-16T03:00:39Z"
          description: Unify transactional, analytical, and AI workloads and bring
            cloud agility to your hybrid data infrastructure.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/EnterpriseDB/edb-hcp-operator
          support: techsupport@enterprisedb.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HybridControlPlane is the Schema for the hybridcontrolplanes
              API
            displayName: Hybrid Control Plane
            kind: HybridControlPlane
            name: hybridcontrolplanes.edbpgai.edb.com
            version: v1alpha1
        description: |
          EDB Postgres AI is a sovereign data and AI platform that brings analytics and AI closer to core operational data and enables cloud agility in private environments.
          Unify your structured and unstructured data in one multi-model data platform with centralized management and observability to:
          - Accelerate enterprise-grade transactional databases
          - Enable rapid analytics and powerful lakehouse integrations
          - Automate AI pipelines and semantic search for faster GenAI development
          Using EDB’s unmatched Postgres expertise, EDB Postgres AI automates database operations, ensuring expert-level execution across deployments – boosting operational efficiency by up to 30% and accelerating innovation.
        displayName: EDB Postgres AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Postgres
        - Database
        - DBaaS
        - EDB Postgres AI
        links:
        - name: EDB Postgres AI Software Deployment
          url: https://www.enterprisedb.com/products/software-deployment
        maintainers:
        - email: techsupport@enterprisedb.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.29.0
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - registry.connect.redhat.com/enterprisedb/edb-hcp-operator@sha256:1fb27bf4a51cb903b59a1c24d9a0233148a258426bbb0b7a101e12f6f64b28f8
        - docker.enterprisedb.com/pgai-platform/edb-hcp-operator/manager@sha256:7b3bd0f4b3536938ec16935c5f31bfad2b570c8f23430e94fc1a67b2bd8d8b06
        version: 1.3.3
      entries:
      - name: edb-hcp-operator.v1.3.3
        version: 1.3.3
      name: lts-v1.3
    defaultChannel: alpha
    packageName: edb-hcp-operator
    provider:
      name: EnterpriseDB Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sfn-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sfn-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sfn.services.k8s.aws/v1alpha1",
                "kind": "Activity",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "sfn.services.k8s.aws/v1alpha1",
                "kind": "StateMachine",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sfn-controller:1.2.0
          createdAt: "2025-11-29T04:38:13Z"
          description: AWS Step Functions controller is a service controller for managing
            Step Functions resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Activity represents the state of an AWS sfn Activity resource.
            displayName: Activity
            kind: Activity
            name: activities.sfn.services.k8s.aws
            version: v1alpha1
          - description: StateMachine represents the state of an AWS sfn StateMachine
              resource.
            displayName: StateMachine
            kind: StateMachine
            name: statemachines.sfn.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Step Functions resources in AWS from within your Kubernetes cluster.

          **About Amazon Step FUnctions**

          Step Functions is a serverless orchestration service that lets you combine AWS Lambda functions and other AWS services to build business-critical applications. Through Step Functions' graphical console, you see your application’s workflow as a series of event-driven steps.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Step Functions
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sfn
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Step Functions Developer Resources
          url: https://aws.amazon.com/step-functions/resources
        maintainers:
        - email: ack-maintainers@amazon.com
          name: step functions maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sfn-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-sfn-controller@sha256:dfcfbf98f6d237c3a2b87efe63ead08237b9c53ce45ad4469a007de66ea2e9b8
        version: 1.2.0
      entries:
      - name: ack-sfn-controller.v1.2.0
        version: 1.2.0
      - name: ack-sfn-controller.v1.1.2
        version: 1.1.2
      - name: ack-sfn-controller.v1.1.1
        version: 1.1.1
      - name: ack-sfn-controller.v1.1.0
        version: 1.1.0
      - name: ack-sfn-controller.v1.0.29
        version: 1.0.29
      - name: ack-sfn-controller.v1.0.28
        version: 1.0.28
      - name: ack-sfn-controller.v1.0.27
        version: 1.0.27
      - name: ack-sfn-controller.v1.0.26
        version: 1.0.26
      - name: ack-sfn-controller.v1.0.25
        version: 1.0.25
      - name: ack-sfn-controller.v1.0.24
        version: 1.0.24
      - name: ack-sfn-controller.v1.0.23
        version: 1.0.23
      - name: ack-sfn-controller.v1.0.22
        version: 1.0.22
      - name: ack-sfn-controller.v1.0.21
        version: 1.0.21
      - name: ack-sfn-controller.v1.0.20
        version: 1.0.20
      - name: ack-sfn-controller.v1.0.19
        version: 1.0.19
      - name: ack-sfn-controller.v1.0.18
        version: 1.0.18
      - name: ack-sfn-controller.v1.0.17
        version: 1.0.17
      - name: ack-sfn-controller.v1.0.16
        version: 1.0.16
      - name: ack-sfn-controller.v1.0.15
        version: 1.0.15
      - name: ack-sfn-controller.v1.0.14
        version: 1.0.14
      - name: ack-sfn-controller.v1.0.13
        version: 1.0.13
      - name: ack-sfn-controller.v1.0.11
        version: 1.0.11
      - name: ack-sfn-controller.v1.0.10
        version: 1.0.10
      - name: ack-sfn-controller.v1.0.9
        version: 1.0.9
      - name: ack-sfn-controller.v1.0.8
        version: 1.0.8
      - name: ack-sfn-controller.v1.0.6
        version: 1.0.6
      - name: ack-sfn-controller.v1.0.5
        version: 1.0.5
      - name: ack-sfn-controller.v1.0.2
        version: 1.0.2
      - name: ack-sfn-controller.v1.0.1
        version: 1.0.1
      - name: ack-sfn-controller.v1.0.0
        version: 1.0.0
      - name: ack-sfn-controller.v0.1.3
        version: 0.1.3
      - name: ack-sfn-controller.v0.1.2
        version: 0.1.2
      - name: ack-sfn-controller.v0.1.1
        version: 0.1.1
      - name: ack-sfn-controller.v0.1.0
        version: 0.1.0
      - name: ack-sfn-controller.v0.0.19
        version: 0.0.19
      - name: ack-sfn-controller.v0.0.18
        version: 0.0.18
      - name: ack-sfn-controller.v0.0.17
        version: 0.0.17
      - name: ack-sfn-controller.v0.0.16
        version: 0.0.16
      - name: ack-sfn-controller.v0.0.15
        version: 0.0.15
      - name: ack-sfn-controller.v0.0.14
        version: 0.0.14
      - name: ack-sfn-controller.v0.0.13
        version: 0.0.13
      - name: ack-sfn-controller.v0.0.12
        version: 0.0.12
      - name: ack-sfn-controller.v0.0.11
        version: 0.0.11
      - name: ack-sfn-controller.v0.0.10
        version: 0.0.10
      - name: ack-sfn-controller.v0.0.9
        version: 0.0.9
      - name: ack-sfn-controller.v0.0.8
        version: 0.0.8
      - name: ack-sfn-controller.v0.0.7
        version: 0.0.7
      - name: ack-sfn-controller.v0.0.6
        version: 0.0.6
      - name: ack-sfn-controller.v0.0.5
        version: 0.0.5
      name: alpha
    defaultChannel: alpha
    packageName: ack-sfn-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ses-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ses-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ses-controller:1.2.0
          createdAt: "2025-11-29T04:02:30Z"
          description: AWS SES controller is a service controller for managing SES
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ConfigurationSet represents the state of an AWS ses ConfigurationSet
              resource.
            displayName: ConfigurationSet
            kind: ConfigurationSet
            name: configurationsets.ses.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Simple Email Service (SES) resources in AWS from within your Kubernetes cluster.

          **About Amazon SES**

          Amazon Simple Email Service (SES) is an email platform that provides an easy, cost-effective way for you to send and receive email using your own email addresses and domains.
          For example, you can send marketing emails such as special offers, transactional emails such as order confirmations, and other types of correspondence such as newsletters. When you use Amazon SES to receive mail, you can develop software solutions such as email autoresponders, email unsubscribe systems, and applications that generate customer support tickets from incoming emails.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SES
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ses
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SES Developer Resources
          url: https://aws.amazon.com/ses/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ses maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ses-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ses-controller@sha256:b083d3578565f7503e887ea1207031a9fe776c4341d8aeb977b88d4b2e841bbc
        version: 1.2.0
      entries:
      - name: ack-ses-controller.v1.2.0
        version: 1.2.0
      - name: ack-ses-controller.v1.1.2
        version: 1.1.2
      - name: ack-ses-controller.v1.1.1
        version: 1.1.1
      - name: ack-ses-controller.v1.1.0
        version: 1.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-ses-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://github.com/confidential-containers
    name: trustee-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trustee-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Security
          containerImage: registry.redhat.io/build-of-trustee/trustee-rhel9-operator@sha256:04a30e2c2f9010a38a20270fdbac09445bb28d46a67126d0b74396ae492ccea2
          createdAt: "2024-06-07T10:06:06Z"
          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: "true"
          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"
          operatorframework.io/suggested-namespace: trustee-operator-system
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/trustee-operator
          support: Confidential Containers Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KbsConfig is the Schema for the kbsconfigs API
            displayName: Kbs Config
            kind: KbsConfig
            name: kbsconfigs.confidentialcontainers.org
            version: v1alpha1
          - kind: TrusteeConfig
            name: trusteeconfigs.confidentialcontainers.org
            version: v1alpha1
        description: Remote attestation operator for confidential containers
        displayName: Red Hat build of Trustee
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - trustee
        - Confidential Computing
        - Attestation
        links:
        - name: Red Hat build of Trustee
          url: https://github.com/openshift/trustee-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        provider:
          name: Red Hat
          url: https://github.com/confidential-containers
        relatedImages:
        - registry.redhat.io/build-of-trustee/trustee-rhel9@sha256:da30d5c78cba2fa4b595487c500ffefededea4ff2f4e9ee4d8bdb7b13d8aba40
        - registry.redhat.io/build-of-trustee/trustee-operator-bundle@sha256:2f72205cf81cd26e0c4d7b159e72f567e84e69596aaff92bbf52bdfd2d7b9dd4
        - registry.redhat.io/build-of-trustee/trustee-rhel9-operator@sha256:04a30e2c2f9010a38a20270fdbac09445bb28d46a67126d0b74396ae492ccea2
        version: 1.0.0
      entries:
      - name: trustee-operator.v1.0.0
        version: 1.0.0
      - name: trustee-operator.v0.4.2
        version: 0.4.2
      - name: trustee-operator.v0.4.1
        version: 0.4.1
      - name: trustee-operator.v0.4.0
        version: 0.4.0
      - name: trustee-operator.v0.3.0
        version: 0.3.0
      name: stable
    defaultChannel: stable
    packageName: trustee-operator
    provider:
      name: Red Hat
      url: https://github.com/confidential-containers
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: eap
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: eap-operator.v3.2.8
      currentCSVDesc:
        annotations:
          capabilities: Seamless Upgrades
          categories: Application Runtime
          certified: "false"
          containerImage: registry.redhat.io/jboss-eap/eap-rhel9-operator@sha256:8d10a86d97696603ef612672a65240679a06f8f4dee25f82d1bf5f69132760b1
          createdAt: "2025-07-10T14:38:00Z"
          description: Operator that creates and manages Java applications running
            on JBoss EAP.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["Red Hat JBoss Enterprise Application
            Platform", "Red Hat Runtimes", "Red Hat Integration", "Red Hat Process
            Automation"]'
          repository: https://github.com/wildfly/wildfly-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An application running on EAP application runtime.
            displayName: WildFlyServer
            kind: WildFlyServer
            name: wildflyservers.wildfly.org
            version: v1alpha1
        description: "# Red Hat JBoss Enterprise Application Platform (JBoss EAP)\n\nRed
          Hat® JBoss® Enterprise Application Platform (JBoss EAP) delivers enterprise-grade
          security, performance, and scalability in any environment.  Some features
          of JBoss EAP are:\n\n**Optimized for cloud and containers**: with simplified
          deployment and full Jakarta EE performance for applications in any environment.\n\n**Lightweight,
          flexible architecture**: which is well-suited for microservices and traditional
          applications.\n\n**Support and standardize microservices development**:
          With the JBoss Enterprise Application Platform expansion pack that supports
          Eclipse MicroProfile application programming interfaces (APIs).\n\n# JBoss
          EAP Operator\nOperators are software components that extend the Kubernetes
          API to customize how to manage applications and their components.\n\nThe
          JBoss EAP Operator facilitates the deployment and management of JBoss EAP
          on container orchestration platforms such as Red Hat OpenShift. The operator
          acts as an automated management tool, simplifying the process of provisioning,
          scaling, and updating JBoss EAP applications.\n\n# JBoss EAP Operator capabilities\nThe
          JBoss EAP Operator deploys and manages multiple instances of the JBoss EAP
          Java application in a Red Hat OpenShift cluster. \n\n**Simplifies management**:
          Creates, configures, manages, and seamlessly upgrades instances of complex
          stateful applications. No more manual configuration, making management a
          breeze.\n\n**Efficient scaling**: Effortlessly scales the instances of your
          JBoss EAP Java application based on demand.\n\n**Faster updates**: Seamlessly
          updates, enabling you to roll out new operator features and bug fixes without
          downtime\n\n**Safe transaction recovery**: Provides safe transaction recovery
          in your application cluster by verifying all transactions are completed
          before scaling down the replicas and marking a pod as clean for termination.\n\n#
          Operator installation and configuration\nLet's walk through the steps to
          install the JBoss EAP Operator on your OpenShift Cluster and deploy your
          first example application:\n\n**Step 1: Install JBoss EAP from OperatorHub**\n1.
          Click Install in the JBoss EAP operator window.\n2. In the Install Operator
          window, for Installation mode, select All namespaces on the cluster The
          operator is available in openshift-operators namespace.\n\n**Step 2: Build
          an application image**\n\nThe JBoss EAP Operator deploys an application
          image. If you do not have your JBoss EAP application image built yet, you
          can use the following example to build the image using Helm Charts.\n\n1.
          In the main navigation, click the dropdown menu (perspective switcher) and
          select Developer.\n2. Click Add > Helm Chart.\n3. Search for \"JBoss EAP
          8\" (Provided by Red Hat) and create a new Helm Chart release.\n4. On the
          Release name text box, type “eap-application”. \n5. Switch to the YAML view
          and replace the existing code with the following:\n\n    ```\n    build:\n
          \     uri: https://github.com/jboss-eap-up-and-running/eap8-getting-started\n
          \   deploy:\n      enabled: false\n    ```\n\n6. Click Create to build the
          application image.\n\n    The application image is created with the name
          eap-application:latest.\n\n**Step 3: Deploy your application with JBoss
          EAP Operator**\n\n1. In the main navigation, click the dropdown menu (perspective
          switcher) and select Developer.\n2. Click Add > Operator Backed > WildFlyServer
          > Create.\n3. Switch to the YAML view and replace the existing code with
          the following:\n\n    ```\n    apiVersion: wildfly.org/v1alpha1\n    kind:
          WildFlyServer\n    metadata:\n      name: eap-application\n    spec:\n      applicationImage:
          eap-application:latest\n      replicas: 1\n    ```\n\n 4. Click Create to
          deploy the application with JBoss EAP Operator.\n"
        displayName: JBoss EAP
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - eap
        - java
        - open source
        - application runtime
        links:
        - name: JBoss EAP Homepage
          url: https://www.redhat.com/en/technologies/jboss-middleware/application-platform
        - name: Documentation
          url: https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/
        - name: Blog
          url: https://developers.redhat.com/blog/
        - name: Quickstart
          url: https://github.com/jboss-developer/jboss-eap-quickstarts
        - name: Red Hat Customer Portal
          url: https://access.redhat.com/support
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat, Inc.
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/jboss-eap/eap-operator-bundle@sha256:5bbe10f6e33106ee9ef33626e91d3283f7ff03d37a00c094d2004ad0b6323721
        - registry.redhat.io/jboss-eap/eap-rhel9-operator@sha256:8d10a86d97696603ef612672a65240679a06f8f4dee25f82d1bf5f69132760b1
        version: 3.2.8
      entries:
      - name: eap-operator.v3.2.8
        version: 3.2.8
      - name: eap-operator.v3.2.7
        version: 3.2.7
      - name: eap-operator.v3.2.6
        version: 3.2.6
      - name: eap-operator.v3.2.5
        version: 3.2.5
      - name: eap-operator.v3.2.4
        version: 3.2.4
      - name: eap-operator.v3.2.3
        version: 3.2.3
      - name: eap-operator.v3.2.2
        version: 3.2.2
      - name: eap-operator.v3.2.1
        version: 3.2.1
      - name: eap-operator.v3.2.0
        version: 3.2.0
      - name: eap-operator.v3.1.9
        version: 3.1.9
      - name: eap-operator.v3.1.8
        version: 3.1.8
      - name: eap-operator.v3.1.7
        version: 3.1.7
      - name: eap-operator.v3.1.6
        version: 3.1.6
      - name: eap-operator.v3.1.5
        version: 3.1.5
      - name: eap-operator.v3.1.4
        version: 3.1.4
      - name: eap-operator.v3.1.3
        version: 3.1.3
      - name: eap-operator.v3.1.2
        version: 3.1.2
      - name: eap-operator.v3.1.1
        version: 3.1.1
      - name: eap-operator.v3.1.0
        version: 3.1.0
      - name: eap-operator.v3.0.2
        version: 3.0.2
      - name: eap-operator.v3.0.1
        version: 3.0.1
      - name: eap-operator.v3.0.0
        version: 3.0.0
      - name: eap-operator.v2.4.3
        version: 2.4.3
      - name: eap-operator.v2.4.2
        version: 2.4.2
      - name: eap-operator.v2.4.1
        version: 2.4.1
      - name: eap-operator.v2.4.0
        version: 2.4.0
      - name: eap-operator.v2.3.10
        version: 2.3.10
      - name: eap-operator.v2.3.9
        version: 2.3.9
      - name: eap-operator.v2.3.8
        version: 2.3.8
      - name: eap-operator.v2.3.7
        version: 2.3.7
      - name: eap-operator.v2.3.6
        version: 2.3.6
      - name: eap-operator.v2.3.5
        version: 2.3.5
      - name: eap-operator.v2.3.4
        version: 2.3.4
      - name: eap-operator.v2.3.3
        version: 2.3.3
      - name: eap-operator.v2.3.2
        version: 2.3.2
      - name: eap-operator.v2.3.1
        version: 2.3.1
      - name: eap-operator.v2.3.0
        version: 2.3.0
      - name: eap-operator.v2.2.2
        version: 2.2.2
      - name: eap-operator.v2.2.1
        version: 2.2.1
      - name: eap-operator.v2.2.0
        version: 2.2.0
      name: stable
    defaultChannel: stable
    packageName: eap
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: gatekeeper-operator-product
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gatekeeper-operator-product.v3.15.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:8b43248aed06563e06f7a0347ff1c45fa5892e3a9adb2b5c363962a0b152eff0
          createdAt: 13 Mar 2025, 17:07
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: <3.15.4
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: Gatekeeper allows administrators to detect and reject non-compliant
          commits to an infrastructure-as-code system's source-of-truth. This strengthens
          compliance efforts and prevents a bad state from slowing down the organization.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat ACM Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:96b77663961daea3a336b97e34e9412281bfb2727854dc970a69edd029b9af85
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:8b43248aed06563e06f7a0347ff1c45fa5892e3a9adb2b5c363962a0b152eff0
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:29690144667b3753a7e76095e136d6fc42325270e7b9f22f97dfd411439e9f54
        version: 3.15.4
      entries:
      - name: gatekeeper-operator-product.v3.15.4
        version: 3.15.4
      - name: gatekeeper-operator-product.v3.15.3
        version: 3.15.3
      - name: gatekeeper-operator-product.v3.15.2
        version: 3.15.2
      - name: gatekeeper-operator-product.v3.15.1
        version: 3.15.1
      - name: gatekeeper-operator-product.v3.15.1-0.1725401534.p
        version: 3.15.1+0.1725401534.p
      - name: gatekeeper-operator-product.v3.15.1-0.1726639477.p
        version: 3.15.1+0.1726639477.p
      - name: gatekeeper-operator-product.v3.15.1-0.1727189912.p
        version: 3.15.1+0.1727189912.p
      name: "3.15"
    - currentCSV: gatekeeper-operator-product.v3.17.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3c027ec78398df0a8fc09eb79e222a9508b4f18154d1e1b477d4f156181ae51a
          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: "true"
          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.skipRange: <3.17.3
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:5170255ecd45b9bb7a70abec0f6eeb0518bbc2871de759e468dd61a80261c0ad
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:e44078fc6073a79168ed52922b370773b451d69bf335aeb91d26a1462df21a9b
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3c027ec78398df0a8fc09eb79e222a9508b4f18154d1e1b477d4f156181ae51a
        version: 3.17.3
      entries:
      - name: gatekeeper-operator-product.v3.17.3
        version: 3.17.3
      - name: gatekeeper-operator-product.v3.17.2
        version: 3.17.2
      - name: gatekeeper-operator-product.v3.17.1
        version: 3.17.1
      - name: gatekeeper-operator-product.v3.17.0
        version: 3.17.0
      name: "3.17"
    - currentCSV: gatekeeper-operator-product.v3.18.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:0803b7219ceff7aa676488eeba58607a19c9c18a2bb8eae8b3b16cfec411cb6e
          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: "true"
          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.skipRange: <3.18.1
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:9a3f5b6c403fb84c9cb93c9d7cf902c80990196983607c8ca568d4b558938e17
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:49726cb2702441305e8047b24054575170fb595cfe5ebf815cdbfdaa957b02f4
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:0803b7219ceff7aa676488eeba58607a19c9c18a2bb8eae8b3b16cfec411cb6e
        version: 3.18.1
      entries:
      - name: gatekeeper-operator-product.v3.18.1
        version: 3.18.1
      - name: gatekeeper-operator-product.v3.18.0
        version: 3.18.0
      name: "3.18"
    - currentCSV: gatekeeper-operator-product.v3.19.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:583d63090eccf767cd3a1cc153a995c6102e02a49aee1579edc7645e2aca1202
          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: "true"
          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.skipRange: <3.19.1
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Gatekeeper is the schema for the gatekeepers API. Gatekeeper
              contains configurations for the Gatekeeper operator, which deploys Open
              Policy Agent Gatekeeper, a policy engine that enforces policies through
              admission controller webhooks. See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:68fe21212c54efd1c7a1e6f68e554722ac7cb8ffc3f5d48d608ebcc0ac8be921
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:60ee347425c6cfb36f0e1e834b33cbb3d77aa2d6c89ac513216d0b9fc55d4b52
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:583d63090eccf767cd3a1cc153a995c6102e02a49aee1579edc7645e2aca1202
        version: 3.19.1
      entries:
      - name: gatekeeper-operator-product.v3.19.1
        version: 3.19.1
      - name: gatekeeper-operator-product.v3.19.0
        version: 3.19.0
      name: "3.19"
    - currentCSV: gatekeeper-operator-product.v3.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
          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: "true"
          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.skipRange: <3.20.0
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Gatekeeper is the schema for the gatekeepers API. Gatekeeper contains configurations for the Gatekeeper operator,
              which deploys Open Policy Agent Gatekeeper, a policy engine that enforces policies through admission controller
              webhooks.
              See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:54da5a712ccab9d9cae230e8bdb97f292d9959b6589a8c58c6f41f13c5b7ee12
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:29417852e3e69233d1e7205a982023c14b98eac7f3f5ad0fc93a4e46d6197520
        version: 3.20.0
      entries:
      - name: gatekeeper-operator-product.v3.20.0
        version: 3.20.0
      name: "3.20"
    - currentCSV: gatekeeper-operator-product.v3.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.gatekeeper.sh/v1alpha1",
                "kind": "Gatekeeper",
                "metadata": {
                  "name": "gatekeeper"
                },
                "spec": {
                  "validatingWebhook": "Enabled"
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
          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: "true"
          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.skipRange: <3.20.0
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/gatekeeper-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Gatekeeper is the schema for the gatekeepers API. Gatekeeper contains configurations for the Gatekeeper operator,
              which deploys Open Policy Agent Gatekeeper, a policy engine that enforces policies through admission controller
              webhooks.
              See https://github.com/open-policy-agent/gatekeeper.
            displayName: Gatekeeper
            kind: Gatekeeper
            name: gatekeepers.operator.gatekeeper.sh
            version: v1alpha1
        description: |
          Open Policy Agent Gatekeeper enforces CRD-based policies.

          Every organization has policies. Some are essential to meet governance and
          legal requirements. Others help ensure adherence to best practices and
          institutional conventions. Attempting to ensure compliance manually would be
          error-prone and frustrating. Automating policy enforcement ensures
          consistency, lowers development latency through immediate feedback, and
          helps with agility by allowing developers to operate independently without
          sacrificing compliance.

          Kubernetes allows decoupling policy decisions from the inner workings of the
          API Server by means of [admission controller webhooks](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/), which are executed
          whenever a resource is created, updated or deleted. Gatekeeper is a
          validating and mutating webhook that enforces CRD-based policies executed
          by [Open Policy Agent](https://github.com/open-policy-agent/opa), a policy
          engine for Cloud Native environments hosted
          by CNCF as a [graduated project](https://www.cncf.io/projects/open-policy-agent-opa/).

          In addition to the admission scenario, Gatekeeper's audit functionality
          allows administrators to see what resources are currently violating any
          given policy.

          Finally, Gatekeeper's engine is designed to be portable, allowing
          administrators to detect and reject non-compliant commits to an
          infrastructure-as-code system's source-of-truth, further strengthening
          compliance efforts and preventing bad state from slowing down the
          organization.

          Gatekeeper has the following functionality:
          * An extensible, parameterized policy library
          * Native Kubernetes CRDs for instantiating the policy library (aka "constraints")
          * Native Kubernetes CRDs for extending the policy library (aka "constraint templates")
          * Audit functionality

          For more information, see the [Gatekeeper documentation](https://open-policy-agent.github.io/gatekeeper/website/docs/).

          ## Support & Troubleshooting

          The Open Policy Agent Gatekeeper community collaborates on Slack
          [#opa-gatekeeper](https://openpolicyagent.slack.com/archives/CDTN970AX).

          Please report issues on the respective GitHub repositories for either
          the [Gatekeeper Operator](https://github.com/stolostron/gatekeeper-operator/issues) or
          [Gatekeeper](https://github.com/open-policy-agent/gatekeeper/issues) itself.
        displayName: Gatekeeper Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Gatekeeper
        links:
        - name: Gatekeeper Operator
          url: https://github.com/stolostron/gatekeeper-operator
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/gatekeeper/gatekeeper-operator-bundle@sha256:29417852e3e69233d1e7205a982023c14b98eac7f3f5ad0fc93a4e46d6197520
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9-operator@sha256:54da5a712ccab9d9cae230e8bdb97f292d9959b6589a8c58c6f41f13c5b7ee12
        - registry.redhat.io/gatekeeper/gatekeeper-rhel9@sha256:3017260f48f813fb6d5eb49cc6088abebeb4d981aa679e82130fdc4c6f42c512
        version: 3.20.0
      entries:
      - name: gatekeeper-operator-product.v3.20.0
        version: 3.20.0
      - name: gatekeeper-operator-product.v3.19.1
        version: 3.19.1
      - name: gatekeeper-operator-product.v3.19.0
        version: 3.19.0
      - name: gatekeeper-operator-product.v3.18.0
        version: 3.18.0
      - name: gatekeeper-operator-product.v3.17.2
        version: 3.17.2
      - name: gatekeeper-operator-product.v3.17.1
        version: 3.17.1
      - name: gatekeeper-operator-product.v3.17.0
        version: 3.17.0
      - name: gatekeeper-operator-product.v3.15.1
        version: 3.15.1
      - name: gatekeeper-operator-product.v3.15.1-0.1725401534.p
        version: 3.15.1+0.1725401534.p
      - name: gatekeeper-operator-product.v3.15.1-0.1726639477.p
        version: 3.15.1+0.1726639477.p
      - name: gatekeeper-operator-product.v3.15.1-0.1727189912.p
        version: 3.15.1+0.1727189912.p
      name: stable
    defaultChannel: stable
    packageName: gatekeeper-operator-product
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Argo CD Community
      provider-url: ""
    name: argocd-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: argocd-operator.v0.16.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "AppProject",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "Application",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ApplicationSet",
                "metadata": {
                  "name": "example"
                },
                "spec": null
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd-sample"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "ArgoCDExport",
                "metadata": {
                  "name": "argocdexport-sample"
                },
                "spec": {
                  "argocd": "argocd-sample"
                }
              },
              {
                "apiVersion": "argoproj.io/v1alpha1",
                "kind": "NotificationsConfiguration",
                "metadata": {
                  "name": "default-notifications-configuration"
                },
                "spec": {
                  "templates": {
                    "template.app-created": "email:\n  subject: Application {{.app.metadata.name}} has been created.\nmessage: Application {{.app.metadata.name}} has been created.\nteams:\n  title: Application {{.app.metadata.name}} has been created.",
                    "template.app-deleted": "email:\n  subject: Application {{.app.metadata.name}} has been deleted.\nmessage: Application {{.app.metadata.name}} has been deleted.\nteams:\n  title: Application {{.app.metadata.name}} has been deleted.",
                    "template.app-deployed": "email:\n  subject: New version of an application {{.app.metadata.name}} is up and running.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Revision\",\n        \"value\": \"{{.app.status.sync.revision}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    },\n    {\n      \"name\": \"Revision\",\n      \"value\": \"{{.app.status.sync.revision}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: New version of an application {{.app.metadata.name}} is up and running.",
                    "template.app-health-degraded": "email:\n  subject: Application {{.app.metadata.name}} has degraded.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\": \"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#f4c030\",\n      \"fields\": [\n      {\n        \"title\": \"Health Status\",\n        \"value\": \"{{.app.status.health.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Health Status\",\n      \"value\": \"{{.app.status.health.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Application {{.app.metadata.name}} has degraded.",
                    "template.app-sync-failed": "email:\n  subject: Failed to sync application {{.app.metadata.name}}.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}}  The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Failed at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#FF0000'\n  title: Failed to sync application {{.app.metadata.name}}.",
                    "template.app-sync-running": "email:\n  subject: Start syncing application {{.app.metadata.name}}.\nmessage: |\n  The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#0DADEA\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Started at\",\n      \"value\": \"{{.app.status.operationState.startedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Operation\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Start syncing application {{.app.metadata.name}}.",
                    "template.app-sync-status-unknown": "email:\n  subject: Application {{.app.metadata.name}} sync status is 'Unknown'\nmessage: |\n  {{if eq .serviceType \"slack\"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.\n  Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.\n  {{if ne .serviceType \"slack\"}}\n  {{range $c := .app.status.conditions}}\n      * {{$c.message}}\n  {{end}}\n  {{end}}\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#E96D76\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Application\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  title: Application {{.app.metadata.name}} sync status is 'Unknown'",
                    "template.app-sync-succeeded": "email:\n  subject: Application {{.app.metadata.name}} has been successfully synced.\nmessage: |\n  {{if eq .serviceType \"slack\"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.\n  Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .\nslack:\n  attachments: |\n    [{\n      \"title\": \"{{ .app.metadata.name}}\",\n      \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n      \"color\": \"#18be52\",\n      \"fields\": [\n      {\n        \"title\": \"Sync Status\",\n        \"value\": \"{{.app.status.sync.status}}\",\n        \"short\": true\n      },\n      {\n        \"title\": \"Repository\",\n        \"value\": \"{{.app.spec.source.repoURL}}\",\n        \"short\": true\n      }\n      {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"title\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\",\n        \"short\": true\n      }\n      {{end}}\n      ]\n    }]\n  deliveryPolicy: Post\n  groupingKey: \"\"\n  notifyBroadcast: false\nteams:\n  facts: |\n    [{\n      \"name\": \"Sync Status\",\n      \"value\": \"{{.app.status.sync.status}}\"\n    },\n    {\n      \"name\": \"Synced at\",\n      \"value\": \"{{.app.status.operationState.finishedAt}}\"\n    },\n    {\n      \"name\": \"Repository\",\n      \"value\": \"{{.app.spec.source.repoURL}}\"\n    }\n    {{range $index, $c := .app.status.conditions}}\n      {{if not $index}},{{end}}\n      {{if $index}},{{end}}\n      {\n        \"name\": \"{{$c.type}}\",\n        \"value\": \"{{$c.message}}\"\n      }\n    {{end}}\n    ]\n  potentialAction: |-\n    [{\n      \"@type\":\"OpenUri\",\n      \"name\":\"Operation Details\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true\"\n      }]\n    },\n    {\n      \"@type\":\"OpenUri\",\n      \"name\":\"Open Repository\",\n      \"targets\":[{\n        \"os\":\"default\",\n        \"uri\":\"{{.app.spec.source.repoURL | call .repo.RepoURLToHTTPS}}\"\n      }]\n    }]\n  themeColor: '#000080'\n  title: Application {{.app.metadata.name}} has been successfully synced"
                  },
                  "triggers": {
                    "trigger.on-created": "- description: Application is created.\n  oncePer: app.metadata.name\n  send:\n  - app-created\n  when: \"true\"",
                    "trigger.on-deleted": "- description: Application is deleted.\n  oncePer: app.metadata.name\n  send:\n  - app-deleted\n  when: app.metadata.deletionTimestamp != nil",
                    "trigger.on-deployed": "- description: Application is synced and healthy. Triggered once per commit.\n  oncePer: app.status.operationState.syncResult.revision\n  send:\n  - app-deployed\n  when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status\n      == 'Healthy'",
                    "trigger.on-health-degraded": "- description: Application has degraded\n  send:\n  - app-health-degraded\n  when: app.status.health.status == 'Degraded'",
                    "trigger.on-sync-failed": "- description: Application syncing has failed\n  send:\n  - app-sync-failed\n  when: app.status.operationState.phase in ['Error', 'Failed']",
                    "trigger.on-sync-running": "- description: Application is being synced\n  send:\n  - app-sync-running\n  when: app.status.operationState.phase in ['Running']",
                    "trigger.on-sync-status-unknown": "- description: Application status is 'Unknown'\n  send:\n  - app-sync-status-unknown\n  when: app.status.sync.status == 'Unknown'",
                    "trigger.on-sync-succeeded": "- description: Application syncing has succeeded\n  send:\n  - app-sync-succeeded\n  when: app.status.operationState.phase in ['Succeeded']"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "ArgoCD",
                "metadata": {
                  "name": "argocd-sample"
                },
                "spec": {
                  "controller": {
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "2048Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "1024Mi"
                      }
                    }
                  },
                  "ha": {
                    "enabled": false,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "redis": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "repo": {
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    }
                  },
                  "server": {
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "256Mi"
                      },
                      "requests": {
                        "cpu": "125m",
                        "memory": "128Mi"
                      }
                    },
                    "route": {
                      "enabled": true
                    }
                  },
                  "sso": {
                    "dex": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "256Mi"
                        },
                        "requests": {
                          "cpu": "250m",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "provider": "dex"
                  }
                }
              },
              {
                "apiVersion": "argoproj.io/v1beta1",
                "kind": "NamespaceManagement",
                "metadata": {
                  "name": "namespacemanagement-sample"
                },
                "spec": {
                  "managedBy": "argocd-ns"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/argoprojlabs/argocd-operator@sha256:0c697bdd14d2432c481db757507f5ea506b2aa97c944e50d72664dbb4fba047a
          createdAt: "2025-12-16T12:52:16Z"
          description: Argo CD is a declarative, GitOps continuous delivery tool for
            Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.35.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/argoproj-labs/argocd-operator
          support: Argo CD
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: An Application is a group of Kubernetes resources as defined
              by a manifest.
            displayName: Application
            kind: Application
            name: applications.argoproj.io
            version: v1alpha1
          - description: An ApplicationSet is a group or set of Application resources.
            displayName: ApplicationSet
            kind: ApplicationSet
            name: applicationsets.argoproj.io
            version: v1alpha1
          - description: An AppProject is a logical grouping of Argo CD Applications.
            displayName: AppProject
            kind: AppProject
            name: appprojects.argoproj.io
            version: v1alpha1
          - description: ArgoCDExport is the Schema for the argocdexports API
            displayName: Argo CDExport
            kind: ArgoCDExport
            name: argocdexports.argoproj.io
            version: v1alpha1
          - description: ArgoCD is the Schema for the argocds API
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1alpha1
          - description: ArgoCD is the Schema for the argocds API
            displayName: Argo CD
            kind: ArgoCD
            name: argocds.argoproj.io
            version: v1beta1
          - description: NamespaceManagement is the Schema for the namespacemanagements
              API
            displayName: Namespace Management
            kind: NamespaceManagement
            name: namespacemanagements.argoproj.io
            version: v1beta1
          - description: NotificationsConfiguration is the Schema for the notificationsconfiguration
              API
            displayName: NotificationsConfiguration
            kind: NotificationsConfiguration
            name: notificationsconfigurations.argoproj.io
            version: v1alpha1
        description: |
          ## Overview

          The Argo CD Operator manages the full lifecycle for [Argo CD](https://argoproj.github.io/argo-cd/) and it's
          components. The operator's goal is to automate the tasks required when operating an Argo CD cluster.

          Beyond installation, the operator helps to automate the process of upgrading, backing up and restoring as needed and
          remove the human as much as possible. In addition, the operator aims to provide deep insights into the Argo CD
          environment by configuring Prometheus and Grafana to aggregate, visualize and expose the metrics already exported by
          Argo CD.

          The operator aims to provide the following, and is a work in progress.

          * Easy configuration and installation of the Argo CD components with sane defaults to get up and running quickly.
          * Provide seamless upgrades to the Argo CD components.
          * Ability to back up and restore an Argo CD cluster from a point in time or on a recurring schedule.
          * Aggregate and expose the metrics for Argo CD and the operator itself using Prometheus and Grafana.
          * Autoscale the Argo CD components as necessary to handle variability in demand.

          ## Usage

          Deploy a basic Argo CD cluster by creating a new ArgoCD resource in the namespace where the operator is installed.

          ```
          apiVersion: argoproj.io/v1alpha1
          kind: ArgoCD
          metadata:
            name: example-argocd
          spec: {}
          ```

          ## Backup

          Backup the cluster above by creating a new ArgoCDExport resource in the namespace where the operator is installed.

          ```
          apiVersion: argoproj.io/v1alpha1
          kind: ArgoCDExport
          metadata:
            name: example-argocdexport
          spec:
            argocd: example-argocd
          ```

          See the [documentation](https://argocd-operator.readthedocs.io) and examples on
          [GitHub](https://github.com/argoproj-labs/argocd-operator) for more information.
        displayName: Argo CD
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - kubernetes
        links:
        - name: Argo CD Project
          url: https://argoproj.github.io/argo-cd/
        - name: Operator Documentation
          url: https://argocd-operator.readthedocs.io
        - name: Operator Source Code
          url: https://github.com/argoproj-labs/argocd-operator
        maintainers:
        - email: sghadi@redhat.com
          name: Siddhesh Ghadi
        maturity: alpha
        provider:
          name: Argo CD Community
        relatedImages:
        - quay.io/argoprojlabs/argocd-operator@sha256:0c697bdd14d2432c481db757507f5ea506b2aa97c944e50d72664dbb4fba047a
        - quay.io/community-operator-pipeline-prod/argocd-operator@sha256:dd18636316791e08e295b07cbcf8ce41d9c6a280f1008c70f2fecf6b6214c732
        version: 0.16.0
      entries:
      - name: argocd-operator.v0.16.0
        version: 0.16.0
      - name: argocd-operator.v0.15.0
        version: 0.15.0
      - name: argocd-operator.v0.14.1
        version: 0.14.1
      - name: argocd-operator.v0.14.0
        version: 0.14.0
      - name: argocd-operator.v0.13.0
        version: 0.13.0
      - name: argocd-operator.v0.12.0
        version: 0.12.0
      - name: argocd-operator.v0.11.0
        version: 0.11.0
      - name: argocd-operator.v0.10.1
        version: 0.10.1
      - name: argocd-operator.v0.10.0
        version: 0.10.0
      - name: argocd-operator.v0.9.1
        version: 0.9.1
      - name: argocd-operator.v0.9.0
        version: 0.9.0
      - name: argocd-operator.v0.8.0
        version: 0.8.0
      - name: argocd-operator.v0.7.0
        version: 0.7.0
      - name: argocd-operator.v0.5.0
        version: 0.5.0
      - name: argocd-operator.v0.4.0
        version: 0.4.0
      - name: argocd-operator.v0.3.0
        version: 0.3.0
      - name: argocd-operator.v0.2.1
        version: 0.2.1
      - name: argocd-operator.v0.2.0
        version: 0.2.0
      - name: argocd-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: argocd-operator
    provider:
      name: Argo CD Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: redhat-oadp-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: oadp-operator.v1.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "DataProtectionApplication",
                "metadata": {
                  "name": "velero-sample"
                },
                "spec": {
                  "backupLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-east-1"
                        },
                        "credential": {
                          "key": "cloud",
                          "name": "cloud-credentials"
                        },
                        "default": true,
                        "objectStorage": {
                          "bucket": "my-bucket-name",
                          "prefix": "velero"
                        },
                        "provider": "aws"
                      }
                    }
                  ],
                  "configuration": {
                    "nodeAgent": {
                      "enable": true,
                      "uploaderType": "kopia"
                    },
                    "velero": {
                      "defaultPlugins": [
                        "openshift",
                        "aws",
                        "kubevirt",
                        "hypershift"
                      ],
                      "disableFsBackup": false
                    }
                  },
                  "snapshotLocations": [
                    {
                      "velero": {
                        "config": {
                          "profile": "default",
                          "region": "us-west-2"
                        },
                        "provider": "aws"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "DataProtectionTest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "oadp-operator"
                  },
                  "name": "dataprotectiontest-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminBackup",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-operator",
                    "app.kubernetes.io/instance": "nonadminbackup-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminbackup",
                    "app.kubernetes.io/part-of": "oadp-operator"
                  },
                  "name": "nonadminbackup-sample"
                },
                "spec": {
                  "backupSpec": {}
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminBackupStorageLocation",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-nac",
                    "app.kubernetes.io/instance": "nonadminbackupstoragelocation-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminbackupstoragelocation",
                    "app.kubernetes.io/part-of": "oadp-nac"
                  },
                  "name": "nonadminbackupstoragelocation-sample"
                },
                "spec": {
                  "backupStorageLocationSpec": {
                    "config": {
                      "checksumAlgorithm": "",
                      "region": "eu-central-1"
                    },
                    "credential": {
                      "key": "default",
                      "name": "cloud-credentials"
                    },
                    "objectStorage": {
                      "bucket": "my-bucket",
                      "prefix": "nac-test"
                    },
                    "provider": "aws"
                  }
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminBackupStorageLocationRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-nac",
                    "app.kubernetes.io/instance": "nonadminbackupstoragelocationrequest-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminbackupstoragelocationrequest",
                    "app.kubernetes.io/part-of": "oadp-nac"
                  },
                  "name": "nonadminbackupstoragelocationrequest-sample"
                },
                "spec": {
                  "approvalDecision": "pending"
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminDownloadRequest",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "oadp-nac"
                  },
                  "name": "nonadmindownloadrequest-sample"
                },
                "spec": {
                  "target": {
                    "kind": "BackupLog",
                    "name": "non-admin-backup-name"
                  }
                }
              },
              {
                "apiVersion": "oadp.openshift.io/v1alpha1",
                "kind": "NonAdminRestore",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oadp-nac",
                    "app.kubernetes.io/instance": "nonadminrestore-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "nonadminrestore",
                    "app.kubernetes.io/part-of": "oadp-nac"
                  },
                  "name": "nonadminrestore-sample"
                },
                "spec": {
                  "restoreSpec": {
                    "backupName": "nonadminbackup-sample"
                  }
                }
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Backup",
                "metadata": {
                  "name": "backup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "BackupStorageLocation",
                "metadata": {
                  "name": "backupstoragelocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DeleteBackupRequest",
                "metadata": {
                  "name": "deletebackuprequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "DownloadRequest",
                "metadata": {
                  "name": "downloadrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeBackup",
                "metadata": {
                  "name": "podvolumebackup",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "PodVolumeRestore",
                "metadata": {
                  "name": "podvolumerestore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Restore",
                "metadata": {
                  "name": "restore",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "Schedule",
                "metadata": {
                  "name": "schedule",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "ServerStatusRequest",
                "metadata": {
                  "name": "serverstatusrequest",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              },
              {
                "apiVersion": "velero.io/v1",
                "kind": "VolumeSnapshotLocation",
                "metadata": {
                  "name": "volumesnapshotlocation",
                  "namespace": "openshift-adp"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: |
            Cloud Provider,Developer Tools,Modernization & Migration,OpenShift Optional,Storage
          certified: "false"
          containerImage: registry.redhat.io/oadp/oadp-rhel9-operator@sha256:08676a3f8eaa6851d3dd16fea051220eda9518f8669b327bc99d24facf5b226c
          createdAt: "2025-09-19T14:11:12Z"
          description: OADP (OpenShift API for Data Protection) operator sets up and
            installs Data Protection Applications on the OpenShift platform.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.4.0 <1.5.3'
          operatorframework.io/suggested-namespace: openshift-adp
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/oadp/oadp-mustgather-rhel9@sha256:ee04dce0b5be78b40debfa96c20d6c851f4486e026db539fc27eec369bc329d6
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/oadp-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A backup repository is an indicator of a connection from
              the restic/kopia server to the backupstoragelocation.
            displayName: BackupRepository
            kind: BackupRepository
            name: backuprepositories.velero.io
            version: v1
          - description: Backup is a Velero resource that represents the capture of
              Kubernetes cluster state at a point in time (API objects and associated
              volume state).
            displayName: Backup
            kind: Backup
            name: backups.velero.io
            version: v1
          - description: BackupStorageLocation represents an object storage location
              (such as Amazon S3 Bucket) where Velero stores backup objects.
            displayName: BackupStorageLocation
            kind: BackupStorageLocation
            name: backupstoragelocations.velero.io
            version: v1
          - description: The CloudStorage API automates the creation of a bucket for
              object storage.
            displayName: Cloud Storage
            kind: CloudStorage
            name: cloudstorages.oadp.openshift.io
            version: v1alpha1
          - description: DataDownload represents a data download of a volume snapshot.
              There is one DataDownload created per volume to be restored.
            displayName: DataDownload
            kind: DataDownload
            name: datadownloads.velero.io
            version: v2alpha1
          - description: DataProtectionApplication represents configuration to install
              a data protection application to safely backup and restore, perform
              disaster recovery and migrate Kubernetes cluster resources and persistent
              volumes.
            displayName: Data Protection Application
            kind: DataProtectionApplication
            name: dataprotectionapplications.oadp.openshift.io
            version: v1alpha1
          - description: DataProtectionTest is the Schema for the dataprotectiontests
              API
            displayName: Data Protection Test
            kind: DataProtectionTest
            name: dataprotectiontests.oadp.openshift.io
            version: v1alpha1
          - description: DataUpload acts as the protocol between data mover plugins
              and data mover controller for the datamover backup operation
            displayName: DataUpload
            kind: DataUpload
            name: datauploads.velero.io
            version: v2alpha1
          - description: DeleteBackupRequest is a request to delete one or more backups.
            displayName: DeleteBackupRequest
            kind: DeleteBackupRequest
            name: deletebackuprequests.velero.io
            version: v1
          - description: DownloadRequest is a request to download an artifact from
              object storage such as a backup log file.
            displayName: DownloadRequest
            kind: DownloadRequest
            name: downloadrequests.velero.io
            version: v1
          - description: NonAdminBackup is the Schema for the nonadminbackups API
            displayName: Non Admin Backup
            kind: NonAdminBackup
            name: nonadminbackups.oadp.openshift.io
            version: v1alpha1
          - description: NonAdminBackupStorageLocationRequest is the Schema for the
              nonadminbackupstoragelocationrequests API
            displayName: Non Admin BackupStorageLocationRequest
            kind: NonAdminBackupStorageLocationRequest
            name: nonadminbackupstoragelocationrequests.oadp.openshift.io
            version: v1alpha1
          - description: NonAdminBackupStorageLocation is the Schema for the nonadminbackupstoragelocations
              API
            displayName: Non Admin BackupStorageLocation
            kind: NonAdminBackupStorageLocation
            name: nonadminbackupstoragelocations.oadp.openshift.io
            version: v1alpha1
          - kind: NonAdminDownloadRequest
            name: nonadmindownloadrequests.oadp.openshift.io
            version: v1alpha1
          - description: NonAdminRestore is the Schema for the nonadminrestores API
            displayName: Non Admin Restore
            kind: NonAdminRestore
            name: nonadminrestores.oadp.openshift.io
            version: v1alpha1
          - description: A velero pod volume backup is a restic backup of persistent
              volumes attached to a running pod.
            displayName: PodVolumeBackup
            kind: PodVolumeBackup
            name: podvolumebackups.velero.io
            version: v1
          - description: A velero pod volume restore is a restic restore of persistent
              volumes attached to a running pod.
            displayName: PodVolumeRestore
            kind: PodVolumeRestore
            name: podvolumerestores.velero.io
            version: v1
          - description: Restore is a Velero resource that represents the application
              of resources from a Velero backup to a target Kubernetes cluster.
            displayName: Restore
            kind: Restore
            name: restores.velero.io
            version: v1
          - description: Schedule is a Velero resource that represents a pre-scheduled
              or periodic Backup that should be run.
            displayName: Schedule
            kind: Schedule
            name: schedules.velero.io
            version: v1
          - description: ServerStatusRequest is a request to access current status
              information about the Velero server.
            displayName: ServerStatusRequest
            kind: ServerStatusRequest
            name: serverstatusrequests.velero.io
            version: v1
          - description: VolumeSnapshotLocation is a location where Velero stores
              volume snapshots.
            displayName: VolumeSnapshotLocation
            kind: VolumeSnapshotLocation
            name: volumesnapshotlocations.velero.io
            version: v1
        description: |
          **OpenShift API for Data Protection (OADP)** operator sets up and installs
          Velero on the OpenShift platform, allowing users to backup and restore
          applications.

          Backup and restore Kubernetes resources and internal images, at the
          granularity of a namespace, using a version of Velero appropriate for
          the installed version of OADP.

          OADP backs up Kubernetes objects and internal images by saving them as
          an archive file on object storage. OADP backs up persistent volumes
          (PVs) by creating snapshots with the native cloud snapshot API or with
          the Container Storage Interface (CSI). For cloud providers that do not
          support snapshots, OADP backs up resources and PV data with Restic or Kopia.

          * [Installing OADP for application backup and restore][install-doc]

          * [Installing OADP on a ROSA cluster and using STS, please follow the Getting Started Steps 1-3 in order to obtain the role ARN needed for using the standardized STS configuration flow via OLM][rosa-sts-doc]

          * [Frequently Asked Questions][faq-doc]

          [install-doc]: https://docs.openshift.com/container-platform/latest/backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.html
          [rosa-sts-doc]: https://mobb.ninja/docs/misc/oadp/rosa-sts/
          [faq-doc]: https://access.redhat.com/articles/5456281
        displayName: OADP Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - disaster backup
        - disaster recovery
        - disaster restore
        - disaster
        - backup
        - restore
        - backup automation
        - recovery
        - data protection
        - data management
        - data
        - protection
        - management
        - application resilience
        - resilience
        - velero
        - openshift
        - oadp
        - cloud-native
        - replication
        - kopia
        - restic
        - network file system
        - nfs
        - simple cloud storage
        - s3
        - minio
        - cloud storage
        - data foundation
        - ceph
        - csi
        - container storage interface
        links:
        - name: OADP Operator
          url: https://github.com/openshift/oadp-operator
        maintainers:
        - email: oadp-maintainers@redhat.com
          name: OADP Operator maintainers
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/oadp/oadp-velero-plugin-for-gcp-rhel9@sha256:f1ebdaac4359d96d524ac1bf36f5b0b3bcf7d1bbb7299bf8d6daa55dc2bd2c17
        - registry.redhat.io/oadp/oadp-operator-bundle@sha256:d998d58f1170bc7ee9d9c81f4bbba50ac1f65e8fe60fe81cd74166beff6f93c4
        - registry.redhat.io/oadp/oadp-non-admin-rhel9@sha256:71fe65fdaf632c8f51db7c5ca1692f0fec79304e68114a91541b38f4207e70db
        - registry.redhat.io/oadp/oadp-velero-plugin-for-legacy-aws-rhel9@sha256:50262b769de92249219dddb3a1ffc37cf187cd8e76a1f912459e8f1bb86f4c84
        - registry.redhat.io/oadp/oadp-velero-plugin-for-microsoft-azure-rhel9@sha256:c2dabbda67d47c43c323d7790da7e091fb9715d2e166ebfc14e2e026745d4b6f
        - registry.redhat.io/oadp/oadp-velero-plugin-rhel9@sha256:9b888c75a1ddf274b1f0aa053ddbbc9acc3270417712456ffa29ef81a883b38a
        - registry.redhat.io/oadp/oadp-velero-rhel9@sha256:dd5897b1579599cfa8d8a03a1c8d3cf68e3927c4ba5dee4e33c2a2d4c9e6ed89
        - registry.redhat.io/oadp/oadp-rhel9-operator@sha256:08676a3f8eaa6851d3dd16fea051220eda9518f8669b327bc99d24facf5b226c
        - registry.redhat.io/oadp/oadp-velero-plugin-for-aws-rhel9@sha256:2a099649d3d7101a0b6dff9f6372bc76903ba6ecb6578dbeef8a8b3853f48026
        - registry.redhat.io/oadp/oadp-kubevirt-velero-plugin-rhel9@sha256:77d6057b1783872ec65d7d6a88d8a1212c38aacc982c7efd46ed2eb77b5e9e70
        - registry.redhat.io/oadp/oadp-hypershift-velero-plugin-rhel9@sha256:f8798364f94bb1bf4db264b0439c5a280b40cafa408c47b4160d9cc9c5d87e53
        - registry.redhat.io/oadp/oadp-mustgather-rhel9@sha256:ee04dce0b5be78b40debfa96c20d6c851f4486e026db539fc27eec369bc329d6
        version: 1.5.3
      entries:
      - name: oadp-operator.v1.5.3
        version: 1.5.3
      - name: oadp-operator.v1.5.2
        version: 1.5.2
      - name: oadp-operator.v1.5.1
        version: 1.5.1
      - name: oadp-operator.v1.5.0
        version: 1.5.0
      name: stable
    defaultChannel: stable
    packageName: redhat-oadp-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: container-security-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: container-security-operator.v3.4.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "secscan.quay.redhat.com/v1alpha1",
                "kind": "ImageManifestVuln",
                "metadata": {
                  "selfLink": "/apis/secscan.quay.redhat.com/v1alpha1/namespaces/openshift-cluster-version/imagemanifestvulns/sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18",
                  "resourceVersion": "14565395",
                  "name": "sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18",
                  "uid": "3f16a188-e69a-406c-aa06-df340195409c",
                  "creationTimestamp": "2021-03-17T12:07:16Z",
                  "generation": 2,
                  "managedFields": [
                    {
                      "apiVersion": "secscan.quay.redhat.com/v1alpha1",
                      "fieldsType": "FieldsV1",
                      "fieldsV1": {
                        "f:metadata": {
                          "f:labels": {
                            ".": {},
                            "f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6": {}
                          }
                        },
                        "f:spec": {
                          ".": {},
                          "f:features": {},
                          "f:image": {},
                          "f:manifest": {}
                        },
                        "f:status": {
                          ".": {},
                          "f:affectedPods": {
                            ".": {},
                            "f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6": {}
                          },
                          "f:fixableCount": {},
                          "f:highCount": {},
                          "f:highestSeverity": {},
                          "f:lastUpdate": {},
                          "f:lowCount": {},
                          "f:mediumCount": {}
                        }
                      },
                      "manager": "security-labeller",
                      "operation": "Update",
                      "time": "2021-03-17T13:07:20Z"
                    }
                  ],
                  "namespace": "openshift-cluster-version",
                  "labels": {
                    "openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6": "true"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:447e05859134a0455ca55f8aae16c8a27ce06af4c18c191b41f6339df553f1bf
          createdAt: 2021-11-02 11:11 UTC
          description: Identify image vulnerabilities in Kubernetes pods
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Quay Container Security Operator (CSO) brings Quay and Clair
          metadata to Kubernetes / OpenShift. Starting with vulnerability information
          the scope will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Quay Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Quay Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:246712ce23cdd590ff83d84e9800b4ed761886ed5bab9f9cda4125a5d930e7e5
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:447e05859134a0455ca55f8aae16c8a27ce06af4c18c191b41f6339df553f1bf
        version: 3.4.7
      entries:
      - name: container-security-operator.v3.4.7
        version: 3.4.7
      name: quay-v3.4
    - currentCSV: container-security-operator.v3.5.7
      currentCSVDesc:
        annotations:
          alm-examples: "[\n  {\n    \"apiVersion\": \"secscan.quay.redhat.com/v1alpha1\",\n
            \   \"kind\": \"ImageManifestVuln\",\n    \"metadata\": {\n      \"selfLink\":
            \"/apis/secscan.quay.redhat.com/v1alpha1/namespaces/openshift-cluster-version/imagemanifestvulns/sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18\",\n
            \     \"resourceVersion\": \"14565395\",\n      \"name\": \"sha256.a7b23f38d1e5be975a6b516739689673011bdfa59a7158dc6ca36cefae169c18\",\n
            \     \"uid\": \"3f16a188-e69a-406c-aa06-df340195409c\",\n      \"creationTimestamp\":
            \"2021-03-17T12:07:16Z\",\n      \"generation\": 2,\n      \"managedFields\":
            [\n        {\n          \"apiVersion\": \"secscan.quay.redhat.com/v1alpha1\",\n
            \         \"fieldsType\": \"FieldsV1\",\n          \"fieldsV1\": {\n            \"f:metadata\":
            {\n              \"f:labels\": {\n                \".\": {},\n                \"f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6\":
            {}\n              }\n            },\n            \"f:spec\": {\n              \".\":
            {},\n              \"f:features\": {},\n              \"f:image\": {},\n
            \             \"f:manifest\": {}\n            },\n            \"f:status\":
            {\n              \".\": {},\n              \"f:affectedPods\": {\n                \".\":
            {},\n                \"f:openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6\":
            {}\n              },\n              \"f:fixableCount\": {},\n              \"f:highCount\":
            {},\n              \"f:highestSeverity\": {},\n              \"f:lastUpdate\":
            {},\n              \"f:lowCount\": {},\n              \"f:mediumCount\":
            {}\n            }\n          },\n          \"manager\": \"security-labeller\",\n
            \         \"operation\": \"Update\",\n          \"time\": \"2021-03-17T13:07:20Z\"\n
            \       }\n      ],\n      \"namespace\": \"openshift-cluster-version\",\n
            \     \"labels\": {\n        \"openshift-cluster-version/cluster-version-operator-b98ccdb7d-t5sq6\":
            \"true\"\n      }\n    },\n    \"spec\": {\n      \"features\": [\n        {\n
            \         \"name\": \"musl\",\n          \"namespaceName\": \"alpine:v3.14\",\n
            \         \"version\": \"1.2.2-r3\",\n          \"versionformat\": \"dpkg\",\n
            \         \"vulnerabilities\": [\n            {\n              \"fixedby\":
            \"1.2.2_pre2-r0\",\n              \"link\": \"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-28928\",\n
            \             \"metadata\": \"{\\\"NVD\\\": {\\\"CVSSv3\\\": {\\\"Vectors\\\":
            \\\"CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\\\", \\\"ImpactScore\\\":
            3.6, \\\"Score\\\": 5.5, \\\"ExploitabilityScore\\\": 1.8}, \\\"CVSSv2\\\":
            {\\\"Score\\\": 2.1, \\\"PublishedDateTime\\\": \\\"2020-11-24T18:15Z\\\",
            \\\"Vectors\\\": \\\"AV:L/AC:L/Au:N/C:N/I:N/A:P\\\"}}}\",\n              \"name\":
            \"CVE-2020-28928\",\n              \"namespaceName\": \"alpine:v3.14\",\n
            \             \"severity\": \"Low\"\n            }\n          ]\n        }\n
            \     ],\n      \"image\": \"quay.io/harishg/pruned-redhat-operators-index\",\n
            \     \"manifest\": \"sha256:19631c86642609254777ff59fc9e128aa5d0a94a7dbb504ef1fcfb2bbc6e486e\"\n
            \   }\n  }\n]    "
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:6b3581e62550d6a615d36eee6eaf4c89b9c35ba53cab8433bd93c68393a9d115
          createdAt: 2021-09-10 23:09 UTC
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.4.x <3.5.7'
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Quay Container Security Operator (CSO) brings Quay and Clair
          metadata to Kubernetes / OpenShift. Starting with vulnerability information
          the scope will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Quay Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Quay Container Security
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: quay-devel@redhat.com
          name: Quay Engineering Team
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:68e766235bdcd8f3335e2ab6e09942d98b183b3e498abb65acab6481664d46ed
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:6b3581e62550d6a615d36eee6eaf4c89b9c35ba53cab8433bd93c68393a9d115
        version: 3.5.7
      entries:
      - name: container-security-operator.v3.5.7
        version: 3.5.7
      name: quay-v3.5
    - currentCSV: container-security-operator.v3.10.17
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:dfda85e3a3fc7900999028ea3df53635774ed11a1a90103edb3a86e0d028cb5d
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.7.x <3.10.17'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.10.17
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:b82090e9203982de62d995c18eed37838b8ebbb092195a7f58d02526fd04523e
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:dfda85e3a3fc7900999028ea3df53635774ed11a1a90103edb3a86e0d028cb5d
        version: 3.10.17
      entries:
      - name: container-security-operator.v3.10.17
        version: 3.10.17
      - name: container-security-operator.v3.10.16
        version: 3.10.16
      - name: container-security-operator.v3.10.15
        version: 3.10.15
      - name: container-security-operator.v3.10.14
        version: 3.10.14
      - name: container-security-operator.v3.10.13
        version: 3.10.13
      - name: container-security-operator.v3.10.12
        version: 3.10.12
      - name: container-security-operator.v3.10.11
        version: 3.10.11
      - name: container-security-operator.v3.10.10
        version: 3.10.10
      - name: container-security-operator.v3.10.9
        version: 3.10.9
      - name: container-security-operator.v3.10.8
        version: 3.10.8
      - name: container-security-operator.v3.10.7
        version: 3.10.7
      - name: container-security-operator.v3.10.6
        version: 3.10.6
      - name: container-security-operator.v3.10.5
        version: 3.10.5
      - name: container-security-operator.v3.10.4
        version: 3.10.4
      - name: container-security-operator.v3.10.3
        version: 3.10.3
      - name: container-security-operator.v3.10.2
        version: 3.10.2
      - name: container-security-operator.v3.10.1
        version: 3.10.1
      - name: container-security-operator.v3.10.0
        version: 3.10.0
      name: stable-3.10
    - currentCSV: container-security-operator.v3.11.13
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:3914389fd53c371627921298c5dc3564999d92bc720f27a240f74c034ebbf5ec
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.8.x <3.11.13'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.11.13
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:56db2fd54dbe982dde6a4558b664b19a676a8ac99bfbc8082d097cd6d71a03ea
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:3914389fd53c371627921298c5dc3564999d92bc720f27a240f74c034ebbf5ec
        version: 3.11.13
      entries:
      - name: container-security-operator.v3.11.13
        version: 3.11.13
      - name: container-security-operator.v3.11.12
        version: 3.11.12
      - name: container-security-operator.v3.11.11
        version: 3.11.11
      - name: container-security-operator.v3.11.10
        version: 3.11.10
      - name: container-security-operator.v3.11.9
        version: 3.11.9
      - name: container-security-operator.v3.11.8
        version: 3.11.8
      - name: container-security-operator.v3.11.7
        version: 3.11.7
      - name: container-security-operator.v3.11.6
        version: 3.11.6
      - name: container-security-operator.v3.11.5
        version: 3.11.5
      - name: container-security-operator.v3.11.4
        version: 3.11.4
      - name: container-security-operator.v3.11.3
        version: 3.11.3
      - name: container-security-operator.v3.11.2
        version: 3.11.2
      - name: container-security-operator.v3.11.1
        version: 3.11.1
      - name: container-security-operator.v3.11.0
        version: 3.11.0
      name: stable-3.11
    - currentCSV: container-security-operator.v3.12.13
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:e1e71444c0a0ac4672b56f2b3b84784958f86a72f9fcc53081c1dda3c3a22e88
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.9.x <3.12.13'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.12.13
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:53c387293b92691eb66ea73b1d29781cf275f01b4254c38e21620c0502987272
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:e1e71444c0a0ac4672b56f2b3b84784958f86a72f9fcc53081c1dda3c3a22e88
        version: 3.12.13
      entries:
      - name: container-security-operator.v3.12.13
        version: 3.12.13
      - name: container-security-operator.v3.12.12
        version: 3.12.12
      - name: container-security-operator.v3.12.11
        version: 3.12.11
      - name: container-security-operator.v3.12.10
        version: 3.12.10
      - name: container-security-operator.v3.12.9
        version: 3.12.9
      - name: container-security-operator.v3.12.8
        version: 3.12.8
      - name: container-security-operator.v3.12.7
        version: 3.12.7
      - name: container-security-operator.v3.12.6
        version: 3.12.6
      - name: container-security-operator.v3.12.5
        version: 3.12.5
      - name: container-security-operator.v3.12.4
        version: 3.12.4
      - name: container-security-operator.v3.12.3
        version: 3.12.3
      - name: container-security-operator.v3.12.2
        version: 3.12.2
      - name: container-security-operator.v3.12.1
        version: 3.12.1
      - name: container-security-operator.v3.12.0
        version: 3.12.0
      name: stable-3.12
    - currentCSV: container-security-operator.v3.13.10
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:953ded5fec3ac732a9c96f86ad5928457e58e86546aaa51488c524a4688011f3
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.10.x <3.13.10'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.13.10
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:953ded5fec3ac732a9c96f86ad5928457e58e86546aaa51488c524a4688011f3
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:c0a8c5f5454426844c43f8732ed512ab30b5d4bd3e799fa3f133670d0ea431d5
        version: 3.13.10
      entries:
      - name: container-security-operator.v3.13.10
        version: 3.13.10
      - name: container-security-operator.v3.13.9
        version: 3.13.9
      - name: container-security-operator.v3.13.8
        version: 3.13.8
      - name: container-security-operator.v3.13.7
        version: 3.13.7
      - name: container-security-operator.v3.13.6
        version: 3.13.6
      - name: container-security-operator.v3.13.5
        version: 3.13.5
      - name: container-security-operator.v3.13.4
        version: 3.13.4
      - name: container-security-operator.v3.13.3
        version: 3.13.3
      - name: container-security-operator.v3.13.2
        version: 3.13.2
      - name: container-security-operator.v3.13.1
        version: 3.13.1
      - name: container-security-operator.v3.13.0
        version: 3.13.0
      name: stable-3.13
    - currentCSV: container-security-operator.v3.14.5
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:c42487ccf098df3ec6dbeb5d409346bdd30e92781cf3ffea5fdb6dd0b196d0cf
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.11.x <3.14.5'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.14.5
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:c42487ccf098df3ec6dbeb5d409346bdd30e92781cf3ffea5fdb6dd0b196d0cf
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:46f8c0ea6e383b742ab9cdaed1c8f624c2cf405bb1ce39c0ea6977940d52de07
        version: 3.14.5
      entries:
      - name: container-security-operator.v3.14.5
        version: 3.14.5
      - name: container-security-operator.v3.14.4
        version: 3.14.4
      - name: container-security-operator.v3.14.3
        version: 3.14.3
      - name: container-security-operator.v3.14.2
        version: 3.14.2
      - name: container-security-operator.v3.14.1
        version: 3.14.1
      - name: container-security-operator.v3.14.0
        version: 3.14.0
      name: stable-3.14
    - currentCSV: container-security-operator.v3.15.2
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:81e929ec095f791a83310ee7fcda239d5c348ba69a3cf5adcf1b3a77c349ce77
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.12.x <3.15.2'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.15.2
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:e4ea95a86e77aa64da0b1800f00c2e0e598776cde7cfc7bb9941a60bac207ed9
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:81e929ec095f791a83310ee7fcda239d5c348ba69a3cf5adcf1b3a77c349ce77
        version: 3.15.2
      entries:
      - name: container-security-operator.v3.15.2
        version: 3.15.2
      - name: container-security-operator.v3.15.1
        version: 3.15.1
      - name: container-security-operator.v3.15.0
        version: 3.15.0
      name: stable-3.15
    - currentCSV: container-security-operator.v3.16.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel9@sha256:7eb56ea92c1db547702ef9e540b3dd8dcf5bcbfc866540c09652d9eaaf07e52f
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.13.x <3.16.0'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.16.0
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:e052fc307cfc1246983df50cd95970754d6cf955d0f9b56f8c384cd8f1c08be7
        - registry.redhat.io/quay/quay-container-security-operator-rhel9@sha256:7eb56ea92c1db547702ef9e540b3dd8dcf5bcbfc866540c09652d9eaaf07e52f
        version: 3.16.0
      entries:
      - name: container-security-operator.v3.16.0
        version: 3.16.0
      name: stable-3.16
    - currentCSV: container-security-operator.v3.6.10
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:641b80df8d7102d49a5dfd5b99245669f60393880a6f1bc8ba8450b88a640d96
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.3.x <3.6.10'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.6.10
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:aca3d91b7b9f8c1e8a1e0d045c42ba5f27444e0c1c0bc4a87c697b428c2fff78
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:641b80df8d7102d49a5dfd5b99245669f60393880a6f1bc8ba8450b88a640d96
        version: 3.6.10
      entries:
      - name: container-security-operator.v3.6.10
        version: 3.6.10
      - name: container-security-operator.v3.6.9
        version: 3.6.9
      - name: container-security-operator.v3.6.8
        version: 3.6.8
      - name: container-security-operator.v3.6.7
        version: 3.6.7
      - name: container-security-operator.v3.6.6
        version: 3.6.6
      - name: container-security-operator.v3.6.5
        version: 3.6.5
      - name: container-security-operator.v3.6.4
        version: 3.6.4
      - name: container-security-operator.v3.6.2
        version: 3.6.2
      - name: container-security-operator.v3.6.1
        version: 3.6.1
      - name: container-security-operator.v3.6.0
        version: 3.6.0
      name: stable-3.6
    - currentCSV: container-security-operator.v3.7.14
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:10736a06beb503b4eb73260a87a2cde9bd83353374ee0ac9e8dd0a6260cf2665
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.4.x <3.7.14'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.7.14
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:5af7a32da67d39e7a011672de333792e63604cbfee997c19a495fc759d2fd739
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:10736a06beb503b4eb73260a87a2cde9bd83353374ee0ac9e8dd0a6260cf2665
        version: 3.7.14
      entries:
      - name: container-security-operator.v3.7.14
        version: 3.7.14
      - name: container-security-operator.v3.7.13
        version: 3.7.13
      - name: container-security-operator.v3.7.12
        version: 3.7.12
      - name: container-security-operator.v3.7.11
        version: 3.7.11
      - name: container-security-operator.v3.7.10
        version: 3.7.10
      - name: container-security-operator.v3.7.9
        version: 3.7.9
      - name: container-security-operator.v3.7.8
        version: 3.7.8
      - name: container-security-operator.v3.7.7
        version: 3.7.7
      - name: container-security-operator.v3.7.6
        version: 3.7.6
      - name: container-security-operator.v3.7.5
        version: 3.7.5
      - name: container-security-operator.v3.7.4
        version: 3.7.4
      - name: container-security-operator.v3.7.3
        version: 3.7.3
      - name: container-security-operator.v3.7.2
        version: 3.7.2
      - name: container-security-operator.v3.7.1
        version: 3.7.1
      - name: container-security-operator.v3.7.0
        version: 3.7.0
      name: stable-3.7
    - currentCSV: container-security-operator.v3.8.15
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:108bd033543beb7cce077130c96f992c202f7a258229c239795f8f19e5fae5e5
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          olm.skipRange: '>=3.5.x <3.8.15'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.8.15
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:74f0cf91e2feb60fe794f71b9f56fa8afc60e53379a0aef104701dd6692272e5
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:108bd033543beb7cce077130c96f992c202f7a258229c239795f8f19e5fae5e5
        version: 3.8.15
      entries:
      - name: container-security-operator.v3.8.15
        version: 3.8.15
      - name: container-security-operator.v3.8.14
        version: 3.8.14
      - name: container-security-operator.v3.8.13
        version: 3.8.13
      - name: container-security-operator.v3.8.12
        version: 3.8.12
      - name: container-security-operator.v3.8.11
        version: 3.8.11
      - name: container-security-operator.v3.8.10
        version: 3.8.10
      - name: container-security-operator.v3.8.9
        version: 3.8.9
      - name: container-security-operator.v3.8.8
        version: 3.8.8
      - name: container-security-operator.v3.8.7
        version: 3.8.7
      - name: container-security-operator.v3.8.6
        version: 3.8.6
      - name: container-security-operator.v3.8.5
        version: 3.8.5
      - name: container-security-operator.v3.8.4
        version: 3.8.4
      - name: container-security-operator.v3.8.3
        version: 3.8.3
      - name: container-security-operator.v3.8.2
        version: 3.8.2
      - name: container-security-operator.v3.8.1
        version: 3.8.1
      - name: container-security-operator.v3.8.0
        version: 3.8.0
      name: stable-3.8
    - currentCSV: container-security-operator.v3.9.17
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Security
          containerImage: registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:42777c988fba76e80157675e5219246994552b7a685319ab67f4cb59c29f3d1f
          createdAt: "2020-04-13 00:00:00"
          description: Identify image vulnerabilities in Kubernetes pods
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=3.6.x <3.9.17'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Quay"]'
          quay-version: 3.9.17
          repository: https://github.com/quay/container-security-operator
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a set of vulnerabilities in an image manifest.
            displayName: Image Manifest Vulnerability
            kind: ImageManifestVuln
            name: imagemanifestvulns.secscan.quay.redhat.com
            version: v1alpha1
        description: The Container Security Operator (CSO) brings Quay and Clair metadata
          to Kubernetes / OpenShift. Starting with vulnerability information the scope
          will get expanded over time. If it runs on OpenShift, the corresponding
          vulnerability information is shown inside the OCP Console. The Container
          Security Operator enables cluster administrators to monitor known container
          image vulnerabilities in pods running on their Kubernetes cluster. The controller
          sets up a watch on pods in the specified namespace(s) and queries the container
          registry for vulnerability information. If the container registry supports
          image scanning, such as [Quay](https://github.com/quay/quay) with [Clair](https://github.com/quay/clair),
          then the Operator will expose any vulnerabilities found via the Kubernetes
          API in an `ImageManifestVuln` object.  This Operator requires no additional
          configuration after deployment, and will begin watching pods and populating
          `ImageManifestVulns` immediately once installed.
        displayName: Red Hat Quay Container Security Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - open source
        - containers
        - security
        links:
        - name: Source Code
          url: https://github.com/quay/container-security-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/quay/quay-container-security-operator-bundle@sha256:00dc04b86ae7fd7dd37e9234ed2b4a1d0f0403993c153e197ac8b96233e95048
        - registry.redhat.io/quay/quay-container-security-operator-rhel8@sha256:42777c988fba76e80157675e5219246994552b7a685319ab67f4cb59c29f3d1f
        version: 3.9.17
      entries:
      - name: container-security-operator.v3.9.17
        version: 3.9.17
      - name: container-security-operator.v3.9.16
        version: 3.9.16
      - name: container-security-operator.v3.9.15
        version: 3.9.15
      - name: container-security-operator.v3.9.14
        version: 3.9.14
      - name: container-security-operator.v3.9.13
        version: 3.9.13
      - name: container-security-operator.v3.9.12
        version: 3.9.12
      - name: container-security-operator.v3.9.11
        version: 3.9.11
      - name: container-security-operator.v3.9.10
        version: 3.9.10
      - name: container-security-operator.v3.9.9
        version: 3.9.9
      - name: container-security-operator.v3.9.8
        version: 3.9.8
      - name: container-security-operator.v3.9.7
        version: 3.9.7
      - name: container-security-operator.v3.9.6
        version: 3.9.6
      - name: container-security-operator.v3.9.5
        version: 3.9.5
      - name: container-security-operator.v3.9.4
        version: 3.9.4
      - name: container-security-operator.v3.9.3
        version: 3.9.3
      - name: container-security-operator.v3.9.2
        version: 3.9.2
      - name: container-security-operator.v3.9.1
        version: 3.9.1
      - name: container-security-operator.v3.9.0
        version: 3.9.0
      name: stable-3.9
    defaultChannel: stable-3.16
    packageName: container-security-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CodeFlare
      provider-url: https://github.com/project-codeflare
    name: codeflare-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: codeflare-operator.v1.16.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: AI/Machine Learning, Big Data
          containerImage: quay.io/project-codeflare/codeflare-operator:v1.16.0
          createdAt: "2025-06-16T10:53:51Z"
          operatorframework.io/suggested-namespace: openshift-operators
          operators.operatorframework.io/builder: operator-sdk-v1.27.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/project-codeflare/codeflare-operator
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: AppWrapper
            name: appwrappers.workload.codeflare.dev
            version: v1beta2
        description: CodeFlare allows you to scale complex pipelines anywhere
        displayName: CodeFlare Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Pipelines
        - Scaling
        - App
        - Jobs
        links:
        - name: Codeflare Operator
          url: https://codeflare.dev/
        maintainers:
        - email: aasthana@redhat.com
          name: Anish Asthana
        - email: kpostlet@redhat.com
          name: Kevin Postlethwait
        - email: meyceoz@redhat.com
          name: Mustafa Eyceoz
        maturity: alpha
        provider:
          name: CodeFlare
          url: https://github.com/project-codeflare
        relatedImages:
        - quay.io/project-codeflare/codeflare-operator:v1.16.0
        - quay.io/community-operator-pipeline-prod/codeflare-operator@sha256:3dbd2b65d7841cc97c37db59ae8aff9991c4d0f0324c4391afd41c4de20c232a
        version: 1.16.0
      entries:
      - name: codeflare-operator.v1.16.0
        version: 1.16.0
      - name: codeflare-operator.v1.15.0
        version: 1.15.0
      - name: codeflare-operator.v1.14.0
        version: 1.14.0
      - name: codeflare-operator.v1.13.0
        version: 1.13.0
      - name: codeflare-operator.v1.12.0
        version: 1.12.0
      - name: codeflare-operator.v1.11.0
        version: 1.11.0
      - name: codeflare-operator.v1.10.0
        version: 1.10.0
      - name: codeflare-operator.v1.9.0
        version: 1.9.0
      - name: codeflare-operator.v1.8.0
        version: 1.8.0
      - name: codeflare-operator.v1.7.0
        version: 1.7.0
      - name: codeflare-operator.v1.6.0
        version: 1.6.0
      - name: codeflare-operator.v1.5.0
        version: 1.5.0
      - name: codeflare-operator.v1.4.4
        version: 1.4.4
      - name: codeflare-operator.v1.4.3
        version: 1.4.3
      - name: codeflare-operator.v1.4.2
        version: 1.4.2
      - name: codeflare-operator.v1.4.1
        version: 1.4.1
      - name: codeflare-operator.v1.4.0
        version: 1.4.0
      - name: codeflare-operator.v1.3.1
        version: 1.3.1
      - name: codeflare-operator.v1.3.0
        version: 1.3.0
      - name: codeflare-operator.v1.2.0
        version: 1.2.0
      - name: codeflare-operator.v1.1.0
        version: 1.1.0
      - name: codeflare-operator.v1.0.1
        version: 1.0.1
      - name: codeflare-operator.v1.0.0
        version: 1.0.0
      - name: codeflare-operator.v1.0.0-rc.4
        version: 1.0.0-rc.4
      - name: codeflare-operator.v1.0.0-rc.3
        version: 1.0.0-rc.3
      - name: codeflare-operator.v1.0.0-rc.2
        version: 1.0.0-rc.2
      - name: codeflare-operator.v1.0.0-rc.1
        version: 1.0.0-rc.1
      - name: codeflare-operator.v0.2.3
        version: 0.2.3
      - name: codeflare-operator.v0.2.2
        version: 0.2.2
      - name: codeflare-operator.v0.2.1
        version: 0.2.1
      - name: codeflare-operator.v0.2.0
        version: 0.2.0
      - name: codeflare-operator.v0.1.0
        version: 0.1.0
      - name: codeflare-operator.v0.0.6
        version: 0.0.6
      - name: codeflare-operator.v0.0.5
        version: 0.0.5
      - name: codeflare-operator.v0.0.4
        version: 0.0.4
      - name: codeflare-operator.v0.0.3
        version: 0.0.3
      - name: codeflare-operator.v0.0.2
        version: 0.0.2
      - name: codeflare-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: codeflare-operator
    provider:
      name: CodeFlare
      url: https://github.com/project-codeflare
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Infinidat
      provider-url: https://infinidat.com
    name: infinibox-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: infinibox-operator-certified.v2.24.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csidriver.infinidat.com/v1alpha1",
                "kind": "InfiniboxCsiDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infinibox-operator-certified",
                    "app.kubernetes.io/instance": "infiniboxcsidriver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infiniboxcsidriver",
                    "app.kubernetes.io/part-of": "infinibox-operator-certified"
                  },
                  "name": "infiniboxcsidriver-sample"
                },
                "spec": {
                  "Ibox_Creds": [
                    {
                      "SecretName": "infinibox-creds",
                      "hostname": "ibox0000",
                      "inbound_secret": "0.0000000000000",
                      "inbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonout",
                      "outbound_secret": "0.0000000000001",
                      "outbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonin",
                      "password": "my-pool-admin-passwd",
                      "username": "my-pool-admin"
                    }
                  ],
                  "Infinibox_Protocol_Secrets": [
                    {
                      "SecretName": "infinibox-protocol-secret",
                      "iscsi": {
                        "network_space": "default_iscsi_space",
                        "useCHAP": "none"
                      },
                      "nfs": {
                        "network_space": "default_nas_space",
                        "nfs_export_permissions": ""
                      },
                      "nvme": {
                        "network_space": "default_nvme_space"
                      },
                      "preferred_auto_order": "fc,nvme,iscsi",
                      "storage_protocol": "fc"
                    }
                  ],
                  "autoUpdate": false,
                  "cleanupNFSPerms": false,
                  "controllerserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "controllerservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "createEvents": true,
                  "csiDriverName": "infinibox-csi-driver",
                  "csiDriverVersion": "v2.24.0",
                  "e2etesting": false,
                  "iboxHostNamingConvention": "",
                  "images": {
                    "attachersidecar": "registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d",
                    "attachersidecar_pull_policy": "IfNotPresent",
                    "csidriver": "registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec",
                    "csidriver_pull_policy": "Always",
                    "livenesssidecar": "registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f",
                    "livenesssidecar_pull_policy": "IfNotPresent",
                    "provisionersidecar": "registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327",
                    "provisionersidecar_pull_policy": "IfNotPresent",
                    "registrarsidecar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a",
                    "registrarsidecar_pull_policy": "IfNotPresent",
                    "resizersidecar": "registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d",
                    "resizersidecar_pull_policy": "IfNotPresent",
                    "snapshottersidecar": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d",
                    "snapshottersidecar_pull_policy": "IfNotPresent"
                  },
                  "instanceCount": 1,
                  "logLevel": "debug",
                  "nodeSelector": {
                    "kubernetes.io/os": "linux"
                  },
                  "nodeserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "nodeservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "protocolSecret": "",
                  "removeDomainName": false,
                  "replicaCount": 1,
                  "skipCredentialsCreation": false,
                  "volumeNamePrefix": "ibox"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
          createdAt: "2025-11-25T20:05:02Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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.skipRange: <2.24.0
          operatorframework.io/suggested-namespace: infinidat-csi
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/Infinidat/infinibox-csi-driver
          support: Infinidat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Iboxreplica
            name: iboxreplicas.csidriver.infinidat.com
            version: v1
          - kind: InfiniboxCsiDriver
            name: infiniboxcsidrivers.csidriver.infinidat.com
            version: v1alpha1
        description: "Infinidat InfiniBox Container Storage Interface (CSI) Driver
          is a\n    CNCF-compliant Kubernetes integration for InfiniBox storage systems,
          offering\n    advanced enterprise functionality for petabyte-scale Kubernetes
          deployments including\n    Red Hat OpenShift.\n \n## Features and Benefits\n
          \ \n* **Multi-protocol flexibility** - manage\n    Kubernetes Persistent
          Volumes attached via block and file protocols,\n    including Fibre Channel,
          iSCSI, and NFS, with all Kubernetes PV access modes\n    \n* **Multi-petabyte
          scalability** - support hundreds of thousands of PVs per InfiniBox\n    system
          and control multiple InfiniBox arrays within a single Kubernetes cluster\n
          \   \\ \n* **Advanced enterprise features** - manage native InfiniBox snapshots
          and\n    clones, including restoring from snapshots, and import PVs created
          outside of\n    InfiniBox CSI Driver\n  \n## Required Parameters\n  \n*
          `hostname` - IP address\n    or hostname of the InfiniBox management interface\n*
          `username` / `password` -\n    InfiniBox credentials\n* `SecretName` - secret
          name, to be used in the StorageClass\n    to define a specific InfiniBox
          for persistent volumes\n\n## Optional Parameters\n*\n    `inbound_user`
          / `inbound_secret` / `outbound_user` / `outbound_secret` - credentials \n
          \   for iSCSI CHAP authentication\n\n    \n## Installation Instructions\n
          \n1. Create *infinidat-csi* namespace to install operator into.\n    \n2.
          Delete the following *clusterrolebindings*, if they exist, before installing
          operator\n     * infinidat-csi-operator-infinidat-csi-attacher\n     * infinidat-csi-operator-infinidat-csi-controller
          \                    \n     * infinidat-csi-operator-infinidat-csi-driver
          \                    \n     * infinidat-csi-operator-infinidat-csi-node
          \                              \n     * infinidat-csi-operator-infinidat-csi-provisioner
          \                       \n     * infinidat-csi-operator-infinidat-csi-resizer
          \          \n     * infinidat-csi-operator-infinidat-csi-snapshotter \n
          \   \n3. Install Infinidat Infinibox CSI Driver - Operator (this) into the
          *infinidat-csi* namespace.\n    \n4. Apply the following Security Context
          Constraints to the created service accounts in the *infinidat-csi* \n    namespace\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    \n5. Recreate or edit any existing storage classes, pointing to the
          new namespace\n\n     \n6. If you choose a different namespace other than
          *infinidat-csi* you will need to edit the clusterrolebindings listed above
          to specify your custom namespace\n\n     \n7. Install an instance of Infinidat
          Driver into the *infinidat-csi* namespace"
        displayName: InfiniBox CSI Driver - Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - csi
        - nas
        - san
        - storage
        - infinidat
        - infinibox
        links:
        - name: Infinidat
          url: https://infinidat.com
        maintainers:
        - email: info@infinidat.com
          name: Infinidat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Infinidat
          url: https://infinidat.com
        relatedImages:
        - registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d
        - registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified@sha256:a6a63241d55cdb63e3072fd7e663f08eca9a46e64d73ff7159eafd48f92c2db0
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d
        - registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327
        - registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified-bundle@sha256:0eb6e7e06e18d83e4ddbd4fee4db440c5eb3552821954c1485b280f47ce4a743
        version: 2.24.0
      entries:
      - name: infinibox-operator-certified.v2.24.0
        version: 2.24.0
      name: alpha
    - currentCSV: infinibox-operator-certified.v2.24.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "csidriver.infinidat.com/v1alpha1",
                "kind": "InfiniboxCsiDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "infinibox-operator-certified",
                    "app.kubernetes.io/instance": "infiniboxcsidriver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "infiniboxcsidriver",
                    "app.kubernetes.io/part-of": "infinibox-operator-certified"
                  },
                  "name": "infiniboxcsidriver-sample"
                },
                "spec": {
                  "Ibox_Creds": [
                    {
                      "SecretName": "infinibox-creds",
                      "hostname": "ibox0000",
                      "inbound_secret": "0.0000000000000",
                      "inbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonout",
                      "outbound_secret": "0.0000000000001",
                      "outbound_user": "iqn.2020-06.com.csi-driver-iscsi.infinidat:commonin",
                      "password": "my-pool-admin-passwd",
                      "username": "my-pool-admin"
                    }
                  ],
                  "Infinibox_Protocol_Secrets": [
                    {
                      "SecretName": "infinibox-protocol-secret",
                      "iscsi": {
                        "network_space": "default_iscsi_space",
                        "useCHAP": "none"
                      },
                      "nfs": {
                        "network_space": "default_nas_space",
                        "nfs_export_permissions": ""
                      },
                      "nvme": {
                        "network_space": "default_nvme_space"
                      },
                      "preferred_auto_order": "fc,nvme,iscsi",
                      "storage_protocol": "fc"
                    }
                  ],
                  "autoUpdate": false,
                  "cleanupNFSPerms": false,
                  "controllerserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "controllerservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "createEvents": true,
                  "csiDriverName": "infinibox-csi-driver",
                  "csiDriverVersion": "v2.24.0",
                  "e2etesting": false,
                  "iboxHostNamingConvention": "",
                  "images": {
                    "attachersidecar": "registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d",
                    "attachersidecar_pull_policy": "IfNotPresent",
                    "csidriver": "registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec",
                    "csidriver_pull_policy": "Always",
                    "livenesssidecar": "registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f",
                    "livenesssidecar_pull_policy": "IfNotPresent",
                    "provisionersidecar": "registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327",
                    "provisionersidecar_pull_policy": "IfNotPresent",
                    "registrarsidecar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a",
                    "registrarsidecar_pull_policy": "IfNotPresent",
                    "resizersidecar": "registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d",
                    "resizersidecar_pull_policy": "IfNotPresent",
                    "snapshottersidecar": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d",
                    "snapshottersidecar_pull_policy": "IfNotPresent"
                  },
                  "instanceCount": 1,
                  "logLevel": "debug",
                  "nodeSelector": {
                    "kubernetes.io/os": "linux"
                  },
                  "nodeserverresources": {
                    "limits": {
                      "cpu": "0.5",
                      "memory": "450Mi"
                    },
                    "requests": {
                      "cpu": "0.1",
                      "memory": "150Mi"
                    }
                  },
                  "nodeservertolerations": [
                    {
                      "effect": "",
                      "key": "",
                      "operator": "Exists",
                      "tolerationSeconds": 0,
                      "value": ""
                    }
                  ],
                  "protocolSecret": "",
                  "removeDomainName": false,
                  "replicaCount": 1,
                  "skipCredentialsCreation": false,
                  "volumeNamePrefix": "ibox"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
          createdAt: "2025-11-25T20:05:02Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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.skipRange: <2.24.0
          operatorframework.io/suggested-namespace: infinidat-csi
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/Infinidat/infinibox-csi-driver
          support: Infinidat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Iboxreplica
            name: iboxreplicas.csidriver.infinidat.com
            version: v1
          - kind: InfiniboxCsiDriver
            name: infiniboxcsidrivers.csidriver.infinidat.com
            version: v1alpha1
        description: "Infinidat InfiniBox Container Storage Interface (CSI) Driver
          is a\n    CNCF-compliant Kubernetes integration for InfiniBox storage systems,
          offering\n    advanced enterprise functionality for petabyte-scale Kubernetes
          deployments including\n    Red Hat OpenShift.\n \n## Features and Benefits\n
          \ \n* **Multi-protocol flexibility** - manage\n    Kubernetes Persistent
          Volumes attached via block and file protocols,\n    including Fibre Channel,
          iSCSI, and NFS, with all Kubernetes PV access modes\n    \n* **Multi-petabyte
          scalability** - support hundreds of thousands of PVs per InfiniBox\n    system
          and control multiple InfiniBox arrays within a single Kubernetes cluster\n
          \   \\ \n* **Advanced enterprise features** - manage native InfiniBox snapshots
          and\n    clones, including restoring from snapshots, and import PVs created
          outside of\n    InfiniBox CSI Driver\n  \n## Required Parameters\n  \n*
          `hostname` - IP address\n    or hostname of the InfiniBox management interface\n*
          `username` / `password` -\n    InfiniBox credentials\n* `SecretName` - secret
          name, to be used in the StorageClass\n    to define a specific InfiniBox
          for persistent volumes\n\n## Optional Parameters\n*\n    `inbound_user`
          / `inbound_secret` / `outbound_user` / `outbound_secret` - credentials \n
          \   for iSCSI CHAP authentication\n\n    \n## Installation Instructions\n
          \n1. Create *infinidat-csi* namespace to install operator into.\n    \n2.
          Delete the following *clusterrolebindings*, if they exist, before installing
          operator\n     * infinidat-csi-operator-infinidat-csi-attacher\n     * infinidat-csi-operator-infinidat-csi-controller
          \                    \n     * infinidat-csi-operator-infinidat-csi-driver
          \                    \n     * infinidat-csi-operator-infinidat-csi-node
          \                              \n     * infinidat-csi-operator-infinidat-csi-provisioner
          \                       \n     * infinidat-csi-operator-infinidat-csi-resizer
          \          \n     * infinidat-csi-operator-infinidat-csi-snapshotter \n
          \   \n3. Install Infinidat Infinibox CSI Driver - Operator (this) into the
          *infinidat-csi* namespace.\n    \n4. Apply the following Security Context
          Constraints to the created service accounts in the *infinidat-csi* \n    namespace\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user privileged -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user anyuid -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-controller-manager\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-driver\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-node\n\n
          \    * oc adm policy add-scc-to-user hostnetwork -z infinidat-csi-operator-infinidat-csi-controller\n\n
          \    \n5. Recreate or edit any existing storage classes, pointing to the
          new namespace\n\n     \n6. If you choose a different namespace other than
          *infinidat-csi* you will need to edit the clusterrolebindings listed above
          to specify your custom namespace\n\n     \n7. Install an instance of Infinidat
          Driver into the *infinidat-csi* namespace"
        displayName: InfiniBox CSI Driver - Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - csi
        - nas
        - san
        - storage
        - infinidat
        - infinibox
        links:
        - name: Infinidat
          url: https://infinidat.com
        maintainers:
        - email: info@infinidat.com
          name: Infinidat
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Infinidat
          url: https://infinidat.com
        relatedImages:
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified-bundle@sha256:0eb6e7e06e18d83e4ddbd4fee4db440c5eb3552821954c1485b280f47ce4a743
        - registry.k8s.io/sig-storage/csi-attacher@sha256:be59d0556508d3dd419cc34c53062f170a28902ef36e832b947c7796458a083d
        - registry.k8s.io/sig-storage/csi-resizer@sha256:4a95d94e57ad82f6977cd8d4fdcfcfc0b83f02d990e4e7715b688c20970a906d
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:0c537015fe9cf9d53d79d0181e17a78ee784303cd46bf957016605488f212327
        - registry.connect.redhat.com/infinidat/infinibox-operator-certified@sha256:a6a63241d55cdb63e3072fd7e663f08eca9a46e64d73ff7159eafd48f92c2db0
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a
        - registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f
        - registry.connect.redhat.com/infinidat/infinibox-csidriver-certified@sha256:e8b05d9c9ac5b6f59705de64d5d7764d297f33d8437617ae07985fd298870dec
        version: 2.24.0
      entries:
      - name: infinibox-operator-certified.v2.24.0
        version: 2.24.0
      name: stable
    defaultChannel: stable
    packageName: infinibox-operator-certified
    provider:
      name: Infinidat
      url: https://infinidat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/instance: ibm-data-reporter-operator
      app.kubernetes.io/managed-by: ibm-data-reporter-operator
      app.kubernetes.io/name: ibm-data-reporter-operator
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Marketplace
      provider-url: ""
    name: ibm-data-reporter-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-data-reporter-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "DataReporterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ibm-data-reporter-operator",
                    "app.kubernetes.io/instance": "datareporterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datareporterconfig",
                    "app.kubernetes.io/part-of": "ibm-data-reporter-operator"
                  },
                  "name": "datareporterconfig"
                },
                "spec": {
                  "userConfig": [
                    {
                      "metadata": {
                        "ameta1": "ametadata1",
                        "bmeta1": "bmetadata1",
                        "cmeta1": "cmetadata1",
                        "dmeta1": "dmetadata1"
                      },
                      "userName": "system:serviceaccount:redhat-marketplace:ibm-data-reporter-operator-api"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
          createdAt: ""
          description: The IBM Data Reporter Operator accepts events and transforms
            them into reports submitted to the Data Service of the IBM Metrics Operator.
          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: "true"
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReporterConfig is the Schema for the datareporterconfigs
              API
            displayName: Data Reporter Config
            kind: DataReporterConfig
            name: datareporterconfigs.marketplace.redhat.com
            version: v1alpha1
          required:
          - description: MarketplaceConfig is configuration manager for our Red Hat
              Marketplace controllers By installing this product you accept the license
              terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
        description: "# IBM Data Reporter Operator\n\n# Introduction\n\nThe IBM Data
          Reporter Operator accepts events and transforms them into reports submitted
          to the IBM Metrics Operator Data Service.\n\n# Details\n\nThe IBM Data Reporter
          Operator deploys a service that provides an endpoint to which callers can
          send raw json event data. The event data is transformed into a report and
          is sent to the IBM Metrics Operator's Data Service. The IBM Metrics Operator
          Data Service periodically uploads the reports to IBM Software Central. It
          can also filter, transform and forward events to alternate endpoints.\n\n##
          Prerequisites\n\n- OpenShift Container Platform, major version 4 with any
          available supported minor version\n- Install IBM Metrics Operator\n  - IBM
          Data Reporter Operator prerequisties the IBM Metrics Operator's Data Service\n
          \ - Register the Cluster by creating a `redhat-marketplace-pull-secret`,
          as per the instructions\n  - Once `rhm-data-service` has started IBM Data
          Reporter Operator will accept requests\n\n## SecurityContextConstraints
          Requirements\n\n- The operator runs under Red Hat restricted SCC\n\n## Kyverno
          Policies\n\nThe IBM Data Reporter Operator makes a best effort to comply
          with the Kyverno policies defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Data Reporter Operator is not replicated\n  - Service uptime is not
          considered critial, and can be rescheduled\n\n## Resources Required\n\n-
          The operator requires at least 85 Mi memory.\n\n## Limitations\n\n- Only
          runs on amd64, s390x and ppc64le architectures\n\n## Installing\n\n- A user
          with the cluster administrator role.\n- Install this operator in the same
          namespace as the IBM Metrics Operator\n  - default namespace: `ibm-software-central`\n\n##
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n# Configuration\n\nOptional:\n- Configure the
          Custom Resource Definition `DataReporterConfig` named `datareporterconfig`
          as per the following sample\n  - Configuration that can not be reconciled
          successfully will be reported on the DataReporterConfig Status\n  - jsonPath
          expressions are handled by: https://github.com/ohler55/ojg\n    - jsonPath
          comparison: https://cburgmer.github.io/json-path-comparison/\n  - Transformer
          type currently supported is `kazaam`\n    - https://github.com/willie68/kazaam\n\nSample
          DataReporterConfig:\n```YAML\napiVersion: marketplace.redhat.com/v1alpha1\nkind:
          DataReporterConfig\nmetadata:\n  name: datareporterconfig\nspec:\n  # true:
          report generated for 1 event and provide return code from data-service,
          confirming delivery\n  # false: events will be accumulated before building
          report, and immediately return 200, delivery unfconfirmed\n  confirmDelivery:
          false\n  dataFilters:   # dataFilters matches the first dataFilter selector,
          applies transforms and forwards to data-service and destinations\n  - altDestinations:
          \  # List of desintations to transform and foward events to\n    - authorization:
          \  # optional endpoint if an authorization token must first be requested
          \n        authDestHeader: Authorization   # http header key to be appended
          to destination request\n        authDestHeaderPrefix: 'Bearer '   # optional
          prefix for constructing destination request http header value\n        bodyData:
          \  # body data to send to authorization request, often an apiKey\n          secretKeyRef:\n
          \           name: auth-body-data-secret\n            key: bodydata\n        header:
          \  # secret map to use for authorization request headers\n          secret:\n
          \           name: auth-header-map-secret\n        tokenExpr: $.token   #
          optionally extract the returned body data using a jsonPath expression\n
          \       url: https://127.0.0.1:8443/api/2.0/accounts/my_account_id/apikeys/token
          \  # the url to make an authorization request to\n      header:   # secret
          map to use for destination request headers\n        secret:\n          name:
          dest-header-map-secret\n      transformer:   # The transformer to apply
          to event data for this destination\n        configMapKeyRef:\n          key:
          kazaam.json\n          name: kazaam-configmap\n        type: kazaam\n      url:
          https://127.0.0.1:8443/metering/api/1.0/usage   # the url to send the event
          to\n      urlSuffixExpr: $.properties.productId   # optional jsonPath expression
          on the event to extract and set a suffix to the url path\n    manifestType:
          dataReporter   # override manifestType of report sent to data-service\n
          \   selector:   # Matches against event data and a user. Empty selector
          matches all.\n      matchExpressions:   # jsonPath expression must return
          a result for all expressions to match (AND)\n      - $[?($.event == \"Account
          Contractual Usage\")]\n      - $.properties.productId\n      - $[?($.properties.source
          != null)]\n      - $[?($.properties.unit == \"AppPoints\")]\n      - $[?($.properties.quantity
          >= 0)]\n      - $[?($.timestamp != null)]\n      matchUsers:   # must match
          one of these users (OR). Omitting users matches any user\n      - system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n
          \   transformer:   # The transformer to apply to the event for data-service\n
          \     configMapKeyRef:\n        key: kazaam.json\n        name: kazaam-configmap\n
          \     type: kazaam\n  tlsConfig:   # TLS configuration for requests outbound
          to destinations\n    caCerts:\n    - name: tls-ca-certificates\n      key:
          ca.crt\n    certificates:\n    - clientCert:\n        secretKeyRef:\n          name:
          tls-ca-certificates\n          key: tls.crt\n      clientKey:\n        secretKeyRef:\n
          \         name: tls-ca-certificates\n          key: tls.key\n    cipherSuites:
          \n    - TLS_AES_128_GCM_SHA256\n    - TLS_AES_256_GCM_SHA384\n    - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256\n    - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384\n    insecureSkipVerify: false\n
          \   minVersion: VersionTLS12\n  userConfig:   # Optional metadata to apply
          to report sent to data-service for a specific user\n  - metadata:\n      ameta1:
          ametadata1\n      bmeta1: bmetadata1\n      cmeta1: cmetadata1\n      dmeta1:
          dmetadata1\n    userName: system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n```\n\nSample
          Header Secrets:\n```YAML\napiVersion: v1\nstringData:\n  accept: | \n    */*\nkind:
          Secret\nmetadata:\n  name: dest-header-map-secret\ntype: Opaque\n---\napiVersion:
          v1\nstringData:\n  accept: application/json\n  Content-Type: application/json\nkind:
          Secret\nmetadata:\n  name: auth-header-map-secret\ntype: Opaque\n```\n\nSample
          Authentication Body Secret:\n```YAML\napiVersion: v1\nstringData:\n  bodydata:
          |\n    {\"apikey\": \"myapikey\"}\nkind: Secret\nmetadata:\n  name: auth-body-data-secret\ntype:
          Opaque\n```\n\nSample TLS Secret:\n```YAML\napiVersion: v1\ndata:\n  ca.crt:
          LS0t...\n  tls.key: LS0t...\n  tls.crt: LS0t...\nkind: Secret\nmetadata:\n
          \ name: tls-ca-certificates\n```\n\nSample Kazaam ConfigMap:\n```YAML\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: kazaam-configmap\ndata:\n  kazaam.json:
          |\n    [\n        {\n            \"operation\": \"timestamp\",\n            \"spec\":
          {\n                \"timestamp\": {\n                \"inputFormat\": \"2006-01-02T15:04:05.999999+00:00\",\n
          \               \"outputFormat\": \"$unixmilli\"\n                }\n            }\n
          \       },\n        {\n            \"operation\": \"shift\",\n            \"spec\":
          {\n                \"instances[0].instanceId\": \"properties.source\",\n
          \               \"instances[0].startTime\": \"timestamp\",\n                \"instances[0].endTime\":
          \"timestamp\",\n                \"instances[0].metricUsage[0].metricId\":
          \"properties.unit\",\n                \"instances[0].metricUsage[0].quantity\":
          \"properties.quantity\"\n            }\n        },\n        {\n            \"operation\":
          \"default\",\n            \"spec\": {\n                \"meteringModel\":
          \"point-in-time\",\n                \"meteringPlan\": \"contract\"\n            }\n
          \       }\n    ]\n```\n\n### API Service User Configuration\n\n- The ClusterRole
          for api access is `clusterrole/ibm-data-reporter-operator-api`\n- The default
          ServiceAccount provided as an api user is `system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api`\n
          \ - The default ClusterRoleBinding for this user is `clusterrolebinding/ibm-data-reporter-operator-api`\n\nOptional:\n\n-
          To create an additional ServiceAccount and ClusterRoleBinding for api access\n\n```SHELL\nNAMESPACE=$(oc
          config view --minify -o jsonpath='{..namespace}') && \\\noc create serviceaccount
          my-api-service-account && \\\noc create clusterrolebinding ibm-data-reporter-operator-api
          --clusterrole=ibm-data-reporter-operator-api --serviceaccount=${NAMESPACE}:my-api-service-account\n```\n\n-
          Update datareporterconfig to attach metadata to reports associated with
          this user\n\n## API Service Usage\n\n- Get Token & Host\n\n```SHELL\noc
          project ibm-software-central\nexport DRTOKEN=$(oc create token ibm-data-reporter-operator-api
          --namespace ibm-software-central --duration 1h)\nexport DRHOST=$(oc get
          route ibm-data-reporter --template='{{ .spec.host }}')\n```\n\n- Get the
          Status\n\n```SHELL\ncurl -k -H \"Authorization: Bearer ${DRTOKEN}\" https://${DRHOST}/v1/status
          \n```\n\n- Post an Event\n\n```SHELL\ncurl -k -H \"Authorization: Bearer
          ${DRTOKEN}\" -X POST -d '{\"event\":\"myevent\"}' https://${DRHOST}/v1/event\n```\n\n##
          Storage\n\n- The operator temporarily stores events in pod memory, and writes
          to the IBM Metrics Operator data-service, which requires a PersistentVolume\n\n##
          License\n\nCopyright IBM Corporation 2023. All Rights Reserved.\n\nLicensed
          under the Apache License, Version 2.0 (the \"License\");\nyou may not use
          this file except in compliance with the License.\nYou may obtain a copy
          of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless
          required by applicable law or agreed to in writing, software\ndistributed
          under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES
          OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for
          the specific language governing permissions and\nlimitations under the License.\n"
        displayName: IBM Data Reporter Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
        - registry.connect.redhat.com/rh-marketplace/ibm-data-reporter-operator-bundle@sha256:20ee4c5cb1e904dfcbaf678a3a258840ea3d19350f812257944db361ab92009d
        version: 2.23.1
      entries:
      - name: ibm-data-reporter-operator.v2.23.1
        version: 2.23.1
      name: beta
    - currentCSV: ibm-data-reporter-operator.v2.23.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "marketplace.redhat.com/v1alpha1",
                "kind": "DataReporterConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ibm-data-reporter-operator",
                    "app.kubernetes.io/instance": "datareporterconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datareporterconfig",
                    "app.kubernetes.io/part-of": "ibm-data-reporter-operator"
                  },
                  "name": "datareporterconfig"
                },
                "spec": {
                  "userConfig": [
                    {
                      "metadata": {
                        "ameta1": "ametadata1",
                        "bmeta1": "bmetadata1",
                        "cmeta1": "cmetadata1",
                        "dmeta1": "dmetadata1"
                      },
                      "userName": "system:serviceaccount:redhat-marketplace:ibm-data-reporter-operator-api"
                    }
                  ]
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          certified: "true"
          containerImage: quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
          createdAt: ""
          description: The IBM Data Reporter Operator accepts events and transforms
            them into reports submitted to the Data Service of the IBM Metrics Operator.
          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: "true"
          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.skipRange: '>=1.0.0 <2.23.1'
          operatorframework.io/suggested-namespace: ibm-software-central
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/redhat-marketplace/redhat-marketplace-operator
          support: IBM Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataReporterConfig is the Schema for the datareporterconfigs
              API
            displayName: Data Reporter Config
            kind: DataReporterConfig
            name: datareporterconfigs.marketplace.redhat.com
            version: v1alpha1
          required:
          - description: MarketplaceConfig is configuration manager for our Red Hat
              Marketplace controllers By installing this product you accept the license
              terms https://ibm.biz/BdfaAY.
            displayName: Marketplace Config
            kind: MarketplaceConfig
            name: marketplaceconfigs.marketplace.redhat.com
            version: v1alpha1
        description: "# IBM Data Reporter Operator\n\n# Introduction\n\nThe IBM Data
          Reporter Operator accepts events and transforms them into reports submitted
          to the IBM Metrics Operator Data Service.\n\n# Details\n\nThe IBM Data Reporter
          Operator deploys a service that provides an endpoint to which callers can
          send raw json event data. The event data is transformed into a report and
          is sent to the IBM Metrics Operator's Data Service. The IBM Metrics Operator
          Data Service periodically uploads the reports to IBM Software Central. It
          can also filter, transform and forward events to alternate endpoints.\n\n##
          Prerequisites\n\n- OpenShift Container Platform, major version 4 with any
          available supported minor version\n- Install IBM Metrics Operator\n  - IBM
          Data Reporter Operator prerequisties the IBM Metrics Operator's Data Service\n
          \ - Register the Cluster by creating a `redhat-marketplace-pull-secret`,
          as per the instructions\n  - Once `rhm-data-service` has started IBM Data
          Reporter Operator will accept requests\n\n## SecurityContextConstraints
          Requirements\n\n- The operator runs under Red Hat restricted SCC\n\n## Kyverno
          Policies\n\nThe IBM Data Reporter Operator makes a best effort to comply
          with the Kyverno policies defined by [IBM MAS](https://github.com/ibm-mas/kyverno-policies)\n\nExceptions:\n-
          IBM Data Reporter Operator is not replicated\n  - Service uptime is not
          considered critial, and can be rescheduled\n\n## Resources Required\n\n-
          The operator requires at least 85 Mi memory.\n\n## Limitations\n\n- Only
          runs on amd64, s390x and ppc64le architectures\n\n## Installing\n\n- A user
          with the cluster administrator role.\n- Install this operator in the same
          namespace as the IBM Metrics Operator\n  - default namespace: `ibm-software-central`\n\n##
          Upgrade Policy\n\nThe operator releases adhere to semantic versioning and
          provides a seamless upgrade path for minor and patch releases within the
          current stable channel.\n\n# Configuration\n\nOptional:\n- Configure the
          Custom Resource Definition `DataReporterConfig` named `datareporterconfig`
          as per the following sample\n  - Configuration that can not be reconciled
          successfully will be reported on the DataReporterConfig Status\n  - jsonPath
          expressions are handled by: https://github.com/ohler55/ojg\n    - jsonPath
          comparison: https://cburgmer.github.io/json-path-comparison/\n  - Transformer
          type currently supported is `kazaam`\n    - https://github.com/willie68/kazaam\n\nSample
          DataReporterConfig:\n```YAML\napiVersion: marketplace.redhat.com/v1alpha1\nkind:
          DataReporterConfig\nmetadata:\n  name: datareporterconfig\nspec:\n  # true:
          report generated for 1 event and provide return code from data-service,
          confirming delivery\n  # false: events will be accumulated before building
          report, and immediately return 200, delivery unfconfirmed\n  confirmDelivery:
          false\n  dataFilters:   # dataFilters matches the first dataFilter selector,
          applies transforms and forwards to data-service and destinations\n  - altDestinations:
          \  # List of desintations to transform and foward events to\n    - authorization:
          \  # optional endpoint if an authorization token must first be requested
          \n        authDestHeader: Authorization   # http header key to be appended
          to destination request\n        authDestHeaderPrefix: 'Bearer '   # optional
          prefix for constructing destination request http header value\n        bodyData:
          \  # body data to send to authorization request, often an apiKey\n          secretKeyRef:\n
          \           name: auth-body-data-secret\n            key: bodydata\n        header:
          \  # secret map to use for authorization request headers\n          secret:\n
          \           name: auth-header-map-secret\n        tokenExpr: $.token   #
          optionally extract the returned body data using a jsonPath expression\n
          \       url: https://127.0.0.1:8443/api/2.0/accounts/my_account_id/apikeys/token
          \  # the url to make an authorization request to\n      header:   # secret
          map to use for destination request headers\n        secret:\n          name:
          dest-header-map-secret\n      transformer:   # The transformer to apply
          to event data for this destination\n        configMapKeyRef:\n          key:
          kazaam.json\n          name: kazaam-configmap\n        type: kazaam\n      url:
          https://127.0.0.1:8443/metering/api/1.0/usage   # the url to send the event
          to\n      urlSuffixExpr: $.properties.productId   # optional jsonPath expression
          on the event to extract and set a suffix to the url path\n    manifestType:
          dataReporter   # override manifestType of report sent to data-service\n
          \   selector:   # Matches against event data and a user. Empty selector
          matches all.\n      matchExpressions:   # jsonPath expression must return
          a result for all expressions to match (AND)\n      - $[?($.event == \"Account
          Contractual Usage\")]\n      - $.properties.productId\n      - $[?($.properties.source
          != null)]\n      - $[?($.properties.unit == \"AppPoints\")]\n      - $[?($.properties.quantity
          >= 0)]\n      - $[?($.timestamp != null)]\n      matchUsers:   # must match
          one of these users (OR). Omitting users matches any user\n      - system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n
          \   transformer:   # The transformer to apply to the event for data-service\n
          \     configMapKeyRef:\n        key: kazaam.json\n        name: kazaam-configmap\n
          \     type: kazaam\n  tlsConfig:   # TLS configuration for requests outbound
          to destinations\n    caCerts:\n    - name: tls-ca-certificates\n      key:
          ca.crt\n    certificates:\n    - clientCert:\n        secretKeyRef:\n          name:
          tls-ca-certificates\n          key: tls.crt\n      clientKey:\n        secretKeyRef:\n
          \         name: tls-ca-certificates\n          key: tls.key\n    cipherSuites:
          \n    - TLS_AES_128_GCM_SHA256\n    - TLS_AES_256_GCM_SHA384\n    - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256\n    - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384\n
          \   - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384\n    insecureSkipVerify: false\n
          \   minVersion: VersionTLS12\n  userConfig:   # Optional metadata to apply
          to report sent to data-service for a specific user\n  - metadata:\n      ameta1:
          ametadata1\n      bmeta1: bmetadata1\n      cmeta1: cmetadata1\n      dmeta1:
          dmetadata1\n    userName: system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api\n```\n\nSample
          Header Secrets:\n```YAML\napiVersion: v1\nstringData:\n  accept: | \n    */*\nkind:
          Secret\nmetadata:\n  name: dest-header-map-secret\ntype: Opaque\n---\napiVersion:
          v1\nstringData:\n  accept: application/json\n  Content-Type: application/json\nkind:
          Secret\nmetadata:\n  name: auth-header-map-secret\ntype: Opaque\n```\n\nSample
          Authentication Body Secret:\n```YAML\napiVersion: v1\nstringData:\n  bodydata:
          |\n    {\"apikey\": \"myapikey\"}\nkind: Secret\nmetadata:\n  name: auth-body-data-secret\ntype:
          Opaque\n```\n\nSample TLS Secret:\n```YAML\napiVersion: v1\ndata:\n  ca.crt:
          LS0t...\n  tls.key: LS0t...\n  tls.crt: LS0t...\nkind: Secret\nmetadata:\n
          \ name: tls-ca-certificates\n```\n\nSample Kazaam ConfigMap:\n```YAML\napiVersion:
          v1\nkind: ConfigMap\nmetadata:\n  name: kazaam-configmap\ndata:\n  kazaam.json:
          |\n    [\n        {\n            \"operation\": \"timestamp\",\n            \"spec\":
          {\n                \"timestamp\": {\n                \"inputFormat\": \"2006-01-02T15:04:05.999999+00:00\",\n
          \               \"outputFormat\": \"$unixmilli\"\n                }\n            }\n
          \       },\n        {\n            \"operation\": \"shift\",\n            \"spec\":
          {\n                \"instances[0].instanceId\": \"properties.source\",\n
          \               \"instances[0].startTime\": \"timestamp\",\n                \"instances[0].endTime\":
          \"timestamp\",\n                \"instances[0].metricUsage[0].metricId\":
          \"properties.unit\",\n                \"instances[0].metricUsage[0].quantity\":
          \"properties.quantity\"\n            }\n        },\n        {\n            \"operation\":
          \"default\",\n            \"spec\": {\n                \"meteringModel\":
          \"point-in-time\",\n                \"meteringPlan\": \"contract\"\n            }\n
          \       }\n    ]\n```\n\n### API Service User Configuration\n\n- The ClusterRole
          for api access is `clusterrole/ibm-data-reporter-operator-api`\n- The default
          ServiceAccount provided as an api user is `system:serviceaccount:ibm-software-central:ibm-data-reporter-operator-api`\n
          \ - The default ClusterRoleBinding for this user is `clusterrolebinding/ibm-data-reporter-operator-api`\n\nOptional:\n\n-
          To create an additional ServiceAccount and ClusterRoleBinding for api access\n\n```SHELL\nNAMESPACE=$(oc
          config view --minify -o jsonpath='{..namespace}') && \\\noc create serviceaccount
          my-api-service-account && \\\noc create clusterrolebinding ibm-data-reporter-operator-api
          --clusterrole=ibm-data-reporter-operator-api --serviceaccount=${NAMESPACE}:my-api-service-account\n```\n\n-
          Update datareporterconfig to attach metadata to reports associated with
          this user\n\n## API Service Usage\n\n- Get Token & Host\n\n```SHELL\noc
          project ibm-software-central\nexport DRTOKEN=$(oc create token ibm-data-reporter-operator-api
          --namespace ibm-software-central --duration 1h)\nexport DRHOST=$(oc get
          route ibm-data-reporter --template='{{ .spec.host }}')\n```\n\n- Get the
          Status\n\n```SHELL\ncurl -k -H \"Authorization: Bearer ${DRTOKEN}\" https://${DRHOST}/v1/status
          \n```\n\n- Post an Event\n\n```SHELL\ncurl -k -H \"Authorization: Bearer
          ${DRTOKEN}\" -X POST -d '{\"event\":\"myevent\"}' https://${DRHOST}/v1/event\n```\n\n##
          Storage\n\n- The operator temporarily stores events in pod memory, and writes
          to the IBM Metrics Operator data-service, which requires a PersistentVolume\n\n##
          License\n\nCopyright IBM Corporation 2023. All Rights Reserved.\n\nLicensed
          under the Apache License, Version 2.0 (the \"License\");\nyou may not use
          this file except in compliance with the License.\nYou may obtain a copy
          of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless
          required by applicable law or agreed to in writing, software\ndistributed
          under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES
          OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for
          the specific language governing permissions and\nlimitations under the License.\n"
        displayName: IBM Data Reporter Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - red hat marketplace
        - operators
        links:
        - name: Visit the marketplace!
          url: https://marketplace.redhat.com
        - name: About
          url: https://marketplace.redhat.com/en-us/about
        - name: Support
          url: https://marketplace.redhat.com/en-us/support
        maintainers:
        - email: rhmoper@us.ibm.com
          name: RHM Operator Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat Marketplace
        relatedImages:
        - quay.io/rh-marketplace/ibm-data-reporter-operator@sha256:6e4e7016610b263cf67eac860b5083db4d2f817a3aeef1181d49aa0d712f2c9b
        - registry.connect.redhat.com/rh-marketplace/ibm-data-reporter-operator-bundle@sha256:20ee4c5cb1e904dfcbaf678a3a258840ea3d19350f812257944db361ab92009d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        version: 2.23.1
      entries:
      - name: ibm-data-reporter-operator.v2.23.1
        version: 2.23.1
      name: stable
    defaultChannel: stable
    packageName: ibm-data-reporter-operator
    provider:
      name: Red Hat Marketplace
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: hyperfoil-bundle
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hyperfoil-operator.v0.26.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hyperfoil.io/v1alpha2",
                "kind": "Hyperfoil",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "hyperfoil-operator",
                    "app.kubernetes.io/instance": "hyperfoil-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hyperfoil",
                    "app.kubernetes.io/part-of": "hyperfoil-operator"
                  },
                  "name": "hyperfoil-sample"
                },
                "spec": {
                  "version": "latest"
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: quay.io/hyperfoil/hyperfoil-operator:0.26.0
          createdAt: "2024-06-11T17:39:20Z"
          description: Microservice-oriented distributed benchmark framework.
          operators.operatorframework.io/builder: operator-sdk-v1.34.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/Hyperfoil/hyperfoil-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Hyperfoil is the Schema for the hyperfoils API
            displayName: Hyperfoil
            kind: Hyperfoil
            name: hyperfoils.hyperfoil.io
            version: v1alpha2
        description: |
          Hyperfoil is a modern benchmark framework oriented promising
          accurate results with more flexibility and distributed architecture.

          See more on [hyperfoil.io](http://hyperfoil.io).

          Hyperfoil is licensed under Apache License 2.0
        displayName: Hyperfoil
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hyperfoil
        - benchmark
        - test
        - load
        - driver
        links:
        - name: Website
          url: http://hyperfoil.io
        - name: GitHub
          url: http://github.com/Hyperfoil
        maintainers:
        - email: rvansa@redhat.com
          name: Radim Vansa
        - email: spederse@redhat.com
          name: Ståle W. Pedersen
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0
        - quay.io/community-operator-pipeline-prod/hyperfoil-bundle@sha256:1d3625d12d95deb4f48660459fd0fc8b250b52b46d68136927d0f12465aaadf1
        - quay.io/hyperfoil/hyperfoil-operator:0.26.0
        version: 0.26.0
      entries:
      - name: hyperfoil-operator.v0.26.0
        version: 0.26.0
      - name: hyperfoil-operator.v0.24.2
        version: 0.24.2
      - name: hyperfoil-operator.v0.21.0
        version: 0.21.0
      - name: hyperfoil-operator.v0.15.1
        version: 0.15.1
      - name: hyperfoil-operator.v0.15.0
        version: 0.15.0
      name: alpha
    defaultChannel: alpha
    packageName: hyperfoil-bundle
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Apicurio
      provider-url: ""
    name: apicurio-registry-3
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: apicurio-registry-3.v3.1.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "registry.apicur.io/v1",
                "kind": "ApicurioRegistry3",
                "metadata": {
                  "name": "simple"
                },
                "spec": {
                  "app": {
                    "ingress": {
                      "host": "simple-app.apps.cluster.example"
                    }
                  },
                  "ui": {
                    "ingress": {
                      "host": "simple-ui.apps.cluster.example"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Streaming & Messaging
          certified: "false"
          containerImage: quay.io/apicurio/apicurio-registry-3-operator:3.1.6
          createdAt: "2025-12-19T17:56:46Z"
          description: Deploy and manage Apicurio Registry 3 on Kubernetes.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/infrastructure-features: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/Apicurio/apicurio-registry/tree/main/operator
          support: Apicurio
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ApicurioRegistry3 represents an instance of Apicurio Registry
              version 3.
            displayName: Apicurio Registry 3
            kind: ApicurioRegistry3
            name: apicurioregistries3.registry.apicur.io
            version: v1
        description: |
          ## Apicurio Registry 3

          Apicurio Registry stores and retrieves API designs and event schemas,
          and gives you control of their evolution.

          **Features**
          - Supports: Apache Avro, AsyncAPI, GraphQL, JSON Schema, Kafka Connect Schema, OpenAPI, Protobuf
          - Allows you manage event schemas and API designs using the Apicurio Registry web console, REST API, Maven plug-in, or Java client
          - Includes Serializers and Deserializers for Kafka client integration
          - Configurable rules to control schema validity and evolution (compatibility)
          - Storage options: Kafka, PostgreSQL, MySQL, SQL Server, in-memory
          - Compatible with Confluent APIs
          - Runs on a lightweight Quarkus platform

          ## Apicurio Registry 3 Operator

          Provides a quick and easy way to deploy and manage Apicurio Registry 3 on Kubernetes.

          **Features**
          - Supports installation and configuration of Apicurio Registry 3
          - Perform a rolling upgrade of Apicurio Registry 3

          ## Prerequisites

          This operator does not deploy storage for Apicurio Registry 3. Therefore, some storage options require that the chosen persistence service is already set up.

          ## License

          Apicurio Registry 3 and Apicurio Registry 3 Operator are licensed under the [Apache 2.0 license](https://github.com/Apicurio/apicurio-registry/blob/main/LICENSE)
        displayName: Apicurio Registry 3
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - integration
        - streaming
        - messaging
        - api
        - schemas
        - registry
        - apicurio
        - apicurio-registry
        links:
        - name: Website
          url: https://www.apicur.io/
        - name: GitHub
          url: https://github.com/Apicurio/apicurio-registry/
        - name: Issues
          url: https://github.com/Apicurio/apicurio-registry/issues
        maintainers:
        - email: apicurio@lists.jboss.org
          name: Apicurio
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Apicurio
        relatedImages:
        - quay.io/apicurio/apicurio-registry-3-operator:3.1.6
        - quay.io/community-operator-pipeline-prod/apicurio-registry-3@sha256:af92f5c91bf76a3956049875e81699d67b5e7f3fc1c25ece91073c9322e953cd
        version: 3.1.6
      entries:
      - name: apicurio-registry-3.v3.1.6
        version: 3.1.6
      - name: apicurio-registry-3.v3.1.4
        version: 3.1.4
      - name: apicurio-registry-3.v3.1.3
        version: 3.1.3
      - name: apicurio-registry-3.v3.1.1
        version: 3.1.1
      - name: apicurio-registry-3.v3.1.0
        version: 3.1.0
      - name: apicurio-registry-3.v3.0.15
        version: 3.0.15
      - name: apicurio-registry-3.v3.0.14
        version: 3.0.14
      - name: apicurio-registry-3.v3.0.12
        version: 3.0.12
      - name: apicurio-registry-3.v3.0.9
        version: 3.0.9
      - name: apicurio-registry-3.v3.0.8
        version: 3.0.8
      - name: apicurio-registry-3.v3.0.7
        version: 3.0.7
      name: 3.x
    defaultChannel: 3.x
    packageName: apicurio-registry-3
    provider:
      name: Apicurio
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Microcks.io
      provider-url: ""
    name: microcks
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: microcks-operator.v1.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "microcks.github.io/v1alpha1",
                "kind": "MicrocksInstall",
                "metadata": {
                  "name": "my-microcksinstall"
                },
                "spec": {
                  "name": "my-microcksinstall",
                  "version": "1.10.0",
                  "microcks": {
                    "replicas": 1
                  },
                  "postman": {
                    "replicas": 1
                  },
                  "keycloak": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "1Gi"
                  },
                  "mongodb": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "2Gi"
                  }
                }
              },
              {
                "apiVersion": "microcks.github.io/v1alpha1",
                "kind": "MicrocksInstall",
                "metadata": {
                  "name": "my-microcksinstall-minikube"
                },
                "spec": {
                  "name": "my-microcksinstall-minikube",
                  "version": "1.10.0",
                  "microcks": {
                    "replicas": 2,
                    "url": "microcks.192.168.99.100.nip.io"
                  },
                  "postman": {
                    "replicas": 2
                  },
                  "keycloak": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "1Gi",
                    "url": "keycloak.192.168.99.100.nip.io"
                  },
                  "mongodb": {
                    "install": true,
                    "persistent": true,
                    "volumeSize": "2Gi"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/microcks/microcks-ansible-operator:1.10.0
          createdAt: "2024-08-01T09:14:55Z"
          description: Open Source mocking and testing platform for API and microservices
          repository: https://github.com/microcks/microcks-ansible-operator
          support: microcks.github.io
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Microcks installation
            displayName: MicrocksInstall
            kind: MicrocksInstall
            name: microcksinstalls.microcks.github.io
            version: v1alpha1
        description: |
          Microcks is an Open source tool for API and microservices mocking and testing. It provides a platform for referencing, deploying mocks and allow contract-testing of your APIs. It can also be considered as a Service Virtualization solution because it will allow you to provide fake API or Service implementation before development being actually done. It supports Async APIs, REST APIs, gRPC, GraphQL and SOAP WebServices. It perfectly integrates into an iterative, contract-first delivery process.
          Microcks tries not reinventing the wheel and let you capitalize on already known tools of standards. It supports [AsyncAPI Specifications](https://asyncapi.com), [OpenAPI Specification](https://www.openapis.org/) `3.x`, [gRPC Protobuf](https://grpc.io/), [GraphQL Schema](https://graphql.org) out-of-the-box and can also relies on popular tools like [SoapUI](http://www.soapui.com) or [Postman](http://www.getpostman.io) to edit your API request / response samples as well as your test scripts.
          ### Operator features
          * **Create/Destroy**: Easily launch Microcks installations (`MicrocksInstall` custom resource) for your Kubernetes namespace
          ### MicrocksInstall options
          * **keycloak** component can be deployed as part of the install or you can reuse an existing instance. You can reference an existing `Secret` for providing TLS certificates for securing the `Ingress`,
          * **mongodb** component can be deployed as part of the install or you can reuse an existing instance, You can reference an existing `Secret` for providing connection credentials,
          * **features** component allow to activate optional features like the mocking of AsyncAPIs. In case you turn `features.async.enabled` to `true` and `features.async.kafka.install` to `true`, you must have the [Strimzi Operator](https://operatorhub.io/operator/strimzi-kafka-operator) already installed on your cluster/namespace.
          ### Documentation
          Documentation to the current _master_ branch as well as all releases can be found on our [GitHub](https://github.com/microcks/microcks-ansible-operator).
          ### License
          Microcks is licensed under the [Apache License, Version 2.0](https://github.com/microcks/microcks/blob/master/LICENSE).
        displayName: Microcks Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - mock
        - test
        - API
        - microservice
        links:
        - name: Product Page
          url: https://microcks.io
        - name: Microcks Operator Source Code
          url: https://github.com/microcks/microcks-ansible-operator
        maintainers:
        - email: laurent.broudoux@gmail.com
          name: lbroudoux
        maturity: alpha
        provider:
          name: Microcks.io
        relatedImages:
        - quay.io/community-operator-pipeline-prod/microcks@sha256:1313bb08037e57cde02d9d48c4d8c9663eed08651a3c29f872b5ef85ac764112
        - quay.io/microcks/microcks-ansible-operator:1.10.0
        version: 1.10.0
      entries:
      - name: microcks-operator.v1.10.0
        version: 1.10.0
      - name: microcks-operator.v1.9.0
        version: 1.9.0
      - name: microcks-operator.v1.8.1
        version: 1.8.1
      - name: microcks-operator.v1.8.0
        version: 1.8.0
      - name: microcks-operator.v1.7.1
        version: 1.7.1
      - name: microcks-operator.v1.7.0
        version: 1.7.0
      - name: microcks-operator.v1.6.1
        version: 1.6.1
      - name: microcks-operator.v1.6.0
        version: 1.6.0
      - name: microcks-operator.v1.5.2
        version: 1.5.2
      - name: microcks-operator.v1.5.1
        version: 1.5.1
      - name: microcks-operator.v1.5.0
        version: 1.5.0
      - name: microcks-operator.v1.4.1
        version: 1.4.1
      name: stable
    defaultChannel: stable
    packageName: microcks
    provider:
      name: Microcks.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Konveyor
      provider-url: https://konveyor.io
    name: move2kube-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: move2kube-operator.v0.3.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "move2kube.konveyor.io/v1alpha1",
                "kind": "Move2Kube",
                "metadata": {
                  "name": "move2kube-sample"
                },
                "spec": {
                  "deployment": {
                    "api": {
                      "cpu": "300m",
                      "imageTag": "",
                      "initContainer": false,
                      "memory": "1Gi",
                      "privilegedPods": false,
                      "replicas": 1
                    },
                    "authServer": {
                      "cpu": "300m",
                      "enable": false,
                      "memory": "1Gi",
                      "replicas": 1
                    },
                    "database": {
                      "cpu": "300m",
                      "enable": false,
                      "memory": "1Gi",
                      "replicas": 1,
                      "startEmpty": true
                    }
                  },
                  "ingress": {
                    "enable": true,
                    "host": "mydomain.com",
                    "preferRoute": false,
                    "tlsSecretName": ""
                  },
                  "persistentVolumeClaim": {
                    "createNew": true,
                    "enable": false,
                    "name": "",
                    "readWriteMany": true,
                    "storageClassName": "",
                    "storageSize": "1Gi"
                  },
                  "secret": {
                    "api": {
                      "configYAML": "",
                      "createNew": true,
                      "enable": false,
                      "name": ""
                    },
                    "authServer": {
                      "adminPassword": "password",
                      "adminUsername": "admin",
                      "createNew": true,
                      "databasePassword": "password",
                      "databaseUsername": "auth-server",
                      "name": "",
                      "realmJSON": "",
                      "standaloneHAXML": ""
                    }
                  },
                  "securityContextContraints": {
                    "enable": false
                  },
                  "serviceAccount": {
                    "createNew": true,
                    "enable": false,
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          containerImage: quay.io/konveyor/move2kube-operator:v0.3.10
          createdAt: "2023-09-25T02:56:15Z"
          description: Konveyor Move2Kube is an open source tool that helps migrate
            your app to run on Kubernetes/Openshift.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/move2kube-operator
          support: https://github.com/konveyor/move2kube-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Move2Kube
            name: move2kubes.move2kube.konveyor.io
            version: v1alpha1
        description: |
          Konveyor Move2Kube is a tool that uses source files such as Docker Compose files or Cloud Foundry manifest files, and even source code, to generate Kubernetes deployment files including object yaml, Helm charts, and operators.

          This operator can be used to start an instance of the Move2Kube UI.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Move2Kube CR.

          By default the operator installs a StatefulSet that brings up a Pod that serves the UI.
          See https://move2kube.konveyor.io/tutorials/ui for a tutorial on how to use the UI.

          Data persistence can be enabled by setting the `persistentVolumeClaim.enable` field to `true` in the CR `spec`. https://github.com/konveyor/move2kube-operator/blob/0e79476bcd873d3272164a47af31b00590dacfb1/helm-charts/move2kube/values.yaml#L26

          ### Documentation

          See https://move2kube.konveyor.io/ for more details.

          ### Getting help

          If you encounter any issues while using this operator, you can create an issue on our [Github repo](https://github.com/konveyor/move2kube-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing

          You can contribute by making PRs to our Github repo https://github.com/konveyor/move2kube-operator
        displayName: Konveyor Move2Kube
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - modernization
        - replatform
        - move2kube
        - konveyor
        - migration
        links:
        - name: Documentation
          url: https://move2kube.konveyor.io/
        - name: Move2Kube Operator
          url: https://github.com/konveyor/move2kube-operator
        maintainers:
        - email: harikrishmenon@gmail.com
          name: Harikrishnan Balagopal
        - email: seshapad@in.ibm.com
          name: Padmanabha V Seshadri
        maturity: alpha
        minKubeVersion: 1.22.0
        provider:
          name: Konveyor
          url: https://konveyor.io
        relatedImages:
        - quay.io/konveyor/move2kube-operator:v0.3.10
        - quay.io/openshift-community-operators/move2kube-operator@sha256:cdf288be5ea779e03900af9b57c4d922b8760b88da4fcbf88437f8031d679aef
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 0.3.10
      entries:
      - name: move2kube-operator.v0.3.10
        version: 0.3.10
      - name: move2kube-operator.v0.3.10-rc.0
        version: 0.3.10-rc.0
      - name: move2kube-operator.v0.3.9
        version: 0.3.9
      - name: move2kube-operator.v0.3.8
        version: 0.3.8
      name: alpha
    - currentCSV: move2kube-operator.v0.3.15-rc.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "move2kube.konveyor.io/v1alpha1",
                "kind": "Move2Kube",
                "metadata": {
                  "name": "move2kube-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          containerImage: quay.io/konveyor/move2kube-operator:v0.3.15-rc.0
          createdAt: "2024-10-18T16:10:56Z"
          description: Konveyor Move2Kube is an open source tool that helps migrate
            your app to run on Kubernetes/Openshift.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/move2kube-operator
          support: https://github.com/konveyor/move2kube-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Move2Kube
            name: move2kubes.move2kube.konveyor.io
            version: v1alpha1
        description: |
          Konveyor Move2Kube is a tool that uses source files such as Docker Compose files or Cloud Foundry manifest files, and even source code, to generate Kubernetes deployment files including object yaml, Helm charts, and operators.

          This operator can be used to start an instance of the Move2Kube UI.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Move2Kube CR.

          By default the operator installs a StatefulSet that brings up a Pod that serves the UI.
          See https://move2kube.konveyor.io/tutorials/ui for a tutorial on how to use the UI.

          Data persistence can be enabled by setting the `persistentVolumeClaim.enable` field to `true` in the CR `spec`. https://github.com/konveyor/move2kube-operator/blob/0e79476bcd873d3272164a47af31b00590dacfb1/helm-charts/move2kube/values.yaml#L26

          ### Documentation

          See https://move2kube.konveyor.io/ for more details.

          ### Getting help

          If you encounter any issues while using this operator, you can create an issue on our [Github repo](https://github.com/konveyor/move2kube-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing

          You can contribute by making PRs to our Github repo https://github.com/konveyor/move2kube-operator
        displayName: Konveyor Move2Kube
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - modernization
        - replatform
        - move2kube
        - konveyor
        - migration
        links:
        - name: Documentation
          url: https://move2kube.konveyor.io/
        - name: Move2Kube Operator
          url: https://github.com/konveyor/move2kube-operator
        maintainers:
        - email: harikrishmenon@gmail.com
          name: Harikrishnan Balagopal
        - email: seshapad@in.ibm.com
          name: Padmanabha V Seshadri
        maturity: alpha
        minKubeVersion: 1.13.0
        provider:
          name: Konveyor
          url: https://konveyor.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/move2kube-operator@sha256:236a53d6fad949285b6abafcdd1a4541a7748f952c0c96fa2e71500079579ba4
        - quay.io/konveyor/move2kube-operator:v0.3.15-rc.0
        version: 0.3.15-rc.0
      entries:
      - name: move2kube-operator.v0.3.15-rc.0
        version: 0.3.15-rc.0
      - name: move2kube-operator.v0.3.14-rc.0
        version: 0.3.14-rc.0
      - name: move2kube-operator.v0.3.13-rc.0
        version: 0.3.13-rc.0
      - name: move2kube-operator.v0.3.11-rc.0
        version: 0.3.11-rc.0
      name: prerelease
    - currentCSV: move2kube-operator.v0.3.15
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "move2kube.konveyor.io/v1alpha1",
                "kind": "Move2Kube",
                "metadata": {
                  "name": "move2kube-sample"
                },
                "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration
          containerImage: quay.io/konveyor/move2kube-operator:v0.3.15
          createdAt: "2025-03-07T06:09:48Z"
          description: Konveyor Move2Kube is an open source tool that helps migrate
            your app to run on Kubernetes/Openshift.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/konveyor/move2kube-operator
          support: https://github.com/konveyor/move2kube-operator/issues
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Move2Kube
            name: move2kubes.move2kube.konveyor.io
            version: v1alpha1
        description: |
          Konveyor Move2Kube is a tool that uses source files such as Docker Compose files or Cloud Foundry manifest files, and even source code, to generate Kubernetes deployment files including object yaml, Helm charts, and operators.

          This operator can be used to start an instance of the Move2Kube UI.

          ### Install

          Once you have successfully installed the Operator, proceed to deploy components by creating the required Move2Kube CR.

          By default the operator installs a StatefulSet that brings up a Pod that serves the UI.
          See https://move2kube.konveyor.io/tutorials/ui for a tutorial on how to use the UI.

          Data persistence can be enabled by setting the `persistentVolumeClaim.enable` field to `true` in the CR `spec`. https://github.com/konveyor/move2kube-operator/blob/0e79476bcd873d3272164a47af31b00590dacfb1/helm-charts/move2kube/values.yaml#L26

          ### Documentation

          See https://move2kube.konveyor.io/ for more details.

          ### Getting help

          If you encounter any issues while using this operator, you can create an issue on our [Github repo](https://github.com/konveyor/move2kube-operator/issues), for bugs, enhancements or other requests.
          Or reach out to us in [#konveyor](https://kubernetes.slack.com/archives/CR85S82A2) on kubernetes.slack.com

          ### Contributing

          You can contribute by making PRs to our Github repo https://github.com/konveyor/move2kube-operator
        displayName: Konveyor Move2Kube
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - modernization
        - replatform
        - move2kube
        - konveyor
        - migration
        links:
        - name: Documentation
          url: https://move2kube.konveyor.io/
        - name: Move2Kube Operator
          url: https://github.com/konveyor/move2kube-operator
        maintainers:
        - email: harikrishmenon@gmail.com
          name: Harikrishnan Balagopal
        - email: seshapad@in.ibm.com
          name: Padmanabha V Seshadri
        maturity: alpha
        minKubeVersion: 1.13.0
        provider:
          name: Konveyor
          url: https://konveyor.io
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - quay.io/community-operator-pipeline-prod/move2kube-operator@sha256:38d03dacca046dda3ba08c39943ec2e7db33f1c7bb897e84fe1308a0982c63f1
        - quay.io/konveyor/move2kube-operator:v0.3.15
        version: 0.3.15
      entries:
      - name: move2kube-operator.v0.3.15
        version: 0.3.15
      - name: move2kube-operator.v0.3.14
        version: 0.3.14
      - name: move2kube-operator.v0.3.13
        version: 0.3.13
      - name: move2kube-operator.v0.3.11
        version: 0.3.11
      name: stable
    defaultChannel: stable
    packageName: move2kube-operator
    provider:
      name: Konveyor
      url: https://konveyor.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/try-flink-kubernetes-operator/quick-start/
    name: flink-kubernetes-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: flink-kubernetes-operator.v1.13.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion":"flink.apache.org/v1beta1",
                "kind":"FlinkDeployment",
                "metadata":{
                    "name":"basic-example"
                },
                "spec":{
                    "image":"flink:1.16",
                    "flinkVersion":"v1_16",
                    "flinkConfiguration":{
                        "taskmanager.numberOfTaskSlots":"2"
                    },
                    "serviceAccount":"flink",
                    "jobManager":{
                        "resource":{
                            "memory":"2048m",
                            "cpu":1
                        }
                    },
                    "taskManager":{
                        "resource":{
                            "memory":"2048m",
                            "cpu":1
                        }
                    },
                    "job":{
                        "jarURI":"local:///opt/flink/examples/streaming/StateMachineExample.jar",
                        "parallelism":2,
                        "upgradeMode":"stateless"
                    }
                }
              },
              {
                "apiVersion":"flink.apache.org/v1beta1",
                "kind":"FlinkSessionJob",
                "metadata":{
                  "name":"basic-session-job-example2"
                },
                "spec":{
                  "deploymentName":"basic-session-cluster",
                  "job":{
                      "jarURI":"https://repo1.maven.org/maven2/org/apache/flink/flink-examples-streaming_2.12/1.16.1/flink-examples-streaming_2.12-1.16.1.jar",
                      "parallelism":2,
                      "upgradeMode":"stateless",
                      "entryClass":"org.apache.flink.streaming.examples.statemachine.StateMachineExample"
                  }
                }
              },
              {
                "apiVersion": "flink.apache.org/v1beta1",
                "kind": "FlinkStateSnapshot",
                "metadata": {
                  "name": "example-savepoint"
                },
                "spec": {
                  "savepoint": {
                    "alreadyExists": true,
                    "disposeOnDelete": false,
                    "path": "/flink-data/savepoints/savepoint-98682a-21931bf10c39"
                  }
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "basic-example": {
                "description": "Example flink deployment"
              },
              "basic-session-job-example2": {
                "description": "Example flink session job"
              }
            }
          capabilities: Deep Insights
          categories: Big Data, Streaming & Messaging
          containerImage: ghcr.io/apache/flink-kubernetes-operator:1.13.0
          createdAt: "2025-10-22 22:07:29"
          description: Flink Kubernetes Operator manages the complete deployment lifecycle
            of Apache Flink applications.
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/apache/flink-kubernetes-operator.git
          support: Apache Software Foundation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: The FlinkDeployment CR defines Flink Application and Session
              cluster deployments
            displayName: Flink Deployment
            kind: FlinkDeployment
            name: flinkdeployments.flink.apache.org
            version: v1beta1
          - description: The FlinkSessionJob CR defines the session job on the Session
              cluster and each Session cluster can run multiple FlinkSessionJob.
            displayName: Flink Session Job
            kind: FlinkSessionJob
            name: flinksessionjobs.flink.apache.org
            version: v1beta1
          - description: The FlinkStateSnapshots CR is used to describe savepoint
              or checkpoint for a Flink job.
            displayName: Flink State Snapshot
            kind: FlinkStateSnapshot
            name: flinkstatesnapshots.flink.apache.org
            version: v1beta1
        description: |-
          Flink Kubernetes Operator acts as a control plane to manage the complete deployment lifecycle of Apache Flink applications.
          ## Installation
          This operator can be installed from [OperatorHub.io](https://operatorhub.io/operator/flink-kubernetes-operator).

          By default, the Flink operator monitors and run Flink applications in the same namespace as the operator.
          To run Flink jobs in another namespace, users are responsible for setting up the RBAC in that namespace.

          For example, users need to do the following for each additional namespace that runs the Flink applications:

          1. Switch to the namespace by running:

              ```sh
              kubectl config set-context --current --namespace=CHANGEIT
              ```

          2. Create the service account, role, and role binding in the namespace using the commands below:

              ```sh
              kubectl apply -f - <<EOF
              apiVersion: v1
              kind: ServiceAccount
              metadata:
                labels:
                  app.kubernetes.io/name: flink-kubernetes-operator
                  app.kubernetes.io/version: 1.13.0
                name: flink
              ---
              apiVersion: rbac.authorization.k8s.io/v1
              kind: Role
              metadata:
                labels:
                  app.kubernetes.io/name: flink-kubernetes-operator
                  app.kubernetes.io/version: 1.13.0
                name: flink
              rules:
              - apiGroups:
                - ""
                resources:
                - pods
                - configmaps
                verbs:
                - '*'
              - apiGroups:
                - apps
                resources:
                - deployments
                - deployments/finalizers
                verbs:
                - '*'
              ---
              apiVersion: rbac.authorization.k8s.io/v1
              kind: RoleBinding
              metadata:
                labels:
                  app.kubernetes.io/name: flink-kubernetes-operator
                  app.kubernetes.io/version: 1.13.0
                name: flink-role-binding
              roleRef:
                apiGroup: rbac.authorization.k8s.io
                kind: Role
                name: flink
              subjects:
              - kind: ServiceAccount
                name: flink
              EOF
              ```

          3. Proceed deploying Flink applications using the the Custom Resource Definition below.

              ```sh
              kubectl create -f https://raw.githubusercontent.com/apache/flink-kubernetes-operator/release-1.13.0/examples/basic.yaml
              ```

          See [Flink custom resources](https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/custom-resource/overview/#overview) for more detail.
        displayName: Flink Kubernetes Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - flink
        - streaming
        links:
        - name: Website
          url: https://flink.apache.org/
        - name: Documentation
          url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/
        - name: Mailing list
          url: https://lists.apache.org/list.html?dev@flink.apache.org
        - name: Slack
          url: https://apache-flink.slack.com/join/shared_invite/zt-1llkzbgyt-K2nNGGg88rfsDGLkT09Qzg#/shared-invite/email
        - name: GitHub
          url: https://github.com/apache/flink-kubernetes-operator
        maintainers:
        - email: mbalassi@apache.org
          name: Marton Balassi
        - email: htchang@us.ibm.com
          name: Ted Chang
        - email: jbusche@us.ibm.com
          name: James Busche
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Community
          url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/try-flink-kubernetes-operator/quick-start/
        relatedImages:
        - ghcr.io/apache/flink-kubernetes-operator:1.13.0
        - quay.io/community-operator-pipeline-prod/flink-kubernetes-operator@sha256:3a177f2a9c91e7a6b212ecadc116c2a598c8c834106c6af0f6754a3e4f2a6d9a
        version: 1.13.0
      entries:
      - name: flink-kubernetes-operator.v1.13.0
        version: 1.13.0
      - name: flink-kubernetes-operator.v1.12.0
        version: 1.12.0
      - name: flink-kubernetes-operator.v1.11.0
        version: 1.11.0
      - name: flink-kubernetes-operator.v1.6.0
        version: 1.6.0
      - name: flink-kubernetes-operator.v1.5.0
        version: 1.5.0
      - name: flink-kubernetes-operator.v1.4.0
        version: 1.4.0
      - name: flink-kubernetes-operator.v1.3.1
        version: 1.3.1
      - name: flink-kubernetes-operator.v1.3.0
        version: 1.3.0
      name: alpha
    defaultChannel: alpha
    packageName: flink-kubernetes-operator
    provider:
      name: Community
      url: https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/try-flink-kubernetes-operator/quick-start/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Oracle
      provider-url: https://www.oracle.com/cloud/
    name: oci-ccm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: oci-ccm-operator.v0.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ccm.oraclecloud.com/v1alpha1",
                "kind": "OCICloudManager",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oci-ccm-operator",
                    "app.kubernetes.io/instance": "ocicloudmanager",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ocicloudmanager",
                    "app.kubernetes.io/part-of": "oci-ccm-operator"
                  },
                  "name": "ocicloudmanager"
                },
                "spec": {
                  "compartment": "CompartmentId",
                  "driverNamespace": "kube-system",
                  "loadBalancer": {
                    "securityList": "SecurityListId",
                    "securityListManagementMode": "Frontend",
                    "subnet": "SubnetId"
                  },
                  "vcn": "VcnId"
                }
              },
              {
                "apiVersion": "ccm.oraclecloud.com/v1alpha1",
                "kind": "OCICsiDriver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "oci-ccm-operator",
                    "app.kubernetes.io/instance": "ocicsidriver",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ocicsidriver",
                    "app.kubernetes.io/part-of": "oci-ccm-operator"
                  },
                  "name": "ocicsidriver"
                },
                "spec": {
                  "compartment": "CompartmentId",
                  "driverNamespace": "kube-system",
                  "vcn": "VcnId"
                }
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider, Storage
          containerImage: phx.ocir.io/ax1eoqvpvbtg/oci-ccm-operator:0.0.9
          createdAt: "2023-07-28T23:42:18Z"
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '[]'
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          support: Oracle
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: OCICloudManager
            name: ocicloudmanagers.ccm.oraclecloud.com
            version: v1alpha1
          - kind: OCICsiDriver
            name: ocicsidrivers.ccm.oraclecloud.com
            version: v1alpha1
        description: OCI Kubernetes Cloud Controller Manager implementation (or out-of-tree
          cloud-provider) for Oracle Cloud Infrastructure (OCI).
        displayName: oci-ccm-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - OCI
        - CCM
        - OpenShift
        - Kubernetes
        links:
        - name: Oracle
          url: https://www.oracle.com/cloud/
        - name: OCI Cloud Controller Manager (CCM)
          url: https://github.com/oracle/oci-cloud-controller-manager
        maintainers:
        - email: david.d.campbell@oracle.com
          name: David Campbell
        - email: alex.blinov@oracle.com
          name: Alex Blinov
        maturity: alpha
        provider:
          name: Oracle
          url: https://www.oracle.com/cloud/
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        - phx.ocir.io/ax1eoqvpvbtg/oci-ccm-operator:0.0.9
        - quay.io/openshift-community-operators/oci-ccm-operator@sha256:eaf63c6f9ee9e9c3562d6ced4cff091c1e401daa826ee3a92b321a5cc8f13da2
        version: 0.0.9
      entries:
      - name: oci-ccm-operator.v0.0.9
        version: 0.0.9
      name: alpha
    defaultChannel: alpha
    packageName: oci-ccm-operator
    provider:
      name: Oracle
      url: https://www.oracle.com/cloud/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Opstree Solutions
      provider-url: ""
    name: logging-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: logging-operator.v0.4.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"logging.logging.opstreelabs.in/v1beta1","kind":"Elasticsearch","metadata":{"name":"elasticsearch"},"spec":{"esClusterName":"prod","esVersion":"7.17.0","esSecurity":{"autoGeneratePassword":true,"tlsEnabled":true}}},{"apiVersion":"logging.logging.opstreelabs.in/v1beta1","kind":"Fluentd","metadata":{"name":"fluentd"},"spec":{"esCluster":{"host":"elasticsearch-master"},"esSecurity":{"tlsEnabled":true,"existingSecret":"elasticsearch-password"},"indexNameStrategy":"namespace_name"}},{"apiVersion":"logging.logging.opstreelabs.in/v1beta1","kind":"Kibana","metadata":{"name":"kibana"},"spec":{"replicas":1,"esCluster":{"host":"https://elasticsearch-master:9200","esVersion":"7.16.0","clusterName":"elasticsearch"},"esSecurity":{"tlsEnabled":true,"existingSecret":"elasticsearch-password"}}}]'
          capabilities: Seamless Upgrades
          categories: Database,  Monitoring, Big Data
          certified: "false"
          containerImage: quay.io/opstree/logging-operator:v0.4.0
          createdAt: 04-07-2022
          description: A golang-based operator to create and manage EFK (Elasticsearch,
            Fluentd, and Kibana) stack on Kubernetes.
          k8sMaxVersion: ""
          k8sMinVersion: ""
          repository: https://github.com/ot-container-kit/logging-operator
          support: ""
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Elasticsearch
            displayName: Elasticsearch
            kind: Elasticsearch
            name: elasticsearches.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Index Life Cycle
            displayName: IndexLifeCycle
            kind: IndexLifeCycle
            name: indexlifecycles.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Index Template
            displayName: IndexTemplate
            kind: IndexTemplate
            name: indextemplates.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Fluentd
            displayName: Fluentd
            kind: Fluentd
            name: fluentds.logging.logging.opstreelabs.in
            version: v1beta1
          - description: Kibana
            displayName: Kibana
            kind: Kibana
            name: kibanas.logging.logging.opstreelabs.in
            version: v1beta1
        description: |2+

          Logging Operator is an operator created in Golang to set up and manage EFK(Elasticsearch, Fluentd, and Kibana) cluster inside Kubernetes and Openshift environment. This operator is capable of setting up each individual component of EFK cluster separately.
          ### Supported Features
          - Setup of elasticsearch cluster with different nodes type:- master, data, ingestion, and client.
          - Customizable configuration for elasticsearch, fluentd stack.
          - Setup of fluentd as light-weight log-shipper as Daemonset.
          - Kibana will be set up as visualization tool for elastic stack.
          - Seamless upgrades of elasticsearch, fluentd, and kibana.
          - Security best practices support for complete stack such as TLS, elastic security.
          - Kubernetes resources objects support like:- resources, securityContext, affinity, tolerations, etc.
          - Elasticsearch plugins and keystore seamless support with operator
          ### Documentation
          **[Documentation](https://ot-logging-operator.netlify.app/)**
          ### Getting Help
          This project is managed by OpsTree Solutions. If you have any queries or suggestions, mail us at opensource@opstree.com.
          ### Contributing
          You can contribute to this project by:-
          * Raising Bugs and Feature Requests
          * Fixing issue by opening a Pull Request
          * Improving Documentation
          ### License
          MongoDB Operator is licensed under [Apache License, Version 2.0](https://github.com/OT-CONTAINER-KIT/logging-operator/blob/master/LICENSE)

        displayName: Logging Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - DevOps
        - Kubernetes
        - Operator
        - Elasticsearch
        - Fluentd
        - Kibana
        - Opstree
        - Logging
        - Monitoring
        - Cloud Native
        links:
        - name: Blog
          url: https://blog.opstree.com
        - name: GitHub
          url: https://github.com/opstree
        - name: Opensource
          url: https://opstree.github.io
        - name: Documentation
          url: https://ot-logging-operator.netlify.app/
        - name: Buildpiper
          url: https://buildpiper.io
        maintainers:
        - email: abhishek.dubey@opstree.com
          name: Abhishek Dubey
        - email: sandeep@opstree.com
          name: Sandeep
        maturity: beta
        minKubeVersion: 1.17.0
        provider:
          name: Opstree Solutions
        relatedImages:
        - quay.io/opstree/logging-operator:v0.4.0
        - quay.io/openshift-community-operators/logging-operator@sha256:d3ce3322f7f25c7b8bfabdd6e9fd32b833239fc39592240e0ccff3a13757fb17
        version: 0.4.0
      entries:
      - name: logging-operator.v0.4.0
        version: 0.4.0
      - name: logging-operator.v0.3.0
        version: 0.3.0
      name: beta
    defaultChannel: beta
    packageName: logging-operator
    provider:
      name: Opstree Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NetApp, Inc.
      provider-url: https://www.netapp.com/
    name: trident-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: trident-operator.v25.10.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "trident.netapp.io/v1",
                "kind": "TridentOrchestrator",
                "metadata": {
                  "name": "trident"
                },
                "spec": {
                  "IPv6": false,
                  "debug": true,
                  "nodePrep": [],
                  "imagePullSecrets": [],
                  "imageRegistry": "",
                  "namespace": "trident",
                  "silenceAutosupport": false
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          containerImage: docker.io/netapp/trident-operator:25.10.0
          createdAt: "2025-11-18"
          description: Trident Operator, to manage NetApp Trident installations
          operatorhub.io/ui-metadata-max-k8s-version: "1.34"
          repository: https://github.com/netapp/trident
          support: NetApp
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Used to deploy Astra Trident.
            displayName: Trident Orchestrator
            kind: TridentOrchestrator
            name: tridentorchestrators.trident.netapp.io
            version: v1
        description: |
          NetApp Trident is an open source storage provisioner and orchestrator maintained by NetApp. It enables you to create storage volumes for containerized applications managed by Docker and Kubernetes. For full release information, including patch release changes, see https://docs.netapp.com/us-en/trident/trident-rn.html.
        displayName: NetApp Trident
        installModes:
        - supported: true
          type: AllNamespaces
        keywords:
        - NetApp
        - ONTAP
        - Trident
        - storage
        - performance
        - open source
        - Astra
        - Cloud Native
        - AWS
        - Azure
        - GCP
        - Cloud Volumes
        links:
        - name: GitHub Repository
          url: https://github.com/NetApp/trident
        - name: Trident documentation
          url: https://docs.netapp.com/us-en/trident/index.html
        - name: Support policy
          url: https://mysupport.netapp.com/site/info/version-support
        - name: Release Notes
          url: https://docs.netapp.com/us-en/trident/trident-rn.html
        maintainers:
        - email: ng-astra-product@netapp.com
          name: NetApp
        provider:
          name: NetApp, Inc.
          url: https://www.netapp.com/
        relatedImages:
        - quay.io/community-operator-pipeline-prod/trident-operator:25.10.0
        - docker.io/netapp/trident-operator:25.10.0
        version: 25.10.0
      entries:
      - name: trident-operator.v25.10.0
        version: 25.10.0
      name: stable
    defaultChannel: stable
    packageName: trident-operator
    provider:
      name: NetApp, Inc.
      url: https://www.netapp.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: secrets-store-csi-driver-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: secrets-store-csi-driver-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-secrets-store-csi-driver-rhel9-operator@sha256:36cb66f68975490405a76e742b0f9d347106f0921fcc68d1254765178c898de6
          createdAt: "2023-06-12T00:00:00Z"
          description: Install and configure Secrets Store CSI driver.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.13.0-0 <4.20.0'
          operatorframework.io/suggested-namespace: openshift-cluster-csi-drivers
          operators.openshift.io/infrastructure-features: '["csi"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/secrets-store-csi-driver-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SecretProviderClass is the Schema for the secretproviderclasses
              API
            displayName: Secret Provider Class
            kind: SecretProviderClass
            name: secretproviderclasses.secrets-store.csi.x-k8s.io
            version: v1
          - description: SecretProviderClassPodStatus is the Schema for the secretproviderclassespodstatus
              API
            displayName: Secret Provider Class Pod Status
            kind: SecretProviderClassPodStatus
            name: secretproviderclasspodstatuses.secrets-store.csi.x-k8s.io
            version: v1
        description: |
          Operator that installs and configures the CSI driver for Secrets Store.
        displayName: Secrets Store CSI Driver Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        links:
        - name: Documentation
          url: https://github.com/openshift/secrets-store-csi-driver-operator
        - name: Source Repository
          url: https://github.com/openshift/secrets-store-csi-driver-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-secrets-store-csi-driver-operator-bundle@sha256:a4cfd15e063019d925ccd4893a87cf29c83f372c93578bd5fa2e4de06c47ae0a
        - registry.redhat.io/openshift4/ose-csi-livenessprobe-rhel9@sha256:fab570ecdc9c3620b032bc4c5b44240f5ebac0bb9e48dfeea32bcd36eb462e5a
        - registry.redhat.io/openshift4/ose-csi-node-driver-registrar-rhel9@sha256:a498046d64605bcccee2440aa4f04a4602baaae263cf01d977ec5208e876b1fd
        - registry.redhat.io/openshift4/ose-secrets-store-csi-driver-rhel9-operator@sha256:36cb66f68975490405a76e742b0f9d347106f0921fcc68d1254765178c898de6
        - registry.redhat.io/openshift4/ose-secrets-store-csi-driver-rhel9@sha256:f3bf81a36c97fd7acbe1e3213c64e03ddb7643b17466f3afce5b06a29b7e6ea0
        version: 4.20.0-202512090918
      entries:
      - name: secrets-store-csi-driver-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: secrets-store-csi-driver-operator.v4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: secrets-store-csi-driver-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: secrets-store-csi-driver-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: secrets-store-csi-driver-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: secrets-store-csi-driver-operator.v4.20.0-202510212154
        version: 4.20.0-202510212154
      - name: secrets-store-csi-driver-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: stable
    defaultChannel: stable
    packageName: secrets-store-csi-driver-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://your.domain
    name: amq-streams-proxy
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: amq-streams-proxy.v3.0.1-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
          createdAt: "2025-11-11T15:24:48Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.0.1-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        version: 3.0.1-4
      entries:
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: alpha
    - currentCSV: amq-streams-proxy.v3.0.1-4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
          createdAt: "2025-11-11T15:24:48Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.0.1-4'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.0
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:0e6cda4ec2daa0ec9ece3f13709a8fd0820401af0c41baaf6b6cb3c5cfcfcb55
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:f0d6caee97e254df9e153aa29c3195b18a3d96160894c738136d5cf7eb436a73
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:3576e1a4a1ac5e2d9514c12b3da099a69ff66aebdf25fd6348c20b4c23a56c5b
        version: 3.0.1-4
      entries:
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: amq-streams-3.0.x
    - currentCSV: amq-streams-proxy.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
          createdAt: "2025-12-04T15:59:50Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:308597d82823daf94b0526c93ba7c689b63bcc6a76f53e55a8cc2e8cfa17ad13
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:2d5710829cedc5afc10fd3e021013a2b61ee38262d45ed4bc6375b820aa781f6
        version: 3.1.0-6
      entries:
      - name: amq-streams-proxy.v3.1.0-6
        version: 3.1.0-6
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: amq-streams-3.1.x
    - currentCSV: amq-streams-proxy.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
          createdAt: "2025-12-04T15:59:50Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:2d5710829cedc5afc10fd3e021013a2b61ee38262d45ed4bc6375b820aa781f6
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:308597d82823daf94b0526c93ba7c689b63bcc6a76f53e55a8cc2e8cfa17ad13
        version: 3.1.0-6
      entries:
      - name: amq-streams-proxy.v3.1.0-6
        version: 3.1.0-6
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: amq-streams-3.x
    - currentCSV: amq-streams-proxy.v3.1.0-6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
                {
                  "kind": "KafkaProxy",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "simple"
                  },
                  "spec": {}
                },
                {
                  "kind": "KafkaProxyIngress",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "cluster-ip"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "clusterIP": {
                      "protocol": "TCP"
                    }
                  }
                },
                {
                  "kind": "KafkaService",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "bootstrapServers": "mykafka.example.com:9092",
                     "nodeIdRanges": [
                      {
                        "start": 0,
                        "end": 2
                      }
                    ]
                  }
                },
                {
                  "kind": "VirtualKafkaCluster",
                  "apiVersion": "kroxylicious.io/v1alpha1",
                  "metadata": {
                    "name": "my-cluster"
                  },
                  "spec": {
                    "proxyRef": {
                      "name": "simple"
                    },
                    "targetKafkaServiceRef": {
                      "name": "my-cluster"
                    },
                    "ingresses": [
                      {
                        "ingressRef": {
                          "name": "cluster-ip"
                        }
                      }
                    ]
                  }
                }
            ]
          alm-examples-metadata: |-
            {
              "example-proxy": {
                "description": "An example Streams Proxy instance that proxies a Kafka cluster, exposing it with a virtual kafka cluster using cluster-ip ingress. This configuration does not define any protocol filters so will not transform the protocol in anyway. This configuration does not supply the kafka cluster.  It is assumed a hypothetical cluster at address mykafka.example.com:9092."
              }
            }
          capabilities: Basic Install
          certified: "false"
          containerImage: registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
          createdAt: "2025-12-04T15:59:50Z"
          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: "true"
          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.skipRange: '>=3.0.0-0 <3.1.0-6'
          operators.openshift.io/valid-subscription: '["Red Hat AMQ", "Red Hat Application
            Foundations"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: unknown
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A `KafkaProxy` resource represents an instance of the Kroxylicious
              Proxy.
            displayName: KafkaProxy
            kind: KafkaProxy
            name: kafkaproxies.kroxylicious.io
            version: v1alpha1
          - description: A `VirtualKafkaCluster` resource defines a logical Kafka
              cluster that is accessible to clients over the network.
            displayName: VirtualKafkaCluster
            kind: VirtualKafkaCluster
            name: virtualkafkaclusters.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProxyIngress` resource defines the networking configuration
              that allows Kafka clients to connect to a `VirtualKafkaCluster`.
            displayName: KafkaProxyIngress
            kind: KafkaProxyIngress
            name: kafkaproxyingresses.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaService` resource that defined the backend Kafka
              cluster.
            displayName: KafkaService
            kind: KafkaService
            name: kafkaservices.kroxylicious.io
            version: v1alpha1
          - description: A `KafkaProtocolFilter` resource represents a Kroxylicious
              Proxy filter.
            displayName: KafkaProtocolFilter
            kind: KafkaProtocolFilter
            name: kafkaprotocolfilters.kroxylicious.io
            version: v1alpha1
        description: Red Hat Streams for Apache Kafka Proxy is an Apache Kafka® protocol-aware
          proxy. It can be used to layer uniform behaviours onto a Kafka based system
          in areas such as data-governance, security, policy enforcement and audit
          without needing to change either the applications or the Kafka Cluster.
        displayName: Streams for Apache Kafka Proxy
        installModes:
        - supported: true
          type: AllNamespaces
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        keywords:
        - kafka
        - messaging
        - kafka-streams
        - data-streaming
        - data-streams
        - streaming
        - streams
        links:
        - name: Product Page
          url: https://access.redhat.com/products/red-hat-amq
        - name: Documentation
          url: https://docs.redhat.com/en/documentation/red_hat_streams_for_apache_kafka/3.1
        maintainers:
        - email: customerservice@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
          url: https://your.domain
        relatedImages:
        - registry.redhat.io/amq-streams/proxy-rhel9-operator@sha256:8f6f7a446b474b10c5d11f32317f2bd67c51203bf9ebbc626e0adf7f8e424f7c
        - registry.redhat.io/amq-streams/proxy-rhel9@sha256:308597d82823daf94b0526c93ba7c689b63bcc6a76f53e55a8cc2e8cfa17ad13
        - registry.redhat.io/amq-streams/proxy-operator-bundle@sha256:2d5710829cedc5afc10fd3e021013a2b61ee38262d45ed4bc6375b820aa781f6
        version: 3.1.0-6
      entries:
      - name: amq-streams-proxy.v3.1.0-6
        version: 3.1.0-6
      - name: amq-streams-proxy.v3.0.1-4
        version: 3.0.1-4
      - name: amq-streams-proxy.v3.0.1-2
        version: 3.0.1-2
      - name: amq-streams-proxy.v3.0.1-1
        version: 3.0.1-1
      - name: amq-streams-proxy.v3.0.0-8
        version: 3.0.0-8
      - name: amq-streams-proxy.v3.0.0-5
        version: 3.0.0-5
      name: stable
    defaultChannel: stable
    packageName: amq-streams-proxy
    provider:
      name: Red Hat
      url: https://your.domain
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Sonatype
      provider-url: ""
    name: nexus-repository-ha-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nexus-repository-ha-operator-certified.v3.84.0-1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sonatype.com/v1alpha1",
                "kind": "NexusRepo",
                "metadata": {
                  "name": "nexusrepo-sample"
                },
                "spec": {
                  "ingress": {
                    "additionalRules": null,
                    "annotations": null,
                    "defaultRule": false,
                    "dockerIngress": {
                      "annotations": null,
                      "enabled": false,
                      "host": "example.com",
                      "name": "nexus-docker-ingress"
                    },
                    "dockerSubdomain": false,
                    "enabled": false,
                    "host": "example.com",
                    "name": "nexus-ingress",
                    "tls": {
                      "enabled": false,
                      "secretName": "tlsSecretName"
                    }
                  },
                  "license": {
                    "fileContentsBase64": "your_license_file_contents_in_base_64",
                    "secretName": "nexus-repo-license"
                  },
                  "secret": {
                    "nexusSecret": {
                      "enabled" : false,
                      "name": "nexus-secret.json",
                      "nexusSecretsKeyId": "super_secret_key_id",
                      "secretKeyfileContentsBase64": "secretKeyfileContentsBase64",
                      "mountPath": "/var/nexus-repo-secrets"
                    }
                  },
                  "nexusData": {
                    "pvc": {
                      "accessMode": "ReadWriteOnce",
                      "size": "2Gi"
                    },
                    "storageClass": {
                      "enabled": false,
                      "name": "nexusrepo-storage",
                      "parameters": {},
                      "provisioner": "provisioner",
                      "reclaimPolicy": "Retain",
                      "volumeBindingMode": "WaitForFirstConsumer"
                    },
                    "volumeClaimTemplate": {
                      "enabled": false
                    }
                  },
                  "service": {
                    "docker": {
                      "enabled": false,
                      "name": "nexus-repo-docker-service",
                      "port": 9090,
                      "protocol": "TCP",
                      "targetPort": 9090,
                      "type": "NodePort"
                    },
                    "nexus": {
                      "enabled": false,
                      "name": "nexus-repo-service",
                      "port": 80,
                      "protocol": "TCP",
                      "targetPort": 8081,
                      "type": "NodePort"
                    }
                  },
                  "statefulset": {
                    "container": {
                      "containerPort": 8081,
                      "env": {
                        "clustered": false,
                        "install4jAddVmParams": "-Xms2703m -Xmx2703m",
                        "jdbcUrl": null,
                        "nexusInitialPassword": "nexusabc",
                        "password": "nexus",
                        "user": "nexus",
                        "zeroDowntimeEnabled": false
                      },
                      "imageName": "registry.connect.redhat.com/sonatype/nexus-repository-manager@sha256:fbad488ff2e368845473a11b4955992fe826a94811da3abf5cc3c6a33ff3974f",
                      "pullPolicy": "IfNotPresent",
                      "resources": {
                        "limits": {
                          "cpu": 4,
                          "memory": "8Gi"
                        },
                        "requests": {
                          "cpu": 4,
                          "memory": "8Gi"
                        }
                      },
                      "terminationGracePeriod": 120
                    },
                    "imagePullSecrets": {},
                    "livenessProbe": {
                      "failureThreshold": 6,
                      "initialDelaySeconds": 240,
                      "path": "/",
                      "periodSeconds": 60
                    },
                    "name": "nexusrepo-statefulset",
                    "readinessProbe": {
                      "failureThreshold": 6,
                      "initialDelaySeconds": 240,
                      "path": "/",
                      "periodSeconds": 60
                    },
                    "replicaCount": 1
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.connect.redhat.com/sonatype/nexus-repository-ha-operator-certified@sha256:99f30aa5ba8469d96de3efe69d1b21e73ff022172fc79144bba496d1119ec8a2
          createdAt: "2023-08-14"
          description: |-
            Nexus Repository is the central source of control to efficiently manage all binaries
            and build artifacts across your DevOps pipeline.
          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.replaces: 3.80.0-2
          olm.skipRange: <3.84.0-1
          repository: https://github.com/sonatype/operator-nexus-repository
          support: Sonatype
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Nexus Repository
            displayName: NexusRepo
            kind: NexusRepo
            name: nexusrepos.sonatype.com
            version: v1alpha1
        description: |-
          Nexus Repository is the central source of control to efficiently manage all binaries
          and build artifacts across your DevOps pipeline.
          The flow of open source and third-party components into and through an organization
          creates a complex software supply chain.
          Nexus Repository delivers speed, efficiency, and quality to the governance
          and management of all dependencies, libraries, and applications for your DevOps teams.

          ## Core Capabilities

          * **Dependency Management**:
            Improves reliability with repeatable, fast access to secure dependencies
          * **Developer Productivity**:
            Streamline developer workflows by enabling the sharing of components and applications across teams
          * **Supply Chain Performance**:
            Improve speed-to-market and reduced build times with release advanced staging and component tagging
          * **CI/CD Integrations**:
            Increase DevOps scalability with integrations to the most popular build and deployment tools

          Version control systems and package registries do not scale when managing proprietary,
          open source, and third-party components.
          Organizations need a central binary and build artifact repository to manage dependencies
          across the entire software supply chain.

          ## Limitations

          ## Controlling Automatic vs Manual Update

          If you use the default configuration for the Nexus Repository Operator installation,
          please notice that on any new operator release, the corresponding deployments are
          also updated without user intervention, resulting in unscheduled downtime.

          If you want to avoid this unscheduled downtime, we recommend installing the operator
          into **its own namespace** with **manual approval** for updates.

          ## Usage
          By default, the example Custom Resource starts up a single instance of Nexus Repository in non-Pro mode using an H2 database.

          ### Connect to a PostgreSQL database
          We strongly recommend using Nexus Repository with a PostgreSQL database. To connect a Nexus Repository instance to a PostgreSQL database, do as follows:
          * Update the `license.fileContentsBase64` parameter with a base 64 representation of your Nexus Repository Pro license.
          * Set the `statefulset.container.env.jdbcUrl` parameter to your database url.
          * Set the `statefulset.container.env.user` parameter to your database user name.
          * Set the `statefulset.container.env.password` parameter to your database password.

          ### High Availability (HA) mode
          To start Nexus Repository in HA mode, you must edit the Custom Resource YAML as follows:

          * Update the `license.fileContentsBase64` parameter with a base 64 representation of your Nexus Repository Pro license.
          * Set the `statefulset.container.env.jdbcUrl` parameter to your database url.
          * Set the `statefulset.container.env.user` parameter to your database user name.
          * Set the `statefulset.container.env.password` parameter to your database password.
          * Set the `statefulset.container.env.clustered` parameter to true.
          * Set the `statefulset.replicaCount` parameter to the number of Nexus Repository pods you require in your HA cluster
          * You must use a persistent volume as described in the 'Storage' section below.

          ### Storage
          The default configuration uses an emptyDir volume for storing Nexus Repository logs. However, we strongly recommend that
          you configure dynamic provisioning of persistent storage based on your deployment environment as explained below.

          #### Cloud deployments (AWS/Azure)
          * Ensure the appropriate Container Storage Interface (CSI) driver(s) are installed for your chosen OpenShift cloud deployment.
            Please, refer to OpenShift documentation for details on configuring CSI drivers.
          Note: if you're using Red Hat OpenShift on AWS (ROSA), CSI drivers for dynamically provisioning EBS volumes are installed
          by default; you should see associated storage classes for them in your cluster web console.

          #### On premise deployments
          1. Attach separate disks (i.e. separate from the root disk) to your worker nodes.
          2. Install the Local Storage Operator. Please refer to Open Shift persistent storage documentation:
             https://docs.openshift.com/container-platform/4.13/storage/persistent_storage/persistent_storage_local/persistent-storage-local.html
          and the Local Storage Operator documentation: https://github.com/openshift/local-storage-operator.
          3. Use the Local Storage Operator to automatically create persistent volumes for your chosen storage class name as documented here:
             https://docs.openshift.com/container-platform/4.13/storage/persistent_storage/persistent_storage_local/persistent-storage-local.html
          4. Specify the storage class name from step 3 as the value of the `nexusData.storageClass.name` property and also set `nexusData.volumeClaimTemplate.enabled` to true.

          #### Configuring the operator for dynamic persistent volume provisioning
          * Set the `nexusData.storageClass.name` parameter to a storage class name. This could be one of the default storage classes
            automatically created in your OpenShift cluster (e.g., if you're using ROSA) or one that you would like the operator to create.
          * If you would like to create a dedicated storage class (i.e., you don't want to use the default), then in addition to
            specifying a value for `nexusData.storageClass.name`, you must also set `nexusData.storageClass.enabled` parameter to `true`.
          * Set the `nexusData.volumeClaimTemplate.enabled` parameter to `true`.

          ### Additional configuration
          * Once the operator has created the server instance and it is running, you can further configure Nexus Repository via the NexusRepo custom resource:

          | Parameter                                                   | Description                         | Default                                 |
          | ----------------------------------------------------------- | ----------------------------------  | ----------------------------------------|
          | `statefulset.name`                                          |  The suffix for the statefulset's service name    | nexusrepo-statefulset     |
          | `statefulset.replicaCount`                                  |  The desired number of Nexus Repository pods    | 3                           |
          | `statefulset.container.imageName`                           |  The Nexus repository image registry url    |
          | | | registry.connect.redhat.com/sonatype/nexus-repository-manager:<app version>-ubi-1|
          | `statefulset.container.resources.requests.cpu`              |  The minimum cpu the Nexus repository pod can request    | 4 |
          | `statefulset.container.resources.requests.memory`           |  The minimum memory the Nexus repository pod can request    | 8Gi|
          | `statefulset.container.resources.limits.cpu`                |  The maximum cpu the Nexus repository pod may get.    | 4|
          | `statefulset.container.resources.limits.memory`             |  The maximum memory the Nexus repository pod may get.  | 8Gi|
          | `statefulset.container.containerPort`                       |  The Nexus Repository container's HTTP port  | 8081|
          | `statefulset.container.pullPolicy`                          |  The Nexus Repository docker image pull policy  | IfNotPresent|
          | `statefulset.container.terminationGracePeriod`              |  The time given for the pod to gracefully shut down  | 120 seconds|
          | `statefulset.container.env.clustered`                       |  Controls whether Nexus Repository should start in clustered mode  | False|
          | `statefulset.container.env.install4jAddVmParams`            |  Xmx and Xms settings for JVM  | -Xms2703m -Xmx2703m|
          | `statefulset.container.env.user`                            |  The database user name | nexus (can be overridden via Kubernetes secret. See above)|
          | `statefulset.container.env.password`                        |  The database password  | nexus (can be overridden via Kubernetes secret. See above)|
          | `statefulset.container.env.jdbcUrl`                         |  The database url |
          | | | jdbc:postgresql://your_database_server:5432/nexus (must be overridden via Kubernetes |
          | | | secret object which feeds into env variable variables defined in the operator.yaml . See above)|
          | `statefulset.container.env.nexusInitialPassword`            |  The initial admin password for Nexus Repository UI. This is for first time |
          | | installs only. Subsequent installs/restarts on the same node ignores this setting | nexusabc|
          | `statefulset.livenessProbe.initialDelaySeconds`             |  The initial delay before the Nexus Repository application is pinged for a |
          | | response i.e. to determine whether the application is still alive | 240|
          | `statefulset.livenessProbe.path`                            |  The path to ping the application | |
          | `statefulset.livenessProbe.periodSeconds`                   |  The interval for checking that the application is still alive i.e. responsive, not deadlocked etc | 60|
          | `statefulset.livenessProbe.failureThreshold`                |  The maximum number of times the application ping can fail before the |
          | | application is considered unresponsive. Kubernetes will attempt to restart the application's pod in this case | 6|
          | `statefulset.readinessProbe.initialDelaySeconds`            |  The initial delay before the Nexus Repository application is checked |
          | | whether it is ready to receive traffic | 240|
          | `statefulset.readinessProbe.path`                           |  The path where the Nexus Repository application is checked for traffic readiness | |
          | `statefulset.readinessProbe.periodSeconds`                  |  The interval for checking the Nexus Repository application for traffic readiness | 60|
          | `statefulset.readinessProbe.failureThreshold`               |  The maximum number of times to check the Nexus Repository application for traffic readiness | 6|
          | `statefulset.imagePullSecrets`                              |  The pull secret for private image registries | {}|
          | `ingress.name`                                              |  The name of an Ingress object which listens for requests to Nexus Repository on port 80 | nexus-ingress|
          | `ingress.enabled`                                           |  Whether or not to create the Ingress | false|
          | `ingress.host`                                              |  Ingress host | "example.com"|
          | `ingress.defaultRule`                                       |  Whether or not to add a default rule for the Nexus Repository |
          | | Ingress which forwards traffic to a Service object  | false|
          | `ingress.additionalRules`                                   |  Additional rules to add to the ingress | null|
          | `ingress.tls.enabled`                                       |  Whether or not TLS should be enabled for the Ingress | false|
          | `ingress.tls.secretName`                                    | The name of a Secret object in which to store the TLS secret | tlsSecretName|
          | `ingress.dockerSubdomain`                                   |  Whether or not to add rules for docker subdomains | false|
          | `ingress.annotations`                                       |  Annotations for the Ingress object | null |
          | `license.fileContentsBase64`                                |  Your Base64 encoded Nexus Repository license | your_license_file_contents_in_base_64 |
          | `license.secretName`                                        |  The name of a secret object in which to store your |
          | | Base64-encoded Nexus Repository license | nexus-repo-license|
          | `ingress.dockerIngress.name`                                |  The name of an Ingress object which listens for requests to an |
          | | existing docker repository in Nexus Repository | nexus-docker-ingress|
          | `ingress.dockerIngress.enabled`                             |  Whether or not to create an Ingress for a docker repository | false|
          | `ingress.dockerIngress.host`                                |  The docker Ingress's host | "example.com"|
          | `ingress.dockerIngress.annotations`                         |  Annotations for the docker Ingress object | null |
          | `nexusData.pvc.size`                                        |  The volume size to request for storing Nexus logs | 2Gi |
          | `nexusData.pvc.accessMode`                                  |  The persistent volume claim access mode | ReadWriteOnce |
          | `nexusData.storageClass.name`                               |  The name of the storage class to use for dynamically requesting that |
          | | storage be provisioned when using dynamic provisioning or to randomly select a pre-created persisted volume when using the Local Storage Operator. | nexusrepo-storage |
          | `nexusData.storageClass.reclaimPolicy`                      |  The reclaim policy for persistent volume's created by the storage class | Retain |
          | `nexusData.storageClass.enabled`                            |  Whether or not a storage class object should be created. | false |
          | `nexusData.storageClass.volumeBindingMode`                  |  It controls when volume binding and dynamic provisioning should occur | WaitForFirstConsumer |
          | `nexusData.storageClass.provisioner`                        |  The name of the volume provisioner | provisioner |
          | `nexusData.storageClass.parameters`                         |  The additional parameters for the storage class | {} |
          | `nexusData.volumeClaimTemplate.enabled`                           |  Whether or not volume should be requested using a claim template. |
          | | You should set this property to true when using dynamic volume provisioning (cloud deployments) |
          | | or if you're using Local Storage Operator to automatically create persistent volumes for locally attached disks (i.e. not root disk) | false |
          | `license.secretName | A name for the Kubernetes secret object which stores the base64 representation of your |
          | | Nexus Repository license specified via `license.fileContentsBase64` is stored | nexus-repo-license |
          | `license.fileContentsBase64 | A base64 representation of your Nexus Repository license | your_license_file_contents_in_base_64 |
          | `service.nexus.name`                                              |  The name of a kubernetes Service Object which allows access to |
          | | Nexus Repository's main HTTP port | nexus-repo-service |
          | `service.nexus.enabled`                                           |  Whether or not to create the Service object | false|
          | `service.nexus.type`                                              |  The type of the Kubernetes Service | "NodePort"|
          | `service.nexus.protocol`                                       |  The protocol  | TCP |
          | `service.nexus.port`                                   |  The port to listen for incoming requests | 80|
          | `service.nexus.targetPort`                                   |  The port to forward requests to | 8081 |
          | `service.docker.name`                                              |  The name of a kubernetes Service Object which allows access to a |
          | | docker repository within Nexus Repository | nexus-repo-docker-service |
          | `service.docker.enabled`                                           |  Whether or not to create a Kubernetes Service object for a given |
          | | docker repository within Nexus Repository | false |
          | `service.docker.type`                                              |  The type of the Kubernetes Service | "NodePort"|
          | `service.docker.protocol`                                       |  The protocol  | TCP |
          | `service.docker.port`                                   |  The port to listen for incoming requests | 9090 |
          | `service.docker.targetPort`                                   |  The port to forward requests to | 9090 |
        displayName: Nexus Repository HA Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - repository
        - sonatype
        links:
        - name: Nexus Repository Manager
          url: https://www.sonatype.com/product-nexus-repository
        maintainers:
        - email: support@sonatype.com
          name: Sonatype
        maturity: stable
        provider:
          name: Sonatype
        relatedImages:
        - registry.connect.redhat.com/sonatype/nexus-repository-ha-operator-bundle@sha256:3e7ab287f64398b2aa434d9cfd5d99e2e9cf2d40c2e9fa1b1418537807b7aeea
        - registry.connect.redhat.com/sonatype/nexus-repository-ha-operator-certified@sha256:99f30aa5ba8469d96de3efe69d1b21e73ff022172fc79144bba496d1119ec8a2
        - registry.connect.redhat.com/sonatype/nexus-repository-manager@sha256:fbad488ff2e368845473a11b4955992fe826a94811da3abf5cc3c6a33ff3974f
        version: 3.84.0-1
      entries:
      - name: nexus-repository-ha-operator-certified.v3.84.0-1
        version: 3.84.0-1
      name: stable
    defaultChannel: stable
    packageName: nexus-repository-ha-operator-certified
    provider:
      name: Sonatype
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://redhat.com
    name: pelorus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pelorus-operator.v0.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.pelorus.dora-metrics.io/v1alpha1",
                "kind": "Pelorus",
                "metadata": {
                  "name": "pelorus-sample"
                },
                "spec": {
                  "exporters": {
                    "global": {},
                    "instances": [
                      {
                        "app_name": "deploytime-exporter",
                        "exporter_type": "deploytime"
                      },
                      {
                        "app_name": "failuretime-exporter",
                        "enabled": false,
                        "exporter_type": "failure"
                      },
                      {
                        "app_name": "committime-exporter",
                        "exporter_type": "committime"
                      },
                      {
                        "app_name": "webhook-exporter",
                        "exporter_type": "webhook"
                      }
                    ]
                  },
                  "federate_openshift_monitoring": {
                    "enabled": false
                  },
                  "openshift_prometheus_basic_auth_pass": "changeme",
                  "openshift_prometheus_htpasswd_auth": "internal:{SHA}+pvrmeQCmtWmYVOZ57uuITVghrM=",
                  "prometheus_retention": "1y",
                  "prometheus_retention_size": "1GB",
                  "prometheus_storage": false,
                  "prometheus_storage_pvc_capacity": "2Gi",
                  "prometheus_storage_pvc_storageclass": "gp2"
                }
              }
            ]
          capabilities: Basic Install
          categories: |
            Modernization & Migration,Developer Tools,Monitoring,Integration & Delivery
          containerImage: quay.io/pelorus/pelorus-operator:0.0.9
          createdAt: "2024-05-27T20:04:01Z"
          description: |
            Tool that helps IT organizations measure their impact on the overall performance of their organization
          operatorframework.io/suggested-namespace: pelorus
          operators.operatorframework.io/builder: operator-sdk-v1.33.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/dora-metrics/pelorus/
          support: Pelorus Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Pelorus is the Schema for pelorus API to adopt instance to
              the requested workflow
            displayName: Pelorus
            kind: Pelorus
            name: peloruses.charts.pelorus.dora-metrics.io
            version: v1alpha1
        description: |
          Pelorus is a tool that helps IT organizations measure their impact on the overall performance of their organization. It does this by gathering metrics about team and organizational behaviors over time in some key areas of IT that have been shown to impact the value they deliver to the organization as a whole. Some of the key outcomes Pelorus can focus on are:

          - Software Delivery Performance
          - Product Quality and Sustainability
          - Customer experience

          For more background on the project you can read [@trevorquinn](https://github.com/trevorquinn)'s blog post on [Metrics Driven Transformation](https://www.openshift.com/blog/exploring-a-metrics-driven-approach-to-transformation).

          ## Software Delivery Performance as an outcome

          Currently, Pelorus functionality can capture proven metrics that measure Software Delivery Performance -- a significant outcome that IT organizations aim to deliver.

          Pelorus is a Grafana dashboard that can easily be deployed to an OpenShift cluster, and provides an organizational-level view of the [four critical measures of software delivery performance](https://blog.openshift.com/exploring-a-metrics-driven-approach-to-transformation/).

          ## Software Delivery Metrics Dashboard

          A short video describing each of metrics provided by Pelorus is available [here](https://www.youtube.com/watch?v=7-iB_KhUaQg).

          ## Demo

          [YouTube Video](https://www.youtube.com/watch?v=VPCOIfDcgso) with the Pelorus in action recorded during online Konveyor Community event.

          ## Documentation

          Pelorus documentation is available at [pelorus.readthedocs.io](https://pelorus.readthedocs.io/en/latest/).

          ## Contributing to Pelorus

          If you are interested in contributing to the Pelorus project, please review our Contribution guide which can be found in the [contribution guide](https://github.com/dora-metrics/pelorus/blob/master/CONTRIBUTING.md)

          ## Statement of Support

          Our support policy can be found in the [Upstream Support statement](https://github.com/dora-metrics/pelorus/blob/master/docs/UpstreamSupport.md)

          ## Code of Conduct
          Refer to dora-metrics's Code of Conduct [here](https://github.com/dora-metrics/pelorus/blob/master/CODE_OF_CONDUCT.md).

          ## License

          This repository is licensed under the terms of [Apache-2.0 License](https://raw.githubusercontent.com/dora-metrics/pelorus/master/LICENSE).
        displayName: Pelorus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - pelorus-operator
        - dora
        - dora metrics
        - pelorus
        - metrics
        - transformation
        - devops
        links:
        - name: Pelorus Docs
          url: https://pelorus.readthedocs.io/en/latest/
        - name: Pelorus Getting Started
          url: https://pelorus.readthedocs.io/en/latest/GettingStarted/Overview/
        - name: Pelorus GIT repository
          url: https://github.com/dora-metrics/pelorus/
        maintainers:
        - email: kgranger@redhat.com
          name: Kevin Granger
        - email: whayutin@redhat.com
          name: Wesley Hayutin
        - email: mpryc@redhat.com
          name: Michal Pryc
        - email: msouzaol@redhat.com
          name: Mateus Souza Oliveira
        - email: esauer@redhat.com
          name: Eric Sauer
        maturity: alpha
        provider:
          name: Red Hat
          url: https://redhat.com
        relatedImages:
        - quay.io/pelorus/pelorus-operator:0.0.9
        - quay.io/community-operator-pipeline-prod/pelorus-operator@sha256:f54c42a30675897a971cac278d5d8ea24edf3121570264c07cde04f11cc4e7a8
        version: 0.0.9
      entries:
      - name: pelorus-operator.v0.0.9
        version: 0.0.9
      - name: pelorus-operator.v0.0.8
        version: 0.0.8
      - name: pelorus-operator.v0.0.7
        version: 0.0.7
      - name: pelorus-operator.v0.0.6
        version: 0.0.6
      - name: pelorus-operator.v0.0.5
        version: 0.0.5
      - name: pelorus-operator.v0.0.4
        version: 0.0.4
      - name: pelorus-operator.v0.0.3
        version: 0.0.3
      - name: pelorus-operator.v0.0.2
        version: 0.0.2
      - name: pelorus-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: pelorus-operator
    provider:
      name: Red Hat
      url: https://redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-opensearchserverless-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-opensearchserverless-controller.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/opensearchserverless-controller:0.3.0
          createdAt: "2025-11-29T03:24:52Z"
          description: AWS OpenSearchServerless controller is a service controller
            for managing OpenSearchServerless resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Collection represents the state of an AWS opensearchserverless
              Collection resource.
            displayName: Collection
            kind: Collection
            name: collections.opensearchserverless.services.k8s.aws
            version: v1alpha1
          - description: SecurityPolicy represents the state of an AWS opensearchserverless
              SecurityPolicy resource.
            displayName: SecurityPolicy
            kind: SecurityPolicy
            name: securitypolicies.opensearchserverless.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon OpenSearchServerless resources in AWS from within your Kubernetes cluster.

          **About Amazon OpenSearchServerless**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon OpenSearchServerless
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - opensearchserverless
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon OpenSearchServerless Developer Resources
          url: https://aws.amazon.com/OpenSearchServerless/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: opensearchserverless maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/opensearchserverless-controller:0.3.0
        - quay.io/community-operator-pipeline-prod/ack-opensearchserverless-controller@sha256:f04fb9b1d65e4582edffdbbee0cde8853660138ebee9e5b87d66bf3615dd0eb8
        version: 0.3.0
      entries:
      - name: ack-opensearchserverless-controller.v0.3.0
        version: 0.3.0
      - name: ack-opensearchserverless-controller.v0.2.2
        version: 0.2.2
      - name: ack-opensearchserverless-controller.v0.2.1
        version: 0.2.1
      - name: ack-opensearchserverless-controller.v0.2.0
        version: 0.2.0
      - name: ack-opensearchserverless-controller.v0.1.2
        version: 0.1.2
      - name: ack-opensearchserverless-controller.v0.1.1
        version: 0.1.1
      - name: ack-opensearchserverless-controller.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: ack-opensearchserverless-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Community
      provider-url: ""
    name: integrity-shield-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: integrity-shield-operator.v0.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": true,
                    "image": "quay.io/open-cluster-management/integrity-shield-observer",
                    "imagePullPolicy": "Always",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "provenanece": true,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "resultDetailConfigKey": "config.yaml",
                    "resultDetailConfigName": "verify-resource-result",
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  resp.status_code == 200\n  result := json.unmarshal(resp.raw_body)\n  result.allow == false\n  not is_detect_mode\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"tls_insecure_skip_verify\": true\n  })\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "requestHandlerConfig": "defaultConstraintAction:\n  audit:\n    inform: true\n  admissionControl:\n    enforce: false\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/open-cluster-management/integrity-shield-api",
                    "imagePullPolicy": "Always",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/open-cluster-management/integrity-shield-operator:0.3.0
          createdAt: "2021-10-14T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.

          [K8s Integrity Shield](https://github.com/open-cluster-management/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.

          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Detect (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster

          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).

          ## Preparations before installation

          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).


          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.

          If you want to change the settings such as default run mode (detection/enforcement) or audit interval,  please check [here](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).

          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-7b7f768bf7-fhrpg                           1/1     Running   0          20s
          integrity-shield-observer-5bc66f75f7-tn8fw                      1/1     Running   0          25s
          integrity-shield-operator-controller-manager-65b7fb58f7-j25zd   2/2     Running   0          3h5m
          ```

          After installation, you can protect Kubernetes resources by following this [document](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).

          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:

          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)

          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/open-cluster-management/integrity-shield
        - name: Operator Documentation
          url: https://github.com/open-cluster-management/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/open-cluster-management/integrity-shield-operator:0.3.0
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:11edce56874ff1ee666752ec5fa521f3f6ae78c52cf1f289ceb97a86e6c083aa
        version: 0.3.0
      entries:
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.0
    - currentCSV: integrity-shield-operator.v0.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": true,
                    "image": "quay.io/open-cluster-management/integrity-shield-observer",
                    "imagePullPolicy": "Always",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "resultDetailConfigKey": "config.yaml",
                    "resultDetailConfigName": "verify-resource-result",
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  resp.status_code == 200\n  result := json.unmarshal(resp.raw_body)\n  result.allow == false\n  not is_detect_mode\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"tls_insecure_skip_verify\": true\n  })\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "requestHandlerConfig": "defaultConstraintAction:\n  mode: detect\n  admissionOnly: false\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  - kind: ConfigMap\n    name: openshift-service-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/open-cluster-management/integrity-shield-api",
                    "imagePullPolicy": "Always",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/open-cluster-management/integrity-shield-operator:0.3.1
          createdAt: "2021-10-22T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/open-cluster-management/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.

          [K8s Integrity Shield](https://github.com/open-cluster-management/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.

          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Detect (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster

          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).

          ## Preparations before installation

          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).


          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.

          If you want to change the settings such as default run mode (detection/enforcement) or audit interval,  please check [here](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).

          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-7b7f768bf7-fhrpg                           1/1     Running   0          20s
          integrity-shield-observer-5bc66f75f7-tn8fw                      1/1     Running   0          25s
          integrity-shield-operator-controller-manager-65b7fb58f7-j25zd   2/2     Running   0          3h5m
          ```

          After installation, you can protect Kubernetes resources by following this [document](https://github.com/open-cluster-management/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).

          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:

          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)

          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/open-cluster-management/integrity-shield
        - name: Operator Documentation
          url: https://github.com/open-cluster-management/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/open-cluster-management/integrity-shield-operator:0.3.1
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:5e4c319ce871a0dcbab7fff23325e6233c9dbcb2592fdeb1a9ba7c57ac2a63b2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.3.1
      entries:
      - name: integrity-shield-operator.v0.3.1
        version: 0.3.1
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.1
    - currentCSV: integrity-shield-operator.v0.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": true,
                    "image": "quay.io/stolostron/integrity-shield-observer",
                    "imagePullPolicy": "IfNotPresent",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "resultDetailConfigKey": "config.yaml",
                    "resultDetailConfigName": "verify-resource-result",
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  should_be_denied(resp)\n  not is_detect_mode\n  result := get_result(resp)\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"timeout\": \"2500ms\",\n    \"raise_error\": false,\n    \"tls_ca_cert\": REPLACE_WITH_CA_CERT\n  })\n}\n\n# get decision result from API response\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  not is_null(raw_body)\n  result := json.unmarshal(raw_body)\n}\n# if error, return it as result\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  is_null(raw_body)\n  error_msg := object.get(resp, \"error\", \"\")\n  result := {\"http_error\":error_msg}\n}\n\n# if API response is null, deny\nshould_be_denied(resp) {\n  is_null(resp)\n}\n\n# if API response has status_code other than 200, deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  resp.status_code != 200\n}\n\n# if decision result is \"allow == false\" or not set, then deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  result := get_result(resp)\n  allow := object.get(result, \"allow\", false)\n  allow == false\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "reporter": {
                    "image": "quay.io/stolostron/integrity-shield-reporter",
                    "imagePullPolicy": "IfNotPresent",
                    "intervalSeconds": "10",
                    "name": "integrity-shield-reporter",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "requestHandlerConfig": "defaultConstraintAction:\n  mode: inform\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\ndecisionReporterConfig:\n  enabled: true\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  - kind: ConfigMap\n    name: openshift-service-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/stolostron/integrity-shield-api",
                    "imagePullPolicy": "IfNotPresent",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/stolostron/integrity-shield-operator:0.3.2
          createdAt: "2022-01-25T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.15.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.
          [K8s Integrity Shield](https://github.com/stolostron/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.
          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Inform (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster
          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).
          ## Preparations before installation
          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).
          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.
          If you want to change the settings such as default run mode (inform/enforce) or audit interval,  please check [here](https://github.com/stolostron/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).
          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-5799f69896-zbcjs                           2/2     Running   0          88s
          integrity-shield-observer-757f58f7d7-7pf5h                      1/1     Running   0          55s
          integrity-shield-operator-controller-manager-6f94d7d684-dg5bt   2/2     Running   0          4m27s
          ```
          After installation, you can protect Kubernetes resources by following this [document](https://github.com/stolostron/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).
          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:
          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)
          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/stolostron/integrity-shield
        - name: Operator Documentation
          url: https://github.com/stolostron/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:d86bb21fdeec35b1fc9789023a558750da76e036e0790dcfce97dcd137dcb6fb
        - quay.io/stolostron/integrity-shield-operator:0.3.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.3.2
      entries:
      - name: integrity-shield-operator.v0.3.2
        version: 0.3.2
      - name: integrity-shield-operator.v0.3.1
        version: 0.3.1
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.2
    - currentCSV: integrity-shield-operator.v0.3.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apis.integrityshield.io/v1",
                "kind": "IntegrityShield",
                "metadata": {
                  "finalizers": [
                    "cleanup.finalizers.integrityshield.io"
                  ],
                  "name": "integrity-shield"
                },
                "spec": {
                  "affinity": {},
                  "labels": {
                    "app": "ishield-api"
                  },
                  "observer": {
                    "enabled": true,
                    "exportDetailResult": false,
                    "image": "quay.io/stolostron/integrity-shield-observer",
                    "imagePullPolicy": "IfNotPresent",
                    "interval": "5",
                    "logLevel": "info",
                    "name": "integrity-shield-observer",
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-observer"
                    }
                  },
                  "rego": "package integrityshieldcheck\nviolation[{\"msg\": msg}] {\n  not is_allowed_kind\n  not is_excluded\n  is_create_or_update\n  ishield_input := {\"parameters\":input.parameters, \"request\":input.review}\n  reqdata := json.marshal(ishield_input)\n  url := \"https://integrity-shield-api.REPLACE_WITH_SERVER_NAMESPSCE.svc:8123/api/request\"\n  resp := http_post(url, reqdata)\n  should_be_denied(resp)\n  not is_detect_mode\n  result := get_result(resp)\n  msg := sprintf(\"denied; %v\", [result])\n}\n\nhttp_post(url, postdata) = resp {\n  resp := http.send({\n    \"url\": url,\n    \"method\": \"POST\",\n    \"headers\": {\n      \"Accept\": \"application/json\",\n      \"Content-type\": \"application/json\",\n    },\n    \"raw_body\": postdata,\n    \"timeout\": \"2500ms\",\n    \"raise_error\": false,\n    \"tls_ca_cert\": REPLACE_WITH_CA_CERT\n  })\n}\n\n# get decision result from API response\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  not is_null(raw_body)\n  result := json.unmarshal(raw_body)\n}\n# if error, return it as result\nget_result(resp) = result {\n  raw_body := object.get(resp, \"raw_body\", null)\n  is_null(raw_body)\n  error_msg := object.get(resp, \"error\", \"\")\n  result := {\"http_error\":error_msg}\n}\n\n# if API response is null, deny\nshould_be_denied(resp) {\n  is_null(resp)\n}\n\n# if API response has status_code other than 200, deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  resp.status_code != 200\n}\n\n# if decision result is \"allow == false\" or not set, then deny\nshould_be_denied(resp) {\n  not is_null(resp)\n  result := get_result(resp)\n  allow := object.get(result, \"allow\", false)\n  allow == false\n}\n\n# request check\nis_create_or_update { is_create }\nis_create_or_update { is_update }\nis_create { input.review.operation == \"CREATE\" }\nis_update { input.review.operation == \"UPDATE\" }\n\n# shield config: allow\nis_allowed_kind { skip_kinds[_].kind == input.review.kind.kind }\n# shield config: inScopeNamespaceSelector\nis_excluded { exclude_namespaces[_] = input.review.namespace}\n\n# detect mode\nis_detect_mode { enforce_mode == \"detect\" }\n\n################### \n# Default setting #\n###################\n\n# Mode whether to deny a invalid request [enforce/detect]\nenforce_mode = \"enforce\"\n\n# kinds to be skipped\nskip_kinds = [\n          {\n            \"kind\": \"Event\"\n          },\n          {\n            \"kind\": \"Lease\"\n          },\n          {\n            \"kind\": \"Endpoints\"\n          },\n          {\n            \"kind\": \"TokenReview\"\n          },\n          {\n            \"kind\": \"SubjectAccessReview\"\n          },\n          {\n            \"kind\": \"SelfSubjectAccessReview\"\n          }\n        ]\n\n# exclude namespaces\nexclude_namespaces = [\n                      \"kube-node-lease\",\n                      \"kube-public\",\n                      \"kube-storage-version-migrator-operator\",\n                      \"kube-system\",\n                      \"open-cluster-management\",\n                      \"open-cluster-management-hub\",\n                      \"open-cluster-management-agent\",\n                      \"open-cluster-management-agent-addon\",\n                      \"openshift\",\n                      \"openshift-apiserver\",\n                      \"openshift-apiserver-operator\",\n                      \"openshift-authentication\",\n                      \"openshift-authentication-operator\",\n                      \"openshift-cloud-credential-operator\",\n                      \"openshift-cluster-csi-drivers\",\n                      \"openshift-cluster-machine-approver\",\n                      \"openshift-cluster-node-tuning-operator\",\n                      \"openshift-cluster-samples-operator\",\n                      \"openshift-cluster-storage-operator\",\n                      \"openshift-cluster-version\",\n                      \"openshift-compliance\",\n                      \"openshift-config\",\n                      \"openshift-config-managed\",\n                      \"openshift-config-operator\",\n                      \"openshift-console\",\n                      \"openshift-console-operator\",\n                      \"openshift-console-user-settings\",\n                      \"openshift-controller-manager\",\n                      \"openshift-controller-manager-operator\",\n                      \"openshift-dns\",\n                      \"openshift-dns-operator\",\n                      \"openshift-etcd\",\n                      \"openshift-etcd-operator\",\n                      \"openshift-gatekeeper-system\",\n                      \"openshift-image-registry\",\n                      \"openshift-infra\",\n                      \"openshift-ingress\",\n                      \"openshift-ingress-canary\",\n                      \"openshift-ingress-operator\",\n                      \"openshift-insights\",\n                      \"openshift-kni-infra\",\n                      \"openshift-kube-apiserver\",\n                      \"openshift-kube-apiserver-operator\",\n                      \"openshift-kube-controller-manager\",\n                      \"openshift-kube-controller-manager-operator\",\n                      \"openshift-kube-scheduler\",\n                      \"openshift-kube-scheduler-operator\",\n                      \"openshift-kube-storage-version-migrator\",\n                      \"openshift-kube-storage-version-migrator-operator\",\n                      \"openshift-kubevirt-infra\",\n                      \"openshift-machine-api\",\n                      \"openshift-machine-config-operator\",\n                      \"openshift-marketplace\",\n                      \"openshift-monitoring\",\n                      \"openshift-multus\",\n                      \"openshift-network-diagnostics\",\n                      \"openshift-network-operator\",\n                      \"openshift-node\",\n                      \"openshift-oauth-apiserver\",\n                      \"openshift-openstack-infra\",\n                      \"openshift-operators\",\n                      \"openshift-operator-lifecycle-manager\",\n                      \"openshift-ovirt-infra\",\n                      \"openshift-ovn-kubernetes\",\n                      \"openshift-sdn\",\n                      \"openshift-service-ca\",\n                      \"openshift-service-ca-operator\",\n                      \"openshift-user-workload-monitoring\",\n                      \"openshift-vsphere-infra\"\n                  ]\n",
                  "reporter": {
                    "image": "quay.io/stolostron/integrity-shield-reporter",
                    "imagePullPolicy": "IfNotPresent",
                    "intervalSeconds": "10",
                    "name": "integrity-shield-reporter",
                    "resources": {
                      "limits": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "requestHandlerConfig": "defaultConstraintAction:\n  mode: inform\nsideEffect: \n  createDenyEvent: true\nlog:\n  level: info\n  manifestSigstoreLogLevel: info\n  format: json\ndecisionReporterConfig:\n  enabled: true\nrequestFilterProfile: \n  skipObjects:\n  - kind: ConfigMap\n    name: kube-root-ca.crt\n  - kind: ConfigMap\n    name: openshift-service-ca.crt\n  ignoreFields:\n  - fields:\n    - spec.host\n    objects:\n    - kind: Route\n  - fields:\n    - metadata.namespace\n    objects:\n    - kind: ClusterServiceVersion\n  - fields:\n    - metadata.labels.app.kubernetes.io/instance\n    - metadata.managedFields.*\n    - metadata.resourceVersion\n    - metadata.selfLink\n    - metadata.annotations.control-plane.alpha.kubernetes.io/leader\n    - metadata.annotations.kubectl.kubernetes.io/last-applied-configuration\n    - metadata.finalizers*\n    - metadata.annotations.namespace\n    - metadata.annotations.deprecated.daemonset.template.generation\n    - metadata.creationTimestamp\n    - metadata.uid\n    - metadata.generation\n    - status\n    - metadata.annotations.deployment.kubernetes.io/revision\n    - metadata.annotations.cosign.sigstore.dev/imageRef\n    - metadata.annotations.cosign.sigstore.dev/bundle\n    - metadata.annotations.cosign.sigstore.dev/message\n    - metadata.annotations.cosign.sigstore.dev/certificate\n    - metadata.annotations.cosign.sigstore.dev/signature\n    objects:\n    - name: '*'\n  - fields:\n    - secrets.*.name\n    - imagePullSecrets.*.name\n    objects:\n    - kind: ServiceAccount\n  - fields:\n    - spec.ports.*.nodePort\n    - spec.clusterIP\n    - spec.clusterIPs.0\n    objects:\n    - kind: Service\n  - fields:\n    - metadata.labels.olm.api.*\n    - metadata.labels.operators.coreos.com/*\n    - metadata.annotations.*\n    - spec.install.spec.deployments.*.spec.template.spec.containers.*.resources.limits.cpu\n    - spec.cleanup.enabled\n    objects:\n    - kind: ClusterServiceVersion\n  skipUsers:\n  - users: \n    - system:admin\n    - system:apiserver\n    - system:kube-scheduler\n    - system:kube-controller-manager\n    - system:serviceaccount:kube-system:generic-garbage-collector\n    - system:serviceaccount:kube-system:attachdetach-controller\n    - system:serviceaccount:kube-system:certificate-controller\n    - system:serviceaccount:kube-system:clusterrole-aggregation-controller\n    - system:serviceaccount:kube-system:cronjob-controller\n    - system:serviceaccount:kube-system:disruption-controller\n    - system:serviceaccount:kube-system:endpoint-controller\n    - system:serviceaccount:kube-system:horizontal-pod-autoscaler\n    - system:serviceaccount:kube-system:ibm-file-plugin\n    - system:serviceaccount:kube-system:ibm-keepalived-watcher\n    - system:serviceaccount:kube-system:ibmcloud-block-storage-plugin\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:namespace-controller\n    - system:serviceaccount:kube-system:node-controller\n    - system:serviceaccount:kube-system:job-controller\n    - system:serviceaccount:kube-system:pod-garbage-collector\n    - system:serviceaccount:kube-system:pv-protection-controller\n    - system:serviceaccount:kube-system:pvc-protection-controller\n    - system:serviceaccount:kube-system:replication-controller\n    - system:serviceaccount:kube-system:resourcequota-controller\n    - system:serviceaccount:kube-system:service-account-controller\n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ControllerRevision\n    - kind: Pod\n    users: \n    - system:serviceaccount:kube-system:daemon-set-controller\n  - objects: \n    - kind: Pod\n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:persistent-volume-binder\n  - objects: \n    - kind: ReplicaSet\n    users: \n    - system:serviceaccount:kube-system:deployment-controller\n  - objects: \n    - kind: Pod\n    users:  \n    - system:serviceaccount:kube-system:replicaset-controller\n  - objects: \n    - kind: PersistentVolumeClaim\n    users: \n    - system:serviceaccount:kube-system:statefulset-controller\n  - objects: \n    - kind: ServiceAccount\n    users: \n    - system:kube-controller-manager\n  - objects: \n    - kind: EndpointSlice\n    users: \n    - system:serviceaccount:kube-system:endpointslice-controller\n  - objects: \n    - kind: Secret\n    users: \n    - system:kube-controller-manager\n  - users: \n    - system:serviceaccount:openshift-marketplace:marketplace-operator\n    - system:serviceaccount:openshift-monitoring:cluster-monitoring-operator\n    - system:serviceaccount:openshift-network-operator:default\n    - system:serviceaccount:openshift-monitoring:prometheus-operator\n    - system:serviceaccount:openshift-cloud-credential-operator:default\n    - system:serviceaccount:openshift-machine-config-operator:default\n    - system:serviceaccount:openshift-infra:namespace-security-allocation-controller\n    - system:serviceaccount:openshift-cluster-version:default\n    - system:serviceaccount:openshift-authentication-operator:authentication-operator\n    - system:serviceaccount:openshift-apiserver-operator:openshift-apiserver-operator\n    - system:serviceaccount:openshift-kube-scheduler-operator:openshift-kube-scheduler-operator\n    - system:serviceaccount:openshift-kube-controller-manager-operator:kube-controller-manager-operator\n    - system:serviceaccount:openshift-controller-manager:openshift-controller-manager-sa\n    - system:serviceaccount:openshift-controller-manager-operator:openshift-controller-manager-operator\n    - system:serviceaccount:openshift-kube-apiserver-operator:kube-apiserver-operator\n    - system:serviceaccount:openshift-sdn:sdn-controller\n    - system:serviceaccount:openshift-machine-api:cluster-autoscaler-operator\n    - system:serviceaccount:openshift-machine-api:machine-api-operator\n    - system:serviceaccount:openshift-machine-config-operator:machine-config-controller\n    - system:serviceaccount:openshift-machine-api:machine-api-controllers\n    - system:serviceaccount:openshift-cluster-storage-operator:csi-snapshot-controller-operator\n    - system:serviceaccount:openshift-kube-controller-manager:localhost-recovery-client\n    - system:serviceaccount:openshift-kube-storage-version-migrator-operator:kube-storage-version-migrator-operator\n    - system:serviceaccount:openshift-etcd-operator:etcd-operator\n    - system:serviceaccount:openshift-service-ca:service-ca\n    - system:serviceaccount:openshift-config-operator:openshift-config-operator\n    - system:serviceaccount:openshift-kube-apiserver:localhost-recovery-client\n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects:\n    - namespace: openshift-service-ca, openshift-network-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:configmap-cabundle-injector-sa\n  - objects: \n    - namespace: openshift-service-ca-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca-operator:service-ca-operator\n  - objects: \n    - namespace: openshift-service-catalog-controller-manager-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-controller-manager-operator:openshift-service-catalog-controller-manager-operator\n  - objects: \n    - namespace: openshift-console-operator, openshift-console\n    users: \n    - system:serviceaccount:openshift-console-operator:console-operator\n  - objects: \n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:apiservice-cabundle-injector-sa\n    - namespace: openshift-service-ca\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-ca:service-serving-cert-signer-sa\n  - objects: \n    - namespace: openshift-service-catalog-apiserver-operator\n      kind: ConfigMap\n    users: \n    - system:serviceaccount:openshift-service-catalog-apiserver-operator:openshift-service-catalog-apiserver-operator\n  - objects: \n    - namespace: openshift-operator-lifecycle-manager\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - namespace: openshift-cluster-node-tuning-operator\n      kind: ConfigMap,DaemonSet\n    users: \n    - system:serviceaccount:openshift-cluster-node-tuning-operator:cluster-node-tuning-operator\n  - objects: \n    - namespace: openshift\n      kind: Secret\n    users: \n    - system:serviceaccount:openshift-cluster-samples-operator:cluster-samples-operator\n  - objects: \n    - namespace: openshift-ingress\n      kind: Deployment\n    users: \n    - system:serviceaccount:openshift-ingress-operator:ingress-operator\n  - objects: \n    - kind: ServiceAccount, Secret\n    users: \n    - system:serviceaccount:openshift-infra:serviceaccount-pull-secrets-controller\n  - objects: \n    - namespace: openshift-marketplace\n      kind: Pod\n    users: \n    - system:node:*\n  - objects: \n    - kind: ServiceAccount, InstallPlan, OperatorGroup, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n  - objects: \n    - kind: InstallPlan, Role, RoleBinding, Deployment\n    users: \n    - system:serviceaccount:openshift-operator-lifecycle-manager:olm-operator-serviceaccount\n",
                  "requestHandlerConfigKey": "config.yaml",
                  "requestHandlerConfigName": "request-handler-config",
                  "security": {
                    "observerRole": "integrity-shield-observer-role",
                    "observerRoleBinding": "integrity-shield-observer-rolebinding",
                    "observerServiceAccountName": "integrity-shield-observer-sa",
                    "podSecurityPolicyName": "integrity-shield-psp",
                    "role": "integrity-shield-role",
                    "roleBinding": "integrity-shield-rolebinding",
                    "securityContext": {},
                    "serviceAccountName": "integrity-shield-sa"
                  },
                  "shieldApi": {
                    "image": "quay.io/stolostron/integrity-shield-api",
                    "imagePullPolicy": "IfNotPresent",
                    "name": "integrity-shield-api",
                    "port": 8080,
                    "resources": {
                      "limits": {
                        "cpu": "250m",
                        "memory": "256Mi"
                      }
                    },
                    "selector": {
                      "app": "integrity-shield-api"
                    }
                  },
                  "shieldApiServiceName": "integrity-shield-api",
                  "shieldApiServicePort": 8123,
                  "shieldApiTlsSecretName": "integrity-shield-api-tls",
                  "useGatekeeper": true
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          certified: "false"
          containerImage: quay.io/stolostron/integrity-shield-operator:0.3.3
          createdAt: "2022-03-18T18:00:00Z"
          description: K8s Integrity Shield is a tool for built-in preventive integrity
            control for regulated cloud workloads.
          operators.operatorframework.io/builder: operator-sdk-v1.15.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/stolostron/integrity-shield
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IntegrityShield is the Schema for the integrityshields API
            displayName: Integrity Shield
            kind: IntegrityShield
            name: integrityshields.apis.integrityshield.io
            version: v1
        description: |-
          Kubernetes resources are represented as YAML files, which are applied to clusters when you create and update the resource. The YAML content is designed carefully to achieve the application desired state and should not be tampered with. If the YAML content is modified maliciously or accidentally, and applied to a cluster without notice, the cluster moves to an unexpected state.
          [K8s Integrity Shield](https://github.com/stolostron/integrity-shield) provides preventive control for enforcing signature verification for any requests to create or update resources. This operator supports the installation and management of K8s Integrity Shield on cluster.
          Two modes are selectively enabled on your cluster.
          - Enforce (Admission Control): Block to deploy unauthorized Kubernetes resources. K8s Integrity Shield works with [OPA/Gatekeeper](https://github.com/open-policy-agent/gatekeeper) to enable admission control based on signature verification for Kubernetes resources.
          - Inform (Continuous Monitoring): monitor Kubernetes resource integrity and report if unauthorized Kubernetes resources are deployed on cluster
          X509, PGP and Sigstore signing are supported for singing Kubernetes manifest YAML. K8s Integrity Shield supports Sigstore signing by using [k8s-manifest-sigstore](https://github.com/sigstore/k8s-manifest-sigstore).
          ## Preparations before installation
          OPA/Gatekeeper should be deployed before installing K8s Integrity Shield.
          The installation instructions to deploy OPA/Gatekeeper components is [here](https://open-policy-agent.github.io/gatekeeper/website/docs/install/).
          ## Installation
          Install K8s Integrity Shield Operator by following the instruction after clicking Install button at the top right. Then you can create the operator Custom Resource `IntegrityShield` to complete installation.
          If you want to change the settings such as default run mode (inform/enforce) or audit interval,  please check [here](https://github.com/stolostron/integrity-shield/blob/master/docs/README_ISHIELD_OPERATOR_CR.md).
          To verify that installation was completed successfully,
          run the following command.
          The following three pods will be installed with default CR.
          ```
          $ kubectl get pod -n integrity-shield-operator-system
          NAME                                                            READY   STATUS    RESTARTS   AGE
          integrity-shield-api-5799f69896-zbcjs                           2/2     Running   0          88s
          integrity-shield-observer-757f58f7d7-7pf5h                      1/1     Running   0          55s
          integrity-shield-operator-controller-manager-6f94d7d684-dg5bt   2/2     Running   0          4m27s
          ```
          After installation, you can protect Kubernetes resources by following this [document](https://github.com/stolostron/integrity-shield/blob/master/docs/README_GETTING-STARTED-TUTORIAL.md).
          ## Supported Versions
          ### Platform
          K8s Integrity Shield can be deployed with the operator. We have verified the feasibility on the following platforms:
          - [RedHat OpenShift 4.7.1 and 4.9.0](https://www.openshift.com)
          - [Kuberenetes v1.19.7 and v1.21.1](https://kubernetes.io)
          ### OPA/Gatekeeper
          - [gatekeeper-operator v0.2.0](https://github.com/open-policy-agent/gatekeeper)
          - [gatekeeper v3.5.2 and v3.6.0](https://github.com/open-policy-agent/gatekeeper)
        displayName: K8s Integrity Shield
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - integrity
        links:
        - name: Integrity Shield Operator
          url: https://github.com/stolostron/integrity-shield
        - name: Operator Documentation
          url: https://github.com/stolostron/integrity-shield/tree/master/docs
        maintainers:
        - email: acm-contact@redhat.com
          name: Community
        maturity: alpha
        provider:
          name: Community
        relatedImages:
        - quay.io/openshift-community-operators/integrity-shield-operator@sha256:7d94521a5cbdd34f8307653a3e1b596ec86415b2165fabdbabc8ed8bed35473d
        - quay.io/stolostron/integrity-shield-operator:0.3.3
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        version: 0.3.3
      entries:
      - name: integrity-shield-operator.v0.3.3
        version: 0.3.3
      - name: integrity-shield-operator.v0.3.2
        version: 0.3.2
      - name: integrity-shield-operator.v0.3.1
        version: 0.3.1
      - name: integrity-shield-operator.v0.3.0
        version: 0.3.0
      name: alpha-0.3.3
    defaultChannel: alpha-0.3.3
    packageName: integrity-shield-operator
    provider:
      name: Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhacs-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhacs-operator.v3.74.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
          createdAt: "2024-02-06T23:06:13.271846+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.73.0 < 3.74.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2c0840f4573373a19eb8c9a26501138ef0e76efbd508fd69a6260e78194d86c8
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:71b9fdcaf4cc761b1499be8e6ccff6c463cc6b9856e9deb1f93baad45ea59eb0
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:a108e9a7967001e0bdfed7124b01e9a3dbf1dec308444762973030aec57e1d5a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:74624389ac3261ed699b1f64e5717353da68895709d30a011bc8813b61a4a249
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:22bf00e1457b4a9e63901892aa4375a1d4a9d1b2c067c1f054d918a24b222b10
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:264102d4bca7d9bd384dc04e5bbff1a7b43343ea8e59cc79047cdda50a3f299f
        version: 3.74.9
      deprecation:
        message: The `latest` channel is no longer supported. Use the `stable` channel.
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.9
        version: 3.74.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.8
        version: 3.74.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.7
        version: 3.74.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.6
        version: 3.74.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.5
        version: 3.74.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.4
        version: 3.74.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.3
        version: 3.74.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.2
        version: 3.74.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.1
        version: 3.74.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.0
        version: 3.74.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.5
        version: 3.73.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.4
        version: 3.73.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.3
        version: 3.73.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.2
        version: 3.73.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.1
        version: 3.73.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.0
        version: 3.73.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: latest
    - currentCSV: rhacs-operator.v3.62.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:56905c2e7df0e29ca2b6301cd81b4f9bbe02b483374708f7f7da219a4b29428d
          createdAt: "2021-08-13T17:10:01.410173+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.61.0 < 3.62.1'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.5.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main page before deploying, or consult the RHACS
              documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create an cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead. If you want to deploy Secured Cluster Service in another namespace, additionally pass the `-n <namespace>` flag.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:e30f7835cf52dbce9afdbaf55e5a93d8baf9c4b3a3ae488d1d42c1adba7f46af
        - registry.redhat.io/rh-acs/collector@sha256:558c0dabdc52efaee7bc889ef397ac2ac30f7c54562c2cc0070d0ef991a8b31b
        - registry.redhat.io/rh-acs/collector@sha256:98cfab15684506f1d0978eb701e8de478d91fc5bda3013ffd3b436aa95f07cc0
        - registry.redhat.io/rh-acs/main@sha256:9932304bb62b084ee1ae7e75bb21d6dfb737260c851f2d8daf05082f79230c66
        - registry.redhat.io/rh-acs/scanner-db@sha256:ff877f503e08ecca0ce7a7d8db760b2e4004e8e8ae2f27fb9b9c00a05b58c93a
        - registry.redhat.io/rh-acs/scanner@sha256:266a575c2547a3223890e8b73db0f14d69dc5a22217c7e4e3dc79644e6ab0258
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:7fd7595e6a61352088f9a3a345be03a6c0b9caa0bbc5ddd8c61ba1d38b2c3b8e
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:56905c2e7df0e29ca2b6301cd81b4f9bbe02b483374708f7f7da219a4b29428d
        version: 3.62.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.62
    - currentCSV: rhacs-operator.v3.63.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:d79bac8f5cab0711ffa8e35ea7290b59ee0554b990e4a919f4b0bc0aa93578fc
          createdAt: "2021-07-26T22:02:58.261433+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.62.0 < 3.63.0'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.5.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:2d9da26bac816af608979a034a8cdc24b51e04f0807e177fc114f55c0e633650
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:d79bac8f5cab0711ffa8e35ea7290b59ee0554b990e4a919f4b0bc0aa93578fc
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2f322231af2402ac09788e96ca836c209797f8c36a8589f0739ca18678d206e4
        - registry.redhat.io/rh-acs/collector@sha256:0332b5accbaf819911082087b8f689400332cc40e30e74e8839f9555d42bf8f0
        - registry.redhat.io/rh-acs/collector@sha256:6d67c6231d74e5de4f382abd445493796a04a0ed7dfda0695b699a1e56e34dd2
        - registry.redhat.io/rh-acs/main@sha256:839f642faa364e3e4c330e965a7e50728a00fd349a388cb514ca64439659ee78
        - registry.redhat.io/rh-acs/scanner-db@sha256:3a3cce6b39bd878eb369800ea9cd1c4f4549fce486754b5106e88d361da93713
        - registry.redhat.io/rh-acs/scanner@sha256:6152a6f5f76b3a14eda37f5adac1007a4e4b6df933dfec282c25efb3bc0116fb
        version: 3.63.0
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.63
    - currentCSV: rhacs-operator.v3.64.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fa478167f2f738f244bed6a06450679be73f8464c40f86acde4ffd390505692b
          createdAt: "2021-09-22T05:10:01.286657+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.63.0 < 3.64.2'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0cacd00c0a147cc8295138565ef2dc2ddbd9ad1fb25f6be817719a75ea4c6448
        - registry.redhat.io/rh-acs/collector@sha256:2b3a8bd3af62516a6714fe612e5fdc0433b91d873182e290d3ddc2b32ce291f0
        - registry.redhat.io/rh-acs/collector@sha256:3eb099da081cf208d46be5ccfa7b5e9ac0e2cad49f127fa4db91e49e3f26db42
        - registry.redhat.io/rh-acs/main@sha256:6aeb2223124540ac217c38b016dea99d770ab897dde4906a821d8776d91ea03d
        - registry.redhat.io/rh-acs/scanner-db@sha256:67e81bf896267b7acab8cb6755cde552173de4f0881c38eaca8e491bd926cc53
        - registry.redhat.io/rh-acs/scanner@sha256:8b7121bce8f9c7133d29245ebb265a4b8f9831a66a57f11b2d68b9b8b5cf79cc
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:5187b04f8010a274d6bc017fc82f1b00d886124e520c1b7de8b4da8cd2f37bc0
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fa478167f2f738f244bed6a06450679be73f8464c40f86acde4ffd390505692b
        version: 3.64.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.64
    - currentCSV: rhacs-operator.v3.65.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:229c7e5f967c70dfbc3cf638d521267ea6acf875b055499dfd30cb19c0b1f69c
          createdAt: "2021-09-21T13:26:28.711610+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.64.0 < 3.65.1'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rh-acs/collector@sha256:2b3a8bd3af62516a6714fe612e5fdc0433b91d873182e290d3ddc2b32ce291f0
        - registry.redhat.io/rh-acs/collector@sha256:3eb099da081cf208d46be5ccfa7b5e9ac0e2cad49f127fa4db91e49e3f26db42
        - registry.redhat.io/rh-acs/main@sha256:e672ef9a1239065f8cf0f331757861fea082e971a9e9760d1e65795f399cbde1
        - registry.redhat.io/rh-acs/scanner-db@sha256:20f258500ac2ba4e626df92dbcd193cf7ab8687ac251591be2442b8a46871835
        - registry.redhat.io/rh-acs/scanner@sha256:bfe9b2205bfca6aebed14827b4bda098bfad574e67ffa967ad339543062200fe
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:d3bf33899ca8b199ca8782978618ca343164e43fd0ae2ac6a0cfbf697efa6428
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:229c7e5f967c70dfbc3cf638d521267ea6acf875b055499dfd30cb19c0b1f69c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0cacd00c0a147cc8295138565ef2dc2ddbd9ad1fb25f6be817719a75ea4c6448
        version: 3.65.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.65
    - currentCSV: rhacs-operator.v3.66.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:10cdb0ff3e67b65737cde420536494bd84c2b7ccf65192bbed2eb43eaed66a41
          createdAt: "2021-10-20T16:38:38.091764+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.65.0 < 3.66.1'
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:bd74f0b95ff2881faf6eb4520feecd067b69a759f09bbfecd467447ce2a2a25e
        - registry.redhat.io/rh-acs/collector@sha256:5673c27554a71502e06e08945a4424c6ce5da27f489854f3aa452e6d31240aee
        - registry.redhat.io/rh-acs/collector@sha256:d93e13ee1d1cc4b7f82e644a7d43e560aac42bd1e06d25b476cea9a4338bf9ce
        - registry.redhat.io/rh-acs/main@sha256:97230c01e76d90c7fe35ffeaa591be3d9175f350a8fd88599aded09a1edf930c
        - registry.redhat.io/rh-acs/scanner-db@sha256:490b0bf49161e4bc6de2504726aaf360e0ca9a214aea6b886fff13153bdb263d
        - registry.redhat.io/rh-acs/scanner@sha256:323ee86d6a9cbeb32270c659c1154f3a62c36535c6ea894e4e29e93eb1f4a84f
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6536ee795e8aaeab9321ee4820e55933195983a768ba24fab40508d03e50a6e4
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:10cdb0ff3e67b65737cde420536494bd84c2b7ccf65192bbed2eb43eaed66a41
        version: 3.66.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.66
    - currentCSV: rhacs-operator.v3.67.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:893ebcb2d0c96647e56bce3b16fe32851df59cd71f2c0fc8f6e66ca3a669bb70
          createdAt: "2021-12-16T12:54:10.117625+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.66.0 < 3.67.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:893ebcb2d0c96647e56bce3b16fe32851df59cd71f2c0fc8f6e66ca3a669bb70
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:86e5fa1fa294987114be200890c2e516501e424aee0fb98ece25c95e7716295b
        - registry.redhat.io/rh-acs/collector@sha256:57c2dfa3dbc8368076291fbc627baa01dcb5ebc50f838e02ce7ac38a128d027b
        - registry.redhat.io/rh-acs/collector@sha256:e4648723ccbd43fa5acf005d9734bfc06d41e19e1be0bde839880e28fa361e16
        - registry.redhat.io/rh-acs/main@sha256:8db7630d094b661411ebb3f35248848d3147c735677d0922f7a04de9a41eacc9
        - registry.redhat.io/rh-acs/scanner-db@sha256:6f8d47277732eb56317d576c2d06fb1f539d46d16520e6ca34abec290392cef9
        - registry.redhat.io/rh-acs/scanner@sha256:2860ed271da6064149bb53568c5ad60e129918d55a2f244f9ade4a0bea4c4933
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:ad88773ab141f45fe24c61e83ec736aab27f652fb82ca2a85fee6f885568c5b9
        version: 3.67.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.67
    - currentCSV: rhacs-operator.v3.68.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:195a694dc96096166fe82e81ecb3ceb493f96cfb5029112e576e44ab39b56abd
          createdAt: "2022-06-15T22:13:22.427644+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.67.0 < 3.68.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b5fc3dcaa72bbc8dea005189c940e1cf2d00c94a6cf7676cf0e1790e1191d45c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c9d0a5a2871c24c0b1058e419f2b090429363a319856397855412fd2c0037395
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:081f2198ad70bfb2ec66153b50b48b950b9a5550ba996de413c5a2aff4052783
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9b9b9146d9683d6da0ff2abbc8ea82b96d945b7a8c3740d72d8c018fb2b04fba
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0bb76363a3a25916dd4493e177e9b2d36eac9633473b07fe0fffb853fd072da3
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:105d10bd50a6062c998ed107dea388dd78f0caddb0b57713c8692b1d07042774
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:f0d2f5f11c2a96d34d6b4baf249cbf821fe064eade73c3f95c22f3c6981ac4d1
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:711293438bab35b17d2e1f162e7f74f667a6e16dd32e45122f917b6817fefb4e
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6a10a4859527946f61f497ff84b80f973cb7be5982d428423836b5aca81a1f5d
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:195a694dc96096166fe82e81ecb3ceb493f96cfb5029112e576e44ab39b56abd
        version: 3.68.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.68
    - currentCSV: rhacs-operator.v3.69.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9b2beceb255124855ba1b352d16009b2f2cd422901a19c311f0783dab1fcc3a0
          createdAt: "2022-06-21T09:07:40.705944+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.68.0 < 3.69.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:77f5db63e17b140a8d6b84e3822fd77463035be9c0c832b55b4977696da13ccc
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:867613178d491f416e57975843817251490c5fbca2fc69d8b55b169bea675279
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:cf5629823f2dd583495bcbbcf3b83b4f29f855ace3c388f5cb7b24a6d34ed267
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:da6dd486a20fdba61ea12d2c77ea299d9795a9f22d9057d65ff992b1f5896e07
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:f167e928740d1c614e26948ea58f49e569f6a4fddc438cd0abe52f60538432d0
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b254746ed3faa1f1cbcafdf1343a1957bf0214311b36f4e892be3000cc2aecf3
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:8db5206532e95a7ad7cb23f389155d41757aaf5f445ddce92b008a06627d3fd5
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:2afb2823edc6f3434e18db60ee37381b5b79f51234c1a261b6d0f8ed74cc8b63
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:297e7f863106c6b41f882bbd5b691a12c797c24d832473a04e604d4639e4a68e
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9b2beceb255124855ba1b352d16009b2f2cd422901a19c311f0783dab1fcc3a0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:9ae03669cfdc0f4fe56b021d911edb17159c07757720ae30a1f22d7f7a897c07
        version: 3.69.2
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.69
    - currentCSV: rhacs-operator.v3.70.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fb903bf9e110ba03e9c63977ebaf707e6884dd8fd413bcd6b793a0ed795cdd0e
          createdAt: "2022-06-20T12:30:26.999648+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.69.0 < 3.70.1'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:fb903bf9e110ba03e9c63977ebaf707e6884dd8fd413bcd6b793a0ed795cdd0e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:df8cfdaa40b50ff2f2670d97c2115b47ae4bea443ae2831caaa468dd62f3c75f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:d2e827a209840b7197960c8115720972237532eb9cf9d6fee7a36107053408ce
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ee55a233d2a8fd77d89ec2c69f357721c7debead6470a9f494b3cd6a001829c4
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:e71f2f2347dd46dec790405b1bb98d54a348a4583949f142f5703be9a790f96e
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6c32b86ed8bc18e384706eb6188406e66910bf34c8869bd155a60c3525d0fea7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:3d7c8b77671740e324ee6c309a84bbaa4d925e6750979fe4e46c561bc79f1b4d
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:08a7d8c892fad69c589b81ad8fbd21d36c8fa4078530dba361cfa9a8f9f05950
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:9b35ae6df2c19935783735d213483f3fcecead2f49f873a4f7844ef9fb5c7f1a
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:6b14e850cda9a54618847858292ea669abff599a40692e27fed0e337c4a60526
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:dfeb239931f7a33ade5c829a102cabc01f5c348e1aa35a7ddc24757cfd549629
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:b47c96af1c9ffe4d8728da510a93efe21adc221225fe2b822cfcace6c6672ba2
        version: 3.70.1
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.70
    - currentCSV: rhacs-operator.v3.71.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:469b6c1592226eb9a521131ef758a33e6a6ac7c96bc67fcc903cea30469c125e
          createdAt: "2022-12-07T08:31:36.777654+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.70.0 < 3.71.3'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:9bc25e81c21cda6d8b535d8ac67c1286fe57a1596001850e730f8f73bf371111
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:e282a8e5e606003ea344d44ac5ee7699563848f7160eeae183aa58ad740e0e94
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:c3ec88cd99908894d0e67153779062f90ac1b007980d66040a79b2be13798a10
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:df7b41999b542a477848823a1d0e7e5c29ae1b00fbac035007a5a1f33fac139f
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:4d8bac9b3857af6ba351c7768f70ef30ef7cb99ae4df60cb226b5a793353a052
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:7f279bb6e0f34a5208d8711ba4d7b62c78f08b683815ce33f6aa28c23c4246da
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:469b6c1592226eb9a521131ef758a33e6a6ac7c96bc67fcc903cea30469c125e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:f16f92e074f7125b88e9e2033c7c12b44421145b93d040034fa4688626869af1
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4a0dc8c337299d7f6440ff75c2d5219d3ab68183f4f117f008ef065757dd5d4b
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:cb2d0f470968c2b725b0d176d423cc1866fd56893344d077d28f2c16581d3614
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e001b9f844a6c298dd74f1ab683f3dbbf0ad66044cec419c373ef4f97d47be73
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5fdfd3690af60bd5ecf04741cd1f73259491da501700b066120976960567f0db
        version: 3.71.3
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.71
    - currentCSV: rhacs-operator.v3.72.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3ff61e1cc77b66a22c8a8c0ab306f0e122cd74e762005285aede23ebb6c2f6a2
          createdAt: "2023-02-28T17:02:08.443613+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.71.0 < 3.72.4'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:cb5df858e0c5cae8f77b285e23daeb83062bd72570c90ed5ea3ce4a02d2f5f08
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:3ff61e1cc77b66a22c8a8c0ab306f0e122cd74e762005285aede23ebb6c2f6a2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:0b69595405e4e598183bbf4197ac5b7593724fa6162413f225aa01a542af18c9
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:cd475a6c2356d63cfe736a11114de7fedfbd8fdcfecc56224a00b6c819103be6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:622f30b7f591194d86a5bf95deede0225e66f7b624db197f6289a5fbbbe887a9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:648b14e4158da2a85eedb46b3456fb502d680d52d375ad34bf45b4b94f8b2ef6
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:878ed77d07d3f40f049a594af44376797305786a2a264dae3d0c50401643bfa5
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:42e5f6c4ba789f124ac3ebe7b6d1a607ede8e763a35888c97ccbd0259bec4a1c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:575b6c3e2914751df1668ffff83cbda187ce6e56f32214414cdf036b7a62bbd8
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:c07fae3616cbc681e4d31839abea6623b4bf4dade93273201c8db7ba0d635aad
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d56a00b3e20e60b7169f5c35d03fa6a1bd3b9980dd3ebc9d89d759e1d6d20ad2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:cd0c205ee44eddcdf99b84e80fcf4403851d956efc50532b9d12013bafe44988
        version: 3.72.4
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.72
    - currentCSV: rhacs-operator.v3.73.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a8486b66f977a639d77ef110492e5ecdde47be8acaefbaa1cbb5417085c56839
          createdAt: "2023-05-26T21:27:04.033276+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.72.0 < 3.73.5'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:648b14e4158da2a85eedb46b3456fb502d680d52d375ad34bf45b4b94f8b2ef6
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dce5db4f162dd40c09cad114cb802cd6d7c72d0c6986581f2e74c977493f75b0
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:5df359156b01505ce43e5f14c3b08722856bdb86f3d0d9b4fba785a2e580f346
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:459a8d91beff91638872d377a8b82c279ad2905ce3f4ad4bfc00f6822418ac57
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e6687c12d070069f655c17832d94c619c18274a259ccc59715036f9908e162f7
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e4a27d3ffb173c87728fb637ca7fde92a9e78ea9ee3edcecccc2a5e3d3748b8c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e2c89f735969d438f75a89ff63c404a8ec4361a03fde48e880fee73006b9c669
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:082bd6f4b40209e0591be001dea358f328cd86a08691cdceb7f71ea59d861d9d
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:4d0ead8969f120a629104a92a454842bb7103aec137deb6c8209b7db9c48a1b2
        - registry.redhat.io/advanced-cluster-security/rhacs-docs-rhel8@sha256:ee2a9e4ab74f5a554d1e4ff148833a53bdaab70ac1e2668cc9ee2fceca290ba9
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a8486b66f977a639d77ef110492e5ecdde47be8acaefbaa1cbb5417085c56839
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7bf9415aa4b0746d11ca5a59d4179bc382a0fac4ded969f0c4294171fde27d58
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:c020a80ff82bf4d9b5cec3eeac5de9990de76041e22c444e664a20e15c46ce3b
        version: 3.73.5
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.5
        version: 3.73.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.4
        version: 3.73.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.3
        version: 3.73.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.2
        version: 3.73.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.1
        version: 3.73.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.0
        version: 3.73.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.73
    - currentCSV: rhacs-operator.v3.74.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
          createdAt: "2024-02-06T23:06:13.271846+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.73.0 < 3.74.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:22bf00e1457b4a9e63901892aa4375a1d4a9d1b2c067c1f054d918a24b222b10
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:2c0840f4573373a19eb8c9a26501138ef0e76efbd508fd69a6260e78194d86c8
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e714fea6deb82225c54de32cf7ff3e91e1966470c58d04a221c7d90a501fdb8a
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4980165af1d43837bf5c0ae5dd271c8d482845670d608db81652ab886898b593
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:264102d4bca7d9bd384dc04e5bbff1a7b43343ea8e59cc79047cdda50a3f299f
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:87eb62fe8aa7952d0d69dc13c4867ac2f51e821f56d149a9b588c826caec4c16
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:120b9891ee9db839ab0b2029a62e67ec4747c47c6ffe15af38e9035160f57b78
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:71b9fdcaf4cc761b1499be8e6ccff6c463cc6b9856e9deb1f93baad45ea59eb0
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:74624389ac3261ed699b1f64e5717353da68895709d30a011bc8813b61a4a249
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:a108e9a7967001e0bdfed7124b01e9a3dbf1dec308444762973030aec57e1d5a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d546f2d3f668ce2f20e594394ade0a86d808f6c8c88cadbba227083d4abac940
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:0482d4464d6d39c01abab8df882604dd227c52b5420d36fe7414aaff8067cbec
        version: 3.74.9
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.9
        version: 3.74.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.8
        version: 3.74.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.7
        version: 3.74.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.6
        version: 3.74.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.5
        version: 3.74.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.4
        version: 3.74.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.3
        version: 3.74.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.2
        version: 3.74.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.1
        version: 3.74.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.74.0
        version: 3.74.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.5
        version: 3.73.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.4
        version: 3.73.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.3
        version: 3.73.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.2
        version: 3.73.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.1
        version: 3.73.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.73.0
        version: 3.73.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.4
        version: 3.72.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.3
        version: 3.72.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.2
        version: 3.72.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.1
        version: 3.72.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.72.0
        version: 3.72.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.3
        version: 3.71.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.2
        version: 3.71.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.1
        version: 3.71.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.71.0
        version: 3.71.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.1
        version: 3.70.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.70.0
        version: 3.70.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.2
        version: 3.69.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.1
        version: 3.69.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.69.0
        version: 3.69.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.2
        version: 3.68.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.1
        version: 3.68.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.68.0
        version: 3.68.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.2
        version: 3.67.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.1
        version: 3.67.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.67.0
        version: 3.67.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.1
        version: 3.66.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.66.0
        version: 3.66.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.1
        version: 3.65.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.65.0
        version: 3.65.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.2
        version: 3.64.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.1
        version: 3.64.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.64.0
        version: 3.64.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.63.0
        version: 3.63.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.1
        version: 3.62.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v3.62.0
        version: 3.62.0
      name: rhacs-3.74
    - currentCSV: rhacs-operator.v4.0.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9bf3a3e0fd573f91f03794eaf5291364a90392e5e7d4b5d4ed550ef4600ab826
          createdAt: "2023-10-20T07:04:50.531740+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 3.74.0 < 4.0.5'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:c39621837cbc8419d187a43a9575ec8cb4021c58ea1b56f215003d7264eb5d03
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:139d80d398e7e5cfc85839e3039a3630b48c7ae6650d755754430fccd94d6a27
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:4c848eb7465e928251e05d32ffbc93cd14e7bb77972d22b8721bd6eaa4a93d2f
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:0aedd8e865f72ffa8b79fd2bab48974caec3eea3e3a6f77c89fe6dacb8947057
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:a0d9cd31d953aaf7e84f5a39f405c5aa2ea62e68d6c728a936ca1ffc4dc1b93e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:09e79b5db8977520f9951cc43c339c8e40b4659d7da513347d5a88b2500f809d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:3250d89e78de852a2627593f29469f0b3ff639ea3644b4b7d6d057d0c1ad3659
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:5a492b856e0b6d9fdb020b556d13186ef5e7095b0c736a2031500c9c00dad0c1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:08f537cba262605a0eb0a510b6faf78e3ba26465f636d03cc1f7a6ed6b40d355
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:eee1aa054d4d15b23be293f31d3ea659e0ffc1d05174ef89a6c977dd3d4377cc
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:9bf3a3e0fd573f91f03794eaf5291364a90392e5e7d4b5d4ed550ef4600ab826
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:cfa10bb6b461f302674f185b26c8d6efaaeba7f3f65d2cf05ae1f069aa2710d3
        version: 4.0.5
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.0
    - currentCSV: rhacs-operator.v4.1.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:8ffb6f0ff1bf016c3919c1eefc6c3db3d4a8fbe0e79919f72b4c281afe6d4b1c
          createdAt: "2024-01-13T18:55:22.011709+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          olm.skipRange: '>= 4.0.0 < 4.1.6'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:8ffb6f0ff1bf016c3919c1eefc6c3db3d4a8fbe0e79919f72b4c281afe6d4b1c
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:a8ad0e76ce4cae9f9b36aecf125c4ed56fc2d776fe3df113d41bfc1c2f8b3602
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:01b9f9798d3ecbefe3da1ac2ac782e8e8b930e7eeceb82fe3473b5bfc1ccd40a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:364c107c34694ca33ac724de78db3e41ee55f9098d9ade0775a51b11f1533065
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:8760d6dc68c86f0c5b53d8f0bfada0df012f80bc8e0023ba3522fe6829a05a41
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:762ad216e79be0837e98873202b0072c7fd399925ee94bde57cc61c68cbd5f4e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:7ac504b7824d17bd7ac55b1e59c26be308506f315a0ab0d8c45d3b4934c0a16c
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:8547b76cf0533dfe6da2aafbbd063021bad4ff78b32b2dfed4a7607496e0a904
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:2ec62f3da93a1346ad215744257820377ccf4ead84e7471c52e348a31a431d3c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:bdbe08ef2d01b114702780fab76905e6eb1851684692ffa0a4c84604bda3ddb3
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:34694b9f4fe7fffc0c547be4e311579b5bb0c1fa92d8257bf6d1581ffd655c46
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b26133843687cc50e2c52d6067d8b3369b5cb28dfbfd15dd4b6062096673195a
        version: 4.1.6
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.1
    - currentCSV: rhacs-operator.v4.2.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4253eca84cbb0c5fc033507ddc2deef235b054c0ba944fa271ebbba21545b872
          createdAt: "2024-03-13T14:51:55.084122+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.1.0 < 4.2.5'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:2f326cabf03f780a3e6120995d5442641764641f62430d82e05edbe21b30c7b2
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:59f1862c8ce188906499f08201ae05deeb47bd4fc5eab4be0386ca44ec065da8
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:ff27f03064633d6d08f8383649069e39c868def4aeca8f2622750397e049d0ec
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:4253eca84cbb0c5fc033507ddc2deef235b054c0ba944fa271ebbba21545b872
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:12db245af3b8475c9b5680bb0035c566109819e05cfe62bd1dfdfb5d6ed25bea
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:e2b07cb7d690477d78a2b8e1875545998d4bdb946f80dd0533a14187da99dbbf
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:b82f7f654235688fc07fb037422a73e1106e27024d39a68ef7fac1422b69496d
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:3858ab936d4626a11bbf895d41bad181364ee5df3312f6dd29ebeb9b7d31ec77
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:e79a5e5681ebfe2d6349e2763ee0c1fa521b20319846958e402d23229b1f257b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:4b35f5f39865238a8e95d3cba7ebb5f15ccfbf6a2563c34f57d91a0b5c927066
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b5a15f2985b114bf9bc24a0d9942db5d0cb818e60fd15a2f9094aa00904cce77
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:08aebe6e8275d3314b6756d522ec568ccdfb9c52df98c9822f187f6c5a3af19c
        version: 4.2.5
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.2
    - currentCSV: rhacs-operator.v4.3.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:266cbbc270efafa26d5d15f3e333c96eaedee3b47854ff337ae1c572d34901ce
          createdAt: "2024-06-06T22:31:19.365878+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.2.0 < 4.3.8'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:30f9384244819da013358325cec364bb210b3b33b4cf9680698531fe50562aac
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:2c35cb6f518393d002edd2bf5f714c1d053cd0fab55f6152a2f35676e4979202
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:b0c9b3858fc0547dcb4eb3065dedd5bbcf1e1f6707a8ab812ed06882d4f6d6ad
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:c36a557c9dc2ae4479c432933a9a4dbef38f2be53360a68a5b6befb614d01dac
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:5092c3fbb4a38c06a2f42d125dc718ef0e1005f304ad8046afdd2a5e7ccbc580
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:266cbbc270efafa26d5d15f3e333c96eaedee3b47854ff337ae1c572d34901ce
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:bdf9785bff51194636c6e8a518448c6d12a297bd31c4bb2e79d07084409c18b4
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:9fba889021a876ab627ff8c496e4b6c46c221c61142cd0c76daf33c89762e2c1
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:2bb643651c8d51525223df3b2b675947174bbe9f1eaea8688e1fa83044cfa41f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b7eb17fbcf6c4a6e4205ad66f1ffd9b10a4634f6ef5045d407c266566b1f255d
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:10d0cc82b6eddd089f3a7af37b872c33248513d0b4d3f094b6f62c01f4460825
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:6b55a25eb3a611c648d9be883828834592229c16f4166fd28ef40a25fc667061
        version: 4.3.8
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.3
    - currentCSV: rhacs-operator.v4.4.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:2b87569d7f4ef5e06c989b273c378e007c6d87b26eec41774ac1fc67dcd9e4e4
          createdAt: "2025-02-10T19:50:13.597164+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.3.0 < 4.4.8'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:69c12230a785619c765e3749a7d56f76dce9ce4f530c20e8a9387b99eb65627b
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:2b87569d7f4ef5e06c989b273c378e007c6d87b26eec41774ac1fc67dcd9e4e4
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:467d069ee957aea07882b83b60ae9fcc62ccca159f5d643aac13e531ccf7df88
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:763e7568704971cb4656727dc223374de13e82b4304dd3f5387ddc0f4e42b8b6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:0df4e95c7406aee7812d145cdd4d8c61cec32857fd2079dbc4244954a9d8288a
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:183c75920ab8e7cb947cb966f1543e39b6fdb5e1bb0caa1b0cf5f89671f0328f
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:123c0108bd7a190dd2accfd21786600f787147f040e57fb5f840861e2caa441d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:65707fdad55767ff5598a8d3679fd0779a37f59501e58971b81bebcb23f1f9fc
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:76f9dc2e2ee5595c36530d97dec216e2dbefada2fe0747e3f6a3a725b75722ab
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:ba6e25a413c79131b966a097f72c36478933ea52deb55a62acda7011a96b3983
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:664a5dc40dc1fa06c47a11e13b0ab5e0612a981d7b69bcfb29422abf3d1a13b2
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:39cfd01236e905034f6645a73063427436c14e351e0e0bc735e73e62aa5a1c3c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:d6b4f8caf342b105c8df14c5c9180cb36123e08d34756ee8fe4f2f76c34f8064
        version: 4.4.8
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.4
    - currentCSV: rhacs-operator.v4.5.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a7dfbe3590668f91fe6694335b5a35b2fca07b4735348cc5202921755d2f654d
          createdAt: "2025-04-09T22:51:15.157672+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.4.0 < 4.5.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Central is the configuration template for the central services.
              This includes the API server, persistent storage, and the web UI, as
              well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: SecuredCluster is the configuration template for the secured
              cluster services. These include Sensor, which is responsible for the
              connection to Central, and Collector, which performs host-level collection
              of process and network events.<p> **Important:** Please see the _Installation
              Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:d928600f75461465598a10de8df2495a275fd5232a92b078f609d1f5774eb778
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:ed33e7396357f1db03a065573c020846a5872b12a21284439770686689222434
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:c2656b794ec4236e36f48f71bf26bdedd9de27fc4acef39deba2bdcfcddab03b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:5109b304eb9458f97af85c2ba63e08f51672fa3f9406226b7f357b86b5828dc0
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:1817cf8d2c08b04391792321702ef53d16a4b1ca06459c00c9c053128f534358
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:5914548f6ce2160e92c5d96580ffba23cdf1ae940c1f73f3f6424d15c6e97c37
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:fde78d34ecd2944c7c16b4e823c76b3667bf6c5b468e9991128ecc4272ec0e2e
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:a7dfbe3590668f91fe6694335b5a35b2fca07b4735348cc5202921755d2f654d
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:0ff948b5517df3773cae2df02b708c348d8707409899b1de4108588e31601c0c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:cc4b329cc795752ecbb178d2e4efc152bde54b04181334eb5bd70304c3354cad
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:dc7f23341c8b209f1846f29f889d00ef232fb58da9d5b4bd561f3933093b2786
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:41351e88688d23a443ad4f141caf0433b2c2789e6a1a85b4f5b36abeb5656bb1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:f07cba0738897e0e7ae74971be0470ce2a855657f133a6e1cdd8a7092f6151b0
        version: 4.5.9
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.5
    - currentCSV: rhacs-operator.v4.6.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:c4d434e1ff052508e5594d2b95dafa8726fd8adf5317754774c013a46de224d8
          createdAt: "2025-09-26T09:24:28.046251+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.5.0 < 4.6.10'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:90c47c6f95571cfcca04aa4e05a18befad75c1b44a6f3a055fcdfdab749d29c5
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:19db8c5d2425dcf18ae63b025f946fc46adaec0578e9505415cb585797069e95
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-slim-rhel8@sha256:16b61ca1b9ee4e0821e7fc82fe4def75ed22950e502730f5704ec4fe63bb2e59
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:b630d53ad0b862151be7e14f0483ca5adac570216deae66f60e75af87a4dfd46
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:c4d434e1ff052508e5594d2b95dafa8726fd8adf5317754774c013a46de224d8
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:65793c05aec8085a53fab8bcf33a85192c17b46c91a7d86e0a457d1e3a113878
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:713e61d3c8b55de1edc9d7834d3e8576718e1327665f94a6b58178fa7496c0cc
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:8fad8ab2efdcbc99d9efa736a90cca6f236f0a9d45fdb355ae0b6b4dc42d77f0
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:6d6b2696a12d49cf3403e338a0e028187473b6f43ef2b0bd72c7701200ac8e2e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:6da59c5b82625894f6efa3fa0bc5ea0378edd4f95cf42dee772e9c8a565dba81
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:ffe41363dc00b05b0daa0c6d16efb30e534086aa4e3d7ccc599c86d33813138c
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:899da9c23000bb821bc9d544ebb56bcda4f3245ceee5b1b9c12d09f580b4b9a1
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:b5cd08349931669055f03d21331499ef2ea04597f8a90fb201615d43000271bc
        version: 4.6.10
      deprecation:
        message: 'This version is no longer supported. Switch to the `stable` channel
          or a channel for a more recent version that is still supported. Find supported
          versions in the RHACS support policy document: https://access.redhat.com/support/policy/updates/rhacs'
      entries:
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.6
    - currentCSV: rhacs-operator.v4.7.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:414b03b9830f755e459127f3f926e275b5049eba0f199dd9e4975974800979e8
          createdAt: "2025-12-15T14:49:31.922833+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.6.0 < 4.7.9'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:e7106f927313f2e0a08c85cf1ecfd1338d222f02dcac6c40846858a7e0c9c32b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:4e48a0441240e9531e1490079e19edd65526b726b87bc5613b3cc62e3f59c1be
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:b6f7cc10247ab111a4aea231858b4f6fd17bfd4e4b4e4bd62873567ab875fb2e
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:ee14e7361bf64117af506a99906b3ae43a2b34c78f6e80a924a4419b047beadd
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:6981a243b8e6f095cbcabae3056012e9c60914ac42cd795c4163f4fce64a6aef
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:b3b498320cfcbf06da095f2427814d7f157ccec870383085be733ad7b6e6ccba
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:b55eae54dd5bc1bc58e9d52722a5830f8ee73bd59cdd0190147df8145f5ccedf
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8b24cb309fb5dad63d92605093b7e1cb659d9c0c1f31f6d5a223746f25dc5e23
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:414b03b9830f755e459127f3f926e275b5049eba0f199dd9e4975974800979e8
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:19b84b221ab9ce59fd0c8fbb4a713ee66304fd92822cebbcde0d77496ca82b0a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:7e1371e5e0b53983ca615309f44f6e4c124874ca1ae8a0fd4a59a470eb6a15df
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:d45d0e810330d7c95c2e4dc2f1bc5c5613f06ec09b4061f2874c8837c73379b9
        version: 4.7.9
      entries:
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.7
    - currentCSV: rhacs-operator.v4.8.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa
          createdAt: "2025-12-17T14:22:57.176442+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.7.0 < 4.8.7'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:8322bb5c9649b552aaaa62ba52067028a828c9dcb16c7580ec235e6b48b75e53
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:a58c6e952333169b21ffefdbd1acd3fff9c8d8dfac28795ee290756ca4394f5a
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:fe1732a51218d60b1c5f6fa96357c0d50ce48ae6802da91ff594f7ef184effe9
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:3325c985bbe99f6717dae2dbcb6aedaadfa7eb5f403b109628356485a97f6cf7
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:82dc5edf423b3f9c377c9d2c80d1d19eaf15684872dc41d4baa9efddf082f350
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:440e0ac120a2a7e8dfcad6b53bb120667e293492d9bbcbe9d1ca0a6ed7b2dd62
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:7429ff838a2899577091ba14fbdc812e85b5d1e9c4394e45ead07725c70c79aa
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:5e84e22ba7e21b8ec3e55283a53ea73a14f2bfd41eea5a80ca7a95360f799c52
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:24481e3ee1dab49893e7f5891e97e3287ec6f35105b6e927ce0acc7da24a6982
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:23150ab7d7d79cf1f5bc70f4f8e32da76ff06af123c395fb46b0be9e6ded7e1f
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:fc03a63aada7586517d68c279fe59415b1fc0b3756ee87c5110f19c90712e903
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:142732544a7553f4eb203b314b3bdc76e5102d7ef3080f1fe36e8ddadffb9ca9
        version: 4.8.7
      entries:
      - name: rhacs-operator.v4.8.7
        version: 4.8.7
      - name: rhacs-operator.v4.8.6
        version: 4.8.6
      - name: rhacs-operator.v4.8.5
        version: 4.8.5
      - name: rhacs-operator.v4.8.4
        version: 4.8.4
      - name: rhacs-operator.v4.8.3
        version: 4.8.3
      - name: rhacs-operator.v4.8.2
        version: 4.8.2
      - name: rhacs-operator.v4.8.1
        version: 4.8.1
      - name: rhacs-operator.v4.8.0
        version: 4.8.0
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.8
    - currentCSV: rhacs-operator.v4.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
          createdAt: "2025-12-15T11:46:09.678434+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.8.0 < 4.9.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:4118ac0a9af4d6c38fcdde1236a963a47a41eb465d15a9a0bf90b30679a2b2f1
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e48f539bbe3b874be10dcc31ea61b074854a00d1bbccbbd3ec72b185345ba55e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        version: 4.9.2
      entries:
      - name: rhacs-operator.v4.9.2
        version: 4.9.2
      - name: rhacs-operator.v4.9.1
        version: 4.9.1
      - name: rhacs-operator.v4.9.0
        version: 4.9.0
      - name: rhacs-operator.v4.8.7
        version: 4.8.7
      - name: rhacs-operator.v4.8.6
        version: 4.8.6
      - name: rhacs-operator.v4.8.5
        version: 4.8.5
      - name: rhacs-operator.v4.8.4
        version: 4.8.4
      - name: rhacs-operator.v4.8.3
        version: 4.8.3
      - name: rhacs-operator.v4.8.2
        version: 4.8.2
      - name: rhacs-operator.v4.8.1
        version: 4.8.1
      - name: rhacs-operator.v4.8.0
        version: 4.8.0
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: rhacs-4.9
    - currentCSV: rhacs-operator.v4.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "Central",
                "metadata": {
                  "name": "stackrox-central-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "central": {
                    "exposure": {
                      "route": {
                        "enabled": true
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "platform.stackrox.io/v1alpha1",
                "kind": "SecuredCluster",
                "metadata": {
                  "name": "stackrox-secured-cluster-services",
                  "namespace": "stackrox"
                },
                "spec": {
                  "clusterName": "my-cluster"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
          createdAt: "2025-12-15T11:46:09.678434+00:00"
          description: Red Hat Advanced Cluster Security (RHACS) operator provisions
            the services necessary to secure each of your OpenShift and Kubernetes
            clusters.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>= 4.8.0 < 4.9.2'
          operatorframework.io/suggested-namespace: rhacs-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Security"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Central is the configuration template for the central services. This includes the API server, persistent storage,
              and the web UI, as well as the image scanner.
            displayName: Central
            kind: Central
            name: centrals.platform.stackrox.io
            version: v1alpha1
          - description: |-
              SecuredCluster is the configuration template for the secured cluster services. These include Sensor, which is
              responsible for the connection to Central, and Collector, which performs host-level collection of process and
              network events.<p>
              **Important:** Please see the _Installation Prerequisites_ on the main RHACS operator page before deploying, or
              consult the RHACS documentation on creating cluster init bundles.
            displayName: Secured Cluster
            kind: SecuredCluster
            name: securedclusters.platform.stackrox.io
            version: v1alpha1
          - description: SecurityPolicy is the schema for the policies API.
            displayName: Security Policy
            kind: SecurityPolicy
            name: securitypolicies.config.stackrox.io
            version: v1alpha1
        description: |
          ## Why use Red Hat Advanced Cluster Security for Kubernetes?

          Protecting cloud-native applications requires significant changes in how we approach security—we must apply controls earlier in the application development life cycle, use the infrastructure itself to apply controls, and keep up with increasingly rapid release schedules.


          Red Hat® Advanced Cluster Security for Kubernetes, powered by StackRox technology, protects your vital applications across build, deploy, and runtime. Our software deploys in your infrastructure and integrates with your DevOps tooling and workflows to deliver better security and compliance. The policy engine includes hundreds of built-in controls to enforce DevOps and security best practices, industry standards such as CIS Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security.

          Red Hat Advanced Cluster Security for Kubernetes provides a Kubernetes-native architecture for container security, enabling DevOps and InfoSec teams to operationalize security.

          ## Features and Benefits

          **Kubernetes-native security:**
          1. Increases protection.
          1. Eliminates blind spots, providing staff with insights into critical vulnerabilities and threat vectors.
          1. Reduces time and costs.
          1. Reduces the time and effort needed to implement security and streamlines security analysis, investigation, and remediation using the rich context Kubernetes provides.
          1. Increases scalability and portability.
          1. Provides scalability and resiliency native to Kubernetes, avoiding operational conflict and complexity that can result from out-of-band security controls.

          ## Using the RHACS Operator

          **RHACS Operator channels:**

          Red Hat provides the RHACS Operator by using the following update channels in the Red Hat Operator catalog:

          * `stable`: Provides the most recent version and patches to the most recent version.
            Using the `stable` channel and configuring automatic operator upgrades ensures that the most recent RHACS version is deployed.
          * `rhacs-x.yy` (for example, `rhacs-3.74`): Channels follow a specific RHACS version and include all patches to that version (e.g. `3.74.0`, `3.74.1`, ...).

          Note that the `latest` channel is deprecated and is not updated after RHACS version 3.74. Newer versions are published to the `stable` channel.

          **RHACS comes with two custom resources:**

          1. **Central Services** - Central is a deployment required on only one cluster in your environment. Users interact with RHACS via the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. Users may select exposures for Central that best meet their environment.

          2. **Secured Cluster Services** - Secured cluster services are placed on each cluster you manage and report back to Central. These services allow users to enforce policies and monitor your OpenShift and Kubernetes clusters. Secured Cluster Services come as two Deployments (Sensor and Admission Controller) and one DaemonSet (Collector).

          ### Central Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Central                          | Deployment      | Users interact with Red Hat Advanced Cluster Security through the user interface or APIs on Central. Central also sends notifications for violations and interacts with integrations. |
          | Central DB                       | Deployment      | Central DB is a PostgreSQL-based persistent storage for the data collected and managed by Central. |
          | Scanner                          | Deployment      | Scanner is a Red Hat developed and certified image scanner. Scanner analyzes and reports vulnerabilities for images. Scanner uses HPA to scale the number of replicas based on workload. |
          | Scanner DB                       | Deployment      | Scanner DB is a cache for vulnerability definitions to serve vulnerability scanning use cases throughout the software development life cycle. |

          ### Secured Cluster Services Explained

          | Service                          | Deployment Type | Description     |
          | :------------------------------- | :-------------- | :-------------- |
          | Sensor                           | Deployment      | Sensor analyzes and monitors Kubernetes in secured clusters. |
          | Collector                        | DaemonSet       | Analyzes and monitors container activity on Kubernetes nodes.|
          | Admission Controller             | Deployment      | ValidatingWebhookConfiguration for enforcing policies in the deploy lifecycle. |

          ### Central Custom Resource

          Central Services is the configuration template for RHACS Central deployment. For all customization options, please visit the RHACS documentation.

          ### SecuredCluster Custom Resource

          SecuredCluster is the configuration template for the RHACS Secured Cluster services.

          #### Installation Prerequisites

          Before deploying a SecuredCluster resource, you need to create a cluster init bundle secret.

          - **Through the RHACS UI:** To create a cluster init bundle secret through the RHACS UI, navigate to `Platform Configuration > Clusters`, and then click `Manage Tokens` in the top-right corner. Select `Cluster Init Bundle`, and click `Generate Bundle`. Select `Download Kubernetes secrets file`, and store the file under a name of your choice (for example, `cluster-init-secrets.yaml`).
          - **Through the `roxctl` CLI:** To create a cluster init bundle secret through the `roxctl` command-line interface, run `roxctl central init-bundles generate <name> --output-secrets <file name>`. Choose any `name` and `file name` that you like.

          Run `oc project` and check that it reports the correct namespace where you intend to deploy SecuredCluster. In case you want to install SecuredCluster to a different namespace, select it by running `oc project <namespace>`.
          Then, run `oc create -f init-bundle.yaml`. If you have chosen a name other than `init-bundle.yaml`, specify that file name instead.

          #### Required Fields

          The following attributes are required to be specified. For all customization options, please visit the RHACS documentation.

          | Parameter          | Description     |
          | :----------------- | :-------------- |
          | `clusterName`      | The name given to this secured cluster. The cluster will appear with this name in RHACS user interface. |
          | `centralEndpoint`  | This field should specify the address of the Central endpoint, including the port number. `centralEndpoint` may be omitted if this SecuredCluster Custom Resource is in the same cluster and namespace as Central. |
        displayName: Advanced Cluster Security for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - advanced-cluster-security
        - stackrox
        - security
        - vulnerabilities
        - compliance
        - devsecops
        - monitoring
        - scanning
        - runtime-security
        - network policy
        - configuration
        - risk
        links:
        - name: Red Hat Advanced Cluster Security Documentation
          url: https://docs.openshift.com/acs/welcome/
        - name: DataSheet
          url: https://www.redhat.com/en/resources/advanced-cluster-security-for-kubernetes-datasheet
        - name: Support Policy
          url: https://access.redhat.com/node/5822721
        - name: Community Site
          url: https://www.stackrox.io/
        maintainers:
        - email: rhacs-pm@redhat.com
          name: Advanced Cluster Security product team
        maturity: alpha
        minKubeVersion: 1.15.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/advanced-cluster-security/rhacs-central-db-rhel8@sha256:f738b52dd27d5df837fcdfd64008b23af542c5149635094fa19879bcdf62727b
        - registry.redhat.io/advanced-cluster-security/rhacs-collector-rhel8@sha256:601c0d927f051cad10b8ffc17617694cb3f75fbf59f2ac4e667e3b152ef5e16a
        - registry.redhat.io/advanced-cluster-security/rhacs-rhel8-operator@sha256:bca0bc3c0c158d459198562fe25e3de63fc7ba136b403238d9104b815c916c7e
        - registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8@sha256:e171702dceae6d0182fb282633083429507ebe3cee0d8d1311362e20798be8cf
        - registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8@sha256:4118ac0a9af4d6c38fcdde1236a963a47a41eb465d15a9a0bf90b30679a2b2f1
        - registry.redhat.io/advanced-cluster-security/rhacs-operator-bundle@sha256:b3fbc67b7b2333acf5b574dafc727b5953ff8360b2a9ead7505d3f223f29dbe6
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-slim-rhel8@sha256:e48f539bbe3b874be10dcc31ea61b074854a00d1bbccbbd3ec72b185345ba55e
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-db-rhel8@sha256:8402cb5f37bfa0bc173292a893fe0d2a6d2faa0bda72a9a6e5af0d291e2c608d
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-db-rhel8@sha256:7d77daa7c1a4219d3988e86062a97295a6eb1c423bc9906c5ef31084f5a5fca7
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-rhel8@sha256:9fdfe4745d943dc150c2fcef04684cd6f96a9ab773ba08d1c7a109f5cfa0114b
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-slim-rhel8@sha256:7ea0bc82c690cddc9ee7907ea6f21ce40f1a882143c49bfca3651519985b4687
        - registry.redhat.io/advanced-cluster-security/rhacs-scanner-v4-rhel8@sha256:5e2d60a6ab9babf749eed37ea3fd32516e07201033995697046f28e02df5c8d7
        version: 4.9.2
      entries:
      - name: rhacs-operator.v4.9.2
        version: 4.9.2
      - name: rhacs-operator.v4.9.1
        version: 4.9.1
      - name: rhacs-operator.v4.9.0
        version: 4.9.0
      - name: rhacs-operator.v4.8.7
        version: 4.8.7
      - name: rhacs-operator.v4.8.6
        version: 4.8.6
      - name: rhacs-operator.v4.8.5
        version: 4.8.5
      - name: rhacs-operator.v4.8.4
        version: 4.8.4
      - name: rhacs-operator.v4.8.3
        version: 4.8.3
      - name: rhacs-operator.v4.8.2
        version: 4.8.2
      - name: rhacs-operator.v4.8.1
        version: 4.8.1
      - name: rhacs-operator.v4.8.0
        version: 4.8.0
      - name: rhacs-operator.v4.7.9
        version: 4.7.9
      - name: rhacs-operator.v4.7.8
        version: 4.7.8
      - name: rhacs-operator.v4.7.7
        version: 4.7.7
      - name: rhacs-operator.v4.7.6
        version: 4.7.6
      - name: rhacs-operator.v4.7.5
        version: 4.7.5
      - name: rhacs-operator.v4.7.4
        version: 4.7.4
      - name: rhacs-operator.v4.7.3
        version: 4.7.3
      - name: rhacs-operator.v4.7.2
        version: 4.7.2
      - name: rhacs-operator.v4.7.1
        version: 4.7.1
      - name: rhacs-operator.v4.7.0
        version: 4.7.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.10
        version: 4.6.10
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.9
        version: 4.6.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.8
        version: 4.6.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.7
        version: 4.6.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.6
        version: 4.6.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.5
        version: 4.6.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.4
        version: 4.6.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.3
        version: 4.6.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.2
        version: 4.6.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.1
        version: 4.6.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.6.0
        version: 4.6.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.9
        version: 4.5.9
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.8
        version: 4.5.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.7
        version: 4.5.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.6
        version: 4.5.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.5
        version: 4.5.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.4
        version: 4.5.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.3
        version: 4.5.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.2
        version: 4.5.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.1
        version: 4.5.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.5.0
        version: 4.5.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.8
        version: 4.4.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.7
        version: 4.4.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.6
        version: 4.4.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.5
        version: 4.4.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.4
        version: 4.4.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.3
        version: 4.4.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.2
        version: 4.4.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.1
        version: 4.4.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.4.0
        version: 4.4.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.8
        version: 4.3.8
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.7
        version: 4.3.7
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.6
        version: 4.3.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.5
        version: 4.3.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.4
        version: 4.3.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.3
        version: 4.3.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.2
        version: 4.3.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.1
        version: 4.3.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.3.0
        version: 4.3.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.5
        version: 4.2.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.4
        version: 4.2.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.3
        version: 4.2.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.2
        version: 4.2.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.1
        version: 4.2.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.2.0
        version: 4.2.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.6
        version: 4.1.6
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.5
        version: 4.1.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.4
        version: 4.1.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.3
        version: 4.1.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.2
        version: 4.1.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.1
        version: 4.1.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.1.0
        version: 4.1.0
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.5
        version: 4.0.5
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.4
        version: 4.0.4
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.3
        version: 4.0.3
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.2
        version: 4.0.2
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.1
        version: 4.0.1
      - deprecation:
          message: 'This Operator version is no longer supported. Use a more recent
            version that is supported. Find supported versions in the RHACS support
            policy document: https://access.redhat.com/support/policy/updates/rhacs'
        name: rhacs-operator.v4.0.0
        version: 4.0.0
      name: stable
    defaultChannel: stable
    packageName: rhacs-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Datadog
      provider-url: ""
    name: datadog-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: datadog-operator.v1.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadog"
                },
                "spec": {
                  "agent": {
                    "apm": {
                      "enabled": false
                    },
                    "log": {
                      "enabled": false,
                      "logsConfigContainerCollectAll": false
                    },
                    "process": {
                      "enabled": true,
                      "processCollection": false
                    },
                    "security": {
                      "compliance": {
                        "enabled": false
                      },
                      "runtime": {
                        "enabled": false
                      }
                    },
                    "systemProbe": {
                      "bpfDebugEnabled": false
                    }
                  },
                  "clusterAgent": {
                    "config": {
                      "admissionController": {
                        "enabled": false
                      },
                      "clusterChecksEnabled": false,
                      "externalMetrics": {
                        "enabled": false
                      }
                    },
                    "replicas": 2
                  },
                  "clusterChecksRunner": {
                    "replicas": 2
                  },
                  "clusterName": "\u003cCLUSTER_NAME\u003e",
                  "credentials": {
                    "apiKey": "\u003cDATADOG_API_KEY\u003e",
                    "appKey": "\u003cDATADOG_APP_KEY\u003e",
                    "token": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e"
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: registry.connect.redhat.com/datadog/operator@sha256:e1fb36e82b5438e3efd5768425651beadeb80e8698e0e0ca475d2a2e23386090
          description: Datadog provides a modern monitoring and analytics platform.
            Gather metrics, logs and traces for full observability of your Kubernetes
            cluster with Datadog Operator.
          olm.skipRange: <1.0.4
          operators.operatorframework.io/builder: operator-sdk-v1.23.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/DataDog/datadog-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgent Deployment with Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v1alpha1
          - description: DatadogAgent Deployment with the Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v2alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
        description: Datadog provides a modern monitoring and analytics platform.
          Gather metrics, logs and traces for full observability of your Kubernetes
          cluster with Datadog Operator.
        displayName: Datadog Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - registry.connect.redhat.com/datadog/operator-bundle@sha256:48b37460dd7245cf661009267c3353962f0f195efd6a3007c9cc70b51b91a9e3
        - registry.connect.redhat.com/datadog/operator@sha256:e1fb36e82b5438e3efd5768425651beadeb80e8698e0e0ca475d2a2e23386090
        version: 1.0.4
      entries:
      - name: datadog-operator.v1.0.4
        version: 1.0.4
      name: alpha
    - currentCSV: datadog-operator.v1.21.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogAgentProfile",
                "metadata": {
                  "name": "datadogagentprofile-sample"
                },
                "spec": {
                  "config": {
                    "override": {
                      "nodeAgent": {
                        "containers": {
                          "agent": {
                            "resources": {
                              "requests": {
                                "cpu": "256m"
                              }
                            }
                          }
                        }
                      }
                    }
                  },
                  "profileAffinity": {
                    "profileNodeAffinity": [
                      {
                        "key": "kubernetes.io/os",
                        "operator": "In",
                        "values": [
                          "linux"
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogDashboard",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "datadog-operator",
                    "app.kubernetes.io/instance": "datadogdashboard-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datadogdashboard",
                    "app.kubernetes.io/part-of": "datadog-operator"
                  },
                  "name": "datadogdashboard-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogGenericResource",
                "metadata": {
                  "name": "datadoggenericresource-notebook-sample"
                },
                "spec": {
                  "jsonSpec": "{\n  \"data\": {\n    \"attributes\": {\n      \"cells\": [\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"text\": \"## Some test markdown\\n\\n```js\\nvar x, y;\\nx = 5;\\ny = 6;\\n```\",\n              \"type\": \"markdown\"\n            }\n          },\n          \"type\": \"notebook_cells\"\n        },\n        {\n          \"attributes\": {\n            \"definition\": {\n              \"requests\": [\n                {\n                  \"display_type\": \"line\",\n                  \"q\": \"avg:system.load.1{*}\",\n                  \"style\": {\n                    \"line_type\": \"solid\",\n                    \"line_width\": \"normal\",\n                    \"palette\": \"dog_classic\"\n                  }\n                }\n              ],\n              \"show_legend\": true,\n              \"type\": \"timeseries\",\n              \"yaxis\": {\n                \"scale\": \"linear\"\n              }\n            },\n            \"graph_size\": \"m\",\n            \"split_by\": {\n              \"keys\": [],\n              \"tags\": []\n            },\n            \"time\": null\n          },\n          \"type\": \"notebook_cells\"\n        }\n      ],\n      \"name\": \"Example-Notebook\",\n      \"status\": \"published\",\n      \"time\": {\n        \"live_span\": \"1h\"\n      }\n    },\n    \"type\": \"notebooks\"\n  }\n}",
                  "type": "notebook"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMetric",
                "metadata": {
                  "name": "datadogmetric-sample"
                },
                "spec": {
                  "query": "avg:kubernetes.cpu.usage.total{app:foo}.rollup(avg,30)/(avg:kubernetes.cpu.limits{app:foo}.rollup(avg,30)*10000000)"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogMonitor",
                "metadata": {
                  "name": "datadogmonitor-sample"
                },
                "spec": {
                  "message": "Something is wrong and we need to fix it.",
                  "query": "avg(last_15m):avg:foo{env:staging,service:bar} \u003e 1",
                  "tags": [
                    "env:staging",
                    "service:bar"
                  ],
                  "title": "Latency is increasing on staging",
                  "type": "metric alert"
                }
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogPodAutoscaler",
                "metadata": {
                  "name": "datadogpodautoscaler-sample"
                },
                "spec": null
              },
              {
                "apiVersion": "datadoghq.com/v1alpha1",
                "kind": "DatadogSLO",
                "metadata": {
                  "name": "datadogslo-sample"
                },
                "spec": {
                  "description": "This is an example metric SLO from datadog-operator",
                  "name": "datadogslo-sample",
                  "query": {
                    "denominator": "sum:requests.total{service:example,env:prod}.as_count()",
                    "numerator": "sum:requests.success{service:example,env:prod}.as_count()"
                  },
                  "tags": [
                    "service:example",
                    "env:prod"
                  ],
                  "targetThreshold": "99.9",
                  "timeframe": "7d",
                  "type": "metric"
                }
              },
              {
                "apiVersion": "datadoghq.com/v2alpha1",
                "kind": "DatadogAgent",
                "metadata": {
                  "name": "datadogagent-sample"
                },
                "spec": {
                  "features": {
                    "admissionController": {
                      "enabled": false
                    },
                    "apm": {
                      "enabled": false
                    },
                    "clusterChecks": {
                      "enabled": true,
                      "useClusterChecksRunners": true
                    },
                    "liveProcessCollection": {
                      "enabled": false
                    },
                    "logCollection": {
                      "containerCollectAll": true,
                      "enabled": true
                    }
                  },
                  "global": {
                    "clusterAgentToken": "\u003cDATADOG_CLUSTER_AGENT_TOKEN\u003e",
                    "clusterName": "\u003cCLUSTER_NAME\u003e",
                    "credentials": {
                      "apiKey": "\u003cDATADOG_API_KEY\u003e",
                      "appKey": "\u003cDATADOG_APP_KEY\u003e"
                    },
                    "criSocketPath": "/var/run/crio/crio.sock",
                    "kubelet": {
                      "tlsVerify": false
                    }
                  },
                  "override": {
                    "clusterAgent": {
                      "containers": {
                        "cluster-agent": {
                          "securityContext": {
                            "readOnlyRootFilesystem": false
                          }
                        }
                      },
                      "replicas": 2,
                      "serviceAccountName": "datadog-agent-scc"
                    },
                    "clusterChecksRunner": {
                      "replicas": 2
                    },
                    "nodeAgent": {
                      "hostNetwork": true,
                      "securityContext": {
                        "runAsUser": 0,
                        "seLinuxOptions": {
                          "level": "s0",
                          "role": "system_r",
                          "type": "spc_t",
                          "user": "system_u"
                        }
                      },
                      "serviceAccountName": "datadog-agent-scc"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Monitoring, Logging & Tracing
          containerImage: registry.connect.redhat.com/datadog/operator@sha256:4dc5129abae9b2ee0a82336f9aa943cf25e392488ddf829415b2d3e205c9f03a
          createdAt: "2025-12-16 22:23:39"
          description: |-
            Datadog provides a modern monitoring and analytics platform. Gather metrics, logs and traces for full observability of your Kubernetes cluster with Datadog Operator.

            **WARNING**: Starting from version `1.21.0`, the Datadog Operator DatadogAgent controller only watches by default the namespace where it is installed. This means your `DatadogAgent` custom resource must be created in the same namespace as the Operator. This can be changed by removing the `DD_AGENT_WATCH_NAMESPACE` environment variable from the Datadog Operator deployment inside the ClusterServiceVersion YAML.
          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.skipRange: '>=1.7.0 <1.21.0'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/DataDog/datadog-operator
          support: Datadog, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DatadogAgentInternal is the Schema for the datadogagentinternals
              API
            displayName: Datadog Agent Internal
            kind: DatadogAgentInternal
            name: datadogagentinternals.datadoghq.com
            version: v1alpha1
          - description: DatadogAgentProfile is the Schema for the datadogagentprofiles
              API
            displayName: Datadog Agent Profile
            kind: DatadogAgentProfile
            name: datadogagentprofiles.datadoghq.com
            version: v1alpha1
          - description: DatadogAgent Deployment with the Datadog Operator.
            displayName: Datadog Agent
            kind: DatadogAgent
            name: datadogagents.datadoghq.com
            version: v2alpha1
          - description: DatadogDashboard is the Schema for the datadogdashboards
              API
            displayName: Datadog Dashboard
            kind: DatadogDashboard
            name: datadogdashboards.datadoghq.com
            version: v1alpha1
          - kind: DatadogGenericResource
            name: datadoggenericresources.datadoghq.com
            version: v1alpha1
          - description: DatadogMetric allows autoscaling on arbitrary Datadog query
            displayName: Datadog Metric
            kind: DatadogMetric
            name: datadogmetrics.datadoghq.com
            version: v1alpha1
          - description: DatadogMonitor allows to define and manage Monitors from
              your Kubernetes Cluster
            displayName: Datadog Monitor
            kind: DatadogMonitor
            name: datadogmonitors.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha1
          - description: DatadogPodAutoscaler is the Schema for the datadogpodautoscalers
              API
            displayName: Datadog Pod Autoscaler
            kind: DatadogPodAutoscaler
            name: datadogpodautoscalers.datadoghq.com
            version: v1alpha2
          - description: DatadogSLO allows a user to define and manage datadog SLOs
              from Kubernetes cluster.
            displayName: Datadog SLO
            kind: DatadogSLO
            name: datadogslos.datadoghq.com
            version: v1alpha1
        description: |-
          Datadog provides a modern monitoring and analytics platform. Gather metrics, logs and traces for full observability of your Kubernetes cluster with Datadog Operator.

          **WARNING**: Starting from version `1.21.0`, the Datadog Operator DatadogAgent controller only watches by default the namespace where it is installed. This means your `DatadogAgent` custom resource must be created in the same namespace as the Operator. This can be changed by removing the `DD_AGENT_WATCH_NAMESPACE` environment variable from the Datadog Operator deployment inside the ClusterServiceVersion YAML.
        displayName: Datadog Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Datadog
        - Monitoring
        - Logs
        - Tracing
        links:
        - name: Documentation
          url: https://docs.datadoghq.com/agent/kubernetes/
        - name: Kubernetes Monitoring Info
          url: https://www.datadoghq.com/blog/tag/kubernetes/
        maintainers:
        - email: support@datadoghq.com
          name: Datadog Inc.
        maturity: alpha
        minKubeVersion: 1.16.0
        provider:
          name: Datadog
        relatedImages:
        - registry.connect.redhat.com/datadog/operator-bundle@sha256:2456e6a9fc773f515eafb5e6c3d11aa7c65e07f6cf8324d32630895d4800009e
        - registry.connect.redhat.com/datadog/operator@sha256:4dc5129abae9b2ee0a82336f9aa943cf25e392488ddf829415b2d3e205c9f03a
        version: 1.21.0
      entries:
      - name: datadog-operator.v1.21.0
        version: 1.21.0
      - name: datadog-operator.v1.20.0
        version: 1.20.0
      - name: datadog-operator.v1.19.1
        version: 1.19.1
      - name: datadog-operator.v1.18.0
        version: 1.18.0
      - name: datadog-operator.v1.17.0
        version: 1.17.0
      - name: datadog-operator.v1.16.0
        version: 1.16.0
      - name: datadog-operator.v1.15.1
        version: 1.15.1
      - name: datadog-operator.v1.14.0
        version: 1.14.0
      - name: datadog-operator.v1.13.0
        version: 1.13.0
      - name: datadog-operator.v1.12.1
        version: 1.12.1
      - name: datadog-operator.v1.11.1
        version: 1.11.1
      - name: datadog-operator.v1.10.0
        version: 1.10.0
      - name: datadog-operator.v1.9.0
        version: 1.9.0
      - name: datadog-operator.v1.8.0
        version: 1.8.0
      - name: datadog-operator.v1.7.0
        version: 1.7.0
      - name: datadog-operator.v1.6.0
        version: 1.6.0
      - name: datadog-operator.v1.5.0
        version: 1.5.0
      - name: datadog-operator.v1.4.0
        version: 1.4.0
      - name: datadog-operator.v1.3.0
        version: 1.3.0
      - name: datadog-operator.v1.2.1
        version: 1.2.1
      name: stable
    defaultChannel: stable
    packageName: datadog-operator-certified
    provider:
      name: Datadog
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cryostat-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cryostat-operator.v4.1.0-13
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.cryostat.io/v1beta2",
                "kind": "Cryostat",
                "metadata": {
                  "name": "cryostat-sample"
                },
                "spec": {
                  "enableCertManager": true,
                  "eventTemplates": [],
                  "networkPolicies": {},
                  "reportOptions": {
                    "replicas": 0
                  },
                  "trustedCertSecrets": []
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring, Developer Tools
          containerImage: registry.redhat.io/cryostat/cryostat-rhel9-operator@sha256:d2ce6200997cf6b4894b556d8d149212df3408cd63004aa85d91beb853bac153
          createdAt: "2025-12-17T19:33:36Z"
          description: JVM monitoring and profiling tool
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=2.0.0 <4.1.0'
          olm.substitutesFor: cryostat-operator.v4.1.0
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "operator.cryostat.io/v1beta2",
              "kind": "Cryostat",
              "metadata": {
                "name": "cryostat-sample"
              },
              "spec": {
                "enableCertManager": true,
                "reportOptions": {
                  "replicas": 0
                }
              }
            }
          operators.openshift.io/valid-subscription: '["Red Hat build of OpenJDK"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/cryostatio/cryostat-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cryostat allows you to install Cryostat for a single namespace,
              or multiple namespaces. It contains configuration options for controlling
              the Deployment of the Cryostat application and its related components.
              A Cryostat instance must be created to instruct the operator to deploy
              the Cryostat application.
            displayName: Cryostat
            kind: Cryostat
            name: cryostats.operator.cryostat.io
            version: v1beta2
          - description: Cryostat allows you to install Cryostat for a single namespace.
              It contains configuration options for controlling the Deployment of
              the Cryostat application and its related components. A Cryostat instance
              must be created to instruct the operator to deploy the Cryostat application.
            displayName: Cryostat
            kind: Cryostat
            name: cryostats.operator.cryostat.io
            version: v1beta1
        description: |
          The Red Hat build of Cryostat provides a cloud-based solution for interacting with the JDK Flight Recorder already present in OpenJDK 11+ JVMs. With Cryostat, users can remotely start, stop, retrieve, and even analyze JFR event data, providing the capability to easily take advantage of Flight Recorder's extremely low runtime cost and overhead and the flexibility to monitor applications and analyze recording data without transferring data outside of the cluster the application runs within.
          ##Prerequisites
          Cryostat requires [cert-manager](https://cert-manager.io/) to run. If not already installed in your cluster, please [install](https://cert-manager.io/docs/installation/) it using your preferred method.
          When running on Kubernetes, the operator also requires [Ingress configurations](https://github.com/cryostatio/cryostat-operator/blob/v4.0.0/docs/config.md#network-options) for each of its services to make them available outside of the cluster. The user is responsible for providing the hostnames for each Ingress.
        displayName: Red Hat build of Cryostat
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - flightrecorder
        - java
        - jdk
        - jfr
        - jmc
        - missioncontrol
        - monitoring
        - profiling
        - diagnostic
        links:
        - name: Upstream Project
          url: https://github.com/cryostatio/cryostat
        - name: Website
          url: https://cryostat.io/
        maintainers:
        - email: cryostat-development@googlegroups.com
          name: The Cryostat Authors
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:85f5d9626e2332b066e1dce7186a26b72eab578128e9105b27964cf02b2ae225
        - registry.redhat.io/ubi9/nginx-124@sha256:f3a04b52db496c383a00252832d8809baff203145a53c35cbb71c3ab45cd8a10
        - registry.redhat.io/cryostat/cryostat-agent-init-rhel9@sha256:94ebd8d92359c1cfa18f9d3ffb08df02af53253c8b51d578b89c644806bbbdc4
        - registry.redhat.io/cryostat/cryostat-grafana-dashboard-rhel9@sha256:6fa1ef9bc8477162deda942ba4ca3f79b87928ad93ebefd4cb25eeeae0a0b33b
        - registry.redhat.io/cryostat/cryostat-rhel9-operator@sha256:d2ce6200997cf6b4894b556d8d149212df3408cd63004aa85d91beb853bac153
        - registry.redhat.io/cryostat/cryostat-rhel9@sha256:e66a567ab95fee5dc4cbee0917a46bd45010d691d9e12c553c82275711cf6705
        - registry.redhat.io/rh-lightspeed-runtimes/runtimes-inventory-rhel9-operator@sha256:a4e12329119133ab09754489d29110f13f1793b01e30b5d19b9ab0b9525b7360
        - registry.redhat.io/3scale-amp2/apicast-gateway-rhel8@sha256:5555fb6b7e8907a52f54fd93a19105e36fded2407c344d938dbdc0723b03baed
        - registry.redhat.io/cryostat/cryostat-db-rhel9@sha256:1715bf1197a9a95f8f54ab02ca167448c1390b385c901645b062d066f0ca5459
        - registry.redhat.io/cryostat/cryostat-operator-bundle@sha256:b634b9e8b54b89b9dc2119961b63d0288fdad007a1c48cc12b05595ad97fee83
        - registry.redhat.io/cryostat/cryostat-reports-rhel9@sha256:f7ac0c925c4728e482efc5f553c63a08e2dd453927e5eae606f83731d889c6a1
        - registry.redhat.io/cryostat/cryostat-openshift-console-plugin-rhel9@sha256:d64f56fcaa6c764edb1bb43c8a71af43c27aba56e36c8bac812c40a725a53ddc
        - registry.redhat.io/cryostat/cryostat-storage-rhel9@sha256:89bb337dd42d319e1fee74ac7650f30594461b7c56caa8c52f2628372e19ee3d
        - registry.redhat.io/cryostat/jfr-datasource-rhel9@sha256:b6c08667d49f70c3ba26a09a62a6224bf8c5d579be1988c0caca5212fe7d3d7a
        version: 4.1.0+13
      entries:
      - name: cryostat-operator.v4.1.0-13
        version: 4.1.0+13
      - name: cryostat-operator.v4.1.0
        version: 4.1.0
      - name: cryostat-operator.v4.0.3-3
        version: 4.0.3+3
      - name: cryostat-operator.v4.0.3
        version: 4.0.3
      - name: cryostat-operator.v4.0.2-4
        version: 4.0.2+4
      - name: cryostat-operator.v4.0.2
        version: 4.0.2
      - name: cryostat-operator.v4.0.1
        version: 4.0.1
      - name: cryostat-operator.v4.0.1-5
        version: 4.0.1+5
      - name: cryostat-operator.v4.0.1-4
        version: 4.0.1+4
      - name: cryostat-operator.v4.0.1-3
        version: 4.0.1+3
      - name: cryostat-operator.v4.0.1-2
        version: 4.0.1+2
      - name: cryostat-operator.v4.0.0-9
        version: 4.0.0+9
      - name: cryostat-operator.v4.0.0
        version: 4.0.0
      - name: cryostat-operator.v4.0.0-11
        version: 4.0.0+11
      - name: cryostat-operator.v4.0.0-10
        version: 4.0.0+10
      - name: cryostat-operator.v3.0.1-7
        version: 3.0.1+7
      - name: cryostat-operator.v3.0.1-9
        version: 3.0.1+9
      - name: cryostat-operator.v3.0.1-8
        version: 3.0.1+8
      - name: cryostat-operator.v3.0.1
        version: 3.0.1
      - name: cryostat-operator.v3.0.1-6
        version: 3.0.1+6
      - name: cryostat-operator.v3.0.1-5
        version: 3.0.1+5
      - name: cryostat-operator.v3.0.1-3
        version: 3.0.1+3
      - name: cryostat-operator.v3.0.1-13
        version: 3.0.1+13
      - name: cryostat-operator.v3.0.1-12
        version: 3.0.1+12
      - name: cryostat-operator.v3.0.1-11
        version: 3.0.1+11
      - name: cryostat-operator.v3.0.1-10
        version: 3.0.1+10
      - name: cryostat-operator.v3.0.0-6
        version: 3.0.0+6
      - name: cryostat-operator.v3.0.0-8
        version: 3.0.0+8
      - name: cryostat-operator.v3.0.0-12
        version: 3.0.0+12
      - name: cryostat-operator.v3.0.0
        version: 3.0.0
      - name: cryostat-operator.v2.4.0
        version: 2.4.0
      - name: cryostat-operator.v2.4.0-8
        version: 2.4.0+8
      - name: cryostat-operator.v2.4.0-7
        version: 2.4.0+7
      - name: cryostat-operator.v2.4.0-6
        version: 2.4.0+6
      - name: cryostat-operator.v2.4.0-4
        version: 2.4.0+4
      - name: cryostat-operator.v2.4.0-3
        version: 2.4.0+3
      - name: cryostat-operator.v2.3.1-6
        version: 2.3.1+6
      - name: cryostat-operator.v2.3.1-8
        version: 2.3.1+8
      - name: cryostat-operator.v2.3.1-9
        version: 2.3.1+9
      - name: cryostat-operator.v2.3.1
        version: 2.3.1
      - name: cryostat-operator.v2.3.0
        version: 2.3.0
      - name: cryostat-operator.v2.3.0-6
        version: 2.3.0+6
      - name: cryostat-operator.v2.2.1-14
        version: 2.2.1+14
      - name: cryostat-operator.v2.2.1-8
        version: 2.2.1+8
      - name: cryostat-operator.v2.2.1-5
        version: 2.2.1+5
      - name: cryostat-operator.v2.2.1-13
        version: 2.2.1+13
      - name: cryostat-operator.v2.2.1-12
        version: 2.2.1+12
      - name: cryostat-operator.v2.2.1-10
        version: 2.2.1+10
      - name: cryostat-operator.v2.2.1
        version: 2.2.1
      - name: cryostat-operator.v2.2.0
        version: 2.2.0
      - name: cryostat-operator.v2.1.1-2.1659469835.p
        version: 2.1.1+2.1659469835.p
      - name: cryostat-operator.v2.1.1-2.1655334614.p
        version: 2.1.1+2.1655334614.p
      - name: cryostat-operator.v2.1.1
        version: 2.1.1
      - name: cryostat-operator.v2.1.0
        version: 2.1.0
      name: stable
    defaultChannel: stable
    packageName: cryostat-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-spark-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: spark-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/spark-k8s-operator@sha256:3fa6f5fc9c9a7fa217bfcdc03aed1896e52edbc60b8173404eb102a4e099a83b
          description: Stackable Operator for Apache Spark
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/spark-k8s-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for SparkApplicationSpec via
              `CustomResource`
            displayName: sparkapplications.spark.stackable.tech
            kind: SparkApplication
            name: sparkapplications.spark.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for SparkHistoryServerSpec via
              `CustomResource`
            displayName: sparkhistoryservers.spark.stackable.tech
            kind: SparkHistoryServer
            name: sparkhistoryservers.spark.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for SparkConnectServerSpec via
              `CustomResource`
            displayName: sparkconnectservers.spark.stackable.tech
            kind: SparkConnectServer
            name: sparkconnectservers.spark.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache Spark
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - spark-k8s
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/spark-k8s-operator@sha256:3fa6f5fc9c9a7fa217bfcdc03aed1896e52edbc60b8173404eb102a4e099a83b
        - registry.connect.redhat.com/stackable/stackable-apache-spark-k8s-operator@sha256:211d435f78730b3fa265df3f6a1a9c4649b060f1bad2b1709c935740deb94057
        version: 25.11.0
      entries:
      - name: spark-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-spark-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-kafka-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-kafka-controller.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kafka.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/kafka-controller:1.3.0
          createdAt: "2025-11-29T05:27:24Z"
          description: AWS Kafka controller is a service controller for managing Kafka
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster represents the state of an AWS kafka Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.kafka.services.k8s.aws
            version: v1alpha1
          - description: Configuration represents the state of an AWS kafka Configuration
              resource.
            displayName: Configuration
            kind: Configuration
            name: configurations.kafka.services.k8s.aws
            version: v1alpha1
          - description: ServerlessCluster represents the state of an AWS kafka ServerlessCluster
              resource.
            displayName: ServerlessCluster
            kind: ServerlessCluster
            name: serverlessclusters.kafka.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Kafka resources in AWS from within your Kubernetes cluster.

          **About Amazon Kafka**

          Amazon Managed Streaming for Apache Kafka (Amazon MSK) is a fully managed AWS streaming data service makes it easy for you to build and run applications that use Apache Kafka to process streaming data without needing to become an expert in operating Apache Kafka clusters. Amazon MSK manages the provisioning, configuration, and maintenance of Apache Kafka clusters and Apache ZooKeeper nodes for you. Amazon MSK also shows key Apache Kafka performance metrics in the AWS Console.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Kafka
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kafka
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Kafka Developer Resources
          url: https://aws.amazon.com/msk/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: kafka maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/kafka-controller:1.3.0
        - quay.io/community-operator-pipeline-prod/ack-kafka-controller@sha256:adf201fadd82f900d371ba5dd17dca2cc205cf2e8f796af191cf45c73a1745b3
        version: 1.3.0
      entries:
      - name: ack-kafka-controller.v1.3.0
        version: 1.3.0
      - name: ack-kafka-controller.v1.2.2
        version: 1.2.2
      - name: ack-kafka-controller.v1.2.1
        version: 1.2.1
      - name: ack-kafka-controller.v1.2.0
        version: 1.2.0
      - name: ack-kafka-controller.v1.1.3
        version: 1.1.3
      - name: ack-kafka-controller.v1.1.2
        version: 1.1.2
      - name: ack-kafka-controller.v1.1.1
        version: 1.1.1
      - name: ack-kafka-controller.v1.1.0
        version: 1.1.0
      - name: ack-kafka-controller.v1.0.14
        version: 1.0.14
      - name: ack-kafka-controller.v1.0.13
        version: 1.0.13
      - name: ack-kafka-controller.v1.0.12
        version: 1.0.12
      - name: ack-kafka-controller.v1.0.11
        version: 1.0.11
      - name: ack-kafka-controller.v1.0.10
        version: 1.0.10
      - name: ack-kafka-controller.v1.0.8
        version: 1.0.8
      - name: ack-kafka-controller.v1.0.7
        version: 1.0.7
      - name: ack-kafka-controller.v1.0.6
        version: 1.0.6
      - name: ack-kafka-controller.v1.0.5
        version: 1.0.5
      - name: ack-kafka-controller.v1.0.4
        version: 1.0.4
      - name: ack-kafka-controller.v1.0.3
        version: 1.0.3
      - name: ack-kafka-controller.v1.0.2
        version: 1.0.2
      - name: ack-kafka-controller.v1.0.1
        version: 1.0.1
      - name: ack-kafka-controller.v1.0.0
        version: 1.0.0
      - name: ack-kafka-controller.v0.0.14
        version: 0.0.14
      - name: ack-kafka-controller.v0.0.12
        version: 0.0.12
      - name: ack-kafka-controller.v0.0.11
        version: 0.0.11
      - name: ack-kafka-controller.v0.0.10
        version: 0.0.10
      - name: ack-kafka-controller.v0.0.9
        version: 0.0.9
      - name: ack-kafka-controller.v0.0.8
        version: 0.0.8
      - name: ack-kafka-controller.v0.0.7
        version: 0.0.7
      - name: ack-kafka-controller.v0.0.6
        version: 0.0.6
      - name: ack-kafka-controller.v0.0.5
        version: 0.0.5
      - name: ack-kafka-controller.v0.0.4
        version: 0.0.4
      - name: ack-kafka-controller.v0.0.3
        version: 0.0.3
      name: alpha
    defaultChannel: alpha
    packageName: ack-kafka-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: gitwebhook-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitwebhook-operator.v0.1.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "GitWebhook",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "gitwebhook-operator",
                    "app.kubernetes.io/instance": "gitwebhook-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "gitwebhook",
                    "app.kubernetes.io/part-of": "gitwebhook-operator"
                  },
                  "name": "gitwebhook-sample"
                },
                "spec": null
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools
          certified: "false"
          containerImage: quay.io/redhat-cop/gitwebhook-operator@sha256:2810d75eebb24069dbbedf6a82285136c6f16b4cc58b59f1b0fbdc38560cf8a8
          createdAt: "2024-05-10T18:17:13Z"
          description: An operator to create git webhooks declaratively
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: gitwebhook-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/gitwebhook-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: GitWebhook is the Schema for the gitwebhooks API
            displayName: Git Webhook
            kind: GitWebhook
            name: gitwebhooks.redhatcop.redhat.io
            version: v1alpha1
        description: "This operator automates the setting up of git webhooks. Its
          main purpose is to stream line the configuration of operators such as Tekton
          or ArgoCD which rely on git webhooks for some of their functionalities.\n\n##
          The GitWebhook CRD\n \nA CRD is provided by this operator to create a git
          web hook, here is an example for github\n\n```yaml\napiVersion: redhatcop.redhat.io/v1alpha1\nkind:
          GitWebhook\nmetadata:\n  name: gitwebhook-github\nspec:\n  gitHub:\n    gitServerCredentials:\n
          \     name: github-pat\n  repositoryOwner: ${repo_owner}\n  ownerType: user\n
          \ repositoryName: ${repo_name}\n  webhookURL: https://hellowebhook.com\n
          \ insecureSSL: false\n  webhookSecret:\n    name: webhook-secret\n  events:\n
          \   - push  \n  contentType: json\n  active: true  \n```    \n\nhere is
          an explanation of each field:\n\n- `gihub` specifies how to connect to the
          git api server. It also requires a local reference to a secret (in the same
          namespace) containing a key `token` with a valid github token to be used
          to authenticate. A similar `gitLab` section exists when connecting to gitlab.
          Only one of `gitLab` or `gitHub` can be defined. \n- `repositoryOwner` and
          `repositoryName` identify the repository for which we want to receive events.\n-
          `ownerType` can have two values: `user` and `organization` and identifies
          the kind of owner.\n- `webhookURL` is the URL for to be called.\n - `insecureSSL`
          defines whether the target URL certificate should be validated (default
          `false`). \n- `webhookSecret` defines a local reference to a secret containing
          the `secret` key. The value is a shared secret between the webhook caller
          and the received for farther validation or identification of the caller.\n-
          `events` is the list of the repo-level events that the webhook should generate.
          The list of valid events for github can be found [here](https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads).
          The list of valid events for gitlab can be found [here](https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html).\n
          - `contentType` defines the format of the webhook payload (default `json`)
          (github).\n - `active` whether the webhook should be turned on (default
          `true`) (github).\n - `pushEventBranchFilter` a regular expression to filter
          from which branches push events should be generated (gitlab only).\n\n##
          Security Considerations\n\nThis operator does not own credentials for the
          git server, but instead always allocate a new connection based on the credentials
          referenced in the CR and every reconcile cycle. As a result there is no
          risk of security escalation or credential leaking between tenants of a cluster
          using this operator. On the other hand it is the responsibility of the namespace
          owners or the platform owner to ensure that valid git credentials are always
          available in the namespace where the GitWebhook CRs need to defined.\n\n##
          Current support\n\nCurrently this operator support creating repo-level webhooks
          for github and gitlab. Potentially this operator could be extended to support
          org-level webhook or other git systems. Contributions are welcome.  "
        displayName: GitWebhook operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - webhook
        - github
        - gitlab
        links:
        - name: GitWbehook Operator
          url: https://github.com/redhat-cop/gitwebhook-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/gitwebhook-operator
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d99a8d144816b951a67648c12c0b988936ccd25cf3754f3cd85ab8c01592248f
        - quay.io/community-operator-pipeline-prod/gitwebhook-operator@sha256:2d33e4f4f4b607ee2006481efc7ad9341049085ef988777d23e586f7406a5109
        - quay.io/redhat-cop/gitwebhook-operator@sha256:2810d75eebb24069dbbedf6a82285136c6f16b4cc58b59f1b0fbdc38560cf8a8
        version: 0.1.2
      entries:
      - name: gitwebhook-operator.v0.1.2
        version: 0.1.2
      - name: gitwebhook-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: gitwebhook-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-route53-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-route53-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/route53-controller:1.2.0
          createdAt: "2025-11-29T03:54:20Z"
          description: AWS Route53 controller is a service controller for managing
            Route53 resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HealthCheck represents the state of an AWS route53 HealthCheck
              resource.
            displayName: HealthCheck
            kind: HealthCheck
            name: healthchecks.route53.services.k8s.aws
            version: v1alpha1
          - description: HostedZone represents the state of an AWS route53 HostedZone
              resource.
            displayName: HostedZone
            kind: HostedZone
            name: hostedzones.route53.services.k8s.aws
            version: v1alpha1
          - description: RecordSet represents the state of an AWS route53 RecordSet
              resource.
            displayName: RecordSet
            kind: RecordSet
            name: recordsets.route53.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Route53 resources in AWS from within your Kubernetes cluster.

          **About Amazon Route53**

          Amazon Route 53 is a highly available and scalable Domain Name System (DNS) web service. You can use Route 53 to perform three main functions in any combination: domain registration, DNS routing, and health checking.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Route53
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - route53
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Route53 Developer Resources
          url: https://docs.aws.amazon.com/route53/index.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: eks maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/route53-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-route53-controller@sha256:a584b4a23fc60948a8d6425922a484459daaa711766190bd85ae500c1407dbd1
        version: 1.2.0
      entries:
      - name: ack-route53-controller.v1.2.0
        version: 1.2.0
      - name: ack-route53-controller.v1.1.2
        version: 1.1.2
      - name: ack-route53-controller.v1.1.1
        version: 1.1.1
      - name: ack-route53-controller.v1.1.0
        version: 1.1.0
      - name: ack-route53-controller.v1.0.6
        version: 1.0.6
      - name: ack-route53-controller.v1.0.5
        version: 1.0.5
      - name: ack-route53-controller.v1.0.3
        version: 1.0.3
      - name: ack-route53-controller.v1.0.2
        version: 1.0.2
      - name: ack-route53-controller.v0.1.0
        version: 0.1.0
      - name: ack-route53-controller.v0.0.28
        version: 0.0.28
      - name: ack-route53-controller.v0.0.27
        version: 0.0.27
      - name: ack-route53-controller.v0.0.26
        version: 0.0.26
      - name: ack-route53-controller.v0.0.25
        version: 0.0.25
      - name: ack-route53-controller.v0.0.24
        version: 0.0.24
      - name: ack-route53-controller.v0.0.23
        version: 0.0.23
      - name: ack-route53-controller.v0.0.22
        version: 0.0.22
      - name: ack-route53-controller.v0.0.20
        version: 0.0.20
      - name: ack-route53-controller.v0.0.19
        version: 0.0.19
      - name: ack-route53-controller.v0.0.18
        version: 0.0.18
      - name: ack-route53-controller.v0.0.17
        version: 0.0.17
      - name: ack-route53-controller.v0.0.16
        version: 0.0.16
      - name: ack-route53-controller.v0.0.15
        version: 0.0.15
      - name: ack-route53-controller.v0.0.14
        version: 0.0.14
      - name: ack-route53-controller.v0.0.13
        version: 0.0.13
      - name: ack-route53-controller.v0.0.9
        version: 0.0.9
      - name: ack-route53-controller.v0.0.6
        version: 0.0.6
      - name: ack-route53-controller.v0.0.4
        version: 0.0.4
      - name: ack-route53-controller.v0.0.3
        version: 0.0.3
      - name: ack-route53-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-route53-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Silicom Ltd.
      provider-url: http://www.silicom-usa.com
    name: silicom-sts-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: silicom-sts-operator.v0.0.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "gm-1",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    }
                  ],
                  "mode": "T-GM.8275.1",
                  "namespace": "openshift-operators",
                  "nodeSelector": {
                    "sts.silicom.com/config": "gm-1"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "bc-1"
                },
                "spec": {
                  "aprLevel": 0,
                  "domainNumber": 24,
                  "esmcMode": 1,
                  "forwardable": 0,
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Slave",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "holdoff": 500,
                      "ipv4": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    }
                  ],
                  "mode": "T-TBC.8275.1",
                  "mode10MHz": 2,
                  "modePPS": 2,
                  "namespace": "openshift-operators",
                  "nodeSelector": {
                    "sts.silicom.com/config": "bc-1"
                  },
                  "phyLedsCtl": 0,
                  "priority2": 128,
                  "src10MHz": 1,
                  "srcPPS": 1,
                  "syncOption": 1,
                  "synceCpu": 10,
                  "synceRecClkPort": 0,
                  "tracePtpMsg": -1,
                  "twoStep": 0
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsNode",
                "metadata": {
                  "name": "worker2"
                },
                "spec": null,
                "status": {
                  "ethInterfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "pciAddr": "02:00.0",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "pciAddr": "02:00.1",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "pciAddr": "02:00.2",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f3",
                      "ethPort": 3,
                      "pciAddr": "02:00.3",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f4",
                      "ethPort": 4,
                      "pciAddr": "02:00.4",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f5",
                      "ethPort": 5,
                      "pciAddr": "02:00.5",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f6",
                      "ethPort": 6,
                      "pciAddr": "02:00.6",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f7",
                      "ethPort": 7,
                      "pciAddr": "02:00.7",
                      "status": "down"
                    }
                  ],
                  "gpsStatus": {
                    "active": 0,
                    "device": "",
                    "lat": "",
                    "lon": "",
                    "mode": 0,
                    "time": "2021-12-01T09:57:10.968Z"
                  },
                  "tsyncStatus": {
                    "mode": "PTP Master Mode",
                    "status": "Normal Status",
                    "time": "Wed, 01 Dec 2021 09:57:10 UTC"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsOperatorConfig",
                "metadata": {
                  "name": "sts-operator-config",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "images": null,
                  "sro": null
                }
              }
            ]
          capabilities: Basic Install
          categories: Drivers and plugins
          certified: "false"
          containerImage: quay.io/silicom/sts-operator:0.0.6
          createdAt: 2021-11-17T10:21:24 CET
          description: |
            This Operator is a Kubernetes custom controller whose goal
            is to serve the installation and lifecycle management of
            Silicom STS device plugins for Kubernetes.
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io.bundle.channels.v1: alpha
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/silicomdk/sts-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StsConfig is the Schema for the stsconfigs API
            displayName: Sts Config
            kind: StsConfig
            name: stsconfigs.sts.silicom.com
            version: v1alpha1
          - description: StsNode is the Schema for the stsnodes API
            displayName: Sts Node
            kind: StsNode
            name: stsnodes.sts.silicom.com
            version: v1alpha1
          - description: StsOperatorConfig is the Schema for the stsoperatorconfigs
              API
            displayName: Sts Operator Config
            kind: StsOperatorConfig
            name: stsoperatorconfigs.sts.silicom.com
            version: v1alpha1
        description: |
          Silicom STS line card for 4G and 5G NIC enable real-time data transmission
          with high timing accuracy at the lowest cost to power 5G DRAN and CRAN edge
          deployments.

          * Support 1588/PTP over IPv4 / IPV6, IEEE1588v2
          * Support SyncE /ITU-T G.8262
          * T-BC/T-TSC Boundary Clock and TSC Slave Clock /G.8273.2
          * T-GM Grand Master /G.8273.1 per G.8275.1 PTP Profile
          * PRTC Primary Reference Time Clock Class B/G.8272
          * T-TC Transparent Clock /G.8273.3
          * 1588 Software Stack and Servo Software in x86
          * [Silicom STS2 Card](https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/p410g8ts81-timesync-server-adapter)

          ### Prequisites:
          * [NFD Operator](https://operatorhub.io/operator/nfd-operator "NFD operator needed for the discovery of STS cards").
          * [SRO Operator](https://github.com/openshift/special-resource-operator)
        displayName: Silicom STS Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sts
        - silicom
        - ptp
        links:
        - name: GitHub Repository
          url: https://github.com/silicomDK/sts-operator
        - name: Github SRO Helm Charts
          url: https://github.com/silicomDK/sts2-charts
        - name: Silicom Ltd.
          url: http://www.silicom-usa.com
        maintainers:
        - email: rmr@silicom.dk
          name: Ryan M. Raasch
        maturity: beta
        provider:
          name: Silicom Ltd.
          url: http://www.silicom-usa.com
        relatedImages:
        - quay.io/silicom/ice-driver-src@sha256:ca728f648769d31501cdedda92554bcfa890754405b0b06d41629cea47707da8
        - quay.io/silicom/tsyncd@sha256:78be78ec8939f025f9a8b899693ab77b3990116d1c7ffb2115c620b7c3382d9d
        - quay.io/silicom/gpsd@sha256:649e8a6c524920e1c564d8f797b8d64235b2527aa923f94bc9c7a0b7aba8ae7f
        - quay.io/silicom/sts-operator:0.0.6
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/silicom-sts-operator@sha256:5d4e4e62b03888bcbf6336934f2ddf5c5cb3d91bc8482a3aa1697e09625c6865
        - quay.io/silicom/grpc-tsyncd@sha256:aac7233423439e352d8eb39cef63e479c30c2f80b063c84ffc8797cc5a045117
        - quay.io/silicom/phc2sys@sha256:0f3b63a3059b7d6158a916814281097f0d418b99a5fac9e8e5fd9bae58fb0b74
        - quay.io/silicom/sts-plugin@sha256:44339fd400d46d9dddb02c2da47c6f9f96ad2605a5c6de8a7dce2f8c3da3bb57
        - quay.io/silicom/tsync_extts@sha256:be6a5950a5fdc6fdf8015767901856bf173d01bdc803be7141e4f9795ab1478a
        version: 0.0.6
      entries:
      - name: silicom-sts-operator.v0.0.6
        version: 0.0.6
      - name: silicom-sts-operator.v0.0.5
        version: 0.0.5
      - name: silicom-sts-operator.v0.0.4
        version: 0.0.4
      - name: silicom-sts-operator.v0.0.3
        version: 0.0.3
      - name: silicom-sts-operator.v0.0.2
        version: 0.0.2
      - name: silicom-sts-operator.v0.0.1
        version: 0.0.1
      name: alpha
    - currentCSV: silicom-sts-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "gm-1",
                  "namespace": "sts-silicom"
                },
                "spec": {
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "mode": "Master",
                      "synce": 1
                    }
                  ],
                  "mode": "T-GM.8275.1",
                  "namespace": "sts-silicom",
                  "nodeSelector": {
                    "sts.silicom.com/config": "gm-1"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsConfig",
                "metadata": {
                  "name": "bc-1"
                },
                "spec": {
                  "aprLevel": 0,
                  "domainNumber": 24,
                  "esmcMode": 1,
                  "forwardable": 0,
                  "interfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Slave",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "holdoff": 500,
                      "ipv4": 1,
                      "ipv6": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "holdoff": 500,
                      "ipv4": 1,
                      "mode": "Master",
                      "ql": 4,
                      "qlEnable": 1,
                      "synce": 1
                    }
                  ],
                  "mode": "T-TBC.8275.1",
                  "mode10MHz": 2,
                  "modePPS": 2,
                  "namespace": "sts-silicom",
                  "nodeSelector": {
                    "sts.silicom.com/config": "bc-1"
                  },
                  "phyLedsCtl": 0,
                  "priority2": 128,
                  "src10MHz": 1,
                  "srcPPS": 1,
                  "syncOption": 1,
                  "synceCpu": 10,
                  "synceRecClkPort": 0,
                  "tracePtpMsg": -1,
                  "twoStep": 0
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsNode",
                "metadata": {
                  "name": "worker2"
                },
                "spec": null,
                "status": {
                  "ethInterfaces": [
                    {
                      "ethName": "enp2s0f0",
                      "ethPort": 0,
                      "pciAddr": "02:00.0",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f1",
                      "ethPort": 1,
                      "pciAddr": "02:00.1",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f2",
                      "ethPort": 2,
                      "pciAddr": "02:00.2",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f3",
                      "ethPort": 3,
                      "pciAddr": "02:00.3",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f4",
                      "ethPort": 4,
                      "pciAddr": "02:00.4",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f5",
                      "ethPort": 5,
                      "pciAddr": "02:00.5",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f6",
                      "ethPort": 6,
                      "pciAddr": "02:00.6",
                      "status": "down"
                    },
                    {
                      "ethName": "enp2s0f7",
                      "ethPort": 7,
                      "pciAddr": "02:00.7",
                      "status": "down"
                    }
                  ],
                  "gpsStatus": {
                    "active": 0,
                    "device": "",
                    "lat": "",
                    "lon": "",
                    "mode": 0,
                    "time": "2021-12-01T09:57:10.968Z"
                  },
                  "tsyncStatus": {
                    "mode": "PTP Master Mode",
                    "status": "Normal Status",
                    "time": "Wed, 01 Dec 2021 09:57:10 UTC"
                  }
                }
              },
              {
                "apiVersion": "sts.silicom.com/v1alpha1",
                "kind": "StsOperatorConfig",
                "metadata": {
                  "name": "sts-operator-config"
                },
                "spec": {
                  "gpsSvcPort": 2947,
                  "grpcSvcPort": 50051,
                  "images": {
                    "gpsd": "quay.io/silicom/gpsd:3.23.1",
                    "grpcTsyncd": "quay.io/silicom/grpc-tsyncd:2.1.0.0",
                    "phcs2Sys": "quay.io/silicom/phcs2sys:3.1.1",
                    "stsPlugin": "quay.io/silicom/sts-plugin:0.0.2",
                    "ts2Phcs": "quay.io/silicom/ts2phcs:1.0.0",
                    "tsyncd": "quay.io/silicom/tsyncd:2.1.0.0"
                  },
                  "namespace": "sts-silicom",
                  "sro": {
                    "chart": {
                      "name": "ice-special-resource",
                      "repository": {
                        "name": "ice-special-resource",
                        "url": "http://ice-driver-src"
                      },
                      "version": "0.0.1"
                    },
                    "iceVersion": "1.7.16",
                    "namespace": "openshift-operators",
                    "srcImage": "quay.io/silicom/ice-driver-src:1.7.16",
                    "srcSvcPort": 3000
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Drivers and plugins
          certified: "false"
          containerImage: quay.io/silicom/sts-operator:0.0.2
          createdAt: 2021-11-17T10:21:24 CET
          description: This Operator is a Kubernetes custom controller whose goal
            is to serve the installation and lifecycle management of Silicom STS device
            plugins for Kubernetes.
          operators.operatorframework.io.bundle.channels.v1: stable,development
          operators.operatorframework.io/builder: operator-sdk-v1.15.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: github.com/silicomdk/sts-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: StsConfig is the Schema for the stsconfigs API
            displayName: Sts Config
            kind: StsConfig
            name: stsconfigs.sts.silicom.com
            version: v1alpha1
          - description: StsNode is the Schema for the stsnodes API
            displayName: Sts Node
            kind: StsNode
            name: stsnodes.sts.silicom.com
            version: v1alpha1
          - description: StsOperatorConfig is the Schema for the stsoperatorconfigs
              API
            displayName: Sts Operator Config
            kind: StsOperatorConfig
            name: stsoperatorconfigs.sts.silicom.com
            version: v1alpha1
        description: |
          Silicom STS line card for 4G and 5G NIC enable real-time data transmission
          with high timing accuracy at the lowest cost to power 5G DRAN and CRAN edge
          deployments.

          * Support 1588/PTP over IPv4 / IPV6, IEEE1588v2
          * Support SyncE /ITU-T G.8262
          * T-BC/T-TSC Boundary Clock and TSC Slave Clock /G.8273.2
          * T-GM Grand Master /G.8273.1 per G.8275.1 PTP Profile
          * PRTC Primary Reference Time Clock Class B/G.8272
          * T-TC Transparent Clock /G.8273.3
          * 1588 Software Stack and Servo Software in x86
          * [Silicom STS2 Card](https://www.silicom-usa.com/pr/server-adapters/networking-adapters/10-gigabit-ethernet-networking-adapters/p410g8ts81-timesync-server-adapter)

          ### Prequisites:
          * [NFD Operator](https://operatorhub.io/operator/nfd-operator "NFD operator needed for the discovery of STS cards").
          * [SRO Operator](https://github.com/openshift/special-resource-operator)
        displayName: Silicom STS Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sts
        - silicom
        - ptp
        links:
        - name: GitHub Repository
          url: https://github.com/silicomDK/sts-operator
        - name: Github SRO Helm Charts
          url: https://github.com/silicomDK/sts2-charts
        - name: Silicom Ltd.
          url: http://www.silicom-usa.com
        maintainers:
        - email: rmr@silicom.dk
          name: Ryan M. Raasch
        maturity: beta
        provider:
          name: Silicom Ltd.
          url: http://www.silicom-usa.com
        relatedImages:
        - quay.io/silicom/sts-operator:0.0.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
        - quay.io/openshift-community-operators/silicom-sts-operator@sha256:df0939534c6aaa988714e64728ecdb387ff7dc4b32a5d97d56703ab143787171
        version: 0.0.2
      entries:
      - name: silicom-sts-operator.v0.0.2
        version: 0.0.2
      - name: silicom-sts-operator.v0.0.1
        version: 0.0.1
      name: beta
    defaultChannel: alpha
    packageName: silicom-sts-operator
    provider:
      name: Silicom Ltd.
      url: http://www.silicom-usa.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Alvearie
      provider-url: https://alvearie.github.io
    name: alvearie-imaging-ingestion
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: imaging-ingestion-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomEventBridge",
                "metadata": {
                  "name": "events"
                },
                "spec": {
                  "dicomEventDrivenIngestionName": "core",
                  "eventBridge": {},
                  "imagePullPolicy": "Always",
                  "natsSecure": true,
                  "natsSubjectRoot": "events",
                  "natsTokenSecret": "nats-events-secure-bound-token",
                  "natsUrl": "jetstream.imaging-ingestion.svc.cluster.local:4222",
                  "role": "hub"
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomEventDrivenIngestion",
                "metadata": {
                  "name": "core"
                },
                "spec": {
                  "databaseConfigName": "db-config",
                  "databaseSecretName": "db-secret",
                  "eventProcessor": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  },
                  "imagePullPolicy": "Always"
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomInstanceBinding",
                "metadata": {
                  "name": "stow"
                },
                "spec": {
                  "bindingConfigName": "instance-binding-config",
                  "bindingSecretName": "instance-binding-secret",
                  "dicomEventDrivenIngestionName": "core",
                  "imagePullPolicy": "Always",
                  "instanceBinding": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  }
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomStudyBinding",
                "metadata": {
                  "name": "fhir"
                },
                "spec": {
                  "bindingConfigName": "study-binding-config",
                  "bindingSecretName": "study-binding-secret",
                  "dicomEventDrivenIngestionName": "core",
                  "imagePullPolicy": "Always",
                  "studyBinding": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  }
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DicomwebIngestionService",
                "metadata": {
                  "name": "ingestion"
                },
                "spec": {
                  "bucketConfigName": "imaging-ingestion",
                  "bucketSecretName": "imaging-ingestion",
                  "dicomEventDrivenIngestionName": "core",
                  "imagePullPolicy": "Always",
                  "providerName": "provider",
                  "stowService": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  },
                  "wadoService": {
                    "concurrency": 0,
                    "maxReplicas": 3,
                    "minReplicas": 0
                  }
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DimseIngestionService",
                "metadata": {
                  "name": "ingestion"
                },
                "spec": {
                  "applicationEntityTitle": "DICOM-INGEST",
                  "bucketConfigName": "imaging-ingestion",
                  "bucketSecretName": "imaging-ingestion",
                  "dicomEventDrivenIngestionName": "core",
                  "dimseService": {},
                  "imagePullPolicy": "Always",
                  "natsSecure": true,
                  "natsSubjectRoot": "DIMSE",
                  "natsTokenSecret": "ingestion-nats-secure-bound-token",
                  "natsUrl": "nats-secure.imaging-ingestion.svc.cluster.local:4222",
                  "providerName": "provider"
                }
              },
              {
                "apiVersion": "imaging-ingestion.alvearie.org/v1alpha1",
                "kind": "DimseProxy",
                "metadata": {
                  "name": "ingestion"
                },
                "spec": {
                  "applicationEntityTitle": "DCM4CHEE",
                  "imagePullPolicy": "Always",
                  "natsSecure": true,
                  "natsSubjectRoot": "DIMSE",
                  "natsTokenSecret": "ingestion-nats-secure-bound-token",
                  "natsUrl": "nats-secure.imaging-ingestion.svc.cluster.local:4222",
                  "proxy": {},
                  "targetDimseHost": "arc.dcm4chee.svc.cluster.local",
                  "targetDimsePort": 11112
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: alvearie/imaging-ingestion-operator:0.0.3
          createdAt: "2021-04-08T15:29:55Z"
          description: The Alvearie Imaging Ingestion provides a collection of components
            for extending enterprise medical imaging informatics systems to Kubernetes.
          operators.operatorframework.io/builder: operator-sdk-v1.16.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/Alvearie/imaging-ingestion
          support: alvearie.slack.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DicomEventBridge is the Schema for the dicomeventbridges
              API
            displayName: Dicom Event Bridge
            kind: DicomEventBridge
            name: dicomeventbridges.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Event driven manifest of all DICOM data across all associated
              S3 buckets
            displayName: Dicom Event Driven Ingestion
            kind: DicomEventDrivenIngestion
            name: dicomeventdriveningestions.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Fan-out notification of DICOM instance data (STOW-RS)
            displayName: Dicom Instance Binding
            kind: DicomInstanceBinding
            name: dicominstancebindings.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Fan-out notification of DICOM studies (FHIRv4 ImagingStudy)
            displayName: Dicom Study Binding
            kind: DicomStudyBinding
            name: dicomstudybindings.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Provides DICOMweb WADO-RS and STOW-RS access to a S3 bucket
            displayName: Dicomweb Ingestion Service
            kind: DicomwebIngestionService
            name: dicomwebingestionservices.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Provides a proxied DIMSE Application Entity (AE) in the cluster
              for C-STORE operations to a storage space
            displayName: Dimse Ingestion Service
            kind: DimseIngestionService
            name: dimseingestionservices.imaging-ingestion.alvearie.org
            version: v1alpha1
          - description: Provides a bidirectional proxied DIMSE Application Entity
              (AE) in the cluster
            displayName: Dimse Proxy
            kind: DimseProxy
            name: dimseproxies.imaging-ingestion.alvearie.org
            version: v1alpha1
        description: |
          The Alvearie Imaging Ingestion provides a collection of components for extending enterprise medical imaging informatics systems to Kubernetes.

          ## About this Operator
          This operator enables standards-based medical imaging application interfaces such as DICOM Message Service Element (DIMSE) and DICOMweb.
          The API's provided allow for extending enterprise imaging systems to the cloud with custom, fit for purpose deployments.
          This is possible at speed, low cost, and little or zero integration effort.or extending enterprise medical imaging informatics systems to a modern cloud.


          Some potential usages:

          - Perform lightweight secure bridging of DICOM from the enterprise imaging zone to a cloud availability zone.
          - Utilize S3 buckets for segregating DICOM data to be used for clinical or scientific purposes.
          - Fan-out DICOM data to a number of different DICOM subscribers
          - Generate FHIRv4 *ImagingStudy* resources from ingested content and publish to a FHIRv4 based patient logitudinal record.
          - Distribute imaging study arrival and update notifications to imaging study subscribers


          ## Prerequisites

          - [Knative](https://operatorhub.io/operator/knative-operator)
          - ProgresSQL such as [Crunchy](https://operatorhub.io/operator/postgresql)
          - S3 storage such as [MinIO](https://operatorhub.io/operator/minio-operator)
          - [NATS operator](https://github.com/nats-io/nats-operator/) (Optional:  only required for DIMSE Proxy component)



          ## Documentation

          Visit the [official github repository](https://github.com/Alvearie/imaging-ingestion) for documentation and examples.
        displayName: Alvearie Imaging Ingestion Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - dicom
        - medical imaging
        - fhir
        - dimse-c
        - dimse
        - imaging study
        links:
        - name: Alvearie Imaging Ingestion Operator
          url: https://github.com/Alvearie/imaging-ingestion
        maintainers:
        - email: rduggan@ca.ibm.com
          name: Richard Duggan
        - email: jjacob@us.ibm.com
          name: Jeesmon Jacob
        maturity: alpha
        provider:
          name: Alvearie
          url: https://alvearie.github.io
        relatedImages:
        - quay.io/openshift-community-operators/alvearie-imaging-ingestion@sha256:f65cc3cb83b1c75385970ce70c6a84b15b143e682ad0d1784148f1643df0991e
        - alvearie/imaging-ingestion-operator:0.0.3
        version: 0.0.3
      entries:
      - name: imaging-ingestion-operator.v0.0.3
        version: 0.0.3
      - name: imaging-ingestion-operator.v0.0.2
        version: 0.0.2
      - name: imaging-ingestion-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: alvearie-imaging-ingestion
    provider:
      name: Alvearie
      url: https://alvearie.github.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Grafana Loki SIG Operator
      provider-url: ""
    name: loki-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: loki-operator.v0.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "AlertingRule",
                "metadata": {
                  "name": "alertingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "alerting-rules-group",
                      "rules": [
                        {
                          "alert": "HighPercentageError",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in namespace example-namespace has an error rate above 5% for more than 10 minutes.",
                            "summary": "High error rate detected"
                          },
                          "expr": "sum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"} |= \"error\" [5m])) by (job)\n  /\nsum(rate({app=\"foo\", env=\"production\", kubernetes_namespace_name=\"example-namespace\"}[5m])) by (job)\n  \u003e 0.05\n",
                          "for": "10m",
                          "labels": {
                            "severity": "warning"
                          }
                        },
                        {
                          "alert": "HttpCredentialsLeaked",
                          "annotations": {
                            "description": "Application {{ $labels.job }} in pod {{ $labels.pod }} is leaking HTTP basic auth credentials in logs.",
                            "summary": "HTTP credentials leaked in logs"
                          },
                          "expr": "sum by (cluster, job, pod) (count_over_time({kubernetes_namespace_name=\"example-namespace\"} |~ \"http(s?)://(\\\\w+):(\\\\w+)@\" [5m]) \u003e 0)",
                          "for": "10m",
                          "labels": {
                            "severity": "critical"
                          }
                        }
                      ]
                    }
                  ],
                  "tenantID": "application"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "LokiStack",
                "metadata": {
                  "name": "lokistack-sample"
                },
                "spec": {
                  "size": "1x.small",
                  "storage": {
                    "secret": {
                      "name": "test"
                    }
                  },
                  "storageClassName": "standard"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RecordingRule",
                "metadata": {
                  "name": "recordingrule-sample"
                },
                "spec": {
                  "groups": [
                    {
                      "interval": "10m",
                      "name": "recording-rules-group",
                      "rules": [
                        {
                          "expr": "sum(rate({container=\"myservice\"}[10m]))\n",
                          "record": "myservice:requests:rate10m"
                        },
                        {
                          "expr": "sum(rate({container=\"otherservice\"}[1m]))\n",
                          "record": "otherservice:requests:rate1m"
                        }
                      ]
                    }
                  ],
                  "tenantID": "test-tenant"
                }
              },
              {
                "apiVersion": "loki.grafana.com/v1",
                "kind": "RulerConfig",
                "metadata": {
                  "name": "rulerconfig-sample"
                },
                "spec": {
                  "alertmanager": {
                    "discovery": {
                      "enableSRV": true,
                      "refreshInterval": "1m"
                    },
                    "enableV2": true,
                    "endpoints": [
                      "http://alertmanager-host1.mycompany.org",
                      "http://alertmanager-host2.mycompany.org"
                    ],
                    "externalLabels": {
                      "environment": "production",
                      "region": "us-east-2"
                    },
                    "externalUrl": "http://www.mycompany.org/alerts",
                    "notificationQueue": {
                      "capacity": 1000,
                      "forGracePeriod": "10m",
                      "forOutageTolerance": "1h",
                      "resendDelay": "1m",
                      "timeout": "30s"
                    }
                  },
                  "evaluationInterval": "1m",
                  "pollInterval": "1m",
                  "remoteWrite": {
                    "client": {
                      "authorization": "basic",
                      "authorizationSecretName": "my-secret-resource",
                      "name": "remote-write-log-metrics",
                      "proxyUrl": "http://proxy-host.mycompany.org",
                      "relabelConfigs": [
                        {
                          "action": "replace",
                          "regex": "ALERTS.*",
                          "replacement": "$1",
                          "separator": "",
                          "sourceLabels": [
                            "labelc",
                            "labeld"
                          ],
                          "targetLabel": "labelnew"
                        }
                      ],
                      "timeout": "30s",
                      "url": "http://remote-write-host.mycompany.org"
                    },
                    "enabled": true,
                    "refreshPeriod": "10s"
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          containerImage: docker.io/grafana/loki-operator:0.9.0
          createdAt: "2025-12-03T16:22:02Z"
          description: The Community Loki Operator provides Kubernetes native deployment
            and management of Loki and related logging components.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/grafana/loki/tree/main/operator
          support: Grafana Loki SIG Operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: AlertingRule is the Schema for the alertingrules API
            displayName: AlertingRule
            kind: AlertingRule
            name: alertingrules.loki.grafana.com
            version: v1
          - description: LokiStack is the Schema for the lokistacks API
            displayName: LokiStack
            kind: LokiStack
            name: lokistacks.loki.grafana.com
            version: v1
          - description: RecordingRule is the Schema for the recordingrules API
            displayName: RecordingRule
            kind: RecordingRule
            name: recordingrules.loki.grafana.com
            version: v1
          - description: RulerConfig is the Schema for the rulerconfigs API
            displayName: RulerConfig
            kind: RulerConfig
            name: rulerconfigs.loki.grafana.com
            version: v1
        description: |-
          The Community Loki Operator provides Kubernetes native deployment and management of Loki and related logging components.
          The purpose of this project is to simplify and automate the configuration of a Loki based logging stack for Kubernetes clusters.

          ### Operator features

          The Loki Operator includes, but is not limited to, the following features:

          * Kubernetes Custom Resources: Use Kubernetes custom resources to deploy and manage Loki, Alerting rules, Recording rules, and related components.
          * Simplified Deployment Configuration: Configure the fundamentals of Loki like tenants, limits, replication factor and storage from a native Kubernetes resource.

          ### Feature Gates

          The Loki Operator Bundle provides a set of feature gates that enable/disable specific feature depending on the target Kubernetes distribution. The following feature gates are enabled by default:
          * `serviceMonitors`: Enables creating a Prometheus-Operator managed ServiceMonitor resource per LokiStack component.
          * `serviceMonitorTlsEndpoints`: Enables TLS for the ServiceMonitor endpoints.
          * `lokiStackAlerts`: Enables creating PrometheusRules for common Loki alerts.
          * `httpEncryption`: Enables TLS encryption for all HTTP LokiStack services.
          * `grpcEncryption`: Enables TLS encryption for all GRPC LokiStack services.
          * `builtInCertManagement`: Enables the built-in facility for generating and rotating TLS client and serving certificates for all LokiStack services and internal clients
          * `lokiStackGateway`: Enables reconciling the reverse-proxy lokistack-gateway component for multi-tenant authentication/authorization traffic control to Loki.
          * `runtimeSeccompProfile`: Enables the restricted seccomp profile on all Lokistack components.
          * `defaultNodeAffinity`: Enable the operator will set a default node affinity on all pods. This will limit scheduling of the pods to Nodes with Linux.
          * `lokiStackWebhook`: Enables the LokiStack CR validation and conversion webhooks.
          * `alertingRuleWebhook`: Enables the AlertingRule CR validation webhook.
          * `recordingRuleWebhook`: Enables the RecordingRule CR validation webhook.
          * `rulerConfigWebhook`: Enables the RulerConfig CR validation webhook.

          In addition it enables the following OpenShift-only related feature gates:
          * `servingCertsService`: Enables OpenShift ServiceCA annotations on the lokistack-gateway service only.
          * `ruleExtendedValidation`: Enables extended validation of AlertingRule and RecordingRule to enforce tenancy in an OpenShift context.
          * `clusterTLSPolicy`: Enables usage of TLS policies set in the API Server.
          * `clusterProxy`: Enables usage of the proxy variables set in the proxy resource.

          ### Before you start

          1. Ensure that the appropriate object storage solution, that will be used by Loki, is avaliable and configured.
        displayName: Community Loki Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - loki
        links:
        - name: Documentation
          url: https://loki-operator.dev/
        maintainers:
        - email: loki-operator-team@googlegroups.com
          name: Grafana Loki SIG Operator
        maturity: alpha
        minKubeVersion: 1.21.1
        provider:
          name: Grafana Loki SIG Operator
        relatedImages:
        - quay.io/openshift/origin-kube-rbac-proxy:latest
        - docker.io/grafana/loki-operator:0.9.0
        - docker.io/grafana/loki:3.5.5
        - quay.io/community-operator-pipeline-prod/loki-operator@sha256:763afcdec279cb851cbc8cfbc4d662c31775d85e9fef47c4e149a8905063b450
        - quay.io/observatorium/api:latest
        - quay.io/observatorium/opa-openshift:latest
        version: 0.9.0
      entries:
      - name: loki-operator.v0.9.0
        version: 0.9.0
      - name: loki-operator.v0.8.0
        version: 0.8.0
      - name: loki-operator.v0.7.1
        version: 0.7.1
      - name: loki-operator.v0.7.0
        version: 0.7.0
      - name: loki-operator.v0.6.2
        version: 0.6.2
      - name: loki-operator.v0.6.1
        version: 0.6.1
      - name: loki-operator.v0.6.0
        version: 0.6.0
      - name: loki-operator.v0.5.0
        version: 0.5.0
      - name: loki-operator.v0.4.0
        version: 0.4.0
      - name: loki-operator.v0.3.0
        version: 0.3.0
      - name: loki-operator.v0.2.0
        version: 0.2.0
      - name: loki-operator.v0.1.0
        version: 0.1.0
      name: alpha
    defaultChannel: alpha
    packageName: loki-operator
    provider:
      name: Grafana Loki SIG Operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: ""
    name: support-log-gather-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: support-log-gather-operator.v4.20.0-202512090918
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Monitoring, Application Runtime
          containerImage: registry.redhat.io/openshift4/ose-support-log-gather-rhel9-operator@sha256:f79ab86a84357ab3b14a7f889de7c8b849c28d8816e9f9226373f410b4e04ab8
          createdAt: "2020-07-31T16:12:36Z"
          description: Operator to enable CEE to collect must-gathers from OSDv4 clusters
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.20.0-0 <4.20.0-202512090918'
          operatorframework.io/suggested-namespace: must-gather-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/must-gather-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a must-gather diagnostic collection job
            displayName: Must Gather
            kind: MustGather
            name: mustgathers.operator.openshift.io
            version: v1alpha1
        description: |
          An operator that collects logs in Red Hat OpenShift and sends them to Red Hat Support for troubleshooting.

          ## Features

          * Automated must-gather collection
          * Secure collection and storage
        displayName: support log gather
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubernetes
        - openshift
        - monitoring
        - diagnostics
        - must-gather
        - support
        links:
        - name: Documentation
          url: https://github.com/openshift/must-gather-operator
        - name: Source Repository
          url: https://github.com/openshift/must-gather-operator
        maintainers:
        - email: aos-staff@redhat.com
          name: Red Hat
        maturity: tech-preview
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat, Inc
        relatedImages:
        - registry.redhat.io/openshift4/ose-support-log-gather-rhel9-operator@sha256:f79ab86a84357ab3b14a7f889de7c8b849c28d8816e9f9226373f410b4e04ab8
        - registry.redhat.io/openshift4/ose-support-log-gather-operator-bundle@sha256:ac657aaa7cece6a5ab76778385ce11497f8a985dce68b3c4aec1bad37ab05618
        - registry.redhat.io/openshift4/ose-must-gather-rhel9@sha256:a1376ed9e13b8ff171b967369a9ecf2dd0cf1188f34d456bc475023a86c87292
        version: 4.20.0-202512090918
      entries:
      - name: support-log-gather-operator.v4.20.0-202512090918
        version: 4.20.0-202512090918
      - name: support-log-gather-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: support-log-gather-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: support-log-gather-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: support-log-gather-operator.v4.20.0-202511041656
        version: 4.20.0-202511041656
      - name: support-log-gather-operator.v4.20.0-202510271425
        version: 4.20.0-202510271425
      - name: support-log-gather-operator.v4.20.0-202509262039
        version: 4.20.0-202509262039
      name: tech-preview
    defaultChannel: tech-preview
    packageName: support-log-gather-operator
    provider:
      name: Red Hat, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-listener-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: listener-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          description: Stackable Listener Operator
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/listener-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents a Listener Class
            displayName: Listener Class
            kind: ListenerClass
            name: listenerclasses.listeners.stackable.tech
            version: v1alpha1
          - description: Represents a Listener
            displayName: Listener
            kind: Listener
            name: listeners.listeners.stackable.tech
            version: v1alpha1
          - description: Represents PodListeners of a Pod
            displayName: PodListeners
            kind: PodListeners
            name: podlisteners.listeners.stackable.tech
            version: v1alpha1
        description: |-
          This is an operator for Kubernetes that provisions network listeners according to the cluster policy, and injects connection parameters into Pods.
          The Stackable Listener Operator is part of the Stackable Data Platform, a curated selection of the best open source data apps like Kafka, Druid, Trino or
          Spark, all working together seamlessly. Based on Kubernetes, it runs everywhere – on prem or in the cloud.

          See it in action in one of our [demos](https://stackable.tech/en/demos/) or follow this
          [usage overview](https://docs.stackable.tech/home/stable/listener-operator/usage.html).

          NOTE: Make sure you install this operator in a namespace called "stackable-operators". Failing to do so will result in a broken installation.
        displayName: Stackable Listener Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - listener
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/listener-operator@sha256:59091117b89b6bbb2c8c19668f539464b965f1d2bfb7e3811677ebe943f90eca
        - quay.io/stackable/sig-storage/csi-node-driver-registrar@sha256:ab4a3289015f7de39c4dc987fa6183bcb157294a841c88fa842332ce66b068d8
        - quay.io/stackable/sig-storage/csi-provisioner@sha256:142e0b069dcc100671c91d66d8c973d56ea330b4e11ab79e5eb4fea5c79c6ecb
        - registry.connect.redhat.com/stackable/listener-operator@sha256:f775b29c3ea2c4d0d8f1a140e3827400c1eeeb9874cd0e0dbf50987fb41cc5c1
        version: 25.11.0
      entries:
      - name: listener-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-listener-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Jooho Lee
      provider-url: https://github.com/jooho/nfs-provisioner-operator
    name: nfs-provisioner-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nfs-provisioner-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cache.jhouse.com/v1alpha1",
                "kind": "NFSProvisioner",
                "metadata": {
                  "name": "nfsprovisioner-sample"
                },
                "spec": {
                  "nfsImageConfiguration": {
                    "image": "k8s.gcr.io/sig-storage/nfs-provisioner@sha256:e943bb77c7df05ebdc8c7888b2db289b13bf9f012d6a3a5a74f14d4d5743d439",
                    "imagePullPolicy": "IfNotPresent"
                  },
                  "scForNFS": "nfs",
                  "scForNFSPvc": "local-sc",
                  "storageSize": "1G"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Storage
          certified: "false"
          containerImage: quay.io/jooholee/nfs-provisioner-operator@sha256:d9c013967421ec72644a588a155975bf856a856f1ef38ba71dfea306fdb47acd
          createdAt: "2025-08-08T20:23:50Z"
          description: Create and manage NFS Server and Provisioner
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/jooho/nfs-provisioner-operator
          support: NFS
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NFSProvisioner is the Schema for the nfsprovisioners API
            displayName: NFS Provisioner App
            kind: NFSProvisioner
            name: nfsprovisioners.cache.jhouse.com
            version: v1alpha1
        description: "This operator deploy NFS server with local storage and also
          provide provisioner for storageClass.\n### Core Capabilities\n* **NFS Server:**
          Deployed\n* **NFS Provisioner:** Help customers to create PV using StorageClass\n*
          **StorageClass:** Dynamically create PV for requested PVC\n### NFS Provisioner
          Operator Features\n* NFS Server can use localStorage PVC or HostPath on
          the node\n### Must-Gather \n> isv-cli must-gather --image=quay.io/jooholee/nfs-provisioner-operator-must-gather:0.0.1\n"
        displayName: NFS Provisioner Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - nfs
        - storage
        links:
        - name: Nfs Provisioner Operator
          url: https://github.com/jooho/nfs-provisioner-operator
        maintainers:
        - email: ljhiyh@gmail.com
          name: Jooho
        maturity: alpha
        provider:
          name: Jooho Lee
          url: https://github.com/jooho/nfs-provisioner-operator
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:e10d1d982dd653db74ca87a1d1ad017bc5ef1aeb651bdea089debf16485b080b
        - quay.io/community-operator-pipeline-prod/nfs-provisioner-operator@sha256:d7ef0fa3b5a1a6094b6fd60c6197a52cb14766865b3549806de100bb3522821a
        - quay.io/jooholee/nfs-provisioner-operator@sha256:d9c013967421ec72644a588a155975bf856a856f1ef38ba71dfea306fdb47acd
        version: 0.0.8
      entries:
      - name: nfs-provisioner-operator.v0.0.8
        version: 0.0.8
      - name: nfs-provisioner-operator.v0.0.7
        version: 0.0.7
      - name: nfs-provisioner-operator.v0.0.6
        version: 0.0.6
      - name: nfs-provisioner-operator.v0.0.5
        version: 0.0.5
      - name: nfs-provisioner-operator.v0.0.4
        version: 0.0.4
      name: alpha
    defaultChannel: alpha
    packageName: nfs-provisioner-operator
    provider:
      name: Jooho Lee
      url: https://github.com/jooho/nfs-provisioner-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat CCIT
      provider-url: ""
    name: reportportal-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: reportportal-operator.v0.0.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rp5.reportportal.io/v1",
                "kind": "ReportPortal",
                "metadata": {
                  "name": "reportportal-sample"
                },
                "spec": {
                  "accesskey": "AKIAIOSFODNN7EXAMPLE",
                  "analyzer_image": "quay.io/waynesun09/service-auto-analyzer:5.3.5",
                  "api_image": "quay.io/waynesun09/service-api:5.3.5-rootless",
                  "api_replicas": 1,
                  "app_domain": "apps.test-example.com",
                  "bucket_prefix": null,
                  "default_bucket_name": null,
                  "enable_pg_restic_backup": "yes",
                  "es_backup_schedule": "@daily",
                  "es_s3_backup_dir": "s3_backup",
                  "es_snapshot_bucket": "es-snapshot-123123",
                  "gateway_replicas": 1,
                  "index_image": "quay.io/waynesun09/service-index:5.0.10",
                  "index_replicas": 1,
                  "integration_salt_path": null,
                  "migration_image": "quay.io/waynesun09/migrations:5.3.5",
                  "pg_restic_password": "rp_user",
                  "pg_restic_s3_bucket_init": "yes",
                  "pg_s3_bucket_name": "pgbackup-123123",
                  "s3_enabled": false,
                  "s3_endpoint": null,
                  "secretkey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
                  "uat_image": "quay.io/waynesun09/service-authorization:5.3.5",
                  "ui_image": "quay.io/waynesun09/service-ui:5.3.5",
                  "ui_replicas": 1
                }
              },
              {
                "apiVersion": "rp5.reportportal.io/v1",
                "kind": "ReportPortalRestore",
                "metadata": {
                  "name": "reportportalrestore-sample"
                },
                "spec": {
                  "accesskey": "AKIAIOSFODNN7EXAMPLE",
                  "bucket_prefix": null,
                  "es_restore": "yes",
                  "es_restore_date": "2020-08-07",
                  "es_s3_backup_dir": "s3_backup",
                  "es_snapshot_bucket": "es-snapshot-123123",
                  "pg_recovery": "yes",
                  "pg_recovery_target_time": "2020-08-07 00:00:00",
                  "pg_restic_password": "rp_user",
                  "pg_s3_bucket_name": "pgbackup-123123",
                  "s3_endpoint": null,
                  "secretkey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
                }
              },
              {
                "apiVersion": "rp5.reportportal.io/v1",
                "kind": "ServiceApiServiceMonitor",
                "metadata": {
                  "name": "serviceapiservicemonitor-sample"
                },
                "spec": {
                  "bearer_token_secret_key": "token",
                  "bearer_token_secret_name": "rp-user-auth"
                }
              }
            ]
          capabilities: Deep Insights
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/waynesun09/rp5-operator:v0.0.8
          createdAt: "2021-04-22 14:39:00"
          operators.operatorframework.io/builder: operator-sdk-v1.7.1+git
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/waynesun09/reportportal-operator
          support: waynesun09
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ReportPortal Restore from s3 backup
            kind: ReportPortalRestore
            name: reportportalrestores.rp5.reportportal.io
            version: v1
          - description: ReportPortal v5 Deployment with ReportPortal Operator
            kind: ReportPortal
            name: reportportals.rp5.reportportal.io
            version: v1
          - description: ReportPortal service-api ServiceMonitor for metrics
            kind: ServiceApiServiceMonitor
            name: serviceapiservicemonitors.rp5.reportportal.io
            version: v1
        description: |-
          ReportPortal is a test automation analytics platform. ReportPortal Operator support instantiating the ReportPortal services and required dependencies.

          What services are included:

              - Report Portal v5.3
              - PostgreSQL
              - Elasticsearch
              - RabbitMQ
              - Minio

          The Operator also support data backup & restore and metrics monitoring.

          ## Install

          Install the Operator to a namespace, then create ReportPortal v5 instance under Provided APIs on the UI, all Report Portal v5 services and dependencies will be installed.

          ## Data backup and restore

          The Report Portal v5 data backup and restore in the operator include two parts, PostgreSQL database data and Elasticsearch index data.

          The Operator support automatically data backup and restore for both.

          ### PostgreSQL database WAL archiving and recovery

          The Operator supports PostgreSQL WAL archiving and recovery point-in-time via Minio S3 using restic.

          #### WAL archiving

          When deploy Report Portal v5 instance, make sure `enable_pg_restic_backup` option is set as `yes`, then the WAL archiving will be enabled when initiate the database, the WAL archive data will be automatically backup to S3 storage via Minio using restic command.

          Parameter `pg_restic_s3_bucket_init` is for init the bucket if not exist, `pg_s3_bucket_name` is the bucket name and `pg_restic_password` is the restic password for encryption.

          #### WAL recovery

          WAL archive recovery will download all WAL archive files to the Postgres container and restore point-in-time.

          To restore PostgreSQL database point-in-time, on Operator UI select `ReportPortalRestore` under Provided APIs to create ReportPortalRestore operand.

          After the ReportPortalRestore operand created, the PG WAL restore will get started, as restore time will base on the database size, the process will last in minutes, hours or days.

          **Note:** Current Postgres container liveless probe timeout is set as one hour in the postgresql statefulset, it might cause restore fail if restore time is longer than one hour, so it might need be adjusted to be longer.

          ### Elasticsearch snapshot and restore

          The operator supports elasticsearch snapshot and restore with data saved in S3 bucket via Minio, the elasticsearch container have installed the s3 repository plugin.

          #### Snapshot

          When deploy Report Portal v5 instance, make sure following elasticsearch parameters are set:

              es_s3_backup_dir: s3_backup
              es_snapshot_bucket: es-snapshot-123123
              es_backup_schedule: '@daily'

          #### Restore

          Elasticsearch restore support restore to certain date as default snapshot schedule is daily.

          To restore elasticsearch from snapshot, on Operator UI select `ReportPortalRestore` under Provided APIs to create ReportPortalRestore operand.

          The backup dir and bucket name should be same as when create the RP instance, `es_restore` need set to `yes` to enable the restore and `es_restore_date` is the restore target date.

          The restore time will also be depend on the snapshot size.

          ## Metrics

          The operator by default have enabled metrics, the default ansible operator port 8080 is used for the operator container.

          All Report Portal v5 depended services, rabbitmq, minio, postgresql and elasticsearch have metrics enabled in this operator.

          The Report Portal gatway service have metrics enabled.

          By default several ServiceMonitors have been defined when create ReportPortal v5 operand:

              $ oc get servicemonitor
              NAME                    AGE
              elasticsearch-metrics   1d21h
              gateway-metrics         1d21h
              minio-metrics           1d21h
              postgres-metrics        1d21h
              rabbitmq-metrics        1d21h

          To export Report Portal v5 service-api metrics with ServiceMonitor, create a `secret` with RP user api token. The api access token could be found with login to Report Portal -> Click user icon -> Profile.

          Then select `ServiceApiServiceMonitor` under provided APIs to Create Instance on operator UI.

          Input the secret name and key name that have been created, and click create, a api-metrics servicemonitor will be created.

          To check the metrics, if [user workload monitoring](https://docs.openshift.com/container-platform/4.5/monitoring/monitoring-your-own-services.html) is enabled on the cluster, click to Monitoring on OpenShift UI and navigate to Metrics, where you could query the metrics.

          You could also deploy Promethues Operator in the current project and query via it.

          ## Doc

          More detail with installation, data backup & restore and metrics could be found at https://github.com/waynesun09/reportportal-operator#reportportal-operator
        displayName: reportportal-operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - reportportal
        - failure analysis
        - test automation
        links:
        - name: Documentation
          url: https://github.com/waynesun09/reportportal-operator/blob/master/README.md
        - name: ReportPortal.io
          url: https://reportportal.io
        maintainers:
        - email: gsun@redhat.com
          name: Wayne Sun
        maturity: alpha
        provider:
          name: Red Hat CCIT
        relatedImages:
        - quay.io/openshift-community-operators/reportportal-operator@sha256:67a7ffaf6a303b92541170f266d7b2871f5c2fe73f6b6c9a2b7b33dbc4555fa5
        - quay.io/waynesun09/rp5-operator:v0.0.8
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy:v4.7.0
        version: 0.0.8
      entries:
      - name: reportportal-operator.v0.0.8
        version: 0.0.8
      name: alpha
    defaultChannel: alpha
    packageName: reportportal-operator
    provider:
      name: Red Hat CCIT
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc
      provider-url: https://github.com/stolostron/multicluster-global-hub
    name: multicluster-global-hub-operator-rh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: multicluster-global-hub-operator-rh.v1.6.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "global-hub.open-cluster-management.io/v1alpha1",
                "kind": "ManagedClusterMigration",
                "metadata": {
                  "name": "migration-sample"
                },
                "spec": {}
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha1",
                "kind": "MulticlusterGlobalHubAgent",
                "metadata": {
                  "name": "multiclusterglobalhubagent"
                },
                "spec": {
                  "transportConfigSecretName": "transport-config"
                }
              },
              {
                "apiVersion": "operator.open-cluster-management.io/v1alpha4",
                "kind": "MulticlusterGlobalHub",
                "metadata": {
                  "name": "multiclusterglobalhub"
                },
                "spec": {
                  "dataLayer": {
                    "postgres": {
                      "retention": "18m"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Integration & Delivery,OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/multicluster-globalhub/multicluster-globalhub-rhel9-operator@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
          createdAt: "2025-08-27T07:10:21Z"
          description: Manages the installation and upgrade of the Multicluster Global
            Hub.
          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: "true"
          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.skipRange: '>=1.5.0 <1.6.0'
          operatorframework.io/initialization-resource: '{"apiVersion":"operator.open-cluster-management.io/v1alpha4",
            "kind":"MulticlusterGlobalHub","metadata":{"name":"multiclusterglobalhub","namespace":"multicluster-global-hub"},
            "spec": {}}'
          operatorframework.io/suggested-namespace: multicluster-global-hub
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus",
            "Red Hat Advanced Cluster Management for Kubernetes"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/stolostron/multicluster-global-hub
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ManagedClusterMigration is a global hub resource that allows
              you to migrate managed clusters from one hub to another
            displayName: Managed Cluster Migration
            kind: ManagedClusterMigration
            name: managedclustermigrations.global-hub.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHubAgent is the Schema for the multiclusterglobalhubagents
              API
            displayName: Multicluster Global Hub Agent
            kind: MulticlusterGlobalHubAgent
            name: multiclusterglobalhubagents.operator.open-cluster-management.io
            version: v1alpha1
          - description: MulticlusterGlobalHub defines the configuration for an instance
              of the multiCluster global hub
            displayName: Multicluster Global Hub
            kind: MulticlusterGlobalHub
            name: multiclusterglobalhubs.operator.open-cluster-management.io
            version: v1alpha4
        description: |
          The Multicluster Global Hub Operator contains the components of multicluster global hub. The Operator deploys all of the required components for global multicluster management. The components include `multicluster-global-hub-manager` and `multicluster-global-hub-grafana` in the global hub cluster and `multicluster-global-hub-agent` in the managed hub clusters.
          The Operator also deploys the strimzi kafka and crunchy postgres if you do not bring your own kafka and postgres.

          ## Prerequisites
          - Red Hat Advanced Cluster Management for Kubernetes needs to be installed. You can find the support matrix in the official document.

          ## How to Install
          Install the Multicluster Global Hub Operator by following the instructions that are displayed after you select the Install button.
          A pod will be created in `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                             READY   STATUS    RESTARTS   AGE
          multicluster-global-hub-operator-5ccbbc878d-98fdp                1/1     Running   0          19s
          ```
          The operator is now providing new Custom Resources Definitions: `multiclusterglobalhubs.operator.open-cluster-management.io`

          ## Using the Multicluster Global Hub Operator
          After installed the operator, create an instance of the MulticlusterGlobalHub resource to instantiate the Multicluster Global Hub.
          Once an instance of the MulticlusterGlobalHub is created, the following pods are created in the `multicluster-global-hub` namespace:
          ```
          $ kubectl get pods -n multicluster-global-hub
          NAME                                                    READY   STATUS    RESTARTS   AGE
          amq-streams-cluster-operator-v2.6.0-2-f49bf7559-569mw   1/1     Running   0          22m
          kafka-entity-operator-68dcd446f4-pg257                  3/3     Running   0          19m
          kafka-kafka-0                                           1/1     Running   0          20m
          kafka-kafka-1                                           1/1     Running   0          20m
          kafka-kafka-2                                           1/1     Running   0          20m
          multicluster-global-hub-grafana-5b7cfb6876-5rcnn        2/2     Running   0          19m
          multicluster-global-hub-grafana-5b7cfb6876-wq99v        2/2     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-hzfvw        1/1     Running   0          19m
          multicluster-global-hub-manager-7f56d78c49-wbkzl        1/1     Running   0          19m
          multicluster-global-hub-operator-768bd5bd4f-59xjd       1/1     Running   0          22m
          multicluster-global-hub-postgresql-0                    2/2     Running   0          22m
          ```
          ## Documentation
          For documentation about installing and using the Multicluster GlobalHub Operator with Red Hat Advanced Cluster Management for
          Kubernetes, see [Multicluser GlobalHub Documentation](https://access.redhat.com/documentation/en-us/red_hat_advanced_cluster_management_for_kubernetes/2.15/html-single/multicluster_global_hub/index#doc-wrapper) in the Red Hat Advanced Cluster Management
          documentation.

          ## Support & Troubleshooting
          Product support, which includes Support Cases, Product Pages, and Knowledgebase articles, is available when you have
          a [Red Hat Advanced Cluster Management](https://www.redhat.com/en/technologies/management/advanced-cluster-management)
          subscription.
        displayName: Multicluster Global Hub Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multicluster-global-hub
        - multiple-hubs
        links:
        - name: Multicluster Global Hub Operator
          url: https://github.com/stolostron/multicluster-global-hub
        maintainers:
        - email: acm-contact@redhat.com
          name: acm-contact
        maturity: release-1.6
        provider:
          name: Red Hat, Inc
          url: https://github.com/stolostron/multicluster-global-hub
        relatedImages:
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-rhel9-operator@sha256:fc936be551939edf6f8558f55b16585243e403b8b6e4c8c776660191c3a7a954
        - registry.redhat.io/rhel9/postgresql-16@sha256:2161182c88022f38d6d9b8b467c0d59156edcededc908d383b80caa4eedf57f9
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-operator-bundle@sha256:3ffc6685a430008618dbee9b15ec04980eacd783b0c77d130e70bf9766bfdae8
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-agent-rhel9@sha256:903aea3e61d68f13d60c33f98bc9fa220eb8426ccedb43948015b6dfd50e8cf0
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-grafana-rhel9@sha256:870866e86ce870ad8d97ee060483e3c9042076f4ec987d4769e09d8daddd963d
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-manager-rhel9@sha256:98273949e754fc81aa9240b507ab13e12fe2e9ecb6dafe601756567af18a077c
        - registry.redhat.io/multicluster-globalhub/multicluster-globalhub-postgres-exporter-rhel9@sha256:2a68afbc8b4208e8aa16e7f0a8266246a16a2e97d4d6f930318888fc1e0c7306
        version: 1.6.0
      entries:
      - name: multicluster-global-hub-operator-rh.v1.6.0
        version: 1.6.0
      name: release-1.6
    defaultChannel: release-1.6
    packageName: multicluster-global-hub-operator-rh
    provider:
      name: Red Hat, Inc
      url: https://github.com/stolostron/multicluster-global-hub
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: topology-aware-lifecycle-manager
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: topology-aware-lifecycle-manager.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ran.openshift.io/v1alpha1",
                "kind": "ClusterGroupUpgrade",
                "metadata": {
                  "name": "ClusterGroupUpgrade-sample"
                },
                "spec": {
                  "preCaching": true
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
          description: The topology aware lifecycle manager is an operator that facilitates
            platform upgrades of group of clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-operators",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/topology-aware-lifecycle-manager
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterGroupUpgrade is the Schema for the ClusterGroupUpgrades
              API
            displayName: Cluster Group Upgrade
            kind: ClusterGroupUpgrade
            name: clustergroupupgrades.ran.openshift.io
            version: v1alpha1
          - description: ImageBasedGroupUpgrade is the schema for upgrading a group
              of clusters using IBU
            displayName: Image-Based Group Upgrade
            kind: ImageBasedGroupUpgrade
            name: imagebasedgroupupgrades.lcm.openshift.io
            version: v1alpha1
          - description: PreCachingConfig is the Schema for the precachingconfigs
              API
            displayName: Pre-caching Config
            kind: PreCachingConfig
            name: precachingconfigs.ran.openshift.io
            version: v1alpha1
        description: |-
          Topology Aware Lifecycle Manager is an operator that facilitates
          platform and operator upgrades of group of clusters
        displayName: Topology Aware Lifecycle Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acm lifecyclemanagement upgrades cluster
        links:
        - name: Cluster Group Upgrades Operator
          url: https://topology-aware-lifecycle-manager.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-operator-bundle@sha256:46f2823c799f69a666161c73d63c1ad131757d1b83e28b09d0f205fd9626193b
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-aztp-rhel9@sha256:19b4c01406bffca93469847e207dcc372b0238a20184923a33932d510c0f1d99
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-precache-rhel9@sha256:982467d05ff6af795ede34430c571ef5a6a7f4005990eb7538be340fd412b6f2
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-recovery-rhel9@sha256:761ba005141e46a6e32ab1a8b58d348507a28bcad5c571cafd5389463a595475
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
        version: 4.20.0
      entries:
      - name: topology-aware-lifecycle-manager.v4.20.0
        version: 4.20.0
      name: "4.20"
    - currentCSV: topology-aware-lifecycle-manager.v4.20.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ran.openshift.io/v1alpha1",
                "kind": "ClusterGroupUpgrade",
                "metadata": {
                  "name": "ClusterGroupUpgrade-sample"
                },
                "spec": {
                  "preCaching": true
                }
              }
            ]
          capabilities: Basic Install
          containerImage: registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
          description: The topology aware lifecycle manager is an operator that facilitates
            platform upgrades of group of clusters
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/suggested-namespace: openshift-operators
          operatorframework.io/suggested-namespace-template: |-
            {
              "apiVersion": "v1",
              "kind": "Namespace",
              "metadata": {
                "name": "openshift-operators",
                "annotations": {
                  "workload.openshift.io/allowed": "management"
                }
              }
            }
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          provider: Red Hat
          repository: https://github.com/openshift-kni/topology-aware-lifecycle-manager
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterGroupUpgrade is the Schema for the ClusterGroupUpgrades
              API
            displayName: Cluster Group Upgrade
            kind: ClusterGroupUpgrade
            name: clustergroupupgrades.ran.openshift.io
            version: v1alpha1
          - description: ImageBasedGroupUpgrade is the schema for upgrading a group
              of clusters using IBU
            displayName: Image-Based Group Upgrade
            kind: ImageBasedGroupUpgrade
            name: imagebasedgroupupgrades.lcm.openshift.io
            version: v1alpha1
          - description: PreCachingConfig is the Schema for the precachingconfigs
              API
            displayName: Pre-caching Config
            kind: PreCachingConfig
            name: precachingconfigs.ran.openshift.io
            version: v1alpha1
        description: |-
          Topology Aware Lifecycle Manager is an operator that facilitates
          platform and operator upgrades of group of clusters
        displayName: Topology Aware Lifecycle Manager
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - acm lifecyclemanagement upgrades cluster
        links:
        - name: Cluster Group Upgrades Operator
          url: https://topology-aware-lifecycle-manager.domain
        maturity: alpha
        minKubeVersion: 1.32.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-operator-bundle@sha256:46f2823c799f69a666161c73d63c1ad131757d1b83e28b09d0f205fd9626193b
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-aztp-rhel9@sha256:19b4c01406bffca93469847e207dcc372b0238a20184923a33932d510c0f1d99
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-precache-rhel9@sha256:982467d05ff6af795ede34430c571ef5a6a7f4005990eb7538be340fd412b6f2
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-recovery-rhel9@sha256:761ba005141e46a6e32ab1a8b58d348507a28bcad5c571cafd5389463a595475
        - registry.redhat.io/openshift4/topology-aware-lifecycle-manager-rhel9-operator@sha256:043ed81bad0a8dadeba07edb2696835b70cf43856e9682d10385c78ecd61af07
        version: 4.20.0
      entries:
      - name: topology-aware-lifecycle-manager.v4.20.0
        version: 4.20.0
      name: stable
    defaultChannel: stable
    packageName: topology-aware-lifecycle-manager
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: rhods-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.24.0
        version: 2.24.0
      - name: rhods-operator.2.23.0
        version: 2.23.0
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.21.0
        version: 2.21.0
      - name: rhods-operator.2.20.0
        version: 2.20.0
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.18.0
        version: 2.18.0
      - name: rhods-operator.2.17.0
        version: 2.17.0
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.15.0
        version: 2.15.0
      - name: rhods-operator.2.14.0
        version: 2.14.0
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: alpha
    - currentCSV: rhods-operator.2.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Basic Install
          categories: AI/Machine Learning, Big Data
          containerImage: registry.redhat.io/rhods/odh-rhel8-operator@sha256:a4d7f020509b9720063e87e1c2f19af04e4c9b4986b199be4dc617831b971434
          createdAt: "2023-11-21T08:37:00Z"
          description: Operator for deployment and management of Red Hat OpenShift
            Data Science
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:08c90a8f133b4cdb1477a742bc44be4d8fc4e88153b8bc2a2a148cbdf19f4e7d
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:6a56010de933f172b195a1a575855d37b70a4968be8edb35157f6ca193969ad2
          olm.skipRange: '>=1.33.0 <2.4.0'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "rhods",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "rhods",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Removed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Removed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus", "OpenShift Data Science"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:eb96f4b753606528750b3c28f7f9256582f81fa030450b05afdef684634903be
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift Data Science
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift Data Science (RHODS) is a complete platform for the entire lifecycle of your AI/ML projects. It is the flagship product of OpenShift AI.

          When using RHODS, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. RHODS can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.


          ### Components
          * RHODS dashboard
          * Curated Notebook Images (incl CUDA, PyTorch, Tensorflow)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines. (including Elyra notebook interface, and based on standard OpenShift Pipelines)
          * Model Serving using ModelMesh (and Kserve) with a provided OpenVino Model Serving Runtime
          * Ability to use other runtimes for serving
          * Model Monitoring
        displayName: Red Hat OpenShift Data Science
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift Data Science
        - RHODS
        - rhods
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift Data Science
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-data-science
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhods/odh-notebook-controller-rhel8@sha256:753994fce63802f1e1121990a5c1dd722216446abee54cc1a7c50ab195134414
        - registry.redhat.io/rhods/odh-modelmesh-serving-controller-rhel8@sha256:d94395fb251e45aaa73d09bc6106a2947c16b90d87fc3b64bfe4f2f600be5841
        - registry.redhat.io/rhods/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:c5758102609821a6fdabec0277e03c4c728f82176093d1ade0570aba5f3cd8f9
        - registry.redhat.io/rhods/odh-dashboard-rhel8@sha256:b98171c5543815abf7c095fba92796ceed9ea44bd8b78db143d2815c6bcfdcf6
        - registry.redhat.io/rhods/odh-modelmesh-runtime-adapter-rhel8@sha256:08478a1647d0413783bcbcd966a73b444b580464de46efedb39504420f22053e
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:eb96f4b753606528750b3c28f7f9256582f81fa030450b05afdef684634903be
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhods/odh-kf-notebook-controller-rhel8@sha256:cd0ab8d70559be6074fbaf1caa1d50f8eb75e1bff1a22d6d69380f19190df0b6
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhods/odh-rhel8-operator@sha256:a4d7f020509b9720063e87e1c2f19af04e4c9b4986b199be4dc617831b971434
        - registry.redhat.io/rhods/odh-ml-pipelines-persistenceagent-rhel8@sha256:857a8eb444375505ccb34a11cce69c1794ceabbfb00df06933d7f12cd187319b
        - registry.redhat.io/rhods/odh-operator-bundle@sha256:b637a02d23bd8364cc8914421049eb60169c163ac70bff2f33591df1a1193002
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhods/odh-modelmesh-rhel8@sha256:3827221f84d3aa22440d6b364b990a4ec0666dfb5963f174f7ed518b3650d223
        - registry.redhat.io/rhods/odh-trustyai-service-rhel8@sha256:fe17d6e07ebaa088f274dd8b5e83892dacc11cb336065b06582a3c055095dba5
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhods/odh-model-controller-rhel8@sha256:fde989817cd1a6ec8eb408a7f6c73e28ba043ab2d88035586b1b7e55fb3405cb
        - registry.redhat.io/rhods/odh-trustyai-service-operator-rhel8@sha256:68471555d0b2bb8150ebfae8d4f3d1dbdff9c5b961ff2305ef23ab7514cbbea1
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhods/odh-ml-pipelines-artifact-manager-rhel8@sha256:76c67d7015a2db6965219db6533e0cddb5b7cf699c88df3ef81155f9c192a3cc
        - registry.redhat.io/rhods/odh-ml-pipelines-cache-rhel8@sha256:33aae32e3d348d382906f6e926281852f54006a94d7bdac188bb33debadec059
        - registry.redhat.io/rhods/odh-ml-pipelines-api-server-rhel8@sha256:be57f237df156474a709667fa4fb4aa142118e3459963fed56648c1cb2e38cd6
        - registry.redhat.io/rhods/odh-data-science-pipelines-operator-controller-rhel8@sha256:250db47cb873207cfb75c7e8a2f0de08b75b056a72db73362d2d79c08cb7b185
        - registry.redhat.io/rhods/odh-kuberay-operator-controller-rhel8@sha256:bfc805aa1689a4bd6f7e617acf9eb1c2c307624dd49956e9e7442afac328151a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhods/odh-codeflare-operator-rhel8@sha256:2841fd3051a50a1b0d9e3caafa20a8084b5c472d49393b372828960dbf156674
        - registry.redhat.io/ubi8/ubi-micro@sha256:6a56010de933f172b195a1a575855d37b70a4968be8edb35157f6ca193969ad2
        - registry.redhat.io/rhel8/mariadb-103@sha256:08c90a8f133b4cdb1477a742bc44be4d8fc4e88153b8bc2a2a148cbdf19f4e7d
        - registry.redhat.io/rhods/odh-mm-rest-proxy-rhel8@sha256:8d989f54009484d7f43fe79d7c37757418fc3c15cd4d7e80a2076677a9645bdf
        version: 2.4.0
      entries:
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: beta
    - currentCSV: rhods-operator.2.21.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:7d0b8d69b6defb5f232da066573b0067ec810a8ccfb2f3cb91d472d2979ab7a7
          createdAt: "2025-09-24T14:42:33Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",  "workbenches.components.platform.opendatahub.io",
            "monitorings.services.platform.opendatahub.io","modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.21
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e9612ec99daa171c403b5ddf37788526e5375b83987e5de9b1ebe519198607b4
        - registry.redhat.io/rhel9/mariadb-105@sha256:c390b12f5c2c3ea7cd897b59eba7127ce22f474130cd8c1bbbbaadae870baca4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:85202cb75250a1ba2691d65b52b306fd77566660dd29cdf56bf8962e8bb4939c
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:1b7befcd29c9c8f783bdd3c5654b0412ea45cd88cd18eb5f8f5a411f1323c6bd
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:4c57dcf4df09fe0d03578cc8b9a3ca2ea485b6af0ca0203bfb85e640058b7daf
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:cb47e165935f0d9d3c88088689c37e68a69519357a20d3c52ab6f71240dab507
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:a936d87646843edea2a84eb429bb44eb730bf3e04e8900fecef66721426dba89
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:dc0db686b7688f98b5f8595661022cdffa5d26a078289cc7aed528f0ee1d08a4
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:80fd53a580ce7bc4d02023d38a04912e84c2cd50679fc5ea034afba935623157
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:e68492a6a75cb83be0a968b832c1478b97f14e661376328085fd5416a08cbc31
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:a88696cff8cd2cc2e295c9ec082b7f25f61dfc9ac12f1c208529ff7036d5af29
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:04859c878ffcc8c42550a98be625ac52212f9b79a6fd5b3baeafb3592926cbe9
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:c3e283c0536266195dd461042ca0036ed98cc33650d806be132db4fba45239e4
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:2b4136569e10ad7d47c82bedf55c1705a833dc67c8f833656996bfe1fddbef3e
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:687c8eeed55f021ecaab1307f0e88b5b16d91f72d63b3d7168d7bbee90e8947b
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6a388ee3cbe3813ac955d319f0ab65a81da321d982c9881c6c81fe135311fe1d
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:152b425725228953f43b57a4a034a6725993a5ca556af328ae5e06aa3f1acbfc
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:4c192208c618b49f31cf31c9de1a33c622ce3f120204c2eec8ff7c439ea6785c
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:5c0d56f434298f6e8bf6cf7061cd1ae6df9915225cbf04b010b6b59a64775cc9
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:2a16c353fd13dc1f3f5c4266f1b9786a8e7a100dc05f2d554bdaef082271063f
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:1b5452b87b36de2b62febc777efdc6233a168ffcc09e2067e482cc444463a57d
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:7da004e158006dcbdcf0c3b78c40411b82c9d56ebf54b1c30c245b6550b8ee7d
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:003fdc6cd1821d620e1ce4050ee608e2d2a32f2b08c8fa9c147e2e14418a8d91
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:fc98ed817a4e9ab84e2a66063987304f0cdbe6e5620a58a7f25cccd61b34ebf9
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:cfaf4eb86ddb9c717340ab17fa4b83323e5b40977ac70265376c87329a3f6f20
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/ubi9/toolbox@sha256:7656f815a0d13ed37f56d11635559a87a3d00840253755c71b644b858f67d556
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2638e3a90bbb242dd2483fefe9fc8b472f334c510d0139b9b7c875c30dab7984
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:52e1ba8ebf4d55c64c94c9076185c5612b537e6e5ed4944fcd6ea87ccb9cd182
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:fe6593bc73e77d315d82b7921bb1975c19fda1e7630ef5b30b69f5901ce30178
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:239f226328e5ac77d6dee498217d55103a6d562f4829e38abf65ba55fda0aca2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:5f581957e4f8deebf6104a394272e6fbb1c54d813bf069e95875d865eac209ad
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:9c2d6ce05775ac34ee5695b3367d12bf2a9c14e318a9544d00a56653ea5f2007
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:7d0b8d69b6defb5f232da066573b0067ec810a8ccfb2f3cb91d472d2979ab7a7
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        version: 2.21.1
      entries:
      - name: rhods-operator.2.21.1
        version: 2.21.1
      - name: rhods-operator.2.21.0
        version: 2.21.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: embedded
    - currentCSV: rhods-operator.2.16.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
          createdAt: "2025-09-24T13:27:25Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.16
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        version: 2.16.3
      entries:
      - name: rhods-operator.2.16.3
        version: 2.16.3
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.8.5
        version: 2.8.5
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: eus-2.16
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.16.3
        version: 2.16.3
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.8.5
        version: 2.8.5
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: eus-2.25
    - currentCSV: rhods-operator.2.8.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              },
              {
                "apiVersion": "features.opendatahub.io/v1",
                "kind": "FeatureTracker",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "default-feature",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-feature"
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:3b9e8a71ba795a2ea91f4129253ccb4be3a79c7c1c6a87082f96ccc67eabbbac
          createdAt: "2024-11-07T07:17:25Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.8.0 <2.8.5'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Removed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "SelfSigned"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Removed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.


          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines. (including Elyra notebook interface, and based on standard OpenShift Pipelines)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:13b850a5a3f8776c6c8db887c666d88df72901895b5ef1be9a8bd372cc02fcb8
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:038ce76571217d6c624d614652e8b96ef6484562cf52ec1be88392b8ef8a3bbd
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:9aa5a93831992588766ac8594ae3c4dc7111d08a90fdbc8751c40484339e46d4
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c48474563d98df32e7243e33302428ea8836be5e1a2e30d20b4d796a62cbf6b
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:61a506fbf263cd72951ac8bd151127e0c74fc74f0a05f7aaecaa54fde47ee490
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:3b9e8a71ba795a2ea91f4129253ccb4be3a79c7c1c6a87082f96ccc67eabbbac
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:2f6db789ceb3f90f9c9911c6392e62d0a8e4d61be68a7f7cbd781f47faab6389
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:df34e9d2d121a3def2dbb86f108b3fb6948bc7ba7cb44c70801dfd2e81d3fbb1
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:8ffc5da798e783c65d5be7f344219b2951d8c2233d6494a4ae2bb5c86eccd699
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:34d177abb56b948eaf9ce6fa62e37427ddee9fcecca48e752d09f72c69847a46
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:81ae2b95f2da740cb5264b9ba8b85f0f58bb4ab80d6431f66d52848ed0c21afb
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:4b1b9f05a94713292a7a2f6782fe1d3eea6f36214c36b38f402aa91a554ab18a
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:45498198fadfbc1457bf2a6084ae7ea515d454d86d148783aae3abdaca6e999d
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:d87e4b1cba72eb4f50b3f2d59863799929c22ca37b01a1ff4828a9ce0be31f25
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:60507a3dddbd88560fd85204699147facd2b6371fb25e0bf6701dad02c0b4dd4
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:13dff890ec67fa56864c244a40fc404e9eac05f33573dd16d088b37f9340ec41
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:eeb8bdc94e7fa2b454fedf72eb75756052f8bfb9d92b116a8267a5584e2528c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:1a1074263ae26e4c8b0e3863228c35e50133169f377ece6c47b58a12e0fcf453
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:28ec01e514c15cae145499840597d1be1b750123bb6014de2ecc3ef0d60fa134
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:1dbf09cb1624c9f961f8ac8e371c97aa7c3fbfcad4c4d02ab4fad0eb86d2aa95
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f9c474d454d0b006e06859601ec9a64b5e5c91e9a47bfab6ad6d8cce5aa6b89d
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        version: 2.8.5
      entries:
      - name: rhods-operator.2.8.5
        version: 2.8.5
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: eus-2.8
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.24.0
        version: 2.24.0
      - name: rhods-operator.2.23.0
        version: 2.23.0
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.21.0
        version: 2.21.0
      - name: rhods-operator.2.20.0
        version: 2.20.0
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.18.0
        version: 2.18.0
      - name: rhods-operator.2.17.0
        version: 2.17.0
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.15.0
        version: 2.15.0
      - name: rhods-operator.2.14.0
        version: 2.14.0
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: fast
    - currentCSV: rhods-operator.3.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v2",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "datasciencecluster"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "aipipelines": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      }
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v2",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "dscinitialization"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:ce85b1b02706459a31fb64d1cbbd8130f5cd1707e21a85b4fe9e95bbd109c19c
          createdAt: "2025-11-10T09:43:22Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v2",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster"
                }
              },
              "spec": {
                "components": {
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "aipipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed"
                  },
                  "llamastackoperator": {
                    "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Removed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "dashboards.components.platform.opendatahub.io", "datasciencepipelines.components.platform.opendatahub.io",
            "kserves.components.platform.opendatahub.io", "kueues.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io",
            "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v2
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v2
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: GatewayConfig is the Schema for the gatewayconfigs API
            displayName: Gateway Config
            kind: GatewayConfig
            name: gatewayconfigs.services.platform.opendatahub.io
            version: v1alpha1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (including PyTorch, TensorFlow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPUs, AMD GPUs, and Intel Gaudi AI accelerators)
          * AI Pipelines (including Elyra notebook interface)
          * Model Serving using Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/3.0
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:45ae3dbe4cd8c5ea8a5ba767bb95c540d618b6e8250dcb1dcbac01e3ec805245
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:95177d662c1ca6d86b77f2a9427945e4d65e8236b7adf15f3d35025063afe94f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:b87eb195a423337071aa318c28452d12070041168d41fb41e3ae3207619a3f16
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:4000a91132d67503a4691e76a7079f9140e3c8091fb1a59ad235446f96cb1a34
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:84a7c26966f563e970e5398cd0396df2b4fae3b680f14b38a59bfa34b3c3a2e6
        - registry.redhat.io/rhoai/odh-trustyai-ragas-lls-provider-dsp-rhel9@sha256:c1694891f19be1fe1abd431505549dc02021c389e640e77877bbb7921b42aa5b
        - registry.redhat.io/rhoai/odh-mod-arch-gen-ai-rhel9@sha256:459e5abcc3d5403ef25f53eb4c6cba75c88371c84dbf02d8cb67f478fbe624aa
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:4a035bb354c4a0e4040c277b2f1a1ffdc7e61f6f505c5fa5d032d22f50c4fa29
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:bd7352755c52f16dcfd7403f120f65dce7742dfacc393fc6bbecf359faac47c9
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:dd37de4ca53ce242a0f67a70d19eebf157679098a3417e9ffdf8e24378f6bdcc
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:de67ebe1de42971f1cb99df039044a6c79471802dedf666282e349c579f79c3a
        - registry.redhat.io/rhoai/odh-maas-api-rhel9@sha256:29165b6056073e3f040a8d4eab023dcc522281888f7e6db0aecd447762761115
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:bafee27b0842d196eb305963cc9b3f29d31cdf2c014af88b5965a8d908cc6f9a
        - registry.redhat.io/rhoai/odh-training-cuda128-torch28-py312-rhel9@sha256:851f2b31fa418d2eb172ddfa6010851bd5d4f0844d16b2b42a408f2c0b985b86
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:70e900e40845e82ef9ff4ac888afa6a6e835b019ad69aae7297d111e087520a3
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:78b6e29c66a425b9f097cba92240f96d32f756d379b779ed37ef51e8625364b5
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:c8c0e4bd524abd8295ccec00e7eacf6aefedd1e67d345e09088bc87e10f6827f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:4326604a5f2f5ac398f5bccf5259ab166fb21dbd273eb233ca558a22c1163312
        - registry.redhat.io/ubi9/toolbox@sha256:668ae64b30c95862377fc2414e48714f1aceff9d23a1d8c4141e3e83a4d4fc2a
        - registry.redhat.io/rhoai/odh-training-rocm64-torch28-py312-rhel9@sha256:501794be7653f12539fc420394c5ecfa2986109ef71785534e6e068212d07c25
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:9a6f0917e40d82684148d25c96e2a5b4a8a24dd3202734dfd7450f55d9e8b9c0
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:c90ccd4d3167d2092c451af95a773fea19821e4b8bf8fa754bf0b1b632a7f51e
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:4afc7a50800be57c57170b6ec2345fe0a9fab1eb4ae179025f6fae230bc05894
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:a59bb87677721dbadaa3e88e29d47470d0afa2c1b52c652caa77f74466beb698
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:ce85b1b02706459a31fb64d1cbbd8130f5cd1707e21a85b4fe9e95bbd109c19c
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:0bda59ab4c3db060b7221c630f6241cac086e3853470a07726289b87299f4da9
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:3d63cfa35ecee611a9075ea21060f75b0926f9b018622f52282b9f375b5ef968
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:ad756c01ec99a99cc7d93401c41b8d92ca96fb1ab7c5262919d818f2be4f3768
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:eaa42ee5a963696339c318b511a330b2b6fc9e1eb173d2d47f9cb757f6eb3da9
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:84a1b58dfdd85eac95478c681affb502d2402a14bf2879aad36f1d17dfd08f39
        - registry.redhat.io/rhaiis/vllm-rocm-rhel9@sha256:8624e2a5086cf1303b59154a817f60a3476d6ca48899261a2e477eb9e99ae781
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:13ec5c9b96a9ca8c0a1fcc0568cf6f893478742d28d3b1381f073b9bdafb3320
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:8d17607ba6e4b859ed724acd1cdf54e7dfff6989fd23dfd7b77faf55efcf883b
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:4f250fd17c023c43ca64ade19c84afbc77e72e66548573c2f987d10e6aed3821
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:5f7a974163856d07985b5da257688aad036427d3724194050782e58eab0cff1a
        - registry.redhat.io/rhoai/odh-kube-auth-proxy-rhel9@sha256:657bc0b43fe2da3211d80dc5085f57dccb451c30b1a254b87b4876745c414d36
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:b03cd2977bcb3d3a44795eb17e7fbc7dc842ab277fae441031ff921bdd7f56d4
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:3617ae4fba7499bf17ef591df2e787b353d6ec7962bbcf14c4c8b3edf045f314
        - registry.redhat.io/rhel9/mariadb-105@sha256:a376c86dc5b288516604d46bfb6025972e962b2be5a00e70d5d479ae465e0bcf
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:f5b70a687fef130c35bdeb108d7aab4a0eadf6182d379b6c517e9d1157713108
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:7e7aa488af45e4a038664881c7da3a9016fc9f9c7952efa35dfdc77971fcd5d3
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:6bf37b3786398e1d9b7004d5b08e0b4c58a5dcf453c02a9fb260bdfe9c32161e
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:b6304ccf7e8064bfdbacdfe998bbda099d6cfc36a9cd92b77e4126609ac34f4f
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:daf66fb7ec41191aa15f32638fe79f4a76c7d158b705e0f761f5b77e1f91336c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:c00d908ff5d82c0b04ade151be9a5a97843606dd9fff731c849717ff79a3a596
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:eb68797b15eb5d748f2658ca41c7aafc5b9ca38882c56b87a22d5c9a3b5e2948
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:aaf677584e83ed6a93586afbe1c9b698430593e346c8cd00fb8485ba4350241d
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:4fe3183daa06c1605c47168db6f96a6dbd2b72df8ea99ef755372d7271299c3c
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:5f5f75d959ad8507704821add365539dab7401a7496bcc7cf2357c6cf32df3c4
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:20b705332935cd372f06b86e36c521873b39c7660b077b90d39b7bd37700c679
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:59f75020cf630e2c7aeb1ca7692745c8e11e4ff46cc29fe7779213f7b56d1e71
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:c852573614458adaf8d0e4f8f3f675c036c3daa1ea8251c7601b2d4c22b3e7de
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:d5d3f661e1ab392b1e977f871a1cd95f60e4d7509f7c79d714a4bee10aa48293
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:fd83ee0ec98d0bfcd7f8567b2f802f08a3a8fe74eba2a74ae560f90c1c72bee5
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:ee6b2596c10ca608cc0897a84336871591bf701a08bf90f345d2232277cc0c3f
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:6a151dde578c2fbd7377864cd5d04268853e49046be62cccc1d298e444c73f0a
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8c99d5e93a469b2aa7f7ad4810f17114bd032392135607945669d92182e37fab
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:1431c04ecb88387a9e15566ba8105d19c7fbceecf65eb5731fe69cccbeb09cf5
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:2efaad91d9b7c997bdc41e6120d46620dd9890eb6bd6baca7124aa00f66fc972
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:1318b9f8de94db57dffb87447b34bf660eae0792915b4aa64375a0ba0f13ad85
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:03db3dd3eb3290b048853a8d943fa1a5099727ff0d1934eeb0a7177bdf0031e4
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:40e552687ecb12803db16edafb0cd93e39edd9269d1471a7ee1d011b43da1fa2
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:ed78d0c5946a2cc75c8bc2db6dbad5d757102acfa9defcd3f4a30829aa47d9d1
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:d79f02050b0cb8847c5f83c0a76ab47bc79a2fdaa2c18ab6ee6b3d94ef9bc7ba
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1552b758539ee09050b1923cf214d6d88543d51d7ca230d6880818ecf287c10b
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:647df7a0f1d33fa04e39f1d38f918236e9983409a07fd9de21b085fc847f0854
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:3e08c969736bfa9a44f6c7811a4d1428c03fa80b52e0b6391aefba3c36758751
        - registry.redhat.io/rhoai/odh-model-performance-data-rhel9@sha256:eda8a51f260ea4e061b528ed2ef6f631a8680e5623ba5ef528698e71d34b3a58
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:a9546158ae141cc3c590732d578af95ac599965b3cfd47fa440e461658940125
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:65f00fbf16f2b8ec98765b854f395cee16d69f2f58d0fe81fc1ebeb3817fd326
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:d11ee73c3dab3bedb39a6da9c29b5221a307d9f69297a12df3489f04cf35506a
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:bfab4c5965e44d4428eb5a3d3ce85a81a163e15093d981a9fc474cd8f9fd64c2
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:9479d6829ab86ce510ca9c25e3fc69dff86553467672dd7f5cb356000e128916
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:77cac4adb89bce424db492657eb9023ac9574fd32096c3bc68b960020fade08c
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:c16cfc8521eccd9b494151ffa98dde6b7faa5e349da611d6091038a8590dc447
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:450b2b76c53f17163cdf91b03d35c296b8d7298d9cbb7b792fd2eabeaab794c2
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:e45e6925ad930d9195d906fc922cb956621c98533cc9ad1916c510e8a79c0904
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:3094dd9e7dd9fcc161fdfe983557edc9d773b2c07e727c0bbb0e37ac16a39d93
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:0224a782de0b062a91d9b0188a59f8fb169db2b7e21bed7624826d3fff7b7da4
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:a50f7e2e8891acbbebf64a2acab98ae64e21cea7a5b5ea4b63a148f4fed91b1f
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:726bdac8c5791695a5b0a43654fd482ffb7eda2fb384dcca42a73cce923a411f
        version: 3.0.0
      entries:
      - name: rhods-operator.3.0.0
        version: 3.0.0
      name: fast-3.x
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.22.2
        version: 2.22.2
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable
    - currentCSV: rhods-operator.2.10.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:8643f7ee8afacfe6ae08cbbf81da76ca97032dc3ce3da4fddf16e330e9e33a08
          createdAt: "2024-11-14T21:18:22Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.10.0 <2.10.2'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "SelfSigned"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:0ff5664c2eaadf3d3073b3d7fb711da47fb78d21f67710d8b8aad5452cb0355d
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:fdc2bc06b0dfa79ebc6451ac3793b5e8d9f165171633831dafe46ebc18c10c35
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:65db5e8cb2fa46d020ed4837d4479d133b52167c373e65f81cb590eec5391af2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:12741379ab24d2286b5fae77f4383fb65713af7b3356fb43d8254ea85d4b0ee3
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:214ca0608fcbc0fd585bf01768d28c7ba17082d1043349ec8445afd663095383
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:52e8deeeeaa21b17370a5d5cd644745da745b6e1cee8c6295d6df75c8d2aec04
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:a9c6e3afdf605465766fa93334cc0f6bb5e46a5fdfd7ec64d648e2ed72b05ccf
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:220cad7a22d40998063c6b4fb2f63e69330e64ca7118490a6680b05fc99b7733
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:8643f7ee8afacfe6ae08cbbf81da76ca97032dc3ce3da4fddf16e330e9e33a08
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:7df2f8bc2c5c0f4f347d009b62a058b5107413a2abd789f6010eb4d6c9e4f8ee
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:267d6795bf53f9a1955d73445776a428dd042af0cd3cb8bb5b91692a1bc1e5d2
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:5d15175f934017c04d6a6057200ff55b2172a1f4bcbeb0f2cd9e9e545631d93f
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:24238abd46633709feb75f2a3e41cf6c9e8528d2c0e4be2fac6f56de44e3fb9b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8911afbb65c8c4f10c3597624485be54b9103e87a5020b718b35ec3df2c9bf00
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:d9b55e8f25b81050380b4aab040243dc18a7432c48912c9b660c97dcc5eea008
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:2007da5abf840712cd2edb50462b2d8d571a0193c3ae1550d4a279eddf2b335f
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:f4d7d3ba4a0d3322bc9f327e095e9ec56073758f6dcd8da8c7bb185cf952ead5
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:d2514bf4b4b2d9abc19facac3f1a55405eb3ad0d9e9203e8816bfcfa08c9a6c5
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:0af6a91553f40ea40e86d85edc204658af3e5a45e8ab94cdb6b767e545df59b9
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:932e83fe9c9b54934767a7c5af683b2ab08bd2b4f0524c191f1c766dc64d9c3d
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:9f7b1cb8623de8b0550b0ba124d3b50f5e960ed011b33a3262c6346dbe2dff95
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:807ec05e9e107afc969e718d0c2c980959e2fd462e777a5ff63e55156ea150a4
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:4876f14ca9cff0e2b998a56f2f56d0775edf3963de610f4b810b4d94fb12d719
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:d709f65e1194bc877fa4f9ec681b598467703d94139d57b58c24490d3a59fb82
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:232ebac25084db056fdde49477b5c1e6a03a0228fea3758bcf6234b3d0eaa582
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:cba9f25ac6bb2734bb990a622b515c838b881edb688bf44ff196ebe7684ab74b
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:4da77afafde99b15fd357a4ab6609644bf6330a1d9c0c03e64726ed1b9633230
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a1d590d0e2b3fae9ecbd843a664dab083061e797f66a9f0a021b0c2c487d7e45
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:8fed8f58732bff512289fff738d0a94be67286c41b24eaf5928bbcb30d88c88a
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:a4b9553fde02d9c67a9c98f063eaf82fb1d2689f4b1269e57bf5f12c8d4adecf
        version: 2.10.2
      entries:
      - name: rhods-operator.2.10.2
        version: 2.10.2
      - name: rhods-operator.2.10.1
        version: 2.10.1
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.10
    - currentCSV: rhods-operator.2.13.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:28b5fff602ad6fb36d462e1905f453509ec22fc251a1e0cf64fedba86ff420d7
          createdAt: "2024-10-17T10:53:18Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.13.0 <2.13.1'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:363a35c332fc80b068157951d5e50e6b7209947649cc64803ffc02726e7581ab
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:cf3779c64bbaef1988886ed629c516e7d6ef7bdc73b9c95ad4c087b62e75750d
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:c2bd493e9345eccd124bbe0440e45cce8cf57588827d8eb9533f8bbadaa3ebbe
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:a744c1b386fd5e4f94e43543e829df1bfdd1b564137917372a11da06872f4bcb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:688389195aebf3f43e74e40d591d2fd5f9ae41994d8ac2db661f292f6eda012a
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:030c53690fe25e15bc9907f51c3f04fab39b4d085ff2098d26316ba32cc8b09f
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:fb630d6f5817512733b8ea05f7147121928917a24ac8d98239f43d920880c359
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:6b2c0d1dd40e2c276684e17818b14375bc778e6c88df0bdc3cc24bfc9294804f
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:7c895490d49beb6bd724f47ad1b17ce501650557b0889314799c4072632f2b99
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:bf25fce160dd7b8cce11e68a501006e4fa81a7858645038cdefdbba03df7ecdb
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:8883bf71abf39b4a6985940c287eb6ac7dc137d491264805d48bb112b65bd008
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:a55f73d72ad2b07f01c49949cdb00969bfe4789375b3d7cdf9814b969fcc808d
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e1c19bbcd4c010ef2bd4f760eb24b2c96cdb82b4e025361a433e6a241eb23cf5
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:71abac4fb3d613edef7f3ba117a73bbeea61f341d6182e8310360a76576c789e
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:5d6354e65106460ab9285b42124faf288298387a8b16317565bd591f009c39a6
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:5c2ee4136ee0014d1ef395b5e3bcab125c846f5e258ece3631d912f431c8d208
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:2566b73e98b783871fb500bb1a8cc4e3d58a513c1bb18abfb525da0818e6138b
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:850901511bde065cf73e4c18d787dc10b6e91ca6139fc3ba68da28c41dd28236
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:a3048eaa8924ce3571c6e78014438183fae70d9e8c833a7c07774c675104e3d4
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8c19c7fa535f36bdce3b73cf3300e321909d44954cbc63a8aef6321c5f2fa693
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:9ccdd7fe8223057a2234a3a2eb3b492e7b69e6ce714cc26a805fe2dd82935195
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:74e6cfa0bc481588cb8dc61c206ad567fbd2b28f43c2a86bee4a8e0eff55447c
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:7d085942e4da73c2ff4885c62f10b904dc70fd08e819e62f925eb1b4ddfa1554
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:fd4ce524acc1769475079c7231f5ea79ac29551c513855ef34e5694d2c9fbbd3
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:59e9cc9cd57ba48ca7e87ae1e797a902f826bb890cb198ccf549f76ea581ba6e
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:cd6b535d95eb1b44fe261a5336270fd898b966f431c14e173944484381c26d25
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:28b5fff602ad6fb36d462e1905f453509ec22fc251a1e0cf64fedba86ff420d7
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a37529eff3656a570d796083404e5a3f63603afecfe9e738da1a243c0cb3d7c2
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:8faab013568ee023968a5ec5b3a79977d7ddae3deafff6328e6fd56a27198e24
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f5b17f44c5ab72d6cf658f72f24f15e06a5ac9be1790336f7228ab8e7cfc15c3
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:77bca19180f30ef08f4d1598ac6c365e190bb7909ac4a1fb35d9ba9ba8d6ff7a
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        version: 2.13.1
      entries:
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.13
    - currentCSV: rhods-operator.2.16.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Removed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
          createdAt: "2025-09-24T13:27:25Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Removed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.16
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:4a212ec634225c14beac09be24ddf336e562f2aa9a13555fb1196f366ddae23c
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:22557a6fa52d2f311750a9ba253860f423ba697d26efa02ef8524a8258d2a909
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:a0f72ffefb2b74b488dd949493f5d295a39bb9c97f578bf219d0138601f65468
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:c8456d98e90b6505957ab3686e9fd2f156e29f123c5558e581c206daf1e7d93a
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:f738aab1eab25854c93e1d8d4d98100a8ae7bb45a6b83f0326774e4220b1183b
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:4a7599f8a866eb169c9a62885906adbf6df0417c0be15857df1eef20cd9b1be2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:04f305c44413ae7dcb7017e53570ee49a509701792c5f50efadd64f47395730b
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:65482864055021272a18b5b26792ab00cfa5fc9cc005d8d3a884cc82991506f3
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:f37e4048f3a152798286793f3abfc6ed814453fcbe2667255a7e78eee483c5a3
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:97e2bd9b587f08e135a9aeb9b3e0dc6eafa1a9bdacbb5ecb681ce9bd5aa37fc9
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:633984b538f027c93c5886ea1045dcbe81eeda74acf80001d5fc5f765bdbe0be
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:efd039012559786deb3c521a130886c265e88d635e08baace2e573a9df270134
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:de5f91180ead7d73a1825fe8b032fde9b8b01392569c9789f5ce1b4b9c08a98f
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:11a301728573adf2b64ea72d0cb2d83ea5d4dbebea759f346e99f18c3d368c6e
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:23d307a36b69e0df04f72a7d3b35e28d8417a8bbe23dba31e8e977569785c078
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:cebc8815e03b772343b15d0a7dce8fad6fcc71dd437d871db5a3691472350803
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:d7d4fa406e0fcf0507894a7676532b27f45be742467e603a86f98ea5d2615df8
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:83f193823c6e8f1c4772c46db78e29d3a186f4d8b41eceeba405ec519c1bcbff
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:2eedd1e2465d2e78fafb39e234dbb413a82713f187c64d70a80340ec94807d30
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:02b834fd74da71ec37f6a5c0d10aac9a679d1a0f4e510c4f77723ef2367e858a
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:27b113d96453c2054d4c965a963d2badba6daac235eddaf23234c76e87bcb069
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:6cf74044ae8d5308a2dfe03fa5d81086c89302db7f4cdbe2f4174a1c48b77869
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:7b70af8847b0806d8b43c399e2b3109f016fd864f5e9d30c44e2baca5d1359dc
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:5dcdcc2424602a69451f16d31dbfa1d43cb72c095ba561eb9076f0cd1e8182ed
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:ee01e89f98feb185f6cd59c564e590a13e4d8d9ea760cca8de51426eb71b83a1
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:2ba2b2c4db8bb334c50f4dfb54059f060361186900a44c06eed00b7a3c43977e
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:5192f1dbd2a9ab92ae390c4ae506efbed0970545b6122e95b014728ac937e777
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:4c5ff3496b2a2a739939d94ee9dafc02b682100785d228dc2fde480fb597b7a5
        version: 2.16.3
      entries:
      - name: rhods-operator.2.16.3
        version: 2.16.3
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.16
    - currentCSV: rhods-operator.2.19.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:c605e5fdb3d66302781146347df6da5a91dee97e4f8f5d9ac33f105b8cdee383
          createdAt: "2025-09-24T13:27:42Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-envoy-proxy-image: registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:b30d60cd458133430d4c92bf84911e03cecd02f60e88a58d1c6c003543cf833a
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:f0ee0d27bb784e289f7d88cc8ee0e085ca70e88a5d126562105542f259a1ac01
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",  "workbenches.components.platform.opendatahub.io",
            "monitorings.services.platform.opendatahub.io","modelcontrollers.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:8ce44de8c683f198bf24ba36cd17e89708153d11f5b42c0a27e77f8fdb233551
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.19
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:6ad35cf5c4c62ed5ad4e192afe8cebead9796cb24a964401c76ff8656c47742f
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel8@sha256:b24c25dfdcefb4ec26e7f311c00798df108f7685def2b1762b7624fdfb160ebf
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:af4721d61dfb61c75488a1bd6a5f62b23e20d7b7586a9cf51ba062ece2837715
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:f49483df1d342d8e39f9a8085920aad79313a475df02a2292a136ecb784402b5
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:a6e02e1876fd5382ba4921dd65650b2d747666feb96c839f34e99d2972dfc323
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:b20ee16b776871d7c49b23f2bc91726812998561129f5dbd14eddbfe57964c93
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:8ce44de8c683f198bf24ba36cd17e89708153d11f5b42c0a27e77f8fdb233551
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:4e8f6c6ca0ed516b8310af0332637683b5bfc8f2946eb935c647698dffbbcc79
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:de0e4b7fb822101198817e83cd7e9f4f7406e75ec91d07a833a27a417cffe66b
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:53ac36baa374159b9065c718a9ede821bbb61d9ebe9502b2243e0a9f7aca0d16
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:71cd15f0b1acba3a48ebedff037bf8a846b426c18363a4de8896a376b6b7b3d5
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel8@sha256:bbef4839f24facce111d21aca43898dcf4e6cf57adb16200e3f1590bd5f89eae
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:b6039c3c33a5dc345ceb8e757437bb13023d2bf85cc2b4c10b9ab3887e78e0c0
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel8@sha256:87685c5cab105d876ff0d14b0e24d8dc2a1ff5b55bebe36028c5f3376b2a5271
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:c605e5fdb3d66302781146347df6da5a91dee97e4f8f5d9ac33f105b8cdee383
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:8a6732ac3ca60f13dcb1fd8f186d2fc5dc601b9b5981a58f039af9e237f20044
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:baefbe4e7dd5aa74c71cb81da4a7a2b888a02d3eb1398ec4419bd8003b77f0c2
        - registry.redhat.io/rhoai/odh-model-registry-rhel8@sha256:520ed21b80e5487b3a0a13b7e5c7d791d4dd28e0b6799d57abb65d53fca5a03f
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:49c02285fcef6949892cecca20eeee49d03a9bb4d17bb9ceff7c7a0dbbb8ab40
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:c8c23c07038f59db848dea0d4247b62840dbe58e1c581dc0722fb9d7f9be3b75
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel8@sha256:876ca7ce7b0b975688fb4a77d6cd1a6f87cf9eb40c2a9a5b84d8cffdc80eeebd
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:b30d60cd458133430d4c92bf84911e03cecd02f60e88a58d1c6c003543cf833a
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:c1c97b6beb759d3f6f2dd53c4258e4ccbb3bf35cf11873bd446b135defaa69d6
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel8@sha256:bf6231bfdbe52b597d86e03e4730ec105ebe7a639fcd529268b7c0423f2a890c
        - registry.redhat.io/rhel8/mariadb-103@sha256:f0ee0d27bb784e289f7d88cc8ee0e085ca70e88a5d126562105542f259a1ac01
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel8@sha256:d24e277f468b0a48f38801e8e0bcfeb8264c3f7c128073ddaa17934b8572cc3c
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:6f01ac7cc62ab961b9c8a630a558338a61f6d7902301c4a1ad337495ac7ce85a
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel8@sha256:6166f525948a018c41d735014d97fdfa52024f7be31e18976d85d1a0d88901a0
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:6275a19ef06114b33d79833a94ef10cc8203368eee98e5d415e73d20cae1db85
        - registry.redhat.io/rhoai/odh-training-operator-rhel8@sha256:4313cae03c041d461bc276abc23d706b582b5d16feab316796ca43478b9dc705
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:d47514cbceb3cc96e9d33b7db6fc1df60893e5c4118bf6086cdd27f04c472773
        version: 2.19.3
      entries:
      - name: rhods-operator.2.19.3
        version: 2.19.3
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.19
    - currentCSV: rhods-operator.2.22.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Removed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9292ff588ed93a002187b070b644c16de2696c0490c1c2c4d29a56e217963436
          createdAt: "2025-09-25T11:28:22Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Removed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",  "workbenches.components.platform.opendatahub.io",
            "monitorings.services.platform.opendatahub.io","modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io",
            "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.22
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:6234e15f001122ab222481321153fb0eba7f4d86bf3dfd64edf3f6cecbe7d62f
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:7b3d7787ba95156de9c284ad78f2d63a0d3bcb525f4d8d11ebf0203d4c5c1fe0
        - registry.redhat.io/ubi9/toolbox@sha256:ea4ce8cb8f59cf1b0709f1606d7cab074c3806d4016964eedc0555410cb5dfeb
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:2065b96bd6f0a830eab66e36217a927448cfc5a7dabf2a5e7d907aa6c40657a4
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:9104cbc2d595933f0a2acb7313e41ed69905e76a9fae6bd9820e7717b56a632b
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:d59ed40de694bc0e0564bab159a5b586cffa0721b6d761fb2d81dd42e6225d1c
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:cb5be3dd7098f4c8d66f9e85ad04656460df6102652deddc6cccb884a12be733
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:abe1f9dd11c7313fdd55b678be511a5cdc3546654a68e2b53d42c1013fec8d00
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:d7c4ac937add511460a36375d9b6b3c475a3a9a7cc96c00df2fbad6219aee0e9
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:5914f71e37c815ce2567826896e051303bdef52fae1acf8d02e672fc24c7eb9d
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:f9965177de24f3165ec4c001c14cf1e2c2c01ffe847839af837c442e3c96beae
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:ccba67a6a5aa3403e0018f29dcdfef483220dea8065d8b572e80c653ca992add
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:b2ca229bb4c4dbf04b96766b8af8d9f55f2edef59ec4110de0d20f8c857e7d27
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:2b3aace0d80474470e71c2c8291b25738e096109229fe6d5d3e06e9885ee58b6
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:e6fbe6723b4801f6854303b3fd7d4a4a36727bdd28dc28002b7de4929739ccc0
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:27415b1c763cf89b79391f0b039936c3e078a078bda4420f13bf10ef9be31d5e
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:2f3f305c97e50057781553416fb4026cde306ead0fbe0213627b9b5bbcc8a0c3
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:32c9511846077ef6035eb19be7653f6a78e0f207eb420ab93b18f742ab5779b6
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:b2c2ea9d35edbcd16e1ae559c88a453129b877fc049ab7a7cd6c2ebb8f0bcb59
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:ab57c24b4ec39c376bce0e718deed8f0e629be231acfe3ba8f430215672e0efd
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhel9/mariadb-105@sha256:5e77b33ce04c1eafc2e8840586ad6a5b51148dea8a46dda151071e28858331f0
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:7fd540586a1ca111370100a473923b3dc6cec4255e9e4f3654bfbabd9158a2bb
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:13f3679ab289eea9de54fe129a7c83f6c8ec5d26b61b430637a7c4cfcd31a74a
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9292ff588ed93a002187b070b644c16de2696c0490c1c2c4d29a56e217963436
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:1709fa3c79aad4ba7eb9be8299949396092c8e20210124e0c0936385bc04e839
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:a44d32a18b1e906c1411cafc82102881573fcd04e040a4e2ba6bd1bd617b70fa
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:5d79f0bcca0a213b53aee6d88834e503d343821596b857b13d3a6362de8ebeab
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:2f1a0a0803b2f5118b167e9d9c2e86660add5f79ee6f47044f63b0e8abe0b75f
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e87a96c8a61042e83b8db0194adf3fd84c3a311b1f3793345a35bfd0e7ea56d9
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:2fe9473cd1d6c445d2ca7cc357ee4bb009aa1838f9cb69ea418296b2a044816b
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:bd6d1599b4ff9eb890be9808014715b28ca19247222d65f40df024db4dd3525a
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:74d4e0174655cf6f6273857325a1e714a1531c5a06ad38bf139bee9c7d8f5f19
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:e3b90530c6e38f6940d7f9408e9fa2c81eb06a857ec2b0bab5d006b1e9a63a4f
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:463e9be9c4409ba1e5a42713bd65844a023e7a3e9032d4e862edbaa5fe35300a
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:3e6eb035c69b204746a44b3a58b2751c20050cfb6af2ba7989ba327809f87c0b
        version: 2.22.2
      entries:
      - name: rhods-operator.2.22.2
        version: 2.22.2
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.22
    - currentCSV: rhods-operator.2.25.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Managed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "feastoperator": {
                      "managementState": "Removed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "nim": {
                        "managementState": "Managed"
                      },
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "OpenshiftDefaultIngress"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "kueue": {
                      "managementState": "Managed"
                    },
                    "llamastackoperator": {
                      "managementState": "Removed"
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "modelregistry": {
                      "managementState": "Managed",
                      "registriesNamespace": "rhoai-model-registries"
                    },
                    "ray": {
                      "managementState": "Managed"
                    },
                    "trainingoperator": {
                      "managementState": "Managed"
                    },
                    "trustyai": {
                      "managementState": "Managed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "metrics": {},
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          certified: "False"
          containerImage: registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
          createdAt: "2025-12-15T13:12:08Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          feast-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
          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: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Managed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "feastoperator": {
                    "managementState": "Removed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "OpenshiftDefaultIngress"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "llamastackoperator": {
                      "managementState": "Removed"
                  },
                  "kueue": {
                    "managementState": "Managed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "modelregistry": {
                    "managementState": "Managed",
                    "registriesNamespace": "rhoai-model-registries"
                  },
                  "ray": {
                    "managementState": "Managed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  },
                  "trainingoperator": {
                    "managementState": "Managed"
                  },
                  "trustyai": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: |-
            ["featuretrackers.features.opendatahub.io",
            "codeflares.components.platform.opendatahub.io", "dashboards.components.platform.opendatahub.io",
            "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io",
            "kueues.components.platform.opendatahub.io", "modelmeshservings.components.platform.opendatahub.io",
            "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io",
            "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io",
            "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io",
            "servicemeshes.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io",
            "feastoperators.components.platform.opendatahub.io", "llamastackoperators.components.platform.opendatahub.io"]
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          ose-cli-etcd-image: registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-etcd-image: registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
          ose-oauth-proxy-dw-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
          ubi9-image: registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auth is the Schema for the auths API
            displayName: Auth
            kind: Auth
            name: auths.services.platform.opendatahub.io
            version: v1alpha1
          - description: CodeFlare is the Schema for the codeflares API
            displayName: Code Flare
            kind: CodeFlare
            name: codeflares.components.platform.opendatahub.io
            version: v1alpha1
          - description: Dashboard is the Schema for the dashboards API
            displayName: Dashboard
            kind: Dashboard
            name: dashboards.components.platform.opendatahub.io
            version: v1alpha1
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DataSciencePipelines is the Schema for the datasciencepipelines
              API
            displayName: Data Science Pipelines
            kind: DataSciencePipelines
            name: datasciencepipelines.components.platform.opendatahub.io
            version: v1alpha1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSCInitialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - description: FeastOperator is the Schema for the FeastOperator API
            displayName: Feast Operator
            kind: FeastOperator
            name: feastoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
          - description: HardwareProfile is the Schema for the hardwareprofiles API.
            displayName: Hardware Profile
            kind: HardwareProfile
            name: hardwareprofiles.infrastructure.opendatahub.io
            version: v1alpha1
          - description: Kserve is the Schema for the kserves API
            displayName: Kserve
            kind: Kserve
            name: kserves.components.platform.opendatahub.io
            version: v1alpha1
          - description: Kueue is the Schema for the kueues API
            displayName: Kueue
            kind: Kueue
            name: kueues.components.platform.opendatahub.io
            version: v1alpha1
          - description: LlamaStackOperator is the Schema for the LlamaStackOperator
              API
            displayName: Llama Stack Operator
            kind: LlamaStackOperator
            name: llamastackoperators.components.platform.opendatahub.io
            version: v1alpha1
          - kind: ModelController
            name: modelcontrollers.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelMeshServing is the Schema for the modelmeshservings
              API
            displayName: Model Mesh Serving
            kind: ModelMeshServing
            name: modelmeshservings.components.platform.opendatahub.io
            version: v1alpha1
          - description: ModelRegistry is the Schema for the modelregistries API
            displayName: Model Registry
            kind: ModelRegistry
            name: modelregistries.components.platform.opendatahub.io
            version: v1alpha1
          - description: Monitoring is the Schema for the monitorings API
            displayName: Monitoring
            kind: Monitoring
            name: monitorings.services.platform.opendatahub.io
            version: v1alpha1
          - description: Ray is the Schema for the rays API
            displayName: Ray
            kind: Ray
            name: rays.components.platform.opendatahub.io
            version: v1alpha1
          - description: ServiceMesh is the Schema for the servicemesh API
            displayName: Service Mesh
            kind: ServiceMesh
            name: servicemeshes.services.platform.opendatahub.io
            version: v1alpha1
          - description: TrainingOperator is the Schema for the trainingoperators
              API
            displayName: Training Operator
            kind: TrainingOperator
            name: trainingoperators.components.platform.opendatahub.io
            version: v1alpha1
          - description: TrustyAI is the Schema for the trustyais API
            displayName: Trusty AI
            kind: TrustyAI
            name: trustyais.components.platform.opendatahub.io
            version: v1alpha1
          - description: Workbenches is the Schema for the workbenches API
            displayName: Workbenches
            kind: Workbenches
            name: workbenches.components.platform.opendatahub.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.

          ### Components
          * Dashboard
          * Curated Workbench Images (including CUDA, PyTorch, TensorFlow, code-server, TrustyAI)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines (including Elyra notebook interface)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue, Training Operator)
          * XAI explanations of predictive models (TrustyAI)
          * Index and manage models, versions, and artifacts metadata (Model Registry)
          * Feast - Feature Store is the fastest path to manage existing infrastructure to productionize analytic data for model training and online inference.
          * Llama Stack - Unified open-source APIs for inference, RAG, agents, safety, evals & telemetry
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - ODH
        - opendatahub
        - Red Hat OpenShift AI
        - RHOAI
        - OAI
        - ML
        - Machine Learning
        - Data Science
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        - trustyai
        - modelregistry
        - RHOAI
        - ODH
        - OAI
        - AI
        - ML
        - Machine Learning
        - Data Science
        - Feast
        - featurestore
        - llamastack
        links:
        - name: Red Hat OpenShift AI
          url: https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.25
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat Openshift AI
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/rhoai/odh-fms-guardrails-orchestrator-rhel9@sha256:71453c28ca28b54e932306b0dc409c781b494f1424bdc366ff2514a76b9f7f9a
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel9@sha256:194f257dac479a8cbee5720178ec6876c07a17be8c39a820b8db1cad4ab3df99
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-workflowcontroller-rhel9@sha256:3938e5664c572c528495ca9ea5e5da9a08f6b7011cf4c0b8fef6bd46961fac12
        - registry.redhat.io/rhoai/odh-ml-pipelines-launcher-rhel9@sha256:c0264549c718f776b54f1ded59865ffc5a89ca1914db1cc87c21eaa2918b81f5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9@sha256:61a7338250b1aefa5bd6993a20422eacaef4bc4e41e1156843bd92e9baf3f52b
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhoai/odh-training-rocm62-torch24-py311-rhel9@sha256:38568cb655ff565b32ce92a735b9e2ff802f86f08837c260a854d039954a8b54
        - registry.redhat.io/ubi9/toolbox@sha256:62ced30c9703e1fee46aeb1223cb2f9c7e9c6e816f7e6bf3210d2512a9b3f910
        - registry.redhat.io/openshift-service-mesh/proxyv2-rhel9@sha256:fe1e78971352ddd76ee6f88aa0f4e4ac6d1298da8c960f877ae9f883c291dfd6
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/rhoai/odh-model-registry-job-async-upload-rhel9@sha256:ada78abbd6c72c947e512edbb3760a83f4a86f8eedaf1a0dc3dd1ce6afd4a01f
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9@sha256:1c34e22873250acbae66575a8839ccccf98785f454a69de7765e9a8652f7597a
        - registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:5b86924790aeb996a7e3b7f9f4c8a3a676a83cd1d7484ae584101722d362c69b
        - registry.redhat.io/rhoai/odh-llm-d-inference-scheduler-rhel9@sha256:f9ecd19c51df339c7238041146bab6b0b1737f90cc16c22270e556f918c6bed0
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:bd49cfc8452b3d96467cc222db9487e120abc6cc5ba81349c6b3703706f36a08
        - registry.redhat.io/ubi9@sha256:770cf07083e1c85ae69c25181a205b7cdef63c11b794c89b3b487d4670b4c328
        - registry.redhat.io/rhoai/odh-kserve-router-rhel9@sha256:635b4d3378c795bf94ab32627d9b000b6c8e01bccf6b3e40102da9be71c050bb
        - registry.redhat.io/openshift4/ose-oauth-proxy-rhel9@sha256:aa00b068c4c6a2428fd7832d8b53e2c8b0d2bb03799bb2a874ceb00be2bef33f
        - registry.redhat.io/openshift4/ose-cli@sha256:bc35a9fc663baf0d6493cc57e89e77a240a36c43cf38fb78d8e61d3b87cf5cc5
        - registry.redhat.io/rhoai/odh-ml-pipelines-driver-rhel9@sha256:da3c13cc6a32b1f13602f1306aff5a9cb25b56a57e9a9df6f527aa22b4644131
        - registry.redhat.io/rhoai/odh-ml-pipelines-runtime-generic-rhel9@sha256:a725263b60597b1582f9fc1096c7424b50dc58c5a51c093455b8920f49adc584
        - registry.redhat.io/rhel9/mariadb-105@sha256:ed02d17140df08af3b2042b2b325c222e5ef957d7f28587fb1be8ff5d63bb6a5
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-rocm-py312-rhel9@sha256:5384ea03ef583ec166abab2d8cf3528cc5f25fcd23a45eb602c565678f0f11dd
        - registry.redhat.io/rhoai/odh-caikit-nlp-rhel9@sha256:827d152943483ede35dd03de3e6c915dbcf2320b521d5771d2af00a38fed5fe2
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel9@sha256:83a5a1c030fd5d501fdc8d7985bdb0cd1189175af733efdb771d23884254d458
        - registry.redhat.io/rhoai/odh-training-operator-rhel9@sha256:3a1296f264ee7172029a10fb3530f98421740e4c1595e6abedf15c2289cc9bd4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cuda-py312-rhel9@sha256:c11a7953656afb0130855e9aa4ca1724e644ddd2d8702c4f525eb815d60fbb4d
        - registry.redhat.io/rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9@sha256:6aad6093e4b9398b9cb98a9a212e25b60c1502675f65daecf63c8cce7bdc142b
        - registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9@sha256:9591966e5a5cf648af1c7f59c8bb6f7f4c9896ccc82a89b35ff4b636781e646c
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:e95f2b92c0277f6fb6e400d49a9ad5cb8426bcf9de439c859022b8da5f95fcc8
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9@sha256:aea6b0082ff9a1c106d563c417c206860731b8c477d399459d36ee29f7724c13
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/rhoai/odh-built-in-detector-rhel9@sha256:584446e61041e01b26c6a0ab75c923a432a403ac3c510c238f49084e3d135a55
        - registry.redhat.io/rhoai/odh-must-gather-rhel9@sha256:bc9d0c17b17eb7beeb22af963c3d8a63ed2c8c99564834f159aaebeed5347136
        - registry.redhat.io/rhoai/odh-feature-server-rhel9@sha256:96c347e4b570a10d08902178f396e6dbeca171e7d2d3e4d5ced80d78f61cbebb
        - registry.redhat.io/rhoai/odh-feast-operator-rhel9@sha256:1737d8e133c4227881a60dc6040f696770ba7807df9f5163176e947f2090dc63
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel9@sha256:fdaabbb0f18ffe3f756269946ae25dede89b333f7d464af10907bcfa82b7cf29
        - registry.redhat.io/rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9@sha256:dacc100e78ac27ee4264959ce5ab0df1a019ac2d4a85d5eb02146a52e0e12214
        - registry.redhat.io/rhoai/odh-kserve-storage-initializer-rhel9@sha256:8f250f0310fa2ec6c6207497b7a896373e91a65636b7ff967e1e478fd535c5fb
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel9@sha256:49415f18b8a7f7d495b8bf4ac56a7721e7002261c0c21c57e551eb0c2e50ae8f
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhaiis/vllm-spyre-rhel9@sha256:80ae3e435a5be2c1f117f36599103ab05357917dd6e37f0df6613cb3ac2c13ea
        - registry.redhat.io/rhoai/odh-trustyai-vllm-orchestrator-gateway-rhel9@sha256:4676682b59c63b1d3e843969f7b1afef9df7a00a898112c527052b37f3709ba4
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9@sha256:a2acf7810ce0be4db4d49e3ef41d3311495326927c096329a0b30c7738ae8230
        - registry.redhat.io/rhoai/odh-dashboard-rhel9@sha256:f23a440709859cc7dd386af9980640bae2aa86ba77e312f04bd9ae9053e17212
        - registry.redhat.io/rhaiis/vllm-cuda-rhel9@sha256:fc68d623d1bfc36c8cb2fe4a71f19c8578cfb420ce8ce07b20a02c1ee0be0cf3
        - registry.redhat.io/rhoai/odh-mod-arch-model-registry-rhel9@sha256:7a9704afb8f64b85a1a7ae7c36cff0d3b70cea01500dfa6f372f6583df34c65f
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel9@sha256:5e32b6ca3d264bdef5cc3dfc8a87faa0df77e1b46b8bfa32248db84aebe4aadc
        - registry.redhat.io/rhelai1/instructlab-nvidia-rhel9@sha256:e6e68c4cbab408b87ae76dda7590b1855e499c83f48306c0390c843b9acc1e1a
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/rhoai/odh-model-registry-rhel9@sha256:6335dcb6e1db8721de187c7527c63ffc843ac478ddbb00f3ec6cadad9df09acf
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9@sha256:699db6dca8e137aa5983d4acfb083cdbd23217d99d2404a05242e7dd3fb6f901
        - registry.redhat.io/rhoai/odh-training-cuda121-torch24-py311-rhel9@sha256:38bd8a7f22c139a491b6aaa4e70a45d2eb7bfbece0ce816ae3c0e4696d1e87f9
        - registry.redhat.io/rhoai/odh-vllm-gaudi-rhel9@sha256:89f095a5578ce33700c3a0b488d80c217c845ae5a9f57a9ea7d8e8669b255f48
        - registry.redhat.io/rhoai/odh-vllm-rocm-rhel9@sha256:0ad163a9f9974856a08a7f79f7516405446f4e737255df470c9cb7de858a5438
        - registry.redhat.io/openshift4/ose-etcd@sha256:d3275cd886d13865937d225d8138db7f6b7bf59ac1a94d9fbe61e35286bee6ff
        - registry.redhat.io/rhoai/odh-mlmd-grpc-server-rhel9@sha256:2448a37e43277d16f925a6f81b1607a276ff0b5bba0fbc6cdd285fe9c5ea3969
        - registry.redhat.io/rhoai/odh-rhel9-operator@sha256:9c376afba9bb0b346e25e4fe8430e5210d5095dc2d8bb4ae89789508d000e134
        - registry.redhat.io/rhoai/odh-workbench-jupyter-minimal-cpu-py312-rhel9@sha256:8b4ff98fc0eb16e34ae324599539dc0869c1ac99115d282b310f7cdfa9aba09a
        - registry.redhat.io/rhoai/odh-ta-lmes-driver-rhel9@sha256:613dadd6d09028f36fe8fcf7ab81b4555cb3c141a0e6bf15b789b506a1324e3a
        - registry.redhat.io/rhoai/odh-vllm-cpu-rhel9@sha256:73e4c86b759787f4587694a830f5ebc8d41b4af7ab9706afd6d656045116eb78
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9@sha256:c8a8282d199322053bd652cd3e1b8df7d3307f49691d9fa9bb89fa980d55d7d4
        - registry.redhat.io/rhoai/odh-openvino-model-server-rhel9@sha256:a5c1453deda40218c2b359585a40fb5db61c1f077f8504d9647d1112dfdd6bef
        - registry.redhat.io/rhoai/odh-kserve-controller-rhel9@sha256:a6e526e0e952a3b4b97b817f594168df23c91d35e004831da9a4e6c2168f7852
        - registry.redhat.io/rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9@sha256:2fbfc6b727833bce1981ba2a8a436be8e6cfe5f3da3321fc4253737aa6821a6b
        - registry.redhat.io/openshift4/ose-cli-rhel9@sha256:b07a1dde28c39e7a71705cca2bd89bd6a49cdbff85f52e4ef8357d1410893f50
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel9@sha256:15d484fc9114459710bacfe4645f476f18819ce1850e1188472fc8a1444e793e
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel9@sha256:6b0ab465dfaebf06e54f628dc2bc1bf3cbc7b6f5c6371419afd4575cad6bcf69
        - registry.redhat.io/rhoai/odh-training-rocm62-torch25-py311-rhel9@sha256:e950fc961dd81bae356a5ae93cdd00c4b50799fef0ce742d92b3feeae08dcc40
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:1ea6a01bf3e63cdcf125c6064cbd4a4a270deaf0f157b3eabb78f60556840366
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel9@sha256:936f5a982a23ee647865667d1db05aba62cac70e898728bcf3c6f551a1b559bb
        - registry.redhat.io/rhoai/odh-ta-lmes-job-rhel9@sha256:a5735284685521d8022f6852a1a3816b931d75dc27875a7929cb263d44c71b6c
        - registry.redhat.io/rhoai/odh-llama-stack-core-rhel9@sha256:573a361dbfb41e7c1c7fa7778838a7fa7ecfb329a1593bb5efa2d5499cf32b37
        - registry.redhat.io/rhoai/odh-model-controller-rhel9@sha256:95caeb9d3e651d566fe981cf37ea32a36666d6a63891fdb82cf39dfea77825ba
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel9@sha256:938bd52ae55d5bcf2e7f299823f565693cbd481d7e9cd0fb95459327a226fe45
        - registry.redhat.io/rhoai/odh-pipeline-runtime-minimal-cpu-py312-rhel9@sha256:ffdfe379ec6343b7732c7d5c0f942bfc600287b00ff3ced928f805a5e20929d9
        - registry.redhat.io/rhoai/odh-kserve-agent-rhel9@sha256:b5358114b65d3f3e847b249e52d43707e34e8bb9f60643abef7f2ee721877592
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9@sha256:90c58fe78a9d28ae81ccea674d7bbc95fb548e834ea03fae3fd43c337d4c208e
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel9@sha256:1095369453fd3d2c92c199e6d6b7b5df2b4f5635b72f2a4c77d2554b34ee41f6
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9@sha256:53f63e0277f09c33b95b8b411ffb922d1bee539fe72f41656fa7680821f8f07b
        - registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9@sha256:fa56b43bd295ad77185e385735165bd4af1b8e2f78e2ee2498cacebcb00fab9c
        - registry.redhat.io/rhoai/odh-modelmesh-rhel9@sha256:8cf77522e511f759ba4675639d8c0c52534cb3ad8bb999f95ab9107d4ba9c594
        - registry.redhat.io/rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9@sha256:28d348f1fb90589ccf7e34cc2709f8fead596440d56e4f50fe7d888bf710ffc0
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel9@sha256:584b7864d216c62051151dc5d764b4ac8458b2149083d13970914bfba2be3146
        - registry.redhat.io/rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9@sha256:72a7fba56258cafa21d010064084b3814b933f119fbf38da3f74b83f831f2833
        - registry.redhat.io/rhoai/odh-llm-d-routing-sidecar-rhel9@sha256:f3f3ff2e39e57ad069471fd02c28a0557247cce3734df0695f88510b91d84159
        - registry.redhat.io/rhoai/odh-training-cuda124-torch25-py311-rhel9@sha256:6c201c3461150a083b8529133e186785d8b446c933ab6d7cb50cbfc304ddf377
        - registry.redhat.io/openshift4/ose-etcd-rhel9@sha256:19502231417b9dece8c29f3d9bc13c7456e9a26e7e148b3ff8293b0612934bd5
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel9@sha256:26cb92365038988a96a4019ddd32b6f51dcbcc57f0fa42000746bbebb5d811c0
        - registry.redhat.io/openshift4/ose-cli@sha256:4cfb4219f46c8cc25a5e567fd4cb8babe9a3778b0b86a1e354a3403994ef3677
        - registry.redhat.io/rhoai/odh-model-metadata-collection-rhel9@sha256:01ed5ebd2e128782a8832d9cbd42fb83656f4b1bf2c1c1775d474180f8c63b17
        - registry.redhat.io/rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9@sha256:24724d9048833082445f2967d4bb7872741e72c98193c8090ff090c1a5ce4624
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4f8d66597feeb32bb18699326029f9a71a5aca4a57679d636b876377c2e95695
        - registry.redhat.io/rhoai/odh-guardrails-detector-huggingface-runtime-rhel9@sha256:873483f0775cf11e81510834d41bf33a6f3735e038f4ba3e1abd07154ca4b994
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel9@sha256:5039347c2239b04d486296e24aa6f9563eea5e787f71b9f1231cf87eac89d07b
        - registry.redhat.io/rhoai/odh-llama-stack-k8s-operator-rhel9@sha256:90d29371236fe7fbda27b2ef78bb6d3010e554d8e9055e23223702db74829837
        - registry.redhat.io/rhoai/odh-model-registry-operator-rhel9@sha256:7584ae97ddbd041150c3b5417b660902cf1954f2d20574cf3b0044f5fe50606b
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel9@sha256:fad6197add593a2b871c9731988eedcb64eae5e4b2ab24f40bffd19b61619939
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        version: 2.25.1
      entries:
      - name: rhods-operator.2.25.1
        version: 2.25.1
      - name: rhods-operator.2.25.0
        version: 2.25.0
      - name: rhods-operator.2.22.2
        version: 2.22.2
      - name: rhods-operator.2.22.1
        version: 2.22.1
      - name: rhods-operator.2.22.0
        version: 2.22.0
      - name: rhods-operator.2.19.2
        version: 2.19.2
      - name: rhods-operator.2.19.1
        version: 2.19.1
      - name: rhods-operator.2.19.0
        version: 2.19.0
      - name: rhods-operator.2.16.2
        version: 2.16.2
      - name: rhods-operator.2.16.1
        version: 2.16.1
      - name: rhods-operator.2.16.0
        version: 2.16.0
      - name: rhods-operator.2.13.1
        version: 2.13.1
      - name: rhods-operator.2.13.0
        version: 2.13.0
      - name: rhods-operator.2.12.0
        version: 2.12.0
      - name: rhods-operator.2.11.0-0.1727935135.p
        version: 2.11.0+0.1727935135.p
      - name: rhods-operator.2.11.0
        version: 2.11.0
      - name: rhods-operator.2.10.0
        version: 2.10.0
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.25
    - currentCSV: rhods-operator.2.8.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "datasciencecluster.opendatahub.io/v1",
                "kind": "DataScienceCluster",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsc",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "datasciencecluster",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsc"
                },
                "spec": {
                  "components": {
                    "codeflare": {
                      "managementState": "Removed"
                    },
                    "dashboard": {
                      "managementState": "Managed"
                    },
                    "datasciencepipelines": {
                      "managementState": "Managed"
                    },
                    "kserve": {
                      "managementState": "Managed",
                      "serving": {
                        "ingressGateway": {
                          "certificate": {
                            "type": "SelfSigned"
                          }
                        },
                        "managementState": "Managed",
                        "name": "knative-serving"
                      }
                    },
                    "modelmeshserving": {
                      "managementState": "Managed"
                    },
                    "kueue": {
                      "managementState": "Removed"
                    },
                    "ray": {
                      "managementState": "Removed"
                    },
                    "workbenches": {
                      "managementState": "Managed"
                    }
                  }
                }
              },
              {
                "apiVersion": "dscinitialization.opendatahub.io/v1",
                "kind": "DSCInitialization",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default-dsci",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "dscinitialization",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-dsci"
                },
                "spec": {
                  "applicationsNamespace": "redhat-ods-applications",
                  "monitoring": {
                    "managementState": "Managed",
                    "namespace": "redhat-ods-monitoring"
                  },
                  "serviceMesh": {
                    "controlPlane": {
                      "metricsCollection": "Istio",
                      "name": "data-science-smcp",
                      "namespace": "istio-system"
                    },
                    "managementState": "Managed"
                  },
                  "trustedCABundle": {
                    "customCABundle": "",
                    "managementState": "Managed"
                  }
                }
              },
              {
                "apiVersion": "features.opendatahub.io/v1",
                "kind": "FeatureTracker",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "rhods-operator",
                    "app.kubernetes.io/instance": "default",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "default-feature",
                    "app.kubernetes.io/part-of": "rhods-operator"
                  },
                  "name": "default-feature"
                }
              }
            ]
          anaconda-cronjob-image: registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
          capabilities: Full Lifecycle
          categories: AI/Machine Learning, Big Data
          containerImage: registry.redhat.io/rhoai/odh-rhel8-operator@sha256:b3563e201bf2720f60e73c0b04cb70566ea52eda7d09a28753f3a1487993c2e8
          createdAt: "2024-08-01T06:23:03Z"
          description: Operator for deployment and management of Red Hat OpenShift
            AI
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          odh-etcd-image: registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
          odh-ml-pipeline-mariadb-image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
          odh-ml-pipeline-moveresult-image: registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
          olm.skipRange: '>=2.8.0 <2.8.4'
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "datasciencecluster.opendatahub.io/v1",
              "kind": "DataScienceCluster",
              "metadata": {
                "name": "default-dsc",
                "labels": {
                  "app.kubernetes.io/name": "datasciencecluster",
                  "app.kubernetes.io/instance": "default-dsc",
                  "app.kubernetes.io/part-of": "rhods-operator",
                  "app.kubernetes.io/managed-by": "kustomize",
                  "app.kubernetes.io/created-by": "rhods-operator"
                }
              },
              "spec": {
                "components": {
                  "codeflare": {
                    "managementState": "Removed"
                  },
                  "dashboard": {
                    "managementState": "Managed"
                  },
                  "datasciencepipelines": {
                    "managementState": "Managed"
                  },
                  "kserve": {
                    "managementState": "Managed",
                    "serving": {
                      "ingressGateway": {
                        "certificate": {
                          "type": "SelfSigned"
                        }
                      },
                      "managementState": "Managed",
                      "name": "knative-serving"
                    }
                  },
                  "kueue": {
                    "managementState": "Removed"
                  },
                  "modelmeshserving": {
                    "managementState": "Managed"
                  },
                  "ray": {
                    "managementState": "Removed"
                  },
                  "workbenches": {
                    "managementState": "Managed"
                  }
                }
              }
            }
          operatorframework.io/suggested-namespace: redhat-ods-operator
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift AI"]'
          operators.operatorframework.io/builder: operator-sdk-v1.24.1
          operators.operatorframework.io/internal-objects: '[dscinitialization.opendatahub.io]'
          ose-cli-image: registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
          ose-oauth-proxy-dashboard-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-dsp-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
          ose-oauth-proxy-image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
          prometheus-alertmanager-image: registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
          prometheus-base-image: registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
          prometheus-config-reloader-image: registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
          prometheus-operator-image: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
          repository: https://github.com/red-hat-data-services/rhods-operator
          support: Red Hat OpenShift AI
          ubi-minimal-image: registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: DataScienceCluster is the Schema for the datascienceclusters
              API.
            displayName: Data Science Cluster
            kind: DataScienceCluster
            name: datascienceclusters.datasciencecluster.opendatahub.io
            version: v1
          - description: DSCInitialization is the Schema for the dscinitializations
              API.
            displayName: DSC Initialization
            kind: DSCInitialization
            name: dscinitializations.dscinitialization.opendatahub.io
            version: v1
          - kind: FeatureTracker
            name: featuretrackers.features.opendatahub.io
            version: v1
        description: |
          Red Hat OpenShift AI is a complete platform for the entire lifecycle of your AI/ML projects.

          When using Red Hat OpenShift AI, your users will find all the tools they would expect from a modern AI/ML platform in an interface that is intuitive, requires no local install, and is backed by the power of your OpenShift cluster.

          Your Data Scientists will feel right at home with quick and simple access to the Notebook interface they are used to. They can leverage the default Notebook Images (Including PyTorch, tensorflow, and CUDA), or add custom ones. Your MLOps engineers will be able to leverage Data Science Pipelines to easily parallelize and/or schedule the required workloads. They can then quickly serve, monitor, and update the created AI/ML models. They can do that by either using the provided out-of-the-box OpenVino Server Model Runtime or by adding their own custom serving runtime instead. These activities are tied together with the concept of Data Science Projects, simplifying both organization and collaboration.

          But beyond the individual features, one of the key aspects of this platform is its flexibility. Not only can you augment it with your own Customer Workbench Image and Custom Model Serving Runtime Images, but you will also have a consistent experience across any infrastructure footprint. Be it in the public cloud, private cloud, on-premises, and even in disconnected clusters. Red Hat OpenShift AI can be installed on any supported OpenShift. It can scale out or in depending on the size of your team and its computing requirements.

          Finally, thanks to the operator-driven deployment and updates, the administrative load of the platform is very light, leaving everyone more time to focus on the work that makes a difference.


          ### Components
          * Dashboard
          * Curated Workbench Images (incl CUDA, PyTorch, Tensorflow, code-server)
          * Ability to add Custom Images
          * Ability to leverage accelerators (such as NVIDIA GPU)
          * Data Science Pipelines. (including Elyra notebook interface, and based on standard OpenShift Pipelines)
          * Model Serving using ModelMesh and Kserve.
          * Ability to use other runtimes for serving
          * Model Monitoring
          * Distributed workloads (KubeRay, CodeFlare, Kueue)
        displayName: Red Hat OpenShift AI
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - OpenShift
        - Open Data Hub
        - opendatahub
        - Red Hat OpenShift AI
        - notebooks
        - serving
        - training
        - kserve
        - distributed-workloads
        links:
        - name: Red Hat OpenShift AI
          url: https://www.redhat.com/en/technologies/cloud-computing/openshift/openshift-ai
        maintainers:
        - email: managed-open-data-hub@redhat.com
          name: Red Hat
        maturity: stable
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhoai/odh-modelmesh-serving-controller-rhel8@sha256:68e1331f13dfaf6641a1e7d54f4cf29c0ef42663abc98b6dc69167892d2d8adb
        - registry.redhat.io/rhoai/odh-model-controller-rhel8@sha256:df2edcaf4402b11ce24439263956e3b0cc43efbac2fdf152afacb1a398dcc59a
        - registry.redhat.io/openshift4/ose-prometheus@sha256:c432e571eb737d55323b5f350b5f714803bf525144cfee3f20782660d9bf10ad
        - registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-rhel8@sha256:5f39b11f0cd6db2d7d6e51ee666c030e2643aee92a090b49656c1e7dfd8a5430
        - registry.redhat.io/rhoai/odh-trustyai-service-rhel8@sha256:eb4da3a645b53acfd6ce8758c043ae19b4126e62bcca09165114a141c2c8d014
        - registry.redhat.io/rhoai/odh-ml-pipelines-artifact-manager-rhel8@sha256:889f046b255b13d99801108588d3abf577611b828657b5240a18ea21f0e3cbbe
        - registry.redhat.io/rhoai/odh-ml-pipelines-cache-rhel8@sha256:92d9e4b53d580df6cc1f14a849b477749a1306941a2e8f9d1b6160f4911c3cff
        - registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-rhel8@sha256:9c90873fbd5af8fac8efc3c7c27fba742a06fad2d47f336319dd05d2b116867b
        - registry.redhat.io/rhoai/odh-notebook-controller-rhel8@sha256:ab8792fcd16b1aa0065444ba54335cb3e747379740c3ec2d56beb46ff80cb044
        - registry.redhat.io/rhoai/odh-data-science-pipelines-operator-controller-rhel8@sha256:1c49888ba2e9449c04d5588040c099290fce4793c2ba8874c1037316e550d6e1
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
        - registry.redhat.io/rhoai/odh-kuberay-operator-controller-rhel8@sha256:06a6d5cbbe80d49bca9e4db9929571a69e35ae7951fcae84dcd6460f7ddf622c
        - registry.redhat.io/rhoai/odh-trustyai-service-operator-rhel8@sha256:987c768c0688431a53e48a80591f2a41e074994169f9e691b28b89528d8e736f
        - registry.redhat.io/rhoai/odh-dashboard-rhel8@sha256:9799003449bfb61ae8f59efd2a611b0da3bccadd9b20cc1519f6c9279d085337
        - registry.redhat.io/ubi8/ubi-micro@sha256:396baed3d689157d96aa7d8988fdfea7eb36684c8335eb391cf1952573e689c1
        - registry.redhat.io/rhoai/odh-mm-rest-proxy-rhel8@sha256:b6ecb3858c201498024e3bfc4a93e630699be4b1fdc3a65fd2d70e4b375eb9c2
        - registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
        - registry.redhat.io/rhoai/odh-kf-notebook-controller-rhel8@sha256:080377d42d782bf525b4072384d0cf8409b48019b3748ca7c855f340bcb94251
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:4aeb07f66dc39889e3d0e66eee7c4ea2e39ce4025852d1d1eaf662af8bd8eeb6
        - registry.redhat.io/openshift4/ose-cli@sha256:25fef269ac6e7491cb8340119a9b473acbeb53bc6970ad029fdaae59c3d0ca61
        - registry.redhat.io/rhoai/odh-rhel8-operator@sha256:b3563e201bf2720f60e73c0b04cb70566ea52eda7d09a28753f3a1487993c2e8
        - registry.redhat.io/ubi8/ubi-minimal@sha256:5d2d4d4dbec470f8ffb679915e2a8ae25ad754cd9193fa966deee1ecb7b3ee00
        - registry.redhat.io/openshift4/ose-prometheus-alertmanager@sha256:169b788b3f8eb8909ecc1d698ab0a6bf103b49043c7f5fd569789b179928def6
        - registry.redhat.io/openshift4/ose-prometheus-config-reloader@sha256:bd543e039c7c2b0857a7e0ce34d582b8954a8ad3a3f13a2eaaff2904cdae7c53
        - registry.redhat.io/openshift4/ose-cli@sha256:75bf9b911b6481dcf29f7942240d1555adaa607eec7fc61bedb7f624f87c36d4
        - registry.redhat.io/rhel7/etcd@sha256:d3495b263b103681f1b09a558be43c21989bfc269eb90f84c2609042cebdc626
        - registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
        - registry.redhat.io/rhoai/odh-kueue-controller-rhel8@sha256:91525fac5fadece75fbdafc40b94445fb92c88cfc8c2f06b596f8c6377e59c9e
        - registry.redhat.io/rhoai/odh-operator-bundle@sha256:cb711fcb32b5ca0f34c4e3c67624bc4e035de4247617d988a9e841fd58c1c911
        - registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:0b8665e8978deb73be2cc65830f08a74a5a48f3e3ee7b2b817f7bbacba257d22
        - registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:850b78a201effcafe33705dcd2670f1c470d8b46ba6e307032403627b55a7cfe
        - registry.redhat.io/rhoai/odh-ml-pipelines-api-server-rhel8@sha256:90833e85e0de3d7de870074c8b04319cd11b913b9652af6a5727aae41a91458c
        - registry.redhat.io/rhoai/odh-codeflare-operator-rhel8@sha256:1a6e29214e06a2665baadbed598ba758d6141bfa522984eb05f05a80558a403c
        version: 2.8.4
      entries:
      - name: rhods-operator.2.8.4
        version: 2.8.4
      - name: rhods-operator.2.8.3
        version: 2.8.3
      - name: rhods-operator.2.8.2
        version: 2.8.2
      - name: rhods-operator.2.8.1
        version: 2.8.1
      - name: rhods-operator.2.8.0
        version: 2.8.0
      - name: rhods-operator.2.7.0
        version: 2.7.0
      - name: rhods-operator.2.6.0
        version: 2.6.0
      - name: rhods-operator.2.5.0
        version: 2.5.0
      - name: rhods-operator.2.4.0
        version: 2.4.0
      - name: rhods-operator.1.33.0
        version: 1.33.0
      - name: rhods-operator.1.32.0
        version: 1.32.0
      - name: rhods-operator.1.31.0
        version: 1.31.0
      - name: rhods-operator.1.30.0
        version: 1.30.0
      - name: rhods-operator.1.29.0
        version: 1.29.0
      - name: rhods-operator.1.28.1
        version: 1.28.1
      - name: rhods-operator.1.28.0
        version: 1.28.0
      - name: rhods-operator.1.27.0
        version: 1.27.0
      - name: rhods-operator.1.26.0
        version: 1.26.0
      - name: rhods-operator.1.25.0
        version: 1.25.0
      - name: rhods-operator.1.24.0
        version: 1.24.0
      - name: rhods-operator.1.23.0
        version: 1.23.0
      - name: rhods-operator.1.22.1-4
        version: 1.22.1-4
      - name: rhods-operator.1.22.1-2
        version: 1.22.1-2
      - name: rhods-operator.1.22.0-2
        version: 1.22.0-2
      - name: rhods-operator.1.21.0-22
        version: 1.21.0-22
      - name: rhods-operator.1.20.1-8
        version: 1.20.1-8
      name: stable-2.8
    defaultChannel: stable
    packageName: rhods-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Turbonomic, Inc.
      provider-url: ""
    name: prometurbo
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometurbo-operator.v8.7.1-beta.1
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.7.1-SNAPSHOT
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: turbodeploy@turbonomic.com
          name: turbodeploy
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/prometurbo@sha256:ef65de2143df2c93aa73f099fa66d39e3239c30a9d547ed7bf258da0a19e8e35
        - turbonomic/prometurbo-operator:8.7.1-SNAPSHOT
        version: 8.7.1-beta.1
      entries:
      - name: prometurbo-operator.v8.7.1-beta.1
        version: 8.7.1-beta.1
      name: beta
    - currentCSV: prometurbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.6
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - turbonomic/prometurbo-operator:8.6
        - quay.io/openshift-community-operators/prometurbo@sha256:cb8b13fece10b8217b79e63584f8df4975721f2cec82aada2cf6c266d72dbf75
        version: 8.6.0
      entries:
      - name: prometurbo-operator.v8.6.0
        version: 8.6.0
      - name: prometurbo-operator.v8.5.0
        version: 8.5.0
      name: stable
    - currentCSV: prometurbo-operator.v8.5.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.5
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/prometurbo@sha256:83444ab464bce4fb5021a2fca6d4d6ff72b40e90a6cfc9c5ac6c74357c775ad5
        - turbonomic/prometurbo-operator:8.5
        version: 8.5.0
      entries:
      - name: prometurbo-operator.v8.5.0
        version: 8.5.0
      name: v8.5.0
    - currentCSV: prometurbo-operator.v8.6.0
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion":"charts.helm.k8s.io/v1","kind":"Prometurbo","metadata":{"name":"prometurbo-release"},"spec":{"serverMeta":{"turboServer":"https://Turbo_server_URL"}}}]'
          capabilities: Basic Install
          categories: Monitoring
          certified: "false"
          containerImage: turbonomic/prometurbo-operator:8.6
          createdAt: "2019-05-01 00:00:00"
          description: Turbonomic Workload Automation for Multicloud simultaneously
            optimizes performance, compliance, and cost in real-time. Workloads are
            precisely resourced, automatically, to perform while satisfying business
            constraints.
          repository: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
          support: Turbonomic, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Turbonomic Workload Automation for Multicloud simultaneously
              optimizes performance, compliance, and cost in real-time. Workloads
              are precisely resourced, automatically, to perform while satisfying
              business constraints.
            displayName: Prometurbo Operator
            kind: Prometurbo
            name: prometurbos.charts.helm.k8s.io
            version: v1
        description: |-
          ### Application Resource Management for Kubernetes
          Turbonomic AI-powered Application Resource Management simultaneously optimizes performance, compliance, and cost in real time.
          Software manages the complete application stack, automatically. Applications are continually resourced to perform while satisfying business constraints.

          Turbonomic makes workloads smart — enabling them to self-manage and determines the specific actions that will drive continuous health:

          * Continuous placement for Pods (rescheduling)
          * Continuous scaling for applications and  the underlying cluster.

          It assures application performance by giving workloads the resources they need when they need them.

          ### How does it work?
          Turbonomic uses a container — PromeTurbo — that runs next to your Prometheus sever, which monitors your environment.
          PromeTurbo sends application and infrastructure monitoring data back to the Turbonomic analytics engine.
          Turbonomic determines the right actions that drive continuous health, including continuous placement for Pods and continuous scaling for applications and the underlying cluster.
        displayName: Prometurbo Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        links:
        - name: Turbonomic, Inc.
          url: https://www.turbonomic.com/
        - name: Prometurbo Operator
          url: https://github.com/turbonomic/prometurbo/tree/master/deploy/prometurbo-operator
        maintainers:
        - email: endre.sara@turbonomic.com
          name: Endre Sara
        maturity: alpha
        provider:
          name: Turbonomic, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/prometurbo@sha256:cb8b13fece10b8217b79e63584f8df4975721f2cec82aada2cf6c266d72dbf75
        - turbonomic/prometurbo-operator:8.6
        version: 8.6.0
      entries:
      - name: prometurbo-operator.v8.6.0
        version: 8.6.0
      - name: prometurbo-operator.v8.5.0
        version: 8.5.0
      name: v8.6.0
    defaultChannel: stable
    packageName: prometurbo
    provider:
      name: Turbonomic, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app.kubernetes.io/version: 5.8.6
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Crunchy Data
      provider-url: https://www.crunchydata.com/
    name: crunchy-postgres-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: postgresoperator.v5.8.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "CrunchyBridgeCluster",
                "metadata": {
                  "name": "example-crunchybridgecluster"
                },
                "spec": {
                  "clusterName": "example-bridge-cluster",
                  "isHa": false,
                  "majorVersion": 16,
                  "plan": "standard-4",
                  "provider": "aws",
                  "region": "us-west-2",
                  "secret": "crunchy-bridge-api-key",
                  "storage": "10Gi"
                }
              },
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "PGAdmin",
                "metadata": {
                  "name": "example-pgadmin",
                  "namespace": "openshift-operators"
                },
                "spec": {
                  "dataVolumeClaimSpec": {
                    "accessModes": [
                      "ReadWriteOnce"
                    ],
                    "resources": {
                      "requests": {
                        "storage": "1Gi"
                      }
                    }
                  },
                  "serverGroups": [
                    {
                      "name": "Crunchy Postgres for Kubernetes",
                      "postgresClusterSelector": {}
                    }
                  ]
                }
              },
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "PGUpgrade",
                "metadata": {
                  "name": "example-upgrade"
                },
                "spec": {
                  "fromPostgresVersion": 16,
                  "postgresClusterName": "example",
                  "toPostgresVersion": 17
                }
              },
              {
                "apiVersion": "postgres-operator.crunchydata.com/v1beta1",
                "kind": "PostgresCluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "backups": {
                    "pgbackrest": {
                      "repos": [
                        {
                          "name": "repo1",
                          "volume": {
                            "volumeClaimSpec": {
                              "accessModes": [
                                "ReadWriteOnce"
                              ],
                              "resources": {
                                "requests": {
                                  "storage": "1Gi"
                                }
                              }
                            }
                          }
                        }
                      ]
                    }
                  },
                  "instances": [
                    {
                      "dataVolumeClaimSpec": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "resources": {
                          "requests": {
                            "storage": "1Gi"
                          }
                        }
                      },
                      "replicas": 1
                    }
                  ],
                  "postgresVersion": 16
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: registry.connect.redhat.com/crunchydata/postgres-operator@sha256:c92df32b32c8d3b4ecdee0ad5f0f408bf33c906e9be7188a03a02db1bed61aaa
          createdAt: 2019-12-31 19:40Z
          description: Production Postgres Made Easy
          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"
          repository: https://github.com/CrunchyData/postgres-operator
          support: crunchydata.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CrunchyBridgeCluster is the Schema for the crunchybridgeclusters
              API
            displayName: Crunchy Bridge Cluster
            kind: CrunchyBridgeCluster
            name: crunchybridgeclusters.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGAdmin is the Schema for the PGAdmin API
            displayName: PGAdmin
            kind: PGAdmin
            name: pgadmins.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PGUpgrade is the Schema for the pgupgrades API
            displayName: PGUpgrade
            kind: PGUpgrade
            name: pgupgrades.postgres-operator.crunchydata.com
            version: v1beta1
          - description: PostgresCluster is the Schema for the postgresclusters API
            displayName: Postgres Cluster
            kind: PostgresCluster
            name: postgresclusters.postgres-operator.crunchydata.com
            version: v1beta1
        description: |-
          [Crunchy Postgres for Kubernetes](https://www.crunchydata.com/products/crunchy-postgresql-for-kubernetes), is the leading Kubernetes native
          Postgres solution. Built on PGO, the Postgres Operator from Crunchy Data, Crunchy Postgres for Kubernetes gives you a declarative Postgres
          solution that automatically manages your PostgreSQL clusters.

          Designed for your GitOps workflows, it is [easy to get started](https://access.crunchydata.com/documentation/postgres-operator/latest/quickstart)
          with Crunchy Postgres for Kubernetes. Within a few moments, you can have a production grade Postgres cluster complete with high availability, disaster
          recovery, and monitoring, all over secure TLS communications. Even better, Crunchy Postgres for Kubernetes lets you easily customize your Postgres
          cluster to tailor it to your workload!

          With conveniences like cloning Postgres clusters to using rolling updates to roll out disruptive changes with minimal downtime, Crunchy Postgres
          for Kubernetes is ready to support your Postgres data at every stage of your release pipeline. Built for resiliency and uptime, Crunchy Postgres
          for Kubernetes will keep your Postgres cluster in a desired state so you do not need to worry about it.

          Crunchy Postgres for Kubernetes is developed with many years of production experience in automating Postgres management on Kubernetes, providing
          a seamless cloud native Postgres solution to keep your data always available.

          Crunchy Postgres for Kubernetes is made available to users without an active Crunchy Data subscription in connection with Crunchy Data's
          [Developer Program](https://www.crunchydata.com/developers/terms-of-use).
          For more information, please contact us at [info@crunchydata.com](mailto:info@crunchydata.com).

          - **PostgreSQL Cluster Provisioning**: [Create, Scale, & Delete PostgreSQL clusters with ease][provisioning],
            while fully customizing your Pods and PostgreSQL configuration!
          - **High-Availability**: Safe, automated failover backed by a [distributed consensus based high-availability solution][high-availability].
            Uses [Pod Anti-Affinity][k8s-anti-affinity] to help resiliency; you can configure how aggressive this can be!
            Failed primaries automatically heal, allowing for faster recovery time. You can even create regularly scheduled
            backups as well and set your backup retention policy
          - **Disaster Recovery**: [Backups][backups] and [restores][disaster-recovery] leverage the open source [pgBackRest][] utility and
            [includes support for full, incremental, and differential backups as well as efficient delta restores][backups].
            Set how long you want your backups retained for. Works great with very large databases!
          - **Monitoring**: [Track the health of your PostgreSQL clusters][monitoring] using the open source [pgMonitor][] library and OpenTelemetry.
          - **Clone**: [Create new clusters from your existing clusters or backups][clone] with efficient data cloning.
          - **TLS**: All connections are over [TLS][tls]. You can also [bring your own TLS infrastructure][tls] if you do not want to use the provided defaults.
          - **Connection Pooling**: Advanced [connection pooling][pool] support using [pgBouncer][].
          - **Affinity and Tolerations**: Have your PostgreSQL clusters deployed to [Kubernetes Nodes][k8s-nodes] of your preference.
            Set your [pod anti-affinity][k8s-anti-affinity], node affinity, Pod tolerations and more rules to customize your deployment topology!
          - **PostgreSQL Major Version Upgrades**: Perform a [PostgreSQL major version upgrade][major-version-upgrade] declaratively.
          - **Database Administration**: Easily deploy [pgAdmin4][pgadmin] to administer your PostgresClusters' databases.
            The automatic discovery of PostgresClusters ensures that you are able to seamlessly access any databases within your environment from the pgAdmin4 GUI.
          - **Full Customizability**: Crunchy PostgreSQL for Kubernetes makes it easy to get your own PostgreSQL-as-a-Service up and running
            and fully customize your deployments, including:
              - Choose the resources for your Postgres cluster: [container resources and storage size][resize-cluster]. [Resize at any time][resize-cluster] with minimal disruption.
              - Use your own container image repository, including support `imagePullSecrets` and private repositories
              - [Customize your PostgreSQL configuration][customize-cluster]

          and much more!

          [backups]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/backups-disaster-recovery
          [clone]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/backups-disaster-recovery/disaster-recovery
          [customize-cluster]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/day-two/customize-cluster
          [disaster-recovery]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/backups-disaster-recovery/disaster-recovery
          [high-availability]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/day-two/high-availability
          [major-version-upgrade]: https://access.crunchydata.com/documentation/postgres-operator/v5/guides/major-postgres-version-upgrade/
          [monitoring]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/day-two/monitoring
          [pool]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/basic-setup/connection-pooling
          [provisioning]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/basic-setup/create-cluster
          [resize-cluster]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/cluster-management/resize-cluster
          [tls]: https://access.crunchydata.com/documentation/postgres-operator/latest/tutorials/day-two/customize-cluster#customize-tls

          [k8s-anti-affinity]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#inter-pod-affinity-and-anti-affinity
          [k8s-nodes]: https://kubernetes.io/docs/concepts/architecture/nodes/

          [pgAdmin]: https://www.pgadmin.org/
          [pgBackRest]: https://www.pgbackrest.org
          [pgBouncer]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials/basic-setup/connection-pooling
          [pgMonitor]: https://github.com/CrunchyData/pgmonitor

          ## Post-Installation

          ### Tutorial

          Want to [learn more about the PostgreSQL Operator][tutorial]? Browse through the [tutorial][] to learn more about what you can do,
          [join the Discord server][discord] for community support, or check out the [PGO GitHub repo][ghrepo] to learn more
          about the open source Postgres Operator project that powers Crunchy Postgres for Kubernetes.

          [tutorial]: https://access.crunchydata.com/documentation/postgres-operator/v5/tutorials
          [discord]: https://discord.gg/a7vWKG8Ec9
          [ghrepo]: https://github.com/CrunchyData/postgres-operator
        displayName: Crunchy Postgres for Kubernetes
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgres
        - postgresql
        - database
        - sql
        - operator
        - crunchy data
        links:
        - name: Crunchy Data
          url: https://www.crunchydata.com/
        - name: Documentation
          url: https://access.crunchydata.com/documentation/postgres-operator/v5/
        maintainers:
        - email: info@crunchydata.com
          name: Crunchy Data
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Crunchy Data
          url: https://www.crunchydata.com/
        relatedImages:
        - registry.connect.redhat.com/crunchydata/postgres-operator@sha256:c92df32b32c8d3b4ecdee0ad5f0f408bf33c906e9be7188a03a02db1bed61aaa
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:f3977ebceb725e0abd789776e27ed74026c98c2e41fc8b19bb57015fe40f77c5
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:4412a85a0c795e72142fc28b90aef513175f4bc55911a189733daaddaa7111f2
        - registry.connect.redhat.com/crunchydata/postgres-operator-bundle@sha256:8c02e461c615d8963a62e9279fd808ee7fa633443b44facde9f588a61c771819
        - registry.connect.redhat.com/crunchydata/crunchy-pgbouncer@sha256:22414de1b9fea7d88bb753ea67a0f3634427f87590a405fa5eaddefe5b101176
        - registry.connect.redhat.com/crunchydata/crunchy-pgbackrest@sha256:35ec028bae6c112d9bba20f5a9e8dcf4c2610cc11728d23a1bdfbc0357676bfc
        - registry.connect.redhat.com/crunchydata/crunchy-upgrade@sha256:c953467c06f4c94aef0daca6266b2b46e5f369b5b4db256b77098c56d1099008
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:26784e2511af35de6969acea943706664e333aee928bcbb86eaec0bafb3a465b
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:eced136169980e95d8f002e2f95cef44e4132a70d06e3399f236241d3899af76
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:c1d6337497b1eca5ec48fbbb213e837522627210e8a0d6675980de5c41cb29d4
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:d28a2eb25b47ca13350e525fdc72969883913ca429595a4131d7f41a1aa4e0ce
        - registry.connect.redhat.com/crunchydata/crunchy-pgadmin4@sha256:501cdc79d624fd1d3a2efbbfcafb9aac876e65d2e4fc3f61431259fc35c42f4c
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:5ae16b986731fd9545bc6485f20d913429d38155f86e4eec629a511014a192f9
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:c388de55a1762a218299c555fda6a451ffc1df6b12b80b6873e4cd3107b12530
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-exporter@sha256:b455b35086cbac3fc365a5fe32399ca023b292351447659200215988869b60f0
        - registry.connect.redhat.com/crunchydata/crunchy-postgres@sha256:a9b8a9c5bf512078b215c63da65a2daf7511bc0e00d00513d966269220ec4583
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:bdebb3134cf0c07105ca873805e739846750cde03eb865682195eb58b6517dce
        - registry.connect.redhat.com/crunchydata/crunchy-postgres-gis@sha256:2083776ac27ddb96bc9e4ca5db2ed92c60b1b24277af7975fd86aaca37060dce
        version: 5.8.6
      entries:
      - name: postgresoperator.v5.8.6
        version: 5.8.6
      - name: postgresoperator.v5.8.5
        version: 5.8.5
      - name: postgresoperator.v5.8.4
        version: 5.8.4
      - name: postgresoperator.v5.8.3
        version: 5.8.3
      - name: postgresoperator.v5.8.2
        version: 5.8.2
      - name: postgresoperator.v5.8.1
        version: 5.8.1
      - name: postgresoperator.v5.8.0
        version: 5.8.0
      - name: postgresoperator.v5.7.4
        version: 5.7.4
      - name: postgresoperator.v5.7.3
        version: 5.7.3
      - name: postgresoperator.v5.7.2
        version: 5.7.2
      - name: postgresoperator.v5.7.1
        version: 5.7.1
      - name: postgresoperator.v5.7.0
        version: 5.7.0
      - name: postgresoperator.v5.6.1
        version: 5.6.1
      - name: postgresoperator.v5.6.0
        version: 5.6.0
      - name: postgresoperator.v5.5.2
        version: 5.5.2
      - name: postgresoperator.v5.5.1
        version: 5.5.1
      - name: postgresoperator.v5.5.0
        version: 5.5.0
      - name: postgresoperator.v5.4.4
        version: 5.4.4
      - name: postgresoperator.v5.4.3
        version: 5.4.3
      - name: postgresoperator.v5.4.2
        version: 5.4.2
      - name: postgresoperator.v5.4.1
        version: 5.4.1
      - name: postgresoperator.v5.4.0
        version: 5.4.0
      - name: postgresoperator.v5.3.0
        version: 5.3.0
      - name: postgresoperator.v5.2.0
        version: 5.2.0
      - name: postgresoperator.v5.1.3
        version: 5.1.3
      - name: postgresoperator.v5.1.2
        version: 5.1.2
      - name: postgresoperator.v5.1.1
        version: 5.1.1
      - name: postgresoperator.v5.1.0
        version: 5.1.0
      name: v5
    defaultChannel: v5
    packageName: crunchy-postgres-operator
    provider:
      name: Crunchy Data
      url: https://www.crunchydata.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Saison Technology Co., Ltd.
      provider-url: https://www.hulft.com/
    name: hulft
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hulft.v10.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hulft.saison-technology.com/v1",
                "kind": "Hulft",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "hulft",
                    "app.kubernetes.io/instance": "sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hulft",
                    "app.kubernetes.io/part-of": "hulft"
                  },
                  "name": "sample",
                  "namespace": "user-apps"
                },
                "spec": {
                  "applicationName": "hulft-apps",
                  "control": {
                    "allowExternalAccess": true,
                    "replicas": {
                      "max": 1,
                      "min": 1
                    }
                  },
                  "db": {
                    "authorizationSecret": "secret-hulft-db-authorization",
                    "connectionRetryCount": 30,
                    "hostname": "database.example.com",
                    "name": "hulft",
                    "port": 3306,
                    "tablePrefix": "hulft"
                  },
                  "licenseSecret": "secret-hulft-license",
                  "resourceIdentifier": "sample",
                  "transfer": {
                    "control": {
                      "retryCount": 10,
                      "retryInterval": 10000,
                      "timeout": 60000
                    },
                    "gracefulShutdownWait": 3600,
                    "observe": {
                      "websocket": {
                        "allowExternalAccess": false
                      }
                    },
                    "replicas": {
                      "max": 5,
                      "min": 1
                    },
                    "s3": {
                      "defaultRegion": "ap-northeast-1"
                    },
                    "websocket": {
                      "allowExternalAccess": false
                    }
                  }
                },
                "status": {
                  "applicationName": "hulft-apps",
                  "control": {
                    "allowExternalAccess": true,
                    "apiClientTlsSecret": "secret-hulft-sample-transfer-control-server-tls",
                    "consoleLoginSecret": "secret-hulft-sample-console-login",
                    "consoleTlsSecret": "secret-hulft-sample-control-console-tls",
                    "hostname": "",
                    "httpPort": 30080,
                    "httpsPort": 30443,
                    "replicas": {
                      "max": 1,
                      "min": 1
                    },
                    "samlSecret": ""
                  },
                  "db": {
                    "authorizationSecret": "secret-hulft-db-authorization",
                    "connectionRetryCount": 30,
                    "encryptionKeySecret": "secret-hulft-sample-db-encryption-key",
                    "hostname": "database.example.com",
                    "name": "hulft",
                    "port": 3306,
                    "tablePrefix": "hulft"
                  },
                  "licenseSecret": "secret-hulft-license",
                  "resourceIdentifier": "sample",
                  "transfer": {
                    "control": {
                      "clientTlsSecret": "secret-hulft-sample-control-console-tls",
                      "port": 30443,
                      "retryCount": 10,
                      "retryInterval": 10000,
                      "serverTlsSecret": "secret-hulft-sample-transfer-control-server-tls",
                      "timeout": 60000
                    },
                    "gracefulShutdownWait": 3600,
                    "hostname": "hulft-sample-transfer-wss-ci.apps.openshift.example.com",
                    "hulft": {
                      "port": 30000
                    },
                    "observe": {
                      "port": 31000,
                      "websocket": {
                        "allowExternalAccess": true,
                        "port": 33443,
                        "serverTlsSecret": "secret-hulft-sample-transfer-observe-wss-server-tls"
                      }
                    },
                    "replicas": {
                      "max": 5,
                      "min": 1
                    },
                    "s3": {
                      "authenticationSecret": "",
                      "defaultRegion": "ap-northeast-1"
                    },
                    "websocket": {
                      "allowExternalAccess": true,
                      "clientTlsSecret": "",
                      "port": 31443,
                      "serverTlsSecret": "secret-hulft-sample-transfer-wss-server-tls"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: registry.connect.redhat.com/saison-technology/hulft-operator@sha256:8ee0a29d0ce96f4ec230f387467b241dccbb2bd350cd642b275ef5f5d3b64972
          createdAt: "2025-10-09T04:43:01Z"
          description: HULFT10 for Container Platform is file integration middleware
            that provides transfer functions for the data accumulated in your IT system
            during the daily operations of your business, such as sales data, customer
            information, and various logs. File transfer from/to on-premises HULFT
            is also available.
          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: "true"
          features.operators.openshift.io/tls-profiles: "true"
          features.operators.openshift.io/token-auth-aws: "false"
          features.operators.openshift.io/token-auth-azure: "false"
          features.operators.openshift.io/token-auth-gcp: "false"
          operators.openshift.io/valid-subscription: To use HULFT10 for Container
            Platform, you must purchase the product and have a key issued. Please
            refer to [Start Up Guide](https://www.hulft.com/help/ja-jp/HULFT-V10/CONP-SUGOS)
            for the deployment procedure.
          operators.operatorframework.io/builder: operator-sdk-v1.31.0-ocp
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          support: Saison Technology Co., Ltd.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Hulft is the Schema for the hulfts API
            displayName: Hulft
            kind: Hulft
            name: hulfts.hulft.saison-technology.com
            version: v1
        description: |
          HULFT10 for Container Platform is file integration middleware that provides transfer functions for the data accumulated in your IT system during the daily operations of your business, such as sales data, customer information, and various logs. File transfer from/to on-premises HULFT is also available.
          To use HULFT10 for Container Platform, you must purchase the product and have a key issued. Please refer to [Start Up Guide](https://www.hulft.com/help/ja-jp/HULFT-V10/CONP-SUGOS) for the deployment procedure.
        displayName: HULFT10 for Container Platform
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Backup & Recovery
        - Storage
        - Migration
        links:
        - name: Product page
          url: https://www.hulft.com/software/hulft-10
        - name: Product manual
          url: https://www.hulft.com/help/ja-jp/HULFT-V10/index.htm
        maintainers:
        - email: salessupport_mp@hulft.com
          name: Saison Technology Co., Ltd.
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Saison Technology Co., Ltd.
          url: https://www.hulft.com/
        relatedImages:
        - registry.connect.redhat.com/saison-technology/hulft-operator@sha256:8ee0a29d0ce96f4ec230f387467b241dccbb2bd350cd642b275ef5f5d3b64972
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:fa0acefda43e309e7f9f31f5247c933d0b868ff1573ece2f38e0549d7e2ec942
        - registry.connect.redhat.com/saison-technology/hulft-bundle@sha256:8f0b469b347670a729ba629b3b0da57d51981644bd894b3afc3d911041ccde6a
        version: 10.5.0
      entries:
      - name: hulft.v10.5.0
        version: 10.5.0
      - name: hulft.v10.4.0
        version: 10.4.0
      - name: hulft.v10.3.0
        version: 10.3.0
      name: stable
    defaultChannel: stable
    packageName: hulft
    provider:
      name: Saison Technology Co., Ltd.
      url: https://www.hulft.com/
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hazelcast, Inc
      provider-url: ""
    name: hazelcast-platform-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hazelcast-platform-operator.v5.15.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Cache",
                "metadata": {
                  "name": "cache-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "CronHotBackup",
                "metadata": {
                  "name": "cronhotbackup-sample"
                },
                "spec": {
                  "hotBackupTemplate": {
                    "metadata": {
                      "labels": {
                        "cron-hotbackup": "true"
                      }
                    },
                    "spec": {
                      "hazelcastResourceName": "hazelcast"
                    }
                  },
                  "schedule": "*/30 * * * *"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Flow",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hazelcast-platform-operator"
                  },
                  "name": "flow"
                },
                "spec": {
                  "database": {
                    "host": "flow-postgresql",
                    "secretName": "flow-db-secret"
                  },
                  "env": [
                    {
                      "name": "OPTIONS",
                      "value": "--flow.analytics.persistRemoteCallResponses=true --flow.analytics.persistResults=false --flow.config.custom.managementCenterUrl=http://34.140.160.158/mc\n"
                    }
                  ],
                  "externalConnectivity": {
                    "ingress": {
                      "annotations": {
                        "kubernetes.io/ingress.class": "nginx",
                        "nginx.ingress.kubernetes.io/enable-opentelemetry": "true",
                        "nginx.ingress.kubernetes.io/ssl-redirect": "false"
                      },
                      "hostname": "",
                      "ingressClassName": "nginx",
                      "path": "/"
                    }
                  },
                  "imagePullSecrets": [
                    {
                      "name": "hazelcast-cloud-hazelcast-connect-demo-pull-secret"
                    }
                  ],
                  "licenseKeySecretName": "flow-mc-license-key",
                  "repository": "quay.io/hazelcast_cloud/hazelcast-flow-internal",
                  "size": 3,
                  "version": "next"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast"
                },
                "spec": {
                  "clusterSize": 3,
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Hazelcast",
                "metadata": {
                  "name": "hazelcast-sample"
                },
                "spec": {
                  "clusterSize": 3,
                  "jet": {
                    "bucketConfig": {
                      "bucketURI": "gs://operator-user-code/jetJobs",
                      "secretName": "br-secret-gcp"
                    },
                    "enabled": true,
                    "resourceUploadEnabled": true
                  },
                  "licenseKeySecretName": "hazelcast-license-key",
                  "repository": "docker.io/hazelcast/hazelcast-enterprise"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HazelcastEndpoint",
                "metadata": {
                  "name": "hazelcastendpoint-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "port": 5701,
                  "type": "Discovery"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "HotBackup",
                "metadata": {
                  "name": "hot-backup"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-longrun"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-longrun-2.0.0.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJob",
                "metadata": {
                  "name": "jet-job-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "jarName": "jet-pipeline-1.0.2.jar",
                  "state": "Running"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "JetJobSnapshot",
                "metadata": {
                  "name": "jetjobsnapshot-sample"
                },
                "spec": {
                  "cancelJob": false,
                  "jetJobResourceName": "jet-job"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ManagementCenter",
                "metadata": {
                  "name": "managementcenter"
                },
                "spec": {
                  "externalConnectivity": {
                    "type": "LoadBalancer"
                  },
                  "hazelcastClusters": [
                    {
                      "address": "hazelcast",
                      "name": "dev"
                    }
                  ],
                  "licenseKeySecretName": "hazelcast-license-key",
                  "persistence": {
                    "enabled": true,
                    "size": "10Gi"
                  },
                  "repository": "hazelcast/management-center"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Map",
                "metadata": {
                  "name": "map"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "MultiMap",
                "metadata": {
                  "name": "multimap-sample"
                },
                "spec": {
                  "backupCount": 3,
                  "binary": true,
                  "collectionType": "LIST",
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Queue",
                "metadata": {
                  "name": "queue-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "ReplicatedMap",
                "metadata": {
                  "name": "replicatedmap-sample"
                },
                "spec": {
                  "asyncFillup": true,
                  "hazelcastResourceName": "hazelcast",
                  "inMemoryFormat": "OBJECT"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "Topic",
                "metadata": {
                  "name": "topic-sample"
                },
                "spec": {
                  "globalOrderingEnabled": true,
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "UserCodeNamespace",
                "metadata": {
                  "name": "ucn-sample"
                },
                "spec": {
                  "bucketConfig": {
                    "bucketURI": "gs://operator-user-code/userCodeNamespace",
                    "secretName": "br-secret-gcp"
                  },
                  "hazelcastResourceName": "hazelcast"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "VectorCollection",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "hazelcast-platform-operator"
                  },
                  "name": "vectorcollection-sample"
                },
                "spec": {
                  "hazelcastResourceName": "hazelcast",
                  "indexes": [
                    {
                      "dimension": 10,
                      "efConstruction": 256,
                      "maxDegree": 32,
                      "metric": "Dot",
                      "useDeduplication": false
                    }
                  ]
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanReplication",
                "metadata": {
                  "name": "wanreplication-sample"
                },
                "spec": {
                  "endpoints": "35.192.33.252",
                  "resources": [
                    {
                      "kind": "Map",
                      "name": "map-sample"
                    },
                    {
                      "kind": "Hazelcast",
                      "name": "hz-sample"
                    }
                  ],
                  "targetClusterName": "dev"
                }
              },
              {
                "apiVersion": "hazelcast.com/v1alpha1",
                "kind": "WanSync",
                "metadata": {
                  "name": "wansync-sample"
                },
                "spec": {
                  "wanReplicationResourceName": "wan-replication-sample"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Database
          containerImage: docker.io/hazelcast/hazelcast-platform-operator@sha256:59328a4ea7a4e2110e0750364db792cf266f1e7231e3bb321e3de09d535dab23
          createdAt: "2025-03-13T11:59:59Z"
          description: Install Hazelcast clusters in Kubernetes environments.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/hazelcast/hazelcast-platform-operator/
          support: Hazelcast, Inc
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cache is the Schema for the caches API
            displayName: Cache
            kind: Cache
            name: caches.hazelcast.com
            version: v1alpha1
          - description: CronHotBackup is the Schema for the cronhotbackups API
            displayName: Cron Hot Backup
            kind: CronHotBackup
            name: cronhotbackups.hazelcast.com
            version: v1alpha1
          - description: Flow is the Schema for the flows API
            displayName: Flow
            kind: Flow
            name: flows.hazelcast.com
            version: v1alpha1
          - description: HazelcastEndpoint is the Schema for the hazelcastendpoints
              API
            displayName: Hazelcast Endpoint
            kind: HazelcastEndpoint
            name: hazelcastendpoints.hazelcast.com
            version: v1alpha1
          - description: Hazelcast is the Schema for the hazelcasts API
            displayName: Hazelcast
            kind: Hazelcast
            name: hazelcasts.hazelcast.com
            version: v1alpha1
          - description: HotBackup is the Schema for the hot backup API
            displayName: Hot Backup
            kind: HotBackup
            name: hotbackups.hazelcast.com
            version: v1alpha1
          - description: JetJob is the Schema for the jetjobs API
            displayName: Jet Job
            kind: JetJob
            name: jetjobs.hazelcast.com
            version: v1alpha1
          - description: JetJobSnapshot is the Schema for the jetjobsnapshots API
            displayName: Jet Job Snapshot
            kind: JetJobSnapshot
            name: jetjobsnapshots.hazelcast.com
            version: v1alpha1
          - description: ManagementCenter is the Schema for the managementcenters
              API
            displayName: Management Center
            kind: ManagementCenter
            name: managementcenters.hazelcast.com
            version: v1alpha1
          - description: Map is the Schema for the maps API
            displayName: Map
            kind: Map
            name: maps.hazelcast.com
            version: v1alpha1
          - description: MultiMap is the Schema for the multimaps API
            displayName: Multi Map
            kind: MultiMap
            name: multimaps.hazelcast.com
            version: v1alpha1
          - description: Queue is the Schema for the queues API
            displayName: Queue
            kind: Queue
            name: queues.hazelcast.com
            version: v1alpha1
          - description: ReplicatedMap is the Schema for the replicatedmaps API
            displayName: Replicated Map
            kind: ReplicatedMap
            name: replicatedmaps.hazelcast.com
            version: v1alpha1
          - description: Topic is the Schema for the topics API
            displayName: Topic
            kind: Topic
            name: topics.hazelcast.com
            version: v1alpha1
          - description: UserCodeNamespace is the Schema for the usercodenamespaces
              API
            displayName: User Code Namespace
            kind: UserCodeNamespace
            name: usercodenamespaces.hazelcast.com
            version: v1alpha1
          - description: VectorCollection is the Schema for the vectorcollections
              API
            displayName: Vector Collection
            kind: VectorCollection
            name: vectorcollections.hazelcast.com
            version: v1alpha1
          - description: WanReplication is the Schema for the wanreplications API
            displayName: Wan Replication
            kind: WanReplication
            name: wanreplications.hazelcast.com
            version: v1alpha1
          - description: WanSync is the Schema for the wansyncs API
            displayName: Wan Sync
            kind: WanSync
            name: wansyncs.hazelcast.com
            version: v1alpha1
        description: |
          Easily deploy Hazelcast clusters and Management Center into Kubernetes environments and manage their lifecycles.

          ## Before You Start

          If you are planning to create Hazelcast Platform Enterprise clusters, you need to [create a secret](https://docs.hazelcast.com/operator/latest/get-started#step-2-start-the-hazelcast-cluster) for the license. You can request a trial license key from [here](https://trialrequest.hazelcast.com).

          For Hazelcast Platform clusters, you can simply continue.

          ## Documentation

          1. [Get started](https://docs.hazelcast.com/operator/latest/get-started) with the Operator
          2. [Connect to the cluster from outside Kubernetes](https://guides.hazelcast.org/hazelcast-platform-operator-expose-externally)
          3. [Restore a Cluster from Cloud Storage with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-external-backup-restore)
          4. [Replicate Data between Two Hazelcast Clusters with Hazelcast Platform Operator](https://docs.hazelcast.com/tutorials/hazelcast-platform-operator-wan-replication)

          ## Features

          Hazelcast Platform Operator supports the features below:

          * Custom resource for Hazelcast Platform (Enterprise) and Management Center
          * Observe status of Hazelcast clusters and Management Center instances
          * High Availability Mode configuration to create clusters that are resilient to node and zone failures
          * Support for TLS connections between members using self-signed certificates
          * Scale up and down Hazelcast clusters
          * Expose Hazelcast cluster to external clients ([Smart & Unisocket](https://docs.hazelcast.com/hazelcast/latest/clients/java#java-client-operation-modes))
          * Backup Hazelcast persistence data to cloud storage with the possibility of scheduling it and restoring the data accordingly
          * WAN Replication feature when you need to synchronize multiple Hazelcast clusters, which are connected by WANs
          * Full and Delta WAN Sync support
          * Tiered Storage support for Hazelcast and Map CRs
          * CP Subsystem configuration support for Hazelcast CR
          * User Code Deployment feature, which allows you to deploy custom and domain classes from cloud storages and URLs to Hazelcast members
          * The User Code Namespaces feature allows you to deploy custom and domain classes at runtime without a members restart
          * Support the configuration of advanced networking options
          * Support Multi-namespace configuration
          * ExecutorService and EntryProcessor support
          * Support several data structures like Map, Topic, MultiMap, ReplicatedMap, Queue and Cache which can be created dynamically via specific Custom Resources
          * MapStore, Near Cache and off-heap memory (HD memory and native memory) support for the Map CR
          * Native Memory support for the Cache CR
          * Support Jet configuration and Jet Job submission using the JetJob CR
          * Support for exporting the snapshots of JetJob CRs using JetJobSnapshot CR
          * Support for custom configurations using ConfigMap
        displayName: Hazelcast Platform Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - hazelcast
        - keyvalue
        - in-memory
        - database
        - caching
        links:
        - name: Documentation
          url: https://docs.hazelcast.com/operator/latest/
        - name: Source Code
          url: https://github.com/hazelcast/hazelcast-platform-operator
        maintainers:
        - email: cloudnative@hazelcast.com
          name: Hazelcast Cloud Native Team
        maturity: alpha
        minKubeVersion: 1.22.7
        provider:
          name: Hazelcast, Inc
        relatedImages:
        - docker.io/hazelcast/hazelcast-platform-operator@sha256:59328a4ea7a4e2110e0750364db792cf266f1e7231e3bb321e3de09d535dab23
        - registry.connect.redhat.com/hazelcast/hazelcast-platform-operator-bundle@sha256:0aabd3e7f5f993c1288450678d55e8f7b36c8b30894e5d844521a474aa6b2714
        version: 5.15.0
      entries:
      - name: hazelcast-platform-operator.v5.15.0
        version: 5.15.0
      name: alpha
    defaultChannel: alpha
    packageName: hazelcast-platform-operator
    provider:
      name: Hazelcast, Inc
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: MuleSoft
      provider-url: anypoint.mulesoft.com
    name: runtime-fabric-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: runtime-fabric-operator.v3.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rtf.operators.mulesoft.com/v1",
                "kind": "RuntimeFabric",
                "metadata": {
                  "name": "runtime-fabric"
                },
                "spec": {
                  "activationData": null,
                  "agent": {
                    "replicas": 1,
                    "app": {
                      "resources": {
                        "limits": {
                          "cpu": "1000m",
                          "memory": "500Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "200Mi"
                        }
                      }
                    },
                    "rtfd": {
                      "resources": {
                        "limits": {
                          "cpu": "200m",
                          "memory": "300Mi"
                        },
                        "requests": {
                          "cpu": "150m",
                          "memory": "200Mi"
                        }
                      },
                      "watch": {
                        "enabled": true,
                        "components": {
                          "deployments": {
                            "enabled": true
                          },
                          "ingress": {
                            "enabled": true
                          },
                          "secrets": {
                            "enabled": true
                          },
                          "persistencegateways": {
                            "enabled": true
                          },
                          "nodes": {
                            "enabled": true
                          },
                          "jobs": {
                            "enabled": true
                          },
                          "routes": {
                            "enabled": true
                          }
                        }
                      },
                      "anypointController": {
                        "enabled": false
                      }
                    }
                  },
                  "resource-cache": {
                    "replicas": 1,
                    "nginx": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "250Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      }
                    },
                    "fetcher": {
                      "resources": {
                        "limits": {
                          "cpu": "50m",
                          "memory": "100Mi"
                        },
                        "requests": {
                          "cpu": "50m",
                          "memory": "50Mi"
                        }
                      }
                    }
                  },
                  "mule-clusterip-service": {
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "500Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "global": {
                    "cluster": {
                      "flavor": "byok",
                      "type": "openshift"
                    },
                    "containerLogPaths": [
                      "/var/lib/docker/containers",
                      "/var/log/containers",
                      "/var/log/pods"
                    ],
                    "core": {
                      "affinity": {},
                      "tolerations": [],
                      "topologySpreadConstraints": [
                        {
                          "maxSkew": 1,
                          "topologyKey": "topology.kubernetes.io/zone",
                          "whenUnsatisfiable": "ScheduleAnyway"
                        }
                      ]
                    },
                    "worker": {
                      "affinity": {},
                      "tolerations": []
                    },
                    "deployment": {
                      "nodeSelector": ""
                    },
                    "image": {
                      "provider": "aws",
                      "pullSecretName": "rtf-pull-secret",
                      "rtfRegistry": "rtf-runtime-registry.kprod.msap.io",
                      "repositoryNamespace": "mulesoft"
                    },
                    "service": {
                      "clusterIp": null
                    },
                    "authorizedNamespaces": false,
                    "fipsEnabled": false,
                    "crds": {
                      "install": true,
                      "keep": true,
                      "flex": {
                        "enabled": false
                      }
                    },
                    "nodeWatcherEnabled": true,
                    "nodeReconciliation": true,
                    "deploymentRateLimitPerSecond": 1
                  },
                  "muleLicense": null,
                  "proxy": {
                    "http_no_proxy": null,
                    "http_proxy": null,
                    "monitoring_proxy": null
                  },
                  "customLog4jEnabled": false
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
          createdAt: "2025-12-09T02:04:18Z"
          description: Runtime Fabric Operator Application from Mulesoft
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/mulesoft/rtf-ocp-operator
          support: MuleSoft
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Runtime Fabric Operator from Mulesoft
              **Activation data**
              Used to install Runtime Fabric on a Kubernetes service. Copy this value from the Runtime Fabric setup page in Runtime Manager.
              **Registry URL**
              The registry from which to retrieve the images needed to install and run Runtime Fabric. If you're using a local registry, specify the URL here.
                * Default registry URLs:
                    - US control plane: rtf-runtime-registry.kprod.msap.io
                    - EU control plane: rtf-runtime-registry.kprod-eu.msap.io
              **Registry pull secret**
              Used to retrieve images from the registry. Change this value only if you did so during the operator installation.
              **Mule license key**
              Your company’s Mule license key. The key is not required during install, but it is required to deploy applications to Runtime Fabric. Must be Base64 encoded.
            displayName: Runtime Fabric
            kind: RuntimeFabric
            name: runtimefabrics.rtf.operators.mulesoft.com
            version: v1
        description: |-
          Anypoint Runtime Fabric is a container service that you install in your existing Red Hat OpenShift cluster that enables you to run Mule applications, composite APIs, and API gateways across any environment with centralized management via Anypoint Platform.
          Capabilities of Runtime Fabric include:
          * Isolation between applications by running a separate Mule runtime server per application.
          * Ability to run multiple versions of Mule runtime server on the same set of resources.
          * Scaling applications across multiple replicas.
          * Automated application fail-over.
          * Application management with Anypoint Runtime Manager.
          Runtime Fabric supports the following Red Hat OpenShift deployment options:
          * Red Hat OpenShift Service on AWS
          * Microsoft Azure Red Hat OpenShift
          * Red Hat OpenShift Dedicated
          * Red Hat OpenShift on IBM Cloud
          * Self-managed Red Hat OpenShift editions (Performance Plus, OCP, Kubernetes engine)
          Runtime Fabric supports Red Hat OpenShift versions 4.17 to 4.20.
        displayName: Runtime Fabric Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - agent
        - rtf
        - runtime
        - fabric
        - mulesoft
        links:
        - name: Runtime Fabric Operator
          url: https://catalog.redhat.com/software/container-stacks/detail/62901512fefb1b137ba23946
        - name: Documentation
          url: https://docs.mulesoft.com/release-notes/runtime-fabric/runtime-fabric
        maintainers:
        - email: support@mulesoft.com
          name: Mulesoft
        maturity: stable
        provider:
          name: MuleSoft
          url: anypoint.mulesoft.com
        relatedImages:
        - quay.io/rtf/kube-rbac-proxy@sha256:a2523c532c0c3d51a5396a901d7ded23e402a9a1492c783aae27af6d0c1d2ec5
        - quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
        - registry.connect.redhat.com/rtf/runtime-fabric-operator@sha256:32476ca3c4943ac8b22ebacec7685402775d562576fbdd53e01ab42803967049
        version: 3.0.1
      entries:
      - name: runtime-fabric-operator.v3.0.1
        version: 3.0.1
      - name: runtime-fabric-operator.v2.11.50
        version: 2.11.50
      name: alpha
    - currentCSV: runtime-fabric-operator.v3.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rtf.operators.mulesoft.com/v1",
                "kind": "RuntimeFabric",
                "metadata": {
                  "name": "runtime-fabric"
                },
                "spec": {
                  "activationData": null,
                  "agent": {
                    "replicas": 1,
                    "app": {
                      "resources": {
                        "limits": {
                          "cpu": "1000m",
                          "memory": "500Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "200Mi"
                        }
                      }
                    },
                    "rtfd": {
                      "resources": {
                        "limits": {
                          "cpu": "200m",
                          "memory": "300Mi"
                        },
                        "requests": {
                          "cpu": "150m",
                          "memory": "200Mi"
                        }
                      },
                      "watch": {
                        "enabled": true,
                        "components": {
                          "deployments": {
                            "enabled": true
                          },
                          "ingress": {
                            "enabled": true
                          },
                          "secrets": {
                            "enabled": true
                          },
                          "persistencegateways": {
                            "enabled": true
                          },
                          "nodes": {
                            "enabled": true
                          },
                          "jobs": {
                            "enabled": true
                          },
                          "routes": {
                            "enabled": true
                          }
                        }
                      },
                      "anypointController": {
                        "enabled": false
                      }
                    }
                  },
                  "resource-cache": {
                    "replicas": 1,
                    "nginx": {
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "250Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "memory": "50Mi"
                        }
                      }
                    },
                    "fetcher": {
                      "resources": {
                        "limits": {
                          "cpu": "50m",
                          "memory": "100Mi"
                        },
                        "requests": {
                          "cpu": "50m",
                          "memory": "50Mi"
                        }
                      }
                    }
                  },
                  "mule-clusterip-service": {
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "500Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "100Mi"
                      }
                    }
                  },
                  "global": {
                    "cluster": {
                      "flavor": "byok",
                      "type": "openshift"
                    },
                    "containerLogPaths": [
                      "/var/lib/docker/containers",
                      "/var/log/containers",
                      "/var/log/pods"
                    ],
                    "core": {
                      "affinity": {},
                      "tolerations": [],
                      "topologySpreadConstraints": [
                        {
                          "maxSkew": 1,
                          "topologyKey": "topology.kubernetes.io/zone",
                          "whenUnsatisfiable": "ScheduleAnyway"
                        }
                      ]
                    },
                    "worker": {
                      "affinity": {},
                      "tolerations": []
                    },
                    "deployment": {
                      "nodeSelector": ""
                    },
                    "image": {
                      "provider": "aws",
                      "pullSecretName": "rtf-pull-secret",
                      "rtfRegistry": "rtf-runtime-registry.kprod.msap.io",
                      "repositoryNamespace": "mulesoft"
                    },
                    "service": {
                      "clusterIp": null
                    },
                    "authorizedNamespaces": false,
                    "fipsEnabled": false,
                    "crds": {
                      "install": true,
                      "keep": true,
                      "flex": {
                        "enabled": false
                      }
                    },
                    "nodeWatcherEnabled": true,
                    "nodeReconciliation": true,
                    "deploymentRateLimitPerSecond": 1
                  },
                  "muleLicense": null,
                  "proxy": {
                    "http_no_proxy": null,
                    "http_proxy": null,
                    "monitoring_proxy": null
                  },
                  "customLog4jEnabled": false
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
          createdAt: "2025-12-09T02:04:18Z"
          description: Runtime Fabric Operator Application from Mulesoft
          features.operators.openshift.io/disconnected: "false"
          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.properties: '[{"type": "olm.maxOpenShiftVersion", "value": "4.20"}]'
          operators.operatorframework.io/builder: operator-sdk-v1.42.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/mulesoft/rtf-ocp-operator
          support: MuleSoft
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              Runtime Fabric Operator from Mulesoft
              **Activation data**
              Used to install Runtime Fabric on a Kubernetes service. Copy this value from the Runtime Fabric setup page in Runtime Manager.
              **Registry URL**
              The registry from which to retrieve the images needed to install and run Runtime Fabric. If you're using a local registry, specify the URL here.
                * Default registry URLs:
                    - US control plane: rtf-runtime-registry.kprod.msap.io
                    - EU control plane: rtf-runtime-registry.kprod-eu.msap.io
              **Registry pull secret**
              Used to retrieve images from the registry. Change this value only if you did so during the operator installation.
              **Mule license key**
              Your company’s Mule license key. The key is not required during install, but it is required to deploy applications to Runtime Fabric. Must be Base64 encoded.
            displayName: Runtime Fabric
            kind: RuntimeFabric
            name: runtimefabrics.rtf.operators.mulesoft.com
            version: v1
        description: |-
          Anypoint Runtime Fabric is a container service that you install in your existing Red Hat OpenShift cluster that enables you to run Mule applications, composite APIs, and API gateways across any environment with centralized management via Anypoint Platform.
          Capabilities of Runtime Fabric include:
          * Isolation between applications by running a separate Mule runtime server per application.
          * Ability to run multiple versions of Mule runtime server on the same set of resources.
          * Scaling applications across multiple replicas.
          * Automated application fail-over.
          * Application management with Anypoint Runtime Manager.
          Runtime Fabric supports the following Red Hat OpenShift deployment options:
          * Red Hat OpenShift Service on AWS
          * Microsoft Azure Red Hat OpenShift
          * Red Hat OpenShift Dedicated
          * Red Hat OpenShift on IBM Cloud
          * Self-managed Red Hat OpenShift editions (Performance Plus, OCP, Kubernetes engine)
          Runtime Fabric supports Red Hat OpenShift versions 4.17 to 4.20.
        displayName: Runtime Fabric Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - operator
        - agent
        - rtf
        - runtime
        - fabric
        - mulesoft
        links:
        - name: Runtime Fabric Operator
          url: https://catalog.redhat.com/software/container-stacks/detail/62901512fefb1b137ba23946
        - name: Documentation
          url: https://docs.mulesoft.com/release-notes/runtime-fabric/runtime-fabric
        maintainers:
        - email: support@mulesoft.com
          name: Mulesoft
        maturity: stable
        provider:
          name: MuleSoft
          url: anypoint.mulesoft.com
        relatedImages:
        - quay.io/rtf/kube-rbac-proxy@sha256:a2523c532c0c3d51a5396a901d7ded23e402a9a1492c783aae27af6d0c1d2ec5
        - quay.io/rtf/runtime-fabric-operator@sha256:27c0958eea3b8f6431a1b335b04711f08cefaab84be1ade4fb99ae2899c7731f
        - registry.connect.redhat.com/rtf/runtime-fabric-operator@sha256:32476ca3c4943ac8b22ebacec7685402775d562576fbdd53e01ab42803967049
        version: 3.0.1
      entries:
      - name: runtime-fabric-operator.v3.0.1
        version: 3.0.1
      - name: runtime-fabric-operator.v2.11.50
        version: 2.11.50
      name: stable
    defaultChannel: stable
    packageName: runtime-fabric-operator
    provider:
      name: MuleSoft
      url: anypoint.mulesoft.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: https://stakater.com
    name: tenant-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tenant-operator.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-03-19T13:30:50Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.2.1
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.tenantoperator.stakater.com
            version: v1beta1
          - description: TemplateGroupInstance is the Schema for the templategroupinstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:fb7bc294096fa78f199d909f6ff8f7fcbcd771c3dc19f3f767d77dd13a2081a9
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:a899d60b31efd5cf2358efcd48737b1c4f4a0356ab6c0abe7a5f62ea825a52cd
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:a35b96eacb4e46114b39354f66429f8f05df09c55c98c9416b4ffa2768310ef7
        version: 1.2.1
      entries:
      - name: tenant-operator.v1.2.1
        version: 1.2.1
      name: release-1.2
    - currentCSV: tenant-operator.v1.3.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-06-11T15:25:04Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.3.0
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.tenantoperator.stakater.com
            version: v1beta1
          - description: TemplateGroupInstance is the Schema for the templategroupinstances
              API
            displayName: Template Group Instance
            kind: TemplateGroupInstance
            name: templategroupinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: TemplateInstance is the Schema for the templatesinstance
              API
            displayName: Template Instance
            kind: TemplateInstance
            name: templateinstances.tenantoperator.stakater.com
            version: v1alpha1
          - description: Template is the Schema for the templates API
            displayName: Template
            kind: Template
            name: templates.tenantoperator.stakater.com
            version: v1alpha1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:10e4bdca44a1a0cdef27b415765238249f81ae6ba53f94f992e37d350bc9f800
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:e88aa5b008ece406bca35ec22fdc87c842544049d613d4d81c8bc5dd2fb50812
        version: 1.3.0
      entries:
      - name: tenant-operator.v1.3.0
        version: 1.3.0
      name: release-1.3
    - currentCSV: tenant-operator.v1.4.2
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-09-08T08:14:28Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.4.2
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: ResourceSupervisor is the Schema for the resourcesupervisors
              API
            displayName: Resource Supervisor
            kind: ResourceSupervisor
            name: resourcesupervisors.tenantoperator.stakater.com
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:3e8aa02c71fc99e5eeabfce39c8fc24a9f9e8e826a58f9ff59c8b7c0e9c14e0d
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:7ee14c0974d1eda849d2c199a56786b0ae777ef6569085be917449f1998b1158
        version: 1.4.2
      entries:
      - name: tenant-operator.v1.4.2
        version: 1.4.2
      name: release-1.4
    - currentCSV: tenant-operator.v1.5.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-11-11T08:34:12Z"
          description: Stakater Multi-Tenancy Operator helps to solve the complexity
            issues of doing true multi-tenancy in Openshift by providing simplified
            abstractions on top of the native primitives to provide organizations
            and platform providers the tooling, self-service capabilities and robust
            automation needed to do secure and efficient Multi-Tenancy in a single
            OpenShift cluster. OpenShift is designed to support a single tenant platform,
            hence making it difficult for cluster admins to host multi-tenancy in
            a single OpenShift cluster. If multi-tenancy is achieved by sharing a
            cluster, it can have many advantages, e.g. efficient resource utilization,
            less configuration effort and easier sharing of cluster-internal resources
            among different tenants.
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <1.5.1
          operatorframework.io/suggested-namespace: multi-tenant-operator
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Extensions is the Schema for the extensions API
            displayName: Extensions
            kind: Extensions
            name: extensions.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationConfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1alpha1
          - description: IntegrationConfig is the Schema for the integrationconfigs
              API
            displayName: Integration Config
            kind: IntegrationConfig
            name: integrationconfigs.tenantoperator.stakater.com
            version: v1beta1
          - description: Quota is the Schema for the quotas API
            displayName: Quota
            kind: Quota
            name: quotas.tenantoperator.stakater.com
            version: v1beta1
          - description: Tenant is the Schema for the tenants API
            displayName: Tenant
            kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta2
          - kind: Tenant
            name: tenants.tenantoperator.stakater.com
            version: v1beta3
        description: |-
          OpenShift is designed to support a single tenant platform, hence making it difficult for cluster admins to host multi-tenancy in a single OpenShift cluster. If multi-tenancy is achieved by sharing a cluster, it can have many advantages, e.g. efficient resource utilization, less configuration effort and easier sharing of cluster-internal resources among different tenants. Multi Tenant Operator helps to solve the complexity issues of doing true multi-tenancy by providing simplified abstractions on top of the native primitives to provide organizations and platform providers the tooling, self-service capabilities and robust automation needed to do secure and efficient Multi-Tenancy in a single OpenShift cluster.

          ## Access Control

          Multi Tenant Operator provides several ClusterRoles that are automatically bound to the Tenants Namespaces used for managing access to the Namespaces and the resources they contain. You can also modify the default roles or create new roles to have full control and customize access control for your users and teams.

          ## Self-Service

          With Multi Tenant Operator, you can empower your users to safely provision namespaces for themselves and their teams (typically mapped to SSO groups). Team-owned namespaces and the resources inside of them count towards the team's quotas rather than the user's individual limits and are automatically shared with all team members according to the access rules you configure in tenant-operator.

          ## HashiCorp Vault Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to HashiCorp Vault where it can create vault paths and greatly ease the overhead of managing RBAC in Vault.

          ## ArgoCD Multitenancy

          Multi Tenant Operator is not only providing strong Multi-Tenancy for the OpenShift internals but also extends the tenant's permission model to ArgoCD where it can provision AppProjects and Allowed Repositories for your tenants greatly easing the overhead of managing RBAC in ArgoCD.

          ## Cost/Resource Optimization

          Multi Tenant Operator provides a mechanism for defining Resource Quotas at the tenant scope, meaning all namespaces belonging to a particular tenant share the defined quota, which is why you are able to safely enable dev teams to self-serve their namespaces whilst being confident that they can only use the resources allocated based on budget and business needs.

          ## Sandboxed Dev Namespaces

          Multi Tenant Operator can be configured to automatically provision a namespace for every member of the specific tenant, that will also be pre-loaded with any selected templates and consume the same pool of resources from the tenant's quota creating safe sandboxed dev namespaces that teams can use as a scratch namespace for rapid prototyping and development.
        displayName: Multi Tenant Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tenant
        - stakater
        - SRO
        links:
        - name: Stakater
          url: https://stakater.com
        - name: Multi Tenant Operator
          url: https://docs.stakater.com/mto/latest/index.html
        - name: Support
          url: https://docs.stakater.com/content/sre/support/support.html
        maturity: alpha
        provider:
          name: Stakater
          url: https://stakater.com
        relatedImages:
        - registry.connect.redhat.com/stakater/tenant-operator-0@sha256:8f840a8aef0827b7e66c743477c5380fbe47597e91c7c600eeb7fea5475f5676
        - registry.connect.redhat.com/stakater/tenant-operator@sha256:9f8d67e1b9401483714cfe1bb61504cdfae8efeab9c0e730a3983330c8095c16
        version: 1.5.1
      entries:
      - name: tenant-operator.v1.5.1
        version: 1.5.1
      name: release-1.5
    defaultChannel: release-1.5
    packageName: tenant-operator
    provider:
      name: Stakater
      url: https://stakater.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: EnterpriseDB Corporation
      provider-url: ""
    name: pg4k-pgd
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pg4k-pgd.v1.2.0-rc1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg-global-cluster:1.2.0-rc1@sha256:bff3aac2979b8cb9eeb0f1a107aa10400ff55564079d6879a8a9758ba20c4ace
          createdAt: "2025-12-18T07:38:31Z"
          description: EDB Postgres Distributed for Kubernetes is an operator designed
            to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both
            in a single Kubernetes cluster or across multiple ones.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: EnterpriseDB Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A cluster-wide catalog of PGD Group operand images
            displayName: Cluster Image Catalog
            kind: ClusterImageCatalog
            name: clusterimagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: A catalog of PGD Group operand images
            displayName: Image Catalog
            kind: ImageCatalog
            name: imagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: Object to clean up a PGD Group
            displayName: PGD Group Cleanup
            kind: PGDGroupCleanup
            name: pgdgroupcleanups.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: A group of Postgres Clusters
            displayName: PGD Group
            kind: PGDGroup
            name: pgdgroups.pgd.k8s.enterprisedb.io
            version: v1beta1
        description: |
          EDB Postgres Distributed for Kubernetes is an operator designed to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both in a single Kubernetes cluster or across multiple ones.

          EDB Postgres Distributed is an extension for PostgreSQL that provides multi-master replication and data distribution with advanced conflict management, data-loss protection, and throughput up to 5X faster than native logical replication. It enables distributed PostgreSQL clusters with high availability up to five 9s.

          This operator requires access to the EDB private repositories.
        displayName: EDB Postgres Distributed for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - distributed
        - postgres
        - database
        - sql
        - cloud
        - native
        - edb
        - enterprisedb
        - cnp
        - pg4k
        - pgd
        links:
        - name: 'Documentation: EDB Postgres Distributed v5'
          url: https://www.enterprisedb.com/docs/pgd/latest/
        - name: 'Documentation: EDB Postgres Distributed for Kubernetes'
          url: https://www.enterprisedb.com/docs/postgres_distributed_for_kubernetes/latest/
        maintainers:
        - email: sales@enterprisedb.com
          name: Sales
        - email: support@enterprisedb.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - docker.enterprisedb.com/k8s/edb-postgres-for-cloudnativepg-global-cluster@sha256:bff3aac2979b8cb9eeb0f1a107aa10400ff55564079d6879a8a9758ba20c4ace
        - registry.connect.redhat.com/enterprisedb/pg4k-pgd@sha256:8cf1cadef453cd8dd0a0bfaa3e3dd6a0d741f86ad42fbb9ac574420445274ab5
        version: 1.2.0-rc1
      entries:
      - name: pg4k-pgd.v1.2.0-rc1
        version: 1.2.0-rc1
      name: candidate
    - currentCSV: pg4k-pgd.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pgd.k8s.enterprisedb.io/v1beta1",
                "kind": "PGDGroup",
                "metadata": {
                  "name": "region-a"
                },
                "spec": {
                  "backup": null,
                  "cnp": {
                    "storage": {
                      "size": "1Gi"
                    },
                    "walStorage": {
                      "size": "1Gi"
                    }
                  },
                  "connectivity": {
                    "dns": {
                      "additional": [
                        {
                          "domain": "alternate.domain"
                        },
                        {
                          "domain": "my.domain",
                          "hostSuffix": "-dc1"
                        }
                      ]
                    },
                    "tls": {
                      "clientCert": {
                        "caCertSecret": "client-ca-key-pair",
                        "certManager": {
                          "spec": {
                            "issuerRef": {
                              "group": "cert-manager.io",
                              "kind": "Issuer",
                              "name": "client-ca-issuer"
                            }
                          }
                        }
                      },
                      "mode": "verify-ca",
                      "serverCert": {
                        "caCertSecret": "server-ca-key-pair",
                        "certManager": {
                          "spec": {
                            "issuerRef": {
                              "group": "cert-manager.io",
                              "kind": "Issuer",
                              "name": "server-ca-issuer"
                            }
                          }
                        }
                      }
                    }
                  },
                  "instances": 2,
                  "pgd": {
                    "parentGroup": {
                      "create": true,
                      "name": "world"
                    }
                  },
                  "proxyInstances": 2,
                  "witness": {
                    "storage": {
                      "size": "1Gi"
                    },
                    "walStorage": {
                      "size": "1Gi"
                    }
                  },
                  "witnessInstances": 1
                }
              },
              {
                "apiVersion": "pgd.k8s.enterprisedb.io/v1beta1",
                "kind": "PGDGroupCleanup",
                "metadata": {
                  "name": "region-b-cleanup"
                },
                "spec": {
                  "executor": "region-a",
                  "target": "region-b"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.enterprisedb.com/k8s_enterprise_pgd/pg4k-pgd-openshift@sha256:5127d913011619d61fd06b27be3c709df2236a4b5c0254fa58632698d58b50fb
          createdAt: "2025-09-26T01:49:29Z"
          description: EDB Postgres Distributed for Kubernetes is an operator designed
            to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both
            in a single Kubernetes cluster or across multiple ones.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.40.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: EnterpriseDB Corporation
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ClusterImageCatalog
            name: clusterimagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - kind: ImageCatalog
            name: imagecatalogs.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: Object to clean up a PGD Group
            displayName: PGD Group Cleanup
            kind: PGDGroupCleanup
            name: pgdgroupcleanups.pgd.k8s.enterprisedb.io
            version: v1beta1
          - description: A group of Postgres Clusters
            displayName: PGD Group
            kind: PGDGroup
            name: pgdgroups.pgd.k8s.enterprisedb.io
            version: v1beta1
        description: |
          EDB Postgres Distributed for Kubernetes is an operator designed to manage EDB Postgres Distributed (PGD) v5 workloads on Kubernetes both in a single Kubernetes cluster or across multiple ones.

          EDB Postgres Distributed is an extension for PostgreSQL that provides multi-master replication and data distribution with advanced conflict management, data-loss protection, and throughput up to 5X faster than native logical replication. It enables distributed PostgreSQL clusters with high availability up to five 9s.

          This operator requires access to the EDB private repositories.
        displayName: EDB Postgres Distributed for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - postgresql
        - distributed
        - postgres
        - database
        - sql
        - cloud
        - native
        - edb
        - enterprisedb
        - cnp
        - pg4k
        - pgd
        links:
        - name: 'Documentation: EDB Postgres Distributed v5'
          url: https://www.enterprisedb.com/docs/pgd/latest/
        - name: 'Documentation: EDB Postgres Distributed for Kubernetes'
          url: https://www.enterprisedb.com/docs/postgres_distributed_for_kubernetes/latest/
        maintainers:
        - email: sales@enterprisedb.com
          name: Sales
        - email: support@enterprisedb.com
          name: Support
        maturity: alpha
        provider:
          name: EnterpriseDB Corporation
        relatedImages:
        - docker.enterprisedb.com/k8s_enterprise_pgd/pg4k-pgd-openshift@sha256:5127d913011619d61fd06b27be3c709df2236a4b5c0254fa58632698d58b50fb
        - registry.connect.redhat.com/enterprisedb/pg4k-pgd@sha256:fb206b95690e9604c41715369c69125a906b866dc35cfc5c63638ce7a4337fa2
        version: 1.1.3
      entries:
      - name: pg4k-pgd.v1.1.3
        version: 1.1.3
      - name: pg4k-pgd.v1.1.2
        version: 1.1.2
      - name: pg4k-pgd.v1.1.1
        version: 1.1.1
      - name: pg4k-pgd.v1.1.0
        version: 1.1.0
      - name: pg4k-pgd.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: stable
    packageName: pg4k-pgd
    provider:
      name: EnterpriseDB Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ApeCloud
      provider-url: https://apecloud.com
    name: kubeblocks
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kubeblocks.v1.0.1
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Auto Pilot
          categories: Database
          certified: "true"
          containerImage: docker.io/apecloud/kubeblocks@sha256:44c546d7a0b3894f7a144aaf27e2690c76e3310cd8907c37b23bc2eb28a9763f
          createdAt: "2025-10-31T02:47:13Z"
          description: KubeBlocks is an open-source control plane that runs and manages
            databases, message queues and other stateful applications on K8s.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/apecloud/kubeblocks
          support: ApeCloud
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: ActionSet
            name: actionsets.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: Addon
            name: addons.extensions.kubeblocks.io
            version: v1alpha1
          - kind: BackupPolicy
            name: backuppolicies.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: BackupPolicyTemplate
            name: backuppolicytemplates.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: BackupRepo
            name: backuprepos.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: Backup
            name: backups.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: BackupSchedule
            name: backupschedules.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: ClusterDefinition
            name: clusterdefinitions.apps.kubeblocks.io
            version: v1
          - kind: Cluster
            name: clusters.apps.kubeblocks.io
            version: v1
          - kind: ComponentDefinition
            name: componentdefinitions.apps.kubeblocks.io
            version: v1
          - kind: ComponentParameter
            name: componentparameters.parameters.kubeblocks.io
            version: v1alpha1
          - kind: Component
            name: components.apps.kubeblocks.io
            version: v1
          - kind: ComponentVersion
            name: componentversions.apps.kubeblocks.io
            version: v1
          - kind: ConfigConstraint
            name: configconstraints.apps.kubeblocks.io
            version: v1beta1
          - kind: InstanceSet
            name: instancesets.workloads.kubeblocks.io
            version: v1
          - kind: NodeCountScaler
            name: nodecountscalers.experimental.kubeblocks.io
            version: v1alpha1
          - kind: OpsDefinition
            name: opsdefinitions.operations.kubeblocks.io
            version: v1alpha1
          - kind: OpsRequest
            name: opsrequests.operations.kubeblocks.io
            version: v1alpha1
          - kind: ParamConfigRenderer
            name: paramconfigrenderers.parameters.kubeblocks.io
            version: v1alpha1
          - kind: Parameter
            name: parameters.parameters.kubeblocks.io
            version: v1alpha1
          - kind: ParametersDefinition
            name: parametersdefinitions.parameters.kubeblocks.io
            version: v1alpha1
          - kind: ReconciliationTrace
            name: reconciliationtraces.trace.kubeblocks.io
            version: v1
          - kind: Restore
            name: restores.dataprotection.kubeblocks.io
            version: v1alpha1
          - kind: ServiceDescriptor
            name: servicedescriptors.apps.kubeblocks.io
            version: v1
          - kind: ShardingDefinition
            name: shardingdefinitions.apps.kubeblocks.io
            version: v1
          - kind: SidecarDefinition
            name: sidecardefinitions.apps.kubeblocks.io
            version: v1
          - kind: StorageProvider
            name: storageproviders.dataprotection.kubeblocks.io
            version: v1alpha1
        description: KubeBlocks is an open-source control plane that runs and manages
          databases, message queues and other stateful applications on K8s.
        displayName: KubeBlocks
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - kubeblocks
        - database
        - mysql
        - postgresql
        - redis
        - mongodb
        - kafka
        - sql
        links:
        - name: Documentation
          url: https://kubeblocks.io
        - name: GitHub
          url: https://github.com/apecloud/kubeblocks
        - name: Slack Community
          url: https://kubeblocks.slack.com
        maintainers:
        - email: kubeblocks@apecloud.com
          name: KubeBlocks Team
        maturity: stable
        minKubeVersion: 1.22.0
        provider:
          name: ApeCloud
          url: https://apecloud.com
        relatedImages:
        - docker.io/apecloud/kubeblocks@sha256:44c546d7a0b3894f7a144aaf27e2690c76e3310cd8907c37b23bc2eb28a9763f
        - registry.connect.redhat.com/apecloud/kubeblocks@sha256:84d3657b75820b61750dcb91137e88d3f3c64c0e8fcf137ec271555bfaf62f15
        version: 1.0.1
      entries:
      - name: kubeblocks.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: stable
    packageName: kubeblocks
    provider:
      name: ApeCloud
      url: https://apecloud.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Stakater
      provider-url: ""
    name: mto-dependencies-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mto-dependencies-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "Dex",
                "metadata": {
                  "name": "dex-sample"
                },
                "spec": {
                  "affinity": {},
                  "autoscaling": {
                    "enabled": false,
                    "maxReplicas": 100,
                    "minReplicas": 1,
                    "targetCPUUtilizationPercentage": 80
                  },
                  "commonLabels": {},
                  "config": {},
                  "configSecret": {
                    "create": true,
                    "name": ""
                  },
                  "deploymentAnnotations": {},
                  "deploymentLabels": {},
                  "env": {},
                  "envFrom": [],
                  "envVars": [],
                  "fullnameOverride": "",
                  "grpc": {
                    "enabled": false
                  },
                  "hostAliases": [],
                  "https": {
                    "enabled": false
                  },
                  "image": {
                    "digest": "",
                    "pullPolicy": "IfNotPresent",
                    "repository": "ghcr.io/dexidp/dex",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "ingress": {
                    "annotations": {},
                    "className": "",
                    "enabled": false,
                    "hosts": [
                      {
                        "host": "chart-example.local",
                        "paths": [
                          {
                            "path": "/",
                            "pathType": "ImplementationSpecific"
                          }
                        ]
                      }
                    ],
                    "tls": []
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "egressRules": [],
                    "enabled": false
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podDisruptionBudget": {
                    "enabled": false,
                    "maxUnavailable": null,
                    "minAvailable": null
                  },
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": "",
                  "rbac": {
                    "create": true,
                    "createClusterScoped": true
                  },
                  "replicaCount": 1,
                  "resources": {},
                  "revisionHistoryLimit": 10,
                  "securityContext": {},
                  "service": {
                    "annotations": {},
                    "clusterIP": "",
                    "loadBalancerIP": "",
                    "ports": {
                      "grpc": {
                        "nodePort": null,
                        "port": 5557
                      },
                      "http": {
                        "nodePort": null,
                        "port": 5556
                      },
                      "https": {
                        "nodePort": null,
                        "port": 5554
                      }
                    },
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "create": true,
                    "name": ""
                  },
                  "serviceMonitor": {
                    "annotations": {},
                    "bearerTokenFile": null,
                    "enabled": false,
                    "honorLabels": false,
                    "interval": null,
                    "labels": {},
                    "metricRelabelings": [],
                    "namespace": "",
                    "path": "/metrics",
                    "relabelings": [],
                    "scheme": "",
                    "scrapeTimeout": null,
                    "tlsConfig": {}
                  },
                  "strategy": {},
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "volumeMounts": [],
                  "volumes": []
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "DexConfigOperator",
                "metadata": {
                  "name": "dexconfigoperator-sample"
                },
                "spec": {
                  "controllerManager": {
                    "manager": {
                      "args": [
                        "--metrics-bind-address=:8443",
                        "--leader-elect",
                        "--health-probe-bind-address=:8081"
                      ],
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        }
                      },
                      "env": {
                        "dexNamespace": "dex"
                      },
                      "image": {
                        "repository": "ghcr.io/stakater/public/dex-config-operator",
                        "tag": "v0.0.1"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "500m",
                          "memory": "128Mi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "64Mi"
                        }
                      }
                    },
                    "podSecurityContext": {
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "replicas": 1,
                    "serviceAccount": {
                      "annotations": {}
                    }
                  },
                  "kubernetesClusterDomain": "cluster.local",
                  "metricsService": {
                    "ports": [
                      {
                        "name": "https",
                        "port": 8443,
                        "protocol": "TCP",
                        "targetPort": 8443
                      }
                    ],
                    "type": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "FinOpsOperator",
                "metadata": {
                  "name": "finopsoperator-sample"
                },
                "spec": {
                  "controllerManager": {
                    "manager": {
                      "args": [
                        "--metrics-bind-address=:8443",
                        "--leader-elect",
                        "--health-probe-bind-address=:8081"
                      ],
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        }
                      },
                      "env": {
                        "opencostDeploymentName": "finops-operator-opencost",
                        "opencostDeploymentNamespace": "finops-operator-system",
                        "operatorImage": "registrypath/to/finops-operator:v0.1.14"
                      },
                      "image": {
                        "repository": "ghcr.io/stakater/finops-operator",
                        "tag": "v0.1.14"
                      }
                    },
                    "podSecurityContext": {
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "replicas": 1,
                    "serviceAccount": {
                      "annotations": {}
                    }
                  },
                  "finops-gateway": {
                    "finopsGatewayContainer": {
                      "env": {
                        "enableAuth": "true",
                        "mtoGatewayUrl": "https://mto-zain-gateway.apps.xy1462m7s.stakater.cloud",
                        "port": "8080"
                      }
                    },
                    "gateway": {
                      "finopsGatewayContainer": {
                        "containerSecurityContext": {},
                        "env": {
                          "enableAuth": "false",
                          "mtoGatewayUrl": "",
                          "port": "8080"
                        },
                        "image": {
                          "repository": "ghcr.io/stakater/finops-gateway",
                          "tag": "v0.1.12"
                        }
                      },
                      "nodeSelector": {},
                      "replicas": 1,
                      "tolerations": [],
                      "topologySpreadConstraints": []
                    },
                    "global": {},
                    "imagePullSecrets": [],
                    "kubernetesClusterDomain": "cluster.local",
                    "service": {
                      "ports": [
                        {
                          "name": "http",
                          "port": 8080,
                          "targetPort": 8080
                        }
                      ],
                      "type": "ClusterIP"
                    }
                  },
                  "kubernetesClusterDomain": "cluster.local",
                  "metricsService": {
                    "ports": [
                      {
                        "name": "https",
                        "port": 8443,
                        "protocol": "TCP",
                        "targetPort": 8443
                      }
                    ],
                    "type": "ClusterIP"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "KubeStateMetrics",
                "metadata": {
                  "name": "kubestatemetrics-sample"
                },
                "spec": {
                  "affinity": {},
                  "annotations": {},
                  "automountServiceAccountToken": true,
                  "autosharding": {
                    "enabled": false
                  },
                  "collectors": [
                    "certificatesigningrequests",
                    "configmaps",
                    "cronjobs",
                    "daemonsets",
                    "deployments",
                    "endpoints",
                    "horizontalpodautoscalers",
                    "ingresses",
                    "jobs",
                    "leases",
                    "limitranges",
                    "mutatingwebhookconfigurations",
                    "namespaces",
                    "networkpolicies",
                    "nodes",
                    "persistentvolumeclaims",
                    "persistentvolumes",
                    "poddisruptionbudgets",
                    "pods",
                    "replicasets",
                    "replicationcontrollers",
                    "resourcequotas",
                    "secrets",
                    "services",
                    "statefulsets",
                    "storageclasses",
                    "validatingwebhookconfigurations",
                    "volumeattachments"
                  ],
                  "containerSecurityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                      "drop": [
                        "ALL"
                      ]
                    },
                    "readOnlyRootFilesystem": true
                  },
                  "containers": [],
                  "customLabels": {},
                  "customResourceState": {
                    "config": {},
                    "create": true,
                    "enabled": false,
                    "key": "config.yaml",
                    "name": ""
                  },
                  "dnsConfig": {},
                  "dnsPolicy": "ClusterFirst",
                  "env": [],
                  "extraArgs": [],
                  "extraManifests": [],
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": ""
                  },
                  "hostNetwork": false,
                  "image": {
                    "pullPolicy": "IfNotPresent",
                    "registry": "registry.k8s.io",
                    "repository": "kube-state-metrics/kube-state-metrics",
                    "sha": "",
                    "tag": ""
                  },
                  "imagePullSecrets": [],
                  "initContainers": [],
                  "kubeRBACProxy": {
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true
                    },
                    "enabled": false,
                    "extraArgs": [],
                    "ignoreProbePaths": true,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "registry": "quay.io",
                      "repository": "brancz/kube-rbac-proxy",
                      "sha": "",
                      "tag": "v0.19.1"
                    },
                    "proxyEndpointsPort": 8888,
                    "resources": {},
                    "volumeMounts": []
                  },
                  "kubeconfig": {
                    "enabled": false,
                    "secret": null
                  },
                  "labels": {},
                  "livenessProbe": {
                    "failureThreshold": 3,
                    "httpGet": {
                      "httpHeaders": [],
                      "scheme": "http"
                    },
                    "initialDelaySeconds": 5,
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 5
                  },
                  "metricAllowlist": [],
                  "metricAnnotationsAllowList": [],
                  "metricDenylist": [],
                  "metricLabelsAllowlist": [],
                  "namespaceOverride": "",
                  "namespaces": "",
                  "namespacesDenylist": "",
                  "networkPolicy": {
                    "enabled": false,
                    "flavor": "kubernetes"
                  },
                  "nodeSelector": {},
                  "podAnnotations": {},
                  "podDisruptionBudget": {},
                  "podLabels": {},
                  "prometheus": {
                    "monitor": {
                      "additionalLabels": {},
                      "annotations": {},
                      "enabled": false,
                      "http": {
                        "bearerTokenFile": "",
                        "bearerTokenSecret": {},
                        "enableHttp2": false,
                        "honorLabels": false,
                        "interval": "",
                        "metricRelabelings": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "scheme": "",
                        "scrapeTimeout": "",
                        "tlsConfig": {}
                      },
                      "jobLabel": "",
                      "labelLimit": 0,
                      "labelNameLengthLimit": 0,
                      "labelValueLengthLimit": 0,
                      "metrics": {
                        "bearerTokenFile": "",
                        "bearerTokenSecret": {},
                        "enableHttp2": false,
                        "honorLabels": false,
                        "interval": "",
                        "metricRelabelings": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "scheme": "",
                        "scrapeTimeout": "",
                        "tlsConfig": {}
                      },
                      "namespace": "",
                      "namespaceSelector": [],
                      "podTargetLabels": [],
                      "sampleLimit": 0,
                      "selectorOverride": {},
                      "targetLabels": [],
                      "targetLimit": 0
                    },
                    "scrapeconfig": {
                      "additionalLabels": {},
                      "annotations": {},
                      "enableHttp2": false,
                      "enabled": false,
                      "honorLabels": true,
                      "jobName": "kube-state-metrics",
                      "labelLimit": 0,
                      "labelNameLengthLimit": 0,
                      "labelValueLengthLimit": 0,
                      "metricRelabelings": [],
                      "proxyUrl": "",
                      "relabelings": [],
                      "sampleLimit": 0,
                      "scheme": "",
                      "scrapeInterval": "",
                      "scrapeTimeout": "",
                      "staticConfigLabels": {},
                      "targetLimit": 0,
                      "tlsConfig": {}
                    }
                  },
                  "prometheusScrape": true,
                  "rbac": {
                    "create": true,
                    "extraRules": [],
                    "useClusterRole": true
                  },
                  "readinessProbe": {
                    "failureThreshold": 3,
                    "httpGet": {
                      "httpHeaders": [],
                      "scheme": "http"
                    },
                    "initialDelaySeconds": 5,
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 5
                  },
                  "releaseLabel": false,
                  "releaseNamespace": false,
                  "replicas": 1,
                  "resources": {},
                  "revisionHistoryLimit": 10,
                  "securityContext": {
                    "enabled": true,
                    "fsGroup": 65534,
                    "runAsGroup": 65534,
                    "runAsNonRoot": true,
                    "runAsUser": 65534,
                    "seccompProfile": {
                      "type": "RuntimeDefault"
                    }
                  },
                  "selectorOverride": {},
                  "selfMonitor": {
                    "enabled": false
                  },
                  "service": {
                    "annotations": {},
                    "clusterIP": "",
                    "ipDualStack": {
                      "enabled": false,
                      "ipFamilies": [
                        "IPv6",
                        "IPv4"
                      ],
                      "ipFamilyPolicy": "PreferDualStack"
                    },
                    "loadBalancerIP": "",
                    "loadBalancerSourceRanges": [],
                    "nodePort": 0,
                    "port": 8080,
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "imagePullSecrets": [],
                    "name": null
                  },
                  "startupProbe": {
                    "enabled": false,
                    "failureThreshold": 3,
                    "httpGet": {
                      "httpHeaders": [],
                      "scheme": "http"
                    },
                    "initialDelaySeconds": 0,
                    "periodSeconds": 10,
                    "successThreshold": 1,
                    "timeoutSeconds": 5
                  },
                  "tolerations": [],
                  "topologySpreadConstraints": [],
                  "verticalPodAutoscaler": {
                    "controlledResources": [],
                    "enabled": false,
                    "maxAllowed": {},
                    "minAllowed": {}
                  },
                  "volumeMounts": [],
                  "volumes": []
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "OpenCost",
                "metadata": {
                  "name": "opencost-sample"
                },
                "spec": {
                  "annotations": {},
                  "clusterName": "cluster.local",
                  "extraVolumes": [],
                  "fullnameOverride": "",
                  "imagePullSecrets": [],
                  "loglevel": "info",
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicies": {
                    "enabled": false,
                    "extraEgress": [],
                    "prometheus": {
                      "labels": {
                        "app.kubernetes.io/name": "prometheus"
                      },
                      "namespace": "prometheus-system",
                      "port": 9090
                    }
                  },
                  "opencost": {
                    "affinity": {},
                    "carbonCost": {
                      "enabled": false
                    },
                    "cloudCost": {
                      "enabled": false,
                      "monthToDateInterval": 6,
                      "queryWindowDays": 7,
                      "refreshRateHours": 6,
                      "runWindowDays": 3
                    },
                    "cloudIntegrationSecret": "",
                    "customPricing": {
                      "configPath": "/tmp/custom-config",
                      "configmapName": "custom-pricing-model",
                      "costModel": {
                        "CPU": 1.25,
                        "GPU": 0.95,
                        "RAM": 0.5,
                        "description": "Modified pricing configuration.",
                        "internetNetworkEgress": 0.12,
                        "regionNetworkEgress": 0.01,
                        "spotCPU": 0.006655,
                        "spotRAM": 0.000892,
                        "storage": 0.25,
                        "zoneNetworkEgress": 0.01
                      },
                      "createConfigmap": true,
                      "enabled": false,
                      "provider": "custom"
                    },
                    "exporter": {
                      "apiIngress": {
                        "annotations": {},
                        "enabled": false,
                        "hosts": [
                          {
                            "host": "example.local",
                            "paths": [
                              {
                                "path": "/",
                                "pathType": "Prefix"
                              }
                            ]
                          }
                        ],
                        "ingressClassName": "",
                        "servicePort": "http",
                        "tls": []
                      },
                      "apiPort": 9003,
                      "aws": {
                        "access_key_id": "",
                        "secret_access_key": ""
                      },
                      "cloudProviderApiKey": "",
                      "collectorDataSource": {
                        "enabled": false,
                        "networkPort": 3001,
                        "retention10m": 36,
                        "retention1d": 15,
                        "retention1h": 49,
                        "scrapeInterval": "30s"
                      },
                      "command": [],
                      "csv_path": "",
                      "defaultClusterId": "default-cluster",
                      "env": [],
                      "extraArgs": [],
                      "extraEnv": {},
                      "extraVolumeMounts": [],
                      "image": {
                        "fullImageName": null,
                        "pullPolicy": "IfNotPresent",
                        "registry": "ghcr.io",
                        "repository": "opencost/opencost",
                        "tag": "1.117.3@sha256:09fae89c4544ec2a891e2902e88ce3137d7032c6edbe0fd97441aaee7bdbea54"
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 10,
                        "path": "/healthz",
                        "periodSeconds": 20
                      },
                      "persistence": {
                        "accessMode": "",
                        "annotations": {},
                        "enabled": false,
                        "mountPath": "/mnt/export",
                        "size": "",
                        "storageClass": ""
                      },
                      "prometheusDataSource": {
                        "queryResolutionSeconds": 300
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 10,
                        "path": "/healthz",
                        "periodSeconds": 10
                      },
                      "replicas": 1,
                      "resources": {
                        "limits": {
                          "memory": "1Gi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "55Mi"
                        }
                      },
                      "securityContext": {},
                      "startupProbe": {
                        "enabled": true,
                        "failureThreshold": 30,
                        "initialDelaySeconds": 10,
                        "path": "/healthz",
                        "periodSeconds": 5
                      }
                    },
                    "extraContainers": [],
                    "metrics": {
                      "config": {
                        "configmapName": "custom-metrics",
                        "disabledMetrics": [],
                        "enabled": false
                      },
                      "kubeStateMetrics": {
                        "emitKsmV1Metrics": null,
                        "emitKsmV1MetricsOnly": null,
                        "emitNamespaceAnnotations": null,
                        "emitPodAnnotations": null
                      },
                      "serviceMonitor": {
                        "additionalLabels": {},
                        "enabled": false,
                        "extraEndpoints": [],
                        "honorLabels": true,
                        "metricRelabelings": [],
                        "namespace": "",
                        "relabelings": [],
                        "scheme": "http",
                        "scrapeInterval": "30s",
                        "scrapeTimeout": "10s",
                        "tlsConfig": {}
                      }
                    },
                    "nodeSelector": {},
                    "platforms": {
                      "openshift": {
                        "createMonitoringClusterRoleBinding": false,
                        "createMonitoringResourceReaderRoleBinding": false,
                        "enablePromAccess": false,
                        "enableSCC": false,
                        "enabled": false,
                        "monitoringServiceAccountName": "prometheus-k8s",
                        "monitoringServiceAccountNamespace": "openshift-monitoring"
                      }
                    },
                    "prometheus": {
                      "amp": {
                        "enabled": false,
                        "workspaceId": ""
                      },
                      "bearer_token": "",
                      "bearer_token_key": "DB_BEARER_TOKEN",
                      "existingSecretName": null,
                      "external": {
                        "enabled": false,
                        "url": "https://prometheus.example.com/prometheus"
                      },
                      "insecureSkipVerify": false,
                      "internal": {
                        "enabled": true,
                        "namespaceName": "prometheus-system",
                        "path": "",
                        "port": 80,
                        "scheme": "http",
                        "serviceName": "prometheus-server"
                      },
                      "kubeRBACProxy": false,
                      "password": "",
                      "password_key": "DB_BASIC_AUTH_PW",
                      "secret_name": null,
                      "thanos": {
                        "enabled": false,
                        "external": {
                          "enabled": false,
                          "url": "https://thanos-query.example.com/thanos"
                        },
                        "internal": {
                          "enabled": true,
                          "namespaceName": "opencost",
                          "port": 10901,
                          "scheme": "http",
                          "serviceName": "my-thanos-query"
                        },
                        "maxSourceResolution": "",
                        "queryOffset": ""
                      },
                      "username": "",
                      "username_key": "DB_BASIC_AUTH_USERNAME"
                    },
                    "retention1d": 15,
                    "retention1h": 49,
                    "sigV4Proxy": {
                      "extraEnv": null,
                      "host": "aps-workspaces.us-west-2.amazonaws.com",
                      "image": "public.ecr.aws/aws-observability/aws-sigv4-proxy@sha256:2768495a4e331852aa4f206ad728f5e65b2c8680715ae984d1580ca1029f8438",
                      "imagePullPolicy": "IfNotPresent",
                      "name": "aps",
                      "port": 8005,
                      "region": "us-west-2",
                      "resources": {},
                      "securityContext": {}
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "ui": {
                      "enabled": true,
                      "extraEnv": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "fullImageName": null,
                        "pullPolicy": "IfNotPresent",
                        "registry": "ghcr.io",
                        "repository": "opencost/opencost-ui",
                        "tag": "1.117.3@sha256:727b95405e8c749ddbaa3bd97b93d9c0e246faeb9be9d370dd93ae6b31cdb0c2"
                      },
                      "ingress": {
                        "annotations": {},
                        "enabled": false,
                        "hosts": [
                          {
                            "host": "example.local",
                            "paths": [
                              "/"
                            ]
                          }
                        ],
                        "ingressClassName": "",
                        "servicePort": "http-ui",
                        "tls": []
                      },
                      "livenessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 30,
                        "path": "/healthz",
                        "periodSeconds": 10
                      },
                      "readinessProbe": {
                        "enabled": true,
                        "failureThreshold": 3,
                        "initialDelaySeconds": 30,
                        "path": "/healthz",
                        "periodSeconds": 10
                      },
                      "resources": {
                        "limits": {
                          "memory": "1Gi"
                        },
                        "requests": {
                          "cpu": "10m",
                          "memory": "55Mi"
                        }
                      },
                      "route": {
                        "annotations": {},
                        "enabled": false,
                        "host": "example.local",
                        "path": null,
                        "targetPort": "http-ui",
                        "tls": []
                      },
                      "securityContext": {},
                      "uiPath": "/",
                      "uiPort": 9090,
                      "useDefaultFqdn": false,
                      "useIPv6": true
                    }
                  },
                  "pdb": {
                    "enabled": false,
                    "maxUnavailable": null,
                    "minAvailable": null
                  },
                  "plugins": {
                    "configs": null,
                    "enabled": false,
                    "folder": "/opt/opencost/plugin",
                    "install": {
                      "enabled": true,
                      "fullImageName": "curlimages/curl:latest",
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "runAsUser": 1000,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      }
                    }
                  },
                  "podAnnotations": {},
                  "podAutomountServiceAccountToken": true,
                  "podLabels": {},
                  "podSecurityContext": {},
                  "priorityClassName": null,
                  "rbac": {
                    "enabled": true
                  },
                  "secretAnnotations": {},
                  "service": {
                    "annotations": {},
                    "enabled": true,
                    "extraPorts": [],
                    "labels": {},
                    "loadBalancerSourceRanges": [],
                    "nodePort": {},
                    "type": "ClusterIP"
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "updateStrategy": {
                    "rollingUpdate": {
                      "maxSurge": 1,
                      "maxUnavailable": 1
                    },
                    "type": "RollingUpdate"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "Postgres",
                "metadata": {
                  "name": "postgres-sample"
                },
                "spec": {
                  "architecture": "standalone",
                  "audit": {
                    "clientMinMessages": "error",
                    "logConnections": false,
                    "logDisconnections": false,
                    "logHostname": false,
                    "logLinePrefix": "",
                    "logTimezone": "",
                    "pgAuditLog": "",
                    "pgAuditLogCatalog": "off"
                  },
                  "auth": {
                    "database": "",
                    "enablePostgresUser": true,
                    "existingSecret": "",
                    "password": "",
                    "postgresPassword": "",
                    "replicationPassword": "",
                    "replicationUsername": "repl_user",
                    "secretKeys": {
                      "adminPasswordKey": "postgres-password",
                      "replicationPasswordKey": "replication-password",
                      "userPasswordKey": "password"
                    },
                    "usePasswordFiles": true,
                    "username": ""
                  },
                  "backup": {
                    "cronjob": {
                      "annotations": {},
                      "command": [
                        "/bin/bash",
                        "-c",
                        "PGPASSWORD=\"${PGPASSWORD:-$(\u003c \"$PGPASSWORD_FILE\")}\" pg_dumpall --clean --if-exists --load-via-partition-root --quote-all-identifiers --no-password --file=\"${PGDUMP_DIR}/pg_dumpall-$(date '+%Y-%m-%d-%H-%M').pgdump\""
                      ],
                      "concurrencyPolicy": "Allow",
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "privileged": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 1001,
                        "runAsNonRoot": true,
                        "runAsUser": 1001,
                        "seLinuxOptions": {},
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "extraVolumeMounts": [],
                      "extraVolumes": [],
                      "failedJobsHistoryLimit": 1,
                      "labels": {},
                      "networkPolicy": {
                        "enabled": true
                      },
                      "nodeSelector": {},
                      "podSecurityContext": {
                        "enabled": true,
                        "fsGroup": 1001,
                        "fsGroupChangePolicy": "Always",
                        "supplementalGroups": [],
                        "sysctls": []
                      },
                      "resources": {},
                      "resourcesPreset": "nano",
                      "restartPolicy": "OnFailure",
                      "schedule": "@daily",
                      "startingDeadlineSeconds": "",
                      "storage": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "annotations": {},
                        "enabled": true,
                        "existingClaim": "",
                        "mountPath": "/backup/pgdump",
                        "resourcePolicy": "",
                        "size": "8Gi",
                        "storageClass": "",
                        "subPath": "",
                        "volumeClaimTemplates": {
                          "selector": {}
                        }
                      },
                      "successfulJobsHistoryLimit": 3,
                      "timeZone": "",
                      "tolerations": [],
                      "ttlSecondsAfterFinished": ""
                    },
                    "enabled": false
                  },
                  "clusterDomain": "cluster.local",
                  "common": {
                    "exampleValue": "common-chart",
                    "global": {
                      "compatibility": {
                        "openshift": {
                          "adaptSecurityContext": "auto"
                        }
                      },
                      "defaultStorageClass": "",
                      "imagePullSecrets": [],
                      "imageRegistry": "",
                      "postgresql": {
                        "auth": {
                          "database": "",
                          "existingSecret": "",
                          "password": "",
                          "postgresPassword": "",
                          "secretKeys": {
                            "adminPasswordKey": "",
                            "replicationPasswordKey": "",
                            "userPasswordKey": ""
                          },
                          "username": ""
                        },
                        "fullnameOverride": "",
                        "service": {
                          "ports": {
                            "postgresql": ""
                          }
                        }
                      },
                      "security": {
                        "allowInsecureImages": false
                      },
                      "storageClass": ""
                    }
                  },
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "containerPorts": {
                    "postgresql": 5432
                  },
                  "diagnosticMode": {
                    "args": [
                      "infinity"
                    ],
                    "command": [
                      "sleep"
                    ],
                    "enabled": false
                  },
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "global": {
                    "compatibility": {
                      "openshift": {
                        "adaptSecurityContext": "auto"
                      }
                    },
                    "defaultStorageClass": "",
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "auth": {
                        "database": "",
                        "existingSecret": "",
                        "password": "",
                        "postgresPassword": "",
                        "secretKeys": {
                          "adminPasswordKey": "",
                          "replicationPasswordKey": "",
                          "userPasswordKey": ""
                        },
                        "username": ""
                      },
                      "fullnameOverride": "",
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "security": {
                      "allowInsecureImages": false
                    },
                    "storageClass": ""
                  },
                  "image": {
                    "debug": false,
                    "digest": "",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [],
                    "registry": "docker.io",
                    "repository": "bitnami/postgresql",
                    "tag": "17.6.0-debian-12-r4"
                  },
                  "kubeVersion": "",
                  "ldap": {
                    "basedn": "",
                    "binddn": "",
                    "bindpw": "",
                    "enabled": false,
                    "port": "",
                    "prefix": "",
                    "scheme": "",
                    "searchAttribute": "",
                    "searchFilter": "",
                    "server": "",
                    "suffix": "",
                    "tls": {
                      "enabled": false
                    },
                    "uri": ""
                  },
                  "metrics": {
                    "collectors": {},
                    "containerPorts": {
                      "metrics": 9187
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customMetrics": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "enabled": false,
                    "extraEnvVars": [],
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/postgres-exporter",
                      "tag": "0.17.1-debian-12-r16"
                    },
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "prometheusRule": {
                      "enabled": false,
                      "labels": {},
                      "namespace": "",
                      "rules": []
                    },
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {},
                    "resourcesPreset": "nano",
                    "service": {
                      "annotations": {
                        "prometheus.io/port": "{{ .Values.metrics.service.ports.metrics }}",
                        "prometheus.io/scrape": "true"
                      },
                      "clusterIP": "",
                      "ports": {
                        "metrics": 9187
                      },
                      "sessionAffinity": "None"
                    },
                    "serviceMonitor": {
                      "enabled": false,
                      "honorLabels": false,
                      "interval": "",
                      "jobLabel": "",
                      "labels": {},
                      "metricRelabelings": [],
                      "namespace": "",
                      "relabelings": [],
                      "scrapeTimeout": "",
                      "selector": {}
                    },
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 15,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    }
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "passwordUpdateJob": {
                    "annotations": {},
                    "args": [],
                    "automountServiceAccountToken": false,
                    "backoffLimit": 10,
                    "command": [],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "enabled": false,
                    "extraCommands": "",
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "initContainers": [],
                    "podAnnotations": {},
                    "podLabels": {},
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 1001,
                      "fsGroupChangePolicy": "Always",
                      "supplementalGroups": [],
                      "sysctls": []
                    },
                    "previousPasswords": {
                      "existingSecret": "",
                      "password": "",
                      "postgresPassword": "",
                      "replicationPassword": ""
                    },
                    "resources": {},
                    "resourcesPreset": "micro"
                  },
                  "postgresqlDataDir": "/bitnami/postgresql/data",
                  "postgresqlSharedPreloadLibraries": "pgaudit",
                  "primary": {
                    "affinity": {},
                    "annotations": {},
                    "args": [],
                    "automountServiceAccountToken": false,
                    "command": [],
                    "configuration": "",
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "existingConfigmap": "",
                    "existingExtendedConfigmap": "",
                    "extendedConfiguration": "",
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraPodSpec": {},
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "hostIPC": false,
                    "hostNetwork": false,
                    "initContainers": [],
                    "initdb": {
                      "args": "",
                      "password": "",
                      "postgresqlWalDir": "",
                      "scripts": {},
                      "scriptsConfigMap": "",
                      "scriptsSecret": "",
                      "user": ""
                    },
                    "labels": {},
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "name": "primary",
                    "networkPolicy": {
                      "allowExternal": true,
                      "allowExternalEgress": true,
                      "enabled": true,
                      "extraEgress": [],
                      "extraIngress": [],
                      "ingressNSMatchLabels": {},
                      "ingressNSPodMatchLabels": {}
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "pdb": {
                      "create": true,
                      "maxUnavailable": "",
                      "minAvailable": ""
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "dataSource": {},
                      "enabled": true,
                      "existingClaim": "",
                      "labels": {},
                      "mountPath": "/bitnami/postgresql",
                      "selector": {},
                      "size": "8Gi",
                      "storageClass": "",
                      "subPath": "",
                      "volumeName": "data"
                    },
                    "persistentVolumeClaimRetentionPolicy": {
                      "enabled": false,
                      "whenDeleted": "Retain",
                      "whenScaled": "Retain"
                    },
                    "pgHbaConfiguration": "",
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {},
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 1001,
                      "fsGroupChangePolicy": "Always",
                      "supplementalGroups": [],
                      "sysctls": []
                    },
                    "preInitDb": {
                      "scripts": {},
                      "scriptsConfigMap": "",
                      "scriptsSecret": ""
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "resources": {},
                    "resourcesPreset": "nano",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "headless": {
                        "annotations": {}
                      },
                      "labels": {},
                      "loadBalancerClass": "",
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "postgresql": ""
                      },
                      "ports": {
                        "postgresql": 5432
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "standby": {
                      "enabled": false,
                      "primaryHost": "",
                      "primaryPort": ""
                    },
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 15,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "terminationGracePeriodSeconds": "",
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "rollingUpdate": {},
                      "type": "RollingUpdate"
                    }
                  },
                  "psp": {
                    "create": false
                  },
                  "rbac": {
                    "create": false,
                    "rules": []
                  },
                  "readReplicas": {
                    "affinity": {},
                    "annotations": {},
                    "args": [],
                    "automountServiceAccountToken": false,
                    "command": [],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "privileged": false,
                      "readOnlyRootFilesystem": true,
                      "runAsGroup": 1001,
                      "runAsNonRoot": true,
                      "runAsUser": 1001,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "customLivenessProbe": {},
                    "customReadinessProbe": {},
                    "customStartupProbe": {},
                    "extendedConfiguration": "",
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraPodSpec": {},
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "hostIPC": false,
                    "hostNetwork": false,
                    "initContainers": [],
                    "labels": {},
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "name": "read",
                    "networkPolicy": {
                      "allowExternal": true,
                      "allowExternalEgress": true,
                      "enabled": true,
                      "extraEgress": [],
                      "extraIngress": [],
                      "ingressNSMatchLabels": {},
                      "ingressNSPodMatchLabels": {}
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "pdb": {
                      "create": true,
                      "maxUnavailable": "",
                      "minAvailable": ""
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "dataSource": {},
                      "enabled": true,
                      "existingClaim": "",
                      "labels": {},
                      "mountPath": "/bitnami/postgresql",
                      "selector": {},
                      "size": "8Gi",
                      "storageClass": "",
                      "subPath": ""
                    },
                    "persistentVolumeClaimRetentionPolicy": {
                      "enabled": false,
                      "whenDeleted": "Retain",
                      "whenScaled": "Retain"
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {},
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 1001,
                      "fsGroupChangePolicy": "Always",
                      "supplementalGroups": [],
                      "sysctls": []
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 6,
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "nano",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "headless": {
                        "annotations": {}
                      },
                      "labels": {},
                      "loadBalancerClass": "",
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "postgresql": ""
                      },
                      "ports": {
                        "postgresql": 5432
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 15,
                      "initialDelaySeconds": 30,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "terminationGracePeriodSeconds": "",
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "rollingUpdate": {},
                      "type": "RollingUpdate"
                    }
                  },
                  "replication": {
                    "applicationName": "my_application",
                    "numSynchronousReplicas": 0,
                    "synchronousCommit": "off"
                  },
                  "secretAnnotations": {},
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": false,
                    "create": true,
                    "name": ""
                  },
                  "serviceBindings": {
                    "enabled": false
                  },
                  "shmVolume": {
                    "enabled": true,
                    "sizeLimit": ""
                  },
                  "tls": {
                    "autoGenerated": false,
                    "certCAFilename": "",
                    "certFilename": "",
                    "certKeyFilename": "",
                    "certificatesSecret": "",
                    "crlFilename": "",
                    "enabled": false,
                    "preferServerCiphers": true
                  },
                  "volumePermissions": {
                    "containerSecurityContext": {
                      "runAsGroup": 0,
                      "runAsNonRoot": false,
                      "runAsUser": 0,
                      "seLinuxOptions": {},
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "enabled": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "bitnami/os-shell",
                      "tag": "12-debian-12-r51"
                    },
                    "resources": {},
                    "resourcesPreset": "nano"
                  }
                }
              },
              {
                "apiVersion": "dependencies.tenantoperator.stakater.com/v1alpha1",
                "kind": "Prometheus",
                "metadata": {
                  "name": "prometheus-sample"
                },
                "spec": {
                  "alertRelabelConfigs": {},
                  "alertmanager": {
                    "additionalPeers": [],
                    "affinity": {},
                    "automountServiceAccountToken": true,
                    "baseURL": "",
                    "command": [],
                    "config": {
                      "enabled": true,
                      "global": {},
                      "receivers": [
                        {
                          "name": "default-receiver"
                        }
                      ],
                      "route": {
                        "group_interval": "5m",
                        "group_wait": "10s",
                        "receiver": "default-receiver",
                        "repeat_interval": "3h"
                      },
                      "templates": [
                        "/etc/alertmanager/*.tmpl"
                      ]
                    },
                    "configAnnotations": {},
                    "configmapReload": {
                      "enabled": false,
                      "extraArgs": {},
                      "extraEnv": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                        "tag": "v0.85.0"
                      },
                      "livenessProbe": {},
                      "name": "configmap-reload",
                      "readinessProbe": {},
                      "resources": {},
                      "securityContext": {}
                    },
                    "containerPortName": "http",
                    "dnsConfig": {},
                    "enabled": true,
                    "extraArgs": {},
                    "extraContainers": [],
                    "extraEnv": [],
                    "extraInitContainers": [],
                    "extraPodConfigs": {},
                    "extraSecretMounts": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {},
                    "hostAliases": [],
                    "hostUsers": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "repository": "quay.io/prometheus/alertmanager",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "ingress": {
                      "annotations": {},
                      "className": "",
                      "enabled": false,
                      "hosts": [
                        {
                          "host": "alertmanager.domain.com",
                          "paths": [
                            {
                              "path": "/",
                              "pathType": "ImplementationSpecific"
                            }
                          ]
                        }
                      ],
                      "labels": {},
                      "tls": []
                    },
                    "ingressPerReplica": {
                      "annotations": {},
                      "className": "",
                      "enabled": false,
                      "hostDomain": "domain.com",
                      "hostPrefix": "alertmanager",
                      "labels": {},
                      "pathType": "ImplementationSpecific",
                      "paths": [
                        "/"
                      ],
                      "tlsSecretName": "",
                      "tlsSecretPerReplica": {
                        "enabled": false,
                        "prefix": "alertmanager"
                      }
                    },
                    "livenessProbe": {
                      "httpGet": {
                        "path": "/",
                        "port": "http"
                      }
                    },
                    "minReadySeconds": 0,
                    "nameOverride": "",
                    "namespaceOverride": "",
                    "nodeSelector": {},
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "emptyDir": {},
                      "enabled": true,
                      "labels": {},
                      "size": "2Gi"
                    },
                    "podAnnotations": {},
                    "podAntiAffinity": "",
                    "podAntiAffinityTopologyKey": "kubernetes.io/hostname",
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "podSecurityContext": {
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "httpGet": {
                        "path": "/",
                        "port": "http"
                      }
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "revisionHistoryLimit": 10,
                    "schedulerName": "",
                    "securityContext": {
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "annotations": {},
                      "clusterPort": 9094,
                      "extraPorts": [],
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "labels": {},
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "port": 9093,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    },
                    "servicePerReplica": {
                      "annotations": {},
                      "enabled": false,
                      "externalTrafficPolicy": "Cluster",
                      "loadBalancerSourceRanges": [],
                      "type": "ClusterIP"
                    },
                    "statefulSet": {
                      "annotations": {}
                    },
                    "templates": {},
                    "testFramework": {
                      "annotations": {
                        "helm.sh/hook": "test-success"
                      },
                      "enabled": false
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "verticalPodAutoscaler": {
                      "enabled": false
                    }
                  },
                  "commonMetaLabels": {},
                  "configmapReload": {
                    "env": [],
                    "prometheus": {
                      "containerPort": 8080,
                      "containerPortName": "metrics",
                      "containerSecurityContext": {},
                      "enabled": true,
                      "extraArgs": {},
                      "extraConfigmapMounts": [],
                      "extraVolumeDirs": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "repository": "quay.io/prometheus-operator/prometheus-config-reloader",
                        "tag": "v0.85.0"
                      },
                      "livenessProbe": {
                        "httpGet": {
                          "path": "/healthz",
                          "port": "metrics",
                          "scheme": "HTTP"
                        },
                        "initialDelaySeconds": 2,
                        "periodSeconds": 10
                      },
                      "name": "configmap-reload",
                      "readinessProbe": {
                        "httpGet": {
                          "path": "/healthz",
                          "port": "metrics",
                          "scheme": "HTTP"
                        },
                        "periodSeconds": 10
                      },
                      "resources": {},
                      "startupProbe": {
                        "enabled": false,
                        "httpGet": {
                          "path": "/healthz",
                          "port": "metrics",
                          "scheme": "HTTP"
                        },
                        "periodSeconds": 10
                      }
                    },
                    "reloadUrl": ""
                  },
                  "extraManifests": [],
                  "extraScrapeConfigs": "",
                  "forceNamespace": "",
                  "imagePullSecrets": [],
                  "kube-state-metrics": {
                    "affinity": {},
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "autosharding": {
                      "enabled": false
                    },
                    "collectors": [
                      "certificatesigningrequests",
                      "configmaps",
                      "cronjobs",
                      "daemonsets",
                      "deployments",
                      "endpoints",
                      "horizontalpodautoscalers",
                      "ingresses",
                      "jobs",
                      "leases",
                      "limitranges",
                      "mutatingwebhookconfigurations",
                      "namespaces",
                      "networkpolicies",
                      "nodes",
                      "persistentvolumeclaims",
                      "persistentvolumes",
                      "poddisruptionbudgets",
                      "pods",
                      "replicasets",
                      "replicationcontrollers",
                      "resourcequotas",
                      "secrets",
                      "services",
                      "statefulsets",
                      "storageclasses",
                      "validatingwebhookconfigurations",
                      "volumeattachments"
                    ],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true
                    },
                    "containers": [],
                    "customLabels": {},
                    "customResourceState": {
                      "config": {},
                      "create": true,
                      "enabled": false,
                      "key": "config.yaml",
                      "name": ""
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "ClusterFirst",
                    "enabled": true,
                    "env": [],
                    "extraArgs": [],
                    "extraManifests": [],
                    "global": {
                      "imagePullSecrets": [],
                      "imageRegistry": ""
                    },
                    "hostNetwork": false,
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "registry": "registry.k8s.io",
                      "repository": "kube-state-metrics/kube-state-metrics",
                      "sha": "",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "initContainers": [],
                    "kubeRBACProxy": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "readOnlyRootFilesystem": true
                      },
                      "enabled": false,
                      "extraArgs": [],
                      "ignoreProbePaths": true,
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "registry": "quay.io",
                        "repository": "brancz/kube-rbac-proxy",
                        "sha": "",
                        "tag": "v0.19.1"
                      },
                      "proxyEndpointsPort": 8888,
                      "resources": {},
                      "volumeMounts": []
                    },
                    "kubeconfig": {
                      "enabled": false,
                      "secret": null
                    },
                    "labels": {},
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "metricAllowlist": [],
                    "metricAnnotationsAllowList": [],
                    "metricDenylist": [],
                    "metricLabelsAllowlist": [],
                    "namespaceOverride": "",
                    "namespaces": "",
                    "namespacesDenylist": "",
                    "networkPolicy": {
                      "enabled": false,
                      "flavor": "kubernetes"
                    },
                    "nodeSelector": {},
                    "podAnnotations": {},
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "prometheus": {
                      "monitor": {
                        "additionalLabels": {},
                        "annotations": {},
                        "enabled": false,
                        "http": {
                          "bearerTokenFile": "",
                          "bearerTokenSecret": {},
                          "enableHttp2": false,
                          "honorLabels": false,
                          "interval": "",
                          "metricRelabelings": [],
                          "proxyUrl": "",
                          "relabelings": [],
                          "scheme": "",
                          "scrapeTimeout": "",
                          "tlsConfig": {}
                        },
                        "jobLabel": "",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metrics": {
                          "bearerTokenFile": "",
                          "bearerTokenSecret": {},
                          "enableHttp2": false,
                          "honorLabels": false,
                          "interval": "",
                          "metricRelabelings": [],
                          "proxyUrl": "",
                          "relabelings": [],
                          "scheme": "",
                          "scrapeTimeout": "",
                          "tlsConfig": {}
                        },
                        "namespace": "",
                        "namespaceSelector": [],
                        "podTargetLabels": [],
                        "sampleLimit": 0,
                        "selectorOverride": {},
                        "targetLabels": [],
                        "targetLimit": 0
                      },
                      "scrapeconfig": {
                        "additionalLabels": {},
                        "annotations": {},
                        "enableHttp2": false,
                        "enabled": false,
                        "honorLabels": true,
                        "jobName": "kube-state-metrics",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metricRelabelings": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "sampleLimit": 0,
                        "scheme": "",
                        "scrapeInterval": "",
                        "scrapeTimeout": "",
                        "staticConfigLabels": {},
                        "targetLimit": 0,
                        "tlsConfig": {}
                      }
                    },
                    "prometheusScrape": true,
                    "rbac": {
                      "create": true,
                      "extraRules": [],
                      "useClusterRole": true
                    },
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 5,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "releaseLabel": false,
                    "releaseNamespace": false,
                    "replicas": 1,
                    "resources": {},
                    "revisionHistoryLimit": 10,
                    "securityContext": {
                      "enabled": true,
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "selectorOverride": {},
                    "selfMonitor": {
                      "enabled": false
                    },
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePort": 0,
                      "port": 8080,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "automountServiceAccountToken": true,
                      "create": true,
                      "imagePullSecrets": [],
                      "name": null
                    },
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 0,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 5
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "verticalPodAutoscaler": {
                      "controlledResources": [],
                      "enabled": false,
                      "maxAllowed": {},
                      "minAllowed": {}
                    },
                    "volumeMounts": [],
                    "volumes": []
                  },
                  "networkPolicy": {
                    "enabled": false
                  },
                  "prometheus-node-exporter": {
                    "affinity": {},
                    "commonLabels": {},
                    "configmaps": [],
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "readOnlyRootFilesystem": true
                    },
                    "daemonsetAnnotations": {},
                    "dnsConfig": {},
                    "enabled": true,
                    "endpoints": [],
                    "env": {},
                    "extraArgs": [],
                    "extraHostVolumeMounts": [],
                    "extraInitContainers": [],
                    "extraManifests": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {
                      "imagePullSecrets": [],
                      "imageRegistry": ""
                    },
                    "hostIPC": false,
                    "hostNetwork": true,
                    "hostPID": true,
                    "hostProcFsMount": {
                      "mountPropagation": ""
                    },
                    "hostRootFsMount": {
                      "enabled": true,
                      "mountPropagation": "HostToContainer"
                    },
                    "hostSysFsMount": {
                      "mountPropagation": ""
                    },
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "registry": "quay.io",
                      "repository": "prometheus/node-exporter",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "kubeRBACProxy": {
                      "containerSecurityContext": {},
                      "enableHostPort": false,
                      "enableProxyEndpointsHostPort": false,
                      "enabled": false,
                      "env": {},
                      "extraArgs": [],
                      "extraVolumeMounts": [],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "registry": "quay.io",
                        "repository": "brancz/kube-rbac-proxy",
                        "sha": "",
                        "tag": "v0.20.0"
                      },
                      "port": 8100,
                      "portName": "http",
                      "proxyEndpointsPort": 8888,
                      "resources": {},
                      "tls": {
                        "enabled": false,
                        "tlsClientAuth": false
                      }
                    },
                    "livenessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 0,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "nameOverride": "",
                    "namespaceOverride": "",
                    "networkPolicy": {
                      "enabled": false
                    },
                    "nodeSelector": {
                      "kubernetes.io/os": "linux"
                    },
                    "podAnnotations": {
                      "cluster-autoscaler.kubernetes.io/safe-to-evict": "true"
                    },
                    "podLabels": {},
                    "prometheus": {
                      "monitor": {
                        "additionalLabels": {},
                        "apiVersion": "",
                        "attachMetadata": {
                          "node": false
                        },
                        "basicAuth": {},
                        "bearerTokenFile": null,
                        "enabled": false,
                        "interval": "",
                        "jobLabel": "",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metricRelabelings": [],
                        "namespace": "",
                        "podTargetLabels": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "sampleLimit": 0,
                        "scheme": "http",
                        "scrapeTimeout": "10s",
                        "selectorOverride": {},
                        "targetLabels": [],
                        "targetLimit": 0,
                        "tlsConfig": {}
                      },
                      "podMonitor": {
                        "additionalLabels": {},
                        "apiVersion": "",
                        "attachMetadata": {
                          "node": false
                        },
                        "authorization": {},
                        "basicAuth": {},
                        "bearerTokenSecret": {},
                        "enableHttp2": "",
                        "enabled": false,
                        "filterRunning": "",
                        "followRedirects": "",
                        "honorLabels": true,
                        "honorTimestamps": true,
                        "interval": "",
                        "jobLabel": "",
                        "labelLimit": 0,
                        "labelNameLengthLimit": 0,
                        "labelValueLengthLimit": 0,
                        "metricRelabelings": [],
                        "namespace": "",
                        "oauth2": {},
                        "params": {},
                        "path": "/metrics",
                        "podTargetLabels": [],
                        "proxyUrl": "",
                        "relabelings": [],
                        "sampleLimit": 0,
                        "scheme": "http",
                        "scrapeTimeout": "",
                        "selectorOverride": {},
                        "targetLimit": 0,
                        "tlsConfig": {}
                      }
                    },
                    "rbac": {
                      "create": true,
                      "pspEnabled": false
                    },
                    "readinessProbe": {
                      "failureThreshold": 3,
                      "httpGet": {
                        "httpHeaders": [],
                        "scheme": "http"
                      },
                      "initialDelaySeconds": 0,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 1
                    },
                    "releaseLabel": false,
                    "resources": {},
                    "restartPolicy": null,
                    "revisionHistoryLimit": 10,
                    "secrets": [],
                    "securityContext": {
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "annotations": {
                        "prometheus.io/scrape": "true"
                      },
                      "clusterIP": "",
                      "enabled": true,
                      "externalTrafficPolicy": "",
                      "internalTrafficPolicy": "",
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "labels": {},
                      "listenOnAllInterfaces": true,
                      "nodePort": null,
                      "port": 9100,
                      "portName": "metrics",
                      "servicePort": "",
                      "targetPort": 9100,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "annotations": {},
                      "automountServiceAccountToken": false,
                      "create": true,
                      "imagePullSecrets": [],
                      "name": null
                    },
                    "sidecarHostVolumeMounts": [],
                    "sidecarVolumeMount": [],
                    "sidecars": [],
                    "terminationGracePeriodSeconds": null,
                    "terminationMessageParams": {
                      "enabled": false,
                      "terminationMessagePath": "/dev/termination-log",
                      "terminationMessagePolicy": "File"
                    },
                    "tlsSecret": {
                      "caItem": "",
                      "certItem": "tls.crt",
                      "enabled": false,
                      "keyItem": "tls.key",
                      "secretName": "prometheus-node-exporter-tls",
                      "volumeName": "prometheus-node-exporter-tls"
                    },
                    "tolerations": [
                      {
                        "effect": "NoSchedule",
                        "operator": "Exists"
                      }
                    ],
                    "updateStrategy": {
                      "rollingUpdate": {
                        "maxUnavailable": 1
                      },
                      "type": "RollingUpdate"
                    },
                    "version": "",
                    "verticalPodAutoscaler": {
                      "controlledResources": [],
                      "enabled": false,
                      "maxAllowed": {},
                      "minAllowed": {}
                    }
                  },
                  "prometheus-pushgateway": {
                    "affinity": {},
                    "automountServiceAccountToken": true,
                    "containerSecurityContext": {},
                    "deploymentAnnotations": {},
                    "enabled": true,
                    "extraArgs": [],
                    "extraContainers": [],
                    "extraInitContainers": [],
                    "extraManifests": [],
                    "extraVars": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {
                      "imagePullSecrets": [],
                      "imageRegistry": ""
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "registry": "",
                      "repository": "quay.io/prometheus/pushgateway",
                      "tag": ""
                    },
                    "imagePullSecrets": [],
                    "ingress": {
                      "className": "",
                      "enabled": false,
                      "extraPaths": [],
                      "path": "/",
                      "pathType": "ImplementationSpecific"
                    },
                    "lifecycle": {},
                    "liveness": {
                      "enabled": true,
                      "probe": {
                        "httpGet": {
                          "path": "/-/healthy",
                          "port": 9091
                        },
                        "initialDelaySeconds": 10,
                        "timeoutSeconds": 10
                      }
                    },
                    "nameOverride": "",
                    "namespaceOverride": "",
                    "networkPolicy": {},
                    "nodeSelector": {},
                    "persistentVolume": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "enabled": false,
                      "existingClaim": "",
                      "mountPath": "/data",
                      "size": "2Gi",
                      "subPath": ""
                    },
                    "persistentVolumeLabels": {},
                    "podAnnotations": {},
                    "podAntiAffinity": "",
                    "podAntiAffinityTopologyKey": "kubernetes.io/hostname",
                    "podDisruptionBudget": {},
                    "podLabels": {},
                    "priorityClassName": null,
                    "readiness": {
                      "enabled": true,
                      "probe": {
                        "httpGet": {
                          "path": "/-/ready",
                          "port": 9091
                        },
                        "initialDelaySeconds": 10,
                        "timeoutSeconds": 10
                      }
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "runAsStatefulSet": false,
                    "securityContext": {
                      "fsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "clusterIP": "",
                      "ipDualStack": {
                        "enabled": false,
                        "ipFamilies": [
                          "IPv6",
                          "IPv4"
                        ],
                        "ipFamilyPolicy": "PreferDualStack"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "port": 9091,
                      "portName": "http",
                      "targetPort": 9091,
                      "type": "ClusterIP"
                    },
                    "serviceAccount": {
                      "create": true,
                      "name": null
                    },
                    "serviceAccountLabels": {},
                    "serviceAnnotations": {
                      "prometheus.io/probe": "pushgateway"
                    },
                    "serviceLabels": {},
                    "serviceMonitor": {
                      "additionalLabels": {},
                      "basicAuth": {},
                      "bearerTokenFile": "",
                      "enabled": false,
                      "honorLabels": true,
                      "interval": "",
                      "metricRelabelings": [],
                      "namespace": "monitoring",
                      "relabelings": [],
                      "scheme": "",
                      "scrapeTimeout": "",
                      "telemetryPath": "/metrics",
                      "tlsConfig": {}
                    },
                    "strategy": {
                      "type": "Recreate"
                    },
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "webConfiguration": {}
                  },
                  "rbac": {
                    "create": true
                  },
                  "ruleFiles": {},
                  "scrapeConfigFiles": [],
                  "server": {
                    "affinity": {},
                    "alertmanagers": [],
                    "baseURL": "",
                    "clusterRoleNameOverride": "",
                    "command": [],
                    "configFromSecret": "",
                    "configMapAnnotations": {},
                    "configMapOverrideName": "",
                    "configPath": "/etc/config/prometheus.yml",
                    "containerSecurityContext": {},
                    "daemonSet": {
                      "annotations": {},
                      "enabled": false,
                      "labels": {}
                    },
                    "defaultFlagsOverride": [],
                    "deploymentAnnotations": {},
                    "dnsConfig": {},
                    "dnsPolicy": "ClusterFirst",
                    "emptyDir": {
                      "medium": "",
                      "sizeLimit": ""
                    },
                    "enableServiceLinks": true,
                    "env": [],
                    "exemplars": {},
                    "extraArgs": {},
                    "extraConfigmapLabels": {},
                    "extraConfigmapMounts": [],
                    "extraFlags": [
                      "web.enable-lifecycle"
                    ],
                    "extraHostPathMounts": [],
                    "extraInitContainers": [],
                    "extraSecretMounts": [],
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "fullnameOverride": "",
                    "global": {
                      "evaluation_interval": "1m",
                      "scrape_interval": "1m",
                      "scrape_timeout": "10s"
                    },
                    "hostAliases": [],
                    "hostNetwork": false,
                    "image": {
                      "digest": "",
                      "pullPolicy": "IfNotPresent",
                      "repository": "quay.io/prometheus/prometheus",
                      "tag": ""
                    },
                    "ingress": {
                      "annotations": {},
                      "enabled": false,
                      "extraLabels": {},
                      "extraPaths": [],
                      "hosts": [],
                      "ingressClassName": "",
                      "path": "/",
                      "pathType": "Prefix",
                      "tls": []
                    },
                    "livenessProbeFailureThreshold": 3,
                    "livenessProbeInitialDelay": 30,
                    "livenessProbePeriodSeconds": 15,
                    "livenessProbeSuccessThreshold": 1,
                    "livenessProbeTimeout": 10,
                    "name": "server",
                    "nodeSelector": {},
                    "otlp": {},
                    "persistentVolume": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {},
                      "enabled": true,
                      "existingClaim": "",
                      "labels": {},
                      "mountPath": "/data",
                      "size": "8Gi",
                      "statefulSetNameOverride": "",
                      "subPath": ""
                    },
                    "podAnnotations": {},
                    "podAntiAffinity": "",
                    "podAntiAffinityTopologyKey": "kubernetes.io/hostname",
                    "podDisruptionBudget": {
                      "enabled": false
                    },
                    "podLabels": {},
                    "portName": "",
                    "prefixURL": "",
                    "priorityClassName": "",
                    "probeHeaders": [],
                    "probeScheme": "HTTP",
                    "readinessProbeFailureThreshold": 3,
                    "readinessProbeInitialDelay": 30,
                    "readinessProbePeriodSeconds": 5,
                    "readinessProbeSuccessThreshold": 1,
                    "readinessProbeTimeout": 4,
                    "releaseNamespace": false,
                    "remoteRead": [],
                    "remoteWrite": [],
                    "replicaCount": 1,
                    "resources": {},
                    "retention": "15d",
                    "retentionSize": "",
                    "revisionHistoryLimit": 10,
                    "route": {
                      "main": {
                        "additionalRules": [],
                        "annotations": {},
                        "apiVersion": "",
                        "enabled": false,
                        "filters": [],
                        "hostnames": [],
                        "httpsRedirect": false,
                        "kind": "",
                        "labels": {},
                        "matches": [
                          {
                            "path": {
                              "type": "PathPrefix",
                              "value": "/"
                            }
                          }
                        ],
                        "parentRefs": []
                      }
                    },
                    "runtimeClassName": "",
                    "securityContext": {
                      "fsGroup": 65534,
                      "runAsGroup": 65534,
                      "runAsNonRoot": true,
                      "runAsUser": 65534
                    },
                    "service": {
                      "additionalPorts": [],
                      "annotations": {},
                      "clusterIP": "",
                      "enabled": true,
                      "externalIPs": [],
                      "externalTrafficPolicy": "",
                      "gRPC": {
                        "enabled": false,
                        "servicePort": 10901
                      },
                      "labels": {},
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "servicePort": 80,
                      "sessionAffinity": "None",
                      "statefulsetReplica": {
                        "enabled": false,
                        "replica": 0
                      },
                      "type": "ClusterIP"
                    },
                    "sidecarContainers": {},
                    "sidecarTemplateValues": {},
                    "startupProbe": {
                      "enabled": false,
                      "failureThreshold": 30,
                      "periodSeconds": 5,
                      "timeoutSeconds": 10
                    },
                    "statefulSet": {
                      "annotations": {},
                      "enabled": false,
                      "headless": {
                        "annotations": {},
                        "gRPC": {
                          "enabled": false,
                          "servicePort": 10901
                        },
                        "labels": {},
                        "servicePort": 80
                      },
                      "labels": {},
                      "podManagementPolicy": "OrderedReady",
                      "pvcDeleteOnStsDelete": false,
                      "pvcDeleteOnStsScale": false
                    },
                    "storagePath": "",
                    "strategy": {
                      "type": "Recreate"
                    },
                    "tcpSocketProbeEnabled": false,
                    "terminationGracePeriodSeconds": 300,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "tsdb": {},
                    "verticalAutoscaler": {
                      "enabled": false
                    }
                  },
                  "serverFiles": {
                    "alerting_rules.yml": {},
                    "alerts": {},
                    "prometheus.yml": {
                      "rule_files": [
                        "/etc/config/recording_rules.yml",
                        "/etc/config/alerting_rules.yml",
                        "/etc/config/rules",
                        "/etc/config/alerts"
                      ],
                      "scrape_configs": [
                        {
                          "job_name": "prometheus",
                          "static_configs": [
                            {
                              "targets": [
                                "localhost:9090"
                              ]
                            }
                          ]
                        },
                        {
                          "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                          "job_name": "kubernetes-apiservers",
                          "kubernetes_sd_configs": [
                            {
                              "role": "endpoints"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": "default;kubernetes;https",
                              "source_labels": [
                                "__meta_kubernetes_namespace",
                                "__meta_kubernetes_service_name",
                                "__meta_kubernetes_endpoint_port_name"
                              ]
                            }
                          ],
                          "scheme": "https",
                          "tls_config": {
                            "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
                          }
                        },
                        {
                          "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                          "job_name": "kubernetes-nodes",
                          "kubernetes_sd_configs": [
                            {
                              "role": "node"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_node_label_(.+)"
                            },
                            {
                              "replacement": "kubernetes.default.svc:443",
                              "target_label": "__address__"
                            },
                            {
                              "regex": "(.+)",
                              "replacement": "/api/v1/nodes/$1/proxy/metrics",
                              "source_labels": [
                                "__meta_kubernetes_node_name"
                              ],
                              "target_label": "__metrics_path__"
                            }
                          ],
                          "scheme": "https",
                          "tls_config": {
                            "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
                          }
                        },
                        {
                          "bearer_token_file": "/var/run/secrets/kubernetes.io/serviceaccount/token",
                          "job_name": "kubernetes-nodes-cadvisor",
                          "kubernetes_sd_configs": [
                            {
                              "role": "node"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_node_label_(.+)"
                            },
                            {
                              "replacement": "kubernetes.default.svc:443",
                              "target_label": "__address__"
                            },
                            {
                              "regex": "(.+)",
                              "replacement": "/api/v1/nodes/$1/proxy/metrics/cadvisor",
                              "source_labels": [
                                "__meta_kubernetes_node_name"
                              ],
                              "target_label": "__metrics_path__"
                            }
                          ],
                          "scheme": "https",
                          "tls_config": {
                            "ca_file": "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
                          }
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-service-endpoints",
                          "kubernetes_sd_configs": [
                            {
                              "role": "endpoints"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scrape"
                              ]
                            },
                            {
                              "action": "drop",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+?)(?::\\d+)?;(\\d+)",
                              "replacement": "$1:$2",
                              "source_labels": [
                                "__address__",
                                "__meta_kubernetes_service_annotation_prometheus_io_port"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_service_name"
                              ],
                              "target_label": "service"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-service-endpoints-slow",
                          "kubernetes_sd_configs": [
                            {
                              "role": "endpoints"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+?)(?::\\d+)?;(\\d+)",
                              "replacement": "$1:$2",
                              "source_labels": [
                                "__address__",
                                "__meta_kubernetes_service_annotation_prometheus_io_port"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_service_name"
                              ],
                              "target_label": "service"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ],
                          "scrape_interval": "5m",
                          "scrape_timeout": "30s"
                        },
                        {
                          "honor_labels": true,
                          "job_name": "prometheus-pushgateway",
                          "kubernetes_sd_configs": [
                            {
                              "role": "service"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": "pushgateway",
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_probe"
                              ]
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-services",
                          "kubernetes_sd_configs": [
                            {
                              "role": "service"
                            }
                          ],
                          "metrics_path": "/probe",
                          "params": {
                            "module": [
                              "http_2xx"
                            ]
                          },
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_service_annotation_prometheus_io_probe"
                              ]
                            },
                            {
                              "source_labels": [
                                "__address__"
                              ],
                              "target_label": "__param_target"
                            },
                            {
                              "replacement": "blackbox",
                              "target_label": "__address__"
                            },
                            {
                              "source_labels": [
                                "__param_target"
                              ],
                              "target_label": "instance"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_service_label_(.+)"
                            },
                            {
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "source_labels": [
                                "__meta_kubernetes_service_name"
                              ],
                              "target_label": "service"
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-pods",
                          "kubernetes_sd_configs": [
                            {
                              "role": "pod"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scrape"
                              ]
                            },
                            {
                              "action": "drop",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);(([A-Fa-f0-9]{1,4}::?){1,7}[A-Fa-f0-9]{1,4})",
                              "replacement": "[$2]:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);((([0-9]+?)(\\.|$)){4})",
                              "replacement": "$2:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_name"
                              ],
                              "target_label": "pod"
                            },
                            {
                              "action": "drop",
                              "regex": "Pending|Succeeded|Failed|Completed",
                              "source_labels": [
                                "__meta_kubernetes_pod_phase"
                              ]
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ]
                        },
                        {
                          "honor_labels": true,
                          "job_name": "kubernetes-pods-slow",
                          "kubernetes_sd_configs": [
                            {
                              "role": "pod"
                            }
                          ],
                          "relabel_configs": [
                            {
                              "action": "keep",
                              "regex": true,
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scrape_slow"
                              ]
                            },
                            {
                              "action": "replace",
                              "regex": "(https?)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_scheme"
                              ],
                              "target_label": "__scheme__"
                            },
                            {
                              "action": "replace",
                              "regex": "(.+)",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_path"
                              ],
                              "target_label": "__metrics_path__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);(([A-Fa-f0-9]{1,4}::?){1,7}[A-Fa-f0-9]{1,4})",
                              "replacement": "[$2]:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "replace",
                              "regex": "(\\d+);((([0-9]+?)(\\.|$)){4})",
                              "replacement": "$2:$1",
                              "source_labels": [
                                "__meta_kubernetes_pod_annotation_prometheus_io_port",
                                "__meta_kubernetes_pod_ip"
                              ],
                              "target_label": "__address__"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_annotation_prometheus_io_param_(.+)",
                              "replacement": "__param_$1"
                            },
                            {
                              "action": "labelmap",
                              "regex": "__meta_kubernetes_pod_label_(.+)"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_namespace"
                              ],
                              "target_label": "namespace"
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_name"
                              ],
                              "target_label": "pod"
                            },
                            {
                              "action": "drop",
                              "regex": "Pending|Succeeded|Failed|Completed",
                              "source_labels": [
                                "__meta_kubernetes_pod_phase"
                              ]
                            },
                            {
                              "action": "replace",
                              "source_labels": [
                                "__meta_kubernetes_pod_node_name"
                              ],
                              "target_label": "node"
                            }
                          ],
                          "scrape_interval": "5m",
                          "scrape_timeout": "30s"
                        }
                      ]
                    },
                    "recording_rules.yml": {},
                    "rules": {}
                  },
                  "serviceAccounts": {
                    "server": {
                      "annotations": {},
                      "create": true,
                      "name": ""
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          createdAt: "2025-12-18T14:29:21Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: <0.0.2
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DexConfigOperator
            name: dexconfigoperators.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: Dex
            name: dexes.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: FinOpsOperator
            name: finopsoperators.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: KubeStateMetrics
            name: kubestatemetrics.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: OpenCost
            name: opencosts.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: Postgres
            name: postgres.dependencies.tenantoperator.stakater.com
            version: v1alpha1
          - kind: Prometheus
            name: prometheuses.dependencies.tenantoperator.stakater.com
            version: v1alpha1
        description: MTO Dependencies Operator packages the charts required by MTO
        displayName: MTO Dependencies Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Operator
        - Kubernetes
        - OpenShift
        - Helm
        links:
        - name: MTO Dependencies Operator
          url: https://mto-dependencies-operator.domain
        maturity: alpha
        provider:
          name: Stakater
        relatedImages:
        - registry.connect.redhat.com/stakater/mto-dependencies-operator@sha256:d83ff33721b852eb6849638586f84f863654978d3df316ed4d0a24ba3732fdaf
        - public.ecr.aws/aws-observability/aws-sigv4-proxy@sha256:2768495a4e331852aa4f206ad728f5e65b2c8680715ae984d1580ca1029f8438
        - registry.connect.redhat.com/stakater/mto-dependencies-operator-bundle@sha256:963008c21ebbfb4b35a399a4681260aa16f3e403d9f2d5d556e01f39265c2213
        version: 0.0.2
      entries:
      - name: mto-dependencies-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: mto-dependencies-operator
    provider:
      name: Stakater
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: ClusterPulse
      provider-url: ""
    name: clusterpulse
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clusterpulse.v0.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.clusterpulse.io/v1alpha1",
                "kind": "ClusterPulse",
                "metadata": {
                  "name": "clusterpulse-prod"
                },
                "spec": {
                  "api": {
                    "enabled": true,
                    "imagePullPolicy": "Always",
                    "logging": {
                      "json": true,
                      "level": "INFO"
                    },
                    "oauth": {
                      "enabled": true,
                      "headerEmail": "X-Forwarded-Email",
                      "headerUser": "X-Forwarded-User"
                    },
                    "rbac": {
                      "auditEnabled": true,
                      "cacheTTL": 0,
                      "defaultDeny": true,
                      "enabled": true,
                      "groupSyncInterval": 300
                    },
                    "replicas": 3,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    },
                    "security": {
                      "allowedOrigins": [
                        "*"
                      ],
                      "sessionExpireMinutes": 1440,
                      "trustedHosts": [
                        "*"
                      ]
                    },
                    "server": {
                      "host": "0.0.0.0",
                      "port": 8080,
                      "reload": false,
                      "workers": 1
                    }
                  },
                  "clusterEngine": {
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "1000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "256Mi"
                      }
                    },
                    "timing": {
                      "cacheTTL": "600",
                      "fullScanInterval": "300",
                      "reconciliationInterval": "30"
                    }
                  },
                  "frontend": {
                    "config": {
                      "enableAnonymousAccess": false,
                      "features": {
                        "devTools": false,
                        "mockData": false,
                        "nodeDetails": true,
                        "operatorDetails": true,
                        "registryStatus": true
                      },
                      "refreshInterval": 30000,
                      "theme": {
                        "defaultTheme": "auto"
                      }
                    },
                    "enabled": true,
                    "oauth": {
                      "enabled": true,
                      "image": "quay.io/openshift/origin-oauth-proxy:4.17"
                    },
                    "replicas": 3,
                    "route": {
                      "enabled": true,
                      "tls": {
                        "termination": "reencrypt"
                      }
                    }
                  },
                  "policyEngine": {
                    "batch": {
                      "cacheClearBatchSize": 500,
                      "redisPipelineBatchSize": 1000,
                      "redisScanBatchSize": 100
                    },
                    "cache": {
                      "groupCacheTTL": 300,
                      "policyCacheTTL": 300
                    },
                    "enabled": true,
                    "limits": {
                      "maxPoliciesPerUser": 100,
                      "policyValidationInterval": 300
                    },
                    "logging": {
                      "level": "INFO"
                    },
                    "replicas": 1,
                    "resources": {
                      "limits": {
                        "cpu": "500m",
                        "memory": "512Mi"
                      },
                      "requests": {
                        "cpu": "50m",
                        "memory": "128Mi"
                      }
                    }
                  },
                  "redis": {
                    "enabled": true,
                    "global": {
                      "compatibility": {
                        "openshift": {
                          "adaptSecurityContext": "force"
                        }
                      }
                    }
                  }
                }
              },
              {
                "apiVersion": "clusterpulse.io/v1alpha1",
                "kind": "ClusterConnection",
                "metadata": {
                  "name": "example-cluster"
                },
                "spec": {
                  "credentialsRef": {
                    "name": "cluster-credentials"
                  },
                  "displayName": "Example Production Cluster",
                  "endpoint": "https://api.example.openshift.com:6443",
                  "monitoring": {
                    "interval": 30,
                    "timeout": 10
                  }
                }
              },
              {
                "apiVersion": "clusterpulse.io/v1alpha1",
                "kind": "MonitorAccessPolicy",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "access": {
                    "effect": "Allow",
                    "enabled": true
                  },
                  "identity": {
                    "priority": 100,
                    "subjects": {
                      "groups": [
                        "default-group"
                      ],
                      "users": [
                        "default-user"
                      ]
                    }
                  },
                  "operations": {
                    "audit": {
                      "logAccess": false,
                      "requireReason": false
                    }
                  },
                  "scope": {
                    "clusters": {
                      "default": "none",
                      "rules": [
                        {
                          "permissions": {
                            "view": true,
                            "viewAuditInfo": true,
                            "viewCosts": true,
                            "viewMetadata": true,
                            "viewMetrics": true,
                            "viewSecrets": true,
                            "viewSensitive": true
                          },
                          "resources": {
                            "namespaces": {
                              "visibility": "all"
                            },
                            "nodes": {
                              "filters": {
                                "hideMasters": false
                              },
                              "visibility": "all"
                            },
                            "operators": {
                              "visibility": "none"
                            },
                            "pods": {
                              "visibility": "all"
                            }
                          },
                          "selector": {
                            "matchPattern": ".*"
                          }
                        }
                      ]
                    }
                  }
                }
              },
              {
                "apiVersion": "clusterpulse.io/v1alpha1",
                "kind": "RegistryConnection",
                "metadata": {
                  "name": "dockerhub",
                  "namespace": "clusterpulse"
                },
                "spec": {
                  "displayName": "Docker Hub",
                  "endpoint": "https://registry-1.docker.io",
                  "healthCheckPaths": [
                    "/v2/"
                  ],
                  "insecure": false,
                  "labels": {
                    "environment": "production",
                    "provider": "dockerhub"
                  },
                  "monitoring": {
                    "checkCatalog": false,
                    "interval": 60,
                    "maxCatalogEntries": 100,
                    "timeout": 10
                  },
                  "skipTLSVerify": false
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          containerImage: docker.io/clusterpulse/clusterpulse-operator:0.2.1
          createdAt: "2025-11-06T18:07:25Z"
          description: Provides OpenShift cluster health monitoring
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/ClusterPulse/operator
          support: None
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Defines a connection to a monitored Kubernetes/OpenShift
              cluster
            displayName: Cluster Connection
            kind: ClusterConnection
            name: clusterconnections.clusterpulse.io
            version: v1alpha1
          - description: Manages the deployment and configuration of ClusterPulse
              monitoring platform
            displayName: ClusterPulse Instance
            kind: ClusterPulse
            name: clusterpulses.charts.clusterpulse.io
            version: v1alpha1
          - description: Defines fine-grained access control policies for cluster
              monitoring
            displayName: Monitor Access Policy
            kind: MonitorAccessPolicy
            name: monitoraccesspolicies.clusterpulse.io
            version: v1alpha1
          - description: Defines a connection to a container registry for monitoring
            displayName: Registry Connection
            kind: RegistryConnection
            name: registryconnections.clusterpulse.io
            version: v1alpha1
        description: |
          ## About ClusterPulse
          ClusterPulse is a comprehensive multi-cluster monitoring and management platform designed for OpenShift environments. It provides centralized visibility, policy-based access control, and real-time monitoring across multiple clusters through a unified dashboard. For more information, visit [https://github.com/ClusterPulse/operator](https://github.com/ClusterPulse/operator).

          ## Features and Capabilities
          - **Multi-Cluster Monitoring**: Connect and monitor multiple OpenShift/Kubernetes clusters from a single interface
          - **Policy-Based Access Control**: Fine-grained access policies using MonitorAccessPolicy CRDs
          - **Real-Time Metrics**: Live cluster health, node status, and resource utilization tracking
          - **Registry Monitoring**: Monitor connected container registries
          - **OAuth Integration**: Seamless OpenShift OAuth integration for authentication
          - **Redis-Backed Storage**: Scalable data storage using Redis for metrics and state
        displayName: ClusterPulse
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - clusterpulse
        links:
        - name: ClusterPulse
          url: https://github.com/ClusterPulse/operator
        maintainers:
        - email: asmoore@redhat.com
          name: Asa Moore
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: ClusterPulse
        relatedImages:
        - docker.io/clusterpulse/clusterpulse-operator:0.2.1
        - quay.io/community-operator-pipeline-prod/clusterpulse:0.2.1
        version: 0.2.1
      entries:
      - name: clusterpulse.v0.2.1
        version: 0.2.1
      - name: clusterpulse.v0.2.0
        version: 0.2.0
      - name: clusterpulse.v0.1.1
        version: 0.1.1
      name: fast-v0
    defaultChannel: fast-v0
    packageName: clusterpulse
    provider:
      name: ClusterPulse
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-apigateway-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-apigateway-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "Resource",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "RestAPI",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "Stage",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "apigateway.services.k8s.aws/v1alpha1",
                "kind": "VPCLink",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/apigateway-controller:1.4.0
          createdAt: "2025-11-29T04:47:28Z"
          description: AWS API Gateway controller is a service controller for managing
            API Gateway resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: APIIntegrationResponse represents the state of an AWS apigateway
              APIIntegrationResponse resource.
            displayName: APIIntegrationResponse
            kind: APIIntegrationResponse
            name: apiintegrationresponses.apigateway.services.k8s.aws
            version: v1alpha1
          - description: APIKey represents the state of an AWS apigateway APIKey resource.
            displayName: APIKey
            kind: APIKey
            name: apikeys.apigateway.services.k8s.aws
            version: v1alpha1
          - description: APIMethodResponse represents the state of an AWS apigateway
              APIMethodResponse resource.
            displayName: APIMethodResponse
            kind: APIMethodResponse
            name: apimethodresponses.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Authorizer represents the state of an AWS apigateway Authorizer
              resource.
            displayName: Authorizer
            kind: Authorizer
            name: authorizers.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Deployment represents the state of an AWS apigateway Deployment
              resource.
            displayName: Deployment
            kind: Deployment
            name: deployments.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Integration represents the state of an AWS apigateway Integration
              resource.
            displayName: Integration
            kind: Integration
            name: integrations.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Method represents the state of an AWS apigateway Method resource.
            displayName: Method
            kind: Method
            name: methods.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Resource represents the state of an AWS apigateway Resource
              resource.
            displayName: Resource
            kind: Resource
            name: resources.apigateway.services.k8s.aws
            version: v1alpha1
          - description: RestAPI represents the state of an AWS apigateway RestAPI
              resource.
            displayName: RestAPI
            kind: RestAPI
            name: restapis.apigateway.services.k8s.aws
            version: v1alpha1
          - description: Stage represents the state of an AWS apigateway Stage resource.
            displayName: Stage
            kind: Stage
            name: stages.apigateway.services.k8s.aws
            version: v1alpha1
          - description: VPCLink represents the state of an AWS apigateway VPCLink
              resource.
            displayName: VPCLink
            kind: VPCLink
            name: vpclinks.apigateway.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon API Gateway resources in AWS from within your Kubernetes cluster.

          **About Amazon API Gateway**

          Amazon API Gateway is an AWS service for creating, publishing, maintaining, monitoring, and securing REST, HTTP, and WebSocket APIs at any scale. API developers can create APIs that access AWS or other web services, as well as data stored in the AWS Cloud. As an API Gateway API developer, you can create APIs for use in your own client applications. Or you can make your APIs available to third-party app developers.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon API Gateway
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apigateway
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon API Gateway Developer Resources
          url: https://aws.amazon.com/api-gateway/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: apigateway maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/apigateway-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-apigateway-controller@sha256:89027e21575cdcac32288b71085977492290e54a3e061b63b6ee6d4bf60cfd6c
        version: 1.4.0
      entries:
      - name: ack-apigateway-controller.v1.4.0
        version: 1.4.0
      - name: ack-apigateway-controller.v1.3.2
        version: 1.3.2
      - name: ack-apigateway-controller.v1.3.1
        version: 1.3.1
      - name: ack-apigateway-controller.v1.3.0
        version: 1.3.0
      - name: ack-apigateway-controller.v1.2.5
        version: 1.2.5
      - name: ack-apigateway-controller.v1.2.4
        version: 1.2.4
      - name: ack-apigateway-controller.v1.2.3
        version: 1.2.3
      - name: ack-apigateway-controller.v1.2.2
        version: 1.2.2
      - name: ack-apigateway-controller.v1.2.1
        version: 1.2.1
      - name: ack-apigateway-controller.v1.1.0
        version: 1.1.0
      - name: ack-apigateway-controller.v1.0.6
        version: 1.0.6
      - name: ack-apigateway-controller.v1.0.5
        version: 1.0.5
      - name: ack-apigateway-controller.v1.0.4
        version: 1.0.4
      - name: ack-apigateway-controller.v1.0.2
        version: 1.0.2
      - name: ack-apigateway-controller.v1.0.1
        version: 1.0.1
      - name: ack-apigateway-controller.v1.0.0
        version: 1.0.0
      - name: ack-apigateway-controller.v0.0.3
        version: 0.0.3
      - name: ack-apigateway-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-apigateway-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: servicemeshoperator3
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: servicemeshoperator3.v3.0.0-tp.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.24.1"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1alpha1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.24.1"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh-tech-preview/istio-rhel9-operator@sha256:f5dfe495ba92ecb880485b66cfafbf6451f8142b8e0d5fd7f29db94171c51336
          createdAt: "2024-12-12T10:28:38Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1alpha1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1alpha1
          - description: IstioRevisionTag references a Istio or IstioRevision object
              and serves as an alias for sidecar injection.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1alpha1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.openshift.com/container-platform/latest/service_mesh/v2x/servicemesh-release-notes.html)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-proxyv2-rhel9@sha256:c21481d6dae58b82dac93b1b47b9d9f53a30617fa9d930a0b5d075620cffa74b
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:0848d89e9f94be04f17beeee75807d7fd11102737e6483ee674f2cf3ae28f213
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-must-gather-rhel9@sha256:e3978aecaafe2678355e21a7303f8620f53d8b774f6592f10527c15bae957224
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-operator-bundle@sha256:f596dc9323da89f5e45e71192f0fa698b7bb29b8205eaa0fc1659d68fa7401f4
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-proxyv2-rhel9@sha256:cbd6bc47341ab8618609f89d063552e17232541c727429855c01deab73e4d06c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-rhel9-operator@sha256:f5dfe495ba92ecb880485b66cfafbf6451f8142b8e0d5fd7f29db94171c51336
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-must-gather-rhel9@sha256:2bf3704ba8d5945973ccf6bd13418457e929836352acf0ea6a47976ffa246616
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-pilot-rhel9@sha256:376f64eab0ebeb06035983a60d1e7647c5d41354f31a49cb34f4deb7b6708e3e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-pilot-rhel9@sha256:ea9372fabe06cd8e65ea7b4567ce3c8fbddd9d673dc34a12743fd95c548059d1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-cni-rhel9@sha256:d0ab36246c556249b6d67346eb0c72ebd22483a6502caa0fc75112a8d327b053
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-cni-rhel9@sha256:f16cd8a29ddcbb3de77cbfcf7e1da78e42cc0c1c502132d477a01c52689cdf23
        version: 3.0.0-tp.2
      entries:
      - name: servicemeshoperator3.v3.0.0-tp.2
        version: 3.0.0-tp.2
      - name: servicemeshoperator3.v3.0.0-tp.1
        version: 3.0.0-tp.1
      name: candidates
    - currentCSV: servicemeshoperator3.v3.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
          createdAt: "2025-11-26T08:45:22Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        version: 3.2.1
      entries:
      - name: servicemeshoperator3.v3.2.1
        version: 3.2.1
      - name: servicemeshoperator3.v3.2.0
        version: 3.2.0
      - name: servicemeshoperator3.v3.1.4
        version: 3.1.4
      - name: servicemeshoperator3.v3.1.3
        version: 3.1.3
      - name: servicemeshoperator3.v3.1.2
        version: 3.1.2
      - name: servicemeshoperator3.v3.1.1
        version: 3.1.1
      - name: servicemeshoperator3.v3.1.0
        version: 3.1.0
      - name: servicemeshoperator3.v3.0.7
        version: 3.0.7
      - name: servicemeshoperator3.v3.0.6
        version: 3.0.6
      - name: servicemeshoperator3.v3.0.5
        version: 3.0.5
      - name: servicemeshoperator3.v3.0.4
        version: 3.0.4
      - name: servicemeshoperator3.v3.0.3
        version: 3.0.3
      - name: servicemeshoperator3.v3.0.2
        version: 3.0.2
      - name: servicemeshoperator3.v3.0.1
        version: 3.0.1
      - name: servicemeshoperator3.v3.0.0
        version: 3.0.0
      name: stable
    - currentCSV: servicemeshoperator3.v3.0.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.24.6"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.24.6"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:e9d8d0b3b0602ffc570843ce78e5445a4fb540b57a2d066460fe77f1ace57ebd
          createdAt: "2025-10-24T06:24:59Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:6cdd4499ffcf0843dc9cf68a15654a995514e3f97418e6aa06bc50271305dcac
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:e9d8d0b3b0602ffc570843ce78e5445a4fb540b57a2d066460fe77f1ace57ebd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        version: 3.0.7
      entries:
      - name: servicemeshoperator3.v3.0.7
        version: 3.0.7
      - name: servicemeshoperator3.v3.0.6
        version: 3.0.6
      - name: servicemeshoperator3.v3.0.5
        version: 3.0.5
      - name: servicemeshoperator3.v3.0.4
        version: 3.0.4
      - name: servicemeshoperator3.v3.0.3
        version: 3.0.3
      - name: servicemeshoperator3.v3.0.2
        version: 3.0.2
      - name: servicemeshoperator3.v3.0.1
        version: 3.0.1
      - name: servicemeshoperator3.v3.0.0
        version: 3.0.0
      name: stable-3.0
    - currentCSV: servicemeshoperator3.v3.1.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.26.6"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.26.6"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:a60cff87a152304bc961ce7af4cc3f650998652640ef8599c50aeae2a3c15391
          createdAt: "2025-10-24T11:25:36Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:459720a287d839ad70886879d8089d821a2f98dcc32a5db5732ecf18a05b3fa6
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:a60cff87a152304bc961ce7af4cc3f650998652640ef8599c50aeae2a3c15391
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        version: 3.1.4
      entries:
      - name: servicemeshoperator3.v3.1.4
        version: 3.1.4
      - name: servicemeshoperator3.v3.1.3
        version: 3.1.3
      - name: servicemeshoperator3.v3.1.2
        version: 3.1.2
      - name: servicemeshoperator3.v3.1.1
        version: 3.1.1
      - name: servicemeshoperator3.v3.1.0
        version: 3.1.0
      name: stable-3.1
    - currentCSV: servicemeshoperator3.v3.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "Istio",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-system",
                  "updateStrategy": {
                    "inactiveRevisionDeletionGracePeriodSeconds": 30,
                    "type": "InPlace"
                  },
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "IstioCNI",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "istio-cni",
                  "version": "v1.27.3"
                }
              },
              {
                "apiVersion": "sailoperator.io/v1",
                "kind": "ZTunnel",
                "metadata": {
                  "name": "default"
                },
                "spec": {
                  "namespace": "ztunnel",
                  "version": "v1.27.3"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Integration & Delivery, Networking, Security
          containerImage: registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
          createdAt: "2025-11-26T08:45:22Z"
          description: The OpenShift Service Mesh Operator enables you to install,
            configure, and manage an instance of Red Hat OpenShift Service Mesh. OpenShift
            Service Mesh is based on the open source Istio project.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "true"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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"
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.41.1
          operators.operatorframework.io/internal-objects: '["wasmplugins.extensions.istio.io","destinationrules.networking.istio.io","envoyfilters.networking.istio.io","gateways.networking.istio.io","proxyconfigs.networking.istio.io","serviceentries.networking.istio.io","sidecars.networking.istio.io","virtualservices.networking.istio.io","workloadentries.networking.istio.io","workloadgroups.networking.istio.io","authorizationpolicies.security.istio.io","peerauthentications.security.istio.io","requestauthentications.security.istio.io","telemetries.telemetry.istio.io"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/istio-ecosystem/sail-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: WasmPlugin
            name: wasmplugins.extensions.istio.io
            version: v1alpha1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1alpha3
          - kind: DestinationRule
            name: destinationrules.networking.istio.io
            version: v1beta1
          - kind: EnvoyFilter
            name: envoyfilters.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1alpha3
          - kind: Gateway
            name: gateways.networking.istio.io
            version: v1beta1
          - kind: ProxyConfig
            name: proxyconfigs.networking.istio.io
            version: v1beta1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1alpha3
          - kind: ServiceEntry
            name: serviceentries.networking.istio.io
            version: v1beta1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1alpha3
          - kind: Sidecar
            name: sidecars.networking.istio.io
            version: v1beta1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1alpha3
          - kind: VirtualService
            name: virtualservices.networking.istio.io
            version: v1beta1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1alpha3
          - kind: WorkloadEntry
            name: workloadentries.networking.istio.io
            version: v1beta1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1alpha3
          - kind: WorkloadGroup
            name: workloadgroups.networking.istio.io
            version: v1beta1
          - kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1alpha1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1
          - kind: AuthorizationPolicy
            name: authorizationpolicies.security.istio.io
            version: v1beta1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1
          - kind: PeerAuthentication
            name: peerauthentications.security.istio.io
            version: v1beta1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1
          - kind: RequestAuthentication
            name: requestauthentications.security.istio.io
            version: v1beta1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1
          - kind: Telemetry
            name: telemetries.telemetry.istio.io
            version: v1alpha1
          - description: IstioCNI represents a deployment of the Istio CNI component.
            displayName: Istio CNI
            kind: IstioCNI
            name: istiocnis.sailoperator.io
            version: v1
          - description: |-
              IstioRevision represents a single revision of an Istio Service Mesh deployment.
              Users shouldn't create IstioRevision objects directly. Instead, they should
              create an Istio object and allow the operator to create the underlying
              IstioRevision object(s).
            displayName: Istio Revision
            kind: IstioRevision
            name: istiorevisions.sailoperator.io
            version: v1
          - description: IstioRevisionTag references an Istio or IstioRevision object
              and serves as an alias for sidecar injection. It can be used to manage
              stable revision tags without having to use istioctl or helm directly.
              See https://istio.io/latest/docs/setup/upgrade/canary/#stable-revision-labels
              for more information on the concept.
            displayName: Istio Revision Tag
            kind: IstioRevisionTag
            name: istiorevisiontags.sailoperator.io
            version: v1
          - description: |-
              Istio represents an Istio Service Mesh deployment consisting of one or more
              control plane instances (represented by one or more IstioRevision objects).
              To deploy an Istio Service Mesh, a user creates an Istio object with the
              desired Istio version and configuration. The operator then creates
              an IstioRevision object, which in turn creates the underlying Deployment
              objects for istiod and other control plane components, similar to how a
              Deployment object in Kubernetes creates ReplicaSets that create the Pods.
            displayName: Istio
            kind: Istio
            name: istios.sailoperator.io
            version: v1
          - description: ZTunnel represents a deployment of the Istio ztunnel component.
            displayName: ZTunnel
            kind: ZTunnel
            name: ztunnels.sailoperator.io
            version: v1
        description: |-
          Red Hat OpenShift Service Mesh is a platform that provides behavioral insight and operational control over a service mesh, providing a uniform way to connect, secure, and monitor microservice applications.

          ### Overview

          Red Hat OpenShift Service Mesh, based on the open source [Istio](https://istio.io/) project, adds a transparent layer on existing
          distributed applications without requiring any changes to the service code. You add Red Hat OpenShift Service Mesh
          support to services by deploying a special sidecar proxy throughout your environment that intercepts all network
          communication between microservices. You configure and manage the service mesh using the control plane features.

          Red Hat OpenShift Service Mesh provides an easy way to create a network of deployed services that provides discovery,
          load balancing, service-to-service authentication, failure recovery, metrics, and monitoring. A service mesh also
          provides more complex operational functionality, including A/B testing, canary releases, rate limiting, access
          control, and end-to-end authentication.

          ### Core Capabilities

          Red Hat OpenShift Service Mesh supports uniform application of a number of key capabilities across a network of services:

          + **Traffic Management** - Control the flow of traffic and API calls between services, make calls more reliable,
            and make the network more robust in the face of adverse conditions.

          + **Service Identity and Security** - Provide services in the mesh with a verifiable identity and provide the
            ability to protect service traffic as it flows over networks of varying degrees of trustworthiness.

          + **Policy Enforcement** - Apply organizational policy to the interaction between services, ensure access policies
            are enforced and resources are fairly distributed among consumers. Policy changes are made by configuring the
            mesh, not by changing application code.

          + **Telemetry** - Gain understanding of the dependencies between services and the nature and flow of traffic between
            them, providing the ability to quickly identify issues.

          ### More Information

          * [Documentation](https://docs.redhat.com/en/documentation/red_hat_openshift_service_mesh/latest/html/about/ossm-about-openshift-service-mesh)
          * [Bugs](https://issues.redhat.com/projects/OSSM)
        displayName: Red Hat OpenShift Service Mesh 3
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - servicemesh
        - envoy
        links:
        - name: Istio Project
          url: https://istio.io
        maintainers:
        - email: istio-feedback@redhat.com
          name: OpenShift Service Mesh Team
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:14c5a52faf20267baa43d9a72ee6416f56fbc41dd640adc2aba3c4043802a0e9
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:02b82941a92c537233c4f60d9223da2e637b045189b8700dd7030bd9c1c352d5
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:33feac0c9c888b375e207e86b3f9a1a289126ca46b64632a7f693e2191cfbbfd
        - registry.redhat.io/openshift-service-mesh/istio-rhel9-operator@sha256:656511cdb0683ff7e3336d4f41a672b4063b665e9e6e34d5370640103fd49365
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:366266f10e658c4cea86bddf6ee847e1908ea4dd780cb5f7fb0e466bac8995f1
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:cadc30c15a54d89de1992624a3641c7d5951dd292b668d026ab9d5e2f3878a77
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:836c53299b170a1ef0bc8ce958da2abe14a48b8d84f9298e7c6b3d940fa8a1cc
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:91229b8d6e932178ddddf0b4878114b65c0451755919996239d1fe6285b644e8
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:9536c5850961488b3e01e29140d9ace0cbaa1f4bd1c1860cb49d10bf0514a5bf
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f39e2c28ef36fce9f808f3946cc4e4126047e142ad84cb18c222cecceae29730
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:742bc084c26769ff57cb3aa47b7a35c2b94684c3f67a9388da07a0490a942e5c
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:f7ab868455b5e887e2d89b7078678531290365f9166cae99ce56119f31fa2ba4
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2ea112ab90b8540f11e9949d77c3e7e3b3ef57ac3bf23f6cf1e883a88430e1f9
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:36557fa4817c3d0bac499dc65a4a9d6673500681641943d2f8cec5bfec4355be
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:c018e5c2fe81d6b6577cbf32a9aa3f909c69c24ed411e4fa3fa7b4a891ce017e
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:d6693c31d6137c4219812cf69097d04654b296e0ab059dc48596a09b9cd124b1
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:892c857d7ea35e60e13a277f5ab1268a4068c316353403a2846f116235d52a7b
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:f592b91a6f28559abdf6546ff6c3ae70a44d8f811592746e9eb02cdb2e5dec9d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:0850242436e88f7d82f0f2126de064c7e0f09844f31d8ff0f53dc8d3908075d9
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:a020acb4a74040df03077924e10465454092f6c34a902b391fba55563c08f826
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:028e10651db0d1ddb769a27c9483c6d41be6ac597f253afd9d599f395d9c82d8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:d518f3d1539f45e1253c5c9fa22062802804601d4998cd50344e476a3cc388fe
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:be16b9a7e2693bf294c99d96ba4cf36e98629ebff2ce6f2ce946fd9ae1e9f2dc
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54cada48e5c9824f255f82daa2ef5bea236919e521d3ea49885f2883ced2b7bc
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:7ea9b82e192402566e69063a4787351be9f1ef50719bfd1a8f5d5940362b3f70
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:54508ddeb570a45b5576d4e128fc6f4114e3bb0ed8cf600f2bcbf80d8b4f6b8a
        - registry.redhat.io/openshift-service-mesh/istio-sail-operator-bundle@sha256:d64f524986bc5b1eef4888ff27b233a969b3129cc95aae638a2f882d70845fae
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:ddadd677161ad8c1077dd156821d6b4e32742ccbb210e9c14696fa66a58c0867
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7d15cebf9b62f3f235c0eab5158ac8ff2fda86a1d193490dc94c301402c99da8
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:17db00a219de14e5901b5a5eca64d3c6684ca74c1dba3ae3b03787c655fe9c80
        - registry.redhat.io/openshift-service-mesh/istio-ztunnel-rhel9@sha256:b2b3216a05f6136ed9ddb71d72d493030c6d6b431682dddffa692c760b6c9ba1
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:26747627ae22bbdffcf9de58077454fc0c890cda83659d7834b15dea2b5aaaf2
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:b45ecae5a9240b40403c4e39c6a81ab66c8c7e8de194dc3e21b1336ff3a0fa38
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:7fa655f5efb1175ff1e1c138371fc1233e5d4313c5feb07194428d0d1fdd33a3
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:ecc6a22a471f4f4b836648f3a72ea7f57a4ea960ebcbc7dbe3fe729500902d0b
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:2ca96716812d339775d3dfd396c863834dd3810720e98bfcf87bc67c5fbd29b5
        - registry.redhat.io/openshift-service-mesh/istio-proxyv2-rhel9@sha256:47100186c27934adeda3002bb04cac28980ca8854eee7d6e4f4b3f85562e9a8e
        - registry.redhat.io/openshift-service-mesh-tech-preview/istio-ztunnel-rhel9@sha256:950e9a2e8fef8740b4909957c2cced52d45abd66324fb056097f2d0782970573
        - registry.redhat.io/openshift-service-mesh/istio-cni-rhel9@sha256:2b60b0f33affda8b5b2cc30a4b09b2198b053fb1a914d386d35fcf03c09234e6
        - registry.redhat.io/openshift-service-mesh/istio-must-gather-rhel9@sha256:8a21e30593e51f2fd2e51d9ab1d0ed2fc43eaa9b98173d7fb74f799d6b2f163d
        - registry.redhat.io/openshift-service-mesh/istio-pilot-rhel9@sha256:87b967785d7cc222f9df9cb49f0373a9819bf67910ce523dc3b8345849e881dd
        - registry.redhat.io/openshift-service-mesh-dev-preview-beta/istio-ztunnel-rhel9@sha256:18897281e5ab5198506c4dd5cc0f5a96245794e6b33f63a2a4a3195bf23fbf60
        version: 3.2.1
      entries:
      - name: servicemeshoperator3.v3.2.1
        version: 3.2.1
      - name: servicemeshoperator3.v3.2.0
        version: 3.2.0
      name: stable-3.2
    defaultChannel: stable
    packageName: servicemeshoperator3
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Thales Group
      provider-url: https://cpl.thalesgroup.com/data-protection
    name: cte-k8s-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cte-k8s-operator.v1.7.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cte-k8s-operator.csi.cte.cpl.thalesgroup.com/v1",
                "kind": "CteK8sOperator",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cte-k8s-operator"
                  },
                  "name": "ctek8soperator-sample"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-25T21:01:30Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CteK8sOperator is the Schema for the ctek8soperators API
            displayName: Cte K8s Operator
            kind: CteK8sOperator
            name: ctek8soperators.cte-k8s-operator.csi.cte.cpl.thalesgroup.com
            version: v1
        description: |-
          # Kubernetes Operator to deploy CTE for Kubernetes on an OCP/K8s Cluster.
          This Operator deploys CTE for Kubernetes on the OCP/K8s Cluster.

          ## About this operator

          It is a GO based operator that manages the deployment, upgrade and
          deletion of the CTE for Kubernetes on all the nodes of the Cluster on
          which it is installed.

          ## Prerequisites

          Applicable only on OCP cluster
            For an OCP cluster the operator requires a SecurityContextConstraints (SCC)
            to be created before installation. To create the SecurityContextConstraints
            you can use a definition provided by the deployment scripts at
            https://github.com/thalescpl-io/ciphertrust-transparent-encryption-kubernetes

            Look for cte-csi-scc.yaml file in deploy/kubernetes/X.Y.Z/operator-deploy/
            Where X.Y.Z is the last released version of the deploy scripts.

          For more information refer to the guide at:
            https://thalesdocs.com/ctp/cte-con/cte-k8s/latest/cte-4-k8s/index.html
        displayName: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Encryption
        - Data Protection
        - Security
        - Kubernetes
        - Openshift
        links:
        - name: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          url: https://cpl.thalesgroup.com/encryption/ciphertrust-transparent-data-encryption-kubernetes
        maintainers:
        - email: technical.support.DIS@thalesgroup.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Thales Group
          url: https://cpl.thalesgroup.com/data-protection
        relatedImages:
        - registry.connect.redhat.com/thalescpl/ciphertrust-transparent-encryption-kubernetes-operator-bundle@sha256:129f3a9f1fe96aafbfa68eb1524bf912ebc4167ed276e87a88fad30b60a5b3fc
        - docker.io/thalesciphertrust/ciphertrust-transparent-encryption-kubernetes-operator@sha256:d30ff765703db69846f0302cb06aa5315641796d56342a9be4549fb171414871
        version: 1.7.8
      entries:
      - name: cte-k8s-operator.v1.7.8
        version: 1.7.8
      name: candidate
    - currentCSV: cte-k8s-operator.v1.7.8
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "cte-k8s-operator.csi.cte.cpl.thalesgroup.com/v1",
                "kind": "CteK8sOperator",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "cte-k8s-operator"
                  },
                  "name": "ctek8soperator-sample"
                },
                "spec": null
              }
            ]
          capabilities: Seamless Upgrades
          createdAt: "2025-12-25T21:01:30Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CteK8sOperator is the Schema for the ctek8soperators API
            displayName: Cte K8s Operator
            kind: CteK8sOperator
            name: ctek8soperators.cte-k8s-operator.csi.cte.cpl.thalesgroup.com
            version: v1
        description: |-
          # Kubernetes Operator to deploy CTE for Kubernetes on an OCP/K8s Cluster.
          This Operator deploys CTE for Kubernetes on the OCP/K8s Cluster.

          ## About this operator

          It is a GO based operator that manages the deployment, upgrade and
          deletion of the CTE for Kubernetes on all the nodes of the Cluster on
          which it is installed.

          ## Prerequisites

          Applicable only on OCP cluster
            For an OCP cluster the operator requires a SecurityContextConstraints (SCC)
            to be created before installation. To create the SecurityContextConstraints
            you can use a definition provided by the deployment scripts at
            https://github.com/thalescpl-io/ciphertrust-transparent-encryption-kubernetes

            Look for cte-csi-scc.yaml file in deploy/kubernetes/X.Y.Z/operator-deploy/
            Where X.Y.Z is the last released version of the deploy scripts.

          For more information refer to the guide at:
            https://thalesdocs.com/ctp/cte-con/cte-k8s/latest/cte-4-k8s/index.html
        displayName: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - Encryption
        - Data Protection
        - Security
        - Kubernetes
        - Openshift
        links:
        - name: Thales CipherTrust Transparent Encryption for Kubernetes (CTE-K8s)
          url: https://cpl.thalesgroup.com/encryption/ciphertrust-transparent-data-encryption-kubernetes
        maintainers:
        - email: technical.support.DIS@thalesgroup.com
          name: Support
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Thales Group
          url: https://cpl.thalesgroup.com/data-protection
        relatedImages:
        - docker.io/thalesciphertrust/ciphertrust-transparent-encryption-kubernetes-operator@sha256:d30ff765703db69846f0302cb06aa5315641796d56342a9be4549fb171414871
        - registry.connect.redhat.com/thalescpl/ciphertrust-transparent-encryption-kubernetes-operator-bundle@sha256:129f3a9f1fe96aafbfa68eb1524bf912ebc4167ed276e87a88fad30b60a5b3fc
        version: 1.7.8
      entries:
      - name: cte-k8s-operator.v1.7.8
        version: 1.7.8
      name: stable
    defaultChannel: stable
    packageName: cte-k8s-operator
    provider:
      name: Thales Group
      url: https://cpl.thalesgroup.com/data-protection
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ssm-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ssm-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ssm-controller:1.2.0
          createdAt: "2025-11-29T04:01:51Z"
          description: AWS SSM controller is a service controller for managing SSM
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Document represents the state of an AWS ssm Document resource.
            displayName: Document
            kind: Document
            name: documents.ssm.services.k8s.aws
            version: v1alpha1
          - description: PatchBaseline represents the state of an AWS ssm PatchBaseline
              resource.
            displayName: PatchBaseline
            kind: PatchBaseline
            name: patchbaselines.ssm.services.k8s.aws
            version: v1alpha1
          - description: ResourceDataSync represents the state of an AWS ssm ResourceDataSync
              resource.
            displayName: ResourceDataSync
            kind: ResourceDataSync
            name: resourcedatasyncs.ssm.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon SSM resources in AWS from within your Kubernetes cluster.

          **About Amazon SSM**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon SSM
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ssm
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SSM Developer Resources
          url: https://aws.amazon.com/SSM/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ssm maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ssm-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ssm-controller@sha256:0566dc14268fb3a49628364838fe8fd3548facbf97b1fea3dc23e8282ba9400f
        version: 1.2.0
      entries:
      - name: ack-ssm-controller.v1.2.0
        version: 1.2.0
      - name: ack-ssm-controller.v1.1.2
        version: 1.1.2
      - name: ack-ssm-controller.v1.1.1
        version: 1.1.1
      - name: ack-ssm-controller.v1.1.0
        version: 1.1.0
      - name: ack-ssm-controller.v1.0.12
        version: 1.0.12
      - name: ack-ssm-controller.v1.0.10
        version: 1.0.10
      - name: ack-ssm-controller.v1.0.9
        version: 1.0.9
      - name: ack-ssm-controller.v1.0.8
        version: 1.0.8
      - name: ack-ssm-controller.v1.0.7
        version: 1.0.7
      - name: ack-ssm-controller.v1.0.6
        version: 1.0.6
      - name: ack-ssm-controller.v1.0.5
        version: 1.0.5
      - name: ack-ssm-controller.v1.0.4
        version: 1.0.4
      - name: ack-ssm-controller.v1.0.3
        version: 1.0.3
      - name: ack-ssm-controller.v1.0.2
        version: 1.0.2
      - name: ack-ssm-controller.v1.0.1
        version: 1.0.1
      - name: ack-ssm-controller.v1.0.0
        version: 1.0.0
      - name: ack-ssm-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-ssm-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: istio-workspace-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: istio-workspace-operator.v0.5.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "workspace.maistra.io/v1alpha1",
                "kind": "Session",
                "metadata": {
                  "name": "session-sample"
                },
                "spec": {
                  "ref": [
                    {
                      "args": {
                        "image": "quay.io/maistra-dev/istio-workspace-test:latest"
                      },
                      "name": "ratings-v1",
                      "strategy": "prepared-image"
                    }
                  ],
                  "route": {
                    "name": "x-workspace-route",
                    "type": "header",
                    "value": "feature-x"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Developer Tools
          containerImage: quay.io/maistra/istio-workspace:v0.5.3
          createdAt: "2022-11-16T13:50:35Z"
          description: Safely develop and test on any Kubernetes cluster without affecting
            others.
          operators.operatorframework.io/builder: operator-sdk-v1.22.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/maistra/istio-workspace
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Session controls the creation of the specialized hidden routes.
            displayName: Session
            kind: Session
            name: sessions.workspace.maistra.io
            version: v1alpha1
        description: "Istio Workspace enables developers to:\n\n * run one or more
          services locally during development but make it appear like it would be
          developed in the actual cluster\n   * this way you can use your favourite
          development tools\n   * have instant feedback loop\n   * don't make your
          machine overheating trying to run the whole cluster locally\n * safely preview
          incoming changes in pull requests without affecting regular users \n * have
          confidence in testing or troubleshooting your services directly in the cluster\n\nIstio
          Workspace supports testing on multi-user environment in an unobtrusive way.\nIt
          doesn’t really matter if it is QE cluster or actual production. We give
          you confidence that your changes won’t blow up the cluster, and your users
          won’t even notice a glitch.\n\nYou will need [Kubernetes](https://k8s.io)
          or [Openshift](https://openshift.com) cluster with  [Istio](https://istio.io/)
          installed. \n\nYou can read more about our vision on [Red Hat Developer’s
          blog](https://developers.redhat.com/blog/2020/07/14/developing-and-testing-on-production-with-kubernetes-and-istio-workspace/)
          or ...\n\n## See it in action!\n\n[![https://youtu.be/XTNVadUzMCc](https://img.youtube.com/vi/XTNVadUzMCc/hqdefault.jpg)](https://youtu.be/XTNVadUzMCc)\n\nWatch
          demo: [\"How to develop on production: An introduction to Istio-Workspaces\"](https://youtu.be/XTNVadUzMCc).\n\n##
          Documentation\n\nMore details can be found on our [documentation page](https://istio-workspace-docs.netlify.com/).\n"
        displayName: Istio Workspace
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - istio
        - telepresence
        links:
        - name: Istio Workspace Documentation
          url: https://istio-workspace-docs.netlify.com/
        - name: How to install CLI tool
          url: https://github.com/maistra/istio-workspace#install-in-two-easy-steps
        maintainers:
        - email: aslak@redhat.com
          name: Aslak Knutsen
        - email: bartosz@redhat.com
          name: Bartosz Majsak
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - quay.io/openshift-community-operators/istio-workspace-operator@sha256:7a581f048aee64701b23f1a0e94d77f2e6932ee8229fd46b1635d8df6994e174
        - quay.io/maistra/istio-workspace:v0.5.3
        version: 0.5.3
      entries:
      - name: istio-workspace-operator.v0.5.3
        version: 0.5.3
      - name: istio-workspace-operator.v0.5.2
        version: 0.5.2
      - name: istio-workspace-operator.v0.5.1
        version: 0.5.1
      - name: istio-workspace-operator.v0.5.0
        version: 0.5.0
      - name: istio-workspace-operator.v0.4.0
        version: 0.4.0
      - name: istio-workspace-operator.v0.3.0
        version: 0.3.0
      - name: istio-workspace-operator.v0.2.0
        version: 0.2.0
      - name: istio-workspace-operator.v0.1.0
        version: 0.1.0
      - name: istio-workspace-operator.v0.0.10
        version: 0.0.10
      - name: istio-workspace-operator.v0.0.9
        version: 0.0.9
      - name: istio-workspace-operator.v0.0.8
        version: 0.0.8
      - name: istio-workspace-operator.v0.0.7
        version: 0.0.7
      - name: istio-workspace-operator.v0.0.6
        version: 0.0.6
      name: alpha
    defaultChannel: alpha
    packageName: istio-workspace-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Community of Practice
      provider-url: ""
    name: resource-locker-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: resource-locker-operator.v1.1.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "redhatcop.redhat.io/v1alpha1",
                "kind": "ResourceLocker",
                "metadata": {
                  "name": "combined"
                },
                "spec": {
                  "patches": [
                    {
                      "id": "patch1",
                      "patchTemplate": "metadata:\n  annotations:\n    {{ (index . 0).metadata.name }}: {{ (index . 1).metadata.name }}\n",
                      "patchType": "application/strategic-merge-patch+json",
                      "sourceObjectRefs": [
                        {
                          "apiVersion": "v1",
                          "kind": "Namespace",
                          "name": "resource-locker-test"
                        },
                        {
                          "apiVersion": "v1",
                          "kind": "ServiceAccount",
                          "name": "default",
                          "namespace": "resource-locker-test"
                        }
                      ],
                      "targetObjectRef": {
                        "apiVersion": "v1",
                        "kind": "ServiceAccount",
                        "name": "test",
                        "namespace": "resource-locker-test"
                      }
                    },
                    {
                      "id": "patch2",
                      "patchTemplate": "metadata:\n  annotations:\n    {{ (index . 0) }}: {{ (index . 1) }}\n",
                      "patchType": "application/strategic-merge-patch+json",
                      "sourceObjectRefs": [
                        {
                          "apiVersion": "v1",
                          "fieldPath": "$.metadata.uid",
                          "kind": "Namespace",
                          "name": "resource-locker-test"
                        },
                        {
                          "apiVersion": "v1",
                          "fieldPath": "$.metadata.uid",
                          "kind": "ServiceAccount",
                          "name": "default",
                          "namespace": "resource-locker-test"
                        }
                      ],
                      "targetObjectRef": {
                        "apiVersion": "v1",
                        "kind": "ServiceAccount",
                        "name": "test",
                        "namespace": "resource-locker-test"
                      }
                    }
                  ],
                  "resources": [
                    {
                      "object": {
                        "apiVersion": "networking.k8s.io/v1",
                        "kind": "NetworkPolicy",
                        "metadata": {
                          "name": "allow-from-same-namespace",
                          "namespace": "resource-locker-test"
                        },
                        "spec": {
                          "ingress": [
                            {
                              "from": [
                                {
                                  "podSelector": {}
                                }
                              ]
                            }
                          ],
                          "podSelector": {}
                        }
                      }
                    },
                    {
                      "object": {
                        "apiVersion": "networking.k8s.io/v1",
                        "kind": "NetworkPolicy",
                        "metadata": {
                          "name": "allow-from-default-namespace",
                          "namespace": "resource-locker-test"
                        },
                        "spec": {
                          "ingress": [
                            {
                              "from": [
                                {
                                  "namespaceSelector": {
                                    "matchLabels": {
                                      "name": "default"
                                    }
                                  }
                                }
                              ]
                            }
                          ],
                          "podSelector": {}
                        }
                      }
                    }
                  ],
                  "serviceAccountRef": {
                    "name": "default"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Security
          certified: "false"
          containerImage: quay.io/redhat-cop/resource-locker-operator@sha256:2176db02f561c24012c5179495c89c3819500dff21e89a62052d465eb3314b44
          createdAt: "2021-11-30T19:38:40Z"
          description: This operator provides a facility to lock resources and / or
            patches into the state described by its custom resource preventing any
            drifts.
          operatorframework.io/suggested-namespace: resource-locker-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-cop/resource-locker-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ResourceLocker Represents the intetion to create and enforce
              a set of resources and/or patches.
            displayName: Resource Locker
            kind: ResourceLocker
            name: resourcelockers.redhatcop.redhat.io
            version: v1alpha1
        description: |
          The resource locker operator allows you to specify a set of configurations that the operator will "keep in place" (lock) preventing any drifts.
          Two types of configurations may be specified:
          * Resources. This will instruct the operator to create and enforce the specified resource. In this case the operator "owns" the created resources.
          * Patches to resources. This will instruct the operator to patch- and enforce the change on- a pre-existing resource. In this case the operator does not "own" the resource.
          Locked resources are defined with the `ResourceLocker` CRD. Here is the high-level structure of this CRD:
          ```yaml
          apiVersion: redhatcop.redhat.io/v1alpha1
          kind: ResourceLocker
          metadata:
            name: test-simple-resource
          spec:
            resources:
            - object:
                apiVersion: v1
            ...
            patches:
            - targetObjectRef:
              ...
              patchTemplate: |
                metadata:
                  annotations:
                    ciao: hello
            ...
            serviceAccountRef:
              name: default
          ```
          It contains:
          * `resources`: representing an array of resources
          * `patches`: representing an array of patches
          * `serviceAccountRef`: a reference to a service account defined in the same namespace as the ResourceLocker CR, that will be used to create the resources and apply the patches. If not specified the service account will be defaulted to: `default`
          For each ResourceLocker a manager is dynamically allocated. For each resource and patch a controller with the needed watches is created and associated with the previously created manager.
          **Note**: creating a `ResourceLocker` CR will not work without due preparation (of the service account in particular). Follow these [instructions](https://github.com/redhat-cop/resource-locker-operator/blob/master/EXAMPLES.md) for a step by step walkthrough of the needed prerequisites to make this operator work.
        displayName: Resource Locker Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - resource_management
        - enforcing
        - patches
        - gitops
        links:
        - name: Resource Locker Operator
          url: https://github.com/redhat-cop/resource-locker-operator
        - name: Container Image
          url: https://quay.io/redhat-cop/resource-locker-operator:latest
        maintainers:
        - email: rspazzol@redhat.com
          name: Raffaele Spazzoli
        maturity: alpha
        provider:
          name: Red Hat Community of Practice
        relatedImages:
        - quay.io/openshift-community-operators/resource-locker-operator@sha256:9cc08639be2af4b72a9b816420d87dfa290a168fb83edc947a04b3e06cdb675b
        - quay.io/redhat-cop/kube-rbac-proxy@sha256:c68135620167c41e3d9f6c1d2ca1eb8fa24312b86186d09b8010656b9d25fb47
        - quay.io/redhat-cop/resource-locker-operator@sha256:2176db02f561c24012c5179495c89c3819500dff21e89a62052d465eb3314b44
        version: 1.1.3
      entries:
      - name: resource-locker-operator.v1.1.3
        version: 1.1.3
      - name: resource-locker-operator.v1.1.2
        version: 1.1.2
      - name: resource-locker-operator.v1.1.1
        version: 1.1.1
      - name: resource-locker-operator.v1.1.0
        version: 1.1.0
      - name: resource-locker-operator.v1.0.9
        version: 1.0.9
      name: alpha
    defaultChannel: alpha
    packageName: resource-locker-operator
    provider:
      name: Red Hat Community of Practice
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: SAP LinuxLab - Red Hat
      provider-url: https://github.com/sap-linuxlab
    name: sap-data-intelligence-observer-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: observer-operator.v0.0.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sdi.sap-redhat.io/v1alpha1",
                "kind": "SDIObserver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "observer-operator",
                    "app.kubernetes.io/instance": "sdiobserver-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "sdiobserver",
                    "app.kubernetes.io/part-of": "observer-operator"
                  },
                  "name": "sdiobserver-sample"
                },
                "spec": {
                  "manageSDINodeConfig": true,
                  "sdiNamespace": "sdi",
                  "sdiVSystemRoute": {
                    "managementState": "Managed"
                  },
                  "slcbNamespace": "sap-slcbridge",
                  "slcbRoute": {
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: quay.io/redhat-sap-cop/sdi-observer-operator:0.1.5
          description: Configure and enable SAP Data Intelligence to run on OpenShift
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SDIObserver is the Schema for the sdiobservers API
            displayName: SDIObserver
            kind: SDIObserver
            name: sdiobservers.sdi.sap-redhat.io
            version: v1alpha1
        description: Operator for monitoring SAP Data Intelligence (SDI) namespace
          and modifying objects in there that enable running of SDI on top of OpenShift.
          The observer shall be run in a dedicated namespace. It must be deployed
          before the SDI installation is started. This is the prerequisite for the
          successful installation of the SDI on OpenShift. Please refer to https://access.redhat.com/articles/5100521
          for detailed information.
        displayName: SAP Data Intelligence 3 - Observer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sdi
        - sap data intelligence
        links:
        - name: SAP Data Intelligence 3 - Observer Operator
          url: https://github.com/redhat-sap/sap-data-intelligence/tree/master/observer-operator
        maintainers:
        - email: mjiao@redhat.com
          name: Manjun Jiao
        maturity: alpha
        minKubeVersion: 1.25.0
        provider:
          name: SAP LinuxLab - Red Hat
          url: https://github.com/sap-linuxlab
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/openshift-community-operators/sap-data-intelligence-observer-operator@sha256:5217360266f62fc8ba087fbc730074c14aacf62dbd124fdc3aa46650d51a243b
        - quay.io/redhat-sap-cop/sdi-observer-operator:0.1.5
        version: 0.0.3
      entries:
      - name: observer-operator.v0.0.3
        version: 0.0.3
      name: alpha
    - currentCSV: observer-operator.v1.0.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sdi.sap-redhat.io/v1alpha1",
                "kind": "SDIObserver",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/part-of": "observer-operator"
                  },
                  "name": "sdiobserver-sample",
                  "namespace": "sdi-observer"
                },
                "spec": {
                  "manageSDINodeConfig": true,
                  "sdiNamespace": "sdi",
                  "sdiVSystemRoute": {
                    "managementState": "Managed"
                  },
                  "slcbNamespace": "sap-slcbridge",
                  "slcbRoute": {
                    "managementState": "Managed"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          containerImage: quay.io/redhat-sap-cop/sdi-observer-operator:0.1.32
          createdAt: "20240726"
          description: Configure and enable SAP Data Intelligence 3 to run on OpenShift
            4
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/mjiao/sap-data-intelligence/tree/master/observer-operator
          support: RedHat-SAPLinuxLab
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SDIObserver is the Schema for the sdiobservers API
            displayName: SDIObserver
            kind: SDIObserver
            name: sdiobservers.sdi.sap-redhat.io
            version: v1alpha1
        description: Operator for monitoring SAP Data Intelligence (SDI) namespace
          and modifying objects in there that enable running of SDI on top of OpenShift.
          It must be deployed before the SDI installation is started. This is the
          prerequisite for the successful installation of the SDI on OpenShift. Please
          refer to https://access.redhat.com/articles/7042265#ocp-install-sdi-observer-operator
          for detailed information.
        displayName: SAP Data Intelligence 3 - Observer Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sdi
        - sap data intelligence
        links:
        - name: SAP Data Intelligence 3 - Observer Operator
          url: https://github.com/redhat-sap/sap-data-intelligence/tree/master/observer-operator
        maintainers:
        - email: mjiao@redhat.com
          name: Manjun Jiao
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: SAP LinuxLab - Red Hat
          url: https://github.com/sap-linuxlab
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.0
        - quay.io/community-operator-pipeline-prod/sap-data-intelligence-observer-operator@sha256:79aa33cb7e4b570fc9c962fc6bd59708c7e28e81e2b188608780fa085db91442
        - quay.io/redhat-sap-cop/sdi-observer-operator:0.1.32
        version: 1.0.9
      entries:
      - name: observer-operator.v1.0.9
        version: 1.0.9
      - name: observer-operator.v1.0.8
        version: 1.0.8
      - name: observer-operator.v1.0.7
        version: 1.0.7
      - name: observer-operator.v1.0.6
        version: 1.0.6
      - name: observer-operator.v1.0.5
        version: 1.0.5
      - name: observer-operator.v1.0.4
        version: 1.0.4
      - name: observer-operator.v1.0.3
        version: 1.0.3
      - name: observer-operator.v1.0.2
        version: 1.0.2
      - name: observer-operator.v1.0.1
        version: 1.0.1
      - name: observer-operator.v0.0.3
        version: 0.0.3
      name: stable
    defaultChannel: stable
    packageName: sap-data-intelligence-observer-operator
    provider:
      name: SAP LinuxLab - Red Hat
      url: https://github.com/sap-linuxlab
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-pipelines-operator-rh
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-pipelines-operator-rh.v1.20.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    },
                    {
                      "name": "legacyPipelineRbac",
                      "value": "true"
                    },
                    {
                      "name": "createCABundleConfigMaps",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPruner",
                "metadata": {
                  "name": "pruner"
                },
                "spec": {
                  "disabled": true,
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.19.0 <1.20.2'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev","tektonpruners.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pruner
            displayName: Tekton Pruner
            kind: TektonPruner
            name: tektonpruners.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v1.3.2
          - Tekton Triggers: v0.33.0
          - Pipelines as Code: v0.37.4
          - Tekton Chains: v0.25.1
          - Tekton Hub (tech-preview): v1.22.7
          - Tekton Results (tech-preview): v0.16.0
          - Manual Approval Gate (tech-preview): v0.6.0
          - Tekton Pruner (tech-preview): v0.2.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.20/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:cbff2c3468f239276802e0a3a98301386ae7a98b183c4ec5b83f4b30ccde56cf
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:a6da589eb9c40c62e06c64f3d34578053328bef388325e8927872cd75c4ebe29
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:d941644bf6672ce0e6151f6ae7f775ba173795baf4a79eb8bba1d2b67ea359d5
        - registry.redhat.io/ubi9/openjdk-17@sha256:555c8bcd2596637befd1a6da4aa949c5a2640cf66e09c2dfb932afe37e39095e
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:0e9d28f1ef4f3348349489bf813c20e249a10d2735c409dccf8067e082ef0b4d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:cba1718306397fc60e1d6d468c92ea133188229f57a76f9b00eb8edd22cec5c3
        version: 1.20.2
      entries:
      - name: openshift-pipelines-operator-rh.v1.20.2
        version: 1.20.2
      - name: openshift-pipelines-operator-rh.v1.20.1
        version: 1.20.1
      - name: openshift-pipelines-operator-rh.v1.20.0
        version: 1.20.0
      - name: openshift-pipelines-operator-rh.v1.19.3
        version: 1.19.3
      - name: openshift-pipelines-operator-rh.v1.19.2
        version: 1.19.2
      - name: openshift-pipelines-operator-rh.v1.19.1
        version: 1.19.1
      - name: openshift-pipelines-operator-rh.v1.19.0
        version: 1.19.0
      - name: openshift-pipelines-operator-rh.v1.18.1
        version: 1.18.1
      - name: openshift-pipelines-operator-rh.v1.18.0
        version: 1.18.0
      - name: openshift-pipelines-operator-rh.v1.17.1
        version: 1.17.1
      - name: openshift-pipelines-operator-rh.v1.17.0
        version: 1.17.0
      - name: openshift-pipelines-operator-rh.v1.16.0
        version: 1.16.0
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: latest
    - currentCSV: openshift-pipelines-operator-rh.v1.14.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "clusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "communityClusterTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "db_user": "result",
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.13.0 <1.14.5'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              ClusterTasks, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.56.4
          - Tekton Triggers: v0.26.2
          - Pipelines as Code: v0.24.6
          - Tekton Chains: v0.20.1
          - Tekton Hub (tech-preview): v1.16.0
          - Tekton Results (tech-preview): v0.9.2

          ## Getting Started
          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/container-platform/4.15/cicd/pipelines/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)
          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:8709d35b571c163ed6f3e24b6e653e7dce8ee80f0440795e50e69f0ecfadf304
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:9d1436c1569dfb8dcab5c0ed2d675fb4f8024fb3ef85707393d1091cb5203749
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:0c9d398a73708b5877467547ac6fb1e9ccdb65159c454d31628e93a59da47f3c
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:3cfa3e3ad23f04e75417c2c0fd88c6b0f2b69361bc6947cbdffc594ecbee6d28
        - registry.redhat.io/rhel8/postgresql-13@sha256:3903d562425dd564986123280dc076548fb3d24c74138dcd857652f53052e0a7
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:38944f69b37bedb05903dc14c58415dba21873d2dd9a0fd2084cbf7afd4d5fde
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:8f0704328fef0e6031088290fe47e1f7625c4825ebd2e4edd9546279f87c5fb3
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:a69dc4520666b54d621f1aa8098c1457b2d5d2db125d612ad028ddea1a4e53fb
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:cf566538843704d03a05142639d58e8cb074aaf4bcdd03c0585574c3bc960496
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:21214c77e4a525e6eb0a8bd0e77bb7ede120ec2030dd198fe00ff1cd79a58239
        - registry.redhat.io/rhel8/skopeo@sha256:e297b84ba6f1d5eb2c37e2c3b31c9a9a4c39f9590e7d7c32388165245bde4835
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e53cec5cde1f23ab17082e3326e3328468dba3ec6c0462f06d030e0b1dfbd8aa
        - registry.redhat.io/rhel8/buildah@sha256:b48f410efa0ff8ab0db6ead420a5d8d866d64af846fece5efb185230d7ecf591
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:9f26e5a8d063f791d355481b54f02f4394e4092c20606e5bfcc604c669b995ec
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:bba6ba57778ecf3f5421a2eed5fa0d1192a53e5640413ffa83e6553296db13ea
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:e72a7f6fb660ad48e275a70cd43c085df4b87405e5e8c85d8665b421551c4d71
        - registry.redhat.io/ubi8/openjdk-17@sha256:a8165bc2cd5051a96d6937e25ed03155bbd4b731da6e58cebfe2ea83209c16d8
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:ffcf1b0e3215b8e2525be0836d7c727e639b64900954a804ab2a58f9bc747943
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:bf94a5e27a3a662a4a35ddbca377e4c311b8bda45748d7c4cb5549ac46d4f4a0
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a52bd29991a8a54853c938725162ee832f95f053b149b657bc24358f9aa0a1f4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:34a3c32c391ff5f810f0c84ff3ff5a729c1a12245f4edc66b4b22bbf30ab1600
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:a180db14ad8840a766a3cfec7faf94ef909a079276be904b4d1064f8aa8c0ae4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:d60baacc52945bb442bb8b78fe8848f4a4f6e7e9a2818062631d174db5f31c67
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:bd524c790588652e11fe8ba07ea8df0a2d483840c9a84fb35f3dd3e8157233a5
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:2077cdcb34dcd57972f71b403cad02ea715e19a7096e95dfac228168e49acb15
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:09f162c742dce25deac02bdb5395a7fb714f171f924471c96f24680f95ddc975
        - registry.redhat.io/ubi8/ubi-minimal@sha256:6825946f10e8c81586fa7815c4f06016af05cfc231d921ec9699402a6655d201
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:f3467d9f19c40b5c70659f0d22750e603dd7cd11cdcc0b81310a5d2abfbffb2e
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:20195b44af8e0b2238148003aacb2b278a9c3468893b3967da45e7ae1c3b2e9b
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:7a460bc5609afb2865e20f04b5c0e86ccba3c9a31a09ac14d799556d4b816356
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:f7b19ce26be742c4aaa458d37bc5ad373b5b29b20aaa7d308349687d3cbd8838
        version: 1.14.5
      entries:
      - name: openshift-pipelines-operator-rh.v1.14.5
        version: 1.14.5
      - name: openshift-pipelines-operator-rh.v1.14.4
        version: 1.14.4
      - name: openshift-pipelines-operator-rh.v1.14.3
        version: 1.14.3
      name: pipelines-1.14
    - currentCSV: openshift-pipelines-operator-rh.v1.15.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "clusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "communityClusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "db_user": "result",
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          createdAt: "2024-10-21T06:27:28Z"
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.14.0 <1.15.2'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              ClusterTasks, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.59.4
          - Tekton Triggers: v0.27.0
          - Pipelines as Code: v0.27.2
          - Tekton Chains: v0.20.1
          - Tekton Hub (tech-preview): v1.17.0
          - Tekton Results (tech-preview): v0.10.0
          - Manual Approval Gate (tech-preview): v0.2.2

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.15/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:1bc3273f138cd3a48610df28c87d05fda126d8cc29d2780a0c4738ea9bd3e85d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:8723ee8cf1f41a85fdfe2699b014df105db50be7c995371dafea698ade65c91c
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:c45a22f5660fe2228eb55d50f061fca7854e52af7c6600f62f8bcae93c15edb1
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:d92d48d42e42082a29d61a0f8b8ba7dcfd5e8ef0a8f66ded0bedce24fc81be33
        - registry.redhat.io/rhel8/buildah@sha256:aac6629389db17e99894c5bee0da01d4c8065d11d8c6f6e1602f9484290baa70
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:e73c1fbaa426e3fc8acda26a38abd1d25de1f933893479269375af40da53dc5f
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:46a680ca7416fc85ecc2d5c7fff84a45b493d02f10c087d3088992e6475f0ee9
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:4ccbc6bb8fadc5ffba0ff8b0206031b51db1c4acd7c0d8bbd050bc73975d4a2e
        - registry.redhat.io/rhel8/skopeo@sha256:29465586e92ed04d2878dcdeda2d508c7e8e7539762e10296b52d631929960aa
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:3e80a493aac65370228ff32643e0fb8418f6fb576934e804fa1c65b38cc3d203
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:fcf8b863aa41a702afef381a087f4daff7dcad1e34b03d2c0b0192bd5365cb71
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:14f4e749cdc026dfb19a53748a4eb64b875d7dc7626fc0b30edef364f3dd612c
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:962780950d1ef7ebbf285ee7fc7c2d8fc9af1b9cbec6c29dffecc133c8933afd
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:c2193380a48239c024d9dfdbeb45cf2c7f462ecb8ce23fa53c5fdfc162bdab58
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:b3642afe8e487884ee62dd6f0d22b84627552afeaa61a3f56eada858795f1d5b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:8a593c1144709c9aeffbeb68d0b4b08368f528e7bb6f595884b2474bcfbcafcd
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:98bf4813124dc9ada33da9530678e239c7953a1302a6cf9dee2277c276fb5758
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:91c836b13d3b9d4dafd4198148172f3f42122f9b38bb8be53c26f5b3ed9cf045
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:e3a11aee5518641ad453ce310b159c52d827f443f99eb61a4f5427699c1ab16a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:9b6bd5c8a5da471bb05b4bda7a4ae3a86b9b1d9128971aa6ce6f4874bb6dfa0d
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:f6232daffac97d841801ca3b356383ae73dd3f74ca6d635475283865737b7862
        - registry.redhat.io/ubi8/openjdk-17@sha256:e8cc2e476282b75d89c73057bfa713db22d72bdb2808d62d981a84c33beb2575
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/ubi8/ubi-minimal@sha256:f729a7f5685ea823e87ffd68aff988f2b8ff8d52126ade4e6de7c68088f28ebd
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:fbf4e6f210ca31b8864f84731b5f5554fffc404d172c0207fb3d5c93b09c6c13
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:ed20e74c11ce0ca33bd832bf29d6311985affd67bda05f8cee045d8732d235f8
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:2f76b11f048e51d0e33f997c5fbe0f9bf4096a4a9cd97d5d6d8084fc10722c03
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:bf6cf2e87fb19f7aa9a490b83c16af69834c0721220a643710a1b077959e91ca
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:b37a8c805b43eef99b2e7df017622965eca79f0f8f4b1f05917fc2313dbdf40d
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:017455cc1c5ceaaa1034f197d0a98645aff6d83fc71a4a5cb9961c3f283dc239
        - registry.redhat.io/rhel8/postgresql-13@sha256:a92a579f1aef66ac188d24fd489c456a1a3e311d95dcce652da6b81e28fbf725
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:3445ab65ae506460e44f304df03c249ce7283c5fb7cc2d75b660d43cccab70a8
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:702899060437993a77a038c36284b99358caea038c44ca5a94f892233bf85b99
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:f7fe262df4d73aa598d63ef4d463bbe84009e784d0bd2801de1131e6ee0f3ca7
        version: 1.15.2
      entries:
      - name: openshift-pipelines-operator-rh.v1.15.2
        version: 1.15.2
      - name: openshift-pipelines-operator-rh.v1.15.1
        version: 1.15.1
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: pipelines-1.15
    - currentCSV: openshift-pipelines-operator-rh.v1.16.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "clusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "communityClusterTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "false"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.16.0 <1.16.3'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              ClusterTasks, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.62.8
          - Tekton Triggers: v0.29.2
          - Pipelines as Code: v0.28.2
          - Tekton Chains: v0.22.3
          - Tekton Hub (tech-preview): v1.18.1
          - Tekton Results (tech-preview): v0.12.3
          - Manual Approval Gate (tech-preview): v0.3.1

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.16/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:a5a7b2be50f211d4d9d555b2a2e2302096c139ff5011d984cc386f1530007f16
        - registry.redhat.io/ubi8/openjdk-17@sha256:632e78989471859ca4ed1148b951a911f7e3b6e6516482be20967c4171612c55
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:de0d59029c02e5e9e6d607375b9b0ab573807f6531128f13d2579067767e8a3a
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:a1dfff15c9eed4dbefb484c76383073287de6f5429c878254d374a56ec7099ce
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:42ab9dedc88f3892e0712e7868cd21fb62e955f442aad6e837638fd38dd916f0
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:6a6025914296a62fdf2092c3a40011bd9b966a6806b094d51eec5e1bd5026ef4
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:fc935150749190a1a978b7b59769cfa2a9e50577064959ba619d601057bd3355
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:945c1675422507e67eca06f246aca9e42aebcb2c874f74a284b5e5037f073082
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:a3dc7856ede01459cf74c9d17687c0c0ac5a404a6891266b12e19373218d728e
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:c2ca6ed42b7d7dc5d06be481e0f3b5da6c9219999a6f81401d434c0d1cbd9bdb
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:9a230bc21f8ef9ad37398922498ace9e6b13f21adcde2b00f418543919a9fa11
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:783174ac82d0d823f886d5fd1d89baf8cf467c13d651ee689a90a2c1c84c54b8
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:ea97b4d3d0882e9a3f5a98c6af3c147fa96de92e40710edf380b58442d5a623c
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:752baa0d02ea097bab1d014b623b8161ae67317cf2f56d264bcd5d0a270b096b
        - registry.redhat.io/rhel8/skopeo@sha256:1dcb4189c92da21ee58b3ca5433615e0208194c8412f7f1fb45fa491179aaf9b
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:a27f43b86d2bc10c60de233be4e223b549d11c3aa7de390e485a79ac3fb4c533
        - registry.redhat.io/rhel8/postgresql-13@sha256:a308263f5d1071be8ac5c13fd84b40609988ca30ed56c22a8bc6769e107ce09b
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:8505951c0c40957eb65d551bc742e82642edf65385b6ca67bcf075036c42270d
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:914fe1fa1d806cd31a755905ffaf0803995f494fcd86690bc9b487dcd2a5b6ca
        - registry.redhat.io/ubi8/ubi-minimal@sha256:a47c89f02b39a98290f88204ed3d162845db0a0c464b319c2596cfd1e94b444e
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:aeff39254bc40092974781fe847a295a1c60f226f3f9ae2b7f2cc9259229c3e2
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:9e9c168af3b24b4f084fecf3bbf07f66bce0fc717641ccaaf07496b0a8498925
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:665f689731ca03f753c3c2dc4d4ae3f6bb001c498e54a6ef7b5d92ff00f2e0bd
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:6acc31f179b08658976cddcb9ef42f377edb29933d1d83a2ecebfd455bb68571
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:c701cca096953103ae21d8b0a4b76c39769f7458532fd868c798a5af2987439f
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:fba741840f20e079c720d4bc4a1df64d78785798300d0958709732299ea321e5
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:eedb4553f0be74f81910dbd1bebed0a4a07eaf4dc47ff0551a8ea52725127b6c
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:1658226f40a3f10d9f6c7776cba14a80644af4a56452d9617e85854daa671223
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:b6845e614c60e924061a52cdc091d0437a4dcd2d67d89158af2efdc930469b3a
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:4037f8eea26c4a4827d127f99a40992109a19efae30ce9d14a75283d69efe919
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:ab01a135f735a75b2b1efa184e1d205b60982c7a93ac48fb48b8eed66b54601a
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a6c5e95bf9b42ed8d6e20139499daf70a633ab35eb76cca3eda9fd380f396602
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:23eb0e3b25d61d0f4fabea8dd954bd3956e3b7fec634e32d00c6a108e88330f9
        - registry.redhat.io/rhel8/buildah@sha256:5c7cd7c9a3d49e8905fc98693f6da605aeafae36bde5622dc78e12f31db3cd59
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:6b9964bd9be63c5e32d56cf7519c1b7eb65303e04bace7526873d4de73142eec
        version: 1.16.3
      entries:
      - name: openshift-pipelines-operator-rh.v1.16.3
        version: 1.16.3
      - name: openshift-pipelines-operator-rh.v1.16.2
        version: 1.16.2
      - name: openshift-pipelines-operator-rh.v1.16.1
        version: 1.16.1
      - name: openshift-pipelines-operator-rh.v1.16.0
        version: 1.16.0
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: pipelines-1.16
    - currentCSV: openshift-pipelines-operator-rh.v1.17.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.17.0 <1.17.1'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.4
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.65.6
          - Tekton Triggers: v0.30.1
          - Pipelines as Code: v0.29.1
          - Tekton Chains: v0.23.1
          - Tekton Hub (tech-preview): v1.19.2
          - Tekton Results (tech-preview): v0.13.3
          - Manual Approval Gate (tech-preview): v0.4.1

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.17/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel8@sha256:bcdd6f5a185d4969def2f806403fcd08527bfcc9f4ac0706b38bc358d1d64778
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel8@sha256:e784efdbe32daa310e7d3c7d4645613814573d12ee1dbbf74aad68cfa28761b5
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel8@sha256:cf4e3a23de646038e18a170f1edf49fa75bb72d49e9308511b680e24c795f1b0
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel8@sha256:56337f8ceb6f2cce84090f9fee17bdc9eb87dc4e61c36c6353014c0f99cf6273
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel8@sha256:7c22937c957b4f405bc014f4b8210f88c1e5acbc7fb59a29c9ee8837d4e0249b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel8@sha256:fa2bec9b5cb68fccf9dd331881ff225abf6704973ee3b283e2b5f294aafe3ac2
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel8@sha256:d854cdf80b03566e138d1530e0200e7d9a349524d37ce0244f8ba97f6af3156e
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel8@sha256:a34bd66f9eb15cb09f7342d7561f23697039a8521fbe76d0f5104d19bed0a05a
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel8@sha256:58343c719d9c4d536424a55e280cc3f67c2bff6f0e0b1b56678f555d5c12f381
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel8@sha256:bf9071d0e144632a0acd90ddb4d2e1ecd435e1904e22233a1e1978cbe3a0206b
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel8@sha256:934563cc735bc0c3421ce444efdcb3bbb38c1a42a2abcf49294af30e7f5cab8e
        - registry.redhat.io/rhel8/skopeo@sha256:7fd65200b4847fc84fba0466519b87f915e28c0e9bc90d3022beecfebffd4af8
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel8@sha256:a4f1c5397fdedd9c820f51e0c09d6b464f2821740c86ab61772aed14cbb33ae8
        - registry.redhat.io/openshift-serverless-1/client-kn-rhel8@sha256:37109f6de75dda750496f6668164d0dceaf9db5278e8c034708436f39de3276e
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel8@sha256:245e5f77eef067b48f7262de04485b4ab5f195736dc128d2c574f32bb05d3b2d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel8-operator@sha256:d2b4ad8837421df74485f6752832de75e6543940d8c32fa18811d7878cf4e7b8
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel8@sha256:4cf8548faf20fa56d4ec698975bb90bed4474661170cc51b6892a144d0407497
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel8@sha256:b614e12432bac989bf789ac84ec0a2bf55f5cab9ecd863432c7d11e4e176def0
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-rhel8@sha256:e9352d062e933f23277e81333b42fd86ee767e9fd273c8d4528ede410b6d7afb
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel8@sha256:b44ee90952a1556b9db646795d415d3cec2d1de7e01356438b53ba44c09988db
        - registry.redhat.io/rhel8/postgresql-13@sha256:757d8dd6f243717d820846da7144a49913f28f223b74ec305b2215f54720f8a0
        - registry.redhat.io/ubi8/ubi-minimal@sha256:c12e67af6a7e15113d76bc72f10bef2045c026c71ec8b7124c8a075458188a83
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel8@sha256:0e4eb22c1f8e35014fac62a820895d6934312278d71a23bc8b4e1f5e200b6bd9
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel8@sha256:ac3087bf9f4d494518fb19e3d95fe0f942fefa69ff9f8b2a82fe2d59c2bbfbf4
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel8@sha256:de9337e8fa647d59727a7bc4477c613607975a493283037b5c81ec908da21902
        - registry.redhat.io/ubi8/openjdk-17@sha256:e5fc9e34382da41b10d4ea566639d31707493abff9e8de81f5accfd66876409e
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-rhel8@sha256:8ba6e6deab70190b55ef2dda957a8df89e34bdb03f0671ff2f52c97c8da6081d
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel8@sha256:0e7798c138004f4e462a80939fb22b5065016dd15574224be6c8a58d9d5129dd
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel8@sha256:41ec6db921812fd1e80b05d51c224ddbce63bf0c57f02ccf07461d2202e97b90
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel8@sha256:aad40e98859844aedf0c719d7305baeb42c055872fb735c54c378edc014d6e31
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel8@sha256:108160e0298da3379d4277cfa865c073c28fc3b25f5ba3155e427db5b50ebb46
        - registry.redhat.io/rhel8/buildah@sha256:6d2dcb651ba680cf4ec74331f8349dec43d071d420625a1703370acc8d984e9e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel8@sha256:6fe1b45c6ee81bc55062ac6a6972accf5546c69f78db97f53c9b8975426c35eb
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:115c28f9574540ec42be6e3afb93ea62f4d6e54c7367e86e746ace712548130e
        version: 1.17.1
      entries:
      - name: openshift-pipelines-operator-rh.v1.17.1
        version: 1.17.1
      - name: openshift-pipelines-operator-rh.v1.17.0
        version: 1.17.0
      - name: openshift-pipelines-operator-rh.v1.16.0
        version: 1.16.0
      - name: openshift-pipelines-operator-rh.v1.15.0
        version: 1.15.0
      name: pipelines-1.17
    - currentCSV: openshift-pipelines-operator-rh.v1.18.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  }
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.17.0 <1.18.1'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v0.68.1
          - Tekton Triggers: v0.31.0
          - Pipelines as Code: v0.33.2
          - Tekton Chains: v0.24.0
          - Tekton Hub (tech-preview): v1.20.1
          - Tekton Results: v0.14.0
          - Manual Approval Gate (tech-preview): v0.5.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.18/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:dbc462cb50385dec3a220b5d0caed0e0211c166182026f86e3c51a1351ba0de4
        - registry.redhat.io/rhel9/buildah@sha256:6886997da8c92214e99e3e8da47a0f08239172d2544b4edae058d5cb018effab
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3964c3248dfb1006ea9a46295baf7f8cfa71952d6b9863b52f87e8f3d7863b1e
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:409c14649d8e7007d4b72b6feffb71dabd26322bf2a7c77f5307f2546fdfe81b
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:8ae0ca6411e4fcd5c0605344bc6930cf122ffd80e71199509d58423a8b41de1d
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:d055d2b35a663aef3e1aafdbed0b12957867c0670c946ebae66e9c44a768bda2
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:20e19c02efdecf94a7b16483047e5db81c50dc2a0aa59d4895067e6c7769efcc
        - registry.redhat.io/source-to-image/source-to-image-rhel8@sha256:3696cf724ce7865626ae408d82fd87727c741e4d3eb3475c271ec6d56f0882a4
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:e4d49cf6a2fb8b3585ecfe3b3da3e9de090fb99de3dee2da0601b1f6b071173c
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:c20ab6fa719506bca942669ea84b113335b05df3ed275257b88be234cade7c8d
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c90a9c3a20f088241980b76986ba4f43b0243fd6d94a826fa7b5888e01c13093
        - registry.redhat.io/rhel9/postgresql-13@sha256:ecd5a5583db922c517c735797db3fca587c0ef0b410e7dd494ace2267d89cf05
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:86ea94b12e8923035e3e4f39b6a53b3ab32c5f77d7eea170aa9b34aecc6f8577
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:72901cf4e091fe5f6a577144fdffaea8570712e9887a8bd715d5ae5bc346ff1d
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:e6a7738cdb0e8aa9e1af381273b1c18ec1414b08a66fc851f6e11e5aa7a6706f
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:cbd89c531953a43b8055bda72f7696be80f57fd1d782567a91d82e0fbcb3d26d
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:80d441ec5d07c5059277a3a9173a35dfc0b8372d6e4d7823514131a94bae3fd7
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:1b57b64657eca0002145100bae262a19f02eb40068e07994df467e28a1618f90
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:eaad37453a5ebef51c28d4a068f56e9f394e710c72bb86342cd2189001420836
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:b9675b22bc8759903472c1eb0e03f90c75460f02799d894294c161641cad9414
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:2ba6782af0d7e5c4d623de31814f43f4f7c3c38d09b57705021957d334067f87
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:e2b4c3b505c4b5aa36f8a5e661389b0de4e799c74c2c7f16a065e5522b438e89
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:8fec8e7a8b3e5182c67104de4e3abe32593b682c4a8986d1e9ab835dafb95ff4
        - registry.redhat.io/ubi9/ubi-minimal@sha256:ac61c96b93894b9169221e87718733354dd3765dd4a62b275893c7ff0d876869
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:fcd5fd10de7334bd59a8da4997f91008ced95c6cde40d56d50f3b3e32c0f19e1
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:cd28c2c90dd340324b0d8709640cd7636f28286114b0023649b6e21be13e03c2
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d72842a7c6a1e50a68576c93f60047afec801cf83db64d7d3e34b25bf3c753ec
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:e27a30d471dda4983a5b8192709d283a9d082558f3caf31b30db2214e418b017
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:16d799503674641d4690822edc9c399c61429ccd31621d295eee4a4d1ef1c076
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:fa5c456fc91319c55fac9a011dc7bb32ef85db293c73d74436e903b76ceb4349
        - registry.redhat.io/rhel9/skopeo@sha256:d077e35100d6d7b3795f8e3594293dbf8b65c6bc18b909aa555fe56f048b356a
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:36a4c6a3273f2371ab5e679f1955221c286ea753e29e6ab8da7c983681a68f02
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:96f5e1922fb9d6dc17e271576dda9bd032bd6dcc04e7496fb15a2f6b5871cd67
        - registry.redhat.io/ubi9/openjdk-17@sha256:5d619e202695acf76a5f32c07ace6709f5ee5d3999bf977e1bf95ad34197f44a
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:b550a8bc2a87d07a5b22a3ec3fb83efd8eb26ca6e80d404f2e453cc9b8434da7
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:e63d956a0534f2e726301e00e877c4fe2f34ca4559e59d2df7567c04ded311a3
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:0a60ce46c05256c74f770901e0bb79ad89e88ba882b643c1ff7b2a1738463acc
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:6abc903c784bb455e1f2fde45a48afe775239668e1d0dbc1b3cc6afca3c0b477
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:8b4bf043e0fb237553503d63b129c432600bb4e65b2096b246b257b404b42be9
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:776d34b0ea2e35c11ad4050e6b40cf4b40c84dbe0d5f3e6ad669c494a210ea8e
        version: 1.18.1
      entries:
      - name: openshift-pipelines-operator-rh.v1.18.1
        version: 1.18.1
      - name: openshift-pipelines-operator-rh.v1.18.0
        version: 1.18.0
      name: pipelines-1.18
    - currentCSV: openshift-pipelines-operator-rh.v1.19.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPruner",
                "metadata": {
                  "name": "pruner"
                },
                "spec": {
                  "disabled": true,
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.18.0 <1.19.4'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev","tektonpruners.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pruner
            displayName: Tekton Pruner
            kind: TektonPruner
            name: tektonpruners.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v1.0.0
          - Tekton Triggers: v0.32.0
          - Pipelines as Code: v0.35.4
          - Tekton Chains: v0.25.1
          - Tekton Hub (tech-preview): v1.21.1
          - Tekton Results (tech-preview): v0.15.3
          - Manual Approval Gate (tech-preview): v0.6.0
          - Tekton Pruner (tech-preview): v0.1.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.19/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:408a3bf7a43068cbf2ef9af04faf3df161ac39e53446f47d9fcd083499a9e2a5
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:bb5bd9f505d0eb6ce6573b09898c2ad49f1d3602c36b380058b489d9383ba60d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:5bfbde45a37d8b16cf0ab0be8f636c35a1d9041d6c8f7f611fc24a551eb890eb
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:4f606f7cb607007573f1023408329bdbfbfd979dc6bb50ac4af0ae20a33bcbee
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:ddbab8d6b9d1239451bf695276c8ddfe00e78cbb9ff4fc6562a9a5a2924b6082
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:1fef4759b410625fc797a8ecd166c20ad09312abfccc1cb941e946cfdccd2da4
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:49cb3cca3f9102384c96e93108d09969df22c3858b1933ecff9fbe1d41aed981
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:66588ef48047d6589b7c810398ca16032125174d7cd9eaf1d6ddebbbf82147b4
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:95816d1f338341800c6947491d31d6ad826e56e821ad3ada78718df9f2dcd103
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:67334d9a2a0bee4cfd62d3e3c26608df4f802adf8970981260e4051b4fb3d055
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:ae34ed4ead57a26e1f65dcf433908ad75c5bcc243fcb2fdc3b4c211171c40480
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:40a099a9073bcc2f8da442d8225be03c8636e456c548c93e1a8366677e845830
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:1141200c99c69bbfbce4f7994b7d8b9eca36f5cc395acdf866233b3cc35be61b
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:b49089d2f582a7a9b954a75a48c590849e79628305b37c43a0c5ff795019635b
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:a802bd8ea9104e77b6318bc3c05269c32c6435a696f62084da83f68b9426294a
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:41d669fbe8bb48481890fb9fb52de9d4cac98cb74e6a6b284d046a8d21b06e58
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:2d6640e6b91896ff455ab8e2246f166a3cdd9c53dfca00b3919f646f54a11f9f
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:84450e886c5ce68f4f594982fab6140faebef5774339226b0be8d7e70b963fcf
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:e1b99c7a287125dc265c536e5aecbe9eb4e9981ff030d28b9b127fb546a45944
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:aab3b001f60510c73cf475b2c218a7aa921cbca99b855d28862c42e83d610ab0
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:3e2343b6121790f18b8d8868d8492af0b0541252f50e290f585f467c61660574
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:cc5265e2e163446554453d4f5db1cc733758b450c7550db7b7caf9ede474aeca
        - registry.redhat.io/ubi9/openjdk-17@sha256:cdbd64ba1b7826d09bc180fa19aa6fbc09ddb5bff5e02b7e1351353bbabebb78
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:38a58fd012558192cd779ff8ac2ef3f02b8e82e2a1bcbbb9d53822c9d8890afd
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:6a947bae0c64ffcf7c2f9d71b5f18d858e017ce6122b2499c555850fe7fe1fde
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:f151dda38d7fafe2d72e2cb064d074921c6b535543f29cfcf66405ba65e38ed5
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:6a18f8d771900aa480560d1809c789d5243c4f6d9087185c610d9b8834d78625
        - registry.redhat.io/ubi9/ubi-minimal@sha256:14f14e03d68f7fd5f2b18a13478b6b127c341b346c86b6e0b886ed2b7573b8e0
        - registry.redhat.io/rhel9/skopeo@sha256:993f799d58c48151ecae7a84e63860f6c0039e8e18efed5ad67e7752f4b7e408
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:a585790aa11f5152c8a55ef36f74f731a34b2eecccd3250e5ef3cec8ec398409
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:d21cc7e094aa46ba7f6ea717a3d7927da489024a46a6c1224c0b3c5834dcb7a6
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:655a73b61984fbafe9194629705f51ff149d43a768a5a1c103045582eba8f2ec
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:d49f6cfcd815f93d0f1fad8a569bc8e52ffd86ba909530e95fdee19b0a1ca784
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:7eaab4455c1e416e4e0ba5f3e0e60c5a46aea23a939968e15eb6a953680a5f2c
        - registry.redhat.io/rhel9/buildah@sha256:a6e04c061b8d261dba85d01dcb64d3f7dba8c0b9765e03f05ec79850a248d75a
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:a68bc519e86f1316bf2c536aab16ebfab329cb51b07cd02d3021bc8332c4c97c
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:cb5958fdc6661e23f9957d53877a6f401af5a2f64a1305ae21579048846f1f70
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:18bb4f4139d8b9f041ec5d38e5350d72290715f8ef235543365ca4b353bfa8c4
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:498238810108939ead8df1158c6ac892ad5f0bfad57fd2a893b5ce53853504d1
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:e74f92e066f47a3eab9467f2253c3b85bc34fa41e2443e033b5e3470849b0d16
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:70293cb8a80aa548933ff5f502bac89945a5cd08801c4ca3aac08a10dd01f62f
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        version: 1.19.4
      entries:
      - name: openshift-pipelines-operator-rh.v1.19.4
        version: 1.19.4
      - name: openshift-pipelines-operator-rh.v1.19.3
        version: 1.19.3
      - name: openshift-pipelines-operator-rh.v1.19.2
        version: 1.19.2
      - name: openshift-pipelines-operator-rh.v1.19.1
        version: 1.19.1
      - name: openshift-pipelines-operator-rh.v1.19.0
        version: 1.19.0
      name: pipelines-1.19
    - currentCSV: openshift-pipelines-operator-rh.v1.20.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "ManualApprovalGate",
                "metadata": {
                  "name": "manual-approval-gate"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "OpenShiftPipelinesAsCode",
                "metadata": {
                  "name": "pipelines-as-code"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonAddon",
                "metadata": {
                  "name": "addon"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonChain",
                "metadata": {
                  "name": "chain"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonConfig",
                "metadata": {
                  "name": "config"
                },
                "spec": {
                  "addon": {
                    "params": [
                      {
                        "name": "pipelineTemplates",
                        "value": "true"
                      },
                      {
                        "name": "resolverTasks",
                        "value": "true"
                      },
                      {
                        "name": "resolverStepActions",
                        "value": "true"
                      },
                      {
                        "name": "communityResolverTasks",
                        "value": "true"
                      }
                    ]
                  },
                  "params": [
                    {
                      "name": "createRbacResource",
                      "value": "true"
                    },
                    {
                      "name": "legacyPipelineRbac",
                      "value": "true"
                    },
                    {
                      "name": "createCABundleConfigMaps",
                      "value": "true"
                    }
                  ],
                  "profile": "all",
                  "pruner": {
                    "keep": 100,
                    "resources": [
                      "pipelinerun",
                      "taskrun"
                    ],
                    "schedule": "0 8 * * *"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonHub",
                "metadata": {
                  "name": "hub"
                },
                "spec": {
                  "api": {
                    "catalogRefreshInterval": "30m"
                  },
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonInstallerSet",
                "metadata": {
                  "name": "foo"
                },
                "spec": {
                  "manifests": []
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPipeline",
                "metadata": {
                  "name": "pipeline"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonPruner",
                "metadata": {
                  "name": "pruner"
                },
                "spec": {
                  "disabled": true,
                  "targetNamespace": "openshift-pipelines"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonResult",
                "metadata": {
                  "name": "result"
                },
                "spec": {
                  "auth_disable": true,
                  "db_enable_auto_migration": true,
                  "db_host": "tekton-results-postgres-service.openshift-pipelines.svc.cluster.local",
                  "db_port": 5432,
                  "log_level": "debug",
                  "logging_pvc_name": "tekton-logs",
                  "logs_api": true,
                  "logs_buffer_size": 32768,
                  "logs_path": "/logs",
                  "logs_type": "File",
                  "prometheus_port": 9090,
                  "server_port": 8080,
                  "targetNamespace": "openshift-pipelines",
                  "tls_hostname_override": "tekton-results-api-service.openshift-pipelines.svc.cluster.local"
                }
              },
              {
                "apiVersion": "operator.tekton.dev/v1alpha1",
                "kind": "TektonTrigger",
                "metadata": {
                  "name": "trigger"
                },
                "spec": {
                  "targetNamespace": "openshift-pipelines"
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools, Integration & Delivery
          certified: "false"
          console.openshift.io/plugins: '["pipelines-console-plugin"]'
          description: Red Hat OpenShift Pipelines is a cloud-native CI/CD solution
            for building pipelines using Tekton concepts which run natively on OpenShift
            and Kubernetes.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=1.19.0 <1.20.2'
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/internal-objects: '["tektoninstallersets.operator.tekton.dev",
            "tektonconfigs.operator.tekton.dev","tektonpipelines.operator.tekton.dev","tektontriggers.operator.tekton.dev","tektonaddons.operator.tekton.dev",
            "tektonhubs.operator.tekton.dev", "tektonresults.operator.tekton.dev",
            "tektonchains.operator.tekton.dev", "openshiftpipelinesascodes.operator.tekton.dev",
            "manualapprovalgates.operator.tekton.dev","tektonpruners.operator.tekton.dev"]'
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/tektoncd/operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an installation of latest version of Manual Approval
              Gate
            displayName: Manual Approval Gate
            kind: ManualApprovalGate
            name: manualapprovalgates.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of OpenShift
              Pipelines As Code
            displayName: OpenShift Pipelines As Code
            kind: OpenShiftPipelinesAsCode
            name: openshiftpipelinesascodes.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Addons (exclusively
              Tasks, StepActions, consoleyamlsamples, consoleclidownloads and consolequickstarts)
            displayName: Tekton Addons
            kind: TektonAddon
            name: tektonaddons.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Chains
            displayName: Tekton Chains
            kind: TektonChain
            name: tektonchains.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton components,
              TektonPipeline, TektonTrigger and TektonAddon
            displayName: Tekton Configuration
            kind: TektonConfig
            name: tektonconfigs.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Hub
            displayName: Tekton Hub
            kind: TektonHub
            name: tektonhubs.operator.tekton.dev
            version: v1alpha1
          - description: This CustomResourceDefinition (CRD) is used internally by
              the other OpenShift Pipelines CRDs to maintain the lifecycle of OpenShift
              Pipelines Components
            displayName: Tekton Installer Set
            kind: TektonInstallerSet
            name: tektoninstallersets.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pipelines
            displayName: Tekton Pipelines
            kind: TektonPipeline
            name: tektonpipelines.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Pruner
            displayName: Tekton Pruner
            kind: TektonPruner
            name: tektonpruners.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Results
            displayName: Tekton Results
            kind: TektonResult
            name: tektonresults.operator.tekton.dev
            version: v1alpha1
          - description: Represents an installation of latest version of Tekton Triggers
            displayName: Tekton Triggers
            kind: TektonTrigger
            name: tektontriggers.operator.tekton.dev
            version: v1alpha1
        description: |
          Red Hat OpenShift Pipelines is a cloud-native continuous integration and delivery
          (CI/CD) solution for building pipelines using [Tekton](https://tekton.dev).
          Tekton is a flexible Kubernetes-native open-source CI/CD framework, which
          enables automating deployments across multiple platforms (Kubernetes,
          serverless, VMs, etc) by abstracting away the underlying details.

          ## Features

          * Standard CI/CD pipelines definition
          * Build images with Kubernetes tools such as S2I, Buildah, Buildpacks, Kaniko, etc
          * Deploy applications to multiple platforms such as Kubernetes, serverless and VMs
          * Easy to extend and integrate with existing tools
          * Scale pipelines on-demand
          * Portable across any Kubernetes platform
          * Designed for microservices and decentralized team
          * Integrated with OpenShift Developer Console

          ## Installation

          _Red Hat OpenShift Pipelines Operator_ gets installed into a single namespace (openshift-operators) which would then install _Red Hat OpenShift Pipelines_ into the openshift-pipelines namespace. _Red Hat OpenShift Pipelines_ is however cluster-wide and can run pipelines created in any namespace.

          ### Components

          - Tekton Pipelines: v1.3.2
          - Tekton Triggers: v0.33.0
          - Pipelines as Code: v0.37.4
          - Tekton Chains: v0.25.1
          - Tekton Hub (tech-preview): v1.22.7
          - Tekton Results (tech-preview): v0.16.0
          - Manual Approval Gate (tech-preview): v0.6.0
          - Tekton Pruner (tech-preview): v0.2.0

          ## Getting Started

          In order to get familiar with _OpenShift Pipelines_ concepts and create your first pipeline, follow the [OpenShift Pipelines Docs](https://docs.openshift.com/pipelines/1.20/create/creating-applications-with-cicd-pipelines.html).

          ## CLI (tkn)

          Tekton Pipelines cli project provides a CLI (tkn) for interacting with OpenShift Pipelines.

          [Download tkn](/command-line-tools) (links will be available on `command line tools` page after this operator is installed).
        displayName: Red Hat OpenShift Pipelines
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tektoncd
        - openshift
        - build
        - pipeline
        links:
        - name: Tekton Pipeline GitHub Repository
          url: https://github.com/tektoncd/pipeline
        - name: Tekton Operator GitHub Repository
          url: https://github.com/tektoncd/operator
        maintainers:
        - email: pipelines-extcomm@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-pipelines/pipelines-opc-rhel9@sha256:f9c6bff2760b5d7a3f7f6c8e8355c2ca3e95292d532e2920dffb07f43ce5ecc7
        - registry.redhat.io/openshift-pipelines/pipelines-rhel9-operator@sha256:c27b41ab72d7878635bd5ae4933e2607bc82d34981ea077da302cbeb5150cbbc
        - registry.redhat.io/openshift-pipelines/pipelines-hub-db-migration-rhel9@sha256:524ec0a80fe01bc8e7503ba3a173ffe36d7bba5f2bd0cd70cba0f313657e0195
        - registry.redhat.io/openshift-pipelines/pipelines-git-init-rhel9@sha256:52444eaec63f4ff5fcf26d94d7b4d9bc32708b79bd8c20d5b7b569f1a01bcf8d
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-controller-rhel9@sha256:cfedfe21941f8f785339931ca12c89f08a7d54ca6e26477862861fccca49db58
        - registry.redhat.io/openshift-pipelines/pipelines-nop-rhel9@sha256:bfdf1070fb413532619d4a0f5cdfe4a1514c1704c6f3af0710a6bdca02e54f92
        - registry.redhat.io/openshift-pipelines/pipelines-resolvers-rhel9@sha256:d6fec067065f1a42f24cff52c1b1f395378d58a6da0dc664b9c1cc923cbbac6c
        - registry.redhat.io/openshift-pipelines/pipelines-controller-rhel9@sha256:cfc03b3653d542a33660ef63c9514a241054c26a5e06256e50ad6a399e611e99
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-webhook-rhel9@sha256:36386c59ca7e1b7cdf194ce45392b503edbfd604f103c2b2a74166d4739a707b
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-watcher-rhel9@sha256:d941644bf6672ce0e6151f6ae7f775ba173795baf4a79eb8bba1d2b67ea359d5
        - registry.redhat.io/ubi9/openjdk-17@sha256:555c8bcd2596637befd1a6da4aa949c5a2640cf66e09c2dfb932afe37e39095e
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-webhook-rhel9@sha256:032754c94bd57923dee350fec0fc7a47e757f5e41f508cf91eb75f9e4d3c6d6b
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-eventlistenersink-rhel9@sha256:dbf4da5e58f3cbeba5dce3a4a626a9019a2b5de37d55169023406e31c62581ce
        - registry.redhat.io/openshift-pipelines/pipelines-results-retention-policy-agent-rhel9@sha256:3cc071725df9ac0f8adde22b0b24ca170f7461a5e0f2a4c0988857c6f892e97e
        - registry.redhat.io/ubi9/ubi-minimal@sha256:2f06ae0e6d3d9c4f610d32c480338eef474867f435d8d28625f2985e8acde6e8
        - registry.redhat.io/openshift-pipelines/pipelines-operator-bundle@sha256:5b51ef76aa2651d745a676e394fce6a7b0f3c2a6d09573613d7d3ed168210e59
        - registry.redhat.io/openshift-pipelines/pipelines-results-watcher-rhel9@sha256:15e01aa22bc0e014cf90374a49deb91b8152647341fc896a7fb87a1e9e861096
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-webhook-rhel9@sha256:861f4c3f3521534ee147bbd5796277414944ded0bcd2733385ee043ef263578e
        - registry.redhat.io/rhel9/skopeo@sha256:a65a413f8a2864389a09dc750690d97afbcdc5c70821e0f85e99e8adba7954e0
        - registry.redhat.io/openshift-pipelines/pipelines-console-plugin-rhel9@sha256:2f44e1d6488bdadcfc31613e6a742bfb96ad81a58e07410230d2d7d369475bf3
        - registry.redhat.io/openshift-pipelines/pipelines-events-rhel9@sha256:8861badee5348098e96041f9a120425cf280bb5c856121ce606f44a66d9e8ca6
        - registry.redhat.io/openshift-pipelines/pipelines-manual-approval-gate-controller-rhel9@sha256:399dbb9b769940bc603350bd681dd45237e8226e2bb52ef3540c9dfd73a64bd6
        - registry.redhat.io/openshift-pipelines/pipelines-results-api-rhel9@sha256:29cfb42a1a4f73253b6d708040ad3d6e6ef2b0dba267b3596a05ffd95aa86d84
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-controller-rhel9@sha256:c7870e1a5297ec0f26532f16f032b3a85cc6a763791315db2f9c47d248ad6a93
        - registry.redhat.io/openshift-pipelines/pipelines-workingdirinit-rhel9@sha256:a84efa1a4ecf17aaae654fadc356c8f8c361ea468a622c31b7c5e085225a187f
        - registry.redhat.io/openshift-pipelines/pipelines-webhook-rhel9@sha256:9f94f3906f6137861a8ec4f32efa4893169f12cc6dd4d287a7ad5572165f3440
        - registry.redhat.io/openshift-pipelines/pipelines-hub-api-rhel9@sha256:cb6664ff4c4d613b6cc0500418c2cebee3d1b65f9ed9f6dc423256b3d16bbe59
        - registry.redhat.io/rhel9/postgresql-13@sha256:36647bd6d50d2e0e9c99ecf190bd515577c7ce9476e49d927c4d4065011e3441
        - registry.redhat.io/openshift-pipelines/pipelines-cli-tkn-rhel9@sha256:dccbf3d518cb06e4ad170e6a46ccf4f4c0a1ccca523f1520c97897a04edf4254
        - registry.redhat.io/openshift-pipelines/pipelines-pruner-controller-rhel9@sha256:6b707dd3bb4053d7c81a17305079b75717bdbd2015219b7e6b02e65a950ac653
        - registry.redhat.io/rhel9/buildah@sha256:18453ab0a62154283aaf4c45efd7543d1c8ecca1aebae46dedc7ddc0f410b232
        - registry.redhat.io/openshift-pipelines/pipelines-entrypoint-rhel9@sha256:0e9d28f1ef4f3348349489bf813c20e249a10d2735c409dccf8067e082ef0b4d
        - registry.redhat.io/openshift-pipelines/pipelines-hub-ui-rhel9@sha256:cbff2c3468f239276802e0a3a98301386ae7a98b183c4ec5b83f4b30ccde56cf
        - registry.redhat.io/openshift-serverless-1/kn-client-kn-rhel8@sha256:0fa6d15d38601f266347cdd098e80bec9893f7e6b06e84efc4a8c50b3ff3c6cc
        - registry.redhat.io/openshift-pipelines/pipelines-operator-webhook-rhel9@sha256:cba1718306397fc60e1d6d468c92ea133188229f57a76f9b00eb8edd22cec5c3
        - registry.redhat.io/openshift-pipelines/pipelines-sidecarlogresults-rhel9@sha256:53073fe914d889df95faa882ed180e05c4daee5aec054452229136f6a742824a
        - registry.redhat.io/openshift-pipelines/pipelines-cache-rhel9@sha256:a6da589eb9c40c62e06c64f3d34578053328bef388325e8927872cd75c4ebe29
        - registry.redhat.io/openshift-pipelines/pipelines-chains-controller-rhel9@sha256:f00aad4959294229b0202840d088d03c57b74143d84cda14bc7e5e556f29905c
        - registry.redhat.io/openshift-pipelines/pipelines-serve-tkn-cli-rhel9@sha256:115eea1a5ca87f3b6b72db1df05b7386bf73dc70c9c2e4dc5e1a66700d960c37
        - registry.redhat.io/openshift-pipelines/pipelines-operator-proxy-rhel9@sha256:62f49f54ea7df348332337fa33e073efb5b1a21a99210c38d8a0c641d51b3028
        - registry.redhat.io/openshift-pipelines/pipelines-pipelines-as-code-cli-rhel9@sha256:cc0ab5bf0b54686e936bc92d1d23151ef00e52f21e363bb02873c01638fce367
        - registry.redhat.io/source-to-image/source-to-image-rhel9@sha256:bc10e7d6122ede5cf4f2882c200447683255465a1080e826761e90bfb983506e
        - registry.redhat.io/openshift-pipelines/pipelines-triggers-core-interceptors-rhel9@sha256:4247414a2838e10a4597cfd4d41a43f631d2399ada96c735eff5d7a308dad0ac
        version: 1.20.2
      entries:
      - name: openshift-pipelines-operator-rh.v1.20.2
        version: 1.20.2
      - name: openshift-pipelines-operator-rh.v1.20.1
        version: 1.20.1
      - name: openshift-pipelines-operator-rh.v1.20.0
        version: 1.20.0
      name: pipelines-1.20
    defaultChannel: latest
    packageName: openshift-pipelines-operator-rh
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: ScaleOps
      provider-url: https://scaleops.com
    name: scaleops-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: scaleops-operator.v1.26.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "analysis.scaleops.sh/v1",
                "kind": "ScaleOps",
                "metadata": {
                  "name": "scaleops",
                  "namespace": "scaleops-system"
                },
                "spec": {
                  "scaleopsToken": "${SCALEOPS_TOKEN}"
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
          createdAt: "2026-01-06T18:53:17Z"
          description: |-
            ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

            ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

            Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

            Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

            Contact [us](mailto:team@scaleops.com) to start your free trial today
          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: "true"
          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.skipRange: <1.26.11
          operators.openshift.io/valid-subscription: Contact ScaleOps for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://scaleops.com
          support: ScaleOps Support support@scaleops.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: This will install an instance of the ScaleOps Platform on
              your cluster
            displayName: ScaleOps Platform
            kind: ScaleOps
            name: scaleops.analysis.scaleops.sh
            version: v1
        description: |-
          ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

          ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

          Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

          Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

          Contact [us](mailto:team@scaleops.com) to start your free trial today
        displayName: ScaleOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vertical scaling
        - horizontal scaling
        - node optimization
        - application runtime
        links:
        - name: ScaleOps
          url: https://scaleops.com
        maintainers:
        - email: support@scaleops.com
          name: ScaleOps
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ScaleOps
          url: https://scaleops.com
        relatedImages:
        - registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
        - registry.connect.redhat.com/scaleops-sh/scaleops-gpu@sha256:350e8df5a36e8f47e0055a703331c29da3c8fa9679a629a1dffb620d4414bf4e
        - registry.connect.redhat.com/scaleops-sh/scaleops-operator-bundle@sha256:d5e4258cb2319901e62d3a15b9a6304495ab6170797244793a6df374d6d35321
        - registry.connect.redhat.com/scaleops-sh/scaleops-sh@sha256:e2f3b6e44e5050b9acd255cfdc4b9563ae5449ce547f30ec37c97f4c5083dcf7
        version: 1.26.11
      entries:
      - name: scaleops-operator.v1.26.11
        version: 1.26.11
      - name: scaleops-operator.v1.26.10
        version: 1.26.10
      - name: scaleops-operator.v1.26.9
        version: 1.26.9
      - name: scaleops-operator.v1.26.8
        version: 1.26.8
      name: stable-v1
    - currentCSV: scaleops-operator.v1.26.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "analysis.scaleops.sh/v1",
                "kind": "ScaleOps",
                "metadata": {
                  "name": "scaleops",
                  "namespace": "scaleops-system"
                },
                "spec": {
                  "scaleopsToken": "${SCALEOPS_TOKEN}"
                }
              }
            ]
          capabilities: Basic Install
          categories: Application Runtime
          containerImage: registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
          createdAt: "2026-01-06T18:53:17Z"
          description: |-
            ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

            ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

            Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

            Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

            Contact [us](mailto:team@scaleops.com) to start your free trial today
          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: "true"
          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.skipRange: <1.26.11
          operators.openshift.io/valid-subscription: Contact ScaleOps for subscription
            information.
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://scaleops.com
          support: ScaleOps Support support@scaleops.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: This will install an instance of the ScaleOps Platform on
              your cluster
            displayName: ScaleOps Platform
            kind: ScaleOps
            name: scaleops.analysis.scaleops.sh
            version: v1
        description: |-
          ScaleOps is the industry-first Kubernetes Optimization Platform that automatically adjusts Compute Resources to changes in real-time, streamlining a new Kubernetes experience for engineering teams.

          ScaleOps eliminates 80% of Kubernetes cloud spending, frees engineers from repeated ongoing configurations, and proactively ensures SLAs are always achieved.

          Installation takes only 2 minutes, and value is provided immediately. Starting from read-only recommendations to continuous and automatic pod optimization during runtime with zero disruption.

          Battle-tested on some of the most critical production clusters in full automation mode. Trusted by industry leaders, such as Wiz, Outbrain, SentinelOne, Outreach, Cato Networks, and many others!

          Contact [us](mailto:team@scaleops.com) to start your free trial today
        displayName: ScaleOps
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - vertical scaling
        - horizontal scaling
        - node optimization
        - application runtime
        links:
        - name: ScaleOps
          url: https://scaleops.com
        maintainers:
        - email: support@scaleops.com
          name: ScaleOps
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: ScaleOps
          url: https://scaleops.com
        relatedImages:
        - registry.connect.redhat.com/scaleops-sh/scaleops-gpu@sha256:350e8df5a36e8f47e0055a703331c29da3c8fa9679a629a1dffb620d4414bf4e
        - registry.connect.redhat.com/scaleops-sh/scaleops-operator-bundle@sha256:d5e4258cb2319901e62d3a15b9a6304495ab6170797244793a6df374d6d35321
        - registry.connect.redhat.com/scaleops-sh/scaleops-sh@sha256:e2f3b6e44e5050b9acd255cfdc4b9563ae5449ce547f30ec37c97f4c5083dcf7
        - registry.connect.redhat.com/scaleops-sh/operator@sha256:68cd0364b8c83db35c0cef4325eb08dab1741c251f7ef24997d20ac7d1f58eb3
        version: 1.26.11
      entries:
      - name: scaleops-operator.v1.26.11
        version: 1.26.11
      - name: scaleops-operator.v1.26.10
        version: 1.26.10
      - name: scaleops-operator.v1.26.9
        version: 1.26.9
      - name: scaleops-operator.v1.26.8
        version: 1.26.8
      name: stable-v1.26
    defaultChannel: stable-v1.26
    packageName: scaleops-operator
    provider:
      name: ScaleOps
      url: https://scaleops.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      pod-security.kubernetes.io/audit: privileged
      pod-security.kubernetes.io/enforce: privileged
      pod-security.kubernetes.io/warn: privileged
      provider: NVIDIA Corporation
      provider-url: ""
    name: gpu-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gpu-operator-certified.v25.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "cdi": {
                    "enabled": true
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "kernelModuleType": "auto",
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "secretName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": []
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "secretName": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
          createdAt: Wed Dec 3 14:12:01 PST 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <25.10.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:5c4e61f7ba83d7a64ff2523d447c209ce5bde1ddc79acaf1f32f19620b4912d6
        - nvcr.io/nvidia/driver@sha256:ef9856ae8491b376364df1f0cad388bcf9983bd2b6c78000523c13536cf828c3
        - nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
        - nvcr.io/nvidia/cuda@sha256:d19fe621624c4eb6ac931b8558daa3ecc0c3f07f1e2a52e0267e083d22dceade
        - nvcr.io/nvidia/k8s-device-plugin@sha256:50ac011ab941ab0140d52f56aa0e2fdc553bca96836ab3b26be394fc823fd9e7
        - nvcr.io/nvidia/driver@sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:119de9a331a47203858b99901f44d0c4a8052961b4e60327f4b100d0ab8c9df0
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:10acae5f724b07faa6e6c7716f3342d3cf2306a2c22971825e1a23753c21e8c3
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:7c0ac4430bb0a5868b7404a0e06c47e02b0375b61aadd614385ad0bc2d43815a
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:c549346eb993fda62e9bf665aabaacc88abc06b0b24e69635427d4d71c2d5ed4
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:098c01e11589e08ede9ffb3002d1c3dff424f0f0c5d1bfcbfd54a359073f16dd
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:ef2a0ef6bbf9c43529da3730974de9d51b8436c2314a68e718d437e6ab7c4b58
        - nvcr.io/nvidia/driver@sha256:35359117c5cdf786694d2fdba2ba038e7f673c5d0243c9ed4dc6cdaf6e675e4a
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:8e0803d2f29776cd4cc0501381a20a0b04b2da507a794d66a15894c57beaadb5
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:99187d6b023689f50cf065c77b96ba5aacfa26a618854608a1e31da5e826b765
        version: 25.10.1
      entries:
      - name: gpu-operator-certified.v25.10.1
        version: 25.10.1
      - name: gpu-operator-certified.v25.10.0
        version: 25.10.0
      - name: gpu-operator-certified.v25.3.4
        version: 25.3.4
      - name: gpu-operator-certified.v25.3.3
        version: 25.3.3
      - name: gpu-operator-certified.v25.3.2
        version: 25.3.2
      - name: gpu-operator-certified.v25.3.1
        version: 25.3.1
      - name: gpu-operator-certified.v25.3.0
        version: 25.3.0
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: stable
    - currentCSV: gpu-operator-certified.v1.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "dcgmExporter": {
                    "config": {
                      "name": ""
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                  },
                  "devicePlugin": {
                  },
                  "driver": {
                    "enabled": true,
                    "use_ocp_driver_toolkit": true,
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "gfd": {
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "operator": {
                    "defaultRuntime": "crio",
                    "deployGFD": true,
                    "initContainer": {
                    }
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:c7f9074c1a7f58947c807f23f2eece3a8b04e11175127919156f8e864821d45a
          createdAt: Mon Apr 18 10:06:40 PDT 2022
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=v1.9.0 <v1.10.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://coreos.com/blog/introducing-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:5b16056257acc51b517d9cdb1da3218693cefc214af93789e6e214fd2b4cacf1
        - nvcr.io/nvidia/gpu-operator@sha256:c7f9074c1a7f58947c807f23f2eece3a8b04e11175127919156f8e864821d45a
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:67c48a8370c34f68b46eb57339e87d01c04198368a0423553fab7565c862c4df
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:60b1d25ebb3aada94985e359bb059d4491bf0148ac75d51b68a461670659e429
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:ac13256c295126b854a07421c45de0721e7a57974b38b3e66eb1fdc3a4e29f2e
        - nvcr.io/nvidia/driver@sha256:f99b66855e92451a59a722355dd52bf97eb985cc8a647172273de8178aeaa93c
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:9abb063e6b74085728fead5ed5bbe3bd7b3f57de60e87f6b964bba2d46f1bc67
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:24d804e8f005d7aeca8343aa13e5f92295d8642a4c47cb24e3ac86a22543bc37
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:e8f06ce53415e8572f633b2169289d973993cb1e49d4dcc686ac134194d88f33
        - nvcr.io/nvidia/cuda@sha256:7f0f7dc8c993a86865d4d9f9b0e36d113ea15603d5d5279d2879fa2bc21c8236
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:c2e3d0fe41a0d227dbb70caec03c780cc76317515e5ab3875f31d50c63f41c66
        - nvcr.io/nvidia/k8s-device-plugin@sha256:aa95c16106280e36a5e32d2fe4c66e8b70f5a114860c6f4ed5b1a4085c63601b
        version: 1.10.1
      entries:
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v1.10
    - currentCSV: gpu-operator-certified.v1.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    },
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "dcgmExporter": {
                    "config": {
                      "name": ""
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                  },
                  "devicePlugin": {
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": true
                  },
                  "vgpuDeviceManager": {
                    "enabled": true,
                    "config": {
                      "name": "vgpu-devices-config",
                      "default": "default"
                      }
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:53180f81fb7e1e4bcd49a556bc6285c2262abbab8083b29d2688b02d4200dd2d
          createdAt: Thu Aug  4 11:57:56 PDT 2022
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=v1.9.0 <v1.11.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/driver@sha256:b8799e7397fae5a27446737443091eed05b918816f53c400a48be71125ee22e8
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:b90a519e9f30fbc013e1806bc081268724e9e80b4035c67c167ab3b43a37704a
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:3128cd81b56975643c1c88c6ceff6d72e918a67ec2d6a5a606b6e04753c5b0ce
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:3804e2b03c44d25dd410e3882b7fb6d1fde41f55110d7702af47136b042a63ff
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:2d6e86db0e2b0db64c00566938e1851e25d4bb1019b1e7b696e2b199cba33397
        - nvcr.io/nvidia/driver@sha256:cf8ce04907d0e8decf90a8dccfa6134af9c39509d2f8a21c355ed71223acacdb
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:e88e610d09f1a7528ab32cb54259aee340eba2b2bf66b92a28157626daadc82d
        - nvcr.io/nvidia/gpu-operator@sha256:53180f81fb7e1e4bcd49a556bc6285c2262abbab8083b29d2688b02d4200dd2d
        - nvcr.io/nvidia/driver@sha256:6e2902d73c54cf57bec94edf166d206cfeb0b948b5aab70800ccbe025064b3a1
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:16ee5b1a8d9217f761c40a06c7ae598cbc893fbc35d99ff9b84fa886ea6b9b37
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:f48e8b430248a9cadf716a9211bb0050d4a663d1f1386ea107e72917f82e5b5f
        - nvcr.io/nvidia/cuda@sha256:4400b56f81095b24fc9dde93ad7ad7d0ca6a7e9736c4c7f1d4e2bcbf0afbe45c
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:39127d04c9faff3f22068dcf463ed48d02be684cd18e3f14db843bddbdd783a7
        - nvcr.io/nvidia/k8s-device-plugin@sha256:7a0ccbcbe8d379bfc441e06504eb45d0d433a37e2a9e6dde83d13347296ebe81
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:10d825ccbfcf87f8c74f841fa89ae345f2d381fb47a5b2b31f61b72ebbbb0915
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:8490d555131a57a11311561667ea9ec8cf554a399d2492a6f9e6677c01ec4b9a
        - nvcr.io/nvidia/driver@sha256:8c9fabc1cd773e9526eb7e8526084f065f6cca9d0fd8dc2a672a0bb717f1cc60
        version: 1.11.1
      entries:
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v1.11
    - currentCSV: gpu-operator-certified.v22.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:54d5846c0291db621931a8544c9cb6437512470a93278ca9130ba73f2e2f0055
          createdAt: Mon Jan 30 15:43:24 PST 2023
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=1.9.0 <22.9.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:efb88937f73434994d1bbadc87b492a1df047aa9f8d6e9f5ec3b09536e6e7691
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:50c2a2b998e467c82716efa79fe136aa6f7ea95fd23576cf384d251bb9628640
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:9177a0ae30798b42d0387f6a20cd3ce3cd1799a91b7866bf812368764b05b1af
        - nvcr.io/nvidia/driver@sha256:f250d1e4989fd4821e81bad9227eeeaa531ca8810f3a40e996f1ca2af7945f96
        - nvcr.io/nvidia/driver@sha256:268c26781c46b36fe691638e807eb5c3a2cd077029ddb095ac75264adac04925
        - nvcr.io/nvidia/driver@sha256:c5a62bc2a6cce339798e4b7cf9cec47e289c2d30b40f451ba8c9e958a68e3e55
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:bec9f026d9b3d9404c78d6091817a359015c6a7aa411735b34138c1518853b5d
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:0d47dad29d2ef445b301c5c64717758eed43a606345b79f97bce2e64b40a91a8
        - nvcr.io/nvidia/gpu-operator@sha256:54d5846c0291db621931a8544c9cb6437512470a93278ca9130ba73f2e2f0055
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:9a00cdfdddb73327ef8e8e0fa60e50926a388d380c551bba6a3d3012be40401d
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:c3cf59dd5d6160eba5d816ade2e81b35ebb10f4884df67971f6ace36f8e6efc1
        - nvcr.io/nvidia/driver@sha256:f2ca4612f3418e0e3963be8c3771ffe463cdc1fc1b810437a3aad9d76bb6499d
        - nvcr.io/nvidia/k8s-device-plugin@sha256:9c17d3a907eb77eb8f7b4f3faf52d8352e4252af92003f828083f80d629bd2c3
        - nvcr.io/nvidia/driver@sha256:b860ef04cc6cd8c481810fa19bef7221071f5a3862640b2ad6c2704728dc77c8
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:808529c14a8873324096fbd1622fb895c4dc7f60c1cf9e3ded646f9a81d7b496
        - nvcr.io/nvidia/cuda@sha256:5f2a2d8977f2c59abe88394f05cc3c044194554f90994d8554b0e1117ab5900d
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:00f1476548fbed9ee01961443a73bf65396c2e8bb2b84426f949dd56cb4d14cd
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:64d757b4c80b910e64647a84a1d592fab2ea3313ff6dce30c25c3a08e180bd74
        version: 22.9.2
      entries:
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v22.9
    - currentCSV: gpu-operator-certified.v23.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "true"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:08ca33f491195b7ba867be1e6642b5ff8aff6a4b0b7cfc0ec87619252ccfddc7
          createdAt: Mon May 22 15:22:15 PDT 2023
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=1.9.0 <23.3.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:0d47dad29d2ef445b301c5c64717758eed43a606345b79f97bce2e64b40a91a8
        - nvcr.io/nvidia/gpu-operator@sha256:08ca33f491195b7ba867be1e6642b5ff8aff6a4b0b7cfc0ec87619252ccfddc7
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:f10170b076badda8f669af8b0f7b47eb5470abaf35a67dda9c4e182d66138177
        - nvcr.io/nvidia/k8s-device-plugin@sha256:80871275fbcf888d4683c58638c7a75b3c46091040cafc6210a8c93513adb146
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:2d7e32e3d30c2415b4eb0b48ff4ce5a4ccabaf69ede0486305ed51d26cab7713
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:5489125ceae5864280e4d6a9ab52ab0f650b3179349a7298c4a204feb60b661a
        - nvcr.io/nvidia/cuda@sha256:62d845b4bd6de4be65f0b6daaae6831c29d4529955f99db5d26f5f7179106285
        - nvcr.io/nvidia/driver@sha256:3df118f2330e95db3c76173cca35e542b2da120ec0bb8f6aff83c4c96c0c2daf
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:708291528f26c70c561745967a1200edcb2f984687f749a49a2860fee580423f
        - nvcr.io/nvidia/driver@sha256:917f92c589c3124dba54f66f89c44b93b0beaf418f01d0da6a546e1670fdf3a9
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:03e43d6b1460cadb33509d5ee07a5e27603ab89d7ec35f67d8a51bb78745b463
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:21dfc9c56b5f8bce73e60361d6e83759c3fa14dc6afc2d5ebdf1b891a936daf6
        - nvcr.io/nvidia/driver@sha256:73b8928a1b1fb650d2ca8d6451a7d7c551fd0509f7511c2fd5bfdcef83ae4f5d
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:cab21c93987a5c884075efe0fb4a8abaa1997e1696cbc773ba69889f42f8329b
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:8f03f74076b5aa6672a5d75a398fa7515fcde57fdb1cf8079e015b3366efd3b5
        - nvcr.io/nvidia/driver@sha256:8ff0ee88fe6c4ff031ef642593f93625bfd9a48fe7be8a79a5c2736117e36941
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:84ce86490d0d313ed6517f2ac3a271e1179d7478d86c772da3846727d7feddc3
        version: 23.3.2
      entries:
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v23.3
    - currentCSV: gpu-operator-certified.v23.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": false,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:d2e0f8bd86e8e9f2ff3514e113657658584ca4a2d0b82dac2e47364cc0b30648
          createdAt: Thu Aug 31 12:22:44 PDT 2023
          description: Automate the management and monitoring of NVIDIA GPUs.
          olm.skipRange: '>=1.9.0 <23.6.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:878a6162a4fa0b61dae02c7cfc13ba4d28bb06f92fd62d0c521633ab507d675a
        - nvcr.io/nvidia/driver@sha256:3382e254056f28831767bc6729bc2594353a5ff2a28fe9f2d94396c597bb23d8
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:bb845160b32fd12eb3fae3e830d2e6a7780bc7405e0d8c5b816242d48be9daa8
        - nvcr.io/nvidia/driver@sha256:b4517810f2884f345b4f2323e83e41d28f54cdc6e2caf0690bb7ed4f3947dbcc
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:a229beba8540549c234a046e975bf4bf8c50d521dfe551af56f6e042b25ec017
        - nvcr.io/nvidia/cuda@sha256:64c0ff5fd4a27d4b1d46378634f7a7398c75f87c18c70c988dde18910d461560
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:0379c59b43e11861837787a0da22e70b528718373bb10de9e8b7752849bd4e7a
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:9484110986c80ab83bc404066ca4b7be115124ec04ca16bce775403e92bfd890
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:bf06c8ad380a36e5014607bd3ab05b80e8e5e7e77d23d0dd89fe53a5564152fa
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:00a91252be8e62da6f28cdf1ec3721f2e945ae296938b0b925ef9db2bf6dcc8b
        - nvcr.io/nvidia/driver@sha256:bbdc4415fe2e71eeea1b8a6e50ee562e11704dabb46db1db4aea807102886a35
        - nvcr.io/nvidia/k8s-device-plugin@sha256:f1617c3fe54fd9f6d4a00358e5da1a9fa9e8963a4ef6b3ed06f47d4971ddff4b
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:d1c636cc17155c4764d331e050f9bf3ec9f39f6ec6ec14e972179b185ea9f5b8
        - nvcr.io/nvidia/gpu-operator@sha256:d2e0f8bd86e8e9f2ff3514e113657658584ca4a2d0b82dac2e47364cc0b30648
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:60086c33226bbe7f04b611c20d308fed5825226f8a0a5635bc58d8ed55cc08a5
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:b30f5c64791dc5406b57eaf51ac40195dc1051a18cd1f38fd0a43c65f1d6dba9
        version: 23.6.1
      entries:
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v23.6
    - currentCSV: gpu-operator-certified.v23.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:7481a3697783dcdca9ae78e7b548a6900e86ea33ab49ec14f0ba55db2fdb1a2e",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:3988b3b570cf65b0d338cb29bd24b0b9bf1885e1563fbb398ef23cba0b59e6bb
          createdAt: Wed Mar 6 16:43:36 PDT 2024
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <23.9.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:387021553dfb16aab633228d42f63f04fa932b4f46add07527f296dfe97e5148
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:5339c41013727fa5dd3ae5bc1d51eb90e02e5baa85d4039b1efdde30baeae1ae
        - nvcr.io/nvidia/gpu-feature-discovery@sha256:8d1ec78f2b1ddb7f0c47453d0427231190747bda411733a7dd0c8f5196f09e9c
        - nvcr.io/nvidia/gpu-operator@sha256:3988b3b570cf65b0d338cb29bd24b0b9bf1885e1563fbb398ef23cba0b59e6bb
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:a67d8e92861a2dce5649105c07561e4422e9fe4ba81a6525dc0d70a7ef85f9c0
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:925f4a47710e4318ed457930f5406174c1f6d28b1bf6b1bc310687fec0fde712
        - nvcr.io/nvidia/cuda@sha256:714547d54e5fe4191019a1e5f1daffc7fab7481b619b79c378541dafc76c9e5d
        - nvcr.io/nvidia/k8s-device-plugin@sha256:bb81ae8d034d1e1c6a342091a5f1dda5884dd43ab47e96624487a133d1edd4b3
        - nvcr.io/nvidia/driver@sha256:7481a3697783dcdca9ae78e7b548a6900e86ea33ab49ec14f0ba55db2fdb1a2e
        - nvcr.io/nvidia/driver@sha256:56c79482582cdfbc58d3134e8672637c5bf05f328880f76898f526143d04c6af
        - nvcr.io/nvidia/driver@sha256:abda1ac56371d55917b96ff330109980f468e133c9d5705da0ef87429f14ccd7
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:59a3875e7a37eb370385e654184efa3a1b193c9ea352165818496b19cbe14aa4
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:9aefef081c3ab1123556374d2b15d0429f3990af2fbaccc3c9827801e1042703
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:6a05d6a1923fda756aed0dddf7ed23a83c30cf1e6c519fc39dd70c0309ec8257
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:27c44f4720a4abf780217bd5e7903e4a008ebdbcf71238c4f106a0c22654776c
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:011fb450af3fa2e8fe5d28d590e4c653631447bc23d149591ced3d89089c4f2c
        version: 23.9.2
      entries:
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v23.9
    - currentCSV: gpu-operator-certified.v24.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:96f25c67e5b1072d5981080e12d65ec37eb9ef2fc0494499416aa801b0a34da3",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:041e75a3df84039c2dbbd4b9d67763bd212138822dbb6dbc0008858c1c6eff8d
          createdAt: Tue Apr 30 14:18:26 PDT 2024
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <24.3.0'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:1532fc1351ca44f863feaaf54ba8810be7a62396f98dd292ccaf975fde31ce5b
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:d8774d6afd37110199512636172823ae8749e5ea2e13760f57c255a74f47018c
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:f0e4e14a3081417be8e6a5d855fb0cb69e1b63bc54a74f17e6d7084abe275588
        - nvcr.io/nvidia/gpu-operator@sha256:041e75a3df84039c2dbbd4b9d67763bd212138822dbb6dbc0008858c1c6eff8d
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:0c77725de8c42d248ed825453efd2e005f4900f4be384fd23084f6b721ddd0e0
        - nvcr.io/nvidia/driver@sha256:56c79482582cdfbc58d3134e8672637c5bf05f328880f76898f526143d04c6af
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:7798eb9b9424e09959fc808596f87bdb68ac5740174123c6646dee2166d3e7d2
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:ecb867c5787e44f1889b257e6c03b07748689a7b293c8f1affb1d4cb449b235c
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:2cc2119d20515f8ca7a61a0f3932578d69a45bcdea49e6c320a89c56f105e7d9
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:2edc1d4ed555830e70010c82558936198f5faa86fc29ecf5698219145102cfcc
        - nvcr.io/nvidia/driver@sha256:96f25c67e5b1072d5981080e12d65ec37eb9ef2fc0494499416aa801b0a34da3
        - nvcr.io/nvidia/driver@sha256:a836ccbe21da735aee1c39b81060ed5e2fdb4ffa339874baaf4634f1e9259f74
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:1ae0b923bc57f47bab046b50c50110f6914bbaffbfef704df34b3fe332db2e31
        - nvcr.io/nvidia/k8s-device-plugin@sha256:80674b19898ecf9ed6949e39674da769d6feeeb01bea54b914ef9ff502834f49
        - nvcr.io/nvidia/cuda@sha256:ae0623ec8634b6c88f815b88037763def160cbbac15013b77ddef257fc276c9a
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:2442fd2ec0ee29746abbced727c53741f017e8f3f615321c1ec42c1c3ffa0b12
        version: 24.3.0
      entries:
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v24.3
    - currentCSV: gpu-operator-certified.v24.6.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:858de27c152669f5a3cf4287406405b16dd5bb70c0373324eb735511997bb415",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:8e0969cffc030a89c4acd68e64d41dd54e3bce8a794106b178d4dbd636a07f1c
          createdAt: Wed Sep 25 08:25:16 PDT 2024
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <24.6.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/driver@sha256:858de27c152669f5a3cf4287406405b16dd5bb70c0373324eb735511997bb415
        - nvcr.io/nvidia/driver@sha256:07e11f85d54d49ec9648fb06e148b8d832ee1f9c3549a915eee853c9ef2949c2
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:fa72cc3e0b09510d71a097b92ee101e057f1c11e1cb363172bd26b2d94272417
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:15dab1273345df4a5844c4c761d064dbc4b592101251dc39174e597137123027
        - nvcr.io/nvidia/k8s-device-plugin@sha256:7ad2c9f71fe06f9f7745ac8635f46740fbdff4f11edd468addfab81afcdfa534
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:969147c01d63be5d1fe458f32f1cc0c7408cf3062531db91408e2fc57b4d8a67
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:7bcc188703f2fac630f7a4ff8960e6733ac3a29adf6a946533b796d9a27b8acf
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:33de74eb590f071403c17b6c210c02963245851971168bc0c07c06c100a9f376
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:ae63fac9a4057a7646f0cf0ee0566e8928529adde05c4c0a017cda0599e381b2
        - nvcr.io/nvidia/driver@sha256:a6d12fb5753f267dda25dfd38910f972bc632c006a24107fa50e20bba3642d7c
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:781fb47e264d9e0fbc8da5bd046e5e678316c866bc36ddd4b56d4eb0de682d5b
        - nvcr.io/nvidia/cuda@sha256:de5b598bca89850567c4c104411d66bb52f47c9179199e6a3be6829b7ac586a2
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:96380b95396b7f29d2ed2ec8ef1ad5a8bcf9f55051db723295dc0a20db845331
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:21f4c8b88716e8e6f732f9fb4c2efaef937c227491a8631c5e55036f80f39a4d
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:740abc3ff657545c10effd5354f09af525200ed9a1b7623f0c2e8c7bd9e4a4e2
        - nvcr.io/nvidia/gpu-operator@sha256:8e0969cffc030a89c4acd68e64d41dd54e3bce8a794106b178d4dbd636a07f1c
        version: 24.6.2
      entries:
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v24.6
    - currentCSV: gpu-operator-certified.v24.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "useOpenKernelModules": false,
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": [
                        {
                          "name": "WITH_WORKLOAD",
                          "value": "false"
                        }
                      ]
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:6fe74322562c726c8fade184d8c45ebae3da7b1ea0a21f0ff9dc42c66c65e692",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:92f5262bb4934e0ea29eb10ec0ad4fc293164f2f2f94d48a935922791abbfdac
          createdAt: Mon Jan 27 16:10:52 PST 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <24.9.2'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/driver@sha256:d55b57938866e538acc3a71ca32f8cf87e71c591abd4a34695ee428e7ec2fa73
        - nvcr.io/nvidia/gpu-operator@sha256:92f5262bb4934e0ea29eb10ec0ad4fc293164f2f2f94d48a935922791abbfdac
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:857f7669ae5ce2a43a3b5691fa970085098321ef8e90a896fa8dda3dee5b1d2b
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:b072c5793be65eee556eaff1b9cbbd115a1ef29982be95b2959adfcb4bc72382
        - nvcr.io/nvidia/driver@sha256:6fe74322562c726c8fade184d8c45ebae3da7b1ea0a21f0ff9dc42c66c65e692
        - nvcr.io/nvidia/k8s-device-plugin@sha256:7089559ce6153018806857f5049085bae15b3bf6f1c8bd19d8b12f707d087dea
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:34eab99d7992a57c35803ec5e0afd538d16e997341e951fef4c4019afb08793e
        - nvcr.io/nvidia/driver@sha256:38b66a8d44cab9e2c62da9e101f32cd9dbcb5e02d8e57b47671284d374ca3695
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:b897e25e03133513f9afdb5abe38cbf0f2ac0556c27518d9d80e792eb07ecf28
        - nvcr.io/nvidia/cuda@sha256:b3b340847db9abd0c39703278f5638d3e65e1369e9a526a19b3138d5a6563527
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:40830d3561c14743f484d45b498141f9e86b1308e16fae3978110783927264ab
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:d934033f9ff89087d555850eb1da150eaaa27b11e5ad21db1b874b8bc0b8d35b
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:e8398b2451996e5c64fc3855e7a3c93b667a85f69c0e259049d3b0012c21545d
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:4ffa1cd2a6497eb647a89ed259dcfb007554737b9d80f69bc173a2c3cd72a1da
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:7edd7a0413dcb39b6e3bcefaf06812f3293c8e480ca10783e821a561ed686200
        - nvcr.io/nvidia/driver@sha256:026f8f2d29b7058ecaaa5b98666e28e1b3646b73e7d7cda3dc8026d47a929152
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:cf39d78ced7fb5727a9668ee2cd44b14bb7a23a95b83d5464b7d755740e02121
        version: 24.9.2
      entries:
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v24.9
    - currentCSV: gpu-operator-certified.v25.10.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "cdi": {
                    "enabled": true
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "kernelModuleType": "auto",
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "secretName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": []
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "secretName": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
          createdAt: Wed Dec 3 14:12:01 PST 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <25.10.1'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:c549346eb993fda62e9bf665aabaacc88abc06b0b24e69635427d4d71c2d5ed4
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:119de9a331a47203858b99901f44d0c4a8052961b4e60327f4b100d0ab8c9df0
        - nvcr.io/nvidia/gpu-operator@sha256:634471cdfedcc3bd6b4412a905a9fbc9a9bf91df7f436aa00454b088d087c60a
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:99187d6b023689f50cf065c77b96ba5aacfa26a618854608a1e31da5e826b765
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:10acae5f724b07faa6e6c7716f3342d3cf2306a2c22971825e1a23753c21e8c3
        - nvcr.io/nvidia/driver@sha256:838f50e304e8880851bae205edc6b781a251b5912267a2eed21661211db8e087
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:7c0ac4430bb0a5868b7404a0e06c47e02b0375b61aadd614385ad0bc2d43815a
        - nvcr.io/nvidia/driver@sha256:35359117c5cdf786694d2fdba2ba038e7f673c5d0243c9ed4dc6cdaf6e675e4a
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:ef2a0ef6bbf9c43529da3730974de9d51b8436c2314a68e718d437e6ab7c4b58
        - nvcr.io/nvidia/driver@sha256:ef9856ae8491b376364df1f0cad388bcf9983bd2b6c78000523c13536cf828c3
        - nvcr.io/nvidia/cuda@sha256:d19fe621624c4eb6ac931b8558daa3ecc0c3f07f1e2a52e0267e083d22dceade
        - nvcr.io/nvidia/k8s-device-plugin@sha256:50ac011ab941ab0140d52f56aa0e2fdc553bca96836ab3b26be394fc823fd9e7
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:098c01e11589e08ede9ffb3002d1c3dff424f0f0c5d1bfcbfd54a359073f16dd
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:8e0803d2f29776cd4cc0501381a20a0b04b2da507a794d66a15894c57beaadb5
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:5c4e61f7ba83d7a64ff2523d447c209ce5bde1ddc79acaf1f32f19620b4912d6
        version: 25.10.1
      entries:
      - name: gpu-operator-certified.v25.10.1
        version: 25.10.1
      - name: gpu-operator-certified.v25.10.0
        version: 25.10.0
      - name: gpu-operator-certified.v25.3.4
        version: 25.3.4
      - name: gpu-operator-certified.v25.3.3
        version: 25.3.3
      - name: gpu-operator-certified.v25.3.2
        version: 25.3.2
      - name: gpu-operator-certified.v25.3.1
        version: 25.3.1
      - name: gpu-operator-certified.v25.3.0
        version: 25.3.0
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v25.10
    - currentCSV: gpu-operator-certified.v25.3.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nvidia.com/v1",
                "kind": "ClusterPolicy",
                "metadata": {
                  "name": "gpu-cluster-policy"
                },
                "spec": {
                  "operator": {
                    "defaultRuntime": "crio",
                    "use_ocp_driver_toolkit": true,
                    "initContainer": {
                    }
                  },
                  "sandboxWorkloads": {
                    "enabled": false,
                    "defaultWorkload": "container"
                  },
                  "driver": {
                    "enabled": true,
                    "useNvidiaDriverCRD": false,
                    "kernelModuleType": "auto",
                    "upgradePolicy": {
                      "autoUpgrade": true,
                      "drain": {
                        "deleteEmptyDir": false,
                        "enable": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "maxParallelUpgrades": 1,
                      "maxUnavailable": "25%",
                      "podDeletion": {
                        "deleteEmptyDir": false,
                        "force": false,
                        "timeoutSeconds": 300
                      },
                      "waitForCompletion": {
                        "timeoutSeconds": 0
                      }
                    },
                    "repoConfig": {
                      "configMapName": ""
                    },
                    "certConfig": {
                      "name": ""
                    },
                    "licensingConfig": {
                      "nlsEnabled": true,
                      "configMapName": ""
                    },
                    "virtualTopology": {
                      "config": ""
                    },
                    "kernelModuleConfig": {
                      "name": ""
                    }
                  },
                  "dcgmExporter": {
                    "enabled": true,
                    "config": {
                      "name": ""
                    },
                    "serviceMonitor": {
                      "enabled": true
                    }
                  },
                  "dcgm": {
                    "enabled": true
                  },
                  "daemonsets": {
                    "updateStrategy": "RollingUpdate",
                    "rollingUpdate": {
                      "maxUnavailable": "1"
                    }
                  },
                  "devicePlugin": {
                    "enabled": true,
                    "config": {
                      "name": "",
                      "default": ""
                    },
                    "mps": {
                      "root": "/run/nvidia/mps"
                    }
                  },
                  "gfd": {
                    "enabled": true
                  },
                  "migManager": {
                    "enabled": true
                  },
                  "nodeStatusExporter": {
                    "enabled": true
                  },
                  "mig": {
                    "strategy": "single"
                  },
                  "toolkit": {
                    "enabled": true
                  },
                  "validator": {
                    "plugin": {
                      "env": []
                    }
                  },
                  "vgpuManager": {
                    "enabled": false
                  },
                  "vgpuDeviceManager": {
                    "enabled": true
                  },
                  "sandboxDevicePlugin": {
                    "enabled": true
                  },
                  "vfioManager": {
                    "enabled": true
                  },
                  "gds": {
                    "enabled": false
                  },
                  "gdrcopy": {
                    "enabled": false
                  }
                }
              },
              {
                "apiVersion": "nvidia.com/v1alpha1",
                "kind": "NVIDIADriver",
                "metadata": {
                  "name": "gpu-driver"
                },
                "spec": {
                  "driverType": "gpu",
                  "repository": "nvcr.io/nvidia",
                  "image": "driver",
                  "version": "sha256:b6250c461c6226d5fb1383e3e8331e7e0bf07f9ed88a36988bbe5f6cc754d735",
                  "nodeSelector": {},
                  "manager": {},
                  "repoConfig": {
                    "name": ""
                  },
                  "certConfig": {
                    "name": ""
                  },
                  "licensingConfig": {
                    "nlsEnabled": true,
                    "name": ""
                  },
                  "virtualTopologyConfig": {
                    "name": ""
                  },
                  "kernelModuleConfig": {
                    "name": ""
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: AI/Machine Learning, OpenShift Optional
          certified: "true"
          containerImage: nvcr.io/nvidia/gpu-operator@sha256:2e86875d61c030a9bd348a18bde8c4caa3d0c430a1aac642086b9cb1b3e3b015
          createdAt: Thu Sep 18 18:11:36 PDT 2025
          description: Automate the management and monitoring of NVIDIA GPUs.
          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: "true"
          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.skipRange: '>=1.9.0 <25.3.4'
          operatorframework.io/suggested-namespace: nvidia-gpu-operator
          operators.operatorframework.io/builder: operator-sdk-v1.4.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          provider: NVIDIA
          repository: http://github.com/NVIDIA/gpu-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NVIDIADriver allows you to deploy the NVIDIA driver
            displayName: NVIDIADriver
            kind: NVIDIADriver
            name: nvidiadrivers.nvidia.com
            version: v1alpha1
          - description: ClusterPolicy allows you to configure the GPU Operator
            displayName: ClusterPolicy
            kind: ClusterPolicy
            name: clusterpolicies.nvidia.com
            version: v1
        description: |
          Kubernetes provides access to special hardware resources such as NVIDIA GPUs, NICs, Infiniband adapters and other devices through the [device plugin framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/). However, configuring and managing nodes with these hardware resources requires configuration of multiple software components such as drivers, container runtimes or other libraries which are difficult and prone to errors.
          The NVIDIA GPU Operator uses the [operator framework](https://cloud.redhat.com/blog/introducing-the-operator-framework) within Kubernetes to automate the management of all NVIDIA software components needed to provision and monitor GPUs. These components include the NVIDIA drivers (to enable CUDA), Kubernetes device plugin for GPUs, the NVIDIA Container Runtime, automatic node labelling and NVIDIA DCGM exporter.
          Visit the official site of the [GPU Operator](https://github.com/NVIDIA/gpu-operator) for more information. For getting started with using the GPU Operator with OpenShift, see the instructions [here](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/openshift/contents.html).
        displayName: NVIDIA GPU Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - gpu
        - cuda
        - compute
        - operator
        - deep learning
        - monitoring
        - tesla
        maintainers:
        - email: operator_feedback@nvidia.com
          name: NVIDIA
        maturity: stable
        provider:
          name: NVIDIA Corporation
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-mig-manager@sha256:3191cc0684e92d655e72fe9faf3da95fe6b8a6c2eb4ad396f75ba9b98c021aaf
        - nvcr.io/nvidia/cloud-native/gdrdrv@sha256:5c4e61f7ba83d7a64ff2523d447c209ce5bde1ddc79acaf1f32f19620b4912d6
        - nvcr.io/nvidia/cloud-native/dcgm@sha256:66c3d68ca2b35d47b5562300a10ff8711b953ba3a15df7dbc409d81613ebe5d0
        - nvcr.io/nvidia/driver@sha256:b6250c461c6226d5fb1383e3e8331e7e0bf07f9ed88a36988bbe5f6cc754d735
        - nvcr.io/nvidia/k8s/dcgm-exporter@sha256:6bb786c41fa7b1a6238c023566fdeaeeea3ba842a8daec015a7bd85a8037b249
        - registry.connect.redhat.com/nvidia/gpu-operator-bundle@sha256:cbd83ff041c3e6e9a5d76dc2cfa1894893c5e2f92583b16df9c418232cbce78c
        - nvcr.io/nvidia/driver@sha256:44422f10e899d3419fbd611a02fc1c6127e071a2067bd36e3debb043bf251de0
        - nvcr.io/nvidia/cloud-native/k8s-driver-manager@sha256:b689dfb7806ae51b0072620b47c26114f05477e8ad9725892ee10366e5d93d8d
        - nvcr.io/nvidia/cuda@sha256:d19fe621624c4eb6ac931b8558daa3ecc0c3f07f1e2a52e0267e083d22dceade
        - nvcr.io/nvidia/k8s/container-toolkit@sha256:51c8f71d3b3c08ae4eb4853697e3f8e6f11e435e666e08210178e6a1faf8028f
        - nvcr.io/nvidia/cloud-native/vgpu-device-manager@sha256:c22dc67465c33d2f17932931229e61a6e7d9e32c5ed2ecefe8d10e873ffedfeb
        - nvcr.io/nvidia/driver@sha256:43aa99352e1dc47e9218f36340ae6328a6282ed1e7e9a61b4204475e980230ef
        - nvcr.io/nvidia/gpu-operator@sha256:2e86875d61c030a9bd348a18bde8c4caa3d0c430a1aac642086b9cb1b3e3b015
        - nvcr.io/nvidia/k8s-device-plugin@sha256:3c54348fe5a57e5700e7d8068e7531d2ef2d5f3ccb70c8f6bac0953432527abd
        - nvcr.io/nvidia/kubevirt-gpu-device-plugin@sha256:119de9a331a47203858b99901f44d0c4a8052961b4e60327f4b100d0ab8c9df0
        - nvcr.io/nvidia/cloud-native/gpu-operator-validator@sha256:619e7bf48168d76a7e087c3bf6190fda9b10449c9839309fa4f9ed5b8a9e8804
        version: 25.3.4
      entries:
      - name: gpu-operator-certified.v25.3.4
        version: 25.3.4
      - name: gpu-operator-certified.v25.3.3
        version: 25.3.3
      - name: gpu-operator-certified.v25.3.2
        version: 25.3.2
      - name: gpu-operator-certified.v25.3.1
        version: 25.3.1
      - name: gpu-operator-certified.v25.3.0
        version: 25.3.0
      - name: gpu-operator-certified.v24.9.2
        version: 24.9.2
      - name: gpu-operator-certified.v24.9.1
        version: 24.9.1
      - name: gpu-operator-certified.v24.9.0
        version: 24.9.0
      - name: gpu-operator-certified.v24.6.2
        version: 24.6.2
      - name: gpu-operator-certified.v24.6.1
        version: 24.6.1
      - name: gpu-operator-certified.v24.6.0
        version: 24.6.0
      - name: gpu-operator-certified.v24.3.0
        version: 24.3.0
      - name: gpu-operator-certified.v23.9.2
        version: 23.9.2
      - name: gpu-operator-certified.v23.9.1
        version: 23.9.1
      - name: gpu-operator-certified.v23.9.0
        version: 23.9.0
      - name: gpu-operator-certified.v23.6.1
        version: 23.6.1
      - name: gpu-operator-certified.v23.6.0
        version: 23.6.0
      - name: gpu-operator-certified.v23.3.2
        version: 23.3.2
      - name: gpu-operator-certified.v23.3.1
        version: 23.3.1
      - name: gpu-operator-certified.v23.3.0
        version: 23.3.0
      - name: gpu-operator-certified.v22.9.2
        version: 22.9.2
      - name: gpu-operator-certified.v22.9.1
        version: 22.9.1
      - name: gpu-operator-certified.v22.9.0
        version: 22.9.0
      - name: gpu-operator-certified.v1.11.1
        version: 1.11.1
      - name: gpu-operator-certified.v1.11.0
        version: 1.11.0
      - name: gpu-operator-certified.v1.10.1
        version: 1.10.1
      - name: gpu-operator-certified.v1.10.0
        version: 1.10.0
      name: v25.3
    defaultChannel: v25.10
    packageName: gpu-operator-certified
    provider:
      name: NVIDIA Corporation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-codeartifact-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-codeartifact-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/codeartifact-controller:1.2.0
          createdAt: "2025-11-29T03:28:11Z"
          description: AWS codeartifact controller is a service controller for managing
            codeartifact resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Domain represents the state of an AWS codeartifact Domain
              resource.
            displayName: Domain
            kind: Domain
            name: domains.codeartifact.services.k8s.aws
            version: v1alpha1
          - description: PackageGroup represents the state of an AWS codeartifact
              PackageGroup resource.
            displayName: PackageGroup
            kind: PackageGroup
            name: packagegroups.codeartifact.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon codeartifact resources in AWS from within your Kubernetes cluster.

          **About Amazon codeartifact**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon codeartifact
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - codeartifact
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon codeartifact Developer Resources
          url: https://aws.amazon.com/codeartifact/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: codeartifact maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/codeartifact-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-codeartifact-controller@sha256:03a84cfae8ceb70bc1aa31ea6ceb53c2a8b26dc23ef403d5f5f96b7c169af6a7
        version: 1.2.0
      entries:
      - name: ack-codeartifact-controller.v1.2.0
        version: 1.2.0
      - name: ack-codeartifact-controller.v1.1.2
        version: 1.1.2
      - name: ack-codeartifact-controller.v1.1.1
        version: 1.1.1
      - name: ack-codeartifact-controller.v1.1.0
        version: 1.1.0
      - name: ack-codeartifact-controller.v1.0.13
        version: 1.0.13
      - name: ack-codeartifact-controller.v1.0.11
        version: 1.0.11
      name: alpha
    defaultChannel: alpha
    packageName: ack-codeartifact-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: akaris
      provider-url: https://github.com/andreaskaris/sosreport-operator
    name: sosreport-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sosreport-operator.v0.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "support.openshift.io/v1alpha1",
                "kind": "Sosreport",
                "metadata": {
                  "name": "sosreport-sample"
                },
                "spec": {
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Monitoring
          operators.operatorframework.io/builder: operator-sdk-v1.2.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Sosreport is the Schema for the sosreports API
            displayName: Sosreport
            kind: Sosreport
            name: sosreports.support.openshift.io
            version: v1alpha1
        description: Operator that facilitates the generation of sosreports
        displayName: sosreport-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sosreport
        - debugging
        - troubleshooting
        links:
        - name: Sosreport Operator
          url: https://github.com/andreaskaris/sosreport-operator
        maintainers:
        - email: ak.karis@gmail.com
          name: Andreas Karis
        maturity: alpha
        provider:
          name: akaris
          url: https://github.com/andreaskaris/sosreport-operator
        relatedImages:
        - quay.io/akaris/sosreport-operator:0.0.2
        - quay.io/openshift-community-operators/sosreport-operator@sha256:f0d28a3e2ac2e1cbd0c307797b728ad89ac33375135d72054a7b765e274e4bea
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        version: 0.0.2
      entries:
      - name: sosreport-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: sosreport-operator
    provider:
      name: akaris
      url: https://github.com/andreaskaris/sosreport-operator
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-sqs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-sqs-controller.v1.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "sqs.services.k8s.aws/v1alpha1",
                "kind": "Queue",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/sqs-controller:1.4.0
          createdAt: "2025-12-29T20:15:44Z"
          description: AWS SQS controller is a service controller for managing SQS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Queue represents the state of an AWS sqs Queue resource.
            displayName: Queue
            kind: Queue
            name: queues.sqs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Simple Queue Service (SQS) resources in AWS from within your Kubernetes cluster.

          **About Amazon SQS**

          Amazon Simple Queue Service (Amazon SQS) offers a secure, durable, and available hosted queue that lets you integrate and decouple distributed software systems and components. Amazon SQS offers common constructs such as [dead-letter queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html) and [cost allocation tags](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html). It provides a generic web services API that you can access using any programming language that the AWS SDK supports.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon SQS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sqs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon SQS Developer Resources
          url: https://aws.amazon.com/sqs/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: sqs maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/sqs-controller:1.4.0
        - quay.io/community-operator-pipeline-prod/ack-sqs-controller@sha256:e34521a92b8763e3bc2cda081cf59b640960403280f33cd53b52f27d385a98e2
        version: 1.4.0
      entries:
      - name: ack-sqs-controller.v1.4.0
        version: 1.4.0
      - name: ack-sqs-controller.v1.3.1
        version: 1.3.1
      - name: ack-sqs-controller.v1.3.0
        version: 1.3.0
      - name: ack-sqs-controller.v1.2.2
        version: 1.2.2
      - name: ack-sqs-controller.v1.2.1
        version: 1.2.1
      - name: ack-sqs-controller.v1.2.0
        version: 1.2.0
      - name: ack-sqs-controller.v1.1.16
        version: 1.1.16
      - name: ack-sqs-controller.v1.1.14
        version: 1.1.14
      - name: ack-sqs-controller.v1.1.13
        version: 1.1.13
      - name: ack-sqs-controller.v1.1.12
        version: 1.1.12
      - name: ack-sqs-controller.v1.1.11
        version: 1.1.11
      - name: ack-sqs-controller.v1.1.10
        version: 1.1.10
      - name: ack-sqs-controller.v1.1.9
        version: 1.1.9
      - name: ack-sqs-controller.v1.1.8
        version: 1.1.8
      - name: ack-sqs-controller.v1.1.7
        version: 1.1.7
      - name: ack-sqs-controller.v1.1.6
        version: 1.1.6
      - name: ack-sqs-controller.v1.1.5
        version: 1.1.5
      - name: ack-sqs-controller.v1.1.4
        version: 1.1.4
      - name: ack-sqs-controller.v1.1.3
        version: 1.1.3
      - name: ack-sqs-controller.v1.1.2
        version: 1.1.2
      - name: ack-sqs-controller.v1.1.1
        version: 1.1.1
      - name: ack-sqs-controller.v1.1.0
        version: 1.1.0
      - name: ack-sqs-controller.v1.0.17
        version: 1.0.17
      - name: ack-sqs-controller.v1.0.16
        version: 1.0.16
      - name: ack-sqs-controller.v1.0.15
        version: 1.0.15
      - name: ack-sqs-controller.v1.0.14
        version: 1.0.14
      - name: ack-sqs-controller.v1.0.13
        version: 1.0.13
      - name: ack-sqs-controller.v1.0.12
        version: 1.0.12
      - name: ack-sqs-controller.v1.0.10
        version: 1.0.10
      - name: ack-sqs-controller.v1.0.7
        version: 1.0.7
      - name: ack-sqs-controller.v1.0.5
        version: 1.0.5
      - name: ack-sqs-controller.v1.0.3
        version: 1.0.3
      - name: ack-sqs-controller.v1.0.2
        version: 1.0.2
      - name: ack-sqs-controller.v1.0.1
        version: 1.0.1
      - name: ack-sqs-controller.v1.0.0
        version: 1.0.0
      - name: ack-sqs-controller.v0.0.7
        version: 0.0.7
      - name: ack-sqs-controller.v0.0.6
        version: 0.0.6
      - name: ack-sqs-controller.v0.0.5
        version: 0.0.5
      - name: ack-sqs-controller.v0.0.4
        version: 0.0.4
      - name: ack-sqs-controller.v0.0.2
        version: 0.0.2
      - name: ack-sqs-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-sqs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Apache Software Foundation
      provider-url: ""
    name: camel-k
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: camel-k-operator.v2.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.0.1
          createdAt: "2023-09-04T12:32:38Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
          - kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - quay.io/openshift-community-operators/camel-k@sha256:d96f1b35ef30d6701f2a52b5e660dbd5378ec82a933afd38d2eb603c9ca084fd
        - docker.io/apache/camel-k:2.0.1
        version: 2.0.1
      entries:
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: candidate
    - currentCSV: camel-k-operator.v2.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "setBody": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationProfile",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "debug"
                },
                "spec": {
                  "traits": {
                    "logging": {
                      "level": "DEBUG"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example-source"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "setBody": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "timer-to-log-example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "log-sink"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world",
                      "period": 2000
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "timer-source"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.9.0
          createdAt: "2025-12-23T11:28:00Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: IntegrationProfile is the Schema for the integrationprofiles
              API
            displayName: Integration Profile
            kind: IntegrationProfile
            name: integrationprofiles.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Pipe is the Schema for the pipes API
            displayName: Pipe
            kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers:
          the easiest way to build and manage your Camel applications on Kubernetes.

          ## Installation

          You may need to specify the container registry where to store the container images created for the Camel applications.
          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          spec:
            build:
              registry:
                address: docker.io/my-org
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step when using Openshift cluster.

          ## Running an Integration

          Run a Camel application on the cluster by creating a sample `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            annotations:
              camel.apache.org/operator.id: camel-k
            name: test
          spec:
            flows:
            - from:
                parameters:
                  period: "1000"
                steps:
                - setBody:
                    simple: Hello Camel from ${routeId}
                - log: ${body}
                uri: timer:yaml
          ```
          Log the result of the running application:
          ```
          kubectl wait --for=condition=ready integration test --timeout=180s
          kubectl logs deployment/test -f
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:2.9.0
        - quay.io/community-operator-pipeline-prod/camel-k@sha256:4c8f4494ede7ef0f6d3564356928e9642571e14eb95ba20d8264325bc4d8c576
        version: 2.9.0
      entries:
      - name: camel-k-operator.v2.9.0
        version: 2.9.0
      - name: camel-k-operator.v2.8.0
        version: 2.8.0
      - name: camel-k-operator.v2.7.0
        version: 2.7.0
      - name: camel-k-operator.v2.6.0
        version: 2.6.0
      - name: camel-k-operator.v2.5.1
        version: 2.5.1
      - name: camel-k-operator.v2.5.0
        version: 2.5.0
      - name: camel-k-operator.v2.4.0
        version: 2.4.0
      - name: camel-k-operator.v2.3.3
        version: 2.3.3
      - name: camel-k-operator.v2.3.2
        version: 2.3.2
      - name: camel-k-operator.v2.3.1
        version: 2.3.1
      - name: camel-k-operator.v2.3.0
        version: 2.3.0
      - name: camel-k-operator.v2.2.0
        version: 2.2.0
      - name: camel-k-operator.v2.1.0
        version: 2.1.0
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: latest
    - currentCSV: camel-k-operator.v1.12.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.12.0
          createdAt: "2023-02-27T09:01:55Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.12.0
        - quay.io/openshift-community-operators/camel-k@sha256:60a9e4b05e7eb17ebfe58dd55db96ab2c68580d9282117f74f21869cb63e4a73
        version: 1.12.0
      entries:
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable
    - currentCSV: camel-k-operator.v1.10.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.10.4
          createdAt: "2023-01-28T13:49:05Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.10.4
        - quay.io/openshift-community-operators/camel-k@sha256:1461576c2e06c2ee8d84fd40836184566a346ed596b99cb81fe6a08d0ad99096
        version: 1.10.4
      entries:
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.10
    - currentCSV: camel-k-operator.v1.11.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.11.1
          createdAt: "2023-01-30T08:45:04Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.11.1
        - quay.io/openshift-community-operators/camel-k@sha256:2b8369f729c18384f45a458e88c9f551eb00f26792b40dbf286e6ea2837e9400
        version: 1.11.1
      entries:
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.11
    - currentCSV: camel-k-operator.v1.12.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.12.1
          createdAt: "2023-06-12T08:46:58Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.12.1
        - quay.io/openshift-community-operators/camel-k@sha256:6154ff0f72c9c49f1b7ea0edbe93e0a3b04f6e63abbd851d0e6706796050d672
        version: 1.12.1
      entries:
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.12
    - currentCSV: camel-k-operator.v1.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.5.1
          createdAt: "2021-08-31T09:03:41Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - quay.io/openshift-community-operators/camel-k@sha256:21ce00e81ce495c142cbe9611f494cfb26b52b3c09a507bee0572c1e1e3333d7
        - docker.io/apache/camel-k:1.5.1
        version: 1.5.1
      entries:
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.5
    - currentCSV: camel-k-operator.v1.6.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.6.1
          createdAt: "2021-10-27T21:06:20Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.3.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.6.1
        - quay.io/openshift-community-operators/camel-k@sha256:26df9d918e942f7fc637212df87a114b5edd52570da18cc212b3499354cdb993
        version: 1.6.1
      entries:
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.6
    - currentCSV: camel-k-operator.v1.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": null
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.7.0
          createdAt: "2021-11-16T10:54:12Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.8.1+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.7.0
        - quay.io/openshift-community-operators/camel-k@sha256:11dac0881f5ed66b5d42b2d69b13aba31cd56e6b32157cb3ce977be197189b79
        version: 1.7.0
      entries:
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.7
    - currentCSV: camel-k-operator.v1.8.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "flow": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.8.2
          createdAt: "2022-03-07T07:13:19Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.8.2
        - quay.io/openshift-community-operators/camel-k@sha256:cba8cde86a870b31f7dae9a554f4c496ed81731f91a8e64cd62b0caa88efaa38
        version: 1.8.2
      entries:
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.8
    - currentCSV: camel-k-operator.v1.9.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "Openshift",
                  "resources": {}
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {},
                  "resources": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:1.9.2
          createdAt: "2022-05-23T09:05:22Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.13.0+git
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: KameletBinding is the Schema for the kamelets binding API
            displayName: Kamelet Binding
            kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:1.9.2
        - quay.io/openshift-community-operators/camel-k@sha256:06d31bb777b37f8f7c8981efc24ca26a2f9c56a1c579243d0c7bdddb34c76a98
        version: 1.9.2
      entries:
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-1.9
    - currentCSV: camel-k-operator.v2.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "set-body": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "set-body": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1alpha1",
                "kind": "KameletBinding",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "messaging.knative.dev/v1",
                      "kind": "InMemoryChannel",
                      "name": "example"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world"
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1alpha1",
                      "kind": "Kamelet",
                      "name": "example"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.0.1
          createdAt: "2023-09-04T12:32:38Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - kind: KameletBinding
            name: kameletbindings.camel.apache.org
            version: v1alpha1
          - kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1alpha1
          - kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers.

          ## Installation

          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step.
          Also, You can edit the `IntegrationPlatform`, to configure Camel K.
          The configuration from the `IntegrationPlatform` will apply to the Camel integrations created in the same namespace/project.

          ## Running an Integration

          After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            name: example
          spec:
            sources:
            - name: Example.java
              content: |
                import org.apache.camel.builder.RouteBuilder;

                public class Example extends RouteBuilder {
                    @Override
                    public void configure() throws Exception {
                        from("timer:tick")
                            .setBody(constant("Hello World!"))
                        .to("log:info?skipBodyLineSeparator=false");
                    }
                }
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.11.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:2.0.1
        - quay.io/openshift-community-operators/camel-k@sha256:d96f1b35ef30d6701f2a52b5e660dbd5378ec82a933afd38d2eb603c9ca084fd
        version: 2.0.1
      entries:
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-2.0
    - currentCSV: camel-k-operator.v2.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Build",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "CamelCatalog",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Integration",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {
                  "flows": [
                    {
                      "from": {
                        "parameters": {
                          "period": "1000"
                        },
                        "steps": [
                          {
                            "setBody": {
                              "constant": "Hello from Camel K"
                            }
                          },
                          {
                            "to": "log:info"
                          }
                        ],
                        "uri": "timer:yaml"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationKit",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationPlatform",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "camel-k"
                },
                "spec": {
                  "build": {},
                  "kamelet": {},
                  "profile": "OpenShift"
                },
                "status": {
                  "build": {
                    "maven": {
                      "settings": {}
                    },
                    "registry": {}
                  },
                  "kamelet": {}
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "IntegrationProfile",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "debug"
                },
                "spec": {
                  "traits": {
                    "logging": {
                      "level": "DEBUG"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Kamelet",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "example-source"
                },
                "spec": {
                  "definition": {
                    "description": "Produces periodic events with a custom payload",
                    "properties": {
                      "message": {
                        "description": "The message to generate",
                        "title": "Message",
                        "type": "string"
                      },
                      "period": {
                        "default": 1000,
                        "description": "The time interval between two events",
                        "title": "Period",
                        "type": "integer"
                      }
                    },
                    "required": [
                      "message"
                    ],
                    "title": "Example Timer"
                  },
                  "template": {
                    "from": {
                      "parameters": {
                        "period": "#property:period"
                      },
                      "steps": [
                        {
                          "setBody": {
                            "constant": "#property:message"
                          }
                        },
                        {
                          "to": "kamelet:sink"
                        }
                      ],
                      "uri": "timer:tick"
                    }
                  }
                }
              },
              {
                "apiVersion": "camel.apache.org/v1",
                "kind": "Pipe",
                "metadata": {
                  "labels": {
                    "app": "camel-k"
                  },
                  "name": "timer-to-log-example"
                },
                "spec": {
                  "sink": {
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "log-sink"
                    }
                  },
                  "source": {
                    "properties": {
                      "message": "Hello world",
                      "period": 2000
                    },
                    "ref": {
                      "apiVersion": "camel.apache.org/v1",
                      "kind": "Kamelet",
                      "name": "timer-source"
                    }
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Integration & Delivery
          certified: "false"
          containerImage: docker.io/apache/camel-k:2.9.0
          createdAt: "2025-12-23T11:28:00Z"
          description: Apache Camel K is a lightweight integration platform, born
            on Kubernetes, with serverless superpowers.
          operators.operatorframework.io/builder: operator-sdk-v1.30.0
          operators.operatorframework.io/internal-objects: '["builds.camel.apache.org","integrationkits.camel.apache.org","camelcatalogs.camel.apache.org"]'
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/apache/camel-k
          support: Camel
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Build is the Schema for the builds API
            displayName: Build
            kind: Build
            name: builds.camel.apache.org
            version: v1
          - description: CamelCatalog is the Schema for the camelcatalogs API
            displayName: Camel Catalog
            kind: CamelCatalog
            name: camelcatalogs.camel.apache.org
            version: v1
          - description: IntegrationKit is the Schema for the integrationkits API
            displayName: Integration Kit
            kind: IntegrationKit
            name: integrationkits.camel.apache.org
            version: v1
          - description: IntegrationPlatform is the Schema for the integrationplatforms
              API
            displayName: Integration Platform
            kind: IntegrationPlatform
            name: integrationplatforms.camel.apache.org
            version: v1
          - description: IntegrationProfile is the Schema for the integrationprofiles
              API
            displayName: Integration Profile
            kind: IntegrationProfile
            name: integrationprofiles.camel.apache.org
            version: v1
          - description: Integration is the Schema for the integrations API
            displayName: Integration
            kind: Integration
            name: integrations.camel.apache.org
            version: v1
          - description: Kamelet is the Schema for the kamelets API
            displayName: Kamelet
            kind: Kamelet
            name: kamelets.camel.apache.org
            version: v1
          - description: Pipe is the Schema for the pipes API
            displayName: Pipe
            kind: Pipe
            name: pipes.camel.apache.org
            version: v1
        description: |
          Apache Camel K
          ==============

          Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers:
          the easiest way to build and manage your Camel applications on Kubernetes.

          ## Installation

          You may need to specify the container registry where to store the container images created for the Camel applications.
          To start using Camel K, install the operator and then create the following `IntegrationPlatform`:
          ```
          apiVersion: camel.apache.org/v1
          kind: IntegrationPlatform
          metadata:
            name: camel-k
            labels:
              app: "camel-k"
          spec:
            build:
              registry:
                address: docker.io/my-org
          ```

          An `IntegrationPlatform` resource is automatically created by default on OpenShift, so you can skip this step when using Openshift cluster.

          ## Running an Integration

          Run a Camel application on the cluster by creating a sample `Integration`, e.g.:
          ```
          apiVersion: camel.apache.org/v1
          kind: Integration
          metadata:
            annotations:
              camel.apache.org/operator.id: camel-k
            name: test
          spec:
            flows:
            - from:
                parameters:
                  period: "1000"
                steps:
                - setBody:
                    simple: Hello Camel from ${routeId}
                - log: ${body}
                uri: timer:yaml
          ```
          Log the result of the running application:
          ```
          kubectl wait --for=condition=ready integration test --timeout=180s
          kubectl logs deployment/test -f
          ```
        displayName: Camel K Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - apache
        - kamel
        - kubernetes
        - serverless
        - microservices
        links:
        - name: Camel K source code repository
          url: https://github.com/apache/camel-k
        maintainers:
        - email: users@camel.apache.org
          name: The Apache Software Foundation
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: The Apache Software Foundation
        relatedImages:
        - docker.io/apache/camel-k:2.9.0
        - quay.io/community-operator-pipeline-prod/camel-k@sha256:4c8f4494ede7ef0f6d3564356928e9642571e14eb95ba20d8264325bc4d8c576
        version: 2.9.0
      entries:
      - name: camel-k-operator.v2.9.0
        version: 2.9.0
      - name: camel-k-operator.v2.8.0
        version: 2.8.0
      - name: camel-k-operator.v2.7.0
        version: 2.7.0
      - name: camel-k-operator.v2.6.0
        version: 2.6.0
      - name: camel-k-operator.v2.5.1
        version: 2.5.1
      - name: camel-k-operator.v2.5.0
        version: 2.5.0
      - name: camel-k-operator.v2.4.0
        version: 2.4.0
      - name: camel-k-operator.v2.3.3
        version: 2.3.3
      - name: camel-k-operator.v2.3.2
        version: 2.3.2
      - name: camel-k-operator.v2.3.1
        version: 2.3.1
      - name: camel-k-operator.v2.3.0
        version: 2.3.0
      - name: camel-k-operator.v2.2.0
        version: 2.2.0
      - name: camel-k-operator.v2.1.0
        version: 2.1.0
      - name: camel-k-operator.v2.0.1
        version: 2.0.1
      - name: camel-k-operator.v2.0.0
        version: 2.0.0
      - name: camel-k-operator.v1.12.1
        version: 1.12.1
      - name: camel-k-operator.v1.12.0
        version: 1.12.0
      - name: camel-k-operator.v1.11.1
        version: 1.11.1
      - name: camel-k-operator.v1.11.0
        version: 1.11.0
      - name: camel-k-operator.v1.10.4
        version: 1.10.4
      - name: camel-k-operator.v1.10.3
        version: 1.10.3
      - name: camel-k-operator.v1.10.2
        version: 1.10.2
      - name: camel-k-operator.v1.10.1
        version: 1.10.1
      - name: camel-k-operator.v1.10.0
        version: 1.10.0
      - name: camel-k-operator.v1.9.2
        version: 1.9.2
      - name: camel-k-operator.v1.9.1
        version: 1.9.1
      - name: camel-k-operator.v1.9.0
        version: 1.9.0
      - name: camel-k-operator.v1.8.2
        version: 1.8.2
      - name: camel-k-operator.v1.8.1
        version: 1.8.1
      - name: camel-k-operator.v1.8.0
        version: 1.8.0
      - name: camel-k-operator.v1.7.0
        version: 1.7.0
      - name: camel-k-operator.v1.6.1
        version: 1.6.1
      - name: camel-k-operator.v1.6.0
        version: 1.6.0
      - name: camel-k-operator.v1.5.1
        version: 1.5.1
      - name: camel-k-operator.v1.5.0
        version: 1.5.0
      - name: camel-k-operator.v1.4.1
        version: 1.4.1
      - name: camel-k-operator.v1.4.0
        version: 1.4.0
      name: stable-v2
    defaultChannel: stable-v2
    packageName: camel-k
    provider:
      name: The Apache Software Foundation
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: openshift-secondary-scheduler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: secondaryscheduleroperator.v1.5.0
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "SecondaryScheduler",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-secondary-scheduler-operator"
                },
                "spec": {
                  "managementState": "Managed",
                  "schedulerConfig": "secondary-scheduler-config"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/openshift-secondary-scheduler-operator/secondary-scheduler-rhel9-operator@sha256:65253da24ed65e7da75d3b523c459617ce5fc71259673569b05970d2c6e9e65e
          createdAt: 2025/08/24
          description: Runs a secondary scheduler in an OpenShift cluster.
          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: "true"
          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.skipRange: '>=1.4.0 <1.5.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-secondary-scheduler-operator
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/secondary-scheduler-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SecondaryScheduler is the schema for the secondaryschedulers
              API
            displayName: Secondary Scheduler
            kind: SecondaryScheduler
            name: secondaryschedulers.operator.openshift.io
            version: v1
        description: |
          The Secondary Scheduler Operator provides the ability to use a customized scheduler image that was developed using the scheduler plugin framework as a secondary scheduler in OpenShift.

          ## Secondary Scheduler Configuration

          Once the Secondary Scheduler Operator is installed, you can configure the plugins to run for your secondary scheduler.

          The configuration of the secondary scheduler is defined through a config map that wraps the KubeSchedulerConfiguration YAML file in "config.yaml".

          ## Additional Parameters

          Additionally, the following parameters can be configured:

          * `schedulerConfig` - Set the config map configuration for the secondary scheduler.
          * `schedulerImage` - Set the default operand image for the secondary scheduler.
        displayName: Secondary Scheduler Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - secondary
        - scheduling
        - workload
        links:
        - name: Source Code
          url: https://github.com/openshift/secondary-scheduler-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.33.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift-secondary-scheduler-operator/secondary-scheduler-rhel9-operator@sha256:65253da24ed65e7da75d3b523c459617ce5fc71259673569b05970d2c6e9e65e
        - registry.redhat.io/openshift-secondary-scheduler-operator/secondary-scheduler-operator-bundle@sha256:a3667f085cb4f043f342d2470471e016fd50ddd4aed83ec88365a01709bc5732
        version: 1.5.0
      entries:
      - name: secondaryscheduleroperator.v1.5.0
        version: 1.5.0
      - name: secondaryscheduleroperator.v1.4.1
        version: 1.4.1
      - name: secondaryscheduleroperator.v1.4.0
        version: 1.4.0
      - name: secondaryscheduleroperator.v1.3.1
        version: 1.3.1
      - name: secondaryscheduleroperator.v1.3.0
        version: 1.3.0
      - name: secondaryscheduleroperator.v1.2.2
        version: 1.2.2
      - name: secondaryscheduleroperator.v1.2.1
        version: 1.2.1
      - name: secondaryscheduleroperator.v1.2.0
        version: 1.2.0
      - name: secondaryscheduleroperator.v1.1.4
        version: 1.1.4
      - name: secondaryscheduleroperator.v1.1.3
        version: 1.1.3
      - name: secondaryscheduleroperator.v1.1.2
        version: 1.1.2
      - name: secondaryscheduleroperator.v1.1.1
        version: 1.1.1
      - name: secondaryscheduleroperator.v1.1.0
        version: 1.1.0
      name: stable
    defaultChannel: stable
    packageName: openshift-secondary-scheduler-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operator-metering: "true"
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: local-storage-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: local-storage-operator.v4.20.0-202511252120
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "local.storage.openshift.io/v1",
                "kind": "LocalVolume",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "nodeSelector": {
                    "nodeSelectorTerms": [
                      {
                        "matchExpressions": [
                          {
                            "key": "kubernetes.io/hostname",
                            "operator": "In",
                            "values": [
                              "worker-0",
                              "worker-1"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "storageClassDevices": [
                    {
                      "devicePaths": [
                        "/dev/disk/by-id/ata-crucial"
                      ],
                      "fsType": "ext4",
                      "storageClassName": "foobar",
                      "volumeMode": "Filesystem"
                    }
                  ]
                }
              },
              {
                "apiVersion": "local.storage.openshift.io/v1alpha1",
                "kind": "LocalVolumeSet",
                "metadata": {
                  "name": "example-localvolumeset"
                },
                "spec": {
                  "deviceInclusionSpec": {
                    "deviceMechanicalProperties": [
                      "Rotational",
                      "NonRotational"
                    ],
                    "deviceTypes": [
                      "disk"
                    ],
                    "maxSize": "100G",
                    "minSize": "10G"
                  },
                  "maxDeviceCount": 10,
                  "nodeSelector": {
                    "nodeSelectorTerms": [
                      {
                        "matchExpressions": [
                          {
                            "key": "kubernetes.io/hostname",
                            "operator": "In",
                            "values": [
                              "worker-0",
                              "worker-1"
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  "storageClassName": "example-storageclass",
                  "volumeMode": "Block"
                }
              },
              {
                "apiVersion": "local.storage.openshift.io/v1alpha1",
                "kind": "LocalVolumeDiscovery",
                "metadata": {
                  "name": "auto-discover-devices"
                },
                "spec": {
                  "nodeSelector": {
                    "nodeSelectorTerms": [
                      {
                        "matchExpressions": [
                          {
                            "key": "kubernetes.io/hostname",
                            "operator": "In",
                            "values": [
                              "worker-0",
                              "worker-1"
                            ]
                          }
                        ]
                      }
                    ]
                  }
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: registry.redhat.io/openshift4/ose-local-storage-rhel9-operator@sha256:5c4a51b66e2208caf77f72b7b78019ae6806c7d5aef6969c76ebd7b6c1335149
          createdAt: "2019-08-14T00:00:00Z"
          description: Configure and use local storage volumes.
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.properties: '[{"type":"olm.maxOpenShiftVersion","value":"4.21"}]'
          olm.skipRange: '>=4.3.0 <4.20.0-202511252120'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-local-storage
          operators.openshift.io/infrastructure-features: '["disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/internal-objects: '["localvolumediscoveryresults.local.storage.openshift.io"]'
          repository: https://github.com/openshift/local-storage-operator
          support: Red Hat
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Manage local storage volumes for OpenShift
            displayName: Local Volume
            kind: LocalVolume
            name: localvolumes.local.storage.openshift.io
            version: v1
          - description: A Local Volume set allows you to filter a set of storage
              volumes, group them and create a dedicated storage class to consume
              storage from the set of volumes.
            displayName: Local Volume Set
            kind: LocalVolumeSet
            name: localvolumesets.local.storage.openshift.io
            version: v1alpha1
          - description: Discover list of potentially usable disks on the chosen set
              of nodes
            displayName: Local Volume Discovery
            kind: LocalVolumeDiscovery
            name: localvolumediscoveries.local.storage.openshift.io
            version: v1alpha1
          - description: Disc inventory of available disks from selected nodes
            displayName: Local Volume Discovery Result
            kind: LocalVolumeDiscoveryResult
            name: localvolumediscoveryresults.local.storage.openshift.io
            version: v1alpha1
        description: |
          Operator that configures local storage volumes for use in Kubernetes and OpenShift. OpenShift 4.2 and above are the only supported OpenShift versions.
        displayName: Local Storage
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - storage
        - local storage
        links:
        - name: Documentation
          url: https://github.com/openshift/local-storage-operator/tree/main/docs
        - name: Source Repository
          url: https://github.com/openshift/local-storage-operator
        maintainers:
        - email: aos-storage-staff@redhat.com
          name: Red Hat
        maturity: stable
        minKubeVersion: 1.14.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:5d7478a62742900e39d7b007dde5375cd06c6076ced6dab69d805f5fcce3f342
        - registry.redhat.io/openshift4/ose-local-storage-diskmaker-rhel9@sha256:11fb666a558fd9bf3afac21146fd229e1bc207d1670d9bb1c2299d8c57b5800e
        - registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel9@sha256:f1343acbe5e8cd47a3ca5a52407356e9403a6ca9cc1a2c81e09aadc5f0619aa2
        - registry.redhat.io/openshift4/ose-local-storage-rhel9-operator@sha256:5c4a51b66e2208caf77f72b7b78019ae6806c7d5aef6969c76ebd7b6c1335149
        - registry.redhat.io/openshift4/ose-local-storage-operator-bundle@sha256:7f14582c0d63f02a3ad9201d8c90c762de2f131d62ce3a3b201f7e8ffdfa3153
        version: 4.20.0-202511252120
      entries:
      - name: local-storage-operator.v4.20.0-202511252120
        version: 4.20.0-202511252120
      - name: local-storage-operator.v4.20.0-202511182227
        version: 4.20.0-202511182227
      - name: local-storage-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: local-storage-operator.v4.20.0-202510221121
        version: 4.20.0-202510221121
      - name: local-storage-operator.v4.20.0-202510212154
        version: 4.20.0-202510212154
      - name: local-storage-operator.v4.20.0-202509262224
        version: 4.20.0-202509262224
      name: stable
    defaultChannel: stable
    packageName: local-storage-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Craig Trought
      provider-url: ""
    name: prometheus
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: prometheusoperator.0.56.3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "Prometheus",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "replicas": 2,
                  "serviceAccountName": "prometheus-k8s",
                  "serviceMonitorSelector": {},
                  "ruleSelector": {},
                  "podMonitorSelector": {},
                  "probeSelector": {},
                  "alerting": {
                    "alertmanagers": [
                      {
                        "namespace": "monitoring",
                        "name": "alertmanager-main",
                        "port": "web"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "ServiceMonitor",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "selector": {
                    "matchLabels": {
                      "operated-prometheus": "true"
                    }
                  },
                  "endpoints": [
                    {
                      "port": "web",
                      "interval": "30s"
                    }
                  ]
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "PodMonitor",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "selector": {
                    "matchLabels": {
                      "app": "prometheus"
                    }
                  },
                  "podMetricsEndpoints": [
                    {
                      "port": "web",
                      "interval": "30s"
                    }
                  ]
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "Alertmanager",
                "metadata": {
                  "name": "alertmanager-main"
                },
                "spec": {
                  "replicas": 3,
                  "alertmanagerConfigSelector": {}
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1",
                "kind": "PrometheusRule",
                "metadata": {
                  "name": "prometheus-example-rules"
                },
                "spec": {
                  "groups": [
                    {
                      "name": "./example.rules",
                      "rules": [
                        {
                          "alert": "ExampleAlert",
                          "expr": "vector(1)"
                        }
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "monitoring.coreos.com/v1alpha1",
                "kind": "AlertmanagerConfig",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "receivers": [
                    {
                      "name": "example"
                    }
                  ],
                  "route": {
                    "receiver": "example"
                  }
                }
              }
            ]
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: quay.io/prometheus-operator/prometheus-operator:v0.56.3
          createdAt: "2022-05-24T9:40:00Z"
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          repository: https://github.com/prometheus-operator/prometheus-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A running Prometheus instance
            displayName: Prometheus
            kind: Prometheus
            name: prometheuses.monitoring.coreos.com
            version: v1
          - description: A Prometheus Rule configures groups of sequentially evaluated
              recording and alerting rules.
            displayName: Prometheus Rule
            kind: PrometheusRule
            name: prometheusrules.monitoring.coreos.com
            version: v1
          - description: Configures prometheus to monitor a particular k8s service
            displayName: Service Monitor
            kind: ServiceMonitor
            name: servicemonitors.monitoring.coreos.com
            version: v1
          - description: Configures prometheus to monitor a particular pod
            displayName: Pod Monitor
            kind: PodMonitor
            name: podmonitors.monitoring.coreos.com
            version: v1
          - description: Configures an Alertmanager for the namespace
            displayName: Alertmanager
            kind: Alertmanager
            name: alertmanagers.monitoring.coreos.com
            version: v1
          - description: Configures subsections of Alertmanager configuration specific
              to each namespace
            displayName: AlertmanagerConfig
            kind: AlertmanagerConfig
            name: alertmanagerconfigs.monitoring.coreos.com
            version: v1alpha1
          - description: Defines how groups of ingresses and static targets should
              be monitored.
            displayName: Probe
            kind: Probe
            name: probes.monitoring.coreos.com
            version: v1
          - description: Allows recording and alerting rules to be processed across
              multiple Prometheus instances.
            displayName: ThanosRuler
            kind: ThanosRuler
            name: thanosrulers.monitoring.coreos.com
            version: v1
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: k8s@trought.ca
          name: Craig Trought
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Craig Trought
        relatedImages:
        - quay.io/prometheus-operator/prometheus-operator:v0.56.3
        - quay.io/openshift-community-operators/prometheus@sha256:1de089becfcceb3747b3a3ce310c1612861b03446906cab5e981071db10709a9
        version: 0.56.3
      entries:
      - name: prometheusoperator.0.56.3
        version: 0.56.3
      - name: prometheusoperator.0.47.0
        version: 0.47.0
      name: beta
    defaultChannel: beta
    packageName: prometheus
    provider:
      name: Craig Trought
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-dynamodb-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-dynamodb-controller.v1.7.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "dynamodb.services.k8s.aws/v1alpha1",
                "kind": "Backup",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "dynamodb.services.k8s.aws/v1alpha1",
                "kind": "GlobalTable",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "dynamodb.services.k8s.aws/v1alpha1",
                "kind": "Table",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/dynamodb-controller:1.7.0
          createdAt: "2025-11-29T03:42:45Z"
          description: AWS DynamoDB controller is a service controller for managing
            DynamoDB resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Backup represents the state of an AWS dynamodb Backup resource.
            displayName: Backup
            kind: Backup
            name: backups.dynamodb.services.k8s.aws
            version: v1alpha1
          - description: GlobalTable represents the state of an AWS dynamodb GlobalTable
              resource.
            displayName: GlobalTable
            kind: GlobalTable
            name: globaltables.dynamodb.services.k8s.aws
            version: v1alpha1
          - description: Table represents the state of an AWS dynamodb Table resource.
            displayName: Table
            kind: Table
            name: tables.dynamodb.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon DynamoDB resources in AWS from within your Kubernetes cluster.

          **About Amazon DynamoDB**

          Amazon DynamoDB is a fully managed NoSQL database service that provides fast and predictable performance with seamless scalability. DynamoDB lets you offload the administrative burdens of operating and scaling a distributed database so that you don't have to worry about hardware provisioning, setup and configuration, replication, software patching, or cluster scaling. DynamoDB also offers encryption at rest, which eliminates the operational burden and complexity involved in protecting sensitive data. For more information, see [DynamoDB Encryption at Rest](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/EncryptionAtRest.html).

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon DynamoDB
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - dynamodb
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon DynamoDB Developer Resources
          url: https://aws.amazon.com/dynamodb/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: dynamodb maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-dynamodb-controller@sha256:974e2c7cbe0b9de1106f9a7b95c2d0a38d67114af19e95d729d0231cb6052a21
        - public.ecr.aws/aws-controllers-k8s/dynamodb-controller:1.7.0
        version: 1.7.0
      entries:
      - name: ack-dynamodb-controller.v1.7.0
        version: 1.7.0
      - name: ack-dynamodb-controller.v1.6.1
        version: 1.6.1
      - name: ack-dynamodb-controller.v1.6.0
        version: 1.6.0
      - name: ack-dynamodb-controller.v1.5.2
        version: 1.5.2
      - name: ack-dynamodb-controller.v1.5.1
        version: 1.5.1
      - name: ack-dynamodb-controller.v1.5.0
        version: 1.5.0
      - name: ack-dynamodb-controller.v1.4.10
        version: 1.4.10
      - name: ack-dynamodb-controller.v1.4.9
        version: 1.4.9
      - name: ack-dynamodb-controller.v1.4.7
        version: 1.4.7
      - name: ack-dynamodb-controller.v1.4.6
        version: 1.4.6
      - name: ack-dynamodb-controller.v1.4.5
        version: 1.4.5
      - name: ack-dynamodb-controller.v1.4.4
        version: 1.4.4
      - name: ack-dynamodb-controller.v1.4.3
        version: 1.4.3
      - name: ack-dynamodb-controller.v1.4.2
        version: 1.4.2
      - name: ack-dynamodb-controller.v1.4.1
        version: 1.4.1
      - name: ack-dynamodb-controller.v1.3.0
        version: 1.3.0
      - name: ack-dynamodb-controller.v1.2.23
        version: 1.2.23
      - name: ack-dynamodb-controller.v1.2.22
        version: 1.2.22
      - name: ack-dynamodb-controller.v1.2.21
        version: 1.2.21
      - name: ack-dynamodb-controller.v1.2.20
        version: 1.2.20
      - name: ack-dynamodb-controller.v1.2.15
        version: 1.2.15
      - name: ack-dynamodb-controller.v1.2.14
        version: 1.2.14
      - name: ack-dynamodb-controller.v1.2.13
        version: 1.2.13
      - name: ack-dynamodb-controller.v1.2.12
        version: 1.2.12
      - name: ack-dynamodb-controller.v1.2.11
        version: 1.2.11
      - name: ack-dynamodb-controller.v1.2.9
        version: 1.2.9
      - name: ack-dynamodb-controller.v1.2.8
        version: 1.2.8
      - name: ack-dynamodb-controller.v1.2.6
        version: 1.2.6
      - name: ack-dynamodb-controller.v1.2.5
        version: 1.2.5
      - name: ack-dynamodb-controller.v1.2.4
        version: 1.2.4
      - name: ack-dynamodb-controller.v1.2.2
        version: 1.2.2
      - name: ack-dynamodb-controller.v1.2.1
        version: 1.2.1
      - name: ack-dynamodb-controller.v1.2.0
        version: 1.2.0
      - name: ack-dynamodb-controller.v1.1.1
        version: 1.1.1
      - name: ack-dynamodb-controller.v1.1.0
        version: 1.1.0
      - name: ack-dynamodb-controller.v1.0.3
        version: 1.0.3
      - name: ack-dynamodb-controller.v1.0.2
        version: 1.0.2
      - name: ack-dynamodb-controller.v1.0.1
        version: 1.0.1
      - name: ack-dynamodb-controller.v1.0.0
        version: 1.0.0
      - name: ack-dynamodb-controller.v0.1.10
        version: 0.1.10
      - name: ack-dynamodb-controller.v0.1.9
        version: 0.1.9
      - name: ack-dynamodb-controller.v0.1.8
        version: 0.1.8
      - name: ack-dynamodb-controller.v0.1.7
        version: 0.1.7
      - name: ack-dynamodb-controller.v0.1.6
        version: 0.1.6
      - name: ack-dynamodb-controller.v0.1.5
        version: 0.1.5
      - name: ack-dynamodb-controller.v0.1.4
        version: 0.1.4
      - name: ack-dynamodb-controller.v0.1.3
        version: 0.1.3
      - name: ack-dynamodb-controller.v0.1.1
        version: 0.1.1
      - name: ack-dynamodb-controller.v0.1.0
        version: 0.1.0
      - name: ack-dynamodb-controller.v0.0.20
        version: 0.0.20
      - name: ack-dynamodb-controller.v0.0.19
        version: 0.0.19
      - name: ack-dynamodb-controller.v0.0.18
        version: 0.0.18
      - name: ack-dynamodb-controller.v0.0.17
        version: 0.0.17
      - name: ack-dynamodb-controller.v0.0.16
        version: 0.0.16
      - name: ack-dynamodb-controller.v0.0.15
        version: 0.0.15
      - name: ack-dynamodb-controller.v0.0.14
        version: 0.0.14
      - name: ack-dynamodb-controller.v0.0.13
        version: 0.0.13
      - name: ack-dynamodb-controller.v0.0.12
        version: 0.0.12
      - name: ack-dynamodb-controller.v0.0.11
        version: 0.0.11
      - name: ack-dynamodb-controller.v0.0.10
        version: 0.0.10
      - name: ack-dynamodb-controller.v0.0.9
        version: 0.0.9
      - name: ack-dynamodb-controller.v0.0.8
        version: 0.0.8
      name: alpha
    defaultChannel: alpha
    packageName: ack-dynamodb-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: networkservicemesh.io
      provider-url: networkservicemesh.io
    name: nsm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nsm-operator.v1.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "nsm.networkservicemesh.io/v1alpha1",
                "kind": "NSM",
                "metadata": {
                  "name": "nsm-sample",
                  "namespace": "nsm"
                },
                "spec": {
                  "forwarders": [
                    {
                      "image": "ghcr.io/networkservicemesh/cmd-forwarder-vpp:v1.8.0",
                      "type": "vpp"
                    }
                  ],
                  "nsmLogLevel": "TRACE",
                  "nsmPullPolicy": "IfNotPresent",
                  "registry": {
                    "image": "ghcr.io/networkservicemesh/cmd-registry-memory:v1.8.0",
                    "type": "memory"
                  },
                  "version": "v1.8.0",
                  "webhook": {
                    "image": "ghcr.io/networkservicemesh/admission-webhook-k8s:v1.8.0"
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          containerImage: quay.io/acmenezes/nsm-operator:v1.8.0
          createdAt: "2023-03-02T19:36:46Z"
          operatorframework.io/suggested-namespace: nsm
          operators.operatorframework.io/builder: operator-sdk-v1.26.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
          repository: https://github.com/networkservicemesh/nsm-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: NetworkServiceEndpoint
            name: networkserviceendpoints.networkservicemesh.io
            version: v1
          - kind: NetworkService
            name: networkservices.networkservicemesh.io
            version: v1
          - kind: NSM
            name: nsms.nsm.networkservicemesh.io
            version: v1alpha1
        description: |-
          The Network Service Mesh Operator manages and install network service meshes.

          Check networkservicemesh.io

          Install requirements:

          Before installing the operator it's necessary to have installed [spire](https://github.com/spiffe/spire)

          We have a ready to install yaml file for spire [here](https://github.com/networkservicemesh/nsm-operator/blob/master/config/spire/spire.yaml)
        displayName: nsm-operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - network
        - service mesh
        links:
        - name: Nsm Operator
          url: https://nsm-operator.domain
        maintainers:
        - email: adcmenezes@gmail.com
          name: Alexandre Menezes
        maturity: alpha
        provider:
          name: networkservicemesh.io
          url: networkservicemesh.io
        relatedImages:
        - quay.io/openshift-community-operators/nsm-operator@sha256:330a930f885dacf65537beb600fe7f428e02687e83778e47dcda3dc2df15ae24
        - quay.io/acmenezes/nsm-operator:v1.8.0
        version: 1.8.0
      entries:
      - name: nsm-operator.v1.8.0
        version: 1.8.0
      name: alpha
    defaultChannel: alpha
    packageName: nsm-operator
    provider:
      name: networkservicemesh.io
      url: networkservicemesh.io
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: https://www.ibm.com
    name: ibm-security-verify-access-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ibm-security-verify-access-operator.v25.4.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ibm.com/v1",
                "kind": "IBMSecurityVerifyAccess",
                "metadata": {
                  "name": "ivia-sample"
                },
                "spec": {
                  "image": "icr.io/ivia/ivia-wrp@sha256:c2dd5ec2b362136896e47ccbd0f3ee033af945fc2794ddaf075da603e4d4d7b2",
                  "instance": "default"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          certified: "false"
          containerImage: icr.io/isva/verify-access-operator@sha256:ca1d7be14b4dd313d4675f18541b2cc670ea0a0adf3ec87e347e5e20a86bc39c
          createdAt: "2025-05-01T01:27:17Z"
          description: The IBM Verify Identity Access Operator manages the lifecycle
            of IBM Verify Identity Access worker containers.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/IBM-Security/verify-access-operator
          support: IBM
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: IBMSecurityVerifyAccess is the Schema for the ibmsecurityverifyaccesses
              API.
            displayName: IBMSecurity Verify Access
            kind: IBMSecurityVerifyAccess
            name: ibmsecurityverifyaccesses.ibm.com
            version: v1
        description: |+
          In a world of highly fragmented access management environments, [IBM Verify Identity Access](https://www.ibm.com/au-en/products/verify-access) helps you simplify your users' access while more securely adopting web, mobile and cloud technologies. This solution helps you strike a balance between usability and security through the use of risk-based access, single sign-on, integrated access management control, identity federation and its mobile multi-factor authentication capability, IBM Verify. Take back control of your access management with IBM Verify Identity Access.

          The IBM Verify Identity Access operator provides lifecycle management of the lightweight containers which are used to protect an environment, namely:
          * [Web Reverse Proxy](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-web-reverse-proxy)
          * [Runtime](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-runtime)
          * [Distributed Session Cache](https://www.ibm.com/docs/en/sva/latest?topic=support-docker-image-verify-access-distributed-session-cache)

          The operator will manage the deployment of these lightweight IBM Verify Identity Access worker containers, and also control the rolling restart of these containers when a configuration snapshot is updated.

          See the project [Readme](https://github.com/IBM-Security/verify-access-operator/blob/master/README.md) for further information and details.

        displayName: IBM Verify Identity Access Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - identity and access
        - security
        links:
        - name: Verify Identity Access Product Information
          url: https://www.ibm.com/au-en/products/verify-access
        - name: Verify Identity Access Documentation
          url: https://www.ibm.com/docs/en/sva
        maintainers:
        - email: isamdev@au1.ibm.com
          name: Verify Identity Access Development Team
        maturity: stable
        minKubeVersion: 1.17.0
        provider:
          name: IBM
          url: https://www.ibm.com
        relatedImages:
        - registry.connect.redhat.com/ibm/verify-access-operator@sha256:6e37f565564de371b5797895f3e96e0efd4f592d7d3e899ea8507438bdb60e78
        - icr.io/isva/verify-access-operator@sha256:ca1d7be14b4dd313d4675f18541b2cc670ea0a0adf3ec87e347e5e20a86bc39c
        - icr.io/ivia/ivia-wrp@sha256:c2dd5ec2b362136896e47ccbd0f3ee033af945fc2794ddaf075da603e4d4d7b2
        version: 25.4.0
      entries:
      - name: ibm-security-verify-access-operator.v25.4.0
        version: 25.4.0
      - name: ibm-security-verify-access-operator.v24.12.0
        version: 24.12.0
      name: stable
    defaultChannel: stable
    packageName: ibm-security-verify-access-operator
    provider:
      name: IBM
      url: https://www.ibm.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: HPE
      provider-url: ""
    name: hpe-filex-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hpe-filex-csi-operator.v2.6.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "storage.hpe.com/v1",
                "kind": "HPEGreenLakeFileCSIDriver",
                "metadata": {
                  "name": "hpegreenlakefilecsidriver-sample"
                },
                "spec": {
                  "controller": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  },
                  "disableNodeConformance": false,
                  "imagePullPolicy": "IfNotPresent",
                  "images": {
                    "csiAttacher": "registry.k8s.io/sig-storage/csi-attacher@sha256:a399393ff5bd156277c56bae0c08389b1a1b95b7fd6ea44a316ce55e0dd559d7",
                    "csiControllerDriver": "quay.io/hpestorage/filex-csi-driver@sha256:b7f960bbf47277f6469889aba79d4c9866712130e28f32fc48f2ef3a5ca99ef7",
                    "csiNodeDriver": "quay.io/hpestorage/filex-csi-driver@sha256:b7f960bbf47277f6469889aba79d4c9866712130e28f32fc48f2ef3a5ca99ef7",
                    "csiNodeDriverRegistrar": "registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a",
                    "csiNodeInit": "quay.io/hpestorage/filex-csi-init@sha256:2d867eefb2331490c30b8ff4d9ebe50090ec94f72d9431b0738e7dfba838fbbe",
                    "csiProvisioner": "registry.k8s.io/sig-storage/csi-provisioner@sha256:e5900dc98b0d02f317ea9572f3824983c47a2fb5d5fe2b160aedf1b99c14c9e4",
                    "csiResizer": "registry.k8s.io/sig-storage/csi-resizer@sha256:ab774734705a906561e15b67f6a96538f3ad520335d636f793aaafe87a3b5200",
                    "csiSnapshotter": "registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d"
                  },
                  "kubeletRootDir": "/var/lib/kubelet",
                  "node": {
                    "affinity": {},
                    "labels": {},
                    "nodeSelector": {},
                    "resources": {
                      "limits": {
                        "cpu": "2000m",
                        "memory": "1Gi"
                      },
                      "requests": {
                        "cpu": "100m",
                        "memory": "128Mi"
                      }
                    },
                    "tolerations": []
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "true"
          containerImage: registry.connect.redhat.com/hpestorage/filex-csi-driver-operator@sha256:90a269dcbbcbdef9c69cf46242454de641fd009c6d7daf3f9b04deec4a2301e5
          createdAt: "2025-12-16T18:39:19Z"
          description: A Container Storage Interface (CSI) driver for HPE GreenLake
            File Storage.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "false"
          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.skipRange: '>=1.0.0 <2.6.4'
          operatorframework.io/suggested-namespace: hpe-storage
          operatorhub.io/ui-metadata-max-k8s-version: "1.34"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0-ocp
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/hpe-storage/co-deployments
          support: HPE
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HPE GreenLake File Storage CSI Driver
            displayName: HPEGreenLakeFileCSIDriver
            kind: HPEGreenLakeFileCSIDriver
            name: hpegreenlakefilecsidrivers.storage.hpe.com
            version: v1
        description: |
          The HPE GreenLake File Storage CSI Operator deploys the  HPE GreenLake File Storage CSI Driver on OpenShift for dynamic  provisioning of persistent volumes.
          Please refer to our CSI driver [documentation](https://scod.hpedev.io/filex_csi_driver/index.html) for supported HPE platforms and full list of supported CSI features.
          ## Installation
          Refer to the HPE GreenLake File Storage CSI Operator [documentation](https://scod.hpedev.io/filex_csi_driver/deployment.html#operator).
        displayName: HPE GreenLake File Storage CSI Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - HPE
        - HPE CSI
        - HPE Storage
        - CSI
        links:
        - name: Documentation
          url: https://scod.hpedev.io/filex_csi_driver/index.html
        maintainers:
        - email: dev-hi-containers@hpe.com
          name: HPE Storage Containers Team
        maturity: stable
        minKubeVersion: 1.25.0
        provider:
          name: HPE
        relatedImages:
        - registry.connect.redhat.com/hpestorage/filex-csi-driver-operator-bundle-ocp@sha256:fa96e762f81868adbd5b6fc8668928f7b7a90f631485da7ce0b2b081af4b0520
        - registry.k8s.io/sig-storage/csi-attacher@sha256:a399393ff5bd156277c56bae0c08389b1a1b95b7fd6ea44a316ce55e0dd559d7
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:e5900dc98b0d02f317ea9572f3824983c47a2fb5d5fe2b160aedf1b99c14c9e4
        - registry.connect.redhat.com/hpestorage/filex-csi-driver-operator@sha256:90a269dcbbcbdef9c69cf46242454de641fd009c6d7daf3f9b04deec4a2301e5
        - registry.k8s.io/sig-storage/csi-resizer@sha256:ab774734705a906561e15b67f6a96538f3ad520335d636f793aaafe87a3b5200
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:c7e0a3718832b6197ce8b29fefb3fed3d84f4fbcdf08f4606140dbec2566501d
        - quay.io/hpestorage/filex-csi-driver@sha256:b7f960bbf47277f6469889aba79d4c9866712130e28f32fc48f2ef3a5ca99ef7
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:11f199f6bec47403b03cb49c79a41f445884b213b382582a60710b8c6fdc316a
        - quay.io/hpestorage/filex-csi-init@sha256:2d867eefb2331490c30b8ff4d9ebe50090ec94f72d9431b0738e7dfba838fbbe
        version: 2.6.4
      entries:
      - name: hpe-filex-csi-operator.v2.6.4
        version: 2.6.4
      name: stable
    defaultChannel: stable
    packageName: hpe-filex-csi-operator
    provider:
      name: HPE
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-cognitoidentityprovider-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-cognitoidentityprovider-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/cognitoidentityprovider-controller:1.2.0
          createdAt: "2025-11-29T03:40:53Z"
          description: AWS Cognito Identity Provider controller is a service controller
            for managing Cognito Identity Provider resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: UserPool represents the state of an AWS cognitoidentityprovider
              UserPool resource.
            displayName: UserPool
            kind: UserPool
            name: userpools.cognitoidentityprovider.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Cognito Identity Provider resources in AWS from within your Kubernetes cluster.

          **About Amazon Cognito Identity Provider**

          {ADD YOUR DESCRIPTION HERE}

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Cognito Identity Provider
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cognitoidentityprovider
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Cognito Identity Provider Developer Resources
          url: https://aws.amazon.com/Cognito Identity Provider/developer-resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: cognitoidentityprovider maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-cognitoidentityprovider-controller@sha256:be19b3ce74cca998e3dc7e5c14b09846883456161d1c41479acd17e9c7bf3f91
        - public.ecr.aws/aws-controllers-k8s/cognitoidentityprovider-controller:1.2.0
        version: 1.2.0
      entries:
      - name: ack-cognitoidentityprovider-controller.v1.2.0
        version: 1.2.0
      - name: ack-cognitoidentityprovider-controller.v1.1.2
        version: 1.1.2
      - name: ack-cognitoidentityprovider-controller.v1.1.1
        version: 1.1.1
      - name: ack-cognitoidentityprovider-controller.v1.1.0
        version: 1.1.0
      - name: ack-cognitoidentityprovider-controller.v1.0.12
        version: 1.0.12
      name: alpha
    defaultChannel: alpha
    packageName: ack-cognitoidentityprovider-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Ricardo Maraschini
      provider-url: https://github.com/ricardomaraschini/tagger
    name: tagger
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: tagger.v2.1.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "tagger.dev/v1beta1",
                "kind": "Tag",
                "metadata": {
                  "name": "nginx"
                },
                "spec": {
                  "from": "docker.io/library/nginx:latest",
                  "generation": 0,
                  "mirror": false
                }
              }
            ]
          capabilities: Full Lifecycle
          categories: Developer Tools
          containerImage: quay.io/tagger/operator:v2.1.17
          createdAt: "2021-08-02T00:00:00Z"
          operators.operatorframework.io/builder: operator-sdk-v1.9.0+git
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/ricardomaraschini/tagger
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Tag is a Container Image representation as a Custom Resource.
            displayName: Tag
            kind: Tag
            name: tags.tagger.dev
            version: v1beta1
        description: |-
          A Container Image Orchestrator. Adds mirroring and Container Image manipulation capabilities
          to a Kubernetes cluster.

          Keeping track of all Container Images in use in a Kubernetes cluster is a complicated task.
          Container Images may come from numerous different Image Registries. In some cases, controlling
          how a stable version of a given Container Image looks escapes the user's authority. To add to
          this, Container Runtimes rely on remote registries (from the cluster's point of view) when
          obtaining Container Images, potentially making the process of pulling their blobs (manifests,
          config, and layers) slower.

          The notion of indexing Container Image versions by Tags is helpful. Still, it does not provide
          users with the right confidence to always use the intended Container Image – today's "latest"
          tag might not be tomorrow's "latest" tag. In addition to that, these Image Registries allow
          access to Container Images by their Manifest content's hash (i.e., usually sha256), which gives
          users the confidence at a cost in semantics.

          When releasing a new version of an application to Push and to Deploy are split into two
          distinct steps. Both the pusher and the puller need access to the same Image Registry, adding
          complexity.  Credentials are one example of the concerns. Other factors may pop up when
          running, for instance, in an air-gapped environment, where the cluster may not reach external
          Image Registries.

          Tagger aims to overcome these caveats by providing an image management abstraction layer. For
          instance, by providing a direct mapping between a Container Image tag (e.g., "latest") and its
          correspondent Manifest content's hash, users can then refer to the Container Image by its tag
          – and be sure to use that specific version. More than that, when allied with an Internal Image
          Registry, Tagger can also automatically mirror Container Images into the cluster.

          While using Tagger, Deployments can refer to Container Images by an arbitrarily defined name,
          such as "my-app", and Tagger will make sure that they use the right Container Image through its
          internal "tag to Manifest content's hash" mapping.

          For each new "release" of a given Container Image, Tagger creates a new Generation for it,
          making it easy to roll back to previously pushed "releases" of the same Container Image in case
          of problems.

          When integrated with an Internal Registry, Tagger allows users to push or pull Images directly
          without requiring an external Image Registry. It works as a layer between the user and the
          Internal Registry. Every time a new "release" of Container Images is pushed, all Deployments
          are updated automatically. Users don't need to know about the Internal Registry existence, if
          they are logged-in to the Kubernetes cluster, they can obtain old or provide new "Generations"
          for a Container Image.

          In summary, Tagger mirrors remote Container Images into a Kubernetes cluster indexing them in
          different Generations (allowing easy navigation through these multiple Generations), provides
          an interface allowing users to pull and push images directly to the Kubernetes cluster and
          provides full integration with Kubernetes Deployments (automatic triggers new rollouts on
          Container Image changes).

          By default Tagger won't be able to mirror until you provide it with a mirror registry config.
          After install you can configure the mirror by editing the Secret mirror-registry-config in the
          operator namespace. Follow below an example of a valid mirror-registry-config secret (you gonna
          have to provide your own address, username, password, etc).

          ```yaml
          apiVersion: v1
          kind: Secret
          metadata:
            name: mirror-registry-config
          data:
            address: cmVnaXN0cnkuaW8=
            username: YWRtaW4=
            password: d2hhdCB3ZXJlIHlvdSB0aGlua2luZz8K
            token: YW4gb3B0aW9uYWwgdG9rZW4gZm9yIHRva2VuIGJhc2VkIGF1dGg=
            insecure: dHJ1ZQ==
          ```

          To make pushing an pulling images easier you should go ahead and grab the `kubectl` plugin
          available [here](https://github.com/ricardomaraschini/tagger/releases). You can download a
          full version of the README with usage examples and configuration options
          [here](https://github.com/ricardomaraschini/tagger/releases/download/v2.1.17/README.pdf).
        displayName: Tagger
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - tagger
        - mirroring
        - image
        links:
        - name: Documentation
          url: https://github.com/ricardomaraschini/tagger/releases/download/v2.1.17/README.pdf
        - name: Plugin (kubectl)
          url: https://github.com/ricardomaraschini/tagger/releases/tag/v2.1.17
        maintainers:
        - email: rmarasch@redhat.com
          name: Ricardo Maraschini
        maturity: alpha
        provider:
          name: Ricardo Maraschini
          url: https://github.com/ricardomaraschini/tagger
        relatedImages:
        - quay.io/openshift-community-operators/tagger@sha256:a528169d305dbc2bc69794437665e4f940ea708dfd957c58d69bc79316b68612
        - quay.io/tagger/operator:v2.1.17
        version: 2.1.17
      entries:
      - name: tagger.v2.1.17
        version: 2.1.17
      name: alpha
    defaultChannel: alpha
    packageName: tagger
    provider:
      name: Ricardo Maraschini
      url: https://github.com/ricardomaraschini/tagger
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: mtc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: mtc-operator.v1.7.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigrationController",
                  "metadata": {
                    "name": "migration-controller",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "azure_resource_group": "",
                    "cluster_name": "host",
                    "migration_velero": true,
                    "migration_controller": true,
                    "migration_ui": true,
                    "migration_log_reader": true,
                    "olm_managed": true,
                    "restic_timeout": "1h",
                    "mig_pv_limit": "100",
                    "mig_pod_limit": "100",
                    "mig_namespace_limit": "10"
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageMigration",
                  "metadata": {
                    "name": "directimagemigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageStreamMigration",
                  "metadata": {
                    "name": "directimagestreammigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigAnalytic",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "plan": {
                      "name": "foo",
                      "namespace": "openshift-migration"
                    },
                    "analyzeK8SResources": true,
                    "analyzeImageCount": true,
                    "analyzePVCapacity": true
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigCluster",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectVolumeMigration",
                  "metadata": {
                    "name": "direct",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                      "kind": "DirectVolumeMigrationProgress",
                      "metadata": {
                        "name": "direct-progress",
                        "namespace": "openshift-migration"
                      },
                      "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigPlan",
                  "metadata": {
                    "name": "migplan",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigMigration",
                  "metadata": {
                    "name": "migmigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigStorage",
                  "metadata": {
                    "name": "migstorage",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Modernization & Migration
          certified: "false"
          containerImage: registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:d8232366bb3abee6454fcbff6842ec4deaa60cde762f3868eae6218c888cbfe7
          createdAt: "2024-09-04T17:53:42Z"
          description: Facilitates migration of container workloads from OpenShift
            3.x to OpenShift 4.x
          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.skipRange: '>=1.5.0 <1.7.17'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-migration
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:b95a14eda5ae107ba3747995f1ea74a6422f9e5c20d685505e954ca7630b810d
          operators.openshift.io/valid-subscription: '["OpenShift Container Platform",
            "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/mig-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: a request to migrate PVCs from a set of namespaces directly
              to a target
            displayName: DirectVolumeMigration
            kind: DirectVolumeMigration
            name: directvolumemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate watch the progress of rsync pod migrating
              a PVC to a target
            displayName: DirectVolumeMigrationProgress
            kind: DirectVolumeMigrationProgress
            name: directvolumemigrationprogresses.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a set of namespaces
              directly to a target
            displayName: DirectImageMigration
            kind: DirectImageMigration
            name: directimagemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a single imagestream
              directly to a target
            displayName: DirectImageStreamMigration
            kind: DirectImageStreamMigration
            name: directimagestreammigrations.migration.openshift.io
            version: v1alpha1
          - description: A request to Analyze a MigPlan and its namespaces
            displayName: MigAnalytic
            kind: MigAnalytic
            name: miganalytics.migration.openshift.io
            version: v1alpha1
          - description: A cluster defined for migration
            displayName: MigCluster
            kind: MigCluster
            name: migclusters.migration.openshift.io
            version: v1alpha1
          - description: A migration process
            displayName: MigMigration
            kind: MigMigration
            name: migmigrations.migration.openshift.io
            version: v1alpha1
          - description: A migration plan
            displayName: MigPlan
            kind: MigPlan
            name: migplans.migration.openshift.io
            version: v1alpha1
          - description: A migration contoller deployment
            displayName: MigrationController
            kind: MigrationController
            name: migrationcontrollers.migration.openshift.io
            version: v1alpha1
          - description: A migration hook
            displayName: MigHook
            kind: MigHook
            name: mighooks.migration.openshift.io
            version: v1alpha1
          - description: A migration storage location
            displayName: MigStorage
            kind: MigStorage
            name: migstorages.migration.openshift.io
            version: v1alpha1
        description: |-
          The Migration Toolkit for Containers Operator enables installation of the application migration tool components.

          After you have installed the Operator, you can install components by creating a MigrationController CR.

          By default, the Operator installs the following components on an OpenShift Container Platform 4 target cluster:

          * velero and restic, to back up data on the source cluster and restore it on the target cluster
          * mig-controller, to coordinate the backup and restore processes
          * mig-ui, the web console for managing migrations

          If you experience any issues or have feature requests, please file an [issue](https://github.com/konveyor/mig-operator/issues)

          For more information, see the [OpenShift Container Platform Migration Guide](https://docs.openshift.com/container-platform/latest/migration_toolkit_for_containers/about-mtc.html).
        displayName: Migration Toolkit for Containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        - crane
        - mtc
        links:
        - name: Migrations
          url: https://github.com/konveyor/mig-controller
        - name: Documentation
          url: https://docs.openshift.com/container-platform/latest/migration_toolkit_for_containers/about-mtc.html
        - name: Crane Operator
          url: https://github.com/konveyor/mig-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhmtc/openshift-migration-ui-rhel8@sha256:1b8008a16a0f53c09ecc5a219964194689a1aeb01acee8313aa49a9c26259429
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-aws-rhel8@sha256:c001dc96a1478a58f30461ab018e40bede13a78f3cdce869a70dcb8b9bba22b1
        - registry.redhat.io/rhmtc/openshift-velero-plugin-rhel8@sha256:92a3162c705537147005a065cdddbb410e1863d80c08d8b0f27b7ff5588500cd
        - registry.redhat.io/rhmtc/openshift-migration-velero-restic-restore-helper-rhel8@sha256:b137e1345038c9e566767f24cce60c03ec278f5a2efc28fa08e0bd8bfa016486
        - registry.redhat.io/rhmtc/openshift-migration-velero-rhel8@sha256:07cafb83ba90378c1fa60338cf951a9d7145ec245710637e90fdb508875dcc45
        - registry.redhat.io/rhmtc/openshift-migration-controller-rhel8@sha256:dc10544e1bb24883f38373a0445944745282e5a69ed1744f428f98871a7a39c9
        - registry.redhat.io/rhmtc/openshift-migration-log-reader-rhel8@sha256:8fbfffb0bc3adfb4d72961dad381e1daba414bf4a7084f03b5208f6be4191ceb
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:d8232366bb3abee6454fcbff6842ec4deaa60cde762f3868eae6218c888cbfe7
        - registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:b95a14eda5ae107ba3747995f1ea74a6422f9e5c20d685505e954ca7630b810d
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-gcp-rhel8@sha256:035855c3d4b32a29232846d73dc398e81f941fd90a03e33241ca06f6e80b2204
        - registry.redhat.io/rhmtc/openshift-migration-hook-runner-rhel8@sha256:a539064234088a4ee13b8a9666ca9507208fe38189ee9b8b673a38a58aa75599
        - registry.redhat.io/rhmtc/openshift-migration-registry-rhel8@sha256:31b3658dd79c18111c21e99aea52cc198f8e95b458a1a4f8d2bfc4d21e9bdacb
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:f86e96edb0418811df328debdee93b4a51cf7f651134ee35e9c50b9dbfc29fd8
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-microsoft-azure-rhel8@sha256:084f1e54ef0d7f457d5a7cfc57b567ad8d85237c12f707c82f7a30a54e3652ba
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:1d86075469312e84f3d16379efcd6130ec9e8b23a1343e3945f071d82beff6e3
        version: 1.7.17
      entries:
      - name: mtc-operator.v1.7.17
        version: 1.7.17
      - name: mtc-operator.v1.7.16
        version: 1.7.16
      - name: mtc-operator.v1.7.15
        version: 1.7.15
      - name: mtc-operator.v1.7.13
        version: 1.7.13
      - name: mtc-operator.v1.7.12
        version: 1.7.12
      - name: mtc-operator.v1.7.11
        version: 1.7.11
      - name: mtc-operator.v1.7.10
        version: 1.7.10
      - name: mtc-operator.v1.7.9
        version: 1.7.9
      - name: mtc-operator.v1.7.8
        version: 1.7.8
      - name: mtc-operator.v1.7.7
        version: 1.7.7
      - name: mtc-operator.v1.7.6
        version: 1.7.6
      - name: mtc-operator.v1.7.5
        version: 1.7.5
      - name: mtc-operator.v1.7.4
        version: 1.7.4
      - name: mtc-operator.v1.7.3
        version: 1.7.3
      - name: mtc-operator.v1.7.2
        version: 1.7.2
      - name: mtc-operator.v1.7.1
        version: 1.7.1
      - name: mtc-operator.v1.7.0
        version: 1.7.0
      name: release-v1.7
    - currentCSV: mtc-operator.v1.8.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigrationController",
                  "metadata": {
                    "name": "migration-controller",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "azure_resource_group": "",
                    "cluster_name": "host",
                    "migration_velero": true,
                    "migration_controller": true,
                    "migration_ui": true,
                    "migration_log_reader": true,
                    "restic_timeout": "1h",
                    "mig_pv_limit": "100",
                    "mig_pod_limit": "100",
                    "mig_namespace_limit": "10"
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageMigration",
                  "metadata": {
                    "name": "directimagemigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectImageStreamMigration",
                  "metadata": {
                    "name": "directimagestreammigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigAnalytic",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {
                    "plan": {
                      "name": "foo",
                      "namespace": "openshift-migration"
                    },
                    "analyzeK8SResources": true,
                    "analyzeImageCount": true,
                    "analyzePVCapacity": true
                  }
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigCluster",
                  "metadata": {
                    "name": "host",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "DirectVolumeMigration",
                  "metadata": {
                    "name": "direct",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                      "kind": "DirectVolumeMigrationProgress",
                      "metadata": {
                        "name": "direct-progress",
                        "namespace": "openshift-migration"
                      },
                      "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigPlan",
                  "metadata": {
                    "name": "migplan",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigMigration",
                  "metadata": {
                    "name": "migmigration",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              },
              {
                  "apiVersion": "migration.openshift.io/v1alpha1",
                  "kind": "MigStorage",
                  "metadata": {
                    "name": "migstorage",
                    "namespace": "openshift-migration"
                  },
                  "spec": {}
              }
            ]
          capabilities: Seamless Upgrades
          categories: Modernization & Migration, OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:886c3a3f417f48a1ac20d901f4eedca7271548e3d03c72f54fd172e8c025d45c
          createdAt: "2019-07-25T10:21:00+00:00"
          description: Facilitates migration of container workloads from OpenShift
            3.x to OpenShift 4.x
          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: "true"
          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.skipRange: '>=0.0.0 <1.8.11'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-migration
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/konveyor/mig-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: a request to migrate PVCs from a set of namespaces directly
              to a target
            displayName: DirectVolumeMigration
            kind: DirectVolumeMigration
            name: directvolumemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate watch the progress of rsync pod migrating
              a PVC to a target
            displayName: DirectVolumeMigrationProgress
            kind: DirectVolumeMigrationProgress
            name: directvolumemigrationprogresses.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a set of namespaces
              directly to a target
            displayName: DirectImageMigration
            kind: DirectImageMigration
            name: directimagemigrations.migration.openshift.io
            version: v1alpha1
          - description: a request to migrate local images from a single imagestream
              directly to a target
            displayName: DirectImageStreamMigration
            kind: DirectImageStreamMigration
            name: directimagestreammigrations.migration.openshift.io
            version: v1alpha1
          - description: A request to Analyze a MigPlan and its namespaces
            displayName: MigAnalytic
            kind: MigAnalytic
            name: miganalytics.migration.openshift.io
            version: v1alpha1
          - description: A cluster defined for migration
            displayName: MigCluster
            kind: MigCluster
            name: migclusters.migration.openshift.io
            version: v1alpha1
          - description: A migration process
            displayName: MigMigration
            kind: MigMigration
            name: migmigrations.migration.openshift.io
            version: v1alpha1
          - description: A migration plan
            displayName: MigPlan
            kind: MigPlan
            name: migplans.migration.openshift.io
            version: v1alpha1
          - description: A migration contoller deployment
            displayName: MigrationController
            kind: MigrationController
            name: migrationcontrollers.migration.openshift.io
            version: v1alpha1
          - description: A migration hook
            displayName: MigHook
            kind: MigHook
            name: mighooks.migration.openshift.io
            version: v1alpha1
          - description: A migration storage location
            displayName: MigStorage
            kind: MigStorage
            name: migstorages.migration.openshift.io
            version: v1alpha1
        description: |
          The Migration Toolkit for Containers Operator enables installation of the application migration tool components.

          After you have installed the Operator, you can install components by creating a MigrationController CR.

          By default, the Operator installs the following components on an OpenShift Container Platform 4 target cluster:

          * velero and restic, to back up data on the source cluster and restore it on the target cluster
          * mig-controller, to coordinate the backup and restore processes
          * mig-ui, the web console for managing migrations

          If you experience any issues or have feature requests, please file an [issue](https://github.com/konveyor/mig-operator/issues)

          For more information, see the [OpenShift Container Platform Migration Guide](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.4/html-single/migration/index).
        displayName: Migration Toolkit for Containers Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - migration
        links:
        - name: Migrations
          url: https://github.com/konveyor/mig-controller
        - name: Documentation
          url: https://github.com/konveyor/mig-operator
        - name: Migration Toolkit for Containers Operator
          url: https://github.com/konveyor/mig-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/rhmtc/openshift-migration-velero-plugin-for-mtc-rhel8@sha256:93aeafa4df87367cc6326048489a0d7642b9ba13091c6ae4a3d04d45a7e6871c
        - registry.redhat.io/rhmtc/openshift-migration-operator-bundle@sha256:da5bea3530580d60fe593f03927ce2c561155fa914961aa4152fac8fde3b40a7
        - registry.redhat.io/rhmtc/openshift-migration-hook-runner-rhel8@sha256:dff69cdcc2e20a608562e6ab14700e00125473adbd0486c1af456a9839f8b58a
        - registry.redhat.io/rhmtc/openshift-migration-registry-rhel8@sha256:bd436fd06b62f3434a7aa3e38f92f20def19e5a816eb81010f83049efab6beff
        - registry.redhat.io/rhmtc/openshift-migration-must-gather-rhel8@sha256:9b7b4fbde975ee49c20442b7b410b900f60aa2856856f89ba20d4700716bf49d
        - registry.redhat.io/rhmtc/openshift-migration-openvpn-rhel8@sha256:ab050267fa89bdc400ea9ba8434acd11a0cced415e5d52512adc2db713bcdd2c
        - registry.redhat.io/rhmtc/openshift-migration-controller-rhel8@sha256:84492722125eab381eeed49aaed92b44c763b8f06cb2e2859031f486df4437de
        - registry.redhat.io/rhmtc/openshift-migration-log-reader-rhel8@sha256:6d8c28c61ae5cfd2b870226f150248efa1f7ea4c538c5740587cf3f046ebd5d0
        - registry.redhat.io/rhmtc/openshift-migration-rhel8-operator@sha256:886c3a3f417f48a1ac20d901f4eedca7271548e3d03c72f54fd172e8c025d45c
        - registry.redhat.io/rhmtc/openshift-migration-rsync-transfer-rhel8@sha256:977e9f27271b53d72c53e38f44d01cb1fb7e8ce57ec715b8e7efa3ed66d91118
        - registry.redhat.io/rhmtc/openshift-migration-ui-rhel8@sha256:55c9af6872d429051c9467678387d4a23095e95bd254c9ea0f0d0580c132a13c
        version: 1.8.11
      entries:
      - name: mtc-operator.v1.8.11
        version: 1.8.11
      - name: mtc-operator.v1.8.10
        version: 1.8.10
      - name: mtc-operator.v1.8.9
        version: 1.8.9
      - name: mtc-operator.v1.8.6
        version: 1.8.6
      - name: mtc-operator.v1.8.5
        version: 1.8.5
      - name: mtc-operator.v1.8.4
        version: 1.8.4
      - name: mtc-operator.v1.8.3
        version: 1.8.3
      - name: mtc-operator.v1.8.0
        version: 1.8.0
      name: release-v1.8
    defaultChannel: release-v1.8
    packageName: mtc-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: cluster-kube-descheduler-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: clusterkubedescheduleroperator.4.13.0-202309181427
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "KubeDescheduler",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-kube-descheduler-operator"
                },
                "spec": {
                  "deschedulingIntervalSeconds": 3600,
                  "managementState": "Managed",
                  "mode": "Predictive",
                  "profiles": ["AffinityAndTaints"]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-cluster-kube-descheduler-operator@sha256:ba0b71ff2a30a069b4a8a8f3c1e0898aaadc6db112e4cc12aff7c77ced7a0405
          createdAt: 2021/10/13
          description: An operator to run descheduler in Openshift cluster.
          olm.skipRange: '>=4.10.0 <4.13.0-202309181427'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/cluster-kube-descheduler-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubeDescheduler is the Schema for the deschedulers API
            displayName: Kube Descheduler
            kind: KubeDescheduler
            name: kubedeschedulers.operator.openshift.io
            version: v1
        description: |
          The Kube Descheduler Operator provides the ability to evict a running pod so that the pod can be rescheduled onto a more suitable node.

          There are several situations where descheduling can benefit your cluster:

          * Nodes are underutilized or overutilized.
          * Pod and node affinity requirements, such as taints or labels, have changed and the original scheduling decisions are no longer appropriate for certain nodes.
          * Node failure requires pods to be moved.
          * New nodes are added to clusters.

          ## Descheduler Profiles

          Once the operator is installed, you can configure one or more profiles to identify pods to evict. The scheduler will schedule the replacement of the evicted pods.

          The following profiles are available:

          * AffinityAndTaints
          * TopologyAndDuplicates
          * SoftTopologyAndDuplicates
          * LifecycleAndUtilization
          * EvictPodsWithPVC
          * EvictPodsWithLocalStorage

          These profiles are documented in detail in the [descheduler operator README](https://github.com/openshift/cluster-kube-descheduler-operator#profiles).

          ## Additional Parameters

          In addition to the profiles, the following parameters can be configured:

          * `deschedulingIntervalSeconds` - Set the number of seconds between descheduler runs. A value of `0` in this field runs the descheduler once and exits.
          * `profileCustomizations` - Allows certain profile parameters to be tweaked, such as `podLifetime` (see [README](https://github.com/openshift/cluster-kube-descheduler-operator#profile-customizations) for more info).
        displayName: Kube Descheduler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - scheduling
        - descheduler
        - workload
        links:
        - name: Source Code
          url: https://github.com/openshift/cluster-kube-descheduler-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/openshift4/ose-cluster-kube-descheduler-operator-bundle@sha256:b473fba287414d3ccb09aaabc64f463af2c912c322ca2c41723020b216d98d14
        - registry.redhat.io/openshift4/ose-cluster-kube-descheduler-operator@sha256:ba0b71ff2a30a069b4a8a8f3c1e0898aaadc6db112e4cc12aff7c77ced7a0405
        - registry.redhat.io/openshift4/ose-descheduler@sha256:45dc69ad93ab50bdf9ce1bb79f6d98f849e320db68af30475b10b7f5497a1b13
        version: 4.13.0-202309181427
      entries:
      - name: clusterkubedescheduleroperator.4.13.0-202309181427
        version: 4.13.0-202309181427
      name: "4.13"
    - currentCSV: clusterkubedescheduleroperator.v5.3.1
      currentCSVDesc:
        annotations:
          alm-examples: |
            [
              {
                "apiVersion": "operator.openshift.io/v1",
                "kind": "KubeDescheduler",
                "metadata": {
                  "name": "cluster",
                  "namespace": "openshift-kube-descheduler-operator"
                },
                "spec": {
                  "deschedulingIntervalSeconds": 3600,
                  "managementState": "Managed",
                  "mode": "Predictive",
                  "profiles": ["AffinityAndTaints"]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          console.openshift.io/operator-monitoring-default: "true"
          containerImage: registry.redhat.io/kube-descheduler-operator/kube-descheduler-rhel9-operator@sha256:a4280076232eb36193781d6b25561fba909061efd03a02c114512506f6c3c775
          createdAt: 2025/12/04
          description: An operator to run descheduler in Openshift cluster.
          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: "true"
          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.skipRange: '>=5.2.0 <5.3.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-kube-descheduler-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          repository: https://github.com/openshift/cluster-kube-descheduler-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KubeDescheduler is the Schema for the deschedulers API
            displayName: Kube Descheduler
            kind: KubeDescheduler
            name: kubedeschedulers.operator.openshift.io
            version: v1
        description: |
          The Kube Descheduler Operator provides the ability to evict a running pod so that the pod can be rescheduled onto a more suitable node.

          There are several situations where descheduling can benefit your cluster:

          * Nodes are underutilized or overutilized.
          * Pod and node affinity requirements, such as taints or labels, have changed and the original scheduling decisions are no longer appropriate for certain nodes.
          * Node failure requires pods to be moved.
          * New nodes are added to clusters.

          ## Descheduler Profiles

          Once the operator is installed, you can configure one or more profiles to identify pods to evict. The scheduler will schedule the replacement of the evicted pods.

          The following profiles are available:

          * AffinityAndTaints
          * TopologyAndDuplicates
          * SoftTopologyAndDuplicates
          * LifecycleAndUtilization
          * LongLifecycle
          * CompactAndScale
          * EvictPodsWithPVC
          * EvictPodsWithLocalStorage

          These profiles are documented in detail in the [descheduler operator README](https://github.com/openshift/cluster-kube-descheduler-operator#profiles).

          ## Additional Parameters

          In addition to the profiles, the following parameters can be configured:

          * `deschedulingIntervalSeconds` - Set the number of seconds between descheduler runs. A value of `0` in this field runs the descheduler once and exits.
          * `mode` - Configures the descheduler to either evict pods or to simulate the eviction.
          * `profileCustomizations` - Allows certain profile parameters to be tweaked, such as `podLifetime` (see [README](https://github.com/openshift/cluster-kube-descheduler-operator#profile-customizations) for more info).
          * `evictionLimits` - Restricts the number of evictions during each descheduling run.
        displayName: Kube Descheduler Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - scheduling
        - descheduler
        - workload
        links:
        - name: Source Code
          url: https://github.com/openshift/cluster-kube-descheduler-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.33.0
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/kube-descheduler-operator/descheduler-rhel9@sha256:e9019ca15608d3d48a68b97283ca07db1260bb92bd81a500f7d987a485cd7a1e
        - registry.redhat.io/kube-descheduler-operator/kube-descheduler-rhel9-operator@sha256:a4280076232eb36193781d6b25561fba909061efd03a02c114512506f6c3c775
        - registry.redhat.io/kube-descheduler-operator/kube-descheduler-operator-bundle@sha256:c0ebb8c7fbaa325fef3d530da8bee7ea8773aa082c9b16f174c41ca4465ced24
        version: 5.3.1
      entries:
      - name: clusterkubedescheduleroperator.v5.3.1
        version: 5.3.1
      - name: clusterkubedescheduleroperator.v5.3.0
        version: 5.3.0
      - name: clusterkubedescheduleroperator.v5.2.1
        version: 5.2.1
      - name: clusterkubedescheduleroperator.v5.2.0
        version: 5.2.0
      - name: clusterkubedescheduleroperator.v5.1.4
        version: 5.1.4
      - name: clusterkubedescheduleroperator.v5.1.3
        version: 5.1.3
      - name: clusterkubedescheduleroperator.v5.1.2
        version: 5.1.2
      - name: clusterkubedescheduleroperator.v5.1.1
        version: 5.1.1
      - name: clusterkubedescheduleroperator.v5.1.0
        version: 5.1.0
      - name: clusterkubedescheduleroperator.v5.0.1
        version: 5.0.1
      - name: clusterkubedescheduleroperator.4.14.0-202311021650
        version: 4.14.0-202311021650
      - name: clusterkubedescheduleroperator.4.14.0-202310201027
        version: 4.14.0-202310201027
      name: stable
    defaultChannel: stable
    packageName: cluster-kube-descheduler-operator
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Stackable GmbH
      provider-url: https://stackable.tech
    name: stackable-zookeeper-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: zookeeper-operator.v25.11.0
      currentCSVDesc:
        annotations:
          capabilities: Full Lifecycle
          categories: Storage
          containerImage: quay.io/stackable/zookeeper-operator@sha256:8186ceb867021df47c8affafa4648fa52a55e2ba10c15be14561520aabddd94c
          description: Stackable Operator for Apache ZooKeeper
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: stackable-operators
          repository: https://github.com/stackabletech/zookeeper-operator
          support: Stackable GmbH
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Auto-generated derived type for ZookeeperClusterSpec via
              `CustomResource`
            displayName: zookeeperclusters.zookeeper.stackable.tech
            kind: ZookeeperCluster
            name: zookeeperclusters.zookeeper.stackable.tech
            version: v1alpha1
          - description: Auto-generated derived type for ZookeeperZnodeSpec via `CustomResource`
            displayName: zookeeperznodes.zookeeper.stackable.tech
            kind: ZookeeperZnode
            name: zookeeperznodes.zookeeper.stackable.tech
            version: v1alpha1
        description: |
          The Stackable Data Platform was designed with openness and flexibility in mind. It provides a curated selection of the best open source data apps like Apache Kafka, Apache Druid, Trino and Apache Spark. All data apps work together seamlessly, and can be added or removed in no time. Based on Kubernetes, it runs everywhere - on-prem or in the cloud.

          For more information please visit our [web page](https://stackable.tech/en/open-source-data-platform)
        displayName: Stackable Operator for Apache ZooKeeper
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - zookeeper
        maintainers:
        - email: info@stackable.tech
          name: Stackable GmbH
        maturity: stable
        minKubeVersion: 1.23.0
        provider:
          name: Stackable GmbH
          url: https://stackable.tech
        relatedImages:
        - quay.io/stackable/zookeeper-operator@sha256:8186ceb867021df47c8affafa4648fa52a55e2ba10c15be14561520aabddd94c
        - registry.connect.redhat.com/stackable/stackable-apache-zookeeper-operator@sha256:a2d289bf7c2c8efec5ce5afc79a0a2971fe9a525e0b0b68c2cd2b44e7852d8db
        version: 25.11.0
      entries:
      - name: zookeeper-operator.v25.11.0
        version: 25.11.0
      name: stable
    defaultChannel: stable
    packageName: stackable-zookeeper-operator
    provider:
      name: Stackable GmbH
      url: https://stackable.tech
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      app: kube-green
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: kube-green Community
      provider-url: https://kube-green.dev
    name: kube-green
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: kube-green.v0.5.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "kube-green.com/v1alpha1",
                "kind": "SleepInfo",
                "metadata": {
                  "labels": {
                    "app": "kube-green"
                  },
                  "name": "sleepinfo-sample"
                },
                "spec": {
                  "excludeRef": [
                    {
                      "apiVersion": "apps/v1",
                      "kind": "Deployment",
                      "name": "api-gateway"
                    }
                  ],
                  "sleepAt": "20:00",
                  "suspendCronJobs": true,
                  "timeZone": "Europe/Rome",
                  "wakeUpAt": "08:00",
                  "weekdays": "1-5"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Developer Tools
          containerImage: docker.io/kubegreen/kube-green:0.5.2
          createdAt: "2023-10-07T15:15:08Z"
          description: Suspend your pods when no-one's using them to save energy and
            restore when necessary
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kube-green/kube-green
          support: kube-green Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: SleepInfo is the Schema for the sleepinfos API
            displayName: SleepInfo
            kind: SleepInfo
            name: sleepinfos.kube-green.com
            version: v1alpha1
        description: |
          ## About this Operator

          [kube-green](https://kube-green.dev) shuts down (some of) your resources when you don't need them, reducing the consumption of resources of the cluster.

          Install this operator and apply the SleepInfo CRD to stop your dev namespaces from running during weekends, nights or when it is not necessary.
          See the [docs](https://kube-green.dev/docs/getting-started/) for more information.
          This operator is responsible to suspend and restart pods at specific times, defined by the SleepInfo CRD.

          An example of SleepInfo:

          ```yaml
          apiVersion: kube-green.com/v1alpha1
          kind: SleepInfo
          metadata:
            name: working-hours
          spec:
            weekdays: "1-5"
            sleepAt: "20:00"
            wakeUpAt: "08:00"
            timeZone: "Europe/Rome"
          ```

          This configuration stop pods everyday from monday to friday at 20:00 and restore them at 8:00.
          In this way, your cluster nodes could downscale, producing less CO2 and saving money.
        displayName: kube-green
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - green
        - green software
        - resources
        - downscale
        - autoscale
        - climate change
        links:
        - name: Homepage
          url: https://kube-green.dev
        - name: Source Code
          url: https://github.com/kube-green/kube-green
        maintainers:
        - email: bianchidavide12+kubegreen@gmail.com
          name: Davide
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: kube-green Community
          url: https://kube-green.dev
        relatedImages:
        - docker.io/kubegreen/kube-green:0.5.2
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.14.1
        - quay.io/openshift-community-operators/kube-green@sha256:e0c9f5ecdef1f7172af098f20cce17afebbedf02c0e0bd516d4d6aae736d1b27
        version: 0.5.2
      entries:
      - name: kube-green.v0.5.2
        version: 0.5.2
      - name: kube-green.v0.5.1
        version: 0.5.1
      - name: kube-green.v0.5.0
        version: 0.5.0
      - name: kube-green.v0.4.1
        version: 0.4.1
      - name: kube-green.v0.4.0
        version: 0.4.0
      - name: kube-green.v0.3.1
        version: 0.3.1
      - name: kube-green.v0.3.0
        version: 0.3.0
      name: alpha
    defaultChannel: alpha
    packageName: kube-green
    provider:
      name: kube-green Community
      url: https://kube-green.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: rhods-prometheus-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: rhods-prometheus-operator.4.10.0
      currentCSVDesc:
        annotations:
          capabilities: Deep Insights
          categories: Monitoring
          certified: "false"
          containerImage: registry.redhat.io/openshift4/ose-prometheus-operator@sha256:370f2fa849f8045964e30c3a4d34be022f419d243b0cf37c2c81ea19faaab4a8
          createdAt: 21-04-15T23:43:00Z
          description: Manage the full lifecycle of configuring and managing Prometheus
            and Alertmanager servers.
          repository: https://github.com/prometheus-operator/prometheus-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.

          Once installed, the Prometheus Operator provides the following features:

          * **Create/Destroy**: Easily launch a Prometheus instance for your Kubernetes namespace, a specific application or team easily using the Operator.
          * **Simple Configuration**: Configure the fundamentals of Prometheus like versions, persistence, retention policies, and replicas from a native Kubernetes resource.
          * **Target Services via Labels**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language.

          ### Other Supported Features

          **High availability**

          Multiple instances are run across failure zones and data is replicated. This keeps your monitoring available during an outage, when you need it most.

          **Updates via automated operations**

          New Prometheus versions are deployed using a rolling update with no downtime, making it easy to stay up to date.

          **Handles the dynamic nature of containers**

          Alerting rules are attached to groups of containers instead of individual instances, which is ideal for the highly dynamic nature of container deployment.
        displayName: Prometheus Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - prometheus
        - monitoring
        - tsdb
        - alerting
        - observability
        links:
        - name: Prometheus
          url: https://www.prometheus.io/
        - name: Documentation
          url: https://github.com/prometheus-operator/prometheus-operator/tree/master/Documentation
        - name: Prometheus Operator
          url: https://github.com/prometheus-operator/prometheus-operator
        maintainers:
        - email: openshift-operators@redhat.com
          name: Red Hat
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-prometheus-operator@sha256:370f2fa849f8045964e30c3a4d34be022f419d243b0cf37c2c81ea19faaab4a8
        - registry.redhat.io/rhods/odh-prometheus-bundle-rhel8@sha256:d3767059a2f45ca57f31df1dccb2849e19ca2d3ec697ae5de84dbc6d8eae497c
        version: 4.10.0
      entries:
      - name: rhods-prometheus-operator.4.10.0
        version: 4.10.0
      name: beta
    defaultChannel: beta
    packageName: rhods-prometheus-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat Inc.
      provider-url: www.redhat.com
    name: compliance-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: compliance-operator.v0.1.32
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan"
                },
                "spec": {
                  "content": "ssg-rhcos4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan"
                },
                "spec": {
                  "content": "ssg-ocp4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate",
                  "scanType": "Platform"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceSuite",
                "metadata": {
                  "name": "example-compliancesuite"
                },
                "spec": {
                  "autoApplyRemediations": false,
                  "scans": [
                    {
                      "content": "ssg-rhcos4-ds.xml",
                      "contentImage": "registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c",
                      "name": "workers-scan",
                      "nodeSelector": {
                        "node-role.kubernetes.io/worker": ""
                      },
                      "profile": "xccdf_org.ssgproject.content_profile_moderate"
                    },
                    {
                      "content": "ssg-ocp4-ds.xml",
                      "contentImage": "registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c",
                      "name": "platform-scan",
                      "profile": "xccdf_org.ssgproject.content_profile_moderate",
                      "scanType": "Platform"
                    }
                  ],
                  "schedule": "0 1 * * *"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ProfileBundle",
                "metadata": {
                  "name": "ocp4"
                },
                "spec": {
                  "contentFile": "ssg-ocp4-ds.xml",
                  "contentImage": "registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "autoApplyRemediations": false,
                "debug": true,
                "kind": "ScanSetting",
                "metadata": {
                  "name": "my-companys-constraints"
                },
                "rawResultStorage": {
                  "rotation": 10,
                  "size": "2Gi"
                },
                "roles": [
                  "worker",
                  "master"
                ],
                "schedule": "0 1 * * *"
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ScanSettingBinding",
                "metadata": {
                  "name": "nist-moderate"
                },
                "profiles": [
                  {
                    "apiGroup": "compliance.openshift.io/v1alpha1",
                    "kind": "Profile",
                    "name": "rhcos4-moderate"
                  }
                ],
                "settingsRef": {
                  "apiGroup": "compliance.openshift.io/v1alpha1",
                  "kind": "ScanSetting",
                  "name": "default"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "TailoredProfile",
                "metadata": {
                  "name": "example-tailoredprofile"
                },
                "spec": {
                  "disableRules": [
                    {
                      "name": "ocp4-file-permissions-node-config",
                      "rationale": "This breaks X application."
                    },
                    {
                      "name": "ocp4-account-disable-post-pw-expiration",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-accounts-no-uid-except-zero",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chown",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmodat",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchown",
                      "rationale": "testing this"
                    }
                  ],
                  "extends": "ocp4-moderate",
                  "setValues": [
                    {
                      "name": "ocp4-var-selinux-state",
                      "rationale": "trolling dwalsh",
                      "value": "permissive"
                    }
                  ],
                  "title": "My little profile"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.17 <0.1.32'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-compliance
          operators.openshift.io/infrastructure-features: '["disconnected", "fips"]'
          repository: https://github.com/openshift/compliance-operator
          support: Red Hat Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ComplianceCheckResult represent a result of a single compliance
              "test"
            kind: ComplianceCheckResult
            name: compliancecheckresults.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceRemediation represents a remediation that can be
              applied to the cluster to fix the found issues.
            kind: ComplianceRemediation
            name: complianceremediations.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceScan represents a scan with a certain configuration
              that will be applied to objects of a certain entity in the host. These
              could be nodes that apply to a certain nodeSelector, or the cluster
              itself.
            kind: ComplianceScan
            name: compliancescans.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceSuite represents a set of scans that will be applied
              to the cluster. These should help deployers achieve a certain compliance
              target.
            kind: ComplianceSuite
            name: compliancesuites.compliance.openshift.io
            version: v1alpha1
          - description: ProfileBundle is the Schema for the profilebundles API
            kind: ProfileBundle
            name: profilebundles.compliance.openshift.io
            version: v1alpha1
          - description: Profile is the Schema for the profiles API
            kind: Profile
            name: profiles.compliance.openshift.io
            version: v1alpha1
          - description: Rule is the Schema for the rules API
            kind: Rule
            name: rules.compliance.openshift.io
            version: v1alpha1
          - description: ScanSettingBinding is the Schema for the scansettingbindings
              API
            kind: ScanSettingBinding
            name: scansettingbindings.compliance.openshift.io
            version: v1alpha1
          - description: ScanSetting is the Schema for the scansettings API
            kind: ScanSetting
            name: scansettings.compliance.openshift.io
            version: v1alpha1
          - description: TailoredProfile is the Schema for the tailoredprofiles API
            kind: TailoredProfile
            name: tailoredprofiles.compliance.openshift.io
            version: v1alpha1
          - description: Variable describes a tunable in the XCCDF profile
            kind: Variable
            name: variables.compliance.openshift.io
            version: v1alpha1
        description: An operator which runs OpenSCAP and allows you to keep your cluster
          compliant with the security benchmark you need.
        displayName: Compliance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - security
        - compliance
        - openscap
        - audit
        links:
        - name: Compliance Operator upstream repo
          url: https://github.com/openshift/compliance-operator
        - name: Compliance Operator documentation
          url: https://docs.openshift.com/container-platform/4.7/security/compliance_operator/compliance-operator-understanding.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/openshift4/compliance-rhel8-operator-metadata@sha256:1c06868bce1f5d7145ef658bfcc284c44011aa24a17166aa124547b38f2259e4
        - registry.redhat.io/openshift4/compliance-rhel8-operator@sha256:ed68a0574ddeaf7d676403cd843f28cb586894f35dbb3ca5e06a5264bd42f030
        - registry.redhat.io/openshift4/compliance-content-rhel8@sha256:4529b9bb32c1846a38e38363fa872713b1c1e6b26b34d887813432f97cff368c
        - registry.redhat.io/openshift4/compliance-openscap-rhel8@sha256:867c6d4205653d8a954d234cbaf470313009eb983d4f455fb45f49c4a7764422
        version: 0.1.32
      entries:
      - name: compliance-operator.v0.1.32
        version: 0.1.32
      name: "4.7"
    - currentCSV: compliance-operator.v0.1.61
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-node"
                },
                "spec": {
                  "content": "ssg-rhcos4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-platform"
                },
                "spec": {
                  "content": "ssg-ocp4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate",
                  "scanType": "Platform"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceSuite",
                "metadata": {
                  "name": "example-compliancesuite"
                },
                "spec": {
                  "autoApplyRemediations": false,
                  "scans": [
                    {
                      "content": "ssg-rhcos4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b",
                      "name": "workers-scan",
                      "nodeSelector": {
                        "node-role.kubernetes.io/worker": ""
                      },
                      "profile": "xccdf_org.ssgproject.content_profile_moderate"
                    },
                    {
                      "content": "ssg-ocp4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b",
                      "name": "platform-scan",
                      "profile": "xccdf_org.ssgproject.content_profile_moderate",
                      "scanType": "Platform"
                    }
                  ],
                  "schedule": "0 1 * * *"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ProfileBundle",
                "metadata": {
                  "name": "ocp4"
                },
                "spec": {
                  "contentFile": "ssg-ocp4-ds.xml",
                  "contentImage": "registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "autoApplyRemediations": false,
                "debug": true,
                "kind": "ScanSetting",
                "metadata": {
                  "name": "my-companys-constraints"
                },
                "rawResultStorage": {
                  "rotation": 10,
                  "size": "2Gi"
                },
                "roles": [
                  "worker",
                  "master"
                ],
                "schedule": "0 1 * * *"
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ScanSettingBinding",
                "metadata": {
                  "name": "nist-moderate"
                },
                "profiles": [
                  {
                    "apiGroup": "compliance.openshift.io/v1alpha1",
                    "kind": "Profile",
                    "name": "rhcos4-moderate"
                  }
                ],
                "settingsRef": {
                  "apiGroup": "compliance.openshift.io/v1alpha1",
                  "kind": "ScanSetting",
                  "name": "default"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "TailoredProfile",
                "metadata": {
                  "name": "example-tailoredprofile"
                },
                "spec": {
                  "description": "Example of a tailoredProfile that extends OCP4 FedRAMP Moderate",
                  "disableRules": [
                    {
                      "name": "ocp4-file-permissions-node-config",
                      "rationale": "This breaks X application."
                    },
                    {
                      "name": "ocp4-account-disable-post-pw-expiration",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-accounts-no-uid-except-zero",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chown",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmodat",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchown",
                      "rationale": "testing this"
                    }
                  ],
                  "extends": "ocp4-moderate",
                  "setValues": [
                    {
                      "name": "ocp4-var-selinux-state",
                      "rationale": "trolling dwalsh",
                      "value": "permissive"
                    }
                  ],
                  "title": "My little profile"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          olm.skipRange: '>=0.1.17 <0.1.61'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-compliance
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/compliance-operator
          support: Red Hat Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ComplianceCheckResult represent a result of a single compliance
              "test"
            kind: ComplianceCheckResult
            name: compliancecheckresults.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceRemediation represents a remediation that can be
              applied to the cluster to fix the found issues.
            displayName: Compliance Remediation
            kind: ComplianceRemediation
            name: complianceremediations.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceScan represents a scan with a certain configuration
              that will be applied to objects of a certain entity in the host. These
              could be nodes that apply to a certain nodeSelector, or the cluster
              itself.
            displayName: Compliance Scan
            kind: ComplianceScan
            name: compliancescans.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceSuite represents a set of scans that will be applied
              to the cluster. These should help deployers achieve a certain compliance
              target.
            displayName: Compliance Suite
            kind: ComplianceSuite
            name: compliancesuites.compliance.openshift.io
            version: v1alpha1
          - description: ProfileBundle is the Schema for the profilebundles API
            displayName: Profile Bundle
            kind: ProfileBundle
            name: profilebundles.compliance.openshift.io
            version: v1alpha1
          - description: Profile is the Schema for the profiles API
            kind: Profile
            name: profiles.compliance.openshift.io
            version: v1alpha1
          - description: Rule is the Schema for the rules API
            kind: Rule
            name: rules.compliance.openshift.io
            version: v1alpha1
          - description: ScanSettingBinding is the Schema for the scansettingbindings
              API
            displayName: Scan Setting Binding
            kind: ScanSettingBinding
            name: scansettingbindings.compliance.openshift.io
            version: v1alpha1
          - description: ScanSetting is the Schema for the scansettings API
            kind: ScanSetting
            name: scansettings.compliance.openshift.io
            version: v1alpha1
          - description: TailoredProfile is the Schema for the tailoredprofiles API
            displayName: Tailored Profile
            kind: TailoredProfile
            name: tailoredprofiles.compliance.openshift.io
            version: v1alpha1
          - description: Variable describes a tunable in the XCCDF profile
            kind: Variable
            name: variables.compliance.openshift.io
            version: v1alpha1
        description: An operator which runs OpenSCAP and allows you to keep your cluster
          compliant with the security benchmark you need.
        displayName: Compliance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - compliance
        - openscap
        - audit
        links:
        - name: Compliance Operator upstream repo
          url: https://github.com/openshift/compliance-operator
        - name: Compliance Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/compliance_operator/compliance-operator-understanding.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:c4bf5b2b20ff538adbc430b7ee993fbd7c291203a9810534005148304e3b169b
        - registry.redhat.io/compliance/openshift-compliance-openscap-rhel8@sha256:83ad3113964ec48c5cf28315d923adb6edb95e45960e2756665d617dcd9b2e47
        - registry.redhat.io/compliance/openshift-compliance-operator-bundle@sha256:8a2194d8d26dff03ec53ac0ab93c62c268e48675079a88db18bb14a977a391be
        - registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:5578e2225365ac1c15e4c189c5c7a8d14fd3fd26189414b36028f7f0879bb1dc
        version: 0.1.61
      entries:
      - name: compliance-operator.v0.1.61
        version: 0.1.61
      name: release-0.1
    - currentCSV: compliance-operator.v1.8.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-node"
                },
                "spec": {
                  "content": "ssg-rhcos4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceScan",
                "metadata": {
                  "name": "example-compliancescan-platform"
                },
                "spec": {
                  "content": "ssg-ocp4-ds.xml",
                  "profile": "xccdf_org.ssgproject.content_profile_moderate",
                  "scanType": "Platform"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ComplianceSuite",
                "metadata": {
                  "name": "example-compliancesuite"
                },
                "spec": {
                  "autoApplyRemediations": false,
                  "scans": [
                    {
                      "content": "ssg-rhcos4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77",
                      "name": "workers-scan",
                      "nodeSelector": {
                        "node-role.kubernetes.io/worker": ""
                      },
                      "profile": "xccdf_org.ssgproject.content_profile_moderate"
                    },
                    {
                      "content": "ssg-ocp4-ds.xml",
                      "contentImage": "registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77",
                      "name": "platform-scan",
                      "profile": "xccdf_org.ssgproject.content_profile_moderate",
                      "scanType": "Platform"
                    }
                  ],
                  "schedule": "0 1 * * *"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ProfileBundle",
                "metadata": {
                  "name": "ocp4"
                },
                "spec": {
                  "contentFile": "ssg-ocp4-ds.xml",
                  "contentImage": "registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "autoApplyRemediations": false,
                "debug": true,
                "kind": "ScanSetting",
                "metadata": {
                  "name": "my-companys-constraints"
                },
                "rawResultStorage": {
                  "rotation": 10,
                  "size": "2Gi"
                },
                "roles": [
                  "worker",
                  "master"
                ],
                "schedule": "0 1 * * *"
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "ScanSettingBinding",
                "metadata": {
                  "name": "nist-moderate"
                },
                "profiles": [
                  {
                    "apiGroup": "compliance.openshift.io/v1alpha1",
                    "kind": "Profile",
                    "name": "rhcos4-moderate"
                  }
                ],
                "settingsRef": {
                  "apiGroup": "compliance.openshift.io/v1alpha1",
                  "kind": "ScanSetting",
                  "name": "default"
                }
              },
              {
                "apiVersion": "compliance.openshift.io/v1alpha1",
                "kind": "TailoredProfile",
                "metadata": {
                  "name": "example-tailoredprofile"
                },
                "spec": {
                  "description": "Example of a tailoredProfile that extends OCP4 FedRAMP Moderate",
                  "disableRules": [
                    {
                      "name": "ocp4-file-permissions-node-config",
                      "rationale": "This breaks X application."
                    },
                    {
                      "name": "ocp4-account-disable-post-pw-expiration",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-accounts-no-uid-except-zero",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-chown",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmod",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchmodat",
                      "rationale": "testing this"
                    },
                    {
                      "name": "ocp4-audit-rules-dac-modification-fchown",
                      "rationale": "testing this"
                    }
                  ],
                  "extends": "ocp4-moderate",
                  "setValues": [
                    {
                      "name": "ocp4-var-selinux-state",
                      "rationale": "trolling dwalsh",
                      "value": "permissive"
                    }
                  ],
                  "title": "My little profile"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring,Security
          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: "true"
          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"
          must-gather-image: registry.redhat.io/compliance/openshift-compliance-must-gather-rhel8@sha256:83ea492a55fb2f2bc423ce7d1ccd31644de8ce492e9d273da47a93413fc9282a
          olm.skipRange: '>=0.1.17 <1.8.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-compliance
          operators.openshift.io/infrastructure-features: '["disconnected", "fips",
            "proxy-aware"]'
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.19.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/ComplianceAsCode/compliance-operator
          support: Red Hat Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ComplianceCheckResult represent a result of a single compliance
              "test"
            kind: ComplianceCheckResult
            name: compliancecheckresults.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceRemediation represents a remediation that can be
              applied to the cluster to fix the found issues.
            displayName: Compliance Remediation
            kind: ComplianceRemediation
            name: complianceremediations.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceScan represents a scan with a certain configuration
              that will be applied to objects of a certain entity in the host. These
              could be nodes that apply to a certain nodeSelector, or the cluster
              itself.
            displayName: Compliance Scan
            kind: ComplianceScan
            name: compliancescans.compliance.openshift.io
            version: v1alpha1
          - description: ComplianceSuite represents a set of scans that will be applied
              to the cluster. These should help deployers achieve a certain compliance
              target.
            displayName: Compliance Suite
            kind: ComplianceSuite
            name: compliancesuites.compliance.openshift.io
            version: v1alpha1
          - description: CustomRule represents a rule that can be used with TailoredProfiles
              to execute arbitrary checks against the cluster.
            displayName: Custom Rule
            kind: CustomRule
            name: customrules.compliance.openshift.io
            version: v1alpha1
          - description: ProfileBundle is the Schema for the profilebundles API
            displayName: Profile Bundle
            kind: ProfileBundle
            name: profilebundles.compliance.openshift.io
            version: v1alpha1
          - description: Profile is the Schema for the profiles API
            kind: Profile
            name: profiles.compliance.openshift.io
            version: v1alpha1
          - description: Rule is the Schema for the rules API
            kind: Rule
            name: rules.compliance.openshift.io
            version: v1alpha1
          - description: ScanSettingBinding is the Schema for the scansettingbindings
              API
            displayName: Scan Setting Binding
            kind: ScanSettingBinding
            name: scansettingbindings.compliance.openshift.io
            version: v1alpha1
          - description: ScanSetting is the Schema for the scansettings API
            kind: ScanSetting
            name: scansettings.compliance.openshift.io
            version: v1alpha1
          - description: TailoredProfile is the Schema for the tailoredprofiles API
            displayName: Tailored Profile
            kind: TailoredProfile
            name: tailoredprofiles.compliance.openshift.io
            version: v1alpha1
          - description: Variable describes a tunable in the XCCDF profile
            kind: Variable
            name: variables.compliance.openshift.io
            version: v1alpha1
        description: An operator which runs OpenSCAP and allows you to keep your cluster
          compliant with the security benchmark you need.
        displayName: Compliance Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - compliance
        - openscap
        - audit
        links:
        - name: Compliance Operator upstream repository
          url: https://github.com/ComplianceAsCode/compliance-operator
        - name: Compliance Operator documentation
          url: https://docs.openshift.com/container-platform/latest/security/compliance_operator/co-overview.html
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat Inc.
          url: www.redhat.com
        relatedImages:
        - registry.redhat.io/compliance/openshift-compliance-operator-bundle@sha256:0bc0b7a20ce3c6303a45a699f44d2b90597b6a62846e89a5bca285b3228a9a52
        - registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:7b84f08a7f0a808bd92c9540dd5b976b8aa20ed426ce2d646131123e13df60c2
        - registry.redhat.io/compliance/openshift-compliance-must-gather-rhel8@sha256:83ea492a55fb2f2bc423ce7d1ccd31644de8ce492e9d273da47a93413fc9282a
        - registry.redhat.io/compliance/openshift-compliance-openscap-rhel8@sha256:26cbd3cedf1b49bf26d638014ca2fb2196e5a2ed915234721b4ac8679e399011
        - registry.redhat.io/compliance/openshift-compliance-rhel8-operator@sha256:1a9ed321d28da1ae089684d4bfb1c206a6ca2442f5725656c48c6c309e128e77
        version: 1.8.0
      entries:
      - name: compliance-operator.v1.8.0
        version: 1.8.0
      - name: compliance-operator.v1.7.1
        version: 1.7.1
      - name: compliance-operator.v1.7.0
        version: 1.7.0
      - name: compliance-operator.v1.6.2
        version: 1.6.2
      - name: compliance-operator.v1.6.1
        version: 1.6.1
      - name: compliance-operator.v1.6.0
        version: 1.6.0
      - name: compliance-operator.v1.5.1
        version: 1.5.1
      - name: compliance-operator.v1.5.0
        version: 1.5.0
      - name: compliance-operator.v1.4.1
        version: 1.4.1
      - name: compliance-operator.v1.4.0
        version: 1.4.0
      name: stable
    defaultChannel: stable
    packageName: compliance-operator
    provider:
      name: Red Hat Inc.
      url: www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-organizations-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-organizations-controller.v1.2.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "organizations.services.k8s.aws/v1alpha1",
                "kind": "OrganizationalUnit",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/organizations-controller:1.2.1
          createdAt: "2025-12-03T21:49:08Z"
          description: AWS Organizations controller is a service controller for managing
            Organizations resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Account represents the state of an AWS organizations Account
              resource.
            displayName: Account
            kind: Account
            name: accounts.organizations.services.k8s.aws
            version: v1alpha1
          - description: OrganizationalUnit represents the state of an AWS organizations
              OrganizationalUnit resource.
            displayName: OrganizationalUnit
            kind: OrganizationalUnit
            name: organizationalunits.organizations.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Organizations resources in AWS from within your Kubernetes cluster.

          **About Amazon Organizations**

          With AWS Organizations you can perform account management activities at scale by consolidating multiple AWS accounts into a single organization. Consolidating accounts simplifies how you use other AWS services. You can leverage the multi-account management services available in AWS Organizations with select AWS services to perform tasks on all accounts that are members of your organization.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.
        displayName: AWS Controllers for Kubernetes - Amazon Organizations
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - organizations
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Organizations Developer Resources
          url: https://aws.amazon.com/organizations/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: organizations maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-organizations-controller@sha256:e3df4e6f7406e6d94dff44f05b84a1423b446f865b1ef7e5311516b58646291e
        - public.ecr.aws/aws-controllers-k8s/organizations-controller:1.2.1
        version: 1.2.1
      entries:
      - name: ack-organizations-controller.v1.2.1
        version: 1.2.1
      - name: ack-organizations-controller.v1.2.0
        version: 1.2.0
      - name: ack-organizations-controller.v1.1.2
        version: 1.1.2
      - name: ack-organizations-controller.v1.1.1
        version: 1.1.1
      - name: ack-organizations-controller.v1.0.13
        version: 1.0.13
      - name: ack-organizations-controller.v1.0.11
        version: 1.0.11
      - name: ack-organizations-controller.v1.0.10
        version: 1.0.10
      - name: ack-organizations-controller.v1.0.9
        version: 1.0.9
      - name: ack-organizations-controller.v1.0.8
        version: 1.0.8
      - name: ack-organizations-controller.v1.0.7
        version: 1.0.7
      - name: ack-organizations-controller.v1.0.6
        version: 1.0.6
      - name: ack-organizations-controller.v1.0.5
        version: 1.0.5
      - name: ack-organizations-controller.v1.0.4
        version: 1.0.4
      - name: ack-organizations-controller.v1.0.1
        version: 1.0.1
      - name: ack-organizations-controller.v1.0.0
        version: 1.0.0
      - name: ack-organizations-controller.v0.0.10
        version: 0.0.10
      - name: ack-organizations-controller.v0.0.9
        version: 0.0.9
      - name: ack-organizations-controller.v0.0.8
        version: 0.0.8
      - name: ack-organizations-controller.v0.0.7
        version: 0.0.7
      - name: ack-organizations-controller.v0.0.6
        version: 0.0.6
      name: alpha
    defaultChannel: alpha
    packageName: ack-organizations-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Palo Alto Networks
      provider-url: ""
    name: pcc-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: pcc-operator.v0.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "pcc.paloaltonetworks.com/v1alpha1",
                "kind": "Console",
                "metadata": {
                  "name": "pcc-console",
                  "namespace": "twistlock"
                },
                "spec": {
                  "consoleConfig": {
                    "serviceType": "ClusterIP"
                  },
                  "namespace": "twistlock",
                  "version": "21_08_520"
                }
              },
              {
                "apiVersion": "pcc.paloaltonetworks.com/v1alpha1",
                "kind": "ConsoleDefender",
                "metadata": {
                  "name": "pcc-consoledefender",
                  "namespace": "twistlock"
                },
                "spec": {
                  "consoleConfig": {
                    "serviceType": "ClusterIP"
                  },
                  "defenderConfig": {
                    "docker": false
                  },
                  "namespace": "twistlock",
                  "version": "21_08_520"
                }
              },
              {
                "apiVersion": "pcc.paloaltonetworks.com/v1alpha1",
                "kind": "Defender",
                "metadata": {
                  "name": "pcc-defender",
                  "namespace": "twistlock"
                },
                "spec": {
                  "defenderConfig": {
                    "clusterAddress": "twistlock-console.example.com",
                    "consoleAddress": "https://twistlock-console.example.com:8083",
                    "docker": false
                  },
                  "namespace": "twistlock",
                  "version": "21_08_520"
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          containerImage: quay.io/prismacloud/pcc-operator@sha256:b8fcfbd6c51286c874e00db1bd35523386cec406fa4050ef44c0a887730cf9b8
          createdAt: "2021-11-15"
          description: Deploy Prisma Cloud Compute for cloud-native security in your
            clusters
          operators.openshift.io/infrastructure-features: '["Disconnected"]'
          operators.operatorframework.io/builder: operator-sdk-v1.14.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          repository: https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator
          support: pcc-integrations@paloaltonetworks.com
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Install the Prisma Cloud Compute Console and Defenders
            displayName: Console and Defenders
            kind: ConsoleDefender
            name: consoledefenders.pcc.paloaltonetworks.com
            version: v1alpha1
          - description: Install the Prisma Cloud Compute Console
            displayName: Console
            kind: Console
            name: consoles.pcc.paloaltonetworks.com
            version: v1alpha1
          - description: Install Prisma Cloud Compute Defenders
            displayName: Defenders
            kind: Defender
            name: defenders.pcc.paloaltonetworks.com
            version: v1alpha1
        description: |
          ## Features
          - Deploy Console
              - Create initial local administrator user
              - Add license
          - Deploy Defenders
          - Support for offline deployments
          - Upgrade Console
          - Upgrade Defenders

          ## Installation
          See the [Prisma Cloud Compute Operator documentation](https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator) for installation guides.

          ## Support
          This operator is available "as is," and should be seen as community-supported; however, Palo Alto Networks will continue contributing whenever possible.
          Palo Alto Networks does not provide technical support or help with using or troubleshooting the operator through normal support channels.
          We encourage you to open GitHub [issues](https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator/issues) and [pull requests](https://github.com/PaloAltoNetworks/prisma-cloud-compute-operator/pulls) to track bugs and feature requests.

          ## Other links
          [Prisma Cloud Compute product documentation](https://docs.paloaltonetworks.com/prisma/prisma-cloud/prisma-cloud-admin-compute.html)

          [Prisma Cloud Compute API documentation](https://prisma.pan.dev/api/cloud/cwpp)
        displayName: Prisma Cloud Compute Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - palo
        - palo alto
        - palo alto networks
        - paloalto
        - twistlock
        - compute
        - prisma
        - prisma cloud
        - prisma cloud compute
        - security
        - image
        - images
        - container
        - containers
        - docker
        - podman
        - vulnerability
        - vulnerabilities
        - compliance
        - runtime
        - scan
        - scanning
        - monitor
        - monitoring
        - alert
        - alerting
        links:
        - name: Prisma Cloud
          url: https://www.paloaltonetworks.com/prisma/cloud
        maintainers:
        - email: pcc-integrations@paloaltonetworks.com
          name: Wyatt Gill
        maturity: alpha
        provider:
          name: Palo Alto Networks
        relatedImages:
        - quay.io/openshift-community-operators/pcc-operator@sha256:e99a466ddb52ad44c435ccf952754d685744fb5b7b7e4cf77dd542e530e4f968
        - quay.io/prismacloud/pcc-operator@sha256:b8fcfbd6c51286c874e00db1bd35523386cec406fa4050ef44c0a887730cf9b8
        version: 0.2.0
      entries:
      - name: pcc-operator.v0.2.0
        version: 0.2.0
      name: stable
    defaultChannel: stable
    packageName: pcc-operator
    provider:
      name: Palo Alto Networks
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: https://www.redhat.com
    name: security-profiles-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: security-profiles-operator.v0.9.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "AppArmorProfile",
                "metadata": {
                  "annotations": {
                    "description": "Block writing to any files in the disk."
                  },
                  "name": "test-profile"
                },
                "spec": {
                  "abstract": {
                    "filesystem": {
                      "readOnlyPaths": [],
                      "readWritePaths": [],
                      "writeOnlyPaths": []
                    }
                  }
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "SecurityProfilesOperatorDaemon",
                "metadata": {
                  "name": "spod",
                  "namespace": "security-profiles-operator"
                },
                "spec": {
                  "enableAppArmor": false,
                  "enableLogEnricher": false,
                  "enableSelinux": false
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "ProfileRecording",
                "metadata": {
                  "name": "test-recording"
                },
                "spec": {
                  "kind": "SeccompProfile",
                  "podSelector": {
                    "matchLabels": {
                      "app": "alpine"
                    }
                  },
                  "recorder": "bpf"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha1",
                "kind": "ProfileBinding",
                "metadata": {
                  "name": "profile-binding"
                },
                "spec": {
                  "image": "nginx:1.19.1",
                  "profileRef": {
                    "kind": "SeccompProfile",
                    "name": "profile-allow-unsafe"
                  }
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha2",
                "kind": "RawSelinuxProfile",
                "metadata": {
                  "name": "errorlogger"
                },
                "spec": {
                  "policy": "(blockinherit container)\n(allow process var_log_t ( dir ( open read getattr lock search ioctl add_name remove_name write ))) \n(allow process var_log_t ( file ( getattr read write append ioctl lock map open create  ))) \n(allow process var_log_t ( sock_file ( getattr read write append open  ))) \n"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "Blocks all syscalls."
                  },
                  "name": "profile-block-all"
                },
                "spec": {
                  "defaultAction": "SCMP_ACT_ERRNO"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "UNSAFE: Allows all syscalls whilst logging their use. Similar to running as unconfined in terms of enforcement."
                  },
                  "name": "profile-complain-unsafe"
                },
                "spec": {
                  "defaultAction": "SCMP_ACT_LOG"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "UNSAFE: Allows all syscalls. Similar to running as unconfined as it provides no enforcement."
                  },
                  "name": "profile-allow-unsafe"
                },
                "spec": {
                  "defaultAction": "SCMP_ACT_ALLOW"
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1beta1",
                "kind": "SeccompProfile",
                "metadata": {
                  "annotations": {
                    "description": "Enables complain mode whilst blocking high-risk syscalls. Some essential syscalls are allowed to decrease log noise."
                  },
                  "name": "profile-complain-block-high-risk"
                },
                "spec": {
                  "architectures": [
                    "SCMP_ARCH_X86_64",
                    "SCMP_ARCH_PPC64LE"
                  ],
                  "defaultAction": "SCMP_ACT_LOG",
                  "syscalls": [
                    {
                      "action": "SCMP_ACT_ALLOW",
                      "names": [
                        "exit",
                        "exit_group",
                        "futex",
                        "nanosleep"
                      ]
                    },
                    {
                      "action": "SCMP_ACT_ERRNO",
                      "names": [
                        "acct",
                        "add_key",
                        "bpf",
                        "clock_adjtime",
                        "clock_settime",
                        "create_module",
                        "delete_module",
                        "finit_module",
                        "get_kernel_syms",
                        "get_mempolicy",
                        "init_module",
                        "ioperm",
                        "iopl",
                        "kcmp",
                        "kexec_file_load",
                        "kexec_load",
                        "keyctl",
                        "lookup_dcookie",
                        "mbind",
                        "mount",
                        "move_pages",
                        "name_to_handle_at",
                        "nfsservctl",
                        "open_by_handle_at",
                        "perf_event_open",
                        "personality",
                        "pivot_root",
                        "process_vm_readv",
                        "process_vm_writev",
                        "ptrace",
                        "query_module",
                        "quotactl",
                        "reboot",
                        "request_key",
                        "set_mempolicy",
                        "setns",
                        "settimeofday",
                        "stime",
                        "swapoff",
                        "swapon",
                        "_sysctl",
                        "sysfs",
                        "umount2",
                        "umount",
                        "unshare",
                        "uselib",
                        "userfaultfd",
                        "ustat",
                        "vm86old",
                        "vm86"
                      ]
                    }
                  ]
                }
              },
              {
                "apiVersion": "security-profiles-operator.x-k8s.io/v1alpha2",
                "kind": "SelinuxProfile",
                "metadata": {
                  "name": "errorlogger"
                },
                "spec": {
                  "allow": {
                    "var_log_t": {
                      "dir": [
                        "open",
                        "read",
                        "getattr",
                        "lock",
                        "search",
                        "ioctl",
                        "add_name",
                        "remove_name",
                        "write"
                      ],
                      "file": [
                        "getattr",
                        "read",
                        "write",
                        "append",
                        "ioctl",
                        "lock",
                        "map",
                        "open",
                        "create"
                      ],
                      "sock_file": [
                        "getattr",
                        "read",
                        "write",
                        "append",
                        "open"
                      ]
                    }
                  },
                  "inherit": [
                    {
                      "name": "container"
                    }
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          createdAt: "2025-02-25T13:34:54Z"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=0.4.1 <0.9.0'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: openshift-security-profiles
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ProfileBinding is the Schema for the profilebindings API.
            displayName: Profile Binding
            kind: ProfileBinding
            name: profilebindings.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - description: ProfileRecording is the Schema for the profilerecordings
              API.
            displayName: Profile Recording
            kind: ProfileRecording
            name: profilerecordings.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - description: SeccompProfile is a cluster level specification for a seccomp
              profile. See https://github.com/opencontainers/runtime-spec/blob/master/config-linux.md#seccomp
            displayName: Seccomp Profile
            kind: SeccompProfile
            name: seccompprofiles.security-profiles-operator.x-k8s.io
            version: v1beta1
          - description: SecurityProfileNodeStatus is a per-node status of a security
              profile
            displayName: Security Profile Node Status
            kind: SecurityProfileNodeStatus
            name: securityprofilenodestatuses.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - description: SecurityProfilesOperatorDaemon is the Schema to configure
              the spod deployment.
            displayName: Security Profiles Operator Daemon
            kind: SecurityProfilesOperatorDaemon
            name: securityprofilesoperatordaemons.security-profiles-operator.x-k8s.io
            version: v1alpha1
          - kind: RawSelinuxProfile
            name: rawselinuxprofiles.security-profiles-operator.x-k8s.io
            version: v1alpha2
          - description: SelinuxProfile is the Schema for the selinuxprofiles API.
            displayName: Selinux Profile
            kind: SelinuxProfile
            name: selinuxprofiles.security-profiles-operator.x-k8s.io
            version: v1alpha2
          - description: AppArmorProfile is a cluster level specification for an AppArmor
              profile.
            displayName: App Armor Profile
            kind: AppArmorProfile
            name: apparmorprofiles.security-profiles-operator.x-k8s.io
            version: v1alpha1
        description: SPO is an operator which aims to make it easier for users to
          use SELinux, seccomp and AppArmor in Kubernetes clusters
        displayName: Security Profiles Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        - selinux
        - seccomp
        - apparmor
        - ebpf
        links:
        - name: Security Profiles Operator
          url: https://github.com/openshift/security-profiles-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat support
        maturity: alpha
        provider:
          name: Red Hat
          url: https://www.redhat.com
        relatedImages:
        - registry.redhat.io/compliance/openshift-security-profiles-operator-bundle@sha256:bd5bdc7085f3e9ce8494488f29b4d83a29796c47d536106cd6e14a7b67ab07ee
        - registry.redhat.io/compliance/openshift-security-profiles-rhel8-operator@sha256:828274d71c65ef820e6a8b652e3f102624d09a0609fb00bae7b32dc62ff37fd1
        - registry.redhat.io/compliance/openshift-selinuxd-rhel8@sha256:81273ff149482109417064b40d333edb131481c05547e4ffa6485475460a48ba
        - registry.redhat.io/compliance/openshift-selinuxd-rhel9@sha256:3278d69814a8d0d1e31dcdef454c24828aadbb468a3d5d3e15910c76481765bd
        version: 0.9.0
      entries:
      - name: security-profiles-operator.v0.9.0
        version: 0.9.0
      - name: security-profiles-operator.v0.8.6
        version: 0.8.6
      - name: security-profiles-operator.v0.8.5
        version: 0.8.5
      - name: security-profiles-operator.v0.8.4
        version: 0.8.4
      - name: security-profiles-operator.v0.8.2
        version: 0.8.2
      name: release-alpha-rhel-8
    defaultChannel: release-alpha-rhel-8
    packageName: security-profiles-operator
    provider:
      name: Red Hat
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: ""
    name: recipe
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: recipe.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "Recipe",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "recipe",
                    "app.kubernetes.io/instance": "recipe-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "recipe",
                    "app.kubernetes.io/part-of": "recipe"
                  },
                  "name": "recipe-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          createdAt: "2025-12-18T08:02:13Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Recipe is the Schema for the recipes API
            displayName: Recipe
            kind: Recipe
            name: recipes.ramendr.openshift.io
            version: v1alpha1
        description: |
          Recipe describes a workflow used for capturing or recovering Kubernetes resources. This can be referred to by a Ramen DRPlacementControl object when kubeObjectProtection is enabled.
        displayName: Recipe
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - recipe
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/recipe
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-recipe-operator-bundle@sha256:29523317a9edd364fdff7d028726cb77ff8bcb700be280b6fd8ae367697c8b97
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:2dfd798c449c2b91f42743dd006fbbc7f06f3d046b170dffdebc676322779ace
        version: 4.19.9-rhodf
      entries:
      - name: recipe.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: recipe.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: recipe.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: recipe.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: recipe.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: recipe.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: recipe.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: recipe.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: recipe.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: recipe.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: recipe.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ramendr.openshift.io/v1alpha1",
                "kind": "Recipe",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "recipe",
                    "app.kubernetes.io/instance": "recipe-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "recipe",
                    "app.kubernetes.io/part-of": "recipe"
                  },
                  "name": "recipe-sample"
                },
                "spec": null
              }
            ]
          capabilities: Deep Insights
          createdAt: "2025-12-18T07:51:27Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-v1.31.0
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Recipe is the Schema for the recipes API
            displayName: Recipe
            kind: Recipe
            name: recipes.ramendr.openshift.io
            version: v1alpha1
        description: |
          Recipe describes a workflow used for capturing or recovering Kubernetes resources. This can be referred to by a Ramen DRPlacementControl object when kubeObjectProtection is enabled.
        displayName: Recipe
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - recipe
        links:
        - name: Source Code
          url: https://github.com/red-hat-storage/recipe
        maintainers:
        - email: ocs-support@redhat.com
          name: Red Hat Support
        maturity: alpha
        provider:
          name: Red Hat, Inc.
        relatedImages:
        - registry.redhat.io/odf4/odr-recipe-operator-bundle@sha256:45b85ff810e9c08233127aaa78e2f7ce77a01f6e4638bc65f88c87d4ffbb7cf9
        - registry.redhat.io/odf4/odr-rhel9-operator@sha256:827b17f8be9aa8889581d4755aa32b2dba5edf7fa19b513ad6985e11ee9bd14c
        version: 4.20.4-rhodf
      entries:
      - name: recipe.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: recipe.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: recipe.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: recipe.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: recipe.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: recipe
    provider:
      name: Red Hat, Inc.
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Hitachi
      provider-url: ""
    name: hnas-csi-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: hnas-csi-operator.v1.0.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "charts.csi.hitachi.com/v1",
                "kind": "HNAS",
                "metadata": {
                  "name": "hnas",
                  "namespace": "kube-system"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Storage
          containerImage: registry.hitachivantara.com/fpgroup-docker-public/hnas-csi-operator@sha256:9d3f9f10fc7172ee9cebbd9ee318906756d7e96909f2e66e0534e98bb53e0a7b
          createdAt: "2025-07-30T15:12:23Z"
          description: An operator for managing Hitachi NAS CSI driver
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.38.0
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HNAS is the Schema for the hnas API
            displayName: HNAS
            kind: HNAS
            name: hnas.charts.csi.hitachi.com
            version: v1
        description: |-
          The Hitachi NAS CSI driver operator deploys the Hitachi NAS CSI driver on Kubernetes and OpenShift environments.  The driver can be used to create and manage persistent storage hosted on Hitachi NAS products, including those in the Hitachi VSP One File 3x range and the HNAS range of products.

          For the complete documentation, go to our [Product Documentation site](https://docs.hitachivantara.com/home) and refer to the Hitachi NAS CSI Driver User Guide - MK-92HNAS091.  The guide covers prerequisites for the NAS system and covers the driver functionality and all configuration options available for the driver.
        displayName: Hitachi NAS CSI Driver Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Hitachi
        - Storage
        - Container Storage Interface
        - CSI
        - NAS
        links:
        - name: Product Documentation
          url: https://docs.hitachivantara.com/home
        maturity: stable
        minKubeVersion: 1.28.0
        provider:
          name: Hitachi
        relatedImages:
        - registry.connect.redhat.com/hitachi/hnas-csi-operator-bundle@sha256:79e6ba3db78aa55a9f3839a172843d284d91e9cdaae9cb2c8e7e705f3d03115d
        - registry.hitachivantara.com/fpgroup-docker-public/hnas-csi-driver@sha256:6b6f6816c9f4e608e93e7fbc0347255415426a0ff0c9a53b7750e5ba54d91262
        - registry.k8s.io/sig-storage/csi-resizer@sha256:ab774734705a906561e15b67f6a96538f3ad520335d636f793aaafe87a3b5200
        - registry.k8s.io/sig-storage/csi-attacher@sha256:a399393ff5bd156277c56bae0c08389b1a1b95b7fd6ea44a316ce55e0dd559d7
        - registry.hitachivantara.com/fpgroup-docker-public/hnas-csi-operator@sha256:9d3f9f10fc7172ee9cebbd9ee318906756d7e96909f2e66e0534e98bb53e0a7b
        - registry.k8s.io/sig-storage/csi-node-driver-registrar@sha256:d7138bcc3aa5f267403d45ad4292c95397e421ea17a0035888850f424c7de25d
        - registry.k8s.io/sig-storage/csi-provisioner@sha256:d5e46da8aff7d73d6f00c761dae94472bcda6e78f4f17b3802dc89d44de0111b
        - registry.k8s.io/sig-storage/csi-snapshotter@sha256:dd788d79cf4c1b8edee6d9b80b8a1ebfc51a38a365c5be656986b129be9ac784
        - registry.k8s.io/sig-storage/livenessprobe@sha256:2c5f9dc4ea5ac5509d93c664ae7982d4ecdec40ca7b0638c24e5b16243b8360f
        version: 1.0.0
      entries:
      - name: hnas-csi-operator.v1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: hnas-csi-operator
    provider:
      name: Hitachi
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-recyclebin-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-recyclebin-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "recyclebin.services.k8s.aws/v1alpha1",
                "kind": "Rule",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/recyclebin-controller:1.2.0
          createdAt: "2025-11-29T04:03:10Z"
          description: AWS Recycle Bin controller is a service controller for managing
            Recycle Bin resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Rule represents the state of an AWS recyclebin Rule resource.
            displayName: Rule
            kind: Rule
            name: rules.recyclebin.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Recycle Bin resources in AWS from within your Kubernetes cluster.

          **About Amazon Recycle Bin**

          Recycle Bin is a data recovery feature that enables you to restore accidentally deleted Amazon EBS snapshots and EBS-backed AMIs. When using Recycle Bin, if your resources are deleted, they are retained in the Recycle Bin for a time period that you specify before being permanently deleted.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Recycle Bin
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - recyclebin
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Recycle Bin Developer Resources
          url: https://docs.aws.amazon.com/ebs/latest/userguide/recycle-bin.html
        maintainers:
        - email: ack-maintainers@amazon.com
          name: recyclebin maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/recyclebin-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-recyclebin-controller@sha256:1444a27bbf0d726d65f6e5e513e47828ad4259751a8bb0695ecc72dafe5eaac7
        version: 1.2.0
      entries:
      - name: ack-recyclebin-controller.v1.2.0
        version: 1.2.0
      - name: ack-recyclebin-controller.v1.1.2
        version: 1.1.2
      - name: ack-recyclebin-controller.v1.1.1
        version: 1.1.1
      - name: ack-recyclebin-controller.v1.1.0
        version: 1.1.0
      - name: ack-recyclebin-controller.v1.0.13
        version: 1.0.13
      - name: ack-recyclebin-controller.v1.0.12
        version: 1.0.12
      - name: ack-recyclebin-controller.v1.0.11
        version: 1.0.11
      - name: ack-recyclebin-controller.v1.0.10
        version: 1.0.10
      - name: ack-recyclebin-controller.v1.0.9
        version: 1.0.9
      - name: ack-recyclebin-controller.v1.0.8
        version: 1.0.8
      - name: ack-recyclebin-controller.v1.0.7
        version: 1.0.7
      - name: ack-recyclebin-controller.v1.0.6
        version: 1.0.6
      - name: ack-recyclebin-controller.v1.0.5
        version: 1.0.5
      - name: ack-recyclebin-controller.v1.0.2
        version: 1.0.2
      - name: ack-recyclebin-controller.v1.0.1
        version: 1.0.1
      - name: ack-recyclebin-controller.v1.0.0
        version: 1.0.0
      - name: ack-recyclebin-controller.v0.0.3
        version: 0.0.3
      - name: ack-recyclebin-controller.v0.0.2
        version: 0.0.2
      - name: ack-recyclebin-controller.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ack-recyclebin-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Carlos Eduardo de Paula
      provider-url: ""
    name: lbconfig-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: lbconfig-operator.v0.5.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "lb.lbconfig.carlosedp.com/v1",
                "kind": "ExternalLoadBalancer",
                "metadata": {
                  "name": "externalloadbalancer-infra-sample",
                  "namespace": "lbconfig-operator-system"
                },
                "spec": {
                  "monitor": {
                    "monitortype": "http",
                    "path": "/healthz",
                    "port": 1936
                  },
                  "ports": [
                    80,
                    443
                  ],
                  "provider": {
                    "creds": "f5-creds",
                    "host": "https://192.168.1.35",
                    "partition": "Common",
                    "port": 443,
                    "validatecerts": false,
                    "vendor": "F5_BigIP"
                  },
                  "type": "infra",
                  "vip": "192.168.1.45"
                }
              },
              {
                "apiVersion": "lb.lbconfig.carlosedp.com/v1",
                "kind": "ExternalLoadBalancer",
                "metadata": {
                  "name": "externalloadbalancer-infra-sample-shard",
                  "namespace": "lbconfig-operator-system"
                },
                "spec": {
                  "monitor": {
                    "monitortype": "http",
                    "path": "/healthz",
                    "port": 1936
                  },
                  "nodelabels": {
                    "kubernetes.io/region": "DC1",
                    "node-role.kubernetes.io/infra": ""
                  },
                  "ports": [
                    80,
                    443
                  ],
                  "provider": {
                    "creds": "f5-creds",
                    "host": "https://192.168.1.35",
                    "partition": "Common",
                    "port": 443,
                    "validatecerts": false,
                    "vendor": "F5_BigIP"
                  },
                  "type": "infra",
                  "vip": "192.168.1.46"
                }
              },
              {
                "apiVersion": "lb.lbconfig.carlosedp.com/v1",
                "kind": "ExternalLoadBalancer",
                "metadata": {
                  "name": "externalloadbalancer-master-sample",
                  "namespace": "lbconfig-operator-system"
                },
                "spec": {
                  "monitor": {
                    "monitortype": "https",
                    "path": "/healthz",
                    "port": 6443
                  },
                  "ports": [
                    6443
                  ],
                  "provider": {
                    "creds": "netscaler-creds",
                    "host": "https://192.168.1.36",
                    "port": 443,
                    "validatecerts": false,
                    "vendor": "Citrix_ADC"
                  },
                  "type": "master",
                  "vip": "192.168.1.40"
                }
              }
            ]
          capabilities: Auto Pilot
          categories: Networking
          certified: "false"
          containerImage: quay.io/carlosedp/lbconfig-operator:v0.5.1
          createdAt: "2025-01-09T15:45:28Z"
          description: Manage External Load Balancers allowing creation/update for
            VIPs and Servers dynamically via API.
          k8sMaxVersion: ""
          k8sMinVersion: ""
          operators.operatorframework.io/builder: operator-sdk-v1.37.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/carlosedp/lbconfig-operator
          support: https://github.com/carlosedp/lbconfig-operator
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: ExternalLoadBalancer is the Schema for the externalloadbalancers
              API
            displayName: ExternalLoadBalancer Instance
            kind: ExternalLoadBalancer
            name: externalloadbalancers.lb.lbconfig.carlosedp.com
            version: v1
          required:
          - description: ExternalLoadBalancer represents a configured instance of
              an external Load-Balancer for a specific group of nodes of the cluster.
              The Instance has a VIP and ports to be balanced to the cluster nodes
              based on a set of node labels.
            displayName: External Load-Balancer Configuration Instance
            kind: ExternalLoadBalancer
            name: externalloadbalancers.lb.lbconfig.carlosedp.com
            version: v1
        description: |
          ## About the Operator

          The LBConfig Operator, manages the configuration of External Load Balancer instances (on third-party equipment via it's API) and creates VIPs and IP Pools with Monitors for a set of OpenShift or Kubernetes nodes like Master-nodes (Control-Plane), Infra nodes (where the Routers or Ingress controllers are located) or based on it's roles and/or labels.

          The operator dynamically handles creating, updating or deleting the IPs of the pools in the Load Balancer based on the Node IPs for each role or label. On every change of the operator configuration (CRDs) or addition/change/removal or cluster Nodes, the operator updates the Load Balancer properly.

          ## Main Use Cases

          The main users for this operator is enterprise deployments or clusters composed of multiple nodes having an external load-balancer providing the balancing and high-availability to access the cluster in both API and Application levels.

          ### Create ExternalLoadBalancer Instances

          Create the instances for each Load Balancer instance you need (for example one for Master Nodes and another for the Infra Nodes). **If installing on OpenShift or Kubernetes with OLM (or in a different namespace), adjust the sample YAMLs to match the created namespace**.

          **The provider `vendor` field can be (case-insensitive):**

          * **`F5_BigIP`** - Tested on F5 BigIP version 15
          * **`Citrix_ADC`** - Tested on Citrix ADC (Netscaler) version 13
          * **`HAProxy`** - HAProxy with Dataplane API. ([Docs](./docs/haproxy/))
          * **`Dummy`** - Dummy backend used for testing to only print log messages on operations

          Create the secret holding the Load Balancer API user and password:

          ```sh
          oc create secret generic f5-creds --from-literal=username=admin --from-literal=password=admin123 --namespace lbconfig-operator-system
          ```

          #### Sample CRDs and Available Fields

          Master Nodes using a Citrix ADC LB:

          ```yaml
          apiVersion: lb.lbconfig.carlosedp.com/v1
          kind: ExternalLoadBalancer
          metadata:
            name: externalloadbalancer-master-sample
            namespace: lbconfig-operator-system
          spec:
            vip: "192.168.1.40"
            type: "master"
            ports:
              - 6443
            monitor:
              path: "/healthz"
              port: 6443
              monitortype: "https"
            provider:
              vendor: Citrix_ADC
              host: "https://192.168.1.36"
              port: 443
              creds: netscaler-creds
              validatecerts: false
          ```

          Infra Nodes using a F5 BigIP LB:

          ```yaml
          apiVersion: lb.lbconfig.carlosedp.com/v1
          kind: ExternalLoadBalancer
          metadata:
            name: externalloadbalancer-infra-sample
            namespace: lbconfig-operator-system
          spec:
            vip: "192.168.1.45"
            type: "infra"
            ports:
              - 80
              - 443
            monitor:
              path: "/healthz"
              port: 1936
              monitortype: http
            provider:
              vendor: F5_BigIP
              host: "https://192.168.1.35"
              port: 443
              creds: f5-creds
              partition: "Common"
              validatecerts: false
          ```

          To choose the nodes which will be part of the server pool, you can set either `type` or `nodelabels` fields. The yaml field `type: "master"` or `type: "infra"` selects nodes with the role label `"node-role.kubernetes.io/master"` and `"node-role.kubernetes.io/infra"` respectively. If the field `nodelabels` array is used instead, the operator will use nodes which match all labels.

          Clusters with sharded routers or using arbitrary labels to determine where the Ingress Controllers run can be configured like:

          ```yaml
          spec:
            vip: "10.0.0.6"
            ports:
              - 80
            nodelabels:
              "node.kubernetes.io/ingress-controller": "production"
              "kubernetes.io/region": "DC1"
            ...
          ```

          ## Getting Help

          This project fully open-source and is hosted at [GitHub](https://github.com/carlosedp/lbconfig-operator). Always check the project page and issues for the latest updates and/or solutions to problems encountered. If a problem is detected, please fill an issue. Feature request and improvement issues are welcome.

          Some fields inside `providers` are optional and depend on the used backend. Check the [API docs](https://pkg.go.dev/github.com/carlosedp/lbconfig-operator/api/lb.lbconfig.carlosedp.com/v1?utm_source=gopls#Provider) which fields are backend-specific.

          ## Disclaimers

          * The operator does not check if the requested configuration (names, IPs) already exists and/or conflicts with existing configuration in the Load Balancer. The user is responsible for these checks before deployment;
          * I am not responsible if the operator changes/deletes existing configuration on the Load Balancer if existing names are already configured.
          * The operator creates the entries(Pools, VIPs, Monitors) in the provided Load Balancer with the `name` of the instance configured in the CustomResource prefixed with the type. Eg. For a CR with name `externalloadbalancer-master-sample`, the operator creates a server pool named `Pool-externalloadbalancer-master-sample-6443` (suffixed with the port), a monitor named `Monitor-externalloadbalancer-master-sample` and a VIP named `VIP-externalloadbalancer-master-sample-6443` (suffixed with the port).
        displayName: External Load-Balancer Configuration Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - 'load-balance '
        - infrastructure
        links:
        - name: GitHub
          url: https://github.com/carlosedp/lbconfig-operator
        - name: Documentation
          url: https://github.com/carlosedp/lbconfig-operator/docs
        - name: Issues
          url: https://github.com/carlosedp/lbconfig-operator/issues
        maintainers:
        - email: carlosedp@gmail.com
          name: Carlos Eduardo de Paula
        maturity: beta
        minKubeVersion: 1.18.0
        provider:
          name: Carlos Eduardo de Paula
        relatedImages:
        - quay.io/community-operator-pipeline-prod/lbconfig-operator@sha256:b0bb724a5d9905633962a3e8267e75d371f754bce866a29cba3ac0d0c671ebff
        - quay.io/carlosedp/kube-rbac-proxy:v0.15.0
        - quay.io/carlosedp/lbconfig-operator:v0.5.1
        version: 0.5.1
      entries:
      - name: lbconfig-operator.v0.5.1
        version: 0.5.1
      - name: lbconfig-operator.v0.5.0
        version: 0.5.0
      - name: lbconfig-operator.v0.4.1
        version: 0.4.1
      - name: lbconfig-operator.v0.4.0
        version: 0.4.0
      - name: lbconfig-operator.v0.2.0
        version: 0.2.0
      name: beta
    defaultChannel: beta
    packageName: lbconfig-operator
    provider:
      name: Carlos Eduardo de Paula
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: The Sigstore Authors
      provider-url: https://sigstore.dev
    name: sigstore-helm-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sigstore-helm-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "helm.sigstore.dev/v1alpha1",
                "kind": "Rekor",
                "metadata": {
                  "name": "rekor"
                },
                "spec": {
                  "server": {
                    "ingress": {
                      "hostname": "rekor.example.com"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Security
          containerImage: ghcr.io/sigstore/sigstore-helm-operator@sha256:d9c6eb162b97a1aa1ad3bf515db65d01a96e55b6f8bcd646864d3e64a3ee2b9e
          createdAt: "2021-09-01T21:20:28Z"
          description: Helm Charts for Sigstore Project.
          operators.operatorframework.io/builder: operator-sdk-v1.8.0+git
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/sigstore/sigstore-helm-operator
          support: The Sigstore Authors
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: Rekor
            name: rekors.helm.sigstore.dev
            version: v1alpha1
        description: |-
          Helm Charts for the sigstore project

          ## Charts

          The following charts are available:

          * [Rekor](https://github.com/sigstore/helm-charts/tree/main/charts/rekor)
        displayName: sigstore
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - security
        links:
        - name: Sigstore Helm Operator
          url: https://github.com/sabre1041/sigstore-helm-operator
        maintainers:
        - email: ablock@redhat.com
          name: Andrew Block
        maturity: alpha
        provider:
          name: The Sigstore Authors
          url: https://sigstore.dev
        relatedImages:
        - ghcr.io/sigstore/sigstore-helm-operator@sha256:d9c6eb162b97a1aa1ad3bf515db65d01a96e55b6f8bcd646864d3e64a3ee2b9e
        - quay.io/coreos/kube-rbac-proxy@sha256:e10d1d982dd653db74ca87a1d1ad017bc5ef1aeb651bdea089debf16485b080b
        - quay.io/openshift-community-operators/sigstore-helm-operator@sha256:ff4e548a8a003bd23e5076362bafb2e22f77b8445c5e3585d99cd5ce26fcaf56
        version: 0.0.1
      entries:
      - name: sigstore-helm-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: sigstore-helm-operator
    provider:
      name: The Sigstore Authors
      url: https://sigstore.dev
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: ember-csi-community-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ember-csi-community-operator.v0.9.9
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ember-csi.io/v1alpha1",
                "kind": "EmberStorageBackend",
                "metadata": {
                  "name": "example"
                },
                "spec": {
                  "config": {
                    "envVars": {
                      "X_CSI_PERSISTENCE_CONFIG": {
                        "storage": "crd"
                      },
                      "X_CSI_DEBUG_MODE": "",
                      "X_CSI_DEFAULT_MOUNT_FS": "ext4",
                      "X_CSI_EMBER_CONFIG": {
                        "grpc_workers": 30,
                        "disable_logs": false,
                        "plugin_name": "",
                        "slow_operations": true,
                        "disabled": [],
                        "enable_probe": false,
                        "debug": false,
                        "user_id": "ember_csi.io",
                        "project_id": "ember_csi.io"
                      },
                      "X_CSI_BACKEND_CONFIG": {
                        "enable_unsupported_driver": false,
                        "driver": "ACCESSIscsi",
                        "name": "",
                        "driver__ACCESSIscsi__vrts_lun_sparse": true,
                        "driver__ACCESSIscsi__vrts_target_config": "/etc/cinder/vrts_target.xml",
                        "driver__AS13000__as13000_ipsan_pools__transform_csv": "Pool0",
                        "driver__AS13000__as13000_meta_pool": "",
                        "driver__AS13000__as13000_token_available_time": 3300,
                        "driver__Acs5000ISCSI__acs5000_copy_interval": 5,
                        "driver__Acs5000ISCSI__acs5000_target": 0,
                        "driver__Acs5000ISCSI__acs5000_volpool_name__transform_csv": "pool01",
                        "driver__DPLFC__dpl_pool": "",
                        "driver__DPLFC__dpl_port": 8357,
                        "driver__DPLISCSI__dpl_pool": "",
                        "driver__DPLISCSI__dpl_port": 8357,
                        "driver__DSWARE__dsware_rest_url": "",
                        "driver__DSWARE__dsware_storage_pools": "",
                        "driver__DSWARE__manager_ips__transform_csv_kvs": "",
                        "driver__Datera__backend_availability_zone": "",
                        "driver__Datera__chap_password": "",
                        "driver__Datera__chap_username": "",
                        "driver__Datera__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__Datera__driver_client_cert": "",
                        "driver__Datera__driver_client_cert_key": "",
                        "driver__Datera__driver_data_namespace": "",
                        "driver__Datera__driver_ssl_cert_path": "",
                        "driver__Datera__driver_ssl_cert_verify": false,
                        "driver__Datera__driver_use_ssl": false,
                        "driver__Datera__filter_function": "",
                        "driver__Datera__goodness_function": "",
                        "driver__Datera__iscsi_iotype": "fileio",
                        "driver__Datera__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__Datera__iscsi_target_flags": "",
                        "driver__Datera__iscsi_write_cache": "on",
                        "driver__Datera__num_shell_tries": 3,
                        "driver__Datera__num_volume_device_scan_tries": 3,
                        "driver__Datera__report_discard_supported": false,
                        "driver__Datera__storage_protocol": "iscsi",
                        "driver__Datera__target_helper": "tgtadm",
                        "driver__Datera__target_ip_address": "$my_ip",
                        "driver__Datera__target_port": 3260,
                        "driver__Datera__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__Datera__target_protocol": "iscsi",
                        "driver__Datera__trace_flags__transform_csv": "",
                        "driver__Datera__use_chap_auth": false,
                        "driver__Datera__volume_backend_name": "",
                        "driver__Datera__volume_clear": "zero",
                        "driver__Datera__volume_clear_ionice": "",
                        "driver__Datera__volume_clear_size": 0,
                        "driver__Datera__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__Datera__volume_copy_bps_limit": 0,
                        "driver__Datera__volume_dd_blocksize": "1M",
                        "driver__Datera__volumes_dir": "$state_path/volumes",
                        "driver__FJDXFC__cinder_eternus_config_file": "/etc/cinder/cinder_fujitsu_eternus_dx.xml",
                        "driver__FJDXISCSI__cinder_eternus_config_file": "/etc/cinder/cinder_fujitsu_eternus_dx.xml",
                        "driver__FlashSystemFC__flashsystem_connection_protocol": "FC",
                        "driver__FlashSystemFC__flashsystem_multihostmap_enabled": true,
                        "driver__FlashSystemISCSI__flashsystem_connection_protocol": "FC",
                        "driver__FlashSystemISCSI__flashsystem_multihostmap_enabled": true,
                        "driver__GPFS__gpfs_images_dir": "",
                        "driver__GPFS__gpfs_images_share_mode__transform_empty_none": "",
                        "driver__GPFS__gpfs_max_clone_depth": 0,
                        "driver__GPFS__gpfs_mount_point_base": "",
                        "driver__GPFS__gpfs_sparse_volumes": true,
                        "driver__GPFS__gpfs_storage_pool": "system",
                        "driver__GPFSRemote__gpfs_hosts__transform_csv": "",
                        "driver__GPFSRemote__gpfs_hosts_key_file": "$state_path/ssh_known_hosts",
                        "driver__GPFSRemote__gpfs_images_dir": "",
                        "driver__GPFSRemote__gpfs_images_share_mode__transform_empty_none": "",
                        "driver__GPFSRemote__gpfs_max_clone_depth": 0,
                        "driver__GPFSRemote__gpfs_mount_point_base": "",
                        "driver__GPFSRemote__gpfs_private_key": "",
                        "driver__GPFSRemote__gpfs_sparse_volumes": true,
                        "driver__GPFSRemote__gpfs_ssh_port": 22,
                        "driver__GPFSRemote__gpfs_storage_pool": "system",
                        "driver__GPFSRemote__gpfs_strict_host_key_policy": false,
                        "driver__GPFSRemote__gpfs_user_login": "root",
                        "driver__GPFSRemote__gpfs_user_password": "",
                        "driver__HBSDFC__backend_availability_zone": "",
                        "driver__HBSDFC__chap_password": "",
                        "driver__HBSDFC__chap_username": "",
                        "driver__HBSDFC__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__HBSDFC__driver_client_cert": "",
                        "driver__HBSDFC__driver_client_cert_key": "",
                        "driver__HBSDFC__driver_data_namespace": "",
                        "driver__HBSDFC__driver_ssl_cert_path": "",
                        "driver__HBSDFC__driver_ssl_cert_verify": false,
                        "driver__HBSDFC__driver_use_ssl": false,
                        "driver__HBSDFC__filter_function": "",
                        "driver__HBSDFC__goodness_function": "",
                        "driver__HBSDFC__iscsi_iotype": "fileio",
                        "driver__HBSDFC__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__HBSDFC__iscsi_target_flags": "",
                        "driver__HBSDFC__iscsi_write_cache": "on",
                        "driver__HBSDFC__num_shell_tries": 3,
                        "driver__HBSDFC__num_volume_device_scan_tries": 3,
                        "driver__HBSDFC__report_discard_supported": false,
                        "driver__HBSDFC__storage_protocol": "iscsi",
                        "driver__HBSDFC__target_helper": "tgtadm",
                        "driver__HBSDFC__target_ip_address": "$my_ip",
                        "driver__HBSDFC__target_port": 3260,
                        "driver__HBSDFC__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__HBSDFC__target_protocol": "iscsi",
                        "driver__HBSDFC__trace_flags__transform_csv": "",
                        "driver__HBSDFC__use_chap_auth": false,
                        "driver__HBSDFC__volume_backend_name": "",
                        "driver__HBSDFC__volume_clear": "zero",
                        "driver__HBSDFC__volume_clear_ionice": "",
                        "driver__HBSDFC__volume_clear_size": 0,
                        "driver__HBSDFC__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__HBSDFC__volume_copy_bps_limit": 0,
                        "driver__HBSDFC__volume_dd_blocksize": "1M",
                        "driver__HBSDFC__volumes_dir": "$state_path/volumes",
                        "driver__HBSDISCSI__backend_availability_zone": "",
                        "driver__HBSDISCSI__chap_password": "",
                        "driver__HBSDISCSI__chap_username": "",
                        "driver__HBSDISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__HBSDISCSI__driver_client_cert": "",
                        "driver__HBSDISCSI__driver_client_cert_key": "",
                        "driver__HBSDISCSI__driver_data_namespace": "",
                        "driver__HBSDISCSI__driver_ssl_cert_path": "",
                        "driver__HBSDISCSI__driver_ssl_cert_verify": false,
                        "driver__HBSDISCSI__driver_use_ssl": false,
                        "driver__HBSDISCSI__filter_function": "",
                        "driver__HBSDISCSI__goodness_function": "",
                        "driver__HBSDISCSI__iscsi_iotype": "fileio",
                        "driver__HBSDISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__HBSDISCSI__iscsi_target_flags": "",
                        "driver__HBSDISCSI__iscsi_write_cache": "on",
                        "driver__HBSDISCSI__num_shell_tries": 3,
                        "driver__HBSDISCSI__num_volume_device_scan_tries": 3,
                        "driver__HBSDISCSI__report_discard_supported": false,
                        "driver__HBSDISCSI__storage_protocol": "iscsi",
                        "driver__HBSDISCSI__target_helper": "tgtadm",
                        "driver__HBSDISCSI__target_ip_address": "$my_ip",
                        "driver__HBSDISCSI__target_port": 3260,
                        "driver__HBSDISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__HBSDISCSI__target_protocol": "iscsi",
                        "driver__HBSDISCSI__trace_flags__transform_csv": "",
                        "driver__HBSDISCSI__use_chap_auth": false,
                        "driver__HBSDISCSI__volume_backend_name": "",
                        "driver__HBSDISCSI__volume_clear": "zero",
                        "driver__HBSDISCSI__volume_clear_ionice": "",
                        "driver__HBSDISCSI__volume_clear_size": 0,
                        "driver__HBSDISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__HBSDISCSI__volume_copy_bps_limit": 0,
                        "driver__HBSDISCSI__volume_dd_blocksize": "1M",
                        "driver__HBSDISCSI__volumes_dir": "$state_path/volumes",
                        "driver__HPE3PARFC__hpe3par_api_url": "",
                        "driver__HPE3PARFC__hpe3par_cpg__transform_csv": "OpenStack",
                        "driver__HPE3PARFC__hpe3par_cpg_snap": "",
                        "driver__HPE3PARFC__hpe3par_debug": false,
                        "driver__HPE3PARFC__hpe3par_iscsi_chap_enabled": false,
                        "driver__HPE3PARFC__hpe3par_iscsi_ips__transform_csv": "",
                        "driver__HPE3PARFC__hpe3par_password": "",
                        "driver__HPE3PARFC__hpe3par_snapshot_expiration": "",
                        "driver__HPE3PARFC__hpe3par_snapshot_retention": "",
                        "driver__HPE3PARFC__hpe3par_target_nsp": "",
                        "driver__HPE3PARFC__hpe3par_username": "",
                        "driver__HPE3PARFC__san_ip": "",
                        "driver__HPE3PARFC__san_login": "admin",
                        "driver__HPE3PARFC__san_password": "",
                        "driver__HPE3PARFC__san_private_key": "",
                        "driver__HPE3PARFC__san_ssh_port": 22,
                        "driver__HPE3PARFC__ssh_conn_timeout": 30,
                        "driver__HPE3PARFC__target_ip_address": "$my_ip",
                        "driver__HPE3PARFC__target_port": 3260,
                        "driver__HPE3PARFC__unique_fqdn_network": true,
                        "driver__HPE3PARISCSI__hpe3par_api_url": "",
                        "driver__HPE3PARISCSI__hpe3par_cpg__transform_csv": "OpenStack",
                        "driver__HPE3PARISCSI__hpe3par_cpg_snap": "",
                        "driver__HPE3PARISCSI__hpe3par_debug": false,
                        "driver__HPE3PARISCSI__hpe3par_iscsi_chap_enabled": false,
                        "driver__HPE3PARISCSI__hpe3par_iscsi_ips__transform_csv": "",
                        "driver__HPE3PARISCSI__hpe3par_password": "",
                        "driver__HPE3PARISCSI__hpe3par_snapshot_expiration": "",
                        "driver__HPE3PARISCSI__hpe3par_snapshot_retention": "",
                        "driver__HPE3PARISCSI__hpe3par_target_nsp": "",
                        "driver__HPE3PARISCSI__hpe3par_username": "",
                        "driver__HPE3PARISCSI__san_ip": "",
                        "driver__HPE3PARISCSI__san_login": "admin",
                        "driver__HPE3PARISCSI__san_password": "",
                        "driver__HPE3PARISCSI__san_private_key": "",
                        "driver__HPE3PARISCSI__san_ssh_port": 22,
                        "driver__HPE3PARISCSI__ssh_conn_timeout": 30,
                        "driver__HPE3PARISCSI__target_ip_address": "$my_ip",
                        "driver__HPE3PARISCSI__target_port": 3260,
                        "driver__HPE3PARISCSI__unique_fqdn_network": true,
                        "driver__HPMSAFC__driver_ssl_cert_path": "",
                        "driver__HPMSAFC__driver_ssl_cert_verify": false,
                        "driver__HPMSAFC__driver_use_ssl": false,
                        "driver__HPMSAFC__hpmsa_pool_name": "A",
                        "driver__HPMSAFC__hpmsa_pool_type": "virtual",
                        "driver__HPMSAFC__san_ip": "",
                        "driver__HPMSAFC__san_login": "admin",
                        "driver__HPMSAFC__san_password": "",
                        "driver__HPMSAISCSI__driver_ssl_cert_path": "",
                        "driver__HPMSAISCSI__driver_ssl_cert_verify": false,
                        "driver__HPMSAISCSI__driver_use_ssl": false,
                        "driver__HPMSAISCSI__hpmsa_iscsi_ips__transform_csv": "",
                        "driver__HPMSAISCSI__hpmsa_pool_name": "A",
                        "driver__HPMSAISCSI__hpmsa_pool_type": "virtual",
                        "driver__HPMSAISCSI__san_ip": "",
                        "driver__HPMSAISCSI__san_login": "admin",
                        "driver__HPMSAISCSI__san_password": "",
                        "driver__HuaweiFC__cinder_huawei_conf_file": "/etc/cinder/cinder_huawei_conf.xml",
                        "driver__HuaweiFC__hypermetro_devices": "",
                        "driver__HuaweiFC__metro_domain_name": "",
                        "driver__HuaweiFC__metro_san_address": "",
                        "driver__HuaweiFC__metro_san_password": "",
                        "driver__HuaweiFC__metro_san_user": "",
                        "driver__HuaweiFC__metro_storage_pools": "",
                        "driver__HuaweiISCSI__cinder_huawei_conf_file": "/etc/cinder/cinder_huawei_conf.xml",
                        "driver__HuaweiISCSI__hypermetro_devices": "",
                        "driver__HuaweiISCSI__metro_domain_name": "",
                        "driver__HuaweiISCSI__metro_san_address": "",
                        "driver__HuaweiISCSI__metro_san_password": "",
                        "driver__HuaweiISCSI__metro_san_user": "",
                        "driver__HuaweiISCSI__metro_storage_pools": "",
                        "driver__IBMStorage__chap": "disabled",
                        "driver__IBMStorage__connection_type": "iscsi",
                        "driver__IBMStorage__management_ips": "",
                        "driver__IBMStorage__proxy": "cinder.volume.drivers.ibm.ibm_storage.proxy.IBMStorageProxy",
                        "driver__InStorageMCSFC__instorage_mcs_allow_tenant_qos": false,
                        "driver__InStorageMCSFC__instorage_mcs_localcopy_rate": 50,
                        "driver__InStorageMCSFC__instorage_mcs_localcopy_timeout": 120,
                        "driver__InStorageMCSFC__instorage_mcs_vol_autoexpand": true,
                        "driver__InStorageMCSFC__instorage_mcs_vol_compression": false,
                        "driver__InStorageMCSFC__instorage_mcs_vol_grainsize": 256,
                        "driver__InStorageMCSFC__instorage_mcs_vol_intier": true,
                        "driver__InStorageMCSFC__instorage_mcs_vol_iogrp": "0",
                        "driver__InStorageMCSFC__instorage_mcs_vol_rsize": 2,
                        "driver__InStorageMCSFC__instorage_mcs_vol_warning": 0,
                        "driver__InStorageMCSFC__instorage_mcs_volpool_name__transform_csv": "volpool",
                        "driver__InStorageMCSFC__instorage_san_secondary_ip": "",
                        "driver__InStorageMCSISCSI__instorage_mcs_allow_tenant_qos": false,
                        "driver__InStorageMCSISCSI__instorage_mcs_localcopy_rate": 50,
                        "driver__InStorageMCSISCSI__instorage_mcs_localcopy_timeout": 120,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_autoexpand": true,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_compression": false,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_grainsize": 256,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_intier": true,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_iogrp": "0",
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_rsize": 2,
                        "driver__InStorageMCSISCSI__instorage_mcs_vol_warning": 0,
                        "driver__InStorageMCSISCSI__instorage_mcs_volpool_name__transform_csv": "volpool",
                        "driver__InStorageMCSISCSI__instorage_san_secondary_ip": "",
                        "driver__InfiniboxVolume__chap_password": "",
                        "driver__InfiniboxVolume__chap_username": "",
                        "driver__InfiniboxVolume__infinidat_iscsi_netspaces__transform_csv": "",
                        "driver__InfiniboxVolume__infinidat_pool_name": "",
                        "driver__InfiniboxVolume__infinidat_storage_protocol": "fc",
                        "driver__InfiniboxVolume__infinidat_use_compression": false,
                        "driver__InfiniboxVolume__num_volume_device_scan_tries": 3,
                        "driver__InfiniboxVolume__san_ip": "",
                        "driver__InfiniboxVolume__san_login": "admin",
                        "driver__InfiniboxVolume__san_password": "",
                        "driver__InfiniboxVolume__san_thin_provision": true,
                        "driver__InfiniboxVolume__use_chap_auth": false,
                        "driver__InfiniboxVolume__volume_dd_blocksize": "1M",
                        "driver__InfortrendCLIFC__infortrend_cli_cache": false,
                        "driver__InfortrendCLIFC__infortrend_cli_max_retries": 5,
                        "driver__InfortrendCLIFC__infortrend_cli_path": "/opt/bin/Infortrend/raidcmd_ESDS10.jar",
                        "driver__InfortrendCLIFC__infortrend_cli_timeout": 60,
                        "driver__InfortrendCLIFC__infortrend_iqn_prefix": "iqn.2002-10.com.infortrend",
                        "driver__InfortrendCLIFC__infortrend_pools_name__transform_csv": "",
                        "driver__InfortrendCLIFC__infortrend_slots_a_channels_id__transform_csv": "",
                        "driver__InfortrendCLIFC__infortrend_slots_b_channels_id__transform_csv": "",
                        "driver__InfortrendCLIFC__java_path": "/usr/bin/java",
                        "driver__InfortrendCLIISCSI__infortrend_cli_cache": false,
                        "driver__InfortrendCLIISCSI__infortrend_cli_max_retries": 5,
                        "driver__InfortrendCLIISCSI__infortrend_cli_path": "/opt/bin/Infortrend/raidcmd_ESDS10.jar",
                        "driver__InfortrendCLIISCSI__infortrend_cli_timeout": 60,
                        "driver__InfortrendCLIISCSI__infortrend_iqn_prefix": "iqn.2002-10.com.infortrend",
                        "driver__InfortrendCLIISCSI__infortrend_pools_name__transform_csv": "",
                        "driver__InfortrendCLIISCSI__infortrend_slots_a_channels_id__transform_csv": "",
                        "driver__InfortrendCLIISCSI__infortrend_slots_b_channels_id__transform_csv": "",
                        "driver__InfortrendCLIISCSI__java_path": "/usr/bin/java",
                        "driver__JovianISCSI__backend_availability_zone": "",
                        "driver__JovianISCSI__chap_password": "",
                        "driver__JovianISCSI__chap_username": "",
                        "driver__JovianISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__JovianISCSI__driver_client_cert": "",
                        "driver__JovianISCSI__driver_client_cert_key": "",
                        "driver__JovianISCSI__driver_data_namespace": "",
                        "driver__JovianISCSI__driver_ssl_cert_path": "",
                        "driver__JovianISCSI__driver_ssl_cert_verify": false,
                        "driver__JovianISCSI__driver_use_ssl": false,
                        "driver__JovianISCSI__filter_function": "",
                        "driver__JovianISCSI__goodness_function": "",
                        "driver__JovianISCSI__iscsi_iotype": "fileio",
                        "driver__JovianISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__JovianISCSI__iscsi_target_flags": "",
                        "driver__JovianISCSI__iscsi_write_cache": "on",
                        "driver__JovianISCSI__num_shell_tries": 3,
                        "driver__JovianISCSI__num_volume_device_scan_tries": 3,
                        "driver__JovianISCSI__report_discard_supported": false,
                        "driver__JovianISCSI__storage_protocol": "iscsi",
                        "driver__JovianISCSI__target_helper": "tgtadm",
                        "driver__JovianISCSI__target_ip_address": "$my_ip",
                        "driver__JovianISCSI__target_port": 3260,
                        "driver__JovianISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__JovianISCSI__target_protocol": "iscsi",
                        "driver__JovianISCSI__trace_flags__transform_csv": "",
                        "driver__JovianISCSI__use_chap_auth": false,
                        "driver__JovianISCSI__volume_backend_name": "",
                        "driver__JovianISCSI__volume_clear": "zero",
                        "driver__JovianISCSI__volume_clear_ionice": "",
                        "driver__JovianISCSI__volume_clear_size": 0,
                        "driver__JovianISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__JovianISCSI__volume_copy_bps_limit": 0,
                        "driver__JovianISCSI__volume_dd_blocksize": "1M",
                        "driver__JovianISCSI__volumes_dir": "$state_path/volumes",
                        "driver__KaminarioISCSI__disable_discovery": false,
                        "driver__KaminarioISCSI__san_ip": "",
                        "driver__KaminarioISCSI__san_login": "admin",
                        "driver__KaminarioISCSI__san_password": "",
                        "driver__KaminarioISCSI__unique_fqdn_network": true,
                        "driver__KaminarioISCSI__volume_dd_blocksize": "1M",
                        "driver__LVMVolume__iscsi_iotype": "fileio",
                        "driver__LVMVolume__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__LVMVolume__iscsi_target_flags": "",
                        "driver__LVMVolume__iscsi_write_cache": "on",
                        "driver__LVMVolume__lvm_conf_file": "/etc/cinder/lvm.conf",
                        "driver__LVMVolume__lvm_mirrors": 0,
                        "driver__LVMVolume__lvm_suppress_fd_warnings": false,
                        "driver__LVMVolume__lvm_type": "auto",
                        "driver__LVMVolume__nvmet_port_id": 1,
                        "driver__LVMVolume__scst_target_driver": "iscsi",
                        "driver__LVMVolume__scst_target_iqn_name": "",
                        "driver__LVMVolume__spdk_max_queue_depth": 64,
                        "driver__LVMVolume__spdk_rpc_ip": "",
                        "driver__LVMVolume__spdk_rpc_password": "",
                        "driver__LVMVolume__spdk_rpc_port": 8000,
                        "driver__LVMVolume__spdk_rpc_username": "",
                        "driver__LVMVolume__target_helper": "tgtadm",
                        "driver__LVMVolume__target_ip_address": "$my_ip",
                        "driver__LVMVolume__target_port": 3260,
                        "driver__LVMVolume__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__LVMVolume__target_protocol": "iscsi",
                        "driver__LVMVolume__volume_clear": "zero",
                        "driver__LVMVolume__volume_clear_size": 0,
                        "driver__LVMVolume__volume_dd_blocksize": "1M",
                        "driver__LVMVolume__volume_group": "cinder-volumes",
                        "driver__LVMVolume__volumes_dir": "$state_path/volumes",
                        "driver__LenovoFC__lenovo_pool_name": "A",
                        "driver__LenovoFC__lenovo_pool_type": "virtual",
                        "driver__LenovoISCSI__lenovo_iscsi_ips__transform_csv": "",
                        "driver__LenovoISCSI__lenovo_pool_name": "A",
                        "driver__LenovoISCSI__lenovo_pool_type": "virtual",
                        "driver__LinstorDrbd__linstor_autoplace_count": 0,
                        "driver__LinstorDrbd__linstor_controller_diskless": true,
                        "driver__LinstorDrbd__linstor_default_blocksize": 4096,
                        "driver__LinstorDrbd__linstor_default_storage_pool_name": "DfltStorPool",
                        "driver__LinstorDrbd__linstor_default_uri": "linstor://localhost",
                        "driver__LinstorDrbd__linstor_default_volume_group_name": "drbd-vg",
                        "driver__LinstorDrbd__linstor_volume_downsize_factor__transform_string_float": "4096",
                        "driver__LinstorIscsi__linstor_autoplace_count": 0,
                        "driver__LinstorIscsi__linstor_controller_diskless": true,
                        "driver__LinstorIscsi__linstor_default_blocksize": 4096,
                        "driver__LinstorIscsi__linstor_default_storage_pool_name": "DfltStorPool",
                        "driver__LinstorIscsi__linstor_default_uri": "linstor://localhost",
                        "driver__LinstorIscsi__linstor_default_volume_group_name": "drbd-vg",
                        "driver__LinstorIscsi__linstor_volume_downsize_factor__transform_string_float": "4096",
                        "driver__MStorageFC__nec_actual_free_capacity": false,
                        "driver__MStorageFC__nec_auto_accesscontrol": true,
                        "driver__MStorageFC__nec_backend_max_ld_count": 1024,
                        "driver__MStorageFC__nec_backup_ldname_format": "LX:%s",
                        "driver__MStorageFC__nec_backup_pools__transform_csv": "",
                        "driver__MStorageFC__nec_cv_ldname_format": "LX:__ControlVolume_%xh",
                        "driver__MStorageFC__nec_diskarray_name": "",
                        "driver__MStorageFC__nec_ismcli_fip": "",
                        "driver__MStorageFC__nec_ismcli_password": "",
                        "driver__MStorageFC__nec_ismcli_privkey": "",
                        "driver__MStorageFC__nec_ismcli_user": "",
                        "driver__MStorageFC__nec_ismview_alloptimize": false,
                        "driver__MStorageFC__nec_ismview_dir": "/tmp/nec/cinder",
                        "driver__MStorageFC__nec_ldname_format": "LX:%s",
                        "driver__MStorageFC__nec_ldset": "",
                        "driver__MStorageFC__nec_pools__transform_csv": "",
                        "driver__MStorageFC__nec_queryconfig_view": false,
                        "driver__MStorageFC__nec_ssh_pool_port_number": 22,
                        "driver__MStorageFC__nec_unpairthread_timeout": 3600,
                        "driver__MStorageISCSI__nec_actual_free_capacity": false,
                        "driver__MStorageISCSI__nec_auto_accesscontrol": true,
                        "driver__MStorageISCSI__nec_backend_max_ld_count": 1024,
                        "driver__MStorageISCSI__nec_backup_ldname_format": "LX:%s",
                        "driver__MStorageISCSI__nec_backup_pools__transform_csv": "",
                        "driver__MStorageISCSI__nec_cv_ldname_format": "LX:__ControlVolume_%xh",
                        "driver__MStorageISCSI__nec_diskarray_name": "",
                        "driver__MStorageISCSI__nec_ismcli_fip": "",
                        "driver__MStorageISCSI__nec_ismcli_password": "",
                        "driver__MStorageISCSI__nec_ismcli_privkey": "",
                        "driver__MStorageISCSI__nec_ismcli_user": "",
                        "driver__MStorageISCSI__nec_ismview_alloptimize": false,
                        "driver__MStorageISCSI__nec_ismview_dir": "/tmp/nec/cinder",
                        "driver__MStorageISCSI__nec_ldname_format": "LX:%s",
                        "driver__MStorageISCSI__nec_ldset": "",
                        "driver__MStorageISCSI__nec_pools__transform_csv": "",
                        "driver__MStorageISCSI__nec_queryconfig_view": false,
                        "driver__MStorageISCSI__nec_ssh_pool_port_number": 22,
                        "driver__MStorageISCSI__nec_unpairthread_timeout": 3600,
                        "driver__MacroSANFC__backend_availability_zone": "",
                        "driver__MacroSANFC__chap_password": "",
                        "driver__MacroSANFC__chap_username": "",
                        "driver__MacroSANFC__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__MacroSANFC__driver_client_cert": "",
                        "driver__MacroSANFC__driver_client_cert_key": "",
                        "driver__MacroSANFC__driver_data_namespace": "",
                        "driver__MacroSANFC__driver_ssl_cert_path": "",
                        "driver__MacroSANFC__driver_ssl_cert_verify": false,
                        "driver__MacroSANFC__driver_use_ssl": false,
                        "driver__MacroSANFC__filter_function": "",
                        "driver__MacroSANFC__goodness_function": "",
                        "driver__MacroSANFC__iscsi_iotype": "fileio",
                        "driver__MacroSANFC__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__MacroSANFC__iscsi_target_flags": "",
                        "driver__MacroSANFC__iscsi_write_cache": "on",
                        "driver__MacroSANFC__num_shell_tries": 3,
                        "driver__MacroSANFC__num_volume_device_scan_tries": 3,
                        "driver__MacroSANFC__report_discard_supported": false,
                        "driver__MacroSANFC__storage_protocol": "iscsi",
                        "driver__MacroSANFC__target_helper": "tgtadm",
                        "driver__MacroSANFC__target_ip_address": "$my_ip",
                        "driver__MacroSANFC__target_port": 3260,
                        "driver__MacroSANFC__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__MacroSANFC__target_protocol": "iscsi",
                        "driver__MacroSANFC__trace_flags__transform_csv": "",
                        "driver__MacroSANFC__use_chap_auth": false,
                        "driver__MacroSANFC__volume_backend_name": "",
                        "driver__MacroSANFC__volume_clear": "zero",
                        "driver__MacroSANFC__volume_clear_ionice": "",
                        "driver__MacroSANFC__volume_clear_size": 0,
                        "driver__MacroSANFC__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__MacroSANFC__volume_copy_bps_limit": 0,
                        "driver__MacroSANFC__volume_dd_blocksize": "1M",
                        "driver__MacroSANFC__volumes_dir": "$state_path/volumes",
                        "driver__MacroSANISCSI__backend_availability_zone": "",
                        "driver__MacroSANISCSI__chap_password": "",
                        "driver__MacroSANISCSI__chap_username": "",
                        "driver__MacroSANISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__MacroSANISCSI__driver_client_cert": "",
                        "driver__MacroSANISCSI__driver_client_cert_key": "",
                        "driver__MacroSANISCSI__driver_data_namespace": "",
                        "driver__MacroSANISCSI__driver_ssl_cert_path": "",
                        "driver__MacroSANISCSI__driver_ssl_cert_verify": false,
                        "driver__MacroSANISCSI__driver_use_ssl": false,
                        "driver__MacroSANISCSI__filter_function": "",
                        "driver__MacroSANISCSI__goodness_function": "",
                        "driver__MacroSANISCSI__iscsi_iotype": "fileio",
                        "driver__MacroSANISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__MacroSANISCSI__iscsi_target_flags": "",
                        "driver__MacroSANISCSI__iscsi_write_cache": "on",
                        "driver__MacroSANISCSI__num_shell_tries": 3,
                        "driver__MacroSANISCSI__num_volume_device_scan_tries": 3,
                        "driver__MacroSANISCSI__report_discard_supported": false,
                        "driver__MacroSANISCSI__storage_protocol": "iscsi",
                        "driver__MacroSANISCSI__target_helper": "tgtadm",
                        "driver__MacroSANISCSI__target_ip_address": "$my_ip",
                        "driver__MacroSANISCSI__target_port": 3260,
                        "driver__MacroSANISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__MacroSANISCSI__target_protocol": "iscsi",
                        "driver__MacroSANISCSI__trace_flags__transform_csv": "",
                        "driver__MacroSANISCSI__use_chap_auth": false,
                        "driver__MacroSANISCSI__volume_backend_name": "",
                        "driver__MacroSANISCSI__volume_clear": "zero",
                        "driver__MacroSANISCSI__volume_clear_ionice": "",
                        "driver__MacroSANISCSI__volume_clear_size": 0,
                        "driver__MacroSANISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__MacroSANISCSI__volume_copy_bps_limit": 0,
                        "driver__MacroSANISCSI__volume_dd_blocksize": "1M",
                        "driver__MacroSANISCSI__volumes_dir": "$state_path/volumes",
                        "driver__NetAppCmodeFibreChannel__netapp_vserver": "",
                        "driver__NetAppCmodeISCSI__netapp_vserver": "",
                        "driver__NexentaISCSI__nexenta_blocksize": 4096,
                        "driver__NexentaISCSI__nexenta_dataset_compression": "on",
                        "driver__NexentaISCSI__nexenta_dataset_dedup": "off",
                        "driver__NexentaISCSI__nexenta_dataset_description": "",
                        "driver__NexentaISCSI__nexenta_folder": "",
                        "driver__NexentaISCSI__nexenta_group_snapshot_template": "group-snapshot-%s",
                        "driver__NexentaISCSI__nexenta_host": "",
                        "driver__NexentaISCSI__nexenta_host_group_prefix": "cinder",
                        "driver__NexentaISCSI__nexenta_iscsi_target_host_group": "all",
                        "driver__NexentaISCSI__nexenta_iscsi_target_portal_groups": "",
                        "driver__NexentaISCSI__nexenta_iscsi_target_portal_port": 3260,
                        "driver__NexentaISCSI__nexenta_iscsi_target_portals": "",
                        "driver__NexentaISCSI__nexenta_lu_writebackcache_disabled": false,
                        "driver__NexentaISCSI__nexenta_luns_per_target": 100,
                        "driver__NexentaISCSI__nexenta_ns5_blocksize": 32,
                        "driver__NexentaISCSI__nexenta_origin_snapshot_template": "origin-snapshot-%s",
                        "driver__NexentaISCSI__nexenta_rest_backoff_factor__transform_string_float": "0.5",
                        "driver__NexentaISCSI__nexenta_rest_connect_timeout__transform_string_float": "30",
                        "driver__NexentaISCSI__nexenta_rest_protocol": "auto",
                        "driver__NexentaISCSI__nexenta_rest_read_timeout__transform_string_float": "300",
                        "driver__NexentaISCSI__nexenta_rest_retry_count": 3,
                        "driver__NexentaISCSI__nexenta_sparse": false,
                        "driver__NexentaISCSI__nexenta_target_group_prefix": "cinder",
                        "driver__NexentaISCSI__nexenta_target_prefix": "iqn.1986-03.com.sun:02:cinder",
                        "driver__NexentaISCSI__nexenta_use_https": true,
                        "driver__NexentaISCSI__nexenta_volume": "cinder",
                        "driver__NexentaISCSI__nexenta_volume_group": "iscsi",
                        "driver__NimbleFC__nimble_pool_name": "default",
                        "driver__NimbleFC__nimble_subnet_label": "*",
                        "driver__NimbleFC__nimble_verify_cert_path": "",
                        "driver__NimbleFC__nimble_verify_certificate": false,
                        "driver__NimbleISCSI__nimble_pool_name": "default",
                        "driver__NimbleISCSI__nimble_subnet_label": "*",
                        "driver__NimbleISCSI__nimble_verify_cert_path": "",
                        "driver__NimbleISCSI__nimble_verify_certificate": false,
                        "driver__PVMEFC__driver_ssl_cert_path": "",
                        "driver__PVMEFC__driver_ssl_cert_verify": false,
                        "driver__PVMEFC__driver_use_ssl": false,
                        "driver__PVMEFC__pvme_pool_name": "A",
                        "driver__PVMEFC__san_ip": "",
                        "driver__PVMEFC__san_login": "admin",
                        "driver__PVMEFC__san_password": "",
                        "driver__PVMEISCSI__driver_ssl_cert_path": "",
                        "driver__PVMEISCSI__driver_ssl_cert_verify": false,
                        "driver__PVMEISCSI__driver_use_ssl": false,
                        "driver__PVMEISCSI__pvme_iscsi_ips__transform_csv": "",
                        "driver__PVMEISCSI__pvme_pool_name": "A",
                        "driver__PVMEISCSI__san_ip": "",
                        "driver__PVMEISCSI__san_login": "admin",
                        "driver__PVMEISCSI__san_password": "",
                        "driver__PowerFlex__powerflex_allow_migration_during_rebuild": false,
                        "driver__PowerFlex__powerflex_allow_non_padded_volumes": false,
                        "driver__PowerFlex__powerflex_max_over_subscription_ratio__transform_string_float": "10.0",
                        "driver__PowerFlex__powerflex_rest_server_port": 443,
                        "driver__PowerFlex__powerflex_round_volume_capacity": true,
                        "driver__PowerFlex__powerflex_server_api_version": "",
                        "driver__PowerFlex__powerflex_storage_pools": "",
                        "driver__PowerFlex__powerflex_unmap_volume_before_deletion": false,
                        "driver__PowerMaxFC__driver_ssl_cert_verify": false,
                        "driver__PowerMaxFC__initiator_check": false,
                        "driver__PowerMaxFC__interval": 3,
                        "driver__PowerMaxFC__load_balance": false,
                        "driver__PowerMaxFC__load_balance_real_time": false,
                        "driver__PowerMaxFC__load_data_format": "Avg",
                        "driver__PowerMaxFC__load_look_back": 60,
                        "driver__PowerMaxFC__load_look_back_real_time": 1,
                        "driver__PowerMaxFC__port_group_load_metric": "PercentBusy",
                        "driver__PowerMaxFC__port_load_metric": "PercentBusy",
                        "driver__PowerMaxFC__powermax_array": "",
                        "driver__PowerMaxFC__powermax_array_tag_list__transform_csv": "",
                        "driver__PowerMaxFC__powermax_port_group_name_template": "portGroupName",
                        "driver__PowerMaxFC__powermax_port_groups__transform_csv": "",
                        "driver__PowerMaxFC__powermax_service_level": "",
                        "driver__PowerMaxFC__powermax_short_host_name_template": "shortHostName",
                        "driver__PowerMaxFC__powermax_snapvx_unlink_limit": 3,
                        "driver__PowerMaxFC__powermax_srp": "",
                        "driver__PowerMaxFC__retries": 200,
                        "driver__PowerMaxFC__san_ip": "",
                        "driver__PowerMaxFC__san_login": "admin",
                        "driver__PowerMaxFC__san_password": "",
                        "driver__PowerMaxFC__u4p_failover_autofailback": true,
                        "driver__PowerMaxFC__u4p_failover_backoff_factor": 1,
                        "driver__PowerMaxFC__u4p_failover_retries": 3,
                        "driver__PowerMaxFC__u4p_failover_target__transform_csv_kvs": "",
                        "driver__PowerMaxFC__u4p_failover_timeout": 20,
                        "driver__PowerMaxFC__vmax_workload": "",
                        "driver__PowerMaxISCSI__chap_password": "",
                        "driver__PowerMaxISCSI__chap_username": "",
                        "driver__PowerMaxISCSI__driver_ssl_cert_verify": false,
                        "driver__PowerMaxISCSI__initiator_check": false,
                        "driver__PowerMaxISCSI__interval": 3,
                        "driver__PowerMaxISCSI__load_balance": false,
                        "driver__PowerMaxISCSI__load_balance_real_time": false,
                        "driver__PowerMaxISCSI__load_data_format": "Avg",
                        "driver__PowerMaxISCSI__load_look_back": 60,
                        "driver__PowerMaxISCSI__load_look_back_real_time": 1,
                        "driver__PowerMaxISCSI__port_group_load_metric": "PercentBusy",
                        "driver__PowerMaxISCSI__port_load_metric": "PercentBusy",
                        "driver__PowerMaxISCSI__powermax_array": "",
                        "driver__PowerMaxISCSI__powermax_array_tag_list__transform_csv": "",
                        "driver__PowerMaxISCSI__powermax_port_group_name_template": "portGroupName",
                        "driver__PowerMaxISCSI__powermax_port_groups__transform_csv": "",
                        "driver__PowerMaxISCSI__powermax_service_level": "",
                        "driver__PowerMaxISCSI__powermax_short_host_name_template": "shortHostName",
                        "driver__PowerMaxISCSI__powermax_snapvx_unlink_limit": 3,
                        "driver__PowerMaxISCSI__powermax_srp": "",
                        "driver__PowerMaxISCSI__retries": 200,
                        "driver__PowerMaxISCSI__san_ip": "",
                        "driver__PowerMaxISCSI__san_login": "admin",
                        "driver__PowerMaxISCSI__san_password": "",
                        "driver__PowerMaxISCSI__u4p_failover_autofailback": true,
                        "driver__PowerMaxISCSI__u4p_failover_backoff_factor": 1,
                        "driver__PowerMaxISCSI__u4p_failover_retries": 3,
                        "driver__PowerMaxISCSI__u4p_failover_target__transform_csv_kvs": "",
                        "driver__PowerMaxISCSI__u4p_failover_timeout": 20,
                        "driver__PowerMaxISCSI__use_chap_auth": false,
                        "driver__PowerMaxISCSI__vmax_workload": "",
                        "driver__PowerStore__powerstore_appliances__transform_csv": "",
                        "driver__PowerStore__powerstore_ports__transform_csv": "",
                        "driver__PureFC__driver_ssl_cert_path": "",
                        "driver__PureFC__driver_ssl_cert_verify": false,
                        "driver__PureFC__pure_api_token": "",
                        "driver__PureFC__pure_automatic_max_oversubscription_ratio": true,
                        "driver__PureFC__pure_eradicate_on_delete": false,
                        "driver__PureFC__pure_host_personality__transform_empty_none": "",
                        "driver__PureFC__pure_iscsi_cidr": "0.0.0.0/0",
                        "driver__PureFC__pure_replica_interval_default": 3600,
                        "driver__PureFC__pure_replica_retention_long_term_default": 7,
                        "driver__PureFC__pure_replica_retention_long_term_per_day_default": 3,
                        "driver__PureFC__pure_replica_retention_short_term_default": 14400,
                        "driver__PureFC__pure_replication_pg_name": "cinder-group",
                        "driver__PureFC__pure_replication_pod_name": "cinder-pod",
                        "driver__PureFC__san_ip": "",
                        "driver__PureFC__use_chap_auth": false,
                        "driver__PureISCSI__driver_ssl_cert_path": "",
                        "driver__PureISCSI__driver_ssl_cert_verify": false,
                        "driver__PureISCSI__pure_api_token": "",
                        "driver__PureISCSI__pure_automatic_max_oversubscription_ratio": true,
                        "driver__PureISCSI__pure_eradicate_on_delete": false,
                        "driver__PureISCSI__pure_host_personality__transform_empty_none": "",
                        "driver__PureISCSI__pure_iscsi_cidr": "0.0.0.0/0",
                        "driver__PureISCSI__pure_replica_interval_default": 3600,
                        "driver__PureISCSI__pure_replica_retention_long_term_default": 7,
                        "driver__PureISCSI__pure_replica_retention_long_term_per_day_default": 3,
                        "driver__PureISCSI__pure_replica_retention_short_term_default": 14400,
                        "driver__PureISCSI__pure_replication_pg_name": "cinder-group",
                        "driver__PureISCSI__pure_replication_pod_name": "cinder-pod",
                        "driver__PureISCSI__san_ip": "",
                        "driver__PureISCSI__use_chap_auth": false,
                        "driver__QnapISCSI__chap_password": "",
                        "driver__QnapISCSI__chap_username": "",
                        "driver__QnapISCSI__driver_ssl_cert_verify": false,
                        "driver__QnapISCSI__qnap_management_url": "",
                        "driver__QnapISCSI__qnap_poolname": "",
                        "driver__QnapISCSI__qnap_storage_protocol": "iscsi",
                        "driver__QnapISCSI__san_login": "admin",
                        "driver__QnapISCSI__san_password": "",
                        "driver__QnapISCSI__target_ip_address": "$my_ip",
                        "driver__QnapISCSI__use_chap_auth": false,
                        "driver__Quobyte__quobyte_client_cfg": "",
                        "driver__Quobyte__quobyte_mount_point_base": "$state_path/mnt",
                        "driver__Quobyte__quobyte_overlay_volumes": false,
                        "driver__Quobyte__quobyte_qcow2_volumes": true,
                        "driver__Quobyte__quobyte_sparsed_volumes": true,
                        "driver__Quobyte__quobyte_volume_from_snapshot_cache": false,
                        "driver__Quobyte__quobyte_volume_url": "",
                        "driver__RBD__deferred_deletion_delay": 0,
                        "driver__RBD__deferred_deletion_purge_interval": 60,
                        "driver__RBD__enable_deferred_deletion": false,
                        "driver__RBD__rados_connect_timeout": -1,
                        "driver__RBD__rados_connection_interval": 5,
                        "driver__RBD__rados_connection_retries": 3,
                        "driver__RBD__rbd_ceph_conf": "",
                        "driver__RBD__rbd_cluster_name": "ceph",
                        "driver__RBD__rbd_exclusive_cinder_pool": false,
                        "driver__RBD__rbd_flatten_volume_from_snapshot": false,
                        "driver__RBD__rbd_keyring_conf": "",
                        "driver__RBD__rbd_max_clone_depth": 5,
                        "driver__RBD__rbd_pool": "rbd",
                        "driver__RBD__rbd_secret_uuid": "",
                        "driver__RBD__rbd_store_chunk_size": 4,
                        "driver__RBD__rbd_user": "",
                        "driver__RBD__report_dynamic_total_capacity": true,
                        "driver__RBD__volume_dd_blocksize": "1M",
                        "driver__RBDISCSI__deferred_deletion_delay": 0,
                        "driver__RBDISCSI__deferred_deletion_purge_interval": 60,
                        "driver__RBDISCSI__driver_ssl_cert_verify": false,
                        "driver__RBDISCSI__enable_deferred_deletion": false,
                        "driver__RBDISCSI__rados_connect_timeout": -1,
                        "driver__RBDISCSI__rados_connection_interval": 5,
                        "driver__RBDISCSI__rados_connection_retries": 3,
                        "driver__RBDISCSI__rbd_ceph_conf": "",
                        "driver__RBDISCSI__rbd_cluster_name": "ceph",
                        "driver__RBDISCSI__rbd_exclusive_cinder_pool": false,
                        "driver__RBDISCSI__rbd_flatten_volume_from_snapshot": false,
                        "driver__RBDISCSI__rbd_iscsi_api_debug": false,
                        "driver__RBDISCSI__rbd_iscsi_api_password": "",
                        "driver__RBDISCSI__rbd_iscsi_api_url": "",
                        "driver__RBDISCSI__rbd_iscsi_api_user": "",
                        "driver__RBDISCSI__rbd_iscsi_target_iqn": "",
                        "driver__RBDISCSI__rbd_max_clone_depth": 5,
                        "driver__RBDISCSI__rbd_pool": "rbd",
                        "driver__RBDISCSI__rbd_secret_uuid": "",
                        "driver__RBDISCSI__rbd_store_chunk_size": 4,
                        "driver__RBDISCSI__rbd_user": "",
                        "driver__RBDISCSI__report_dynamic_total_capacity": true,
                        "driver__RBDISCSI__suppress_requests_ssl_warnings": false,
                        "driver__RBDISCSI__volume_dd_blocksize": "1M",
                        "driver__RSD__podm_password": "",
                        "driver__RSD__podm_url": "",
                        "driver__RSD__podm_username": "",
                        "driver__SCFC__dell_api_async_rest_timeout": 15,
                        "driver__SCFC__dell_api_sync_rest_timeout": 30,
                        "driver__SCFC__dell_sc_api_port": 3033,
                        "driver__SCFC__dell_sc_server_folder": "openstack",
                        "driver__SCFC__dell_sc_ssn": 64702,
                        "driver__SCFC__dell_sc_verify_cert": false,
                        "driver__SCFC__dell_sc_volume_folder": "openstack",
                        "driver__SCFC__dell_server_os": "Red Hat Linux 6.x",
                        "driver__SCFC__excluded_domain_ips__transform_csv": "",
                        "driver__SCFC__included_domain_ips__transform_csv": "",
                        "driver__SCFC__secondary_san_ip": "",
                        "driver__SCFC__secondary_san_login": "Admin",
                        "driver__SCFC__secondary_san_password": "",
                        "driver__SCFC__secondary_sc_api_port": 3033,
                        "driver__SCISCSI__dell_api_async_rest_timeout": 15,
                        "driver__SCISCSI__dell_api_sync_rest_timeout": 30,
                        "driver__SCISCSI__dell_sc_api_port": 3033,
                        "driver__SCISCSI__dell_sc_server_folder": "openstack",
                        "driver__SCISCSI__dell_sc_ssn": 64702,
                        "driver__SCISCSI__dell_sc_verify_cert": false,
                        "driver__SCISCSI__dell_sc_volume_folder": "openstack",
                        "driver__SCISCSI__dell_server_os": "Red Hat Linux 6.x",
                        "driver__SCISCSI__excluded_domain_ips__transform_csv": "",
                        "driver__SCISCSI__included_domain_ips__transform_csv": "",
                        "driver__SCISCSI__secondary_san_ip": "",
                        "driver__SCISCSI__secondary_san_login": "Admin",
                        "driver__SCISCSI__secondary_san_password": "",
                        "driver__SCISCSI__secondary_sc_api_port": 3033,
                        "driver__SdsISCSI__backend_availability_zone": "",
                        "driver__SdsISCSI__chap_password": "",
                        "driver__SdsISCSI__chap_username": "",
                        "driver__SdsISCSI__chiscsi_conf": "/etc/chelsio-iscsi/chiscsi.conf",
                        "driver__SdsISCSI__driver_client_cert": "",
                        "driver__SdsISCSI__driver_client_cert_key": "",
                        "driver__SdsISCSI__driver_data_namespace": "",
                        "driver__SdsISCSI__driver_ssl_cert_path": "",
                        "driver__SdsISCSI__driver_ssl_cert_verify": false,
                        "driver__SdsISCSI__driver_use_ssl": false,
                        "driver__SdsISCSI__filter_function": "",
                        "driver__SdsISCSI__goodness_function": "",
                        "driver__SdsISCSI__iscsi_iotype": "fileio",
                        "driver__SdsISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__SdsISCSI__iscsi_target_flags": "",
                        "driver__SdsISCSI__iscsi_write_cache": "on",
                        "driver__SdsISCSI__num_shell_tries": 3,
                        "driver__SdsISCSI__num_volume_device_scan_tries": 3,
                        "driver__SdsISCSI__report_discard_supported": false,
                        "driver__SdsISCSI__storage_protocol": "iscsi",
                        "driver__SdsISCSI__target_helper": "tgtadm",
                        "driver__SdsISCSI__target_ip_address": "$my_ip",
                        "driver__SdsISCSI__target_port": 3260,
                        "driver__SdsISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__SdsISCSI__target_protocol": "iscsi",
                        "driver__SdsISCSI__trace_flags__transform_csv": "",
                        "driver__SdsISCSI__use_chap_auth": false,
                        "driver__SdsISCSI__volume_backend_name": "",
                        "driver__SdsISCSI__volume_clear": "zero",
                        "driver__SdsISCSI__volume_clear_ionice": "",
                        "driver__SdsISCSI__volume_clear_size": 0,
                        "driver__SdsISCSI__volume_copy_blkio_cgroup_name": "cinder-volume-copy",
                        "driver__SdsISCSI__volume_copy_bps_limit": 0,
                        "driver__SdsISCSI__volume_dd_blocksize": "1M",
                        "driver__SdsISCSI__volumes_dir": "$state_path/volumes",
                        "driver__SolidFire__driver_ssl_cert_verify": false,
                        "driver__SolidFire__san_ip": "",
                        "driver__SolidFire__san_login": "admin",
                        "driver__SolidFire__san_password": "",
                        "driver__SolidFire__sf_account_prefix": "",
                        "driver__SolidFire__sf_allow_tenant_qos": false,
                        "driver__SolidFire__sf_api_port": 443,
                        "driver__SolidFire__sf_api_request_timeout": 30,
                        "driver__SolidFire__sf_cluster_pairing_timeout": 60,
                        "driver__SolidFire__sf_emulate_512": true,
                        "driver__SolidFire__sf_enable_vag": false,
                        "driver__SolidFire__sf_provisioning_calc": "maxProvisionedSpace",
                        "driver__SolidFire__sf_svip": "",
                        "driver__SolidFire__sf_volume_clone_timeout": 600,
                        "driver__SolidFire__sf_volume_create_timeout": 60,
                        "driver__SolidFire__sf_volume_pairing_timeout": 3600,
                        "driver__SolidFire__sf_volume_prefix": "UUID-",
                        "driver__StorPool__storpool_replication": 3,
                        "driver__StorPool__storpool_template": "",
                        "driver__StorwizeSVCFC__cycle_period_seconds": 300,
                        "driver__StorwizeSVCFC__storwize_peer_pool": "",
                        "driver__StorwizeSVCFC__storwize_preferred_host_site__transform_csv_kvs": "",
                        "driver__StorwizeSVCFC__storwize_san_secondary_ip": "",
                        "driver__StorwizeSVCFC__storwize_svc_allow_tenant_qos": false,
                        "driver__StorwizeSVCFC__storwize_svc_flashcopy_rate": 50,
                        "driver__StorwizeSVCFC__storwize_svc_flashcopy_timeout": 120,
                        "driver__StorwizeSVCFC__storwize_svc_mirror_pool": "",
                        "driver__StorwizeSVCFC__storwize_svc_multipath_enabled": false,
                        "driver__StorwizeSVCFC__storwize_svc_retain_aux_volume": false,
                        "driver__StorwizeSVCFC__storwize_svc_stretched_cluster_partner": "",
                        "driver__StorwizeSVCFC__storwize_svc_vol_autoexpand": true,
                        "driver__StorwizeSVCFC__storwize_svc_vol_compression": false,
                        "driver__StorwizeSVCFC__storwize_svc_vol_easytier": true,
                        "driver__StorwizeSVCFC__storwize_svc_vol_grainsize": 256,
                        "driver__StorwizeSVCFC__storwize_svc_vol_iogrp": "0",
                        "driver__StorwizeSVCFC__storwize_svc_vol_nofmtdisk": false,
                        "driver__StorwizeSVCFC__storwize_svc_vol_rsize": 2,
                        "driver__StorwizeSVCFC__storwize_svc_vol_warning": 0,
                        "driver__StorwizeSVCFC__storwize_svc_volpool_name__transform_csv": "volpool",
                        "driver__StorwizeSVCISCSI__cycle_period_seconds": 300,
                        "driver__StorwizeSVCISCSI__storwize_peer_pool": "",
                        "driver__StorwizeSVCISCSI__storwize_preferred_host_site__transform_csv_kvs": "",
                        "driver__StorwizeSVCISCSI__storwize_san_secondary_ip": "",
                        "driver__StorwizeSVCISCSI__storwize_svc_allow_tenant_qos": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_flashcopy_rate": 50,
                        "driver__StorwizeSVCISCSI__storwize_svc_flashcopy_timeout": 120,
                        "driver__StorwizeSVCISCSI__storwize_svc_iscsi_chap_enabled": true,
                        "driver__StorwizeSVCISCSI__storwize_svc_mirror_pool": "",
                        "driver__StorwizeSVCISCSI__storwize_svc_retain_aux_volume": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_stretched_cluster_partner": "",
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_autoexpand": true,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_compression": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_easytier": true,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_grainsize": 256,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_iogrp": "0",
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_nofmtdisk": false,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_rsize": 2,
                        "driver__StorwizeSVCISCSI__storwize_svc_vol_warning": 0,
                        "driver__StorwizeSVCISCSI__storwize_svc_volpool_name__transform_csv": "volpool",
                        "driver__SynoISCSI__chap_password": "",
                        "driver__SynoISCSI__chap_username": "",
                        "driver__SynoISCSI__driver_use_ssl": false,
                        "driver__SynoISCSI__iscsi_secondary_ip_addresses__transform_csv": "",
                        "driver__SynoISCSI__synology_admin_port": 5000,
                        "driver__SynoISCSI__synology_device_id": "",
                        "driver__SynoISCSI__synology_one_time_pass": "",
                        "driver__SynoISCSI__synology_password": "",
                        "driver__SynoISCSI__synology_pool_name": "",
                        "driver__SynoISCSI__synology_ssl_verify": true,
                        "driver__SynoISCSI__synology_username": "admin",
                        "driver__SynoISCSI__target_ip_address": "$my_ip",
                        "driver__SynoISCSI__target_port": 3260,
                        "driver__SynoISCSI__target_prefix": "iqn.2010-10.org.openstack:",
                        "driver__SynoISCSI__target_protocol": "iscsi",
                        "driver__SynoISCSI__use_chap_auth": false,
                        "driver__Unity__remove_empty_host": false,
                        "driver__Unity__unity_io_ports__transform_csv": "",
                        "driver__Unity__unity_storage_pool_names__transform_csv": "",
                        "driver__VNX__default_timeout": 31536000,
                        "driver__VNX__destroy_empty_storage_group": false,
                        "driver__VNX__force_delete_lun_in_storagegroup": true,
                        "driver__VNX__ignore_pool_full_threshold": false,
                        "driver__VNX__initiator_auto_deregistration": false,
                        "driver__VNX__initiator_auto_registration": false,
                        "driver__VNX__io_port_list__transform_csv": "",
                        "driver__VNX__iscsi_initiators": "",
                        "driver__VNX__max_luns_per_storage_group": 255,
                        "driver__VNX__naviseccli_path": "",
                        "driver__VNX__storage_vnx_authentication_type": "global",
                        "driver__VNX__storage_vnx_pool_names__transform_csv": "",
                        "driver__VNX__storage_vnx_security_file_dir": "",
                        "driver__VNX__vnx_async_migrate": true,
                        "driver__VZStorage__vzstorage_default_volume_format": "raw",
                        "driver__VZStorage__vzstorage_mount_options__transform_csv": "",
                        "driver__VZStorage__vzstorage_mount_point_base": "$state_path/mnt",
                        "driver__VZStorage__vzstorage_shares_config": "/etc/cinder/vzstorage_shares",
                        "driver__VZStorage__vzstorage_sparsed_volumes": true,
                        "driver__VZStorage__vzstorage_used_ratio__transform_string_float": "0.95",
                        "driver__WindowsISCSI__windows_iscsi_lun_path": "C:\\iSCSIVirtualDisks",
                        "driver__WindowsSmbfs__smbfs_default_volume_format": "vhd",
                        "driver__WindowsSmbfs__smbfs_mount_point_base": "C:\\OpenStack\\_mnt",
                        "driver__WindowsSmbfs__smbfs_pool_mappings__transform_csv_kvs": "",
                        "driver__WindowsSmbfs__smbfs_shares_config": "C:\\OpenStack\\smbfs_shares.txt",
                        "driver__XtremIOFC__driver_ssl_cert_path": "",
                        "driver__XtremIOFC__driver_ssl_cert_verify": false,
                        "driver__XtremIOFC__san_ip": "",
                        "driver__XtremIOFC__san_login": "admin",
                        "driver__XtremIOFC__san_password": "",
                        "driver__XtremIOFC__xtremio_array_busy_retry_count": 5,
                        "driver__XtremIOFC__xtremio_array_busy_retry_interval": 5,
                        "driver__XtremIOFC__xtremio_clean_unused_ig": false,
                        "driver__XtremIOFC__xtremio_cluster_name": "",
                        "driver__XtremIOISCSI__driver_ssl_cert_path": "",
                        "driver__XtremIOISCSI__driver_ssl_cert_verify": false,
                        "driver__XtremIOISCSI__san_ip": "",
                        "driver__XtremIOISCSI__san_login": "admin",
                        "driver__XtremIOISCSI__san_password": "",
                        "driver__XtremIOISCSI__xtremio_array_busy_retry_count": 5,
                        "driver__XtremIOISCSI__xtremio_array_busy_retry_interval": 5,
                        "driver__XtremIOISCSI__xtremio_clean_unused_ig": false,
                        "driver__XtremIOISCSI__xtremio_cluster_name": "",
                        "driver__ZadaraVPSAISCSI__zadara_access_key": "",
                        "driver__ZadaraVPSAISCSI__zadara_default_snap_policy": false,
                        "driver__ZadaraVPSAISCSI__zadara_ssl_cert_verify": true,
                        "driver__ZadaraVPSAISCSI__zadara_use_iser": true,
                        "driver__ZadaraVPSAISCSI__zadara_vol_encrypt": false,
                        "driver__ZadaraVPSAISCSI__zadara_vol_name_template": "OS_%s",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_host": "",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_poolname": "",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_port": "",
                        "driver__ZadaraVPSAISCSI__zadara_vpsa_use_ssl": false
                      }
                    },
                    "sysFiles": {
                      "name": ""
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: Storage
          certified: "false"
          containerImage: quay.io/embercsi/ember-csi-operator:latest
          createdAt: 2021-02-22:17:47:00
          description: Multi-vendor CSI plugin supporting 80+ storage drivers
          repository: https://github.com/embercsi/ember-csi-operator
          support: http://readthedocs.org/projects/ember-csi/
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Represents an Ember CSI storage backend
            displayName: Storage Backends
            kind: EmberStorageBackend
            name: embercsis.ember-csi.io
            version: v1alpha1
        description: |
          Ember-CSI is a multi-vendor CSI plugin driver supporting
          over 80 storage drivers in a single plugin to provide block and mount
          storage to container orchestration systems.

          The operator adds support for management of multiple Ember CSI instances
          within a cluster and simplifies storage backend deployments.

          ### Supported drivers
          Ember-CSI includes a good number of storage drivers, but due to limitation on hardware availability only a small number of them have been validated at one point or another. In alphabetical order they are:

          * HPE3PARFC
          * HPE3PARISCSI
          * KaminarioISCSI
          * LVMVolume
          * PowerMaxFC
          * PowerMaxISCSI
          * PureFC
          * PureISCSI
          * QnapISCSI
          * RBD
          * SolidFire
          * SynoISCSI
          * XtremIOFC
          * XtremIOISCSI

          ### Getting started
          Please have a look at our quick start documentation on how to get started:
          [github.com/embercsi/ember-csi-operator#quick-start](https://github.com/embercsi/ember-csi-operator#quick-start).
          We recommend to use the user friendly "Edit Form" when creating a new
          EmberStorageBackend. You'll find the link in the upper right corner of the
          editor.

          ### Documentation
          Documentation on Ember CSI itself can be found at [docs.ember-csi.io](http://docs.ember-csi.io/).

          ### Getting help
          Please contact us if you encounter any issues while using Ember CSI.
          Get in touch through the #ember-csi channel on Freenode, also accessible through
          [Kiwi IRC](https://kiwiirc.com/nextclient/irc.freenode.net/ember-csi).

          You can also create an issue on the [Github project](https://github.com/embercsi/ember-csi-operator)
          for bugs, enhancements, or other requests.
        displayName: Ember CSI Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - Ember-CSI
        - CSI
        links:
        - name: Learn more about the project
          url: http://ember-csi.io/
        - name: Documentation
          url: http://readthedocs.org/projects/ember-csi/
        - name: Ember-CSI Source Code
          url: https://github.com/embercsi/ember-csi
        - name: Ember-CSI Operator Source Code
          url: https://github.com/embercsi/ember-csi-operator
        maintainers:
        - email: geguileo@redhat.com
          name: Gorka Eguileor
        - email: cschwede@redhat.com
          name: Christian Schwede
        maturity: beta
        minKubeVersion: 1.16.0
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/openshift-community-operators/ember-csi-community-operator@sha256:5dce9b3018cfb300cd651c7980353cedc6617383d5c525e6a4a39ffb8e105774
        - quay.io/embercsi/ember-csi-operator:latest
        version: 0.9.9
      entries:
      - name: ember-csi-community-operator.v0.9.9
        version: 0.9.9
      - name: ember-csi-community-operator.v0.9.8
        version: 0.9.8
      - name: ember-csi-community-operator.v0.9.7
        version: 0.9.7
      name: beta
    defaultChannel: beta
    packageName: ember-csi-community-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: NVIDIA
      provider-url: ""
    name: nim-operator-certified
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: nim-operator-certified.v3.0.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMCache",
                "metadata": {
                  "name": "meta-llama3-8b-instruct",
                  "namespace": "nim-service"
                },
                "spec": {
                  "source": {
                    "ngc": {
                      "modelPuller": "nvcr.io/nim/meta/llama-3.1-8b-instruct@sha256:088a7f400286291e9c1512e326596f4caedd2ed7aa30b909d78cbd3727b55ee8",
                      "pullSecret": "ngc-secret",
                      "authSecret": "ngc-api-secret",
                      "model": {
                        "lora": false,
                        "precision": "fp16",
                        "engine": "tensorrt_llm",
                        "qosProfile": "throughput",
                        "gpus": [
                          {
                            "product": "a100",
                            "ids": []
                          }
                        ]
                      }
                    }
                  },
                  "storage": {
                    "pvc": {
                      "create": true,
                      "storageClass": "local-path",
                      "size": "50Gi",
                      "volumeAccessMode": "ReadWriteOnce"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMService",
                "metadata": {
                  "name": "meta-llama3-8b-instruct",
                  "namespace": "nim-service"
                },
                "spec": {
                  "image": {
                    "repository": "nvcr.io/nim/meta/llama-3.1-8b-instruct",
                    "tag": "1.3.3",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": [
                      "ngc-secret"
                    ]
                  },
                  "authSecret": "ngc-api-secret",
                  "storage": {
                    "nimCache": {
                      "name": "meta-llama3-8b-instruct",
                      "profile": ""
                    }
                  },
                  "scale": {
                    "enabled": false,
                    "hpa": {
                      "minReplicas": 1,
                      "maxReplicas": 10
                    }
                  },
                  "resources": {
                    "limits": {
                      "nvidia.com/gpu": 1
                    }
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMPipeline",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/name": "k8s-nim-operator",
                    "app.kubernetes.io/managed-by": "k8s-nim-operator"
                  },
                  "name": "nimpipeline-sample"
                },
                "spec": {
                  "services": [
                    {
                      "name": "meta-llama3-8b-instruct",
                      "enabled": true,
                      "spec": {
                        "image": {
                          "repository": "nvcr.io/nim/meta/llama-3.1-8b-instruct",
                          "tag": "1.3.3",
                          "pullPolicy": "IfNotPresent",
                          "pullSecrets": [
                            "ngc-secret"
                          ]
                        },
                        "authSecret": "ngc-api-secret",
                        "storage": {
                          "nimCache": {
                            "name": "meta-llama3-8b-instruct",
                            "profile": ""
                          }
                        },
                        "replicas": 1,
                        "resources": {
                          "limits": {
                            "nvidia.com/gpu": 1
                          }
                        },
                        "expose": {
                          "service": {
                            "type": "ClusterIP",
                            "port": 8000
                          }
                        }
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NIMBuild",
                "metadata": {
                  "name": "meta-llama3-8b-instruct",
                  "namespace": "nim-service"
                },
                "spec": {
                  "nimCache": {
                    "name": "meta-llama3-8b-instruct",
                    "profile": "7cc8597690a35aba19a3636f35e7f1c7e7dbc005fe88ce9394cad4a4adeed414"
                  },
                  "image": {
                    "repository": "nvcr.io/nim/meta/llama-3.1-8b-instruct",
                    "tag": "1.3.3",
                    "pullSecrets": [
                     "ngc-secret"
                    ]
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoCustomizer",
                "metadata": {
                  "name": "nemocustomizer-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "scheduler": {
                    "type": "volcano"
                  },
                  "wandb": {
                    "secretName": "wandb-secret",
                    "apiKeyKey": "apiKey",
                    "encryptionKey": "encryptionKey"
                  },
                  "otel": {
                    "enabled": true,
                    "exporterOtlpEndpoint": "http://customizer-otel-opentelemetry-collector.nemo.svc.cluster.local:4317"
                  },
                  "databaseConfig": {
                    "credentials": {
                      "user": "ncsuser",
                      "secretName": "customizer-pg-existing-secret",
                      "passwordKey": "password"
                    },
                    "host": "customizer-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "databaseName": "ncsdb"
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/customizer-api",
                    "tag": "25.08",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "entitystore": {
                    "endpoint": "http://nemoentitystore-sample.nemo.svc.cluster.local:8000"
                  },
                  "datastore": {
                    "endpoint": "http://nemodatastore-sample.nemo.svc.cluster.local:8000"
                  },
                  "mlflow": {
                    "endpoint": "http://mlflow-tracking.nemo.svc.cluster.local:80"
                  },
                  "nemoDatastoreTools": {
                    "image": "nvcr.io/nvidia/nemo-microservices/nds-v2-huggingface-cli@sha256:7958e5244217de8af0ed723dfe7ea8e291b3afbb2a0aa73f5c27b218a1149b11"
                  },
                  "modelDownloadJobs": {
                    "image": "nvcr.io/nvidia/nemo-microservices/customizer-api@sha256:c590fa19121af2aac0379933deace3991f27c3ef88a8043560d6e3a172273b0b",
                    "ngcAPISecret": {
                      "name": "ngc-api-secret",
                      "key": "NGC_API_KEY"
                    },
                    "securityContext": {
                      "fsGroup": 1000,
                      "runAsNonRoot": true,
                      "runAsUser": 1000,
                      "runAsGroup": 1000
                    },
                    "ttlSecondsAfterFinished": 600,
                    "pollIntervalSeconds": 15
                  },
                  "modelConfig": {
                    "name": "nemo-model-config"
                  },
                  "trainingConfig": {
                    "configMap": {
                      "name": "nemo-training-config"
                    },
                    "modelPVC": {
                      "create": true,
                      "name": "finetuning-ms-models-pvc",
                      "storageClass": "",
                      "volumeAccessMode": "ReadWriteOnce",
                      "size": 50
                    },
                    "workspacePVC": {
                      "storageClass": "local-path",
                      "volumeAccessMode": "ReadWriteOnce",
                      "size": 10,
                      "mountPath": "/pvc/workspace"
                    },
                    "image": {
                      "repository": "nvcr.io/nvidia/nemo-microservices/customizer",
                      "tag": "25.06"
                    },
                    "env": [
                      { "name": "LOG_LEVEL", "value": "INFO" }
                    ],
                    "networkConfig": [
                      { "name": "NCCL_IB_SL", "value": "0" },
                      { "name": "NCCL_IB_TC", "value": "41" },
                      { "name": "NCCL_IB_QPS_PER_CONNECTION", "value": "4" },
                      { "name": "UCX_TLS", "value": "TCP" },
                      { "name": "UCX_NET_DEVICES", "value": "eth0" },
                      { "name": "HCOLL_ENABLE_MCAST_ALL", "value": "0" },
                      { "name": "NCCL_IB_GID_INDEX", "value": "3" }
                    ],
                    "ttlSecondsAfterFinished": 3600,
                    "timeout": 3600,
                    "tolerations": [
                      {
                        "key": "nvidia.com/gpu",
                        "operator": "Exists",
                        "effect": "NoSchedule"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoGuardrail",
                "metadata": {
                  "name": "nemoguardrails-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "configStore": {
                    "pvc": {
                      "name": "pvc-guardrail-config",
                      "create": true,
                      "storageClass": "",
                      "volumeAccessMode": "ReadWriteOnce",
                      "size": "1Gi"
                    }
                  },
                  "nimEndpoint": {
                    "baseURL": "http://meta-llama3-1b-instruct.nemo.svc.cluster.local:8000/v1"
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/guardrails",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "metrics": {
                    "serviceMonitor": {}
                  },
                  "replicas": 1,
                  "resources": {
                    "limits": {
                      "cpu": "1",
                      "ephemeral-storage": "10Gi"
                    }
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoEvaluator",
                "metadata": {
                  "name": "nemoevaluator-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "evaluationImages": {
                    "bigcodeEvalHarness": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-bigcode@sha256:62f74c32d1ed07925ddb906de8975025bf63d73e82e7faefb840339aaf21a9dc",
                    "lmEvalHarness": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-lm-eval-harness@sha256:58e7c3da7f1edfed2ff508fa8abab7660366c2c17bb55d17aa68159d6e16be6d",
                    "similarityMetrics": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-custom-eval@sha256:eb51edf668481d1f5d2b100c850958dadf184fd8779433e45da40fa2a35ec4b9",
                    "llmAsJudge": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-llm-as-a-judge@sha256:188916fce714453d48ff20d95e1ca09fc5520ccb6e9e8da7493948697e919055",
                    "mtBench": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-llm-as-a-judge@sha256:188916fce714453d48ff20d95e1ca09fc5520ccb6e9e8da7493948697e919055",
                    "retriever": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-retriever@sha256:cb99fb3ea5b4e9989832679d4c6028573c28b99e43744e008ac5c9748b7dd250",
                    "rag": "nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-rag@sha256:b5e35cf277185e0901a4bbba35780b3673be71ae2c5e8efcdbab7710a8a6f783",
                    "bfcl": "nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-bfcl@sha256:95f45f66140d481d544b36b16bc3de7ad5e090d76225fd73ed70461b9bd9907c",
                    "agenticEval": "nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-agentic-eval@sha256:b38bbc5e61df0930204efa096cf4f40db4655b92d03741190513b019d67fc7dc"
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/evaluator",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "argoWorkflows": {
                    "endpoint": "https://argo-workflows-server.nemo.svc.cluster.local:2746",
                    "serviceAccount": "argo-workflows-executor"
                  },
                  "vectorDB": {
                    "endpoint": "http://milvus.nemo.svc.cluster.local:19530"
                  },
                  "datastore": {
                    "endpoint": "http://nemodatastore-sample.nemo.svc.cluster.local:8000/v1/hf"
                  },
                  "entitystore": {
                    "endpoint": "http://nemoentitystore-sample.nemo.svc.cluster.local:8000"
                  },
                  "databaseConfig": {
                    "host": "evaluator-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "databaseName": "evaldb",
                    "credentials": {
                      "user": "evaluser",
                      "secretName": "evaluator-pg-existing-secret",
                      "passwordKey": "password"
                    }
                  },
                  "otel": {
                    "enabled": true,
                    "exporterOtlpEndpoint": "http://evaluator-otel-opentelemetry-collector.nemo.svc.cluster.local:4317"
                  },
                  "replicas": 1
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoEntitystore",
                "metadata": {
                  "name": "nemoentitystore-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/entity-store",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "databaseConfig": {
                    "databaseName": "nesdb",
                    "host": "entity-store-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "credentials": {
                      "user": "nesuser",
                      "secretName": "entity-store-pg-existing-secret",
                      "passwordKey": "password"
                    }
                  },
                  "datastore": {
                    "endpoint": "http://nemodatastore-sample.nemo.svc.cluster.local:8000"
                  }
                }
              },
              {
                "apiVersion": "apps.nvidia.com/v1alpha1",
                "kind": "NemoDatastore",
                "metadata": {
                  "name": "nemodatastore-sample",
                  "namespace": "nemo"
                },
                "spec": {
                  "secrets": {
                    "datastoreConfigSecret": "nemo-ms-nemo-datastore",
                    "datastoreInitSecret": "nemo-ms-nemo-datastore-init",
                    "datastoreInlineConfigSecret": "nemo-ms-nemo-datastore-inline-config",
                    "giteaAdminSecret": "gitea-admin-credentials",
                    "lfsJwtSecret": "nemo-ms-nemo-datastore--lfs-jwt"
                  },
                  "databaseConfig": {
                    "credentials": {
                      "user": "ndsuser",
                      "secretName": "datastore-pg-existing-secret",
                      "passwordKey": "password"
                    },
                    "host": "datastore-pg-postgresql.nemo.svc.cluster.local",
                    "port": 5432,
                    "databaseName": "ndsdb"
                  },
                  "pvc": {
                    "name": "pvc-shared-data",
                    "create": true,
                    "storageClass": "",
                    "volumeAccessMode": "ReadWriteOnce",
                    "size": "10Gi"
                  },
                  "expose": {
                    "service": {
                      "type": "ClusterIP",
                      "port": 8000
                    }
                  },
                  "image": {
                    "repository": "nvcr.io/nvidia/nemo-microservices/datastore",
                    "tag": "25.06",
                    "pullPolicy": "IfNotPresent",
                    "pullSecrets": ["ngc-secret"]
                  },
                  "replicas": 1,
                  "resources": {
                    "requests": {
                      "memory": "256Mi",
                      "cpu": "500m"
                    },
                    "limits": {
                      "memory": "512Mi",
                      "cpu": "1"
                    }
                  }
                }
              }
            ]
          capabilities: Basic Install
          categories: AI/Machine Learning
          certified: "true"
          containerImage: nvcr.io/nvidia/cloud-native/k8s-nim-operator@sha256:fadaed25df7d447d9141dc69a25c90a18f7799d47ca6e231805eff5b4e6c4907
          createdAt: Tue Sep  9 12:58:18 PDT 2025
          description: An Operator for deployment and maintenance of NVIDIA NIMs and
            NeMo microservices in a Kubernetes environment
          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: "true"
          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"
          k8sMinVersion: 1.26.0
          repository: github.com/NVIDIA/k8s-nim-operator
          support: NVIDIA
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: NIM Cache
            displayName: NIMCache
            kind: NIMCache
            name: nimcaches.apps.nvidia.com
            version: v1alpha1
          - description: NIM Service
            displayName: NIMService
            kind: NIMService
            name: nimservices.apps.nvidia.com
            version: v1alpha1
          - description: NIM Pipeline
            displayName: NIMPipeline
            kind: NIMPipeline
            name: nimpipelines.apps.nvidia.com
            version: v1alpha1
          - description: NIM Build
            displayName: NIMBuild
            kind: NIMBuild
            name: nimbuilds.apps.nvidia.com
            version: v1alpha1
          - description: NEMO guardrail Service
            displayName: NemoGuardrail
            kind: NemoGuardrail
            name: nemoguardrails.apps.nvidia.com
            version: v1alpha1
          - description: NEMO datastore Service
            displayName: NemoDatastore
            kind: NemoDatastore
            name: nemodatastores.apps.nvidia.com
            version: v1alpha1
          - description: NEMO Eval Service
            displayName: NemoEvaluator
            kind: NemoEvaluator
            name: nemoevaluators.apps.nvidia.com
            version: v1alpha1
          - description: NEMO Customizer Service
            displayName: NemoCustomizer
            kind: NemoCustomizer
            name: nemocustomizers.apps.nvidia.com
            version: v1alpha1
          - description: NEMO Entitystore Service
            displayName: NemoEntitystore
            kind: NemoEntitystore
            name: nemoentitystores.apps.nvidia.com
            version: v1alpha1
        description: |-
          ## NVIDIA NIM Operator
          The NVIDIA NIM Operator enables Kubernetes cluster administrators to operate the software components and services necessary to run NVIDIA NIMs in various domains such as reasoning, retrieval, speech, and biology. Additionally, it allows the use of NeMo Microservices to fine-tune, evaluate, or apply guardrails to your models.
          The Operator manages the life cycle of the following microservices and the models they use:
          ### NVIDIA NIM models, such as:
          * Reasoning LLMs
          * Retrieval - Embedding, Reranking, etc.
          * Speech
          * Biology
          ### NeMo core microservices:
          * NeMo Customizer
          * NeMo Evaluator
          * NeMo Guardrails
          ### NeMo platform component microservices:
          * NeMo Data Store
          * NeMo Entity Store
        displayName: The NVIDIA NIM Operator for Kubernetes
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        links:
        - name: NVIDIA NIM
          url: https://docs.nvidia.com/nim/index.html
        - name: Documentation
          url: https://docs.nvidia.com/nim-operator/latest
        maintainers:
        - email: operator_feedback@nvidia.com
          name: shivamerla
        maturity: stable
        minKubeVersion: 1.26.0
        provider:
          name: NVIDIA
        relatedImages:
        - nvcr.io/nvidia/cloud-native/k8s-nim-operator@sha256:fadaed25df7d447d9141dc69a25c90a18f7799d47ca6e231805eff5b4e6c4907
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-lm-eval-harness@sha256:58e7c3da7f1edfed2ff508fa8abab7660366c2c17bb55d17aa68159d6e16be6d
        - nvcr.io/nim/meta/llama-3.1-8b-instruct@sha256:088a7f400286291e9c1512e326596f4caedd2ed7aa30b909d78cbd3727b55ee8
        - nvcr.io/nvidia/nemo-microservices/customizer-api@sha256:c590fa19121af2aac0379933deace3991f27c3ef88a8043560d6e3a172273b0b
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-custom-eval@sha256:eb51edf668481d1f5d2b100c850958dadf184fd8779433e45da40fa2a35ec4b9
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-llm-as-a-judge@sha256:188916fce714453d48ff20d95e1ca09fc5520ccb6e9e8da7493948697e919055
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-retriever@sha256:cb99fb3ea5b4e9989832679d4c6028573c28b99e43744e008ac5c9748b7dd250
        - nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-agentic-eval@sha256:b38bbc5e61df0930204efa096cf4f40db4655b92d03741190513b019d67fc7dc
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-rag@sha256:b5e35cf277185e0901a4bbba35780b3673be71ae2c5e8efcdbab7710a8a6f783
        - registry.connect.redhat.com/nvidia/nim-operator-bundle@sha256:eda9683cfd147b61ce97088841495ef729004cf649f9c6bb704289ba5670e0d9
        - nvcr.io/nvidia/nemo-microservices/eval-factory-benchmark-bfcl@sha256:95f45f66140d481d544b36b16bc3de7ad5e090d76225fd73ed70461b9bd9907c
        - nvcr.io/nvidia/nemo-microservices/eval-tool-benchmark-bigcode@sha256:62f74c32d1ed07925ddb906de8975025bf63d73e82e7faefb840339aaf21a9dc
        - nvcr.io/nvidia/nemo-microservices/nds-v2-huggingface-cli@sha256:7958e5244217de8af0ed723dfe7ea8e291b3afbb2a0aa73f5c27b218a1149b11
        version: 3.0.2
      entries:
      - name: nim-operator-certified.v3.0.2
        version: 3.0.2
      - name: nim-operator-certified.v3.0.1
        version: 3.0.1
      - name: nim-operator-certified.v3.0.0
        version: 3.0.0
      - name: nim-operator-certified.v2.0.2
        version: 2.0.2
      - name: nim-operator-certified.v2.0.1
        version: 2.0.1
      - name: nim-operator-certified.v2.0.0
        version: 2.0.0
      - name: nim-operator-certified.v1.0.1
        version: 1.0.1
      name: stable
    defaultChannel: stable
    packageName: nim-operator-certified
    provider:
      name: NVIDIA
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Jason Skrzypek
      provider-url: https://github.com/shpwrck
    name: openshift-node-upgrade-mutex-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: openshift-node-upgrade-mutex-operator.v0.2.66
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "openshift-optional.skrzypek.io/v1alpha1",
                "kind": "MutexRule",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "openshift-node-upgrade-mutex-operator",
                    "app.kubernetes.io/instance": "mutexrule-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mutexrule",
                    "app.kubernetes.io/part-of": "openshift-node-upgrade-mutex-operator"
                  },
                  "name": "mutexrule-sample"
                },
                "spec": {
                  "jobName": "example",
                  "jobNamespace": "node-upgrade-mutex-operator",
                  "jobSpec": {
                    "selector": {},
                    "template": {
                      "metadata": {
                        "name": "mutex"
                      },
                      "spec": {
                        "containers": [
                          {
                            "command": [
                              "sleep",
                              "20"
                            ],
                            "image": "ubi9/toolbox",
                            "name": "mutex"
                          }
                        ],
                        "restartPolicy": "Never"
                      }
                    }
                  },
                  "type": "kubernetes"
                }
              },
              {
                "apiVersion": "openshift-optional.skrzypek.io/v1alpha1",
                "kind": "MutexRunConfig",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "openshift-node-upgrade-mutex-operator",
                    "app.kubernetes.io/instance": "mutexrunconfig-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mutexrunconfig",
                    "app.kubernetes.io/part-of": "openshift-node-upgrade-mutex-operator"
                  },
                  "name": "mutexrunconfig-sample"
                },
                "spec": {
                  "canary": {
                    "name": "canary-example"
                  },
                  "mutexRules": [
                    {
                      "name": "mutexrule-sample",
                      "namespace": "node-upgrade-mutex-operator"
                    }
                  ],
                  "mutexTargets": [
                    {
                      "name": "mutextarget-sample",
                      "namespace": "node-upgrade-mutex-operator"
                    }
                  ]
                }
              },
              {
                "apiVersion": "openshift-optional.skrzypek.io/v1alpha1",
                "kind": "MutexTarget",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "openshift-node-upgrade-mutex-operator",
                    "app.kubernetes.io/instance": "mutextarget-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "mutextarget",
                    "app.kubernetes.io/part-of": "openshift-node-upgrade-mutex-operator"
                  },
                  "name": "mutextarget-sample"
                },
                "spec": {
                  "machineConfigPools": [
                    "worker"
                  ]
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          certified: "false"
          containerImage: quay.io/jskrzypek/openshift-node-upgrade-mutex-operator
          createdAt: "2025-05-30T17:49:00Z"
          description: |
            This software injects required operations into the worker node upgrade process.
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "false"
          features.operators.openshift.io/disconnected: "false"
          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"
          operatorframework.io/suggested-namespace: node-upgrade-mutex-operator
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
          provider: Jason Skrzypek
          repository: https://github.com/shpwrck/openshift-upgrade-rollout-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: A node mutex rule definition in the form of a kubernetes
              job spec
            displayName: Mutex Rule
            kind: MutexRule
            name: mutexrules.openshift-optional.skrzypek.io
            version: v1alpha1
          - description: Lists of Targets and Rules to apply to them, as well as an
              upgrade facilitating Machine Config Pool
            displayName: Mutex Run Config
            kind: MutexRunConfig
            name: mutexrunconfigs.openshift-optional.skrzypek.io
            version: v1alpha1
          - description: A list of Machine Config Pools to enforce upgrade procedure.
            displayName: Mutex Target
            kind: MutexTarget
            name: mutextargets.openshift-optional.skrzypek.io
            version: v1alpha1
        description: |
          ## Introduction

          This operator injects required operations in the form of a Kubernetes job into the worker node upgrade process using MachineConfigPools. In short, when provided a list of operations (`MutexRules`) and a list of MachineConfigPools (`MutexTargets`) , the OpenShift Node Upgrade Mutex Operator will execute each operation for a given target, enable updates for the given target by modifying it's MachineConfigPool membership, and wait until the node has been upgraded before proceeding onto subsequent operations and targets.

          ## Dependencies

          ### Release Version Label

          In order to confirm the successful upgrade of each target node, the NFD Operator is used to generate a version feature on every worker node. In order to proceed through given targets, each node must have this label
          `'machineconfiguration.openshift.io/release-image-version'` with a key providing the semantic version of this node (e.g. `'4.16.4'`)

          There are several ways to accomplish this, but an example MachineConfig has been provided [here](https://github.com/shpwrck/openshift-node-upgrade-mutex-operator/blob/main/machineconfig.yaml).

          ### Canary Machine Config Pool

          In addition to node labels, a MachineConfigPool that will be used to accomodate targets subject to upgrades must be provided matching the following criteria:
          * selects only worker nodes
          * is not paused

          Applying the example below will create a compatible canary pool:

          ```yaml
          ---
          apiVersion: machineconfiguration.openshift.io/v1
          kind: MachineConfigPool
          metadata:
            name: canary
          spec:
            machineConfigSelector:
              matchLabels:
                machineconfiguration.openshift.io/role: worker
            nodeSelector:
              matchLabels:
                node-role.kubernetes.io/worker: ''
              matchExpressions:
                - key: 'isCanary'
                  operator: Exists
            paused: false
          ```

          ## Usage / Custom Resources Definitions

          #### MutexRule:

          A resource storing a single rule referring to a template for a Kubernetes job to be created.
          This resource **does not** modify existing resources.

          ```yaml
          ---
          apiVersion: openshift-optional.skrzypek.io/v1alpha1
          kind: MutexRule
          metadata:
            name: k8s-example
          spec:
            jobName: "example" # Jobs will be run with this prefix name
            jobNamespace: "node-upgrade-mutex-operator" # Jobs will be run in this namespace
            jobSpec: # Accepts full 'batch/v1' job spec
              selector: {}
              template:
                metadata:
                  name: mutex
                spec:
                  containers:
                  - command:
                    - sleep
                    args:
                    - "30"
                    image: ubi9/toolbox
                    name: mutex
                  restartPolicy: Never
            cleanUpJobSpec: # Accepts full 'batch/v1' job spec (Optional)
              selector: {}
              template:
                metadata:
                  name: mutex
                spec:
                  containers:
                  - command:
                    - sleep
                    args:
                    - "30"
                    image: ubi9/toolbox
                    name: mutex
                  restartPolicy: Never
            type: kubernetes
          ```

          #### MutexTarget:

          A resource storing a set of MachineConfigPools to pause and incrementally upgrade.
          This resource **does not** modify existing resources.

          ```yaml
          ---
          apiVersion: openshift-optional.skrzypek.io/v1alpha1
          kind: MutexTarget
          metadata:
            name: worker-example
          spec:
            machineConfigPools:
              - worker # Name of existing machineconfigpool
          ```

          #### MutexRunConfig:

          A resource that references existing MutexRules and MutexTargets as well as an existing MachineConfigPool that will allow members to be upgraded. Every rule defined in the `mutexRules` list will be added as a mandatory task to every node that is a member of the each MachineConfigPool defined in the `mutexTargets` list.
          This resource **does** modify existing resources.

          ```yaml
          apiVersion: openshift-optional.skrzypek.io/v1alpha1
          kind: MutexRunConfig
          metadata:
            name: example
          spec:
            skipTLSVerify: false # Defaults to false if omitted
            canary:
              name: canary # Name of unpaused machineconfigpool to modify
            mutexRules: # List of existing mutexRules
              - name: k8s-example
                namespace: node-upgrade-mutex-operator
            mutexTargets: # List of existing mutexTargets
              - name: worker-example
                namespace: node-upgrade-mutex-operator
          ```

          ## Procedure

          #### MutexRule

          1. Upon creation/modification, the schema of each K8s rule is validated.
          2. Status is updated to indicate valid or invalid configuration.

          #### MutexTargets

          1. Upon creation/modification, the existence of each target is validated.
          2. Status is updated to indicate valid or invalid configuration.
          3. The nodes assigned to each target are added to the status field `nodes`.

          #### MutexRunConfigs

          1. Upon creation/modification, the existence as well as validation status of each rule, target, and canary pool is confirmed.
          2. If valid, the existence of an upgrade is queried. An upgrade is available if the following is true:
              * The `status.history` of the `cluster` ClusterVersion equals `Completed`
              * The `release-image-version` of any worker node is less than the `spec.desiredUpdate.version` of the `cluster` ClusterVersion.
          3. If an update exists, each target MachineConfigPool has `spec.paused` set to `true`.
          4. If each pool is paused, each node is updated to include a label for each rule with the following format:
              * `mutexrule.openshift-optional.skrzypek.io/{{MutexRule_Name}}.{{MutexRule_Namespace}}`
          5. If labels have been applied, the provided canary pool is modified to exclude nodes with labels provided by step (4).
          6. Assuming steps (2-5) have completed successfully, then the process for running jobs and updating nodes begins. The process per node is as follows:
              * Launch each K8S job sequentially
              * Remove the current node's rule labels
              * Wait until the `release-image-version` of the node matches the `spec.desiredUpdate.version` of the `cluster` ClusterVersion
              * Launch each K8S cleanup job sequentially
          7. If the update succeeds, all machine config pools are unpaused and all match expressions are removed.

          ## Permissions Granted

          In addition to the permissions required to operate the included CRDs, the following access is granted to the operator's service account.

          | Resource | Permissions |
          | :---: | :---: |
          | Jobs | Create & Read |
          | Nodes | Read & Update |
          | ClusterVersion | Read |
          | MachineConfigPools | Read & Update |

          ## Notes

          * This operator was built using the operator-sdk's ansible plugin and therefore has all of the inherited capabilities and restrictions.
          * This operator has undergone minimal testing and should not be run in production environments without acknowledging the risks.
          * This operator is currently alpha and subject to change based on requirements.

          ## Additional Information
          For additional information refer to the [GitHub Repository](https://github.com/shpwrck/openshift-node-upgrade-mutex-operator)
        displayName: OpenShift Node Upgrade Mutex Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - OpenShift Optional
        - Upgrade
        - Mutex
        links:
        - name: Openshift Node Upgrade Mutex Operator
          url: https://github.com/shpwrck/openshift-node-upgrade-mutex-operator
        maintainers:
        - email: jskrzype@redhat.com
          name: Jason Skrzypek
        maturity: alpha
        minKubeVersion: 1.27.0
        provider:
          name: Jason Skrzypek
          url: https://github.com/shpwrck
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:d8cc6ffb98190e8dd403bfe67ddcb454e6127d32b87acc237b3e5240f70a20fb
        - quay.io/community-operator-pipeline-prod/openshift-node-upgrade-mutex-operator@sha256:5ac79c9193934440464a595434fe4241e038505d32650843afcad5f5bc2ce8a7
        - quay.io/jskrzypek/openshift-node-upgrade-mutex-operator@sha256:d4c28e8b256c00429d9999595c2386f1a25de597ee8e6c33871bb7b22b84c4af
        version: 0.2.66
      entries:
      - name: openshift-node-upgrade-mutex-operator.v0.2.66
        version: 0.2.66
      - name: openshift-node-upgrade-mutex-operator.v0.2.65
        version: 0.2.65
      - name: openshift-node-upgrade-mutex-operator.v0.2.60
        version: 0.2.60
      - name: openshift-node-upgrade-mutex-operator.v0.2.59
        version: 0.2.59
      - name: openshift-node-upgrade-mutex-operator.v0.2.53
        version: 0.2.53
      - name: openshift-node-upgrade-mutex-operator.v0.2.38
        version: 0.2.38
      - name: openshift-node-upgrade-mutex-operator.v0.2.34
        version: 0.2.34
      - name: openshift-node-upgrade-mutex-operator.v0.2.15
        version: 0.2.15
      - name: openshift-node-upgrade-mutex-operator.v0.2.14
        version: 0.2.14
      - name: openshift-node-upgrade-mutex-operator.v0.1.22
        version: 0.1.22
      name: alpha
    defaultChannel: alpha
    packageName: openshift-node-upgrade-mutex-operator
    provider:
      name: Jason Skrzypek
      url: https://github.com/shpwrck
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: costmanagement-metrics-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: costmanagement-metrics-operator.4.3.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
                "kind": "CostManagementMetricsConfig",
                "metadata": {
                  "name": "costmanagementmetricscfg-sample-v1beta1"
                },
                "spec": {
                  "authentication": {
                    "type": "token"
                  },
                  "packaging": {
                    "max_reports_to_store": 30,
                    "max_size_MB": 100
                  },
                  "prometheus_config": {
                    "collect_previous_data": true,
                    "context_timeout": 120,
                    "disable_metrics_collection_cost_management": false,
                    "disable_metrics_collection_resource_optimization": false
                  },
                  "source": {
                    "check_cycle": 1440,
                    "create_source": false,
                    "name": ""
                  },
                  "upload": {
                    "upload_cycle": 360,
                    "upload_toggle": true
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Monitoring
          certified: "true"
          containerImage: registry.redhat.io/costmanagement/costmanagement-metrics-rhel9-operator@sha256:e4457d0a4c77e95f46637e41044f45049fe03e818db82fabef06bd95c723778b
          createdAt: "2025-11-11T14:26:15Z"
          description: A Golang-based OpenShift Operator that generates and uploads
            OpenShift usage metrics to cost management.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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"
          operatorframework.io/initialization-resource: |-
            {
              "apiVersion": "costmanagement-metrics-cfg.openshift.io/v1beta1",
              "kind": "CostManagementMetricsConfig",
              "metadata": {
                "name": "costmanagementmetricscfg-sample-v1beta1"
              },
              "spec": {
                "authentication": {
                  "token_url": "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token",
                  "type": "token"
                },
                "api_url": "https://console.redhat.com/",
                "packaging": {
                  "max_reports_to_store": 30,
                  "max_size_MB": 100
                },
                "upload": {
                  "ingress_path": "/api/ingress/v1/upload",
                  "upload_cycle": 360,
                  "upload_toggle": true,
                  "validate_cert": true
                },
                "prometheus_config": {
                  "collect_previous_data": true,
                  "context_timeout": 120,
                  "disable_metrics_collection_cost_management": false,
                  "disable_metrics_collection_resource_optimization": false,
                  "service_address": "https://thanos-querier.openshift-monitoring.svc:9091",
                  "skip_tls_verification": false
                },
                "source": {
                  "check_cycle": 1440,
                  "create_source": false,
                  "name": "",
                  "sources_path": "/api/sources/v1.0/"
                }
              }
            }
          operatorframework.io/suggested-namespace: costmanagement-metrics-operator
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware"]'
          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/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/project-koku/koku-metrics-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CostManagementMetricsConfig is the Schema for the costmanagementmetricsconfig
              API
            displayName: Cost Management Metrics Config
            kind: CostManagementMetricsConfig
            name: costmanagementmetricsconfigs.costmanagement-metrics-cfg.openshift.io
            version: v1beta1
        description: |
          # Cost Management Metrics Operator
          ## Introduction
          The `costmanagement-metrics-operator` is a component of the [cost managment](https://access.redhat.com/documentation/en-us/cost_management_service) service for Openshift. The operator runs on the latest supported versions of Openshift. This operator obtains OpenShift usage data by querying Prometheus every hour to create metric reports that it uploads to Cost Management at [console.redhat.com](https://console.redhat.com) to be processed. For more information, reach out to <costmanagement@redhat.com>.

          This operator is capable of functioning within a disconnected/restricted network (aka air-gapped mode). In this mode, the operator will store the packaged reports for manual retrieval instead of being uploaded to Cost Management. Documentation for installing an operator within a restricted network can be found [here](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html).

          ## Features and Capabilities
          #### Metrics collection:
          The Cost Management Metrics Operator (`costmanagement-metrics-operator`) collects the metrics required for Cost Management by:
          * Querying Prometheus to gather the necessary metrics for Cost Management.
          * Writing the results of Prometheus queries to CSV report files.
          * Packaging the CSV report files into tarballs.

          #### Additional Capabilities:
          * Resource Optimization metrics collection.
          * The operator can be configured to gather all previous data within the configured retention period or a maximum of 90 days. The default data collection period is the 14 previous days. This setting is only applicable to newly created CostManagementMetricsConfigs.
          * The operator can be configured to automatically upload the packaged reports to Cost Management through Red Hat Insights Ingress service.
          * The operator can create an integration in console.redhat.com. An integration is required for Cost Management to process the uploaded packages.
          * PersistentVolumeClaim (PVC) configuration: The CostManagementMetricsConfig CR can accept a PVC definition and the operator will create and mount the PVC. If one is not provided, a default PVC will be created.
          * Restricted network installation: this operator can function on a restricted network. In this mode, the operator stores the packaged reports for manual retrieval.

          ## New in v4.3.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for cost management.

          ## New in v4.2.0:
          * Enabled gathering and reporting NVIDIA GPU metrics for resource optimization.
          * (Bugfix) Fixed custom CA certificate validation and configuration issues.
          * (Bugfix) Fixed issue where ROS queries were missing workload metadata for namespaces labeled only with the legacy `insights_cost_management_optimizations` label.

          ## New in v4.1.0:
          * Enabled gathering and reporting namespace metrics to provide more granular data for resource optimization.
          * Updated CSV report filenames to be more descriptive, replacing the previous generic UID-based names with content-reflective names.
          * Introduced a new generic label, `cost_management_optimizations`, for resource optimization while ensuring backward compatibility with the older `insights_cost_management_optimizations` label.

          ## New in v4.0.0:
          * **Virtual Machine Metrics:** Adds capabilities for collecting metrics and generating reports for running virtual machines within your OpenShift environment.
          * **FIPS Compliance:** Supports deployment in high-security environments when run on an OpenShift cluster with FIPS mode enabled.

          ## New in v3.3.2:
          * Leader election settings are now configurable via environment variables. These variables can be modified in the operator [Subscription](https://github.com/operator-framework/operator-lifecycle-manager/blob/5a01f50258003e248bd5630df0837fe0bb0f1cb7/doc/design/subscription-config.md). The values should be specified as durations in seconds in the format `<number-of-seconds>s`. The default values for `LEADER_ELECTION_LEASE_DURATION`, `LEADER_ELECTION_RENEW_DEADLINE`, and `LEADER_ELECTION_RETRY_PERIOD` are '60s', '30s', and '5s', respectively.

            ```
            kind: Subscription
            metadata:
            ...
            spec:
              ...
              config:
                env:
                - name: LEADER_ELECTION_LEASE_DURATION
                  value: "60s"
                - name: LEADER_ELECTION_RENEW_DEADLINE
                  value: "30s"
                - name: LEADER_ELECTION_RETRY_PERIOD
                  value: "5s"
            ```

          ## New in v3.3.1:
          * Optimize memory usage when reading CSV files.

          ## New in v3.3.0:
          * Storage reports now contain `node`, `csi_driver`, and `csi_volume_handle` fields.
          * The PVC capacity is now populated using the `kube_persistentvolume_capacity_bytes` metric instead of `kubelet_volume_stats_capacity_bytes`.
          * To receive resource optimization recommendations for your namespaces, you must now first enable each namespace. To enable a namespace, label it with `insights_cost_management_optimizations='true'`. In the CLI, run:
            ```
              oc label namespace NAMESPACE insights_cost_management_optimizations="true" --overwrite=true
            ```
          * __DEPRECATION NOTICE__: Basic authentication is deprecated and will not be supported beyond December 31, 2024. If the default token authentication method cannot be used, you must switch to [service account](https://console.redhat.com/iam/service-accounts) authentication ([more on creating a service account](https://access.redhat.com/articles/7036194)). Once you have created your service account, follow [this documentation](https://access.redhat.com/documentation/en-us/cost_management_service/1-latest/html-single/integrating_openshift_container_platform_data_into_cost_management/index#service-account-authentication_adding-an-ocp-int) on how to configure your operator to use service account authentication. Service-accounts must also be used if manually uploading payloads to console.redhat.com.

          ## New in v3.2.1:
          * The minimum supported configuration for `upload_cycle` is now 60 (minutes).
          * (Bugfix) many-to-many matching not allowed query fix.
          * (Bugfix) Sequentially collect data during initial install.

          ## New in v3.2.0:
          * Support for amd64, arm64, ppc64le, s390x architectures.
          * add liveness and readiness probes to controller Pod.
          * update pod security settings so that the controller Pod can run in Restricted mode [more info](https://sdk.operatorframework.io/docs/best-practices/pod-security-standards/).

          ## New in v3.1.0:
          * Add service-account authentication type.
          * __Deprecation Notice:__ Basic authentication is deprecated and will be removed in a future version of the operator.

          ## New in v3.0.0:
          * Daily report generation: Operator versions prior to v3.0.0 generated sequential reports. Now, reports are generated starting at 0:00 UTC. Any payloads generated throughout a given day will contain all data starting from 0:00 UTC. Once the next day starts, the previous day's reports are packaged, and the new report again starts at 0:00 UTC for the current day.
          * Failed query retry: In an attempt to prevent missing data, the operator will retry queries from the last successful query time, up to 5 times.

          ## New in v2.0.0:
          * Adds metrics and report generation for resource optimization. This feature will collect additional usage metrics and create a new report in the payload. These metrics are enabled by default, but can be disabled by setting `disable_metrics_collection_resource_optimization` to `true`.
          * Collect all available Prometheus data upon CR creation. This feature only applies to newly created CostManagementMetricsConfigs. The operator will check the monitoring stack configuration in the `openshift-monitoring` namespace. The operator will use the `retention` period set in the `cluster-monitoring-config` ConfigMap if defined, up to a maximum of 90 days. Otherwise it will fall back to collecting 14 days of data, if available. This data collection may be disabled by setting `collect_previous_data` to `false`. Turning this feature off results in the operator collecting metrics from the time the CostManagementMetricsConfig is created, forward.

          ## Limitations and Pre-Requisites
          #### Limitations (Potential for metrics data loss)
          * An integration **must** exist in console.redhat.com for an uploaded payload to be processed by Cost Management. The operator sends the payload to the Red Hat Insights Ingress service which usually returns successfully, but the operator does not currently confirm with Cost Management that the payload was processed. After Ingress accepts the uploaded payload, it is deleted from the operator. If the data within the payload is not processed, a gap will be introduced in the usage metrics. Data may be recollected by deleting the `CostManagementMetricsConfig`, creating a new `CostManagementMetricsConfig`, and setting `collect_previous_data: true`. This re-collection of data will gather all data stored in Prometheus, up to 90 days.

          **Note** The following limitations are specific to operators configured to run in a restricted network:
          * The `costmanagement-metrics-operator` will not be able to generate new reports if the PVC storage is full. If this occurs, the reports must be manually deleted from the PVC so that the operator can function as normal.
          * The default report retention is 30 reports (about one week's worth of data). The reports must be manually downloaded and uploaded to console.redhat.com every week, or they will be deleted and the data will be lost.

          #### Storage configuration prerequisite
          The operator will attempt to create and use the following PVC when installed:

                volume_claim_template:
                  apiVersion: v1
                  kind: PersistentVolumeClaim
                  metadata:
                    name: costmanagement-metrics-operator-data
                  spec:
                    accessModes:
                      - ReadWriteOnce
                    resources:
                      requests:
                        storage: 10Gi

          If a different PVC should be utilized, a valid PVC should be specified in the CostManagementMetricsConfig CR as described in the appropriate section below. The PVC to be used may exist already, or the operator will attempt to create it.

          To use the default specification, the follow assumptions must be met:
          1. A default StorageClass is defined.
          2. Dynamic provisioning for that default StorageClass is enabled.

          If these assumptions are not met, the operator will not deploy correctly. In these cases, storage must be manually configured. After configuring storage, a valid PVC template should be supplied in the `volume_claim_template` spec of the CostManagementMetricsConfig CR.

          ## Configurable parameters:
            * `authentication`:
              * `type: token` -> The authentication method for connecting to `console.redhat.com`. The default and preferred method is `token`. `basic` (deprecated) and `service-account` authentication methods are used when the openshift-config pull-secret does not contain a token for `console.redhat.com`.
              * `secret_name` -> The Secret used by the operator when the authentication type is `basic` (deprecated) or `service-account`. This parameter is required **only if** the authentication type is `basic` (deprecated) or `service-account`.
            * `packaging`:
              * `max_reports_to_store: 30` -> The number of reports to store when configured in air-gapped mode. The default is 30, with a minimum of 1 and no maximum. When the operator is not configured in air-gapped mode, this parameter has no effect. Reports are removed as soon as they are uploaded.
              * `max_size: 100` -> The maximum size for packaged files in Megabytes prior to compression. The default is 100, with a minimum of 1 and maximum of 100.
            * `prometheus_config`:
              * `collect_previous_data: true` -> Toggle for collecting all available data in Prometheus **upon CostManagementMetricsConfig creation** (This parameter will start to appear in CostManagementMetricsConfigs that were created prior to v2.0.0 but will not have any effect unless the CostManagementMetricsConfig is deleted and recreated). The default is `true`. The operator will first look for a `retention` period in the `cluster-monitoring-config` ConfigMap in the `openshift-monitoring` namespace and gather data over this time period up to a maximum of 90 days. If this configuration is not set, the default is 14 days. (New in v2.0.0)
              * `disable_metrics_collection_cost_management: false` -> Toggle for disabling the collection of metrics for Cost Management. The default is false. (New in v2.0.0)
              * `disable_metrics_collection_resource_optimization: false` -> Toggle for disabling the collection of metrics for Resource Optimization. The default is false. (New in v2.0.0)
              * `context_timeout: 120` -> The time in seconds before Prometheus queries timeout due to exceeding context timeout. The default is 120, with a minimum of 10 and maximum of 180.
            * `source`:
              * `name: ''` -> The name of the integration the operator will create in `console.redhat.com`. If the name value is empty, the default intergration name is the **cluster id**.
              * `create_source: false` -> Toggle for whether or not the operator will create the integration in `console.redhat.com`. The default is False. This parameter should be switched to True when an integration does not already exist in `console.redhat.com` for this cluster.
              * `check_cycle: 1440` -> The time in minutes to wait between checking if an integration exists for this cluster. The default is 1440 minutes (24 hrs).
            * `upload`:
              * `upload_cycle: 360` -> The time in minutes between payload uploads. The default is 360 (6 hours), minimum is 60 (1 hour).
              * `upload_toggle: true` -> Toggle to turn upload on or off -> true means upload, false means do not upload (false == air-gapped mode). The default is `true`.
              * `upload_wait` -> The amount of time (in seconds) to pause before uploading a payload. The default is a random number between 0 and 35. This is used to decrease service load, but may be set to `0` if desired.
            * `volume_claim_template` -> see the "Storage configuration prerequisite" section above.

          ## Configure the costmanagement-metrics-operator
          **Note** There are separate instructions for configuring the `costmanagement-metrics-operator` to run in a restricted network.
          ##### Configure authentication
          The default authentication for the operator is `token`. No further steps are required to configure token authentication. If `basic` (deprecated) or `service-account` is the preferred authentication method, a Secret which holds the credentials must be created:
          1. On the left navigation pane, select `Workloads` -> `Secrets` -> select Project: `costmanagement-metrics-operator` -> `Create` -> `Key/Value Secret`
          2. Give the Secret a name and add 2 keys (all lowercase) for the respective authentication type. The values for these keys correspond to console.redhat.com credentials:
              * basic auth (deprecated): `username` and `password`
              * service-account auth: `client_id` and `client_secret`

          3. Select `Create`.
          ##### Create the CostManagementMetricsConfig
          Configure the costmanagement-metrics-operator by creating a `CostManagementMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `costmanagement-metrics-operator` -> `CostManagementMetricsConfig` -> `Create Instance`.
          2. For `basic` (deprecated) or `service-account` authentication, edit the following values in the spec:
              * Replace `authentication: type:` with `basic` or `service-account`.
              * Add the `secret_name` field under `authentication`, and set it equal to the name of the authentication Secret that was created above. The spec should look similar to the following:

                  * for basic auth type (deprecated)
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: basic
                  ```

                  * for service-account auth type
                  ```
                    authentication:
                      secret_name: SECRET-NAME
                      type: service-account
                  ```

          3. To configure the costmanagement-metrics-operator to create a cost management integration, edit the following values in the `source` field:
              * Replace the `name` field value with the preferred name of the integration to be created.
              * Replace the `create_source` field value with `true`.

              **Note:** if the integration already exists, replace the empty string value of the `name` field with the existing name, and leave `create_source` as false. This will allow the operator to confirm that the integration exists.

          4. If not specified, the operator will create a default PersistentVolumeClaim called `costmanagement-metrics-operator-data` with 10Gi of storage. To configure the costmanagement-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec:

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          5. Select `Create`.

          # Restricted Network Usage (disconnected/air-gapped mode)
          ## Installation
          To install the `costmanagement-metrics-operator` in a restricted network, follow the [olm documentation](https://docs.openshift.com/container-platform/latest/operators/admin/olm-restricted-networks.html). The operator is found in the `community-operators` Catalog in the `registry.redhat.io/redhat/community-operator-index:latest` Index. If pruning the index before pushing to the mirrored registry, keep the `costmanagement-metrics-operator` package.

          Within a restricted network, the operator queries prometheus to gather the necessary usage metrics, writes the query results to CSV files, and packages the reports for storage in the PVC. These reports then need to be manually downloaded from the cluster and uploaded to [console.redhat.com](https://console.redhat.com).

          ## Configure the costmanagement-metrics-operator for a restricted network
          ##### Create the CostManagementMetricsConfig
          Configure the costmanagement-metrics-operator by creating a `CostManagementMetricsConfig`.
          1. On the left navigation pane, select `Operators` -> `Installed Operators` -> `costmanagement-metrics-operator` -> `CostManagementMetricsConfig` -> `Create Instance`.
          2. Specify the desired storage. If not specified, the operator will create a default Persistent Volume Claim called `costmanagement-metrics-operator-data` with 10Gi of storage. To configure the costmanagement-metrics-operator to use or create a different PVC, edit the following in the spec:
              * Add the desired configuration to the `volume_claim_template` field in the spec (below is only a template. Any _valid_ `PersistentVolumeClaim` may be defined here):

                ```
                  volume_claim_template:
                    apiVersion: v1
                    kind: PersistentVolumeClaim
                    metadata:
                      name: <insert-name>
                    spec:
                      storageClassName: <insert-class-name>
                      accessModes:
                        - ReadWriteOnce
                      resources:
                        requests:
                          storage: 10Gi
                ```

              **Note:** If using the YAML View, the `volume_claim_template` field must be added to the spec
          3. (Optional) Specify the desired report retention. The operator will retain 30 reports by default. This corresponds to approximately one week's worth of data if using the default packaging cycle. To modify the number of retained reports:
              * Change the `packaging` spec field `max_reports_to_store` to the desired number of reports to retain. Once this max number is reached, the operator will start removing the oldest packages remaining on the PVC:

                ```
                  packaging:
                    max_size_MB: 100
                    max_reports_to_store: 30
                ```

              **Note:** The number of retained reports directly affects the frequency that reports must be manually downloaded from the PVC. Take caution in setting this to a higher number of reports, as the operator cannot write data to the PVC if the storage is full.
          4. To configure the operator to perform in a restricted network, set the `upload_toggle` to `false`:

            ```
              upload:
                upload_cycle: 360
                upload_toggle: false
            ```

          5. Select `Create`.

          ## Download reports from the Operator & clean up the PVC
          If the `costmanagement-metrics-operator` is configured to run in a restricted network, the metric reports will not automatically upload to cost managment. Instead, they need to be manually copied from the PVC for upload to [console.redhat.com](https://console.redhat.com). The default configuration saves one week of reports which means the process of downloading and uploading reports should be repeated weekly to prevent loss of metrics data. To download the reports, complete the following steps:
          1. Create the following Pod, ensuring the `claimName` matches the PVC containing the report data:

            ```
              kind: Pod
              apiVersion: v1
              metadata:
                name: volume-shell
                namespace: costmanagement-metrics-operator
                labels:
                  app: costmanagement-metrics-operator
              spec:
                volumes:
                - name: costmanagement-metrics-operator-reports
                  persistentVolumeClaim:
                    claimName: costmanagement-metrics-operator-data
                containers:
                - name: volume-shell
                  image: busybox
                  command: ['sleep', 'infinity']
                  volumeMounts:
                  - name: costmanagement-metrics-operator-reports
                    mountPath: /tmp/costmanagement-metrics-operator-reports
            ```

          2. Use rsync to copy all of the files ready for upload from the PVC to a local folder:

            ```
            $ oc rsync volume-shell:/tmp/costmanagement-metrics-operator-reports/upload local/path/to/save/folder
            ```

          3. Once confirming that the files have been successfully copied, use rsh to connect to the pod and delete the contents of the upload folder so that they are no longer in storage:

            ```
            $ oc rsh volume-shell
            $ rm /tmp/costmanagement-metrics-operator-reports/upload/*
            ```

          4. (Optional) Delete the pod that was used to connect to the PVC:

            ```
            $ oc delete -f volume-shell.yaml
            ```

          ## Create an Integration
          In a restricted network, the `costmanagement-metrics-operator` cannot automatically create an integration. This process must be done manually. In the console.redhat.com platform, open the [Integrations menu](https://console.redhat.com/settings/integrations/) to begin adding an OpenShift integration to Cost Management:

          Prerequisites:
          * The cluster identifier which can be found in the CostManagementMetricsConfig CR, the cluster Overview page, or the cluster Help > About.

          Creating an integration:
          1. Navigate to the Integrations menu
          2. Select the `Red Hat` tab
          3. Create a new `Red Hat Openshift Container Platform` integration:
              * give the integration a unique name
              * add the Cost Management application
              * add the cluster identifier
          4. In the Source wizard, review the details and click `Finish` to create the source.

          ## Upload the reports to cost managment
          Uploading reports to cost managment is done through curl:

              $ curl -vvvv -F "file=@FILE_NAME.tar.gz;type=application/vnd.redhat.hccm.tar+tgz" https://console.redhat.com/api/ingress/v1/upload -H "Authorization: Bearer ${ACCESS_TOKEN}"

          where `FILE_NAME` is the name of the report to upload. The `ACCESS_TOKEN` is acquired using a service account. See documentation on [creating and managing a service account](https://docs.redhat.com/en/documentation/red_hat_customer_portal/1/html/creating_and_managing_service_accounts).
        displayName: Cost Management Metrics Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - cost
        - management
        - usage
        - monitor
        links:
        - name: Cost Management Metrics Operator source code repository
          url: https://github.com/project-koku/koku-metrics-operator
        maintainers:
        - email: costmanagement@redhat.com
          name: costmanagement
        maturity: alpha
        minKubeVersion: 1.24.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/costmanagement/costmanagement-metrics-operator-bundle@sha256:9cf11bd854c76e2b344c0072ae8487acde31f6fb50e2c47937f95186146f40e6
        - registry.redhat.io/costmanagement/costmanagement-metrics-rhel9-operator@sha256:e4457d0a4c77e95f46637e41044f45049fe03e818db82fabef06bd95c723778b
        version: 4.3.0
      entries:
      - name: costmanagement-metrics-operator.4.3.0
        version: 4.3.0
      - name: costmanagement-metrics-operator.4.2.0
        version: 4.2.0
      - name: costmanagement-metrics-operator.4.1.0
        version: 4.1.0
      - name: costmanagement-metrics-operator.4.0.0
        version: 4.0.0
      - name: costmanagement-metrics-operator.3.3.2
        version: 3.3.2
      - name: costmanagement-metrics-operator.3.3.1
        version: 3.3.1
      - name: costmanagement-metrics-operator.3.3.0
        version: 3.3.0
      - name: costmanagement-metrics-operator.3.2.1
        version: 3.2.1
      - name: costmanagement-metrics-operator.3.2.0
        version: 3.2.0
      - name: costmanagement-metrics-operator.3.1.1
        version: 3.1.1
      - name: costmanagement-metrics-operator.3.1.0
        version: 3.1.0
      - name: costmanagement-metrics-operator.3.0.1
        version: 3.0.1
      - name: costmanagement-metrics-operator.3.0.0
        version: 3.0.0
      - name: costmanagement-metrics-operator.2.0.0
        version: 2.0.0
      - name: costmanagement-metrics-operator.1.2.0
        version: 1.2.0
      - name: costmanagement-metrics-operator.1.1.9
        version: 1.1.9
      - name: costmanagement-metrics-operator.1.1.8
        version: 1.1.8
      - name: costmanagement-metrics-operator.1.1.7
        version: 1.1.7
      - name: costmanagement-metrics-operator.1.1.6
        version: 1.1.6
      - name: costmanagement-metrics-operator.1.1.5
        version: 1.1.5
      - name: costmanagement-metrics-operator.1.1.4
        version: 1.1.4
      - name: costmanagement-metrics-operator.1.1.3
        version: 1.1.3
      - name: costmanagement-metrics-operator.1.1.0
        version: 1.1.0
      - name: costmanagement-metrics-operator.1.0.0
        version: 1.0.0
      name: stable
    defaultChannel: stable
    packageName: costmanagement-metrics-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: certified-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Digital.ai
      provider-url: https://digital.ai
    name: digitalai-deploy-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: certified-operators
    catalogSourceDisplayName: Certified Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: digitalai-deploy-operator.v25.1.0-beta.5
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "medium"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": "/login",
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/tmp",
                        "/opt/xebialabs/central-configuration-server/centralConfiguration",
                        "/opt/xebialabs/central-configuration-server/conf",
                        "/opt/xebialabs/central-configuration-server/log"
                      ],
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": "/login",
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "startupProbe": {
                      "enabled": true,
                      "failureThreshold": 12,
                      "initialDelaySeconds": 10,
                      "path": "/login",
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r39"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "quorum",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-daid",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.2-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "node-conf_xl-deploy-conf-template": {
                        "content": "# The ${APP_HOME}/node-conf/xl-deploy.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-deploy.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-deploy.conf and this is specified in ${APP_HOME}/conf/xld-wrapper.conf.common\nxl {\n  server.hostname = ${HOSTNAME}${HOSTNAME_SUFFIX}\n  cluster.node {\n    id = ${XL_NODE_NAME}\n    hostname = ${XL_NODE_NAME}\n    clusterPort = 5531\n  }\n}\n",
                        "mode": 432,
                        "path": "node-conf/xl-deploy.conf.template"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvm": {
                      "options": {
                        "networkaddress.cache.ttl": 30
                      }
                    },
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": null,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/xl-deploy-server/artifacts",
                        "/opt/xebialabs/xl-deploy-server/cache",
                        "/opt/xebialabs/xl-deploy-server/centralConfiguration",
                        "/opt/xebialabs/xl-deploy-server/conf",
                        "/opt/xebialabs/xl-deploy-server/driver/jdbc",
                        "/opt/xebialabs/xl-deploy-server/driver/mq",
                        "/opt/xebialabs/xl-deploy-server/export",
                        "/opt/xebialabs/xl-deploy-server/log",
                        "/opt/xebialabs/xl-deploy-server/node-conf",
                        "/opt/xebialabs/xl-deploy-server/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "path": null,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "startupProbe": {
                      "enabled": true,
                      "failureThreshold": 12,
                      "initialDelaySeconds": 60,
                      "path": null,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r39"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.12.0-debian-12-r12"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "17.2.0-debian-12-r12"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "4.0.7-debian-12-r0"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r39"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "livenessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/deploy-task-engine/cache",
                        "/opt/xebialabs/deploy-task-engine/conf",
                        "/opt/xebialabs/deploy-task-engine/driver/jdbc",
                        "/opt/xebialabs/deploy-task-engine/driver/mq",
                        "/opt/xebialabs/deploy-task-engine/export",
                        "/opt/xebialabs/deploy-task-engine/log",
                        "/opt/xebialabs/deploy-task-engine/node-conf",
                        "/opt/xebialabs/deploy-task-engine/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "readinessProbe": {
                      "enabled": true,
                      "failureThreshold": 3,
                      "initialDelaySeconds": 10,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "startupProbe": {
                      "enabled": true,
                      "failureThreshold": 12,
                      "initialDelaySeconds": 60,
                      "periodSeconds": 10,
                      "successThreshold": 1,
                      "timeoutSeconds": 20
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r39"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabsunsupported/deploy-operator@sha256:ca728924eaa65b4bc0157fca3120e92e8c58225d6ca8d45a1726e3d0f85ab38b '
          createdAt: "2025-04-09T14:58:13Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind: DigitalaiDeploy\nmetadata:\n
          \ name: daid-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  centralConfiguration:\n
          \   replicaCount: 1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  master:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  worker:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          SESSION_XLD\n      haproxy.router.openshift.io/disable_cookies: \"false\"\n
          \     haproxy.router.openshift.io/rewrite-target: /\n    hostname: '<mandatory-deploy-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n
          \       enabled: false\n      containerSecurityContext:\n        enabled:
          false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n    install:
          true\n    persistence:\n      size: 1Gi\n      storageClass: ''\n    replicaCount:
          1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\n####
          Configuration Details\n\nThe sample configuration uses:\n\n- Autogenerated
          limited license\n- Simple administrator initial password\n- Default keystore
          setup\n- Only one replica is set for all pods\n- All Pods are missing resource
          limit setup\n- Default storage class and minimal size for persistent storage\n-
          Embedded PostgreSQL for DB management\n- Embedded RabbitMQ for message queue
          management\n\n### Security Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabsunsupported/deploy-operator@sha256:ca728924eaa65b4bc0157fca3120e92e8c58225d6ca8d45a1726e3d0f85ab38b
        - docker.io/xebialabsunsupported/deploy-task-engine@sha256:5696c93aa10c114be4f84004eaceb09861d21cf03df1c05928ea68d9e89649cf
        - docker.io/xebialabsunsupported/xl-deploy@sha256:38f017fb42661c5d11a322b337d2f3e675f301c2fd9f8942e98613cf8bbd5cc0
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:18e02c701bdf2654811527f6cc26f43e74bce69256040ca301e4f5c498e7c645
        - docker.io/xebialabsunsupported/central-configuration@sha256:b7042b64b3e65ee8868aa4327b7f52257c8ccc4d70a1002d7edf3684cac0fa1b
        version: 25.1.0-beta.5
      entries:
      - name: digitalai-deploy-operator.v25.1.0-beta.5
        version: 25.1.0-beta.5
      name: beta
    - currentCSV: digitalai-deploy-operator.v24.1.10
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false,
                        "fsGroup": null,
                        "runAsGroup": null,
                        "runAsUser": null
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false,
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "fsGroup": null,
                      "runAsGroup": null,
                      "runAsUser": null
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 20,
                      "probesReadinessTimeout": 20
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r16"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "classic",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "ingressClass": "haproxy-daid",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.28.7-debian-12-r3"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r16"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.0-debian-12-r1"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.10.1-debian-12-r5"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "15.6.0-debian-12-r7"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.13-debian-12-r2"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r21"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r16"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {
              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator without SCC creation and with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/deploy-operator@sha256:2b3413cd41f2b437e6027c8ae2cff12d1113e0ac1be69fc24840d68a05d3a665 '
          createdAt: "2024-10-16T05:39:21Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.36.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind:
          DigitalaiDeploy\nmetadata:\n  name: daid-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  securityContextConstraints:\n
          \   enabled: false\n  centralConfiguration:\n    replicaCount: 1\n    podSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n    volumePermissions:\n
          \     enabled: false\n  master:\n    replicaCount: 1\n    persistence:\n
          \     storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n      runAsUser:
          null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n    volumePermissions:\n
          \     enabled: false\n  worker:\n    replicaCount: 1\n    persistence:\n
          \     storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n      runAsUser:
          null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     runAsUser: null\n      runAsGroup: null\n    volumePermissions:\n
          \     enabled: false\n  route:\n    enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          SESSION_XLD\n      haproxy.router.openshift.io/disable_cookies: \"false\"\n
          \     haproxy.router.openshift.io/rewrite-target: /\n    hostname: '<mandatory-deploy-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n
          \       enabled: false\n        runAsUser: null\n        runAsGroup: null\n
          \       fsGroup: null\n      containerSecurityContext:\n        enabled:
          false\n        runAsUser: null\n        runAsGroup: null\n      securityContextConstraints:\n
          \       enabled: false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n
          \   install: true\n    persistence:\n      size: 1Gi\n      storageClass:
          ''\n    replicaCount: 1\n    podSecurityContext:\n      enabled: false\n
          \     runAsUser: null\n      runAsGroup: null\n      fsGroup: null\n    containerSecurityContext:\n
          \     enabled: false\n      runAsUser: null\n      runAsGroup: null\n    securityContextConstraints:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\nIf
          SCC is required, it must be managed manually. The necessary permissions
          for accessing SecurityContextConstraints must be granted when SCC is enabled;
          otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"daid-doc-digitalai-deploy-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xld-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Embedded PostgreSQL for
          DB management\n- Embedded RabbitMQ for message queue management\n\n### Security
          Configuration Details\n\n- `securityContextConstraints.enabled: false` -
          disables creation of SCCs;\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/central-configuration@sha256:83359e49c66e4fab502cc75663b456eb37d81d7cb512f2c48667f4d6a324e0df
        - docker.io/xebialabs/deploy-operator@sha256:2b3413cd41f2b437e6027c8ae2cff12d1113e0ac1be69fc24840d68a05d3a665
        - docker.io/xebialabs/deploy-task-engine@sha256:8a381fd84483ea919fa7f8bee5cf19d9dec0d1d61cce73ec6b7c56fa504c6c93
        - docker.io/xebialabs/xl-deploy@sha256:77fdf6a3909367b060eba2ef698baddb77e4086d4d977f9c617d1e26a4427472
        - gcr.io/kubebuilder/kube-rbac-proxy@sha256:771a9a173e033a3ad8b46f5c00a7036eaa88c8d8d1fbd89217325168998113ea
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:9716402247ed874f19574a0d5125d1035fd198f36081d9129c1d4d4ad2f714a6
        version: 24.1.10
      entries:
      - name: digitalai-deploy-operator.v24.1.10
        version: 24.1.10
      name: stable
    - currentCSV: digitalai-deploy-operator.v24.1.17
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "securityContextConstraints": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "securityContextConstraints": {
                      "enabled": false
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "securityContextConstraints": {
                    "enabled": false
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 20,
                      "probesReadinessTimeout": 20
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r40"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "classic",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "image": {
                        "tag": "v0.14.7"
                      },
                      "ingressClass": "haproxy-daid",
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r1"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r40"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.26.2-debian-12-r10"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r0"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "15.6.0-debian-12-r20"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "securityContextConstraints": {
                        "enabled": true
                      },
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.12.14-debian-12-r7"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "replicaCount": 3,
                    "securityContextConstraints": {
                      "enabled": true
                    },
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r40"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "securityContextConstraints": {
                    "enabled": true
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r40"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator without SCC creation and with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/deploy-operator@sha256:c652a6dfc1f3ce2fba528141b88b48b394db55420b12f01bc21e1c8d20ef4b01 '
          createdAt: "2025-04-07T06:31:17Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.1
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration disables SCC creation
          and uses embedded Postgresql and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind:
          DigitalaiDeploy\nmetadata:\n  name: daid-min\nspec:\n  k8sSetup:\n    platform:
          Openshift\n  auth:\n    adminPassword: 'admin'\n  licenseAcceptEula: true\n
          \ keystore:\n    passphrase: 'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  securityContextConstraints:\n
          \   enabled: false\n  centralConfiguration:\n    replicaCount: 1\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n  master:\n    replicaCount:
          1\n    persistence:\n      storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n  worker:\n    replicaCount:
          1\n    persistence:\n      storageClass: ''\n      size: 1Gi\n    podSecurityContext:\n
          \     enabled: false\n    containerSecurityContext:\n      enabled: false\n
          \   volumePermissions:\n      enabled: false\n  route:\n    enabled: false\n
          \   annotations:\n      haproxy.router.openshift.io/cookie_name: SESSION_XLD\n
          \     haproxy.router.openshift.io/disable_cookies: \"false\"\n      haproxy.router.openshift.io/rewrite-target:
          /\n    hostname: '<mandatory-deploy-hostname>'\n    path: /\n    tls:\n
          \     enabled: true\n      termination: edge\n  postgresql:\n    install:
          true\n    primary:\n      persistence:\n        size: 1Gi\n        storageClass:
          ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n        enabled:
          false\n      containerSecurityContext:\n        enabled: false\n      securityContextConstraints:\n
          \       enabled: false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n
          \   install: true\n    persistence:\n      size: 1Gi\n      storageClass:
          ''\n    replicaCount: 1\n    podSecurityContext:\n      enabled: false\n
          \   containerSecurityContext:\n      enabled: false\n    securityContextConstraints:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\nIf
          SCC is required, it must be managed manually. The necessary permissions
          for accessing SecurityContextConstraints must be granted when SCC is enabled;
          otherwise, the following error will occur:\n\n```bash\nsecuritycontextconstraints.security.openshift.io
          \\\"daid-doc-digitalai-deploy-privileged\\\" is forbidden: User \\\"system:serviceaccount:openshift-operators:xld-controller-manager\\\"
          cannot get resource \\\"securitycontextconstraints\\\" in API group \\\"security.openshift.io\\\"
          at the cluster scope\"\n```\n\n#### Configuration Details\n\nThe sample
          configuration uses:\n\n- Autogenerated limited license\n- Simple administrator
          initial password\n- Default keystore setup\n- Only one replica is set for
          all pods\n- All Pods are missing resource limit setup\n- Default storage
          class and minimal size for persistent storage\n- Embedded PostgreSQL for
          DB management\n- Embedded RabbitMQ for message queue management\n\n### Security
          Configuration Details\n\n- `securityContextConstraints.enabled: false` -
          disables creation of SCCs;\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/central-configuration@sha256:085601dcad8a1bdd996dbc5fd56d3db25cd15e2880d3b7d5e767e20959cc85cf
        - docker.io/xebialabs/deploy-operator@sha256:c652a6dfc1f3ce2fba528141b88b48b394db55420b12f01bc21e1c8d20ef4b01
        - docker.io/xebialabs/deploy-task-engine@sha256:1cb2b3483455268d96a9258f70df7f0f1544efecba83c8f695122c9932d6d13d
        - docker.io/xebialabs/xl-deploy@sha256:8854a2ae9f2f1f7a2a63a5041ae5240c48939c56db0bf4a9fd72867861320667
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:4deec4581f83eb09f53d5744ea2af54b27d8a70b2077e4ef4f47c9326de76803
        version: 24.1.17
      entries:
      - name: digitalai-deploy-operator.v24.1.17
        version: 24.1.17
      - name: digitalai-deploy-operator.v24.1.14
        version: 24.1.14
      - name: digitalai-deploy-operator.v24.1.10
        version: 24.1.10
      name: stable-v24.1
    - currentCSV: digitalai-deploy-operator.v24.3.6
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-min"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "admin"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "hooks": {
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ==",
                    "passphrase": "test1234"
                  },
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "1Gi",
                        "storageClass": ""
                      },
                      "podSecurityContext": {
                        "enabled": false
                      },
                      "resourcesPreset": "medium"
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "persistence": {
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "daid-placeholders"
                },
                "spec": {
                  "auth": {
                    "adminPassword": "\u003cmandatory-admin-password\u003e"
                  },
                  "centralConfiguration": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": 1,
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-db-host\u003e:5432/\u003cxld-database-name\u003e",
                        "username": "\u003cxld-username\u003e"
                      },
                      "report": {
                        "maxPoolSize": 10,
                        "password": "\u003cxld-report-password\u003e",
                        "url": "jdbc:postgresql://\u003cxld-report-db-host\u003e:5432/\u003cxld-report-database-name\u003e",
                        "username": "\u003cxld-report-username\u003e"
                      }
                    },
                    "mq": {
                      "driverClassName": "\u003cdriver-class-name\u003e",
                      "enabled": false,
                      "password": "\u003cpassword\u003e",
                      "queueName": "\u003cqueue-name\u003e",
                      "queueType": "\u003cclassic-or-quorum\u003e",
                      "url": "\u003cqueue-url\u003e",
                      "username": "\u003cusername\u003e"
                    }
                  },
                  "haproxy-ingress": {
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "enabled": false
                    },
                    "getLicense": {
                      "enabled": true
                    }
                  },
                  "ingress": {
                    "enabled": false
                  },
                  "k8sSetup": {
                    "platform": "Openshift"
                  },
                  "keystore": {
                    "keystore": "\u003cmandatory-enter base64 encoded keystore\u003e",
                    "passphrase": "\u003cmandatory-keystore-passphrase\u003e"
                  },
                  "license": "\u003clicense\u003e",
                  "licenseAcceptEula": true,
                  "master": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-master-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-master-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "nginx-ingress-controller": {
                    "install": false
                  },
                  "oidc": {
                    "accessTokenUri": "",
                    "clientId": "",
                    "clientSecret": "",
                    "emailClaim": "",
                    "enabled": false,
                    "fullNameClaim": "",
                    "issuer": "",
                    "keyRetrievalUri": "",
                    "logoutUri": "",
                    "postLogoutRedirectUri": "",
                    "redirectUri": "",
                    "rolesClaimName": "",
                    "scopes": "[\"openid\"]",
                    "userAuthorizationUri": "",
                    "userNameClaimName": ""
                  },
                  "postgresql": {
                    "install": true,
                    "primary": {
                      "containerSecurityContext": {
                        "enabled": false
                      },
                      "persistence": {
                        "size": "\u003cpostgresql-storage-size\u003e",
                        "storageClass": "\u003cpostgresql-storage-class-rwo\u003e"
                      },
                      "podSecurityContext": {
                        "enabled": false
                      }
                    },
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "rabbitmq": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "install": true,
                    "persistence": {
                      "size": "\u003crabbitmq-storage-size\u003e",
                      "storageClass": "\u003crabbitmq-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003crabbitmq-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": true,
                    "hostname": "\u003cmandatory-deploy-hostname\u003e",
                    "path": "/",
                    "tls": {
                      "enabled": true,
                      "termination": "edge"
                    }
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": "",
                    "keystoreKeypassword": "",
                    "keystorePassword": "",
                    "keystoreType": ""
                  },
                  "worker": {
                    "containerSecurityContext": {
                      "enabled": false
                    },
                    "diagnosticMode": {
                      "enabled": false
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "size": "\u003cdeploy-worker-storage-size\u003e",
                      "storageClass": "\u003cmandatory-deploy-storage-class-rwo\u003e"
                    },
                    "podSecurityContext": {
                      "enabled": false
                    },
                    "replicaCount": "\u003cdeploy-worker-replica-count\u003e",
                    "volumePermissions": {
                      "enabled": false
                    }
                  }
                }
              },
              {
                "apiVersion": "xld.digital.ai/v1alpha1",
                "kind": "DigitalaiDeploy",
                "metadata": {
                  "name": "digitalaideploy-sample"
                },
                "spec": {
                  "appContextRoot": "/",
                  "auth": {
                    "adminPassword": null
                  },
                  "busyBox": {
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "library/busybox",
                      "tag": "stable"
                    }
                  },
                  "centralConfiguration": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/central-configuration-server/bin/run-in-operator.sh"
                    ],
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\necho \"Delete empty files to replace them with latest configuration\"\nfind /opt/xebialabs/central-configuration-server/centralConfiguration -maxdepth 1 -type f -empty -print -delete\n{{- if .Values.oidc.enabled }}\nif [[ ${GENERATE_XL_CONFIG,,} != \"true\" ]]; then\n  echo \"Not generating deploy-oidc.yaml as GENERATE_XL_CONFIG != 'true'\"\nelif [[ -e ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u0026\u0026 ! -f \"${APP_HOME}/centralConfiguration/deploy-oidc.yaml\" ]]; then\n  echo \"Generate configuration file deploy-oidc.yaml from environment parameters\"\n  sed -e \"s#\\${XL_DB_DRIVER}#${XL_DB_DRIVER}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${DNS_RESOLVER}#${DNS_RESOLVER}#g\" \\\n  -e \"s#\\${HOSTNAME}#${HOSTNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${JMS_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XL_CLUSTER_MODE}#${XL_CLUSTER_MODE}#g\" \\\n  -e \"s#\\${XL_DB_URL}#${XL_DB_URL}#g\" \\\n  -e \"s#\\${XL_DB_USERNAME}#${XL_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_DB_PASSWORD}#${XL_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_DB_MAX_POOL_SIZE}#${XL_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_URL}#${XL_REPORT_DB_URL}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_USERNAME}#${XL_REPORT_DB_USERNAME}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_PASSWORD}#${XL_REPORT_DB_PASSWORD}#g\" \\\n  -e \"s#\\${XL_REPORT_DB_MAX_POOL_SIZE}#${XL_REPORT_DB_MAX_POOL_SIZE}#g\" \\\n  -e \"s#\\${XL_METRICS_ENABLED}#${XL_METRICS_ENABLED}#g\" \\\n  -e \"s#\\${XLD_IN_PROCESS}#${XLD_IN_PROCESS}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_NAME}#${XLD_TASK_QUEUE_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#${XLD_TASK_QUEUE_IN_PROCESS_MAX_DISK_USAGE}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#${XLD_TASK_QUEUE_IN_PROCESS_SHUTDOWN_TIMEOUT}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#${XLD_TASK_QUEUE_DRIVER_CLASS_NAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_URL}#${XLD_TASK_QUEUE_URL}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_USERNAME}#${XLD_TASK_QUEUE_USERNAME}#g\" \\\n  -e \"s#\\${XLD_TASK_QUEUE_PASSWORD}#${XLD_TASK_QUEUE_PASSWORD}#g\" \\\n  -e \"s#\\${HOSTNAME_SUFFIX}#${HOSTNAME_SUFFIX}#g\" \\\n  -e \"s#\\${XL_LICENSE_KIND}#${XL_LICENSE_KIND}#g\" \\\n  -e \"s#\\${GENERATE_XL_CONFIG}#${GENERATE_XL_CONFIG}#g\" \\\n  -e \"s#\\${USE_IP_AS_HOSTNAME}#${USE_IP_AS_HOSTNAME}#g\" \\\n  -e \"s#\\${ENABLE_SATELLITE}#${ENABLE_SATELLITE}#g\" \\\n  -e \"s#\\${CENTRAL_CONFIG_ENCRYPT_KEY}#${CENTRAL_CONFIG_ENCRYPT_KEY}#g\" \\\n  -e \"s#\\${USE_CACHE}#${USE_CACHE}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_ID}#${OIDC_CLIENT_ID}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_SECRET}#${OIDC_CLIENT_SECRET}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}#g\" \\\n  -e \"s#\\${OIDC_ACCESS_TOKEN_SECRET_KEY}#${OIDC_ACCESS_TOKEN_SECRET_KEY}#g\" \\\n  ${APP_HOME}/central-conf/deploy-oidc.yaml.template \u003e ${APP_HOME}/centralConfiguration/deploy-oidc.yaml\nfi\n{{- end }}\n\n# copy central-conf files\ncd ${APP_HOME}/central-conf\necho \"... Copying default centralConfiguration from ${APP_HOME}/central-conf\"\nfor f in *; do\n  if [[ $f == *.template ]]; then\n    continue\n  fi\n  if [ -f ${APP_HOME}/centralConfiguration/$f ]; then\n    echo \"... Not copying $f because it already exists in the centralConfiguration directory\"\n  else\n    echo \"... Copying $f to the centralConfiguration directory\"\n    cp -R $f ${APP_HOME}/centralConfiguration/\n  fi\ndone\ncd ${APP_HOME}\n\nexec /opt/xebialabs/central-configuration-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "central-conf_deploy-oidc-yaml-template": {
                        "content": "deploy.security:\n  {{- if .Values.oidc.enabled }}\n  auth:\n    providers:\n      oidc:\n        clientId: \"${OIDC_CLIENT_ID}\"\n        clientSecret: \"${OIDC_CLIENT_SECRET}\"\n        {{- if .Values.oidc.clientAuthMethod }}\n        clientAuthMethod: {{ .Values.oidc.clientAuthMethod | quote }}\n        {{- end }}\n        {{- if .Values.oidc.clientAuthJwt.enable }}\n        clientAuthJwt:\n          jwsAlg: {{ .Values.oidc.clientAuthJwt.jwsAlg | quote }}\n          tokenKeyId: {{ .Values.oidc.clientAuthJwt.tokenKeyId | quote }}\n          {{- if .Values.oidc.clientAuthJwt.keyStore.enable }}\n          keyStore:\n            path: {{ .Values.oidc.clientAuthJwt.keyStore.path | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEYSTORE_PASSWORD}\"\n            type: {{ .Values.oidc.clientAuthJwt.keyStore.type | quote }}\n          {{- end }}\n          {{- if .Values.oidc.clientAuthJwt.key.enable }}\n          key:\n            alias: {{ .Values.oidc.clientAuthJwt.key.alias | quote }}\n            password: \"${OIDC_CLIENT_AUTH_JWT_KEY_PASSWORD}\"\n          {{- end }}\n        {{- end }}\n        issuer: {{ .Values.oidc.issuer | quote }}\n        keyRetrievalUri: {{ .Values.oidc.keyRetrievalUri | quote }}\n        accessTokenUri: {{ .Values.oidc.accessTokenUri | quote }}\n        userAuthorizationUri: {{ .Values.oidc.userAuthorizationUri | quote }}\n        logoutUri: {{ .Values.oidc.logoutUri | quote }}\n        redirectUri: {{ .Values.oidc.redirectUri | quote }}\n        postLogoutRedirectUri: {{ .Values.oidc.postLogoutRedirectUri | quote }}\n        rolesClaimName: {{ .Values.oidc.rolesClaimName | quote }}\n        userNameClaimName: {{ .Values.oidc.userNameClaimName | quote }}\n        {{- if .Values.oidc.scopes }}\n        scopes: {{ .Values.oidc.scopes }}\n        {{- end }}\n        {{- if .Values.oidc.idTokenJWSAlg }}\n        idTokenJWSAlg: {{ .Values.oidc.idTokenJWSAlg | quote }}\n        {{- end }}\n        {{- if .Values.oidc.accessToken.enable }}\n        access-token:\n          {{- if .Values.oidc.accessToken.issuer }}\n          issuer: {{ .Values.oidc.accessToken.issuer | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.audience }}\n          audience: {{ .Values.oidc.accessToken.audience | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.keyRetrievalUri }}\n          keyRetrievalUri: {{ .Values.oidc.accessToken.keyRetrievalUri | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.jwsAlg }}\n          jwsAlg: {{ .Values.oidc.accessToken.jwsAlg | quote }}\n          {{- end }}\n          {{- if .Values.oidc.accessToken.secretKey }}\n          secretKey: \"${OIDC_ACCESS_TOKEN_SECRET_KEY}\"\n          {{- end }}\n        {{- end }}\n        loginMethodDescription: {{ default \"External login (OpenID Connect)\" .Values.oidc.loginMethodDescription | quote }}\n        {{- if .Values.oidc.proxyHost }}\n        proxyHost: {{ .Values.oidc.proxyHost | quote }}\n        {{- end }}\n        {{- if .Values.oidc.proxyPort }}\n        proxyPort: {{ .Values.oidc.proxyPort | quote }}\n        {{- end }}\n  {{- end }}\n",
                        "mode": 432,
                        "path": "central-conf/deploy-oidc.yaml.template"
                      },
                      "central-conf_deploy-server-yaml-template": {
                        "content": "deploy.server:\n  bind-hostname: 0.0.0.0\n  bind-port: {{ .Values.master.containerPorts.deployPekko }}\n  license:\n    daysBeforeWarning: 10\n  {{- if .Values.oidc.enabled }}    \n  security:\n    auth:\n      provider: \"oidc\"\n  {{- end }}\npekko:\n  io:\n    dns:\n      resolver: \"${DNS_RESOLVER}\"\n  # loggers:\n  #  - \"org.apache.pekko.event.slf4j.Slf4jLogger\"\n  loglevel: \"INFO\"\n",
                        "mode": 432,
                        "path": "central-conf/deploy-server.yaml.template"
                      }
                    },
                    "containerPorts": {
                      "ccHttp": 8888,
                      "ccHttps": 8843
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.centralConfiguration.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "encryptKey": null,
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 20,
                      "probesReadinessTimeout": 20
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/central-configuration",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "migrateFromEmbedded": false,
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/tmp",
                        "/opt/xebialabs/central-configuration-server/centralConfiguration",
                        "/opt/xebialabs/central-configuration-server/conf",
                        "/opt/xebialabs/central-configuration-server/log"
                      ],
                      "enabled": false,
                      "existingClaim": "",
                      "paths": [],
                      "selector": {},
                      "single": false,
                      "size": "1Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "priorityClassName": "",
                    "replicaCount": 1,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "service": {
                      "annotations": {},
                      "clusterIP": "",
                      "externalIPs": [],
                      "externalTrafficPolicy": "Cluster",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "centralConfiguration"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "nodePorts": {
                        "ccHttp": "",
                        "ccHttps": ""
                      },
                      "portEnabled": true,
                      "portNames": {
                        "ccHttp": "deploy-http-cc",
                        "ccHttps": "deploy-https-cc"
                      },
                      "ports": {
                        "ccHttp": 8888,
                        "ccHttps": 8843
                      },
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "ClusterIP"
                    },
                    "sidecars": [],
                    "ssl": {
                      "enabled": false,
                      "keystore": {
                        "valueFrom": {
                          "secretKeyRef": {
                            "key": "keystore.{{ .Values.ssl.keystoreType }}",
                            "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                          }
                        }
                      },
                      "keystoreKeypassword": "changeme",
                      "keystorePassword": "changeme",
                      "keystoreType": "pkcs12"
                    },
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "centralConfiguration"
                    },
                    "terminationGracePeriodSeconds": 10,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "RollingUpdate"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r42"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.centralConfiguration.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.centralConfiguration.containerSecurityContext.runAsUser }}:{{ .Values.centralConfiguration.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "clusterDomain": "cluster.local",
                  "clusterMode": "full",
                  "commonAnnotations": {},
                  "commonLabels": {},
                  "external": {
                    "db": {
                      "enabled": false,
                      "main": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      },
                      "report": {
                        "maxPoolSize": "",
                        "password": null,
                        "url": "",
                        "username": null
                      }
                    },
                    "mq": {
                      "driverClassName": "",
                      "enabled": false,
                      "password": null,
                      "queueName": "",
                      "queueType": "classic",
                      "url": "",
                      "username": null
                    }
                  },
                  "externalCentralConfig": true,
                  "extraDeploy": [],
                  "fullnameOverride": "",
                  "generateXlConfig": true,
                  "global": {
                    "imagePullSecrets": [],
                    "imageRegistry": "",
                    "postgresql": {
                      "service": {
                        "ports": {
                          "postgresql": ""
                        }
                      }
                    },
                    "storageClass": ""
                  },
                  "haproxy-ingress": {
                    "controller": {
                      "extraVolumeMounts": [
                        {
                          "mountPath": "/etc/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/lib/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        },
                        {
                          "mountPath": "/var/run/haproxy",
                          "name": "empty-dir",
                          "subPath": "haproxy"
                        }
                      ],
                      "extraVolumes": [
                        {
                          "emptyDir": {},
                          "name": "empty-dir"
                        }
                      ],
                      "ingressClass": "haproxy-daid",
                      "legacySecurityContext": false,
                      "securityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "service": {
                        "type": "LoadBalancer"
                      }
                    },
                    "install": false
                  },
                  "hooks": {
                    "genSelfSigned": {
                      "configuration": {
                        "bin_gen-self-signed": {
                          "content": "#!/bin/bash\n\necho \"Generating deploy self-signed cert\"\nHOSTNAME=\"{{- include \"deploy.hostname\" . -}}\"\nSTOREPASS=\"{{- .Values.ssl.keystorePassword -}}\"\nKEYPASS=\"{{- .Values.ssl.keystoreKeypassword -}}\"\nKEYTYPE=\"{{- .Values.ssl.keystoreType -}}\"\nkeytool -genkey -keyalg RSA -alias dai-deploy -keystore conf/keystore.$KEYTYPE -validity 365 -keysize 2048 -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\" \\\n  -dname \"CN=$HOSTNAME,OU=,O=Digital.ai Deploy,L=,ST=,C=\" \\\n  -ext \"SAN=DNS:{{- include \"common.names.fullname\" . -}}.local\"\nkeytool -export -alias dai-deploy -keystore conf/keystore.$KEYTYPE -rfc -file conf/public.cert -storepass \"$STOREPASS\" -storetype \"$KEYTYPE\" -keypass \"$KEYPASS\"\n",
                          "mode": 493,
                          "path": "bin/gen-self-signed.sh"
                        },
                        "bin_install-self-signed": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.genSelfSigned.name \"context\" $ ) }}\"\nKEYSTORE_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/keystore.{{- .Values.ssl.keystoreType -}}\"\nCERT_FILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/public.cert\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$KEYSTORE_FILE_PATH \\\n    --from-file=$CERT_FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-self-signed.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": false,
                      "genCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/gen-self-signed.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-self-signed.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-self-signed"
                    },
                    "getLicense": {
                      "configuration": {
                        "bin_get-license": {
                          "content": "#!/bin/bash\n\necho \"Requesting unregistered license\"\nSERVER_PATH_PART=https://download.xebialabs.com\necho -e $(curl -X POST \"${SERVER_PATH_PART}/api/unregistered/xl-deploy\" | jq --raw-output .license) \u003e ${APP_HOME}/conf/deployit-license.lic\nfile_size=$(stat -c%s \"${APP_HOME}/conf/deployit-license.lic\")\nif [ \"$file_size\" -lt 10 ]; then\n  echo \"License file is NOT valid\"\n  exit 1\nfi\n",
                          "mode": 493,
                          "path": "bin/get-license.sh"
                        },
                        "bin_install-license": {
                          "content": "#!/bin/bash\n\nSECRET_NAME=\"{{ include \"common.tplvalues.render\" ( dict \"value\" $.Values.hooks.getLicense.name \"context\" $ ) }}\"\nFILE_PATH=\"/opt/xebialabs/xl-deploy-server/conf/deployit-license.lic\"\n\nif kubectl get secret \"$SECRET_NAME\" \u003e /dev/null 2\u003e\u00261; then\n  echo \"Secret '$SECRET_NAME' exists skipping creation.\"\nelse\n  kubectl create secret generic $SECRET_NAME \\\n    --from-file=$FILE_PATH \\\n    --dry-run=client \\\n    -o yaml | kubectl apply -f -\nfi\n",
                          "mode": 493,
                          "path": "bin/install-license.sh"
                        }
                      },
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "capabilities": {
                          "drop": [
                            "ALL"
                          ]
                        },
                        "enabled": true,
                        "readOnlyRootFilesystem": true,
                        "runAsNonRoot": true,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "deletePolicy": "before-hook-creation,hook-succeeded",
                      "enabled": true,
                      "getCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/get-license.sh"
                      ],
                      "image": {
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/kubectl",
                        "tag": "1.32.3-debian-12-r4"
                      },
                      "installCommand": [
                        "/opt/xebialabs/xl-deploy-server/bin/install-license.sh"
                      ],
                      "name": "{{ include \"common.names.fullname\" . }}-license"
                    }
                  },
                  "ingress": {
                    "annotations": null,
                    "enabled": false,
                    "extraHosts": [],
                    "extraPaths": [],
                    "extraRules": [],
                    "extraTls": [],
                    "hostname": "",
                    "ingressClassName": "",
                    "path": "/",
                    "pathType": "ImplementationSpecific",
                    "secrets": [],
                    "selfSigned": false,
                    "tls": false
                  },
                  "k8sSetup": {
                    "platform": "PlainK8s",
                    "validateValues": true
                  },
                  "keystore": {
                    "keystore": null,
                    "passphrase": null
                  },
                  "kubeVersion": "",
                  "license": null,
                  "licenseAcceptEula": false,
                  "master": {
                    "affinity": {},
                    "args": [
                      "--",
                      "/opt/xebialabs/xl-deploy-server/bin/run-in-operator.sh"
                    ],
                    "clusterNodeHostnameSuffix": ".{{ include \"deploy.names.master\" $ }}.{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.master.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.master.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.master.podServiceTemplate.overrideHostname .Values.master.podServiceTemplate.overrideHostnames }}\nallMasters=(\n{{- range $podNumber := untilStep 0 (int .Values.master.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $masterHostname := include \"deploy.masterHostname\" $newValues }}\n\"{{ $masterHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allMasters[$POD_NUMBER]})\necho \"Using master hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using master port: $SERVER_PORT\"\nexec /opt/xebialabs/xl-deploy-server/bin/run-in-container.sh $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      },
                      "node-conf_xl-deploy-conf-template": {
                        "content": "# The ${APP_HOME}/node-conf/xl-deploy.conf file provides node specific properties, which are then merged with the \n# ${APP_HOME}/conf/xl-deploy.conf file by the xl-platform when the instance is started.\n# The ${APP_HOME}/node-conf takes precedance over ${APP_HOME}/conf/xl-deploy.conf and this is specified in ${APP_HOME}/conf/xld-wrapper.conf.common\nxl {\n  server.hostname = ${HOSTNAME}${HOSTNAME_SUFFIX}\n  cluster.node {\n    id = ${XL_NODE_NAME}\n    hostname = ${XL_NODE_NAME}\n    clusterPort = 5531\n  }\n}\n",
                        "mode": 432,
                        "path": "node-conf/xl-deploy.conf.template"
                      }
                    },
                    "containerPorts": {
                      "deployClusterPekko": 25520,
                      "deployHttp": 4516,
                      "deployHttps": 4517,
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.master.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "forceUpgrade": true,
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/xl-deploy",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvm": {
                      "options": {
                        "networkaddress.cache.ttl": 30
                      }
                    },
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/xl-deploy-server/artifacts",
                        "/opt/xebialabs/xl-deploy-server/cache",
                        "/opt/xebialabs/xl-deploy-server/centralConfiguration",
                        "/opt/xebialabs/xl-deploy-server/conf",
                        "/opt/xebialabs/xl-deploy-server/driver/jdbc",
                        "/opt/xebialabs/xl-deploy-server/driver/mq",
                        "/opt/xebialabs/xl-deploy-server/export",
                        "/opt/xebialabs/xl-deploy-server/log",
                        "/opt/xebialabs/xl-deploy-server/node-conf",
                        "/opt/xebialabs/xl-deploy-server/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/xl-deploy-server/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "master"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32180
                      },
                      "overrideHostname": "{{ include \"deploy.names.master\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.master\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32180
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "lb": {
                        "annotations": {},
                        "clusterIP": "",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployHttp": "",
                          "deployHttps": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployHttp": "deploy-http",
                          "deployHttps": "deploy-https"
                        },
                        "ports": {
                          "deployHttp": 80,
                          "deployHttps": 443
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      },
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "master"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployClusterPekko": "",
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployClusterPekko": "cluster-pekko",
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployClusterPekko": 25520,
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "master"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r42"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.master.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.master.containerSecurityContext.runAsUser }}:{{ .Values.master.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "metrics": {
                    "enabled": false
                  },
                  "nameOverride": "",
                  "namespaceOverride": "",
                  "networkPolicy": {
                    "additionalRules": [],
                    "allowExternal": true,
                    "enabled": false
                  },
                  "nginx-ingress-controller": {
                    "defaultBackend": {
                      "image": {
                        "tag": "1.27.4-debian-12-r4"
                      }
                    },
                    "extraArgs": {
                      "ingress-class": "nginx-daid"
                    },
                    "image": {
                      "tag": "1.12.1-debian-12-r3"
                    },
                    "ingressClassResource": {
                      "controllerClass": "k8s.io/ingress-nginx-daid",
                      "name": "nginx-daid"
                    },
                    "install": false,
                    "replicaCount": 1,
                    "service": {
                      "type": "LoadBalancer"
                    }
                  },
                  "oidc": {
                    "accessToken": {
                      "audience": null,
                      "enable": false,
                      "issuer": null,
                      "jwsAlg": null,
                      "keyRetrievalUri": null,
                      "secretKey": null
                    },
                    "accessTokenUri": null,
                    "clientAuthJwt": {
                      "enable": false,
                      "jwsAlg": null,
                      "key": {
                        "alias": null,
                        "enable": false,
                        "password": null
                      },
                      "keyStore": {
                        "enable": false,
                        "password": null,
                        "path": null,
                        "type": null
                      },
                      "tokenKeyId": null
                    },
                    "clientAuthMethod": null,
                    "clientId": null,
                    "clientSecret": null,
                    "emailClaim": null,
                    "enabled": false,
                    "idTokenJWSAlg": null,
                    "issuer": null,
                    "keyRetrievalUri": null,
                    "loginMethodDescription": null,
                    "logoutUri": null,
                    "postLogoutRedirectUri": null,
                    "proxyHost": null,
                    "proxyPort": null,
                    "redirectUri": null,
                    "rolesClaimName": null,
                    "scopes": null,
                    "userAuthorizationUri": null,
                    "userNameClaimName": null
                  },
                  "postgresql": {
                    "auth": {
                      "enablePostgresUser": true,
                      "postgresPassword": "postgres",
                      "username": "postgres"
                    },
                    "hasReport": true,
                    "image": {
                      "tag": "16.3.0-debian-12-r23"
                    },
                    "install": true,
                    "primary": {
                      "configuration": "port = '5432'\nwal_level = 'replica'\nmax_wal_size = '400MB'\nmax_wal_senders = '16'\nwal_keep_size = '128MB'\nhot_standby = 'on'\nfsync = 'on'\nshared_preload_libraries = 'pgaudit'\npgaudit.log_catalog = 'off'\nlog_connections = 'false'\nlog_disconnections = 'false'\nlog_hostname = 'false'\nclient_min_messages = 'error'\nlisten_addresses = '*'\nmax_connections = 300\nshared_buffers = 80MB",
                      "initdb": {
                        "scriptsSecret": "{{ include \"postgresql.v1.primary.fullname\" . }}-deploy"
                      },
                      "persistence": {
                        "accessModes": [
                          "ReadWriteOnce"
                        ],
                        "enabled": true,
                        "existingClaim": "",
                        "size": "8Gi",
                        "storageClass": ""
                      },
                      "resourcesPreset": "medium",
                      "service": {
                        "ports": {
                          "postgresql": 5432
                        },
                        "type": "ClusterIP"
                      }
                    },
                    "serviceAccount": {
                      "create": true
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "rabbitmq": {
                    "auth": {
                      "existingErlangSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "password": "guest",
                      "username": "guest"
                    },
                    "clustering": {
                      "forceBoot": true
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "readOnlyRootFilesystem": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "extraConfiguration": "raft.wal_max_size_bytes = 1048576\n{{ if eq .Values.queueType \"quorum\" -}}\nquorum_queue.continuous_membership_reconciliation.enabled = true\nquorum_queue.continuous_membership_reconciliation.target_group_size = 3\nquorum_queue.continuous_membership_reconciliation.auto_remove = true\nquorum_queue.continuous_membership_reconciliation.interval = 600000\n{{- end }}\n",
                    "extraPlugins": "rabbitmq_jms_topic_exchange",
                    "image": {
                      "tag": "3.13.7-debian-12-r5"
                    },
                    "install": true,
                    "loadDefinition": {
                      "enabled": true,
                      "existingSecret": "{{ include \"common.names.fullname\" . }}-deploy",
                      "file": "/app/deploy_load_definition.json"
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "enabled": true,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "queueType": "classic",
                    "replicaCount": 3,
                    "service": {
                      "type": "ClusterIP"
                    },
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": true,
                      "image": {
                        "tag": "12-debian-12-r42"
                      }
                    }
                  },
                  "rbac": {
                    "create": true
                  },
                  "route": {
                    "annotations": {
                      "haproxy.router.openshift.io/cookie_name": "SESSION_XLD",
                      "haproxy.router.openshift.io/disable_cookies": "false",
                      "haproxy.router.openshift.io/rewrite-target": "/"
                    },
                    "enabled": false,
                    "hostname": "",
                    "path": "/",
                    "tls": {
                      "caCertificate": "",
                      "certificate": "",
                      "destinationCACertificate": "",
                      "enabled": false,
                      "insecureEdgeTerminationPolicy": "",
                      "key": "",
                      "secretName": "",
                      "selfSigned": false,
                      "termination": "edge"
                    }
                  },
                  "satellite": {
                    "enabled": false
                  },
                  "serviceAccount": {
                    "annotations": {},
                    "automountServiceAccountToken": true,
                    "create": true,
                    "name": ""
                  },
                  "ssl": {
                    "enabled": false,
                    "keystore": {
                      "valueFrom": {
                        "secretKeyRef": {
                          "key": "keystore.{{ .Values.ssl.keystoreType }}",
                          "name": "{{ include \"common.tplvalues.render\" ( dict \"value\" .Values.hooks.genSelfSigned.name \"context\" $ ) }}"
                        }
                      }
                    },
                    "keystoreKeypassword": "changeme",
                    "keystorePassword": "changeme",
                    "keystoreType": "pkcs12"
                  },
                  "truststore": {
                    "params": "{{- if .Values.truststore.truststore }} -Djavax.net.ssl.trustStore=$(TRUSTSTORE) -Djavax.net.ssl.trustStorePassword=$(TRUSTSTORE_PASSWORD) -Djavax.net.ssl.trustStoreType=$(TRUSTSTORE_TYPE){{- end }}",
                    "password": null,
                    "truststore": {},
                    "type": "pkcs12"
                  },
                  "usaCache": false,
                  "worker": {
                    "affinity": {},
                    "args": "- --\n- /opt/xebialabs/deploy-task-engine/bin/run-in-operator.sh",
                    "command": [
                      "/opt/xebialabs/tini"
                    ],
                    "configuration": {
                      "bin_run-in-operator-sh": {
                        "content": "#!/bin/bash\n\n{{- if .Values.worker.podServiceTemplate.enabled }}\nPOD_NUMBER=$(echo $POD_NAME | grep -Eo \"[0-9]+$\")\n{{- if contains .Values.worker.podServiceTemplate.serviceMode \"SingleHostname;MultiService\" }}\nexport SERVER_PORT=$(echo $SERVER_PORT+$POD_NUMBER | bc)\n{{- end }}\n{{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\nallWorkers=(\n{{- range $podNumber := untilStep 0 (int .Values.worker.replicaCount) 1 }}\n{{- $newValues := merge (dict \"podNumber\" $podNumber) $ }}\n{{- $workerHostname := include \"deploy.workerHostname\" $newValues }}\n\"{{ $workerHostname }}\"\n{{- end }}\n)\nexport OVERRIDE_HOSTNAME=$(echo ${allWorkers[$POD_NUMBER]})\necho \"Using worker hostname: $OVERRIDE_HOSTNAME\"\n{{- end }}\n{{- end }}\necho \"Using worker port: $SERVER_PORT\"\nexec /opt/xebialabs/deploy-task-engine/bin/run-in-container.sh \\\n  -name \"$POD_NAME\" \\\n  {{- if .Values.worker.podServiceTemplate.enabled }}\n  {{- if or .Values.worker.podServiceTemplate.overrideHostname .Values.worker.podServiceTemplate.overrideHostnames }}\n  -hostname \"$OVERRIDE_HOSTNAME$HOSTNAME_SUFFIX\" \\\n  {{- else }}\n  -hostname \"$POD_NAME$HOSTNAME_SUFFIX\" \\\n  {{- end }}\n  {{- end }}\n  {{- include \"deploy.workerMasters\" $ }}\n  -api \"{{ include \"deploy.masterLbUrl\" . }}\" \\\n  $@\n",
                        "mode": 493,
                        "path": "bin/run-in-operator.sh"
                      }
                    },
                    "containerPorts": {
                      "deployJmxExporter": 9100,
                      "deployPekko": 8180
                    },
                    "containerSecurityContext": {
                      "allowPrivilegeEscalation": false,
                      "capabilities": {
                        "drop": [
                          "ALL"
                        ]
                      },
                      "enabled": true,
                      "readOnlyRootFilesystem": true,
                      "runAsNonRoot": true,
                      "seccompProfile": {
                        "type": "RuntimeDefault"
                      }
                    },
                    "debugMode": {
                      "enabled": false,
                      "remoteJvmParams": "{{- if .Values.worker.debugMode.enabled }} -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8001{{- end }}"
                    },
                    "defaultInitContainers": {
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      }
                    },
                    "diagnosticMode": {
                      "args": [
                        "--",
                        "sleep",
                        "infinity"
                      ],
                      "command": [
                        "/opt/xebialabs/tini"
                      ],
                      "enabled": false
                    },
                    "dnsConfig": {},
                    "dnsPolicy": "",
                    "extraConfiguration": {},
                    "extraContainerPorts": [],
                    "extraEnvVars": [],
                    "extraEnvVarsCM": "",
                    "extraEnvVarsSecret": "",
                    "extraSecrets": {},
                    "extraSecretsPrependReleaseName": false,
                    "extraVolumeMounts": [],
                    "extraVolumes": [],
                    "health": {
                      "enabled": true,
                      "periodScans": 10,
                      "probeFailureThreshold": 12,
                      "probesLivenessTimeout": 60,
                      "probesReadinessTimeout": 60
                    },
                    "hostAliases": [],
                    "image": {
                      "pullPolicy": "IfNotPresent",
                      "pullSecrets": [],
                      "registry": "docker.io",
                      "repository": "xebialabsunsupported/deploy-task-engine",
                      "tag": "{{ .Chart.AppVersion }}"
                    },
                    "initContainers": [],
                    "jvmArgs": "",
                    "lifecycleHooks": {},
                    "logback": {
                      "globalLoggingLevel": "info",
                      "scanEnabled": true,
                      "scanPeriod": "30 seconds"
                    },
                    "nodeAffinityPreset": {
                      "key": "",
                      "type": "",
                      "values": []
                    },
                    "nodeSelector": {},
                    "overrideName": "",
                    "pdb": {
                      "create": false,
                      "maxUnavailable": "",
                      "minAvailable": 1
                    },
                    "persistence": {
                      "accessModes": [
                        "ReadWriteOnce"
                      ],
                      "annotations": {
                        "helm.sh/resource-policy": "keep"
                      },
                      "emptyDirPaths": [
                        "/opt/xebialabs/deploy-task-engine/cache",
                        "/opt/xebialabs/deploy-task-engine/conf",
                        "/opt/xebialabs/deploy-task-engine/driver/jdbc",
                        "/opt/xebialabs/deploy-task-engine/driver/mq",
                        "/opt/xebialabs/deploy-task-engine/export",
                        "/opt/xebialabs/deploy-task-engine/log",
                        "/opt/xebialabs/deploy-task-engine/node-conf",
                        "/opt/xebialabs/deploy-task-engine/plugins",
                        "/tmp"
                      ],
                      "enabled": true,
                      "existingClaim": "",
                      "paths": [
                        "/opt/xebialabs/deploy-task-engine/work"
                      ],
                      "selector": {},
                      "single": false,
                      "size": "8Gi",
                      "storageClass": ""
                    },
                    "podAffinityPreset": "",
                    "podAnnotations": {},
                    "podAntiAffinityPreset": "soft",
                    "podLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "podManagementPolicy": "OrderedReady",
                    "podSecurityContext": {
                      "enabled": true,
                      "fsGroup": 10001,
                      "runAsUser": 10001
                    },
                    "podServiceTemplate": {
                      "annotations": {},
                      "clusterIPs": [],
                      "enabled": false,
                      "externalIPs": [],
                      "externalTrafficPolicy": "Local",
                      "extraPorts": [],
                      "labels": {
                        "app.kubernetes.io/component": "worker"
                      },
                      "loadBalancerIP": "",
                      "loadBalancerSourceRanges": [],
                      "name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}",
                      "nodePorts": {
                        "deployPekko": 32185
                      },
                      "overrideHostname": "{{ include \"deploy.names.worker\" . }}-{{ .podNumber }}",
                      "overrideHostnameSuffix": ".{{ include \"common.names.namespace\" . }}.svc.cluster.local",
                      "overrideHostnames": [],
                      "podLabels": {
                        "statefulset.kubernetes.io/pod-name": "{{ printf \"%s-%d\" (include \"deploy.names.worker\" $) .podNumber }}"
                      },
                      "portEnabled": true,
                      "portNames": {
                        "deployPekko": "deploy-pekko"
                      },
                      "ports": {
                        "deployPekko": 32185
                      },
                      "publishNotReadyAddresses": true,
                      "serviceMode": "MultiService",
                      "sessionAffinity": "None",
                      "sessionAffinityConfig": {},
                      "type": "NodePort"
                    },
                    "priorityClassName": "",
                    "replicaCount": 3,
                    "resources": {},
                    "resourcesPreset": "micro",
                    "schedulerName": "",
                    "services": {
                      "pekko": {
                        "annotations": {},
                        "clusterIP": "None",
                        "externalIPs": [],
                        "externalTrafficPolicy": "Cluster",
                        "extraPorts": [],
                        "labels": {
                          "app.kubernetes.io/component": "worker"
                        },
                        "loadBalancerIP": "",
                        "loadBalancerSourceRanges": [],
                        "nodePorts": {
                          "deployPekko": ""
                        },
                        "portEnabled": true,
                        "portNames": {
                          "deployJmxExporter": "deploy-jmx",
                          "deployPekko": "deploy-pekko"
                        },
                        "ports": {
                          "deployPekko": 8180
                        },
                        "publishNotReadyAddresses": true,
                        "sessionAffinity": "None",
                        "sessionAffinityConfig": {},
                        "type": "ClusterIP"
                      }
                    },
                    "sidecars": [],
                    "statefulsetAnnotations": {},
                    "statefulsetLabels": {
                      "app.kubernetes.io/component": "worker"
                    },
                    "terminationGracePeriodSeconds": 90,
                    "tolerations": [],
                    "topologySpreadConstraints": [],
                    "updateStrategy": {
                      "type": "OnDelete"
                    },
                    "useIpAsHostname": false,
                    "volumePermissions": {
                      "containerSecurityContext": {
                        "allowPrivilegeEscalation": false,
                        "readOnlyRootFilesystem": true,
                        "runAsGroup": 0,
                        "runAsNonRoot": false,
                        "runAsUser": 0,
                        "seccompProfile": {
                          "type": "RuntimeDefault"
                        }
                      },
                      "enabled": false,
                      "image": {
                        "digest": "",
                        "pullPolicy": "IfNotPresent",
                        "pullSecrets": [],
                        "registry": "docker.io",
                        "repository": "bitnami/os-shell",
                        "tag": "12-debian-12-r42"
                      },
                      "resources": {
                        "limits": {
                          "cpu": "150m",
                          "ephemeral-storage": "2Gi",
                          "memory": "192Mi"
                        },
                        "requests": {
                          "cpu": "100m",
                          "ephemeral-storage": "50Mi",
                          "memory": "128Mi"
                        }
                      },
                      "script": "#!/bin/bash\n\ndeclare -a paths=( {{ range $path := .Values.worker.persistence.paths }} \"{{ $path }}\"{{ end }} )\nfor path in \"${paths[@]}\"; do\n  echo \"Changing ownership to {{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }} for ${path}\"\n  chown \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\" \"${path}\"\n  find \"${path}\" -mindepth 1 -maxdepth 1 -not -name \".snapshot\" -not -name \"lost+found\" | \\\n    xargs -r chown -R \"{{ .Values.worker.containerSecurityContext.runAsUser }}:{{ .Values.worker.podSecurityContext.fsGroup }}\"\ndone\n"
                    }
                  },
                  "xldInProcess": false
                }
              }
            ]
          alm-examples-metadata: |-
            {

              "daid-min": {
                "description": "Minimal configuration for the Digital.ai Deploy operator with embedded Postgresql and RabbitMQ and disabled route setup"
              },
              "daid-placeholders": {
                "description": "Configuration for the Digital.ai Deploy operator with placeholders to set. Set at least mandatory placeholders, others that are not set delete"
              },
              "digitalaideploy-sample": {
                "description": "Sample configuration with all default values"
              },
            }
          capabilities: Basic Install
          categories: Integration & Delivery
          containerImage: 'docker.io/xebialabs/deploy-operator@sha256:2f79f3ed817aa7ecd6a090e72f057ea341b4c1caad9cb83a7de6c102afb5f71d '
          createdAt: "2025-04-08T15:23:42Z"
          description: Digital.ai Deploy enables organizations to achieve fast, secure,
            and reliable deployments to hybrid infrastructure — including containers,
            private and public clouds, middleware, and mainframe.
          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"
          operators.operatorframework.io/builder: operator-sdk-v1.39.2
          operators.operatorframework.io/project_layout: helm.sdk.operatorframework.io/v1
          repository: https://github.com/digital-ai/deploy-helm-chart
          support: Digital.ai
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: DigitalaiDeploy
            name: digitalaideploys.xld.digital.ai
            version: v1alpha1
        description: "Digital.ai Deploy enables organizations to achieve fast, secure,
          and reliable deployments to hybrid infrastructure — including containers,
          private and public clouds, middleware, and mainframe.\n\n## About this Operator\n\nDigital.ai
          Deploy operator is based on helm chart that is available from [here](https://github.com/digital-ai/deploy-helm-chart).\nThe
          operator includes subcharts which are dependencies for the Deploy containers
          to run successfully. \nNginx Ingress and Haproxy ingress are disabled and
          not used with installations on the Openshift (and the images are not used
          in the installation)\n\n### Subcharts include:\n\n- [PostgresSQL](https://github.com/bitnami/charts/tree/main/bitnami/postgresql)\n-
          [RabbitMQ](https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq)\n-
          [Nginx Ingress controller](https://github.com/bitnami/charts/tree/main/bitnami/nginx-ingress-controller)\n-
          [Haproxy Ingress controller](https://github.com/jcmoraisjr/haproxy-ingress/)\n\n##
          Installation\n\nThe installation can be done using the sample configuration
          provided below. Please note that this is a minimal configuration and it's
          not recommended for production use.\nThis configuration uses embedded Postgresql
          and RabbitMQ.\n\n```yaml\napiVersion: xld.digital.ai/v1alpha1\nkind: DigitalaiDeploy\nmetadata:\n
          \ name: daid-min\nspec:\n  k8sSetup:\n    platform: Openshift\n  auth:\n
          \   adminPassword: 'admin'\n  licenseAcceptEula: true\n  keystore:\n    passphrase:
          'test1234'\n    keystore: 'zs7OzgAAAAIAAAABAAAAAwAWZGVwbG95aXQtcGFzc3N3b3JkLWtleQAAAY66C46srO0ABXNyADNjb20uc3VuLmNyeXB0by5wcm92aWRlci5TZWFsZWRPYmplY3RGb3JLZXlQcm90ZWN0b3LNV8pZ5zC7UwIAAHhyABlqYXZheC5jcnlwdG8uU2VhbGVkT2JqZWN0PjY9psO3VHACAARbAA1lbmNvZGVkUGFyYW1zdAACW0JbABBlbmNyeXB0ZWRDb250ZW50cQB+AAJMAAlwYXJhbXNBbGd0ABJMamF2YS9sYW5nL1N0cmluZztMAAdzZWFsQWxncQB+AAN4cHVyAAJbQqzzF/gGCFTgAgAAeHAAAAARMA8ECPqEw2Wp+c6yAgMDDUB1cQB+AAUAAACQFrl6s2pnsB+GJD8vlN3Y0SItmbtfPy6n2A5qREEJWWLN9OYLu7BokScBMyFChFjIhQGwCpjMP4j+VLCgpW6GKREmYHQgKjWqWn7A+DMF9eT68ygZAD+ceIZB5buvsGM2LCYzyHJcmtujv+hpqevoTgOKKMd4U3wVV96n4B5QbkVXHYtGZWbWxk5gCHLoWhV5dAAWUEJFV2l0aE1ENUFuZFRyaXBsZURFU3QAFlBCRVdpdGhNRDVBbmRUcmlwbGVERVP+nQgVx6wurZB9hBxaIkk/6EEAPQ=='\n
          \ hooks:\n    getLicense:\n      enabled: true\n  centralConfiguration:\n
          \   replicaCount: 1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  master:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  worker:\n
          \   replicaCount: 1\n    persistence:\n      storageClass: ''\n      size:
          1Gi\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n  route:\n
          \   enabled: false\n    annotations:\n      haproxy.router.openshift.io/cookie_name:
          SESSION_XLD\n      haproxy.router.openshift.io/disable_cookies: \"false\"\n
          \     haproxy.router.openshift.io/rewrite-target: /\n    hostname: '<mandatory-deploy-hostname>'\n
          \   path: /\n    tls:\n      enabled: true\n      termination: edge\n  postgresql:\n
          \   install: true\n    primary:\n      persistence:\n        size: 1Gi\n
          \       storageClass: ''\n      resourcesPreset: \"medium\"\n      podSecurityContext:\n
          \       enabled: false\n      containerSecurityContext:\n        enabled:
          false\n    volumePermissions:\n      enabled: false\n  rabbitmq:\n    install:
          true\n    persistence:\n      size: 1Gi\n      storageClass: ''\n    replicaCount:
          1\n    podSecurityContext:\n      enabled: false\n    containerSecurityContext:\n
          \     enabled: false\n    volumePermissions:\n      enabled: false\n```\n\n####
          Configuration Details\n\nThe sample configuration uses:\n\n- Autogenerated
          limited license\n- Simple administrator initial password\n- Default keystore
          setup\n- Only one replica is set for all pods\n- All Pods are missing resource
          limit setup\n- Default storage class and minimal size for persistent storage\n-
          Embedded PostgreSQL for DB management\n- Embedded RabbitMQ for message queue
          management\n\n### Security Configuration Details\n\n- `podSecurityContext/containerSecurityContext`
          - that disables the use of specific UIDs or GIDs, so the IDs can be assigned
          from the defined spans (for example from restricted SCC);\n- `volumePermissions.enabled:
          false` - disables automatic corrections of the mounted folders.\n\n## Customize
          Your Configuration\n\nConfigurations can be further personalized. Here are
          some areas you might want to consider:\n\n- **External DB:** For avoiding
          uncertified container images required by the subcharts, refer to these [instructions
          for setting up an external DB](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-db-migration.html).\n-
          **External Message Queue:** To set up an external message queue, follow
          this [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-external-mq-migration.html).\n-
          **Custom License:** To apply a custom license, refer to this [process](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-license-update.html).\n-
          **Custom Configuration:** For modifying the configuration files, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-customize.html).\n-
          **Truststore Setup:** For modifying default truststore for Deploy, use this
          [guide](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-setup-truststore.html)\n-
          **Plugin Management:** Managing plugins can be done using the following
          methods:\n    - [Plugin Management using XL CLI](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-plugin-management.html)\n
          \   - [Managing Plugins Offline for Kubernetes Environment](https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-deploy-offline-plugin-management.html)"
        displayName: Digital.ai Deploy
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - digitalai
        - digital.ai
        - deploy
        - devops
        links:
        - name: Digital.ai Deploy
          url: https://digital.ai/products/deploy/
        - name: Digital.ai Deploy Documentation
          url: https://docs.digital.ai/bundle/devops-deploy-version-v.24.1/page/deploy/operator/xl-op-before-you-begin.html
        - name: Digital.ai Deploy Helm Chart
          url: https://github.com/digital-ai/deploy-helm-chart
        maintainers:
        - email: support@digital.ai
          name: support
        maturity: alpha
        minKubeVersion: 1.23.0
        provider:
          name: Digital.ai
          url: https://digital.ai
        relatedImages:
        - docker.io/xebialabs/central-configuration@sha256:db9f4109fa84c50d234e4b6efdc1ca9997e10099ddaeaf83edfd27a0db9b4909
        - docker.io/xebialabs/deploy-operator@sha256:2f79f3ed817aa7ecd6a090e72f057ea341b4c1caad9cb83a7de6c102afb5f71d
        - docker.io/xebialabs/deploy-task-engine@sha256:94f9b8aaf73a5963902c4093837bb2990ef27cdf2d0f85c8271113b4edc60c51
        - docker.io/xebialabs/xl-deploy@sha256:0538a992513564a650a8327b82872ec908d9c59491b1f27b0c29725c355a2c47
        - registry.connect.redhat.com/digital-ai/deploy-operator@sha256:06cd12493818c444a53b629b055dfcb2d7a040d5bb2c0bb266aa8508afa53333
        version: 24.3.6
      entries:
      - name: digitalai-deploy-operator.v24.3.6
        version: 24.3.6
      - name: digitalai-deploy-operator.v24.3.5
        version: 24.3.5
      name: stable-v24.3
    defaultChannel: stable-v24.3
    packageName: digitalai-deploy-operator
    provider:
      name: Digital.ai
      url: https://digital.ai
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: stolostron-engine
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: stolostron-engine.v0.8.2
      currentCSVDesc:
        annotations:
          alm-examples: '[{"apiVersion": "multicluster.openshift.io/v1", "kind": "MultiClusterEngine",
            "metadata": {"name": "multiclusterengine"}, "spec": {}}]'
          capabilities: Seamless Upgrades
          categories: Integration & Delivery
          certified: "false"
          containerImage: quay.io/stolostron/backplane-operator@sha256:2b70bad016999d53d7d27b00f74e8dca3b9edfa8f0c1bf8906cb4ed19abbb0d9
          createdAt: "2025-11-05T18:48:44Z"
          description: Foundational components for central management of multiple
            OpenShift Container Platform and Kubernetes clusters
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=0.8.0 <0.8.2'
          operatorframework.io/initialization-resource: '{"apiVersion":"multicluster.openshift.io/v1",
            "kind":"MultiClusterEngine","metadata":{"name":"engine"},"spec": {}}'
          operatorframework.io/suggested-namespace: stolostron-engine
          operators.openshift.io/infrastructure-features: '["disconnected", "proxy-aware",
            "fips"]'
          repository: https://github.com/stolostron/stolostron
          support: Stolostron Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              MultiClusterEngine defines the configuration for an instance
              of a multicluster engine, a central point providing the foundational components for managing multiple Kubernetes-based clusters. The deployment of the multicluster engine components is
              determined based on the configuration that is defined in this resource.
            displayName: MultiCluster Engine
            kind: MultiClusterEngine
            name: multiclusterengines.multicluster.openshift.io
            version: v1
        description: 'Stolostron Engine provides the foundational components that
          are necessary for the centralized management of multiple Kubernetes-based
          clusters across data centers, public clouds, and private clouds. You can
          use the engine to create Red Hat OpenShift Container Platform clusters on
          selected providers, or import existing Kubernetes-based clusters. After
          the clusters are managed, you can use the APIs that are provided by the
          engine to distribute configuration based on placement policy. Placement
          policy is a significant part of creating sophisticated multicluster management
          applications because you can select the applicable clusters. '
        displayName: Stolostron Engine
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: false
          type: AllNamespaces
        keywords:
        - multiclusterengine
        links:
        - name: Documentation
          url: https://github.com/stolostron/stolostron
        maintainers:
        - email: acm-contact@redhat.com
          name: Red Hat
        maturity: pre-release
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/stolostron/cluster-proxy-addon@sha256:674abd3cf9b3b953a4103d5c1ced32d65e70e17fc200a63c7cc65bcfb4e662c4
        - quay.io/stolostron/assisted-image-service@sha256:9e89eeca50074fb09989a0f483c5fa5d9ab227c33a9dca54693959c9d70de8f4
        - quay.io/stolostron/cluster-api-aws-controller@sha256:22a57cf5b74d0692025f0b0f57c5f28f8b492ea13295e9101b63f57766ffff38
        - quay.io/community-operator-pipeline-prod/stolostron-engine@sha256:01f5bdd558b429c535e409128dc1132d1a420eae5b61b11ccc903b89604a1516
        - quay.io/stolostron/assisted-service@sha256:b77884b64bfb748936ac8aa3cc9238d385906bbc242d044bd02f7736a459c3cc
        - quay.io/stolostron/registration-operator@sha256:274482973bfc6645da56f3a1fad0f49972dd197282fb067247269a4c196845c2
        - quay.io/stolostron/ip-address-manager@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/multicloud-manager@sha256:2f8f1cb804a3c8ccfd695c873bc77c9e5b8c295f299465b1a10b01ae6fbc79f7
        - quay.io/stolostron/assisted-installer-agent@sha256:a9b31ab5e41986ecf464613d285e9bd7c5518b94e238f6da5c8d8fabd03742a6
        - quay.io/stolostron/discovery-operator@sha256:e6eb524c1208ab40cb0b5201a3ba4135330de91f918a76ccc3ac3693d6851122
        - quay.io/stolostron/ose_cluster_api_rhel9@sha256:5bdd5905d5a6c6a611df6bf0aa0caf22eb768c938b52ae6a733ed5277c6e1c22
        - quay.io/stolostron/backplane-operator@sha256:2b70bad016999d53d7d27b00f74e8dca3b9edfa8f0c1bf8906cb4ed19abbb0d9
        - quay.io/stolostron/hypershift-operator@sha256:cc84043bbe37bfcb5aabc8d31b29523231fb94488d6d8692f5de5acf137c7534
        - quay.io/stolostron/foundation-e2e@sha256:b5502848bee71b7fb9f4b1a54f00ccbdf77a9ecbb5e3e7bfad815057f2c55e2f
        - quay.io/stolostron/cluster-api-provider-azure@sha256:f6e780adc1bf3fe64303fcb8c5d080ab639e62c62d0577a1bbae5b5f5bfa393d
        - quay.io/stolostron/ose_aws_cluster_api_controllers_rhel9@sha256:5bdd5905d5a6c6a611df6bf0aa0caf22eb768c938b52ae6a733ed5277c6e1c22
        - quay.io/stolostron/clusterclaims-controller@sha256:8a3945e3127328e6f20fab5e250f320e27c0f517e564838c7bb83a50b59ac019
        - quay.io/stolostron/helloworld@sha256:a790795409f6e781f506b6a63f39f7d344f01efa30c3de87b1727dc2010d5bbf
        - quay.io/stolostron/backplane-must-gather@sha256:4b7fc3b3e8d9e91e76863074e523a1b15a0be50c08d56babd0a2c944101203d1
        - quay.io/stolostron/discovery-testserver@sha256:fea15ba83dd90d4f7b71fa248319cd902b967e8e140ab7b25090c6459f1b77e1
        - quay.io/stolostron/assisted-service-el8@sha256:0a20fd360929b2845a0e331d994000fa65841091fc3a0ebfa0b77368fa948872
        - quay.io/stolostron/aws-encryption-provider@sha256:83f11e28004fcbb31d7ec6c34ef2d2ec7dd8fc175c5e0135f6ace9894c65bfd0
        - quay.io/stolostron/provider-credential-controller@sha256:b01347aee12c2b443930e9e46e163c09f4848556eae2cd0242d721527bfabe60
        - quay.io/stolostron/cluster-api-provider-openshift-assisted-control-plane@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/console-mce@sha256:12c11381c1fa9c4e60990b4609ffcecd511597cc40fadd264c62637bfdd6b599
        - quay.io/stolostron/addon-manager@sha256:caf5ffd4eca56c5741e638f800964d3da4ff4dd9fd01ac991a78462e6a010220
        - quay.io/stolostron/placement@sha256:770bdc64368310e1b726ed5afdab360e0b826baa6b0f49115eb525a1d5f2bedf
        - quay.io/stolostron/managedcluster-import-controller@sha256:cc01dd7b7161196c7b9159cad19b5cd18a1bde03ad5e48b2ca94321931b5bf7e
        - quay.io/stolostron/discovery-operator-tests@sha256:12617e4bef1b742b061f9a3223fcf8e9458b817467f0d551c421d14e5dab3111
        - quay.io/stolostron/cluster-api@sha256:7a04ac4e5bdaf29498af75b2b7c4ff19cb6223f2076c9373a3a955553243ddda
        - quay.io/stolostron/image-based-install-operator@sha256:e579d282460f48d59ee3078dad8e10930695c4f0f00c83a00b7703c82c273684
        - quay.io/stolostron/managed-serviceaccount@sha256:cefa8932e31bad17ed0c7ee739f024dd94681887c704ca8275c44c710cb4b19a
        - quay.io/stolostron/managed-serviceaccount-e2e@sha256:e983d2cd7f240dbbe47612055185873ffa63e5ac34083732557cdf2c20bc8a1a
        - quay.io/stolostron/helloprow-go@sha256:e055ab3773a248c22dbde9847a3289e8512ccc85c6e9015544fc4f59d14b9cad
        - quay.io/stolostron/work@sha256:7ae1d6b4cca055505a227f7ca8f4438490731de572a5bd73c9d24a63c8a0771d
        - quay.io/stolostron/clusterlifecycle-state-metrics@sha256:f50790d626b67ba32b2e8f47ba75d6895a54a24c7e27ede016f449aca3c05e3f
        - quay.io/stolostron/hypershift-addon-operator@sha256:1e4b94d0aa779fb83ab936c53deb6998d0e711328beb7e75ca987681d5e38095
        - quay.io/stolostron/assisted-installer@sha256:7a775fbcde9e6774769e1272bf4f293cbf0158d8ccddd93083611501b638f242
        - quay.io/stolostron/cluster-api-provider-kubevirt@sha256:44f8bb72b975456d4151a88a560fc525ad6f4da7968a38e94a86b6dd77d3c543
        - quay.io/stolostron/assisted-installer-controller@sha256:2d28d51a93ecfddb0499fb4e398f11b42a5e47db5fc4aa5d1648408016b77dff
        - quay.io/stolostron/apiserver-network-proxy@sha256:dc74c7c67ca851f50b83d7a03f91d028214fd8a941f12edd4411b860dc7b763d
        - quay.io/stolostron/cluster-image-set-controller@sha256:2cea7a3dadb3f58671411ef110de3c276edd99e9ad5f794fb492cdbd89cae676
        - quay.io/stolostron/cluster-proxy@sha256:1fc3e70e679a052d4fe1a50f268e6b3ef5a8fc17102df2edc5e38ba714aa194a
        - quay.io/stolostron/hive@sha256:86ff94d3e7c174ac4d6818183c66791edc7638965dd09e2d41172609c81f451f
        - quay.io/stolostron/hypershift-addon-operator-canary-test@sha256:789b63b893f7efc7a5308d0771d42f38c8eb78db3efbe67ee210ca89ba456841
        - quay.io/stolostron/cluster-api-provider-agent@sha256:e2b52112f6ae5f16b8349cb80b244c739e5ac1bd41872d08379698a04c78a0d8
        - quay.io/stolostron/cluster-curator-controller@sha256:c97ad90fd198b234301b367bc48c2b690562711f3f0ecfa14388169b28f7b424
        - quay.io/stolostron/kube-rbac-proxy-mce@sha256:365124bd4e035bb8b7b6b2c6bbb861f69a25a5217b03e8d120cd717e9fe18822
        - quay.io/stolostron/cluster-api-provider-openshift-assisted-bootstrap@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/backplane-operator-test@sha256:c9032e5453a8a5e293a6360e40bdfc3734f949c1fb6269a78844d0b4e225960b
        - quay.io/stolostron/postgresql-12-centos7@sha256:94727d70e0afbf4e167e078744f3a10ac9d82edc553d57b0ecbb5443264f07e1
        - quay.io/stolostron/ose-baremetal-cluster-api-controllers-rhel9@sha256:6f06170c1684fdd234ef8edbb65b73b47affbec609800493d427d5169b7dfe22
        - quay.io/stolostron/registration@sha256:34f4b9682e163947af8192b95a47534afb16453055a0fb6772bc3b1f4c8bf6b6
        version: 0.8.2
      entries:
      - name: stolostron-engine.v0.8.2
        version: 0.8.2
      - name: stolostron-engine.v0.8.1
        version: 0.8.1
      - name: stolostron-engine.v0.8.0
        version: 0.8.0
      name: community-0.8
    defaultChannel: community-0.8
    packageName: stolostron-engine
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: metallb-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: metallb-operator.v4.20.0-202512081818
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRConfiguration",
                "metadata": {
                  "name": "basic",
                  "namespace": "frr-k8s-system"
                },
                "spec": {
                  "bgp": {
                    "routers": [
                      {
                        "asn": 64512,
                        "neighbors": [
                          {
                            "address": "172.30.0.3",
                            "asn": 64512,
                            "port": 180,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            },
                            "toReceive": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          }
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRConfiguration",
                "metadata": {
                  "name": "two-neighs",
                  "namespace": "frr-k8s-system"
                },
                "spec": {
                  "bgp": {
                    "routers": [
                      {
                        "asn": 64512,
                        "neighbors": [
                          {
                            "address": "172.30.0.3",
                            "asn": 4200000000,
                            "ebgpMultiHop": true,
                            "port": 180,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          },
                          {
                            "address": "172.18.0.6",
                            "asn": 4200000000,
                            "port": 179,
                            "toAdvertise": {
                              "allowed": {
                                "prefixes": [
                                  "192.168.2.0/24"
                                ]
                              }
                            }
                          }
                        ],
                        "prefixes": [
                          "192.168.2.0/24",
                          "192.169.2.0/24"
                        ]
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRConfiguration",
                "metadata": {
                  "name": "two-routers-vrf",
                  "namespace": "frr-k8s-system"
                },
                "spec": {
                  "bgp": {
                    "routers": [
                      {
                        "asn": 64513,
                        "neighbors": [
                          {
                            "address": "172.32.0.3",
                            "asn": 4200000000,
                            "ebgpMultiHop": true,
                            "port": 180,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          }
                        ],
                        "prefixes": [
                          "192.168.2.0/24",
                          "192.169.2.0/24"
                        ]
                      },
                      {
                        "asn": 64515,
                        "neighbors": [
                          {
                            "address": "172.31.0.3",
                            "asn": 4200000000,
                            "port": 179,
                            "toAdvertise": {
                              "allowed": {
                                "mode": "all"
                              }
                            }
                          }
                        ],
                        "prefixes": [
                          "192.168.2.0/24",
                          "192.169.2.0/24"
                        ],
                        "vrf": "red"
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "frrk8s.metallb.io/v1beta1",
                "kind": "FRRNodeState",
                "metadata": {
                  "name": "frr-k8s-worker"
                },
                "status": {
                  "lastConversionResult": "success",
                  "lastReloadResult": "success",
                  "runningConfig": "Building configuration...\n\nCurrent configuration:\n!\nfrr version 9.0.2_git\nfrr defaults traditional\nhostname frr-k8s-worker\nlog file /etc/frr/frr.log informational\nlog timestamp precision 3\nno ipv6 forwarding\nservice integrated-vtysh-config\n!\nip nht resolve-via-default\n!\nipv6 nht resolve-via-default\n!\nend\n"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BFDProfile",
                "metadata": {
                  "name": "bfd-profile-sample",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "receiveInterval": 380,
                  "transmitInterval": 270
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "peers": [
                    "ebgp-single-hop0"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "ipAddressPoolSelectors": [
                    {
                      "matchLabels": {
                        "test": "ipv6"
                      }
                    },
                    {
                      "matchLabels": {
                        "test": "ipv4"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample3",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "aggregationLength": 32,
                  "aggregationLengthV6": 128,
                  "communities": [
                    "65535:65282"
                  ],
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "localPref": 50
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample4",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "aggregationLength": 32,
                  "aggregationLengthV6": 128,
                  "communities": [
                    "NO_ADVERTISE"
                  ],
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "localPref": 50
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPAdvertisement",
                "metadata": {
                  "name": "bgp-adv-sample5",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "aggregationLength": 32,
                  "aggregationLengthV6": 128,
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ],
                  "nodeSelectors": [
                    {
                      "matchLabels": {
                        "kubernetes.io/hostname": "kind-control-plane"
                      }
                    },
                    {
                      "matchLabels": {
                        "kubernetes.io/hostname": "kind-worker"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-beta1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "myASN": 64512,
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "Community",
                "metadata": {
                  "name": "community1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "communities": [
                    {
                      "name": "NO_ADVERTISE",
                      "value": "65535:65282"
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "IPAddressPool",
                "metadata": {
                  "name": "ip-addresspool-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "addresses": [
                    "192.168.10.0/24",
                    "192.168.9.1-192.168.9.5",
                    "fc00:f853:0ccd:e799::/124"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "IPAddressPool",
                "metadata": {
                  "labels": {
                    "test": "ipv4"
                  },
                  "name": "ip-addresspool-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "addresses": [
                    "172.20.0.100/24"
                  ],
                  "autoAssign": false
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "IPAddressPool",
                "metadata": {
                  "labels": {
                    "test": "ipv6"
                  },
                  "name": "ip-addresspool-sample3",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "addresses": [
                    "2002:2:2::1-2002:2:2::100"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "L2Advertisement",
                "metadata": {
                  "name": "l2-adv-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "ipAddressPools": [
                    "ip-addresspool-sample1"
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "L2Advertisement",
                "metadata": {
                  "name": "l2-adv-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "nodeSelectors": [
                    {
                      "matchLabels": {
                        "kubernetes.io/hostname": "kind-control-plane"
                      }
                    }
                  ]
                }
              },
              {
                "apiVersion": "metallb.io/v1beta1",
                "kind": "MetalLB",
                "metadata": {
                  "name": "metallb",
                  "namespace": "metallb-system"
                },
                "spec": {}
              },
              {
                "apiVersion": "metallb.io/v1beta2",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-sample1",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "myASN": 64512,
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta2",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-sample2",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "bfdProfile": "bfd-profile-sample",
                  "myASN": 64512,
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3"
                }
              },
              {
                "apiVersion": "metallb.io/v1beta2",
                "kind": "BGPPeer",
                "metadata": {
                  "name": "bgp-peer-sample3",
                  "namespace": "metallb-system"
                },
                "spec": {
                  "holdTime": "9m0s",
                  "keepaliveTime": "0s",
                  "myASN": 64512,
                  "passwordSecret": {
                    "name": "secretname",
                    "namespace": "metallb-system"
                  },
                  "peerASN": 64512,
                  "peerAddress": "172.30.0.3",
                  "peerPort": 180
                }
              }
            ]
          capabilities: Basic Install
          categories: Networking
          certified: "false"
          containerImage: registry.redhat.io/openshift4/metallb-rhel9-operator@sha256:72b48d051e8794b0a5eb63d92db04547a4ce27de39ec4c63a77ea2fabaf96ff1
          createdAt: "2023-06-06T15:25:00Z"
          description: An operator for deploying MetalLB on a kubernetes cluster.
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          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.skipRange: '>=4.8.0 <4.20.0'
          operatorframework.io/suggested-namespace: metallb-system
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.34.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          repository: https://github.com/openshift/metallb-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: BFDProfile is the Schema for the bfdprofiles API
            kind: BFDProfile
            name: bfdprofiles.metallb.io
            version: v1beta1
          - description: BGPAdvertisement is the Schema for the bgpadvertisements
              API
            kind: BGPAdvertisement
            name: bgpadvertisements.metallb.io
            version: v1beta1
          - description: BGPPeer is the Schema for the bgppeers API
            kind: BGPPeer
            name: bgppeers.metallb.io
            version: v1beta1
          - description: BGPPeer is the Schema for the bgppeers API
            kind: BGPPeer
            name: bgppeers.metallb.io
            version: v1beta2
          - description: Community is the Schema for the communities API
            kind: Community
            name: communities.metallb.io
            version: v1beta1
          - description: FRRConfiguration is the Schema for the frrconfigurations
              API
            kind: FRRConfiguration
            name: frrconfigurations.frrk8s.metallb.io
            version: v1beta1
          - description: FRRNodeState is the Schema for the frrnodestates API
            kind: FRRNodeState
            name: frrnodestates.frrk8s.metallb.io
            version: v1beta1
          - description: IPAddressPool is the Schema for the ipaddresspools API
            kind: IPAddressPool
            name: ipaddresspools.metallb.io
            version: v1beta1
          - description: L2Advertisement is the Schema for the l2advertisements API
            kind: L2Advertisement
            name: l2advertisements.metallb.io
            version: v1beta1
          - description: MetalLB is the Schema for the metallbs API
            displayName: MetalLB
            kind: MetalLB
            name: metallbs.metallb.io
            version: v1beta1
          - kind: ServiceBGPStatus
            name: servicebgpstatuses.metallb.io
            version: v1beta1
          - description: L2ServiceStatus is the Schema for the l2servicestatus API
            kind: ServiceL2Status
            name: servicel2statuses.metallb.io
            version: v1beta1
        description: An operator for deploying MetalLB on a kubernetes cluster.
        displayName: MetalLB Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - metallb-operator
        links:
        - name: MetalLB Operator
          url: https://github.com/openshift/metallb-operator
        maintainers:
        - email: fpaoline@redhat.com
          name: Federico Paolinelli
        - email: obraunsh@redhat.com
          name: Ori Braunshtein
        maturity: alpha
        minKubeVersion: 1.26.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/openshift4/ose-metallb-operator-bundle@sha256:f44369457410c34175352a6d9c3939c7931bf42d6099dfa119e3a8f558dcbab0
        - registry.redhat.io/openshift4/frr-rhel9@sha256:9f8df09b73df5d35920e24dcbb3d69df441e9d5434561c0c3e965c90506a333e
        - registry.redhat.io/openshift4/metallb-rhel9-operator@sha256:72b48d051e8794b0a5eb63d92db04547a4ce27de39ec4c63a77ea2fabaf96ff1
        - registry.redhat.io/openshift4/metallb-rhel9@sha256:75864368e099ccfa6117e5c96bdec03a330361f923b521da1cd4b1d59b923121
        version: 4.20.0-202512081818
      entries:
      - name: metallb-operator.v4.20.0-202512081818
        version: 4.20.0-202512081818
      - name: metallb-operator.v4.20.0-202511250912
        version: 4.20.0-202511250912
      - name: metallb-operator.v4.20.0-202511181524
        version: 4.20.0-202511181524
      - name: metallb-operator.v4.20.0-202511102026
        version: 4.20.0-202511102026
      - name: metallb-operator.v4.20.0-202511040554
        version: 4.20.0-202511040554
      - name: metallb-operator.v4.20.0-202510211040
        version: 4.20.0-202510211040
      - name: metallb-operator.v4.20.0-202509271248
        version: 4.20.0-202509271248
      name: stable
    defaultChannel: stable
    packageName: metallb-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: IBM
      provider-url: ""
    name: bamoe-kogito-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: bamoe-kogito-operator.8.0.5-3
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoBuild",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "gitSource": {
                    "contextDir": "ruleunit-quarkus-example",
                    "uri": "https://github.com/kiegroup/kogito-examples"
                  },
                  "type": "RemoteSource"
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoInfra",
                "metadata": {
                  "name": "kogitoinfra-sample"
                },
                "spec": {
                  "resource": {
                    "apiVersion": "kafka.strimzi.io/v1beta2",
                    "kind": "Kafka",
                    "name": "kogito-kafka"
                  }
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoRuntime",
                "metadata": {
                  "name": "ruleunit-quarkus-example"
                },
                "spec": {
                  "replicas": 1
                }
              },
              {
                "apiVersion": "rhpam.kiegroup.org/v1",
                "kind": "KogitoSupportingService",
                "metadata": {
                  "name": "kogito-jobs-service"
                },
                "spec": {
                  "replicas": 1,
                  "serviceType": "JobsService"
                }
              }
            ]
          capabilities: Basic Install
          categories: Integration & Delivery
          certified: "true"
          containerImage: registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator@sha256:8a99fcd217502b7e850af1e1097de58b6cb19d1e786394811a8e075c4d871279
          description: IBM BAMOE Kogito Operator for deployment and management of
            Kogito services.
          features.operators.openshift.io/disconnected: "false"
          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"
          operators.openshift.io/valid-subscription: '["IBM Business Automation Manager
            Open Edition"]'
          operators.operatorframework.io/builder: operator-sdk-v1.21.0
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/kiegroup/kogito-operator
          support: https://www.ibm.com/mysupport
          tectonic-visibility: ocs
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: KogitoBuild handles how to build a custom Kogito service
              in a Kubernetes/OpenShift cluster.
            displayName: Kogito Build
            kind: KogitoBuild
            name: kogitobuilds.rhpam.kiegroup.org
            version: v1
          - description: "KogitoInfra is the resource to bind a Custom Resource (CR)
              not managed by Kogito Operator to a given deployed Kogito service. \n
              It holds the reference of a CR managed by another operator such as Strimzi.
              For example: one can create a Kafka CR via Strimzi and link this resource
              using KogitoInfra to a given Kogito service (custom or supporting, such
              as Data Index). \n Please refer to the Kogito Operator documentation
              (https://docs.jboss.org/kogito/release/latest/html_single/) for more
              information."
            displayName: Kogito Infra
            kind: KogitoInfra
            name: kogitoinfras.rhpam.kiegroup.org
            version: v1
          - description: KogitoRuntime is a custom Kogito service.
            displayName: Kogito Runtime
            kind: KogitoRuntime
            name: kogitoruntimes.rhpam.kiegroup.org
            version: v1
          - description: KogitoSupportingService deploys the Supporting service in
              the given namespace.
            displayName: Kogito Supporting Service
            kind: KogitoSupportingService
            name: kogitosupportingservices.rhpam.kiegroup.org
            version: v1
        description: |-
          IBM BAMOE Kogito Operator is designed for deployment and management of Kogito services from source (only on OpenShift) and every piece of infrastructure that the services might need:

          * Builds a IBM BAMOE Kogito service from a remote git repository and creates a custom image for the given runtime: Red Hat build of Quarkus or Springboot. [See more](https://docs.jboss.org/kogito/release/latest/html_single/#con-kogito-operator-deployment-options_kogito-deploying-on-openshift).
          * Deploy IBM BAMOE Kogito service from user provided image.
          * Setup Grafana Dashboard when Grafana Operator is available in cluster.
          * Create Prometheus monitor object when Prometheus operator is available in cluster.

          **IMPORTANT!** IBM BAMOE Kogito Operator may need Grafana and Prometheus Operator to configure monitoring in cases if you do not provide these services beforehand. If you need these features to be automatically provisioned for you, bear in mind that those operators must be installed in the same namespace as the IBM BAMOE Kogito Operator.
        displayName: IBM BAMOE Kogito Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cloud
        - kogito
        - quarkus
        - springboot
        - operator
        - native
        - automation
        links:
        - name: Product Page
          url: https://ibm.com
        - name: Documentation
          url: https://www.ibm.com/docs/en/ibamoe
        - name: Source
          url: https://github.com/kiegroup/kogito-operator
        maintainers:
        - email: mysphelp@us.ibm.com
          name: IBM
        maturity: beta
        provider:
          name: IBM
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:9492c67eaa7ab37df6f5fa623c4aac955b7d7ffaab9ae2e57dea745e82907e40
        - registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator-bundle@sha256:e0e7fc3a69575199a6fcf93985451dd66a5eb7d1ab8caecf059d7d52f3953dc4
        - registry.redhat.io/ibm-bamoe/bamoe-kogito-rhel8-operator@sha256:8a99fcd217502b7e850af1e1097de58b6cb19d1e786394811a8e075c4d871279
        version: 8.0.5-3
      entries:
      - name: bamoe-kogito-operator.8.0.5-3
        version: 8.0.5-3
      - name: bamoe-kogito-operator.8.0.5-2
        version: 8.0.5-2
      - name: bamoe-kogito-operator.8.0.5-1
        version: 8.0.5-1
      - name: bamoe-kogito-operator.8.0.4-2
        version: 8.0.4-2
      - name: bamoe-kogito-operator.8.0.4-1
        version: 8.0.4-1
      - name: bamoe-kogito-operator.8.0.3-1
        version: 8.0.3-1
      - name: bamoe-kogito-operator.8.0.2-3
        version: 8.0.2-3
      - name: bamoe-kogito-operator.8.0.2-2
        version: 8.0.2-2
      - name: bamoe-kogito-operator.8.0.2-1
        version: 8.0.2-1
      - name: bamoe-kogito-operator.8.0.1-2
        version: 8.0.1-2
      - name: bamoe-kogito-operator.8.0.1-1
        version: 8.0.1-1
      - name: bamoe-kogito-operator.8.0.0-1
        version: 8.0.0-1
      name: 8.x
    defaultChannel: 8.x
    packageName: bamoe-kogito-operator
    provider:
      name: IBM
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: deployment-validation-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: deployment-validation-operator.v0.7.12
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Basic Install
          categories: Application Runtime, Monitoring, Security
          certified: "false"
          containerImage: quay.io/deployment-validation-operator/dv-operator:0.7.12
          createdAt: "2025-09-11T00:00:00Z"
          description: The deployment validation operator
          ignore-check.kube-linter.io/minimum-three-replicas: This deployment uses
            1 pod as currently replicating does not replicate metric data causing
            installation issues
          repository: https://github.com/app-sre/deployment-validation-operator
          support: Best Effort
        apiservicedefinitions: {}
        customresourcedefinitions: {}
        description: |
          The Deployment Validation Operator (DVO) checks deployments and other resources against a curated collection of best practices.
          These best practices focus mainly on ensuring that the applications are fault-tolerant. DVO reports failed validations via Prometheus metrics.
          If the best-practice check has failed, the metrics will report `1`.
        displayName: Deployment Validation Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: AllNamespaces
        - supported: false
          type: MultiNamespace
        keywords:
        - dvo
        links:
        - name: repository
          url: https://github.com/app-sre/deployment-validation-operator
        - name: containerImage
          url: https://quay.io/deployment-validation-operator/dv-operator:0.7.12
        maintainers:
        - email: dvo-owners@redhat.com
          name: Red Hat
        maturity: alpha
        provider:
          name: Red Hat
        relatedImages:
        - quay.io/community-operator-pipeline-prod/deployment-validation-operator@sha256:2803298c7cf3eeaffe9da3153142058d94d65ff1dae90efd8819a4cd23e0518f
        - quay.io/deployment-validation-operator/dv-operator:0.7.12
        version: 0.7.12
      entries:
      - name: deployment-validation-operator.v0.7.12
        version: 0.7.12
      - name: deployment-validation-operator.v0.7.9
        version: 0.7.9
      - name: deployment-validation-operator.v0.7.8
        version: 0.7.8
      - name: deployment-validation-operator.v0.7.7
        version: 0.7.7
      - name: deployment-validation-operator.v0.7.6
        version: 0.7.6
      - name: deployment-validation-operator.v0.7.5
        version: 0.7.5
      - name: deployment-validation-operator.v0.7.4
        version: 0.7.4
      - name: deployment-validation-operator.v0.7.3
        version: 0.7.3
      - name: deployment-validation-operator.v0.7.2
        version: 0.7.2
      - name: deployment-validation-operator.v0.7.1
        version: 0.7.1
      - name: deployment-validation-operator.v0.7.0
        version: 0.7.0
      - name: deployment-validation-operator.v0.6.0
        version: 0.6.0
      - name: deployment-validation-operator.v0.5.0
        version: 0.5.0
      - name: deployment-validation-operator.v0.4.0
        version: 0.4.0
      - name: deployment-validation-operator.v0.3.0
        version: 0.3.0
      - name: deployment-validation-operator.v0.2.2
        version: 0.2.2
      name: alpha
    defaultChannel: alpha
    packageName: deployment-validation-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat, Inc.
      provider-url: https://www.redhat.com
    name: sap-commerce-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: sap-commerce-operator.v0.0.4
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "hybris.hybris.org/v1alpha1",
                "kind": "HybrisApp",
                "metadata": {
                  "name": "hybrisapp-sample"
                },
                "spec": {
                  "aJPServicePort": 30000,
                  "apachejvmRouteName": "",
                  "baseImageName": "hybris-base",
                  "baseImageTag": "v0.2",
                  "hybrisANTTaskNames": "",
                  "podHealthyProbePath": "/platform/init",
                  "sourceRepoLocalPropertiesOverride": "",
                  "sourceRepoRef": "main",
                  "sourceRepoURL": "https://github.com/redhat-sap/sap-commerce-app-example.git",
                  "startupProbeFailureThreshold": 100,
                  "startupProbePeriodSecond": 60
                }
              },
              {
                "apiVersion": "hybris.hybris.org/v1alpha1",
                "kind": "HybrisBase",
                "metadata": {
                  "name": "hybrisbase-sample"
                },
                "spec": {
                  "URL": "http://nexus.redhat.com/nexus/service/local/repositories/releases/content/org/hybris/hybris/1.0/hybris-1.0.tar.gz",
                  "buildSourceRepo": "https://github.com/redhat-sap/sap-commerce-operator",
                  "buildSourceRepoBranch": "main",
                  "imageName": "hybris-base",
                  "imageTag": "v0.2",
                  "jdkURL": "https://github.com/SAP/SapMachine/releases/download/sapmachine-11.0.5/sapmachine-jdk-11.0.5-1.x86_64.rpm",
                  "password": "admin123",
                  "username": "admin"
                }
              }
            ]
          capabilities: Basic Install
          categories: Database
          containerImage: quay.io/redhat-sap-cop/hybris-operator:0.0.4
          description: Builds and runs SAP Commerce in OpenShift
          operators.operatorframework.io/builder: operator-sdk-v1.6.1+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/redhat-sap/sap-commerce-operator
          support: Red Hat
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: HybrisApp is the Schema for the hybrisapps API
            displayName: Hybris Application
            kind: HybrisApp
            name: hybrisapps.hybris.hybris.org
            version: v1alpha1
          - description: HybrisBase is the Schema for the Hybris Base API
            displayName: Hybris Base
            kind: HybrisBase
            name: hybrisbases.hybris.hybris.org
            version: v1alpha1
        description: |-
          Builds and runs SAP Commerce in OpenShift

          * The operator provides APIs to initialize SAP Commerce with the provided SAP Commerce Server. Though there are no restrictions from the operator on the base package to be used from SAP, the default SAP base image provides a server preconfigured with an application server based on Apache Tomcat. Both HSQLDB and Tomcat are included in the SAP Commerce package, and are designed to be used for testing, development, and demonstration purposes. The custom classes created for various business needs along with an external RDBMS configuration can be used in a HybrisApp creation to execute SAP Commerce in a production setup.

          * The operator also enables the use of SAP Commerce in a clustered model. A SAP Commerce Cluster is a number of individual SAP Commerce installations using a common set of data on one database. A cluster configuration lets you balance the load between the nodes to scale SAP Commerce in a way that is transparent to the user.

          * The clustering offers few communication protocols as options (UDP: both multicast or unicast, or JGroups). In order to support multicast for SAP Commerce clustering the corresponding OpenShift namespace has to be enabled for multicast usage.

          For more details on SAP Commerce consult the product documentation: [https://help.sap.com/viewer/product/SAP_COMMERCE](https://help.sap.com/viewer/product/SAP_COMMERCE)
        displayName: SAP Commerce Operator
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - sap-commerce-operator
        links:
        - name: SAP Commerce Operator
          url: https://github.com/redhat-sap/sap-commerce-operator
        maintainers:
        - email: support@redhat.com
          name: Red Hat
        maturity: alpha
        minKubeVersion: 1.19.0
        provider:
          name: Red Hat, Inc.
          url: https://www.redhat.com
        relatedImages:
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0
        - quay.io/openshift-community-operators/sap-commerce-operator@sha256:9b6a3c9c7a3af1a91578fa06c202d128fc7bfff3ae21300a4382cffb11def17a
        - quay.io/redhat-sap-cop/hybris-operator:0.0.4
        version: 0.0.4
      entries:
      - name: sap-commerce-operator.v0.0.4
        version: 0.0.4
      - name: sap-commerce-operator.v0.0.3
        version: 0.0.3
      - name: sap-commerce-operator.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: sap-commerce-operator
    provider:
      name: Red Hat, Inc.
      url: https://www.redhat.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-bedrockagent-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-bedrockagent-controller.v1.1.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "bedrockagent.services.k8s.aws/v1alpha1",
                "kind": "Agent",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/bedrockagent-controller:1.1.0
          createdAt: "2025-11-29T03:25:09Z"
          description: AWS Bedrock Agent controller is a service controller for managing
            Bedrock Agent resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Agent represents the state of an AWS bedrockagent Agent resource.
            displayName: Agent
            kind: Agent
            name: agents.bedrockagent.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Bedrock Agent resources in AWS from within your Kubernetes cluster.

          **About Amazon Bedrock Agent**

          Amazon Bedrock is a fully managed service that makes high-performing foundation models (FMs) from leading AI companies and Amazon available for your use through a unified API. You can choose from a wide range of foundation models to find the model that is best suited for your use case. Amazon Bedrock also offers a broad set of capabilities to build generative AI applications with security, privacy, and responsible AI. Using Amazon Bedrock, you can easily experiment with and evaluate top foundation models for your use cases, privately customize them with your data using techniques such as fine-tuning and Retrieval Augmented Generation (RAG), and build agents that execute tasks using your enterprise systems and data sources.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project. This project is currently in **developer preview**.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon Bedrock Agent
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - bedrockagent
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon Bedrock Agent Developer Resources
          url: https://aws.amazon.com/bedrock/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: bedrock-agent maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - quay.io/community-operator-pipeline-prod/ack-bedrockagent-controller@sha256:21774b163f44769d4f7b430239af17661231bb7a0e53d28d6aa8c1af48641b2a
        - public.ecr.aws/aws-controllers-k8s/bedrockagent-controller:1.1.0
        version: 1.1.0
      entries:
      - name: ack-bedrockagent-controller.v1.1.0
        version: 1.1.0
      - name: ack-bedrockagent-controller.v1.0.0
        version: 1.0.0
      - name: ack-bedrockagent-controller.v0.1.2
        version: 0.1.2
      - name: ack-bedrockagent-controller.v0.1.1
        version: 0.1.1
      - name: ack-bedrockagent-controller.v0.1.0
        version: 0.1.0
      - name: ack-bedrockagent-controller.v0.0.6
        version: 0.0.6
      - name: ack-bedrockagent-controller.v0.0.5
        version: 0.0.5
      - name: ack-bedrockagent-controller.v0.0.4
        version: 0.0.4
      - name: ack-bedrockagent-controller.v0.0.2
        version: 0.0.2
      name: alpha
    defaultChannel: alpha
    packageName: ack-bedrockagent-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Cisco Networking - Compute Solutions
      provider-url: ""
    name: ucs-ci-solutions-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ucs-ci-solutions-operator.v0.0.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "intersight.cisco.com/v1alpha1",
                "kind": "UCSCISolutions",
                "metadata": {
                  "labels": {
                    "app.kubernetes.io/created-by": "ucs-ci-solutions-operator",
                    "app.kubernetes.io/instance": "ucscisolutions-sample",
                    "app.kubernetes.io/managed-by": "kustomize",
                    "app.kubernetes.io/name": "ucscisolutions",
                    "app.kubernetes.io/part-of": "ucs-ci-solutions-operator"
                  },
                  "name": "ucscisolutions-sample"
                },
                "spec": null
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: docker.io/pkoppa/ucs-ci-solutions-operator:latest
          createdAt: "2023-07-15T15:19:39Z"
          operators.operatorframework.io/builder: operator-sdk-v1.29.0
          operators.operatorframework.io/project_layout: ansible.sdk.operatorframework.io/v1
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: UCSCISolutions
            name: ucscisolutions.intersight.cisco.com
            version: v1alpha1
        description: The operator is used to automate the creation of  Pools, Policies
          and Server Profile Templates required to deploy Cisco UCS Converged Infrastructure
          Solution in Intersight.
        displayName: UCS-CI-Solutions-Operator
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ucscisolutions
        - intersight
        - ucs
        - ci
        - flexpod
        - flashstack
        links:
        - name: Ucs Ci Solutions Operator
          url: https://ucs-ci-solutions-operator.domain
        maintainers:
        - email: pkoppa@cisco.com
          name: Paniraj Koppa
        - email: chrobrie@cisco.com
          name: Chris O'Brien
        maturity: alpha
        provider:
          name: Cisco Networking - Compute Solutions
        relatedImages:
        - quay.io/openshift-community-operators/ucs-ci-solutions-operator@sha256:e284253263183eb2cd313f6fb009bb830b9a79a4d4e2481468821c30a9cdce03
        - docker.io/pkoppa/ucs-ci-solutions-operator:latest
        - gcr.io/kubebuilder/kube-rbac-proxy:v0.13.1
        version: 0.0.1
      entries:
      - name: ucs-ci-solutions-operator.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: ucs-ci-solutions-operator
    provider:
      name: Cisco Networking - Compute Solutions
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: CSI Addons Community
      provider-url: ""
    name: odf-csi-addons-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: odf-csi-addons-operator.v4.19.9-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:57:48Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.19.9-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CSIAddonsNode is the Schema for the csiaddonsnode API
            displayName: CSIAddons Node
            kind: CSIAddonsNode
            name: csiaddonsnodes.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationCronJob is the Schema for the encryptionkeyrotationcronjobs
              API
            displayName: EncryptionKeyRotation CronJob
            kind: EncryptionKeyRotationCronJob
            name: encryptionkeyrotationcronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationJob is the Schema for the encryptionkeyrotationjobs
              API
            displayName: EncryptionKeyRotation Job
            kind: EncryptionKeyRotationJob
            name: encryptionkeyrotationjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFenceClass is the Schema for the networkfenceclasses
              API
            displayName: Network Fence Class
            kind: NetworkFenceClass
            name: networkfenceclasses.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFence is the Schema for the networkfences API
            displayName: Network Fence
            kind: NetworkFence
            name: networkfences.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceCronJob is the Schema for the reclaimspacecronjobs
              API
            displayName: Reclaim Space CronJob
            kind: ReclaimSpaceCronJob
            name: reclaimspacecronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceJob is the Schema for the reclaimspacejobs API
            displayName: Reclaim Space Job
            kind: ReclaimSpaceJob
            name: reclaimspacejobs.csiaddons.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationClass is the Schema for the volumegroupreplicationclasses
              API
            displayName: Volume Group Replication Class
            kind: VolumeGroupReplicationClass
            name: volumegroupreplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationContent is the Schema for the volumegroupreplicationcontents
              API
            displayName: Volume Group Replication Content
            kind: VolumeGroupReplicationContent
            name: volumegroupreplicationcontents.replication.storage.openshift.io
            version: v1alpha1
          - kind: VolumeGroupReplication
            name: volumegroupreplications.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplicationClass is the Schema for the volumereplicationclasses
              API
            displayName: Volume Replication Class
            kind: VolumeReplicationClass
            name: volumereplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplication is the Schema for the volumereplications
              API
            displayName: Volume Replication
            kind: VolumeReplication
            name: volumereplications.replication.storage.openshift.io
            version: v1alpha1
        description: CSI Addons provides the CSI Addons Controller that enables advanced
          storage operations for CSI-drivers.
        displayName: CSI Addons
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: CSI Addons
          url: https://csi-addons.github.io
        maintainers:
        - email: csi-addons@redhat.com
          name: CSI Addons Community
        maturity: alpha
        provider:
          name: CSI Addons Community
        relatedImages:
        - registry.redhat.io/odf4/odf-csi-addons-operator-bundle@sha256:35cb92067f1cdf332d48b50cd2948e86ea2f43247eea53b15f7aa138c68a50b6
        - registry.redhat.io/odf4/odf-csi-addons-rhel9-operator@sha256:0e86d4dddc58fca1deed19260dadedc733e6232bff1484a8a28875f8445ed04e
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:44e5c375fc4f67f7b4639e140ae663d48be26f8df5ae88ad3dc6026ca138fc47
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:271a19060e3d03cdc806587339cde4f7cd67658514095acd02d1bf112baf10d6
        version: 4.19.9-rhodf
      entries:
      - name: odf-csi-addons-operator.v4.19.9-rhodf
        version: 4.19.9-rhodf
      - name: odf-csi-addons-operator.v4.19.8-rhodf
        version: 4.19.8-rhodf
      - name: odf-csi-addons-operator.v4.19.7-rhodf
        version: 4.19.7-rhodf
      - name: odf-csi-addons-operator.v4.19.6-rhodf
        version: 4.19.6-rhodf
      - name: odf-csi-addons-operator.v4.19.5-rhodf
        version: 4.19.5-rhodf
      - name: odf-csi-addons-operator.v4.19.4-rhodf
        version: 4.19.4-rhodf
      - name: odf-csi-addons-operator.v4.19.3-rhodf
        version: 4.19.3-rhodf
      - name: odf-csi-addons-operator.v4.19.2-rhodf
        version: 4.19.2-rhodf
      - name: odf-csi-addons-operator.v4.19.1-rhodf
        version: 4.19.1-rhodf
      - name: odf-csi-addons-operator.v4.19.0-rhodf
        version: 4.19.0-rhodf
      name: stable-4.19
    - currentCSV: odf-csi-addons-operator.v4.20.4-rhodf
      currentCSVDesc:
        annotations:
          alm-examples: '[]'
          capabilities: Seamless Upgrades
          createdAt: "2025-12-18T07:44:37Z"
          features.operators.openshift.io/cnf: "false"
          features.operators.openshift.io/cni: "false"
          features.operators.openshift.io/csi: "true"
          features.operators.openshift.io/disconnected: "true"
          features.operators.openshift.io/fips-compliant: "true"
          features.operators.openshift.io/proxy-aware: "true"
          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.skipRange: '>=4.2.0 <4.20.4-rhodf'
          operators.openshift.io/valid-subscription: '["OpenShift Platform Plus","OpenShift
            Data Foundation Essentials","OpenShift Data Foundation Advanced"]'
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/operator-type: non-standalone
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: CSIAddonsNode is the Schema for the csiaddonsnode API
            displayName: CSIAddons Node
            kind: CSIAddonsNode
            name: csiaddonsnodes.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationCronJob is the Schema for the encryptionkeyrotationcronjobs
              API
            displayName: EncryptionKeyRotation CronJob
            kind: EncryptionKeyRotationCronJob
            name: encryptionkeyrotationcronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: EncryptionKeyRotationJob is the Schema for the encryptionkeyrotationjobs
              API
            displayName: EncryptionKeyRotation Job
            kind: EncryptionKeyRotationJob
            name: encryptionkeyrotationjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFenceClass is the Schema for the networkfenceclasses
              API
            displayName: Network Fence Class
            kind: NetworkFenceClass
            name: networkfenceclasses.csiaddons.openshift.io
            version: v1alpha1
          - description: NetworkFence is the Schema for the networkfences API
            displayName: Network Fence
            kind: NetworkFence
            name: networkfences.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceCronJob is the Schema for the reclaimspacecronjobs
              API
            displayName: Reclaim Space CronJob
            kind: ReclaimSpaceCronJob
            name: reclaimspacecronjobs.csiaddons.openshift.io
            version: v1alpha1
          - description: ReclaimSpaceJob is the Schema for the reclaimspacejobs API
            displayName: Reclaim Space Job
            kind: ReclaimSpaceJob
            name: reclaimspacejobs.csiaddons.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationClass is the Schema for the volumegroupreplicationclasses
              API
            displayName: Volume Group Replication Class
            kind: VolumeGroupReplicationClass
            name: volumegroupreplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeGroupReplicationContent is the Schema for the volumegroupreplicationcontents
              API
            displayName: Volume Group Replication Content
            kind: VolumeGroupReplicationContent
            name: volumegroupreplicationcontents.replication.storage.openshift.io
            version: v1alpha1
          - kind: VolumeGroupReplication
            name: volumegroupreplications.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplicationClass is the Schema for the volumereplicationclasses
              API
            displayName: Volume Replication Class
            kind: VolumeReplicationClass
            name: volumereplicationclasses.replication.storage.openshift.io
            version: v1alpha1
          - description: VolumeReplication is the Schema for the volumereplications
              API
            displayName: Volume Replication
            kind: VolumeReplication
            name: volumereplications.replication.storage.openshift.io
            version: v1alpha1
        description: CSI Addons provides the CSI Addons Controller that enables advanced
          storage operations for CSI-drivers.
        displayName: CSI Addons
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - storage
        - csi
        links:
        - name: CSI Addons
          url: https://csi-addons.github.io
        maintainers:
        - email: csi-addons@redhat.com
          name: CSI Addons Community
        maturity: alpha
        provider:
          name: CSI Addons Community
        relatedImages:
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9@sha256:ca1344cb64140188b7cae7bbc51fb751566c0b0c97d5e39b5850e628032c4a5e
        - registry.redhat.io/odf4/odf-csi-addons-operator-bundle@sha256:eec2e2ee2bd6f3a5848db2fe427e348e4b9a12ac23fe245953976b3eaa195e72
        - registry.redhat.io/odf4/odf-csi-addons-rhel9-operator@sha256:6e0480ded3445a2e149eee2e9a3d30f6f51932caf99c4c426c67ca720d1976e6
        - registry.redhat.io/odf4/odf-csi-addons-sidecar-rhel9@sha256:934ad1136d803c1d745ebbc9292738b3cc51b157e7a1d6ea8a4c9c743f03a519
        version: 4.20.4-rhodf
      entries:
      - name: odf-csi-addons-operator.v4.20.4-rhodf
        version: 4.20.4-rhodf
      - name: odf-csi-addons-operator.v4.20.3-rhodf
        version: 4.20.3-rhodf
      - name: odf-csi-addons-operator.v4.20.2-rhodf
        version: 4.20.2-rhodf
      - name: odf-csi-addons-operator.v4.20.1-rhodf
        version: 4.20.1-rhodf
      - name: odf-csi-addons-operator.v4.20.0-rhodf
        version: 4.20.0-rhodf
      name: stable-4.20
    defaultChannel: stable-4.20
    packageName: odf-csi-addons-operator
    provider:
      name: CSI Addons Community
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: openshift-cert-manager-operator
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cert-manager-operator.v1.18.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "authorizationURL": "https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/XXXXX",
                  "dnsName": "sample.dns.name",
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "key": "XXX",
                  "solver": {
                    "dns01": {
                      "route53": {
                        "accessKeyID": "XXX",
                        "hostedZoneID": "XXX",
                        "region": "us-east-1",
                        "secretAccessKeySecretRef": {
                          "key": "awsSecretAccessKey",
                          "name": "aws-secret"
                        }
                      }
                    },
                    "selector": {
                      "dnsNames": [
                        "sample.dns.name"
                      ]
                    }
                  },
                  "token": "XXX",
                  "type": "DNS-01",
                  "url": "https://acme-staging-v02.api.letsencrypt.org/acme/chall-v3/XXXXXX/XXXXX",
                  "wildcard": false
                }
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "selfsigned-ca",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "selfsigned-ca.dns.name",
                  "isCA": true,
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "selfsigned-issuer"
                  },
                  "privateKey": {
                    "algorithm": "ECDSA",
                    "size": 256
                  },
                  "secretName": "ca-root-secret"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "tls-cert",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "isCA": false,
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "secretName": "tls-cert"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "groups": [
                    "system:serviceaccounts",
                    "system:serviceaccounts:cert-manager",
                    "system:authenticated"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX",
                  "username": "system:serviceaccount:cert-manager:cert-manager"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "selfsigned-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "ca-issuer",
                  "namespace": "default"
                },
                "spec": {
                  "ca": {
                    "secretName": "ca-root-secret"
                  }
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "letsencrypt-staging",
                  "namespace": "default"
                },
                "spec": {
                  "acme": {
                    "email": "aos-ci-cd@redhat.com",
                    "privateKeySecretRef": {
                      "name": "letsencrypt-staging"
                    },
                    "server": "https://acme-staging-v02.api.letsencrypt.org/directory",
                    "solvers": [
                      {
                        "dns01": {
                          "route53": {
                            "accessKeyID": "ACCESS_KEY_ID",
                            "hostedZoneID": "HOSTED_ZONE_ID",
                            "region": "AWS_REGION",
                            "secretAccessKeySecretRef": {
                              "key": "access-key",
                              "name": "sample-aws-secret"
                            }
                          }
                        },
                        "selector": {
                          "dnsNames": [
                            "sample.dns.name"
                          ]
                        }
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "CertManager",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "IstioCSR",
                "metadata": {
                  "annotations": {
                    "kubernetes.io/description": "Resource behavior is managed through IstioCSR featuregate, which is enabled by default. Please refer to the cert-manager documentation for more information on the istio-csr feature."
                  },
                  "name": "default",
                  "namespace": "istio-csr"
                },
                "spec": {
                  "istioCSRConfig": {
                    "certManager": {
                      "issuerRef": {
                        "group": "cert-manager.io",
                        "kind": "Issuer",
                        "name": "istio-csr-issuer"
                      }
                    },
                    "istio": {
                      "namespace": "istio-system"
                    },
                    "istiodTLSConfig": {
                      "trustDomain": "cluster.local"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
          createdAt: 2025-11-12T08:36:17
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.17.0 <1.18.0'
          operator.openshift.io/uninstall-message: The cert-manager Operator for Red
            Hat OpenShift will be removed from cert-manager-operator namespace. If
            your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/cert-manager-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/cert-manager-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: CertManager is the Schema for the certmanagers API
            displayName: CertManager
            kind: CertManager
            name: certmanagers.operator.openshift.io
            version: v1alpha1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: |-
              IstioCSR describes the configuration and information about the managed istio-csr agent.
              The name must be `default` to make IstioCSR a singleton that is, to allow only one instance of IstioCSR per namespace.

              When an IstioCSR is created, istio-csr agent is deployed in the IstioCSR-created namespace.
            displayName: IstioCSR
            kind: IstioCSR
            name: istiocsrs.operator.openshift.io
            version: v1alpha1
          - description: Order is a type to represent an Order with an ACME server
            displayName: Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          The cert-manager Operator for Red Hat OpenShift provides seamless support for [cert-manager v1.18.3](https://github.com/cert-manager/cert-manager/tree/v1.18.3), which automates certificate management.
          For more information, see the [cert-manager Operator for Red Hat OpenShift documentation](https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/index.html).
        displayName: cert-manager Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cert-manager-operator
        - cert
        - certificates
        - security
        - TLS
        - istio-csr
        links:
        - name: Documentation
          url: https://github.com/openshift/cert-manager-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:acaaea813059d4ac5b2618395bd9113f72ada0a33aaaba91aa94f000e77df407
        - registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
        - registry.redhat.io/cert-manager/jetstack-cert-manager-acmesolver-rhel9@sha256:ba937fc4b9eee31422914352c11a45b90754ba4fbe490ea45249b90afdc4e0a7
        - registry.redhat.io/cert-manager/jetstack-cert-manager-rhel9@sha256:29a0fa1c2f2a6cee62a0468a3883d16d491b4af29130dad6e3e2bb2948f274df
        - registry.redhat.io/cert-manager/cert-manager-istio-csr-rhel9@sha256:af1ac813b8ee414ef215936f05197bc498bccbd540f3e2a93cb522221ba112bc
        version: 1.18.0
      entries:
      - name: cert-manager-operator.v1.18.0
        version: 1.18.0
      - name: cert-manager-operator.v1.17.0
        version: 1.17.0
      name: stable-v1
    - currentCSV: cert-manager-operator.v1.17.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "authorizationURL": "https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/XXXXX",
                  "dnsName": "sample.dns.name",
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "key": "XXX",
                  "solver": {
                    "dns01": {
                      "route53": {
                        "accessKeyID": "XXX",
                        "hostedZoneID": "XXX",
                        "region": "us-east-1",
                        "secretAccessKeySecretRef": {
                          "key": "awsSecretAccessKey",
                          "name": "aws-secret"
                        }
                      }
                    },
                    "selector": {
                      "dnsNames": [
                        "sample.dns.name"
                      ]
                    }
                  },
                  "token": "XXX",
                  "type": "DNS-01",
                  "url": "https://acme-staging-v02.api.letsencrypt.org/acme/chall-v3/XXXXXX/XXXXX",
                  "wildcard": false
                }
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "selfsigned-ca",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "selfsigned-ca.dns.name",
                  "isCA": true,
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "selfsigned-issuer"
                  },
                  "privateKey": {
                    "algorithm": "ECDSA",
                    "size": 256
                  },
                  "secretName": "ca-root-secret"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "tls-cert",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "isCA": false,
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "secretName": "tls-cert"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "groups": [
                    "system:serviceaccounts",
                    "system:serviceaccounts:cert-manager",
                    "system:authenticated"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX",
                  "username": "system:serviceaccount:cert-manager:cert-manager"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "selfsigned-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "ca-issuer",
                  "namespace": "default"
                },
                "spec": {
                  "ca": {
                    "secretName": "ca-root-secret"
                  }
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "letsencrypt-staging",
                  "namespace": "default"
                },
                "spec": {
                  "acme": {
                    "email": "aos-ci-cd@redhat.com",
                    "privateKeySecretRef": {
                      "name": "letsencrypt-staging"
                    },
                    "server": "https://acme-staging-v02.api.letsencrypt.org/directory",
                    "solvers": [
                      {
                        "dns01": {
                          "route53": {
                            "accessKeyID": "ACCESS_KEY_ID",
                            "hostedZoneID": "HOSTED_ZONE_ID",
                            "region": "AWS_REGION",
                            "secretAccessKeySecretRef": {
                              "key": "access-key",
                              "name": "sample-aws-secret"
                            }
                          }
                        },
                        "selector": {
                          "dnsNames": [
                            "sample.dns.name"
                          ]
                        }
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "CertManager",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "IstioCSR",
                "metadata": {
                  "annotations": {
                    "kubernetes.io/description": "Creating this resource requires the istio-csr tech-preview feature to be enabled, which otherwise has no effect. Please refer to the cert-manager documentation for more information on enabling the istio-csr feature. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process"
                  },
                  "name": "default",
                  "namespace": "istio-csr"
                },
                "spec": {
                  "istioCSRConfig": {
                    "certManager": {
                      "issuerRef": {
                        "group": "cert-manager.io",
                        "kind": "Issuer",
                        "name": "istio-csr-issuer"
                      }
                    },
                    "istio": {
                      "namespace": "istio-system"
                    },
                    "istiodTLSConfig": {
                      "trustDomain": "cluster.local"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:4d5e238300ce6f427a1045d51d6b37a4e5c5633985208ebb44f91e7dd53897d9
          createdAt: 2025-08-06T08:21:40
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.16.1 <1.17.0'
          operator.openshift.io/uninstall-message: The cert-manager Operator for Red
            Hat OpenShift will be removed from cert-manager-operator namespace. If
            your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/cert-manager-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/cert-manager-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: CertManager is the Schema for the certmanagers API
            displayName: CertManager
            kind: CertManager
            name: certmanagers.operator.openshift.io
            version: v1alpha1
          - kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - kind: IstioCSR
            name: istiocsrs.operator.openshift.io
            version: v1alpha1
          - kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          The cert-manager Operator for Red Hat OpenShift provides seamless support for [cert-manager v1.17.4](https://github.com/cert-manager/cert-manager/tree/v1.17.4), which automates certificate management.
          For more information, see the [cert-manager Operator for Red Hat OpenShift documentation](https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/index.html).
        displayName: cert-manager Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cert-manager-operator
        - cert
        - certificates
        - security
        - TLS
        links:
        - name: Documentation
          url: https://github.com/openshift/cert-manager-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:4d5e238300ce6f427a1045d51d6b37a4e5c5633985208ebb44f91e7dd53897d9
        - registry.redhat.io/cert-manager/jetstack-cert-manager-acmesolver-rhel9@sha256:4f7c045819c39e176a6090efdaba6ec736edf772d88fc87dd1c6fb33d3b5b26b
        - registry.redhat.io/cert-manager/jetstack-cert-manager-rhel9@sha256:96d51e3a64bf30cbd92836c7cbd82f06edca16eef78ab1432757d34c16628659
        - registry.redhat.io/cert-manager/cert-manager-istio-csr-rhel9@sha256:9ea2c29a384b964cef14f853278821df3cd30320f25afab8823897192f67fc7e
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:cc20a2ab116597b080d303196825d7f5c81c6f30268f7866fb2911706efea210
        version: 1.17.0
      entries:
      - name: cert-manager-operator.v1.17.0
        version: 1.17.0
      name: stable-v1.17
    - currentCSV: cert-manager-operator.v1.18.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Challenge",
                "metadata": {
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "authorizationURL": "https://acme-staging-v02.api.letsencrypt.org/acme/authz-v3/XXXXX",
                  "dnsName": "sample.dns.name",
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "key": "XXX",
                  "solver": {
                    "dns01": {
                      "route53": {
                        "accessKeyID": "XXX",
                        "hostedZoneID": "XXX",
                        "region": "us-east-1",
                        "secretAccessKeySecretRef": {
                          "key": "awsSecretAccessKey",
                          "name": "aws-secret"
                        }
                      }
                    },
                    "selector": {
                      "dnsNames": [
                        "sample.dns.name"
                      ]
                    }
                  },
                  "token": "XXX",
                  "type": "DNS-01",
                  "url": "https://acme-staging-v02.api.letsencrypt.org/acme/chall-v3/XXXXXX/XXXXX",
                  "wildcard": false
                }
              },
              {
                "apiVersion": "acme.cert-manager.io/v1",
                "kind": "Order",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "selfsigned-ca",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "selfsigned-ca.dns.name",
                  "isCA": true,
                  "issuerRef": {
                    "group": "cert-manager.io",
                    "kind": "ClusterIssuer",
                    "name": "selfsigned-issuer"
                  },
                  "privateKey": {
                    "algorithm": "ECDSA",
                    "size": 256
                  },
                  "secretName": "ca-root-secret"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Certificate",
                "metadata": {
                  "name": "tls-cert",
                  "namespace": "default"
                },
                "spec": {
                  "commonName": "sample.dns.name",
                  "dnsNames": [
                    "sample.dns.name"
                  ],
                  "isCA": false,
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "secretName": "tls-cert"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "CertificateRequest",
                "metadata": {
                  "annotations": {
                    "cert-manager.io/certificate-name": "tls-cert",
                    "cert-manager.io/certificate-revision": "1",
                    "cert-manager.io/private-key-secret-name": "tls-cert-sample"
                  },
                  "name": "tls-cert-sample",
                  "namespace": "default"
                },
                "spec": {
                  "groups": [
                    "system:serviceaccounts",
                    "system:serviceaccounts:cert-manager",
                    "system:authenticated"
                  ],
                  "issuerRef": {
                    "kind": "Issuer",
                    "name": "letsencrypt-staging"
                  },
                  "request": "XXX",
                  "username": "system:serviceaccount:cert-manager:cert-manager"
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "ClusterIssuer",
                "metadata": {
                  "name": "selfsigned-issuer"
                },
                "spec": {
                  "selfSigned": {}
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "ca-issuer",
                  "namespace": "default"
                },
                "spec": {
                  "ca": {
                    "secretName": "ca-root-secret"
                  }
                }
              },
              {
                "apiVersion": "cert-manager.io/v1",
                "kind": "Issuer",
                "metadata": {
                  "name": "letsencrypt-staging",
                  "namespace": "default"
                },
                "spec": {
                  "acme": {
                    "email": "aos-ci-cd@redhat.com",
                    "privateKeySecretRef": {
                      "name": "letsencrypt-staging"
                    },
                    "server": "https://acme-staging-v02.api.letsencrypt.org/directory",
                    "solvers": [
                      {
                        "dns01": {
                          "route53": {
                            "accessKeyID": "ACCESS_KEY_ID",
                            "hostedZoneID": "HOSTED_ZONE_ID",
                            "region": "AWS_REGION",
                            "secretAccessKeySecretRef": {
                              "key": "access-key",
                              "name": "sample-aws-secret"
                            }
                          }
                        },
                        "selector": {
                          "dnsNames": [
                            "sample.dns.name"
                          ]
                        }
                      }
                    ]
                  }
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "CertManager",
                "metadata": {
                  "name": "cluster"
                },
                "spec": {
                  "logLevel": "Normal",
                  "managementState": "Managed"
                }
              },
              {
                "apiVersion": "operator.openshift.io/v1alpha1",
                "kind": "IstioCSR",
                "metadata": {
                  "annotations": {
                    "kubernetes.io/description": "Resource behavior is managed through IstioCSR featuregate, which is enabled by default. Please refer to the cert-manager documentation for more information on the istio-csr feature."
                  },
                  "name": "default",
                  "namespace": "istio-csr"
                },
                "spec": {
                  "istioCSRConfig": {
                    "certManager": {
                      "issuerRef": {
                        "group": "cert-manager.io",
                        "kind": "Issuer",
                        "name": "istio-csr-issuer"
                      }
                    },
                    "istio": {
                      "namespace": "istio-system"
                    },
                    "istiodTLSConfig": {
                      "trustDomain": "cluster.local"
                    }
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: Security
          console.openshift.io/disable-operand-delete: "true"
          containerImage: registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
          createdAt: 2025-11-12T08:36:17
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "false"
          features.operators.openshift.io/token-auth-aws: "true"
          features.operators.openshift.io/token-auth-azure: "true"
          features.operators.openshift.io/token-auth-gcp: "true"
          olm.skipRange: '>=1.17.0 <1.18.0'
          operator.openshift.io/uninstall-message: The cert-manager Operator for Red
            Hat OpenShift will be removed from cert-manager-operator namespace. If
            your Operator configured any off-cluster resources, these will continue
            to run and require manual cleanup. All operands created by the operator
            will need to be manually cleaned up. Please refer to https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/cert-manager-operator-uninstall.html
            for additional steps.
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/suggested-namespace: cert-manager-operator
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io/builder: operator-sdk-v1.25.1
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
          repository: https://github.com/openshift/cert-manager-operator
          support: Red Hat, Inc.
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              A CertificateRequest is used to request a signed certificate from one of the
              configured issuers.

              All fields within the CertificateRequest's `spec` are immutable after creation.
              A CertificateRequest will either succeed or fail, as denoted by its `Ready` status
              condition and its `status.failureTime` field.

              A CertificateRequest is a one-shot resource, meaning it represents a single
              point in time request for a certificate and cannot be re-used.
            displayName: CertificateRequest
            kind: CertificateRequest
            name: certificaterequests.cert-manager.io
            version: v1
          - description: |-
              A Certificate resource should be created to ensure an up to date and signed
              X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.

              The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
            displayName: Certificate
            kind: Certificate
            name: certificates.cert-manager.io
            version: v1
          - description: CertManager is the Schema for the certmanagers API
            displayName: CertManager
            kind: CertManager
            name: certmanagers.operator.openshift.io
            version: v1alpha1
          - description: Challenge is a type to represent a Challenge request with
              an ACME server
            displayName: Challenge
            kind: Challenge
            name: challenges.acme.cert-manager.io
            version: v1
          - description: |-
              A ClusterIssuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is similar to an Issuer, however it is cluster-scoped and therefore can
              be referenced by resources that exist in *any* namespace, not just the same
              namespace as the referent.
            displayName: ClusterIssuer
            kind: ClusterIssuer
            name: clusterissuers.cert-manager.io
            version: v1
          - description: |-
              An Issuer represents a certificate issuing authority which can be
              referenced as part of `issuerRef` fields.
              It is scoped to a single namespace and can therefore only be referenced by
              resources within the same namespace.
            displayName: Issuer
            kind: Issuer
            name: issuers.cert-manager.io
            version: v1
          - description: |-
              IstioCSR describes the configuration and information about the managed istio-csr agent.
              The name must be `default` to make IstioCSR a singleton that is, to allow only one instance of IstioCSR per namespace.

              When an IstioCSR is created, istio-csr agent is deployed in the IstioCSR-created namespace.
            displayName: IstioCSR
            kind: IstioCSR
            name: istiocsrs.operator.openshift.io
            version: v1alpha1
          - description: Order is a type to represent an Order with an ACME server
            displayName: Order
            kind: Order
            name: orders.acme.cert-manager.io
            version: v1
        description: |
          The cert-manager Operator for Red Hat OpenShift provides seamless support for [cert-manager v1.18.3](https://github.com/cert-manager/cert-manager/tree/v1.18.3), which automates certificate management.
          For more information, see the [cert-manager Operator for Red Hat OpenShift documentation](https://docs.openshift.com/container-platform/latest/security/cert_manager_operator/index.html).
        displayName: cert-manager Operator for Red Hat OpenShift
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - cert-manager
        - cert-manager-operator
        - cert
        - certificates
        - security
        - TLS
        - istio-csr
        links:
        - name: Documentation
          url: https://github.com/openshift/cert-manager-operator/blob/master/README.md
        maintainers:
        - email: support@redhat.com
          name: Red Hat Support
        maturity: stable
        minKubeVersion: 1.27.0
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/cert-manager/cert-manager-istio-csr-rhel9@sha256:af1ac813b8ee414ef215936f05197bc498bccbd540f3e2a93cb522221ba112bc
        - registry.redhat.io/cert-manager/cert-manager-operator-bundle@sha256:acaaea813059d4ac5b2618395bd9113f72ada0a33aaaba91aa94f000e77df407
        - registry.redhat.io/cert-manager/cert-manager-operator-rhel9@sha256:fa8de363ab4435c1085ac37f1bad488828c6ae8ba361c5f865c27ef577610911
        - registry.redhat.io/cert-manager/jetstack-cert-manager-acmesolver-rhel9@sha256:ba937fc4b9eee31422914352c11a45b90754ba4fbe490ea45249b90afdc4e0a7
        - registry.redhat.io/cert-manager/jetstack-cert-manager-rhel9@sha256:29a0fa1c2f2a6cee62a0468a3883d16d491b4af29130dad6e3e2bb2948f274df
        version: 1.18.0
      entries:
      - name: cert-manager-operator.v1.18.0
        version: 1.18.0
      - name: cert-manager-operator.v1.17.0
        version: 1.17.0
      name: stable-v1.18
    defaultChannel: stable-v1
    packageName: openshift-cert-manager-operator
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: redhat-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/arch.ppc64le: supported
      operatorframework.io/arch.s390x: supported
      operatorframework.io/os.linux: supported
      provider: Red Hat
      provider-url: ""
    name: cluster-logging
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: redhat-operators
    catalogSourceDisplayName: Red Hat Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: cluster-logging.v6.2.7
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "logging.openshift.io/v1alpha1",
                "kind": "LogFileMetricExporter",
                "metadata": {
                  "name": "instance",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "resources": {
                    "limits": {
                      "cpu": "500m"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "128Mi"
                    }
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master",
                      "operator": "Exists"
                    }
                  ]
                }
              },
              {
                "apiVersion": "observability.openshift.io/v1",
                "kind": "ClusterLogForwarder",
                "metadata": {
                  "name": "logging",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "outputs": [
                    {
                      "lokiStack": {
                        "authentication": {
                          "token": {
                            "from": "serviceAccount"
                          }
                        },
                        "target": {
                          "name": "logging-loki"
                        }
                      },
                      "name": "logging-loki",
                      "tls": {
                        "ca": {
                          "configMapName": "openshift-service-ca.crt",
                          "key": "service-ca.crt"
                        }
                      },
                      "type": "lokiStack"
                    }
                  ],
                  "pipelines": [
                    {
                      "inputRefs": [
                        "application",
                        "infrastructure"
                      ],
                      "name": "logs-to-loki",
                      "outputRefs": [
                        "logging-loki"
                      ]
                    }
                  ],
                  "serviceAccount": {
                    "name": "log-collector"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Logging & Tracing
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.16-v4.20
          containerImage: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:80cac88d8ff5b40036e5983f5dacfc08702afe9c7a66b48d1c88bcb149c285b3
          createdAt: "2025-07-29T15:25:15Z"
          description: The Red Hat OpenShift Logging Operator for OCP provides a means
            for configuring and managing log collection and forwarding.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=6.0.0-0 <6.2.7'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "observability.openshift.io/v1",
              "kind": "ClusterLogForwarder",
              "metadata": {
                "name": "logging"
              }
            }
          operatorframework.io/suggested-namespace: openshift-logging
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:80cac88d8ff5b40036e5983f5dacfc08702afe9c7a66b48d1c88bcb149c285b3
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.2
          operators.operatorframework.io.bundle.channels.v1: stable-6.2
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: cluster-logging
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Logging (aos-logging@redhat.com)
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ClusterLogForwarder is an API to configure forwarding logs.


              You configure forwarding by specifying a list of `pipelines`,
              which forward from a set of named inputs to a set of named outputs.
            displayName: Cluster Log Forwarder
            kind: ClusterLogForwarder
            name: clusterlogforwarders.observability.openshift.io
            version: v1
          - description: A Log File Metric Exporter instance. LogFileMetricExporter
              is the Schema for the logFileMetricExporters API
            displayName: Log File Metric Exporter
            kind: LogFileMetricExporter
            name: logfilemetricexporters.logging.openshift.io
            version: v1alpha1
        description: |-
          # Red Hat OpenShift Logging
          The Red Hat OpenShift Logging Operator orchestrates log collection and forwarding to Red Had managed log stores and
          other third-party receivers.

          ##Features
          * **Create/Destroy**: Deploy log collectors and forwarders to support observability of OCP cluster.
          * **Simplified Configuration**: Spec collectors using a simplified API to configure log collection from opinionated sources to one or more third-party receivers.

          ## Prerequisites and Requirements
          ### Red Hat OpenShift Logging Namespace
          It is recommended to deploy the Red Hat OpenShift Logging Operator to the **openshift-logging** namespace. This namespace
          must be explicitly created by a cluster administrator (e.g. `oc create ns openshift-logging`). To enable metrics
          service discovery add namespace label `openshift.io/cluster-monitoring: "true"`.

          For additional installation documentation see [Installing logging](https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html-single/logging/index#installing-logging-6-2)
          in the OpenShift product documentation.
        displayName: Red Hat OpenShift Logging
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - observability
        - loki
        - vector
        - otlp
        links:
        - name: Documentation
          url: https://github.com/openshift/cluster-logging-operator/blob/master/README.adoc
        - name: Red Hat OpenShift Logging Operator
          url: https://github.com/openshift/cluster-logging-operator
        - name: Vector
          url: https://vector.dev/
        minKubeVersion: 1.18.3
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:0d2edaf37f5e25155f9a3086e81d40686b102a78c3ae35b07e0c5992d3a7fb40
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:fa2cfa2ed336ce105c8dea5bfe0825407e37ef296193ae162f515213fe43c8d5
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:912e0be15a46e77b2495db1dad335edc4116027c342698cedd8e7718cc15a5c1
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:80cac88d8ff5b40036e5983f5dacfc08702afe9c7a66b48d1c88bcb149c285b3
        version: 6.2.7
      entries:
      - name: cluster-logging.v6.2.7
        version: 6.2.7
      - name: cluster-logging.v6.2.6
        version: 6.2.6
      - name: cluster-logging.v6.2.5
        version: 6.2.5
      - name: cluster-logging.v6.2.4
        version: 6.2.4
      - name: cluster-logging.v6.2.3
        version: 6.2.3
      - name: cluster-logging.v6.2.2
        version: 6.2.2
      - name: cluster-logging.v6.2.1
        version: 6.2.1
      - name: cluster-logging.v6.2.0
        version: 6.2.0
      name: stable-6.2
    - currentCSV: cluster-logging.v6.3.2
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "logging.openshift.io/v1alpha1",
                "kind": "LogFileMetricExporter",
                "metadata": {
                  "name": "instance",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "resources": {
                    "limits": {
                      "cpu": "500m"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "128Mi"
                    }
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master",
                      "operator": "Exists"
                    }
                  ]
                }
              },
              {
                "apiVersion": "observability.openshift.io/v1",
                "kind": "ClusterLogForwarder",
                "metadata": {
                  "name": "logging",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "outputs": [
                    {
                      "lokiStack": {
                        "authentication": {
                          "token": {
                            "from": "serviceAccount"
                          }
                        },
                        "target": {
                          "name": "logging-loki"
                        }
                      },
                      "name": "logging-loki",
                      "tls": {
                        "ca": {
                          "configMapName": "openshift-service-ca.crt",
                          "key": "service-ca.crt"
                        }
                      },
                      "type": "lokiStack"
                    }
                  ],
                  "pipelines": [
                    {
                      "inputRefs": [
                        "application",
                        "infrastructure"
                      ],
                      "name": "logs-to-loki",
                      "outputRefs": [
                        "logging-loki"
                      ]
                    }
                  ],
                  "serviceAccount": {
                    "name": "log-collector"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Logging & Tracing, Observability
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.17-v4.20
          containerImage: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:61ced99002f57d20727adc2dbad34b99c1347541b4605c5ec2847db577532dc5
          createdAt: "2025-11-13T11:03:18Z"
          description: The Red Hat OpenShift Logging Operator for OCP provides a means
            for configuring and managing log collection and forwarding.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=6.1.0-0 <6.3.2'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "observability.openshift.io/v1",
              "kind": "ClusterLogForwarder",
              "metadata": {
                "name": "logging"
              }
            }
          operatorframework.io/suggested-namespace: openshift-logging
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:61ced99002f57d20727adc2dbad34b99c1347541b4605c5ec2847db577532dc5
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.3
          operators.operatorframework.io.bundle.channels.v1: stable-6.3
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: cluster-logging
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Logging (aos-logging@redhat.com)
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ClusterLogForwarder is an API to configure forwarding logs.

              You configure forwarding by specifying a list of `pipelines`,
              which forward from a set of named inputs to a set of named outputs.
            displayName: Cluster Log Forwarder
            kind: ClusterLogForwarder
            name: clusterlogforwarders.observability.openshift.io
            version: v1
          - description: A Log File Metric Exporter instance. LogFileMetricExporter
              is the Schema for the logFileMetricExporters API
            displayName: Log File Metric Exporter
            kind: LogFileMetricExporter
            name: logfilemetricexporters.logging.openshift.io
            version: v1alpha1
        description: |-
          # Red Hat OpenShift Logging
          The Red Hat OpenShift Logging Operator orchestrates log collection and forwarding to Red Had managed log stores and
          other third-party receivers.

          ##Features
          * **Create/Destroy**: Deploy log collectors and forwarders to support observability of OCP cluster.
          * **Simplified Configuration**: Spec collectors using a simplified API to configure log collection from opinionated sources to one or more third-party receivers.

          ## Prerequisites and Requirements
          ### Red Hat OpenShift Logging Namespace
          It is recommended to deploy the Red Hat OpenShift Logging Operator to the **openshift-logging** namespace. This namespace
          must be explicitly created by a cluster administrator (e.g. `oc create ns openshift-logging`). To enable metrics
          service discovery add namespace label `openshift.io/cluster-monitoring: "true"`.

          For additional installation documentation see [Deploying cluster logging](https://docs.openshift.com/container-platform/latest/logging/cluster-logging-deploying.html)
          in the OpenShift product documentation.
        displayName: Red Hat OpenShift Logging
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - observability
        - loki
        - vector
        - otlp
        links:
        - name: Documentation
          url: https://github.com/openshift/cluster-logging-operator/blob/master/README.adoc
        - name: Red Hat OpenShift Logging Operator
          url: https://github.com/openshift/cluster-logging-operator
        - name: Vector
          url: https://vector.dev/
        minKubeVersion: 1.18.3
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:5eeb9f00760e286b2088fe4384bc0de5b18178fb3811796608ffe98d1100312e
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:56ee655fc9fd5aca984a7c552c00112b7314d2e79117f58c469ef91f3cefe640
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:61ced99002f57d20727adc2dbad34b99c1347541b4605c5ec2847db577532dc5
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:c7bfa11f2cf8403ef437bdcf514fe78823472e578766192f6742322750f1df18
        version: 6.3.2
      entries:
      - name: cluster-logging.v6.3.2
        version: 6.3.2
      - name: cluster-logging.v6.3.1
        version: 6.3.1
      - name: cluster-logging.v6.3.0
        version: 6.3.0
      name: stable-6.3
    - currentCSV: cluster-logging.v6.4.1
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "logging.openshift.io/v1alpha1",
                "kind": "LogFileMetricExporter",
                "metadata": {
                  "name": "instance",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "resources": {
                    "limits": {
                      "cpu": "500m"
                    },
                    "requests": {
                      "cpu": "200m",
                      "memory": "128Mi"
                    }
                  },
                  "tolerations": [
                    {
                      "effect": "NoSchedule",
                      "key": "node-role.kubernetes.io/master",
                      "operator": "Exists"
                    }
                  ]
                }
              },
              {
                "apiVersion": "observability.openshift.io/v1",
                "kind": "ClusterLogForwarder",
                "metadata": {
                  "name": "logging",
                  "namespace": "openshift-logging"
                },
                "spec": {
                  "outputs": [
                    {
                      "lokiStack": {
                        "authentication": {
                          "token": {
                            "from": "serviceAccount"
                          }
                        },
                        "target": {
                          "name": "logging-loki"
                        }
                      },
                      "name": "logging-loki",
                      "tls": {
                        "ca": {
                          "configMapName": "openshift-service-ca.crt",
                          "key": "service-ca.crt"
                        }
                      },
                      "type": "lokiStack"
                    }
                  ],
                  "pipelines": [
                    {
                      "inputRefs": [
                        "application",
                        "infrastructure"
                      ],
                      "name": "logs-to-loki",
                      "outputRefs": [
                        "logging-loki"
                      ]
                    }
                  ],
                  "serviceAccount": {
                    "name": "log-collector"
                  }
                }
              }
            ]
          capabilities: Seamless Upgrades
          categories: OpenShift Optional, Logging & Tracing, Observability
          certified: "false"
          com.redhat.delivery.appregistry: "false"
          com.redhat.delivery.operator.bundle: "true"
          com.redhat.openshift.versions: v4.18-v4.21
          containerImage: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
          createdAt: "2025-11-20T15:34:38Z"
          description: The Red Hat OpenShift Logging Operator for OCP provides a means
            for configuring and managing log collection and forwarding.
          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: "true"
          features.operators.openshift.io/proxy-aware: "true"
          features.operators.openshift.io/tls-profiles: "true"
          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.skipRange: '>=6.2.0-0 <6.4.1'
          operatorframework.io/cluster-monitoring: "true"
          operatorframework.io/initialization-resource: |
            {
              "apiVersion": "observability.openshift.io/v1",
              "kind": "ClusterLogForwarder",
              "metadata": {
                "name": "logging"
              }
            }
          operatorframework.io/suggested-namespace: openshift-logging
          operators.openshift.io/infrastructure-features: '["disconnected","proxy-aware"]'
          operators.openshift.io/must-gather-image: registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
          operators.openshift.io/valid-subscription: '["OpenShift Kubernetes Engine",
            "OpenShift Container Platform", "OpenShift Platform Plus"]'
          operators.operatorframework.io.bundle.channel.default.v1: stable-6.4
          operators.operatorframework.io.bundle.channels.v1: stable-6.4
          operators.operatorframework.io.bundle.manifests.v1: manifests/
          operators.operatorframework.io.bundle.mediatype.v1: registry+v1
          operators.operatorframework.io.bundle.metadata.v1: metadata/
          operators.operatorframework.io.bundle.package.v1: cluster-logging
          operators.operatorframework.io/builder: operator-sdk-unknown
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v4
          support: AOS Logging (aos-logging@redhat.com)
          target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}'
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: |-
              ClusterLogForwarder is an API to configure forwarding logs.

              You configure forwarding by specifying a list of `pipelines`,
              which forward from a set of named inputs to a set of named outputs.
            displayName: Cluster Log Forwarder
            kind: ClusterLogForwarder
            name: clusterlogforwarders.observability.openshift.io
            version: v1
          - description: A Log File Metric Exporter instance. LogFileMetricExporter
              is the Schema for the logFileMetricExporters API
            displayName: Log File Metric Exporter
            kind: LogFileMetricExporter
            name: logfilemetricexporters.logging.openshift.io
            version: v1alpha1
        description: |-
          # Red Hat OpenShift Logging
          The Red Hat OpenShift Logging Operator orchestrates log collection and forwarding to Red Had managed log stores and
          other third-party receivers.

          ##Features
          * **Create/Destroy**: Deploy log collectors and forwarders to support observability of OCP cluster.
          * **Simplified Configuration**: Spec collectors using a simplified API to configure log collection from opinionated sources to one or more third-party receivers.

          ## Prerequisites and Requirements
          ### Red Hat OpenShift Logging Namespace
          It is recommended to deploy the Red Hat OpenShift Logging Operator to the **openshift-logging** namespace. This namespace
          must be explicitly created by a cluster administrator (e.g. `oc create ns openshift-logging`). To enable metrics
          service discovery add namespace label `openshift.io/cluster-monitoring: "true"`.

          For additional installation documentation see [Deploying cluster logging](https://docs.openshift.com/container-platform/latest/logging/cluster-logging-deploying.html)
          in the OpenShift product documentation.
        displayName: Red Hat OpenShift Logging
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - logging
        - observability
        - loki
        - vector
        - otlp
        links:
        - name: Documentation
          url: https://github.com/openshift/cluster-logging-operator/blob/master/README.adoc
        - name: Red Hat OpenShift Logging Operator
          url: https://github.com/openshift/cluster-logging-operator
        - name: Vector
          url: https://vector.dev/
        minKubeVersion: 1.18.3
        provider:
          name: Red Hat
        relatedImages:
        - registry.redhat.io/openshift-logging/cluster-logging-rhel9-operator@sha256:ca448c48fee983cb3df77d959b1e0cb4b938fa22621ea30445a29d73f18dde73
        - registry.redhat.io/openshift-logging/log-file-metric-exporter-rhel9@sha256:057e1b87e9b9419d35cff1ee0ee8e19bbf12e6ecf3ff014206b62ca44e70eb07
        - registry.redhat.io/openshift-logging/vector-rhel9@sha256:011570d92a596fd2895230b19bc34a25f8befabfed6b7ce2f1e2bbe211391d22
        - registry.redhat.io/openshift-logging/cluster-logging-operator-bundle@sha256:022747902d768b6bf95a76c7c0b3aa63af356566b8411448cf64f87fc31a4794
        version: 6.4.1
      entries:
      - name: cluster-logging.v6.4.1
        version: 6.4.1
      - name: cluster-logging.v6.4.0
        version: 6.4.0
      name: stable-6.4
    defaultChannel: stable-6.4
    packageName: cluster-logging
    provider:
      name: Red Hat
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/os.linux: supported
      provider: Konveyor
      provider-url: ""
    name: gitops-primer
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: gitops-primer.v0.0.11
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "primer.gitops.io/v1alpha1",
                "kind": "Export",
                "metadata": {
                  "name": "primer"
                },
                "spec": {
                  "method": "download"
                }
              }
            ]
          capabilities: Basic Install
          categories: OpenShift Optional
          containerImage: quay.io/migtools/gitops-primer:v0.0.11
          operatorframework.io/suggested-namespace: gitops-primer-system
          operators.operatorframework.io/builder: operator-sdk-v1.18.0+git
          operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Export is the Schema for the exports API
            displayName: Export
            kind: Export
            name: exports.primer.gitops.io
            version: v1alpha1
        description: Export and normalize Kubernetes YAML files for GitOps
        displayName: gitops-primer
        installModes:
        - supported: false
          type: OwnNamespace
        - supported: false
          type: SingleNamespace
        - supported: false
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - gitops
        - operator
        links:
        - name: Gitops Primer
          url: https://github.com/migtools/gitops-primer
        maturity: alpha
        provider:
          name: Konveyor
        relatedImages:
        - quay.io/migtools/gitops-primer-webhook:v0.0.11
        - quay.io/migtools/gitops-primer:v0.0.11
        - quay.io/openshift-community-operators/gitops-primer@sha256:97af48469275f1b3a669f8e24a97a80ce9897fc5b12643a4f298b82dbe26e20b
        - quay.io/openshift/origin-oauth-proxy:4.9
        - registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:6d57bfd91fac9b68eb72d27226bc297472ceb136c996628b845ecc54a48b31cb
        - quay.io/migtools/gitops-primer-downloader:v0.0.11
        - quay.io/migtools/gitops-primer-export:v0.0.11
        version: 0.0.11
      entries:
      - name: gitops-primer.v0.0.11
        version: 0.0.11
      - name: gitops-primer.v0.0.10
        version: 0.0.10
      - name: gitops-primer.v0.0.9
        version: 0.0.9
      - name: gitops-primer.v0.0.8
        version: 0.0.8
      - name: gitops-primer.v0.0.7
        version: 0.0.7
      - name: gitops-primer.v0.0.6
        version: 0.0.6
      - name: gitops-primer.v0.0.5
        version: 0.0.5
      - name: gitops-primer.v0.0.4
        version: 0.0.4
      - name: gitops-primer.v0.0.3
        version: 0.0.3
      - name: gitops-primer.v0.0.2
        version: 0.0.2
      - name: gitops-primer.v0.0.1
        version: 0.0.1
      name: alpha
    defaultChannel: alpha
    packageName: gitops-primer
    provider:
      name: Konveyor
- apiVersion: packages.operators.coreos.com/v1
  kind: PackageManifest
  metadata:
    creationTimestamp: "2025-11-02T07:55:12Z"
    labels:
      catalog: community-operators
      catalog-namespace: openshift-marketplace
      operatorframework.io/arch.amd64: supported
      operatorframework.io/arch.arm64: supported
      operatorframework.io/os.linux: supported
      provider: Amazon, Inc.
      provider-url: https://aws.amazon.com
    name: ack-ecs-controller
    namespace: openshift-must-gather-96cfq
  spec: {}
  status:
    catalogSource: community-operators
    catalogSourceDisplayName: Community Operators
    catalogSourceNamespace: openshift-marketplace
    catalogSourcePublisher: Red Hat
    channels:
    - currentCSV: ack-ecs-controller.v1.2.0
      currentCSVDesc:
        annotations:
          alm-examples: |-
            [
              {
                "apiVersion": "ecs.services.k8s.aws/v1alpha1",
                "kind": "Service",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ecs.services.k8s.aws/v1alpha1",
                "kind": "Cluster",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              },
              {
                "apiVersion": "ecs.services.k8s.aws/v1alpha1",
                "kind": "TaskDefinition",
                "metadata": {
                  "name": "example"
                },
                "spec": {}
              }
            ]
          capabilities: Basic Install
          categories: Cloud Provider
          certified: "false"
          containerImage: public.ecr.aws/aws-controllers-k8s/ecs-controller:1.2.0
          createdAt: "2025-11-29T03:45:21Z"
          description: AWS ECS controller is a service controller for managing ECS
            resources in Kubernetes
          operatorframework.io/suggested-namespace: ack-system
          operators.operatorframework.io/builder: operator-sdk-v1.28.0
          operators.operatorframework.io/project_layout: unknown
          repository: https://github.com/aws-controllers-k8s
          support: Community
        apiservicedefinitions: {}
        customresourcedefinitions:
          owned:
          - description: Cluster represents the state of an AWS ecs Cluster resource.
            displayName: Cluster
            kind: Cluster
            name: clusters.ecs.services.k8s.aws
            version: v1alpha1
          - description: Service represents the state of an AWS ecs Service resource.
            displayName: Service
            kind: Service
            name: services.ecs.services.k8s.aws
            version: v1alpha1
          - description: TaskDefinition represents the state of an AWS ecs TaskDefinition
              resource.
            displayName: TaskDefinition
            kind: TaskDefinition
            name: taskdefinitions.ecs.services.k8s.aws
            version: v1alpha1
        description: |-
          Manage Amazon Elastic Container Service (ECS) resources in AWS from within your Kubernetes cluster.

          **About Amazon ECS**

          Amazon Elastic Container Service (Amazon ECS) is a fully managed container orchestration service that helps you easily deploy, manage, and scale containerized applications. As a fully managed service, Amazon ECS comes with AWS configuration and operational best practices built-in. It's integrated with both AWS and third-party tools, such as Amazon Elastic Container Registry and Docker. This integration makes it easier for teams to focus on building the applications, not the environment. You can run and scale your container workloads across AWS Regions in the cloud, and on-premises, without the complexity of managing a control plane.

          **About the AWS Controllers for Kubernetes**

          This controller is a component of the [AWS Controller for Kubernetes](https://github.com/aws/aws-controllers-k8s) project.

          **Pre-Installation Steps**

          Please follow the following link: [Red Hat OpenShift](https://aws-controllers-k8s.github.io/community/docs/user-docs/openshift/)
        displayName: AWS Controllers for Kubernetes - Amazon ECS
        installModes:
        - supported: true
          type: OwnNamespace
        - supported: true
          type: SingleNamespace
        - supported: true
          type: MultiNamespace
        - supported: true
          type: AllNamespaces
        keywords:
        - ecs
        - aws
        - amazon
        - ack
        links:
        - name: AWS Controllers for Kubernetes
          url: https://github.com/aws-controllers-k8s/community
        - name: Documentation
          url: https://aws-controllers-k8s.github.io/community/
        - name: Amazon ECS Developer Resources
          url: https://aws.amazon.com/ecs/resources/
        maintainers:
        - email: ack-maintainers@amazon.com
          name: ecs maintainer team
        maturity: alpha
        provider:
          name: Amazon, Inc.
          url: https://aws.amazon.com
        relatedImages:
        - public.ecr.aws/aws-controllers-k8s/ecs-controller:1.2.0
        - quay.io/community-operator-pipeline-prod/ack-ecs-controller@sha256:4626d70cfb1b1ea707836df633e85aba77255150c01fc2e18a6b2a364b626344
        version: 1.2.0
      entries:
      - name: ack-ecs-controller.v1.2.0
        version: 1.2.0
      - name: ack-ecs-controller.v1.1.1
        version: 1.1.1
      - name: ack-ecs-controller.v1.0.15
        version: 1.0.15
      - name: ack-ecs-controller.v1.0.14
        version: 1.0.14
      - name: ack-ecs-controller.v1.0.13
        version: 1.0.13
      - name: ack-ecs-controller.v1.0.12
        version: 1.0.12
      - name: ack-ecs-controller.v1.0.11
        version: 1.0.11
      - name: ack-ecs-controller.v1.0.10
        version: 1.0.10
      - name: ack-ecs-controller.v1.0.9
        version: 1.0.9
      name: alpha
    defaultChannel: alpha
    packageName: ack-ecs-controller
    provider:
      name: Amazon, Inc.
      url: https://aws.amazon.com
kind: List
metadata:
  resourceVersion: ""
